diff --git a/.env.example b/.env.example new file mode 100644 index 000000000..2c7ed8e85 --- /dev/null +++ b/.env.example @@ -0,0 +1,89 @@ +#### AWS CONFIG #### +AWS_ACCESS_KEY_ID= # Your AWS access key ID +AWS_SECRET_ACCESS_KEY= # Your AWS secret access key +AWS_REGION= # AWS region +# For AWS SDK +AWS_ENDPOINT_URL= # AWS endpoint URL +# For Omniqueue +AWS_DEFAULT_REGION= # AWS default region + +# For EventBridge +MADARA_ORCHESTRATOR_EVENT_BRIDGE_TYPE= # EventBridge type (rule/schedule) +MADARA_ORCHESTRATOR_EVENT_BRIDGE_TRIGGER_RULE_NAME= # EventBridge rule name +MADARA_ORCHESTRATOR_EVENT_BRIDGE_TRIGGER_ROLE_NAME= # EventBridge role name +MADARA_ORCHESTRATOR_EVENT_BRIDGE_TRIGGER_POLICY_NAME= # EventBridge policy name + +#### ALERTS #### +MADARA_ORCHESTRATOR_AWS_SNS_ARN= # SNS ARN for alerts + +#### DATA AVAILABILITY #### +## ETHEREUM ## +MADARA_ORCHESTRATOR_ETHEREUM_DA_RPC_URL= # Ethereum RPC URL for data availability + +#### DATABASE #### +## MONGODB ## +MADARA_ORCHESTRATOR_MONGODB_CONNECTION_URL= # MongoDB connection URL +MADARA_ORCHESTRATOR_DATABASE_NAME= # MongoDB database name + +#### PROVER #### +## SHARP ## +MADARA_ORCHESTRATOR_SHARP_CUSTOMER_ID= # SHARP customer ID +MADARA_ORCHESTRATOR_SHARP_URL= # SHARP service URL +MADARA_ORCHESTRATOR_SHARP_USER_CRT= # SHARP user certificate +MADARA_ORCHESTRATOR_SHARP_USER_KEY= # SHARP user private key +MADARA_ORCHESTRATOR_SHARP_SERVER_CRT= # SHARP server certificate +MADARA_ORCHESTRATOR_SHARP_RPC_NODE_URL= # SHARP RPC node URL +MADARA_ORCHESTRATOR_SHARP_PROOF_LAYOUT= # SHARP proof layout +MADARA_ORCHESTRATOR_GPS_VERIFIER_CONTRACT_ADDRESS= # GPS verifier contract address + +## ATLANTIC ## +MADARA_ORCHESTRATOR_ATLANTIC_API_KEY= # Atlantic API key +MADARA_ORCHESTRATOR_ATLANTIC_SERVICE_URL= # Atlantic service URL +MADARA_ORCHESTRATOR_ATLANTIC_MOCK_FACT_HASH= # Whether to use mock fact registry (true/false) +MADARA_ORCHESTRATOR_ATLANTIC_PROVER_TYPE= # Prover type (herodotus/starkware) +MADARA_ORCHESTRATOR_ATLANTIC_SETTLEMENT_LAYER= # Settlement layer (ethereum/starknet) +MADARA_ORCHESTRATOR_ATLANTIC_VERIFIER_CONTRACT_ADDRESS= # Atlantic verifier contract address +MADARA_ORCHESTRATOR_ATLANTIC_RPC_NODE_URL= # Atlantic RPC node URL + +#### QUEUE #### +## AWS SQS ## +MADARA_ORCHESTRATOR_SQS_PREFIX= # SQS queue prefix +MADARA_ORCHESTRATOR_SQS_SUFFIX= # SQS queue suffix +MADARA_ORCHESTRATOR_EVENT_BRIDGE_TARGET_QUEUE_NAME= # EventBridge target queue name +MADARA_ORCHESTRATOR_SQS_BASE_QUEUE_URL= # SQS base queue URL + +#### SETTLEMENT #### +## ETHEREUM ## +MADARA_ORCHESTRATOR_ETHEREUM_SETTLEMENT_RPC_URL= # Ethereum settlement RPC URL +MADARA_ORCHESTRATOR_ETHEREUM_PRIVATE_KEY= # Ethereum private key +MADARA_ORCHESTRATOR_L1_CORE_CONTRACT_ADDRESS= # L1 core contract address +MADARA_ORCHESTRATOR_STARKNET_OPERATOR_ADDRESS= # Starknet operator address + +## STARKNET ## +MADARA_ORCHESTRATOR_STARKNET_SETTLEMENT_RPC_URL= # Starknet settlement RPC URL +MADARA_ORCHESTRATOR_STARKNET_PRIVATE_KEY= # Starknet private key +MADARA_ORCHESTRATOR_STARKNET_ACCOUNT_ADDRESS= # Starknet account address +MADARA_ORCHESTRATOR_STARKNET_CAIRO_CORE_CONTRACT_ADDRESS= # Starknet Cairo core contract address +MADARA_ORCHESTRATOR_STARKNET_FINALITY_RETRY_WAIT_IN_SECS= # Retry wait time in seconds +# MADARA_ORCHESTRATOR_MADARA_BINARY_PATH= # Optional: Madara binary path + +#### STORAGE #### +## AWS S3 ## +MADARA_ORCHESTRATOR_AWS_S3_BUCKET_NAME= # S3 bucket name + +#### INSTRUMENTATION #### +## OTEL ## +MADARA_ORCHESTRATOR_OTEL_SERVICE_NAME= # OpenTelemetry service name +MADARA_ORCHESTRATOR_OTEL_COLLECTOR_ENDPOINT= # OpenTelemetry collector endpoint + +#### SERVER #### +MADARA_ORCHESTRATOR_HOST= # Server host +MADARA_ORCHESTRATOR_PORT= # Server port + +#### SERVICE #### +MADARA_ORCHESTRATOR_MAX_BLOCK_NO_TO_PROCESS= # Maximum block number to process (optional) +MADARA_ORCHESTRATOR_MIN_BLOCK_NO_TO_PROCESS= # Minimum block number to process (optional) +MADARA_ORCHESTRATOR_MADARA_RPC_URL= # Madara RPC URL + +#### SNOS #### +MADARA_ORCHESTRATOR_RPC_FOR_SNOS= # SNOS RPC URL \ No newline at end of file diff --git a/.env.test b/.env.test new file mode 100644 index 000000000..95804a571 --- /dev/null +++ b/.env.test @@ -0,0 +1,117 @@ + +#### AWS CONFIG #### + +AWS_ACCESS_KEY_ID=AWS_ACCESS_KEY_ID +AWS_SECRET_ACCESS_KEY=AWS_SECRET_ACCESS_KEY +AWS_REGION=us-east-1 +# For Aws sdk +AWS_ENDPOINT_URL=http://localhost.localstack.cloud:4566 +# For Omniqueue +AWS_DEFAULT_REGION=localhost + +# For EventBridge +MADARA_ORCHESTRATOR_EVENT_BRIDGE_TYPE=rule +MADARA_ORCHESTRATOR_EVENT_BRIDGE_TRIGGER_RULE_NAME=madara-orchestrator-worker-trigger +MADARA_ORCHESTRATOR_EVENT_BRIDGE_TRIGGER_ROLE_NAME=madara-orchestrator-worker-trigger-role +MADARA_ORCHESTRATOR_EVENT_BRIDGE_TRIGGER_POLICY_NAME=madara-orchestrator-worker-trigger-policy + + + +#### ALERTS #### + +MADARA_ORCHESTRATOR_AWS_SNS_ARN=arn:aws:sns:us-east-1:000000000000:madara-orchestrator-arn + + +#### DATA AVAILABILITY #### + +## ETHEREUM ## + +MADARA_ORCHESTRATOR_ETHEREUM_DA_RPC_URL=https://eth-sepolia.public.blastapi.io + + +#### DATABASE #### + +## MONGODB ## + +MADARA_ORCHESTRATOR_MONGODB_CONNECTION_URL=mongodb://localhost:27017 +MADARA_ORCHESTRATOR_DATABASE_NAME=orchestrator + +#### PROVER #### + +## SHARP ## + +MADARA_ORCHESTRATOR_SHARP_CUSTOMER_ID=sharp_consumer_id +MADARA_ORCHESTRATOR_SHARP_URL=http://127.0.0.1:6000 +MADARA_ORCHESTRATOR_SHARP_USER_CRT=LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUR4ekNDQXErZ0F3SUJBZ0lVTjBSK0xpb1MzL2ZadUZsK291RjZNNFk2RnRZd0RRWUpLb1pJaHZjTkFRRUwKQlFBd2N6RUxNQWtHQTFVRUJoTUNTVTR4RXpBUkJnTlZCQWdNQ2xOdmJXVXRVM1JoZEdVeElUQWZCZ05WQkFvTQpHRWx1ZEdWeWJtVjBJRmRwWkdkcGRITWdVSFI1SUV4MFpERU5NQXNHQTFVRUF3d0VVMVJTU3pFZE1Cc0dDU3FHClNJYjNEUUVKQVJZT1lXSmpRR3RoY201dmRDNTRlWG93SGhjTk1qUXdPREV6TVRNd05UTTBXaGNOTWpVd09ERXoKTVRNd05UTTBXakJ6TVFzd0NRWURWUVFHRXdKSlRqRVRNQkVHQTFVRUNBd0tVMjl0WlMxVGRHRjBaVEVoTUI4RwpBMVVFQ2d3WVNXNTBaWEp1WlhRZ1YybGtaMmwwY3lCUWRIa2dUSFJrTVEwd0N3WURWUVFEREFSVFZGSkxNUjB3Ckd3WUpLb1pJaHZjTkFRa0JGZzVoWW1OQWEyRnlibTkwTG5oNWVqQ0NBU0l3RFFZSktvWklodmNOQVFFQkJRQUQKZ2dFUEFEQ0NBUW9DZ2dFQkFOSEtaUGRqWSs4QWo4ZFV2V0xReEl5NTNrK1BHY001T2FlYnpTV3FER0xGSlBOdgpkVzJvWjFCSnNEb2hobWZFSCt5ZEFoQXEvbzc4NDljblg2VDJTOVhta25wdnNud2dRckU5Z3lqSmV3MUxBRzNHCm10U0lOMWJJSm9peWJ3QUR5NGxPd0xrVzUzdFdueHBSazVVVmZUU1hLYVRRTnlHd2o3Q2xMSGthcnlZYVk3OVkKOXlHMFJ2RkFkb1IzczBveWthNkFLV0d1WjhOdWd4NTY2bysyWllRenJteWVNU1NGYkhNdW1aUkxYb0hpazhBSgpLZXJ0bnNBRC9LMVJRYm80Y21ubHFoTVRhQktiTEFVVjVteFVvMlpveFBJVU9tREE5N3IyMmRTYkRkRlVjeC9kCjhQcDB6VXNycXdQckJlcW5SMXdLOE80MUlHajUzRnUzVmxDeS94MENBd0VBQWFOVE1GRXdIUVlEVlIwT0JCWUUKRkc0T0lvKzcvckJyZlR4S2FFMGx2L1dwRDJ3UE1COEdBMVVkSXdRWU1CYUFGRzRPSW8rNy9yQnJmVHhLYUUwbAp2L1dwRDJ3UE1BOEdBMVVkRXdFQi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFEMURDZkR3CnpoSXRGMWd5YVdhWURZRHErZjJSUHBFRWVaWk1BSDdJV0ZTajRrTzhmVHN1RnN6bFoyNXNlR3ZHYW4xQ3F4alQKYnJ3MXliVlJQeGZMUWgxRlZMMGhFeDZWYXhGditxMmtqUmlCQmZURFBxWGxYcmpaaUYrZTNPS3lKSVhnNkpIUAppbVpBV0dyRFBHNkorQi90bHRaQ3VLZVhLK1FUcnRSOVVCL29hOWVaQWc5RXNkOVJsZDRNeVo5b0NtdUNPU1hmCnk1THFkVlgrNENpTnJXQ3BwM1B2M2MyL28rZ0RMQjUzZ252R056RjR6Q1FIZ0RtN0RNZnpmZlY1TUMwV1MvWXkKVnpyUG11Sys0Y0tSK3dMOFZITVNEeC9ybTFhYnh0dEN2VW92MUw5dVZ1QUNGc29yNmdsR0N1RDNNQ0dIa0pNNgpxaS8rM1haeHhxeGw1Rzg9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K +MADARA_ORCHESTRATOR_SHARP_USER_KEY=LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRRFJ5bVQzWTJQdkFJL0gKVkwxaTBNU011ZDVQanhuRE9UbW5tODBscWd4aXhTVHpiM1Z0cUdkUVNiQTZJWVpueEIvc25RSVFLdjZPL09QWApKMStrOWt2VjVwSjZiN0o4SUVLeFBZTW95WHNOU3dCdHhwclVpRGRXeUNhSXNtOEFBOHVKVHNDNUZ1ZDdWcDhhClVaT1ZGWDAwbHltazBEY2hzSSt3cFN4NUdxOG1HbU8vV1BjaHRFYnhRSGFFZDdOS01wR3VnQ2xocm1mRGJvTWUKZXVxUHRtV0VNNjVzbmpFa2hXeHpMcG1VUzE2QjRwUEFDU25xN1o3QUEveXRVVUc2T0hKcDVhb1RFMmdTbXl3RgpGZVpzVktObWFNVHlGRHBnd1BlNjl0blVtdzNSVkhNZjNmRDZkTTFMSzZzRDZ3WHFwMGRjQ3ZEdU5TQm8rZHhiCnQxWlFzdjhkQWdNQkFBRUNnZ0VBQU9mcDFiT2xLOVFKeXVlUHhjeDIvTkNVcUMxTEJDL01FdkEyUzVKWGFWbkcKbGhLR0pFb1U0Q0RoVk83dUlLYVZLTFZvMjk4RHFHUnBLM1d0RVE1TE40bytXYTcveTA5c1drMlVzbWxrVWFOZwpSaGtVZEJSK2dLNXVsQ3FKRml2dUJoTEQvRWlnQ1VWUGZKS2JtNG96TnpYcjVSMU5ENlV1aWFtODdtenlFcTBLCmZsVXlhR0RZNGdIdFNBOVBENVBFYlUveFpKeitKaHk5T2l3aVRXV0MrSHoyb2c3UWRDRDE2RlhGcit2VHpQN0MKb2tFb0VDZFNPRWlMalVENjBhS2ZxRmFCVm5MTkVudC9QSytmY1RBM05mNGtSMnFDNk9ZWjVFb09zYm1ka29ZTgpyU3NJZW9XblMxOEhvekZud2w3Z05wTUtjNmRzQzRBTldOVDFsTkhCb1FLQmdRRHlaUDFJSlppZUh6NlExaUVTCm5zd2tnblZCQUQ0SlVLR1ZDMHA3dk4yclNDZXh4c05ZZXFPTEEyZGZCUGpOVjd3blFKcUgxT05XellOMUJVSUUKeThLTCtFZVl6Q3RZa21LL21wSGJIMzNjd2tJODBuMHJROU1BalZMTlJ2YVVEOWp1NFBsRzFqaEFZUVVyTkViZQpKRlVpSk83aDVQa1llZG50SitqSHFpQnRoUUtCZ1FEZGtPbndmL0szYk4xenR0bXZQd0VicjhkVWJjRVh5NDFOCkl5VWwrZW1WSlgzYktKM0duNDZnQ2RsTTdkYmpwS3JVZ3oxL2JsZTgvMkVFckJvSEFRNkMrU2pEaGhvL01CbnIKekZheTBoK3YxbjBnZnNNVzRoOEF4cEFwc25OYnh6K2g1Wm5uSnRTd0srUjB3U0VJVVEzRjAxL2hMWWhLQ2l5OApwbW5HQi9hU3VRS0JnRzdxd1cvVExGd214ZlYyMXBsenFzeUdHZXVObGRXalhOMGIxcEI2b3lDdW11TmhwYUFHCk5uSDFNOGNxT2tPVWd4ZWZHMWRPbGx6eEc5ZGZlWTlDUWhyVW1NYVZucndmK0NuZkxDRU43d1VtcXpLenl1MFMKVXlwc2dOaElRYXNNK1dLTjllTnhRVHBNYXhZVERONjMxM0VSWDNKazJZdFdydDh6cFBSQXFDZ1ZBb0dCQU54egpUa0NMbmJ6aFphbTNlZm9DenlCMEVma3dSdHBkSGxkc3E0NlFqTmRuK1VSd3NpTXBLR2lWeEE3bDZsU1B4NlV3CmU2VHA3Z1JQZUlHRWwxVDJ1VENacGZSODNtcVdlb1FCeVJXZE9nZmplcFkxYWZpL3ZhY3c2Y21ERTRKeXloNVUKYTMveFE5ZVJwSHFDbWxKREMxZ1V5eVlwL3B2a2FjUytNeW5sVEhHSkFvR0FQekdTSzdXOHBUYldSVEFoaTVrSQpwZk5kWk1tcnRodUxNT3F6TGhyRjZublpldk9OdTBoYXVhZktlVElFd2w0clhYZHFKQlJBaWZKMFFsLzZKWFFkCmd1VzFrZWk1Ui8rUFZ5eUhab042c3NXSTNWYklwUUloUmt6UENnTDZhbHEwSzFpT1dlV1lIOHdORGRRdlB1T2UKRkZPOEovSzNxV0NtWjU0ODBBbTNhT0U9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K +MADARA_ORCHESTRATOR_SHARP_SERVER_CRT=LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURhekNDQWxPZ0F3SUJBZ0lVRUR0Rjd0YVNTUnVQQTJ6Uk1aNWNzY2JCRm5jd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1JURUxNQWtHQTFVRUJoTUNTVTR4RXpBUkJnTlZCQWdNQ2xOdmJXVXRVM1JoZEdVeElUQWZCZ05WQkFvTQpHRWx1ZEdWeWJtVjBJRmRwWkdkcGRITWdVSFI1SUV4MFpEQWVGdzB5TkRBNE1UTXhNekEzTVROYUZ3MHlOVEE0Ck1UTXhNekEzTVROYU1FVXhDekFKQmdOVkJBWVRBa2xPTVJNd0VRWURWUVFJREFwVGIyMWxMVk4wWVhSbE1TRXcKSHdZRFZRUUtEQmhKYm5SbGNtNWxkQ0JYYVdSbmFYUnpJRkIwZVNCTWRHUXdnZ0VpTUEwR0NTcUdTSWIzRFFFQgpBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRRFRHcEEwNEZ1QlNFaE5PNVYvMGxTaDkvSEgxeVRZT2dRVFdoOG43eDlRCnZGMHpvZFZueVFIdjE5elU5eVdia2xvOEkvOXFBVm9lRzdXTnpUVFg2Q295ZlNjb1YvazN0Q2UwVnVWMlFJTVQKdW82SzJSU05CVHB1TlNqNTlzUiszVTQ2OFRBQnY0YVpsYjU4TU5CRXM3MVRieVpLRHBGRVRkMkg3T0ZKajg4QQpNRi9MaXJkeDZPOFdZL0tDeisxd1ZXL1JRdytYYjRJSWx4bXJFOC9UZ3FNSEo4dFUxYkZiOWJNcTEvOTN5YWtJClU1V2J2NVhXKzFwZFVyTUFNcTFFaC9vZThMN2pFaFdvZXZrNzgyU0kwUk0xeG5MaEtrUUVBYXd6Zkg2ODZiR2YKUHQ3RkFIQ1pGaWJ4KzZzSkg0R1M3S25iK0x5bk9ud3phMWZPUXZEZmcvRm5BZ01CQUFHalV6QlJNQjBHQTFVZApEZ1FXQkJUYlFUdmlUTW1xNXlNK2ZJRVI4VjdTZk1pK3B6QWZCZ05WSFNNRUdEQVdnQlRiUVR2aVRNbXE1eU0rCmZJRVI4VjdTZk1pK3B6QVBCZ05WSFJNQkFmOEVCVEFEQVFIL01BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRREYKTllyRnpBa2RIVkhjUkd5SUNsTi9IVGswaldOcTVSdTB1RUpDQ21Dbm9ZY1pRSTlDQlcwTkl3dGpZUkpTKzR1UwordWh4VWpSYTA5YXdOWDhvYmU0dDZjK25HRnhZMGZqamk0cGZnbU1kMWNJeGdsM3E3Nlp0ZkllRGR6alRLRXN1CjRFUTVadnEwMnJvTEZ0ZjEvL3dRVG0xNkNKdFpGWnhNZ1phYnNxc2JRc3M2dWdMUGtTTmdBWjI1L2VhcWhnQ20KTjFUV2FxL0xJMVBLSkxPK085NFlMa2FsNVpyOTJCOXk4Q0VKVUVuSTA1R1N1MmJUOFM2a0ZBMEpadEszTW9SbwpqRWZWV1lQVHR5TFR4amNvRndCcDlHaXZYSDdSdHBxMDlmSmFhU1pNekxmNGlyNHpBdXprbExBNWZvampPNXlKCllnYlVaQUU2aS81N1NFWjR3VmxTCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K +# MADARA_ORCHESTRATOR_SHARP_RPC_NODE_URL should be same as MADARA_ORCHESTRATOR_ETHEREUM_SETTLEMENT_RPC_URL +MADARA_ORCHESTRATOR_SHARP_RPC_NODE_URL=http://127.0.0.1:8545 +MADARA_ORCHESTRATOR_SHARP_PROOF_LAYOUT=small +MADARA_ORCHESTRATOR_GPS_VERIFIER_CONTRACT_ADDRESS=0x07ec0D28e50322Eb0C159B9090ecF3aeA8346DFe + +## ATLANTIC ## + +MADARA_ORCHESTRATOR_ATLANTIC_API_KEY="API-KEY" +MADARA_ORCHESTRATOR_ATLANTIC_SERVICE_URL="https://atlantic.api.herodotus.cloud" +MADARA_ORCHESTRATOR_ATLANTIC_MOCK_FACT_HASH="false" # Whether to use mock fact registry +MADARA_ORCHESTRATOR_ATLANTIC_PROVER_TYPE="herodotus" # ("herodotus" | "starkware") +MADARA_ORCHESTRATOR_ATLANTIC_SETTLEMENT_LAYER="ethereum" # ("ethereum" | "starknet") +MADARA_ORCHESTRATOR_ATLANTIC_VERIFIER_CONTRACT_ADDRESS=0x07ec0D28e50322Eb0C159B9090ecF3aeA8346DFe +MADARA_ORCHESTRATOR_ATLANTIC_RPC_NODE_URL=http://127.0.0.1:8545 +#### QUEUE #### + +## AWS SQS ## + +MADARA_ORCHESTRATOR_SQS_PREFIX=madara_orchestrator +MADARA_ORCHESTRATOR_SQS_SUFFIX=queue +MADARA_ORCHESTRATOR_EVENT_BRIDGE_TARGET_QUEUE_NAME=madara_orchestrator_worker_trigger_queue +MADARA_ORCHESTRATOR_SQS_BASE_QUEUE_URL=http://sqs.us-east-1.localhost.localstack.cloud:4566/000000000000 + +#### SETTLEMENT #### + +## ETHEREUM ## + +MADARA_ORCHESTRATOR_ETHEREUM_SETTLEMENT_RPC_URL=https://eth-sepolia.public.blastapi.io +MADARA_ORCHESTRATOR_ETHEREUM_PRIVATE_KEY=0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80 +MADARA_ORCHESTRATOR_L1_CORE_CONTRACT_ADDRESS=0xE2Bb56ee936fd6433DC0F6e7e3b8365C906AA057 +MADARA_ORCHESTRATOR_STARKNET_OPERATOR_ADDRESS=0x5b98B836969A60FEC50Fa925905Dd1D382a7db43 + +## STARKNET ## + +MADARA_ORCHESTRATOR_STARKNET_SETTLEMENT_RPC_URL=https://starknet-sepolia.public.blastapi.io +MADARA_ORCHESTRATOR_STARKNET_PRIVATE_KEY=0x76f2ccdb23f29bc7b69278e947c01c6160a31cf02c19d06d0f6e5ab1d768b86 +MADARA_ORCHESTRATOR_STARKNET_ACCOUNT_ADDRESS=0x3bb306a004034dba19e6cf7b161e7a4fef64bc1078419e8ad1876192f0b8cd1 +MADARA_ORCHESTRATOR_STARKNET_CAIRO_CORE_CONTRACT_ADDRESS= +MADARA_ORCHESTRATOR_STARKNET_FINALITY_RETRY_WAIT_IN_SECS=10 +# MADARA_ORCHESTRATOR_MADARA_BINARY_PATH= + +#### STORAGE #### + +## AWS S3 ## + +MADARA_ORCHESTRATOR_AWS_S3_BUCKET_NAME=madara-orchestrator-test-bucket + + +#### INSTRUMENTATION #### + +## OTEL ## + +MADARA_ORCHESTRATOR_OTEL_SERVICE_NAME=orchestrator + +#### SERVER #### + +MADARA_ORCHESTRATOR_HOST=127.0.0.1 +MADARA_ORCHESTRATOR_PORT=3000 + + +#### SERVICE #### + +MADARA_ORCHESTRATOR_MAX_BLOCK_NO_TO_PROCESS= +MADARA_ORCHESTRATOR_MIN_BLOCK_NO_TO_PROCESS= +MADARA_ORCHESTRATOR_MADARA_RPC_URL=http://81.16.176.130:9545 + + +#### SNOS #### + +MADARA_ORCHESTRATOR_RPC_FOR_SNOS=http://81.16.176.130:9545 diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml new file mode 100644 index 000000000..6e49d286a --- /dev/null +++ b/.github/workflows/changelog.yml @@ -0,0 +1,13 @@ +name: "Changelog Workflow" +on: + pull_request: + types: [opened, synchronize, reopened, ready_for_review, labeled, unlabeled] + branches: [main] + +jobs: + # Enforces the update of a changelog file on every pull request + # skipLabel default is "Skip-Changelog" + changelog: + runs-on: ubuntu-latest + steps: + - uses: dangoslen/changelog-enforcer@v3 diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml new file mode 100644 index 000000000..a9c27f4e5 --- /dev/null +++ b/.github/workflows/e2e-test.yml @@ -0,0 +1,92 @@ +name: E2E test + +on: + workflow_call: + secrets: + RPC_FOR_SNOS: + required: true + +jobs: + coverage: + runs-on: karnot-arc-runner-set + + services: + localstack: + image: localstack/localstack@sha256:763947722c6c8d33d5fbf7e8d52b4bddec5be35274a0998fdc6176d733375314 + + env: + DEFAULT_REGION: us-east-1 + AWS_ACCESS_KEY_ID: "AWS_ACCESS_KEY_ID" + AWS_SECRET_ACCESS_KEY: "AWS_SECRET_ACCESS_KEY" + ports: + - 4566:4566 + mongodb: + image: mongo:latest + ports: + - 27017:27017 + + steps: + - uses: actions/checkout@v3 + + - name: Install necessary dependencies + run: | + sudo apt update + sudo apt-get install -y clang llvm libudev-dev protobuf-compiler gcc g++ build-essential libssl-dev pkg-config curl wget git libclang-dev + + - name: Install Rust toolchain + uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: nightly + + - name: Rust Cache + uses: Swatinem/rust-cache@v2 + + - name: Install Foundry + uses: foundry-rs/foundry-toolchain@v1 + + - name: Set up Python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + + - name: Display Python version + run: python --version + + - name: Install cairo 0 + run: | + # Creating venv + python3.9 -m venv ~/cairo_venv + source ~/cairo_venv/bin/activate + + # Installing deps + sudo apt install -y libgmp3-dev + pip3 install ecdsa fastecdsa sympy + + # Installing cairo lang + pip3 install cairo-lang + + - name: Check Anvil Installation & run Anvil + run: | + if command -v anvil &> /dev/null + then + echo "Anvil is installed. Version information:" + anvil --version + anvil --block-time 1 & + else + echo "Anvil is not installed or not in PATH" + exit 1 + fi + + - name: Build SNOS files + run: | + make snos + + - name: Run e2e test + env: + MADARA_ORCHESTRATOR_ETHEREUM_SETTLEMENT_RPC_URL: ${{ secrets.ETHEREUM_SEPOLIA_BLAST_RPC }} + MADARA_ORCHESTRATOR_RPC_FOR_SNOS: ${{ secrets.RPC_FOR_SNOS }} + # the self hosted runner has a different region so we override it here + AWS_REGION: us-east-1 + run: | + RUST_LOG=info cargo test --features testing test_orchestrator_workflow -- --nocapture diff --git a/.github/workflows/rust-build.yml b/.github/workflows/rust-build.yml new file mode 100644 index 000000000..8dd986aaa --- /dev/null +++ b/.github/workflows/rust-build.yml @@ -0,0 +1,45 @@ +--- +name: Task - Build Rust + +on: + workflow_dispatch: + workflow_call: + +jobs: + rust_build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - run: rustup show + + - uses: Swatinem/rust-cache@v2 + + - name: Set up Python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + + - name: Display Python version + run: python --version + + - name: Install cairo 0 + run: | + # Creating venv + python3.9 -m venv ~/cairo_venv + source ~/cairo_venv/bin/activate + + # Installing deps + sudo apt install -y libgmp3-dev + pip3 install ecdsa fastecdsa sympy + + # Installing cairo lang + pip3 install cairo-lang + + - name: Build SNOS files + run: | + make snos + + - name: Build the project + run: | + cargo build --release --workspace diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 000000000..a4db997f0 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,11 @@ +[submodule "cairo-lang"] + path = cairo-lang + url = https://github.com/starkware-libs/cairo-lang.git + ignore = all +[submodule "madara-bootstrapper"] + path = madara-bootstrapper + url = https://github.com/madara-alliance/madara-bootstrapper.git + ignore = all +[submodule "pathfinder"] + path = pathfinder + url = https://github.com/eqlabs/pathfinder.git diff --git a/Cargo.lock b/Cargo.lock index 50ce03c38..bccdab210 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4,13 +4,19 @@ version = 4 [[package]] name = "addr2line" -version = "0.24.2" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" dependencies = [ "gimli", ] +[[package]] +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + [[package]] name = "adler2" version = "2.0.0" @@ -28,6 +34,17 @@ dependencies = [ "cpufeatures", ] +[[package]] +name = "ahash" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" +dependencies = [ + "getrandom", + "once_cell", + "version_check", +] + [[package]] name = "ahash" version = "0.8.11" @@ -35,6 +52,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ "cfg-if", + "getrandom", "once_cell", "version_check", "zerocopy", @@ -57,23 +75,46 @@ checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" [[package]] name = "alloy" -version = "0.4.2" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-consensus 0.1.0", + "alloy-core 0.6.4", + "alloy-eips 0.1.0", + "alloy-network 0.1.0", + "alloy-provider 0.1.0", + "alloy-rpc-client 0.1.0", + "alloy-signer 0.1.0", + "alloy-signer-wallet", + "alloy-transport 0.1.0", + "alloy-transport-http 0.1.0", + "reqwest 0.12.8", +] + +[[package]] +name = "alloy" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "056f2c01b2aed86e15b43c47d109bfc8b82553dc34e66452875e51247ec31ab2" +checksum = "59febb24956a41c29bb5f450978fbe825bd6456b3f80586c8bd558dc882e7b6a" dependencies = [ - "alloy-consensus", + "alloy-consensus 0.8.3", "alloy-contract", - "alloy-core", - "alloy-eips", + "alloy-core 0.8.18", + "alloy-eips 0.8.3", "alloy-genesis", - "alloy-network", + "alloy-network 0.8.3", "alloy-node-bindings", - "alloy-provider", - "alloy-rpc-client", - "alloy-rpc-types", - "alloy-serde", - "alloy-transport", - "alloy-transport-http", + "alloy-provider 0.8.3", + "alloy-pubsub", + "alloy-rpc-client 0.8.3", + "alloy-rpc-types 0.8.3", + "alloy-serde 0.8.3", + "alloy-signer 0.8.3", + "alloy-signer-local", + "alloy-transport 0.8.3", + "alloy-transport-http 0.8.3", + "alloy-transport-ipc", + "alloy-transport-ws", ] [[package]] @@ -82,70 +123,127 @@ version = "0.1.42" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dca4a1469a3e572e9ba362920ff145f5d0a00a3e71a64ddcb4a3659cf64c76a7" dependencies = [ - "alloy-primitives", + "alloy-primitives 0.8.18", "num_enum", "strum 0.26.3", ] [[package]] name = "alloy-consensus" -version = "0.4.2" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-eips 0.1.0", + "alloy-primitives 0.6.4", + "alloy-rlp", + "sha2", +] + +[[package]] +name = "alloy-consensus" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "705687d5bfd019fee57cf9e206b27b30a9a9617535d5590a02b171e813208f8e" +checksum = "e88e1edea70787c33e11197d3f32ae380f3db19e6e061e539a5bcf8184a6b326" dependencies = [ - "alloy-eips", - "alloy-primitives", + "alloy-eips 0.8.3", + "alloy-primitives 0.8.18", "alloy-rlp", - "alloy-serde", + "alloy-serde 0.8.3", + "alloy-trie", "auto_impl", "c-kzg", "derive_more 1.0.0", + "k256", + "serde", +] + +[[package]] +name = "alloy-consensus-any" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57b1bb53f40c0273cd1975573cd457b39213e68584e36d1401d25fd0398a1d65" +dependencies = [ + "alloy-consensus 0.8.3", + "alloy-eips 0.8.3", + "alloy-primitives 0.8.18", + "alloy-rlp", + "alloy-serde 0.8.3", "serde", ] [[package]] name = "alloy-contract" -version = "0.4.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "917f7d12cf3971dc8c11c9972f732b35ccb9aaaf5f28f2f87e9e6523bee3a8ad" +checksum = "1b668c78c4b1f12f474ede5a85e8ce550d0aa1ef7d49fd1d22855a43b960e725" dependencies = [ - "alloy-dyn-abi", - "alloy-json-abi", - "alloy-network", + "alloy-dyn-abi 0.8.18", + "alloy-json-abi 0.8.18", + "alloy-network 0.8.3", "alloy-network-primitives", - "alloy-primitives", - "alloy-provider", + "alloy-primitives 0.8.18", + "alloy-provider 0.8.3", + "alloy-pubsub", "alloy-rpc-types-eth", - "alloy-sol-types", - "alloy-transport", + "alloy-sol-types 0.8.18", + "alloy-transport 0.8.3", "futures", "futures-util", - "thiserror 1.0.65", + "thiserror 2.0.3", +] + +[[package]] +name = "alloy-core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd180ed0c69492633d6d7d9e22dab64951fb56906f4294a8e0739c8036df315" +dependencies = [ + "alloy-dyn-abi 0.6.4", + "alloy-json-abi 0.6.4", + "alloy-primitives 0.6.4", + "alloy-sol-types 0.6.4", ] [[package]] name = "alloy-core" -version = "0.8.9" +version = "0.8.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cce174ca699ddee3bfb2ec1fbd99ad7efd05eca20c5c888d8320db41f7e8f04" +checksum = "d0713007d14d88a6edb8e248cddab783b698dbb954a28b8eee4bab21cfb7e578" dependencies = [ - "alloy-dyn-abi", - "alloy-json-abi", - "alloy-primitives", + "alloy-dyn-abi 0.8.18", + "alloy-json-abi 0.8.18", + "alloy-primitives 0.8.18", "alloy-rlp", - "alloy-sol-types", + "alloy-sol-types 0.8.18", +] + +[[package]] +name = "alloy-dyn-abi" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2919acdad13336bc5dc26b636cdd6892c2f27fb0d4a58320a00c2713cf6a4e9a" +dependencies = [ + "alloy-json-abi 0.6.4", + "alloy-primitives 0.6.4", + "alloy-sol-type-parser 0.6.4", + "alloy-sol-types 0.6.4", + "const-hex", + "itoa", + "serde", + "serde_json", + "winnow", ] [[package]] name = "alloy-dyn-abi" -version = "0.8.9" +version = "0.8.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5647fce5a168f9630f935bf7821c4207b1755184edaeba783cb4e11d35058484" +checksum = "44e3b98c37b3218924cd1d2a8570666b89662be54e5b182643855f783ea68b33" dependencies = [ - "alloy-json-abi", - "alloy-primitives", - "alloy-sol-type-parser", - "alloy-sol-types", + "alloy-json-abi 0.8.18", + "alloy-primitives 0.8.18", + "alloy-sol-type-parser 0.8.18", + "alloy-sol-types 0.8.18", "const-hex", "itoa", "serde", @@ -159,33 +257,48 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0069cf0642457f87a01a014f6dc29d5d893cd4fd8fddf0c3cdfad1bb3ebafc41" dependencies = [ - "alloy-primitives", + "alloy-primitives 0.8.18", "alloy-rlp", "serde", ] [[package]] name = "alloy-eip7702" -version = "0.1.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea59dc42102bc9a1905dc57901edc6dd48b9f38115df86c7d252acba70d71d04" +checksum = "4c986539255fb839d1533c128e190e557e52ff652c9ef62939e233a81dd93f7e" dependencies = [ - "alloy-primitives", + "alloy-primitives 0.8.18", "alloy-rlp", + "derive_more 1.0.0", + "k256", "serde", ] [[package]] name = "alloy-eips" -version = "0.4.2" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-primitives 0.6.4", + "alloy-rlp", + "alloy-serde 0.1.0", + "c-kzg", + "once_cell", + "serde", +] + +[[package]] +name = "alloy-eips" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ffb906284a1e1f63c4607da2068c8197458a352d0b3e9796e67353d72a9be85" +checksum = "5f9fadfe089e9ccc0650473f2d4ef0a28bc015bbca5631d9f0f09e49b557fdb3" dependencies = [ "alloy-eip2930", "alloy-eip7702", - "alloy-primitives", + "alloy-primitives 0.8.18", "alloy-rlp", - "alloy-serde", + "alloy-serde 0.8.3", "c-kzg", "derive_more 1.0.0", "once_cell", @@ -195,97 +308,164 @@ dependencies = [ [[package]] name = "alloy-genesis" -version = "0.4.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8429cf4554eed9b40feec7f4451113e76596086447550275e3def933faf47ce3" +checksum = "2b2a4cf7b70f3495788e74ce1c765260ffe38820a2a774ff4aacb62e31ea73f9" dependencies = [ - "alloy-primitives", - "alloy-serde", + "alloy-primitives 0.8.18", + "alloy-serde 0.8.3", + "alloy-trie", "serde", ] [[package]] name = "alloy-json-abi" -version = "0.8.9" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b5671117c38b1c2306891f97ad3828d85487087f54ebe2c7591a055ea5bcea7" +checksum = "24ed0f2a6c3a1c947b4508522a53a190dba8f94dcd4e3e1a5af945a498e78f2f" dependencies = [ - "alloy-primitives", - "alloy-sol-type-parser", + "alloy-primitives 0.6.4", + "alloy-sol-type-parser 0.6.4", "serde", "serde_json", ] [[package]] -name = "alloy-json-rpc" -version = "0.4.2" +name = "alloy-json-abi" +version = "0.8.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8fa8a1a3c4cbd221f2b8e3693aeb328fca79a757fe556ed08e47bbbc2a70db7" +checksum = "731ea743b3d843bc657e120fb1d1e9cc94f5dab8107e35a82125a63e6420a102" +dependencies = [ + "alloy-primitives 0.8.18", + "alloy-sol-type-parser 0.8.18", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-json-rpc" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" dependencies = [ - "alloy-primitives", - "alloy-sol-types", + "alloy-primitives 0.6.4", "serde", "serde_json", "thiserror 1.0.65", +] + +[[package]] +name = "alloy-json-rpc" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e29040b9d5fe2fb70415531882685b64f8efd08dfbd6cc907120650504821105" +dependencies = [ + "alloy-primitives 0.8.18", + "alloy-sol-types 0.8.18", + "serde", + "serde_json", + "thiserror 2.0.3", "tracing", ] [[package]] name = "alloy-network" -version = "0.4.2" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-consensus 0.1.0", + "alloy-eips 0.1.0", + "alloy-json-rpc 0.1.0", + "alloy-primitives 0.6.4", + "alloy-rpc-types 0.1.0", + "alloy-signer 0.1.0", + "async-trait", + "futures-utils-wasm", + "serde", + "thiserror 1.0.65", +] + +[[package]] +name = "alloy-network" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85fa23a6a9d612b52e402c995f2d582c25165ec03ac6edf64c861a76bc5b87cd" +checksum = "510cc00b318db0dfccfdd2d032411cfae64fc144aef9679409e014145d3dacc4" dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-json-rpc", + "alloy-consensus 0.8.3", + "alloy-consensus-any", + "alloy-eips 0.8.3", + "alloy-json-rpc 0.8.3", "alloy-network-primitives", - "alloy-primitives", + "alloy-primitives 0.8.18", + "alloy-rpc-types-any", "alloy-rpc-types-eth", - "alloy-serde", - "alloy-signer", - "alloy-sol-types", + "alloy-serde 0.8.3", + "alloy-signer 0.8.3", + "alloy-sol-types 0.8.18", "async-trait", "auto_impl", "futures-utils-wasm", - "thiserror 1.0.65", + "serde", + "serde_json", + "thiserror 2.0.3", ] [[package]] name = "alloy-network-primitives" -version = "0.4.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "801492711d4392b2ccf5fc0bc69e299fa1aab15167d74dcaa9aab96a54f684bd" +checksum = "9081c099e798b8a2bba2145eb82a9a146f01fc7a35e9ab6e7b43305051f97550" dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-serde", + "alloy-consensus 0.8.3", + "alloy-eips 0.8.3", + "alloy-primitives 0.8.18", + "alloy-serde 0.8.3", "serde", ] [[package]] name = "alloy-node-bindings" -version = "0.4.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f1334a738aa1710cb8227441b3fcc319202ce78e967ef37406940242df4a454" +checksum = "aef9849fb8bbb28f69f2cbdb4b0dac2f0e35c04f6078a00dfb8486469aed02de" dependencies = [ "alloy-genesis", - "alloy-primitives", + "alloy-primitives 0.8.18", "k256", "rand", "serde_json", "tempfile", - "thiserror 1.0.65", + "thiserror 2.0.3", "tracing", "url", ] [[package]] name = "alloy-primitives" -version = "0.8.9" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "600d34d8de81e23b6d909c094e23b3d357e01ca36b78a8c5424c501eedbe86f0" +dependencies = [ + "alloy-rlp", + "bytes", + "cfg-if", + "const-hex", + "derive_more 0.99.18", + "hex-literal", + "itoa", + "k256", + "keccak-asm", + "proptest", + "rand", + "ruint", + "serde", + "tiny-keccak", +] + +[[package]] +name = "alloy-primitives" +version = "0.8.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c71738eb20c42c5fb149571e76536a0f309d142f3957c28791662b96baf77a3d" +checksum = "788bb18e8f61d5d9340b52143f27771daf7e1dccbaf2741621d2493f9debf52e" dependencies = [ "alloy-rlp", "bytes", @@ -294,7 +474,6 @@ dependencies = [ "derive_more 1.0.0", "foldhash", "hashbrown 0.15.0", - "hex-literal", "indexmap 2.6.0", "itoa", "k256", @@ -303,7 +482,7 @@ dependencies = [ "proptest", "rand", "ruint", - "rustc-hash 2.0.0", + "rustc-hash 2.1.0", "serde", "sha3", "tiny-keccak", @@ -311,39 +490,90 @@ dependencies = [ [[package]] name = "alloy-provider" -version = "0.4.2" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-json-rpc 0.1.0", + "alloy-network 0.1.0", + "alloy-primitives 0.6.4", + "alloy-rpc-client 0.1.0", + "alloy-rpc-trace-types", + "alloy-rpc-types 0.1.0", + "alloy-transport 0.1.0", + "alloy-transport-http 0.1.0", + "async-stream", + "async-trait", + "auto_impl", + "dashmap 5.5.3", + "futures", + "lru", + "reqwest 0.12.8", + "serde_json", + "tokio", + "tracing", +] + +[[package]] +name = "alloy-provider" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcfaa4ffec0af04e3555686b8aacbcdf7d13638133a0672749209069750f78a6" +checksum = "dc2dfaddd9a30aa870a78a4e1316e3e115ec1e12e552cbc881310456b85c1f24" dependencies = [ "alloy-chains", - "alloy-consensus", - "alloy-eips", - "alloy-json-rpc", - "alloy-network", + "alloy-consensus 0.8.3", + "alloy-eips 0.8.3", + "alloy-json-rpc 0.8.3", + "alloy-network 0.8.3", "alloy-network-primitives", "alloy-node-bindings", - "alloy-primitives", - "alloy-rpc-client", + "alloy-primitives 0.8.18", + "alloy-pubsub", + "alloy-rpc-client 0.8.3", "alloy-rpc-types-anvil", "alloy-rpc-types-eth", + "alloy-signer 0.8.3", "alloy-signer-local", - "alloy-transport", - "alloy-transport-http", + "alloy-transport 0.8.3", + "alloy-transport-http 0.8.3", + "alloy-transport-ipc", + "alloy-transport-ws", "async-stream", "async-trait", "auto_impl", - "dashmap", + "dashmap 6.1.0", "futures", "futures-utils-wasm", "lru", + "parking_lot 0.12.3", "pin-project", "reqwest 0.12.8", + "schnellru", "serde", "serde_json", - "thiserror 1.0.65", + "thiserror 2.0.3", "tokio", "tracing", "url", + "wasmtimer", +] + +[[package]] +name = "alloy-pubsub" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "695809e743628d54510c294ad17a4645bd9f465aeb0d20ee9ce9877c9712dc9c" +dependencies = [ + "alloy-json-rpc 0.8.3", + "alloy-primitives 0.8.18", + "alloy-transport 0.8.3", + "bimap", + "futures", + "serde", + "serde_json", + "tokio", + "tokio-stream", + "tower 0.5.1", + "tracing", ] [[package]] @@ -370,14 +600,37 @@ dependencies = [ [[package]] name = "alloy-rpc-client" -version = "0.4.2" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-json-rpc 0.1.0", + "alloy-transport 0.1.0", + "alloy-transport-http 0.1.0", + "futures", + "pin-project", + "reqwest 0.12.8", + "serde", + "serde_json", + "tokio", + "tokio-stream", + "tower 0.4.13", + "tracing", + "url", +] + +[[package]] +name = "alloy-rpc-client" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "370143ed581aace6e663342d21d209c6b2e34ee6142f7d6675adb518deeaf0dc" +checksum = "531137b283547d5b9a5cafc96b006c64ef76810c681d606f28be9781955293b6" dependencies = [ - "alloy-json-rpc", - "alloy-primitives", - "alloy-transport", - "alloy-transport-http", + "alloy-json-rpc 0.8.3", + "alloy-primitives 0.8.18", + "alloy-pubsub", + "alloy-transport 0.8.3", + "alloy-transport-http 0.8.3", + "alloy-transport-ipc", + "alloy-transport-ws", "futures", "pin-project", "reqwest 0.12.8", @@ -388,44 +641,103 @@ dependencies = [ "tower 0.5.1", "tracing", "url", + "wasmtimer", +] + +[[package]] +name = "alloy-rpc-trace-types" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-primitives 0.6.4", + "alloy-rpc-types 0.1.0", + "alloy-serde 0.1.0", + "serde", + "serde_json", ] [[package]] name = "alloy-rpc-types" -version = "0.4.2" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-consensus 0.1.0", + "alloy-eips 0.1.0", + "alloy-primitives 0.6.4", + "alloy-rlp", + "alloy-serde 0.1.0", + "itertools 0.12.1", + "serde", + "serde_json", + "thiserror 1.0.65", +] + +[[package]] +name = "alloy-rpc-types" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ffc534b7919e18f35e3aa1f507b6f3d9d92ec298463a9f6beaac112809d8d06" +checksum = "3410a472ce26c457e9780f708ee6bd540b30f88f1f31fdab7a11d00bd6aa1aee" dependencies = [ - "alloy-primitives", + "alloy-primitives 0.8.18", + "alloy-rpc-types-engine", "alloy-rpc-types-eth", - "alloy-serde", + "alloy-serde 0.8.3", "serde", ] [[package]] name = "alloy-rpc-types-anvil" -version = "0.4.2" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed06bd8a5fc57b352a6cbac24eec52a4760f08ae2c1eb56ac49c8ed4b02c351" +dependencies = [ + "alloy-primitives 0.8.18", + "alloy-rpc-types-eth", + "alloy-serde 0.8.3", + "serde", +] + +[[package]] +name = "alloy-rpc-types-any" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed98e1af55a7d856bfa385f30f63d8d56be2513593655c904a8f4a7ec963aa3e" +dependencies = [ + "alloy-consensus-any", + "alloy-rpc-types-eth", + "alloy-serde 0.8.3", +] + +[[package]] +name = "alloy-rpc-types-engine" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d780adaa5d95b07ad92006b2feb68ecfa7e2015f7d5976ceaac4c906c73ebd07" +checksum = "03bd16fa4959255ebf4a7702df08f325e5631df5cdca07c8a8e58bdc10fe02e3" dependencies = [ - "alloy-primitives", - "alloy-serde", + "alloy-consensus 0.8.3", + "alloy-eips 0.8.3", + "alloy-primitives 0.8.18", + "alloy-rlp", + "alloy-serde 0.8.3", + "derive_more 1.0.0", "serde", + "strum 0.26.3", ] [[package]] name = "alloy-rpc-types-eth" -version = "0.4.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413f4aa3ccf2c3e4234a047c5fa4727916d7daf25a89f9b765df0ba09784fd87" +checksum = "8737d7a6e37ca7bba9c23e9495c6534caec6760eb24abc9d5ffbaaba147818e1" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.8.3", + "alloy-consensus-any", + "alloy-eips 0.8.3", "alloy-network-primitives", - "alloy-primitives", + "alloy-primitives 0.8.18", "alloy-rlp", - "alloy-serde", - "alloy-sol-types", + "alloy-serde 0.8.3", + "alloy-sol-types 0.8.18", "derive_more 1.0.0", "itertools 0.13.0", "serde", @@ -434,39 +746,77 @@ dependencies = [ [[package]] name = "alloy-serde" -version = "0.4.2" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-primitives 0.6.4", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-serde" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dff0ab1cdd43ca001e324dc27ee0e8606bd2161d6623c63e0e0b8c4dfc13600" +checksum = "5851bf8d5ad33014bd0c45153c603303e730acc8a209450a7ae6b4a12c2789e2" dependencies = [ - "alloy-primitives", + "alloy-primitives 0.8.18", "serde", "serde_json", ] [[package]] name = "alloy-signer" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fd4e0ad79c81a27ca659be5d176ca12399141659fef2bcbfdc848da478f4504" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" dependencies = [ - "alloy-primitives", + "alloy-primitives 0.6.4", "async-trait", "auto_impl", - "elliptic-curve", + "elliptic-curve 0.13.8", "k256", "thiserror 1.0.65", ] +[[package]] +name = "alloy-signer" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e10ca565da6500cca015ba35ee424d59798f2e1b85bc0dd8f81dafd401f029a" +dependencies = [ + "alloy-primitives 0.8.18", + "async-trait", + "auto_impl", + "elliptic-curve 0.13.8", + "k256", + "thiserror 2.0.3", +] + [[package]] name = "alloy-signer-local" -version = "0.4.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "494e0a256f3e99f2426f994bcd1be312c02cb8f88260088dacb33a8b8936475f" +checksum = "47fababf5a745133490cde927d48e50267f97d3d1209b9fc9f1d1d666964d172" +dependencies = [ + "alloy-consensus 0.8.3", + "alloy-network 0.8.3", + "alloy-primitives 0.8.18", + "alloy-signer 0.8.3", + "async-trait", + "k256", + "rand", + "thiserror 2.0.3", +] + +[[package]] +name = "alloy-signer-wallet" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" dependencies = [ - "alloy-consensus", - "alloy-network", - "alloy-primitives", - "alloy-signer", + "alloy-consensus 0.1.0", + "alloy-network 0.1.0", + "alloy-primitives 0.6.4", + "alloy-signer 0.1.0", "async-trait", "k256", "rand", @@ -475,9 +825,27 @@ dependencies = [ [[package]] name = "alloy-sol-macro" -version = "0.8.9" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0900b83f4ee1f45c640ceee596afbc118051921b9438fdb5a3175c1a7e05f8b" +checksum = "e86ec0a47740b20bc5613b8712d0d321d031c4efc58e9645af96085d5cccfc27" +dependencies = [ + "const-hex", + "dunce", + "heck 0.4.1", + "indexmap 2.6.0", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 2.0.89", + "syn-solidity 0.6.4", + "tiny-keccak", +] + +[[package]] +name = "alloy-sol-macro" +version = "0.8.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a07b74d48661ab2e4b50bb5950d74dbff5e61dd8ed03bb822281b706d54ebacb" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", @@ -489,11 +857,11 @@ dependencies = [ [[package]] name = "alloy-sol-macro-expander" -version = "0.8.9" +version = "0.8.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a41b1e78dde06b5e12e6702fa8c1d30621bf07728ba75b801fb801c9c6a0ba10" +checksum = "19cc9c7f20b90f9be1a8f71a3d8e283a43745137b0837b1a1cb13159d37cad72" dependencies = [ - "alloy-json-abi", + "alloy-json-abi 0.8.18", "alloy-sol-macro-input", "const-hex", "heck 0.5.0", @@ -502,17 +870,17 @@ dependencies = [ "proc-macro2", "quote", "syn 2.0.89", - "syn-solidity", + "syn-solidity 0.8.18", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "0.8.9" +version = "0.8.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91dc311a561a306664393407b88d3e53ae58581624128afd8a15faa5de3627dc" +checksum = "713b7e6dfe1cb2f55c80fb05fd22ed085a1b4e48217611365ed0ae598a74c6ac" dependencies = [ - "alloy-json-abi", + "alloy-json-abi 0.8.18", "const-hex", "dunce", "heck 0.5.0", @@ -520,14 +888,23 @@ dependencies = [ "quote", "serde_json", "syn 2.0.89", - "syn-solidity", + "syn-solidity 0.8.18", +] + +[[package]] +name = "alloy-sol-type-parser" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0045cc89524e1451ccf33e8581355b6027ac7c6e494bb02959d4213ad0d8e91d" +dependencies = [ + "winnow", ] [[package]] name = "alloy-sol-type-parser" -version = "0.8.9" +version = "0.8.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45d1fbee9e698f3ba176b6e7a145f4aefe6d2b746b611e8bb246fe11a0e9f6c4" +checksum = "1eda2711ab2e1fb517fc6e2ffa9728c9a232e296d16810810e6957b781a1b8bc" dependencies = [ "serde", "winnow", @@ -535,24 +912,35 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "0.8.9" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "086f41bc6ebcd8cb15f38ba20e47be38dd03692149681ce8061c35d960dbf850" +checksum = "ad09ec5853fa700d12d778ad224dcdec636af424d29fad84fb9a2f16a5b0ef09" dependencies = [ - "alloy-json-abi", - "alloy-primitives", - "alloy-sol-macro", + "alloy-primitives 0.6.4", + "alloy-sol-macro 0.6.4", "const-hex", "serde", ] [[package]] -name = "alloy-transport" -version = "0.4.2" +name = "alloy-sol-types" +version = "0.8.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ac3e97dad3d31770db0fc89bd6a63b789fbae78963086733f960cf32c483904" +checksum = "e3b478bc9c0c4737a04cd976accde4df7eba0bdc0d90ad6ff43d58bc93cf79c1" +dependencies = [ + "alloy-json-abi 0.8.18", + "alloy-primitives 0.8.18", + "alloy-sol-macro 0.8.18", + "const-hex", + "serde", +] + +[[package]] +name = "alloy-transport" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" dependencies = [ - "alloy-json-rpc", + "alloy-json-rpc 0.1.0", "base64 0.22.1", "futures-util", "futures-utils-wasm", @@ -560,19 +948,52 @@ dependencies = [ "serde_json", "thiserror 1.0.65", "tokio", + "tower 0.4.13", + "url", + "wasm-bindgen-futures", +] + +[[package]] +name = "alloy-transport" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "538a04a37221469cac0ce231b737fd174de2fdfcdd843bdd068cb39ed3e066ad" +dependencies = [ + "alloy-json-rpc 0.8.3", + "base64 0.22.1", + "futures-util", + "futures-utils-wasm", + "serde", + "serde_json", + "thiserror 2.0.3", + "tokio", "tower 0.5.1", "tracing", "url", + "wasmtimer", ] [[package]] name = "alloy-transport-http" -version = "0.4.2" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-json-rpc 0.1.0", + "alloy-transport 0.1.0", + "reqwest 0.12.8", + "serde_json", + "tower 0.4.13", + "url", +] + +[[package]] +name = "alloy-transport-http" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b367dcccada5b28987c2296717ee04b9a5637aacd78eacb1726ef211678b5212" +checksum = "2ed40eb1e1265b2911512f6aa1dcece9702d078f5a646730c45e39e2be00ac1c" dependencies = [ - "alloy-json-rpc", - "alloy-transport", + "alloy-json-rpc 0.8.3", + "alloy-transport 0.8.3", "reqwest 0.12.8", "serde_json", "tower 0.5.1", @@ -580,6 +1001,107 @@ dependencies = [ "url", ] +[[package]] +name = "alloy-transport-ipc" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7a172a59d24706b26a79a837f86d51745cb26ca6f8524712acd0208a14cff95" +dependencies = [ + "alloy-json-rpc 0.8.3", + "alloy-pubsub", + "alloy-transport 0.8.3", + "bytes", + "futures", + "interprocess", + "pin-project", + "serde_json", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "alloy-transport-ws" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fba0e39d181d13c266dbb8ca54ed584a2c66d6e9279afca89c7a6b1825e98abb" +dependencies = [ + "alloy-pubsub", + "alloy-transport 0.8.3", + "futures", + "http 1.1.0", + "rustls 0.23.16", + "serde_json", + "tokio", + "tokio-tungstenite", + "tracing", + "ws_stream_wasm", +] + +[[package]] +name = "alloy-trie" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6917c79e837aa7b77b7a6dae9f89cbe15313ac161c4d3cfaf8909ef21f3d22d8" +dependencies = [ + "alloy-primitives 0.8.18", + "alloy-rlp", + "arrayvec", + "derive_more 1.0.0", + "nybbles", + "serde", + "smallvec", + "tracing", +] + +[[package]] +name = "amq-protocol" +version = "7.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a41c091e49edfcc098b4f90d4d7706a8cf9158034e84ebfee7ff346092f67c" +dependencies = [ + "amq-protocol-tcp", + "amq-protocol-types", + "amq-protocol-uri", + "cookie-factory", + "nom", + "serde", +] + +[[package]] +name = "amq-protocol-tcp" +version = "7.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ed7a4a662472f88823ed2fc81babb0b00562f2c54284e3e7bffc02b6df649bf" +dependencies = [ + "amq-protocol-uri", + "tcp-stream", + "tracing", +] + +[[package]] +name = "amq-protocol-types" +version = "7.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd6484fdc918c1b6e2ae8eda2914d19a5873e1975f93ad8d33d6a24d1d98df05" +dependencies = [ + "cookie-factory", + "nom", + "serde", + "serde_json", +] + +[[package]] +name = "amq-protocol-uri" +version = "7.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f7f2da69e0e1182765bf33407cd8a843f20791b5af2b57a2645818c4776c56c" +dependencies = [ + "amq-protocol-types", + "percent-encoding", + "url", +] + [[package]] name = "android-tzdata" version = "0.1.1" @@ -650,6 +1172,48 @@ version = "1.0.91" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c042108f3ed77fd83760a5fd79b53be043192bb3b9dba91d8c574c0ada7850c8" +[[package]] +name = "appchain-core-contract-client" +version = "0.1.0" +source = "git+https://github.com/notlesh/zaun?branch=madara-monorepo#537249e843997768cefddc022e275a98dadb7757" +dependencies = [ + "appchain-utils", + "async-trait", + "color-eyre", + "dirs", + "hex", + "log", + "num-traits 0.2.19", + "serde_json", + "starknet", + "starknet-accounts", + "starknet-core", + "starknet-ff", + "starknet-providers", +] + +[[package]] +name = "appchain-utils" +version = "0.1.0" +source = "git+https://github.com/notlesh/zaun?branch=madara-monorepo#537249e843997768cefddc022e275a98dadb7757" +dependencies = [ + "async-trait", + "color-eyre", + "hex", + "log", + "num-traits 0.2.19", + "serde_json", + "starknet", + "starknet-accounts", + "starknet-contract", + "starknet-core", + "starknet-ff", + "starknet-providers", + "starknet-signers", + "thiserror 1.0.65", + "url", +] + [[package]] name = "arbitrary" version = "1.4.1" @@ -849,6 +1413,9 @@ name = "arrayvec" version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" +dependencies = [ + "serde", +] [[package]] name = "ascii-canvas" @@ -859,6 +1426,45 @@ dependencies = [ "term", ] +[[package]] +name = "asn1-rs" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5493c3bedbacf7fd7382c6346bbd66687d12bbaad3a89a2d2c303ee6cf20b048" +dependencies = [ + "asn1-rs-derive", + "asn1-rs-impl", + "displaydoc", + "nom", + "num-traits 0.2.19", + "rusticata-macros", + "thiserror 1.0.65", + "time", +] + +[[package]] +name = "asn1-rs-derive" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", + "synstructure", +] + +[[package]] +name = "asn1-rs-impl" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", +] + [[package]] name = "assert-json-diff" version = "2.0.2" @@ -916,8 +1522,8 @@ checksum = "30ca9a001c1e8ba5149f91a74362376cc6bc5b919d92d988668657bd570bdcec" dependencies = [ "async-task", "concurrent-queue", - "fastrand", - "futures-lite", + "fastrand 2.1.1", + "futures-lite 2.3.0", "slab", ] @@ -929,32 +1535,72 @@ checksum = "05b1b633a2115cd122d73b955eadd9916c18c8f510ec9cd1686404c60ad1c29c" dependencies = [ "async-channel 2.3.1", "async-executor", - "async-io", - "async-lock", + "async-io 2.3.4", + "async-lock 3.4.0", "blocking", - "futures-lite", + "futures-lite 2.3.0", "once_cell", ] +[[package]] +name = "async-global-executor-trait" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80f19936c1a84fb48ceb8899b642d2a72572587d1021cc561bfb24de9f33ee89" +dependencies = [ + "async-global-executor", + "async-trait", + "executor-trait", +] + +[[package]] +name = "async-io" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af" +dependencies = [ + "async-lock 2.8.0", + "autocfg", + "cfg-if", + "concurrent-queue", + "futures-lite 1.13.0", + "log", + "parking", + "polling 2.8.0", + "rustix 0.37.28", + "slab", + "socket2 0.4.10", + "waker-fn", +] + [[package]] name = "async-io" version = "2.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "444b0228950ee6501b3568d3c93bf1176a1fdbc3b758dcd9475046d30f4dc7e8" dependencies = [ - "async-lock", + "async-lock 3.4.0", "cfg-if", "concurrent-queue", "futures-io", - "futures-lite", + "futures-lite 2.3.0", "parking", - "polling", - "rustix", + "polling 3.7.3", + "rustix 0.38.38", "slab", "tracing", "windows-sys 0.59.0", ] +[[package]] +name = "async-lock" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b" +dependencies = [ + "event-listener 2.5.3", +] + [[package]] name = "async-lock" version = "3.4.0" @@ -982,31 +1628,43 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "63255f1dc2381611000436537bbedfe83183faa303a5a0edaf191edef06526bb" dependencies = [ "async-channel 2.3.1", - "async-io", - "async-lock", + "async-io 2.3.4", + "async-lock 3.4.0", "async-signal", "async-task", "blocking", "cfg-if", "event-listener 5.3.1", - "futures-lite", - "rustix", + "futures-lite 2.3.0", + "rustix 0.38.38", "tracing", ] +[[package]] +name = "async-reactor-trait" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a6012d170ad00de56c9ee354aef2e358359deb1ec504254e0e5a3774771de0e" +dependencies = [ + "async-io 1.13.0", + "async-trait", + "futures-core", + "reactor-trait", +] + [[package]] name = "async-signal" version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "637e00349800c0bdf8bfc21ebbc0b6524abea702b0da4168ac00d070d0c0b9f3" dependencies = [ - "async-io", - "async-lock", + "async-io 2.3.4", + "async-lock 3.4.0", "atomic-waker", "cfg-if", "futures-core", "futures-io", - "rustix", + "rustix 0.38.38", "signal-hook-registry", "slab", "windows-sys 0.59.0", @@ -1021,14 +1679,14 @@ dependencies = [ "async-attributes", "async-channel 1.9.0", "async-global-executor", - "async-io", - "async-lock", + "async-io 2.3.4", + "async-lock 3.4.0", "async-process", "crossbeam-utils", "futures-channel", "futures-core", "futures-io", - "futures-lite", + "futures-lite 2.3.0", "gloo-timers 0.3.0", "kv-log-macro", "log", @@ -1089,43 +1747,612 @@ dependencies = [ "futures-util", "log", "pin-project-lite", - "tungstenite", + "tungstenite 0.21.0", ] [[package]] -name = "atomic-waker" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" - -[[package]] -name = "atty" -version = "0.2.14" +name = "async_io_stream" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" +checksum = "b6d7b9decdf35d8908a7e3ef02f64c5e9b1695e230154c0e8de3969142d9b94c" dependencies = [ - "hermit-abi 0.1.19", - "libc", - "winapi", + "futures", + "pharos", + "rustc_version 0.4.1", ] [[package]] -name = "auto_impl" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" +name = "atlantic-service" +version = "0.7.0" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.89", + "alloy 0.8.3", + "async-trait", + "base64 0.22.1", + "cairo-vm", + "chrono", + "color-eyre", + "dotenvy", + "env_logger 0.11.6", + "gps-fact-checker", + "hex", + "httpmock", + "lazy_static", + "log", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry_sdk", + "prover-client-interface", + "reqwest 0.12.8", + "rstest 0.18.2", + "serde", + "serde_json", + "starknet-os", + "strum 0.26.3", + "strum_macros 0.26.4", + "tempfile", + "thiserror 2.0.3", + "tokio", + "tokio-util", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "utils", + "uuid 1.12.0", +] + +[[package]] +name = "atomic-waker" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" + +[[package]] +name = "atty" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" +dependencies = [ + "hermit-abi 0.1.19", + "libc", + "winapi", +] + +[[package]] +name = "auto_impl" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", +] + +[[package]] +name = "autocfg" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" + +[[package]] +name = "aws-config" +version = "1.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5d1c2c88936a73c699225d0bc00684a534166b0cebc2659c3cdf08de8edc64c" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-sdk-sso", + "aws-sdk-ssooidc", + "aws-sdk-sts", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "fastrand 2.1.1", + "hex", + "http 0.2.12", + "ring", + "time", + "tokio", + "tracing", + "url", + "zeroize", +] + +[[package]] +name = "aws-credential-types" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60e8f6b615cb5fc60a98132268508ad104310f0cfb25a1c22eee76efdf9154da" +dependencies = [ + "aws-smithy-async", + "aws-smithy-runtime-api", + "aws-smithy-types", + "zeroize", +] + +[[package]] +name = "aws-runtime" +version = "1.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b16d1aa50accc11a4b4d5c50f7fb81cc0cf60328259c587d0e6b0f11385bde46" +dependencies = [ + "aws-credential-types", + "aws-sigv4", + "aws-smithy-async", + "aws-smithy-eventstream", + "aws-smithy-http", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "fastrand 2.1.1", + "http 0.2.12", + "http-body 0.4.6", + "once_cell", + "percent-encoding", + "pin-project-lite", + "tracing", + "uuid 1.12.0", +] + +[[package]] +name = "aws-sdk-eventbridge" +version = "1.56.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "691216efe502ee2679ff442162b9f394527edff8a1e0fa429bb1be4f7d5976aa" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sdk-iam" +version = "1.56.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2a089a65ceba0f649be19c7b2213d2e009bd7700159e280f03ad5ed2828d30c" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-query", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-smithy-xml", + "aws-types", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sdk-s3" +version = "1.68.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc5ddf1dc70287dc9a2f953766a1fe15e3e74aef02fd1335f2afa475c9b4f4fc" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-sigv4", + "aws-smithy-async", + "aws-smithy-checksums", + "aws-smithy-eventstream", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-smithy-xml", + "aws-types", + "bytes", + "fastrand 2.1.1", + "hex", + "hmac", + "http 0.2.12", + "http-body 0.4.6", + "lru", + "once_cell", + "percent-encoding", + "regex-lite", + "sha2", + "tracing", + "url", +] + +[[package]] +name = "aws-sdk-scheduler" +version = "1.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23858f87b0cba36ec017aef7b548ee10f1e02b7aebe56a70769d7032b23ec07c" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "fastrand 2.1.1", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sdk-sns" +version = "1.54.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b71d976a6c87d15fd3ceab6fcaa17e0d02a05a06d30f5e268e4160b25dbde26d" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-query", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-smithy-xml", + "aws-types", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sdk-sqs" +version = "1.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6493ce2b27a2687b0d8a2453bf6ad2499012e9720c3367cb1206496ede475443" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sdk-sso" +version = "1.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1605dc0bf9f0a4b05b451441a17fcb0bda229db384f23bf5cead3adbab0664ac" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sdk-ssooidc" +version = "1.54.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59f3f73466ff24f6ad109095e0f3f2c830bfb4cd6c8b12f744c8e61ebf4d3ba1" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sdk-sts" +version = "1.54.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "861d324ef69247c6f3c6823755f408a68877ffb1a9afaff6dd8b0057c760de60" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-query", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-smithy-xml", + "aws-types", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sigv4" +version = "1.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d3820e0c08d0737872ff3c7c1f21ebbb6693d832312d6152bf18ef50a5471c2" +dependencies = [ + "aws-credential-types", + "aws-smithy-eventstream", + "aws-smithy-http", + "aws-smithy-runtime-api", + "aws-smithy-types", + "bytes", + "crypto-bigint 0.5.5", + "form_urlencoded", + "hex", + "hmac", + "http 0.2.12", + "http 1.1.0", + "once_cell", + "p256", + "percent-encoding", + "ring", + "sha2", + "subtle", + "time", + "tracing", + "zeroize", +] + +[[package]] +name = "aws-smithy-async" +version = "1.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "427cb637d15d63d6f9aae26358e1c9a9c09d5aa490d64b09354c8217cfef0f28" +dependencies = [ + "futures-util", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "aws-smithy-checksums" +version = "0.60.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba1a71073fca26775c8b5189175ea8863afb1c9ea2cceb02a5de5ad9dfbaa795" +dependencies = [ + "aws-smithy-http", + "aws-smithy-types", + "bytes", + "crc32c", + "crc32fast", + "hex", + "http 0.2.12", + "http-body 0.4.6", + "md-5", + "pin-project-lite", + "sha1", + "sha2", + "tracing", +] + +[[package]] +name = "aws-smithy-eventstream" +version = "0.60.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cef7d0a272725f87e51ba2bf89f8c21e4df61b9e49ae1ac367a6d69916ef7c90" +dependencies = [ + "aws-smithy-types", + "bytes", + "crc32fast", +] + +[[package]] +name = "aws-smithy-http" +version = "0.60.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c8bc3e8fdc6b8d07d976e301c02fe553f72a39b7a9fea820e023268467d7ab6" +dependencies = [ + "aws-smithy-eventstream", + "aws-smithy-runtime-api", + "aws-smithy-types", + "bytes", + "bytes-utils", + "futures-core", + "http 0.2.12", + "http-body 0.4.6", + "once_cell", + "percent-encoding", + "pin-project-lite", + "pin-utils", + "tracing", +] + +[[package]] +name = "aws-smithy-json" +version = "0.61.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee4e69cc50921eb913c6b662f8d909131bb3e6ad6cb6090d3a39b66fc5c52095" +dependencies = [ + "aws-smithy-types", +] + +[[package]] +name = "aws-smithy-query" +version = "0.60.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2fbd61ceb3fe8a1cb7352e42689cec5335833cd9f94103a61e98f9bb61c64bb" +dependencies = [ + "aws-smithy-types", + "urlencoding", +] + +[[package]] +name = "aws-smithy-runtime" +version = "1.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a05dd41a70fc74051758ee75b5c4db2c0ca070ed9229c3df50e9475cda1cb985" +dependencies = [ + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-runtime-api", + "aws-smithy-types", + "bytes", + "fastrand 2.1.1", + "h2 0.3.26", + "http 0.2.12", + "http-body 0.4.6", + "http-body 1.0.1", + "httparse", + "hyper 0.14.31", + "hyper-rustls 0.24.2", + "once_cell", + "pin-project-lite", + "pin-utils", + "rustls 0.21.12", + "tokio", + "tracing", +] + +[[package]] +name = "aws-smithy-runtime-api" +version = "1.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92165296a47a812b267b4f41032ff8069ab7ff783696d217f0994a0d7ab585cd" +dependencies = [ + "aws-smithy-async", + "aws-smithy-types", + "bytes", + "http 0.2.12", + "http 1.1.0", + "pin-project-lite", + "tokio", + "tracing", + "zeroize", +] + +[[package]] +name = "aws-smithy-types" +version = "1.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38ddc9bd6c28aeb303477170ddd183760a956a03e083b3902a990238a7e3792d" +dependencies = [ + "base64-simd", + "bytes", + "bytes-utils", + "futures-core", + "http 0.2.12", + "http 1.1.0", + "http-body 0.4.6", + "http-body 1.0.1", + "http-body-util", + "itoa", + "num-integer", + "pin-project-lite", + "pin-utils", + "ryu", + "serde", + "time", + "tokio", + "tokio-util", +] + +[[package]] +name = "aws-smithy-xml" +version = "0.60.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab0b0166827aa700d3dc519f72f8b3a91c35d0b8d042dc5d643a91e6f80648fc" +dependencies = [ + "xmlparser", +] + +[[package]] +name = "aws-types" +version = "1.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5221b91b3e441e6675310829fd8984801b772cb1546ef6c0e54dec9f1ac13fef" +dependencies = [ + "aws-credential-types", + "aws-smithy-async", + "aws-smithy-runtime-api", + "aws-smithy-types", + "rustc_version 0.4.1", + "tracing", +] + +[[package]] +name = "axum" +version = "0.6.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" +dependencies = [ + "async-trait", + "axum-core 0.3.4", + "bitflags 1.3.2", + "bytes", + "futures-util", + "http 0.2.12", + "http-body 0.4.6", + "hyper 0.14.31", + "itoa", + "matchit", + "memchr", + "mime", + "percent-encoding", + "pin-project-lite", + "rustversion", + "serde", + "sync_wrapper 0.1.2", + "tower 0.4.13", + "tower-layer", + "tower-service", ] -[[package]] -name = "autocfg" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" - [[package]] name = "axum" version = "0.7.7" @@ -1133,12 +2360,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "504e3947307ac8326a5437504c517c4b56716c9d98fac0028c2acc7ca47d70ae" dependencies = [ "async-trait", - "axum-core", + "axum-core 0.4.5", + "axum-macros", "bytes", "futures-util", "http 1.1.0", "http-body 1.0.1", "http-body-util", + "hyper 1.5.0", + "hyper-util", "itoa", "matchit", "memchr", @@ -1147,10 +2377,32 @@ dependencies = [ "pin-project-lite", "rustversion", "serde", + "serde_json", + "serde_path_to_error", + "serde_urlencoded", "sync_wrapper 1.0.1", + "tokio", "tower 0.5.1", "tower-layer", "tower-service", + "tracing", +] + +[[package]] +name = "axum-core" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" +dependencies = [ + "async-trait", + "bytes", + "futures-util", + "http 0.2.12", + "http-body 0.4.6", + "mime", + "rustversion", + "tower-layer", + "tower-service", ] [[package]] @@ -1171,23 +2423,47 @@ dependencies = [ "sync_wrapper 1.0.1", "tower-layer", "tower-service", + "tracing", +] + +[[package]] +name = "axum-macros" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57d123550fa8d071b7255cb0cc04dc302baa6c8c4a79f55701552684d8399bce" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", ] [[package]] name = "backtrace" -version = "0.3.74" +version = "0.3.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a" +checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d" dependencies = [ "addr2line", + "cc", "cfg-if", "libc", - "miniz_oxide", + "miniz_oxide 0.7.4", "object", "rustc-demangle", - "windows-targets 0.52.6", ] +[[package]] +name = "base-encode" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a17bd29f7c70f32e9387f4d4acfa5ea7b7749ef784fb78cf382df97069337b8c" + +[[package]] +name = "base16ct" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce" + [[package]] name = "base16ct" version = "0.2.0" @@ -1212,6 +2488,16 @@ version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" +[[package]] +name = "base64-simd" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195" +dependencies = [ + "outref", + "vsimd", +] + [[package]] name = "base64ct" version = "1.6.0" @@ -1229,6 +2515,29 @@ dependencies = [ "regex", ] +[[package]] +name = "bb8" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d89aabfae550a5c44b43ab941844ffcd2e993cb6900b342debf59e9ea74acdb8" +dependencies = [ + "async-trait", + "futures-util", + "parking_lot 0.12.3", + "tokio", +] + +[[package]] +name = "bb8-redis" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4094bc17b933090cfded54315a86db01d67ec999583d4bab894c520f8c097d1f" +dependencies = [ + "async-trait", + "bb8", + "redis", +] + [[package]] name = "beef" version = "0.5.2" @@ -1238,6 +2547,18 @@ dependencies = [ "serde", ] +[[package]] +name = "bigdecimal" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6773ddc0eafc0e509fb60e48dff7f450f8e674a0686ae8605e8d9901bd5eefa" +dependencies = [ + "num-bigint", + "num-integer", + "num-traits 0.2.19", + "serde", +] + [[package]] name = "bigdecimal" version = "0.4.5" @@ -1251,6 +2572,12 @@ dependencies = [ "num-traits 0.2.19", ] +[[package]] +name = "bimap" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "230c5f1ca6a325a32553f8640d31ac9b49f2411e901e427570154868b46da4f7" + [[package]] name = "bincode" version = "1.3.3" @@ -1324,6 +2651,7 @@ checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" dependencies = [ "funty", "radium", + "serde", "tap", "wyz", ] @@ -1347,10 +2675,18 @@ dependencies = [ ] [[package]] -name = "blockifier" -version = "0.8.0" +name = "block-padding" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "481ee091c604037e5e81cf0debf1eca9f69d4f61636b27d7732c7cf14efbb508" +checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93" +dependencies = [ + "generic-array", +] + +[[package]] +name = "blockifier" +version = "0.8.0-rc.3" +source = "git+https://github.com/Moonsong-Labs/sequencer?branch=madara-monorepo#6624e910c57db9a16f1607c1ed26f7d8f1114e73" dependencies = [ "anyhow", "ark-ec", @@ -1397,7 +2733,7 @@ dependencies = [ "async-channel 2.3.1", "async-task", "futures-io", - "futures-lite", + "futures-lite 2.3.0", "piper", ] @@ -1431,6 +2767,28 @@ dependencies = [ "thiserror 2.0.3", ] +[[package]] +name = "bson" +version = "2.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "068208f2b6fcfa27a7f1ee37488d2bb8ba2640f68f5475d08e1d9130696aba59" +dependencies = [ + "ahash 0.8.11", + "base64 0.13.1", + "bitvec", + "chrono", + "hex", + "indexmap 2.6.0", + "js-sys", + "once_cell", + "rand", + "serde", + "serde_bytes", + "serde_json", + "time", + "uuid 1.12.0", +] + [[package]] name = "bstr" version = "1.10.0" @@ -1468,6 +2826,16 @@ dependencies = [ "serde", ] +[[package]] +name = "bytes-utils" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7dafe3a8757b027e2be6e4e5601ed563c55989fcf1546e933c66c8eb3a058d35" +dependencies = [ + "bytes", + "either", +] + [[package]] name = "bzip2" version = "0.4.4" @@ -3144,7 +4512,7 @@ version = "1.0.0-alpha.6" source = "git+https://github.com/starkware-libs/cairo?tag=v1.0.0-alpha.6#439da05a031c2eda263c4ce12d0b71d20f38205f" dependencies = [ "chrono", - "env_logger", + "env_logger 0.9.3", "indexmap 1.9.3", "itertools 0.10.5", "log", @@ -3159,7 +4527,7 @@ name = "cairo-lang-utils" version = "1.0.0-rc0" source = "git+https://github.com/starkware-libs/cairo?tag=v1.0.0-rc0#05867c82de42d5ee5cfa953dcca1cb826402f74b" dependencies = [ - "env_logger", + "env_logger 0.9.3", "indexmap 1.9.3", "itertools 0.10.5", "log", @@ -3176,7 +4544,7 @@ version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "af180baa613acd5b03179f8766a50087d44702b78c0b49a887fdb06d40226064" dependencies = [ - "env_logger", + "env_logger 0.9.3", "indexmap 1.9.3", "itertools 0.10.5", "log", @@ -3203,15 +4571,29 @@ dependencies = [ "serde", ] +[[package]] +name = "cairo-type-derive" +version = "0.1.0" +source = "git+https://github.com/keep-starknet-strange/snos?branch=madara-monorepo#58d1f11b59236f935a9c98191f46f650ed33d21a" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", +] + [[package]] name = "cairo-vm" version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58363ad8065ed891e3b14a8191b707677c7c7cb5b9d10030822506786d8d8108" +source = "git+https://github.com/Moonsong-Labs/cairo-vm?branch=madara-monorepo#1fa902bafae507424b5ea83a625830ffe6b0eca5" dependencies = [ "anyhow", + "ark-ff 0.4.2", + "ark-std 0.4.0", "bincode 2.0.0-rc.3", "bitvec", + "cairo-lang-casm 2.8.4", + "cairo-lang-starknet 2.8.4", + "cairo-lang-starknet-classes", "generic-array", "hashbrown 0.14.5", "hex", @@ -3231,9 +4613,25 @@ dependencies = [ "starknet-crypto 0.6.2", "starknet-types-core 0.1.7 (git+https://github.com/kasarlabs/types-rs.git?branch=feat-deserialize-v0.1.7)", "thiserror-no-std", + "wasm-bindgen", "zip", ] +[[package]] +name = "castaway" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2698f953def977c68f935bb0dfa959375ad4638570e969e2f1e9f433cbf1af6" + +[[package]] +name = "cbc" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26b52a9543ae338f279b96b0b9fed9c8093744685043739079ce85cd58f289a6" +dependencies = [ + "cipher", +] + [[package]] name = "cc" version = "1.1.31" @@ -3260,6 +4658,12 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "cfg_aliases" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" + [[package]] name = "chrono" version = "0.4.38" @@ -3336,6 +4740,45 @@ version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97" +[[package]] +name = "cms" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b77c319abfd5219629c45c34c89ba945ed3c5e49fcde9d16b6c3885f118a730" +dependencies = [ + "const-oid", + "der 0.7.9", + "spki 0.7.3", + "x509-cert", +] + +[[package]] +name = "color-eyre" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55146f5e46f237f7423d74111267d4597b59b0dad0ffaf7303bce9945d843ad5" +dependencies = [ + "backtrace", + "color-spantrace", + "eyre", + "indenter", + "once_cell", + "owo-colors", + "tracing-error", +] + +[[package]] +name = "color-spantrace" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd6be1b2a7e382e2b98b43b2adcca6bb0e465af0bdd38123873ae61eb17a72c2" +dependencies = [ + "once_cell", + "owo-colors", + "tracing-core", + "tracing-error", +] + [[package]] name = "colorchoice" version = "1.0.3" @@ -3352,6 +4795,20 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "combine" +version = "4.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +dependencies = [ + "bytes", + "futures-core", + "memchr", + "pin-project-lite", + "tokio", + "tokio-util", +] + [[package]] name = "concurrent-queue" version = "2.5.0" @@ -3382,9 +4839,9 @@ checksum = "32b13ea120a812beba79e34316b3942a857c86ec1593cb34f27bb28272ce2cca" [[package]] name = "const-hex" -version = "1.13.1" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0121754e84117e65f9d90648ee6aa4882a6e63110307ab73967a4c5e7e69e586" +checksum = "4b0485bab839b018a8f1723fc5391819fea5f8f0f32288ef8a735fd096b6160c" dependencies = [ "cfg-if", "cpufeatures", @@ -3440,6 +4897,12 @@ dependencies = [ "unicode-segmentation", ] +[[package]] +name = "cookie-factory" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9885fa71e26b8ab7855e2ec7cae6e9b380edff76cd052e07c683a0319d51b3a2" + [[package]] name = "core-foundation" version = "0.9.4" @@ -3450,6 +4913,16 @@ dependencies = [ "libc", ] +[[package]] +name = "core-foundation" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b55271e5c8c478ad3f38ad24ef34923091e0548492a266d19b3c0b4d82574c63" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "core-foundation-sys" version = "0.8.7" @@ -3465,6 +4938,21 @@ dependencies = [ "libc", ] +[[package]] +name = "crc16" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "338089f42c427b86394a5ee60ff321da23a5c89c9d89514c829687b26359fcff" + +[[package]] +name = "crc32c" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a47af21622d091a8f0fb295b88bc886ac74efcc613efc19f5d0b21de5c89e47" +dependencies = [ + "rustc_version 0.4.1", +] + [[package]] name = "crc32fast" version = "1.4.2" @@ -3505,6 +4993,18 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" +[[package]] +name = "crypto-bigint" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef2b4b23cddf68b89b8f8069890e8c270d54e2d5fe1b143820234805e4cb17ef" +dependencies = [ + "generic-array", + "rand_core", + "subtle", + "zeroize", +] + [[package]] name = "crypto-bigint" version = "0.5.5" @@ -3518,22 +5018,74 @@ dependencies = [ ] [[package]] -name = "crypto-common" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +name = "crypto-common" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +dependencies = [ + "generic-array", + "typenum", +] + +[[package]] +name = "ctr" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" +dependencies = [ + "cipher", +] + +[[package]] +name = "curl" +version = "0.4.47" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9fb4d13a1be2b58f14d60adba57c9834b78c62fd86c3e76a148f732686e9265" +dependencies = [ + "curl-sys", + "libc", + "openssl-probe", + "openssl-sys", + "schannel", + "socket2 0.5.7", + "windows-sys 0.52.0", +] + +[[package]] +name = "curl-sys" +version = "0.4.78+curl-8.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8eec768341c5c7789611ae51cf6c459099f22e64a5d5d0ce4892434e33821eaf" +dependencies = [ + "cc", + "libc", + "libnghttp2-sys", + "libz-sys", + "openssl-sys", + "pkg-config", + "vcpkg", + "windows-sys 0.52.0", +] + +[[package]] +name = "da-client-interface" +version = "0.7.0" dependencies = [ - "generic-array", - "typenum", + "async-trait", + "axum 0.7.7", + "color-eyre", + "mockall", + "starknet", ] [[package]] -name = "ctr" -version = "0.9.2" +name = "darling" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" +checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" dependencies = [ - "cipher", + "darling_core 0.13.4", + "darling_macro 0.13.4", ] [[package]] @@ -3556,6 +5108,20 @@ dependencies = [ "darling_macro 0.20.10", ] +[[package]] +name = "darling_core" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim 0.10.0", + "syn 1.0.109", +] + [[package]] name = "darling_core" version = "0.14.4" @@ -3584,6 +5150,17 @@ dependencies = [ "syn 2.0.89", ] +[[package]] +name = "darling_macro" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" +dependencies = [ + "darling_core 0.13.4", + "quote", + "syn 1.0.109", +] + [[package]] name = "darling_macro" version = "0.14.4" @@ -3606,6 +5183,19 @@ dependencies = [ "syn 2.0.89", ] +[[package]] +name = "dashmap" +version = "5.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" +dependencies = [ + "cfg-if", + "hashbrown 0.14.5", + "lock_api", + "once_cell", + "parking_lot_core 0.9.10", +] + [[package]] name = "dashmap" version = "6.1.0" @@ -3626,6 +5216,16 @@ version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" +[[package]] +name = "der" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de" +dependencies = [ + "const-oid", + "zeroize", +] + [[package]] name = "der" version = "0.7.9" @@ -3633,9 +5233,37 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0" dependencies = [ "const-oid", + "der_derive", + "flagset", + "pem-rfc7468", "zeroize", ] +[[package]] +name = "der-parser" +version = "9.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cd0a5c643689626bec213c4d8bd4d96acc8ffdb4ad4bb6bc16abf27d5f4b553" +dependencies = [ + "asn1-rs", + "displaydoc", + "nom", + "num-bigint", + "num-traits 0.2.19", + "rusticata-macros", +] + +[[package]] +name = "der_derive" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8034092389675178f570469e6c3b0465d3d30b4505c294a6550db47f3c17ad18" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", +] + [[package]] name = "deranged" version = "0.3.11" @@ -3691,6 +5319,21 @@ dependencies = [ "unicode-xid", ] +[[package]] +name = "des" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffdd80ce8ce993de27e9f063a444a4d53ce8e8db4c1f00cc03af5ad5a9867a1e" +dependencies = [ + "cipher", +] + +[[package]] +name = "deunicode" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "339544cc9e2c4dc3fc7149fd630c5f22263a4fdf18a98afd0075784968b5cf00" + [[package]] name = "diff" version = "0.1.13" @@ -3727,6 +5370,15 @@ dependencies = [ "subtle", ] +[[package]] +name = "dirs" +version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" +dependencies = [ + "dirs-sys", +] + [[package]] name = "dirs-next" version = "2.0.0" @@ -3737,6 +5389,18 @@ dependencies = [ "dirs-sys-next", ] +[[package]] +name = "dirs-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" +dependencies = [ + "libc", + "option-ext", + "redox_users", + "windows-sys 0.48.0", +] + [[package]] name = "dirs-sys-next" version = "0.1.2" @@ -3748,18 +5412,59 @@ dependencies = [ "winapi", ] +[[package]] +name = "displaydoc" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", +] + +[[package]] +name = "doc-comment" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" + +[[package]] +name = "doctest-file" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aac81fa3e28d21450aa4d2ac065992ba96a1d7303efbce51a95f4fd175b67562" + [[package]] name = "dotenv" version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f" +[[package]] +name = "dotenvy" +version = "0.15.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b" + [[package]] name = "downcast" version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1435fa1053d8b2fbbe9be7e97eca7f33d37b28409959813daefc1446a14247f1" +[[package]] +name = "dummy" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1cac124e13ae9aa56acc4241f8c8207501d93afdd8d8e62f0c1f2e12f6508c65" +dependencies = [ + "darling 0.20.10", + "proc-macro2", + "quote", + "syn 2.0.89", +] + [[package]] name = "dunce" version = "1.0.5" @@ -3772,18 +5477,30 @@ version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" +[[package]] +name = "ecdsa" +version = "0.14.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c" +dependencies = [ + "der 0.6.1", + "elliptic-curve 0.12.3", + "rfc6979 0.3.1", + "signature 1.6.4", +] + [[package]] name = "ecdsa" version = "0.16.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" dependencies = [ - "der", + "der 0.7.9", "digest 0.10.7", - "elliptic-curve", - "rfc6979", - "signature", - "spki", + "elliptic-curve 0.13.8", + "rfc6979 0.4.0", + "signature 2.2.0", + "spki 0.7.3", ] [[package]] @@ -3792,21 +5509,41 @@ version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" +[[package]] +name = "elliptic-curve" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3" +dependencies = [ + "base16ct 0.1.1", + "crypto-bigint 0.4.9", + "der 0.6.1", + "digest 0.10.7", + "ff 0.12.1", + "generic-array", + "group 0.12.1", + "pkcs8 0.9.0", + "rand_core", + "sec1 0.3.0", + "subtle", + "zeroize", +] + [[package]] name = "elliptic-curve" version = "0.13.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" dependencies = [ - "base16ct", - "crypto-bigint", + "base16ct 0.2.0", + "crypto-bigint 0.5.5", "digest 0.10.7", - "ff", + "ff 0.13.0", "generic-array", - "group", - "pkcs8", + "group 0.13.0", + "pkcs8 0.10.2", "rand_core", - "sec1", + "sec1 0.7.3", "subtle", "zeroize", ] @@ -3835,6 +5572,28 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "enum-as-inner" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21cdad81446a7f7dc43f6a77409efeb9733d2fa65553efef6018ef257c959b73" +dependencies = [ + "heck 0.4.1", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "env_filter" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "186e05a59d4c50738528153b83b0b0194d3a29507dfec16eccd4b342903397d0" +dependencies = [ + "log", + "regex", +] + [[package]] name = "env_logger" version = "0.9.3" @@ -3848,6 +5607,19 @@ dependencies = [ "termcolor", ] +[[package]] +name = "env_logger" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcaee3d8e3cfc3fd92428d477bc97fc29ec8716d180c0d74c643bb26166660e0" +dependencies = [ + "anstream", + "anstyle", + "env_filter", + "humantime", + "log", +] + [[package]] name = "equivalent" version = "1.0.1" @@ -3875,15 +5647,15 @@ dependencies = [ "digest 0.10.7", "hex", "hmac", - "pbkdf2", + "pbkdf2 0.11.0", "rand", - "scrypt", + "scrypt 0.10.0", "serde", "serde_json", "sha2", "sha3", "thiserror 1.0.65", - "uuid", + "uuid 0.8.2", ] [[package]] @@ -3899,6 +5671,72 @@ dependencies = [ "tiny-keccak", ] +[[package]] +name = "ethereum-da-client" +version = "0.7.0" +dependencies = [ + "alloy 0.1.0", + "async-trait", + "c-kzg", + "color-eyre", + "da-client-interface", + "dotenvy", + "mockall", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry_sdk", + "reqwest 0.12.8", + "rstest 0.18.2", + "serde", + "starknet", + "tokio", + "tokio-test", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "utils", +] + +[[package]] +name = "ethereum-settlement-client" +version = "0.7.0" +dependencies = [ + "alloy 0.8.3", + "alloy-primitives 0.8.18", + "async-trait", + "bytes", + "c-kzg", + "cairo-vm", + "color-eyre", + "dotenvy", + "lazy_static", + "log", + "mockall", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry_sdk", + "reqwest 0.12.8", + "rstest 0.18.2", + "serde", + "settlement-client-interface", + "starknet-os", + "thiserror 2.0.3", + "tokio", + "tokio-test", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "utils", +] + [[package]] name = "ethereum-types" version = "0.14.1" @@ -3934,10 +5772,50 @@ dependencies = [ name = "event-listener-strategy" version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1" +checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1" +dependencies = [ + "event-listener 5.3.1", + "pin-project-lite", +] + +[[package]] +name = "executor-trait" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13c39dff9342e4e0e16ce96be751eb21a94e94a87bb2f6e63ad1961c2ce109bf" +dependencies = [ + "async-trait", +] + +[[package]] +name = "eyre" +version = "0.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" +dependencies = [ + "indenter", + "once_cell", +] + +[[package]] +name = "fake" +version = "2.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d391ba4af7f1d93f01fcf7b2f29e2bc9348e109dfdbf4dcbdc51dfa38dab0b6" +dependencies = [ + "deunicode", + "dummy", + "rand", + "serde_json", +] + +[[package]] +name = "fastrand" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" dependencies = [ - "event-listener 5.3.1", - "pin-project-lite", + "instant", ] [[package]] @@ -3967,6 +5845,16 @@ dependencies = [ "thiserror 1.0.65", ] +[[package]] +name = "ff" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160" +dependencies = [ + "rand_core", + "subtle", +] + [[package]] name = "ff" version = "0.13.0" @@ -3995,6 +5883,12 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" +[[package]] +name = "flagset" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3ea1ec5f8307826a5b71094dd91fc04d4ae75d5709b20ad351c7fb4815c86ec" + [[package]] name = "flate2" version = "1.0.34" @@ -4002,7 +5896,19 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0" dependencies = [ "crc32fast", - "miniz_oxide", + "libz-sys", + "miniz_oxide 0.8.0", +] + +[[package]] +name = "flume" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da0e4dd2a88388a1f4ccc7c9ce104604dab68d9f408dc34cd45823d5a9069095" +dependencies = [ + "futures-core", + "futures-sink", + "spin", ] [[package]] @@ -4013,9 +5919,9 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "foldhash" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f81ec6369c545a7d40e4589b5597581fa1c441fe1cce96dd1de43159910a36a2" +checksum = "a0d2fde1f7b3d48b8395d5f2de76c18a528bd6a9cdde438df747bfcba3e05d6f" [[package]] name = "foreign-types" @@ -4102,13 +6008,28 @@ version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" +[[package]] +name = "futures-lite" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" +dependencies = [ + "fastrand 1.9.0", + "futures-core", + "futures-io", + "memchr", + "parking", + "pin-project-lite", + "waker-fn", +] + [[package]] name = "futures-lite" version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5" dependencies = [ - "fastrand", + "fastrand 2.1.1", "futures-core", "futures-io", "parking", @@ -4145,7 +6066,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" dependencies = [ "gloo-timers 0.2.6", - "send_wrapper", + "send_wrapper 0.4.0", ] [[package]] @@ -4220,9 +6141,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.31.1" +version = "0.28.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" +checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" [[package]] name = "glob" @@ -4311,13 +6232,143 @@ dependencies = [ "minilp", ] +[[package]] +name = "google-cloud-auth" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bf7cb7864f08a92e77c26bb230d021ea57691788fb5dd51793f96965d19e7f9" +dependencies = [ + "async-trait", + "base64 0.21.7", + "google-cloud-metadata", + "google-cloud-token", + "home", + "jsonwebtoken", + "reqwest 0.11.27", + "serde", + "serde_json", + "thiserror 1.0.65", + "time", + "tokio", + "tracing", + "urlencoding", +] + +[[package]] +name = "google-cloud-gax" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8cb60314136e37de9e2a05ddb427b9c5a39c3d188de2e2f026c6af74425eef44" +dependencies = [ + "google-cloud-token", + "http 0.2.12", + "thiserror 1.0.65", + "tokio", + "tokio-retry", + "tonic 0.10.2", + "tower 0.4.13", + "tracing", +] + +[[package]] +name = "google-cloud-googleapis" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db8a478015d079296167e3f08e096dc99cffc2cb50fa203dd38aaa9dd37f8354" +dependencies = [ + "prost 0.12.6", + "prost-types", + "tonic 0.10.2", +] + +[[package]] +name = "google-cloud-metadata" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc279bfb50487d7bcd900e8688406475fc750fe474a835b2ab9ade9eb1fc90e2" +dependencies = [ + "reqwest 0.11.27", + "thiserror 1.0.65", + "tokio", +] + +[[package]] +name = "google-cloud-pubsub" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1da196da473976944d408a91213bafe078e7223e10694d3f8ed36b6e210fa130" +dependencies = [ + "async-channel 1.9.0", + "async-stream", + "google-cloud-auth", + "google-cloud-gax", + "google-cloud-googleapis", + "google-cloud-token", + "prost-types", + "thiserror 1.0.65", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "google-cloud-token" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f49c12ba8b21d128a2ce8585955246977fbce4415f680ebf9199b6f9d6d725f" +dependencies = [ + "async-trait", +] + +[[package]] +name = "gps-fact-checker" +version = "0.7.0" +dependencies = [ + "alloy 0.8.3", + "async-trait", + "aws-config", + "aws-sdk-s3", + "bincode 1.3.3", + "cairo-vm", + "dotenvy", + "itertools 0.13.0", + "log", + "num-bigint", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry_sdk", + "serde", + "starknet", + "thiserror 2.0.3", + "tokio", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "utils", +] + +[[package]] +name = "group" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7" +dependencies = [ + "ff 0.12.1", + "rand_core", + "subtle", +] + [[package]] name = "group" version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ - "ff", + "ff 0.13.0", "rand_core", "subtle", ] @@ -4372,7 +6423,7 @@ version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" dependencies = [ - "ahash", + "ahash 0.8.11", ] [[package]] @@ -4381,7 +6432,7 @@ version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" dependencies = [ - "ahash", + "ahash 0.8.11", "allocator-api2", "rayon", "serde", @@ -4465,6 +6516,26 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "home" +version = "0.5.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" +dependencies = [ + "windows-sys 0.59.0", +] + +[[package]] +name = "hostname" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" +dependencies = [ + "libc", + "match_cfg", + "winapi", +] + [[package]] name = "http" version = "0.2.12" @@ -4555,6 +6626,7 @@ dependencies = [ "form_urlencoded", "futures-util", "hyper 0.14.31", + "isahc", "lazy_static", "levenshtein", "log", @@ -4590,7 +6662,7 @@ dependencies = [ "httpdate", "itoa", "pin-project-lite", - "socket2", + "socket2 0.5.7", "tokio", "tower-service", "tracing", @@ -4645,10 +6717,24 @@ dependencies = [ "hyper 1.5.0", "hyper-util", "rustls 0.23.16", + "rustls-native-certs 0.8.1", "rustls-pki-types", "tokio", "tokio-rustls 0.26.0", "tower-service", + "webpki-roots 0.26.6", +] + +[[package]] +name = "hyper-timeout" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" +dependencies = [ + "hyper 0.14.31", + "pin-project-lite", + "tokio", + "tokio-io-timeout", ] [[package]] @@ -4664,6 +6750,19 @@ dependencies = [ "tower-service", ] +[[package]] +name = "hyper-tls" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" +dependencies = [ + "bytes", + "hyper 0.14.31", + "native-tls", + "tokio", + "tokio-native-tls", +] + [[package]] name = "hyper-tls" version = "0.6.0" @@ -4693,7 +6792,7 @@ dependencies = [ "http-body 1.0.1", "hyper 1.5.0", "pin-project-lite", - "socket2", + "socket2 0.5.7", "tokio", "tower-service", "tracing", @@ -4734,6 +6833,17 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" +[[package]] +name = "idna" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8" +dependencies = [ + "matches", + "unicode-bidi", + "unicode-normalization", +] + [[package]] name = "idna" version = "0.5.0" @@ -4804,6 +6914,12 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9f1a0777d972970f204fdf8ef319f1f4f8459131636d7e3c96c5d59570d0fa6" +[[package]] +name = "indenter" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" + [[package]] name = "indexmap" version = "1.9.3" @@ -4844,6 +6960,7 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" dependencies = [ + "block-padding", "generic-array", ] @@ -4856,6 +6973,44 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "interprocess" +version = "2.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "894148491d817cb36b6f778017b8ac46b17408d522dd90f539d677ea938362eb" +dependencies = [ + "doctest-file", + "futures-core", + "libc", + "recvmsg", + "tokio", + "widestring", + "windows-sys 0.52.0", +] + +[[package]] +name = "io-lifetimes" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" +dependencies = [ + "hermit-abi 0.3.9", + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "ipconfig" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f" +dependencies = [ + "socket2 0.5.7", + "widestring", + "windows-sys 0.48.0", + "winreg", +] + [[package]] name = "ipnet" version = "2.10.1" @@ -4879,6 +7034,33 @@ version = "1.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" +[[package]] +name = "isahc" +version = "1.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "334e04b4d781f436dc315cb1e7515bd96826426345d498149e4bde36b67f8ee9" +dependencies = [ + "async-channel 1.9.0", + "castaway", + "crossbeam-utils", + "curl", + "curl-sys", + "encoding_rs", + "event-listener 2.5.3", + "futures-lite 1.13.0", + "http 0.2.12", + "log", + "mime", + "once_cell", + "polling 2.8.0", + "slab", + "sluice", + "tracing", + "tracing-futures", + "url", + "waker-fn", +] + [[package]] name = "itertools" version = "0.10.5" @@ -4932,9 +7114,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.72" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" +checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" dependencies = [ "wasm-bindgen", ] @@ -5101,6 +7283,21 @@ dependencies = [ "url", ] +[[package]] +name = "jsonwebtoken" +version = "9.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9ae10193d25051e74945f1ea2d0b42e03cc3b890f7e4cc5faa44997d808193f" +dependencies = [ + "base64 0.21.7", + "js-sys", + "pem", + "ring", + "serde", + "serde_json", + "simple_asn1", +] + [[package]] name = "k256" version = "0.13.4" @@ -5108,10 +7305,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" dependencies = [ "cfg-if", - "ecdsa", - "elliptic-curve", + "ecdsa 0.16.9", + "elliptic-curve 0.13.8", "once_cell", "sha2", + "signature 2.2.0", ] [[package]] @@ -5226,6 +7424,28 @@ dependencies = [ "serde_json", ] +[[package]] +name = "lapin" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "209b09a06f4bd4952a0fd0594f90d53cf4496b062f59acc838a2823e1bb7d95c" +dependencies = [ + "amq-protocol", + "async-global-executor-trait", + "async-reactor-trait", + "async-trait", + "executor-trait", + "flume", + "futures-core", + "futures-io", + "parking_lot 0.12.3", + "pinky-swear", + "reactor-trait", + "serde", + "tracing", + "waker-fn", +] + [[package]] name = "lazy_static" version = "1.5.0" @@ -5269,6 +7489,16 @@ version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a00419de735aac21d53b0de5ce2c03bd3627277cf471300f27ebc89f7d828047" +[[package]] +name = "libnghttp2-sys" +version = "0.1.11+1.64.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b6c24e48a7167cffa7119da39d577fa482e66c688a4aac016bee862e1a713c4" +dependencies = [ + "cc", + "libc", +] + [[package]] name = "libredox" version = "0.1.3" @@ -5301,10 +7531,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2d16453e800a8cf6dd2fc3eb4bc99b786a9b90c663b8559a5b1a041bf89e472" dependencies = [ "cc", + "libc", "pkg-config", "vcpkg", ] +[[package]] +name = "linked-hash-map" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" + +[[package]] +name = "linux-raw-sys" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" + [[package]] name = "linux-raw-sys" version = "0.4.14" @@ -5339,6 +7582,15 @@ dependencies = [ "hashbrown 0.15.0", ] +[[package]] +name = "lru-cache" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c" +dependencies = [ + "linked-hash-map", +] + [[package]] name = "lz4-sys" version = "1.11.1+lz4-1.10.0" @@ -5368,7 +7620,7 @@ dependencies = [ name = "madara" version = "0.7.0" dependencies = [ - "alloy", + "alloy 0.8.3", "anyhow", "async-trait", "blockifier", @@ -5418,6 +7670,51 @@ dependencies = [ "url", ] +[[package]] +name = "majin-blob-core" +version = "0.1.3" +source = "git+https://github.com/AbdelStark/majin-blob?branch=main#ac23e1584a81ee144fdc7d6912bcc5f1bf6f8818" +dependencies = [ + "lazy_static", + "majin-blob-eip-4844", + "majin-blob-types", + "num-bigint", + "num-traits 0.2.19", + "serde", + "serde_json", +] + +[[package]] +name = "majin-blob-eip-4844" +version = "0.1.3" +source = "git+https://github.com/AbdelStark/majin-blob?branch=main#ac23e1584a81ee144fdc7d6912bcc5f1bf6f8818" +dependencies = [ + "lazy_static", + "num-bigint", + "num-traits 0.2.19", + "serde", + "serde_json", +] + +[[package]] +name = "majin-blob-types" +version = "0.1.3" +source = "git+https://github.com/AbdelStark/majin-blob?branch=main#ac23e1584a81ee144fdc7d6912bcc5f1bf6f8818" +dependencies = [ + "majin-blob-eip-4844", + "num-bigint", + "num-traits 0.2.19", + "rstest 0.19.0", + "serde", + "serde_json", +] + +[[package]] +name = "match_cfg" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" + [[package]] name = "matchers" version = "0.1.0" @@ -5427,6 +7724,12 @@ dependencies = [ "regex-automata 0.1.10", ] +[[package]] +name = "matches" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" + [[package]] name = "matchit" version = "0.7.3" @@ -5653,9 +7956,9 @@ dependencies = [ name = "mc-eth" version = "0.7.0" dependencies = [ - "alloy", + "alloy 0.8.3", "anyhow", - "bigdecimal", + "bigdecimal 0.4.5", "bitvec", "dotenv", "futures", @@ -5735,7 +8038,7 @@ dependencies = [ "http 1.1.0", "http-body-util", "hyper 1.5.0", - "hyper-tls", + "hyper-tls 0.6.0", "hyper-util", "mp-block", "mp-class", @@ -5921,18 +8224,60 @@ dependencies = [ "tracing", ] +[[package]] +name = "md-5" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" +dependencies = [ + "cfg-if", + "digest 0.10.7", +] + [[package]] name = "memchr" version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +[[package]] +name = "metrics" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b9b8653cec6897f73b519a43fba5ee3d50f62fe9af80b428accdcc093b4a849" +dependencies = [ + "ahash 0.7.8", + "metrics-macros", + "portable-atomic 0.3.20", +] + +[[package]] +name = "metrics-macros" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "731f8ecebd9f3a4aa847dfe75455e4757a45da40a7793d2f0b1f9b6ed18b23f3" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "mime" version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" +[[package]] +name = "mime_guess" +version = "2.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e" +dependencies = [ + "mime", + "unicase", +] + [[package]] name = "minilp" version = "0.2.2" @@ -5949,6 +8294,15 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" +[[package]] +name = "miniz_oxide" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" +dependencies = [ + "adler", +] + [[package]] name = "miniz_oxide" version = "0.8.0" @@ -5995,6 +8349,65 @@ dependencies = [ "syn 2.0.89", ] +[[package]] +name = "mockall_double" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1ca96e5ac35256ae3e13536edd39b172b88f41615e1d7b653c8ad24524113e8" +dependencies = [ + "cfg-if", + "proc-macro2", + "quote", + "syn 2.0.89", +] + +[[package]] +name = "mongodb" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef206acb1b72389b49bc9985efe7eb1f8a9bb18e5680d262fac26c07f44025f1" +dependencies = [ + "async-trait", + "base64 0.13.1", + "bitflags 1.3.2", + "bson", + "chrono", + "derivative", + "derive_more 0.99.18", + "futures-core", + "futures-executor", + "futures-io", + "futures-util", + "hex", + "hmac", + "lazy_static", + "md-5", + "pbkdf2 0.11.0", + "percent-encoding", + "rand", + "rustc_version_runtime", + "rustls 0.21.12", + "rustls-pemfile 1.0.4", + "serde", + "serde_bytes", + "serde_with 1.14.0", + "sha-1 0.10.1", + "sha2", + "socket2 0.4.10", + "stringprep", + "strsim 0.10.0", + "take_mut", + "thiserror 1.0.65", + "tokio", + "tokio-rustls 0.24.1", + "tokio-util", + "trust-dns-proto", + "trust-dns-resolver", + "typed-builder", + "uuid 1.12.0", + "webpki-roots 0.25.4", +] + [[package]] name = "mp-block" version = "0.7.0" @@ -6077,7 +8490,7 @@ dependencies = [ "primitive-types", "serde", "serde_json", - "serde_with", + "serde_with 3.11.0", "starknet-core", "starknet-types-core 0.1.7 (git+https://github.com/kasarlabs/types-rs.git?branch=feat-deserialize-v0.1.7)", "starknet_api", @@ -6103,7 +8516,7 @@ dependencies = [ "primitive-types", "serde", "serde_json", - "serde_with", + "serde_with 3.11.0", "sha3", "starknet-core", "starknet-types-core 0.1.7 (git+https://github.com/kasarlabs/types-rs.git?branch=feat-deserialize-v0.1.7)", @@ -6169,7 +8582,7 @@ dependencies = [ "num-bigint", "serde", "serde_json", - "serde_with", + "serde_with 3.11.0", "starknet-core", "starknet-types-core 0.1.7 (git+https://github.com/kasarlabs/types-rs.git?branch=feat-deserialize-v0.1.7)", "starknet-types-rpc", @@ -6184,7 +8597,7 @@ version = "0.7.0" dependencies = [ "anyhow", "async-trait", - "crypto-bigint", + "crypto-bigint 0.5.5", "futures", "num-traits 0.2.19", "opentelemetry", @@ -6223,7 +8636,7 @@ dependencies = [ "openssl-probe", "openssl-sys", "schannel", - "security-framework", + "security-framework 2.11.1", "security-framework-sys", "tempfile", ] @@ -6235,7 +8648,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ac06db03ec2f46ee0ecdca1a1c34a99c0d188a0d83439b84bf0cb4b386e4ab09" dependencies = [ "matrixmultiply", - "num-complex", + "num-complex 0.2.4", "num-integer", "num-traits 0.2.19", "rawpointer", @@ -6276,6 +8689,20 @@ dependencies = [ "winapi", ] +[[package]] +name = "num" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" +dependencies = [ + "num-bigint", + "num-complex 0.4.6", + "num-integer", + "num-iter", + "num-rational", + "num-traits 0.2.19", +] + [[package]] name = "num-bigint" version = "0.4.6" @@ -6298,6 +8725,15 @@ dependencies = [ "num-traits 0.2.19", ] +[[package]] +name = "num-complex" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" +dependencies = [ + "num-traits 0.2.19", +] + [[package]] name = "num-conv" version = "0.1.0" @@ -6313,6 +8749,17 @@ dependencies = [ "num-traits 0.2.19", ] +[[package]] +name = "num-iter" +version = "0.1.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" +dependencies = [ + "autocfg", + "num-integer", + "num-traits 0.2.19", +] + [[package]] name = "num-modular" version = "0.5.1" @@ -6410,15 +8857,61 @@ dependencies = [ "libc", ] +[[package]] +name = "nybbles" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8983bb634df7248924ee0c4c3a749609b5abcb082c28fffe3254b3eb3602b307" +dependencies = [ + "alloy-rlp", + "const-hex", + "proptest", + "serde", + "smallvec", +] + [[package]] name = "object" -version = "0.36.5" +version = "0.32.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aedf0a2d09c573ed1d8d85b30c119153926a2b36dce0ab28322c09a117a4683e" +checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" dependencies = [ "memchr", ] +[[package]] +name = "oid-registry" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8d8034d9489cdaf79228eb9f6a3b8d7bb32ba00d6645ebd48eef4077ceb5bd9" +dependencies = [ + "asn1-rs", +] + +[[package]] +name = "omniqueue" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cba3b7f69e420be6e32a580307e38aef7f53ac01cc09c3bb6851aec37d710894" +dependencies = [ + "async-trait", + "aws-config", + "aws-sdk-sqs", + "bb8", + "bb8-redis", + "futures-util", + "google-cloud-googleapis", + "google-cloud-pubsub", + "lapin", + "redis", + "serde", + "serde_json", + "svix-ksuid", + "thiserror 1.0.65", + "tokio", + "tracing", +] + [[package]] name = "once_cell" version = "1.20.2" @@ -6519,10 +9012,10 @@ dependencies = [ "opentelemetry", "opentelemetry-proto", "opentelemetry_sdk", - "prost", + "prost 0.13.3", "thiserror 1.0.65", "tokio", - "tonic", + "tonic 0.12.3", ] [[package]] @@ -6533,8 +9026,8 @@ checksum = "2c43620e8f93359eb7e627a3b16ee92d8585774986f24f2ab010817426c5ce61" dependencies = [ "opentelemetry", "opentelemetry_sdk", - "prost", - "tonic", + "prost 0.13.3", + "tonic 0.12.3", ] [[package]] @@ -6581,6 +9074,90 @@ dependencies = [ "tokio-stream", ] +[[package]] +name = "option-ext" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" + +[[package]] +name = "orchestrator" +version = "0.7.0" +dependencies = [ + "alloy 0.8.3", + "assert_matches", + "async-std", + "async-trait", + "atlantic-service", + "aws-config", + "aws-credential-types", + "aws-sdk-eventbridge", + "aws-sdk-iam", + "aws-sdk-s3", + "aws-sdk-scheduler", + "aws-sdk-sns", + "aws-sdk-sqs", + "axum 0.7.7", + "axum-macros", + "bincode 1.3.3", + "bytes", + "c-kzg", + "cairo-vm", + "chrono", + "clap", + "color-eyre", + "da-client-interface", + "dotenvy", + "ethereum-da-client", + "ethereum-settlement-client", + "futures", + "hex", + "httpmock", + "hyper 1.5.0", + "itertools 0.13.0", + "lazy_static", + "log", + "majin-blob-core", + "majin-blob-types", + "mockall", + "mockall_double", + "mongodb", + "num", + "num-bigint", + "num-traits 0.2.19", + "omniqueue", + "once_cell", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry-stdout", + "opentelemetry_sdk", + "prove_block", + "prover-client-interface", + "rstest 0.18.2", + "serde", + "serde_json", + "settlement-client-interface", + "sharp-service", + "starknet", + "starknet-core", + "starknet-os", + "starknet-settlement-client", + "strum 0.26.3", + "strum_macros 0.26.4", + "tempfile", + "thiserror 2.0.3", + "tokio", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "utils", + "uuid 1.12.0", +] + [[package]] name = "ordered-float" version = "4.4.0" @@ -6590,12 +9167,57 @@ dependencies = [ "num-traits 0.2.19", ] +[[package]] +name = "outref" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4030760ffd992bef45b0ae3f10ce1aba99e33464c90d14dd7c039884963ddc7a" + [[package]] name = "overload" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" +[[package]] +name = "owo-colors" +version = "3.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1b04fb49957986fdce4d6ee7a65027d55d4b6d2265e5848bbb507b58ccfdb6f" + +[[package]] +name = "p12-keystore" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df7b60d0b2dcace322e6e8c4499c4c8bdf331c1bae046a54be5e4191c3610286" +dependencies = [ + "cbc", + "cms", + "der 0.7.9", + "des", + "hex", + "hmac", + "pkcs12", + "pkcs5", + "rand", + "rc2", + "sha1", + "sha2", + "thiserror 1.0.65", + "x509-parser", +] + +[[package]] +name = "p256" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51f44edd08f51e2ade572f141051021c5af22677e42b7dd28a88155151c33594" +dependencies = [ + "ecdsa 0.14.8", + "elliptic-curve 0.12.3", + "sha2", +] + [[package]] name = "parity-scale-codec" version = "3.6.12" @@ -6705,6 +9327,56 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "17359afc20d7ab31fdb42bb844c8b3bb1dabd7dcf7e68428492da7f16966fcef" +[[package]] +name = "pathfinder-common" +version = "0.14.3" +source = "git+https://github.com/Moonsong-Labs/pathfinder?rev=9c19d9a37be8f447ec4548456c440ccbd0e44260#9c19d9a37be8f447ec4548456c440ccbd0e44260" +dependencies = [ + "anyhow", + "bitvec", + "fake", + "metrics", + "num-bigint", + "paste", + "pathfinder-crypto", + "primitive-types", + "rand", + "serde", + "serde_json", + "serde_with 3.11.0", + "sha3", + "tagged", + "tagged-debug-derive", + "thiserror 1.0.65", + "vergen", +] + +[[package]] +name = "pathfinder-crypto" +version = "0.14.3" +source = "git+https://github.com/Moonsong-Labs/pathfinder?rev=9c19d9a37be8f447ec4548456c440ccbd0e44260#9c19d9a37be8f447ec4548456c440ccbd0e44260" +dependencies = [ + "bitvec", + "fake", + "rand", + "serde", +] + +[[package]] +name = "pathfinder-serde" +version = "0.14.3" +source = "git+https://github.com/Moonsong-Labs/pathfinder?rev=9c19d9a37be8f447ec4548456c440ccbd0e44260#9c19d9a37be8f447ec4548456c440ccbd0e44260" +dependencies = [ + "anyhow", + "num-bigint", + "pathfinder-common", + "pathfinder-crypto", + "primitive-types", + "serde", + "serde_json", + "serde_with 3.11.0", +] + [[package]] name = "pbkdf2" version = "0.11.0" @@ -6717,6 +9389,35 @@ dependencies = [ "sha2", ] +[[package]] +name = "pbkdf2" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" +dependencies = [ + "digest 0.10.7", + "hmac", +] + +[[package]] +name = "pem" +version = "3.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae" +dependencies = [ + "base64 0.22.1", + "serde", +] + +[[package]] +name = "pem-rfc7468" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" +dependencies = [ + "base64ct", +] + [[package]] name = "percent-encoding" version = "2.3.1" @@ -6744,6 +9445,16 @@ dependencies = [ "indexmap 2.6.0", ] +[[package]] +name = "pharos" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e9567389417feee6ce15dd6527a8a1ecac205ef62c2932bcf3d9f6fc5b78b414" +dependencies = [ + "futures", + "rustc_version 0.4.1", +] + [[package]] name = "phf" version = "0.11.2" @@ -6833,6 +9544,18 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" +[[package]] +name = "pinky-swear" +version = "6.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6cfae3ead413ca051a681152bd266438d3bfa301c9bdf836939a14c721bb2a21" +dependencies = [ + "doc-comment", + "flume", + "parking_lot 0.12.3", + "tracing", +] + [[package]] name = "piper" version = "0.2.4" @@ -6840,18 +9563,58 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96c8c490f422ef9a4efd2cb5b42b76c8613d7e7dfc1caf667b8a3350a5acc066" dependencies = [ "atomic-waker", - "fastrand", + "fastrand 2.1.1", "futures-io", ] +[[package]] +name = "pkcs12" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "695b3df3d3cc1015f12d70235e35b6b79befc5fa7a9b95b951eab1dd07c9efc2" +dependencies = [ + "cms", + "const-oid", + "der 0.7.9", + "digest 0.10.7", + "spki 0.7.3", + "x509-cert", + "zeroize", +] + +[[package]] +name = "pkcs5" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e847e2c91a18bfa887dd028ec33f2fe6f25db77db3619024764914affe8b69a6" +dependencies = [ + "aes", + "cbc", + "der 0.7.9", + "pbkdf2 0.12.2", + "scrypt 0.11.0", + "sha2", + "spki 0.7.3", +] + +[[package]] +name = "pkcs8" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba" +dependencies = [ + "der 0.6.1", + "spki 0.6.0", +] + [[package]] name = "pkcs8" version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" dependencies = [ - "der", - "spki", + "der 0.7.9", + "spki 0.7.3", ] [[package]] @@ -6860,6 +9623,22 @@ version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" +[[package]] +name = "polling" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" +dependencies = [ + "autocfg", + "bitflags 1.3.2", + "cfg-if", + "concurrent-queue", + "libc", + "log", + "pin-project-lite", + "windows-sys 0.48.0", +] + [[package]] name = "polling" version = "3.7.3" @@ -6870,11 +9649,26 @@ dependencies = [ "concurrent-queue", "hermit-abi 0.4.0", "pin-project-lite", - "rustix", + "rustix 0.38.38", "tracing", "windows-sys 0.59.0", ] +[[package]] +name = "portable-atomic" +version = "0.3.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e30165d31df606f5726b090ec7592c308a0eaf61721ff64c9a3018e344a8753e" +dependencies = [ + "portable-atomic 1.10.0", +] + +[[package]] +name = "portable-atomic" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" + [[package]] name = "powerfmt" version = "0.2.0" @@ -6954,6 +9748,30 @@ dependencies = [ "toml_edit", ] +[[package]] +name = "proc-macro-error" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +dependencies = [ + "proc-macro-error-attr", + "proc-macro2", + "quote", + "syn 1.0.109", + "version_check", +] + +[[package]] +name = "proc-macro-error-attr" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +dependencies = [ + "proc-macro2", + "quote", + "version_check", +] + [[package]] name = "proc-macro-error-attr2" version = "2.0.0" @@ -7025,6 +9843,16 @@ dependencies = [ "proptest", ] +[[package]] +name = "prost" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29" +dependencies = [ + "bytes", + "prost-derive 0.12.6", +] + [[package]] name = "prost" version = "0.13.3" @@ -7032,7 +9860,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7b0487d90e047de87f984913713b85c601c05609aad5b0df4b4573fbf69aa13f" dependencies = [ "bytes", - "prost-derive", + "prost-derive 0.13.3", +] + +[[package]] +name = "prost-derive" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" +dependencies = [ + "anyhow", + "itertools 0.12.1", + "proc-macro2", + "quote", + "syn 2.0.89", ] [[package]] @@ -7048,12 +9889,119 @@ dependencies = [ "syn 2.0.89", ] +[[package]] +name = "prost-types" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0" +dependencies = [ + "prost 0.12.6", +] + +[[package]] +name = "prove_block" +version = "0.1.0" +source = "git+https://github.com/keep-starknet-strange/snos?branch=madara-monorepo#58d1f11b59236f935a9c98191f46f650ed33d21a" +dependencies = [ + "anyhow", + "blockifier", + "cairo-lang-starknet-classes", + "cairo-lang-utils 2.8.4", + "cairo-vm", + "clap", + "env_logger 0.11.6", + "futures-core", + "log", + "num-bigint", + "pathfinder-common", + "pathfinder-crypto", + "pathfinder-serde", + "reqwest 0.11.27", + "rpc-client", + "rpc-replay", + "serde", + "serde_json", + "serde_with 3.11.0", + "starknet", + "starknet-os", + "starknet-os-types", + "starknet-types-core 0.1.7 (git+https://github.com/kasarlabs/types-rs.git?branch=feat-deserialize-v0.1.7)", + "starknet_api", + "thiserror 1.0.65", + "tokio", +] + +[[package]] +name = "prover-client-interface" +version = "0.7.0" +dependencies = [ + "async-trait", + "cairo-vm", + "gps-fact-checker", + "mockall", + "starknet-os", + "thiserror 2.0.3", + "utils", +] + [[package]] name = "quick-error" version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" +[[package]] +name = "quinn" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62e96808277ec6f97351a2380e6c25114bc9e67037775464979f3037c92d05ef" +dependencies = [ + "bytes", + "pin-project-lite", + "quinn-proto", + "quinn-udp", + "rustc-hash 2.1.0", + "rustls 0.23.16", + "socket2 0.5.7", + "thiserror 2.0.3", + "tokio", + "tracing", +] + +[[package]] +name = "quinn-proto" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2fe5ef3495d7d2e377ff17b1a8ce2ee2ec2a18cde8b6ad6619d65d0701c135d" +dependencies = [ + "bytes", + "getrandom", + "rand", + "ring", + "rustc-hash 2.1.0", + "rustls 0.23.16", + "rustls-pki-types", + "slab", + "thiserror 2.0.3", + "tinyvec", + "tracing", + "web-time", +] + +[[package]] +name = "quinn-udp" +version = "0.5.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c40286217b4ba3a71d644d752e6a0b71f13f1b6a2c5311acfcbe0c2418ed904" +dependencies = [ + "cfg_aliases", + "libc", + "once_cell", + "socket2 0.5.7", + "tracing", + "windows-sys 0.59.0", +] + [[package]] name = "quote" version = "1.0.37" @@ -7126,13 +10074,66 @@ dependencies = [ ] [[package]] -name = "rayon-core" -version = "1.12.1" +name = "rayon-core" +version = "1.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +dependencies = [ + "crossbeam-deque", + "crossbeam-utils", +] + +[[package]] +name = "rc2" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62c64daa8e9438b84aaae55010a93f396f8e60e3911590fcba770d04643fc1dd" +dependencies = [ + "cipher", +] + +[[package]] +name = "reactor-trait" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "438a4293e4d097556730f4711998189416232f009c137389e0f961d2bc0ddc58" +dependencies = [ + "async-trait", + "futures-core", + "futures-io", +] + +[[package]] +name = "recvmsg" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3edd4d5d42c92f0a659926464d4cce56b562761267ecf0f469d85b7de384175" + +[[package]] +name = "redis" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +checksum = "c580d9cbbe1d1b479e8d67cf9daf6a62c957e6846048408b80b43ac3f6af84cd" dependencies = [ - "crossbeam-deque", - "crossbeam-utils", + "async-trait", + "bytes", + "combine", + "crc16", + "futures", + "futures-util", + "itoa", + "log", + "native-tls", + "percent-encoding", + "pin-project-lite", + "rand", + "ryu", + "sha1_smol", + "socket2 0.4.10", + "tokio", + "tokio-native-tls", + "tokio-util", + "url", ] [[package]] @@ -7196,6 +10197,12 @@ dependencies = [ "regex-syntax 0.8.5", ] +[[package]] +name = "regex-lite" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53a49587ad06b26609c52e423de037e7f57f20d53535d66e08c695f347df952a" + [[package]] name = "regex-syntax" version = "0.6.29" @@ -7230,10 +10237,12 @@ dependencies = [ "http-body 0.4.6", "hyper 0.14.31", "hyper-rustls 0.24.2", + "hyper-tls 0.5.0", "ipnet", "js-sys", "log", "mime", + "native-tls", "once_cell", "percent-encoding", "pin-project-lite", @@ -7245,6 +10254,7 @@ dependencies = [ "sync_wrapper 0.1.2", "system-configuration 0.5.1", "tokio", + "tokio-native-tls", "tokio-rustls 0.24.1", "tower-service", "url", @@ -7273,17 +10283,22 @@ dependencies = [ "http-body-util", "hyper 1.5.0", "hyper-rustls 0.27.3", - "hyper-tls", + "hyper-tls 0.6.0", "hyper-util", "ipnet", "js-sys", "log", "mime", + "mime_guess", "native-tls", "once_cell", "percent-encoding", "pin-project-lite", + "quinn", + "rustls 0.23.16", + "rustls-native-certs 0.8.1", "rustls-pemfile 2.2.0", + "rustls-pki-types", "serde", "serde_json", "serde_urlencoded", @@ -7291,11 +10306,15 @@ dependencies = [ "system-configuration 0.6.1", "tokio", "tokio-native-tls", + "tokio-rustls 0.26.0", + "tokio-util", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", + "wasm-streams", "web-sys", + "webpki-roots 0.26.6", "windows-registry", ] @@ -7312,10 +10331,31 @@ dependencies = [ "tokio", "tokio-util", "tracing", - "tungstenite", + "tungstenite 0.21.0", "web-sys", ] +[[package]] +name = "resolv-conf" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00" +dependencies = [ + "hostname", + "quick-error", +] + +[[package]] +name = "rfc6979" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb" +dependencies = [ + "crypto-bigint 0.4.9", + "hmac", + "zeroize", +] + [[package]] name = "rfc6979" version = "0.4.0" @@ -7366,6 +10406,38 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "afab94fb28594581f62d981211a9a4d53cc8130bbcbbb89a0440d9b8e81a7746" +[[package]] +name = "rpc-client" +version = "0.1.0" +source = "git+https://github.com/keep-starknet-strange/snos?branch=madara-monorepo#58d1f11b59236f935a9c98191f46f650ed33d21a" +dependencies = [ + "log", + "reqwest 0.11.27", + "serde", + "serde_json", + "starknet", + "starknet-os", + "starknet-types-core 0.1.7 (git+https://github.com/kasarlabs/types-rs.git?branch=feat-deserialize-v0.1.7)", + "thiserror 1.0.65", +] + +[[package]] +name = "rpc-replay" +version = "0.1.0" +source = "git+https://github.com/keep-starknet-strange/snos?branch=madara-monorepo#58d1f11b59236f935a9c98191f46f650ed33d21a" +dependencies = [ + "blockifier", + "cairo-lang-starknet-classes", + "rpc-client", + "serde", + "serde_json", + "starknet", + "starknet-os-types", + "starknet_api", + "thiserror 1.0.65", + "tokio", +] + [[package]] name = "rstest" version = "0.17.0" @@ -7390,6 +10462,18 @@ dependencies = [ "rustc_version 0.4.1", ] +[[package]] +name = "rstest" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d5316d2a1479eeef1ea21e7f9ddc67c191d497abc8fc3ba2467857abbb68330" +dependencies = [ + "futures", + "futures-timer", + "rstest_macros 0.19.0", + "rustc_version 0.4.1", +] + [[package]] name = "rstest_macros" version = "0.17.0" @@ -7421,6 +10505,23 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "rstest_macros" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04a9df72cc1f67020b0d63ad9bfe4a323e459ea7eb68e03bd9824db49f9a4c25" +dependencies = [ + "cfg-if", + "glob", + "proc-macro2", + "quote", + "regex", + "relative-path", + "rustc_version 0.4.1", + "syn 2.0.89", + "unicode-ident", +] + [[package]] name = "ruint" version = "1.12.3" @@ -7504,9 +10605,9 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" [[package]] name = "rustc-hash" -version = "2.0.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152" +checksum = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497" [[package]] name = "rustc-hex" @@ -7514,6 +10615,15 @@ version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" +[[package]] +name = "rustc_version" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" +dependencies = [ + "semver 0.9.0", +] + [[package]] name = "rustc_version" version = "0.3.3" @@ -7532,6 +10642,39 @@ dependencies = [ "semver 1.0.23", ] +[[package]] +name = "rustc_version_runtime" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d31b7153270ebf48bf91c65ae5b0c00e749c4cfad505f66530ac74950249582f" +dependencies = [ + "rustc_version 0.2.3", + "semver 0.9.0", +] + +[[package]] +name = "rusticata-macros" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632" +dependencies = [ + "nom", +] + +[[package]] +name = "rustix" +version = "0.37.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "519165d378b97752ca44bbe15047d5d3409e875f39327546b42ac81d7e18c1b6" +dependencies = [ + "bitflags 1.3.2", + "errno", + "io-lifetimes", + "libc", + "linux-raw-sys 0.3.8", + "windows-sys 0.48.0", +] + [[package]] name = "rustix" version = "0.38.38" @@ -7541,7 +10684,7 @@ dependencies = [ "bitflags 2.6.0", "errno", "libc", - "linux-raw-sys", + "linux-raw-sys 0.4.14", "windows-sys 0.52.0", ] @@ -7578,12 +10721,26 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eee87ff5d9b36712a58574e12e9f0ea80f915a5b0ac518d322b24a465617925e" dependencies = [ "once_cell", + "ring", "rustls-pki-types", "rustls-webpki 0.102.8", "subtle", "zeroize", ] +[[package]] +name = "rustls-connector" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a980454b497c439c274f2feae2523ed8138bbd3d323684e1435fec62f800481" +dependencies = [ + "log", + "rustls 0.23.16", + "rustls-native-certs 0.7.3", + "rustls-pki-types", + "rustls-webpki 0.102.8", +] + [[package]] name = "rustls-native-certs" version = "0.6.3" @@ -7593,7 +10750,7 @@ dependencies = [ "openssl-probe", "rustls-pemfile 1.0.4", "schannel", - "security-framework", + "security-framework 2.11.1", ] [[package]] @@ -7606,7 +10763,19 @@ dependencies = [ "rustls-pemfile 2.2.0", "rustls-pki-types", "schannel", - "security-framework", + "security-framework 2.11.1", +] + +[[package]] +name = "rustls-native-certs" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fcff2dd52b58a8d98a70243663a0d234c4e2b79235637849d15913394a247d3" +dependencies = [ + "openssl-probe", + "rustls-pki-types", + "schannel", + "security-framework 3.2.0", ] [[package]] @@ -7632,6 +10801,9 @@ name = "rustls-pki-types" version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "16f1201b3c9a7ee8039bcadc17b7e605e2945b27eee7631788c1bd2b0643674b" +dependencies = [ + "web-time", +] [[package]] name = "rustls-webpki" @@ -7759,6 +10931,17 @@ dependencies = [ "syn 2.0.89", ] +[[package]] +name = "schnellru" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "356285bbf17bea63d9e52e96bd18f039672ac92b55b8cb997d6162a2a37d1649" +dependencies = [ + "ahash 0.8.11", + "cfg-if", + "hashbrown 0.13.2", +] + [[package]] name = "scopeguard" version = "1.2.0" @@ -7772,7 +10955,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9f9e24d2b632954ded8ab2ef9fea0a0c769ea56ea98bddbafbad22caeeadf45d" dependencies = [ "hmac", - "pbkdf2", + "pbkdf2 0.11.0", + "salsa20", + "sha2", +] + +[[package]] +name = "scrypt" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0516a385866c09368f0b5bcd1caff3366aace790fcd46e2bb032697bb172fd1f" +dependencies = [ + "pbkdf2 0.12.2", "salsa20", "sha2", ] @@ -7787,16 +10981,30 @@ dependencies = [ "untrusted", ] +[[package]] +name = "sec1" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928" +dependencies = [ + "base16ct 0.1.1", + "der 0.6.1", + "generic-array", + "pkcs8 0.9.0", + "subtle", + "zeroize", +] + [[package]] name = "sec1" version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" dependencies = [ - "base16ct", - "der", + "base16ct 0.2.0", + "der 0.7.9", "generic-array", - "pkcs8", + "pkcs8 0.10.2", "subtle", "zeroize", ] @@ -7808,7 +11016,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ "bitflags 2.6.0", - "core-foundation", + "core-foundation 0.9.4", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + +[[package]] +name = "security-framework" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "271720403f46ca04f7ba6f55d438f8bd878d6b8ca0a1046e8228c4145bcbb316" +dependencies = [ + "bitflags 2.6.0", + "core-foundation 0.10.0", "core-foundation-sys", "libc", "security-framework-sys", @@ -7816,21 +11037,30 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.12.0" +version = "2.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea4a292869320c0272d7bc55a5a6aafaff59b4f63404a003887b679a2e05b4b6" +checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32" dependencies = [ "core-foundation-sys", "libc", ] +[[package]] +name = "semver" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" +dependencies = [ + "semver-parser 0.7.0", +] + [[package]] name = "semver" version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" dependencies = [ - "semver-parser", + "semver-parser 0.10.2", ] [[package]] @@ -7842,6 +11072,12 @@ dependencies = [ "serde", ] +[[package]] +name = "semver-parser" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" + [[package]] name = "semver-parser" version = "0.10.2" @@ -7857,6 +11093,12 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f638d531eccd6e23b980caf34876660d38e265409d8e99b397ab71eb3612fad0" +[[package]] +name = "send_wrapper" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" + [[package]] name = "serde" version = "1.0.213" @@ -7866,6 +11108,15 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "serde_bytes" +version = "0.11.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "387cc504cb06bb40a96c8e04e951fe01854cf6bc921053c954e4a606d9675c6a" +dependencies = [ + "serde", +] + [[package]] name = "serde_derive" version = "1.0.213" @@ -7894,6 +11145,7 @@ version = "1.0.132" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03" dependencies = [ + "indexmap 2.6.0", "itoa", "memchr", "ryu", @@ -7911,6 +11163,16 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_path_to_error" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6" +dependencies = [ + "itoa", + "serde", +] + [[package]] name = "serde_regex" version = "1.1.0" @@ -7942,6 +11204,16 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_with" +version = "1.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "678b5a069e50bf00ecd22d0cd8ddf7c236f68581b03db652061ed5eb13a312ff" +dependencies = [ + "serde", + "serde_with_macros 1.5.2", +] + [[package]] name = "serde_with" version = "3.11.0" @@ -7956,10 +11228,22 @@ dependencies = [ "serde", "serde_derive", "serde_json", - "serde_with_macros", + "serde_with_macros 3.11.0", "time", ] +[[package]] +name = "serde_with_macros" +version = "1.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082" +dependencies = [ + "darling 0.13.4", + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "serde_with_macros" version = "3.11.0" @@ -7985,6 +11269,19 @@ dependencies = [ "unsafe-libyaml", ] +[[package]] +name = "settlement-client-interface" +version = "0.7.0" +dependencies = [ + "async-trait", + "axum 0.7.7", + "c-kzg", + "color-eyre", + "mockall", + "starknet", + "utils", +] + [[package]] name = "sha-1" version = "0.9.8" @@ -7998,6 +11295,17 @@ dependencies = [ "opaque-debug", ] +[[package]] +name = "sha-1" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5058ada175748e33390e40e872bd0fe59a19f265d0158daa551c5a88a76009c" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + [[package]] name = "sha1" version = "0.10.6" @@ -8009,6 +11317,12 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "sha1_smol" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbfa15b3dddfee50a0fff136974b3e1bde555604ba463834a7eb7deb6417705d" + [[package]] name = "sha2" version = "0.10.8" @@ -8049,6 +11363,43 @@ dependencies = [ "lazy_static", ] +[[package]] +name = "sharp-service" +version = "0.7.0" +dependencies = [ + "alloy 0.8.3", + "async-trait", + "base64 0.22.1", + "cairo-vm", + "color-eyre", + "dotenvy", + "gps-fact-checker", + "hex", + "httpmock", + "lazy_static", + "log", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry_sdk", + "prover-client-interface", + "reqwest 0.12.8", + "rstest 0.18.2", + "serde", + "serde_json", + "starknet-os", + "thiserror 2.0.3", + "tokio", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "utils", + "uuid 1.12.0", +] + [[package]] name = "shlex" version = "1.3.0" @@ -8064,6 +11415,16 @@ dependencies = [ "libc", ] +[[package]] +name = "signature" +version = "1.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" +dependencies = [ + "digest 0.10.7", + "rand_core", +] + [[package]] name = "signature" version = "2.2.0" @@ -8080,6 +11441,18 @@ version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e" +[[package]] +name = "simple_asn1" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "297f631f50729c8c99b84667867963997ec0b50f32b2a7dbcab828ef0541e8bb" +dependencies = [ + "num-bigint", + "num-traits 0.2.19", + "thiserror 2.0.3", + "time", +] + [[package]] name = "siphasher" version = "0.3.11" @@ -8104,6 +11477,17 @@ dependencies = [ "version_check", ] +[[package]] +name = "sluice" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d7400c0eff44aa2fcb5e31a5f24ba9716ed90138769e4977a2ba6014ae63eb5" +dependencies = [ + "async-channel 1.9.0", + "futures-core", + "futures-io", +] + [[package]] name = "smallvec" version = "1.13.2" @@ -8131,6 +11515,16 @@ dependencies = [ "serde", ] +[[package]] +name = "socket2" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" +dependencies = [ + "libc", + "winapi", +] + [[package]] name = "socket2" version = "0.5.7" @@ -8154,7 +11548,7 @@ dependencies = [ "httparse", "log", "rand", - "sha-1", + "sha-1 0.9.8", ] [[package]] @@ -8162,6 +11556,19 @@ name = "spin" version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" +dependencies = [ + "lock_api", +] + +[[package]] +name = "spki" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b" +dependencies = [ + "base64ct", + "der 0.6.1", +] [[package]] name = "spki" @@ -8170,7 +11577,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" dependencies = [ "base64ct", - "der", + "der 0.7.9", ] [[package]] @@ -8180,7 +11587,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec63571489873d4506683915840eeb1bb16b3198ee4894cc6f2fe3013d505e56" dependencies = [ "ndarray", - "num-complex", + "num-complex 0.2.4", "num-traits 0.1.43", ] @@ -8228,7 +11635,7 @@ checksum = "bd6ee5762d24c4f06ab7e9406550925df406712e73719bd2de905c879c674a87" dependencies = [ "serde", "serde_json", - "serde_with", + "serde_with 3.11.0", "starknet-accounts", "starknet-core", "starknet-providers", @@ -8241,13 +11648,13 @@ version = "0.12.0" source = "git+https://github.com/kasarlabs/starknet-rs.git?branch=fork#70e1ee45dc701afc2a7629bf88bb5d90a93d51a7" dependencies = [ "base64 0.21.7", - "crypto-bigint", + "crypto-bigint 0.5.5", "flate2", "hex", "serde", "serde_json", "serde_json_pythonic", - "serde_with", + "serde_with 3.11.0", "sha3", "starknet-crypto 0.7.2 (git+https://github.com/kasarlabs/starknet-rs.git?branch=fork)", "starknet-types-core 0.1.7 (git+https://github.com/kasarlabs/types-rs.git?branch=feat-deserialize-v0.1.7)", @@ -8259,13 +11666,13 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3f2175b0b3fc24ff2ec6dc07f5a720498994effca7e78b11a6e1c1bd02cad52" dependencies = [ - "crypto-bigint", + "crypto-bigint 0.5.5", "hex", "hmac", "num-bigint", "num-integer", "num-traits 0.2.19", - "rfc6979", + "rfc6979 0.4.0", "sha2", "starknet-crypto-codegen", "starknet-curve 0.3.0", @@ -8279,13 +11686,13 @@ version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2e2c30c01e8eb0fc913c4ee3cf676389fffc1d1182bfe5bb9670e4e72e968064" dependencies = [ - "crypto-bigint", + "crypto-bigint 0.5.5", "hex", "hmac", "num-bigint", "num-integer", "num-traits 0.2.19", - "rfc6979", + "rfc6979 0.4.0", "sha2", "starknet-crypto-codegen", "starknet-curve 0.4.2", @@ -8299,13 +11706,13 @@ version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "60a5064173a8e8d2675e67744fd07f310de44573924b6b7af225a6bdd8102913" dependencies = [ - "crypto-bigint", + "crypto-bigint 0.5.5", "hex", "hmac", "num-bigint", "num-integer", "num-traits 0.2.19", - "rfc6979", + "rfc6979 0.4.0", "sha2", "starknet-curve 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", "starknet-types-core 0.1.7 (git+https://github.com/kasarlabs/types-rs.git?branch=feat-deserialize-v0.1.7)", @@ -8317,13 +11724,13 @@ name = "starknet-crypto" version = "0.7.2" source = "git+https://github.com/kasarlabs/starknet-rs.git?branch=fork#70e1ee45dc701afc2a7629bf88bb5d90a93d51a7" dependencies = [ - "crypto-bigint", + "crypto-bigint 0.5.5", "hex", "hmac", "num-bigint", "num-integer", "num-traits 0.2.19", - "rfc6979", + "rfc6979 0.4.0", "sha2", "starknet-curve 0.5.1 (git+https://github.com/kasarlabs/starknet-rs.git?branch=fork)", "starknet-types-core 0.1.7 (git+https://github.com/kasarlabs/types-rs.git?branch=feat-deserialize-v0.1.7)", @@ -8383,9 +11790,33 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7abf1b44ec5b18d87c1ae5f54590ca9d0699ef4dd5b2ffa66fc97f24613ec585" dependencies = [ "ark-ff 0.4.2", - "crypto-bigint", + "bigdecimal 0.3.1", + "crypto-bigint 0.5.5", "getrandom", "hex", + "serde", +] + +[[package]] +name = "starknet-gateway-types" +version = "0.14.3" +source = "git+https://github.com/Moonsong-Labs/pathfinder?rev=9c19d9a37be8f447ec4548456c440ccbd0e44260#9c19d9a37be8f447ec4548456c440ccbd0e44260" +dependencies = [ + "anyhow", + "fake", + "pathfinder-common", + "pathfinder-crypto", + "pathfinder-serde", + "primitive-types", + "rand", + "reqwest 0.12.8", + "rstest 0.18.2", + "serde", + "serde_json", + "serde_with 3.11.0", + "sha3", + "thiserror 1.0.65", + "tokio", ] [[package]] @@ -8398,6 +11829,77 @@ dependencies = [ "syn 2.0.89", ] +[[package]] +name = "starknet-os" +version = "0.1.0" +source = "git+https://github.com/keep-starknet-strange/snos?branch=madara-monorepo#58d1f11b59236f935a9c98191f46f650ed33d21a" +dependencies = [ + "anyhow", + "ark-ec", + "ark-ff 0.4.2", + "ark-secp256k1", + "ark-secp256r1", + "base64 0.21.7", + "bitvec", + "blockifier", + "c-kzg", + "cairo-lang-casm 2.8.4", + "cairo-lang-starknet 2.8.4", + "cairo-lang-starknet-classes", + "cairo-type-derive", + "cairo-vm", + "futures", + "futures-util", + "heck 0.4.1", + "hex", + "indexmap 2.6.0", + "indoc 2.0.5", + "keccak", + "lazy_static", + "log", + "num-bigint", + "num-integer", + "num-traits 0.2.19", + "pathfinder-common", + "pathfinder-crypto", + "reqwest 0.11.27", + "serde", + "serde_json", + "serde_with 3.11.0", + "serde_yaml", + "sha2", + "starknet-crypto 0.6.2", + "starknet-gateway-types", + "starknet-os-types", + "starknet_api", + "thiserror 1.0.65", + "tokio", + "uuid 1.12.0", + "zip", +] + +[[package]] +name = "starknet-os-types" +version = "0.1.0" +source = "git+https://github.com/keep-starknet-strange/snos?branch=madara-monorepo#58d1f11b59236f935a9c98191f46f650ed33d21a" +dependencies = [ + "blockifier", + "cairo-lang-starknet-classes", + "cairo-vm", + "flate2", + "num-bigint", + "serde", + "serde_json", + "serde_with 3.11.0", + "starknet-core", + "starknet-crypto 0.6.2", + "starknet-gateway-types", + "starknet-types-core 0.1.7 (git+https://github.com/kasarlabs/types-rs.git?branch=feat-deserialize-v0.1.7)", + "starknet_api", + "thiserror 1.0.65", + "tokio", +] + [[package]] name = "starknet-providers" version = "0.12.0" @@ -8413,12 +11915,50 @@ dependencies = [ "reqwest 0.11.27", "serde", "serde_json", - "serde_with", + "serde_with 3.11.0", "starknet-core", "thiserror 1.0.65", "url", ] +[[package]] +name = "starknet-settlement-client" +version = "0.7.0" +dependencies = [ + "alloy 0.8.3", + "alloy-primitives 0.8.18", + "appchain-core-contract-client", + "async-std", + "async-trait", + "c-kzg", + "color-eyre", + "crypto-bigint 0.5.5", + "dotenvy", + "lazy_static", + "log", + "mockall", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry_sdk", + "reqwest 0.12.8", + "rstest 0.18.2", + "serde", + "serde_json", + "settlement-client-interface", + "starknet", + "tempfile", + "tokio", + "tokio-test", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "utils", +] + [[package]] name = "starknet-signers" version = "0.10.0" @@ -8427,7 +11967,7 @@ checksum = "70b9e01b61ae51d722e2b100d6ef913c5a2e70d1ea672733d385f7296d6055ef" dependencies = [ "async-trait", "auto_impl", - "crypto-bigint", + "crypto-bigint 0.5.5", "eth-keystore", "getrandom", "rand", @@ -8477,8 +12017,7 @@ dependencies = [ [[package]] name = "starknet_api" version = "0.13.0-rc.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b505c9c076d9fce854304bd743c93ea540ebea6b16ec96819b07343a3aa2c7c" +source = "git+https://github.com/Moonsong-Labs/sequencer?branch=madara-monorepo#6624e910c57db9a16f1607c1ed26f7d8f1114e73" dependencies = [ "bitvec", "cairo-lang-starknet-classes", @@ -8517,6 +12056,17 @@ dependencies = [ "precomputed-hash", ] +[[package]] +name = "stringprep" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b4df3d392d81bd458a8a621b8bffbd2302a12ffe288a9d931670948749463b1" +dependencies = [ + "unicode-bidi", + "unicode-normalization", + "unicode-properties", +] + [[package]] name = "strsim" version = "0.10.0" @@ -8595,6 +12145,18 @@ version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" +[[package]] +name = "svix-ksuid" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66f014385b7fc154f59e9480770c2187b6e61037c2439895788a9a4d421d7859" +dependencies = [ + "base-encode", + "byteorder", + "getrandom", + "time", +] + [[package]] name = "syn" version = "1.0.109" @@ -8619,9 +12181,21 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.8.9" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb3d0961cd53c23ea94eeec56ba940f636f6394788976e9f16ca5ee0aca7464a" +dependencies = [ + "paste", + "proc-macro2", + "quote", + "syn 2.0.89", +] + +[[package]] +name = "syn-solidity" +version = "0.8.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d5e0c2ea8db64b2898b62ea2fbd60204ca95e0b2c6bdf53ff768bbe916fbe4d" +checksum = "31e89d8bf2768d277f40573c83a02a099e96d96dd3104e13ea676194e61ac4b0" dependencies = [ "paste", "proc-macro2", @@ -8644,6 +12218,17 @@ dependencies = [ "futures-core", ] +[[package]] +name = "synstructure" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", +] + [[package]] name = "sysinfo" version = "0.30.13" @@ -8666,7 +12251,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" dependencies = [ "bitflags 1.3.2", - "core-foundation", + "core-foundation 0.9.4", "system-configuration-sys 0.5.0", ] @@ -8677,7 +12262,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" dependencies = [ "bitflags 2.6.0", - "core-foundation", + "core-foundation 0.9.4", "system-configuration-sys 0.6.0", ] @@ -8701,12 +12286,48 @@ dependencies = [ "libc", ] +[[package]] +name = "tagged" +version = "0.14.3" +source = "git+https://github.com/Moonsong-Labs/pathfinder?rev=9c19d9a37be8f447ec4548456c440ccbd0e44260#9c19d9a37be8f447ec4548456c440ccbd0e44260" +dependencies = [ + "fake", +] + +[[package]] +name = "tagged-debug-derive" +version = "0.14.3" +source = "git+https://github.com/Moonsong-Labs/pathfinder?rev=9c19d9a37be8f447ec4548456c440ccbd0e44260#9c19d9a37be8f447ec4548456c440ccbd0e44260" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "take_mut" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f764005d11ee5f36500a149ace24e00e3da98b0158b3e2d53a7495660d3f4d60" + [[package]] name = "tap" version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" +[[package]] +name = "tcp-stream" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "495b0abdce3dc1f8fd27240651c9e68890c14e9d9c61527b1ce44d8a5a7bd3d5" +dependencies = [ + "cfg-if", + "p12-keystore", + "rustls-connector", + "rustls-pemfile 2.2.0", +] + [[package]] name = "tempfile" version = "3.13.0" @@ -8714,9 +12335,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" dependencies = [ "cfg-if", - "fastrand", + "fastrand 2.1.1", "once_cell", - "rustix", + "rustix 0.38.38", "windows-sys 0.59.0", ] @@ -8896,11 +12517,21 @@ dependencies = [ "parking_lot 0.12.3", "pin-project-lite", "signal-hook-registry", - "socket2", + "socket2 0.5.7", "tokio-macros", "windows-sys 0.48.0", ] +[[package]] +name = "tokio-io-timeout" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf" +dependencies = [ + "pin-project-lite", + "tokio", +] + [[package]] name = "tokio-macros" version = "2.3.0" @@ -8916,9 +12547,20 @@ dependencies = [ name = "tokio-native-tls" version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" +checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" +dependencies = [ + "native-tls", + "tokio", +] + +[[package]] +name = "tokio-retry" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f57eb36ecbe0fc510036adff84824dd3c24bb781e21bfa67b69d556aa85214f" dependencies = [ - "native-tls", + "pin-project", + "rand", "tokio", ] @@ -8966,6 +12608,35 @@ dependencies = [ "tokio-util", ] +[[package]] +name = "tokio-test" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2468baabc3311435b55dd935f702f42cd1b8abb7e754fb7dfb16bd36aa88f9f7" +dependencies = [ + "async-stream", + "bytes", + "futures-core", + "tokio", + "tokio-stream", +] + +[[package]] +name = "tokio-tungstenite" +version = "0.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edc5f74e248dc973e0dbb7b74c7e0d6fcc301c694ff50049504004ef4d0cdcd9" +dependencies = [ + "futures-util", + "log", + "rustls 0.23.16", + "rustls-pki-types", + "tokio", + "tokio-rustls 0.26.0", + "tungstenite 0.24.0", + "webpki-roots 0.26.6", +] + [[package]] name = "tokio-util" version = "0.7.12" @@ -9023,6 +12694,38 @@ dependencies = [ "winnow", ] +[[package]] +name = "tonic" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d560933a0de61cf715926b9cac824d4c883c2c43142f787595e48280c40a1d0e" +dependencies = [ + "async-stream", + "async-trait", + "axum 0.6.20", + "base64 0.21.7", + "bytes", + "flate2", + "h2 0.3.26", + "http 0.2.12", + "http-body 0.4.6", + "hyper 0.14.31", + "hyper-timeout 0.4.1", + "percent-encoding", + "pin-project", + "prost 0.12.6", + "rustls 0.21.12", + "rustls-pemfile 1.0.4", + "tokio", + "tokio-rustls 0.24.1", + "tokio-stream", + "tower 0.4.13", + "tower-layer", + "tower-service", + "tracing", + "webpki-roots 0.25.4", +] + [[package]] name = "tonic" version = "0.12.3" @@ -9031,7 +12734,7 @@ checksum = "877c5b330756d856ffcc4553ab34a5684481ade925ecc54bcd1bf02b1d0d4d52" dependencies = [ "async-stream", "async-trait", - "axum", + "axum 0.7.7", "base64 0.22.1", "bytes", "h2 0.4.6", @@ -9039,12 +12742,12 @@ dependencies = [ "http-body 1.0.1", "http-body-util", "hyper 1.5.0", - "hyper-timeout", + "hyper-timeout 0.5.1", "hyper-util", "percent-encoding", "pin-project", - "prost", - "socket2", + "prost 0.13.3", + "socket2 0.5.7", "tokio", "tokio-stream", "tower 0.4.13", @@ -9083,8 +12786,10 @@ dependencies = [ "futures-util", "pin-project-lite", "sync_wrapper 0.1.2", + "tokio", "tower-layer", "tower-service", + "tracing", ] [[package]] @@ -9150,6 +12855,26 @@ dependencies = [ "valuable", ] +[[package]] +name = "tracing-error" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b1581020d7a273442f5b45074a6a57d5757ad0a47dac0e9f0bd57b81936f3db" +dependencies = [ + "tracing", + "tracing-subscriber", +] + +[[package]] +name = "tracing-futures" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2" +dependencies = [ + "pin-project", + "tracing", +] + [[package]] name = "tracing-log" version = "0.2.0" @@ -9228,6 +12953,51 @@ dependencies = [ "stable_deref_trait", ] +[[package]] +name = "trust-dns-proto" +version = "0.21.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c31f240f59877c3d4bb3b3ea0ec5a6a0cff07323580ff8c7a605cd7d08b255d" +dependencies = [ + "async-trait", + "cfg-if", + "data-encoding", + "enum-as-inner", + "futures-channel", + "futures-io", + "futures-util", + "idna 0.2.3", + "ipnet", + "lazy_static", + "log", + "rand", + "smallvec", + "thiserror 1.0.65", + "tinyvec", + "tokio", + "url", +] + +[[package]] +name = "trust-dns-resolver" +version = "0.21.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4ba72c2ea84515690c9fcef4c6c660bb9df3036ed1051686de84605b74fd558" +dependencies = [ + "cfg-if", + "futures-util", + "ipconfig", + "lazy_static", + "log", + "lru-cache", + "parking_lot 0.12.3", + "resolv-conf", + "smallvec", + "thiserror 1.0.65", + "tokio", + "trust-dns-proto", +] + [[package]] name = "try-lock" version = "0.2.5" @@ -9253,6 +13023,37 @@ dependencies = [ "utf-8", ] +[[package]] +name = "tungstenite" +version = "0.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18e5b8366ee7a95b16d32197d0b2604b43a0be89dc5fac9f8e96ccafbaedda8a" +dependencies = [ + "byteorder", + "bytes", + "data-encoding", + "http 1.1.0", + "httparse", + "log", + "rand", + "rustls 0.23.16", + "rustls-pki-types", + "sha1", + "thiserror 1.0.65", + "utf-8", +] + +[[package]] +name = "typed-builder" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89851716b67b937e393b3daa8423e67ddfc4bbbf1654bcf05488e95e0828db0c" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "typenum" version = "1.17.0" @@ -9292,6 +13093,12 @@ dependencies = [ "thiserror 1.0.65", ] +[[package]] +name = "unicase" +version = "2.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539" + [[package]] name = "unicode-bidi" version = "0.3.17" @@ -9313,6 +13120,12 @@ dependencies = [ "tinyvec", ] +[[package]] +name = "unicode-properties" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e70f2a8b45122e719eb623c01822704c4e0907e7e426a05927e1a1cfff5b75d0" + [[package]] name = "unicode-segmentation" version = "1.12.0" @@ -9350,11 +13163,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" dependencies = [ "form_urlencoded", - "idna", + "idna 0.5.0", "percent-encoding", "serde", ] +[[package]] +name = "urlencoding" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" + [[package]] name = "utf-8" version = "0.7.6" @@ -9367,6 +13186,32 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" +[[package]] +name = "utils" +version = "0.7.0" +dependencies = [ + "base64 0.22.1", + "color-eyre", + "dotenv", + "httpmock", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry-stdout", + "opentelemetry_sdk", + "reqwest 0.12.8", + "serde", + "serde_json", + "thiserror 2.0.3", + "tokio", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", +] + [[package]] name = "uuid" version = "0.8.2" @@ -9377,6 +13222,16 @@ dependencies = [ "serde", ] +[[package]] +name = "uuid" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "744018581f9a3454a9e15beb8a33b017183f1e7c0cd170232a2d1453b23a51c4" +dependencies = [ + "getrandom", + "serde", +] + [[package]] name = "valuable" version = "0.1.0" @@ -9395,12 +13250,30 @@ version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" +[[package]] +name = "vergen" +version = "8.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2990d9ea5967266ea0ccf413a4aa5c42a93dbcfda9cb49a97de6931726b12566" +dependencies = [ + "anyhow", + "cfg-if", + "rustversion", + "time", +] + [[package]] name = "version_check" version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" +[[package]] +name = "vsimd" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" + [[package]] name = "wait-timeout" version = "0.2.0" @@ -9410,6 +13283,12 @@ dependencies = [ "libc", ] +[[package]] +name = "waker-fn" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7" + [[package]] name = "walkdir" version = "2.5.0" @@ -9437,20 +13316,19 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.95" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "128d1e363af62632b8eb57219c8fd7877144af57558fb2ef0368d0087bddeb2e" +checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" dependencies = [ "cfg-if", - "once_cell", "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.95" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb6dd4d3ca0ddffd1dd1c9c04f94b868c37ff5fac97c30b97cff2d74fce3a358" +checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" dependencies = [ "bumpalo", "log", @@ -9463,9 +13341,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.45" +version = "0.4.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc7ec4f8827a71586374db3e87abdb5a2bb3a15afed140221307c3ec06b1f63b" +checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" dependencies = [ "cfg-if", "js-sys", @@ -9475,9 +13353,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.95" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79384be7f8f5a9dd5d7167216f022090cf1f9ec128e6e6a482a2cb5c5422c56" +checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -9485,9 +13363,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.95" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" +checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", @@ -9498,15 +13376,42 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.95" +version = "0.2.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" + +[[package]] +name = "wasm-streams" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e072d4e72f700fb3443d8fe94a39315df013eef1104903cdb0a2abd322bbecd" +dependencies = [ + "futures-util", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "wasmtimer" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65fc09f10666a9f147042251e0dda9c18f166ff7de300607007e96bdebc1068d" +checksum = "0048ad49a55b9deb3953841fa1fc5858f0efbcb7a18868c899a360269fac1b23" +dependencies = [ + "futures", + "js-sys", + "parking_lot 0.12.3", + "pin-utils", + "slab", + "wasm-bindgen", +] [[package]] name = "web-sys" -version = "0.3.72" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6488b90108c040df0fe62fa815cbdee25124641df01814dd7282749234c6112" +checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef" dependencies = [ "js-sys", "wasm-bindgen", @@ -9537,6 +13442,12 @@ dependencies = [ "rustls-pki-types", ] +[[package]] +name = "widestring" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311" + [[package]] name = "winapi" version = "0.3.9" @@ -9784,6 +13695,25 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "ws_stream_wasm" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7999f5f4217fe3818726b66257a4475f71e74ffd190776ad053fa159e50737f5" +dependencies = [ + "async_io_stream", + "futures", + "js-sys", + "log", + "pharos", + "rustc_version 0.4.1", + "send_wrapper 0.6.0", + "thiserror 1.0.65", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + [[package]] name = "wyz" version = "0.5.1" @@ -9793,6 +13723,40 @@ dependencies = [ "tap", ] +[[package]] +name = "x509-cert" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1301e935010a701ae5f8655edc0ad17c44bad3ac5ce8c39185f75453b720ae94" +dependencies = [ + "const-oid", + "der 0.7.9", + "spki 0.7.3", +] + +[[package]] +name = "x509-parser" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcbc162f30700d6f3f82a24bf7cc62ffe7caea42c0b2cba8bf7f3ae50cf51f69" +dependencies = [ + "asn1-rs", + "data-encoding", + "der-parser", + "lazy_static", + "nom", + "oid-registry", + "rusticata-macros", + "thiserror 1.0.65", + "time", +] + +[[package]] +name = "xmlparser" +version = "0.13.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66fee0b777b0f5ac1c69bb06d361268faafa61cd4682ae064a171c16c433e9e4" + [[package]] name = "xshell" version = "0.2.6" @@ -9869,7 +13833,7 @@ dependencies = [ "crossbeam-utils", "flate2", "hmac", - "pbkdf2", + "pbkdf2 0.11.0", "sha1", "time", "zstd", diff --git a/Cargo.toml b/Cargo.toml index 1aa14a013..1742ffce6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,60 +1,74 @@ [workspace] members = [ # madara - "crates/madara/client/db", - "crates/madara/client/exec", - "crates/madara/client/sync", - "crates/madara/client/eth", - "crates/madara/client/rpc", - "crates/madara/client/gateway/client", - "crates/madara/client/gateway/server", - "crates/madara/client/analytics", - "crates/madara/client/telemetry", - "crates/madara/client/devnet", - "crates/madara/client/mempool", - "crates/madara/client/block_import", - "crates/madara/node", - "crates/madara/primitives/block", - "crates/madara/primitives/convert", - "crates/madara/primitives/transactions", - "crates/madara/primitives/class", - "crates/madara/primitives/gateway", - "crates/madara/primitives/receipt", - "crates/madara/primitives/state_update", - "crates/madara/primitives/chain_config", - "crates/madara/primitives/utils", - "crates/madara/proc-macros", - "crates/madara/tests", - "crates/madara/cairo-test-contracts", - "crates/madara/client/block_production", + "madara/crates/client/db", + "madara/crates/client/exec", + "madara/crates/client/sync", + "madara/crates/client/eth", + "madara/crates/client/rpc", + "madara/crates/client/gateway/client", + "madara/crates/client/gateway/server", + "madara/crates/client/analytics", + "madara/crates/client/telemetry", + "madara/crates/client/devnet", + "madara/crates/client/mempool", + "madara/crates/client/block_import", + "madara/crates/node", + "madara/crates/primitives/block", + "madara/crates/primitives/convert", + "madara/crates/primitives/transactions", + "madara/crates/primitives/class", + "madara/crates/primitives/gateway", + "madara/crates/primitives/receipt", + "madara/crates/primitives/state_update", + "madara/crates/primitives/chain_config", + "madara/crates/primitives/utils", + "madara/crates/proc-macros", + "madara/crates/tests", + "madara/crates/cairo-test-contracts", + "madara/crates/client/block_production", + + # orchestrator + "orchestrator/crates/orchestrator", # TODO: rename + "orchestrator/crates/da-clients/da-client-interface", + "orchestrator/crates/da-clients/ethereum", + "orchestrator/crates/prover-clients/prover-client-interface", + "orchestrator/crates/prover-clients/gps-fact-checker", + "orchestrator/crates/prover-clients/sharp-service", + "orchestrator/crates/prover-clients/atlantic-service", + "orchestrator/crates/utils", # TODO: rename + "orchestrator/crates/settlement-clients/settlement-client-interface", + "orchestrator/crates/settlement-clients/ethereum", + "orchestrator/crates/settlement-clients/starknet", + # "e2e-tests", # TODO: rename / merge with existing tests ] resolver = "2" # Everything except test-related packages, so that they are not compiled when doing `cargo build`. default-members = [ # madara - "crates/madara/client/db", - "crates/madara/client/exec", - "crates/madara/client/sync", - "crates/madara/client/eth", - "crates/madara/client/gateway/client", - "crates/madara/client/gateway/server", - "crates/madara/client/rpc", - "crates/madara/client/telemetry", - "crates/madara/client/devnet", - "crates/madara/client/mempool", - "crates/madara/client/block_import", - "crates/madara/client/analytics", - "crates/madara/node", - "crates/madara/primitives/block", - "crates/madara/primitives/convert", - "crates/madara/primitives/transactions", - "crates/madara/primitives/class", - "crates/madara/primitives/gateway", - "crates/madara/primitives/receipt", - "crates/madara/primitives/state_update", - "crates/madara/primitives/chain_config", - "crates/madara/primitives/utils", - "crates/madara/proc-macros", + "madara/crates/client/db", + "madara/crates/client/exec", + "madara/crates/client/sync", + "madara/crates/client/eth", + "madara/crates/client/gateway/client", + "madara/crates/client/gateway/server", + "madara/crates/client/rpc", + "madara/crates/client/telemetry", + "madara/crates/client/devnet", + "madara/crates/client/mempool", + "madara/crates/client/block_import", + "madara/crates/client/analytics", + "madara/crates/node", + "madara/crates/primitives/block", + "madara/crates/primitives/convert", + "madara/crates/primitives/transactions", + "madara/crates/primitives/class", + "madara/crates/primitives/gateway", + "madara/crates/primitives/receipt", + "madara/crates/primitives/state_update", + "madara/crates/primitives/chain_config", + "madara/crates/primitives/utils", + "madara/crates/proc-macros", ] [workspace.lints.rust] @@ -106,40 +120,40 @@ bonsai-trie = { default-features = false, git = "https://github.com/madara-allia ] } # Madara proc macros -m-proc-macros = { path = "crates/madara/proc-macros", default-features = false } +m-proc-macros = { path = "madara/crates/proc-macros", default-features = false } # Madara primtitives -mp-block = { path = "crates/madara/primitives/block", default-features = false } -mp-convert = { path = "crates/madara/primitives/convert", default-features = false } -mp-transactions = { path = "crates/madara/primitives/transactions", default-features = false } -mp-class = { path = "crates/madara/primitives/class", default-features = false } -mp-gateway = { path = "crates/madara/primitives/gateway", default-features = false } -mp-receipt = { path = "crates/madara/primitives/receipt", default-features = false } -mp-state-update = { path = "crates/madara/primitives/state_update", default-features = false } -mp-utils = { path = "crates/madara/primitives/utils", default-features = false } -mp-chain-config = { path = "crates/madara/primitives/chain_config", default-features = false } -mp-oracle = { path = "crates/madara/primitives/oracle", default-features = false } +mp-block = { path = "madara/crates/primitives/block", default-features = false } +mp-convert = { path = "madara/crates/primitives/convert", default-features = false } +mp-transactions = { path = "madara/crates/primitives/transactions", default-features = false } +mp-class = { path = "madara/crates/primitives/class", default-features = false } +mp-gateway = { path = "madara/crates/primitives/gateway", default-features = false } +mp-receipt = { path = "madara/crates/primitives/receipt", default-features = false } +mp-state-update = { path = "madara/crates/primitives/state_update", default-features = false } +mp-utils = { path = "madara/crates/primitives/utils", default-features = false } +mp-chain-config = { path = "madara/crates/primitives/chain_config", default-features = false } +mp-oracle = { path = "madara/crates/primitives/oracle", default-features = false } # Madara client -mc-analytics = { path = "crates/madara/client/analytics" } -mc-telemetry = { path = "crates/madara/client/telemetry" } -mc-db = { path = "crates/madara/client/db" } -mc-exec = { path = "crates/madara/client/exec" } -mc-rpc = { path = "crates/madara/client/rpc" } -mc-gateway-client = { path = "crates/madara/client/gateway/client" } -mc-gateway-server = { path = "crates/madara/client/gateway/server" } -mc-sync = { path = "crates/madara/client/sync" } -mc-eth = { path = "crates/madara/client/eth" } -mc-mempool = { path = "crates/madara/client/mempool" } -mc-block-production = { path = "crates/madara/client/block_production" } -mc-block-import = { path = "crates/madara/client/block_import" } -mc-devnet = { path = "crates/madara/client/devnet" } +mc-analytics = { path = "madara/crates/client/analytics" } +mc-telemetry = { path = "madara/crates/client/telemetry" } +mc-db = { path = "madara/crates/client/db" } +mc-exec = { path = "madara/crates/client/exec" } +mc-rpc = { path = "madara/crates/client/rpc" } +mc-gateway-client = { path = "madara/crates/client/gateway/client" } +mc-gateway-server = { path = "madara/crates/client/gateway/server" } +mc-sync = { path = "madara/crates/client/sync" } +mc-eth = { path = "madara/crates/client/eth" } +mc-mempool = { path = "madara/crates/client/mempool" } +mc-block-production = { path = "madara/crates/client/block_production" } +mc-block-import = { path = "madara/crates/client/block_import" } +mc-devnet = { path = "madara/crates/client/devnet" } # Madara misc -m-cairo-test-contracts = { path = "crates/madara/cairo-test-contracts" } +m-cairo-test-contracts = { path = "madara/crates/cairo-test-contracts" } # Starknet dependencies -cairo-vm = "=1.0.1" +cairo-vm = { git = "https://github.com/Moonsong-Labs/cairo-vm", branch = "madara-monorepo" } starknet-core = "0.12" starknet-crypto = "0.7" starknet-providers = "0.12" @@ -151,12 +165,13 @@ starknet-types-core = { version = "0.1.7", default-features = false, features = ] } starknet-types-rpc = "0.7.1" -blockifier = "=0.8.0" +blockifier = { git = "https://github.com/Moonsong-Labs/sequencer", branch = "madara-monorepo", features = ["testing"] } starknet_api = "=0.13.0-rc.1" cairo-lang-starknet-classes = "=2.8.4" cairo-lang-utils = "=2.8.4" -alloy = { version = "0.4.0", features = [ +# alloy = { version = "0.8.3", features = [ +alloy = { version = "0.8.3", features = [ "node-bindings", "rpc-types", "provider-http", @@ -199,7 +214,14 @@ indoc = "2" proc-macro2 = "1.0.86" quote = "1.0.26" syn = { version = "2.0.39", features = ["full"] } -reqwest = { version = "0.12", features = ["blocking", "json"] } +reqwest = { version = "0.12.7", features = [ + "blocking", + "rustls-tls", + "native-tls", + "json", + "multipart", + "stream", +] } rstest = "0.18" serde = { version = "1.0", default-features = false, features = ["std"] } serde_with = { version = "3.11", default-features = false, features = [ @@ -248,6 +270,59 @@ tracing-subscriber = { version = "0.3.18", features = [ tracing-test = "0.2.5" tracing-opentelemetry = "0.26.0" +# Orchestrator +num = { version = "0.4.1" } +alloy-primitives = { version = "0.8.3", default-features = false } +alloy-sol-types = "0.8.3" +aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } +aws-sdk-s3 = { version = "1.38.0", features = ["behavior-version-latest"] } +aws-sdk-eventbridge = { version = "1.41.0", features = [ + "behavior-version-latest", +] } +aws-sdk-iam = "1.52.0" +aws-sdk-scheduler = "1.49.0" +aws-sdk-sns = { version = "1.40.0", features = ["behavior-version-latest"] } +aws-credential-types = { version = "1.2.1", features = [ + "hardcoded-credentials", +] } +aws-sdk-sqs = "1.36.0" +axum = { version = "0.7.4" } +axum-macros = "0.4.1" +color-eyre = "0.6.2" +chrono = "0.4.0" +c-kzg = "1.0.3" +dotenvy = "0.15.7" +log = "0.4.21" +mongodb = { version = "2.8.1", features = ["bson-chrono-0_4"] } +omniqueue = { version = "0.2.0" } +tokio-stream = "0.1.15" +uuid = { version = "1.7.0", features = ["v4", "serde"] } +stark_evm_adapter = "0.1.1" +hex = "0.4" +mockall_double = "0.3.1" +testcontainers = "0.18.0" +appchain-core-contract-client = { git = "https://github.com/notlesh/zaun", branch = "madara-monorepo" } +env_logger = "0.11.5" +strum_macros = "0.26.4" +strum = "0.26.3" +async-std = { version = "1.13.0", features = ["attributes"] } +majin-blob-core = { git = "https://github.com/AbdelStark/majin-blob", branch = "main" } +majin-blob-types = { git = "https://github.com/AbdelStark/majin-blob", branch = "main" } +starknet-os = { git = "https://github.com/keep-starknet-strange/snos", branch = "madara-monorepo" } +prove_block = { git = "https://github.com/keep-starknet-strange/snos", branch = "madara-monorepo" } + +da-client-interface = { path = "orchestrator/crates/da-clients/da-client-interface" } +ethereum-da-client = { path = "orchestrator/crates/da-clients/ethereum" } +settlement-client-interface = { path = "orchestrator/crates/settlement-clients/settlement-client-interface" } +ethereum-settlement-client = { path = "orchestrator/crates/settlement-clients/ethereum" } +starknet-settlement-client = { path = "orchestrator/crates/settlement-clients/starknet" } +utils = { path = "orchestrator/crates/utils" } +prover-client-interface = { path = "orchestrator/crates/prover-clients/prover-client-interface" } +gps-fact-checker = { path = "orchestrator/crates/prover-clients/gps-fact-checker" } +sharp-service = { path = "orchestrator/crates/prover-clients/sharp-service" } +atlantic-service = { path = "orchestrator/crates/prover-clients/atlantic-service" } +orchestrator = { path = "orchestrator/crates/orchestrator" } + [patch.crates-io] rocksdb = { git = "https://github.com/madara-alliance/rust-rocksdb", branch = "read-options-set-raw-snapshot" } librocksdb-sys = { git = "https://github.com/madara-alliance/rust-rocksdb", branch = "read-options-set-raw-snapshot" } @@ -255,4 +330,7 @@ librocksdb-sys = { git = "https://github.com/madara-alliance/rust-rocksdb", bran starknet-types-core = { git = "https://github.com/kasarlabs/types-rs.git", branch = "feat-deserialize-v0.1.7" } starknet-types-rpc = { git = "https://github.com/jbcaron/types-rs.git", branch = "fork" } +starknet_api = { git = "https://github.com/Moonsong-Labs/sequencer", branch = "madara-monorepo", features = ["testing"] } starknet-core = { git = "https://github.com/kasarlabs/starknet-rs.git", branch = "fork" } + +cairo-vm = { git = "https://github.com/Moonsong-Labs/cairo-vm", branch = "madara-monorepo" } diff --git a/bootstrap_input.json b/bootstrap_input.json new file mode 100644 index 000000000..d48fc777c --- /dev/null +++ b/bootstrap_input.json @@ -0,0 +1,22 @@ +{ + "eth_rpc": "http://127.0.0.1:8545", + "eth_priv_key": "0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80", + "rollup_seq_url": "http://127.0.0.1:9944", + "rollup_priv_key": "0xabcd", + "eth_chain_id": 31337, + "l1_deployer_address": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", + "l1_wait_time": "15", + "sn_os_program_hash": "0x41fc2a467ef8649580631912517edcab7674173f1dbfa2e9b64fbcd82bc4d79", + "config_hash_version": "StarknetOsConfig2", + "app_chain_id": "MADARA_DEVNET", + "fee_token_address": "0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7", + "native_fee_token_address": "0x04718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d", + "cross_chain_wait_time": 20, + "l1_multisig_address": "0x70997970C51812dc3A010C7d01b50e0d17dc79C8", + "l2_multisig_address": "0x556455b8ac8bc00e0ad061d7df5458fa3c372304877663fa21d492a8d5e9435", + "verifier_address": "0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512", + "operator_address": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266", + "dev": false, + "core_contract_address": "0x99bba657f2bbc93c02d617f8ba121cb8fc104acf", + "core_contract_implementation_address": "0x4826533b4897376654bb4d4ad88b7fafd0c98528" +} diff --git a/cairo-lang b/cairo-lang new file mode 160000 index 000000000..a86e92bfd --- /dev/null +++ b/cairo-lang @@ -0,0 +1 @@ +Subproject commit a86e92bfde9c171c0856d7b46580c66e004922f3 diff --git a/dashboards/Grafana/dashboard_v1.json b/dashboards/Grafana/dashboard_v1.json new file mode 100644 index 000000000..a126e59e3 --- /dev/null +++ b/dashboards/Grafana/dashboard_v1.json @@ -0,0 +1,2100 @@ +{ + "annotations": { + "list": [ + { + "builtIn": 1, + "datasource": { + "type": "grafana", + "uid": "-- Grafana --" + }, + "enable": true, + "hide": true, + "iconColor": "rgba(0, 211, 255, 1)", + "name": "Annotations & Alerts", + "type": "dashboard" + } + ] + }, + "editable": true, + "fiscalYearStartMonth": 0, + "graphTooltip": 0, + "id": 1052, + "links": [], + "liveNow": false, + "panels": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 0 + }, + "id": 4, + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "pluginVersion": "10.3.3", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "block_state{operation_type=\"create_job\", operation_job_type=\"SnosRun\", job=\"$meter_service\"}", + "fullMetaSearch": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_type}}", + "range": true, + "refId": "Snos - create job", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "block_state{operation_type=\"process_job\", operation_job_type=\"SnosRun\", job=\"$meter_service\"}", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_type}}", + "range": true, + "refId": "Snos - process job", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "block_state{operation_type=\"verify_job\", operation_job_type=\"SnosRun\", job=\"$meter_service\", operation_verification_status=\"Verified\"}", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_type}}", + "range": true, + "refId": "Snos - verify job", + "useBackend": false + } + ], + "title": "Snos - latest block completed per job", + "transparent": true, + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 0 + }, + "id": 18, + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "pluginVersion": "10.3.3", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "builder", + "expr": "block_state{operation_type=\"create_job\", operation_job_type=\"ProofCreation\", job=\"$meter_service\"}", + "fullMetaSearch": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_type}}", + "range": true, + "refId": "Snos - create job", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "builder", + "expr": "block_state{operation_type=\"process_job\", operation_job_type=\"ProofCreation\", job=\"$meter_service\"}", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_type}}", + "range": true, + "refId": "Snos - process job", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "block_state{operation_type=\"verify_job\", operation_job_type=\"ProofCreation\", job=\"$meter_service\", operation_verification_status=\"Verified\"}", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_type}}", + "range": true, + "refId": "Snos - verify job", + "useBackend": false + } + ], + "title": "ProofCreation - latest block completed per job", + "transparent": true, + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 8 + }, + "id": 19, + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "pluginVersion": "10.3.3", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "builder", + "expr": "block_state{operation_type=\"create_job\", operation_job_type=\"DataSubmission\", job=\"$meter_service\"}", + "fullMetaSearch": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_type}}", + "range": true, + "refId": "Snos - create job", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "builder", + "expr": "block_state{operation_type=\"process_job\", operation_job_type=\"DataSubmission\", job=\"$meter_service\"}", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_type}}", + "range": true, + "refId": "Snos - process job", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "block_state{operation_type=\"verify_job\", operation_job_type=\"DataSubmission\", job=\"$meter_service\", operation_verification_status=\"Verified\"}", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_type}}", + "range": true, + "refId": "Snos - verify job", + "useBackend": false + } + ], + "title": "DataSubmission - latest block completed per job", + "transparent": true, + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + }, + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 8 + }, + "id": 20, + "options": { + "colorMode": "value", + "graphMode": "area", + "justifyMode": "auto", + "orientation": "auto", + "reduceOptions": { + "calcs": [ + "lastNotNull" + ], + "fields": "", + "values": false + }, + "showPercentChange": false, + "textMode": "auto", + "wideLayout": true + }, + "pluginVersion": "10.3.3", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "builder", + "expr": "block_state{operation_type=\"create_job\", operation_job_type=\"StateTransition\", job=\"$meter_service\"}", + "fullMetaSearch": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_type}}", + "range": true, + "refId": "Snos - create job", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "builder", + "expr": "block_state{operation_type=\"process_job\", operation_job_type=\"StateTransition\", job=\"$meter_service\"}", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_type}}", + "range": true, + "refId": "Snos - process job", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "block_state{operation_type=\"verify_job\", operation_job_type=\"StateTransition\", job=\"$meter_service\", operation_verification_status=\"Verified\"}", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_type}}", + "range": true, + "refId": "Snos - verify job", + "useBackend": false + } + ], + "title": "StateTransition - latest block completed per job", + "transparent": true, + "type": "stat" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "description": "grouped by job_type", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 16 + }, + "id": 7, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "11.3.1", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "successful_job_operations_jobs_total{operation_type=\"create_job\", job=\"$meter_service\", operation_job_type=\"DataSubmission\"}", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "DA" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "successful_job_operations_jobs_total{operation_type=\"create_job\", job=\"$meter_service\", operation_job_type=\"SnosRun\"}", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "Snos" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "successful_job_operations_jobs_total{operation_type=\"create_job\", job=\"$meter_service\", operation_job_type=\"ProofCreation\"}", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "successful_job_operations_jobs_total{operation_type=\"create_job\", job=\"$meter_service\", operation_job_type=\"StateTransition\"}", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "B" + } + ], + "title": "Successful Create Jobs over time (since last start)", + "transparent": true, + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "description": "grouped by job_type", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 16 + }, + "id": 9, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "11.3.1", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "failed_job_operations_jobs_total{operation_type=\"create_job\", job=\"$meter_service\", operation_job_type=\"SnosRun\" }", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "failed_job_operations_jobs_total{operation_type=\"create_job\", job=\"$meter_service\", operation_job_type=\"ProofCreation\" }", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "B" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "failed_job_operations_jobs_total{operation_type=\"create_job\", job=\"$meter_service\", operation_job_type=\"DataSubmission\" }", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "C" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "failed_job_operations_jobs_total{operation_type=\"create_job\", job=\"$meter_service\", operation_job_type=\"StateTransition\" }", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "D" + } + ], + "title": "Failed Create Jobs over time", + "transparent": true, + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "description": "grouped by job_type", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 24 + }, + "id": 12, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "11.3.1", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "(successful_job_operations_jobs_total{operation_type=\"process_job\", job=\"$meter_service\", operation_job_type=\"SnosRun\"})", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "(successful_job_operations_jobs_total{operation_type=\"process_job\", job=\"$meter_service\", operation_job_type=\"ProofCreation\"})", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "B" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "(successful_job_operations_jobs_total{operation_type=\"process_job\", job=\"$meter_service\", operation_job_type=\"DataSubmission\"})", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "C" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "(successful_job_operations_jobs_total{operation_type=\"process_job\", job=\"$meter_service\", operation_job_type=\"StateTransition\"})", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "D" + } + ], + "title": "Successful Process Jobs over time (since last start)", + "transparent": true, + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "description": "grouped by job_type", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 24 + }, + "id": 21, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "11.3.1", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "failed_job_operations_jobs_total{operation_type=\"process_job\", job=\"$meter_service\", operation_job_type=\"SnosRun\" }", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "failed_job_operations_jobs_total{operation_type=\"process_job\", job=\"$meter_service\", operation_job_type=\"ProofCreation\" }", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "B" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "failed_job_operations_jobs_total{operation_type=\"process_job\", job=\"$meter_service\", operation_job_type=\"DataSubmission\" }", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "C" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "failed_job_operations_jobs_total{operation_type=\"process_job\", job=\"$meter_service\", operation_job_type=\"StateTransition\" }", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "D" + } + ], + "title": "Failed Process Jobs over time", + "transparent": true, + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "description": "grouped by job_type", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 32 + }, + "id": 10, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "11.3.1", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "successful_job_operations_jobs_total{operation_type=\"verify_job\", job=\"$meter_service\", operation_job_type=\"SnosRun\", operation_verification_status=\"Verified\"}", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "Snos" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "successful_job_operations_jobs_total{operation_type=\"verify_job\", job=\"$meter_service\", operation_job_type=\"ProofCreation\", operation_verification_status=\"Verified\"}", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "ProofCreation" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "successful_job_operations_jobs_total{operation_type=\"verify_job\", job=\"$meter_service\", operation_job_type=\"DataSubmission\", operation_verification_status=\"Verified\"}", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "DataSubmission" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "successful_job_operations_jobs_total{operation_type=\"verify_job\", job=\"$meter_service\", operation_job_type=\"StateTransition\", operation_verification_status=\"Verified\"}", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "StateTransition" + } + ], + "title": "Successful Verify Jobs over time (since last start)", + "transparent": true, + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "description": "grouped by job_type", + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 32 + }, + "id": 22, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "11.3.1", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "failed_job_operations_jobs_total{operation_type=\"verify_job\", job=\"$meter_service\", operation_job_type=\"SnosRun\", operation_verification_status=\"Rejected\"}", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "A" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "failed_job_operations_jobs_total{operation_type=\"verify_job\", job=\"$meter_service\", operation_job_type=\"ProofCreation\", operation_verification_status=\"Rejected\"}", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "B" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "failed_job_operations_jobs_total{operation_type=\"verify_job\", job=\"$meter_service\", operation_job_type=\"DataSubmission\", operation_verification_status=\"Rejected\"}", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "C" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "editorMode": "code", + "expr": "failed_job_operations_jobs_total{operation_type=\"verify_job\", job=\"$meter_service\", operation_job_type=\"StateTransition\", operation_verification_status=\"Rejected\"}", + "hide": false, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "D" + } + ], + "title": "Failed Verify Jobs over time", + "transparent": true, + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "s", + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 40 + }, + "id": 16, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "11.3.1", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "jobs_response_time_seconds{job=\"$meter_service\", operation_type=\"create_job\"}", + "fullMetaSearch": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "A", + "useBackend": false + } + ], + "title": "Create Job response time over time", + "transparent": true, + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "s", + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 40 + }, + "id": 15, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "11.3.1", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "jobs_response_time_seconds{job=\"$meter_service\", operation_type=\"process_job\"}", + "fullMetaSearch": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "A", + "useBackend": false + } + ], + "title": "Process Job response time over time", + "transparent": true, + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "s", + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 48 + }, + "id": 17, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "11.3.1", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "jobs_response_time_seconds{job=\"$meter_service\", operation_type=\"verify_job\", operation_verification_status=\"Verified\"}", + "fullMetaSearch": false, + "includeNullMetadata": true, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "A", + "useBackend": false + } + ], + "title": "Verify Job response time over time", + "transparent": true, + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "fieldMinMax": false, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "s", + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 48 + }, + "id": 14, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "pluginVersion": "10.3.3", + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "quantile(0.99, db_calls_response_time_seconds{job=\"$meter_service\", db_operation_name=\"update_job\"})", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "update_job", + "range": true, + "refId": "update_job", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "quantile(0.99, db_calls_response_time_seconds{job=\"$meter_service\", db_operation_name=\"create_job\"})", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "create_job", + "range": true, + "refId": "create_job", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "quantile(0.99, db_calls_response_time_seconds{job=\"$meter_service\", db_operation_name=\"get_job_by_id\"})", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "get_job_by_id", + "range": true, + "refId": "get_job_by_id", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "quantile(0.99, db_calls_response_time_seconds{job=\"$meter_service\", db_operation_name=\"get_job_by_internal_id_and_type\"})", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "get_job_by_internal_id_and_type", + "range": true, + "refId": "get_job_by_internal_id_and_type", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "quantile(0.99, db_calls_response_time_seconds{job=\"$meter_service\", db_operation_name=\"get_latest_job_by_type\"})", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "get_latest_job_by_type", + "range": true, + "refId": "get_latest_job_by_type", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "quantile(0.99, db_calls_response_time_seconds{job=\"$meter_service\", db_operation_name=\"get_jobs_without_successor\"})", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "get_jobs_without_successor", + "range": true, + "refId": "get_jobs_without_successor", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "quantile(0.99, db_calls_response_time_seconds{job=\"$meter_service\", db_operation_name=\"get_latest_job_by_type_and_status\"})", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "get_latest_job_by_type_and_status", + "range": true, + "refId": "get_latest_job_by_type_and_status", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "quantile(0.99, db_calls_response_time_seconds{job=\"$meter_service\", db_operation_name=\"get_jobs_after_internal_id_by_job_type\"})", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "get_jobs_after_internal_id_by_job_type", + "range": true, + "refId": "get_jobs_after_internal_id_by_job_type", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "quantile(0.99, db_calls_response_time_seconds{job=\"$meter_service\", db_operation_name=\"get_jobs_by_statuses\"})", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "get_jobs_by_statuses", + "range": true, + "refId": "get_jobs_by_statuses", + "useBackend": false + } + ], + "title": "Response time of DB queries (per method)", + "transparent": true, + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unit": "ms", + "unitScale": true + }, + "overrides": [ + { + "__systemRef": "hideSeriesFrom", + "matcher": { + "id": "byNames", + "options": { + "mode": "exclude", + "names": [ + "ProofCreation" + ], + "prefix": "All except:", + "readOnly": true + } + }, + "properties": [ + { + "id": "custom.hideFrom", + "value": { + "legend": false, + "tooltip": false, + "viz": true + } + } + ] + } + ] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 0, + "y": 56 + }, + "id": 23, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "builder", + "expr": "verification_time_milliseconds{operation_job_type=\"ProofCreation\", job=\"$meter_service\"}", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "A", + "useBackend": false + } + ], + "title": "Verification time for Proof Creation", + "transparent": true, + "type": "timeseries" + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "fieldConfig": { + "defaults": { + "color": { + "mode": "palette-classic" + }, + "custom": { + "axisBorderShow": false, + "axisCenteredZero": false, + "axisColorMode": "text", + "axisLabel": "", + "axisPlacement": "auto", + "barAlignment": 0, + "drawStyle": "line", + "fillOpacity": 0, + "gradientMode": "none", + "hideFrom": { + "legend": false, + "tooltip": false, + "viz": false + }, + "insertNulls": false, + "lineInterpolation": "linear", + "lineWidth": 1, + "pointSize": 5, + "scaleDistribution": { + "type": "linear" + }, + "showPoints": "auto", + "spanNulls": false, + "stacking": { + "group": "A", + "mode": "none" + }, + "thresholdsStyle": { + "mode": "off" + } + }, + "mappings": [], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + }, + { + "color": "red", + "value": 80 + } + ] + }, + "unitScale": true + }, + "overrides": [] + }, + "gridPos": { + "h": 8, + "w": 12, + "x": 12, + "y": 56 + }, + "id": 24, + "options": { + "legend": { + "calcs": [], + "displayMode": "list", + "placement": "bottom", + "showLegend": true + }, + "tooltip": { + "mode": "single", + "sort": "none" + } + }, + "targets": [ + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "failed_jobs_total{job=\"$meter_service\"}", + "fullMetaSearch": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "A", + "useBackend": false + }, + { + "datasource": { + "type": "prometheus", + "uid": "prometheus" + }, + "disableTextWrap": false, + "editorMode": "code", + "expr": "successful_job_operations_jobs_total{operation_type=\"verify_job\", job=\"$meter_service\", operation_job_status=\"VerificationTimeout\"}", + "fullMetaSearch": false, + "hide": false, + "includeNullMetadata": true, + "instant": false, + "legendFormat": "{{operation_job_type}}", + "range": true, + "refId": "B", + "useBackend": false + } + ], + "title": "Failed Jobs", + "transparent": true, + "type": "timeseries" + } + ], + "refresh": "", + "schemaVersion": 39, + "tags": [], + "templating": { + "list": [ + { + "current": { + "selected": true, + "text": [ + "madara_orchestrator_meter_service" + ], + "value": [ + "madara_orchestrator_meter_service" + ] + }, + "description": "Name of the meter service that points to madara orchestrator you want to read.", + "hide": 0, + "includeAll": false, + "multi": true, + "name": "meter_service", + "options": [ + { + "selected": true, + "text": "madara_orchestrator_meter_service", + "value": "madara_orchestrator_meter_service" + } + ], + "query": "madara_orchestrator_meter_service", + "queryValue": "", + "skipUrlSync": false, + "type": "custom" + } + ] + }, + "time": { + "from": "now-6h", + "to": "now" + }, + "timepicker": {}, + "timezone": "browser", + "title": "Madara Orchestrator", + "uid": "fe607qql0bawwb", + "version": 24, + "weekStart": "" +} \ No newline at end of file diff --git a/dashboards/Signoz/dashboard_v1.json b/dashboards/Signoz/dashboard_v1.json new file mode 100644 index 000000000..04f782dbc --- /dev/null +++ b/dashboards/Signoz/dashboard_v1.json @@ -0,0 +1 @@ +{"description":"","image":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOCAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE0Ljk0OTQgMTMuOTQyQzE2LjIzMTggMTIuNDI1OCAxNy4zMjY4IDkuNzAyMiAxNi4xOTU2IDYuNTc0ODdDMTUuNjQ0MyA1LjA1MjQ1IDE1LjAyMTkgNC4yMDI0OSAxNC4yOTY5IDMuNjYyNTJDMTMuODU1NyAzLjMzMzc5IDEyLjA5MzMgMi41MDYzMyA5Ljc1OTY1IDIuODY3NTZDOC4wNTM0OSAzLjEzMjU1IDUuNzc0ODcgNC4yMDg3NCA0LjI5MzY5IDUuOTU5OUMyLjg1NzUyIDcuNjYxMDYgMS43NDg4MyA5LjAwNDc0IDEuNjk3NTggMTAuMzA5N0MxLjYzMTMzIDExLjk4ODMgMi44OTYyNyAxMy40MzA4IDMuMDUwMDEgMTMuNjY0NUMzLjMyMzc0IDE0LjA3OTUgNS4xOTExNSAxNi40NTE4IDguNjk5NzEgMTYuNTczMUMxMS43OTcgMTYuNjc5MyAxMy44MTQ0IDE1LjI4NDQgMTQuOTQ5NCAxMy45NDJaIiBmaWxsPSIjNDAzRDNFIi8+CjxwYXRoIGQ9Ik00LjU1MzYzIDIuNzM3NDdDMi45Mzc0NiAzLjg5MTE2IDEuMTIxMzEgNi4yNTEwMyAxLjQ0NzU0IDkuNTYwODZDMS42MDYyOCAxMS4xNzIgMi4wMDI1MSAxMi4xNDk1IDIuNTcxMjMgMTIuODUwN0MyLjkxNzQ2IDEzLjI3ODIgNC40MTk4OCAxNC41NDkzIDYuNzczNTEgMTQuNzM2OEM5LjE0NTg4IDE0LjkyNTYgMTAuOTQ5NSAxNC4zOTQ0IDEyLjgzMzIgMTMuMDg0NEMxNi42NjE3IDEwLjQyMDggMTYuMDk4IDYuMzkzNTMgMTUuOTM0MyA1LjkyNDhDMTUuNzcwNSA1LjQ1NjA3IDE0LjU0NDQgMi42OTYyMiAxMS4xNzMzIDEuNzE1MDJDOC4xOTg0NCAwLjg1MDA2OCA1Ljk4MzU1IDEuNzE1MDIgNC41NTM2MyAyLjczNzQ3WiIgZmlsbD0iIzVFNjM2NyIvPgo8cGF0aCBkPSJNNy4zOTM1MyAyLjk2MTA5QzUuNjE3MzcgMi44OTczNCAzLjkxOTk2IDQuMjg4NTIgMy43NTYyMiA2LjAwNTkzQzMuNTkyNDggNy43MjIwOSA0LjY1NDkyIDkuMDI5NTIgNi4zMDk4MyA5LjI5NTc2QzcuOTY0NzUgOS41NjA3NCA5Ljg3ODM5IDguNTU1OCAxMC4yNjM0IDYuNDUwOTFDMTAuNjYwOSA0LjI4MjI3IDkuMDg5NjkgMy4wMjIzNCA3LjM5MzUzIDIuOTYxMDlaIiBmaWxsPSJ3aGl0ZSIvPgo8cGF0aCBkPSJNNy45NDIxNyA1LjkwMTE1QzcuOTQyMTcgNS45MDExNSA4LjM2OTY1IDUuODEyNCA4LjQ1NDY1IDUuMTgyNDRDOC41MzgzOSA0LjU2MjQ3IDguMjMwOTEgNC4wMzM3NSA3LjUxMzQ1IDMuODQzNzZDNi43MzM0OSAzLjYzNzUyIDYuMjA0NzcgNC4wNjYyNSA2LjA2NzI3IDQuNTE3NDdDNS44NzYwMyA1LjE0NDk0IDYuMTU4NTIgNS40NDM2NyA2LjE1ODUyIDUuNDQzNjdDNi4xNTg1MiA1LjQ0MzY3IDUuMzkzNTYgNS42Mjc0MSA1LjMzMjMxIDYuNTI5ODdDNS4yNzQ4MSA3LjM4MTA3IDUuODU2MDMgNy44Mzg1NSA2LjQzOTc1IDcuOTc4NTRDNy4xNjA5NiA4LjE1MjI4IDcuOTc4NDIgNy45NTQ3OSA4LjE3ODQxIDcuMDM0ODRDOC4zNDQ2NSA2LjI3NzM4IDcuOTQyMTcgNS45MDExNSA3Ljk0MjE3IDUuOTAxMTVaIiBmaWxsPSIjMzAzMDMwIi8+CjxwYXRoIGQ9Ik02LjczOTgzIDQuNzUzNjJDNi42NzEwOSA1LjAxMjM1IDYuODA4NTggNS4yNjIzNCA3LjA3ODU3IDUuMzMxMDlDNy4zNjk4IDUuNDA0ODMgNy42MzQ3OSA1LjMwODU5IDcuNzA2MDMgNS4wMTExQzcuNzY4NTMgNC43NDczNyA3LjY0MzU0IDQuNTE0ODggNy4zMzYwNSA0LjQzOTg4QzcuMDgzNTcgNC4zNzczOSA2LjgxNDgzIDQuNDcxMTMgNi43Mzk4MyA0Ljc1MzYyWiIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTYuOTU5NzggNi4wMzk3NEM2LjYzMjMgNS45Mzg0OSA2LjE5OTgyIDYuMDY0NzMgNi4xMzEwNyA2LjUwNDcxQzYuMDYyMzMgNi45NDQ2OSA2LjMyNjA2IDcuMTY5NjggNi42NzEwNCA3LjIzMjE3QzcuMDE2MDMgNy4yOTQ2NyA3LjM0MjI2IDcuMTEzNDMgNy40MDYwMSA2Ljc2MDk1QzcuNDY4NSA2LjQwOTcyIDcuMjg2MDEgNi4xMzk3MyA2Ljk1OTc4IDYuMDM5NzRaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K","layout":[{"h":3,"i":"95ae0f34-7549-4326-8466-59ec8dc43b58","moved":false,"static":false,"w":6,"x":0,"y":0},{"h":3,"i":"5aaa91f0-fc96-475e-9fa0-48b8d06cc9d0","moved":false,"static":false,"w":6,"x":6,"y":0},{"h":3,"i":"4abf8837-8cff-4b95-afd5-9018745a495e","moved":false,"static":false,"w":6,"x":0,"y":3},{"h":3,"i":"7eaaf707-a1c7-4746-9f86-d0094d5a57b9","moved":false,"static":false,"w":6,"x":6,"y":3},{"h":6,"i":"86fa0de8-ddfb-4d09-bf4f-9abeaf855e02","moved":false,"static":false,"w":6,"x":0,"y":6},{"h":6,"i":"a481d717-45b1-4448-98e9-d4a25563c1c9","moved":false,"static":false,"w":6,"x":6,"y":6},{"h":6,"i":"5d9fc982-dc83-4376-a844-fd9429ba96fa","moved":false,"static":false,"w":6,"x":0,"y":12},{"h":6,"i":"c1bfe0d2-0041-4d9f-a3b3-42c3e2a67f8d","moved":false,"static":false,"w":6,"x":6,"y":12},{"h":6,"i":"5c52db3c-2cc8-4be3-b2ec-a6f921688852","moved":false,"static":false,"w":6,"x":0,"y":18},{"h":6,"i":"5ae29dd7-0a41-45ab-8f44-86f9069c2628","moved":false,"static":false,"w":6,"x":6,"y":18},{"h":6,"i":"3b5823ac-e687-41e4-a10d-b790750c546f","moved":false,"static":false,"w":6,"x":0,"y":24},{"h":6,"i":"921a283c-1f4f-43b4-b5ee-97e157d6c823","moved":false,"static":false,"w":6,"x":6,"y":24},{"h":6,"i":"118635f9-1e66-4b6f-bc2d-7e3be33cb833","moved":false,"static":false,"w":6,"x":0,"y":30},{"h":6,"i":"276754a6-f25f-42ed-8c22-e5c8e5a2496b","moved":false,"static":false,"w":6,"x":6,"y":30},{"h":10,"i":"05bebde2-253d-4a44-9329-564797d76b57","moved":false,"static":false,"w":6,"x":0,"y":36},{"h":10,"i":"ac2b07e0-d276-4925-865a-1171188f0be3","moved":false,"static":false,"w":6,"x":6,"y":36}],"panelMap":{},"tags":[],"title":"Madara Orchestrator","uploadedGrafana":false,"uuid":"196b73ad-6ca4-491e-9ead-bef5c262c1af","variables":{"1c4cb217-e113-49ca-97ec-a8e340ff72a2":{"allSelected":false,"customValue":"orch_logs_service","description":"","id":"1c4cb217-e113-49ca-97ec-a8e340ff72a2","key":"1c4cb217-e113-49ca-97ec-a8e340ff72a2","modificationUUID":"02d44214-c9da-4a71-97fb-da22b3a5888e","multiSelect":false,"name":"logs_service","order":0,"queryValue":"","selectedValue":"orch_logs_service","showALLOption":false,"sort":"DISABLED","textboxValue":"","type":"CUSTOM"},"b3d38cb1-b6a3-4619-8c60-a05d8cf3d819":{"allSelected":false,"customValue":"orch_trace_service","description":"","id":"b3d38cb1-b6a3-4619-8c60-a05d8cf3d819","key":"b3d38cb1-b6a3-4619-8c60-a05d8cf3d819","modificationUUID":"c8018422-214a-48fb-882d-0bbd97edc78d","multiSelect":false,"name":"trace_service","order":0,"queryValue":"","selectedValue":"orch_trace_service","showALLOption":false,"sort":"DISABLED","textboxValue":"samsung","type":"CUSTOM"},"d6aefe50-21f1-4167-b678-cb46c2274301":{"allSelected":false,"customValue":"orch_meter_service","description":"","id":"d6aefe50-21f1-4167-b678-cb46c2274301","modificationUUID":"3231cfcc-5176-40fc-af10-c1009bf18f8d","multiSelect":false,"name":"meter_service","order":0,"queryValue":"","selectedValue":"orch_meter_service","showALLOption":false,"sort":"DISABLED","textboxValue":"","type":"CUSTOM"},"fe6bf070-cd41-4419-bbda-0497d34b8f73":{"allSelected":false,"customValue":"1m","description":"","id":"fe6bf070-cd41-4419-bbda-0497d34b8f73","key":"fe6bf070-cd41-4419-bbda-0497d34b8f73","modificationUUID":"32fe52c3-f0c1-410f-a7c4-6e3fb33c9966","multiSelect":false,"name":"rate_interval","order":0,"queryValue":"","selectedValue":"1m","showALLOption":false,"sort":"DISABLED","textboxValue":"","type":"CUSTOM"}},"version":"v4","widgets":[{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"Grouped by job_type","fillSpans":false,"id":"5d9fc982-dc83-4376-a844-fd9429ba96fa","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"graph","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"","id":"------false","isColumn":false,"isJSON":false,"key":"","type":""},"aggregateOperator":"count","dataSource":"traces","disabled":false,"expression":"A","filters":{"items":[{"id":"a866a643","key":{"dataType":"bool","id":"hasError--bool--tag--true","isColumn":true,"isJSON":false,"key":"hasError","type":"tag"},"op":"=","value":"false"},{"id":"73358445","key":{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},"op":"=","value":"process_job"},{"id":"d5e1d238","key":{"dataType":"string","id":"service.name--string--resource--false","isColumn":false,"isJSON":false,"key":"service.name","type":"resource"},"op":"=","value":"$trace_service"}],"op":"AND"},"functions":[],"groupBy":[{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"}],"having":[],"legend":"","limit":null,"orderBy":[],"pageSize":10,"queryName":"A","reduceTo":"avg","spaceAggregation":"sum","stepInterval":60,"timeAggregation":"count"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"88da2277-7b2c-476b-9cea-b21952ca2799","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"Successful Process Jobs over time","yAxisUnit":"none"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"","fillSpans":false,"id":"ac2b07e0-d276-4925-865a-1171188f0be3","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"graph","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},"aggregateOperator":"p99","dataSource":"traces","disabled":false,"expression":"A","filters":{"items":[{"id":"815a5900","key":{"dataType":"string","id":"function_type--string--tag--false","isColumn":false,"isJSON":false,"key":"function_type","type":"tag"},"op":"=","value":"db_call"},{"id":"61f1516f","key":{"dataType":"string","id":"service.name--string--resource--false","isColumn":false,"isJSON":false,"key":"service.name","type":"resource"},"op":"=","value":"$trace_service"}],"op":"AND"},"functions":[],"groupBy":[{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"}],"having":[],"legend":"","limit":null,"orderBy":[],"queryName":"A","reduceTo":"avg","spaceAggregation":"sum","stepInterval":60,"timeAggregation":"p99"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"77cc1d13-4e51-460e-a0c4-311b9ef71792","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"DB - Response time of all DB queries","yAxisUnit":"ns"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"","fillSpans":false,"id":"05bebde2-253d-4a44-9329-564797d76b57","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"list","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"","id":"------false","isColumn":false,"isJSON":false,"key":"","type":""},"aggregateOperator":"noop","dataSource":"traces","disabled":false,"expression":"A","filters":{"items":[],"op":"AND"},"functions":[],"groupBy":[],"having":[],"legend":"","limit":null,"offset":0,"orderBy":[{"columnName":"durationNano","order":"desc"}],"pageSize":10,"queryName":"A","reduceTo":"avg","spaceAggregation":"sum","stepInterval":60,"timeAggregation":"rate"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"64e1ee31-78d5-42e1-a719-fa7e4538234a","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"timestamp","type":""},{"dataType":"string","name":"serviceName","type":"tag"},{"dataType":"string","name":"name","type":"tag"},{"dataType":"float64","name":"durationNano","type":"tag"},{"dataType":"string","name":"httpMethod","type":"tag"},{"dataType":"string","name":"responseStatusCode","type":"tag"}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isIndexed":false,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isIndexed":false,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isIndexed":false,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"internal_id--string--tag--false","isColumn":false,"isJSON":false,"key":"internal_id","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"Traces ordered by max time taken","yAxisUnit":"none"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"grouped by job_type","fillSpans":false,"id":"86fa0de8-ddfb-4d09-bf4f-9abeaf855e02","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"graph","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"","id":"------false","isColumn":false,"isJSON":false,"key":"","type":""},"aggregateOperator":"count","dataSource":"traces","disabled":false,"expression":"A","filters":{"items":[{"id":"ef022e34","key":{"dataType":"bool","id":"hasError--bool--tag--true","isColumn":true,"isJSON":false,"key":"hasError","type":"tag"},"op":"=","value":"false"},{"id":"76c0385f","key":{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},"op":"=","value":"create_job"},{"id":"4633a5bb","key":{"dataType":"string","id":"service.name--string--resource--false","isColumn":false,"isJSON":false,"key":"service.name","type":"resource"},"op":"=","value":"$trace_service"}],"op":"AND"},"functions":[],"groupBy":[{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"}],"having":[],"legend":"","limit":null,"orderBy":[],"pageSize":10,"queryName":"A","reduceTo":"avg","spaceAggregation":"sum","stepInterval":60,"timeAggregation":"count"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"904e216b-ec97-431d-ac1d-1ba5ceec7279","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"Successful Create Jobs over time","yAxisUnit":"none"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"grouped by job_type ","fillSpans":false,"id":"3b5823ac-e687-41e4-a10d-b790750c546f","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"graph","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},"aggregateOperator":"p99","dataSource":"traces","disabled":false,"expression":"A","filters":{"items":[{"id":"31d37e0b","key":{"dataType":"string","id":"category--string--tag--false","isColumn":false,"isJSON":false,"key":"category","type":"tag"},"op":"=","value":"general"},{"id":"d691fad6","key":{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},"op":"=","value":"process_job"},{"id":"5e609af1","key":{"dataType":"string","id":"service.name--string--resource--false","isColumn":false,"isJSON":false,"key":"service.name","type":"resource"},"op":"=","value":"$trace_service"}],"op":"AND"},"functions":[],"groupBy":[{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"}],"having":[],"legend":"","limit":null,"orderBy":[],"queryName":"A","reduceTo":"avg","spaceAggregation":"sum","stepInterval":60,"timeAggregation":"p99"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"a87786b3-cbfe-4161-a07c-aa7e8103bb2b","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"Process Job Response time over time","yAxisUnit":"ns"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"grouped by job_type","fillSpans":false,"id":"c1bfe0d2-0041-4d9f-a3b3-42c3e2a67f8d","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"graph","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"","id":"------false","isColumn":false,"isJSON":false,"key":"","type":""},"aggregateOperator":"count","dataSource":"traces","disabled":false,"expression":"A","filters":{"items":[{"id":"dcde70bc","key":{"dataType":"bool","id":"hasError--bool--tag--true","isColumn":true,"isJSON":false,"key":"hasError","type":"tag"},"op":"=","value":"true"},{"id":"4e35b33b","key":{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},"op":"=","value":"process_job"},{"id":"fe63a768","key":{"dataType":"string","id":"service.name--string--resource--false","isColumn":false,"isJSON":false,"key":"service.name","type":"resource"},"op":"=","value":"$trace_service"}],"op":"AND"},"functions":[],"groupBy":[{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"}],"having":[],"legend":"","limit":null,"orderBy":[],"pageSize":10,"queryName":"A","reduceTo":"avg","spaceAggregation":"sum","stepInterval":60,"timeAggregation":"count"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"55511cff-537e-40d8-a46a-e0bfd5b15929","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"Failed Process Jobs over time ","yAxisUnit":"none"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"grouped by job_type","fillSpans":false,"id":"5c52db3c-2cc8-4be3-b2ec-a6f921688852","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"graph","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"","id":"------false","isColumn":false,"isJSON":false,"key":"","type":""},"aggregateOperator":"count","dataSource":"traces","disabled":false,"expression":"A","filters":{"items":[{"id":"37bb065d","key":{"dataType":"bool","id":"hasError--bool--tag--true","isColumn":true,"isJSON":false,"key":"hasError","type":"tag"},"op":"=","value":"false"},{"id":"cf81e5b5","key":{"dataType":"string","id":"verification_status--string--tag--false","isColumn":false,"isJSON":false,"key":"verification_status","type":"tag"},"op":"=","value":"Verified"},{"id":"4a9f69e7","key":{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},"op":"=","value":"verify_job"}],"op":"AND"},"functions":[],"groupBy":[{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},{"dataType":"bool","id":"hasError--bool--tag--true","isColumn":true,"isJSON":false,"key":"hasError","type":"tag"}],"having":[],"legend":"","limit":null,"orderBy":[],"pageSize":10,"queryName":"A","reduceTo":"avg","spaceAggregation":"sum","stepInterval":60,"timeAggregation":"count"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"f4e86bf1-1e2d-44a2-aa47-6a6165c54841","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"Successful Verify Jobs over time","yAxisUnit":"none"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"grouped by job_type","fillSpans":false,"id":"5ae29dd7-0a41-45ab-8f44-86f9069c2628","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"graph","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"","id":"------false","isColumn":false,"isJSON":false,"key":"","type":""},"aggregateOperator":"count","dataSource":"traces","disabled":false,"expression":"A","filters":{"items":[{"id":"fd98f168","key":{"dataType":"bool","id":"hasError--bool--tag--true","isColumn":true,"isJSON":false,"key":"hasError","type":"tag"},"op":"=","value":"true"},{"id":"da0b1fac","key":{"dataType":"string","id":"verification_status--string--tag--false","isColumn":false,"isJSON":false,"key":"verification_status","type":"tag"},"op":"=","value":"Pending"},{"id":"b0082ce8","key":{"dataType":"string","id":"verification_status--string--tag--false","isColumn":false,"isJSON":false,"key":"verification_status","type":"tag"},"op":"=","value":"Failed"},{"id":"60f24ab7","key":{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},"op":"=","value":"verify_job"},{"id":"b187444b","key":{"dataType":"string","id":"service.name--string--resource--false","isColumn":false,"isJSON":false,"key":"service.name","type":"resource"},"op":"=","value":"$trace_service"}],"op":"AND"},"functions":[],"groupBy":[{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},{"dataType":"bool","id":"hasError--bool--tag--true","isColumn":true,"isJSON":false,"key":"hasError","type":"tag"}],"having":[],"legend":"","limit":null,"orderBy":[],"pageSize":10,"queryName":"A","reduceTo":"avg","spaceAggregation":"sum","stepInterval":60,"timeAggregation":"count"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"594cec66-54bb-43e9-b88b-4e11f293f584","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"Failed Verify Jobs over time","yAxisUnit":"none"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"grouped by job_type","fillSpans":false,"id":"a481d717-45b1-4448-98e9-d4a25563c1c9","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"graph","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"","id":"------false","isColumn":false,"isJSON":false,"key":"","type":""},"aggregateOperator":"count","dataSource":"traces","disabled":false,"expression":"A","filters":{"items":[{"id":"f80e61b6","key":{"dataType":"bool","id":"hasError--bool--tag--true","isColumn":true,"isJSON":false,"key":"hasError","type":"tag"},"op":"=","value":"true"},{"id":"c4ac2eab","key":{"dataType":"string","id":"service.name--string--resource--false","isColumn":false,"isJSON":false,"key":"service.name","type":"resource"},"op":"=","value":"$trace_service"},{"id":"c6510231","key":{"dataType":"string","id":"statusMessage--string--tag--true","isColumn":true,"isJSON":false,"key":"statusMessage","type":"tag"},"op":"ncontains","value":"Job already exists for internal_id "}],"op":"AND"},"functions":[],"groupBy":[{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"}],"having":[],"legend":"","limit":null,"orderBy":[],"pageSize":10,"queryName":"A","reduceTo":"avg","spaceAggregation":"sum","stepInterval":60,"timeAggregation":"count"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"527efad0-e622-40a2-8875-d6739835edac","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"Failed Create Jobs over time","yAxisUnit":"none"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"grouped by job_type","fillSpans":false,"id":"921a283c-1f4f-43b4-b5ee-97e157d6c823","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"graph","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},"aggregateOperator":"p99","dataSource":"traces","disabled":false,"expression":"A","filters":{"items":[{"id":"635a3249","key":{"dataType":"string","id":"category--string--tag--false","isColumn":false,"isJSON":false,"key":"category","type":"tag"},"op":"=","value":"general"},{"id":"ee7db263","key":{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},"op":"=","value":"verify_job"}],"op":"AND"},"functions":[],"groupBy":[{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"}],"having":[],"legend":"","limit":null,"orderBy":[],"queryName":"A","reduceTo":"avg","spaceAggregation":"sum","stepInterval":60,"timeAggregation":"p99"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"02fb6b55-dd47-4b3a-8bce-f47720f0a5df","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"Verify Job Response time over time","yAxisUnit":"ns"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"grouped by job_type ","fillSpans":false,"id":"118635f9-1e66-4b6f-bc2d-7e3be33cb833","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"graph","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},"aggregateOperator":"p99","dataSource":"traces","disabled":false,"expression":"A","filters":{"items":[{"id":"c4339fc2","key":{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},"op":"=","value":"create_job"},{"id":"0bd08f40","key":{"dataType":"string","id":"category--string--tag--false","isColumn":false,"isJSON":false,"key":"category","type":"tag"},"op":"=","value":"general"}],"op":"AND"},"functions":[],"groupBy":[{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"}],"having":[],"legend":"","limit":null,"orderBy":[],"queryName":"A","reduceTo":"avg","spaceAggregation":"sum","stepInterval":60,"timeAggregation":"p99"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"ccb172cc-529c-4932-8792-8e31556be3b1","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"Create Job Response time over time","yAxisUnit":"ns"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"","fillSpans":false,"id":"95ae0f34-7549-4326-8466-59ec8dc43b58","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"table","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"float64","id":"block_state--float64--Gauge--true","isColumn":true,"isJSON":false,"key":"block_state","type":"Gauge"},"aggregateOperator":"latest","dataSource":"metrics","disabled":false,"expression":"A","filters":{"items":[{"id":"68e0e8a2","key":{"dataType":"string","id":"type--string--tag--false","isColumn":false,"isJSON":false,"key":"type","type":"tag"},"op":"=","value":"create_job"},{"id":"22d72ce7","key":{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},"op":"=","value":"SnosRun"},{"id":"e3aae728","key":{"dataType":"string","id":"service_name--string--tag--false","isColumn":false,"isJSON":false,"key":"service_name","type":"tag"},"op":"=","value":"$meter_service"}],"op":"AND"},"functions":[],"groupBy":[],"having":[],"legend":"Create Job","limit":null,"orderBy":[],"queryName":"A","reduceTo":"last","spaceAggregation":"max","stepInterval":60,"timeAggregation":"latest"},{"aggregateAttribute":{"dataType":"float64","id":"block_state--float64--Gauge--true","isColumn":true,"isJSON":false,"key":"block_state","type":"Gauge"},"aggregateOperator":"latest","dataSource":"metrics","disabled":false,"expression":"B","filters":{"items":[{"id":"5f7fee51","key":{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},"op":"=","value":"SnosRun"},{"id":"1c9f686d","key":{"dataType":"string","id":"service_name--string--tag--false","isColumn":false,"isJSON":false,"key":"service_name","type":"tag"},"op":"=","value":"$meter_service"},{"id":"c7764b56","key":{"dataType":"string","id":"type--string--tag--false","isColumn":false,"isJSON":false,"key":"type","type":"tag"},"op":"=","value":"process_job"}],"op":"AND"},"functions":[],"groupBy":[],"having":[],"legend":"Process Job","limit":null,"orderBy":[],"queryName":"B","reduceTo":"last","spaceAggregation":"max","stepInterval":60,"timeAggregation":"latest"},{"aggregateAttribute":{"dataType":"float64","id":"block_state--float64--Gauge--true","isColumn":true,"isJSON":false,"key":"block_state","type":"Gauge"},"aggregateOperator":"latest","dataSource":"metrics","disabled":false,"expression":"C","filters":{"items":[{"id":"16cd29e9","key":{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},"op":"=","value":"SnosRun"},{"id":"1c27891d","key":{"dataType":"string","id":"service_name--string--tag--false","isColumn":false,"isJSON":false,"key":"service_name","type":"tag"},"op":"=","value":"$meter_service"},{"id":"9cd85b92","key":{"dataType":"string","id":"type--string--tag--false","isColumn":false,"isJSON":false,"key":"type","type":"tag"},"op":"=","value":"verify_job"}],"op":"AND"},"functions":[],"groupBy":[],"having":[],"legend":"Verify Job","limit":null,"orderBy":[],"queryName":"C","reduceTo":"last","spaceAggregation":"max","stepInterval":60,"timeAggregation":"latest"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"55c8bffe-a992-4712-8d13-f2f8f1c5e5fb","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"Snos - latest block completed per job","yAxisUnit":"none"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"","fillSpans":false,"id":"276754a6-f25f-42ed-8c22-e5c8e5a2496b","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"graph","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"","id":"------false","isColumn":false,"isJSON":false,"key":"","type":""},"aggregateOperator":"count","dataSource":"traces","disabled":false,"expression":"A","filters":{"items":[{"id":"55c61db7","key":{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},"op":"=","value":"handle_job_failure"},{"id":"2c371143","key":{"dataType":"string","id":"service.name--string--resource--false","isColumn":false,"isJSON":false,"key":"service.name","type":"resource"},"op":"=","value":"$trace_service"}],"op":"AND"},"functions":[],"groupBy":[{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},{"dataType":"string","id":"job_status--string--tag--false","isColumn":false,"isJSON":false,"key":"job_status","type":"tag"}],"having":[],"legend":"","limit":null,"orderBy":[],"pageSize":10,"queryName":"A","reduceTo":"avg","spaceAggregation":"sum","stepInterval":60,"timeAggregation":"rate"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"cf2f83de-7c06-4622-9d4f-2d8c44f5640c","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"Failed Jobs ","yAxisUnit":"none"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"","fillSpans":false,"id":"5aaa91f0-fc96-475e-9fa0-48b8d06cc9d0","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"table","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"float64","id":"block_state--float64--Gauge--true","isColumn":true,"isJSON":false,"key":"block_state","type":"Gauge"},"aggregateOperator":"latest","dataSource":"metrics","disabled":false,"expression":"A","filters":{"items":[{"id":"b9593b0e","key":{"dataType":"string","id":"type--string--tag--false","isColumn":false,"isJSON":false,"key":"type","type":"tag"},"op":"=","value":"create_job"},{"id":"ff75a817","key":{"dataType":"string","id":"service_name--string--tag--false","isColumn":false,"isJSON":false,"key":"service_name","type":"tag"},"op":"=","value":"$meter_service"},{"id":"81a95473","key":{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},"op":"=","value":"ProofCreation"}],"op":"AND"},"functions":[],"groupBy":[],"having":[],"legend":"Create Job","limit":null,"orderBy":[],"queryName":"A","reduceTo":"last","spaceAggregation":"max","stepInterval":60,"timeAggregation":"latest"},{"aggregateAttribute":{"dataType":"float64","id":"block_state--float64--Gauge--true","isColumn":true,"isJSON":false,"key":"block_state","type":"Gauge"},"aggregateOperator":"latest","dataSource":"metrics","disabled":false,"expression":"B","filters":{"items":[{"id":"e6cd02aa","key":{"dataType":"string","id":"service_name--string--tag--false","isColumn":false,"isJSON":false,"key":"service_name","type":"tag"},"op":"=","value":"$meter_service"},{"id":"bbf41648","key":{"dataType":"string","id":"type--string--tag--false","isColumn":false,"isJSON":false,"key":"type","type":"tag"},"op":"=","value":"process_job"},{"id":"ebff577b","key":{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},"op":"=","value":"ProofCreation"}],"op":"AND"},"functions":[],"groupBy":[],"having":[],"legend":"Process Job","limit":null,"orderBy":[],"queryName":"B","reduceTo":"last","spaceAggregation":"max","stepInterval":60,"timeAggregation":"latest"},{"aggregateAttribute":{"dataType":"float64","id":"block_state--float64--Gauge--true","isColumn":true,"isJSON":false,"key":"block_state","type":"Gauge"},"aggregateOperator":"latest","dataSource":"metrics","disabled":false,"expression":"C","filters":{"items":[{"id":"c80e41db","key":{"dataType":"string","id":"service_name--string--tag--false","isColumn":false,"isJSON":false,"key":"service_name","type":"tag"},"op":"=","value":"$meter_service"},{"id":"479d4383","key":{"dataType":"string","id":"type--string--tag--false","isColumn":false,"isJSON":false,"key":"type","type":"tag"},"op":"=","value":"verify_job"},{"id":"7d439982","key":{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},"op":"=","value":"ProofCreation"}],"op":"AND"},"functions":[],"groupBy":[],"having":[],"legend":"Verify Job","limit":null,"orderBy":[],"queryName":"C","reduceTo":"last","spaceAggregation":"max","stepInterval":60,"timeAggregation":"latest"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"8772fb94-236d-4004-a314-db6416745846","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"Proof Creation - latest block completed per job","yAxisUnit":"none"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"","fillSpans":false,"id":"4abf8837-8cff-4b95-afd5-9018745a495e","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"table","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"float64","id":"block_state--float64--Gauge--true","isColumn":true,"isJSON":false,"key":"block_state","type":"Gauge"},"aggregateOperator":"latest","dataSource":"metrics","disabled":false,"expression":"A","filters":{"items":[{"id":"b576ced2","key":{"dataType":"string","id":"type--string--tag--false","isColumn":false,"isJSON":false,"key":"type","type":"tag"},"op":"=","value":"create_job"},{"id":"a0451738","key":{"dataType":"string","id":"service_name--string--tag--false","isColumn":false,"isJSON":false,"key":"service_name","type":"tag"},"op":"=","value":"$meter_service"},{"id":"bb828117","key":{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},"op":"=","value":"DataSubmission"}],"op":"AND"},"functions":[],"groupBy":[],"having":[],"legend":"Create Job","limit":null,"orderBy":[],"queryName":"A","reduceTo":"last","spaceAggregation":"max","stepInterval":60,"timeAggregation":"latest"},{"aggregateAttribute":{"dataType":"float64","id":"block_state--float64--Gauge--true","isColumn":true,"isJSON":false,"key":"block_state","type":"Gauge"},"aggregateOperator":"latest","dataSource":"metrics","disabled":false,"expression":"B","filters":{"items":[{"id":"5295ccef","key":{"dataType":"string","id":"service_name--string--tag--false","isColumn":false,"isJSON":false,"key":"service_name","type":"tag"},"op":"=","value":"$meter_service"},{"id":"8bd49e34","key":{"dataType":"string","id":"type--string--tag--false","isColumn":false,"isJSON":false,"key":"type","type":"tag"},"op":"=","value":"process_job"},{"id":"10c0dea2","key":{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},"op":"=","value":"DataSubmission"}],"op":"AND"},"functions":[],"groupBy":[],"having":[],"legend":"Process Job","limit":null,"orderBy":[],"queryName":"B","reduceTo":"last","spaceAggregation":"max","stepInterval":60,"timeAggregation":"latest"},{"aggregateAttribute":{"dataType":"float64","id":"block_state--float64--Gauge--true","isColumn":true,"isJSON":false,"key":"block_state","type":"Gauge"},"aggregateOperator":"latest","dataSource":"metrics","disabled":false,"expression":"C","filters":{"items":[{"id":"fb9dffc8","key":{"dataType":"string","id":"service_name--string--tag--false","isColumn":false,"isJSON":false,"key":"service_name","type":"tag"},"op":"=","value":"$meter_service"},{"id":"19553d06","key":{"dataType":"string","id":"type--string--tag--false","isColumn":false,"isJSON":false,"key":"type","type":"tag"},"op":"=","value":"verify_job"},{"id":"553b70e8","key":{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},"op":"=","value":"DataSubmission"}],"op":"AND"},"functions":[],"groupBy":[],"having":[],"legend":"Verify Job","limit":null,"orderBy":[],"queryName":"C","reduceTo":"last","spaceAggregation":"max","stepInterval":60,"timeAggregation":"latest"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"98dca27c-ef28-4986-a3e6-5b4fc6472183","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"Data Submission - latest block completed per job","yAxisUnit":"none"},{"bucketCount":30,"bucketWidth":0,"columnUnits":{},"description":"","fillSpans":false,"id":"7eaaf707-a1c7-4746-9f86-d0094d5a57b9","isStacked":false,"mergeAllActiveQueries":false,"nullZeroValues":"zero","opacity":"1","panelTypes":"table","query":{"builder":{"queryData":[{"aggregateAttribute":{"dataType":"float64","id":"block_state--float64--Gauge--true","isColumn":true,"isJSON":false,"key":"block_state","type":"Gauge"},"aggregateOperator":"latest","dataSource":"metrics","disabled":false,"expression":"A","filters":{"items":[{"id":"82b1aff3","key":{"dataType":"string","id":"type--string--tag--false","isColumn":false,"isJSON":false,"key":"type","type":"tag"},"op":"=","value":"create_job"},{"id":"6702fb01","key":{"dataType":"string","id":"service_name--string--tag--false","isColumn":false,"isJSON":false,"key":"service_name","type":"tag"},"op":"=","value":"$meter_service"},{"id":"58722300","key":{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},"op":"=","value":"StateTransition"}],"op":"AND"},"functions":[],"groupBy":[],"having":[],"legend":"Create Job","limit":null,"orderBy":[],"queryName":"A","reduceTo":"last","spaceAggregation":"max","stepInterval":60,"timeAggregation":"latest"},{"aggregateAttribute":{"dataType":"float64","id":"block_state--float64--Gauge--true","isColumn":true,"isJSON":false,"key":"block_state","type":"Gauge"},"aggregateOperator":"latest","dataSource":"metrics","disabled":false,"expression":"B","filters":{"items":[{"id":"6f16f636","key":{"dataType":"string","id":"service_name--string--tag--false","isColumn":false,"isJSON":false,"key":"service_name","type":"tag"},"op":"=","value":"$meter_service"},{"id":"31dacb80","key":{"dataType":"string","id":"type--string--tag--false","isColumn":false,"isJSON":false,"key":"type","type":"tag"},"op":"=","value":"process_job"},{"id":"b10801ae","key":{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},"op":"=","value":"StateTransition"}],"op":"AND"},"functions":[],"groupBy":[],"having":[],"legend":"Process Job","limit":null,"orderBy":[],"queryName":"B","reduceTo":"last","spaceAggregation":"max","stepInterval":60,"timeAggregation":"latest"},{"aggregateAttribute":{"dataType":"float64","id":"block_state--float64--Gauge--true","isColumn":true,"isJSON":false,"key":"block_state","type":"Gauge"},"aggregateOperator":"latest","dataSource":"metrics","disabled":false,"expression":"C","filters":{"items":[{"id":"e39b4e27","key":{"dataType":"string","id":"service_name--string--tag--false","isColumn":false,"isJSON":false,"key":"service_name","type":"tag"},"op":"=","value":"$meter_service"},{"id":"44b4cd6e","key":{"dataType":"string","id":"type--string--tag--false","isColumn":false,"isJSON":false,"key":"type","type":"tag"},"op":"=","value":"verify_job"},{"id":"f3de1d16","key":{"dataType":"string","id":"job_type--string--tag--false","isColumn":false,"isJSON":false,"key":"job_type","type":"tag"},"op":"=","value":"StateTransition"}],"op":"AND"},"functions":[],"groupBy":[],"having":[],"legend":"Verify Job","limit":null,"orderBy":[],"queryName":"C","reduceTo":"last","spaceAggregation":"max","stepInterval":60,"timeAggregation":"latest"}],"queryFormulas":[]},"clickhouse_sql":[{"disabled":false,"legend":"","name":"A","query":""}],"id":"1eddb68e-f4f3-4e39-9c70-a53329beae1d","promql":[{"disabled":false,"legend":"","name":"A","query":""}],"queryType":"builder"},"selectedLogFields":[{"dataType":"string","name":"body","type":""},{"dataType":"string","name":"timestamp","type":""}],"selectedTracesFields":[{"dataType":"string","id":"serviceName--string--tag--true","isColumn":true,"isJSON":false,"key":"serviceName","type":"tag"},{"dataType":"string","id":"name--string--tag--true","isColumn":true,"isJSON":false,"key":"name","type":"tag"},{"dataType":"float64","id":"durationNano--float64--tag--true","isColumn":true,"isJSON":false,"key":"durationNano","type":"tag"},{"dataType":"string","id":"httpMethod--string--tag--true","isColumn":true,"isJSON":false,"key":"httpMethod","type":"tag"},{"dataType":"string","id":"responseStatusCode--string--tag--true","isColumn":true,"isJSON":false,"key":"responseStatusCode","type":"tag"}],"softMax":0,"softMin":0,"stackedBarChart":false,"thresholds":[],"timePreferance":"GLOBAL_TIME","title":"State Update - latest block completed per job","yAxisUnit":"none"}]} \ No newline at end of file diff --git a/docs/orchestrator_da_sequencer_diagram.png b/docs/orchestrator_da_sequencer_diagram.png new file mode 100644 index 000000000..ca13bb6e9 Binary files /dev/null and b/docs/orchestrator_da_sequencer_diagram.png differ diff --git a/docs/orchestrator_da_sequencer_diagram.txt b/docs/orchestrator_da_sequencer_diagram.txt new file mode 100644 index 000000000..b284410f1 --- /dev/null +++ b/docs/orchestrator_da_sequencer_diagram.txt @@ -0,0 +1,67 @@ +title Orchestrator Flow + + +==Job: SNOS execution== +orchestrator->Madara: get SNOS input +Madara --> orchestrator: input +orchestrator->CairoVM: execute SNOS +CairoVM-->orchestrator: Cairo PIE +orchestrator->DB:store PIE +DB-->orchestrator: ok +==Job Complete: SNOS execution== +opt with applicative recursion +loop check every X units of time +orchestrator->DB: PIEs of pending block +DB-->orchestrator: result +alt DA limit or max leaf limit is hit +orchestrator->CairoVM: get PIE of SNAR program +CairoVM-->orchestrator: PIE +orchestrator->DB: store PIE +DB-->orchestrator:ok +else limit not hit +note over orchestrator: do nothing +end +end +end +==JOB: Proving== +orchestrator->DB: get PIE of SNOS/SNAR from db_id +DB-->orchestrator: PIE +orchestrator->prover_api: submit PIE for proof creation +prover_api-->orchestrator: polling_id +group inside prover service (ignore for SHARP) +note over prover_api: aggregate multiple PIEs into\na single proof +prover_api->orchestrator: create job for proof submission +orchestrator-->prover_api: job_id +note over orchestrator: completed job to verify proof on chain +prover_api->orchestrator: polls for job status +orchestrator-->prover_api: success +note over prover_api: marks all PIEs with their polling_id as success +end +orchestrator->prover_api: polls over the polling_id and gets status +prover_api-->orchestrator: sucess +==Job Complete: Proving== +==Cron: Create jobs for state updates== +note over orchestrator: fetch last update_state job. if it's being processed\ndo nothing. if it's processed, create a job to process block n+1.\n\nthere might be optimisations possible to process multiple blocks in different jobs\nin parallel. however, this can cause complications in nonce management, so to\nstart with, we can do this sequentially as the bottleneck should ideally be\nthe proving +opt alt DA mode +==Job: DA Submission== +orchestrator->Madara: get state_udpate for block +Madara-->orchestrator: state_update +note over orchestrator: build blob +orchestrator->Alt DA: submit blob +Alt DA-->orchestrator: ok +==Job Complete: DA Submission== +end +==Job: Update State== +alt Eth DA +note over orchestrator: build state diffs similar to the alt DA +note over orchestrator: create equivalence proof between DA commitment\nand SNOS commitment +orchestrator->Settlement Layer: calldata for update state, blob data and equivalence proof in the same txn +else Starknet as DA +note over orchestrator: state diffs already in calldata of proof +orchestrator->Settlement Layer: calldata for update state +else Alt DA +note over orchestrator: create equivalence proof between DA commitment\nand SNOS commitment +orchestrator->Settlement Layer: calldata for update state and equivalence proof in same txn +end +DB-->orchestrator:ok +==Job Complete: Update State== \ No newline at end of file diff --git a/e2e-tests/Cargo.toml b/e2e-tests/Cargo.toml new file mode 100644 index 000000000..806c572ee --- /dev/null +++ b/e2e-tests/Cargo.toml @@ -0,0 +1,42 @@ +[package] +name = "e2e-tests" +version = "0.1.0" +edition = "2021" + +[dependencies] +alloy.workspace = true +alloy-sol-types.workspace = true +async-trait.workspace = true +aws-config.workspace = true +aws-sdk-eventbridge.workspace = true +aws-sdk-s3.workspace = true +aws-sdk-sqs.workspace = true +bytes.workspace = true +chrono = { workspace = true } +clap.workspace = true +color-eyre.workspace = true +dotenvy.workspace = true +env_logger.workspace = true +ethereum-settlement-client.workspace = true +httpmock.workspace = true +log.workspace = true +mongodb.workspace = true +orchestrator.workspace = true +reqwest = { workspace = true, features = ["json"] } +rstest.workspace = true +serde.workspace = true +serde_json.workspace = true +starknet.workspace = true +strum = { workspace = true } +strum_macros = { workspace = true } +testcontainers.workspace = true +tokio = { workspace = true, features = ["full"] } +tokio-stream.workspace = true +tokio-util.workspace = true +url.workspace = true +utils.workspace = true +uuid.workspace = true + +[[test]] +name = "test_orchestrator_workflow" +path = "tests.rs" diff --git a/e2e-tests/artifacts/contracts/GPSVerifier.json b/e2e-tests/artifacts/contracts/GPSVerifier.json new file mode 100644 index 000000000..bcb90bcb3 --- /dev/null +++ b/e2e-tests/artifacts/contracts/GPSVerifier.json @@ -0,0 +1,1044 @@ +{ + "bytecode": { + "functionDebugData": {}, + "generatedSources": [], + "linkReferences": {}, + "object": "6080604052348015600e575f80fd5b506101968061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610034575f3560e01c80635130ab5e146100385780636a93856714610054575b5f80fd5b610052600480360381019061004d9190610102565b610084565b005b61006e60048036038101906100699190610102565b6100af565b60405161007b9190610147565b60405180910390f35b60015f808381526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b5f602052805f5260405f205f915054906101000a900460ff1681565b5f80fd5b5f819050919050565b6100e1816100cf565b81146100eb575f80fd5b50565b5f813590506100fc816100d8565b92915050565b5f60208284031215610117576101166100cb565b5b5f610124848285016100ee565b91505092915050565b5f8115159050919050565b6101418161012d565b82525050565b5f60208201905061015a5f830184610138565b9291505056fea2646970667358221220c732037030438427e0018a3515259a1d06a60a7290d708549d5c853da0314fab64736f6c634300081a0033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH1 0xE JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH2 0x196 DUP1 PUSH2 0x1C PUSH0 CODECOPY PUSH0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0xF JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x34 JUMPI PUSH0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x5130AB5E EQ PUSH2 0x38 JUMPI DUP1 PUSH4 0x6A938567 EQ PUSH2 0x54 JUMPI JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH2 0x52 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4D SWAP2 SWAP1 PUSH2 0x102 JUMP JUMPDEST PUSH2 0x84 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x69 SWAP2 SWAP1 PUSH2 0x102 JUMP JUMPDEST PUSH2 0xAF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7B SWAP2 SWAP1 PUSH2 0x147 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 PUSH0 DUP1 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 MSTORE DUP1 PUSH0 MSTORE PUSH1 0x40 PUSH0 KECCAK256 PUSH0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xE1 DUP2 PUSH2 0xCF JUMP JUMPDEST DUP2 EQ PUSH2 0xEB JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFC DUP2 PUSH2 0xD8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x117 JUMPI PUSH2 0x116 PUSH2 0xCB JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x124 DUP5 DUP3 DUP6 ADD PUSH2 0xEE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x141 DUP2 PUSH2 0x12D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x15A PUSH0 DUP4 ADD DUP5 PUSH2 0x138 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xC7 ORIGIN SUB PUSH17 0x30438427E0018A3515259A1D06A60A7290 0xD7 ADDMOD SLOAD SWAP14 TLOAD DUP6 RETURNDATASIZE LOG0 BALANCE 0x4F 0xAB PUSH5 0x736F6C6343 STOP ADDMOD BYTE STOP CALLER ", + "sourceMap": "138:163:0:-:0;;;;;;;;;;;;;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@isValid_5": { + "entryPoint": 175, + "id": 5, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@setValid_17": { + "entryPoint": 132, + "id": 17, + "parameterSlots": 1, + "returnSlots": 0 + }, + "abi_decode_t_bytes32": { + "entryPoint": 238, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_bytes32": { + "entryPoint": 258, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 312, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 327, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 301, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bytes32": { + "entryPoint": 207, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": null, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 203, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "validator_revert_t_bytes32": { + "entryPoint": 216, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nativeSrc": "0:1449:1", + "nodeType": "YulBlock", + "src": "0:1449:1", + "statements": [ + { + "body": { + "nativeSrc": "47:35:1", + "nodeType": "YulBlock", + "src": "47:35:1", + "statements": [ + { + "nativeSrc": "57:19:1", + "nodeType": "YulAssignment", + "src": "57:19:1", + "value": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "73:2:1", + "nodeType": "YulLiteral", + "src": "73:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nativeSrc": "67:5:1", + "nodeType": "YulIdentifier", + "src": "67:5:1" + }, + "nativeSrc": "67:9:1", + "nodeType": "YulFunctionCall", + "src": "67:9:1" + }, + "variableNames": [ + { + "name": "memPtr", + "nativeSrc": "57:6:1", + "nodeType": "YulIdentifier", + "src": "57:6:1" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nativeSrc": "7:75:1", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nativeSrc": "40:6:1", + "nodeType": "YulTypedName", + "src": "40:6:1", + "type": "" + } + ], + "src": "7:75:1" + }, + { + "body": { + "nativeSrc": "177:28:1", + "nodeType": "YulBlock", + "src": "177:28:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "194:1:1", + "nodeType": "YulLiteral", + "src": "194:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "197:1:1", + "nodeType": "YulLiteral", + "src": "197:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "187:6:1", + "nodeType": "YulIdentifier", + "src": "187:6:1" + }, + "nativeSrc": "187:12:1", + "nodeType": "YulFunctionCall", + "src": "187:12:1" + }, + "nativeSrc": "187:12:1", + "nodeType": "YulExpressionStatement", + "src": "187:12:1" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "88:117:1", + "nodeType": "YulFunctionDefinition", + "src": "88:117:1" + }, + { + "body": { + "nativeSrc": "300:28:1", + "nodeType": "YulBlock", + "src": "300:28:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "317:1:1", + "nodeType": "YulLiteral", + "src": "317:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "320:1:1", + "nodeType": "YulLiteral", + "src": "320:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "310:6:1", + "nodeType": "YulIdentifier", + "src": "310:6:1" + }, + "nativeSrc": "310:12:1", + "nodeType": "YulFunctionCall", + "src": "310:12:1" + }, + "nativeSrc": "310:12:1", + "nodeType": "YulExpressionStatement", + "src": "310:12:1" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nativeSrc": "211:117:1", + "nodeType": "YulFunctionDefinition", + "src": "211:117:1" + }, + { + "body": { + "nativeSrc": "379:32:1", + "nodeType": "YulBlock", + "src": "379:32:1", + "statements": [ + { + "nativeSrc": "389:16:1", + "nodeType": "YulAssignment", + "src": "389:16:1", + "value": { + "name": "value", + "nativeSrc": "400:5:1", + "nodeType": "YulIdentifier", + "src": "400:5:1" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "389:7:1", + "nodeType": "YulIdentifier", + "src": "389:7:1" + } + ] + } + ] + }, + "name": "cleanup_t_bytes32", + "nativeSrc": "334:77:1", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "361:5:1", + "nodeType": "YulTypedName", + "src": "361:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "371:7:1", + "nodeType": "YulTypedName", + "src": "371:7:1", + "type": "" + } + ], + "src": "334:77:1" + }, + { + "body": { + "nativeSrc": "460:79:1", + "nodeType": "YulBlock", + "src": "460:79:1", + "statements": [ + { + "body": { + "nativeSrc": "517:16:1", + "nodeType": "YulBlock", + "src": "517:16:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nativeSrc": "526:1:1", + "nodeType": "YulLiteral", + "src": "526:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nativeSrc": "529:1:1", + "nodeType": "YulLiteral", + "src": "529:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nativeSrc": "519:6:1", + "nodeType": "YulIdentifier", + "src": "519:6:1" + }, + "nativeSrc": "519:12:1", + "nodeType": "YulFunctionCall", + "src": "519:12:1" + }, + "nativeSrc": "519:12:1", + "nodeType": "YulExpressionStatement", + "src": "519:12:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "483:5:1", + "nodeType": "YulIdentifier", + "src": "483:5:1" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "508:5:1", + "nodeType": "YulIdentifier", + "src": "508:5:1" + } + ], + "functionName": { + "name": "cleanup_t_bytes32", + "nativeSrc": "490:17:1", + "nodeType": "YulIdentifier", + "src": "490:17:1" + }, + "nativeSrc": "490:24:1", + "nodeType": "YulFunctionCall", + "src": "490:24:1" + } + ], + "functionName": { + "name": "eq", + "nativeSrc": "480:2:1", + "nodeType": "YulIdentifier", + "src": "480:2:1" + }, + "nativeSrc": "480:35:1", + "nodeType": "YulFunctionCall", + "src": "480:35:1" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "473:6:1", + "nodeType": "YulIdentifier", + "src": "473:6:1" + }, + "nativeSrc": "473:43:1", + "nodeType": "YulFunctionCall", + "src": "473:43:1" + }, + "nativeSrc": "470:63:1", + "nodeType": "YulIf", + "src": "470:63:1" + } + ] + }, + "name": "validator_revert_t_bytes32", + "nativeSrc": "417:122:1", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "453:5:1", + "nodeType": "YulTypedName", + "src": "453:5:1", + "type": "" + } + ], + "src": "417:122:1" + }, + { + "body": { + "nativeSrc": "597:87:1", + "nodeType": "YulBlock", + "src": "597:87:1", + "statements": [ + { + "nativeSrc": "607:29:1", + "nodeType": "YulAssignment", + "src": "607:29:1", + "value": { + "arguments": [ + { + "name": "offset", + "nativeSrc": "629:6:1", + "nodeType": "YulIdentifier", + "src": "629:6:1" + } + ], + "functionName": { + "name": "calldataload", + "nativeSrc": "616:12:1", + "nodeType": "YulIdentifier", + "src": "616:12:1" + }, + "nativeSrc": "616:20:1", + "nodeType": "YulFunctionCall", + "src": "616:20:1" + }, + "variableNames": [ + { + "name": "value", + "nativeSrc": "607:5:1", + "nodeType": "YulIdentifier", + "src": "607:5:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nativeSrc": "672:5:1", + "nodeType": "YulIdentifier", + "src": "672:5:1" + } + ], + "functionName": { + "name": "validator_revert_t_bytes32", + "nativeSrc": "645:26:1", + "nodeType": "YulIdentifier", + "src": "645:26:1" + }, + "nativeSrc": "645:33:1", + "nodeType": "YulFunctionCall", + "src": "645:33:1" + }, + "nativeSrc": "645:33:1", + "nodeType": "YulExpressionStatement", + "src": "645:33:1" + } + ] + }, + "name": "abi_decode_t_bytes32", + "nativeSrc": "545:139:1", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nativeSrc": "575:6:1", + "nodeType": "YulTypedName", + "src": "575:6:1", + "type": "" + }, + { + "name": "end", + "nativeSrc": "583:3:1", + "nodeType": "YulTypedName", + "src": "583:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nativeSrc": "591:5:1", + "nodeType": "YulTypedName", + "src": "591:5:1", + "type": "" + } + ], + "src": "545:139:1" + }, + { + "body": { + "nativeSrc": "756:263:1", + "nodeType": "YulBlock", + "src": "756:263:1", + "statements": [ + { + "body": { + "nativeSrc": "802:83:1", + "nodeType": "YulBlock", + "src": "802:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nativeSrc": "804:77:1", + "nodeType": "YulIdentifier", + "src": "804:77:1" + }, + "nativeSrc": "804:79:1", + "nodeType": "YulFunctionCall", + "src": "804:79:1" + }, + "nativeSrc": "804:79:1", + "nodeType": "YulExpressionStatement", + "src": "804:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nativeSrc": "777:7:1", + "nodeType": "YulIdentifier", + "src": "777:7:1" + }, + { + "name": "headStart", + "nativeSrc": "786:9:1", + "nodeType": "YulIdentifier", + "src": "786:9:1" + } + ], + "functionName": { + "name": "sub", + "nativeSrc": "773:3:1", + "nodeType": "YulIdentifier", + "src": "773:3:1" + }, + "nativeSrc": "773:23:1", + "nodeType": "YulFunctionCall", + "src": "773:23:1" + }, + { + "kind": "number", + "nativeSrc": "798:2:1", + "nodeType": "YulLiteral", + "src": "798:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nativeSrc": "769:3:1", + "nodeType": "YulIdentifier", + "src": "769:3:1" + }, + "nativeSrc": "769:32:1", + "nodeType": "YulFunctionCall", + "src": "769:32:1" + }, + "nativeSrc": "766:119:1", + "nodeType": "YulIf", + "src": "766:119:1" + }, + { + "nativeSrc": "895:117:1", + "nodeType": "YulBlock", + "src": "895:117:1", + "statements": [ + { + "nativeSrc": "910:15:1", + "nodeType": "YulVariableDeclaration", + "src": "910:15:1", + "value": { + "kind": "number", + "nativeSrc": "924:1:1", + "nodeType": "YulLiteral", + "src": "924:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nativeSrc": "914:6:1", + "nodeType": "YulTypedName", + "src": "914:6:1", + "type": "" + } + ] + }, + { + "nativeSrc": "939:63:1", + "nodeType": "YulAssignment", + "src": "939:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "974:9:1", + "nodeType": "YulIdentifier", + "src": "974:9:1" + }, + { + "name": "offset", + "nativeSrc": "985:6:1", + "nodeType": "YulIdentifier", + "src": "985:6:1" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "970:3:1", + "nodeType": "YulIdentifier", + "src": "970:3:1" + }, + "nativeSrc": "970:22:1", + "nodeType": "YulFunctionCall", + "src": "970:22:1" + }, + { + "name": "dataEnd", + "nativeSrc": "994:7:1", + "nodeType": "YulIdentifier", + "src": "994:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_bytes32", + "nativeSrc": "949:20:1", + "nodeType": "YulIdentifier", + "src": "949:20:1" + }, + "nativeSrc": "949:53:1", + "nodeType": "YulFunctionCall", + "src": "949:53:1" + }, + "variableNames": [ + { + "name": "value0", + "nativeSrc": "939:6:1", + "nodeType": "YulIdentifier", + "src": "939:6:1" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_bytes32", + "nativeSrc": "690:329:1", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "726:9:1", + "nodeType": "YulTypedName", + "src": "726:9:1", + "type": "" + }, + { + "name": "dataEnd", + "nativeSrc": "737:7:1", + "nodeType": "YulTypedName", + "src": "737:7:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nativeSrc": "749:6:1", + "nodeType": "YulTypedName", + "src": "749:6:1", + "type": "" + } + ], + "src": "690:329:1" + }, + { + "body": { + "nativeSrc": "1067:48:1", + "nodeType": "YulBlock", + "src": "1067:48:1", + "statements": [ + { + "nativeSrc": "1077:32:1", + "nodeType": "YulAssignment", + "src": "1077:32:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1102:5:1", + "nodeType": "YulIdentifier", + "src": "1102:5:1" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1095:6:1", + "nodeType": "YulIdentifier", + "src": "1095:6:1" + }, + "nativeSrc": "1095:13:1", + "nodeType": "YulFunctionCall", + "src": "1095:13:1" + } + ], + "functionName": { + "name": "iszero", + "nativeSrc": "1088:6:1", + "nodeType": "YulIdentifier", + "src": "1088:6:1" + }, + "nativeSrc": "1088:21:1", + "nodeType": "YulFunctionCall", + "src": "1088:21:1" + }, + "variableNames": [ + { + "name": "cleaned", + "nativeSrc": "1077:7:1", + "nodeType": "YulIdentifier", + "src": "1077:7:1" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nativeSrc": "1025:90:1", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1049:5:1", + "nodeType": "YulTypedName", + "src": "1049:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nativeSrc": "1059:7:1", + "nodeType": "YulTypedName", + "src": "1059:7:1", + "type": "" + } + ], + "src": "1025:90:1" + }, + { + "body": { + "nativeSrc": "1180:50:1", + "nodeType": "YulBlock", + "src": "1180:50:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nativeSrc": "1197:3:1", + "nodeType": "YulIdentifier", + "src": "1197:3:1" + }, + { + "arguments": [ + { + "name": "value", + "nativeSrc": "1217:5:1", + "nodeType": "YulIdentifier", + "src": "1217:5:1" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nativeSrc": "1202:14:1", + "nodeType": "YulIdentifier", + "src": "1202:14:1" + }, + "nativeSrc": "1202:21:1", + "nodeType": "YulFunctionCall", + "src": "1202:21:1" + } + ], + "functionName": { + "name": "mstore", + "nativeSrc": "1190:6:1", + "nodeType": "YulIdentifier", + "src": "1190:6:1" + }, + "nativeSrc": "1190:34:1", + "nodeType": "YulFunctionCall", + "src": "1190:34:1" + }, + "nativeSrc": "1190:34:1", + "nodeType": "YulExpressionStatement", + "src": "1190:34:1" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1121:109:1", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nativeSrc": "1168:5:1", + "nodeType": "YulTypedName", + "src": "1168:5:1", + "type": "" + }, + { + "name": "pos", + "nativeSrc": "1175:3:1", + "nodeType": "YulTypedName", + "src": "1175:3:1", + "type": "" + } + ], + "src": "1121:109:1" + }, + { + "body": { + "nativeSrc": "1328:118:1", + "nodeType": "YulBlock", + "src": "1328:118:1", + "statements": [ + { + "nativeSrc": "1338:26:1", + "nodeType": "YulAssignment", + "src": "1338:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1350:9:1", + "nodeType": "YulIdentifier", + "src": "1350:9:1" + }, + { + "kind": "number", + "nativeSrc": "1361:2:1", + "nodeType": "YulLiteral", + "src": "1361:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1346:3:1", + "nodeType": "YulIdentifier", + "src": "1346:3:1" + }, + "nativeSrc": "1346:18:1", + "nodeType": "YulFunctionCall", + "src": "1346:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nativeSrc": "1338:4:1", + "nodeType": "YulIdentifier", + "src": "1338:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nativeSrc": "1412:6:1", + "nodeType": "YulIdentifier", + "src": "1412:6:1" + }, + { + "arguments": [ + { + "name": "headStart", + "nativeSrc": "1425:9:1", + "nodeType": "YulIdentifier", + "src": "1425:9:1" + }, + { + "kind": "number", + "nativeSrc": "1436:1:1", + "nodeType": "YulLiteral", + "src": "1436:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nativeSrc": "1421:3:1", + "nodeType": "YulIdentifier", + "src": "1421:3:1" + }, + "nativeSrc": "1421:17:1", + "nodeType": "YulFunctionCall", + "src": "1421:17:1" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nativeSrc": "1374:37:1", + "nodeType": "YulIdentifier", + "src": "1374:37:1" + }, + "nativeSrc": "1374:65:1", + "nodeType": "YulFunctionCall", + "src": "1374:65:1" + }, + "nativeSrc": "1374:65:1", + "nodeType": "YulExpressionStatement", + "src": "1374:65:1" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nativeSrc": "1236:210:1", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nativeSrc": "1300:9:1", + "nodeType": "YulTypedName", + "src": "1300:9:1", + "type": "" + }, + { + "name": "value0", + "nativeSrc": "1312:6:1", + "nodeType": "YulTypedName", + "src": "1312:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nativeSrc": "1323:4:1", + "nodeType": "YulTypedName", + "src": "1323:4:1", + "type": "" + } + ], + "src": "1236:210:1" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_bytes32(value) {\n if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bytes32(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bytes32(value)\n }\n\n function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n}\n", + "id": 1, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561000f575f80fd5b5060043610610034575f3560e01c80635130ab5e146100385780636a93856714610054575b5f80fd5b610052600480360381019061004d9190610102565b610084565b005b61006e60048036038101906100699190610102565b6100af565b60405161007b9190610147565b60405180910390f35b60015f808381526020019081526020015f205f6101000a81548160ff02191690831515021790555050565b5f602052805f5260405f205f915054906101000a900460ff1681565b5f80fd5b5f819050919050565b6100e1816100cf565b81146100eb575f80fd5b50565b5f813590506100fc816100d8565b92915050565b5f60208284031215610117576101166100cb565b5b5f610124848285016100ee565b91505092915050565b5f8115159050919050565b6101418161012d565b82525050565b5f60208201905061015a5f830184610138565b9291505056fea2646970667358221220c732037030438427e0018a3515259a1d06a60a7290d708549d5c853da0314fab64736f6c634300081a0033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0xF JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x34 JUMPI PUSH0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x5130AB5E EQ PUSH2 0x38 JUMPI DUP1 PUSH4 0x6A938567 EQ PUSH2 0x54 JUMPI JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH2 0x52 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4D SWAP2 SWAP1 PUSH2 0x102 JUMP JUMPDEST PUSH2 0x84 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x69 SWAP2 SWAP1 PUSH2 0x102 JUMP JUMPDEST PUSH2 0xAF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7B SWAP2 SWAP1 PUSH2 0x147 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 PUSH0 DUP1 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 MSTORE DUP1 PUSH0 MSTORE PUSH1 0x40 PUSH0 KECCAK256 PUSH0 SWAP2 POP SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 JUMP JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xE1 DUP2 PUSH2 0xCF JUMP JUMPDEST DUP2 EQ PUSH2 0xEB JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0xFC DUP2 PUSH2 0xD8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x117 JUMPI PUSH2 0x116 PUSH2 0xCB JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x124 DUP5 DUP3 DUP6 ADD PUSH2 0xEE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x141 DUP2 PUSH2 0x12D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x15A PUSH0 DUP4 ADD DUP5 PUSH2 0x138 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xC7 ORIGIN SUB PUSH17 0x30438427E0018A3515259A1D06A60A7290 0xD7 ADDMOD SLOAD SWAP14 TLOAD DUP6 RETURNDATASIZE LOG0 BALANCE 0x4F 0xAB PUSH5 0x736F6C6343 STOP ADDMOD BYTE STOP CALLER ", + "sourceMap": "138:163:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;220:78;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;174:39;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;220:78;287:4;271:7;:13;279:4;271:13;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;220:78;:::o;174:39::-;;;;;;;;;;;;;;;;;;;;;;:::o;88:117:1:-;197:1;194;187:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:329::-;749:6;798:2;786:9;777:7;773:23;769:32;766:119;;;804:79;;:::i;:::-;766:119;924:1;949:53;994:7;985:6;974:9;970:22;949:53;:::i;:::-;939:63;;895:117;690:329;;;;:::o;1025:90::-;1059:7;1102:5;1095:13;1088:21;1077:32;;1025:90;;;:::o;1121:109::-;1202:21;1217:5;1202:21;:::i;:::-;1197:3;1190:34;1121:109;;:::o;1236:210::-;1323:4;1361:2;1350:9;1346:18;1338:26;;1374:65;1436:1;1425:9;1421:17;1412:6;1374:65;:::i;:::-;1236:210;;;;:::o" + }, + "gasEstimates": { + "creation": { + "codeDepositCost": "81200", + "executionCost": "127", + "totalCost": "81327" + }, + "external": { + "isValid(bytes32)": "2784", + "setValid(bytes32)": "24721" + } + }, + "methodIdentifiers": { + "isValid(bytes32)": "6a938567", + "setValid(bytes32)": "5130ab5e" + }, + "abi": [ + { + "inputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "name": "isValid", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "fact", + "type": "bytes32" + } + ], + "name": "setValid", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } + ] +} diff --git a/e2e-tests/artifacts/contracts/Starknet.json b/e2e-tests/artifacts/contracts/Starknet.json new file mode 100644 index 000000000..49ecf1e19 --- /dev/null +++ b/e2e-tests/artifacts/contracts/Starknet.json @@ -0,0 +1,1400 @@ +{ + "abi": [ + { + "type": "function", + "name": "aggregatorProgramHash", + "inputs": [], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "cancelL1ToL2Message", + "inputs": [ + { "name": "toAddress", "type": "uint256", "internalType": "uint256" }, + { "name": "selector", "type": "uint256", "internalType": "uint256" }, + { "name": "payload", "type": "uint256[]", "internalType": "uint256[]" }, + { "name": "nonce", "type": "uint256", "internalType": "uint256" } + ], + "outputs": [{ "name": "", "type": "bytes32", "internalType": "bytes32" }], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "configHash", + "inputs": [], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "consumeMessageFromL2", + "inputs": [ + { "name": "fromAddress", "type": "uint256", "internalType": "uint256" }, + { "name": "payload", "type": "uint256[]", "internalType": "uint256[]" } + ], + "outputs": [{ "name": "", "type": "bytes32", "internalType": "bytes32" }], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "getMaxL1MsgFee", + "inputs": [], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "identify", + "inputs": [], + "outputs": [{ "name": "", "type": "string", "internalType": "string" }], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "initializeContractState", + "inputs": [{ "name": "data", "type": "bytes", "internalType": "bytes" }], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "l1ToL2MessageCancellations", + "inputs": [ + { "name": "msgHash", "type": "bytes32", "internalType": "bytes32" } + ], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "l1ToL2MessageNonce", + "inputs": [], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "l1ToL2Messages", + "inputs": [ + { "name": "msgHash", "type": "bytes32", "internalType": "bytes32" } + ], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "l2ToL1Messages", + "inputs": [ + { "name": "msgHash", "type": "bytes32", "internalType": "bytes32" } + ], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "messageCancellationDelay", + "inputs": [], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "processSubContractAddresses", + "inputs": [ + { + "name": "subContractAddresses", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "programHash", + "inputs": [], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "sendMessageToL2", + "inputs": [ + { "name": "toAddress", "type": "uint256", "internalType": "uint256" }, + { "name": "selector", "type": "uint256", "internalType": "uint256" }, + { "name": "payload", "type": "uint256[]", "internalType": "uint256[]" } + ], + "outputs": [ + { "name": "", "type": "bytes32", "internalType": "bytes32" }, + { "name": "", "type": "uint256", "internalType": "uint256" } + ], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "setAggregatorProgramHash", + "inputs": [ + { + "name": "newAggregatorProgramHash", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setConfigHash", + "inputs": [ + { + "name": "newConfigHash", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setMessageCancellationDelay", + "inputs": [ + { + "name": "delayInSeconds", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setProgramHash", + "inputs": [ + { + "name": "newProgramHash", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "startL1ToL2MessageCancellation", + "inputs": [ + { "name": "toAddress", "type": "uint256", "internalType": "uint256" }, + { "name": "selector", "type": "uint256", "internalType": "uint256" }, + { "name": "payload", "type": "uint256[]", "internalType": "uint256[]" }, + { "name": "nonce", "type": "uint256", "internalType": "uint256" } + ], + "outputs": [{ "name": "", "type": "bytes32", "internalType": "bytes32" }], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "stateBlockHash", + "inputs": [], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "stateBlockNumber", + "inputs": [], + "outputs": [{ "name": "", "type": "int256", "internalType": "int256" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "stateRoot", + "inputs": [], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "updateState", + "inputs": [ + { + "name": "programOutput", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { + "name": "onchainDataHash", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "onchainDataSize", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "updateStateKzgDA", + "inputs": [ + { + "name": "programOutput", + "type": "uint256[]", + "internalType": "uint256[]" + }, + { "name": "kzgProofs", "type": "bytes[]", "internalType": "bytes[]" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "AggregatorProgramHashChanged", + "inputs": [ + { + "name": "changedBy", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "oldAggregatorProgramHash", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newAggregatorProgramHash", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ConfigHashChanged", + "inputs": [ + { + "name": "changedBy", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "oldConfigHash", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newConfigHash", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ConsumedMessageToL1", + "inputs": [ + { + "name": "fromAddress", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "toAddress", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "payload", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ConsumedMessageToL2", + "inputs": [ + { + "name": "fromAddress", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "toAddress", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "selector", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "payload", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "nonce", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LogMessageToL1", + "inputs": [ + { + "name": "fromAddress", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "toAddress", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "payload", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LogMessageToL2", + "inputs": [ + { + "name": "fromAddress", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "toAddress", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "selector", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "payload", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "nonce", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "fee", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LogStateTransitionFact", + "inputs": [ + { + "name": "stateTransitionFact", + "type": "bytes32", + "indexed": false, + "internalType": "bytes32" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LogStateUpdate", + "inputs": [ + { + "name": "globalRoot", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "blockNumber", + "type": "int256", + "indexed": false, + "internalType": "int256" + }, + { + "name": "blockHash", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MessageToL2Canceled", + "inputs": [ + { + "name": "fromAddress", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "toAddress", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "selector", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "payload", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "nonce", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MessageToL2CancellationStarted", + "inputs": [ + { + "name": "fromAddress", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "toAddress", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "selector", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "payload", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "nonce", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "ProgramHashChanged", + "inputs": [ + { + "name": "changedBy", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "oldProgramHash", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "newProgramHash", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + } + ], + "bytecode": { + "object": "0x6080604052348015600e575f80fd5b50612d238061001c5f395ff3fe608060405260043610610161575f3560e01c80638303bd8a116100cd578063a67f82a311610087578063e1f1176d11610062578063e1f1176d146103c6578063e87e7332146103da578063eb27feeb146103f9578063eeb728661461040d575f80fd5b8063a67f82a31461036a578063b5f5004c14610389578063c99d397f146103a7575f80fd5b80638303bd8a146102d15780638a9bf090146102e55780639020429c146102f95780639588eca2146103185780639be446bf1461032c578063a46efaf31461034b575f80fd5b8063507ee5281161011e578063507ee5281461021c57806354eccba41461023b5780636170ff1b14610255578063775526411461027457806377c7d7a9146102935780637a98660b146102b2575f80fd5b8063018cccdf146101655780632c9dd5c01461018c57806335befa5d146101ab578063382d83e3146101bf5780633d07b336146101d35780633e3aa6c5146101f4575b5f80fd5b348015610170575f80fd5b50610179610458565b6040519081526020015b60405180910390f35b348015610197575f80fd5b506101796101a63660046125e7565b61049c565b3480156101b6575f80fd5b506101796105b4565b3480156101ca575f80fd5b506101796105c6565b3480156101de575f80fd5b506101f26101ed36600461262f565b6105d8565b005b610207610202366004612646565b610625565b60408051928352602083019190915201610183565b348015610227575f80fd5b506101f2610236366004612695565b6107b5565b348015610246575f80fd5b50670de0b6b3a7640000610179565b348015610260575f80fd5b5061017961026f3660046126e9565b6108c1565b34801561027f575f80fd5b506101f261028e36600461273f565b610ad4565b34801561029e575f80fd5b506101796102ad36600461262f565b610bae565b3480156102bd575f80fd5b506101796102cc3660046126e9565b610bc7565b3480156102dc575f80fd5b50610179610ca0565b3480156102f0575f80fd5b50610179610cc2565b348015610304575f80fd5b506101f261031336600461262f565b610ce4565b348015610323575f80fd5b50610179610d2e565b348015610337575f80fd5b5061017961034636600461262f565b610d3d565b348015610356575f80fd5b5061017961036536600461262f565b610d46565b348015610375575f80fd5b506101f261038436600461278c565b610d4f565b348015610394575f80fd5b506101f26103a336600461278c565b5050565b3480156103b2575f80fd5b506101f26103c136600461262f565b610dca565b3480156103d1575f80fd5b50610179610dd3565b3480156103e5575f80fd5b506101f26103f436600461262f565b610df5565b348015610404575f80fd5b50610179610e3f565b348015610418575f80fd5b50604080518082018252601981527f537461726b576172655f537461726b6e65745f323032345f39000000000000006020820152905161018391906127fa565b5f6104976040518060400160405280602081526020017f535441524b4e45545f312e305f4d5347494e475f4c31544f4c325f4e4f4e4345815250610e5d565b905090565b6040515f9081906104b99086903390869088908290602001612856565b6040516020818303038152906040528051906020012090505f6104da610e90565b5f83815260209190915260409020541161053b5760405162461bcd60e51b815260206004820152601a60248201527f494e56414c49445f4d4553534147455f544f5f434f4e53554d4500000000000060448201526064015b60405180910390fd5b336001600160a01b0316857f7a06c571aa77f34d9706c51e5d8122b5595aebeaa34233bfe866f22befb973b186866040516105779291906128a4565b60405180910390a36001610589610e90565b5f8381526020019081526020015f205f8282546105a691906128cb565b909155509095945050505050565b5f6105bd610eb2565b60010154905090565b5f6105cf610eb2565b60020154905090565b337f393c6beb5756a944b2967f15f31ff671e312e945d7a84fd3bdcfd6b408b2dc79610602610dd3565b60408051918252602082018590520160405180910390a261062281610efb565b50565b5f805f34116106805760405162461bcd60e51b815260206004820152602160248201527f4c315f4d53475f4645455f4d5553545f42455f475245415445525f5448414e5f6044820152600360fc1b6064820152608401610532565b670de0b6b3a76400003411156106d85760405162461bcd60e51b815260206004820152601760248201527f4d41585f4c315f4d53475f4645455f45584345454445440000000000000000006044820152606401610532565b5f6106e1610458565b905061072e6040518060400160405280602081526020017f535441524b4e45545f312e305f4d5347494e475f4c31544f4c325f4e4f4e434581525082600161072991906128de565b610f19565b8587336001600160a01b03167fdb80dd488acf86d17c747445b0eabb5d57c541d3bd7b6b87af987858e5066b2b8888863460405161076f94939291906128f1565b60405180910390a45f6107858888888886610f4b565b90506107923460016128de565b61079a610f8b565b5f838152602091909152604090205597909650945050505050565b600a83116108015760405162461bcd60e51b815260206004820152601960248201527814d5105492d3915517d3d55514155517d513d3d7d4d213d495603a1b6044820152606401610532565b610815848461080e610eb2565b9190610fad565b8383600881811061082857610828612917565b905060200201356001146108775760405162461bcd60e51b8152602060048201526016602482015275554e45585045435445445f4b5a475f44415f464c414760501b6044820152606401610532565b61088e61088784600a818861292b565b8484611041565b5f61089985856116ab565b90506108a68585836116de565b6108ba85856108b3610eb2565b9190611aa9565b5050505050565b5f8486336001600160a01b03167f8abd2ec2e0a10c82f5b60ea00455fa96c41fd144f225fcc52b8d83d94f803ed887878760405161090193929190612956565b60405180910390a45f6109178787878787610f4b565b90505f610922610f8b565b5f838152602091909152604081205491508190036109795760405162461bcd60e51b81526020600482015260146024820152731393d7d35154d4d051d157d513d7d0d05390d15360621b6044820152606401610532565b5f610982611b0f565b5f848152602091909152604081205491508190036109ed5760405162461bcd60e51b815260206004820152602260248201527f4d4553534147455f43414e43454c4c4154494f4e5f4e4f545f52455155455354604482015261115160f21b6064820152608401610532565b5f6109f6610ca0565b610a0090836128de565b905081811015610a525760405162461bcd60e51b815260206004820152601c60248201527f43414e43454c5f414c4c4f5745445f54494d455f4f564552464c4f57000000006044820152606401610532565b80421015610aae5760405162461bcd60e51b8152602060048201526024808201527f4d4553534147455f43414e43454c4c4154494f4e5f4e4f545f414c4c4f57454460448201526317d6515560e21b6064820152608401610532565b5f610ab7610f8b565b5f8681526020919091526040902055509198975050505050505050565b600a8311610b205760405162461bcd60e51b815260206004820152601960248201527814d5105492d3915517d3d55514155517d513d3d7d4d213d495603a1b6044820152606401610532565b610b2d848461080e610eb2565b83836008818110610b4057610b40612917565b905060200201355f14610b8e5760405162461bcd60e51b8152602060048201526016602482015275554e45585045435445445f4b5a475f44415f464c414760501b6044820152606401610532565b5f6108998585604051806040016040528087815260200186815250611b31565b5f610bb7610f8b565b5f92835260205250604090205490565b5f8486336001600160a01b03167f2e00dccd686fd6823ec7dc3e125582aa82881b6ff5f6b5a73856e1ea8338a3be878787604051610c0793929190612956565b60405180910390a45f610c1d8787878787610f4b565b90505f610c28610f8b565b5f8381526020919091526040902054905080610c7d5760405162461bcd60e51b81526020600482015260146024820152731393d7d35154d4d051d157d513d7d0d05390d15360621b6044820152606401610532565b42610c86611b0f565b5f8481526020919091526040902055509695505050505050565b5f6104976040518060600160405280602d8152602001612c57602d9139610e5d565b5f610497604051806060016040528060238152602001612c3460239139610e5d565b337f07688623ef226ae0c2f88d3fdc7f6bb41427c804bcec3f36699b07148e3f5340610d0e610e3f565b60408051918252602082018590520160405180910390a261062281611ba6565b5f610d37610eb2565b54919050565b5f610bb7611b0f565b5f610bb7610e90565b5f80808080610d6086880188612979565b94509450945094509450610d7385611bc8565b610d7c84611ba6565b610d8583611bea565b610dac81610d91610eb2565b90805182556020810151600183015560400151600290910155565b610db582610efb565b610dc162069780611c0c565b50505050505050565b61062281611c0c565b5f610497604051806060016040528060218152602001612c8460219139610e5d565b337f600a61c1b32ac42fb2fe76e8fc7582a98106668fc16dcd85567cd3937363e49b610e1f610cc2565b60408051918252602082018590520160405180910390a261062281611bc8565b5f6104976040518060600160405280602e8152602001612c06602e91395b5f8082604051602001610e709190612a3f565b60408051601f198184030181529190528051602090910120549392505050565b5f610497604051806060016040528060238152602001612ca560239139611c2e565b5f80604051806060016040528060278152602001612bdf60279139604051602001610edd9190612a3f565b60408051601f19818403018152919052805160209091012092915050565b610622604051806060016040528060218152602001612c8460219139825b5f82604051602001610f2b9190612a3f565b604051602081830303815290604052805190602001209050818155505050565b6040515f90610f6a90339088908590899088908a908290602001612a51565b60405160208183030381529060405280519060200120905095945050505050565b5f610497604051806060016040528060268152602001612cc860269139611c2e565b5f83600101545f1903610fcc575067080000000000001160c01b610fd3565b5060018301545b8083836002818110610fe757610fe7612917565b905060200201351461103b5760405162461bcd60e51b815260206004820152601960248201527f494e56414c49445f505245565f424c4f434b5f4e554d424552000000000000006044820152606401610532565b50505050565b600283101561108a5760405162461bcd60e51b815260206004820152601560248201527412d691d7d4d151d351539517d513d3d7d4d213d495605a1b6044820152606401610532565b5f84845f81811061109d5761109d612917565b905060200201355f1b90505f858560018181106110bc576110bc612917565b9050602002013590505f8160026110d39190612a88565b6110de9060026128de565b905083821461112f5760405162461bcd60e51b815260206004820152601c60248201527f494e56414c49445f4e554d4245525f4f465f4b5a475f50524f4f4653000000006044820152606401610532565b61113a826002612a88565b61114490826128de565b86101561118b5760405162461bcd60e51b815260206004820152601560248201527412d691d7d4d151d351539517d513d3d7d4d213d495605a1b6044820152606401610532565b5f5b828110156116a15780495f8190036111dc5760405162461bcd60e51b81526020600482015260126024820152710929cac82989288be84989e84be929c888ab60731b6044820152606401610532565b600160f81b815f1a60f81b6001600160f81b0319161461123e5760405162461bcd60e51b815260206004820152601c60248201527f554e45585045435445445f424c4f425f484153485f56455253494f4e000000006044820152606401610532565b60605f8a8a61124e866002612a88565b6112599060026128de565b81811061126857611268612917565b9050602002013590505f8b8b8660026112819190612a88565b61128c9060026128de565b6112979060016128de565b8181106112a6576112a6612917565b9050602002013590506001600160c01b0380168211156113015760405162461bcd60e51b81526020600482015260166024820152751253959053125117d2d691d7d0d3d35352551351539560521b6044820152606401610532565b6001600160c01b038111156113515760405162461bcd60e51b81526020600482015260166024820152751253959053125117d2d691d7d0d3d35352551351539560521b6044820152606401610532565b6040805167ffffffffffffffff1992821b8316602082015292811b9091166038830152805180830360300181526050909201905290505f808b8b611396876002612a88565b6113a090896128de565b8181106113af576113af612917565b9050602002013590505f8c8c8760026113c89190612a88565b6113d2908a6128de565b6113dd9060016128de565b8181106113ec576113ec612917565b9050602002013590506001600160801b0380168211156114405760405162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f595f56414c554560881b6044820152606401610532565b6001600160801b038111156114895760405162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f595f56414c554560881b6044820152606401610532565b61149782608083901b6128de565b5f1b9250505060308989868181106114b1576114b1612917565b90506020028101906114c39190612a9f565b90501461150b5760405162461bcd60e51b8152602060048201526016602482015275494e56414c49445f4b5a475f50524f4f465f53495a4560501b6044820152606401610532565b5f80600a858a85878f8f8c81811061152557611525612917565b90506020028101906115379190612a9f565b60405160200161154c96959493929190612ae2565b60408051601f198184030181529082905261156691612a3f565b5f60405180830381855afa9150503d805f811461159e576040519150601f19603f3d011682016040523d82523d5f602084013e6115a3565b606091505b5091509150816116055760405162461bcd60e51b815260206004820152602760248201527f504f494e545f4556414c554154494f4e5f505245434f4d50494c455f43414c4c60448201526617d1905253115160ca1b6064820152608401610532565b805160208201207fb2157d3a40131b14c4c675335465dffde802f0ce5218ad012284d7f275d1b37c146116905760405162461bcd60e51b815260206004820152602d60248201527f554e45585045435445445f504f494e545f4556414c554154494f4e5f5052454360448201526c13d35412531157d3d555141555609a1b6064820152608401610532565b50506001909301925061118d915050565b5050505050505050565b5f82826040516020016116bf929190612b15565b6040516020818303038152906040528051906020012090505b92915050565b6116e88383611c60565b6116f0610dd3565b8383600781811061170357611703612917565b905060200201351461174d5760405162461bcd60e51b81526020600482015260136024820152720929cac82989288be869e9c8c928ebe9082a69606b1b6044820152606401610532565b8282600981811061176057611760612917565b905060200201355f146117b55760405162461bcd60e51b815260206004820152601960248201527f46554c4c5f4f55545055545f4e4f545f535550504f52544544000000000000006044820152606401610532565b5f838360068181106117c9576117c9612917565b905060200201355f14611864576117de610cc2565b848460068181106117f1576117f1612917565b90506020020135146118555760405162461bcd60e51b815260206004820152602760248201527f41474752454741544f525f4d4f44455f494e56414c49445f4f535f50524f47526044820152660829abe9082a6960cb1b6064820152608401610532565b61185d610e3f565b905061186f565b61186c610cc2565b90505b6040805160208082018490528183018590528251808303840181526060909201909252805191012061189f611cf3565b6001600160a01b0316636a938567826040518263ffffffff1660e01b81526004016118cc91815260200190565b602060405180830381865afa1580156118e7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061190b9190612b21565b6119575760405162461bcd60e51b815260206004820152601960248201527f4e4f5f53544154455f5452414e534954494f4e5f50524f4f46000000000000006044820152606401610532565b6040518381527f9866f8ddfe70bb512b2f2b28b49d4017c43f7ba775f1a20c61c13eea8cdac1119060200160405180910390a161199e8585611997610eb2565b9190611d15565b5f6119a98686611e99565b90506119c960016119bc8784818b61292b565b6119c4610e90565b611f34565b6119d390826128de565b90506119ed5f6119e58784818b61292b565b6119c4610f8b565b6119f790826128de565b9050848114611a485760405162461bcd60e51b815260206004820152601860248201527f535441524b4e45545f4f55545055545f544f4f5f4c4f4e4700000000000000006044820152606401610532565b5f611a51610eb2565b805460018201546002830154604080519384526020840192909252908201529091507fd342ddf7a308dec111745b00315c14b7efb2bdae570a6856e088ed0c65a3576c9060600160405180910390a150505050505050565b81816003818110611abc57611abc612917565b90506020020135836001015414611b0a5760405162461bcd60e51b81526020600482015260126024820152715245454e5452414e43595f4641494c55524560701b6044820152606401610532565b505050565b5f610497604051806060016040528060308152602001612baf60309139611c2e565b5f8281611b3e86836116ab565b90505f8183865f0151876020015186611b5791906128de565b6040805160208101959095528401929092526060830152608082015260a00160408051601f1981840301815291905280516020909101209050611b9b8160016128de565b979650505050505050565b6106226040518060600160405280602e8152602001612c06602e913982610f19565b610622604051806060016040528060238152602001612c346023913982610f19565b610622604051806060016040528060228152602001612b8d60229139826124ef565b6106226040518060600160405280602d8152602001612c57602d913982610f19565b5f8082604051602001611c419190612a3f565b60408051601f1981840301815291905280516020909101209392505050565b6001600167080000000000001160c01b01602083028401845b81811015611c995782813510611c91575f9350611c99565b602001611c79565b50505080611b0a5760405162461bcd60e51b815260206004820152602160248201527f50524f4752414d5f4f55545055545f56414c55455f4f55545f4f465f52414e476044820152604560f81b6064820152608401610532565b5f610497604051806060016040528060228152602001612b8d60229139610e5d565b611d20838383610fad565b5f82826003818110611d3457611d34612917565b90506020020135905083600101548113611d905760405162461bcd60e51b815260206004820152601860248201527f494e56414c49445f4e45575f424c4f434b5f4e554d42455200000000000000006044820152606401610532565b60018401819055600284015483836004818110611daf57611daf612917565b9050602002013514611e035760405162461bcd60e51b815260206004820152601760248201527f494e56414c49445f505245565f424c4f434b5f484153480000000000000000006044820152606401610532565b82826005818110611e1657611e16612917565b6020029190910135600286015550365f611e308585612547565b91509150611e3e8282612570565b865414611e855760405162461bcd60e51b81526020600482015260156024820152741253959053125117d41491559253d554d7d493d3d5605a1b6044820152606401610532565b611e8f8282612592565b9095555050505050565b5f82826008818110611ead57611ead612917565b905060200201355f03611ec25750600a6116d8565b5f8383611ed16001600a6128de565b818110611ee057611ee0612917565b905060200201359050806002611ef69190612a88565b611f01826002612a88565b611f0d600a60016128de565b611f189060016128de565b611f2291906128de565b611f2c91906128de565b949350505050565b5f8084845f818110611f4857611f48612917565b90506020020135905063400000008110611fa45760405162461bcd60e51b815260206004820152601c60248201527f494e56414c49445f4d4553534147455f5345474d454e545f53495a45000000006044820152606401610532565b60015f611fb183836128de565b90505f88611fc0576004611fc3565b60025b90505f5b828410156123ff575f611fda83866128de565b905088811061201f5760405162461bcd60e51b8152602060048201526011602482015270135154d4d051d157d513d3d7d4d213d495607a1b6044820152606401610532565b5f8a8a8381811061203257612032612917565b905060200201359050634000000081106120875760405162461bcd60e51b81526020600482015260166024820152750929cac82989288bea082b2989e8288be988a9c8ea8960531b6044820152606401610532565b5f816120948460016128de565b61209e91906128de565b90508a8111156120f05760405162461bcd60e51b815260206004820152601960248201527f5452554e43415445445f4d4553534147455f5041594c4f4144000000000000006044820152606401610532565b8c15612200575f8c8c899084926121099392919061292b565b60405160200161211a929190612b15565b6040516020818303038152906040528051906020012090508c8c60018a61214191906128de565b81811061215057612150612917565b905060200201356001600160a01b03168d8d5f8b61216e91906128de565b81811061217d5761217d612917565b905060200201357f4264ac208b5fde633ccdd42e0f12c3d6d443a4f3779bbf886925b94665b63a228f8f60038d6121b491906128de565b6121c09288929061292b565b6040516121ce9291906128a4565b60405180910390a35f81815260208c9052604081208054600192906121f49084906128de565b909155506123f5915050565b5f8c8c899084926122139392919061292b565b604051602001612224929190612b15565b60408051601f1981840301815291815281516020928301205f818152928e9052912054909150806122975760405162461bcd60e51b815260206004820152601a60248201527f494e56414c49445f4d4553534147455f544f5f434f4e53554d450000000000006044820152606401610532565b6122a26001826128cb565b6122ac90876128de565b5f92835260208d90526040832083905595508d90508c6122cd60028b6128de565b8181106122dc576122dc612917565b9050602002013590505f8d8d60058b6122f591906128de565b6123019286929061292b565b808060200260200160405190810160405280939291908181526020018383602002808284375f81840152601f19601f8201169050808301925050505050505090508d8d60038b61235191906128de565b81811061236057612360612917565b905060200201358e8e60018c61237691906128de565b81811061238557612385612917565b905060200201358f8f5f8d61239a91906128de565b8181106123a9576123a9612917565b905060200201356001600160a01b03167f9592d37825c744e33fa80c469683bbd04d336241bb600b574758efd182abe26a84866040516123ea929190612b40565b60405180910390a450505b9550611fc7915050565b82841461244e5760405162461bcd60e51b815260206004820152601c60248201527f494e56414c49445f4d4553534147455f5345474d454e545f53495a45000000006044820152606401610532565b80156124e1576040515f90339083908381818185875af1925050503d805f8114612493576040519150601f19603f3d011682016040523d82523d5f602084013e612498565b606091505b50509050806124df5760405162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b6044820152606401610532565b505b509198975050505050505050565b5f6124f983610e5d565b6001600160a01b03161461253d5760405162461bcd60e51b815260206004820152600b60248201526a1053149150511657d4d15560aa1b6044820152606401610532565b6103a38282610f19565b365f8381846125578260026128de565b926125649392919061292b565b915091505b9250929050565b5f82825f81811061258357612583612917565b90506020020135905092915050565b5f8282600181811061258357612583612917565b5f8083601f8401126125b6575f80fd5b50813567ffffffffffffffff8111156125cd575f80fd5b6020830191508360208260051b8501011115612569575f80fd5b5f805f604084860312156125f9575f80fd5b83359250602084013567ffffffffffffffff811115612616575f80fd5b612622868287016125a6565b9497909650939450505050565b5f6020828403121561263f575f80fd5b5035919050565b5f805f8060608587031215612659575f80fd5b8435935060208501359250604085013567ffffffffffffffff81111561267d575f80fd5b612689878288016125a6565b95989497509550505050565b5f805f80604085870312156126a8575f80fd5b843567ffffffffffffffff8111156126be575f80fd5b6126ca878288016125a6565b909550935050602085013567ffffffffffffffff81111561267d575f80fd5b5f805f805f608086880312156126fd575f80fd5b8535945060208601359350604086013567ffffffffffffffff811115612721575f80fd5b61272d888289016125a6565b96999598509660600135949350505050565b5f805f8060608587031215612752575f80fd5b843567ffffffffffffffff811115612768575f80fd5b612774878288016125a6565b90989097506020870135966040013595509350505050565b5f806020838503121561279d575f80fd5b823567ffffffffffffffff8111156127b3575f80fd5b8301601f810185136127c3575f80fd5b803567ffffffffffffffff8111156127d9575f80fd5b8560208284010111156127ea575f80fd5b6020919091019590945092505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f6001600160fb1b03831115612843575f80fd5b8260051b80838637939093019392505050565b8581528460208201528360408201525f611b9b60608301848661282f565b8183525f6001600160fb1b0383111561288b575f80fd5b8260051b80836020870137939093016020019392505050565b602081525f611f2c602083018486612874565b634e487b7160e01b5f52601160045260245ffd5b818103818111156116d8576116d86128b7565b808201808211156116d8576116d86128b7565b606081525f612904606083018688612874565b6020830194909452506040015292915050565b634e487b7160e01b5f52603260045260245ffd5b5f8085851115612939575f80fd5b83861115612945575f80fd5b5050600583901b0193919092039150565b604081525f612969604083018587612874565b9050826020830152949350505050565b5f805f805f85870360e081121561298e575f80fd5b863595506020870135945060408701356001600160a01b03811681146129b2575f80fd5b93506060878101359350607f19820112156129cb575f80fd5b506040516060810181811067ffffffffffffffff821117156129fb57634e487b7160e01b5f52604160045260245ffd5b60409081526080880135825260a0880135602083015260c090970135968101969096525092959194509290565b5f81518060208401855e5f93019283525090919050565b5f612a4a8284612a28565b9392505050565b8781528660208201528560408201528460608201528360808201525f612a7b60a08301848661282f565b9998505050505050505050565b80820281158282048414176116d8576116d86128b7565b5f808335601e19843603018112612ab4575f80fd5b83018035915067ffffffffffffffff821115612ace575f80fd5b602001915036819003821315612569575f80fd5b8681528560208201528460408201525f612aff6060830186612a28565b838582375f930192835250909695505050505050565b5f611f2c82848661282f565b5f60208284031215612b31575f80fd5b81518015158114612a4a575f80fd5b604080825283519082018190525f9060208501906060840190835b81811015612b79578351835260209384019390920191600101612b5b565b505060209390930193909352509291505056fe535441524b4e45545f312e305f494e49545f56455249464945525f41444452455353535441524b4e45545f312e305f4d5347494e475f4c31544f4c325f43414e43454c4c4154494f4e5f4d41505050494e47535441524b4e45545f312e305f494e49545f535441524b4e45545f53544154455f535452554354535441524b4e45545f312e305f494e49545f41474752454741544f525f50524f4752414d5f484153485f55494e54535441524b4e45545f312e305f494e49545f50524f4752414d5f484153485f55494e54535441524b4e45545f312e305f4d5347494e475f4c31544f4c325f43414e43454c4c4154494f4e5f44454c4159535441524b4e45545f312e305f535441524b4e45545f434f4e4649475f48415348535441524b4e45545f312e305f4d5347494e475f4c32544f4c315f4d41505050494e47535441524b4e45545f312e305f4d5347494e475f4c31544f4c325f4d41505050494e475f5632a264697066735822122016b88bf423ce3dd98fa2c2f4dcb6f6c1ccf9e142e97eeae23543cff7e8eb87fe64736f6c634300081a0033", + "sourceMap": "957:15585:3:-:0;;;;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x608060405260043610610161575f3560e01c80638303bd8a116100cd578063a67f82a311610087578063e1f1176d11610062578063e1f1176d146103c6578063e87e7332146103da578063eb27feeb146103f9578063eeb728661461040d575f80fd5b8063a67f82a31461036a578063b5f5004c14610389578063c99d397f146103a7575f80fd5b80638303bd8a146102d15780638a9bf090146102e55780639020429c146102f95780639588eca2146103185780639be446bf1461032c578063a46efaf31461034b575f80fd5b8063507ee5281161011e578063507ee5281461021c57806354eccba41461023b5780636170ff1b14610255578063775526411461027457806377c7d7a9146102935780637a98660b146102b2575f80fd5b8063018cccdf146101655780632c9dd5c01461018c57806335befa5d146101ab578063382d83e3146101bf5780633d07b336146101d35780633e3aa6c5146101f4575b5f80fd5b348015610170575f80fd5b50610179610458565b6040519081526020015b60405180910390f35b348015610197575f80fd5b506101796101a63660046125e7565b61049c565b3480156101b6575f80fd5b506101796105b4565b3480156101ca575f80fd5b506101796105c6565b3480156101de575f80fd5b506101f26101ed36600461262f565b6105d8565b005b610207610202366004612646565b610625565b60408051928352602083019190915201610183565b348015610227575f80fd5b506101f2610236366004612695565b6107b5565b348015610246575f80fd5b50670de0b6b3a7640000610179565b348015610260575f80fd5b5061017961026f3660046126e9565b6108c1565b34801561027f575f80fd5b506101f261028e36600461273f565b610ad4565b34801561029e575f80fd5b506101796102ad36600461262f565b610bae565b3480156102bd575f80fd5b506101796102cc3660046126e9565b610bc7565b3480156102dc575f80fd5b50610179610ca0565b3480156102f0575f80fd5b50610179610cc2565b348015610304575f80fd5b506101f261031336600461262f565b610ce4565b348015610323575f80fd5b50610179610d2e565b348015610337575f80fd5b5061017961034636600461262f565b610d3d565b348015610356575f80fd5b5061017961036536600461262f565b610d46565b348015610375575f80fd5b506101f261038436600461278c565b610d4f565b348015610394575f80fd5b506101f26103a336600461278c565b5050565b3480156103b2575f80fd5b506101f26103c136600461262f565b610dca565b3480156103d1575f80fd5b50610179610dd3565b3480156103e5575f80fd5b506101f26103f436600461262f565b610df5565b348015610404575f80fd5b50610179610e3f565b348015610418575f80fd5b50604080518082018252601981527f537461726b576172655f537461726b6e65745f323032345f39000000000000006020820152905161018391906127fa565b5f6104976040518060400160405280602081526020017f535441524b4e45545f312e305f4d5347494e475f4c31544f4c325f4e4f4e4345815250610e5d565b905090565b6040515f9081906104b99086903390869088908290602001612856565b6040516020818303038152906040528051906020012090505f6104da610e90565b5f83815260209190915260409020541161053b5760405162461bcd60e51b815260206004820152601a60248201527f494e56414c49445f4d4553534147455f544f5f434f4e53554d4500000000000060448201526064015b60405180910390fd5b336001600160a01b0316857f7a06c571aa77f34d9706c51e5d8122b5595aebeaa34233bfe866f22befb973b186866040516105779291906128a4565b60405180910390a36001610589610e90565b5f8381526020019081526020015f205f8282546105a691906128cb565b909155509095945050505050565b5f6105bd610eb2565b60010154905090565b5f6105cf610eb2565b60020154905090565b337f393c6beb5756a944b2967f15f31ff671e312e945d7a84fd3bdcfd6b408b2dc79610602610dd3565b60408051918252602082018590520160405180910390a261062281610efb565b50565b5f805f34116106805760405162461bcd60e51b815260206004820152602160248201527f4c315f4d53475f4645455f4d5553545f42455f475245415445525f5448414e5f6044820152600360fc1b6064820152608401610532565b670de0b6b3a76400003411156106d85760405162461bcd60e51b815260206004820152601760248201527f4d41585f4c315f4d53475f4645455f45584345454445440000000000000000006044820152606401610532565b5f6106e1610458565b905061072e6040518060400160405280602081526020017f535441524b4e45545f312e305f4d5347494e475f4c31544f4c325f4e4f4e434581525082600161072991906128de565b610f19565b8587336001600160a01b03167fdb80dd488acf86d17c747445b0eabb5d57c541d3bd7b6b87af987858e5066b2b8888863460405161076f94939291906128f1565b60405180910390a45f6107858888888886610f4b565b90506107923460016128de565b61079a610f8b565b5f838152602091909152604090205597909650945050505050565b600a83116108015760405162461bcd60e51b815260206004820152601960248201527814d5105492d3915517d3d55514155517d513d3d7d4d213d495603a1b6044820152606401610532565b610815848461080e610eb2565b9190610fad565b8383600881811061082857610828612917565b905060200201356001146108775760405162461bcd60e51b8152602060048201526016602482015275554e45585045435445445f4b5a475f44415f464c414760501b6044820152606401610532565b61088e61088784600a818861292b565b8484611041565b5f61089985856116ab565b90506108a68585836116de565b6108ba85856108b3610eb2565b9190611aa9565b5050505050565b5f8486336001600160a01b03167f8abd2ec2e0a10c82f5b60ea00455fa96c41fd144f225fcc52b8d83d94f803ed887878760405161090193929190612956565b60405180910390a45f6109178787878787610f4b565b90505f610922610f8b565b5f838152602091909152604081205491508190036109795760405162461bcd60e51b81526020600482015260146024820152731393d7d35154d4d051d157d513d7d0d05390d15360621b6044820152606401610532565b5f610982611b0f565b5f848152602091909152604081205491508190036109ed5760405162461bcd60e51b815260206004820152602260248201527f4d4553534147455f43414e43454c4c4154494f4e5f4e4f545f52455155455354604482015261115160f21b6064820152608401610532565b5f6109f6610ca0565b610a0090836128de565b905081811015610a525760405162461bcd60e51b815260206004820152601c60248201527f43414e43454c5f414c4c4f5745445f54494d455f4f564552464c4f57000000006044820152606401610532565b80421015610aae5760405162461bcd60e51b8152602060048201526024808201527f4d4553534147455f43414e43454c4c4154494f4e5f4e4f545f414c4c4f57454460448201526317d6515560e21b6064820152608401610532565b5f610ab7610f8b565b5f8681526020919091526040902055509198975050505050505050565b600a8311610b205760405162461bcd60e51b815260206004820152601960248201527814d5105492d3915517d3d55514155517d513d3d7d4d213d495603a1b6044820152606401610532565b610b2d848461080e610eb2565b83836008818110610b4057610b40612917565b905060200201355f14610b8e5760405162461bcd60e51b8152602060048201526016602482015275554e45585045435445445f4b5a475f44415f464c414760501b6044820152606401610532565b5f6108998585604051806040016040528087815260200186815250611b31565b5f610bb7610f8b565b5f92835260205250604090205490565b5f8486336001600160a01b03167f2e00dccd686fd6823ec7dc3e125582aa82881b6ff5f6b5a73856e1ea8338a3be878787604051610c0793929190612956565b60405180910390a45f610c1d8787878787610f4b565b90505f610c28610f8b565b5f8381526020919091526040902054905080610c7d5760405162461bcd60e51b81526020600482015260146024820152731393d7d35154d4d051d157d513d7d0d05390d15360621b6044820152606401610532565b42610c86611b0f565b5f8481526020919091526040902055509695505050505050565b5f6104976040518060600160405280602d8152602001612c57602d9139610e5d565b5f610497604051806060016040528060238152602001612c3460239139610e5d565b337f07688623ef226ae0c2f88d3fdc7f6bb41427c804bcec3f36699b07148e3f5340610d0e610e3f565b60408051918252602082018590520160405180910390a261062281611ba6565b5f610d37610eb2565b54919050565b5f610bb7611b0f565b5f610bb7610e90565b5f80808080610d6086880188612979565b94509450945094509450610d7385611bc8565b610d7c84611ba6565b610d8583611bea565b610dac81610d91610eb2565b90805182556020810151600183015560400151600290910155565b610db582610efb565b610dc162069780611c0c565b50505050505050565b61062281611c0c565b5f610497604051806060016040528060218152602001612c8460219139610e5d565b337f600a61c1b32ac42fb2fe76e8fc7582a98106668fc16dcd85567cd3937363e49b610e1f610cc2565b60408051918252602082018590520160405180910390a261062281611bc8565b5f6104976040518060600160405280602e8152602001612c06602e91395b5f8082604051602001610e709190612a3f565b60408051601f198184030181529190528051602090910120549392505050565b5f610497604051806060016040528060238152602001612ca560239139611c2e565b5f80604051806060016040528060278152602001612bdf60279139604051602001610edd9190612a3f565b60408051601f19818403018152919052805160209091012092915050565b610622604051806060016040528060218152602001612c8460219139825b5f82604051602001610f2b9190612a3f565b604051602081830303815290604052805190602001209050818155505050565b6040515f90610f6a90339088908590899088908a908290602001612a51565b60405160208183030381529060405280519060200120905095945050505050565b5f610497604051806060016040528060268152602001612cc860269139611c2e565b5f83600101545f1903610fcc575067080000000000001160c01b610fd3565b5060018301545b8083836002818110610fe757610fe7612917565b905060200201351461103b5760405162461bcd60e51b815260206004820152601960248201527f494e56414c49445f505245565f424c4f434b5f4e554d424552000000000000006044820152606401610532565b50505050565b600283101561108a5760405162461bcd60e51b815260206004820152601560248201527412d691d7d4d151d351539517d513d3d7d4d213d495605a1b6044820152606401610532565b5f84845f81811061109d5761109d612917565b905060200201355f1b90505f858560018181106110bc576110bc612917565b9050602002013590505f8160026110d39190612a88565b6110de9060026128de565b905083821461112f5760405162461bcd60e51b815260206004820152601c60248201527f494e56414c49445f4e554d4245525f4f465f4b5a475f50524f4f4653000000006044820152606401610532565b61113a826002612a88565b61114490826128de565b86101561118b5760405162461bcd60e51b815260206004820152601560248201527412d691d7d4d151d351539517d513d3d7d4d213d495605a1b6044820152606401610532565b5f5b828110156116a15780495f8190036111dc5760405162461bcd60e51b81526020600482015260126024820152710929cac82989288be84989e84be929c888ab60731b6044820152606401610532565b600160f81b815f1a60f81b6001600160f81b0319161461123e5760405162461bcd60e51b815260206004820152601c60248201527f554e45585045435445445f424c4f425f484153485f56455253494f4e000000006044820152606401610532565b60605f8a8a61124e866002612a88565b6112599060026128de565b81811061126857611268612917565b9050602002013590505f8b8b8660026112819190612a88565b61128c9060026128de565b6112979060016128de565b8181106112a6576112a6612917565b9050602002013590506001600160c01b0380168211156113015760405162461bcd60e51b81526020600482015260166024820152751253959053125117d2d691d7d0d3d35352551351539560521b6044820152606401610532565b6001600160c01b038111156113515760405162461bcd60e51b81526020600482015260166024820152751253959053125117d2d691d7d0d3d35352551351539560521b6044820152606401610532565b6040805167ffffffffffffffff1992821b8316602082015292811b9091166038830152805180830360300181526050909201905290505f808b8b611396876002612a88565b6113a090896128de565b8181106113af576113af612917565b9050602002013590505f8c8c8760026113c89190612a88565b6113d2908a6128de565b6113dd9060016128de565b8181106113ec576113ec612917565b9050602002013590506001600160801b0380168211156114405760405162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f595f56414c554560881b6044820152606401610532565b6001600160801b038111156114895760405162461bcd60e51b815260206004820152600f60248201526e494e56414c49445f595f56414c554560881b6044820152606401610532565b61149782608083901b6128de565b5f1b9250505060308989868181106114b1576114b1612917565b90506020028101906114c39190612a9f565b90501461150b5760405162461bcd60e51b8152602060048201526016602482015275494e56414c49445f4b5a475f50524f4f465f53495a4560501b6044820152606401610532565b5f80600a858a85878f8f8c81811061152557611525612917565b90506020028101906115379190612a9f565b60405160200161154c96959493929190612ae2565b60408051601f198184030181529082905261156691612a3f565b5f60405180830381855afa9150503d805f811461159e576040519150601f19603f3d011682016040523d82523d5f602084013e6115a3565b606091505b5091509150816116055760405162461bcd60e51b815260206004820152602760248201527f504f494e545f4556414c554154494f4e5f505245434f4d50494c455f43414c4c60448201526617d1905253115160ca1b6064820152608401610532565b805160208201207fb2157d3a40131b14c4c675335465dffde802f0ce5218ad012284d7f275d1b37c146116905760405162461bcd60e51b815260206004820152602d60248201527f554e45585045435445445f504f494e545f4556414c554154494f4e5f5052454360448201526c13d35412531157d3d555141555609a1b6064820152608401610532565b50506001909301925061118d915050565b5050505050505050565b5f82826040516020016116bf929190612b15565b6040516020818303038152906040528051906020012090505b92915050565b6116e88383611c60565b6116f0610dd3565b8383600781811061170357611703612917565b905060200201351461174d5760405162461bcd60e51b81526020600482015260136024820152720929cac82989288be869e9c8c928ebe9082a69606b1b6044820152606401610532565b8282600981811061176057611760612917565b905060200201355f146117b55760405162461bcd60e51b815260206004820152601960248201527f46554c4c5f4f55545055545f4e4f545f535550504f52544544000000000000006044820152606401610532565b5f838360068181106117c9576117c9612917565b905060200201355f14611864576117de610cc2565b848460068181106117f1576117f1612917565b90506020020135146118555760405162461bcd60e51b815260206004820152602760248201527f41474752454741544f525f4d4f44455f494e56414c49445f4f535f50524f47526044820152660829abe9082a6960cb1b6064820152608401610532565b61185d610e3f565b905061186f565b61186c610cc2565b90505b6040805160208082018490528183018590528251808303840181526060909201909252805191012061189f611cf3565b6001600160a01b0316636a938567826040518263ffffffff1660e01b81526004016118cc91815260200190565b602060405180830381865afa1580156118e7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061190b9190612b21565b6119575760405162461bcd60e51b815260206004820152601960248201527f4e4f5f53544154455f5452414e534954494f4e5f50524f4f46000000000000006044820152606401610532565b6040518381527f9866f8ddfe70bb512b2f2b28b49d4017c43f7ba775f1a20c61c13eea8cdac1119060200160405180910390a161199e8585611997610eb2565b9190611d15565b5f6119a98686611e99565b90506119c960016119bc8784818b61292b565b6119c4610e90565b611f34565b6119d390826128de565b90506119ed5f6119e58784818b61292b565b6119c4610f8b565b6119f790826128de565b9050848114611a485760405162461bcd60e51b815260206004820152601860248201527f535441524b4e45545f4f55545055545f544f4f5f4c4f4e4700000000000000006044820152606401610532565b5f611a51610eb2565b805460018201546002830154604080519384526020840192909252908201529091507fd342ddf7a308dec111745b00315c14b7efb2bdae570a6856e088ed0c65a3576c9060600160405180910390a150505050505050565b81816003818110611abc57611abc612917565b90506020020135836001015414611b0a5760405162461bcd60e51b81526020600482015260126024820152715245454e5452414e43595f4641494c55524560701b6044820152606401610532565b505050565b5f610497604051806060016040528060308152602001612baf60309139611c2e565b5f8281611b3e86836116ab565b90505f8183865f0151876020015186611b5791906128de565b6040805160208101959095528401929092526060830152608082015260a00160408051601f1981840301815291905280516020909101209050611b9b8160016128de565b979650505050505050565b6106226040518060600160405280602e8152602001612c06602e913982610f19565b610622604051806060016040528060238152602001612c346023913982610f19565b610622604051806060016040528060228152602001612b8d60229139826124ef565b6106226040518060600160405280602d8152602001612c57602d913982610f19565b5f8082604051602001611c419190612a3f565b60408051601f1981840301815291905280516020909101209392505050565b6001600167080000000000001160c01b01602083028401845b81811015611c995782813510611c91575f9350611c99565b602001611c79565b50505080611b0a5760405162461bcd60e51b815260206004820152602160248201527f50524f4752414d5f4f55545055545f56414c55455f4f55545f4f465f52414e476044820152604560f81b6064820152608401610532565b5f610497604051806060016040528060228152602001612b8d60229139610e5d565b611d20838383610fad565b5f82826003818110611d3457611d34612917565b90506020020135905083600101548113611d905760405162461bcd60e51b815260206004820152601860248201527f494e56414c49445f4e45575f424c4f434b5f4e554d42455200000000000000006044820152606401610532565b60018401819055600284015483836004818110611daf57611daf612917565b9050602002013514611e035760405162461bcd60e51b815260206004820152601760248201527f494e56414c49445f505245565f424c4f434b5f484153480000000000000000006044820152606401610532565b82826005818110611e1657611e16612917565b6020029190910135600286015550365f611e308585612547565b91509150611e3e8282612570565b865414611e855760405162461bcd60e51b81526020600482015260156024820152741253959053125117d41491559253d554d7d493d3d5605a1b6044820152606401610532565b611e8f8282612592565b9095555050505050565b5f82826008818110611ead57611ead612917565b905060200201355f03611ec25750600a6116d8565b5f8383611ed16001600a6128de565b818110611ee057611ee0612917565b905060200201359050806002611ef69190612a88565b611f01826002612a88565b611f0d600a60016128de565b611f189060016128de565b611f2291906128de565b611f2c91906128de565b949350505050565b5f8084845f818110611f4857611f48612917565b90506020020135905063400000008110611fa45760405162461bcd60e51b815260206004820152601c60248201527f494e56414c49445f4d4553534147455f5345474d454e545f53495a45000000006044820152606401610532565b60015f611fb183836128de565b90505f88611fc0576004611fc3565b60025b90505f5b828410156123ff575f611fda83866128de565b905088811061201f5760405162461bcd60e51b8152602060048201526011602482015270135154d4d051d157d513d3d7d4d213d495607a1b6044820152606401610532565b5f8a8a8381811061203257612032612917565b905060200201359050634000000081106120875760405162461bcd60e51b81526020600482015260166024820152750929cac82989288bea082b2989e8288be988a9c8ea8960531b6044820152606401610532565b5f816120948460016128de565b61209e91906128de565b90508a8111156120f05760405162461bcd60e51b815260206004820152601960248201527f5452554e43415445445f4d4553534147455f5041594c4f4144000000000000006044820152606401610532565b8c15612200575f8c8c899084926121099392919061292b565b60405160200161211a929190612b15565b6040516020818303038152906040528051906020012090508c8c60018a61214191906128de565b81811061215057612150612917565b905060200201356001600160a01b03168d8d5f8b61216e91906128de565b81811061217d5761217d612917565b905060200201357f4264ac208b5fde633ccdd42e0f12c3d6d443a4f3779bbf886925b94665b63a228f8f60038d6121b491906128de565b6121c09288929061292b565b6040516121ce9291906128a4565b60405180910390a35f81815260208c9052604081208054600192906121f49084906128de565b909155506123f5915050565b5f8c8c899084926122139392919061292b565b604051602001612224929190612b15565b60408051601f1981840301815291815281516020928301205f818152928e9052912054909150806122975760405162461bcd60e51b815260206004820152601a60248201527f494e56414c49445f4d4553534147455f544f5f434f4e53554d450000000000006044820152606401610532565b6122a26001826128cb565b6122ac90876128de565b5f92835260208d90526040832083905595508d90508c6122cd60028b6128de565b8181106122dc576122dc612917565b9050602002013590505f8d8d60058b6122f591906128de565b6123019286929061292b565b808060200260200160405190810160405280939291908181526020018383602002808284375f81840152601f19601f8201169050808301925050505050505090508d8d60038b61235191906128de565b81811061236057612360612917565b905060200201358e8e60018c61237691906128de565b81811061238557612385612917565b905060200201358f8f5f8d61239a91906128de565b8181106123a9576123a9612917565b905060200201356001600160a01b03167f9592d37825c744e33fa80c469683bbd04d336241bb600b574758efd182abe26a84866040516123ea929190612b40565b60405180910390a450505b9550611fc7915050565b82841461244e5760405162461bcd60e51b815260206004820152601c60248201527f494e56414c49445f4d4553534147455f5345474d454e545f53495a45000000006044820152606401610532565b80156124e1576040515f90339083908381818185875af1925050503d805f8114612493576040519150601f19603f3d011682016040523d82523d5f602084013e612498565b606091505b50509050806124df5760405162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b6044820152606401610532565b505b509198975050505050505050565b5f6124f983610e5d565b6001600160a01b03161461253d5760405162461bcd60e51b815260206004820152600b60248201526a1053149150511657d4d15560aa1b6044820152606401610532565b6103a38282610f19565b365f8381846125578260026128de565b926125649392919061292b565b915091505b9250929050565b5f82825f81811061258357612583612917565b90506020020135905092915050565b5f8282600181811061258357612583612917565b5f8083601f8401126125b6575f80fd5b50813567ffffffffffffffff8111156125cd575f80fd5b6020830191508360208260051b8501011115612569575f80fd5b5f805f604084860312156125f9575f80fd5b83359250602084013567ffffffffffffffff811115612616575f80fd5b612622868287016125a6565b9497909650939450505050565b5f6020828403121561263f575f80fd5b5035919050565b5f805f8060608587031215612659575f80fd5b8435935060208501359250604085013567ffffffffffffffff81111561267d575f80fd5b612689878288016125a6565b95989497509550505050565b5f805f80604085870312156126a8575f80fd5b843567ffffffffffffffff8111156126be575f80fd5b6126ca878288016125a6565b909550935050602085013567ffffffffffffffff81111561267d575f80fd5b5f805f805f608086880312156126fd575f80fd5b8535945060208601359350604086013567ffffffffffffffff811115612721575f80fd5b61272d888289016125a6565b96999598509660600135949350505050565b5f805f8060608587031215612752575f80fd5b843567ffffffffffffffff811115612768575f80fd5b612774878288016125a6565b90989097506020870135966040013595509350505050565b5f806020838503121561279d575f80fd5b823567ffffffffffffffff8111156127b3575f80fd5b8301601f810185136127c3575f80fd5b803567ffffffffffffffff8111156127d9575f80fd5b8560208284010111156127ea575f80fd5b6020919091019590945092505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f6001600160fb1b03831115612843575f80fd5b8260051b80838637939093019392505050565b8581528460208201528360408201525f611b9b60608301848661282f565b8183525f6001600160fb1b0383111561288b575f80fd5b8260051b80836020870137939093016020019392505050565b602081525f611f2c602083018486612874565b634e487b7160e01b5f52601160045260245ffd5b818103818111156116d8576116d86128b7565b808201808211156116d8576116d86128b7565b606081525f612904606083018688612874565b6020830194909452506040015292915050565b634e487b7160e01b5f52603260045260245ffd5b5f8085851115612939575f80fd5b83861115612945575f80fd5b5050600583901b0193919092039150565b604081525f612969604083018587612874565b9050826020830152949350505050565b5f805f805f85870360e081121561298e575f80fd5b863595506020870135945060408701356001600160a01b03811681146129b2575f80fd5b93506060878101359350607f19820112156129cb575f80fd5b506040516060810181811067ffffffffffffffff821117156129fb57634e487b7160e01b5f52604160045260245ffd5b60409081526080880135825260a0880135602083015260c090970135968101969096525092959194509290565b5f81518060208401855e5f93019283525090919050565b5f612a4a8284612a28565b9392505050565b8781528660208201528560408201528460608201528360808201525f612a7b60a08301848661282f565b9998505050505050505050565b80820281158282048414176116d8576116d86128b7565b5f808335601e19843603018112612ab4575f80fd5b83018035915067ffffffffffffffff821115612ace575f80fd5b602001915036819003821315612569575f80fd5b8681528560208201528460408201525f612aff6060830186612a28565b838582375f930192835250909695505050505050565b5f611f2c82848661282f565b5f60208284031215612b31575f80fd5b81518015158114612a4a575f80fd5b604080825283519082018190525f9060208501906060840190835b81811015612b79578351835260209384019390920191600101612b5b565b505060209390930193909352509291505056fe535441524b4e45545f312e305f494e49545f56455249464945525f41444452455353535441524b4e45545f312e305f4d5347494e475f4c31544f4c325f43414e43454c4c4154494f4e5f4d41505050494e47535441524b4e45545f312e305f494e49545f535441524b4e45545f53544154455f535452554354535441524b4e45545f312e305f494e49545f41474752454741544f525f50524f4752414d5f484153485f55494e54535441524b4e45545f312e305f494e49545f50524f4752414d5f484153485f55494e54535441524b4e45545f312e305f4d5347494e475f4c31544f4c325f43414e43454c4c4154494f4e5f44454c4159535441524b4e45545f312e305f535441524b4e45545f434f4e4649475f48415348535441524b4e45545f312e305f4d5347494e475f4c32544f4c315f4d41505050494e47535441524b4e45545f312e305f4d5347494e475f4c31544f4c325f4d41505050494e475f5632a264697066735822122016b88bf423ce3dd98fa2c2f4dcb6f6c1ccf9e142e97eeae23543cff7e8eb87fe64736f6c634300081a0033", + "sourceMap": "957:15585:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2510:133:4;;;;;;;;;;;;;:::i;:::-;;;160:25:19;;;148:2;133:18;2510:133:4;;;;;;;;4986:496;;;;;;;;;;-1:-1:-1;4986:496:4;;;;;:::i;:::-;;:::i;12382:102:3:-;;;;;;;;;;;;;:::i;12545:99::-;;;;;;;;;;;;;:::i;3362:170::-;;;;;;;;;;-1:-1:-1;3362:170:3;;;;;:::i;:::-;;:::i;:::-;;4004:850:4;;;;;;:::i;:::-;;:::i;:::-;;;;2567:25:19;;;2623:2;2608:18;;2601:34;;;;2540:18;4004:850:4;2393:248:19;15429:1111:3;;;;;;;;;;-1:-1:-1;15429:1111:3;;;;;:::i;:::-;;:::i;1642:103:4:-;;;;;;;;;;-1:-1:-1;1628:7:4;1642:103;;6078:1138;;;;;;;;;;-1:-1:-1;6078:1138:4;;;;;:::i;:::-;;:::i;13831:1113:3:-;;;;;;;;;;-1:-1:-1;13831:1113:3;;;;;:::i;:::-;;:::i;1897:131:4:-;;;;;;;;;;-1:-1:-1;1897:131:4;;;;;:::i;:::-;;:::i;5488:584::-;;;;;;;;;;-1:-1:-1;5488:584:4;;;;;:::i;:::-;;:::i;2649:152::-;;;;;;;;;;;;;:::i;3729:120:3:-;;;;;;;;;;;;;:::i;3109:247::-;;;;;;;;;;-1:-1:-1;3109:247:3;;;;;:::i;:::-;;:::i;12224:95::-;;;;;;;;;;;;;:::i;3187:146:4:-;;;;;;;;;;-1:-1:-1;3187:146:4;;;;;:::i;:::-;;:::i;2034:122::-;;;;;;;;;;-1:-1:-1;2034:122:4;;;;;:::i;:::-;;:::i;5959:602:3:-;;;;;;;;;;-1:-1:-1;5959:602:3;;;;;:::i;:::-;;:::i;5870:83::-;;;;;;;;;;-1:-1:-1;5870:83:3;;;;;:::i;:::-;;;;3538:127;;;;;;;;;;-1:-1:-1;3538:127:3;;;;;:::i;:::-;;:::i;4868:118::-;;;;;;;;;;;;;:::i;2926:177::-;;;;;;;;;;-1:-1:-1;2926:177:3;;;;;:::i;:::-;;:::i;4100:141::-;;;;;;;;;;;;;:::i;12045:118::-;;;;;;;;;;-1:-1:-1;12122:34:3;;;;;;;;;;;;;;;;12045:118;;;;12122:34;12045:118;:::i;2510:133:4:-;2561:7;2587:49;2613:22;;;;;;;;;;;;;;;;;2587:25;:49::i;:::-;2580:56;;2510:133;:::o;4986:496::-;5179:84;;5116:7;;;;5179:84;;5196:11;;5225:10;;5239:7;;;;;;5179:84;;;:::i;:::-;;;;;;;;;;;;;5169:95;;;;;;5139:125;;5311:1;5283:16;:14;:16::i;:::-;:25;;;;;;;;;;;;;:29;5275:68;;;;-1:-1:-1;;;5275:68:4;;7030:2:19;5275:68:4;;;7012:21:19;7069:2;7049:18;;;7042:30;7108:28;7088:18;;;7081:56;7154:18;;5275:68:4;;;;;;;;;5391:10;-1:-1:-1;;;;;5358:53:4;5378:11;5358:53;5403:7;;5358:53;;;;;;;:::i;:::-;;;;;;;;5450:1;5421:16;:14;:16::i;:::-;:25;5438:7;5421:25;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;-1:-1:-1;5468:7:4;;4986:496;-1:-1:-1;;;;;4986:496:4:o;12382:102:3:-;12433:6;12458:7;:5;:7::i;:::-;:19;;;12451:26;;12382:102;:::o;12545:99::-;12594:7;12620;:5;:7::i;:::-;:17;;;12613:24;;12545:99;:::o;3362:170::-;3450:10;3432:58;3462:12;:10;:12::i;:::-;3432:58;;;2567:25:19;;;2623:2;2608:18;;2601:34;;;2540:18;3432:58:3;;;;;;;3500:25;3511:13;3500:10;:25::i;:::-;3362:170;:::o;4004:850:4:-;4161:7;4170;4213:1;4201:9;:13;4193:59;;;;-1:-1:-1;;;4193:59:4;;8520:2:19;4193:59:4;;;8502:21:19;8559:2;8539:18;;;8532:30;8598:34;8578:18;;;8571:62;-1:-1:-1;;;8649:18:19;;;8642:31;8690:19;;4193:59:4;8318:397:19;4193:59:4;1628:7;4270:9;:29;;4262:65;;;;-1:-1:-1;;;4262:65:4;;8922:2:19;4262:65:4;;;8904:21:19;8961:2;8941:18;;;8934:30;9000:25;8980:18;;;8973:53;9043:18;;4262:65:4;8720:347:19;4262:65:4;4337:13;4353:20;:18;:20::i;:::-;4337:36;;4383:60;4409:22;;;;;;;;;;;;;;;;;4433:5;4441:1;4433:9;;;;:::i;:::-;4383:25;:60::i;:::-;4496:8;4485:9;4473:10;-1:-1:-1;;;;;4458:74:4;;4506:7;;4515:5;4522:9;4458:74;;;;;;;;;:::i;:::-;;;;;;;;4542:15;4560:53;4577:9;4588:8;4598:7;;4607:5;4560:16;:53::i;:::-;4542:71;-1:-1:-1;4801:13:4;:9;4813:1;4801:13;:::i;:::-;4773:16;:14;:16::i;:::-;:25;;;;;;;;;;;;:41;:25;4841:5;;-1:-1:-1;4004:850:4;-1:-1:-1;;;;;4004:850:4:o;15429:1111:3:-;1756:2:2;15580:49:3;;15572:87;;;;-1:-1:-1;;;15572:87:3;;9843:2:19;15572:87:3;;;9825:21:19;9882:2;9862:18;;;9855:30;-1:-1:-1;;;9901:18:19;;;9894:55;9966:18;;15572:87:3;9641:349:19;15572:87:3;15842:43;15871:13;;15842:7;:5;:7::i;:::-;:28;:43;:28;:43::i;:::-;15937:13;;1655:1:2;15937:47:3;;;;;;;:::i;:::-;;;;;;;15988:1;15937:52;15929:87;;;;-1:-1:-1;;;15929:87:3;;10329:2:19;15929:87:3;;;10311:21:19;10368:2;10348:18;;;10341:30;-1:-1:-1;;;10387:18:19;;;10380:52;10449:18;;15929:87:3;10127:346:19;15929:87:3;16026:70;16042:42;:13;1756:2:2;16042:13:3;;:42;:::i;:::-;16086:9;;16026:15;:70::i;:::-;16107:27;16137:61;16184:13;;16137:46;:61::i;:::-;16107:91;;16254:55;16274:13;;16289:19;16254;:55::i;:::-;16491:42;16519:13;;16491:7;:5;:7::i;:::-;:27;:42;:27;:42::i;:::-;15526:1014;15429:1111;;;;:::o;6078:1138:4:-;6238:7;6309:8;6298:9;6286:10;-1:-1:-1;;;;;6266:68:4;;6319:7;;6328:5;6266:68;;;;;;;;:::i;:::-;;;;;;;;6552:15;6570:53;6587:9;6598:8;6608:7;;6617:5;6570:16;:53::i;:::-;6552:71;;6633:21;6657:16;:14;:16::i;:::-;:25;;;;;;;;;;;;;;-1:-1:-1;6700:18:4;;;6692:51;;;;-1:-1:-1;;;6692:51:4;;11408:2:19;6692:51:4;;;11390:21:19;11447:2;11427:18;;;11420:30;-1:-1:-1;;;11466:18:19;;;11459:50;11526:18;;6692:51:4;11206:344:19;6692:51:4;6754:19;6776:28;:26;:28::i;:::-;:37;;;;;;;;;;;;;;-1:-1:-1;6831:16:4;;;6823:63;;;;-1:-1:-1;;;6823:63:4;;11757:2:19;6823:63:4;;;11739:21:19;11796:2;11776:18;;;11769:30;11835:34;11815:18;;;11808:62;-1:-1:-1;;;11886:18:19;;;11879:32;11928:19;;6823:63:4;11555:398:19;6823:63:4;6897:25;6939:26;:24;:26::i;:::-;6925:40;;:11;:40;:::i;:::-;6897:68;;7004:11;6983:17;:32;;6975:73;;;;-1:-1:-1;;;6975:73:4;;12160:2:19;6975:73:4;;;12142:21:19;12199:2;12179:18;;;12172:30;12238;12218:18;;;12211:58;12286:18;;6975:73:4;11958:352:19;6975:73:4;7085:17;7066:15;:36;;7058:85;;;;-1:-1:-1;;;7058:85:4;;12517:2:19;7058:85:4;;;12499:21:19;12556:2;12536:18;;;12529:30;12595:34;12575:18;;;12568:62;-1:-1:-1;;;12646:18:19;;;12639:34;12690:19;;7058:85:4;12315:400:19;7058:85:4;7182:1;7154:16;:14;:16::i;:::-;:25;;;;;;;;;;;;:29;-1:-1:-1;7154:25:4;;6078:1138;-1:-1:-1;;;;;;;;6078:1138:4:o;13831:1113:3:-;1756:2:2;13999:49:3;;13991:87;;;;-1:-1:-1;;;13991:87:3;;9843:2:19;13991:87:3;;;9825:21:19;9882:2;9862:18;;;9855:30;-1:-1:-1;;;9901:18:19;;;9894:55;9966:18;;13991:87:3;9641:349:19;13991:87:3;14261:43;14290:13;;14261:7;:5;:7::i;:43::-;14356:13;;1655:1:2;14356:47:3;;;;;;;:::i;:::-;;;;;;;14407:1;14356:52;14348:87;;;;-1:-1:-1;;;14348:87:3;;10329:2:19;14348:87:3;;;10311:21:19;10368:2;10348:18;;;10341:30;-1:-1:-1;;;10387:18:19;;;10380:52;10449:18;;14348:87:3;10127:346:19;14348:87:3;14446:27;14476:172;14542:13;;14557:81;;;;;;;;14605:15;14557:81;;;;14622:15;14557:81;;;14476:52;:172::i;1897:131:4:-;1970:7;1996:16;:14;:16::i;:::-;:25;;;;;;-1:-1:-1;1996:25:4;;;;;1897:131::o;5488:584::-;5673:7;5751:8;5740:9;5728:10;-1:-1:-1;;;;;5697:79:4;;5761:7;;5770:5;5697:79;;;;;;;;:::i;:::-;;;;;;;;5786:15;5804:53;5821:9;5832:8;5842:7;;5851:5;5804:16;:53::i;:::-;5786:71;;5867:21;5891:16;:14;:16::i;:::-;:25;;;;;;;;;;;;;;-1:-1:-1;5934:17:4;5926:50;;;;-1:-1:-1;;;5926:50:4;;11408:2:19;5926:50:4;;;11390:21:19;11447:2;11427:18;;;11420:30;-1:-1:-1;;;11466:18:19;;;11459:50;11526:18;;5926:50:4;11206:344:19;5926:50:4;6026:15;5986:28;:26;:28::i;:::-;:37;;;;;;;;;;;;:55;-1:-1:-1;5986:37:4;5488:584;-1:-1:-1;;;;;;5488:584:4:o;2649:152::-;2706:7;2732:62;2758:35;;;;;;;;;;;;;;;;;2732:25;:62::i;3729:120:3:-;3773:7;3799:43;3825:16;;;;;;;;;;;;;;;;;3799:25;:43::i;3109:247::-;3230:10;3201:91;3242:23;:21;:23::i;:::-;3201:91;;;2567:25:19;;;2623:2;2608:18;;2601:34;;;2540:18;3201:91:3;;;;;;;3302:47;3324:24;3302:21;:47::i;12224:95::-;12268:7;12294;:5;:7::i;:::-;:18;;12224:95;-1:-1:-1;12224:95:3:o;3187:146:4:-;3263:7;3289:28;:26;:28::i;2034:122::-;2098:7;2124:16;:14;:16::i;5959:602:3:-;6044:20;;;;;6238:75;;;;6249:4;6238:75;:::i;:::-;6030:283;;;;;;;;;;6324:25;6336:12;6324:11;:25::i;:::-;6359:45;6381:22;6359:21;:45::i;:::-;6414:29;6433:9;6414:18;:29::i;:::-;6453:26;6466:12;6453:7;:5;:7::i;:::-;:12;919:20:5;;900:39;;969:21;;;;949:17;;;:41;1018:19;;;1000:15;;;;:37;822:222;6453:26:3;6489:23;6500:11;6489:10;:23::i;:::-;6522:32;6547:6;6522:24;:32::i;:::-;6020:541;;;;;5959:602;;:::o;3538:127::-;3618:40;3643:14;3618:24;:40::i;4868:118::-;4911:7;4937:42;4963:15;;;;;;;;;;;;;;;;;4937:25;:42::i;2926:177::-;3017:10;2998:61;3029:13;:11;:13::i;:::-;2998:61;;;2567:25:19;;;2623:2;2608:18;;2601:34;;;2540:18;2998:61:3;;;;;;;3069:27;3081:14;3069:11;:27::i;4100:141::-;4154:7;4180:54;4206:27;;;;;;;;;;;;;;;;;2364:209:18;2429:14;2455:12;2497:4;2480:22;;;;;;;;:::i;:::-;;;;-1:-1:-1;;2480:22:18;;;;;;;;;2470:33;;2480:22;2470:33;;;;2546:11;;2364:209;-1:-1:-1;;;2364:209:18:o;2336:168:4:-;2385:35;2439:58;2476:20;;;;;;;;;;;;;;;;;2439:36;:58::i;5175:232:3:-;5215:39;5266:16;5312;;;;;;;;;;;;;;;;;5295:34;;;;;;;;:::i;:::-;;;;-1:-1:-1;;5295:34:3;;;;;;;;;5285:45;;5295:34;5285:45;;;;;5175:232;-1:-1:-1;;5175:232:3:o;4695:110::-;4749:49;4775:15;;;;;;;;;;;;;;;;;4792:5;2579:192:18;2655:12;2697:4;2680:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;2670:33;;;;;;2655:48;;2749:5;2743:4;2736:19;2722:43;2579:192;;:::o;3618:322:4:-;3824:99;;3771:7;;3824:99;;3857:10;;3871:9;;3882:5;;3889:8;;3899:7;;;;;;3824:99;;;:::i;:::-;;;;;;;;;;;;;3801:132;;;;;;3794:139;;3618:322;;;;;;;:::o;2162:168::-;2211:35;2265:58;2302:20;;;;;;;;;;;;;;;;;2265:36;:58::i;1436:549:5:-;1546:31;1591:5;:17;;;-1:-1:-1;;1591:23:5;1587:228;;-1:-1:-1;;;;1587:228:5;;;-1:-1:-1;1786:17:5;;;;1587:228;1904:23;1845:14;;1316:1:2;1845:55:5;;;;;;;:::i;:::-;;;;;;;:82;1824:154;;;;-1:-1:-1;;;1824:154:5;;15326:2:19;1824:154:5;;;15308:21:19;15365:2;15345:18;;;15338:30;15404:27;15384:18;;;15377:55;15449:18;;1824:154:5;15124:349:19;1824:154:5;1536:449;1436:549;;;:::o;6784:2508:3:-;6937:1;6908:30;;;6900:64;;;;-1:-1:-1;;;6900:64:3;;15680:2:19;6900:64:3;;;15662:21:19;15719:2;15699:18;;;15692:30;-1:-1:-1;;;15738:18:19;;;15731:51;15799:18;;6900:64:3;15478:345:19;6900:64:3;6974:9;6994:18;;1806:1:2;6994:47:3;;;;;;;:::i;:::-;;;;;;;6986:56;;6974:68;;7052:14;7069:18;;1860:1:2;7069:53:3;;;;;;;:::i;:::-;;;;;;;7052:70;;7132:25;7204:6;7200:1;:10;;;;:::i;:::-;7160:50;;1918:1:2;7160:50:3;:::i;:::-;7132:78;-1:-1:-1;7229:26:3;;;7221:67;;;;-1:-1:-1;;;7221:67:3;;16203:2:19;7221:67:3;;;16185:21:19;16242:2;16222:18;;;16215:30;16281;16261:18;;;16254:58;16329:18;;7221:67:3;16001:352:19;7221:67:3;7355:10;7359:6;7355:1;:10;:::i;:::-;7335:30;;:17;:30;:::i;:::-;7306:59;;;7298:93;;;;-1:-1:-1;;;7298:93:3;;15680:2:19;7298:93:3;;;15662:21:19;15719:2;15699:18;;;15692:30;-1:-1:-1;;;15738:18:19;;;15731:51;15799:18;;7298:93:3;15478:345:19;7298:93:3;7406:17;7401:1885;7441:6;7429:9;:18;7401:1885;;;7495:19;;7476:16;7536:13;;;7528:44;;;;-1:-1:-1;;;7528:44:3;;16560:2:19;7528:44:3;;;16542:21:19;16599:2;16579:18;;;16572:30;-1:-1:-1;;;16618:18:19;;;16611:48;16676:18;;7528:44:3;16358:342:19;7528:44:3;-1:-1:-1;;;7594:8:3;7603:1;7594:11;;;-1:-1:-1;;;;;7594:41:3;;;7586:82;;;;-1:-1:-1;;;7586:82:3;;16907:2:19;7586:82:3;;;16889:21:19;16946:2;16926:18;;;16919:30;16985;16965:18;;;16958:58;17033:18;;7586:82:3;16705:352:19;7586:82:3;7683:26;7741:24;7768:18;;7828:13;7832:9;7828:1;:13;:::i;:::-;7787:55;;1918:1:2;7787:55:3;:::i;:::-;7768:75;;;;;;;:::i;:::-;;;;;;;7741:102;;7861:25;7909:18;;7973:9;7969:1;:13;;;;:::i;:::-;7928:55;;1918:1:2;7928:55:3;:::i;:::-;:59;;7986:1;7928:59;:::i;:::-;7909:79;;;;;;;:::i;:::-;;;;;;;7861:127;;-1:-1:-1;;;;;8014:37:3;;:16;:37;;8006:72;;;;-1:-1:-1;;;8006:72:3;;17264:2:19;8006:72:3;;;17246:21:19;17303:2;17283:18;;;17276:30;-1:-1:-1;;;17322:18:19;;;17315:52;17384:18;;8006:72:3;17062:346:19;8006:72:3;-1:-1:-1;;;;;8104:38:3;;;8096:73;;;;-1:-1:-1;;;8096:73:3;;17264:2:19;8096:73:3;;;17246:21:19;17303:2;17283:18;;;17276:30;-1:-1:-1;;;17322:18:19;;;17315:52;17384:18;;8096:73:3;17062:346:19;8096:73:3;8204:71;;;-1:-1:-1;;17586:15:19;;;17582:45;;8204:71:3;;;17570:58:19;17662:15;;;17658:45;;;17644:12;;;17637:67;8204:71:3;;;;;;;;;17720:12:19;;;;8204:71:3;;;-1:-1:-1;;;8360:18:3;;8400:13;8404:9;8400:1;:13;:::i;:::-;8379:35;;:17;:35;:::i;:::-;8360:55;;;;;;;:::i;:::-;;;;;;;8345:70;;8433:13;8449:18;;8493:9;8489:1;:13;;;;:::i;:::-;8468:35;;:17;:35;:::i;:::-;:39;;8506:1;8468:39;:::i;:::-;8449:59;;;;;;;:::i;:::-;;;;;;;8433:75;;-1:-1:-1;;;;;8534:25:3;;:4;:25;;8526:53;;;;-1:-1:-1;;;8526:53:3;;17945:2:19;8526:53:3;;;17927:21:19;17984:2;17964:18;;;17957:30;-1:-1:-1;;;18003:18:19;;;17996:45;18058:18;;8526:53:3;17743:339:19;8526:53:3;-1:-1:-1;;;;;8605:26:3;;;8597:54;;;;-1:-1:-1;;;8597:54:3;;17945:2:19;8597:54:3;;;17927:21:19;17984:2;17964:18;;;17957:30;-1:-1:-1;;;18003:18:19;;;17996:45;18058:18;;8597:54:3;17743:339:19;8597:54:3;8682:21;8699:4;8692:3;8683:12;;;8682:21;:::i;:::-;8674:30;;8670:34;;8327:392;;2845:2;8741:9;;8751;8741:20;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;:27;;:49;8733:84;;;;-1:-1:-1;;;8733:84:3;;18815:2:19;8733:84:3;;;18797:21:19;18854:2;18834:18;;;18827:30;-1:-1:-1;;;18873:18:19;;;18866:52;18935:18;;8733:84:3;18613:346:19;8733:84:3;8832:7;;2508:4;8956:8;8966:1;8969;8972:13;8987:9;;8997;8987:20;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;8939:69;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;8939:69:3;;;;;;;;;;8875:147;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8831:191;;;;9045:2;9037:54;;;;-1:-1:-1;;;9037:54:3;;19925:2:19;9037:54:3;;;19907:21:19;19964:2;19944:18;;;19937:30;20003:34;19983:18;;;19976:62;-1:-1:-1;;;20054:18:19;;;20047:37;20101:19;;9037:54:3;19723:403:19;9037:54:3;9130:28;;;;;;2726:66;9130;9105:170;;;;-1:-1:-1;;;9105:170:3;;20333:2:19;9105:170:3;;;20315:21:19;20372:2;20352:18;;;20345:30;20411:34;20391:18;;;20384:62;-1:-1:-1;;;20462:18:19;;;20455:43;20515:19;;9105:170:3;20131:409:19;9105:170:3;-1:-1:-1;;7449:11:3;;;;;-1:-1:-1;7401:1885:3;;-1:-1:-1;;7401:1885:3;;;6890:2402;;;6784:2508;;;;:::o;2712:161:8:-;2798:7;2851:13;;2834:31;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2824:42;;;;;;2817:49;;2712:161;;;;;:::o;9675:2294:3:-;9861:36;9883:13;;9861:21;:36::i;:::-;10000:12;:10;:12::i;:::-;9948:13;;1602:1:2;9948:48:3;;;;;;;:::i;:::-;;;;;;;:64;9940:96;;;;-1:-1:-1;;;9940:96:3;;21012:2:19;9940:96:3;;;20994:21:19;21051:2;21031:18;;;21024:30;-1:-1:-1;;;21070:18:19;;;21063:49;21129:18;;9940:96:3;20810:343:19;9940:96:3;10055:13;;1709:1:2;10055:48:3;;;;;;;:::i;:::-;;;;;;;10107:1;10055:53;10047:91;;;;-1:-1:-1;;;10047:91:3;;21360:2:19;10047:91:3;;;21342:21:19;21399:2;21379:18;;;21372:30;21438:27;21418:18;;;21411:55;21483:18;;10047:91:3;21158:349:19;10047:91:3;10149:23;10186:13;;1548:1:2;10186:52:3;;;;;;;:::i;:::-;;;;;;;10242:1;10186:57;10182:403;;10371:13;:11;:13::i;:::-;10315;;1548:1:2;10315:52:3;;;;;;;:::i;:::-;;;;;;;:69;10290:167;;;;-1:-1:-1;;;10290:167:3;;21714:2:19;10290:167:3;;;21696:21:19;21753:2;21733:18;;;21726:30;21792:34;21772:18;;;21765:62;-1:-1:-1;;;21843:18:19;;;21836:37;21890:19;;10290:167:3;21512:403:19;10290:167:3;10489:23;:21;:23::i;:::-;10471:41;;10182:403;;;10561:13;:11;:13::i;:::-;10543:31;;10182:403;10625:48;;;;;;;2567:25:19;;;2608:18;;;2601:34;;;10625:48:3;;;;;;;;;2540:18:19;;;;10625:48:3;;;10615:59;;;;;10706:10;:8;:10::i;:::-;-1:-1:-1;;;;;10692:33:3;;10726:9;10692:44;;;;;;;;;;;;;160:25:19;;148:2;133:18;;14:177;10692:44:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10684:82;;;;-1:-1:-1;;;10684:82:3;;22657:2:19;10684:82:3;;;22639:21:19;22696:2;22676:18;;;22669:30;22735:27;22715:18;;;22708:55;22780:18;;10684:82:3;22455:349:19;10684:82:3;10781:43;;160:25:19;;;10781:43:3;;148:2:19;133:18;10781:43:3;;;;;;;10868:29;10883:13;;10868:7;:5;:7::i;:::-;:14;:29;:14;:29::i;:::-;11130:20;11153:50;11189:13;;11153:35;:50::i;:::-;11130:73;-1:-1:-1;11229:155:3;11298:4;11316:28;:13;11130:73;11316:13;;:28;:::i;:::-;11358:16;:14;:16::i;:::-;11229:30;:155::i;:::-;11213:171;;;;:::i;:::-;;-1:-1:-1;11449:156:3;11518:5;11537:28;:13;11213:171;11537:13;;:28;:::i;:::-;11579:16;:14;:16::i;11449:156::-;11433:172;;;;:::i;:::-;;-1:-1:-1;11623:36:3;;;11615:73;;;;-1:-1:-1;;;11615:73:3;;23011:2:19;11615:73:3;;;22993:21:19;23050:2;23030:18;;;23023:30;23089:26;23069:18;;;23062:54;23133:18;;11615:73:3;22809:348:19;11615:73:3;11832:34;11869:7;:5;:7::i;:::-;11906:17;;11925:18;;;;11945:16;;;;11891:71;;;23362:25:19;;;23418:2;23403:18;;23396:34;;;;23446:18;;;23439:34;11832:44:3;;-1:-1:-1;11891:71:3;;23350:2:19;23335:18;11891:71:3;;;;;;;9776:2193;;;;9675:2294;;;:::o;2141:253:5:-;2301:14;;1375:1:2;2301:54:5;;;;;;;:::i;:::-;;;;;;;2279:5;:17;;;2271:84;2250:137;;;;-1:-1:-1;;;2250:137:5;;23686:2:19;2250:137:5;;;23668:21:19;23725:2;23705:18;;;23698:30;-1:-1:-1;;;23744:18:19;;;23737:48;23802:18;;2250:137:5;23484:342:19;2250:137:5;2141:253;;;:::o;3339:193:4:-;3400:35;3454:71;3491:33;;;;;;;;;;;;;;;;;3454:36;:71::i;1206:1450:8:-;1360:7;2088:13;1360:7;2148:34;2088:13;;2148:19;:34::i;:::-;2118:64;;2246:18;2324:19;2361:18;2397:8;:24;;;2460:8;:24;;;2439:18;:45;;;;:::i;:::-;2290:208;;;;;;24044:19:19;;;;24079:12;;24072:28;;;;24116:12;;;24109:28;24153:12;;;24146:28;24190:13;;2290:208:8;;;-1:-1:-1;;2290:208:8;;;;;;;;;2267:241;;2290:208;2267:241;;;;;-1:-1:-1;2625:23:8;2267:241;2647:1;2625:23;:::i;:::-;2617:32;1206:1450;-1:-1:-1;;;;;;;1206:1450:8:o;4316:133:3:-;4381:61;4407:27;;;;;;;;;;;;;;;;;4436:5;4381:25;:61::i;3914:112::-;3969:50;3995:16;;;;;;;;;;;;;;;;;4013:5;3969:25;:50::i;4992:130::-;5054:61;5087:20;;;;;;;;;;;;;;;;;5109:5;5054:32;:61::i;2807:162:4:-;2884:78;2910:35;;;;;;;;;;;;;;;;;2947:14;2884:25;:78::i;853:298:18:-;953:50;1019:16;1065:4;1048:22;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1048:22:18;;;;;;;;;1038:33;;1048:22;1038:33;;;;;853:298;-1:-1:-1;;;853:298:18:o;12738:688:3:-;12842:4;-1:-1:-1;;;;;13052:4:3;13026:31;;13000:58;;13004:20;13071:248;13119:16;13114:3;13111:25;13071:248;;;13213:11;13207:3;13194:17;13191:34;13181:124;;13260:1;13249:12;;13282:5;;13181:124;13155:4;13146:14;13071:248;;;13075:35;;;13343:7;13338:82;;13366:43;;-1:-1:-1;;;13366:43:3;;24416:2:19;13366:43:3;;;24398:21:19;24455:2;24435:18;;;24428:30;24494:34;24474:18;;;24467:62;-1:-1:-1;;;24545:18:19;;;24538:31;24586:19;;13366:43:3;24214:397:19;4505:126:3;4548:7;4574:50;4603:20;;;;;;;;;;;;;;;;;4574:28;:50::i;2548:1000:5:-;2639:43;2660:5;2667:14;;2639:20;:43::i;:::-;2791:21;2822:14;;1375:1:2;2822:54:5;;;;;;;:::i;:::-;;;;;;;2791:86;;2912:5;:17;;;2895:14;:34;2887:71;;;;-1:-1:-1;;;2887:71:5;;24818:2:19;2887:71:5;;;24800:21:19;24857:2;24837:18;;;24830:30;24896:26;24876:18;;;24869:54;24940:18;;2887:71:5;24616:348:19;2887:71:5;2968:17;;;:34;;;3078:15;;;;3021:14;;1433:1:2;3021:53:5;;;;;;;:::i;:::-;;;;;;;:72;3013:108;;;;-1:-1:-1;;;3013:108:5;;25171:2:19;3013:108:5;;;25153:21:19;25210:2;25190:18;;;25183:30;25249:25;25229:18;;;25222:53;25292:18;;3013:108:5;24969:347:19;3013:108:5;3149:14;;1490:1:2;3149:52:5;;;;;;;:::i;:::-;;;;;;;;3131:15;;;:70;-1:-1:-1;3212:41:5;;3256:46;3287:14;;3256:30;:46::i;:::-;3212:90;;;;3354:62;3393:22;;3354:38;:62::i;:::-;3334:16;;:82;3313:138;;;;-1:-1:-1;;;3313:138:5;;25523:2:19;3313:138:5;;;25505:21:19;25562:2;25542:18;;;25535:30;-1:-1:-1;;;25581:18:19;;;25574:51;25642:18;;3313:138:5;25321:345:19;3313:138:5;3480:61;3518:22;;3480:37;:61::i;:::-;3461:80;;;-1:-1:-1;;;;;2548:1000:5:o;2583:542:2:-;2670:7;2693:13;;1655:1;2693:32;;;;;;;:::i;:::-;;;;;;;2729:1;2693:37;2689:151;;-1:-1:-1;1756:2:2;2811:18;;2689:151;2850:14;2867:13;;2881:32;1860:1;1756:2;2881:32;:::i;:::-;2867:47;;;;;;;:::i;:::-;;;;;;;2850:64;;3111:6;3107:1;:10;;;;:::i;:::-;3054;3058:6;3054:1;:10;:::i;:::-;2931:43;1756:2;2973:1;2931:43;:::i;:::-;:83;;3013:1;2931:83;:::i;:::-;:134;;;;:::i;:::-;:187;;;;:::i;:::-;2924:194;2583:542;-1:-1:-1;;;;2583:542:2:o;3748:3316::-;3921:7;3940:26;3969:18;;3988:1;3969:21;;;;;;;:::i;:::-;;;;;;;3940:50;;4029:7;4008:18;:28;4000:69;;;;-1:-1:-1;;;4000:69:2;;25873:2:19;4000:69:2;;;25855:21:19;25912:2;25892:18;;;25885:30;25951;25931:18;;;25924:58;25999:18;;4000:69:2;25671:352:19;4000:69:2;4097:1;4080:14;4136:27;4145:18;4097:1;4136:27;:::i;:::-;4108:55;;4174:25;4203:8;:80;;2437:1;4203:80;;;2097:1;4203:80;4174:110;;4295:20;4329:2411;4345:17;4336:6;:26;4329:2411;;;4378:27;4408:26;4417:17;4408:6;:26;:::i;:::-;4378:56;-1:-1:-1;4456:47:2;;;4448:77;;;;-1:-1:-1;;;4448:77:2;;26230:2:19;4448:77:2;;;26212:21:19;26269:2;26249:18;;;26242:30;-1:-1:-1;;;26288:18:19;;;26281:47;26345:18;;4448:77:2;26028:341:19;4448:77:2;4540:21;4564:18;;4583:19;4564:39;;;;;;;:::i;:::-;;;;;;;4540:63;;4641:7;4625:13;:23;4617:58;;;;-1:-1:-1;;;4617:58:2;;26576:2:19;4617:58:2;;;26558:21:19;26615:2;26595:18;;;26588:30;-1:-1:-1;;;26634:18:19;;;26627:52;26696:18;;4617:58:2;26374:346:19;4617:58:2;4690:17;4736:13;4710:23;:19;4732:1;4710:23;:::i;:::-;:39;;;;:::i;:::-;4690:59;-1:-1:-1;4771:38:2;;;;4763:76;;;;-1:-1:-1;;;4763:76:2;;26927:2:19;4763:76:2;;;26909:21:19;26966:2;26946:18;;;26939:30;27005:27;26985:18;;;26978:55;27050:18;;4763:76:2;26725:349:19;4763:76:2;4858:8;4854:1843;;;4886:19;4935:18;;4954:6;4935:36;4961:9;4935:36;;;;;;;:::i;:::-;4918:54;;;;;;;;;:::i;:::-;;;;;;;;;;;;;4908:65;;;;;;4886:87;;5214:18;;2037:1;5233:6;:40;;;;:::i;:::-;5214:60;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;4997:428:2;5087:18;;1979:1;5106:6;:42;;;;:::i;:::-;5087:62;;;;;;;:::i;:::-;;;;;;;4997:428;5342:18;;2149:1;5361:6;:34;;;;:::i;:::-;5342:64;;5396:9;;5342:64;;:::i;:::-;4997:428;;;;;;;:::i;:::-;;;;;;;;5443:21;;;;;;;;;;;:26;;5468:1;;5443:21;:26;;5468:1;;5443:26;:::i;:::-;;;;-1:-1:-1;4854:1843:2;;-1:-1:-1;;4854:1843:2;;5530:19;5579:18;;5598:6;5579:36;5605:9;5579:36;;;;;;;:::i;:::-;5562:54;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;5562:54:2;;;;;;;;;5552:65;;5562:54;5552:65;;;;5640:21;5664;;;;;;;;;;5552:65;;-1:-1:-1;5715:17:2;5707:56;;;;-1:-1:-1;;;5707:56:2;;7030:2:19;5707:56:2;;;7012:21:19;7069:2;7049:18;;;7042:30;7108:28;7088:18;;;7081:56;7154:18;;5707:56:2;6828:350:19;5707:56:2;5801:17;5817:1;5801:13;:17;:::i;:::-;5785:33;;;;:::i;:::-;5864:1;5840:21;;;;;;;;;;:25;;;5785:33;-1:-1:-1;5918:18:2;;-1:-1:-1;5918:18:2;5937:35;2321:1;5937:6;:35;:::i;:::-;5918:55;;;;;;;:::i;:::-;;;;;;;5902:71;;5991:29;6055:18;;2489:1;6074:6;:34;;;;:::i;:::-;6055:64;;6109:9;;6055:64;;:::i;:::-;5991:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6482:18;;2377:1;6501:6;:38;;;;:::i;:::-;6482:58;;;;;;;:::i;:::-;;;;;;;6367:18;;2268:1;6386:6;:40;;;;:::i;:::-;6367:60;;;;;;;:::i;:::-;;;;;;;6254:18;;2210:1;6273:6;:42;;;;:::i;:::-;6254:62;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;6143:539:2;;6594:12;6659:5;6143:539;;;;;;;:::i;:::-;;;;;;;;5490:1207;;4854:1843;6720:9;-1:-1:-1;4329:2411:2;;-1:-1:-1;;4329:2411:2;;6767:17;6757:6;:27;6749:68;;;;-1:-1:-1;;;6749:68:2;;25873:2:19;6749:68:2;;;25855:21:19;25912:2;25892:18;;;25885:30;25951;25931:18;;;25924:58;25999:18;;6749:68:2;25671:352:19;6749:68:2;6832:16;;6828:206;;6930:40;;6913:12;;6930:10;;6953:12;;6913;6930:40;6913:12;6930:40;6953:12;6930:10;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6912:58;;;6992:7;6984:39;;;;-1:-1:-1;;;6984:39:2;;28457:2:19;6984:39:2;;;28439:21:19;28496:2;28476:18;;;28469:30;-1:-1:-1;;;28515:18:19;;;28508:49;28574:18;;6984:39:2;28255:343:19;6984:39:2;6850:184;6828:206;-1:-1:-1;7051:6:2;;3748:3316;-1:-1:-1;;;;;;;;3748:3316:2:o;3371:189:18:-;3495:3;3462:21;3478:4;3462:15;:21::i;:::-;-1:-1:-1;;;;;3462:37:18;;3454:61;;;;-1:-1:-1;;;3454:61:18;;28805:2:19;3454:61:18;;;28787:21:19;28844:2;28824:18;;;28817:30;-1:-1:-1;;;28863:18:19;;;28856:41;28914:18;;3454:61:18;28603:335:19;3454:61:18;3525:28;3541:4;3547:5;3525:15;:28::i;3236:182:2:-;3316:18;;3353:11;3316:18;3353:11;3386:24;3316:18;3409:1;3386:24;:::i;:::-;3353:58;;;;;;;:::i;:::-;3346:65;;;;3236:182;;;;;;:::o;810:149::-;899:7;925:24;;950:1;925:27;;;;;;;:::i;:::-;;;;;;;918:34;;810:149;;;;:::o;1026:148::-;1114:7;1140:24;;1165:1;1140:27;;;;;;;:::i;196:367:19:-;259:8;269:6;323:3;316:4;308:6;304:17;300:27;290:55;;341:1;338;331:12;290:55;-1:-1:-1;364:20:19;;407:18;396:30;;393:50;;;439:1;436;429:12;393:50;476:4;468:6;464:17;452:29;;536:3;529:4;519:6;516:1;512:14;504:6;500:27;496:38;493:47;490:67;;;553:1;550;543:12;568:551;663:6;671;679;732:2;720:9;711:7;707:23;703:32;700:52;;;748:1;745;738:12;700:52;793:23;;;-1:-1:-1;891:2:19;876:18;;863:32;918:18;907:30;;904:50;;;950:1;947;940:12;904:50;989:70;1051:7;1042:6;1031:9;1027:22;989:70;:::i;:::-;568:551;;1078:8;;-1:-1:-1;963:96:19;;-1:-1:-1;;;;568:551:19:o;1486:226::-;1545:6;1598:2;1586:9;1577:7;1573:23;1569:32;1566:52;;;1614:1;1611;1604:12;1566:52;-1:-1:-1;1659:23:19;;1486:226;-1:-1:-1;1486:226:19:o;1717:671::-;1821:6;1829;1837;1845;1898:2;1886:9;1877:7;1873:23;1869:32;1866:52;;;1914:1;1911;1904:12;1866:52;1959:23;;;-1:-1:-1;2079:2:19;2064:18;;2051:32;;-1:-1:-1;2160:2:19;2145:18;;2132:32;2187:18;2176:30;;2173:50;;;2219:1;2216;2209:12;2173:50;2258:70;2320:7;2311:6;2300:9;2296:22;2258:70;:::i;:::-;1717:671;;;;-1:-1:-1;2347:8:19;-1:-1:-1;;;;1717:671:19:o;2646:779::-;2779:6;2787;2795;2803;2856:2;2844:9;2835:7;2831:23;2827:32;2824:52;;;2872:1;2869;2862:12;2824:52;2912:9;2899:23;2945:18;2937:6;2934:30;2931:50;;;2977:1;2974;2967:12;2931:50;3016:70;3078:7;3069:6;3058:9;3054:22;3016:70;:::i;:::-;3105:8;;-1:-1:-1;2990:96:19;-1:-1:-1;;3193:2:19;3178:18;;3165:32;3222:18;3209:32;;3206:52;;;3254:1;3251;3244:12;3430:792;3543:6;3551;3559;3567;3575;3628:3;3616:9;3607:7;3603:23;3599:33;3596:53;;;3645:1;3642;3635:12;3596:53;3690:23;;;-1:-1:-1;3810:2:19;3795:18;;3782:32;;-1:-1:-1;3891:2:19;3876:18;;3863:32;3918:18;3907:30;;3904:50;;;3950:1;3947;3940:12;3904:50;3989:70;4051:7;4042:6;4031:9;4027:22;3989:70;:::i;:::-;3430:792;;;;-1:-1:-1;4078:8:19;4186:2;4171:18;4158:32;;3430:792;-1:-1:-1;;;;3430:792:19:o;4227:671::-;4331:6;4339;4347;4355;4408:2;4396:9;4387:7;4383:23;4379:32;4376:52;;;4424:1;4421;4414:12;4376:52;4464:9;4451:23;4497:18;4489:6;4486:30;4483:50;;;4529:1;4526;4519:12;4483:50;4568:70;4630:7;4621:6;4610:9;4606:22;4568:70;:::i;:::-;4657:8;;4542:96;;-1:-1:-1;4761:2:19;4746:18;;4733:32;;4862:2;4847:18;4834:32;;-1:-1:-1;4227:671:19;-1:-1:-1;;;;4227:671:19:o;5088:586::-;5158:6;5166;5219:2;5207:9;5198:7;5194:23;5190:32;5187:52;;;5235:1;5232;5225:12;5187:52;5275:9;5262:23;5308:18;5300:6;5297:30;5294:50;;;5340:1;5337;5330:12;5294:50;5363:22;;5416:4;5408:13;;5404:27;-1:-1:-1;5394:55:19;;5445:1;5442;5435:12;5394:55;5485:2;5472:16;5511:18;5503:6;5500:30;5497:50;;;5543:1;5540;5533:12;5497:50;5588:7;5583:2;5574:6;5570:2;5566:15;5562:24;5559:37;5556:57;;;5609:1;5606;5599:12;5556:57;5640:2;5632:11;;;;;5662:6;;-1:-1:-1;5088:586:19;-1:-1:-1;;;5088:586:19:o;5679:418::-;5828:2;5817:9;5810:21;5791:4;5860:6;5854:13;5903:6;5898:2;5887:9;5883:18;5876:34;5962:6;5957:2;5949:6;5945:15;5940:2;5929:9;5925:18;5919:50;6018:1;6013:2;6004:6;5993:9;5989:22;5985:31;5978:42;6088:2;6081;6077:7;6072:2;6064:6;6060:15;6056:29;6045:9;6041:45;6037:54;6029:62;;;5679:418;;;;:::o;6102:261::-;6172:3;-1:-1:-1;;;;;6193:31:19;;6190:51;;;6237:1;6234;6227:12;6190:51;6273:6;6270:1;6266:14;6314:8;6307:5;6302:3;6289:34;6339:18;;;;;6102:261;-1:-1:-1;;;6102:261:19:o;6368:455::-;6653:6;6648:3;6641:19;6690:6;6685:2;6680:3;6676:12;6669:28;6727:6;6722:2;6717:3;6713:12;6706:28;6623:3;6750:67;6813:2;6808:3;6804:12;6796:6;6788;6750:67;:::i;7183:315::-;7275:19;;;7257:3;-1:-1:-1;;;;;7306:31:19;;7303:51;;;7350:1;7347;7340:12;7303:51;7386:6;7383:1;7379:14;7438:8;7431:5;7424:4;7419:3;7415:14;7402:45;7467:18;;;;7487:4;7463:29;;7183:315;-1:-1:-1;;;7183:315:19:o;7503:292::-;7692:2;7681:9;7674:21;7655:4;7712:77;7785:2;7774:9;7770:18;7762:6;7754;7712:77;:::i;7800:127::-;7861:10;7856:3;7852:20;7849:1;7842:31;7892:4;7889:1;7882:15;7916:4;7913:1;7906:15;7932:128;7999:9;;;8020:11;;;8017:37;;;8034:18;;:::i;9072:125::-;9137:9;;;9158:10;;;9155:36;;;9171:18;;:::i;9202:434::-;9447:2;9436:9;9429:21;9410:4;9467:77;9540:2;9529:9;9525:18;9517:6;9509;9467:77;:::i;:::-;9575:2;9560:18;;9553:34;;;;-1:-1:-1;9618:2:19;9603:18;9596:34;9459:85;9202:434;-1:-1:-1;;9202:434:19:o;9995:127::-;10056:10;10051:3;10047:20;10044:1;10037:31;10087:4;10084:1;10077:15;10111:4;10108:1;10101:15;10478:355;10599:9;10610;10652:8;10640:10;10637:24;10634:44;;;10674:1;10671;10664:12;10634:44;10703:6;10693:8;10690:20;10687:40;;;10723:1;10720;10713:12;10687:40;-1:-1:-1;;10765:1:19;10761:18;;;10749:31;;10802:25;;;;;-1:-1:-1;10478:355:19:o;10838:363::-;11055:2;11044:9;11037:21;11018:4;11075:77;11148:2;11137:9;11133:18;11125:6;11117;11075:77;:::i;:::-;11067:85;;11188:6;11183:2;11172:9;11168:18;11161:34;10838:363;;;;;;:::o;12720:1393::-;12846:6;12854;12862;12870;12878;12922:9;12913:7;12909:23;12952:3;12948:2;12944:12;12941:32;;;12969:1;12966;12959:12;12941:32;13014:23;;;-1:-1:-1;13134:2:19;13119:18;;13106:32;;-1:-1:-1;13216:2:19;13201:18;;13188:32;-1:-1:-1;;;;;13251:33:19;;13239:46;;13229:74;;13299:1;13296;13289:12;13229:74;13322:7;-1:-1:-1;13402:2:19;13387:18;;;13374:32;;-1:-1:-1;;;13448:17:19;;13444:26;13441:46;;;13483:1;13480;13473:12;13441:46;;13516:2;13510:9;13558:2;13550:6;13546:15;13627:6;13615:10;13612:22;13591:18;13579:10;13576:34;13573:62;13570:185;;;13677:10;13672:3;13668:20;13665:1;13658:31;13712:4;13709:1;13702:15;13740:4;13737:1;13730:15;13570:185;13771:2;13764:22;;;13859:3;13844:19;;13831:33;13873:23;;13957:3;13942:19;;13929:33;13924:2;13912:15;;13905:58;14036:3;14021:19;;;14008:33;14057:15;;;14050:32;;;;-1:-1:-1;12720:1393:19;;;;-1:-1:-1;12720:1393:19;13880:6;12720:1393::o;14118:212::-;14160:3;14198:5;14192:12;14242:6;14235:4;14228:5;14224:16;14219:3;14213:36;14304:1;14268:16;;14293:13;;;-1:-1:-1;14268:16:19;;14118:212;-1:-1:-1;14118:212:19:o;14335:192::-;14466:3;14491:30;14517:3;14509:6;14491:30;:::i;:::-;14484:37;14335:192;-1:-1:-1;;;14335:192:19:o;14532:587::-;14873:6;14868:3;14861:19;14910:6;14905:2;14900:3;14896:12;14889:28;14947:6;14942:2;14937:3;14933:12;14926:28;14984:6;14979:2;14974:3;14970:12;14963:28;15022:6;15016:3;15011;15007:13;15000:29;14843:3;15045:68;15108:3;15103;15099:13;15091:6;15083;15045:68;:::i;:::-;15038:75;14532:587;-1:-1:-1;;;;;;;;;14532:587:19:o;15828:168::-;15901:9;;;15932;;15949:15;;;15943:22;;15929:37;15919:71;;15970:18;;:::i;18087:521::-;18164:4;18170:6;18230:11;18217:25;18324:2;18320:7;18309:8;18293:14;18289:29;18285:43;18265:18;18261:68;18251:96;;18343:1;18340;18333:12;18251:96;18370:33;;18422:20;;;-1:-1:-1;18465:18:19;18454:30;;18451:50;;;18497:1;18494;18487:12;18451:50;18530:4;18518:17;;-1:-1:-1;18561:14:19;18557:27;;;18547:38;;18544:58;;;18598:1;18595;18588:12;18964:559;19263:6;19258:3;19251:19;19300:6;19295:2;19290:3;19286:12;19279:28;19337:6;19332:2;19327:3;19323:12;19316:28;19233:3;19363:39;19398:2;19393:3;19389:12;19381:6;19363:39;:::i;:::-;19436:6;19428;19424:2;19411:32;19497:1;19462:15;;19486:13;;;-1:-1:-1;19462:15:19;;18964:559;-1:-1:-1;;;;;;18964:559:19:o;20545:260::-;20716:3;20741:58;20795:3;20787:6;20779;20741:58;:::i;22173:277::-;22240:6;22293:2;22281:9;22272:7;22268:23;22264:32;22261:52;;;22309:1;22306;22299:12;22261:52;22341:9;22335:16;22394:5;22387:13;22380:21;22373:5;22370:32;22360:60;;22416:1;22413;22406:12;27350:690;27568:2;27580:21;;;27650:13;;27553:18;;;27672:22;;;27520:4;;27763;27751:17;;;27725:2;27710:18;;;27520:4;27796:173;27810:6;27807:1;27804:13;27796:173;;;27871:13;;27859:26;;27914:4;27942:17;;;;27905:14;;;;27832:1;27825:9;27796:173;;;-1:-1:-1;;28020:4:19;28005:20;;;;27998:36;;;;-1:-1:-1;27986:3:19;27350:690;-1:-1:-1;;27350:690:19:o", + "linkReferences": {} + }, + "methodIdentifiers": { + "aggregatorProgramHash()": "eb27feeb", + "cancelL1ToL2Message(uint256,uint256,uint256[],uint256)": "6170ff1b", + "configHash()": "e1f1176d", + "consumeMessageFromL2(uint256,uint256[])": "2c9dd5c0", + "getMaxL1MsgFee()": "54eccba4", + "identify()": "eeb72866", + "initializeContractState(bytes)": "a67f82a3", + "l1ToL2MessageCancellations(bytes32)": "9be446bf", + "l1ToL2MessageNonce()": "018cccdf", + "l1ToL2Messages(bytes32)": "77c7d7a9", + "l2ToL1Messages(bytes32)": "a46efaf3", + "messageCancellationDelay()": "8303bd8a", + "processSubContractAddresses(bytes)": "b5f5004c", + "programHash()": "8a9bf090", + "sendMessageToL2(uint256,uint256,uint256[])": "3e3aa6c5", + "setAggregatorProgramHash(uint256)": "9020429c", + "setConfigHash(uint256)": "3d07b336", + "setMessageCancellationDelay(uint256)": "c99d397f", + "setProgramHash(uint256)": "e87e7332", + "startL1ToL2MessageCancellation(uint256,uint256,uint256[],uint256)": "7a98660b", + "stateBlockHash()": "382d83e3", + "stateBlockNumber()": "35befa5d", + "stateRoot()": "9588eca2", + "updateState(uint256[],uint256,uint256)": "77552641", + "updateStateKzgDA(uint256[],bytes[])": "507ee528" + }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.26+commit.8a97fa7a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"changedBy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldAggregatorProgramHash\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newAggregatorProgramHash\",\"type\":\"uint256\"}],\"name\":\"AggregatorProgramHashChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"changedBy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldConfigHash\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newConfigHash\",\"type\":\"uint256\"}],\"name\":\"ConfigHashChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"fromAddress\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"toAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"payload\",\"type\":\"uint256[]\"}],\"name\":\"ConsumedMessageToL1\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"fromAddress\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"toAddress\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"selector\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"payload\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"ConsumedMessageToL2\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"fromAddress\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"toAddress\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"payload\",\"type\":\"uint256[]\"}],\"name\":\"LogMessageToL1\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"fromAddress\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"toAddress\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"selector\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"payload\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"LogMessageToL2\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"stateTransitionFact\",\"type\":\"bytes32\"}],\"name\":\"LogStateTransitionFact\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"globalRoot\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"int256\",\"name\":\"blockNumber\",\"type\":\"int256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"blockHash\",\"type\":\"uint256\"}],\"name\":\"LogStateUpdate\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"fromAddress\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"toAddress\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"selector\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"payload\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"MessageToL2Canceled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"fromAddress\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"toAddress\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"selector\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"payload\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"MessageToL2CancellationStarted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"changedBy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"oldProgramHash\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newProgramHash\",\"type\":\"uint256\"}],\"name\":\"ProgramHashChanged\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"aggregatorProgramHash\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"toAddress\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"selector\",\"type\":\"uint256\"},{\"internalType\":\"uint256[]\",\"name\":\"payload\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"cancelL1ToL2Message\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"configHash\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"fromAddress\",\"type\":\"uint256\"},{\"internalType\":\"uint256[]\",\"name\":\"payload\",\"type\":\"uint256[]\"}],\"name\":\"consumeMessageFromL2\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getMaxL1MsgFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"identify\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"initializeContractState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"msgHash\",\"type\":\"bytes32\"}],\"name\":\"l1ToL2MessageCancellations\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"l1ToL2MessageNonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"msgHash\",\"type\":\"bytes32\"}],\"name\":\"l1ToL2Messages\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"msgHash\",\"type\":\"bytes32\"}],\"name\":\"l2ToL1Messages\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"messageCancellationDelay\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"subContractAddresses\",\"type\":\"bytes\"}],\"name\":\"processSubContractAddresses\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"programHash\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"toAddress\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"selector\",\"type\":\"uint256\"},{\"internalType\":\"uint256[]\",\"name\":\"payload\",\"type\":\"uint256[]\"}],\"name\":\"sendMessageToL2\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newAggregatorProgramHash\",\"type\":\"uint256\"}],\"name\":\"setAggregatorProgramHash\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newConfigHash\",\"type\":\"uint256\"}],\"name\":\"setConfigHash\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"delayInSeconds\",\"type\":\"uint256\"}],\"name\":\"setMessageCancellationDelay\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"newProgramHash\",\"type\":\"uint256\"}],\"name\":\"setProgramHash\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"toAddress\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"selector\",\"type\":\"uint256\"},{\"internalType\":\"uint256[]\",\"name\":\"payload\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"startL1ToL2MessageCancellation\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stateBlockHash\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stateBlockNumber\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"stateRoot\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"programOutput\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256\",\"name\":\"onchainDataHash\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"onchainDataSize\",\"type\":\"uint256\"}],\"name\":\"updateState\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256[]\",\"name\":\"programOutput\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes[]\",\"name\":\"kzgProofs\",\"type\":\"bytes[]\"}],\"name\":\"updateStateKzgDA\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"cancelL1ToL2Message(uint256,uint256,uint256[],uint256)\":{\"notice\":\"Cancels an L1 to L2 message, this function should be called at least messageCancellationDelay() seconds after the call to startL1ToL2MessageCancellation(). A message may only be cancelled by its sender. If the message is missing, the call will revert. Note that the message fee is not refunded.\"},\"consumeMessageFromL2(uint256,uint256[])\":{\"notice\":\"Consumes a message that was sent from an L2 contract. Returns the hash of the message.\"},\"getMaxL1MsgFee()\":{\"notice\":\"Returns the max fee (in Wei) that StarkNet will accept per single message.\"},\"identify()\":{\"notice\":\"Returns a string that identifies the contract.\"},\"l1ToL2MessageCancellations(bytes32)\":{\"notice\":\"Returns the timestamp at the time cancelL1ToL2Message was called with a message matching 'msgHash'. The function returns 0 if cancelL1ToL2Message was never called.\"},\"l1ToL2Messages(bytes32)\":{\"notice\":\"Returns the msg_fee + 1 for the message with the given 'msgHash', or 0 if no message with such a hash is pending.\"},\"sendMessageToL2(uint256,uint256,uint256[])\":{\"notice\":\"Sends a message to an L2 contract.\"},\"startL1ToL2MessageCancellation(uint256,uint256,uint256[],uint256)\":{\"notice\":\"Starts the cancellation of an L1 to L2 message. A message can be canceled messageCancellationDelay() seconds after this function is called. Note: This function may only be called for a message that is currently pending and the caller must be the sender of the that message.\"},\"stateBlockHash()\":{\"notice\":\"Returns the current block hash.\"},\"stateBlockNumber()\":{\"notice\":\"Returns the current block number.\"},\"stateRoot()\":{\"notice\":\"Returns the current state root.\"},\"updateState(uint256[],uint256,uint256)\":{\"notice\":\"Updates the state of the Starknet, based on a proof of the Starknet OS that the state transition is valid. Data availability is provided on-chain. Arguments: programOutput - The main part of the StarkNet OS program output. data_availability_fact - An encoding of the on-chain data associated with the 'programOutput'.\"},\"updateStateKzgDA(uint256[],bytes[])\":{\"notice\":\"Updates the state of the StarkNet, based on a proof of the StarkNet OS that the state transition is valid. Data availability is committed with KZG and provided in a blob. Arguments: programOutput - The main part of the StarkNet OS program output. kzgProofs - array of KZG proofs - one per attached blob - which are validated together with the StarkNet OS data commitments given in 'programOutput'.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/Starknet.sol\":\"Starknet\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/IStarknetMessaging.sol\":{\"keccak256\":\"0xe0e038eb4aeb19d55b192a1314450f32ef647fbfd5dbaa6e796963905de3e2f9\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://2465b60194cc73b289a4f57ec03367ec2b1b71c7746af2d96d59be72524aa086\",\"dweb:/ipfs/QmbEbnj78bSm29gpCmD2dwiBAC5jbgWMjqu9cJyXon3Jmi\"]},\"src/IStarknetMessagingEvents.sol\":{\"keccak256\":\"0xcb6194e9189dd38f0b28dde285495ed1ce5c4a90dddadbb1768933375c877487\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://092105d0b1db08dd8f231f3aecb4e92c6aad84ca6b0408b0b7f251284d83a1f4\",\"dweb:/ipfs/QmXKJST5NjJp7r2oN1cbtyE2b8cxhsawKwU1V6SnFzb6Gq\"]},\"src/Output.sol\":{\"keccak256\":\"0x28a6d4cd0fb29625e98a200a2f51cd33513bb308a1c4692a615253dd91d82471\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://aed6df95ea8129015422c106912f046a057b211f64d4615673dc9ed54125af01\",\"dweb:/ipfs/QmU4HDSG37j1rieQtmSbRgPc2mfoHdLNTBaMi8PcXX1C88\"]},\"src/Starknet.sol\":{\"keccak256\":\"0x680c17b5cfd06be2614cadb2adbac12161ce0747b802f0872c71e09396e53876\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://303a1b1acb18d689c0fb34007f608f793f76f05fc43678f77843c874491c194c\",\"dweb:/ipfs/QmZcmzbhsqd54kQdTdKCRLTgEHDQJzY1fFUBf2cYinBWsn\"]},\"src/StarknetMessaging.sol\":{\"keccak256\":\"0xc1e134064842045a6205df5fa9c30ec893684e55a47586755f234ddb6352818c\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://68c9016d5821751ad9234daadef293fa592e0f2052f31133edcb85020737bdf8\",\"dweb:/ipfs/QmUkomRUG8heeSzMP5XpPZ14fkpqdMtbcbxSeDUFai2RXa\"]},\"src/StarknetState.sol\":{\"keccak256\":\"0xfc55dc64664b8efe9ea9ae97b9a5a72638b2b7a97154ae9008ca0baf7c88d39c\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://8e67f1e39dc1029d577362232bc06f1413f17839254652e5a2d11c61d5c27445\",\"dweb:/ipfs/QmccFu2e1ZJihwwp4UYC5EvAzkkaCa6eVVCrcBKHrEQzzC\"]},\"src/solidity/components/OnchainDataFactTreeEncoder.sol\":{\"keccak256\":\"0x5945051ebef466c97fb65820d2bcf14969ba52c42f29ce883e6cd55e1fbef37d\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://262143c09bf4ed33d59e149bdb0544ba3a4bb8a827eab0cc23679de88e932f22\",\"dweb:/ipfs/QmSbQnEGEvk1MABVTLFvEx7fopLokmSAZ2q6HHDPnawh5d\"]},\"src/solidity/interfaces/IFactRegistry.sol\":{\"keccak256\":\"0xbe456a137d202335e346545fb54e86087f512964e3ecca793cf3a7e7d10fa9aa\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://575b56fa39f0ff34e8c7d7561dcec77c9173680127dc31af7cbc68edff6f1b36\",\"dweb:/ipfs/QmTj1dHS9T2q8SymFxMCTHoAAyxpGpqWCHHEREKyaEUdPx\"]},\"src/solidity/interfaces/Identity.sol\":{\"keccak256\":\"0xff3783c8be0b8d85e37dabc00de83cb1d1374f97824a04c9d3c58031e0aec6c3\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://11611c356ddf54b307021e931cdbc7a945cd7b88246b62b25285150cfdd7d7bf\",\"dweb:/ipfs/QmZvjzxTjCNjpz6L7phgHhK8VhB9Tw1QCtbBHk9Kj7dGs4\"]},\"src/solidity/libraries/NamedStorage8.sol\":{\"keccak256\":\"0x1d91403faece21d822366533498dc8f2e508b4524e727b634a81a81bebb80de1\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://5ee31309ff400ac1886e4896e29efa0c9295116fde51b0e87204c560d10aaf66\",\"dweb:/ipfs/Qme2PJuAkWhwZXd94GXcx578i6E9UKjuw5BjJ7Zj2LDPH1\"]}},\"version\":1}", + "metadata": { + "compiler": { "version": "0.8.26+commit.8a97fa7a" }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "changedBy", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "oldAggregatorProgramHash", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "newAggregatorProgramHash", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "AggregatorProgramHashChanged", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "changedBy", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "oldConfigHash", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "newConfigHash", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "ConfigHashChanged", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "fromAddress", + "type": "uint256", + "indexed": true + }, + { + "internalType": "address", + "name": "toAddress", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]", + "indexed": false + } + ], + "type": "event", + "name": "ConsumedMessageToL1", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "fromAddress", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "toAddress", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256", + "name": "selector", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]", + "indexed": false + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "ConsumedMessageToL2", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "fromAddress", + "type": "uint256", + "indexed": true + }, + { + "internalType": "address", + "name": "toAddress", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]", + "indexed": false + } + ], + "type": "event", + "name": "LogMessageToL1", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "fromAddress", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "toAddress", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256", + "name": "selector", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]", + "indexed": false + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "fee", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "LogMessageToL2", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "stateTransitionFact", + "type": "bytes32", + "indexed": false + } + ], + "type": "event", + "name": "LogStateTransitionFact", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "globalRoot", + "type": "uint256", + "indexed": false + }, + { + "internalType": "int256", + "name": "blockNumber", + "type": "int256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "blockHash", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "LogStateUpdate", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "fromAddress", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "toAddress", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256", + "name": "selector", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]", + "indexed": false + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "MessageToL2Canceled", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "fromAddress", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "toAddress", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256", + "name": "selector", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]", + "indexed": false + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "MessageToL2CancellationStarted", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "changedBy", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "oldProgramHash", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "newProgramHash", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "ProgramHashChanged", + "anonymous": false + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "aggregatorProgramHash", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "toAddress", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "selector", + "type": "uint256" + }, + { + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]" + }, + { "internalType": "uint256", "name": "nonce", "type": "uint256" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "cancelL1ToL2Message", + "outputs": [ + { "internalType": "bytes32", "name": "", "type": "bytes32" } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "configHash", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "fromAddress", + "type": "uint256" + }, + { + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "consumeMessageFromL2", + "outputs": [ + { "internalType": "bytes32", "name": "", "type": "bytes32" } + ] + }, + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "getMaxL1MsgFee", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "identify", + "outputs": [ + { "internalType": "string", "name": "", "type": "string" } + ] + }, + { + "inputs": [ + { "internalType": "bytes", "name": "data", "type": "bytes" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "initializeContractState" + }, + { + "inputs": [ + { "internalType": "bytes32", "name": "msgHash", "type": "bytes32" } + ], + "stateMutability": "view", + "type": "function", + "name": "l1ToL2MessageCancellations", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "l1ToL2MessageNonce", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [ + { "internalType": "bytes32", "name": "msgHash", "type": "bytes32" } + ], + "stateMutability": "view", + "type": "function", + "name": "l1ToL2Messages", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [ + { "internalType": "bytes32", "name": "msgHash", "type": "bytes32" } + ], + "stateMutability": "view", + "type": "function", + "name": "l2ToL1Messages", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "messageCancellationDelay", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "subContractAddresses", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "processSubContractAddresses" + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "programHash", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "toAddress", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "selector", + "type": "uint256" + }, + { + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]" + } + ], + "stateMutability": "payable", + "type": "function", + "name": "sendMessageToL2", + "outputs": [ + { "internalType": "bytes32", "name": "", "type": "bytes32" }, + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "newAggregatorProgramHash", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setAggregatorProgramHash" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "newConfigHash", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setConfigHash" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "delayInSeconds", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setMessageCancellationDelay" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "newProgramHash", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setProgramHash" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "toAddress", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "selector", + "type": "uint256" + }, + { + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]" + }, + { "internalType": "uint256", "name": "nonce", "type": "uint256" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "startL1ToL2MessageCancellation", + "outputs": [ + { "internalType": "bytes32", "name": "", "type": "bytes32" } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "stateBlockHash", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "stateBlockNumber", + "outputs": [ + { "internalType": "int256", "name": "", "type": "int256" } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "stateRoot", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [ + { + "internalType": "uint256[]", + "name": "programOutput", + "type": "uint256[]" + }, + { + "internalType": "uint256", + "name": "onchainDataHash", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "onchainDataSize", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "updateState" + }, + { + "inputs": [ + { + "internalType": "uint256[]", + "name": "programOutput", + "type": "uint256[]" + }, + { + "internalType": "bytes[]", + "name": "kzgProofs", + "type": "bytes[]" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "updateStateKzgDA" + } + ], + "devdoc": { "kind": "dev", "methods": {}, "version": 1 }, + "userdoc": { + "kind": "user", + "methods": { + "cancelL1ToL2Message(uint256,uint256,uint256[],uint256)": { + "notice": "Cancels an L1 to L2 message, this function should be called at least messageCancellationDelay() seconds after the call to startL1ToL2MessageCancellation(). A message may only be cancelled by its sender. If the message is missing, the call will revert. Note that the message fee is not refunded." + }, + "consumeMessageFromL2(uint256,uint256[])": { + "notice": "Consumes a message that was sent from an L2 contract. Returns the hash of the message." + }, + "getMaxL1MsgFee()": { + "notice": "Returns the max fee (in Wei) that StarkNet will accept per single message." + }, + "identify()": { + "notice": "Returns a string that identifies the contract." + }, + "l1ToL2MessageCancellations(bytes32)": { + "notice": "Returns the timestamp at the time cancelL1ToL2Message was called with a message matching 'msgHash'. The function returns 0 if cancelL1ToL2Message was never called." + }, + "l1ToL2Messages(bytes32)": { + "notice": "Returns the msg_fee + 1 for the message with the given 'msgHash', or 0 if no message with such a hash is pending." + }, + "sendMessageToL2(uint256,uint256,uint256[])": { + "notice": "Sends a message to an L2 contract." + }, + "startL1ToL2MessageCancellation(uint256,uint256,uint256[],uint256)": { + "notice": "Starts the cancellation of an L1 to L2 message. A message can be canceled messageCancellationDelay() seconds after this function is called. Note: This function may only be called for a message that is currently pending and the caller must be the sender of the that message." + }, + "stateBlockHash()": { "notice": "Returns the current block hash." }, + "stateBlockNumber()": { + "notice": "Returns the current block number." + }, + "stateRoot()": { "notice": "Returns the current state root." }, + "updateState(uint256[],uint256,uint256)": { + "notice": "Updates the state of the Starknet, based on a proof of the Starknet OS that the state transition is valid. Data availability is provided on-chain. Arguments: programOutput - The main part of the StarkNet OS program output. data_availability_fact - An encoding of the on-chain data associated with the 'programOutput'." + }, + "updateStateKzgDA(uint256[],bytes[])": { + "notice": "Updates the state of the StarkNet, based on a proof of the StarkNet OS that the state transition is valid. Data availability is committed with KZG and provided in a blob. Arguments: programOutput - The main part of the StarkNet OS program output. kzgProofs - array of KZG proofs - one per attached blob - which are validated together with the StarkNet OS data commitments given in 'programOutput'." + } + }, + "version": 1 + } + }, + "settings": { + "remappings": ["forge-std/=lib/forge-std/src/"], + "optimizer": { "enabled": true, "runs": 200 }, + "metadata": { "bytecodeHash": "ipfs" }, + "compilationTarget": { "src/Starknet.sol": "Starknet" }, + "evmVersion": "cancun", + "libraries": {} + }, + "sources": { + "src/IStarknetMessaging.sol": { + "keccak256": "0xe0e038eb4aeb19d55b192a1314450f32ef647fbfd5dbaa6e796963905de3e2f9", + "urls": [ + "bzz-raw://2465b60194cc73b289a4f57ec03367ec2b1b71c7746af2d96d59be72524aa086", + "dweb:/ipfs/QmbEbnj78bSm29gpCmD2dwiBAC5jbgWMjqu9cJyXon3Jmi" + ], + "license": "Apache-2.0." + }, + "src/IStarknetMessagingEvents.sol": { + "keccak256": "0xcb6194e9189dd38f0b28dde285495ed1ce5c4a90dddadbb1768933375c877487", + "urls": [ + "bzz-raw://092105d0b1db08dd8f231f3aecb4e92c6aad84ca6b0408b0b7f251284d83a1f4", + "dweb:/ipfs/QmXKJST5NjJp7r2oN1cbtyE2b8cxhsawKwU1V6SnFzb6Gq" + ], + "license": "Apache-2.0." + }, + "src/Output.sol": { + "keccak256": "0x28a6d4cd0fb29625e98a200a2f51cd33513bb308a1c4692a615253dd91d82471", + "urls": [ + "bzz-raw://aed6df95ea8129015422c106912f046a057b211f64d4615673dc9ed54125af01", + "dweb:/ipfs/QmU4HDSG37j1rieQtmSbRgPc2mfoHdLNTBaMi8PcXX1C88" + ], + "license": "Apache-2.0." + }, + "src/Starknet.sol": { + "keccak256": "0x680c17b5cfd06be2614cadb2adbac12161ce0747b802f0872c71e09396e53876", + "urls": [ + "bzz-raw://303a1b1acb18d689c0fb34007f608f793f76f05fc43678f77843c874491c194c", + "dweb:/ipfs/QmZcmzbhsqd54kQdTdKCRLTgEHDQJzY1fFUBf2cYinBWsn" + ], + "license": "Apache-2.0." + }, + "src/StarknetMessaging.sol": { + "keccak256": "0xc1e134064842045a6205df5fa9c30ec893684e55a47586755f234ddb6352818c", + "urls": [ + "bzz-raw://68c9016d5821751ad9234daadef293fa592e0f2052f31133edcb85020737bdf8", + "dweb:/ipfs/QmUkomRUG8heeSzMP5XpPZ14fkpqdMtbcbxSeDUFai2RXa" + ], + "license": "Apache-2.0." + }, + "src/StarknetState.sol": { + "keccak256": "0xfc55dc64664b8efe9ea9ae97b9a5a72638b2b7a97154ae9008ca0baf7c88d39c", + "urls": [ + "bzz-raw://8e67f1e39dc1029d577362232bc06f1413f17839254652e5a2d11c61d5c27445", + "dweb:/ipfs/QmccFu2e1ZJihwwp4UYC5EvAzkkaCa6eVVCrcBKHrEQzzC" + ], + "license": "Apache-2.0." + }, + "src/solidity/components/OnchainDataFactTreeEncoder.sol": { + "keccak256": "0x5945051ebef466c97fb65820d2bcf14969ba52c42f29ce883e6cd55e1fbef37d", + "urls": [ + "bzz-raw://262143c09bf4ed33d59e149bdb0544ba3a4bb8a827eab0cc23679de88e932f22", + "dweb:/ipfs/QmSbQnEGEvk1MABVTLFvEx7fopLokmSAZ2q6HHDPnawh5d" + ], + "license": "Apache-2.0." + }, + "src/solidity/interfaces/IFactRegistry.sol": { + "keccak256": "0xbe456a137d202335e346545fb54e86087f512964e3ecca793cf3a7e7d10fa9aa", + "urls": [ + "bzz-raw://575b56fa39f0ff34e8c7d7561dcec77c9173680127dc31af7cbc68edff6f1b36", + "dweb:/ipfs/QmTj1dHS9T2q8SymFxMCTHoAAyxpGpqWCHHEREKyaEUdPx" + ], + "license": "Apache-2.0." + }, + "src/solidity/interfaces/Identity.sol": { + "keccak256": "0xff3783c8be0b8d85e37dabc00de83cb1d1374f97824a04c9d3c58031e0aec6c3", + "urls": [ + "bzz-raw://11611c356ddf54b307021e931cdbc7a945cd7b88246b62b25285150cfdd7d7bf", + "dweb:/ipfs/QmZvjzxTjCNjpz6L7phgHhK8VhB9Tw1QCtbBHk9Kj7dGs4" + ], + "license": "Apache-2.0." + }, + "src/solidity/libraries/NamedStorage8.sol": { + "keccak256": "0x1d91403faece21d822366533498dc8f2e508b4524e727b634a81a81bebb80de1", + "urls": [ + "bzz-raw://5ee31309ff400ac1886e4896e29efa0c9295116fde51b0e87204c560d10aaf66", + "dweb:/ipfs/Qme2PJuAkWhwZXd94GXcx578i6E9UKjuw5BjJ7Zj2LDPH1" + ], + "license": "Apache-2.0." + } + }, + "version": 1 + }, + "id": 3 +} diff --git a/e2e-tests/artifacts/get_state_update_671070.json b/e2e-tests/artifacts/get_state_update_671070.json new file mode 100644 index 000000000..942e88f8c --- /dev/null +++ b/e2e-tests/artifacts/get_state_update_671070.json @@ -0,0 +1,4432 @@ +{ + "block_hash": "0x3ce506e8eadfce1d621ab1eec105dfa43a9ae815e9b6b5e5bf9404e7d9a1653", + "old_root": "0x5f2db08bf7c3f0d7fd74a1800ed2c01de8f86e2fbbdbdcc57ce85ebb9ee6714", + "new_root": "0xb431bc099d6150401d820cd1bbef1765870945e967257e9184948cc57e1360", + "state_diff": { + "storage_diffs": [ + { + "address": "0x461682cc22e417a1fdaeeebf75171d20ea9ee3192ef2994241ec738a9011ec7", + "storage_entries": [] + }, + { + "address": "0x4b0a18b01c7816f86ae1a33df53e84572c0c79107b967ce2e7bf4a8b641d553", + "storage_entries": [] + }, + { + "address": "0x42bd58d8bf6b3872365767868b3f1f9fbc183c23f10566006cd84ce234265b8", + "storage_entries": [] + }, + { + "address": "0x15a288e90db4951762d0c156f48b7efa2ffe5a75bd12f55d8e6a38fbdddfc0f", + "storage_entries": [] + }, + { + "address": "0x6182278e63816ff4080ed07d668f991df6773fd13db0ea10971096033411b11", + "storage_entries": [ + { + "key": "0x3fe65e1dc9c95b8eac23689a73f4e7d2977698e5fe18fc94a6efaaa83957f8", + "value": "0x9ab12" + }, + { + "key": "0x7906d24c8b377670fb2b1d7bc71e1c6c0e5d6d9493853d59d62047e7f08934a", + "value": "0x9ab12" + }, + { + "key": "0x17d92a5ef59f284e0816d1e00c104b1c29694c019a4d709096c1054939847cd", + "value": "0x7110d84a0b0a3e8673e1f7d465c3f6c6a886ba7bb7c090b26053b150c7fd7a0" + }, + { + "key": "0x291625bbd3d00024377934a31b5cdf6dfcc1e76776985889e17efb47b3ce2f0", + "value": "0x9ab12" + }, + { + "key": "0x733f376b663b01387ab10c524d5af310326ed27da0e54d4a4cbd39eb4bbbbd2", + "value": "0x35453afed2c0941a00000" + }, + { + "key": "0x5229ab8ddc4fce669ee1f6915be36634a47c6c78014936862652adc6cf7bdef", + "value": "0x4f5447253a34ad18d8318f724272523285aedaff0f906f68b3e7ba45502f2c5" + }, + { + "key": "0x37a9774624a0e3e0d8e6b72bd35514f62b3e8e70fbaff4ed27181de4ffd4604", + "value": "0x12dfb4eb3e4f8419a0600000" + }, + { + "key": "0x70857e4361260cbed70dc16aa24e12881387b03d85f57e41d6d50c75df8e963", + "value": "0x9ab12" + }, + { + "key": "0x3fe54d14de82782a416569965d98673d641110f9d6d60d41c7506a793305bb6", + "value": "0x3218142da42888ba00000" + }, + { + "key": "0xd2cf9c95a1b7188942cfeb6b1935248a995bee9f0eaa6a60228e85cfc5696c", + "value": "0x42bd58d8bf6b3872365767868b3f1f9fbc183c23f10566006cd84ce234265b8" + }, + { + "key": "0x7b18ee438a4cb786abb44d6b67568802844f509cb0cd00d90bced8e919bb593", + "value": "0x9ab12" + }, + { + "key": "0x7b38e60d778428e2c06ec2629ba01a271f1147e404d9ec1f052645d62d59e5d", + "value": "0x9ab10" + }, + { + "key": "0x346ca968d0ca7bec3a9a1fa43c2c794dcc399233e6576801107224767eea48", + "value": "0x541866b17b40bfd2a00000" + }, + { + "key": "0x4b2e54e5cbbfe91c6e474cf38d1d0d3b98a2828c07120075db7037b0d3a98ad", + "value": "0x34362e0e6de33afa00000" + }, + { + "key": "0x24576f6382820f978c61c8faadb29d8c87e2f9316229615648a6498256d5ce5", + "value": "0x9ab12" + }, + { + "key": "0x7d42c1838d13fa94d3f00304fe618766ad0ada8e0138966e8161b47a92c7e69", + "value": "0x9ab12" + }, + { + "key": "0x34b79c5986b88d4d66b160f33f63f1286023f26e4f7c313fe62589757f36d1c", + "value": "0x3620d1fd141578ab27fa1d0d33f51658e50d08af34792422c95035929a8e80b" + }, + { + "key": "0x2ded8b6438d8d3a6c7ec09be02be120ba4e4bdc9b2c4df40c8080571b623099", + "value": "0x350177c2b9893dd200000" + }, + { + "key": "0x39e455f60a1063efa5d0fe90d769cdd3788905e25e2c34fa671b0b97e76a11a", + "value": "0x9ab11" + }, + { + "key": "0x1e44381b0f95a657a83284ece260c1948e6c965da4d357f7fbd6b557342cdc0", + "value": "0xbb8eb" + }, + { + "key": "0x1bb47a0abe408857c4c31360732fab2d090206287d740c6d4d69f2dab53e468", + "value": "0x334902bc15a18cfe00000" + } + ] + }, + { + "address": "0x1114c7103e12c2b2ecbd3a2472ba9c48ddcbf702b1c242dd570057e26212111", + "storage_entries": [ + { + "key": "0xc3b3960ca36cf159186b8724dcb63df660776ec7c1d32f5fb4c6eb6430caea", + "value": "0x6000000000000874cdb32d794e1a5af0000000000000087372b9df90decad81" + }, + { + "key": "0xecc78097ad363e630b3614241e39b94fd3a4d1749450a75d5a5196955bdefe", + "value": "0x66cafe7800057e514be59400000000000000000d689125f5d9aa71e6aaf6a9" + }, + { + "key": "0x7ee60d6f025746fda4a28bd4d3cb05d4d91c9328ae15f80fdef5a239eb7c580", + "value": "0x66cafe7800057e5cf92adc00000000000000000d2837bcb309321dd6d73223" + }, + { + "key": "0x171f8a9d9698a5d4463d3f88224ac770d61e8399f2e240ce2f576a93c01b165", + "value": "0x21915e068c8ceb8300000000000000000001436db584fc95" + }, + { + "key": "0x6c1df6be32e1224894c048674f84ac1a487cb8fb62cf7ec5835088ee0fb501e", + "value": "0xffffffffffffffffffffffffffeb61af63cdacdcc25e5fa33afcafbfd2d1e6" + }, + { + "key": "0x86759ce5ecf53e060bae0d153b46fd2e9336e0443a1467de1325d1f312fbf9", + "value": "0x400000000000000009fcb48d228f19c0000000000000000001218c7cdaa5920" + }, + { + "key": "0x20889ecebf032c83e44174bd6457730aff4f1e1fe1215837562cc0a5c6b2544", + "value": "0xc30f30000000000000000031875fd032c61a0844ab49d" + }, + { + "key": "0x171f8a9d9698a5d4463d3f88224ac770d61e8399f2e240ce2f576a93c01b164", + "value": "0x4ae3a1414419211a4f2621b23b5f" + }, + { + "key": "0x6c1df6be32e1224894c048674f84ac1a487cb8fb62cf7ec5835088ee0fb501d", + "value": "0xffff00000000000000000036f624691da005" + }, + { + "key": "0x8e5be92cdf8db6fbac128d3b061b14f72f85464222cc507fc4de6bdba9201a", + "value": "0x400000000000014fee24e9e26c1f00b0000000000000014fee24e9e26c1f00b" + }, + { + "key": "0x4a4f4c75a42ca953aec36b5c566010882b1723b321cdc59ab7eef6409981d77", + "value": "0x2087" + }, + { + "key": "0x45235f8e6223baa6aa3198133367c1bbfed97780bce569166e813e2e91c0c1b", + "value": "0x95c1861d5ea8f7f18" + }, + { + "key": "0x33d9cbf722dd0533df8300f6db744ee7579898955e200e84c4c26261be70203", + "value": "0x40000000000000003ce69274aec91df0000000000000000039d3c1f6670340f" + }, + { + "key": "0x6c1df6be32e1224894c048674f84ac1a487cb8fb62cf7ec5835088ee0fb5020", + "value": "0x15d7a466bbed164e0000000000000000000000000009bedc" + }, + { + "key": "0xf43bfdcd0c735b1c78f1974ca873ab1e643256127aa1f0d68881dab8666d22", + "value": "0x40000000000014b19aeca42fca2139100000000000000f5e1397dadb313a4a3" + }, + { + "key": "0x7d99f197ae6fe0e3c8aa36a180d6044652f5d124cc21990431e99e28bc05a1a", + "value": "0xd254515c53568ff00546f7afc7362c0043c" + }, + { + "key": "0x4369fa3ae0eca1d92c2c94c8ff8a212f2dc04b481525f8fdf5fd31529e256f3", + "value": "0x400000000000000011cd5ba49bad5190000000000000000011cd5ba49bad519" + }, + { + "key": "0x15d6bb0717fd1abaedaeba1d6a50e2c12fd2a4e18b58076c9ecee1cf167d5e6", + "value": "0x6000000000000000143af98302391e800000000000000000143af98302391e8" + }, + { + "key": "0x4e7fa96de2519272d6ded3565591b4b53efbcd88e9689d6b993570ec95e98f1", + "value": "0x92efe000000000000000000000aa5e10bb51e459d62e9" + }, + { + "key": "0x7d99f197ae6fe0e3c8aa36a180d6044652f5d124cc21990431e99e28bc05a1c", + "value": "0x1f2797aed173b5de2000000000000000000000000004f8c6a" + }, + { + "key": "0x755b191fd987ebd205ade2ca0fa41d510527ef043145447bee096a4d6ad03d4", + "value": "0x200000000000000000000000000000001" + }, + { + "key": "0xc058c8b6ae41745fcc0197cab2bbeed684f4b325afd749ff03acda0cfdc1bd", + "value": "0x133b99732c3cb55805beaed8ce5" + }, + { + "key": "0x1f874d13289b986fc31bb6e396c37ebe60ac1df87cf5ba51f1775a64c3b4fb8", + "value": "0x4b63e5cfb10de5c" + }, + { + "key": "0x658e1ab71c65933f08eb0fbb029bd7b0a230a42fcc913fbc8483545e7abd5fd", + "value": "0x448f" + }, + { + "key": "0x4092289c1fccf5af04adaca35c1267808fb943873a47205f1eae8968f3908b7", + "value": "0x42db88becbecc12dcd22cb3d7361b6" + }, + { + "key": "0x6e12e10adeb117597698956f97cacc7a60ade484bcd0ce2a1309db473071ba5", + "value": "0x0" + }, + { + "key": "0x6c1df6be32e1224894c048674f84ac1a487cb8fb62cf7ec5835088ee0fb501f", + "value": "0xfffffffffffffffffffffffffffffffffffff169340b9aa021e2cd38bbab29" + }, + { + "key": "0x45235f8e6223baa6aa3198133367c1bbfed97780bce569166e813e2e91c0c1d", + "value": "0x58599d90529110dba826afe901a9" + }, + { + "key": "0x45235f8e6223baa6aa3198133367c1bbfed97780bce569166e813e2e91c0c1c", + "value": "0x16cba4d11457c499d39ac586ce479bac" + }, + { + "key": "0x6e12e10adeb117597698956f97cacc7a60ade484bcd0ce2a1309db473071ba2", + "value": "0xffff00000000000000000000000000000000" + }, + { + "key": "0x3745c9208ca3169720b4d2a32a4bcc5275287afe971fd0657420126f49bc70", + "value": "0x400000000000053be80a361c5f7f55a000000000000004644f71d4364ceb234" + }, + { + "key": "0x755b191fd987ebd205ade2ca0fa41d510527ef043145447bee096a4d6ad03d1", + "value": "0xffff00000000000000000000000000000000" + }, + { + "key": "0x7d99f197ae6fe0e3c8aa36a180d6044652f5d124cc21990431e99e28bc05a19", + "value": "0x116213556af68d8" + }, + { + "key": "0x156f9c7abe798baad1c90b4ec6815a0865e1cc735b7777fbea3efc771f9bf21", + "value": "0x7f2fe23987ba63abdf91f19a1c81d4df" + }, + { + "key": "0x7d99f197ae6fe0e3c8aa36a180d6044652f5d124cc21990431e99e28bc05a1b", + "value": "0x55f7b555c9f7d0ad43e79e2bc" + }, + { + "key": "0x171f8a9d9698a5d4463d3f88224ac770d61e8399f2e240ce2f576a93c01b162", + "value": "0x7b6deba9387bdacf9" + }, + { + "key": "0x156f9c7abe798baad1c90b4ec6815a0865e1cc735b7777fbea3efc771f9bf22", + "value": "0xedfb" + }, + { + "key": "0x1cf0763e0562c7d70756507b5455a16e93f520e9f186212e0292b9052cb1cc4", + "value": "0x60000000000000000488a1b7a864d3300000000000000000047b22b978fde8b" + }, + { + "key": "0x171f8a9d9698a5d4463d3f88224ac770d61e8399f2e240ce2f576a93c01b163", + "value": "0x8b246f7814977e5e56c999fdf66f066" + }, + { + "key": "0x3a8651c5f7eda965d83ac5cdfd042c739e3b55b27ce608d8a582b69821a041a", + "value": "0xc45161b7802ddaf3e57" + }, + { + "key": "0x10060fb554b3ccb720f4bd34f4f1a3c61ae980b921fe36e80db68a6c1556dc", + "value": "0x92bbf6c339ba6e8" + }, + { + "key": "0x7b610f0edc7562777384acb11448c8f74e01e5305adea924d194c6b6eeb0028", + "value": "0x400000000000000009f420f0d48c8f30000000000000000009f420f0d48c8f3" + } + ] + }, + { + "address": "0x6f1bd7222f6aad3504c09658f224e66889b33d3907638b76099391cd1448ebf", + "storage_entries": [] + }, + { + "address": "0x172583c1be9f7701402e97f58f2a891846a7bd772165d485a1415dbb5bb08ae", + "storage_entries": [ + { + "key": "0x15c547a631716eab468184835e50ec65ec1393aa9f5b36700dc49cf3e4d1435", + "value": "0x66cafe78" + }, + { + "key": "0x40228d72bbb9022e37a20a42e8cebe3e0c58650273b581b84ad5ec8131541ba", + "value": "0xa3d5e" + }, + { + "key": "0x15c547a631716eab468184835e50ec65ec1393aa9f5b36700dc49cf3e4d1434", + "value": "0x66cafea0" + }, + { + "key": "0x15c547a631716eab468184835e50ec65ec1393aa9f5b36700dc49cf3e4d1432", + "value": "0x40256ff080" + }, + { + "key": "0x40228d72bbb9022e37a20a42e8cebe3e0c58650273b581b84ad5ec8131541bc", + "value": "0x66cafe78" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x7474" + }, + { + "key": "0x70ae50fb3359f6e228c9f9da5219f2046fead5176059f2958e2d83e6016e20", + "value": "0x66cafe7a" + }, + { + "key": "0x15c547a631716eab468184835e50ec65ec1393aa9f5b36700dc49cf3e4d1433", + "value": "0xa3d5e" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x426002" + }, + { + "key": "0x70ae50fb3359f6e228c9f9da5219f2046fead5176059f2958e2d83e6016e21", + "value": "0x66cafe78" + }, + { + "key": "0x40228d72bbb9022e37a20a42e8cebe3e0c58650273b581b84ad5ec8131541b9", + "value": "0x4027354730" + }, + { + "key": "0x40228d72bbb9022e37a20a42e8cebe3e0c58650273b581b84ad5ec8131541bb", + "value": "0x66cafeb4" + }, + { + "key": "0x70ae50fb3359f6e228c9f9da5219f2046fead5176059f2958e2d83e6016e1e", + "value": "0x4028652e68" + }, + { + "key": "0x70ae50fb3359f6e228c9f9da5219f2046fead5176059f2958e2d83e6016e1f", + "value": "0xa3d5e" + } + ] + }, + { + "address": "0x1c3384a988b041806b31b4d261e845be147165e223f81d89199e4c6bc6d4cb1", + "storage_entries": [] + }, + { + "address": "0x616350aa9964ba2e5fe60cc5f7f3ec4889473161a28b2202a3f8e4ee36ecab3", + "storage_entries": [ + { + "key": "0x36addc851ef8aaf7d47730978119619e465c662c0e900766ce39af6436c3d45", + "value": "0x1" + } + ] + }, + { + "address": "0x4f5447253a34ad18d8318f724272523285aedaff0f906f68b3e7ba45502f2c5", + "storage_entries": [] + }, + { + "address": "0x780f5ab2151d7c46a08a87c445a1012fa376a9c0e1df22e949d3d32740710f", + "storage_entries": [] + }, + { + "address": "0x1c4776dc67cd32ebbddb9699f487b4410194ada82fcffbbdf214dc23e9553ca", + "storage_entries": [] + }, + { + "address": "0x575a33680cca4beb4c3efb7297b7ee0f7bb4e672a9149c4691f1409e6c94322", + "storage_entries": [ + { + "key": "0x694cdea1e552a287037a06a199307f5a02d12dba3024ac671796b67aaa4e59c", + "value": "0x169e9dfe886ec618cf" + } + ] + }, + { + "address": "0x117f8c547be7d78ccfc63b705277855ce0ae20981f7b5224dca239f188843c7", + "storage_entries": [ + { + "key": "0x3dd762ba7a0f3ae18b3d3808fc7725423b90f5f5f66c1c49f9ae2b2672c6bac", + "value": "0x12841233e17064c30206e983247b9a5b46b56427f1cd621c780b3fbba1db083" + }, + { + "key": "0x57b14519547eb8031ccad54394b0d66c426736a195bf0fd563e79b5b37b849", + "value": "0x228" + } + ] + }, + { + "address": "0xd134b38cfa648b8b434850d8f292c8de98c016e940df204b945eb557656947", + "storage_entries": [ + { + "key": "0x6017fe2259e7bce631b7316afad31b76a54803f491d596daf4c5b2764ce1a62", + "value": "0x66cafe78" + }, + { + "key": "0x6017fe2259e7bce631b7316afad31b76a54803f491d596daf4c5b2764ce1a5f", + "value": "0x5f5ffb4" + }, + { + "key": "0x632de246297333b69466413e9b7145472afeeefc0c8636348c6cd094c018791", + "value": "0x5f5fde1" + }, + { + "key": "0x632de246297333b69466413e9b7145472afeeefc0c8636348c6cd094c018792", + "value": "0xa3d5e" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x59d3" + }, + { + "key": "0x6017fe2259e7bce631b7316afad31b76a54803f491d596daf4c5b2764ce1a60", + "value": "0xa3d5e" + }, + { + "key": "0x632de246297333b69466413e9b7145472afeeefc0c8636348c6cd094c018793", + "value": "0x66cafea1" + }, + { + "key": "0x6017fe2259e7bce631b7316afad31b76a54803f491d596daf4c5b2764ce1a61", + "value": "0x66cafe8d" + }, + { + "key": "0x632de246297333b69466413e9b7145472afeeefc0c8636348c6cd094c018794", + "value": "0x66cafe78" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x39be03" + } + ] + }, + { + "address": "0x76c52ed46c85f6662b1bee59b4c4965c4223c3f32aa5b2692b1e06ff566e1b0", + "storage_entries": [] + }, + { + "address": "0x7dffbf18722b28975702273557a90e84b649808209594d2bf1da3c633b12438", + "storage_entries": [] + }, + { + "address": "0x33d5b4c122f0d65572cf4aa3af31e8258a0a6bedfbf24e3dcc3b610b8a5199d", + "storage_entries": [] + }, + { + "address": "0x234d0c891cfc00ba1a53277c34c91f5f0a273fb29867876abaf069e2a39da99", + "storage_entries": [] + }, + { + "address": "0x6569b665de48145219a07c827deded8a3e7f34aa79ef3985bea6717755e85c6", + "storage_entries": [] + }, + { + "address": "0x71ad7b064ff7825ab11760207b16a28b54decc5b02873af6b1a2527e07925f0", + "storage_entries": [] + }, + { + "address": "0x7e71f1efb9cb53253627449b5599842daa61c68bb04743609a96111a94f0f3b", + "storage_entries": [ + { + "key": "0x475dee61a0fac6f2eac50a55a5ca17fe9b39dac5b3c93934d75e49c9b77bfc2", + "value": "0x265ae69f19de79a70" + } + ] + }, + { + "address": "0x8b44318e05bf18a302297844cfa8e28c5507e1ebe2009c763db4dec858c621", + "storage_entries": [] + }, + { + "address": "0x19f0f563f9468e1995cc55fec8dfddfc30bb667ce4b020a6c8b7d9aa412aa06", + "storage_entries": [] + }, + { + "address": "0x7daadaa043b22429020efb9ac16bcc5f6a9b6ed3305de48e65a0ad5dcb76759", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x83430ef2fe85b9a28de45" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x132c283128" + } + ] + }, + { + "address": "0x7fd8f52786862b8600d9e2a7823c77aba212e3d28b67e4623cd48369e94f7a2", + "storage_entries": [] + }, + { + "address": "0x45e7131d776dddc137e30bdd490b431c7144677e97bf9369f629ed8d3fb7dd6", + "storage_entries": [ + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x5f71fc54f9e312" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66cafe78" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x10866abefe" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x165edb26676973c0b" + } + ] + }, + { + "address": "0x2fb444d314568d6e45fa13a503592751d380728a05fc6947aa6e930e4454672", + "storage_entries": [ + { + "key": "0x2141a67791ccd46711281bdb998cf05330a94bd912f4ab44bfca6f08f79cbf1", + "value": "0x45af1" + }, + { + "key": "0x3fc73af821c877aa6ced977a0bc34de21bb584b2954c82c06c80d3bc0cce026", + "value": "0x18827b42d0f8640f6e3262a60d" + }, + { + "key": "0x2208eb7142b20a00788438f9ba35fdef173c7680ba652fbfa239fef3addf2b1", + "value": "0xf84ada" + }, + { + "key": "0x33043a6019faaaacd896299801314dabcc91bc7d39ce3e8d557f431280a456b", + "value": "0xaa4e71d2bdcea1c7ab9" + } + ] + }, + { + "address": "0x75afe6402ad5a5c20dd25e10ec3b3986acaa647b77e4ae24b0cbc9a54a27a87", + "storage_entries": [ + { + "key": "0x1e008b2a087a1b988d53d8ad26d04a1c8037cb77595ed47a76e098c109a8e1c", + "value": "0xb56cdf101f7be705" + }, + { + "key": "0x75c33e533ab03aaa9288fa20221fcef62b22a92b23f3a551b4851e724355876", + "value": "0x0" + } + ] + }, + { + "address": "0x53c91253bc9682c04929ca02ed00b3e423f6710d2ee7e0d5ebb06f3ecf368a8", + "storage_entries": [ + { + "key": "0x613d197003eaeaec95cda022ece67293267e42a6ab0d14b510a147b500cb6b8", + "value": "0x126f347e2a9" + }, + { + "key": "0x599b39b8f0e0e064f62ba921252b0735c2732a18e0b87e5b66e7f235d05dbf9", + "value": "0xffffffffffffffffffffdc9b395cc05b" + }, + { + "key": "0x516db81946c7dff80bd06c15b3e2b6b10d52e7dfc974b20bb69ae96b82db906", + "value": "0x0" + }, + { + "key": "0x1bff8c50a5584fb1238a3e05b95b80b366ff85cc15268676f16651b2c922129", + "value": "0x132c283128" + }, + { + "key": "0x716092479f8edd30a77b766defc11b7fb60a4e26eff7e58a4eb082bcc773d50", + "value": "0x8de8" + }, + { + "key": "0x28be0d1b762c32f0c434a2954fb9f00b05e7c4435dad20988f75196962e29c8", + "value": "0x1b499" + }, + { + "key": "0x40de00b6a95d48993dc4af9bd89d33b8faeaf3ebcbd8d9fc586e16f954df1a3", + "value": "0x1c78239167e" + }, + { + "key": "0x75c33e533ab03aaa9288fa20221fcef62b22a92b23f3a551b4851e724355876", + "value": "0x0" + }, + { + "key": "0x74ee32f30f6964431204823e70213278c5ca5396df9976fd7a27dd0351cf81c", + "value": "0x1157c5" + }, + { + "key": "0x1136e784a7b7e1cafd28236621374d83c739194f0d9be4644cf00e73f54bc8e", + "value": "0x1292e3" + }, + { + "key": "0x24e6f287d70cc7fcc92193e8349c21207def342360df512c28ea83b31faceae", + "value": "0x23bd433b" + }, + { + "key": "0x168e06589ed1429d749afaa1281b5f9e74a4cc19fcf352103f8fa7bd582a3d4", + "value": "0x35775aa3a" + }, + { + "key": "0x534ffd86a09aab8cc9f74c982bcf074fb87252aacb64e87f258ae229283082f", + "value": "0x135816d3b" + }, + { + "key": "0x38be2388ee2efd559cfea1d12bec03318cea12a44953c83621484a6637ef9f7", + "value": "0x0" + }, + { + "key": "0x1f9e8c510beddab3043a01d39114f0a7099e41917475fb3f7036b13298e4372", + "value": "0x7291fcf" + }, + { + "key": "0x5766ce84b976336c8dca0598cdd7faa350c1bbee3ead2c26a26984d99714d34", + "value": "0x362e68db" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x418c4cd283" + }, + { + "key": "0x7d40ebec19d32e89de914ddb9aa326584327c9042e2078715b7284bb00c5620", + "value": "0x1f97e0862" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x176f47f3e406" + }, + { + "key": "0x22f9cf0e817ec5266133baeb7b6699c1b95854014cc79f85dd997309f7fc62b", + "value": "0x1c04854bc8" + }, + { + "key": "0x2c40cfaa9c0aeba40ea0b8f5818e1a12c44c5e9c01c31beb8fd21f5dab2f95d", + "value": "0x9fdde7c63" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x8348b26f4cf" + }, + { + "key": "0x3e94d6228474b08237aa2b0a5884d6a30d46838fb5f73995385a252dcb1ea5e", + "value": "0x3d1f97a" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x3613723d" + } + ] + }, + { + "address": "0xdee3cb1be6b4fd9a855f7c02614ed9852caa1ae1865a0d810fa04d6b5c92b3", + "storage_entries": [ + { + "key": "0x38036e4af1d77f33f0c5cd33a3353e2a5b2265dd26031df7d7c79297f908457", + "value": "0x3fa21630a0c3da94cb550748c6d9aa697d64993b79389c5c43ab82776d68978" + } + ] + }, + { + "address": "0x4a395a56c7f88cbd4972914f487b787032e452fe1948be89c8c2240b83a94e4", + "storage_entries": [] + }, + { + "address": "0x1b156fbf2fcad9612732ad2685d5ea0ff3bf2235ac47991ec7f292f46b7fcb8", + "storage_entries": [] + }, + { + "address": "0x36bc704e0ba7bd77bcc30c00f13d810b2c6dba3d8f7676263d82d9e69306f87", + "storage_entries": [] + }, + { + "address": "0x483ce3fbdd8eb75859dacffbec40d8cc22a0ae31526924a8ef732222bf5b0a1", + "storage_entries": [] + }, + { + "address": "0x2a46859fd22ee1b6439ce0c1352f20f184e34965a2f99c24fb303ecb7187bd7", + "storage_entries": [] + }, + { + "address": "0x25aa95a4b61df46ebc991047e593de220b2ef402626ce76348e07bb90718036", + "storage_entries": [ + { + "key": "0x6159728a9c5f7af023b757633edcef9603405978eceaaf4887b215fb8ed5e1f", + "value": "0x66cafe78" + }, + { + "key": "0xa6d9f316e6d685b6b7750482594191cf422e3056c9b8c5d07cad5617d3a103", + "value": "0x66cafe91" + }, + { + "key": "0xa6d9f316e6d685b6b7750482594191cf422e3056c9b8c5d07cad5617d3a101", + "value": "0x10541f7752b98000" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x4ae404" + }, + { + "key": "0xa6d9f316e6d685b6b7750482594191cf422e3056c9b8c5d07cad5617d3a104", + "value": "0x66cafe78" + }, + { + "key": "0x6159728a9c5f7af023b757633edcef9603405978eceaaf4887b215fb8ed5e1e", + "value": "0x66cafea5" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x329e" + }, + { + "key": "0x6159728a9c5f7af023b757633edcef9603405978eceaaf4887b215fb8ed5e1c", + "value": "0x10541f7752b98000" + }, + { + "key": "0x6159728a9c5f7af023b757633edcef9603405978eceaaf4887b215fb8ed5e1d", + "value": "0xa3d5e" + }, + { + "key": "0xa6d9f316e6d685b6b7750482594191cf422e3056c9b8c5d07cad5617d3a102", + "value": "0xa3d5e" + } + ] + }, + { + "address": "0x59251854527a17c8d1683bee208109032314ecb3a7d065a1516a60c890fca77", + "storage_entries": [ + { + "key": "0x5b4150a4262553d886f7595984020bd32ade64594444f3fd0be2fb388d31809", + "value": "0x5a" + }, + { + "key": "0x464f1dfbf81b1dd2ac88249510b2ea8015a87d9f9ad7d0a0191915f660ad3ab", + "value": "0x1a" + }, + { + "key": "0x3169280320f42baaf260a97fb41ce48a8c2bcf8f894064c9d5f4e63688377f5", + "value": "0xa" + }, + { + "key": "0x3e883b73eb5cc626e2e464050422cd5c5f1488d842ff8ae3a38c41d417c8be5", + "value": "0x1a" + }, + { + "key": "0x2af8b841dd851d29e12533f30d9d64a6a50563482caaf621d3a55dd03dc8632", + "value": "0x1a" + }, + { + "key": "0x2af8b841dd851d29e12533f30d9d64a6a50563482caaf621d3a55dd03dc8630", + "value": "0x5a" + } + ] + }, + { + "address": "0x75ddc908cbc54410e2f52face10b68987f1f590dd164fb3c67e134b1a658305", + "storage_entries": [] + }, + { + "address": "0x3a47e23f7a9bf0fb7345e9efaec5cd1e0c1dde13188f7fed6d4db801c8d6451", + "storage_entries": [] + }, + { + "address": "0x5ef8800d242c5d5e218605d6a10e81449529d4144185f95bf4b8fb669424516", + "storage_entries": [ + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0xd85414873e6b9b8d" + }, + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x9fdde7c63" + } + ] + }, + { + "address": "0x2fc2d4b41cc1f03d185e6681cbd40cced61915d4891517a042658d61cba3b1", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x29168c7608" + }, + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x30727d01c" + } + ] + }, + { + "address": "0xcfa6810ffde746a867ae4bd734c2d386d9a926a310c2f4181038fa997c45cc", + "storage_entries": [] + }, + { + "address": "0x210cdae3472187244f16b02850d7426963caf357b4477d4cf486b9bf911315b", + "storage_entries": [ + { + "key": "0x65f769480b31c796993980ed9baac45911440c47e915b00dbbd1fe7a255388a", + "value": "0x1" + } + ] + }, + { + "address": "0x52bdb85297e6b0c87d8ec98c5195a4324ff731676d64d9bee2e9e8710e8ea52", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x1f6f42f4b4" + }, + { + "key": "0x670303e14de3854b16d1ac7271c7366320e90ae714c0588ba17c4f33ff637e0", + "value": "0xac1" + }, + { + "key": "0x5aa332dc6ae90d6d53fee5fa2aba459a7f2c65c2b2f8759e4e478b3522c6186", + "value": "0x56" + } + ] + }, + { + "address": "0x41b0978486922bdfc7eeca616f4859e302875392b7bdf3c2a5cdafba685213e", + "storage_entries": [] + }, + { + "address": "0xfff107e2403123c7df78d91728a7ee5cfd557aec0fa2d2bdc5891c286bbfff", + "storage_entries": [ + { + "key": "0x1defc247f7f4aae4b49a58fce007f40a872b42dad6bc6f792d7ef1142dc9f87", + "value": "0xaf63cdacdcc25e5fa33afcafbfd2d1e6" + }, + { + "key": "0x6e36a9338db6c836da4b545964932ef97ca49ea5aa9ee26570a95dbad931fcc", + "value": "0x8b246f7814977e5e56c999fdf66f066" + }, + { + "key": "0x46f367e599a460ade4029dd5de12e56d60aa449b7ceeb85eded50d62a92cdf", + "value": "0x58599d90529110dba826afe901a9" + }, + { + "key": "0x2fecbe16e8fc37c47f7cf50ca64582fe21f336aa9b2855b8ea76c78b33de09c", + "value": "0x4515c53568ff00546f7afc7362c0043c" + }, + { + "key": "0x2fecbe16e8fc37c47f7cf50ca64582fe21f336aa9b2855b8ea76c78b33de0a0", + "value": "0xa37eea323ef92d2f000000000000000000000000001e4036" + }, + { + "key": "0x6e36a9338db6c836da4b545964932ef97ca49ea5aa9ee26570a95dbad931fcf", + "value": "0x0" + }, + { + "key": "0x1defc247f7f4aae4b49a58fce007f40a872b42dad6bc6f792d7ef1142dc9f89", + "value": "0xfffffff169340b9aa021e2cd38bbab29" + }, + { + "key": "0x6e36a9338db6c836da4b545964932ef97ca49ea5aa9ee26570a95dbad931fcd", + "value": "0x0" + }, + { + "key": "0x46f367e599a460ade4029dd5de12e56d60aa449b7ceeb85eded50d62a92cde", + "value": "0x0" + }, + { + "key": "0x2fecbe16e8fc37c47f7cf50ca64582fe21f336aa9b2855b8ea76c78b33de09e", + "value": "0x55f7b555c9f7d0ad43e79e2bc" + }, + { + "key": "0x1defc247f7f4aae4b49a58fce007f40a872b42dad6bc6f792d7ef1142dc9f86", + "value": "0x92e0c00092fec00000000000000000024db583d162d24" + }, + { + "key": "0x2fecbe16e8fc37c47f7cf50ca64582fe21f336aa9b2855b8ea76c78b33de09d", + "value": "0xd25" + }, + { + "key": "0x46f367e599a460ade4029dd5de12e56d60aa449b7ceeb85eded50d62a92ce0", + "value": "0x0" + }, + { + "key": "0x1defc247f7f4aae4b49a58fce007f40a872b42dad6bc6f792d7ef1142dc9f88", + "value": "0xffffffffffffffffffffffffffffeb61" + }, + { + "key": "0x6e36a9338db6c836da4b545964932ef97ca49ea5aa9ee26570a95dbad931fce", + "value": "0x4ae3a1414419211a4f2621b23b5f" + }, + { + "key": "0x46f367e599a460ade4029dd5de12e56d60aa449b7ceeb85eded50d62a92cdd", + "value": "0x16cba4d11457c499d39ac586ce479bac" + }, + { + "key": "0x6e36a9338db6c836da4b545964932ef97ca49ea5aa9ee26570a95dbad931fcb", + "value": "0xc2ff8000c32140000000000000001eaf5b89ab4042178" + }, + { + "key": "0x2fecbe16e8fc37c47f7cf50ca64582fe21f336aa9b2855b8ea76c78b33de09b", + "value": "0x92e480009323000000000000000000051823b7b43d237" + } + ] + }, + { + "address": "0x332825a42ccbec3e2ceb6c242f4dff4682e7d16b8559104b5df8fd925ddda09", + "storage_entries": [] + }, + { + "address": "0x7d47e04b4fa929dda44aa0068f651054f90f4bc1ef18e9ffadfb652d0398ebd", + "storage_entries": [] + }, + { + "address": "0xe91830f84747f37692127b20d4e4f9b96482b1007592fee1d7c0136ee60e6d", + "storage_entries": [] + }, + { + "address": "0x2952155b01ce465a4814d48d40769429ae5f7656714a1d278569c5ec0eb77be", + "storage_entries": [] + }, + { + "address": "0x5cda2b2904c8b4b92f6bf3babc5980439b96f5583dea7a74b73e9d701e53d9c", + "storage_entries": [] + }, + { + "address": "0x8faa2edc6833a6ad0625f1128d56cf471c3f9649ff2201d9ef49d7e9bb18de", + "storage_entries": [ + { + "key": "0x39b03cc1cdefcbdadd13946706a2aa9cd244f8e72115079bdf19063751800f4", + "value": "0x19724dde299ae7ae" + }, + { + "key": "0x584f38f5154e9b8a6c40203ea644ba5275c501456ff7265ae17aa662d495c7b", + "value": "0x72ec57cfcaac489" + } + ] + }, + { + "address": "0x7b8b7d9c16cfc00e475065ad5eaa740899355d0a982c1a4249af360462673a2", + "storage_entries": [ + { + "key": "0x20a9b24ae743424f86e0872bc7af28619283fe72fa43993484919a8330d0af1", + "value": "0x69de5e03e02e8a67" + }, + { + "key": "0x584f38f5154e9b8a6c40203ea644ba5275c501456ff7265ae17aa662d495c7b", + "value": "0x7271e6264f9ff1e" + }, + { + "key": "0x39b03cc1cdefcbdadd13946706a2aa9cd244f8e72115079bdf19063751800f4", + "value": "0x1957314191414cb1" + }, + { + "key": "0x5f22e7825c5e5b34213709b20336d8eebb08356fa19d03da7897dfe5f76170d", + "value": "0x21013b27bb6249711" + } + ] + }, + { + "address": "0x5dd3d2f4429af886cd1a3b08289dbcea99a294197e9eb43b0e0325b4b", + "storage_entries": [ + { + "key": "0x29c7eab513808908578484c8eec478045416ea305bc9b0931d69abd25c65645", + "value": "0x1012cc88d00000000000000000000036f99975f024f4b05cb77e2c5b6d8" + }, + { + "key": "0x73f910a5771e633fe79ee7de85447caf185a1a4f2a0831fd96609a5a4cdc5fb", + "value": "0x2e2471f8841815575b38af722ff5cde" + }, + { + "key": "0x1d14ffed31c27cb4bc8aad9170d5f8625c112ad970aafc1792b4c0063b8966", + "value": "0x2165ea475314ba5a83184f7407ddd894" + }, + { + "key": "0x4c461150be1bb0404df648b7535aa4412ab7c1715229ea6164f2da22be9b761", + "value": "0x2dce6f4e13babb209e84d0d0cfc" + }, + { + "key": "0x67115b93713c11a90a478a74e04fe020b4de53a8a5589ce5efefba6ca655989", + "value": "0x15b55b0de503cd8d3" + }, + { + "key": "0x5fab3c75f72d850419b85d95246b94193d661361fd842d016c31c8fa7720acd", + "value": "0x3b7adb0fc24584" + }, + { + "key": "0x73f910a5771e633fe79ee7de85447caf185a1a4f2a0831fd96609a5a4cdc5fc", + "value": "0x1c2802ee55f095e462de9ba70c09" + }, + { + "key": "0x4fc63d6b6ad805bd5013f490e60b550857f886f37e0bb336a504741d48b598b", + "value": "0xa878d855f5a970d6b33c612df46e" + }, + { + "key": "0x5a8f3c0f10bc17e389ddf04e8cd6f10b50038d26d2cf4f9974413961bd3c69f", + "value": "0x100000059000000000000000000fffd16c951b21b41d70d624152d300ab" + }, + { + "key": "0x786e6f2cbcf63b6c37de67d37e3fbbd3689e837c77677e5ca9f95f64b1817c5", + "value": "0x1012cbbd200000000000000000000037108bf9751e775b46d8acf0ed14e" + }, + { + "key": "0x7ed715b5117e2c4ce5878bbfc6d610ae7e96f8a63b03688cb85da00c24a311d", + "value": "0x1000000c5000000000000000000fff98c9c7c099961154a60004b78355e" + }, + { + "key": "0x4ed55f236b424b2eeb2bc294c9359c3d917b6b20213a60c392be5a80c881e6b", + "value": "0x1e0e56ac2c0579849ff1ffc70abb85483c5" + }, + { + "key": "0x4a586bf09eec1cf5a6cf9d6d34e17e76a4f73dae476853d9f2bed89865e2ef2", + "value": "0x101b36ffa00000000000000000000000aaaacfd80675672e1b61ed72f7f" + }, + { + "key": "0x377a06f99c076c4ce9af686c5a1f8e7ab88a1273c530dc5f94778c4b79cd41a", + "value": "0x3a05217d4b75bbb5c4a6219d96e51" + }, + { + "key": "0x7edf95034484895f303183958350d9907f624d312619d269dc313aaccbb1e8d", + "value": "0xfed46b02b20662891fd562de92c" + }, + { + "key": "0xb3a910e1cfc281148c32c7118ec8312aeec8234f1fbdf5126e2d2b5f454c2b", + "value": "0x1012cbd2a000000000000000000000370e1fc7229948ca096dd75ad6b1e" + }, + { + "key": "0x4fc63d6b6ad805bd5013f490e60b550857f886f37e0bb336a504741d48b598a", + "value": "0x113c67c91ad9300ff00cb80ae3631490" + }, + { + "key": "0x61e7f46d4b1ebcf886ea81733ef2b7d43a8817885c96559c818f8192b3c49", + "value": "0x478e7f4247bbf8110ff77b93872" + }, + { + "key": "0x4ed55f236b424b2eeb2bc294c9359c3d917b6b20213a60c392be5a80c881e6c", + "value": "0x15b3b1813f9544667865433d24a2" + }, + { + "key": "0x7a56cb8c9edc3cea44378a8df4220eaef157f130c42cb4db2750fa69ebcdbc0", + "value": "0x247f1d713f52058d649e06ec86d8" + }, + { + "key": "0x510abf9d7f3bf677e5e4ea16cac67144d6750ea2250cf1586e07bbf8a7b9c94", + "value": "0x2f1c2a50ff7de1e5149" + }, + { + "key": "0xc439c053296d5764948bfdfa5c465665d234736f071a361e10681d632ad758", + "value": "0x670b62ad49" + }, + { + "key": "0x7302529648cf8bd3b40af553e0ffc64bfef8135be5246bd00ed3ab2095373ad", + "value": "0x48c1a70578" + }, + { + "key": "0x591acc006991ecc44299588fcfe36aaf338929a2ce09835de224d78d1791dc7", + "value": "0xa9c5802d851bd27d9420230fe9f78afe16" + }, + { + "key": "0x6aff514d3c14935bb84bfc2f5e443daa68c6b9af02150bce2904dc5cee89fb4", + "value": "0x101b3713f00000000000000000000000aaa3b5ed44e773db4e94ce3d6e0" + }, + { + "key": "0x163d70e9624d4def491373945d39b17716359c269bf242c78b560d64413ac73", + "value": "0x53e4baf87fe7f1" + }, + { + "key": "0x3af7018c4aa6e5fa9c0422a94b88f858654f47a8bd2c875ecf0c2972a78b5b9", + "value": "0x17eaf73623620006b82824966dd843" + }, + { + "key": "0x5f0128f9be0989c98cbfe63ed591b1a63e5dd50f98fde1108d057f549146829", + "value": "0x6bff36ecbd4fc3710a66b22ef531" + }, + { + "key": "0x7edf95034484895f303183958350d9907f624d312619d269dc313aaccbb1e8e", + "value": "0xff5d8941548287a1a44fa7591c7" + }, + { + "key": "0x14ba9337b3d15393b603ee9309ecd0bce5aad090266467e428bd7421756f1ce", + "value": "0x5c719a8ef467a79c6484cfb0ab8" + }, + { + "key": "0x45632f3cbda18549eedb01fca0ccd075be2602eba9eb61b286ce15e1419028e", + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffac1b4507801810" + }, + { + "key": "0x377a06f99c076c4ce9af686c5a1f8e7ab88a1273c530dc5f94778c4b79cd419", + "value": "0x3da0bd6f84a74668336ddb09075b3b49" + }, + { + "key": "0x3db405a2a17c36a162b4af2e3f5f52f3ac0221111d4f57d93dc2b26070de52b", + "value": "0x37572e5453e06a03664d9f82c7ac4" + }, + { + "key": "0x14ba9337b3d15393b603ee9309ecd0bce5aad090266467e428bd7421756f1cf", + "value": "0x284057ba492388e6bc8cf879b3c288c605fe7" + }, + { + "key": "0x6fc67850fc6fad26b5cbba8e04a3b1fc35ede2b5ede88d8d3b5aa4af12914a0", + "value": "0xc2702464bf68f5734fd" + }, + { + "key": "0x24b03dc8a3fa3b2de6eb33392b8ae92543367dd5a8d65e18fa3fa455a754437", + "value": "0x43be87e9bca948a76d7744bde03c48ff093a2191dc20e97e53de0db234002ef" + }, + { + "key": "0x2e47b10495ec4d8f08341a796f7b7eef17b990e3d2790316f08cf4bb15e69c6", + "value": "0x6c4e9ae13d8a5e" + }, + { + "key": "0xae1b72a594adf942d61d66fb222d7bbe953934f3b762905c245fa71ea84ab9", + "value": "0x979078d3684d78bb7f4283d2e81649f2df90" + }, + { + "key": "0xc37a99b03e26aa791e82083190c484f773383fbdc97b455ebb37590ac5f448", + "value": "0x1012cbe12000000000000000000000370c7dd57f11573281a5ab35addcd" + }, + { + "key": "0x45fb8ffc8b8d0d2521fdc1b3558fea0c43ed03911387994698ae9e504026d43", + "value": "0x1a5ac50df828d0c94d0a5bbad6896c774409" + }, + { + "key": "0x1d14ffed31c27cb4bc8aad9170d5f8625c112ad970aafc1792b4c0063b8967", + "value": "0x133edac8a1181ccec725b48b875d0" + }, + { + "key": "0x173ed6d665e16458aa3b3e740e984693c0487b1018792fab720b2fca8feeac6", + "value": "0x74b6bd1daf71f5762bf22cb872" + }, + { + "key": "0x1d52ba6c692370a3319ed2c30a697583dfe2fc6fa1ccaa09a7f3fa23d2a4363", + "value": "0x20f3f22b0c90069d" + }, + { + "key": "0x5f0128f9be0989c98cbfe63ed591b1a63e5dd50f98fde1108d057f549146828", + "value": "0x7fe35b9e41e8d3248a49165aa313bb15c5c" + }, + { + "key": "0x79541114db2c85598b8e7681e5ab78bf43624bc7636b60249889f8d4ec5894d", + "value": "0x10086b5cd000000000000000000031947587d061cccc178d3026b048eb0" + }, + { + "key": "0x642782866fc8a49d337f3045a24c8d5885051aaf1d63d852bca6b99ab10d2a6", + "value": "0x19ca75e0000000000000b602c63e189004db9e97fcc5338ef533ccae1" + }, + { + "key": "0x6014dca9337d6f8c6842184ed2c3d9b06032068146d0bf07c7c89e11599ce91", + "value": "0x89e7409c99dc210d8a0ebb5b53" + }, + { + "key": "0x3db405a2a17c36a162b4af2e3f5f52f3ac0221111d4f57d93dc2b26070de52a", + "value": "0x38f8383569be96f8eecc11cc37a41d39" + }, + { + "key": "0x591acc006991ecc44299588fcfe36aaf338929a2ce09835de224d78d1791dc8", + "value": "0x9a9128eef925c7e93184458e9a5" + }, + { + "key": "0x3af7018c4aa6e5fa9c0422a94b88f858654f47a8bd2c875ecf0c2972a78b5b8", + "value": "0x11f7bd9b857bbc25abb19d096f236b9a7" + }, + { + "key": "0x53d0519cdc7454786ae3e94a23442f4359e03c5903c60ccbaf2c48614efe6ac", + "value": "0x10086b61b00000000000000000003193f766a346a779d6841473ef79cdb" + }, + { + "key": "0x4823309f82e50319127ee3908004fbade88ad50c8af36bff40701fca76efcbb", + "value": "0x19c7ee90000000000000b5121b0348fff70c516e44410c857f9f580b1" + }, + { + "key": "0x16adcc43eb2fdc1ac2820cd7b749db25173cb6c680e077b399db2292f8a1713", + "value": "0x19c89990000000000000b5518fdf1c302a0ff759076fe50bf29035b98" + }, + { + "key": "0x6014dca9337d6f8c6842184ed2c3d9b06032068146d0bf07c7c89e11599ce90", + "value": "0x700febcac22445fee0016638e04c3295095b" + }, + { + "key": "0x61e7f46d4b1ebcf886ea81733ef2b7d43a8817885c96559c818f8192b3c4a", + "value": "0x2662cce8ce2d93c079f25cf8904972235185d" + }, + { + "key": "0x6014dca9337d6f8c6842184ed2c3d9b06032068146d0bf07c7c89e11599ce8f", + "value": "0x53e4baf87fe7f1" + }, + { + "key": "0x7a56cb8c9edc3cea44378a8df4220eaef157f130c42cb4db2750fa69ebcdbbf", + "value": "0x2cc095c9ff305e7b3818be70da759712484" + }, + { + "key": "0x273932e4c8710534cf766cafd06b6442f9abf34eec0753938dd81135e1b271", + "value": "0x19319d17a144f7d6f2809956ddd5" + }, + { + "key": "0x3fd58344c88bc2aba58536f3892e94d6926e33939ea1f5b0a961ac0deaeea1a", + "value": "0x6ff1bee36df02c108ca" + } + ] + }, + { + "address": "0x830dc345b616bfc853cf41bdf70df3c6dfee8400c1d972234c719df22b950", + "storage_entries": [] + }, + { + "address": "0x21714d78512c4d7cc98f8c3959e9026081f9bb33bbb07066eebc51b6ce357bb", + "storage_entries": [] + }, + { + "address": "0x2d0356738e30a3ce3d7ec6368e64d286ef71fa444990676ef1e083f68edd266", + "storage_entries": [] + }, + { + "address": "0x2c71de70b40b00e3dd6f43ed568bf4b194fab0189df68c54d25cbbb9b9e3d49", + "storage_entries": [ + { + "key": "0x420d81c746b1e969959a4aaa2c1a427f9a8df37df50309c183686b8ea635164", + "value": "0x1" + }, + { + "key": "0xb56df7e61e6deb44597b29250755b62280f80eb92b0318844024e59ec7ca6f", + "value": "0x1" + }, + { + "key": "0x3981ebd44382a01d81c161a6a644277e7a11d2271ff920988cb33e3463d491b", + "value": "0x1" + }, + { + "key": "0xab9b14f7a3ec6e3bd3158b8f1ac98edc4cac0647ee9270c03b610f185a2088", + "value": "0x1" + }, + { + "key": "0x21724ad56b24e9e1f830cfd2a2b016536a40ced27e0b720a7470dfc45c843d8", + "value": "0x1" + } + ] + }, + { + "address": "0x811d8da5dc8a2206ea7fd0b28627c2d77280a515126e62baa4d78e22714c4a", + "storage_entries": [ + { + "key": "0x48be3692ab3e9e8bd4a134a7b958b4e69bcb00a71d4f58c22f9311921f12bcf", + "value": "0x25ed32c8a" + }, + { + "key": "0x32ab5137f94b12ed741bfd46b8312173a7401621d889b14219bc021fc8c731c", + "value": "0x2e60" + }, + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0x189353c5091" + } + ] + }, + { + "address": "0x72884c68f836aa34fbe21e83bb22d76e4a050f5196073c6b3df50b902f9ad6c", + "storage_entries": [] + }, + { + "address": "0x60f0e4968d9bb9bf7728d797a2d6e50eb4149dafa89acf15f2efa4f57218ab9", + "storage_entries": [] + }, + { + "address": "0xe90d09b07aaa8e82ae73c6ed38f8cfc23a8e95701d36167fa97b784140c8c", + "storage_entries": [] + }, + { + "address": "0x55e557a4c975059522a1321d7a7bd215287450907419e5f8aa98145c7699a2c", + "storage_entries": [] + }, + { + "address": "0x7067304ed934fe31cf1579c941a370bf1625e36523efd901968329d715c3a1c", + "storage_entries": [] + }, + { + "address": "0x7d4a6ccab32a47a20806f11eba3adf6e362ba4de188b9895fcb24a37111a357", + "storage_entries": [] + }, + { + "address": "0x54f7595fde761b771e65c3b23803f81c7619347007376cf54e5c52ebd785215", + "storage_entries": [] + }, + { + "address": "0x30d1a6061325132500b0c288e8e6deaeeb58ad7cb7b4c6e8239346959cb765d", + "storage_entries": [] + }, + { + "address": "0x68f5c6a61780768455de69077e07e89787839bf8166decfbf92b645209c0fb8", + "storage_entries": [ + { + "key": "0x3ce63b6014623680de3801addbdbc460bcbf144f0c741cb14aed33cc5bb892c", + "value": "0x1256ac73d7" + }, + { + "key": "0x5fad7613fd327fc13290b4c80dcb56b41035cff52310cc2f9e1d7de286fcff1", + "value": "0x10866abefe" + }, + { + "key": "0x1c8dbf555be2559058fefd8b6a3531c1b0b2656d3b3b84719d9a5aef0728a8a", + "value": "0x0" + }, + { + "key": "0x7b1460d3a35c58f228935592465287ef81ec43063cd211a570383fb35d55028", + "value": "0x25fc21d" + }, + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0xe8e39480ac" + }, + { + "key": "0x22f9cf0e817ec5266133baeb7b6699c1b95854014cc79f85dd997309f7fc62b", + "value": "0x17122be478" + } + ] + }, + { + "address": "0x2a4117530d52d7a70406eb608b86f3874e50a6972126cbbf92e4257315cafd4", + "storage_entries": [] + }, + { + "address": "0x54452751e7d5ccfcb5dea9688ddbdbe54e6303cf472ffb88ff9e0b23c0b0cc1", + "storage_entries": [] + }, + { + "address": "0x4f96b7ebd84fd96cb0b457499a38963bd38f3184640b852b3a4d8c592c5740d", + "storage_entries": [ + { + "key": "0xb0cfdc8b5ce089ea132067c9e18d766dd94541c072972b727170463ae1947e", + "value": "0x1" + }, + { + "key": "0x32e4d1efc5f173dde7c1a53083584900020b81db23b5037b75f633789e8f2b2", + "value": "0x1" + }, + { + "key": "0x624bf90ec4ca21f812c323f3318dda911e0443616e30ec9fddd13b0c43c5a18", + "value": "0x1" + }, + { + "key": "0x126f22ed4d16a4aa68cc9226a6b32f6ea8eb766af2aa03bdc4f2c0f706c8fbc", + "value": "0x1" + } + ] + }, + { + "address": "0x6715a4a21077100e5890d36361974be8dfb55b9b466f0bdd6f9f96fffaeb3bb", + "storage_entries": [ + { + "key": "0x4ab629b754c2d17807fb60e8cc9838c523ed17d330067c6a023d74197e622cd", + "value": "0x1" + }, + { + "key": "0x1baf58600588a6ffde3bd8cc1a1763d0ec8f926cab312ec0ec9bb0dad957659", + "value": "0x1" + } + ] + }, + { + "address": "0x43e4f09c32d13d43a880e85f69f7de93ceda62d6cf2581a582c6db635548fdc", + "storage_entries": [ + { + "key": "0xaaee018f4b0aae1f15da71fb50a88efc915e839c9e3563529854ef0bde21ef", + "value": "0x66cafe780000000000003a065d1fb18455700884" + }, + { + "key": "0x4de90abe4fc76e4fe71c656c5954b2a6f61b88a7c498ef612f943e15603b195", + "value": "0x66cafe78000000000000000000000bb89b1dbbaf" + }, + { + "key": "0x43fa2f3e2294ecb4984693df89aa20d09e572506498025b20308244acf19ac6", + "value": "0x36d669a1d70d2842e038d41f500241ac803de7bce" + }, + { + "key": "0x6d11198631ae6699aa1dedbc2a6dd6b4a7954102ef0d50c0297226d8953338e", + "value": "0x97ac647859035999769188a" + }, + { + "key": "0x7c87e8c0d6c0b0be9a844b9a6aee716dd547cfdfd08760598bc0ecf0a350e63", + "value": "0x66cafe7800000000000003e1a9856c41b661de75" + }, + { + "key": "0x4e397fe564f5b2db97eb959c29efa0dfb56de6d173e970c5eea62baf714a71d", + "value": "0xc468b44e3fe60c622527" + }, + { + "key": "0x307364ab1c6dae6d095cf139845ce4033ef830e8534f2df2c7a4267fe80884c", + "value": "0x66cafe780000000000000000000024c6d0f4834d" + }, + { + "key": "0x592e431857f9f3ab108e57ede73f05339735addac7f6ed26d37b359479619e2", + "value": "0xa259d89d2c0154bda785ade" + }, + { + "key": "0x4e397fe564f5b2db97eb959c29efa0dfb56de6d173e970c5eea62baf714a71e", + "value": "0x5456a9ae60b44048960f5d25ed695c433a280545" + }, + { + "key": "0x592e431857f9f3ab108e57ede73f05339735addac7f6ed26d37b359479619e1", + "value": "0x95297b8cb1698574436828ff3516a09003595" + } + ] + }, + { + "address": "0x7a900c5b496d15bbb1c3c69d090e890a4b19dbceabee72232d4f2bec67ff4c", + "storage_entries": [] + }, + { + "address": "0x42b8f0484674ca266ac5d08e4ac6a3fe65bd3129795def2dca5c34ecc5f96d2", + "storage_entries": [ + { + "key": "0x6bfd94b067b7a0f959ac2f97a1c66f8f023e057e76392bfbdc29c0abc9cc414", + "value": "0xdf690e09164d7a11" + }, + { + "key": "0x232f4febea33280256a7336b9908d5db04277b80a99bff726ae2bd0939a3a68", + "value": "0x1" + }, + { + "key": "0x5f6b6fc6348470674807164ece27f9f698117509138b41bbd524edb641810be", + "value": "0x1" + } + ] + }, + { + "address": "0x6a20d4d7995fb8ba1570c32e53259ec1c53be111a33f9778825d184eee5a3da", + "storage_entries": [] + }, + { + "address": "0x405b7b5fb7353ec745d9ef7cf1634e54fd25c5e24d62241c177114a18c45910", + "storage_entries": [ + { + "key": "0x3e81755d87fb2feb6a8a6749a0c2c7dc1f7c9db26ccc10115ebb8cd48e05880", + "value": "0x1" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xe6a2f0e614" + }, + { + "key": "0x5aa332dc6ae90d6d53fee5fa2aba459a7f2c65c2b2f8759e4e478b3522c6186", + "value": "0x1" + } + ] + }, + { + "address": "0x36c6e4627b208a7c9f4e8573fa7b6f702beac689196566d484b0963918db9c4", + "storage_entries": [] + }, + { + "address": "0x57146f6409deb4c9fa12866915dd952aa07c1eb2752e451d7f3b042086bdeb8", + "storage_entries": [ + { + "key": "0x2be41ea00b3e998afcaecaeff43baa5459a4184c3bdcc9225d5fe8d1cac1acd", + "value": "0x1763ea8f90b0091e3" + }, + { + "key": "0x516db81946c7dff80bd06c15b3e2b6b10d52e7dfc974b20bb69ae96b82db906", + "value": "0x2257eae37b4553b2" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x599fd5d50ecb3a267df" + } + ] + }, + { + "address": "0x5e03162008d76cf645fe53c6c13a7a5fce745e8991c6ffe94400d60e44c210a", + "storage_entries": [ + { + "key": "0x75c33e533ab03aaa9288fa20221fcef62b22a92b23f3a551b4851e724355876", + "value": "0x0" + }, + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x126f347e2a9" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x2dcdf56e39102f30162af" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x1774e750cb9d272d9b" + } + ] + }, + { + "address": "0x53fc292ae916dc86631cb7f9a23db0cc1222cba55b0ec1946635343829ebae4", + "storage_entries": [ + { + "key": "0x6bd3783ab0020ccca02c7c8bb2ea40dd7ed24fe19faab82f0c00c64ec90c656", + "value": "0x66cafe78" + }, + { + "key": "0x9b3d7a7e06dd7a1b1fe8e999aead043c7c263ec59619eef0dd8a2581811295", + "value": "0xa3d5e" + }, + { + "key": "0x166fa8ff56633d692a22078361d1f08024d3ab3633667599556a3c18775f5f1", + "value": "0x66cafe78" + }, + { + "key": "0x9b3d7a7e06dd7a1b1fe8e999aead043c7c263ec59619eef0dd8a2581811296", + "value": "0x66cafe9a" + }, + { + "key": "0x60083300b9067593147639591f33e7f50dd02d5f583e290da24c9c29b6b2b47", + "value": "0x485c39e1" + }, + { + "key": "0x6bd3783ab0020ccca02c7c8bb2ea40dd7ed24fe19faab82f0c00c64ec90c655", + "value": "0x66cafe86" + }, + { + "key": "0x9b3d7a7e06dd7a1b1fe8e999aead043c7c263ec59619eef0dd8a2581811294", + "value": "0x48526780" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x439601" + }, + { + "key": "0x155787e92342786e4cbebcf3b1cc51935f1336dadb32ca73bf2c1dc8978ecfa", + "value": "0x66cafefe" + }, + { + "key": "0x166fa8ff56633d692a22078361d1f08024d3ab3633667599556a3c18775f5ef", + "value": "0xa3d5e" + }, + { + "key": "0x155787e92342786e4cbebcf3b1cc51935f1336dadb32ca73bf2c1dc8978ecf9", + "value": "0xa3d5e" + }, + { + "key": "0x60083300b9067593147639591f33e7f50dd02d5f583e290da24c9c29b6b2b4a", + "value": "0x66cafe78" + }, + { + "key": "0x9b3d7a7e06dd7a1b1fe8e999aead043c7c263ec59619eef0dd8a2581811297", + "value": "0x66cafe78" + }, + { + "key": "0x155787e92342786e4cbebcf3b1cc51935f1336dadb32ca73bf2c1dc8978ecf8", + "value": "0x4857ca68" + }, + { + "key": "0x60083300b9067593147639591f33e7f50dd02d5f583e290da24c9c29b6b2b49", + "value": "0x66caff24" + }, + { + "key": "0x166fa8ff56633d692a22078361d1f08024d3ab3633667599556a3c18775f5ee", + "value": "0x48449858" + }, + { + "key": "0x155787e92342786e4cbebcf3b1cc51935f1336dadb32ca73bf2c1dc8978ecfb", + "value": "0x66cafe78" + }, + { + "key": "0x6bd3783ab0020ccca02c7c8bb2ea40dd7ed24fe19faab82f0c00c64ec90c653", + "value": "0x48577d7b" + }, + { + "key": "0x6bd3783ab0020ccca02c7c8bb2ea40dd7ed24fe19faab82f0c00c64ec90c654", + "value": "0xa3d5e" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x75e0" + }, + { + "key": "0x166fa8ff56633d692a22078361d1f08024d3ab3633667599556a3c18775f5f0", + "value": "0x66cafec2" + }, + { + "key": "0x60083300b9067593147639591f33e7f50dd02d5f583e290da24c9c29b6b2b48", + "value": "0xa3d5e" + } + ] + }, + { + "address": "0x411c2a2a4dc7b4d3a33424af3ede7e2e3b66691e22632803e37e2e0de450940", + "storage_entries": [] + }, + { + "address": "0x626a1182976caee727565fac2d143c72cec7f8c5319a6f6b49433875fa52bf9", + "storage_entries": [] + }, + { + "address": "0x6bb8b6108fe2b5df594c81b616a7dbc427c9b035e2b7d5d615caeffb0d43dd6", + "storage_entries": [] + }, + { + "address": "0x4d50f6ca2b2310609c1f9614370416f820c74168f373e23e5b4d9a86fca5d75", + "storage_entries": [ + { + "key": "0x3d799152caa65fc75710f2fd193a768a23f74f952b72e07059fc52059cc64dc", + "value": "0x66d04478" + } + ] + }, + { + "address": "0x4d8bb956e6bd7a50fcb8b49d8e9fd8269cfadbeb73f457fd6d3fc1dff4b879e", + "storage_entries": [ + { + "key": "0x4f7b85d157c2993f3723f3f02f8d6ab48820448c94250145bfb902ef2bb777f", + "value": "0x100000000000000000000000000000000" + } + ] + }, + { + "address": "0x3f8c9062f1bfe45f82cd70ed97ff053bc5836783ec66adfe3288eb1b43aa83b", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x703d7098b480994daa" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0xa6f37bea4e0fdd9" + } + ] + }, + { + "address": "0x12841233e17064c30206e983247b9a5b46b56427f1cd621c780b3fbba1db083", + "storage_entries": [ + { + "key": "0x753ffbdc2b0bfc4f8553313f1ed6545d4a2de0f7caa3a385b13d1ed4d0ad934", + "value": "0x1" + } + ] + }, + { + "address": "0x59a943ca214c10234b9a3b61c558ac20c005127d183b86a99a8f3c60a08b4ff", + "storage_entries": [ + { + "key": "0x14cc0f828501e1bb032df4e5810cfe7c260d7e196a140ecec5a83dc97fb27e0", + "value": "0x66cafe78" + }, + { + "key": "0x178aa618a136a3dae4121de8075402bd40a787adfcbbf4e8d8de55d887ddfb9", + "value": "0xef8397e5605e821" + }, + { + "key": "0x32cc2a5a8944344ae56ba91d9d48bb20837c23598d502ffaad2b9e1e112361c", + "value": "0x2a3ff7dbdd365" + }, + { + "key": "0x1b264b66023b6154947434dc29315488f9df8781cde65cdcd691eb84c000595", + "value": "0x66cafe78" + }, + { + "key": "0x55bd64a08284f65eaa89fd5a81f307ed9c778e89b797992d4af620df1d9cca7", + "value": "0xde4a79d92100b68" + }, + { + "key": "0x4a31f49fdb9cb10e4c5f4318207bab1aa70548024c73b5a20a4828c1a4e9005", + "value": "0x62740ce9323f1" + }, + { + "key": "0x4172093f6b1e57737ddf4d2270ecce189aa9cb630323df3932d19c63e88a1c4", + "value": "0xe24164573df44bf" + }, + { + "key": "0xb5da8588258cf59a9a61b801cb29947fe195cd2a4cf7029895d1841ed37793", + "value": "0x421f6676a60604" + }, + { + "key": "0x20282036f9f415ec13ff44bb35aef4f96afc9551818f06a946fe34ce4e8e976", + "value": "0x5223836c3bb55e" + }, + { + "key": "0x154a964b4969028601192cacc9498e02ead6de4ae6510d99cc0fc6e5056793d", + "value": "0xe76f5ff3b804811" + }, + { + "key": "0x1c41f330bd121872d68b16aad737d65e410fd9bab463545cc54e173fa5f7f89", + "value": "0xef664ef7e900e6" + }, + { + "key": "0x44dff0be23dce03163b957c4e69a9767a4898e7c7ea6c4cf52d8f57d63ed5d9", + "value": "0x66cafe78" + }, + { + "key": "0x6f993ef65ed08374ca714d0b18eceb7d7e1539d7d0512e142693bf7a486833c", + "value": "0x2ac9678cfba620" + }, + { + "key": "0x67cc907a55ab9b5c251d076a1b170cde38a5f9b3809e2bbae55c3c2a96500af", + "value": "0x109ddd78655ff9" + }, + { + "key": "0x21c9eb00d0ac408c043d571b90b3a8c30e8ea5c3f0e4b79e60416cd13493ecc", + "value": "0x514e1553e289e0" + }, + { + "key": "0xdafd05ed8e8edc1a76e71cc6035424f9a4f6848100a2cf666f9054805a8a08", + "value": "0x66cafe78" + }, + { + "key": "0x1ad05561d61ee79b7e2eea93c7dab54647930601d0fbc3d9ebcd6b61475262a", + "value": "0xdf62f29d6c10c48" + }, + { + "key": "0x7f707060dc04e7a4bf0e4a5b3cc74cac753d9ff1a2997082a22fb3cf8eb237f", + "value": "0xe0a1bd4bb26eb57" + }, + { + "key": "0x3ace8a2d501d0cc72133033060e292257c4f1a5f26312fc945d02c6bad5e3c9", + "value": "0xe2e4c48617be026" + }, + { + "key": "0x5e0ecd6cf18cb208b04ddb27c0ad2f6c242a7c177db4f8228f6e83c23d85265", + "value": "0xdfd8d0b489ec45d" + } + ] + }, + { + "address": "0x7280a807c8b79379bec87919433b7b836b93a92e6d71b24ee99f4ffe33dd337", + "storage_entries": [ + { + "key": "0x61b753ea8508680e5f5a5896622fd1352a0d94adedf3807618581a6eaa9f56", + "value": "0x66" + }, + { + "key": "0x6843daaed3889250ac055ef0265af2644277f5b8d248bac96e0435c8bc6f32", + "value": "0x1e79" + }, + { + "key": "0x4a81b529bc6c21c8a6851a49fb9988187f5e3d9025cf43ccedb8ff859a6f3c8", + "value": "0x6865262d42ddfe81d94d96d58b740fdad4c776b897b9105d601e0f2f49ec9cf" + } + ] + }, + { + "address": "0x344c86d9d9a189cf1b616c8d3bd550bdfd3f099f4076f7e680a14d4d8981124", + "storage_entries": [] + }, + { + "address": "0x1b14326182638866e10d804d7a9e9fd51a522c8ac59ab9b1b11975d21fae9c7", + "storage_entries": [ + { + "key": "0x26b54a6932478e33f7ff4e43ab87178a159355fe0e6c63e6614e8a4b18cad94", + "value": "0x66cafe78" + }, + { + "key": "0x27f7ba397cbd3cbcb04ae7f6ab10a58680ef53950553402075d7aeee76d4956", + "value": "0x2697e26" + }, + { + "key": "0x27f7ba397cbd3cbcb04ae7f6ab10a58680ef53950553402075d7aeee76d4959", + "value": "0x66cafe78" + }, + { + "key": "0x26b54a6932478e33f7ff4e43ab87178a159355fe0e6c63e6614e8a4b18cad93", + "value": "0x66cafe6f" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x490a04" + }, + { + "key": "0x26b54a6932478e33f7ff4e43ab87178a159355fe0e6c63e6614e8a4b18cad91", + "value": "0x2699697" + }, + { + "key": "0x27f7ba397cbd3cbcb04ae7f6ab10a58680ef53950553402075d7aeee76d4957", + "value": "0xa3d5e" + }, + { + "key": "0x26b54a6932478e33f7ff4e43ab87178a159355fe0e6c63e6614e8a4b18cad92", + "value": "0xa3d5e" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x7e28" + }, + { + "key": "0x5eecaa7608b66f1ebf26ec8bd8ab22d84ed97082f904153e383efb95b065572", + "value": "0x66cafeab" + }, + { + "key": "0x5eecaa7608b66f1ebf26ec8bd8ab22d84ed97082f904153e383efb95b065570", + "value": "0x268d721" + }, + { + "key": "0x5eecaa7608b66f1ebf26ec8bd8ab22d84ed97082f904153e383efb95b065571", + "value": "0xa3d5e" + }, + { + "key": "0x5eecaa7608b66f1ebf26ec8bd8ab22d84ed97082f904153e383efb95b065573", + "value": "0x66cafe78" + }, + { + "key": "0x27f7ba397cbd3cbcb04ae7f6ab10a58680ef53950553402075d7aeee76d4958", + "value": "0x66caff88" + } + ] + }, + { + "address": "0xf4bcb5b665a5728232b33fe97580583049e137d86bdf367d316dc2e9ca6a47", + "storage_entries": [ + { + "key": "0x2208eb7142b20a00788438f9ba35fdef173c7680ba652fbfa239fef3addf2b1", + "value": "0x39ea58201e5081" + }, + { + "key": "0x2141a67791ccd46711281bdb998cf05330a94bd912f4ab44bfca6f08f79cbf1", + "value": "0x11e51" + }, + { + "key": "0x33043a6019faaaacd896299801314dabcc91bc7d39ce3e8d557f431280a456b", + "value": "0x270b450a58a38bdae032696a8d" + }, + { + "key": "0x3fc73af821c877aa6ced977a0bc34de21bb584b2954c82c06c80d3bc0cce026", + "value": "0x958cb146c7ec515e2a7dbdea96b7e35" + } + ] + }, + { + "address": "0x7c2e1e733f28daa23e78be3a4f6c724c0ab06af65f6a95b5e0545215f1abc1b", + "storage_entries": [ + { + "key": "0x269e3afd13d7a688622a8ee84a4bf1d4f650a48e338e0bc9142cb66bc3c511", + "value": "0x97027199eb1a4eb67" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x414c16955971c9fa8d2b5b" + }, + { + "key": "0x6ccb87f4262ebc65951191c9b2dbf434f011a08adabc31b447565cdb9513fa6", + "value": "0x5f4dd77a8da64f383" + } + ] + }, + { + "address": "0x58388620d7b3db195744cef25a64063d1a9eeca12eeb321668286df5876acc6", + "storage_entries": [] + }, + { + "address": "0x38cc12c2f0a9948da9b2d5c986569c0567aa52af944022dbd870c5aee60dbd", + "storage_entries": [] + }, + { + "address": "0x40c94eed22c9a80383136565cb19cb8c05e6397c47a83a3f4bbea6b1c129f7f", + "storage_entries": [] + }, + { + "address": "0x7dbc0ae5ba61561b34d7951e3d51ee3524b41653b7d8d69f38c969796374ebe", + "storage_entries": [] + }, + { + "address": "0x1978b8733863f8a3161a202aa328d0796b40f12a3254bc0c622a1b4347d9631", + "storage_entries": [] + }, + { + "address": "0x1fecadfe7cda2487c66291f2970a629be8eecdcb006ba4e71d1428c2b7605c7", + "storage_entries": [ + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x1375fb2019e6a45d" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x16d917cc38491190a7" + } + ] + }, + { + "address": "0x7a7e603deece06f5c2b3859ca4a3b81e991b7629fa4203ff2ba883952572ca", + "storage_entries": [ + { + "key": "0x584f38f5154e9b8a6c40203ea644ba5275c501456ff7265ae17aa662d495c7b", + "value": "0x723f8b6ce2d551d8" + } + ] + }, + { + "address": "0x6c486e94d58cca139b82b6e001461fce56828740cc1bb6d07c29be230f2d5bd", + "storage_entries": [ + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x392b02" + }, + { + "key": "0x4f8829fff28df631b7299e89d5eee56c62d092a4376659de27816819368c686", + "value": "0x66cafe78" + }, + { + "key": "0x975c728729cd5e4a3ca7a0535e1685ca43a5990dab6d535055584fe02cdb5e", + "value": "0xa3d5e" + }, + { + "key": "0x975c728729cd5e4a3ca7a0535e1685ca43a5990dab6d535055584fe02cdb60", + "value": "0x66cafe78" + }, + { + "key": "0x4f8829fff28df631b7299e89d5eee56c62d092a4376659de27816819368c685", + "value": "0x66cafee0" + }, + { + "key": "0x17bd50253c29f6d022e00705e715cba16bda91c91e25851fdadd6dda0275efa", + "value": "0x66cafe78" + }, + { + "key": "0x975c728729cd5e4a3ca7a0535e1685ca43a5990dab6d535055584fe02cdb5d", + "value": "0x5f5bd59" + }, + { + "key": "0x17bd50253c29f6d022e00705e715cba16bda91c91e25851fdadd6dda0275ef9", + "value": "0x66cafe90" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x5bac" + }, + { + "key": "0x975c728729cd5e4a3ca7a0535e1685ca43a5990dab6d535055584fe02cdb5f", + "value": "0x66cafea4" + }, + { + "key": "0x4f8829fff28df631b7299e89d5eee56c62d092a4376659de27816819368c683", + "value": "0x5f5d606" + }, + { + "key": "0x4f8829fff28df631b7299e89d5eee56c62d092a4376659de27816819368c684", + "value": "0xa3d5e" + }, + { + "key": "0x17bd50253c29f6d022e00705e715cba16bda91c91e25851fdadd6dda0275ef7", + "value": "0x5f5c358" + }, + { + "key": "0x17bd50253c29f6d022e00705e715cba16bda91c91e25851fdadd6dda0275ef8", + "value": "0xa3d5e" + } + ] + }, + { + "address": "0x52021be6c3572486b5697430a2c3256eb1c5e9f9ee8383cf7a8b2f309a31f6f", + "storage_entries": [ + { + "key": "0x4f980baaf29da4401c3439686ce847150c6d0603749e7b39399577518098f33", + "value": "0xa3d5e" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x430d04" + }, + { + "key": "0x4f980baaf29da4401c3439686ce847150c6d0603749e7b39399577518098f32", + "value": "0x5cf4c279ec7" + }, + { + "key": "0x4f980baaf29da4401c3439686ce847150c6d0603749e7b39399577518098f35", + "value": "0x66cafe78" + }, + { + "key": "0x40c85db79ed32651d8cb7c6685fa8c650062910783d29dca3845f3a80d6ed43", + "value": "0x66cafe8c" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x6b39" + }, + { + "key": "0x40c85db79ed32651d8cb7c6685fa8c650062910783d29dca3845f3a80d6ed42", + "value": "0xa3d5e" + }, + { + "key": "0x40c85db79ed32651d8cb7c6685fa8c650062910783d29dca3845f3a80d6ed44", + "value": "0x66cafe78" + }, + { + "key": "0x4f980baaf29da4401c3439686ce847150c6d0603749e7b39399577518098f34", + "value": "0x66cafe64" + }, + { + "key": "0x40c85db79ed32651d8cb7c6685fa8c650062910783d29dca3845f3a80d6ed41", + "value": "0x5cf7a58a940" + } + ] + }, + { + "address": "0x7d8c33f4496aff713013411824fe34883f98da114d651185c60f56c1857e214", + "storage_entries": [] + }, + { + "address": "0x63d69ae657bd2f40337c39bf35a870ac27ddf91e6623c2f52529db4c1619a51", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x59c7cc16730" + }, + { + "key": "0x516db81946c7dff80bd06c15b3e2b6b10d52e7dfc974b20bb69ae96b82db906", + "value": "0xb0d2ccfd" + } + ] + }, + { + "address": "0x4878d1148318a31829523ee9c6a5ee563af6cd87f90a30809e5b0d27db8a9b", + "storage_entries": [ + { + "key": "0x2b317f1d76a1b287a48df2f31215729d2fd2d6bde40de53f0189a6c0f396a96", + "value": "0x30e29772030" + }, + { + "key": "0x608398e014ef770c41593655bdb73191e7876ae8b8ea86c440c49d7017f5d7e", + "value": "0xb0800374c676b" + }, + { + "key": "0x70e47b83faea56116e7d6fa80d0568bd0458120169fa8f12e38571e6cd69676", + "value": "0x33f4049a7ec" + }, + { + "key": "0x1697e3f0d595af286015241ed52a02f13ad8f8a6231554a9011af3ab85cc20", + "value": "0xa1b5dc88e" + }, + { + "key": "0x61b753ea8508680e5f5a5896622fd1352a0d94adedf3807618581a6eaa9f56", + "value": "0xc9053ab3dd7" + }, + { + "key": "0x3f7abfacbf46ee0c05c892d0f60631f833afedcd309c49891687b50df9f8d1b", + "value": "0x2885ed33da" + }, + { + "key": "0x1a647e407c57040dd533d74ad3d29d53e528620a8e248e5fbbc4f6caaee5a9f", + "value": "0x24af015b74d" + }, + { + "key": "0x7cecdd25dd2ea7e6c56680609541794751fca1ac02eae3d1ed6a3fc56abad6e", + "value": "0xb57aedeaa4" + }, + { + "key": "0x110c5eead1cc190e9d0355891d1bffe58c33d910aa3bb5d1b948361f5a08030", + "value": "0x4132a2fcc32d3" + }, + { + "key": "0x798861c6e140b459a4ffa0d01f1a6c0a20384e108b39ebefcec7f33451eaa4c", + "value": "0x4bd3f6aad80ac0" + }, + { + "key": "0x5af44454ca463fa5e54116c45f82d90f4c98b9566c59934738f2a5d8fc07cf1", + "value": "0x13ac76e52287" + }, + { + "key": "0x638083318d1e092a31e45210a3b2d8d0a572b2f2fb1de7db251b8735772a2b9", + "value": "0xa29f93482" + } + ] + }, + { + "address": "0x5726725e9507c3586cc0516449e2c74d9b201ab2747752bb0251aaa263c9a26", + "storage_entries": [ + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x78beb285fb936031d21" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66cafe78" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x1040bd37c236b8a06" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x35775aa3a" + } + ] + }, + { + "address": "0x4619e9ce4109590219c5263787050726be63382148538f3f936c22aa87d2fc2", + "storage_entries": [ + { + "key": "0x21e1f7868a42adf8781cf7d3a76817ceaaafda5d56b7e7d8f26bc4f27ecdbe2", + "value": "0x29dea91dad6da34a4cd0a" + }, + { + "key": "0x75c33e533ab03aaa9288fa20221fcef62b22a92b23f3a551b4851e724355876", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x29dea91dad6da34874112" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x1ce81410b6bd10f7c8386" + } + ] + }, + { + "address": "0x338724b89122b27c1d639c4e1ba54725af2ca038e70a5a8e90fcf86b06aff80", + "storage_entries": [] + }, + { + "address": "0xc530f2c0aa4c16a0806365b0898499fba372e5df7a7172dc6fe9ba777e8007", + "storage_entries": [ + { + "key": "0x3e4e1993901faad3dd005be17839130abdccb4c36ab73f74dd3f05333e2b8ef", + "value": "0xca7d3d76718685fbad00" + }, + { + "key": "0x266f8b55363b8e73f00c86872bdd2acbf25fdec9ff149a7855e1a0894e98f7", + "value": "0x762efe5ed948e2800" + } + ] + }, + { + "address": "0x5d2b4ff90b0bdba43656ea1c7a3a42f787e419fff52883f156cfb30a4a9e0bd", + "storage_entries": [] + }, + { + "address": "0x7110d84a0b0a3e8673e1f7d465c3f6c6a886ba7bb7c090b26053b150c7fd7a0", + "storage_entries": [] + }, + { + "address": "0x3ec56cc583e8b6b35e0f226b26bf8c27afe973909e62db9e64e9c466e6f18c4", + "storage_entries": [] + }, + { + "address": "0x6865262d42ddfe81d94d96d58b740fdad4c776b897b9105d601e0f2f49ec9cf", + "storage_entries": [] + }, + { + "address": "0x49d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7", + "storage_entries": [ + { + "key": "0x59c917230835dbc4669c743532d8c1e5b99cb96cc0d0803480147c35aa9eabb", + "value": "0x4bd52cc203a679" + }, + { + "key": "0x1cd5f67a6b8a183a20acc9fcd2048c9f7e1941d13f35e914d25300b1e890a37", + "value": "0x1a2a824fd1ac87" + }, + { + "key": "0x111589179dd21dc1e92f5829eb986ec03e66181aac2f082c50c3ad1af2c36aa", + "value": "0x26b873e2a7ae94" + }, + { + "key": "0x5b13f9e3b68ad64f537c4400ba5afddf3f8ccae582b44fcaca9858c8b5160a1", + "value": "0x1990a0f5ab0febb" + }, + { + "key": "0x69a52b72a113ba3283d75a3032aa39d2a6e0bc010f7eca8734a1d26c7fc695", + "value": "0x1f66a1e569a25b" + }, + { + "key": "0x67c0cc5a565c6a132e0e88c532d9e3f7e839ef8ac63fc475393206d2776032b", + "value": "0x1f3bf603174cb6" + }, + { + "key": "0x6f52079809db66bd5c72fc68a5428f9e57ac516352d19276d3ff61a9fe58b6b", + "value": "0x104fb97b7e" + }, + { + "key": "0x367b012f3d07fcd419fa5d383fb3884ea5d6bd315bfd9e1e63c1147e5506368", + "value": "0x27474065d2e0944" + }, + { + "key": "0x613d197003eaeaec95cda022ece67293267e42a6ab0d14b510a147b500cb6b8", + "value": "0x1774e750cb9d272d9b" + }, + { + "key": "0x3e462fc7483caae75b622fcdf18515e902aab14cbf63945561c0b50d15d6c2", + "value": "0x1278171f85a7c077" + }, + { + "key": "0x1570aa5cc9cb038d54178c2e0af462328703e283205eaef0a949a7fa138bcfd", + "value": "0x1d0d9489b1e0ab" + }, + { + "key": "0x6636a75b3ff370d46d688599f7138b2fac9bf6cfa0ce2f4c55c459c9dacdeb9", + "value": "0x20f1d96b5597c4" + }, + { + "key": "0x2b70819fd7baa9909bf8c58bbac40570dedd9f7cd3ef7e7b7e4035b7e82ec5f", + "value": "0x105061e57a" + }, + { + "key": "0x31a1e53a29f3e42afc8b135e08d1333720d57945adc2c9c32e11dfeacf2ee", + "value": "0x199c6652362acb" + }, + { + "key": "0x5d03c72383f0cde9567310bc47892edc6ebbf757250dd84686cdd292f5b6f2f", + "value": "0x7189761b6725b2" + }, + { + "key": "0x3c8eecf9516c5c6429991a8965be2555872fb6190df9674142a3c6d99c4661d", + "value": "0x213fc8562a41aa" + }, + { + "key": "0x38e0503b87211df933ca34a5a6f1677f88d16890ec6fb843e975e273e80467e", + "value": "0x39e527f2675487f9d" + }, + { + "key": "0x1c8dbf555be2559058fefd8b6a3531c1b0b2656d3b3b84719d9a5aef0728a8a", + "value": "0x10500f56f2" + }, + { + "key": "0x585ad207462164c68668cded3d7ee02dea2f306cf2c325756401fcc2f2fb97e", + "value": "0x56f3e200e0b000" + }, + { + "key": "0x3aeff2c4fa75aace8f3974aa291ed288c2946cb2c89d3d45f43ec2e3d341266", + "value": "0x584dccfe023d9714e" + }, + { + "key": "0x36daeb121801f6ef0e6da8709cf053ce50ed601cc5673bd3151d84b2dca5ae7", + "value": "0xac0c6585eb116" + }, + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x3d4b5425d9d2cce" + }, + { + "key": "0x7a551cc133e5fe4a4cf58d4c38fc1b25015a7b3e4f184ba004bed8dacb551bd", + "value": "0x166dc8636671942" + }, + { + "key": "0x4b851648f96e5edb2e655129e27f91242ae590dec8d514f68767978b881ad08", + "value": "0x66f8404244508e7" + }, + { + "key": "0x19ac936c891040e6d16c705f25e210dd79f43cd820f5aecb13601f514e601d7", + "value": "0x2d4476eee4dc87b1" + }, + { + "key": "0x110d72e967a25e84433e44d5dc11f3ac9ebc2b1cdc33190a97d01ce2e3798cc", + "value": "0x9f3027e497926" + }, + { + "key": "0x5fed395fcf0746aba8eeaed0480919941004b7d52792cac1966bfae04d47a11", + "value": "0x24e48c4091b8625" + }, + { + "key": "0x2b427a7c272274f4129bff30e709da4643ecd0b874e95a89181aa2422b832f", + "value": "0x24cf42bba67f6f6" + }, + { + "key": "0x212c56ca827fd0cf508e8fd45edd724a6fbcecaaf2756037abdecef0ebe8bfb", + "value": "0x11c77a1a1e0752" + }, + { + "key": "0x3ce63b6014623680de3801addbdbc460bcbf144f0c741cb14aed33cc5bb892c", + "value": "0xec61530349485d5" + }, + { + "key": "0x70a9b73288fffff468b2443e4c1507b7ba0ef374b286faa9351fd9d86ae8d8b", + "value": "0x107bc1421adf7c" + }, + { + "key": "0x6b3254181b6b59f31aa86699e1d0fd2d3c6e759454a68932df062bf0f176459", + "value": "0x24c48e30284fc32" + }, + { + "key": "0x17d6e93da0a87c048607a8119dc161ae6965eb8f3c9f6c1b74afe47ae3715c2", + "value": "0x247432032f6be00" + }, + { + "key": "0x4c6892b386996ee4efdd7cda583b6f8da4d9e4d552eab4bd7876efa302f7082", + "value": "0x3de9c42658e71cb" + }, + { + "key": "0x519cd0b685c10e97e93dd1ad26ebe79c8864f99ddce61d07506b3f8ee9682c1", + "value": "0xa94feaa023a72ce" + }, + { + "key": "0x7f766a9590f3f9b39aba5d8c250c45767091ef9c749d390ee5e0f6c5413c5ee", + "value": "0x10501e69d6" + }, + { + "key": "0x53fd9d6a96124b5fa38da77f8f14dffcac7f5a85623c6534397994f59e7bf20", + "value": "0x9ab68537d1336" + }, + { + "key": "0x60f77b347e414d3460516ffc4bf588f4235089f60ea132698396b57c184bb40", + "value": "0x1a4d672efb804e" + }, + { + "key": "0x1e008b2a087a1b988d53d8ad26d04a1c8037cb77595ed47a76e098c109a8e1c", + "value": "0x1609302fa545b9" + }, + { + "key": "0x490ba80e3d784cbb7042849ad68c9ac3e35a2b91b8c2330378701a780973f62", + "value": "0x23802361eecd" + }, + { + "key": "0x99ff64f8cd4aa3301dec7b19f4052cd68a1fb5690f6e017807e97a46d5e08e", + "value": "0x9f3e7bf4069af45ca" + }, + { + "key": "0x6bdab5b5d08a8887ef4d36b89aa78ac9628cb8adfb2b7a94d79053065b9965e", + "value": "0xa6f37bea4e0fdd9" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x28db0dd4ba138b1ff0c" + }, + { + "key": "0x5fad7613fd327fc13290b4c80dcb56b41035cff52310cc2f9e1d7de286fcff1", + "value": "0x165edb26676973c0b" + }, + { + "key": "0x5f6b6fc6348470674807164ece27f9f698117509138b41bbd524edb641810be", + "value": "0x21f8465a874c5" + }, + { + "key": "0x24e6f287d70cc7fcc92193e8349c21207def342360df512c28ea83b31faceae", + "value": "0x3a051ac044f3e4" + }, + { + "key": "0x71bcf12577321cb8ac8617acd90a77c9ed6523899303e07cbb5b64e1e72fed8", + "value": "0x1d7b57e308b7b5d" + }, + { + "key": "0x3851d399ca5877d49e4bb7f5c0101164290c167e8b8f6eaad7d502d68bf374c", + "value": "0x10505017ff" + }, + { + "key": "0x69748f5fadd29e0624b8d5026e87f02e28b2759fb3fc02d97a917455e63c3d7", + "value": "0x643d371131619" + }, + { + "key": "0x71b8c2256a4d5150a6f4dbbdf96d0d38a07332f8403d0ed697693b5ac46de2", + "value": "0x79602c63cf303a2" + }, + { + "key": "0x76b53dca196d89bfb427adde12f7e4551b42a542da362051c502e141a6b9ae3", + "value": "0x929fc28b1a3346" + }, + { + "key": "0x7effecfcd0745eeb5d91e3d7497643fdfc0f5fe4077149f258e655b9c719d44", + "value": "0x24fe2c796e5b191" + }, + { + "key": "0x4dbfe544ed63377b3d819a142e245f56921729b4c3e205f87e66b64af007235", + "value": "0x6540d4232a8390d" + }, + { + "key": "0x599b39b8f0e0e064f62ba921252b0735c2732a18e0b87e5b66e7f235d05dbf9", + "value": "0xfffffffffffffd6363e8c8bf2ca9cdaa" + }, + { + "key": "0x266f8b55363b8e73f00c86872bdd2acbf25fdec9ff149a7855e1a0894e98f7", + "value": "0x1899050d6234d14" + }, + { + "key": "0x75c33e533ab03aaa9288fa20221fcef62b22a92b23f3a551b4851e724355876", + "value": "0x358f45aaa992e4" + }, + { + "key": "0x814cf93287eb1a0e4f9adfd8f08ad759a7ba6ef630fee1d681d11db74eb07e", + "value": "0x3a824513483e1d" + }, + { + "key": "0x723438ae54c04d20256138ca4cf977bce30e9acace63a1ee1684385e6380858", + "value": "0x7a24e2af9c" + }, + { + "key": "0x269e3afd13d7a688622a8ee84a4bf1d4f650a48e338e0bc9142cb66bc3c511", + "value": "0x20c343767eb91" + }, + { + "key": "0x79cc9f1d6fcb51e0503a05b7963d3951fae52b3863024f505eba10f044c5ee4", + "value": "0xd9385b619ca537" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x504bc49e2c4fd1fc106" + }, + { + "key": "0x5496768776e3db30053404f18067d81a6e06f5a2b0de326e21298fd9d569a9a", + "value": "0x78859bf7c99c3158" + }, + { + "key": "0x516db81946c7dff80bd06c15b3e2b6b10d52e7dfc974b20bb69ae96b82db906", + "value": "0x3e664ed860c9" + }, + { + "key": "0x16b3d3e6dc5eb6b2a22d393aca36ab039dde3fd8264d00f198e73d4d82ec7cd", + "value": "0xe5f18d13d0d62" + }, + { + "key": "0x4d59adfa23601a0d30b68b4838de7b31ffb435fd988887684fb51403556fb2f", + "value": "0x54946ca97ee3b0" + }, + { + "key": "0x64417198bb083774bd3317ff4f4679597a33013870d6a99c2a9d32b3c51c09f", + "value": "0x122290d07ad217" + }, + { + "key": "0x7629bf3e5e05518165939127817b7fc8266058cdf4f5283e37da72a4a452c47", + "value": "0xd5e1b535267e5" + }, + { + "key": "0x7354567862f4d3e6b5564d2e2a12ea3643daaa9dfe1d9ee1290311438242e10", + "value": "0x2669ec24a226fcd" + }, + { + "key": "0x2be41ea00b3e998afcaecaeff43baa5459a4184c3bdcc9225d5fe8d1cac1acd", + "value": "0x38d7ea4c68000" + }, + { + "key": "0x3badb570a5ac977685f9ba122d5862d02b575a348b0a3ce085e04da84ef9c8d", + "value": "0x5c7ef4b6e40d2b4" + }, + { + "key": "0x781170a5a58724480a7c2244c8ccc399d632371de15f86eb1def1d594ad373a", + "value": "0x88fc07bd364897" + }, + { + "key": "0x5bcb9d5ba4d5512088b3877732de73f8f5cfb9d5d3393fd7b577788cc161658", + "value": "0x0" + }, + { + "key": "0x637573e7c78643cbde2f5ef2c8bf24f85595a16a26b8ba2a6ce820d55b07081", + "value": "0x24ff89c4e8e89e7" + }, + { + "key": "0x2c40cfaa9c0aeba40ea0b8f5818e1a12c44c5e9c01c31beb8fd21f5dab2f95d", + "value": "0xd85414873e6b9b8d" + }, + { + "key": "0x2681e8758501492434ed3c4c23296b52d54a8e1427a1ab9dc0d782221f13375", + "value": "0x2fd7c0c0b80fd2" + }, + { + "key": "0x4ba42abd4e4d6d06507e99cabe0c5ec930c621772416ed6d5a36c1194aee557", + "value": "0x104fc1a76c" + }, + { + "key": "0xd952ae9351495dc8b2c502071219339d504501ae7e0d3e43df6fe5a4b2c6c0", + "value": "0x357e7479d0700f" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x2c49101b3909b96" + }, + { + "key": "0x57736171232289674c6d8d450ea95fca0ea2a57c3a8f838737ce335bea82929", + "value": "0x37961407335215" + }, + { + "key": "0x5633e53ec7027b616ce31c20b0cc651d6f7b720359be8248e1a691863e2a3e", + "value": "0x1046a77c67" + }, + { + "key": "0x6bfd94b067b7a0f959ac2f97a1c66f8f023e057e76392bfbdc29c0abc9cc414", + "value": "0x16fddd08c8f198896" + }, + { + "key": "0x5766ce84b976336c8dca0598cdd7faa350c1bbee3ead2c26a26984d99714d34", + "value": "0x3ae6aa027d024" + }, + { + "key": "0x3d7ccfb9e9c5944c7a3226921716da0d42239892dbde7b12c1e5597d31c4124", + "value": "0x280b1ab91fe224a24" + }, + { + "key": "0x4705baa9724ea730ec703ed1e7fe788b550741c95b77725fbc2e01d2fe5189d", + "value": "0x6c6f8d6244dd217" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0xa378918d9402a7f61" + }, + { + "key": "0x6da2d3bc7a56461ba6fe057fea3a7371ee83c837dd887093b66c251df20f0d9", + "value": "0x1d392e42bd28ae" + }, + { + "key": "0x74ee32f30f6964431204823e70213278c5ca5396df9976fd7a27dd0351cf81c", + "value": "0x23915d13b36820" + }, + { + "key": "0x5aa332dc6ae90d6d53fee5fa2aba459a7f2c65c2b2f8759e4e478b3522c6186", + "value": "0x2187afc0648803" + }, + { + "key": "0x28be0d1b762c32f0c434a2954fb9f00b05e7c4435dad20988f75196962e29c8", + "value": "0x3aa52d80910fc6" + } + ] + }, + { + "address": "0x68400056dccee818caa7e8a2c305f9a60d255145bac22d6c5c9bf9e2e046b71", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x280b1ab91fe224a24" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x42b47e7cb9ffcfc270ef" + } + ] + }, + { + "address": "0x1f21a56366cc28ea3cff8434f15a37f6aca8a595ca3bc5ffc6840a9c44d581f", + "storage_entries": [ + { + "key": "0x3169280320f42baaf260a97fb41ce48a8c2bcf8f894064c9d5f4e63688377f5", + "value": "0x3" + }, + { + "key": "0x458e21e543febcb073fbf886ef04085f067be1186505042d02a7fac3e125cd9", + "value": "0xac0" + }, + { + "key": "0x5566272b725af82ec82a2cce0cb2afce24ef1c4e6ea035d7a4010029e72c8a0", + "value": "0xac0" + }, + { + "key": "0x5566272b725af82ec82a2cce0cb2afce24ef1c4e6ea035d7a4010029e72c89e", + "value": "0x100" + }, + { + "key": "0x497cf69593aabd01ec792f35b5bd7f9fb00973d50b8ffff6093ba806b57c0ed", + "value": "0xac0" + } + ] + }, + { + "address": "0x1610abab2ff987cdfb5e73cccbf7069cbb1a02bbfa5ee31d97cc30e29d89090", + "storage_entries": [ + { + "key": "0x516db81946c7dff80bd06c15b3e2b6b10d52e7dfc974b20bb69ae96b82db906", + "value": "0x9c5278be1e142ef6" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x1e950459d639772d59daa" + } + ] + }, + { + "address": "0x551710e31ceb35c0e14c63a33b8d379ab06d17625a0231b971fd98713445506", + "storage_entries": [] + }, + { + "address": "0x32a4480eaa15a76e95f524cadeeb8f75b43720530c156e603f4b550ba0fb8c1", + "storage_entries": [] + }, + { + "address": "0x2a85bd616f912537c50a49a4076db02c00b29b2cdc8a197ce92ed1837fa875b", + "storage_entries": [ + { + "key": "0x38502d057a7e5faeb88c2da2b38bed5cb3b54ba595bdaaffa08e00c1f23ff7", + "value": "0x5f497da000000000000000000000000066caff95" + }, + { + "key": "0xa1fb34bebf1a31f7f5655609661d0adf360ee017d59f5a79a888269f14610e", + "value": "0x40059ac104000000000000000000000000066caff95" + }, + { + "key": "0x1cccf7c0332e31fdb47f7b5ef3b96c446b20d931e65ca65d944ec9b225a8069", + "value": "0x5f7071c000000000000000000000000066caff95" + }, + { + "key": "0x27e944e50e1ed0d8b92bdfa6d1952d7ab591ee17142a9e75986fccdbabfa7c8", + "value": "0xf42b5000000000000000000000000066caff95" + }, + { + "key": "0x4f1a4684e38be7aa9f297c42bf5250499dd16de5a15420725275aea3c1875ba", + "value": "0x4b6509de3d000000000000000000000000066caff95" + }, + { + "key": "0x473ed377d9c2116809dc33ae8f59fd4c49ed961bc976ac34f7fb52509dd835a", + "value": "0x5cc44a02901000000000000000000000000066caff95" + }, + { + "key": "0x6c824c2c9cfc495fd01cf1381ada6a1e04f628a177b331d2868b65df92892e7", + "value": "0x2636128000000000000000000000000066caff95" + }, + { + "key": "0x23698d11a922abbb5528badafb0f486ae855d31d4eb1aaf7f968e13c8dd7dd7", + "value": "0x4007c6f0c9000000000000000000000000066caff95" + } + ] + }, + { + "address": "0x1a4edc870eb8da3b73ab70d5dffc5c0a14a6ab1ad612845add04200582bffa4", + "storage_entries": [] + }, + { + "address": "0x57e980208954e55a1af061c53ecdf6609ef1bdbc6ec3f700a23fe8c55cbdf9a", + "storage_entries": [] + }, + { + "address": "0x6a86a506ecf3e42b516754f94aad13f726cc6470008ef79a7dde024ce5df52f", + "storage_entries": [] + }, + { + "address": "0x709581a5fdc685876ccebf3062d2f6a352ff55c81bd751cf29997a07bc6fc69", + "storage_entries": [] + }, + { + "address": "0x41ae8cae25b8b723aaa5af424b979bbf37c778f0435cee87f010a4f461eaeb7", + "storage_entries": [ + { + "key": "0x584f38f5154e9b8a6c40203ea644ba5275c501456ff7265ae17aa662d495c7b", + "value": "0x725357fe169ce96" + }, + { + "key": "0x39b03cc1cdefcbdadd13946706a2aa9cd244f8e72115079bdf19063751800f4", + "value": "0x19506d42a403f0ac" + } + ] + }, + { + "address": "0x28385e91469dfed6260efe5a054b3cdc9967fab2f4fd87d1aac33c5a1719c07", + "storage_entries": [] + }, + { + "address": "0x4c0a5193d58f74fbace4b74dcf65481e734ed1714121bdc571da345540efa05", + "storage_entries": [ + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c513a", + "value": "0x38dc71314e257b00aee81e" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5139", + "value": "0x18df98a61f224f059c96eb" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5138", + "value": "0x3837f195207c031a68f35c9" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5137", + "value": "0x366e1e048f3e051c96c3080" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5136", + "value": "0x66cafe78" + } + ] + }, + { + "address": "0x7f28a38e4f6622d530c83b75efd5ef772352c9c8e4bbc5e75355601f611367f", + "storage_entries": [] + }, + { + "address": "0x4fc6aa08cd359710f619476074e0ff7e7f82532d6fb1b3960b5818a796f75e3", + "storage_entries": [ + { + "key": "0x584f38f5154e9b8a6c40203ea644ba5275c501456ff7265ae17aa662d495c7b", + "value": "0x8962d9835780c252" + } + ] + }, + { + "address": "0x51c78d100ca4a44256e229e9a10a5c15608c77dc69976e7cc66d4423072ae19", + "storage_entries": [ + { + "key": "0x54d3ea9c0db4a610c18c358d21965fdb7179d7a1b49811496a8751a56947e9f", + "value": "0xa3d5e" + }, + { + "key": "0x1d18cea329d5a2d14841cfcabd8d7db6b93be60def6afdf6be811d3f1b71d1e", + "value": "0x66cafe86" + }, + { + "key": "0x7c9a042730c89c7065b8f5aac7a03c4aa748584e307d4a65a694e0079f00bf7", + "value": "0x66cafd8d" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x560a04" + }, + { + "key": "0x3143ea7d3c8a263608fcdc19ce0b6e7c8f994be763a3038af5ea5d9b98c6182", + "value": "0x66cafe78" + }, + { + "key": "0x7c9a042730c89c7065b8f5aac7a03c4aa748584e307d4a65a694e0079f00bf8", + "value": "0x66cafe78" + }, + { + "key": "0x3143ea7d3c8a263608fcdc19ce0b6e7c8f994be763a3038af5ea5d9b98c617f", + "value": "0x5f6b3f0" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x55af" + }, + { + "key": "0x7c9a042730c89c7065b8f5aac7a03c4aa748584e307d4a65a694e0079f00bf6", + "value": "0xa3d5e" + }, + { + "key": "0x54d3ea9c0db4a610c18c358d21965fdb7179d7a1b49811496a8751a56947e9e", + "value": "0x5f6b23e" + }, + { + "key": "0x3143ea7d3c8a263608fcdc19ce0b6e7c8f994be763a3038af5ea5d9b98c6180", + "value": "0xa3d5e" + }, + { + "key": "0x1d18cea329d5a2d14841cfcabd8d7db6b93be60def6afdf6be811d3f1b71d1d", + "value": "0xa3d5e" + }, + { + "key": "0x3143ea7d3c8a263608fcdc19ce0b6e7c8f994be763a3038af5ea5d9b98c6181", + "value": "0x66cafe9a" + }, + { + "key": "0x54d3ea9c0db4a610c18c358d21965fdb7179d7a1b49811496a8751a56947ea1", + "value": "0x66cafe78" + }, + { + "key": "0x1d18cea329d5a2d14841cfcabd8d7db6b93be60def6afdf6be811d3f1b71d1f", + "value": "0x66cafe78" + }, + { + "key": "0x7c9a042730c89c7065b8f5aac7a03c4aa748584e307d4a65a694e0079f00bf5", + "value": "0x5f6b3f0" + }, + { + "key": "0x1d18cea329d5a2d14841cfcabd8d7db6b93be60def6afdf6be811d3f1b71d1c", + "value": "0x5f6b3f0" + }, + { + "key": "0x54d3ea9c0db4a610c18c358d21965fdb7179d7a1b49811496a8751a56947ea0", + "value": "0x66caff26" + } + ] + }, + { + "address": "0x719b5092403233201aa822ce928bd4b551d0cdb071a724edd7dc5e5f57b7f34", + "storage_entries": [ + { + "key": "0x1bff8c50a5584fb1238a3e05b95b80b366ff85cc15268676f16651b2c922129", + "value": "0x83430ef2fe85b9a28de45" + }, + { + "key": "0x6bdab5b5d08a8887ef4d36b89aa78ac9628cb8adfb2b7a94d79053065b9965e", + "value": "0x703d7098b480994daa" + } + ] + }, + { + "address": "0x422d33a3638dcc4c62e72e1d6942cd31eb643ef596ccac2351e0e21f6cd4bf4", + "storage_entries": [ + { + "key": "0x740321d6a7262dfc8779e165d24e7728845351b0c282996f14552fbaa4c2e13", + "value": "0xb050001" + }, + { + "key": "0x5dd4499737629107a81202d83ad6a1b2688037bb186aca75793de18bb37c628", + "value": "0x318086f240000cbec06781000a000000001223841cc00004ab8cca8001" + }, + { + "key": "0x60224cce9df7386d1ee8909d7c9cff19b0ef48cf9557212a975fd68987293d4", + "value": "0x100000000000000000000000000000000" + }, + { + "key": "0x30e4ce10fdfe2019b8a51606f36351c03f356c1e096d7170b9332bddafeb40", + "value": "0x2000000000000463c00052010066cafdb9020000000000004c390005" + }, + { + "key": "0x4ff93c6c744bbb1f94fe7af82c7cec7b13ace181dbd1aaa7076512ac85794cd", + "value": "0x390003" + }, + { + "key": "0x2645e91dae0125d5c9c2824bf60a58f245282acc5166def95bc4cd2a52690ce", + "value": "0xa3d5f2" + }, + { + "key": "0x4203ffa245689b1cb1c3ee466d3b9f23f95bb1af77a8c484ef3f90d5d387ce5", + "value": "0x66cafe7800011" + }, + { + "key": "0x737a2d9aacfdc49537a8f6878bbd256fcccdbeee836be1048b98fa8c52fb827", + "value": "0x19b2d4eb4000033b94ed91684400010020000000000004c390005001d40042" + }, + { + "key": "0xccad227192e71f1da0033af759c1f8abfcf576a10406cd678c80c5abbafab7", + "value": "0x66f28b78066cafe78000278d000278d0000000000003d0900" + }, + { + "key": "0x5130d09dd92970c04a47dcfb80cd087970f53c7608684d44b9dbcc3f65cf8e7", + "value": "0x15ffffc700019b227420013aa6b8013aa6b800012" + }, + { + "key": "0x3f81031df198fc214ceb09f9bca12c8f9d6efb4365348f85da7b6d226d2fb10", + "value": "0x4600114002c0000000000030d400005573000061a80" + }, + { + "key": "0x52e1a6715251bba55fab1344e58e90d94c3682be4c6ab8db8a5821be56bdd3d", + "value": "0x3cc002c0000000000000000000000050003d090" + }, + { + "key": "0x7335497d754b62ed116a2f3838f916e36f65a3a72db23c3881d18d04b8f3470", + "value": "0x200d1000000000000211300050000a3d5e00003066cb1b57066c4e183" + }, + { + "key": "0x2bda1f5ff91b2cc6aea4db1ca48faebe3179df739ed7eedc84844744cb4a9ac", + "value": "0x8100054010066cb47cd020000000000000d740005" + }, + { + "key": "0x3cbe909a262ce0d1fc077be0a210a28a36a6019addaf7875d0c0acf5465c15a", + "value": "0x2000000000000390800054010066cafe7802000000000000390a0005" + }, + { + "key": "0x31c74924a7eb5835896bd92f9493f2babc61dd1d8eca1b9b0979ead5abd04a4", + "value": "0xdd2700003003c40005003ac00680000000a0068af840000001e000001f5" + }, + { + "key": "0x13d325c6a7fa76be274e53b347bdadc42b60db5558628cabf738e262d0b51fe", + "value": "0x3cc002c001f400ed000000050003d09000000bb800000001" + }, + { + "key": "0x6d31370ccbde5b5bb5552c58e0e40e30c09750fb64a3514bd5679ade8c163f6", + "value": "0x1000d000000000050e9df90000001855bc801" + }, + { + "key": "0x650e844355dfb0958f4b57dc7d214dd35b38d4540ee0c086857b5b72e388506", + "value": "0x1" + }, + { + "key": "0x1a678014c88c42e25ea36b45e6b4c1bab16ebc9523c227293e69b6e0cd9a78b", + "value": "0x66b87e02000000000" + }, + { + "key": "0x60a4eabf7727feba7da816dbff220100a5b00a2ab37d56af8f08428faaeeb8", + "value": "0x2000000000000050a00064010066caff46010000000000004e2a0005" + }, + { + "key": "0x42f60b616edbe3a8856a79afa438b33d2a68eab737dc060b9228edbf371d50", + "value": "0x6064180dc000229e958881000a0000000038dcf250e80001ab702dd802" + }, + { + "key": "0x75b27a1e1e1056283e3e67709fb51893c6c609143a2e4e4fbaded5750b1dbdf", + "value": "0x6400180000000000000000001202650126ae69" + }, + { + "key": "0x66444406176ab62d20e989dd820cc63040595e46002de0be2ce3ba25fd3f08", + "value": "0x202520000000000004b4900050000a3d5e00002066cb49a2066c5cbf0" + }, + { + "key": "0x787b4c5c7ab19d4bc639292767e2b66d248c5196d3be732e82fc2b5a63b73bd", + "value": "0x66cb2603066c819f8" + }, + { + "key": "0x725e590d29f9cf64eea9e1993c6b5df79a8c217a287e3cc9c5be30b37afbbad", + "value": "0x2001c0000000000003ffc00050000a3d5b00003066cb0122066c8b355" + }, + { + "key": "0x5490895fc74554724e2b93261313598985f09e3ac7052371156f37c5bd27b32", + "value": "0x2de6f400007000bc0006000c4002000001f25003b87d00000960600190d74" + }, + { + "key": "0x3797cb207902f2dc5ed3b068e4ade85f9e406f6db8a389689e2097225151917", + "value": "0xb050001" + }, + { + "key": "0x52e1a6715251bba55fab1344e58e90d94c3682be4c6ab8db8a5821be56bdd3c", + "value": "0x200000000000011ab00054010066caff7e010000000000004e2a0005" + }, + { + "key": "0x4092c33dd9091d11b59a13d4a58cca4b890afbdbc32059b0eb2841e32ae9cb", + "value": "0xac2214bf8000226d375981000a0000000005acecedc800012295c92801" + }, + { + "key": "0x450c927fece51f746d82c03791803bbeee6f08bfcddfa9b0e8848c915344555", + "value": "0x1000a000000000004812ed8000000e6a2f801" + }, + { + "key": "0x5f69e7c66985e8c2542762eb293da7eb5e8e821e70d8287189e49553b9406d7", + "value": "0x2000000000000390900052010066cafd5b0200000000000019940005" + }, + { + "key": "0x78762d869fc650977b86df046e828378cf1a8c371dd9191423a2010bb586771", + "value": "0x3ca9076c40000f8cc75881000a0000000032d72f6138000c6d1037f810" + }, + { + "key": "0x7e44197b45367c9d13baab8f022cc0952b3a6fa01dee49549334ea3aec0b7d4", + "value": "0x100000000000000000000000000000000" + }, + { + "key": "0x7e1f2decbed1b5461a5facfab826c840b237ea95da91218ad46b0f9700ae2fa", + "value": "0x36400f3003d000ed00194007d0000001f0000002c007270e0002be570" + }, + { + "key": "0x7818026a6f81863c46895dd21bc5127cea25053a07a83f8ef84403d93f4b7a4", + "value": "0x66cb1b88066c88d6e" + }, + { + "key": "0xd7b26181206d1ab7573c726679b39c6c43db67ec91a533bcbe5b2051d285c", + "value": "0x2000000000000390900052010066cafd5b0200000000000019940005" + }, + { + "key": "0x69d2c9f0d3533a85ea36315c62b948a068ee56b8b4a1e7f31fa2160c4813532", + "value": "0x2000a0000000000003da700050000a3d5400003066cafe78066c3ef64" + }, + { + "key": "0x672bf3e1e21adfacdb088596d36f211061f09228ea8e2d4ab3772e14b52921", + "value": "0x436d0005" + }, + { + "key": "0x4f8445a7166a8472ab1c29463270bf3a605124d233c9fe4b8015b7cbe658dc8", + "value": "0xb050001" + }, + { + "key": "0x408ce980b8893a2f3f435c930f03034ac5444082bc6280d01afc39dbcc254a5", + "value": "0x66cb4327066c4105e" + }, + { + "key": "0x3127190ba811d9403619b0585a205faa9e6110dcf756d91b9e86a76876512b", + "value": "0x1ba11000700016800590014400b3000650a8000495d30005ec4e00002329" + }, + { + "key": "0x13025d6292f37242c746c77fb32e9ec6d3af655a93ceb53439563e01a2d32ce", + "value": "0x800f0001a0004600114002c0000000100030d40000493e0000927c0" + }, + { + "key": "0x759ef899426d03636014ee0d79c36fd9212f4a194b0d6879d04c2f9bfe56a84", + "value": "0x66cb0bbc066c731e8" + }, + { + "key": "0x67dabb388f2e46c8ff3dafbd35af61c22e0152b30495fab0c392db1d51eac13", + "value": "0x717da4002c00048003000140005600061a8000010549001d70e700040d2d" + }, + { + "key": "0x2bda1f5ff91b2cc6aea4db1ca48faebe3179df739ed7eedc84844744cb4a9ad", + "value": "0x1500000000000000000000000000030d40" + }, + { + "key": "0x18512debbec02d860b731e06b1cd236a5f03536054705f9cb8cef2a421b15ed", + "value": "0x3dc0090002b00017002ac00bc00086276000022240002d7e400000012" + }, + { + "key": "0x12ec2b17c9d9da39bedbe69241e2cd976da49b134b9ce1930c17ad43d91f9ca", + "value": "0xb4004f001780045000b4004a0020573f000124f8003f5183000321f4" + }, + { + "key": "0x386c26b34ecd6d2e95b5652e4496a55cdf79eee45aca9cd89bc41f6730d6140", + "value": "0x46a688308e9f2eb6e734624eb7dc5e0ecdcf7a020021bae1c3608f17505c2f1" + }, + { + "key": "0x32bbf527da3357b20fcc7d2f16342376f282a074c4c5b2e8ee3fc16134e2d93", + "value": "0x12c0050000000000000000000003c3200000d0c" + }, + { + "key": "0x275ca398a3d6ebe29098fb104152e95e54ecaeb1bd09002a1844c78206b6a6c", + "value": "0x66cb00fc010010002" + }, + { + "key": "0x542fc72ac9f05e532c383236d981c5013d761b8aaccbe81210d801e1e2fc95d", + "value": "0x1800000000000000000000000002faf080" + }, + { + "key": "0x3127190ba811d9403619b0585a205faa9e6110dcf756d91b9e86a76876512e", + "value": "0xcb980000d00048000200060002800030d4800049ca20032770b00002e2b" + }, + { + "key": "0x3509414a0f13dce6149a400a7bdfbacfbbdec91c360724391b75c0836d393c6", + "value": "0xed00000000000000000000000000000002" + }, + { + "key": "0x3cbe909a262ce0d1fc077be0a210a28a36a6019addaf7875d0c0acf5465c15b", + "value": "0xa600000000000000000000000000000001" + }, + { + "key": "0x67c6f02acdf00b4eeaf8c4876f471c8ad5939aff219ea7abd17190e1660a458", + "value": "0x299b795800000095b8db81000a0000000021999bb80000000524d56001" + }, + { + "key": "0x1a678014c88c42e25ea36b45e6b4c1bab16ebc9523c227293e69b6e0cd9a78a", + "value": "0x0" + }, + { + "key": "0xe6cc676653df56b9f2ae5a5ac8e2a75ed94a9adcadb2f21875ae1d2804b756", + "value": "0x19b2f209000007d00000000004000100200000000000021160005001340040" + }, + { + "key": "0x12ec2b17c9d9da39bedbe69241e2cd976da49b134b9ce1930c17ad43d91f9b4", + "value": "0x3cf2be0280000b0d06f501000a0000000039f2da583000101dc6363019" + }, + { + "key": "0x5fb83c33e4e8d91f2c263c98d5c2056e1426bca99e68d8a3d524007369ee364", + "value": "0x66f28b78066cafe78000278d000278d0000000000003d0900" + }, + { + "key": "0x3f9346f19bbf51a610d0cd94a17b7be5caa9141491f880b417efd6db9a968c7", + "value": "0x66cafe7806694cbda" + }, + { + "key": "0x7bba35e0753e7dabfd551772a8bc2de6f6b1526445da4bc8c45b6ef6e4849ba", + "value": "0x6865262d42ddfe81d94d96d58b740fdad4c776b897b9105d601e0f2f49ec9cf" + }, + { + "key": "0x2e4fe539bc41f3e09de75c784b3c4a1f0980d06e73c4bfdf94693bffd0496d7", + "value": "0x4246c98000600034009400020003a0121eac2000000100012021c000cff20" + }, + { + "key": "0x2e4fe539bc41f3e09de75c784b3c4a1f0980d06e73c4bfdf94693bffd0496d6", + "value": "0x1000a0000000029ae32dbf8000aea2d111802" + }, + { + "key": "0x725e6f57ee9c3d19b68c70301ce0676a6e097f570cfa6477977f82d4e26446", + "value": "0x200000000000000000000000000000000" + }, + { + "key": "0x7e1f2decbed1b5461a5facfab826c840b237ea95da91218ad46b0f9700ae2f9", + "value": "0x1000a000000003c3e816250000a1545c55803" + }, + { + "key": "0x209d136a0096a453b224863183318abcebff2bb73f99ab89cdc0284d8882129", + "value": "0x800000000000000000000000001337b20" + }, + { + "key": "0x296baa5ca00b84e54c158148d33e9b5cfc268f47c13c862884c850cdff54f79", + "value": "0x20000000000e1531b0000002188984001" + }, + { + "key": "0x7e1f2decbed1b5461a5facfab826c840b237ea95da91218ad46b0f9700ae2fb", + "value": "0xf700085002bc008100114002c00000190003bfdef0057a51b00e86847" + }, + { + "key": "0x7c253f90fee95f8daaee35cc3ac9e33ad2e0c14e6abc2af387815184aac1130", + "value": "0xb050001" + }, + { + "key": "0x5ae04be8b3227175e99f0c615ca72c885607b3968a11367b97b03b5f54aba71", + "value": "0x2e90edd000000ba43b74001000a00000000000000000000000000000000" + }, + { + "key": "0x57dc570c3213b04ecb319247eccd8ebc6da5b183e4216f410f2db4332d7398", + "value": "0x20000000000001a6400052010066cafe240200000000000039080005" + }, + { + "key": "0x4b7ca233c33750f95087e2e995a3a1ffb67cd4226a9f53f3da6d5a083e44ad8", + "value": "0x2000000000000050a00064010066cafe78020000000000002ca00005" + }, + { + "key": "0x355a0745e363e78755d697ce8bf50bfff3742b502f6f285c6d10570bbd77d03", + "value": "0x989d3c9c00001129323401000a000000002601e40d00000008c4916002" + }, + { + "key": "0x32bbf527da3357b20fcc7d2f16342376f282a074c4c5b2e8ee3fc16134e2d92", + "value": "0x4000e00108004c001d400da000005cd00002c850000000200000a2f" + }, + { + "key": "0x36d585e3780b66b06532e66d87674a5ebc764f931294464346a383c84cd5e89", + "value": "0x18e5f40053003d0003700204007d0000000e001ede6d000b3b880000bb80" + }, + { + "key": "0xbda979e8856502285c17143dea5583ed576f2fcdbb7fc111835dc611802788", + "value": "0x66f28b78066cafe78000278d000278d0000000000003d0900" + }, + { + "key": "0x78762d869fc650977b86df046e828378cf1a8c371dd9191423a2010bb586772", + "value": "0x1fb3c001e0019800120004c000500000027000000110002f462000bcec5" + }, + { + "key": "0x1360235a57130b4447e1ee6c63335ef751dad373378e28ed8c7e83acb9a26cd", + "value": "0x1b99991680019b2a0b70011c5de8011c5de800052" + }, + { + "key": "0x774bfe40a32895baa203160be01ac79241b5bd995a49e532d737248d00cd086", + "value": "0x66cae8df000000601" + }, + { + "key": "0x324e12b92c2101fbc3b75e957b3cdbc820570c5a9291a48f7475e514d0ba91f", + "value": "0x2000000000000390800052010066cafe780200000000000039090005" + }, + { + "key": "0x7e7a6ee8ff98d6ba66595b1b69986dbd6ccadceb00f58e9c955312d12a837d9", + "value": "0x4e2b" + }, + { + "key": "0x75b27a1e1e1056283e3e67709fb51893c6c609143a2e4e4fbaded5750b1dbde", + "value": "0x1000a0000000012d67a27ac0004c572a4b001" + }, + { + "key": "0x2ea5480116a37600a0b091eb7dd17ca030b3d6cb5fcedd712d55349948c6323", + "value": "0xc35000046003b40045000b000af0000000200030d40000a3931000002eb" + }, + { + "key": "0x5d0ac7357c4e03c9b7a65471ea4c38b9f87f47c7bcbfda36c2dbab57f840690", + "value": "0xb050001" + }, + { + "key": "0x669058f19243dd04258a9442b126ffa6d8683feeef1d2de639257e0e980fe82", + "value": "0xceb57b000000389fd9801000100001000000000000000000000000000" + }, + { + "key": "0x78b9366f5acc75a060bd6f12dde10425b4f9c3455ffdac47ec79a66f59727e", + "value": "0x1" + }, + { + "key": "0x3c03197adc6d7385a0d5dea5ad04fe78b0000c04c3aebae5d8a69b956b902df", + "value": "0x30001" + }, + { + "key": "0x5490895fc74554724e2b93261313598985f09e3ac7052371156f37c5bd27b2d", + "value": "0x4584d137c00012b4bc4281000a00000000283cede08c000c33a7e62809" + }, + { + "key": "0x3dd6db86c326e46ac98983dba866bf992385e0a134fd7bd34c2d1095156a5ac", + "value": "0x66ca8d91066c8b1f100013" + }, + { + "key": "0x558bb4f5318d8ffe1028b6b7ac061d371585bf3bc43f3306187c2691a46aca8", + "value": "0x21f4c" + }, + { + "key": "0x4362ff87301ad20360350fb970952fd2c74d412a9d1569466edea71048b981e", + "value": "0x10ccccb600019b2be31800e8972800e8972800012" + }, + { + "key": "0x6940b31007f59456ce702cbf369967bbb3cfb8776767713285e3e19b5f825eb", + "value": "0x20000000000004283000500000019b34e70c006ddd00000310001" + }, + { + "key": "0x324e12b92c2101fbc3b75e957b3cdbc820570c5a9291a48f7475e514d0ba920", + "value": "0x3c000ef0000000000000000000000140000000a" + }, + { + "key": "0x467addb09dcb6e0ba2d2d0d6aa2e7c36e8b0b53f93600b2d82cced0b44caf79", + "value": "0x1000a0000000015e6ed64780004cd9b28d803" + }, + { + "key": "0x38d4947d72fdf9281024323833d805fd82204f2150e941289cf9257ba0c9371", + "value": "0x100000000000000000000000000000000" + }, + { + "key": "0x3a51606ab47c8fa31668d74361cf4783dd450a77953a0d806be6d2d9cdda445", + "value": "0x100130000000059cecfd7e400030433da6801" + }, + { + "key": "0x32bbf527da3357b20fcc7d2f16342376f282a074c4c5b2e8ee3fc16134e2d88", + "value": "0x319b000110028800bc0020000b3000006210000000600000ba200004f46" + }, + { + "key": "0x53a49b93b21aeecdb95718fe8f01a9b2d07d5a134e0c1d99dcb2919a4fe867d", + "value": "0x4600114002c0000000000030d400005573000061a80" + }, + { + "key": "0x68c65d61a0972934b2738391f1d9d227d613f0fe0703881929f82175a52f227", + "value": "0x66f28b78066cafe78000278d000278d0000000000003d0900" + }, + { + "key": "0x36681d0eb8b85861beb8e98df9b11c80103ba5ab0f10cf6c9fe61398a4d1bcb", + "value": "0x1e780001" + }, + { + "key": "0x8962f3813726b0c1d9cd411fc605061372b9fb57f55c3b1ff2c0e54c4cd83e", + "value": "0x1dd603f5400000876d01a01000a0000000000df46ea8c000097041c4802" + }, + { + "key": "0x758791320bb0db2c17e572720c324f2c40c7df5ae85be25e5c446d0df620bc6", + "value": "0xb00000000000000000000000000000000" + }, + { + "key": "0x36d585e3780b66b06532e66d87674a5ebc764f931294464346a383c84cd5e86", + "value": "0xa42ca8003a000380031000c0002f000000010000148100002c6e000006d5" + }, + { + "key": "0x2279843e27c8274a9de85f5c4a3fc9affa7174772564893394a1f7f41e2f2ed", + "value": "0x6679263c00a0722e1" + }, + { + "key": "0xc89392e94cf9d4f475501a71def4bc4c7ad99eccd2e48b518cd8e89b2167db", + "value": "0x7000000000000000000000000008d02ef" + }, + { + "key": "0x31c74924a7eb5835896bd92f9493f2babc61dd1d8eca1b9b0979ead5abd04a5", + "value": "0x178004b00000000000000000027131b000118f8" + }, + { + "key": "0x467addb09dcb6e0ba2d2d0d6aa2e7c36e8b0b53f93600b2d82cced0b44caf7c", + "value": "0x506b30000d000d0002c001f4006500631b18000f5710000098bc000003e8" + }, + { + "key": "0x36d585e3780b66b06532e66d87674a5ebc764f931294464346a383c84cd5e83", + "value": "0x4ffb3632000023685a9c01000a0000000037c24742e00009b943c90808" + }, + { + "key": "0x7951c40b5768debd3c919d772b4ffefcdbaa82c42d619ae32e9282de86ae563", + "value": "0x66cc19ea066ca6b3800022" + }, + { + "key": "0x4b7ca233c33750f95087e2e995a3a1ffb67cd4226a9f53f3da6d5a083e44ad9", + "value": "0x7d00000000000000000000000000004570" + }, + { + "key": "0x700a5bcfb7a99c854ca14e084eb138678c0526d614bc2ba0698fecbd99c632f", + "value": "0x19b2c261800000012d2f1a9f8400010020000000000000d7400050017c00bb" + }, + { + "key": "0x289c72d0914f1c1d5e1afa4568fbcc49778385ce9f076bdb6f94667acd2378f", + "value": "0x20000000000001db400052010066cafe25010000000000004e270005" + }, + { + "key": "0x32149db0e88dfbde9640f68414f11a88f73de620be30ac0d0aefb4b0999153c", + "value": "0x1e780001" + }, + { + "key": "0x67dabb388f2e46c8ff3dafbd35af61c22e0152b30495fab0c392db1d51eac0c", + "value": "0x1c9c490780000b9c4fdd81000a0000000036312430c0000f1fb6a5480b" + }, + { + "key": "0x72caa276e96c3caa999ea434c946a85569de3681d30d1d6372821ea5be700ce", + "value": "0x13a00000c200004" + }, + { + "key": "0x12ed0a68687678217e8e212e851aaaf26f24b745382184bac5b8f83e2089d09", + "value": "0x66cafe7800000000000045ae" + }, + { + "key": "0x3a51606ab47c8fa31668d74361cf4783dd450a77953a0d806be6d2d9cdda446", + "value": "0x7001080002000000000052e5100012c9db00600026" + }, + { + "key": "0x6d9603a21973264b6e15c1fef329f5f6bbb72a389ad77ca8224a9b9caa2c7a5", + "value": "0x19b2c4a4c000000d4a0c49ba440001002000000000000083f0005002e000ab" + }, + { + "key": "0x2ea5480116a37600a0b091eb7dd17ca030b3d6cb5fcedd712d55349948c6321", + "value": "0x1b4b657000000d0dacc001000a000000001704b4ab040003d55f664804" + }, + { + "key": "0x25f9078e206fb340e5843c10d1ebf7c765bd74cba8878e19ff153fd6b4d3039", + "value": "0x1e780001" + }, + { + "key": "0xfa37f26dda1f61b002d13b34d9ee88b19649ea05698a703601a6e810d82fb1", + "value": "0x20058000000000000474000050000a3d5e00003066cb0a96066c5c886" + }, + { + "key": "0x2b65efd79b432d09ffa4e7e33be167cdf2e7ae04da21ba6d155690b97a6c51e", + "value": "0x66f28b78066cafe78000278d000278d0000000000003d0900" + }, + { + "key": "0x355a0745e363e78755d697ce8bf50bfff3742b502f6f285c6d10570bbd77d05", + "value": "0xf000000000000000000000000000000014" + }, + { + "key": "0x32bbf527da3357b20fcc7d2f16342376f282a074c4c5b2e8ee3fc16134e2d78", + "value": "0x77919cfb800011b47da081000a0000000036ceacf938000c7242a1e81b" + }, + { + "key": "0x18af50fb8de234143c21b2847e2a30f3f94bf59ce1b2fd92ecf00938bc217a", + "value": "0xe80006" + }, + { + "key": "0x287778d4f96a6f2c9cb24fbdb8dc7a7259aacb1cc6c15c72fc7a9c076eb1657", + "value": "0x100000000000000000000000000000000" + }, + { + "key": "0x77ffd06aaa5fd9764988d3758fec52d24113739687a4eae44e4b01dfd265731", + "value": "0x66f28b78066cafe78000278d000278d0000000000003d0900" + }, + { + "key": "0x2c3c6a230c41d709b4cc4a02ca35f5638899aa648fd4398472f4a264f645ff4", + "value": "0x1" + }, + { + "key": "0x3346a992e71bf4637479542caa80c84ff6f93c4ec9145ccaba8aea7c60f853d", + "value": "0x76961fb000002bf55b6001000a0000000018763b1a8000089769510002" + }, + { + "key": "0x542fc72ac9f05e532c383236d981c5013d761b8aaccbe81210d801e1e2fc95c", + "value": "0x200000000000009ca00054010066cafe78020000000000003a5b0005" + }, + { + "key": "0x411627e1915bb03c496c34e603229c56a5afc7754f95301abb43207b8c52760", + "value": "0x1b99991680019b2c2a8c014b0aa8014b0aa800051" + }, + { + "key": "0x5a4e469a287e8e25ea79b6f79b743a8e565d6883fa4fb6479abff658c7cc12d", + "value": "0x20000000000001a6500054010066caffc50200000000000039080005" + }, + { + "key": "0x209d136a0096a453b224863183318abcebff2bb73f99ab89cdc0284d8882128", + "value": "0x8aa511dc00000f9cf7a201000a0000000029a9bee6000004b118f50001" + }, + { + "key": "0x5c638dc349821a98143b09ea8e13fa61160aa2675e5bf1fba34b00d742fd7d3", + "value": "0x1b99991680019b2c64ac01439e7c01439e7c00051" + }, + { + "key": "0x24b3f7d078f69daafe0280c6a22b8fb9afe1506cc1aad6b0680c2b453b261de", + "value": "0x2183f82b000000046c33c01000a00000000086eb95020000013db502002" + }, + { + "key": "0x3ac933d3d5d95a5d79a34f37614f1d8b4ed20953276fffcd5c271f92da478b6", + "value": "0x1" + }, + { + "key": "0x24da69447a55d8387985e68d4e0955a6ad0cad2f042be2fedf46d89eabb16ba", + "value": "0x1d613c7ff80000dcd242181000a00000000078a14478c000334af005015" + }, + { + "key": "0x2530ff7c2855b1f4f65780cad90735547c3d523e9ead0f505905fa9bb3c687e", + "value": "0x66cb1b88010010002" + }, + { + "key": "0x5596821813ab08dab07deb01fc42ee963730be2fda8a84ee0e51da4b841d911", + "value": "0x4e2b0005" + }, + { + "key": "0x36d585e3780b66b06532e66d87674a5ebc764f931294464346a383c84cd5e88", + "value": "0x80075001c00068001640050000176160000002400136770000d28c4" + }, + { + "key": "0x587d6e049e51c008d4abd7c286293eecf9c5dd87dca1154380adb28175cd173", + "value": "0x66cb49a2010010004" + }, + { + "key": "0x5f987b5bd61eedbdaf86f097fe96477854fabfb304007bd3b1f0eeebaddefb2", + "value": "0x66cafe78010010002" + }, + { + "key": "0x1606a2e301d8a5ce47d6d9f4eb76755a9fc505ecffe331ab54329d0e08a66d7", + "value": "0x66f28b78066cafe78000278d000278d0000000000003d0900" + }, + { + "key": "0x18ea94da0a518999d3008f962858802d61d5fbdce52e2e58e43456b54c3a22", + "value": "0x1c232f490440175a52936981000a00000000000000000000000000000000" + }, + { + "key": "0xf5a95e32a243040ea0bfff90b664923bff0d02fa4aea48d055743558d514e", + "value": "0x1001300000000c2ff9573c00003aa5689e001" + }, + { + "key": "0x6efee867044d1a964802bae0b5a6bc3555d10af72efbb01b22567bf89e9b9f1", + "value": "0x60001c0017000000000098b1bf005b442b0251f1ed" + }, + { + "key": "0x1986e27ae2f26a0a5581cb6849853a4bb68a622cf2d5298909fbd5ec0f1572", + "value": "0x19b2c21180000004a9a9fbe74400010020000000000000945000500178004e" + }, + { + "key": "0x6efee867044d1a964802bae0b5a6bc3555d10af72efbb01b22567bf89e9b9f0", + "value": "0x385f780e00001198342c01000a000000002e2f3b5e44000cc9119fd801" + }, + { + "key": "0x8e1930f9083d55418639f863eba850bf7857f6e288b3690123df9d228473eb", + "value": "0x13ce0001" + }, + { + "key": "0x9fa23edb72af6b6b4a63918d4e2d9c2f4e48c06fb88d5b535c686d4700ecdc", + "value": "0x1" + }, + { + "key": "0x398513b845abd5e635c104488f1657a5e4974c187484f0414d0d9d0f21358f1", + "value": "0x1b99991680019b2a7fb0013a036c013a036c00052" + }, + { + "key": "0x109ac17659ea4f4eadd984051956a44790c2260e0adf5154750112e5380fddc", + "value": "0x16287470000003765231801000a0000000023db196a00000580db9e2803" + }, + { + "key": "0x41ebed38fa4c8e4a32177003c5916c307a74e758de1f67d22e40b190401e5c1", + "value": "0xed00000000000000000000000000000002" + }, + { + "key": "0x70dfbbdb5acd7c5514100f9d0250e1eaf9a546e77d9b879f30ca3ec8bb37b1e", + "value": "0x100000000000000000000000000000000" + }, + { + "key": "0x3f81031df198fc214ceb09f9bca12c8f9d6efb4365348f85da7b6d226d2fb0f", + "value": "0x200000000000045bb00054010066caff39010000000000004e2b0005" + }, + { + "key": "0x5e140e96b4c1de5420a6a1619d9446e4e546bc1c6870ade01a7eed1eaa3b544", + "value": "0x1d5fff5890019aa5ed8c007e960c00f59acc00033" + }, + { + "key": "0x23e1a382361f986046aee7c832d54d0f0c2fa9241604119f60116d89324cea7", + "value": "0x100000000000000000000000000000000" + }, + { + "key": "0x109ac17659ea4f4eadd984051956a44790c2260e0adf5154750112e5380fddf", + "value": "0xa000000000000000000000000011dc44d" + }, + { + "key": "0x467addb09dcb6e0ba2d2d0d6aa2e7c36e8b0b53f93600b2d82cced0b44caf7a", + "value": "0x60b5c00046001a00045003b400810000000e007c84f600000013000b3459" + }, + { + "key": "0x478222d5abddf71a9eadc2ec4141f111efde845b7cdf153d8e3a8337dbe3ee9", + "value": "0x4000000000000000000000000000000000" + }, + { + "key": "0xa5988aa9091c37fdbfc6f878eb5883b3ba2974acd69662885ae82d3e62efcc", + "value": "0x10030001" + }, + { + "key": "0x2b6d297ccf9ec87414b7e2da40c25cfa9960382bf2f63e1fe2b3adf4dc4d37d", + "value": "0x4720006" + }, + { + "key": "0x28c567167dbea741a244cfa20a72e94bfc44048a72e56446d78ad9bc3785826", + "value": "0x20000000000000000000000000022ab44" + }, + { + "key": "0x67c6f02acdf00b4eeaf8c4876f471c8ad5939aff219ea7abd17190e1660a459", + "value": "0xf0003bc00a600000000000000050000000a00000001" + }, + { + "key": "0x28c567167dbea741a244cfa20a72e94bfc44048a72e56446d78ad9bc3785825", + "value": "0x2000000000000452900054010066cafe780200000000000018b30005" + }, + { + "key": "0x5490895fc74554724e2b93261313598985f09e3ac7052371156f37c5bd27b36", + "value": "0x17000000000000000000000000000310f3" + }, + { + "key": "0x18e3c5e0917e5fe3462ba59a3c8463bfcfcc40339423e34245461deff2945d8", + "value": "0x8fae3a000000006ddd0010012000010000044c8a480000011e1a30001" + }, + { + "key": "0x18512debbec02d860b731e06b1cd236a5f03536054705f9cb8cef2a421b15e8", + "value": "0x190cf058ac0003d7a864181000a0000000017ac714db40002f4bf14d00d" + }, + { + "key": "0x29985959af4b6229c41a78781f6eedc77e31e8045ab80d3186e0661bb07ba90", + "value": "0x91bd920000000f97b3001000200001000000000000000000000000000" + }, + { + "key": "0x7bba35e0753e7dabfd551772a8bc2de6f6b1526445da4bc8c45b6ef6e4849bc", + "value": "0x66b87e02066aceb40" + }, + { + "key": "0x13025d6292f37242c746c77fb32e9ec6d3af655a93ceb53439563e01a2d32cf", + "value": "0xf400000000000000000000000000000004" + }, + { + "key": "0x60a4eabf7727feba7da816dbff220100a5b00a2ab37d56af8f08428faaeeb9", + "value": "0x7d00000000000000000000000000000bb8" + }, + { + "key": "0x13025d6292f37242c746c77fb32e9ec6d3af655a93ceb53439563e01a2d32cd", + "value": "0x100030000000000fdad2a68000041dcfa2802" + }, + { + "key": "0x5dd4499737629107a81202d83ad6a1b2688037bb186aca75793de18bb37c629", + "value": "0x100000000000000000000000001320f90" + }, + { + "key": "0x31c74924a7eb5835896bd92f9493f2babc61dd1d8eca1b9b0979ead5abd04a3", + "value": "0x100110000000010de1db73400024b49005002" + }, + { + "key": "0x712338e464e7b38bbe19943cd358592c1944a17a7735ea591ff46b2ae6616f2", + "value": "0xb050001" + }, + { + "key": "0x1dea0259f37c33838c758522548d60c03aa94c90d8ed7f355b570bb383a4c45", + "value": "0x1" + }, + { + "key": "0xf5a95e32a243040ea0bfff90b664923bff0d02fa4aea48d055743558d514f", + "value": "0xaa00000000000000000000000000f036ec" + }, + { + "key": "0x6d31370ccbde5b5bb5552c58e0e40e30c09750fb64a3514bd5679ade8c163f7", + "value": "0xaa000000000000000000000000000063ad" + }, + { + "key": "0x3127190ba811d9403619b0585a205faa9e6110dcf756d91b9e86a768765127", + "value": "0x36b9a89c0000100bf4b81000a00000000317ff41000000be2b7843019" + }, + { + "key": "0xc89392e94cf9d4f475501a71def4bc4c7ad99eccd2e48b518cd8e89b2167da", + "value": "0x2000000000000452900054010066cafe7802000000000000434d0005" + }, + { + "key": "0x7bba35e0753e7dabfd551772a8bc2de6f6b1526445da4bc8c45b6ef6e4849bb", + "value": "0x76d7000000076d60000001db480000007317" + }, + { + "key": "0x355a0745e363e78755d697ce8bf50bfff3742b502f6f285c6d10570bbd77d04", + "value": "0x2800ef0029800ed003cc009600000001000000030000001200000007" + }, + { + "key": "0x63d90699305808098127eaccca26556414dd6a25451a868e4463ffb95f62795", + "value": "0xb050001" + }, + { + "key": "0x5a4e469a287e8e25ea79b6f79b743a8e565d6883fa4fb6479abff658c7cc12e", + "value": "0x9400000000000000000000000000000004" + }, + { + "key": "0x67dabb388f2e46c8ff3dafbd35af61c22e0152b30495fab0c392db1d51eac17", + "value": "0x1700000000000000000000000000152710" + }, + { + "key": "0x58eb485b99cfd21109d5257ec523d86789065aec1c2a502d51f723e7e45c7de", + "value": "0xa3d5f2" + }, + { + "key": "0x32faca2a1c54a90134100d4b09a5ae6489252248263c29b1ff4e19627fbe90f", + "value": "0x2000a00000000000003c700050000a3d5e00003066cb0211066c9df85" + }, + { + "key": "0x450c927fece51f746d82c03791803bbeee6f08bfcddfa9b0e8848c915344556", + "value": "0x8100000000000000000000000000003b0b" + }, + { + "key": "0x383222921c77fa8e1834b13aa1c8fc989d502d4cfcc70574f7240854538541f", + "value": "0x2001500000000000046cc00050000a3d5e00003066cb00fc066c2e9de" + }, + { + "key": "0x7113696d7bd078a873db5e6629d0676c2d35a6e7457fecf579913c8adc30315", + "value": "0x1e780001" + }, + { + "key": "0x25c18455014472dbd0d98d4e9ad4ba699ddde0cdb3828330036fa999614f0f9", + "value": "0x66cb0122010010002" + }, + { + "key": "0x67dabb388f2e46c8ff3dafbd35af61c22e0152b30495fab0c392db1d51eac0e", + "value": "0x2038002f0007c002200090006000072a3a000c6a7700062253000027a4" + }, + { + "key": "0xe6cc676653df56b9f2ae5a5ac8e2a75ed94a9adcadb2f21875ae1d2804b757", + "value": "0x160000000" + }, + { + "key": "0x78762d869fc650977b86df046e828378cf1a8c371dd9191423a2010bb586777", + "value": "0x5bd980024000240003002f800530005e467000068360038cf0800038032" + }, + { + "key": "0x41ebed38fa4c8e4a32177003c5916c307a74e758de1f67d22e40b190401e5c0", + "value": "0x418800054010066cb680d010000000000004e290005" + }, + { + "key": "0x2e8d63ee1449dad1a3806a89bb750adfa6945d0a7c149bc81b37f1fb5aebd7", + "value": "0x1000a00000000000000000000000000000000" + }, + { + "key": "0x744ebe20bdffcfeccacfae2ef1d0bb8d5bc51c0287f99fd323b705cadea4d60", + "value": "0x310000000680004" + }, + { + "key": "0x12ec2b17c9d9da39bedbe69241e2cd976da49b134b9ce1930c17ad43d91f9c0", + "value": "0x40009000dc002a00104000b000a3a3e00017a6400063b9d0003009f" + } + ] + }, + { + "address": "0x3522cb79d93f90c45a56d7239c693d9ae77a2b7199996b6824e628ad0a3aa47", + "storage_entries": [] + }, + { + "address": "0x5763f02381e89c6894ffea078d1cf9e58da0ead33d5b52aa608acc04063053", + "storage_entries": [ + { + "key": "0x21ac58f1f77317f0c83b1207cfb427a93d8fa4adc7ca853f6b52114dc7b6bfc", + "value": "0xa068dce2c79556abb" + }, + { + "key": "0xa156ef93d34cf9476b99e38b50009fbd2e3ac6caa4419b50f1230f6234e70b", + "value": "0x1fad01aa84262d984" + } + ] + }, + { + "address": "0x3c6d7570b38ae69cae141677508aa988834263d880618c420884791e6e60443", + "storage_entries": [ + { + "key": "0x1d22f147b65dc66e34c48098e55d1e7246715700467b6a75d78cb214484f228", + "value": "0xa56d35811e4e0d7b30" + }, + { + "key": "0x1d22f147b65dc66e34c48098e55d1e7246715700467b6a75d78cb214484f227", + "value": "0xa56d35811e4e0d7b30" + }, + { + "key": "0x202e4a016683c36bf791aa7b38a35df6ace4ef8e1d45826ff940a7328ca5e5", + "value": "0xa56d35811e4e0d7b30" + }, + { + "key": "0x202e4a016683c36bf791aa7b38a35df6ace4ef8e1d45826ff940a7328ca5e4", + "value": "0xa56d35811e4e0d7b30" + }, + { + "key": "0x37d9f8cddc6f064ba72d0e3c1e53eb67867dd8506fa4f5d61c86189caca8ee5", + "value": "0x3d33f8dc7772664b527" + }, + { + "key": "0x36b2e05b5b7e59f8304ca6be11e95a94469d52d0be887de68db61dfb221019b", + "value": "0xa56d35811e4e0d7b30" + } + ] + }, + { + "address": "0x67a34ff63ec38d0ccb2817c6d3f01e8b0c4792c77845feb43571092dcf5ebb5", + "storage_entries": [ + { + "key": "0x75c33e533ab03aaa9288fa20221fcef62b22a92b23f3a551b4851e724355876", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x236ba454d892dbd130074" + } + ] + }, + { + "address": "0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d", + "storage_entries": [ + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x37bbdaebe5fbd77b42e200" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0xdd9fd6078501e7bb50b2" + }, + { + "key": "0x4c6892b386996ee4efdd7cda583b6f8da4d9e4d552eab4bd7876efa302f7082", + "value": "0x0" + }, + { + "key": "0x110d72e967a25e84433e44d5dc11f3ac9ebc2b1cdc33190a97d01ce2e3798cc", + "value": "0x107730d31065fa7c03" + }, + { + "key": "0x31841f3378e678bfca9f3a963e04a7f4dbc1f931424be6de81a72ca10d2d589", + "value": "0xf84e7278271408701c0" + }, + { + "key": "0x17c17f5188828726dcf109c0a7617a21e8dcd15e669b8f2b3800142181e6ce5", + "value": "0xfbd1ce8354eda94a29" + }, + { + "key": "0x5f6b6fc6348470674807164ece27f9f698117509138b41bbd524edb641810be", + "value": "0x3bbe0251b8e7fc9d" + }, + { + "key": "0x3d8c8038259764ba977d6dd5c76e0b151d096637b2dc805ed798380acfe19c5", + "value": "0x8d62ae62e733b490275" + }, + { + "key": "0x168e06589ed1429d749afaa1281b5f9e74a4cc19fcf352103f8fa7bd582a3d4", + "value": "0x78beb285fb936031d21" + }, + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x4e2385eeff0a132fba" + }, + { + "key": "0x2b1d73cf458548b1c7aec5110aea8f7f727ac106fd7cdfb208dfce63b4d2a35", + "value": "0x37cbe379e152ff64ae52b2" + }, + { + "key": "0x29fc908a4ccedab95f76ae308f0458bc6ab44da1694cb2554539388a0ace838", + "value": "0x219199cb93003050dfc" + }, + { + "key": "0x7c4b9d7588247405681dcbf926060015500cf5ec925b1c56728a2b712ede8d6", + "value": "0x95505ee6ecb65ecf219" + }, + { + "key": "0x75c33e533ab03aaa9288fa20221fcef62b22a92b23f3a551b4851e724355876", + "value": "0x0" + }, + { + "key": "0x99ff64f8cd4aa3301dec7b19f4052cd68a1fb5690f6e017807e97a46d5e08e", + "value": "0x6a3de3ab492cd66a808fe" + }, + { + "key": "0x3aeff2c4fa75aace8f3974aa291ed288c2946cb2c89d3d45f43ec2e3d341266", + "value": "0x5cc6426c3671bbf0cdc93" + }, + { + "key": "0x4a08fef643acd846b929d92f3d70aef67565de947e17a14b5464bd07f3b8146", + "value": "0x372e85f06f12f072" + }, + { + "key": "0x7d40ebec19d32e89de914ddb9aa326584327c9042e2078715b7284bb00c5620", + "value": "0xc3fc185a0789359b283" + }, + { + "key": "0x5bcb9d5ba4d5512088b3877732de73f8f5cfb9d5d3393fd7b577788cc161658", + "value": "0x32cfcad47a2ce71d" + }, + { + "key": "0x2188bc0258a2a3ea1f3466dbaa59f580d93db503170423f56f00df6a4dbeb78", + "value": "0x5d2c8f3ec9486ebce" + }, + { + "key": "0x648bb9fc3b76cfedfd3febd4f0342560ab4b1f0ad5712a35aaa8dae022b62f", + "value": "0x56856b308fdb80e51e1" + }, + { + "key": "0x60f2f30403ee3742645670b8bd536229583464fc2653235bcbf6264a613cc4b", + "value": "0x4e2b3c15df0511c1d" + }, + { + "key": "0x369ae40a701707e9ae171444b0a92f8356e74b20807605ec987009b3b52a21b", + "value": "0x3da1f4453ae9f59e4" + }, + { + "key": "0x54a88fe105dc54fb4ce313b51e122e05b168d57447da6fccaef8412ea3b1cf2", + "value": "0x7303c26a0b139800" + }, + { + "key": "0x75b6e38a278b3400efa10429c723213969db9ad441d46cbec8c85f6fad729f", + "value": "0x1551932d1dee4972cc56" + }, + { + "key": "0x4f45ffcac519079061d4f01814f530203fd683a632ea2316ed277fa3a684fa3", + "value": "0x102ae5f090073e005" + }, + { + "key": "0x948a4d75e3c704c08e38a1e15e508ac7af25023acd1be059bca9234455dbbf", + "value": "0x870f1179813ec9da92c" + }, + { + "key": "0x3d7ccfb9e9c5944c7a3226921716da0d42239892dbde7b12c1e5597d31c4124", + "value": "0x42b47e7cb9ffcfc270ef" + }, + { + "key": "0x657c061327a30a83117b17d632a1d7b010a8d12b4844d0eff07f355151f2dae", + "value": "0x67892d884f955d88980" + }, + { + "key": "0x4686410391502625d91cc748b15c74d5bdf612948c934964a0dea25c305d0c1", + "value": "0xcc4923ff54b28677" + }, + { + "key": "0x3e94d6228474b08237aa2b0a5884d6a30d46838fb5f73995385a252dcb1ea5e", + "value": "0xb2244b5c2d302be" + }, + { + "key": "0x5496768776e3db30053404f18067d81a6e06f5a2b0de326e21298fd9d569a9a", + "value": "0x1e4ab73ba1def61a220" + }, + { + "key": "0x2be41ea00b3e998afcaecaeff43baa5459a4184c3bdcc9225d5fe8d1cac1acd", + "value": "0xe445780a190ea56" + }, + { + "key": "0x6e0201902c241f39dc7b65304127df3f56af76cd87279f3bcfeae6255bf0c30", + "value": "0x1d9a5a0293469d92c9e5" + }, + { + "key": "0x74ee32f30f6964431204823e70213278c5ca5396df9976fd7a27dd0351cf81c", + "value": "0x673a4b4ba2e7a62f8" + }, + { + "key": "0x1136e784a7b7e1cafd28236621374d83c739194f0d9be4644cf00e73f54bc8e", + "value": "0x1a520414649cec" + }, + { + "key": "0x516db81946c7dff80bd06c15b3e2b6b10d52e7dfc974b20bb69ae96b82db906", + "value": "0x27beb83d687ff3e9" + }, + { + "key": "0x74f67e3d389a7bab81ccf6d7954f3e8626b3e4f0cbe5221231d14d40f7f6b42", + "value": "0xd15ef687e7850a772" + }, + { + "key": "0x6ccb87f4262ebc65951191c9b2dbf434f011a08adabc31b447565cdb9513fa6", + "value": "0xf2fb1e2bd9a8e5c" + }, + { + "key": "0x695f9adffb7a633d221b46473a8a58939cfa93746b8d7aa2143e3f3d199857e", + "value": "0x3026f14e87d10c0b2497" + }, + { + "key": "0x1f9e8c510beddab3043a01d39114f0a7099e41917475fb3f7036b13298e4372", + "value": "0x12cd1422f1f84112b0" + }, + { + "key": "0x5d03c72383f0cde9567310bc47892edc6ebbf757250dd84686cdd292f5b6f2f", + "value": "0x3635cecb3c0232670" + }, + { + "key": "0x23a45c61dd671cbbcc92adee989996362d539ae300abee69ef0f37bf2a344d8", + "value": "0x414e00a3ff797d27be" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x7fb9ff5906d2750ba6293" + }, + { + "key": "0x7aad5dfb2918b0001f7c5d8f2858b2f47c86e3fa1139fbeb6931fb9a3800b6", + "value": "0x29dea91dad6da34a4cd0a" + }, + { + "key": "0x7354567862f4d3e6b5564d2e2a12ea3643daaa9dfe1d9ee1290311438242e10", + "value": "0x11ac2e4c354140feed" + }, + { + "key": "0x7d900d2bd2efd90dcae19cb6d26e0a129ce62923555bdfca2a2673c70319608", + "value": "0x8585081138015a6897" + }, + { + "key": "0x36daeb121801f6ef0e6da8709cf053ce50ed601cc5673bd3151d84b2dca5ae7", + "value": "0x0" + }, + { + "key": "0x16a7ec439faedc60e083203c72e0bc90483c23b317be16f192267df83434277", + "value": "0x73452c346a262af87" + }, + { + "key": "0x129226399a3e8e88b4c9f04e61229c79b33bcd6e6204fce73b383cf5c93fc33", + "value": "0x33e251cb23608eeb19" + }, + { + "key": "0x4aaa724a3d1989870308041396449595317702e4c29d0e9dff0d5de47c79683", + "value": "0x23af4f9a69fe8cba6b" + }, + { + "key": "0x19f9a132914af6550aa94493058b0a330f5ab690baf1db4a282240123fe0ae9", + "value": "0xcc16e4222139b0de1" + }, + { + "key": "0x3811beed927ad7b96ec1c7c51828f51d7bd7a42c3d6aa922d854def8561ac3b", + "value": "0x1c324effe45a1d95f1" + }, + { + "key": "0x6d5601e297816cf6968f20bca40baccba50e4ff7fb140bd11da1868eeef8dfb", + "value": "0x1e74755981e011d192" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0xa38ea51de2776d1a69" + }, + { + "key": "0x1309f93503e67115c9f11ab4d051b7d41919dc0d6635e1bdc3ebc88b9451806", + "value": "0x1d9c851b90f8d9b64" + }, + { + "key": "0x6da2d3bc7a56461ba6fe057fea3a7371ee83c837dd887093b66c251df20f0d9", + "value": "0x39b5f3b205bc69c303" + }, + { + "key": "0x6085544b61ac5e4e14df3284f9c6cca57f6720d419c01402c059e37ea31e45", + "value": "0x1045cd7563a9d4b8de51" + }, + { + "key": "0x21fc100eae75eb3022697744ba0d172ecd86a4ab12bf6db60777cdf452ad849", + "value": "0x16ad5b2fa549680000" + }, + { + "key": "0x76b53dca196d89bfb427adde12f7e4551b42a542da362051c502e141a6b9ae3", + "value": "0x0" + } + ] + }, + { + "address": "0x5e660516ba60c3bab5498ca7f5ddfe22b59bc94bff695015f5cb010eb5df2d5", + "storage_entries": [] + }, + { + "address": "0x45725428918c740312c1c075a3ea937046673b10b9a106761929a6624fcc2b0", + "storage_entries": [] + }, + { + "address": "0x53c9815155d16431b6cf8f4dd38e2aa157e211891f9e5854fd8580494e8a820", + "storage_entries": [ + { + "key": "0x32aec9ee121fa1ab1cfd839c2ac7df4287da31a72745aa32344e5e4de51bd38", + "value": "0x66cafe78" + }, + { + "key": "0x32aec9ee121fa1ab1cfd839c2ac7df4287da31a72745aa32344e5e4de51bd35", + "value": "0x5cc2ad664ec" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x35a604" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x2e34" + }, + { + "key": "0x32aec9ee121fa1ab1cfd839c2ac7df4287da31a72745aa32344e5e4de51bd36", + "value": "0xa3d5e" + }, + { + "key": "0x32aec9ee121fa1ab1cfd839c2ac7df4287da31a72745aa32344e5e4de51bd37", + "value": "0x66cafe8f" + } + ] + }, + { + "address": "0x69a7818562b608ce8c5d0039e7f6d1c6ee55f36978f633b151858d85c022d2f", + "storage_entries": [] + }, + { + "address": "0x7b696af58c967c1b14c9dde0ace001720635a660a8e90c565ea459345318b30", + "storage_entries": [ + { + "key": "0x2a9f6940e96680af2fe721eb59341cde71d9b7ae61dc834d205d6c59360268e", + "value": "0xa9d34" + }, + { + "key": "0x25a273c319cd3f930ed9ff159a3a0146d6bc8ac225e36a91de5c19dfeb82005", + "value": "0xe90d09b07aaa8e82ae73c6ed38f8cfc23a8e95701d36167fa97b784140c8c" + }, + { + "key": "0x231d1b392107b6f87597982816e784ee9bb0bf4cc94c1da87552fad6918882b", + "value": "0x1" + } + ] + }, + { + "address": "0x201bed466ee86ed71f91104fe477d4ad25b817f734c55ba3b2ecf08eca75a51", + "storage_entries": [ + { + "key": "0x335e94da1c9e89c7317f3eee90db12cd50c83b6d59d0be903edd62ef3b0eef4", + "value": "0x80001400800005000000000d00109000" + } + ] + }, + { + "address": "0x6e05b85d84a254faa07938b867b76aca1f1d95ebeb6bb44894c1d1912ec3180", + "storage_entries": [ + { + "key": "0xc5e53830927ac5ed78b9fc96dbfbaad93c13024249b91f8633ef407227656f", + "value": "0x762efe5ed948e2800" + } + ] + }, + { + "address": "0x241b9c4ce12c06f49fee2ec7c16337386fa5185168f538a7631aacecdf3df74", + "storage_entries": [ + { + "key": "0x52549568349cb64d5f4909bba20db479e8d9331f00b8640eac05706801dacbb", + "value": "0x7" + }, + { + "key": "0x6843daaed3889250ac055ef0265af2644277f5b8d248bac96e0435c8bc6f32", + "value": "0x8d5b" + }, + { + "key": "0x514b78f7a93d483cfb693e35d73e7b6470e2cd87deea4592f66f7e6fb30d598", + "value": "0x72884c68f836aa34fbe21e83bb22d76e4a050f5196073c6b3df50b902f9ad6c" + } + ] + }, + { + "address": "0x3271c85b8da8969a14c295278c5587015377e20867d57abe2c700ee62f1daa5", + "storage_entries": [] + }, + { + "address": "0x2545b2e5d519fc230e9cd781046d3a64e092114f07e44771e0d719d148725ef", + "storage_entries": [ + { + "key": "0x68548110ccb8365e37146aa1d2036d945025dd27c72f6dbe101b12eee54a5cc", + "value": "0x65fc57af1ba805d179e100000000000203d4562e2b57310be34e" + }, + { + "key": "0x68548110ccb8365e37146aa1d2036d945025dd27c72f6dbe101b12eee54a5ce", + "value": "0x98ec0c00de6f56f6a6275f066cafe78" + }, + { + "key": "0x1ad0faa9eeb78029029ec955737b2a89d359675997672c98d2dbe7f42d6537", + "value": "0x1e950459d639772d59daa" + }, + { + "key": "0x68548110ccb8365e37146aa1d2036d945025dd27c72f6dbe101b12eee54a5cd", + "value": "0x6145f0000000000000000000001c78239167e" + } + ] + }, + { + "address": "0x54e2640fe5633aa21d431405f8539a72fcfd85d968de02c3e65478c93f8045f", + "storage_entries": [] + }, + { + "address": "0x655e00e38323a46f37656bbb8d571ea53f7a9352fddcfe83cde2ecae66a1e4", + "storage_entries": [] + }, + { + "address": "0x72cc9028da5b1b916d5344168d5b37ecce8c81c8b4881384443fb488b4c22f0", + "storage_entries": [] + }, + { + "address": "0x4ee30db0ac6ae7c812544c135f43c507739c84538c54b3e1e9dfd1b3b5956de", + "storage_entries": [] + }, + { + "address": "0x7ac27ad2c6bdeb2ccc3d4afb26c87f58439a37ec49b7b0aec8f7ac8e572902f", + "storage_entries": [ + { + "key": "0x584f38f5154e9b8a6c40203ea644ba5275c501456ff7265ae17aa662d495c7b", + "value": "0x7b912902af4609c7" + } + ] + }, + { + "address": "0x26c5994c2462770bbf940552c5824fb0e0920e2a8a5ce1180042da1b3e489db", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x31b1eff22283b10e601be" + }, + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x2e070b92c202504c1a1" + } + ] + }, + { + "address": "0x46f4c92ae83fc3b974dc542c199ac18665980ca56b302938131417b259736e1", + "storage_entries": [] + }, + { + "address": "0xc318445d5a5096e2ad086452d5c97f65a9d28cafe343345e0fa70da0841295", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x17122be478" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x1c04854bc8" + } + ] + }, + { + "address": "0x469b656239972a2501f2f1cd71bf4e844d64b7cae6773aa84c702327c476e5b", + "storage_entries": [ + { + "key": "0xec04b7b7cb453eeff7ef5475a71ef489f6cfc86b3566115cad1301aee3d3a6", + "value": "0xa56d35811e4e0d7b30" + } + ] + }, + { + "address": "0x3620d1fd141578ab27fa1d0d33f51658e50d08af34792422c95035929a8e80b", + "storage_entries": [] + }, + { + "address": "0x7161fb852fd41ba5edae69c5a34065fee060dccd90a7c7a6ebf9a3b5e24168d", + "storage_entries": [] + }, + { + "address": "0x72c0be3a42c614837c7bc8e0869bbd7238e5c03022cd678e52f46c71e99c1d4", + "storage_entries": [] + }, + { + "address": "0x12ef243d0ba3d846288079dfaabdd69a61cb80911f9f2ab0d5cc6e1353d3274", + "storage_entries": [] + }, + { + "address": "0x1", + "storage_entries": [ + { + "key": "0xa3d54", + "value": "0x3383936333b00e773403bdc5cc145852b326960a10b3f4e82f04b44d3679630" + } + ] + } + ], + "deprecated_declared_classes": [], + "declared_classes": [], + "deployed_contracts": [ + { + "address": "0xdee3cb1be6b4fd9a855f7c02614ed9852caa1ae1865a0d810fa04d6b5c92b3", + "class_hash": "0x816dd0297efc55dc1e7559020a3a825e81ef734b558f03c83325d4da7e6253" + } + ], + "replaced_classes": [ + { + "contract_address": "0x2a4117530d52d7a70406eb608b86f3874e50a6972126cbbf92e4257315cafd4", + "class_hash": "0x36078334509b514626504edc9fb252328d1a240e4e948bef8d0c08dff45927f" + }, + { + "contract_address": "0x6a86a506ecf3e42b516754f94aad13f726cc6470008ef79a7dde024ce5df52f", + "class_hash": "0x36078334509b514626504edc9fb252328d1a240e4e948bef8d0c08dff45927f" + } + ], + "nonces": [ + { + "contract_address": "0x461682cc22e417a1fdaeeebf75171d20ea9ee3192ef2994241ec738a9011ec7", + "nonce": "0x4d" + }, + { + "contract_address": "0x4b0a18b01c7816f86ae1a33df53e84572c0c79107b967ce2e7bf4a8b641d553", + "nonce": "0x3f" + }, + { + "contract_address": "0x42bd58d8bf6b3872365767868b3f1f9fbc183c23f10566006cd84ce234265b8", + "nonce": "0x429" + }, + { + "contract_address": "0x15a288e90db4951762d0c156f48b7efa2ffe5a75bd12f55d8e6a38fbdddfc0f", + "nonce": "0x5f56" + }, + { + "contract_address": "0x6f1bd7222f6aad3504c09658f224e66889b33d3907638b76099391cd1448ebf", + "nonce": "0xb1c" + }, + { + "contract_address": "0x1c3384a988b041806b31b4d261e845be147165e223f81d89199e4c6bc6d4cb1", + "nonce": "0x426" + }, + { + "contract_address": "0x4f5447253a34ad18d8318f724272523285aedaff0f906f68b3e7ba45502f2c5", + "nonce": "0x433" + }, + { + "contract_address": "0x780f5ab2151d7c46a08a87c445a1012fa376a9c0e1df22e949d3d32740710f", + "nonce": "0xf1b" + }, + { + "contract_address": "0x1c4776dc67cd32ebbddb9699f487b4410194ada82fcffbbdf214dc23e9553ca", + "nonce": "0xc" + }, + { + "contract_address": "0x76c52ed46c85f6662b1bee59b4c4965c4223c3f32aa5b2692b1e06ff566e1b0", + "nonce": "0x5a0" + }, + { + "contract_address": "0x7dffbf18722b28975702273557a90e84b649808209594d2bf1da3c633b12438", + "nonce": "0x47c4" + }, + { + "contract_address": "0x33d5b4c122f0d65572cf4aa3af31e8258a0a6bedfbf24e3dcc3b610b8a5199d", + "nonce": "0x7517" + }, + { + "contract_address": "0x234d0c891cfc00ba1a53277c34c91f5f0a273fb29867876abaf069e2a39da99", + "nonce": "0x1525" + }, + { + "contract_address": "0x6569b665de48145219a07c827deded8a3e7f34aa79ef3985bea6717755e85c6", + "nonce": "0x5cf3" + }, + { + "contract_address": "0x71ad7b064ff7825ab11760207b16a28b54decc5b02873af6b1a2527e07925f0", + "nonce": "0x21e1" + }, + { + "contract_address": "0x8b44318e05bf18a302297844cfa8e28c5507e1ebe2009c763db4dec858c621", + "nonce": "0x5415" + }, + { + "contract_address": "0x19f0f563f9468e1995cc55fec8dfddfc30bb667ce4b020a6c8b7d9aa412aa06", + "nonce": "0xa04" + }, + { + "contract_address": "0x7fd8f52786862b8600d9e2a7823c77aba212e3d28b67e4623cd48369e94f7a2", + "nonce": "0x804" + }, + { + "contract_address": "0xdee3cb1be6b4fd9a855f7c02614ed9852caa1ae1865a0d810fa04d6b5c92b3", + "nonce": "0x4" + }, + { + "contract_address": "0x4a395a56c7f88cbd4972914f487b787032e452fe1948be89c8c2240b83a94e4", + "nonce": "0x16b" + }, + { + "contract_address": "0x1b156fbf2fcad9612732ad2685d5ea0ff3bf2235ac47991ec7f292f46b7fcb8", + "nonce": "0x4fda" + }, + { + "contract_address": "0x36bc704e0ba7bd77bcc30c00f13d810b2c6dba3d8f7676263d82d9e69306f87", + "nonce": "0x245b" + }, + { + "contract_address": "0x483ce3fbdd8eb75859dacffbec40d8cc22a0ae31526924a8ef732222bf5b0a1", + "nonce": "0x1f38" + }, + { + "contract_address": "0x2a46859fd22ee1b6439ce0c1352f20f184e34965a2f99c24fb303ecb7187bd7", + "nonce": "0xbd" + }, + { + "contract_address": "0x75ddc908cbc54410e2f52face10b68987f1f590dd164fb3c67e134b1a658305", + "nonce": "0xfc" + }, + { + "contract_address": "0x3a47e23f7a9bf0fb7345e9efaec5cd1e0c1dde13188f7fed6d4db801c8d6451", + "nonce": "0xce59" + }, + { + "contract_address": "0xcfa6810ffde746a867ae4bd734c2d386d9a926a310c2f4181038fa997c45cc", + "nonce": "0x3d" + }, + { + "contract_address": "0x41b0978486922bdfc7eeca616f4859e302875392b7bdf3c2a5cdafba685213e", + "nonce": "0x1e7a" + }, + { + "contract_address": "0x332825a42ccbec3e2ceb6c242f4dff4682e7d16b8559104b5df8fd925ddda09", + "nonce": "0x2983a" + }, + { + "contract_address": "0x7d47e04b4fa929dda44aa0068f651054f90f4bc1ef18e9ffadfb652d0398ebd", + "nonce": "0x6bb5" + }, + { + "contract_address": "0xe91830f84747f37692127b20d4e4f9b96482b1007592fee1d7c0136ee60e6d", + "nonce": "0x291e" + }, + { + "contract_address": "0x2952155b01ce465a4814d48d40769429ae5f7656714a1d278569c5ec0eb77be", + "nonce": "0x2437" + }, + { + "contract_address": "0x5cda2b2904c8b4b92f6bf3babc5980439b96f5583dea7a74b73e9d701e53d9c", + "nonce": "0x26" + }, + { + "contract_address": "0x830dc345b616bfc853cf41bdf70df3c6dfee8400c1d972234c719df22b950", + "nonce": "0x449c" + }, + { + "contract_address": "0x21714d78512c4d7cc98f8c3959e9026081f9bb33bbb07066eebc51b6ce357bb", + "nonce": "0x31183" + }, + { + "contract_address": "0x2d0356738e30a3ce3d7ec6368e64d286ef71fa444990676ef1e083f68edd266", + "nonce": "0x58ec" + }, + { + "contract_address": "0x72884c68f836aa34fbe21e83bb22d76e4a050f5196073c6b3df50b902f9ad6c", + "nonce": "0xf" + }, + { + "contract_address": "0x60f0e4968d9bb9bf7728d797a2d6e50eb4149dafa89acf15f2efa4f57218ab9", + "nonce": "0x19" + }, + { + "contract_address": "0xe90d09b07aaa8e82ae73c6ed38f8cfc23a8e95701d36167fa97b784140c8c", + "nonce": "0x2" + }, + { + "contract_address": "0x55e557a4c975059522a1321d7a7bd215287450907419e5f8aa98145c7699a2c", + "nonce": "0x24a1" + }, + { + "contract_address": "0x7067304ed934fe31cf1579c941a370bf1625e36523efd901968329d715c3a1c", + "nonce": "0x42d" + }, + { + "contract_address": "0x7d4a6ccab32a47a20806f11eba3adf6e362ba4de188b9895fcb24a37111a357", + "nonce": "0x5d" + }, + { + "contract_address": "0x54f7595fde761b771e65c3b23803f81c7619347007376cf54e5c52ebd785215", + "nonce": "0x3f" + }, + { + "contract_address": "0x30d1a6061325132500b0c288e8e6deaeeb58ad7cb7b4c6e8239346959cb765d", + "nonce": "0xdd7" + }, + { + "contract_address": "0x2a4117530d52d7a70406eb608b86f3874e50a6972126cbbf92e4257315cafd4", + "nonce": "0x3" + }, + { + "contract_address": "0x54452751e7d5ccfcb5dea9688ddbdbe54e6303cf472ffb88ff9e0b23c0b0cc1", + "nonce": "0xe8b" + }, + { + "contract_address": "0x7a900c5b496d15bbb1c3c69d090e890a4b19dbceabee72232d4f2bec67ff4c", + "nonce": "0x23" + }, + { + "contract_address": "0x6a20d4d7995fb8ba1570c32e53259ec1c53be111a33f9778825d184eee5a3da", + "nonce": "0x3b" + }, + { + "contract_address": "0x36c6e4627b208a7c9f4e8573fa7b6f702beac689196566d484b0963918db9c4", + "nonce": "0x4c" + }, + { + "contract_address": "0x411c2a2a4dc7b4d3a33424af3ede7e2e3b66691e22632803e37e2e0de450940", + "nonce": "0x1111c" + }, + { + "contract_address": "0x626a1182976caee727565fac2d143c72cec7f8c5319a6f6b49433875fa52bf9", + "nonce": "0x5a" + }, + { + "contract_address": "0x6bb8b6108fe2b5df594c81b616a7dbc427c9b035e2b7d5d615caeffb0d43dd6", + "nonce": "0x526b" + }, + { + "contract_address": "0x4d50f6ca2b2310609c1f9614370416f820c74168f373e23e5b4d9a86fca5d75", + "nonce": "0x13" + }, + { + "contract_address": "0x344c86d9d9a189cf1b616c8d3bd550bdfd3f099f4076f7e680a14d4d8981124", + "nonce": "0x1678e" + }, + { + "contract_address": "0x58388620d7b3db195744cef25a64063d1a9eeca12eeb321668286df5876acc6", + "nonce": "0x3f" + }, + { + "contract_address": "0x38cc12c2f0a9948da9b2d5c986569c0567aa52af944022dbd870c5aee60dbd", + "nonce": "0x77" + }, + { + "contract_address": "0x40c94eed22c9a80383136565cb19cb8c05e6397c47a83a3f4bbea6b1c129f7f", + "nonce": "0x23c9" + }, + { + "contract_address": "0x7dbc0ae5ba61561b34d7951e3d51ee3524b41653b7d8d69f38c969796374ebe", + "nonce": "0x24ac" + }, + { + "contract_address": "0x1978b8733863f8a3161a202aa328d0796b40f12a3254bc0c622a1b4347d9631", + "nonce": "0x4e" + }, + { + "contract_address": "0x7d8c33f4496aff713013411824fe34883f98da114d651185c60f56c1857e214", + "nonce": "0x71" + }, + { + "contract_address": "0x338724b89122b27c1d639c4e1ba54725af2ca038e70a5a8e90fcf86b06aff80", + "nonce": "0x243b" + }, + { + "contract_address": "0x5d2b4ff90b0bdba43656ea1c7a3a42f787e419fff52883f156cfb30a4a9e0bd", + "nonce": "0x3a" + }, + { + "contract_address": "0x7110d84a0b0a3e8673e1f7d465c3f6c6a886ba7bb7c090b26053b150c7fd7a0", + "nonce": "0x42d" + }, + { + "contract_address": "0x3ec56cc583e8b6b35e0f226b26bf8c27afe973909e62db9e64e9c466e6f18c4", + "nonce": "0x20" + }, + { + "contract_address": "0x6865262d42ddfe81d94d96d58b740fdad4c776b897b9105d601e0f2f49ec9cf", + "nonce": "0x1bc5" + }, + { + "contract_address": "0x551710e31ceb35c0e14c63a33b8d379ab06d17625a0231b971fd98713445506", + "nonce": "0x53f6" + }, + { + "contract_address": "0x32a4480eaa15a76e95f524cadeeb8f75b43720530c156e603f4b550ba0fb8c1", + "nonce": "0xcb" + }, + { + "contract_address": "0x1a4edc870eb8da3b73ab70d5dffc5c0a14a6ab1ad612845add04200582bffa4", + "nonce": "0x74de" + }, + { + "contract_address": "0x57e980208954e55a1af061c53ecdf6609ef1bdbc6ec3f700a23fe8c55cbdf9a", + "nonce": "0xbd25" + }, + { + "contract_address": "0x6a86a506ecf3e42b516754f94aad13f726cc6470008ef79a7dde024ce5df52f", + "nonce": "0x1c" + }, + { + "contract_address": "0x709581a5fdc685876ccebf3062d2f6a352ff55c81bd751cf29997a07bc6fc69", + "nonce": "0x240f" + }, + { + "contract_address": "0x28385e91469dfed6260efe5a054b3cdc9967fab2f4fd87d1aac33c5a1719c07", + "nonce": "0x81" + }, + { + "contract_address": "0x7f28a38e4f6622d530c83b75efd5ef772352c9c8e4bbc5e75355601f611367f", + "nonce": "0x2b86" + }, + { + "contract_address": "0x3522cb79d93f90c45a56d7239c693d9ae77a2b7199996b6824e628ad0a3aa47", + "nonce": "0x5dc5" + }, + { + "contract_address": "0x5e660516ba60c3bab5498ca7f5ddfe22b59bc94bff695015f5cb010eb5df2d5", + "nonce": "0x120" + }, + { + "contract_address": "0x45725428918c740312c1c075a3ea937046673b10b9a106761929a6624fcc2b0", + "nonce": "0xdd" + }, + { + "contract_address": "0x69a7818562b608ce8c5d0039e7f6d1c6ee55f36978f633b151858d85c022d2f", + "nonce": "0x4f10" + }, + { + "contract_address": "0x3271c85b8da8969a14c295278c5587015377e20867d57abe2c700ee62f1daa5", + "nonce": "0xa14" + }, + { + "contract_address": "0x54e2640fe5633aa21d431405f8539a72fcfd85d968de02c3e65478c93f8045f", + "nonce": "0x5c2d" + }, + { + "contract_address": "0x655e00e38323a46f37656bbb8d571ea53f7a9352fddcfe83cde2ecae66a1e4", + "nonce": "0x16f" + }, + { + "contract_address": "0x72cc9028da5b1b916d5344168d5b37ecce8c81c8b4881384443fb488b4c22f0", + "nonce": "0x2b7c" + }, + { + "contract_address": "0x4ee30db0ac6ae7c812544c135f43c507739c84538c54b3e1e9dfd1b3b5956de", + "nonce": "0x15f" + }, + { + "contract_address": "0x46f4c92ae83fc3b974dc542c199ac18665980ca56b302938131417b259736e1", + "nonce": "0x232" + }, + { + "contract_address": "0x3620d1fd141578ab27fa1d0d33f51658e50d08af34792422c95035929a8e80b", + "nonce": "0x420" + }, + { + "contract_address": "0x7161fb852fd41ba5edae69c5a34065fee060dccd90a7c7a6ebf9a3b5e24168d", + "nonce": "0x3d" + }, + { + "contract_address": "0x72c0be3a42c614837c7bc8e0869bbd7238e5c03022cd678e52f46c71e99c1d4", + "nonce": "0x907" + }, + { + "contract_address": "0x12ef243d0ba3d846288079dfaabdd69a61cb80911f9f2ab0d5cc6e1353d3274", + "nonce": "0xf9" + } + ] + } +} diff --git a/e2e-tests/artifacts/nonces_671070.json b/e2e-tests/artifacts/nonces_671070.json new file mode 100644 index 000000000..15d0a0356 --- /dev/null +++ b/e2e-tests/artifacts/nonces_671070.json @@ -0,0 +1,306 @@ +[ + { + "nonce": "10fc", + "address": "2249938217234002180483398376999334415579117092651200649747350732054475404301" + }, + { + "nonce": "0", + "address": "907709602385872895650575252431334011593986664640892864229936608645761948241" + }, + { + "nonce": "0", + "address": "2469411803551208597379411124426031687239604825807346010918820473142021538594" + }, + { + "nonce": "0", + "address": "1708260486737591819144035989647092165440582255047059932029714033661494821955" + }, + { + "nonce": "0", + "address": "1064810762463079168266112036380506103494161142652213083564982330455653187638" + }, + { + "nonce": "0", + "address": "3470361472081161015265605905526548436749553008398672817099789630357407698991" + }, + { + "nonce": "0", + "address": "3110282501378377883892935712622594915546071167514065118187492129119880884608" + }, + { + "nonce": "0", + "address": "3326961915761608684706172774354379779379643886375680974453167906880707787399" + }, + { + "nonce": "0", + "address": "1053670159510643005233429474416743801288893072160649223279960242754366678511" + }, + { + "nonce": "0", + "address": "880071607951670340241439032059815349850569087772357509679766079479292450847" + }, + { + "nonce": "0", + "address": "494667282832202516923361092240386813112300876514492947900343625188611998663" + }, + { + "nonce": "0", + "address": "2087021424722619777119509474943472645767659996348769578120564519014510906823" + }, + { + "nonce": "0", + "address": "2947101050413422186244031688162234654120722792901344923492705480573156879217" + }, + { + "nonce": "0", + "address": "1348575710282238088238036253818286691116053642788662164447289887881477572210" + }, + { + "nonce": "0", + "address": "158098919692956613592021320609952044916245725306097615271255138786123" + }, + { + "nonce": "0", + "address": "654342388182999933335510137305150344917550649843077476520165782525461596334" + }, + { + "nonce": "0", + "address": "216427556619826931576158470513102088188363477061982048606671748490764579530" + }, + { + "nonce": "0", + "address": "2318336240404265168748811394097691648061012293902787885032380785000909578095" + }, + { + "nonce": "20e6", + "address": "2914153965505187127035962647526667949300286346635303560476937134866841908155" + }, + { + "nonce": "0", + "address": "3492558690262082749186647210263132297408240468432999244510335000494821766050" + }, + { + "nonce": "503", + "address": "934314804757974406249496007427855425554552903528324388451483187946743476571" + }, + { + "nonce": "0", + "address": "482876828289395875538132910579471976747156502741786274588755116050381611281" + }, + { + "nonce": "0", + "address": "3236936304126741631551566903730667604709131246927656911566714107137273746231" + }, + { + "nonce": "0", + "address": "2149625499377050772775701191274921578103398273298955620360611655307104287237" + }, + { + "nonce": "0", + "address": "2534681784017457087083809392510965130335560357182539279475941175006939624703" + }, + { + "nonce": "0", + "address": "2463696710263687514312235271344625047914153091771074572193028493970608265766" + }, + { + "nonce": "0", + "address": "154405441650623340433846791446600333432749382000511499440420329763992121427" + }, + { + "nonce": "0", + "address": "1096063446119013674494851733362477374612561912725755267587153593342670178779" + }, + { + "nonce": "0", + "address": "2009894490435840142178314390393166646092438090257831307886760648929397478285" + }, + { + "nonce": "0", + "address": "2368576823837625528275935341135881659748932889268308403712618244410713532584" + }, + { + "nonce": "0", + "address": "2756519339868571593845682371256567329742307687641799998393353981756413385489" + }, + { + "nonce": "c0", + "address": "2753113806940174612646848075329853619778353394161740751706215135665057614515" + }, + { + "nonce": "0", + "address": "2311869805003812326553862683527996885064212807009169311639707141242822503961" + }, + { + "nonce": "0", + "address": "2967174050445828070862061291903957281356339325911846264948421066253307482040" + }, + { + "nonce": "0", + "address": "452209534934676154545654294308816651152428356935311062044743377288405172223" + }, + { + "nonce": "0", + "address": "1996028776274380133173023797698809051260720108905017428866940273598654803547" + }, + { + "nonce": "0", + "address": "1919341413504682506464537888213340599793174343085035697059721110464975114204" + }, + { + "nonce": "0", + "address": "2192185015552815667795098006747700517719605501427252033035433606745772754846" + }, + { + "nonce": "0", + "address": "344702662651677763925571133806699366796354681611808305628309404215461286549" + }, + { + "nonce": "0", + "address": "1870782032401865699841042440557421334501185380455816302978703906714118081524" + }, + { + "nonce": "0", + "address": "348406700183097323816755487765774404685763984831379505444198486353907712007" + }, + { + "nonce": "0", + "address": "2657678813130651106237595745441882116014929351909938101087448266452771807498" + }, + { + "nonce": "0", + "address": "2684779351044579298266156468603164481381165938036371405527343093627708654870" + }, + { + "nonce": "0", + "address": "3061110240019781426614513706891013014409971804538604658939851740524605265341" + }, + { + "nonce": "0", + "address": "3510517396796286814268654491166771226468744332760007374502919894689866497051" + }, + { + "nonce": "0", + "address": "3574546401479673078972677826775758426010964166763841372226119747353992695611" + }, + { + "nonce": "0", + "address": "1886212889629631188189497155848883534738756148921111726686756987927630157522" + }, + { + "nonce": "0", + "address": "3552561185959056098217379568866936222609231681440444612160267197237526226777" + }, + { + "nonce": "0", + "address": "3488796095165551003812490975976509991633322013578458084167226256699277019952" + }, + { + "nonce": "0", + "address": "1819353555469595227517916936825661354718292416257758257603220179173570271504" + }, + { + "nonce": "0", + "address": "228127240820201420112041055406192968922581942321662179607685569770048015434" + }, + { + "nonce": "0", + "address": "1202089834814778579992154020333959781277480478747022471664051891421849487195" + }, + { + "nonce": "0", + "address": "2255232768192109874584402976950672322268656998516955788942273316147447166435" + }, + { + "nonce": "0", + "address": "2461707722432395661708797885477397117007458536930774680416205805182417362616" + }, + { + "nonce": "0", + "address": "2929798209522087394435116511849855244007824340817907300971221861926901771189" + }, + { + "nonce": "0", + "address": "1976116259487849312492355695320380942153209908997880779234707344294669942230" + }, + { + "nonce": "0", + "address": "1856796092917222948479589883654595957487336270077871672322232564294067596983" + }, + { + "nonce": "0", + "address": "2374218501325025632703358547356078646989088119815079613574483696352472513252" + }, + { + "nonce": "17b", + "address": "523436294823910352998435030827319622575181239038514921309135559240881909891" + }, + { + "nonce": "0", + "address": "623771064731051534960895807108128105569542048211887818130149775326813130896" + }, + { + "nonce": "0", + "address": "2520086548783824114097192081904152894180691673462258183477698498177688128119" + }, + { + "nonce": "0", + "address": "1020752885302876858903522144217552148857053455463577119549085796907177205620" + }, + { + "nonce": "0", + "address": "253833690511380329558320257732495435410215086843294023411497999554458622174" + }, + { + "nonce": "0", + "address": "902492192278866739529390795567852665941148840926620678225438377550865106375" + }, + { + "nonce": "1d96", + "address": "1256434642634214488244139085896225607458457118223011442891103334963752090953" + }, + { + "nonce": "0", + "address": "432413111078121093985280996900378608894697186702150941876612199423333263943" + }, + { + "nonce": "0", + "address": "369634768025895292331242127995173344493277109110044398655865284904828102983" + }, + { + "nonce": "0", + "address": "1796504035551416850734347987128941049677212422103194704393786005603862882363" + }, + { + "nonce": "0", + "address": "128046835014687671764701071103697248442191699810634328684734697634499627675" + }, + { + "nonce": "0", + "address": "2339053739194465705536630256700315114085033127119452965299183410782350666322" + }, + { + "nonce": "0", + "address": "2822384147535692580096452720173643476564545006536762268901337132689451489873" + }, + { + "nonce": "0", + "address": "1981730265309066675196797336659669198174237715678236202495736994838932697026" + }, + { + "nonce": "0", + "address": "2368624700656479057373428915964163118551191083298200582350189476815925979168" + }, + { + "nonce": "0", + "address": "765508223075466859908478596968784063848608155123650120994833756754594687431" + }, + { + "nonce": "0", + "address": "3211610579223146608467672259501658327132751513527555762223906522463236489012" + }, + { + "nonce": "0", + "address": "84386485312597548087364031012269478474953862610275474628345266950365750193" + } +] diff --git a/e2e-tests/artifacts/program_output_671070.txt b/e2e-tests/artifacts/program_output_671070.txt new file mode 100644 index 000000000..fd6260ac9 --- /dev/null +++ b/e2e-tests/artifacts/program_output_671070.txt @@ -0,0 +1,13 @@ +2690652950887981092105487857662255296011626012752189016494932422592792782612 +318375726713628396893264960521216506727972386704433219654697727306535670624 +671070 +1721464161421942823712299887410666239101540954911342952807203342687235872339 +2590421891839256512113614983194993186457498815986333310670788206383913888162 +1 +4333048458755315272052456218951806007811933151167279260738 +4500201590935370788298697053067752428216731915353881504674 +1780270321746081097970276934354344672724838367048896540266648412014106432240 +267674272179767811046066001318052491587 +89018504356014354452939512097715104575 +0 +0 \ No newline at end of file diff --git a/e2e-tests/artifacts/snos_output.json b/e2e-tests/artifacts/snos_output.json new file mode 100644 index 000000000..e606b22bb --- /dev/null +++ b/e2e-tests/artifacts/snos_output.json @@ -0,0 +1,12 @@ +{ + "initial_root": "0x7D7E0C5772392D15F3F0C9CFF6DFE549BE29250462485F80D7ECBBC283256CF", + "final_root": "0x4EC6744B24853BDEC273225D76232DD0A342535816FFBD578CF8A5B3D1F2AE6", + "block_number": "0x9EF2F", + "block_hash": "0x7FBECAFB986506E1EC0D529A1A706B1FF810EC48CF71BDE18825E111D1211FF", + "starknet_os_config_hash": "0x5BA2078240F1585F96424C2D1EE48211DA3B3F9177BF2B9880B4FC91D59E9A2", + "use_kzg_da": "0x1", + "messages_to_l1": [], + "messages_to_l2": [], + "contracts": [], + "classes": {} +} diff --git a/e2e-tests/src/anvil.rs b/e2e-tests/src/anvil.rs new file mode 100644 index 000000000..d810e4417 --- /dev/null +++ b/e2e-tests/src/anvil.rs @@ -0,0 +1,115 @@ +use std::str::FromStr; +use std::time::Duration; + +use alloy::dyn_abi::SolType; +use alloy::network::EthereumWallet; +use alloy::primitives::{fixed_bytes, Address, Bytes, I256, U256}; +use alloy::providers::ProviderBuilder; +use alloy::signers::local::PrivateKeySigner; +use alloy::sol; +use tokio::time::sleep; +use url::Url; +use utils::env_utils::get_env_var_or_panic; + +sol!( + #[allow(missing_docs)] + #[sol(rpc)] + StarknetCoreContract, + "artifacts/contracts/Starknet.json" +); + +sol! { + struct StateUpdate { + uint256 globalRoot; + int256 blockNumber; + uint256 blockHash; + } + + struct InitializeData { + uint256 programHash; + uint256 aggregatorProgramHash; + address verifier; + uint256 configHash; + StateUpdate initialState; + } +} + +sol!( + #[allow(missing_docs)] + #[sol(rpc)] + GPSVerifier, + "artifacts/contracts/GPSVerifier.json" +); + +pub struct AnvilSetup { + pub rpc_url: Url, +} + +impl AnvilSetup { + pub fn new() -> Self { + let rpc_url = Url::from_str("http://localhost:8545").unwrap(); + Self { rpc_url } + } + + pub async fn deploy_contracts(&self) -> (Address, Address) { + let wallet = EthereumWallet::from( + PrivateKeySigner::from_str(&get_env_var_or_panic("MADARA_ORCHESTRATOR_ETHEREUM_PRIVATE_KEY")).unwrap(), + ); + let provider = ProviderBuilder::new().with_recommended_fillers().wallet(wallet).on_http(self.rpc_url.clone()); + + let starknet_core_contract_client = StarknetCoreContract::deploy(&provider).await.unwrap(); + log::debug!("šŸ“¦ Deployed starknet_core_contract at address: {}", starknet_core_contract_client.address()); + let verifier_client = GPSVerifier::deploy(&provider).await.unwrap(); + + // This is the fact hash calculated from get_fact_info() or mongodb job metadata + // for block 66645 + let fact_hash = fixed_bytes!("129324e742e7c1ce700f7a99cbc83b4959ede9dff22e1bbaa7bd95396c3a6240"); + let _ = verifier_client.setValid(fact_hash).send().await.expect("Failed to set fact as valid"); + sleep(Duration::from_secs(10)).await; + let _is_fact_valid = verifier_client.isValid(fact_hash).call().await.unwrap()._0; + assert!(_is_fact_valid, "Fact should be valid"); + log::debug!("Is fact valid? {:?}", _is_fact_valid); + + log::debug!("šŸ“¦ Deployed verifier at address: {}", verifier_client.address()); + + let init_data = InitializeData { + programHash: U256::from_str_radix( + "853638403225561750106379562222782223909906501242604214771127703946595519856", + 10, + ) + .unwrap(), + aggregatorProgramHash: U256::from(0u64), + verifier: *verifier_client.address(), + configHash: U256::from_str_radix( + "8868593919264901768958912247765226517850727970326290266005120699201631282", + 10, + ) + .unwrap(), + initialState: StateUpdate { + globalRoot: U256::from_str_radix( + "1013056298804193110052941398049455744613709243892509969624981484583467797561", + 10, + ) + .unwrap(), + blockNumber: I256::from_dec_str("66644").unwrap(), + blockHash: U256::from_str_radix( + "864771394108447903429963973655367092508118282522891417641831341021946765687", + 10, + ) + .unwrap(), + }, + }; + + let encoded_data = InitializeData::abi_encode(&init_data); + let builder = starknet_core_contract_client.initializeContractState(Bytes::from(encoded_data)); + let tx_hash = builder.send().await.unwrap().watch().await.unwrap(); + println!("šŸ“¦ Contract setup done. Txn Hash : {}", tx_hash); + (*starknet_core_contract_client.address(), *verifier_client.address()) + } +} + +impl Default for AnvilSetup { + fn default() -> Self { + Self::new() + } +} diff --git a/e2e-tests/src/lib.rs b/e2e-tests/src/lib.rs new file mode 100644 index 000000000..a68276c8c --- /dev/null +++ b/e2e-tests/src/lib.rs @@ -0,0 +1,26 @@ +pub mod anvil; +pub mod mock_server; +pub mod mongodb; +pub mod node; +pub mod sharp; +pub mod starknet_client; +pub mod utils; + +use std::net::TcpListener; + +pub use mongodb::MongoDbServer; +pub use node::Orchestrator; +pub use orchestrator::database::mongodb::MongoDb as MongoDbClient; + +const MIN_PORT: u16 = 49_152; +const MAX_PORT: u16 = 65_535; + +fn get_free_port() -> u16 { + for port in MIN_PORT..=MAX_PORT { + if let Ok(listener) = TcpListener::bind(("127.0.0.1", port)) { + return listener.local_addr().expect("No local addr").port(); + } + // otherwise port is occupied + } + panic!("No free ports available"); +} diff --git a/e2e-tests/src/mock_server.rs b/e2e-tests/src/mock_server.rs new file mode 100644 index 000000000..aea13ed7c --- /dev/null +++ b/e2e-tests/src/mock_server.rs @@ -0,0 +1,102 @@ +use std::collections::HashMap; + +use httpmock::MockServer; +use reqwest::Client; +use serde_json::Value; +use utils::env_utils::get_env_var_or_panic; + +#[allow(dead_code)] +/// MockServerGlobal (has mock server inside) +pub struct MockServerGlobal { + pub(crate) client_url: String, + pub(crate) mock_server: MockServer, + pub(crate) client: Option, +} + +pub enum MockResponseBodyType { + Json(Value), + String(String), +} + +impl MockServerGlobal { + /// To create a new client + pub fn new() -> Self { + let server = MockServer::start(); + Self { client_url: format!("http://localhost:{:?}", server.port()), mock_server: server, client: None } + } + + /// To get mutable mock server ref for adding expects for URLs + pub fn mut_mock_server(&mut self) -> &mut MockServer { + &mut self.mock_server + } + + /// To get the server URL + pub fn url(&self) -> String { + self.client_url.clone() + } + + /// To add mock on the mock server endpoints + pub fn add_mock_on_endpoint( + &mut self, + path: &str, + body_contains: Vec, + status: Option, + response_body: MockResponseBodyType, + ) { + self.mock_server.mock(|when, then| { + let mut request = when.path(path); + + for condition in body_contains { + request = request.body_includes(&condition); + } + + match response_body { + MockResponseBodyType::Json(val) => { + then.status(status.unwrap_or(200)).body(serde_json::to_vec(&val).unwrap()); + } + MockResponseBodyType::String(val) => { + then.status(status.unwrap_or(200)).body(val); + } + } + }); + } + + pub fn connect(rpc_url: String) -> Self { + Self { client_url: rpc_url.clone(), mock_server: MockServer::connect(&rpc_url), client: None } + } + + pub fn proxy(rpc_url: String, method_response_hashmap: HashMap) -> Self { + let (mock, client) = Self::start_proxy_server(&rpc_url, method_response_hashmap); + Self { client_url: rpc_url.clone(), mock_server: mock, client: Some(client) } + } + + fn start_proxy_server(_target_url: &str, method_response_hashmap: HashMap) -> (MockServer, Client) { + let proxy_server = MockServer::start(); + + let client = Client::builder().proxy(reqwest::Proxy::all(proxy_server.base_url()).unwrap()).build().unwrap(); + + for (req_path, return_val) in method_response_hashmap { + proxy_server.mock(|when, then| { + when.body_includes(req_path.clone()); + then.json_body(return_val); + }); + + let snos_url = get_env_var_or_panic("MADARA_ORCHESTRATOR_RPC_FOR_SNOS"); + let snos_host = snos_url.split("://").last().unwrap().split(":").next().unwrap(); + let snos_port = snos_url.split("://").last().unwrap().split(":").last().unwrap(); + proxy_server.proxy(|rule| { + rule.filter(|when| { + when.host(snos_host).port(snos_port.parse::().unwrap()).body_excludes(req_path.clone()); + }); + }); + } + + (proxy_server, client) + } +} + +impl Default for MockServerGlobal { + fn default() -> Self { + Self::new() + } +} diff --git a/e2e-tests/src/mongodb.rs b/e2e-tests/src/mongodb.rs new file mode 100644 index 000000000..3f29c1cd7 --- /dev/null +++ b/e2e-tests/src/mongodb.rs @@ -0,0 +1,16 @@ +use orchestrator::database::mongodb::MongoDBValidatedArgs; +use url::Url; +#[allow(dead_code)] +pub struct MongoDbServer { + endpoint: Url, +} + +impl MongoDbServer { + pub fn run(mongodb_params: MongoDBValidatedArgs) -> Self { + Self { endpoint: mongodb_params.connection_url } + } + + pub fn endpoint(&self) -> Url { + self.endpoint.clone() + } +} diff --git a/e2e-tests/src/node.rs b/e2e-tests/src/node.rs new file mode 100644 index 000000000..f1be9de29 --- /dev/null +++ b/e2e-tests/src/node.rs @@ -0,0 +1,153 @@ +use std::io::{BufRead, BufReader}; +use std::process::{Child, Command, ExitStatus, Stdio}; +use std::thread; +use std::time::Duration; + +use strum_macros::Display; +use tokio::net::TcpStream; +use url::Url; + +use crate::get_free_port; +use crate::utils::get_repository_root; + +const CONNECTION_ATTEMPTS: usize = 720; +const CONNECTION_ATTEMPT_DELAY_MS: u64 = 1000; + +#[derive(Debug)] +pub struct Orchestrator { + process: Child, + address: String, +} + +impl Drop for Orchestrator { + fn drop(&mut self) { + let mut kill = + Command::new("kill").args(["-s", "TERM", &self.process.id().to_string()]).spawn().expect("Failed to kill"); + kill.wait().expect("Failed to kill the process"); + } +} + +#[derive(Display, Debug, Clone, PartialEq, Eq)] +pub enum OrchestratorMode { + #[strum(serialize = "run")] + Run, + #[strum(serialize = "setup")] + Setup, +} +impl Orchestrator { + pub fn new(mode: OrchestratorMode, mut envs: Vec<(String, String)>) -> Option { + let repository_root = &get_repository_root(); + let mut address = String::new(); + std::env::set_current_dir(repository_root).expect("Failed to change working directory"); + + let is_run_mode = mode == OrchestratorMode::Run; + let mode_str = mode.to_string(); + + println!("Running orchestrator in {} mode", mode_str); + + // Configure common command arguments + let mut command = Command::new("cargo"); + command + .arg("run") + .arg("--release") + .arg("--bin") + .arg("orchestrator") + .arg("--features") + .arg("testing") + .arg(mode_str) + .arg("--aws") + .arg("--aws-s3") + .arg("--aws-sqs") + .arg("--aws-sns"); + + // Add event bridge arg only for setup mode + if is_run_mode { + command.arg("--settle-on-ethereum"); + command.arg("--da-on-ethereum"); + command.arg("--sharp"); + command.arg("--mongodb"); + + let port = get_free_port(); + let addr = format!("127.0.0.1:{}", port); + envs.push(("MADARA_ORCHESTRATOR_PORT".to_string(), port.to_string())); + address = addr; + + command.stdout(Stdio::piped()).stderr(Stdio::piped()); + } else { + command.arg("--aws-event-bridge"); + command.arg("--event-bridge-type"); + command.arg("rule"); + // For setup mode, inherit the stdio to show output directly + command.stdout(Stdio::inherit()).stderr(Stdio::inherit()); + } + + command.current_dir(repository_root).envs(envs); + + let mut process = command.spawn().expect("Failed to start process"); + + if is_run_mode { + let stdout = process.stdout.take().expect("Failed to capture stdout"); + thread::spawn(move || { + let reader = BufReader::new(stdout); + reader.lines().for_each(|line| { + if let Ok(line) = line { + println!("STDOUT: {}", line); + } + }); + }); + + let stderr = process.stderr.take().expect("Failed to capture stderr"); + thread::spawn(move || { + let reader = BufReader::new(stderr); + reader.lines().for_each(|line| { + if let Ok(line) = line { + eprintln!("STDERR: {}", line); + } + }); + }); + Some(Self { process, address }) + } else { + // Wait for the process to complete and get its exit status + let status = process.wait().expect("Failed to wait for process"); + if status.success() { + println!("Orchestrator cloud setup completed āœ…"); + } else { + // Get the exit code if available + if let Some(code) = status.code() { + println!("Orchestrator cloud setup failed with exit code: {}", code); + } else { + println!("Orchestrator cloud setup terminated by signal"); + } + } + None + } + } + + pub fn endpoint(&self) -> Url { + Url::parse(&format!("http://{}", self.address)).unwrap() + } + + pub fn has_exited(&mut self) -> Option { + self.process.try_wait().expect("Failed to get orchestrator node exit status") + } + + pub async fn wait_till_started(&mut self) { + let mut attempts = CONNECTION_ATTEMPTS; + loop { + match TcpStream::connect(&self.address).await { + Ok(_) => return, + Err(err) => { + if let Some(status) = self.has_exited() { + panic!("Orchestrator node exited early with {}", status); + } + if attempts == 0 { + panic!("Failed to connect to {}: {}", self.address, err); + } + } + }; + + attempts -= 1; + tokio::time::sleep(Duration::from_millis(CONNECTION_ATTEMPT_DELAY_MS)).await; + } + } +} diff --git a/e2e-tests/src/sharp.rs b/e2e-tests/src/sharp.rs new file mode 100644 index 000000000..a128cb363 --- /dev/null +++ b/e2e-tests/src/sharp.rs @@ -0,0 +1,42 @@ +use httpmock::MockServer; + +use crate::mock_server::{MockResponseBodyType, MockServerGlobal}; + +/// Starknet Client struct (has mock server inside) +pub struct SharpClient { + client: MockServerGlobal, +} + +impl SharpClient { + /// To create a new client + pub fn new() -> Self { + Self { client: MockServerGlobal::new() } + } + + /// To get mutable mock server ref for adding expects for URLs + pub fn mut_mock_server(&mut self) -> &mut MockServer { + &mut self.client.mock_server + } + + /// To get the server URL + pub fn url(&self) -> String { + self.client.client_url.clone() + } + + /// To add mock on the mock server endpoints + pub fn add_mock_on_endpoint( + &mut self, + path: &str, + body_contains: Vec, + status: Option, + response_body: MockResponseBodyType, + ) { + self.client.add_mock_on_endpoint(path, body_contains, status, response_body); + } +} + +impl Default for SharpClient { + fn default() -> Self { + Self::new() + } +} diff --git a/e2e-tests/src/starknet_client.rs b/e2e-tests/src/starknet_client.rs new file mode 100644 index 000000000..5820934f9 --- /dev/null +++ b/e2e-tests/src/starknet_client.rs @@ -0,0 +1,49 @@ +use std::collections::HashMap; + +use httpmock::MockServer; +use serde_json::Value; + +use crate::mock_server::{MockResponseBodyType, MockServerGlobal}; + +/// Starknet Client struct (has mock server inside) +pub struct StarknetClient { + client: MockServerGlobal, +} + +impl StarknetClient { + /// To create a new client + pub fn new() -> Self { + Self { client: MockServerGlobal::new() } + } + + pub fn new_with_proxy(rpc_url: String, method_response_hashmap: HashMap) -> Self { + Self { client: MockServerGlobal::proxy(rpc_url, method_response_hashmap) } + } + + /// To get mutable mock server ref for adding expects for URLs + pub fn mut_mock_server(&mut self) -> &mut MockServer { + &mut self.client.mock_server + } + + /// To get the server URL + pub fn url(&self) -> String { + self.client.client_url.clone() + } + + /// To add mock on the mock server endpoints + pub fn add_mock_on_endpoint( + &mut self, + path: &str, + body_contains: Vec, + status: Option, + response_body: MockResponseBodyType, + ) { + self.client.add_mock_on_endpoint(path, body_contains, status, response_body); + } +} + +impl Default for StarknetClient { + fn default() -> Self { + Self::new() + } +} diff --git a/e2e-tests/src/utils.rs b/e2e-tests/src/utils.rs new file mode 100644 index 000000000..ab962d51c --- /dev/null +++ b/e2e-tests/src/utils.rs @@ -0,0 +1,46 @@ +use std::fs::File; +use std::io::Read; +use std::path::{Path, PathBuf}; + +use mongodb::bson::doc; +use mongodb::options::{ClientOptions, ServerApi, ServerApiVersion}; +use starknet::core::types::StateUpdate; + +use crate::MongoDbServer; + +pub fn get_repository_root() -> PathBuf { + let manifest_path = Path::new(&env!("CARGO_MANIFEST_DIR")); + let repository_root = manifest_path.parent().expect("Failed to get parent directory of CARGO_MANIFEST_DIR"); + repository_root.to_path_buf() +} + +pub async fn get_mongo_db_client(mongo_db: &MongoDbServer) -> ::mongodb::Client { + let mut client_options = ClientOptions::parse(mongo_db.endpoint()).await.expect("Failed to parse MongoDB Url"); + // Set the server_api field of the client_options object to set the version of the Stable API on the + // client + let server_api = ServerApi::builder().version(ServerApiVersion::V1).build(); + client_options.server_api = Some(server_api); + // Get a handle to the cluster + let client = ::mongodb::Client::with_options(client_options).expect("Failed to create MongoDB client"); + // Ping the server to see if you can connect to the cluster + client.database("admin").run_command(doc! {"ping": 1}, None).await.expect("Failed to ping MongoDB deployment"); + + client +} + +pub fn read_state_update_from_file(file_path: &str) -> color_eyre::Result { + // let file_path = format!("state_update_block_no_{}.txt", block_no); + let mut file = File::open(file_path)?; + let mut json = String::new(); + file.read_to_string(&mut json)?; + let state_update: StateUpdate = serde_json::from_str(&json)?; + Ok(state_update) +} + +pub fn vec_u8_to_hex_string(data: &[u8]) -> String { + let hex_chars: Vec = data.iter().map(|byte| format!("{:02x}", byte)).collect(); + + let mut new_hex_chars = hex_chars.join(""); + new_hex_chars = new_hex_chars.trim_start_matches('0').to_string(); + if new_hex_chars.is_empty() { "0x0".to_string() } else { format!("0x{}", new_hex_chars) } +} diff --git a/e2e-tests/tests.rs b/e2e-tests/tests.rs new file mode 100644 index 000000000..ed72488ba --- /dev/null +++ b/e2e-tests/tests.rs @@ -0,0 +1,482 @@ +use std::collections::HashMap; +use std::fs::File; +use std::io::Read; +use std::time::{Duration, Instant}; + +use aws_config::meta::region::RegionProviderChain; +use chrono::{SubsecRound, Utc}; +use e2e_tests::anvil::AnvilSetup; +use e2e_tests::mock_server::MockResponseBodyType; +use e2e_tests::sharp::SharpClient; +use e2e_tests::starknet_client::StarknetClient; +use e2e_tests::utils::{get_mongo_db_client, read_state_update_from_file, vec_u8_to_hex_string}; +use e2e_tests::{MongoDbServer, Orchestrator}; +use mongodb::bson::doc; +use orchestrator::cli::database::DatabaseValidatedArgs; +use orchestrator::data_storage::DataStorage; +use orchestrator::database::mongodb::MongoDBValidatedArgs; +use orchestrator::jobs::constants::{JOB_METADATA_SNOS_BLOCK, JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY}; +use orchestrator::jobs::types::{ExternalId, JobItem, JobStatus, JobType}; +use orchestrator::queue::job_queue::JobQueueMessage; +use orchestrator::queue::sqs::AWSSQSValidatedArgs; +use orchestrator::queue::QueueType; +use rstest::rstest; +use serde::{Deserialize, Serialize}; +use serde_json::json; +use starknet::core::types::{Felt, MaybePendingStateUpdate}; +use url::Url; +use utils::env_utils::get_env_var_or_panic; +use uuid::Uuid; + +extern crate e2e_tests; + +/// Expected DB state struct +#[derive(PartialEq, Debug)] +struct ExpectedDBState { + internal_id: String, + job_type: JobType, + job_status: JobStatus, + version: i32, +} + +#[allow(dead_code)] +/// Initial setup for e2e tests +struct Setup { + mongo_db_instance: MongoDbServer, + starknet_client: StarknetClient, + sharp_client: SharpClient, + env_vector: HashMap, +} + +impl Setup { + pub async fn new(l2_block_number: String) -> Self { + let db_params = DatabaseValidatedArgs::MongoDB(MongoDBValidatedArgs { + connection_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_MONGODB_CONNECTION_URL")) + .expect("Invalid MongoDB connection URL"), + database_name: get_env_var_or_panic("MADARA_ORCHESTRATOR_DATABASE_NAME"), + }); + + let DatabaseValidatedArgs::MongoDB(mongodb_params) = db_params; + + let mongo_db_instance = MongoDbServer::run(mongodb_params); + println!("āœ… Mongo DB setup completed"); + + let starknet_client = StarknetClient::new(); + println!("āœ… Starknet/Madara client setup completed"); + + let sharp_client = SharpClient::new(); + println!("āœ… Sharp client setup completed"); + + let anvil_setup = AnvilSetup::new(); + let (starknet_core_contract_address, verifier_contract_address) = anvil_setup.deploy_contracts().await; + println!("āœ… Anvil setup completed"); + + let mut env_vec: HashMap = HashMap::new(); + + let env_vars = dotenvy::vars(); + for (key, value) in env_vars { + env_vec.insert(key, value); + } + + env_vec + .insert("MADARA_ORCHESTRATOR_MONGODB_CONNECTION_URL".to_string(), mongo_db_instance.endpoint().to_string()); + + // Adding other values to the environment variables vector + env_vec.insert("MADARA_ORCHESTRATOR_ETHEREUM_SETTLEMENT_RPC_URL".to_string(), anvil_setup.rpc_url.to_string()); + env_vec.insert("MADARA_ORCHESTRATOR_SHARP_URL".to_string(), sharp_client.url()); + + // Adding impersonation for operator as our own address here. + // As we are using test contracts thus we don't need any impersonation. + // But that logic is being used in integration tests so to keep that. We + // add this address here. + // Anvil.addresses[0] + env_vec.insert( + "MADARA_ORCHESTRATOR_STARKNET_OPERATOR_ADDRESS".to_string(), + "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266".to_string(), + ); + env_vec.insert( + "MADARA_ORCHESTRATOR_GPS_VERIFIER_CONTRACT_ADDRESS".to_string(), + verifier_contract_address.to_string(), + ); + env_vec.insert( + "MADARA_ORCHESTRATOR_L1_CORE_CONTRACT_ADDRESS".to_string(), + starknet_core_contract_address.to_string(), + ); + env_vec.insert("MADARA_ORCHESTRATOR_MAX_BLOCK_NO_TO_PROCESS".to_string(), l2_block_number); + + Self { mongo_db_instance, starknet_client, sharp_client, env_vector: env_vec } + } + + pub fn mongo_db_instance(&self) -> &MongoDbServer { + &self.mongo_db_instance + } + + #[allow(dead_code)] + pub fn starknet_client(&mut self) -> &mut StarknetClient { + &mut self.starknet_client + } + + pub fn sharp_client(&mut self) -> &mut SharpClient { + &mut self.sharp_client + } + + pub fn envs(&self) -> Vec<(String, String)> { + self.env_vector.iter().map(|(k, v)| (k.clone(), v.clone())).collect() + } +} + +#[rstest] +#[case("66645".to_string())] +#[tokio::test] +async fn test_orchestrator_workflow(#[case] l2_block_number: String) { + // Fetching the env vars from the test env file as these will be used in + // setting up of the test and during orchestrator run too. + + use e2e_tests::node::OrchestratorMode; + dotenvy::from_filename(".env.test").expect("Failed to load the .env file"); + + let queue_params = AWSSQSValidatedArgs { + queue_base_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_SQS_BASE_QUEUE_URL")) + .expect("Invalid queue base URL"), + sqs_prefix: get_env_var_or_panic("MADARA_ORCHESTRATOR_SQS_PREFIX"), + sqs_suffix: get_env_var_or_panic("MADARA_ORCHESTRATOR_SQS_SUFFIX"), + }; + + let mut setup_config = Setup::new(l2_block_number.clone()).await; + // Setup Cloud + // Setup orchestrator cloud + Orchestrator::new(OrchestratorMode::Setup, setup_config.envs()); + println!("āœ… Orchestrator cloud setup completed"); + + // Step 1 : SNOS job runs ========================================= + // Updates the job in the db + let job_id = put_job_data_in_db_snos(setup_config.mongo_db_instance(), l2_block_number.clone()).await; + put_snos_job_in_processing_queue(job_id, queue_params).await.unwrap(); + + // Step 2: Proving Job ============================================ + // Mocking the endpoint + mock_proving_job_endpoint_output(setup_config.sharp_client()).await; + put_job_data_in_db_proving(setup_config.mongo_db_instance(), l2_block_number.clone()).await; + + // Step 3: DA job ================================================= + // Adding a mock da job so that worker does not create 60k+ jobs + put_job_data_in_db_da(setup_config.mongo_db_instance(), l2_block_number.clone()).await; + + // Step 4: State Update job ======================================= + put_job_data_in_db_update_state(setup_config.mongo_db_instance(), l2_block_number.clone()).await; + + println!("āœ… Orchestrator setup completed."); + + // Run orchestrator + let mut orchestrator = + Orchestrator::new(OrchestratorMode::Run, setup_config.envs()).expect("Failed to start orchestrator"); + orchestrator.wait_till_started().await; + + println!("āœ… Orchestrator started"); + + // Adding State checks in DB for validation of tests + + // Check 1 : After Proving Job state (15 mins. approx time) + let expected_state_after_proving_job = ExpectedDBState { + internal_id: l2_block_number.clone(), + job_type: JobType::ProofCreation, + job_status: JobStatus::Completed, + version: 3, + }; + let test_result = wait_for_db_state( + Duration::from_secs(1500), + l2_block_number.clone(), + setup_config.mongo_db_instance(), + expected_state_after_proving_job, + ) + .await; + assert!(test_result.is_ok(), "After Proving Job state DB state assertion failed."); + + // Check 2 : After DA Job state (5 mins. approx time) + let expected_state_after_da_job = ExpectedDBState { + internal_id: l2_block_number.clone(), + job_type: JobType::DataSubmission, + job_status: JobStatus::Completed, + version: 3, + }; + let test_result = wait_for_db_state( + Duration::from_secs(300), + l2_block_number.clone(), + setup_config.mongo_db_instance(), + expected_state_after_da_job, + ) + .await; + assert!(test_result.is_ok(), "After DA Job state DB state assertion failed."); + + // Check 3 : After Update State Job state (5 mins. approx time) + let expected_state_after_da_job = ExpectedDBState { + internal_id: l2_block_number.clone(), + job_type: JobType::StateTransition, + job_status: JobStatus::Completed, + version: 3, + }; + let test_result = wait_for_db_state( + Duration::from_secs(300), + l2_block_number, + setup_config.mongo_db_instance(), + expected_state_after_da_job, + ) + .await; + assert!(test_result.is_ok(), "After Update State Job state DB state assertion failed."); +} + +/// Function to check db for expected state continuously +async fn wait_for_db_state( + timeout: Duration, + l2_block_for_testing: String, + mongo_db_server: &MongoDbServer, + expected_db_state: ExpectedDBState, +) -> Result<(), String> { + let start = Instant::now(); + + while start.elapsed() < timeout { + let db_state = + get_database_state(mongo_db_server, l2_block_for_testing.clone(), expected_db_state.job_type.clone()) + .await + .unwrap(); + + if db_state.is_some() && db_state.unwrap() == expected_db_state { + return Ok(()); + } + tokio::time::sleep(Duration::from_millis(100)).await; + } + + Err(format!("Timed out waiting for expected state: {:?}", expected_db_state)) +} + +/// Fetch the job from database +async fn get_database_state( + mongo_db_server: &MongoDbServer, + l2_block_for_testing: String, + job_type: JobType, +) -> color_eyre::Result> { + let mongo_db_client = get_mongo_db_client(mongo_db_server).await; + let collection = mongo_db_client.database("orchestrator").collection::("jobs"); + let filter = doc! { "internal_id": l2_block_for_testing, "job_type" : mongodb::bson::to_bson(&job_type)? }; + let job = collection.find_one(filter, None).await.unwrap(); + match job { + Some(job) => Ok(Some(ExpectedDBState { + internal_id: job.internal_id, + job_type: job.job_type, + job_status: job.status, + version: job.version, + })), + None => Ok(None), + } +} + +// ====================================== +// Util functions +// ====================================== + +/// Puts after SNOS job state into the database +pub async fn put_job_data_in_db_snos(mongo_db: &MongoDbServer, l2_block_number: String) -> Uuid { + let job_item = JobItem { + id: Uuid::new_v4(), + internal_id: l2_block_number.clone(), + job_type: JobType::SnosRun, + status: JobStatus::Created, + external_id: ExternalId::Number(0), + metadata: HashMap::from([(JOB_METADATA_SNOS_BLOCK.to_string(), l2_block_number)]), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + }; + + let mongo_db_client = get_mongo_db_client(mongo_db).await; + mongo_db_client.database("orchestrator").drop(None).await.unwrap(); + mongo_db_client.database("orchestrator").collection("jobs").insert_one(job_item.clone(), None).await.unwrap(); + + job_item.id +} + +/// Adding SNOS job in JOB_PROCESSING_QUEUE so that the job is triggered +/// as soon as it is picked up by orchestrator +pub async fn put_snos_job_in_processing_queue(id: Uuid, queue_params: AWSSQSValidatedArgs) -> color_eyre::Result<()> { + let message = JobQueueMessage { id }; + put_message_in_queue( + message, + format!( + "{}/{}_{}_{}", + queue_params.queue_base_url, + queue_params.sqs_prefix, + QueueType::SnosJobProcessing, + queue_params.sqs_suffix + ), + ) + .await?; + Ok(()) +} + +pub async fn put_message_in_queue(message: JobQueueMessage, queue_url: String) -> color_eyre::Result<()> { + let region_provider = RegionProviderChain::default_provider().or_else("us-east-1"); + let config = aws_config::from_env().region(region_provider).load().await; + let client = aws_sdk_sqs::Client::new(&config); + + let rsp = client.send_message().queue_url(queue_url).message_body(serde_json::to_string(&message)?).send().await?; + + println!("āœ… Successfully sent message with ID: {:?}", rsp.message_id()); + + Ok(()) +} + +/// Mocks the endpoint for sharp client +pub async fn mock_proving_job_endpoint_output(sharp_client: &mut SharpClient) { + // Add job response, + let add_job_response = json!( + { + "code" : "JOB_RECEIVED_SUCCESSFULLY" + } + ); + sharp_client.add_mock_on_endpoint( + "/add_job", + vec!["".to_string()], + Some(200), + MockResponseBodyType::Json(add_job_response), + ); + + // Getting job response + let get_job_response = json!( + { + "status": "ONCHAIN", + "validation_done": true + } + ); + sharp_client.add_mock_on_endpoint( + "/get_status", + vec!["".to_string()], + Some(200), + MockResponseBodyType::Json(get_job_response), + ); +} + +/// Puts after SNOS job state into the database +pub async fn put_job_data_in_db_da(mongo_db: &MongoDbServer, l2_block_number: String) { + let job_item = JobItem { + id: Uuid::new_v4(), + internal_id: (l2_block_number.parse::().unwrap() - 1).to_string(), + job_type: JobType::DataSubmission, + status: JobStatus::Completed, + external_id: ExternalId::Number(0), + metadata: HashMap::new(), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + }; + + let mongo_db_client = get_mongo_db_client(mongo_db).await; + mongo_db_client.database("orchestrator").collection("jobs").insert_one(job_item, None).await.unwrap(); +} + +/// Mocks the starknet get nonce call (happens in da client for ethereum) +pub async fn mock_starknet_get_nonce(starknet_client: &mut StarknetClient, l2_block_number: String) { + let mut file = File::open(format!("artifacts/nonces_{}.json", l2_block_number)).unwrap(); + let mut contents = String::new(); + file.read_to_string(&mut contents).unwrap(); + + #[derive(Deserialize, Debug, Serialize)] + struct NonceAddress { + nonce: String, + address: String, + } + + // Parse the JSON string into a HashMap + let vec: Vec = serde_json::from_str(&contents).unwrap(); + + for ele in vec { + let address = Felt::from_dec_str(&ele.address).expect("Failed to convert to felt"); + let hex_field_element = vec_u8_to_hex_string(&address.to_bytes_be()); + + let response = json!({ "id": 640641,"jsonrpc":"2.0","result": ele.nonce }); + starknet_client.add_mock_on_endpoint( + "/", + vec!["starknet_getNonce".to_string(), hex_field_element], + Some(200), + MockResponseBodyType::Json(response), + ); + } +} + +/// Mocks the starknet get state update call (happens in da client for ethereum) +pub async fn mock_starknet_get_state_update(starknet_client: &mut StarknetClient, l2_block_number: String) { + let state_update = read_state_update_from_file(&format!("artifacts/get_state_update_{}.json", l2_block_number)) + .expect("issue while reading"); + + let state_update = MaybePendingStateUpdate::Update(state_update); + let state_update = serde_json::to_value(state_update).unwrap(); + let response = json!({ "id": 640641,"jsonrpc":"2.0","result": state_update }); + + starknet_client.add_mock_on_endpoint( + "/", + vec!["starknet_getStateUpdate".to_string()], + Some(200), + MockResponseBodyType::Json(response), + ); +} + +/// Mocks the starknet get state update call (happens in da client for ethereum) +pub async fn mock_starknet_get_latest_block(starknet_client: &mut StarknetClient, l2_block_number: String) { + starknet_client.add_mock_on_endpoint( + "/", + vec!["starknet_blockNumber".to_string()], + Some(200), + MockResponseBodyType::Json(json!({ + "id": 640641,"jsonrpc":"2.0","result": l2_block_number.parse::().unwrap() + })), + ); +} + +/// Puts after SNOS job state into the database +pub async fn put_job_data_in_db_update_state(mongo_db: &MongoDbServer, l2_block_number: String) { + let job_item = JobItem { + id: Uuid::new_v4(), + internal_id: (l2_block_number.parse::().unwrap() - 1).to_string(), + job_type: JobType::StateTransition, + status: JobStatus::Completed, + external_id: ExternalId::Number(0), + metadata: HashMap::from([( + JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY.to_string(), + (l2_block_number.parse::().unwrap() - 1).to_string(), + )]), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + }; + + let mongo_db_client = get_mongo_db_client(mongo_db).await; + mongo_db_client.database("orchestrator").collection("jobs").insert_one(job_item, None).await.unwrap(); +} + +/// Puts after SNOS job state into the database +pub async fn put_job_data_in_db_proving(mongo_db: &MongoDbServer, l2_block_number: String) { + let job_item = JobItem { + id: Uuid::new_v4(), + internal_id: (l2_block_number.parse::().unwrap() - 1).to_string(), + job_type: JobType::ProofCreation, + status: JobStatus::Completed, + external_id: ExternalId::Number(0), + metadata: HashMap::new(), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + }; + + let mongo_db_client = get_mongo_db_client(mongo_db).await; + mongo_db_client.database("orchestrator").collection("jobs").insert_one(job_item, None).await.unwrap(); +} + +// ====================================== +// Tests specific functions +// ====================================== + +/// To set up s3 files needed for e2e test (test_orchestrator_workflow) +#[allow(clippy::borrowed_box)] +pub async fn setup_s3(s3_client: &Box) -> color_eyre::Result<()> { + s3_client.create_bucket(&get_env_var_or_panic("MADARA_ORCHESTRATOR_AWS_S3_BUCKET_NAME")).await.unwrap(); + Ok(()) +} diff --git a/madara-bootstrapper b/madara-bootstrapper new file mode 160000 index 000000000..f717bf179 --- /dev/null +++ b/madara-bootstrapper @@ -0,0 +1 @@ +Subproject commit f717bf179581da53d68fee03b50ef78e0628ee20 diff --git a/crates/madara/cairo-test-contracts/Cargo.toml b/madara/crates/cairo-test-contracts/Cargo.toml similarity index 100% rename from crates/madara/cairo-test-contracts/Cargo.toml rename to madara/crates/cairo-test-contracts/Cargo.toml diff --git a/crates/madara/cairo-test-contracts/build.rs b/madara/crates/cairo-test-contracts/build.rs similarity index 100% rename from crates/madara/cairo-test-contracts/build.rs rename to madara/crates/cairo-test-contracts/build.rs diff --git a/crates/madara/cairo-test-contracts/src/lib.rs b/madara/crates/cairo-test-contracts/src/lib.rs similarity index 100% rename from crates/madara/cairo-test-contracts/src/lib.rs rename to madara/crates/cairo-test-contracts/src/lib.rs diff --git a/crates/madara/client/analytics/Cargo.toml b/madara/crates/client/analytics/Cargo.toml similarity index 100% rename from crates/madara/client/analytics/Cargo.toml rename to madara/crates/client/analytics/Cargo.toml diff --git a/crates/madara/client/analytics/src/lib.rs b/madara/crates/client/analytics/src/lib.rs similarity index 100% rename from crates/madara/client/analytics/src/lib.rs rename to madara/crates/client/analytics/src/lib.rs diff --git a/crates/madara/client/block_import/Cargo.toml b/madara/crates/client/block_import/Cargo.toml similarity index 100% rename from crates/madara/client/block_import/Cargo.toml rename to madara/crates/client/block_import/Cargo.toml diff --git a/crates/madara/client/block_import/src/lib.rs b/madara/crates/client/block_import/src/lib.rs similarity index 100% rename from crates/madara/client/block_import/src/lib.rs rename to madara/crates/client/block_import/src/lib.rs diff --git a/crates/madara/client/block_import/src/metrics.rs b/madara/crates/client/block_import/src/metrics.rs similarity index 100% rename from crates/madara/client/block_import/src/metrics.rs rename to madara/crates/client/block_import/src/metrics.rs diff --git a/crates/madara/client/block_import/src/pre_validate.rs b/madara/crates/client/block_import/src/pre_validate.rs similarity index 100% rename from crates/madara/client/block_import/src/pre_validate.rs rename to madara/crates/client/block_import/src/pre_validate.rs diff --git a/crates/madara/client/block_import/src/rayon.rs b/madara/crates/client/block_import/src/rayon.rs similarity index 100% rename from crates/madara/client/block_import/src/rayon.rs rename to madara/crates/client/block_import/src/rayon.rs diff --git a/crates/madara/client/block_import/src/tests.rs b/madara/crates/client/block_import/src/tests.rs similarity index 100% rename from crates/madara/client/block_import/src/tests.rs rename to madara/crates/client/block_import/src/tests.rs diff --git a/crates/madara/client/block_import/src/tests/block_import_utils.rs b/madara/crates/client/block_import/src/tests/block_import_utils.rs similarity index 100% rename from crates/madara/client/block_import/src/tests/block_import_utils.rs rename to madara/crates/client/block_import/src/tests/block_import_utils.rs diff --git a/crates/madara/client/block_import/src/types.rs b/madara/crates/client/block_import/src/types.rs similarity index 100% rename from crates/madara/client/block_import/src/types.rs rename to madara/crates/client/block_import/src/types.rs diff --git a/crates/madara/client/block_import/src/verify_apply.rs b/madara/crates/client/block_import/src/verify_apply.rs similarity index 100% rename from crates/madara/client/block_import/src/verify_apply.rs rename to madara/crates/client/block_import/src/verify_apply.rs diff --git a/crates/madara/client/block_import/src/verify_apply/classes.rs b/madara/crates/client/block_import/src/verify_apply/classes.rs similarity index 100% rename from crates/madara/client/block_import/src/verify_apply/classes.rs rename to madara/crates/client/block_import/src/verify_apply/classes.rs diff --git a/crates/madara/client/block_import/src/verify_apply/contracts.rs b/madara/crates/client/block_import/src/verify_apply/contracts.rs similarity index 100% rename from crates/madara/client/block_import/src/verify_apply/contracts.rs rename to madara/crates/client/block_import/src/verify_apply/contracts.rs diff --git a/crates/madara/client/block_production/Cargo.toml b/madara/crates/client/block_production/Cargo.toml similarity index 100% rename from crates/madara/client/block_production/Cargo.toml rename to madara/crates/client/block_production/Cargo.toml diff --git a/crates/madara/client/block_production/src/close_block.rs b/madara/crates/client/block_production/src/close_block.rs similarity index 100% rename from crates/madara/client/block_production/src/close_block.rs rename to madara/crates/client/block_production/src/close_block.rs diff --git a/crates/madara/client/block_production/src/finalize_execution_state.rs b/madara/crates/client/block_production/src/finalize_execution_state.rs similarity index 100% rename from crates/madara/client/block_production/src/finalize_execution_state.rs rename to madara/crates/client/block_production/src/finalize_execution_state.rs diff --git a/crates/madara/client/block_production/src/lib.rs b/madara/crates/client/block_production/src/lib.rs similarity index 100% rename from crates/madara/client/block_production/src/lib.rs rename to madara/crates/client/block_production/src/lib.rs diff --git a/crates/madara/client/block_production/src/metrics.rs b/madara/crates/client/block_production/src/metrics.rs similarity index 100% rename from crates/madara/client/block_production/src/metrics.rs rename to madara/crates/client/block_production/src/metrics.rs diff --git a/crates/madara/client/db/Cargo.toml b/madara/crates/client/db/Cargo.toml similarity index 100% rename from crates/madara/client/db/Cargo.toml rename to madara/crates/client/db/Cargo.toml diff --git a/crates/madara/client/db/build.rs b/madara/crates/client/db/build.rs similarity index 100% rename from crates/madara/client/db/build.rs rename to madara/crates/client/db/build.rs diff --git a/crates/madara/client/db/docs/flat_storage.md b/madara/crates/client/db/docs/flat_storage.md similarity index 100% rename from crates/madara/client/db/docs/flat_storage.md rename to madara/crates/client/db/docs/flat_storage.md diff --git a/crates/madara/client/db/docs/flat_storage.png b/madara/crates/client/db/docs/flat_storage.png similarity index 100% rename from crates/madara/client/db/docs/flat_storage.png rename to madara/crates/client/db/docs/flat_storage.png diff --git a/crates/madara/client/db/docs/flat_storage_iterator.png b/madara/crates/client/db/docs/flat_storage_iterator.png similarity index 100% rename from crates/madara/client/db/docs/flat_storage_iterator.png rename to madara/crates/client/db/docs/flat_storage_iterator.png diff --git a/crates/madara/client/db/src/block_db.rs b/madara/crates/client/db/src/block_db.rs similarity index 100% rename from crates/madara/client/db/src/block_db.rs rename to madara/crates/client/db/src/block_db.rs diff --git a/crates/madara/client/db/src/bonsai_db.rs b/madara/crates/client/db/src/bonsai_db.rs similarity index 100% rename from crates/madara/client/db/src/bonsai_db.rs rename to madara/crates/client/db/src/bonsai_db.rs diff --git a/crates/madara/client/db/src/class_db.rs b/madara/crates/client/db/src/class_db.rs similarity index 100% rename from crates/madara/client/db/src/class_db.rs rename to madara/crates/client/db/src/class_db.rs diff --git a/crates/madara/client/db/src/contract_db.rs b/madara/crates/client/db/src/contract_db.rs similarity index 100% rename from crates/madara/client/db/src/contract_db.rs rename to madara/crates/client/db/src/contract_db.rs diff --git a/crates/madara/client/db/src/db_block_id.rs b/madara/crates/client/db/src/db_block_id.rs similarity index 100% rename from crates/madara/client/db/src/db_block_id.rs rename to madara/crates/client/db/src/db_block_id.rs diff --git a/crates/madara/client/db/src/db_metrics.rs b/madara/crates/client/db/src/db_metrics.rs similarity index 100% rename from crates/madara/client/db/src/db_metrics.rs rename to madara/crates/client/db/src/db_metrics.rs diff --git a/crates/madara/client/db/src/db_version.rs b/madara/crates/client/db/src/db_version.rs similarity index 100% rename from crates/madara/client/db/src/db_version.rs rename to madara/crates/client/db/src/db_version.rs diff --git a/crates/madara/client/db/src/devnet_db.rs b/madara/crates/client/db/src/devnet_db.rs similarity index 100% rename from crates/madara/client/db/src/devnet_db.rs rename to madara/crates/client/db/src/devnet_db.rs diff --git a/crates/madara/client/db/src/error.rs b/madara/crates/client/db/src/error.rs similarity index 100% rename from crates/madara/client/db/src/error.rs rename to madara/crates/client/db/src/error.rs diff --git a/crates/madara/client/db/src/l1_db.rs b/madara/crates/client/db/src/l1_db.rs similarity index 100% rename from crates/madara/client/db/src/l1_db.rs rename to madara/crates/client/db/src/l1_db.rs diff --git a/crates/madara/client/db/src/lib.rs b/madara/crates/client/db/src/lib.rs similarity index 100% rename from crates/madara/client/db/src/lib.rs rename to madara/crates/client/db/src/lib.rs diff --git a/crates/madara/client/db/src/mempool_db.rs b/madara/crates/client/db/src/mempool_db.rs similarity index 100% rename from crates/madara/client/db/src/mempool_db.rs rename to madara/crates/client/db/src/mempool_db.rs diff --git a/crates/madara/client/db/src/rocksdb_options.rs b/madara/crates/client/db/src/rocksdb_options.rs similarity index 100% rename from crates/madara/client/db/src/rocksdb_options.rs rename to madara/crates/client/db/src/rocksdb_options.rs diff --git a/crates/madara/client/db/src/rocksdb_snapshot.rs b/madara/crates/client/db/src/rocksdb_snapshot.rs similarity index 100% rename from crates/madara/client/db/src/rocksdb_snapshot.rs rename to madara/crates/client/db/src/rocksdb_snapshot.rs diff --git a/crates/madara/client/db/src/snapshots.rs b/madara/crates/client/db/src/snapshots.rs similarity index 100% rename from crates/madara/client/db/src/snapshots.rs rename to madara/crates/client/db/src/snapshots.rs diff --git a/crates/madara/client/db/src/storage_updates.rs b/madara/crates/client/db/src/storage_updates.rs similarity index 100% rename from crates/madara/client/db/src/storage_updates.rs rename to madara/crates/client/db/src/storage_updates.rs diff --git a/crates/madara/client/db/src/tests.rs b/madara/crates/client/db/src/tests.rs similarity index 100% rename from crates/madara/client/db/src/tests.rs rename to madara/crates/client/db/src/tests.rs diff --git a/crates/madara/client/db/src/tests/common/mod.rs b/madara/crates/client/db/src/tests/common/mod.rs similarity index 100% rename from crates/madara/client/db/src/tests/common/mod.rs rename to madara/crates/client/db/src/tests/common/mod.rs diff --git a/crates/madara/client/db/src/tests/test_block.rs b/madara/crates/client/db/src/tests/test_block.rs similarity index 100% rename from crates/madara/client/db/src/tests/test_block.rs rename to madara/crates/client/db/src/tests/test_block.rs diff --git a/crates/madara/client/db/src/tests/test_open.rs b/madara/crates/client/db/src/tests/test_open.rs similarity index 100% rename from crates/madara/client/db/src/tests/test_open.rs rename to madara/crates/client/db/src/tests/test_open.rs diff --git a/crates/madara/client/devnet/Cargo.toml b/madara/crates/client/devnet/Cargo.toml similarity index 100% rename from crates/madara/client/devnet/Cargo.toml rename to madara/crates/client/devnet/Cargo.toml diff --git a/crates/madara/client/devnet/README.md b/madara/crates/client/devnet/README.md similarity index 100% rename from crates/madara/client/devnet/README.md rename to madara/crates/client/devnet/README.md diff --git a/crates/madara/client/devnet/src/balances.rs b/madara/crates/client/devnet/src/balances.rs similarity index 100% rename from crates/madara/client/devnet/src/balances.rs rename to madara/crates/client/devnet/src/balances.rs diff --git a/crates/madara/client/devnet/src/classes.rs b/madara/crates/client/devnet/src/classes.rs similarity index 100% rename from crates/madara/client/devnet/src/classes.rs rename to madara/crates/client/devnet/src/classes.rs diff --git a/crates/madara/client/devnet/src/contracts.rs b/madara/crates/client/devnet/src/contracts.rs similarity index 100% rename from crates/madara/client/devnet/src/contracts.rs rename to madara/crates/client/devnet/src/contracts.rs diff --git a/crates/madara/client/devnet/src/entrypoint.rs b/madara/crates/client/devnet/src/entrypoint.rs similarity index 100% rename from crates/madara/client/devnet/src/entrypoint.rs rename to madara/crates/client/devnet/src/entrypoint.rs diff --git a/crates/madara/client/devnet/src/lib.rs b/madara/crates/client/devnet/src/lib.rs similarity index 100% rename from crates/madara/client/devnet/src/lib.rs rename to madara/crates/client/devnet/src/lib.rs diff --git a/crates/madara/client/devnet/src/predeployed_contracts.rs b/madara/crates/client/devnet/src/predeployed_contracts.rs similarity index 100% rename from crates/madara/client/devnet/src/predeployed_contracts.rs rename to madara/crates/client/devnet/src/predeployed_contracts.rs diff --git a/crates/madara/client/eth/Cargo.toml b/madara/crates/client/eth/Cargo.toml similarity index 100% rename from crates/madara/client/eth/Cargo.toml rename to madara/crates/client/eth/Cargo.toml diff --git a/crates/madara/client/eth/README.md b/madara/crates/client/eth/README.md similarity index 100% rename from crates/madara/client/eth/README.md rename to madara/crates/client/eth/README.md diff --git a/crates/madara/client/eth/src/abis/starknet_core.json b/madara/crates/client/eth/src/abis/starknet_core.json similarity index 100% rename from crates/madara/client/eth/src/abis/starknet_core.json rename to madara/crates/client/eth/src/abis/starknet_core.json diff --git a/crates/madara/client/eth/src/client.rs b/madara/crates/client/eth/src/client.rs similarity index 100% rename from crates/madara/client/eth/src/client.rs rename to madara/crates/client/eth/src/client.rs diff --git a/crates/madara/client/eth/src/error.rs b/madara/crates/client/eth/src/error.rs similarity index 100% rename from crates/madara/client/eth/src/error.rs rename to madara/crates/client/eth/src/error.rs diff --git a/crates/madara/client/eth/src/l1_gas_price.rs b/madara/crates/client/eth/src/l1_gas_price.rs similarity index 100% rename from crates/madara/client/eth/src/l1_gas_price.rs rename to madara/crates/client/eth/src/l1_gas_price.rs diff --git a/crates/madara/client/eth/src/l1_messaging.rs b/madara/crates/client/eth/src/l1_messaging.rs similarity index 100% rename from crates/madara/client/eth/src/l1_messaging.rs rename to madara/crates/client/eth/src/l1_messaging.rs diff --git a/crates/madara/client/eth/src/lib.rs b/madara/crates/client/eth/src/lib.rs similarity index 100% rename from crates/madara/client/eth/src/lib.rs rename to madara/crates/client/eth/src/lib.rs diff --git a/crates/madara/client/eth/src/state_update.rs b/madara/crates/client/eth/src/state_update.rs similarity index 100% rename from crates/madara/client/eth/src/state_update.rs rename to madara/crates/client/eth/src/state_update.rs diff --git a/crates/madara/client/eth/src/sync.rs b/madara/crates/client/eth/src/sync.rs similarity index 100% rename from crates/madara/client/eth/src/sync.rs rename to madara/crates/client/eth/src/sync.rs diff --git a/crates/madara/client/eth/src/utils.rs b/madara/crates/client/eth/src/utils.rs similarity index 100% rename from crates/madara/client/eth/src/utils.rs rename to madara/crates/client/eth/src/utils.rs diff --git a/crates/madara/client/exec/Cargo.toml b/madara/crates/client/exec/Cargo.toml similarity index 100% rename from crates/madara/client/exec/Cargo.toml rename to madara/crates/client/exec/Cargo.toml diff --git a/crates/madara/client/exec/src/block_context.rs b/madara/crates/client/exec/src/block_context.rs similarity index 100% rename from crates/madara/client/exec/src/block_context.rs rename to madara/crates/client/exec/src/block_context.rs diff --git a/crates/madara/client/exec/src/blockifier_state_adapter.rs b/madara/crates/client/exec/src/blockifier_state_adapter.rs similarity index 100% rename from crates/madara/client/exec/src/blockifier_state_adapter.rs rename to madara/crates/client/exec/src/blockifier_state_adapter.rs diff --git a/crates/madara/client/exec/src/call.rs b/madara/crates/client/exec/src/call.rs similarity index 100% rename from crates/madara/client/exec/src/call.rs rename to madara/crates/client/exec/src/call.rs diff --git a/crates/madara/client/exec/src/execution.rs b/madara/crates/client/exec/src/execution.rs similarity index 100% rename from crates/madara/client/exec/src/execution.rs rename to madara/crates/client/exec/src/execution.rs diff --git a/crates/madara/client/exec/src/fee.rs b/madara/crates/client/exec/src/fee.rs similarity index 100% rename from crates/madara/client/exec/src/fee.rs rename to madara/crates/client/exec/src/fee.rs diff --git a/crates/madara/client/exec/src/lib.rs b/madara/crates/client/exec/src/lib.rs similarity index 100% rename from crates/madara/client/exec/src/lib.rs rename to madara/crates/client/exec/src/lib.rs diff --git a/crates/madara/client/exec/src/trace.rs b/madara/crates/client/exec/src/trace.rs similarity index 100% rename from crates/madara/client/exec/src/trace.rs rename to madara/crates/client/exec/src/trace.rs diff --git a/crates/madara/client/exec/src/transaction.rs b/madara/crates/client/exec/src/transaction.rs similarity index 100% rename from crates/madara/client/exec/src/transaction.rs rename to madara/crates/client/exec/src/transaction.rs diff --git a/crates/madara/client/gateway/client/Cargo.toml b/madara/crates/client/gateway/client/Cargo.toml similarity index 100% rename from crates/madara/client/gateway/client/Cargo.toml rename to madara/crates/client/gateway/client/Cargo.toml diff --git a/crates/madara/client/gateway/client/src/builder.rs b/madara/crates/client/gateway/client/src/builder.rs similarity index 100% rename from crates/madara/client/gateway/client/src/builder.rs rename to madara/crates/client/gateway/client/src/builder.rs diff --git a/crates/madara/client/gateway/client/src/lib.rs b/madara/crates/client/gateway/client/src/lib.rs similarity index 100% rename from crates/madara/client/gateway/client/src/lib.rs rename to madara/crates/client/gateway/client/src/lib.rs diff --git a/crates/madara/client/gateway/client/src/methods.rs b/madara/crates/client/gateway/client/src/methods.rs similarity index 100% rename from crates/madara/client/gateway/client/src/methods.rs rename to madara/crates/client/gateway/client/src/methods.rs diff --git a/crates/madara/client/gateway/client/src/mocks/class_block_0_0x010455c752b86932ce552f2b0fe81a880746649b9aee7e0d842bf3f52378f9f8.gz b/madara/crates/client/gateway/client/src/mocks/class_block_0_0x010455c752b86932ce552f2b0fe81a880746649b9aee7e0d842bf3f52378f9f8.gz similarity index 100% rename from crates/madara/client/gateway/client/src/mocks/class_block_0_0x010455c752b86932ce552f2b0fe81a880746649b9aee7e0d842bf3f52378f9f8.gz rename to madara/crates/client/gateway/client/src/mocks/class_block_0_0x010455c752b86932ce552f2b0fe81a880746649b9aee7e0d842bf3f52378f9f8.gz diff --git a/crates/madara/client/gateway/client/src/mocks/class_block_1342_account_0x07595b4f7d50010ceb00230d8b5656e3c3dd201b6df35d805d3f2988c69a1432.gz b/madara/crates/client/gateway/client/src/mocks/class_block_1342_account_0x07595b4f7d50010ceb00230d8b5656e3c3dd201b6df35d805d3f2988c69a1432.gz similarity index 100% rename from crates/madara/client/gateway/client/src/mocks/class_block_1342_account_0x07595b4f7d50010ceb00230d8b5656e3c3dd201b6df35d805d3f2988c69a1432.gz rename to madara/crates/client/gateway/client/src/mocks/class_block_1342_account_0x07595b4f7d50010ceb00230d8b5656e3c3dd201b6df35d805d3f2988c69a1432.gz diff --git a/crates/madara/client/gateway/client/src/mocks/class_block_1343_proxy_0x071c3c99f5cf76fc19945d4b8b7d34c7c5528f22730d56192b50c6bbfd338a64.gz b/madara/crates/client/gateway/client/src/mocks/class_block_1343_proxy_0x071c3c99f5cf76fc19945d4b8b7d34c7c5528f22730d56192b50c6bbfd338a64.gz similarity index 100% rename from crates/madara/client/gateway/client/src/mocks/class_block_1343_proxy_0x071c3c99f5cf76fc19945d4b8b7d34c7c5528f22730d56192b50c6bbfd338a64.gz rename to madara/crates/client/gateway/client/src/mocks/class_block_1343_proxy_0x071c3c99f5cf76fc19945d4b8b7d34c7c5528f22730d56192b50c6bbfd338a64.gz diff --git a/crates/madara/client/gateway/client/src/mocks/class_block_18507_erc1155_0x04be7f1bace6f593abd8e56947c11151f45498030748a950fdaf0b79ac3dc03f.gz b/madara/crates/client/gateway/client/src/mocks/class_block_18507_erc1155_0x04be7f1bace6f593abd8e56947c11151f45498030748a950fdaf0b79ac3dc03f.gz similarity index 100% rename from crates/madara/client/gateway/client/src/mocks/class_block_18507_erc1155_0x04be7f1bace6f593abd8e56947c11151f45498030748a950fdaf0b79ac3dc03f.gz rename to madara/crates/client/gateway/client/src/mocks/class_block_18507_erc1155_0x04be7f1bace6f593abd8e56947c11151f45498030748a950fdaf0b79ac3dc03f.gz diff --git a/crates/madara/client/gateway/client/src/mocks/class_block_1981_erc20_0x07543f8eb21f10b1827a495084697a519274ac9c1a1fbf931bac40133a6b9c15.gz b/madara/crates/client/gateway/client/src/mocks/class_block_1981_erc20_0x07543f8eb21f10b1827a495084697a519274ac9c1a1fbf931bac40133a6b9c15.gz similarity index 100% rename from crates/madara/client/gateway/client/src/mocks/class_block_1981_erc20_0x07543f8eb21f10b1827a495084697a519274ac9c1a1fbf931bac40133a6b9c15.gz rename to madara/crates/client/gateway/client/src/mocks/class_block_1981_erc20_0x07543f8eb21f10b1827a495084697a519274ac9c1a1fbf931bac40133a6b9c15.gz diff --git a/crates/madara/client/gateway/client/src/mocks/class_block_3125_erc721_0x074a7ed7f1236225600f355efe70812129658c82c295ff0f8307b3fad4bf09a9.gz b/madara/crates/client/gateway/client/src/mocks/class_block_3125_erc721_0x074a7ed7f1236225600f355efe70812129658c82c295ff0f8307b3fad4bf09a9.gz similarity index 100% rename from crates/madara/client/gateway/client/src/mocks/class_block_3125_erc721_0x074a7ed7f1236225600f355efe70812129658c82c295ff0f8307b3fad4bf09a9.gz rename to madara/crates/client/gateway/client/src/mocks/class_block_3125_erc721_0x074a7ed7f1236225600f355efe70812129658c82c295ff0f8307b3fad4bf09a9.gz diff --git a/crates/madara/client/gateway/client/src/mocks/signature_block_0.gz b/madara/crates/client/gateway/client/src/mocks/signature_block_0.gz similarity index 100% rename from crates/madara/client/gateway/client/src/mocks/signature_block_0.gz rename to madara/crates/client/gateway/client/src/mocks/signature_block_0.gz diff --git a/crates/madara/client/gateway/client/src/mocks/signature_block_1.gz b/madara/crates/client/gateway/client/src/mocks/signature_block_1.gz similarity index 100% rename from crates/madara/client/gateway/client/src/mocks/signature_block_1.gz rename to madara/crates/client/gateway/client/src/mocks/signature_block_1.gz diff --git a/crates/madara/client/gateway/client/src/mocks/signature_block_2.gz b/madara/crates/client/gateway/client/src/mocks/signature_block_2.gz similarity index 100% rename from crates/madara/client/gateway/client/src/mocks/signature_block_2.gz rename to madara/crates/client/gateway/client/src/mocks/signature_block_2.gz diff --git a/crates/madara/client/gateway/client/src/mocks/state_update_and_block_0.gz b/madara/crates/client/gateway/client/src/mocks/state_update_and_block_0.gz similarity index 100% rename from crates/madara/client/gateway/client/src/mocks/state_update_and_block_0.gz rename to madara/crates/client/gateway/client/src/mocks/state_update_and_block_0.gz diff --git a/crates/madara/client/gateway/client/src/mocks/state_update_and_block_1.gz b/madara/crates/client/gateway/client/src/mocks/state_update_and_block_1.gz similarity index 100% rename from crates/madara/client/gateway/client/src/mocks/state_update_and_block_1.gz rename to madara/crates/client/gateway/client/src/mocks/state_update_and_block_1.gz diff --git a/crates/madara/client/gateway/client/src/mocks/state_update_and_block_2.gz b/madara/crates/client/gateway/client/src/mocks/state_update_and_block_2.gz similarity index 100% rename from crates/madara/client/gateway/client/src/mocks/state_update_and_block_2.gz rename to madara/crates/client/gateway/client/src/mocks/state_update_and_block_2.gz diff --git a/crates/madara/client/gateway/client/src/request_builder.rs b/madara/crates/client/gateway/client/src/request_builder.rs similarity index 100% rename from crates/madara/client/gateway/client/src/request_builder.rs rename to madara/crates/client/gateway/client/src/request_builder.rs diff --git a/crates/madara/client/gateway/server/Cargo.toml b/madara/crates/client/gateway/server/Cargo.toml similarity index 100% rename from crates/madara/client/gateway/server/Cargo.toml rename to madara/crates/client/gateway/server/Cargo.toml diff --git a/crates/madara/client/gateway/server/src/error.rs b/madara/crates/client/gateway/server/src/error.rs similarity index 100% rename from crates/madara/client/gateway/server/src/error.rs rename to madara/crates/client/gateway/server/src/error.rs diff --git a/crates/madara/client/gateway/server/src/handler.rs b/madara/crates/client/gateway/server/src/handler.rs similarity index 100% rename from crates/madara/client/gateway/server/src/handler.rs rename to madara/crates/client/gateway/server/src/handler.rs diff --git a/crates/madara/client/gateway/server/src/helpers.rs b/madara/crates/client/gateway/server/src/helpers.rs similarity index 100% rename from crates/madara/client/gateway/server/src/helpers.rs rename to madara/crates/client/gateway/server/src/helpers.rs diff --git a/crates/madara/client/gateway/server/src/lib.rs b/madara/crates/client/gateway/server/src/lib.rs similarity index 100% rename from crates/madara/client/gateway/server/src/lib.rs rename to madara/crates/client/gateway/server/src/lib.rs diff --git a/crates/madara/client/gateway/server/src/router.rs b/madara/crates/client/gateway/server/src/router.rs similarity index 100% rename from crates/madara/client/gateway/server/src/router.rs rename to madara/crates/client/gateway/server/src/router.rs diff --git a/crates/madara/client/gateway/server/src/service.rs b/madara/crates/client/gateway/server/src/service.rs similarity index 100% rename from crates/madara/client/gateway/server/src/service.rs rename to madara/crates/client/gateway/server/src/service.rs diff --git a/crates/madara/client/mempool/Cargo.toml b/madara/crates/client/mempool/Cargo.toml similarity index 100% rename from crates/madara/client/mempool/Cargo.toml rename to madara/crates/client/mempool/Cargo.toml diff --git a/crates/madara/client/mempool/proptest-regressions/inner/proptest.txt b/madara/crates/client/mempool/proptest-regressions/inner/proptest.txt similarity index 100% rename from crates/madara/client/mempool/proptest-regressions/inner/proptest.txt rename to madara/crates/client/mempool/proptest-regressions/inner/proptest.txt diff --git a/crates/madara/client/mempool/src/header.rs b/madara/crates/client/mempool/src/header.rs similarity index 100% rename from crates/madara/client/mempool/src/header.rs rename to madara/crates/client/mempool/src/header.rs diff --git a/crates/madara/client/mempool/src/inner/deployed_contracts.rs b/madara/crates/client/mempool/src/inner/deployed_contracts.rs similarity index 100% rename from crates/madara/client/mempool/src/inner/deployed_contracts.rs rename to madara/crates/client/mempool/src/inner/deployed_contracts.rs diff --git a/crates/madara/client/mempool/src/inner/intent.rs b/madara/crates/client/mempool/src/inner/intent.rs similarity index 100% rename from crates/madara/client/mempool/src/inner/intent.rs rename to madara/crates/client/mempool/src/inner/intent.rs diff --git a/crates/madara/client/mempool/src/inner/limits.rs b/madara/crates/client/mempool/src/inner/limits.rs similarity index 100% rename from crates/madara/client/mempool/src/inner/limits.rs rename to madara/crates/client/mempool/src/inner/limits.rs diff --git a/crates/madara/client/mempool/src/inner/mod.rs b/madara/crates/client/mempool/src/inner/mod.rs similarity index 100% rename from crates/madara/client/mempool/src/inner/mod.rs rename to madara/crates/client/mempool/src/inner/mod.rs diff --git a/crates/madara/client/mempool/src/inner/nonce_mapping.rs b/madara/crates/client/mempool/src/inner/nonce_mapping.rs similarity index 100% rename from crates/madara/client/mempool/src/inner/nonce_mapping.rs rename to madara/crates/client/mempool/src/inner/nonce_mapping.rs diff --git a/crates/madara/client/mempool/src/inner/proptest.rs b/madara/crates/client/mempool/src/inner/proptest.rs similarity index 100% rename from crates/madara/client/mempool/src/inner/proptest.rs rename to madara/crates/client/mempool/src/inner/proptest.rs diff --git a/crates/madara/client/mempool/src/inner/tx.rs b/madara/crates/client/mempool/src/inner/tx.rs similarity index 100% rename from crates/madara/client/mempool/src/inner/tx.rs rename to madara/crates/client/mempool/src/inner/tx.rs diff --git a/crates/madara/client/mempool/src/l1.rs b/madara/crates/client/mempool/src/l1.rs similarity index 100% rename from crates/madara/client/mempool/src/l1.rs rename to madara/crates/client/mempool/src/l1.rs diff --git a/crates/madara/client/mempool/src/lib.rs b/madara/crates/client/mempool/src/lib.rs similarity index 100% rename from crates/madara/client/mempool/src/lib.rs rename to madara/crates/client/mempool/src/lib.rs diff --git a/crates/madara/client/mempool/src/metrics.rs b/madara/crates/client/mempool/src/metrics.rs similarity index 100% rename from crates/madara/client/mempool/src/metrics.rs rename to madara/crates/client/mempool/src/metrics.rs diff --git a/crates/madara/client/mempool/src/tx.rs b/madara/crates/client/mempool/src/tx.rs similarity index 100% rename from crates/madara/client/mempool/src/tx.rs rename to madara/crates/client/mempool/src/tx.rs diff --git a/crates/madara/client/rpc/Cargo.toml b/madara/crates/client/rpc/Cargo.toml similarity index 100% rename from crates/madara/client/rpc/Cargo.toml rename to madara/crates/client/rpc/Cargo.toml diff --git a/crates/madara/client/rpc/src/RPC.md b/madara/crates/client/rpc/src/RPC.md similarity index 100% rename from crates/madara/client/rpc/src/RPC.md rename to madara/crates/client/rpc/src/RPC.md diff --git a/crates/madara/client/rpc/src/constants.rs b/madara/crates/client/rpc/src/constants.rs similarity index 100% rename from crates/madara/client/rpc/src/constants.rs rename to madara/crates/client/rpc/src/constants.rs diff --git a/crates/madara/client/rpc/src/errors.rs b/madara/crates/client/rpc/src/errors.rs similarity index 100% rename from crates/madara/client/rpc/src/errors.rs rename to madara/crates/client/rpc/src/errors.rs diff --git a/crates/madara/client/rpc/src/lib.rs b/madara/crates/client/rpc/src/lib.rs similarity index 100% rename from crates/madara/client/rpc/src/lib.rs rename to madara/crates/client/rpc/src/lib.rs diff --git a/crates/madara/client/rpc/src/providers/forward_to_provider.rs b/madara/crates/client/rpc/src/providers/forward_to_provider.rs similarity index 100% rename from crates/madara/client/rpc/src/providers/forward_to_provider.rs rename to madara/crates/client/rpc/src/providers/forward_to_provider.rs diff --git a/crates/madara/client/rpc/src/providers/mempool.rs b/madara/crates/client/rpc/src/providers/mempool.rs similarity index 100% rename from crates/madara/client/rpc/src/providers/mempool.rs rename to madara/crates/client/rpc/src/providers/mempool.rs diff --git a/crates/madara/client/rpc/src/providers/mod.rs b/madara/crates/client/rpc/src/providers/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/providers/mod.rs rename to madara/crates/client/rpc/src/providers/mod.rs diff --git a/crates/madara/client/rpc/src/test_utils.rs b/madara/crates/client/rpc/src/test_utils.rs similarity index 100% rename from crates/madara/client/rpc/src/test_utils.rs rename to madara/crates/client/rpc/src/test_utils.rs diff --git a/crates/madara/client/rpc/src/types.rs b/madara/crates/client/rpc/src/types.rs similarity index 100% rename from crates/madara/client/rpc/src/types.rs rename to madara/crates/client/rpc/src/types.rs diff --git a/crates/madara/client/rpc/src/utils/mod.rs b/madara/crates/client/rpc/src/utils/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/utils/mod.rs rename to madara/crates/client/rpc/src/utils/mod.rs diff --git a/crates/madara/client/rpc/src/versions/admin/mod.rs b/madara/crates/client/rpc/src/versions/admin/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/admin/mod.rs rename to madara/crates/client/rpc/src/versions/admin/mod.rs diff --git a/crates/madara/client/rpc/src/versions/admin/v0_1_0/api.rs b/madara/crates/client/rpc/src/versions/admin/v0_1_0/api.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/admin/v0_1_0/api.rs rename to madara/crates/client/rpc/src/versions/admin/v0_1_0/api.rs diff --git a/crates/madara/client/rpc/src/versions/admin/v0_1_0/methods/mod.rs b/madara/crates/client/rpc/src/versions/admin/v0_1_0/methods/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/admin/v0_1_0/methods/mod.rs rename to madara/crates/client/rpc/src/versions/admin/v0_1_0/methods/mod.rs diff --git a/crates/madara/client/rpc/src/versions/admin/v0_1_0/methods/services.rs b/madara/crates/client/rpc/src/versions/admin/v0_1_0/methods/services.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/admin/v0_1_0/methods/services.rs rename to madara/crates/client/rpc/src/versions/admin/v0_1_0/methods/services.rs diff --git a/crates/madara/client/rpc/src/versions/admin/v0_1_0/methods/status.rs b/madara/crates/client/rpc/src/versions/admin/v0_1_0/methods/status.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/admin/v0_1_0/methods/status.rs rename to madara/crates/client/rpc/src/versions/admin/v0_1_0/methods/status.rs diff --git a/crates/madara/client/rpc/src/versions/admin/v0_1_0/methods/write.rs b/madara/crates/client/rpc/src/versions/admin/v0_1_0/methods/write.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/admin/v0_1_0/methods/write.rs rename to madara/crates/client/rpc/src/versions/admin/v0_1_0/methods/write.rs diff --git a/crates/madara/client/rpc/src/versions/admin/v0_1_0/mod.rs b/madara/crates/client/rpc/src/versions/admin/v0_1_0/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/admin/v0_1_0/mod.rs rename to madara/crates/client/rpc/src/versions/admin/v0_1_0/mod.rs diff --git a/crates/madara/client/rpc/src/versions/mod.rs b/madara/crates/client/rpc/src/versions/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/mod.rs rename to madara/crates/client/rpc/src/versions/mod.rs diff --git a/crates/madara/client/rpc/src/versions/user/mod.rs b/madara/crates/client/rpc/src/versions/user/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/mod.rs rename to madara/crates/client/rpc/src/versions/user/mod.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/api.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/api.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/api.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/api.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/mod.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/mod.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/mod.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/block_hash_and_number.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/block_hash_and_number.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/block_hash_and_number.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/block_hash_and_number.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/call.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/call.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/call.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/call.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/estimate_fee.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/estimate_fee.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/estimate_fee.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/estimate_fee.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/estimate_message_fee.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/estimate_message_fee.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/estimate_message_fee.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/estimate_message_fee.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_transaction_count.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_transaction_count.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_transaction_count.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_transaction_count.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_with_receipts.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_with_receipts.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_with_receipts.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_with_receipts.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_with_tx_hashes.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_with_tx_hashes.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_with_tx_hashes.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_with_tx_hashes.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_with_txs.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_with_txs.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_with_txs.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_block_with_txs.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_class.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_class.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_class.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_class.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_class_at.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_class_at.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_class_at.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_class_at.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_class_hash_at.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_class_hash_at.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_class_hash_at.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_class_hash_at.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_events.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_events.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_events.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_events.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_nonce.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_nonce.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_nonce.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_nonce.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_state_update.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_state_update.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_state_update.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_state_update.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_storage_at.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_storage_at.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_storage_at.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_storage_at.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_by_block_id_and_index.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_by_block_id_and_index.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_by_block_id_and_index.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_by_block_id_and_index.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_by_hash.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_by_hash.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_by_hash.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_by_hash.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_receipt.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_receipt.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_receipt.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_receipt.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_status.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_status.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_status.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/get_transaction_status.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/lib.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/lib.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/lib.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/lib.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/mod.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/mod.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/mod.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/syncing.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/syncing.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/read/syncing.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/read/syncing.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/trace/mod.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/trace/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/trace/mod.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/trace/mod.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/trace/simulate_transactions.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/trace/simulate_transactions.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/trace/simulate_transactions.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/trace/simulate_transactions.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/trace/trace_block_transactions.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/trace/trace_block_transactions.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/trace/trace_block_transactions.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/trace/trace_block_transactions.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/trace/trace_transaction.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/trace/trace_transaction.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/trace/trace_transaction.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/trace/trace_transaction.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/methods/write/mod.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/methods/write/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/methods/write/mod.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/methods/write/mod.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_7_1/mod.rs b/madara/crates/client/rpc/src/versions/user/v0_7_1/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_7_1/mod.rs rename to madara/crates/client/rpc/src/versions/user/v0_7_1/mod.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_8_0/api.rs b/madara/crates/client/rpc/src/versions/user/v0_8_0/api.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_8_0/api.rs rename to madara/crates/client/rpc/src/versions/user/v0_8_0/api.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_8_0/methods/mod.rs b/madara/crates/client/rpc/src/versions/user/v0_8_0/methods/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_8_0/methods/mod.rs rename to madara/crates/client/rpc/src/versions/user/v0_8_0/methods/mod.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_8_0/methods/read/get_compiled_casm.rs b/madara/crates/client/rpc/src/versions/user/v0_8_0/methods/read/get_compiled_casm.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_8_0/methods/read/get_compiled_casm.rs rename to madara/crates/client/rpc/src/versions/user/v0_8_0/methods/read/get_compiled_casm.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_8_0/methods/read/get_storage_proof.rs b/madara/crates/client/rpc/src/versions/user/v0_8_0/methods/read/get_storage_proof.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_8_0/methods/read/get_storage_proof.rs rename to madara/crates/client/rpc/src/versions/user/v0_8_0/methods/read/get_storage_proof.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_8_0/methods/read/mod.rs b/madara/crates/client/rpc/src/versions/user/v0_8_0/methods/read/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_8_0/methods/read/mod.rs rename to madara/crates/client/rpc/src/versions/user/v0_8_0/methods/read/mod.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_8_0/methods/ws/lib.rs b/madara/crates/client/rpc/src/versions/user/v0_8_0/methods/ws/lib.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_8_0/methods/ws/lib.rs rename to madara/crates/client/rpc/src/versions/user/v0_8_0/methods/ws/lib.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_8_0/methods/ws/mod.rs b/madara/crates/client/rpc/src/versions/user/v0_8_0/methods/ws/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_8_0/methods/ws/mod.rs rename to madara/crates/client/rpc/src/versions/user/v0_8_0/methods/ws/mod.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_8_0/methods/ws/subscribe_events.rs b/madara/crates/client/rpc/src/versions/user/v0_8_0/methods/ws/subscribe_events.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_8_0/methods/ws/subscribe_events.rs rename to madara/crates/client/rpc/src/versions/user/v0_8_0/methods/ws/subscribe_events.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_8_0/methods/ws/subscribe_new_heads.rs b/madara/crates/client/rpc/src/versions/user/v0_8_0/methods/ws/subscribe_new_heads.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_8_0/methods/ws/subscribe_new_heads.rs rename to madara/crates/client/rpc/src/versions/user/v0_8_0/methods/ws/subscribe_new_heads.rs diff --git a/crates/madara/client/rpc/src/versions/user/v0_8_0/mod.rs b/madara/crates/client/rpc/src/versions/user/v0_8_0/mod.rs similarity index 100% rename from crates/madara/client/rpc/src/versions/user/v0_8_0/mod.rs rename to madara/crates/client/rpc/src/versions/user/v0_8_0/mod.rs diff --git a/crates/madara/client/sync/Cargo.toml b/madara/crates/client/sync/Cargo.toml similarity index 100% rename from crates/madara/client/sync/Cargo.toml rename to madara/crates/client/sync/Cargo.toml diff --git a/crates/madara/client/sync/src/fetch/fetchers.rs b/madara/crates/client/sync/src/fetch/fetchers.rs similarity index 100% rename from crates/madara/client/sync/src/fetch/fetchers.rs rename to madara/crates/client/sync/src/fetch/fetchers.rs diff --git a/crates/madara/client/sync/src/fetch/fetchers_real_fgw_test.rs b/madara/crates/client/sync/src/fetch/fetchers_real_fgw_test.rs similarity index 100% rename from crates/madara/client/sync/src/fetch/fetchers_real_fgw_test.rs rename to madara/crates/client/sync/src/fetch/fetchers_real_fgw_test.rs diff --git a/crates/madara/client/sync/src/fetch/mod.rs b/madara/crates/client/sync/src/fetch/mod.rs similarity index 100% rename from crates/madara/client/sync/src/fetch/mod.rs rename to madara/crates/client/sync/src/fetch/mod.rs diff --git a/crates/madara/client/sync/src/l2.rs b/madara/crates/client/sync/src/l2.rs similarity index 100% rename from crates/madara/client/sync/src/l2.rs rename to madara/crates/client/sync/src/l2.rs diff --git a/crates/madara/client/sync/src/lib.rs b/madara/crates/client/sync/src/lib.rs similarity index 100% rename from crates/madara/client/sync/src/lib.rs rename to madara/crates/client/sync/src/lib.rs diff --git a/crates/madara/client/sync/src/metrics/block_metrics.rs b/madara/crates/client/sync/src/metrics/block_metrics.rs similarity index 100% rename from crates/madara/client/sync/src/metrics/block_metrics.rs rename to madara/crates/client/sync/src/metrics/block_metrics.rs diff --git a/crates/madara/client/sync/src/metrics/mod.rs b/madara/crates/client/sync/src/metrics/mod.rs similarity index 100% rename from crates/madara/client/sync/src/metrics/mod.rs rename to madara/crates/client/sync/src/metrics/mod.rs diff --git a/crates/madara/client/sync/src/tests/mod.rs b/madara/crates/client/sync/src/tests/mod.rs similarity index 100% rename from crates/madara/client/sync/src/tests/mod.rs rename to madara/crates/client/sync/src/tests/mod.rs diff --git a/crates/madara/client/sync/src/tests/utils/gateway.rs b/madara/crates/client/sync/src/tests/utils/gateway.rs similarity index 100% rename from crates/madara/client/sync/src/tests/utils/gateway.rs rename to madara/crates/client/sync/src/tests/utils/gateway.rs diff --git a/crates/madara/client/sync/src/tests/utils/mod.rs b/madara/crates/client/sync/src/tests/utils/mod.rs similarity index 100% rename from crates/madara/client/sync/src/tests/utils/mod.rs rename to madara/crates/client/sync/src/tests/utils/mod.rs diff --git a/crates/madara/client/sync/src/tests/utils/read_resource.rs b/madara/crates/client/sync/src/tests/utils/read_resource.rs similarity index 100% rename from crates/madara/client/sync/src/tests/utils/read_resource.rs rename to madara/crates/client/sync/src/tests/utils/read_resource.rs diff --git a/crates/madara/client/sync/src/tests/utils/retry.rs b/madara/crates/client/sync/src/tests/utils/retry.rs similarity index 100% rename from crates/madara/client/sync/src/tests/utils/retry.rs rename to madara/crates/client/sync/src/tests/utils/retry.rs diff --git a/crates/madara/client/sync/test-data/block_0.json b/madara/crates/client/sync/test-data/block_0.json similarity index 100% rename from crates/madara/client/sync/test-data/block_0.json rename to madara/crates/client/sync/test-data/block_0.json diff --git a/crates/madara/client/sync/test-data/block_724130.json b/madara/crates/client/sync/test-data/block_724130.json similarity index 100% rename from crates/madara/client/sync/test-data/block_724130.json rename to madara/crates/client/sync/test-data/block_724130.json diff --git a/crates/madara/client/telemetry/Cargo.toml b/madara/crates/client/telemetry/Cargo.toml similarity index 100% rename from crates/madara/client/telemetry/Cargo.toml rename to madara/crates/client/telemetry/Cargo.toml diff --git a/crates/madara/client/telemetry/build.rs b/madara/crates/client/telemetry/build.rs similarity index 100% rename from crates/madara/client/telemetry/build.rs rename to madara/crates/client/telemetry/build.rs diff --git a/crates/madara/client/telemetry/src/lib.rs b/madara/crates/client/telemetry/src/lib.rs similarity index 100% rename from crates/madara/client/telemetry/src/lib.rs rename to madara/crates/client/telemetry/src/lib.rs diff --git a/crates/madara/client/telemetry/src/sysinfo.rs b/madara/crates/client/telemetry/src/sysinfo.rs similarity index 100% rename from crates/madara/client/telemetry/src/sysinfo.rs rename to madara/crates/client/telemetry/src/sysinfo.rs diff --git a/crates/madara/node/Cargo.toml b/madara/crates/node/Cargo.toml similarity index 100% rename from crates/madara/node/Cargo.toml rename to madara/crates/node/Cargo.toml diff --git a/crates/madara/node/build.rs b/madara/crates/node/build.rs similarity index 100% rename from crates/madara/node/build.rs rename to madara/crates/node/build.rs diff --git a/crates/madara/node/src/cli/analytics.rs b/madara/crates/node/src/cli/analytics.rs similarity index 100% rename from crates/madara/node/src/cli/analytics.rs rename to madara/crates/node/src/cli/analytics.rs diff --git a/crates/madara/node/src/cli/block_production.rs b/madara/crates/node/src/cli/block_production.rs similarity index 100% rename from crates/madara/node/src/cli/block_production.rs rename to madara/crates/node/src/cli/block_production.rs diff --git a/crates/madara/node/src/cli/chain_config_overrides.rs b/madara/crates/node/src/cli/chain_config_overrides.rs similarity index 100% rename from crates/madara/node/src/cli/chain_config_overrides.rs rename to madara/crates/node/src/cli/chain_config_overrides.rs diff --git a/crates/madara/node/src/cli/db.rs b/madara/crates/node/src/cli/db.rs similarity index 100% rename from crates/madara/node/src/cli/db.rs rename to madara/crates/node/src/cli/db.rs diff --git a/crates/madara/node/src/cli/gateway.rs b/madara/crates/node/src/cli/gateway.rs similarity index 100% rename from crates/madara/node/src/cli/gateway.rs rename to madara/crates/node/src/cli/gateway.rs diff --git a/crates/madara/node/src/cli/l1.rs b/madara/crates/node/src/cli/l1.rs similarity index 100% rename from crates/madara/node/src/cli/l1.rs rename to madara/crates/node/src/cli/l1.rs diff --git a/crates/madara/node/src/cli/l2.rs b/madara/crates/node/src/cli/l2.rs similarity index 100% rename from crates/madara/node/src/cli/l2.rs rename to madara/crates/node/src/cli/l2.rs diff --git a/crates/madara/node/src/cli/mod.rs b/madara/crates/node/src/cli/mod.rs similarity index 100% rename from crates/madara/node/src/cli/mod.rs rename to madara/crates/node/src/cli/mod.rs diff --git a/crates/madara/node/src/cli/rpc.rs b/madara/crates/node/src/cli/rpc.rs similarity index 100% rename from crates/madara/node/src/cli/rpc.rs rename to madara/crates/node/src/cli/rpc.rs diff --git a/crates/madara/node/src/cli/telemetry.rs b/madara/crates/node/src/cli/telemetry.rs similarity index 100% rename from crates/madara/node/src/cli/telemetry.rs rename to madara/crates/node/src/cli/telemetry.rs diff --git a/crates/madara/node/src/main.rs b/madara/crates/node/src/main.rs similarity index 100% rename from crates/madara/node/src/main.rs rename to madara/crates/node/src/main.rs diff --git a/crates/madara/node/src/service/block_production.rs b/madara/crates/node/src/service/block_production.rs similarity index 100% rename from crates/madara/node/src/service/block_production.rs rename to madara/crates/node/src/service/block_production.rs diff --git a/crates/madara/node/src/service/database.rs b/madara/crates/node/src/service/database.rs similarity index 100% rename from crates/madara/node/src/service/database.rs rename to madara/crates/node/src/service/database.rs diff --git a/crates/madara/node/src/service/gateway.rs b/madara/crates/node/src/service/gateway.rs similarity index 100% rename from crates/madara/node/src/service/gateway.rs rename to madara/crates/node/src/service/gateway.rs diff --git a/crates/madara/node/src/service/l1.rs b/madara/crates/node/src/service/l1.rs similarity index 100% rename from crates/madara/node/src/service/l1.rs rename to madara/crates/node/src/service/l1.rs diff --git a/crates/madara/node/src/service/l2.rs b/madara/crates/node/src/service/l2.rs similarity index 100% rename from crates/madara/node/src/service/l2.rs rename to madara/crates/node/src/service/l2.rs diff --git a/crates/madara/node/src/service/mod.rs b/madara/crates/node/src/service/mod.rs similarity index 100% rename from crates/madara/node/src/service/mod.rs rename to madara/crates/node/src/service/mod.rs diff --git a/crates/madara/node/src/service/rpc/metrics.rs b/madara/crates/node/src/service/rpc/metrics.rs similarity index 100% rename from crates/madara/node/src/service/rpc/metrics.rs rename to madara/crates/node/src/service/rpc/metrics.rs diff --git a/crates/madara/node/src/service/rpc/middleware.rs b/madara/crates/node/src/service/rpc/middleware.rs similarity index 100% rename from crates/madara/node/src/service/rpc/middleware.rs rename to madara/crates/node/src/service/rpc/middleware.rs diff --git a/crates/madara/node/src/service/rpc/mod.rs b/madara/crates/node/src/service/rpc/mod.rs similarity index 100% rename from crates/madara/node/src/service/rpc/mod.rs rename to madara/crates/node/src/service/rpc/mod.rs diff --git a/crates/madara/node/src/service/rpc/server.rs b/madara/crates/node/src/service/rpc/server.rs similarity index 100% rename from crates/madara/node/src/service/rpc/server.rs rename to madara/crates/node/src/service/rpc/server.rs diff --git a/crates/madara/node/src/util.rs b/madara/crates/node/src/util.rs similarity index 100% rename from crates/madara/node/src/util.rs rename to madara/crates/node/src/util.rs diff --git a/crates/madara/primitives/block/Cargo.toml b/madara/crates/primitives/block/Cargo.toml similarity index 100% rename from crates/madara/primitives/block/Cargo.toml rename to madara/crates/primitives/block/Cargo.toml diff --git a/crates/madara/primitives/block/src/header.rs b/madara/crates/primitives/block/src/header.rs similarity index 100% rename from crates/madara/primitives/block/src/header.rs rename to madara/crates/primitives/block/src/header.rs diff --git a/crates/madara/primitives/block/src/lib.rs b/madara/crates/primitives/block/src/lib.rs similarity index 100% rename from crates/madara/primitives/block/src/lib.rs rename to madara/crates/primitives/block/src/lib.rs diff --git a/crates/madara/primitives/chain_config/Cargo.toml b/madara/crates/primitives/chain_config/Cargo.toml similarity index 100% rename from crates/madara/primitives/chain_config/Cargo.toml rename to madara/crates/primitives/chain_config/Cargo.toml diff --git a/crates/madara/primitives/chain_config/resources/versioned_constants_13_0.json b/madara/crates/primitives/chain_config/resources/versioned_constants_13_0.json similarity index 100% rename from crates/madara/primitives/chain_config/resources/versioned_constants_13_0.json rename to madara/crates/primitives/chain_config/resources/versioned_constants_13_0.json diff --git a/crates/madara/primitives/chain_config/resources/versioned_constants_13_1.json b/madara/crates/primitives/chain_config/resources/versioned_constants_13_1.json similarity index 100% rename from crates/madara/primitives/chain_config/resources/versioned_constants_13_1.json rename to madara/crates/primitives/chain_config/resources/versioned_constants_13_1.json diff --git a/crates/madara/primitives/chain_config/resources/versioned_constants_13_1_1.json b/madara/crates/primitives/chain_config/resources/versioned_constants_13_1_1.json similarity index 100% rename from crates/madara/primitives/chain_config/resources/versioned_constants_13_1_1.json rename to madara/crates/primitives/chain_config/resources/versioned_constants_13_1_1.json diff --git a/crates/madara/primitives/chain_config/resources/versioned_constants_13_2.json b/madara/crates/primitives/chain_config/resources/versioned_constants_13_2.json similarity index 100% rename from crates/madara/primitives/chain_config/resources/versioned_constants_13_2.json rename to madara/crates/primitives/chain_config/resources/versioned_constants_13_2.json diff --git a/crates/madara/primitives/chain_config/src/chain_config.rs b/madara/crates/primitives/chain_config/src/chain_config.rs similarity index 100% rename from crates/madara/primitives/chain_config/src/chain_config.rs rename to madara/crates/primitives/chain_config/src/chain_config.rs diff --git a/crates/madara/primitives/chain_config/src/lib.rs b/madara/crates/primitives/chain_config/src/lib.rs similarity index 100% rename from crates/madara/primitives/chain_config/src/lib.rs rename to madara/crates/primitives/chain_config/src/lib.rs diff --git a/crates/madara/primitives/chain_config/src/rpc_version.rs b/madara/crates/primitives/chain_config/src/rpc_version.rs similarity index 100% rename from crates/madara/primitives/chain_config/src/rpc_version.rs rename to madara/crates/primitives/chain_config/src/rpc_version.rs diff --git a/crates/madara/primitives/chain_config/src/starknet_version.rs b/madara/crates/primitives/chain_config/src/starknet_version.rs similarity index 100% rename from crates/madara/primitives/chain_config/src/starknet_version.rs rename to madara/crates/primitives/chain_config/src/starknet_version.rs diff --git a/crates/madara/primitives/class/Cargo.toml b/madara/crates/primitives/class/Cargo.toml similarity index 100% rename from crates/madara/primitives/class/Cargo.toml rename to madara/crates/primitives/class/Cargo.toml diff --git a/crates/madara/primitives/class/resources/missed_classes.json b/madara/crates/primitives/class/resources/missed_classes.json similarity index 100% rename from crates/madara/primitives/class/resources/missed_classes.json rename to madara/crates/primitives/class/resources/missed_classes.json diff --git a/crates/madara/primitives/class/src/class_hash.rs b/madara/crates/primitives/class/src/class_hash.rs similarity index 100% rename from crates/madara/primitives/class/src/class_hash.rs rename to madara/crates/primitives/class/src/class_hash.rs diff --git a/crates/madara/primitives/class/src/class_update.rs b/madara/crates/primitives/class/src/class_update.rs similarity index 100% rename from crates/madara/primitives/class/src/class_update.rs rename to madara/crates/primitives/class/src/class_update.rs diff --git a/crates/madara/primitives/class/src/compile.rs b/madara/crates/primitives/class/src/compile.rs similarity index 100% rename from crates/madara/primitives/class/src/compile.rs rename to madara/crates/primitives/class/src/compile.rs diff --git a/crates/madara/primitives/class/src/convert.rs b/madara/crates/primitives/class/src/convert.rs similarity index 100% rename from crates/madara/primitives/class/src/convert.rs rename to madara/crates/primitives/class/src/convert.rs diff --git a/crates/madara/primitives/class/src/into_starknet_core.rs b/madara/crates/primitives/class/src/into_starknet_core.rs similarity index 100% rename from crates/madara/primitives/class/src/into_starknet_core.rs rename to madara/crates/primitives/class/src/into_starknet_core.rs diff --git a/crates/madara/primitives/class/src/into_starknet_types.rs b/madara/crates/primitives/class/src/into_starknet_types.rs similarity index 100% rename from crates/madara/primitives/class/src/into_starknet_types.rs rename to madara/crates/primitives/class/src/into_starknet_types.rs diff --git a/crates/madara/primitives/class/src/lib.rs b/madara/crates/primitives/class/src/lib.rs similarity index 100% rename from crates/madara/primitives/class/src/lib.rs rename to madara/crates/primitives/class/src/lib.rs diff --git a/crates/madara/primitives/convert/Cargo.toml b/madara/crates/primitives/convert/Cargo.toml similarity index 100% rename from crates/madara/primitives/convert/Cargo.toml rename to madara/crates/primitives/convert/Cargo.toml diff --git a/crates/madara/primitives/convert/src/felt.rs b/madara/crates/primitives/convert/src/felt.rs similarity index 100% rename from crates/madara/primitives/convert/src/felt.rs rename to madara/crates/primitives/convert/src/felt.rs diff --git a/crates/madara/primitives/convert/src/hex_serde.rs b/madara/crates/primitives/convert/src/hex_serde.rs similarity index 100% rename from crates/madara/primitives/convert/src/hex_serde.rs rename to madara/crates/primitives/convert/src/hex_serde.rs diff --git a/crates/madara/primitives/convert/src/lib.rs b/madara/crates/primitives/convert/src/lib.rs similarity index 100% rename from crates/madara/primitives/convert/src/lib.rs rename to madara/crates/primitives/convert/src/lib.rs diff --git a/crates/madara/primitives/convert/src/to_felt.rs b/madara/crates/primitives/convert/src/to_felt.rs similarity index 100% rename from crates/madara/primitives/convert/src/to_felt.rs rename to madara/crates/primitives/convert/src/to_felt.rs diff --git a/crates/madara/primitives/gateway/Cargo.toml b/madara/crates/primitives/gateway/Cargo.toml similarity index 100% rename from crates/madara/primitives/gateway/Cargo.toml rename to madara/crates/primitives/gateway/Cargo.toml diff --git a/crates/madara/primitives/gateway/src/block.rs b/madara/crates/primitives/gateway/src/block.rs similarity index 100% rename from crates/madara/primitives/gateway/src/block.rs rename to madara/crates/primitives/gateway/src/block.rs diff --git a/crates/madara/primitives/gateway/src/error.rs b/madara/crates/primitives/gateway/src/error.rs similarity index 100% rename from crates/madara/primitives/gateway/src/error.rs rename to madara/crates/primitives/gateway/src/error.rs diff --git a/crates/madara/primitives/gateway/src/lib.rs b/madara/crates/primitives/gateway/src/lib.rs similarity index 100% rename from crates/madara/primitives/gateway/src/lib.rs rename to madara/crates/primitives/gateway/src/lib.rs diff --git a/crates/madara/primitives/gateway/src/receipt.rs b/madara/crates/primitives/gateway/src/receipt.rs similarity index 100% rename from crates/madara/primitives/gateway/src/receipt.rs rename to madara/crates/primitives/gateway/src/receipt.rs diff --git a/crates/madara/primitives/gateway/src/state_update.rs b/madara/crates/primitives/gateway/src/state_update.rs similarity index 100% rename from crates/madara/primitives/gateway/src/state_update.rs rename to madara/crates/primitives/gateway/src/state_update.rs diff --git a/crates/madara/primitives/gateway/src/test.rs b/madara/crates/primitives/gateway/src/test.rs similarity index 100% rename from crates/madara/primitives/gateway/src/test.rs rename to madara/crates/primitives/gateway/src/test.rs diff --git a/crates/madara/primitives/gateway/src/transaction.rs b/madara/crates/primitives/gateway/src/transaction.rs similarity index 100% rename from crates/madara/primitives/gateway/src/transaction.rs rename to madara/crates/primitives/gateway/src/transaction.rs diff --git a/crates/madara/primitives/gateway/src/user_transaction.rs b/madara/crates/primitives/gateway/src/user_transaction.rs similarity index 100% rename from crates/madara/primitives/gateway/src/user_transaction.rs rename to madara/crates/primitives/gateway/src/user_transaction.rs diff --git a/crates/madara/primitives/oracle/Cargo.toml b/madara/crates/primitives/oracle/Cargo.toml similarity index 100% rename from crates/madara/primitives/oracle/Cargo.toml rename to madara/crates/primitives/oracle/Cargo.toml diff --git a/crates/madara/primitives/oracle/src/lib.rs b/madara/crates/primitives/oracle/src/lib.rs similarity index 100% rename from crates/madara/primitives/oracle/src/lib.rs rename to madara/crates/primitives/oracle/src/lib.rs diff --git a/crates/madara/primitives/oracle/src/pragma.rs b/madara/crates/primitives/oracle/src/pragma.rs similarity index 100% rename from crates/madara/primitives/oracle/src/pragma.rs rename to madara/crates/primitives/oracle/src/pragma.rs diff --git a/crates/madara/primitives/receipt/Cargo.toml b/madara/crates/primitives/receipt/Cargo.toml similarity index 100% rename from crates/madara/primitives/receipt/Cargo.toml rename to madara/crates/primitives/receipt/Cargo.toml diff --git a/crates/madara/primitives/receipt/src/from_blockifier.rs b/madara/crates/primitives/receipt/src/from_blockifier.rs similarity index 100% rename from crates/madara/primitives/receipt/src/from_blockifier.rs rename to madara/crates/primitives/receipt/src/from_blockifier.rs diff --git a/crates/madara/primitives/receipt/src/lib.rs b/madara/crates/primitives/receipt/src/lib.rs similarity index 100% rename from crates/madara/primitives/receipt/src/lib.rs rename to madara/crates/primitives/receipt/src/lib.rs diff --git a/crates/madara/primitives/receipt/src/to_starknet_types.rs b/madara/crates/primitives/receipt/src/to_starknet_types.rs similarity index 100% rename from crates/madara/primitives/receipt/src/to_starknet_types.rs rename to madara/crates/primitives/receipt/src/to_starknet_types.rs diff --git a/crates/madara/primitives/state_update/Cargo.toml b/madara/crates/primitives/state_update/Cargo.toml similarity index 100% rename from crates/madara/primitives/state_update/Cargo.toml rename to madara/crates/primitives/state_update/Cargo.toml diff --git a/crates/madara/primitives/state_update/src/into_starknet_types.rs b/madara/crates/primitives/state_update/src/into_starknet_types.rs similarity index 100% rename from crates/madara/primitives/state_update/src/into_starknet_types.rs rename to madara/crates/primitives/state_update/src/into_starknet_types.rs diff --git a/crates/madara/primitives/state_update/src/lib.rs b/madara/crates/primitives/state_update/src/lib.rs similarity index 100% rename from crates/madara/primitives/state_update/src/lib.rs rename to madara/crates/primitives/state_update/src/lib.rs diff --git a/crates/madara/primitives/transactions/Cargo.toml b/madara/crates/primitives/transactions/Cargo.toml similarity index 100% rename from crates/madara/primitives/transactions/Cargo.toml rename to madara/crates/primitives/transactions/Cargo.toml diff --git a/crates/madara/primitives/transactions/src/compute_hash.rs b/madara/crates/primitives/transactions/src/compute_hash.rs similarity index 100% rename from crates/madara/primitives/transactions/src/compute_hash.rs rename to madara/crates/primitives/transactions/src/compute_hash.rs diff --git a/crates/madara/primitives/transactions/src/from_blockifier.rs b/madara/crates/primitives/transactions/src/from_blockifier.rs similarity index 100% rename from crates/madara/primitives/transactions/src/from_blockifier.rs rename to madara/crates/primitives/transactions/src/from_blockifier.rs diff --git a/crates/madara/primitives/transactions/src/from_broadcasted_transaction.rs b/madara/crates/primitives/transactions/src/from_broadcasted_transaction.rs similarity index 100% rename from crates/madara/primitives/transactions/src/from_broadcasted_transaction.rs rename to madara/crates/primitives/transactions/src/from_broadcasted_transaction.rs diff --git a/crates/madara/primitives/transactions/src/from_starknet_types.rs b/madara/crates/primitives/transactions/src/from_starknet_types.rs similarity index 100% rename from crates/madara/primitives/transactions/src/from_starknet_types.rs rename to madara/crates/primitives/transactions/src/from_starknet_types.rs diff --git a/crates/madara/primitives/transactions/src/into_starknet_api.rs b/madara/crates/primitives/transactions/src/into_starknet_api.rs similarity index 100% rename from crates/madara/primitives/transactions/src/into_starknet_api.rs rename to madara/crates/primitives/transactions/src/into_starknet_api.rs diff --git a/crates/madara/primitives/transactions/src/lib.rs b/madara/crates/primitives/transactions/src/lib.rs similarity index 100% rename from crates/madara/primitives/transactions/src/lib.rs rename to madara/crates/primitives/transactions/src/lib.rs diff --git a/crates/madara/primitives/transactions/src/to_blockifier.rs b/madara/crates/primitives/transactions/src/to_blockifier.rs similarity index 100% rename from crates/madara/primitives/transactions/src/to_blockifier.rs rename to madara/crates/primitives/transactions/src/to_blockifier.rs diff --git a/crates/madara/primitives/transactions/src/to_starknet_types.rs b/madara/crates/primitives/transactions/src/to_starknet_types.rs similarity index 100% rename from crates/madara/primitives/transactions/src/to_starknet_types.rs rename to madara/crates/primitives/transactions/src/to_starknet_types.rs diff --git a/crates/madara/primitives/transactions/src/utils.rs b/madara/crates/primitives/transactions/src/utils.rs similarity index 100% rename from crates/madara/primitives/transactions/src/utils.rs rename to madara/crates/primitives/transactions/src/utils.rs diff --git a/crates/madara/primitives/utils/Cargo.toml b/madara/crates/primitives/utils/Cargo.toml similarity index 100% rename from crates/madara/primitives/utils/Cargo.toml rename to madara/crates/primitives/utils/Cargo.toml diff --git a/crates/madara/primitives/utils/src/crypto.rs b/madara/crates/primitives/utils/src/crypto.rs similarity index 100% rename from crates/madara/primitives/utils/src/crypto.rs rename to madara/crates/primitives/utils/src/crypto.rs diff --git a/crates/madara/primitives/utils/src/hash.rs b/madara/crates/primitives/utils/src/hash.rs similarity index 100% rename from crates/madara/primitives/utils/src/hash.rs rename to madara/crates/primitives/utils/src/hash.rs diff --git a/crates/madara/primitives/utils/src/lib.rs b/madara/crates/primitives/utils/src/lib.rs similarity index 100% rename from crates/madara/primitives/utils/src/lib.rs rename to madara/crates/primitives/utils/src/lib.rs diff --git a/crates/madara/primitives/utils/src/parsers.rs b/madara/crates/primitives/utils/src/parsers.rs similarity index 100% rename from crates/madara/primitives/utils/src/parsers.rs rename to madara/crates/primitives/utils/src/parsers.rs diff --git a/crates/madara/primitives/utils/src/serde.rs b/madara/crates/primitives/utils/src/serde.rs similarity index 100% rename from crates/madara/primitives/utils/src/serde.rs rename to madara/crates/primitives/utils/src/serde.rs diff --git a/crates/madara/primitives/utils/src/service.rs b/madara/crates/primitives/utils/src/service.rs similarity index 100% rename from crates/madara/primitives/utils/src/service.rs rename to madara/crates/primitives/utils/src/service.rs diff --git a/crates/madara/proc-macros/Cargo.toml b/madara/crates/proc-macros/Cargo.toml similarity index 100% rename from crates/madara/proc-macros/Cargo.toml rename to madara/crates/proc-macros/Cargo.toml diff --git a/crates/madara/proc-macros/src/lib.rs b/madara/crates/proc-macros/src/lib.rs similarity index 100% rename from crates/madara/proc-macros/src/lib.rs rename to madara/crates/proc-macros/src/lib.rs diff --git a/crates/madara/tests/Cargo.toml b/madara/crates/tests/Cargo.toml similarity index 100% rename from crates/madara/tests/Cargo.toml rename to madara/crates/tests/Cargo.toml diff --git a/crates/madara/tests/src/devnet.rs b/madara/crates/tests/src/devnet.rs similarity index 100% rename from crates/madara/tests/src/devnet.rs rename to madara/crates/tests/src/devnet.rs diff --git a/crates/madara/tests/src/lib.rs b/madara/crates/tests/src/lib.rs similarity index 100% rename from crates/madara/tests/src/lib.rs rename to madara/crates/tests/src/lib.rs diff --git a/crates/madara/tests/src/rpc/mod.rs b/madara/crates/tests/src/rpc/mod.rs similarity index 100% rename from crates/madara/tests/src/rpc/mod.rs rename to madara/crates/tests/src/rpc/mod.rs diff --git a/crates/madara/tests/src/rpc/read.rs b/madara/crates/tests/src/rpc/read.rs similarity index 100% rename from crates/madara/tests/src/rpc/read.rs rename to madara/crates/tests/src/rpc/read.rs diff --git a/crates/madara/tests/src/rpc/test_utils/class_program.txt b/madara/crates/tests/src/rpc/test_utils/class_program.txt similarity index 100% rename from crates/madara/tests/src/rpc/test_utils/class_program.txt rename to madara/crates/tests/src/rpc/test_utils/class_program.txt diff --git a/crates/madara/tests/src/rpc/test_utils/compiled_class.json b/madara/crates/tests/src/rpc/test_utils/compiled_class.json similarity index 100% rename from crates/madara/tests/src/rpc/test_utils/compiled_class.json rename to madara/crates/tests/src/rpc/test_utils/compiled_class.json diff --git a/crates/madara/tests/src/rpc/test_utils/contract_class.json b/madara/crates/tests/src/rpc/test_utils/contract_class.json similarity index 100% rename from crates/madara/tests/src/rpc/test_utils/contract_class.json rename to madara/crates/tests/src/rpc/test_utils/contract_class.json diff --git a/crates/madara/tests/src/storage_proof.rs b/madara/crates/tests/src/storage_proof.rs similarity index 100% rename from crates/madara/tests/src/storage_proof.rs rename to madara/crates/tests/src/storage_proof.rs diff --git a/crates/madara/tests/test_devnet.yaml b/madara/crates/tests/test_devnet.yaml similarity index 100% rename from crates/madara/tests/test_devnet.yaml rename to madara/crates/tests/test_devnet.yaml diff --git a/migrate-mongo-config.js b/migrate-mongo-config.js new file mode 100644 index 000000000..52fa1e174 --- /dev/null +++ b/migrate-mongo-config.js @@ -0,0 +1,39 @@ +// In this file you can configure migrate-mongo + +const config = { + mongodb: { + // TODO Change (or review) the url to your MongoDB: + url: + process.env.MADARA_ORCHESTRATOR_MONGODB_CONNECTION_URLDB_CONNECTION_URL || + "mongodb://localhost:27017", + + // TODO Change this to your database name: + databaseName: + process.env.MADARA_ORCHESTRATOR_DATABASE_NAME || "orchestrator", + + options: { + useNewUrlParser: true, // removes a deprecation warning when connecting + useUnifiedTopology: true, // removes a deprecating warning when connecting + // connectTimeoutMS: 3600000, // increase connection timeout to 1 hour + // socketTimeoutMS: 3600000, // increase socket timeout to 1 hour + }, + }, + + // The migrations dir, can be an relative or absolute path. Only edit this when really necessary. + migrationsDir: "migrations", + + // The mongodb collection where the applied changes are stored. Only edit this when really necessary. + changelogCollectionName: "changelog", + + // The file extension to create migrations and search for in migration dir + migrationFileExtension: ".js", + + // Enable the algorithm to create a checksum of the file contents and use that in the comparison to determine + // if the file should be run. Requires that scripts are coded to be run multiple times. + useFileHash: false, + + // Don't change this, unless you know what you're doing + moduleSystem: "commonjs", +}; + +module.exports = config; diff --git a/migrations/00000000000000-init.js b/migrations/00000000000000-init.js new file mode 100644 index 000000000..5f27a7737 --- /dev/null +++ b/migrations/00000000000000-init.js @@ -0,0 +1,22 @@ +module.exports = { + async up(db) { + // Create indexes for the 'jobs' collection + await db.collection("jobs").createIndexes([ + { key: { id: 1 } }, + { key: { job_type: 1, internal_id: -1 }, unique: true }, + { key: { job_type: 1, status: 1, internal_id: -1 } }, + { key: { status: 1 } }, + // primarily for get_jobs_without_successor + { key: { job_type: 1, status: 1 } }, + ]); + }, + + async down(db) { + // Drop indexes for the 'jobs' collection + await db.collection("jobs").dropIndex("id_1"); + await db.collection("jobs").dropIndex("job_type_1_internal_id_-1"); + await db.collection("jobs").dropIndex("job_type_1_status_1_internal_id_-1"); + await db.collection("jobs").dropIndex("status_1"); + await db.collection("jobs").dropIndex("job_type_1_status_1"); + }, +}; diff --git a/old_orchestrator_files/.dockerignore b/old_orchestrator_files/.dockerignore new file mode 100644 index 000000000..2f23997e7 --- /dev/null +++ b/old_orchestrator_files/.dockerignore @@ -0,0 +1,36 @@ +# Ignore target directory +target/ + +# Ignore version control files +.gitignore + +# Ignore editor and IDE files +.vscode/ +.idea/ +*.swp +*.swo + +# Ignore log files +*.log + +# TODO : uncomment this +# Ignore any local environment files + .env + .env.* + +# Ignore any test or documentation directories +tests/ +docs/ + +# Ignore Rust-specific files +Cargo.lock + +# Ignore any temporary files +*.tmp +*.bak + +# Ignore OS-specific files +.DS_Store +Thumbs.db + +Dockerfile diff --git a/old_orchestrator_files/.github/workflows/changelog.yml b/old_orchestrator_files/.github/workflows/changelog.yml new file mode 100644 index 000000000..6e49d286a --- /dev/null +++ b/old_orchestrator_files/.github/workflows/changelog.yml @@ -0,0 +1,13 @@ +name: "Changelog Workflow" +on: + pull_request: + types: [opened, synchronize, reopened, ready_for_review, labeled, unlabeled] + branches: [main] + +jobs: + # Enforces the update of a changelog file on every pull request + # skipLabel default is "Skip-Changelog" + changelog: + runs-on: ubuntu-latest + steps: + - uses: dangoslen/changelog-enforcer@v3 diff --git a/old_orchestrator_files/.github/workflows/coverage.yml b/old_orchestrator_files/.github/workflows/coverage.yml new file mode 100644 index 000000000..3af9bc281 --- /dev/null +++ b/old_orchestrator_files/.github/workflows/coverage.yml @@ -0,0 +1,141 @@ +name: Rust Test & Coverage + +on: + workflow_call: + secrets: + ETHEREUM_SEPOLIA_BLAST_RPC: + required: true + RPC_FOR_SNOS: + required: true + +jobs: + coverage: + runs-on: karnot-arc-runner-set + + services: + localstack: + image: localstack/localstack + env: + SERVICES: s3, sqs, sns + DEFAULT_REGION: us-east-1 + AWS_ACCESS_KEY_ID: "AWS_ACCESS_KEY_ID" + AWS_SECRET_ACCESS_KEY: "AWS_SECRET_ACCESS_KEY" + ports: + - 4566:4566 + mongodb: + image: mongo:latest + ports: + - 27017:27017 + + steps: + - uses: actions/checkout@v3 + + - name: Install necessary dependencies + run: | + sudo apt update + sudo apt-get install -y clang llvm libudev-dev protobuf-compiler gcc g++ build-essential libssl-dev pkg-config curl wget git libclang-dev + + - name: Install Rust toolchain + uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: nightly + + - name: Rust Cache + uses: Swatinem/rust-cache@v2 + + - name: Install Foundry + uses: foundry-rs/foundry-toolchain@v1 + + - name: Set up Python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + + - name: Display Python version + run: python --version + + - name: Install cairo 0 + run: | + # Creating venv + python3.9 -m venv ~/cairo_venv + source ~/cairo_venv/bin/activate + + # Installing deps + sudo apt install -y libgmp3-dev + pip3 install ecdsa fastecdsa sympy + + # Installing cairo lang + pip3 install cairo-lang + + - name: Check Anvil Installation + run: | + if command -v anvil &> /dev/null + then + echo "Anvil is installed. Version information:" + anvil --version + else + echo "Anvil is not installed or not in PATH" + exit 1 + fi + + - name: Install cargo-llvm-cov & nextest + uses: taiki-e/install-action@cargo-llvm-cov + + - name: Install nextest + uses: taiki-e/install-action@nextest + + - name: Setup scarb + uses: software-mansion/setup-scarb@v1 + with: + scarb-version: "2.8.2" + + - name: Build Mock Contracts using Scarb + run: | + cd crates/settlement-clients/starknet/src/tests/mock_contracts + scarb fmt --check + scarb build + + - name: Checkout Madara + uses: actions/checkout@v4 + with: + repository: madara-alliance/madara + ref: "0c821aecd1cafc516d00548473fcaddaa4dc0ce4" + path: madara + + - name: Build Madara + working-directory: madara + run: | + cargo build + mv target/debug/madara ../madara-binary + cd .. + echo -e " + MADARA_ORCHESTRATOR_MADARA_BINARY_PATH=\"$(pwd)/madara-binary\"" >> .env.test + cat .env.test + + - name: Getting neccesary files for testing + run: | + wget -P ./crates/prover-clients/sharp-service/tests/artifacts https://madara-orchestrator-sharp-pie.s3.amazonaws.com/238996-SN.zip + # TODO: this can be optimised + cp ./crates/prover-clients/sharp-service/tests/artifacts/238996-SN.zip ./crates/orchestrator/src/tests/artifacts/238996-SN.zip + + - name: Build SNOS files + run: | + make snos + + - name: Check rust version + run: rustup show + + - name: Run llvm-cov tests + env: + MADARA_ORCHESTRATOR_ETHEREUM_SETTLEMENT_RPC_URL: ${{ secrets.ETHEREUM_SEPOLIA_BLAST_RPC }} + MADARA_ORCHESTRATOR_RPC_FOR_SNOS: ${{ secrets.RPC_FOR_SNOS }} + # the self hosted runner has a different region so we override it here + AWS_REGION: us-east-1 + run: RUST_LOG=debug RUST_BACKTRACE=1 cargo llvm-cov nextest --release --features testing --lcov --output-path lcov.info --test-threads=1 --workspace --exclude=e2e-tests --no-fail-fast + + - name: Coveralls + uses: coverallsapp/github-action@v2 + with: + files: lcov.info + debug: true diff --git a/old_orchestrator_files/.github/workflows/docker-build.yml b/old_orchestrator_files/.github/workflows/docker-build.yml new file mode 100644 index 000000000..5e311a43f --- /dev/null +++ b/old_orchestrator_files/.github/workflows/docker-build.yml @@ -0,0 +1,52 @@ +name: Build/Push Docker Image to ghcr + +on: + workflow_dispatch: + inputs: + docker_tag: + description: "Docker tag to use" + required: true + default: "latest" + +permissions: + contents: read + packages: write + +jobs: + build_and_push: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v3 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + with: + driver: docker + + - name: Log in to GitHub Container Registry + uses: docker/login-action@v2 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Set Docker image tag + id: vars + run: | + if [ "${{ github.event_name }}" == "release" ]; then + echo "TAG=${{ github.event.release.tag_name }}" >> $GITHUB_ENV + elif [ "${{ github.event_name }}" == "workflow_dispatch" ]; then + echo "TAG=${{ github.event.inputs.docker_tag }}" >> $GITHUB_ENV + else + echo "In case of manual trigger, docker tag must be present. Workflow failed." + exit 1 + fi + + - name: Build and push Docker image + uses: docker/build-push-action@v4 + with: + context: . + file: ./Dockerfile + push: true + tags: ghcr.io/${{ github.repository_owner }}/${{ github.event.repository.name }}:${{ env.TAG }} diff --git a/old_orchestrator_files/.github/workflows/e2e-test.yml b/old_orchestrator_files/.github/workflows/e2e-test.yml new file mode 100644 index 000000000..a9c27f4e5 --- /dev/null +++ b/old_orchestrator_files/.github/workflows/e2e-test.yml @@ -0,0 +1,92 @@ +name: E2E test + +on: + workflow_call: + secrets: + RPC_FOR_SNOS: + required: true + +jobs: + coverage: + runs-on: karnot-arc-runner-set + + services: + localstack: + image: localstack/localstack@sha256:763947722c6c8d33d5fbf7e8d52b4bddec5be35274a0998fdc6176d733375314 + + env: + DEFAULT_REGION: us-east-1 + AWS_ACCESS_KEY_ID: "AWS_ACCESS_KEY_ID" + AWS_SECRET_ACCESS_KEY: "AWS_SECRET_ACCESS_KEY" + ports: + - 4566:4566 + mongodb: + image: mongo:latest + ports: + - 27017:27017 + + steps: + - uses: actions/checkout@v3 + + - name: Install necessary dependencies + run: | + sudo apt update + sudo apt-get install -y clang llvm libudev-dev protobuf-compiler gcc g++ build-essential libssl-dev pkg-config curl wget git libclang-dev + + - name: Install Rust toolchain + uses: actions-rs/toolchain@v1 + with: + profile: minimal + toolchain: nightly + + - name: Rust Cache + uses: Swatinem/rust-cache@v2 + + - name: Install Foundry + uses: foundry-rs/foundry-toolchain@v1 + + - name: Set up Python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + + - name: Display Python version + run: python --version + + - name: Install cairo 0 + run: | + # Creating venv + python3.9 -m venv ~/cairo_venv + source ~/cairo_venv/bin/activate + + # Installing deps + sudo apt install -y libgmp3-dev + pip3 install ecdsa fastecdsa sympy + + # Installing cairo lang + pip3 install cairo-lang + + - name: Check Anvil Installation & run Anvil + run: | + if command -v anvil &> /dev/null + then + echo "Anvil is installed. Version information:" + anvil --version + anvil --block-time 1 & + else + echo "Anvil is not installed or not in PATH" + exit 1 + fi + + - name: Build SNOS files + run: | + make snos + + - name: Run e2e test + env: + MADARA_ORCHESTRATOR_ETHEREUM_SETTLEMENT_RPC_URL: ${{ secrets.ETHEREUM_SEPOLIA_BLAST_RPC }} + MADARA_ORCHESTRATOR_RPC_FOR_SNOS: ${{ secrets.RPC_FOR_SNOS }} + # the self hosted runner has a different region so we override it here + AWS_REGION: us-east-1 + run: | + RUST_LOG=info cargo test --features testing test_orchestrator_workflow -- --nocapture diff --git a/old_orchestrator_files/.github/workflows/linters-cargo.yml b/old_orchestrator_files/.github/workflows/linters-cargo.yml new file mode 100644 index 000000000..0dc79c527 --- /dev/null +++ b/old_orchestrator_files/.github/workflows/linters-cargo.yml @@ -0,0 +1,48 @@ +--- +name: Task - Linters Cargo + +on: + workflow_dispatch: + workflow_call: + +jobs: + cargo-lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - run: rustup show + + - name: Set up Python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + + - name: Display Python version + run: python --version + + - name: Install cairo 0 + run: | + # Creating venv + python3.9 -m venv ~/cairo_venv + source ~/cairo_venv/bin/activate + + # Installing deps + sudo apt install -y libgmp3-dev + pip3 install ecdsa fastecdsa sympy + + # Installing cairo lang + pip3 install cairo-lang + + - name: Build SNOS files + run: | + make snos + + - uses: Swatinem/rust-cache@v2 + - name: Format and clippy + run: | + cargo fmt -- --check + cargo clippy --no-deps -- -D warnings + cargo clippy --tests --no-deps -- -D warnings + cargo clippy --features testing --no-deps -- -D warnings + cargo clippy --features testing --tests --no-deps -- -D warnings diff --git a/old_orchestrator_files/.github/workflows/linters.yml b/old_orchestrator_files/.github/workflows/linters.yml new file mode 100644 index 000000000..42f8c8de7 --- /dev/null +++ b/old_orchestrator_files/.github/workflows/linters.yml @@ -0,0 +1,33 @@ +--- +name: Task - Linters + +on: + workflow_dispatch: + workflow_call: + +jobs: + prettier: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Run prettier + run: |- + npx prettier --check . + + markdown-lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: avto-dev/markdown-lint@v1 + with: + config: "./.markdownlint.json" + args: "." + ignore: "./target" + + toml-lint: + runs-on: ubuntu-latest + steps: + - name: Checkout toml files + uses: actions/checkout@v3 + - name: Run toml check + run: npx @taplo/cli fmt --config ./taplo/taplo.toml --check diff --git a/old_orchestrator_files/.github/workflows/pull-request.yml b/old_orchestrator_files/.github/workflows/pull-request.yml new file mode 100644 index 000000000..073c31212 --- /dev/null +++ b/old_orchestrator_files/.github/workflows/pull-request.yml @@ -0,0 +1,32 @@ +--- +name: Workflow - Pull Request + +on: + workflow_dispatch: + pull_request: + branches: [main] + push: + branches: [main] + +jobs: + linters: + name: Run linters + uses: ./.github/workflows/linters.yml + + rust_build: + name: Build Rust project + uses: ./.github/workflows/rust-build.yml + + linters_cargo: + name: Run Cargo linters + uses: ./.github/workflows/linters-cargo.yml + + coverage: + name: Run coverage + uses: ./.github/workflows/coverage.yml + secrets: inherit + + e2e-test: + name: E2E test + uses: ./.github/workflows/e2e-test.yml + secrets: inherit diff --git a/old_orchestrator_files/.github/workflows/rust-build.yml b/old_orchestrator_files/.github/workflows/rust-build.yml new file mode 100644 index 000000000..8dd986aaa --- /dev/null +++ b/old_orchestrator_files/.github/workflows/rust-build.yml @@ -0,0 +1,45 @@ +--- +name: Task - Build Rust + +on: + workflow_dispatch: + workflow_call: + +jobs: + rust_build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - run: rustup show + + - uses: Swatinem/rust-cache@v2 + + - name: Set up Python 3.9 + uses: actions/setup-python@v2 + with: + python-version: 3.9 + + - name: Display Python version + run: python --version + + - name: Install cairo 0 + run: | + # Creating venv + python3.9 -m venv ~/cairo_venv + source ~/cairo_venv/bin/activate + + # Installing deps + sudo apt install -y libgmp3-dev + pip3 install ecdsa fastecdsa sympy + + # Installing cairo lang + pip3 install cairo-lang + + - name: Build SNOS files + run: | + make snos + + - name: Build the project + run: | + cargo build --release --workspace diff --git a/old_orchestrator_files/.gitignore b/old_orchestrator_files/.gitignore new file mode 100644 index 000000000..26b5e4b3d --- /dev/null +++ b/old_orchestrator_files/.gitignore @@ -0,0 +1,23 @@ +/target +.env +.idea +.DS_Store + +*.code-workspace +.vscode + + +lcov.info + +**/*-SN.zip + +node_modules + +# env file created by makefile +.makefile.json +.pids.json + +# venv setup when building snos +orchestrator_venv/ + +build/ diff --git a/old_orchestrator_files/.markdownlint.json b/old_orchestrator_files/.markdownlint.json new file mode 100644 index 000000000..500ea8579 --- /dev/null +++ b/old_orchestrator_files/.markdownlint.json @@ -0,0 +1,10 @@ +{ + "MD033": false, + "MD041": false, + "MD045": false, + "MD003": false, + "MD013": { + "code_blocks": false, + "line_length": 120 + } +} diff --git a/old_orchestrator_files/.prettierignore b/old_orchestrator_files/.prettierignore new file mode 100644 index 000000000..2158a86d7 --- /dev/null +++ b/old_orchestrator_files/.prettierignore @@ -0,0 +1,10 @@ +target/ +dashboards +cairo-lang/ +madara/ +madara-bootstrapper/ +pathfinder/ +orchestrator_venv/ +build/ +node_modules/ +scripts/ diff --git a/old_orchestrator_files/CHANGELOG.md b/old_orchestrator_files/CHANGELOG.md new file mode 100644 index 000000000..421cb5e6b --- /dev/null +++ b/old_orchestrator_files/CHANGELOG.md @@ -0,0 +1,109 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). + +## Added + +- readme: setup instructions added +- Added : Grafana dashboard +- tests: http_client tests added +- Added Atlantic proving service integration +- setup functions added for cloud and db +- Added cli args support for all the services +- Setup functions added for cloud and db +- panic handling in process job +- upgrade ETH L1 bridge for withdrawals to work +- added makefile and submodules +- Endpoints for triggering processing and verification jobs +- Add multiple queues for processing and verification based on job type +- added logs +- added MongoDB migrations using nodejs +- added dockerfile +- `SnosJob` implementation and e2e +- Telemetry tracing and metrics. +- e2e flow test +- database timestamps +- alerts module. +- Tests for Settlement client. +- Worker queues to listen for trigger events. +- Tests for prover client. +- Added Rust Cache for Coverage Test CI. +- support for fetching PIE file from storage client in proving job. +- added coveralls support +- moved mongodb serde behind feature flag +- implemented DA worker. +- Function to calculate the kzg proof of x_0. +- Tests for updating the state. +- Function to update the state and publish blob on ethereum in state update job. +- Tests for job handlers in orchestrator/src/jobs/mod.rs. +- Fixtures for testing. +- Basic rust-toolchain support. +- `AWS_DEFAULT_REGION="localhost"` var. in .env.test for omniqueue queue testing. +- Added basic rust-toolchain support. +- Implement DL queue for handling failed jobs. +- Added tests for state update job. +- Tests for DA job. +- Added generalized errors for Jobs : JobError. +- Database tests + +## Changed + +- refactor: expect removed and added error wraps +- refactor: Readme and .env.example +- refactor: http_mock version updated +- refactor: prover-services renamed to prover-clients +- refactor: update json made generic to update any json file +- refactor: makefile updated as per bootstraper changes +- removed error return in case of JobAlreadyExists in `create_job` function +- update_job returns the updated job item +- made create_job atomic to avoid race conditions +- handle jobs in tokio tasks +- handle workers in tokio tasks +- cleaned .env.example and .env.test files +- bumped snos and downgraded rust to match SNOS rust version +- Bumped dependencies, and associated api changes done +- ethereum DA client builder +- AWS config built from TestConfigBuilder. +- Better TestConfigBuilder, with sync config clients. +- Drilled Config, removing dirty global reads. +- settings provider +- refactor AWS config usage and clean .env files +- GitHub's coverage CI yml file for localstack and db testing. +- Orchestrator :Moved TestConfigBuilder to `config.rs` in tests folder. +- `.env` file requires two more variables which are queue urls for processing + and verification. + +## Removed + +- docker-compose removed +- revert CI changes from settlement client PR. +- `init_config` from all the tests. +- `fetch_from_test` argument + +## Fixed + +- refactor: instrumentation +- `is_worker_enabled` status check moved from `VerificationFailed` to `Failed` +- refactor: static attributes for telemetry +- refactor: aws setup for Event Bridge +- refactor: RUST_LOG filtering support +- refactor: cargo.toml files cleaned +- blob data formation process from state update +- OTEL config refactor +- indexing for get_jobs_without_successor +- wait for transaction logic in ethereum settlement client +- y_0 point evaluation in build kzg proof for ethereum settlement +- fixed metrics name, signoz dashboard. +- fixes logs based on RUST_LOG +- fixes after sepolia testing +- all failed jobs should move to failed state +- Fixes all unwraps() in code to improve error logging +- Simplified Update_Job for Database. +- Simplified otel setup. +- Added new_with_settings to SharpClient. +- Calculate root hash logic and added a simple test for it. +- Cargo.toml dependency reorg. +- Get Fact Info logic. +- Fixed state update worker logic as per the new implementation. diff --git a/old_orchestrator_files/Cargo.lock b/old_orchestrator_files/Cargo.lock new file mode 100644 index 000000000..6c1dd2520 --- /dev/null +++ b/old_orchestrator_files/Cargo.lock @@ -0,0 +1,11532 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "addr2line" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" +dependencies = [ + "gimli", +] + +[[package]] +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + +[[package]] +name = "adler2" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" + +[[package]] +name = "aes" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" +dependencies = [ + "cfg-if", + "cipher", + "cpufeatures", +] + +[[package]] +name = "ahash" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" +dependencies = [ + "getrandom", + "once_cell", + "version_check", +] + +[[package]] +name = "ahash" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +dependencies = [ + "cfg-if", + "getrandom", + "once_cell", + "version_check", + "zerocopy", +] + +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + +[[package]] +name = "allocator-api2" +version = "0.2.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" + +[[package]] +name = "alloy" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-consensus 0.1.0", + "alloy-core 0.6.4", + "alloy-eips 0.1.0", + "alloy-network 0.1.0", + "alloy-provider 0.1.0", + "alloy-rpc-client 0.1.0", + "alloy-signer 0.1.0", + "alloy-signer-wallet", + "alloy-transport 0.1.0", + "alloy-transport-http 0.1.0", + "reqwest 0.12.7", +] + +[[package]] +name = "alloy" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f4a4aaae80afd4be443a6aecd92a6b255dcdd000f97996928efb33d8a71e100" +dependencies = [ + "alloy-consensus 0.2.1", + "alloy-contract", + "alloy-core 0.7.7", + "alloy-eips 0.2.1", + "alloy-genesis", + "alloy-json-rpc 0.2.1", + "alloy-network 0.2.1", + "alloy-node-bindings", + "alloy-provider 0.2.1", + "alloy-pubsub", + "alloy-rpc-client 0.2.1", + "alloy-rpc-types 0.2.1", + "alloy-serde 0.2.1", + "alloy-signer 0.2.1", + "alloy-signer-local", + "alloy-transport 0.2.1", + "alloy-transport-http 0.2.1", + "alloy-transport-ipc", + "alloy-transport-ws", +] + +[[package]] +name = "alloy-chains" +version = "0.1.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd47e5f8545bdf53beb545d3c039b4afa16040bdf69c50100581579b08776afd" +dependencies = [ + "num_enum", + "strum 0.26.3", +] + +[[package]] +name = "alloy-consensus" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-eips 0.1.0", + "alloy-primitives 0.6.4", + "alloy-rlp", + "sha2", +] + +[[package]] +name = "alloy-consensus" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04c309895995eaa4bfcc345f5515a39c7df9447798645cc8bf462b6c5bf1dc96" +dependencies = [ + "alloy-eips 0.2.1", + "alloy-primitives 0.7.7", + "alloy-rlp", + "alloy-serde 0.2.1", + "c-kzg", + "serde", +] + +[[package]] +name = "alloy-contract" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f4e0ef72b0876ae3068b2ed7dfae9ae1779ce13cfaec2ee1f08f5bd0348dc57" +dependencies = [ + "alloy-dyn-abi 0.7.7", + "alloy-json-abi 0.7.7", + "alloy-network 0.2.1", + "alloy-network-primitives", + "alloy-primitives 0.7.7", + "alloy-provider 0.2.1", + "alloy-pubsub", + "alloy-rpc-types-eth", + "alloy-sol-types 0.7.7", + "alloy-transport 0.2.1", + "futures", + "futures-util", + "thiserror", +] + +[[package]] +name = "alloy-core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd180ed0c69492633d6d7d9e22dab64951fb56906f4294a8e0739c8036df315" +dependencies = [ + "alloy-dyn-abi 0.6.4", + "alloy-json-abi 0.6.4", + "alloy-primitives 0.6.4", + "alloy-sol-types 0.6.4", +] + +[[package]] +name = "alloy-core" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "529fc6310dc1126c8de51c376cbc59c79c7f662bd742be7dc67055d5421a81b4" +dependencies = [ + "alloy-dyn-abi 0.7.7", + "alloy-json-abi 0.7.7", + "alloy-primitives 0.7.7", + "alloy-sol-types 0.7.7", +] + +[[package]] +name = "alloy-dyn-abi" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2919acdad13336bc5dc26b636cdd6892c2f27fb0d4a58320a00c2713cf6a4e9a" +dependencies = [ + "alloy-json-abi 0.6.4", + "alloy-primitives 0.6.4", + "alloy-sol-type-parser 0.6.4", + "alloy-sol-types 0.6.4", + "const-hex", + "itoa", + "serde", + "serde_json", + "winnow 0.6.13", +] + +[[package]] +name = "alloy-dyn-abi" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413902aa18a97569e60f679c23f46a18db1656d87ab4d4e49d0e1e52042f66df" +dependencies = [ + "alloy-json-abi 0.7.7", + "alloy-primitives 0.7.7", + "alloy-sol-type-parser 0.7.7", + "alloy-sol-types 0.7.7", + "const-hex", + "itoa", + "serde", + "serde_json", + "winnow 0.6.13", +] + +[[package]] +name = "alloy-eips" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-primitives 0.6.4", + "alloy-rlp", + "alloy-serde 0.1.0", + "c-kzg", + "once_cell", + "serde", +] + +[[package]] +name = "alloy-eips" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9431c99a3b3fe606ede4b3d4043bdfbcb780c45b8d8d226c3804e2b75cfbe68" +dependencies = [ + "alloy-primitives 0.7.7", + "alloy-rlp", + "alloy-serde 0.2.1", + "c-kzg", + "derive_more 0.99.18", + "k256", + "once_cell", + "serde", + "sha2", +] + +[[package]] +name = "alloy-genesis" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79614dfe86144328da11098edcc7bc1a3f25ad8d3134a9eb9e857e06f0d9840d" +dependencies = [ + "alloy-primitives 0.7.7", + "alloy-serde 0.2.1", + "serde", +] + +[[package]] +name = "alloy-json-abi" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24ed0f2a6c3a1c947b4508522a53a190dba8f94dcd4e3e1a5af945a498e78f2f" +dependencies = [ + "alloy-primitives 0.6.4", + "alloy-sol-type-parser 0.6.4", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-json-abi" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc05b04ac331a9f07e3a4036ef7926e49a8bf84a99a1ccfc7e2ab55a5fcbb372" +dependencies = [ + "alloy-primitives 0.7.7", + "alloy-sol-type-parser 0.7.7", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-json-abi" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a438d4486b5d525df3b3004188f9d5cd1d65cd30ecc41e5a3ccef6f6342e8af9" +dependencies = [ + "alloy-primitives 0.8.5", + "alloy-sol-type-parser 0.8.5", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-json-rpc" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-primitives 0.6.4", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "alloy-json-rpc" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57e2865c4c3bb4cdad3f0d9ec1ab5c0c657ba69a375651bd35e32fb6c180ccc2" +dependencies = [ + "alloy-primitives 0.7.7", + "alloy-sol-types 0.7.7", + "serde", + "serde_json", + "thiserror", + "tracing", +] + +[[package]] +name = "alloy-network" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-consensus 0.1.0", + "alloy-eips 0.1.0", + "alloy-json-rpc 0.1.0", + "alloy-primitives 0.6.4", + "alloy-rpc-types 0.1.0", + "alloy-signer 0.1.0", + "async-trait", + "futures-utils-wasm", + "serde", + "thiserror", +] + +[[package]] +name = "alloy-network" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e701fc87ef9a3139154b0b4ccb935b565d27ffd9de020fe541bf2dec5ae4ede" +dependencies = [ + "alloy-consensus 0.2.1", + "alloy-eips 0.2.1", + "alloy-json-rpc 0.2.1", + "alloy-network-primitives", + "alloy-primitives 0.7.7", + "alloy-rpc-types-eth", + "alloy-serde 0.2.1", + "alloy-signer 0.2.1", + "alloy-sol-types 0.7.7", + "async-trait", + "auto_impl", + "futures-utils-wasm", + "thiserror", +] + +[[package]] +name = "alloy-network-primitives" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec9d5a0f9170b10988b6774498a022845e13eda94318440d17709d50687f67f9" +dependencies = [ + "alloy-primitives 0.7.7", + "alloy-serde 0.2.1", + "serde", +] + +[[package]] +name = "alloy-node-bindings" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16faebb9ea31a244fd6ce3288d47df4be96797d9c3c020144b8f2c31543a4512" +dependencies = [ + "alloy-genesis", + "alloy-primitives 0.7.7", + "k256", + "serde_json", + "tempfile", + "thiserror", + "tracing", + "url", +] + +[[package]] +name = "alloy-primitives" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "600d34d8de81e23b6d909c094e23b3d357e01ca36b78a8c5424c501eedbe86f0" +dependencies = [ + "alloy-rlp", + "bytes", + "cfg-if", + "const-hex", + "derive_more 0.99.18", + "hex-literal", + "itoa", + "k256", + "keccak-asm", + "proptest", + "rand", + "ruint", + "serde", + "tiny-keccak", +] + +[[package]] +name = "alloy-primitives" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccb3ead547f4532bc8af961649942f0b9c16ee9226e26caa3f38420651cc0bf4" +dependencies = [ + "alloy-rlp", + "bytes", + "cfg-if", + "const-hex", + "derive_more 0.99.18", + "hex-literal", + "itoa", + "k256", + "keccak-asm", + "proptest", + "rand", + "ruint", + "serde", + "tiny-keccak", +] + +[[package]] +name = "alloy-primitives" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "260d3ff3bff0bb84599f032a2f2c6828180b0ea0cd41fdaf44f39cef3ba41861" +dependencies = [ + "alloy-rlp", + "bytes", + "cfg-if", + "const-hex", + "derive_more 1.0.0", + "hashbrown 0.14.5", + "hex-literal", + "indexmap 2.6.0", + "itoa", + "k256", + "keccak-asm", + "paste", + "proptest", + "rand", + "ruint", + "rustc-hash 2.0.0", + "serde", + "sha3", + "tiny-keccak", +] + +[[package]] +name = "alloy-provider" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-json-rpc 0.1.0", + "alloy-network 0.1.0", + "alloy-primitives 0.6.4", + "alloy-rpc-client 0.1.0", + "alloy-rpc-trace-types", + "alloy-rpc-types 0.1.0", + "alloy-transport 0.1.0", + "alloy-transport-http 0.1.0", + "async-stream", + "async-trait", + "auto_impl", + "dashmap", + "futures", + "lru", + "reqwest 0.12.7", + "serde_json", + "tokio", + "tracing", +] + +[[package]] +name = "alloy-provider" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9c0ab10b93de601a6396fc7ff2ea10d3b28c46f079338fa562107ebf9857c8" +dependencies = [ + "alloy-chains", + "alloy-consensus 0.2.1", + "alloy-eips 0.2.1", + "alloy-json-rpc 0.2.1", + "alloy-network 0.2.1", + "alloy-network-primitives", + "alloy-node-bindings", + "alloy-primitives 0.7.7", + "alloy-pubsub", + "alloy-rpc-client 0.2.1", + "alloy-rpc-types-anvil", + "alloy-rpc-types-eth", + "alloy-rpc-types-trace", + "alloy-signer-local", + "alloy-transport 0.2.1", + "alloy-transport-http 0.2.1", + "alloy-transport-ipc", + "alloy-transport-ws", + "async-stream", + "async-trait", + "auto_impl", + "dashmap", + "futures", + "futures-utils-wasm", + "lru", + "pin-project", + "reqwest 0.12.7", + "serde", + "serde_json", + "tokio", + "tracing", + "url", +] + +[[package]] +name = "alloy-pubsub" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f5da2c55cbaf229bad3c5f8b00b5ab66c74ef093e5f3a753d874cfecf7d2281" +dependencies = [ + "alloy-json-rpc 0.2.1", + "alloy-primitives 0.7.7", + "alloy-transport 0.2.1", + "bimap", + "futures", + "serde", + "serde_json", + "tokio", + "tokio-stream", + "tower", + "tracing", +] + +[[package]] +name = "alloy-rlp" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b155716bab55763c95ba212806cf43d05bcc70e5f35b02bad20cf5ec7fe11fed" +dependencies = [ + "alloy-rlp-derive", + "arrayvec", + "bytes", +] + +[[package]] +name = "alloy-rlp-derive" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8037e03c7f462a063f28daec9fda285a9a89da003c552f8637a80b9c8fd96241" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "alloy-rpc-client" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-json-rpc 0.1.0", + "alloy-transport 0.1.0", + "alloy-transport-http 0.1.0", + "futures", + "pin-project", + "reqwest 0.12.7", + "serde", + "serde_json", + "tokio", + "tokio-stream", + "tower", + "tracing", + "url", +] + +[[package]] +name = "alloy-rpc-client" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b38e3ffdb285df5d9f60cb988d336d9b8e3505acb78750c3bc60336a7af41d3" +dependencies = [ + "alloy-json-rpc 0.2.1", + "alloy-primitives 0.7.7", + "alloy-pubsub", + "alloy-transport 0.2.1", + "alloy-transport-http 0.2.1", + "alloy-transport-ipc", + "alloy-transport-ws", + "futures", + "pin-project", + "reqwest 0.12.7", + "serde", + "serde_json", + "tokio", + "tokio-stream", + "tower", + "tracing", + "url", +] + +[[package]] +name = "alloy-rpc-trace-types" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-primitives 0.6.4", + "alloy-rpc-types 0.1.0", + "alloy-serde 0.1.0", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-rpc-types" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-consensus 0.1.0", + "alloy-eips 0.1.0", + "alloy-primitives 0.6.4", + "alloy-rlp", + "alloy-serde 0.1.0", + "itertools 0.12.1", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "alloy-rpc-types" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c31a3750b8f5a350d17354e46a52b0f2f19ec5f2006d816935af599dedc521" +dependencies = [ + "alloy-rpc-types-engine", + "alloy-rpc-types-eth", + "alloy-rpc-types-trace", + "alloy-serde 0.2.1", + "serde", +] + +[[package]] +name = "alloy-rpc-types-anvil" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52ab6509cd38b2e8c8da726e0f61c1e314a81df06a38d37ddec8bced3f8d25ed" +dependencies = [ + "alloy-primitives 0.7.7", + "alloy-serde 0.2.1", + "serde", +] + +[[package]] +name = "alloy-rpc-types-engine" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff63f51b2fb2f547df5218527fd0653afb1947bf7fead5b3ce58c75d170b30f7" +dependencies = [ + "alloy-consensus 0.2.1", + "alloy-eips 0.2.1", + "alloy-primitives 0.7.7", + "alloy-rlp", + "alloy-rpc-types-eth", + "alloy-serde 0.2.1", + "jsonwebtoken", + "rand", + "serde", + "thiserror", +] + +[[package]] +name = "alloy-rpc-types-eth" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81e18424d962d7700a882fe423714bd5b9dde74c7a7589d4255ea64068773aef" +dependencies = [ + "alloy-consensus 0.2.1", + "alloy-eips 0.2.1", + "alloy-network-primitives", + "alloy-primitives 0.7.7", + "alloy-rlp", + "alloy-serde 0.2.1", + "alloy-sol-types 0.7.7", + "itertools 0.13.0", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "alloy-rpc-types-trace" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a86eeb49ea0cc79f249faa1d35c20541bb1c317a59b5962cb07b1890355b0064" +dependencies = [ + "alloy-primitives 0.7.7", + "alloy-rpc-types-eth", + "alloy-serde 0.2.1", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "alloy-serde" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-primitives 0.6.4", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-serde" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e33feda6a53e6079895aed1d08dcb98a1377b000d80d16370fbbdb8155d547ef" +dependencies = [ + "alloy-primitives 0.7.7", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-signer" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-primitives 0.6.4", + "async-trait", + "auto_impl", + "elliptic-curve 0.13.8", + "k256", + "thiserror", +] + +[[package]] +name = "alloy-signer" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "740a25b92e849ed7b0fa013951fe2f64be9af1ad5abe805037b44fb7770c5c47" +dependencies = [ + "alloy-primitives 0.7.7", + "async-trait", + "auto_impl", + "elliptic-curve 0.13.8", + "k256", + "thiserror", +] + +[[package]] +name = "alloy-signer-local" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b0707d4f63e4356a110b30ef3add8732ab6d181dd7be4607bf79b8777105cee" +dependencies = [ + "alloy-consensus 0.2.1", + "alloy-network 0.2.1", + "alloy-primitives 0.7.7", + "alloy-signer 0.2.1", + "async-trait", + "k256", + "rand", + "thiserror", +] + +[[package]] +name = "alloy-signer-wallet" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-consensus 0.1.0", + "alloy-network 0.1.0", + "alloy-primitives 0.6.4", + "alloy-signer 0.1.0", + "async-trait", + "k256", + "rand", + "thiserror", +] + +[[package]] +name = "alloy-sol-macro" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e86ec0a47740b20bc5613b8712d0d321d031c4efc58e9645af96085d5cccfc27" +dependencies = [ + "const-hex", + "dunce", + "heck 0.4.1", + "indexmap 2.6.0", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 2.0.66", + "syn-solidity 0.6.4", + "tiny-keccak", +] + +[[package]] +name = "alloy-sol-macro" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b40397ddcdcc266f59f959770f601ce1280e699a91fc1862f29cef91707cd09" +dependencies = [ + "alloy-sol-macro-expander 0.7.7", + "alloy-sol-macro-input 0.7.7", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "alloy-sol-macro" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68e7f6e8fe5b443f82b3f1e15abfa191128f71569148428e49449d01f6f49e8b" +dependencies = [ + "alloy-sol-macro-expander 0.8.5", + "alloy-sol-macro-input 0.8.5", + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "alloy-sol-macro-expander" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "867a5469d61480fea08c7333ffeca52d5b621f5ca2e44f271b117ec1fc9a0525" +dependencies = [ + "alloy-json-abi 0.7.7", + "alloy-sol-macro-input 0.7.7", + "const-hex", + "heck 0.5.0", + "indexmap 2.6.0", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 2.0.66", + "syn-solidity 0.7.7", + "tiny-keccak", +] + +[[package]] +name = "alloy-sol-macro-expander" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b96ce28d2fde09abb6135f410c41fad670a3a770b6776869bd852f1df102e6f" +dependencies = [ + "alloy-sol-macro-input 0.8.5", + "const-hex", + "heck 0.5.0", + "indexmap 2.6.0", + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.66", + "syn-solidity 0.8.5", + "tiny-keccak", +] + +[[package]] +name = "alloy-sol-macro-input" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e482dc33a32b6fadbc0f599adea520bd3aaa585c141a80b404d0a3e3fa72528" +dependencies = [ + "alloy-json-abi 0.7.7", + "const-hex", + "dunce", + "heck 0.5.0", + "proc-macro2", + "quote", + "serde_json", + "syn 2.0.66", + "syn-solidity 0.7.7", +] + +[[package]] +name = "alloy-sol-macro-input" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "906746396a8296537745711630d9185746c0b50c033d5e9d18b0a6eba3d53f90" +dependencies = [ + "const-hex", + "dunce", + "heck 0.5.0", + "proc-macro2", + "quote", + "syn 2.0.66", + "syn-solidity 0.8.5", +] + +[[package]] +name = "alloy-sol-type-parser" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0045cc89524e1451ccf33e8581355b6027ac7c6e494bb02959d4213ad0d8e91d" +dependencies = [ + "winnow 0.6.13", +] + +[[package]] +name = "alloy-sol-type-parser" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbcba3ca07cf7975f15d871b721fb18031eec8bce51103907f6dcce00b255d98" +dependencies = [ + "serde", + "winnow 0.6.13", +] + +[[package]] +name = "alloy-sol-type-parser" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc85178909a49c8827ffccfc9103a7ce1767ae66a801b69bdc326913870bf8e6" +dependencies = [ + "serde", + "winnow 0.6.13", +] + +[[package]] +name = "alloy-sol-types" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad09ec5853fa700d12d778ad224dcdec636af424d29fad84fb9a2f16a5b0ef09" +dependencies = [ + "alloy-primitives 0.6.4", + "alloy-sol-macro 0.6.4", + "const-hex", + "serde", +] + +[[package]] +name = "alloy-sol-types" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a91ca40fa20793ae9c3841b83e74569d1cc9af29a2f5237314fd3452d51e38c7" +dependencies = [ + "alloy-json-abi 0.7.7", + "alloy-primitives 0.7.7", + "alloy-sol-macro 0.7.7", + "const-hex", + "serde", +] + +[[package]] +name = "alloy-sol-types" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d86a533ce22525969661b25dfe296c112d35eb6861f188fd284f8bd4bb3842ae" +dependencies = [ + "alloy-json-abi 0.8.5", + "alloy-primitives 0.8.5", + "alloy-sol-macro 0.8.5", + "const-hex", + "serde", +] + +[[package]] +name = "alloy-transport" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-json-rpc 0.1.0", + "base64 0.22.1", + "futures-util", + "futures-utils-wasm", + "serde", + "serde_json", + "thiserror", + "tokio", + "tower", + "url", + "wasm-bindgen-futures", +] + +[[package]] +name = "alloy-transport" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d0590afbdacf2f8cca49d025a2466f3b6584a016a8b28f532f29f8da1007bae" +dependencies = [ + "alloy-json-rpc 0.2.1", + "base64 0.22.1", + "futures-util", + "futures-utils-wasm", + "serde", + "serde_json", + "thiserror", + "tokio", + "tower", + "tracing", + "url", +] + +[[package]] +name = "alloy-transport-http" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/alloy?rev=68952c0#68952c00372b4c388c7effc53cd562fd321c0aa3" +dependencies = [ + "alloy-json-rpc 0.1.0", + "alloy-transport 0.1.0", + "reqwest 0.12.7", + "serde_json", + "tower", + "url", +] + +[[package]] +name = "alloy-transport-http" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2437d145d80ea1aecde8574d2058cceb8b3c9cba05f6aea8e67907c660d46698" +dependencies = [ + "alloy-json-rpc 0.2.1", + "alloy-transport 0.2.1", + "reqwest 0.12.7", + "serde_json", + "tower", + "tracing", + "url", +] + +[[package]] +name = "alloy-transport-ipc" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "804494366e20468776db4e18f9eb5db7db0fe14f1271eb6dbf155d867233405c" +dependencies = [ + "alloy-json-rpc 0.2.1", + "alloy-pubsub", + "alloy-transport 0.2.1", + "bytes", + "futures", + "interprocess", + "pin-project", + "serde_json", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "alloy-transport-ws" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af855163e7df008799941aa6dd324a43ef2bf264b08ba4b22d44aad6ced65300" +dependencies = [ + "alloy-pubsub", + "alloy-transport 0.2.1", + "futures", + "http 1.1.0", + "rustls 0.23.10", + "serde_json", + "tokio", + "tokio-tungstenite", + "tracing", + "ws_stream_wasm", +] + +[[package]] +name = "amq-protocol" +version = "7.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f051d4d77904272e9be7e292607378dc9900d15b8d314bfd3ed4b82fdd84f125" +dependencies = [ + "amq-protocol-tcp", + "amq-protocol-types", + "amq-protocol-uri", + "cookie-factory", + "nom", + "serde", +] + +[[package]] +name = "amq-protocol-tcp" +version = "7.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e3d51dd36e67d757c9ba80a7b2a2a2a69254c1dbe4d8c631824ec7f5b69f60e" +dependencies = [ + "amq-protocol-uri", + "tcp-stream", + "tracing", +] + +[[package]] +name = "amq-protocol-types" +version = "7.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0acdd47054ced8b9bc89ee0dbb42ccc8028de48d8658b24de4c255a226c9bfec" +dependencies = [ + "cookie-factory", + "nom", + "serde", + "serde_json", +] + +[[package]] +name = "amq-protocol-uri" +version = "7.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f17881b7575dab3e71403f28a3e50b71f0d1bd026829abca3c48664522ce0df0" +dependencies = [ + "amq-protocol-types", + "percent-encoding", + "url", +] + +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + +[[package]] +name = "anstream" +version = "0.6.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is_terminal_polyfill", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b" + +[[package]] +name = "anstyle-parse" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad186efb764318d35165f1758e7dcef3b10628e26d41a44bc5550652e6804391" +dependencies = [ + "windows-sys 0.52.0", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19" +dependencies = [ + "anstyle", + "windows-sys 0.52.0", +] + +[[package]] +name = "anyhow" +version = "1.0.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6" + +[[package]] +name = "appchain-core-contract-client" +version = "0.1.0" +source = "git+https://github.com/byteZorvin/zaun?branch=type-update#ec12b0cb20ebec289d03ba277a505bf5132ba650" +dependencies = [ + "appchain-utils", + "async-trait", + "color-eyre", + "dirs", + "hex", + "log", + "num-traits 0.2.19", + "serde_json", + "starknet", + "starknet-accounts", + "starknet-core 0.11.1", + "starknet-ff", + "starknet-providers", +] + +[[package]] +name = "appchain-utils" +version = "0.1.0" +source = "git+https://github.com/byteZorvin/zaun?branch=type-update#ec12b0cb20ebec289d03ba277a505bf5132ba650" +dependencies = [ + "async-trait", + "color-eyre", + "hex", + "log", + "num-traits 0.2.19", + "serde_json", + "starknet", + "starknet-accounts", + "starknet-contract", + "starknet-core 0.11.1", + "starknet-ff", + "starknet-providers", + "starknet-signers", + "thiserror", + "url", +] + +[[package]] +name = "ark-ec" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" +dependencies = [ + "ark-ff 0.4.2", + "ark-poly", + "ark-serialize 0.4.2", + "ark-std 0.4.0", + "derivative", + "hashbrown 0.13.2", + "itertools 0.10.5", + "num-traits 0.2.19", + "zeroize", +] + +[[package]] +name = "ark-ff" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b3235cc41ee7a12aaaf2c575a2ad7b46713a8a50bda2fc3b003a04845c05dd6" +dependencies = [ + "ark-ff-asm 0.3.0", + "ark-ff-macros 0.3.0", + "ark-serialize 0.3.0", + "ark-std 0.3.0", + "derivative", + "num-bigint", + "num-traits 0.2.19", + "paste", + "rustc_version 0.3.3", + "zeroize", +] + +[[package]] +name = "ark-ff" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" +dependencies = [ + "ark-ff-asm 0.4.2", + "ark-ff-macros 0.4.2", + "ark-serialize 0.4.2", + "ark-std 0.4.0", + "derivative", + "digest 0.10.7", + "itertools 0.10.5", + "num-bigint", + "num-traits 0.2.19", + "paste", + "rustc_version 0.4.0", + "zeroize", +] + +[[package]] +name = "ark-ff-asm" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db02d390bf6643fb404d3d22d31aee1c4bc4459600aef9113833d17e786c6e44" +dependencies = [ + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-ff-asm" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" +dependencies = [ + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-ff-macros" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db2fd794a08ccb318058009eefdf15bcaaaaf6f8161eb3345f907222bac38b20" +dependencies = [ + "num-bigint", + "num-traits 0.2.19", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-ff-macros" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" +dependencies = [ + "num-bigint", + "num-traits 0.2.19", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-poly" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" +dependencies = [ + "ark-ff 0.4.2", + "ark-serialize 0.4.2", + "ark-std 0.4.0", + "derivative", + "hashbrown 0.13.2", +] + +[[package]] +name = "ark-secp256k1" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c02e954eaeb4ddb29613fee20840c2bbc85ca4396d53e33837e11905363c5f2" +dependencies = [ + "ark-ec", + "ark-ff 0.4.2", + "ark-std 0.4.0", +] + +[[package]] +name = "ark-secp256r1" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3975a01b0a6e3eae0f72ec7ca8598a6620fc72fa5981f6f5cca33b7cd788f633" +dependencies = [ + "ark-ec", + "ark-ff 0.4.2", + "ark-std 0.4.0", +] + +[[package]] +name = "ark-serialize" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d6c2b318ee6e10f8c2853e73a83adc0ccb88995aa978d8a3408d492ab2ee671" +dependencies = [ + "ark-std 0.3.0", + "digest 0.9.0", +] + +[[package]] +name = "ark-serialize" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" +dependencies = [ + "ark-serialize-derive", + "ark-std 0.4.0", + "digest 0.10.7", + "num-bigint", +] + +[[package]] +name = "ark-serialize-derive" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-std" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1df2c09229cbc5a028b1d70e00fdb2acee28b1055dfb5ca73eea49c5a25c4e7c" +dependencies = [ + "num-traits 0.2.19", + "rand", +] + +[[package]] +name = "ark-std" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" +dependencies = [ + "num-traits 0.2.19", + "rand", +] + +[[package]] +name = "arrayvec" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" + +[[package]] +name = "ascii-canvas" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8824ecca2e851cec16968d54a01dd372ef8f95b244fb84b84e70128be347c3c6" +dependencies = [ + "term", +] + +[[package]] +name = "asn1-rs" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22ad1373757efa0f70ec53939aabc7152e1591cb485208052993070ac8d2429d" +dependencies = [ + "asn1-rs-derive", + "asn1-rs-impl", + "displaydoc", + "nom", + "num-traits 0.2.19", + "rusticata-macros", + "thiserror", + "time", +] + +[[package]] +name = "asn1-rs-derive" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7378575ff571966e99a744addeff0bff98b8ada0dedf1956d59e634db95eaac1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", + "synstructure", +] + +[[package]] +name = "asn1-rs-impl" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "assert-json-diff" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47e4f2b81832e72834d7518d8487a0396a28cc408186a2e8854c0f98011faf12" +dependencies = [ + "serde", + "serde_json", +] + +[[package]] +name = "assert_matches" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" + +[[package]] +name = "async-attributes" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3203e79f4dd9bdda415ed03cf14dae5a2bf775c683a00f94e9cd1faf0f596e5" +dependencies = [ + "quote", + "syn 1.0.109", +] + +[[package]] +name = "async-channel" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" +dependencies = [ + "concurrent-queue", + "event-listener 2.5.3", + "futures-core", +] + +[[package]] +name = "async-channel" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89b47800b0be77592da0afd425cc03468052844aff33b84e33cc696f64e77b6a" +dependencies = [ + "concurrent-queue", + "event-listener-strategy", + "futures-core", + "pin-project-lite", +] + +[[package]] +name = "async-executor" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8828ec6e544c02b0d6691d21ed9f9218d0384a82542855073c2a3f58304aaf0" +dependencies = [ + "async-task", + "concurrent-queue", + "fastrand 2.1.1", + "futures-lite 2.3.0", + "slab", +] + +[[package]] +name = "async-global-executor" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05b1b633a2115cd122d73b955eadd9916c18c8f510ec9cd1686404c60ad1c29c" +dependencies = [ + "async-channel 2.3.1", + "async-executor", + "async-io 2.3.3", + "async-lock 3.4.0", + "blocking", + "futures-lite 2.3.0", + "once_cell", +] + +[[package]] +name = "async-global-executor-trait" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33dd14c5a15affd2abcff50d84efd4009ada28a860f01c14f9d654f3e81b3f75" +dependencies = [ + "async-global-executor", + "async-trait", + "executor-trait", +] + +[[package]] +name = "async-io" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fc5b45d93ef0529756f812ca52e44c221b35341892d3dcc34132ac02f3dd2af" +dependencies = [ + "async-lock 2.8.0", + "autocfg", + "cfg-if", + "concurrent-queue", + "futures-lite 1.13.0", + "log", + "parking", + "polling 2.8.0", + "rustix 0.37.27", + "slab", + "socket2 0.4.10", + "waker-fn", +] + +[[package]] +name = "async-io" +version = "2.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d6baa8f0178795da0e71bc42c9e5d13261aac7ee549853162e66a241ba17964" +dependencies = [ + "async-lock 3.4.0", + "cfg-if", + "concurrent-queue", + "futures-io", + "futures-lite 2.3.0", + "parking", + "polling 3.7.2", + "rustix 0.38.37", + "slab", + "tracing", + "windows-sys 0.52.0", +] + +[[package]] +name = "async-lock" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b" +dependencies = [ + "event-listener 2.5.3", +] + +[[package]] +name = "async-lock" +version = "3.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18" +dependencies = [ + "event-listener 5.3.1", + "event-listener-strategy", + "pin-project-lite", +] + +[[package]] +name = "async-object-pool" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aeb901c30ebc2fc4ab46395bbfbdba9542c16559d853645d75190c3056caf3bc" +dependencies = [ + "async-std", +] + +[[package]] +name = "async-process" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63255f1dc2381611000436537bbedfe83183faa303a5a0edaf191edef06526bb" +dependencies = [ + "async-channel 2.3.1", + "async-io 2.3.3", + "async-lock 3.4.0", + "async-signal", + "async-task", + "blocking", + "cfg-if", + "event-listener 5.3.1", + "futures-lite 2.3.0", + "rustix 0.38.37", + "tracing", +] + +[[package]] +name = "async-reactor-trait" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a6012d170ad00de56c9ee354aef2e358359deb1ec504254e0e5a3774771de0e" +dependencies = [ + "async-io 1.13.0", + "async-trait", + "futures-core", + "reactor-trait", +] + +[[package]] +name = "async-signal" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "794f185324c2f00e771cd9f1ae8b5ac68be2ca7abb129a87afd6e86d228bc54d" +dependencies = [ + "async-io 2.3.3", + "async-lock 3.4.0", + "atomic-waker", + "cfg-if", + "futures-core", + "futures-io", + "rustix 0.38.37", + "signal-hook-registry", + "slab", + "windows-sys 0.52.0", +] + +[[package]] +name = "async-std" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c634475f29802fde2b8f0b505b1bd00dfe4df7d4a000f0b36f7671197d5c3615" +dependencies = [ + "async-attributes", + "async-channel 1.9.0", + "async-global-executor", + "async-io 2.3.3", + "async-lock 3.4.0", + "async-process", + "crossbeam-utils", + "futures-channel", + "futures-core", + "futures-io", + "futures-lite 2.3.0", + "gloo-timers", + "kv-log-macro", + "log", + "memchr", + "once_cell", + "pin-project-lite", + "pin-utils", + "slab", + "wasm-bindgen-futures", +] + +[[package]] +name = "async-stream" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" +dependencies = [ + "async-stream-impl", + "futures-core", + "pin-project-lite", +] + +[[package]] +name = "async-stream-impl" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "async-task" +version = "4.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de" + +[[package]] +name = "async-trait" +version = "0.1.80" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "async_io_stream" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6d7b9decdf35d8908a7e3ef02f64c5e9b1695e230154c0e8de3969142d9b94c" +dependencies = [ + "futures", + "pharos", + "rustc_version 0.4.0", +] + +[[package]] +name = "atlantic-service" +version = "0.1.0" +dependencies = [ + "alloy 0.2.1", + "async-trait", + "base64 0.22.1", + "cairo-vm 1.0.1 (git+https://github.com/Moonsong-Labs/cairo-vm?branch=notlesh%2Fsnos-2024-11-04)", + "chrono", + "color-eyre", + "dotenvy", + "env_logger", + "gps-fact-checker", + "hex", + "httpmock", + "lazy_static", + "log", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry_sdk", + "prover-client-interface", + "reqwest 0.12.7", + "rstest 0.22.0", + "serde", + "serde_json", + "starknet-os", + "strum 0.26.3", + "strum_macros 0.26.4", + "tempfile", + "thiserror", + "tokio", + "tokio-util", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "utils", + "uuid 1.8.0", +] + +[[package]] +name = "atomic-waker" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" + +[[package]] +name = "auto_impl" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "autocfg" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" + +[[package]] +name = "aws-config" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ac9889352d632214df943e26740c46a0f3da6e329fbd28164fe7ae1b061da7b" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-sdk-sso", + "aws-sdk-ssooidc", + "aws-sdk-sts", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "fastrand 2.1.1", + "hex", + "http 0.2.12", + "hyper 0.14.29", + "ring", + "time", + "tokio", + "tracing", + "url", + "zeroize", +] + +[[package]] +name = "aws-credential-types" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60e8f6b615cb5fc60a98132268508ad104310f0cfb25a1c22eee76efdf9154da" +dependencies = [ + "aws-smithy-async", + "aws-smithy-runtime-api", + "aws-smithy-types", + "zeroize", +] + +[[package]] +name = "aws-lc-rs" +version = "1.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf7d844e282b4b56750b2d4e893b2205581ded8709fddd2b6aa5418c150ca877" +dependencies = [ + "aws-lc-sys", + "mirai-annotations", + "paste", + "zeroize", +] + +[[package]] +name = "aws-lc-sys" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3a2c29203f6bf296d01141cc8bb9dbd5ecd4c27843f2ee0767bcd5985a927da" +dependencies = [ + "bindgen", + "cc", + "cmake", + "dunce", + "fs_extra", + "libc", + "paste", +] + +[[package]] +name = "aws-runtime" +version = "1.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a10d5c055aa540164d9561a0e2e74ad30f0dcf7393c3a92f6733ddf9c5762468" +dependencies = [ + "aws-credential-types", + "aws-sigv4", + "aws-smithy-async", + "aws-smithy-eventstream", + "aws-smithy-http", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "fastrand 2.1.1", + "http 0.2.12", + "http-body 0.4.6", + "once_cell", + "percent-encoding", + "pin-project-lite", + "tracing", + "uuid 1.8.0", +] + +[[package]] +name = "aws-sdk-eventbridge" +version = "1.41.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4fb65d775433ba494cc8b67584129989ae31316b5f0a204d7638b5592fb2570" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sdk-iam" +version = "1.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94a8c7a2bff782d1eecd80f6d56547aae572c7b46a3f7253dd3dcd1e7fce27ed" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-query", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-smithy-xml", + "aws-types", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sdk-s3" +version = "1.38.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ecec5514e9d9c76c5e9489ca65ab9055ae0b3c49da3a1afd452c57cb68734fb" +dependencies = [ + "ahash 0.8.11", + "aws-credential-types", + "aws-runtime", + "aws-sigv4", + "aws-smithy-async", + "aws-smithy-checksums", + "aws-smithy-eventstream", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-smithy-xml", + "aws-types", + "bytes", + "fastrand 2.1.1", + "hex", + "hmac", + "http 0.2.12", + "http-body 0.4.6", + "lru", + "once_cell", + "percent-encoding", + "regex-lite", + "sha2", + "tracing", + "url", +] + +[[package]] +name = "aws-sdk-scheduler" +version = "1.49.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9c5c5a4a8389740229ff10f69962b3955aaa63ae2f297a4a366d563b4133591" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "fastrand 2.1.1", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sdk-sns" +version = "1.40.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dab2b9787b8d9d3094ace9585e785079cfc583199ec620ab067b599e8850c1a6" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-query", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-smithy-xml", + "aws-types", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sdk-sqs" +version = "1.36.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3587fbaf540d65337c2356ebf3f78fba160025b3d69634175f1ea3a7895738e9" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sdk-sso" +version = "1.29.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da75cf91cbb46686a27436d639a720a3a198b148efa76dc2467b7e5374a67fc0" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sdk-ssooidc" +version = "1.30.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf2ec8a6687299685ed0a4a3137c129cdb132b5235bc3aa3443f6cffe468b9ff" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-types", + "bytes", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sdk-sts" +version = "1.29.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "458f1031e094b1411b59b49b19e4118f069e1fe13a9c5b8888e933daaf7ffdd6" +dependencies = [ + "aws-credential-types", + "aws-runtime", + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-json", + "aws-smithy-query", + "aws-smithy-runtime", + "aws-smithy-runtime-api", + "aws-smithy-types", + "aws-smithy-xml", + "aws-types", + "http 0.2.12", + "once_cell", + "regex-lite", + "tracing", +] + +[[package]] +name = "aws-sigv4" +version = "1.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5619742a0d8f253be760bfbb8e8e8368c69e3587e4637af5754e488a611499b1" +dependencies = [ + "aws-credential-types", + "aws-smithy-eventstream", + "aws-smithy-http", + "aws-smithy-runtime-api", + "aws-smithy-types", + "bytes", + "crypto-bigint 0.5.5", + "form_urlencoded", + "hex", + "hmac", + "http 0.2.12", + "http 1.1.0", + "once_cell", + "p256", + "percent-encoding", + "ring", + "sha2", + "subtle", + "time", + "tracing", + "zeroize", +] + +[[package]] +name = "aws-smithy-async" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62220bc6e97f946ddd51b5f1361f78996e704677afc518a4ff66b7a72ea1378c" +dependencies = [ + "futures-util", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "aws-smithy-checksums" +version = "0.60.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5b30ea96823b8b25fb6471643a516e1bd475fd5575304e6240aea179f213216" +dependencies = [ + "aws-smithy-http", + "aws-smithy-types", + "bytes", + "crc32c", + "crc32fast", + "hex", + "http 0.2.12", + "http-body 0.4.6", + "md-5", + "pin-project-lite", + "sha1", + "sha2", + "tracing", +] + +[[package]] +name = "aws-smithy-eventstream" +version = "0.60.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cef7d0a272725f87e51ba2bf89f8c21e4df61b9e49ae1ac367a6d69916ef7c90" +dependencies = [ + "aws-smithy-types", + "bytes", + "crc32fast", +] + +[[package]] +name = "aws-smithy-http" +version = "0.60.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c8bc3e8fdc6b8d07d976e301c02fe553f72a39b7a9fea820e023268467d7ab6" +dependencies = [ + "aws-smithy-eventstream", + "aws-smithy-runtime-api", + "aws-smithy-types", + "bytes", + "bytes-utils", + "futures-core", + "http 0.2.12", + "http-body 0.4.6", + "once_cell", + "percent-encoding", + "pin-project-lite", + "pin-utils", + "tracing", +] + +[[package]] +name = "aws-smithy-json" +version = "0.60.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4683df9469ef09468dad3473d129960119a0d3593617542b7d52086c8486f2d6" +dependencies = [ + "aws-smithy-types", +] + +[[package]] +name = "aws-smithy-query" +version = "0.60.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2fbd61ceb3fe8a1cb7352e42689cec5335833cd9f94103a61e98f9bb61c64bb" +dependencies = [ + "aws-smithy-types", + "urlencoding", +] + +[[package]] +name = "aws-smithy-runtime" +version = "1.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be28bd063fa91fd871d131fc8b68d7cd4c5fa0869bea68daca50dcb1cbd76be2" +dependencies = [ + "aws-smithy-async", + "aws-smithy-http", + "aws-smithy-runtime-api", + "aws-smithy-types", + "bytes", + "fastrand 2.1.1", + "h2 0.3.26", + "http 0.2.12", + "http-body 0.4.6", + "http-body 1.0.0", + "httparse", + "hyper 0.14.29", + "hyper-rustls 0.24.2", + "once_cell", + "pin-project-lite", + "pin-utils", + "rustls 0.21.12", + "tokio", + "tracing", +] + +[[package]] +name = "aws-smithy-runtime-api" +version = "1.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92165296a47a812b267b4f41032ff8069ab7ff783696d217f0994a0d7ab585cd" +dependencies = [ + "aws-smithy-async", + "aws-smithy-types", + "bytes", + "http 0.2.12", + "http 1.1.0", + "pin-project-lite", + "tokio", + "tracing", + "zeroize", +] + +[[package]] +name = "aws-smithy-types" +version = "1.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fbd94a32b3a7d55d3806fe27d98d3ad393050439dd05eb53ece36ec5e3d3510" +dependencies = [ + "base64-simd", + "bytes", + "bytes-utils", + "futures-core", + "http 0.2.12", + "http 1.1.0", + "http-body 0.4.6", + "http-body 1.0.0", + "http-body-util", + "itoa", + "num-integer", + "pin-project-lite", + "pin-utils", + "ryu", + "serde", + "time", + "tokio", + "tokio-util", +] + +[[package]] +name = "aws-smithy-xml" +version = "0.60.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab0b0166827aa700d3dc519f72f8b3a91c35d0b8d042dc5d643a91e6f80648fc" +dependencies = [ + "xmlparser", +] + +[[package]] +name = "aws-types" +version = "1.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5221b91b3e441e6675310829fd8984801b772cb1546ef6c0e54dec9f1ac13fef" +dependencies = [ + "aws-credential-types", + "aws-smithy-async", + "aws-smithy-runtime-api", + "aws-smithy-types", + "rustc_version 0.4.0", + "tracing", +] + +[[package]] +name = "axum" +version = "0.6.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" +dependencies = [ + "async-trait", + "axum-core 0.3.4", + "bitflags 1.3.2", + "bytes", + "futures-util", + "http 0.2.12", + "http-body 0.4.6", + "hyper 0.14.29", + "itoa", + "matchit", + "memchr", + "mime", + "percent-encoding", + "pin-project-lite", + "rustversion", + "serde", + "sync_wrapper 0.1.2", + "tower", + "tower-layer", + "tower-service", +] + +[[package]] +name = "axum" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf" +dependencies = [ + "async-trait", + "axum-core 0.4.3", + "axum-macros", + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.0", + "http-body-util", + "hyper 1.4.1", + "hyper-util", + "itoa", + "matchit", + "memchr", + "mime", + "percent-encoding", + "pin-project-lite", + "rustversion", + "serde", + "serde_json", + "serde_path_to_error", + "serde_urlencoded", + "sync_wrapper 1.0.1", + "tokio", + "tower", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "axum-core" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" +dependencies = [ + "async-trait", + "bytes", + "futures-util", + "http 0.2.12", + "http-body 0.4.6", + "mime", + "rustversion", + "tower-layer", + "tower-service", +] + +[[package]] +name = "axum-core" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a15c63fd72d41492dc4f497196f5da1fb04fb7529e631d73630d1b491e47a2e3" +dependencies = [ + "async-trait", + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.0", + "http-body-util", + "mime", + "pin-project-lite", + "rustversion", + "sync_wrapper 0.1.2", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "axum-macros" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00c055ee2d014ae5981ce1016374e8213682aa14d9bf40e48ab48b5f3ef20eaa" +dependencies = [ + "heck 0.4.1", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "backtrace" +version = "0.3.71" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d" +dependencies = [ + "addr2line", + "cc", + "cfg-if", + "libc", + "miniz_oxide 0.7.4", + "object", + "rustc-demangle", +] + +[[package]] +name = "base-encode" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a17bd29f7c70f32e9387f4d4acfa5ea7b7749ef784fb78cf382df97069337b8c" + +[[package]] +name = "base16ct" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce" + +[[package]] +name = "base16ct" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" + +[[package]] +name = "base64" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + +[[package]] +name = "base64" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" + +[[package]] +name = "base64" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" + +[[package]] +name = "base64-simd" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195" +dependencies = [ + "outref", + "vsimd", +] + +[[package]] +name = "base64ct" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" + +[[package]] +name = "bb8" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b10cf871f3ff2ce56432fddc2615ac7acc3aa22ca321f8fea800846fbb32f188" +dependencies = [ + "async-trait", + "futures-util", + "parking_lot", + "tokio", +] + +[[package]] +name = "bb8-redis" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4094bc17b933090cfded54315a86db01d67ec999583d4bab894c520f8c097d1f" +dependencies = [ + "async-trait", + "bb8", + "redis", +] + +[[package]] +name = "bigdecimal" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6773ddc0eafc0e509fb60e48dff7f450f8e674a0686ae8605e8d9901bd5eefa" +dependencies = [ + "num-bigint", + "num-integer", + "num-traits 0.2.19", + "serde", +] + +[[package]] +name = "bimap" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "230c5f1ca6a325a32553f8640d31ac9b49f2411e901e427570154868b46da4f7" + +[[package]] +name = "bincode" +version = "1.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" +dependencies = [ + "serde", +] + +[[package]] +name = "bincode" +version = "2.0.0-rc.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f11ea1a0346b94ef188834a65c068a03aec181c94896d481d7a0a40d85b0ce95" +dependencies = [ + "serde", +] + +[[package]] +name = "bindgen" +version = "0.69.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0" +dependencies = [ + "bitflags 2.5.0", + "cexpr", + "clang-sys", + "itertools 0.12.1", + "lazy_static", + "lazycell", + "log", + "prettyplease", + "proc-macro2", + "quote", + "regex", + "rustc-hash 1.1.0", + "shlex", + "syn 2.0.66", + "which", +] + +[[package]] +name = "bit-set" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +dependencies = [ + "bit-vec", +] + +[[package]] +name = "bit-vec" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bitflags" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" + +[[package]] +name = "bitvec" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +dependencies = [ + "funty", + "radium", + "serde", + "tap", + "wyz", +] + +[[package]] +name = "block-buffer" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +dependencies = [ + "generic-array", +] + +[[package]] +name = "block-padding" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93" +dependencies = [ + "generic-array", +] + +[[package]] +name = "blockifier" +version = "0.8.0-rc.3" +source = "git+https://github.com/Moonsong-Labs/sequencer?rev=6624e910c57db9a16f1607c1ed26f7d8f1114e73#6624e910c57db9a16f1607c1ed26f7d8f1114e73" +dependencies = [ + "anyhow", + "ark-ec", + "ark-ff 0.4.2", + "ark-secp256k1", + "ark-secp256r1", + "cached", + "cairo-lang-casm", + "cairo-lang-runner", + "cairo-lang-starknet-classes", + "cairo-lang-utils", + "cairo-vm 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "derive_more 0.99.18", + "indexmap 2.6.0", + "itertools 0.10.5", + "keccak", + "log", + "num-bigint", + "num-integer", + "num-rational", + "num-traits 0.2.19", + "once_cell", + "paste", + "phf", + "rand", + "rstest 0.17.0", + "serde", + "serde_json", + "sha2", + "sha3", + "starknet-types-core", + "starknet_api", + "strum 0.25.0", + "strum_macros 0.25.3", + "thiserror", +] + +[[package]] +name = "blocking" +version = "1.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "703f41c54fc768e63e091340b424302bb1c29ef4aa0c7f10fe849dfb114d29ea" +dependencies = [ + "async-channel 2.3.1", + "async-task", + "futures-io", + "futures-lite 2.3.0", + "piper", +] + +[[package]] +name = "blst" +version = "0.3.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62dc83a094a71d43eeadd254b1ec2d24cb6a0bb6cadce00df51f0db594711a32" +dependencies = [ + "cc", + "glob", + "threadpool", + "zeroize", +] + +[[package]] +name = "bollard" +version = "0.16.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0aed08d3adb6ebe0eff737115056652670ae290f177759aac19c30456135f94c" +dependencies = [ + "base64 0.22.1", + "bollard-stubs", + "bytes", + "futures-core", + "futures-util", + "hex", + "home", + "http 1.1.0", + "http-body-util", + "hyper 1.4.1", + "hyper-named-pipe", + "hyper-rustls 0.26.0", + "hyper-util", + "hyperlocal-next", + "log", + "pin-project-lite", + "rustls 0.22.4", + "rustls-native-certs 0.7.0", + "rustls-pemfile 2.1.2", + "rustls-pki-types", + "serde", + "serde_derive", + "serde_json", + "serde_repr", + "serde_urlencoded", + "thiserror", + "tokio", + "tokio-util", + "tower-service", + "url", + "winapi", +] + +[[package]] +name = "bollard-stubs" +version = "1.44.0-rc.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "709d9aa1c37abb89d40f19f5d0ad6f0d88cb1581264e571c9350fc5bb89cf1c5" +dependencies = [ + "serde", + "serde_repr", + "serde_with 3.10.0", +] + +[[package]] +name = "bson" +version = "2.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8a88e82b9106923b5c4d6edfca9e7db958d4e98a478ec115022e81b9b38e2c8" +dependencies = [ + "ahash 0.8.11", + "base64 0.13.1", + "bitvec", + "chrono", + "hex", + "indexmap 2.6.0", + "js-sys", + "once_cell", + "rand", + "serde", + "serde_bytes", + "serde_json", + "time", + "uuid 1.8.0", +] + +[[package]] +name = "bstr" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40723b8fb387abc38f4f4a37c09073622e41dd12327033091ef8950659e6dc0c" +dependencies = [ + "memchr", + "serde", +] + +[[package]] +name = "bumpalo" +version = "3.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" + +[[package]] +name = "byte-slice-cast" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "bytes" +version = "1.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "428d9aa8fbc0670b7b8d6030a7fadd0f86151cae55e4dbbece15f3780a3dfaf3" +dependencies = [ + "serde", +] + +[[package]] +name = "bytes-utils" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7dafe3a8757b027e2be6e4e5601ed563c55989fcf1546e933c66c8eb3a058d35" +dependencies = [ + "bytes", + "either", +] + +[[package]] +name = "bzip2" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8" +dependencies = [ + "bzip2-sys", + "libc", +] + +[[package]] +name = "bzip2-sys" +version = "0.1.11+1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc" +dependencies = [ + "cc", + "libc", + "pkg-config", +] + +[[package]] +name = "c-kzg" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0307f72feab3300336fb803a57134159f6e20139af1357f36c54cb90d8e8928" +dependencies = [ + "blst", + "cc", + "glob", + "hex", + "libc", + "once_cell", + "serde", +] + +[[package]] +name = "cached" +version = "0.44.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b195e4fbc4b6862bbd065b991a34750399c119797efff72492f28a5864de8700" +dependencies = [ + "async-trait", + "cached_proc_macro", + "cached_proc_macro_types", + "futures", + "hashbrown 0.13.2", + "instant", + "once_cell", + "thiserror", + "tokio", +] + +[[package]] +name = "cached_proc_macro" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b48814962d2fd604c50d2b9433c2a41a0ab567779ee2c02f7fba6eca1221f082" +dependencies = [ + "cached_proc_macro_types", + "darling 0.14.4", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "cached_proc_macro_types" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ade8366b8bd5ba243f0a58f036cc0ca8a2f069cff1a2351ef1cac6b083e16fc0" + +[[package]] +name = "cairo-lang-casm" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a4b4ca8473c25d1e760c83c2a49d953197556f82f6feb636004d3b6d6cc4a7" +dependencies = [ + "cairo-lang-utils", + "indoc", + "num-bigint", + "num-traits 0.2.19", + "parity-scale-codec", + "serde", +] + +[[package]] +name = "cairo-lang-compiler" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5852668d1c6966b34d6e4fe249732769ab9cb2012c201e3889d8119f206760a0" +dependencies = [ + "anyhow", + "cairo-lang-defs", + "cairo-lang-diagnostics", + "cairo-lang-filesystem", + "cairo-lang-lowering", + "cairo-lang-parser", + "cairo-lang-project", + "cairo-lang-semantic", + "cairo-lang-sierra", + "cairo-lang-sierra-generator", + "cairo-lang-syntax", + "cairo-lang-utils", + "indoc", + "rayon", + "rust-analyzer-salsa", + "semver 1.0.23", + "smol_str", + "thiserror", +] + +[[package]] +name = "cairo-lang-debug" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0644fab571f598547993936918c85f0e89b0bbc15140ca3ea723bff376be07d" +dependencies = [ + "cairo-lang-utils", +] + +[[package]] +name = "cairo-lang-defs" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f5f437d75ac25644880458effde562edcac45a888d27f2e497d30c6450fa97d" +dependencies = [ + "cairo-lang-debug", + "cairo-lang-diagnostics", + "cairo-lang-filesystem", + "cairo-lang-parser", + "cairo-lang-syntax", + "cairo-lang-utils", + "itertools 0.12.1", + "rust-analyzer-salsa", + "smol_str", +] + +[[package]] +name = "cairo-lang-diagnostics" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ec5b44d3eaf50e28e068d163e56b9effcea6afe3625c32dd96418d2d4ebc34c" +dependencies = [ + "cairo-lang-debug", + "cairo-lang-filesystem", + "cairo-lang-utils", + "itertools 0.12.1", +] + +[[package]] +name = "cairo-lang-eq-solver" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0cd844e568f51e39729e8ac18bd27ada2e2b6dc9138f8c81adad48456480681" +dependencies = [ + "cairo-lang-utils", + "good_lp", +] + +[[package]] +name = "cairo-lang-filesystem" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "323a2385e000589f7591f8a46599b4a462db6e36e5935bad3bceddcc1a1608e1" +dependencies = [ + "cairo-lang-debug", + "cairo-lang-utils", + "path-clean", + "rust-analyzer-salsa", + "semver 1.0.23", + "serde", + "smol_str", +] + +[[package]] +name = "cairo-lang-formatter" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1cf9cf637e12d41260dc59f3d988c76a6347424913ac8b6b8449ff3e79b59750" +dependencies = [ + "anyhow", + "cairo-lang-diagnostics", + "cairo-lang-filesystem", + "cairo-lang-parser", + "cairo-lang-syntax", + "cairo-lang-utils", + "diffy", + "ignore", + "itertools 0.12.1", + "rust-analyzer-salsa", + "serde", + "smol_str", + "thiserror", +] + +[[package]] +name = "cairo-lang-lowering" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d71bc5b1f19a00eb662c2cac33259b16b9cdbf9c005047aca0d538c13936407" +dependencies = [ + "cairo-lang-debug", + "cairo-lang-defs", + "cairo-lang-diagnostics", + "cairo-lang-filesystem", + "cairo-lang-parser", + "cairo-lang-proc-macros", + "cairo-lang-semantic", + "cairo-lang-syntax", + "cairo-lang-utils", + "id-arena", + "itertools 0.12.1", + "log", + "num-bigint", + "num-traits 0.2.19", + "rust-analyzer-salsa", + "smol_str", +] + +[[package]] +name = "cairo-lang-parser" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d939d258e26ace0f3cb1e50338ae18981a7505e3c20eabd24a62d70ee862d6c" +dependencies = [ + "cairo-lang-diagnostics", + "cairo-lang-filesystem", + "cairo-lang-syntax", + "cairo-lang-syntax-codegen", + "cairo-lang-utils", + "colored", + "itertools 0.12.1", + "num-bigint", + "num-traits 0.2.19", + "rust-analyzer-salsa", + "smol_str", + "unescaper", +] + +[[package]] +name = "cairo-lang-plugins" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b67a553a6d2d2b54264e77e3c8cb5bc866b40b32d5e2144a58b74c559c7e289f" +dependencies = [ + "cairo-lang-defs", + "cairo-lang-diagnostics", + "cairo-lang-filesystem", + "cairo-lang-parser", + "cairo-lang-syntax", + "cairo-lang-utils", + "indent", + "indoc", + "itertools 0.12.1", + "rust-analyzer-salsa", + "smol_str", +] + +[[package]] +name = "cairo-lang-proc-macros" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c33b5f4502b7efde6ac07fd5468f6dae15d88760aeece3d57a7bc4c224ba693e" +dependencies = [ + "cairo-lang-debug", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "cairo-lang-project" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b63d6a3cc86a79a29978acaaf6f94738c5487e265247fe06c7bf359645d8c200" +dependencies = [ + "cairo-lang-filesystem", + "cairo-lang-utils", + "serde", + "smol_str", + "thiserror", + "toml", +] + +[[package]] +name = "cairo-lang-runner" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "528a247ac59cb35b2f99d64605a81de815fa5fb0b0e7f7ece1d4e7fcf267d4ea" +dependencies = [ + "ark-ff 0.4.2", + "ark-secp256k1", + "ark-secp256r1", + "cairo-lang-casm", + "cairo-lang-lowering", + "cairo-lang-sierra", + "cairo-lang-sierra-ap-change", + "cairo-lang-sierra-generator", + "cairo-lang-sierra-to-casm", + "cairo-lang-sierra-type-size", + "cairo-lang-starknet", + "cairo-lang-utils", + "cairo-vm 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", + "itertools 0.12.1", + "keccak", + "num-bigint", + "num-integer", + "num-traits 0.2.19", + "rand", + "sha2", + "smol_str", + "starknet-types-core", + "thiserror", +] + +[[package]] +name = "cairo-lang-semantic" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00c284031fd14796dad91483c3039d7929f8440e1e9e334017744b1d22df5aa8" +dependencies = [ + "cairo-lang-debug", + "cairo-lang-defs", + "cairo-lang-diagnostics", + "cairo-lang-filesystem", + "cairo-lang-parser", + "cairo-lang-plugins", + "cairo-lang-proc-macros", + "cairo-lang-syntax", + "cairo-lang-test-utils", + "cairo-lang-utils", + "id-arena", + "indoc", + "itertools 0.12.1", + "num-bigint", + "num-traits 0.2.19", + "rust-analyzer-salsa", + "smol_str", + "toml", +] + +[[package]] +name = "cairo-lang-sierra" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "891488c1a3184ce91679f5bdb63015a1d24769a48bd07e5d51a1779d0031dfbe" +dependencies = [ + "anyhow", + "cairo-lang-utils", + "const-fnv1a-hash", + "convert_case 0.6.0", + "derivative", + "itertools 0.12.1", + "lalrpop", + "lalrpop-util", + "num-bigint", + "num-integer", + "num-traits 0.2.19", + "regex", + "rust-analyzer-salsa", + "serde", + "serde_json", + "sha3", + "smol_str", + "starknet-types-core", + "thiserror", +] + +[[package]] +name = "cairo-lang-sierra-ap-change" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea7752cd48c86b2cde8603b753a6df4da086dacd16a73d288854d5f040b51171" +dependencies = [ + "cairo-lang-eq-solver", + "cairo-lang-sierra", + "cairo-lang-sierra-type-size", + "cairo-lang-utils", + "itertools 0.12.1", + "num-bigint", + "num-traits 0.2.19", + "thiserror", +] + +[[package]] +name = "cairo-lang-sierra-gas" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "340892a09c9421414b2ac45b03c705f16e2bd737e4559dfd98ee1d20718dec9e" +dependencies = [ + "cairo-lang-eq-solver", + "cairo-lang-sierra", + "cairo-lang-sierra-type-size", + "cairo-lang-utils", + "itertools 0.12.1", + "num-bigint", + "num-traits 0.2.19", + "thiserror", +] + +[[package]] +name = "cairo-lang-sierra-generator" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5cc616e8df44c4d685fe3c5f81f35ebbda57225098b35cea8602457c45c9e96" +dependencies = [ + "cairo-lang-debug", + "cairo-lang-defs", + "cairo-lang-diagnostics", + "cairo-lang-filesystem", + "cairo-lang-lowering", + "cairo-lang-parser", + "cairo-lang-semantic", + "cairo-lang-sierra", + "cairo-lang-syntax", + "cairo-lang-utils", + "itertools 0.12.1", + "num-traits 0.2.19", + "rust-analyzer-salsa", + "serde", + "serde_json", + "smol_str", +] + +[[package]] +name = "cairo-lang-sierra-to-casm" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c22ff7e8113a46a907f82f191096c96935cc48247e3079971ddf536ccc2f4f8" +dependencies = [ + "assert_matches", + "cairo-lang-casm", + "cairo-lang-sierra", + "cairo-lang-sierra-ap-change", + "cairo-lang-sierra-gas", + "cairo-lang-sierra-type-size", + "cairo-lang-utils", + "indoc", + "itertools 0.12.1", + "num-bigint", + "num-traits 0.2.19", + "starknet-types-core", + "thiserror", +] + +[[package]] +name = "cairo-lang-sierra-type-size" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5bf41941776e7410a8853a8e2a116292fc24d219df1989a92ffe5ab0e98037eb" +dependencies = [ + "cairo-lang-sierra", + "cairo-lang-utils", +] + +[[package]] +name = "cairo-lang-starknet" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5508fa5ee8d24adf7d2c65505d0ac35efc892eac16d1449c6f7e314a0288cb8" +dependencies = [ + "anyhow", + "cairo-lang-compiler", + "cairo-lang-defs", + "cairo-lang-diagnostics", + "cairo-lang-filesystem", + "cairo-lang-lowering", + "cairo-lang-plugins", + "cairo-lang-semantic", + "cairo-lang-sierra", + "cairo-lang-sierra-generator", + "cairo-lang-starknet-classes", + "cairo-lang-syntax", + "cairo-lang-utils", + "const_format", + "indent", + "indoc", + "itertools 0.12.1", + "serde", + "serde_json", + "smol_str", + "starknet-types-core", + "thiserror", +] + +[[package]] +name = "cairo-lang-starknet-classes" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "482b8f9d7f8cc7140f1260ee71f3308a66d15bd228a06281067ca3f8f4410db2" +dependencies = [ + "cairo-lang-casm", + "cairo-lang-sierra", + "cairo-lang-sierra-to-casm", + "cairo-lang-utils", + "convert_case 0.6.0", + "itertools 0.12.1", + "num-bigint", + "num-integer", + "num-traits 0.2.19", + "serde", + "serde_json", + "sha3", + "smol_str", + "starknet-types-core", + "thiserror", +] + +[[package]] +name = "cairo-lang-syntax" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7db0776c3d06cea65d7afe7a3c7685f6867eb6d951cf505caf35abfd1746773b" +dependencies = [ + "cairo-lang-debug", + "cairo-lang-filesystem", + "cairo-lang-utils", + "num-bigint", + "num-traits 0.2.19", + "rust-analyzer-salsa", + "smol_str", + "unescaper", +] + +[[package]] +name = "cairo-lang-syntax-codegen" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ce0f7fa01c26cc731bc1d6350ac02fae91a68b5fdf60e684f991e861715adc4" +dependencies = [ + "genco", + "xshell", +] + +[[package]] +name = "cairo-lang-test-utils" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "630a070a69c387eee9c0eda65e4f2508d129d4fbe081091077e661020ab95637" +dependencies = [ + "cairo-lang-formatter", + "cairo-lang-utils", + "colored", + "log", + "pretty_assertions", +] + +[[package]] +name = "cairo-lang-utils" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73104609a7d865e4cd1de9cbf4e750683d076b6d0233bf81be511df274a26916" +dependencies = [ + "hashbrown 0.14.5", + "indexmap 2.6.0", + "itertools 0.12.1", + "num-bigint", + "num-traits 0.2.19", + "parity-scale-codec", + "schemars", + "serde", +] + +[[package]] +name = "cairo-type-derive" +version = "0.1.0" +source = "git+https://github.com/keep-starknet-strange/snos?branch=tmp%2Fsnos_devnet_zero_txs#2c472815ebebca927caa5382c3bb8e3c1bbf0d86" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "cairo-vm" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58363ad8065ed891e3b14a8191b707677c7c7cb5b9d10030822506786d8d8108" +dependencies = [ + "anyhow", + "bincode 2.0.0-rc.3", + "bitvec", + "generic-array", + "hashbrown 0.14.5", + "hex", + "keccak", + "lazy_static", + "nom", + "num-bigint", + "num-integer", + "num-prime", + "num-traits 0.2.19", + "rand", + "rust_decimal", + "serde", + "serde_json", + "sha2", + "sha3", + "starknet-crypto 0.6.2", + "starknet-types-core", + "thiserror-no-std", + "zip", +] + +[[package]] +name = "cairo-vm" +version = "1.0.1" +source = "git+https://github.com/Moonsong-Labs/cairo-vm?branch=notlesh%2Fsnos-2024-11-04#1fa902bafae507424b5ea83a625830ffe6b0eca5" +dependencies = [ + "anyhow", + "ark-ff 0.4.2", + "ark-std 0.4.0", + "bincode 2.0.0-rc.3", + "bitvec", + "cairo-lang-casm", + "cairo-lang-starknet", + "cairo-lang-starknet-classes", + "generic-array", + "hashbrown 0.14.5", + "hex", + "keccak", + "lazy_static", + "nom", + "num-bigint", + "num-integer", + "num-prime", + "num-traits 0.2.19", + "rand", + "rust_decimal", + "serde", + "serde_json", + "sha2", + "sha3", + "starknet-crypto 0.6.2", + "starknet-types-core", + "thiserror-no-std", + "wasm-bindgen", + "zip", +] + +[[package]] +name = "cbc" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26b52a9543ae338f279b96b0b9fed9c8093744685043739079ce85cd58f289a6" +dependencies = [ + "cipher", +] + +[[package]] +name = "cc" +version = "1.0.99" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96c51067fd44124faa7f870b4b1c969379ad32b2ba805aa959430ceaa384f695" +dependencies = [ + "jobserver", + "libc", + "once_cell", +] + +[[package]] +name = "cexpr" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" +dependencies = [ + "nom", +] + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "chrono" +version = "0.4.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +dependencies = [ + "android-tzdata", + "iana-time-zone", + "js-sys", + "num-traits 0.2.19", + "serde", + "wasm-bindgen", + "windows-targets 0.52.6", +] + +[[package]] +name = "cipher" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" +dependencies = [ + "crypto-common", + "inout", +] + +[[package]] +name = "clang-sys" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" +dependencies = [ + "glob", + "libc", + "libloading", +] + +[[package]] +name = "clap" +version = "4.5.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fbb260a053428790f3de475e304ff84cdbc4face759ea7a3e64c1edd938a7fc" +dependencies = [ + "clap_builder", + "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.5.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64b17d7ea74e9f833c7dbf2cbe4fb12ff26783eda4782a8975b72f895c9b4d99" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim 0.11.1", +] + +[[package]] +name = "clap_derive" +version = "4.5.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "501d359d5f3dcaf6ecdeee48833ae73ec6e42723a1e52419c79abf9507eec0a0" +dependencies = [ + "heck 0.5.0", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "clap_lex" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97" + +[[package]] +name = "cmake" +version = "0.1.50" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a31c789563b815f77f4250caee12365734369f942439b7defd71e18a48197130" +dependencies = [ + "cc", +] + +[[package]] +name = "cms" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b77c319abfd5219629c45c34c89ba945ed3c5e49fcde9d16b6c3885f118a730" +dependencies = [ + "const-oid", + "der 0.7.9", + "spki 0.7.3", + "x509-cert", +] + +[[package]] +name = "color-eyre" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55146f5e46f237f7423d74111267d4597b59b0dad0ffaf7303bce9945d843ad5" +dependencies = [ + "backtrace", + "color-spantrace", + "eyre", + "indenter", + "once_cell", + "owo-colors", + "tracing-error", +] + +[[package]] +name = "color-spantrace" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd6be1b2a7e382e2b98b43b2adcca6bb0e465af0bdd38123873ae61eb17a72c2" +dependencies = [ + "once_cell", + "owo-colors", + "tracing-core", + "tracing-error", +] + +[[package]] +name = "colorchoice" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422" + +[[package]] +name = "colored" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8" +dependencies = [ + "lazy_static", + "windows-sys 0.48.0", +] + +[[package]] +name = "combine" +version = "4.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +dependencies = [ + "bytes", + "futures-core", + "memchr", + "pin-project-lite", + "tokio", + "tokio-util", +] + +[[package]] +name = "concurrent-queue" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "const-fnv1a-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32b13ea120a812beba79e34316b3942a857c86ec1593cb34f27bb28272ce2cca" + +[[package]] +name = "const-hex" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94fb8a24a26d37e1ffd45343323dc9fe6654ceea44c12f2fcb3d7ac29e610bc6" +dependencies = [ + "cfg-if", + "cpufeatures", + "hex", + "proptest", + "serde", +] + +[[package]] +name = "const-oid" +version = "0.9.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" + +[[package]] +name = "const_format" +version = "0.2.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a214c7af3d04997541b18d432afaff4c455e79e2029079647e72fc2bd27673" +dependencies = [ + "const_format_proc_macros", +] + +[[package]] +name = "const_format_proc_macros" +version = "0.2.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7f6ff08fd20f4f299298a28e2dfa8a8ba1036e6cd2460ac1de7b425d76f2500" +dependencies = [ + "proc-macro2", + "quote", + "unicode-xid", +] + +[[package]] +name = "constant_time_eq" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" + +[[package]] +name = "convert_case" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" + +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "cookie-factory" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9885fa71e26b8ab7855e2ec7cae6e9b380edff76cd052e07c683a0319d51b3a2" + +[[package]] +name = "core-foundation" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" + +[[package]] +name = "cpufeatures" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" +dependencies = [ + "libc", +] + +[[package]] +name = "crc16" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "338089f42c427b86394a5ee60ff321da23a5c89c9d89514c829687b26359fcff" + +[[package]] +name = "crc32c" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a47af21622d091a8f0fb295b88bc886ac74efcc613efc19f5d0b21de5c89e47" +dependencies = [ + "rustc_version 0.4.0", +] + +[[package]] +name = "crc32fast" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" +dependencies = [ + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" + +[[package]] +name = "crunchy" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" + +[[package]] +name = "crypto-bigint" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef2b4b23cddf68b89b8f8069890e8c270d54e2d5fe1b143820234805e4cb17ef" +dependencies = [ + "generic-array", + "rand_core", + "subtle", + "zeroize", +] + +[[package]] +name = "crypto-bigint" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" +dependencies = [ + "generic-array", + "rand_core", + "subtle", + "zeroize", +] + +[[package]] +name = "crypto-common" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +dependencies = [ + "generic-array", + "typenum", +] + +[[package]] +name = "ctr" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" +dependencies = [ + "cipher", +] + +[[package]] +name = "da-client-interface" +version = "0.1.0" +dependencies = [ + "async-trait", + "axum 0.7.5", + "color-eyre", + "mockall", + "starknet", +] + +[[package]] +name = "darling" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" +dependencies = [ + "darling_core 0.13.4", + "darling_macro 0.13.4", +] + +[[package]] +name = "darling" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" +dependencies = [ + "darling_core 0.14.4", + "darling_macro 0.14.4", +] + +[[package]] +name = "darling" +version = "0.20.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83b2eb4d90d12bdda5ed17de686c2acb4c57914f8f921b8da7e112b5a36f3fe1" +dependencies = [ + "darling_core 0.20.9", + "darling_macro 0.20.9", +] + +[[package]] +name = "darling_core" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim 0.10.0", + "syn 1.0.109", +] + +[[package]] +name = "darling_core" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim 0.10.0", + "syn 1.0.109", +] + +[[package]] +name = "darling_core" +version = "0.20.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "622687fe0bac72a04e5599029151f5796111b90f1baaa9b544d807a5e31cd120" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim 0.11.1", + "syn 2.0.66", +] + +[[package]] +name = "darling_macro" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" +dependencies = [ + "darling_core 0.13.4", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "darling_macro" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" +dependencies = [ + "darling_core 0.14.4", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "darling_macro" +version = "0.20.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "733cabb43482b1a1b53eee8583c2b9e8684d592215ea83efd305dd31bc2f0178" +dependencies = [ + "darling_core 0.20.9", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "dashmap" +version = "5.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" +dependencies = [ + "cfg-if", + "hashbrown 0.14.5", + "lock_api", + "once_cell", + "parking_lot_core", +] + +[[package]] +name = "data-encoding" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" + +[[package]] +name = "der" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de" +dependencies = [ + "const-oid", + "zeroize", +] + +[[package]] +name = "der" +version = "0.7.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0" +dependencies = [ + "const-oid", + "der_derive", + "flagset", + "pem-rfc7468", + "zeroize", +] + +[[package]] +name = "der-parser" +version = "9.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cd0a5c643689626bec213c4d8bd4d96acc8ffdb4ad4bb6bc16abf27d5f4b553" +dependencies = [ + "asn1-rs", + "displaydoc", + "nom", + "num-bigint", + "num-traits 0.2.19", + "rusticata-macros", +] + +[[package]] +name = "der_derive" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fe87ce4529967e0ba1dcf8450bab64d97dfd5010a6256187ffe2e43e6f0e049" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "deranged" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +dependencies = [ + "powerfmt", + "serde", +] + +[[package]] +name = "derivative" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "derive_more" +version = "0.99.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" +dependencies = [ + "convert_case 0.4.0", + "proc-macro2", + "quote", + "rustc_version 0.4.0", + "syn 2.0.66", +] + +[[package]] +name = "derive_more" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" +dependencies = [ + "derive_more-impl", +] + +[[package]] +name = "derive_more-impl" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", + "unicode-xid", +] + +[[package]] +name = "des" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffdd80ce8ce993de27e9f063a444a4d53ce8e8db4c1f00cc03af5ad5a9867a1e" +dependencies = [ + "cipher", +] + +[[package]] +name = "deunicode" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "339544cc9e2c4dc3fc7149fd630c5f22263a4fdf18a98afd0075784968b5cf00" + +[[package]] +name = "diff" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" + +[[package]] +name = "diffy" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e616e59155c92257e84970156f506287853355f58cd4a6eb167385722c32b790" +dependencies = [ + "nu-ansi-term", +] + +[[package]] +name = "digest" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" +dependencies = [ + "generic-array", +] + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer", + "const-oid", + "crypto-common", + "subtle", +] + +[[package]] +name = "dirs" +version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" +dependencies = [ + "dirs-sys", +] + +[[package]] +name = "dirs-next" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" +dependencies = [ + "cfg-if", + "dirs-sys-next", +] + +[[package]] +name = "dirs-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" +dependencies = [ + "libc", + "option-ext", + "redox_users", + "windows-sys 0.48.0", +] + +[[package]] +name = "dirs-sys-next" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" +dependencies = [ + "libc", + "redox_users", + "winapi", +] + +[[package]] +name = "displaydoc" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "doc-comment" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" + +[[package]] +name = "docker_credential" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31951f49556e34d90ed28342e1df7e1cb7a229c4cab0aecc627b5d91edd41d07" +dependencies = [ + "base64 0.21.7", + "serde", + "serde_json", +] + +[[package]] +name = "doctest-file" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aac81fa3e28d21450aa4d2ac065992ba96a1d7303efbce51a95f4fd175b67562" + +[[package]] +name = "dotenv" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f" + +[[package]] +name = "dotenvy" +version = "0.15.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b" + +[[package]] +name = "downcast" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1435fa1053d8b2fbbe9be7e97eca7f33d37b28409959813daefc1446a14247f1" + +[[package]] +name = "dummy" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e57e12b69e57fad516e01e2b3960f122696fdb13420e1a88ed8e210316f2876" +dependencies = [ + "darling 0.20.9", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "dunce" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b" + +[[package]] +name = "dyn-clone" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" + +[[package]] +name = "e2e-tests" +version = "0.1.0" +dependencies = [ + "alloy 0.2.1", + "alloy-sol-types 0.8.5", + "async-trait", + "aws-config", + "aws-sdk-eventbridge", + "aws-sdk-s3", + "aws-sdk-sqs", + "bytes", + "chrono", + "clap", + "color-eyre", + "dotenvy", + "env_logger", + "ethereum-settlement-client", + "httpmock", + "log", + "mongodb", + "orchestrator", + "reqwest 0.12.7", + "rstest 0.22.0", + "serde", + "serde_json", + "starknet", + "strum 0.26.3", + "strum_macros 0.26.4", + "testcontainers", + "tokio", + "tokio-stream", + "tokio-util", + "url", + "utils", + "uuid 1.8.0", +] + +[[package]] +name = "ecdsa" +version = "0.14.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413301934810f597c1d19ca71c8710e99a3f1ba28a0d2ebc01551a2daeea3c5c" +dependencies = [ + "der 0.6.1", + "elliptic-curve 0.12.3", + "rfc6979 0.3.1", + "signature 1.6.4", +] + +[[package]] +name = "ecdsa" +version = "0.16.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" +dependencies = [ + "der 0.7.9", + "digest 0.10.7", + "elliptic-curve 0.13.8", + "rfc6979 0.4.0", + "signature 2.2.0", + "spki 0.7.3", +] + +[[package]] +name = "either" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b" + +[[package]] +name = "elliptic-curve" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7bb888ab5300a19b8e5bceef25ac745ad065f3c9f7efc6de1b91958110891d3" +dependencies = [ + "base16ct 0.1.1", + "crypto-bigint 0.4.9", + "der 0.6.1", + "digest 0.10.7", + "ff 0.12.1", + "generic-array", + "group 0.12.1", + "pkcs8 0.9.0", + "rand_core", + "sec1 0.3.0", + "subtle", + "zeroize", +] + +[[package]] +name = "elliptic-curve" +version = "0.13.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" +dependencies = [ + "base16ct 0.2.0", + "crypto-bigint 0.5.5", + "digest 0.10.7", + "ff 0.13.0", + "generic-array", + "group 0.13.0", + "pkcs8 0.10.2", + "rand_core", + "sec1 0.7.3", + "subtle", + "zeroize", +] + +[[package]] +name = "ena" +version = "0.14.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d248bdd43ce613d87415282f69b9bb99d947d290b10962dd6c56233312c2ad5" +dependencies = [ + "log", +] + +[[package]] +name = "encoding_rs" +version = "0.8.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "enum-as-inner" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21cdad81446a7f7dc43f6a77409efeb9733d2fa65553efef6018ef257c959b73" +dependencies = [ + "heck 0.4.1", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "enum-as-inner" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ffccbb6966c05b32ef8fbac435df276c4ae4d3dc55a8cd0eb9745e6c12f546a" +dependencies = [ + "heck 0.4.1", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "env_filter" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a009aa4810eb158359dda09d0c87378e4bbb89b5a801f016885a4707ba24f7ea" +dependencies = [ + "log", + "regex", +] + +[[package]] +name = "env_logger" +version = "0.11.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e13fa619b91fb2381732789fc5de83b45675e882f66623b7d8cb4f643017018d" +dependencies = [ + "anstream", + "anstyle", + "env_filter", + "humantime", + "log", +] + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "errno" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "eth-keystore" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fda3bf123be441da5260717e0661c25a2fd9cb2b2c1d20bf2e05580047158ab" +dependencies = [ + "aes", + "ctr", + "digest 0.10.7", + "hex", + "hmac", + "pbkdf2 0.11.0", + "rand", + "scrypt 0.10.0", + "serde", + "serde_json", + "sha2", + "sha3", + "thiserror", + "uuid 0.8.2", +] + +[[package]] +name = "ethbloom" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c22d4b5885b6aa2fe5e8b9329fb8d232bf739e434e6b87347c63bdd00c120f60" +dependencies = [ + "crunchy", + "fixed-hash", + "impl-rlp", + "impl-serde", + "tiny-keccak", +] + +[[package]] +name = "ethereum-da-client" +version = "0.1.0" +dependencies = [ + "alloy 0.1.0", + "async-trait", + "c-kzg", + "color-eyre", + "da-client-interface", + "dotenvy", + "mockall", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry_sdk", + "reqwest 0.12.7", + "rstest 0.22.0", + "serde", + "starknet", + "tokio", + "tokio-test", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "utils", +] + +[[package]] +name = "ethereum-settlement-client" +version = "0.1.0" +dependencies = [ + "alloy 0.2.1", + "alloy-primitives 0.7.7", + "async-trait", + "bytes", + "c-kzg", + "cairo-vm 1.0.1 (git+https://github.com/Moonsong-Labs/cairo-vm?branch=notlesh%2Fsnos-2024-11-04)", + "color-eyre", + "dotenvy", + "lazy_static", + "log", + "mockall", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry_sdk", + "reqwest 0.12.7", + "rstest 0.22.0", + "serde", + "settlement-client-interface", + "starknet-os", + "thiserror", + "tokio", + "tokio-test", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "utils", +] + +[[package]] +name = "ethereum-types" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02d215cbf040552efcbe99a38372fe80ab9d00268e20012b79fcd0f073edd8ee" +dependencies = [ + "ethbloom", + "fixed-hash", + "impl-rlp", + "impl-serde", + "primitive-types", + "uint", +] + +[[package]] +name = "event-listener" +version = "2.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" + +[[package]] +name = "event-listener" +version = "5.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6032be9bd27023a771701cc49f9f053c751055f71efb2e0ae5c15809093675ba" +dependencies = [ + "concurrent-queue", + "parking", + "pin-project-lite", +] + +[[package]] +name = "event-listener-strategy" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1" +dependencies = [ + "event-listener 5.3.1", + "pin-project-lite", +] + +[[package]] +name = "executor-trait" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a1052dd43212a7777ec6a69b117da52f5e52f07aec47d00c1a2b33b85d06b08" +dependencies = [ + "async-trait", +] + +[[package]] +name = "eyre" +version = "0.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" +dependencies = [ + "indenter", + "once_cell", +] + +[[package]] +name = "fake" +version = "2.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c25829bde82205da46e1823b2259db6273379f626fc211f126f65654a2669be" +dependencies = [ + "deunicode", + "dummy", + "rand", + "serde_json", +] + +[[package]] +name = "fastrand" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" +dependencies = [ + "instant", +] + +[[package]] +name = "fastrand" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" + +[[package]] +name = "fastrlp" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "139834ddba373bbdd213dffe02c8d110508dcf1726c2be27e8d1f7d7e1856418" +dependencies = [ + "arrayvec", + "auto_impl", + "bytes", +] + +[[package]] +name = "ff" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160" +dependencies = [ + "rand_core", + "subtle", +] + +[[package]] +name = "ff" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" +dependencies = [ + "rand_core", + "subtle", +] + +[[package]] +name = "fixed-hash" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" +dependencies = [ + "byteorder", + "rand", + "rustc-hex", + "static_assertions", +] + +[[package]] +name = "fixedbitset" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" + +[[package]] +name = "flagset" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdeb3aa5e95cf9aabc17f060cfa0ced7b83f042390760ca53bf09df9968acaa1" + +[[package]] +name = "flate2" +version = "1.0.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0" +dependencies = [ + "crc32fast", + "libz-sys", + "miniz_oxide 0.8.0", +] + +[[package]] +name = "flume" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55ac459de2512911e4b674ce33cf20befaba382d05b62b008afc1c8b57cbf181" +dependencies = [ + "futures-core", + "futures-sink", + "spin 0.9.8", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "foreign-types" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" +dependencies = [ + "foreign-types-shared", +] + +[[package]] +name = "foreign-types-shared" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" + +[[package]] +name = "form_urlencoded" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "fragile" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" + +[[package]] +name = "fs_extra" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" + +[[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + +[[package]] +name = "futures" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" + +[[package]] +name = "futures-executor" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-io" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" + +[[package]] +name = "futures-lite" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49a9d51ce47660b1e808d3c990b4709f2f415d928835a17dfd16991515c46bce" +dependencies = [ + "fastrand 1.9.0", + "futures-core", + "futures-io", + "memchr", + "parking", + "pin-project-lite", + "waker-fn", +] + +[[package]] +name = "futures-lite" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5" +dependencies = [ + "fastrand 2.1.1", + "futures-core", + "futures-io", + "parking", + "pin-project-lite", +] + +[[package]] +name = "futures-macro" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "futures-sink" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" + +[[package]] +name = "futures-task" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" + +[[package]] +name = "futures-timer" +version = "3.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" + +[[package]] +name = "futures-util" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", +] + +[[package]] +name = "futures-utils-wasm" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42012b0f064e01aa58b545fe3727f90f7dd4020f4a3ea735b50344965f5a57e9" + +[[package]] +name = "genco" +version = "0.17.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afac3cbb14db69ac9fef9cdb60d8a87e39a7a527f85a81a923436efa40ad42c6" +dependencies = [ + "genco-macros", + "relative-path", + "smallvec", +] + +[[package]] +name = "genco-macros" +version = "0.17.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "553630feadf7b76442b0849fd25fdf89b860d933623aec9693fed19af0400c78" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", + "zeroize", +] + +[[package]] +name = "getrandom" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi", + "wasm-bindgen", +] + +[[package]] +name = "gimli" +version = "0.28.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" + +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + +[[package]] +name = "globset" +version = "0.4.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15f1ce686646e7f1e19bf7d5533fe443a45dbfb990e00629110797578b42fb19" +dependencies = [ + "aho-corasick", + "bstr", + "log", + "regex-automata 0.4.7", + "regex-syntax 0.8.4", +] + +[[package]] +name = "gloo-timers" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbb143cf96099802033e0d4f4963b19fd2e0b728bcf076cd9cf7f6634f092994" +dependencies = [ + "futures-channel", + "futures-core", + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "good_lp" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3198bd13dea84c76a64621d6ee8ee26a4960a9a0d538eca95ca8f1320a469ac9" +dependencies = [ + "fnv", + "minilp", +] + +[[package]] +name = "google-cloud-auth" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bf7cb7864f08a92e77c26bb230d021ea57691788fb5dd51793f96965d19e7f9" +dependencies = [ + "async-trait", + "base64 0.21.7", + "google-cloud-metadata", + "google-cloud-token", + "home", + "jsonwebtoken", + "reqwest 0.11.27", + "serde", + "serde_json", + "thiserror", + "time", + "tokio", + "tracing", + "urlencoding", +] + +[[package]] +name = "google-cloud-gax" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8cb60314136e37de9e2a05ddb427b9c5a39c3d188de2e2f026c6af74425eef44" +dependencies = [ + "google-cloud-token", + "http 0.2.12", + "thiserror", + "tokio", + "tokio-retry", + "tonic 0.10.2", + "tower", + "tracing", +] + +[[package]] +name = "google-cloud-googleapis" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db8a478015d079296167e3f08e096dc99cffc2cb50fa203dd38aaa9dd37f8354" +dependencies = [ + "prost 0.12.6", + "prost-types", + "tonic 0.10.2", +] + +[[package]] +name = "google-cloud-metadata" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc279bfb50487d7bcd900e8688406475fc750fe474a835b2ab9ade9eb1fc90e2" +dependencies = [ + "reqwest 0.11.27", + "thiserror", + "tokio", +] + +[[package]] +name = "google-cloud-pubsub" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1da196da473976944d408a91213bafe078e7223e10694d3f8ed36b6e210fa130" +dependencies = [ + "async-channel 1.9.0", + "async-stream", + "google-cloud-auth", + "google-cloud-gax", + "google-cloud-googleapis", + "google-cloud-token", + "prost-types", + "thiserror", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "google-cloud-token" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f49c12ba8b21d128a2ce8585955246977fbce4415f680ebf9199b6f9d6d725f" +dependencies = [ + "async-trait", +] + +[[package]] +name = "gps-fact-checker" +version = "0.1.0" +dependencies = [ + "alloy 0.2.1", + "async-trait", + "aws-config", + "aws-sdk-s3", + "bincode 1.3.3", + "cairo-vm 1.0.1 (git+https://github.com/Moonsong-Labs/cairo-vm?branch=notlesh%2Fsnos-2024-11-04)", + "dotenvy", + "itertools 0.13.0", + "log", + "num-bigint", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry_sdk", + "serde", + "starknet", + "thiserror", + "tokio", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "utils", +] + +[[package]] +name = "group" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7" +dependencies = [ + "ff 0.12.1", + "rand_core", + "subtle", +] + +[[package]] +name = "group" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" +dependencies = [ + "ff 0.13.0", + "rand_core", + "subtle", +] + +[[package]] +name = "h2" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8" +dependencies = [ + "bytes", + "fnv", + "futures-core", + "futures-sink", + "futures-util", + "http 0.2.12", + "indexmap 2.6.0", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "h2" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa82e28a107a8cc405f0839610bdc9b15f1e25ec7d696aa5cf173edbcb1486ab" +dependencies = [ + "atomic-waker", + "bytes", + "fnv", + "futures-core", + "futures-sink", + "http 1.1.0", + "indexmap 2.6.0", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" + +[[package]] +name = "hashbrown" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" +dependencies = [ + "ahash 0.8.11", +] + +[[package]] +name = "hashbrown" +version = "0.14.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +dependencies = [ + "ahash 0.8.11", + "allocator-api2", + "serde", +] + +[[package]] +name = "hashbrown" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" + +[[package]] +name = "headers" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "322106e6bd0cba2d5ead589ddb8150a13d7c4217cf80d7c4f682ca994ccc6aa9" +dependencies = [ + "base64 0.21.7", + "bytes", + "headers-core", + "http 1.1.0", + "httpdate", + "mime", + "sha1", +] + +[[package]] +name = "headers-core" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54b4a22553d4242c49fddb9ba998a99962b5cc6f22cb5a3482bec22522403ce4" +dependencies = [ + "http 1.1.0", +] + +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + +[[package]] +name = "hermit-abi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" + +[[package]] +name = "hermit-abi" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc" + +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +dependencies = [ + "serde", +] + +[[package]] +name = "hex-literal" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" + +[[package]] +name = "hickory-proto" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07698b8420e2f0d6447a436ba999ec85d8fbf2a398bbd737b82cac4a2e96e512" +dependencies = [ + "async-trait", + "cfg-if", + "data-encoding", + "enum-as-inner 0.6.0", + "futures-channel", + "futures-io", + "futures-util", + "idna 0.4.0", + "ipnet", + "once_cell", + "rand", + "thiserror", + "tinyvec", + "tokio", + "tracing", + "url", +] + +[[package]] +name = "hickory-resolver" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28757f23aa75c98f254cf0405e6d8c25b831b32921b050a66692427679b1f243" +dependencies = [ + "cfg-if", + "futures-util", + "hickory-proto", + "ipconfig", + "lru-cache", + "once_cell", + "parking_lot", + "rand", + "resolv-conf", + "smallvec", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "hmac" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "home" +version = "0.5.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" +dependencies = [ + "windows-sys 0.52.0", +] + +[[package]] +name = "hostname" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" +dependencies = [ + "libc", + "match_cfg", + "winapi", +] + +[[package]] +name = "http" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http-body" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" +dependencies = [ + "bytes", + "http 0.2.12", + "pin-project-lite", +] + +[[package]] +name = "http-body" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643" +dependencies = [ + "bytes", + "http 1.1.0", +] + +[[package]] +name = "http-body-util" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" +dependencies = [ + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.0", + "pin-project-lite", +] + +[[package]] +name = "httparse" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" + +[[package]] +name = "httpdate" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" + +[[package]] +name = "httpmock" +version = "0.8.0-alpha.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9d649264818ad8f19c01f72b4ddf2f0cfcd1183691b956de733673e81d8a51f" +dependencies = [ + "assert-json-diff", + "async-object-pool", + "async-std", + "async-trait", + "base64 0.22.1", + "bytes", + "crossbeam-utils", + "form_urlencoded", + "futures-timer", + "futures-util", + "headers", + "http 1.1.0", + "http-body-util", + "hyper 1.4.1", + "hyper-rustls 0.27.2", + "hyper-util", + "lazy_static", + "log", + "path-tree", + "regex", + "rustls 0.23.10", + "serde", + "serde_json", + "serde_regex", + "similar", + "stringmetrics", + "tabwriter", + "thiserror", + "tokio", + "url", +] + +[[package]] +name = "humantime" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" + +[[package]] +name = "hyper" +version = "0.14.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f361cde2f109281a220d4307746cdfd5ee3f410da58a70377762396775634b33" +dependencies = [ + "bytes", + "futures-channel", + "futures-core", + "futures-util", + "h2 0.3.26", + "http 0.2.12", + "http-body 0.4.6", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "socket2 0.5.7", + "tokio", + "tower-service", + "tracing", + "want", +] + +[[package]] +name = "hyper" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50dfd22e0e76d0f662d429a5f80fcaf3855009297eab6a0a9f8543834744ba05" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "h2 0.4.5", + "http 1.1.0", + "http-body 1.0.0", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "smallvec", + "tokio", + "want", +] + +[[package]] +name = "hyper-named-pipe" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73b7d8abf35697b81a825e386fc151e0d503e8cb5fcb93cc8669c376dfd6f278" +dependencies = [ + "hex", + "hyper 1.4.1", + "hyper-util", + "pin-project-lite", + "tokio", + "tower-service", + "winapi", +] + +[[package]] +name = "hyper-rustls" +version = "0.24.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" +dependencies = [ + "futures-util", + "http 0.2.12", + "hyper 0.14.29", + "log", + "rustls 0.21.12", + "rustls-native-certs 0.6.3", + "tokio", + "tokio-rustls 0.24.1", +] + +[[package]] +name = "hyper-rustls" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0bea761b46ae2b24eb4aef630d8d1c398157b6fc29e6350ecf090a0b70c952c" +dependencies = [ + "futures-util", + "http 1.1.0", + "hyper 1.4.1", + "hyper-util", + "log", + "rustls 0.22.4", + "rustls-native-certs 0.7.0", + "rustls-pki-types", + "tokio", + "tokio-rustls 0.25.0", + "tower-service", +] + +[[package]] +name = "hyper-rustls" +version = "0.27.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ee4be2c948921a1a5320b629c4193916ed787a7f7f293fd3f7f5a6c9de74155" +dependencies = [ + "futures-util", + "http 1.1.0", + "hyper 1.4.1", + "hyper-util", + "log", + "rustls 0.23.10", + "rustls-native-certs 0.7.0", + "rustls-pki-types", + "tokio", + "tokio-rustls 0.26.0", + "tower-service", + "webpki-roots 0.26.3", +] + +[[package]] +name = "hyper-timeout" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" +dependencies = [ + "hyper 0.14.29", + "pin-project-lite", + "tokio", + "tokio-io-timeout", +] + +[[package]] +name = "hyper-timeout" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3203a961e5c83b6f5498933e78b6b263e208c197b63e9c6c53cc82ffd3f63793" +dependencies = [ + "hyper 1.4.1", + "hyper-util", + "pin-project-lite", + "tokio", + "tower-service", +] + +[[package]] +name = "hyper-tls" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" +dependencies = [ + "bytes", + "hyper 0.14.29", + "native-tls", + "tokio", + "tokio-native-tls", +] + +[[package]] +name = "hyper-tls" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" +dependencies = [ + "bytes", + "http-body-util", + "hyper 1.4.1", + "hyper-util", + "native-tls", + "tokio", + "tokio-native-tls", + "tower-service", +] + +[[package]] +name = "hyper-util" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b875924a60b96e5d7b9ae7b066540b1dd1cbd90d1828f54c92e02a283351c56" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "http 1.1.0", + "http-body 1.0.0", + "hyper 1.4.1", + "pin-project-lite", + "socket2 0.5.7", + "tokio", + "tower", + "tower-service", + "tracing", +] + +[[package]] +name = "hyperlocal-next" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acf569d43fa9848e510358c07b80f4adf34084ddc28c6a4a651ee8474c070dcc" +dependencies = [ + "hex", + "http-body-util", + "hyper 1.4.1", + "hyper-util", + "pin-project-lite", + "tokio", + "tower-service", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.60" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "id-arena" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25a2bc672d1148e28034f176e01fffebb08b35768468cc954630da77a1449005" + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "idna" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "418a0a6fab821475f634efe3ccc45c013f742efe03d853e8d3355d5cb850ecf8" +dependencies = [ + "matches", + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "idna" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "idna" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "ignore" +version = "0.4.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d89fd380afde86567dfba715db065673989d6253f42b88179abd3eae47bda4b" +dependencies = [ + "crossbeam-deque", + "globset", + "log", + "memchr", + "regex-automata 0.4.7", + "same-file", + "walkdir", + "winapi-util", +] + +[[package]] +name = "impl-codec" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" +dependencies = [ + "parity-scale-codec", +] + +[[package]] +name = "impl-rlp" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808" +dependencies = [ + "rlp", +] + +[[package]] +name = "impl-serde" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd" +dependencies = [ + "serde", +] + +[[package]] +name = "impl-trait-for-tuples" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "indent" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9f1a0777d972970f204fdf8ef319f1f4f8459131636d7e3c96c5d59570d0fa6" + +[[package]] +name = "indenter" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" + +[[package]] +name = "indexmap" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +dependencies = [ + "autocfg", + "hashbrown 0.12.3", + "serde", +] + +[[package]] +name = "indexmap" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" +dependencies = [ + "equivalent", + "hashbrown 0.15.0", + "serde", +] + +[[package]] +name = "indoc" +version = "2.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5" + +[[package]] +name = "inout" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" +dependencies = [ + "block-padding", + "generic-array", +] + +[[package]] +name = "instant" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "interprocess" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67bafc2f5dbdad79a6d925649758d5472647b416028099f0b829d1b67fdd47d3" +dependencies = [ + "doctest-file", + "futures-core", + "libc", + "recvmsg", + "tokio", + "widestring", + "windows-sys 0.52.0", +] + +[[package]] +name = "io-lifetimes" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" +dependencies = [ + "hermit-abi 0.3.9", + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "ipconfig" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f" +dependencies = [ + "socket2 0.5.7", + "widestring", + "windows-sys 0.48.0", + "winreg", +] + +[[package]] +name = "ipnet" +version = "2.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" + +[[package]] +name = "is_terminal_polyfill" +version = "1.70.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800" + +[[package]] +name = "itertools" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +dependencies = [ + "either", +] + +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + +[[package]] +name = "itertools" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +dependencies = [ + "either", +] + +[[package]] +name = "itertools" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" + +[[package]] +name = "jobserver" +version = "0.1.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e" +dependencies = [ + "libc", +] + +[[package]] +name = "js-sys" +version = "0.3.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "jsonwebtoken" +version = "9.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9ae10193d25051e74945f1ea2d0b42e03cc3b890f7e4cc5faa44997d808193f" +dependencies = [ + "base64 0.21.7", + "js-sys", + "pem", + "ring", + "serde", + "serde_json", + "simple_asn1", +] + +[[package]] +name = "k256" +version = "0.13.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "956ff9b67e26e1a6a866cb758f12c6f8746208489e3e4a4b5580802f2f0a587b" +dependencies = [ + "cfg-if", + "ecdsa 0.16.9", + "elliptic-curve 0.13.8", + "once_cell", + "sha2", + "signature 2.2.0", +] + +[[package]] +name = "keccak" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" +dependencies = [ + "cpufeatures", +] + +[[package]] +name = "keccak-asm" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47a3633291834c4fbebf8673acbc1b04ec9d151418ff9b8e26dcd79129928758" +dependencies = [ + "digest 0.10.7", + "sha3-asm", +] + +[[package]] +name = "kv-log-macro" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0de8b303297635ad57c9f5059fd9cee7a47f8e8daa09df0fcd07dd39fb22977f" +dependencies = [ + "log", +] + +[[package]] +name = "lalrpop" +version = "0.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55cb077ad656299f160924eb2912aa147d7339ea7d69e1b5517326fdcec3c1ca" +dependencies = [ + "ascii-canvas", + "bit-set", + "ena", + "itertools 0.11.0", + "lalrpop-util", + "petgraph", + "pico-args", + "regex", + "regex-syntax 0.8.4", + "string_cache", + "term", + "tiny-keccak", + "unicode-xid", + "walkdir", +] + +[[package]] +name = "lalrpop-util" +version = "0.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "507460a910eb7b32ee961886ff48539633b788a36b65692b95f225b844c82553" +dependencies = [ + "regex-automata 0.4.7", +] + +[[package]] +name = "lambdaworks-crypto" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fb5d4f22241504f7c7b8d2c3a7d7835d7c07117f10bff2a7d96a9ef6ef217c3" +dependencies = [ + "lambdaworks-math", + "serde", + "sha2", + "sha3", +] + +[[package]] +name = "lambdaworks-math" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "358e172628e713b80a530a59654154bfc45783a6ed70ea284839800cebdf8f97" +dependencies = [ + "serde", + "serde_json", +] + +[[package]] +name = "lapin" +version = "2.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fae02c316a8a5922ce7518afa6b6c00e9a099f8e59587567e3331efdd11b8ceb" +dependencies = [ + "amq-protocol", + "async-global-executor-trait", + "async-reactor-trait", + "async-trait", + "executor-trait", + "flume", + "futures-core", + "futures-io", + "parking_lot", + "pinky-swear", + "reactor-trait", + "serde", + "tracing", + "waker-fn", +] + +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +dependencies = [ + "spin 0.5.2", +] + +[[package]] +name = "lazycell" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" + +[[package]] +name = "libc" +version = "0.2.159" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5" + +[[package]] +name = "libloading" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19" +dependencies = [ + "cfg-if", + "windows-targets 0.52.6", +] + +[[package]] +name = "libm" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" + +[[package]] +name = "libredox" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" +dependencies = [ + "bitflags 2.5.0", + "libc", +] + +[[package]] +name = "libz-sys" +version = "1.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2d16453e800a8cf6dd2fc3eb4bc99b786a9b90c663b8559a5b1a041bf89e472" +dependencies = [ + "cc", + "pkg-config", + "vcpkg", +] + +[[package]] +name = "linked-hash-map" +version = "0.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" + +[[package]] +name = "linux-raw-sys" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" + +[[package]] +name = "linux-raw-sys" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" + +[[package]] +name = "lock_api" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" +dependencies = [ + "autocfg", + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" +dependencies = [ + "value-bag", +] + +[[package]] +name = "lru" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3262e75e648fce39813cb56ac41f3c3e3f65217ebf3844d818d1f9398cfb0dc" +dependencies = [ + "hashbrown 0.14.5", +] + +[[package]] +name = "lru-cache" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c" +dependencies = [ + "linked-hash-map", +] + +[[package]] +name = "majin-blob-core" +version = "0.1.3" +source = "git+https://github.com/AbdelStark/majin-blob?branch=main#ac23e1584a81ee144fdc7d6912bcc5f1bf6f8818" +dependencies = [ + "lazy_static", + "majin-blob-eip-4844", + "majin-blob-types", + "num-bigint", + "num-traits 0.2.19", + "serde", + "serde_json", +] + +[[package]] +name = "majin-blob-eip-4844" +version = "0.1.3" +source = "git+https://github.com/AbdelStark/majin-blob?branch=main#ac23e1584a81ee144fdc7d6912bcc5f1bf6f8818" +dependencies = [ + "lazy_static", + "num-bigint", + "num-traits 0.2.19", + "serde", + "serde_json", +] + +[[package]] +name = "majin-blob-types" +version = "0.1.3" +source = "git+https://github.com/AbdelStark/majin-blob?branch=main#ac23e1584a81ee144fdc7d6912bcc5f1bf6f8818" +dependencies = [ + "majin-blob-eip-4844", + "num-bigint", + "num-traits 0.2.19", + "rstest 0.19.0", + "serde", + "serde_json", +] + +[[package]] +name = "match_cfg" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" + +[[package]] +name = "matchers" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +dependencies = [ + "regex-automata 0.1.10", +] + +[[package]] +name = "matches" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" + +[[package]] +name = "matchit" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" + +[[package]] +name = "matrixmultiply" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "916806ba0031cd542105d916a97c8572e1fa6dd79c9c51e7eb43a09ec2dd84c1" +dependencies = [ + "rawpointer", +] + +[[package]] +name = "md-5" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" +dependencies = [ + "cfg-if", + "digest 0.10.7", +] + +[[package]] +name = "memchr" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" + +[[package]] +name = "metrics" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b9b8653cec6897f73b519a43fba5ee3d50f62fe9af80b428accdcc093b4a849" +dependencies = [ + "ahash 0.7.8", + "metrics-macros", + "portable-atomic 0.3.20", +] + +[[package]] +name = "metrics-macros" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "731f8ecebd9f3a4aa847dfe75455e4757a45da40a7793d2f0b1f9b6ed18b23f3" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "mime" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" + +[[package]] +name = "mime_guess" +version = "2.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7c44f8e672c00fe5308fa235f821cb4198414e1c77935c1ab6948d3fd78550e" +dependencies = [ + "mime", + "unicase", +] + +[[package]] +name = "minilp" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82a7750a9e5076c660b7bec5e6457b4dbff402b9863c8d112891434e18fd5385" +dependencies = [ + "log", + "sprs", +] + +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "miniz_oxide" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" +dependencies = [ + "adler", +] + +[[package]] +name = "miniz_oxide" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" +dependencies = [ + "adler2", +] + +[[package]] +name = "mio" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" +dependencies = [ + "libc", + "wasi", + "windows-sys 0.48.0", +] + +[[package]] +name = "mirai-annotations" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9be0862c1b3f26a88803c4a49de6889c10e608b3ee9344e6ef5b45fb37ad3d1" + +[[package]] +name = "mockall" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4c28b3fb6d753d28c20e826cd46ee611fda1cf3cde03a443a974043247c065a" +dependencies = [ + "cfg-if", + "downcast", + "fragile", + "mockall_derive", + "predicates", + "predicates-tree", +] + +[[package]] +name = "mockall_derive" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "341014e7f530314e9a1fdbc7400b244efea7122662c96bfa248c31da5bfb2020" +dependencies = [ + "cfg-if", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "mockall_double" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1ca96e5ac35256ae3e13536edd39b172b88f41615e1d7b653c8ad24524113e8" +dependencies = [ + "cfg-if", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "mongodb" +version = "2.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef206acb1b72389b49bc9985efe7eb1f8a9bb18e5680d262fac26c07f44025f1" +dependencies = [ + "async-trait", + "base64 0.13.1", + "bitflags 1.3.2", + "bson", + "chrono", + "derivative", + "derive_more 0.99.18", + "futures-core", + "futures-executor", + "futures-io", + "futures-util", + "hex", + "hmac", + "lazy_static", + "md-5", + "pbkdf2 0.11.0", + "percent-encoding", + "rand", + "rustc_version_runtime", + "rustls 0.21.12", + "rustls-pemfile 1.0.4", + "serde", + "serde_bytes", + "serde_with 1.14.0", + "sha-1", + "sha2", + "socket2 0.4.10", + "stringprep", + "strsim 0.10.0", + "take_mut", + "thiserror", + "tokio", + "tokio-rustls 0.24.1", + "tokio-util", + "trust-dns-proto", + "trust-dns-resolver", + "typed-builder", + "uuid 1.8.0", + "webpki-roots 0.25.4", +] + +[[package]] +name = "native-tls" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466" +dependencies = [ + "libc", + "log", + "openssl", + "openssl-probe", + "openssl-sys", + "schannel", + "security-framework", + "security-framework-sys", + "tempfile", +] + +[[package]] +name = "ndarray" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac06db03ec2f46ee0ecdca1a1c34a99c0d188a0d83439b84bf0cb4b386e4ab09" +dependencies = [ + "matrixmultiply", + "num-complex 0.2.4", + "num-integer", + "num-traits 0.2.19", + "rawpointer", +] + +[[package]] +name = "new_debug_unreachable" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + +[[package]] +name = "nu-ansi-term" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +dependencies = [ + "overload", + "winapi", +] + +[[package]] +name = "num" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" +dependencies = [ + "num-bigint", + "num-complex 0.4.6", + "num-integer", + "num-iter", + "num-rational", + "num-traits 0.2.19", +] + +[[package]] +name = "num-bigint" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c165a9ab64cf766f73521c0dd2cfdff64f488b8f0b3e621face3462d3db536d7" +dependencies = [ + "num-integer", + "num-traits 0.2.19", + "rand", + "serde", +] + +[[package]] +name = "num-complex" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6b19411a9719e753aff12e5187b74d60d3dc449ec3f4dc21e3989c3f554bc95" +dependencies = [ + "autocfg", + "num-traits 0.2.19", +] + +[[package]] +name = "num-complex" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" +dependencies = [ + "num-traits 0.2.19", +] + +[[package]] +name = "num-conv" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" + +[[package]] +name = "num-integer" +version = "0.1.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +dependencies = [ + "num-traits 0.2.19", +] + +[[package]] +name = "num-iter" +version = "0.1.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" +dependencies = [ + "autocfg", + "num-integer", + "num-traits 0.2.19", +] + +[[package]] +name = "num-modular" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64a5fe11d4135c3bcdf3a95b18b194afa9608a5f6ff034f5d857bc9a27fb0119" +dependencies = [ + "num-bigint", + "num-integer", + "num-traits 0.2.19", +] + +[[package]] +name = "num-prime" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e238432a7881ec7164503ccc516c014bf009be7984cde1ba56837862543bdec3" +dependencies = [ + "bitvec", + "either", + "lru", + "num-bigint", + "num-integer", + "num-modular", + "num-traits 0.2.19", + "rand", +] + +[[package]] +name = "num-rational" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" +dependencies = [ + "num-bigint", + "num-integer", + "num-traits 0.2.19", + "serde", +] + +[[package]] +name = "num-traits" +version = "0.1.43" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31" +dependencies = [ + "num-traits 0.2.19", +] + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", + "libm", +] + +[[package]] +name = "num_cpus" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +dependencies = [ + "hermit-abi 0.3.9", + "libc", +] + +[[package]] +name = "num_enum" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845" +dependencies = [ + "num_enum_derive", +] + +[[package]] +name = "num_enum_derive" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "num_threads" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c7398b9c8b70908f6371f47ed36737907c87c52af34c268fed0bf0ceb92ead9" +dependencies = [ + "libc", +] + +[[package]] +name = "object" +version = "0.32.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" +dependencies = [ + "memchr", +] + +[[package]] +name = "oid-registry" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c958dd45046245b9c3c2547369bb634eb461670b2e7e0de552905801a648d1d" +dependencies = [ + "asn1-rs", +] + +[[package]] +name = "omniqueue" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cba3b7f69e420be6e32a580307e38aef7f53ac01cc09c3bb6851aec37d710894" +dependencies = [ + "async-trait", + "aws-config", + "aws-sdk-sqs", + "bb8", + "bb8-redis", + "futures-util", + "google-cloud-googleapis", + "google-cloud-pubsub", + "lapin", + "redis", + "serde", + "serde_json", + "svix-ksuid", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "once_cell" +version = "1.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" + +[[package]] +name = "oorandom" +version = "11.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ab1bc2a289d34bd04a330323ac98a1b4bc82c9d9fcb1e66b63caa84da26b575" + +[[package]] +name = "openssl" +version = "0.10.64" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f" +dependencies = [ + "bitflags 2.5.0", + "cfg-if", + "foreign-types", + "libc", + "once_cell", + "openssl-macros", + "openssl-sys", +] + +[[package]] +name = "openssl-macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "openssl-probe" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" + +[[package]] +name = "openssl-sys" +version = "0.9.102" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2" +dependencies = [ + "cc", + "libc", + "pkg-config", + "vcpkg", +] + +[[package]] +name = "opentelemetry" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "803801d3d3b71cd026851a53f974ea03df3d179cb758b260136a6c9e22e196af" +dependencies = [ + "futures-core", + "futures-sink", + "js-sys", + "once_cell", + "pin-project-lite", + "thiserror", +] + +[[package]] +name = "opentelemetry-appender-tracing" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11338a346937cdcce64971604422817318c1301145ca845e01c21bb21824b007" +dependencies = [ + "opentelemetry", + "tracing", + "tracing-core", + "tracing-subscriber", +] + +[[package]] +name = "opentelemetry-otlp" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "596b1719b3cab83addb20bcbffdf21575279d9436d9ccccfe651a3bf0ab5ab06" +dependencies = [ + "async-trait", + "futures-core", + "http 1.1.0", + "opentelemetry", + "opentelemetry-proto", + "opentelemetry_sdk", + "prost 0.13.2", + "thiserror", + "tokio", + "tonic 0.12.2", +] + +[[package]] +name = "opentelemetry-proto" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c43620e8f93359eb7e627a3b16ee92d8585774986f24f2ab010817426c5ce61" +dependencies = [ + "opentelemetry", + "opentelemetry_sdk", + "prost 0.13.2", + "tonic 0.12.2", +] + +[[package]] +name = "opentelemetry-semantic-conventions" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b8e442487022a943e2315740e443dc5ee95fd541c18f509a5a6251b408a9f95" + +[[package]] +name = "opentelemetry-stdout" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f76e2ded3f6e5d8b51e7aefc267022e7586975c00763aab70f807ad2cc156e94" +dependencies = [ + "async-trait", + "chrono", + "futures-util", + "opentelemetry", + "opentelemetry_sdk", + "ordered-float", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "opentelemetry_sdk" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0da0d6b47a3dbc6e9c9e36a0520e25cf943e046843818faaa3f87365a548c82" +dependencies = [ + "async-trait", + "futures-channel", + "futures-executor", + "futures-util", + "glob", + "once_cell", + "opentelemetry", + "percent-encoding", + "rand", + "serde_json", + "thiserror", + "tokio", + "tokio-stream", +] + +[[package]] +name = "option-ext" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" + +[[package]] +name = "orchestrator" +version = "0.1.0" +dependencies = [ + "alloy 0.2.1", + "assert_matches", + "async-std", + "async-trait", + "atlantic-service", + "aws-config", + "aws-credential-types", + "aws-sdk-eventbridge", + "aws-sdk-iam", + "aws-sdk-s3", + "aws-sdk-scheduler", + "aws-sdk-sns", + "aws-sdk-sqs", + "axum 0.7.5", + "axum-macros", + "bincode 1.3.3", + "bytes", + "c-kzg", + "cairo-vm 1.0.1 (git+https://github.com/Moonsong-Labs/cairo-vm?branch=notlesh%2Fsnos-2024-11-04)", + "chrono", + "clap", + "color-eyre", + "da-client-interface", + "dotenvy", + "ethereum-da-client", + "ethereum-settlement-client", + "futures", + "hex", + "httpmock", + "hyper 0.14.29", + "itertools 0.13.0", + "lazy_static", + "log", + "majin-blob-core", + "majin-blob-types", + "mockall", + "mockall_double", + "mongodb", + "num", + "num-bigint", + "num-traits 0.2.19", + "omniqueue", + "once_cell", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry-stdout", + "opentelemetry_sdk", + "prove_block", + "prover-client-interface", + "rstest 0.22.0", + "serde", + "serde_json", + "settlement-client-interface", + "sharp-service", + "starknet", + "starknet-core 0.9.0", + "starknet-os", + "starknet-settlement-client", + "strum 0.26.3", + "strum_macros 0.26.4", + "tempfile", + "thiserror", + "tokio", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "utils", + "uuid 1.8.0", +] + +[[package]] +name = "ordered-float" +version = "4.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a91171844676f8c7990ce64959210cd2eaef32c2612c50f9fae9f8aaa6065a6" +dependencies = [ + "num-traits 0.2.19", +] + +[[package]] +name = "outref" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4030760ffd992bef45b0ae3f10ce1aba99e33464c90d14dd7c039884963ddc7a" + +[[package]] +name = "overload" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" + +[[package]] +name = "owo-colors" +version = "3.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1b04fb49957986fdce4d6ee7a65027d55d4b6d2265e5848bbb507b58ccfdb6f" + +[[package]] +name = "p12-keystore" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df7b60d0b2dcace322e6e8c4499c4c8bdf331c1bae046a54be5e4191c3610286" +dependencies = [ + "cbc", + "cms", + "der 0.7.9", + "des", + "hex", + "hmac", + "pkcs12", + "pkcs5", + "rand", + "rc2", + "sha1", + "sha2", + "thiserror", + "x509-parser", +] + +[[package]] +name = "p256" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51f44edd08f51e2ade572f141051021c5af22677e42b7dd28a88155151c33594" +dependencies = [ + "ecdsa 0.14.8", + "elliptic-curve 0.12.3", + "sha2", +] + +[[package]] +name = "parity-scale-codec" +version = "3.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" +dependencies = [ + "arrayvec", + "bitvec", + "byte-slice-cast", + "impl-trait-for-tuples", + "parity-scale-codec-derive", + "serde", +] + +[[package]] +name = "parity-scale-codec-derive" +version = "3.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "parking" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae" + +[[package]] +name = "parking_lot" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" +dependencies = [ + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-targets 0.52.6", +] + +[[package]] +name = "parse-display" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "914a1c2265c98e2446911282c6ac86d8524f495792c38c5bd884f80499c7538a" +dependencies = [ + "parse-display-derive", + "regex", + "regex-syntax 0.8.4", +] + +[[package]] +name = "parse-display-derive" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ae7800a4c974efd12df917266338e79a7a74415173caf7e70aa0a0707345281" +dependencies = [ + "proc-macro2", + "quote", + "regex", + "regex-syntax 0.8.4", + "structmeta", + "syn 2.0.66", +] + +[[package]] +name = "password-hash" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700" +dependencies = [ + "base64ct", + "rand_core", + "subtle", +] + +[[package]] +name = "paste" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" + +[[package]] +name = "path-clean" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17359afc20d7ab31fdb42bb844c8b3bb1dabd7dcf7e68428492da7f16966fcef" + +[[package]] +name = "path-tree" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c7fabb0b56aba5d2eb3fa9b1547c187f21f8c051295a7b97a50be6a9332f4cb" +dependencies = [ + "smallvec", +] + +[[package]] +name = "pathfinder-common" +version = "0.14.3" +source = "git+https://github.com/Moonsong-Labs/pathfinder?rev=9c19d9a37be8f447ec4548456c440ccbd0e44260#9c19d9a37be8f447ec4548456c440ccbd0e44260" +dependencies = [ + "anyhow", + "bitvec", + "fake", + "metrics", + "num-bigint", + "paste", + "pathfinder-crypto", + "primitive-types", + "rand", + "serde", + "serde_json", + "serde_with 3.10.0", + "sha3", + "tagged", + "tagged-debug-derive", + "thiserror", + "vergen", +] + +[[package]] +name = "pathfinder-crypto" +version = "0.14.3" +source = "git+https://github.com/Moonsong-Labs/pathfinder?rev=9c19d9a37be8f447ec4548456c440ccbd0e44260#9c19d9a37be8f447ec4548456c440ccbd0e44260" +dependencies = [ + "bitvec", + "fake", + "rand", + "serde", +] + +[[package]] +name = "pathfinder-serde" +version = "0.14.3" +source = "git+https://github.com/Moonsong-Labs/pathfinder?rev=9c19d9a37be8f447ec4548456c440ccbd0e44260#9c19d9a37be8f447ec4548456c440ccbd0e44260" +dependencies = [ + "anyhow", + "num-bigint", + "pathfinder-common", + "pathfinder-crypto", + "primitive-types", + "serde", + "serde_json", + "serde_with 3.10.0", +] + +[[package]] +name = "pbkdf2" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" +dependencies = [ + "digest 0.10.7", + "hmac", + "password-hash", + "sha2", +] + +[[package]] +name = "pbkdf2" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" +dependencies = [ + "digest 0.10.7", + "hmac", +] + +[[package]] +name = "pem" +version = "3.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae" +dependencies = [ + "base64 0.22.1", + "serde", +] + +[[package]] +name = "pem-rfc7468" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" +dependencies = [ + "base64ct", +] + +[[package]] +name = "percent-encoding" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" + +[[package]] +name = "pest" +version = "2.7.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "560131c633294438da9f7c4b08189194b20946c8274c6b9e38881a7874dc8ee8" +dependencies = [ + "memchr", + "thiserror", + "ucd-trie", +] + +[[package]] +name = "petgraph" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" +dependencies = [ + "fixedbitset", + "indexmap 2.6.0", +] + +[[package]] +name = "pharos" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e9567389417feee6ce15dd6527a8a1ecac205ef62c2932bcf3d9f6fc5b78b414" +dependencies = [ + "futures", + "rustc_version 0.4.0", +] + +[[package]] +name = "phf" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ade2d8b8f33c7333b51bcf0428d37e217e9f32192ae4772156f65063b8ce03dc" +dependencies = [ + "phf_macros", + "phf_shared 0.11.2", +] + +[[package]] +name = "phf_generator" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" +dependencies = [ + "phf_shared 0.11.2", + "rand", +] + +[[package]] +name = "phf_macros" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3444646e286606587e49f3bcf1679b8cef1dc2c5ecc29ddacaffc305180d464b" +dependencies = [ + "phf_generator", + "phf_shared 0.11.2", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "phf_shared" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096" +dependencies = [ + "siphasher", +] + +[[package]] +name = "phf_shared" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90fcb95eef784c2ac79119d1dd819e162b5da872ce6f3c3abe1e8ca1c082f72b" +dependencies = [ + "siphasher", +] + +[[package]] +name = "pico-args" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5be167a7af36ee22fe3115051bc51f6e6c7054c9348e28deb4f49bd6f705a315" + +[[package]] +name = "pin-project" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "pin-project-lite" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pinky-swear" +version = "6.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6cfae3ead413ca051a681152bd266438d3bfa301c9bdf836939a14c721bb2a21" +dependencies = [ + "doc-comment", + "flume", + "parking_lot", + "tracing", +] + +[[package]] +name = "piper" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae1d5c74c9876f070d3e8fd503d748c7d974c3e48da8f41350fa5222ef9b4391" +dependencies = [ + "atomic-waker", + "fastrand 2.1.1", + "futures-io", +] + +[[package]] +name = "pkcs12" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "695b3df3d3cc1015f12d70235e35b6b79befc5fa7a9b95b951eab1dd07c9efc2" +dependencies = [ + "cms", + "const-oid", + "der 0.7.9", + "digest 0.10.7", + "spki 0.7.3", + "x509-cert", + "zeroize", +] + +[[package]] +name = "pkcs5" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e847e2c91a18bfa887dd028ec33f2fe6f25db77db3619024764914affe8b69a6" +dependencies = [ + "aes", + "cbc", + "der 0.7.9", + "pbkdf2 0.12.2", + "scrypt 0.11.0", + "sha2", + "spki 0.7.3", +] + +[[package]] +name = "pkcs8" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9eca2c590a5f85da82668fa685c09ce2888b9430e83299debf1f34b65fd4a4ba" +dependencies = [ + "der 0.6.1", + "spki 0.6.0", +] + +[[package]] +name = "pkcs8" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" +dependencies = [ + "der 0.7.9", + "spki 0.7.3", +] + +[[package]] +name = "pkg-config" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" + +[[package]] +name = "polling" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b2d323e8ca7996b3e23126511a523f7e62924d93ecd5ae73b333815b0eb3dce" +dependencies = [ + "autocfg", + "bitflags 1.3.2", + "cfg-if", + "concurrent-queue", + "libc", + "log", + "pin-project-lite", + "windows-sys 0.48.0", +] + +[[package]] +name = "polling" +version = "3.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3ed00ed3fbf728b5816498ecd316d1716eecaced9c0c8d2c5a6740ca214985b" +dependencies = [ + "cfg-if", + "concurrent-queue", + "hermit-abi 0.4.0", + "pin-project-lite", + "rustix 0.38.37", + "tracing", + "windows-sys 0.52.0", +] + +[[package]] +name = "portable-atomic" +version = "0.3.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e30165d31df606f5726b090ec7592c308a0eaf61721ff64c9a3018e344a8753e" +dependencies = [ + "portable-atomic 1.6.0", +] + +[[package]] +name = "portable-atomic" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0" + +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] +name = "ppv-lite86" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" + +[[package]] +name = "precomputed-hash" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" + +[[package]] +name = "predicates" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68b87bfd4605926cdfefc1c3b5f8fe560e3feca9d5552cf68c466d3d8236c7e8" +dependencies = [ + "anstyle", + "predicates-core", +] + +[[package]] +name = "predicates-core" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174" + +[[package]] +name = "predicates-tree" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf" +dependencies = [ + "predicates-core", + "termtree", +] + +[[package]] +name = "pretty_assertions" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ae130e2f271fbc2ac3a40fb1d07180839cdbbe443c7a27e1e3c13c5cac0116d" +dependencies = [ + "diff", + "yansi", +] + +[[package]] +name = "prettyplease" +version = "0.2.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f12335488a2f3b0a83b14edad48dca9879ce89b2edd10e80237e4e852dd645e" +dependencies = [ + "proc-macro2", + "syn 2.0.66", +] + +[[package]] +name = "primitive-types" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" +dependencies = [ + "fixed-hash", + "impl-codec", + "impl-rlp", + "impl-serde", + "uint", +] + +[[package]] +name = "proc-macro-crate" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" +dependencies = [ + "toml_edit 0.21.1", +] + +[[package]] +name = "proc-macro-error" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +dependencies = [ + "proc-macro-error-attr", + "proc-macro2", + "quote", + "syn 1.0.109", + "version_check", +] + +[[package]] +name = "proc-macro-error-attr" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +dependencies = [ + "proc-macro2", + "quote", + "version_check", +] + +[[package]] +name = "proc-macro-error-attr2" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" +dependencies = [ + "proc-macro2", + "quote", +] + +[[package]] +name = "proc-macro-error2" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" +dependencies = [ + "proc-macro-error-attr2", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "proc-macro2" +version = "1.0.85" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "proptest" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf" +dependencies = [ + "bit-set", + "bit-vec", + "bitflags 2.5.0", + "lazy_static", + "num-traits 0.2.19", + "rand", + "rand_chacha", + "rand_xorshift", + "regex-syntax 0.8.4", + "rusty-fork", + "tempfile", + "unarray", +] + +[[package]] +name = "prost" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29" +dependencies = [ + "bytes", + "prost-derive 0.12.6", +] + +[[package]] +name = "prost" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b2ecbe40f08db5c006b5764a2645f7f3f141ce756412ac9e1dd6087e6d32995" +dependencies = [ + "bytes", + "prost-derive 0.13.2", +] + +[[package]] +name = "prost-derive" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" +dependencies = [ + "anyhow", + "itertools 0.12.1", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "prost-derive" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acf0c195eebb4af52c752bec4f52f645da98b6e92077a04110c7f349477ae5ac" +dependencies = [ + "anyhow", + "itertools 0.13.0", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "prost-types" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0" +dependencies = [ + "prost 0.12.6", +] + +[[package]] +name = "prove_block" +version = "0.1.0" +source = "git+https://github.com/keep-starknet-strange/snos?branch=tmp%2Fsnos_devnet_zero_txs#2c472815ebebca927caa5382c3bb8e3c1bbf0d86" +dependencies = [ + "anyhow", + "blockifier", + "cairo-lang-starknet-classes", + "cairo-lang-utils", + "cairo-vm 1.0.1 (git+https://github.com/Moonsong-Labs/cairo-vm?branch=notlesh%2Fsnos-2024-11-04)", + "clap", + "env_logger", + "futures-core", + "log", + "num-bigint", + "pathfinder-common", + "pathfinder-crypto", + "pathfinder-serde", + "reqwest 0.11.27", + "rpc-client", + "rpc-replay", + "serde", + "serde_json", + "serde_with 3.10.0", + "starknet", + "starknet-os", + "starknet-os-types", + "starknet-types-core", + "starknet_api", + "thiserror", + "tokio", +] + +[[package]] +name = "prover-client-interface" +version = "0.1.0" +dependencies = [ + "async-trait", + "cairo-vm 1.0.1 (git+https://github.com/Moonsong-Labs/cairo-vm?branch=notlesh%2Fsnos-2024-11-04)", + "gps-fact-checker", + "mockall", + "starknet-os", + "thiserror", + "utils", +] + +[[package]] +name = "quick-error" +version = "1.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" + +[[package]] +name = "quinn" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b22d8e7369034b9a7132bc2008cac12f2013c8132b45e0554e6e20e2617f2156" +dependencies = [ + "bytes", + "pin-project-lite", + "quinn-proto", + "quinn-udp", + "rustc-hash 2.0.0", + "rustls 0.23.10", + "socket2 0.5.7", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "quinn-proto" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba92fb39ec7ad06ca2582c0ca834dfeadcaf06ddfc8e635c80aa7e1c05315fdd" +dependencies = [ + "bytes", + "rand", + "ring", + "rustc-hash 2.0.0", + "rustls 0.23.10", + "slab", + "thiserror", + "tinyvec", + "tracing", +] + +[[package]] +name = "quinn-udp" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8bffec3605b73c6f1754535084a85229fa8a30f86014e6c81aeec4abb68b0285" +dependencies = [ + "libc", + "once_cell", + "socket2 0.5.7", + "tracing", + "windows-sys 0.52.0", +] + +[[package]] +name = "quote" +version = "1.0.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "radium" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha", + "rand_core", + "serde", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom", +] + +[[package]] +name = "rand_xorshift" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" +dependencies = [ + "rand_core", +] + +[[package]] +name = "rawpointer" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" + +[[package]] +name = "rayon" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-core" +version = "1.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +dependencies = [ + "crossbeam-deque", + "crossbeam-utils", +] + +[[package]] +name = "rc2" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62c64daa8e9438b84aaae55010a93f396f8e60e3911590fcba770d04643fc1dd" +dependencies = [ + "cipher", +] + +[[package]] +name = "reactor-trait" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "438a4293e4d097556730f4711998189416232f009c137389e0f961d2bc0ddc58" +dependencies = [ + "async-trait", + "futures-core", + "futures-io", +] + +[[package]] +name = "recvmsg" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3edd4d5d42c92f0a659926464d4cce56b562761267ecf0f469d85b7de384175" + +[[package]] +name = "redis" +version = "0.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c580d9cbbe1d1b479e8d67cf9daf6a62c957e6846048408b80b43ac3f6af84cd" +dependencies = [ + "async-trait", + "bytes", + "combine", + "crc16", + "futures", + "futures-util", + "itoa", + "log", + "native-tls", + "percent-encoding", + "pin-project-lite", + "rand", + "ryu", + "sha1_smol", + "socket2 0.4.10", + "tokio", + "tokio-native-tls", + "tokio-util", + "url", +] + +[[package]] +name = "redox_syscall" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c82cf8cff14456045f55ec4241383baeff27af886adb72ffb2162f99911de0fd" +dependencies = [ + "bitflags 2.5.0", +] + +[[package]] +name = "redox_users" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891" +dependencies = [ + "getrandom", + "libredox", + "thiserror", +] + +[[package]] +name = "regex" +version = "1.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata 0.4.7", + "regex-syntax 0.8.4", +] + +[[package]] +name = "regex-automata" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +dependencies = [ + "regex-syntax 0.6.29", +] + +[[package]] +name = "regex-automata" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.8.4", +] + +[[package]] +name = "regex-lite" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53a49587ad06b26609c52e423de037e7f57f20d53535d66e08c695f347df952a" + +[[package]] +name = "regex-syntax" +version = "0.6.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + +[[package]] +name = "regex-syntax" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" + +[[package]] +name = "relative-path" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba39f3699c378cd8970968dcbff9c43159ea4cfbd88d43c00b22f2ef10a435d2" + +[[package]] +name = "reqwest" +version = "0.11.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" +dependencies = [ + "base64 0.21.7", + "bytes", + "encoding_rs", + "futures-core", + "futures-util", + "h2 0.3.26", + "http 0.2.12", + "http-body 0.4.6", + "hyper 0.14.29", + "hyper-rustls 0.24.2", + "hyper-tls 0.5.0", + "ipnet", + "js-sys", + "log", + "mime", + "native-tls", + "once_cell", + "percent-encoding", + "pin-project-lite", + "rustls 0.21.12", + "rustls-pemfile 1.0.4", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper 0.1.2", + "system-configuration 0.5.1", + "tokio", + "tokio-native-tls", + "tokio-rustls 0.24.1", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "webpki-roots 0.25.4", + "winreg", +] + +[[package]] +name = "reqwest" +version = "0.12.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8f4955649ef5c38cc7f9e8aa41761d48fb9677197daea9984dc54f56aad5e63" +dependencies = [ + "base64 0.22.1", + "bytes", + "encoding_rs", + "futures-core", + "futures-util", + "h2 0.4.5", + "hickory-resolver", + "http 1.1.0", + "http-body 1.0.0", + "http-body-util", + "hyper 1.4.1", + "hyper-rustls 0.27.2", + "hyper-tls 0.6.0", + "hyper-util", + "ipnet", + "js-sys", + "log", + "mime", + "mime_guess", + "native-tls", + "once_cell", + "percent-encoding", + "pin-project-lite", + "quinn", + "rustls 0.23.10", + "rustls-native-certs 0.7.0", + "rustls-pemfile 2.1.2", + "rustls-pki-types", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper 1.0.1", + "system-configuration 0.6.1", + "tokio", + "tokio-native-tls", + "tokio-rustls 0.26.0", + "tokio-util", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "wasm-streams", + "web-sys", + "webpki-roots 0.26.3", + "windows-registry", +] + +[[package]] +name = "resolv-conf" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00" +dependencies = [ + "hostname", + "quick-error", +] + +[[package]] +name = "rfc6979" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7743f17af12fa0b03b803ba12cd6a8d9483a587e89c69445e3909655c0b9fabb" +dependencies = [ + "crypto-bigint 0.4.9", + "hmac", + "zeroize", +] + +[[package]] +name = "rfc6979" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" +dependencies = [ + "hmac", + "subtle", +] + +[[package]] +name = "ring" +version = "0.17.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" +dependencies = [ + "cc", + "cfg-if", + "getrandom", + "libc", + "spin 0.9.8", + "untrusted", + "windows-sys 0.52.0", +] + +[[package]] +name = "rlp" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" +dependencies = [ + "bytes", + "rustc-hex", +] + +[[package]] +name = "rpc-client" +version = "0.1.0" +source = "git+https://github.com/keep-starknet-strange/snos?branch=tmp%2Fsnos_devnet_zero_txs#2c472815ebebca927caa5382c3bb8e3c1bbf0d86" +dependencies = [ + "log", + "reqwest 0.11.27", + "serde", + "serde_json", + "starknet", + "starknet-os", + "starknet-types-core", + "thiserror", +] + +[[package]] +name = "rpc-replay" +version = "0.1.0" +source = "git+https://github.com/keep-starknet-strange/snos?branch=tmp%2Fsnos_devnet_zero_txs#2c472815ebebca927caa5382c3bb8e3c1bbf0d86" +dependencies = [ + "blockifier", + "cairo-lang-starknet-classes", + "rpc-client", + "serde", + "serde_json", + "starknet", + "starknet-os-types", + "starknet_api", + "thiserror", + "tokio", +] + +[[package]] +name = "rstest" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de1bb486a691878cd320c2f0d319ba91eeaa2e894066d8b5f8f117c000e9d962" +dependencies = [ + "futures", + "futures-timer", + "rstest_macros 0.17.0", + "rustc_version 0.4.0", +] + +[[package]] +name = "rstest" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97eeab2f3c0a199bc4be135c36c924b6590b88c377d416494288c14f2db30199" +dependencies = [ + "futures", + "futures-timer", + "rstest_macros 0.18.2", + "rustc_version 0.4.0", +] + +[[package]] +name = "rstest" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d5316d2a1479eeef1ea21e7f9ddc67c191d497abc8fc3ba2467857abbb68330" +dependencies = [ + "futures", + "futures-timer", + "rstest_macros 0.19.0", + "rustc_version 0.4.0", +] + +[[package]] +name = "rstest" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b423f0e62bdd61734b67cd21ff50871dfaeb9cc74f869dcd6af974fbcb19936" +dependencies = [ + "futures", + "futures-timer", + "rstest_macros 0.22.0", + "rustc_version 0.4.0", +] + +[[package]] +name = "rstest_macros" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "290ca1a1c8ca7edb7c3283bd44dc35dd54fdec6253a3912e201ba1072018fca8" +dependencies = [ + "cfg-if", + "proc-macro2", + "quote", + "rustc_version 0.4.0", + "syn 1.0.109", + "unicode-ident", +] + +[[package]] +name = "rstest_macros" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d428f8247852f894ee1be110b375111b586d4fa431f6c46e64ba5a0dcccbe605" +dependencies = [ + "cfg-if", + "glob", + "proc-macro2", + "quote", + "regex", + "relative-path", + "rustc_version 0.4.0", + "syn 2.0.66", + "unicode-ident", +] + +[[package]] +name = "rstest_macros" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04a9df72cc1f67020b0d63ad9bfe4a323e459ea7eb68e03bd9824db49f9a4c25" +dependencies = [ + "cfg-if", + "glob", + "proc-macro2", + "quote", + "regex", + "relative-path", + "rustc_version 0.4.0", + "syn 2.0.66", + "unicode-ident", +] + +[[package]] +name = "rstest_macros" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5e1711e7d14f74b12a58411c542185ef7fb7f2e7f8ee6e2940a883628522b42" +dependencies = [ + "cfg-if", + "glob", + "proc-macro-crate", + "proc-macro2", + "quote", + "regex", + "relative-path", + "rustc_version 0.4.0", + "syn 2.0.66", + "unicode-ident", +] + +[[package]] +name = "ruint" +version = "1.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c3cc4c2511671f327125da14133d0c5c5d137f006a1017a16f557bc85b16286" +dependencies = [ + "alloy-rlp", + "ark-ff 0.3.0", + "ark-ff 0.4.2", + "bytes", + "fastrlp", + "num-bigint", + "num-traits 0.2.19", + "parity-scale-codec", + "primitive-types", + "proptest", + "rand", + "rlp", + "ruint-macro", + "serde", + "valuable", + "zeroize", +] + +[[package]] +name = "ruint-macro" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" + +[[package]] +name = "rust-analyzer-salsa" +version = "0.17.0-pre.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "719825638c59fd26a55412a24561c7c5bcf54364c88b9a7a04ba08a6eafaba8d" +dependencies = [ + "indexmap 2.6.0", + "lock_api", + "oorandom", + "parking_lot", + "rust-analyzer-salsa-macros", + "rustc-hash 1.1.0", + "smallvec", + "tracing", + "triomphe", +] + +[[package]] +name = "rust-analyzer-salsa-macros" +version = "0.17.0-pre.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d96498e9684848c6676c399032ebc37c52da95ecbefa83d71ccc53b9f8a4a8e" +dependencies = [ + "heck 0.4.1", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "rust_decimal" +version = "1.35.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1790d1c4c0ca81211399e0e0af16333276f375209e71a37b67698a373db5b47a" +dependencies = [ + "arrayvec", + "num-traits 0.2.19", +] + +[[package]] +name = "rustc-demangle" +version = "0.1.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" + +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + +[[package]] +name = "rustc-hash" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152" + +[[package]] +name = "rustc-hex" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" + +[[package]] +name = "rustc_version" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" +dependencies = [ + "semver 0.9.0", +] + +[[package]] +name = "rustc_version" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee" +dependencies = [ + "semver 0.11.0", +] + +[[package]] +name = "rustc_version" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +dependencies = [ + "semver 1.0.23", +] + +[[package]] +name = "rustc_version_runtime" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d31b7153270ebf48bf91c65ae5b0c00e749c4cfad505f66530ac74950249582f" +dependencies = [ + "rustc_version 0.2.3", + "semver 0.9.0", +] + +[[package]] +name = "rusticata-macros" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632" +dependencies = [ + "nom", +] + +[[package]] +name = "rustix" +version = "0.37.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fea8ca367a3a01fe35e6943c400addf443c0f57670e6ec51196f71a4b8762dd2" +dependencies = [ + "bitflags 1.3.2", + "errno", + "io-lifetimes", + "libc", + "linux-raw-sys 0.3.8", + "windows-sys 0.48.0", +] + +[[package]] +name = "rustix" +version = "0.38.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811" +dependencies = [ + "bitflags 2.5.0", + "errno", + "libc", + "linux-raw-sys 0.4.14", + "windows-sys 0.52.0", +] + +[[package]] +name = "rustls" +version = "0.21.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" +dependencies = [ + "log", + "ring", + "rustls-webpki 0.101.7", + "sct", +] + +[[package]] +name = "rustls" +version = "0.22.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432" +dependencies = [ + "log", + "ring", + "rustls-pki-types", + "rustls-webpki 0.102.4", + "subtle", + "zeroize", +] + +[[package]] +name = "rustls" +version = "0.23.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05cff451f60db80f490f3c182b77c35260baace73209e9cdbbe526bfe3a4d402" +dependencies = [ + "aws-lc-rs", + "log", + "once_cell", + "ring", + "rustls-pki-types", + "rustls-webpki 0.102.4", + "subtle", + "zeroize", +] + +[[package]] +name = "rustls-connector" +version = "0.20.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "727a826801254b6cfcd2508a0508c01b7c1bca21d3673e84d86da084781b83d5" +dependencies = [ + "log", + "rustls 0.23.10", + "rustls-native-certs 0.7.0", + "rustls-pki-types", + "rustls-webpki 0.102.4", +] + +[[package]] +name = "rustls-native-certs" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" +dependencies = [ + "openssl-probe", + "rustls-pemfile 1.0.4", + "schannel", + "security-framework", +] + +[[package]] +name = "rustls-native-certs" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f1fb85efa936c42c6d5fc28d2629bb51e4b2f4b8a5211e297d599cc5a093792" +dependencies = [ + "openssl-probe", + "rustls-pemfile 2.1.2", + "rustls-pki-types", + "schannel", + "security-framework", +] + +[[package]] +name = "rustls-pemfile" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" +dependencies = [ + "base64 0.21.7", +] + +[[package]] +name = "rustls-pemfile" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d" +dependencies = [ + "base64 0.22.1", + "rustls-pki-types", +] + +[[package]] +name = "rustls-pki-types" +version = "1.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d" + +[[package]] +name = "rustls-webpki" +version = "0.101.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" +dependencies = [ + "ring", + "untrusted", +] + +[[package]] +name = "rustls-webpki" +version = "0.102.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff448f7e92e913c4b7d4c6d8e4540a1724b319b4152b8aef6d4cf8339712b33e" +dependencies = [ + "aws-lc-rs", + "ring", + "rustls-pki-types", + "untrusted", +] + +[[package]] +name = "rustversion" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" + +[[package]] +name = "rusty-fork" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f" +dependencies = [ + "fnv", + "quick-error", + "tempfile", + "wait-timeout", +] + +[[package]] +name = "ryu" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" + +[[package]] +name = "salsa20" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97a22f5af31f73a954c10289c93e8a50cc23d971e80ee446f1f6f7137a088213" +dependencies = [ + "cipher", +] + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "schannel" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" +dependencies = [ + "windows-sys 0.52.0", +] + +[[package]] +name = "schemars" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92" +dependencies = [ + "dyn-clone", + "indexmap 1.9.3", + "schemars_derive", + "serde", + "serde_json", +] + +[[package]] +name = "schemars_derive" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e" +dependencies = [ + "proc-macro2", + "quote", + "serde_derive_internals", + "syn 2.0.66", +] + +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "scrypt" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f9e24d2b632954ded8ab2ef9fea0a0c769ea56ea98bddbafbad22caeeadf45d" +dependencies = [ + "hmac", + "pbkdf2 0.11.0", + "salsa20", + "sha2", +] + +[[package]] +name = "scrypt" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0516a385866c09368f0b5bcd1caff3366aace790fcd46e2bb032697bb172fd1f" +dependencies = [ + "pbkdf2 0.12.2", + "salsa20", + "sha2", +] + +[[package]] +name = "sct" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" +dependencies = [ + "ring", + "untrusted", +] + +[[package]] +name = "sec1" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3be24c1842290c45df0a7bf069e0c268a747ad05a192f2fd7dcfdbc1cba40928" +dependencies = [ + "base16ct 0.1.1", + "der 0.6.1", + "generic-array", + "pkcs8 0.9.0", + "subtle", + "zeroize", +] + +[[package]] +name = "sec1" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" +dependencies = [ + "base16ct 0.2.0", + "der 0.7.9", + "generic-array", + "pkcs8 0.10.2", + "subtle", + "zeroize", +] + +[[package]] +name = "security-framework" +version = "2.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c627723fd09706bacdb5cf41499e95098555af3c3c29d014dc3c458ef6be11c0" +dependencies = [ + "bitflags 2.5.0", + "core-foundation", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + +[[package]] +name = "security-framework-sys" +version = "2.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "317936bbbd05227752583946b9e66d7ce3b489f84e11a94a510b4437fef407d7" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "semver" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" +dependencies = [ + "semver-parser 0.7.0", +] + +[[package]] +name = "semver" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" +dependencies = [ + "semver-parser 0.10.2", +] + +[[package]] +name = "semver" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" +dependencies = [ + "serde", +] + +[[package]] +name = "semver-parser" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" + +[[package]] +name = "semver-parser" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7" +dependencies = [ + "pest", +] + +[[package]] +name = "send_wrapper" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" + +[[package]] +name = "serde" +version = "1.0.203" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_bytes" +version = "0.11.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_derive" +version = "1.0.203" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "serde_derive_internals" +version = "0.29.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "serde_json" +version = "1.0.117" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3" +dependencies = [ + "indexmap 2.6.0", + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_json_pythonic" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62212da9872ca2a0cad0093191ee33753eddff9266cbbc1b4a602d13a3a768db" +dependencies = [ + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_path_to_error" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6" +dependencies = [ + "itoa", + "serde", +] + +[[package]] +name = "serde_regex" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8136f1a4ea815d7eac4101cfd0b16dc0cb5e1fe1b8609dfd728058656b7badf" +dependencies = [ + "regex", + "serde", +] + +[[package]] +name = "serde_repr" +version = "0.1.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "serde_spanned" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79e674e01f999af37c49f70a6ede167a8a60b2503e56c5599532a65baa5969a0" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_urlencoded" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" +dependencies = [ + "form_urlencoded", + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_with" +version = "1.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "678b5a069e50bf00ecd22d0cd8ddf7c236f68581b03db652061ed5eb13a312ff" +dependencies = [ + "serde", + "serde_with_macros 1.5.2", +] + +[[package]] +name = "serde_with" +version = "2.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07ff71d2c147a7b57362cead5e22f772cd52f6ab31cfcd9edcd7f6aeb2a0afbe" +dependencies = [ + "base64 0.13.1", + "chrono", + "hex", + "indexmap 1.9.3", + "serde", + "serde_json", + "serde_with_macros 2.3.3", + "time", +] + +[[package]] +name = "serde_with" +version = "3.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9720086b3357bcb44fce40117d769a4d068c70ecfa190850a980a71755f66fcc" +dependencies = [ + "base64 0.22.1", + "chrono", + "hex", + "indexmap 1.9.3", + "indexmap 2.6.0", + "serde", + "serde_derive", + "serde_json", + "serde_with_macros 3.10.0", + "time", +] + +[[package]] +name = "serde_with_macros" +version = "1.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082" +dependencies = [ + "darling 0.13.4", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "serde_with_macros" +version = "2.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "881b6f881b17d13214e5d494c939ebab463d01264ce1811e9d4ac3a882e7695f" +dependencies = [ + "darling 0.20.9", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "serde_with_macros" +version = "3.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f1abbfe725f27678f4663bcacb75a83e829fd464c25d78dd038a3a29e307cec" +dependencies = [ + "darling 0.20.9", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "serde_yaml" +version = "0.9.34+deprecated" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" +dependencies = [ + "indexmap 2.6.0", + "itoa", + "ryu", + "serde", + "unsafe-libyaml", +] + +[[package]] +name = "settlement-client-interface" +version = "0.1.0" +dependencies = [ + "async-trait", + "axum 0.7.5", + "c-kzg", + "color-eyre", + "mockall", + "starknet", + "utils", +] + +[[package]] +name = "sha-1" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5058ada175748e33390e40e872bd0fe59a19f265d0158daa551c5a88a76009c" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + +[[package]] +name = "sha1" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + +[[package]] +name = "sha1_smol" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012" + +[[package]] +name = "sha2" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + +[[package]] +name = "sha3" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" +dependencies = [ + "digest 0.10.7", + "keccak", +] + +[[package]] +name = "sha3-asm" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9b57fd861253bff08bb1919e995f90ba8f4889de2726091c8876f3a4e823b40" +dependencies = [ + "cc", + "cfg-if", +] + +[[package]] +name = "sharded-slab" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +dependencies = [ + "lazy_static", +] + +[[package]] +name = "sharp-service" +version = "0.1.0" +dependencies = [ + "alloy 0.2.1", + "async-trait", + "base64 0.22.1", + "cairo-vm 1.0.1 (git+https://github.com/Moonsong-Labs/cairo-vm?branch=notlesh%2Fsnos-2024-11-04)", + "color-eyre", + "dotenvy", + "gps-fact-checker", + "hex", + "httpmock", + "lazy_static", + "log", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry_sdk", + "prover-client-interface", + "reqwest 0.12.7", + "rstest 0.22.0", + "serde", + "serde_json", + "starknet-os", + "thiserror", + "tokio", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "utils", + "uuid 1.8.0", +] + +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + +[[package]] +name = "signal-hook-registry" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" +dependencies = [ + "libc", +] + +[[package]] +name = "signature" +version = "1.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" +dependencies = [ + "digest 0.10.7", + "rand_core", +] + +[[package]] +name = "signature" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" +dependencies = [ + "digest 0.10.7", + "rand_core", +] + +[[package]] +name = "similar" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1de1d4f81173b03af4c0cbed3c898f6bff5b870e4a7f5d6f4057d62a7a4b686e" + +[[package]] +name = "simple_asn1" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adc4e5204eb1910f40f9cfa375f6f05b68c3abac4b6fd879c8ff5e7ae8a0a085" +dependencies = [ + "num-bigint", + "num-traits 0.2.19", + "thiserror", + "time", +] + +[[package]] +name = "siphasher" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" + +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] + +[[package]] +name = "smallvec" +version = "1.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" + +[[package]] +name = "smol_str" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd538fb6910ac1099850255cf94a94df6551fbdd602454387d0adb2d1ca6dead" +dependencies = [ + "serde", +] + +[[package]] +name = "socket2" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "socket2" +version = "0.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "spin" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" + +[[package]] +name = "spin" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" +dependencies = [ + "lock_api", +] + +[[package]] +name = "spki" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67cf02bbac7a337dc36e4f5a693db6c21e7863f45070f7064577eb4367a3212b" +dependencies = [ + "base64ct", + "der 0.6.1", +] + +[[package]] +name = "spki" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" +dependencies = [ + "base64ct", + "der 0.7.9", +] + +[[package]] +name = "sprs" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec63571489873d4506683915840eeb1bb16b3198ee4894cc6f2fe3013d505e56" +dependencies = [ + "ndarray", + "num-complex 0.2.4", + "num-traits 0.1.43", +] + +[[package]] +name = "stable_deref_trait" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" + +[[package]] +name = "starknet" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e633a772f59214c296d5037c95c36b72792c9360323818da2b625c7b4ec4b49" +dependencies = [ + "starknet-accounts", + "starknet-contract", + "starknet-core 0.11.1", + "starknet-crypto 0.7.2", + "starknet-macros", + "starknet-providers", + "starknet-signers", +] + +[[package]] +name = "starknet-accounts" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eee8a6b588a22c7e79f5d8d4e33413387db63a8beb98be8610138541794cc0a5" +dependencies = [ + "async-trait", + "auto_impl", + "starknet-core 0.11.1", + "starknet-crypto 0.7.2", + "starknet-providers", + "starknet-signers", + "thiserror", +] + +[[package]] +name = "starknet-contract" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5f91344f1e0b81873b6dc235c50ae4d084c6ea4dd4a1e3e27ad895803adb610" +dependencies = [ + "serde", + "serde_json", + "serde_with 2.3.3", + "starknet-accounts", + "starknet-core 0.11.1", + "starknet-providers", + "thiserror", +] + +[[package]] +name = "starknet-core" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b15034c07557615f6bea248cb2ac91a103f56792c515319025a5edc4de2a60e" +dependencies = [ + "base64 0.21.7", + "flate2", + "hex", + "serde", + "serde_json", + "serde_json_pythonic", + "serde_with 2.3.3", + "sha3", + "starknet-crypto 0.6.2", + "starknet-ff", +] + +[[package]] +name = "starknet-core" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d506e02a4083290d13b427dfe437fd95aa8b56315c455bb2f9cdeca76620d457" +dependencies = [ + "base64 0.21.7", + "crypto-bigint 0.5.5", + "flate2", + "hex", + "serde", + "serde_json", + "serde_json_pythonic", + "serde_with 2.3.3", + "sha3", + "starknet-crypto 0.7.2", + "starknet-types-core", +] + +[[package]] +name = "starknet-core" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2538240cbe6663c673fe77465f294da707080f39678dd7066761554899e46100" +dependencies = [ + "base64 0.21.7", + "crypto-bigint 0.5.5", + "flate2", + "hex", + "serde", + "serde_json", + "serde_json_pythonic", + "serde_with 3.10.0", + "sha3", + "starknet-crypto 0.7.2", + "starknet-types-core", +] + +[[package]] +name = "starknet-crypto" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3f2175b0b3fc24ff2ec6dc07f5a720498994effca7e78b11a6e1c1bd02cad52" +dependencies = [ + "crypto-bigint 0.5.5", + "hex", + "hmac", + "num-bigint", + "num-integer", + "num-traits 0.2.19", + "rfc6979 0.4.0", + "sha2", + "starknet-crypto-codegen", + "starknet-curve 0.3.0", + "starknet-ff", + "zeroize", +] + +[[package]] +name = "starknet-crypto" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e2c30c01e8eb0fc913c4ee3cf676389fffc1d1182bfe5bb9670e4e72e968064" +dependencies = [ + "crypto-bigint 0.5.5", + "hex", + "hmac", + "num-bigint", + "num-integer", + "num-traits 0.2.19", + "rfc6979 0.4.0", + "sha2", + "starknet-crypto-codegen", + "starknet-curve 0.4.2", + "starknet-ff", + "zeroize", +] + +[[package]] +name = "starknet-crypto" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a5064173a8e8d2675e67744fd07f310de44573924b6b7af225a6bdd8102913" +dependencies = [ + "crypto-bigint 0.5.5", + "hex", + "hmac", + "num-bigint", + "num-integer", + "num-traits 0.2.19", + "rfc6979 0.4.0", + "sha2", + "starknet-curve 0.5.1", + "starknet-types-core", + "zeroize", +] + +[[package]] +name = "starknet-crypto-codegen" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbc159a1934c7be9761c237333a57febe060ace2bc9e3b337a59a37af206d19f" +dependencies = [ + "starknet-curve 0.4.2", + "starknet-ff", + "syn 2.0.66", +] + +[[package]] +name = "starknet-curve" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "252610baff59e4c4332ce3569f7469c5d3f9b415a2240d698fb238b2b4fc0942" +dependencies = [ + "starknet-ff", +] + +[[package]] +name = "starknet-curve" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1c383518bb312751e4be80f53e8644034aa99a0afb29d7ac41b89a997db875b" +dependencies = [ + "starknet-ff", +] + +[[package]] +name = "starknet-curve" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bcde6bd74269b8161948190ace6cf069ef20ac6e79cd2ba09b320efa7500b6de" +dependencies = [ + "starknet-types-core", +] + +[[package]] +name = "starknet-ff" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7abf1b44ec5b18d87c1ae5f54590ca9d0699ef4dd5b2ffa66fc97f24613ec585" +dependencies = [ + "ark-ff 0.4.2", + "bigdecimal", + "crypto-bigint 0.5.5", + "getrandom", + "hex", + "serde", +] + +[[package]] +name = "starknet-gateway-types" +version = "0.14.3" +source = "git+https://github.com/Moonsong-Labs/pathfinder?rev=9c19d9a37be8f447ec4548456c440ccbd0e44260#9c19d9a37be8f447ec4548456c440ccbd0e44260" +dependencies = [ + "anyhow", + "fake", + "pathfinder-common", + "pathfinder-crypto", + "pathfinder-serde", + "primitive-types", + "rand", + "reqwest 0.12.7", + "rstest 0.18.2", + "serde", + "serde_json", + "serde_with 3.10.0", + "sha3", + "thiserror", + "tokio", +] + +[[package]] +name = "starknet-macros" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8986a940af916fc0a034f4e42c6ba76d94f1e97216d75447693dfd7aefaf3ef2" +dependencies = [ + "starknet-core 0.12.0", + "syn 2.0.66", +] + +[[package]] +name = "starknet-os" +version = "0.1.0" +source = "git+https://github.com/keep-starknet-strange/snos?branch=tmp%2Fsnos_devnet_zero_txs#2c472815ebebca927caa5382c3bb8e3c1bbf0d86" +dependencies = [ + "anyhow", + "ark-ec", + "ark-ff 0.4.2", + "ark-secp256k1", + "ark-secp256r1", + "base64 0.21.7", + "bitvec", + "blockifier", + "c-kzg", + "cairo-lang-casm", + "cairo-lang-starknet", + "cairo-lang-starknet-classes", + "cairo-type-derive", + "cairo-vm 1.0.1 (git+https://github.com/Moonsong-Labs/cairo-vm?branch=notlesh%2Fsnos-2024-11-04)", + "futures", + "futures-util", + "heck 0.4.1", + "hex", + "indexmap 2.6.0", + "indoc", + "keccak", + "lazy_static", + "log", + "num-bigint", + "num-integer", + "num-traits 0.2.19", + "pathfinder-common", + "pathfinder-crypto", + "reqwest 0.11.27", + "serde", + "serde_json", + "serde_with 3.10.0", + "serde_yaml", + "sha2", + "starknet-crypto 0.6.2", + "starknet-gateway-types", + "starknet-os-types", + "starknet_api", + "thiserror", + "tokio", + "uuid 1.8.0", + "zip", +] + +[[package]] +name = "starknet-os-types" +version = "0.1.0" +source = "git+https://github.com/keep-starknet-strange/snos?branch=tmp%2Fsnos_devnet_zero_txs#2c472815ebebca927caa5382c3bb8e3c1bbf0d86" +dependencies = [ + "blockifier", + "cairo-lang-starknet-classes", + "cairo-vm 1.0.1 (git+https://github.com/Moonsong-Labs/cairo-vm?branch=notlesh%2Fsnos-2024-11-04)", + "flate2", + "num-bigint", + "serde", + "serde_json", + "serde_with 3.10.0", + "starknet-core 0.11.1", + "starknet-crypto 0.6.2", + "starknet-gateway-types", + "starknet-types-core", + "starknet_api", + "thiserror", + "tokio", +] + +[[package]] +name = "starknet-providers" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59c85e0a0f4563ae95dfeae14ea0f0c70610efc0ec2462505c64eff5765e7b97" +dependencies = [ + "async-trait", + "auto_impl", + "ethereum-types", + "flate2", + "getrandom", + "log", + "reqwest 0.11.27", + "serde", + "serde_json", + "serde_with 2.3.3", + "starknet-core 0.11.1", + "thiserror", + "url", +] + +[[package]] +name = "starknet-settlement-client" +version = "0.1.0" +dependencies = [ + "alloy 0.2.1", + "alloy-primitives 0.7.7", + "appchain-core-contract-client", + "async-std", + "async-trait", + "c-kzg", + "color-eyre", + "crypto-bigint 0.5.5", + "dotenvy", + "lazy_static", + "log", + "mockall", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry_sdk", + "reqwest 0.12.7", + "rstest 0.22.0", + "serde", + "serde_json", + "settlement-client-interface", + "starknet", + "tempfile", + "tokio", + "tokio-test", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", + "utils", +] + +[[package]] +name = "starknet-signers" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c17da2139119dbe3aacf1d5d4338798a5c489d17f424916ceb9d2efd83554f87" +dependencies = [ + "async-trait", + "auto_impl", + "crypto-bigint 0.5.5", + "eth-keystore", + "getrandom", + "rand", + "starknet-core 0.11.1", + "starknet-crypto 0.7.2", + "thiserror", +] + +[[package]] +name = "starknet-types-core" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b889ee5734db8b3c8a6551135c16764bf4ce1ab4955fffbb2ac5b6706542b64" +dependencies = [ + "lambdaworks-crypto", + "lambdaworks-math", + "lazy_static", + "num-bigint", + "num-integer", + "num-traits 0.2.19", + "serde", +] + +[[package]] +name = "starknet_api" +version = "0.13.0-rc.1" +source = "git+https://github.com/Moonsong-Labs/sequencer?rev=6624e910c57db9a16f1607c1ed26f7d8f1114e73#6624e910c57db9a16f1607c1ed26f7d8f1114e73" +dependencies = [ + "bitvec", + "cairo-lang-starknet-classes", + "derive_more 0.99.18", + "hex", + "indexmap 2.6.0", + "itertools 0.12.1", + "once_cell", + "primitive-types", + "serde", + "serde_json", + "sha3", + "starknet-crypto 0.5.2", + "starknet-types-core", + "strum 0.24.1", + "strum_macros 0.24.3", + "thiserror", +] + +[[package]] +name = "static_assertions" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" + +[[package]] +name = "string_cache" +version = "0.8.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b" +dependencies = [ + "new_debug_unreachable", + "once_cell", + "parking_lot", + "phf_shared 0.10.0", + "precomputed-hash", +] + +[[package]] +name = "stringmetrics" +version = "2.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b3c8667cd96245cbb600b8dec5680a7319edd719c5aa2b5d23c6bff94f39765" + +[[package]] +name = "stringprep" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b4df3d392d81bd458a8a621b8bffbd2302a12ffe288a9d931670948749463b1" +dependencies = [ + "unicode-bidi", + "unicode-normalization", + "unicode-properties", +] + +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + +[[package]] +name = "strsim" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" + +[[package]] +name = "structmeta" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e1575d8d40908d70f6fd05537266b90ae71b15dbbe7a8b7dffa2b759306d329" +dependencies = [ + "proc-macro2", + "quote", + "structmeta-derive", + "syn 2.0.66", +] + +[[package]] +name = "structmeta-derive" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "152a0b65a590ff6c3da95cabe2353ee04e6167c896b28e3b14478c2636c922fc" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "strum" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" + +[[package]] +name = "strum" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125" + +[[package]] +name = "strum" +version = "0.26.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" +dependencies = [ + "strum_macros 0.26.4", +] + +[[package]] +name = "strum_macros" +version = "0.24.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" +dependencies = [ + "heck 0.4.1", + "proc-macro2", + "quote", + "rustversion", + "syn 1.0.109", +] + +[[package]] +name = "strum_macros" +version = "0.25.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0" +dependencies = [ + "heck 0.4.1", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.66", +] + +[[package]] +name = "strum_macros" +version = "0.26.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" +dependencies = [ + "heck 0.5.0", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.66", +] + +[[package]] +name = "subtle" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" + +[[package]] +name = "svix-ksuid" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66f014385b7fc154f59e9480770c2187b6e61037c2439895788a9a4d421d7859" +dependencies = [ + "base-encode", + "byteorder", + "getrandom", + "time", +] + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.66" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn-solidity" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb3d0961cd53c23ea94eeec56ba940f636f6394788976e9f16ca5ee0aca7464a" +dependencies = [ + "paste", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "syn-solidity" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c837dc8852cb7074e46b444afb81783140dab12c58867b49fb3898fbafedf7ea" +dependencies = [ + "paste", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "syn-solidity" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ab661c8148c2261222a4d641ad5477fd4bea79406a99056096a0b41b35617a5" +dependencies = [ + "paste", + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "sync_wrapper" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" + +[[package]] +name = "sync_wrapper" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" +dependencies = [ + "futures-core", +] + +[[package]] +name = "synstructure" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "system-configuration" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" +dependencies = [ + "bitflags 1.3.2", + "core-foundation", + "system-configuration-sys 0.5.0", +] + +[[package]] +name = "system-configuration" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" +dependencies = [ + "bitflags 2.5.0", + "core-foundation", + "system-configuration-sys 0.6.0", +] + +[[package]] +name = "system-configuration-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "system-configuration-sys" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "tabwriter" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a327282c4f64f6dc37e3bba4c2b6842cc3a992f204fa58d917696a89f691e5f6" +dependencies = [ + "unicode-width", +] + +[[package]] +name = "tagged" +version = "0.14.3" +source = "git+https://github.com/Moonsong-Labs/pathfinder?rev=9c19d9a37be8f447ec4548456c440ccbd0e44260#9c19d9a37be8f447ec4548456c440ccbd0e44260" +dependencies = [ + "fake", +] + +[[package]] +name = "tagged-debug-derive" +version = "0.14.3" +source = "git+https://github.com/Moonsong-Labs/pathfinder?rev=9c19d9a37be8f447ec4548456c440ccbd0e44260#9c19d9a37be8f447ec4548456c440ccbd0e44260" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "take_mut" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f764005d11ee5f36500a149ace24e00e3da98b0158b3e2d53a7495660d3f4d60" + +[[package]] +name = "tap" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" + +[[package]] +name = "tcp-stream" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "495b0abdce3dc1f8fd27240651c9e68890c14e9d9c61527b1ce44d8a5a7bd3d5" +dependencies = [ + "cfg-if", + "p12-keystore", + "rustls-connector", + "rustls-pemfile 2.1.2", +] + +[[package]] +name = "tempfile" +version = "3.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" +dependencies = [ + "cfg-if", + "fastrand 2.1.1", + "once_cell", + "rustix 0.38.37", + "windows-sys 0.59.0", +] + +[[package]] +name = "term" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c59df8ac95d96ff9bede18eb7300b0fda5e5d8d90960e76f8e14ae765eedbf1f" +dependencies = [ + "dirs-next", + "rustversion", + "winapi", +] + +[[package]] +name = "termtree" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76" + +[[package]] +name = "testcontainers" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2c9b71635ab25d4f789a86678d114a4f390467c8b93fd7feeaf7c443732a511" +dependencies = [ + "async-trait", + "bollard", + "bollard-stubs", + "bytes", + "dirs", + "docker_credential", + "either", + "futures", + "log", + "memchr", + "parse-display", + "reqwest 0.12.7", + "serde", + "serde_json", + "serde_with 3.10.0", + "thiserror", + "tokio", + "tokio-stream", + "tokio-util", + "url", +] + +[[package]] +name = "thiserror" +version = "1.0.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "thiserror-impl-no-std" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58e6318948b519ba6dc2b442a6d0b904ebfb8d411a3ad3e07843615a72249758" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "thiserror-no-std" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3ad459d94dd517257cc96add8a43190ee620011bb6e6cdc82dafd97dfafafea" +dependencies = [ + "thiserror-impl-no-std", +] + +[[package]] +name = "thread_local" +version = "1.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" +dependencies = [ + "cfg-if", + "once_cell", +] + +[[package]] +name = "threadpool" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa" +dependencies = [ + "num_cpus", +] + +[[package]] +name = "time" +version = "0.3.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" +dependencies = [ + "deranged", + "itoa", + "libc", + "num-conv", + "num_threads", + "powerfmt", + "serde", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" + +[[package]] +name = "time-macros" +version = "0.2.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" +dependencies = [ + "num-conv", + "time-core", +] + +[[package]] +name = "tiny-keccak" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" +dependencies = [ + "crunchy", +] + +[[package]] +name = "tinyvec" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "tokio" +version = "1.38.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba4f4a02a7a80d6f274636f0aa95c7e383b912d41fe721a31f29e29698585a4a" +dependencies = [ + "backtrace", + "bytes", + "libc", + "mio", + "num_cpus", + "parking_lot", + "pin-project-lite", + "signal-hook-registry", + "socket2 0.5.7", + "tokio-macros", + "windows-sys 0.48.0", +] + +[[package]] +name = "tokio-io-timeout" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf" +dependencies = [ + "pin-project-lite", + "tokio", +] + +[[package]] +name = "tokio-macros" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "tokio-native-tls" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" +dependencies = [ + "native-tls", + "tokio", +] + +[[package]] +name = "tokio-retry" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f57eb36ecbe0fc510036adff84824dd3c24bb781e21bfa67b69d556aa85214f" +dependencies = [ + "pin-project", + "rand", + "tokio", +] + +[[package]] +name = "tokio-rustls" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" +dependencies = [ + "rustls 0.21.12", + "tokio", +] + +[[package]] +name = "tokio-rustls" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f" +dependencies = [ + "rustls 0.22.4", + "rustls-pki-types", + "tokio", +] + +[[package]] +name = "tokio-rustls" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" +dependencies = [ + "rustls 0.23.10", + "rustls-pki-types", + "tokio", +] + +[[package]] +name = "tokio-stream" +version = "0.1.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af" +dependencies = [ + "futures-core", + "pin-project-lite", + "tokio", + "tokio-util", +] + +[[package]] +name = "tokio-test" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2468baabc3311435b55dd935f702f42cd1b8abb7e754fb7dfb16bd36aa88f9f7" +dependencies = [ + "async-stream", + "bytes", + "futures-core", + "tokio", + "tokio-stream", +] + +[[package]] +name = "tokio-tungstenite" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6989540ced10490aaf14e6bad2e3d33728a2813310a0c71d1574304c49631cd" +dependencies = [ + "futures-util", + "log", + "rustls 0.23.10", + "rustls-pki-types", + "tokio", + "tokio-rustls 0.26.0", + "tungstenite", + "webpki-roots 0.26.3", +] + +[[package]] +name = "tokio-util" +version = "0.7.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a" +dependencies = [ + "bytes", + "futures-core", + "futures-io", + "futures-sink", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "toml" +version = "0.8.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f49eb2ab21d2f26bd6db7bf383edc527a7ebaee412d17af4d40fdccd442f335" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit 0.22.14", +] + +[[package]] +name = "toml_datetime" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_edit" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" +dependencies = [ + "indexmap 2.6.0", + "toml_datetime", + "winnow 0.5.40", +] + +[[package]] +name = "toml_edit" +version = "0.22.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f21c7aaf97f1bd9ca9d4f9e73b0a6c74bd5afef56f2bc931943a6e1c37e04e38" +dependencies = [ + "indexmap 2.6.0", + "serde", + "serde_spanned", + "toml_datetime", + "winnow 0.6.13", +] + +[[package]] +name = "tonic" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d560933a0de61cf715926b9cac824d4c883c2c43142f787595e48280c40a1d0e" +dependencies = [ + "async-stream", + "async-trait", + "axum 0.6.20", + "base64 0.21.7", + "bytes", + "flate2", + "h2 0.3.26", + "http 0.2.12", + "http-body 0.4.6", + "hyper 0.14.29", + "hyper-timeout 0.4.1", + "percent-encoding", + "pin-project", + "prost 0.12.6", + "rustls 0.21.12", + "rustls-pemfile 1.0.4", + "tokio", + "tokio-rustls 0.24.1", + "tokio-stream", + "tower", + "tower-layer", + "tower-service", + "tracing", + "webpki-roots 0.25.4", +] + +[[package]] +name = "tonic" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6f6ba989e4b2c58ae83d862d3a3e27690b6e3ae630d0deb59f3697f32aa88ad" +dependencies = [ + "async-stream", + "async-trait", + "axum 0.7.5", + "base64 0.22.1", + "bytes", + "h2 0.4.5", + "http 1.1.0", + "http-body 1.0.0", + "http-body-util", + "hyper 1.4.1", + "hyper-timeout 0.5.1", + "hyper-util", + "percent-encoding", + "pin-project", + "prost 0.13.2", + "socket2 0.5.7", + "tokio", + "tokio-stream", + "tower", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "tower" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" +dependencies = [ + "futures-core", + "futures-util", + "indexmap 1.9.3", + "pin-project", + "pin-project-lite", + "rand", + "slab", + "tokio", + "tokio-util", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "tower-layer" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" + +[[package]] +name = "tower-service" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" + +[[package]] +name = "tracing" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +dependencies = [ + "log", + "pin-project-lite", + "tracing-attributes", + "tracing-core", +] + +[[package]] +name = "tracing-attributes" +version = "0.1.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "tracing-core" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +dependencies = [ + "once_cell", + "valuable", +] + +[[package]] +name = "tracing-error" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d686ec1c0f384b1277f097b2f279a2ecc11afe8c133c1aabf036a27cb4cd206e" +dependencies = [ + "tracing", + "tracing-subscriber", +] + +[[package]] +name = "tracing-log" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" +dependencies = [ + "log", + "once_cell", + "tracing-core", +] + +[[package]] +name = "tracing-opentelemetry" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5eabc56d23707ad55ba2a0750fc24767125d5a0f51993ba41ad2c441cc7b8dea" +dependencies = [ + "js-sys", + "once_cell", + "opentelemetry", + "opentelemetry_sdk", + "smallvec", + "tracing", + "tracing-core", + "tracing-log", + "tracing-subscriber", + "web-time", +] + +[[package]] +name = "tracing-subscriber" +version = "0.3.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +dependencies = [ + "matchers", + "nu-ansi-term", + "once_cell", + "regex", + "sharded-slab", + "smallvec", + "thread_local", + "tracing", + "tracing-core", + "tracing-log", +] + +[[package]] +name = "triomphe" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6631e42e10b40c0690bf92f404ebcfe6e1fdb480391d15f17cc8e96eeed5369" +dependencies = [ + "serde", + "stable_deref_trait", +] + +[[package]] +name = "trust-dns-proto" +version = "0.21.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c31f240f59877c3d4bb3b3ea0ec5a6a0cff07323580ff8c7a605cd7d08b255d" +dependencies = [ + "async-trait", + "cfg-if", + "data-encoding", + "enum-as-inner 0.4.0", + "futures-channel", + "futures-io", + "futures-util", + "idna 0.2.3", + "ipnet", + "lazy_static", + "log", + "rand", + "smallvec", + "thiserror", + "tinyvec", + "tokio", + "url", +] + +[[package]] +name = "trust-dns-resolver" +version = "0.21.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4ba72c2ea84515690c9fcef4c6c660bb9df3036ed1051686de84605b74fd558" +dependencies = [ + "cfg-if", + "futures-util", + "ipconfig", + "lazy_static", + "log", + "lru-cache", + "parking_lot", + "resolv-conf", + "smallvec", + "thiserror", + "tokio", + "trust-dns-proto", +] + +[[package]] +name = "try-lock" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" + +[[package]] +name = "tungstenite" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e2e2ce1e47ed2994fd43b04c8f618008d4cabdd5ee34027cf14f9d918edd9c8" +dependencies = [ + "byteorder", + "bytes", + "data-encoding", + "http 1.1.0", + "httparse", + "log", + "rand", + "rustls 0.23.10", + "rustls-pki-types", + "sha1", + "thiserror", + "utf-8", +] + +[[package]] +name = "typed-builder" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89851716b67b937e393b3daa8423e67ddfc4bbbf1654bcf05488e95e0828db0c" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "typenum" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" + +[[package]] +name = "ucd-trie" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" + +[[package]] +name = "uint" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76f64bba2c53b04fcab63c01a7d7427eadc821e3bc48c34dc9ba29c501164b52" +dependencies = [ + "byteorder", + "crunchy", + "hex", + "static_assertions", +] + +[[package]] +name = "unarray" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" + +[[package]] +name = "unescaper" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0adf6ad32eb5b3cadff915f7b770faaac8f7ff0476633aa29eb0d9584d889d34" +dependencies = [ + "thiserror", +] + +[[package]] +name = "unicase" +version = "2.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89" +dependencies = [ + "version_check", +] + +[[package]] +name = "unicode-bidi" +version = "0.3.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" + +[[package]] +name = "unicode-ident" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" + +[[package]] +name = "unicode-normalization" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "unicode-properties" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4259d9d4425d9f0661581b804cb85fe66a4c631cadd8f490d1c13a35d5d9291" + +[[package]] +name = "unicode-segmentation" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" + +[[package]] +name = "unicode-width" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" + +[[package]] +name = "unicode-xid" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" + +[[package]] +name = "unsafe-libyaml" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" + +[[package]] +name = "untrusted" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" + +[[package]] +name = "url" +version = "2.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" +dependencies = [ + "form_urlencoded", + "idna 0.5.0", + "percent-encoding", + "serde", +] + +[[package]] +name = "urlencoding" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" + +[[package]] +name = "utf-8" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" + +[[package]] +name = "utf8parse" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" + +[[package]] +name = "utils" +version = "0.1.0" +dependencies = [ + "base64 0.22.1", + "color-eyre", + "dotenv", + "httpmock", + "opentelemetry", + "opentelemetry-appender-tracing", + "opentelemetry-otlp", + "opentelemetry-semantic-conventions", + "opentelemetry-stdout", + "opentelemetry_sdk", + "reqwest 0.12.7", + "serde", + "serde_json", + "thiserror", + "tokio", + "tracing", + "tracing-core", + "tracing-opentelemetry", + "tracing-subscriber", + "url", +] + +[[package]] +name = "uuid" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" +dependencies = [ + "getrandom", + "serde", +] + +[[package]] +name = "uuid" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0" +dependencies = [ + "getrandom", + "serde", +] + +[[package]] +name = "valuable" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" + +[[package]] +name = "value-bag" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a84c137d37ab0142f0f2ddfe332651fdbf252e7b7dbb4e67b6c1f1b2e925101" + +[[package]] +name = "vcpkg" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" + +[[package]] +name = "vergen" +version = "8.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e27d6bdd219887a9eadd19e1c34f32e47fa332301184935c6d9bca26f3cca525" +dependencies = [ + "anyhow", + "cfg-if", + "rustversion", + "time", +] + +[[package]] +name = "version_check" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" + +[[package]] +name = "vsimd" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" + +[[package]] +name = "wait-timeout" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" +dependencies = [ + "libc", +] + +[[package]] +name = "waker-fn" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7" + +[[package]] +name = "walkdir" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "want" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" +dependencies = [ + "try-lock", +] + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "wasm-bindgen" +version = "0.2.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" +dependencies = [ + "cfg-if", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn 2.0.66", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.42" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.92" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" + +[[package]] +name = "wasm-streams" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e072d4e72f700fb3443d8fe94a39315df013eef1104903cdb0a2abd322bbecd" +dependencies = [ + "futures-util", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "web-sys" +version = "0.3.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "web-time" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "webpki-roots" +version = "0.25.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" + +[[package]] +name = "webpki-roots" +version = "0.26.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd7c23921eeb1713a4e851530e9b9756e4fb0e89978582942612524cf09f01cd" +dependencies = [ + "rustls-pki-types", +] + +[[package]] +name = "which" +version = "4.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" +dependencies = [ + "either", + "home", + "once_cell", + "rustix 0.38.37", +] + +[[package]] +name = "widestring" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7219d36b6eac893fa81e84ebe06485e7dcbb616177469b142df14f1f4deb1311" + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b" +dependencies = [ + "windows-sys 0.52.0", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows-core" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-registry" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" +dependencies = [ + "windows-result", + "windows-strings", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-result" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-strings" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" +dependencies = [ + "windows-result", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + +[[package]] +name = "winnow" +version = "0.5.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" +dependencies = [ + "memchr", +] + +[[package]] +name = "winnow" +version = "0.6.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59b5e5f6c299a3c7890b876a2a587f3115162487e704907d9b6cd29473052ba1" +dependencies = [ + "memchr", +] + +[[package]] +name = "winreg" +version = "0.50.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" +dependencies = [ + "cfg-if", + "windows-sys 0.48.0", +] + +[[package]] +name = "ws_stream_wasm" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7999f5f4217fe3818726b66257a4475f71e74ffd190776ad053fa159e50737f5" +dependencies = [ + "async_io_stream", + "futures", + "js-sys", + "log", + "pharos", + "rustc_version 0.4.0", + "send_wrapper", + "thiserror", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "wyz" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +dependencies = [ + "tap", +] + +[[package]] +name = "x509-cert" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1301e935010a701ae5f8655edc0ad17c44bad3ac5ce8c39185f75453b720ae94" +dependencies = [ + "const-oid", + "der 0.7.9", + "spki 0.7.3", +] + +[[package]] +name = "x509-parser" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcbc162f30700d6f3f82a24bf7cc62ffe7caea42c0b2cba8bf7f3ae50cf51f69" +dependencies = [ + "asn1-rs", + "data-encoding", + "der-parser", + "lazy_static", + "nom", + "oid-registry", + "rusticata-macros", + "thiserror", + "time", +] + +[[package]] +name = "xmlparser" +version = "0.13.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66fee0b777b0f5ac1c69bb06d361268faafa61cd4682ae064a171c16c433e9e4" + +[[package]] +name = "xshell" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6db0ab86eae739efd1b054a8d3d16041914030ac4e01cd1dca0cf252fd8b6437" +dependencies = [ + "xshell-macros", +] + +[[package]] +name = "xshell-macros" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d422e8e38ec76e2f06ee439ccc765e9c6a9638b9e7c9f2e8255e4d41e8bd852" + +[[package]] +name = "yansi" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" + +[[package]] +name = "zerocopy" +version = "0.7.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087" +dependencies = [ + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "zeroize" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" +dependencies = [ + "zeroize_derive", +] + +[[package]] +name = "zeroize_derive" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.66", +] + +[[package]] +name = "zip" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" +dependencies = [ + "aes", + "byteorder", + "bzip2", + "constant_time_eq", + "crc32fast", + "crossbeam-utils", + "flate2", + "hmac", + "pbkdf2 0.11.0", + "sha1", + "time", + "zstd", +] + +[[package]] +name = "zstd" +version = "0.11.2+zstd.1.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" +dependencies = [ + "zstd-safe", +] + +[[package]] +name = "zstd-safe" +version = "5.0.2+zstd.1.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" +dependencies = [ + "libc", + "zstd-sys", +] + +[[package]] +name = "zstd-sys" +version = "2.0.11+zstd.1.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75652c55c0b6f3e6f12eb786fe1bc960396bf05a1eb3bf1f3691c3610ac2e6d4" +dependencies = [ + "cc", + "pkg-config", +] diff --git a/old_orchestrator_files/Cargo.toml b/old_orchestrator_files/Cargo.toml new file mode 100644 index 000000000..ea9ac4f8a --- /dev/null +++ b/old_orchestrator_files/Cargo.toml @@ -0,0 +1,160 @@ +[workspace] +resolver = "2" +members = [ + "crates/orchestrator", + "crates/da-clients/da-client-interface", + "crates/da-clients/ethereum", + "crates/prover-clients/prover-client-interface", + "crates/prover-clients/gps-fact-checker", + "crates/prover-clients/sharp-service", + "crates/prover-clients/atlantic-service", + "crates/utils", + "crates/settlement-clients/settlement-client-interface", + "crates/settlement-clients/ethereum", + "crates/settlement-clients/starknet", + "e2e-tests", +] +exclude = ["madara-bootstrapper", "pathfinder", "madara"] + +[workspace.package] +version = "0.1.0" +edition = "2021" +authors = ["Apoorv Sadana <@apoorvsadana>"] + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[workspace.dependencies] +num = { version = "0.4.1" } +async-trait = { version = "0.1.77" } +alloy = { version = "0.2.1", features = [ + "full", + "node-bindings", + "rpc-types-debug", + "rpc-types-trace", + "json-rpc", + "rpc-client", +] } +alloy-primitives = { version = "0.7.7", default-features = false } +alloy-sol-types = "0.8.5" +aws-config = { version = "1.1.7", features = ["behavior-version-latest"] } +aws-sdk-s3 = { version = "1.38.0", features = ["behavior-version-latest"] } +aws-sdk-eventbridge = { version = "1.41.0", features = [ + "behavior-version-latest", +] } +aws-sdk-iam = "1.52.0" +aws-sdk-scheduler = "1.49.0" +aws-sdk-sns = { version = "1.40.0", features = ["behavior-version-latest"] } +aws-credential-types = { version = "1.2.1", features = [ + "hardcoded-credentials", +] } +assert_matches = "1.5.0" +aws-sdk-sqs = "1.36.0" +axum = { version = "0.7.4" } +axum-macros = "0.4.1" +bincode = "1.3.3" +bytes = "1.7.2" +color-eyre = "0.6.2" +chrono = "0.4.0" +c-kzg = "1.0.3" +dotenvy = "0.15.7" +futures = "0.3.30" +log = "0.4.21" +mongodb = { version = "2.8.1", features = ["bson-chrono-0_4"] } +omniqueue = { version = "0.2.0" } +reqwest = { version = "0.12.7", features = [ + "rustls-tls", + "native-tls", + "json", + "multipart", + "stream", +] } +rstest = "0.22.0" +base64 = "0.22.1" +serde = { version = "1.0.197", features = ["derive"] } +serde_json = "1.0.114" +starknet = "0.11.0" +tempfile = "3.12.0" +thiserror = "1.0.57" +tokio = { version = "1.37.0" } +tokio-stream = "0.1.15" +tokio-util = "0.7.11" +dotenv = "0.15.0" +starknet-core = "0.9.0" +url = { version = "2.5.0", features = ["serde"] } +uuid = { version = "1.7.0", features = ["v4", "serde"] } +httpmock = { version = "0.8.0-alpha.1", features = ["proxy", "remote"] } +num-bigint = { version = "0.4.5" } +num-traits = "0.2" +lazy_static = "1.4.0" +stark_evm_adapter = "0.1.1" +hex = "0.4" +itertools = "0.13.0" +clap = { version = "4.4", features = ["derive", "env"] } +mockall_double = "0.3.1" +hyper = { version = "0.14", features = ["full"] } +mockall = "0.13.0" +testcontainers = "0.18.0" +once_cell = "1.8" +appchain-core-contract-client = { git = "https://github.com/byteZorvin/zaun", branch = "type-update" } +crypto-bigint = { version = "0.5.5" } +env_logger = "0.11.5" +strum_macros = "0.26.4" +strum = "0.26.3" +async-std = { version = "1.13.0", features = ["attributes"] } + + +# Instrumentation +opentelemetry = { version = "0.25.0", features = ["metrics", "logs"] } +opentelemetry_sdk = { version = "0.25.0", features = ["rt-tokio", "logs"] } +opentelemetry-stdout = { version = "0.25.0" } +opentelemetry-otlp = { version = "0.25.0", features = [ + "tonic", + "metrics", + "logs", +] } +opentelemetry-semantic-conventions = { version = "0.25.0" } +opentelemetry-appender-tracing = { version = "0.25.0", default-features = false } +tracing = { version = "0.1.40", default-features = false } +tracing-core = { version = "0.1.32", default-features = false } +tracing-subscriber = { version = "0.3.18", features = [ + "env-filter", + "registry", + "std", +] } +tracing-opentelemetry = "0.26.0" + +# Cairo VM +cairo-vm = { git = "https://github.com/Moonsong-Labs/cairo-vm", branch = "notlesh/snos-2024-11-04", features = [ + "cairo-1-hints", + "extensive_hints", + "mod_builtin", +] } + + +# Snos & Sharp (Starkware) +# TODO: need to update this once the updated PR merges +starknet-os = { git = "https://github.com/keep-starknet-strange/snos", branch = "tmp/snos_devnet_zero_txs" } +prove_block = { git = "https://github.com/keep-starknet-strange/snos", branch = "tmp/snos_devnet_zero_txs" } + +# Madara prover API +madara-prover-common = { git = "https://github.com/Moonsong-Labs/madara-prover-api", branch = "od/use-latest-cairo-vm" } +madara-prover-rpc-client = { git = "https://github.com/Moonsong-Labs/madara-prover-api", branch = "od/use-latest-cairo-vm" } + +# Majin Blob +majin-blob-core = { git = "https://github.com/AbdelStark/majin-blob", branch = "main" } +majin-blob-types = { git = "https://github.com/AbdelStark/majin-blob", branch = "main" } + +# Project +da-client-interface = { path = "crates/da-clients/da-client-interface" } +ethereum-da-client = { path = "crates/da-clients/ethereum" } + +settlement-client-interface = { path = "crates/settlement-clients/settlement-client-interface" } +ethereum-settlement-client = { path = "crates/settlement-clients/ethereum" } +starknet-settlement-client = { path = "crates/settlement-clients/starknet" } + +utils = { path = "crates/utils" } +prover-client-interface = { path = "crates/prover-clients/prover-client-interface" } +gps-fact-checker = { path = "crates/prover-clients/gps-fact-checker" } +sharp-service = { path = "crates/prover-clients/sharp-service" } +atlantic-service = { path = "crates/prover-clients/atlantic-service" } +orchestrator = { path = "crates/orchestrator" } diff --git a/old_orchestrator_files/Dockerfile b/old_orchestrator_files/Dockerfile new file mode 100644 index 000000000..e428b3d7d --- /dev/null +++ b/old_orchestrator_files/Dockerfile @@ -0,0 +1,92 @@ +FROM rust:1.81 AS builder + +# Set the working directory in the container +WORKDIR /usr/src/madara-orchestrator + +# Install system dependencies +RUN apt update && apt install -y \ + libgmp3-dev \ + software-properties-common \ + wget \ + bash \ + nodejs \ + npm + +# Install Python 3.9 +RUN wget https://www.python.org/ftp/python/3.9.16/Python-3.9.16.tgz \ + && tar xzf Python-3.9.16.tgz \ + && cd Python-3.9.16 \ + && ./configure --enable-optimizations \ + && make altinstall \ + && cd .. \ + && rm -rf Python-3.9.16 Python-3.9.16.tgz + +# Install pip and venv for Python 3.9 +RUN wget https://bootstrap.pypa.io/get-pip.py \ + && python3.9 get-pip.py \ + && rm get-pip.py \ + && python3.9 -m pip install virtualenv + +# Copy the current directory contents into the container +COPY . . + + +# Check rust version (this also installs version from rust-toolchain file) +RUN rustup show + +# ############################################################# +# TODO : remove this step after snos build is sorted +# Build cairo lang +RUN cargo fetch +RUN python3.9 -m venv orchestrator_venv +RUN . ./orchestrator_venv/bin/activate +RUN pip install cairo-lang==0.13.2 "sympy<1.13.0" +RUN mkdir -p build +RUN git submodule update --init --recursive +RUN cd cairo-lang +RUN cd .. +RUN cairo-compile cairo-lang/src/starkware/starknet/core/os/os.cairo --output build/os_latest.json --cairo_path cairo-lang/src +# ############################################################# + +WORKDIR /usr/src/madara-orchestrator + +# Build the project +RUN cargo build --release + +# Install Node.js dependencies for migrations +RUN npm install + + +FROM debian:bookworm + +# Install runtime dependencies +RUN apt-get -y update && \ + apt-get install -y openssl ca-certificates nodejs npm &&\ + apt-get autoremove -y; \ + apt-get clean; \ + rm -rf /var/lib/apt/lists/* + +# Set the working directory +WORKDIR /usr/local/bin + +# Copy the compiled binary from the builder stage +COPY --from=builder /usr/src/madara-orchestrator/target/release/orchestrator . + +# Copy Node.js files and dependencies +COPY --from=builder /usr/src/madara-orchestrator/node_modules ./node_modules +COPY --from=builder /usr/src/madara-orchestrator/package.json . +COPY --from=builder /usr/src/madara-orchestrator/migrate-mongo-config.js . +COPY --from=builder /usr/src/madara-orchestrator/migrations ./migrations + +# To be fixed by this https://github.com/keep-starknet-strange/snos/issues/404 +RUN mkdir -p /usr/local/cargo/git/checkouts/snos-59fe8329bb16fe65/662d170/crates/starknet-os/kzg +COPY ./crates/da-clients/ethereum/trusted_setup.txt /usr/local/cargo/git/checkouts/snos-59fe8329bb16fe65/662d170/crates/starknet-os/kzg/trusted_setup.txt +COPY ./crates/da-clients/ethereum/trusted_setup.txt /usr/src/madara-orchestrator/crates/settlement-clients/ethereum/src/trusted_setup.txt + +# Create a startup script +RUN echo '#!/bin/bash\n\ + npm run migrate up\n\ + ./orchestrator' > start.sh && chmod +x start.sh + +# Set the entrypoint to the startup script +ENTRYPOINT ["./start.sh"] \ No newline at end of file diff --git a/old_orchestrator_files/LICENSE b/old_orchestrator_files/LICENSE new file mode 100644 index 000000000..9c585f28c --- /dev/null +++ b/old_orchestrator_files/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2024 Karnot + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/old_orchestrator_files/Makefile b/old_orchestrator_files/Makefile new file mode 100644 index 000000000..ae3baecf3 --- /dev/null +++ b/old_orchestrator_files/Makefile @@ -0,0 +1,210 @@ +# Orchestrator +ORCHESTRATOR_PATH := $(shell pwd) + +# Bootstrapper +OPERATOR_ADDRESS := 0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266 +BOOTSTRAP_OUTPUT_PATH := $(shell pwd)/build/bootstrap.json +BOOTSTRAP_INPUT_PATH := $(shell pwd)/bootstrap_input.json +BOOTSTRAPPER_COMMIT := f717bf179581da53d68fee03b50ef78e0628ee20 +BOOTSTRAPPER_PATH := $(shell pwd)/madara-bootstrapper +VERIFIER_ADDRESS := 0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512 + +# SNOS +CAIRO_LANG_COMMIT := a86e92bfde9c171c0856d7b46580c66e004922f3 + +# Madara +MADARA_PATH := $(shell pwd)/madara +MADARA_COMMIT := 93d57632e7a56707d74ab63eb0ca8558df9f0d8e +MADARA_DATA_PATH := $(shell pwd)/build/madara + +# Pathfinder +PATHFINDER_COMMIT := 138140e5fd967ede92806fd62de47c2e6b65712a +PATHFINDER_DATA_PATH := $(shell pwd)/build/pathfinder +PATHFINDER_PATH := $(shell pwd)/pathfinder +ETHEREUM_WSS_RPC_URL := wss://eth-sepolia.g.alchemy.com/v2/${ETHEREUM_API_KEY} + +# Environment file +ENV_FILE := $(shell pwd)/.makefile.json +PID_FILE := $(shell pwd)/.pids.json +JSON_UPDATER := $(shell pwd)/scripts/save_json.sh + +.PHONY: all anvil madara core-contract update-madara eth-bridge pathfinder orchestrator cleanup + +# JSON update functions + +define save_pid + ./scripts/save_pid.sh $1 $2 +endef + +define get_pid + ./scripts/get_pid.sh $1 +endef + +define kill_pid + ./scripts/kill_pid.sh $1 +endef + +# function to update JSON +# Usage: $(call update-json-safe,,,) +define update-json-safe + $(JSON_UPDATER) $(1) $(2) $(3) +endef + +setup: + @echo "Starting setup process..." + @make cleanup + @trap 'make cleanup' EXIT INT TERM + + @make core-contract + @echo "Core contract setup completed." + + @echo "Starting Madara in bootstrap mode..." + @make madara-bootstrap-mode & $(call save_pid,madara,$$!) + @echo "Waiting for Madara to start..." + @while ! curl -s -o /dev/null -w '%{http_code}' http://localhost:9944/health | grep -q '200'; do sleep 1; done + @echo "Madara started in background (PID: $$($(call get_pid,madara)))" + + @make udc + @echo "UDC deployed on chain." + + @echo "Starting ETH Bridge setup..." + @make eth-bridge + + # we need to sleep for a little as it's possible the block hasn't been sealed yet + @sleep 20 + + @echo "Terminating previous Madara instance..." + $(call kill_pid,madara) + + @echo "Starting updated Madara..." + @make madara & $(call save_pid,madara,$$!) + @echo "Waiting for Madara to start..." + @while ! curl -s -o /dev/null -w '%{http_code}' http://localhost:9944/health | grep -q '200'; do sleep 1; done + @echo "Updated Madara started in background (PID: $$($(call get_pid,madara)))" + + @echo "Starting Pathfinder..." + @make pathfinder & $(call save_pid,pathfinder,$$!) + @echo "Waiting for Pathfinder to start..." + @while ! curl -s -o /dev/null -w '%{http_code}' http://localhost:9545 | grep -q '200'; do sleep 1; done + @echo "Pathfinder started in background (PID: $$($(call get_pid,pathfinder)))" + + @echo "Setting up Madara orchestrator" + @make orchestrator-setup + @echo "Madara orchestrator setup completed." + + @echo "Adding indexes to MongoDB" + @make mongo-migrations + @echo "Indexes added to MongoDB" + + @echo "Building Starknet OS" + @if [ ! -f build/os_latest.json ]; then \ + make snos; \ + fi + @echo "Starknet OS built" + + @make cleanup + + +anvil: + anvil --block-time 1 + +define update_core_contract_address + echo "Updating core contract address in YAML..." + if [ -f "$(ENV_FILE)" ]; then \ + export CORE_CONTRACT_ADDRESS=$$(jq -r '.core_contract_address' $(BOOTSTRAP_INPUT_PATH)) && \ + if [ -n "$$CORE_CONTRACT_ADDRESS" ]; then \ + yq e '.eth_core_contract_address = strenv(CORE_CONTRACT_ADDRESS)' -i $(MADARA_PATH)/configs/presets/devnet.yaml; \ + echo "Core contract address updated in YAML."; \ + else \ + echo "Error: CORE_CONTRACT_ADDRESS not found in $(ENV_FILE)"; \ + exit 1; \ + fi; \ + else \ + echo "Error: $(ENV_FILE) not found"; \ + exit 1; \ + fi +endef + +madara-bootstrap-mode: + cd $(MADARA_PATH) && \ + git checkout $(MADARA_COMMIT) && \ + rm -rf $(MADARA_DATA_PATH) && \ + cargo run --release -- --name madara --base-path $(MADARA_DATA_PATH) --rpc-port 9944 --rpc-cors "*" --rpc-external --sequencer --chain-config-path configs/presets/devnet.yaml --feeder-gateway-enable --gateway-enable --gateway-external --gas-price 0 --blob-gas-price 0 --rpc-methods unsafe --no-l1-sync + +core-contract: + $(call update-json-safe,$(BOOTSTRAP_INPUT_PATH),operator_address,$(OPERATOR_ADDRESS)) && \ + $(call update-json-safe,$(BOOTSTRAP_INPUT_PATH),verifier_address,$(VERIFIER_ADDRESS)) && \ + echo "values with which we are updating the bootstrapper input file" && \ + cd $(BOOTSTRAPPER_PATH) && \ + rm -f $(BOOTSTRAP_OUTPUT_PATH) && \ + git checkout $(BOOTSTRAPPER_COMMIT) && \ + RUST_LOG=debug cargo run --release -- --mode setup-l1 --config $(BOOTSTRAP_INPUT_PATH) --output-file $(BOOTSTRAP_OUTPUT_PATH) && \ + $(call update-json-safe,$(BOOTSTRAP_INPUT_PATH),core_contract_address,$$(jq -r .starknet_contract_address $(BOOTSTRAP_OUTPUT_PATH))) && \ + $(call update-json-safe,$(BOOTSTRAP_INPUT_PATH),core_contract_implementation_address,$$(jq -r .starknet_contract_implementation_address $(BOOTSTRAP_OUTPUT_PATH))) + + +madara: + $(call update_core_contract_address) && \ + cd $(MADARA_PATH) && \ + git checkout $(MADARA_COMMIT) && \ + cargo run --release -- --name madara --base-path $(MADARA_DATA_PATH) --rpc-port 9944 --rpc-cors "*" --rpc-external --sequencer --chain-config-path configs/presets/devnet.yaml --feeder-gateway-enable --gateway-enable --gateway-external --gas-price 2 --blob-gas-price 2 --strk-gas-price 2 --strk-blob-gas-price 2 --rpc-methods unsafe --l1-endpoint http://0.0.0.0:8545 + +eth-bridge: + cd $(BOOTSTRAPPER_PATH) && \ + git checkout $(BOOTSTRAPPER_COMMIT) && \ + RUST_LOG=debug cargo run --release -- --mode eth-bridge --config $(BOOTSTRAP_INPUT_PATH) --output-file $(BOOTSTRAP_OUTPUT_PATH) && \ + $(call update-json-safe,$(ENV_FILE),L1_BRIDGE_ADDRESS,$$(jq -r .eth_bridge_setup_outputs.l1_bridge_address $(BOOTSTRAP_OUTPUT_PATH))) && \ + $(call update-json-safe,$(ENV_FILE),L2_ETH_TOKEN_ADDRESS,$$(jq -r .eth_bridge_setup_outputs.l2_eth_proxy_address $(BOOTSTRAP_OUTPUT_PATH))) && \ + $(call update-json-safe,$(ENV_FILE),L2_ETH_BRIDGE_ADDRESS,$$(jq -r .eth_bridge_setup_outputs.l2_eth_bridge_proxy_address $(BOOTSTRAP_OUTPUT_PATH))) + +udc: + cd $(BOOTSTRAPPER_PATH) && \ + git checkout $(BOOTSTRAPPER_COMMIT) && \ + RUST_LOG=debug cargo run --release -- --mode udc --config $(BOOTSTRAP_INPUT_PATH) + +pathfinder: + cd $(PATHFINDER_PATH) && \ + git checkout $(PATHFINDER_COMMIT) && \ + rm -rf $(PATHFINDER_DATA_PATH) && \ + cargo run --release --bin pathfinder -- --ethereum.url $(ETHEREUM_WSS_RPC_URL) --chain-id MADARA_DEVNET --feeder-gateway-url http://localhost:8080/feeder_gateway --gateway-url http://localhost:8080/gateway --network custom --storage.state-tries archive --data-directory $(PATHFINDER_DATA_PATH) + +mongo-migrations: + cd $(ORCHESTRATOR_PATH) && \ + npm i && \ + npm run migrate up + +orchestrator-setup: + cd $(ORCHESTRATOR_PATH) && \ + npm i && \ + export L1_BRIDGE_ADDRESS=$$(jq -r '.L1_BRIDGE_ADDRESS' $(ENV_FILE)) && \ + export CORE_CONTRACT_ADDRESS=$$(jq -r '.core_contract_address' $(BOOTSTRAP_INPUT_PATH)) && \ + export L2_ETH_TOKEN_ADDRESS=$$(jq -r '.L2_ETH_TOKEN_ADDRESS' $(ENV_FILE)) && \ + export L2_ETH_BRIDGE_ADDRESS=$$(jq -r '.L2_ETH_BRIDGE_ADDRESS' $(ENV_FILE)) && \ + node scripts/init_state.js $$L1_BRIDGE_ADDRESS $$CORE_CONTRACT_ADDRESS $$L2_ETH_TOKEN_ADDRESS $$L2_ETH_BRIDGE_ADDRESS + +orchestrator: + @echo "Please update core contract" + cd $(ORCHESTRATOR_PATH) && \ + cargo run --release --bin orchestrator + +snos: + python3.9 -m venv orchestrator_venv && \ + . ./orchestrator_venv/bin/activate && \ + pip install cairo-lang==0.13.2 "sympy<1.13.0" && \ + mkdir -p build && \ + git submodule update --init --recursive && \ + cd cairo-lang && \ + git checkout $(CAIRO_LANG_COMMIT) && \ + cd .. && \ + cairo-compile cairo-lang/src/starkware/starknet/core/os/os.cairo --output build/os_latest.json --cairo_path cairo-lang/src + +cleanup: + @echo "Cleaning up processes..." + @if [ -f "$(PID_FILE)" ]; then \ + for pid in $$(jq -r 'values[]' "$(PID_FILE)"); do \ + kill $$pid 2>/dev/null || true; \ + done; \ + rm -f "$(PID_FILE)"; \ + fi + @rm -f $(ENV_FILE) + @echo "Cleanup completed." diff --git a/old_orchestrator_files/README.md b/old_orchestrator_files/README.md new file mode 100644 index 000000000..ddc2e4298 --- /dev/null +++ b/old_orchestrator_files/README.md @@ -0,0 +1,520 @@ +# Madara Orchestrator šŸŽ­ + +The Madara orchestrator is designed to be an additional service which runs in +parallel to Madara and handles various critical jobs that ensure proper block +processing, proof generation, data submission and state transitions. + +> šŸ“ **Note**: These instructions are verified for Ubuntu systems with AMD64 architecture. While most steps remain similar +> for macOS, some package names and installation commands may differ. + +## Table of Contents + +- [Overview](#-overview) +- [Architecture](#ļø-architecture) + - [Job Processing Model](#job-processing-model) + - [Queue Structure](#queue-structure) + - [Workflow](#workflow) +- [Technical Requirements](#ļø-technical-requirements) + - [System Dependencies](#system-dependencies) + - [Core Dependencies](#core-dependencies) +- [Installation & Setup](#-installation--setup) + - [Building from Source](#building-from-source) + - [Local Development Setup](#local-development-setup) + - [Setup Mode](#setup-mode) + - [Run Mode](#run-mode) + - [Command Line Options](#command-line-options) +- [Configuration](#ļø-configuration) + - [AWS Configuration](#aws-configuration) + - [Prover Configuration](#prover-configuration) + - [Database Configuration](#database-configuration) +- [Testing](#-testing) + - [Local Environment Setup](#local-environment-setup) + - [Types of Tests](#types-of-tests) + - [Running Tests](#running-tests) +- [Monitoring](#-monitoring) +- [Error Handling](#-error-handling) +- [Additional Resources](#additional-resources) + +## šŸ“‹ Overview + +The Madara Orchestrator coordinates and triggers five primary jobs in sequence, +managing their execution through a centralized queue system, allowing +for multiple orchestrators to run together! + +1. **SNOS (Starknet OS) Job** šŸ”„ + + - Identifies blocks that need processing. + - Triggers SNOS run on identified blocks. + - Tracks SNOS execution status and PIE (Program Independent Execution) generation + +2. **Proving Job** āœ… + + - Coordinates proof generation by submitting PIE to proving services + - Tracks proof generation progress and completion + +3. **Data Submission Job** šŸ“¤ + + - Manages state update data preparation for availability layers + - If needed, coordinates blob submission to data availability layers + - Currently integrates with Ethereum (EIP-4844 blob transactions) + - Additional DA layer integrations in development (e.g., Celestia) + +4. **State Transition Job** šŸ”„ + - Coordinates state transitions with settlement layers + - Manages proof and state update submissions + - Handles integration with Ethereum and Starknet settlement layers + +Each job is managed through a queue-based system where the orchestrator: + +- Determines when and which blocks need processing +- Triggers the appropriate services +- Monitors job progress +- Manages job dependencies and sequencing +- Handles retries and failure cases + +## šŸ›ļø Architecture + +### Job Processing Model + +The orchestrator implements a queue-based architecture where each job type +follows a three-phase execution model: + +1. **Creation**: Jobs are spawned based on block availability +2. **Processing**: Core job logic execution +3. **Verification**: Result validation and confirmation + +### Queue Structure + +The system uses dedicated queues for managing different job phases: + +- Worker Trigger Queue +- SNOS Processing/Verification Queues +- Proving Processing/Verification Queues +- Data Submission Processing/Verification Queues +- State Update Processing/Verification Queues +- Job Failure Handling Queue + +### Workflow + +1. Cron jobs trigger worker tasks via the worker-trigger queue +2. Workers determine block-level job requirements +3. Jobs are created and added to processing queues +4. Processed jobs move to verification queues +5. Verified jobs are marked as complete in the database + +## šŸ› ļø Technical Requirements + +### System Dependencies + +> For macOS users, use `brew install` instead of `apt install` for these dependencies. + +- Build essentials (`build-essential`) +- OpenSSL (`libssl-dev`) +- Package config (`pkg-config`) +- Python 3.9 with development files +- GMP library (`libgmp-dev`) + +### Core Dependencies + +- [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) +- [Rust](https://www.rust-lang.org/tools/install) +- [Madara Node](https://github.com/madara-alliance/madara) + - Required for block processing + - Follow setup instructions at [Madara Documentation](https://github.com/madara-alliance/madara) +- Prover Service (ATLANTIC) +- MongoDB for job management +- AWS services (or Localstack for local development): + - SQS for queues + - S3 for data storage + - SNS for alerts + - EventBridge for scheduling + +> šŸšØ **Important Note**: SNOS requires the `get_storage_proof` RPC endpoint to function. +> Currently, this endpoint is not implemented in Madara. +> +> šŸš§ Until madara implements the `get_storage_proof` endpoint, you need to run Pathfinder alongside Madara: +> +> - Madara will run in sequencer mode +> - Pathfinder will sync with Madara +> - The orchestrator will use Pathfinder's RPC URL for SNOS and state update fetching +> +> This setup is temporary until either: +> +> 1. SNOS is adapted to work without the `get_storage_proof` endpoint, or +> 2. The `get_storage_proof` endpoint is implemented in Madara + +## šŸš€ Installation & Setup + +### Building from Source + +1. **Install System Dependencies** + + ```bash + # Ubuntu/Debian + sudo apt-get update + sudo apt install build-essential openssl pkg-config libssl-dev + sudo apt install python3.9 python3.9-venv python3.9-distutils libgmp-dev python3.9-dev + + # For macOS + brew install openssl pkg-config gmp python@3.9 + ``` + + > šŸšØ **Note**: python 3.9 is required for the `SNOS` to create `os_latest.json` hence the `python3.9` in the above command. + +2. **Install Rust** (Cross-platform) + + ```bash + curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh + source ~/.bashrc # Or source ~/.zshrc for macOS + ``` + +3. **Clone Repository** + + ```bash + git clone https://github.com/madara-alliance/madara-orchestrator.git + cd madara-orchestrator + git submodule update --init + ``` + +4. **Build SNOS** + + ```bash + make snos + ``` + + > šŸšØ **Note**: python 3.9 is required for the `SNOS` to create `os_latest.json` + +5. **Build Project** + + ```bash + cargo build --release + ``` + +### Local Development Setup + +1. **Install Docker** (Cross-platform) + Follow the official installation guides: + + - [Ubuntu Installation Guide](https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository) + - [macOS Installation Guide](https://docs.docker.com/desktop/install/mac-install/) + +2. **Install Foundry** (Cross-platform) + + ```bash + curl -L https://foundry.paradigm.xyz | bash + foundryup + ``` + +3. **Start Local Services** + + ```bash + # Start MongoDB + docker run -d -p 27017:27017 mongo + + # Start Localstack + docker run -d -p 4566:4566 localstack/localstack@sha256:763947722c6c8d33d5fbf7e8d52b4bddec5be35274a0998fdc6176d733375314 + + # Start Anvil in a separate terminal + anvil --block-time 1 + ``` + +4. **Setup Mock Proving Service** + + šŸš§ This setup is for development purposes only: + + ```bash + # Start the mock prover service using Docker + docker run -d -p 6000:6000 ocdbytes/mock-prover:latest + + # Set the mock prover URL in your .env + MADARA_ORCHESTRATOR_SHARP_URL=http://localhost:6000 + ``` + +5. **Run Pathfinder** (Choose one method) + + > šŸšØ **Important Note**: + > + > - Pathfinder requires a WebSocket Ethereum endpoint (`ethereum.url`). Since Anvil doesn't support WebSocket yet, + > you'll need to provide a different Ethereum endpoint (e.g., Alchemy, Infura). This is okay for local development + > as Pathfinder only uses this to get the state update from core contract. + > - Make sure `chain-id` matches your Madara chain ID (default: `MADARA_DEVNET`) + > - The `gateway-url` and `feeder-gateway-url` should point to your local Madara node (default: `http://localhost:8080`) + + a. **From Source** (Recommended for development) + + ```bash + # Clone the repository + git clone https://github.com/eqlabs/pathfinder.git + cd pathfinder + + # Run pathfinder + cargo run --bin pathfinder -- \ + --network custom \ + --chain-id MADARA_DEVNET \ + --ethereum.url wss://eth-sepolia.g.alchemy.com/v2/xxx \ # Replace with your Ethereum endpoint + --gateway-url http://localhost:8080/gateway \ + --feeder-gateway-url http://localhost:8080/feeder_gateway \ + --storage.state-tries archive \ + --data-directory ~/Desktop/pathfinder_db/ \ + --http-rpc 127.0.0.1:9545 + ``` + + b. **Using Docker** + + ```bash + # Create data directory + mkdir -p ~/pathfinder_data + + # Run pathfinder container + docker run \ + --name pathfinder \ + --restart unless-stopped \ + -p 9545:9545 \ + --user "$(id -u):$(id -g)" \ + -e RUST_LOG=info \ + -v ~/pathfinder_data:/usr/share/pathfinder/data \ + eqlabs/pathfinder \ + --network custom \ + --chain-id MADARA_DEVNET \ + --ethereum.url wss://eth-sepolia.g.alchemy.com/v2/xxx \ # Replace with your Ethereum endpoint + --gateway-url http://localhost:8080/gateway \ + --feeder-gateway-url http://localhost:8080/feeder_gateway \ + --storage.state-tries archive + ``` + +6. **Deploy Mock Verifier Contract** + + šŸš§ For development purposes, you can deploy the mock verifier contract using: + + ```bash + ./scripts/dummy_contract_deployment.sh http://localhost:9944 0 + ``` + + This script: + + - Takes the Madara endpoint and block number as parameters + - Automatically deploys both the verifier contract and core contract + - Sets up the necessary contract relationships + - The deployed contract addresses will be output to the console + + ```bash + MADARA_ORCHESTRATOR_L1_CORE_CONTRACT_ADDRESS= + MADARA_ORCHESTRATOR_VERIFIER_ADDRESS= + ``` + +šŸš§ Note: The mock services are intended for development and testing purposes only. +In production, you'll need to use actual proving services and verifier contracts. + +### Setup Mode + +Setup mode configures the required AWS services and dependencies. +Use the following command: + +```bash +cargo run --release --bin orchestrator setup --aws --aws-s3 --aws-sqs --aws-sns --aws-event-bridge --event-bridge-type rule +``` + +> šŸšØ **Note**: +> +> - Setup mode is currently in development. A fresh setup is required +> if the process fails mid-way. +> - The `event-bridge-type` needs to be `rule` in case of localstack. +> - The `event-bridge-type` should be `schedule` in case of AWS. + +### Run Mode + +Run mode executes the orchestrator's job processing workflow. Example command: + +```bash +RUST_LOG=info cargo run --release --bin orchestrator run \ + --sharp \ + --aws \ + --settle-on-ethereum \ + --aws-s3 \ + --aws-sqs \ + --aws-sns \ + --da-on-ethereum \ + --mongodb +``` + +### Command Line Options + +1. **Prover Services** (choose one): + + - `--atlantic`: Use Atlantic prover + - `--sharp`: Use SHARP prover + +2. **Settlement Layer** (choose one): + + - `--settle-on-ethereum`: Use Ethereum + - `--settle-on-starknet`: Use Starknet + +3. **Data Availability**: + + - `--da-on-ethereum`: Use Ethereum + +4. **Infrastructure**: + + - `--aws`: Use AWS services (or Localstack) + +5. **Data Storage**: + + - `--aws-s3`: Store state updates and program outputs + +6. **Database**: + + - `--mongodb`: Store job information + +7. **Queue System**: + + - `--aws-sqs`: Message queue service + +8. **Alerting**: + + - `--aws-sns`: Notification service + +9. **Event Bridge Scheduling**: + + - `--aws-event-bridge`: Enable AWS Event Bridge + - `--event-bridge-type`: Specify the type of Event Bridge (rule or schedule) + +10. **Monitoring**: + - `--otel-service-name`: OpenTelemetry service name + - `--otel-collector-endpoint`: OpenTelemetry collector endpoint + +## āš™ļø Configuration + +The orchestrator uses environment variables for configuration. +Create a `.env` file with the following sections: + +### AWS Configuration + +```env +AWS_ACCESS_KEY_ID= +AWS_SECRET_ACCESS_KEY= +AWS_REGION= +``` + +Note: These configurations are also picked up from your AWS credentials file (~/.aws/credentials) +or environment variables if not specified in the .env file. + +### Prover Configuration + +```env +# SHARP Configuration +MADARA_ORCHESTRATOR_SHARP_CUSTOMER_ID= +MADARA_ORCHESTRATOR_SHARP_URL= +# or +# ATLANTIC Configuration +MADARA_ORCHESTRATOR_ATLANTIC_API_KEY= +MADARA_ORCHESTRATOR_ATLANTIC_SERVICE_URL= +``` + +### Database Configuration + +```env +MADARA_ORCHESTRATOR_MONGODB_CONNECTION_URL=mongodb://localhost:27017 +MADARA_ORCHESTRATOR_DATABASE_NAME=orchestrator +``` + +For a complete list of configuration options, refer to the `.env.example` file +in the repository. + +## šŸ” Monitoring + +The orchestrator includes a telemetry system that tracks: + +- Job execution metrics +- Processing time statistics +- RPC performance metrics + +OpenTelemetry integration is available for detailed monitoring. +It requires a `Otel-collector` url to be able to send metrics/logs/traces. + +## šŸ› Error Handling + +- Failed jobs are moved to a dedicated failure handling queue +- Automatic retry mechanism with configurable intervals +- Failed jobs are tracked in the database for manual inspection after maximum retries +- Integrated telemetry system for monitoring job failures + +## šŸ““ Testing + +### Local Environment Setup + +šŸš§ This setup is for development purposes. For production deployment, please refer to our deployment documentation. + +Before running tests, ensure you have: + +1. **Required Services Running**: + + - MongoDB on port 27017 + - Localstack on port 4566 + - Anvil (local Ethereum node) + +2. **Environment Configuration**: + + ```bash + export MADARA_ORCHESTRATOR_ETHEREUM_SETTLEMENT_RPC_URL= + export MADARA_ORCHESTRATOR_RPC_FOR_SNOS= + export AWS_REGION=us-east-1 + ``` + +### Types of Tests + +1. **E2E Tests** šŸ”„ + + šŸš§ Development test environment: + + - End-to-end workflow testing + - Tests orchestrator functionality on block 66645 of Starknet + - Uses mocked proving endpoints + +2. **Integration & Unit Tests** šŸ”Œ + - Tests component interactions + - Verifies individual functionalities + +### Running Tests + +#### Running E2E Tests + +```bash +RUST_LOG=info cargo test --features testing test_orchestrator_workflow -- --nocapture +``` + +#### Running Integration and Unit Tests + +```bash +RUST_LOG=debug RUST_BACKTRACE=1 cargo llvm-cov nextest \ + --release \ + --features testing \ + --lcov \ + --output-path lcov.info \ + --test-threads=1 \ + --workspace \ + --exclude=e2e-tests \ + --no-fail-fast +``` + +This command: + +- Generates detailed coverage reports in LCOV format +- Excludes E2E tests from coverage analysis +- Runs tests sequentially (single thread) +- Continues testing even if failures occur +- Enables debug logging and full backtraces for better error + diagnosis + +The coverage report (`lcov.info`) can be used with various code coverage +visualization tools. + +## šŸ““ More Information + +- Read the architecture present at `./docs/orchestrator_da_sequencer_diagram.png` + +## Additional Resources + +- Architecture Diagram: See `./docs/orchestrator_da_sequencer_diagram.png` +- [Madara Documentation](https://github.com/madara-alliance/madara) +- [LocalStack Documentation](https://docs.localstack.cloud/) +- [Foundry Documentation](https://book.getfoundry.sh/) diff --git a/old_orchestrator_files/rust-toolchain.toml b/old_orchestrator_files/rust-toolchain.toml new file mode 100644 index 000000000..97a02db25 --- /dev/null +++ b/old_orchestrator_files/rust-toolchain.toml @@ -0,0 +1,4 @@ +[toolchain] +channel = "nightly-2024-09-05" +components = ["rustfmt", "clippy"] +targets = ["wasm32-unknown-unknown"] diff --git a/old_orchestrator_files/rustfmt.toml b/old_orchestrator_files/rustfmt.toml new file mode 100644 index 000000000..af44f685c --- /dev/null +++ b/old_orchestrator_files/rustfmt.toml @@ -0,0 +1,20 @@ +edition = "2021" +newline_style = "Unix" +use_field_init_shorthand = true +use_small_heuristics = "Max" +use_try_shorthand = true +max_width = 120 + +# Unstable features below +unstable_features = true +version = "Two" +comment_width = 100 +format_code_in_doc_comments = true +format_macro_bodies = true +format_macro_matchers = true +format_strings = true +imports_granularity = "Module" +group_imports = "StdExternalCrate" +normalize_comments = true +normalize_doc_attributes = true +wrap_comments = true diff --git a/orchestrator/crates/da-clients/da-client-interface/Cargo.toml b/orchestrator/crates/da-clients/da-client-interface/Cargo.toml new file mode 100644 index 000000000..d2887a279 --- /dev/null +++ b/orchestrator/crates/da-clients/da-client-interface/Cargo.toml @@ -0,0 +1,13 @@ +[package] +name = "da-client-interface" +version.workspace = true +edition.workspace = true + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +async-trait = { workspace = true } +axum = { workspace = true } +color-eyre = { workspace = true } +mockall = { workspace = true } +starknet = { workspace = true } diff --git a/orchestrator/crates/da-clients/da-client-interface/src/lib.rs b/orchestrator/crates/da-clients/da-client-interface/src/lib.rs new file mode 100644 index 000000000..572af75f7 --- /dev/null +++ b/orchestrator/crates/da-clients/da-client-interface/src/lib.rs @@ -0,0 +1,29 @@ +use async_trait::async_trait; +use color_eyre::Result; +use mockall::automock; +use mockall::predicate::*; + +#[derive(Debug, Clone, PartialEq, Eq)] +pub enum DaVerificationStatus { + #[allow(dead_code)] + Pending, + #[allow(dead_code)] + Verified, + #[allow(dead_code)] + Rejected(String), +} + +/// Trait for every new DaClient to implement +#[automock] +#[async_trait] +pub trait DaClient: Send + Sync { + /// Should publish the state diff to the DA layer and return an external id + /// which can be used to track the status of the DA transaction. + async fn publish_state_diff(&self, state_diff: Vec>, to: &[u8; 32]) -> Result; + /// Should verify the inclusion of the state diff in the DA layer and return the status + async fn verify_inclusion(&self, external_id: &str) -> Result; + /// Should return the max blobs per txn + async fn max_blob_per_txn(&self) -> u64; + /// Should return the max bytes per blob + async fn max_bytes_per_blob(&self) -> u64; +} diff --git a/orchestrator/crates/da-clients/ethereum/Cargo.toml b/orchestrator/crates/da-clients/ethereum/Cargo.toml new file mode 100644 index 000000000..809d87f9c --- /dev/null +++ b/orchestrator/crates/da-clients/ethereum/Cargo.toml @@ -0,0 +1,49 @@ +[package] +name = "ethereum-da-client" +version.workspace = true +edition.workspace = true + +[dependencies] +# TODO: update this to the workspace +alloy = { git = "https://github.com/alloy-rs/alloy", rev = "68952c0", features = [ + "consensus", + "providers", + "rpc-client", + "transport-http", + "network", + "eips", + "signers", + "signer-wallet", +] } +async-trait = { workspace = true } +c-kzg = { workspace = true } +color-eyre = { workspace = true } +da-client-interface = { workspace = true } +dotenvy.workspace = true +mockall = { workspace = true } +reqwest = { workspace = true } +rstest = { workspace = true } +serde = { workspace = true, features = ["derive"] } +starknet = { workspace = true } +tokio = { workspace = true } +url = { workspace = true } +utils = { workspace = true } + +#Instrumentation +opentelemetry = { workspace = true, features = ["metrics", "logs"] } +opentelemetry-appender-tracing = { workspace = true, default-features = false } +opentelemetry-otlp = { workspace = true, features = [ + "tonic", + "metrics", + "logs", +] } +opentelemetry-semantic-conventions = { workspace = true } +opentelemetry_sdk = { workspace = true, features = ["rt-tokio", "logs"] } +tracing = { workspace = true } +tracing-core = { workspace = true, default-features = false } +tracing-opentelemetry = { workspace = true } +tracing-subscriber = { workspace = true, features = ["env-filter"] } + + +[dev-dependencies] +tokio-test = "*" diff --git a/orchestrator/crates/da-clients/ethereum/src/lib.rs b/orchestrator/crates/da-clients/ethereum/src/lib.rs new file mode 100644 index 000000000..ee156c91b --- /dev/null +++ b/orchestrator/crates/da-clients/ethereum/src/lib.rs @@ -0,0 +1,60 @@ +#![allow(missing_docs)] +#![allow(clippy::missing_docs_in_private_items)] + +use std::str::FromStr; + +use alloy::network::Ethereum; +use alloy::providers::{ProviderBuilder, RootProvider}; +use alloy::rpc::client::RpcClient; +use alloy::transports::http::Http; +use async_trait::async_trait; +use color_eyre::Result; +use da_client_interface::{DaClient, DaVerificationStatus}; +use mockall::automock; +use mockall::predicate::*; +use reqwest::Client; +use serde::{Deserialize, Serialize}; +use url::Url; + +#[derive(Clone, Debug, Serialize, Deserialize)] +pub struct EthereumDaValidatedArgs { + pub ethereum_da_rpc_url: Url, +} + +pub struct EthereumDaClient { + #[allow(dead_code)] + provider: RootProvider>, +} + +impl EthereumDaClient { + pub async fn new_with_args(ethereum_da_params: &EthereumDaValidatedArgs) -> Self { + let client = RpcClient::new_http( + Url::from_str(ethereum_da_params.ethereum_da_rpc_url.as_str()) + .expect("Failed to parse ethereum_da_rpc_url"), + ); + let provider = ProviderBuilder::<_, Ethereum>::new().on_client(client); + Self { provider } + } +} + +#[automock] +#[async_trait] +impl DaClient for EthereumDaClient { + async fn publish_state_diff(&self, _state_diff: Vec>, _to: &[u8; 32]) -> Result { + // Here in case of ethereum we are not publishing the state diff because we are doing it all + // together in update_state job. So we don't need to send the blob here. + Ok("NA".to_string()) + } + + async fn verify_inclusion(&self, _external_id: &str) -> Result { + Ok(DaVerificationStatus::Verified) + } + + async fn max_blob_per_txn(&self) -> u64 { + 6 + } + + async fn max_bytes_per_blob(&self) -> u64 { + 131072 + } +} diff --git a/orchestrator/crates/da-clients/ethereum/test_utils/hex_block_630872.txt b/orchestrator/crates/da-clients/ethereum/test_utils/hex_block_630872.txt new file mode 100644 index 000000000..4cc833e74 --- /dev/null +++ b/orchestrator/crates/da-clients/ethereum/test_utils/hex_block_630872.txt @@ -0,0 +1 @@ +70a7f8fbac93666b6af18890f8cfbf659b7815948d27a6631d55e6920f43c6ae41ea84bd6df091e1d87cb357974e8ab1980abb3ad04ea751148709b6e10d84e14ba82298a6924aec387b1534d46c83b00480f3e5b260c0e8741a9c81f0c723bf1099801096dd7ef49faffaca915d18bff674fe04edab90ead0b7d3a25e5fa32269d47c2c5f9a749e9d39011405687fd5ddb05511863959baa6436cefc107b6ab51e7c79d8060ed5ddafafe19643fe0793fb31340dfd0e6ca716cf4228cb72943328907be4f824ffa6c65b0933f1a19c5b47408bca3b8d02b8f150e4f8e7fb7560484b488732d0e2c4cd8437d1d024e6f812417e83f0db959d4d0c688e4cf811a6a54adc9ce10049ec3afe788f55206949ecd64247b2ac724a8ba29cc588e2cd4714f128a5c9e2ae66ca645bebe72d1df7103387186d0cc2b417cbca5e277578d1a060c69bf0019da98be23ec01d77340507f8f31a18fae5a8231674616c686a72836aa40004e5553e3942aaed35f872643096e3ff392fc1a4393bc6053782bf0472004e924bd7074e069437d9ae35740406f56ffdd909b4354d4b8d7a5246e3f71796307b732497b34af9bc91d9c484d61a168cce2f896af3c7d831eb346075e699fd9edf5260e29deb4175b7f4227af4f874fc864a2cc27a1815852d837dc9e507469cc5327b2488f6fc33e659ce97b322d506b9a567262f73e6232a883e2701b3346a5db4d7872c01f3ac90021ec2b24a1fe53e45a6e2f8c612c6a88e764b30b42c7026df60c15ca042d813fbe671aedce864e6d78ca1d82f5b58fd5b8ca9d66d83c0484751c970ba7bf9d80313703f610957e561d8727d097a9f4f706365913686c9b9ef0543c2db745e9123ca3a6f9568c4a57b63ea932d58be0bdbe759e6c480af1ae3526b51b4e872ca23bc3e3482b6b070b1b055ecb744dccec277d4a06994117ab604e7e7699ae655e9680dde9c343c503db6bdd1dd0eebadae7db9920f79f831fad0aab22881ff70392b4436a57689b1aa3bb0b225e1859bc4bbeb1605274d49b670de57fc3be35ddf84f4cc5cc146743d9d3d46d76c124f8cccd026495872b55d3631110018ff810e68851fff88addbc4667f3d0537a98d0012b5942d8e3de1aeaf8e18642bedeece687ff946aa8f9a80f5631739b5426ee02291b706126c870c5a9b00ea6cbdc8d8bcc39763c8105a1b54246e94bd8797f9542c936d2a0bf3a589c82f74439ab6d5a0dced8b0ca0f6e90bea314f311395869e6d472a0e05f8e26408a5a7fe04bdfdd7041cd0d0e200e029de1452683a71cb930300e0b8b4ea7929100f555350f86181d5ea8a277b861aa0ce8bf2b6d025ca4dde11b3c6b9cdaacd8447104c689f072ccd3a8520e7119bc3a168f59cce0809e90f2506ad3940ec65ece052e90a873b4ed196208bdc71e898b70de49e6959f0f22384fd49ca2e351666f4bdba6a2d2dec12ad602a7a143643df701aed364a9ae6bd603dc80932edc2e1db64adf00b8ec9f3026779a1828674d879eedfb875ef734745209401ff54fa61e5876693c76f4bdd9cba146ac77fc7abf7dd37cd5d758d60b0f5ba42995b3eb98c88c21993ef6c1f6d2608f2ebbbb6e4450c6c46e18fff3a410cd928d4b187ce689ebf9699a85b3c7f1496364196288695151b6bc98b29b9631eda8a6e6520f628b6b17f37d1a3c4354bcc6c31a9ff1c3bce10ea46eabe5df1bb386bf98fff42ab413aac7cda13b4ebd35d9a8cf497f3479dbff00ce3401156f68e6fb5bf1da565bc6865fbf6ebcc42055378ad3716a3c405e137acee435da06f93e3195026a973ec5e8d20969fbc4e9e07ace02828fd362ad9647a0d1c2e5720cb99c5148dab43cae3cb6c4362a98a86c8d07d2704e3bdb8bb66334b8bc4412bb4dc9809898e4c435aa8f1694e1c7dc08d5393f81931fc4c0e8923c5a0c837133fa9224c652b586da11c84c44450e2065d579cc879c44bae83c9855a7ab8e3d61cb773f45074f2324d4cec1443488bb338ef78f55c06ea351cc63a2ea6a330675255661ed43c15b60168a2d0fe63415fa970de9cd3677579346f1a6eb5d144ffeeda8a5a3380d729f27bd0de6718ac9fe4a010fbdb1f6aa554b88309c543c5e3ad51e852f2b8a9c3a1751cc5b923859348751a0364f1b9a54da9615ee10e51aab58d737efbc6812042921e319e19b1267123985dcbf8a99436f1c7301b1d55cea2d13bba342bc31d713d1430e59d86c1bf930a48bfeff3b5069d504edc3036011c9091acaf8377f7e94c7dc99836459ba15aa8573a46fc6234fac0545d3f14a5de1d4d5d3085740747a141176be33cb0fbf6f03dd40edd0f80a1be207a1ce2a1c1f40d616d26d557e14f5e3285ebebdace18707189b2eb835491758f01d1a1863bcee25922d5622e224a18630ff0c7317c33a63adf9d7344edd28447b8dee565a871ead5201654be76dbfe42c142f2508f337dc9a5633c115941e5e80506701de33b61f2b601fd56c8fe88d7802d6eb3d37887313b7aae48bb8f5943a34a46bc4a3c42382850eb272a8e90ba4cec279f9d5edf4a0b329753e246fed3328ea0af26a601a39b2656dfc7652b845866293d0d1014a5d6b2f9b775ee4369a8fc21aee405e008b6bdd6742a776e0eb224aa2017634f56ce127745680f60c07778d452dbb9ecbb9757fe8e752ce74567a31593fbc921aac528587e165d0ce44458754b7b85da92e11034838a0d439d7f9b86f7587ffd97e947652d340f4587dcc485464e8d1af046b32b6d856492900109f93594be9d1c02c039152bfbab5d19ce64ac63be26019c5cc9894c9d42dfedeb63cb6eb138a6055c36b4d989dada73b6c18a0f5599c1b17dbd4f4c31e629f58036c22ab9ab7c6d26123e780646373eceb5969f583da7c3195fc0a7649b97f022bfa4720218f72f1ff71044caa3e984ecc2faaeffb953817ee1ec57ea326fa219926a59ae558c4a07165b20f8364939dd901e4fcd9804e6c3a5285db16a302d12bc3efc1e97462fb5031894ec69e24ee2c1af287483528eb3fc7c01ec4d31bb0a9b67670d39a4fa9e58d115160690f636935740099ceed7c7e0172b77a6983e6ebb204761f24ececfc1dd25cd6a401c0b80d7936d765e2e0c4b0f6b738808afb7ad447ed8af73a991ac65c0825e37f037c71a81c0d2b4b97e5b4e69cb359214e49006d06ec30844ce9de777f1e2bad30fe6ab333ddd3b1055aaff770f6ece2ada573ba2a40f3137d51f036a428539c92eb3b622b2ea8aa7aadf5754906729debae0a483ce2ac52454134ff23408890fc1e1e5f47f76b93f2250879f6a8e2cf12b7e88f0c047969aa774d72891f00d10965604044d0c854586e95ec09e15597b7c43c1d51a524f3da45ccf1ccc9a020527c04f2457deaf9a3d177a7c51cbad7c52fb61661977781a0bb043ac5e2b7258e81504f155565159578ec23a136657ab89848b9af3a7cbd9c4fd1c85d61a06a875d065055b079e4232d53e6120aab6825adc6dcd43082540d0ea9c695cd3ea08d1747658c4650af0a3eaf433b1f0fb25fa5b9f9b00ad16e1e992f9151e85c4e43de173ea294c2042ee2dfb520bfacd08061e4380c77412b7ab559f42b6a352f91d717260dcad4a232f1707b12e3b68bf7dc3d0ee418aceee09dff273690481f57b562c087436a665437f06a6c92c1a47f6f0aaa37774e8c59c4914dda2adcb87250399b4c7e90a27df214da1fa49d74ec9e7f9da5c8044074483f0a212cecc903541681abb06d77be03e8c0e58d29b40b5151b406a22f0b40ea197296d087473d4c0722d2939b64be3a80f002befdd886f8829d52aef6a41e6c11f658ade3798a0b1f6b4eeac71dca636659b90a35ed060de1209daad45521a56296e01a869638f66dff84e9d6c31b955c1941fbd494a634b1fe794f93236d1716b428dfb0b0e2770d9106ab434ede2293a2beb4cfc858ec1b61ed0ea695dcca3448f35b9f26dfba1dce7a59939ebcf81cd10c6c812074385af1e0862a85144e1c723480a0f222b44ec2c09a5c0c199ea98b5c381017bc8ceaba608216131abfe36c58aade1766b3724541f8a4722c4fc6dcc4b220b6417c963ca6662386baaa2b3b07ba72e01c8123bee6c1b049075a2786d7dcdc5fb5d7e803006e5648e2f1cf26de224bfe78ab2603bddcebfb3e98a8730d75afc30af5d54bdf25f4812e8840df1f0695eb6929478321b2885546b4360f1bf08f283dc9cac93324fb2b35d0ed92851f8ee4bb47556d831f1e7bb6d01dd69afeaa5dce6db323daee273101926cab3c37da8af7904a3398b55af9abfbdba0832f6c83bdc03559a65f5174fc9e9bdcea6dbcc60c576cd5b3e88311b413f12eee606580b332b84693415d69979a87eed1e9b19cd77f355800f52a3c4e2e0e5cea63bab250ff05dfd0559f75f6eb67ada2bea42a471f20faa8778b1a8b6e8880f1e7a759f1a49585106c509f4ffe4485ad99978b9b783378aab8a68630cb239963a5f9bcec1a0f1a823036554c90594878e792b3640833786958cc6a775c1bad5d87ab8a69f77ba456ca921ff533c4b5a2dfb027e4fc37752e72d93445dece40e4503b85762a4d0f930115c76be67f6c3650099994d73b31be3cc2b542d1ca9525f61b2c87a08824e522002663993f375ea01de6f33d2814086ee22cdc1d12c5471947b73b1b131264625dc93cb844c207892fc2dd4846a77b62976ffeae116e59469a8da75c7798aa7e6c66955a5b071df977fd31e15b56a6ea5661070d41075373ee2161cf7d7e0ef7cd51b7047acec831357a9a62047766bec8c4c103418d7bbbd767e96ce0c9c79dcf9558e61c56a051e55307a20cf2edc36fd9cde676bbd6318bf6f06d4684973d7b67829b8a9fe5c0e249a0ff301c43e27225d8a7020215c390b400700c8db47b34bbaf09e74460085ed98e301ab5dc9ee3c5002828aaf62d6f3ee56955f7e9cfeaf07ae9b42f894c2078b17e25010af7a4d153fcf659d8da89cd33f06cd17349ab0b27bb475bd0905da2edb92d5f53f38a21c5d36c21730598a3d57b89d3df6c5a44b1e8e77b8829adfd25c6202a7d0e4bce490720905aa77d697bd064cbc8354bf8ec01d846bcf586afabcb0ec95373df626221e6904aaa5a560c0670dbcac230dd8b36ae50844e23395b465a828027ed4595dd9554b67a67c14e278379fd450b7dc538b1974ec857bbe6be1d774765b9e6b970dec02c463a182206b70a6acbb6bb41826ed1f0fa3e078aa014d0ac696f4bff305e71b07660a0a0ebf171d0f41a55dfbf1747a7904935bbd0585b394d8a3ea36bd32cbb5729d025b9767fcb534834b5cba4374b563372c5084e515579a8b1aaa8f90bdd269403b7ad5a8947ecb7f75198c15a780086db76513d75c42de4cc173e092183134b51c14432f07ab3f86ad1795fcddc616585118a326859438a1cd7fac28457d4f4c54093b128a1a24b28eaab90ec284994e6e5eb6e2468a2893b7185dca1408d6c343355e338b3b8626b46e67bb2fc592f9dd53757e3d056d593a121e0141c54f3f91dab93889b6f2af6e82bee0c16674a1e1215295b2b212cb5f6e0cb0522efaced1a92f0cc43a53c36b6c2b9bfb7ed887ee0d959b8fc9f7e175e786dbad2a5fcf2e4c3822adc361aa7a5ce1f854890358e2aa100ee3636e02363cc5dc2f1cc83fc73ee9bbcefaff6be54eff32afb92f379f25421913e4800352040f1775a317f476e40279f84791359f563f95293799dbadea463ddf0547d931e9537df02603f706a137503bfe7fc96e9320e6bcc527920478e4bffb11791c896818bd68ce4e728d5d4ec06f34dd1ffa29c970620f6613a47cd3ad3221b5e9b843f03127399683f9a2a6a88689a54500e8817852efc95d9b36a39fb8cb4c11133b863e6cdd096d78b295259e4050648adfd8572580b5b04b7a3345f5bbee76ec09bd77cf69b87f58ab1fa639edab9aa3cc3f9622c43302d90a723c8c1a76210a77e832b669b8cadf7586a1dcca8b679d7fd429c8f77b985a7961ea5b2800955f7994e35c34a6de12ecdce9ec543ae7abb77ab571a5aee484f09142847cf1deaeb589358441fe41ff94ca8dded31e308a856c33fac51120bb6911a6763cb7c5d6d45b61ef57b8f9e5d89c882012eb7183b3ab98d27a30a156785111615d0b9ca6d66859cfe8e75d97ee837efff02b16cc7e02870975d7eff7bbd6578e1064b4cd8ffd926e6218f22eb3d70e9922a631edbd289bd37176ca29cd7526ece27942ed6d8c686234c03e56df0a9dff2c9b2697a1c4391648d360e54b921de4adfbff979b9857ca8b5ce38c9bf4794a9cedf74c835c9caebe1826cec7d5314365bd1b1a42f88593b6024aeaf03d26de995f2793a6c1b4aed92610032305c420d9aa56fc1c3bbba628d28ee5b21105eba9679ce05822c09e39d68beed37220ff1c4b6cd36f5ec8ce9438212d0e4ff711c1fd44c38814ca8ec1ddeb4f87b45adcf48d50b9e8be9ef5ddce8ed60d6569b0e4efeeb8095516b16351513765641e91b6e73f705cbc72be218b21079f9095987f2a3effb9325f5a0648d44293a438fde973dec69f184de07886b2240cace4fdb1f18d47bf0b44be24fdad8fe7f40679aefc8c371b27c4dd655d9f6413feb0c7ff4c8d6ea03f722e097f995552113a51d771e56bd74f8545e7d26069bfca20f0a335e0f9b3f8235818131363b8a02dbf9bcf735295990ff176a38c92e1ac0e7efcd5bfe1db261d9d47b0652fd761e3eefff4d0895ac2a48d5aa9b0bee62605693b8c913b11e6dcb12efe622d8f630a9df5938516c8ffcf0730dcc64a8561d0e1f4aa1f1993695529636df45ca803f3cec2be9fd74499cb4eeef746703ea373e33c4dcb4149221b5e6ccf8eec4a01921174bffd216da8b91848f298492ea53e14ac804c1652c9eebaaee5f2fe14710072c3e626b3c89100544f4a82ecfb80155e92502ef5778707b3475bbfec5750624f6c23afaedeea0c5133c5311905f7e758b18c392bf63c9623f5db089fd4b37f94185c01ac4dbab1054c9e7c90f9efbbbe028016b667491c653e19a744db26133ad748d1417b2278725d892c5342306f8be2c295cb6d5cbe7536d4b6806454f10bf978883a9e69e86d0bf8e9874eaf75808b10625ebfdcadc8f7d43aec465099101e1d752a8fafeb45274a8f059491f44c2be428f84a299f2877b77aec83a6834a6fe09c531ee857514578f9a8afeacc5fbcd39798019ef55eca31208045f5a719a3e0a0e46e9d23cc9944cf0ac178cec31363af4f72780af50b73148c99f60ab37cf0516075dc28a7a32e0a546a79a768d64359b277d385ab4f03344f5b0674ea807cba63956cc2529448e9a2447921d5742208aeed9ff898d6bd7ce52a85c83479c4f7a15ec6a7f5cc6e8c6331f01ca3a110127f1219a280ea78420587b197df12923cac2da404bb018929c083288e0efb95fd2acce652d8a369dd4dbaf59a257fbcb08a9f5c32635ad8239149b187bac79bf9268079a103a66b95f993156986a1bd5ffb76b44d7d6dce142d5c50aef135ce551ce4d2aaf10a788a57a513bd0be7464576eaea2fa750c86e89e7fe1b88c9520be914c7fb7c20210205e3e14fe02daf0a8cae04009741b7ca2441e9e450ef9d2f1e70ecdc237323371d1de1b97feeded5b47cc88da4283bffa4eddddeeaa01790f0a2cabab37f5957999bf0bb42c547c12f2bcb650131136185105533b756365af9b4f9e3487ad7bcdbb481c0a63c09b53b85c5ac401c2c2437a775499121d673e3e6f8897a399e99f994d42403a5e990d0d0804ae42c77379cab5c4ac7e1432e902985ad5e1ad865a63575075a2fb804b027627abf5db27596839f4fd05068fa6bfef24e57b37e203825711a4eec7b334f835cae642189821d134c6759cca224cec9d5538bf1ad028cc190a4b0f5ac689037864243cf7d60481f2f226a6b30f72f593878586c5cd10be6d5fb6b6120ef0e69a652b6bcc8074d34bf287db16f6b19b38841d2ee1e33656683d504bcd77795ece217dabbf7e1a62c955b55fdb650bbe3516245c2eea33f896678f722f23530c9e263e1b9345a3462ebe38114669f345dd5e310bcecb00193d10e54a38944cf14d1eec532b459976a7764c7bfbf8730572948545a4edd0c2f052c5e49b68b962e44654c966b4b3f56268fd9deacaac7197a099bb0c6737c6a85e307ed31b6899fcca15c5fad36457a9c42742426e9e58570efd04868138cbf54ac9fdfe2b690e8919857dfd602ad985c5c69a3383ad17aae2efa255eb686c5d213e34cbe4976afadc6d6784eb511da4e7c7da4ea174a9427d718bc9dacfe4a739b5fa00df26fdc18534f5c8095674812cf20ea7d2055964e1c96ea6c5345ca813ab28a89d53ffb763ea919c442d9801a63f8bd6159d20f9045b51808d6c61c545959e1f40432ac43d5c0e744b50b578f8d0144c48feda3437369bb75c44739b5785273a99cfc1f38d04f1cfde62e971861761bb6e54fd1275a6aa14c550e9bb195ea49cb95191e680ae772488d0ff94c5ac8fb584dda728a4b8275d8b762c550c9b6e647aee73d0a62d9f8bea08062be84d57513ef20cf56459930d6d8bd75e26cf129b4720f7dcc7b4c520f9e6f2d3e402e6657a8bdea41fb0d1f438274c256ea9922889c673ac3366dedc3ac4ccbf24737484b1130ae0eb5c91ed5dc67298096aea52c5e34b2bb291fd479ee2957fe33d75dd78eeac6b51dfe47b542666801edf93b676d161d5682d9a83784381f9120cf9a1175093009051eb8f5fe5a7ef3b4edafd08f4f9119855b5d92b20686211dd52c898a661cabf8015144fae7f1718f5587920d204fedbe9b58cb17d11964afac56100298612b377289a3f50ce9d5ab80c57ffaccc67032baf412e3d8075f1eb63d3db7fcfa54d99ec0247a34aa914fd18af373842753f8b34f3d5ba0dd28385a1abce60ed8150a98b1bad65d02a491f53f72630d7d631feb817cebed2279c9b5564f0dfaf1283e62c7abf18a1114d99d58da2917043ce6b9988f1f34b1639a99ca2492827ee24edf999e15203925734a80cf13779a04d3f0f3425a8cbf73c76c43d929179d4628b317984e3de8f0a4bc673f7fa90e8453d30f11c0ce71952f10aa6a94a10da0f98f7c7a404f3fa67f5605457cf6caf6c21a72ae9d588ea23009829d111f182b8498f962812defa07050bc20de9fa400c2230db399508677999e7ab7d55ff3db34ce331a6d63eba6d1c1265e876f498a40f5a1904054c6b48328a020ce5b31f363eeac498262dc669fe365b2f45cd7040bdf2eabf5c23a86535d826c32ff1bbde28ec884956d6c6444b94aa624728a3062a7616e30699153deb5cfe4abbfb463c121582f74398b833a1e6028206733266aa3765269b46a197226cec5204b9270dfae419ee8c38b968f0ce81b40cd41782cdd8d85c0836eebceef1a433a81e0b6830ca9af693bfb42e2d279c1d537c28495c6320a24e9a34fb5960f381f7478ed1e071ab9ab248760e6fbb6e710e8df7d6975913219301f9035b8e13a1bcd48e86e2bed1a76e10363e2c39c8f714f6b4401ae4fc069301201db4c65e7ea3eefb2188f8e9bbabd6e00c42235d1d77f6549fe24de93041fa89bc957feb0f1d779cf2055040deccab6603a7ca30a809246d802a8c0ed40c1849a2b2ab13040e12e6a702758f4e3be04e60f2e28c11779775a24a9a88ce2fb757eda6f4eb1ae87a3b02bb557a9b2dc9b2335384bc5b0569c90e9a618669896eb018777f34dad24f97d8b3f89542dabce51d292c4663f1d524b6a1b9f08f0a3701274489d1e2dfb93db66ac6c497cfe9585399b16c2d6a077dde7072c0678f9e18981bdc428a0d8d88d12443e4d02ce29a18e6bc6bb05da86349b4d611bfa59941e2f3f3a9c7c21f8c60ba7bacaaaab21f2f0690214fbeb42813efb735dfb65b1755290d0945f2ef8094aa4e80e585e66747f22db061ad185409e638dd935e0bcfccab8f7c2570b0b5e19e192d1c7947935ea8a8d14a0e07e5e1ec31ebe97a7f253f86fbe559c93b32eba64cd51607ac194c480453a83b8e333883654246a2699b81553e16d0ff4c9515b570a7e814e9e2288627b324468492908430ef909af865cf47b76bbbbce8edc2735858986680cf3862332b311d315204bdd82924ef30e38c75f9ee3cfcb91f89dcb2815997086e0d0fa5f9f908916efc8dce49feac2b1f49f3ff16155cf0a8327415c021bbdd633397984386caf961f6ab9f16eb81941e5b08d3530ae85e58213ff006842e206530a39569c08f03839578abe085573cccf4e5c3683277e85b711978c769e162ef54248286ae4039b810288c9c38cd597ffcf4d37b7da3fcbb534ff2591dea16c432be38b8cf2d836f5bd94e8692776156942869e34dd018d0a14af111ace79c3710428556b6b6d0e0616c5ba05bfe335550208926c2e0c65b68cb02aadb9d2eae3fe9df987a3e333c83ff1b1111bd813b7791fa6316beacd6d49a2dc0e62bb4654c80d6dbf6367b5918a157a1e1d672d17a3922cce1c945e1b8d8dfbb22000d6f32521b08fe99027e460e58888cdc039198fac5cea66423d141bb2d74d94c3e7d19168484f6ce8458f278e045dfdfadec6f040fb975a9bad22914dbd1072fcaf04da049cb1e63b9975c3f8d67e86c5cb99c97778633becfbd972c01ac4ffb8e2e214fb17f2a26b6939d231674cbc867f289954d7fdf5d3024f639ec406bb10bd92bdf2db2df7545b5dfb4e8614757536b9dbe3a0ba4e2f6a5dec71ef396e411884eaf98f27c33b857ca6c257bdedd880cae3c130e04db933ade316d59f349059551e7ac23a7ec0ef9f5c5d0405a9565fc74d46890933bd607276fb6edb9c62d8c4621f1f54d7599c33c350d3575e89dda95347e3a53f69d3475cfb31dc385adcc671a5145ef2c4389783ac059123263a6a36d3dfb350a3342cd9fb92a6f61bb045b213c2d14379200fc49b8e19937b40b0c820f0f64c3d85af0ec2ab28fdfa6f3663656d57fc5ee6eb9c19723faba8055517a85445a5defb4c62e96a8c6d2892e6ab7d0033acac275ea9eca6a09d1ad8636490fa3862d67d7de2d590a51e8100c38d0416895b645bd328278633912cba982b0c70dbec8a8c6e9dc1c2279e0a818206a1649410b873da615296fabd7531f300239a23f462b57f9c90360bbf252f51cf325e953123196e1f29b80202bc455c84c36bcb030f5b9ad58d8758c459d5216061f3d50dc915881a1ae09ea5fbf9e72feb5d164ea9fc423ddcc38771ce625227752356b44fc70b9827463c0ea80b49f50218d738fe18acb79fbbd7328184063257fde2020d7f86a7e44a57c7217b642317bbdf172c17725ecf16d362d662f4633dc057180baf96ec85ee06cc0bfb56b4c3664d535f0601dbb44b3e60c43391ce71b8c5b74e6da12df8b74aa9968449d9ac46c813891af3a9dae2462a0174831ad2e7831394994783a7a8158b2469eb4060c4c800e8aabcfeacbd33bd35bef02b7f5b2219b4bddac04f73067506855dce1e24352b82c7d127f7d2585c40f1b23e3e9850431239fa696b7326fe59930172992f07dc849df1e853650e95fc06b31ce417cf9b81aefb690bf47c60ee6c947f431179416b31efeae80e750de0ecc3c34cc835a612449bf02b22a113b59ca6cb3f30e8aae4a55430196e0e2a5436203e28ed42d87ad36b6a016254c4e4c013ca5e9322bb83232fc6dc706f9f91ab75afd4217f97194040214ad0f987e21bb759be822cce4fbdc94c6ac8b8420b4dd192f77ddff7b60af26ed52722c714a005a39843879eb16878878cee2be64b0d35fb6981e1274a9ec402466abece73b6e92c64e0dc5d173394189e3ed72c40ff8266f0d4f5bf1045e60c21b3f93f25a4f9255d99cd6994f0dee3974ff3bc5681b20cc452ba31a132cb53fb070ee19de54ef70759c0da3ee416ea71bf43937d670567ba1af780dc6be734fd5d0bb7cfab505143409a957994f8e0e6111eb90a19271330604035584d624c34c369e398ace49a76322be8f18cab23b52bffe6b79d65cf64bf7bc2012bbf8e8017884b18cfe2903c7c68d2f2eadc7f09162ea29674b25288040c636cca2c7cb0f7d890198db4d727753fcc5ca41f09ae25441bcbf92212adc386bfa4db1a18230edc70e4c9016c6994c1a02e7a73e4db67a619cd5cb1a1759c15c327016f844ca816bc3e90345246fad36755ed89f39f895cfe417f25d455a66b649972fc178793d64709a482ccff435640d91a3a3f2a8e27a2c8a145430990f2aa0fb20fc56668a558aeec62edb146a62b8e624fd5de1712b7312416dceb3814e3dbe23b9a92314f8fe7c2c54fb7d74231d7fdf0cd105a90dfa7d090f7085afefd1a62861b346d64e1f025809a9fd2b3d99d8f867023a01702bfe9b6266baf0683bf5ac82d60643826a3e0271765748583a3995283e67df6af03b492cd9e57e1a83ec9199d5307fabab9e3ea1e5419df26a892f906c546cdf733205091670f8c33c1505285b6759cd8bcf16f0997c07b511252c9a08552b3fb24d8648875bf062adbdc66e283d07cff58dc29ed3c03de5ee6252fe3f61afd6d42eae203a3eab4599db64dac9f831fbc37688277f624a3b9ccc9fa5f9dd2f7be557ba0d392cf6657a40136bb175ee56119039a8e98602a71fcded8f5f74fbe8c75f461027b8d2bd09a9e33f371a9a55894463a08e7d3d90208f489f83ebca830a8c9f245cfa5eb08d148535d5f6410a72d0cfb4d6cfc8c481bf4ce1fadffa0cf8782313c283506164312d3136e003099d4afebc7fa790ab29a0c6b00f3f0387b7c29616c8fb67b5668622b06f188c6543f068f0b13eae618dbdf6f1f9084ebe6c22990121237bb6b091b629a2e52fadc327a3f767b0e0af3cf21a994b63203cec66f745c7d32bccf8f98a1ddc96903e484361f59f3b676f2bf470b3231f63d4ef097504b2b15fde96fb828688ad69e7a0bf7e4aa8b6184488a9ac9d3947d7a83e03a56f135d9a223a91f141929534232054a644272ae4d97b73cd40525b8fb01e11fc6e07812dd9e8823807840f12afbd3200741522dd34f23148990abb11055239293decd26d20bd3ddb5608a0800647232d66bbb9fe8b8afd7d1dd984c5ca2f06741b84ac06ca9f3e03579bb0c36e3d2e9386d9ec6fa0a5b7a11d9d81f9721ca2683d22d9b9f383f15eef7c730e8607b86f8e34d93c77edadf2b27dbc34ef7e25032548b68030f38fec950b6c4e18b22e0b8875fc1052952f2a52e884fa75551a87190d7e2439a50acfa8c22b0c105a2c250bcc3503264696325664d40acf9786b25adc32265e41e08f6856b2e7e7f46ec5ba53585dcd166ce3d2b117d811920bf047c282148ce2a9ab69622160fed4491ee5ca84b8aaa19d678a5b90681a9a625534d4e62f605b8db1bc1c6e4efb6db16c5a018940b2218fe85ba8d97b14771d9c052c03d1cd885ae1a1943cc2f801c289e1168da4f39e6044a474c398f2dae3790d58415fefc268594be5ffded09ce9783416d6522fa99a2b942502425d568d3b194ee10b3144e639bc522dd3b5381ebc17dc7f5c1a468edcd891c4ee588b14ab5f8a2bf49780f4a407943157434b5db16a464e6c33dfe6c22c03d5769b6e01eb16604b06f314c2cb87ddeeb22c22e7f8f0ce324afa52ab2e5b6a508cdacdc9e9510c113e82f008b19d1db40b79afd8d37a7c3c3a293da2f642799d55d9efa35624abf4611b931fa166f628eaec4c655c26e21f7f103eabbe33652559cdd2cff002bc5190a71e575fd1e37c1924d7b980bc68dff286354e6d9241c67c2192de72197cd72f57f12a404898f623ffcd0bcf773cdd54810abc7260928f3ff57e71425986bc944ffb3621e16dc616b57553c55f8053ce918bc546b6260990ffa872b22a3f230a0cde5a61d26151770e3ff7a8a80f046746b0e72847e6755521fcc61455738a6bed8893fb6b4b988f765e300593e6367383a5c5b9a8469912cd96d89d6004a7919944a21086f79beaea5d242995224c2b5145920d1aa0600a5728a4ac4adfd1019dae21b07922126e94e301b5e1b3e3ecb7c21053318998c4cf56506549ebaf7f762d54db3417efd1ecdd20500a80f1840652f023f5bbfe784e99dbfd60c9ead997257573eee36d0794a29a3d6eb114bb02709128416cf3f49de29ca11b709a1f9ea468aa6f42cbc465dc8e8ffee6a5fad808e11f364873eff872b76232996afff431374bc07155929f67291f192c2fbde6fb1f0a3dea49873cfa14c6503690cd1087c8b9701df85562ccef3811bb09d773eeee213a3d9ff46c43515427fd3c6edb492790ccbafdd2f919eeb23f589abece8d688660fbd744e2dfd3b943f1e1a4173578b27871568d209e79a3ff4d0832f941b86d30ba47f62d80d55524f2a8369cbc53747c37a77597dc9f9f928e9b3e782b5a94bde100458e3d368c449a873cc9d74e84c8d636d5a47879c3544cdc7b95e78df1fa9a6b0136ca1f0039853983e2ef99ba81adc60e4ce57f58876aaed17258ab18df17f6421e6af7c75a9ba7c4bb6def94a9422a0a8d72de174caf4b572f2ab48cc8ece4846d1abd2a361c7a1376f0becadc2c4a15cdee6155c04e47cbdd402a5a8fbba18525d9162d48f97be90466eb1576fec39b820dea5c331eca29888ddae23f0793a73c09beaf3b23a4be52c55055441dc82ae9295e1b764d7add679e74776f73a5c9e2dd3d49717342ed798f3a12bf5cf96c3d0bf5b61110f9549906cd8aaa451a69b4108ec14c3d224af40ddbd51667e139bbecbe0d1fb06d2f574bf8a95596706eeb769e280dce9d1fcc123f87d08935d5fdeb5ee903536eec7eb26ce6755ca2364f67061c3772599ef23a759e59f33d31f347266b0123f9b68cc2ca6e17b303f068549aad5fc2028058c175d848c65fc55402d8fac4ad472dafa51b2fbe89c3ce6d096a6421349c50a1c8d0e9782e78ef5b7819151964d9dd8e720887df893098b8b7042f469eb5924db2bda5f70b14f619d16f4b4a6c705810f4c9d6b2a31560569fd6c24b606cd07dbe889e7aed7cc9e2465fc44551871cc2e232a18c80136cb4d96a0b0bf0e8b106e96f939aa1fea450c3ca21d6b93a7b03f028a7ed336a631b7182e527701592a021f71cca3b8136c35471662adb20acd383d4d8f178d85900a67c2551858035ba9615e5b0ba0a0ff402f635b6a8a0245f9726e0277ee52b2f11f5d759796bcbc6ebbcb6cc07a846224f8e3c7889bbee62bce6b0f68732b8ea59db5e154f4b89933e6a69d326fbadebcbb986156e72e96d59f85bf3e09c7a50de0bd1141472292adc36681779ecf899a0a6677476748cd42609b91f886b7bb549ba033bcddeda4707778024b5c93dd85c273ee11887cb9d5bec37877e0110280146d9654cda8ab9cf7cfbacaead58129623ce264723aa7cfddae5596f36f54ca33389137f23281e62e4efc340fea3fe576a445ad7d4fb06527abe9d0a638d1dc9a5c90bd46aa6b152a02a84935f012135c6b60ba3bd778f5f48de7f631d95e114a8e7285af0b8038095fdf059311ef983261d6398cf0dde449e8994a7115e4ed493bc695f8e4ac6670148377700259b8acea44718ad634fa3b0351bd6dcbc825e2f5b3f40b960817694b16d33b19c49396bc3d1ab94034e9ae4027365cb3125932aac0b0e6958aa7cf0a54884ed281a104a2fed12422bfcd13cf0f7eee1e91b5d3a2c60260bdadf103e515c44afde5645dfb75b00f778498e11a804c56c076f41b31a31d2ddeb2f767e8c513ddcd43d1976b305c7c5cb1fbd95f9df1d1842ff23bdc46cf62b1b73f43f682312d67da17045aa610f70eb647cdd1b51f51b1d86baef3707bb0f4b6a378f248409a41bcee7660b4fb3fc7067aa66ae86375df7620564e60cee51669d783fc66dbf108594951dea6c06bed025a06f5d9b60d3126c838fa71ee82c67eb54af23e16bb09d1820802a40015fb163642fe19d56871c976467e64e5013146ff3200191946669e9bc085616e411dba9b94abec8a696e933fc09d465b7601f5b35391321d719cbac375a51d0b1d6f4c7aba6ad4a3160743868de3b738f2d8deb902e359ff71b373deed4f353e0de2e4e8a52c174e04c2cab58a638483b46b978e4011e9c2a3be22b5badafaf8e5530676f2ce7d2a962decaea475e4d72f72d77fcba695343778af59ffb8a0b4c199a379027a3a983b0b1674afae56fde989d7ee76655621245611e330d12efcd0c937c589491608326fa35c990a017f3420fd90348312f51bd9704a1966223826a7bd43e21933b08f8172a3b8b3811fcf88af5a45bcb6da0a2a0209b8ed3d615b5536d389af12daa1215e7fe196d5ba3445cb48e8f9b1cc6ce6761e5a30240ba32b3dbf62359a27ba54182f577436de72839fb4dd6573a64a1debd419442f9031014251472a7dde31f0fed14b58756501149f0192380710bd65925730ef5d7fd0c68159bb2502de42637be76b5622b6f0d14934375f49c50201178d336137511e3a5d7582cedbff1b42340fa147e48485ad8c6dbe6650e3f153dce20554f328410223128bd85301bd0d1b921be263948239fb72d96116f8949e2d815627ced2fdee680bb11bf8c4541afa71533f0651c3d684c809e75ef7c6da8eda5b3a0e68b72cfc4dcd50248bb5ae1866c9a972e3d2c75abc8dd75ada9740264b46daafcbbe7bbe11c4713abdfcb9d7d5bdd84733850a1f0b0caa3e9b8ddbe6d5ee4762b495c993f6db088ea474df76ea1574306ec4d099edf69e120783adb5818684678153558c3efc89569c0bbf792b692e41f42925320278aab2fff9c7380d2fcfd95720a4537829bacb6b09b622e9c135906ba80e62844d2dd163be2c1e84dbc19a915bea14d821eefa0f15e4fb9459a7f09a541f27c3e4b65e51b7fe2e56e3b6968b59fd21397fdcaf0a9e2e096c6d73b5cc9bffe66cdcecd03a22538655123f271811e607d2ee492a75fc6253a0c5f423ef64040ff172b8c010f0fcc06e5eecdad764e896da7b17567f94bfb4cd304005be44a37a88d3f18b7d6ad12ddbbd7fc290b9d976e02566a07c022bc78ab8396278ee6d90c434c849dfde9a0de70fc3fc0e854a209066486901a187d6b9df5ad4ac62a019fb9110dc6379b54c9b8837b978d73d103d8f878a97aa1528839a0200e8189d6e570828787bb18e5bc16713b7bc783810380b426bb2423f5dededda64cf5639137e016309007478fd936d00e7049d7c9767c8c960ebbbe615f4f215a154c609b502340daedf09df0ac0d37d3fabef7fd7f8110af679521632975e7e64da2364db88e3ca58e1a484d59c6a8f47d51708329a0f6c09549e3d0cc0a4948139d4960e6a3aa4112eab3552fbc11088dc2a7c3ccb90f9e2b414eaa6f08d8164d4d5838790c48cf5e54d1bf4b2c3c16fb70bd5ff6789c49a26ecd946c06bb880e42157572aa6cf00c00e818f75b7c48633a5e337cbc891b7aa7e4ee66815f660a7abdf2e81681a49a2d27e77c284d7a1440f36819364cd45cfc4b81c7046b263954c6afd61ecdf001cc7a98fa6dfb523790725b6990b4bc6a17677607c10d9f6966d8908edc42b39b1f5f99bbf71af920c0ac358d60f9f9a3a2454c9e8c5d643931a1a0efcc62af635cffae171eb807ff5cf19bfa7e896eb48d18fda683ee5d4f756e307ad3e987182a45eb248e4878bcfd90c93b6ad326537054c98813065162a9fb92b17736ed634c1eb39e94ed35b0c516badaf20ee100fba5ad2d3c079a425adf470b199ebb3ac4d2b3bc389d81a6a8ac35a99cbd8ef7c89c8b9b37209315ee953f11c9453ff2e6a7cb02c11c48d53ece940c9d627b7478b1c5684ce2ed5cd900592d2104d91dece0402485ff0511be5e5b6c9801d80830b64112b8b50d18ad584e846cd1bd845d6c13930e16f9c4d965fcb79542ebcabbf5f679d0168b213e0a2507df03d0d8af14609932e33f38f8f725c305fe7432c0d5e6dc97aa714437ef0f421d7ee07b62b5756c77722087887eeca15d2f780ed528682bbde1bb5ce8d71eb291edd55ece7b9f2f12723ba507bbc960dff7be0d85079b5d00c94128d403f57fb3031e6b3fbaeee14a378d94bf606a74580940ac8b8d64d4aff7c54e033843e713a0a2ce22ed0f82c5dcd13d1041db0970cb60c93ea6ca8785a3f05dbc9c451ab4832d17ac7573eaccdf763de92db6fa1fe47a7b294ba8969798b322e71cb2ed1325178ff5e7b9b45bbbef57e5208afe0bba0f7a47ee3dd4a9a0ce5e7c8345fda5f4d8929d2b6b78bcc578fc8adc2edacff53393ca7cf93e9781d0101b0ffafcf6890dda3c5d1a44134f749a69f38176a1c9d1d9ec400b65f5f3106baedd1d77c3f83db3bcd35bfeeea7e55564bb00986b76ca79d604abde8c41955aec2b6f4e7237c5bf999a88a11c41e004a3ee36c7ad0f12225731298e6d344268b0fd122b60fd737b866543774783c996fe1144081f164a91efcd0c73e558b251075eb1e2109773cada408c4872d03dd9039c2d6504c48c3685376340c2c6aa57801c71d44fc224b191799360c1d4691e6d5faf3ad90ea2b3e4f7fd0865518f50f5edb5ef7db99ad69e06e3250a4c922f720cea2549b68e7627efa12fa8a6ca024842a554717e3b49c7b94352e12c78e81a2274cb47e361fd9e5b0661f46a3d65f2a009545a1b8169a0431e27cc26ff9b6ff7aac9dba4183b4590c9ca62f89d342f4af9412c9a1055c00fdcaacc2513fd0f5160e629bfebc4a5a4fc6af630e301e29457c85d17142b728ba1229cfe22e7cbbe1673e4b733e74b7de8bfb12f400586922a00cd19a04e11a8a3e976a452b6c6a7c849ff6a889eaf334f231867d75c0c70df41ff08ea201849bc6109b5e5816552f14f04883a0205b802c7f6bf942b1a9291cc12b3a2f2ebcd1c06e73b18433e5bc2f33e19886b7a60d9d408cc5817d07134d64bcc633ddec9d2f5e6e59358d0da662ba616417a68010dc479fe73466decd0b68bcd21954caa0ff0e98ca5b2ce88cdc6854ecb111c36fe9e823f8457ae7bfb133b0a83fe0d89f1277817d63d68facc5564d21696084c216c1f7a1b59a5e8474076ce8eab02bf5e7458924fa2c37f7168b63bfe015f7867a749657c4453417041c3249261799c00ac47c9a4da47098a3a1ba62754499b27dd73da911a6daaf6084fa49e5b271cd2f85f2e1e573377acea4d6c9c29d007c600284c8c0c9ebacb8fdb08d4016d0ea73ff2a9f407864a213c377d4347ddf3f390959f3c038446662ede3d80f2b3a75f2ce8e3cf2980881fe10d9d01d40b4cc05143befa3c71ad4f52e171019335a1a52aa7af3c2357d4018db3e583bfb66758fcec62c600d553ac73017ab560179e136cd4771f4e7cfa61003f80c0a3181cc04b867bf455d1fc7444bdc663480b4149e327bb6ebcb3b41701161eb4efa623746c11191c2a3c2d713d5940de53e416a13415536d43ddc9ddb499a99f3d6d6b44081381c70fc5bd8e3408d003a745dcb5ba4af09403fdd7653293606604e7794cd0edf00f114fc7636f2018ba0dea12ea8e3a51f5205ff00d83f79fbdcc25d3cae27c3c5206c82cd7e4a50cb910b8c5e548cac9e05ceecfbf78a045ea52e44cdf6f772ceb15b1bcbec443699c70fce4fcf484db6baf0858194924cfc3db75aa874b9f48f9053b865f6c68e501f76dcf7da4fa1138c4481a4a6e61f2a02e2361b0274e8d26351de08ff6612c8b27d2bd21d19f34c298503baf68d85487271c1872afb514fa046003a172992270e6be6802e5a69cb0bd1133f799a808e6b4fa842ab284963b4eafff197230c92b3fe44accbb11cb909d059446f0caf7f3500a53eedcc5f37f6c5998391675eba62eada12afc4c99a818e8f060306e0ea4e4b7a891aeec70c507f438685c8b470171717a0be375eabc22e0567fd760768b22f70dc750a99e10077cbb109c8e04832e6c4b0b6f5ff6434817e0bb562a02426c8da5e217779e9603ccaca6f1d6628f89b0764fa7646449c9ae3c0a05a52b86e2b1c505f73e92d727e25611062db9f100fd2c25e3465df6e49b0fecfa53c464d3a054a204b501be4435d9f5ff05038a27ce9aa0d468d4349fed5c4b1374c5fc25e3b8bd8fea4d4f1b5a858d757a0c6f4e71183188d6e532904e1033819e8ab5a8f83f396dc49f7b6ac3607fc306067b5fd362dc636292b3b7322471b6cdb8589eab7eaa9fb5da6133d6800a242c483206b9f6415cf157119e9da8567badea096b4f1076e8f58049234e46b017e6bc3cd6a13e1d6070d3f3376b79c6bc78e22d18567ebb8d574d323d0a4524e4ccac9eec08329b014fc58a66c9adf83df072259bde28b053affcdd47a7b4b01dcc2d189b6f8f46839fedf752d22c6ce33669f7deb14ee35b2a009b55eb9f775dd0c241a79b3103de5983fe0f0f34e7acf1e34deef4839c42d6d8844dc42795efcdd3c0e88d201bd3ff95f7fe0eb599a50ef0c97053af4a9c02ee3c6ff5b5460c973d873095b39a63cfe3f0fb437aedd13d16972e43a4877b3849263045b927b95da8a1fef19a84a9816b7e4fcf28d48c665f25d68690bb7d40e5ef13a7088ac2622640a5c30b5c3c05fc5f9646c68f0160af87d46025abc13f503e663ed68d40a54e0c9dc744f559f1f4b30ff6e002e4baa2d7fb9724ea4da296f30fd2fd1228a4eaac7183740209902b294a85b979c9fc4ebd7b59a4b45a58c550456e126a2fff4e5293a1480f1731654d441b54826bb801e9203806dafc72671131d32307b89c4d9db870620c2208849cd62d86d1d7d3a6ea067a550cdaf53d033a19a2ffa1e40ed2d157bad602ee339f7c3d024d5a1e34064edcce64b142d42b2f4a5bd94da243b6657e3ee7dab7991285d77e269ed7e44ea63c3c06daaa3d861e26f89498bce52a080377eeb447ce341f7480e83e6ceace35a4fa088b4653392aa643a9d518a179a8b45a89ef607aa70e12397309f3b378cbca91c2a208979733f6c731c651ff530963b49a9395174995fe64a49a4d440f705ef278e0bafe2b447840cf17cfb7eaf9d258c0564f5c7269e2894ff82d56ef5efcf6c2fcbabead5a1b70c25cbb43e021b5d3c606178895973ecb7a1f5ae5f20979297bdd7f27c25ec161296703819f00d8a4c1ec6cd8d26bc2673397de33f1c7c5c492033d60cc5c128e78beacc0fc3eb82fa67dc99f8aa42ae81fc811a61e4c0de6d32a2fa4ee20bd299d0f7079142bc12ffd965cad5380ad60bfa1e8d33c47d4ac050d964e19278ad7af213cd6bdfded81660a14d50633d865436a221d60232d314c2fed1523315e0b6febb4782dfd9f3b82dbc02280937c7daa88533bb105b9035d91c14b373c024d0f624401c4dc69e75644033c3a7d4cd36a219fe036a3b472887c87449a14d81381d582df13a90d0a4b219943e7cbb55bfb5f97d1c97b244d3e40cf163416d1bb83ce4b6138e0e20edcb66cb78a01b65534c02ce6bda018f9402266716e44605b9fdd8d9e14939f5f149c820f6eb8594edc79a8fc603bbd7b9681dd7cb516ca32cb849c7eb415b897269fcbcfdbf1bcc0b64466fe2f3f20dd0585ad750e62b6af6282de3d90d7e278562d588aab714d0f3b65ec4fb24a777c7613ae75b2478d0a619bf0bb8e8b2aa081e4743ea3f3ab6ccde18705e0e001f8f209f396643a0ae5b284abaaada4d0bb199440a9f7b5ce8ad47eb381e548e08a26a3f4f22b029adfe4c043a52ec76236e67db4fe7aed9261d4ee1fac79e736f04d42f7c37e5437c7d60ca91ec2989c9cf5de09ace269af368a1bc6331a3093d5a23bed34ad6a3ee457ec39d737a630fd31d3730707abaaef1faf069568fbce50dede6b4eed165e2cf5b09f66b65fc467d6b9951c0bdcae185ea349375af5ed4067211f07f96cc715912f7d6866a7fbdb42d8ee7669017473fb485abe655f4b4834de8cba596bac3e96bc6bc5c2485304f00e537d6a4b4556aded01942e0f8a86aa6d4fec7e1887704fbf3a9ab594888b00d07946568a7e539e9d98d42632df506890672cf24fd23b67bca8ef8649df12935cf706fb6d6dfd49ed73219fbaafc310ee00ab983941779a13e0f1c5c6b606427f88f008a9b44905f9d2289cecda58f5567098ef53deb89becf4766ca1ce5cdd9df37266adf5a5f8915dbfb09179233b26a397c83bf8e03c338921bb183f2f81d7927edfa682d092f5ca4c4b29db5f038c038ae001cf0bbba988fdd2bba1ff95bad6f4f12aac6ec7acfbfd349f50e3615ba1a5aa223ba697512f829d2729e610e4a989f8f015036690bf0905fe1e8f252aae2a9c6cd567086c408244002cc5b83e32b24f44903e14d8c8864d9850bc8ea36c63eb704e0e502a821c5942c0a7c75fa80444a16ee08e975c18bb3f66e75543506ab232c615602016be423a09c0c3ad08623c065d7bce894677c25de77ec67c19d911392f0f54ef12728c759ee3c616403eeeed41784d3bec45be798f01fe5606fdd31c77ddc6ff8312f60dfb77278e5495d2161768b1789deeb1e183a8b7aa969d5029cba272607e1607580ae250d57d79d32f70294f7aa7ffcfc5f2f508177044fa1bb17383b7488609e45c38092ee25941d9ff1b4182b9b61911e75f09eff9ec3b2fe3907b465697885bda99f9f42fee13ca815222f7200d837f6e11d9f77f3c8e5f6ada5b197cc873945fe4bad9968e09996cafce4b05bdc86354d88f5d1b8de85d9fd55971bcf8d8a30e4fb469bd787f80da626f3528d3b5ef822bd04253de64660461bb49844a8debad33f5407fd892936d3042d3af52a7be2f62189af3fc292df355e4d39d0bf227f4a711375aec7c4352df8a0cf2a6fedd997f0ef27266232d663523f0c06917e1eef959f2ce5cd1cde0e52cb9a6c89e0393361a70b1ec4d5aa65938aa9fd4fdece9b23eee2c46d5a47d755f537a7c012de199ad28f91f375f5f7657c90f079a8305cfdbccf50a290aa20750d7d30446a24056504841e54d6c3bc2446774ac89fc55bc445329b5723ed4d6d764e40f87e9d4d9dfc0439113178d89cb4bd1b859565cdbeb1afc9220f5aa9a87b643dc9830ecc036995e5af30a28bc7f119257e8802c444c145ab51d95a4af2b03c5f1a356e3d54280a791262735a607c33134a724f0e0dee48087851f8fedb898bc873b3168d90939111d5c59024b639383ca65438282c6c36c23543290aec26e403916d4ff7b4a14ede6136fb6fcf329a2dae08653ab3a6498784f7f3af7ad60537339f74d8e8ae1fd530724720ce99095e048a851f0d9e2c6866aaea0dc7f81b6793ecf2a9b1f318b057a495bb56614cf64bd001bcb1f7e2b5785eae7829809d5d8050c92a24462ab066f395b92d22ba3bd630e1fe6867a007606387181271c36b06372acea05298ce55162b738738f68f8a7a5822f818ec885657609a5713ffd814a7e3cc967da56566e07e36486ef9ed55faab7d178d22b0c5af33da67ae2494ccb8aae7970fa8c0fc81087bef975fe313b374c08978fd8876074afaa01446bf0bad454cefe9f57478e3115543c5a6209210b79bca1b231e21e3b90bc9ef77becdfeae10f640d4fb7471ac17c1e11611148dd0d257ec53859e9fde15aa805600cfab8ac74c9898c6fb519c9d31bbd5e1902f2e108199258dba2ffcda21c5924ece63d7db1a0e185578b63e3d8c38b2a49b07172e9a5e29baf7867b2ddba7581defdda5e6df85887f805488c8f677176d3d5f5e6c16d3be4133563448cd2b5bb2b2ad9bfebfa4e39847848a4f2cf960bd324ecb9159268d4f6539a88fd0d214c79e790cfc90790eef7461b8d7edbcedecf6dbd811d62812237235f621c290bbb18d47806387ec31f347d3e80fdd59b3ca3f554338a5dce4c9983a7b45cae5f71ff310ac554e4e30e3f40015fb5440d5da12e8a6d42f041322d7d11fdf1b7825a76846affecb2cee1da964e61246e19cff78761aca7a7df98ea4bd790249bddbd3e81f96c7d995e73f9ad4b6f137af33788687ad6f8b86cdf3310c4ffceccd14b8f171b0bf7143093c3000a544ab2e847057e3236b7f1cfd4a8f1e6814c79c8651e13a1340aedd5f95a650ef2ccb40660061dc89ba1f5882402ca080c58337bc9b432d171b6e4877f76eb732ff36695edbabb30688ce56083c073eeead73d476735a5a3449667a1a75dce2ad27202596555ebb4251cf3e7212aececf7a3500ac388cefbef0082660238941737c5c15b9c578e5d9e9998652ee2ca1e92f87eb075293e98d67afab949b0581cf234fe0c68697e3e94cfafc82566f9b4392832c0c07839ea9ab3b2a88cdfa41454765ffc52d80b2bc7c8a68b147814dd36370e55c7ef898022de5b7ea078b8290d2f4100b101ce344e8c324027213b6e133f8c9f533e7b9495dae12a762a1924e7e73fa3fa3b6e3ab427df58af1003e5c30f19c19f7fafd73deea1619ce5573c7748a412b69f20fd39de2c0ef0e9443ba848a0817315a225308788f4cfe2756f9d0c3bf729e96ae979852a059e44e820778901d702c0818e6633bfe52f267c3813874c762355c2276be64c142b76300ba9e5cb71b1aebb10dde9a36562db510f1b2ab607b91239f45e05334a6474b5db612b029542365e34c6cdf011d63c5b168288d1f311ba13977f5b04d6b41c84bb7ae96ff53466c8f6133fac6ad525d86af100db35a18a8a8462388c75a0d39befa4553145761cef7259d5e1b06746f85d43de25a37c7379c35dfd4944e475a26453d87328c0a79fe772a23e3b2b08480a8bfe0313d41579718c843d8aae6f4c994c9977b3b6f030016daae3e0b957d22ad96399f776f8ea18b8abf442e618e1dc0b24284462c5d06e687022176af8c726834a9945652676a0d705b5d7559a45dfcc81d2852bfba18d87caeaa822f8c21c5207a467724d34c03540c1c733857bd032814e5a22a431f981339a129237ce623d7daade61fff4e4501207dd540030f6653ee783df04ec3bbcedc5caff1ef3258769c971ae4d09df97cfd20090bfb400121c3f59ba56ef8ce1a596fec64a8868cc2d8f08ae39b5617a45d2b0cbf40635d29359a90c5089484dcd4571dff5f959fb82dd313bd3b9ece0f7f6d789aceda26158cdac6ea06c6df0faf4d641fe4b28e2edab2839eb0e457b12aaf71a69567c3a2fc4d79fa1d8e1fef4619070fd833e44d4e90253738f71aa7c89a098f4d504a8857d537d7c1a1fffea7983218ea71adcc03559a50d9c35b3f6d9e52ef48a896e79327669be78d8132cfda94e360869aee110a0491279005aa79a56f36833e18273fccf9de825f0914f9333692a3650c62302d34cbcea79d8a12e787dc9f2fdd350bcee9cb46ab3377217ab7ab05f4495af5bc53ca556c6792273fbeb2af506b936c6905c9c0abe4aa0f71525b6995bcff203e7d1364446bd4228e1b12b036cf665467059028ac9aeabe010bbcc351d9c6f10e689b6aca5fc68370d7308078cbe15ca22278549d16910b5a1081e7e2213bb0c92aad2ae989dc7b67daa8a33d814de63b06a75c39de57e212bf9620d06412b9f4b4ba8fc05d9d04d91ea261e41b30d2bd81fc33c4a78279049421aa53b5a5837f347afba782ae3709b0b18d88b882aa2e5d2a94a32b7fbb940b126893481d81b8ad45a3f8e511a202be4ff69bdfc39350e4db84d42cf8e57b323eee8486d053346d65d1899c11590bef0c1888547b16b12b0e737dc85502c0ea44c561129bc8a144769cdd971ac8b0cf82f07112a1e939dcafc36d7bb3f228d204f304a6527bb0ab7210be8f11b0359258bd9286d4611904c3a5acb21157f9dfb30032982edd94b269113a5ef8febab4497aead23a0b08d8885637ceb8c5225fc04d50b2b9c559a57607b813b548782582c611505a2781824812adb0afa9f47463be122f140bf73d1d143ae9ced7489dd050b39f5708004b5951558cf55bdc012775107b972120614715e2729da3be62cc171238812e8f0792890c1b83a6cce2dc269529ad3c54b4bf8e30175174475842e9104b2b3dcdf4533c354118a59699119bd63e889ed05e9aab8676df771623aed222c665c50474ab2ccccc693727383b2df6e5c9fdd67d842828afd5521a0163e616020078a408159f9dfdef5ceebb1030405141b0d2d7954a41de28ebfca9d8beac818a4bafb4c8c0b195d04e9676fd27638a1036ad66e444bf839599eb366286a40648149db735a4ce2b7a5f6fc8c2934183230f99f31f4e50739bba0cf15187f8750160c383f0e1ad7cdabe1c5b44aa311ec2b17605926c989eff008b6328c40538871d6264e5a8c374024f43c5bd301569f2a27f09b175c0892e7795f55f6d9f74f566a01dd85031f6ed9cb4a9358bd3f402ca494b6e2cd33ef64ffca272e92f230637fc70645e73cff50ddb2431d0d04267b455acd50e7d694d5c51f0a3e03e4abd9a536686ccfcae522daefd6a71f374008e3e3f510c9e631300ab7c26a6a14a2e5a2a2342185a4784ec17dd4fb26204b4119ddfb7ece73bab54c80236f10565a40616a7dba762beb1663fb7e81b44ceab939f5f3f1aefa5ad9a7d227e1e1305c99a3eebdbde4d363f1f53a596baa42a3f1c7ee2d45254793685e752918665286cc71fcc037a6471078100bdc5a7d0626c83f3b2f2eaff683f1083575a023caa1debc86cb8a863651f3f2d693ee12448f89e7f75e8dd2cd2353c980561f4540d04689dd72e85c14f9bb97dba3a9a52a7f30d7752cf298f929af486aa5e17df63ed54012b2412c40a4232a28df728f32a11a5622096170db8c72143ed5c2246d2390f088649b039f4afa5d1f4192044e63107f0c6d9e3fed720ed087a6684f951a5054e8956240c7be3a1cc78da6001b975e709e70e72467c79a99795c2c0d1587b0f0ee970c7966b323c4d7c1baef6924bc7685e0cafd15fe11adba2b04247e2d40e6ddcb743c057c2a4278017e07547d9ed012f18ad06737a94927dfb27da10ea1d2a3f90be7cbe17dcca9c85b0c63222109ee1984a58fabd5848348f9ed23d2212472a3b69134d576f7e0b263560a5232aae88eabe5621a5d010d54e0050a3cf590fc22cc32515894c1629571953058bf5bd910ce12e8e6143e48970d4234af83a1c1e8aec0e4a4453a1f5b67fe441cfe5c488e5c8bc2d2efbe113e98e3456dd3603f3f78a0fe7050ec17d9923e0d29e34d4b84bc5a21c3e939aea75274221bab86bfef828fff494303bb6741a3157ee15a639306e0643e3ad6fee6536da4a7eeae22b6a36e9de17ac33a3b39e2366a063ac14aba2c9fd27e3179e91df06375addf76b01ae8c47bc07680a4d3416d4f0ad9fdef285dcbc1d26c49e2bceb1f00d9dd1916dac7aae0e5afbb14cdd15930fc3b28aeda2a13cac284ce39a0508828e5e377bd9f0b1b0d3208d9b0bd2934f1541155e1e03be825aeebd988f45d26280d10714e641045b7ee1f80f5023f0daba2850f142ee3e67e50272ff6b67d9cec62a0b7f8162dd9cc4c4869b8096e2b26c1eab60813ad467dc2b70b02e62be9748f46ddf2e9e030454d18ec1d6afc01cb90fb1c1832329b15c6b12b48660d29e7ab0ee63f2238780731af491c06a250fac22fc105c4bf44f78f2507d1aa79ac0b9a816d98ac7e04c7ee68a13406de709952c307e75f3dec102c259a1c2a1be8d5198642b0204c38a6e563d2b2c85f1c304a02fbd000e169bc283de523d1206804698ebd563dc6c14927dce4bded491bc9a8b0f6bdf9993ea5d738d456c717a98e28ab0c82d52adc04e0f268207377721edb141d1f3e8a9d15d6c022c5444e0dfb1968a2298fcb01a941be9469876219cd317ce444e7e11cd2437545032827063fab511b26365ddffd84bb0ee20db61b3e8bf589f193ebcfa57d31c11cd69b0abe2ef6d3ab5bb4e956eb8b0102753b0956a2f502089fca26fbde4737210e188a833391dcf47650e173ba84e77ceee924e0e9bb6449236f00f4844ebfc2477f2da7a59045dbed668c73e7286e42c7e630e7b68ab5b7a685234dd2a323dd2512bfdc54f4b7b76cb347697220bfb726e9033bf918722444a016df3e84ec593cb25aa1673453660c4cabf6eb8449c7c3e43c325535997e17c40f9e2d662b5404c604887f19435784d588a1f2a81dc510212646a3f36be57e5abbe8facdbc0147ea0ebed9eeab005f0f8dc0163e013fa152088a55c7044d6e0719bc77ddc5294751d2e38f1475e80d3f77f664307422ef3242f780ac399aabcfbf1fa2d5bd7d9e703974eea61ef9c2ce23c656edcb1b4ab700ae02bec07b3ad3b19f98e06edd2cba5584ae427f6068d6521fd529fbaac74b27985711fb992d8be19490317ec5477bfde92d2572f7ad836a485e0bdc50e94873dcc998f138874783563f917dbdd65defa669433ea34740f5394163a0e5a9511913d8755b9ce3da8e2e1495faf162d2a4db979dd53e4bd71cf2df66bf0a660041165e1a7ee166d842ca4c11a3573ee79d7c3696897d10d7226fdf499b3fa6702b5f513021bc100d47af22fa967dc305cc181b30401eb5587246186c3b40227720231f2a14025b994a7dfa5e853eb073b636172db71f05879adf1dca652a0ad71ae492db7a14b0f948fd43f811d62c316acccebf3ef5abbefe8deb317cae098e5bbe0178fe6da339f51c812688f60d3d2ee632d950b4bd13ba106505e8ecee164657234e19ff636b17d2112b0af9c6ddc6727c8d16385c5418b5ac1e8e7eeef453dac496cab1dbfc9d40b3869f328d3d0a29cc191a58e31eba05779aec2216b4259d3843cf8db56b24b6e9553d48a5f6f32aae77c10fca01bffa2509543156d64bc1a7771ea46a67a3a189f326094fd7c9199d06b3967ffc6656ae1fb3a8af5d2f637179fd93cb725590f6ef66d3d8a308c6adb04b37fe1612a5ccf90b8be4456ac5490c7b1a8a2f04b857ff7b5f729bfbf8fc394b171fa7cf192f3ebccae60009589860c188c3b3e989b18cfd845c1cf97fba0896d265952eac1a4692d9fad60b9a854e393c192a7392f0accfb38ebe397563a7d72d893cc106fb98b0a64d624b118217da9867abe5743b8309978ef5193b185fe4c22027eadf493c6c429ff1142f40bc6fcda07f777c4a4ea8c7559bc6af3af5385948282aaa1b577f1754bc180a0be4e6f8d45d851afc181a7693a3f8ba6e9ec43f3db9f6fba2281e99d9652a33ae47488e11f8342aba3eb244f610c1cd5f1fe4a8aa7db8b41224999b37f44a488971ea44b2bf18466f962b3a0a7c8b1acee48620f1fc3b39dfb4f80f59ad07fbabee76fc0bf3de0538f78d5d89f7b3790fae4643c43a725d9ea4225fe2f66459f10c3237d663b5a093e0f40f857dc9f4bd0eb8285b4124ff4960dfb20e6d696a925cee3e443afd45a6f9cd372a30b69e4cfdee27ce0bbbee1ba456eb98440a84b376e6bba6223ed8f267e391b85ac5f7ed8b464faae631ad4e9eb7ca75346c06a6c25501781609c5dc400e3c52e53eaceaa971648237adafefe2fde63f3f2fae0104e1938fa3830a6f50036699cae8798ed1dd90cc078fc6801f21ad4b297034a7cf7506125e614c5889a1d67600df372562d0e9d27bede14da8238ea7965f7491f3fb06159e191c290d115faee9e2e70b9bec22de4c2bc40cfb9388531417b327ef244be503aaee7d7c173e204db6e18e89a96bdef1ce2a4d36a21e4591008569e09467b3bd4e0fe3b51379c996fc5100b71fe645f4bdb37ed9ec0284392b47540dd9a9a3d305e3734fa27be182475ae36ff4b1e88a3c6dbf45b8104d6008f969b48980d832d2a948f76fb811fafb8a2ece347f2421418726d1cec95c774c6f0728dabca7725500ae08d816f5d914ae361154fc88d56a665065cb8b4af3013580004c82ce2e41357a0e8f886f72170796a270211c7172ab378bb6132a03577a0dabca053a537bc2d3f0f8805d2fb4dce583a5874ed6335ff43db6a631be180d529acd69359a237ae48be8e88e276c910478ad5858c6d28281ae867e8cdc6a98d7967062889288e4f446eb72235ec14bc2f206420eda55fe8b092d2931e55846a30a42d8a1612a36d5c606f52cb39d4e10cf2f9079412203c558ec204a982beb0aaa1705850da16b2ab79a698b44929d9c05c581c03f1cbb9f0a9235a66465c77ddbc9256b259b7749446c6c11e0fd3dcc118e797b20ca3b96f408bde366587476ee7197680c08c190b6ee2b595574464e9149e77b6d7181bde39249d24825509f0d2625db2ecc4b81b1bf5a5b73678975561eef5bb4ec408c3ef6148bb24cf3495862da2ef5abe5989e3479c42187353dc8a31100ea60b670cf32001a1332dafda0570c84454c7d3c20f0ca2da1692c7bd6f83d4a4d2000210360a83e89010db8189001f15b551584c408008990bcbf3ac8669c696aebd0df9fcc6977f83bac642872815d046fb12ed0bb54fbff36b5def0f5da2b1f88577eab27653e18459cf7d951d2b740bca2813e6925ca83fa088433b1629eec644cd5734ed60c5a0fa3891f0d7a60fd6ca552f95867ca4df50a9538e6c7946cfd2acfc6047bd27c34f721bbbe9319267b94f45670c753ddb210c68fe6d7dc219f34c5ccd49becb7404e1e504177829e49e8dfb90409eecf46de250bb8460c67e415f9677a4e482452c565fa4dbfb4901c00f472d902386ae1d1fa6a53fa3fb5941f37ee69d7c7dc437d8a06a5df2f45294e13f8e903c4b2d36202bcc4f043091c447fe9430d70bd0d8f3c5532181c168f898df5d89f5ac2bdd7c1c055cd2e9cc4cc7009c8539afa3843135f90f8413440f81d788934a50af4f17aefeba7f37a3d8066842c08ffc36179f733a2abc8accd5ee2f6f9bc904de6d879a43338b2aec69c143f9fea17303efd4a2bdc0595eed92d3464b0d50108d250b34b44aa395654dcf5c2bdc566e64bcdb3547b965a87e9e3a91885a2d8b739d033df4555e21712f44853c23bb2f3320457b80569422883a81177fd6959dc6bf3c255fc497e8b91222a00432efd9871dab910e31e0a5f66d6753d1784e621693d4dc01bdcd7058555516524d3f6af3da4795b9863db4efde77071e7fa5d395c8c6892b1292e6589b0db04146486cc332a66ce39aa6f2a9c9bee77f2b3752af7463c1c9b984394a73bf53c574ce34b722a504680eed9fed810334c278fee8dc0fa3a5a8c718cee516eb3212408fc5e1368c2d2f0381a184ef20f3c8f3727bf6fa39ece04a1cc839a51102e9a96d247518cbcc92d68cd55285d24fe3e950cd052d2f152d98428f399df0fd8060ce5ce6aa85d695f5ae94cd5267af3ac59386119e9d346114fc9f3f82940ae893cda72539a62eba5ea7dbe999e1c69b9a4a6af82cc4b517701b4986d3611abaf207380170b08c011baebc8de8c3f0b1c0a9ae396a63bc9a7945275b6212e16178e26ad17df0bb2f52d833552b41bd0072bd607b5e91d3787d79788cce820e51b7fb77b3f285526f7ffcadd6b1d810baf5cc61860d7dbea37a93cdd5c738b3734bd980c50067fb6d7ecdbe0c46215360a6aad7c03904e79928a1a2bb05039088e1b2b73680ab5e04a39a707c881e099cb5cabf873cf78941024fa27dfcd234474600d5f2297a802a2a5e24bfb122d4da3204ccfb5a0b1debc728187a1d16682e23eebde4def1f2ea9f3f4b50bd35311569799d8e1d02700fa235c25b1d27d6dc3090a8f71c3f077b037a6a2935f5b92a493e5ad741321b1477b23c6f0c15d448a02c34424d41259ecc82907b0cb241ac76b619294c30b0ccb495b524295398d6db929c473d92ce9645912de5874f8e8047c16e584d046a07358881b6473b7bd8c5de35c3f6a2bf6fc2145d80c29b9e53892fa8a6a2ebbf50aa514ea7ce7ba0e3f45cc9a3ca98295d311cb8a6bc3e49daa2c52b425c52c4285b0e6897adf26b5eaf744aa1a5e5ed23b855bbd331f9a2d51dd6cf9373b22bbd2a1028b4cbee8815421bf110ae9c5be4a9649abf0c1d583b4d90a25bef15d1f968f05cc51bc459c13ac7bda2ccdd472e4a6bdeb3a1497342bee97574c986f9666e90ab81d917518201f7c6b2e1c1d366ca2c08f51df318f2aa00b121356ed658d6a98ea517bd4dfa0af01fa6e3faa0d4d22da505e83dc8ceca232caa796f67a2a9ba190f7144a1b892320a115a6d74d1221ea15e34cb1957b8771ec1d3c686766cd819944cbc1f23dfeeb0e7092ca8d4b23c575c8f81fdc008301a48e7e3c9661ed3dc54f02eb208d159746009aae5e4bf1ee7f746bc357a9f530b9305ee4b2aa95130d7221ef15d5b14c34485555063a605eddc904953c14d6cca5f74d46867264ab9239d4898c306d141d68dbe414e741bbf40cf37cb5499ed95e6e67638892685c68cc54d22fb2adc25e4dab71b0ad5238a4117628afaca9cf993e1e2de5a84b462467fa706327d496f33f43c4e5347619d1f4dc32393fb86e09369af5b8c9e25950fbe2ec69ad69981d01794b9d41b34412bc30fb5153725cbf074dd3876680989ddfb220818713fd361a7852c8f6310a9f3118fa614fd2a446aeb0177e503abd5f51ad4bdd5cf2adfa4d7cd1057613936fc2e9704a8bfb0a8b1e78c5117793a15fb7fc52e5eb18d6d10538642b7eca7b8170c7e773e3c026d61c732645f839258350de99c079ecb0a5094bacf87fec3b1f79a27bceaac56fa4e88a7bd67ad63fac55f6f65fb5cd8f3e4b07f25fc7049754af9fb3955c3b8eeaa6535ab392d65c87e59b10d77147a7c508636650a5d659ed579f1732077360f3f0c31b36aaf22d380a2056d6912a90c521b4d72992d76c4e74ef57955cca8fe856becc60b08a8fbd99d1268d71be5fc150e8e9a29f3a64c87b248c3b7a5701e3e08b930340fc35415a0ec6a8f662a0876cc27a453968e421ffe22013aabf143943f2c941af925792dc0335b7f316ca961f3b4aa1fea631455df3748272baec158fe4c67d3753a16f29a45f0f5ffcbc7344ecd48741e58c32a93d2d368b854c5065b2b3d8d1cb02e45ad3daaa76e5fdca2f2ff3c9a1e3f783cbd68c05efb8777feac30a98d4f73ca552aa07e8da216aa91c6aaeddead2d91d70a0d9c90a2f17bad9c57c932029c2892eea2792d8352541728fd880bdec3a49afb0b4a6f2067b0429c78264cc19baa467dde95619f0cf380a06f02b868f31ca08b0bb5cdcad102c4f6988f75845ec46aff0e86080ee06a161015e63479162b254dbf74b4136255014b6ca88872e328fe46acc9a6e9a92a108de36c7c3aa94d32f00e2fb7c7f2376c8239a94f0dc18666852dd885a7a03fc5281c99319c897bcdad4b41210e9eccd4235804497f2fe24b34790ee169e5272475849f2def9e4204174fc4fe7685fd28296f693abaa1b624d6a2497ad1d676961a26d32f060efd0e507e4189d119a3c76cb44d479389db54b9bac71439e935729d803f494f65fa67677fdd582fa6430f066f07cb2d8da30b8175e0a21064acf07539b5e54bfe9bcda23298df12f258fa1e07b1567aed723dfd2dcb6ba71df1a5b5b83986749d5b0bf1edd1840a6cfc70b38d6cf60c702cb9bc87caf54804d5a3fc3560ca2802225ebe731f2f2baeb468729dfbe68c2e9a1350162cdd8153aba299f83c0e60d8cce77d77dde6bcb86e8f13690adc4299f6c152b490e9123932719623b4913e7c7873799a3dbb4963466db4d59e8c9381c31105d37da6473a4d2477b3d7e8821c70bac5149400f994c2f4d7b114b3e145da9b3e8cb7e15d5640727c2f925bb9f1da2f43598b1599081dade3aa9559cd1d476eb816e5a61f339f105e829a4213ee9bc8fd2633250f679e9a4591125ee3b6806de103470fabc2a810febe05ac050dc10e9428ca881109fd799a64b9a2a8ed835c9a20fe5666c784b5d5fe45fa850d4eec51c9259a38b5e462d9905da42d7066df69048868fda33c367ebfbcd8d31df8aec08e378e2108448e53e3584b375730d3f8c7a5d9e740a0503d65c348172b7844e8a83575dd7223a9bc8d1f60bd305e993e2e3b7cbed37ba3a1041f3909428815518dd9f49a2b375bc13c030303470346b9fd56d78b3979c23b37683249ba8094b79a6d57597059e04201eeaecc0af475e2c76b6316ebb21601357a0ca9b585aa3a1157e7f75b87ed55ec10260da13f400c880ea3f08a8fb72eb94aca23066fa492b9915215aa8f21ee0d01275cd59d3a67e3cbcf0257cc55b9addb16cf11e1b52b1b6b36cbaed23a96a34c880b45b780dc62f9f1d26145c215e2fb5095f4661ac0f113e51aee84a5ebb8dd87dc3c5201cd5bb3475b50e671b1217d502cffc750f338e03a30fec39d101aaf46b38004938d3bde8c5eafd182186b80050babdc5789b4fa164473a4f087bc32ff34fc73486861f9f038160bd339327e6b5ad83db8d22c8559c1d7517c0b6d12d95891d5c8d4d7afb3b9f016f5524dcab84ef539292476628fb485976fc39aaec03cede215c17d00b79fd44c9130d0542b1116886232cae4e142211a5b285322a4ca19ea709c0d177146c93e72ae57407e0af989f16d1f12b26544aeda378ea7d244d5de39eac76b7641ae3273510f0384cef672ab38f893083a870eb5a751750f8b97222ae1de9b095833eff649828a38c98954edb7eb589a9da7f82c92ee572434f47b5e83e826aeda2a0552c3068742f8ca06fbe743c17bf3b053e774c6bb6e2681afaec19543194c95988527bce4a2af11cff4f26b2f6ab4cfcbfe29f9145c06e3dc60630c64b9e53309e0fd67ead79e647583b868ac0643278124b708a7987f12c0e09d62c84c2533a432203ee7c0fb51e635a4421df61a054e2969d9e2fd6793fb89ce77f7a08a640974c333f2b4a310b4e1b337489cf2b24fbe2ec3410f5ba0b3630b9abf08fcc296e336beea1f9d91b80c61cf4cc05ed8cfc1f70e9cfe3243e3176bee69edc7888a910fa11285d1a8c9b45e67fde4c6a3c65c44d63b2c323812301858e2468597c960176f9094a0ba0420890d0a62725dec4d0aa666350b111d128bc98b8147778f15f487427f2898d4de33a1eaa3f610c1da8bac4849e53c90808fa91b814b4cd2c5bd5527797ee85bb101571234fd90875e0a80a8da41f7be3e660ad37ccdc8200608a48cb878de7ab021f1cf9d07113f9764ec97a43da0dea149eb3219d40acc614e460135e46c79fabb9e63e91d0782235e2c2d251557fe9aa2a6ca7e305d3c64ccf19c3d3a93698116ca8f44f1e899c80da2fac2ad82c5701c682482d57a4646442bb7cf1237f59c9925fd0d205c319a29c7428ffd893de8f275cb6ad780f400c4918eb2061893054046461ea61021502bcb3387edd942fc37e4f2579b37d4b6eb8ec2c95bae56f44d8526467dcf8d8818cbe4c0c87f036455badcf19d3027d485c0f9015681fe401dfc824b93001ba11a3f8987d8b73ab20f8d8066034f4b5130e7fdee98ca14c8fcf31045b17ba296c051bca39fc74aa32eccccdeb01d300286d584c1fe7299dfd95f738e15e136d860abd3b734610f65ca539254fe7d0fd26089c0ff7b7f750f801260272f166d3282ab439e81ba7bdf46994a7e48f6e4d62af0b99e7537f3c4e2778148dc3478a684c556521d576731078602cba2b1dca6651ab921b870e157fe13928732e6eb95c6488885174173c1243170c538b03253e89c0fad62a5f3a0d486ce5962e91342c0c8c530e39a5fa9312debefe920df358b81e49907163fc205f5b2b445c51c2a0fa21619f320a0ec0466ac3da2c38f8271ed99377874673585ff40956b7d797ee71e4e3adca1d7f662069e4be26249861f4ac2815f9b2587b968fee46a21f0aacb7b91c3c36058e8d37d395cf2c37c4303b48210e7f1c60039489c892b7b735b7acbf376659c849642807887b4f6e6367688b7302fe435785d6ec44d33348c7239ee38d4c70bf68abbccab6a4bbbe1e2cdb46960191605527e84308c270a8b6bf1e2d09e7a69fcdfab6c4071cf9f52828a5974f07b16b146592d33537f9a9b70d41d43b225349cacdfd1d5106f1fb5d2eafdde8869b65baa532b92f3cce7bbf43394ed559f96353f0417f9dea44c515696192ff755163db243fd6ae53a0f22f37401508395daa59dfe5f8fef8cc66c0467814130b7e34ef65242de74d3851579fe30cab5455750281ddbb7b9e8e65f018194a2be90e571e5983f7d67d15fc69b418599bd1d639bc6a609b0c49034352715537daea81257ace8ec2eac82de375a47c27edcbd4b7b04504772e04debfca1c91fa1d1586b7c735bcadfc0cef6fdb900e7ced467614a3f00929a3f0f308c053917394c55734df98678291125b8cd0b58e46c46568624e21e1d57613033519626b5bc2a020e71f98b004e228c2e8d6c5e31f5e740f281084fb1e1bc02ae7b85b39b0c5640b6734e34a9d4432d7848e8a5a478451f524368cb8c75faa09b8b119e15b2d2f1a3d584951d030dba5d2eb4d5f399609c934e1b0f86ed73cbb925b3e1df843ea496ab80d9ee1d245ef0fe21e1f71781ccddd0cceb60cfa80ebf0175c42889fa4d8f063e15c6ab6333d95d11c5418d0241c20815c44789e286a0d952677c8c25c5a2040aed89e6d83837d96dd0d91ebc5d1bf5fe5a0dcda219d78266e2d176423d4f34778f18fe40568d8154dcd5f4999d41b594579e0618263ea45688aa1d06b802c84ba13ada5fca4fa295d1c2e348328e3a9564ca431003ff4bf43664d8999aabd1560c8e49dbd95f5db23606dfe23e98e8a0b4b21cab01764fa3f31a952172c1313b84566490ab1cb74bf6801d24c7bba2a2c7fd647449a62785e844f5cf4c45ec1179a99e9958f74a2ac8713c2d6285e481304b93542821a3638c29bc5f480409fbf553134db5e680221e723bf67bb601755d7f1f8be320f3302fecf13118fdd9f9a5734b9ae38b0601b59f07cee7a2bbb2781626c2306736259516ac1d2e551416db81b5d6ec14a6b2bdcee1aecdcd9bfac2933fb8c06ebfa6f9b030ad010abcf77b3cb4615d9d8d45654da72d0e49a015af01f4b65684efd442b8eb63751d0364ffde5aea04b0110224608bfdcf1c44ec073e88a5e8587316f79fc665778ef108748a2e4bfc4a4bedf10745d1e60588a8e1408897cbcec7b41d10911230031df07463918b0b3591bfb7329973ba532d0e3f68421ce2fcbf24ebe81e37846d540988d19d0503d98469c31065ade4a41699d7c489cf290895b39f5f4cf39fabe6ff0697c137e184683d037b5405d9f372f7c6b3f0b464a7f5a0b6be9f78afe82e8cbd7728f45fbf217c415df2d8c4b37940bcb6e2679776e6e4546a38320c8b897bef97f2c76a024eedfd1dad3bef816b6e20ddecbc50a99ef0bd0c9a5aa1891d5b28186ed8b649e317f043d7851a2bb3eabe42f79685ad6bf1549e2ccb414c219a3a0f5bf938f385dc633b56f70e2209688eed9dd7225d84f0ca43478f762aec0252215f3f1dd7ad50e9a9863ddcfaf4b125d3cff3275fa3b0bed56519ba2ab664c4bcefce4f2142309a5394ffaba3dc06d6df14243d5105737cc9b4e45f19dfbed0d6c0240221d225a8f2654697b57205bbff483cb3fcd3933cfc8197dab2668e8d61f9d934ef6b7c86655c686b9d67ede1be4c93acc42fd58b19768b12fe9bd4defa2d36b05ecd7cc6d1c88848e16f93b6caefae24ef258636fe68e9191873cc2f20aae0387dbc30601709ddaf5491882b6c5554ccd3d93176f2e6e73a90f0e5b9145c18706bdc70f79040b753247b4a971bafbe8e38aa0290892aff8740be6e812cdc440fec6ce3ba65486d2adddf25b7946ba96f9fcb7239f8d814694fde459271250a62f28901ec670acc04e0efe2f8c52ffe057420b4e5ef3d437b4a7b63a45ed489222ae67bd7f608db1c64a5dc209e809fbfef961136a18f5922dfe980ef90a2a1bd2dc7d36784e082ae6f95b72546cfec59ad34e57b5e9f34d182df0c48268490f7ddfcbb00d02b1d7fc1b4da3b2b0c1571ef1b41f77b585c8e0ef3310235cf4047a6b4a3a45ab4b846906e978daac46f888f04e641b54da1c4ed0c376c4efaf6034f90e3dd2ad8fd55071e9d53bd0ba620c998a420b3aa4cace69f14b157a9bb15db36c83d782d3d72f4111c0a509c513ec76230d749751b4995e539e5f6891ad57d8a1bdc4f3a49c9b484e146ea992839b886e05ab1916af2ee2f69774e53dc270afed43b038c349d263d32168880c2074beee4117e47711387d9879548459efbd26739e5c4153137c126c4954c22b5a9be498421d9f17a514ac92ef6d467a3dfb60e47eac912f85eaac91cbb77d14c2452a51473fbff6faf22dc906bf45dfbeec8eca663979a05e803582bd553279a2d383516bbc0ec8a5eca528b96af794a6f21561bf34ad87865074f51a5752247a0c781a1f158bbad314c9ee38983f7446ed3a16967e6e603ba1fb0e804b3cade9bf68db43b61fd0eaf1b673fb25049d30df46b5900273bf448f0e63b1506bd20f25bb70402390a46c6903c76f42165916d21a939eff81bd64eaf3fea7f9a313f532d38244acc739bf18b522dc348055044282ab1c80b32988fc361868678f16128eb80e48b7e5dd8bbc1276d64c96ebdacd23c8940830e117cae41244ac1a5c87c2ad70280fa36fd519a293373eb65d1a5d073508df9ba29c8e64665731fe79ecf5c4996d4d1424fe85f28a39a24bb41313cf4bf74ded53c2acaaa8746d097f7f242e96303f206fb5582376674541caf9aca663b26325047472d4f5dba8c68c78c29adb62229c7ad2cca11fe57cfeb6d97e783279a7a5ed99addbfd07a336f24a375ca634fe4ad17c6bf8bde97a318d24e75ea145acf1865514ecafd910e451f7fe80ac277899ddf6fa68218a341b9213b44bfab8ed29a59e90a3fa33d008fc2fb7d76a07b9676e50b2cf3c58bc27febd24d430244e9b2a9f8c7a9f7cffcd863a3429342d4916d2da7ac76ba65cc75049f48c7e42fc5c907c87a0d001f1270896fff6e24c3fb92d2919b0a56ac4d218864d972197656ebaee592e90ecae053a31035ae9538a0811456aedc715a041604668964a60761f8e4d935ca629e14aaa85a9697e5d443bc9937a5549eb142e5a4f8f8e1b721d155cedb28541510798f6941ecc100fc3ea7ef10e64616ed84e55f13473644b487e034dd5a60962d0fa74719facfc505c502e303d54d2c09d510275876473dbc8fa3f2c262459012a808b15e37d9c53773f7f8abfae2dce4f791f392f98049c2889cbd842a66e1ce9a4b9d94306e4261ea20dc4129a2d734cfe2b1a6522e084c4579b8f50a1af7a9515d5c23d107a5d341b68e64e630b366d23641eef4eff92bd910332b8a6821a62a7110e98caba250153c7d48831bd73c4eb17ed0da7c7cfb7ce3baae83c1f1a79f1295cc4f9be1489462201aeb565a68776758fd3583b4ea918c094f7abed4848ab0f4c3db4541bd0cc3a435838901f4b683d54033a00786f047792799b10d624900ae1a533c16568534ee196bf01c2ebb79f73b899e5b937fe892fd34be5639e022cdc5aa90a633e43d4e4fdd3fee9de34e89a90e79196a64e490958b6e9430d66094a86a8e840882cc1e675bec0c96959fc8b39c0ae372bb982375c7c75f8d0a6a1a8adb768386f222b91ddfae5ee0ffa0de7fb58e10ac6f4b32914f94fec85fd21f3ca1a546824a090f3f1e156db461fa49e1ad9d16cd27f19506883620a8bca0a227fbe00290eccae5a9bd6ceaa0797087dca7aae4c8625f8c9e9a52241eb5e7c2d883ac30e3fe8e083046accb83405be8dce81861a925770456b9370bf3d79a1109a54f138ae4f9dbff42be7c339d06f51e1eeb53229b81132940f61c45e0d465166e2952b1b2c35807fd824fe7cf644542d3156ad117379027f8a1747f3a9e4b444571342d0021acc90a568a7d7db53c146fe57978e19ef3b4620c49f78c5078b51e52b01fb5ee37af93759f4bf0671c77c557bf05c6d569746d35b1f37ff38ac6ba9e4033087a140759b6beafe54cc38baa05dfe6028b80c4fb66df7df7c41e8bb3e7a3d1ae37b37c1d8c22a7bb72cb9839802ebe3c5b1bfa5abfed1c6361f712da8321340b9282b3205360cb0f5626161f90b5bc487d62f05feefdc395c48351f904946ccd62c189e6ce28fff87f52af807243588f69a404e334ebc4d4ec692a5743651529af69974da9a1cb174248cb2d81bd7acda2fd606132ff45e7f7bff8c993f122bd4c8d4f812eb8adea143942162e3111e74eaebd8bd3d970ee831a4ce4d626d2d847886f3de7a3215bf8179791eaf93e03ec852a0e7d385ea9b20da5996d360ca5dda5f98289478372edc21ec2891440c785cb598c4df6e0899b8bec9aa2f668a8ab286f01a20d5355678ea0b7a8341abacfc1e3de9c3496d04128fab9ac25e637adf2393fc42dd83b33acf3510e4d6363e949f10f65deb048895798959a364674d3de64f6a42e11282bcdd144504716c3b141dd28cb56a42c7610571bdf41a1d8d1a542381a33103f1135af73e6a6bd46e2b52379047e89f8f53c6b98d9b3e3a7d56107c2be087a59f48e5d847a4d5c8d8f8185e0a3580723aab31780050536f2571bdd9548247ea1fa9336428f4c7245f3a5ea9d42b41e834de8c7a6d253058f871e22b89d4015af08c764f201a8144d153015e5786edd5130002f12f3b65416d028a9b974b5bbbfb9853eb6508de6ce424b40ce615c76c4d4180c3bd854b59a005feefc850395f2dc281b17398e4fca8535eb32eca47ccca703650fcf548a44ae0bda2e5e8780cec4324e3095eb837467c8cc72fac8d851a8a9303c6400563266cd21af62402a483f62df1958fd1ff02463374a4311f3a20588b5205d83edd42b99ff17b4bf1bd0816e122618c19ad98d47dfa132fc78a922892a371d46bcd122f8d4527f2cc5589e97840b79fec2953264dd8313e74207d22ace7506857568aa5193fcbd209638e17441708ff9c80b22809ef65d7fbd7b1dd7a314d426cda17039e0caa97fd1e1d4386f9b85c038784242e8531640680ad81e82606710559af229dd02fcfe29e6e0cc86108b35c61f3e637402f3e30bfc33e8cb1dbcf4361bdc3b06b93c765441df9c56c316ccfacd51f1c0c20cc023aa785567628f9219a0672e0c33b5830ae7ae51e7bc7a7bf79ead82694bea1b17e91732b945b8f6c00778b73609aa01e403c945c25de79f9c8f31eada785425714fb4cacb6e2f66edef6d16fb1fb674a1d75e1a3c1585e0d154f6750a055fc39065d9a5895ec7a4135db399135eb66b34f84202406b254174f70ddf29dcc895f8319d40c1658d76defc93d14c374e7164f615f3e1760f30c1bf3dfbf9241cf12b3476faaa6aa9f719540b37f6f8ab49d5e503600c70a7b5c1d44b9f73350c74e114faf133a39192749c74f17e39e9a825a96a07f15c500ee5f6d4ffa3ca4717d3f5157dadd398a1bbc73f30533ff09bfb3b6e645a43e8a1e2f86d12b8408ff5c8399dc934150e815fa56837f79b4d8dad894bef35fe5e99f6dcf24e98c59021d5aa147e4bb12766d651a0ef5f8b70636cf46b358404e869dd1eb85a32579651e944cbddab998d44edb5daf49491770fad85e94651b371c84e24255caa117166284881bed75e1dc55794296940d04417769ffdbd9d5e416d1fb2cb90eff938091cf9a5cb163b0be5f90131d537a65d06f75e73cbb381d950173a1f8ba9387448d193c0f2edcc990493ee7a623d6589ef2be4531e808e39de029996d453fb8cc308f8282a965f8f12a7a9bd3f87dec431b6e3ed8e55bc266fc5390a5fcfcb4c42faf8fc407498dd1239bd59a09e490dcb68cc07305c88e29ed192ee91f82abee075dc6d5e9772724368da99f0c6b44ef4762aaee1b58ff524260f0207acdc4002f58b5ad32018d6c3eee30780b4497c651ac896153ed7441e89c1082b1cce977ae2a7b81bd6442e72a72ad0bb36cc997bc611882c0e04d07403abbc1c64046d397c8bc1e4da5ad46028a28d6d47938ff55aab75f5331d0244443fcd36e5ebe5cd75b88706c8274410feced4d82b780984f6b1974a5b40fef27ec9ba30adab04a43b783e0f78e178c383ecc9abfdd0bc60bfe49424c0f23cab955c57fc5a68b5506ba1663d28d803219bc58cbd983f52047f561bc4e4a388e0ffb43d99a6d59e39a3db82ad1fc5ee64702a3dd79c0bad6c74ae4a63127fa241b9d6fe7541db57e9f6866cfe48af87d04168a8aabf04ecabeb0ffcc1ced0acf7cdd81d98d82f1da55a50f2be1371a7459921379ab4bb7ee61114226a6e1f8717cbf5575fbb6320daf51cd564e4850f212d546597fe4ba15bd524aa48ea60d02e1de081db1d09d655bdf81662f229fc37135985d156e63f78cdb81b94f7ae4b49ccb4a4f8e24256b59f64c9ffcf6c8c7592dd8f1c76356106e798c31abcdcb1bfeff8248653e3299ea5c22faed6beaad2ed0fe90db97a5b833f00800262445d167b05f5ce3300635be0dd0cfc1ea0ca7486cc5a0eef90abdc8aa197fdcb850c3d348cf2f3f2aeb975cf878fa7dc1b73237a05bf43db590fbdf7c859a38ad6867fa0ae59484a3db01480a8a2b32c9b977667ab9cfc17414f59b3b22d02316fbec5ee17e06f3eace61a15c506ebf30263b3a8fef05f6c0529fa61f14754f611fa4ab48e10fd88b50d536b225c31ab070802d7c49977a9f7f7d43dca468db9ef2c32dac8d6a369546c351b071b9429c4e461314cd36bd2e61dbd08e28cee21028feabc84f0bdd5cb7f56d804010954111213d93a6c7295e6f42c6d5e6f2bfe889f59dfe1fe39d3896e6c2c7be52b50adec2626844ff8326aab7f7c39f1a2c6730f8760180089f50651faabc28de7a270a2e22f7e9573cf8a8ccca9b652e1cb76e9f752126ae44968412159b86e056b7bc2734113ddb09decc1652110199830a7fb8464e7710c0e4329b0e9cb46fb68a1695065c84fd4601d41948dbfea05839f97304370560f7926eaa08e6a3a4f9bc001e18a5a81a0ae343c010fce65bb1a76f91f2555014e5a9bf986d6af98a6568c2b94c84c2fd4ff45047af4d08bc2b95719ff25966e8f5e9a08aced5de5de2552e9a23adbf7b9ef9ea49193d5788d5b29ed2457fd0e48e0f99087db9329d1831e688727e18b5ffdf0ba9338372674dfd73c595cb39e0d02ee6bebae632e3f0bbb6172e10b1c574bbc974743a74381e1d825c57b62d30ce4d30cf775f7d4a0e11338d5d5eaefaa34f0906d0b53951dfe0d56238a9c0de346ba75b4299aeba08766fde2f391d4456c345b2b7e1e5cd549eb36d2395d4ae94282b8a5161f7fa1de74e16454f8079c8b90cdc454cbf382b62bf1b3b420a9a4316bce9ba7f3cfffab5bb4c57101806e5543ca52cff200b8937f4d2c8e773f6faad782497c2a7fb11329b1b085a400c089f0910d95b2d82d06adb8a0b1e5b1b401607c95f29549cebf0b2bf3efe539c3025f9bd3545da5d4acb0d19a69ad9a29c79132c3aa5ea801539008c3e8d4ff5f2a15fcdf8f55b77002054f0068bcb5446fc095d1972602e007f99d301ff6f708869f17353d3e400c06d8f1529050fbb75fff3f6c8bd3e9fa393f4de5584d827972a721bfd17f052449dea5817ae07930f36027c82d56f6d0bce5648014a0be58763b603d33bd459bb0c62262c36cade76ac08c0feb038896ae6e9f4657925ee40975326b2e786522546e5b23631da6921044571d33405c2d4f2f6374c5741c4a9ba970aca43bca06cf2914c0629722413b894d0f1ebe8ede7581792163f8db151737dd7ae1df577c090f50d1321885cfe5a3eb051343c298f89a7ff406acc11a723db4094702ebddbc00c5306839f7da3dff8f98651df904b128bcb02fa6c967bd351803955ff833cfa2317e0d69a6b969b2a7077c1b21756b513de0e112f6e114d17cf2a9293025c9ba271984f619902c3f7d4b6a8a532b05aea0e420fc09b00e4f7bb0686c18a0508954ff03a7658d239d44b70c2e7382128b557733fce620e8cc130535384064f673c671e54474d13713f34b1488a741013302f08cfff643436983b0dbc2e770c1616eb8358b69a2aa6474250b37171dc59876a07f9dd35870d9a302f033cfd96ab24e83c7f146f8e69d7fb729b8f370fa5ecc8628ec13832c2cc9220924deefa7e9e0602b049439d5b60f22664c487285a6fd167eb29ae21a090df4917e280391a8772c73153784cef02db4e831cc3b9b00e7241dab9fb0d067f9715d9e2f145c921070bb82d1c621c2c73dc0835c25177a9ca10cb5f81491519676925193bd7d02aec783f582784228e226aa10ca25fdc230c01116ecb19e3f129bc35ea06de82a69ad6efd570efd1e48aca333d1afdc9c73a363651611b7b119accb2a2ea28a1b16b35c6283eaa6453c7dc59b995ae0b53390f93671c7d3902733e0c9702448e13045001b73126b336f3ecafde09ab546bb804526423555aa1b3eba77ec50c85f6cbef8e272853ff5f334baf9802b012ef902c7585503044bbe412f48adc9d1dda317db7061e6a1ac63f80f2aa5a9c4dabb7163be09ecb36634f8abfb8de8e34d6988e89ed1404ce1d396f5b8508bf70d20d42050a89ed054b61ded629f4293d29a1324f2d36fe630491fbc091bd62fc898738659caafe0d036cae0a9b4f7c2bbaf64766b2bd25e478f1a427d31d022fb7ad12b973b82d04f5569a519468c63c6794ba4595a20524a4df1d84f2f33184d52d4e4725118199b1e26f3c9aa3ea196755ad3109576af1b6fb845167e94cda0e8b117bd6d4968c35ab143c29d27637ee4607e87602578b81c4ceacbdecfd57d1ae6eb9c18971543b46b637656197328c2c7db7d31879b90551573b1ec2b5a649c30ad1715272139c24d64c44385952d8beb688a373c054389df7481908ac23dcc70d620bc95fbbe843450dbd1c050be680f198fc63f3706d32543b122fa9290147646f3b4015d427eaf3c6c941ca80ace7db6411a4e4d82f9715c80bfd5969c85e39ead29b9400bc578965129bc9b424684b29fdfa09603395e80dfe60f7b8d0b63510b1e9b1770dfa64f5ab4d501dac28efe68bfcfeefd16079f831837fbcf48464764cb6a20263b657ab8948a420973d5b0d1f3f65c4cf337f16e4689cf7e72d1cbc0de6b6466f24d5f571b319806431b12ea6f16e391d7f3325155243cf28ab203fcc372fcc3bb6423b011339d2cc880876fa53423ac2460549af473a8a7f611b52fa267012caa06ed0f4e9c8752076d0e6a91e9f24761894a0125b3fd98f006127e33481958dd3dc6e666c85ca015eed8268e1b2fd92c63555dd2c7e765d36202ad4dadcfb393149029be57b6248cf1a29186b36a0db51a907459a75d32d36654bdf5d8517c3da0f490f9a301ecbad77eb2785bda514c7b2d53e848b55b86618c309098c3bee8549eeb917e7ca42cece7401278aea1e2bf98174c717be5eab1b99bd3709fc57d3ceb22b6af49aeaa8f0a3286ed901043da7b281624d39f50003c16838d3ba097f01809a985cf5cee3a8bdb44e8c65388b5f6c27755dbc2fc838b4294895b4ec4d23ad97446fbb53db606fa76b35d9d141fc429fdea6d69b274a2d37b0ca83dc4608348daf5566b5a53ea113f519587f473c8a1920654bfa8009bf2c8e9d43c24191ab106191bd1d41eb23f012f2f67e83ded3b04ba7745c954a88e7ad81e1496a2fb9e12a38ec66f52062540c925ef6c5299867a10cb44bb614398d46bade8b777c025dd46bee1a799d8d0e1bf6beb3a3b6a4d5d424a372da2360866149d2fd8b64a181184cf926dd297dcf56893e22a417ac75097e06e32f1324ad3b60380185404fad5a0172174b2e0a22ee304b22adfea27b74da72fc1128c1ed50997957df49c2cafba30a2278096a23e52fd56402329699504993068c6a66ea746d4dc893dd01f9b4747cfc8e3a440705ec0a8447d351a785e761e4523a50e83ff3c4e0dc02d8f02af21a9cf96134b7d8e95c45042f42a74e30b8a42c2c4c8b22cae1a6f95dbd63a04c107a310a638e52fb28f1d83f742cdba2287c124db82f710945cb845fba583d2a3e40a8857c66d3e42d05863f4d76d581f59d9b29260e1888053de68231d2c8c4bd5b0c29b06695915519c74eb09e61c3a13bbe26ed218ec8284284051f4a64f3dee5961550f63d4140041cd1dd3b0632bdc26f7071c4bff4801ff5ca3e0c6523ce38b89d136f9eca3a1e48c52df4cc416200e94ba689c6e2f0926b108951886eca4b48dd991c1871d6adc5e8bb3edde425ddbf6bcb99cda165e28bee055e0ccd8a160b07ff5dfaf6e987042d1ecb4eef3ab0680ff3ae26cbbeb2ec3dd6a5961336113bb3ea3f29c8f66d12a6dcf63a0080b6536c6c1826eb6d27b717aa6214efdf4dffd630bbd66ed40504cd1098f089f32f8023c3951d41ecf28bc065b78c5e729deb1dc862324a5e14dddba04624dbc6b8b84601c370729d3242524115fa16c52be7091d3e4b142f2e35e90a40d01c517355344d7e5cde718e141f5997343311bf954045f7c67b323b8c6269ca6dfa9e82323e9c2a75c85aca7dbc4381da510421398a69e874d13f13b7371f3f5aac64a7076a82a3c6b10d9af887101e21f3239f46b7d001f537c676cecb4c52ebf6b811a60023afab7cca97e29e29c1fabcf3f550d98dd89ecd1bff229086e0b8d53eb6a471618429acabb8ab36cb2c162061aa1c65c35e9e9de8a180a3e5b3bb17a822384ced3210ff0bb35888b04bd7c913a8d239189f00408b28ebb9812626aa10287135c09d15eccce419f0571005db63c6d2ab445b918bf57b81031a9b89c6e8955811b4ca42628ba76a2ad1a054a449646c8e64d1384d03bf3c24e6841ace64281a61e2cde5284594e5a0c6e6ec829879b8b04127d7068e16233ed48b1bdeecccb61688bc7ff7cbdfc7c2bbfab3748ff5d991458db21f98744b9b3ccef0e72531cb5d7ded1277530796bef091ed2ac840da5240501afe6d5c38040b6bfb7afc64574e62c22bfaa7ad52384588a6f157a29e17f07a5c277efa1a5929d500c93d4abc31e735b598d364f7c2b66fff04aa90985b6bef952b3282c479c57ad862e6dbf33348f91ebe5c6f265a9e8b64afee8550c54644271047608bc19ef68ed88e023c153a126ee75070e74a9f6facb5f55e868d22291e026dc4c4cac20c9e012a3fa01c83b684098af2b65a531364cb157401859bd2fbc9e1ffa95ade9f9f288654330cb76043a13abbc4585ae5e02141ff4f2eae561882980801bd434b427561158f71adc88e9d2a7378a0c0d2c66c8611f894d80d7db926ae210d39295cf40e4fc719281447e1da490bfc949b87837f4b50df0c525737abddd396bfb0155c5dd04152325ddb63610868f4c2a3162ea116114420ce8fb050ab88703504f934b2158034a19e99d5e108c5477ca964d2465a8c3dfcd1355b7082646840c61b2a11f6f72f1647d08b6e7dee0713cf460837d8f84cd897b71019bf3d7cb64b93053d1dae0e9fa45a64fcb5e02860334012491f88cfa93b9110face5114254394c4fcdbc20c43d7fc3bf1f699375a0af968c500d0285da29642e09e0b049dd16456be31ea0938212b0e2a55af04fec0e05cba88642c2b2f156e578d18beb5ef343b61a2970d58bd077c2fd19ae32f503203a5bc15788300e63c3d4b644c85eccb6e19d8b1369ac9ce812a75e53d6eb1319554db973b26914fc0b681f5fcb28ab1e7445cf8227fd5ac1b6e865288b2037138c2cb5d3c2e6be3f7080a10c19e46acb3b6dd253158b27606f7d6daf2d03f7055cf3486b12f0dcca444fd14d0aa8087c02fe6b4331117c20a995f18b3bf7f4caaa1ec098d66fe23a7072b3a076017bf81bab0d718e10dd7e0d212e2d2e570c3327c78b88d5104ef8bb4c717e3b08c5397cafeab63ede8a3af05ebfbbb223fb7964e688d9822afd93c7feda88acd074ec1cb48bf49ea61a9ea838b88195e0b4a0a33bf10fd52a4943ee9533d3833f8e1bcea71a75620f831b04af06ad22ab48a9fb8db6e8a1bd0e85f3d0c43a9a2e7db6eb8eb9640217f0bdafd767882233b14a360fa1f05cf5b7c94944d84d85a537cf9449a0429821734398605c21174521a74fa36be96f9c6152507cc089a83e64e734a163306681c678b3828959c755ff4c06aa627871c4c30aa32b8cdfeaf1e3f42de5d4806cba9bc50a593e74db3956d014b65b74388c84e6d65617a1c99750c41c0458a37cf5e9efdc0b4c363134a21b2b655164229dc1489dd6af02658d0721e1b5a2401bc301110fc78cb69bc8d78792a8ffc82c76e6aa7b50e8e84d75d81681e54705820929cc06aef1963dfa292adcf781c212f2037a7c3605655076ab0524b29d83c480a3a5cb1543a4a512067ef17271de24e49d28d8868b26b8a0d6aefd2f08c01a88499afe84b46eb8ee7b89ec00067f7a088679f36d4c076d57d0c93b924bf4aeaf7927031f769ad9670dace0b2234ddb2eb9bc9a1139fbb1b52fdc8356e7d4710bce50e71b165f8b529203f8724a549f8011fbf809deb4cdc7521b8284836282a5841774d7fc5b5bcb1a40a564922c810452fb3fd8fd259d754d242ede376657c1a84001c3b83f41ec3d34f0abbdf8b7a00a6ffab9c2337efaf31d10b507e37a6db0908478236eba5353d5420d71df5d1485c0dd3d5cf0f213c7c61fd53681869f81d6ccc233ae12862d2f916a0c69cb175b03f65a7b9fd86e559ef7afd5b6758668be3da159b778b69a1d3943f983f78b3ec9a4fe976439a93a28d428f51044edf11a514be0fbbf4719e1ebd9107d284054914aa896467c9466e463295c10e788e4df61b94c5b6ea81682c3f6ce4419c99f1fdd0986297f27e65637946ab645d01f66c7637580d028905ddedbb4946bc667d78f84e8d3cd7321373178c7b49b6484e612a3ff6f50ea745099e9ba9d72ba4febe5488ff301084df0ad1ca2066143cc009fae03503264223aab715497226cadcfbcaba9b184a3ecd486071d821883c4816a976705598525d15b5affd0c764c75c3e0dd708fdf1b1d0a69c0893c1062b042e2942aecf8c90a8191b132656f57d56bc3c8885380296bdf08cf7b2c16c26a45a406f177544b99a774e3e8d17ff7377528da7366dd433ada41045f103e6392f942f6ce2d39bf080ed9ba6a508672a5c01e68deab01250b4a008a1f6672919bddd1e8031e0ba6b3a632458cf15429f7404acf68f8ff3df5f1a2869b2aa10394c6c6728f985b88ac294c9dd4f2ebcf20da9bc12e02025a98012b10c909bd125ee85aa506e551edbeecd70be0fe7aa501440584446efa0dc100a0da5232312d5e073b96e34f876a6ab0328cb60ee1f9d5d7e78ccf83e4c3cff81737be330e0db4c341b43d2440e846073192f5a544af410c749f7d688999032c13682432809c857a3c960e7d8fc6ce8f87513f4118670658590428d81f117af67fbe715c59f6ce1927ee22352fb9d457586ddc7d5e0d7e37b0f60ae7492f5093ba22835a3e2bb5f7546cb3e37291586178abfcee616c635ebb782eb7590dee9e516ee504b71cd18288264d1f09041e57f159d09e5a63118527dfe671bc79350e21b1dd415827760b828da380b074cdef280a7372c3518f361f6700e2a7bed01757be040cd161e0e948e950d8de7afc3289dde5584a7c6e1d936305634ddc301d8c762066b1af2e5512ff7b226b82feb2474ccc983b9b4d003789a40e5ece511abc35582b998e6d6a5583e818a92dc79095d20b4f402677ec1d014f78c3ba82825987bd3b91b0bfe1f34dbe3e80d06d8b0e7b4ec6dbc61b17e33c039fec0f75fd0893113c65fa22fb3c1e371c3b566b88fbca2a94bf4247a4da218b399682e3427df8f6185c77b3421d4af363126d3ad7c254d8a4b2e84134389575cb74634216867d0462bf2fbb268c3537b67b0704977b89b8b5cf0d8e4e6fe869fe145d30fc13665d3262d4c270254cbaf98a631e7713c76f4096289c2ac8807b2167ea31822b0a68145f88c788961b5ed8528cb7f6d16e545182df757452ca4d4892cbae38bb05c95772bb5a614112c774f73ed53e2871a721884a474e38bd395b8212697b900cdd0e686c782cd0edf9b24ac6ee12ce73f4e87a26dd859670642f27ca2f460224a5654dd3d364f28427a0383b2cde2b33308d307fd457fe44297a863f4878177c646250a5966b5a35f792732f3035806109b67d15c497e3515f6caf5c5e0c5f84813e8899f9c60043cb7a962ecc5cc0512e8ef05cdbe5aa023fb07c9fc7d47205bc1c6e46db9db4f7bfcc6573a3a4ea32747e3b34df4e53259e97719936906d99e72f70194a11367f5d677121365397d9e36fda1d2dace0a28ba84c1b43f9d349d8527f1add83ad9faa395163cd14e3ffe25c280a654667f85eed9b3dc51c85288564791038d008a4a044a5ea0339dd277a522808de14e6c705156dfb1feff7140342d528e53d40ca9d035d25081d8a825e03d397abae1aac737bc6e90b4f5cc6d44d65bdb62691f795d0a82f41dd7c77458ed48009bb41d045106cb3a398ed27c6487b1bf3ea2acbd2c0ffc6cf3c95454a7ac96cf65f292467e7a5d44328ab293b1a7e13cdd68ba088c074941b2e63d6f47d3791c21421ddd9e10d72c03ff23d200c493c66b6e4a778d3b2e98c59a742548b2aedc0d06e6a60bec6946eee52ce4b728cf7a3f35a46b5220d4143949695b711d0056efed5fe516e1df63d7fc00c443f1f9700fd28d970c34e28c39f9943a38eb1caeda54be9fa64365be964c182c71943592d1275099777b7b6115c5197abe9e05506e1d5332b631a8e0031c6a5db159aacbcd60993d37f3d51c4508289c8f8341dff88fb45ecbb302cf934f098725cde38e70ce7ad5cfaefe94b27640e99e9d1b4a744560bc8c50b3790b83ba13468c35653fe1823401a60a124043f94af186a446f1f24fd19fdc228c9d1b9a695185cb097e4d36b635dfb830ba650931c7b707dad0ef2325bf442693f377f2af3070be4e8f36031a18669bc01cdadbc107cf1f96125b9d541a98ee0f2b933d8f0686e31cd9c7f197fd0fed82d45d29fd8ee78d2276b8d63cd1cd7fe98a4390646148ccd1d0d92f32ef2148c777d68b2b3c1184fa4a5068ad3d8d003137250cf3c6822a71ef9d1ec734c8132efbfcda5593d641062a970bff00da17db0092e36eb4ab98bab11ce21223cccc08b3b7e2ff325d223110745772ee2d04d8b79010da421fcd5d72793688bf5ffca31dce1ebdae2dcfb61adb8c66a8b77f1aa432f0a6402f1a8032c0e7a646ed86ab0d8fdbf8e286f93d53fe186050e18c9dbb5e1418a6ce33893cd457f7010c8d74999cb5cc213387e9b9feab4b61ac22944f9a713755ac6141de8df28c4b10dadf635a0303d15657b3cb9de8c884b3b187cec699b1704a404fc504fcbad323da4c038367b7b61972e3c8107f102a1da996cb6bece17512589da3e82dd9e9e79d7840fe59b3ee83a536a0320f46ac719898593b2c9dc011b5bbc891a7c7fe46b1c4a04d02050c4424f76fdc330c947de47a1b8bd950f06cc716bc08d8754e36bfe93cfe35a3182ef036c6a1dc544d1ceb7b4f34bbb393ef9ab6454a301124e51b9385aacd58481b8b8ec6eea3bfbbf6724e8f8b37b6b5d42d125a1505b049556669cbabc1a78fe144e3b65e999d55ebd06337069745f0fb728b79ff9c037ac4ac3491382c861a655ff2161f5cb08b11d7179badc595b39be1d93e76e8c260a0bc8a9910014f5e19a1f506726bc11e6fd07dba53d6e9d5e1e518d5c2e9edd6e6c76b72d1e24ac9d95858d545dc19ad77df0a60e3932985f94c8ad92b180b603f3d487d5fd61d39a5a342da9d54a208b4733c09a3c06fb364a7b26e64ba4030514e72b240ee6343bea79af482a5ad5d040a3af2bcdcc312224d4d1c593095cd6a99586564dbd0d1ebec1b04a3e657c24b58095e59db0123f38bf27f4fa6782549426a6c8f554a29c449a7af1521e9a29fddc9b2a46ce5212f6604291907d2e3ccfa3351c7e7125f83c1974508f0673245ad8f39ade5f8c689fa16abac6d95635bf0aaceef284890800a33e37cb3ce8d499ae282af51a8637282db61cf4a8f89669dd2bf09ca85c7d6190d8fc53b830301e3576f9a26f4c33a08f29f648556d2a932e8c9bf37cd299b1ce7a9bc0fbb8d8efac6acd879dad1d0a163d3db41a18058fdcab7a537fb388ea227f6f69af6bd9f349ee8f5c6dd05b1fcc2b2990677219368bd2417cc2490ed043a2a3890fc612e7042d39d1c3be038c733f95491ae4a00535976de05e66feb33ce6941eefb38a438291aeec999c733a91c4506d202d651864e179d0c8eb3e27b3abe5635b2d97747631c8f0d4c356bce840dffbae93073471746ac0f4d97a841c699a270d06120564c472de768631a0bab28c4f5df13b38774f4442794c93d1bafed36fe32fe876221263b96cb227290710477f42c5804503587c6e99dd123d418c585348fdeaede7564b9604e6171b039c6bedb6bc5ae98fd1f0ae579465327a745a0ebcf91828ff7f147200692b2c0e432b13b16522623dcaacef9953b26c48e9ecfda545fb24055b403d79c703c8bf81190daa584eea98084395da1aaebad056145490183f76cb23ea9f1f300156d28f96fabd275d92b2b3aef6f010d7a8a8e591e776a0964dea5b3736ab401f98e1da0290a94d64bd36b940c805d0c512c6ddd8f5edcbdfff6b1d82c6d15d610aeca16c9dc9f4b0a2e3fc2f7f0dfbbda1544186323984247e3048b20d9a9a589090f19a92c0b0b593693a508de0d34496a98c508bb72e10f62207db9aa5e51769ca8442a99d539ba0320f5049bb2e4e88f0b60a746116c6937be1ce8b6ed96d0ee03ecfce6e6d09c5a568ac6d82490e84f0f0f4b059ef51edd286285dc5fd5b2243b3d969e3c0eadf32f88d3de5302444d904d2b42c6b66c7fc69236a2c0f17a4f022ab0ee5583c13bcb5096c3ace12f0727003753c59e89e3e99640fb6a33d7645e347f1f13dee658c85db3418af78099a342d05ad52d5fcb7ceac551133407be2e7c5cc39f31346618df4cff4caf51516da4b7841d5469c9c2a0b20b2685e15212c3de6ffff9f93ac70de5de58481760fd1f5d2ece6249e536cf95aea066ad0c845aa315c545df538cce28bc7bc30a455fdd2c309795a1041efe779e262200d098389621877d577d79192e1978d830afefa9af0b9718e3e2eb9a4df26a622152d38aa263e7cb51603d9fa8c6e4eac48ccca19dcf6ffdf2666ded08d85603cdf57b3cf74bbe7b3e6705c1431ca8055ccf3f71115a8829c7bbf007c8fd0f06e3d7d61c7fffe72b1d611936429664c4d10e3edabc2429847556dc6bac53ec463f107f0bddb97ca51331dcef5cc9d0b9a9dd4140aa77b66135ecf013f2a50255fe794a89b20d700c53e51ebc7a5dc5236d91a93839368868884a8bd076c9d23102de2762f1b4f811a1674c8facf63bff6ae4650dcfce26dba0c818d332d5f9d610b2c8712d3726803302c05dcdb917a147a5a0ebca0495d331777881ed255220dd5d8db85a9a659175d506b26005daba7ddd1107433d9cd179d565f39fe6383208806db250f1dc675a52eb3dd75d9ade0b7a4378d6d8a0ae9e0ab71812866f2129b367a5011cb25464783e92a84b864d56fe194d8a6f76a3577ceadf0808032444e406bf6169a2d51a262add777c7d12d54e7a503010d8f497f4db97046fbfb06c871dc92f6f6f53ad94d9cdcd7b89e36002d1697b22d01bb5d1e06a49698c93d7651abe58e3af0dbc1266f3cbb4f190bcb5d63768b44b61e424e04a46f30686c075693077bd27a36d78823beeff895cd26732a944f05d2b0f705d38ecc854a01588430d941c55fce7f11fc47ce0817381056c10fe548a09136bfeef6ad65512df595b69d29361e5586038d941e9673d46ef8cb03e0e5355c0900c7c70966bd3a781b7979684c122468d8125d25a4d7668eec8222ee549cd9f3c8a55210f3b6486da4fedcf64e40071301375896c2dd336d34991c5874417db3bb5cb22ba88616a9dc1ddf569faf3e717dd903b02df5ddb5e79d06263d62ced5abe832a57ee366970b2573eeded3b667f20d8a27fe7414dbd1c68f877d4db85250d1ff378ca2155768de38eb705c177c67df29ebe0baf06d07bb06dbfc2d326144a385b61e960b9f5a0748d01a73700076e488417dcc6efe978e9fcb38719e1cd7380e5ff5495654255674118aa974fb919233734b30848df5575e233ae82dbf993e809b9ddb65efd411e82122cc1e0a76da07d83b011630b148cdbf5485b3eac49f06776a03082ca4ea23f9b6c449ee0085f0bc472c1c7bae0e284e8478b4b0a1749940274f11d1266695907cb0650ca8b7a4d4a032b7b0efc45b97f84956dea19b469da6f0723e61063df63db249c337c9706d18a149b2751ef66a9ad30bb6d5a651872a135caabd00eb27cabdd8506969d327183dbb5c1c934ab236ebf52c93715fd1e9fb0d8b51afe447567635425280deb9f9faa39ebfadde8c01ce78c46c7826c6af3e7082e2fb98719791668506b4a9496ec7e24dd54709c7125676708bad65ef70ca68c1d823f86b05467f4ad1dbc8616944233aba77ce197ab34df649a3dd68fcd93f76329fe560496846cc6a8140262c3e8c7191443f87f4dc1af750debcc28c9c3d39acdeb2266e6279175f043ac5d61896e3212686eeb60d21d3457501a702c9550da6958b6aa131fe8124f1b4960b8955e81955f7ca0b880abf86d6ccce8e172179973d595ff4147988843b570dc85ec507edb99732a601a5a8b03e3258ad013d00d591e189090f9d20598444b0dd1ff6a3e07215b5c187cc2062a294377fbc30ff1b3b265d3c59ef793a2b21d46c804055b4197c2653837583287288712cbc47079a76e0a8d7668d5e2d498874c5f674a5e8c3049361461cb3c3c054ed57d71db5159fa6a738f002817ab35169cb316843e2d8be351ffbea539d715bd3a8ed41bc980e502c1f318a9b8fd2dee2c6bad671d33242d3f71cb791b9d124b2b4223bd45434746533b88c8a664d90cee3d8ada4700cff8c61b9e454cdc11b95b2b2214cb9fa5307ae54fca3d429300e290144cbf7e096fa0ad5ec4fd0238dca475a6540571384d27271d5c5690bec21043b28eb4c8b4a2969e7e9c37c335722d1905a914cd19b16263eaec623a40c9d47db3d6ea8c995aaa046c064e6decdedb58c42603e6d971c71f6bf0e08ba338041a9477d54cb035e5695da8991d31191b0126f775faf7fd6cc9a2bc42b2024892e90b4ac341fbcc99362f76da548c608716a355443ead57af75cd3515ef6cc60ad6e6956ccf5d249405dde52bcb0537fef2326f1c808be7595f973bb08f6e5e0b66907c9ca963d08aa2b08cfdc5f4dd364f00faf0fd7363078e4ec0bcc070bcffd9cdb8d5821fc10dd663db8d67a9f7f7ee465981631d8646f5422a864c6b15b3227af81643e3431e6613a71d938a417b59216a4b599c07bdb367a17aef3d8b41b2f214f32af90d84d4a2dcfd865a69b9e470512deca244257ed2f042262bb470f7884916ed63162a3149cbd6c20adcc73296e9433752230a29a069f876e26ee3eeddcbcde722957334be828898aaff49456588c35c55ad4a526d3f8d464472994acf8ac21bd61b1defeae2fd9378d5f82e4344aade96c973d0102f5f0fa35316d6479eebf7b847a6280bc34b359b6e6026765f84d368f92541ac508376887fc034c125b0f09058588a983b6d4ca622a441a2588fd7a1a9f8967366c74a38d787b883f68b13297f9b71adac18a3de1ed906866dc7dce2c85e621731ef09c327df0ba2ce496dfe47d1cfeae5101b9f5e5358d5fe6d8a8ad1982d352a55e727df3c457bb8b311144b60ef82276e9ebcb639f3b6d33da7e18a5016c40f6dbdff73a3580b1f6b4ce4bfd72e2c80cad2cfec654e125d100536ca8bc051bb63852788b6ea963a97a74ef4f9d19c599661cda43cc2b1207e2f1d48072f29c0e41eb5fb84a9be19011e4ce8ba421fbafae66eb4cff6514b900e02493af543f938ff661965491f0e0a2a0fe1e91da346af64c1da5a67c247a676fcd435688abb033c88c508ce34238dbf41aafd4c03c851352f28be6193922ef7c47eb46e1c38b534a0a32ef939f5978127be43505a8577ece67b712a622c6c95fd5af152f9d434be4d525a78f233c0eee5351d1401a79f151382a694527f088021c96b2785988dde7c5d3a811e3d58cbae96df5bef1168c0c75b4446d67c19156a4f4d7e955271da44ca424d2514a8a1929a7d0b2de4f88b7f67d1e8d2f03dcfd75a8b4f21e2a130bd9cf5a885e3ed5a66eb09190fb941ce55d0b11556ddcd1e43c6d571ca8e5e535029f3da4ba5c9f447a1fc849b99d530c2744ac250153a0bc429de6bb20bd64f3e54324bb3220e31c1ac77a72f938f45e511c309e5905c05981cbe132de40646fad87378de4a0ee250896eefa7c6ac1759b1ff69e48643c9dad31232dce6623bb7fc9ac762d55faf311418a3d413f61124596d1d82c9e84e5c8679c5273529157a04a6a04871fe75c39c75b2ca1a1d88100c8ff7454fa4fcbce95c97f01c4e956a0b950908bf8cdd991f3d95e1bea1613ec7ebee31847409c648a2131864733e812d331e13695f0ebd6e3a4084205b1dbf09913271254541d4b6bdf5d2e171bf6ebc61108f07fa28e48fb8f73a6751a0b27d5d74b5374e12a24c81b721894fdd24f07fe06e3ddd7d03fce2cc29e3fe866e17f48d15370039a3b568ba0796ab09dc04059d1adcc46fcbd34e064df8e069719542d5d328cb7ef936052a94fdc665525c93c4ddb07986b2faafcda1a4022389eb37b1d031f087d915fffb794a5381ae56f53a27867a72064db49b181c0806bce4f992351fce0f1cc9b3b459e8baf0a1a753436686e93ffc33789d57f77e0a543daedce46b61bd848577f7081d6914d1c313c35f14f4fecb0edf1a8141d5119424f896f4e92a693c02f503cf33796d5d7de4c4769c4f14af5813a695957a05fa71d87b130425dcd8a88d5d2e7694f36fde8f1a9304c0321c7f492bd941d833b64d7a01c6c82cf9c614ef9efbe597a5f0c6a966a848ba011b2e877c146241c62d8d889a62c47d3c4351235aa242dfd6d3dc073d70ba7e87838a0aef21c5b1a12fe1404110370868292f6dfb1cbed2cf5ac214501b6dcd0515d6a9c4b86f944ad6046b3cc6b6de796205ee89c881a8b6424f00d551153476c34a8740dad718912308c41bc045f3265e596bc7169b5b62934f58c16b7f3ed46b9201ebaf145bcae31c272a3554477f4d18489bc2eadd2b429d9533b27701da6b1c952db577f9afbe7a593180d795ccc8d92d6cd237d95295c9d7eaef5b02c3c3b551ea73beff7d841baa65a72afde513529b172fe2b24a211162cfea870c8f0a6be953727cbb2fb5bd1e0843cbe15d414bb1afeb5ace9d053e726f68c5eaa0b4f5df203a4ba3fcf3217f330685ca949c10046a0cf20fcb62b147f94c32f3ef75328fa7fd6031a6b7c79aa2d4101307728d3b1e7c74c380677ed04110356c47b01f61fc1a45ab4bb055ac58d5dcd5a80dd884d1420772618d173ee195ede36fc9fee42b9f695e97a077f75fc1966491db4800b7d49597bde2eb1c0609c4185e4ec0e3c5a85f112421f1064df297f674ea5598fdcb26e6b8153040a8fcd0c67a1aa4c0d79c07425bbb16f03603b82eefc1fcf1b97909fec4ea351ac7545ba9e21b095b8744765fb6bc915968748e6e80db596738aab1171dc49fefd8eadb54ce4eccbc1797e0ab45fdd06eb40214043e82772e07eb8abf626e2695cf8529ed237db16d2fef02586f4c6334f8c3d177ff84b634979a148335aedb8b2d48734fd44cd723f145518f12e5ef545243c708253471655fd3bb9e62c92e1736e052fd0457259aca12d450574734777d91221261e542ff775466cf2238ee5fc491e60adb67e6e9c921b2efdc509edcbdc17c71c43c24d0c5c2018d7337191317ac4023de0b53f961e4210dbb1982ebbdc0e905d0935f03187d48a5c4950834d2de11875a5fbbff5564610c55925878e5d1bbcbfe8678cc99a67272d87f6e827da59d5dfbb20d3a7e0249c39862e6c56cd357945669fc58749b66d67b521cab06be3d2ec54c21638cb50ad30fa0211adcb3abfa290993baf662fb9e33affbb85b7cbf39eeb1744c3c67a99f6a7355df7e126c73e244dd0d530b60dd6549a810d98fd5f7da193073a19de38c338fd2ffffe34f4d32c0dd2e18808581a34d805d8200a2cb3682e5644803b518819977f554b3d1753c30ee79c19b49e702625a0463ebfa3253012c9fd06fdfc1f8f7804e83532887cf184a3178b5a2329ca4b6fdd5adcb973ed9e4cf78b2227e76c6797f5fc275330122212c057641256bd8dc2f230b8ebd5bf021e443bf4d8d5efa81dbb7027c05b69deaa124a49fe471066b4b8f8e7458962d93b52d1c49d60cb01e942a35e0feceb440f537bf64f55f9e86f3c03977a7dc0a08c5c4a463abcf0fa79b1fc5db346296343b34647b563862e7abf707118ee9608a22073b80958b25dc0add2658888fc4bf811dc8f442701fc60204567830cc5fa69c5c260cbd96fad94fe8a287796488fb2638c7344d6efbe636f03757d2940d80051012e0d69dd934887ae3e4f8fffaa5c2a507ea53f4e53780ddc4ca9250035426f1486bb818a129949386005c1f0ea53013e37dbb48783c846a757e642b4f066edfad6a30a4c992a92131346db8ba1308fcdf72a61444bb9fbe5f9fe23ad1716cc38c11049581d2bee560e63db161e98c68e5b780fbfd800f1afcb2ca14e83a7dc3bf81f8c4b475fc28f6a36961ada1089b1e0f2b5d54c20f99ceabf99df873cf21ac901c68991ddf7aa2671697fc420cf6188cb87171f2bc1241982a0afec78e53443c0baa6cdaa42be6775a91c841381dbd22d7ca9af595dc518a66eeee1f6845999406c83a154e53e64e3970c11f122a9eb7d74db12597f1d0ddf3aeaa2ef11b81117a7232620aac66d1c4b1c8c012446b76f123d33c60f4e0ee9819ba2d7e5a56496790e4b45fd70207b5ec9967900880d63e76c0adc74b7d2f63e7eaad84604c6d2a8171575fae0221a7dc8942c7ab52233e6785cdbf27a8fd5d7f8f3b1a9df1588859357120bf129a000b56db4219c81b81a0a02b1aae4c084da3911e6d6df37d5566cc89ac665383113605a5df9770ccbfb79a2baa14035613b393fda86e23a4cb491d385868369fdf61714f978477283565b15ab2f81e9bf412054322b83d9b9d639dbc84a882f3c97a1d0f771038b881d957749e394a2942fec87e33a0252ab880a65f9d9bd66687164cafd042c5dc5186973f051ed6e0687f82fff12210f0733c6030582d444c41f90d456e07ce29cfa376f34cf1bd46f3b8614b2b891af29dd4489c535af4734bcdd3dbe506a86d719f580aae92b2e69cc0164b83647c7b49aca98e3f37154308e4ba4deafa053ff1e2e3fa6e58dd1699d469bb3b975a108bfb99387faf33e7f3ed38c5e75f9390a3bede5a8a5f7cc614ba0351ad23a1428723ca8dda2330b1a07e6853aef79a942bea2ab94d3204877e82936b89917c27c395248f75ec151c08b9865acc955deca77c5ddfc97e4106a54d2d6428fd20d116cec14d559ba3191456d8e672b59a7e68e29605692a6a17c92517a5156f164ffb3a2bce36c96122f7d8d2999cb6087a8e2eea32ac68b043a8ced5090e78ae6411d739e1f9c6f1b5599833e5ff37ecbd281beaf4ace39ad8bae3934423f69e6c6c300e48295d242b868978af916d2c09fc464b55bef49cc890ede783a8ad47878868076c9b60e65a8abc4b7668e092707ddcdca8a728bde27c617d1067bbc2caf365da6e813074950f835a2307407121c2fe43a54cfb170937997b74850f6027d388ba5ac50185783f7d1b3cb35591dfdc6991dd1b8af667f44d31dd0fc07d47ca90c744e9f7c34d060d6842f4c253abcbd2a757177b817bd4a09c001bbf0fcb46daf94f5aa6e0cdeb0a16589bd91f3edbe29056b1622dd7509eb17e96b35655f1cac3872914263922dbef6aa62b7ba1525c47a15c9a24d19812b35eef456d3b10b126e95d35e433d03dfe02ce47444256421508a0e7adc79a43196639538cbfd81e7c94e1a25139d6d11110a5a55b7d10d6ac4d38a33c19830cf0f366ada77bdebd71ce50239614043b59654e9a09c45fa9b70d302dd16beb3d07cd867ffbea305facca07d223a29ff922dfec3ff62f5d360d5dd4bc82080c2a4fade8f465ff0126209980bac0590b73a9471e8ad5da959cf15f0f4918c4ef81fdfa2709895bf883ffa3f90f8634c34b220a17fa8ed2a9014a103b62db3a2954d1339f065f2f1d316dbb4ad4b231766f8f6f56b330e7e48dc59ecc4658e4da0bb5ffe9b349b686bae8fb3cc57413171c9ea729e265b5691c2395540ee040c1f2473f69c15ce26f3c912f14c83244e4c2c1e9f7a045d3cbff894fe51f50a8f34f302d233b4871e20807676d51d213f70d85ced8bde36de444102aaa15553d2c70d04ce87a9c43188d3450d3e80388ffad1b4357b7ab7bf7348e418f483ee115d2148a7a0ab1a07dc86de59300d3c21e9840bf47952a9e6c49097f72675e901d4fb4ea122d5e6aab2391d0dafbd63a99140ed6ae23b2973dafff3bfb0182bd96a41b19115b35ddb0be3373aa1f63eb6405c87a2e1fda2885616a2438717d3778e33d4f01bf584fdccf66efc2c075c1da3251e04137dda264ac80aeff82b54c84195028e855db2e604df822202ca42d76049ce7eac4864288a2eedcf315b5477d53fb5ba9969026dcbcd69af35dc3caa8008a508afd186c6808ae03de8dd4e8cacd0caacc1e9f14f295d83302d952b4fb84083d8240256e700141d3c368dd4425d56b2c6fb011d1191560c3dce65066aa90b2840b38e555c2dc5fe322ed2b04fa9215b7ed9ccc7bcb9569f34b5b157cba7dafa21bbd4f3c52920552f2ee05773aa31816f81356ec00ee3dcd6d3e462d0b14360b1144935d9b4857e15478aa43baaa2961fe1b97a838e7a13cd2a9f28407d14c63b5c2f7434fcc1cf42a8265a26f6f8558f71f5768aac3c0ba30eb42f269d93338c36b55bca66591c53662a292bb5bd807c094e1931cf790f1be3790244b588c5f82ff7d31618e48d450ffe74a026f91eef314edaa3626b07e1b0c946f23eca0676a89dd54b57f491020f602c5d45577b11481cb8630e3fd9266c1a6e69f5f26a256937e4701db44cd9d4cbf6119fb57dac920ec5726dee7e683433115d4412c6daaf268a46edf0aed945469141eff42d4fd3e5e0706618cf5048253f2236a352115f898c57193e01217bcac16046bea434a92a956c27f2a4432aec58d5335568b7e0929bd8b2f258e0fb62fa47b6a3c4275aab3c34fc585c5af03371758b7296cfc5a8fe3c249ee76672a3a61a2db576a75ea8b9fd55b13e71dcf95a4c98b844178b5c60631c5c924d037bcf0ef9028e4bb628d54c0f1630188b6f64ca779070d909b2c79cdff2e70b5635f3d75a3e89287d362533aea35ab8a0051d91e94bb5d963171c5c953333ca0a2cfc2f9da34757b2515ac369790b6912dd2b628ac71441d1d2a2e31839e7aaa8782ff227b19c92bddf0635576fff6f34b91229535b6e6f59b56b25028760d85e13dba40be9364c7b0dbf3f3676f83f1a010e42710566c0071bf46cb1d8d1399df203aeff21feb80bf22ba22b337247a8b915cd0519cc0617fed644848a4686c4494cc8e0cb499c14de8b9e647399a246022edc2f376e9dd7f4dea844bca6fdd6a186ef2b77e05a951f92d5ebe0c1add9632655a4206c2f879f139f21548a60919b7f7d942a1165a51377eb3854d41e43a54967a4b31d216eebd3df35a1f0525f0d46762678c9f6779c4bca0849c9d0e52d7294e04a0426b616aa76de3d9a2ffe94c87a036b07a2e7f5bac446ededaea79b2cce36b7d52f611a72d940fb654fd3aff596630b3b94cfabf91f80ba50ddf9563ecad996f42ba6725e3d1fe4d59b93c582be50e06c96f990fc0f9860db22d3174c146a44d3a077e41a92eb9aa0dc91b991f4f0e160129d462525b5b35f0a44614e896f4e507edeb777813e0602a24ba054953a12ae857cc5669281bf824e0ad52a7725d436d38d5a810ca96f8555a3df55a0308f4a4644e70e11a571560d5d67603505788500146787cb84d3405a30db4cd6b3c31bfb6e96c9fd1ad8231d9e103a5df0b95abe1391d8353f13c335ba05d9aa1527a30df9a5ded2f09d64ae27ca1f2cffd13cf965264295fbb0a26781a17c9216745d29598e3cd174013d67476c252eecb3a069b94b00a5b26a1e3931299ebaaf7d3f892a8985d2e7d37f1388cd37d8d26daee837feb462c23a335c31497459ca2968da3e2fc660f94f40991cb92118e33acd4b1bb7a401595a776b0116bff5afeb264d75c5006882470e94037140bd0d3e43882398d13ef08b21f9ad717c53859ec17c4a7b54c805a89c30cb7c3cb7667e9557d733c065f27104fff30f98d76553616a16f25c876ffa202cc20b2542df3178176003e0ec5f42fe3966287ea7538cb34373e981d4ed8c546c2e3231616f1b0518825ede5cc374297e4bc0b1d2122f5d84352004500e7a2773af8324f0a932988ca7d56a242e540d786dc807e40b9133793efcf969f619a5b0724131438d5440d157fb855beaeaa429d3672496f8979256182299b3cef3192e0e413b095de62a39dfae2f68f934ed82c522bdcda21be89dbd747f39be038920ebd7209d84b6a214921805501efd058322db038b0f57e325f7eb4fdcd6237df904e45f6619b0520fb8011b53e1918cb7bd48420f844e3b190eb41cc1717049ee1eab35b4abac22c5c3b47b48e886aa5ecddff51c64d711d6e2d7580a559a30a3d35a0892a344286aade9fb80aa71e613c6207e6e5662d9dc2904a11201bf90f48bc54826dbd3d903bd7dd878a51a561acc931cdcbe5fd98d9c29e0dfd05ebbbcb8800846e401ad3f2ca939c5936ff8240eb5cd802fe145629debfed7a034df4b02930128b41a58c42371ab6c4d21477adf4a69d54038f521b5eebe8a9f3299cd1e892b0718553adb96474534d0618682f15e1aee1dbc1bbaa4acb1a22559cf36f2dd2b6e30672c1961b4662150abd0beb9458fb5e3fc0fc4c5782ce3c9609231e4692a1830d0ee383befcff740bb6bba804c5b1cced652bc9d773888d9f4c03a101d70b4fff64019e551ed6b25f71b27098d1d86ecb2773f85c6af6ac0dddc7ef4b56b044dfda85b41558fb711a336277bb27004adedd4fc467996d7268c3a7f954241b9c7e35f02a69701f7640e47ba0ab279a0d861d4e820c49e02b6ce047d73aa6d2ff9ce4f7eebd24daf6f1c9cb10f4d2200a8a80c096a8715f1233cafc6a2363d780f455011efacb35d5c03e2fcbe1393e645af7b123ac9c1e0ab2209ce9a6f63a2a3986a23b4227e93c3ec3913b9cb96861d56814dc8798235b5d4cc37421728095d1a6d4c7a05797aa185be036d731f6e7ce7393c743cc8c08cfd026efe3721dfacc52af2f921b0ac4f458377f445b0d1ac4da18ea0e1f21251d0b71efc731dda88b1c4fc55dfdc12428b77c29879766878e11b09dc50073aadba896833792c141e47300352a09398e10fea607522f103eafaac8634308cd738121e79aff1290ca4f7542327b5e8e6d94734e622724f908322fcb8d1ac747af510861c036a234233b211b81a0a107b3a69810bbb7b0e076998c4c4766bde9609ed9f72eac464a8bad61039b414c32cbe1d0468e727076c5c3a023e1be2425cc59a69484c52413d6f61bf6178e4276b6dc56197a4c32f8d7d89a6f3997848e9036e6233b9d970110c29099da86c055ab6c7f97555edcb9f3c607d74fb9d844f15c3343290274dd1156d20baaf92f511582c43206b898047c8105fa6d0fcbbc283a8bc747ab63fdd2c646a6e480b0f7e464484a05855d7cca68e0ae1d56870bc914a0c65c406588596c3962a7a9ba96918aa635fc46cb343da974a544f5d2a470356e9f06af160de56978136f05fb24f434c1f12e9dc19c2569d8200201f3389ad2c55375bef447a3a77a5475f6d9952faffd5baa0c0164701cfa6f4a72fab54b0bb543f51d453eeb5bde148d90ac296cccb315c1070781aff1fd48bb79fcfb113ba9f0189fa23435aa3b92c429e3d388b6f4d9ce005ee0e61683de45f7f34e37abbc490cb0839f4b121431271cb5c3046c71c824dc549f9fe8582096979031956e954f8094205f1525721f2ff8ae9276e9f24f098471e2789b878d7def692fb0952d3244739105dc08afe3a116a4cf2c0e99a6eef1f2dbdb03c34237880e28ffdced3c2dd1e5abc1931353517ae8acbd7c8feda48611291f5b6b53283c87a063081810b91bf4369a6f115b106c5d57d9cdd2ae2d80b274467e5c5f11afca441652c4820d56e3f1d45cc8df671d236f41799514da6ca7c25589c344a30d8aa86ca8a0e8a31bf24a5b6feed14b16fe8490db71641d212c56c9addfe99db5a1fa6d9c927b6b928433af71e7f19a75f85555faab290d5920263ddc74ab986347143168852d9b51e44b71ec184486b1c59df39c01f83cc8ab780e9599502540a9776551c0ea87a1234d7ddff46c5e949310c33fb49dea88019e9456f7e33574dd3b85c5a81cd22ab4d6aa6cd82796fcdae61a56203a766325c2adf79f8e9bfe0f21159703ff842c61696e07f0b1206375110e9bfe4962d65716ad8c5df6e383aea5c4f906d0c6a7c4be1305549967e2a02b8c16c12484795d00001643e795abc7ef5ee49ea36d7796d8286e779bc1b1ec69b980d2a109d63cd46cef097f76744e2646fab5788336b32fab5d7b32c9000e58a8c1b49fa0b9a0f584182880a623d3a8025f6de3b53b66f40b94f160716403247c6c623bc03edbdfcadc7d311830aeffa4e683c9f0f1448585b5c41c520a945776672139c6fcb897a6748da1676cec5579ad919f3e697654afd119dc37eae3c910e9687227e4798c8c54738fd2e28fc40b8f19aded6523dfb75e919ed88eb17308f556dbb33e11bf1bc84096a01fdf80600a6eae1ab161414cbd3d492ce74da5cb6c854010d09892e182c65a165ebe8fde196132cd8154a0caf1e28535032e931b2081f0bdcaa1b2918f5fa6d207eaf11c5097e8a86730a3b8eaf6e6fbbecf96bd4f03c4961194d4b7830e04652dcf2e0ea1ccc1b724454bd60b2b6fe8d154c20dd8960fe24370026c6e7c4076e62d48ad0a0ef78ac5714fedaba3f6684c3afa2ca516d28cd4e51b28813c6118ee734fb8ca025ddc7fb590be853b3446392a8161b145abf4aee5d90e3c32389816598a071b57448a8c06d6b7314c15e909f9b260ea458ff62d1f39df2b6b45fe9aa4dd722742c97459c269f0efb948faf51a0575b24784fcfbeba864b804f5710d180f900c68cc9b6da71f96a215449e2b6a4379cdd7f8cfb05bd49b2f119f2da46c49f16f6d0ddd08d521ae474fd86e9f9c9feca2b122a6847a63118fa84f17e3feb8f7e8144c466c71d19dc71ed32bc26f4b1feb3f1aa38689982c7474fee9923c663148326fa49ad1d00e63e6f9fa10b225e8d8098ecea4b0f60f66f825ff56886e52ca23c99987402f44c67dba2eee89ee407a553ccb9a19d2865f71b7a81a53081f256239f96a935fc16839c87da9b3f566c0db9779ed7a1a4430386204700aeaee28d1f154dd040c868ffda0f24831b653a8b4ed45b9ada20fcde6556f8185acbd9ef3e48bc3c2f4d088cb0619f9b6c287b551aa626970544864321cc99b089d742a3c600eeb91f6989b107b7a5229a78720c8479ce5644d3bca262d15f2a192e80bbdfa7fcdf444cf8abe7ec7a45548aa9d8a3fa56cb39cff86334b46ef0e9fa44c4223f916634780f52e6e155d3653285f2e34e98fa0ff951ec6de022999b56db495af6819015f414d29d2441618769922bc2f71a42ebefaada4e4b6394bd02bcaafdf181bb050e3470051dcb015cbc71f94e063067d4eeb47e741b993e75fc720d1a70b216149963ea5a29c1b4d814c4e654e22ae31b00d9ab3944c4c25aaa7abf62ce6aad7219841aeb1fb200508be755a4866025194566e2d0635a8a80056efd1fd9abd533b610e85a986d55e8c6fca51bce06be7e1ad4bc7442f527aeb75b8cf572b4313fcaeb637dc3a19fdca08dee8564417ddfc031e805825418bfcaed7b42fa5c49255c05e977988b1d46a2960e2a91cacb6649370e73d8f5255f0811358980520a4b45b5f7b9c27629f61ab7177e994c1036c132cc77661824f6836f6572fdfd0b4fd6e03a28b9fee983d9bfe7051aabb78aca5a2532861113082e184f7b53d6a66185b87b5e852074d5f396f952c3c2c63706419d7eebc583ddb646968b550f144a4e71243ec9b6ea491534f643934953117f0c4ecb81be7c401a8017819da8e81dbf86400484a22d8a5bf8e98c81142380a2e2e126d30ff6ebd0278a54c8a7bb2206c21ee623217d4a4e8aeec50ea325b961be5d3abdbcffd5c5a55170dae4842bc63773ff90751a35a8f77bd5432b605e73230a0b64e2ee916ac1c724bb0eb459b9f8f8fc9de259a413749e05af5b1a5f2760e8ed526c214f79ff1da3634d846580982cabe678c4d59f7f94ffddb6453e1d0a1f1a1cca51e88eb42bb5a7384908edbbf5d802b94f5a629c251fc0a91fa13e931708d431a20a09bf3775ad49c245bce48b7af8591ba99dd2d873e39705c8e89e35ed3d411757443842836017066cf11d93e5a1e0a62a5c74be16256b74f6461c235bdab925fdec4dc3660de6ff6f03e1d5ceb4595ca5289a199c3c60b2bf0f0bc3bab1749d195cb355f9aaac6c17fe463cd29f60d8688215a7b84d3d1277d668bb834b480ce90248aabb42b963188c4b3ec931ab0e19042f50a527d955e731ca8b7cdaca4a039b4b9528ecc0d12de463fe869e2646827ae27a71438b2da7dd6d4bff65eb2d975393799f45e92f2af6957a4c93d97d27270ea3661e7845fdc4854350eae43794d2d09fea5b0fe26373945884a09d9867c9a5bf24359408f8232712159104e791cea4a707ba515f7346a46727b55de5baafafad97e5219113358c0bc070bdb23041cad17d20c0a016e1e1ba3c3dd8d3cae63973afaf0ee4cdc3cf4068abb0b4e1101c7c3857ff57134c0415a4134c228e82160799058bf73620a576bfc782324fd195e2aad8c984077e0f8bc247659f5f1aaa256836db08f086c3940226f7f264107f3d40aede012484a88f6da42c514aaa3b7759db6f028ac1db428a73e138e8047a0045b9699605b2ab9f1c0c786d934a90727f8744d63173d81753fa1b42562273690c5d890e01c0ff9a31629dc60944fd4d67f7d91afbd43ab9d53f1bce5ff42f17d6700aa716a14ff7787237fe216a170a7b050757ae35c699bfd280cd4fb1d474c5c98f2e6ee026e16e1cc34cb6322b07227b974dbf7510f04c606494d133d7768ede9af16c1c7c643cbce22f671d4ccc08b17cef868271da3e17ca55d6771031a6db50272c054d279dbedf74baa0ce8f79b651d7d45b0596e3e44440b75e9d7d06332ffa1c7744c6856212cd2c6500cda18c2c916335fce0a7f4f8be7d3a2fca7cebda3567e511a524e2c61d70217b64fd956f034002816b3823a0ac36316e02ab3f1ee403799f48b532f86e3d0a09db1c930a3c9c0ee4df90848d38b69fc0ee7c94535708e9e5a5259ef0c07040a3903a072dfb6fae26683144c3dbcc7dcd584690aaa452b202ac4eb73003cb26961807522f543615e9b5aef3d6f61cbc1aa9b5264d0d1a8146aaaf204fc871284f8d7e9d4a1778958c07398d738e0d7acb7cd24279953cdaed3207bf629bc091e62c762926e27a3771decb13541486b4a165692f2dc20c5cd0e83934439f68ed110670c1e45fc7ab74236680f97b71ecfeac715de2c120994a6450bd3a4b3bc69a781f146d121130222d7ed4412fe26b982391bd54063840fb5ce48a899c4b4f4b8fca8a7ee7546ed5a179e60d352ae8b3f9cde386dd1ac98dad17a3d0c3fd195e9b365c2720fd6fa12f1e4fe9832decf6d00cd24a7854a0eb76e442ad5eaee69cc0c731a7782b8ba3f3fcf189af8590d06d733b218f48d85ed3a90fb4dc0766251ec5f4c8c91c791ed33ac220f70bd655fafe67335e1a48c6be57ead3228ac03e1e50998f5de6b4a5aa48dc8447d15f45354568022e44e3a4c481225dd9ca582801b0604c357e47cdb2dcdf4aff236722b13fac05e768b055659ac0b39acb806e6e14a84c7e1344f8ae646410d8c57869a159488c4a43a9919f6cdcdfb607d96f6797648f23eabbb3b34cab8aa475d5c2c7bffc0b3b0467349d43e02765f7909578ca521746408beca5257f2b857e0f112a1c36964c62c55fe5f3b21433c336c1b251f867a1239a8aa1a0eb6f69bca83271ada2458542130e810bdac52e5eb976e98f48c5d06f5b5aab569c470abc1fc7216689fd83258f1f29d7f96cc3bd0607dc8801a24939f634e77b04f481ed39d00e698a3d9a65e842bf842150cef411f924f1713c113b98e0d3fb373a822cd6e69ab0843ab52f3b83e8799eedac6f25ec5fc3b2716d48bd11c24cb582c7b624f3a138422d9b3a7a18e53ed60ccd72cc2ff478307dda0c18e2509d243ab35504cc022ca02f525e9844f635c5a83628fbde6113ddcb4b15c8d3227f97d12d22be10d98946141d1985075db7a5f66a4a362dad7b7f35fc69a56600ea9de116f3e01902fc1a0b19114869c516ca42589010530fea3cd08be52062b8d8fc650e194e5b06cb6dd7f25c474f4590c14ef31e0f39e128d03459f297efb4f128c9bdf7dafc8c4a9d71815d9093ba589f83827250481c2f2e107a73dc37e6cff33a35b08c06f30cbabffe23e1ba7a7807b0372ae6fd23fd10e1845af2e6eb20c9a93f4ffeb42a6ee73e6a135735a6a7076098cc2d1f40c6913beba53c27b14447f22d28a074326dc02c5f5fc38e7434d19418706e3338b263ca7908caaefadc1fff329284fd30060b80e81d8568b364e1dda342a77aa0cfce18d0a226802ae75d560342eb6a777671c05b298b8584b77e37fee5e0b70f69f0e4a017b34eba38c47c18f7651a3f580d26c017300a616fd793253de0b59f5555bc127b1eaabb0e8cb37170661e107f64b723639f29b408c3ce57fa2a7a4448116795b8c95eef8c4eaf34af93501a6cddc50643e6361e866c956b358fab6d27e4ec3e52caead2a57e9b596079537242f7a0ec5b2eca04c01105720167e475f3562b98031c3b36b8e29846323bd7dcfa9b640e54be9cf08cda1250a80ca79a911411d2cf0f2ef1aae062d676dc06cd76f1b293528d1f8bb7a451773cfda8a2ecbc592ccf069b2ba4ac697c0e82f8689113c28c3ddf9b1872ea7fa93104264eaa4e6905baa382f39aef7b7cd70f1e8d267e3486398758556dcd13827e344529bcf0ad9db70273c7d9cb03f1dc8b80cfb579a0d02ada2dd09f0be0cb05054f7059d04a75c4f8422b1013f3eb0dc796f2d67b8cf665ba0f8e303b70188f02842fbbfe76bfff4b58804ca7cbc0e7d9f26fea60490329a06e34e95624c67d1c488f385eac0053d58ba63692ffc6c94e963c1c3b8ba6416bed99032e93a51abca5f1a51d83e3c5347ac0fc535ec6a74b9f6f947a109c3edbc629310095fda37d9e47b106c9b748fb0cdadb785d906bcf1f7a5189d69714ccb3a618310daaba3c12f78418711712e7e08984afcd8e6d6675b3a14a6d8f360ada253a3838eb093d469e375ead6cb07642bb09954c0b881ae6918aa027014327ad3e49e4d1cf1fa1b55c1bbdbef7b55447c1dcd8638c611adf4b44a0de3860ae71d4774941ec50f1a2f89da4855fa4343bdd0c8c4e11b1fc0134685cc54a638d2b1f6355b668fada6ff1099f9b84ff63444a7794de5a8fd699e28082fd9e31a89be7bf4cb66974861391f978d5cc5839d00e6d4fa6862e1e1fcd7d3b7a0020aad276e75f55f450bdf7618221260ee9e0a1edaf36da2ca6628cb63218a04060a7c014e0012b6dc0906cee5e3322743976ab3889d1f19b3bcabcf8664e2e3345610e34dc78c54d9631326bed055c1ccc2ad4e62f57d263d49a64e8c46aaf337144110d84cc84db1c1a245f6ec5b6e5616e3218c50641cb76e9dcfbb504164a240c8949f774a2fcef093ba14bd686bec7ef9802af9a53ca73502f7b34a4071900307bdcc126f93db523fe55d9bb3c43cfd2603c93e4e61709a49854d95d5ede525d73c915f95e1622e2d3da7b5fce04d31c76d851ecfbc30109d17f211f693914f2c5b3a141291e70ba2d5681dc5d524ad9fd2323028fa965e07bb86d7130fc65db8ebe08caa57fc99851d9b61562c9b3601b150e6d9529d20c92ba8bb8b9bc52436a7eb3e4a5bfe4b28a88c9a09a992d06b65c5e37df7917532d5f5c8a02f154e91efbb8af22d69fa118ab582234e8f7b3892c9b227ca4f20c096a15d6078a061547b7ec3fa37baf1844eb78e7e5b928c529a2987a25a9570c8fcc250c2d060eea3ced7fe02372e2fafa96dc7bb9acf3907aaa0f9ba36120301da11c98325163fe005840996db7681a30e97ed51abd17a3c77bf8c348ad25b44a4a94599fe6400acb660d3b7cf1b92bc1e481d2e3739d38256602b61d13f46b4bf9dab6969a53f6d580e245f8e4d87d1d778004643fc9a53f84502f9f45e692832d10d3964306c9cdac74ccef79da0c182220e86129f599912e6d178d69ea067666f3079f3d1ce9efe53ce0160b6d66be2e7401359aca0d3d6eccd518561fa56eacd18a20233701c3899d1eae21ab08b5afc725aecabd68fd5fe8ccd4943c8b21a8f1a5b1a460ea2b4d2b97f75f4c87290130877179e616e66a577a76195ca388a340a5c27631b8bea768c9d79fb74ebe26cf674a402c3ac614ab2cbc87062ac3b0893419ad64e8240c30546d815cc00b2038641b90afb10d88540ed3de634d14b15a705ba00f95593c75f21308afab1a611602f74b51fd8ad98e62bb9651b24b1eb307433b577da81671f28b1936feb0aab67a71af9f30137f31f748c3797f414b794ba02c18b8c5fb9b391c5bdf76db4aae630e40956e6d76206d9d62dbbcc4ae2014eb55131985159c4dc5c9ec3f9b65bd3a59ad019434ce89e44925c05645a58a5bab5f384516db412a8cbea80cafbab4c1f752e414a0eeed6444e8c3c0b30e20d2912a2e3acf6fb4c9e90baa83aed0fae14110db1b93ebaddd5dd4b6dea9b8179ec64432fb6f3415631bce40fd8b7df4c71e638290f48994ba6646aa98866bec7c94484c86c18fb033c6608c543d51f5fe2bd7ac9b6f2a151eac57c7ca8bc073a6c3dd4c351c756d516a8ec09ffda6b02d04eb8cf35e56d2d1c903ee2e5c07aaa1e82e0c6e6d949805548f8f9fb62362e917a7a2a330f2d2d643ca11eca1f6576334f83fe059b84a802ef9df96852c1994878bbd99c9320ffe5bd52160f6126ee86ee61d7e8035122af02a4b169712549d7cca4ec2cd1cec917099322fea6f82068e152c2398995bc7500921e98b24db954968e543d391a6605b8521c1a10ae97ccf6d0e09fd758a5978195e8de119f1d78f95ec441889a5e4ae09a58b12c1cd5be35902900c1d58c55344ad1d363ef230d059cd8597729a3d3538579115567065263729d517c80092942207548cd50c5ae89cb97352de1663c45cfd63c748b1b60861493facc0a5c7c6a437dbc62043b6d05619c67d8b601dbd5b3a2408f105686be26c70919d15d34c97a61cc2d48d9847ebd52f310d8bf42869b4a19590906b09ce0453f85dc342726dedd1ca774e9c663ebb48e391624a0cb86526ea2a9dc94d305265c6a421cccebe6be77404d3963832a3dab32448769158a278ecbf31205d822804a48b86bd4ac5cf28bf0b5a20cd363c3b2667180d6def3600036442e2c00e408481df711994c261115e91489989500cf772428ad1683ca37f5b32fe40db3d21d14acc4475c43cfc1b6622336f4129bcb3417771985ddf4beba609d73475543d769357b50803e985bfecd2fe62cfe778574e28805a59b688384106118d570162b4f3314a3af30ed66da3e01194ed77a5a8765a466b092e64f517c3e75c3bf35ed6d450cc355513e716200a848a858a3fab9ea40375053e2005b11e8a876b67212c0dfb489be6a4277ff0d6989bad100a2225c45c11bd4b6a51fe06f3fb19d4679fe8b965dc84cca9d3745bbaa1725cd34c6f67892698e49d2317bad493f35207b85bfa092a38626f394c5026bc5625583a4e68b3d012a97807089ed56c36be0f592e5a85bd0e543637c67d0bdf0e2380ab30041d29d2e28aace11f21eabb436282fccda1afe3aedd5a696ca55fb45b19e6cbb570a762932c1dc8017e2b159a2d76e01fc153fcf844e06c032389b17731d3b14ffa01685dd666913f0319c91972dc9c7244f3c092acf90eb316252e08698ebd208e1812b987e6dbc1673b6b9247f6bf4b1571db9298a3fed3d8ebff8464496f37b519145df11d5e283e968827455f167414dd7a180deb23767ba7353638c5f4f04ae072decbb19b9fac55e64805d1ee6f2182ebfe97dfd8bee0186c8a9d537c402050b618c053563ccffb66b61acb55d413ab03e0297162b781b5eea35843b76ffaeba4e685a1d1dc37930c4e3cfc126b82587907216b59b004da1efae033084c9ca7611f0b36af2c434b88f857848eaa375289a8cfb408acc1ec6e85d4e8548edb1d09e16bdc6c85752b704e6c0e23c533247c241420238e927aecfb19cf9702b43a26b5647cee32c962cb2a0d8f8697684dba3d1d29d45b2110017a85a79b464648fb6c1add1f5275d29126165a5f12e38551d81edf01407fb56f4db4ea7f136399d18d31f9f786965476595972bea030e9c6a80a69c5995c2cd2a80b974ef40c695a7a3fb1ae7488072cce165e6b5589372623903ffe0f799c2ea673bf2232918516a6668944ff900366e24f102b2c711b9ac317ced338c891ca8517a3f0e2f838de411698c9d46b8517d83e0d983af56bf4de347831ef24ea002d1eb2353ad6ac3edeb7f4e056c95f855b505d0704f9b9637ff2c818043bc90247d05b52bd93c3034ad312baab082380e5245dc4a231c35f1bd42814bae2e1e8d69aa24e30a76ccd52082e20002a0a4e7a216df93df40537da6ec01b75b640d039fb31e4d3517726d03bfeb1d2976e7c8153c5edf81b995db896a023958e0ee44576497009362dfdac398cb1ac335ef5f12bfa7aa87402d70dcaabf4738ce237366c925398c5f3323d19652a2991c48bba35896266fa9c92b0251ec099f2bc76d6b6426b05fbed0b5a353db9b27b12d3b056d0983b7998a1fa0ca0ab3fb9d0cd708a201142aecde818c9372ff6932fb01b5c3064981f97e3beb6c95ec34cb64790d2f3e3f7b1f52f8f328aeaaa725d17ff588142686b529f61e28a584afc062771ec35e0e46a1d26faeff6c8e2211ec51c4bcf96668a19b923a745010e9f42789034b4963b3c855073eae6ac94d0e58b610a519f073ac1f6e22fa07379accd3c8492940b0fbd856e2b2117427fffad6c32580cbbc2d7bc468b296c6a49efd47cd20426f78b7863bb35805723c90f610c6b0017e3a314b4ada082041dbf44c1b27cf11cf6e15e9398a07569372829e9ab78004491c713545d40473ddae248966d0eb39dfd35493366b1bfba8ccd46198a142cad019fe7c2a1ac0573288d16b8635e6a6f70b249630f6d256b1c48cbb28ef76225556d635f7642ccdb78b7f914e104951212d02e2e96954b3d2c57c3971a8923e37697fbd22f0db57af894ce2e86231072ede042c4e7484984d052f63b0a8b24cd6e33f5ce0ac9d741f4ac29736166254188d236f7eb1fd5c9d6f11a57295e29cd4a0e591430a2f60b44e3a0e0e796205fc14b6c7b1081e604741f5f44af4a6ce0e4b049e76718544d3e223cdc6821bda53865304ba506f3d022399715a478611e0b0540a910a42f840bf70786935540536ebf6ed323c2c332f899b6f891712b5099bc3f6fe6898c2d861d94bf004788a1fe519c130b8635049c398101c19f324ca28d59cd141676f77defc4693379da6c05e00fa5ecaf12094398e2be120428754600ca9e091e0d5be0adf46af9b3bd83f44cda3542051437603f6f42c9a947a16fd23c547ef8f01f9b09c661fe310ee72605e036ab188727dbd7cbad70e13c006fb0b5bb4652d01cc83403dc2d4040dee183cd5297f710f08e4fe38bb3b3244441479cbe36103cbb7c6d65fc60190b2f460f44a1bf0ebf61c9d6d8614d295a3d951a06b5335f69a64447ce38d5b9b9d23c8e50f59ef52ba2390e3ab4ebcc556bce4fc2c6e1804559b625b4287c2503f37591dcfebeab04469fde4fa7f8c266042ccfee50a7ab778567a477cb6dea818f14e4d4c641c22ca77d644eb77af54b0de480267e9c689b0c13d15fa73671d62a9ffa62dcc60d2463cf7e6dee28c32f5dd00e5312f94f51a19a7d07454ae2fee018de1be684d00a3f8e2171f48445187bce9b519923ca55c297589ea3d8c1a523732176ca081985dac7569d2c17ca0f8171f3159c29de625752bfd747a6e5ce53e3b798165d4f710df3eb892954cc32a994930a5d0d558aaceede6ab80f0e7172f17cf939876d9f38d18acdfd01993ffa043925c187dbf9f25ba153df19d6f0ce90d267693ebcd2077a862d63652d37f449297277e047fae785c9f6faaac0d14e84cdf7547fc4f407672faf7757794cf01cfb7e8998aff86347b343b735e1f4c55f01f9e975130d6906ad395c1d14608a81243e13089bd79ab6b3ddbc28585db3ab6738ca81949887909aa53eb74d480ade84e7d989f664d28362556e27f0fcf09d9fee558fb9f11fa6d5c996a07a0b8fe80dea07c411229588ba1595849a734af7cc879d1ec095b2bdc99a12b57e6288ced9c7394700ab6273ae0b044b0eee338fad338dd3a6eb7bd867b6191e950916e3fa0e84ab06c35785d2b02e2356c9a561184d6b802003163f05b09f413e7102f321551ba257d8ace2653aeaf597099cd75af99bc1d1ddfbcb4af1d3adf12b7490d569e133e92ed675672934fc0f885b1c9859d802d699f46b2eefb2c6b7696d96f6531fcdebbb4a536461af63eec031641068b4bdc4f20a74015f3b098a58f7ef7aefda378a3476c19123d45f9beeec571cafd2720c30bcf793ec461b1b084dd493abf4b39fd9d065475b9032f661f9d62e89a14940163fa9d4627c3ff34a518699ba6a093565abe681ab5f28d648405966df334b1794501a58ab4d4ae73a392bcd23bbbf363bb4d313a9cdf04645ab77bdd29fc83be70bb364b50e0e9857049d93c829c05c18cd6746eff6f787d2742c50a1542bec62528efadd3d74bf2e8dfbde2349b2e197b3abbd36a639f26d003770d590cad5bce819193863c12d7350a119de973577f4364865c658134856753f9ccb16750d0bd61dd64e193ae60108b43fb9079eac89383a4ff88159301990f076fc5c13ba9230b453f5cc9b0a5d9b37423db65437a760ff3648111dc859a722b1f90f0ff71d41f28a087ec14031c11513897f262c6cc0f357278c087150ed95f76ff7ef821bbd09251bd02840135b710876544b9d7e3f987f0e2f2ca21300015ff00fade5a409e72c48fb4de013c663b4ee2ce57a5289d347379fdd580f6060b5d8b3c7243c61088851b16adf2bf397233cd5b20471120373477187244fcada891298798b02212fa02819c2594914ae5bd894f859bc4d6a8299c153e1e1c8bdd709bf1666b204e36d3a06a2b902cd0092d57d6d76c892256b3530a708ab8b012a1194ff73082b642c41b60d1c05fb91ec8908bcf3f6df72d03095178291445dbee226e1943cc5c3cfb6f0b8916994287f1b8ce2b049fabc919a7773e79d5372c288b9147e8a94777557745b2b0e7dbde4685345881755ce17e093665be5652cdd8a3d97356ab298cb9dffd3c81a8658807427abbd0fe65e59762c990e64cc8062f304600452808dce2c8d43af6160df0a645b57a3aa9debf17dcda5311a225de04ddeb37b47c2e55499e802073887142053fc6cb1e4e7630b73408dac8d42dd40cab2aa20a2089588fa6d288a3a2af8807dee81637f4b8148f05ed6280cfef8701286ce1a4d3fddb228add62c0eb005023323d80cf47f63ec0b700776c329ec5a0c9fa7a522a3e4c533cce8fe54ab7a92054718b332fdb0b792ed00af3d2b6e4fe7de92d432da13f7bd54a32b275cb0dd4d6be31951e15d3191df19d3744c523a03ba4a1d48ca537a66ed056d237faab81240063b34063e4ded6452483ead1d1830a322059fb127a37857f86457cf1fccea69c8456949257714d18dad0ad529b058cf7d838b7f9263efcb20bf13c79ae32d71455fff73207b71908794e8eb9dc9115d566721809c198507470648fe759a1bffc55efe8594e8f78803a83dda361979fb10ad3860fadfa7d75839457c7a7cbd1b0991e6cb34a739a55224ce01f248e8ef23dc15ac5f0824e1cf1c3cce6108259b419b931ee5581cc7b1db34a0251e6e401c39144b812410e9e0fb718e396fda23eb50da42a8af8c80d96b9d5faa49d6122c97358b9254019c3e6d1f844e9af76edb724c3698b8bf57696315f5cfe9ab9d33869ee7eb04ce808ae966472c182d47c4883b9358a8e7cf75155a6872c94d83f3adc4e86288e9b4a18c4bb38c5388098a83f9631e14770642b96efc305eff4265faf9c5e6a6360c83ec581a06ba2f72ad5578ebdb27b24a62d5fad04f61d31047ae1e6ef247db39dffe467399657f135a6bdee801644c494310b192f0ba8d35402b7b208070bc5b2f88696f312cccd0e2415c994f23ed4f55e27b6bacd152f14f3f51a00cee135a84f34f5ccf92400be34a5d7f70fa2d1959e9055cf434bcd4b2c1c0ba32421f1fce19384221dd43cdd19f99b32ed7da47e11e7b5b2871f9fd1db6c7f3f2b9e454dd6263906d8589264a3e97dfb4fd05c63c6b153c1d25d41e33e4c1add80de81f8f0729b91ca8a093f7bd9d25e6b0c63622ac49d041a3e539cafc763669e8514f186363f51d54528bc5ef63fe38702c00cd8ef63c83f8aae45f4db2bde122820b5a122c9f810c85b4613f3034cdd3b6764cb8b92204c5859ab2c8befba034667986493de2c845b6d5fa2d6a36e8ef60684c170b899f9d370805336db0697224158ada4231815a391700bc7be0318e613de57df18b6b01aab45afac88701abeaa9c310719edaa598ecec96861d331bbd7b7ce14dd1b4915816a37c3e4cb972a59890781d9c29a18a18d2734c5f84bd1f580ebdc7930adb062e0576c82c2d1168d92dd117e3dae63e6a13ff2dd7c60a16a9c995c7275102464b1a7182b9bc5e14a5b02b33054d358b9a900d27dfdf714e3e7f21a2c0c00be8cbdc860abd3498ee96efbf5067317fe985410c88152c4f154d96b3d51b8084492f99a3c9057011cafa8bd22587948c0ea7258b1363262950a07c39138cd4eaedfedb42b5879325387dd1524e71e86a5021084f6ecdbc98227409ea57d406da5d3c9d933570df5e9a17bdb726f1f892807651ef8a407a60dc4d17e4e1d780fb65f6950546cc8232fa49eb083323ba71687c445f94a3b6967605a033120d9273aa96657fb3197b979fccc54c6b9882a131e87fdb86647bbe9e8912b8c31038990dcc0b433949b88a50568b6e4dbccbf17ddbde216314a893fb539f4359cc2a63c69ff1b4aa0727315392065f496c1daa709591b0ac428fb619b833765657d93e621dffe80b12b3a7a649b916149a79e97a8e25a98850cf10cea289d6b007e301084a828bce1dbb5375558e8169d73b6a2b13a2787ceef9bfea9b0119ecfef40b2011be77c3e38575bdebd5dc0790dbde1d9466bb82839950b44ff5e692a92614ed7f2784544338cd67dda0de399634f30501be4fe54a3adc7de8a507af1179bcb9f2a8fafca969800c30d0a302e9977b2f4405c1f91acc5f9e9fa6dd7e59f5cb85916db51ad8b4defb8c4b1b63f8322bd10490a5e59fe16473fd524f3ec4325a00c4b20632305de6f923b8422eb50831aa9813874836f02fd4c251c3b829bf482b3323fb077491b4ac232e8a6c75f24b9836d337fe83c76f17cdd7505f74213bd84faceb32cf7965824922ff69262ff4aa42f48b7aa97e2d2921a1ca9ab8ddfb8c97ae80283ba5a00cb6bc3567899a8892f7c1f537c6655bb4d5d877a7c960d678168d6da5de8eb4288c3cd92c600793fbe021fdc86d720774018d702a5584ecee3cfcf2458d148504026d3d202294df0829f529be843caf0fe9927afb2b9d83a5acefe19af3dca13904f7a0316018a780b22dad713b2e321d91b0d866eb5d11a26062a5520945d76cb089ab3a3e28586e3d6dbd44dbee40b453ab375d32302519603d94c44978193fd238fd4d4faf303381276fe44ec3175bc74991c69f4e8a8dcc1260a1602c10baa3a4a373ab522c2dba616511feedbd8530e5fe6ba1deab6a267fb829911bf54b96f73e3ad2c0798e23427fd15834e6e2e3dc310c8716441b6cddbf81f6913be583f8295b8d31a368382a8e68a31f35e5856e31eb3836cdf9d19f3f10ab89d44aca338206814304579123e41c61977a398d46e60810103b018af0934ea73bbd1bb4a21958afb3798818482da1ad4dfb1a945b6990edbc4f3a8d95b536dd7019557345de191564ff60979c68ba5a4a59314904f49d8fcdeb57a4c6c0757a1e36c5a83f956aa7d3d18d8086c16fb26aab927287fe6911dcbcc06eab0ccd9b1a45ef772cbf023372133506446122e009b1b68bb7412f2e156f51d7e81078d116ad8d21a4a7670960eaced647c06540193d0587219d23a600264fe9ebfc53076b1b2441df14272b1740b93cc75f351aca7b77bff5a6f7f1162e526a31cc2e32b4e9a5d7933f5129e1c51433e45936219c15e6e7e0940baf4f2d4b364f47fd00c4e12a9146d95ac574918f127786ac0f8ef5c4feb93b9d3995fdb3281ce70e175fc976fe8f0a4f91cfbbffaadcd95d3e371057cf00987df354b7a6755b67dade6a11f3f9491c3edaba13310163fa84cc6e4819f90c4e9b9c18af02cbd02b332fee7ba78288d75633f05d417ea7402861f65de44d0a94c5fcd810e4255c0552bc61edbe2c69a429c2491b5c2985351e07b53bf5869c71bb2214cd53a733f1a584d4cc0d0b15ad6180eb5ac68e602e821017e25f2dabc083c4460d2c437d251d3e85749580c1642efd61d4ed1a2b0e9d6bd0ee8a0ae729e593d051e9c3777e949f9f8ffbcdd84d467b29062ff15cb7b13853409cf0fa702447bd480e7a8e9289818ad5b5c897571d155cd594b36ef4761527b829e78c1fe28ceff51addb2a48b15fc3f9227b3bb2b8ebea9be403b9ca2c553497800eb58f6c34f3671324c4dc139ef26a9492137439598ddc06fcc61a6b205cd232d542541927381351c099d9831d7baabfcf8ae675bec216ab2a9ecaeac65b729be15c20bce47bfe249980bf0e046f56cb6e34a071bd9a39f4660c1b7fb5e046289f310f3031cd0e904f8df0fa4e46e55e7231439f357634b196d650fb3daf217630698567b2caec0ac7105c4a06f4a190eb75d5295d71ac1d57aa2759c08144dd6da86cdc774954a80fedb0aa2347dfa389b595c2e79938497813cc7dd75834fd9b2105e6d45cbd2e80940682bedbbbe3240805b59289e96d129789a31074ce1c5280c6f62b29a6d9ca17b9851a6fc836c446e6477137855f214412507ca2cf07bc3aacd66da3cd8475b3cbe950dbae407d4416e0aa66f2b7445afb9d33b76738375c7dfce6c3a8bc602ead02d4750021aff511f56c9e9af464ffa0325672759d1aaa39dffa3da234df615d82e106c98c188a2683049e968f87e0b823902c9822ca323e847d3e1caeae1da3355f22d29d57fde604f6e9a23d21e59f26402bc47ddfa4b1682a54cf97148ce54f77bb7387df4114fa3025f42a3e6b6b292c8abb6f6b987602b833b579bd2e1b1e832f1371d96e11da19e1ef9ea6350fccee3189f65c081b6102561e50280873d24441d9bebe1601e223e377d378d5ace661bfdebbae4090c709e0139418e15e249ecf5d318ec2635ac371d32a846b2a1140168321320e3b17e3c20bcc6578c8a52ab2138ce242b00d5d5cb2ce90222a3c7a5aced53a034dbfa0e0111be93dcfa142fc55869a411650648d46e783aa652835ebf98eaba5ac77088dff6da0a790a6af611681f0ff914df5f37a592e9a3b3a4217b650026edcc932b181624e452f4c079cac5c7fa6926cf8e4129b014cdac921850246da47f055048937e0ddd3ec9684eae91b390051f5fec5f2d8b7daedf4e26cf6992310808b06cd9a1e374dda286e1c7d9407c9809ef8f5de30ff3ed027c73df9f6cee2c085c76ac28be3d4abdd0723572f7a57d642eb365e05a14615741e6207e6bda2242b6ff7fcdddce2361bc5519733f29b1032790eb8f1d3e3fb82b8f6094e3cf61032b3f78fbd6772481a295433793972f24c2dacf11d01f52d1c07b704b880b61eb8e4e6469939b0b5093d192b3f42d7a37fc6117f6dda103c6941d6d0b5b044d8fbe039db204a54780820f5582f303e74dedede42a5721dab42bf25475a0ff56aecfffa02ab54dcafa495c9a5d4202a25cb5b71ea5083295055f7bc4c8435e658c68975ed96072b3ee8e1c73109780d009cf665b7c5e182e4ffc633b357e09de4c05c6c38dab015b4906748f1b41ee530f8d2db93e450ee98bfd27e6048d0dfbc3cbd4043e17c61f1a7d80892cad8cf803d5795a70feacf45b72b92ccca9286b155d4dd2b277a00912df00a30d620737285d7a6cf9d83922bdaa8184b5af06683e70255c100f13ddeb135d4a5bef38d35564df3e60e0629ac54751a65eacc3948e3bac06e5290169a95a230a4e80d15670e7fd522263985d678034d947e8161ef27e301d5145036e5bdefd97341715822b359119cfd0c821b410d7dc499f2d29acdbfeae5e46127a2a86572b9f237ec25850a84de877233332825adcc448b3de289ae779c513944ee4f3150618f0900947e18c29cb5465126f7e4556ae5eb75c323a8435aff1f5eb5ae1ec5f3d20e0b96db747d8ccc8db7bb929cfee9992f4c8e499a86fa4899cf95629aafef1ac32d8385c2cb1a6683e2484b0d9ed7f98319e3777eab8defd7f5852460f1627827bf747fded3f48f315cbbfc21db964c8d8a14521ed13e1cecb2c3e5e0ac6df36eec5608fe12bf919a56f4b55c33011bfea441523554157dff79256361125b87672b9268192e37be38acbf3a95e3828789786727b46b263ba006c054eef61495d303c1fc9b69cf433c2f26868cff565947c5e046481444d7a673b53ba75f6ee7de0fc39a3c7b44df0df03459ac4fa8326a552092dbcdb775a4ce738ce759d94a1f74f2a9de5aac5e944415bdfd17b7ca0d2853c2f3fc39a81266ce95b4821ae30412167cdaf1ce6835c7f5f9e80f4f59044ab6ff27a90380cdddb269704647f9f905321472e9ece818fe887888da3286bb6627dc55b39f6d3d63fcc74669301c63e973806d496f4b15ba71178aaf323256226c47243a1de88608fe1cbf4464530f76c132e6475a7e176b38c40133b7e502efc3c9b5443e6e0db3a63ceccc461324f4a2a13721340002b0b3948b339dde9a1e9eef07efc525a5b33e1288fc4e074d3574d22b9b56ade7eefadc39d0064fe3f0e942b1d10a6bbc2e35b9c3d2afb8da1c768c8c7c06ca4b883a6bd44b80eb6d6d90650e0b2de213c5a02a21931272c0b2246a62d9662d07c73349168cc19c0f85a095a205ae9dc12d4a8c1b52bd98903a96e76ca101a8ee40296dacbab41a5bfe5d9517cecd9a239e281334b814e594f87601d489dcc8da738fa93dd672b37859173da1566f24f14f1b7cdf6cf4c4744366f727c861fbaf4a271f6c1e6457d4d7f124f9d5ff0f0632c894c78f3bed1dc116f9686ba18813b496f7016ed7ae6d8f95f18debf6f37fa6ac37d150a0fe97b5621f70db14cb91e5de0a04a02f1002b57eef24e7377787b3fa3f3541bb3d37b2b11b0eb685c22eccb8b76e2143f0f0f69782b625c5b456ec0c482d275e3f285490f9ae10129134069fe8487cda996d1e6ccb8157ce7a8b1d6080849a92328fcbf02b615fd9d29bd103e4eea88f0b3bb851d92690e9c25bb18b31c12443d8f38a11e162b690f36746888c25bd8550fad268ef5b6abbbc7821be20e10fdf78c8add27d6fcbe4bcc550b510d1d1615a7ef5d7a986ab920a87d71ae1406f0cf166bfa55426e4415f8ae34f36bde3afb2850a1028a78fe4a0b4043e33f57938f78bfa316a95d09d9cc5c370d38bb098260e5c635fdad7556d9c1c6c82e12d17e87276f538d15e11f0df218a01a2447a20af409286bbae63bf6ca097df31b702e2413c620dbaf6000ef1cc0fc3b262b47af560cdd1d30c13ad1720ff4dec7b1d5b2b7bf58ef72a8d5fe81975023c8eb1647764830db2a7bc2462f92eb8421cc23ed62a95e76530a9a605d2d7afc43b384cc46812ed81cc477d0c03be869c365c32b0bfc317c2f2a908b4451946c46543c84aa490d065acf1ca837f03ba3a4fef3ee95ad67cccd5b2b8e63830cae6dd2c8fcf0ad7c450ff6ccb5897c2a2525427d7b310c544b838679cb440e96b377b355e48f7ff63a41033c0f24c754ef17f9d3871e96400e95b810ec9aedcbae74cdaae97a57ad5c119df64439c7816686f0b0008233292aa6d5bd0fe2633f1f6f042455280994ca56733fb0437e5f341e57d1d1e067181d02821c5fadb30a50683a677c81d37e982f38f17244befe9cf7af7ed1cbd432188154a128f86b6dff088ffdafec90acf8f9851b05f7d8d3d81b933d282b3845dbe9122e9f4f8ccfc54b1313762d059d63b657382dfc164070cbf046cab43c37a9334345cdf0d6d0da6a896fc36a6a2731dd9e911537f0353e89abe8977e535367a4ab7c8a9f5d379b7dd77d70a7b9576e7010030a01cf7f39075d4b03b3a3331ede39ace3fd737b4801e3058055bedc7add485e8bec0ad906f71fa5a183ea372bec665db589d053d64756f20a2c5f0d74d7737205ad6c6e8aebf8d712d30249cb839a3caa67f9471268acde031dfb77fcadf59cd8d35b291345063fa3c14d49b09a2a21e70e2b1b219330cf117c1f9a8495de4be6d0f112f983fb12d8bfe13f76e964f28f9442ad8a2eb3783c0dd04bc3538c2688316f1e95146a998da23c34a06ea2927f0992ba1ffb2ebfc00228a32613d23e11f5915838432a327e063e495b9454d9519b3281243bb582bdc36da4a4e5533783375716a5193356801e81711778ab594693ebd71e702b99cc61ee3b36b45f88868dfb385befdc679e09bf3a1ee640f13a30e4128bc40b835c1d7dfdbdb18e021b9b71fad0313c2f843d9703138fd8112ee841320f587d59fc6369e519be81966eca37cdf6db113672eb875751642a1a95d2b6251bb0d70c0c105169cdfb8baccad138be13dadd511eb80a47a6d6abc44949bbcd7c697d0fb43705a41563c1ea10d15e85e4a4241cb2aa7744a44222960f256b8948ee459b5b21a8c554aec2d172a79e159534f084770f09724e0abf478397cde182b0bb66a12297ab839b68eb77f88c23ce0e69a8398948675a9c2b7921cb422c2970e8e9fb9949e25e32d2d50cace54caca16403fb1c4b108a50d73a4a94f68d9a1f28cd86b637b9ec4abd89dcf0aac3d0e21da4ce70d13fb91c1023686398e4c778dd3626c5dcfffe02ab400931bf5e5eca156a0a368a07ba6f65571a726cdc93d631577cd04450426febd5ce2b462adbbfc3aa6b95a751eac65f17392f7f1baabb3af4cc2d39a38d2aaddacf25b12af3e38b84e3da392ac974d38c77471e6444072293d509012a2afd5c811d0172706b20960e103c1f5fdab581f0e2ddf76ebafaaa9c0041807c3d0ac99f4a1343cab2a797a492b85648023f5d2a35badd1f3d1733e4e878c03eaa9f95656e788b3164ac703dbd09591f6b85bd137d96f8639a923d10cc161a7e881aaddd7d91589446f63d6a2a6b0a2e37413a3b1af32697e25e56a7ac0b79d49d400ab6d01f15dc7dc8573326c5043ffec2a9ecf8bfcb1ed3e9cb485c5bf993046f61239ac9945d983d37c76646614308f59d257721bb126c008807fde4f9c6c8adf95c3549189a4698cc747b96d75bde5f0f6381fe7267b7ed1517c38c49aa8ccfeb05c6068d75ad15b559810f184578a2c8d6edd32a6a57ab3ad6b6488d99fddd2324366323aacf651aa14971a722621230d1db7c9d291025c7b56b6c2882fba026276f3ca3b579cf67638498d0041b6f95ab3a63bd83aa7c50e45102578ec233213b6eb9f0529d670803ad9fd356f58c8e794b60593350646a2b37225be3a7644c548fdfb0d8d6bcffb9df6a2c057508c08e7e7e5b98d3d55acc891472011c359ca9343761ad265e67925108be3ca05ecffba0fdda7eb13b7f8ca291ae4723a3c5210a27b7d4e79f915dcf39a4271852729d800fe103f77e8b095fcc745272547b1c73803a04e4d500ec6929f045d16a2ec09a6472951205f561c13eb09daa37beab9a450f1fadc4e261b13eaa71a93ec3faab989a59378c3b04fd050a74084287a4a02d72cdc306b94f412833369edf9b60cdb6dc40482354309dc3a35b904c29dc20e983c7215fb810ddf3b90567a2cd82dde8e77828f2a7f1c44277fdd44ac54ba5169e4a2d76a9d2d96c3b1d94758477af1942f1cda0074f1b2ae60558ef215e630e8eb277bd004b8744fe39c7acdb211dcd642f6838407271f10d75721df5b8b792c32a02442955b15d6a61f819935aebb1864061e696f63314b637e89d5129422bca1a23fa60062d040e174df2d823a5c4b6322f731e1eb78607fe37509056c1046b1364ccf95af9fc3a68ea718a04435e6226e8279634ba72140497dfcf7a6eaf1a679f303ac1042b805b1ace5dbe152d9990adab5bb92f6f5aff6882de772112e948069e6d5fd765a21bc5d3a79b24557657b2f57447ed1d6a8102fa625fe2ca7deece35b6e60ff94f0c465b8865ed100b2c1a80510ea3f2bdec508b8f5c1304d25bf8df7c891a7de911b392e72cbd4478e101e0f700f6326ce86bbda8edfaf307195414b1650450587007f8993b2b7f9f5658ae57b49f39fbcb441c183968ff99e4f16a0f1fb52ece2ae6d2aacee4fb48c6f278f1ec874d99954dade73dbb654a9f2f1341bff16a5523245b94507ca99c4a44762629b07753ec1aa9bd2508dee453f990a5f0e0dd741c382abe189b733121f097014fdaa3e82a6aea06b1535f534498f52e8da407886dc47ab18e9fbac66700401967e909d8cf045ead11383dbba9826ee1bda8e42c70312e72a891e9cb9b85d9b4b1a3a5653ab396b1100550fb32f566a119e1a3da416bd3a0c18f747d14e405c83f6ca948770d7f2a5f2007cb0704e1bca872eeaf1363f3d9b3efedda54912eac3cab337acc16200143333721210c15a7501590cc171681b3af9910442474f746cfbb1b0e6b379f6cc6428282f9e71b679ce3de5637ed2578bf9fa707026a1c3775f84e9427d10cdf2b54a1cafa49866be23d4e7b0cbe9b91716edc2a59b988872a193fb570671179a85cf55e35a8f4f9187864d8489ac962548d4519a3f67f1e4480d597f068cd62c8784fa2a15250c900b28b7f190642980b595971b54e31175c55e30ced78dedb0ecf92a741394f0c483d06155270841d60e2471e28e1c2d81b68ae15433047142c126a921344974583538acd6338d19a504db94437294aee8ec84f2d378e8c124d478dce51a010879f0b2ba30d1382327ec911071d7414b0f4aedbdf0461b433bd04a1d0e0bdce4b2d15836c573e255d6cf4c8c5e50be9fa739e3c79aadf9c0327f91541fa237e7699e49c5220c6d5e9dd74303c090eb615f29618b937eeda5a1fc570f6790747bbe934ccc75ea0ad3b6d5ae1fff29a6af215552aafc7c6f4f722949fdebec1c66773d985e5289ddc9ed0c4479c109c576e32d4682faa3f9503edafc9f27d8f0476fa9ee9dd1c8103f05b1a316364b6f0307819d3dba683fccb6d41a8fac5f9606387426eb5457eabb29fc935d6be6068de71991a4c3ea15b40ec4f8d9ffef0e375cbb232505840a29090d25193ca89947f51029343883d06e0da3653b071c407051d0af00245dbed06cd570388974652b073cecd33dfbe4224917fa9f4751d3e43f64114162766330a297700d12f646e907e9d6f51f6a98649055bbfb2d986a375db39f4256129dcfdaa77e27d0bee35665c6aa5de6988fb424d9f4bab57d21f1a85093074483c2d4004e0569b9d53b210fbf6f6f3dcd1f7aef7d72cec6479e63995b7116a4a3eeecdafef692790673dd1f0690ae38e1a30746c7851acb294156b1b1b3dcb22823f356e074fe07a77a92732707a05309365cb404343e3c3f1859d1f00671035c0a918cb93d0e74f82c695982405e4771c0f102933324bf5c06e027ebb6b3e09d65bcc48ae5032185ccb52b0e06677860b7ab568e3a6982c9bbb59645ae28b0475c3f4cb297158735d705fe09a64a13abd82612757f178f4fc229ca5587e6427486cdc257d8a4623d7af95219c0a61d17e770bc0fbd7e070e7b19872d9855c53e9341daf21527a27f18f364aff0620de50ec8ae6286813b18f5584fbb1f32a2d004b00c39cd2985220f950d70cdb6afe1acd68c87389ad70118db27ad8f4265292978eaf2848764fc172834c8cbb62cea8ced3e6b3ff53e9d94c86982c15200cc33cbec19a4e576006b3c522169657d7d1f7c983a3c3b2ce73897b2363a1d926920e1239cea7bb059b8fac9142f0643c05edba91b6268ff50efcbc646d30aa466aae7ff19744ce849f88ef012e8ad0ed9080f26f84a87b519595f5f363f1a3390b89d0306f4ce4aed255807c026237e03bfe0b831609d857f27a96114e6ed731fe063ea972911bbbf4be30c52ed0bfd8ee4deb25470e29a5c9115e10c8414d2dfe0d85517b4c67d092355dd7a300784f277d021d6b721975f0a567fdf5b59253845d4548dff347fdfcc7da715dea38b1137dc5958d8448a3927d47c0dee4416affe1ee2b01f5ee225c82ea77654d832fd9b3c900e24b038acae1d3a184f06f5f02737f739c9860b3319b9aa804d0b9b094a213878418cec77cffd0e56860801b241460906e6b966ba42d0ca5c2172e191ea6af1faff597c6b616a6a834187658aa833fbdc24c4dc81251e9b64cdd181b56a0841266a58a820392c3c42212a14634b9d144e6e972d624f0d326422a5ca1d3be8d6cc22b98098ea8956e1372454c68e5397b7caeb5ef25ba4fcd3c704bfaca204920b70350319bd575558da46f71ebe0caf9d1c185858140d3ad87e246aa56ce6d096b6b30587e472fba3755cc0efd40f2ce3b8f8b8da7954a00a1a8f4154e9be1f42321fa5fe7546a3e13bb691ccba590637028c6006f7c610f3bfba8f8d5daabfb0fa1a9dc7fbc847fe7b9a5162e4729beff9895828940541dad192ccf3adfed90ae18f602afa87d5d5d256620c2901711c3b681c94a0861c0baf5dcb9c92d9688969c4606ab0bf935dedcf90bc350e5d61711476adf4e2a408c806998548eaeaed699311e07589cbcddabdc6b11761cadb6908a9848351e6690a40c77f763adb754dfa6cf4273fcd0720f806636b237ff2506766c962e6e59fb13205027af03642b7f90c4748eda80e09d364ebab8161b28070da533dff450c81953d7af09acb886c9761307761aa52dbc94356f5bc3b380305ca5b2c32d8b8389cb0c2d06908604f6825d96d3b5ad0429a44d1e4ebeffffdc821146c74568fd3c6dcff0ab67a441bdee3fd0b801b1b7e04463dab6715c24734f39f6c7d56d7f32196a871cdbea5e59b35def2c3f0fa3f7096446fe1d017925d8064b8afaf76da024731139cde3895e469e475dbecaece9f015d31939a09d9824fee53aae1e37d3383e70e4e3a6b0444446a6bf5b78ce34ab51b4f7b0df55e04c84410cbed04e5891b7a181a72e853498fee29dc0cd0e046016ba6f0f58bd8c68c91a6db1dc78d25351f1194854aec21b9da85c2cefa1110d5cd42831adf5ba1b1ad0588f69cfdb10005f25927702bb3dfdaec382d6fbec356d5882fa5f0d1a2fc58761322e6029db5d31ae62059ffd9886094ee218645ba302cd8d206e01dc303b96efc719229b2e641bc5129d65d9f18567fcbf3196995e6a30ab8b20d65981e7c8642bdadfaee32cb894b864988892576f9e0a627ebbdf2949810858488bac0360365b478d805dbfce9f5e8597802208f605e8183f25090052653fa8896299d63bba136d12ba088f63e53d2383654e16f9ce8768ab5a733400e6c0b9caa8e2b48b1a08536f7950830a6d1b79fe75fd2b220955210aca5b1f4ba1a7a23c296ea9b72fc667ae8ec9e00d6a74a97f233202512be12ed5ff49400f2038b750dff42f2dee45215d5ec7e8adf5352bc376a3ceed81a2634712322ba3c57a792417a3022736376e845e447b77fa514c32c4615a09765d6e2d79dc6fe319f7f75be573a6886f026ca9726a4f75a20f8d20858d24254dec2c59410e6f0b0314c45c854d2fcd08e115ac8808b750ed41778787f001d33f0e71e1e07121bd701adf97988794b4913554c5f038cb72f6b1c0975cd30a05ef01865fe13c1da162e2c9ad8ed4b1ddd3038303ea6114cae49bd453b16d80748b937621d5043579f13dd07aa2f8122a69d73aaaa169a4e07b2dbf3c6222f3446bee2d0b80ea1d047fa7b4171aa379c02b9fa76b1aa70c32d04f2cc1540db6d2cd96bfe86dd473779e69908e5246507ec14211cb6974d04a66d107614ac17dfed4335a6900e50b23fb722b7988047afa4b5eef48c4cd7a2a8045c05742aa83aa406a342a2b094349f6dd35a8502e7f021d373ceacec3254eb9a49d15e5c11e865c178c4d7cda33848c37f30610a1250ac0d21bfd73fcfeb4c3eb38d01d005f195d333c014fcc708b754b34bfb2ab0e767fbcca68d237006a17470000eabd3cfc0d8ba2da1ef2408111483c8bc7dc7fe2f0f8b0654bacaa8862b4eed93a23fc6be57c395406ee34853c15665e64a2e91d712c96c6e483152a0cbc91dc973f5b15c366952184ea17ccd353043291f31b3eaed44b26fcc96504f77ef0b516b6b2d1a88355993fdf0888b586eb8d436c600a2db44cbee030f60f94fdb96f751464b001e6c141f06e12463ce30a6a55c7373001b07de5db9d29d2a15da5a04b6a0271b5a44fe96abd5a8d0ded19b38284648b2dfaffe42c9f65ec61b23aba1970962c93b14ef99ce648de399699cbb8ec218320f07b300ad9479d0161c4efc4281c6fa895be302e1963082ed7260e4e0f1cb6296d91d7ae7a6c18c764317d705d9826ab7c4acecde06f27e8778eccab9cad2fca28c89d2f196df94288bde5260a699eb4c23c773e3e261d44ebdda0b7b372c2e976b60e23a6a0fedd63656ea1088fe431c66903c4296af750935f4897c3fac8c2415d7bd0e2e0d9bfb748e954b30bc072973e4d65860dcc1c2fe810778b69967f54e830a9e3cd2d9381bb0cb2634c956cb6b6424b0d3d95502efca02f6de5a23930fff3312caafdb604ae54d5554054b781320c8e96327b8d45ada43d02aa44601f00bc779c10dc4bb546244ed90d1e8fdfeb242943351063d5fd9dab7ba767361f4961eda31306acfbc814861434ed0ddcec530bf72b764e5a56f13f327968dfab775cccabd2acc479b4005f4b4dc5297ec69b8b7140de51b8177c31aee58d10085888e54f2dd21f5c60f3535abedfe5eacc7c384973305c15536d900ba0e432885e6cbe63c5da08f9c94653029d9ce73d53725926279854fa4cf683aecf8f03eb2936e655748d4c3c469e57f37eeffc7d69294e4b277822a9ed56b04148895c7995417e4e35912e60761d868337cbedc21775445205c754af40e130359231e57f1483eeb72bd9caf29ee90ab67d4b3c2fc53a454b31f61a78447d706a061a266b3686023f34dc72db84633eb3db4a9ed1a3b7e82f38373c60434b382a66459132938966e012e11737f0b2d8f0f421fa426393d6c85ed3011db6b3d95752b732ab337df914be59142f64b753c6bac9266fffa3dab03f51287b69e612889f627309e17955b4eb83d62dd7cd21f5c1cc7670210076f421ab8fbb47142da65112c0e8db8550419c3b052be375bf420424e0fa55297d9807a7196d888daa83c9a9533c62e9a60e02e4072428224dab8a0bff17a255d1951933f683268661026a2bf9d446783978b3f780e304c802ef62366f87f19d7df520f0d1ee0aadca53e28847729f69bdc686522980abebfcda6b80aad139e24ebe0deea205ac0e936d7d565421638536da10c0b4a5f2d0dec618c33939ce2595943a3ee1802014766738743fb720baa0046635e8135f1ea8df323c93ad95b26c451e048a0432fc79dc56dde45d272b84beca99907de45571e247c1088d3ae4cefa378cb4c7e6d4c985bba3712f2e4bb0d3e12559b502953526cf98719161dc1c94698c49e42a0d782a6bb4ee6e81b48306f0d30af01700667267cafbc9ba40c6b810c080e1d1b783a9f03a586a1eb7cf36aac1319ae27a93c6a37a8a927c27260606ba476d56dad71fa1e328172016cb75c09f9b797d657875ef67d3619e7495641a2b2602ec9c4f9226dc16f8a8c626b0b3f7ddbf69bc8df0cfd80abd6b82f9de0825472f29767d5265e7eabdc92d23af2c09ec9aecfb365c9d777eb46256cdb43c733da0060c834f0c26cc3005b9f9ba74ba24adbb7241d9e092bbe91950093936f9ca0dce0727b91286109cf4928dd17886fe8c2659c76ce08efc10c82e187c23866e9451ef1dff55b9964407493342fb809dd55e321cfb3fcfdb562bb8cded28d1adca0d0801c2d8fc030db4e51377d73192631a1d4b58e9cd31427bae74320652342923046bf28ea55e748feb7d942544ffeb631c7bd3d84768a998e4997d6a9a9b433548c4f9c85699c213dfe1c618fce15aabe7e1fcbe8ac1f8f0e9ac226eaba3a2bdb3486fbfb7645fd8639670c0c81147b482231e4547b95856500b691ea12b27e57e09197a14aae3c4c80024d9e242f4bc69b5829839cc64244b928e2c771cc2f8f526fb920d5faf3c89db5ad7f5e598b447110496e2569fdb618fe24b82f79bf424242d3ef0a1a30706e85087b3beaa5863c637ba73318c39fc0e08584d5fcb4734760676782bd038eb4ebc0c906cbd93a632d7347feaa4fd1b959c517bbbae5a9b7d68100e0d68960f5eb933d41196ed21c38ecb79875c685f743a736e9a189561c142b9c40fa3e87c33aacd126123ac5eb96545d08e44b6dbf0cd3981571062a3f765b9693106a68c5c3f6f6797fcf45b10cb21c897560f92089f5254db31ace82b001a680e0013fe9f23a47a2004ca023439481159d7744f2016283c527f445d6c9838061e35c70cba3aed2a348fb9e6140ff2c05c4ab320eaee5dfb6069e0a42244ff19398b36ea0a53adc956cd541efea1bb9dc6fbc7c79fc15b7aadf498733a1d0d0450b5a496d93ce1410290d226b7e79981f4ff65fa10fe51f86838bffd81470e86ec15e2b16520ef4c2cdddb00416bc911c2597dc907781205c45de3812231d74ce38beae8cb5c1afc884214da0a6faeed90fca7b963290d45620d751105f63ab7e4bcf23d9b76d8cd484b2dd6f3b29303215f0267a0f511c071560c1dd2d738de5680190ccdfae08580b763a7b534001f360a79cd97e01b9c350928d1542547956262147dd3b9cf3f79c63454a542ed8ecb4d3e9332507208c32022e710565ffdf94b44cb078ef8d80036cc59ed09f3baa26842cf13f100223ef06365a765ddeffa27ec056e4f6a97be68be0e517ba17bde08c3e9821a21e32f4af2a09958874ff04ec149e15118d4d1475c00a0c4283bd05debb7fae06128c9222dd8ef09dad0c28063cb78a7ffd2ef218a8799962f9b0c4d5a373aae3e3236c00d4b5e77bb5597c210551ecd48d7f01b7f4b862028fe6f3809bf149d250a95e563ca5b23242f9574a0d50f07716a49b1283b8ee604618acceb7c2e9555445271f7d6e2ddb38da4f726f90f3e5a674bb20729c1997b616aec3675ca333b4dfc6fd18a077614ae51976cc3376e3278f11589ad8c83d2fee847b01843ae12ead18f53b7ec7eca638c662dd8a4ca29f99b0ccb60cb13d5f429d9182f5c015bb1ad5649ae974d33c5200ed6101f8e4eeb7cec8bd4442f23688fe0ef584cb624958099c0c02412a4d168c989081501b0253fd2d1336ffdfeb12bba239c259e6f986d31bbd5e42c07b6ce21d2a987d3d4ff928b732afeebcb69d2b2fa57c5285e996aa4d386073ad79b6e8ae649e5c08246abbadaa59c5b7af5aee510cfb9494bd833426cf7e71691e468f9276d3a17ce2f33cdc92aa9427cdbee081bef5c5358ec233cff9ecc8f27ccb142c590165ab799cc67845a1fb2490557710f545c6c17f2be84881e915343997063ea20e3ef1470b23bbbe8f6b4af026503981055ac1f3877cd13692e6972d1612df3306235fe75cafc62286bee04262b6781e22c4c45183f84e9f4958339c8eb7c4e4f01635e8515297fdf33801d46870652ffe17c2abb4be1b0193de95c616137866d93c1a5a2b9a5aae4ab58346ef27a486a12ed61b21470477d900c925f99588b3d2154552da22d507dca320bd8dc0fe37eeebb3bee2c75e243b2188d382a7de8979194795ead792b28ee5d269d892ed55db2b823f1deaa65424d84d75c4a6d89458234ae45bb729137506e0a6a17b4bbb7eb19133b16920818d6434e9a970c991dfcf9fc2cf2b1d2595b64244cc8b034be7dd205bc4781c67891f061d3574061214dd31c8245a7b3886f3595304aa98f15c19535c744158dc5ca047021f55b5578e239e3f2842592f0044f707f6e8861eab2631779af714bd0ae57a419544a0986d7643e7ab3eb577301ebcb8885ecc321e4a22213ea44b0ce71835fc0e124dc8c3c395af6aacb4db1cb8cc18b47d4e02ab5eb0009b33b97719de2244cfffe9d3bcbf12d4e106593e1c2e8efcd11209ffc41002ba653df0564d49bd0830a56619845ec69bf07620d802d125a78be0b1f4e2cbb2cd2badd543906135b87c7a5064f4dc9a9f223f15d469f0976662ca7fcb8ba2f66d98df1501ed921bd0264db2f622be9ff98d56660a80effa5c1264880b629ae42cab006bba125c60c6d36555575391256e9f3f733f15a8a6f046b5e140aa82b360ed661f5eed755bb1d898d011ec645ec9b0ceaf12dcbf962f5fe4f484d4068701cb25bdd1c483c3595002a340a960edc7449cc558b53f986998da5a8e5faaa309d5c2e8b2ac7593b6d268b11832711ed5c4d925a2920f08658e691ecb7fc56243ea4fc826b0ea288bf5078eaea5217cb3519b1978c36ab1b4091128c2b84db50a618521be12a9127d70b20df2480357d60cc6b11c6bd91345c71835a195160545f9dc712912f7933d75a64d779ed2841ae3fb0b5c58e0738ac2f28e7046bf827d416fd3fefe172b4dcecc1a96bcb588783d4ea631d88131f29b1ac48ef40284e8f36d1fb927590aeac54cb3814549bc190c30ed15c43142b52f483f61848b809ebb828bf9b5c8a89c18dc7226d2d93f9d7c34932b265a364e4a70688947ad441a8f0a63366c923ab75ef0b3af25200674da6f2f023c31783ad3f7ec91e651c0d26ac19665975554bf06b4b6ca3e9381a78466b193f968e4e64c8016b218ac8567e8264f54c2eb2a0f651f222406dd1e9b72b8c0ff3e0c8e902cb267abaea4f158114ec7404791097b967777fe7b603ca8779479998ff265c02327496d9392844acea2f558b149b1a0ba3a85f5764774faf5428cc577271037f21899121226340b1980cd5e9a95b6a4fad203c4d067994a65d922511fb276aebfaba4e2258453bcdff95dd59108c39645c19fcd0a45e8c22e33460727b2b477668885f9980e51aafcd711f0400e1da49a9a4858c054fc162154459969d4f74d8160f7d039eef5d8678c141b4c93f5cf7435348c279df77250df860eaa5c830b702b143aebbca0b9385725e24f8b00e4c0d03288d216378beb4b48938af3279229edad6e2014c2648a8aee3290c22a47b78664188e01884b3d92f8e66cebb4226713bc57e03b640abe9fd1982b222d7d4f527d860117b29ddacf18770104088b38cc8affc2d590fe46caedabdb8f32a1c9d97889e629d575e9e60c25eed26c499b4a21e5fe6763a056b6cd25ff62f2d9c6332594a76b377bec5da562bccbcdfa768b38fa519810adb0f1163f8d1efa70c978c0b191f5df64c6a477fa5b3323690aa82796d6b443c1234368bfc4d5181a56ad1b222dd893f3f4e457d13e3096a96de3d3d5c560b329dc40f232e3be654aca6c87c56800c20f496bfe5c155a74d05fd7e9b8c104405b9aefe2c95f05dd61d4b167b39489feabe58671e059ee720828069fd1197ee196543ee8a6dfcf5caa60756bc70e8d7c186dd7248729ca455ae67a18887466f40c590c0f92285c614c92b52b334561e38cf7da31725b34e04e0ee2e04be08d65dc63885cb010a0417c6e4243b68a2136d47e48501ac598ec346f4a6f1a7f3d26c17bff232f6cbd76d4582cfa0edde95785c6e0c25974bf794c38c116809a2d67077d505774bea602a7fb1acd0c34f93c5c993c3b3830fc49e8393af2d97bf195dff9622369f66769610c5b4df112fb284a57e5ce1e45f7a8c0bc2b7e557011e1c3ca4528ea4249e508416751e33ae1a61ed5f121768b075b16ead4b6915798012296986894c6f163578235e48933408100228f34bb0edd651b5a42e42f4b3d44effca6706878a86efef4e0417812d8080785d48d51d1b13c82ad2d9e92391e1720de234ad1a4415fa123c260462733a10c80bb212049c23ef148653c06f52a625769e0d052aca0c546277a691b84f730584a9b8997624ec890e97e0eadb59e33edae45cb3209ee43446e934f1d92ddbea283c55e67faa6bde5d48208b78ddd91fbfb9f143eb6df7cc54998f7540875368b2b84b38c59fe82da3f0477fcb60ce01083126cdaa7d8f9346bdb0ad97fe53f561087c4e3d9124006c456c7337679b21aaca5c82be61073de4b23aaae1664eea4c8faddf047c88f22a72e0318d8999296decf3529a71067079d48a1ea838c8eda1e7093ce50e2e09006c62a2b7f0ad55487d7dd461ef28b7fc674a98fce17fe55d3327c4d9f25c935064a20cd7ce593018ff26b07f9cd6758c1f517bb534b356acc97164e030d5875dd43c5957d9ef5dc0193154d03694fd44cd26911a639e8ff09b141c767ac3e954325002c8753866e655e5111e8e886150e85988dc8165f08119126858bdf5ee3231b165206508308c2964a13b9c005d192c9e0e8d75333aaf147c2ee4ca7ebd757d69a30d750925c3d7263771567ab6a5134810af9f613c5eda82b1bc739cdb68cd0968dcdfa25c55ab3f0c95b3c64fe02b1b15d89b0c1750270712a070ec3d319e233b18f81a2b00418ce7f899d009f3f88827373871d814b9affa08a13b7ab80818cc50f3441cab4ba375d0c2ed022625128bae272ce9f0b3bdad70b11795b6bd55a26a927426631946dd472cafcdc661a33ba3e22c3166b1f5d0baa4dcd12ced89a2a8ea01304b460161518932e8653dad110bd863baf262b9dd579b31aebed8e2edf03849167774754dbcfff8ed39322aa115d5eb9e2d1cffdecc11667b4a85c47cd26e466efa36d24aa843f0b27ee9372ed8a17a58447e87583e34a9e6f6314a85cd262028225c18c776b1b0376f62c350ada130a17000aafa9d5c1d3fd1de115b5e619f7346e9ddd9710cc8fe3cbe0b6de33d927e06141622051ab08992b1c900493e3b25360748c8a32b6825ae58300f1438bdf3db782d62fae2334eb0f0d2e4c61ae95abc577013ba851661b5d73bf15f2a3316be5aae9292219b81cfdf41f6364d1c26473f188792c2ea8fa24dfce807b4c9fd4fada7d8bf59dafd9d15a4b3e6141622079e1490f46cc21ce00f4a5d9b6ddef0cb57f54f1d525aeec5447f579b85b21b1911e2015d12915ad26a701ecf4c975046ec294f08005d75568f364cb3f2b34d70d8e52d4315f6e6e81880c3df1d8890433cb93802ef01c3920bd54a5b440a123941694b3dd089367910f31255525fe909e31604ecea033898a39c9326c19e49c408434dcc62cbbcfce1e33d2d87893992d6b49c943dc3a34e37549b8e777f70adf4ca6a6544d0a9cb007f946e842994715418bfa5e297d01eff32046896b4693e494878fdf9af1a18b03673c29504f7247c448af42fbec2051417aa22c4fb38749bb72881066f9231edbf29f1bf94988fab8c897b461edfe31644654bde8c62737b28abc9ab206b6a130c2ee8ba85fb6aa1a97cc881cdc91248643ba05c2b4d79005afeaef559aed1366c842caee9a66673e5a7702936a4ee58d9ff57a34e4c09d802d1ca8ba03f2a5dfe6780f8453c71367848f6146a66ee77c51532be57502689717944ea90eff01624b294a96e4ce484a7976325fa78700717964e08454d8f45948c1bab3d7f776ff84337d55ac067b399b456d90418cf5ab5d9a938836db372d5888ca654e4d35f036ce700a42a7c69d379b4fa12a36f9df4a281ed0503f3381e1d61a2090d455633cd0dc57ef2cde0e9724091fd8e20bad00cd29961146215439d7d34161cece2388baef2cd7b295e2cb747c521d5564e2f2c4fd47922cd38c99aaa92ffd2f20adc588b0254bd2a8a41563549ce9c11b6ad5dc7e395671706634cd5e35c9dad1af6dfbf76f8a3a351031636c9e52a6cffc4ebf064ca10d40087343947293f21879abac539fd394d36d56a5e37233e2a33f5af086c570fc5a10ec54724f312c84e367c775b52dd85286cebd7107abdd13202e1568c6e48292587162214bff084fd5209a39aaefb4c9bda2c0053a853544e80d02bbd18227dfe57034264615d155b5167dddde701f43313db5a7c45d279f605b102cac9270075529740d410121ab15844bf3c6d5f64b5ffef91e39c155aeea7db2523900e7e89f8618348203055b721a6bbb43a9a0ffe0452b2306e8c5f73f13618f5490f207b0e782c05a0b970763d5b9b2b01b7592fde7654abe15400d49d466996ae17d90470da05c30c7e98d5ab42639a096674ab42b0222470940a8f222775788301cd23c2cff77bee1fdb9bedce65cf7cbfa2418176648a1650ccd7a00934ff2569e7939daccea68155759f41050d7b1b36267f5f7f4b80d591d126d8fe3e048b3d90dfc3821f488850480922aa3117725117c31fc10c94fba2df0bcdffe7a41b24158fa298fd6d0d1ad65a3c3f69a10b116af51c361920bbe66c3ba7e43dd9d1139eda76805bea2531696acfb0f742b1a6cc3ddbb02bdc95a3e2a85d0bf27127633e2e5c009428adf515849102395bac088955cafce31148251abd56cdd7694646325857f62f79f069489c0538fe06b21af975bef01064af8d45ce17ed3e6501279f1e2d8548ee036bb7475b1491e0a2c9b779639b0054f3c3498f5fb9bcc5046f2142058d623a56e8eac124687866fa1c7d5a6850ba6b731e317fabc43f1c885b1fbfe4437609799d92c5b810b77bb93cf01fcc4594e7a5c5713ae91e08ed6f29f31775213cd778fbff120d5197f3f1c31073c9e03d492b61b75b585e9c66355feb378758f4ccae2bec18753bc7437b62a999ed4b400b16f6170372e350ed1269e0079f2cee5854249cfabfdb71ae3fe0be41068124ccf457d1c42af02f7c3a2b4cb199d82d457df5e9d514bf737a62a97c7d9e41d2f934792a2d9e83864b28648a67d824b928b03c83a667cc58a665c15c9ba2ac7ef9267caf2b207065cd09425e15582ce0a3def7e9c1fa7aa223e0b988a3eabbc0e7c983e597d619fa68a433a937e03e6104c7a803c91c3fb7248e5fc14ecf886ffed4d36f6346eaa5df8803971c808019372758ff8668bc5bebbb3e9c691843c38e5e0e7be58e495c70c30a40e13d71d46a26a3a3348d27b978a3a46cd1ace09a9405119e5730800feb8c36994153b1c914a8a86b16d075e5ddc72d90af224cf84f9aa4aac89fd99431a16d9c9c079adc68787da1dec936907837de9826cfb6be841791413364ecd092d03d2816e367b225f3dd1279a9f37ab3a722600df6edc1351755a75c8897b4146850a0a804c96af8db37c52adc0e0415053547f0e252bc89aa08261b0aa045737639e59a7895d6f8150bb70f5f558a120aa61c62692bf42337d03aee7e365fc9491d2f02cc7fb16e5ce744ac8ae4dc120a45f55abff16ba57e6c4f56108648494d3586e08793a055ac782b0a004d1cac9c77f19c2cc9cf0f2faf9f96f5ea8464eb6dd04d24d175329b3ca03671ae601e488a895735cd5a2d4945e4f90f2151e78106dd6bb0207123c44dec00a19e36b5cb8d86e84a2a3bda5372ac21c135faff6a44b9cd32573646e59d41c88c92c1a2b653b6cecaf1dd132c061acbfb45104429416cab4ff0faae565f77ed59a823abe96d474afb9235eccf4f72daee74b1d0bf182d7c5fb80352106ec3f282d45a648a2330263731a47b88e79f8737c500d8b8308c5603df18efcf51a5831552e37e9ae43043bb051202e5e29c76dfb5c1148e6bcfe107ac6130d30b2ba66f2158d67ef8acf53f8f9db2278743b281be42427e0d128b7a76011d139487580fdde733d847216b543c5e6feacdb12a7a4759bffd508545e0ca311c7bf8820ebb0ccd0be606f567f261645d4324cd30b23f65a1894190499ef8346f6e6203de13e2fc2192435f6846a66e1cc8d333d3ee6c190e0e72a916883c7ff2eb2f75292e6f3a5152bb9bea66fb017ae0a3a73e15194cc34a0f3ea7dc60827abbad3081a83f44fa95abb274d42fb4c48c7ed24571b714af661f5398a031d7e6d926a69dcd159ef195d9f87543283b3e09786b8239640eeb671c96bf1e58b0a08196f51c8c006d33e261e7e13535caf3f5be5248f03f0129a16663074b36082644c493e8f98ca6fe9833ca18b26aad84803a49f00d5c93f86969cd8d9b475da674952b8fc1f438e87a389876d74ff31e21d56c94d4fff1bf2659b8b5f74563f2840bddae7bc8025e984242a15c119b7b72393e3beca49cda7a4094be897259c3eaf32d57ae6718a84b10d788709a94970252ddbd7b108ede6a28ca73ad9c16a1d44a2e21cf2419360bce5c3da2c567c0c45589dfb1ce1a663330bbb780181f16b09542ca4fb6401cffb2cbfa41120f1224f3ed6c0197f1764142d85c6418222f39a3d58f74f993d78057a7b4be9874293ca4785f4be67abf9f71026f4aab253e512608b1dcd11b842d3613e1130dec6c2662e43a340526ed0c3afac1100f145bc30819cda9e0b0fb721522cd6ccb5a98146664ae82887b866a418922b78ef4ba2246c5cf21ad0d708c20cc0e32a9872d8ca4a0d651bbbdc1702c31db9b5f73f8c83442897f605fbdaf8ac0946e05fa80296a17f873f65049862aa3e31d4ffc2ecc40854182b9f8b0e55b07fbc27f0c4a84a0f93cad39ab8b6c0c46d2b5ae795ddd1643f8916727f645e1817314ebeaf87f20eb5e63efa4125315005b2aabcf5871b073bde55236e946b599973c5c5720481212d9d8f2ba8e804f54d7971e4ff79ac85d4129aed820d024b58cbdf565628c5e294b554b9fcc9e227460160590c31642d5af48372bda657507364669e76f9d3ffd4c6da5b616b93c1cbc89ce6b18259cefd7915144ddfa8b3a01bb5e6ebb1b21ad72103e32b31160b9287f3d69267ffb95ab65537dec7c1b97db0b4eb1a6d5bbe234a0ad63342009d4c12bb7964e64734d62f71161a622e5111ebcaa9de9bd9519df1d04469ad22053ca32100f2c47b7872658468ccc99e3188cc7a17386965200ca2f876375a15b59567d8f5fb856d8654f9e0480dd365c5d186fb9c7adbfa713502332f479b8608b3928a69264c5aa52139c5ea48607330ee8fd6ee352a6d9151de3603533322ba14348a22fe1ba8cde23eb498f792cb30d2b8cfa886e70bf078cf47c9b1e1439f715b1e764b69d72727f8577a7a6169585e96b23079348cb2091aba3a9519f6996095f7fe12f72b172c20a4deff9efa99e30561e5df26248f7b01b280097e103403bc128accddb8acddb300630923896d67f23743509d638456dbd9d05efca407c8c8c9e6d80dcb1119c03602580dc801d70e308cc5b2c2799e1d35197fed63513e8ed0d133addad544a1fddbe45fbf0632e8d241c3caf508bfb5b845e35394999884499dc05b829b715c51349aa736876a514659ade86881eda775e05a4bf52d238f4b11a11d032bed4774088447718fe20f66dd4dfb88eb96e36e15fe5891cf0f1fe3e5272690035812072418effacd92718f9c3252762502fc2377c3c8a13bd6fd5f4827e8b2b90f28604853fd719e829b7896317c37f0cbbe19ad5f7371afeaebf3605f50713cd2ad165dca4dca85c7540e3ecfd94c56890c68c6820bd70db65d01199fae5b53184e1e1a56c67e546717451808ed15363cda3bdf7b7b35adcb6cc817d06d7d2a3014eb835d829b8ba4de19536b062b7068f0527e56b255a0fe34a5cdaf7667931368ff0f65be4138546d9c67d43cc4f13c8489b77d819674a506948f10c492b3f6ebbf8257ad50d598d859ee35d2d844638dc7fd4a08d35cff1c07921a6b3d64066446bbc1021a53da91c4497f0e85febf3d5ad0f19370a34e951c1e8fe98963bf11b5d5294f346834c5855d76c1221768731c0dbcb2f03c99439e8590910e43108f44ad1cd4f7f6ac1a9b23451038644bce74d065233137fd350f7b7667a88eb271aed05bae999d15d2b76ed0138a275bba25af92e220f0300a610fa8b4f43100f1f4e05daca064fc984a7c065f66336256e954c3dc42e6ba909f2ebe4a8ae63d57dc7ce7b88a44c373d394289717152694a1128ee3b117f6fa3d897e5c090edcdb58139dfb51f7a8ec661e0a4bfbd5e2179974899fe49aac4f5c1d2d06766b7d2b9e18aa946964d9acd60a5854745f18b7f5559dfdf4cafeda718940d0a7d34baced609ecbcb0b20a375e97e2b3e4a486d6abff70d82ae706682fe6b46d8fa0eab9afdee133464076e64e1a405871eed6b4c8033f791654668817a4b251765c2fcbc00d8d79a1f6b01f9433cb2d0de5e207e00d04c95c546d5ef41bd1929fec5a4a17d2c9e3313d7f12b19dfdf393fd0979be69076408f14f78e1c7a7f57207220b3d38d672d06fdf3a9873eb5ba4cde0fa65de19794b9d3eb8847625e57b84f17c3fab32091622e88faef42bc87a5f437d43c5255510d9f413330613688f63c25471beb57ac61927a925acba99730ca6b23e4ce27666084208e07f24128b0f633881aae6c0c8baeb1a52ebc2bc17671a2f636bcf7962b0cb4d6266ddb0245ca26a570553a62971e7684cd03af347809fb792bf3c2f4ccf23590c51762fc0b7e5ee0c99bf099db4a77d24e20e766bce4f656e46da3642038d457dd83cf621cbf8a084872cc955b61fe03c5cdd78fde6b257633ee03d3e614a8f8ef93aa7133f578aefe97b76992a69b61b7e8ef7cd00712a68cef5f254f7c1d6a087d9702c6b88d9fa9f6e75db52b600d3344c67ead205da749b94a14eb364f7b4710adca8d104c5479ee81935f3d4231bd157193051742e617ab1d10e979f9ddf50735d370c2d426596b9b56deb683de4245579a70359dc955f91b5506278dbfe7062de06afcd8f3bc628ea112918d84bca48506c4de615ff9319f447b5e9df5c056d5a573c651d57dec8750217c6f78d9affe5b00b7b0d24f371d242346787460ea993177f713cada79d5922767311757fa6529bfecc3f0789e9d8265d8363e4f19518c34fcbbd1ea0bb1eaaec0a60a933ae61fba45ebb288e8afa62e3bfad09ba9ebb444ea86e81047ffe9647c79f9c50267a43e12ab482319c906c012e23df1fdb61caedc950a2abcba9eba03953a7f2aebb7e083ae2190f3cfc53279f2ea4a272cb71b566e25d2c212362b23fbab0d33a3e6f24fe88f8de093128ca26a7d450ec0b247ec092f0975551da60c7bccd308bfec57d648f7a0e2f6228b8a403b8cbec1e72a17cce271cf58c5616ae58191de6a7f213092f14bf8d590d25cbfb27f12a124ec17c0836b8eb975fd4051062d858ada8a7c7547d2c96f1405b44300be630434bc05d3da1db86e437b9a93eee5eff6c87bf65f68945f3933d828ee2972f8c5719f7040786b51bdf42b8db7b9be3f31da766295ec872c4e83ff5a07e64cb26be48d0c5f986b66630567ea56521265e392478ecdaadcdcbe10fe7b28d81ddfa91109ca6ace2467983c38b402649229e460fb0c253a0284a86118641b683b58ee74091bf44915575df0c78991742b4eb60b8418bc7c843a1b603556136119f33e4e007d91a1404a44c6ab7a4fb20029a770bb59233b87674bb0abba8ca044f99bb706702bf69298eb79a2ad70ab52c1cbb3370669d80613de6372b4a630aa4e34f55808aa8d7417698211cf7936684bc3c9778c531bedeecf715c1e0503b341998a55723bff8f1880a0af7e3262981d249b32aa36035669d2a2c04010fc61ef59468c8711517f31efa1daf36aa86a74018a3b42a3c44d6188e49c1d0b87903e4c491fd304227ee65b7653a2a98c78a5e2bbddd95ccaec426644e70ccaac5d9224a634fc7713aa16556f44fcfcc97dca52edaf778a75812c7b6701e5ec97cacebf0adeb2710c369452cb4c454af79187f4cbc40b6c836fc9eee4120140e6d93eeccfeefbc230bdd9b5db8a0edeab42a944895a2a8467bdd9d9e684c3aeb79fd1a581ccd7ab2a0046b7e51d00f97d433a462b0905e3bbd708e486d0c8242c51b145c52b1610502157e8a39320d818136ad242e75d7de761d0dd63cc45d39e2f8f5ddecbb36d7faa789d8037ce28a452809378483cd8aa1238225046c598a5645ed029cd223215830733839437d87755a61a07176ca14d55d91264b90e22fbe6e6674a16e4f70ee01a4611cf5febf0056413da484876fec1da2893c3c147092432c38270308d2f67386b7551736cfec4f3753396a8605ae8ea38d726b2bdbdb13a5997b0baacef1b8b6bf0a7e1a78574a910810cfa8e09930b976398a8ebabb3d6f746e82418dac4980096898f1d3f0db4755a9486f5e312b17bf5cabd695e521fcda3b8c44a0d824aeaf6504e63675ed68d8d8ba8983f0e74eda199255dce9bf7db5a441fdaa3be103e4131291036fb091901bfbea875a04baf00c71481f27c4c7010679a5150ddd00d867f70036d248aa1e458c6991ecabf14f65ce294c6bd507930448e3162fe3523249afa0ff09f8a5a061509a8b12ca55203c1094d97bb690189e5195c064659ee8ce1c69a8c9b101e5a53305ad7b52ef0136cd568a9ebf05b49bba64a186e06702b4da7583ae63a6566cd39492c92ffa100e1fa38a19071e7e0c942f818703fa99f57999df996d0123a420101c11d641f61588a3c931c6ba13d3d7ccfa00cf9436289cdaded49e54c600a2aeec0224dcb76903f72c88a4e2f5ab798e211acf6fd24962b2fbc2fdc2675c5a02f6fd6d68f70cd081e4194c365aa68a83a0a1893f1b646b225fba7467eeade3f12ce868d51834b1cb2a6a952556cd9041c002b52fd5335ee822c4fb1e6c1cb3254c82003a67721c66a7d86fbae339a20a772788a9d15d0aef8fb22a74af2ba11ed9531cc98e067b956efc942f1738f9569b96bd3c3df75bbbd982f87872df139e7926926bc910b7cc43c1110559562abde35829ca83da15a47737938d9bd96429544924a69d0e4012cfe1bc3336c7fb31a7fea698e80bf7a4964c7523f0075003454223b7760402c66917293297170be9b8b6cf862ca37109cf90c16bc24297515540a83c3b6e6a551bd35195862ef301eeba8a1d5f121763b0dda85f5c42c9b412cf261a1f5954f8665af6337483c98b0ff2d84a6cfcdc9e82e623deaace382e79d4e248a859e85e81898c99c97fbd30f34a4e0c58f6e84e85524bfed359978cd56fe697392e23a7736f3073501ccfe0ad82fcb7ac85fa54a916750c2631143e3db184ef4226ddaf36884ecc9a7918943a33403b283c976ab57d17dc372672c821f17292a04855d25ef8301c34e8206f541587ac6f7ae9ae73f4c13771ddef610ee099e27a12eaf87cfdb99be30d86087ff12dede7b835307b02034d46eabcaa2f4fca012645a06412f02517ec9318b0f3a05f61d70878849a05a549b014483119083f85630b1a03aec6961bfde1e0d207235e9663749cfa16dafd1bab28ecb55bd553871b70ad53f3cb7f6607675ce50fa93418bc4e908135dd367e49c81ac389262e1f36028fe27037db86cd2078347dcfa93dbb2b87c31d610db0d9e1766bcbd64966bc69172398f2dff77663b351cd1e86376e88feb03b275616abdc58f33d0cc394cf31d9e2c140837f7b6c4cc9ee36175fac5d4fcea01de09fd32b599e0288a1b4820f74a54dc7ee09b5798aa014f1a443e629c38a3f43f1f329b9ba32bb5ea2c0106233814d044ac4051fc60fd91108e058307d7feb7ee027a45b85189fa327c767712cd6732d582b5af5203c08874049a99dcd2831e34b9b8a2bea775a0a8c3acd1381ad5c837a2007a0dff3f6e0a59a176a38914766002bfa656289f83bae382730066cf7d74f0a5bb0dad54a29ce3457f46272777d79761487af725b2be1f5de3a541e751a660ac14787df4adc4dd38fbf4d4447e387e47a02271e9510440cac6df27a3bd877d4e06a2fa634d89fb7e01569016d62df3acc602442a7fbfc94673794cc1bb63e3be970501259c80a31e5df548184945108828e24f5fe87501e553718bb458f360b572b9390d3b599391b8b6a3e010420d35e4992bca0116a228a24165bead4f08821ab9874c5a45751d48befd074275250671a6fe66fc72af7e06913fd978e6ba7a202bcd30057392cf39dbb7b83615deb0cfc41651d5a55c00f6fe9caa435edadd482a9be04bf3ef11c9476c30eb4a0bd3a4b8f224dd9180f074857dec6b72a31eccba15fae49ddfdb031ba2f949c75f572e5b5fe61f8d83d533420da3ab34d25d9ce3571e5eff6328ac18a925bb20ecb72bdfe1ed26846e5212e355f361861cb9359c487b7c74be45d417b7f432c5bc9fe7d74817a0833270f1d082828d193506d3f08042a776e6e8763c728ee39ae3ba223f55660ae708c8f1d41acc0139a1df3eed87814e2b7e63aef921408f1a554bf6780c2aae789649b0fc2cfc052bd8c55f95e84a75b31210a354567d221e5c17353c8fb3f577d08475d8aab2397585e886e3a4a03d9d88970a9ba89628b946ace6c371b49e3b174f06f46d9fb41ffc03397f5479a56b339b12cc6476c4957b907dbc6d380286172e760eff6c7dd4277c3d524006e7284bfe0e328ab36e69270c7082a32c155f4a9965861359e1e56cf4e2b960416218b0963e66b55128c39842c89ed2dd004f7527873d205bf8399b8e3d746dda90ee0c83f7214431110d34e902153a708bf81f8615fae1b216b1cb695a01021daaf246e91af7771420edf8c64ce22d4d8a8b07969669b12aaf1ef6f08cfc0400cc8c102242ba39896c5e075f54077ff3de78c88d14cf8ccd9a54694acb36d04da64c31edec7a47f0c0ffcc3df7d5000cc294ff5d56f3eb8425d05904529d7226f69e2ba205b22b7bf9fb4ead2304a13a7f8b4b4e72632ce92d699f5900d64205ce5154d52933c8d5531931869d159cb956ed05b5e55d3728d2e39bd0d799e08d9c372bd40a087b8f0c5c45a0bd0fdf537a662bf042bd4f76e41feaa1788afbe67c995e93de7c29747c422a5399fd2214c8e605139659144c0242be71209a4941995649bc6ed8dca508b84a8b9d6cff02354e3d1224f182f2d821fad681d79c5eec9a8f4d6f341c0b731a9faa5cf36ba7ecdf1129e3fa68920d9ab9e9a71d096210097c88db4dc87d73227ea2997f89d8514421c9c33d7f9c172d58cb7d84cb67e214fbba70a34a6e90ccb4f811c56d4bbda533b73195281e004b9d3380ac839195395b35adec89675019de4f940a57dc20d03fb2a07421679c6c90cf747d30707c00b723630442ef78b457a9746496ab7c8cee63261dbf2183ff64cee83f20ac0520e1c3e78b5034772473bae8f639bd28052af0613323867ea065d188aea43fb7a85e477dcd0119b0772dc4ff8facf9cf71fa87d40ad51a4bd2a41a8bb3118339b1be21dda7be27d4bbf7d870b26e623fca075da66627f8700d45430f20afd3d8c863ac80e8391564215dab8285613b416824b926ef9f833fe8ed87d6c4ecd434f270963f6f7d9cdd72b5cdbd1c06b9277cd8ff71fe7d420c244442becf2369bbac44d52cd718bafbcf1f74e1c61100a80766b7017d7dbe686da24df3be888e797598892435ed57589e2c2f3a7c41e7306e7624537d340276725aa72865c4fcda61daeffade22986a7df1d3466b0218992f0de112c8a7e1044a563747c330a7ebb69f1202be34ae7ff5add210574da09459de61e6fd226b54d73381a08c15aad4fd6642782e5d8ef488e114da8bd047c126307842978787835c690117e906986fd6a6950d24854496525a97b38359ba86013ea225f7714704b4a33c380918c43a1909e470ce76a8883ebeee4ca16dd7fc35992b364255479983305c6cc036c844819f8b3f8f30c0ab4e60caea3d34fd884dc8a343625d732c295831753cb3300099b243fa4fe79929275d019c3f49cac2eb82c8548afa05fef8f8dd70910bd982b5d5a137b87920569b23fc07035769eb22988bd4f8063f85f26506ec135b5e69aee64f49cebe709604b3f884c335dac9f37ee6d3c2e2c8f9d9f3a0bd5863463613a43fdec211ffaa61d5e0189e5eeb63dc929354fd4fafd3c8054db0205adcee28ae3c1c73fbdaa24aa62d026ce481a3c1dd90f3d911461d986a97b20ebed5521b2383dcb1bc917ab8018f66b798621a1520f5166ae694d7c2b54629c254a4be908096a60a0f3f5b1863a99a8b4185e87786d905e27b0f10878212faea64cf9b27e397e922c825173e415533ce9bcd3ed0578e1068160d089981a50b47e8c684f9b61342bebff7227be431a2f068f987c3615306ef1e6fa6703b03484d3b5b1e4d35fcfebc2f5cdd9cd237d2c5b1598c6fbd16e5ca7b4f2e623c1adac280be2418b58e8f1321239e2674ffdd6bd8929fe49cc4662642de3879142e66ac9c092375cf03ba8e1de186ecc6022a119a43dc8ad97e91fcacc6b7b66cb5f0c9778b7e63e8d81fdcf3abd2d0e06a7c6bc9fca476847e410047a477a4f2a99398c60e8ef1b086915807291a0ccffe8bd29caf94de83f042d3d9a3699ef5d35b206cb3e6753f5bb90d594b53d400d1b165c9d54d5ba4bfb68acea6833d3e9176ba9cff1bfef00ccbe6cda00b590040297e6a8e58fa5cb1627e725f3b37fbae932ceff2d672b6f5624e28cc8fac19931d328d93bbcbab8f01844be812f1d6692441cf975d20160250b5c5f6cdd86b318084c7277b2b18c373210c841d17414e8ff6aeca5e33e99e9065190374cb3e4b21ac8956706b6b9bd70f3668cd0f3371b62835a70bab146e77bcede42a02937dd0694af3ce48ca2256e6e011ad38ff398310c9c502c25c94448e4c9fb89604ecd0b481a2d797d93fc2f27f8514c8fb7352ec78fcf9a0c38a5a3d6cf41b696f7bf719b7e077e7d527b539a6da4d79ec45d539b3f193dfb6a691e7f68729167b2cc6dfb8e8eb0bb917a636e46ebd86958461d2cd76be51059e513f173bfd5d61266b3996803f1b3382b2158792561ae7ba1cec321749358e6237455cd1bde84bc74e8a02f1bbe1ee41a5657a55efad2857779d3c584cf2fbb18745482d6a86443e7f3274ee056c607ea0a56d2aebeaf379029d657428d3fd0c0b4cdb03f52c23ac105a1b02458d75def59c2513132df74079dc6a7bb6f151ead089883104acb9630341272979a2421166f71f99a59481b824d4eaf0f3f9165aecb4a562f282105c45bdbd1cc535cc745689308df6ae3bbaaa8ea78cfad62ff9b7d34fbabb99321f5044b5707191c06d62a70558f70c94068a39e7873e85100c01f4e2c689da313ce5196db909cbabf0a05ca40f3256b540260f6eb58b86a09168067168e2a98fe0a4c3cc44d46252b443890e4b2768660a7dc9c4fc2002503806b6287212418f02fde819240542c86d435cc6a335a4e5dc07c12c18c92097f5ccc9ed27f773c19dfa3ad99166570cd9a5c82a84dc1a56e77c695d756d16f038b1bc763df6cd8d2fb456ed58ed2f3da570fe374dbafa813434eaa0a20137ce843a3d5b3c93458585b20dfbaac22d5ff9106dafd9be6d44f0baa0b875268dd30f7c7af80333a3c23bf8346f930e1b33aeb4a58aac7a8c227b5c47038de5fd8603c84b910feae52512843f1bfbfffb154e6442d2f95902e4868028b55121aaddf88a9d4664abced2099e9d02cd1d98ca190653039a246708a6aaf3d804769b4753e2fcc4c1fa595d2d89929160bd88e15e31424cb8b714ca54bf0c9f939b7c79066f2972d0c04f6a1ec484c1293948bc31b3bd760759c2e8b8751c3390cd3099ed9c3678c921390ce5d284412ba5569f21653840e70069dd3d59796fb487354a3be51864bea2f0d277e34e3c32b159c12131b75f71d8c01e1486635af2041f7fe2d62446c7db1275ad1f7f39daf54303c0e6003498fac5c6310d987b8e31f348ffe2f2a8b24bde22ada373a53dd8fb4556070945d6ca7d2cf1ef097cdb00fe9d60e0e7d3c99c235f0e25e7df995ec375a7d54ae97dac7040d7708d590cf2da511a82710ee668ba194266f597445bbada9c03954532dd992b22db493c73ec62de60a0a201cdaa71442e010d189ccabdfbdc22f1065535e9aba6dfb1904d3c9cdce9188faad65a7c5ae9c8b9690c2ec00b2e121b7c9e0092a23759063c25400602ccbf4cd92cf30c80102e7a85892668d6bd54ba06031bab6d333d58a4452037d0c1e2778cabafd3aa26e344d71150ee805c805f8b58fcc960bed736b93f70798cf6da3b65b35e1739870e92cdebaa86fe7d745d798e8d8ae2336d93dd807d3482e5f9e90b803ce0966c264a0a849aaf1b5425a23f73ea6f46425c6ef6ed32a156598bc1aa4fc432aad8968a488ea64f9fc2406aad5a3686ef9213bc315cf32c816f321009b5e6333295d638b45688255d1b506b5a80703b704f6da248665178cacd2720d9647bb306fded3956c6a37489d5902ffa1fd0028a7b052e615f9da4db8c3464ee4f24594dd3e66d6b8e032ea12bd2c874190fc6edc3952201048ea0a921920af57bc786961ad55bbd376dbb1e30c3b79f931d4868e26235065450b3432537ee19ea5a395b84f437f41a22e54a4fc10118d3c8e703a8912474855e262dd95ac9f1cd5761057c5034a7cbd742e1767203579cae9ea5792fc3c4b32b6d97033eab2d3c1feb498bf3ebf9489510163fb2a34d629048cb8a0b7b11b193b03643ddfd06986f18ea502e0d7fc7b40dfb6e10bc805ab72c89e00404ec1acc556011035c77f4d35989b955c18b3c8f7d0417829a7e4f3a95b64b68d41c25a536c798b27455de01e36a8bd0f17db06431390353e75c567b44f9071c1d2eccbdd8a95db997d07051dcbcdcf9b2d2a98b65430e60b71cca9ee3461dc748c0a845b6ad0d02bf2868404456391451d4b9db678a772339905d1f32b2b3f6d3acca63405c1c5994b37906f545f3548d525fb118be83334310e6910a5f24d2e9ed2e0aeb961a8c3db885fab62fb3b6d711af8b9acb6146841a2c3392c10c77d8b474441d4542e3aefb1d3811252b906b45673d230b1f63b094ded8705df8639788c2f8d893e288b4899abb11f15f0669fef77ce3164860d90ec3a851aa21843ce8e4dfb3609e8eb0ff8145faa25b41fd2f0916776abf922e59566a9e2338de7d80579e8d4e0083483ed8a59b2eb14f1c26b93ea304fb65b3d734362e27480be25ee348e2a7f0d61d4fa2ee1bf907a6990edd7e44f46621bc6f08d3bcf60f3fad3f838e18b8e11694ec3219ac458fb5a567473d9ba81755755f7ca131b1a929896fd02abf6456c645b499d0a368d92be2a0bfb497431d5055a4a4c85dd6f936ee5a99bcb1454d11674b2a9eb5006f5cd1dd45d5e3530ab23bcddb0505494bb18ae352576810da70d4093c096a23ff48fb90db15622c5d555d38e6a8a308bb19e1aa623b6896cf6ea0a57b6a0f8d035b9df7312e3ee2e1e30ef52f8274836fd9547d122e3d3426c5ac3b369b72176d22dffcba1a46feedd202ea7662a4ed4632e48a642885780e08f2ad7f3f1e49cac924ccec60e9f9fb01aa5bc797325b81398991add24ee2824d62a31a1b2cfa21731cd207347339ea20d2d7a7169cafd7862506f14ed38ea0a1dcec6e8c948b7e2219386576b4c07fe107d0bed2229ca76e123fcdb21eea6281b98d303728b88426547ea8808bafb061b25599f129bdb4c01abb81167c4038b0080d187f913a4479910f9e18ffc76aa12f83ba6424ebf446403672f7f7756dcf1c459978d4e73c4fa733381572fb4553a907ed2dbb88ce8757812d1bc90485ea42a03a6f3f0f46551290329ec8811dd607df9b3ac7926a8393b3d68b72cc9d5fe052e4be2146dae1051e48ded9cbdd05740bf85c974d1a2469a8dd1980da5aa0fd42f2b6e5d7e9bbe128f65d81519f0310ed74b7f160d0c73e59ebd88b8d7ef1fe59276599427cd32fa64a97e98d2005fdf94591e036d68a3e91e7e1dbe16a5ef49b86389203372f34060d5be9ad6d91fcfeeb29cdcecea07a7129ce35dfab5a6010e5974b25f724b689011aaeeb0cc0af20f4c833abcae35e885836c1e8890a92aecdd59dab980aca65482aa6582da4d823d22dcd02cd41f848d2cfce7ddf058be50e5f4021c5c04eb43ed864def1061fa9b91a4544b8c4e9c9dd85eb90504afecb85a9661febda8a5d972129376360d01eb5f92cc350ae8125d165ebbaa998f8cbb1cf53b901dca69f2f61d15d9406fbd8c35ce496176a3e90686dc06efb907fa5264e16a5aa8396d470839134a63141295ad8268eb39ecdca094ef9a22b48a477697dc341b289d8ebc215090887c26a0e24015b66512aec35c98a81ee94ddc2677bef8802000ab759c26e59c373636a9e054de89e0f4747969f2418e1cc79059817c600baa4993c1d029733008cf548a859df153cbd00b10c6935a9864fd4832bab76ad6318cc50a9e2540bbc7c7615898bf66e0cdf3fc8a66cdfe0363116dde9f1a857a398d08dfd7d7bd2982514289845ff9ca490b619e00fcf69e101f19962c8e164bca0be11436b9feaeb5741084eabf770237b0c97e034c9de512a7eef3ebc6f0c93e53a5452cc072d9034b091f0263106ed73c1723382bc0e7a1366f865b63215d2e6d818c43a1b5149e7142f10a56533de23160fc7807409856d359b1d1c5a1607a8765c201e211c379912eede0b91cf5fd653067a70c486ec444f4e23a6a85e11bd66ee436e3f57341a80e2ca7a926a23b5629c25c9138b5e528232aaff705358be005cad73b1b3d799811ece8d9564929e69170318a038cb012def678501d72d7fe6e546c2277faa7736c8afcc5f1746eacbdb88199ab75fe249b327e5c58b2239c9e01236baed224ee2170925c40f4040794f9562137286179958deea186c04b278361d20ef915c8f247f9ffa8f98039e34485a8bf6109fa097d29a35b50195130652978955595636e4f8950aa664a4e8bc062f12fde6764014420a1131b2551d31fa2815021110cc0022b1df40847ce597c6af4bff91a55712cfe5e394a25d5fd134aebb1414c3cfe15fa5a577791465ef21e7b48c9b52e9d06f4349d2b896d78fe633ea2f3350a5119d124d59321819bef2d47d1ee8929b1c0dd7b3ca03f037b5628dd03ce0b4fcc275105eb17cb598c22e0360f2f1a0964cd8f837706d4e1ad583faba8893c8f2d503891831daa5aaa02c351a8febfcdede5ff56f0ee85eb5bd895cb03e87c297d363a907756754d66280fdff35da82a28791b842ced6c4867464a7017063721283d8f40525924c3d415339d4ea14916a60812bdd5a6ac008a141a2220295550ff11a6f2f8a623d8a54610628ceb854d14cb01b6e497c0f5b790d16d0ce9434f58318d981488d13a5145f939c81d14faa1ff9b175affc32a4881d118b6b1b1888772f6b9dc6e24b3daa53b1097a5ae0071f4571d1e75fbff37a148a056a8c1126a69534f60798300e79a6bd64fcc5f9fbb14cdd7d2d973c272cf0ef852d668a3583381fdd5e58b751aed505bd480030bc1605c269d82c7af60258636fcef7c86e63098d1c37966cefedec3fa8315faf313b6479af67fd19eaf3796cd83bcc77e90260b0b13ac6548cd274c1c49f06aa2483c7dade4d097f2a224de217a4a3568ef2980acdd3be17852ffb5fbf6f8e72c8f27901056c48287e7b610506885ebaf464b16f97ead4be3e9bd02e9bac6d13a0a156093b5b70c9d49f3004c8127a99a47506aaa92d68b50c752aca1f5f3632e74d4633f15e4871f9bba1aa574ad11f8d46dae9b53bd2b3826a555799b7c6ee787de8f81da7f37165398d2b65e7aaade4c6c860dac5c478c2cf1ce02d4cf4b650cfa9ecc6ec68b9f2ce5be97a570b95e163f427c92db3752da59bfa09a028bcd98cd5f7f6ca23b5871c362281560881f595f827c3690011c9dea688a90dfa50281a5f6395b35eb585d3b621bdd6a428f534bb5c9d1f0e982ca7b7a0b5f871fe64b12f7fdfe2dbb98d2cb4edd3625eef233634de519d6a54b59536955ad156b098c8116d3438c41a446c9b439dc361010bb48c649780ef6a652337ba2f94e317aee448a7db4a514e5aefd63c5a86345551b5a0c0543d3edee1e4bba30a70401b9757ead823626312d781ef6ef75ab666f7836a4d5eea1064a7db67a8d4bc7386eccc81f13cdca64519fad7e1644b5141336721fd15633ca2a54bdfb62f24d373c3f99f144fb226f19104b44183e096500eb3b017f54ca08045076a67b3b4a60dd26a31741855d08afe2a1403790131500116039901d55c50e1195dc9e4ceea7d955957e65bd4a11935371691d0a08d50e7c40bcc9a1c6f488edc8490520bec43c51baeb94b4bdf61a8c82ac8e29c416baa44238006b9ec17b4ec6a8e65c6df2e193cd17c52084c2ed52c1ccdab7b4b76eff00e0ecbb09d7804207772e24cd11b85af40c9e792e151365722e93284948b3b924b578f86d65359d57fd7f3151d362f637b4f837d3ede1c0d4645ffa7f3d6b183e8b5f19d8a542dd587252e5c45f5adc943baa3e6b3e9452b1040582da5d58be16951103f69d08bd37f8de30efb6c35a534e5d917dbe3c97402a7ccac97d0e5e1da689d4134ab01de08961aa0b7c777d22bcefa23696d82d3c08a37fbf767db52472de513f51571f4747844687a8ece75a777547d51e4285136dbb07b98ddc821d5d750594e31822c5d89399b024a496f88fb2815126c53869140b1bc1b10ad666289b131a7018b926771419ac1e49f85e0c22ef63a1f343968c67625e99c4e801a6377097880184895784fa27609cac479fdd9adf8abbf16197a4879f94c4cf5c91a4f743fb41c0602420e4f16c14867d17bc681f05babfe3376868bb954016654a0cf932d9a2f5fa62c76ae88028ad31efcddb2e6e784a20e31f4c22aef43f4420c2e0d662c11a1c01a6f02a17a894acc1ace92e8c2ae559363d4628c943993b517c4fb7406b3dd85e25e6fe03809e374511e95d93f98e224465dbf4b3ebaa49e2e23c8f4775c9498e195f511bf5c07d6d5bc29c4f783c8770cf4d6a6dcc46406d6605df68357a35fd45d8f85588d045a9fe1938d42f791792ec04df425c771d2fba1ade81697de1411a4608b812e5493a250b0ba8773b0cc18864165784f10584e1ddd14ca8b15e98277e0a91d1a34ed73657929c465d5e45b1bee2f0aaa654bcf06356c1f82327c0c8991c4e86d623a9a94f223387caa67b935d789b506d548dcfc07950b73c518be52cca8ae684ad49a110be05cbb7adfa2b555fbd813924c00c9be80d4b4d70705cf7e2d4a3c3c8b4ce02e5e41e843dfd9cd3239cb8dd4470ad872016eb17ab8cb7131cab9a1aa82f75ef395aff59f7892e04186c0a04181d1511ce0f45ef6abcb494721f5d37976074912890fa05a9f8f739284d7e1936879394f18521e9ed54ec7babbfe77a9fd6b9fb6b057aab3c906808c98c68bf4ebec7e032421829d5e0fffc99efb9ed814e51ff7ac09db0372ceabc3440e30e2aec674a444fb4a3fca490ae625c71b470fadc163094cd86d9dba407ed61ad243f6435a7cbc291f5cfade425cc0b9637b44f0a985b5d98c36e647a553b445d5c0b98abd37605073cfd887a34524856539c6fd8a1f90eb68ab002d95e97a04b07067526d1927fc7b29c3e64c6872e50f97ffebe431c5c642dc49808492108a30665b5a30c9ce46594804399b385f6377c92fd2091a18552d33444fa4d212a9bb3653a5c1925048648bab1fdb4c2f0a31b460a74a876531fe415be6a7ba1581b5125caf36f5835f2050a84ebef81bbeedeba5adc1d4392122cc9c3d22b10cd73966674119ee35ee55a4952669a0529d9a4e5da5f0120e0ce0262f8c8fa7b2c765071e5cb5f7ffa7bd87454d6e28c0d743162d7ffb966dc60746239deef31e9d5913c145214249b887849b82ec59a30f3a38d4ac0408f1a2d1b2e2eb65f034680945a7e955f55c91741bb5dc011c6dfd21e2a607e07417b5530ad09c1d69cab5ac75214731ed3a0bcd98cceac3ede0ca0ec1e57973ceefd4d414a429c50e45864cc133ae75cbbf59415c5af997771292bd60fe1af5111c3e4bc042d15d3dc3b242a06f945782415b3705012c37152a3115d9cd6008cc918888997686bf74183b28d37ee97e70513a463b56f26123b35d8d2b841caefe82fe4d0f34099091479f60a643f267df325e7ac985c59cebdb07a4e81ed4e11e373b9133acfaae3de62f8924bf15bcbae65a809127f32a59a48545a06e30717b4fa8a5372d64716be1f46a044ba4fdb3082d5accf78df7db6e0b94888dd32dd01b153051e8b68bef17e42e16c2cdc330e93ce39cd4499e90b4abe641c7389039b4c60ca813530fb147340db1e1c09121a254c214e45a9201351cc9d48cabad5b4662d7eaf656bd78717a18c1ea09ef2c67308a632f5b5c735447a5409eab75aeb9c193646dbd0637b4038a7231f093659a52f4dafacaa5292f883ab0560295f8825f44dc135fd0c2da37ddf23a4f414481b8758715f493862a62d888935813f5b34eee8b55cc73b4a4fa3c6132a0d3666310ad847e9ff0efbc57e325bc446ba40b5e8cf5d91725e5900504a22038f3061936c7e4de697dd4109693037f8af0e9f3207f94dde6b3d431774551c1a030cb1b79dc22a395bef178c9bc03349bb09e84b1777c2741a8604f738d4122c52617ba1d0545c3b938dab56c1a9b579d7088bff269a4b8cafe3c733eb4568a8808013761929d93090b1115ba1ba72b520fd9f95caa8330a9ce5646017482b84c27b76b46a34d77491b234d754d9b620f78c123627ffbb5f2c24db97c4145d172b63d3a5de171d10a8d969804b5957ec3765834d103043e71e3b96077d406ce17086cb65b3f0d7c702a7f36aafbf4236f6fdbfbe45fb17b36ba5d6519c2123de7b27511a90bf0d3e99e8e9f671d3239a532f994a328def4ac0b419676af2486d9e74a88439030c7b3b87d75cdeda21055390fcb48200a18931913af965a3536d1cd95fb9d35d34a9b88af4f16abd2cfbc16394e37006f1efe5bca30e061466d6ce3d6fb3aa837fa02ce19cd649184e34017a9464eadc9830bb3ac431d42f053973fd07869571fad00cdbb9f1e7966c2e627b1bb10aa58600f2351e4699ac577347ec4f3770bfdde3780fd22101c64472f15eecda035ae149b5d2e9d02d4956ce728998b662d960f5fb90d65969b39028307e4ef896c7d88cf9abf0a58a5b59921eba94bec0a2aa814f319c6c6f77614c4c4862ceb2ba88834456f633181d3cbb5fdbc6b57ed68a5cf3b88d07b2fb0e96d854a2d5f32f86585665f3f2b7731e940c8721b2ab7f557fb503798d98601c718f5bf426c8bc4ab4fc2619e61f175f1c2f8a56193f0bd297bd50093fe09275609fb8c7e5cedcc7afc1ade9af19f944a4600a03a3fe817be19afafb732ed3ab372a85e194a4f8537bd1c7c876b9a32c6c36231468ba7868c1ed7ac12ad247756c65614fad6a4432ba1056b8b428ae42b785b810e57db43ee7d0bfde07bc158b95fb5c0832d009ad452e913c1b3f4d4b01abf43a98c32f1ab8c6eea841c9beb3a4358906a735ef5a74b435e4ee5dc840e5f56c1ac0ecced546c2abe4b1fd996c8cb36d83aba37a68990b1cb3fb6adb6de7de5aba9a0b2e400565021b858a4438a7ed5872ba1d1e152071307ae3f5200a17ee3e0948425f80666bb3cf714f45ae32d36c03e3f165713f094bc7c39dcf149b1dee9e124d752059a6ff53d555fd560b0b4c65caf9b358596569652547cc16b3c2da1ec5aca4e7d45da3ac1192c6dbe9c732f573c664c412544ae23907256408f993e0f2011cf3cc333faa8ddb84c095ecc7206a4caa76fe8728d1a4d56d33a1787f7164b501af84e9bb788e6e1c5f2a366be00cb576978fe42c5cb0f3de65863e30d5e5b3960e150d7eeda0d11e828f0968d002f0b8566db39e496c0e5a599d3c83df6b4a5474e64c9e84ee588c01cc7ec1bf2c7ad5b176ca4959ba45985666e5194046c47083997c12ca3b0e417dd860af12e6fcf280eb010bd15d06705fc461ff9daf4fcc01ccc60de6276ebd59887d7fac652ae8629c1b9fe6fe9d8956092d412819de2353d10d649e2d3d5f8e506cfadd5f7d9b81045b2d1892e44d585232159b576c9e3f7b866999f29ca31b5d9661bc66c509c8ab211c224fa978240f8e49bcf9a3873f1be6ab78d6144fd46dcc4912413d60e3caabf656ea915e2a4e5916e746b3d31d9d9a60b298640abc76dcb0dd5583bf83d5b76dcc15add969b6a60bd8c91d86dd201b1118d3ff31ea19a5179091472c0e463e5609e57f1331a006f393565c1c45172b4ed7a928005caaa4bd33dfd84e12b7576bb85d46f9476dddb1fb4882ebb50e06a9411281bb3a839d3dc1d6775a1884419793be581c6b42e32c8de7028fd6d56e643f669cbae2b66de9bdafa1e832b0faf852e3c70170ed1d0389c0366713bd15ddb81a4da6bf67eb0b7d3074654541cc967c74f1813f3f0229c8b22d20865661cfdde4f98ea25a2cd51319f7de1de1e7b404c345e14ef5501a73cf48ae55602c058108e18d15f5c7eab3a309359f5816f1307895bc04ea17cd5eaeca56be3d062203b7f613920c39287f4b0e0c2e13ce01b226cd3e59d5b367b616a4debbcba9235ac5ba20bce4253b77543248a7124283c1969578546b2aba6162c59aef71b8307293439537eed6a4756da16cf892f504998f6af21741d33ccfee9edb9611904df3986bc181b0713c217372b451bc83e2ec7bd4082ff246e0f3cc7873b302027f58c0340f047c87d8a69e599489e7a9f11dc730940a796c22e0fc0b07be600014ea85518b1621b082d32b7a013256d35545b4d6e564eba1072b747ca32e3edf778cadfd65c61eee28d6c71b2f5d1a58e191ab6c652b6ec24f95bf42d571ec73d7c6d6dfc054c38d42428f1c98272f5bb18977d3cf6ee1902cd7599f09ba5f5d61028c1dca1ecdc057b28a5d02a94d170490dfa4ec49ca769b45765c2e6c2f1cf861cc3b9a578e4a7b9dc6306ff66f75e834c8d57234812e67ec7f411c463dd6323f9c52fb67f0b6d662ded5dd03704714324850092dae5460f1c76818f32cf119422642e962650f2ac156ca486ed011532068f3e927f5046f895b27026b373e7c665019b978240a532a0d94837c121d3d47c53a792ecdc131f835f4910e20b177ba540001e600d584540c6fb90126b2ec2c7945404cf5f8ff9f3040d52acfa826c91ea6583e8d4076375aa3f216c5e6f71ab9101a62225344fe712c7818178e79ac9a3c589883681d8bcf0c6e456c65f2cab12f621987c9af5c2c53501da563ebaf9518cac635c140c71ff230c77bdf38103165860e0bbc56407f02b7ba9ad8da7002e507efbec91961f647ec475288714f9710e33026f6fb9d16c96c3a1cacb742918ed4d05d6e1f03a0c378391e983f24f7f9f501d36dbb14d52ad1a7f3c36d98f596955637b9d2b7c9de491e74156ca3e2f1950b6f597a202aa4e63afffa9da82453c417542100c466496c316dbeda036540373fef5dbed4ba5ba1a8d9de253597776f259ed6394d82404ad49c4b861e75e0e11ef0352b38c38cb6a5454271f1888caaa6b9849d308ea432b748ab9cf8e1f20b5fd3755c9ba30ae60668b8e06f5c59e30dac411e42ac71fc06f70f2931f526ea22d6b499c9a94e34e8be40ed3a8bfa304c95993e86cdabb9ef26a8abcfc5c2491797daf7d8b781c308d2b1daa61980693498b5c3dda0309e7be8df6f286514e42f64fcd85a5c4fd8bfbd106621b403f2186cc5b6fd8249162890ec0353995bb85ca6981b2c5ff9d5f53671a74a31dbd55e77079a047c4ce34df47cc7f655154607010acdc2d44f53d01ebf89764b8271224f06ebaa4d25bf399188e6f1778523626b34aaf85516367616071f32d9d9a87f6696ff722b79db08bb93c45a95ce90735b32d404e4cbf70b2cfb25f5b9c0f89395c6131f60148a6d9135c771043cd22449b66ec22ab851d508682e7c8d043ff9d737b2c6aa3d5368552cdd176370145fc466c8065e548a364f349ae36a8576eb2027e2e39c83b8c4fbcd00ef3589f202e4ccad366f3b02262bd30f8d512c48d2496456aa283d32bcd22a68b59ca6933f6860883c1a375c55d8489d243f2cbec68bb89ddd5a2a357bfc35ca6cf2daf22ac947a2fb4e1d6b2a18d5bb771c4fe4b89dc5139188d6e11a21e8c3c9472fb11b803a788f53d710addc3883d04b316f9f4182feb9c98aba42a3f94e9fec380e081e842ccec18c49475b44468439ab7bf38e43a0eb3f3bf86b3766f775957eac13d40abfad1f02ea2424ed0aeb78b98a024025a55ce79525dc3c4607706b7ef83b9e981d128d1594911d8111dd6fb74aa76807350c52211cab59b0dc83c677c6593c87a65770fa0f4286e6b30c54a54c13ea1a96f1d11ec37bd7e46679412f35666feb44af8fc8c29cc8923eae9913fe4305bc5a3b874ddaa86adba4e31b6bd62ee70f5d10b1fb094dc965e59c1700ba4a7c6a07245935d1d8550f819faf43ba33cbf121b4a317c86b01934adc398f885354923078c2278624115c558bd2853e71524db4729e66510b130f0a07a07712dd29f82f8e6cb7ea199fe7180329805e1aef7d293382b0747e4e2947df6e693aa1046f939d52f82bc476b3e9d2316a7c2d7904c868496a568463a21d4de82b2aa8c2fa1eb19373da6840c373eb59175e0fc8969aa8ce37b2662b94489f4729bf6e804dead25add1ea8339e22f6ccbcef2e2dd7de5bb47e60f08def5a70b57f73f9ebc3570ab87b87a070db11b6ad3e3f66c547edcdf05388c1be61ddd0ceecd5fb24c7e7618d5d40f1304356ebc984402b70a69269c67ef37f1bfad0ad60e767fbfd52580f2c59772b768bc6854258fd5ece13373eb059bcc9d77f2bfeb4a50b541688296ce3c4ecae07bd9567168bd31c0d4fdbb26717a96ce2354cea14b258d38cb779c6618b6be52b5ff9dfa5dca2253c76ed465124c6f988dd4d9ccbbbd9eb429ce59e05da8f82656a99121c86511ca716e353a87a64b45512316ed8e2b96894beb8dbea8fdce108beaf1fc108b53486908b0a394b38790e62874405586da23f4cabedcc0c019a96029712cc8aa846bb0cf9e60388a049dfd2bd3ee5e5421dcf33fd9790d70d0937f9378c0d12180113ffaa0382b0414cce367605105ace3fee6c931ac31d8bd609d38e60f4badd5ff145e337d4911d186e437cf1dbddec81693eeabea7b5c303556f53ac0a18e45611ce43fad24ac05ca06604e02e2a01557bcdd2574c2adc098cb295cb1195ad285257a845e38d9382712050d6b2b68faef8b78d310a96d395b39140b12ac11f59adb3ee016f18869e8d4ca194395f2c172af3b31f72a55c8c634dd670f07ee51594a133257a718b6236dfdf523634d231fff4b19a25f9bdc6c5d46b7fb257ac063b9997fa01481eb0321e835486137f4e96669afa6d2e08d6a6d1dda241ac444d128d33dbc2e6c8323897c1e92eab202cde5885b390b436f1d8ad21de78a3105eed21027e5b366b0f49c36add29763e6f2a4538ae0e66dfbbc8f4fc4986f8b9039ee30824de33989294926d96e32207e5427c8ca21d9a01dbd45b9ff7169bb0600eaf3a5b6f981a7a6a99ec0566a5809ce12317ebc698aaa2dab1b42fc5d2681c81a956c3cbf67c71bdfaef8cd5e09ea7d6c58e8466a2a65076602901fec8056a27a2d49d8569effeeb9a36140c3884f2d638a5072b8f1e4174079ab7b95aab01189b21cac9e4898b0ad2015640510d4e7b2a645800555cabd665d48ec8019e43d517a63a5d604608356b582e6d4fba4777ad5801da9062ca2149fe2d23e1b7275e9b2aa15140553bf277a8d8666f4555a3fd161cbefb849fd9042509ea9b6750c1565a32b6781177ed66b9d6187c18e42b80a168ccedca22917ff8cc2333eb25da08aa4465079a1d1b5cdeb26927c7ca9839e4476e3df29b2220f1f438a33a16d751e97e4bad9e4aa47dd5ca4e129f7fac8f221311d15d669b5e112219346c53c128c15b1720c085b7267f6bdd26af1e1275e8f8c43ffacb24991505cc04a52bcbaeca58a5f840cd00c9483f82f379282a894082e407ac26a5f673e8026d082a0b127e767605b5ec6ef5189fab599787662b948da141b0a1c67a63ee929f1e30ccfdf9636d5fb88676f6fae479d0db1b7ae5e6c9fd611310ca12973f7eb9360b39537cb61f10f23a885a4df8295d3198fa1db3e579847ae50fd0afd4f969ab5ea7c82b2aa1951ffed2ce4bd6e8ba998001aa4addd2e223580df2b469f896975ac5332b1f4f553bb8db21b24c08a75948a6e0d56c4388a4e590e1264c38f166027ed1fe7f60746b4e4aa014889e1a54541c043994d800c6f0691e4244bddfc6020c1218b9f2632ffae7acd0f725d7f3102c4442664d828e51bc00dcfce840f42c0f10f945041c491e02342966242acb4a64fccd7d4588922e6e32c86822380e3185775260a99657f4c6bbb8a4745f667cbf5979ba32956cadc8df4790b7f8795a5b788004ccae79ffd39aad4d7ea1d4d9b485cd1edc2bd8b39b3d40df91b44648b32e732f3dfdbd9e4ba3127a92e89de477e4424821cdbae9e3a0c14268c40f2f27903078177d32acc6e944e2ee677cf61ebbe2b92004d556f2d97a9545eba93fd8c059628cc83e64d0f706c58e957b7fad741e4cf1e998b32d85185228b5612a9af54e4785bc0d1f9686021303d94fc65db8c9e512d6415ab5523eaa18dce8517a904a9c4c4c74697f88c6a39c457722bd704c7e2286e29e3dab057d596ee42cdfb9554b97417dfb132cecb1277d5cda9c3b1edf6776c4a209a5418c9a956c0250986f08661b945af09e3091b0c87b9f5106e9c25b18641a98bb1a0e32e33e61c38389f723bd76e3d14d301bf450b33dfa16cdfc6ce6bff6c400fea9a2d21802cf17743540d59281224256fd80d4292220d181c471693f83eefe54a813c36b3b173df87079c3d5e25c18923d02a78844801ff3bf62730d31c5148e532c043413a2650201a70c729ab03d9707fe978db45e26e06159e4d2376b083a6e3fb94000a2ab4db4452efb13509fe3f589ce59943eb4cfec41cc8a1eafa1a5589b8fb42a036448590f578be229023cab527969c8c28515fdab4b18bba4ff93948085d14056adc277c24cd383a0657c96ee98d9cd6e45b7432195f5dda63bb1aab996602c656a599428d8f319a7cbe318fa8423fade07c9c3e59477756c379c9f65670c4dbd51bd8976e7ab81428346e6b2aa08b412391ae932201e5f8d87bd246fa80c003aefa0de747c9de7363005a93639ae5c34534c989791466b9189f1f7ea973055734d3fc781464590c3d30a275c16a2b1be122742a1b203f3a629b4ccdb59031f636d1648d9ff2d8729a8b6eb1441969f49889627dbbd8b0038c65e45da19ad4bcbd9101a1f3ab16fe116c316c65459068fd0aec638b3f65d9b461fb3d5dcc704d973cd5ae96ed389d33e0cee9a26a33e28699e486da80b56e74ee3fc1b7a39361d4c60a64928ca8f041e88d206cf93fc97d764d58aa83322ada2c3f3e08a102eaf26d25e714ea2fb34d4804a6c91f58f08d22f55492cec4982a00268c202a95da988b41232512ee780b4162a84548b9bbc389096afb384086e8a578c1e57d44938d66fe6d4f5555ed9b9e9bf05b64ed8f482654cbaba26db686fc47a0473265d6e5b7f309ea368a20236a1fdc6854a0b89777398a299cf1cc638747af64e6f2284487609a8e02f2925244afe1cb50f29571e415b324219d358f4e1b6f27bc638c182a23bcd3ef1d92b26596fef600d40c4f27338193e03c6510f97ba5c67d510c0ae36ec1bd3897b690d8e6b9b26b93a74a707332e0f966fc7d6b04d898e063687c9e2441abfb38957bcc4592b778e3fda4c8f3932bf38edeb6ec32642b34218fa85742729e8d8be0f515c9bee51d55f743dac76819686aee66ab1c72828a4463b11f95fbeb83a1323ca1f952009ef8561a5bbcfeb37c919ce19b44a808eff2ecd14c86772dea3cfb6730be202aa34925657c412fe99c40d9a57c916bf54ef14f5c96e2c297243c8fed47a15b12bf19cb377b060db99b13ce69497d9dfca8157d3e476d405af82590cf0f2fae6b7d027a09b26a9b38434b28a085c747339515641f1cde15ef24aab86b88b67f7e89d8e157c6362c507dc6d8ce1c9d2ef0c7c6e7ed6615c4f92e123514afbc16cac105307b79d82941d476e016e4f31d2e3216d12eecfb09ccfa8a7ae0399d39a495c14c356720f349fddf8887a11b137772a51bccff2dee692099ed652f7688abc9a68c9e8e3cbcf6fe0f5870317bbbe204f531e9bae703bdd8d4667775a61a9b93dcf0df19f2bde61de7e26bce7c2f5da6537d5605d3d14a378b83ce25c5d90dbf0f55455bec8a01551e8568b17ab4ddcbd0a9d4aa20861e089feacbee631c755dc72c1c174a1a6fb50b515cb325fc1010f251ca3ef29a3d511b9a85a71d184deb094d2ffa55b5c6e2927d6af5369f34d8a6351b7c1592fc255972eccedade439bb0daa731065c4a9250fe82048fe9af1513e184ca259ca53599ffa9b67cd2fae5f9f6650bda235dd770deded203ea003255f17e051a47fd6ee7819ccab6a16c0a182ff7bb5ea6087a3338d7af32a79dfc20a46b54bd9774283f629b86e76f4530d2957875e629fe67335fbd8bcaef565510eb23b76fa6c256f768327f1e08dbabd0df1d2e8b861a560db4241a705b95e4d597dcc92c1a6acf1feda017738de96c378b6ca9e7c9b200fa19ce56a879b6fae64d77e6afc4e1ec1d0b5ce6e5c3777507ea8fe945cad5c1c117670fb8c1590f46e217bb6b0edbe948f83614d8d7d284ef6b1988052c446fbf203f9ab70a6285735622a09cdbb34c5fd4fed82ea134ea2715612188328d398a78d46d7561b320a6b0b0197f625df6faca543d191602bc0877fd2f26ce5add4bb5bfdb6cc3e0e435baf1c2741b50641686cc5182235351801ec775c88ecff537dbcc17d6a40cd196ff9ff3901ef2857e2f15e76812cd64ba081b6cff17b8ec3f83c5ae9e7255d8d5085b63af3ae56577f55aa87dc5107b32f56828af63bcc576a2bee9b55294e7c12e3e1392dcbdbf3a6cbe0e5e640d96c6fd6846f563a9751924f6d8b2d09f92414f936a850a6616943c0d53201f27f9927c84fbfe13d4d90b20c75089e8cba3131094b801252d337b54fba220b297368ace019a41d095e8ac95b8f5f3a93a78b6fa2dcddd38362f46648b865c677802e5ff9b77c81f4ecc70427a8ddf805e8611cb8ffe2eff1ed4fdda2eccf6d7d34cac0551b6729f1fdf3ae39bf0018ee75cb58018d72089e5664522ef7bd71adc1f36e8ec1ed093947359a6b1dc1538f64042c814ab17d46501be10c4cf117502182d662dcc43358ad88c7a231e9833e02b319d53e8265a802a1e9554d00c37486861d097905ff893a0e3f5a0b49f40aadf764d04324f041fcba6bb1e833a8b671a7e4a1ac0d94cbc1e0d450f0a4acadbab1334b3c476bac0ce54e098c940be5d6e41d0c09788948dc071acda8535b13f10c451c7f2d903147604186f9cffcc947d1e0064671f1db9607b40ead5e12e30f03359981c084877140b8a86382df1fdfe4c1a17866f224b897ce8f80ae4ec3c288333deb45d4313ea9e29fb4de69882158bc2d8a80a597df6a9c39b66af696373b11e52b29656b274fa3d23fde92505d3216893107cff5ea5be841f6068a702cf26b3926d9529846341f88dd5e297e86aa336487cc67cad9b360df8a8ca394290105ed1749ec9496d1cf44945eca341b9b77ec88fa48bd590b86472bcd3d80e6fa65afa1ac801a3658f6e125ffcc4ce4d9fa0565cf25041cc3a126da72aa12aa8a4ea78cbc9926ec3bf64ccddaf9766330a5199a1316939b53ec09beecc03c2fc54e91c49e3dd4a7ea6ead171ba1520d3e32fcea8081884f9301a02571e21057ea368da9aac28e8151ecb1d51c8dd3512dc5a6b8939e916eb65a6d5c4a88b7f4ee5d0fa352bc38086d0c39e0db549278449fc41953eebfd97270b5e20be9e6b3a55b6e6044f0e51c083d6765805053956731a4d6a602c9737a76c03bec0dcf08350ee04687a4f26e7eb4bef4287b5910904dbad3c9ab313ddf1a724269547eaedb226da524a717f2fbd840e232035c6dad5d0c5ab239fb34be2d708dc309e859490aee074ce68661db771c764acdbbc258256417cfd11b4ea3c6550e368869b56b6704310bf19493e584d3443c7d40ae49f223ff2205a4ddebbc357ff92bab98c4700e9fd258202366fc7bc68e6f10a12084fefa71ca406713c45c2068638f3bb758fdaeea02714771458456d5893cbd7676a4eb0ca63de0fceddad989fc85155166bf175443dccc884ef37b16e3c9c8a97d8a33a2b2272a3ead3a1cb814ae166d2c92aaaddaf107f0ef3a6d7370bc89d94a66f444a4a06e0ef793bf93b9cf2d8d70e3e5679fbf80b8e404c1984b2a3ff9c7ca2766f836549c0d814f587224ecf104aec2f3f1aedbb6e88f257d3c0596a49bc93622c4bbdc6430f5fbb9399e2f084113c440df86aeff81cea9423e392762f34046ddcb4de9980ea3dd215cb42ef6486ae3ce85badda737f26203d387c602ca93c77221ad9de70bdad45d461ef4f80b2652e993f9c117aaafd9528d714d47fb6ddd5054328692174fbbfc3fabfe0f4414ecafb5a3a5369f827259c5a2d5f8276a3ce9d53c538a8b36d9686bc326bc5e5fc202884566f71d5d97df5a6ce644ea7c75ff272d4ee41de918110a1a142107054d1bf72d8343f56dee7d5f147da69871fe5e807b17db659558d5ed5f78d35e3d71043021efb2f6c9471bd57bd2e458a7a38a9076b69eea30d22df66707fa123a71d263dff1a09f53cbc5eacc55b52f1811827c26c82966d5d6172476ba36389983908bc3d0e32c1728600bb3038dcc8b8641e281ba9ec1ba605e9f98c2043dd2b3e4f0d2ac3a4d7ba5a29d40cc0f200ba253898130f1f2d2cf66ff07dcce01a0a61097b9026ca579e3ff55523f03eadfe2de288e6a3ed184825ca755a3b65412a24d7d08deb023b7642181403b72399d03835bd72c97be89d9a44df29eeb62c33fba1365c93e6e1627459a4b8b63a80da411a8dac555974ec6ec79945ab859f5722680bd0bff92c1df25c0d52c23bbbfb75c594e433579e47ce6bc3b740e71af95f75bae58753951fc63935cfa76c1791f90ea16457c39448c1862d602e410dd0d6311d5c090ef046f97b2da867030a310feb68e44f1e7bf182c2c09c0aa37a63d5fc3752498a8fe29edb9a3050b2e38bd8c0a47bb739573bf110131bd626e2845f93b534286802ec2d305891856305b2dae68035e771d424604df23a9e01c8faf71ea018ae31344d1c0dff05bfa29fffab32a86cd5ebff5e2cc0bc5b43a6e4f9161fc09da8290746dc94ac038274be36410dadb773d3e309d82822c269116710f8c7a0bc9326681f17bc4f7080e701445e1850100f44f42736374db9aa31b2bf369500c797466265a5f14de43d03f61a798562491cfc19d03b9a58e61ba4756dafc0c712cd4450cb2ff3aa7dd79337b2c7531e6ce40953f8304a5f962b8680306804aec94588a51241e22323922871c2368cb127e5efbbe7643622d362e1367418f095064cc35dfc13656366856c98c63f801ded3b79436bfaaaa3c7dd633114c5221b1595d8c7790efc4cb91b81e0bd523336539fbe892d3156345a3d65951cea7ceaddebd41cc088896a011924ed55eea7d2fcd5409b7600df0ce5361003b7ac5283aac9d710589ac6b67a52b147c29460eb815fa4e7caecc109066df5f11d4710e3688a6f6c96943fe35603b38e023ba324ecca87af80a318c1cff7b0dcd071af9f4397944e18b66a67da7b85ceba2c1344c092bf3cce4aa3331b1083d96ab8c6ccb17b9174eed0ff06b1d1f99fa720466631cd057d8e7a19b4ffab073594f91f33ec7bd407a535425f3885700f7fb9fc38d26e1f7f3d7d7bfd9cb9d2ecd6f7ae73cc285024c3919f54d40550dd066eaa0bed944c28efee1b5a0db084b4a1c7c8747c464ff7d502629a1beb23ac4daa16c6a76deede8f0d5c406624e07e70884dfc56cae844cf754cb1fa05c45943c30f6bc6f19c850ddcc70d557a22147bcc447e0891e028bb5f15c8a1dc9e9ad446d64d027db24b3ea7b70a2ba294abbbd1b9f9884b73ade3181480d989cc2c325804d7a5fbd08f9a3c42b3dbed6069923dd16e0626eca6a8f19031ae40462c7431e23eead6ce5fe7aa9c111aa4a4c532884116ab80e2e9a6193dad85abdb36373ea0ff60e0200bbd341372d276b681e0d9732345641e8225ab4c8d8203700694c7c203b8530ecc8c945b75a463d2f4eeffa22551cb204e251cd26910157292edde49533659c5d6cc03a2e7cd32f374e0b3bc5569e5d4af551a179f8d50e2ce407bab7f3b07405ca5abd48f816e13b35fce2c128459a9a456249fe32b35a0e0d5d11041a988c9e18b7dc9ccc657667b8e1f438f934798e9fbf9e0323fa8264f0c121000545ef8a01e4ff9de73bb54f87d49e0727da2fe3626b930dc11e8a0df0756bd0c68ba4e390aa883b826df55023de71b0d7218fb9f9c56043def1ea7e3fe816f85a14f263c4ead93bf06a9870a49420e6f098e69c88bfa02d40aded08ddc07632e17c9b25e6df8bb7df89e804f38ee52613366fa3925e7ce3ef65624363e34deada7bc029189124013eba213007754886b11f45c3780ede5f4786efbedf632e19632a4786ebf2c208a05ae340db56eda1defd800ba1317114bd1b8c601374559357e62bde7e833f1faad05572bbbd165ac29126966c0345bb4adc95d62c588d070c4c3d5bcb06ab6922c78e0248cd9b5c04bd214ae52675de9f38b0b24d3559fdbe0621c3b9ed72d37ac17c0056a333063237112bfebf736b1253fcc181fd122530d5213172c4909a0d62222a4859282deb37efe43b074d21b3fbb01b49b3b9115aa249a6b932885124887b3c405ebfb6f3d4ffeebb64dbc1aca6613762f2dbaec98010a97d177b6258ee3d4b1d4787b1aba2990582d5debc216a0fbcc23966bb8c65568d7a6b8aea2c92302c8e25df3c15eb32ee0186b9db02551423ce8c9cdd84e4aaf2c360bb324099c431d598079bc14b84dbd5dffa40f011d89967171e338eac09795852fd8079488a0aebf48e54f01552b5d6cdb5b53ecdc775289e63820565a8dcc46351a28f53a63773d45833e5d69be42f879c88b03b3aa24e3a9308e3fa90fe2c9cb7a03de7c36c6e2e3fcbd4924d6c452428d0ddb48cd4eaa32b34fd6592b4482ef8a918671470960a904f0f21f07792295e0560563edf56848c091066d121b9690bd5d5d8cb6cbeab17220b0051406ea27c9a58762a2fd379b245d05d5e26d83daca08b6e775fd368b592e7110d05a9ada634efa3162f0fc17b8a189846364675d0da7043971e262d8840fff7704166f06df83d31dae32b5ad3d54616e792c69b8b46663f5218a1cd99c40698f168238e31ce2d52799a9ceb7aea4a71ccb44cbc53a52bb4f300b3ed6bd6b860c42882cdc4d02c00197604c0773b394ec811f0e3051df91c0c316b9c6f8bb75b8a1f9eb67015d92e46f0dc75e12ac3ea4e89edfda94774a1c1371d3b12f3d68f5f065b9a75095238c36852a9d4571600948fa4bf04bc2aa358340e3729dc36372fa0171e1c0a2a71a339ca68f09b8f9d20764876bc03b6ccfe175fcdb25a72ff6b8134ca1b9635be5c7cd0b89d47ed83798fd7f97b015356c715b22bb9af5657eb364ed72e82676db999f652bbe928641a3e0c6eca91f330ff1c2ebf71d433369ec16d5235ee99f898caa32b98369204d71846edad0ecebe555f10fdee40e69c2da92da33da3499df41b3b00d01d9927de868b8e9d779083d31e18800d7e4d15a5eeee343aa5612b4eb19ca4fd0e822ddcf04e7044af96afcf4e57c74238a300d50bc3f5429e5cd429ce0e4a122a9a24c22902328d88a4621026fac85a217dc34031e6f2256a436c51babb1201374c33f1a8b3cf5c8d9d48c461b45cf625c9099df0e2477c012250498c0c774fedb107988a748166cf39211601ead0005c6ae21a4a3ee769e80654da47342b062f6da3ad142b1cdc6d3bc79652834a40cb9b449bd8fd5ef6c1aededb910306818f59fa71a97de2178f3446810db5b8a037e926a262c1c7ca30b9f3984c708f38159e0b2b4cf8f2811e9ed225380f31edb0631b5b95c9c5ae64096e5be06c66a477b381259862272b6cc5002c3cc94bcef3f07a725208d52087d9fe852321f1602896fcd0d74f5a147769a46b5e87486bdb9693f3dd972d5c4c5f1355bd79f5017665b44d615d428efc42df341dec94b218662e7504d56d08ebecf147c8d49e0c9f9df98c643fb9bcf8dec4f506ecfdef74017359a047355d7c55c6a145c0ecd7440e815cea7e8a0d4a395ac44c25d0b0950ff2b4163e4f664d5107828042607b0bd15b606fd34595df93910718eda84e5d670bef25ca1c4185b94f9199293add07c6d03bc114ffe0a732471925c00b55b308f9c37bbd1f159eddf86595aa9da0285e150bafa895c1ca9c90c74596611b921b3f51f88f6dc3168818cef05f0f259f161c17a7965241c846956b22cb289faf0641cea7395a80b87895844ea09500e59b9afee32b9afca6b4e3fc6552c35c2feeab1d8100f2d67bf7cec43d31c1e7ec8799bd25079d4549ac148d203a99f9a06f937933a2a9070223345607f04187f9d203c2937dc42dfdefda710dcd5fa8127143cefd9cc9886ef85a41d190aa29fdc0ae8c21c27d0145be387c16212036e6e3e96fb805a787ed3a7f20ae225a598f73e8e48e93bfa3b5fcbd560af0966b83084bce657ba5d698106dd57b23b3b7c746322d4a05eb7bcae30a7e34e1b93ccf3f95b16c1ab9834c76c1fc577fb2ed6a7f415d69e0c30e240ee2e76e47a0161738eff21d4c8eb6183e8bbfa69387c6266478c0558048d91f7c92112c7d7d581eb74b217b4c99d328383c612acb5dc6b4cb7a8c433f256f3cccd71d18acfdaed6c813d1a213a132b7633e0d403414844992d76b8c6f068febd6748e406debdca6f3e799aece74dcbefd599385dacd626fd4b48492971740908bef6f3a8bf9075d40157a6e14d1953432a204f3ce7f56fadf3d0c9d5805ffafee623e52f72ac291ed63abeafc0fde3293ae01105f8f28770951284313a10e425ab7e53d1167fde3c135f22479dbf72d9f9ea8c1c56e8963c094c20ba221206eca2c920cde7f00eed4e4d2472767a269c5b8ef0c212b95b90ad3f07880c5f58f03a20a61ba8d4c11874f0ea94a507eb76cc4d1230968c41a5301a7574a616159b4c20b55d3d961eb6620c055446d418a0f1441117d25ed8243dde9c13248ce440909f44f80a827491114962f4b8e2d3e0000ec79f9bf118e01eaa40a3188452a045291189075104efed35f70f6045bb4b41a632bccf2fee1741b5d8f983dffb5e8a2b30146f06d4419bd182fa379a498db3bbf98fca49cc02df7af81ea8e5789b30718084df52d4625163e074153741d04dc3a454a339306bf10c29b1e9f30e6ae22fe1eb171e6c8364b75a6e8a8eff814915afbc3103bd658b84ae06e362e11c7922b5e212f2e54c64fff445dd35d1541d9a20f9ed5dccbd2db5b3c73934709a2583744d3cdb64528a710cc2d39de447132547263f8545a9a20d6369de401ed3a0d235321d9858a95de9df35bf0d58e0392998d413c9dcc8105a00f7b64d7046d786935ae4e0423c128c6a7daf47e00c76b631a701553e50dace7d8cb885d95c75fa436176f272c32058560ba7b43879a45b602120d66986eb6aee88f70ed477803346fb44da48bd8bfc0a6cd7fcfe923a98b5f179f29578ff0157f1eee658924e4bf3cb52601e5fc9d7fcf7f1f362cca209993401e6c3b4389b1ba0dda56df262f6d59f3a5cbeac32159535b20d4152193e89daee82f63f5ec8605305743acd63cd54e002f83c0140fdd858aa44e8b2053c4f8966ef24e16fb3f6ef1fafdaad12c715709c7d63de51f7ab660f05946c46a19faefa899e33bb7448bd4743013773ea039cb45db1d9109c8a1d6f9cd9319cd87935c83d7d0bb1056253de591664a1b753307b3c4ed3c9d4e781331fba50db7ea4936a171b938c20a2b867bfb9e81ce8531841fb0e53d3a7e7383b8be007d57c4e65daf1bed2acfedc214b679bf88ac49087bc8a76c7c3990d86b333a0d749539634773c690ef1136b968f3ae2de82b31175f88ab8fdcea8626dea808418e203b8efcae66b9ead0a237fb776178a59f4a2f8aaf5825ccc0acc6308047e255b9e50b496713da02864eae7089118fbae6dc6f1addd9dbac4359f63e6dd1c32f60188b61a2c7c2ab632ff8c8d805cc3b851417d2fbbc5cb4e04c45b931090714a5a709f5243826f2577c339a37e5e3ad466962c35b6c90d6061cab294106c2e1e78e53b5e346607387264fbecfb095c303dd523ca1da38838fb5cec2dfd1e61c5c7ae31bbbda8d2ff1c8ee345205518bc54a0dfeeebb96e40ad85b6136da68f538449a86b597eeff23f87e9787ed8649ba4d013f2e2d88af50db73b732263df4c85c74266a5b4d8fc770b7f7ac025d2899466568dac3f9eccee3f1d6c31aef7912e59276efb3d913377a3b17e9aa840309ea560324dadc216b2c25dd1180a1dfff2706e44e6235f199551a8bb8ca1cb1086804a4de9eaae7ac55b8d5c8560a4abc5f9af92de93ea50b9b86b50405558c47d60d146407eb87cce33e19e02f256ffa696396b500c88d18a93be9bafd3c3bbf583baadcf6c5a6dd3dce99ca7b516e43c5b494765849bb6c798156e471764ae6dc33d8b23ead7747c06959ccc276f2dd2a685e40021fdf78a56ca01f0255c200c43d3c71159ff99e51042f755622883f6f571a68c8542da6e68f51fcbe6155cc262e5912f29a63762a69ab6051300d54e7f49eb34166c739cd52590f9953e16797565fe3f4d57a1eb32574f8e59d7b3f541d113b91b828bda65627e8991cf06df7576c4b6393649cad46438b793a24017f541436b0dc2dfd26e320d90ea7389083011b7bbca9dc348277e054e7a3a9eb107103a84a681838f53511f48bf3aeca7c71556fbd127261dff5c0c2e527992028bc40ae11cdd720546e1b9478756e7829700f87f1fcafbdc8289e2aa5d7df6e2434d35193e56de9cec9cf194a556dd2625766946847cda64df1fbafeffc52e6f3ef17d007f0bdfdb99749913733877c8d6f233c55fe8a18c9c144284b4e8e08e7e4e29cdc5fd4b3bb35f5fec7aacd0c524722b72f71439bc26c69832015fa09a3fd6317660c74bdfe902ff7176c1875110663154020798209e0f744c28b14636be2bede31621e2d0be690ebe5bd618f143ed18c8448875609382445eaee05de53bb956c734696c9b063ea123b043587426e4e3d768d657f1f6f3261976717780af14f55b1432e154099a6eca45cf21e5d4dbbb66ef7e186371176d93067eb13cc7bfa34196c9905d2c1d1beb22242d097119b14ed00c6f74af49c6d4da52f35b38f2cdbcdf92ef7b8680b44acf5e01742298d6099d3fa0a25ec1dd0b98390ab07f75a658fea6f2a5fb3b2006e2f37795e2025d748161fe173c98da05bb24f2ab9c10939e2506b6e4009309486a00e5cfa39ba3f0f4a94110e99961f127b7ea2eb485bd83be6d9e00796cb7a07231cea5f11c1987aee0138f930c33899500e7dd8260ac34d4783fd029296be757a1178640402ac1b8eade1f558a0dc62b2ae99e6d28b27102d3717a4d1de38998506c11d495f1259171871e2c5e1039913a58366497d7b5e5d9595d85ccdd0e8944db361123f2e3009b51a4d7c159efe0beb2a765691ea92686a4e287ed96153accb84e62991fb04c25aba634af00bbf70820b57522c4f857f1f00eb7902fb4898fcb9c80c27da0a383ded25821e87beac5aded5d19a779961919101fdf0aeaf27ce255544cdfc779d23eeb1e44803e25b8ebd892aac8193d7dddc859d8248c81b7311d90ef2aaf9d8bb02baed8ee4b876240bce94fb82a31a42a324ec0a99923b922be054a8a4fc9a4c806574ec80d786073a891bd45a0c9721e5c1d508d2a39322d63c1e191b0df8e3ce01c3b806ca66eaeac562ffda965839a24fca5ddea92028748d0b8f802e384ac5ee4c6ee91358867f0ad1042e1a05b9e0fc8cfa43b07b0491ea6ee329cccbf09da7ba0d52c96bb46ff2af8180bed1b8df14db0a324d8d43e5a324b4157b1e1509f1014b2d3f479f1b673dcbbd5600e4bf3582bae8420b2402d861a418d702e9b22146fc68a8d9bbee23b48df733ecb41c83abba814c2961de51532485ca766584affe479a55a9256cca1bf6a0aa25dfec940558140a10bf143c6f628ebd654377055c96d262032ad54a4e59c4123def75bd39034e7992a1ed0e036e6bc95c4a896a186dabfe43033bdd6f378cb2f861a0ab431726fb8cdc511f1a4edec7bcf37da21285b6949a3ca60be492bde9c84d5ad3642d18df6a1ccd356a0c025af16c8db9920aed27ff07d4a14811e776858a9dcb4ee2ec98a9592b0a127de232a478ac65ed8c7faef58a4ea8fd33c242442e820dec46766bb3397ce51f3660252aa7311e7a7359e783a9d60635ab44497d0985cddc327ee8e38aa6c61e33fda6017895230e2d85b9beec85bd0f6e55a870eb3bafed0ccd4e71a79f44141ab6ed13bbe98bf5d00740ad8876a465f0a37358f4d39df9712c49c5a8729e2607858b05238e41e3dfa8e9ea9f23d2921138121af441d23bb990dae55dcfa0670fc6d074af7bfe4ef3c61913a0e729a9921d4e361b85e2d204643f0e3b1e236d3780f6085fb3e3d7cd909d351891dd3506ea2845dc2d730eb7602e3bab1f262179b406a8cb683f2c83fed26cd5b23c724e9a2849334250e63395211b306a9f5e0b0412a08d8b5e7e24cd92e0d98918c9b0c04ab7372a048f7225a216b0b0540eed10eb20d7487fd15e96c2b41f116b4b07e60652674ebdae320b8eb33d440d3ccbd86ff541ff634f07272b4af98731d34c82c40b64bb3e89b574942cbb11054105032ef36ba3506c9a7387d654c19efd2cd5300eacf41e710050a0cb267d7f5cd10305de63f7937a13c2b5f78441d297f3714921381e4b69da9792d394562006b4c1db6b611443eecdbe94173a6694987c53cbb322ff3ca2cba3793ce7bd11214c8dfd22959c290ab151630a19a754b8867611573c4e23f4665eb97c78baf44bc4cde861894665668bf8a9d55ae5b40e76414f3659de4032fabdd9cd92af1f117487e04f3cf60c512f4afd4e343d806cf52214fe6b548b51a1b16208baf9004bcd7b020c25d14ab291816f621a89dd0f61d6d37fff6d1ca09e0f508f069b6b28b1c999a54162f6793371682470c62ab37e856d17c5073fee0c4d41a1eb2b043f2be38c2c72457cb9f355ae3fce4e6ab803f2e578f95bb810af5cc2abf3af7c19c55915b9bbb072e4c1ee6b52ef3c6ad8cd812dfaffe1479467d6d5a1ec9bec4d4e33686ce64f835a9b01baa6407b9d0ca166883466e6febd29d98a1dd87ff35e2f3a8967356b4d1711b4ccc076282676a5f0246415f6d462a7a777072f4b40697adcdff73f83170309211dc9012f102ffe1703bbafe6c981ef97227dcaa413240677fc2bc8cc6f24cd6b0297117e0fe6ec8432835fdb2f88d9340381b4319d31474ca48ada2f627bbf38c7aeca854eb5ff3b9b2ed24f6f36414965be5bb86d623ef05d4c991377c34b99ca5e097a4d7e4177a717685ebafdd4456fa04ac32e112fb3e998e7902deca16494090e805a2db7e1de63bf26989a64f60a16644c78195d787005e09b44fd29f00f876c650269c92f88ce4468f555e83e708d4c86ae2a08a3df45f98e201f74d81d6787dfa02a3cd862aed744f9a83d072d29b2c0a94b7051f24e9b2bc66ba3eeca4645eca5a702ec175c2589851d3f39158447cc2d496cefdc21dcd30e73223592f90e7e22794744572f4078f971547c0e0a02e2016fa5345343288df4fced6afd3e1da0ee439fef56dcac1cb0703f1ba1c09b1b6e68156737882b4ffd61740ac940964e9a896d9424ec3201605cc1c256d71b9b555e566f027a4dc50843da6c99bb12c5040401de64f06669f722c7a174f98e650401d952b6fde6e4e16880e80ef07bab953d723defa7034f97db60cf75478554331c31abaa3bcc057ad85e7ae45c9e86433d1a0640ef195b3e40aabcb154e0b36714256b8fdf2e89786b7f8e675045f445edceda0af2aca904d71ad99505ac6a5345f90094ca61ec9a979b03a792ba2945cdb59d7a48ad7a907308691ecb435753104a549742c5d523b068c73ef43e408b644fd51a4986a76ab8896af4371b7106333b778d03a5e0112728ee19ca998bc461cc6b7106ac1d961a8454df3fa8f5e65cea82219c5a26becf022dfc1d809b85ba1d2b2fb2299e27114369b81768f5e5430a37549fa27d83a0f689726d46411894b9637938e794b89ecbe672cd714f5d4660a5678c15589901fb0e3ac34e2c1880503ec4b25f3875e3b1dbff43cd1a4a3b78ff31258520744f8e304e1e992d88c7a5f1c7ce91342fa434a77bb6f4e07c0e7f82454ccb9158e7daef72356e9b27050874fd486e5e1fbc550a21deac8f57488e483742bd3248cea7c74add203c9983a75282646450f6eb5fad27fc89a76a1fc0e59904e33a4df14da163bc57eccd55f60202563091a00c92b49acac9a3f54c724d2524f8e9845ca3e9ce28b3376efd601c5f5d9bc3ffae5b8ab48f9982611b3e7263b6e743107781dd5c2c167165013e33f9310e7597ed1b7136fd95c57b72ee418d8d8efd05fb07a9f79ec07cc6606d992c4b6631e49f08ba5d09fc7d0d54feebc47ab553175357f94a3853055f768c437b5d9b559ee982172a3e4d9a1e36756e5ff8ac06c7d730f95c8e2d440682912dc7c0c19d0db92008accd5a482619089412343b17d9862eb4a4c02929091a0def2120e43fe9f84e22e25fa731e126d129f7c27a54f6d4bac06edcf4ff7a676f9a12c95cfc8b9123bc7da1e7aeb1443b50abf752ef983f2ec8d1da78d4cf3fa076329488809635de267f810d3b285cfc222e12d822d590a46f24132e0fa082cb0802f2803b6412a34bb7b70d52983f45ed1608a514853a8a4249375c955543da6deb722c870b4ee9c483630256bd44be5025063712cc9588bdf3f674c24a457b84a4b21a9d1a9d8ff4bafb9e09981ab133aa8db2805b59e09976455a54639632ecb85724cf7d0dff68b5b040e2a26690a130607ddf2828697af4af677e12ec131fa955dbe2c9c1e74e8c9da057d51dd5d7e7a61dd4b1066e909f1c219ecb0d80fca4696e91d011ffc688c9aea13452ec34488e44ecd6ab5413581fe678b080c27fe1ce3767b0cdbbbbe95d319be204e8c47a0db85e5062e0358de43af7c3d27b581828c932a4227f3dfb6eccea0b63a94ae02b582a025a0378f1efdbf6b8c49021f8ca95ece709f966e9e50237fa10ee8dce1ac6e529a9aade1b022cb53b815d63dda2a8562e9d4aeaabff07da2b4f034ce004780dd86e407a62ce30df1668e725b84c5f2133f888351329b9ec0b588b55759c4d824290a801e9e8a6844f52dd67a47fe64b935aa398b34848cd1a6c50a847e64956dae9eaeb5c702589e8141f4f2e1981e9c11769125f5e09253c1596c402edbd4da148ad85d1d760345aea3fa433e1c86fa0a84110252fa9453e0137c963937ac182d86d91d66f1b2af28669fd99436d0c8ab067f3da59ba0d5839650885b9d92226726bfffe825c9050d969f125a3124c3c5ec441faaa8e5d8015951a802355144e2db13904f29689fa55d569b57b91a5f07346af6dab1a15ad6243a14d3265a8690f7dd75e325f12c64cc61ade147b79e107f84402b4980afa3fa17e254c051063346ffff8d36d366db885013fab0f12a21e02c3d6eb9107bf62acc7f56cf210a0637a8611f13034ad79c8750a3eb2363b1968096554674a1b351d8ae3de281cfac627d65ffc29bc18b318423b00a2ed0680dbed47d96d7ef0185dad5acec42a7e74b13a3e4e6d8d17aefcf59ebba72453b216c0174ef947852cac865e7e45d6bbde78764573b3b611fa6d29efc91dcdb232a68017cb71ea741d673bdf5a80907d960e446207c4d64f432990f564595fa791f06c193b0cf4f54e3bb685cd6428c385d1d3e13f7bca4ed273e4a9eb981773c6fecd20c061ac751471cafc216c6ab323d75fafc6791a364c2119df2c513d86e653bd2e5e47a44f5253627002c7da9f8109866cd9234e322ad7324b1cabf18f11108e1b8d461a35146292a290598d0de876f4e5acb19163db2ec41a2770abc08f2f9db2c46de2a86618285cb00664f69cafd19c831aec10569fe90e66ba1ca344852c15dc0b651a537a83072d8c1c5522ff2423dc1305f3508ef60f07b734322ebbc001bd58ab4d4df5dc43342b5ce4309a8949edc33b831960aa4a55414fdb56d2b06b3dde28825e317e74e95c499e1f362205b30909edfe3f24b22f57a6af98296255a13c01ee248d7c34aecd18f6ebc8f8bb9d0cc10dccd445523c698492c751addc9e8915fa0782a24022289a4e9006265920947f402a9c780ca7c756ac7701623a8040d22d5d2e63a07b80d0046eff8a1e6010a894012fa61c9211477cc5253df7c840c9ff6ea437b6510cecdbc0565586b997ed22a83b628944b55f5d78b370ee53c007b7174ae6ad3178b23dde2bf7a711452d6614121f7ee64ce7105221c2d0e4b1a70761ade8039a78980446e4deefbc27383ebffe228776d574728d36f9ff41a2c25b682b970a31724e2543f24c70c3b208e788068088dcb71c42bcf3cf9da4a75b4257c162817293792761ac584ed4e803230f8c2a05a596c50a6fc55ce2b02944141de8a309264619caeb2429f5ba2ca079ebc2b124475e510e6f0844da8a8953eb22d970bf62176a0484d52b1da803a37af69f92bd61888432e5849ebc25fd4ac70264bf7965ef6e5d5e5b408cde24fbded060c26a3e7bb3a5d80ce1c6df3d74b7400fd6700047cf65153ba38b3a7f11233e5a77e329499630648a6d69960b78fb5bea50a9b4456d307ac1e12839680ff9d41b0034041857baead9f5a7f51920723d5fd9d4ef479a7553a4278f684644e06183599e2d37633317b3fc39dd39a26f3cb214e69e83cd15e76070daa57f7b67cf57b8b0094bd316ab947ec09228ee593fade019c7d723617a528c3aaf5dbe22a9956e6a7d7b1459286656da16e67ace3e2d43983f2521be80271f3a82f97d67129f9d672af4b7f09ddc839689c4429609eacfe810de77b5b130872db1839bf4fa793b1f06e16b313a43e0da5014a0536fb6677fabe4a55319a27db3a908cf6cd081049a7adc55a68f04231e19c2e92657c389dd82a1a687dd5c999624ad9adb265ea69cc144f41585328f42274f44c263d00da1b261d14e5aac63fac80cf970764dd5e942f910263027ea49ab49fc9e229c17663c88c3d3504e1014ab1c1dcdb9aff7ba8576abf7278f734137c53ff912441db7404857d7fc136e1c9007142148e4b9c3e93e63e4cb3938fb6c4bf2b85be3f9e333d3aef0df3999d2a32da718efccc7d4f2f63d78317d5056d6914f6a4aee5ef3aeae2d8094bb1c5ebbfad55cd16003728fbc007e2d15219f935829aa0e92f0e77ec92eb12df9c791f511650a0f1cc01554ceb663665c0e4e6263108d30e9bf57553a292cbe91c44f61df47a089e9c56b5eaa7e41d7f32ea6a4bafaf80883999e056ab72426a9789773be531631402d995a7766865c48235110e3d3ca49389a06fa5fe64103b0e4844febefc1e9e0f3a5a36613ab3493484aacaa3b55453ac83c7f09f9f5c432d6d8b8e0b61f4dded3cc6f165814d3cf724e4b8556aa6e9620c9c65f24acabf5073df677c6b2c8865a2bf6b715c0b4d5d2a50e76ad090ba05dc6d75f5aefffe7bfee7755ee30093b6c9dcf0b395d6447ee99dbea24b649a80bf6e5cd062fe459e5c34185d37d9d5cd820ce97fc78eac352c16854b4872c51973f0ba10840db63c74a8c2fc7f5ee3490a6013db0185796e21304ca15dc034efc2a3a981c428834e4858180d95c7d9931a14404d2eebabd637d24f94b6659691dacd4002c95e609e28e899acc5df6e57d8a657950006144f03ca0c342033390c783ee9ada5782bc74e3dd117322cf0867bf38396287d484dfa6fbaae9d65bb743e623f2351bb687ea4453ed5460fcd188a7d5cdc4372973f104023023bd12dc47436044843770218e4b23a244637d066a4c8f139c2d60ae833a5cd604a750312939390dc04fdec3b86e5f70c7cb0b5b36af49e6aa94b345a554928188526aca2bc65cdf173e3e9d96fd7f67421cc5cb863450ad1159a51aaec670a8c7cb4c1cf4542a97884fd28ab909f5601d1540520933c6d27b1e325720a52c9114be4c1ce435c53441f22401596aa6e4eebca9adbbd525135b7935d9baf48a93d5e166dd8436634f431553b3666391dc43bcf007476cf5fa91d9c1ea8e2e76d29108696f8cc99d016a10cfc9c17034043b919a1c1f6b912f019c0a37931bda7a6ceb270f750324b08495ce3aea26c059ad14816f9f1f70ed8cca46e5ecfede532daf260c1d3e3bd3ee5ba73f034f24864dfb48eaa2d7ec3bc1ba9b96eeafe86953821b52438b29c4a2751b9e950bbc1da34cda1240cc06f9c55125cf91c26b0b37324ac2e9e90438b9d17a175565debda71b331fe773839d998bf735047204b9aafd363a5933f8d855cc434addfe744f8aefb956602ec268f4283a0d449088f90ebb42289cf5281785af8f6b7262c8cbf89ca63fe7d6c99409bce3a3f816fb401b1a259328354103c7e4065019c5df93d7a190a1b604ad00707b22ca39e1b6fa45c369d6e6f5e12e3adf55874a2fc4559c9757f6ebde5e462c3e177b5ab006f996632050e590073328c711beb7621a9abb418848970c2620df68dd699708e253b79f0b384e3d65cc46b7d6cd0bbb851e2fd63c09e9e66b025f5c00e6afefe3e678bb27a9ae3773d5718e497e49c0ce5bf95dfc184ccf2ec953c18a3bfe8b4d225699306da73f55a297b6e8bc32c30100c71f067f2610e8731739a5cd91c99be3b40234bcc79600629791bf3d981e230c7ec598fe03bb3f71e87d9c06073b153b3e5e48d85ebc15ba3a90018939cdb513607bf7d7b2eac398e8dcacc4dac99134e2e46cad5719c926682c6ace889078d82c5b74193397f6f003db82e3ee6bfbdcb86372dfd24a231ceca4bb6482456cfa6af02896e96b75cc51cba837450ffd187c762dc895b0dac43df5b680900cd3dac740f2dcf4071ab752ceb41072ddf7bcce422484e0622148e3e4276119300986cad326ee0c887a187f43fcff1c9f03d985b662727a75f4137d6a3d4e3a8664ed5c80b20009ebf5c726314e89473a88757a3d0974eb678cc3efad51db5938605ace920164ba07a6cf760259f00b7479f4010f73cd7858de6fa1a47a218fd6bc20827147b731f67cc3445eb9cf1fbbaa6a6b953146c4c742541eea74f673189bc4fb97ffec97ab9f32cb306ebc51a5f964738e63fa50cac5ff1fcb5abc1b9f8b82390ae72e308bf550a9a2c43e6c406c243b621258bc2b562a341928298b9bc0de2292e25b9cdfa482b5d4b5877ce1b056e4a76fe18b46368d0b2ea047880dc3606326e7e23c53df8c824603d58249f11f0984177effd21904432a490027fedb745c20656471fe6ddf1c2a99a23b345a67a1462e580efd83b16d3777d03c10ff7745ec2fccdae3818fc8d8c6357049fcdbe25c71e8718d0259d19104344270d2c97b44c8817427df1cc10362f9f81c4e6383e60438a5215ca837f9dee1cb492fb662ff527d9e7abe3cb49e624963fa5ef169d75610f44030d1e532639433bbfde87766e27072b480f682fea347fec969554ed73b5c389d0cec760c83cc7011d8a3089a0436b4dac90d5d33a36b5acdbf5c86f45785de969e01bec69afd3ed40d5bd006f65abee655f698511acddb8dedc08e42006893b75824120893ff41f8754e0d265f6b84ae3920a4b3e654598f12acff8223740f48d2acfa701e6bc81313a4543b75f8801552dfd81f02e364b5fc345da463ea19d10307fe0baf3b483d72afc0252a3fd4a7f6cd83d20c462ca6703fb44e22482e9de5885a6c2eb0e6e47d8ac4a370c07fa2f34570744e477c3189b495bc3f9fcb5c43c47c781668070427630109da90326ab57aff6855188a980b7f1b1033872a03f7a61bac30f981acc6a6e777ffba04e5c595419c6227047102de3fc83cbf2940f4d7177ac8f1bdbd8524c2caa68ff60f8527cb484c8ccb344aabd38e289badd09e44dd9c1c6e8f97584921e68c24d1d6bc6424df521fcd156c9c7b945beb875ab720ffb5344b414e8a42e361f3ba172bf0c258215cd1f98fd37c099514f945a0dab5d30a81012f738c88947add4263f590f0a55a922a31da16d82c3b4917d1fe19e90daac8fdc13c9245474ebab73f5fe7e2ece25e0287b36979ba0b2157cfa353413078afd3f5c8dd1366507e0df8cda8aff826e059641807e6ecd24f982a8aef04128e8c2591bc94d4033faf24d5aafa817adf82639d0111ac824458413c40566e72d76419328573eee47e85dc55f58dd01729b677c39244eb150e55233f575c8d03777acf5ed72103db3efcc55b548c667ffb1f3d64d3d794c90606e42841ecf739b5f843ed015fb4c7b4bb6b836641ddd7b4d85a59d08d88ce0622ad568f9d6172f53e50a9089c02e6afdf3d7d21f311ebd0040251d642d538735dba15a603fc178e0ad2c1b64d5a9de2bb9eb6958482bfdc6f78a230eaa0940f0ac235b9ea367a65fcffc7e4927a107a02c43cb87961e0ef79c0a4cec44dda1c03495dc055210a7cef0a7c6f35155473a7626c734921791837147e60f3c1ba7f0c538b278e17f422c95fa908dff74e67579eef85b279bb34e296d1de28323d076bef3559e0bf63ae2ebbcc0a03ff25286e73945e4990e4ab1d7e62b051245b393ac9908d64ee1165a015aec8bf555426c36699cbf3e55cc15b48a3a64a08011c3305154f4f2f5ca8fe17bf146131adf4106ae535d065b559f7dbf67a94a4e6141e265a9ca42f7e7f71669a5c7444d02110286282b1432fe3b3e97801bf0f52dc43aa99046cbaaac87c6fae1435982a001d40e1a759b9733f3c4d383c84e6f7623752cc5b0398274ab0ca9c26caf5d3337f6194f90fe3d76d623ffff609358eca66e1128ad9719975ba9c1b6cddd87f8798b94b69bf8de4d7b21385abc422622220e622f97e5f9f54fd38a4e0b949de69a02bfd2d438cea52730fcf875e62f951578e1fc7de0526924532002bc5516342245e3c4c388abd7fe6513af450ab130235d23eaf2b7e6e118ecd5a11a73d0f57cff327ffb488973b77f266e5d39a06c962c327d980358575cbac5b2cce2a37c678acee12e8f62b7376a3e32e2ab08e713be894608675002bbc47d80dbc79980707c236f366e179c91695b2e23fcfab0400c30f79e3fba0708823fe982145c4915f12956bb8ec93d9e1ff24577483376122d19f6982580bc7d9ca96d308da79dd665787a319ee1bc70a1cda29bf7390785c1eca69e3e679c9e0b3d377fd777df19e9762a745f1de91b4eeab8298bba1f531092648188571d7612b14d4b10b079925f09509a5941c5bdad2bac2d6e60ede6800b2747f2f6605a7c5d419d2868c9e16d70985abbee9d4705fea1340fa9b191136b581928c522e6804b6742812dbf150b002a7198e80084494c888db320b965e9c90aca524bf6c67a56667096897edabe959d1d0641b3c1183003e214abe901169c697cf88211f7e1660e94e41ce0209487c4a40bddf9c96783f1b14c2098111ab4e12d0e9bb01b1f3c29d67000571fc52713ff7860c51f794ed42973ac7596c25d83568bb408a27dc27e51857c7990e44ac98af037bfcdc73972734d0d6371a14bbf84026654baebeae98737a71aa5160f5b399ff24b38426a2b2004b77996346abe7fd280049ea8c5df964abec17ca23d919f88aad7163b91b41a8365be80fd47d43579ebc74aa06d213d0d9b4788d230fe89874b014ba874bc2b9cf87da0e1de5e0e32fa471f81121b172a8bb8df6d3717191db9b721358b25cb99d945e4829649406214692c5502ee705098cf1e641cfe012ffd280d6faa5c56abf41756aaafb61a0624738d0ff8813df70730b0e3f1098dff35b9492bf59e12ad754c721e910fda6d9558f26261f6bc184019dd11cf83fd6289415319a15e684d3d1803e6ad90824a899ed4edd44db341cbba002091a36d31601352bfd565637ae08d7256bf877a2a211c4ac6e0ffcdde724e7c68d8d7b1f41f3db5a0df86052342e6f3bf1c5509d4303c503b1e6a94ffa2c43fd9720f2887b6ba12fa76d41d4fe62ea603417361fc22685c5a6376f3b94a321c918f2ba8a92711fa15032b0a97b15cf568c4a5bee0f4a973ec4b8136772d67642c0d0cd7a3f8937b5fb60a236bd29a400251d6cb805e6f0dd2a0bf6d2a5b96499dcf01358b4b769a54c42bc48fe3eee2f6c6f4217662a60ce9e43a7eb61fe6adcb3b691a78150d558e92bda493445231c065621d0003afe777e1625ee7f11bd3ba40840eb98e10ed04a34c36b7bcbe74e4a353feb834a56f5149d753bba53701c82d811747545062dfe9f2c3955d5764a94fb56f82e464ce03139b38277ff37f01f4a87c170d62ca4d99b0cffc15f6317e1a15a0931bb63a10225b9bb44166f4e65f01de518f8db4806a474c898749f131b7377c251183c14b7d3b4cab9e6971ae99472111690fa0486d8043016ee842d8e5aff256bf18249049e4ccb891c143e4132b5a6b9921029f35e4a7fbec13d6dd117a546d3a4380e778237eb6ec7620b82d0d88ee701997615702fbc0aec501447345b5c09965b2cf425a8b9c2d4d4144eeb4abda5f981d2a4705bfa16eab1138dbda5b5fa9f10bb2cc35fb77f208e5e21900a7b0e8098dde2171f70ea7e6f3c6a62d416d4f794a20cbdc0d7c2b17aa73ed3f0db3c64a955ffa5dd343e1d7324ecfffb86c26bb98228c85b7e12e4b412382255ad16ec58995ec2a97e9ca4cb379097985538496cd787a10317cbac8994d2e339bca958633001901cc2ea69ad1c012ae69fc2665720f029ce90b959890058d2a12e08b033c8deb694e83241d81f9c33eca6ec27374aa12865f9816bacbc16a753de13dd1c6cafd24a58073e536ca2948d27376142d2baa8ea946899ff8a999262ce2fbf960a3715e9f49b1c0f41aa9b4e4bc298745fd9a8e54492e237a28225d01ffacbe34e1737abb94bc1544dd916d762e90cc7961b384dc296b2e4e3887d1969cae1fa57ae95689b15df095968a764812b44f201792cd7296659cf47740f96c7160a05d7426cf42044387a05870f70b979723ac835e3ea4e1c8ac1b9b0021ca0384ad08d305b0ea03523b80b5cf8d82075dee14cff10f58233c377776bbe4cd5b6ee79c5472a8d4ebe679630afc72385749b9ea08b4cbdec418a2c744ac39bb01ac957cd1279e8cad4408a5400cacc81df385ff71bd05dbcabfa024ca920c0f3ea91ea394869c457d7d9d418a0bf9512c0276af04cb0f9f8ffe86f247fdaaea7a8bb87bc903d231f0283af689f2b5ab8c40beab09d528de72f9f6260940d1ad762808d961d77ebe7213ca10307c46619a039e9f6033475b5ecbfde02cd35bff8c53e6e179566bc5524d96e42dcc3251e8237e124a9dbd630dd5c03e3e6d5506340d3beadafb31401b0526a57295235f8b7d4637b18d338436ae24f00ac0cd7104d20a01676717c2ddac24461bf2d1163de300ce3c43a072351371929d7cf719fcf41a74097e77a95116be64e4ddbc8284a975afc3a4f4efcea66fba4a102083cf4ae43e6a313b2de227c02063516d9984686b99288fdb5f5d4d8a618b7247f5ad7b3ddaf33411111adb5054da4b1694d4f792a33c3ff1b50e6627cb23db57cd7bf87e5b5cf474b82d5eb6d4421650f6e74419330e5ee160ca819042644808c0c59d80bac30e9f2020a5efb1d29b27eb5acb81389be78ac0b012523e3dbcd2543a301a0f85aef6d4c3f98f11687ceb12740439cee0124a5866cd5335d7fc6e18b045ae5b23761efca47d2121b99c49afbd541c4e4fec3dc848e087cfc804930e1e6c7f7d7078abf33f8582d65c779d96ed53cf282384e74ebcc6cef425de185bcd79ee77f5cb195e663be484832034c0e89d1586d307620e86d590c57ad442d3d2cace38f5d74ebb7cd1c050481def1bfa6435f2d355eb901519b093e22fcb43e5c17cd26fc4e381dc5656558be98180fff5a0ca7dff326ca3d4efdc3d50762457714302b00d72f15704294545d53f0cc8fc62b69bebc4400d76b60273d70d47ddf77d6f83a07a6b192acb4146c46b8e7faaadadc670b6e2a859c789ddc3f969dc9241a1812516864c216865a24837c2f08b646da156289a0d5772a487fc980bdeac7be93e9f77b251dc17d5477c46de67703adfe92ded27ca74ea7475b07c9d0ab564c51eb6ee2abe687861fe97a2224675f72d0ed53017d897b4291795941be228f241d79d2a68861e2243fa18369bc4eccf5f6bf018e71d5549986a86a943916d3b22a1d9285b156ed4a3ecfe75d8ab972d8a1da47662c6cce0a8cc6d846b3bf8792a725d619a74ac51b641ff55938054ca9b0b1c0745805fc9c74a5dd21a6fcab4dbc1b052dfbb72eee17f76268af2389660cf62412ccd35db4ccb2f9eff45920c6342ff9bf611a548b1888bd8661e56f4f7cbcd7b420459568ea5c80f501365d36a65ec3585c446ef56ce0baf3738544e712de6e76e47a05961a9dfe10f54769c242c2add7c9aa4f604766b9140db570c0562bcc5527639029580348ded04f0d2cab12936d6d53d50b231db6909ed76db55232c9293bcb26f4bc8b9a5dd7987e7b5afc0628133d45a9082e23ca6b42d9dc9ebba5a185b3ad3cad458c06d1534b1816c0d9d83a8428694b3aed4db2ff99200cc274079ced2b989f18a6e23c00c18eefd652440dfbb4e72980fbdec7dea8516e3898dcc5c9f92f59fd35999c5eea589b08bef2c004dd5d1313bffd2d11730995383a4c918f67f8e088d8b66807727e54165fd066f6b7766a359c00315edd70c70206cd463d46372d09fe8e051e4121b199a78667fa87fd2eff86079d76572520f473e2f2f7cb51f850c971f88f55cf3bcdc25889fee6e03f31c6bdb317d16bd83a5ca318720187556aa53ce2d64a57e06975d9f1b8e1094f2dd041a052e86efc3282002fef905e3312c8dd5d78c95f3df968144541a38b57f1c813b4203f6913c0b7bb31a33240cf1fbe2995d0103aceb661b19fb545c35ebc5f60ca929565f5d8b6a31ec686804ab2ad5782588d043df2f9aeb46ad80007aa7844e7fee755d448ab114887cf7958bce92dcf9115cb48979d2b63d5c2b0729fea8d14c44f299d5287f460758d6e4bb50789ea4142842b0f0d2abda16eea2326869c12a6c75cb46ee2e21d670146c90acf004c212052687961b48a5ffe1c60ce1f8f380c961571fb20b314c002bd9d453b52b1cb7b3eccdf08a9f309a14b4d68580f649777749e839317d7622e111f561c096f4e8c15c3bb5adf9f2384912c4cb38adac29ed64d2ce364ca4710218c9f948a8bc5d50b82770ff667be15cd31c413ceef07ff3c8b28fe28177cfc399d877b8cfdf72722b0cf77d86df79d61127cee7290c585987744cf8aa26fdf7fc61c6fc31a3bc8f8ab2ddc0aef9b9baa075c066809c5dabee98bf447fdce5e269664747161d8c7cefefff2d1df261d6e700fc5cf21ab5c2def2dd6b018887548faae3babc35ab0739c5f687063f61ae2671557c9e9433f8a6a6bd7eb35a589c24b3334d32c6d2175fda3f93db95df1dc142aea26e66f7609222aae9136479b28fcab4f34adfcac1c5f5e05deb5f5e4b866bb017de2e307c11109ad54bc300481369b10607ac3e6a3dbb67c3f3f60765f07923aaff8465828215f005255483d1fc2dc853c14b682ec244c173263f9539267fd0864e8167e690e75fc0769f8bc96581d724e3f433eab147bc3c349d3668535946084127b855cb354c1737f1c4a36d864097a9094fd704df93cdc8907a1146765af5180e5436ce01c7a443733eec38c86aaa4b8a47c405a093bb3c346616a147f1c38f3ba58d28188665d58ac5bc3b6cc834b7507ce435a99acc9fced3cfb07d844b2b0f1c356059ffcb990d35a9e409b1c7a6b8168ed43d67bb9a9b50f8f71344a11ab5a6b853556ffa3e8979cd64cf28ff1e5f44c0109bc26e5283f83306a71eaa5441bda53de6e57fea39380c1f65e0bac47bc7d2bb6a525b29de98feb439f7c0c91beba48dea2e9adf9ab9d8d894955dd004f71cb2ffd002db0f4db916db3b0ac38ed744b0035a46706321c4b166906055960fa144a1143de2075f037173139e898f8bc360aada24c13dcd8ef211d76949ad7ca6357c8123d1b733a0e624fcdcafd148d39f084bf5800cc72d2a1b4ca38a7231f50fd2516176aaf7898110735d53aa759802894b8f19d04a40055c75ea619583bdf3dcd575176f45b074fecfe98d90dcdb1e0f11eb146221e0595d88e79e536ba83694a69e66a25dfac6e455aaede8057f8b20b4a7e47c67a5941aab8a0f8cb9bf2fd47c01c87030040031043792c989ef44370650ab3c884e72c0c04bc87d2e49580a177c53a465a276de72ea6ccbeb5934cf0cbc38f93d2fc7e9271cb3ec7eddda87ac192d17dd5292eb2745fa109eaeccbafe0693c0116e434372f179d1ece24b41d439143bda88b610e86582abe74e504eaee52c8fb6abf19b8e896a0bb2ab2e2d99dc844ef86cf726825f049189961695b5dedca1b7509f4b5f10dcb36403a62e6e1fdae6ffd6d108fd4bc2b296a81c07dc9d1997fe6fb3c8e1a651ef9a864d0f08f1e73f3dc301ebe3b4eeaa5cde1a14277aadc5eff2eaab147821114b82700b97aebef79870f3e4d22549588cc536798551d8f7dc0160d716514458ba824501e5e599b7fe95466a6e7a33ba4f27b9e513013dba14b41b592df1a62a928e3e36bccd4802376fe0c205bdc866cb1fdf38f7cfca17963559d60e4ebb43cc8319e7983f33bb3c7be1a2d6a0c9f8f95e15ed8f3172699885ab857657aac2dbf1ce15535360f5b936c48adb3f84ae966ba0ac4a86685ee324537159df2c5ddadd50ed8107c80c93aca220f29991d008f63f5032a1407c6fe416980492ba3c2c25438962f390f11cf8558d8c32b7587a0e8e535982f94e63d5735905499d28a6bd27b00da0c5b77302d43fe24c10d4250753cf61438b8adaa563d368d8dea9452d865c07c25fb800c086628d3fc859071119d9674e25471a5200ff16c0a54740a8d876fe223a6b329ad457cab5ac643ed53d46698027d4e6e674a4a179dd61f6f9cf890c5560a313d75141f5786ade10070ec43a0f54e4b6eee6a7363afec8e767f4c0a0c278ea1c7d31ac640161ef8317800fd4d9f2c790c0febaa8cced82dbc48f7f149f9e2c7a7782a67c324862d1a6f835fd088384f3d9680dea43b1de7cc1632d151eda6678be66d86aa7dc7aab55e0058d3ce0f1f2c1a452d907000db371f911e67de61c973ff57bfa538b6749d9f0b59a607955017e69e7c56fd62b20a3a36483bbdc80a3d5531f33518adb5a477cda84546a461514469618ec11b69af31dbecac2174abd24d6b23b6883ffd234f9d88c5a0f255b28b9215dffc34c9138674e7fe167b955f8a71da746f76d6a93add15255d5e7047fd6dc8c1634a51633eda8d18ad9fd4ea1d173af943caa9fee4b98cce3481a0e5d87479e423443eba618b7b9421e5a2797b654e1cb9ca1c5d114c9c70d81d3abbd5c4fac536866b70fb24b2110562b53d5b2d2476417cabbd95e1e2c5263a1e121b456576808f27f2e24f78706b9b962ec10930e35ac76565b147b4415fc2d278d01faec4e7cee48e108435cb831d48e35c122c29fffe14c06f460d9345238c0703a863df47984de27a4dc5003f89d1c78a03aafa8d6668f7fc6684366e2d2f29a64476204541e3067bf47c9210ef10400132e08f49feeb7142d6e4dce8bc43c87e0342faee8ddacb34974a152f33dc697a328dba6302f821f6f27f5e6d20a84fe5c29540218165e7abd3b31ef40c0f7d6925e8247af5fdff22b3cd938a35cf16355f0c4290f0ce5fe9e224b8f8fab1434637ea8c5ef5dcb746a5c19206dee66f5ab8edba85c7236dd0e4df42c7698db057226d4afe7bedb81977ca16b8a564d0d43b2dcb2f42f6878c3152b030a2ee3eb7413e054484463b8d1375ff52458220c28f14378fc02154f6b8688fb6b616304b117e9a5fadac3651720dc7db5f74d1708f323c8d48485cb9e92961b83bd07b9919f56ff6352fe0761bde679ed15ab8353a5d0be0d42ac2ab04cf793df0b3943b30efbc7da6ae77aa7545745ad855052ae4b15dab47143fbd865f92f57d12afd41a9581ad96bc5264c9dd12d3fa8f3c43b28d12f800b891bd8c60356d952bfacb3b311fae167e6fd2db760f32942e293f2ad734a1fda9994ed3911ab05d3180011f55a60516870ae418bbd07ed6e6b6fee4b4f623f7d6e4adf7a577fae808bc1b307780e25242582f97ee4df1c6fdd27eddd7d6f0400f529efa1b6d5b80bf8c3d21ecc74df3a5ab3fe005ee3fb3fb8246b7d684af7584bb9eb10ee26c5a9bf4c217be55cc86a53c254579c3c692ec18d983e71f4e5ecad506c62319f3492fb86405eeb38f91c6bf84a40283f05c81e1780f78a053c49d47fd9e618f166d890e6472f179aa3b762c8202aa64ab91d42c271e2b7fdfd38c639abde33b6f0a4c7442638884a3fbc8915fff957f719ef09fa046b43cfde0491e99f2fcf9e171a670504fc7199c382073860bbe703eb38331b54443ad446947729014394a381496005b02cb50e42c6e25b8ecb0838e673fca11529bf6e3e2e2fd756f6422a6d48a49022987659239cda541e295faafee3863c6e71cde6c1248902900ed1ed712a7270301522cd118d699c1b92f6db23228eed442635f8745f90b3adfd491bd98a31c8e34a2cd9213696bfc7239a7d806f32347bc0f52d5105b58ce12a2f5dfccb9582766d28ec03045196b13dc888d8e0aa791dcd19fe30403ad7ccf5e1d8a44598e4948ec15e94a4992ac07957d2fbec67b8df58ef7b67429c949a940886ad4ccf7d736b2a016bed507a66e5e9ca9c9385d3ebeb6e0fe866a6a7c2ace5de64e16a17b2cae9d567085fed669a86a378181ed44bd1875a3c8cab222c3cd18061e3e091205c6031d1adbba085285c32ea6d8ca5a90a00cc6f8516ccaa4b48adc44985c08638b26041ffb1d1888ee4f10a54a45f28ee0ae1661c919e354b300c55c90a73b7143a54da97757ac15d28edf0ad6e4c4333f3d5fcc9a02ccbff06dce975bca3735841e3cf88c92bd4d8092bc341f787ee627af1cb289c673a2651b76110e779d5853ff4143561b60b19320858e90b3366d0478393a1794209113f56b1995811b30fd7c90517db110ca0b97343d6db6cbf0122a0ab664f49d366c147b65f70a5c3fd3683e3a3442ea7cf4a0a96eb93dbebb7f6e3d09e4e83e7fdb7eb0202219942f40bbcfa549f627bd0bcbef85d78b73fa0402e118f7cf463fc53aa71d90ae0d24d9bbfdd7b911ccefbf34ef60bce0433e02565f6e6ba5a6bd87062614c522d06a875a214c6420a49011ee624511db479eda8c40b1dc8ed201333305cf64a856317f4701f62c92c22ca7763dcb6c856078842baef8e84b9fef3795397244da423ee812eebaa26b84ef6581b4f322bd9b8e187d45aa2e37da1c4b8b18d3779aa84e797e2b670ab74eda9e856b56f302897ecdc45055abb9232f9e3930fdbbaac13f27a03600f1eac7ff91af2e9f72e675e7865e051e305ffe69a23812a77aa7311b9b976b4d19bbfc051d930bebf1fa05ab5941485dc4eca81222976cd48a538d10667b9d8a25c130649c01e99b01c1a1880c7f4509d3c3e4b7fc455c75df6a24671b3f5f0cdf99bbc12a3ffa27ef3a4928074af06cd938c2f522c56d206d1fea4229fa3c0adab526f116429be2e287869078c1f2819a9d70eff9d9ceffc48d312a1875793c30b45cf448ed374016c8f7c8af0aba48a1fce77a11db45d0c3c7357306eb3dbb0b1b4d6bc1d6a77bb1ff4ec4d29daec00a14088840f195ffdd18ad1987a04c295836fa690544e6a78b45d809a921c7c8aca444859da52937308af43c9e76b9c32c81b5dde978f41609f978883aedd3751a88762e5e6f3324c369623823b5ce51ab55f062aec94d0b375526f1600b6d1e64a3a00495975d906663f670ddb2e9cebd6d9936fb02e4d5fe520acc7bd365da9527871aad0be1cb5ce61c5ab9047a1228f38d1930c45dcab97e14464a62996a8da098a702cf574925680624c1f8e5490d28134c201edf9ce48158ceb08bb5acf15d61c14ff5cbff9996921d9d30c1e00e63dc8b238130d120a848966a0630ec5da2593afae9fcf2697d566d52eb7d8c0a8c9e9c8494684b32da7dd7bb77e0c58709bba9228b67cf108a6a5a119fd71118ffcc20bfa69b45f4bf004efee075720b3799839a2391bc9123043769aa48a563943795791ae9d5b11e726d1246ce57987d5e613307351e8544e244b24dfc32892baba0c6020a0621960ef744d6565d598d84278282a46bec8b9b1cfeb0ec99e617fa7647292d366ca75145ac312695cf90e580295467f8359ab66892c0e9623d394b2d8e9766ef4c644fc7befc3da0bab9f0ba4fbcf61bcfad655c2a5eda337cbde22f2fbf1b7c3e8fccb1d70823e4ecc8c623ef116f0b40fd6007ded7f547caae4c819a6984d4f7d2c70a475ec7d8c0768ddf2c3be7fa535e03164127afb5c774121396a81996102924af35ea5f350e22036af28705b9c6c20704d98e942fde83b6703505e149ef393cdce49c12e95a11d38752959f7d82810632d0265210066be67dc65246f1cf0189dc1e676ce4671546c64b55f03adbd5f7240ec7ec6cd52907ed21ba6199db381a4baffd763b6674d28b947b67edce612b21e7628c3fe9d748f616dc9e65141a88af35bddb4427d686e5420d0195a87ea710e9d642411d33c2642918fe7a4e82ae5678d7d1759f9f00b44747df3bcf657b0b716d7f50f2a1cea422b2009bddef879a226f63f438d0c6b5f29b830dabc35d4506ddde5d3cea74457dd00ad6796f8466d7457546d0b0c7845d07d4a50c310e1776d6cd48661a92f77276092c0ec6a67fd4e0f48b06b258a9e64191c96b3d6a5574040dcd740c7ad9598827f89a0b25f4cecbf508408dee7b3a70e08e5546b31c63921f5c5f4c1bb29a93a38a8ad3510dc90c1e938e4f374c369ebfb781f56b5769f32a1908aa3b0955e2d84f660dd60db12086a5b82d725f856e64b41c0c502ac90f71384dd1212a13957b887ba51ba275904aca7de6df21afc4b9948cc2f047abdae6bb93a817300629765b4d55bf7af9cac10d3b40b36f8a6d8b1264f8be5620c66881b3cd86676132efabd556dd2a97fcd66ce89e6f1b17af7ef56e01e41af2c1cd28bab6167d6f744e0c9660d83fc0719f6276435322434715bc3e7bd824704edeaf0d52b2254c6d268899bcc9b65a74239ac985d6f432f7a1151fd7c535a29a352bc6c910f07aab70e722e5e4d523b3f04a1890bdfa71c456b442e7f52048d4e5a035e3fab8710d0f4500614b6f9a5bcbe48a05c57b7dd1cc6719549a5164dcc82327ed05c907ca5b26d343c326048cbfc1a6ca02bb9e90b16a6f5b5e600c7447f346acba60c3aa5ce32d8717e98034ddcebb6200c9d9bbaf694c5586662b8eb43434c32d2ec3fe028f8a672aa092f73a1cac41608eeef3c4309776da6fc73e1c559535c8ea3b2787fd4fa4353f1484bb466c7cdcab39f0f90411b2d0358ed9f54d84cdfdc0f59706aed5bd9e098f8d88fed643ff5a9b064a80c53ab4167b9b2f4171d2be96e08c499b8c0970c8d5a5d46979766d8f22d95f8e827ee96475d00336e86db07506f9092f04bc7bb773411de1f489bbdf43e533cdece3726119eeaae7f48d1ed39b14df3078fc342cb59bf1504669f285316f7e59621a7c4221d5f8adfcf80f1581a7eec0a8a9f9bee1840c463f446c948f14d68cd35d8642718230353f82f285e9bee6239a2d9810edeae978148bcecc70dd04197632dd0ad6774675e3f5914e7eaa0203c9c4d21c204a48b402d0b5519356961c24e96673b8d5093e266b76633d128f4bbcc71b5abbb3e77fafbb85de267fa4f2340ef712036c81dd7a3a2a395ae46005d7962cc75e07819fdde6fef55a04b87e71b90325d9d55c449172eedbf892c8a7f18eb9900835ae4553fafbeb2bcd347cf31aaa73c1ed52c0fbffe944b2d8c4371347f8be4d01915d91ca254c009abbd1a84d151007be29d8cd186fc80774d83b6fe0eb5676f5fa800bc2d89797fe3a56a7f8bb1008c61c93aff87317c7946000fde5fc243b22efb6d60bf92f78ba5f86adbc1f1deaab76c45478f73d0b72fb851cfb4c539878ff0da91179991d021b6ea28b1e1053942666fbbeaba73a8acc6afc9dbee32ba06c4cbdb192549bdbc55989a1be03214a68415e3b147cec53202a805130b5d9a65214ca59fa648ec3165af114b66b0d36b2780fa283aa3b2ce975e848cc7ebfc4e4c3a87cdcb993aab4808ab003210c57756d8967f44f52591337e17e3750e8566e540bea7398ade38f1e8d10ff13e7719dbb929a1897e7599378ddc6cadb23a18814d7d523a9b50672b1aedd0738c9dfed046ba3f2da4cd8e7d53033eb78bcac4dbc6fe2e52a3565f6efd9b2ac4f478ef58753a483448a47d5f5d1cf87128610a0d1a3988b4f9ca5be5d57b41326bc370e57c6cf1dd19abb923fa3b0738760c9ee7db333dbf32b2d4591eb0a8c16dbff18b1eed7d544a467734ab0ba916d112a400b6b7685c896040b18b056e1482c1a4249e83746d1a768ed1359b74a51dffeb29aeadae28449726e08a79fca072eb9407523ada1ee9493113a64fe382746b19c74fe2d01063244237b51f4f517126b5d8f60aa600d35a311d60250c3e5b7ac979ab62a82b0eed244fdc058f522d233b00f7ca9ca47e9ef98bfd7bedafdf5b8df328366ac1fb215d678c345fa2b2b942db3f54c708d3f457c62188799bba6143ad4e8a884ab2c63ec11a5e3100787f4901808c05e7d6b8cf27356b08a16eebb6e8be4e232f6d93a99b75213ef367b9da5b82c20c36ee66c4538f7ba97ee483bb8c37aff115abe92603bffb40a6bd18fa7134e7cc7e0b58af77038a138acba043227664ed4bec343239edf81f4679799a0bce504bf01373e31bd2316ab2f9529be979204bf8d51a99ab67c2fce17970673ddf41f3f104730fefc0cec0cd1be3a656b5a1811eec131dfee45a3b32139ac2eb14c7a3dede1e1b68bff2c097569875bb0e46c6b08198d7da7ace76709d919b18d39c3b4844eac3ebfd01f3d1c60d25fe8a3fbc89b61c19cad7db7a0514d41a40a165cd0bbf328716dd61fb1aef1136e73542279427bad5a9145f55d48539cb77c4a3a77cf35f82710fc7c5d5ea8a6d396c9f1f2c427640132bad81105c7e5ee8398086329bb980d26fe3f86b6dba6eebdb3d774c7ad7b7b62635c6714da33273c38d034b3d9adc62cf2fde4a878e05dc92637cd34e5a0db1eb481f143a3e8259cf9a35950ed8d4d7abef816353a1174beb2112fb15ed3584fa22a2b13dc7b92afc5aaf823ff25d4bb9b11d4dbe8f2040b01345eac64f5f18a40a33a0474ace38f28ed8fa79f91fe78b3e1a8cdaef8af6ee424a5d53c8fe6e6655ff109f91c7ba31d81522c87afcda7641f1b769bec652b4d99a09b696e6f2fdebe774160a4d6c3b66cef1ad2ee901f8661e1de22f2b21f2338efd73bfb8f31d3e3821b9d3d6d7a917b5395e8dea048b47c3f5d04636f95012bb6d79ec709c597d58f282a3c037263394d0259b7949db95732a0a47a383517abbc9db954a2675772de4295fd1e17e8302fba6afcf22042a11685adafa33fa5dc86a2c830ad70026bf702d5ba558079a811ad35996bb3fad0bd459c2404b07c9d3bfc7849f03a58f2f5088a545b8ca384e16ac5ff42ce9d4d37ab8becd6fdd64f195e2022340fea04bb5c2f9178347e7ad7d7856adba45ac9e1d7a84c9aaa436599012e7d2fee02d0dc6cc26e23fb9647a859d8bd8c67fe541eb80b7f88efd0792c31358a7e21607ebe13cdb49c6a0427d290bc52c7a93f02d6e428060d091b521efbca25d7cade513b597602922f997910d1b3c963287fe02a87cfa77ad4f37c39f332baf0fa61ecbc2220e4cfdd79ea3813d53b9ba82c1e593e609d3b653628738baeaa617d681677193e63f6a4d1aa50c35d60d3bf41c91f6acf8d72512ad112a33c96cb773e59970c3293e748e4b0cf8f96e9ebff5cb7b72ba9755a21dcd635181f98f72791e5be04871b3b11d3366ec22e052453e60176deea038403f099b3d8431bff71e2534719107178018812d458f025d513dd310cb02d93f24c60253124738e1a504f410b5e18c9bf453e67dfb62acff0bdac867b89fc7cb063f51a14592db7609c82b3265b24167829f0e14f6ddafc4f1eda1018f965e82a19d1281f50cf84f024a50f4208611fba29a3b8ebb11afabafa65408192d333cf18778b52c149178e0588cf974aaa60768de4554d7e06e0f7a6011c93c174e041445c7ac55ba64e80067b5a6a49ad08577fa5201afc92dd3f11addc4c49f2c609c57d2405fefe0ef13d49d9191414965f4dedd6522d2560ac4398d48f89616b3fe3e38e28a2ac4016f1f8a4436119b86104aa614efd47fd556ede2139d99ed31bef4faafa5cfb8697fa68e58247069bc2d9ae101173f287dc9defa3b1eb1f21aa9cfea3b1d638a1fd87c23691073aa9b9c32aed85ae8daab96eaeacba40864dad3d55a76250e94638d035c4cb5a013e4049707d64894cbcc06981babc3fcf1ac74b1a91bb8c219eba6669274002096440ac9b1fe52d8bcb8e00b52337310ae7d3374f54162aba6dc57a53104171d39587e722274d2b29cf21bc1f376514d091e60ef7920c0df52c902f87a9480c568b175278c01af391d688f56887a6f5f524c65aa61d07938e790a66aaf99660df7269aa8a77dbdafc3b47bc6fe2bffe681a782ab2a8df3cfc8b8027e256ac1a1977cad392693dd67a968f9e3611ab3f93ac5092a668228c76a3f372047ffa597fc193fd23bf34092fbb37dc8bcd3b56a93445aad8184b289a24ed158a651753c2df5f465440b23f60eaa102ef5c4ac28fd5d869902677d01dbd92d5cac42f183623003de2ab61cb581eb60d38bf421cb2e5100f41a46ecb24eb6b42f323c2516ebc15fecc86aad5605896ba2edc39774d29e50f32be331a8e72bdb6f97d0671140deec417017d54662c385f575facd71270660eb17998e2e173e40b8fec1123adc760a56f2938add73c1fc86c8c9ef7ba80163dac8224c19b3dcbba697da1298dbb0d7a0a3130af25010f52978f9d77b4b8cc89a5c52f1db535c459fdbebd41533baa064dddc347ad33b181d021e6c20a403f45338839bc10e8ddeb4074462f6249009497324dbced0c1bd68ce6a6e1582192c5dd33c693e2bb20dfd7b5e635c13c31da76e98c800515c0b03836a68b94a62864825b43cb73ce4250d86b9e4dfdc75b17f4453f33d673a79430560fd3e2ca9bb033be9a680bd7016e3c67d13ffd2292162c6eb87b69c71352f25c4880cc4ffc4887b84f6ef2df1a50c99dcf1390e3941212d34fd80abd1c5131e11287c3608299b178b0f8c174eb13db6b9e5620b2c810717b2d357fcdf280ceed8f7155534474a7440d09d55b814f0b96d42151facddc5851ebaaef8f37eb53dc66b3bc74801cf71f6f142dbbc8ed87f9002c3ece807c2399339134f9b1d7b7a4933753b7fae5f967d9da65308faae299b35c1fb7eefb01d1f1c2b8351d1db9765010867fcbccf41443b01f9b19c696139b330a0d5ae8edce5a5ee8071c7e8fd4ceed21d952fbe841765bf7964347a6bb540dc9ea2a3e7d55245f60a7ba13aceb74f1b3900851ace13e7673d5adb438298e62b5c40321ae1178308067c0db7e24aad166d07ecfc2eb8438d2e2624d9610ee5570c48e57b6b5699cf072403a8edfa4fc475888dced4cc021aae161ff78cdfd00d7cea8e452f73e690bee479201dedb7f66ff814e0b8f4023478de4125c8ef333c3f73e33cd6e62fe4353eaceca3fc5411217c347e27b3aedd5452348353d2f55aebdec4a6dd24e56f085328add23ea6e3b8fea992eeccc62134a13275d495a15f220c9318b8578365cdcc1f7f0af797fd580094607260e8175d2e64a61d5932973ac31d851856158b590a1732732f6a8a092278945e4d014da32bc21d962f6151c2f5ae89007cdbd082b42c52544ef919cc5ff88bb025cb8ad117f250e051804f086cce196bce8b782d93bc614e410415cfec0ffac93433851f92edeaf4ab56bfd8755232b81488035b9cc9b9ba611557511498a20899b9d60e31b81b86d192ad043a7fa073fe4418e56bfe2bdea55e8b8f01ed712697bba55953204b36d4b49bd7047648cfdb13cd1dd28a36de6eaaf8943716fb53f5300c99b62bda96fd9334de6161d39e1b168bb9f29ea12eb452d3ed3b7d4bfe5f27d6b5eba1b7bbe5612a1496d872326e4609cd44850cc960ec2639909257ae74742a8ccb26121d9372709454e0dca66dd382c7e9ef97080aebd89dec37a966ca1bb14fb1060de6c1716636579b68ec35eefc1f03113a97e4fcdfee7261ae1eff9b106f818e191876a3d102c3ee100d9febaea77cf16478688ea84e54bc8a81109748e1f8c11a9ec624de49c3fb7ec4547d97a0502992b70d596290e88c9b4774234e89562dd68a401648928b842abdfcb89e72e3941a86a59597e41df00790fed6a43f84e2d23965508a6db97c75409abe15ba17497ddd44e0f4500cd567e4333ec962344780ea9384a5bba4c2549b8e9ac9d4a99f08fb500ab34f38da35a7e81e9ff08b9ccab526e727c2a28862a3bc6944adefa93aa28c4fd3f75aea75635ff6aaf27020f98e8292d79bc5b654e5dcd2818a71cf7d5998259c2fdd19d58c112fef77757db2f9cb153828e7e744c5742900aa3aa3b5ea0f480884699d6d48f5b3ca072f2c69c984b271d2d7fec28e98b8e9818294f3df9516c9dc2afca11406bcca0207bc6e237963dbb257c7bb2d6f6d08a1adc0860c6d1ab1e96d3b05cc6920f0888e7fd52e6e44e2dfadb636307cd6d28fba0ab14a4ef416a46422e87a7bba934411e0d676b881ba4b2c5427b2e3973bee7c2dc66f380dd24d5cba67c6d2af699764975533d125c3e1a4c7e1a2b20a6b9fcdafde2cbc79c8f78cb6717dabc204fc31bcb40fed52f5788f1205570b5149100ad9cdac08f1cecb0bd7bd864511537feae1dc01c04516fce5da2d3bd93ac22505ba7cc668e66fc89f2e02672f651494ddcc1863ad43175c1fca2d5054589dff8833c73723b6a3e3d67c44d9f5f732954d5074345fc06ac9dba7774e3874c93f1eb1b54c29325f3af6ed6bf93cc0100e87aea21cf642ef01c954d32b0659bd2fb67f91636df4d7361e3183ce744af6750addf1821a817476814bb186342277c3e30fd64b45a7d02c8921603de2fa1b93f78dad58ed86aaa61e76f742d91e68ba8bf2b59433d23cf52bdbdbf5142000a528bcb1b73c63b6104ee9d5acd0e155b445583f62ab83ec7a03fa1743b5aa26a8a5de9c078613e043a8324f1b9d979c8cc2c14330aa77d02d65a08e15f025cdf1c3a54ce5e935473615f09243ff8f7e4ef090ceb22be60a0322ae3d46112ce7caeaceffa4d2712a3fe80875fcd0c447305c4b028773a54a14a97f7a3edaefd0ccff704d8862c59195de2d438793265523d2c035219b83d66acd36a36ed2fa31186e051cd35be6064f801f59bc33988be51ec2429921ea857dddf7a021fd5a866559311c1029c5f90e614f46a3c5ef1e0d3e3ad4b23b8060f688b4c7a300bce94cc432f8c23b50dcad2138464316c1e3f6d64edde2d55e1b7105749716203726b9a7dc65ea88d0276dff7058b76dba68a0f26507427e08ea976fe447bdc1471a54b3fe85e78fd66ca2cd268aa2a391023163636837db0fe90d5bb4f219f80d9e771e833dfc4a700b83b0562a3b7e70bf8c70dbc9d3335fdb810c610edabe7d908f844db644a65697dd4987417cacbdfb4ab81030034cdd9aa5cab0366e7a10cee1a8158bb55cd60deaa4ee71199eb88f276b75b24d349f4816b6e47467d9a85ac6bd3b908f204148478d172492056db1af7e56e9221eee4bbeac3a43106391bc83652c6a144d91b7d78029023651148a4e132b99bc9d0e985c6b7dd85a4e2f92eefe04495356031c80f05363b7b5e17e2eabad12ee50b6a362fd6811a3067111aa867fea9b714453a2de8c8e73bc836fe1111d04aeaf4b9ce57e8f7abf1d1d5c0ea3adda4ae630938f07354ea19294c0a26bb6648cafad62ddd74574fb327ef67bfac4b8ce74b2981a53e5ff4f37ea7fe33748b2494cb32310dc4f0c0bd4290c69a1f7f936b9502aef83e01a67f6f597cd8a5ba1c5671b7bd8225aef42fbb6fde6ef1d6558f5c426e1ec7b29de105423de9a8150e4c4509dac62452bff079a64805e7103525004de1b56529436d37a2a07f4d2d8156093fad57b7b8c6d39e7d46cc4579cffedc48a907d96407c448f437bba9eea55ac83665beb6cf1cb39baaa8290355e751470a9c9095afa1fb0999a7f31a0b4a92a188352026c848364067b21f33966cdb0b24955f28e5ed6d6d32c80a038450a6907ad5fdbe85409f1cb5393985e483f51771e8f006961f3240c6bdd133c7173d337fce8c8447c71317e6b00d77aca6d5c32cbbac85b58c5d8a329409e4873544904bebce549d871cd57762e24e4bcae22c0e41558a8671a49e59bbd709eea486e55ee32f060d602be35f171ab97fcd20dc013ffde683ce48fede4d65cbfec95b7201fd00de145de9865f2007af9bb5a7e17049597f81a142d40b5fe9d3a48c3575563ced5c53afb85c012809c0f6b7b2b8364f6c639d59f2f2973fcab2a1f6f663ee54fec0327038804b285a5e19c7ef101998173f083cf57e24e00bee81ab5c8e31f313b2d5f670b409c55e73bc6fce540635dff3e3432ce287151dfaf52f8d76c6a7fb30a5d9f12b3ab86285c32214e60317866a808350aa12a72f3cc93d1b91e4c3bd4ac3783e0263a4524b22c246a10682dfdfab42f21602af68b78f3f71abb1b447d4860d5897ded58099942f280626594a342a9fd018112fe68890b67aebe665c44f60a630638bdb716ba7f5daac53387ec230a864d7da4d57a0211ca6a7f706dce6ea46310f8753fefb0d630cd2212fd6f16074177753d6521673689d1027e9b7be308d8d04736c4b373bb5e75f3802b2be63d9ed2d01f4eacd3926a8dbba2fa53b080b1cf41ce11f99e3897f1d3f079c058d1e155f69ab7a8f90635446c770208e974fdd1f26dfde7b8f6828b126a3277a6d24045a7ef5877b9a98032b56b816339e146ff069d7c4705ab6de9d19385af7c11dae13d0098d24b8208796a89ecbb6fd56643c49b98d4fa815c15f26322a2d7e5b8bf487119a5b6d21c3bf475427d6d31d9972b53d3804aacc1d2f6d291d8c03715e21ad50268e144f6b1ab4111f4cdcf0bca971d96034e6ecd2dd66f904c3cb36517fcf506aab522f66443f6a89ab664b48f3531e386586e8c4d8651daa5d0a20425c5160b85c196229239557b3f0a800c5bd0740a7027c0366c240ae1caa43e2df0485e428cbd4326a02d9b16f8030965f51cda1b74febf0e8fb6481ec355674e02d2683bc8b2d3b932c06946026b7025997710f1c517bed029f6532b2cb2990f40b44ae800c5991f5fc6673059129f5f9a7ed368d1a00f1a9a6078f3b790cbfe900a01e35ff40f0979add36d937a397ca5e80d17b34a4331bd231512ecf064525e64984c8fdb6353713c3d06d13103411f0e74b567c69497ec85ec0b1828bc47ca60468e7b4f230047c12685b466d1de31ef04dfb148de4d7c31f47cf23a4bba02f0b3d277ddf8385520a8b044811731c221bab4d964ded9bf62be598c6aa78352991353baa5bdb2c3bfe9ea94c43684d7f186cfd2e55b62079025fbfd59403dc356791731760038e4e78691b6d5d328f20b129376a6cfa5eae3eff27d24e9ec505bb217ccfe6580427895da2f2d5ffb5cd88c22cc678fed16b3dc720c1aeaeac188c727a68f24e4dd316141ee93bc5eb426e16c271811d4057400ba881e3d8e65a6966d69b386bd6659f3a90fe6e553eb7b51aeef507349c3823e91264c9334f8f0e08842af562096228210bdbe1487ff70f7a82e7370a2024533ad936fb6c4bd36a60eb9b41279416ee9ab9ed09b162ce4c0f870fcfe4b2606ac23562f0794b3410ca8f19c9c0e38186f85e7cb60fa83b581b795e90eca3875cac1ed8b73ab89542a320f36ae46dd1ae4658287f08160fbd02ee06f7144e4b03dc00431d0ce0fda5838fd9f6a185780c36948b96415cf582dd7e66afbf56546ca0deae971f17812f8f76ced34ad6e77eeef0bb1bd0882077c83f1a016298ed432ec874eefd51a68188533f543b7336fd90144f7fff5880febd22a2e1b8e83304017127f401811f4cf7f6a10d427edcc86619f9990be470a008a586f995d63e729e8ae4c806dccf968a971c7650f600ffc270fee039de3b8ef86d5e0dee2f273cbc0ae02f269bc2691a7daae5f4cc8dda27d90d06d972965cb7e279cf34360207dfc146d3d0ffb015597c84ce4ed91350e53245c01538151a7f3c9ae239495a14bd821237941572f190412b29648aa464e2bba641e82c9a58c84990055cc4be037a84312f0e8e21a4a1d82398af46503467a2628aa8f3d2d1e258917c04f6c560152c529f72a3f38b2d0ab71b924d4819ebcd1aca2459844c7701de8bb643e04aeafa09a6467636574c0e2d116e8141ae539e9a1743575ff4443bc0a120f3016e0d1b15c613991878734ac3552f01345818d8be586b2c0781830cf94d15da1f71cd94fbd9973b5094fbee90b30c5d27f877597e78e4c5f0b0a11f4abcd3680908872250a1ac5f0532f8c3aa07dfcc15ad117ff0efd8c2db65e1eb1219964d3f174bad52648d55c36bf38a966fa2187b757e5a64c698583eb84248c161f96fb766177566965de869a7d10abe6e25ce2b1046971d4cad020788d81470be92e6136576f75f46641caf2c68d6133fd39c249174f9eb98b85af0a6fdb5bde004c33f5b4a996f5c9f168749f2a4b988daaf996688aa2c338f7f328d1e827d9e55d36814c9d11a6aa8825ac4dea4e7b978fbb221022f1eecb567f4962d1054fad8f1971e390b36bcb2eab18eefa4b56c5f649e84b4e3978c53b4f7611fefb97b15ce0553a9f2bcb5992b87b276b4d04a79c09abb8f5f1c5a99630bed44ac8ca9c0bad52176cde170af5a4dc821fa105c4076387b6bd78c8e18a70f460718e37ddd23c017730075d737f98662c56e512b08291b1d6ba7948b50252ada2a792d6c31ade36919c12b7d2ff250f51c18757daa532a6e031605fd6e5de9829c523bf12bd4f72efc8411dbf44f4f1c7c65606ccf44d006c26edb6221cd386b7d3c8200d14bc95ee4d492a70910e3cb9b6da27289293f574c01fa9a9f82f655d52b631be4c36229afcdb0219e32d774ca54b946891c24003392dcfc396f43545ddbb9a3263dc414f0eea1694f7b56bfc58ca4cc74ba0f3ba1b85a36e62d7f97f2112269ce679c517990d591df814739b944f49eaafaeb3655f7987fe33c6811375a66a6133d815ac14d22731223b598182265aadae396f57d485de769a4f18ee6de962bf8f92a0665bb971f33345c7add830d3a37901cc9d08dd32c0bddcb66b69bb223c9195607ddb3ba34c7c3b90f411267fb900e382c70cc49aea4ad48485ac699401a66925f78ccd58289c2213800ce0e81e66f6198131330148205002e19b96f8e48040625991bcd70ea5b5157e8813e65317fa85fe92ac861bec90d85f424f65a6bcb912a1c800d599120670ebfbff5d4a57d1556e5d6d325dc7d0bd51f70622359da4f1764603046142d426a93161f055fd7c29056f678cb0310f4c3c21e3a1b6edaa257be0f86e7720659d9f55065cbfe50f43952cc98c64f48b857a28529a2624b23647ad1805524e54985e23b832cfcd9a07d20df9bc17b2f80167ce7a7032e50dd3ec2bb16c9c8cabdebc892d4256e80b9d7ca6b058dedbb65501ea2f07432c24a0638eb434d68d12abdcb8ab35f175080b4e228a3de0b78f7426cb1478aa36c44240023b67cd6eb627a18d4a4666e28217d1dba855ed737980f0932580cd0c85e395f74a9ffd0cf0771e55ce123754206bd31925fcea72ce2b579add44c9b89060ab31d4a468b9b32cbe5487134c6a3ede56b9e5a837b72a2b8590617d6dc1b6b54243abc02450b716b94f802e141aeb9cebd655d48d1772c7b959500e0b8cac41ec48fbfeb07e9d10fab2ecdc1843ebf60f50151d030021d2afae4c11eaa814f279825c059ad94b9f341fe0fb08125f0b3e6bba8e2c96c2305c9f32666173399482f79c998027497ae649e237728cee6ec70922230269bcd853894229f2368be5e7ab7b45c321e6c4c50722c188fc65e73edd9a3ed64a71e67ec3caa51b7a8b32124f59d2ae12ccb059ca2ce7bb83eb327f1110cc4ffb3c96749589cbf96507e3a9c6cefc911f07dcf2476784a5eda06dd2d38b8f7c80289c6365f46e9667a466b6f3068920f28ecc37b9d28817f2bd40303174f72cc285c40f95d5deffa3b682946450ec8d8591d69ca780cea80f2ea3cc08b7a5cab34e21ef3c66ea2b025f349a20261650d18fa98c6a9c3e42a2b4c63df8be18b7c7937ab5459f402ec95e615e8dfab3732ac73a5f5519d98b4e71b5613f77c26a81edd30e64f89f3f9fc0c083c32cbfd74a7b6821a19b95a356facf0d2417f8df3bc52b33138737ed2d9033356f59eaa3a013e6e059022e3f34c2119b63c7b288253eba857f1c8b7ab41091a11b48eda49a33aab88f3a4ff3a70ca7553c9f08601a46e4a78a018aa7dc598540e91cd4dd4ac5a643cfd790e6990512708e8d61daec9fde23b9b276a237a4f52dcdeb3a8a35f4b3f759ab087e7c0d7170ecb0e57abff6fb052520b107a674b1fc38af063acfeb9dfbe7f8beaefa3ea75205ce7b2f69eee6775846f3eb2a18329b33a47b0c9cfc3f22fe895013a2b88afa6de6bfb980be92a23fe25d636dcd82a9ec64442ab82be5c3bffcbb7efa1c85b1823de0a0d620e5b9a5763e46a29de15197230ea43ea044137ede8d4b93d1146c2937c0d4a82570847040407824b8059457946dc4def501422d1c4270ddd96c8e03879adef1e0b2567db3b3c1e486135e42685b4dcc58c6e1869cc39d3758ce591c6067439ff33808d964673d37c024159a913bae42f835d97178a41e5c9c78cb48e6336c6797aa19a443389ce276701eaeba19e2ca8067aa534d5d9ba2d2c778efd7965a171286fa7b65ffdd95bfe5c7d737118d2ea1b161ec6f00ab57e72034f0dc1fe200b4d411d57d6e896c78814751127adb453ec0f59c0a4d92f7882e1984d2e1da17be3bb834afa145f377e68e8a03f94f4c979b1e1a2f0a4f3771767c2b1c0e5f5c03b9e979ba1bac920b22eb844090c040118da9a581eef3ac3212ed3440b65af57796fe9e2153de2003523e595cd67ffb2ac10384af7cb963f8046a88b1bc45fe6563f84eb5dbaa092cc6cd39fb52eedc03513b861d36d019866eb16c209e37f6769b944a872aad5f3bc591c559a1a5a96d5c128c305d7aeadb56428bba11738c2ebe28952955c907118628e5105f92ae208a393593901a28b536b7ed3cf66a0d28446f65e648033da6d5a0419538ddb847e6d9d6e742a41ab459f0f6a88d29575cf2d3e5df017a6881866983cf3c750e0a3d062dbb5da925ea0e44f69fc9cbe94015b34c70a4ddf3c0c02ababf78cbd0b01747108feaaaac3a0557c0f7215f0da97bd846d40af5dfa2453c24c5fc77d73f7fee9997501b4c7087c4a24c0a91212475d0c0fd18fdf000c28c3b8b0175c3ee12bead90c7ce41112f6b366b99f5126a081bc37e7e06c7e2145cd5345b2b83a62332f21d8559081301d98e95663a75bb6d3ed796ffb47dd980c35ea3d2a5be1232876c0c0bd2b4d12bd4d3a6a5beb477c4255c57a9d14427e2b4aa298955da65e4fa757119933c0a1f79d8fb2fcbb57509bb77c98d2c2af5c2273b486c051c9a623df325238f96b9bee5bb0b103faab72f51690f3b7efe7d53f1b5f4851066cccc9f6e8b43e8b0339149748b1875362182a0407e65b1563be720692f84a9430214fc5e49454e92d9c67e664b81842147032e893b016333d673ee293ed2a59a1b51b9beb76e6074241873e577ae7f26400b8d94597be495c4f251d7ddff18d9225d19c048c7e65c0453574c3b817fa8e173f729bd2480e873b2a91f4f9d298655be8da2c3edf5e2844541ae744f1e56fd6c1973c21150f0ad93de83feb1e5f59955bb8e90cbc4ab7de5fdf55a2673bba9bf00f17ce26029629437760730709fcbf73aa4292916c187c4995969e56d1edb9760332688ab0db2c1bd21b9eef48f1a16cfbf205b4ccb27452baf1b841c912fc8de6833dde2e1da14a6839570ede5966655bb17123156bd8f95ed0e146f6361ecefa022c650f061b174b637b2d3f328398f761e128a6e121e0221decebe2b25432491b4afba458c55afbd15817506d8f3055b60fe9ca0fa3b7cee48a6467f0cda20e9c2777d2eb76330e9ed8d9dab5596bfeca3e2d49f3dd8c36f542da029bbf4a13b114c2d485a65a8f53da6ebca50ede4f8af1587422d78bc63de7f10b040989644ad814f8357e41958d027847837e615266c34cc89db1164ff742e068a9072a5c08d3602607b760fbfe34d74e87c69f43bfd222472a707da8f33ca459a4c08d9a1cb1870bb14605b40381d3444ef1dee9437aabe57a3464b6dffb58dbe1b5abd6e35fe70976363ccb5122e632de5721ed1709c5c8ae98ff488ec234b9d4c9015c1ab758be4a78596cf58a3d631a2afbf67381dffa363682038ccd3c3008f2eb9c36a955442a2347ebee980811c14529db840dfd8b2d0948b7044b6181b7305592845134e950664f1226d96edc5aa58211fd9fb1cb364fce27c1748965f40dbe9243dec8d7f3f95419e2d81270804996edc5c226b52989ac98011d9998c5815bf1775b87f6419853798b1f1e71c7f25e75d315fa682bcc832ac42adb4e91f04689f393ea30265b6de9e5f0432745983f40a418a42aed0867dae3a61a6ef394da8080f17371ce486dc64b0858427b241a922344a8c9ef9e9da2a6ad868bc8a911dc5b1c0981f4bb151d80d2f051c20468601cb523c75c72aaac40c25ba11635b679c609c6a0068963bcaa5bf2173a4b04c7ec4fe011d231cbd9336aa8d407644db39c04ef179e4222a0ec202a7350a2343d019ed1ce1a27c04bf98d1f223fffcbffef712ca888ce606b56417c760f990a2dc7652e9107cb1328b59bd2344213a08a3b3b001d7d21316cbbe7b1e834a87d75943f35e33e4865aaba80a35c218c1d62100d9d3ccee85441e550e32d3c543ab21c78ca382cb8ee776cefa632184765fe2bfbd87079c96c2dd97a4524d1527758e2794001b028357c5eaeb921d91de00217e2573e47751e28ed85c33540ca20328d010f5fcef2e12f606120bcee2f995f839b6ee61ace319318fad78addb5f6c3846a71bdd590df03c682397512757c03a48e6d276014437fbab93a37e416894dc58ddc0dc2b37a241b5c798fef52419f893a1929616255dc75578e554cbf9ad4cfa94e045fd323a0bfdc12f7ebcd72d8beb7623fe6812211a8c6a504efee8dbc75292a262bd752a738dc7e5f82d73780247782b5b9d5382af43f881a2f3f66a4daf25ef4eefb5c3c210062af0f385224a353f3bf31e13ff337c714837e7849a8459a819093d5fe93b2bcb533cdb921fc91fa9dd625344967b0fd320db4a4428b4679e4c7f3925150f093108282bde68b945045fd47d60bc64dbcf4ccc64461a330aa3cea7b37d480c9e384a9c3d862e47fa04e6098901842922384dfa22de236db3b20e5f29c2192970520923eebcb88b3122f613b803a08177daa1e09b6032c5eb72464f6cc699e7334cf3db706f1be43fc6e4f731f43031b830a630118cca8d7f53dbfc3e1fd5a12c3cf822bedd3d1f4f7e019e9774ce7be46daf80994bf7a055da298420491d1bec2aac584fba6b7627345548d5a34e73b54d7321e72f2b7d8603f760c365d5ee2a52910d57d1780e36625d69a57442421607462c48ce5cf81cb0e950dae9a7e6a4e4b643535d65b19eda267d74c281845a8b8d657a807fad9e7426d58709abc266ff665d073d2beb4e06aae5ca45fddd3e74d5c6c6f1d3d14353475ac9f0d7cfd695851893ffacd129a4369a24021e672c0df44a03daa2e776964b257a6a7412d0e6fa9a89c66a0becffa9031a5022b48ebca217088a09909b4263e604decfd0dd5296a7275983a1ca15611edb06ad11a79615bb003d47fdf729e0dc7efde3225dab8276c4a11a53afd84f5eb613eae20710e9dcf2d4e6fb6365087821d11171dd88059010b2c392f9b44a60a79133c2f7efba59cae3dd64871545f7a48bb8b36f093c549f5c5a52d09f037c367543ebb999f9f93e2ceff3929802a5eb0053bcc4c1b219c4cbcb1b161ba5bb7af5d6b4d9352f21ed06aa7733aa26e287813163c2b813e55bd4ba50746ff143b696e396fd82d72d229c0236bccdf78b6f1d7d9afed18b011a840c8a284462bdd2a22ac502c6f3621b497bae76bec6c12fdc393d2c18edaf2173e64434cb95bc56501411d0475a8e8754a56ebf7f55c0166a71a964df3f6d504c78b266c106686a01d03f0c97561f201105a3f1afc7c7b1472c58ecc2a5aa3c5349b3376b34c2d485589961166f02df16d9022581e865f21f3fad9c722b1d586318e5372bb9028c86b209d1d2a90f18fed0ea112409c799362a8b8bb33bfc44a0ccc1192b409011f6373e0cbefe75da5da3aec4668c2237d7d151f85049a08770375af4abfbb6bba017ec25bff1dd342cc68801c41eaeb9e19807c6e1fd8ca4c904770450b2d19d74b6813969cded9071a00833f44da12616d647aac9c8f97d60fe9692c12eca0821af10ea8058fa41ad91d0f0c276d88671eeda61d3c788d460e5b76c2b7c248d05418c5f39f6a8158a698260083316a9b25bfce271ffd16443f3c547a69ed497824cd976747cee1106ad0fad6a20467ce14d881bb2a146390fc59fc84ffdc5cc750ebe590994dd362760d060f5a050d0f43b90774810c9ecca40e6be3e19412cc1b44c3b97198bf5e46e095c2f913b2bec70f1c8cfcf5bf74a9594b052118c4e60c9002b250ea2f9e458f6502088d987ed21d47d27b5880b175cfefe924af8dc146d86dc668ddd104beb5e4291de152f8d97707b7bc2cbbbd295cd12700fdc54632cee7adb1adb7bb980cf1adf85b46201da7a7d4c66de593ab0df1555722b8575199e81e0cc450bbc0549422c1d84ad6bab98d5c1224f3fd75ab31911a2c7eb45f916fa231a687b13ac855b3872cb8b3ed8837916a124381c499c960dabef65a16f51059ddea9cb65bd509d9f9048b7af09d5b04d449eff287f02579ccee92a9704ae7ce78432139ca7b1ec98b42a5addcab61dc02e527be2d43fa736e0959203150a17b95ffd03d851f99ba915b18b6a85e32b3a2fd500b81615bc149ad301a03fd70eb8b3cb33bb799e01a1493e36facd0cc60fffbf23d487e6f5d2012437964ff94720f94e23a7807a361489c90e855e29adf1db971c8abd4e2781121a00206dd4996c38f130845e7a4b57db0095329fdcd3972d581ddcf62e7c12c0ef55a20cd0bcbc4df8270892eb5b1cbfc84c8170bd2a86bda896a06f3466a7394268f4f694d0ad31eb200fb10d6725600e74a8126cf692819118838bb1fa2b0fb8f8a53b89b41497e669921568f667d1ebf8a2c46bae348e2db95b4d2c2c8b0ed86c65ce46323f32fb126f72d1c571777dcbb935db4d59d993c50fe8c408453a465f058e6810a353029b6ea085c0ffd0a4b831c5aa52cc0ef071367b7f7799afc7c402d36ffad84d99f037df200d596316d152b16ef986dd0700ccc23d11e8bc3835c0b3447c3f8471e97edeb42c5dec0722f2c65d9974a01233654ee2cee40a8511c440439fd70e7838d57702cd543bc40f5f808213e29c7da7d0a9cc031db8bde3601114167d8c23fcc631b5bc18eda877acd4ff9bfb5031994f2c30b3c6aa13a122d17122798e93ba11d1563aff6d7d831f28363e96940cdfdb720617cf6e023ad027573ec7f3a537b9ce03b4f15a22af452b20cd63876486c40e94b01d67799483fb5e74280657570c4c821da0f5ae7db68416d7df88259db8e5d037e1b749b0c6c90174edf00030a5086844bf25257b522accf5cdd1bd45f82ba10001e716f734ceb72b2ec2b557cc71e30814498e796b4ecb3e7599f13f832b4a5266c477b203877946ec6dc192a4a8ed2da1fb2985c056f083cba063a5b95de2269a97ff9ef6b97bba42b95e8c34b34ada39ef2904e9a5defe9728932d489e66c56e89c629b159f6405d620d2cce1c5c865c3b97331d34a952777c22ae7b7cc023bc52ac108433ba099a703381a3e252264436960f35350244336e0f7af919d59c688f321ef656311d30822f2994a48de0adfbd7a2cd3af8dce7339c2fd41c464bfce575817612db5c656ba85c34c02cac162ae4be43a3daba8ea1920b99632800c1279154b108d9f1f93f2192555d3902cd3901f0891f7fb5911010507a6034bf073325bc969dc5accd96b046c63b04ace017ab9fe79ea384f15233d7947e0ab4e4c707a162da07fef614a3b70fc0349b96ff3d056d089dbed713dc85137682cff98333c221458b74f3a4f9365445fc110f1bf917c69379eaf9ed4aecd1d7a1a85bbf10fc411380aff31f68a446b287fa068334d0b98afd7c05c5c278edb9990e486e413f819879480fbc6f4191054083863fc2ea003b4d277c55b8a86a124e0fd7981dcd913a8047d06e81ac9df19bb6feaf5fbcb80ae8c5b1d98858e2643f07665d9ccb61dda46d2afcb907d8e359c409cff0d6bd710a2c59bf0ee07fd81e0dc8cef64b3500fc1759fc9cb05eb9033a39821149b9a0e7c61fc1f7e9035d09749ca456a781a3bded4f07a8990279ae9d1ada72efcef4e75cd7301d7bfdb17e106f8c6c9d1160a3b075de0c6dd95de8aa61da085c23e4f3889b7a9ce33d66a7c3dc498b31d5ef9c4160c6edbb9e8bf35021a3ad5c694b31f2f4cf452909e78de87082225350d77d0860f1289213a4d4244a78fe778b769e75c92263cc0b3fa2cf90cc47bcb082842ec9afe745dab1a3d9e16fa57472590c5daaa9835c1a51b8f0beb3c78b807391fbeaeb21fefe3c31e194df5b0d4781d0ffd49dc163ba531ea01f8dbb6203ad6211539ae45b355d215ada8c77c6e83fec10895717400817f3a8d2163c90e4a13711941116eddb20db71d23ee7363f389aa1b85162705bccdc8d0f60c31741f189341dfa66a2362b20c21ecfd23eb2f204e378ed26bcb733824342f636f7f096845934c07fe1e414b98dafb9dec2625ca2b652a2480f7ac22e4992d77cfc55b0ab7c8ce08c4d2ba986bd9a57da5003f9e11ba038aa974a92aad81a142620b10f768ca50b56f8774dfb43c313d02ef6bef1e11d0ab895bebaa88cf38a7864b4312538c7885f0f07736cea72c9be760d8b3e6a8f56b4115cf393dcaeb305cbf118d556c94e26d0e66cb23d1c8b4b51cc7b914f294ff4dc2b9118fac20c0453815586795f164332295fbdf969b15706fe1e34a03ffecb529335f3bfb922f635817684312d076e9e6e4eec5893277c9e72d0e289533999538cdcb6256b3986cec4349d90b6461a0943a82685ea4ed43171340a149ceaeeedc26f57372a0d3a5171793a03f15def36c510e7dc7f91ebe1f2bb3cbf12e79320d52311936dfae6d6216d341d9abefd92dd78b9e8271a0e93ed246b129a3da4a96dde82602f84024f34b3a8b65e52deef32387612c3b157df9e1df484fa1b6b8f8c7491592578262645f5f1dd0ab31f099688260cd654da290de13833d15b79db82a47c5798197caec1f0bc4dfed1774185e400489a7692c619adc08e00f5b08e45f90637f15026880494c5d9dfc7879e2236b6e53ffea0685065ce7585f9f174e3feb68f65ca99c443807f02e2c2d380d44e6eaa63dbb22ca3cfc51adb24ceb61e3b6ee548118804c4f7dd01d2c83b1d9d1b1ec45aff88397233a14a374c0a52d8d130f8c8652421661d1b1e6fc5c04025c1ead36eeec5af9a873a3b421a4eab094390cf8fc10ea04595985702a3f56615c9ac245e6f49cdd6a64de69564218ee582050c494b0361e099ea4b35bd4e3d5c088f385a27c80d0e7bb483dbbc9d7f1ecab60c79d3882b13f5311e5767c0bef856ac07cb0e931ee1f523000111a9f0b976daa6486ca302f2022a964f6cd32ce7e4a9e9034f31d22fc3298aa1e7b27972e8c97d3349174e6337c8397d613874147dcbba0c350fdf8271624a7b0b791cfba22509c13eb7e183059f2108c7d066222144c9d6f3f31d641e96f8d6198a223f3f5558f562feb8c6aea94f1883fd7b523147b40e3b759b92e21867777ff4fd9dc58177893e6a43c55b6e508ec4592a1dd27b7e9d9dcbc10e8d1d1318d8ded64362d454f698a41e822bf570885f428100f0a9497783890932bb2d6ed389824ea8dc226e003e982fd08f5800cfb08cb92cf937a3140730cf2bc4a15f8481a75f7134805553dd878a54817e282e7f6e7d4d74d8bc01cf65611bbe6c4eb9835e7803b5abf56df8bd6b33cbaf7913c2c95ef6f525997e882c758beb5bb7136c6384d7c1bc9c7cd29c39149b15224c979c32cd1c000a753400a0867c0a372979d9b36675359c10a2937190c832043357db409113f65d4a7909b35aec5c28aaef7ade5c4b2d15462a924756f1440c1d4f62e8c4ed1d9ab859864bdc321ea2b0aaaa5efd3dc5862c4cd05cd3d3b4df5b765fd13339578f35a1876009aa6ce7a1591869739ea26582ffee55c53506e2928141894da3a56e88ea1b42257ff9009075ed15719ead1dc818d09fa5e9bd36874ab1bfd57899796a21e32bed00cd72dbb408c9cb597ecc8553434492c448808d28a77147d22227ac30485cf2b48f9b74d92508157ab7a8fc430f1de06136b8a1f968607e911a5ff32e9dff1dc49d5aa4ce2eac5c4c859e22d5bce7171aa2d43e3bc78b82999888aed22592f6283eca93e89ce03933a935d132405ae4be35fe003c0364ec7752374bae31821bd5959fb7e7f47e8f1a5acd73b2360f73bb29c390e6aecbd8d0f5e339b7deb6166e0b3f75b3c05ef5538b023eb273fdd3ceb52612848e61acf89ecc535c7ed3a5b0c7cd950de152265ae80571250953e55b1f61edebc0121f4fa14662eddfa66d8ff9138441cdccb598c9d7adee0137e1a98941d772e99dfa02f620770e16a9bb9859d992b576e6304c61ce521abf0a31dff4301ec643154b78cea9f4255d8e437d5036953d739bc19f72b34804b0b15502b56104bccea9d4f1858b3df1bd8342dbbe4030c7cb7f481780ee31e81646b51c19108a8b4fb06737d98a5fda2663ae0d4302f85062fa3e762d493ca35b55e3e4708e6eea15a3f4e1b83c4a1005fedece4fe3b774de89ac13ccb4e1151fc30444ca134d0a27824a10d6a2c6685d2556af427d994b918a68566595b997687166f5d3eaf66f8e1b9b2830eb22680fdcf7980c2e7d50ef16e13ef55a932fbd62d200d6920016fef9822e70710cd9675d539c7744ecbec8faddc11e6657e7d12781ef7810be731e5bd3d8ecfb162c0098718587500f5f6c52cd43a3aacc2d924a466a2133968a93627761906ee39659804a1892de9711bcb9580e8fe8364b211f6309d535e036ed2333f5a544ff05b9a5eb57e1a7a96b7eccf616832d81bd9a9c6602260f6a989b35a8516676875534a3e64f2f640cc6a5bf694871f5b2e4869271b2c29bf8dab02890a16f65619aa517a4a67af595f7d20565770443e235e15376ee653ca0992fd9d739fbad6b996592b1215ad01356d3157aa5812cb5563a8da13b6ab83e4ee8159bf986ddb5649ac6fc1d5cf28976afbd9e286b96c5b994d7a54a6b36fbb480090875f6f98a7a2c378d0fd7de51c3a86005de79cc72107947718410349cefca81a44c7508fe9be4c1551ff13938fafd94726d24a36ea2eab1029461f7ef1d59de7296af133ef43ef80ed449907523946a541bfa8d69e7584af53de0d87df48d46ab98a442316ce61d9915246d07d15e2f5d1912a615704d11e12705deb4789fa738c0010630eaac23ab2fa6b1f07edc8cead815ad4c90fc93103267fbd4e5596a0a5b33a7784d2a562d8841c7335778825153e2d070c6b686f27128dff1cab1fdbf2bd6c7cf6480de2123d0a7410d6e791fa040f2845e5c66438015313c09cc50db7e8777d480d65f3e209d5c75d8c4add3920e2d680a6d2270aedc6eca9dab71ea3612920851fa009397c744f6a051965ca3883b7e29307c95d33e0448908237e82d61af266158064f26f622b6973487ee9a115c0949b8b5606ee86f58766ea71d069677ee17b1d4a19d5c49560b47c99fce234894ef678991adfc130b3b0729b35bacd2d80e395c0b7eed056e2fd90551c835710d118d03c3cb09f6946d462fe88adf10bfbd9b11198e3469df724a23889cce0c057d7329a047645af856b63448cb0fbf2884c014985924a770fdc4bf5537ddffdb59e46f553591ade6a3478d875627b6cc997eb22c5073c9a01707d6536875b199c15d6460ca125a808c927d47fd5fad7836c63ade46bf55061117fab636e6fb8bccbeb8f34a2b152651da912204596f5dbb10086a54f7b63e56766b32cdd21dbc653f20608d28713824acf3178366baf3ee07dd99f0f4079e15fa296fc875366b96298d21919858f960cd77f1299ecbf565ec4569eb677da7f4e81b0e49ac81c843202d2142bd9c8433e8d327168f5b1b2aa66dcc3d630ce61c3a74b496dad7f1f982810563b1ac765c30999bda31d7d99633ecc9072c5ddbc42a01f123584dc9344f91f042563c165c3974e2f00d09bfa79c9037a9855e81a08ee1aca57000e52e5d5f84f88ca494ce527bedeb21c443e3c3bd4319d7bcc072a2f4b624035d3ffcc658c3fd67d77ab82a7f77897fcc05294213b951868d90e0a3253ff948ee3a23dcad5515f0fac76512f3649b4472ac3a52ab84eb5044077e2661e1cfe326c3579b0af684c1ada90e31d1062b9db2c9fa036d9502d3c7f7be6a49e39b8145ed787e2c34075336e6c3414d6595fc42c5c31eec3a7571aca215f1f4069f09d94c350300c57c5d48bdac8a9a664f2cd87f7681023f52da84f8b283c0410caf94be6a1768149925ba4388e13edda384550fd4aa3c6b32888110a42a022774948f2be75f36801a0d4abbcdabfec0e3aff19321d4cd1b9940a2331989c5e111a61f2eb20d1e46e5b861605b10a88d150119f9e99062bd7f5afbd4e617ac7730da68bb006e27c46e1a6c57749ca14beb1f4872f31dbb19ae568e12d427bff204455398146c181288f686a102cefa45072c7096e6ff0d298841e2c834c370245132543c89e8505482a39982c65edeeb11721b16c1d3914a17b233128fcca75be2f7e47447da20725344d6647b3eff2087688d4bdd4f127f8e4c57177ca1472d25494512d55180339b2567454e5b7a5b67066694d4bf298a21edf1d05b5a120353a66c00f701a9e43fe8a05b77e0888515e9fa5b25e81e21395ae7117cb5e9c8524dfe387b24203727f7eec6220afa296b53787f1a9fb310806da4a757327c089a62abd603188154c192995ec866514d6eb76fd5db96cc6083df8f7d36f72dc3940addc96e2cbe858e099eb00b7e2a6d429799fcf3f6e656a0dfc033d42fd43ff7c66b5a67b219a651524f24a85b4515e056f3a343ce6a8547ed24573d3b9abcd354ff30d725bb74fc365feb490d9c0b2390dd3f2a96fd3824d7e06e0d000aa20e00f77898f861b1eccba285dfe33d65d7d8c2f29a56d666cb943dfc60547dbf0140eb941673fff0a2936fb2112f19361314b56047087112fe244ad8e8a120cbaf6fd3397b663f217547ce9c6102f36c99b7d2c3107536897ca0e199836e9560e2ca1856d8b791e301576e45948817786c15b9156f639166e992ef3109eda28f2c29abe4e937b4f10a85d7c6770ed2af85dceacd097e73cbe902e368f36dfed210f93394ad3201b04d22580464baa075d68557ee66e50bb154b2ad25ceff5feaae902d507b8834c0785d14af01ade4505244a02a842215c81c23ccbfeca76a8c4d8eced2133302b60bd6702e9f8e19b2adaa2a4e54007e4e0608f9ceff15a1125db0f44491b29a362eb1c5cf0e52e28e885310b56f0b461a3d15f61870d740269c719a098ec9e3748a1f9c1c91b07150847692ce006382df0d5afecba6d80f496c997cb8785246758d2606a697086f607da42e6116d6660b62abc3a927a803a3ec96c0514ba7caf6a3f9ff6c7a0697c7f742d4d59f0e793a01dea4958f6b0ba6563939c67bd639d355ce2d71ed1b4619bc81e5351fdbafa3d0a5b8cdb39c4cbd5e9069e2e8255504d9f6eb288fb868d033c02357632f1a6a809e097912f1ef8fcda85b44364f12252c19379f6abe52285be9c77a07678702930e9bdbf975269765f87b6f8dc425319d632cce2e4b7279a5a88d62eccfadd09bc0ee634aeb56336a59bfab4f800772c3fad7d0aa8f9e3a7a7e3cbebc61be0416696ff72fc69fb97be47ba129362f6265a199a057c5b68a4aa58b95e9b8fe9ecd59bfed013e98074cf0d673a7afcac0054801be3ebfe23862dca74397503773e7103718b34aff2772d5fc4a3458fe114ced375470ae6de01961e99e589c2da39c2a9f03cf9eaf403ec9b4d57f80cdf08ad0844949246d4f9b9f76c5fd877c7b07146615837dd6c7ba1d29c5b492bda45b4f56442cfda27590c7f4e9d431086abc2e49834a403edaf88449fb31975f82e143afed46a9bd0f4e6f0b0c088a2bf800b207addf40bec27315f21de0f4e9b008a4ad019006f617830f7a84b3857abc2346341230dcb815711d18e7d1deaf34956bad665beb404b0b3b371e388a741e8609892d3ca3c12c048981543bc78bb3f73a4dee79ab7b686a994c6807d5d3c192004815313b584093870c04a3b48c55a3c5e4d1c4e4cfe9a195f873586ee8bd6690241174d9693e0dcb307af8fec1f5ab13fe161369787973227c643fe5321611edd0fb08ee4899964694ffae60d716bc9c5ec3156399ef4bf3df5fd6c73d66b2f986dcbb37439f47166db10829685625b4f4144f63479523b4a2cb0339f9f93e50d19e6c13e235bb5e2ca05ab0150029e8c232a747e1ee24773f5abdd0c6890b2e6e574874c7237659f166c6bb3b816eaaafc5f235c0eaad1c773994a7a4e1e1b83c3dc4e14852398395eb25c6e0c5e3be5cf535ace36ac236eac518021806b7a9b9ed07ff18f70727fcba217a2d70349c58fa990e5aab6d18b0ba52ffc7a4785777cb6204475811ed16d7d7cfd92619c8ea91ca285070e95be12849b59272ac413701f620c1e66983d1e1bdea3bb655507babc391ce95cfa35cd247a7e32c5d7a954c44a794c691b5d37a75fe678710a4960512d12e5683140929209b5e2a9a9571268531a4eb8afb761d1f4c9131c5c3092af9fedbf57e8d5ca3f94d1bb712d66ba989c4485a7d9fb29d28244da1472b0181889e81de10bb8c567d8ca22bd1a8f39a4a29ca463019716cf97c9c81a8e596cb3deaaa6855d37ed74e8463cae2272f0536050847d448dbc4de261b7311303f89d36883927cafbff36f794ca9a6fa8fa0a208e6000109496a1a2d31f221d18c0b6fdbffe7800bd9448bcc9831a4a4347d0411b16f70da15195913f5f72c162cbf987a47c8fc3c83e1e3b016d50c49527b61a5306fac3d1178283ad6f63d480e72cd696b267b84aa21ead68395deb1352e9ec2e831dc7e75b66c0b00d0d7d9c3a4abcafaeedb0b27fa03fa62abd673eb042091c92968c4ce2259057f12e2bef54ed0c986a16c51495ba6a578a2474ebfa24b7907ed1d08d395ea4467d0097c585171aa013a8d2d24477dbca3b893d41fe65a8858bdd893c01a53336a847bc819633f3ba0ee51ed5f346dda7bd9e7f3aa57424f9ff93260dd057520fd73a24c1acf5be21d87f783edd1f3f639851c0bfb3e2bdd6c91928e07c13c3ca331d0d87a94de1fc247d97b33cab9b979e114ee31fc86b1270a45bc91479f2c9eb0f3af1ccf2e39365e1c434ead07c7b74e069d12adbfcc2536485f5fe3b12a9b661da56dd66fb3f702584cecd82dfb9332b8fb7b4955baed493095a50612fda973b2cee2275d89beb3946d578932ca367f08b5e05910a2766b36cc3e43658cf1a1b5dc8abb484ed8709765b854e25345930f974e28cbfd8151c5df6159d23ee940da170b4e377f23105da5c4642627f26e588d815c12a3370ea9719ff1c67a3681e5a877fd6c06f8b70d139bb064431ff58afb07d7809071906f5b8b877f01fe91098b995f6e58685afae9e40f190c4f3127e7d8caa111db49d362f4e19e8fdee5f9d0619b42f2c9d278e692b8bdba6950c52bfde636a3526ffa4b3a30f243dc817c846a5b58a83cab372d9e646c7c8436a2e52bdeed5d162df92ee0fb09008be239b4cdbdf1d1009ecaca4935e32b9e1913df1d546f88ce3e09b076c837adb4e1367f3eace90baaf88a70b21e3b369af602de9cf5e36ce056aea8118a70307ac396bd88ece6650420628ae70902b54b2244907bc2705ba2deb80141eff9417006b5cad86210ad79e7b29ef68753f34365bfa5a2b0dc57e984900dadb819f68f61bfa19d715cd1b29ebfe43192ff52dd85520a3a76b5f996addc37c55dcfbf9975123d6240a167d05e218d0e6e57d04ca51bfda27b479cc9c7aea3f03562aa1f1078d3543e75eaad10acd99efd7ee72a75a0cc2444cb0ba0a9039b254e54aff9a27a06fa9c5c182b942f8cdd70e7a12f34e4da779c9aae93e8cc6c3fdcf69d67b02a0158ded2a8e6623559dd1f5f8b7bc22624ad661f8d3d730e692b90f84822201991fc9766f6af52a09cdb34c54bd990eaf20b392c25d2ae5e9e4d8f6c326ff213b2a14440c473020cbebc119c128e5030ed76da1c3eb95fd0dc27f875774d05ed2751e7b645b0803e5506164f17f2b1ee8d7749f0c0abbd2811ef32397f06e0e5f6386aec3042db63847ec45891e0fd65b19fcdade8fa7d50c89ab97f864813efef433c4b210ead5825dbe966338be571d27f493c121cb2dd0f46c65e657143455963b57042e89365687ef87f837a00384a8d1afed7d5099c6781834f0909d5073fce66725238c9b215496a1578f2ff369c9f57709618b82d022aa78fe39465c4153a6e265edd2598c9991ea91f5670dec79a5569c96a25049b08bbe42ef8e6688a3ac09fc4ee472845aa515a8395590fedbe9fc2ced9d3856b286b3a8857312bd074a2a714133c6478bd3968a2925fad7ef92e9dafd149177e40224ebb90d63ea86034a385fe137150c730ff394526c06842127bc3e71fe7a8afc8cb771f324372b54ece8b6bbc12a36ec04b14f1e090052e1ea9057868705d17f39d32c0b5c819b9bce0892cb352dfb594129a4a07e57406280cb3722879c3bcbf9acd6d86c37836b7aeee5cfb3e6974d12e7d4eff243cc2e42324f28063d5426c84091c753c3c2afe9653bc60cf1388c8da1c29d6a838e9f794b1199e8faa8229ce2be963a8fa60080023ee1e9e5d9042c99d393c884bfee7da88cafa174a35964b6a793241cbafc6293fb0a466e9fd9a115306184295ec6f28831c89a5524240c2320e74f878609db641e4b386c2e60920fee5e2fdb5166fd2445360754b8ad5098e9f3530ac17b433d50f8e93fdf506e2f50622ab9d5cebe9b55d3ffafbed2abe795b428de7d1eacc48a14edf1ccac46ca03d757d1719cce812340ac4071f98e6770f73cc8406d7752f07fb0fcd9331df17cb437724922f39a19255afcd76f6898d00235fbc5d5c0ef8e86ad1cc0b43a5efe4765fae1a72d985ca2162b32738f3e13d4562b624a33484f6e7b58aadee0f473f753b31c3d5b249c1b98049af19a1cf1356c5f45fa514646a6f54efda864fa6633801097d58a782447990b4dc23a0e187a66c45c733f1e5bfbf6403abf518751ca7b13d5872374778869edf1dce00b778f12e861e3935e123c4191640ecfbfa8e3107dcbab2fe9dd606e9942108284f8155792131ffe23bb90a5576df790650300fe925e8d347cbd46de3874e0744ec4f83337c462e6b33ac73323a488778e7e1c95f60f5ee5803d486837e05a7306d99c216a2120c54f656f29f2636814c858a8ab237319958640eecc93aeea0e2fe3ba51f205b25419ccada06c16abf1b2bd8624895ece1b6bcf9c5e0bff15051990aa1926f6d4e7b65ac0523aa87e93d8475e335344bf4855cbc848cf9b3ffe03c33d068355afae91a5632aea4db3fed9a25971472245efdaa5e7e89dc9d9d7aaf82b06fcf4d270df981646c84d3a52aaf07fd1fa35dc60c141bee5b8a5d6b837994c0ef9a93c89d40d48db1a92991b37855bef0ebddad40d9edf4c0fcb9e393aa7b628ecafa72b7237b6c0f91d63fed083282129638f84d5ffea376e3a6b60a7a2432c3a82fcf5c118473f1bef98bbedf2d972ec7b92b9495149751937c60544d66f2ed1d486cfd4c40719049f7bd8c69f6d49e56d06cfc4583b673473e1bde5615822f8251746e01fd6b0845ac4249de20c87e272bc19a34bd74517d640b537af6a6cb33b3b6e6fbba46b4a01cc0a03f2a494254c94d8a8b4ea17a871beda3343de5d2005cafcee41c57b5a802c57a3f30ef9f06ce1ba39645e4a177fc347f1b3402f888bb0541ba33bb4886346e43835bba5fc8ea2c76c7948678b7d9c5e6d50941b81ca5052c6fc1185a8cb809bd4be207a8ff426b5b37d7dcec51f32bb977e361bdd7353774c2da70eb9e259e1b3d64480cf655f38c41a6e8799dc8eb16dd27f40deda0ba7a93e777b57856e4c623787d092df4e207ac00b621508f4e247a8255f425e54c2bf94606b71936313578de106d0aa5dc6cdc049b326a2f03b8f600345ec2d0be53d109ecbd346675b51643fe66755ba2603020b2c9fc961bb963def2a9fe2749a867605be5ef36b20592164fd2be2b2df12b549e07e39a6e40fee330b99b0b42faef35a8c602da01a1e7c62915a0bc2f58128e6a0656680e5ed0c38235741aa8fcdcbf40bbf8f4447b9f05d0a212262c5a97dd0ccd3f995457e0dec03749c50e9ac4f59c952db9b7de40f1c5fdbd578b43c77fc21d163e86a94d20d48c4c8bfe309d4c5cbc5482c411f3e58a7f9a6cb5f10b184dffc9ee790bc1c163bb3114b81dd5201defa43ec0948b091e93f5bc68c83c30548a8a5aaac461e4c3573485b6d2a3142481e13ecc1be00f8b612037304028e04e674f0d9476167a16de8387e51b780bea737f6dfbe0f00a294114da2d546417ed939487ed585813823c3528cbff04795e8687bab3bc229ba22aa35369caa76993b8a7d14bd5bbdad1cee62c99773ad3535e09e84280ff0ee0894941d3c3b0103570235040b6b560820dcb579e41df2b3ecf59e7a1ae3919a36169370cdc46d2406be8d57262409e463a6ed4b28b79c899bd3cb486842921fb24f739e4563445fbf9231830c55e7f850357d7ab18a078047e8fbe210c3dc2932369d2c512d6ee528e0c4e23734063e1895027f9ef1fa838adf2e42f5cd9653ee57fabb5bad126f4bfcd78ae030dfbc4693ca4c2d2818b53e572a5eee7bf34466a844a6ff7ffbd7b25624ba68a44eda3d995a86e53c9bbeec0ccc061791fa3dd2c0dd36bcd8fe9ea7ef0ee75e8cc2a10059c7764deee3168a9ae8fd13d6fdef66889ac1aa03aab9d16ff4c3d3eefb0a0d845bd0d2cff0756e76a9c346fc5865a08e386de3badd7f7ead553b264c2c027066f15ac51b7830fdbe598cb8f6ea1738174d27ceec3363492d63658c669b8d6601c72df3d37819c020ed58a0e621c4f3366f6eb01b09055474a0f9e71b16051e994a26384e077b081d47c008b31e7764937a8a55655b7d1a9d7e0a8eefdd49463c7a7532fec5e735c0adcc52fe8c1c21664336ea26c7ccce77f04d57ef51422592415777c33578cbb7770c0df65e5b78a2239fa3abdd2e7591efecdc822a110eeff1baf33b1d272622673be713cb6d73c14577387c482596dc9e46e743b9d517f56e595f90a6c3456a01253f5f657fad07684b27d8d790814267c9e426ce232582062134c4a68ead543ab16a26cb592f89af86865ec407817037dc13b3584e24f112f985a2138a7772cd0f4fec1fee585b6df496eb846838056b73125aea9958a8385de829eecb134c1e504a34dd0dfa4ec1fa32b62434329aeaf8488350652e6c81a8b70db6afab511c1266c3773aa4de64dffb8d1f32085f30882857498e20bb8f7f043f82943848ea5a344930110a802b3a229a7ead58de24ea5c8764e020008d93b12198a8b377ac2348f4ba78d76abcf637b15e38fb11d9fc255a31312d1224597980beac081f066772b6363c122032b00b68a6e2bd21c0989fc21b6e2902d0f793ab2e00eb4ec901d7664872c924d2d61d39c3419927110a1f8b11eb5cfd1ed0c33d88128f91f3172cbbd69d326fa000abd40d2843e2fa2882b8377a3f8f55b4d6454f0d68b2896757c7d8cdf91d66b1b43d0254a7232da088186e472f3f11fea67ff0c70a5a410736b496ac4139a653ef4242a8ab4311daa4320d3d0e0ad1468680253fc5444f38e2427f3842308dbf78dd26d90923c4408851ac2c6495958e1aabe0183484f1bb2ed5a99e3fc7375dc4dbca4b0e7065a07849158f582a8de5a4af367e544195d4202a192d71c55dfa63b5dd41a8ea0e135ceeee4a0b11d77d4fda7b1a487af23b62cbf13c1a0ddaf6f1868a224286cc5f811a2cf30c6670609efafb64d1eebd1ea99f1cad20000c00c17432b3e49b81674cd3bd663a2d02d1a0ffb3bd2b65cc7001812017809d488186e2476b7c09b7f734d3ce64308af4542b044257b837caac5fb5e2df38e36dbd4a1d47e006ccb2c877d090f209617118afe43dfbd42d12ec3f7f47629726f03a5cef31d124f33bb988cb40f07022decdd9e7174f4e5496d1be74087f9f73946df40dd4464056879728712d4e4f959df60f6eeab99c04b9c0e282df1ac314f19968a330956f71b86bf27c2551680d27a874edea3948eba7ed6dade6b354e045cdcaf1bde0781d239f8bb2187831a6495e039c1c4200bcabc0410e888e0553a6f6549fe5203b544b5bf65a64b94ce758975d344740477fff2cf82dd29cda8de4c7f00057f20f2f1db37168d2990a99d8dfd18abc598fbb0f6da869a3e36f188bad0c5e66a2dbd8d39e59a4f0b562a9333309021e8b03074065cce92ee31bf52dfa57cf73c749d7fae17dabd68030149f642d04f1ac0ce171b6a914724cef9bb72725a03c04e4fba2068172ca65294d7581444392c0992534c8ee4d824f3ff610d4f8aa93f5bd92d37a5261698f01d3482aa7bf1c19a34559a2bddee423b2f1b481edc0fd1995acad7399f0ec6c5eed7b53bdc29a77609816d943eb591beb298ba5085b58ab8bc13ccac5e2b9a8060c5aeb4b606f3ba490936baacd12f5b773a20f6064ffdf70e59f68450a35232adf7a00f88f51fe7ee15f546ddd6145c096d0e588e8308c71d0e0357ef63ac46e7e9c88dfb5557af13eb56586f9f4f8c0efeda861827b30ab15a799f013289648dbe9ebca0eedde60539449b26157b68a9e35aceb2a4636954fcdc51ee5309a42a77313fd854f245ecb9ac3c716a8e9cfd74eeb2d71e24720d0fc62946c319034c4e27ea39185edd44f25dceb69891526ca2c395f44f101a075b69ae1b9e76c0a0fb7f72b62f700387eeb6246719c54940e66ee44de3a7dfcabf1d8742524d04faabec0aa6446b8f6ddbf6135f54fbc3dc26600bef2a3145dd15d386aa6a3651b26353a86200a9e51d55eafdf8cc48248b6b09a3ea7925ae2e4f901cafae6f641e7248a2186aad25f684fa8e8d5abe5c94a971462d85e65d6c5f2b2d664163326da27ae719c75053df5631de5ee3aa9c7044976b00b4693798fe1976b3b98e019b9b1242a416f2663c4ad2573a6e292fe4a60cd77ba34588d66e7af353dfb0940d5c590024a46b78fc4aa01752bccfc30aa45a43b6f15ee1414be8efd4d9b4c2c33d7a617543e17afcfd3f87fd454864410455e73471bcab827a8440daf4fc6362a4a65eef0cc174c0950a220ffd0f496f5478871ae6d945bccdc851ef7e61c187b9b7aee5272b5e77b81eb84ca4df1531e5680481d31676da9b498fa24ecf32d1471f3bc662fe696650d2fb1604b24605630304784a26a1b302eca01d9f5596e9fb3ad15e70d7734c05ca7515c26f419c74bb0611ff1d9395a981f724ce3a75775e05622892e67eb420057c91a0d4e8b5659130a70464ca80be1e8dc154e436b78ffff03df7492fdc5161823e109f515a28c791e63de87a009d8f6843c862f2b07364fcdad41a54481289477904c8b96de603feedb1cc2986b9e941c282701020e0c8641a175041a8e16e3edfc402b1718350de103618697a96389e29076b02c98df522f6ee8da66c50da48a11c3873644041aa18dbe32ace1fd59f60050760e5bebcad69e2092d07428eac38a4841356bf0b228a0fa8a3943403794d344685c72449bb70827a36834cbacd868e6cfdb81acacbc4bf18c8ceb08a7f1980f3c404d2433d9d40c071ac69565806a1063b0cd863c31135f6d79898b74d02e2cba713a715abaf02e3ef40422e438a2dae88a50e212452ad7e9c5907e9442fa08104d97f9f2d3a4f3c2793d28c0a27be035cca1dde1031e4f2b67b4c49fcd9ae56539e7151034109a8b28acde2c71074d3036ea0f39fafdc1e27c2bb1f16dd056613fdf17fb4d3306f610cfd45fcbcd2190249eb9eadaca55615db6749189a5ccc501ba1c0ad6446aae9f47a024b82d7f627253895834f6e27449167dcdf51fec2061ceabf9e02de80b71382709eea4c678c5f4d662cbc02899e3dd06c67d8234bc3cd9808037403b3949a550215e03cadd3507db3d381d49c89450ffffcbd8b003276551d9fe76c147200827bdb7ed5b74d1c04374aad295a7129ed842bb6f659768b04d774c8e1b76c200f2e2761239d2104a442c9433aa50f8c0e5999ca06b784eaa500b7351cdbd47e5abae3648f4e4c263200244367b34075817f728c05ee17338b6710e4a39014af9659f33fd9197923eac78398f333f80b9878d26fae2c52c8d68e75e7a7f1925f6216d7d18ad023cae7a9a2a47f0a637ab146d345acbed6557942470188e9a1f74a0dc1187405f457bf5b10c803274eeecceef8e8dbcd6403ab6f6c312814dc74b5627fbb2aca5d5f79b473c1c0415f0201004074bea2c4a01693ca1c286266e6d166f71d934b270abad9938d234f59e6312deeddda27f67b63e764de8f6ef65bc3f52221a2456c2adc45ebf29a5647b2e439b630bf381593221c71ad2066e38f1601d892189dd869c4daba1275ca8177bc11242b8ec4814a9b9e5f2ed1dd1cd28747397ffcef485945e67f33d414cfdd213c89052274956553ad6fa8857675c0e2d5441445022d3d4c1302affa70897c5a1c6175becf730bd96b70cdbbef67fe9c90ce79e6b66d92416f7898ac1dea885a7c05e0662f72ecd106e9b57cac95cdfdd2d1de1207f5324bba492bcfe03dbf9ab18a79f96ca3d64cc36ff972f24cc29c77c1e57e7fd4f18591ad4289565255d1b431a84d9495e6d09ab52dbbe397e0ab9f2b0d5f894a4f7e9b51943b7977802e94ff255cc0e6b2e8aa147eb2dc2370b6e5bf83624033338bd91094f96057e0aed3c6ee7a9d31705167c8c5542b79f4cb2cdd59e065147426b60fd353c21b151906f701af9be11c7726b99d4f077d4fee401d5e068de6a721814b19a99de10b54ba6e7c21820119677bac41aa6f1452a83806fdc985603d88887fcf311c2837ced50949475d01b827600ad1c2d8f0a4912c68bdf9258237ad01f4576495617102a4b7fc6c91235c9bc133140656737c84045c7c62f5296d8f790f32d2a177cb3129ed30c64d00e5f730428c2f225b74ed7a34aa5ea181f572277c8f079c3e66f513b5941838c6e8f93a5f09a39b305a6344874c078d4a1d5b04405a4bc963faa1e7bfe5079fb05ae904f0d9f1c029d702ab2529b02d4c099f14bab2f3c8e036eaaa3890d02c2441bfb0ee34aba33c83ec8e6dcf1cb2fd63c49772b3583d89676dafacd8d9a3b1bdc6619454f18c50f50fe070dddd356bfb895317ed9a74e948a62cd0b9477a43a2b1ab28e405aa1a6bfc7cd9fcda562683e7fcaab99ffe6b4e8e65cdf9937b273e99d06a306dd069df258136828ba2bcbacbaf5b98d7d7754cbc5a88004db6665d4acf8a4efaf021903ac72bb27da104aaf3eb9d7ab2792fa48496f8485feb070574bbee6a7186ca14876d61fac50af28cf6380454510f932ada13af756b97d3089ebe7f2bd57dc71addc50bdc0355d92fdfdceb6e1cee5079293843a8b48223f599fec816a2b6777f287d62dbb415126cb743bfe7e94a6405f2d0e895d8269384aac60fa43a66fc96d08e5b1129dc6498766058ccea771adc2d8937dbbd9a32f13d106e2a58648afd85e3b470918e2e36ce4cf4c5928fb27949fa19f500b873ac9f4b0ca4b17316f2a801a468a4ad8ab5bbd5e9a499c7d4827f71bd65287b8 \ No newline at end of file diff --git a/orchestrator/crates/da-clients/ethereum/trusted_setup.txt b/orchestrator/crates/da-clients/ethereum/trusted_setup.txt new file mode 100644 index 000000000..d2519656f --- /dev/null +++ b/orchestrator/crates/da-clients/ethereum/trusted_setup.txt @@ -0,0 +1,4163 @@ +4096 +65 +a0413c0dcafec6dbc9f47d66785cf1e8c981044f7d13cfe3e4fcbb71b5408dfde6312493cb3c1d30516cb3ca88c03654 +8b997fb25730d661918371bb41f2a6e899cac23f04fc5365800b75433c0a953250e15e7a98fb5ca5cc56a8cd34c20c57 +83302852db89424d5699f3f157e79e91dc1380f8d5895c5a772bb4ea3a5928e7c26c07db6775203ce33e62a114adaa99 +a759c48b7e4a685e735c01e5aa6ef9c248705001f470f9ad856cd87806983e917a8742a3bd5ee27db8d76080269b7c83 +967f8dc45ebc3be14c8705f43249a30ff48e96205fb02ae28daeab47b72eb3f45df0625928582aa1eb4368381c33e127 +a418eb1e9fb84cb32b370610f56f3cb470706a40ac5a47c411c464299c45c91f25b63ae3fcd623172aa0f273c0526c13 +8f44e3f0387293bc7931e978165abbaed08f53acd72a0a23ac85f6da0091196b886233bcee5b4a194db02f3d5a9b3f78 +97173434b336be73c89412a6d70d416e170ea355bf1956c32d464090b107c090ef2d4e1a467a5632fbc332eeb679bf2d +a24052ad8d55ad04bc5d951f78e14213435681594110fd18173482609d5019105b8045182d53ffce4fc29fc8810516c1 +b950768136b260277590b5bec3f56bbc2f7a8bc383d44ce8600e85bf8cf19f479898bcc999d96dfbd2001ede01d94949 +92ab8077871037bd3b57b95cbb9fb10eb11efde9191690dcac655356986fd02841d8fdb25396faa0feadfe3f50baf56d +a79b096dff98038ac30f91112dd14b78f8ad428268af36d20c292e2b3b6d9ed4fb28480bb04e465071cc67d05786b6d1 +b9ff71461328f370ce68bf591aa7fb13027044f42a575517f3319e2be4aa4843fa281e756d0aa5645428d6dfa857cef2 +8d765808c00b3543ff182e2d159c38ae174b12d1314da88ea08e13bd9d1c37184cb515e6bf6420531b5d41767987d7ce +b8c9a837d20c3b53e6f578e4a257bb7ef8fc43178614ec2a154915b267ad2be135981d01ed2ee1b5fbd9d9bb27f0800a +a9773d92cf23f65f98ef68f6cf95c72b53d0683af2f9bf886bb9036e4a38184b1131b26fd24397910b494fbef856f3aa +b41ebe38962d112da4a01bf101cb248d808fbd50aaf749fc7c151cf332032eb3e3bdbd716db899724b734d392f26c412 +90fbb030167fb47dcc13d604a726c0339418567c1d287d1d87423fa0cb92eec3455fbb46bcbe2e697144a2d3972142e4 +b11d298bd167464b35fb923520d14832bd9ed50ed841bf6d7618424fd6f3699190af21759e351b89142d355952149da1 +8bc36066f69dc89f7c4d1e58d67497675050c6aa002244cebd9fc957ec5e364c46bab4735ea3db02b73b3ca43c96e019 +ab7ab92c5d4d773068e485aa5831941ebd63db7118674ca38089635f3b4186833af2455a6fb9ed2b745df53b3ce96727 +af191ca3089892cb943cd97cf11a51f38e38bd9be50844a4e8da99f27e305e876f9ed4ab0628e8ae3939066b7d34a15f +a3204c1747feabc2c11339a542195e7cb6628fd3964f846e71e2e3f2d6bb379a5e51700682ea1844eba12756adb13216 +903a29883846b7c50c15968b20e30c471aeac07b872c40a4d19eb1a42da18b649d5bbfde4b4cf6225d215a461b0deb6d +8e6e9c15ffbf1e16e5865a5fef7ed751dc81957a9757b535cb38b649e1098cda25d42381dc4f776778573cdf90c3e6e0 +a8f6dd26100b512a8c96c52e00715c4b2cb9ac457f17aed8ffe1cf1ea524068fe5a1ddf218149845fc1417b789ecfc98 +a5b0ffc819451ea639cfd1c18cbc9365cc79368d3b2e736c0ae54eba2f0801e6eb0ee14a5f373f4a70ca463bdb696c09 +879f91ccd56a1b9736fbfd20d8747354da743fb121f0e308a0d298ff0d9344431890e41da66b5009af3f442c636b4f43 +81bf3a2d9755e206b515a508ac4d1109bf933c282a46a4ae4a1b4cb4a94e1d23642fad6bd452428845afa155742ade7e +8de778d4742f945df40004964e165592f9c6b1946263adcdd5a88b00244bda46c7bb49098c8eb6b3d97a0dd46148a8ca +b7a57b21d13121907ee28c5c1f80ee2e3e83a3135a8101e933cf57171209a96173ff5037f5af606e9fd6d066de6ed693 +b0877d1963fd9200414a38753dffd9f23a10eb3198912790d7eddbc9f6b477019d52ddd4ebdcb9f60818db076938a5a9 +88da2d7a6611bc16adc55fc1c377480c828aba4496c645e3efe0e1a67f333c05a0307f7f1d2df8ac013602c655c6e209 +95719eb02e8a9dede1a888c656a778b1c69b7716fbe3d1538fe8afd4a1bc972183c7d32aa7d6073376f7701df80116d8 +8e8a1ca971f2444b35af3376e85dccda3abb8e8e11d095d0a4c37628dfe5d3e043a377c3de68289ef142e4308e9941a0 +b720caaff02f6d798ac84c4f527203e823ff685869e3943c979e388e1c34c3f77f5c242c6daa7e3b30e511aab917b866 +86040d55809afeec10e315d1ad950d269d37cfee8c144cd8dd4126459e3b15a53b3e68df5981df3c2346d23c7b4baaf4 +82d8cabf13ab853db0377504f0aec00dba3a5cd3119787e8ad378ddf2c40b022ecfc67c642b7acc8c1e3dd03ab50993e +b8d873927936719d2484cd03a6687d65697e17dcf4f0d5aed6f5e4750f52ef2133d4645894e7ebfc4ef6ce6788d404c8 +b1235594dbb15b674a419ff2b2deb644ad2a93791ca05af402823f87114483d6aa1689b7a9bea0f547ad12fe270e4344 +a53fda86571b0651f5affb74312551a082fffc0385cfd24c1d779985b72a5b1cf7c78b42b4f7e51e77055f8e5e915b00 +b579adcfd9c6ef916a5a999e77a0cb21d378c4ea67e13b7c58709d5da23a56c2e54218691fc4ac39a4a3d74f88cc31f7 +ab79e584011713e8a2f583e483a91a0c2a40771b77d91475825b5acbea82db4262132901cb3e4a108c46d7c9ee217a4e +a0fe58ea9eb982d7654c8aaf9366230578fc1362f6faae0594f8b9e659bcb405dff4aac0c7888bbe07f614ecf0d800a6 +867e50e74281f28ecd4925560e2e7a6f8911b135557b688254623acce0dbc41e23ac3e706a184a45d54c586edc416eb0 +89f81b61adda20ea9d0b387a36d0ab073dc7c7cbff518501962038be19867042f11fcc7ff78096e5d3b68c6d8dc04d9b +a58ee91bb556d43cf01f1398c5811f76dc0f11efdd569eed9ef178b3b0715e122060ec8f945b4dbf6eebfa2b90af6fa6 +ac460be540f4c840def2eef19fc754a9af34608d107cbadb53334cf194cc91138d53b9538fcd0ec970b5d4aa455b224a +b09b91f929de52c09d48ca0893be6eb44e2f5210a6c394689dc1f7729d4be4e11d0474b178e80cea8c2ac0d081f0e811 +8d37a442a76b06a02a4e64c2504aea72c8b9b020ab7bcc94580fe2b9603c7c50d7b1e9d70d2a7daea19c68667e8f8c31 +a9838d4c4e3f3a0075a952cf7dd623307ec633fcc81a7cf9e52e66c31780de33dbb3d74c320dc7f0a4b72f7a49949515 +a44766b6251af458fe4f5f9ed1e02950f35703520b8656f09fc42d9a2d38a700c11a7c8a0436ac2e5e9f053d0bb8ff91 +ad78d9481c840f5202546bea0d13c776826feb8b1b7c72e83d99a947622f0bf38a4208551c4c41beb1270d7792075457 +b619ffa8733b470039451e224b777845021e8dc1125f247a4ff2476cc774657d0ff9c5279da841fc1236047de9d81c60 +af760b0a30a1d6af3bc5cd6686f396bd41779aeeb6e0d70a09349bd5da17ca2e7965afc5c8ec22744198fbe3f02fb331 +a0cc209abdb768b589fcb7b376b6e1cac07743288c95a1cf1a0354b47f0cf91fca78a75c1fcafa6f5926d6c379116608 +864add673c89c41c754eeb3cd8dcff5cdde1d739fce65c30e474a082bb5d813cba6412e61154ce88fdb6c12c5d9be35b +b091443b0ce279327dc37cb484e9a5b69b257a714ce21895d67539172f95ffa326903747b64a3649e99aea7bb10d03f7 +a8c452b8c4ca8e0a61942a8e08e28f17fb0ef4c5b018b4e6d1a64038280afa2bf1169202f05f14af24a06ca72f448ccd +a23c24721d18bc48d5dcf70effcbef89a7ae24e67158d70ae1d8169ee75d9a051d34b14e9cf06488bac324fe58549f26 +92a730e30eb5f3231feb85f6720489dbb1afd42c43f05a1610c6b3c67bb949ec8fde507e924498f4ffc646f7b07d9123 +8dbe5abf4031ec9ba6bb06d1a47dd1121fb9e03b652804069250967fd5e9577d0039e233441b7f837a7c9d67ba18c28e +aa456bcfef6a21bb88181482b279df260297b3778e84594ebddbdf337e85d9e3d46ca1d0b516622fb0b103df8ec519b7 +a3b31ae621bd210a2b767e0e6f22eb28fe3c4943498a7e91753225426168b9a26da0e02f1dc5264da53a5ad240d9f51b +aa8d66857127e6e71874ce2202923385a7d2818b84cb73a6c42d71afe70972a70c6bdd2aad1a6e8c5e4ca728382a8ea8 +ac7e8e7a82f439127a5e40558d90d17990f8229852d21c13d753c2e97facf077cf59582b603984c3dd3faebd80aff4f5 +93a8bcf4159f455d1baa73d2ef2450dcd4100420de84169bbe28b8b7a5d1746273f870091a87a057e834f754f34204b1 +89d0ebb287c3613cdcae7f5acc43f17f09c0213fc40c074660120b755d664109ffb9902ed981ede79e018ddb0c845698 +a87ccbfad431406aadbee878d9cf7d91b13649d5f7e19938b7dfd32645a43b114eef64ff3a13201398bd9b0337832e5a +833c51d0d0048f70c3eefb4e70e4ff66d0809c41838e8d2c21c288dd3ae9d9dfaf26d1742bf4976dab83a2b381677011 +8bcd6b1c3b02fffead432e8b1680bad0a1ac5a712d4225e220690ee18df3e7406e2769e1f309e2e803b850bc96f0e768 +b61e3dbd88aaf4ff1401521781e2eea9ef8b66d1fac5387c83b1da9e65c2aa2a56c262dea9eceeb4ad86c90211672db0 +866d3090db944ecf190dd0651abf67659caafd31ae861bab9992c1e3915cb0952da7c561cc7e203560a610f48fae633b +a5e8971543c14274a8dc892b0be188c1b4fbc75c692ed29f166e0ea80874bc5520c2791342b7c1d2fb5dd454b03b8a5b +8f2f9fc50471bae9ea87487ebd1bc8576ef844cc42d606af5c4c0969670fdf2189afd643e4de3145864e7773d215f37f +b1bb0f2527db6d51f42b9224383c0f96048bbc03d469bf01fe1383173ef8b1cc9455d9dd8ba04d46057f46949bfc92b5 +aa7c99d906b4d7922296cfe2520473fc50137c03d68b7865c5bfb8adbc316b1034310ec4b5670c47295f4a80fb8d61e9 +a5d1da4d6aba555919df44cbaa8ff79378a1c9e2cfdfbf9d39c63a4a00f284c5a5724e28ecbc2d9dba27fe4ee5018bd5 +a8db53224f70af4d991b9aae4ffe92d2aa5b618ad9137784b55843e9f16cefbfd25ada355d308e9bbf55f6d2f7976fb3 +b6536c4232bb20e22af1a8bb12de76d5fec2ad9a3b48af1f38fa67e0f8504ef60f305a73d19385095bb6a9603fe29889 +87f7e371a1817a63d6838a8cf4ab3a8473d19ce0d4f40fd013c03d5ddd5f4985df2956531cc9f187928ef54c68f4f9a9 +ae13530b1dbc5e4dced9d909ea61286ec09e25c12f37a1ed2f309b0eb99863d236c3b25ed3484acc8c076ad2fa8cd430 +98928d850247c6f7606190e687d5c94a627550198dbdbea0161ef9515eacdb1a0f195cae3bb293112179082daccf8b35 +918528bb8e6a055ad4db6230d3a405e9e55866da15c4721f5ddd1f1f37962d4904aad7a419218fe6d906fe191a991806 +b71e31a06afe065773dd3f4a6e9ef81c3292e27a3b7fdfdd452d03e05af3b6dd654c355f7516b2a93553360c6681a73a +8870b83ab78a98820866f91ac643af9f3ff792a2b7fda34185a9456a63abdce42bfe8ad4dc67f08a6392f250d4062df4 +91eea1b668e52f7a7a5087fabf1cab803b0316f78d9fff469fbfde2162f660c250e4336a9eea4cb0450bd30ac067bc8b +8b74990946de7b72a92147ceac1bd9d55999a8b576e8df68639e40ed5dc2062cfcd727903133de482b6dca19d0aaed82 +8ebad537fece090ebbab662bdf2618e21ca30cf6329c50935e8346d1217dcbe3c1fe1ea28efca369c6003ce0a94703c1 +a8640479556fb59ebd1c40c5f368fbd960932fdbb782665e4a0e24e2bdb598fc0164ce8c0726d7759cfc59e60a62e182 +a9a52a6bf98ee4d749f6d38be2c60a6d54b64d5cbe4e67266633dc096cf28c97fe998596707d31968cbe2064b72256bf +847953c48a4ce6032780e9b39d0ed4384e0be202c2bbe2dfda3910f5d87aa5cd3c2ffbfcfae4dddce16d6ab657599b95 +b6f6e1485d3ec2a06abaecd23028b200b2e4a0096c16144d07403e1720ff8f9ba9d919016b5eb8dc5103880a7a77a1d3 +98dfc2065b1622f596dbe27131ea60bef7a193b12922cecb27f8c571404f483014f8014572e86ae2e341ab738e4887ef +acb0d205566bacc87bbe2e25d10793f63f7a1f27fd9e58f4f653ceae3ffeba511eaf658e068fad289eeb28f9edbeb35b +ae4411ed5b263673cee894c11fe4abc72a4bf642d94022a5c0f3369380fcdfc1c21e277f2902972252503f91ada3029a +ac4a7a27ba390a75d0a247d93d4a8ef1f0485f8d373a4af4e1139369ec274b91b3464d9738eeaceb19cd6f509e2f8262 +87379c3bf231fdafcf6472a79e9e55a938d851d4dd662ab6e0d95fd47a478ed99e2ad1e6e39be3c0fc4f6d996a7dd833 +81316904b035a8bcc2041199a789a2e6879486ba9fddcba0a82c745cc8dd8374a39e523b91792170cd30be7aa3005b85 +b8206809c6cd027ed019f472581b45f7e12288f89047928ba32b4856b6560ad30395830d71e5e30c556f6f182b1fe690 +88d76c028f534a62e019b4a52967bb8642ede6becfa3807be68fdd36d366fc84a4ac8dc176e80a68bc59eb62caf5dff9 +8c3b8be685b0f8aad131ee7544d0e12f223f08a6f8edaf464b385ac644e0ddc9eff7cc7cb5c1b50ab5d71ea0f41d2213 +8d91410e004f76c50fdc05784157b4d839cb5090022c629c7c97a5e0c3536eeafee17a527b54b1165c3cd81774bb54ce +b25c2863bc28ec5281ce800ddf91a7e1a53f4c6d5da1e6c86ef4616e93bcf55ed49e297216d01379f5c6e7b3c1e46728 +865f7b09ac3ca03f20be90c48f6975dd2588838c2536c7a3532a6aa5187ed0b709cd03d91ff4048061c10d0aa72b69ce +b3f7477c90c11596eb4f8bbf34adbcb832638c4ff3cdd090d4d477ee50472ac9ddaf5be9ad7eca3f148960d362bbd098 +8db35fd53fca04faecd1c76a8227160b3ab46ac1af070f2492445a19d8ff7c25bbaef6c9fa0c8c088444561e9f7e4eb2 +a478b6e9d058a2e01d2fc053b739092e113c23a6a2770a16afbef044a3709a9e32f425ace9ba7981325f02667c3f9609 +98caa6bd38916c08cf221722a675a4f7577f33452623de801d2b3429595f988090907a7e99960fff7c076d6d8e877b31 +b79aaaacefc49c3038a14d2ac468cfec8c2161e88bdae91798d63552cdbe39e0e02f9225717436b9b8a40a022c633c6e +845a31006c680ee6a0cc41d3dc6c0c95d833fcf426f2e7c573fa15b2c4c641fbd6fe5ebb0e23720cc3467d6ee1d80dc4 +a1bc287e272cf8b74dbf6405b3a5190883195806aa351f1dc8e525aa342283f0a35ff687e3b434324dedee74946dd185 +a4fd2dc8db75d3783a020856e2b3aa266dc6926e84f5c491ef739a3bddd46dc8e9e0fc1177937839ef1b18d062ffbb9e +acbf0d3c697f57c202bb8c5dc4f3fc341b8fc509a455d44bd86acc67cad2a04495d5537bcd3e98680185e8aa286f2587 +a5caf423a917352e1b8e844f5968a6da4fdeae467d10c6f4bbd82b5eea46a660b82d2f5440d3641c717b2c3c9ed0be52 +8a39d763c08b926599ab1233219c49c825368fad14d9afc7c0c039224d37c00d8743293fd21645bf0b91eaf579a99867 +b2b53a496def0ba06e80b28f36530fbe0fb5d70a601a2f10722e59abee529369c1ae8fd0f2db9184dd4a2519bb832d94 +a73980fcef053f1b60ebbb5d78ba6332a475e0b96a0c724741a3abf3b59dd344772527f07203cf4c9cb5155ebed81fa0 +a070d20acce42518ece322c9db096f16aed620303a39d8d5735a0df6e70fbeceb940e8d9f5cc38f3314b2240394ec47b +a50cf591f522f19ca337b73089557f75929d9f645f3e57d4f241e14cdd1ea3fb48d84bcf05e4f0377afbb789fbdb5d20 +82a5ffce451096aca8eeb0cd2ae9d83db3ed76da3f531a80d9a70a346359bf05d74863ce6a7c848522b526156a5e20cd +88e0e84d358cbb93755a906f329db1537c3894845f32b9b0b691c29cbb455373d9452fadd1e77e20a623f6eaf624de6f +aa07ac7b84a6d6838826e0b9e350d8ec75e398a52e9824e6b0da6ae4010e5943fec4f00239e96433f291fef9d1d1e609 +ac8887bf39366034bc63f6cc5db0c26fd27307cbc3d6cce47894a8a019c22dd51322fb5096edc018227edfafc053a8f6 +b7d26c26c5b33f77422191dca94977588ab1d4b9ce7d0e19c4a3b4cd1c25211b78c328dbf81e755e78cd7d1d622ad23e +99a676d5af49f0ba44047009298d8474cabf2d5bca1a76ba21eff7ee3c4691a102fdefea27bc948ccad8894a658abd02 +b0d09a91909ab3620c183bdf1d53d43d39eb750dc7a722c661c3de3a1a5d383ad221f71bae374f8a71867505958a3f76 +84681a883de8e4b93d68ac10e91899c2bbb815ce2de74bb48a11a6113b2a3f4df8aceabda1f5f67bc5aacac8c9da7221 +9470259957780fa9b43521fab3644f555f5343281c72582b56d2efd11991d897b3b481cafa48681c5aeb80c9663b68f7 +ab1b29f7ece686e6fa968a4815da1d64f3579fed3bc92e1f3e51cd13a3c076b6cf695ed269d373300a62463dc98a4234 +8ab415bfcd5f1061f7687597024c96dd9c7cb4942b5989379a7a3b5742f7d394337886317659cbeacaf030234a24f972 +b9b524aad924f9acc63d002d617488f31b0016e0f0548f050cada285ce7491b74a125621638f19e9c96eabb091d945be +8c4c373e79415061837dd0def4f28a2d5d74d21cb13a76c9049ad678ca40228405ab0c3941df49249847ecdefc1a5b78 +a8edf4710b5ab2929d3db6c1c0e3e242261bbaa8bcec56908ddadd7d2dad2dca9d6eb9de630b960b122ebeea41040421 +8d66bb3b50b9df8f373163629f9221b3d4b6980a05ea81dc3741bfe9519cf3ebba7ab98e98390bae475e8ede5821bd5c +8d3c21bae7f0cfb97c56952bb22084b58e7bb718890935b73103f33adf5e4d99cd262f929c6eeab96209814f0dbae50a +a5c66cfab3d9ebf733c4af24bebc97070e7989fe3c73e79ac85fb0e4d40ae44fb571e0fad4ad72560e13ed453900d14f +9362e6b50b43dbefbc3254471372297b5dcce809cd3b60bf74a1268ab68bdb50e46e462cbd78f0d6c056330e982846af +854630d08e3f0243d570cc2e856234cb4c1a158d9c1883bf028a76525aaa34be897fe918d5f6da9764a3735fa9ebd24a +8c7d246985469ff252c3f4df6c7c9196fc79f05c1c66a609d84725c78001d0837c7a7049394ba5cf7e863e2d58af8417 +ae050271e01b528925302e71903f785b782f7bf4e4e7a7f537140219bc352dc7540c657ed03d3a297ad36798ecdb98cd +8d2ae9179fcf2b0c69850554580b52c1f4a5bd865af5f3028f222f4acad9c1ad69a8ef6c7dc7b03715ee5c506b74325e +b8ef8de6ce6369a8851cd36db0ccf00a85077e816c14c4e601f533330af9e3acf0743a95d28962ed8bfcfc2520ef3cfe +a6ecad6fdfb851b40356a8b1060f38235407a0f2706e7b8bb4a13465ca3f81d4f5b99466ac2565c60af15f022d26732e +819ff14cdea3ab89d98e133cd2d0379361e2e2c67ad94eeddcdb9232efd509f51d12f4f03ebd4dd953bd262a886281f7 +8561cd0f7a6dbcddd83fcd7f472d7dbcba95b2d4fb98276f48fccf69f76d284e626d7e41314b633352df8e6333fd52a1 +b42557ccce32d9a894d538c48712cb3e212d06ac05cd5e0527ccd2db1078ee6ae399bf6a601ffdab1f5913d35fc0b20c +89b4008d767aad3c6f93c349d3b956e28307311a5b1cec237e8d74bb0dee7e972c24f347fd56afd915a2342bd7bc32f0 +877487384b207e53f5492f4e36c832c2227f92d1bb60542cfeb35e025a4a7afc2b885fae2528b33b40ab09510398f83e +8c411050b63c9053dd0cd81dacb48753c3d7f162028098e024d17cd6348482703a69df31ad6256e3d25a8bbf7783de39 +a8506b54a88d17ac10fb1b0d1fe4aa40eae7553a064863d7f6b52ccc4236dd4b82d01dca6ba87da9a239e3069ba879fb +b1a24caef9df64750c1350789bb8d8a0db0f39474a1c74ea9ba064b1516db6923f00af8d57c632d58844fb8786c3d47a +959d6e255f212b0708c58a2f75cb1fe932248c9d93424612c1b8d1e640149656059737e4db2139afd5556bcdacf3eda2 +84525af21a8d78748680b6535bbc9dc2f0cf9a1d1740d12f382f6ecb2e73811d6c1da2ad9956070b1a617c61fcff9fe5 +b74417d84597a485d0a8e1be07bf78f17ebb2e7b3521b748f73935b9afbbd82f34b710fb7749e7d4ab55b0c7f9de127d +a4a9aecb19a6bab167af96d8b9d9aa5308eab19e6bfb78f5a580f9bf89bdf250a7b52a09b75f715d651cb73febd08e84 +9777b30be2c5ffe7d29cc2803a562a32fb43b59d8c3f05a707ab60ec05b28293716230a7d264d7cd9dd358fc031cc13e +95dce7a3d4f23ac0050c510999f5fbf8042f771e8f8f94192e17bcbfa213470802ebdbe33a876cb621cf42e275cbfc8b +b0b963ebcbbee847ab8ae740478544350b3ac7e86887e4dfb2299ee5096247cd2b03c1de74c774d9bde94ae2ee2dcd59 +a4ab20bafa316030264e13f7ef5891a2c3b29ab62e1668fcb5881f50a9acac6adbe3d706c07e62f2539715db768f6c43 +901478a297669d608e406fe4989be75264b6c8be12169aa9e0ad5234f459ca377f78484ffd2099a2fe2db5e457826427 +88c76e5c250810c057004a03408b85cd918e0c8903dc55a0dd8bb9b4fc2b25c87f9b8cf5943eb19fbbe99d36490050c5 +91607322bbad4a4f03fc0012d0821eff5f8c516fda45d1ec1133bface6f858bf04b25547be24159cab931a7aa08344d4 +843203e07fce3c6c81f84bc6dc5fb5e9d1c50c8811ace522dc66e8658433a0ef9784c947e6a62c11bf705307ef05212e +91dd8813a5d6dddcda7b0f87f672b83198cd0959d8311b2b26fb1fae745185c01f796fbd03aad9db9b58482483fdadd8 +8d15911aacf76c8bcd7136e958febd6963104addcd751ce5c06b6c37213f9c4fb0ffd4e0d12c8e40c36d658999724bfd +8a36c5732d3f1b497ebe9250610605ee62a78eaa9e1a45f329d09aaa1061131cf1d9df00f3a7d0fe8ad614a1ff9caaae +a407d06affae03660881ce20dab5e2d2d6cddc23cd09b95502a9181c465e57597841144cb34d22889902aff23a76d049 +b5fd856d0578620a7e25674d9503be7d97a2222900e1b4738c1d81ff6483b144e19e46802e91161e246271f90270e6cf +91b7708869cdb5a7317f88c0312d103f8ce90be14fb4f219c2e074045a2a83636fdc3e69e862049fc7c1ef000e832541 +b64719cc5480709d1dae958f1d3082b32a43376da446c8f9f64cb02a301effc9c34d9102051733315a8179aed94d53cc +94347a9542ff9d18f7d9eaa2f4d9b832d0e535fe49d52aa2de08aa8192400eddabdb6444a2a78883e27c779eed7fdf5a +840ef44a733ff1376466698cd26f82cf56bb44811e196340467f932efa3ae1ef9958a0701b3b032f50fd9c1d2aed9ab5 +90ab3f6f67688888a31ffc2a882bb37adab32d1a4b278951a21646f90d03385fc976715fc639a785d015751171016f10 +b56f35d164c24b557dbcbc8a4bfa681ec916f8741ffcb27fb389c164f4e3ed2be325210ef5bdaeae7a172ca9599ab442 +a7921a5a80d7cf6ae81ba9ee05e0579b18c20cd2852762c89d6496aa4c8ca9d1ca2434a67b2c16d333ea8e382cdab1e3 +a506bcfbd7e7e5a92f68a1bd87d07ad5fe3b97aeee40af2bf2cae4efcd77fff03f872732c5b7883aa6584bee65d6f8cb +a8c46cff58931a1ce9cbe1501e1da90b174cddd6d50f3dfdfb759d1d4ad4673c0a8feed6c1f24c7af32865a7d6c984e5 +b45686265a83bff69e312c5149db7bb70ac3ec790dc92e392b54d9c85a656e2bf58596ce269f014a906eafc97461aa5f +8d4009a75ccb2f29f54a5f16684b93202c570d7a56ec1a8b20173269c5f7115894f210c26b41e8d54d4072de2d1c75d0 +aef8810af4fc676bf84a0d57b189760ddc3375c64e982539107422e3de2580b89bd27aa6da44e827b56db1b5555e4ee8 +888f0e1e4a34f48eb9a18ef4de334c27564d72f2cf8073e3d46d881853ac1424d79e88d8ddb251914890588937c8f711 +b64b0aa7b3a8f6e0d4b3499fe54e751b8c3e946377c0d5a6dbb677be23736b86a7e8a6be022411601dd75012012c3555 +8d57776f519f0dd912ea14f79fbab53a30624e102f9575c0bad08d2dc754e6be54f39b11278c290977d9b9c7c0e1e0ad +a018fc00d532ceb2e4de908a15606db9b6e0665dd77190e2338da7c87a1713e6b9b61554e7c1462f0f6d4934b960b15c +8c932be83ace46f65c78e145b384f58e41546dc0395270c1397874d88626fdeda395c8a289d602b4c312fe98c1311856 +89174838e21639d6bdd91a0621f04dc056907b88e305dd66e46a08f6d65f731dea72ae87ca5e3042d609e8de8de9aa26 +b7b7f508bb74f7a827ac8189daa855598ff1d96fa3a02394891fd105d8f0816224cd50ac4bf2ed1cf469ace516c48184 +b31877ad682583283baadd68dc1bebd83f5748b165aadd7fe9ef61a343773b88bcd3a022f36d6c92f339b7bfd72820a9 +b79d77260b25daf9126dab7a193df2d7d30542786fa1733ffaf6261734770275d3ca8bae1d9915d1181a78510b3439db +91894fb94cd4c1dd2ceaf9c53a7020c5799ba1217cf2d251ea5bc91ed26e1159dd758e98282ebe35a0395ef9f1ed15a0 +ab59895cdafd33934ceedfc3f0d5d89880482cba6c99a6db93245f9e41987efd76e0640e80aef31782c9a8c7a83fccec +aa22ea63654315e033e09d4d4432331904a6fc5fb1732557987846e3c564668ca67c60a324b4af01663a23af11a9ce4b +b53ba3ef342601467e1f71aa280e100fbabbd38518fa0193e0099505036ee517c1ac78e96e9baeb549bb6879bb698fb0 +943fd69fd656f37487cca3605dc7e5a215fddd811caf228595ec428751fc1de484a0cb84c667fe4d7c35599bfa0e5e34 +9353128b5ebe0dddc555093cf3e5942754f938173541033e8788d7331fafc56f68d9f97b4131e37963ab7f1c8946f5f1 +a76cd3c566691f65cfb86453b5b31dbaf3cab8f84fe1f795dd1e570784b9b01bdd5f0b3c1e233942b1b5838290e00598 +983d84b2e53ffa4ae7f3ba29ef2345247ea2377686b74a10479a0ef105ecf90427bf53b74c96dfa346d0f842b6ffb25b +92e0fe9063306894a2c6970c001781cff416c87e87cb5fbac927a3192655c3da4063e6fa93539f6ff58efac6adcc5514 +b00a81f03c2b8703acd4e2e4c21e06973aba696415d0ea1a648ace2b0ea19b242fede10e4f9d7dcd61c546ab878bc8f9 +b0d08d880f3b456a10bf65cff983f754f545c840c413aea90ce7101a66eb0a0b9b1549d6c4d57725315828607963f15a +90cb64d03534f913b411375cce88a9e8b1329ce67a9f89ca5df8a22b8c1c97707fec727dbcbb9737f20c4cf751359277 +8327c2d42590dfcdb78477fc18dcf71608686ad66c49bce64d7ee874668be7e1c17cc1042a754bbc77c9daf50b2dae07 +8532171ea13aa7e37178e51a6c775da469d2e26ec854eb16e60f3307db4acec110d2155832c202e9ba525fc99174e3b0 +83ca44b15393d021de2a511fa5511c5bd4e0ac7d67259dce5a5328f38a3cce9c3a269405959a2486016bc27bb140f9ff +b1d36e8ca812be545505c8214943b36cabee48112cf0de369957afa796d37f86bf7249d9f36e8e990f26f1076f292b13 +9803abf45be5271e2f3164c328d449efc4b8fc92dfc1225d38e09630909fe92e90a5c77618daa5f592d23fc3ad667094 +b268ad68c7bf432a01039cd889afae815c3e120f57930d463aece10af4fd330b5bd7d8869ef1bcf6b2e78e4229922edc +a4c91a0d6f16b1553264592b4cbbbf3ca5da32ab053ffbdd3dbb1aed1afb650fb6e0dc5274f71a51d7160856477228db +ad89d043c2f0f17806277ffdf3ecf007448e93968663f8a0b674254f36170447b7527d5906035e5e56f4146b89b5af56 +8b6964f757a72a22a642e4d69102951897e20c21449184e44717bd0681d75f7c5bfa5ee5397f6e53febf85a1810d6ed1 +b08f5cdaabec910856920cd6e836c830b863eb578423edf0b32529488f71fe8257d90aed4a127448204df498b6815d79 +af26bb3358be9d280d39b21d831bb53145c4527a642446073fee5a86215c4c89ff49a3877a7a549486262f6f57a0f476 +b4010b37ec4d7c2af20800e272539200a6b623ae4636ecbd0e619484f4ab9240d02bc5541ace3a3fb955dc0a3d774212 +82752ab52bdcc3cc2fc405cb05a2e694d3df4a3a68f2179ec0652536d067b43660b96f85f573f26fbd664a9ef899f650 +96d392dde067473a81faf2d1fea55b6429126b88b160e39b4210d31d0a82833ffd3a80e07d24d495aea2d96be7251547 +a76d8236d6671204d440c33ac5b8deb71fa389f6563d80e73be8b043ec77d4c9b06f9a586117c7f957f4af0331cbc871 +b6c90961f68b5e385d85c9830ec765d22a425f506904c4d506b87d8944c2b2c09615e740ed351df0f9321a7b93979cae +a6ec5ea80c7558403485b3b1869cdc63bde239bafdf936d9b62a37031628402a36a2cfa5cfbb8e26ac922cb0a209b3ba +8c3195bbdbf9bc0fc95fa7e3d7f739353c947f7767d1e3cb24d8c8602d8ea0a1790ac30b815be2a2ba26caa5227891e2 +a7f8a63d809f1155722c57f375ea00412b00147776ae4444f342550279ef4415450d6f400000a326bf11fea6c77bf941 +97fa404df48433a00c85793440e89bb1af44c7267588ae937a1f5d53e01e1c4d4fc8e4a6d517f3978bfdd6c2dfde012f +a984a0a3836de3d8d909c4629a2636aacb85393f6f214a2ef68860081e9db05ad608024762db0dc35e895dc00e2d4cdd +9526cf088ab90335add1db4d3a4ac631b58cbfbe88fa0845a877d33247d1cfeb85994522e1eb8f8874651bfb1df03e2a +ac83443fd0afe99ad49de9bf8230158c118e2814c9c89db5ac951c240d6c2ce45e7677221279d9e97848ec466b99aafe +aeeefdbaba612e971697798ceaf63b247949dc823a0ad771ae5b988a5e882b338a98d3d0796230f49d533ec5ba411b39 +ae3f248b5a7b0f92b7820a6c5ae21e5bd8f4265d4f6e21a22512079b8ee9be06393fd3133ce8ebac0faf23f4f8517e36 +a64a831b908eee784b8388b45447d2885ec0551b26b0c2b15e5f417d0a12c79e867fb7bd3d008d0af98b44336f8ec1ad +b242238cd8362b6e440ba21806905714dd55172db25ec7195f3fc4937b2aba146d5cbf3cf691a1384b4752dc3b54d627 +819f97f337eea1ffb2a678cc25f556f1aab751c6b048993a1d430fe1a3ddd8bb411c152e12ca60ec6e057c190cd1db9a +b9d7d187407380df54ee9fef224c54eec1bfabf17dc8abf60765b7951f538f59aa26fffd5846cfe05546c35f59b573f4 +aa6e3c14efa6a5962812e3f94f8ce673a433f4a82d07a67577285ea0eaa07f8be7115853122d12d6d4e1fdf64c504be1 +82268bee9c1662d3ddb5fb785abfae6fb8b774190f30267f1d47091d2cd4b3874db4372625aa36c32f27b0eee986269b +b236459565b7b966166c4a35b2fa71030b40321821b8e96879d95f0e83a0baf33fa25721f30af4a631df209e25b96061 +8708d752632d2435d2d5b1db4ad1fa2558d776a013655f88e9a3556d86b71976e7dfe5b8834fdec97682cd94560d0d0d +ae1424a68ae2dbfb0f01211f11773732a50510b5585c1fb005cb892b2c6a58f4a55490b5c5b4483c6fce40e9d3236a52 +b3f5f722af9dddb07293c871ce97abbccba0093ca98c8d74b1318fa21396fc1b45b69c15084f63d728f9908442024506 +9606f3ce5e63886853ca476dc0949e7f1051889d529365c0cb0296fdc02abd088f0f0318ecd2cf36740a3634132d36f6 +b11a833a49fa138db46b25ff8cdda665295226595bc212c0931b4931d0a55c99da972c12b4ef753f7e37c6332356e350 +afede34e7dab0a9e074bc19a7daddb27df65735581ca24ad70c891c98b1349fcebbcf3ba6b32c2617fe06a5818dabc2d +97993d456e459e66322d01f8eb13918979761c3e8590910453944bdff90b24091bb018ac6499792515c9923be289f99f +977e3e967eff19290a192cd11df3667d511b398fb3ac9a5114a0f3707e25a0edcb56105648b1b85a8b7519fc529fc6f6 +b873a7c88bf58731fe1bf61ff6828bf114cf5228f254083304a4570e854e83748fc98683ddba62d978fff7909f2c5c47 +ad4b2691f6f19da1d123aaa23cca3e876247ed9a4ab23c599afdbc0d3aa49776442a7ceaa996ac550d0313d9b9a36cee +b9210713c78e19685608c6475bfa974b57ac276808a443f8b280945c5d5f9c39da43effa294bfb1a6c6f7b6b9f85bf6c +a65152f376113e61a0e468759de38d742caa260291b4753391ee408dea55927af08a4d4a9918600a3bdf1df462dffe76 +8bf8c27ad5140dde7f3d2280fd4cc6b29ab76537e8d7aa7011a9d2796ee3e56e9a60c27b5c2da6c5e14fc866301dc195 +92fde8effc9f61393a2771155812b863cff2a0c5423d7d40aa04d621d396b44af94ddd376c28e7d2f53c930aea947484 +97a01d1dd9ee30553ce676011aea97fa93d55038ada95f0057d2362ae9437f3ed13de8290e2ff21e3167dd7ba10b9c3f +89affffaa63cb2df3490f76f0d1e1d6ca35c221dd34057176ba739fa18d492355e6d2a5a5ad93a136d3b1fed0bb8aa19 +928b8e255a77e1f0495c86d3c63b83677b4561a5fcbbe5d3210f1e0fc947496e426d6bf3b49394a5df796c9f25673fc4 +842a0af91799c9b533e79ee081efe2a634cac6c584c2f054fb7d1db67dde90ae36de36cbf712ec9cd1a0c7ee79e151ea +a65b946cf637e090baf2107c9a42f354b390e7316beb8913638130dbc67c918926eb87bec3b1fe92ef72bc77a170fa3b +aafc0f19bfd71ab5ae4a8510c7861458b70ad062a44107b1b1dbacbfa44ba3217028c2824bd7058e2fa32455f624040b +95269dc787653814e0be899c95dba8cfa384f575a25e671c0806fd80816ad6797dc819d30ae06e1d0ed9cb01c3950d47 +a1e760f7fa5775a1b2964b719ff961a92083c5c617f637fc46e0c9c20ab233f8686f7f38c3cb27d825c54dd95e93a59b +ac3b8a7c2317ea967f229eddc3e23e279427f665c4705c7532ed33443f1243d33453c1088f57088d2ab1e3df690a9cc9 +b787beeddfbfe36dd51ec4efd9cf83e59e84d354c3353cc9c447be53ae53d366ed1c59b686e52a92f002142c8652bfe0 +b7a64198300cb6716aa7ac6b25621f8bdec46ad5c07a27e165b3f774cdf65bcfdbf31e9bae0c16b44de4b00ada7a4244 +b8ae9f1452909e0c412c7a7fe075027691ea8df1347f65a5507bc8848f1d2c833d69748076db1129e5b4fb912f65c86c +9682e41872456b9fa67def89e71f06d362d6c8ca85c9c48536615bc401442711e1c9803f10ab7f8ab5feaec0f9df20a6 +88889ff4e271dc1c7e21989cc39f73cde2f0475acd98078281591ff6c944fadeb9954e72334319050205d745d4df73df +8f79b5b8159e7fd0d93b0645f3c416464f39aec353b57d99ecf24f96272df8a068ad67a6c90c78d82c63b40bb73989bb +838c01a009a3d8558a3f0bdd5e22de21af71ca1aefc8423c91dc577d50920e9516880e87dce3e6d086e11cd45c9052d9 +b97f1c6eee8a78f137c840667cc288256e39294268a3009419298a04a1d0087c9c9077b33c917c65caf76637702dda8a +972284ce72f96a61c899260203dfa06fc3268981732bef74060641c1a5068ead723e3399431c247ca034b0dae861e8df +945a8d52d6d3db6663dbd3110c6587f9e9c44132045eeffba15621576d178315cb52870fa5861669f84f0bee646183fe +a0a547b5f0967b1c3e5ec6c6a9a99f0578521489180dfdfbb5561f4d166baac43a2f06f950f645ce991664e167537eed +a0592cda5cdddf1340033a745fd13a6eff2021f2e26587116c61c60edead067e0f217bc2bef4172a3c9839b0b978ab35 +b9c223b65a3281587fa44ec829e609154b32f801fd1de6950e01eafb07a8324243b960d5735288d0f89f0078b2c42b5b +99ebfc3b8f9f98249f4d37a0023149ed85edd7a5abe062c8fb30c8c84555258b998bdcdd1d400bc0fa2a4aaa8b224466 +955b68526e6cb3937b26843270f4e60f9c6c8ece2fa9308fe3e23afa433309c068c66a4bc16ee2cf04220f095e9afce4 +b766caeafcc00378135ae53397f8a67ed586f5e30795462c4a35853de6681b1f17401a1c40958de32b197c083b7279c1 +921bf87cad947c2c33fa596d819423c10337a76fe5a63813c0a9dc78a728207ae7b339407a402fc4d0f7cba3af6da6fc +a74ba1f3bc3e6c025db411308f49b347ec91da1c916bda9da61e510ec8d71d25e0ac0f124811b7860e5204f93099af27 +a29b4d144e0bf17a7e8353f2824cef0ce85621396babe8a0b873ca1e8a5f8d508b87866cf86da348470649fceefd735c +a8040e12ffc3480dd83a349d06741d1572ef91932c46f5cf03aee8454254156ee95786fd013d5654725e674c920cec32 +8c4cf34ca60afd33923f219ffed054f90cd3f253ffeb2204a3b61b0183417e366c16c07fae860e362b0f2bfe3e1a1d35 +8195eede4ddb1c950459df6c396b2e99d83059f282b420acc34220cadeed16ab65c856f2c52568d86d3c682818ed7b37 +91fff19e54c15932260aa990c7fcb3c3c3da94845cc5aa8740ef56cf9f58d19b4c3c55596f8d6c877f9f4d22921d93aa +a3e0bf7e5d02a80b75cf75f2db7e66cb625250c45436e3c136d86297d652590ec97c2311bafe407ad357c79ab29d107b +81917ff87e5ed2ae4656b481a63ced9e6e5ff653b8aa6b7986911b8bc1ee5b8ef4f4d7882c3f250f2238e141b227e510 +915fdbe5e7de09c66c0416ae14a8750db9412e11dc576cf6158755fdcaf67abdbf0fa79b554cac4fe91c4ec245be073f +8df27eafb5c3996ba4dc5773c1a45ca77e626b52e454dc1c4058aa94c2067c18332280630cc3d364821ee53bf2b8c130 +934f8a17c5cbb827d7868f5c8ca00cb027728a841000a16a3428ab16aa28733f16b52f58c9c4fbf75ccc45df72d9c4df +b83f4da811f9183c25de8958bc73b504cf790e0f357cbe74ef696efa7aca97ad3b7ead1faf76e9f982c65b6a4d888fc2 +87188213c8b5c268dc2b6da413f0501c95749e953791b727450af3e43714149c115b596b33b63a2f006a1a271b87efd0 +83e9e888ab9c3e30761de635d9aabd31248cdd92f7675fc43e4b21fd96a03ec1dc4ad2ec94fec857ffb52683ac98e360 +b4b9a1823fe2d983dc4ec4e3aaea297e581c3fc5ab4b4af5fa1370caa37af2d1cc7fc6bfc5e7da60ad8fdce27dfe4b24 +856388bc78aef465dbcdd1f559252e028c9e9a2225c37d645c138e78f008f764124522705822a61326a6d1c79781e189 +a6431b36db93c3b47353ba22e7c9592c9cdfb9cbdd052ecf2cc3793f5b60c1e89bc96e6bae117bfd047f2308da00dd2f +b619972d48e7e4291542dcde08f7a9cdc883c892986ded2f23ccb216e245cd8d9ad1d285347b0f9d7611d63bf4cee2bc +8845cca6ff8595955f37440232f8e61d5351500bd016dfadd182b9d39544db77a62f4e0102ff74dd4173ae2c181d24ef +b2f5f7fa26dcd3b6550879520172db2d64ee6aaa213cbef1a12befbce03f0973a22eb4e5d7b977f466ac2bf8323dcedd +858b7f7e2d44bdf5235841164aa8b4f3d33934e8cb122794d90e0c1cac726417b220529e4f896d7b77902ab0ccd35b3a +80b0408a092dae2b287a5e32ea1ad52b78b10e9c12f49282976cd738f5d834e03d1ad59b09c5ccaccc39818b87d06092 +b996b0a9c6a2d14d984edcd6ab56bc941674102980d65b3ad9733455f49473d3f587c8cbf661228a7e125ddbe07e3198 +90224fcebb36865293bd63af786e0c5ade6b67c4938d77eb0cbae730d514fdd0fe2d6632788e858afd29d46310cf86df +b71351fdfff7168b0a5ec48397ecc27ac36657a8033d9981e97002dcca0303e3715ce6dd3f39423bc8ef286fa2e9e669 +ae2a3f078b89fb753ce4ed87e0c1a58bb19b4f0cfb6586dedb9fcab99d097d659a489fb40e14651741e1375cfc4b6c5f +8ef476b118e0b868caed297c161f4231bbeb863cdfa5e2eaa0fc6b6669425ce7af50dc374abceac154c287de50c22307 +92e46ab472c56cfc6458955270d3c72b7bde563bb32f7d4ab4d959db6f885764a3d864e1aa19802fefaa5e16b0cb0b54 +96a3f68323d1c94e73d5938a18a377af31b782f56212de3f489d22bc289cf24793a95b37f1d6776edf88114b5c1fa695 +962cc068cfce6faaa27213c4e43e44eeff0dfbb6d25b814e82c7da981fb81d7d91868fa2344f05fb552362f98cfd4a72 +895d4e4c4ad670abf66d43d59675b1add7afad7438ada8f42a0360c704cee2060f9ac15b4d27e9b9d0996bb801276fe3 +b3ad18d7ece71f89f2ef749b853c45dc56bf1c796250024b39a1e91ed11ca32713864049c9aaaea60cde309b47486bbf +8f05404e0c0258fdbae50e97ccb9b72ee17e0bd2400d9102c0dad981dac8c4c71585f03e9b5d50086d0a2d3334cb55d1 +8bd877e9d4591d02c63c6f9fc9976c109de2d0d2df2bfa5f6a3232bab5b0b8b46e255679520480c2d7a318545efa1245 +8d4c16b5d98957c9da13d3f36c46f176e64e5be879f22be3179a2c0e624fe4758a82bf8c8027410002f973a3b84cd55a +86e2a8dea86427b424fa8eada881bdff896907084a495546e66556cbdf070b78ba312bf441eb1be6a80006d25d5097a3 +8608b0c117fd8652fdab0495b08fadbeba95d9c37068e570de6fddfef1ba4a1773b42ac2be212836141d1bdcdef11a17 +a13d6febf5fb993ae76cae08423ca28da8b818d6ef0fde32976a4db57839cd45b085026b28ee5795f10a9a8e3098c683 +8e261967fa6de96f00bc94a199d7f72896a6ad8a7bbb1d6187cca8fad824e522880e20f766620f4f7e191c53321d70f9 +8b8e8972ac0218d7e3d922c734302803878ad508ca19f5f012bc047babd8a5c5a53deb5fe7c15a4c00fd6d1cb9b1dbd0 +b5616b233fb3574a2717d125a434a2682ff68546dccf116dd8a3b750a096982f185614b9fb6c7678107ff40a451f56fa +aa6adf9b0c3334b0d0663f583a4914523b2ac2e7adffdb026ab9109295ff6af003ef8357026dbcf789896d2afded8d73 +acb72df56a0b65496cd534448ed4f62950bb1e11e50873b6ed349c088ee364441821294ce0f7c61bd7d38105bea3b442 +abae12df83e01ec947249fedd0115dc501d2b03ff7232092979eda531dbbca29ace1d46923427c7dde4c17bdf3fd7708 +820b4fc2b63a9fda7964acf5caf19a2fc4965007cb6d6b511fcafcb1f71c3f673a1c0791d3f86e3a9a1eb6955b191cc0 +af277259d78c6b0f4f030a10c53577555df5e83319ddbad91afbd7c30bc58e7671c56d00d66ec3ab5ef56470cd910cee +ad4a861c59f1f5ca1beedd488fb3d131dea924fffd8e038741a1a7371fad7370ca5cf80dc01f177fbb9576713bb9a5b3 +b67a5162982ce6a55ccfb2f177b1ec26b110043cf18abd6a6c451cf140b5af2d634591eb4f28ad92177d8c7e5cd0a5e8 +96176d0a83816330187798072d449cbfccff682561e668faf6b1220c9a6535b32a6e4f852e8abb00f79abb87493df16b +b0afe6e7cb672e18f0206e4423f51f8bd0017bf464c4b186d46332c5a5847647f89ff7fa4801a41c1b0b42f6135bcc92 +8fc5e7a95ef20c1278c645892811f6fe3f15c431ebc998a32ec0da44e7213ea934ed2be65239f3f49b8ec471e9914160 +b7793e41adda6c82ba1f2a31f656f6205f65bf8a3d50d836ee631bc7ce77c153345a2d0fc5c60edf8b37457c3729c4ec +a504dd7e4d6b2f4379f22cc867c65535079c75ccc575955f961677fa63ecb9f74026fa2f60c9fb6323c1699259e5e9c8 +ab899d00ae693649cc1afdf30fb80d728973d2177c006e428bf61c7be01e183866614e05410041bc82cb14a33330e69c +8a3bd8b0b1be570b65c4432a0f6dc42f48a2000e30ab089cf781d38f4090467b54f79c0d472fcbf18ef6a00df69cc6f3 +b4d7028f7f76a96a3d7803fca7f507ae11a77c5346e9cdfccb120a833a59bda1f4264e425aa588e7a16f8e7638061d84 +b9c7511a76ea5fb105de905d44b02edb17008335766ee357ed386b7b3cf19640a98b38785cb14603c1192bee5886c9b6 +8563afb12e53aed71ac7103ab8602bfa8371ae095207cb0d59e8fd389b6ad1aff0641147e53cb6a7ca16c7f37c9c5e6b +8e108be614604e09974a9ed90960c28c4ea330a3d9a0cb4af6dd6f193f84ab282b243ecdf549b3131036bebc8905690c +b794d127fbedb9c5b58e31822361706ffac55ce023fbfe55716c3c48c2fd2f2c7660a67346864dfe588812d369cb50b6 +b797a3442fc3b44f41baefd30346f9ac7f96e770d010d53c146ce74ce424c10fb62758b7e108b8abfdc5fafd89d745cb +993bb71e031e8096442e6205625e1bfddfe6dd6a83a81f3e2f84fafa9e5082ab4cad80a099f21eff2e81c83457c725c3 +8711ab833fc03e37acf2e1e74cfd9133b101ff4144fe30260654398ae48912ab46549d552eb9d15d2ea57760d35ac62e +b21321fd2a12083863a1576c5930e1aecb330391ef83326d9d92e1f6f0d066d1394519284ddab55b2cb77417d4b0292f +877d98f731ffe3ee94b0b5b72d127630fa8a96f6ca4f913d2aa581f67732df6709493693053b3e22b0181632ac6c1e3b +ae391c12e0eb8c145103c62ea64f41345973311c3bf7281fa6bf9b7faafac87bcf0998e5649b9ef81e288c369c827e07 +b83a2842f36998890492ab1cd5a088d9423d192681b9a3a90ec518d4c541bce63e6c5f4df0f734f31fbfdd87785a2463 +a21b6a790011396e1569ec5b2a423857b9bec16f543e63af28024e116c1ea24a3b96e8e4c75c6537c3e4611fd265e896 +b4251a9c4aab3a495da7a42e684ba4860dbcf940ad1da4b6d5ec46050cbe8dab0ab9ae6b63b5879de97b905723a41576 +8222f70aebfe6ac037f8543a08498f4cadb3edaac00336fc00437eb09f2cba758f6c38e887cc634b4d5b7112b6334836 +86f05038e060594c46b5d94621a1d9620aa8ba59a6995baf448734e21f58e23c1ea2993d3002ad5250d6edd5ba59b34f +a7c0c749baef811ab31b973c39ceb1d94750e2bc559c90dc5eeb20d8bb6b78586a2b363c599ba2107d6be65cd435f24e +861d46a5d70b38d6c1cd72817a2813803d9f34c00320c8b62f8b9deb67f5b5687bc0b37c16d28fd017367b92e05da9ca +b3365d3dab639bffbe38e35383686a435c8c88b397b717cd4aeced2772ea1053ceb670f811f883f4e02975e5f1c4ac58 +a5750285f61ab8f64cd771f6466e2c0395e01b692fd878f2ef2d5c78bdd8212a73a3b1dfa5e4c8d9e1afda7c84857d3b +835a10809ccf939bc46cf950a33b36d71be418774f51861f1cd98a016ade30f289114a88225a2c11e771b8b346cbe6ef +a4f59473a037077181a0a62f1856ec271028546ca9452b45cedfcb229d0f4d1aabfc13062b07e536cc8a0d4b113156a2 +95cd14802180b224d44a73cc1ed599d6c4ca62ddcaa503513ccdc80aaa8be050cc98bd4b4f3b639549beb4587ac6caf9 +973b731992a3e69996253d7f36dd7a0af1982b5ed21624b77a7965d69e9a377b010d6dabf88a8a97eec2a476259859cc +af8a1655d6f9c78c8eb9a95051aa3baaf9c811adf0ae8c944a8d3fcba87b15f61021f3baf6996fa0aa51c81b3cb69de1 +835aad5c56872d2a2d6c252507b85dd742bf9b8c211ccb6b25b52d15c07245b6d89b2a40f722aeb5083a47cca159c947 +abf4e970b02bef8a102df983e22e97e2541dd3650b46e26be9ee394a3ea8b577019331857241d3d12b41d4eacd29a3ac +a13c32449dbedf158721c13db9539ae076a6ce5aeaf68491e90e6ad4e20e20d1cdcc4a89ed9fd49cb8c0dd50c17633c1 +8c8f78f88b7e22dd7e9150ab1c000f10c28e696e21d85d6469a6fe315254740f32e73d81ab1f3c1cf8f544c86df506e8 +b4b77f2acfe945abf81f2605f906c10b88fb4d28628487fb4feb3a09f17f28e9780445dfcee4878349d4c6387a9d17d4 +8d255c235f3812c6ecc646f855fa3832be5cb4dbb9c9e544989fafdf3f69f05bfd370732eaf954012f0044aa013fc9c6 +b982efd3f34b47df37c910148ac56a84e8116647bea24145a49e34e0a6c0176e3284d838dae6230cb40d0be91c078b85 +983f365aa09bd85df2a6a2ad8e4318996b1e27d02090755391d4486144e40d80b1fbfe1c798d626db92f52e33aa634da +95fd1981271f3ea3a41d654cf497e6696730d9ff7369f26bc4d7d15c7adb4823dd0c42e4a005a810af12d234065e5390 +a9f5219bd4b913c186ef30c02f995a08f0f6f1462614ea5f236964e02bdaa33db9d9b816c4aee5829947840a9a07ba60 +9210e6ceb05c09b46fd09d036287ca33c45124ab86315e5d6911ff89054f1101faaa3e83d123b7805056d388bcec6664 +8ed9cbf69c6ff3a5c62dd9fe0d7264578c0f826a29e614bc2fb4d621d90c8c9992438accdd7a614b1dca5d1bb73dc315 +85cf2a8cca93e00da459e3cecd22c342d697eee13c74d5851634844fc215f60053cf84b0e03c327cb395f48d1c71a8a4 +8818a18e9a2ec90a271b784400c1903089ffb0e0b40bc5abbbe12fbebe0f731f91959d98c5519ef1694543e31e2016d4 +8dabc130f296fa7a82870bf9a8405aaf542b222ed9276bba9bd3c3555a0f473acb97d655ee7280baff766a827a8993f0 +ac7952b84b0dc60c4d858f034093b4d322c35959605a3dad2b806af9813a4680cb038c6d7f4485b4d6b2ff502aaeca25 +ad65cb6d57b48a2602568d2ec8010baed0eb440eec7638c5ec8f02687d764e9de5b5d42ad5582934e592b48471c22d26 +a02ab8bd4c3d114ea23aebdd880952f9495912817da8c0c08eabc4e6755439899d635034413d51134c72a6320f807f1c +8319567764b8295402ec1ebef4c2930a138480b37e6d7d01c8b4c9cd1f2fc3f6e9a44ae6e380a0c469b25b06db23305f +afec53b2301dc0caa8034cd9daef78c48905e6068d692ca23d589b84a6fa9ddc2ed24a39480597e19cb3e83eec213b3f +ac0b4ffdb5ae08e586a9cdb98f9fe56f4712af3a97065e89e274feacfb52b53c839565aee93c4cfaaccfe51432c4fab0 +8972cbf07a738549205b1094c5987818124144bf187bc0a85287c94fdb22ce038c0f11df1aa16ec5992e91b44d1af793 +b7267aa6f9e3de864179b7da30319f1d4cb2a3560f2ea980254775963f1523b44c680f917095879bebfa3dc2b603efcf +80f68f4bfc337952e29504ee5149f15093824ea7ab02507efd1317a670f6cbc3611201848560312e3e52e9d9af72eccf +8897fee93ce8fc1e1122e46b6d640bba309384dbd92e46e185e6364aa8210ebf5f9ee7e5e604b6ffba99aa80a10dd7d0 +b58ea6c02f2360be60595223d692e82ee64874fda41a9f75930f7d28586f89be34b1083e03bbc1575bbfdda2d30db1ea +85a523a33d903280d70ac5938770453a58293480170c84926457ac2df45c10d5ff34322ab130ef4a38c916e70d81af53 +a2cbf045e1bed38937492c1f2f93a5ba41875f1f262291914bc1fc40c60bd0740fb3fea428faf6da38b7c180fe8ac109 +8c09328770ed8eb17afc6ac7ddd87bb476de18ed63cab80027234a605806895959990c47bd10d259d7f3e2ecb50074c9 +b4b9e19edb4a33bde8b7289956568a5b6b6557404e0a34584b5721fe6f564821091013fbb158e2858c6d398293bb4b59 +8a47377df61733a2aa5a0e945fce00267f8e950f37e109d4487d92d878fb8b573317bb382d902de515b544e9e233458d +b5804c9d97efeff5ca94f3689b8088c62422d92a1506fd1d8d3b1b30e8a866ad0d6dad4abfa051dfc4471250cac4c5d9 +9084a6ee8ec22d4881e9dcc8a9eb3c2513523d8bc141942370fd191ad2601bf9537a0b1e84316f3209b3d8a54368051e +85447eea2fa26656a649f8519fa67279183044791d61cf8563d0783d46d747d96af31d0a93507bbb2242666aa87d3720 +97566a84481027b60116c751aec552adfff2d9038e68d48c4db9811fb0cbfdb3f1d91fc176a0b0d988a765f8a020bce1 +ae87e5c1b9e86c49a23dceda4ecfd1dcf08567f1db8e5b6ec752ebd45433c11e7da4988573cdaebbb6f4135814fc059e +abee05cf9abdbc52897ac1ce9ed157f5466ed6c383d6497de28616238d60409e5e92619e528af8b62cc552bf09970dc2 +ae6d31cd7bf9599e5ee0828bab00ceb4856d829bba967278a73706b5f388465367aa8a6c7da24b5e5f1fdd3256ef8e63 +ac33e7b1ee47e1ee4af472e37ab9e9175260e506a4e5ce449788075da1b53c44cb035f3792d1eea2aa24b1f688cc6ed3 +80f65b205666b0e089bb62152251c48c380a831e5f277f11f3ef4f0d52533f0851c1b612267042802f019ec900dc0e8f +858520ad7aa1c9fed738e3b583c84168f2927837ad0e1d326afe9935c26e9b473d7f8c382e82ef1fe37d2b39bb40a1ee +b842dd4af8befe00a97c2d0f0c33c93974761e2cb9e5ab8331b25170318ddd5e4bdbc02d8f90cbfdd5f348f4f371c1f7 +8bf2cb79bc783cb57088aae7363320cbeaabd078ffdec9d41bc74ff49e0043d0dad0086a30e5112b689fd2f5a606365d +982eb03bbe563e8850847cd37e6a3306d298ab08c4d63ab6334e6b8c1fa13fce80cf2693b09714c7621d74261a0ff306 +b143edb113dec9f1e5105d4a93fbe502b859e587640d3db2f628c09a17060e6aec9e900e2c8c411cda99bc301ff96625 +af472d9befa750dcebc5428fe1a024f18ec1c07bca0f95643ce6b5f4189892a910285afb03fd7ed7068fbe614e80d33c +a97e3bc57ede73ecd1bbf02de8f51b4e7c1a067da68a3cd719f4ba26a0156cbf1cef2169fd35a18c5a4cced50d475998 +a862253c937cf3d75d7183e5f5be6a4385d526aeda5171c1c60a8381fea79f88f5f52a4fab244ecc70765d5765e6dfd5 +90cb776f8e5a108f1719df4a355bebb04bf023349356382cae55991b31720f0fd03206b895fa10c56c98f52453be8778 +a7614e8d0769dccd520ea4b46f7646e12489951efaef5176bc889e9eb65f6e31758df136b5bf1e9107e68472fa9b46ec +ac3a9b80a3254c42e5ed3a090a0dd7aee2352f480de96ad187027a3bb6c791eddfc3074b6ffd74eea825188f107cda4d +82a01d0168238ef04180d4b6e0a0e39024c02c2d75b065017c2928039e154d093e1af4503f4d1f3d8a948917abb5d09f +8fab000a2b0eef851a483aec8d2dd85fe60504794411a2f73ed82e116960547ac58766cb73df71aea71079302630258d +872451a35c6db61c63e9b8bb9f16b217f985c20be4451c14282c814adb29d7fb13f201367c664435c7f1d4d9375d7a58 +887d9ff54cc96b35d562df4a537ff972d7c4b3fd91ab06354969a4cfede0b9fc68bbffb61d0dbf1a58948dc701e54f5a +8cb5c2a6bd956875d88f41ae24574434f1308514d44057b55c9c70f13a3366ed054150eed0955a38fda3f757be73d55f +89ad0163cad93e24129d63f8e38422b7674632a8d0a9016ee8636184cab177659a676c4ee7efba3abe1a68807c656d60 +b9ec01c7cab6d00359b5a0b4a1573467d09476e05ca51a9227cd16b589a9943d161eef62dcc73f0de2ec504d81f4d252 +8031d17635d39dfe9705c485d2c94830b6fc9bc67b91300d9d2591b51e36a782e77ab5904662effa9382d9cca201f525 +8be5a5f6bc8d680e5092d6f9a6585acbaaaa2ddc671da560dcf5cfa4472f4f184b9597b5b539438accd40dda885687cc +b1fc0f052fae038a2e3de3b3a96b0a1024b009de8457b8b3adb2d315ae68a89af905720108a30038e5ab8d0d97087785 +8b8bdc77bd3a6bc7ca5492b6f8c614852c39a70d6c8a74916eaca0aeb4533b11898b8820a4c2620a97bf35e275480029 +af35f4dc538d4ad5cdf710caa38fd1eb496c3fa890a047b6a659619c5ad3054158371d1e88e0894428282eed9f47f76b +8166454a7089cc07758ad78724654f4e7a1a13e305bbf88ddb86f1a4b2904c4fc8ab872d7da364cdd6a6c0365239e2ad +ab287c7d3addce74ce40491871c768abe01daaa0833481276ff2e56926b38a7c6d2681ffe837d2cc323045ad1a4414f9 +b90317f4505793094d89365beb35537f55a6b5618904236258dd04ca61f21476837624a2f45fef8168acf732cab65579 +98ae5ea27448e236b6657ab5ef7b1cccb5372f92ab25f5fa651fbac97d08353a1dae1b280b1cd42b17d2c6a70a63ab9d +adcf54e752d32cbaa6cb98fbca48d8cd087b1db1d131d465705a0d8042c8393c8f4d26b59006eb50129b21e6240f0c06 +b591a3e4db18a7345fa935a8dd7994bbac5cc270b8ebd84c8304c44484c7a74afb45471fdbe4ab22156a30fae1149b40 +806b53ac049a42f1dcc1d6335505371da0bf27c614f441b03bbf2e356be7b2fb4eed7117eabcce9e427a542eaa2bf7d8 +800482e7a772d49210b81c4a907f5ce97f270b959e745621ee293cf8c71e8989363d61f66a98f2d16914439544ca84c7 +99de9eafdad3617445312341644f2bb888680ff01ce95ca9276b1d2e5ef83fa02dab5e948ebf66c17df0752f1bd37b70 +961ee30810aa4c93ae157fbe9009b8e443c082192bd36a73a6764ff9b2ad8b0948fe9a73344556e01399dd77badb4257 +ae0a361067c52efbe56c8adf982c00432cd478929459fc7f74052c8ee9531cd031fe1335418fde53f7c2ef34254eb7ac +a3503d16b6b27eb20c1b177bcf90d13706169220523a6271b85b2ce35a9a2b9c5bed088540031c0a4ebfdae3a4c6ab04 +909420122c3e723289ca4e7b81c2df5aff312972a2203f4c45821b176e7c862bf9cac7f7df3adf1d59278f02694d06e7 +989f42380ae904b982f85d0c6186c1aef5d6bcba29bcfbb658e811b587eb2749c65c6e4a8cc6409c229a107499a4f5d7 +8037a6337195c8e26a27ea4ef218c6e7d79a9720aaab43932d343192abc2320fe72955f5e431c109093bda074103330a +b312e168663842099b88445e940249cc508f080ab0c94331f672e7760258dbd86be5267e4cf25ea25facb80bff82a7e9 +aaa3ff8639496864fcdbfdda1ac97edc4f08e3c9288b768f6c8073038c9fbbf7e1c4bea169b4d45c31935cdf0680d45e +97dbd3df37f0b481a311dfc5f40e59227720f367912200d71908ef6650f32cc985cb05b981e3eea38958f7e48d10a15d +a89d49d1e267bb452d6cb621b9a90826fe55e9b489c0427b94442d02a16f390eed758e209991687f73f6b5a032321f42 +9530dea4e0e19d6496f536f2e75cf7d814d65fde567055eb20db48fd8d20d501cd2a22fb506db566b94c9ee10f413d43 +81a7009b9e67f1965fa7da6a57591c307de91bf0cd35ab4348dc4a98a4961e096d004d7e7ad318000011dc4342c1b809 +83440a9402b766045d7aca61a58bba2aa29cac1cf718199e472ba086f5d48093d9dda4d135292ba51d049a23964eceae +a06c9ce5e802df14f6b064a3d1a0735d429b452f0e2e276042800b0a4f16df988fd94cf3945921d5dd3802ab2636f867 +b1359e358b89936dee9e678a187aad3e9ab14ac40e96a0a68f70ee2583cdcf467ae03bef4215e92893f4e12f902adec8 +835304f8619188b4d14674d803103d5a3fa594d48e96d9699e653115dd05fdc2dda6ba3641cf7ad53994d448da155f02 +8327cba5a9ff0d3f5cd0ae55e77167448926d5fcf76550c0ad978092a14122723090c51c415e88e42a2b62eb07cc3981 +b373dcdaea85f85ce9978b1426a7ef4945f65f2d3467a9f1cc551a99766aac95df4a09e2251d3f89ca8c9d1a7cfd7b0e +ab1422dc41af2a227b973a6fd124dfcb2367e2a11a21faa1d381d404f51b7257e5bc82e9cf20cd7fe37d7ae761a2ab37 +a93774a03519d2f20fdf2ef46547b0a5b77c137d6a3434b48d56a2cbef9e77120d1b85d0092cf8842909213826699477 +8eb967a495a38130ea28711580b7e61bcd1d051cd9e4f2dbf62f1380bd86e0d60e978d72f6f31e909eb97b3b9a2b867c +ae8213378da1287ba1fe4242e1acaec19b877b6fe872400013c6eac1084b8d03156792fa3020201725b08228a1e80f49 +b143daf6893d674d607772b3b02d8ac48f294237e2f2c87963c0d4e26d9227d94a2a13512457c3d5883544bbc259f0ef +b343bd2aca8973888e42542218924e2dda2e938fd1150d06878af76f777546213912b7c7a34a0f94186817d80ffa185c +b188ebc6a8c3007001aa347ae72cc0b15d09bc6c19a80e386ee4b334734ec0cc2fe8b493c2422f38d1e6d133cc3db6fe +b795f6a8b9b826aaeee18ccd6baf6c5adeeec85f95eb5b6d19450085ec7217e95a2d9e221d77f583b297d0872073ba0e +b1c7dbd998ad32ae57bfa95deafa147024afd57389e98992c36b6e52df915d3d5a39db585141ec2423173e85d212fed8 +812bcdeb9fe5f12d0e1df9964798056e1f1c3de3b17b6bd2919b6356c4b86d8e763c01933efbe0224c86a96d5198a4be +b19ebeda61c23d255cbf472ef0b8a441f4c55b70f0d8ed47078c248b1d3c7c62e076b43b95c00a958ec8b16d5a7cb0d7 +b02adc9aaa20e0368a989c2af14ff48b67233d28ebee44ff3418bb0473592e6b681af1cc45450bd4b175df9051df63d9 +8d87f0714acee522eb58cec00360e762adc411901dba46adc9227124fa70ee679f9a47e91a6306d6030dd4eb8de2f3c1 +8be54cec21e74bcc71de29dc621444263737db15f16d0bb13670f64e42f818154e04b484593d19ef95f2ee17e4b3fe21 +ab8e20546c1db38d31493b5d5f535758afb17e459645c1b70813b1cf7d242fd5d1f4354a7c929e8f7259f6a25302e351 +89f035a1ed8a1e302ac893349ba8ddf967580fcb6e73d44af09e3929cde445e97ff60c87dafe489e2c0ab9c9986cfa00 +8b2b0851a795c19191a692af55f7e72ad2474efdc5401bc3733cfdd910e34c918aaebe69d5ea951bdddf3c01cabbfc67 +a4edb52c2b51495ccd1ee6450fc14b7b3ede8b3d106808929d02fb31475bacb403e112ba9c818d2857651e508b3a7dd1 +9569341fded45d19f00bcf3cbf3f20eb2b4d82ef92aba3c8abd95866398438a2387437e580d8b646f17cf6fde8c5af23 +aa4b671c6d20f72f2f18a939a6ff21cc37e0084b44b4a717f1be859a80b39fb1be026b3205adec2a66a608ec2bcd578f +94902e980de23c4de394ad8aec91b46f888d18f045753541492bfbb92c59d3daa8de37ae755a6853744af8472ba7b72b +af651ef1b2a0d30a7884557edfad95b6b5d445a7561caebdc46a485aedd25932c62c0798465c340a76f6feaa196dd712 +b7b669b8e5a763452128846dd46b530dca4893ace5cc5881c7ddcd3d45969d7e73fbebdb0e78aa81686e5f7b22ec5759 +82507fd4ebe9fa656a7f2e084d64a1fa6777a2b0bc106d686e2d9d2edafc58997e58cb6bfd0453b2bf415704aa82ae62 +b40bce2b42b88678400ecd52955bbdadd15f8b9e1b3751a1a3375dc0efb5ca3ee258cf201e1140b3c09ad41217d1d49e +b0210d0cbb3fbf3b8cdb39e862f036b0ff941cd838e7aaf3a8354e24246e64778d22f3de34572e6b2a580614fb6425be +876693cba4301b251523c7d034108831df3ce133d8be5a514e7a2ca494c268ca0556fa2ad8310a1d92a16b55bcd99ea9 +8660281406d22a4950f5ef050bf71dd3090edb16eff27fa29ef600cdea628315e2054211ed2cc6eaf8f2a1771ef689fd +a610e7e41e41ab66955b809ba4ade0330b8e9057d8efc9144753caed81995edeb1a42a53f93ce93540feca1fae708dac +a49e2c176a350251daef1218efaccc07a1e06203386ede59c136699d25ca5cb2ac1b800c25b28dd05678f14e78e51891 +83e0915aa2b09359604566080d411874af8c993beba97d4547782fdbe1a68e59324b800ff1f07b8db30c71adcbd102a8 +a19e84e3541fb6498e9bb8a099c495cbfcad113330e0262a7e4c6544495bb8a754b2208d0c2d895c93463558013a5a32 +87f2bd49859a364912023aca7b19a592c60214b8d6239e2be887ae80b69ebdeb59742bdebcfa73a586ab23b2c945586c +b8e8fdddae934a14b57bc274b8dcd0d45ebb95ddbaabef4454e0f6ce7d3a5a61c86181929546b3d60c447a15134d08e1 +87e0c31dcb736ea4604727e92dc1d9a3cf00adcff79df3546e02108355260f3dd171531c3c0f57be78d8b28058fcc8c0 +9617d74e8f808a4165a8ac2e30878c349e1c3d40972006f0787b31ea62d248c2d9f3fc3da83181c6e57e95feedfd0e8c +8949e2cee582a2f8db86e89785a6e46bc1565c2d8627d5b6bf43ba71ffadfab7e3c5710f88dcb5fb2fc6edf6f4fae216 +ad3fa7b0edceb83118972a2935a09f409d09a8db3869f30be3a76f67aa9fb379cabb3a3aff805ba023a331cad7d7eb64 +8c95718a4112512c4efbd496be38bf3ca6cdcaad8a0d128f32a3f9aae57f3a57bdf295a3b372a8c549fda8f4707cffed +88f3261d1e28a58b2dee3fcc799777ad1c0eb68b3560f9b4410d134672d9533532a91ea7be28a041784872632d3c9d80 +b47472a41d72dd2e8b72f5c4f8ad626737dde3717f63d6bc776639ab299e564cbad0a2ad5452a07f02ff49a359c437e5 +9896d21dc2e8aad87b76d6df1654f10cd7bceed4884159d50a818bea391f8e473e01e14684814c7780235f28e69dca6e +82d47c332bbd31bbe83b5eb44a23da76d4a7a06c45d7f80f395035822bc27f62f59281d5174e6f8e77cc9b5c3193d6f0 +95c74cd46206e7f70c9766117c34c0ec45c2b0f927a15ea167901a160e1530d8522943c29b61e03568aa0f9c55926c53 +a89d7757825ae73a6e81829ff788ea7b3d7409857b378ebccd7df73fdbe62c8d9073741cf038314971b39af6c29c9030 +8c1cd212d0b010905d560688cfc036ae6535bc334fa8b812519d810b7e7dcf1bb7c5f43deaa40f097158358987324a7f +b86993c383c015ed8d847c6b795164114dd3e9efd25143f509da318bfba89389ea72a420699e339423afd68b6512fafb +8d06bd379c6d87c6ed841d8c6e9d2d0de21653a073725ff74be1934301cc3a79b81ef6dd0aad4e7a9dc6eac9b73019bc +81af4d2d87219985b9b1202d724fe39ef988f14fef07dfe3c3b11714e90ffba2a97250838e8535eb63f107abfe645e96 +8c5e0af6330a8becb787e4b502f34f528ef5756e298a77dc0c7467433454347f3a2e0bd2641fbc2a45b95e231c6e1c02 +8e2a8f0f04562820dc8e7da681d5cad9fe2e85dd11c785fb6fba6786c57a857e0b3bd838fb849b0376c34ce1665e4837 +a39be8269449bfdfc61b1f62077033649f18dae9bef7c6163b9314ca8923691fb832f42776f0160b9e8abd4d143aa4e1 +8c154e665706355e1cc98e0a4cabf294ab019545ba9c4c399d666e6ec5c869ca9e1faf8fb06cd9c0a5c2f51a7d51b70a +a046a7d4de879d3ebd4284f08f24398e9e3bf006cd4e25b5c67273ade248689c69affff92ae810c07941e4904296a563 +afd94c1cb48758e5917804df03fb38a6da0e48cd9b6262413ea13b26973f9e266690a1b7d9d24bbaf7e82718e0e594b0 +859e21080310c8d6a38e12e2ac9f90a156578cdeb4bb2e324700e97d9a5511cd6045dc39d1d0de3f94aeed043a24119d +a219fb0303c379d0ab50893264919f598e753aac9065e1f23ef2949abc992577ab43c636a1d2c089203ec9ddb941e27d +b0fdb639d449588a2ca730afcba59334e7c387342d56defdfb7ef79c493f7fd0e5277eff18e7203e756c7bdda5803047 +87f9c3b7ed01f54368aca6dbcf2f6e06bff96e183c4b2c65f8baa23b377988863a0a125d5cdd41a072da8462ced4c070 +99ef7a5d5ac2f1c567160e1f8c95f2f38d41881850f30c461a205f7b1b9fb181277311333839b13fb3ae203447e17727 +aeaca9b1c2afd24e443326cc68de67b4d9cedb22ad7b501a799d30d39c85bb2ea910d4672673e39e154d699e12d9b3dc +a11675a1721a4ba24dd3d0e4c3c33a6edf4cd1b9f6b471070b4386c61f77452266eae6e3f566a40cfc885eada9a29f23 +b228334445e37b9b49cb4f2cc56b454575e92173ddb01370a553bba665adadd52df353ad74470d512561c2c3473c7bb9 +a18177087c996572d76f81178d18ed1ceebc8362a396348ce289f1d8bd708b9e99539be6fccd4acb1112381cfc5749b4 +8e7b8bf460f0d3c99abb19803b9e43422e91507a1c0c22b29ee8b2c52d1a384da4b87c292e28eff040db5be7b1f8641f +b03d038d813e29688b6e6f444eb56fec3abba64c3d6f890a6bcf2e916507091cdb2b9d2c7484617be6b26552ed1c56cb +a1c88ccd30e934adfc5494b72655f8afe1865a84196abfb376968f22ddc07761210b6a9fb7638f1413d1b4073d430290 +961b714faebf172ad2dbc11902461e286e4f24a99a939152a53406117767682a571057044decbeb3d3feef81f4488497 +a03dc4059b46effdd786a0a03cc17cfee8585683faa35bb07936ded3fa3f3a097f518c0b8e2db92fd700149db1937789 +adf60180c99ca574191cbcc23e8d025b2f931f98ca7dfcebfc380226239b6329347100fcb8b0fcb12db108c6ad101c07 +805d4f5ef24d46911cbf942f62cb84b0346e5e712284f82b0db223db26d51aabf43204755eb19519b00e665c7719fcaa +8dea7243e9c139662a7fe3526c6c601eee72fd8847c54c8e1f2ad93ef7f9e1826b170afe58817dac212427164a88e87f +a2ba42356606d651b077983de1ad643650997bb2babb188c9a3b27245bb65d2036e46667c37d4ce02cb1be5ae8547abe +af2ae50b392bdc013db2d12ce2544883472d72424fc767d3f5cb0ca2d973fc7d1f425880101e61970e1a988d0670c81b +98e6bec0568d3939b31d00eb1040e9b8b2a35db46ddf4369bdaee41bbb63cc84423d29ee510a170fb5b0e2df434ba589 +822ff3cd12fbef4f508f3ca813c04a2e0b9b799c99848e5ad3563265979e753ee61a48f6adc2984a850f1b46c1a43d35 +891e8b8b92a394f36653d55725ef514bd2e2a46840a0a2975c76c2a935577f85289026aaa74384da0afe26775cbddfb9 +b2a3131a5d2fe7c8967047aa66e4524babae941d90552171cc109527f345f42aa0df06dcbb2fa01b33d0043917bbed69 +80c869469900431f3eeefafdbe07b8afd8cee7739e659e6d0109b397cacff85a88247698f87dc4e2fe39a592f250ac64 +9091594f488b38f9d2bb5df49fd8b4f8829d9c2f11a197dd1431ed5abbc5c954bbde3387088f9ee3a5a834beb7619bce +b472e241e6956146cca57b97a8a204668d050423b4e76f857bad5b47f43b203a04c8391ba9d9c3e95093c071f9d376a1 +b7dd2de0284844392f7dfb56fe7ca3ede41e27519753ffc579a0a8d2d65ceb8108d06b6b0d4c3c1a2588951297bd1a1e +902116ce70d0a079ac190321c1f48701318c05f8e69ee09694754885d33a835a849cafe56f499a2f49f6cda413ddf9a7 +b18105cc736787fafaf7c3c11c448bce9466e683159dff52723b7951dff429565e466e4841d982e3aaa9ee2066838666 +97ab9911f3f659691762d568ae0b7faa1047b0aed1009c319fa79d15d0db8db9f808fc385dc9a68fa388c10224985379 +b2a2cba65f5b927e64d2904ba412e2bac1cf18c9c3eda9c72fb70262497ecf505b640827e2afebecf10eebbcf48ccd3e +b36a3fd677baa0d3ef0dac4f1548ff50a1730286b8c99d276a0a45d576e17b39b3cbadd2fe55e003796d370d4be43ce3 +a5dfec96ca3c272566e89dc453a458909247e3895d3e44831528130bc47cc9d0a0dac78dd3cad680a4351d399d241967 +8029382113909af6340959c3e61db27392531d62d90f92370a432aec3eb1e4c36ae1d4ef2ba8ec6edb4d7320c7a453f6 +971d85121ea108e6769d54f9c51299b0381ece8b51d46d49c89f65bedc123bab4d5a8bc14d6f67f4f680077529cbae4c +98ff6afc01d0bec80a278f25912e1b1ebff80117adae72e31d5b9fa4d9624db4ba2065b444df49b489b0607c45e26c4c +8fa29be10fb3ab30ce25920fec0187e6e91e458947009dabb869aade7136c8ba23602682b71e390c251f3743164cbdaa +b3345c89eb1653418fe3940cf3e56a9a9c66526389b98f45ca02dd62bfb37baa69a4baaa7132d7320695f8ea6ad1fd94 +b72c7f5541c9ac6b60a7ec9f5415e7fb14da03f7164ea529952a29399f3a071576608dbbcc0d45994f21f92ddbeb1e19 +aa3450bb155a5f9043d0ef95f546a2e6ade167280bfb75c9f09c6f9cdb1fffb7ce8181436161a538433afa3681c7a141 +92a18fecaded7854b349f441e7102b638ababa75b1b0281dd0bded6541abe7aa37d96693595be0b01fe0a2e2133d50f9 +980756ddf9d2253cfe6c94960b516c94889d09e612810935150892627d2ecee9a2517e04968eea295d0106850c04ca44 +ae68c6ccc454318cdd92f32b11d89116a3b8350207a36d22a0f626718cad671d960090e054c0c77ac3162ae180ecfd4b +99f31f66eaaa551749ad91d48a0d4e3ff4d82ef0e8b28f3184c54e852422ba1bdafd53b1e753f3a070f3b55f3c23b6a2 +a44eaeaa6589206069e9c0a45ff9fc51c68da38d4edff1d15529b7932e6f403d12b9387019c44a1488a5d5f27782a51f +b80b5d54d4b344840e45b79e621bd77a3f83fb4ce6d8796b7d6915107b3f3c34d2e7d95bdafd120f285669e5acf2437a +b36c069ec085a612b5908314d6b84c00a83031780261d1c77a0384c406867c9847d5b0845deddfa512cc04a8df2046fb +b09dbe501583220f640d201acea7ee3e39bf9eda8b91aa07b5c50b7641d86d71acb619b38d27835ce97c3759787f08e9 +87403d46a2bf63170fff0b857acacf42ee801afe9ccba8e5b4aea967b68eac73a499a65ca46906c2eb4c8f27bc739faa +82b93669f42a0a2aa5e250ffe6097269da06a9c02fcd1801abbad415a7729a64f830754bafc702e64600ba47671c2208 +8e3a3029be7edb8dd3ab1f8216664c8dc50d395f603736061d802cef77627db7b859ef287ed850382c13b4d22d6a2d80 +968e9ec7194ff424409d182ce0259acd950c384c163c04463bc8700a40b79beba6146d22b7fa7016875a249b7b31c602 +8b42c984bbe4996e0c20862059167c6bdc5164b1ffcd928f29512664459212d263e89f0f0e30eed4e672ffa5ed0b01b5 +96bac54062110dada905363211133f1f15dc7e4fd80a4c6e4a83bc9a0bcbbaba11cd2c7a13debcf0985e1a954c1da66b +a16dc8a653d67a7cd7ae90b2fffac0bf1ca587005430fe5ba9403edd70ca33e38ba5661d2ed6e9d2864400d997626a62 +a68ab11a570a27853c8d67e491591dcba746bfbee08a2e75ae0790399130d027ed387f41ef1d7de8df38b472df309161 +92532b74886874447c0300d07eda9bbe4b41ed25349a3da2e072a93fe32c89d280f740d8ff70d5816793d7f2b97373cc +88e35711b471e89218fd5f4d0eadea8a29405af1cd81974427bc4a5fb26ed60798daaf94f726c96e779b403a2cd82820 +b5c72aa4147c19f8c4f3a0a62d32315b0f4606e0a7025edc5445571eaf4daff64f4b7a585464821574dd50dbe1b49d08 +9305d9b4095258e79744338683fd93f9e657367b3ab32d78080e51d54eec331edbc224fad5093ebf8ee4bd4286757eb8 +b2a17abb3f6a05bcb14dc7b98321fa8b46d299626c73d7c6eb12140bf4c3f8e1795250870947af817834f033c88a59d6 +b3477004837dbd8ba594e4296f960fc91ab3f13551458445e6c232eb04b326da803c4d93e2e8dcd268b4413305ff84da +924b4b2ebaafdcfdfedb2829a8bf46cd32e1407d8d725a5bd28bdc821f1bafb3614f030ea4352c671076a63494275a3f +8b81b9ef6125c82a9bece6fdcb9888a767ac16e70527753428cc87c56a1236e437da8be4f7ecfe57b9296dc3ae7ba807 +906e19ec8b8edd58bdf9ae05610a86e4ea2282b1bbc1e8b00b7021d093194e0837d74cf27ac9916bdb8ec308b00da3da +b41c5185869071760ac786078a57a2ab4e2af60a890037ac0c0c28d6826f15c2cf028fddd42a9b6de632c3d550bfbc14 +a646e5dec1b713ae9dfdf7bdc6cd474d5731a320403c7dfcfd666ffc9ae0cff4b5a79530e8df3f4aa9cb80568cb138e9 +b0efad22827e562bd3c3e925acbd0d9425d19057868608d78c2209a531cccd0f2c43dc5673acf9822247428ffa2bb821 +a94c19468d14b6f99002fc52ac06bbe59e5c472e4a0cdb225144a62f8870b3f10593749df7a2de0bd3c9476ce682e148 +803864a91162f0273d49271dafaab632d93d494d1af935aefa522768af058fce52165018512e8d6774976d52bd797e22 +a08711c2f7d45c68fb340ac23597332e1bcaec9198f72967b9921204b9d48a7843561ff318f87908c05a44fc35e3cc9d +91c3cad94a11a3197ae4f9461faab91a669e0dddb0371d3cab3ed9aeb1267badc797d8375181130e461eadd05099b2a2 +81bdaaf48aae4f7b480fc13f1e7f4dd3023a41439ba231760409ce9292c11128ab2b0bdbbf28b98af4f97b3551f363af +8d60f9df9fd303f625af90e8272c4ecb95bb94e6efc5da17b8ab663ee3b3f673e9f6420d890ccc94acf4d2cae7a860d8 +a7b75901520c06e9495ab983f70b61483504c7ff2a0980c51115d11e0744683ce022d76e3e09f4e99e698cbd21432a0d +82956072df0586562fda7e7738226f694e1c73518dd86e0799d2e820d7f79233667192c9236dcb27637e4c65ef19d493 +a586beb9b6ffd06ad200957490803a7cd8c9bf76e782734e0f55e04a3dc38949de75dc607822ec405736c576cf83bca3 +a179a30d00def9b34a7e85607a447eea0401e32ab5abeee1a281f2acd1cf6ec81a178020666f641d9492b1bdf66f05a3 +83e129705c538787ed8e0fdc1275e6466a3f4ee21a1e6abedd239393b1df72244723b92f9d9d9339a0cab6ebf28f5a16 +811bd8d1e3722b64cd2f5b431167e7f91456e8bba2cc669d3fbbce7d553e29c3c19f629fcedd2498bc26d33a24891d17 +a243c030c858f1f60cccd26b45b024698cc6d9d9e6198c1ed4964a235d9f8d0baf9cde10c8e63dfaa47f8e74e51a6e85 +ab839eb82e23ca52663281f863b55b0a3d6d4425c33ffb4eeb1d7979488ab068bf99e2a60e82cea4dc42c56c26cbfebe +8b896f9bb21d49343e67aec6ad175b58c0c81a3ca73d44d113ae4354a0065d98eb1a5cafedaf232a2bb9cdc62152f309 +af6230340cc0b66f5bf845540ed4fc3e7d6077f361d60762e488d57834c3e7eb7eacc1b0ed73a7d134f174a01410e50c +88975e1b1af678d1b5179f72300a30900736af580dd748fd9461ef7afccc91ccd9bed33f9da55c8711a7635b800e831f +a97486bb9047391661718a54b8dd5a5e363964e495eae6c692730264478c927cf3e66dd3602413189a3699fbeae26e15 +a5973c161ab38732885d1d2785fd74bf156ba34881980cba27fe239caef06b24a533ffe6dbbbeca5e6566682cc00300a +a24776e9a840afda0003fa73b415d5bd6ecd9b5c2cc842b643ee51b8c6087f4eead4d0bfbd987eb174c489a7b952ff2a +a8a6ee06e3af053b705a12b59777267c546f33ba8a0f49493af8e6df4e15cf8dd2d4fb4daf7e84c6b5d3a7363118ff03 +a28e59ce6ad02c2ce725067c0123117e12ac5a52c8f5af13eec75f4a9efc4f696777db18a374fa33bcae82e0734ebd16 +86dfc3b78e841c708aff677baa8ee654c808e5d257158715097c1025d46ece94993efe12c9d188252ad98a1e0e331fec +a88d0275510f242eab11fdb0410ff6e1b9d7a3cbd3658333539815f1b450a84816e6613d15aa8a8eb15d87cdad4b27a2 +8440acea2931118a5b481268ff9f180ee4ede85d14a52c026adc882410825b8275caa44aff0b50c2b88d39f21b1a0696 +a7c3182eab25bd6785bacf12079d0afb0a9b165d6ed327814e2177148539f249eb9b5b2554538f54f3c882d37c0a8abe +85291fbe10538d7da38efdd55a7acebf03b1848428a2f664c3ce55367aece60039f4f320b1771c9c89a35941797f717c +a2c6414eeb1234728ab0de94aa98fc06433a58efa646ca3fcbd97dbfb8d98ae59f7ce6d528f669c8149e1e13266f69c9 +840c8462785591ee93aee2538d9f1ec44ba2ca61a569ab51d335ac873f5d48099ae8d7a7efa0725d9ff8f9475bfa4f56 +a7065a9d02fb3673acf7702a488fbc01aa69580964932f6f40b6c2d1c386b19e50b0e104fcac24ea26c4e723611d0238 +b72db6d141267438279e032c95e6106c2ccb3164b842ba857a2018f3a35f4b040da92680881eb17cd61d0920d5b8f006 +a8005d6c5960e090374747307ef0be2871a7a43fa4e76a16c35d2baab808e9777b496e9f57a4218b23390887c33a0b55 +8e152cea1e00a451ca47c20a1e8875873419700af15a5f38ee2268d3fbc974d4bd5f4be38008fa6f404dbdedd6e6e710 +a3391aed1fcd68761f06a7d1008ec62a09b1cb3d0203cd04e300a0c91adfed1812d8bc1e4a3fd7976dc0aae0e99f52f1 +967eb57bf2aa503ee0c6e67438098149eac305089c155f1762cf5e84e31f0fbf27c34a9af05621e34645c1ec96afaec8 +88af97ddc4937a95ec0dcd25e4173127260f91c8db2f6eac84afb789b363705fb3196235af631c70cafd09411d233589 +a32df75b3f2c921b8767638fd289bcfc61e08597170186637a7128ffedd52c798c434485ac2c7de07014f9e895c2c3d8 +b0a783832153650aa0d766a3a73ec208b6ce5caeb40b87177ffc035ab03c7705ecdd1090b6456a29f5fb7e90e2fa8930 +b59c8e803b4c3486777d15fc2311b97f9ded1602fa570c7b0200bada36a49ee9ef4d4c1474265af8e1c38a93eb66b18b +982f2c85f83e852022998ff91bafbb6ff093ef22cf9d5063e083a48b29175ccbd51b9c6557151409e439096300981a6c +939e3b5989fefebb9d272a954659a4eb125b98c9da6953f5e628d26266bd0525ec38304b8d56f08d65abc4d6da4a8dbb +8898212fe05bc8de7d18503cb84a1c1337cc2c09d1eeef2b475aa79185b7322bf1f8e065f1bf871c0c927dd19faf1f6d +94b0393a41cd00f724aee2d4bc72103d626a5aecb4b5486dd1ef8ac27528398edf56df9db5c3d238d8579af368afeb09 +96ac564450d998e7445dd2ea8e3fc7974d575508fa19e1c60c308d83b645864c029f2f6b7396d4ff4c1b24e92e3bac37 +8adf6638e18aff3eb3b47617da696eb6c4bdfbecbbc3c45d3d0ab0b12cbad00e462fdfbe0c35780d21aa973fc150285e +b53f94612f818571b5565bbb295e74bada9b5f9794b3b91125915e44d6ddcc4da25510eab718e251a09c99534d6042d9 +8b96462508d77ee083c376cd90807aebad8de96bca43983c84a4a6f196d5faf6619a2351f43bfeec101864c3bf255519 +aeadf34657083fc71df33bd44af73bf5281c9ca6d906b9c745536e1819ea90b56107c55e2178ebad08f3ba75b3f81c86 +9784ba29b2f0057b5af1d3ab2796d439b8753f1f749c73e791037461bdfc3f7097394283105b8ab01788ea5255a96710 +8756241bda159d4a33bf74faba0d4594d963c370fb6a18431f279b4a865b070b0547a6d1613cf45b8cfb5f9236bbf831 +b03ebfd6b71421dfd49a30460f9f57063eebfe31b9ceaa2a05c37c61522b35bdc09d7db3ad75c76c253c00ba282d3cd2 +b34e7e6341fa9d854b2d3153bdda0c4ae2b2f442ab7af6f99a0975d45725aa48e36ae5f7011edd249862e91f499687d4 +b462ee09dc3963a14354244313e3444de5cc37ea5ccfbf14cd9aca8027b59c4cb2a949bc30474497cab8123e768460e6 +aea753290e51e2f6a21a9a0ee67d3a2713f95c2a5c17fe41116c87d3aa77b1683761264d704df1ac34f8b873bc88ef7b +98430592afd414394f98ddfff9f280fcb1c322dbe3510f45e1e9c4bb8ee306b3e0cf0282c0ee73ebb8ba087d4d9e0858 +b95d3b5aaf54ffca11f4be8d57f76e14afdb20afc859dc7c7471e0b42031e8f3d461b726ecb979bdb2f353498dfe95ea +984d17f9b11a683132e0b5a9ee5945e3ff7054c2d5c716be73b29078db1d36f54c6e652fd2f52a19da313112e97ade07 +ab232f756b3fff3262be418a1af61a7e0c95ceebbc775389622a8e10610508cd6784ab7960441917a83cc191c58829ea +a28f41678d6e60de76b0e36ab10e4516e53e02e9c77d2b5af3cfeee3ce94cfa30c5797bd1daab20c98e1cad83ad0f633 +b55395fca84dd3ccc05dd480cb9b430bf8631ff06e24cb51d54519703d667268c2f8afcde4ba4ed16bece8cc7bc8c6e0 +8a8a5392a0e2ea3c7a8c51328fab11156004e84a9c63483b64e8f8ebf18a58b6ffa8fe8b9d95af0a2f655f601d096396 +ab480000fe194d23f08a7a9ec1c392334e9c687e06851f083845121ce502c06b54dda8c43092bcc1035df45cc752fe9b +b265644c29f628d1c7e8e25a5e845cabb21799371814730a41a363e1bda8a7be50fee7c3996a365b7fcba4642add10db +b8a915a3c685c2d4728f6931c4d29487cad764c5ce23c25e64b1a3259ac27235e41b23bfe7ae982921b4cb84463097df +8efa7338442a4b6318145a5440fc213b97869647eeae41b9aa3c0a27ee51285b73e3ae3b4a9423df255e6add58864aa9 +9106d65444f74d217f4187dfc8fcf3810b916d1e4275f94f6a86d1c4f3565b131fd6cde1fa708bc05fe183c49f14941a +948252dac8026bbbdb0a06b3c9d66ec4cf9532163bab68076fda1bd2357b69e4b514729c15aaa83b5618b1977bbc60c4 +ae6596ccfdf5cbbc5782efe3bb0b101bb132dbe1d568854ca24cacc0b2e0e9fabcb2ca7ab42aecec412efd15cf8cb7a2 +84a0b6c198ff64fd7958dfd1b40eac9638e8e0b2c4cd8cf5d8cdf80419baee76a05184bce6c5b635f6bf2d30055476a7 +8893118be4a055c2b3da593dbca51b1ae2ea2469911acfb27ee42faf3e6c3ad0693d3914c508c0b05b36a88c8b312b76 +b097479e967504deb6734785db7e60d1d8034d6ca5ba9552887e937f5e17bb413fccac2c1d1082154ed76609127860ad +a0294e6b9958f244d29943debf24b00b538b3da1116269b6e452bb12dc742226712fd1a15b9c88195afeb5d2415f505c +b3cc15f635080bc038f61b615f62b5b5c6f2870586191f59476e8368a73641d6ac2f7d0c1f54621982defdb318020230 +99856f49b9fe1604d917c94d09cc0ed753d13d015d30587a94e6631ffd964b214e607deb8a69a8b5e349a7edf4309206 +a8571e113ea22b4b4fce41a094da8c70de37830ae32e62c65c2fa5ad06a9bc29e884b945e73d448c72b176d6ecebfb58 +a9e9c6e52beb0013273c29844956b3ce291023678107cdc785f7b44eff5003462841ad8780761b86aefc6b734adde7cf +80a784b0b27edb51ef2bad3aee80e51778dcaa0f3f5d3dcb5dc5d4f4b2cf7ae35b08de6680ea9dac53f8438b92eb09ef +827b543e609ea328e97e373f70ad72d4915a2d1daae0c60d44ac637231070e164c43a2a58db80a64df1c624a042b38f9 +b449c65e8195202efdcb9bdb4e869a437313b118fef8b510cbbf8b79a4e99376adb749b37e9c20b51b31ed3310169e27 +8ea3028f4548a79a94c717e1ed28ad4d8725b8d6ab18b021063ce46f665c79da3c49440c6577319dab2d036b7e08f387 +897798431cfb17fe39f08f5f854005dc37b1c1ec1edba6c24bc8acb3b88838d0534a75475325a5ea98b326ad47dbad75 +89cf232e6303b0751561960fd4dea5754a28c594daf930326b4541274ffb03c7dd75938e411eb9a375006a70ce38097f +9727c6ae7f0840f0b6c8bfb3a1a5582ceee705e0b5c59b97def7a7a2283edd4d3f47b7971e902a3a2079e40b53ff69b8 +b76ed72b122c48679d221072efc0eeea063cb205cbf5f9ef0101fd10cb1075b8628166c83577cced654e1c001c7882f7 +ae908c42d208759da5ee9b405df85a6532ea35c6f0f6a1288d22870f59d98edc896841b8ac890a538e6c8d1e8b02d359 +809d12fe4039a0ec80dc9be6a89acaab7797e5f7f9b163378f52f9a75a1d73b2e9ae6e3dd49e32ced439783c1cabbef5 +a4149530b7f85d1098ba534d69548c6c612c416e8d35992fc1f64f4deeb41e09e49c6cf7aadbed7e846b91299358fe2d +a49342eacd1ec1148b8df1e253b1c015f603c39de11fa0a364ccb86ea32d69c34fd7aa6980a1fadcd8e785a57fa46f60 +87d43eff5a006dc4dddcf76cc96c656a1f3a68f19f124181feab86c6cc9a52cb9189cdbb423414defdd9bb0ca8ff1ddc +861367e87a9aa2f0f68296ba50aa5dbc5713008d260cc2c7e62d407c2063064749324c4e8156dc21b749656cfebce26b +b5303c2f72e84e170e66ae1b0fbd51b8c7a6f27476eaf5694b64e8737d5c84b51fe90100b256465a4c4156dd873cddb0 +b62849a4f891415d74f434cdc1d23c4a69074487659ca96e1762466b2b7a5d8525b056b891d0feea6fe6845cba8bc7fb +923dd9e0d6590a9307e8c4c23f13bae3306b580e297a937711a8b13e8de85e41a61462f25b7d352b682e8437bf2b4ab3 +9147379860cd713cd46c94b8cdf75125d36c37517fbecf81ace9680b98ce6291cd1c3e472f84249cc3b2b445e314b1b6 +a808a4f17ac21e3fb5cfef404e61fae3693ca3e688d375f99b6116779696059a146c27b06de3ac36da349b0649befd56 +87787e9322e1b75e66c1f0d9ea0915722a232770930c2d2a95e9478c4b950d15ab767e30cea128f9ed65893bfc2d0743 +9036a6ee2577223be105defe1081c48ea7319e112fff9110eb9f61110c319da25a6cea0464ce65e858635b079691ef1f +af5548c7c24e1088c23b57ee14d26c12a83484c9fd9296edf1012d8dcf88243f20039b43c8c548c265ef9a1ffe9c1c88 +a0fff520045e14065965fb8accd17e878d3fcaf9e0af2962c8954e50be6683d31fa0bf4816ab68f08630dbac6bfce52a +b4c1b249e079f6ae1781af1d97a60b15855f49864c50496c09c91fe1946266915b799f0406084d7783f5b1039116dd8b +8b0ffa5e7c498cb3879dddca34743b41eee8e2dea3d4317a6e961b58adb699ef0c92400c068d5228881a2b08121226bf +852ae8b19a1d80aa8ae5382e7ee5c8e7670ceb16640871c56b20b96b66b3b60e00015a3dde039446972e57b49a999ddd +a49942f04234a7d8492169da232cfff8051df86e8e1ba3db46aede02422c689c87dc1d99699c25f96cb763f5ca0983e5 +b04b597b7760cf5dcf411ef896d1661e6d5b0db3257ac2cf64b20b60c6cc18fa10523bb958a48d010b55bac7b02ab3b1 +a494591b51ea8285daecc194b5e5bd45ae35767d0246ac94fae204d674ee180c8e97ff15f71f28b7aeb175b8aea59710 +97d2624919e78406e7460730680dea8e71c8571cf988e11441aeea54512b95bd820e78562c99372d535d96f7e200d20d +ac693ddb00e48f76e667243b9b6a7008424043fb779e4f2252330285232c3fccac4da25cbd6d95fe9ad959ff305a91f6 +8d20ca0a71a64a3f702a0825bb46bd810d03bebfb227683680d474a52f965716ff99e19a165ebaf6567987f4f9ee3c94 +a5c516a438f916d1d68ca76996404792e0a66e97b7f18fc54c917bf10cf3211b62387932756e39e67e47b0bd6e88385a +b089614d830abc0afa435034cec7f851f2f095d479cacf1a3fb57272da826c499a52e7dcbc0eb85f4166fb94778e18e9 +a8dacc943765d930848288192f4c69e2461c4b9bc6e79e30eeef9a543318cf9ae9569d6986c65c5668a89d49993f8e07 +ab5a9361fa339eec8c621bdad0a58078983abd8942d4282b22835d7a3a47e132d42414b7c359694986f7db39386c2e19 +94230517fb57bd8eb26c6f64129b8b2abd0282323bf7b94b8bac7fab27b4ecc2c4290c294275e1a759de19f2216134f3 +b8f158ea5006bc3b90b285246625faaa6ac9b5f5030dc69701b12f3b79a53ec7e92eeb5a63bbd1f9509a0a3469ff3ffc +8b6944fd8cb8540957a91a142fdcda827762aa777a31e8810ca6d026e50370ee1636fc351724767e817ca38804ebe005 +82d1ee40fe1569c29644f79fa6c4033b7ed45cd2c3b343881f6eb0de2e79548fded4787fae19bed6ee76ed76ff9f2f11 +a8924c7035e99eaed244ca165607e7e568b6c8085510dcdbaf6ebdbed405af2e6c14ee27d94ffef10d30aa52a60bf66d +956f82a6c2ae044635e85812581e4866c5fa2f427b01942047d81f6d79a14192f66fbbe77c9ffeaef4e6147097fdd2b5 +b1100255a1bcf5e05b6aff1dfeb6e1d55b5d68d43a7457ba10cc76b61885f67f4d0d5179abda786e037ae95deb8eea45 +99510799025e3e5e8fbf06dedb14c060c6548ba2bda824f687d3999dc395e794b1fb6514b9013f3892b6cf65cb0d65aa +8f9091cebf5e9c809aab415942172258f894e66e625d7388a05289183f01b8d994d52e05a8e69f784fba41db9ea357f0 +a13d2eeb0776bdee9820ecb6693536720232848c51936bb4ef4fe65588d3f920d08a21907e1fdb881c1ad70b3725e726 +a68b8f18922d550284c5e5dc2dda771f24c21965a6a4d5e7a71678178f46df4d8a421497aad8fcb4c7e241aba26378a0 +8b7601f0a3c6ad27f03f2d23e785c81c1460d60100f91ea9d1cab978aa03b523150206c6d52ce7c7769c71d2c8228e9e +a8e02926430813caa851bb2b46de7f0420f0a64eb5f6b805401c11c9091d3b6d67d841b5674fa2b1dce0867714124cd8 +b7968ecba568b8193b3058400af02c183f0a6df995a744450b3f7e0af7a772454677c3857f99c140bbdb2a09e832e8e0 +8f20b1e9ba87d0a3f35309b985f3c18d2e8800f1ca7f0c52cadef773f1496b6070c936eea48c4a1cae83fd2524e9d233 +88aef260042db0d641a51f40639dbeeefa9e9811df30bee695f3791f88a2f84d318f04e8926b7f47bf25956cb9e3754f +9725345893b647e9ba4e6a29e12f96751f1ae25fcaec2173e9a259921a1a7edb7a47159b3c8767e44d9e2689f5aa0f72 +8c281e6f72752cb11e239e4df9341c45106eb7993c160e54423c2bffe10bc39d42624b45a1f673936ef2e1a02fc92f1a +90aba2f68bddb2fcce6c51430dacdfeec43ea8dc379660c99095df11017691ccf5faa27665cf4b9f0eea7728ae53c327 +b7022695c16521c5704f49b7ddbdbec9b5f57ce0ceebe537bc0ebb0906d8196cc855a9afeb8950a1710f6a654464d93f +8fe1b9dd3c6a258116415d36e08374e094b22f0afb104385a5da48be17123e86fb8327baacc4f0d9ebae923d55d99bb5 +817e85d8e3d19a4cbc1dec31597142c2daa4871bda89c2177fa719c00eda3344eb08b82eb92d4aa91a9eaacb3fc09783 +b59053e1081d2603f1ca0ba553804d6fa696e1fd996631db8f62087b26a40dfef02098b0326bb75f99ec83b9267ca738 +990a173d857d3ba81ff3789b931bfc9f5609cde0169b7f055fa3cb56451748d593d62d46ba33f80f9cafffe02b68dd14 +b0c538dbba4954b809ab26f9f94a3cf1dcb77ce289eaec1d19f556c0ae4be1fa03af4a9b7057837541c3cc0a80538736 +ac3ba42f5f44f9e1fc453ce49c4ab79d0e1d5c42d3b30b1e098f3ab3f414c4c262fa12fb2be249f52d4aaf3c5224beb9 +af47467eb152e59870e21f0d4da2f43e093daf40180ab01438030684b114d025326928eaab12c41b81a066d94fce8436 +98d1b58ba22e7289b1c45c79a24624f19b1d89e00f778eef327ec4856a9a897278e6f1a9a7e673844b31dde949153000 +97ccb15dfadc7c59dca08cfe0d22df2e52c684cf97de1d94bc00d7ba24e020025130b0a39c0f4d46e4fc872771ee7875 +b699e4ed9a000ff96ca296b2f09dce278832bc8ac96851ff3cff99ed3f6f752cfc0fea8571be28cd9b5a7ec36f1a08ee +b9f49f0edb7941cc296435ff0a912e3ad16848ee8765ab5f60a050b280d6ea585e5b34051b15f6b8934ef01ceb85f648 +ac3893df7b4ceab23c6b9054e48e8ba40d6e5beda8fbe90b814f992f52494186969b35d8c4cdc3c99890a222c9c09008 +a41293ad22fae81dea94467bc1488c3707f3d4765059173980be93995fa4fcc3c9340796e3eed0beeb0ba0d9bb4fa3aa +a0543e77acd2aeecde13d18d258aeb2c7397b77f17c35a1992e8666ea7abcd8a38ec6c2741bd929abba2f766138618cc +92e79b22bc40e69f6527c969500ca543899105837b6b1075fa1796755c723462059b3d1b028e0b3df2559fa440e09175 +a1fa1eac8f41a5197a6fb4aa1eae1a031c89f9c13ff9448338b222780cf9022e0b0925d930c37501a0ef7b2b00fdaf83 +b3cb29ff73229f0637335f28a08ad8c5f166066f27c6c175164d0f26766a927f843b987ee9b309ed71cbf0a65d483831 +84d4ab787f0ac00f104f4a734dc693d62d48c2aeb03913153da62c2ae2c27d11b1110dcef8980368dd84682ea2c1a308 +ab6a8e4bbc78d4a7b291ad3e9a8fe2d65f640524ba3181123b09d2d18a9e300e2509ccf7000fe47e75b65f3e992a2e7e +b7805ebe4f1a4df414003dc10bca805f2ab86ca75820012653e8f9b79c405196b0e2cab099f2ab953d67f0d60d31a0f9 +b12c582454148338ea605d22bd00a754109063e22617f1f8ac8ddf5502c22a181c50c216c3617b9852aa5f26af56b323 +86333ad9f898947e31ce747728dc8c887479e18d36ff3013f69ebef807d82c6981543b5c3788af93c4d912ba084d3cba +b514efa310dc4ad1258add138891e540d8c87142a881b5f46563cc58ecd1488e6d3a2fca54c0b72a929f3364ca8c333e +aa0a30f92843cf2f484066a783a1d75a7aa6f41f00b421d4baf20a6ac7886c468d0eea7ca8b17dd22f4f74631b62b640 +b3b7dc63baec9a752e8433c0cdee4d0f9bc41f66f2b8d132faf925eef9cf89aae756fc132c45910f057122462605dc10 +b9b8190dac5bfdeb59fd44f4da41a57e7f1e7d2c21faba9da91fa45cbeca06dcf299c9ae22f0c89ece11ac46352d619f +89f8cf36501ad8bdfeab863752a9090e3bfda57cf8fdeca2944864dc05925f501e252c048221bcc57136ab09a64b64b2 +b0cbfaf317f05f97be47fc9d69eda2dd82500e00d42612f271a1fe24626408c28881f171e855bd5bd67409f9847502b4 +a7c21a8fcede581bfd9847b6835eda62ba250bea81f1bb17372c800a19c732abe03064e64a2f865d974fb636cab4b859 +95f9df524ba7a4667351696c4176b505d8ea3659f5ff2701173064acc624af69a0fad4970963736383b979830cb32260 +856a74fe8b37a2e3afeac858c8632200485d438422a16ae3b29f359e470e8244995c63ad79c7e007ed063f178d0306fd +b37faa4d78fdc0bb9d403674dbea0176c2014a171c7be8527b54f7d1a32a76883d3422a3e7a5f5fcc5e9b31b57822eeb +8d37234d8594ec3fe75670b5c9cc1ec3537564d4739b2682a75b18b08401869a4264c0f264354219d8d896cded715db4 +b5289ee5737f0e0bde485d32096d23387d68dab8f01f47821ab4f06cc79a967afe7355e72dc0c751d96b2747b26f6255 +9085e1fdf9f813e9c3b8232d3c8863cd84ab30d45e8e0d3d6a0abd9ebc6fd70cdf749ff4d04390000e14c7d8c6655fc7 +93a388c83630331eca4da37ea4a97b3b453238af474817cc0a0727fd3138dcb4a22de38c04783ec829c22cb459cb4e8e +a5377116027c5d061dbe24c240b891c08cdd8cd3f0899e848d682c873aff5b8132c1e7cfe76d2e5ed97ee0eb1d42cb68 +a274c84b04338ed28d74683e2a7519c2591a3ce37c294d6f6e678f7d628be2db8eff253ede21823e2df7183e6552f622 +8bc201147a842453a50bec3ac97671397bc086d6dfc9377fa38c2124cdc286abda69b7324f47d64da094ae011d98d9d9 +9842d0c066c524592b76fbec5132bc628e5e1d21c424bec4555efca8619cc1fd8ea3161febcb8b9e8ab54702f4e815e2 +a19191b713a07efe85c266f839d14e25660ee74452e6c691cd9997d85ae4f732052d802d3deb018bdd847caa298a894b +a24f71fc0db504da4e287dd118a4a74301cbcd16033937ba2abc8417956fcb4ae19b8e63b931795544a978137eff51cb +a90eec4a6a3a4b8f9a5b93d978b5026fcf812fe65585b008d7e08c4aaf21195a1d0699f12fc16f79b6a18a369af45771 +8b551cf89737d7d06d9b3b9c4c1c73b41f2ea0af4540999c70b82dabff8580797cf0a3caf34c86c59a7069eb2e38f087 +b8d312e6c635e7a216a1cda075ae77ba3e1d2fd501dc31e83496e6e81ed5d9c7799f8e578869c2e0e256fb29f5de10a7 +8d144bdb8cae0b2cdb5b33d44bbc96984a5925202506a8cc65eb67ac904b466f5a7fe3e1cbf04aa785bbb7348c4bb73c +a101b3d58b7a98659244b88de0b478b3fb87dc5fc6031f6e689b99edf498abd43e151fd32bd4bbd240e0b3e59c440359 +907453abca7d8e7151a05cc3d506c988007692fe7401395dc93177d0d07d114ab6cca0cc658eb94c0223fe8658295cad +825329ffbe2147ddb68f63a0a67f32d7f309657b8e5d9ab5bb34b3730bfa2c77a23eaaadb05def7d9f94a9e08fdc1e96 +88ee923c95c1dac99ae7ed6067906d734d793c5dc5d26339c1bb3314abe201c5dccb33b9007351885eb2754e9a8ea06c +98bc9798543f5f1adc9f2cfcfa72331989420e9c3f6598c45269f0dc9b7c8607bbeaf03faa0aea2ddde2b8f17fdceff5 +8ee87877702a79aef923ab970db6fa81561b3c07d5bf1a072af0a7bad765b4cbaec910afe1a91703feacc7822fa38a94 +8060b9584aa294fe8adc2b22f67e988bc6da768eae91e429dcc43ddc53cfcc5d6753fdc1b420b268c7eb2fb50736a970 +b344a5524d80a2f051870c7001f74fcf348a70fcf78dbd20c6ff9ca85d81567d2318c8b8089f2c4f195d6aec9fc15fa6 +8f5a5d893e1936ed062149d20eb73d98b62b7f50ab5d93a6429c03656b36688d1c80cb5010e4977491e51fa0d7dd35d5 +86fa32ebbf97328c5f5f15564e1238297e289ec3219b9a741724e9f3ae8d5c15277008f555863a478b247ba5dc601d44 +9557e55377e279f4b6b5e0ffe01eca037cc13aac242d67dfcd0374a1e775c5ed5cb30c25fe21143fee54e3302d34a3ea +8cb6bcbc39372d23464a416ea7039f57ba8413cf3f00d9a7a5b356ab20dcb8ed11b3561f7bce372b8534d2870c7ee270 +b5d59075cb5abde5391f64b6c3b8b50adc6e1f654e2a580b6d6d6eff3f4fbdd8fffc92e06809c393f5c8eab37f774c4b +afcfb6903ef13e493a1f7308675582f15af0403b6553e8c37afb8b2808ad21b88b347dc139464367dc260df075fea1ad +810fbbe808375735dd22d5bc7fc3828dc49fdd22cc2d7661604e7ac9c4535c1df578780affb3b895a0831640a945bcad +8056b0c678803b416f924e09a6299a33cf9ad7da6fe1ad7accefe95c179e0077da36815fde3716711c394e2c5ea7127f +8b67403702d06979be19f1d6dc3ec73cc2e81254d6b7d0cc49cd4fdda8cd51ab0835c1d2d26fc0ecab5df90585c2f351 +87f97f9e6d4be07e8db250e5dd2bffdf1390665bc5709f2b631a6fa69a7fca958f19bd7cc617183da1f50ee63e9352b5 +ae151310985940471e6803fcf37600d7fa98830613e381e00dab943aec32c14162d51c4598e8847148148000d6e5af5c +81eb537b35b7602c45441cfc61b27fa9a30d3998fad35a064e05bc9479e9f10b62eba2b234b348219eea3cadcaac64bb +8a441434934180ab6f5bc541f86ebd06eadbee01f438836d797e930fa803a51510e005c9248cecc231a775b74d12b5e9 +81f3c250a27ba14d8496a5092b145629eb2c2e6a5298438670375363f57e2798207832c8027c3e9238ad94ecdadfc4df +a6217c311f2f3db02ceaa5b6096849fe92b6f4b6f1491535ef8525f6ccee6130bed2809e625073ecbaddd4a3eb3df186 +82d1c396f0388b942cf22b119d7ef1ad03d3dad49a74d9d01649ee284f377c8daddd095d596871669e16160299a210db +a40ddf7043c5d72a7246bd727b07f7fff1549f0e443d611de6f9976c37448b21664c5089c57f20105102d935ab82f27b +b6c03c1c97adf0c4bf4447ec71366c6c1bff401ba46236cd4a33d39291e7a1f0bb34bd078ba3a18d15c98993b153a279 +8a94f5f632068399c359c4b3a3653cb6df2b207379b3d0cdace51afdf70d6d5cce6b89a2b0fee66744eba86c98fb21c2 +b2f19e78ee85073f680c3bba1f07fd31b057c00b97040357d97855b54a0b5accb0d3b05b2a294568fcd6a4be6f266950 +a74632d13bbe2d64b51d7a9c3ae0a5a971c19f51cf7596a807cea053e6a0f3719700976d4e394b356c0329a2dced9aa2 +afef616d341a9bc94393b8dfba68ff0581436aa3a3adb7c26a1bbf2cf19fa877066191681f71f17f3cd6f9cf6bf70b5a +8ce96d93ae217408acf7eb0f9cbb9563363e5c7002e19bbe1e80760bc9d449daee2118f3878b955163ed664516b97294 +8414f79b496176bc8b8e25f8e4cfee28f4f1c2ddab099d63d2aca1b6403d26a571152fc3edb97794767a7c4686ad557c +b6c61d01fd8ce087ef9f079bf25bf10090db483dd4f88c4a786d31c1bdf52065651c1f5523f20c21e75cea17df69ab73 +a5790fd629be70545093631efadddc136661f63b65ec682609c38ef7d3d7fa4e56bdf94f06e263bc055b90cb1c6bcefe +b515a767e95704fb7597bca9e46f1753abacdc0e56e867ee3c6f4cd382643c2a28e65312c05ad040eaa3a8cbe7217a65 +8135806a02ead6aa92e9adb6fefb91349837ab73105aaa7be488ef966aa8dfaafdfa64bbae30fcbfa55dd135a036a863 +8f22435702716d76b1369750694540742d909d5e72b54d0878245fab7c269953b1c6f2b29c66f08d5e0263ca3a731771 +8e0f8a8e8753e077dac95848212aeffd51c23d9b6d611df8b102f654089401954413ecbedc6367561ca599512ae5dda7 +815a9084e3e2345f24c5fa559deec21ee1352fb60f4025c0779be65057f2d528a3d91593bd30d3a185f5ec53a9950676 +967e6555ccba395b2cc1605f8484c5112c7b263f41ce8439a99fd1c71c5ed14ad02684d6f636364199ca48afbbde13be +8cd0ccf17682950b34c796a41e2ea7dd5367aba5e80a907e01f4cdc611e4a411918215e5aebf4292f8b24765d73314a6 +a58bf1bbb377e4b3915df6f058a0f53b8fb8130fdec8c391f6bc82065694d0be59bb67ffb540e6c42cc8b380c6e36359 +92af3151d9e6bfb3383d85433e953c0160859f759b0988431ec5893542ba40288f65db43c78a904325ef8d324988f09d +8011bbb05705167afb47d4425065630f54cb86cd462095e83b81dfebf348f846e4d8fbcf1c13208f5de1931f81da40b9 +81c743c104fc3cb047885c9fa0fb9705c3a83ee24f690f539f4985509c3dafd507af3f6a2128276f45d5939ef70c167f +a2c9679b151c041aaf5efeac5a737a8f70d1631d931609fca16be1905682f35e291292874cb3b03f14994f98573c6f44 +a4949b86c4e5b1d5c82a337e5ce6b2718b1f7c215148c8bfb7e7c44ec86c5c9476048fc5c01f57cb0920876478c41ad6 +86c2495088bd1772152e527a1da0ef473f924ea9ab0e5b8077df859c28078f73c4e22e3a906b507fdf217c3c80808b5c +892e0a910dcf162bcea379763c3e2349349e4cda9402949255ac4a78dd5a47e0bf42f5bd0913951576b1d206dc1e536a +a7009b2c6b396138afe4754b7cc10dee557c51c7f1a357a11486b3253818531f781ea8107360c8d4c3b1cd96282353c0 +911763ef439c086065cc7b4e57484ed6d693ea44acee4b18c9fd998116da55fbe7dcb8d2a0f0f9b32132fca82d73dff6 +a722000b95a4a2d40bed81870793f15ba2af633f9892df507f2842e52452e02b5ea8dea6a043c2b2611d82376e33742a +9387ac49477bd719c2f92240d0bdfcf9767aad247ca93dc51e56106463206bc343a8ec855eb803471629a66fffb565d6 +92819a1fa48ab4902939bb72a0a4e6143c058ea42b42f9bc6cea5df45f49724e2530daf3fc4f097cceefa2a8b9db0076 +98eac7b04537653bc0f4941aae732e4b1f84bd276c992c64a219b8715eb1fb829b5cbd997d57feb15c7694c468f95f70 +b275e7ba848ce21bf7996e12dbeb8dadb5d0e4f1cb5a0248a4f8f9c9fe6c74e3c93f4b61edbcb0a51af5a141e1c14bc7 +97243189285aba4d49c53770c242f2faf5fd3914451da4931472e3290164f7663c726cf86020f8f181e568c72fd172d1 +839b0b3c25dd412bee3dc24653b873cc65454f8f16186bb707bcd58259c0b6765fa4c195403209179192a4455c95f3b8 +8689d1a870514568a074a38232e2ceb4d7df30fabeb76cff0aed5b42bf7f02baea12c5fadf69f4713464dbd52aafa55f +8958ae7b290f0b00d17c3e9fdb4dbf168432b457c7676829299dd428984aba892de1966fc106cfc58a772862ecce3976 +a422bc6bd68b8870cfa5bc4ce71781fd7f4368b564d7f1e0917f6013c8bbb5b240a257f89ecfdbecb40fe0f3aa31d310 +aa61f78130cebe09bc9a2c0a37f0dd57ed2d702962e37d38b1df7f17dc554b1d4b7a39a44182a452ce4c5eb31fa4cfcc +b7918bd114f37869bf1a459023386825821bfadce545201929d13ac3256d92a431e34f690a55d944f77d0b652cefeffc +819bba35fb6ace1510920d4dcff30aa682a3c9af9022e287751a6a6649b00c5402f14b6309f0aeef8fce312a0402915e +8b7c9ad446c6f63c11e1c24e24014bd570862b65d53684e107ba9ad381e81a2eaa96731b4b33536efd55e0f055071274 +8fe79b53f06d33386c0ec7d6d521183c13199498594a46d44a8a716932c3ec480c60be398650bbfa044fa791c4e99b65 +9558e10fb81250b9844c99648cf38fa05ec1e65d0ccbb18aa17f2d1f503144baf59d802c25be8cc0879fff82ed5034ad +b538a7b97fbd702ba84645ca0a63725be1e2891c784b1d599e54e3480e4670d0025526674ef5cf2f87dddf2290ba09f0 +92eafe2e869a3dd8519bbbceb630585c6eb21712b2f31e1b63067c0acb5f9bdbbcbdb612db4ea7f9cc4e7be83d31973f +b40d21390bb813ab7b70a010dff64c57178418c62685761784e37d327ba3cb9ef62df87ecb84277c325a637fe3709732 +b349e6fbf778c4af35fbed33130bd8a7216ed3ba0a79163ebb556e8eb8e1a7dad3456ddd700dad9d08d202491c51b939 +a8fdaedecb251f892b66c669e34137f2650509ade5d38fbe8a05d9b9184bb3b2d416186a3640429bd1f3e4b903c159dd +ac6167ebfee1dbab338eff7642f5e785fc21ef0b4ddd6660333fe398068cbd6c42585f62e81e4edbb72161ce852a1a4f +874b1fbf2ebe140c683bd7e4e0ab017afa5d4ad38055aaa83ee6bbef77dbc88a6ce8eb0dcc48f0155244af6f86f34c2d +903c58e57ddd9c446afab8256a6bb6c911121e6ccfb4f9b4ed3e2ed922a0e500a5cb7fa379d5285bc16e11dac90d1fda +8dae7a0cffa2fd166859cd1bf10ff82dd1932e488af377366b7efc0d5dec85f85fe5e8150ff86a79a39cefc29631733a +aa047857a47cc4dfc08585f28640420fcf105b881fd59a6cf7890a36516af0644d143b73f3515ab48faaa621168f8c31 +864508f7077c266cc0cb3f7f001cb6e27125ebfe79ab57a123a8195f2e27d3799ff98413e8483c533b46a816a3557f1f +8bcd45ab1f9cbab36937a27e724af819838f66dfeb15923f8113654ff877bd8667c54f6307aaf0c35027ca11b6229bfd +b21aa34da9ab0a48fcfdd291df224697ce0c1ebc0e9b022fdee8750a1a4b5ba421c419541ed5c98b461eecf363047471 +a9a18a2ab2fae14542dc336269fe612e9c1af6cf0c9ac933679a2f2cb77d3c304114f4d219ca66fe288adde30716775b +b5205989b92c58bdda71817f9a897e84100b5c4e708de1fced5c286f7a6f01ae96b1c8d845f3a320d77c8e2703c0e8b1 +a364059412bbcc17b8907d43ac8e5df90bc87fd1724b5f99832d0d24559fae6fa76a74cff1d1eac8cbac6ec80b44af20 +ae709f2c339886b31450834cf29a38b26eb3b0779bd77c9ac269a8a925d1d78ea3837876c654b61a8fe834b3b6940808 +8802581bba66e1952ac4dab36af371f66778958f4612901d95e5cac17f59165e6064371d02de8fb6fccf89c6dc8bd118 +a313252df653e29c672cbcfd2d4f775089cb77be1077381cf4dc9533790e88af6cedc8a119158e7da5bf6806ad9b91a1 +992a065b4152c7ef11515cd54ba9d191fda44032a01aed954acff3443377ee16680c7248d530b746b8c6dee2d634e68c +b627b683ee2b32c1ab4ccd27b9f6cce2fe097d96386fa0e5c182ad997c4c422ab8dfc03870cd830b8c774feb66537282 +b823cf8a9aee03dadd013eb9efe40a201b4b57ef67efaae9f99683005f5d1bf55e950bf4af0774f50859d743642d3fea +b8a7449ffac0a3f206677097baf7ce00ca07a4d2bd9b5356fbcb83f3649b0fda07cfebad220c1066afba89e5a52abf4b +b2dd1a2f986395bb4e3e960fbbe823dbb154f823284ebc9068502c19a7609790ec0073d08bfa63f71e30c7161b6ef966 +98e5236de4281245234f5d40a25b503505af140b503a035fc25a26159a9074ec81512b28f324c56ea2c9a5aa7ce90805 +89070847dc8bbf5bc4ed073aa2e2a1f699cf0c2ca226f185a0671cecc54e7d3e14cd475c7752314a7a8e7476829da4bc +a9402dc9117fdb39c4734c0688254f23aed3dce94f5f53f5b7ef2b4bf1b71a67f85ab1a38ec224a59691f3bee050aeb3 +957288f9866a4bf56a4204218ccc583f717d7ce45c01ea27142a7e245ad04a07f289cc044f8cf1f21d35e67e39299e9c +b2fb31ccb4e69113763d7247d0fc8edaae69b550c5c56aecacfd780c7217dc672f9fb7496edf4aba65dacf3361268e5b +b44a4526b2f1d6eb2aa8dba23bfa385ff7634572ab2afddd0546c3beb630fbfe85a32f42dd287a7fec069041411537f7 +8db5a6660c3ac7fd7a093573940f068ee79a82bc17312af900b51c8c439336bc86ca646c6b7ab13aaaa008a24ca508ab +8f9899a6d7e8eb4367beb5c060a1f8e94d8a21099033ae582118477265155ba9e72176a67f7f25d7bad75a152b56e21a +a67de0e91ade8d69a0e00c9ff33ee2909b8a609357095fa12319e6158570c232e5b6f4647522efb7345ce0052aa9d489 +82eb2414898e9c3023d57907a2b17de8e7eea5269029d05a94bfd7bf5685ac4a799110fbb375eb5e0e2bd16acf6458ae +94451fc7fea3c5a89ba701004a9693bab555cb622caf0896b678faba040409fdfd14a978979038b2a81e8f0abc4994d2 +ac879a5bb433998e289809a4a966bd02b4bf6a9c1cc276454e39c886efcf4fc68baebed575826bde577ab5aa71d735a9 +880c0f8f49c875dfd62b4ddedde0f5c8b19f5687e693717f7e5c031bc580e58e13ab497d48b4874130a18743c59fdce3 +b582af8d8ff0bf76f0a3934775e0b54c0e8fed893245d7d89cae65b03c8125b7237edc29dc45b4fe1a3fe6db45d280ee +89f337882ed3ae060aaee98efa20d79b6822bde9708c1c5fcee365d0ec9297f694cae37d38fd8e3d49717c1e86f078e7 +826d2c1faea54061848b484e288a5f4de0d221258178cf87f72e14baaa4acc21322f8c9eab5dde612ef497f2d2e1d60b +a5333d4f227543e9cd741ccf3b81db79f2f03ca9e649e40d6a6e8ff9073e06da83683566d3b3c8d7b258c62970fb24d1 +a28f08c473db06aaf4c043a2fae82b3c8cfaa160bce793a4c208e4e168fb1c65115ff8139dea06453c5963d95e922b94 +8162546135cc5e124e9683bdfaa45833c18553ff06a0861c887dc84a5b12ae8cd4697f6794c7ef6230492c32faba7014 +b23f0d05b74c08d6a7df1760792be83a761b36e3f8ae360f3c363fb196e2a9dd2de2e492e49d36561366e14daa77155c +b6f70d6c546722d3907c708d630dbe289771d2c8bf059c2e32b77f224696d750b4dda9b3a014debda38e7d02c9a77585 +83bf4c4a9f3ca022c631017e7a30ea205ba97f7f5927cba8fc8489a4646eac6712cb821c5668c9ffe94d69d524374a27 +b0371475425a8076d0dd5f733f55aabbe42d20a7c8ea7da352e736d4d35a327b2beb370dfcb05284e22cfd69c5f6c4cc +a0031ba7522c79211416c2cca3aa5450f96f8fee711552a30889910970ba13608646538781a2c08b834b140aadd7166f +99d273c80c7f2dc6045d4ed355d9fc6f74e93549d961f4a3b73cd38683f905934d359058cd1fc4da8083c7d75070487f +b0e4b0efa3237793e9dcce86d75aafe9879c5fa23f0d628649aef2130454dcf72578f9bf227b9d2b9e05617468e82588 +a5ab076fa2e1c5c51f3ae101afdd596ad9d106bba7882b359c43d8548b64f528af19afa76cd6f40da1e6c5fca4def3fa +8ce2299e570331d60f6a6eff1b271097cd5f1c0e1113fc69b89c6a0f685dabea3e5bc2ac6bd789aa492ab189f89be494 +91b829068874d911a310a5f9dee001021f97471307b5a3de9ec336870ec597413e1d92010ce320b619f38bed7c4f7910 +b14fe91f4b07bf33b046e9285b66cb07927f3a8da0af548ac2569b4c4fb1309d3ced76d733051a20814e90dd5b75ffd1 +abaab92ea6152d40f82940277c725aa768a631ee0b37f5961667f82fb990fc11e6d3a6a2752b0c6f94563ed9bb28265c +b7fe28543eca2a716859a76ab9092f135337e28109544f6bd2727728d0a7650428af5713171ea60bfc273d1c821d992c +8a4917b2ab749fc7343fc64bdf51b6c0698ff15d740cc7baf248c030475c097097d5a473bcc00d8c25817563fe0447b4 +aa96156d1379553256350a0a3250166add75948fb9cde62aa555a0a9dc0a9cb7f2f7b8428aff66097bf6bfedaf14bbe2 +ae4ffeb9bdc76830d3eca2b705f30c1bdede6412fa064260a21562c8850c7fb611ec62bc68479fe48f692833e6f66d8d +b96543caaba9d051600a14997765d49e4ab10b07c7a92cccf0c90b309e6da334fdd6d18c96806cbb67a7801024fbd3c7 +97b2b9ad76f19f500fcc94ca8e434176249f542ac66e5881a3dccd07354bdab6a2157018b19f8459437a68d8b86ba8e0 +a8d206f6c5a14c80005849474fde44b1e7bcf0b2d52068f5f97504c3c035b09e65e56d1cf4b5322791ae2c2fdbd61859 +936bad397ad577a70cf99bf9056584a61bd7f02d2d5a6cf219c05d770ae30a5cd902ba38366ce636067fc1dd10108d31 +a77e30195ee402b84f3882e2286bf5380c0ed374a112dbd11e16cef6b6b61ab209d4635e6f35cdaaa72c1a1981d5dabe +a46ba4d3947188590a43c180757886a453a0503f79cc435322d92490446f37419c7b999fdf868a023601078070e03346 +80d8d4c5542f223d48240b445d4d8cf6a75d120b060bc08c45e99a13028b809d910b534d2ac47fb7068930c54efd8da9 +803be9c68c91b42b68e1f55e58917a477a9a6265e679ca44ee30d3eb92453f8c89c64eafc04c970d6831edd33d066902 +b14b2b3d0dfe2bb57cee4cd72765b60ac33c1056580950be005790176543826c1d4fbd737f6cfeada6c735543244ab57 +a9e480188bba1b8fb7105ff12215706665fd35bf1117bacfb6ab6985f4dbc181229873b82e5e18323c2b8f5de03258e0 +a66a0f0779436a9a3999996d1e6d3000f22c2cac8e0b29cddef9636393c7f1457fb188a293b6c875b05d68d138a7cc4a +848397366300ab40c52d0dbbdafbafef6cd3dadf1503bb14b430f52bb9724188928ac26f6292a2412bc7d7aa620763c8 +95466cc1a78c9f33a9aaa3829a4c8a690af074916b56f43ae46a67a12bb537a5ac6dbe61590344a25b44e8512355a4a7 +8b5f7a959f818e3baf0887f140f4575cac093d0aece27e23b823cf421f34d6e4ff4bb8384426e33e8ec7b5eed51f6b5c +8d5e1368ec7e3c65640d216bcc5d076f3d9845924c734a34f3558ac0f16e40597c1a775a25bf38b187213fbdba17c93b +b4647c1b823516880f60d20c5cc38c7f80b363c19d191e8992226799718ee26b522a12ecb66556ed3d483aa4824f3326 +ac3abaea9cd283eb347efda4ed9086ea3acf495043e08d0d19945876329e8675224b685612a6badf8fd72fb6274902b1 +8eae1ce292d317aaa71bcf6e77e654914edd5090e2e1ebab78b18bb41b9b1bc2e697439f54a44c0c8aa0d436ebe6e1a9 +94dc7d1aec2c28eb43d93b111fa59aaa0d77d5a09501220bd411768c3e52208806abf973c6a452fd8292ff6490e0c9e2 +8fd8967f8e506fef27d17b435d6b86b232ec71c1036351f12e6fb8a2e12daf01d0ee04451fb944d0f1bf7fd20e714d02 +824e6865be55d43032f0fec65b3480ea89b0a2bf860872237a19a54bc186a85d2f8f9989cc837fbb325b7c72d9babe2c +8bd361f5adb27fd6f4e3f5de866e2befda6a8454efeb704aacc606f528c03f0faae888f60310e49440496abd84083ce2 +b098a3c49f2aaa28b6b3e85bc40ce6a9cdd02134ee522ae73771e667ad7629c8d82c393fba9f27f5416986af4c261438 +b385f5ca285ff2cfe64dcaa32dcde869c28996ed091542600a0b46f65f3f5a38428cca46029ede72b6cf43e12279e3d3 +8196b03d011e5be5288196ef7d47137d6f9237a635ab913acdf9c595fa521d9e2df722090ec7eb0203544ee88178fc5f +8ed1270211ef928db18e502271b7edf24d0bbd11d97f2786aee772d70c2029e28095cf8f650b0328cc8a4c38d045316d +a52ab60e28d69b333d597a445884d44fd2a7e1923dd60f763951e1e45f83e27a4dac745f3b9eff75977b3280e132c15d +91e9fe78cdac578f4a4687f71b800b35da54b824b1886dafec073a3c977ce7a25038a2f3a5b1e35c2c8c9d1a7312417c +a42832173f9d9491c7bd93b21497fbfa4121687cd4d2ab572e80753d7edcbb42cfa49f460026fbde52f420786751a138 +97b947126d84dcc70c97be3c04b3de3f239b1c4914342fa643b1a4bb8c4fe45c0fcb585700d13a7ed50784790c54bef9 +860e407d353eac070e2418ef6cb80b96fc5f6661d6333e634f6f306779651588037be4c2419562c89c61f9aa2c4947f5 +b2c9d93c3ba4e511b0560b55d3501bf28a510745fd666b3cb532db051e6a8617841ea2f071dda6c9f15619c7bfd2737f +8596f4d239aeeac78311207904d1bd863ef68e769629cc379db60e019aaf05a9d5cd31dc8e630b31e106a3a93e47cbc5 +8b26e14e2e136b65c5e9e5c2022cee8c255834ea427552f780a6ca130a6446102f2a6f334c3f9a0308c53df09e3dba7e +b54724354eb515a3c8bed0d0677ff1db94ac0a07043459b4358cb90e3e1aa38ac23f2caa3072cf9647275d7cd61d0e80 +b7ce9fe0e515e7a6b2d7ddcb92bc0196416ff04199326aea57996eef8c5b1548bd8569012210da317f7c0074691d01b7 +a1a13549c82c877253ddefa36a29ea6a23695ee401fdd48e65f6f61e5ebd956d5e0edeff99484e9075cb35071fec41e2 +838ba0c1e5bd1a6da05611ff1822b8622457ebd019cb065ece36a2d176bd2d889511328120b8a357e44569e7f640c1e6 +b916eccff2a95519400bbf76b5f576cbe53cf200410370a19d77734dc04c05b585cfe382e8864e67142d548cd3c4c2f4 +a610447cb7ca6eea53a6ff1f5fe562377dcb7f4aaa7300f755a4f5e8eba61e863c51dc2aa9a29b35525b550fbc32a0fe +9620e8f0f0ee9a4719aa9685eeb1049c5c77659ba6149ec4c158f999cfd09514794b23388879931fe26fea03fa471fd3 +a9dcf8b679e276583cf5b9360702a185470d09aea463dc474ee9c8aee91ef089dacb073e334e47fbc78ec5417c90465c +8c9adee8410bdd99e5b285744cee61e2593b6300ff31a8a83b0ec28da59475a5c6fb9346fe43aadea2e6c3dad2a8e30a +97d5afe9b3897d7b8bb628b7220cf02d8ee4e9d0b78f5000d500aaf4c1df9251aaaabfd1601626519f9d66f00a821d4e +8a382418157b601ce4c3501d3b8409ca98136a4ef6abcbf62885e16e215b76b035c94d149cc41ff92e42ccd7c43b9b3d +b64b8d11fb3b01abb2646ac99fdb9c02b804ce15d98f9fe0fbf1c9df8440c71417487feb6cdf51e3e81d37104b19e012 +849d7d044f9d8f0aab346a9374f0b3a5d14a9d1faa83dbacccbdc629ad1ef903a990940255564770537f8567521d17f0 +829dbb0c76b996c2a91b4cbbe93ba455ca0d5729755e5f0c92aaee37dff7f36fcdc06f33aca41f1b609c784127b67d88 +85a7c0069047b978422d264d831ab816435f63938015d2e977222b6b5746066c0071b7f89267027f8a975206ed25c1b0 +84b9fbc1cfb302df1acdcf3dc5d66fd1edfe7839f7a3b2fb3a0d5548656249dd556104d7c32b73967bccf0f5bdcf9e3b +972220ac5b807f53eac37dccfc2ad355d8b21ea6a9c9b011c09fe440ddcdf7513e0b43d7692c09ded80d7040e26aa28f +855885ed0b21350baeca890811f344c553cf9c21024649c722453138ba29193c6b02c4b4994cd414035486f923472e28 +841874783ae6d9d0e59daea03e96a01cbbe4ecaced91ae4f2c8386e0d87b3128e6d893c98d17c59e4de1098e1ad519dd +827e50fc9ce56f97a4c3f2f4cbaf0b22f1c3ce6f844ff0ef93a9c57a09b8bf91ebfbd2ba9c7f83c442920bffdaf288cc +a441f9136c7aa4c08d5b3534921b730e41ee91ab506313e1ba5f7c6f19fd2d2e1594e88c219834e92e6fb95356385aa7 +97d75b144471bf580099dd6842b823ec0e6c1fb86dd0da0db195e65524129ea8b6fd4a7a9bbf37146269e938a6956596 +a4b6fa87f09d5a29252efb2b3aaab6b3b6ea9fab343132a651630206254a25378e3e9d6c96c3d14c150d01817d375a8e +a31a671876d5d1e95fe2b8858dc69967231190880529d57d3cab7f9f4a2b9b458ac9ee5bdaa3289158141bf18f559efb +90bee6fff4338ba825974021b3b2a84e36d617e53857321f13d2b3d4a28954e6de3b3c0e629d61823d18a9763313b3bf +96b622a63153f393bb419bfcf88272ea8b3560dbd46b0aa07ada3a6223990d0abdd6c2adb356ef4be5641688c8d83941 +84c202adeaff9293698022bc0381adba2cd959f9a35a4e8472288fd68f96f6de8be9da314c526d88e291c96b1f3d6db9 +8ca01a143b8d13809e5a8024d03e6bc9492e22226073ef6e327edf1328ef4aff82d0bcccee92cb8e212831fa35fe1204 +b2f970dbad15bfbefb38903c9bcc043d1367055c55dc1100a850f5eb816a4252c8c194b3132c929105511e14ea10a67d +a5e36556472a95ad57eb90c3b6623671b03eafd842238f01a081997ffc6e2401f76e781d049bb4aa94d899313577a9cf +8d1057071051772f7c8bedce53a862af6fd530dd56ae6321eaf2b9fc6a68beff5ed745e1c429ad09d5a118650bfd420a +8aadc4f70ace4fcb8d93a78610779748dcffc36182d45b932c226dc90e48238ea5daa91f137c65ed532352c4c4d57416 +a2ea05ae37e673b4343232ae685ee14e6b88b867aef6dfac35db3589cbcd76f99540fed5c2641d5bb5a4a9f808e9bf0d +947f1abad982d65648ae4978e094332b4ecb90f482c9be5741d5d1cf5a28acf4680f1977bf6e49dd2174c37f11e01296 +a27b144f1565e4047ba0e3f4840ef19b5095d1e281eaa463c5358f932114cbd018aa6dcf97546465cf2946d014d8e6d6 +8574e1fc3acade47cd4539df578ce9205e745e161b91e59e4d088711a7ab5aa3b410d517d7304b92109924d9e2af8895 +a48ee6b86b88015d6f0d282c1ae01d2a5b9e8c7aa3d0c18b35943dceb1af580d08a65f54dc6903cde82fd0d73ce94722 +8875650cec543a7bf02ea4f2848a61d167a66c91ffaefe31a9e38dc8511c6a25bde431007eefe27a62af3655aca208dc +999b0a6e040372e61937bf0d68374e230346b654b5a0f591a59d33a4f95bdb2f3581db7c7ccb420cd7699ed709c50713 +878c9e56c7100c5e47bbe77dc8da5c5fe706cec94d37fa729633bca63cace7c40102eee780fcdabb655f5fa47a99600e +865006fb5b475ada5e935f27b96f9425fc2d5449a3c106aa366e55ebed3b4ee42adc3c3f0ac19fd129b40bc7d6bc4f63 +b7a7da847f1202e7bc1672553e68904715e84fd897d529243e3ecda59faa4e17ba99c649a802d53f6b8dfdd51f01fb74 +8b2fb4432c05653303d8c8436473682933a5cb604da10c118ecfcd2c8a0e3132e125afef562bdbcc3df936164e5ce4f2 +808d95762d33ddfa5d0ee3d7d9f327de21a994d681a5f372e2e3632963ea974da7f1f9e5bac8ccce24293509d1f54d27 +932946532e3c397990a1df0e94c90e1e45133e347a39b6714c695be21aeb2d309504cb6b1dde7228ff6f6353f73e1ca2 +9705e7c93f0cdfaa3fa96821f830fe53402ad0806036cd1b48adc2f022d8e781c1fbdab60215ce85c653203d98426da3 +aa180819531c3ec1feb829d789cb2092964c069974ae4faad60e04a6afcce5c3a59aec9f11291e6d110a788d22532bc6 +88f755097f7e25cb7dd3c449520c89b83ae9e119778efabb54fbd5c5714b6f37c5f9e0346c58c6ab09c1aef2483f895d +99fc03ab7810e94104c494f7e40b900f475fde65bdec853e60807ffd3f531d74de43335c3b2646b5b8c26804a7448898 +af2dea9683086bed1a179110efb227c9c00e76cd00a2015b089ccbcee46d1134aa18bda5d6cab6f82ae4c5cd2461ac21 +a500f87ba9744787fdbb8e750702a3fd229de6b8817594348dec9a723b3c4240ddfa066262d002844b9e38240ce55658 +924d0e45c780f5bc1c1f35d15dfc3da28036bdb59e4c5440606750ecc991b85be18bc9a240b6c983bc5430baa4c68287 +865b11e0157b8bf4c5f336024b016a0162fc093069d44ac494723f56648bc4ded13dfb3896e924959ea11c96321afefc +93672d8607d4143a8f7894f1dcca83fb84906dc8d6dd7dd063bb0049cfc20c1efd933e06ca7bd03ea4cb5a5037990bfe +826891efbdff0360446825a61cd1fa04326dd90dae8c33dfb1ed97b045e165766dd070bd7105560994d0b2044bdea418 +93c4a4a8bcbc8b190485cc3bc04175b7c0ed002c28c98a540919effd6ed908e540e6594f6db95cd65823017258fb3b1c +aeb2a0af2d2239fda9aa6b8234b019708e8f792834ff0dd9c487fa09d29800ddceddd6d7929faa9a3edcb9e1b3aa0d6b +87f11de7236d387863ec660d2b04db9ac08143a9a2c4dfff87727c95b4b1477e3bc473a91e5797313c58754905079643 +80dc1db20067a844fe8baceca77f80db171a5ca967acb24e2d480eae9ceb91a3343c31ad1c95b721f390829084f0eae6 +9825c31f1c18da0de3fa84399c8b40f8002c3cae211fb6a0623c76b097b4d39f5c50058f57a16362f7a575909d0a44a2 +a99fc8de0c38dbf7b9e946de83943a6b46a762167bafe2a603fb9b86f094da30d6de7ed55d639aafc91936923ee414b3 +ad594678b407db5d6ea2e90528121f84f2b96a4113a252a30d359a721429857c204c1c1c4ff71d8bb5768c833f82e80e +b33d985e847b54510b9b007e31053732c8a495e43be158bd2ffcea25c6765bcbc7ca815f7c60b36ad088b955dd6e9350 +815f8dfc6f90b3342ca3fbd968c67f324dae8f74245cbf8bc3bef10e9440c65d3a2151f951e8d18959ba01c1b50b0ec1 +94c608a362dd732a1abc56e338637c900d59013db8668e49398b3c7a0cae3f7e2f1d1bf94c0299eeafe6af7f76c88618 +8ebd8446b23e5adfcc393adc5c52fe172f030a73e63cd2d515245ca0dd02782ceed5bcdd9ccd9c1b4c5953dfac9c340c +820437f3f6f9ad0f5d7502815b221b83755eb8dc56cd92c29e9535eb0b48fb8d08c9e4fcc26945f9c8cca60d89c44710 +8910e4e8a56bf4be9cc3bbf0bf6b1182a2f48837a2ed3c2aaec7099bfd7f0c83e14e608876b17893a98021ff4ab2f20d +9633918fde348573eec15ce0ad53ac7e1823aac86429710a376ad661002ae6d049ded879383faaa139435122f64047c6 +a1f5e3fa558a9e89318ca87978492f0fb4f6e54a9735c1b8d2ecfb1d1c57194ded6e0dd82d077b2d54251f3bee1279e1 +b208e22d04896abfd515a95c429ff318e87ff81a5d534c8ac2c33c052d6ffb73ef1dccd39c0bbe0734b596c384014766 +986d5d7d2b5bde6d16336f378bd13d0e671ad23a8ec8a10b3fc09036faeeb069f60662138d7a6df3dfb8e0d36180f770 +a2d4e6c5f5569e9cef1cddb569515d4b6ace38c8aed594f06da7434ba6b24477392cc67ba867c2b079545ca0c625c457 +b5ac32b1d231957d91c8b7fc43115ce3c5c0d8c13ca633374402fa8000b6d9fb19499f9181844f0c10b47357f3f757ce +96b8bf2504b4d28fa34a4ec378e0e0b684890c5f44b7a6bb6e19d7b3db2ab27b1e2686389d1de9fbd981962833a313ea +953bfd7f6c3a0469ad432072b9679a25486f5f4828092401eff494cfb46656c958641a4e6d0d97d400bc59d92dba0030 +876ab3cea7484bbfd0db621ec085b9ac885d94ab55c4bb671168d82b92e609754b86aaf472c55df3d81421d768fd108a +885ff4e67d9ece646d02dd425aa5a087e485c3f280c3471b77532b0db6145b69b0fbefb18aa2e3fa5b64928b43a94e57 +b91931d93f806d0b0e6cc62a53c718c099526140f50f45d94b8bbb57d71e78647e06ee7b42aa5714aed9a5c05ac8533f +a0313eeadd39c720c9c27b3d671215331ab8d0a794e71e7e690f06bcd87722b531d6525060c358f35f5705dbb7109ccb +874c0944b7fedc6701e53344100612ddcb495351e29305c00ec40a7276ea5455465ffb7bded898886c1853139dfb1fc7 +8dc31701a01ee8137059ca1874a015130d3024823c0576aa9243e6942ec99d377e7715ed1444cd9b750a64b85dcaa3e5 +836d2a757405e922ec9a2dfdcf489a58bd48b5f9683dd46bf6047688f778c8dee9bc456de806f70464df0b25f3f3d238 +b30b0a1e454a503ea3e2efdec7483eaf20b0a5c3cefc42069e891952b35d4b2c955cf615f3066285ed8fafd9fcfbb8f6 +8e6d4044b55ab747e83ec8762ea86845f1785cc7be0279c075dadf08aca3ccc5a096c015bb3c3f738f647a4eadea3ba5 +ad7735d16ab03cbe09c029610aa625133a6daecfc990b297205b6da98eda8c136a7c50db90f426d35069708510d5ae9c +8d62d858bbb59ec3c8cc9acda002e08addab4d3ad143b3812098f3d9087a1b4a1bb255dcb1635da2402487d8d0249161 +805beec33238b832e8530645a3254aeef957e8f7ea24bcfc1054f8b9c69421145ebb8f9d893237e8a001c857fedfc77e +b1005644be4b085e3f5775aa9bd3e09a283e87ddada3082c04e7a62d303dcef3b8cf8f92944c200c7ae6bb6bdf63f832 +b4ba0e0790dc29063e577474ffe3b61f5ea2508169f5adc1e394934ebb473e356239413a17962bc3e5d3762d72cce8c2 +a157ba9169c9e3e6748d9f1dd67fbe08b9114ade4c5d8fc475f87a764fb7e6f1d21f66d7905cd730f28a1c2d8378682a +913e52b5c93989b5d15e0d91aa0f19f78d592bc28bcfdfddc885a9980c732b1f4debb8166a7c4083c42aeda93a702898 +90fbfc1567e7cd4e096a38433704d3f96a2de2f6ed3371515ccc30bc4dd0721a704487d25a97f3c3d7e4344472702d8d +89646043028ffee4b69d346907586fd12c2c0730f024acb1481abea478e61031966e72072ff1d5e65cb8c64a69ad4eb1 +b125a45e86117ee11d2fb42f680ab4a7894edd67ff927ae2c808920c66c3e55f6a9d4588eee906f33a05d592e5ec3c04 +aad47f5b41eae9be55fb4f67674ff1e4ae2482897676f964a4d2dcb6982252ee4ff56aac49578b23f72d1fced707525e +b9ddff8986145e33851b4de54d3e81faa3352e8385895f357734085a1616ef61c692d925fe62a5ed3be8ca49f5d66306 +b3cb0963387ed28c0c0adf7fe645f02606e6e1780a24d6cecef5b7c642499109974c81a7c2a198b19862eedcea2c2d8c +ac9c53c885457aaf5cb36c717a6f4077af701e0098eebd7aa600f5e4b14e6c1067255b3a0bc40e4a552025231be7de60 +8e1a8d823c4603f6648ec21d064101094f2a762a4ed37dd2f0a2d9aa97b2d850ce1e76f4a4b8cae58819b058180f7031 +b268b73bf7a179b6d22bd37e5e8cb514e9f5f8968c78e14e4f6d5700ca0d0ca5081d0344bb73b028970eebde3cb4124e +a7f57d71940f0edbd29ed8473d0149cae71d921dd15d1ff589774003e816b54b24de2620871108cec1ab9fa956ad6ce6 +8053e6416c8b120e2b999cc2fc420a6a55094c61ac7f2a6c6f0a2c108a320890e389af96cbe378936132363c0d551277 +b3823f4511125e5aa0f4269e991b435a0d6ceb523ebd91c04d7add5534e3df5fc951c504b4fd412a309fd3726b7f940b +ae6eb04674d04e982ca9a6add30370ab90e303c71486f43ed3efbe431af1b0e43e9d06c11c3412651f304c473e7dbf39 +96ab55e641ed2e677591f7379a3cd126449614181fce403e93e89b1645d82c4af524381ff986cae7f9cebe676878646d +b52423b4a8c37d3c3e2eca8f0ddbf7abe0938855f33a0af50f117fab26415fb0a3da5405908ec5fdc22a2c1f2ca64892 +82a69ce1ee92a09cc709d0e3cd22116c9f69d28ea507fe5901f5676000b5179b9abe4c1875d052b0dd42d39925e186bb +a84c8cb84b9d5cfb69a5414f0a5283a5f2e90739e9362a1e8c784b96381b59ac6c18723a4aa45988ee8ef5c1f45cc97d +afd7efce6b36813082eb98257aae22a4c1ae97d51cac7ea9c852d4a66d05ef2732116137d8432e3f117119725a817d24 +a0f5fe25af3ce021b706fcff05f3d825384a272284d04735574ce5fb256bf27100fad0b1f1ba0e54ae9dcbb9570ecad3 +8751786cb80e2e1ff819fc7fa31c2833d25086534eb12b373d31f826382430acfd87023d2a688c65b5e983927e146336 +8cf5c4b17fa4f3d35c78ce41e1dc86988fd1135cd5e6b2bb0c108ee13538d0d09ae7102609c6070f39f937b439b31e33 +a9108967a2fedd7c322711eca8159c533dd561bedcb181b646de98bf5c3079449478eab579731bee8d215ae8852c7e21 +b54c5171704f42a6f0f4e70767cdb3d96ffc4888c842eece343a01557da405961d53ffdc34d2f902ea25d3e1ed867cad +ae8d4b764a7a25330ba205bf77e9f46182cd60f94a336bbd96773cf8064e3d39caf04c310680943dc89ed1fbad2c6e0d +aa5150e911a8e1346868e1b71c5a01e2a4bb8632c195861fb6c3038a0e9b85f0e09b3822e9283654a4d7bb17db2fc5f4 +9685d3756ce9069bf8bb716cf7d5063ebfafe37e15b137fc8c3159633c4e006ff4887ddd0ae90360767a25c3f90cba7f +82155fd70f107ab3c8e414eadf226c797e07b65911508c76c554445422325e71af8c9a8e77fd52d94412a6fc29417cd3 +abfae52f53a4b6e00760468d973a267f29321997c3dbb5aee36dc1f20619551229c0c45b9d9749f410e7f531b73378e8 +81a76d921f8ef88e774fd985e786a4a330d779b93fad7def718c014685ca0247379e2e2a007ad63ee7f729cd9ed6ce1b +81947c84bc5e28e26e2e533af5ae8fe10407a7b77436dbf8f1d5b0bbe86fc659eae10f974659dc7c826c6dabd03e3a4b +92b8c07050d635b8dd4fd09df9054efe4edae6b86a63c292e73cc819a12a21dd7d104ce51fa56af6539dedf6dbe6f7b6 +b44c579e3881f32b32d20c82c207307eca08e44995dd2aac3b2692d2c8eb2a325626c80ac81c26eeb38c4137ff95add5 +97efab8941c90c30860926dea69a841f2dcd02980bf5413b9fd78d85904588bf0c1021798dbc16c8bbb32cce66c82621 +913363012528b50698e904de0588bf55c8ec5cf6f0367cfd42095c4468fcc64954fbf784508073e542fee242d0743867 +8ed203cf215148296454012bd10fddaf119203db1919a7b3d2cdc9f80e66729464fdfae42f1f2fc5af1ed53a42b40024 +ab84312db7b87d711e9a60824f4fe50e7a6190bf92e1628688dfcb38930fe87b2d53f9e14dd4de509b2216856d8d9188 +880726def069c160278b12d2258eac8fa63f729cd351a710d28b7e601c6712903c3ac1e7bbd0d21e4a15f13ca49db5aa +980699cd51bac6283959765f5174e543ed1e5f5584b5127980cbc2ef18d984ecabba45042c6773b447b8e694db066028 +aeb019cb80dc4cb4207430d0f2cd24c9888998b6f21d9bf286cc638449668d2eec0018a4cf3fe6448673cd6729335e2b +b29852f6aa6c60effdffe96ae88590c88abae732561d35cc19e82d3a51e26cb35ea00986193e07f90060756240f5346e +a0fa855adc5ba469f35800c48414b8921455950a5c0a49945d1ef6e8f2a1881f2e2dfae47de6417270a6bf49deeb091d +b6c7332e3b14813641e7272d4f69ecc7e09081df0037d6dab97ce13a9e58510f5c930d300633f208181d9205c5534001 +85a6c050f42fce560b5a8d54a11c3bbb8407abbadd859647a7b0c21c4b579ec65671098b74f10a16245dc779dff7838e +8f3eb34bb68759d53c6677de4de78a6c24dd32c8962a7fb355ed362572ef8253733e6b52bc21c9f92ecd875020a9b8de +a17dd44181e5dab4dbc128e1af93ec22624b57a448ca65d2d9e246797e4af7d079e09c6e0dfb62db3a9957ce92f098d5 +a56a1b854c3183082543a8685bb34cae1289f86cfa8123a579049dbd059e77982886bfeb61bf6e05b4b1fe4e620932e7 +aedae3033cb2fb7628cb4803435bdd7757370a86f808ae4cecb9a268ad0e875f308c048c80cbcac523de16b609683887 +9344905376aa3982b1179497fac5a1d74b14b7038fd15e3b002db4c11c8bfc7c39430db492cdaf58b9c47996c9901f28 +a3bfafdae011a19f030c749c3b071f83580dee97dd6f949e790366f95618ca9f828f1daaeabad6dcd664fcef81b6556d +81c03d8429129e7e04434dee2c529194ddb01b414feda3adee2271eb680f6c85ec872a55c9fa9d2096f517e13ed5abcc +98205ef3a72dff54c5a9c82d293c3e45d908946fa74bb749c3aabe1ab994ea93c269bcce1a266d2fe67a8f02133c5985 +85a70aeed09fda24412fadbafbbbf5ba1e00ac92885df329e147bfafa97b57629a3582115b780d8549d07d19b7867715 +b0fbe81c719f89a57d9ea3397705f898175808c5f75f8eb81c2193a0b555869ba7bd2e6bc54ee8a60cea11735e21c68c +b03a0bd160495ee626ff3a5c7d95bc79d7da7e5a96f6d10116600c8fa20bedd1132f5170f25a22371a34a2d763f2d6d0 +a90ab04091fbca9f433b885e6c1d60ab45f6f1daf4b35ec22b09909d493a6aab65ce41a6f30c98239cbca27022f61a8b +b66f92aa3bf2549f9b60b86f99a0bd19cbdd97036d4ae71ca4b83d669607f275260a497208f6476cde1931d9712c2402 +b08e1fdf20e6a9b0b4942f14fa339551c3175c1ffc5d0ab5b226b6e6a322e9eb0ba96adc5c8d59ca4259e2bdd04a7eb0 +a2812231e92c1ce74d4f5ac3ab6698520288db6a38398bb38a914ac9326519580af17ae3e27cde26607e698294022c81 +abfcbbcf1d3b9e84c02499003e490a1d5d9a2841a9e50c7babbef0b2dd20d7483371d4dc629ba07faf46db659459d296 +b0fe9f98c3da70927c23f2975a9dc4789194d81932d2ad0f3b00843dd9cbd7fb60747a1da8fe5a79f136a601becf279d +b130a6dba7645165348cb90f023713bed0eefbd90a976b313521c60a36d34f02032e69a2bdcf5361e343ed46911297ec +862f0cffe3020cea7a5fd4703353aa1eb1be335e3b712b29d079ff9f7090d1d8b12013011e1bdcbaa80c44641fd37c9f +8c6f11123b26633e1abb9ed857e0bce845b2b3df91cc7b013b2fc77b477eee445da0285fc6fc793e29d5912977f40916 +91381846126ea819d40f84d3005e9fb233dc80071d1f9bb07f102bf015f813f61e5884ffffb4f5cd333c1b1e38a05a58 +8add7d908de6e1775adbd39c29a391f06692b936518db1f8fde74eb4f533fc510673a59afb86e3a9b52ade96e3004c57 +8780e086a244a092206edcde625cafb87c9ab1f89cc3e0d378bc9ee776313836160960a82ec397bc3800c0a0ec3da283 +a6cb4cd9481e22870fdd757fae0785edf4635e7aacb18072fe8dc5876d0bab53fb99ce40964a7d3e8bcfff6f0ab1332f +af30ff47ecc5b543efba1ba4706921066ca8bb625f40e530fb668aea0551c7647a9d126e8aba282fbcce168c3e7e0130 +91b0bcf408ce3c11555dcb80c4410b5bc2386d3c05caec0b653352377efdcb6bab4827f2018671fc8e4a0e90d772acc1 +a9430b975ef138b6b2944c7baded8fe102d31da4cfe3bd3d8778bda79189c99d38176a19c848a19e2d1ee0bddd9a13c1 +aa5a4eef849d7c9d2f4b018bd01271c1dd83f771de860c4261f385d3bdcc130218495860a1de298f14b703ec32fa235f +b0ce79e7f9ae57abe4ff366146c3b9bfb38b0dee09c28c28f5981a5d234c6810ad4d582751948affb480d6ae1c8c31c4 +b75122748560f73d15c01a8907d36d06dc068e82ce22b84b322ac1f727034493572f7907dec34ebc3ddcc976f2f89ed7 +b0fc7836369a3e4411d34792d6bd5617c14f61d9bba023dda64e89dc5fb0f423244e9b48ee64869258931daa9753a56f +8956d7455ae9009d70c6e4a0bcd7610e55f37494cf9897a8f9e1b904cc8febc3fd2d642ebd09025cfff4609ad7e3bc52 +ad741efe9e472026aa49ae3d9914cb9c1a6f37a54f1a6fe6419bebd8c7d68dca105a751c7859f4389505ede40a0de786 +b52f418797d719f0d0d0ffb0846788b5cba5d0454a69a2925de4b0b80fa4dd7e8c445e5eac40afd92897ed28ca650566 +a0ab65fb9d42dd966cd93b1de01d7c822694669dd2b7a0c04d99cd0f3c3de795f387b9c92da11353412f33af5c950e9a +a0052f44a31e5741a331f7cac515a08b3325666d388880162d9a7b97598fde8b61f9ff35ff220df224eb5c4e40ef0567 +a0101cfdc94e42b2b976c0d89612a720e55d145a5ef6ef6f1f78cf6de084a49973d9b5d45915349c34ce712512191e3c +a0dd99fcf3f5cead5aaf08e82212df3a8bb543c407a4d6fab88dc5130c1769df3f147e934a46f291d6c1a55d92b86917 +a5939153f0d1931bbda5cf6bdf20562519ea55fbfa978d6dbc6828d298260c0da7a50c37c34f386e59431301a96c2232 +9568269f3f5257200f9ca44afe1174a5d3cf92950a7f553e50e279c239e156a9faaa2a67f288e3d5100b4142efe64856 +b746b0832866c23288e07f24991bbf687cad794e7b794d3d3b79367566ca617d38af586cdc8d6f4a85a34835be41d54f +a871ce28e39ab467706e32fec1669fda5a4abba2f8c209c6745df9f7a0fa36bbf1919cf14cb89ea26fa214c4c907ae03 +a08dacdd758e523cb8484f6bd070642c0c20e184abdf8e2a601f61507e93952d5b8b0c723c34fcbdd70a8485eec29db2 +85bdb78d501382bb95f1166b8d032941005661aefd17a5ac32df9a3a18e9df2fc5dc2c1f07075f9641af10353cecc0c9 +98d730c28f6fa692a389e97e368b58f4d95382fad8f0baa58e71a3d7baaea1988ead47b13742ce587456f083636fa98e +a557198c6f3d5382be9fb363feb02e2e243b0c3c61337b3f1801c4a0943f18e38ce1a1c36b5c289c8fa2aa9d58742bab +89174f79201742220ac689c403fc7b243eed4f8e3f2f8aba0bf183e6f5d4907cb55ade3e238e3623d9885f03155c4d2b +b891d600132a86709e06f3381158db300975f73ea4c1f7c100358e14e98c5fbe792a9af666b85c4e402707c3f2db321e +b9e5b2529ef1043278c939373fc0dbafe446def52ddd0a8edecd3e4b736de87e63e187df853c54c28d865de18a358bb6 +8589b2e9770340c64679062c5badb7bbef68f55476289b19511a158a9a721f197da03ece3309e059fc4468b15ac33aa3 +aad8c6cd01d785a881b446f06f1e9cd71bca74ba98674c2dcddc8af01c40aa7a6d469037498b5602e76e9c91a58d3dbd +abaccb1bd918a8465f1bf8dbe2c9ad4775c620b055550b949a399f30cf0d9eb909f3851f5b55e38f9e461e762f88f499 +ae62339d26db46e85f157c0151bd29916d5cc619bd4b832814b3fd2f00af8f38e7f0f09932ffe5bba692005dab2d9a74 +93a6ff30a5c0edf8058c89aba8c3259e0f1b1be1b80e67682de651e5346f7e1b4b4ac3d87cbaebf198cf779524aff6bf +8980a2b1d8f574af45b459193c952400b10a86122b71fca2acb75ee0dbd492e7e1ef5b959baf609a5172115e371f3177 +8c2f49f3666faee6940c75e8c7f6f8edc3f704cca7a858bbb7ee5e96bba3b0cf0993996f781ba6be3b0821ef4cb75039 +b14b9e348215b278696018330f63c38db100b0542cfc5be11dc33046e3bca6a13034c4ae40d9cef9ea8b34fef0910c4e +b59bc3d0a30d66c16e6a411cb641f348cb1135186d5f69fda8b0a0934a5a2e7f6199095ba319ec87d3fe8f1ec4a06368 +8874aca2a3767aa198e4c3fec2d9c62d496bc41ff71ce242e9e082b7f38cdf356089295f80a301a3cf1182bde5308c97 +b1820ebd61376d91232423fc20bf008b2ba37e761199f4ef0648ea2bd70282766799b4de814846d2f4d516d525c8daa7 +a6b202e5dedc16a4073e04a11af3a8509b23dfe5a1952f899adeb240e75c3f5bde0c424f811a81ea48d343591faffe46 +a69becee9c93734805523b92150a59a62eed4934f66056b645728740d42223f2925a1ad38359ba644da24d9414f4cdda +ad72f0f1305e37c7e6b48c272323ee883320994cb2e0d850905d6655fafc9f361389bcb9c66b3ff8d2051dbb58c8aa96 +b563600bd56fad7c8853af21c6a02a16ed9d8a8bbeea2c31731d63b976d83cb05b9779372d898233e8fd597a75424797 +b0abb78ce465bf7051f563c62e8be9c57a2cc997f47c82819300f36e301fefd908894bb2053a9d27ce2d0f8c46d88b5b +a071a85fb8274bac2202e0cb8e0e2028a5e138a82d6e0374d39ca1884a549c7c401312f00071b91f455c3a2afcfe0cda +b931c271513a0f267b9f41444a5650b1918100b8f1a64959c552aff4e2193cc1b9927906c6fa7b8a8c68ef13d79aaa52 +a6a1bb9c7d32cb0ca44d8b75af7e40479fbce67d216b48a2bb680d3f3a772003a49d3cd675fc64e9e0f8fabeb86d6d61 +b98d609858671543e1c3b8564162ad828808bb50ded261a9f8690ded5b665ed8368c58f947365ed6e84e5a12e27b423d +b3dca58cd69ec855e2701a1d66cad86717ff103ef862c490399c771ad28f675680f9500cb97be48de34bcdc1e4503ffd +b34867c6735d3c49865e246ddf6c3b33baf8e6f164db3406a64ebce4768cb46b0309635e11be985fee09ab7a31d81402 +acb966c554188c5b266624208f31fab250b3aa197adbdd14aee5ab27d7fb886eb4350985c553b20fdf66d5d332bfd3fe +943c36a18223d6c870d54c3b051ef08d802b85e9dd6de37a51c932f90191890656c06adfa883c87b906557ae32d09da0 +81bca7954d0b9b6c3d4528aadf83e4bc2ef9ea143d6209bc45ae9e7ae9787dbcd8333c41f12c0b6deee8dcb6805e826a +aba176b92256efb68f574e543479e5cf0376889fb48e3db4ebfb7cba91e4d9bcf19dcfec444c6622d9398f06de29e2b9 +b9f743691448053216f6ece7cd699871fff4217a1409ceb8ab7bdf3312d11696d62c74b0664ba0a631b1e0237a8a0361 +a383c2b6276fa9af346b21609326b53fb14fdf6f61676683076e80f375b603645f2051985706d0401e6fbed7eb0666b6 +a9ef2f63ec6d9beb8f3d04e36807d84bda87bdd6b351a3e4a9bf7edcb5618c46c1f58cfbf89e64b40f550915c6988447 +a141b2d7a82f5005eaea7ae7d112c6788b9b95121e5b70b7168d971812f3381de8b0082ac1f0a82c7d365922ebd2d26a +b1b76ef8120e66e1535c17038b75255a07849935d3128e3e99e56567b842fb1e8d56ef932d508d2fb18b82f7868fe1a9 +8e2e234684c81f21099f5c54f6bbe2dd01e3b172623836c77668a0c49ce1fe218786c3827e4d9ae2ea25c50a8924fb3c +a5caf5ff948bfd3c4ca3ffbdfcd91eec83214a6c6017235f309a0bbf7061d3b0b466307c00b44a1009cf575163898b43 +986415a82ca16ebb107b4c50b0c023c28714281db0bcdab589f6cb13d80e473a3034b7081b3c358e725833f6d845cb14 +b94836bf406ac2cbacb10e6df5bcdfcc9d9124ae1062767ca4e322d287fd5e353fdcebd0e52407cb3cd68571258a8900 +83c6d70a640b33087454a4788dfd9ef3ed00272da084a8d36be817296f71c086b23b576f98178ab8ca6a74f04524b46b +ad4115182ad784cfe11bcfc5ce21fd56229cc2ce77ac82746e91a2f0aa53ca6593a22efd2dc4ed8d00f84542643d9c58 +ab1434c5e5065da826d10c2a2dba0facccab0e52b506ce0ce42fbe47ced5a741797151d9ecc99dc7d6373cfa1779bbf6 +8a8b591d82358d55e6938f67ea87a89097ab5f5496f7260adb9f649abb289da12b498c5b2539c2f9614fb4e21b1f66b0 +964f355d603264bc1f44c64d6d64debca66f37dff39c971d9fc924f2bc68e6c187b48564a6dc82660a98b035f8addb5d +b66235eaaf47456bc1dc4bde454a028e2ce494ece6b713a94cd6bf27cf18c717fd0c57a5681caaa2ad73a473593cdd7a +9103e3bb74304186fa4e3e355a02da77da4aca9b7e702982fc2082af67127ebb23a455098313c88465bc9b7d26820dd5 +b6a42ff407c9dd132670cdb83cbad4b20871716e44133b59a932cd1c3f97c7ac8ff7f61acfaf8628372508d8dc8cad7c +883a9c21c16a167a4171b0f084565c13b6f28ba7c4977a0de69f0a25911f64099e7bbb4da8858f2e93068f4155d04e18 +8dbb3220abc6a43220adf0331e3903d3bfd1d5213aadfbd8dfcdf4b2864ce2e96a71f35ecfb7a07c3bbabf0372b50271 +b4ad08aee48e176bda390b7d9acf2f8d5eb008f30d20994707b757dc6a3974b2902d29cd9b4d85e032810ad25ac49e97 +865bb0f33f7636ec501bb634e5b65751c8a230ae1fa807a961a8289bbf9c7fe8c59e01fbc4c04f8d59b7f539cf79ddd5 +86a54d4c12ad1e3605b9f93d4a37082fd26e888d2329847d89afa7802e815f33f38185c5b7292293d788ad7d7da1df97 +b26c8615c5e47691c9ff3deca3021714662d236c4d8401c5d27b50152ce7e566266b9d512d14eb63e65bc1d38a16f914 +827639d5ce7db43ba40152c8a0eaad443af21dc92636cc8cc2b35f10647da7d475a1e408901cd220552fddad79db74df +a2b79a582191a85dbe22dc384c9ca3de345e69f6aa370aa6d3ff1e1c3de513e30b72df9555b15a46586bd27ea2854d9d +ae0d74644aba9a49521d3e9553813bcb9e18f0b43515e4c74366e503c52f47236be92dfbd99c7285b3248c267b1de5a0 +80fb0c116e0fd6822a04b9c25f456bdca704e2be7bdc5d141dbf5d1c5eeb0a2c4f5d80db583b03ef3e47517e4f9a1b10 +ac3a1fa3b4a2f30ea7e0a114cdc479eb51773573804c2a158d603ad9902ae8e39ffe95df09c0d871725a5d7f9ba71a57 +b56b2b0d601cba7f817fa76102c68c2e518c6f20ff693aad3ff2e07d6c4c76203753f7f91686b1801e8c4659e4d45c48 +89d50c1fc56e656fb9d3915964ebce703cb723fe411ab3c9eaa88ccc5d2b155a9b2e515363d9c600d3c0cee782c43f41 +b24207e61462f6230f3cd8ccf6828357d03e725769f7d1de35099ef9ee4dca57dbce699bb49ed994462bee17059d25ce +b886f17fcbcbfcd08ac07f04bb9543ef58510189decaccea4b4158c9174a067cb67d14b6be3c934e6e2a18c77efa9c9c +b9c050ad9cafd41c6e2e192b70d080076eed59ed38ea19a12bd92fa17b5d8947d58d5546aaf5e8e27e1d3b5481a6ce51 +aaf7a34d3267e3b1ddbc54c641e3922e89303f7c86ebebc7347ebca4cffad5b76117dac0cbae1a133053492799cd936f +a9ee604ada50adef82e29e893070649d2d4b7136cc24fa20e281ce1a07bd736bf0de7c420369676bcbcecff26fb6e900 +9855315a12a4b4cf80ab90b8bd13003223ba25206e52fd4fe6a409232fbed938f30120a3db23eab9c53f308bd8b9db81 +8cd488dd7a24f548a3cf03c54dec7ff61d0685cb0f6e5c46c2d728e3500d8c7bd6bba0156f4bf600466fda53e5b20444 +890ad4942ebac8f5b16c777701ab80c68f56fa542002b0786f8fea0fb073154369920ac3dbfc07ea598b82f4985b8ced +8de0cf9ddc84c9b92c59b9b044387597799246b30b9f4d7626fc12c51f6e423e08ee4cbfe9289984983c1f9521c3e19d +b474dfb5b5f4231d7775b3c3a8744956b3f0c7a871d835d7e4fd9cc895222c7b868d6c6ce250de568a65851151fac860 +86433b6135d9ed9b5ee8cb7a6c40e5c9d30a68774cec04988117302b8a02a11a71a1e03fd8e0264ef6611d219f103007 +80b9ed4adbe9538fb1ef69dd44ec0ec5b57cbfea820054d8d445b4261962624b4c70ac330480594bc5168184378379c3 +8b2e83562ccd23b7ad2d17f55b1ab7ef5fbef64b3a284e6725b800f3222b8bdf49937f4a873917ada9c4ddfb090938c2 +abe78cebc0f5a45d754140d1f685e387489acbfa46d297a8592aaa0d676a470654f417a4f7d666fc0b2508fab37d908e +a9c5f8ff1f8568e252b06d10e1558326db9901840e6b3c26bbd0cd5e850cb5fb3af3f117dbb0f282740276f6fd84126f +975f8dc4fb55032a5df3b42b96c8c0ffecb75456f01d4aef66f973cb7270d4eff32c71520ceefc1adcf38d77b6b80c67 +b043306ed2c3d8a5b9a056565afd8b5e354c8c4569fda66b0d797a50a3ce2c08cffbae9bbe292da69f39e89d5dc7911e +8d2afc36b1e44386ba350c14a6c1bb31ff6ea77128a0c5287584ac3584282d18516901ce402b4644a53db1ed8e7fa581 +8c294058bed53d7290325c363fe243f6ec4f4ea2343692f4bac8f0cb86f115c069ccb8334b53d2e42c067691ad110dba +b92157b926751aaf7ef82c1aa8c654907dccab6376187ee8b3e8c0c82811eae01242832de953faa13ebaff7da8698b3e +a780c4bdd9e4ba57254b09d745075cecab87feda78c88ffee489625c5a3cf96aa6b3c9503a374a37927d9b78de9bd22b +811f548ef3a2e6a654f7dcb28ac9378de9515ed61e5a428515d9594a83e80b35c60f96a5cf743e6fab0d3cb526149f49 +85a4dccf6d90ee8e094731eec53bd00b3887aec6bd81a0740efddf812fd35e3e4fe4f983afb49a8588691c202dabf942 +b152c2da6f2e01c8913079ae2b40a09b1f361a80f5408a0237a8131b429677c3157295e11b365b1b1841924b9efb922e +849b9efee8742502ffd981c4517c88ed33e4dd518a330802caff168abae3cd09956a5ee5eda15900243bc2e829016b74 +955a933f3c18ec0f1c0e38fa931e4427a5372c46a3906ebe95082bcf878c35246523c23f0266644ace1fa590ffa6d119 +911989e9f43e580c886656377c6f856cdd4ff1bd001b6db3bbd86e590a821d34a5c6688a29b8d90f28680e9fdf03ba69 +b73b8b4f1fd6049fb68d47cd96a18fcba3f716e0a1061aa5a2596302795354e0c39dea04d91d232aec86b0bf2ba10522 +90f87456d9156e6a1f029a833bf3c7dbed98ca2f2f147a8564922c25ae197a55f7ea9b2ee1f81bf7383197c4bad2e20c +903cba8b1e088574cb04a05ca1899ab00d8960580c884bd3c8a4c98d680c2ad11410f2b75739d6050f91d7208cac33a5 +9329987d42529c261bd15ecedd360be0ea8966e7838f32896522c965adfc4febf187db392bd441fb43bbd10c38fdf68b +8178ee93acf5353baa349285067b20e9bb41aa32d77b5aeb7384fe5220c1fe64a2461bd7a83142694fe673e8bbf61b7c +a06a8e53abcff271b1394bcc647440f81fb1c1a5f29c27a226e08f961c3353f4891620f2d59b9d1902bf2f5cc07a4553 +aaf5fe493b337810889e777980e6bbea6cac39ac66bc0875c680c4208807ac866e9fda9b5952aa1d04539b9f4a4bec57 +aa058abb1953eceac14ccfa7c0cc482a146e1232905dcecc86dd27f75575285f06bbae16a8c9fe8e35d8713717f5f19f +8f15dd732799c879ca46d2763453b359ff483ca33adb1d0e0a57262352e0476c235987dc3a8a243c74bc768f93d3014c +a61cc8263e9bc03cce985f1663b8a72928a607121005a301b28a278e9654727fd1b22bc8a949af73929c56d9d3d4a273 +98d6dc78502d19eb9f921225475a6ebcc7b44f01a2df6f55ccf6908d65b27af1891be2a37735f0315b6e0f1576c1f8d8 +8bd258b883f3b3793ec5be9472ad1ff3dc4b51bc5a58e9f944acfb927349ead8231a523cc2175c1f98e7e1e2b9f363b8 +aeacc2ecb6e807ad09bedd99654b097a6f39840e932873ace02eabd64ccfbb475abdcb62939a698abf17572d2034c51e +b8ccf78c08ccd8df59fd6eda2e01de328bc6d8a65824d6f1fc0537654e9bc6bf6f89c422dd3a295cce628749da85c864 +8f91fd8cb253ba2e71cc6f13da5e05f62c2c3b485c24f5d68397d04665673167fce1fc1aec6085c69e87e66ec555d3fd +a254baa10cb26d04136886073bb4c159af8a8532e3fd36b1e9c3a2e41b5b2b6a86c4ebc14dbe624ee07b7ccdaf59f9ab +94e3286fe5cd68c4c7b9a7d33ae3d714a7f265cf77cd0e9bc19fc51015b1d1c34ad7e3a5221c459e89f5a043ee84e3a9 +a279da8878af8d449a9539bec4b17cea94f0242911f66fab275b5143ab040825f78c89cb32a793930609415cfa3a1078 +ac846ceb89c9e5d43a2991c8443079dc32298cd63e370e64149cec98cf48a6351c09c856f2632fd2f2b3d685a18bbf8b +a847b27995c8a2e2454aaeb983879fb5d3a23105c33175839f7300b7e1e8ec3efd6450e9fa3f10323609dee7b98c6fd5 +a2f432d147d904d185ff4b2de8c6b82fbea278a2956bc406855b44c18041854c4f0ecccd472d1d0dff1d8aa8e281cb1d +94a48ad40326f95bd63dff4755f863a1b79e1df771a1173b17937f9baba57b39e651e7695be9f66a472f098b339364fc +a12a0ccd8f96e96e1bc6494341f7ebce959899341b3a084aa1aa87d1c0d489ac908552b7770b887bb47e7b8cbc3d8e66 +81a1f1681bda923bd274bfe0fbb9181d6d164fe738e54e25e8d4849193d311e2c4253614ed673c98af2c798f19a93468 +abf71106a05d501e84cc54610d349d7d5eae21a70bd0250f1bebbf412a130414d1c8dbe673ffdb80208fd72f1defa4d4 +96266dc2e0df18d8136d79f5b59e489978eee0e6b04926687fe389d4293c14f36f055c550657a8e27be4118b64254901 +8df5dcbefbfb4810ae3a413ca6b4bf08619ca53cd50eb1dde2a1c035efffc7b7ac7dff18d403253fd80104bd83dc029e +9610b87ff02e391a43324a7122736876d5b3af2a137d749c52f75d07b17f19900b151b7f439d564f4529e77aa057ad12 +a90a5572198b40fe2fcf47c422274ff36c9624df7db7a89c0eb47eb48a73a03c985f4ac5016161c76ca317f64339bce1 +98e5e61a6ab6462ba692124dba7794b6c6bde4249ab4fcc98c9edd631592d5bc2fb5e38466691a0970a38e48d87c2e43 +918cefb8f292f78d4db81462c633daf73b395e772f47b3a7d2cea598025b1d8c3ec0cbff46cdb23597e74929981cde40 +a98918a5dc7cf610fe55f725e4fd24ce581d594cb957bb9b4e888672e9c0137003e1041f83e3f1d7b9caab06462c87d4 +b92b74ac015262ca66c33f2d950221e19d940ba3bf4cf17845f961dc1729ae227aa9e1f2017829f2135b489064565c29 +a053ee339f359665feb178b4e7ee30a85df37debd17cacc5a27d6b3369d170b0114e67ad1712ed26d828f1df641bcd99 +8c3c8bad510b35da5ce5bd84b35c958797fbea024ad1c97091d2ff71d9b962e9222f65a9b776e5b3cc29c36e1063d2ee +af99dc7330fe7c37e850283eb47cc3257888e7c197cb0d102edf94439e1e02267b6a56306d246c326c4c79f9dc8c6986 +afecb2dc34d57a725efbd7eb93d61eb29dbe8409b668ab9ea040791f5b796d9be6d4fc10d7f627bf693452f330cf0435 +93334fedf19a3727a81a6b6f2459db859186227b96fe7a391263f69f1a0884e4235de64d29edebc7b99c44d19e7c7d7a +89579c51ac405ad7e9df13c904061670ce4b38372492764170e4d3d667ed52e5d15c7cd5c5991bbfa3a5e4e3fa16363e +9778f3e8639030f7ef1c344014f124e375acb8045bd13d8e97a92c5265c52de9d1ffebaa5bc3e1ad2719da0083222991 +88f77f34ee92b3d36791bdf3326532524a67d544297dcf1a47ff00b47c1b8219ff11e34034eab7d23b507caa2fd3c6b9 +a699c1e654e7c484431d81d90657892efeb4adcf72c43618e71ca7bd7c7a7ebbb1db7e06e75b75dc4c74efd306b5df3f +81d13153baebb2ef672b5bdb069d3cd669ce0be96b742c94e04038f689ff92a61376341366b286eee6bf3ae85156f694 +81efb17de94400fdacc1deec2550cbe3eecb27c7af99d8207e2f9be397e26be24a40446d2a09536bb5172c28959318d9 +989b21ebe9ceab02488992673dc071d4d5edec24bff0e17a4306c8cb4b3c83df53a2063d1827edd8ed16d6e837f0d222 +8d6005d6536825661b13c5fdce177cb37c04e8b109b7eb2b6d82ea1cb70efecf6a0022b64f84d753d165edc2bba784a3 +a32607360a71d5e34af2271211652d73d7756d393161f4cf0da000c2d66a84c6826e09e759bd787d4fd0305e2439d342 +aaad8d6f6e260db45d51b2da723be6fa832e76f5fbcb77a9a31e7f090dd38446d3b631b96230d78208cae408c288ac4e +abcfe425255fd3c5cffd3a818af7650190c957b6b07b632443f9e33e970a8a4c3bf79ac9b71f4d45f238a04d1c049857 +aeabf026d4c783adc4414b5923dbd0be4b039cc7201219f7260d321f55e9a5b166d7b5875af6129c034d0108fdc5d666 +af49e740c752d7b6f17048014851f437ffd17413c59797e5078eaaa36f73f0017c3e7da020310cfe7d3c85f94a99f203 +8854ca600d842566e3090040cd66bb0b3c46dae6962a13946f0024c4a8aca447e2ccf6f240045f1ceee799a88cb9210c +b6c03b93b1ab1b88ded8edfa1b487a1ed8bdce8535244dddb558ffb78f89b1c74058f80f4db2320ad060d0c2a9c351cc +b5bd7d17372faff4898a7517009b61a7c8f6f0e7ed4192c555db264618e3f6e57fb30a472d169fea01bf2bf0362a19a8 +96eb1d38319dc74afe7e7eb076fcd230d19983f645abd14a71e6103545c01301b31c47ae931e025f3ecc01fb3d2f31fa +b55a8d30d4403067def9b65e16f867299f8f64c9b391d0846d4780bc196569622e7e5b64ce799b5aefac8f965b2a7a7b +8356d199a991e5cbbff608752b6291731b6b6771aed292f8948b1f41c6543e4ab1bedc82dd26d10206c907c03508df06 +97f4137445c2d98b0d1d478049de952610ad698c91c9d0f0e7227d2aae690e9935e914ec4a2ea1fbf3fc1dddfeeacebb +af5621707e0938320b15ddfc87584ab325fbdfd85c30efea36f8f9bd0707d7ec12c344eff3ec21761189518d192df035 +8ac7817e71ea0825b292687928e349da7140285d035e1e1abff0c3704fa8453faaae343a441b7143a74ec56539687cc4 +8a5e0a9e4758449489df10f3386029ada828d1762e4fb0a8ffe6b79e5b6d5d713cb64ed95960e126398b0cdb89002bc9 +81324be4a71208bbb9bca74b77177f8f1abb9d3d5d9db195d1854651f2cf333cd618d35400da0f060f3e1b025124e4b2 +849971d9d095ae067525b3cbc4a7dfae81f739537ade6d6cec1b42fb692d923176197a8770907c58069754b8882822d6 +89f830825416802477cc81fdf11084885865ee6607aa15aa4eb28e351c569c49b8a1b9b5e95ddc04fa0ebafe20071313 +9240aeeaff37a91af55f860b9badd466e8243af9e8c96a7aa8cf348cd270685ab6301bc135b246dca9eda696f8b0e350 +acf74db78cc33138273127599eba35b0fb4e7b9a69fe02dae18fc6692d748ca332bd00b22afa8e654ed587aab11833f3 +b091e6d37b157b50d76bd297ad752220cd5c9390fac16dc838f8557aed6d9833fc920b61519df21265406216315e883f +a6446c429ebf1c7793c622250e23594c836b2fbcaf6c5b3d0995e1595a37f50ea643f3e549b0be8bbdadd69044d72ab9 +93e675353bd60e996bf1c914d5267eeaa8a52fc3077987ccc796710ef9becc6b7a00e3d82671a6bdfb8145ee3c80245a +a2f731e43251d04ed3364aa2f072d05355f299626f2d71a8a38b6f76cf08c544133f7d72dd0ab4162814b674b9fc7fa6 +97a8b791a5a8f6e1d0de192d78615d73d0c38f1e557e4e15d15adc663d649e655bc8da3bcc499ef70112eafe7fb45c7a +98cd624cbbd6c53a94469be4643c13130916b91143425bcb7d7028adbbfede38eff7a21092af43b12d4fab703c116359 +995783ce38fd5f6f9433027f122d4cf1e1ff3caf2d196ce591877f4a544ce9113ead60de2de1827eaff4dd31a20d79a8 +8cf251d6f5229183b7f3fe2f607a90b4e4b6f020fb4ba2459d28eb8872426e7be8761a93d5413640a661d73e34a5b81f +b9232d99620652a3aa7880cad0876f153ff881c4ed4c0c2e7b4ea81d5d42b70daf1a56b869d752c3743c6d4c947e6641 +849716f938f9d37250cccb1bf77f5f9fde53096cdfc6f2a25536a6187029a8f1331cdbed08909184b201f8d9f04b792f +80c7c4de098cbf9c6d17b14eba1805e433b5bc905f6096f8f63d34b94734f2e4ebf4bce8a177efd1186842a61204a062 +b790f410cf06b9b8daadceeb4fd5ff40a2deda820c8df2537e0a7554613ae3948e149504e3e79aa84889df50c8678eeb +813aab8bd000299cd37485b73cd7cba06e205f8efb87f1efc0bae8b70f6db2bc7702eb39510ad734854fb65515fe9d0f +94f0ab7388ac71cdb67f6b85dfd5945748afb2e5abb622f0b5ad104be1d4d0062b651f134ba22385c9e32c2dfdcccce1 +ab6223dca8bd6a4f969e21ccd9f8106fc5251d321f9e90cc42cea2424b3a9c4e5060a47eeef6b23c7976109b548498e8 +859c56b71343fce4d5c5b87814c47bf55d581c50fd1871a17e77b5e1742f5af639d0e94d19d909ec7dfe27919e954e0c +aae0d632b6191b8ad71b027791735f1578e1b89890b6c22e37de0e4a6074886126988fe8319ae228ac9ef3b3bcccb730 +8ca9f32a27a024c3d595ecfaf96b0461de57befa3b331ab71dc110ec3be5824fed783d9516597537683e77a11d334338 +a061df379fb3f4b24816c9f6cd8a94ecb89b4c6dc6cd81e4b8096fa9784b7f97ab3540259d1de9c02eb91d9945af4823 +998603102ac63001d63eb7347a4bb2bf4cf33b28079bb48a169076a65c20d511ccd3ef696d159e54cc8e772fb5d65d50 +94444d96d39450872ac69e44088c252c71f46be8333a608a475147752dbb99db0e36acfc5198f158509401959c12b709 +ac1b51b6c09fe055c1d7c9176eea9adc33f710818c83a1fbfa073c8dc3a7eb3513cbdd3f5960b7845e31e3e83181e6ba +803d530523fc9e1e0f11040d2412d02baef3f07eeb9b177fa9bfa396af42eea898a4276d56e1db998dc96ae47b644cb2 +85a3c9fc7638f5bf2c3e15ba8c2fa1ae87eb1ceb44c6598c67a2948667a9dfa41e61f66d535b4e7fda62f013a5a8b885 +a961cf5654c46a1a22c29baf7a4e77837a26b7f138f410e9d1883480ed5fa42411d522aba32040b577046c11f007388e +ad1154142344f494e3061ef45a34fab1aaacf5fdf7d1b26adbb5fbc3d795655fa743444e39d9a4119b4a4f82a6f30441 +b1d6c30771130c77806e7ab893b73d4deb590b2ff8f2f8b5e54c2040c1f3e060e2bd99afc668cf706a2df666a508bbf6 +a00361fd440f9decabd98d96c575cd251dc94c60611025095d1201ef2dedde51cb4de7c2ece47732e5ed9b3526c2012c +a85c5ab4d17d328bda5e6d839a9a6adcc92ff844ec25f84981e4f44a0e8419247c081530f8d9aa629c7eb4ca21affba6 +a4ddd3eab4527a2672cf9463db38bc29f61460e2a162f426b7852b7a7645fbd62084fd39a8e4d60e1958cce436dd8f57 +811648140080fe55b8618f4cf17f3c5a250adb0cd53d885f2ddba835d2b4433188e41fc0661faac88e4ff910b16278c0 +b85c7f1cfb0ed29addccf7546023a79249e8f15ac2d14a20accbfef4dd9dc11355d599815fa09d2b6b4e966e6ea8cff1 +a10b5d8c260b159043b020d5dd62b3467df2671afea6d480ca9087b7e60ed170c82b121819d088315902842d66c8fb45 +917e191df1bcf3f5715419c1e2191da6b8680543b1ba41fe84ed07ef570376e072c081beb67b375fca3565a2565bcabb +881fd967407390bfd7badc9ab494e8a287559a01eb07861f527207c127eadea626e9bcc5aa9cca2c5112fbac3b3f0e9c +959fd71149af82cc733619e0e5bf71760ca2650448c82984b3db74030d0e10f8ab1ce1609a6de6f470fe8b5bd90df5b3 +a3370898a1c5f33d15adb4238df9a6c945f18b9ada4ce2624fc32a844f9ece4c916a64e9442225b6592afa06d2e015f2 +817efb8a791435e4236f7d7b278181a5fa34587578c629dbc14fbf9a5c26772290611395eecd20222a4c58649fc256d8 +a04c9876acf2cfdc8ef96de4879742709270fa1d03fe4c8511fbef2d59eb0aaf0336fa2c7dfe41a651157377fa217813 +81e15875d7ea7f123e418edf14099f2e109d4f3a6ce0eb65f67fe9fb10d2f809a864a29f60ad3fc949f89e2596b21783 +b49f529975c09e436e6bc202fdc16e3fdcbe056db45178016ad6fdece9faad4446343e83aed096209690b21a6910724f +879e8eda589e1a279f7f49f6dd0580788c040d973748ec4942dbe51ea8fbd05983cc919b78f0c6b92ef3292ae29db875 +81a2b74b2118923f34139a102f3d95e7eee11c4c2929c2576dee200a5abfd364606158535a6c9e4178a6a83dbb65f3c4 +8913f281d8927f2b45fc815d0f7104631cb7f5f7278a316f1327d670d15868daadd2a64e3eb98e1f53fe7e300338cc80 +a6f815fba7ef9af7fbf45f93bc952e8b351f5de6568a27c7c47a00cb39a254c6b31753794f67940fc7d2e9cc581529f4 +b3722a15c66a0014ce4d082de118def8d39190c15678a472b846225585f3a83756ae1b255b2e3f86a26168878e4773b2 +817ae61ab3d0dd5b6e24846b5a5364b1a7dc2e77432d9fed587727520ae2f307264ea0948c91ad29f0aea3a11ff38624 +b3db467464415fcad36dc1de2d6ba7686772a577cc2619242ac040d6734881a45d3b40ed4588db124e4289cfeec4bbf6 +ad66a14f5a54ac69603b16e5f1529851183da77d3cc60867f10aea41339dd5e06a5257982e9e90a352cdd32750f42ee4 +adafa3681ef45d685555601a25a55cf23358319a17f61e2179e704f63df83a73bdd298d12cf6cef86db89bd17119e11d +a379dc44cb6dd3b9d378c07b2ec654fec7ca2f272de6ba895e3d00d20c9e4c5550498a843c8ac67e4221db2115bedc1c +b7bf81c267a78efc6b9e5a904574445a6487678d7ef70054e3e93ea6a23f966c2b68787f9164918e3b16d2175459ed92 +b41d66a13a4afafd5760062b77f79de7e6ab8ccacde9c6c5116a6d886912fb491dc027af435b1b44aacc6af7b3c887f2 +9904d23a7c1c1d2e4bab85d69f283eb0a8e26d46e8b7b30224438015c936729b2f0af7c7c54c03509bb0500acb42d8a4 +ae30d65e9e20c3bfd603994ae2b175ff691d51f3e24b2d058b3b8556d12ca4c75087809062dddd4aaac81c94d15d8a17 +9245162fab42ac01527424f6013310c3eb462982518debef6c127f46ba8a06c705d7dc9f0a41e796ba8d35d60ae6cc64 +87fab853638d7a29a20f3ba2b1a7919d023e9415bfa78ebb27973d8cbc7626f584dc5665d2e7ad71f1d760eba9700d88 +85aac46ecd330608e5272430970e6081ff02a571e8ea444f1e11785ea798769634a22a142d0237f67b75369d3c484a8a +938c85ab14894cc5dfce3d80456f189a2e98eddbc8828f4ff6b1df1dcb7b42b17ca2ff40226a8a1390a95d63dca698dd +a18ce1f846e3e3c4d846822f60271eecf0f5d7d9f986385ac53c5ace9589dc7c0188910448c19b91341a1ef556652fa9 +8611608a9d844f0e9d7584ad6ccf62a5087a64f764caf108db648a776b5390feb51e5120f0ef0e9e11301af3987dd7dc +8106333ba4b4de8d1ae43bc9735d3fea047392e88efd6a2fa6f7b924a18a7a265ca6123c3edc0f36307dd7fb7fe89257 +a91426fa500951ff1b051a248c050b7139ca30dde8768690432d597d2b3c4357b11a577be6b455a1c5d145264dcf81fc +b7f9f90e0e450f37b081297f7f651bad0496a8b9afd2a4cf4120a2671aaaa8536dce1af301258bfbfdb122afa44c5048 +84126da6435699b0c09fa4032dec73d1fca21d2d19f5214e8b0bea43267e9a8dd1fc44f8132d8315e734c8e2e04d7291 +aff064708103884cb4f1a3c1718b3fc40a238d35cf0a7dc24bdf9823693b407c70da50df585bf5bc4e9c07d1c2d203e8 +a8b40fc6533752983a5329c31d376c7a5c13ce6879cc7faee648200075d9cd273537001fb4c86e8576350eaac6ba60c2 +a02db682bdc117a84dcb9312eb28fcbde12d49f4ce915cc92c610bb6965ec3cc38290f8c5b5ec70afe153956692cda95 +86decd22b25d300508472c9ce75d3e465b737e7ce13bc0fcce32835e54646fe12322ba5bc457be18bfd926a1a6ca4a38 +a18666ef65b8c2904fd598791f5627207165315a85ee01d5fb0e6b2e10bdd9b00babc447da5bd63445e3337de33b9b89 +89bb0c06effadefdaf34ffe4b123e1678a90d4451ee856c863df1e752eef41fd984689ded8f0f878bf8916d5dd8e8024 +97cfcba08ebec05d0073992a66b1d7d6fb9d95871f2cdc36db301f78bf8069294d1c259efef5c93d20dc937eedae3a1a +ac2643b14ece79dcb2e289c96776a47e2bebd40dd6dc74fd035df5bb727b5596f40e3dd2d2202141e69b0993717ede09 +a5e6fd88a2f9174d9bd4c6a55d9c30974be414992f22aa852f552c7648f722ed8077acf5aba030abd47939bb451b2c60 +8ad40a612824a7994487731a40b311b7349038c841145865539c6ada75c56de6ac547a1c23df190e0caaafecddd80ccc +953a7cea1d857e09202c438c6108060961f195f88c32f0e012236d7a4b39d840c61b162ec86436e8c38567328bea0246 +80d8b47a46dae1868a7b8ccfe7029445bbe1009dad4a6c31f9ef081be32e8e1ac1178c3c8fb68d3e536c84990cc035b1 +81ecd99f22b3766ce0aca08a0a9191793f68c754fdec78b82a4c3bdc2db122bbb9ebfd02fc2dcc6e1567a7d42d0cc16a +b1dd0446bccc25846fb95d08c1c9cc52fb51c72c4c5d169ffde56ecfe800f108dc1106d65d5c5bd1087c656de3940b63 +b87547f0931e164e96de5c550ca5aa81273648fe34f6e193cd9d69cf729cb432e17aa02e25b1c27a8a0d20a3b795e94e +820a94e69a927e077082aae66f6b292cfbe4589d932edf9e68e268c9bd3d71ef76cf7d169dd445b93967c25db11f58f1 +b0d07ddf2595270c39adfa0c8cf2ab1322979b0546aa4d918f641be53cd97f36c879bb75d205e457c011aca3bbd9f731 +8700b876b35b4b10a8a9372c5230acecd39539c1bb87515640293ad4464a9e02929d7d6a6a11112e8a29564815ac0de4 +a61a601c5bb27dcb97e37c8e2b9ce479c6b192a5e04d9ed5e065833c5a1017ee5f237b77d1a17be5d48f8e7cc0bcacf6 +92fb88fe774c1ba1d4a08cae3c0e05467ad610e7a3f1d2423fd47751759235fe0a3036db4095bd6404716aa03820f484 +b274f140d77a3ce0796f5e09094b516537ccaf27ae1907099bff172e6368ba85e7c3ef8ea2a07457cac48ae334da95b3 +b2292d9181f16581a9a9142490b2bdcdfb218ca6315d1effc8592100d792eb89d5356996c890441f04f2b4a95763503e +8897e73f576d86bc354baa3bd96e553107c48cf5889dcc23c5ba68ab8bcd4e81f27767be2233fdfa13d39f885087e668 +a29eac6f0829791c728d71abc49569df95a4446ecbfc534b39f24f56c88fe70301838dfc1c19751e7f3c5c1b8c6af6a0 +9346dc3720adc5df500a8df27fd9c75ef38dc5c8f4e8ed66983304750e66d502c3c59b8e955be781b670a0afc70a2167 +9566d534e0e30a5c5f1428665590617e95fd05d45f573715f58157854ad596ece3a3cfec61356aee342308d623e029d5 +a464fb8bffe6bd65f71938c1715c6e296cc6d0311a83858e4e7eb5873b7f2cf0c584d2101e3407b85b64ca78b2ac93ce +b54088f7217987c87e9498a747569ac5b2f8afd5348f9c45bf3fd9fbf713a20f495f49c8572d087efe778ac7313ad6d3 +91fa9f5f8000fe050f5b224d90b59fcce13c77e903cbf98ded752e5b3db16adb2bc1f8c94be48b69f65f1f1ad81d6264 +92d04a5b0ac5d8c8e313709b432c9434ecd3e73231f01e9b4e7952b87df60cbfa97b5dedd2200bd033b4b9ea8ba45cc1 +a94b90ad3c3d6c4bbe169f8661a790c40645b40f0a9d1c7220f01cf7fc176e04d80bab0ced9323fcafb93643f12b2760 +94d86149b9c8443b46196f7e5a3738206dd6f3be7762df488bcbb9f9ee285a64c997ed875b7b16b26604fa59020a8199 +82efe4ae2c50a2d7645240c173a047f238536598c04a2c0b69c96e96bd18e075a99110f1206bc213f39edca42ba00cc1 +ab8667685f831bc14d4610f84a5da27b4ea5b133b4d991741a9e64dceb22cb64a3ce8f1b6e101d52af6296df7127c9ad +83ba433661c05dcc5d562f4a9a261c8110dac44b8d833ae1514b1fc60d8b4ee395b18804baea04cb10adb428faf713c3 +b5748f6f660cc5277f1211d2b8649493ed8a11085b871cd33a5aea630abd960a740f08c08be5f9c21574600ac9bf5737 +a5c8dd12af48fb710642ad65ebb97ca489e8206741807f7acfc334f8035d3c80593b1ff2090c9bb7bd138f0c48714ca8 +a2b382fd5744e3babf454b1d806cc8783efeb4761bc42b6914ea48a46a2eae835efbe0a18262b6bc034379e03cf1262b +b3145ffaf603f69f15a64936d32e3219eea5ed49fdfd2f5bf40ea0dfd974b36fb6ff12164d4c2282d892db4cf3ff3ce1 +87a316fb213f4c5e30c5e3face049db66be4f28821bd96034714ec23d3e97849d7b301930f90a4323c7ccf53de23050c +b9de09a919455070fed6220fc179c8b7a4c753062bcd27acf28f5b9947a659c0b364298daf7c85c4ca6fca7f945add1f +806fbd98d411b76979464c40ad88bc07a151628a27fcc1012ba1dfbaf5b5cc9d962fb9b3386008978a12515edce934bc +a15268877fae0d21610ae6a31061ed7c20814723385955fac09fdc9693a94c33dea11db98bb89fdfe68f933490f5c381 +8d633fb0c4da86b2e0b37d8fad5972d62bff2ac663c5ec815d095cd4b7e1fe66ebef2a2590995b57eaf941983c7ad7a4 +8139e5dd9cf405e8ef65f11164f0440827d98389ce1b418b0c9628be983a9ddd6cf4863036ccb1483b40b8a527acd9ed +88b15fa94a08eac291d2b94a2b30eb851ff24addf2cc30b678e72e32cfcb3424cf4b33aa395d741803f3e578ddf524de +b5eaf0c8506e101f1646bcf049ee38d99ea1c60169730da893fd6020fd00a289eb2f415947e44677af49e43454a7b1be +8489822ad0647a7e06aa2aa5595960811858ddd4542acca419dd2308a8c5477648f4dd969a6740bb78aa26db9bfcc555 +b1e9a7b9f3423c220330d45f69e45fa03d7671897cf077f913c252e3e99c7b1b1cf6d30caad65e4228d5d7b80eb86e5e +b28fe9629592b9e6a55a1406903be76250b1c50c65296c10c5e48c64b539fb08fe11f68cf462a6edcbba71b0cee3feb2 +a41acf96a02c96cd8744ff6577c244fc923810d17ade133587e4c223beb7b4d99fa56eae311a500d7151979267d0895c +880798938fe4ba70721be90e666dfb62fcab4f3556fdb7b0dc8ec5bc34f6b4513df965eae78527136eb391889fe2caf9 +98d4d89d358e0fb7e212498c73447d94a83c1b66e98fc81427ab13acddb17a20f52308983f3a5a8e0aaacec432359604 +81430b6d2998fc78ba937a1639c6020199c52da499f68109da227882dc26d005b73d54c5bdcac1a04e8356a8ca0f7017 +a8d906a4786455eb74613aba4ce1c963c60095ffb8658d368df9266fdd01e30269ce10bf984e7465f34b4fd83beba26a +af54167ac1f954d10131d44a8e0045df00d581dd9e93596a28d157543fbe5fb25d213806ed7fb3cba6b8f5b5423562db +8511e373a978a12d81266b9afbd55035d7bc736835cfa921903a92969eeba3624437d1346b55382e61415726ab84a448 +8cf43eea93508ae586fa9a0f1354a1e16af659782479c2040874a46317f9e8d572a23238efa318fdfb87cc63932602b7 +b0bdd3bacff077173d302e3a9678d1d37936188c7ecc34950185af6b462b7c679815176f3cce5db19aac8b282f2d60ad +a355e9b87f2f2672052f5d4d65b8c1c827d24d89b0d8594641fccfb69aef1b94009105f3242058bb31c8bf51caae5a41 +b8baa9e4b950b72ff6b88a6509e8ed1304bc6fd955748b2e59a523a1e0c5e99f52aec3da7fa9ff407a7adf259652466c +840bc3dbb300ea6f27d1d6dd861f15680bd098be5174f45d6b75b094d0635aced539fa03ddbccb453879de77fb5d1fe9 +b4bc7e7e30686303856472bae07e581a0c0bfc815657c479f9f5931cff208d5c12930d2fd1ff413ebd8424bcd7a9b571 +89b5d514155d7999408334a50822508b9d689add55d44a240ff2bdde2eee419d117031f85e924e2a2c1ca77db9b91eea +a8604b6196f87a04e1350302e8aa745bba8dc162115d22657b37a1d1a98cb14876ddf7f65840b5dbd77e80cd22b4256c +83cb7acdb9e03247515bb2ce0227486ccf803426717a14510f0d59d45e998b245797d356f10abca94f7a14e1a2f0d552 +aeb3266a9f16649210ab2df0e1908ac259f34ce1f01162c22b56cf1019096ee4ea5854c36e30bb2feb06c21a71e8a45c +89e72e86edf2aa032a0fc9acf4d876a40865fbb2c8f87cb7e4d88856295c4ac14583e874142fd0c314a49aba68c0aa3c +8c3576eba0583c2a7884976b4ed11fe1fda4f6c32f6385d96c47b0e776afa287503b397fa516a455b4b8c3afeedc76db +a31e5b633bda9ffa174654fee98b5d5930a691c3c42fcf55673d927dbc8d91c58c4e42e615353145431baa646e8bbb30 +89f2f3f7a8da1544f24682f41c68114a8f78c86bd36b066e27da13acb70f18d9f548773a16bd8e24789420e17183f137 +ada27fa4e90a086240c9164544d2528621a415a5497badb79f8019dc3dce4d12eb6b599597e47ec6ac39c81efda43520 +90dc1eb21bf21c0187f359566fc4bf5386abea52799306a0e5a1151c0817c5f5bc60c86e76b1929c092c0f3ff48cedd2 +b702a53ebcc17ae35d2e735a347d2c700e9cbef8eadbece33cac83df483b2054c126593e1f462cfc00a3ce9d737e2af5 +9891b06455ec925a6f8eafffba05af6a38cc5e193acaaf74ffbf199df912c5197106c5e06d72942bbb032ce277b6417f +8c0ee71eb01197b019275bcf96cae94e81d2cdc3115dbf2d8e3080074260318bc9303597e8f72b18f965ad601d31ec43 +8aaf580aaf75c1b7a5f99ccf60503506e62058ef43b28b02f79b8536a96be3f019c9f71caf327b4e6730134730d1bef5 +ae6f9fc21dd7dfa672b25a87eb0a41644f7609fab5026d5cedb6e43a06dbbfd6d6e30322a2598c8dedde88c52eaed626 +8159b953ffece5693edadb2e906ebf76ff080ee1ad22698950d2d3bfc36ac5ea78f58284b2ca180664452d55bd54716c +ab7647c32ca5e9856ac283a2f86768d68de75ceeba9e58b74c5324f8298319e52183739aba4340be901699d66ac9eb3f +a4d85a5701d89bcfaf1572db83258d86a1a0717603d6f24ac2963ffcf80f1265e5ab376a4529ca504f4396498791253c +816080c0cdbfe61b4d726c305747a9eb58ac26d9a35f501dd32ba43c098082d20faf3ccd41aad24600aa73bfa453dfac +84f3afac024f576b0fd9acc6f2349c2fcefc3f77dbe5a2d4964d14b861b88e9b1810334b908cf3427d9b67a8aee74b18 +94b390655557b1a09110018e9b5a14490681ade275bdc83510b6465a1218465260d9a7e2a6e4ec700f58c31dc3659962 +a8c66826b1c04a2dd4c682543242e7a57acae37278bd09888a3d17747c5b5fec43548101e6f46d703638337e2fd3277b +86e6f4608a00007fa533c36a5b054c5768ccafe41ad52521d772dcae4c8a4bcaff8f7609be30d8fab62c5988cbbb6830 +837da4cf09ae8aa0bceb16f8b3bfcc3b3367aecac9eed6b4b56d7b65f55981ef066490764fb4c108792623ecf8cad383 +941ff3011462f9b5bf97d8cbdb0b6f5d37a1b1295b622f5485b7d69f2cb2bcabc83630dae427f0259d0d9539a77d8424 +b99e5d6d82aa9cf7d5970e7f710f4039ac32c2077530e4c2779250c6b9b373bc380adb0a03b892b652f649720672fc8c +a791c78464b2d65a15440b699e1e30ebd08501d6f2720adbc8255d989a82fcded2f79819b5f8f201bed84a255211b141 +84af7ad4a0e31fcbb3276ab1ad6171429cf39adcf78dc03750dc5deaa46536d15591e26d53e953dfb31e1622bc0743ab +a833e62fe97e1086fae1d4917fbaf09c345feb6bf1975b5cb863d8b66e8d621c7989ab3dbecda36bc9eaffc5eaa6fa66 +b4ef79a46a2126f53e2ebe62770feb57fd94600be29459d70a77c5e9cc260fa892be06cd60f886bf48459e48eb50d063 +b43b8f61919ea380bf151c294e54d3a3ff98e20d1ee5efbfe38aa2b66fafbc6a49739793bd5cb1c809f8b30466277c3a +ab37735af2412d2550e62df9d8b3b5e6f467f20de3890bf56faf1abf2bf3bd1d98dc3fa0ad5e7ab3fce0fa20409eb392 +82416b74b1551d484250d85bb151fabb67e29cce93d516125533df585bc80779ab057ea6992801a3d7d5c6dcff87a018 +8145d0787f0e3b5325190ae10c1d6bee713e6765fb6a0e9214132c6f78f4582bb2771aaeae40d3dad4bafb56bf7e36d8 +b6935886349ecbdd5774e12196f4275c97ec8279fdf28ccf940f6a022ebb6de8e97d6d2173c3fe402cbe9643bed3883b +87ef9b4d3dc71ac86369f8ed17e0dd3b91d16d14ae694bc21a35b5ae37211b043d0e36d8ff07dcc513fb9e6481a1f37f +ae1d0ded32f7e6f1dc8fef495879c1d9e01826f449f903c1e5034aeeabc5479a9e323b162b688317d46d35a42d570d86 +a40d16497004db4104c6794e2f4428d75bdf70352685944f3fbe17526df333e46a4ca6de55a4a48c02ecf0bde8ba03c0 +8d45121efba8cc308a498e8ee39ea6fa5cae9fb2e4aab1c2ff9d448aa8494ccbec9a078f978a86fcd97b5d5e7be7522a +a8173865c64634ba4ac2fa432740f5c05056a9deaf6427cb9b4b8da94ca5ddbc8c0c5d3185a89b8b28878194de9cdfcd +b6ec06a74d690f6545f0f0efba236e63d1fdfba54639ca2617408e185177ece28901c457d02b849fd00f1a53ae319d0a +b69a12df293c014a40070e3e760169b6f3c627caf9e50b35a93f11ecf8df98b2bc481b410eecb7ab210bf213bbe944de +97e7dc121795a533d4224803e591eef3e9008bab16f12472210b73aaf77890cf6e3877e0139403a0d3003c12c8f45636 +acdfa6fdd4a5acb7738cc8768f7cba84dbb95c639399b291ae8e4e63df37d2d4096900a84d2f0606bf534a9ccaa4993f +86ee253f3a9446a33e4d1169719b7d513c6b50730988415382faaf751988c10a421020609f7bcdef91be136704b906e2 +aac9438382a856caf84c5a8a234282f71b5fc5f65219103b147e7e6cf565522285fbfd7417b513bdad8277a00f652ca1 +83f3799d8e5772527930f5dc071a2e0a65471618993ec8990a96ccdeee65270e490bda9d26bb877612475268711ffd80 +93f28a81ac8c0ec9450b9d762fae9c7f8feaace87a6ee6bd141ef1d2d0697ef1bbd159fe6e1de640dbdab2b0361fca8a +a0825c95ba69999b90eac3a31a3fd830ea4f4b2b7409bde5f202b61d741d6326852ce790f41de5cb0eccec7af4db30c1 +83924b0e66233edd603c3b813d698daa05751fc34367120e3cf384ea7432e256ccee4d4daf13858950549d75a377107d +956fd9fa58345277e06ba2ec72f49ed230b8d3d4ff658555c52d6cddeb84dd4e36f1a614f5242d5ca0192e8daf0543c2 +944869912476baae0b114cced4ff65c0e4c90136f73ece5656460626599051b78802df67d7201c55d52725a97f5f29fe +865cb25b64b4531fb6fe4814d7c8cd26b017a6c6b72232ff53defc18a80fe3b39511b23f9e4c6c7249d06e03b2282ed2 +81e09ff55214960775e1e7f2758b9a6c4e4cd39edf7ec1adfaad51c52141182b79fe2176b23ddc7df9fd153e5f82d668 +b31006896f02bc90641121083f43c3172b1039334501fbaf1672f7bf5d174ddd185f945adf1a9c6cf77be34c5501483d +88b92f6f42ae45e9f05b16e52852826e933efd0c68b0f2418ac90957fd018df661bc47c8d43c2a7d7bfcf669dab98c3c +92fc68f595853ee8683930751789b799f397135d002eda244fe63ecef2754e15849edde3ba2f0cc8b865c9777230b712 +99ca06a49c5cd0bb097c447793fcdd809869b216a34c66c78c7e41e8c22f05d09168d46b8b1f3390db9452d91bc96dea +b48b9490a5d65296802431852d548d81047bbefc74fa7dc1d4e2a2878faacdfcb365ae59209cb0ade01901a283cbd15d +aff0fdbef7c188b120a02bc9085d7b808e88f73973773fef54707bf2cd772cd066740b1b6f4127b5c349f657bd97e738 +966fd4463b4f43dd8ccba7ad50baa42292f9f8b2e70da23bb6780e14155d9346e275ef03ddaf79e47020dcf43f3738bd +9330c3e1fadd9e08ac85f4839121ae20bbeb0a5103d84fa5aadbd1213805bdcda67bf2fb75fc301349cbc851b5559d20 +993bb99867bd9041a71a55ad5d397755cfa7ab6a4618fc526179bfc10b7dc8b26e4372fe9a9b4a15d64f2b63c1052dda +a29b59bcfab51f9b3c490a3b96f0bf1934265c315349b236012adbd64a56d7f6941b2c8cc272b412044bc7731f71e1dc +a65c9cefe1fc35d089fe8580c2e7671ebefdb43014ac291528ff4deefd4883fd4df274af83711dad610dad0d615f9d65 +944c78c56fb227ae632805d448ca3884cd3d2a89181cead3d2b7835e63297e6d740aa79a112edb1d4727824991636df5 +a73d782da1db7e4e65d7b26717a76e16dd9fab4df65063310b8e917dc0bc24e0d6755df5546c58504d04d9e68c3b474a +af80f0b87811ae3124f68108b4ca1937009403f87928bbc53480e7c5408d072053ace5eeaf5a5aba814dab8a45502085 +88aaf1acfc6e2e19b8387c97da707cb171c69812fefdd4650468e9b2c627bd5ccfb459f4d8e56bdfd84b09ddf87e128f +92c97276ff6f72bab6e9423d02ad6dc127962dbce15a0dd1e4a393b4510c555df6aa27be0f697c0d847033a9ca8b8dfd +a0e07d43d96e2d85b6276b3c60aadb48f0aedf2de8c415756dc597249ea64d2093731d8735231dadc961e5682ac59479 +adc9e6718a8f9298957d1da3842a7751c5399bbdf56f8de6c1c4bc39428f4aee6f1ba6613d37bf46b9403345e9d6fc81 +951da434da4b20d949b509ceeba02e24da7ed2da964c2fcdf426ec787779c696b385822c7dbea4df3e4a35921f1e912c +a04cbce0d2b2e87bbf038c798a12ec828423ca6aca08dc8d481cf6466e3c9c73d4d4a7fa47df9a7e2e15aae9e9f67208 +8f855cca2e440d248121c0469de1f94c2a71b8ee2682bbad3a78243a9e03da31d1925e6760dbc48a1957e040fae9abe8 +b642e5b17c1df4a4e101772d73851180b3a92e9e8b26c918050f51e6dd3592f102d20b0a1e96f0e25752c292f4c903ff +a92454c300781f8ae1766dbbb50a96192da7d48ef4cbdd72dd8cbb44c6eb5913c112cc38e9144615fdc03684deb99420 +8b74f7e6c2304f8e780df4649ef8221795dfe85fdbdaa477a1542d135b75c8be45bf89adbbb6f3ddf54ca40f02e733e9 +85cf66292cbb30cec5fd835ab10c9fcb3aea95e093aebf123e9a83c26f322d76ebc89c4e914524f6c5f6ee7d74fc917d +ae0bfe0cdc97c09542a7431820015f2d16067b30dca56288013876025e81daa8c519e5e347268e19aa1a85fa1dc28793 +921322fc6a47dc091afa0ad6df18ed14cde38e48c6e71550aa513918b056044983aee402de21051235eecf4ce8040fbe +96c030381e97050a45a318d307dcb3c8377b79b4dd5daf6337cded114de26eb725c14171b9b8e1b3c08fe1f5ea6b49e0 +90c23b86b6111818c8baaf53a13eaee1c89203b50e7f9a994bf0edf851919b48edbac7ceef14ac9414cf70c486174a77 +8bf6c301240d2d1c8d84c71d33a6dfc6d9e8f1cfae66d4d0f7a256d98ae12b0bcebfa94a667735ee89f810bcd7170cff +a41a4ffbbea0e36874d65c009ee4c3feffff322f6fc0e30d26ee4dbc1f46040d05e25d9d0ecb378cef0d24a7c2c4b850 +a8d4cdd423986bb392a0a92c12a8bd4da3437eec6ef6af34cf5310944899287452a2eb92eb5386086d5063381189d10e +a81dd26ec057c4032a4ed7ad54d926165273ed51d09a1267b2e477535cf6966835a257c209e4e92d165d74fa75695fa3 +8d7f708c3ee8449515d94fc26b547303b53d8dd55f177bc3b25d3da2768accd9bc8e9f09546090ebb7f15c66e6c9c723 +839ba65cffcd24cfffa7ab3b21faabe3c66d4c06324f07b2729c92f15cad34e474b0f0ddb16cd652870b26a756b731d3 +87f1a3968afec354d92d77e2726b702847c6afcabb8438634f9c6f7766de4c1504317dc4fa9a4a735acdbf985e119564 +91a8a7fd6542f3e0673f07f510d850864b34ac087eb7eef8845a1d14b2b1b651cbdc27fa4049bdbf3fea54221c5c8549 +aef3cf5f5e3a2385ead115728d7059e622146c3457d266c612e778324b6e06fbfb8f98e076624d2f3ce1035d65389a07 +819915d6232e95ccd7693fdd78d00492299b1983bc8f96a08dcb50f9c0a813ed93ae53c0238345d5bea0beda2855a913 +8e9ba68ded0e94935131b392b28218315a185f63bf5e3c1a9a9dd470944509ca0ba8f6122265f8da851b5cc2abce68f1 +b28468e9b04ee9d69003399a3cf4457c9bf9d59f36ab6ceeb8e964672433d06b58beeea198fedc7edbaa1948577e9fa2 +a633005e2c9f2fd94c8bce2dd5bb708fe946b25f1ec561ae65e54e15cdd88dc339f1a083e01f0d39610c8fe24151aaf0 +841d0031e22723f9328dd993805abd13e0c99b0f59435d2426246996b08d00ce73ab906f66c4eab423473b409e972ce0 +85758d1b084263992070ec8943f33073a2d9b86a8606672550c17545507a5b3c88d87382b41916a87ee96ff55a7aa535 +8581b06b0fc41466ef94a76a1d9fb8ae0edca6d018063acf6a8ca5f4b02d76021902feba58972415691b4bdbc33ae3b4 +83539597ff5e327357ee62bc6bf8c0bcaec2f227c55c7c385a4806f0d37fb461f1690bad5066b8a5370950af32fafbef +aee3557290d2dc10827e4791d00e0259006911f3f3fce4179ed3c514b779160613eca70f720bff7804752715a1266ffa +b48d2f0c4e90fc307d5995464e3f611a9b0ef5fe426a289071f4168ed5cc4f8770c9332960c2ca5c8c427f40e6bb389f +847af8973b4e300bb06be69b71b96183fd1a0b9d51b91701bef6fcfde465068f1eb2b1503b07afda380f18d69de5c9e1 +a70a6a80ce407f07804c0051ac21dc24d794b387be94eb24e1db94b58a78e1bcfb48cd0006db8fc1f9bedaece7a44fbe +b40e942b8fa5336910ff0098347df716bff9d1fa236a1950c16eeb966b3bc1a50b8f7b0980469d42e75ae13ced53cead +b208fabaa742d7db3148515330eb7a3577487845abdb7bd9ed169d0e081db0a5816595c33d375e56aeac5b51e60e49d3 +b7c8194b30d3d6ef5ab66ec88ad7ebbc732a3b8a41731b153e6f63759a93f3f4a537eab9ad369705bd730184bdbbdc34 +9280096445fe7394d04aa1bc4620c8f9296e991cc4d6c131bd703cb1cc317510e6e5855ac763f4d958c5edfe7eebeed7 +abc2aa4616a521400af1a12440dc544e3c821313d0ab936c86af28468ef8bbe534837e364598396a81cf8d06274ed5a6 +b18ca8a3325adb0c8c18a666d4859535397a1c3fe08f95eebfac916a7a99bbd40b3c37b919e8a8ae91da38bc00fa56c0 +8a40c33109ecea2a8b3558565877082f79121a432c45ec2c5a5e0ec4d1c203a6788e6b69cb37f1fd5b8c9a661bc5476d +88c47301dd30998e903c84e0b0f2c9af2e1ce6b9f187dab03528d44f834dc991e4c86d0c474a2c63468cf4020a1e24a0 +920c832853e6ab4c851eecfa9c11d3acc7da37c823be7aa1ab15e14dfd8beb5d0b91d62a30cec94763bd8e4594b66600 +98e1addbe2a6b8edc7f12ecb9be81c3250aeeca54a1c6a7225772ca66549827c15f3950d01b8eb44aecb56fe0fff901a +8cfb0fa1068be0ec088402f5950c4679a2eb9218c729da67050b0d1b2d7079f3ddf4bf0f57d95fe2a8db04bc6bcdb20c +b70f381aafe336b024120453813aeab70baac85b9c4c0f86918797b6aee206e6ed93244a49950f3d8ec9f81f4ac15808 +a4c8edf4aa33b709a91e1062939512419711c1757084e46f8f4b7ed64f8e682f4e78b7135920c12f0eb0422fe9f87a6a +b4817e85fd0752d7ebb662d3a51a03367a84bac74ebddfba0e5af5e636a979500f72b148052d333b3dedf9edd2b4031b +a87430169c6195f5d3e314ff2d1c2f050e766fd5d2de88f5207d72dba4a7745bb86d0baca6e9ae156582d0d89e5838c7 +991b00f8b104566b63a12af4826b61ce7aa40f4e5b8fff3085e7a99815bdb4471b6214da1e480214fac83f86a0b93cc5 +b39966e3076482079de0678477df98578377a094054960ee518ef99504d6851f8bcd3203e8da5e1d4f6f96776e1fe6eb +a448846d9dc2ab7a0995fa44b8527e27f6b3b74c6e03e95edb64e6baa4f1b866103f0addb97c84bef1d72487b2e21796 +894bec21a453ae84b592286e696c35bc30e820e9c2fd3e63dd4fbe629e07df16439c891056070faa490155f255bf7187 +a9ec652a491b11f6a692064e955f3f3287e7d2764527e58938571469a1e29b5225b9415bd602a45074dfbfe9c131d6ca +b39d37822e6cbe28244b5f42ce467c65a23765bd16eb6447c5b3e942278069793763483dafd8c4dd864f8917aad357fe +88dba51133f2019cb266641c56101e3e5987d3b77647a2e608b5ff9113dfc5f85e2b7c365118723131fbc0c9ca833c9c +b566579d904b54ecf798018efcb824dccbebfc6753a0fd2128ac3b4bd3b038c2284a7c782b5ca6f310eb7ea4d26a3f0a +a97a55c0a492e53c047e7d6f9d5f3e86fb96f3dddc68389c0561515343b66b4bc02a9c0d5722dff1e3445308240b27f7 +a044028ab4bcb9e1a2b9b4ca4efbf04c5da9e4bf2fff0e8bd57aa1fc12a71e897999c25d9117413faf2f45395dee0f13 +a78dc461decbeaeed8ebd0909369b491a5e764d6a5645a7dac61d3140d7dc0062526f777b0eb866bff27608429ebbdde +b2c2a8991f94c39ca35fea59f01a92cb3393e0eccb2476dfbf57261d406a68bd34a6cff33ed80209991688c183609ef4 +84189eefb521aff730a4fd3fd5b10ddfd29f0d365664caef63bb015d07e689989e54c33c2141dd64427805d37a7e546e +85ac80bd734a52235da288ff042dea9a62e085928954e8eacd2c751013f61904ed110e5b3afe1ab770a7e6485efb7b5e +9183a560393dcb22d0d5063e71182020d0fbabb39e32493eeffeb808df084aa243eb397027f150b55a247d1ed0c8513e +81c940944df7ecc58d3c43c34996852c3c7915ed185d7654627f7af62abae7e0048dd444a6c09961756455000bd96d09 +aa8c34e164019743fd8284b84f06c3b449aae7996e892f419ee55d82ad548cb300fd651de329da0384243954c0ef6a60 +89a7b7bdfc7e300d06a14d463e573d6296d8e66197491900cc9ae49504c4809ff6e61b758579e9091c61085ba1237b83 +878d21809ba540f50bd11f4c4d9590fb6f3ab9de5692606e6e2ef4ed9d18520119e385be5e1f4b3f2e2b09c319f0e8fc +8eb248390193189cf0355365e630b782cd15751e672dc478b39d75dc681234dcd9309df0d11f4610dbb249c1e6be7ef9 +a1d7fb3aecb896df3a52d6bd0943838b13f1bd039c936d76d03de2044c371d48865694b6f532393b27fd10a4cf642061 +a34bca58a24979be442238cbb5ece5bee51ae8c0794dd3efb3983d4db713bc6f28a96e976ac3bd9a551d3ed9ba6b3e22 +817c608fc8cacdd178665320b5a7587ca21df8bdd761833c3018b967575d25e3951cf3d498a63619a3cd2ad4406f5f28 +86c95707db0495689afd0c2e39e97f445f7ca0edffad5c8b4cacd1421f2f3cc55049dfd504f728f91534e20383955582 +99c3b0bb15942c301137765d4e19502f65806f3b126dc01a5b7820c87e8979bce6a37289a8f6a4c1e4637227ad5bf3bf +8aa1518a80ea8b074505a9b3f96829f5d4afa55a30efe7b4de4e5dbf666897fdd2cf31728ca45921e21a78a80f0e0f10 +8d74f46361c79e15128ac399e958a91067ef4cec8983408775a87eca1eed5b7dcbf0ddf30e66f51780457413496c7f07 +a41cde4a786b55387458a1db95171aca4fd146507b81c4da1e6d6e495527c3ec83fc42fad1dfe3d92744084a664fd431 +8c352852c906fae99413a84ad11701f93f292fbf7bd14738814f4c4ceab32db02feb5eb70bc73898b0bc724a39d5d017 +a5993046e8f23b71ba87b7caa7ace2d9023fb48ce4c51838813174880d918e9b4d2b0dc21a2b9c6f612338c31a289df8 +83576d3324bf2d8afbfb6eaecdc5d767c8e22e7d25160414924f0645491df60541948a05e1f4202e612368e78675de8a +b43749b8df4b15bc9a3697e0f1c518e6b04114171739ef1a0c9c65185d8ec18e40e6954d125cbc14ebc652cf41ad3109 +b4eebd5d80a7327a040cafb9ccdb12b2dfe1aa86e6bc6d3ac8a57fadfb95a5b1a7332c66318ff72ba459f525668af056 +9198be7f1d413c5029b0e1c617bcbc082d21abe2c60ec8ce9b54ca1a85d3dba637b72fda39dae0c0ae40d047eab9f55a +8d96a0232832e24d45092653e781e7a9c9520766c3989e67bbe86b3a820c4bf621ea911e7cd5270a4bfea78b618411f6 +8d7160d0ea98161a2d14d46ef01dff72d566c330cd4fabd27654d300e1bc7644c68dc8eabf2a20a59bfe7ba276545f9b +abb60fce29dec7ba37e3056e412e0ec3e05538a1fc0e2c68877378c867605966108bc5742585ab6a405ce0c962b285b6 +8fabffa3ed792f05e414f5839386f6449fd9f7b41a47595c5d71074bd1bb3784cc7a1a7e1ad6b041b455035957e5b2dc +90ff017b4804c2d0533b72461436b10603ab13a55f86fd4ec11b06a70ef8166f958c110519ca1b4cc7beba440729fe2d +b340cfd120f6a4623e3a74cf8c32bfd7cd61a280b59dfd17b15ca8fae4d82f64a6f15fbde4c02f424debc72b7db5fe67 +871311c9c7220c932e738d59f0ecc67a34356d1429fe570ca503d340c9996cb5ee2cd188fad0e3bd16e4c468ec1dbebd +a772470262186e7b94239ba921b29f2412c148d6f97c4412e96d21e55f3be73f992f1ad53c71008f0558ec3f84e2b5a7 +b2a897dcb7ffd6257f3f2947ec966f2077d57d5191a88840b1d4f67effebe8c436641be85524d0a21be734c63ab5965d +a044f6eacc48a4a061fa149500d96b48cbf14853469aa4d045faf3dca973be1bd4b4ce01646d83e2f24f7c486d03205d +981af5dc2daa73f7fa9eae35a93d81eb6edba4a7f673b55d41f6ecd87a37685d31bb40ef4f1c469b3d72f2f18b925a17 +912d2597a07864de9020ac77083eff2f15ceb07600f15755aba61251e8ce3c905a758453b417f04d9c38db040954eb65 +9642b7f6f09394ba5e0805734ef6702c3eddf9eea187ba98c676d5bbaec0e360e3e51dc58433aaa1e2da6060c8659cb7 +8ab3836e0a8ac492d5e707d056310c4c8e0489ca85eb771bff35ba1d658360084e836a6f51bb990f9e3d2d9aeb18fbb5 +879e058e72b73bb1f4642c21ffdb90544b846868139c6511f299aafe59c2d0f0b944dffc7990491b7c4edcd6a9889250 +b9e60b737023f61479a4a8fd253ed0d2a944ea6ba0439bbc0a0d3abf09b0ad1f18d75555e4a50405470ae4990626f390 +b9c2535d362796dcd673640a9fa2ebdaec274e6f8b850b023153b0a7a30fffc87f96e0b72696f647ebe7ab63099a6963 +94aeff145386a087b0e91e68a84a5ede01f978f9dd9fe7bebca78941938469495dc30a96bba9508c0d017873aeea9610 +98b179f8a3d9f0d0a983c30682dd425a2ddc7803be59bd626c623c8951a5179117d1d2a68254c95c9952989877d0ee55 +889ecf5f0ee56938273f74eb3e9ecfb5617f04fb58e83fe4c0e4aef51615cf345bc56f3f61b17f6eed3249d4afd54451 +a0f2b2c39bcea4b50883e2587d16559e246248a66ecb4a4b7d9ab3b51fb39fe98d83765e087eee37a0f86b0ba4144c02 +b2a61e247ed595e8a3830f7973b07079cbda510f28ad8c78c220b26cb6acde4fbb5ee90c14a665f329168ee951b08cf0 +95bd0fcfb42f0d6d8a8e73d7458498a85bcddd2fb132fd7989265648d82ac2707d6d203fac045504977af4f0a2aca4b7 +843e5a537c298666e6cf50fcc044f13506499ef83c802e719ff2c90e85003c132024e04711be7234c04d4b0125512d5d +a46d1797c5959dcd3a5cfc857488f4d96f74277c3d13b98b133620192f79944abcb3a361d939a100187f1b0856eae875 +a1c7786736d6707a48515c38660615fcec67eb8a2598f46657855215f804fd72ab122d17f94fcffad8893f3be658dca7 +b23dc9e610abc7d8bd21d147e22509a0fa49db5be6ea7057b51aae38e31654b3aa044df05b94b718153361371ba2f622 +b00cc8f257d659c22d30e6d641f79166b1e752ea8606f558e4cad6fc01532e8319ea4ee12265ba4140ac45aa4613c004 +ac7019af65221b0cc736287b32d7f1a3561405715ba9a6a122342e04e51637ba911c41573de53e4781f2230fdcb2475f +81a630bc41b3da8b3eb4bf56cba10cd9f93153c3667f009dc332287baeb707d505fb537e6233c8e53d299ec0f013290c +a6b7aea5c545bb76df0f230548539db92bc26642572cb7dd3d5a30edca2b4c386f44fc8466f056b42de2a452b81aff5b +8271624ff736b7b238e43943c81de80a1612207d32036d820c11fc830c737972ccc9c60d3c2359922b06652311e3c994 +8a684106458cb6f4db478170b9ad595d4b54c18bf63b9058f095a2fa1b928c15101472c70c648873d5887880059ed402 +a5cc3c35228122f410184e4326cf61a37637206e589fcd245cb5d0cec91031f8f7586b80503070840fdfd8ce75d3c88b +9443fc631aed8866a7ed220890911057a1f56b0afe0ba15f0a0e295ab97f604b134b1ed9a4245e46ee5f9a93aa74f731 +984b6f7d79835dffde9558c6bb912d992ca1180a2361757bdba4a7b69dc74b056e303adc69fe67414495dd9c2dd91e64 +b15a5c8cba5de080224c274d31c68ed72d2a7126d347796569aef0c4e97ed084afe3da4d4b590b9dda1a07f0c2ff3dfb +991708fe9650a1f9a4e43938b91d45dc68c230e05ee999c95dbff3bf79b1c1b2bb0e7977de454237c355a73b8438b1d9 +b4f7edc7468b176a4a7c0273700c444fa95c726af6697028bed4f77eee887e3400f9c42ee15b782c0ca861c4c3b8c98a +8c60dcc16c51087eb477c13e837031d6c6a3dc2b8bf8cb43c23f48006bc7173151807e866ead2234b460c2de93b31956 +83ad63e9c910d1fc44bc114accfb0d4d333b7ebe032f73f62d25d3e172c029d5e34a1c9d547273bf6c0fead5c8801007 +85de73213cc236f00777560756bdbf2b16841ba4b55902cf2cad9742ecaf5d28209b012ceb41f337456dfeca93010cd7 +a7561f8827ccd75b6686ba5398bb8fc3083351c55a589b18984e186820af7e275af04bcd4c28e1dc11be1e8617a0610b +88c0a4febd4068850557f497ea888035c7fc9f404f6cc7794e7cc8722f048ad2f249e7dc62743e7a339eb7473ad3b0cd +932b22b1d3e6d5a6409c34980d176feb85ada1bf94332ef5c9fc4d42b907dabea608ceef9b5595ef3feee195151f18d8 +a2867bb3f5ab88fbdae3a16c9143ab8a8f4f476a2643c505bb9f37e5b1fd34d216cab2204c9a017a5a67b7ad2dda10e8 +b573d5f38e4e9e8a3a6fd82f0880dc049efa492a946d00283019bf1d5e5516464cf87039e80aef667cb86fdea5075904 +b948f1b5ab755f3f5f36af27d94f503b070696d793b1240c1bdfd2e8e56890d69e6904688b5f8ff5a4bdf5a6abfe195f +917eae95ebc4109a2e99ddd8fec7881d2f7aaa0e25fda44dec7ce37458c2ee832f1829db7d2dcfa4ca0f06381c7fe91d +95751d17ed00a3030bce909333799bb7f4ab641acf585807f355b51d6976dceee410798026a1a004ef4dcdff7ec0f5b8 +b9b7bd266f449a79bbfe075e429613e76c5a42ac61f01c8f0bbbd34669650682efe01ff9dbbc400a1e995616af6aa278 +ac1722d097ce9cd7617161f8ec8c23d68f1fb1c9ca533e2a8b4f78516c2fd8fb38f23f834e2b9a03bb06a9d655693ca9 +a7ad9e96ffd98db2ecdb6340c5d592614f3c159abfd832fe27ee9293519d213a578e6246aae51672ee353e3296858873 +989b8814d5de7937c4acafd000eec2b4cd58ba395d7b25f98cafd021e8efa37029b29ad8303a1f6867923f5852a220eb +a5bfe6282c771bc9e453e964042d44eff4098decacb89aecd3be662ea5b74506e1357ab26f3527110ba377711f3c9f41 +8900a7470b656639721d2abbb7b06af0ac4222ab85a1976386e2a62eb4b88bfb5b72cf7921ddb3cf3a395d7eeb192a2e +95a71b55cd1f35a438cf5e75f8ff11c5ec6a2ebf2e4dba172f50bfad7d6d5dca5de1b1afc541662c81c858f7604c1163 +82b5d62fea8db8d85c5bc3a76d68dedd25794cf14d4a7bc368938ffca9e09f7e598fdad2a5aac614e0e52f8112ae62b9 +997173f07c729202afcde3028fa7f52cefc90fda2d0c8ac2b58154a5073140683e54c49ed1f254481070d119ce0ce02a +aeffb91ccc7a72bbd6ffe0f9b99c9e66e67d59cec2e02440465e9636a613ab3017278cfa72ea8bc4aba9a8dc728cb367 +952743b06e8645894aeb6440fc7a5f62dd3acf96dab70a51e20176762c9751ea5f2ba0b9497ccf0114dc4892dc606031 +874c63baeddc56fbbca2ff6031f8634b745f6e34ea6791d7c439201aee8f08ef5ee75f7778700a647f3b21068513fce6 +85128fec9c750c1071edfb15586435cc2f317e3e9a175bb8a9697bcda1eb9375478cf25d01e7fed113483b28f625122d +85522c9576fd9763e32af8495ae3928ed7116fb70d4378448926bc9790e8a8d08f98cf47648d7da1b6e40d6a210c7924 +97d0f37a13cfb723b848099ca1c14d83e9aaf2f7aeb71829180e664b7968632a08f6a85f557d74b55afe6242f2a36e7c +abaa472d6ad61a5fccd1a57c01aa1bc081253f95abbcba7f73923f1f11c4e79b904263890eeb66926de3e2652f5d1c70 +b3c04945ba727a141e5e8aec2bf9aa3772b64d8fd0e2a2b07f3a91106a95cbcb249adcd074cbe498caf76fffac20d4ef +82c46781a3d730d9931bcabd7434a9171372dde57171b6180e5516d4e68db8b23495c8ac3ab96994c17ddb1cf249b9fb +a202d8b65613c42d01738ccd68ed8c2dbc021631f602d53f751966e04182743ebc8e0747d600b8a8676b1da9ae7f11ab +ae73e7256e9459db04667a899e0d3ea5255211fb486d084e6550b6dd64ca44af6c6b2d59d7aa152de9f96ce9b58d940d +b67d87b176a9722945ec7593777ee461809861c6cfd1b945dde9ee4ff009ca4f19cf88f4bbb5c80c9cbab2fe25b23ac8 +8f0b7a317a076758b0dac79959ee4a06c08b07d0f10538a4b53d3da2eda16e2af26922feb32c090330dc4d969cf69bd3 +90b36bf56adbd8c4b6cb32febc3a8d5f714370c2ac3305c10fa6d168dffb2a026804517215f9a2d4ec8310cdb6bb459b +aa80c19b0682ead69934bf18cf476291a0beddd8ef4ed75975d0a472e2ab5c70f119722a8574ae4973aceb733d312e57 +a3fc9abb12574e5c28dcb51750b4339b794b8e558675eef7d26126edf1de920c35e992333bcbffcbf6a5f5c0d383ce62 +a1573ff23ab972acdcd08818853b111fc757fdd35aa070186d3e11e56b172fb49d840bf297ac0dd222e072fc09f26a81 +98306f2be4caa92c2b4392212d0cbf430b409b19ff7d5b899986613bd0e762c909fc01999aa94be3bd529d67f0113d7f +8c1fc42482a0819074241746d17dc89c0304a2acdae8ed91b5009e9e3e70ff725ba063b4a3e68fdce05b74f5180c545e +a6c6113ebf72d8cf3163b2b8d7f3fa24303b13f55752522c660a98cd834d85d8c79214d900fa649499365e2e7641f77a +ab95eea424f8a2cfd9fb1c78bb724e5b1d71a0d0d1e4217c5d0f98b0d8bbd3f8400a2002abc0a0e4576d1f93f46fefad +823c5a4fd8cf4a75fdc71d5f2dd511b6c0f189b82affeacd2b7cfcad8ad1a5551227dcc9bfdb2e34b2097eaa00efbb51 +b97314dfff36d80c46b53d87a61b0e124dc94018a0bb680c32765b9a2d457f833a7c42bbc90b3b1520c33a182580398d +b17566ee3dcc6bb3b004afe4c0136dfe7dd27df9045ae896dca49fb36987501ae069eb745af81ba3fc19ff037e7b1406 +b0bdc0f55cfd98d331e3a0c4fbb776a131936c3c47c6bffdc3aaf7d8c9fa6803fbc122c2fefbb532e634228687d52174 +aa5d9e60cc9f0598559c28bb9bdd52aa46605ab4ffe3d192ba982398e72cec9a2a44c0d0d938ce69935693cabc0887ea +802b6459d2354fa1d56c592ac1346c428dadea6b6c0a87bf7d309bab55c94e1cf31dd98a7a86bd92a840dd51f218b91b +a526914efdc190381bf1a73dd33f392ecf01350b9d3f4ae96b1b1c3d1d064721c7d6eec5788162c933245a3943f5ee51 +b3b8fcf637d8d6628620a1a99dbe619eabb3e5c7ce930d6efd2197e261bf394b74d4e5c26b96c4b8009c7e523ccfd082 +8f7510c732502a93e095aba744535f3928f893f188adc5b16008385fb9e80f695d0435bfc5b91cdad4537e87e9d2551c +97b90beaa56aa936c3ca45698f79273a68dd3ccd0076eab48d2a4db01782665e63f33c25751c1f2e070f4d1a8525bf96 +b9fb798324b1d1283fdc3e48288e3861a5449b2ab5e884b34ebb8f740225324af86e4711da6b5cc8361c1db15466602f +b6d52b53cea98f1d1d4c9a759c25bf9d8a50b604b144e4912acbdbdc32aab8b9dbb10d64a29aa33a4f502121a6fb481c +9174ffff0f2930fc228f0e539f5cfd82c9368d26b074467f39c07a774367ff6cccb5039ac63f107677d77706cd431680 +a33b6250d4ac9e66ec51c063d1a6a31f253eb29bbaed12a0d67e2eccfffb0f3a52750fbf52a1c2aaba8c7692346426e7 +a97025fd5cbcebe8ef865afc39cd3ea707b89d4e765ec817fd021d6438e02fa51e3544b1fd45470c58007a08efac6edd +b32a78480edd9ff6ba2f1eec4088db5d6ceb2d62d7e59e904ecaef7bb4a2e983a4588e51692b3be76e6ffbc0b5f911a5 +b5ab590ef0bb77191f00495b33d11c53c65a819f7d0c1f9dc4a2caa147a69c77a4fff7366a602d743ee1f395ce934c1e +b3fb0842f9441fb1d0ee0293b6efbc70a8f58d12d6f769b12872db726b19e16f0f65efbc891cf27a28a248b0ef9c7e75 +9372ad12856fefb928ccb0d34e198df99e2f8973b07e9d417a3134d5f69e12e79ff572c4e03ccd65415d70639bc7c73e +aa8d6e83d09ce216bfe2009a6b07d0110d98cf305364d5529c170a23e693aabb768b2016befb5ada8dabdd92b4d012bb +a954a75791eeb0ce41c85200c3763a508ed8214b5945a42c79bfdcfb1ec4f86ad1dd7b2862474a368d4ac31911a2b718 +8e2081cfd1d062fe3ab4dab01f68062bac802795545fede9a188f6c9f802cb5f884e60dbe866710baadbf55dc77c11a4 +a2f06003b9713e7dd5929501ed485436b49d43de80ea5b15170763fd6346badf8da6de8261828913ee0dacd8ff23c0e1 +98eecc34b838e6ffd1931ca65eec27bcdb2fdcb61f33e7e5673a93028c5865e0d1bf6d3bec040c5e96f9bd08089a53a4 +88cc16019741b341060b95498747db4377100d2a5bf0a5f516f7dec71b62bcb6e779de2c269c946d39040e03b3ae12b7 +ad1135ccbc3019d5b2faf59a688eef2500697642be8cfbdf211a1ab59abcc1f24483e50d653b55ff1834675ac7b4978f +a946f05ed9972f71dfde0020bbb086020fa35b482cce8a4cc36dd94355b2d10497d7f2580541bb3e81b71ac8bba3c49f +a83aeed488f9a19d8cfd743aa9aa1982ab3723560b1cd337fc2f91ad82f07afa412b3993afb845f68d47e91ba4869840 +95eebe006bfc316810cb71da919e5d62c2cebb4ac99d8e8ef67be420302320465f8b69873470982de13a7c2e23516be9 +a55f8961295a11e91d1e5deadc0c06c15dacbfc67f04ccba1d069cba89d72aa3b3d64045579c3ea8991b150ac29366ae +b321991d12f6ac07a5de3c492841d1a27b0d3446082fbce93e7e1f9e8d8fe3b45d41253556261c21b70f5e189e1a7a6f +a0b0822f15f652ce7962a4f130104b97bf9529797c13d6bd8e24701c213cc37f18157bd07f3d0f3eae6b7cd1cb40401f +96e2fa4da378aa782cc2d5e6e465fc9e49b5c805ed01d560e9b98abb5c0de8b74a2e7bec3aa5e2887d25cccb12c66f0c +97e4ab610d414f9210ed6f35300285eb3ccff5b0b6a95ed33425100d7725e159708ea78704497624ca0a2dcabce3a2f9 +960a375b17bdb325761e01e88a3ea57026b2393e1d887b34b8fa5d2532928079ce88dc9fd06a728b26d2bb41b12b9032 +8328a1647398e832aadc05bd717487a2b6fcdaa0d4850d2c4da230c6a2ed44c3e78ec4837b6094f3813f1ee99414713f +aa283834ebd18e6c99229ce4b401eda83f01d904f250fedd4e24f1006f8fa0712a6a89a7296a9bf2ce8de30e28d1408e +b29e097f2caadae3e0f0ae3473c072b0cd0206cf6d2e9b22c1a5ad3e07d433e32bd09ed1f4e4276a2da4268633357b7f +9539c5cbba14538b2fe077ecf67694ef240da5249950baaabea0340718b882a966f66d97f08556b08a4320ceb2cc2629 +b4529f25e9b42ae8cf8338d2eface6ba5cd4b4d8da73af502d081388135c654c0b3afb3aa779ffc80b8c4c8f4425dd2b +95be0739c4330619fbe7ee2249c133c91d6c07eab846c18c5d6c85fc21ac5528c5d56dcb0145af68ed0c6a79f68f2ccd +ac0c83ea802227bfc23814a24655c9ff13f729619bcffdb487ccbbf029b8eaee709f8bddb98232ef33cd70e30e45ca47 +b503becb90acc93b1901e939059f93e671900ca52c6f64ae701d11ac891d3a050b505d89324ce267bc43ab8275da6ffe +98e3811b55b1bacb70aa409100abb1b870f67e6d059475d9f278c751b6e1e2e2d6f2e586c81a9fb6597fda06e7923274 +b0b0f61a44053fa6c715dbb0731e35d48dba257d134f851ee1b81fd49a5c51a90ebf5459ec6e489fce25da4f184fbdb1 +b1d2117fe811720bb997c7c93fe9e4260dc50fca8881b245b5e34f724aaf37ed970cdad4e8fcb68e05ac8cf55a274a53 +a10f502051968f14b02895393271776dee7a06db9de14effa0b3471825ba94c3f805302bdddac4d397d08456f620999d +a3dbad2ef060ae0bb7b02eaa4a13594f3f900450faa1854fc09620b01ac94ab896321dfb1157cf2374c27e5718e8026a +b550fdec503195ecb9e079dcdf0cad559d64d3c30818ef369b4907e813e689da316a74ad2422e391b4a8c2a2bef25fc0 +a25ba865e2ac8f28186cea497294c8649a201732ecb4620c4e77b8e887403119910423df061117e5f03fc5ba39042db1 +b3f88174e03fdb443dd6addd01303cf88a4369352520187c739fc5ae6b22fa99629c63c985b4383219dab6acc5f6f532 +97a7503248e31e81b10eb621ba8f5210c537ad11b539c96dfb7cf72b846c7fe81bd7532c5136095652a9618000b7f8d3 +a8bcdc1ce5aa8bfa683a2fc65c1e79de8ff5446695dcb8620f7350c26d2972a23da22889f9e2b1cacb3f688c6a2953dc +8458c111df2a37f5dd91a9bee6c6f4b79f4f161c93fe78075b24a35f9817da8dde71763218d627917a9f1f0c4709c1ed +ac5f061a0541152b876cbc10640f26f1cc923c9d4ae1b6621e4bb3bf2cec59bbf87363a4eb72fb0e5b6d4e1c269b52d5 +a9a25ca87006e8a9203cbb78a93f50a36694aa4aad468b8d80d3feff9194455ca559fcc63838128a0ab75ad78c07c13a +a450b85f5dfffa8b34dfd8bc985f921318efacf8857cf7948f93884ba09fb831482ee90a44224b1a41e859e19b74962f +8ed91e7f92f5c6d7a71708b6132f157ac226ecaf8662af7d7468a4fa25627302efe31e4620ad28719318923e3a59bf82 +ab524165fd4c71b1fd395467a14272bd2b568592deafa039d8492e9ef36c6d3f96927c95c72d410a768dc0b6d1fbbc9b +b662144505aa8432c75ffb8d10318526b6d5777ac7af9ebfad87d9b0866c364f7905a6352743bd8fd79ffd9d5dd4f3e6 +a48f1677550a5cd40663bb3ba8f84caaf8454f332d0ceb1d94dbea52d0412fe69c94997f7749929712fd3995298572f7 +8391cd6e2f6b0c242de1117a612be99776c3dc95cb800b187685ea5bf7e2722275eddb79fd7dfc8be8e389c4524cdf70 +875d3acb9af47833b72900bc0a2448999d638f153c5e97e8a14ec02d0c76f6264353a7e275e1f1a5855daced523d243b +91f1823657d30b59b2f627880a9a9cb530f5aca28a9fd217fe6f2f5133690dfe7ad5a897872e400512db2e788b3f7628 +ad3564332aa56cea84123fc7ca79ea70bb4fef2009fa131cb44e4b15e8613bd11ca1d83b9d9bf456e4b7fee9f2e8b017 +8c530b84001936d5ab366c84c0b105241a26d1fb163669f17c8f2e94776895c2870edf3e1bc8ccd04d5e65531471f695 +932d01fa174fdb0c366f1230cffde2571cc47485f37f23ba5a1825532190cc3b722aeb1f15aed62cf83ccae9403ba713 +88b28c20585aca50d10752e84b901b5c2d58efef5131479fbbe53de7bce2029e1423a494c0298e1497669bd55be97a5d +b914148ca717721144ebb3d3bf3fcea2cd44c30c5f7051b89d8001502f3856fef30ec167174d5b76265b55d70f8716b5 +81d0173821c6ddd2a068d70766d9103d1ee961c475156e0cbd67d54e668a796310474ef698c7ab55abe6f2cf76c14679 +8f28e8d78e2fe7fa66340c53718e0db4b84823c8cfb159c76eac032a62fb53da0a5d7e24ca656cf9d2a890cb2a216542 +8a26360335c73d1ab51cec3166c3cf23b9ea51e44a0ad631b0b0329ef55aaae555420348a544e18d5760969281759b61 +94f326a32ed287545b0515be9e08149eb0a565025074796d72387cc3a237e87979776410d78339e23ef3172ca43b2544 +a785d2961a2fa5e70bffa137858a92c48fe749fee91b02599a252b0cd50d311991a08efd7fa5e96b78d07e6e66ffe746 +94af9030b5ac792dd1ce517eaadcec1482206848bea4e09e55cc7f40fd64d4c2b3e9197027c5636b70d6122c51d2235d +9722869f7d1a3992850fe7be405ec93aa17dc4d35e9e257d2e469f46d2c5a59dbd504056c85ab83d541ad8c13e8bcd54 +b13c4088b61a06e2c03ac9813a75ff1f68ffdfee9df6a8f65095179a475e29cc49119cad2ce05862c3b1ac217f3aace9 +8c64d51774753623666b10ca1b0fe63ae42f82ed6aa26b81dc1d48c86937c5772eb1402624c52a154b86031854e1fb9f +b47e4df18002b7dac3fee945bf9c0503159e1b8aafcce2138818e140753011b6d09ef1b20894e08ba3006b093559061b +93cb5970076522c5a0483693f6a35ffd4ea2aa7aaf3730c4eccd6af6d1bebfc1122fc4c67d53898ae13eb6db647be7e2 +a68873ef80986795ea5ed1a597d1cd99ed978ec25e0abb57fdcc96e89ef0f50aeb779ff46e3dce21dc83ada3157a8498 +8cab67f50949cc8eee6710e27358aea373aae3c92849f8f0b5531c080a6300cdf2c2094fe6fecfef6148de0d28446919 +993e932bcb616dbaa7ad18a4439e0565211d31071ef1b85a0627db74a05d978c60d507695eaeea5c7bd9868a21d06923 +acdadff26e3132d9478a818ef770e9fa0d2b56c6f5f48bd3bd674436ccce9bdfc34db884a73a30c04c5f5e9764cb2218 +a0d3e64c9c71f84c0eef9d7a9cb4fa184224b969db5514d678e93e00f98b41595588ca802643ea225512a4a272f5f534 +91c9140c9e1ba6e330cb08f6b2ce4809cd0d5a0f0516f70032bf30e912b0ed684d07b413b326ab531ee7e5b4668c799b +87bc2ee7a0c21ba8334cd098e35cb703f9af57f35e091b8151b9b63c3a5b0f89bd7701dbd44f644ea475901fa6d9ef08 +9325ccbf64bf5d71b303e31ee85d486298f9802c5e55b2c3d75427097bf8f60fa2ab4fcaffa9b60bf922c3e24fbd4b19 +95d0506e898318f3dc8d28d16dfd9f0038b54798838b3c9be2a2ae3c2bf204eb496166353fc042220b0bd4f6673b9285 +811de529416331fe9c416726d45df9434c29dcd7e949045eb15740f47e97dde8f31489242200e19922cac2a8b7c6fd1f +ade632d04a4c8bbab6ca7df370b2213cb9225023e7973f0e29f4f5e52e8aeaabc65171306bbdd12a67b195dfbb96d48f +88b7f029e079b6ae956042c0ea75d53088c5d0efd750dd018adaeacf46be21bf990897c58578c491f41afd3978d08073 +91f477802de507ffd2be3f4319903119225b277ad24f74eb50f28b66c14d32fae53c7edb8c7590704741af7f7f3e3654 +809838b32bb4f4d0237e98108320d4b079ee16ed80c567e7548bd37e4d7915b1192880f4812ac0e00476d246aec1dbc8 +84183b5fc4a7997a8ae5afedb4d21dce69c480d5966b5cbdafd6dd10d29a9a6377f3b90ce44da0eb8b176ac3af0253bb +8508abbf6d3739a16b9165caf0f95afb3b3ac1b8c38d6d374cf0c91296e2c1809a99772492b539cda184510bce8a0271 +8722054e59bab2062e6419a6e45fc803af77fde912ef2cd23055ad0484963de65a816a2debe1693d93c18218d2b8e81a +8e895f80e485a7c4f56827bf53d34b956281cdc74856c21eb3b51f6288c01cc3d08565a11cc6f3e2604775885490e8c5 +afc92714771b7aa6e60f3aee12efd9c2595e9659797452f0c1e99519f67c8bc3ac567119c1ddfe82a3e961ee9defea9a +818ff0fd9cefd32db87b259e5fa32967201016fc02ef44116cdca3c63ce5e637756f60477a408709928444a8ad69c471 +8251e29af4c61ae806fc5d032347fb332a94d472038149225298389495139ce5678fae739d02dfe53a231598a992e728 +a0ea39574b26643f6f1f48f99f276a8a64b5481989cfb2936f9432a3f8ef5075abfe5c067dc5512143ce8bf933984097 +af67a73911b372bf04e57e21f289fc6c3dfac366c6a01409b6e76fea4769bdb07a6940e52e8d7d3078f235c6d2f632c6 +b5291484ef336024dd2b9b4cf4d3a6b751133a40656d0a0825bcc6d41c21b1c79cb50b0e8f4693f90c29c8f4358641f9 +8bc0d9754d70f2cb9c63f991902165a87c6535a763d5eece43143b5064ae0bcdce7c7a8f398f2c1c29167b2d5a3e6867 +8d7faff53579ec8f6c92f661c399614cc35276971752ce0623270f88be937c414eddcb0997e14724a783905a026c8883 +9310b5f6e675fdf60796f814dbaa5a6e7e9029a61c395761e330d9348a7efab992e4e115c8be3a43d08e90d21290c892 +b5eb4f3eb646038ad2a020f0a42202532d4932e766da82b2c1002bf9c9c2e5336b54c8c0ffcc0e02d19dde2e6a35b6cc +91dabfd30a66710f1f37a891136c9be1e23af4abf8cb751f512a40c022a35f8e0a4fb05b17ec36d4208de02d56f0d53a +b3ded14e82d62ac7a5a036122a62f00ff8308498f3feae57d861babaff5a6628d43f0a0c5fc903f10936bcf4e2758ceb +a88e8348fed2b26acca6784d19ef27c75963450d99651d11a950ea81d4b93acd2c43e0ecce100eaf7e78508263d5baf3 +b1f5bbf7c4756877b87bb42163ac570e08c6667c4528bf68b5976680e19beeff7c5effd17009b0718797077e2955457a +ad2e7b516243f915d4d1415326e98b1a7390ae88897d0b03b66c2d9bd8c3fba283d7e8fe44ed3333296a736454cef6d8 +8f82eae096d5b11f995de6724a9af895f5e1c58d593845ad16ce8fcae8507e0d8e2b2348a0f50a1f66a17fd6fac51a5c +890e4404d0657c6c1ee14e1aac132ecf7a568bb3e04137b85ac0f84f1d333bd94993e8750f88eee033a33fb00f85dcc7 +82ac7d3385e035115f1d39a99fc73e5919de44f5e6424579776d118d711c8120b8e5916372c6f27bed4cc64cac170b6c +85ee16d8901c272cfbbe966e724b7a891c1bd5e68efd5d863043ad8520fc409080af61fd726adc680b3f1186fe0ac8b8 +86dc564c9b545567483b43a38f24c41c6551a49cabeebb58ce86404662a12dbfafd0778d30d26e1c93ce222e547e3898 +a29f5b4522db26d88f5f95f18d459f8feefab02e380c2edb65aa0617a82a3c1a89474727a951cef5f15050bcf7b380fb +a1ce039c8f6cac53352899edb0e3a72c76da143564ad1a44858bd7ee88552e2fe6858d1593bbd74aeee5a6f8034b9b9d +97f10d77983f088286bd7ef3e7fdd8fa275a56bec19919adf33cf939a90c8f2967d2b1b6fc51195cb45ad561202a3ed7 +a25e2772e8c911aaf8712bdac1dd40ee061c84d3d224c466cfaae8e5c99604053f940cde259bd1c3b8b69595781dbfec +b31bb95a0388595149409c48781174c340960d59032ab2b47689911d03c68f77a2273576fbe0c2bf4553e330656058c7 +b8b2e9287ad803fb185a13f0d7456b397d4e3c8ad5078f57f49e8beb2e85f661356a3392dbd7bcf6a900baa5582b86a1 +a3d0893923455eb6e96cc414341cac33d2dbc88fba821ac672708cce131761d85a0e08286663a32828244febfcae6451 +82310cb42f647d99a136014a9f881eb0b9791efd2e01fc1841907ad3fc8a9654d3d1dab6689c3607214b4dc2aca01cee +874022d99c16f60c22de1b094532a0bc6d4de700ad01a31798fac1d5088b9a42ad02bef8a7339af7ed9c0d4f16b186ee +94981369e120265aed40910eebc37eded481e90f4596b8d57c3bec790ab7f929784bd33ddd05b7870aad6c02e869603b +a4f1f50e1e2a73f07095e0dd31cb45154f24968dae967e38962341c1241bcd473102fff1ff668b20c6547e9732d11701 +ae2328f3b0ad79fcda807e69a1b5278145225083f150f67511dafc97e079f860c3392675f1752ae7e864c056e592205b +875d8c971e593ca79552c43d55c8c73b17cd20c81ff2c2fed1eb19b1b91e4a3a83d32df150dbfd5db1092d0aebde1e1f +add2e80aa46aae95da73a11f130f4bda339db028e24c9b11e5316e75ba5e63bc991d2a1da172c7c8e8fee038baae3433 +b46dbe1cb3424002aa7de51e82f600852248e251465c440695d52538d3f36828ff46c90ed77fc1d11534fe3c487df8ef +a5e5045d28b4e83d0055863c30c056628c58d4657e6176fd0536f5933f723d60e851bb726d5bf3c546b8ce4ac4a57ef8 +91fec01e86dd1537e498fff7536ea3ca012058b145f29d9ada49370cd7b7193ac380e116989515df1b94b74a55c45df3 +a7428176d6918cd916a310bdc75483c72de660df48cac4e6e7478eef03205f1827ea55afc0df5d5fa7567d14bbea7fc9 +851d89bef45d9761fe5fdb62972209335193610015e16a675149519f9911373bac0919add226ef118d9f3669cfdf4734 +b74acf5c149d0042021cb2422ea022be4c4f72a77855f42393e71ffd12ebb3eec16bdf16f812159b67b79a9706e7156d +99f35dce64ec99aa595e7894b55ce7b5a435851b396e79036ffb249c28206087db4c85379df666c4d95857db02e21ff9 +b6b9a384f70db9e298415b8ab394ee625dafff04be2886476e59df8d052ca832d11ac68a9b93fba7ab055b7bc36948a4 +898ee4aefa923ffec9e79f2219c7389663eb11eb5b49014e04ed4a336399f6ea1691051d86991f4c46ca65bcd4fdf359 +b0f948217b0d65df7599a0ba4654a5e43c84db477936276e6f11c8981efc6eaf14c90d3650107ed4c09af4cc8ec11137 +aa6286e27ac54f73e63dbf6f41865dd94d24bc0cf732262fcaff67319d162bb43af909f6f8ee27b1971939cfbba08141 +8bca7cdf730cf56c7b2c8a2c4879d61361a6e1dba5a3681a1a16c17a56e168ace0e99cf0d15826a1f5e67e6b8a8a049a +a746d876e8b1ce225fcafca603b099b36504846961526589af977a88c60d31ba2cc56e66a3dec8a77b3f3531bf7524c9 +a11e2e1927e6704cdb8874c75e4f1842cef84d7d43d7a38e339e61dc8ba90e61bbb20dd3c12e0b11d2471d58eed245be +a36395e22bc1d1ba8b0459a235203177737397da5643ce54ded3459d0869ff6d8d89f50c73cb62394bf66a959cde9b90 +8b49f12ba2fdf9aca7e5f81d45c07d47f9302a2655610e7634d1e4bd16048381a45ef2c95a8dd5b0715e4b7cf42273af +91cffa2a17e64eb7f76bccbe4e87280ee1dd244e04a3c9eac12e15d2d04845d876eb24fe2ec6d6d266cce9efb281077f +a6b8afabf65f2dee01788114e33a2f3ce25376fb47a50b74da7c3c25ff1fdc8aa9f41307534abbf48acb6f7466068f69 +8d13db896ccfea403bd6441191995c1a65365cab7d0b97fbe9526da3f45a877bd1f4ef2edef160e8a56838cd1586330e +98c717de9e01bef8842c162a5e757fe8552d53269c84862f4d451e7c656ae6f2ae473767b04290b134773f63be6fdb9d +8c2036ace1920bd13cf018e82848c49eb511fad65fd0ff51f4e4b50cf3bfc294afb63cba682c16f52fb595a98fa84970 +a3520fdff05dbad9e12551b0896922e375f9e5589368bcb2cc303bde252743b74460cb5caf99629325d3620f13adc796 +8d4f83a5bfec05caf5910e0ce538ee9816ee18d0bd44c1d0da2a87715a23cd2733ad4d47552c6dc0eb397687d611dd19 +a7b39a0a6a02823452d376533f39d35029867b3c9a6ad6bca181f18c54132d675613a700f9db2440fb1b4fa13c8bf18a +80bcb114b2544b80f404a200fc36860ed5e1ad31fe551acd4661d09730c452831751baa9b19d7d311600d267086a70bc +90dcce03c6f88fc2b08f2b42771eedde90cc5330fe0336e46c1a7d1b5a6c1641e5fcc4e7b3d5db00bd8afca9ec66ed81 +aec15f40805065c98e2965b1ae12a6c9020cfdb094c2d0549acfc7ea2401a5fb48d3ea7d41133cf37c4e096e7ff53eb9 +80e129b735dba49fa627a615d6c273119acec8e219b2f2c4373a332b5f98d66cbbdd688dfbe72a8f8bfefaccc02c50c1 +a9b596da3bdfe23e6799ece5f7975bf7a1979a75f4f546deeaf8b34dfe3e0d623217cb4cf4ccd504cfa3625b88cd53f1 +abcbbb70b16f6e517c0ab4363ab76b46e4ff58576b5f8340e5c0e8cc0e02621b6e23d742d73b015822a238b17cfd7665 +a046937cc6ea6a2e1adae543353a9fe929c1ae4ad655be1cc051378482cf88b041e28b1e9a577e6ccff2d3570f55e200 +831279437282f315e65a60184ef158f0a3dddc15a648dc552bdc88b3e6fe8288d3cfe9f0031846d81350f5e7874b4b33 +993d7916fa213c6d66e7c4cafafc1eaec9a2a86981f91c31eb8a69c5df076c789cbf498a24c84e0ee77af95b42145026 +823907a3b6719f8d49b3a4b7c181bd9bb29fcf842d7c70660c4f351852a1e197ca46cf5e879b47fa55f616fa2b87ce5e +8d228244e26132b234930ee14c75d88df0943cdb9c276a8faf167d259b7efc1beec2a87c112a6c608ad1600a239e9aae +ab6e55766e5bfb0cf0764ed909a8473ab5047d3388b4f46faeba2d1425c4754c55c6daf6ad4751e634c618b53e549529 +ab0cab6860e55a84c5ad2948a7e0989e2b4b1fd637605634b118361497332df32d9549cb854b2327ca54f2bcb85eed8f +b086b349ae03ef34f4b25a57bcaa5d1b29bd94f9ebf87e22be475adfe475c51a1230c1ebe13506cb72c4186192451658 +8a0b49d8a254ca6d91500f449cbbfbb69bb516c6948ac06808c65595e46773e346f97a5ce0ef7e5a5e0de278af22709c +ac49de11edaaf04302c73c578cc0824bdd165c0d6321be1c421c1950e68e4f3589aa3995448c9699e93c6ebae8803e27 +884f02d841cb5d8f4c60d1402469216b114ab4e93550b5bc1431756e365c4f870a9853449285384a6fa49e12ce6dc654 +b75f3a28fa2cc8d36b49130cb7448a23d73a7311d0185ba803ad55c8219741d451c110f48b786e96c728bc525903a54f +80ae04dbd41f4a35e33f9de413b6ad518af0919e5a30cb0fa1b061b260420780bb674f828d37fd3b52b5a31673cbd803 +b9a8011eb5fcea766907029bf743b45262db3e49d24f84503687e838651ed11cb64c66281e20a0ae9f6aa51acc552263 +90bfdd75e2dc9cf013e22a5d55d2d2b8a754c96103a17524488e01206e67f8b6d52b1be8c4e3d5307d4fe06d0e51f54c +b4af353a19b06203a815ec43e79a88578cc678c46f5a954b85bc5c53b84059dddba731f3d463c23bfd5273885c7c56a4 +aa125e96d4553b64f7140e5453ff5d2330318b69d74d37d283e84c26ad672fa00e3f71e530eb7e28be1e94afb9c4612e +a18e060aee3d49cde2389b10888696436bb7949a79ca7d728be6456a356ea5541b55492b2138da90108bd1ce0e6f5524 +93e55f92bdbccc2de655d14b1526836ea2e52dba65eb3f87823dd458a4cb5079bf22ce6ef625cb6d6bfdd0995ab9a874 +89f5a683526b90c1c3ceebbb8dc824b21cff851ce3531b164f6626e326d98b27d3e1d50982e507d84a99b1e04e86a915 +83d1c38800361633a3f742b1cb2bfc528129496e80232611682ddbe403e92c2ac5373aea0bca93ecb5128b0b2b7a719e +8ecba560ac94905e19ce8d9c7af217bf0a145d8c8bd38e2db82f5e94cc3f2f26f55819176376b51f154b4aab22056059 +a7e2a4a002b60291924850642e703232994acb4cfb90f07c94d1e0ecd2257bb583443283c20fc6017c37e6bfe85b7366 +93ed7316fa50b528f1636fc6507683a672f4f4403e55e94663f91221cc198199595bd02eef43d609f451acc9d9b36a24 +a1220a8ebc5c50ceed76a74bc3b7e0aa77f6884c71b64b67c4310ac29ce5526cb8992d6abc13ef6c8413ce62486a6795 +b2f6eac5c869ad7f4a25161d3347093e2f70e66cd925032747e901189355022fab3038bca4d610d2f68feb7e719c110b +b703fa11a4d511ca01c7462979a94acb40b5d933759199af42670eb48f83df202fa0c943f6ab3b4e1cc54673ea3aab1e +b5422912afbfcb901f84791b04f1ddb3c3fbdc76d961ee2a00c5c320e06d3cc5b5909c3bb805df66c5f10c47a292b13d +ad0934368da823302e1ac08e3ede74b05dfdbfffca203e97ffb0282c226814b65c142e6e15ec1e754518f221f01b30f7 +a1dd302a02e37df15bf2f1147efe0e3c06933a5a767d2d030e1132f5c3ce6b98e216b6145eb39e1e2f74e76a83165b8d +a346aab07564432f802ae44738049a36f7ca4056df2d8f110dbe7fef4a3e047684dea609b2d03dc6bf917c9c2a47608f +b96c5f682a5f5d02123568e50f5d0d186e4b2c4c9b956ec7aabac1b3e4a766d78d19bd111adb5176b898e916e49be2aa +8a96676d56876fc85538db2e806e1cba20fd01aeb9fa3cb43ca6ca94a2c102639f65660db330e5d74a029bb72d6a0b39 +ab0048336bd5c3def1a4064eadd49e66480c1f2abb4df46e03afbd8a3342c2c9d74ee35d79f08f4768c1646681440984 +888427bdf76caec90814c57ee1c3210a97d107dd88f7256f14f883ad0f392334b82be11e36dd8bfec2b37935177c7831 +b622b282becf0094a1916fa658429a5292ba30fb48a4c8066ce1ddcefb71037948262a01c95bab6929ed3a76ba5db9fe +b5b9e005c1f456b6a368a3097634fb455723abe95433a186e8278dceb79d4ca2fbe21f8002e80027b3c531e5bf494629 +a3c6707117a1e48697ed41062897f55d8119403eea6c2ee88f60180f6526f45172664bfee96bf61d6ec0b7fbae6aa058 +b02a9567386a4fbbdb772d8a27057b0be210447348efe6feb935ceec81f361ed2c0c211e54787dc617cdffed6b4a6652 +a9b8364e40ef15c3b5902e5534998997b8493064fa2bea99600def58279bb0f64574c09ba11e9f6f669a8354dd79dc85 +9998a2e553a9aa9a206518fae2bc8b90329ee59ab23005b10972712389f2ec0ee746033c733092ffe43d73d33abbb8ef +843a4b34d9039bf79df96d79f2d15e8d755affb4d83d61872daf540b68c0a3888cf8fc00d5b8b247b38524bcb3b5a856 +84f7128920c1b0bb40eee95701d30e6fc3a83b7bb3709f16d97e72acbb6057004ee7ac8e8f575936ca9dcb7866ab45f7 +918d3e2222e10e05edb34728162a899ad5ada0aaa491aeb7c81572a9c0d506e31d5390e1803a91ff3bd8e2bb15d47f31 +9442d18e2489613a7d47bb1cb803c8d6f3259d088cd079460976d87f7905ee07dea8f371b2537f6e1d792d36d7e42723 +b491976970fe091995b2ed86d629126523ccf3e9daf8145302faca71b5a71a5da92e0e05b62d7139d3efac5c4e367584 +aa628006235dc77c14cef4c04a308d66b07ac92d377df3de1a2e6ecfe3144f2219ad6d7795e671e1cb37a3641910b940 +99d386adaea5d4981d7306feecac9a555b74ffdc218c907c5aa7ac04abaead0ec2a8237300d42a3fbc464673e417ceed +8f78e8b1556f9d739648ea3cab9606f8328b52877fe72f9305545a73b74d49884044ba9c1f1c6db7d9b7c7b7c661caba +8fb357ae49932d0babdf74fc7aa7464a65d3b6a2b3acf4f550b99601d3c0215900cfd67f2b6651ef94cfc323bac79fae +9906f2fa25c0290775aa001fb6198113d53804262454ae8b83ef371b5271bde189c0460a645829cb6c59f9ee3a55ce4d +8f4379b3ebb50e052325b27655ca6a82e6f00b87bf0d2b680d205dd2c7afdc9ff32a9047ae71a1cdf0d0ce6b9474d878 +a85534e88c2bd43c043792eaa75e50914b21741a566635e0e107ae857aed0412035f7576cf04488ade16fd3f35fdbb87 +b4ce93199966d3c23251ca7f28ec5af7efea1763d376b0385352ffb2e0a462ef95c69940950278cf0e3dafd638b7bd36 +b10cb3d0317dd570aa73129f4acf63c256816f007607c19b423fb42f65133ce21f2f517e0afb41a5378cccf893ae14d0 +a9b231c9f739f7f914e5d943ed9bff7eba9e2c333fbd7c34eb1648a362ee01a01af6e2f7c35c9fe962b11152cddf35de +99ff6a899e156732937fb81c0cced80ae13d2d44c40ba99ac183aa246103b31ec084594b1b7feb96da58f4be2dd5c0ed +8748d15d18b75ff2596f50d6a9c4ce82f61ecbcee123a6ceae0e43cab3012a29b6f83cf67b48c22f6f9d757c6caf76b2 +b88ab05e4248b7fb634cf640a4e6a945d13e331237410f7217d3d17e3e384ddd48897e7a91e4516f1b9cbd30f35f238b +8d826deaeeb84a3b2d2c04c2300ca592501f992810582d6ae993e0d52f6283a839dba66c6c72278cff5871802b71173b +b36fed027c2f05a5ef625ca00b0364b930901e9e4420975b111858d0941f60e205546474bb25d6bfa6928d37305ae95f +af2fcfc6b87967567e8b8a13a4ed914478185705724e56ce68fb2df6d1576a0cf34a61e880997a0d35dc2c3276ff7501 +ac351b919cd1fbf106feb8af2c67692bfcddc84762d18cea681cfa7470a5644839caace27efee5f38c87d3df306f4211 +8d6665fb1d4d8d1fa23bd9b8a86e043b8555663519caac214d1e3e3effbc6bee7f2bcf21e645f77de0ced279d69a8a8b +a9fc1c2061756b2a1a169c1b149f212ff7f0d2488acd1c5a0197eba793cffa593fc6d1d1b40718aa75ca3ec77eff10e1 +aff64f0fa009c7a6cf0b8d7a22ddb2c8170c3cb3eec082e60d5aadb00b0040443be8936d728d99581e33c22178c41c87 +82e0b181adc5e3b1c87ff8598447260e839d53debfae941ebea38265575546c3a74a14b4325a030833a62ff6c52d9365 +b7ad43cbb22f6f892c2a1548a41dc120ab1f4e1b8dea0cb6272dd9cb02054c542ecabc582f7e16de709d48f5166cae86 +985e0c61094281532c4afb788ecb2dfcba998e974b5d4257a22040a161883908cdd068fe80f8eb49b8953cfd11acf43a +ae46895c6d67ea6d469b6c9c07b9e5d295d9ae73b22e30da4ba2c973ba83a130d7eef39717ec9d0f36e81d56bf742671 +8600177ea1f7e7ef90514b38b219a37dedfc39cb83297e4c7a5b479817ef56479d48cf6314820960c751183f6edf8b0e +b9208ec1c1d7a1e99b59c62d3e4e61dfb706b0e940d09d3abfc3454c19749083260614d89cfd7e822596c3cdbcc6bb95 +a1e94042c796c2b48bc724352d2e9f3a22291d9a34705993357ddb6adabd76da6fc25dac200a8cb0b5bbd99ecddb7af6 +b29c3adedd0bcad8a930625bc4dfdc3552a9afd5ca6dd9c0d758f978068c7982b50b711aa0eb5b97f2b84ee784637835 +af0632a238bb1f413c7ea8e9b4c3d68f2827bd2e38cd56024391fba6446ac5d19a780d0cfd4a78fe497d537b766a591a +aaf6e7f7d54f8ef5e2e45dd59774ecbeecf8683aa70483b2a75be6a6071b5981bbaf1627512a65d212817acdfab2e428 +8c751496065da2e927cf492aa5ca9013b24f861d5e6c24b30bbf52ec5aaf1905f40f9a28175faef283dd4ed4f2182a09 +8952377d8e80a85cf67d6b45499f3bad5fd452ea7bcd99efc1b066c4720d8e5bff1214cea90fd1f972a7f0baac3d29be +a1946ee543d1a6e21f380453be4d446e4130950c5fc3d075794eb8260f6f52d0a795c1ff91d028a648dc1ce7d9ab6b47 +89f3fefe37af31e0c17533d2ca1ce0884cc1dc97c15cbfab9c331b8debd94781c9396abef4bb2f163d09277a08d6adf0 +a2753f1e6e1a154fb117100a5bd9052137add85961f8158830ac20541ab12227d83887d10acf7fd36dcaf7c2596d8d23 +814955b4198933ee11c3883863b06ff98c7eceb21fc3e09df5f916107827ccf3323141983e74b025f46ae00284c9513b +8cc5c6bb429073bfef47cae7b3bfccb0ffa076514d91a1862c6bda4d581e0df87db53cc6c130bf8a7826304960f5a34e +909f22c1f1cdc87f7be7439c831a73484a49acbf8f23d47087d7cf867c64ef61da3bde85dc57d705682b4c3fc710d36e +8048fee7f276fcd504aed91284f28e73693615e0eb3858fa44bcf79d7285a9001c373b3ef71d9a3054817ba293ebe28c +94400e5cf5d2700ca608c5fe35ce14623f71cc24959f2bc27ca3684092850f76b67fb1f07ca9e5b2ca3062cf8ad17bd4 +81c2ae7d4d1b17f8b6de6a0430acc0d58260993980fe48dc2129c4948269cdc74f9dbfbf9c26b19360823fd913083d48 +8c41fe765128e63f6889d6a979f6a4342300327c8b245a8cfe3ecfbcac1e09c3da30e2a1045b24b78efc6d6d50c8c6ac +a5dd4ae51ae48c8be4b218c312ade226cffce671cf121cb77810f6c0990768d6dd767badecb5c69921d5574d5e8433d3 +b7642e325f4ba97ae2a39c1c9d97b35aafd49d53dba36aed3f3cb0ca816480b3394079f46a48252d46596559c90f4d58 +ae87375b40f35519e7bd4b1b2f73cd0b329b0c2cb9d616629342a71c6c304338445eda069b78ea0fbe44087f3de91e09 +b08918cb6f736855e11d3daca1ddfbdd61c9589b203b5493143227bf48e2c77c2e8c94b0d1aa2fab2226e0eae83f2681 +ac36b84a4ac2ebd4d6591923a449c564e3be8a664c46092c09e875c2998eba16b5d32bfd0882fd3851762868e669f0b1 +a44800a3bb192066fa17a3f29029a23697240467053b5aa49b9839fb9b9b8b12bcdcbfc557f024b61f4f51a9aacdefcb +9064c688fec23441a274cdf2075e5a449caf5c7363cc5e8a5dc9747183d2e00a0c69f2e6b3f6a7057079c46014c93b3b +aa367b021469af9f5b764a79bb3afbe2d87fe1e51862221672d1a66f954b165778b7c27a705e0f93841fab4c8468344d +a1a8bfc593d4ab71f91640bc824de5c1380ab2591cfdafcbc78a14b32de3c0e15f9d1b461d85c504baa3d4232c16bb53 +97df48da1799430f528184d30b6baa90c2a2f88f34cdfb342d715339c5ebd6d019aa693cea7c4993daafc9849063a3aa +abd923831fbb427e06e0dd335253178a9e5791395c84d0ab1433c07c53c1209161097e9582fb8736f8a60bde62d8693e +84cd1a43f1a438b43dc60ffc775f646937c4f6871438163905a3cebf1115f814ccd38a6ccb134130bff226306e412f32 +91426065996b0743c5f689eb3ca68a9f7b9e4d01f6c5a2652b57fa9a03d8dc7cd4bdbdab0ca5a891fee1e97a7f00cf02 +a4bee50249db3df7fd75162b28f04e57c678ba142ce4d3def2bc17bcb29e4670284a45f218dad3969af466c62a903757 +83141ebcc94d4681404e8b67a12a46374fded6df92b506aff3490d875919631408b369823a08b271d006d5b93136f317 +a0ea1c8883d58d5a784da3d8c8a880061adea796d7505c1f903d07c287c5467f71e4563fc0faafbc15b5a5538b0a7559 +89d9d480574f201a87269d26fb114278ed2c446328df431dc3556e3500e80e4cd01fcac196a2459d8646361ebda840df +8bf302978973632dd464bec819bdb91304712a3ec859be071e662040620422c6e75eba6f864f764cffa2799272efec39 +922f666bc0fd58b6d7d815c0ae4f66d193d32fc8382c631037f59eeaeae9a8ca6c72d08e72944cf9e800b8d639094e77 +81ad8714f491cdff7fe4399f2eb20e32650cff2999dd45b9b3d996d54a4aba24cc6c451212e78c9e5550368a1a38fb3f +b58fcf4659d73edb73175bd9139d18254e94c3e32031b5d4b026f2ed37aa19dca17ec2eb54c14340231615277a9d347e +b365ac9c2bfe409b710928c646ea2fb15b28557e0f089d39878e365589b9d1c34baf5566d20bb28b33bb60fa133f6eff +8fcae1d75b53ab470be805f39630d204853ca1629a14158bac2f52632277d77458dec204ff84b7b2d77e641c2045be65 +a03efa6bebe84f4f958a56e2d76b5ba4f95dd9ed7eb479edc7cc5e646c8d4792e5b0dfc66cc86aa4b4afe2f7a4850760 +af1c823930a3638975fb0cc5c59651771b2719119c3cd08404fbd4ce77a74d708cefbe3c56ea08c48f5f10e6907f338f +8260c8299b17898032c761c325ac9cabb4c5b7e735de81eacf244f647a45fb385012f4f8df743128888c29aefcaaad16 +ab2f37a573c82e96a8d46198691cd694dfa860615625f477e41f91b879bc58a745784fccd8ffa13065834ffd150d881d +986c746c9b4249352d8e5c629e8d7d05e716b3c7aab5e529ca969dd1e984a14b5be41528baef4c85d2369a42d7209216 +b25e32da1a8adddf2a6080725818b75bc67240728ad1853d90738485d8924ea1e202df0a3034a60ffae6f965ec55cf63 +a266e627afcebcefea6b6b44cbc50f5c508f7187e87d047b0450871c2a030042c9e376f3ede0afcf9d1952f089582f71 +86c3bbca4c0300606071c0a80dbdec21ce1dd4d8d4309648151c420854032dff1241a1677d1cd5de4e4de4385efda986 +b9a21a1fe2d1f3273a8e4a9185abf2ff86448cc98bfa435e3d68306a2b8b4a6a3ea33a155be3cb62a2170a86f77679a5 +b117b1ea381adce87d8b342cba3a15d492ff2d644afa28f22424cb9cbc820d4f7693dfc1a4d1b3697046c300e1c9b4c8 +9004c425a2e68870d6c69b658c344e3aa3a86a8914ee08d72b2f95c2e2d8a4c7bb0c6e7e271460c0e637cec11117bf8e +86a18aa4783b9ebd9131580c8b17994825f27f4ac427b0929a1e0236907732a1c8139e98112c605488ee95f48bbefbfc +84042243b955286482ab6f0b5df4c2d73571ada00716d2f737ca05a0d2e88c6349e8ee9e67934cfee4a1775dbf7f4800 +92c2153a4733a62e4e1d5b60369f3c26777c7d01cd3c8679212660d572bd3bac9b8a8a64e1f10f7dbf5eaa7579c4e423 +918454b6bb8e44a2afa144695ba8d48ae08d0cdfef4ad078f67709eddf3bb31191e8b006f04e82ea45a54715ef4d5817 +acf0b54f6bf34cf6ed6c2b39cf43194a40d68de6bcf1e4b82c34c15a1343e9ac3737885e1a30b78d01fa3a5125463db8 +a7d60dbe4b6a7b054f7afe9ee5cbbfeca0d05dc619e6041fa2296b549322529faddb8a11e949562309aecefb842ac380 +91ffb53e6d7e5f11159eaf13e783d6dbdfdb1698ed1e6dbf3413c6ea23492bbb9e0932230a9e2caac8fe899a17682795 +b6e8d7be5076ee3565d5765a710c5ecf17921dd3cf555c375d01e958a365ae087d4a88da492a5fb81838b7b92bf01143 +a8c6b763de2d4b2ed42102ef64eccfef31e2fb2a8a2776241c82912fa50fc9f77f175b6d109a97ede331307c016a4b1a +99839f86cb700c297c58bc33e28d46b92931961548deac29ba8df91d3e11721b10ea956c8e16984f9e4acf1298a79b37 +8c2e2c338f25ea5c25756b7131cde0d9a2b35abf5d90781180a00fe4b8e64e62590dc63fe10a57fba3a31c76d784eb01 +9687d7df2f41319ca5469d91978fed0565a5f11f829ebadaa83db92b221755f76c6eacd7700735e75c91e257087512e3 +8795fdfb7ff8439c58b9bf58ed53873d2780d3939b902b9ddaaa4c99447224ced9206c3039a23c2c44bcc461e2bb637f +a803697b744d2d087f4e2307218d48fa88620cf25529db9ce71e2e3bbcc65bac5e8bb9be04777ef7bfb5ed1a5b8e6170 +80f3d3efbbb9346ddd413f0a8e36b269eb5d7ff6809d5525ff9a47c4bcab2c01b70018b117f6fe05253775612ff70c6b +9050e0e45bcc83930d4c505af35e5e4d7ca01cd8681cba92eb55821aececcebe32bb692ebe1a4daac4e7472975671067 +8d206812aac42742dbaf233e0c080b3d1b30943b54b60283515da005de05ea5caa90f91fedcfcba72e922f64d7040189 +a2d44faaeb2eff7915c83f32b13ca6f31a6847b1c1ce114ea240bac3595eded89f09b2313b7915ad882292e2b586d5b4 +961776c8576030c39f214ea6e0a3e8b3d32f023d2600958c098c95c8a4e374deeb2b9dc522adfbd6bda5949bdc09e2a2 +993fa7d8447407af0fbcd9e6d77f815fa5233ab00674efbcf74a1f51c37481445ae291cc7b76db7c178f9cb0e570e0fc +abd5b1c78e05f9d7c8cc99bdaef8b0b6a57f2daf0f02bf492bec48ea4a27a8f1e38b5854da96efff11973326ff980f92 +8f15af4764bc275e6ccb892b3a4362cacb4e175b1526a9a99944e692fe6ccb1b4fc19abf312bb2a089cb1f344d91a779 +a09b27ccd71855512aba1d0c30a79ffbe7f6707a55978f3ced50e674b511a79a446dbc6d7946add421ce111135a460af +94b2f98ce86a9271fbd4153e1fc37de48421fe3490fb3840c00f2d5a4d0ba8810c6a32880b002f6374b59e0a7952518b +8650ac644f93bbcb88a6a0f49fee2663297fd4bc6fd47b6a89b9d8038d32370438ab3a4775ec9b58cb10aea8a95ef7b6 +95e5c2f2e84eed88c6980bbba5a1c0bb375d5a628bff006f7516d45bb7d723da676add4fdd45956f312e7bab0f052644 +b3278a3fa377ac93af7cfc9453f8cb594aae04269bbc99d2e0e45472ff4b6a2f97a26c4c57bf675b9d86f5e77a5d55d1 +b4bcbe6eb666a206e2ea2f877912c1d3b5bdbd08a989fc4490eb06013e1a69ad1ba08bcdac048bf29192312be399077b +a76d70b78c99fffcbf9bb9886eab40f1ea4f99a309710b660b64cbf86057cbcb644d243f6e341711bb7ef0fedf0435a7 +b2093c1ee945dca7ac76ad5aed08eae23af31dd5a77c903fd7b6f051f4ab84425d33a03c3d45bf2907bc93c02d1f3ad8 +904b1f7534e053a265b22d20be859912b9c9ccb303af9a8d6f1d8f6ccdc5c53eb4a45a1762b880d8444d9be0cd55e7f9 +8f664a965d65bc730c9ef1ec7467be984d4b8eb46bd9b0d64e38e48f94e6e55dda19aeac82cbcf4e1473440e64c4ca18 +8bcee65c4cc7a7799353d07b114c718a2aae0cd10a3f22b7eead5185d159dafd64852cb63924bf87627d176228878bce +8c78f2e3675096fef7ebaa898d2615cd50d39ca3d8f02b9bdfb07e67da648ae4be3da64838dffc5935fd72962c4b96c7 +8c40afd3701629421fec1df1aac4e849384ef2e80472c0e28d36cb1327acdf2826f99b357f3d7afdbc58a6347fc40b3c +a197813b1c65a8ea5754ef782522a57d63433ef752215ecda1e7da76b0412ee619f58d904abd2e07e0c097048b6ae1dd +a670542629e4333884ad7410f9ea3bd6f988df4a8f8a424ca74b9add2312586900cf9ae8bd50411f9146e82626b4af56 +a19875cc07ab84e569d98b8b67fb1dbbdfb59093c7b748fae008c8904a6fd931a63ca8d03ab5fea9bc8d263568125a9b +b57e7f68e4eb1bd04aafa917b1db1bdab759a02aa8a9cdb1cba34ba8852b5890f655645c9b4e15d5f19bf37e9f2ffe9f +8abe4e2a4f6462b6c64b3f10e45db2a53c2b0d3c5d5443d3f00a453e193df771eda635b098b6c8604ace3557514027af +8459e4fb378189b22b870a6ef20183deb816cefbf66eca1dc7e86d36a2e011537db893729f500dc154f14ce24633ba47 +930851df4bc7913c0d8c0f7bd3b071a83668987ed7c397d3d042fdc0d9765945a39a3bae83da9c88cb6b686ed8aeeb26 +8078c9e5cd05e1a8c932f8a1d835f61a248b6e7133fcbb3de406bf4ffc0e584f6f9f95062740ba6008d98348886cf76b +addff62bb29430983fe578e3709b0949cdc0d47a13a29bc3f50371a2cb5c822ce53e2448cfaa01bcb6e0aa850d5a380e +9433add687b5a1e12066721789b1db2edf9b6558c3bdc0f452ba33b1da67426abe326e9a34d207bfb1c491c18811bde1 +822beda3389963428cccc4a2918fa9a8a51cf0919640350293af70821967108cded5997adae86b33cb917780b097f1ca +a7a9f52bda45e4148ed56dd176df7bd672e9b5ed18888ccdb405f47920fdb0844355f8565cefb17010b38324edd8315f +b35c3a872e18e607b2555c51f9696a17fa18da1f924d503b163b4ec9fe22ed0c110925275cb6c93ce2d013e88f173d6a +adf34b002b2b26ab84fc1bf94e05bd8616a1d06664799ab149363c56a6e0c807fdc473327d25632416e952ea327fcd95 +ae4a6b9d22a4a3183fac29e2551e1124a8ce4a561a9a2afa9b23032b58d444e6155bb2b48f85c7b6d70393274e230db7 +a2ea3be4fc17e9b7ce3110284038d46a09e88a247b6971167a7878d9dcf36925d613c382b400cfa4f37a3ebea3699897 +8e5863786b641ce3140fbfe37124d7ad3925472e924f814ebfc45959aaf3f61dc554a597610b5defaecc85b59a99b50f +aefde3193d0f700d0f515ab2aaa43e2ef1d7831c4f7859f48e52693d57f97fa9e520090f3ed700e1c966f4b76048e57f +841a50f772956622798e5cd208dc7534d4e39eddee30d8ce133383d66e5f267e389254a0cdae01b770ecd0a9ca421929 +8fbc2bfd28238c7d47d4c03b1b910946c0d94274a199575e5b23242619b1de3497784e646a92aa03e3e24123ae4fcaba +926999579c8eec1cc47d7330112586bdca20b4149c8b2d066f527c8b9f609e61ce27feb69db67eea382649c6905efcf9 +b09f31f305efcc65589adf5d3690a76cf339efd67cd43a4e3ced7b839507466e4be72dd91f04e89e4bbef629d46e68c0 +b917361f6b95f759642638e0b1d2b3a29c3bdef0b94faa30de562e6078c7e2d25976159df3edbacbf43614635c2640b4 +8e7e8a1253bbda0e134d62bfe003a2669d471b47bd2b5cde0ff60d385d8e62279d54022f5ac12053b1e2d3aaa6910b4c +b69671a3c64e0a99d90b0ed108ce1912ff8ed983e4bddd75a370e9babde25ee1f5efb59ec707edddd46793207a8b1fe7 +910b2f4ebd37b7ae94108922b233d0920b4aba0bd94202c70f1314418b548d11d8e9caa91f2cd95aff51b9432d122b7f +82f645c90dfb52d195c1020346287c43a80233d3538954548604d09fbab7421241cde8593dbc4acc4986e0ea39a27dd9 +8fee895f0a140d88104ce442fed3966f58ff9d275e7373483f6b4249d64a25fb5374bbdc6bce6b5ab0270c2847066f83 +84f5bd7aab27b2509397aeb86510dd5ac0a53f2c8f73799bf720f2f87a52277f8d6b0f77f17bc80739c6a7119b7eb062 +9903ceced81099d7e146e661bcf01cbaccab5ba54366b85e2177f07e2d8621e19d9c9c3eee14b9266de6b3f9b6ea75ae +b9c16ea2a07afa32dd6c7c06df0dec39bca2067a9339e45475c98917f47e2320f6f235da353fd5e15b477de97ddc68dd +9820a9bbf8b826bec61ebf886de2c4f404c1ebdc8bab82ee1fea816d9de29127ce1852448ff717a3fe8bbfe9e92012e5 +817224d9359f5da6f2158c2c7bf9165501424f063e67ba9859a07ab72ee2ee62eb00ca6da821cfa19065c3282ca72c74 +94b95c465e6cb00da400558a3c60cfec4b79b27e602ca67cbc91aead08de4b6872d8ea096b0dc06dca4525c8992b8547 +a2b539a5bccd43fa347ba9c15f249b417997c6a38c63517ca38394976baa08e20be384a360969ff54e7e721db536b3e5 +96caf707e34f62811ee8d32ccf28d8d6ec579bc33e424d0473529af5315c456fd026aa910c1fed70c91982d51df7d3ca +8a77b73e890b644c6a142bdbac59b22d6a676f3b63ddafb52d914bb9d395b8bf5aedcbcc90429337df431ebd758a07a6 +8857830a7351025617a08bc44caec28d2fae07ebf5ffc9f01d979ce2a53839a670e61ae2783e138313929129790a51a1 +aa3e420321ed6f0aa326d28d1a10f13facec6f605b6218a6eb9cbc074801f3467bf013a456d1415a5536f12599efa3d3 +824aed0951957b00ea2f3d423e30328a3527bf6714cf9abbae84cf27e58e5c35452ba89ccc011de7c68c75d6e021d8f1 +a2e87cc06bf202e953fb1081933d8b4445527dde20e38ed1a4f440144fd8fa464a2b73e068b140562e9045e0f4bd3144 +ae3b8f06ad97d7ae3a5e5ca839efff3e4824dc238c0c03fc1a8d2fc8aa546cdfd165b784a31bb4dec7c77e9305b99a4b +b30c3e12395b1fb8b776f3ec9f87c70e35763a7b2ddc68f0f60a4982a84017f27c891a98561c830038deb033698ed7fc +874e507757cd1177d0dff0b0c62ce90130324442a33da3b2c8ee09dbca5d543e3ecfe707e9f1361e7c7db641c72794bb +b53012dd10b5e7460b57c092eaa06d6502720df9edbbe3e3f61a9998a272bf5baaac4a5a732ad4efe35d6fac6feca744 +85e6509d711515534d394e6cacbed6c81da710074d16ef3f4950bf2f578d662a494d835674f79c4d6315bced4defc5f0 +b6132b2a34b0905dcadc6119fd215419a7971fe545e52f48b768006944b4a9d7db1a74b149e2951ea48c083b752d0804 +989867da6415036d19b4bacc926ce6f4df7a556f50a1ba5f3c48eea9cefbb1c09da81481c8009331ee83f0859185e164 +960a6c36542876174d3fbc1505413e29f053ed87b8d38fef3af180491c7eff25200b45dd5fe5d4d8e63c7e8c9c00f4c8 +9040b59bd739d9cc2e8f6e894683429e4e876a8106238689ff4c22770ae5fdae1f32d962b30301fa0634ee163b524f35 +af3fcd0a45fe9e8fe256dc7eab242ef7f582dd832d147444483c62787ac820fafc6ca55d639a73f76bfa5e7f5462ab8f +b934c799d0736953a73d91e761767fdb78454355c4b15c680ce08accb57ccf941b13a1236980001f9e6195801cffd692 +8871e8e741157c2c326b22cf09551e78da3c1ec0fc0543136f581f1550f8bab03b0a7b80525c1e99812cdbf3a9698f96 +a8a977f51473a91d178ee8cfa45ffef8d6fd93ab1d6e428f96a3c79816d9c6a93cd70f94d4deda0125fd6816e30f3bea +a7688b3b0a4fc1dd16e8ba6dc758d3cfe1b7cf401c31739484c7fa253cce0967df1b290769bcefc9d23d3e0cb19e6218 +8ae84322662a57c6d729e6ff9d2737698cc2da2daeb1f39e506618750ed23442a6740955f299e4a15dda6db3e534d2c6 +a04a961cdccfa4b7ef83ced17ab221d6a043b2c718a0d6cc8e6f798507a31f10bf70361f70a049bc8058303fa7f96864 +b463e39732a7d9daec8a456fb58e54b30a6e160aa522a18b9a9e836488cce3342bcbb2e1deab0f5e6ec0a8796d77197d +b1434a11c6750f14018a2d3bcf94390e2948f4f187e93bb22070ca3e5393d339dc328cbfc3e48815f51929465ffe7d81 +84ff81d73f3828340623d7e3345553610aa22a5432217ef0ebd193cbf4a24234b190c65ca0873c22d10ea7b63bd1fbed +b6fe2723f0c47757932c2ddde7a4f8434f665612f7b87b4009c2635d56b6e16b200859a8ade49276de0ef27a2b6c970a +9742884ed7cd52b4a4a068a43d3faa02551a424136c85a9313f7cb58ea54c04aa83b0728fd741d1fe39621e931e88f8f +b7d2d65ea4d1ad07a5dee39e40d6c03a61264a56b1585b4d76fc5b2a68d80a93a42a0181d432528582bf08d144c2d6a9 +88c0f66bada89f8a43e5a6ead2915088173d106c76f724f4a97b0f6758aed6ae5c37c373c6b92cdd4aea8f6261f3a374 +81f9c43582cb42db3900747eb49ec94edb2284999a499d1527f03315fd330e5a509afa3bff659853570e9886aab5b28b +821f9d27d6beb416abf9aa5c79afb65a50ed276dbda6060103bc808bcd34426b82da5f23e38e88a55e172f5c294b4d40 +8ba307b9e7cb63a6c4f3851b321aebfdb6af34a5a4c3bd949ff7d96603e59b27ff4dc4970715d35f7758260ff942c9e9 +b142eb6c5f846de33227d0bda61d445a7c33c98f0a8365fe6ab4c1fabdc130849be597ef734305894a424ea715372d08 +a732730ae4512e86a741c8e4c87fee8a05ee840fec0e23b2e037d58dba8dde8d10a9bc5191d34d00598941becbbe467f +adce6f7c30fd221f6b10a0413cc76435c4bb36c2d60bca821e5c67409fe9dbb2f4c36ef85eb3d734695e4be4827e9fd3 +a74f00e0f9b23aff7b2527ce69852f8906dab9d6abe62ecd497498ab21e57542e12af9918d4fd610bb09e10b0929c510 +a593b6b0ef26448ce4eb3ab07e84238fc020b3cb10d542ff4b16d4e2be1bcde3797e45c9cf753b8dc3b0ffdb63984232 +aed3913afccf1aa1ac0eb4980eb8426d0baccebd836d44651fd72af00d09fac488a870223c42aca3ceb39752070405ae +b2c44c66a5ea7fde626548ba4cef8c8710191343d3dadfd3bb653ce715c0e03056a5303a581d47dde66e70ea5a2d2779 +8e5029b2ccf5128a12327b5103f7532db599846e422531869560ceaff392236434d87159f597937dbf4054f810c114f4 +82beed1a2c4477e5eb39fc5b0e773b30cfec77ef2b1bf17eadaf60eb35b6d0dd9d8cf06315c48d3546badb3f21cd0cca +90077bd6cc0e4be5fff08e5d07a5a158d36cebd1d1363125bc4fae0866ffe825b26f933d4ee5427ba5cd0c33c19a7b06 +a7ec0d8f079970e8e34f0ef3a53d3e0e45428ddcef9cc776ead5e542ef06f3c86981644f61c5a637e4faf001fb8c6b3e +ae6d4add6d1a6f90b22792bc9d40723ee6850c27d0b97eefafd5b7fd98e424aa97868b5287cc41b4fbd7023bca6a322c +831aa917533d077da07c01417feaa1408846363ba2b8d22c6116bb858a95801547dd88b7d7fa1d2e3f0a02bdeb2e103d +96511b860b07c8a5ed773f36d4aa9d02fb5e7882753bf56303595bcb57e37ccc60288887eb83bef08c657ec261a021a2 +921d2a3e7e9790f74068623de327443666b634c8443aba80120a45bba450df920b2374d96df1ce3fb1b06dd06f8cf6e3 +aa74451d51fe82b4581ead8e506ec6cd881010f7e7dd51fc388eb9a557db5d3c6721f81c151d08ebd9c2591689fbc13e +a972bfbcf4033d5742d08716c927c442119bdae336bf5dff914523b285ccf31953da2733759aacaa246a9af9f698342c +ad1fcd0cae0e76840194ce4150cb8a56ebed728ec9272035f52a799d480dfc85840a4d52d994a18b6edb31e79be6e8ad +a2c69fe1d36f235215432dad48d75887a44c99dfa0d78149acc74087da215a44bdb5f04e6eef88ff7eff80a5a7decc77 +a94ab2af2b6ee1bc6e0d4e689ca45380d9fbd3c5a65b9bd249d266a4d4c07bf5d5f7ef2ae6000623aee64027892bf8fe +881ec1fc514e926cdc66480ac59e139148ff8a2a7895a49f0dff45910c90cdda97b66441a25f357d6dd2471cddd99bb3 +884e6d3b894a914c8cef946a76d5a0c8351843b2bffa2d1e56c6b5b99c84104381dd1320c451d551c0b966f4086e60f9 +817c6c10ce2677b9fc5223500322e2b880583254d0bb0d247d728f8716f5e05c9ff39f135854342a1afecd9fbdcf7c46 +aaf4a9cb686a14619aa1fc1ac285dd3843ac3dd99f2b2331c711ec87b03491c02f49101046f3c5c538dc9f8dba2a0ac2 +97ecea5ce53ca720b5d845227ae61d70269a2f53540089305c86af35f0898bfd57356e74a8a5e083fa6e1ea70080bd31 +a22d811e1a20a75feac0157c418a4bfe745ccb5d29466ffa854dca03e395b6c3504a734341746b2846d76583a780b32e +940cbaa0d2b2db94ae96b6b9cf2deefbfd059e3e5745de9aec4a25f0991b9721e5cd37ef71c631575d1a0c280b01cd5b +ae33cb4951191258a11044682de861bf8d92d90ce751b354932dd9f3913f542b6a0f8a4dc228b3cd9244ac32c4582832 +a580df5e58c4274fe0f52ac2da1837e32f5c9db92be16c170187db4c358f43e5cfdda7c5911dcc79d77a5764e32325f5 +81798178cb9d8affa424f8d3be67576ba94d108a28ccc01d330c51d5a63ca45bb8ca63a2f569b5c5fe1303cecd2d777f +89975b91b94c25c9c3660e4af4047a8bacf964783010820dbc91ff8281509379cb3b24c25080d5a01174dd9a049118d5 +a7327fcb3710ed3273b048650bde40a32732ef40a7e58cf7f2f400979c177944c8bc54117ba6c80d5d4260801dddab79 +92b475dc8cb5be4b90c482f122a51bcb3b6c70593817e7e2459c28ea54a7845c50272af38119406eaadb9bcb993368d0 +9645173e9ecefc4f2eae8363504f7c0b81d85f8949a9f8a6c01f2d49e0a0764f4eacecf3e94016dd407fc14494fce9f9 +9215fd8983d7de6ae94d35e6698226fc1454977ae58d42d294be9aad13ac821562ad37d5e7ee5cdfe6e87031d45cd197 +810360a1c9b88a9e36f520ab5a1eb8bed93f52deefbe1312a69225c0a08edb10f87cc43b794aced9c74220cefcc57e7d +ad7e810efd61ed4684aeda9ed8bb02fb9ae4b4b63fda8217d37012b94ff1b91c0087043bfa4e376f961fff030c729f3b +8b07c95c6a06db8738d10bb03ec11b89375c08e77f0cab7e672ce70b2685667ca19c7e1c8b092821d31108ea18dfd4c7 +968825d025ded899ff7c57245250535c732836f7565eab1ae23ee7e513201d413c16e1ba3f5166e7ac6cf74de8ceef4f +908243370c5788200703ade8164943ad5f8c458219186432e74dbc9904a701ea307fd9b94976c866e6c58595fd891c4b +959969d16680bc535cdc6339e6186355d0d6c0d53d7bbfb411641b9bf4b770fd5f575beef5deec5c4fa4d192d455c350 +ad177f4f826a961adeac76da40e2d930748effff731756c797eddc4e5aa23c91f070fb69b19221748130b0961e68a6bb +82f8462bcc25448ef7e0739425378e9bb8a05e283ce54aae9dbebaf7a3469f57833c9171672ad43a79778366c72a5e37 +a28fb275b1845706c2814d9638573e9bc32ff552ebaed761fe96fdbce70395891ca41c400ae438369264e31a2713b15f +8a9c613996b5e51dadb587a787253d6081ea446bf5c71096980bf6bd3c4b69905062a8e8a3792de2d2ece3b177a71089 +8d5aefef9f60cb27c1db2c649221204dda48bb9bf8bf48f965741da051340e8e4cab88b9d15c69f3f84f4c854709f48a +93ebf2ca6ad85ab6deace6de1a458706285b31877b1b4d7dcb9d126b63047efaf8c06d580115ec9acee30c8a7212fa55 +b3ee46ce189956ca298057fa8223b7fd1128cf52f39159a58bca03c71dd25161ac13f1472301f72aef3e1993fe1ab269 +a24d7a8d066504fc3f5027ccb13120e2f22896860e02c45b5eba1dbd512d6a17c28f39155ea581619f9d33db43a96f92 +ae9ceacbfe12137db2c1a271e1b34b8f92e4816bad1b3b9b6feecc34df0f8b3b0f7ed0133acdf59c537d43d33fc8d429 +83967e69bf2b361f86361bd705dce0e1ad26df06da6c52b48176fe8dfcbeb03c462c1a4c9e649eff8c654b18c876fdef +9148e6b814a7d779c19c31e33a068e97b597de1f8100513db3c581190513edc4d544801ce3dd2cf6b19e0cd6daedd28a +94ccdafc84920d320ed22de1e754adea072935d3c5f8c2d1378ebe53d140ea29853f056fb3fb1e375846061a038cc9bc +afb43348498c38b0fa5f971b8cdd3a62c844f0eb52bc33daf2f67850af0880fce84ecfb96201b308d9e6168a0d443ae3 +86d5736520a83538d4cd058cc4b4e84213ed00ebd6e7af79ae787adc17a92ba5359e28ba6c91936d967b4b28d24c3070 +b5210c1ff212c5b1e9ef9126e08fe120a41e386bb12c22266f7538c6d69c7fd8774f11c02b81fd4e88f9137b020801fe +b78cfd19f94d24e529d0f52e18ce6185cb238edc6bd43086270fd51dd99f664f43dd4c7d2fe506762fbd859028e13fcf +a6e7220598c554abdcc3fdc587b988617b32c7bb0f82c06205467dbedb58276cc07cae317a190f19d19078773f4c2bbb +b88862809487ee430368dccd85a5d72fa4d163ca4aad15c78800e19c1a95be2192719801e315d86cff7795e0544a77e4 +87ecb13a03921296f8c42ceb252d04716f10e09c93962239fcaa0a7fef93f19ab3f2680bc406170108bc583e9ff2e721 +a810cd473832b6581c36ec4cb403f2849357ba2d0b54df98ef3004b8a530c078032922a81d40158f5fb0043d56477f6e +a247b45dd85ca7fbb718b328f30a03f03c84aef2c583fbdc9fcc9eb8b52b34529e8c8f535505c10598b1b4dac3d7c647 +96ee0b91313c68bac4aa9e065ce9e1d77e51ca4cff31d6a438718c58264dee87674bd97fc5c6b8008be709521e4fd008 +837567ad073e42266951a9a54750919280a2ac835a73c158407c3a2b1904cf0d17b7195a393c71a18ad029cbd9cf79ee +a6a469c44b67ebf02196213e7a63ad0423aab9a6e54acc6fcbdbb915bc043586993454dc3cd9e4be8f27d67c1050879b +8712d380a843b08b7b294f1f06e2f11f4ad6bcc655fdde86a4d8bc739c23916f6fad2b902fe47d6212f03607907e9f0e +920adfb644b534789943cdae1bdd6e42828dda1696a440af2f54e6b97f4f97470a1c6ea9fa6a2705d8f04911d055acd1 +a161c73adf584a0061e963b062f59d90faac65c9b3a936b837a10d817f02fcabfa748824607be45a183dd40f991fe83f +874f4ecd408c76e625ea50bc59c53c2d930ee25baf4b4eca2440bfbffb3b8bc294db579caa7c68629f4d9ec24187c1ba +8bff18087f112be7f4aa654e85c71fef70eee8ae480f61d0383ff6f5ab1a0508f966183bb3fc4d6f29cb7ca234aa50d3 +b03b46a3ca3bc743a173cbc008f92ab1aedd7466b35a6d1ca11e894b9482ea9dc75f8d6db2ddd1add99bfbe7657518b7 +8b4f3691403c3a8ad9e097f02d130769628feddfa8c2b3dfe8cff64e2bed7d6e5d192c1e2ba0ac348b8585e94acd5fa1 +a0d9ca4a212301f97591bf65d5ef2b2664766b427c9dd342e23cb468426e6a56be66b1cb41fea1889ac5d11a8e3c50a5 +8c93ed74188ca23b3df29e5396974b9cc135c91fdefdea6c0df694c8116410e93509559af55533a3776ac11b228d69b1 +82dd331fb3f9e344ebdeeb557769b86a2cc8cc38f6c298d7572a33aea87c261afa9dbd898989139b9fc16bc1e880a099 +a65faedf326bcfd8ef98a51410c78b021d39206704e8291cd1f09e096a66b9b0486be65ff185ca224c45918ac337ddeb +a188b37d363ac072a766fd5d6fa27df07363feff1342217b19e3c37385e42ffde55e4be8355aceaa2f267b6d66b4ac41 +810fa3ba3e96d843e3bafd3f2995727f223d3567c8ba77d684c993ba1773c66551eb5009897c51b3fe9b37196984f5ec +87631537541852da323b4353af45a164f68b304d24c01183bf271782e11687f3fcf528394e1566c2a26cb527b3148e64 +b721cb2b37b3c477a48e3cc0044167d51ff568a5fd2fb606e5aec7a267000f1ddc07d3db919926ae12761a8e017c767c +904dfad4ba2cc1f6e60d1b708438a70b1743b400164cd981f13c064b8328d5973987d4fb9cf894068f29d3deaf624dfb +a70491538893552c20939fae6be2f07bfa84d97e2534a6bbcc0f1729246b831103505e9f60e97a8fa7d2e6c1c2384579 +8726cf1b26b41f443ff7485adcfddc39ace2e62f4d65dd0bb927d933e262b66f1a9b367ded5fbdd6f3b0932553ac1735 +ae8a11cfdf7aa54c08f80cb645e3339187ab3886babe9fae5239ba507bb3dd1c0d161ca474a2df081dcd3d63e8fe445e +92328719e97ce60e56110f30a00ac5d9c7a2baaf5f8d22355d53c1c77941e3a1fec7d1405e6fbf8959665fe2ba7a8cad +8d9d6255b65798d0018a8cccb0b6343efd41dc14ff2058d3eed9451ceaad681e4a0fa6af67b0a04318aa628024e5553d +b70209090055459296006742d946a513f0cba6d83a05249ee8e7a51052b29c0ca9722dc4af5f9816a1b7938a5dac7f79 +aab7b766b9bf91786dfa801fcef6d575dc6f12b77ecc662eb4498f0312e54d0de9ea820e61508fc8aeee5ab5db529349 +a8104b462337748b7f086a135d0c3f87f8e51b7165ca6611264b8fb639d9a2f519926cb311fa2055b5fadf03da70c678 +b0d2460747d5d8b30fc6c6bd0a87cb343ddb05d90a51b465e8f67d499cfc5e3a9e365da05ae233bbee792cdf90ec67d5 +aa55f5bf3815266b4a149f85ed18e451c93de9163575e3ec75dd610381cc0805bb0a4d7c4af5b1f94d10231255436d2c +8d4c6a1944ff94426151909eb5b99cfd92167b967dabe2bf3aa66bb3c26c449c13097de881b2cfc1bf052862c1ef7b03 +8862296162451b9b6b77f03bf32e6df71325e8d7485cf3335d66fd48b74c2a8334c241db8263033724f26269ad95b395 +901aa96deb26cda5d9321190ae6624d357a41729d72ef1abfd71bebf6139af6d690798daba53b7bc5923462115ff748a +96c195ec4992728a1eb38cdde42d89a7bce150db43adbc9e61e279ea839e538deec71326b618dd39c50d589f78fc0614 +b6ff8b8aa0837b99a1a8b46fb37f20ad4aecc6a98381b1308697829a59b8442ffc748637a88cb30c9b1f0f28a926c4f6 +8d807e3dca9e7bef277db1d2cfb372408dd587364e8048b304eff00eacde2c723bfc84be9b98553f83cba5c7b3cba248 +8800c96adb0195c4fc5b24511450dee503c32bf47044f5e2e25bd6651f514d79a2dd9b01cd8c09f3c9d3859338490f57 +89fe366096097e38ec28dd1148887112efa5306cc0c3da09562aafa56f4eb000bf46ff79bf0bdd270cbde6bf0e1c8957 +af409a90c2776e1e7e3760b2042507b8709e943424606e31e791d42f17873a2710797f5baaab4cc4a19998ef648556b0 +8d761863c9b6edbd232d35ab853d944f5c950c2b643f84a1a1327ebb947290800710ff01dcfa26dc8e9828481240e8b1 +90b95e9be1e55c463ed857c4e0617d6dc3674e99b6aa62ed33c8e79d6dfcf7d122f4f4cc2ee3e7c5a49170cb617d2e2e +b3ff381efefabc4db38cc4727432e0301949ae4f16f8d1dea9b4f4de611cf5a36d84290a0bef160dac4e1955e516b3b0 +a8a84564b56a9003adcadb3565dc512239fc79572762cda7b5901a255bc82656bb9c01212ad33d6bef4fbbce18dacc87 +90a081890364b222eef54bf0075417f85e340d2fec8b7375995f598aeb33f26b44143ebf56fca7d8b4ebb36b5747b0eb +ade6ee49e1293224ddf2d8ab7f14bb5be6bc6284f60fd5b3a1e0cf147b73cff57cf19763b8a36c5083badc79c606b103 +b2fa99806dd2fa3de09320b615a2570c416c9bcdb052e592b0aead748bbe407ec9475a3d932ae48b71c2627eb81986a6 +91f3b7b73c8ccc9392542711c45fe6f236057e6efad587d661ad5cb4d6e88265f86b807bb1151736b1009ab74fd7acb4 +8800e2a46af96696dfbdcbf2ca2918b3dcf28ad970170d2d1783b52b8d945a9167d052beeb55f56c126da7ffa7059baa +9862267a1311c385956b977c9aa08548c28d758d7ba82d43dbc3d0a0fd1b7a221d39e8399997fea9014ac509ff510ac4 +b7d24f78886fd3e2d283e18d9ad5a25c1a904e7d9b9104bf47da469d74f34162e27e531380dbbe0a9d051e6ffd51d6e7 +b0f445f9d143e28b9df36b0f2c052da87ee2ca374d9d0fbe2eff66ca6fe5fe0d2c1951b428d58f7314b7e74e45d445ea +b63fc4083eabb8437dafeb6a904120691dcb53ce2938b820bb553da0e1eecd476f72495aacb72600cf9cad18698fd3db +b9ffd8108eaebd582d665f8690fe8bb207fd85185e6dd9f0b355a09bac1bbff26e0fdb172bc0498df025414e88fe2eda +967ed453e1f1a4c5b7b6834cc9f75c13f6889edc0cc91dc445727e9f408487bbf05c337103f61397a10011dfbe25d61d +98ceb673aff36e1987d5521a3984a07079c3c6155974bb8b413e8ae1ce84095fe4f7862fba7aefa14753eb26f2a5805f +85f01d28603a8fdf6ce6a50cb5c44f8a36b95b91302e3f4cd95c108ce8f4d212e73aec1b8d936520d9226802a2bd9136 +88118e9703200ca07910345fbb789e7a8f92bd80bbc79f0a9e040e8767d33df39f6eded403a9b636eabf9101e588482a +90833a51eef1b10ed74e8f9bbd6197e29c5292e469c854eed10b0da663e2bceb92539710b1858bbb21887bd538d28d89 +b513b905ec19191167c6193067b5cfdf5a3d3828375360df1c7e2ced5815437dfd37f0c4c8f009d7fb29ff3c8793f560 +b1b6d405d2d18f9554b8a358cc7e2d78a3b34269737d561992c8de83392ac9a2857be4bf15de5a6c74e0c9d0f31f393c +b828bd3e452b797323b798186607849f85d1fb20c616833c0619360dfd6b3e3aa000fd09dafe4b62d74abc41072ff1a9 +8efde67d0cca56bb2c464731879c9ac46a52e75bac702a63200a5e192b4f81c641f855ca6747752b84fe469cb7113b6c +b2762ba1c89ac3c9a983c242e4d1c2610ff0528585ed5c0dfc8a2c0253551142af9b59f43158e8915a1da7cc26b9df67 +8a3f1157fb820d1497ef6b25cd70b7e16bb8b961b0063ad340d82a79ee76eb2359ca9e15e6d42987ed7f154f5eeaa2da +a75e29f29d38f09c879f971c11beb5368affa084313474a5ecafa2896180b9e47ea1995c2733ec46f421e395a1d9cffe +8e8c3dd3e7196ef0b4996b531ec79e4a1f211db5d5635e48ceb80ff7568b2ff587e845f97ee703bb23a60945ad64314a +8e7f32f4a3e3c584af5e3d406924a0aa34024c42eca74ef6cc2a358fd3c9efaf25f1c03aa1e66bb94b023a2ee2a1cace +ab7dce05d59c10a84feb524fcb62478906b3fa045135b23afbede3bb32e0c678d8ebe59feabccb5c8f3550ea76cae44b +b38bb4b44d827f6fd3bd34e31f9186c59e312dbfadd4a7a88e588da10146a78b1f8716c91ad8b806beb8da65cab80c4c +9490ce9442bbbd05438c7f5c4dea789f74a7e92b1886a730544b55ba377840740a3ae4f2f146ee73f47c9278b0e233bc +83c003fab22a7178eed1a668e0f65d4fe38ef3900044e9ec63070c23f2827d36a1e73e5c2b883ec6a2afe2450171b3b3 +9982f02405978ddc4fca9063ebbdb152f524c84e79398955e66fe51bc7c1660ec1afc3a86ec49f58d7b7dde03505731c +ab337bd83ccdd2322088ffa8d005f450ced6b35790f37ab4534313315ee84312adc25e99cce052863a8bedee991729ed +8312ce4bec94366d88f16127a17419ef64285cd5bf9e5eda010319b48085966ed1252ed2f5a9fd3e0259b91bb65f1827 +a60d5a6327c4041b0c00a1aa2f0af056520f83c9ce9d9ccd03a0bd4d9e6a1511f26a422ea86bd858a1f77438adf07e6c +b84a0a0b030bdad83cf5202aa9afe58c9820e52483ab41f835f8c582c129ee3f34aa096d11c1cd922eda02ea1196a882 +8077d105317f4a8a8f1aadeb05e0722bb55f11abcb490c36c0904401107eb3372875b0ac233144829e734f0c538d8c1d +9202503bd29a6ec198823a1e4e098f9cfe359ed51eb5174d1ca41368821bfeebcbd49debfd02952c41359d1c7c06d2b1 +abc28c155e09365cb77ffead8dc8f602335ef93b2f44e4ef767ce8fc8ef9dd707400f3a722e92776c2e0b40192c06354 +b0f6d1442533ca45c9399e0a63a11f85ff288d242cea6cb3b68c02e77bd7d158047cae2d25b3bcd9606f8f66d9b32855 +b01c3d56a0db84dc94575f4b6ee2de4beca3230e86bed63e2066beb22768b0a8efb08ebaf8ac3dedb5fe46708b084807 +8c8634b0432159f66feaabb165842d1c8ac378f79565b1b90c381aa8450eb4231c3dad11ec9317b9fc2b155c3a771e32 +8e67f623d69ecd430c9ee0888520b6038f13a2b6140525b056dc0951f0cfed2822e62cf11d952a483107c5c5acac4826 +9590bb1cba816dd6acd5ac5fba5142c0a19d53573e422c74005e0bcf34993a8138c83124cad35a3df65879dba6134edd +801cd96cde0749021a253027118d3ea135f3fcdbe895db08a6c145641f95ebd368dd6a1568d995e1d0084146aebe224a +848b5d196427f6fc1f762ee3d36e832b64a76ec1033cfedc8b985dea93932a7892b8ef1035c653fb9dcd9ab2d9a44ac8 +a1017eb83d5c4e2477e7bd2241b2b98c4951a3b391081cae7d75965cadc1acaec755cf350f1f3d29741b0828e36fedea +8d6d2785e30f3c29aad17bd677914a752f831e96d46caf54446d967cb2432be2c849e26f0d193a60bee161ea5c6fe90a +935c0ba4290d4595428e034b5c8001cbd400040d89ab00861108e8f8f4af4258e41f34a7e6b93b04bc253d3b9ffc13bf +aac02257146246998477921cef2e9892228590d323b839f3e64ea893b991b463bc2f47e1e5092ddb47e70b2f5bce7622 +b921fde9412970a5d4c9a908ae8ce65861d06c7679af577cf0ad0d5344c421166986bee471fd6a6cecb7d591f06ec985 +8ef4c37487b139d6756003060600bb6ebac7ea810b9c4364fc978e842f13ac196d1264fbe5af60d76ff6d9203d8e7d3f +94b65e14022b5cf6a9b95f94be5ace2711957c96f4211c3f7bb36206bd39cfbd0ea82186cab5ad0577a23214a5c86e9e +a31c166d2a2ca1d5a75a5920fef7532681f62191a50d8555fdaa63ba4581c3391cc94a536fc09aac89f64eafceec3f90 +919a8cc128de01e9e10f5d83b08b52293fdd41bde2b5ae070f3d95842d4a16e5331cf2f3d61c765570c8022403610fa4 +b23d6f8331eef100152d60483cfa14232a85ee712c8538c9b6417a5a7c5b353c2ac401390c6c215cb101f5cee6b5f43e +ab357160c08a18319510a571eafff154298ce1020de8e1dc6138a09fcb0fcbcdd8359f7e9386bda00b7b9cdea745ffdc +ab55079aea34afa5c0bd1124b9cdfe01f325b402fdfa017301bf87812eaa811ea5798c3aaf818074d420d1c782b10ada +ade616010dc5009e7fc4f8d8b00dc716686a5fa0a7816ad9e503e15839d3b909b69d9dd929b7575376434ffec0d2bea8 +863997b97ed46898a8a014599508fa3079f414b1f4a0c4fdc6d74ae8b444afa350f327f8bfc2a85d27f9e2d049c50135 +8d602ff596334efd4925549ed95f2aa762b0629189f0df6dbb162581657cf3ea6863cd2287b4d9c8ad52813d87fcd235 +b70f68c596dcdeed92ad5c6c348578b26862a51eb5364237b1221e840c47a8702f0fbc56eb520a22c0eed99795d3903e +9628088f8e0853cefadee305a8bf47fa990c50fa96a82511bbe6e5dc81ef4b794e7918a109070f92fc8384d77ace226f +97e26a46e068b605ce96007197ecd943c9a23881862f4797a12a3e96ba2b8d07806ad9e2a0646796b1889c6b7d75188c +b1edf467c068cc163e2d6413cc22b16751e78b3312fe47b7ea82b08a1206d64415b2c8f2a677fa89171e82cc49797150 +a44d15ef18745b251429703e3cab188420e2d974de07251501799b016617f9630643fcd06f895634d8ecdd579e1bf000 +abd126df3917ba48c618ee4dbdf87df506193462f792874439043fa1b844466f6f4e0ff2e42516e63b5b23c0892b2695 +a2a67f57c4aa3c2aa1eeddbfd5009a89c26c2ce8fa3c96a64626aba19514beb125f27df8559506f737de3eae0f1fc18f +a633e0132197e6038197304b296ab171f1d8e0d0f34dcf66fe9146ac385b0239232a8470b9205a4802ab432389f4836d +a914b3a28509a906c3821463b936455d58ff45dcbe158922f9efb2037f2eb0ce8e92532d29b5d5a3fcd0d23fa773f272 +a0e1412ce4505daf1a2e59ce4f0fc0e0023e335b50d2b204422f57cd65744cc7a8ed35d5ef131a42c70b27111d3115b7 +a2339e2f2b6072e88816224fdd612c04d64e7967a492b9f8829db15367f565745325d361fd0607b0def1be384d010d9e +a7309fc41203cb99382e8193a1dcf03ac190a7ce04835304eb7e341d78634e83ea47cb15b885601956736d04cdfcaa01 +81f3ccd6c7f5b39e4e873365f8c37b214e8ab122d04a606fbb7339dc3298c427e922ec7418002561d4106505b5c399ee +92c121cf914ca549130e352eb297872a63200e99b148d88fbc9506ad882bec9d0203d65f280fb5b0ba92e336b7f932e8 +a4b330cf3f064f5b131578626ad7043ce2a433b6f175feb0b52d36134a454ca219373fd30d5e5796410e005b69082e47 +86fe5774112403ad83f9c55d58317eeb17ad8e1176d9f2f69c2afb7ed83bc718ed4e0245ceab4b377f5f062dcd4c00e7 +809d152a7e2654c7fd175b57f7928365a521be92e1ed06c05188a95864ddb25f7cab4c71db7d61bbf4cae46f3a1d96ce +b82d663e55c2a5ada7e169e9b1a87bc1c0177baf1ec1c96559b4cb1c5214ce1ddf2ab8d345014cab6402f3774235cf5a +86580af86df1bd2c385adb8f9a079e925981b7184db66fc5fe5b14cddb82e7d836b06eaeef14924ac529487b23dae111 +b5f5f4c5c94944ecc804df6ab8687d64e27d988cbfeae1ba7394e0f6adbf778c5881ead7cd8082dd7d68542b9bb4ecd5 +a6016916146c2685c46e8fdd24186394e2d5496e77e08c0c6a709d4cd7dfa97f1efcef94922b89196819076a91ad37b5 +b778e7367ded3b6eab53d5fc257f7a87e8faf74a593900f2f517220add2125be3f6142022660d8181df8d164ad9441ce +8581b2d36abe6f553add4d24be761bec1b8efaa2929519114346615380b3c55b59e6ad86990e312f7e234d0203bdf59b +9917e74fd45c3f71a829ff5498a7f6b5599b48c098dda2339bf04352bfc7f368ccf1a407f5835901240e76452ae807d7 +afd196ce6f9335069138fd2e3d133134da253978b4ce373152c0f26affe77a336505787594022e610f8feb722f7cc1fb +a477491a1562e329764645e8f24d8e228e5ef28c9f74c6b5b3abc4b6a562c15ffb0f680d372aed04d9e1bf944dece7be +9767440d58c57d3077319d3a330e5322b9ba16981ec74a5a14d53462eab59ae7fd2b14025bfc63b268862094acb444e6 +80986d921be3513ef69264423f351a61cb48390c1be8673aee0f089076086aaebea7ebe268fd0aa7182695606116f679 +a9554c5c921c07b450ee04e34ec58e054ac1541b26ce2ce5a393367a97348ba0089f53db6660ad76b60278b66fd12e3e +95097e7d2999b3e84bf052c775581cf361325325f4a50192521d8f4693c830bed667d88f482dc1e3f833aa2bd22d2cbf +9014c91d0f85aefd28436b5228c12f6353c055a9326c7efbf5e071e089e2ee7c070fcbc84c5fafc336cbb8fa6fec1ca1 +90f57ba36ee1066b55d37384942d8b57ae00f3cf9a3c1d6a3dfee1d1af42d4b5fa9baeb0cd7e46687d1d6d090ddb931d +8e4b1db12fd760a17214c9e47f1fce6e43c0dbb4589a827a13ac61aaae93759345697bb438a00edab92e0b7b62414683 +8022a959a513cdc0e9c705e0fc04eafd05ff37c867ae0f31f6d01cddd5df86138a426cab2ff0ac8ff03a62e20f7e8f51 +914e9a38829834c7360443b8ed86137e6f936389488eccf05b4b4db7c9425611705076ecb3f27105d24b85c852be7511 +957fb10783e2bd0db1ba66b18e794df710bc3b2b05776be146fa5863c15b1ebdd39747b1a95d9564e1772cdfc4f37b8a +b6307028444daed8ed785ac9d0de76bc3fe23ff2cc7e48102553613bbfb5afe0ebe45e4212a27021c8eb870721e62a1f +8f76143597777d940b15a01b39c5e1b045464d146d9a30a6abe8b5d3907250e6c7f858ff2308f8591e8b0a7b3f3c568a +96163138ac0ce5fd00ae9a289648fd9300a0ca0f63a88481d703ecd281c06a52a3b5178e849e331f9c85ca4ba398f4cc +a63ef47c3e18245b0482596a09f488a716df3cbd0f9e5cfabed0d742843e65db8961c556f45f49762f3a6ac8b627b3ef +8cb595466552e7c4d42909f232d4063e0a663a8ef6f6c9b7ce3a0542b2459cde04e0e54c7623d404acb5b82775ac04f6 +b47fe69960eb45f399368807cff16d941a5a4ebad1f5ec46e3dc8a2e4d598a7e6114d8f0ca791e9720fd786070524e2b +89eb5ff83eea9df490e5beca1a1fbbbbcf7184a37e2c8c91ede7a1e654c81e8cd41eceece4042ea7918a4f4646b67fd6 +a84f5d155ed08b9054eecb15f689ba81e44589e6e7207a99790c598962837ca99ec12344105b16641ca91165672f7153 +a6cc8f25c2d5b2d2f220ec359e6a37a52b95fa6af6e173c65e7cd55299eff4aa9e6d9e6f2769e6459313f1f2aecb0fab +afcde944411f017a9f7979755294981e941cc41f03df5e10522ef7c7505e5f1babdd67b3bf5258e8623150062eb41d9b +8fab39f39c0f40182fcd996ade2012643fe7731808afbc53f9b26900b4d4d1f0f5312d9d40b3df8baa4739970a49c732 +ae193af9726da0ebe7df1f9ee1c4846a5b2a7621403baf8e66c66b60f523e719c30c6b4f897bb14b27d3ff3da8392eeb +8ac5adb82d852eba255764029f42e6da92dcdd0e224d387d1ef94174038db9709ac558d90d7e7c57ad4ce7f89bbfc38c +a2066b3458fdf678ee487a55dd5bfb74fde03b54620cb0e25412a89ee28ad0d685e309a51e3e4694be2fa6f1593a344c +88d031745dd0ae07d61a15b594be5d4b2e2a29e715d081649ad63605e3404b0c3a5353f0fd9fad9c05c18e93ce674fa1 +8283cfb0ef743a043f2b77ecaeba3005e2ca50435585b5dd24777ee6bce12332f85e21b446b536da38508807f0f07563 +b376de22d5f6b0af0b59f7d9764561f4244cf8ffe22890ecd3dcf2ff1832130c9b821e068c9d8773136f4796721e5963 +ae3afc50c764f406353965363840bf28ee85e7064eb9d5f0bb3c31c64ab10f48c853e942ee2c9b51bae59651eaa08c2f +948b204d103917461a01a6c57a88f2d66b476eae5b00be20ec8c747650e864bc8a83aee0aff59cb7584b7a3387e0ee48 +81ab098a082b07f896c5ffd1e4446cb7fb44804cbbf38d125208b233fc82f8ec9a6a8d8dd1c9a1162dc28ffeec0dde50 +a149c6f1312821ced2969268789a3151bdda213451760b397139a028da609c4134ac083169feb0ee423a0acafd10eceb +b0ac9e27a5dadaf523010f730b28f0ebac01f460d3bbbe277dc9d44218abb5686f4fac89ae462682fef9edbba663520a +8d0e0073cca273daaaa61b6fc54bfe5a009bc3e20ae820f6c93ba77b19eca517d457e948a2de5e77678e4241807157cb +ad61d3a2edf7c7533a04964b97499503fd8374ca64286dba80465e68fe932e96749b476f458c6fc57cb1a7ca85764d11 +90eb5e121ae46bc01a30881eaa556f46bd8457a4e80787cf634aab355082de34ac57d7f497446468225f7721e68e2a47 +8cdac557de7c42d1f3780e33dec1b81889f6352279be81c65566cdd4952d4c15d79e656cbd46035ab090b385e90245ef +82b67e61b88b84f4f4d4f65df37b3e3dcf8ec91ea1b5c008fdccd52da643adbe6468a1cfdb999e87d195afe2883a3b46 +8503b467e8f5d6048a4a9b78496c58493a462852cab54a70594ae3fd064cfd0deb4b8f336a262155d9fedcaa67d2f6fd +8db56c5ac763a57b6ce6832930c57117058e3e5a81532b7d19346346205e2ec614eb1a2ee836ef621de50a7bc9b7f040 +ad344699198f3c6e8c0a3470f92aaffc805b76266734414c298e10b5b3797ca53578de7ccb2f458f5e0448203f55282b +80602032c43c9e2a09154cc88b83238343b7a139f566d64cb482d87436b288a98f1ea244fd3bff8da3c398686a900c14 +a6385bd50ecd548cfb37174cdbb89e10025b5cadaf3cff164c95d7aef5a33e3d6a9bf0c681b9e11db9ef54ebeee2a0c1 +abf2d95f4aa34b0581eb9257a0cc8462b2213941a5deb8ba014283293e8b36613951b61261cc67bbd09526a54cbbff76 +a3d5de52f48df72c289ff713e445991f142390798cd42bd9d9dbefaee4af4f5faf09042d126b975cf6b98711c3072553 +8e627302ff3d686cff8872a1b7c2a57b35f45bf2fc9aa42b049d8b4d6996a662b8e7cbac6597f0cb79b0cc4e29fbf133 +8510702e101b39a1efbf4e504e6123540c34b5689645e70d0bac1ecc1baf47d86c05cef6c4317a4e99b4edaeb53f2d00 +aa173f0ecbcc6088f878f8726d317748c81ebf501bba461f163b55d66099b191ec7c55f7702f351a9c8eb42cfa3280e2 +b560a697eafab695bcef1416648a0a664a71e311ecbe5823ae903bd0ed2057b9d7574b9a86d3fe22aa3e6ddce38ea513 +8df6304a3d9cf40100f3f687575419c998cd77e5cc27d579cf4f8e98642de3609af384a0337d145dd7c5635172d26a71 +8105c7f3e4d30a29151849673853b457c1885c186c132d0a98e63096c3774bc9deb956cf957367e633d0913680bda307 +95373fc22c0917c3c2044ac688c4f29a63ed858a45c0d6d2d0fe97afd6f532dcb648670594290c1c89010ecc69259bef +8c2fae9bcadab341f49b55230310df93cac46be42d4caa0d42e45104148a91e527af1b4209c0d972448162aed28fab64 +b05a77baab70683f76209626eaefdda2d36a0b66c780a20142d23c55bd479ddd4ad95b24579384b6cf62c8eb4c92d021 +8e6bc6a7ea2755b4aaa19c1c1dee93811fcde514f03485fdc3252f0ab7f032c315614f6336e57cea25dcfb8fb6084eeb +b656a27d06aade55eadae2ad2a1059198918ea6cc3fd22c0ed881294d34d5ac7b5e4700cc24350e27d76646263b223aa +a296469f24f6f56da92d713afcd4dd606e7da1f79dc4e434593c53695847eefc81c7c446486c4b3b8c8d00c90c166f14 +87a326f57713ac2c9dffeb3af44b9f3c613a8f952676fc46343299122b47ee0f8d792abaa4b5db6451ced5dd153aabd0 +b689e554ba9293b9c1f6344a3c8fcb6951d9f9eac4a2e2df13de021aade7c186be27500e81388e5b8bcab4c80f220a31 +87ae0aa0aa48eac53d1ca5a7b93917de12db9e40ceabf8fdb40884ae771cfdf095411deef7c9f821af0b7070454a2608 +a71ffa7eae8ace94e6c3581d4cb2ad25d48cbd27edc9ec45baa2c8eb932a4773c3272b2ffaf077b40f76942a1f3af7f2 +94c218c91a9b73da6b7a495b3728f3028df8ad9133312fc0c03e8c5253b7ccb83ed14688fd4602e2fd41f29a0bc698bd +ae1e77b90ca33728af07a4c03fb2ef71cd92e2618e7bf8ed4d785ce90097fc4866c29999eb84a6cf1819d75285a03af2 +b7a5945b277dab9993cf761e838b0ac6eaa903d7111fca79f9fde3d4285af7a89bf6634a71909d095d7619d913972c9c +8c43b37be02f39b22029b20aca31bff661abce4471dca88aa3bddefd9c92304a088b2dfc8c4795acc301ca3160656af2 +b32e5d0fba024554bd5fe8a793ebe8003335ddd7f585876df2048dcf759a01285fecb53daae4950ba57f3a282a4d8495 +85ea7fd5e10c7b659df5289b2978b2c89e244f269e061b9a15fcab7983fc1962b63546e82d5731c97ec74b6804be63ef +96b89f39181141a7e32986ac02d7586088c5a9662cec39843f397f3178714d02f929af70630c12cbaba0268f8ba2d4fa +929ab1a2a009b1eb37a2817c89696a06426529ebe3f306c586ab717bd34c35a53eca2d7ddcdef36117872db660024af9 +a696dccf439e9ca41511e16bf3042d7ec0e2f86c099e4fc8879d778a5ea79e33aa7ce96b23dc4332b7ba26859d8e674d +a8fe69a678f9a194b8670a41e941f0460f6e2dbc60470ab4d6ae2679cc9c6ce2c3a39df2303bee486dbfde6844e6b31a +95f58f5c82de2f2a927ca99bf63c9fc02e9030c7e46d0bf6b67fe83a448d0ae1c99541b59caf0e1ccab8326231af09a5 +a57badb2c56ca2c45953bd569caf22968f76ed46b9bac389163d6fe22a715c83d5e94ae8759b0e6e8c2f27bff7748f3f +868726fd49963b24acb5333364dffea147e98f33aa19c7919dc9aca0fd26661cfaded74ede7418a5fadbe7f5ae67b67b +a8d8550dcc64d9f1dd7bcdab236c4122f2b65ea404bb483256d712c7518f08bb028ff8801f1da6aed6cbfc5c7062e33b +97e25a87dae23155809476232178538d4bc05d4ff0882916eb29ae515f2a62bfce73083466cc0010ca956aca200aeacc +b4ea26be3f4bd04aa82d7c4b0913b97bcdf5e88b76c57eb1a336cbd0a3eb29de751e1bc47c0e8258adec3f17426d0c71 +99ee555a4d9b3cf2eb420b2af8e3bc99046880536116d0ce7193464ac40685ef14e0e3c442f604e32f8338cb0ef92558 +8c64efa1da63cd08f319103c5c7a761221080e74227bbc58b8fb35d08aa42078810d7af3e60446cbaff160c319535648 +8d9fd88040076c28420e3395cbdfea402e4077a3808a97b7939d49ecbcf1418fe50a0460e1c1b22ac3f6e7771d65169a +ae3c19882d7a9875d439265a0c7003c8d410367627d21575a864b9cb4918de7dbdb58a364af40c5e045f3df40f95d337 +b4f7bfacab7b2cafe393f1322d6dcc6f21ffe69cd31edc8db18c06f1a2b512c27bd0618091fd207ba8df1808e9d45914 +94f134acd0007c623fb7934bcb65ef853313eb283a889a3ffa79a37a5c8f3665f3d5b4876bc66223610c21dc9b919d37 +aa15f74051171daacdc1f1093d3f8e2d13da2833624b80a934afec86fc02208b8f55d24b7d66076444e7633f46375c6a +a32d6bb47ef9c836d9d2371807bafbbbbb1ae719530c19d6013f1d1f813c49a60e4fa51d83693586cba3a840b23c0404 +b61b3599145ea8680011aa2366dc511a358b7d67672d5b0c5be6db03b0efb8ca5a8294cf220ea7409621f1664e00e631 +859cafc3ee90b7ececa1ed8ef2b2fc17567126ff10ca712d5ffdd16aa411a5a7d8d32c9cab1fbf63e87dce1c6e2f5f53 +a2fef1b0b2874387010e9ae425f3a9676d01a095d017493648bcdf3b31304b087ccddb5cf76abc4e1548b88919663b6b +939e18c73befc1ba2932a65ede34c70e4b91e74cc2129d57ace43ed2b3af2a9cc22a40fbf50d79a63681b6d98852866d +b3b4259d37b1b14aee5b676c9a0dd2d7f679ab95c120cb5f09f9fbf10b0a920cb613655ddb7b9e2ba5af4a221f31303c +997255fe51aaca6e5a9cb3359bcbf25b2bb9e30649bbd53a8a7c556df07e441c4e27328b38934f09c09d9500b5fabf66 +abb91be2a2d860fd662ed4f1c6edeefd4da8dc10e79251cf87f06029906e7f0be9b486462718f0525d5e049472692cb7 +b2398e593bf340a15f7801e1d1fbda69d93f2a32a889ec7c6ae5e8a37567ac3e5227213c1392ee86cfb3b56ec2787839 +8ddf10ccdd72922bed36829a36073a460c2118fc7a56ff9c1ac72581c799b15c762cb56cb78e3d118bb9f6a7e56cb25e +93e6bc0a4708d16387cacd44cf59363b994dc67d7ada7b6d6dbd831c606d975247541b42b2a309f814c1bfe205681fc6 +b93fc35c05998cffda2978e12e75812122831523041f10d52f810d34ff71944979054b04de0117e81ddf5b0b4b3e13c0 +92221631c44d60d68c6bc7b287509f37ee44cbe5fdb6935cee36b58b17c7325098f98f7910d2c3ca5dc885ad1d6dabc7 +a230124424a57fad3b1671f404a94d7c05f4c67b7a8fbacfccea28887b78d7c1ed40b92a58348e4d61328891cd2f6cee +a6a230edb8518a0f49d7231bc3e0bceb5c2ac427f045819f8584ba6f3ae3d63ed107a9a62aad543d7e1fcf1f20605706 +845be1fe94223c7f1f97d74c49d682472585d8f772762baad8a9d341d9c3015534cc83d102113c51a9dea2ab10d8d27b +b44262515e34f2db597c8128c7614d33858740310a49cdbdf9c8677c5343884b42c1292759f55b8b4abc4c86e4728033 +805592e4a3cd07c1844bc23783408310accfdb769cca882ad4d07d608e590a288b7370c2cb327f5336e72b7083a0e30f +95153e8b1140df34ee864f4ca601cb873cdd3efa634af0c4093fbaede36f51b55571ab271e6a133020cd34db8411241f +82878c1285cfa5ea1d32175c9401f3cc99f6bb224d622d3fd98cc7b0a27372f13f7ab463ce3a33ec96f9be38dbe2dfe3 +b7588748f55783077c27fc47d33e20c5c0f5a53fc0ac10194c003aa09b9f055d08ec971effa4b7f760553997a56967b3 +b36b4de6d1883b6951f59cfae381581f9c6352fcfcf1524fccdab1571a20f80441d9152dc6b48bcbbf00371337ca0bd5 +89c5523f2574e1c340a955cbed9c2f7b5fbceb260cb1133160dabb7d41c2f613ec3f6e74bbfab3c4a0a6f0626dbe068f +a52f58cc39f968a9813b1a8ddc4e83f4219e4dd82c7aa1dd083bea7edf967151d635aa9597457f879771759b876774e4 +8300a67c2e2e123f89704abfde095463045dbd97e20d4c1157bab35e9e1d3d18f1f4aaba9cbe6aa2d544e92578eaa1b6 +ac6a7f2918768eb6a43df9d3a8a04f8f72ee52f2e91c064c1c7d75cad1a3e83e5aba9fe55bb94f818099ac91ccf2e961 +8d64a2b0991cf164e29835c8ddef6069993a71ec2a7de8157bbfa2e00f6367be646ed74cbaf524f0e9fe13fb09fa15fd +8b2ffe5a545f9f680b49d0a9797a4a11700a2e2e348c34a7a985fc278f0f12def6e06710f40f9d48e4b7fbb71e072229 +8ab8f71cd337fa19178924e961958653abf7a598e3f022138b55c228440a2bac4176cea3aea393549c03cd38a13eb3fc +8419d28318c19ea4a179b7abb43669fe96347426ef3ac06b158d79c0acf777a09e8e770c2fb10e14b3a0421705990b23 +8bacdac310e1e49660359d0a7a17fe3d334eb820e61ae25e84cb52f863a2f74cbe89c2e9fc3283745d93a99b79132354 +b57ace3fa2b9f6b2db60c0d861ace7d7e657c5d35d992588aeed588c6ce3a80b6f0d49f8a26607f0b17167ab21b675e4 +83e265cde477f2ecc164f49ddc7fb255bb05ff6adc347408353b7336dc3a14fdedc86d5a7fb23f36b8423248a7a67ed1 +a60ada971f9f2d79d436de5d3d045f5ab05308cae3098acaf5521115134b2a40d664828bb89895840db7f7fb499edbc5 +a63eea12efd89b62d3952bf0542a73890b104dd1d7ff360d4755ebfa148fd62de668edac9eeb20507967ea37fb220202 +a0275767a270289adc991cc4571eff205b58ad6d3e93778ddbf95b75146d82517e8921bd0d0564e5b75fa0ccdab8e624 +b9b03fd3bf07201ba3a039176a965d736b4ef7912dd9e9bf69fe1b57c330a6aa170e5521fe8be62505f3af81b41d7806 +a95f640e26fb1106ced1729d6053e41a16e4896acac54992279ff873e5a969aad1dcfa10311e28b8f409ac1dab7f03bb +b144778921742418053cb3c70516c63162c187f00db2062193bb2c14031075dbe055d020cde761b26e8c58d0ea6df2c1 +8432fbb799e0435ef428d4fefc309a05dd589bce74d7a87faf659823e8c9ed51d3e42603d878e80f439a38be4321c2fa +b08ddef14e42d4fd5d8bf39feb7485848f0060d43b51ed5bdda39c05fe154fb111d29719ee61a23c392141358c0cfcff +8ae3c5329a5e025b86b5370e06f5e61177df4bda075856fade20a17bfef79c92f54ed495f310130021ba94fb7c33632b +92b6d3c9444100b4d7391febfc1dddaa224651677c3695c47a289a40d7a96d200b83b64e6d9df51f534564f272a2c6c6 +b432bc2a3f93d28b5e506d68527f1efeb2e2570f6be0794576e2a6ef9138926fdad8dd2eabfa979b79ab7266370e86bc +8bc315eacedbcfc462ece66a29662ca3dcd451f83de5c7626ef8712c196208fb3d8a0faf80b2e80384f0dd9772f61a23 +a72375b797283f0f4266dec188678e2b2c060dfed5880fc6bb0c996b06e91a5343ea2b695adaab0a6fd183b040b46b56 +a43445036fbaa414621918d6a897d3692fdae7b2961d87e2a03741360e45ebb19fcb1703d23f1e15bb1e2babcafc56ac +b9636b2ffe305e63a1a84bd44fb402442b1799bd5272638287aa87ca548649b23ce8ce7f67be077caed6aa2dbc454b78 +99a30bf0921d854c282b83d438a79f615424f28c2f99d26a05201c93d10378ab2cd94a792b571ddae5d4e0c0013f4006 +8648e3c2f93d70b392443be116b48a863e4b75991bab5db656a4ef3c1e7f645e8d536771dfe4e8d1ceda3be8d32978b0 +ab50dc9e6924c1d2e9d2e335b2d679fc7d1a7632e84964d3bac0c9fe57e85aa5906ec2e7b0399d98ddd022e9b19b5904 +ab729328d98d295f8f3272afaf5d8345ff54d58ff9884da14f17ecbdb7371857fdf2f3ef58080054e9874cc919b46224 +83fa5da7592bd451cad3ad7702b4006332b3aae23beab4c4cb887fa6348317d234bf62a359e665b28818e5410c278a09 +8bdbff566ae9d368f114858ef1f009439b3e9f4649f73efa946e678d6c781d52c69af195df0a68170f5f191b2eac286b +91245e59b4425fd4edb2a61d0d47c1ccc83d3ced8180de34887b9655b5dcda033d48cde0bdc3b7de846d246c053a02e8 +a2cb00721e68f1cad8933947456f07144dc69653f96ceed845bd577d599521ba99cdc02421118971d56d7603ed118cbf +af8cd66d303e808b22ec57860dd909ca64c27ec2c60e26ffecfdc1179d8762ffd2739d87b43959496e9fee4108df71df +9954136812dffcd5d3f167a500e7ab339c15cfc9b3398d83f64b0daa3dd5b9a851204f424a3493b4e326d3de81e50a62 +93252254d12511955f1aa464883ad0da793f84d900fea83e1df8bca0f2f4cf5b5f9acbaec06a24160d33f908ab5fea38 +997cb55c26996586ba436a95566bd535e9c22452ca5d2a0ded2bd175376557fa895f9f4def4519241ff386a063f2e526 +a12c78ad451e0ac911260ade2927a768b50cb4125343025d43474e7f465cdc446e9f52a84609c5e7e87ae6c9b3f56cda +a789d4ca55cbba327086563831b34487d63d0980ba8cf55197c016702ed6da9b102b1f0709ce3da3c53ff925793a3d73 +a5d76acbb76741ce85be0e655b99baa04f7f587347947c0a30d27f8a49ae78cce06e1cde770a8b618d3db402be1c0c4b +873c0366668c8faddb0eb7c86f485718d65f8c4734020f1a18efd5fa123d3ea8a990977fe13592cd01d17e60809cb5ff +b659b71fe70f37573ff7c5970cc095a1dc0da3973979778f80a71a347ef25ad5746b2b9608bad4ab9a4a53a4d7df42d7 +a34cbe05888e5e5f024a2db14cb6dcdc401a9cbd13d73d3c37b348f68688f87c24ca790030b8f84fef9e74b4eab5e412 +94ce8010f85875c045b0f014db93ef5ab9f1f6842e9a5743dce9e4cb872c94affd9e77c1f1d1ab8b8660b52345d9acb9 +adefa9b27a62edc0c5b019ddd3ebf45e4de846165256cf6329331def2e088c5232456d3de470fdce3fa758bfdd387512 +a6b83821ba7c1f83cc9e4529cf4903adb93b26108e3d1f20a753070db072ad5a3689643144bdd9c5ea06bb9a7a515cd0 +a3a9ddedc2a1b183eb1d52de26718151744db6050f86f3580790c51d09226bf05f15111691926151ecdbef683baa992c +a64bac89e7686932cdc5670d07f0b50830e69bfb8c93791c87c7ffa4913f8da881a9d8a8ce8c1a9ce5b6079358c54136 +a77b5a63452cb1320b61ab6c7c2ef9cfbcade5fd4727583751fb2bf3ea330b5ca67757ec1f517bf4d503ec924fe32fbd +8746fd8d8eb99639d8cd0ca34c0d9c3230ed5a312aab1d3d925953a17973ee5aeb66e68667e93caf9cb817c868ea8f3d +88a2462a26558fc1fbd6e31aa8abdc706190a17c27fdc4217ffd2297d1b1f3321016e5c4b2384c5454d5717dc732ed03 +b78893a97e93d730c8201af2e0d3b31cb923d38dc594ffa98a714e627c473d42ea82e0c4d2eeb06862ee22a9b2c54588 +920cc8b5f1297cf215a43f6fc843e379146b4229411c44c0231f6749793d40f07b9af7699fd5d21fd69400b97febe027 +a0f0eafce1e098a6b58c7ad8945e297cd93aaf10bc55e32e2e32503f02e59fc1d5776936577d77c0b1162cb93b88518b +98480ba0064e97a2e7a6c4769b4d8c2a322cfc9a3b2ca2e67e9317e2ce04c6e1108169a20bd97692e1cb1f1423b14908 +83dbbb2fda7e287288011764a00b8357753a6a44794cc8245a2275237f11affdc38977214e463ad67aec032f3dfa37e9 +86442fff37598ce2b12015ff19b01bb8a780b40ad353d143a0f30a06f6d23afd5c2b0a1253716c855dbf445cc5dd6865 +b8a4c60c5171189414887847b9ed9501bff4e4c107240f063e2d254820d2906b69ef70406c585918c4d24f1dd052142b +919f33a98e84015b2034b57b5ffe9340220926b2c6e45f86fd79ec879dbe06a148ae68b77b73bf7d01bd638a81165617 +95c13e78d89474a47fbc0664f6f806744b75dede95a479bbf844db4a7f4c3ae410ec721cb6ffcd9fa9c323da5740d5ae +ab7151acc41fffd8ec6e90387700bcd7e1cde291ea669567295bea1b9dd3f1df2e0f31f3588cd1a1c08af8120aca4921 +80e74c5c47414bd6eeef24b6793fb1fa2d8fb397467045fcff887c52476741d5bc4ff8b6d3387cb53ad285485630537f +a296ad23995268276aa351a7764d36df3a5a3cffd7dbeddbcea6b1f77adc112629fdeffa0918b3242b3ccd5e7587e946 +813d2506a28a2b01cb60f49d6bd5e63c9b056aa56946faf2f33bd4f28a8d947569cfead3ae53166fc65285740b210f86 +924b265385e1646287d8c09f6c855b094daaee74b9e64a0dddcf9ad88c6979f8280ba30c8597b911ef58ddb6c67e9fe3 +8d531513c70c2d3566039f7ca47cd2352fd2d55b25675a65250bdb8b06c3843db7b2d29c626eed6391c238fc651cf350 +82b338181b62fdc81ceb558a6843df767b6a6e3ceedc5485664b4ea2f555904b1a45fbb35f6cf5d96f27da10df82a325 +92e62faaedea83a37f314e1d3cb4faaa200178371d917938e59ac35090be1db4b4f4e0edb78b9c991de202efe4f313d8 +99d645e1b642c2dc065bac9aaa0621bc648c9a8351efb6891559c3a41ba737bd155fb32d7731950514e3ecf4d75980e4 +b34a13968b9e414172fb5d5ece9a39cf2eb656128c3f2f6cc7a9f0c69c6bae34f555ecc8f8837dc34b5e470e29055c78 +a2a0bb7f3a0b23a2cbc6585d59f87cd7e56b2bbcb0ae48f828685edd9f7af0f5edb4c8e9718a0aaf6ef04553ba71f3b7 +8e1a94bec053ed378e524b6685152d2b52d428266f2b6eadd4bcb7c4e162ed21ab3e1364879673442ee2162635b7a4d8 +9944adaff14a85eab81c73f38f386701713b52513c4d4b838d58d4ffa1d17260a6d056b02334850ea9a31677c4b078bd +a450067c7eceb0854b3eca3db6cf38669d72cb7143c3a68787833cbca44f02c0be9bfbe082896f8a57debb13deb2afb1 +8be4ad3ac9ef02f7df09254d569939757101ee2eda8586fefcd8c847adc1efe5bdcb963a0cafa17651befaafb376a531 +90f6de91ea50255f148ac435e08cf2ac00c772a466e38155bd7e8acf9197af55662c7b5227f88589b71abe9dcf7ba343 +86e5a24f0748b106dee2d4d54e14a3b0af45a96cbee69cac811a4196403ebbee17fd24946d7e7e1b962ac7f66dbaf610 +afdd96fbcda7aa73bf9eeb2292e036c25753d249caee3b9c013009cc22e10d3ec29e2aa6ddbb21c4e949b0c0bccaa7f4 +b5a4e7436d5473647c002120a2cb436b9b28e27ad4ebdd7c5f122b91597c507d256d0cbd889d65b3a908531936e53053 +b632414c3da704d80ac2f3e5e0e9f18a3637cdc2ebeb613c29300745582427138819c4e7b0bec3099c1b8739dac1807b +a28df1464d3372ce9f37ef1db33cc010f752156afae6f76949d98cd799c0cf225c20228ae86a4da592d65f0cffe3951b +898b93d0a31f7d3f11f253cb7a102db54b669fd150da302d8354d8e02b1739a47cb9bd88015f3baf12b00b879442464e +96fb88d89a12049091070cb0048a381902965e67a8493e3991eaabe5d3b7ff7eecd5c94493a93b174df3d9b2c9511755 +b899cb2176f59a5cfba3e3d346813da7a82b03417cad6342f19cc8f12f28985b03bf031e856a4743fd7ebe16324805b0 +a60e2d31bc48e0c0579db15516718a03b73f5138f15037491f4dae336c904e312eda82d50862f4debd1622bb0e56d866 +979fc8b987b5cef7d4f4b58b53a2c278bd25a5c0ea6f41c715142ea5ff224c707de38451b0ad3aa5e749aa219256650a +b2a75bff18e1a6b9cf2a4079572e41205741979f57e7631654a3c0fcec57c876c6df44733c9da3d863db8dff392b44a3 +b7a0f0e811222c91e3df98ff7f286b750bc3b20d2083966d713a84a2281744199e664879401e77470d44e5a90f3e5181 +82b74ba21c9d147fbc338730e8f1f8a6e7fc847c3110944eb17a48bea5e06eecded84595d485506d15a3e675fd0e5e62 +a7f44eef817d5556f0d1abcf420301217d23c69dd2988f44d91ea1f1a16c322263cbacd0f190b9ba22b0f141b9267b4f +aadb68164ede84fc1cb3334b3194d84ba868d5a88e4c9a27519eef4923bc4abf81aab8114449496c073c2a6a0eb24114 +b5378605fabe9a8c12a5dc55ef2b1de7f51aedb61960735c08767a565793cea1922a603a6983dc25f7cea738d0f7c40d +a97a4a5cd8d51302e5e670aee78fe6b5723f6cc892902bbb4f131e82ca1dfd5de820731e7e3367fb0c4c1922a02196e3 +8bdfeb15c29244d4a28896f2b2cb211243cd6a1984a3f5e3b0ebe5341c419beeab3304b390a009ffb47588018034b0ea +a9af3022727f2aa2fca3b096968e97edad3f08edcbd0dbca107b892ae8f746a9c0485e0d6eb5f267999b23a845923ed0 +8e7594034feef412f055590fbb15b6322dc4c6ab7a4baef4685bd13d71a83f7d682b5781bdfa0d1c659489ce9c2b8000 +84977ca6c865ebee021c58106c1a4ad0c745949ecc5332948002fd09bd9b890524878d0c29da96fd11207621136421fe +8687551a79158e56b2375a271136756313122132a6670fa51f99a1b5c229ed8eea1655a734abae13228b3ebfd2a825dd +a0227d6708979d99edfc10f7d9d3719fd3fc68b0d815a7185b60307e4c9146ad2f9be2b8b4f242e320d4288ceeb9504c +89f75583a16735f9dd8b7782a130437805b34280ccea8dac6ecaee4b83fe96947e7b53598b06fecfffdf57ffc12cc445 +a0056c3353227f6dd9cfc8e3399aa5a8f1d71edf25d3d64c982910f50786b1e395c508d3e3727ac360e3e040c64b5298 +b070e61a6d813626144b312ded1788a6d0c7cec650a762b2f8df6e4743941dd82a2511cd956a3f141fc81e15f4e092da +b4e6db232e028a1f989bb5fc13416711f42d389f63564d60851f009dcffac01acfd54efa307aa6d4c0f932892d4e62b0 +89b5991a67db90024ddd844e5e1a03ef9b943ad54194ae0a97df775dde1addf31561874f4e40fbc37a896630f3bbda58 +ad0e8442cb8c77d891df49cdb9efcf2b0d15ac93ec9be1ad5c3b3cca1f4647b675e79c075335c1f681d56f14dc250d76 +b5d55a6ae65bb34dd8306806cb49b5ccb1c83a282ee47085cf26c4e648e19a52d9c422f65c1cd7e03ca63e926c5e92ea +b749501347e5ec07e13a79f0cb112f1b6534393458b3678a77f02ca89dca973fa7b30e55f0b25d8b92b97f6cb0120056 +94144b4a3ffc5eec6ba35ce9c245c148b39372d19a928e236a60e27d7bc227d18a8cac9983851071935d8ffb64b3a34f +92bb4f9f85bc8c028a3391306603151c6896673135f8a7aefedd27acb322c04ef5dac982fc47b455d6740023e0dd3ea3 +b9633a4a101461a782fc2aa092e9dbe4e2ad00987578f18cd7cf0021a909951d60fe79654eb7897806795f93c8ff4d1c +809f0196753024821b48a016eca5dbb449a7c55750f25981bb7a4b4c0e0846c09b8f6128137905055fc43a3f0deb4a74 +a27dc9cdd1e78737a443570194a03d89285576d3d7f3a3cf15cc55b3013e42635d4723e2e8fe1d0b274428604b630db9 +861f60f0462e04cd84924c36a28163def63e777318d00884ab8cb64c8df1df0bce5900342163edb60449296484a6c5bf +b7bc23fb4e14af4c4704a944253e760adefeca8caee0882b6bbd572c84434042236f39ae07a8f21a560f486b15d82819 +b9a6eb492d6dd448654214bd01d6dc5ff12067a11537ab82023fc16167507ee25eed2c91693912f4155d1c07ed9650b3 +97678af29c68f9a5e213bf0fb85c265303714482cfc4c2c00b4a1e8a76ed08834ee6af52357b143a1ca590fb0265ea5a +8a15b499e9eca5b6cac3070b5409e8296778222018ad8b53a5d1f6b70ad9bb10c68a015d105c941ed657bf3499299e33 +b487fefede2e8091f2c7bfe85770db2edff1db83d4effe7f7d87bff5ab1ace35e9b823a71adfec6737fede8d67b3c467 +8b51b916402aa2c437fce3bcad6dad3be8301a1a7eab9d163085b322ffb6c62abf28637636fe6114573950117fc92898 +b06a2106d031a45a494adec0881cb2f82275dff9dcdd2bc16807e76f3bec28a6734edd3d54f0be8199799a78cd6228ad +af0a185391bbe2315eb97feac98ad6dd2e5d931d012c621abd6e404a31cc188b286fef14871762190acf086482b2b5e2 +8e78ee8206506dd06eb7729e32fceda3bebd8924a64e4d8621c72e36758fda3d0001af42443851d6c0aea58562870b43 +a1ba52a569f0461aaf90b49b92be976c0e73ec4a2c884752ee52ffb62dd137770c985123d405dfb5de70692db454b54a +8d51b692fa1543c51f6b62b9acb8625ed94b746ef96c944ca02859a4133a5629da2e2ce84e111a7af8d9a5b836401c64 +a7a20d45044cf6492e0531d0b8b26ffbae6232fa05a96ed7f06bdb64c2b0f5ca7ec59d5477038096a02579e633c7a3ff +84df867b98c53c1fcd4620fef133ee18849c78d3809d6aca0fb6f50ff993a053a455993f216c42ab6090fa5356b8d564 +a7227c439f14c48e2577d5713c97a5205feb69acb0b449152842e278fa71e8046adfab468089c8b2288af1fc51fa945b +855189b3a105670779997690876dfaa512b4a25a24931a912c2f0f1936971d2882fb4d9f0b3d9daba77eaf660e9d05d5 +b5696bd6706de51c502f40385f87f43040a5abf99df705d6aac74d88c913b8ecf7a99a63d7a37d9bdf3a941b9e432ff5 +ab997beb0d6df9c98d5b49864ef0b41a2a2f407e1687dfd6089959757ba30ed02228940b0e841afe6911990c74d536c4 +b36b65f85546ebfdbe98823d5555144f96b4ab39279facd19c0de3b8919f105ba0315a0784dce4344b1bc62d8bb4a5a3 +b8371f0e4450788720ac5e0f6cd3ecc5413d33895083b2c168d961ec2b5c3de411a4cc0712481cbe8df8c2fa1a7af006 +98325d8026b810a8b7a114171ae59a57e8bbc9848e7c3df992efc523621729fd8c9f52114ce01d7730541a1ada6f1df1 +8d0e76dbd37806259486cd9a31bc8b2306c2b95452dc395546a1042d1d17863ef7a74c636b782e214d3aa0e8d717f94a +a4e15ead76da0214d702c859fb4a8accdcdad75ed08b865842bd203391ec4cba2dcc916455e685f662923b96ee0c023f +8618190972086ebb0c4c1b4a6c94421a13f378bc961cc8267a301de7390c5e73c3333864b3b7696d81148f9d4843fd02 +85369d6cc7342e1aa15b59141517d8db8baaaeb7ab9670f3ba3905353948d575923d283b7e5a05b13a30e7baf1208a86 +87c51ef42233c24a6da901f28c9a075d9ba3c625687c387ad6757b72ca6b5a8885e6902a3082da7281611728b1e45f26 +aa6348a4f71927a3106ad0ea8b02fc8d8c65531e4ab0bd0a17243e66f35afe252e40ab8eef9f13ae55a72566ffdaff5c +96a3bc976e9d03765cc3fee275fa05b4a84c94fed6b767e23ca689394501e96f56f7a97cffddc579a6abff632bf153be +97dbf96c6176379fdb2b888be4e757b2bca54e74124bd068d3fa1dbd82a011bbeb75079da38e0cd22a761fe208ecad9b +b70cf0a1d14089a4129ec4e295313863a59da8c7e26bf74cc0e704ed7f0ee4d7760090d0ddf7728180f1bf2c5ac64955 +882d664714cc0ffe53cbc9bef21f23f3649824f423c4dbad1f893d22c4687ab29583688699efc4d5101aa08b0c3e267a +80ecb7cc963e677ccaddbe3320831dd6ee41209acf4ed41b16dc4817121a3d86a1aac9c4db3d8c08a55d28257088af32 +a25ba667d832b145f9ce18c3f9b1bd00737aa36db020e1b99752c8ef7d27c6c448982bd8d352e1b6df266b8d8358a8d5 +83734841c13dee12759d40bdd209b277e743b0d08cc0dd1e0b7afd2d65bfa640400eefcf6be4a52e463e5b3d885eeac6 +848d16505b04804afc773aebabb51b36fd8aacfbb0e09b36c0d5d57df3c0a3b92f33e7d5ad0a7006ec46ebb91df42b8c +909a8d793f599e33bb9f1dc4792a507a97169c87cd5c087310bc05f30afcd247470b4b56dec59894c0fb1d48d39bb54e +8e558a8559df84a1ba8b244ece667f858095c50bb33a5381e60fcc6ba586b69693566d8819b4246a27287f16846c1dfa +84d6b69729f5aaa000cd710c2352087592cfbdf20d5e1166977e195818e593fa1a50d1e04566be23163a2523dc1612f1 +9536d262b7a42125d89f4f32b407d737ba8d9242acfc99d965913ab3e043dcac9f7072a43708553562cac4cba841df30 +9598548923ca119d6a15fd10861596601dd1dedbcccca97bb208cdc1153cf82991ea8cc17686fbaa867921065265970c +b87f2d4af6d026e4d2836bc3d390a4a18e98a6e386282ce96744603bab74974272e97ac2da281afa21885e2cbb3a8001 +991ece62bf07d1a348dd22191868372904b9f8cf065ae7aa4e44fd24a53faf6d851842e35fb472895963aa1992894918 +a8c53dea4c665b30e51d22ca6bc1bc78aaf172b0a48e64a1d4b93439b053877ec26cb5221c55efd64fa841bbf7d5aff4 +93487ec939ed8e740f15335b58617c3f917f72d07b7a369befd479ae2554d04deb240d4a14394b26192efae4d2f4f35d +a44793ab4035443f8f2968a40e043b4555960193ffa3358d22112093aadfe2c136587e4139ffd46d91ed4107f61ea5e0 +b13fe033da5f0d227c75927d3dacb06dbaf3e1322f9d5c7c009de75cdcba5e308232838785ab69a70f0bedea755e003f +970a29b075faccd0700fe60d1f726bdebf82d2cc8252f4a84543ebd3b16f91be42a75c9719a39c4096139f0f31393d58 +a4c3eb1f7160f8216fc176fb244df53008ff32f2892363d85254002e66e2de21ccfe1f3b1047589abee50f29b9d507e3 +8c552885eab04ba40922a8f0c3c38c96089c95ff1405258d3f1efe8d179e39e1295cbf67677894c607ae986e4e6b1fb0 +b3671746fa7f848c4e2ae6946894defadd815230b906b419143523cc0597bc1d6c0a4c1e09d49b66b4a2c11cde3a4de3 +937a249a95813a5e2ef428e355efd202e15a37d73e56cfb7e57ea9f943f2ce5ca8026f2f1fd25bf164ba89d07077d858 +83646bdf6053a04aa9e2f112499769e5bd5d0d10f2e13db3ca89bd45c0b3b7a2d752b7d137fb3909f9c62b78166c9339 +b4eac4b91e763666696811b7ed45e97fd78310377ebea1674b58a2250973f80492ac35110ed1240cd9bb2d17493d708c +82db43a99bc6573e9d92a3fd6635dbbb249ac66ba53099c3c0c8c8080b121dd8243cd5c6e36ba0a4d2525bae57f5c89c +a64d6a264a681b49d134c655d5fc7756127f1ee7c93d328820f32bca68869f53115c0d27fef35fe71f7bc4fdaed97348 +8739b7a9e2b4bc1831e7f04517771bc7cde683a5e74e052542517f8375a2f64e53e0d5ac925ef722327e7bb195b4d1d9 +8f337cdd29918a2493515ebb5cf702bbe8ecb23b53c6d18920cc22f519e276ca9b991d3313e2d38ae17ae8bdfa4f8b7e +b0edeab9850e193a61f138ef2739fc42ceec98f25e7e8403bfd5fa34a7bc956b9d0898250d18a69fa4625a9b3d6129da +a9920f26fe0a6d51044e623665d998745c9eca5bce12051198b88a77d728c8238f97d4196f26e43b24f8841500b998d0 +86e655d61502b979eeeeb6f9a7e1d0074f936451d0a1b0d2fa4fb3225b439a3770767b649256fe481361f481a8dbc276 +84d3b32fa62096831cc3bf013488a9f3f481dfe293ae209ed19585a03f7db8d961a7a9dd0db82bd7f62d612707575d9c +81c827826ec9346995ffccf62a241e3b2d32f7357acd1b1f8f7a7dbc97022d3eb51b8a1230e23ce0b401d2e535e8cd78 +94a1e40c151191c5b055b21e86f32e69cbc751dcbdf759a48580951834b96a1eed75914c0d19a38aefd21fb6c8d43d0c +ab890222b44bc21b71f7c75e15b6c6e16bb03371acce4f8d4353ff3b8fcd42a14026589c5ed19555a3e15e4d18bfc3a3 +accb0be851e93c6c8cc64724cdb86887eea284194b10e7a43c90528ed97e9ec71ca69c6fac13899530593756dd49eab2 +b630220aa9e1829c233331413ee28c5efe94ea8ea08d0c6bfd781955078b43a4f92915257187d8526873e6c919c6a1de +add389a4d358c585f1274b73f6c3c45b58ef8df11f9d11221f620e241bf3579fba07427b288c0c682885a700cc1fa28d +a9fe6ca8bf2961a3386e8b8dcecc29c0567b5c0b3bcf3b0f9169f88e372b80151af883871fc5229815f94f43a6f5b2b0 +ad839ae003b92b37ea431fa35998b46a0afc3f9c0dd54c3b3bf7a262467b13ff3c323ada1c1ae02ac7716528bdf39e3e +9356d3fd0edcbbb65713c0f2a214394f831b26f792124b08c5f26e7f734b8711a87b7c4623408da6a091c9aef1f6af3c +896b25b083c35ac67f0af3784a6a82435b0e27433d4d74cd6d1eafe11e6827827799490fb1c77c11de25f0d75f14e047 +8bfa019391c9627e8e5f05c213db625f0f1e51ec68816455f876c7e55b8f17a4f13e5aae9e3fb9e1cf920b1402ee2b40 +8ba3a6faa6a860a8f3ce1e884aa8769ceded86380a86520ab177ab83043d380a4f535fe13884346c5e51bee68da6ab41 +a8292d0844084e4e3bb7af92b1989f841a46640288c5b220fecfad063ee94e86e13d3d08038ec2ac82f41c96a3bfe14d +8229bb030b2fc566e11fd33c7eab7a1bb7b49fed872ea1f815004f7398cb03b85ea14e310ec19e1f23e0bdaf60f8f76c +8cfbf869ade3ec551562ff7f63c2745cc3a1f4d4dc853a0cd42dd5f6fe54228f86195ea8fe217643b32e9f513f34a545 +ac52a3c8d3270ddfe1b5630159da9290a5ccf9ccbdef43b58fc0a191a6c03b8a5974cf6e2bbc7bd98d4a40a3581482d7 +ab13decb9e2669e33a7049b8eca3ca327c40dea15ad6e0e7fa63ed506db1d258bc36ac88b35f65cae0984e937eb6575d +b5e748eb1a7a1e274ff0cc56311c198f2c076fe4b7e73e5f80396fe85358549df906584e6bb2c8195b3e2be7736850a5 +b5cb911325d8f963c41f691a60c37831c7d3bbd92736efa33d1f77a22b3fde7f283127256c2f47e197571e6fe0b46149 +8a01dc6ed1b55f26427a014faa347130738b191a06b800e32042a46c13f60b49534520214359d68eb2e170c31e2b8672 +a72fa874866e19b2efb8e069328362bf7921ec375e3bcd6b1619384c3f7ee980f6cf686f3544e9374ff54b4d17a1629c +8db21092f7c5f110fba63650b119e82f4b42a997095d65f08f8237b02dd66fdf959f788df2c35124db1dbd330a235671 +8c65d50433d9954fe28a09fa7ba91a70a590fe7ba6b3060f5e4be0f6cef860b9897fa935fb4ebc42133524eb071dd169 +b4614058e8fa21138fc5e4592623e78b8982ed72aa35ee4391b164f00c68d277fa9f9eba2eeefc890b4e86eba5124591 +ab2ad3a1bce2fbd55ca6b7c23786171fe1440a97d99d6df4d80d07dd56ac2d7203c294b32fc9e10a6c259381a73f24a1 +812ae3315fdc18774a8da3713a4679e8ed10b9405edc548c00cacbe25a587d32040566676f135e4723c5dc25df5a22e9 +a464b75f95d01e5655b54730334f443c8ff27c3cb79ec7af4b2f9da3c2039c609908cd128572e1fd0552eb597e8cef8d +a0db3172e93ca5138fe419e1c49a1925140999f6eff7c593e5681951ee0ec1c7e454c851782cbd2b8c9bc90d466e90e0 +806db23ba7d00b87d544eed926b3443f5f9c60da6b41b1c489fba8f73593b6e3b46ebfcab671ee009396cd77d5e68aa1 +8bfdf2c0044cc80260994e1c0374588b6653947b178e8b312be5c2a05e05767e98ea15077278506aee7df4fee1aaf89e +827f6558c16841b5592ff089c9c31e31eb03097623524394813a2e4093ad2d3f8f845504e2af92195aaa8a1679d8d692 +925c4f8eab2531135cd71a4ec88e7035b5eea34ba9d799c5898856080256b4a15ed1a746e002552e2a86c9c157e22e83 +a9f9a368f0e0b24d00a35b325964c85b69533013f9c2cfad9708be5fb87ff455210f8cb8d2ce3ba58ca3f27495552899 +8ac0d3bebc1cae534024187e7c71f8927ba8fcc6a1926cb61c2b6c8f26bb7831019e635a376146c29872a506784a4aaa +97c577be2cbbfdb37ad754fae9df2ada5fc5889869efc7e18a13f8e502fbf3f4067a509efbd46fd990ab47ce9a70f5a8 +935e7d82bca19f16614aa43b4a3474e4d20d064e4bfdf1cea2909e5c9ab72cfe3e54dc50030e41ee84f3588cebc524e9 +941aafc08f7c0d94cebfbb1f0aad5202c02e6e37f2c12614f57e727efa275f3926348f567107ee6d8914dd71e6060271 +af0fbc1ba05b4b5b63399686df3619968be5d40073de0313cbf5f913d3d4b518d4c249cdd2176468ccaa36040a484f58 +a0c414f23f46ca6d69ce74c6f8a00c036cb0edd098af0c1a7d39c802b52cfb2d5dbdf93fb0295453d4646e2af7954d45 +909cf39e11b3875bb63b39687ae1b5d1f5a15445e39bf164a0b14691b4ddb39a8e4363f584ef42213616abc4785b5d66 +a92bac085d1194fbd1c88299f07a061d0bdd3f980b663e81e6254dbb288bf11478c0ee880e28e01560f12c5ccb3c0103 +841705cd5cd76b943e2b7c5e845b9dd3c8defe8ef67e93078d6d5e67ade33ad4b0fd413bc196f93b0a4073c855cd97d4 +8e7eb8364f384a9161e81d3f1d52ceca9b65536ae49cc35b48c3e2236322ba4ae9973e0840802d9fa4f4d82ea833544f +aed3ab927548bc8bec31467ba80689c71a168e34f50dcb6892f19a33a099f5aa6b3f9cb79f5c0699e837b9a8c7f27efe +b8fbf7696210a36e20edabd77839f4dfdf50d6d015cdf81d587f90284a9bcef7d2a1ff520728d7cc69a4843d6c20dedd +a9d533769ce6830211c884ae50a82a7bf259b44ac71f9fb11f0296fdb3981e6b4c1753fe744647b247ebc433a5a61436 +8b4bdf90d33360b7f428c71cde0a49fb733badba8c726876945f58c620ce7768ae0e98fc8c31fa59d8955a4823336bb1 +808d42238e440e6571c59e52a35ae32547d502dc24fd1759d8ea70a7231a95859baf30b490a4ba55fa2f3aaa11204597 +85594701f1d2fee6dc1956bc44c7b31db93bdeec2f3a7d622c1a08b26994760773e3d57521a44cfd7e407ac3fd430429 +a66de045ce7173043a6825e9dc440ac957e2efb6df0a337f4f8003eb0c719d873a52e6eba3cb0d69d977ca37d9187674 +87a1c6a1fdff993fa51efa5c3ba034c079c0928a7d599b906336af7c2dcab9721ceaf3108c646490af9dff9a754f54b3 +926424223e462ceb75aed7c22ade8a7911a903b7e5dd4bc49746ddce8657f4616325cd12667d4393ac52cdd866396d0e +b5dc96106593b42b30f06f0b0a1e0c1aafc70432e31807252d3674f0b1ea5e58eac8424879d655c9488d85a879a3e572 +997ca0987735cc716507cb0124b1d266d218b40c9d8e0ecbf26a1d65719c82a637ce7e8be4b4815d307df717bde7c72a +92994d3f57a569b7760324bb5ae4e8e14e1633d175dab06aa57b8e391540e05f662fdc08b8830f489a063f59b689a688 +a8087fcc6aa4642cb998bea11facfe87eb33b90a9aa428ab86a4124ad032fc7d2e57795311a54ec9f55cc120ebe42df1 +a9bd7d1de6c0706052ca0b362e2e70e8c8f70f1f026ea189b4f87a08ce810297ebfe781cc8004430776c54c1a05ae90c +856d33282e8a8e33a3d237fb0a0cbabaf77ba9edf2fa35a831fdafcadf620561846aa6cbb6bdc5e681118e1245834165 +9524a7aa8e97a31a6958439c5f3339b19370f03e86b89b1d02d87e4887309dbbe9a3a8d2befd3b7ed5143c8da7e0a8ad +824fdf433e090f8acbd258ac7429b21f36f9f3b337c6d0b71d1416a5c88a767883e255b2888b7c906dd2e9560c4af24c +88c7fee662ca7844f42ed5527996b35723abffd0d22d4ca203b9452c639a5066031207a5ae763dbc0865b3299d19b1ec +919dca5c5595082c221d5ab3a5bc230f45da7f6dec4eb389371e142c1b9c6a2c919074842479c2844b72c0d806170c0c +b939be8175715e55a684578d8be3ceff3087f60fa875fff48e52a6e6e9979c955efef8ff67cfa2b79499ea23778e33b0 +873b6db725e7397d11bc9bed9ac4468e36619135be686790a79bc6ed4249058f1387c9a802ea86499f692cf635851066 +aeae06db3ec47e9e5647323fa02fac44e06e59b885ad8506bf71b184ab3895510c82f78b6b22a5d978e8218e7f761e9f +b99c0a8359c72ab88448bae45d4bf98797a26bca48b0d4460cd6cf65a4e8c3dd823970ac3eb774ae5d0cea4e7fadf33e +8f10c8ec41cdfb986a1647463076a533e6b0eec08520c1562401b36bb063ac972aa6b28a0b6ce717254e35940b900e3c +a106d9be199636d7add43b942290269351578500d8245d4aae4c083954e4f27f64740a3138a66230391f2d0e6043a8de +a469997908244578e8909ff57cffc070f1dbd86f0098df3cfeb46b7a085cfecc93dc69ee7cad90ff1dc5a34d50fe580c +a4ef087bea9c20eb0afc0ee4caba7a9d29dfa872137828c721391273e402fb6714afc80c40e98bbd8276d3836bffa080 +b07a013f73cd5b98dae0d0f9c1c0f35bff8a9f019975c4e1499e9bee736ca6fcd504f9bc32df1655ff333062382cff04 +b0a77188673e87cc83348c4cc5db1eecf6b5184e236220c8eeed7585e4b928db849944a76ec60ef7708ef6dac02d5592 +b1284b37e59b529f0084c0dacf0af6c0b91fc0f387bf649a8c74819debf606f7b07fc3e572500016fb145ec2b24e9f17 +97b20b5b4d6b9129da185adfbf0d3d0b0faeba5b9715f10299e48ea0521709a8296a9264ce77c275a59c012b50b6519a +b9d37e946fae5e4d65c1fbfacc8a62e445a1c9d0f882e60cca649125af303b3b23af53c81d7bac544fb7fcfc7a314665 +8e5acaac379f4bb0127efbef26180f91ff60e4c525bc9b798fc50dfaf4fe8a5aa84f18f3d3cfb8baead7d1e0499af753 +b0c0b8ab1235bf1cda43d4152e71efc1a06c548edb964eb4afceb201c8af24240bf8ab5cae30a08604e77432b0a5faf0 +8cc28d75d5c8d062d649cbc218e31c4d327e067e6dbd737ec0a35c91db44fbbd0d40ec424f5ed79814add16947417572 +95ae6219e9fd47efaa9cb088753df06bc101405ba50a179d7c9f7c85679e182d3033f35b00dbba71fdcd186cd775c52e +b5d28fa09f186ebc5aa37453c9b4d9474a7997b8ae92748ecb940c14868792292ac7d10ade01e2f8069242b308cf97e5 +8c922a0faa14cc6b7221f302df3342f38fc8521ec6c653f2587890192732c6da289777a6cd310747ea7b7d104af95995 +b9ad5f660b65230de54de535d4c0fcae5bc6b59db21dea5500fdc12eea4470fb8ea003690fdd16d052523418d5e01e8c +a39a9dd41a0ff78c82979483731f1cd68d3921c3e9965869662c22e02dde3877802e180ba93f06e7346f96d9fa9261d2 +8b32875977ec372c583b24234c27ed73aef00cdff61eb3c3776e073afbdeade548de9497c32ec6d703ff8ad0a5cb7fe4 +9644cbe755a5642fe9d26cfecf170d3164f1848c2c2e271d5b6574a01755f3980b3fc870b98cf8528fef6ecef4210c16 +81ea9d1fdd9dd66d60f40ce0712764b99da9448ae0b300f8324e1c52f154e472a086dda840cb2e0b9813dc8ce8afd4b5 +906aaa4a7a7cdf01909c5cfbc7ded2abc4b869213cbf7c922d4171a4f2e637e56f17020b852ad339d83b8ac92f111666 +939b5f11acbdeff998f2a080393033c9b9d8d5c70912ea651c53815c572d36ee822a98d6dfffb2e339f29201264f2cf4 +aba4898bf1ccea9b9e2df1ff19001e05891581659c1cbbde7ee76c349c7fc7857261d9785823c9463a8aea3f40e86b38 +83ca1a56b8a0be4820bdb5a9346357c68f9772e43f0b887729a50d2eb2a326bbcede676c8bf2e51d7c89bbd8fdb778a6 +94e86e9fe6addfe2c3ee3a547267ed921f4230d877a85bb4442c2d9350c2fa9a9c54e6fe662de82d1a2407e4ab1691c2 +a0cc3bdef671a59d77c6984338b023fa2b431b32e9ed2abe80484d73edc6540979d6f10812ecc06d4d0c5d4eaca7183c +b5343413c1b5776b55ea3c7cdd1f3af1f6bd802ea95effe3f2b91a523817719d2ecc3f8d5f3cc2623ace7e35f99ca967 +92085d1ed0ed28d8cabe3e7ff1905ed52c7ceb1eac5503760c52fb5ee3a726aba7c90b483c032acc3f166b083d7ec370 +8ec679520455275cd957fca8122724d287db5df7d29f1702a322879b127bff215e5b71d9c191901465d19c86c8d8d404 +b65eb2c63d8a30332eb24ee8a0c70156fc89325ebbb38bacac7cf3f8636ad8a472d81ccca80423772abc00192d886d8a +a9fe1c060b974bee4d590f2873b28635b61bfcf614e61ff88b1be3eee4320f4874e21e8d666d8ac8c9aba672efc6ecae +b3fe2a9a389c006a831dea7e777062df84b5c2803f9574d7fbe10b7e1c125817986af8b6454d6be9d931a5ac94cfe963 +95418ad13b734b6f0d33822d9912c4c49b558f68d08c1b34a0127fcfa666bcae8e6fda8832d2c75bb9170794a20e4d7c +a9a7df761e7f18b79494bf429572140c8c6e9d456c4d4e336184f3f51525a65eb9582bea1e601bdb6ef8150b7ca736a5 +a0de03b1e75edf7998c8c1ac69b4a1544a6fa675a1941950297917366682e5644a4bda9cdeedfaf9473d7fccd9080b0c +a61838af8d95c95edf32663a68f007d95167bf6e41b0c784a30b22d8300cfdd5703bd6d16e86396638f6db6ae7e42a85 +8866d62084d905c145ff2d41025299d8b702ac1814a7dec4e277412c161bc9a62fed735536789cb43c88693c6b423882 +91da22c378c81497fe363e7f695c0268443abee50f8a6625b8a41e865638a643f07b157ee566de09ba09846934b4e2d7 +941d21dd57c9496aa68f0c0c05507405fdd413acb59bc668ce7e92e1936c68ec4b065c3c30123319884149e88228f0b2 +a77af9b094bc26966ddf2bf9e1520c898194a5ccb694915950dadc204facbe3066d3d89f50972642d76b14884cfbaa21 +8e76162932346869f4618bde744647f7ab52ab498ad654bdf2a4feeb986ac6e51370841e5acbb589e38b6e7142bb3049 +b60979ace17d6937ece72e4f015da4657a443dd01cebc7143ef11c09e42d4aa8855999a65a79e2ea0067f31c9fc2ab0f +b3e2ffdd5ee6fd110b982fd4fad4b93d0fca65478f986d086eeccb0804960bfaa1919afa743c2239973ea65091fe57d2 +8ce0ce05e7d7160d44574011da687454dbd3c8b8290aa671731b066e2c82f8cf2d63cb8e932d78c6122ec610e44660e6 +ab005dd8d297045c39e2f72fb1c48edb501ccf3575d3d04b9817b3afee3f0bb0f3f53f64bda37d1d9cde545aae999bae +95bd7edb4c4cd60e3cb8a72558845a3cce6bb7032ccdf33d5a49ebb6ddf203bc3c79e7b7e550735d2d75b04c8b2441e8 +889953ee256206284094e4735dbbb17975bafc7c3cb94c9fbfee4c3e653857bfd49e818f64a47567f721b98411a3b454 +b188423e707640ab0e75a061e0b62830cde8afab8e1ad3dae30db69ffae4e2fc005bababbdcbd7213b918ed4f70e0c14 +a97e0fafe011abd70d4f99a0b36638b3d6e7354284588f17a88970ed48f348f88392779e9a038c6cbc9208d998485072 +87db11014a91cb9b63e8dfaa82cdebca98272d89eb445ee1e3ff9dbaf2b3fad1a03b888cffc128e4fe208ed0dddece0f +aad2e40364edd905d66ea4ac9d51f9640d6fda9a54957d26ba233809851529b32c85660fa401dbee3679ec54fa6dd966 +863e99336ca6edf03a5a259e59a2d0f308206e8a2fb320cfc0be06057366df8e0f94b33a28f574092736b3c5ada84270 +b34bcc56a057589f34939a1adc51de4ff6a9f4fee9c7fa9aa131e28d0cf0759a0c871b640162acdfbf91f3f1b59a3703 +935dd28f2896092995c5eff1618e5b6efe7a40178888d7826da9b0503c2d6e68a28e7fac1a334e166d0205f0695ef614 +b842cd5f8f5de5ca6c68cb4a5c1d7b451984930eb4cc18fd0934d52fdc9c3d2d451b1c395594d73bc3451432bfba653f +9014537885ce2debad736bc1926b25fdab9f69b216bf024f589c49dc7e6478c71d595c3647c9f65ff980b14f4bb2283b +8e827ccca1dd4cd21707140d10703177d722be0bbe5cac578db26f1ef8ad2909103af3c601a53795435b27bf95d0c9ed +8a0b8ad4d466c09d4f1e9167410dbe2edc6e0e6229d4b3036d30f85eb6a333a18b1c968f6ca6d6889bb08fecde017ef4 +9241ee66c0191b06266332dc9161dede384c4bb4e116dbd0890f3c3790ec5566da4568243665c4725b718ac0f6b5c179 +aeb4d5fad81d2b505d47958a08262b6f1b1de9373c2c9ba6362594194dea3e002ab03b8cbb43f867be83065d3d370f19 +8781bc83bb73f7760628629fe19e4714b494dbed444c4e4e4729b7f6a8d12ee347841a199888794c2234f51fa26fc2b9 +b58864f0acd1c2afa29367e637cbde1968d18589245d9936c9a489c6c495f54f0113ecdcbe4680ac085dd3c397c4d0c3 +94a24284afaeead61e70f3e30f87248d76e9726759445ca18cdb9360586c60cc9f0ec1c397f9675083e0b56459784e2e +aed358853f2b54dcbddf865e1816c2e89be12e940e1abfa661e2ee63ffc24a8c8096be2072fa83556482c0d89e975124 +b95374e6b4fc0765708e370bc881e271abf2e35c08b056a03b847e089831ef4fe3124b9c5849d9c276eb2e35b3daf264 +b834cdbcfb24c8f84bfa4c552e7fadc0028a140952fd69ed13a516e1314a4cd35d4b954a77d51a1b93e1f5d657d0315d +8fb6d09d23bfa90e7443753d45a918d91d75d8e12ec7d016c0dfe94e5c592ba6aaf483d2f16108d190822d955ad9cdc3 +aa315cd3c60247a6ad4b04f26c5404c2713b95972843e4b87b5a36a89f201667d70f0adf20757ebe1de1b29ae27dda50 +a116862dca409db8beff5b1ccd6301cdd0c92ca29a3d6d20eb8b87f25965f42699ca66974dd1a355200157476b998f3b +b4c2f5fe173c4dc8311b60d04a65ce1be87f070ac42e13cd19c6559a2931c6ee104859cc2520edebbc66a13dc7d30693 +8d4a02bf99b2260c334e7d81775c5cf582b00b0c982ce7745e5a90624919028278f5e9b098573bad5515ce7fa92a80c8 +8543493bf564ce6d97bd23be9bff1aba08bd5821ca834f311a26c9139c92a48f0c2d9dfe645afa95fec07d675d1fd53b +9344239d13fde08f98cb48f1f87d34cf6abe8faecd0b682955382a975e6eed64e863fa19043290c0736261622e00045c +aa49d0518f343005ca72b9e6c7dcaa97225ce6bb8b908ebbe7b1a22884ff8bfb090890364e325a0d414ad180b8f161d1 +907d7fd3e009355ab326847c4a2431f688627faa698c13c03ffdd476ecf988678407f029b8543a475dcb3dafdf2e7a9c +845f1f10c6c5dad2adc7935f5cd2e2b32f169a99091d4f1b05babe7317b9b1cdce29b5e62f947dc621b9acbfe517a258 +8f3be8e3b380ea6cdf9e9c237f5e88fd5a357e5ded80ea1fc2019810814de82501273b4da38916881125b6fa0cfd4459 +b9c7f487c089bf1d20c822e579628db91ed9c82d6ca652983aa16d98b4270c4da19757f216a71b9c13ddee3e6e43705f +8ba2d8c88ad2b872db104ea8ddbb006ec2f3749fd0e19298a804bb3a5d94de19285cc7fb19fee58a66f7851d1a66c39f +9375ecd3ed16786fe161af5d5c908f56eeb467a144d3bbddfc767e90065b7c94fc53431adebecba2b6c9b5821184d36e +a49e069bfadb1e2e8bff6a4286872e2a9765d62f0eaa4fcb0e5af4bbbed8be3510fb19849125a40a8a81d1e33e81c3eb +9522cc66757b386aa6b88619525c8ce47a5c346d590bb3647d12f991e6c65c3ab3c0cfc28f0726b6756c892eae1672be +a9a0f1f51ff877406fa83a807aeb17b92a283879f447b8a2159653db577848cc451cbadd01f70441e351e9ed433c18bc +8ff7533dcff6be8714df573e33f82cf8e9f2bcaaa43e939c4759d52b754e502717950de4b4252fb904560fc31dce94a4 +959724671e265a28d67c29d95210e97b894b360da55e4cf16e6682e7912491ed8ca14bfaa4dce9c25a25b16af580494f +92566730c3002f4046c737032487d0833c971e775de59fe02d9835c9858e2e3bc37f157424a69764596c625c482a2219 +a84b47ceff13ed9c3e5e9cdf6739a66d3e7c2bd8a6ba318fefb1a9aecf653bb2981da6733ddb33c4b0a4523acc429d23 +b4ddf571317e44f859386d6140828a42cf94994e2f1dcbcc9777f4eebbfc64fc1e160b49379acc27c4672b8e41835c5d +8ab95c94072b853d1603fdd0a43b30db617d13c1d1255b99075198e1947bfa5f59aed2b1147548a1b5e986cd9173d15c +89511f2eab33894fd4b3753d24249f410ff7263052c1fef6166fc63a79816656b0d24c529e45ccce6be28de6e375d916 +a0866160ca63d4f2be1b4ea050dac6b59db554e2ebb4e5b592859d8df339b46fd7cb89aaed0951c3ee540aee982c238a +8fcc5cbba1b94970f5ff2eb1922322f5b0aa7d918d4b380c9e7abfd57afd8b247c346bff7b87af82efbce3052511cd1b +99aeb2a5e846b0a2874cca02c66ed40d5569eb65ab2495bc3f964a092e91e1517941f2688e79f8cca49cd3674c4e06dc +b7a096dc3bad5ca49bee94efd884aa3ff5615cf3825cf95fbe0ce132e35f46581d6482fa82666c7ef5f1643eaee8f1ca +94393b1da6eaac2ffd186b7725eca582f1ddc8cdd916004657f8a564a7c588175cb443fc6943b39029f5bbe0add3fad8 +884b85fe012ccbcd849cb68c3ad832d83b3ef1c40c3954ffdc97f103b1ed582c801e1a41d9950f6bddc1d11f19d5ec76 +b00061c00131eded8305a7ce76362163deb33596569afb46fe499a7c9d7a0734c084d336b38d168024c2bb42b58e7660 +a439153ac8e6ca037381e3240e7ba08d056c83d7090f16ed538df25901835e09e27de2073646e7d7f3c65056af6e4ce7 +830fc9ca099097d1f38b90e6843dc86f702be9d20bdacc3e52cae659dc41df5b8d2c970effa6f83a5229b0244a86fe22 +b81ea2ffaaff2bb00dd59a9ab825ba5eed4db0d8ac9c8ed1a632ce8f086328a1cddd045fbe1ace289083c1325881b7e7 +b51ea03c58daf2db32c99b9c4789b183365168cb5019c72c4cc91ac30b5fb7311d3db76e6fa41b7cd4a8c81e2f6cdc94 +a4170b2c6d09ca5beb08318730419b6f19215ce6c631c854116f904be3bc30dd85a80c946a8ab054d3e307afaa3f8fbc +897cc42ff28971ff54d2a55dd6b35cfb8610ac902f3c06e3a5cea0e0a257e870c471236a8e84709211c742a09c5601a6 +a18f2e98d389dace36641621488664ecbb422088ab03b74e67009b8b8acacaaa24fdcf42093935f355207d934adc52a8 +92adcfb678cc2ba19c866f3f2b988fdcb4610567f3ab436cc0cb9acaf5a88414848d71133ebdbec1983e38e6190f1b5f +a86d43c2ce01b366330d3b36b3ca85f000c3548b8297e48478da1ee7d70d8576d4650cba7852ed125c0d7cb6109aa7f3 +8ed31ceed9445437d7732dce78a762d72ff32a7636bfb3fd7974b7ae15db414d8184a1766915244355deb354fbc5803b +9268f70032584f416e92225d65af9ea18c466ebc7ae30952d56a4e36fd9ea811dde0a126da9220ba3c596ec54d8a335e +9433b99ee94f2d3fbdd63b163a2bdf440379334c52308bd24537f7defd807145a062ff255a50d119a7f29f4b85d250e3 +90ce664f5e4628a02278f5cf5060d1a34f123854634b1870906e5723ac9afd044d48289be283b267d45fcbf3f4656aaf +aaf21c4d59378bb835d42ae5c5e5ab7a3c8c36a59e75997989313197752b79a472d866a23683b329ea69b048b87fa13e +b83c0589b304cec9ede549fde54f8a7c2a468c6657da8c02169a6351605261202610b2055c639b9ed2d5b8c401fb8f56 +9370f326ea0f170c2c05fe2c5a49189f20aec93b6b18a5572a818cd4c2a6adb359e68975557b349fb54f065d572f4c92 +ac3232fa5ce6f03fca238bef1ce902432a90b8afce1c85457a6bee5571c033d4bceefafc863af04d4e85ac72a4d94d51 +80d9ea168ff821b22c30e93e4c7960ce3ad3c1e6deeebedd342a36d01bd942419b187e2f382dbfd8caa34cca08d06a48 +a387a3c61676fb3381eefa2a45d82625635a666e999aba30e3b037ec9e040f414f9e1ad9652abd3bcad63f95d85038db +a1b229fe32121e0b391b0f6e0180670b9dc89d79f7337de4c77ea7ad0073e9593846f06797c20e923092a08263204416 +92164a9d841a2b828cedf2511213268b698520f8d1285852186644e9a0c97512cafa4bfbe29af892c929ebccd102e998 +82ee2fa56308a67c7db4fd7ef539b5a9f26a1c2cc36da8c3206ba4b08258fbb3cec6fe5cdbd111433fb1ba2a1e275927 +8c77bfe9e191f190a49d46f05600603fa42345592539b82923388d72392404e0b29a493a15e75e8b068dddcd444c2928 +80b927f93ccf79dcf5c5b20bcf5a7d91d7a17bc0401bb7cc9b53a6797feac31026eb114257621f5a64a52876e4474cc1 +b6b68b6501c37804d4833d5a063dd108a46310b1400549074e3cac84acc6d88f73948b7ad48d686de89c1ec043ae8c1a +ab3da00f9bdc13e3f77624f58a3a18fc3728956f84b5b549d62f1033ae4b300538e53896e2d943f160618e05af265117 +b6830e87233b8eace65327fdc764159645b75d2fd4024bf8f313b2dd5f45617d7ecfb4a0b53ccafb5429815a9a1adde6 +b9251cfe32a6dc0440615aadcd98b6b1b46e3f4e44324e8f5142912b597ee3526bea2431e2b0282bb58f71be5b63f65e +af8d70711e81cdddfb39e67a1b76643292652584c1ce7ce4feb1641431ad596e75c9120e85f1a341e7a4da920a9cdd94 +98cd4e996594e89495c078bfd52a4586b932c50a449a7c8dfdd16043ca4cda94dafbaa8ad1b44249c99bbcc52152506e +b9fc6d1c24f48404a4a64fbe3e43342738797905db46e4132aee5f086aaa4c704918ad508aaefa455cfe1b36572e6242 +a365e871d30ba9291cedaba1be7b04e968905d003e9e1af7e3b55c5eb048818ae5b913514fb08b24fb4fbdccbb35d0b8 +93bf99510971ea9af9f1e364f1234c898380677c8e8de9b0dd24432760164e46c787bc9ec42a7ad450500706cf247b2d +b872f825a5b6e7b9c7a9ddfeded3516f0b1449acc9b4fd29fc6eba162051c17416a31e5be6d3563f424d28e65bab8b8f +b06b780e5a5e8eb4f4c9dc040f749cf9709c8a4c9ef15e925f442b696e41e5095db0778a6c73bcd329b265f2c6955c8b +848f1a981f5fc6cd9180cdddb8d032ad32cdfa614fc750d690dbae36cc0cd355cbf1574af9b3ffc8b878f1b2fafb9544 +a03f48cbff3e9e8a3a655578051a5ae37567433093ac500ed0021c6250a51b767afac9bdb194ee1e3eac38a08c0eaf45 +b5be78ce638ff8c4aa84352b536628231d3f7558c5be3bf010b28feac3022e64691fa672f358c8b663904aebe24a54ed +a9d4da70ff676fa55d1728ba6ab03b471fa38b08854d99e985d88c2d050102d8ccffbe1c90249a5607fa7520b15fe791 +8fe9f7092ffb0b69862c8e972fb1ecf54308c96d41354ed0569638bb0364f1749838d6d32051fff1599112978c6e229c +ae6083e95f37770ecae0df1e010456f165d96cfe9a7278c85c15cffd61034081ce5723e25e2bede719dc9341ec8ed481 +a260891891103089a7afbd9081ea116cfd596fd1015f5b65e10b0961eb37fab7d09c69b7ce4be8bf35e4131848fb3fe4 +8d729fa32f6eb9fd2f6a140bef34e8299a2f3111bffd0fe463aa8622c9d98bfd31a1df3f3e87cd5abc52a595f96b970e +a30ec6047ae4bc7da4daa7f4c28c93aedb1112cfe240e681d07e1a183782c9ff6783ac077c155af23c69643b712a533f +ac830726544bfe7b5467339e5114c1a75f2a2a8d89453ce86115e6a789387e23551cd64620ead6283dfa4538eb313d86 +8445c135b7a48068d8ed3e011c6d818cfe462b445095e2fbf940301e50ded23f272d799eea47683fc027430ce14613ef +95785411715c9ae9d8293ce16a693a2aa83e3cb1b4aa9f76333d0da2bf00c55f65e21e42e50e6c5772ce213dd7b4f7a0 +b273b024fa18b7568c0d1c4d2f0c4e79ec509dafac8c5951f14192d63ddbcf2d8a7512c1c1b615cc38fa3e336618e0c5 +a78b9d3ea4b6a90572eb27956f411f1d105fdb577ee2ffeec9f221da9b45db84bfe866af1f29597220c75e0c37a628d8 +a4be2bf058c36699c41513c4d667681ce161a437c09d81383244fc55e1c44e8b1363439d0cce90a3e44581fb31d49493 +b6eef13040f17dd4eba22aaf284d2f988a4a0c4605db44b8d2f4bf9567ac794550b543cc513c5f3e2820242dd704152e +87eb00489071fa95d008c5244b88e317a3454652dcb1c441213aa16b28cd3ecaa9b22fec0bdd483c1df71c37119100b1 +92d388acdcb49793afca329cd06e645544d2269234e8b0b27d2818c809c21726bc9cf725651b951e358a63c83dedee24 +ae27e219277a73030da27ab5603c72c8bd81b6224b7e488d7193806a41343dff2456132274991a4722fdb0ef265d04cd +97583e08ecb82bbc27c0c8476d710389fa9ffbead5c43001bd36c1b018f29faa98de778644883e51870b69c5ffb558b5 +90a799a8ce73387599babf6b7da12767c0591cadd36c20a7990e7c05ea1aa2b9645654ec65308ee008816623a2757a6a +a1b47841a0a2b06efd9ab8c111309cc5fc9e1d5896b3e42ed531f6057e5ade8977c29831ce08dbda40348386b1dcc06d +b92b8ef59bbddb50c9457691bc023d63dfcc54e0fd88bd5d27a09e0d98ac290fc90e6a8f6b88492043bf7c87fac8f3e4 +a9d6240b07d62e22ec8ab9b1f6007c975a77b7320f02504fc7c468b4ee9cfcfd945456ff0128bc0ef2174d9e09333f8d +8e96534c94693226dc32bca79a595ca6de503af635f802e86442c67e77564829756961d9b701187fe91318da515bf0e6 +b6ba290623cd8dd5c2f50931c0045d1cfb0c30877bc8fe58cbc3ff61ee8da100045a39153916efa1936f4aee0892b473 +b43baa7717fac02d4294f5b3bb5e58a65b3557747e3188b482410388daac7a9c177f762d943fd5dcf871273921213da8 +b9cf00f8fb5e2ef2b836659fece15e735060b2ea39b8e901d3dcbdcf612be8bf82d013833718c04cd46ffaa70b85f42e +8017d0c57419e414cbba504368723e751ef990cc6f05dad7b3c2de6360adc774ad95512875ab8337d110bf39a42026fa +ae7401048b838c0dcd4b26bb6c56d79d51964a0daba780970b6c97daee4ea45854ea0ac0e4139b3fe60dac189f84df65 +887b237b0cd0f816b749b21db0b40072f9145f7896c36916296973f9e6990ede110f14e5976c906d08987c9836cca57f +a88c3d5770148aee59930561ca1223aceb2c832fb5417e188dca935905301fc4c6c2c9270bc1dff7add490a125eb81c6 +b6cf9b02c0cd91895ad209e38c54039523f137b5848b9d3ad33ae43af6c20c98434952db375fe378de7866f2d0e8b18a +84ef3d322ff580c8ad584b1fe4fe346c60866eb6a56e982ba2cf3b021ecb1fdb75ecc6c29747adda86d9264430b3f816 +a0561c27224baf0927ad144cb71e31e54a064c598373fcf0d66aebf98ab7af1d8e2f343f77baefff69a6da750a219e11 +aa5cc43f5b8162b016f5e1b61214c0c9d15b1078911c650b75e6cdfb49b85ee04c6739f5b1687d15908444f691f732de +ad4ac099b935589c7b8fdfdf3db332b7b82bb948e13a5beb121ebd7db81a87d278024a1434bcf0115c54ca5109585c3d +8a00466abf3f109a1dcd19e643b603d3af23d42794ef8ca2514dd507ecea44a031ac6dbc18bd02f99701168b25c1791e +b00b5900dfad79645f8bee4e5adc7b84eb22e5b1e67df77ccb505b7fc044a6c08a8ea5faca662414eb945f874f884cea +950e204e5f17112250b22ea6bb8423baf522fc0af494366f18fe0f949f51d6e6812074a80875cf1ed9c8e7420058d541 +91e5cbf8bb1a1d50c81608c9727b414d0dd2fb467ebc92f100882a3772e54f94979cfdf8e373fdef7c7fcdd60fec9e00 +a093f6a857b8caaff80599c2e89c962b415ecbaa70d8fd973155fa976a284c6b29a855f5f7a3521134d00d2972755188 +b4d55a3551b00da54cc010f80d99ddd2544bde9219a3173dfaadf3848edc7e4056ab532fb75ac26f5f7141e724267663 +a03ea050fc9b011d1b04041b5765d6f6453a93a1819cd9bd6328637d0b428f08526466912895dcc2e3008ee58822e9a7 +99b12b3665e473d01bc6985844f8994fb65cb15745024fb7af518398c4a37ff215da8f054e8fdf3286984ae36a73ca5e +9972c7e7a7fb12e15f78d55abcaf322c11249cd44a08f62c95288f34f66b51f146302bce750ff4d591707075d9123bd2 +a64b4a6d72354e596d87cda213c4fc2814009461570ccb27d455bbe131f8d948421a71925425b546d8cf63d5458cd64b +91c215c73b195795ede2228b7ed1f6e37892e0c6b0f4a0b5a16c57aa1100c84df9239054a173b6110d6c2b7f4bf1ce52 +88807198910ec1303480f76a3683870246a995e36adaeadc29c22f0bdba8152fe705bd070b75de657b04934f7d0ccf80 +b37c0026c7b32eb02cacac5b55cb5fe784b8e48b2945c64d3037af83ece556a117f0ff053a5968c2f5fa230e291c1238 +94c768384ce212bc2387e91ce8b45e4ff120987e42472888a317abc9dcdf3563b62e7a61c8e98d7cdcbe272167d91fc6 +a10c2564936e967a390cb14ef6e8f8b04ea9ece5214a38837eda09e79e0c7970b1f83adf017c10efd6faa8b7ffa2c567 +a5085eed3a95f9d4b1269182ea1e0d719b7809bf5009096557a0674bde4201b0ddc1f0f16a908fc468846b3721748ce3 +87468eb620b79a0a455a259a6b4dfbc297d0d53336537b771254dd956b145dc816b195b7002647ea218552e345818a3f +ace2b77ffb87366af0a9cb5d27d6fc4a14323dbbf1643f5f3c4559306330d86461bb008894054394cbfaefeaa0bc2745 +b27f56e840a54fbd793f0b7a7631aa4cee64b5947e4382b2dfb5eb1790270288884c2a19afebe5dc0c6ef335d4531c1c +876e438633931f7f895062ee16c4b9d10428875f7bc79a8e156a64d379a77a2c45bf5430c5ab94330f03da352f1e9006 +a2512a252587d200d2092b44c914df54e04ff8bcef36bf631f84bde0cf5a732e3dc7f00f662842cfd74b0b0f7f24180e +827f1bc8f54a35b7a4bd8154f79bcc055e45faed2e74adf7cf21cca95df44d96899e847bd70ead6bb27b9c0ed97bbd8b +a0c92cf5a9ed843714f3aea9fe7b880f622d0b4a3bf66de291d1b745279accf6ba35097849691370f41732ba64b5966b +a63f5c1e222775658421c487b1256b52626c6f79cb55a9b7deb2352622cedffb08502042d622eb3b02c97f9c09f9c957 +8cc093d52651e65fb390e186db6cc4de559176af4624d1c44cb9b0e836832419dacac7b8db0627b96288977b738d785d +aa7b6a17dfcec146134562d32a12f7bd7fe9522e300859202a02939e69dbd345ed7ff164a184296268f9984f9312e8fc +8ac76721f0d2b679f023d06cbd28c85ae5f4b43c614867ccee88651d4101d4fd352dbdb65bf36bfc3ebc0109e4b0c6f9 +8d350f7c05fc0dcd9a1170748846fb1f5d39453e4cb31e6d1457bed287d96fc393b2ecc53793ca729906a33e59c6834a +b9913510dfc5056d7ec5309f0b631d1ec53e3a776412ada9aefdaf033c90da9a49fdde6719e7c76340e86599b1f0eec2 +94955626bf4ce87612c5cfffcf73bf1c46a4c11a736602b9ba066328dc52ad6d51e6d4f53453d4ed55a51e0aad810271 +b0fcab384fd4016b2f1e53f1aafd160ae3b1a8865cd6c155d7073ecc1664e05b1d8bca1def39c158c7086c4e1103345e +827de3f03edfbde08570b72de6662c8bfa499b066a0a27ebad9b481c273097d17a5a0a67f01553da5392ec3f149b2a78 +ab7940384c25e9027c55c40df20bd2a0d479a165ced9b1046958353cd69015eeb1e44ed2fd64e407805ba42df10fc7bf +8ad456f6ff8cd58bd57567d931f923d0c99141978511b17e03cab7390a72b9f62498b2893e1b05c7c22dd274e9a31919 +ac75399e999effe564672db426faa17a839e57c5ef735985c70cd559a377adec23928382767b55ed5a52f7b11b54b756 +b17f975a00b817299ac7af5f2024ea820351805df58b43724393bfb3920a8cd747a3bbd4b8286e795521489db3657168 +a2bed800a6d95501674d9ee866e7314063407231491d794f8cf57d5be020452729c1c7cefd8c50dc1540181f5caab248 +9743f5473171271ffdd3cc59a3ae50545901a7b45cd4bc3570db487865f3b73c0595bebabbfe79268809ee1862e86e4a +b7eab77c2d4687b60d9d7b04e842b3880c7940140012583898d39fcc22d9b9b0a9be2c2e3788b3e6f30319b39c338f09 +8e2b8f797a436a1b661140e9569dcf3e1eea0a77c7ff2bc4ff0f3e49af04ed2de95e255df8765f1d0927fb456a9926b1 +8aefea201d4a1f4ff98ffce94e540bb313f2d4dfe7e9db484a41f13fc316ed02b282e1acc9bc6f56cad2dc2e393a44c9 +b950c17c0e5ca6607d182144aa7556bb0efe24c68f06d79d6413a973b493bfdf04fd147a4f1ab03033a32004cc3ea66f +b7b8dcbb179a07165f2dc6aa829fad09f582a71b05c3e3ea0396bf9e6fe73076f47035c031c2101e8e38e0d597eadd30 +a9d77ed89c77ec1bf8335d08d41c3c94dcca9fd1c54f22837b4e54506b212aa38d7440126c80648ab7723ff18e65ed72 +a819d6dfd4aef70e52b8402fe5d135f8082d40eb7d3bb5c4d7997395b621e2bb10682a1bad2c9caa33dd818550fc3ec6 +8f6ee34128fac8bbf13ce2d68b2bb363eb4fd65b297075f88e1446ddeac242500eeb4ef0735e105882ff5ba8c44c139b +b4440e48255c1644bcecf3a1e9958f1ec4901cb5b1122ee5b56ffd02cad1c29c4266999dbb85aa2605c1b125490074d4 +a43304a067bede5f347775d5811cf65a6380a8d552a652a0063580b5c5ef12a0867a39c7912fa219e184f4538eba1251 +a891ad67a790089ffc9f6d53e6a3d63d3556f5f693e0cd8a7d0131db06fd4520e719cfcc3934f0a8f62a95f90840f1d4 +aea6df8e9bb871081aa0fc5a9bafb00be7d54012c5baf653791907d5042a326aeee966fd9012a582cc16695f5baf7042 +8ffa2660dc52ed1cd4eff67d6a84a8404f358a5f713d04328922269bee1e75e9d49afeec0c8ad751620f22352a438e25 +87ec6108e2d63b06abed350f8b363b7489d642486f879a6c3aa90e5b0f335efc2ff2834eef9353951a42136f8e6a1b32 +865619436076c2760d9e87ddc905023c6de0a8d56eef12c98a98c87837f2ca3f27fd26a2ad752252dbcbe2b9f1d5a032 +980437dce55964293cb315c650c5586ffd97e7a944a83f6618af31c9d92c37b53ca7a21bb5bc557c151b9a9e217e7098 +95d128fc369df4ad8316b72aea0ca363cbc7b0620d6d7bb18f7076a8717a6a46956ff140948b0cc4f6d2ce33b5c10054 +8c7212d4a67b9ec70ebbca04358ad2d36494618d2859609163526d7b3acc2fc935ca98519380f55e6550f70a9bc76862 +893a2968819401bf355e85eee0f0ed0406a6d4a7d7f172d0017420f71e00bb0ba984f6020999a3cdf874d3cd8ebcd371 +9103c1af82dece25d87274e89ea0acd7e68c2921c4af3d8d7c82ab0ed9990a5811231b5b06113e7fa43a6bd492b4564f +99cfd87a94eab7d35466caa4ed7d7bb45e5c932b2ec094258fb14bf205659f83c209b83b2f2c9ccb175974b2a33e7746 +874b6b93e4ee61be3f00c32dd84c897ccd6855c4b6251eb0953b4023634490ed17753cd3223472873cbc6095b2945075 +84a32c0dc4ea60d33aac3e03e70d6d639cc9c4cc435c539eff915017be3b7bdaba33349562a87746291ebe9bc5671f24 +a7057b24208928ad67914e653f5ac1792c417f413d9176ba635502c3f9c688f7e2ee81800d7e3dc0a340c464da2fd9c5 +a03fb9ed8286aacfa69fbd5d953bec591c2ae4153400983d5dbb6cd9ea37fff46ca9e5cceb9d117f73e9992a6c055ad2 +863b2de04e89936c9a4a2b40380f42f20aefbae18d03750fd816c658aee9c4a03df7b12121f795c85d01f415baaeaa59 +8526eb9bd31790fe8292360d7a4c3eed23be23dd6b8b8f01d2309dbfdc0cfd33ad1568ddd7f8a610f3f85a9dfafc6a92 +b46ab8c5091a493d6d4d60490c40aa27950574a338ea5bbc045be3a114af87bdcb160a8c80435a9b7ad815f3cb56a3f3 +aeadc47b41a8d8b4176629557646202f868b1d728b2dda58a347d937e7ffc8303f20d26d6c00b34c851b8aeec547885d +aebb19fc424d72c1f1822aa7adc744cd0ef7e55727186f8df8771c784925058c248406ebeeaf3c1a9ee005a26e9a10c6 +8ff96e81c1a4a2ab1b4476c21018fae0a67e92129ee36120cae8699f2d7e57e891f5c624902cb1b845b944926a605cc3 +8251b8d2c43fadcaa049a9e7aff838dae4fb32884018d58d46403ac5f3beb5c518bfd45f03b8abb710369186075eb71c +a8b2a64f865f51a5e5e86a66455c093407933d9d255d6b61e1fd81ffafc9538d73caaf342338a66ba8ee166372a3d105 +aad915f31c6ba7fdc04e2aaac62e84ef434b7ee76a325f07dc430d12c84081999720181067b87d792efd0117d7ee1eab +a13db3bb60389883fd41d565c54fb5180d9c47ce2fe7a169ae96e01d17495f7f4fa928d7e556e7c74319c4c25d653eb2 +a4491b0198459b3f552855d680a59214eb74e6a4d6c5fa3b309887dc50ebea2ecf6d26c040550f7dc478b452481466fb +8f017f13d4b1e3f0c087843582b52d5f8d13240912254d826dd11f8703a99a2f3166dfbdfdffd9a3492979d77524276b +96c3d5dcd032660d50d7cd9db2914f117240a63439966162b10c8f1f3cf74bc83b0f15451a43b31dbd85e4a7ce0e4bb1 +b479ec4bb79573d32e0ec93b92bdd7ec8c26ddb5a2d3865e7d4209d119fd3499eaac527615ffac78c440e60ef3867ae0 +b2c49c4a33aa94b52b6410b599e81ff15490aafa7e43c8031c865a84e4676354a9c81eb4e7b8be6825fdcefd1e317d44 +906dc51d6a90c089b6704b47592805578a6eed106608eeb276832f127e1b8e858b72e448edcbefb497d152447e0e68ff +b0e81c63b764d7dfbe3f3fddc9905aef50f3633e5d6a4af6b340495124abedcff5700dfd1577bbbed7b6bf97d02719cb +9304c64701e3b4ed6d146e48a881f7d83a17f58357cca0c073b2bb593afd2d94f6e2a7a1ec511d0a67ad6ff4c3be5937 +b6fdbd12ba05aa598d80b83f70a15ef90e5cba7e6e75fa038540ee741b644cd1f408a6cecfd2a891ef8d902de586c6b5 +b80557871a6521b1b3c74a1ba083ae055b575df607f1f7b04c867ba8c8c181ea68f8d90be6031f4d25002cca27c44da2 +aa7285b8e9712e06b091f64163f1266926a36607f9d624af9996856ed2aaf03a580cb22ce407d1ade436c28b44ca173f +8148d72b975238b51e6ea389e5486940d22641b48637d7dfadfa603a605bfc6d74a016480023945d0b85935e396aea5d +8a014933a6aea2684b5762af43dcf4bdbb633cd0428d42d71167a2b6fc563ece5e618bff22f1db2ddb69b845b9a2db19 +990d91740041db770d0e0eb9d9d97d826f09fd354b91c41e0716c29f8420e0e8aac0d575231efba12fe831091ec38d5a +9454d0d32e7e308ddec57cf2522fb1b67a2706e33fb3895e9e1f18284129ab4f4c0b7e51af25681d248d7832c05eb698 +a5bd434e75bac105cb3e329665a35bce6a12f71dd90c15165777d64d4c13a82bceedb9b48e762bd24034e0fc9fbe45f4 +b09e3b95e41800d4dc29c6ffdaab2cd611a0050347f6414f154a47ee20ee59bf8cf7181454169d479ebce1eb5c777c46 +b193e341d6a047d15eea33766d656d807b89393665a783a316e9ba10518e5515c8e0ade3d6e15641d917a8a172a5a635 +ade435ec0671b3621dde69e07ead596014f6e1daa1152707a8c18877a8b067bde2895dd47444ffa69db2bbef1f1d8816 +a7fd3d6d87522dfc56fb47aef9ce781a1597c56a8bbfd796baba907afdc872f753d732bfda1d3402aee6c4e0c189f52d +a298cb4f4218d0464b2fab393e512bbc477c3225aa449743299b2c3572f065bc3a42d07e29546167ed9e1b6b3b3a3af3 +a9ee57540e1fd9c27f4f0430d194b91401d0c642456c18527127d1f95e2dba41c2c86d1990432eb38a692fda058fafde +81d6c1a5f93c04e6d8e5a7e0678c1fc89a1c47a5c920bcd36180125c49fcf7c114866b90e90a165823560b19898a7c16 +a4b7a1ec9e93c899b9fd9aaf264c50e42c36c0788d68296a471f7a3447af4dbc81e4fa96070139941564083ec5b5b5a1 +b3364e327d381f46940c0e11e29f9d994efc6978bf37a32586636c0070b03e4e23d00650c1440f448809e1018ef9f6d8 +8056e0913a60155348300e3a62e28b5e30629a90f7dd4fe11289097076708110a1d70f7855601782a3cdc5bdb1ca9626 +b4980fd3ea17bac0ba9ee1c470b17e575bb52e83ebdd7d40c93f4f87bebeaff1c8a679f9d3d09d635f068d37d5bd28bd +905a9299e7e1853648e398901dfcd437aa575c826551f83520df62984f5679cb5f0ea86aa45ed3e18b67ddc0dfafe809 +ab99553bf31a84f2e0264eb34a08e13d8d15e2484aa9352354becf9a15999c76cc568d68274b70a65e49703fc23540d0 +a43681597bc574d2dae8964c9a8dc1a07613d7a1272bdcb818d98c85d44e16d744250c33f3b5e4d552d97396b55e601f +a54e5a31716fccb50245898c99865644405b8dc920ded7a11f3d19bdc255996054b268e16f2e40273f11480e7145f41e +8134f3ad5ef2ad4ba12a8a4e4d8508d91394d2bcdc38b7c8c8c0b0a820357ac9f79d286c65220f471eb1adca1d98fc68 +94e2f755e60471578ab2c1adb9e9cea28d4eec9b0e92e0140770bca7002c365fcabfe1e5fb4fe6cfe79a0413712aa3ef +ad48f8d0ce7eb3cc6e2a3086ad96f562e5bed98a360721492ae2e74dc158586e77ec8c35d5fd5927376301b7741bad2b +8614f0630bdd7fbad3a31f55afd9789f1c605dc85e7dc67e2edfd77f5105f878bb79beded6e9f0b109e38ea7da67e8d5 +9804c284c4c5e77dabb73f655b12181534ca877c3e1e134aa3f47c23b7ec92277db34d2b0a5d38d2b69e5d1c3008a3e3 +a51b99c3088e473afdaa9e0a9f7e75a373530d3b04e44e1148da0726b95e9f5f0c7e571b2da000310817c36f84b19f7f +ac4ff909933b3b76c726b0a382157cdc74ab851a1ac6cef76953c6444441804cc43abb883363f416592e8f6cfbc4550b +ae7d915eb9fc928b65a29d6edbc75682d08584d0014f7bcf17d59118421ae07d26a02137d1e4de6938bcd1ab8ef48fad +852f7e453b1af89b754df6d11a40d5d41ea057376e8ecacd705aacd2f917457f4a093d6b9a8801837fa0f62986ad7149 +92c6bf5ada5d0c3d4dd8058483de36c215fa98edab9d75242f3eff9db07c734ad67337da6f0eefe23a487bf75a600dee +a2b42c09d0db615853763552a48d2e704542bbd786aae016eb58acbf6c0226c844f5fb31e428cb6450b9db855f8f2a6f +880cc07968266dbfdcfbc21815cd69e0eddfee239167ac693fb0413912d816f2578a74f7716eecd6deefa68c6eccd394 +b885b3ace736cd373e8098bf75ba66fa1c6943ca1bc4408cd98ac7074775c4478594f91154b8a743d9c697e1b29f5840 +a51ce78de512bd87bfa0835de819941dffbf18bec23221b61d8096fc9436af64e0693c335b54e7bfc763f287bdca2db6 +a3c76166a3bdb9b06ef696e57603b58871bc72883ee9d45171a30fe6e1d50e30bc9c51b4a0f5a7270e19a77b89733850 +acefc5c6f8a1e7c24d7b41e0fc7f6f3dc0ede6cf3115ffb9a6e54b1d954cbca9bda8ad7a084be9be245a1b8e9770d141 +b420ed079941842510e31cfad117fa11fb6b4f97dfbc6298cb840f27ebaceba23eeaf3f513bcffbf5e4aae946310182d +95c3bb5ef26c5ed2f035aa5d389c6b3c15a6705b9818a3fefaed28922158b35642b2e8e5a1a620fdad07e75ad4b43af4 +825149f9081ecf07a2a4e3e8b5d21bade86c1a882475d51c55ee909330b70c5a2ac63771c8600c6f38df716af61a3ea1 +873b935aae16d9f08adbc25353cee18af2f1b8d5f26dec6538d6bbddc515f2217ed7d235dcfea59ae61b428798b28637 +9294150843a2bedcedb3bb74c43eb28e759cf9499582c5430bccefb574a8ddd4f11f9929257ff4c153990f9970a2558f +b619563a811cc531da07f4f04e5c4c6423010ff9f8ed7e6ec9449162e3d501b269fb1c564c09c0429431879b0f45df02 +91b509b87eb09f007d839627514658c7341bc76d468920fe8a740a8cb96a7e7e631e0ea584a7e3dc1172266f641d0f5c +8b8aceace9a7b9b4317f1f01308c3904d7663856946afbcea141a1c615e21ccad06b71217413e832166e9dd915fbe098 +87b3b36e725833ea0b0f54753c3728c0dbc87c52d44d705ffc709f2d2394414c652d3283bab28dcce09799504996cee0 +b2670aad5691cbf308e4a6a77a075c4422e6cbe86fdba24e9f84a313e90b0696afb6a067eebb42ba2d10340d6a2f6e51 +876784a9aff3d54faa89b2bacd3ff5862f70195d0b2edc58e8d1068b3c9074c0da1cfa23671fe12f35e33b8a329c0ccd +8b48b9e758e8a8eae182f5cbec96f67d20cca6d3eee80a2d09208eb1d5d872e09ef23d0df8ebbb9b01c7449d0e3e3650 +b79303453100654c04a487bdcadc9e3578bc80930c489a7069a52e8ca1dba36c492c8c899ce025f8364599899baa287d +961b35a6111da54ece6494f24dacd5ea46181f55775b5f03df0e370c34a5046ac2b4082925855325bb42bc2a2c98381d +a31feb1be3f5a0247a1f7d487987eb622e34fca817832904c6ee3ee60277e5847945a6f6ea1ac24542c72e47bdf647df +a12a2aa3e7327e457e1aae30e9612715dd2cfed32892c1cd6dcda4e9a18203af8a44afb46d03b2eed89f6b9c5a2c0c23 +a08265a838e69a2ca2f80fead6ccf16f6366415b920c0b22ee359bcd8d4464ecf156f400a16a7918d52e6d733dd64211 +b723d6344e938d801cca1a00032af200e541d4471fd6cbd38fb9130daa83f6a1dffbbe7e67fc20f9577f884acd7594b2 +a6733d83ec78ba98e72ddd1e7ff79b7adb0e559e256760d0c590a986e742445e8cdf560d44b29439c26d87edd0b07c8c +a61c2c27d3f7b9ff4695a17afedf63818d4bfba390507e1f4d0d806ce8778d9418784430ce3d4199fd3bdbc2504d2af3 +8332f3b63a6dc985376e8b1b25eeae68be6160fbe40053ba7bcf6f073204f682da72321786e422d3482fd60c9e5aa034 +a280f44877583fbb6b860d500b1a3f572e3ee833ec8f06476b3d8002058e25964062feaa1e5bec1536d734a5cfa09145 +a4026a52d277fcea512440d2204f53047718ebfcae7b48ac57ea7f6bfbc5de9d7304db9a9a6cbb273612281049ddaec5 +95cdf69c831ab2fad6c2535ede9c07e663d2ddccc936b64e0843d2df2a7b1c31f1759c3c20f1e7a57b1c8f0dbb21b540 +95c96cec88806469c277ab567863c5209027cecc06c7012358e5f555689c0d9a5ffb219a464f086b45817e8536b86d2f +afe38d4684132a0f03d806a4c8df556bf589b25271fbc6fe2e1ed16de7962b341c5003755da758d0959d2e6499b06c68 +a9b77784fda64987f97c3a23c5e8f61b918be0f7c59ba285084116d60465c4a2aaafc8857eb16823282cc83143eb9126 +a830f05881ad3ce532a55685877f529d32a5dbe56cea57ffad52c4128ee0fad0eeaf0da4362b55075e77eda7babe70e5 +992b3ad190d6578033c13ed5abfee4ef49cbc492babb90061e3c51ee4b5790cdd4c8fc1abff1fa2c00183b6b64f0bbbe +b1015424d9364aeff75de191652dc66484fdbec3e98199a9eb9671ec57bec6a13ff4b38446e28e4d8aedb58dd619cd90 +a745304604075d60c9db36cada4063ac7558e7ec2835d7da8485e58d8422e817457b8da069f56511b02601289fbb8981 +a5ba4330bc5cb3dbe0486ddf995632a7260a46180a08f42ae51a2e47778142132463cc9f10021a9ad36986108fefa1a9 +b419e9fd4babcaf8180d5479db188bb3da232ae77a1c4ed65687c306e6262f8083070a9ac32220cddb3af2ec73114092 +a49e23dc5f3468f3bf3a0bb7e4a114a788b951ff6f23a3396ae9e12cbff0abd1240878a3d1892105413dbc38818e807c +b7ecc7b4831f650202987e85b86bc0053f40d983f252e9832ef503aea81c51221ce93279da4aa7466c026b2d2070e55d +96a8c35cb87f84fa84dcd6399cc2a0fd79cc9158ef4bdde4bae31a129616c8a9f2576cd19baa3f497ca34060979aed7d +8681b2c00aa62c2b519f664a95dcb8faef601a3b961bb4ce5d85a75030f40965e2983871d41ea394aee934e859581548 +85c229a07efa54a713d0790963a392400f55fbb1a43995a535dc6c929f20d6a65cf4efb434e0ad1cb61f689b8011a3bc +90856f7f3444e5ad44651c28e24cc085a5db4d2ffe79aa53228c26718cf53a6e44615f3c5cda5aa752d5f762c4623c66 +978999b7d8aa3f28a04076f74d11c41ef9c89fdfe514936c4238e0f13c38ec97e51a5c078ebc6409e517bfe7ccb42630 +a099914dd7ed934d8e0d363a648e9038eb7c1ec03fa04dbcaa40f7721c618c3ef947afef7a16b4d7ac8c12aa46637f03 +ab2a104fed3c83d16f2cda06878fa5f30c8c9411de71bfb67fd2fc9aa454dcbcf3d299d72f8cc12e919466a50fcf7426 +a4471d111db4418f56915689482f6144efc4664cfb0311727f36c864648d35734351becc48875df96f4abd3cfcf820f9 +83be11727cd30ea94ccc8fa31b09b81c9d6a9a5d3a4686af9da99587332fe78c1f94282f9755854bafd6033549afec91 +88020ff971dc1a01a9e993cd50a5d2131ffdcbb990c1a6aaa54b20d8f23f9546a70918ea57a21530dcc440c1509c24ad +ae24547623465e87905eaffa1fa5d52bb7c453a8dbd89614fa8819a2abcedaf455c2345099b7324ae36eb0ad7c8ef977 +b59b0c60997de1ee00b7c388bc7101d136c9803bf5437b1d589ba57c213f4f835a3e4125b54738e78abbc21b000f2016 +a584c434dfe194546526691b68fa968c831c31da42303a1d735d960901c74011d522246f37f299555416b8cf25c5a548 +80408ce3724f4837d4d52376d255e10f69eb8558399ae5ca6c11b78b98fe67d4b93157d2b9b639f1b5b64198bfe87713 +abb941e8d406c2606e0ddc35c113604fdd9d249eacc51cb64e2991e551b8639ce44d288cc92afa7a1e7fc599cfc84b22 +b223173f560cacb1c21dba0f1713839e348ad02cbfdef0626748604c86f89e0f4c919ed40b583343795bdd519ba952c8 +af1c70512ec3a19d98b8a1fc3ff7f7f5048a27d17d438d43f561974bbdd116fcd5d5c21040f3447af3f0266848d47a15 +8a44809568ebe50405bede19b4d2607199159b26a1b33e03d180e6840c5cf59d991a4fb150d111443235d75ecad085b7 +b06207cdca46b125a27b3221b5b50cf27af4c527dd7c80e2dbcebbb09778a96df3af67e50f07725239ce3583dad60660 +993352d9278814ec89b26a11c4a7c4941bf8f0e6781ae79559d14749ee5def672259792db4587f85f0100c7bb812f933 +9180b8a718b971fd27bc82c8582d19c4b4f012453e8c0ffeeeffe745581fc6c07875ab28be3af3fa3896d19f0c89ac5b +8b8e1263eb48d0fe304032dd5ea1f30e73f0121265f7458ba9054d3626894e8a5fef665340abd2ede9653045c2665938 +99a2beee4a10b7941c24b2092192faf52b819afd033e4a2de050fd6c7f56d364d0cf5f99764c3357cf32399e60fc5d74 +946a4aad7f8647ea60bee2c5fcdeb6f9a58fb2cfca70c4d10e458027a04846e13798c66506151be3df9454b1e417893f +a672a88847652d260b5472d6908d1d57e200f1e492d30dd1cecc441cdfc9b76e016d9bab560efd4d7f3c30801de884a9 +9414e1959c156cde1eb24e628395744db75fc24b9df4595350aaad0bc38e0246c9b4148f6443ef68b8e253a4a6bcf11c +9316e9e4ec5fab4f80d6540df0e3a4774db52f1d759d2e5b5bcd3d7b53597bb007eb1887cb7dc61f62497d51ffc8d996 +902d6d77bb49492c7a00bc4b70277bc28c8bf9888f4307bb017ac75a962decdedf3a4e2cf6c1ea9f9ba551f4610cbbd7 +b07025a18b0e32dd5e12ec6a85781aa3554329ea12c4cd0d3b2c22e43d777ef6f89876dd90a9c8fb097ddf61cf18adc5 +b355a849ad3227caa4476759137e813505ec523cbc2d4105bc7148a4630f9e81918d110479a2d5f5e4cd9ccec9d9d3e3 +b49532cfdf02ee760109881ad030b89c48ee3bb7f219ccafc13c93aead754d29bdafe345be54c482e9d5672bd4505080 +9477802410e263e4f938d57fa8f2a6cac7754c5d38505b73ee35ea3f057aad958cb9722ba6b7b3cfc4524e9ca93f9cdc +9148ea83b4436339580f3dbc9ba51509e9ab13c03063587a57e125432dd0915f5d2a8f456a68f8fff57d5f08c8f34d6e +b00b6b5392b1930b54352c02b1b3b4f6186d20bf21698689bbfc7d13e86538a4397b90e9d5c93fd2054640c4dbe52a4f +926a9702500441243cd446e7cbf15dde16400259726794694b1d9a40263a9fc9e12f7bcbf12a27cb9aaba9e2d5848ddc +a0c6155f42686cbe7684a1dc327100962e13bafcf3db97971fc116d9f5c0c8355377e3d70979cdbd58fd3ea52440901c +a277f899f99edb8791889d0817ea6a96c24a61acfda3ad8c3379e7c62b9d4facc4b965020b588651672fd261a77f1bfc +8f528cebb866b501f91afa50e995234bef5bf20bff13005de99cb51eaac7b4f0bf38580cfd0470de40f577ead5d9ba0f +963fc03a44e9d502cc1d23250efef44d299befd03b898d07ce63ca607bb474b5cf7c965a7b9b0f32198b04a8393821f7 +ab087438d0a51078c378bf4a93bd48ef933ff0f1fa68d02d4460820df564e6642a663b5e50a5fe509527d55cb510ae04 +b0592e1f2c54746bb076be0fa480e1c4bebc4225e1236bcda3b299aa3853e3afb401233bdbcfc4a007b0523a720fbf62 +851613517966de76c1c55a94dc4595f299398a9808f2d2f0a84330ba657ab1f357701d0895f658c18a44cb00547f6f57 +a2fe9a1dd251e72b0fe4db27be508bb55208f8f1616b13d8be288363ec722826b1a1fd729fc561c3369bf13950bf1fd6 +b896cb2bc2d0c77739853bc59b0f89b2e008ba1f701c9cbe3bef035f499e1baee8f0ff1e794854a48c320586a2dfc81a +a1b60f98e5e5106785a9b81a85423452ee9ef980fa7fa8464f4366e73f89c50435a0c37b2906052b8e58e212ebd366cf +a853b0ebd9609656636df2e6acd5d8839c0fda56f7bf9288a943b06f0b67901a32b95e016ca8bc99bd7b5eab31347e72 +b290fa4c1346963bd5225235e6bdf7c542174dab4c908ab483d1745b9b3a6015525e398e1761c90e4b49968d05e30eea +b0f65a33ad18f154f1351f07879a183ad62e5144ad9f3241c2d06533dad09cbb2253949daff1bb02d24d16a3569f7ef0 +a00db59b8d4218faf5aeafcd39231027324408f208ec1f54d55a1c41228b463b88304d909d16b718cfc784213917b71e +b8d695dd33dc2c3bc73d98248c535b2770ad7fa31aa726f0aa4b3299efb0295ba9b4a51c71d314a4a1bd5872307534d1 +b848057cca2ca837ee49c42b88422303e58ea7d2fc76535260eb5bd609255e430514e927cc188324faa8e657396d63ec +92677836061364685c2aaf0313fa32322746074ed5666fd5f142a7e8f87135f45cd10e78a17557a4067a51dfde890371 +a854b22c9056a3a24ab164a53e5c5cf388616c33e67d8ebb4590cb16b2e7d88b54b1393c93760d154208b5ca822dc68f +86fff174920388bfab841118fb076b2b0cdec3fdb6c3d9a476262f82689fb0ed3f1897f7be9dbf0932bb14d346815c63 +99661cf4c94a74e182752bcc4b98a8c2218a8f2765642025048e12e88ba776f14f7be73a2d79bd21a61def757f47f904 +8a8893144d771dca28760cba0f950a5d634195fd401ec8cf1145146286caffb0b1a6ba0c4c1828d0a5480ce49073c64c +938a59ae761359ee2688571e7b7d54692848eb5dde57ffc572b473001ea199786886f8c6346a226209484afb61d2e526 +923f68a6aa6616714cf077cf548aeb845bfdd78f2f6851d8148cba9e33a374017f2f3da186c39b82d14785a093313222 +ac923a93d7da7013e73ce8b4a2b14b8fd0cc93dc29d5de941a70285bdd19be4740fedfe0c56b046689252a3696e9c5bc +b49b32c76d4ec1a2c68d4989285a920a805993bc6fcce6dacd3d2ddae73373050a5c44ba8422a3781050682fa0ef6ba2 +8a367941c07c3bdca5712524a1411bad7945c7c48ffc7103b1d4dff2c25751b0624219d1ccde8c3f70c465f954be5445 +b838f029df455efb6c530d0e370bbbf7d87d61a9aea3d2fe5474c5fe0a39cf235ceecf9693c5c6c5820b1ba8f820bd31 +a8983b7c715eaac7f13a001d2abc462dfc1559dab4a6b554119c271aa8fe00ffcf6b6949a1121f324d6d26cb877bcbae +a2afb24ad95a6f14a6796315fbe0d8d7700d08f0cfaf7a2abe841f5f18d4fecf094406cbd54da7232a159f9c5b6e805e +87e8e95ad2d62f947b2766ff405a23f7a8afba14e7f718a691d95369c79955cdebe24c54662553c60a3f55e6322c0f6f +87c2cbcecb754e0cc96128e707e5c5005c9de07ffd899efa3437cadc23362f5a1d3fcdd30a1f5bdc72af3fb594398c2a +91afd6ee04f0496dc633db88b9370d41c428b04fd991002502da2e9a0ef051bcd7b760e860829a44fbe5539fa65f8525 +8c50e5d1a24515a9dd624fe08b12223a75ca55196f769f24748686315329b337efadca1c63f88bee0ac292dd0a587440 +8a07e8f912a38d94309f317c32068e87f68f51bdfa082d96026f5f5f8a2211621f8a3856dda8069386bf15fb2d28c18f +94ad1dbe341c44eeaf4dc133eed47d8dbfe752575e836c075745770a6679ff1f0e7883b6aa917462993a7f469d74cab5 +8745f8bd86c2bb30efa7efb7725489f2654f3e1ac4ea95bd7ad0f3cfa223055d06c187a16192d9d7bdaea7b050c6a324 +900d149c8d79418cda5955974c450a70845e02e5a4ecbcc584a3ca64d237df73987c303e3eeb79da1af83bf62d9e579f +8f652ab565f677fb1a7ba03b08004e3cda06b86c6f1b0b9ab932e0834acf1370abb2914c15b0d08327b5504e5990681c +9103097d088be1f75ab9d3da879106c2f597e2cc91ec31e73430647bdd5c33bcfd771530d5521e7e14df6acda44f38a6 +b0fec7791cfb0f96e60601e1aeced9a92446b61fedab832539d1d1037558612d78419efa87ff5f6b7aab8fd697d4d9de +b9d2945bdb188b98958854ba287eb0480ef614199c4235ce5f15fc670b8c5ffe8eeb120c09c53ea8a543a022e6a321ac +a9461bb7d5490973ebaa51afc0bb4a5e42acdccb80e2f939e88b77ac28a98870e103e1042899750f8667a8cc9123bae9 +a37fdf11d4bcb2aed74b9f460a30aa34afea93386fa4cdb690f0a71bc58f0b8df60bec56e7a24f225978b862626fa00e +a214420e183e03d531cf91661466ea2187d84b6e814b8b20b3730a9400a7d25cf23181bb85589ebc982cec414f5c2923 +ad09a45a698a6beb3e0915f540ef16e9af7087f53328972532d6b5dfe98ce4020555ece65c6cbad8bd6be8a4dfefe6fd +ab6742800b02728c92d806976764cb027413d6f86edd08ad8bb5922a2969ee9836878cd39db70db0bd9a2646862acc4f +974ca9305bd5ea1dc1755dff3b63e8bfe9f744321046c1395659bcea2a987b528e64d5aa96ac7b015650b2253b37888d +84eee9d6bce039c52c2ebc4fccc0ad70e20c82f47c558098da4be2f386a493cbc76adc795b5488c8d11b6518c2c4fab8 +875d7bda46efcb63944e1ccf760a20144df3b00d53282b781e95f12bfc8f8316dfe6492c2efbf796f1150e36e436e9df +b68a2208e0c587b5c31b5f6cb32d3e6058a9642e2d9855da4f85566e1412db528475892060bb932c55b3a80877ad7b4a +ba006368ecab5febb6ab348644d9b63de202293085ed468df8bc24d992ae8ce468470aa37f36a73630c789fb9c819b30 +90a196035150846cd2b482c7b17027471372a8ce7d914c4d82b6ea7fa705d8ed5817bd42d63886242585baf7d1397a1c +a223b4c85e0daa8434b015fd9170b5561fe676664b67064974a1e9325066ecf88fc81f97ab5011c59fad28cedd04b240 +82e8ec43139cf15c6bbeed484b62e06cded8a39b5ce0389e4cbe9c9e9c02f2f0275d8d8d4e8dfec8f69a191bef220408 +81a3fc07a7b68d92c6ee4b6d28f5653ee9ec85f7e2ee1c51c075c1b130a8c5097dc661cf10c5aff1c7114b1a6a19f11a +8ed2ef8331546d98819a5dd0e6c9f8cb2630d0847671314a28f277faf68da080b53891dd75c82cbcf7788b255490785d +acecabf84a6f9bbed6b2fc2e7e4b48f02ef2f15e597538a73aea8f98addc6badda15e4695a67ecdb505c1554e8f345ec +b8f51019b2aa575f8476e03dcadf86cc8391f007e5f922c2a36b2daa63f5a503646a468990cd5c65148d323942193051 +aaa595a84b403ec65729bc1c8055a94f874bf9adddc6c507b3e1f24f79d3ad359595a672b93aab3394db4e2d4a7d8970 +895144c55fcbd0f64d7dd69e6855cfb956e02b5658eadf0f026a70703f3643037268fdd673b0d21b288578a83c6338dd +a2e92ae6d0d237d1274259a8f99d4ea4912a299816350b876fba5ebc60b714490e198a916e1c38c6e020a792496fa23c +a45795fda3b5bb0ad1d3c628f6add5b2a4473a1414c1a232e80e70d1cfffd7f8a8d9861f8df2946999d7dbb56bf60113 +b6659bf7f6f2fef61c39923e8c23b8c70e9c903028d8f62516d16755cd3fba2fe41c285aa9432dc75ab08f8a1d8a81fc +a735609a6bc5bfd85e58234fc439ff1f58f1ff1dd966c5921d8b649e21f006bf2b8642ad8a75063c159aaf6935789293 +a3c622eb387c9d15e7bda2e3e84d007cb13a6d50d655c3f2f289758e49d3b37b9a35e4535d3cc53d8efd51f407281f19 +8afe147b53ad99220f5ef9d763bfc91f9c20caecbcf823564236fb0e6ede49414c57d71eec4772c8715cc65a81af0047 +b5f0203233cf71913951e9c9c4e10d9243e3e4a1f2cb235bf3f42009120ba96e04aa414c9938ea8873b63148478927e8 +93c52493361b458d196172d7ba982a90a4f79f03aa8008edc322950de3ce6acf4c3977807a2ffa9e924047e02072b229 +b9e72b805c8ac56503f4a86c82720afbd5c73654408a22a2ac0b2e5caccdfb0e20b59807433a6233bc97ae58cf14c70a +af0475779b5cee278cca14c82da2a9f9c8ef222eb885e8c50cca2315fea420de6e04146590ed0dd5a29c0e0812964df5 +b430ccab85690db02c2d0eb610f3197884ca12bc5f23c51e282bf3a6aa7e4a79222c3d8761454caf55d6c01a327595f9 +830032937418b26ee6da9b5206f3e24dc76acd98589e37937e963a8333e5430abd6ce3dd93ef4b8997bd41440eed75d6 +8820a6d73180f3fe255199f3f175c5eb770461ad5cfdde2fb11508041ed19b8c4ce66ad6ecebf7d7e836cc2318df47ca +aef1393e7d97278e77bbf52ef6e1c1d5db721ccf75fe753cf47a881fa034ca61eaa5098ee5a344c156d2b14ff9e284ad +8a4a26c07218948c1196c45d927ef4d2c42ade5e29fe7a91eaebe34a29900072ce5194cf28d51f746f4c4c649daf4396 +84011dc150b7177abdcb715efbd8c201f9cb39c36e6069af5c50a096021768ba40cef45b659c70915af209f904ede3b6 +b1bd90675411389bb66910b21a4bbb50edce5330850c5ab0b682393950124252766fc81f5ecfc72fb7184387238c402e +8dfdcd30583b696d2c7744655f79809f451a60c9ad5bf1226dc078b19f4585d7b3ef7fa9d54e1ac09520d95cbfd20928 +b351b4dc6d98f75b8e5a48eb7c6f6e4b78451991c9ba630e5a1b9874c15ac450cd409c1a024713bf2cf82dc400e025ef +a462b8bc97ac668b97b28b3ae24b9f5de60e098d7b23ecb600d2194cd35827fb79f77c3e50d358f5bd72ee83fef18fa0 +a183753265c5f7890270821880cce5f9b2965b115ba783c6dba9769536f57a04465d7da5049c7cf8b3fcf48146173c18 +a8a771b81ed0d09e0da4d79f990e58eabcd2be3a2680419502dd592783fe52f657fe55125b385c41d0ba3b9b9cf54a83 +a71ec577db46011689d073245e3b1c3222a9b1fe6aa5b83629adec5733dd48617ebea91346f0dd0e6cdaa86e4931b168 +a334b8b244f0d598a02da6ae0f918a7857a54dce928376c4c85df15f3b0f2ba3ac321296b8b7c9dd47d770daf16c8f8c +a29037f8ef925c417c90c4df4f9fb27fb977d04e2b3dd5e8547d33e92ab72e7a00f5461de21e28835319eae5db145eb7 +b91054108ae78b00e3298d667b913ebc44d8f26e531eae78a8fe26fdfb60271c97efb2dee5f47ef5a3c15c8228138927 +926c13efbe90604f6244be9315a34f72a1f8d1aab7572df431998949c378cddbf2fe393502c930fff614ff06ae98a0ce +995c758fd5600e6537089b1baa4fbe0376ab274ff3e82a17768b40df6f91c2e443411de9cafa1e65ea88fb8b87d504f4 +9245ba307a7a90847da75fca8d77ec03fdfc812c871e7a2529c56a0a79a6de16084258e7a9ac4ae8a3756f394336e21c +99e0cfa2bb57a7e624231317044c15e52196ecce020db567c8e8cb960354a0be9862ee0c128c60b44777e65ac315e59f +ad4f6b3d27bbbb744126601053c3dc98c07ff0eb0b38a898bd80dce778372846d67e5ab8fb34fb3ad0ef3f235d77ba7f +a0f12cae3722bbbca2e539eb9cc7614632a2aefe51410430070a12b5bc5314ecec5857b7ff8f41e9980cac23064f7c56 +b487f1bc59485848c98222fd3bc36c8c9bb3d2912e2911f4ceca32c840a7921477f9b1fe00877e05c96c75d3eecae061 +a6033db53925654e18ecb3ce715715c36165d7035db9397087ac3a0585e587998a53973d011ac6d48af439493029cee6 +a6b4d09cd01c70a3311fd131d3710ccf97bde3e7b80efd5a8c0eaeffeb48cca0f951ced905290267b115b06d46f2693b +a9dff1df0a8f4f218a98b6f818a693fb0d611fed0fc3143537cbd6578d479af13a653a8155e535548a2a0628ae24fa58 +a58e469f65d366b519f9a394cacb7edaddac214463b7b6d62c2dbc1316e11c6c5184ce45c16de2d77f990dcdd8b55430 +989e71734f8119103586dc9a3c5f5033ddc815a21018b34c1f876cdfc112efa868d5751bf6419323e4e59fa6a03ece1c +a2da00e05036c884369e04cf55f3de7d659cd5fa3f849092b2519dd263694efe0f051953d9d94b7e121f0aee8b6174d7 +968f3c029f57ee31c4e1adea89a7f92e28483af9a74f30fbdb995dc2d40e8e657dff8f8d340d4a92bf65f54440f2859f +932778df6f60ac1639c1453ef0cbd2bf67592759dcccb3e96dcc743ff01679e4c7dd0ef2b0833dda548d32cb4eba49e2 +a805a31139f8e0d6dae1ac87d454b23a3dc9fc653d4ca18d4f8ebab30fc189c16e73981c2cb7dd6f8c30454a5208109d +a9ba0991296caa2aaa4a1ceacfb205544c2a2ec97088eace1d84ee5e2767656a172f75d2f0c4e16a3640a0e0dec316e0 +b1e49055c968dced47ec95ae934cf45023836d180702e20e2df57e0f62fb85d7ac60d657ba3ae13b8560b67210449459 +a94e1da570a38809c71e37571066acabff7bf5632737c9ab6e4a32856924bf6211139ab3cedbf083850ff2d0e0c0fcfc +88ef1bb322000c5a5515b310c838c9af4c1cdbb32eab1c83ac3b2283191cd40e9573747d663763a28dad0d64adc13840 +a987ce205f923100df0fbd5a85f22c9b99b9b9cbe6ddfa8dfda1b8fe95b4f71ff01d6c5b64ca02eb24edb2b255a14ef0 +84fe8221a9e95d9178359918a108de4763ebfa7a6487facb9c963406882a08a9a93f492f8e77cf9e7ea41ae079c45993 +aa1cf3dc7c5dcfa15bbbc811a4bb6dbac4fba4f97fb1ed344ab60264d7051f6eef19ea9773441d89929ee942ed089319 +8f6a7d610d59d9f54689bbe6a41f92d9f6096cde919c1ab94c3c7fcecf0851423bc191e5612349e10f855121c0570f56 +b5af1fa7894428a53ea520f260f3dc3726da245026b6d5d240625380bfb9c7c186df0204bb604efac5e613a70af5106e +a5bce6055ff812e72ce105f147147c7d48d7a2313884dd1f488b1240ee320f13e8a33f5441953a8e7a3209f65b673ce1 +b9b55b4a1422677d95821e1d042ab81bbf0bf087496504021ec2e17e238c2ca6b44fb3b635a5c9eac0871a724b8d47c3 +941c38e533ce4a673a3830845b56786585e5fe49c427f2e5c279fc6db08530c8f91db3e6c7822ec6bb4f956940052d18 +a38e191d66c625f975313c7007bbe7431b5a06ed2da1290a7d5d0f2ec73770d476efd07b8e632de64597d47df175cbb0 +94ba76b667abf055621db4c4145d18743a368d951565632ed4e743dd50dd3333507c0c34f286a5c5fdbf38191a2255cd +a5ca38c60be5602f2bfa6e00c687ac96ac36d517145018ddbee6f12eb0faa63dd57909b9eeed26085fe5ac44e55d10ab +b00fea3b825e60c1ed1c5deb4b551aa65a340e5af36b17d5262c9cd2c508711e4dc50dc2521a2c16c7c901902266e64a +971b86fc4033485e235ccb0997a236206ba25c6859075edbcdf3c943116a5030b7f75ebca9753d863a522ba21a215a90 +b3b31f52370de246ee215400975b674f6da39b2f32514fe6bd54e747752eedca22bb840493b44a67df42a3639c5f901f +affbbfac9c1ba7cbfa1839d2ae271dd6149869b75790bf103230637da41857fc326ef3552ff31c15bda0694080198143 +a95d42aa7ef1962520845aa3688f2752d291926f7b0d73ea2ee24f0612c03b43f2b0fe3c9a9a99620ffc8d487b981bc2 +914a266065caf64985e8c5b1cb2e3f4e3fe94d7d085a1881b1fefa435afef4e1b39a98551d096a62e4f5cc1a7f0fdc2e +81a0b4a96e2b75bc1bf2dbd165d58d55cfd259000a35504d1ffb18bc346a3e6f07602c683723864ffb980f840836fd8d +91c1556631cddd4c00b65b67962b39e4a33429029d311c8acf73a18600e362304fb68bccb56fde40f49e95b7829e0b87 +8befbacc19e57f7c885d1b7a6028359eb3d80792fe13b92a8400df21ce48deb0bb60f2ddb50e3d74f39f85d7eab23adc +92f9458d674df6e990789690ec9ca73dacb67fc9255b58c417c555a8cc1208ace56e8e538f86ba0f3615573a0fbac00d +b4b1b3062512d6ae7417850c08c13f707d5838e43d48eb98dd4621baf62eee9e82348f80fe9b888a12874bfa538771f8 +a13c4a3ac642ede37d9c883f5319e748d2b938f708c9d779714108a449b343f7b71a6e3ef4080fee125b416762920273 +af44983d5fc8cceee0551ef934e6e653f2d3efa385e5c8a27a272463a6f333e290378cc307c2b664eb923c78994e706e +a389fd6c59fe2b4031cc244e22d3991e541bd203dd5b5e73a6159e72df1ab41d49994961500dcde7989e945213184778 +8d2141e4a17836c548de9598d7b298b03f0e6c73b7364979a411c464e0628e21cff6ac3d6decdba5d1c4909eff479761 +980b22ef53b7bdf188a3f14bc51b0dbfdf9c758826daa3cbc1e3986022406a8aa9a6a79e400567120b88c67faa35ce5f +a28882f0a055f96df3711de5d0aa69473e71245f4f3e9aa944e9d1fb166e02caa50832e46da6d3a03b4801735fd01b29 +8db106a37d7b88f5d995c126abb563934dd8de516af48e85695d02b1aea07f79217e3cdd03c6f5ca57421830186c772b +b5a7e50da0559a675c472f7dfaee456caab6695ab7870541b2be8c2b118c63752427184aad81f0e1afc61aef1f28c46f +9962118780e20fe291d10b64f28d09442a8e1b5cffd0f3dd68d980d0614050a626c616b44e9807fbee7accecae00686a +b38ddf33745e8d2ad6a991aefaf656a33c5f8cbe5d5b6b6fd03bd962153d8fd0e01b5f8f96d80ae53ab28d593ab1d4e7 +857dc12c0544ff2c0c703761d901aba636415dee45618aba2e3454ff9cbc634a85c8b05565e88520ff9be2d097c8b2b1 +a80d465c3f8cc63af6d74a6a5086b626c1cb4a8c0fee425964c3bd203d9d7094e299f81ce96d58afc20c8c9a029d9dae +89e1c8fbde8563763be483123a3ed702efac189c6d8ab4d16c85e74bbaf856048cc42d5d6e138633a38572ba5ec3f594 +893a594cf495535f6d216508f8d03c317dcf03446668cba688da90f52d0111ac83d76ad09bf5ea47056846585ee5c791 +aadbd8be0ae452f7f9450c7d2957598a20cbf10139a4023a78b4438172d62b18b0de39754dd2f8862dbd50a3a0815e53 +ae7d39670ecca3eb6db2095da2517a581b0e8853bdfef619b1fad9aacd443e7e6a40f18209fadd44038a55085c5fe8b2 +866ef241520eacb6331593cfcb206f7409d2f33d04542e6e52cba5447934e02d44c471f6c9a45963f9307e9809ab91d9 +b1a09911ad3864678f7be79a9c3c3eb5c84a0a45f8dcb52c67148f43439aeaaa9fd3ed3471276b7e588b49d6ebe3033a +add07b7f0dbb34049cd8feeb3c18da5944bf706871cfd9f14ff72f6c59ad217ebb1f0258b13b167851929387e4e34cfe +ae048892d5c328eefbdd4fba67d95901e3c14d974bfc0a1fc68155ca9f0d59e61d7ba17c6c9948b120cf35fd26e6fee9 +9185b4f3b7da0ddb4e0d0f09b8a9e0d6943a4611e43f13c3e2a767ed8592d31e0ba3ebe1914026a3627680274291f6e5 +a9c022d4e37b0802284ce3b7ee9258628ab4044f0db4de53d1c3efba9de19d15d65cc5e608dbe149c21c2af47d0b07b5 +b24dbd5852f8f24921a4e27013b6c3fa8885b973266cb839b9c388efad95821d5d746348179dcc07542bd0d0aefad1ce +b5fb4f279300876a539a27a441348764908bc0051ebd66dc51739807305e73db3d2f6f0f294ffb91b508ab150eaf8527 +ace50841e718265b290c3483ed4b0fdd1175338c5f1f7530ae9a0e75d5f80216f4de37536adcbc8d8c95982e88808cd0 +b19cadcde0f63bd1a9c24bd9c2806f53c14c0b9735bf351601498408ba503ddbd2037c891041cbba47f58b8c483f3b21 +b6061e63558d312eb891b97b39aa552fa218568d79ee26fe6dd5b864aea9e3216d8f2e2f3b093503be274766dac41426 +89730fdb2876ab6f0fe780d695f6e12090259027e789b819956d786e977518057e5d1d7f5ab24a3ae3d5d4c97773bd2b +b6fa841e81f9f2cad0163a02a63ae96dc341f7ae803b616efc6e1da2fbea551c1b96b11ad02c4afbdf6d0cc9f23da172 +8fb66187182629c861ddb6896d7ed3caf2ad050c3dba8ab8eb0d7a2c924c3d44c48d1a148f9e33fb1f061b86972f8d21 +86022ac339c1f84a7fa9e05358c1a5b316b4fc0b83dbe9c8c7225dc514f709d66490b539359b084ce776e301024345fa +b50b9c321468da950f01480bb62b6edafd42f83c0001d6e97f2bd523a1c49a0e8574fb66380ea28d23a7c4d54784f9f0 +a31c05f7032f30d1dac06678be64d0250a071fd655e557400e4a7f4c152be4d5c7aa32529baf3e5be7c4bd49820054f6 +b95ac0848cd322684772119f5b682d90a66bbf9dac411d9d86d2c34844bbd944dbaf8e47aa41380455abd51687931a78 +ae4a6a5ce9553b65a05f7935e61e496a4a0f6fd8203367a2c627394c9ce1e280750297b74cdc48fd1d9a31e93f97bef4 +a22daf35f6e9b05e52e0b07f7bd1dbbebd2c263033fb0e1b2c804e2d964e2f11bc0ece6aca6af079dd3a9939c9c80674 +902150e0cb1f16b9b59690db35281e28998ce275acb313900da8b2d8dfd29fa1795f8ca3ff820c31d0697de29df347c1 +b17b5104a5dc665cdd7d47e476153d715eb78c6e5199303e4b5445c21a7fa7cf85fe7cfd08d7570f4e84e579b005428c +a03f49b81c15433f121680aa02d734bb9e363af2156654a62bcb5b2ba2218398ccb0ff61104ea5d7df5b16ea18623b1e +802101abd5d3c88876e75a27ffc2f9ddcce75e6b24f23dba03e5201281a7bd5cc7530b6a003be92d225093ca17d3c3bb +a4d183f63c1b4521a6b52226fc19106158fc8ea402461a5cccdaa35fee93669df6a8661f45c1750cd01308149b7bf08e +8d17c22e0c8403b69736364d460b3014775c591032604413d20a5096a94d4030d7c50b9fe3240e31d0311efcf9816a47 +947225acfcce5992eab96276f668c3cbe5f298b90a59f2bb213be9997d8850919e8f496f182689b5cbd54084a7332482 +8df6f4ed216fc8d1905e06163ba1c90d336ab991a18564b0169623eb39b84e627fa267397da15d3ed754d1f3423bff07 +83480007a88f1a36dea464c32b849a3a999316044f12281e2e1c25f07d495f9b1710b4ba0d88e9560e72433addd50bc2 +b3019d6e591cf5b33eb972e49e06c6d0a82a73a75d78d383dd6f6a4269838289e6e07c245f54fed67f5c9bb0fd5e1c5f +92e8ce05e94927a9fb02debadb99cf30a26172b2705003a2c0c47b3d8002bf1060edb0f6a5750aad827c98a656b19199 +ac2aff801448dbbfc13cca7d603fd9c69e82100d997faf11f465323b97255504f10c0c77401e4d1890339d8b224f5803 +b0453d9903d08f508ee27e577445dc098baed6cde0ac984b42e0f0efed62760bd58d5816cf1e109d204607b7b175e30c +ae68dc4ba5067e825d46d2c7c67f1009ceb49d68e8d3e4c57f4bcd299eb2de3575d42ea45e8722f8f28497a6e14a1cfe +b22486c2f5b51d72335ce819bbafb7fa25eb1c28a378a658f13f9fc79cd20083a7e573248d911231b45a5cf23b561ca7 +89d1201d1dbd6921867341471488b4d2fd0fc773ae1d4d074c78ae2eb779a59b64c00452c2a0255826fca6b3d03be2b1 +a2998977c91c7a53dc6104f5bc0a5b675e5350f835e2f0af69825db8af4aeb68435bdbcc795f3dd1f55e1dd50bc0507f +b0be4937a925b3c05056ed621910d535ccabf5ab99fd3b9335080b0e51d9607d0fd36cb5781ff340018f6acfca4a9736 +aea145a0f6e0ba9df8e52e84bb9c9de2c2dc822f70d2724029b153eb68ee9c17de7d35063dcd6a39c37c59fdd12138f7 +91cb4545d7165ee8ffbc74c874baceca11fdebbc7387908d1a25877ca3c57f2c5def424dab24148826832f1e880bede0 +b3b579cb77573f19c571ad5eeeb21f65548d7dff9d298b8d7418c11f3e8cd3727c5b467f013cb87d6861cfaceee0d2e3 +b98a1eeec2b19fecc8378c876d73645aa52fb99e4819903735b2c7a885b242787a30d1269a04bfb8573d72d9bbc5f0f0 +940c1f01ed362bd588b950c27f8cc1d52276c71bb153d47f07ec85b038c11d9a8424b7904f424423e714454d5e80d1cd +aa343a8ecf09ce11599b8cf22f7279cf80f06dbf9f6d62cb05308dbbb39c46fd0a4a1240b032665fbb488a767379b91b +87c3ac72084aca5974599d3232e11d416348719e08443acaba2b328923af945031f86432e170dcdd103774ec92e988c9 +91d6486eb5e61d2b9a9e742c20ec974a47627c6096b3da56209c2b4e4757f007e793ebb63b2b246857c9839b64dc0233 +aebcd3257d295747dd6fc4ff910d839dd80c51c173ae59b8b2ec937747c2072fa85e3017f9060aa509af88dfc7529481 +b3075ba6668ca04eff19efbfa3356b92f0ab12632dcda99cf8c655f35b7928c304218e0f9799d68ef9f809a1492ff7db +93ba7468bb325639ec2abd4d55179c69fd04eaaf39fc5340709227bbaa4ad0a54ea8b480a1a3c8d44684e3be0f8d1980 +a6aef86c8c0d92839f38544d91b767c582568b391071228ff5a5a6b859c87bf4f81a7d926094a4ada1993ddbd677a920 +91dcd6d14207aa569194aa224d1e5037b999b69ade52843315ca61ba26abe9a76412c9e88259bc5cf5d7b95b97d9c3bc +b3b483d31c88f78d49bd065893bc1e3d2aa637e27dedb46d9a7d60be7660ce7a10aaaa7deead362284a52e6d14021178 +8e5730070acf8371461ef301cc4523e8e672aa0e3d945d438a0e0aa6bdf8cb9c685dcf38df429037b0c8aff3955c6f5b +b8c6d769890a8ee18dc4f9e917993315877c97549549b34785a92543cbeec96a08ae3a28d6e809c4aacd69de356c0012 +95ca86cd384eaceaa7c077c5615736ca31f36824bd6451a16142a1edc129fa42b50724aeed7c738f08d7b157f78b569e +94df609c6d71e8eee7ab74226e371ccc77e01738fe0ef1a6424435b4570fe1e5d15797b66ed0f64eb88d4a3a37631f0e +89057b9783212add6a0690d6bb99097b182738deff2bd9e147d7fd7d6c8eacb4c219923633e6309ad993c24572289901 +83a0f9f5f265c5a0e54defa87128240235e24498f20965009fef664f505a360b6fb4020f2742565dfc7746eb185bcec0 +91170da5306128931349bc3ed50d7df0e48a68b8cc8420975170723ac79d8773e4fa13c5f14dc6e3fafcad78379050b1 +b7178484d1b55f7e56a4cc250b6b2ec6040437d96bdfddfa7b35ed27435860f3855c2eb86c636f2911b012eb83b00db8 +ac0b00c4322d1e4208e09cd977b4e54d221133ff09551f75b32b0b55d0e2be80941dda26257b0e288c162e63c7e9cf68 +9690ed9e7e53ed37ff362930e4096b878b12234c332fd19d5d064824084245952eda9f979e0098110d6963e468cf513e +b6fa547bb0bb83e5c5be0ed462a8783fba119041c136a250045c09d0d2af330c604331e7de960df976ff76d67f8000cd +814603907c21463bcf4e59cfb43066dfe1a50344ae04ef03c87c0f61b30836c3f4dea0851d6fa358c620045b7f9214c8 +9495639e3939fad2a3df00a88603a5a180f3c3a0fe4d424c35060e2043e0921788003689887b1ed5be424d9a89bb18bb +aba4c02d8d57f2c92d5bc765885849e9ff8393d6554f5e5f3e907e5bfac041193a0d8716d7861104a4295d5a03c36b03 +8ead0b56c1ca49723f94a998ba113b9058059321da72d9e395a667e6a63d5a9dac0f5717cec343f021695e8ced1f72af +b43037f7e3852c34ed918c5854cd74e9d5799eeddfe457d4f93bb494801a064735e326a76e1f5e50a339844a2f4a8ec9 +99db8422bb7302199eb0ff3c3d08821f8c32f53a600c5b6fb43e41205d96adae72be5b460773d1280ad1acb806af9be8 +8a9be08eae0086c0f020838925984df345c5512ff32e37120b644512b1d9d4fecf0fd30639ca90fc6cf334a86770d536 +81b43614f1c28aa3713a309a88a782fb2bdfc4261dd52ddc204687791a40cf5fd6a263a8179388596582cccf0162efc2 +a9f3a8b76912deb61d966c75daf5ddb868702ebec91bd4033471c8e533183df548742a81a2671de5be63a502d827437d +902e2415077f063e638207dc7e14109652e42ab47caccd6204e2870115791c9defac5425fd360b37ac0f7bd8fe7011f8 +aa18e4fdc1381b59c18503ae6f6f2d6943445bd00dd7d4a2ad7e5adad7027f2263832690be30d456e6d772ad76f22350 +a348b40ba3ba7d81c5d4631f038186ebd5e5f314f1ea737259151b07c3cc8cf0c6ed4201e71bcc1c22fefda81a20cde6 +aa1306f7ac1acbfc47dc6f7a0cb6d03786cec8c8dc8060388ccda777bca24bdc634d03e53512c23dba79709ff64f8620 +818ccfe46e700567b7f3eb400e5a35f6a5e39b3db3aa8bc07f58ace35d9ae5a242faf8dbccd08d9a9175bbce15612155 +b7e3da2282b65dc8333592bb345a473f03bd6df69170055fec60222de9897184536bf22b9388b08160321144d0940279 +a4d976be0f0568f4e57de1460a1729129252b44c552a69fceec44e5b97c96c711763360d11f9e5bf6d86b4976bf40d69 +85d185f0397c24c2b875b09b6328a23b87982b84ee880f2677a22ff4c9a1ba9f0fea000bb3f7f66375a00d98ebafce17 +b4ccbb8c3a2606bd9b87ce022704663af71d418351575f3b350d294f4efc68c26f9a2ce49ff81e6ff29c3b63d746294e +93ffd3265fddb63724dfde261d1f9e22f15ecf39df28e4d89e9fea03221e8e88b5dd9b77628bacaa783c6f91802d47cc +b1fd0f8d7a01378e693da98d03a2d2fda6b099d03454b6f2b1fa6472ff6bb092751ce6290059826b74ac0361eab00e1e +a89f440c71c561641589796994dd2769616b9088766e983c873fae0716b95c386c8483ab8a4f367b6a68b72b7456dd32 +af4fe92b01d42d03dd5d1e7fa55e96d4bbcb7bf7d4c8c197acd16b3e0f3455807199f683dcd263d74547ef9c244b35cc +a8227f6e0a344dfe76bfbe7a1861be32c4f4bed587ccce09f9ce2cf481b2dda8ae4f566154bc663d15f962f2d41761bd +a7b361663f7495939ed7f518ba45ea9ff576c4e628995b7aea026480c17a71d63fc2c922319f0502eb7ef8f14a406882 +8ddcf382a9f39f75777160967c07012cfa89e67b19714a7191f0c68eaf263935e5504e1104aaabd0899348c972a8d3c6 +98c95b9f6f5c91f805fb185eedd06c6fc4457d37dd248d0be45a6a168a70031715165ea20606245cbdf8815dc0ac697f +805b44f96e001e5909834f70c09be3efcd3b43632bcac5b6b66b6d227a03a758e4b1768ce2a723045681a1d34562aaeb +b0e81b07cdc45b3dca60882676d9badb99f25c461b7efe56e3043b80100bb62d29e1873ae25eb83087273160ece72a55 +b0c53f0abe78ee86c7b78c82ae1f7c070bb0b9c45c563a8b3baa2c515d482d7507bb80771e60b38ac13f78b8af92b4a9 +a7838ef6696a9e4d2e5dfd581f6c8d6a700467e8fd4e85adabb5f7a56f514785dd4ab64f6f1b48366f7d94728359441b +88c76f7700a1d23c30366a1d8612a796da57b2500f97f88fdf2d76b045a9d24e7426a8ffa2f4e86d3046937a841dad58 +ad8964baf98c1f02e088d1d9fcb3af6b1dfa44cdfe0ed2eae684e7187c33d3a3c28c38e8f4e015f9c04d451ed6f85ff6 +90e9d00a098317ececaa9574da91fc149eda5b772dedb3e5a39636da6603aa007804fa86358550cfeff9be5a2cb7845e +a56ff4ddd73d9a6f5ab23bb77efa25977917df63571b269f6a999e1ad6681a88387fcc4ca3b26d57badf91b236503a29 +97ad839a6302c410a47e245df84c01fb9c4dfef86751af3f9340e86ff8fc3cd52fa5ff0b9a0bd1d9f453e02ca80658a6 +a4c8c44cbffa804129e123474854645107d1f0f463c45c30fd168848ebea94880f7c0c5a45183e9eb837f346270bdb35 +a72e53d0a1586d736e86427a93569f52edd2f42b01e78aee7e1961c2b63522423877ae3ac1227a2cf1e69f8e1ff15bc3 +8559f88a7ef13b4f09ac82ae458bbae6ab25671cfbf52dae7eac7280d6565dd3f0c3286aec1a56a8a16dc3b61d78ce47 +8221503f4cdbed550876c5dc118a3f2f17800c04e8be000266633c83777b039a432d576f3a36c8a01e8fd18289ebc10b +99bfbe5f3e46d4d898a578ba86ed26de7ed23914bd3bcdf3c791c0bcd49398a52419077354a5ab75cea63b6c871c6e96 +aa134416d8ff46f2acd866c1074af67566cfcf4e8be8d97329dfa0f603e1ff208488831ce5948ac8d75bfcba058ddcaa +b02609d65ebfe1fe8e52f21224a022ea4b5ea8c1bd6e7b9792eed8975fc387cdf9e3b419b8dd5bcce80703ab3a12a45f +a4f14798508698fa3852e5cac42a9db9797ecee7672a54988aa74037d334819aa7b2ac7b14efea6b81c509134a6b7ad2 +884f01afecbcb987cb3e7c489c43155c416ed41340f61ecb651d8cba884fb9274f6d9e7e4a46dd220253ae561614e44c +a05523c9e71dce1fe5307cc71bd721feb3e1a0f57a7d17c7d1c9fb080d44527b7dbaa1f817b1af1c0b4322e37bc4bb1e +8560aec176a4242b39f39433dd5a02d554248c9e49d3179530815f5031fee78ba9c71a35ceeb2b9d1f04c3617c13d8f0 +996aefd402748d8472477cae76d5a2b92e3f092fc834d5222ae50194dd884c9fb8b6ed8e5ccf8f6ed483ddbb4e80c747 +8fd09900320000cbabc40e16893e2fcf08815d288ec19345ad7b6bb22f7d78a52b6575a3ca1ca2f8bc252d2eafc928ec +939e51f73022bc5dc6862a0adf8fb8a3246b7bfb9943cbb4b27c73743926cc20f615a036c7e5b90c80840e7f1bfee0e7 +a0a6258700cadbb9e241f50766573bf9bdb7ad380b1079dc3afb4054363d838e177b869cad000314186936e40359b1f2 +972699a4131c8ed27a2d0e2104d54a65a7ff1c450ad9da3a325c662ab26869c21b0a84d0700b98c8b5f6ce3b746873d7 +a454c7fe870cb8aa6491eafbfb5f7872d6e696033f92e4991d057b59d70671f2acdabef533e229878b60c7fff8f748b1 +a167969477214201f09c79027b10221e4707662e0c0fde81a0f628249f2f8a859ce3d30a7dcc03b8ecca8f7828ad85c7 +8ff6b7265175beb8a63e1dbf18c9153fb2578c207c781282374f51b40d57a84fd2ef2ea2b9c6df4a54646788a62fd17f +a3d7ebeccde69d73d8b3e76af0da1a30884bb59729503ff0fb0c3bccf9221651b974a6e72ea33b7956fc3ae758226495 +b71ef144c9a98ce5935620cb86c1590bd4f48e5a2815d25c0cdb008fde628cf628c31450d3d4f67abbfeb16178a74cfd +b5e0a16d115134f4e2503990e3f2035ed66b9ccf767063fe6747870d97d73b10bc76ed668550cb82eedc9a2ca6f75524 +b30ffaaf94ee8cbc42aa2c413175b68afdb207dbf351fb20be3852cb7961b635c22838da97eaf43b103aff37e9e725cc +98aa7d52284f6c1f22e272fbddd8c8698cf8f5fbb702d5de96452141fafb559622815981e50b87a72c2b1190f59a7deb +81fbacda3905cfaf7780bb4850730c44166ed26a7c8d07197a5d4dcd969c09e94a0461638431476c16397dd7bdc449f9 +95e47021c1726eac2e5853f570d6225332c6e48e04c9738690d53e07c6b979283ebae31e2af1fc9c9b3e59f87e5195b1 +ac024a661ba568426bb8fce21780406537f518075c066276197300841e811860696f7588188bc01d90bace7bc73d56e3 +a4ebcaf668a888dd404988ab978594dee193dad2d0aec5cdc0ccaf4ec9a7a8228aa663db1da8ddc52ec8472178e40c32 +a20421b8eaf2199d93b083f2aff37fb662670bd18689d046ae976d1db1fedd2c2ff897985ecc6277b396db7da68bcb27 +8bc33d4b40197fd4d49d1de47489d10b90d9b346828f53a82256f3e9212b0cbc6930b895e879da9cec9fedf026aadb3e +aaafdd1bec8b757f55a0433eddc0a39f818591954fd4e982003437fcceb317423ad7ee74dbf17a2960380e7067a6b4e2 +aad34277ebaed81a6ec154d16736866f95832803af28aa5625bf0461a71d02b1faba02d9d9e002be51c8356425a56867 +976e9c8b150d08706079945bd0e84ab09a648ecc6f64ded9eb5329e57213149ae409ae93e8fbd8eda5b5c69f5212b883 +8097fae1653247d2aed4111533bc378171d6b2c6d09cbc7baa9b52f188d150d645941f46d19f7f5e27b7f073c1ebd079 +83905f93b250d3184eaba8ea7d727c4464b6bdb027e5cbe4f597d8b9dc741dcbea709630bd4fd59ce24023bec32fc0f3 +8095030b7045cff28f34271386e4752f9a9a0312f8df75de4f424366d78534be2b8e1720a19cb1f9a2d21105d790a225 +a7b7b73a6ae2ed1009c49960374b0790f93c74ee03b917642f33420498c188a169724945a975e5adec0a1e83e07fb1b2 +856a41c54df393b6660b7f6354572a4e71c8bfca9cabaffb3d4ef2632c015e7ee2bc10056f3eccb3dbed1ad17d939178 +a8f7a55cf04b38cd4e330394ee6589da3a07dc9673f74804fdf67b364e0b233f14aec42e783200a2e4666f7c5ff62490 +82c529f4e543c6bca60016dc93232c115b359eaee2798a9cf669a654b800aafe6ab4ba58ea8b9cdda2b371c8d62fa845 +8caab020c1baddce77a6794113ef1dfeafc5f5000f48e97f4351b588bf02f1f208101745463c480d37f588d5887e6d8c +8fa91b3cc400f48b77b6fd77f3b3fbfb3f10cdff408e1fd22d38f77e087b7683adad258804409ba099f1235b4b4d6fea +8aa02787663d6be9a35677d9d8188b725d5fcd770e61b11b64e3def8808ea5c71c0a9afd7f6630c48634546088fcd8e2 +b5635b7b972e195cab878b97dea62237c7f77eb57298538582a330b1082f6207a359f2923864630136d8b1f27c41b9aa +8257bb14583551a65975946980c714ecd6e5b629672bb950b9caacd886fbd22704bc9e3ba7d30778adab65dc74f0203a +ab5fe1cd12634bfa4e5c60d946e2005cbd38f1063ec9a5668994a2463c02449a0a185ef331bd86b68b6e23a8780cb3ba +a7d3487da56cda93570cc70215d438204f6a2709bfb5fda6c5df1e77e2efc80f4235c787e57fbf2c74aaff8cbb510a14 +b61cff7b4c49d010e133319fb828eb900f8a7e55114fc86b39c261a339c74f630e1a7d7e1350244ada566a0ff3d46c4b +8d4d1d55d321d278db7a85522ccceca09510374ca81d4d73e3bb5249ace7674b73900c35a531ec4fa6448fabf7ad00dc +966492248aee24f0f56c8cfca3c8ec6ba3b19abb69ae642041d4c3be8523d22c65c4dafcab4c58989ccc4e0bd2f77919 +b20c320a90cb220b86e1af651cdc1e21315cd215da69f6787e28157172f93fc8285dcd59b039c626ed8ca4633cba1a47 +aae9e6b22f018ceb5c0950210bb8182cb8cb61014b7e14581a09d36ebd1bbfebdb2b82afb7fdb0cf75e58a293d9c456d +875547fb67951ad37b02466b79f0c9b985ccbc500cfb431b17823457dc79fb9597ec42cd9f198e15523fcd88652e63a4 +92afce49773cb2e20fb21e4f86f18e0959ebb9c33361547ddb30454ee8e36b1e234019cbdca0e964cb292f7f77df6b90 +8af85343dfe1821464c76ba11c216cbef697b5afc69c4d821342e55afdac047081ec2e3f7b09fc14b518d9a23b78c003 +b7de4a1648fd63f3a918096ea669502af5357438e69dac77cb8102b6e6c15c76e033cfaa80dafc806e535ede5c1a20aa +ac80e9b545e8bd762951d96c9ce87f629d01ffcde07efc2ef7879ca011f1d0d8a745abf26c9d452541008871304fac00 +a4cf0f7ed724e481368016c38ea5816698a5f68eb21af4d3c422d2ba55f96a33e427c2aa40de1b56a7cfac7f7cf43ab0 +899b0a678bb2db2cae1b44e75a661284844ebcdd87abf308fedeb2e4dbe5c5920c07db4db7284a7af806a2382e8b111a +af0588a2a4afce2b1b13c1230816f59e8264177e774e4a341b289a101dcf6af813638fed14fb4d09cb45f35d5d032609 +a4b8df79e2be76e9f5fc5845f06fe745a724cf37c82fcdb72719b77bdebea3c0e763f37909373e3a94480cc5e875cba0 +83e42c46d88930c8f386b19fd999288f142d325e2ebc86a74907d6d77112cb0d449bc511c95422cc810574031a8cbba9 +b5e39534070de1e5f6e27efbdd3dc917d966c2a9b8cf2d893f964256e95e954330f2442027dc148c776d63a95bcde955 +958607569dc28c075e658cd4ae3927055c6bc456eef6212a6fea8205e48ed8777a8064f584cda38fe5639c371e2e7fba +812adf409fa63575113662966f5078a903212ffb65c9b0bbe62da0f13a133443a7062cb8fd70f5e5dd5559a32c26d2c8 +a679f673e5ce6a3cce7fa31f22ee3785e96bcb55e5a776e2dd3467bef7440e3555d1a9b87cb215e86ee9ed13a090344b +afedbb34508b159eb25eb2248d7fe328f86ef8c7d84c62d5b5607d74aae27cc2cc45ee148eb22153b09898a835c58df4 +b75505d4f6b67d31e665cfaf5e4acdb5838ae069166b7fbcd48937c0608a59e40a25302fcc1873d2e81c1782808c70f0 +b62515d539ec21a155d94fc00ea3c6b7e5f6636937bce18ed5b618c12257fb82571886287fd5d1da495296c663ebc512 +ab8e1a9446bbdd588d1690243b1549d230e6149c28f59662b66a8391a138d37ab594df38e7720fae53217e5c3573b5be +b31e8abf4212e03c3287bb2c0a153065a7290a16764a0bac8f112a72e632185a654bb4e88fdd6053e6c7515d9719fadb +b55165477fe15b6abd2d0f4fddaa9c411710dcc4dd712daba3d30e303c9a3ee5415c256f9dc917ecf18c725b4dbab059 +a0939d4f57cacaae549b78e87cc234de4ff6a35dc0d9cd5d7410abc30ebcd34c135e008651c756e5a9d2ca79c40ef42b +8cf10e50769f3443340844aad4d56ec790850fed5a41fcbd739abac4c3015f0a085a038fbe7fae9f5ad899cce5069f6b +924055e804d82a99ea4bb160041ea4dc14b568abf379010bc1922fde5d664718c31d103b8b807e3a1ae809390e708c73 +8ec0f9d26f71b0f2e60a179e4fd1778452e2ffb129d50815e5d7c7cb9415fa69ae5890578086e8ef6bfde35ad2a74661 +98c7f12b15ec4426b59f737f73bf5faea4572340f4550b7590dfb7f7ffedb2372e3e555977c63946d579544c53210ad0 +8a935f7a955c78f69d66f18eee0092e5e833fa621781c9581058e219af4d7ceee48b84e472e159dda6199715fb2f9acf +b78d4219f95a2dbfaa7d0c8a610c57c358754f4f43c2af312ab0fe8f10a5f0177e475332fb8fd23604e474fc2abeb051 +8d086a14803392b7318c28f1039a17e3cfdcece8abcaca3657ec3d0ac330842098a85c0212f889fabb296dfb133ce9aa +a53249f417aac82f2c2a50c244ce21d3e08a5e5a8bd33bec2a5ab0d6cd17793e34a17edfa3690899244ce201e2fb9986 +8619b0264f9182867a1425be514dc4f1ababc1093138a728a28bd7e4ecc99b9faaff68c23792264bc6e4dce5f52a5c52 +8c171edbbbde551ec19e31b2091eb6956107dd9b1f853e1df23bff3c10a3469ac77a58335eee2b79112502e8e163f3de +a9d19ec40f0ca07c238e9337c6d6a319190bdba2db76fb63902f3fb459aeeb50a1ac30db5b25ee1b4201f3ca7164a7f4 +b9c6ec14b1581a03520b8d2c1fbbc31fb8ceaef2c0f1a0d0080b6b96e18442f1734bea7ef7b635d787c691de4765d469 +8cb437beb4cfa013096f40ccc169a713dc17afee6daa229a398e45fd5c0645a9ad2795c3f0cd439531a7151945d7064d +a6e8740cc509126e146775157c2eb278003e5bb6c48465c160ed27888ca803fa12eee1f6a8dd7f444f571664ed87fdc1 +b75c1fecc85b2732e96b3f23aefb491dbd0206a21d682aee0225838dc057d7ed3b576176353e8e90ae55663f79e986e4 +ad8d249b0aea9597b08358bce6c77c1fd552ef3fbc197d6a1cfe44e5e6f89b628b12a6fb04d5dcfcbacc51f46e4ae7bb +b998b2269932cbd58d04b8e898d373ac4bb1a62e8567484f4f83e224061bc0f212459f1daae95abdbc63816ae6486a55 +827988ef6c1101cddc96b98f4a30365ff08eea2471dd949d2c0a9b35c3bbfa8c07054ad1f4c88c8fbf829b20bb5a9a4f +8692e638dd60babf7d9f2f2d2ce58e0ac689e1326d88311416357298c6a2bffbfebf55d5253563e7b3fbbf5072264146 +a685d75b91aea04dbc14ab3c1b1588e6de96dae414c8e37b8388766029631b28dd860688079b12d09cd27f2c5af11adf +b57eced93eec3371c56679c259b34ac0992286be4f4ff9489d81cf9712403509932e47404ddd86f89d7c1c3b6391b28c +a1c8b4e42ebcbd8927669a97f1b72e236fb19249325659e72be7ddaaa1d9e81ca2abb643295d41a8c04a2c01f9c0efd7 +877c33de20d4ed31674a671ba3e8f01a316581e32503136a70c9c15bf0b7cb7b1cba6cd4eb641fad165fb3c3c6c235fd +a2a469d84ec478da40838f775d11ad38f6596eb41caa139cc190d6a10b5108c09febae34ffdafac92271d2e73c143693 +972f817caedb254055d52e963ed28c206848b6c4cfdb69dbc961c891f8458eaf582a6d4403ce1177d87bc2ea410ef60a +accbd739e138007422f28536381decc54bb6bd71d93edf3890e54f9ef339f83d2821697d1a4ac1f5a98175f9a9ecb9b5 +8940f8772e05389f823b62b3adc3ed541f91647f0318d7a0d3f293aeeb421013de0d0a3664ea53dd24e5fbe02d7efef6 +8ecce20f3ef6212edef07ec4d6183fda8e0e8cad2c6ccd0b325e75c425ee1faba00b5c26b4d95204238931598d78f49d +97cc72c36335bd008afbed34a3b0c7225933faba87f7916d0a6d2161e6f82e0cdcda7959573a366f638ca75d30e9dab1 +9105f5de8699b5bdb6bd3bb6cc1992d1eac23929c29837985f83b22efdda92af64d9c574aa9640475087201bbbe5fd73 +8ffb33c4f6d05c413b9647eb6933526a350ed2e4278ca2ecc06b0e8026d8dbe829c476a40e45a6df63a633090a3f82ef +8bfc6421fdc9c2d2aaa68d2a69b1a2728c25b84944cc3e6a57ff0c94bfd210d1cbf4ff3f06702d2a8257024d8be7de63 +a80e1dc1dddfb41a70220939b96dc6935e00b32fb8be5dff4eed1f1c650002ff95e4af481c43292e3827363b7ec4768a +96f714ebd54617198bd636ba7f7a7f8995a61db20962f2165078d9ed8ee764d5946ef3cbdc7ebf8435bb8d5dd4c1deac +8cdb0890e33144d66391d2ae73f5c71f5a861f72bc93bff6cc399fc25dd1f9e17d8772592b44593429718784802ac377 +8ccf9a7f80800ee770b92add734ed45a73ecc31e2af0e04364eefc6056a8223834c7c0dc9dfc52495bdec6e74ce69994 +aa0875f423bd68b5f10ba978ddb79d3b96ec093bfbac9ff366323193e339ed7c4578760fb60f60e93598bdf1e5cc4995 +a9214f523957b59c7a4cb61a40251ad72aba0b57573163b0dc0f33e41d2df483fb9a1b85a5e7c080e9376c866790f8cb +b6224b605028c6673a536cc8ff9aeb94e7a22e686fda82cf16068d326469172f511219b68b2b3affb7933af0c1f80d07 +b6d58968d8a017c6a34e24c2c09852f736515a2c50f37232ac6b43a38f8faa7572cc31dade543b594b61b5761c4781d0 +8a97cefe5120020c38deeb861d394404e6c993c6cbd5989b6c9ebffe24f46ad11b4ba6348e2991cbf3949c28cfc3c99d +95bf046f8c3a9c0ce2634be4de3713024daec3fc4083e808903b25ce3ac971145af90686b451efcc72f6b22df0216667 +a6a4e2f71b8fa28801f553231eff2794c0f10d12e7e414276995e21195abc9c2983a8997e41af41e78d19ff6fbb2680b +8e5e62a7ca9c2f58ebaab63db2ff1fb1ff0877ae94b7f5e2897f273f684ae639dff44cc65718f78a9c894787602ab26a +8542784383eec4f565fcb8b9fc2ad8d7a644267d8d7612a0f476fc8df3aff458897a38003d506d24142ad18f93554f2b +b7db68ba4616ea072b37925ec4fb39096358c2832cc6d35169e032326b2d6614479f765ae98913c267105b84afcb9bf2 +8b31dbb9457d23d416c47542c786e07a489af35c4a87dadb8ee91bea5ac4a5315e65625d78dad2cf8f9561af31b45390 +a8545a1d91ac17257732033d89e6b7111db8242e9c6ebb0213a88906d5ef407a2c6fdb444e29504b06368b6efb4f4839 +b1bd85d29ebb28ccfb05779aad8674906b267c2bf8cdb1f9a0591dd621b53a4ee9f2942687ee3476740c0b4a7621a3ae +a2b54534e152e46c50d91fff03ae9cd019ff7cd9f4168b2fe7ac08ef8c3bbc134cadd3f9d6bd33d20ae476c2a8596c8a +b19b571ff4ae3e9f5d95acda133c455e72c9ea9973cae360732859836c0341c4c29ab039224dc5bc3deb824e031675d8 +940b5f80478648bac025a30f3efeb47023ce20ee98be833948a248bca6979f206bb28fc0f17b90acf3bb4abd3d14d731 +8f106b40588586ac11629b96d57808ad2808915d89539409c97414aded90b4ff23286a692608230a52bff696055ba5d6 +ae6bda03aa10da3d2abbc66d764ca6c8d0993e7304a1bdd413eb9622f3ca1913baa6da1e9f4f9e6cf847f14f44d6924d +a18e7796054a340ef826c4d6b5a117b80927afaf2ebd547794c400204ae2caf277692e2eabb55bc2f620763c9e9da66d +8d2d25180dc2c65a4844d3e66819ccfcf48858f0cc89e1c77553b463ec0f7feb9a4002ce26bc618d1142549b9850f232 +863f413a394de42cc8166c1c75d513b91d545fff1de6b359037a742c70b008d34bf8e587afa2d62c844d0c6f0ea753e7 +83cd0cf62d63475e7fcad18a2e74108499cdbf28af2113cfe005e3b5887794422da450b1944d0a986eb7e1f4c3b18f25 +b4f8b350a6d88fea5ab2e44715a292efb12eb52df738c9b2393da3f1ddee68d0a75b476733ccf93642154bceb208f2b8 +b3f52aaa4cd4221cb9fc45936cc67fd3864bf6d26bf3dd86aa85aa55ecfc05f5e392ecce5e7cf9406b4b1c4fce0398c8 +b33137084422fb643123f40a6df2b498065e65230fc65dc31791c330e898c51c3a65ff738930f32c63d78f3c9315f85b +91452bfa75019363976bb7337fe3a73f1c10f01637428c135536b0cdc7da5ce558dae3dfc792aa55022292600814a8ef +ad6ba94c787cd4361ca642c20793ea44f1f127d4de0bb4a77c7fbfebae0fcadbf28e2cb6f0c12c12a07324ec8c19761d +890aa6248b17f1501b0f869c556be7bf2b1d31a176f9978bb97ab7a6bd4138eed32467951c5ef1871944b7f620542f43 +82111db2052194ee7dd22ff1eafffac0443cf969d3762cceae046c9a11561c0fdce9c0711f88ac01d1bed165f8a7cee3 +b1527b71df2b42b55832f72e772a466e0fa05743aacc7814f4414e4bcc8d42a4010c9e0fd940e6f254cafedff3cd6543 +922370fa49903679fc565f09c16a5917f8125e72acfeb060fcdbadbd1644eb9f4016229756019c93c6d609cda5d5d174 +aa4c7d98a96cab138d2a53d4aee8ebff6ef903e3b629a92519608d88b3bbd94de5522291a1097e6acf830270e64c8ee1 +b3dc21608a389a72d3a752883a382baaafc61ecc44083b832610a237f6a2363f24195acce529eb4aed4ef0e27a12b66e +94619f5de05e07b32291e1d7ab1d8b7337a2235e49d4fb5f3055f090a65e932e829efa95db886b32b153bdd05a53ec8c +ade1e92722c2ffa85865d2426fb3d1654a16477d3abf580cfc45ea4b92d5668afc9d09275d3b79283e13e6b39e47424d +b7201589de7bed094911dd62fcd25c459a8e327ac447b69f541cdba30233063e5ddffad0b67e9c3e34adcffedfd0e13d +809d325310f862d6549e7cb40f7e5fc9b7544bd751dd28c4f363c724a0378c0e2adcb5e42ec8f912f5f49f18f3365c07 +a79c20aa533de7a5d671c99eb9eb454803ba54dd4f2efa3c8fec1a38f8308e9905c71e9282955225f686146388506ff6 +a85eeacb5e8fc9f3ed06a3fe2dc3108ab9f8c5877b148c73cf26e4e979bf5795edbe2e63a8d452565fd1176ed40402b2 +97ef55662f8a1ec0842b22ee21391227540adf7708f491436044f3a2eb18c471525e78e1e14fa292507c99d74d7437c6 +93110d64ed5886f3d16ce83b11425576a3a7a9bb831cd0de3f9a0b0f2270a730d68136b4ef7ff035ede004358f419b5c +ac9ed0a071517f0ae4f61ce95916a90ba9a77a3f84b0ec50ef7298acdcd44d1b94525d191c39d6bd1bb68f4471428760 +98abd6a02c7690f5a339adf292b8c9368dfc12e0f8069cf26a5e0ce54b4441638f5c66ea735142f3c28e00a0024267e6 +b51efb73ba6d44146f047d69b19c0722227a7748b0e8f644d0fc9551324cf034c041a2378c56ce8b58d06038fb8a78de +8f115af274ef75c1662b588b0896b97d71f8d67986ae846792702c4742ab855952865ce236b27e2321967ce36ff93357 +b3c4548f14d58b3ab03c222da09e4381a0afe47a72d18d50a94e0008797f78e39e99990e5b4757be62310d400746e35a +a9b1883bd5f31f909b8b1b6dcb48c1c60ed20aa7374b3ffa7f5b2ed036599b5bef33289d23c80a5e6420d191723b92f7 +85d38dffd99487ae5bb41ab4a44d80a46157bbbe8ef9497e68f061721f74e4da513ccc3422936b059575975f6787c936 +adf870fcb96e972c033ab7a35d28ae79ee795f82bc49c3bd69138f0e338103118d5529c53f2d72a9c0d947bf7d312af2 +ab4c7a44e2d9446c6ff303eb49aef0e367a58b22cc3bb27b4e69b55d1d9ee639c9234148d2ee95f9ca8079b1457d5a75 +a386420b738aba2d7145eb4cba6d643d96bda3f2ca55bb11980b318d43b289d55a108f4bc23a9606fb0bccdeb3b3bb30 +847020e0a440d9c4109773ecca5d8268b44d523389993b1f5e60e541187f7c597d79ebd6e318871815e26c96b4a4dbb1 +a530aa7e5ca86fcd1bec4b072b55cc793781f38a666c2033b510a69e110eeabb54c7d8cbcb9c61fee531a6f635ffa972 +87364a5ea1d270632a44269d686b2402da737948dac27f51b7a97af80b66728b0256547a5103d2227005541ca4b7ed04 +8816fc6e16ea277de93a6d793d0eb5c15e9e93eb958c5ef30adaf8241805adeb4da8ce19c3c2167f971f61e0b361077d +8836a72d301c42510367181bb091e4be377777aed57b73c29ef2ce1d475feedd7e0f31676284d9a94f6db01cc4de81a2 +b0d9d8b7116156d9dde138d28aa05a33e61f8a85839c1e9071ccd517b46a5b4b53acb32c2edd7150c15bc1b4bd8db9e3 +ae931b6eaeda790ba7f1cd674e53dc87f6306ff44951fa0df88d506316a5da240df9794ccbd7215a6470e6b31c5ea193 +8c6d5bdf87bd7f645419d7c6444e244fe054d437ed1ba0c122fde7800603a5fadc061e5b836cb22a6cfb2b466f20f013 +90d530c6d0cb654999fa771b8d11d723f54b8a8233d1052dc1e839ea6e314fbed3697084601f3e9bbb71d2b4eaa596df +b0d341a1422588c983f767b1ed36c18b141774f67ef6a43cff8e18b73a009da10fc12120938b8bba27f225bdfd3138f9 +a131b56f9537f460d304e9a1dd75702ace8abd68cb45419695cb8dee76998139058336c87b7afd6239dc20d7f8f940cc +aa6c51fa28975f709329adee1bbd35d49c6b878041841a94465e8218338e4371f5cb6c17f44a63ac93644bf28f15d20f +88440fb584a99ebd7f9ea04aaf622f6e44e2b43bbb49fb5de548d24a238dc8f26c8da2ccf03dd43102bda9f16623f609 +9777b8695b790e702159a4a750d5e7ff865425b95fa0a3c15495af385b91c90c00a6bd01d1b77bffe8c47d01baae846f +8b9d764ece7799079e63c7f01690c8eff00896a26a0d095773dea7a35967a8c40db7a6a74692f0118bf0460c26739af4 +85808c65c485520609c9e61fa1bb67b28f4611d3608a9f7a5030ee61c3aa3c7e7dc17fff48af76b4aecee2cb0dbd22ac +ad2783a76f5b3db008ef5f7e67391fda4e7e36abde6b3b089fc4835b5c339370287935af6bd53998bed4e399eda1136d +96f18ec03ae47c205cc4242ca58e2eff185c9dca86d5158817e2e5dc2207ab84aadda78725f8dc080a231efdc093b940 +97de1ab6c6cc646ae60cf7b86df73b9cf56cc0cd1f31b966951ebf79fc153531af55ca643b20b773daa7cab784b832f7 +870ba266a9bfa86ef644b1ef025a0f1b7609a60de170fe9508de8fd53170c0b48adb37f19397ee8019b041ce29a16576 +ad990e888d279ac4e8db90619d663d5ae027f994a3992c2fbc7d262b5990ae8a243e19157f3565671d1cb0de17fe6e55 +8d9d5adcdd94c5ba3be4d9a7428133b42e485f040a28d16ee2384758e87d35528f7f9868de9bd23d1a42a594ce50a567 +85a33ed75d514ece6ad78440e42f7fcdb59b6f4cff821188236d20edae9050b3a042ce9bc7d2054296e133d033e45022 +92afd2f49a124aaba90de59be85ff269457f982b54c91b06650c1b8055f9b4b0640fd378df02a00e4fc91f7d226ab980 +8c0ee09ec64bd831e544785e3d65418fe83ed9c920d9bb4d0bf6dd162c1264eb9d6652d2def0722e223915615931581c +8369bedfa17b24e9ad48ebd9c5afea4b66b3296d5770e09b00446c5b0a8a373d39d300780c01dcc1c6752792bccf5fd0 +8b9e960782576a59b2eb2250d346030daa50bbbec114e95cdb9e4b1ba18c3d34525ae388f859708131984976ca439d94 +b682bface862008fea2b5a07812ca6a28a58fd151a1d54c708fc2f8572916e0d678a9cb8dc1c10c0470025c8a605249e +a38d5e189bea540a824b36815fc41e3750760a52be0862c4cac68214febdc1a754fb194a7415a8fb7f96f6836196d82a +b9e7fbda650f18c7eb8b40e42cc42273a7298e65e8be524292369581861075c55299ce69309710e5b843cb884de171bd +b6657e5e31b3193874a1bace08f42faccbd3c502fb73ad87d15d18a1b6c2a146f1baa929e6f517db390a5a47b66c0acf +ae15487312f84ed6265e4c28327d24a8a0f4d2d17d4a5b7c29b974139cf93223435aaebe3af918f5b4bb20911799715f +8bb4608beb06bc394e1a70739b872ce5a2a3ffc98c7547bf2698c893ca399d6c13686f6663f483894bccaabc3b9c56ad +b58ac36bc6847077584308d952c5f3663e3001af5ecf2e19cb162e1c58bd6c49510205d453cffc876ca1dc6b8e04a578 +924f65ced61266a79a671ffb49b300f0ea44c50a0b4e3b02064faa99fcc3e4f6061ea8f38168ab118c5d47bd7804590e +8d67d43b8a06b0ff4fafd7f0483fa9ed1a9e3e658a03fb49d9d9b74e2e24858dc1bed065c12392037b467f255d4e5643 +b4d4f87813125a6b355e4519a81657fa97c43a6115817b819a6caf4823f1d6a1169683fd68f8d025cdfa40ebf3069acb +a7fd4d2c8e7b59b8eed3d4332ae94b77a89a2616347402f880bc81bde072220131e6dbec8a605be3a1c760b775375879 +8d4a7d8fa6f55a30df37bcf74952e2fa4fd6676a2e4606185cf154bdd84643fd01619f8fb8813a564f72e3f574f8ce30 +8086fb88e6260e9a9c42e9560fde76315ff5e5680ec7140f2a18438f15bc2cc7d7d43bfb5880b180b738c20a834e6134 +916c4c54721de03934fee6f43de50bb04c81f6f8dd4f6781e159e71c40c60408aa54251d457369d133d4ba3ed7c12cb4 +902e5bf468f11ed9954e2a4a595c27e34abe512f1d6dc08bbca1c2441063f9af3dc5a8075ab910a10ff6c05c1c644a35 +a1302953015e164bf4c15f7d4d35e3633425a78294406b861675667eec77765ff88472306531e5d3a4ec0a2ff0dd6a9e +87874461df3c9aa6c0fa91325576c0590f367075f2f0ecfeb34afe162c04c14f8ce9d608c37ac1adc8b9985bc036e366 +84b50a8a61d3cc609bfb0417348133e698fe09a6d37357ce3358de189efcf35773d78c57635c2d26c3542b13cc371752 +acaed2cff8633d12c1d12bb7270c54d65b0b0733ab084fd47f81d0a6e1e9b6f300e615e79538239e6160c566d8bb8d29 +889e6a0e136372ca4bac90d1ab220d4e1cad425a710e8cdd48b400b73bb8137291ceb36a39440fa84305783b1d42c72f +90952e5becec45b2b73719c228429a2c364991cf1d5a9d6845ae5b38018c2626f4308daa322cab1c72e0f6c621bb2b35 +8f5a97a801b6e9dcd66ccb80d337562c96f7914e7169e8ff0fda71534054c64bf2a9493bb830623d612cfe998789be65 +84f3df8b9847dcf1d63ca470dc623154898f83c25a6983e9b78c6d2d90a97bf5e622445be835f32c1e55e6a0a562ea78 +91d12095cd7a88e7f57f254f02fdb1a1ab18984871dead2f107404bcf8069fe68258c4e6f6ebd2477bddf738135400bb +b771a28bc04baef68604d4723791d3712f82b5e4fe316d7adc2fc01b935d8e644c06d59b83bcb542afc40ebafbee0683 +872f6341476e387604a7e93ae6d6117e72d164e38ebc2b825bc6df4fcce815004d7516423c190c1575946b5de438c08d +90d6b4aa7d40a020cdcd04e8b016d041795961a8e532a0e1f4041252131089114a251791bf57794cadb7d636342f5d1c +899023ba6096a181448d927fed7a0fe858be4eac4082a42e30b3050ee065278d72fa9b9d5ce3bc1372d4cbd30a2f2976 +a28f176571e1a9124f95973f414d5bdbf5794d41c3839d8b917100902ac4e2171eb940431236cec93928a60a77ede793 +838dbe5bcd29c4e465d02350270fa0036cd46f8730b13d91e77afb7f5ed16525d0021d3b2ae173a76c378516a903e0cb +8e105d012dd3f5d20f0f1c4a7e7f09f0fdd74ce554c3032e48da8cce0a77260d7d47a454851387770f5c256fa29bcb88 +8f4df0f9feeb7a487e1d138d13ea961459a6402fd8f8cabb226a92249a0d04ded5971f3242b9f90d08da5ff66da28af6 +ad1cfda4f2122a20935aa32fb17c536a3653a18617a65c6836700b5537122af5a8206befe9eaea781c1244c43778e7f1 +832c6f01d6571964ea383292efc8c8fa11e61c0634a25fa180737cc7ab57bc77f25e614aac9a2a03d98f27b3c1c29de2 +903f89cc13ec6685ac7728521898781fecb300e9094ef913d530bf875c18bcc3ceed7ed51e7b482d45619ab4b025c2e9 +a03c474bb915aad94f171e8d96f46abb2a19c9470601f4c915512ec8b9e743c3938450a2a5b077b4618b9df8809e1dc1 +83536c8456f306045a5f38ae4be2e350878fa7e164ea408d467f8c3bc4c2ee396bd5868008c089183868e4dfad7aa50b +88f26b4ea1b236cb326cd7ad7e2517ec8c4919598691474fe15d09cabcfc37a8d8b1b818f4d112432ee3a716b0f37871 +a44324e3fe96e9c12b40ded4f0f3397c8c7ee8ff5e96441118d8a6bfad712d3ac990b2a6a23231a8f691491ac1fd480f +b0de4693b4b9f932191a21ee88629964878680152a82996c0019ffc39f8d9369bbe2fe5844b68d6d9589ace54af947e4 +8e5d8ba948aea5fd26035351a960e87f0d23efddd8e13236cc8e4545a3dda2e9a85e6521efb8577e03772d3637d213d9 +93efc82d2017e9c57834a1246463e64774e56183bb247c8fc9dd98c56817e878d97b05f5c8d900acf1fbbbca6f146556 +8731176363ad7658a2862426ee47a5dce9434216cef60e6045fa57c40bb3ce1e78dac4510ae40f1f31db5967022ced32 +b10c9a96745722c85bdb1a693100104d560433d45b9ac4add54c7646a7310d8e9b3ca9abd1039d473ae768a18e489845 +a2ac374dfbb464bf850b4a2caf15b112634a6428e8395f9c9243baefd2452b4b4c61b0cb2836d8eae2d57d4900bf407e +b69fe3ded0c4f5d44a09a0e0f398221b6d1bf5dbb8bc4e338b93c64f1a3cac1e4b5f73c2b8117158030ec03787f4b452 +8852cdbaf7d0447a8c6f211b4830711b3b5c105c0f316e3a6a18dcfbb9be08bd6f4e5c8ae0c3692da08a2dfa532f9d5c +93bbf6d7432a7d98ade3f94b57bf9f4da9bc221a180a370b113066dd42601bb9e09edd79e2e6e04e00423399339eebda +a80941c391f1eeafc1451c59e4775d6a383946ff22997aeaadf806542ba451d3b0f0c6864eeba954174a296efe2c1550 +a045fe2bb011c2a2f71a0181a8f457a3078470fb74c628eab8b59aef69ffd0d649723bf74d6885af3f028bc5a104fb39 +b9d8c35911009c4c8cad64692139bf3fc16b78f5a19980790cb6a7aea650a25df4231a4437ae0c351676a7e42c16134f +94c79501ded0cfcbab99e1841abe4a00a0252b3870e20774c3da16c982d74c501916ec28304e71194845be6e3113c7ab +900a66418b082a24c6348d8644ddb1817df5b25cb33044a519ef47cc8e1f7f1e38d2465b7b96d32ed472d2d17f8414c6 +b26f45d393b8b2fcb29bdbb16323dc7f4b81c09618519ab3a39f8ee5bd148d0d9f3c0b5dfab55b5ce14a1cb9206d777b +aa1a87735fc493a80a96a9a57ca40a6d9c32702bfcaa9869ce1a116ae65d69cefe2f3e79a12454b4590353e96f8912b4 +a922b188d3d0b69b4e4ea2a2aa076566962844637da12c0832105d7b31dea4a309eee15d12b7a336be3ea36fcbd3e3b7 +8f3841fcf4105131d8c4d9885e6e11a46c448226401cf99356c291fadb864da9fa9d30f3a73c327f23f9fd99a11d633e +9791d1183fae270e226379af6c497e7da803ea854bb20afa74b253239b744c15f670ee808f708ede873e78d79a626c9a +a4cad52e3369491ada61bf28ada9e85de4516d21c882e5f1cd845bea9c06e0b2887b0c5527fcff6fc28acd3c04f0a796 +b9ac86a900899603452bd11a7892a9bfed8054970bfcbeaa8c9d1930db891169e38d6977f5258c25734f96c8462eee3b +a3a154c28e5580656a859f4efc2f5ebfa7eaa84ca40e3f134fa7865e8581586db74992dbfa4036aa252fba103773ddde +95cc2a0c1885a029e094f5d737e3ecf4d26b99036453a8773c77e360101f9f98676ee246f6f732a377a996702d55691f +842651bbe99720438d8d4b0218feb60481280c05beb17750e9ca0d8c0599a60f873b7fbdcc7d8835ba9a6d57b16eec03 +81ee54699da98f5620307893dcea8f64670609fa20e5622265d66283adeac122d458b3308c5898e6c57c298db2c8b24f +b97868b0b2bc98032d68352a535a1b341b9ff3c7af4e3a7f3ebc82d3419daa1b5859d6aedc39994939623c7cd878bd9b +b60325cd5d36461d07ef253d826f37f9ee6474a760f2fff80f9873d01fd2b57711543cdc8d7afa1c350aa753c2e33dea +8c205326c11d25a46717b780c639d89714c7736c974ae71287e3f4b02e6605ac2d9b4928967b1684f12be040b7bf2dd3 +95a392d82db51e26ade6c2ccd3396d7e40aff68fa570b5951466580d6e56dda51775dce5cf3a74a7f28c3cb2eb551c4d +8f2cc8071eb56dffb70bda6dd433b556221dc8bba21c53353c865f00e7d4d86c9e39f119ea9a8a12ef583e9a55d9a6b6 +9449a71af9672aaf8856896d7e3d788b22991a7103f75b08c0abbcc2bfe60fda4ed8ce502cea4511ff0ea52a93e81222 +857090ab9fdb7d59632d068f3cc8cf27e61f0d8322d30e6b38e780a1f05227199b4cd746aac1311c36c659ef20931f28 +98a891f4973e7d9aaf9ac70854608d4f7493dffc7e0987d7be9dd6029f6ea5636d24ef3a83205615ca1ff403750058e1 +a486e1365bbc278dd66a2a25d258dc82f46b911103cb16aab3945b9c95ae87b386313a12b566df5b22322ede0afe25ad +a9a1eb399ed95d396dccd8d1ac718043446f8b979ec62bdce51c617c97a312f01376ab7fb87d27034e5f5570797b3c33 +b7abc3858d7a74bb446218d2f5a037e0fae11871ed9caf44b29b69c500c1fa1dcfad64c9cdccc9d80d5e584f06213deb +8cfb09fe2e202faa4cebad932b1d35f5ca204e1c2a0c740a57812ac9a6792130d1312aabd9e9d4c58ca168bfebd4c177 +a90a305c2cd0f184787c6be596fa67f436afd1f9b93f30e875f817ac2aae8bdd2e6e656f6be809467e6b3ad84adb86b1 +80a9ef993c2b009ae172cc8f7ec036f5734cf4f4dfa06a7db4d54725e7fbfae5e3bc6f22687bdbb6961939d6f0c87537 +848ade1901931e72b955d7db1893f07003e1708ff5d93174bac5930b9a732640f0578839203e9b77eb27965c700032d3 +93fdf4697609c5ae9c33b9ca2f5f1af44abeb2b98dc4fdf732cf7388de086f410730dc384d9b7a7f447bb009653c8381 +89ce3fb805aea618b5715c0d22a9f46da696b6fa86794f56fdf1d44155a33d42daf1920bcbe36cbacf3cf4c92df9cbc7 +829ce2c342cf82aa469c65f724f308f7a750bd1494adc264609cd790c8718b8b25b5cab5858cf4ee2f8f651d569eea67 +af2f0cee7bf413204be8b9df59b9e4991bc9009e0d6dbe6815181df0ec2ca93ab8f4f3135b1c14d8f53d74bff0bd6f27 +b87998cecf7b88cde93d1779f10a521edd5574a2fbd240102978639ec57433ba08cdb53849038a329cebbe74657268d2 +a64542a1261a6ed3d720c2c3a802303aad8c4c110c95d0f12e05c1065e66f42da494792b6bfc5b9272363f3b1d457f58 +86a6fd042e4f282fadf07a4bfee03fc96a3aea49f7a00f52bf249a20f1ec892326855410e61f37fbb27d9305eb2fc713 +967ea5bc403b6db269682f7fd0df90659350d7e1aa66bc4fab4c9dfcd75ed0bba4b52f1cebc5f34dc8ba810793727629 +a52990f9f3b8616ce3cdc2c74cd195029e6a969753dcf2d1630438700e7d6ebde36538532b3525ac516f5f2ce9dd27a3 +a64f7ff870bab4a8bf0d4ef6f5c744e9bf1021ed08b4c80903c7ad318e80ba1817c3180cc45cb5a1cae1170f0241655f +b00f706fa4de1f663f021e8ad3d155e84ce6084a409374b6e6cd0f924a0a0b51bebaaaf1d228c77233a73b0a5a0df0e9 +8b882cc3bff3e42babdb96df95fb780faded84887a0a9bab896bef371cdcf169d909f5658649e93006aa3c6e1146d62e +9332663ef1d1dcf805c3d0e4ce7a07d9863fb1731172e766b3cde030bf81682cc011e26b773fb9c68e0477b4ae2cfb79 +a8aa8151348dbd4ef40aaeb699b71b4c4bfd3218560c120d85036d14f678f6736f0ec68e80ce1459d3d35feccc575164 +a16cd8b729768f51881c213434aa28301fa78fcb554ddd5f9012ee1e4eae7b5cb3dd88d269d53146dea92d10790faf0b +86844f0ef9d37142faf3b1e196e44fbe280a3ba4189aa05c356778cb9e3b388a2bff95eed305ada8769935c9974e4c57 +ae2eec6b328fccf3b47bcdac32901ac2744a51beb410b04c81dea34dee4912b619466a4f5e2780d87ecefaebbe77b46d +915df4c38d301c8a4eb2dc5b1ba0ffaad67cbb177e0a80095614e9c711f4ef24a4cef133f9d982a63d2a943ba6c8669d +ae6a2a4dedfc2d1811711a8946991fede972fdf2a389b282471280737536ffc0ac3a6d885b1f8bda0366eb0b229b9979 +a9b628c63d08b8aba6b1317f6e91c34b2382a6c85376e8ef2410a463c6796740ae936fc4e9e0737cb9455d1daa287bd8 +848e30bf7edf2546670b390d5cf9ab71f98fcb6add3c0b582cb34996c26a446dee5d1bde4fdcde4fc80c10936e117b29 +907d6096c7c8c087d1808dd995d5d2b9169b3768c3f433475b50c2e2bd4b082f4d543afd8b0b0ddffa9c66222a72d51d +a59970a2493b07339124d763ac9d793c60a03354539ecbcf6035bc43d1ea6e35718202ae6d7060b7d388f483d971573c +b9cfef2af9681b2318f119d8611ff6d9485a68d8044581b1959ab1840cbca576dbb53eec17863d2149966e9feb21122f +ad47271806161f61d3afa45cdfe2babceef5e90031a21779f83dc8562e6076680525b4970b2f11fe9b2b23c382768323 +8e425a99b71677b04fe044625d338811fbb8ee32368a424f6ab2381c52e86ee7a6cecedf777dc97181519d41c351bc22 +86b55b54d7adefc12954a9252ee23ae83efe8b5b4b9a7dc307904413e5d69868c7087a818b2833f9b004213d629be8ad +a14fda6b93923dd11e564ae4457a66f397741527166e0b16a8eb91c6701c244fd1c4b63f9dd3515193ec88fa6c266b35 +a9b17c36ae6cd85a0ed7f6cabc5b47dc8f80ced605db327c47826476dc1fb8f8669aa7a7dc679fbd4ee3d8e8b4bd6a6f +82a0829469c1458d959c821148f15dacae9ea94bf56c59a6ab2d4dd8b3d16d73e313b5a3912a6c1f131d73a8f06730c4 +b22d56d549a53eaef549595924bdb621ff807aa4513feedf3fdcbf7ba8b6b9cfa4481c2f67fc642db397a6b794a8b63a +974c59c24392e2cb9294006cbe3c52163e255f3bd0c2b457bdc68a6338e6d5b6f87f716854492f8d880a6b896ccf757c +b70d247ba7cad97c50b57f526c2ba915786e926a94e8f8c3eebc2e1be6f4255411b9670e382060049c8f4184302c40b2 +ad80201fe75ef21c3ddbd98cf23591e0d7a3ba1036dfe77785c32f44755a212c31f0ceb0a0b6f5ee9b6dc81f358d30c3 +8c656e841f9bb90b9a42d425251f3fdbc022a604d75f5845f479ed4be23e02aaf9e6e56cde351dd7449c50574818a199 +8b88dd3fa209d3063b7c5b058f7249ee9900fbc2287d16da61a0704a0a1d71e45d9c96e1cda7fdf9654534ec44558b22 +961da00cc8750bd84d253c08f011970ae1b1158ad6778e8ed943d547bceaf52d6d5a212a7de3bf2706688c4389b827d2 +a5dd379922549a956033e3d51a986a4b1508e575042b8eaa1df007aa77cf0b8c2ab23212f9c075702788fa9c53696133 +ac8fcfde3a349d1e93fc8cf450814e842005c545c4844c0401bc80e6b96cdb77f29285a14455e167c191d4f312e866cd +ac63d79c799783a8466617030c59dd5a8f92ee6c5204676fd8d881ce5f7f8663bdbeb0379e480ea9b6340ab0dc88e574 +805874fde19ce359041ae2bd52a39e2841acabfd31f965792f2737d7137f36d4e4722ede8340d8c95afa6af278af8acb +8d2f323a228aa8ba7b7dc1399138f9e6b41df1a16a7069003ab8104b8b68506a45141bc5fe66acf430e23e13a545190b +a1610c721a2d9af882bb6b39bea97cff1527a3aea041d25934de080214ae77c959e79957164440686d15ab301e897d4d +aba16d29a47fc36f12b654fde513896723e2c700c4190f11b26aa4011da57737ad717daa02794aa3246e4ae5f0b0cc3a +a406db2f15fdd135f346cc4846623c47edd195e80ba8c7cb447332095314d565e4040694ca924696bb5ee7f8996ea0ba +8b30e2cd9b47d75ba57b83630e40f832249af6c058d4f490416562af451993eec46f3e1f90bc4d389e4c06abd1b32a46 +aacf9eb7036e248e209adbfc3dd7ce386569ea9b312caa4b240726549db3c68c4f1c8cbf8ed5ea9ea60c7e57c9df3b8e +b20fcac63bf6f5ee638a42d7f89be847f348c085ddcbec3fa318f4323592d136c230495f188ef2022aa355cc2b0da6f9 +811eff750456a79ec1b1249d76d7c1547065b839d8d4aaad860f6d4528eb5b669473dcceeeea676cddbc3980b68461b7 +b52d14ae33f4ab422f953392ae76a19c618cc31afc96290bd3fe2fb44c954b5c92c4789f3f16e8793f2c0c1691ade444 +a7826dafeeba0db5b66c4dfcf2b17fd7b40507a5a53ac2e42942633a2cb30b95ba1739a6e9f3b7a0e0f1ec729bf274e2 +8acfd83ddf7c60dd7c8b20c706a3b972c65d336b8f9b3d907bdd8926ced271430479448100050b1ef17578a49c8fa616 +af0c69f65184bb06868029ad46f8465d75c36814c621ac20a5c0b06a900d59305584f5a6709683d9c0e4b6cd08d650a6 +b6cc8588191e00680ee6c3339bd0f0a17ad8fd7f4be57d5d7075bede0ea593a19e67f3d7c1a20114894ee5bfcab71063 +a82fd4f58635129dbb6cc3eb9391cf2d28400018b105fc41500fbbd12bd890b918f97d3d359c29dd3b4c4e34391dfab0 +92fc544ed65b4a3625cf03c41ddff7c039bc22d22c0d59dcc00efd5438401f2606adb125a1d5de294cca216ec8ac35a3 +906f67e4a32582b71f15940523c0c7ce370336935e2646bdaea16a06995256d25e99df57297e39d6c39535e180456407 +97510337ea5bbd5977287339197db55c60533b2ec35c94d0a460a416ae9f60e85cee39be82abeeacd5813cf54df05862 +87e6894643815c0ea48cb96c607266c5ee4f1f82ba5fe352fb77f9b6ed14bfc2b8e09e80a99ac9047dfcf62b2ae26795 +b6fd55dd156622ad7d5d51b7dde75e47bd052d4e542dd6449e72411f68275775c846dde301e84613312be8c7bce58b07 +b98461ac71f554b2f03a94e429b255af89eec917e208a8e60edf5fc43b65f1d17a20de3f31d2ce9f0cb573c25f2f4d98 +96f0dea40ca61cefbee41c4e1fe9a7d81fbe1f49bb153d083ab70f5d0488a1f717fd28cedcf6aa18d07cce2c62801898 +8d7c3ab310184f7dc34b6ce4684e4d29a31e77b09940448ea4daac730b7eb308063125d4dd229046cf11bfd521b771e0 +96f0564898fe96687918bbf0a6adead99cf72e3a35ea3347e124af9d006221f8e82e5a9d2fe80094d5e8d48e610f415e +ad50fcb92c2675a398cf07d4c40a579e44bf8d35f27cc330b57e54d5ea59f7d898af0f75dccfe3726e5471133d70f92b +828beed62020361689ae7481dd8f116902b522fb0c6c122678e7f949fdef70ead011e0e6bffd25678e388744e17cdb69 +8349decac1ca16599eee2efc95bcaabf67631107da1d34a2f917884bd70dfec9b4b08ab7bc4379d6c73b19c0b6e54fb8 +b2a6a2e50230c05613ace9e58bb2e98d94127f196f02d9dddc53c43fc68c184549ca12d713cb1b025d8260a41e947155 +94ff52181aadae832aed52fc3b7794536e2a31a21fc8be3ea312ca5c695750d37f08002f286b33f4023dba1e3253ecfa +a21d56153c7e5972ee9a319501be4faff199fdf09bb821ea9ce64aa815289676c00f105e6f00311b3a5b627091b0d0fc +a27a60d219f1f0c971db73a7f563b371b5c9fc3ed1f72883b2eac8a0df6698400c9954f4ca17d7e94e44bd4f95532afb +a2fc56fae99b1f18ba5e4fe838402164ce82f8a7f3193d0bbd360c2bac07c46f9330c4c7681ffb47074c6f81ee6e7ac6 +b748e530cd3afb96d879b83e89c9f1a444f54e55372ab1dcd46a0872f95ce8f49cf2363fc61be82259e04f555937ed16 +8bf8993e81080c7cbba1e14a798504af1e4950b2f186ab3335b771d6acaee4ffe92131ae9c53d74379d957cb6344d9cd +96774d0ef730d22d7ab6d9fb7f90b9ead44285219d076584a901960542756700a2a1603cdf72be4708b267200f6c36a9 +b47703c2ab17be1e823cc7bf3460db1d6760c0e33862c90ca058845b2ff234b0f9834ddba2efb2ee1770eb261e7d8ffd +84319e67c37a9581f8b09b5e4d4ae88d0a7fb4cbb6908971ab5be28070c3830f040b1de83ee663c573e0f2f6198640e4 +96811875fa83133e0b3c0e0290f9e0e28bca6178b77fdf5350eb19344d453dbd0d71e55a0ef749025a5a2ca0ad251e81 +81a423423e9438343879f2bfd7ee9f1c74ebebe7ce3cfffc8a11da6f040cc4145c3b527bd3cf63f9137e714dbcb474ef +b8c3535701ddbeec2db08e17a4fa99ba6752d32ece5331a0b8743676f421fcb14798afc7c783815484f14693d2f70db8 +81aee980c876949bf40782835eec8817d535f6f3f7e00bf402ddd61101fdcd60173961ae90a1cf7c5d060339a18c959d +87e67b928d97b62c49dac321ce6cb680233f3a394d4c9a899ac2e8db8ccd8e00418e66cdfd68691aa3cb8559723b580c +8eac204208d99a2b738648df96353bbb1b1065e33ee4f6bba174b540bbbd37d205855e1f1e69a6b7ff043ca377651126 +848e6e7a54ad64d18009300b93ea6f459ce855971dddb419b101f5ac4c159215626fadc20cc3b9ab1701d8f6dfaddd8b +88aa123d9e0cf309d46dddb6acf634b1ade3b090a2826d6e5e78669fa1220d6df9a6697d7778cd9b627db17eea846126 +9200c2a629b9144d88a61151b661b6c4256cc5dadfd1e59a8ce17a013c2d8f7e754aabe61663c3b30f1bc47784c1f8cf +b6e1a2827c3bdda91715b0e1b1f10dd363cef337e7c80cac1f34165fc0dea7c8b69747e310563db5818390146ce3e231 +92c333e694f89f0d306d54105b2a5dcc912dbe7654d9e733edab12e8537350815be472b063e56cfde5286df8922fdecb +a6fac04b6d86091158ebb286586ccfec2a95c9786e14d91a9c743f5f05546073e5e3cc717635a0c602cad8334e922346 +a581b4af77feebc1fb897d49b5b507c6ad513d8f09b273328efbb24ef0d91eb740d01b4d398f2738125dacfe550330cd +81c4860cccf76a34f8a2bc3f464b7bfd3e909e975cce0d28979f457738a56e60a4af8e68a3992cf273b5946e8d7f76e2 +8d1eaa09a3180d8af1cbaee673db5223363cc7229a69565f592fa38ba0f9d582cedf91e15dabd06ebbf2862fc0feba54 +9832f49b0147f4552402e54593cfa51f99540bffada12759b71fcb86734be8e500eea2d8b3d036710bdf04c901432de9 +8bdb0e8ec93b11e5718e8c13cb4f5de545d24829fd76161216340108098dfe5148ed25e3b57a89a516f09fa79043734d +ab96f06c4b9b0b2c0571740b24fca758e6976315053a7ecb20119150a9fa416db2d3a2e0f8168b390bb063f0c1caf785 +ab777f5c52acd62ecf4d1f168b9cc8e1a9b45d4ec6a8ff52c583e867c2239aba98d7d3af977289b367edce03d9c2dfb1 +a09d3ce5e748da84802436951acc3d3ea5d8ec1d6933505ed724d6b4b0d69973ab0930daec9c6606960f6e541e4a3ce2 +8ef94f7be4d85d5ad3d779a5cf4d7b2fc3e65c52fb8e1c3c112509a4af77a0b5be994f251e5e40fabeeb1f7d5615c22b +a7406a5bf5708d9e10922d3c5c45c03ef891b8d0d74ec9f28328a72be4cdc05b4f2703fa99366426659dfca25d007535 +b7f52709669bf92a2e070bfe740f422f0b7127392c5589c7f0af71bb5a8428697c762d3c0d74532899da24ea7d8695c2 +b9dfb0c8df84104dbf9239ccefa4672ef95ddabb8801b74997935d1b81a78a6a5669a3c553767ec19a1281f6e570f4ff +ae4d5c872156061ce9195ac640190d8d71dd406055ee43ffa6f9893eb24b870075b74c94d65bc1d5a07a6573282b5520 +afe6bd3eb72266d333f1807164900dcfa02a7eb5b1744bb3c86b34b3ee91e3f05e38fa52a50dc64eeb4bdb1dd62874b8 +948043cf1bc2ef3c01105f6a78dc06487f57548a3e6ef30e6ebc51c94b71e4bf3ff6d0058c72b6f3ecc37efd7c7fa8c0 +a22fd17c2f7ffe552bb0f23fa135584e8d2d8d75e3f742d94d04aded2a79e22a00dfe7acbb57d44e1cdb962fb22ae170 +8cd0f4e9e4fb4a37c02c1bde0f69359c43ab012eb662d346487be0c3758293f1ca560122b059b091fddce626383c3a8f +90499e45f5b9c81426f3d735a52a564cafbed72711d9279fdd88de8038e953bc48c57b58cba85c3b2e4ce56f1ddb0e11 +8c30e4c034c02958384564cac4f85022ef36ab5697a3d2feaf6bf105049675bbf23d01b4b6814711d3d9271abff04cac +81f7999e7eeea30f3e1075e6780bbf054f2fb6f27628a2afa4d41872a385b4216dd5f549da7ce6cf39049b2251f27fb7 +b36a7191f82fc39c283ffe53fc1f5a9a00b4c64eee7792a8443475da9a4d226cf257f226ea9d66e329af15d8f04984ec +aad4da528fdbb4db504f3041c747455baff5fcd459a2efd78f15bdf3aea0bdb808343e49df88fe7a7c8620009b7964a3 +99ebd8c6dd5dd299517fb6381cfc2a7f443e6e04a351440260dd7c2aee3f1d8ef06eb6c18820b394366ecdfd2a3ce264 +8873725b81871db72e4ec3643084b1cdce3cbf80b40b834b092767728605825c19b6847ad3dcf328438607e8f88b4410 +b008ee2f895daa6abd35bd39b6f7901ae4611a11a3271194e19da1cdcc7f1e1ea008fe5c5440e50d2c273784541ad9c5 +9036feafb4218d1f576ef89d0e99124e45dacaa6d816988e34d80f454d10e96809791d5b78f7fd65f569e90d4d7238c5 +92073c1d11b168e4fa50988b0288638b4868e48bbc668c5a6dddf5499875d53be23a285acb5e4bad60114f6cf6c556e9 +88c87dfcb8ba6cbfe7e1be081ccfadbd589301db2cb7c99f9ee5d7db90aa297ed1538d5a867678a763f2deede5fd219a +b42a562805c661a50f5dea63108002c0f27c0da113da6a9864c9feb5552225417c0356c4209e8e012d9bcc9d182c7611 +8e6317d00a504e3b79cd47feb4c60f9df186467fe9ca0f35b55c0364db30528f5ff071109dabb2fc80bb9cd4949f0c24 +b7b1ea6a88694f8d2f539e52a47466695e39e43a5eb9c6f23bca15305fe52939d8755cc3ac9d6725e60f82f994a3772f +a3cd55161befe795af93a38d33290fb642b8d80da8b786c6e6fb02d393ea308fbe87f486994039cbd7c7b390414594b6 +b416d2d45b44ead3b1424e92c73c2cf510801897b05d1724ff31cbd741920cd858282fb5d6040fe1f0aa97a65bc49424 +950ee01291754feace97c2e933e4681e7ddfbc4fcd079eb6ff830b0e481d929c93d0c7fb479c9939c28ca1945c40da09 +869bd916aee8d86efe362a49010382674825d49195b413b4b4018e88ce43fe091b475d0b863ff0ba2259400f280c2b23 +9782f38cd9c9d3385ec286ebbc7cba5b718d2e65a5890b0a5906b10a89dc8ed80d417d71d7c213bf52f2af1a1f513ea7 +91cd33bc2628d096269b23faf47ee15e14cb7fdc6a8e3a98b55e1031ea0b68d10ba30d97e660f7e967d24436d40fad73 +8becc978129cc96737034c577ae7225372dd855da8811ae4e46328e020c803833b5bdbc4a20a93270e2b8bd1a2feae52 +a36b1d8076783a9522476ce17f799d78008967728ce920531fdaf88303321bcaf97ecaa08e0c01f77bc32e53c5f09525 +b4720e744943f70467983aa34499e76de6d59aa6fadf86f6b787fdce32a2f5b535b55db38fe2da95825c51002cfe142d +91ad21fc502eda3945f6de874d1b6bf9a9a7711f4d61354f9e5634fc73f9c06ada848de15ab0a75811d3250be862827d +84f78e2ebf5fc077d78635f981712daf17e2475e14c2a96d187913006ad69e234746184a51a06ef510c9455b38acb0d7 +960aa7906e9a2f11db64a26b5892ac45f20d2ccb5480f4888d89973beb6fa0dfdc06d68d241ff5ffc7f1b82b1aac242d +a99365dcd1a00c66c9db6924b97c920f5c723380e823b250db85c07631b320ec4e92e586f7319e67a522a0578f7b6d6c +a25d92d7f70cf6a88ff317cfec071e13774516da664f5fac0d4ecaa65b8bf4eb87a64a4d5ef2bd97dfae98d388dbf5cc +a7af47cd0041295798f9779020a44653007444e8b4ef0712982b06d0dcdd434ec4e1f7c5f7a049326602cb605c9105b7 +aefe172eac5568369a05980931cc476bebd9dea573ba276d59b9d8c4420784299df5a910033b7e324a6c2dfc62e3ef05 +b69bc9d22ffa645baa55e3e02522e9892bb2daa7fff7c15846f13517d0799766883ee09ae0869df4139150c5b843ca8a +95a10856140e493354fdd12722c7fdded21b6a2ffbc78aa2697104af8ad0c8e2206f44b0bfee077ef3949d46bbf7c16b +891f2fcd2c47cbea36b7fa715968540c233313f05333f09d29aba23c193f462ed490dd4d00969656e89c53155fdfe710 +a6c33e18115e64e385c843dde34e8a228222795c7ca90bc2cc085705d609025f3351d9be61822c69035a49fb3e48f2d5 +b87fb12f12c0533b005adad0487f03393ff682e13575e3cb57280c3873b2c38ba96a63c49eef7a442753d26b7005230b +b905c02ba451bfd411c135036d92c27af3b0b1c9c2f1309d6948544a264b125f39dd41afeff4666b12146c545adc168a +8b29c513f43a78951cf742231cf5457a6d9d55edf45df5481a0f299a418d94effef561b15d2c1a01d1b8067e7153fda9 +b9941cccd51dc645920d2781c81a317e5a33cb7cf76427b60396735912cb6d2ca9292bb4d36b6392467d390d2c58d9f3 +a8546b627c76b6ef5c93c6a98538d8593dbe21cb7673fd383d5401b0c935eea0bdeeefeb1af6ad41bad8464fb87bbc48 +aa286b27de2812de63108a1aec29d171775b69538dc6198640ac1e96767c2b83a50391f49259195957d457b493b667c9 +a932fb229f641e9abbd8eb2bd874015d97b6658ab6d29769fc23b7db9e41dd4f850382d4c1f08af8f156c5937d524473 +a1412840fcc86e2aeec175526f2fb36e8b3b8d21a78412b7266daf81e51b3f68584ed8bd42a66a43afdd8c297b320520 +89c78be9efb624c97ebca4fe04c7704fa52311d183ffd87737f76b7dadc187c12c982bd8e9ed7cd8beb48cdaafd2fd01 +a3f5ddec412a5bec0ce15e3bcb41c6214c2b05d4e9135a0d33c8e50a78eaba71e0a5a6ea8b45854dec5c2ed300971fc2 +9721f9cec7a68b7758e3887548790de49fa6a442d0396739efa20c2f50352a7f91d300867556d11a703866def2d5f7b5 +a23764e140a87e5991573521af039630dd28128bf56eed2edbed130fd4278e090b60cf5a1dca9de2910603d44b9f6d45 +a1a6494a994215e48ab55c70efa8ffdddce6e92403c38ae7e8dd2f8288cad460c6c7db526bbdf578e96ca04d9fe12797 +b1705ea4cb7e074efe0405fc7b8ee2ec789af0426142f3ec81241cacd4f7edcd88e39435e4e4d8e7b1df64f3880d6613 +85595d061d677116089a6064418b93eb44ff79e68d12bd9625078d3bbc440a60d0b02944eff6054433ee34710ae6fbb4 +9978d5e30bedb7526734f9a1febd973a70bfa20890490e7cc6f2f9328feab1e24f991285dbc3711d892514e2d7d005ad +af30243c66ea43b9f87a061f947f7bce745f09194f6e95f379c7582b9fead920e5d6957eaf05c12ae1282ada4670652f +a1930efb473f88001e47aa0b2b2a7566848cccf295792e4544096ecd14ee5d7927c173a8576b405bfa2eec551cd67eb5 +b0446d1c590ee5a45f7e22d269c044f3848c97aec1d226b44bfd0e94d9729c28a38bccddc3a1006cc5fe4e3c24f001f2 +b8a8380172df3d84b06176df916cf557966d4f2f716d3e9437e415d75b646810f79f2b2b71d857181b7fc944018883a3 +a563afec25b7817bfa26e19dc9908bc00aa8fc3d19be7d6de23648701659009d10e3e4486c28e9c6b13d48231ae29ac5 +a5a8e80579de886fb7d6408f542791876885947b27ad6fa99a8a26e381f052598d7b4e647b0115d4b5c64297e00ce28e +8f87afcc7ad33c51ac719bade3cd92da671a37a82c14446b0a2073f4a0a23085e2c8d31913ed2d0be928f053297de8f6 +a43c455ce377e0bc434386c53c752880687e017b2f5ae7f8a15c044895b242dffde4c92fb8f8bb50b18470b17351b156 +8368f8b12a5bceb1dba25adb3a2e9c7dc9b1a77a1f328e5a693f5aec195cd1e06b0fe9476b554c1c25dac6c4a5b640a3 +919878b27f3671fc78396f11531c032f3e2bd132d04cc234fa4858676b15fb1db3051c0b1db9b4fc49038216f11321ce +b48cd67fb7f1242696c1f877da4bdf188eac676cd0e561fbac1a537f7b8229aff5a043922441d603a26aae56a15faee4 +a3e0fdfd4d29ea996517a16f0370b54787fefe543c2fe73bfc6f9e560c1fd30dad8409859e2d7fa2d44316f24746c712 +8bb156ade8faf149df7bea02c140c7e392a4742ae6d0394d880a849127943e6f26312033336d3b9fdc0092d71b5efe87 +8845e5d5cc555ca3e0523244300f2c8d7e4d02aaebcb5bd749d791208856c209a6f84dd99fd55968c9f0ab5f82916707 +a3e90bb5c97b07789c2f32dff1aec61d0a2220928202f5ad5355ae71f8249237799d6c8a22602e32e572cb12eabe0c17 +b150bcc391884c996149dc3779ce71f15dda63a759ee9cc05871f5a8379dcb62b047098922c0f26c7bd04deb394c33f9 +95cd4ad88d51f0f2efcfd0c2df802fe252bb9704d1afbf9c26a248df22d55da87bdfaf41d7bc6e5df38bd848f0b13f42 +a05a49a31e91dff6a52ac8b9c2cfdd646a43f0d488253f9e3cfbce52f26667166bbb9b608fc358763a65cbf066cd6d05 +a59c3c1227fdd7c2e81f5e11ef5c406da44662987bac33caed72314081e2eed66055d38137e01b2268e58ec85dd986c0 +b7020ec3bd73a99861f0f1d88cf5a19abab1cbe14b7de77c9868398c84bb8e18dbbe9831838a96b6d6ca06e82451c67b +98d1ff2525e9718ee59a21d8900621636fcd873d9a564b8dceb4be80a194a0148daf1232742730b3341514b2e5a5436c +886d97b635975fc638c1b6afc493e5998ca139edba131b75b65cfe5a8e814f11bb678e0eeee5e6e5cd913ad3f2fefdfc +8fb9fd928d38d5d813b671c924edd56601dd7163b686c13f158645c2f869d9250f3859aa5463a39258c90fef0f41190a +aac35e1cd655c94dec3580bb3800bd9c2946c4a9856f7d725af15fbea6a2d8ca51c8ad2772abed60ee0e3fb9cb24046b +b8d71fa0fa05ac9e443c9b4929df9e7f09a919be679692682e614d24227e04894bfc14a5c73a62fb927fedff4a0e4aa7 +a45a19f11fbbb531a704badbb813ed8088ab827c884ee4e4ebf363fa1132ff7cfa9d28be9c85b143e4f7cdbc94e7cf1a +82b54703a4f295f5471b255ab59dce00f0fe90c9fb6e06b9ee48b15c91d43f4e2ef4a96c3118aeb03b08767be58181bb +8283264c8e6d2a36558f0d145c18576b6600ff45ff99cc93eca54b6c6422993cf392668633e5df396b9331e873d457e5 +8c549c03131ead601bc30eb6b9537b5d3beb7472f5bb1bcbbfd1e9f3704477f7840ab3ab7f7dc13bbbbcdff886a462d4 +afbb0c520ac1b5486513587700ad53e314cb74bfbc12e0b5fbdcfdaac36d342e8b59856196a0d84a25cff6e6e1d17e76 +89e4c22ffb51f2829061b3c7c1983c5c750cad158e3a825d46f7cf875677da5d63f653d8a297022b5db5845c9271b32b +afb27a86c4c2373088c96b9adf4433f2ebfc78ac5c526e9f0510670b6e4e5e0057c0a4f75b185e1a30331b9e805c1c15 +a18e16b57445f88730fc5d3567bf5a176861dc14c7a08ed2996fe80eed27a0e7628501bcb78a1727c5e9ac55f29c12c4 +93d61bf88b192d6825cf4e1120af1c17aa0f994d158b405e25437eaeefae049f7b721a206e7cc8a04fdc29d3c42580a1 +a99f2995a2e3ed2fd1228d64166112038de2f516410aa439f4c507044e2017ea388604e2d0f7121256fadf7fbe7023d1 +914fd91cffc23c32f1c6d0e98bf660925090d873367d543034654389916f65f552e445b0300b71b61b721a72e9a5983c +b42a578a7787b71f924e7def425d849c1c777156b1d4170a8ee7709a4a914e816935131afd9a0412c4cb952957b20828 +82fb30590e84b9e45db1ec475a39971cf554dc01bcc7050bc89265740725c02e2be5a972168c5170c86ae83e5b0ad2c0 +b14f8d8e1e93a84976289e0cf0dfa6f3a1809e98da16ee5c4932d0e1ed6bf8a07697fdd4dd86a3df84fb0003353cdcc0 +85d7a2f4bda31aa2cb208b771fe03291a4ebdaf6f1dc944c27775af5caec412584c1f45bc741fca2a6a85acb3f26ad7d +af02e56ce886ff2253bc0a68faad76f25ead84b2144e5364f3fb9b648f03a50ee9dc0b2c33ebacf7c61e9e43201ef9ef +87e025558c8a0b0abd06dfc350016847ea5ced7af2d135a5c9eec9324a4858c4b21510fb0992ec52a73447f24945058e +80fff0bafcd058118f5e7a4d4f1ae0912efeb281d2cbe4d34ba8945cc3dbe5d8baf47fb077343b90b8d895c90b297aca +b6edcf3a40e7b1c3c0148f47a263cd819e585a51ef31c2e35a29ce6f04c53e413f743034c0d998d9c00a08ba00166f31 +abb87ed86098c0c70a76e557262a494ff51a30fb193f1c1a32f8e35eafa34a43fcc07aa93a3b7a077d9e35afa07b1a3d +a280214cd3bb0fb7ecd2d8bcf518cbd9078417f2b91d2533ec2717563f090fb84f2a5fcfdbbeb2a2a1f8a71cc5aa5941 +a63083ca7238ea2b57d15a475963cf1d4f550d8cd76db290014a0461b90351f1f26a67d674c837b0b773b330c7c3d534 +a8fa39064cb585ece5263e2f42f430206476bf261bd50f18d2b694889bd79d04d56410664cecad62690e5c5a20b3f6ff +85ba52ce9d700a5dcf6c5b00559acbe599d671ce5512467ff4b6179d7fad550567ce2a9c126a50964e3096458ea87920 +b913501e1008f076e5eac6d883105174f88b248e1c9801e568fefaffa1558e4909364fc6d9512aa4d125cbd7cc895f05 +8eb33b5266c8f2ed4725a6ad147a322e44c9264cf261c933cbbe230a43d47fca0f29ec39756b20561dabafadd5796494 +850ebc8b661a04318c9db5a0515066e6454fa73865aa4908767a837857ecd717387f614acb614a88e075d4edc53a2f5a +a08d6b92d866270f29f4ce23a3f5d99b36b1e241a01271ede02817c8ec3f552a5c562db400766c07b104a331835c0c64 +8131804c89bb3e74e9718bfc4afa547c1005ff676bd4db9604335032b203390cfa54478d45c6c78d1fe31a436ed4be9f +9106d94f23cc1eacec8316f16d6f0a1cc160967c886f51981fdb9f3f12ee1182407d2bb24e5b873de58cb1a3ee915a6b +a13806bfc3eae7a7000c9d9f1bd25e10218d4e67f59ae798b145b098bca3edad2b1040e3fc1e6310e612fb8818f459ac +8c69fbca502046cb5f6db99900a47b34117aef3f4b241690cdb3b84ca2a2fc7833e149361995dc41fa78892525bce746 +852c473150c91912d58ecb05769222fa18312800c3f56605ad29eec9e2d8667b0b81c379048d3d29100ed2773bb1f3c5 +b1767f6074426a00e01095dbb1795beb4e4050c6411792cbad6537bc444c3165d1058bafd1487451f9c5ddd209e0ae7e +80c600a5fe99354ce59ff0f84c760923dc8ff66a30bf47dc0a086181785ceb01f9b951c4e66df800ea6d705e8bc47055 +b5cf19002fbc88a0764865b82afcb4d64a50196ea361e5c71dff7de084f4dcbbc34ec94a45cc9e0247bd51da565981aa +93e67a254ea8ce25e112d93cc927fadaa814152a2c4ec7d9a56eaa1ed47aec99b7e9916b02e64452cc724a6641729bbb +ace70b32491bda18eee4a4d041c3bc9effae9340fe7e6c2f5ad975ee0874c17f1a7da7c96bd85fccff9312c518fac6e9 +ab4cfa02065017dd7f1aadc66f2c92f78f0f11b8597c03a5d69d82cb2eaf95a4476a836ac102908f137662472c8d914b +a40b8cd8deb8ae503d20364d64cab7c2801b7728a9646ed19c65edea6a842756a2f636283494299584ad57f4bb12cd0b +8594e11d5fc2396bcd9dbf5509ce4816dbb2b7305168021c426171fb444d111da5a152d6835ad8034542277011c26c0e +8024de98c26b4c994a66628dc304bb737f4b6859c86ded552c5abb81fd4c6c2e19d5a30beed398a694b9b2fdea1dd06a +8843f5872f33f54df8d0e06166c1857d733995f67bc54abb8dfa94ad92407cf0179bc91b0a50bbb56cdc2b350d950329 +b8bab44c7dd53ef9edf497dcb228e2a41282c90f00ba052fc52d57e87b5c8ab132d227af1fcdff9a12713d1f980bcaae +982b4d7b29aff22d527fd82d2a52601d95549bfb000429bb20789ed45e5abf1f4b7416c7b7c4b79431eb3574b29be658 +8eb1f571b6a1878e11e8c1c757e0bc084bab5e82e897ca9be9b7f4b47b91679a8190bf0fc8f799d9b487da5442415857 +a6e74b588e5af935c8b243e888582ef7718f8714569dd4992920740227518305eb35fab674d21a5551cca44b3e511ef2 +a30fc2f3a4cb4f50566e82307de73cd7bd8fe2c1184e9293c136a9b9e926a018d57c6e4f308c95b9eb8299e94d90a2a1 +a50c5869ca5d2b40722c056a32f918d47e0b65ca9d7863ca7d2fb4a7b64fe523fe9365cf0573733ceaadebf20b48fff8 +83bbdd32c04d17581418cf360749c7a169b55d54f2427390defd9f751f100897b2d800ce6636c5bbc046c47508d60c8c +a82904bdf614de5d8deaff688c8a5e7ac5b3431687acbcda8fa53960b7c417a39c8b2e462d7af91ce6d79260f412db8e +a4362e31ff4b05d278b033cf5eebea20de01714ae16d4115d04c1da4754269873afc8171a6f56c5104bfd7b0db93c3e7 +b5b8daa63a3735581e74a021b684a1038cea77168fdb7fdf83c670c2cfabcfc3ab2fc7359069b5f9048188351aef26b5 +b48d723894b7782d96ac8433c48faca1bdfa5238019c451a7f47d958097cce3ae599b876cf274269236b9d6ff8b6d7ca +98ffff6a61a3a6205c7820a91ca2e7176fab5dba02bc194c4d14942ac421cb254183c705506ab279e4f8db066f941c6c +ae7db24731da2eaa6efc4f7fcba2ecc26940ddd68038dce43acf2cee15b72dc4ef42a7bfdd32946d1ed78786dd7696b3 +a656db14f1de9a7eb84f6301b4acb2fbf78bfe867f48a270e416c974ab92821eb4df1cb881b2d600cfed0034ac784641 +aa315f8ecba85a5535e9a49e558b15f39520fce5d4bf43131bfbf2e2c9dfccc829074f9083e8d49f405fb221d0bc4c3c +90bffba5d9ff40a62f6c8e9fc402d5b95f6077ed58d030c93e321b8081b77d6b8dac3f63a92a7ddc01585cf2c127d66c +abdd733a36e0e0f05a570d0504e73801bf9b5a25ff2c78786f8b805704997acb2e6069af342538c581144d53149fa6d3 +b4a723bb19e8c18a01bd449b1bb3440ddb2017f10bb153da27deb7a6a60e9bb37619d6d5435fbb1ba617687838e01dd0 +870016b4678bab3375516db0187a2108b2e840bae4d264b9f4f27dbbc7cc9cac1d7dc582d7a04d6fd1ed588238e5e513 +80d33d2e20e8fc170aa3cb4f69fffb72aeafb3b5bb4ea0bc79ab55da14142ca19b2d8b617a6b24d537366e3b49cb67c3 +a7ee76aec273aaae03b3b87015789289551969fb175c11557da3ab77e39ab49d24634726f92affae9f4d24003050d974 +8415ea4ab69d779ebd42d0fe0c6aef531d6a465a5739e429b1fcf433ec45aa8296c527e965a20f0ec9f340c9273ea3cf +8c7662520794e8b4405d0b33b5cac839784bc86a5868766c06cbc1fa306dbe334978177417b31baf90ce7b0052a29c56 +902b2abecc053a3dbdea9897ee21e74821f3a1b98b2d560a514a35799f4680322550fd3a728d4f6d64e1de98033c32b8 +a05e84ed9ecab8d508d670c39f2db61ad6e08d2795ec32a3c9d0d3737ef3801618f4fc2a95f90ec2f068606131e076c5 +8b9208ff4d5af0c2e3f53c9375da666773ac57197dfabb0d25b1c8d0588ba7f3c15ee9661bb001297f322ea2fbf6928b +a3c827741b34a03254d4451b5ab74a96f2b9f7fb069e2f5adaf54fd97cc7a4d516d378db5ca07da87d8566d6eef13726 +8509d8a3f4a0ed378e0a1e28ea02f6bf1d7f6c819c6c2f5297c7df54c895b848f841653e32ba2a2c22c2ff739571acb8 +a0ce988b7d3c40b4e496aa83a09e4b5472a2d98679622f32bea23e6d607bc7de1a5374fb162bce0549a67dad948519be +aa8a3dd12bd60e3d2e05f9c683cdcb8eab17fc59134815f8d197681b1bcf65108cba63ac5c58ee632b1e5ed6bba5d474 +8b955f1d894b3aefd883fb4b65f14cd37fc2b9db77db79273f1700bef9973bf3fd123897ea2b7989f50003733f8f7f21 +ac79c00ddac47f5daf8d9418d798d8af89fc6f1682e7e451f71ea3a405b0d36af35388dd2a332af790bc83ca7b819328 +a0d44dd2a4438b809522b130d0938c3fe7c5c46379365dbd1810a170a9aa5818e1c783470dd5d0b6d4ac7edbb7330910 +a30b69e39ad43dd540a43c521f05b51b5f1b9c4eed54b8162374ae11eac25da4f5756e7b70ce9f3c92c2eeceee7431ed +ac43220b762c299c7951222ea19761ab938bf38e4972deef58ed84f4f9c68c230647cf7506d7cbfc08562fcca55f0485 +b28233b46a8fb424cfa386a845a3b5399d8489ceb83c8f3e05c22c934798d639c93718b7b68ab3ce24c5358339e41cbb +ac30d50ee8ce59a10d4b37a3a35e62cdb2273e5e52232e202ca7d7b8d09d28958ee667fae41a7bb6cdc6fe8f6e6c9c85 +b199842d9141ad169f35cc7ff782b274cbaa645fdb727761e0a89edbf0d781a15f8218b4bf4eead326f2903dd88a9cc1 +85e018c7ddcad34bb8285a737c578bf741ccd547e68c734bdb3808380e12c5d4ef60fc896b497a87d443ff9abd063b38 +8c856e6ba4a815bdb891e1276f93545b7072f6cb1a9aa6aa5cf240976f29f4dee01878638500a6bf1daf677b96b54343 +b8a47555fa8710534150e1a3f13eab33666017be6b41005397afa647ea49708565f2b86b77ad4964d140d9ced6b4d585 +8cd1f1db1b2f4c85a3f46211599caf512d5439e2d8e184663d7d50166fd3008f0e9253272f898d81007988435f715881 +b1f34b14612c973a3eceb716dc102b82ab18afef9de7630172c2780776679a7706a4874e1df3eaadf541fb009731807f +b25464af9cff883b55be2ff8daf610052c02df9a5e147a2cf4df6ce63edcdee6dc535c533590084cc177da85c5dc0baa +91c3c4b658b42d8d3448ae1415d4541d02379a40dc51e36a59bd6e7b9ba3ea51533f480c7c6e8405250ee9b96a466c29 +86dc027b95deb74c36a58a1333a03e63cb5ae22d3b29d114cfd2271badb05268c9d0c819a977f5e0c6014b00c1512e3a +ae0e6ff58eb5fa35da5107ebeacf222ab8f52a22bb1e13504247c1dfa65320f40d97b0e6b201cb6613476687cb2f0681 +8f13415d960b9d7a1d93ef28afc2223e926639b63bdefce0f85e945dfc81670a55df288893a0d8b3abe13c5708f82f91 +956f67ca49ad27c1e3a68c1faad5e7baf0160c459094bf6b7baf36b112de935fdfd79fa4a9ea87ea8de0ac07272969f4 +835e45e4a67df9fb51b645d37840b3a15c171d571a10b03a406dd69d3c2f22df3aa9c5cbe1e73f8d767ce01c4914ea9a +919b938e56d4b32e2667469d0bdccb95d9dda3341aa907683ee70a14bbbe623035014511c261f4f59b318b610ac90aa3 +96b48182121ccd9d689bf1dfdc228175564cd68dc904a99c808a7f0053a6f636c9d953e12198bdf2ea49ea92772f2e18 +ac5e5a941d567fa38fdbcfa8cf7f85bb304e3401c52d88752bcd516d1fa9bac4572534ea2205e38423c1df065990790f +ac0bd594fb85a8d4fc26d6df0fa81f11919401f1ecf9168b891ec7f061a2d9368af99f7fd8d9b43b2ce361e7b8482159 +83d92c69ca540d298fe80d8162a1c7af3fa9b49dfb69e85c1d136a3ec39fe419c9fa78e0bb6d96878771fbd37fe92e40 +b35443ae8aa66c763c2db9273f908552fe458e96696b90e41dd509c17a5c04ee178e3490d9c6ba2dc0b8f793c433c134 +923b2d25aa45b2e580ffd94cbb37dc8110f340f0f011217ee1bd81afb0714c0b1d5fb4db86006cdd2457563276f59c59 +96c9125d38fca1a61ac21257b696f8ac3dae78def50285e44d90ea293d591d1c58f703540a7e4e99e070afe4646bbe15 +b57946b2332077fbcdcb406b811779aefd54473b5559a163cd65cb8310679b7e2028aa55c12a1401fdcfcac0e6fae29a +845daedc5cf972883835d7e13c937b63753c2200324a3b8082a6c4abb4be06c5f7c629d4abe4bfaf1d80a1f073eb6ce6 +91a55dfd0efefcd03dc6dacc64ec93b8d296cb83c0ee72400a36f27246e7f2a60e73b7b70ba65819e9cfb73edb7bd297 +8874606b93266455fe8fdd25df9f8d2994e927460af06f2e97dd4d2d90db1e6b06d441b72c2e76504d753badca87fb37 +8ee99e6d231274ff9252c0f4e84549da173041299ad1230929c3e3d32399731c4f20a502b4a307642cac9306ccd49d3c +8836497714a525118e20849d6933bb8535fb6f72b96337d49e3133d936999c90a398a740f42e772353b5f1c63581df6d +a6916945e10628f7497a6cdc5e2de113d25f7ade3e41e74d3de48ccd4fce9f2fa9ab69645275002e6f49399b798c40af +9597706983107eb23883e0812e1a2c58af7f3499d50c6e29b455946cb9812fde1aa323d9ed30d1c0ffd455abe32303cd +a24ee89f7f515cc33bdbdb822e7d5c1877d337f3b2162303cfc2dae028011c3a267c5cb4194afa63a4856a6e1c213448 +8cd25315e4318801c2776824ae6e7d543cb85ed3bc2498ba5752df2e8142b37653cf9e60104d674be3aeb0a66912e97a +b5085ecbe793180b40dbeb879f4c976eaaccaca3a5246807dced5890e0ed24d35f3f86955e2460e14fb44ff5081c07ba +960188cc0b4f908633a6840963a6fa2205fc42c511c6c309685234911c5304ef4c304e3ae9c9c69daa2fb6a73560c256 +a32d0a70bf15d569b4cda5aebe3e41e03c28bf99cdd34ffa6c5d58a097f322772acca904b3a47addb6c7492a7126ebac +977f72d06ad72d4aa4765e0f1f9f4a3231d9f030501f320fe7714cc5d329d08112789fa918c60dd7fdb5837d56bb7fc6 +99fa038bb0470d45852bb871620d8d88520adb701712fcb1f278fed2882722b9e729e6cdce44c82caafad95e37d0e6f7 +b855e8f4fc7634ada07e83b6c719a1e37acb06394bc8c7dcab7747a8c54e5df3943915f021364bd019fdea103864e55f +88bc2cd7458532e98c596ef59ea2cf640d7cc31b4c33cef9ed065c078d1d4eb49677a67de8e6229cc17ea48bace8ee5a +aaa78a3feaa836d944d987d813f9b9741afb076e6aca1ffa42682ab06d46d66e0c07b8f40b9dbd63e75e81efa1ef7b08 +b7b080420cc4d808723b98b2a5b7b59c81e624ab568ecdfdeb8bf3aa151a581b6f56e983ef1b6f909661e25db40b0c69 +abee85c462ac9a2c58e54f06c91b3e5cd8c5f9ab5b5deb602b53763c54826ed6deb0d6db315a8d7ad88733407e8d35e2 +994d075c1527407547590df53e9d72dd31f037c763848d1662eebd4cefec93a24328c986802efa80e038cb760a5300f5 +ab8777640116dfb6678e8c7d5b36d01265dfb16321abbfc277da71556a34bb3be04bc4ae90124ed9c55386d2bfb3bda0 +967e3a828bc59409144463bcf883a3a276b5f24bf3cbfdd7a42343348cba91e00b46ac285835a9b91eef171202974204 +875a9f0c4ffe5bb1d8da5e3c8e41d0397aa6248422a628bd60bfae536a651417d4e8a7d2fb98e13f2dad3680f7bd86d3 +acaa330c3e8f95d46b1880126572b238dbb6d04484d2cd4f257ab9642d8c9fc7b212188b9c7ac9e0fd135c520d46b1bf +aceb762edbb0f0c43dfcdb01ea7a1ac5918ca3882b1e7ebc4373521742f1ed5250d8966b498c00b2b0f4d13212e6dd0b +81d072b4ad258b3646f52f399bced97c613b22e7ad76373453d80b1650c0ca87edb291a041f8253b649b6e5429bb4cff +980a47d27416ac39c7c3a0ebe50c492f8c776ea1de44d5159ac7d889b6d554357f0a77f0e5d9d0ff41aae4369eba1fc2 +8b4dfd5ef5573db1476d5e43aacfb5941e45d6297794508f29c454fe50ea622e6f068b28b3debe8635cf6036007de2e3 +a60831559d6305839515b68f8c3bc7abbd8212cc4083502e19dd682d56ca37c9780fc3ce4ec2eae81ab23b221452dc57 +951f6b2c1848ced9e8a2339c65918e00d3d22d3e59a0a660b1eca667d18f8430d737884e9805865ef3ed0fe1638a22d9 +b02e38fe790b492aa5e89257c4986c9033a8b67010fa2add9787de857d53759170fdd67715ca658220b4e14b0ca48124 +a51007e4346060746e6b0e4797fc08ef17f04a34fe24f307f6b6817edbb8ce2b176f40771d4ae8a60d6152cbebe62653 +a510005b05c0b305075b27b243c9d64bcdce85146b6ed0e75a3178b5ff9608213f08c8c9246f2ca6035a0c3e31619860 +aaff4ef27a7a23be3419d22197e13676d6e3810ceb06a9e920d38125745dc68a930f1741c9c2d9d5c875968e30f34ab5 +864522a9af9857de9814e61383bebad1ba9a881696925a0ea6bfc6eff520d42c506bbe5685a9946ed710e889765be4a0 +b63258c080d13f3b7d5b9f3ca9929f8982a6960bdb1b0f8676f4dca823971601672f15e653917bf5d3746bb220504913 +b51ce0cb10869121ae310c7159ee1f3e3a9f8ad498827f72c3d56864808c1f21fa2881788f19ece884d3f705cd7bd0c5 +95d9cecfc018c6ed510e441cf84c712d9909c778c16734706c93222257f64dcd2a9f1bd0b400ca271e22c9c487014274 +8beff4d7d0140b86380ff4842a9bda94c2d2be638e20ac68a4912cb47dbe01a261857536375208040c0554929ced1ddc +891ff49258749e2b57c1e9b8e04b12c77d79c3308b1fb615a081f2aacdfb4b39e32d53e069ed136fdbd43c53b87418fa +9625cad224e163d387738825982d1e40eeff35fe816d10d7541d15fdc4d3eee48009090f3faef4024b249205b0b28f72 +8f3947433d9bd01aa335895484b540a9025a19481a1c40b4f72dd676bfcf332713714fd4010bde936eaf9470fd239ed0 +a00ec2d67789a7054b53f0e858a8a232706ccc29a9f3e389df7455f1a51a2e75801fd78469a13dbc25d28399ae4c6182 +a3f65884506d4a62b8775a0ea0e3d78f5f46bc07910a93cd604022154eabdf1d73591e304d61edc869e91462951975e1 +a14eef4fd5dfac311713f0faa9a60415e3d30b95a4590cbf95f2033dffb4d16c02e7ceff3dcd42148a4e3bc49cce2dd4 +8afa11c0eef3c540e1e3460bc759bb2b6ea90743623f88e62950c94e370fe4fd01c22b6729beba4dcd4d581198d9358f +afb05548a69f0845ffcc5f5dc63e3cdb93cd270f5655173b9a950394b0583663f2b7164ba6df8d60c2e775c1d9f120af +97f179e01a947a906e1cbeafa083960bc9f1bade45742a3afee488dfb6011c1c6e2db09a355d77f5228a42ccaa7bdf8e +8447fca4d35f74b3efcbd96774f41874ca376bf85b79b6e66c92fa3f14bdd6e743a051f12a7fbfd87f319d1c6a5ce217 +a57ca39c23617cd2cf32ff93b02161bd7baf52c4effb4679d9d5166406e103bc8f3c6b5209e17c37dbb02deb8bc72ddd +9667c7300ff80f0140be002b0e36caab07aaee7cce72679197c64d355e20d96196acaf54e06e1382167d081fe6f739c1 +828126bb0559ce748809b622677267ca896fa2ee76360fd2c02990e6477e06a667241379ca7e65d61a5b64b96d7867de +8b8835dea6ba8cf61c91f01a4b3d2f8150b687a4ee09b45f2e5fc8f80f208ae5d142d8e3a18153f0722b90214e60c5a7 +a98e8ff02049b4da386e3ee93db23bbb13dfeb72f1cfde72587c7e6d962780b7671c63e8ac3fbaeb1a6605e8d79e2f29 +87a4892a0026d7e39ef3af632172b88337cb03669dea564bcdb70653b52d744730ebb5d642e20cb627acc9dbb547a26b +877352a22fc8052878a57effc159dac4d75fe08c84d3d5324c0bab6d564cdf868f33ceee515eee747e5856b62cfa0cc7 +8b801ba8e2ff019ee62f64b8cb8a5f601fc35423eb0f9494b401050103e1307dc584e4e4b21249cd2c686e32475e96c3 +a9e7338d6d4d9bfec91b2af28a8ed13b09415f57a3a00e5e777c93d768fdb3f8e4456ae48a2c6626b264226e911a0e28 +99c05fedf40ac4726ed585d7c1544c6e79619a0d3fb6bda75a08c7f3c0008e8d5e19ed4da48de3216135f34a15eba17c +a61cce8a1a8b13a4a650fdbec0eeea8297c352a8238fb7cac95a0df18ed16ee02a3daa2de108fa122aca733bd8ad7855 +b97f37da9005b440b4cb05870dd881bf8491fe735844f2d5c8281818583b38e02286e653d9f2e7fa5e74c3c3eb616540 +a72164a8554da8e103f692ac5ebb4aece55d5194302b9f74b6f2a05335b6e39beede0bf7bf8c5bfd4d324a784c5fb08c +b87e8221c5341cd9cc8bb99c10fe730bc105550f25ed4b96c0d45e6142193a1b2e72f1b3857373a659b8c09be17b3d91 +a41fb1f327ef91dcb7ac0787918376584890dd9a9675c297c45796e32d6e5985b12f9b80be47fc3a8596c245f419d395 +90dafa3592bdbb3465c92e2a54c2531822ba0459d45d3e7a7092fa6b823f55af28357cb51896d4ec2d66029c82f08e26 +a0a9adc872ebc396557f484f1dd21954d4f4a21c4aa5eec543f5fa386fe590839735c01f236574f7ff95407cd12de103 +b8c5c940d58be7538acf8672852b5da3af34f82405ef2ce8e4c923f1362f97fc50921568d0fd2fe846edfb0823e62979 +85aaf06a8b2d0dac89dafd00c28533f35dbd074978c2aaa5bef75db44a7b12aeb222e724f395513b9a535809a275e30b +81f3cbe82fbc7028c26a6c1808c604c63ba023a30c9f78a4c581340008dbda5ec07497ee849a2183fcd9124f7936af32 +a11ac738de75fd60f15a34209d3825d5e23385796a4c7fc5931822f3f380af977dd0f7b59fbd58eed7777a071e21b680 +85a279c493de03db6fa6c3e3c1b1b29adc9a8c4effc12400ae1128da8421954fa8b75ad19e5388fe4543b76fb0812813 +83a217b395d59ab20db6c4adb1e9713fc9267f5f31a6c936042fe051ce8b541f579442f3dcf0fa16b9e6de9fd3518191 +83a0b86e7d4ed8f9ccdc6dfc8ff1484509a6378fa6f09ed908e6ab9d1073f03011dc497e14304e4e3d181b57de06a5ab +a63ad69c9d25704ce1cc8e74f67818e5ed985f8f851afa8412248b2df5f833f83b95b27180e9e7273833ed0d07113d3b +99b1bc2021e63b561fe44ddd0af81fcc8627a91bfeecbbc989b642bc859abc0c8d636399701aad7bbaf6a385d5f27d61 +b53434adb66f4a807a6ad917c6e856321753e559b1add70824e5c1e88191bf6993fccb9b8b911fc0f473fb11743acacd +97ed3b9e6fb99bf5f945d4a41f198161294866aa23f2327818cdd55cb5dc4c1a8eff29dd8b8d04902d6cd43a71835c82 +b1e808260e368a18d9d10bdea5d60223ba1713b948c782285a27a99ae50cc5fc2c53d407de07155ecc16fb8a36d744a0 +a3eb4665f18f71833fec43802730e56b3ee5a357ea30a888ad482725b169d6f1f6ade6e208ee081b2e2633079b82ba7d +ab8beb2c8353fc9f571c18fdd02bdb977fc883313469e1277b0372fbbb33b80dcff354ca41de436d98d2ed710faa467e +aa9071cfa971e4a335a91ad634c98f2be51544cb21f040f2471d01bb97e1df2277ae1646e1ea8f55b7ba9f5c8c599b39 +80b7dbfdcaf40f0678012acc634eba44ea51181475180d9deb2050dc4f2de395289edd0223018c81057ec79b04b04c49 +89623d7f6cb17aa877af14de842c2d4ab7fd576d61ddd7518b5878620a01ded40b6010de0da3cdf31d837eecf30e9847 +a773bb024ae74dd24761f266d4fb27d6fd366a8634febe8235376b1ae9065c2fe12c769f1d0407867dfbe9f5272c352f +8455a561c3aaa6ba64c881a5e13921c592b3a02e968f4fb24a2243c36202795d0366d9cc1a24e916f84d6e158b7aeac7 +81d8bfc4b283cf702a40b87a2b96b275bdbf0def17e67d04842598610b67ea08c804d400c3e69fa09ea001eaf345b276 +b8f8f82cb11fea1c99467013d7e167ff03deb0c65a677fab76ded58826d1ba29aa7cf9fcd7763615735ea3ad38e28719 +89a6a04baf9cccc1db55179e1650b1a195dd91fb0aebc197a25143f0f393524d2589975e3fbfc2547126f0bced7fd6f2 +b81b2162df045390f04df07cbd0962e6b6ca94275a63edded58001a2f28b2ae2af2c7a6cba4ecd753869684e77e7e799 +a3757f722776e50de45c62d9c4a2ee0f5655a512344c4cbec542d8045332806568dd626a719ef21a4eb06792ca70f204 +8c5590df96ec22179a4e8786de41beb44f987a1dcc508eb341eecbc0b39236fdfad47f108f852e87179ccf4e10091e59 +87502f026ed4e10167419130b88c3737635c5b9074c364e1dd247cef5ef0fc064b4ae99b187e33301e438bbd2fe7d032 +af925a2165e980ced620ff12289129fe17670a90ae0f4db9d4b39bd887ccb1f5d2514ac9ecf910f6390a8fc66bd5be17 +857fca899828cf5c65d26e3e8a6e658542782fc72762b3b9c73514919f83259e0f849a9d4838b40dc905fe43024d0d23 +87ffebdbfb69a9e1007ebac4ffcb4090ff13705967b73937063719aa97908986effcb7262fdadc1ae0f95c3690e3245d +a9ff6c347ac6f4c6ab993b748802e96982eaf489dc69032269568412fc9a79e7c2850dfc991b28211b3522ee4454344b +a65b3159df4ec48bebb67cb3663cd744027ad98d970d620e05bf6c48f230fa45bf17527fe726fdf705419bb7a1bb913e +84b97b1e6408b6791831997b03cd91f027e7660fd492a93d95daafe61f02427371c0e237c75706412f442991dfdff989 +ab761c26527439b209af0ae6afccd9340bbed5fbe098734c3145b76c5d2cd7115d9227b2eb523882b7317fbb09180498 +a0479a8da06d7a69c0b0fee60df4e691c19c551f5e7da286dab430bfbcabf31726508e20d26ea48c53365a7f00a3ad34 +a732dfc9baa0f4f40b5756d2e8d8937742999623477458e0bc81431a7b633eefc6f53b3b7939fe0a020018549c954054 +901502436a1169ba51dc479a5abe7c8d84e0943b16bc3c6a627b49b92cd46263c0005bc324c67509edd693f28e612af1 +b627aee83474e7f84d1bab9b7f6b605e33b26297ac6bbf52d110d38ba10749032bd551641e73a383a303882367af429b +95108866745760baef4a46ef56f82da6de7e81c58b10126ebd2ba2cd13d339f91303bf2fb4dd104a6956aa3b13739503 +899ed2ade37236cec90056f3569bc50f984f2247792defafcceb49ad0ca5f6f8a2f06573705300e07f0de0c759289ff5 +a9f5eee196d608efe4bcef9bf71c646d27feb615e21252cf839a44a49fd89da8d26a758419e0085a05b1d59600e2dc42 +b36c6f68fed6e6c85f1f4a162485f24817f2843ec5cbee45a1ebfa367d44892e464949c6669f7972dc7167af08d55d25 +aaaede243a9a1b6162afbc8f571a52671a5a4519b4062e3f26777664e245ba873ed13b0492c5dbf0258c788c397a0e9e +972b4fb39c31cbe127bf9a32a5cc10d621ebdd9411df5e5da3d457f03b2ab2cd1f6372d8284a4a9400f0b06ecdbfd38e +8f6ca1e110e959a4b1d9a5ce5f212893cec21db40d64d5ac4d524f352d72198f923416a850bf845bc5a22a79c0ea2619 +a0f3c93b22134f66f04b2553a53b738644d1665ceb196b8494b315a4c28236fb492017e4a0de4224827c78e42f9908b7 +807fb5ee74f6c8735b0b5ca07e28506214fe4047dbeb00045d7c24f7849e98706aea79771241224939cb749cf1366c7d +915eb1ff034224c0b645442cdb7d669303fdc00ca464f91aaf0b6fde0b220a3a74ff0cb043c26c9f3a5667b3fdaa9420 +8fda6cef56ed33fefffa9e6ac8e6f76b1af379f89761945c63dd448801f7bb8ca970504a7105fac2f74f652ccff32327 +87380cffdcffb1d0820fa36b63cc081e72187f86d487315177d4d04da4533eb19a0e2ff6115ceab528887819c44a5164 +8cd89e03411a18e7f16f968b89fb500c36d47d229f6487b99e62403a980058db5925ce249206743333538adfad168330 +974451b1df33522ce7056de9f03e10c70bf302c44b0741a59df3d6877d53d61a7394dcee1dd46e013d7cb9d73419c092 +98c35ddf645940260c490f384a49496a7352bb8e3f686feed815b1d38f59ded17b1ad6e84a209e773ed08f7b8ff1e4c2 +963f386cf944bb9b2ddebb97171b64253ea0a2894ac40049bdd86cda392292315f3a3d490ca5d9628c890cfb669f0acb +8d507712152babd6d142ee682638da8495a6f3838136088df9424ef50d5ec28d815a198c9a4963610b22e49b4cdf95e9 +83d4bc6b0be87c8a4f1e9c53f257719de0c73d85b490a41f7420e777311640937320557ff2f1d9bafd1daaa54f932356 +82f5381c965b7a0718441131c4d13999f4cdce637698989a17ed97c8ea2e5bdb5d07719c5f7be8688edb081b23ede0f4 +a6ebecab0b72a49dfd01d69fa37a7f74d34fb1d4fef0aa10e3d6fceb9eccd671225c230af89f6eb514250e41a5f91f52 +846d185bdad6e11e604df7f753b7a08a28b643674221f0e750ebdb6b86ec584a29c869e131bca868972a507e61403f6a +85a98332292acb744bd1c0fd6fdcf1f889a78a2c9624d79413ffa194cc8dfa7821a4b60cde8081d4b5f71f51168dd67f +8f7d97c3b4597880d73200d074eb813d95432306e82dafc70b580b8e08cb8098b70f2d07b4b3ac6a4d77e92d57035031 +8185439c8751e595825d7053518cbe121f191846a38d4dbcb558c3f9d7a3104f3153401adaaaf27843bbe2edb504bfe3 +b3c00d8ece1518fca6b1215a139b0a0e26d9cba1b3a424f7ee59f30ce800a5db967279ed60958dd1f3ee69cf4dd1b204 +a2e6cb6978e883f9719c3c0d44cfe8de0cc6f644b98f98858433bea8bbe7b612c8aca5952fccce4f195f9d54f9722dc2 +99663087e3d5000abbec0fbda4e7342ec38846cc6a1505191fb3f1a337cb369455b7f8531a6eb8b0f7b2c4baf83cbe2b +ab0836c6377a4dbc7ca6a4d6cf021d4cd60013877314dd05f351706b128d4af6337711ed3443cb6ca976f40d74070a9a +87abfd5126152fd3bac3c56230579b489436755ea89e0566aa349490b36a5d7b85028e9fb0710907042bcde6a6f5d7e3 +974ba1033f75f60e0cf7c718a57ae1da3721cf9d0fb925714c46f027632bdd84cd9e6de4cf4d00bc55465b1c5ebb7384 +a607b49d73689ac64f25cec71221d30d53e781e1100d19a2114a21da6507a60166166369d860bd314acb226596525670 +a7c2b0b915d7beba94954f2aa7dd08ec075813661e2a3ecca5d28a0733e59583247fed9528eb28aba55b972cdbaf06eb +b8b3123e44128cc8efbe3270f2f94e50ca214a4294c71c3b851f8cbb70cb67fe9536cf07d04bf7fe380e5e3a29dd3c15 +a59a07e343b62ad6445a0859a32b58c21a593f9ddbfe52049650f59628c93715aa1f4e1f45b109321756d0eeec8a5429 +94f51f8a4ed18a6030d0aaa8899056744bd0e9dc9ac68f62b00355cddab11da5da16798db75f0bfbce0e5bdfe750c0b6 +97460a97ca1e1fa5ce243b81425edc0ec19b7448e93f0b55bc9785eedeeafe194a3c8b33a61a5c72990edf375f122777 +8fa859a089bc17d698a7ee381f37ce9beadf4e5b44fce5f6f29762bc04f96faff5d58c48c73631290325f05e9a1ecf49 +abdf38f3b20fc95eff31de5aa9ef1031abfa48f1305ee57e4d507594570401503476d3bcc493838fc24d6967a3082c7f +b8914bfb82815abb86da35c64d39ab838581bc0bf08967192697d9663877825f2b9d6fbdcf9b410463482b3731361aef +a8187f9d22b193a5f578999954d6ec9aa9b32338ccadb8a3e1ce5bad5ea361d69016e1cdfac44e9d6c54e49dd88561b9 +aac262cb7cba7fd62c14daa7b39677cabc1ef0947dd06dd89cac8570006a200f90d5f0353e84f5ff03179e3bebe14231 +a630ef5ece9733b8c46c0a2df14a0f37647a85e69c63148e79ffdcc145707053f9f9d305c3f1cf3c7915cb46d33abd07 +b102c237cb2e254588b6d53350dfda6901bd99493a3fbddb4121d45e0b475cf2663a40d7b9a75325eda83e4ba1e68cb3 +86a930dd1ddcc16d1dfa00aa292cb6c2607d42c367e470aa920964b7c17ab6232a7108d1c2c11fc40fb7496547d0bbf8 +a832fdc4500683e72a96cce61e62ac9ee812c37fe03527ad4cf893915ca1962cee80e72d4f82b20c8fc0b764376635a1 +88ad985f448dabb04f8808efd90f273f11f5e6d0468b5489a1a6a3d77de342992a73eb842d419034968d733f101ff683 +98a8538145f0d86f7fbf9a81c9140f6095c5bdd8960b1c6f3a1716428cd9cca1bf8322e6d0af24e6169abcf7df2b0ff6 +9048c6eba5e062519011e177e955a200b2c00b3a0b8615bdecdebc217559d41058d3315f6d05617be531ef0f6aef0e51 +833bf225ab6fc68cdcacf1ec1b50f9d05f5410e6cdcd8d56a3081dc2be8a8d07b81534d1ec93a25c2e270313dfb99e3b +a84bcd24c3da5e537e64a811b93c91bfc84d7729b9ead7f79078989a6eb76717d620c1fad17466a0519208651e92f5ff +b7cdd0a3fbd79aed93e1b5a44ca44a94e7af5ed911e4492f332e3a5ed146c7286bde01b52276a2fcc02780d2109874dd +8a19a09854e627cb95750d83c20c67442b66b35896a476358f993ba9ac114d32c59c1b3d0b8787ee3224cf3888b56c64 +a9abd5afb8659ee52ada8fa5d57e7dd355f0a7350276f6160bec5fbf70d5f99234dd179eb221c913e22a49ec6d267846 +8c13c4274c0d30d184e73eaf812200094bbbd57293780bdadbceb262e34dee5b453991e7f37c7333a654fc71c69d6445 +a4320d73296ff8176ce0127ca1921c450e2a9c06eff936681ebaffb5a0b05b17fded24e548454de89aca2dcf6d7a9de4 +b2b8b3e15c1f645f07783e5628aba614e60157889db41d8161d977606788842b67f83f361eae91815dc0abd84e09abd5 +ad26c3aa35ddfddc15719b8bb6c264aaec7065e88ac29ba820eb61f220fef451609a7bb037f3722d022e6c86e4f1dc88 +b8615bf43e13ae5d7b8dd903ce37190800cd490f441c09b22aa29d7a29ed2c0417b7a08ead417868f1de2589deaadd80 +8d3425e1482cd1e76750a76239d33c06b3554c3c3c87c15cb7ab58b1cee86a4c5c4178b44e23f36928365a1b484bde02 +806893a62e38c941a7dd6f249c83af16596f69877cc737d8f73f6b8cd93cbc01177a7a276b2b8c6b0e5f2ad864db5994 +86618f17fa4b0d65496b661bbb5ba3bc3a87129d30a4b7d4f515b904f4206ca5253a41f49fd52095861e5e065ec54f21 +9551915da1304051e55717f4c31db761dcdcf3a1366c89a4af800a9e99aca93a357bf928307f098e62b44a02cb689a46 +8f79c4ec0ec1146cb2a523b52fe33def90d7b5652a0cb9c2d1c8808a32293e00aec6969f5b1538e3a94cd1efa3937f86 +a0c03e329a707300081780f1e310671315b4c6a4cedcb29697aedfabb07a9d5df83f27b20e9c44cf6b16e39d9ded5b98 +86a7cfa7c8e7ce2c01dd0baec2139e97e8e090ad4e7b5f51518f83d564765003c65968f85481bbb97cb18f005ccc7d9f +a33811770c6dfda3f7f74e6ad0107a187fe622d61b444bbd84fd7ef6e03302e693b093df76f6ab39bb4e02afd84a575a +85480f5c10d4162a8e6702b5e04f801874d572a62a130be94b0c02b58c3c59bdcd48cd05f0a1c2839f88f06b6e3cd337 +8e181011564b17f7d787fe0e7f3c87f6b62da9083c54c74fd6c357a1f464c123c1d3d8ade3cf72475000b464b14e2be3 +8ee178937294b8c991337e0621ab37e9ffa4ca2bdb3284065c5e9c08aad6785d50cf156270ff9daf9a9127289710f55b +8bd1e8e2d37379d4b172f1aec96f2e41a6e1393158d7a3dbd9a95c8dd4f8e0b05336a42efc11a732e5f22b47fc5c271d +8f3da353cd487c13136a85677de8cedf306faae0edec733cf4f0046f82fa4639db4745b0095ff33a9766aba50de0cbcf +8d187c1e97638df0e4792b78e8c23967dac43d98ea268ca4aabea4e0fa06cb93183fd92d4c9df74118d7cc27bf54415e +a4c992f08c2f8bac0b74b3702fb0c75c9838d2ce90b28812019553d47613c14d8ce514d15443159d700b218c5a312c49 +a6fd1874034a34c3ea962a316c018d9493d2b3719bb0ec4edbc7c56b240802b2228ab49bee6f04c8a3e9f6f24a48c1c2 +b2efed8e799f8a15999020900dc2c58ece5a3641c90811b86a5198e593d7318b9d53b167818ccdfbe7df2414c9c34011 +995ff7de6181ddf95e3ead746089c6148da3508e4e7a2323c81785718b754d356789b902e7e78e2edc6b0cbd4ff22c78 +944073d24750a9068cbd020b834afc72d2dde87efac04482b3287b40678ad07588519a4176b10f2172a2c463d063a5cd +99db4b1bb76475a6fd75289986ef40367960279524378cc917525fb6ba02a145a218c1e9caeb99332332ab486a125ac0 +89fce4ecd420f8e477af4353b16faabb39e063f3f3c98fde2858b1f2d1ef6eed46f0975a7c08f233b97899bf60ccd60a +8c09a4f07a02b80654798bc63aada39fd638d3e3c4236ccd8a5ca280350c31e4a89e5f4c9aafb34116e71da18c1226b8 +85325cfa7ded346cc51a2894257eab56e7488dbff504f10f99f4cd2b630d913003761a50f175ed167e8073f1b6b63fb0 +b678b4fbec09a8cc794dcbca185f133578f29e354e99c05f6d07ac323be20aecb11f781d12898168e86f2e0f09aca15e +a249cfcbca4d9ba0a13b5f6aac72bf9b899adf582f9746bb2ad043742b28915607467eb794fca3704278f9136f7642be +9438e036c836a990c5e17af3d78367a75b23c37f807228362b4d13e3ddcb9e431348a7b552d09d11a2e9680704a4514f +925ab70450af28c21a488bfb5d38ac994f784cf249d7fd9ad251bb7fd897a23e23d2528308c03415074d43330dc37ef4 +a290563904d5a8c0058fc8330120365bdd2ba1fdbaef7a14bc65d4961bb4217acfaed11ab82669e359531f8bf589b8db +a7e07a7801b871fc9b981a71e195a3b4ba6b6313bc132b04796a125157e78fe5c11a3a46cf731a255ac2d78a4ae78cd0 +b26cd2501ee72718b0eebab6fb24d955a71f363f36e0f6dff0ab1d2d7836dab88474c0cef43a2cc32701fca7e82f7df3 +a1dc3b6c968f3de00f11275092290afab65b2200afbcfa8ddc70e751fa19dbbc300445d6d479a81bda3880729007e496 +a9bc213e28b630889476a095947d323b9ac6461dea726f2dc9084473ae8e196d66fb792a21905ad4ec52a6d757863e7d +b25d178df8c2df8051e7c888e9fa677fde5922e602a95e966db9e4a3d6b23ce043d7dc48a5b375c6b7c78e966893e8c3 +a1c8d88d72303692eaa7adf68ea41de4febec40cc14ae551bb4012afd786d7b6444a3196b5d9d5040655a3366d96b7cd +b22bd44f9235a47118a9bbe2ba5a2ba9ec62476061be2e8e57806c1a17a02f9a51403e849e2e589520b759abd0117683 +b8add766050c0d69fe81d8d9ea73e1ed05f0135d093ff01debd7247e42dbb86ad950aceb3b50b9af6cdc14ab443b238f +af2cf95f30ef478f018cf81d70d47d742120b09193d8bb77f0d41a5d2e1a80bfb467793d9e2471b4e0ad0cb2c3b42271 +8af5ef2107ad284e246bb56e20fef2a255954f72de791cbdfd3be09f825298d8466064f3c98a50496c7277af32b5c0bc +85dc19558572844c2849e729395a0c125096476388bd1b14fa7f54a7c38008fc93e578da3aac6a52ff1504d6ca82db05 +ae8c9b43c49572e2e166d704caf5b4b621a3b47827bb2a3bcd71cdc599bba90396fd9a405261b13e831bb5d44c0827d7 +a7ba7efede25f02e88f6f4cbf70643e76784a03d97e0fbd5d9437c2485283ad7ca3abb638a5f826cd9f6193e5dec0b6c +94a9d122f2f06ef709fd8016fd4b712d88052245a65a301f5f177ce22992f74ad05552b1f1af4e70d1eac62cef309752 +82d999b3e7cf563833b8bc028ff63a6b26eb357dfdb3fd5f10e33a1f80a9b2cfa7814d871b32a7ebfbaa09e753e37c02 +aec6edcde234df502a3268dd2c26f4a36a2e0db730afa83173f9c78fcb2b2f75510a02b80194327b792811caefda2725 +94c0bfa66c9f91d462e9194144fdd12d96f9bbe745737e73bab8130607ee6ea9d740e2cfcbbd00a195746edb6369ee61 +ab7573dab8c9d46d339e3f491cb2826cabe8b49f85f1ede78d845fc3995537d1b4ab85140b7d0238d9c24daf0e5e2a7e +87e8b16832843251fe952dadfd01d41890ed4bb4b8fa0254550d92c8cced44368225eca83a6c3ad47a7f81ff8a80c984 +9189d2d9a7c64791b19c0773ad4f0564ce6bea94aa275a917f78ad987f150fdb3e5e26e7fef9982ac184897ecc04683f +b3661bf19e2da41415396ae4dd051a9272e8a2580b06f1a1118f57b901fa237616a9f8075af1129af4eabfefedbe2f1c +af43c86661fb15daf5d910a4e06837225e100fb5680bd3e4b10f79a2144c6ec48b1f8d6e6b98e067d36609a5d038889a +82ac0c7acaa83ddc86c5b4249aae12f28155989c7c6b91e5137a4ce05113c6cbc16f6c44948b0efd8665362d3162f16a +8f268d1195ab465beeeb112cd7ffd5d5548559a8bc01261106d3555533fc1971081b25558d884d552df0db1cddda89d8 +8ef7caa5521f3e037586ce8ac872a4182ee20c7921c0065ed9986c047e3dda08294da1165f385d008b40d500f07d895f +8c2f98f6880550573fad46075d3eba26634b5b025ce25a0b4d6e0193352c8a1f0661064027a70fe8190b522405f9f4e3 +b7653f353564feb164f0f89ec7949da475b8dad4a4d396d252fc2a884f6932d027b7eb2dc4d280702c74569319ed701a +a026904f4066333befd9b87a8fad791d014096af60cdd668ef919c24dbe295ff31f7a790e1e721ba40cf5105abca67f4 +988f982004ada07a22dd345f2412a228d7a96b9cae2c487de42e392afe1e35c2655f829ce07a14629148ce7079a1f142 +9616add009067ed135295fb74d5b223b006b312bf14663e547a0d306694ff3a8a7bb9cfc466986707192a26c0bce599f +ad4c425de9855f6968a17ee9ae5b15e0a5b596411388cf976df62ecc6c847a6e2ddb2cea792a5f6e9113c2445dba3e5c +b698ac9d86afa3dc69ff8375061f88e3b0cff92ff6dfe747cebaf142e813c011851e7a2830c10993b715e7fd594604a9 +a386fa189847bb3b798efca917461e38ead61a08b101948def0f82cd258b945ed4d45b53774b400af500670149e601b7 +905c95abda2c68a6559d8a39b6db081c68cef1e1b4be63498004e1b2f408409be9350b5b5d86a30fd443e2b3e445640a +9116dade969e7ce8954afcdd43e5cab64dc15f6c1b8da9d2d69de3f02ba79e6c4f6c7f54d6bf586d30256ae405cd1e41 +a3084d173eacd08c9b5084a196719b57e47a0179826fda73466758235d7ecdb87cbcf097bd6b510517d163a85a7c7edd +85bb00415ad3c9be99ff9ba83672cc59fdd24356b661ab93713a3c8eab34e125d8867f628a3c3891b8dc056e69cd0e83 +8d58541f9f39ed2ee4478acce5d58d124031338ec11b0d55551f00a5a9a6351faa903a5d7c132dc5e4bb026e9cbd18e4 +a622adf72dc250e54f672e14e128c700166168dbe0474cecb340da175346e89917c400677b1bc1c11fcc4cc26591d9db +b3f865014754b688ca8372e8448114fff87bf3ca99856ab9168894d0c4679782c1ced703f5b74e851b370630f5e6ee86 +a7e490b2c40c2446fcd91861c020da9742c326a81180e38110558bb5d9f2341f1c1885e79b364e6419023d1cbdc47380 +b3748d472b1062e54572badbb8e87ac36534407f74932e7fc5b8392d008e8e89758f1671d1e4d30ab0fa40551b13bb5e +89898a5c5ec4313aabc607b0049fd1ebad0e0c074920cf503c9275b564d91916c2c446d3096491c950b7af3ac5e4b0ed +8eb8c83fef2c9dd30ea44e286e9599ec5c20aba983f702e5438afe2e5b921884327ad8d1566c72395587efac79ca7d56 +b92479599e806516ce21fb0bd422a1d1d925335ebe2b4a0a7e044dd275f30985a72b97292477053ac5f00e081430da80 +a34ae450a324fe8a3c25a4d653a654f9580ed56bbea213b8096987bbad0f5701d809a17076435e18017fea4d69f414bc +81381afe6433d62faf62ea488f39675e0091835892ecc238e02acf1662669c6d3962a71a3db652f6fe3bc5f42a0e5dc5 +a430d475bf8580c59111103316fe1aa79c523ea12f1d47a976bbfae76894717c20220e31cf259f08e84a693da6688d70 +b842814c359754ece614deb7d184d679d05d16f18a14b288a401cef5dad2cf0d5ee90bad487b80923fc5573779d4e4e8 +971d9a2627ff2a6d0dcf2af3d895dfbafca28b1c09610c466e4e2bff2746f8369de7f40d65b70aed135fe1d72564aa88 +8f4ce1c59e22b1ce7a0664caaa7e53735b154cfba8d2c5cc4159f2385843de82ab58ed901be876c6f7fce69cb4130950 +86cc9dc321b6264297987000d344fa297ef45bcc2a4df04e458fe2d907ad304c0ea2318e32c3179af639a9a56f3263cf +8229e0876dfe8f665c3fb19b250bd89d40f039bbf1b331468b403655be7be2e104c2fd07b9983580c742d5462ca39a43 +99299d73066e8eb128f698e56a9f8506dfe4bd014931e86b6b487d6195d2198c6c5bf15cccb40ccf1f8ddb57e9da44a2 +a3a3be37ac554c574b393b2f33d0a32a116c1a7cfeaf88c54299a4da2267149a5ecca71f94e6c0ef6e2f472b802f5189 +a91700d1a00387502cdba98c90f75fbc4066fefe7cc221c8f0e660994c936badd7d2695893fde2260c8c11d5bdcdd951 +8e03cae725b7f9562c5c5ab6361644b976a68bada3d7ca508abca8dfc80a469975689af1fba1abcf21bc2a190dab397d +b01461ad23b2a8fa8a6d241e1675855d23bc977dbf4714add8c4b4b7469ccf2375cec20e80cedfe49361d1a30414ac5b +a2673bf9bc621e3892c3d7dd4f1a9497f369add8cbaa3472409f4f86bd21ac67cfac357604828adfee6ada1835365029 +a042dff4bf0dfc33c178ba1b335e798e6308915128de91b12e5dbbab7c4ac8d60a01f6aea028c3a6d87b9b01e4e74c01 +86339e8a75293e4b3ae66b5630d375736b6e6b6b05c5cda5e73fbf7b2f2bd34c18a1d6cefede08625ce3046e77905cb8 +af2ebe1b7d073d03e3d98bc61af83bf26f7a8c130fd607aa92b75db22d14d016481b8aa231e2c9757695f55b7224a27f +a00ee882c9685e978041fd74a2c465f06e2a42ffd3db659053519925be5b454d6f401e3c12c746e49d910e4c5c9c5e8c +978a781c0e4e264e0dad57e438f1097d447d891a1e2aa0d5928f79a9d5c3faae6f258bc94fdc530b7b2fa6a9932bb193 +aa4b7ce2e0c2c9e9655bf21e3e5651c8503bce27483017b0bf476be743ba06db10228b3a4c721219c0779747f11ca282 +b003d1c459dacbcf1a715551311e45d7dbca83a185a65748ac74d1800bbeaba37765d9f5a1a221805c571910b34ebca8 +95b6e531b38648049f0d19de09b881baa1f7ea3b2130816b006ad5703901a05da57467d1a3d9d2e7c73fb3f2e409363c +a6cf9c06593432d8eba23a4f131bb7f72b9bd51ab6b4b772a749fe03ed72b5ced835a349c6d9920dba2a39669cb7c684 +aa3d59f6e2e96fbb66195bc58c8704e139fa76cd15e4d61035470bd6e305db9f98bcbf61ac1b95e95b69ba330454c1b3 +b57f97959c208361de6d7e86dff2b873068adb0f158066e646f42ae90e650079798f165b5cd713141cd3a2a90a961d9a +a76ee8ed9052f6a7a8c69774bb2597be182942f08115baba03bf8faaeaee526feba86120039fe8ca7b9354c3b6e0a8e6 +95689d78c867724823f564627d22d25010f278674c6d2d0cdb10329169a47580818995d1d727ce46c38a1e47943ebb89 +ab676d2256c6288a88e044b3d9ffd43eb9d5aaee00e8fc60ac921395fb835044c71a26ca948e557fed770f52d711e057 +96351c72785c32e5d004b6f4a1259fb8153d631f0c93fed172f18e8ba438fbc5585c1618deeabd0d6d0b82173c2e6170 +93dd8d3db576418e22536eba45ab7f56967c6c97c64260d6cddf38fb19c88f2ec5cd0e0156f50e70855eee8a2b879ffd +ad6ff16f40f6de3d7a737f8e6cebd8416920c4ff89dbdcd75eabab414af9a6087f83ceb9aff7680aa86bff98bd09c8cc +84de53b11671abc9c38710e19540c5c403817562aeb22a88404cdaff792c1180f717dbdfe8f54940c062c4d032897429 +872231b9efa1cdd447b312099a5c164c560440a9441d904e70f5abfc3b2a0d16be9a01aca5e0a2599a61e19407587e3d +88f44ac27094a2aa14e9dc40b099ee6d68f97385950f303969d889ee93d4635e34dff9239103bdf66a4b7cbba3e7eb7a +a59afebadf0260e832f6f44468443562f53fbaf7bcb5e46e1462d3f328ac437ce56edbca617659ac9883f9e13261fad7 +b1990e42743a88de4deeacfd55fafeab3bc380cb95de43ed623d021a4f2353530bcab9594389c1844b1c5ea6634c4555 +85051e841149a10e83f56764e042182208591396d0ce78c762c4a413e6836906df67f38c69793e158d64fef111407ba3 +9778172bbd9b1f2ec6bbdd61829d7b39a7df494a818e31c654bf7f6a30139899c4822c1bf418dd4f923243067759ce63 +9355005b4878c87804fc966e7d24f3e4b02bed35b4a77369d01f25a3dcbff7621b08306b1ac85b76fe7b4a3eb5f839b1 +8f9dc6a54fac052e236f8f0e1f571ac4b5308a43acbe4cc8183bce26262ddaf7994e41cf3034a4cbeca2c505a151e3b1 +8cc59c17307111723fe313046a09e0e32ea0cce62c13814ab7c6408c142d6a0311d801be4af53fc9240523f12045f9ef +8e6057975ed40a1932e47dd3ac778f72ee2a868d8540271301b1aa6858de1a5450f596466494a3e0488be4fbeb41c840 +812145efbd6559ae13325d56a15940ca4253b17e72a9728986b563bb5acc13ec86453796506ac1a8f12bd6f9e4a288c3 +911da0a6d6489eb3dab2ec4a16e36127e8a291ae68a6c2c9de33e97f3a9b1f00da57a94e270a0de79ecc5ecb45d19e83 +b72ea85973f4b2a7e6e71962b0502024e979a73c18a9111130e158541fa47bbaaf53940c8f846913a517dc69982ba9e1 +a7a56ad1dbdc55f177a7ad1d0af78447dc2673291e34e8ab74b26e2e2e7d8c5fe5dc89e7ef60f04a9508847b5b3a8188 +b52503f6e5411db5d1e70f5fb72ccd6463fa0f197b3e51ca79c7b5a8ab2e894f0030476ada72534fa4eb4e06c3880f90 +b51c7957a3d18c4e38f6358f2237b3904618d58b1de5dec53387d25a63772e675a5b714ad35a38185409931157d4b529 +b86b4266e719d29c043d7ec091547aa6f65bbf2d8d831d1515957c5c06513b72aa82113e9645ad38a7bc3f5383504fa6 +b95b547357e6601667b0f5f61f261800a44c2879cf94e879def6a105b1ad2bbf1795c3b98a90d588388e81789bd02681 +a58fd4c5ae4673fa350da6777e13313d5d37ed1dafeeb8f4f171549765b84c895875d9d3ae6a9741f3d51006ef81d962 +9398dc348d078a604aadc154e6eef2c0be1a93bb93ba7fe8976edc2840a3a318941338cc4d5f743310e539d9b46613d2 +902c9f0095014c4a2f0dccaaab543debba6f4cc82c345a10aaf4e72511725dbed7a34cd393a5f4e48a3e5142b7be84ed +a7c0447849bb44d04a0393a680f6cd390093484a79a147dd238f5d878030d1c26646d88211108e59fe08b58ad20c6fbd +80db045535d6e67a422519f5c89699e37098449d249698a7cc173a26ccd06f60238ae6cc7242eb780a340705c906790c +8e52b451a299f30124505de2e74d5341e1b5597bdd13301cc39b05536c96e4380e7f1b5c7ef076f5b3005a868657f17c +824499e89701036037571761e977654d2760b8ce21f184f2879fda55d3cda1e7a95306b8abacf1caa79d3cc075b9d27f +9049b956b77f8453d2070607610b79db795588c0cec12943a0f5fe76f358dea81e4f57a4692112afda0e2c05c142b26f +81911647d818a4b5f4990bfd4bc13bf7be7b0059afcf1b6839333e8569cdb0172fd2945410d88879349f677abaed5eb3 +ad4048f19b8194ed45b6317d9492b71a89a66928353072659f5ce6c816d8f21e69b9d1817d793effe49ca1874daa1096 +8d22f7b2ddb31458661abd34b65819a374a1f68c01fc6c9887edeba8b80c65bceadb8f57a3eb686374004b836261ef67 +92637280c259bc6842884db3d6e32602a62252811ae9b019b3c1df664e8809ffe86db88cfdeb8af9f46435c9ee790267 +a2f416379e52e3f5edc21641ea73dc76c99f7e29ea75b487e18bd233856f4c0183429f378d2bfc6cd736d29d6cadfa49 +882cb6b76dbdc188615dcf1a8439eba05ffca637dd25197508156e03c930b17b9fed2938506fdd7b77567cb488f96222 +b68b621bb198a763fb0634eddb93ed4b5156e59b96c88ca2246fd1aea3e6b77ed651e112ac41b30cd361fadc011d385e +a3cb22f6b675a29b2d1f827cacd30df14d463c93c3502ef965166f20d046af7f9ab7b2586a9c64f4eae4fad2d808a164 +8302d9ce4403f48ca217079762ce42cee8bc30168686bb8d3a945fbd5acd53b39f028dce757b825eb63af2d5ae41169d +b2eef1fbd1a176f1f4cd10f2988c7329abe4eb16c7405099fb92baa724ab397bc98734ef7d4b24c0f53dd90f57520d04 +a1bbef0bd684a3f0364a66bde9b29326bac7aa3dde4caed67f14fb84fed3de45c55e406702f1495a3e2864d4ee975030 +976acdb0efb73e3a3b65633197692dedc2adaed674291ae3df76b827fc866d214e9cac9ca46baefc4405ff13f953d936 +b9fbf71cc7b6690f601f0b1c74a19b7d14254183a2daaafec7dc3830cba5ae173d854bbfebeca985d1d908abe5ef0cda +90591d7b483598c94e38969c4dbb92710a1a894bcf147807f1bcbd8aa3ac210b9f2be65519aa829f8e1ccdc83ad9b8cf +a30568577c91866b9c40f0719d46b7b3b2e0b4a95e56196ac80898a2d89cc67880e1229933f2cd28ee3286f8d03414d7 +97589a88c3850556b359ec5e891f0937f922a751ac7c95949d3bbc7058c172c387611c0f4cb06351ef02e5178b3dd9e4 +98e7bbe27a1711f4545df742f17e3233fbcc63659d7419e1ca633f104cb02a32c84f2fac23ca2b84145c2672f68077ab +a7ddb91636e4506d8b7e92aa9f4720491bb71a72dadc47c7f4410e15f93e43d07d2b371951a0e6a18d1bd087aa96a5c4 +a7c006692227a06db40bceac3d5b1daae60b5692dd9b54772bedb5fea0bcc91cbcdb530cac31900ffc70c5b3ffadc969 +8d3ec6032778420dfa8be52066ba0e623467df33e4e1901dbadd586c5d750f4ccde499b5197e26b9ea43931214060f69 +8d9a8410518ea64f89df319bfd1fc97a0971cdb9ad9b11d1f8fe834042ea7f8dce4db56eeaf179ff8dda93b6db93e5ce +a3c533e9b3aa04df20b9ff635cb1154ce303e045278fcf3f10f609064a5445552a1f93989c52ce852fd0bbd6e2b6c22e +81934f3a7f8c1ae60ec6e4f212986bcc316118c760a74155d06ce0a8c00a9b9669ec4e143ca214e1b995e41271774fd9 +ab8e2d01a71192093ef8fafa7485e795567cc9db95a93fb7cc4cf63a391ef89af5e2bfad4b827fffe02b89271300407f +83064a1eaa937a84e392226f1a60b7cfad4efaa802f66de5df7498962f7b2649924f63cd9962d47906380b97b9fe80e1 +b4f5e64a15c6672e4b55417ee5dc292dcf93d7ea99965a888b1cc4f5474a11e5b6520eacbcf066840b343f4ceeb6bf33 +a63d278b842456ef15c278b37a6ea0f27c7b3ffffefca77c7a66d2ea06c33c4631eb242bbb064d730e70a8262a7b848a +83a41a83dbcdf0d22dc049de082296204e848c453c5ab1ba75aa4067984e053acf6f8b6909a2e1f0009ed051a828a73b +819485b036b7958508f15f3c19436da069cbe635b0318ebe8c014cf1ef9ab2df038c81161b7027475bcfa6fff8dd9faf +aa40e38172806e1e045e167f3d1677ef12d5dcdc89b43639a170f68054bd196c4fae34c675c1644d198907a03f76ba57 +969bae484883a9ed1fbed53b26b3d4ee4b0e39a6c93ece5b3a49daa01444a1c25727dabe62518546f36b047b311b177c +80a9e73a65da99664988b238096a090d313a0ee8e4235bc102fa79bb337b51bb08c4507814eb5baec22103ec512eaab0 +86604379aec5bddda6cbe3ef99c0ac3a3c285b0b1a15b50451c7242cd42ae6b6c8acb717dcca7917838432df93a28502 +a23407ee02a495bed06aa7e15f94cfb05c83e6d6fba64456a9bbabfa76b2b68c5c47de00ba169e710681f6a29bb41a22 +98cff5ecc73b366c6a01b34ac9066cb34f7eeaf4f38a5429bad2d07e84a237047e2a065c7e8a0a6581017dadb4695deb +8de9f68a938f441f3b7ab84bb1f473c5f9e5c9e139e42b7ccee1d254bd57d0e99c2ccda0f3198f1fc5737f6023dd204e +b0ce48d815c2768fb472a315cad86aa033d0e9ca506f146656e2941829e0acb735590b4fbc713c2d18d3676db0a954ac +82f485cdefd5642a6af58ac6817991c49fac9c10ace60f90b27f1788cc026c2fe8afc83cf499b3444118f9f0103598a8 +82c24550ed512a0d53fc56f64cc36b553823ae8766d75d772dacf038c460f16f108f87a39ceef7c66389790f799dbab3 +859ffcf1fe9166388316149b9acc35694c0ea534d43f09dae9b86f4aa00a23b27144dda6a352e74b9516e8c8d6fc809c +b8f7f353eec45da77fb27742405e5ad08d95ec0f5b6842025be9def3d9892f85eb5dd0921b41e6eff373618dba215bca +8ccca4436f9017e426229290f5cd05eac3f16571a4713141a7461acfe8ae99cd5a95bf5b6df129148693c533966145da +a2c67ecc19c0178b2994846fea4c34c327a5d786ac4b09d1d13549d5be5996d8a89021d63d65cb814923388f47cc3a03 +aa0ff87d676b418ec08f5cbf577ac7e744d1d0e9ebd14615b550eb86931eafd2a36d4732cc5d6fab1713fd7ab2f6f7c0 +8aef4730bb65e44efd6bb9441c0ae897363a2f3054867590a2c2ecf4f0224e578c7a67f10b40f8453d9f492ac15a9b2d +86a187e13d8fba5addcfdd5b0410cedd352016c930f913addd769ee09faa6be5ca3e4b1bdb417a965c643a99bd92be42 +a0a4e9632a7a094b14b29b78cd9c894218cdf6783e61671e0203865dc2a835350f465fbaf86168f28af7c478ca17bc89 +a8c7b02d8deff2cd657d8447689a9c5e2cd74ef57c1314ac4d69084ac24a7471954d9ff43fe0907d875dcb65fd0d3ce5 +97ded38760aa7be6b6960b5b50e83b618fe413cbf2bcc1da64c05140bcc32f5e0e709cd05bf8007949953fac5716bad9 +b0d293835a24d64c2ae48ce26e550b71a8c94a0883103757fb6b07e30747f1a871707d23389ba2b2065fa6bafe220095 +8f9e291bf849feaa575592e28e3c8d4b7283f733d41827262367ea1c40f298c7bcc16505255a906b62bf15d9f1ba85fb +998f4e2d12708b4fd85a61597ca2eddd750f73c9e0c9b3cf0825d8f8e01f1628fd19797dcaed3b16dc50331fc6b8b821 +b30d1f8c115d0e63bf48f595dd10908416774c78b3bbb3194192995154d80ea042d2e94d858de5f8aa0261b093c401fd +b5d9c75bb41f964cbff3f00e96d9f1480c91df8913f139f0d385d27a19f57a820f838eb728e46823cbff00e21c660996 +a6edec90b5d25350e2f5f0518777634f9e661ec9d30674cf5b156c4801746d62517751d90074830ac0f4b09911c262f1 +82f98da1264b6b75b8fbeb6a4d96d6a05b25c24db0d57ba3a38efe3a82d0d4e331b9fc4237d6494ccfe4727206457519 +b89511843453cf4ecd24669572d6371b1e529c8e284300c43e0d5bb6b3aaf35aeb634b3cb5c0a2868f0d5e959c1d0772 +a82bf065676583e5c1d3b81987aaae5542f522ba39538263a944bb33ea5b514c649344a96c0205a3b197a3f930fcda6c +a37b47ea527b7e06c460776aa662d9a49ff4149d3993f1a974b0dd165f7171770d189b0e2ea54fd5fccb6a14b116e68a +a1017677f97dda818274d47556d09d0e4ccacb23a252f82a6cfe78c630ad46fb9806307445a59fb61262182de3a2b29c +b01e9fcac239ba270e6877b79273ddd768bf8a51d2ed8a051b1c11e18eff3de5920e2fcbfbd26f06d381eddd3b1f1e1b +82fcd53d803b1c8e4ed76adc339b7f3a5962d37042b9683aabac7513ac68775d4a566a9460183926a6a95dbe7d551a1f +a763e78995d55cd21cdb7ef75d9642d6e1c72453945e346ab6690c20a4e1eeec61bb848ef830ae4b56182535e3c71d8f +b769f4db602251d4b0a1186782799bdcef66de33c110999a5775c50b349666ffd83d4c89714c4e376f2efe021a5cfdb2 +a59cbd1b785efcfa6e83fc3b1d8cf638820bc0c119726b5368f3fba9dce8e3414204fb1f1a88f6c1ff52e87961252f97 +95c8c458fd01aa23ecf120481a9c6332ebec2e8bb70a308d0576926a858457021c277958cf79017ddd86a56cacc2d7db +82eb41390800287ae56e77f2e87709de5b871c8bdb67c10a80fc65f3acb9f7c29e8fa43047436e8933f27449ea61d94d +b3ec25e3545eb83aed2a1f3558d1a31c7edde4be145ecc13b33802654b77dc049b4f0065069dd9047b051e52ab11dcdd +b78a0c715738f56f0dc459ab99e252e3b579b208142836b3c416b704ca1de640ca082f29ebbcee648c8c127df06f6b1e +a4083149432eaaf9520188ebf4607d09cf664acd1f471d4fb654476e77a9eaae2251424ffda78d09b6cb880df35c1219 +8c52857d68d6e9672df3db2df2dbf46b516a21a0e8a18eec09a6ae13c1ef8f369d03233320dd1c2c0bbe00abfc1ea18b +8c856089488803066bff3f8d8e09afb9baf20cecc33c8823c1c0836c3d45498c3de37e87c016b705207f60d2b00f8609 +831a3df39be959047b2aead06b4dcd3012d7b29417f642b83c9e8ce8de24a3dbbd29c6fdf55e2db3f7ea04636c94e403 +aed84d009f66544addabe404bf6d65af7779ce140dc561ff0c86a4078557b96b2053b7b8a43432ffb18cd814f143b9da +93282e4d72b0aa85212a77b336007d8ba071eea17492da19860f1ad16c1ea8867ccc27ef5c37c74b052465cc11ea4f52 +a7b78b8c8d057194e8d68767f1488363f77c77bddd56c3da2bc70b6354c7aa76247c86d51f7371aa38a4aa7f7e3c0bb7 +b1c77283d01dcd1bde649b5b044eac26befc98ff57cbee379fb5b8e420134a88f2fc7f0bf04d15e1fbd45d29e7590fe6 +a4aa8de70330a73b2c6458f20a1067eed4b3474829b36970a8df125d53bbdda4f4a2c60063b7cccb0c80fc155527652f +948a6c79ba1b8ad7e0bed2fae2f0481c4e41b4d9bbdd9b58164e28e9065700e83f210c8d5351d0212e0b0b68b345b3a5 +86a48c31dcbbf7b082c92d28e1f613a2378a910677d7db3a349dc089e4a1e24b12eee8e8206777a3a8c64748840b7387 +976adb1af21e0fc34148917cf43d933d7bfd3fd12ed6c37039dcd5a4520e3c6cf5868539ba5bf082326430deb8a4458d +b93e1a4476f2c51864bb4037e7145f0635eb2827ab91732b98d49b6c07f6ac443111aa1f1da76d1888665cb897c3834e +8afd46fb23bf869999fa19784b18a432a1f252d09506b8dbb756af900518d3f5f244989b3d7c823d9029218c655d3dc6 +83f1e59e3abeed18cdc632921672673f1cb6e330326e11c4e600e13e0d5bc11bdc970ae12952e15103a706fe720bf4d6 +90ce4cc660714b0b673d48010641c09c00fc92a2c596208f65c46073d7f349dd8e6e077ba7dcef9403084971c3295b76 +8b09b0f431a7c796561ecf1549b85048564de428dac0474522e9558b6065fede231886bc108539c104ce88ebd9b5d1b0 +85d6e742e2fb16a7b0ba0df64bc2c0dbff9549be691f46a6669bca05e89c884af16822b85faefefb604ec48c8705a309 +a87989ee231e468a712c66513746fcf03c14f103aadca0eac28e9732487deb56d7532e407953ab87a4bf8961588ef7b0 +b00da10efe1c29ee03c9d37d5918e391ae30e48304e294696b81b434f65cf8c8b95b9d1758c64c25e534d045ba28696f +91c0e1fb49afe46c7056400baa06dbb5f6e479db78ee37e2d76c1f4e88994357e257b83b78624c4ef6091a6c0eb8254d +883fb797c498297ccbf9411a3e727c3614af4eccde41619b773dc7f3259950835ee79453debf178e11dec4d3ada687a0 +a14703347e44eb5059070b2759297fcfcfc60e6893c0373eea069388eba3950aa06f1c57cd2c30984a2d6f9e9c92c79e +afebc7585b304ceba9a769634adff35940e89cd32682c78002822aab25eec3edc29342b7f5a42a56a1fec67821172ad5 +aea3ff3822d09dba1425084ca95fd359718d856f6c133c5fabe2b2eed8303b6e0ba0d8698b48b93136a673baac174fd9 +af2456a09aa777d9e67aa6c7c49a1845ea5cdda2e39f4c935c34a5f8280d69d4eec570446998cbbe31ede69a91e90b06 +82cada19fed16b891ef3442bafd49e1f07c00c2f57b2492dd4ee36af2bd6fd877d6cb41188a4d6ce9ec8d48e8133d697 +82a21034c832287f616619a37c122cee265cc34ae75e881fcaea4ea7f689f3c2bc8150bbf7dbcfd123522bfb7f7b1d68 +86877217105f5d0ec3eeff0289fc2a70d505c9fdf7862e8159553ef60908fb1a27bdaf899381356a4ef4649072a9796c +82b196e49c6e861089a427c0b4671d464e9d15555ffb90954cd0d630d7ae02eb3d98ceb529d00719c2526cd96481355a +a29b41d0d43d26ce76d4358e0db2b77df11f56e389f3b084d8af70a636218bd3ac86b36a9fe46ec9058c26a490f887f7 +a4311c4c20c4d7dd943765099c50f2fd423e203ccfe98ff00087d205467a7873762510cac5fdce7a308913ed07991ed7 +b1f040fc5cc51550cb2c25cf1fd418ecdd961635a11f365515f0cb4ffb31da71f48128c233e9cc7c0cf3978d757ec84e +a9ebae46f86d3bd543c5f207ed0d1aed94b8375dc991161d7a271f01592912072e083e2daf30c146430894e37325a1b9 +826418c8e17ad902b5fe88736323a47e0ca7a44bce4cbe27846ec8fe81de1e8942455dda6d30e192cdcc73e11df31256 +85199db563427c5edcbac21f3d39fec2357be91fb571982ddcdc4646b446ad5ced84410de008cb47b3477ee0d532daf8 +b7eed9cd400b2ca12bf1d9ae008214b8561fb09c8ad9ff959e626ffde00fee5ff2f5b6612e231f2a1a9b1646fcc575e3 +8b40bf12501dcbac78f5a314941326bfcddf7907c83d8d887d0bb149207f85d80cd4dfbd7935439ea7b14ea39a3fded7 +83e3041af302485399ba6cd5120e17af61043977083887e8d26b15feec4a6b11171ac5c06e6ad0971d4b58a81ff12af3 +8f5b9a0eecc589dbf8c35a65d5e996a659277ef6ea509739c0cb7b3e2da9895e8c8012de662e5b23c5fa85d4a8f48904 +835d71ed5e919d89d8e6455f234f3ff215462c4e3720c371ac8c75e83b19dfe3ae15a81547e4dc1138e5f5997f413cc9 +8b7d2e4614716b1db18e9370176ea483e6abe8acdcc3dcdf5fb1f4d22ca55d652feebdccc171c6de38398d9f7bfdec7a +93eace72036fe57d019676a02acf3d224cf376f166658c1bf705db4f24295881d477d6fdd7916efcfceff8c7a063deda +b1ac460b3d516879a84bc886c54f020a9d799e7c49af3e4d7de5bf0d2793c852254c5d8fe5616147e6659512e5ccb012 +acd0947a35cb167a48bcd9667620464b54ac0e78f9316b4aa92dcaab5422d7a732087e52e1c827faa847c6b2fe6e7766 +94ac33d21c3d12ff762d32557860e911cd94d666609ddcc42161b9c16f28d24a526e8b10bb03137257a92cec25ae637d +832e02058b6b994eadd8702921486241f9a19e68ed1406dad545e000a491ae510f525ccf9d10a4bba91c68f2c53a0f58 +9471035d14f78ff8f463b9901dd476b587bb07225c351161915c2e9c6114c3c78a501379ab6fb4eb03194c457cbd22bf +ab64593e034c6241d357fcbc32d8ea5593445a5e7c24cac81ad12bd2ef01843d477a36dc1ba21dbe63b440750d72096a +9850f3b30045e927ad3ec4123a32ed2eb4c911f572b6abb79121873f91016f0d80268de8b12e2093a4904f6e6cab7642 +987212c36b4722fe2e54fa30c52b1e54474439f9f35ca6ad33c5130cd305b8b54b532dd80ffd2c274105f20ce6d79f6e +8b4d0c6abcb239b5ed47bef63bc17efe558a27462c8208fa652b056e9eae9665787cd1aee34fbb55beb045c8bfdb882b +a9f3483c6fee2fe41312d89dd4355d5b2193ac413258993805c5cbbf0a59221f879386d3e7a28e73014f10e65dd503d9 +a2225da3119b9b7c83d514b9f3aeb9a6d9e32d9cbf9309cbb971fd53c4b2c001d10d880a8ad8a7c281b21d85ceca0b7c +a050be52e54e676c151f7a54453bbb707232f849beab4f3bf504b4d620f59ed214409d7c2bd3000f3ff13184ccda1c35 +adbccf681e15b3edb6455a68d292b0a1d0f5a4cb135613f5e6db9943f02181341d5755875db6ee474e19ace1c0634a28 +8b6eff675632a6fad0111ec72aacc61c7387380eb87933fd1d098856387d418bd38e77d897e65d6fe35951d0627c550b +aabe2328ddf90989b15e409b91ef055cb02757d34987849ae6d60bef2c902bf8251ed21ab30acf39e500d1d511e90845 +92ba4eb1f796bc3d8b03515f65c045b66e2734c2da3fc507fdd9d6b5d1e19ab3893726816a32141db7a31099ca817d96 +8a98b3cf353138a1810beb60e946183803ef1d39ac4ea92f5a1e03060d35a4774a6e52b14ead54f6794d5f4022b8685c +909f8a5c13ec4a59b649ed3bee9f5d13b21d7f3e2636fd2bb3413c0646573fdf9243d63083356f12f5147545339fcd55 +9359d914d1267633141328ed0790d81c695fea3ddd2d406c0df3d81d0c64931cf316fe4d92f4353c99ff63e2aefc4e34 +b88302031681b54415fe8fbfa161c032ea345c6af63d2fb8ad97615103fd4d4281c5a9cae5b0794c4657b97571a81d3b +992c80192a519038082446b1fb947323005b275e25f2c14c33cc7269e0ec038581cc43705894f94bad62ae33a8b7f965 +a78253e3e3eece124bef84a0a8807ce76573509f6861d0b6f70d0aa35a30a123a9da5e01e84969708c40b0669eb70aa6 +8d5724de45270ca91c94792e8584e676547d7ac1ac816a6bb9982ee854eb5df071d20545cdfd3771cd40f90e5ba04c8e +825a6f586726c68d45f00ad0f5a4436523317939a47713f78fd4fe81cd74236fdac1b04ecd97c2d0267d6f4981d7beb1 +93e02b6052719f607dacd3a088274f65596bd0d09920b61ab5da61bbdc7f5049334cf11213945d57e5ac7d055d042b7e024aa2b2f08f0a91260805272dc51051c6e47ad4fa403b02b4510b647ae3d1770bac0326a805bbefd48056c8c121bdb8 +b5bfd7dd8cdeb128843bc287230af38926187075cbfbefa81009a2ce615ac53d2914e5870cb452d2afaaab24f3499f72185cbfee53492714734429b7b38608e23926c911cceceac9a36851477ba4c60b087041de621000edc98edada20c1def2 +b5337ba0ce5d37224290916e268e2060e5c14f3f9fc9e1ec3af5a958e7a0303122500ce18f1a4640bf66525bd10e763501fe986d86649d8d45143c08c3209db3411802c226e9fe9a55716ac4a0c14f9dcef9e70b2bb309553880dc5025eab3cc +b3c1dcdc1f62046c786f0b82242ef283e7ed8f5626f72542aa2c7a40f14d9094dd1ebdbd7457ffdcdac45fd7da7e16c51200b06d791e5e43e257e45efdf0bd5b06cd2333beca2a3a84354eb48662d83aef5ecf4e67658c851c10b13d8d87c874 +954d91c7688983382609fca9e211e461f488a5971fd4e40d7e2892037268eacdfd495cfa0a7ed6eb0eb11ac3ae6f651716757e7526abe1e06c64649d80996fd3105c20c4c94bc2b22d97045356fe9d791f21ea6428ac48db6f9e68e30d875280 +88a6b6bb26c51cf9812260795523973bb90ce80f6820b6c9048ab366f0fb96e48437a7f7cb62aedf64b11eb4dfefebb0147608793133d32003cb1f2dc47b13b5ff45f1bb1b2408ea45770a08dbfaec60961acb8119c47b139a13b8641e2c9487 +85cd7be9728bd925d12f47fb04b32d9fad7cab88788b559f053e69ca18e463113ecc8bbb6dbfb024835f901b3a957d3108d6770fb26d4c8be0a9a619f6e3a4bf15cbfd48e61593490885f6cee30e4300c5f9cf5e1c08e60a2d5b023ee94fcad0 +80477dba360f04399821a48ca388c0fa81102dd15687fea792ee8c1114e00d1bc4839ad37ac58900a118d863723acfbe08126ea883be87f50e4eabe3b5e72f5d9e041db8d9b186409fd4df4a7dde38c0e0a3b1ae29b098e5697e7f110b6b27e4 +b7a6aec08715a9f8672a2b8c367e407be37e59514ac19dd4f0942a68007bba3923df22da48702c63c0d6b3efd3c2d04e0fe042d8b5a54d562f9f33afc4865dcbcc16e99029e25925580e87920c399e710d438ac1ce3a6dc9b0d76c064a01f6f7 +ac1b001edcea02c8258aeffbf9203114c1c874ad88dae1184fadd7d94cd09053649efd0ca413400e6e9b5fa4eac33261000af88b6bd0d2abf877a4f0355d2fb4d6007adb181695201c5432e50b850b51b3969f893bddf82126c5a71b042b7686 +90043fda4de53fb364fab2c04be5296c215599105ecff0c12e4917c549257125775c29f2507124d15f56e30447f367db0596c33237242c02d83dfd058735f1e3c1ff99069af55773b6d51d32a68bf75763f59ec4ee7267932ae426522b8aaab6 +a8660ce853e9dc08271bf882e29cd53397d63b739584dda5263da4c7cc1878d0cf6f3e403557885f557e184700575fee016ee8542dec22c97befe1d10f414d22e84560741cdb3e74c30dda9b42eeaaf53e27822de2ee06e24e912bf764a9a533 +8fe3921a96d0d065e8aa8fce9aa42c8e1461ca0470688c137be89396dd05103606dab6cdd2a4591efd6addf72026c12e065da7be276dee27a7e30afa2bd81c18f1516e7f068f324d0bad9570b95f6bd02c727cd2343e26db0887c3e4e26dceda +8ae1ad97dcb9c192c9a3933541b40447d1dc4eebf380151440bbaae1e120cc5cdf1bcea55180b128d8e180e3af623815191d063cc0d7a47d55fb7687b9d87040bf7bc1a7546b07c61db5ccf1841372d7c2fe4a5431ffff829f3c2eb590b0b710 +8c2fa96870a88150f7876c931e2d3cc2adeaaaf5c73ef5fa1cf9dfa0991ae4819f9321af7e916e5057d87338e630a2f21242c29d76963cf26035b548d2a63d8ad7bd6efefa01c1df502cbdfdfe0334fb21ceb9f686887440f713bf17a89b8081 +b9aa98e2f02bb616e22ee5dd74c7d1049321ac9214d093a738159850a1dbcc7138cb8d26ce09d8296368fd5b291d74fa17ac7cc1b80840fdd4ee35e111501e3fa8485b508baecda7c1ab7bd703872b7d64a2a40b3210b6a70e8a6ffe0e5127e3 +9292db67f8771cdc86854a3f614a73805bf3012b48f1541e704ea4015d2b6b9c9aaed36419769c87c49f9e3165f03edb159c23b3a49c4390951f78e1d9b0ad997129b17cdb57ea1a6638794c0cca7d239f229e589c5ae4f9fe6979f7f8cba1d7 +91cd9e86550f230d128664f7312591fee6a84c34f5fc7aed557bcf986a409a6de722c4330453a305f06911d2728626e611acfdf81284f77f60a3a1595053a9479964fd713117e27c0222cc679674b03bc8001501aaf9b506196c56de29429b46 +a9516b73f605cc31b89c68b7675dc451e6364595243d235339437f556cf22d745d4250c1376182273be2d99e02c10eee047410a43eff634d051aeb784e76cb3605d8e079b9eb6ad1957dfdf77e1cd32ce4a573c9dfcc207ca65af6eb187f6c3d +a9667271f7d191935cc8ad59ef3ec50229945faea85bfdfb0d582090f524436b348aaa0183b16a6231c00332fdac2826125b8c857a2ed9ec66821cfe02b3a2279be2412441bc2e369b255eb98614e4be8490799c4df22f18d47d24ec70bba5f7 +a4371144d2aa44d70d3cb9789096d3aa411149a6f800cb46f506461ee8363c8724667974252f28aea61b6030c05930ac039c1ee64bb4bd56532a685cae182bf2ab935eee34718cffcb46cae214c77aaca11dbb1320faf23c47247db1da04d8dc +89a7eb441892260b7e81168c386899cd84ffc4a2c5cad2eae0d1ab9e8b5524662e6f660fe3f8bfe4c92f60b060811bc605b14c5631d16709266886d7885a5eb5930097127ec6fb2ebbaf2df65909cf48f253b3d5e22ae48d3e9a2fd2b01f447e +9648c42ca97665b5eccb49580d8532df05eb5a68db07f391a2340769b55119eaf4c52fe4f650c09250fa78a76c3a1e271799b8333cc2628e3d4b4a6a3e03da1f771ecf6516dd63236574a7864ff07e319a6f11f153406280d63af9e2b5713283 +9663bf6dd446ea7a90658ee458578d4196dc0b175ef7fcfa75f44d41670850774c2e46c5a6be132a2c072a3c0180a24f0305d1acac49d2d79878e5cda80c57feda3d01a6af12e78b5874e2a4b3717f11c97503b41a4474e2e95b179113726199 +b212aeb4814e0915b432711b317923ed2b09e076aaf558c3ae8ef83f9e15a83f9ea3f47805b2750ab9e8106cb4dc6ad003522c84b03dc02829978a097899c773f6fb31f7fe6b8f2d836d96580f216fec20158f1590c3e0d7850622e15194db05 +925f005059bf07e9ceccbe66c711b048e236ade775720d0fe479aebe6e23e8af281225ad18e62458dc1b03b42ad4ca290d4aa176260604a7aad0d9791337006fbdebe23746f8060d42876f45e4c83c3643931392fde1cd13ff8bddf8111ef974 +9553edb22b4330c568e156a59ef03b26f5c326424f830fe3e8c0b602f08c124730ffc40bc745bec1a22417adb22a1a960243a10565c2be3066bfdb841d1cd14c624cd06e0008f4beb83f972ce6182a303bee3fcbcabc6cfe48ec5ae4b7941bfc +935f5a404f0a78bdcce709899eda0631169b366a669e9b58eacbbd86d7b5016d044b8dfc59ce7ed8de743ae16c2343b50e2f925e88ba6319e33c3fc76b314043abad7813677b4615c8a97eb83cc79de4fedf6ccbcfa4d4cbf759a5a84e4d9742 +a5b014ab936eb4be113204490e8b61cd38d71da0dec7215125bcd131bf3ab22d0a32ce645bca93e7b3637cf0c2db3d6601a0ddd330dc46f9fae82abe864ffc12d656c88eb50c20782e5bb6f75d18760666f43943abb644b881639083e122f557 +935b7298ae52862fa22bf03bfc1795b34c70b181679ae27de08a9f5b4b884f824ef1b276b7600efa0d2f1d79e4a470d51692fd565c5cf8343dd80e5d3336968fc21c09ba9348590f6206d4424eb229e767547daefa98bc3aa9f421158dee3f2a +9830f92446e708a8f6b091cc3c38b653505414f8b6507504010a96ffda3bcf763d5331eb749301e2a1437f00e2415efb01b799ad4c03f4b02de077569626255ac1165f96ea408915d4cf7955047620da573e5c439671d1fa5c833fb11de7afe6 +840dcc44f673fff3e387af2bb41e89640f2a70bcd2b92544876daa92143f67c7512faf5f90a04b7191de01f3e2b1bde00622a20dc62ca23bbbfaa6ad220613deff43908382642d4d6a86999f662efd64b1df448b68c847cfa87630a3ffd2ec76 +92950c895ed54f7f876b2fda17ecc9c41b7accfbdd42c210cc5b475e0737a7279f558148531b5c916e310604a1de25a80940c94fe5389ae5d6a5e9c371be67bceea1877f5401725a6595bcf77ece60905151b6dfcb68b75ed2e708c73632f4fd +8010246bf8e94c25fd029b346b5fbadb404ef6f44a58fd9dd75acf62433d8cc6db66974f139a76e0c26dddc1f329a88214dbb63276516cf325c7869e855d07e0852d622c332ac55609ba1ec9258c45746a2aeb1af0800141ee011da80af175d4 +b0f1bad257ebd187bdc3f37b23f33c6a5d6a8e1f2de586080d6ada19087b0e2bf23b79c1b6da1ee82271323f5bdf3e1b018586b54a5b92ab6a1a16bb3315190a3584a05e6c37d5ca1e05d702b9869e27f513472bcdd00f4d0502a107773097da +9636d24f1ede773ce919f309448dd7ce023f424afd6b4b69cb98c2a988d849a283646dc3e469879daa1b1edae91ae41f009887518e7eb5578f88469321117303cd3ac2d7aee4d9cb5f82ab9ae3458e796dfe7c24284b05815acfcaa270ff22e2 +b373feb5d7012fd60578d7d00834c5c81df2a23d42794fed91aa9535a4771fde0341c4da882261785e0caca40bf83405143085e7f17e55b64f6c5c809680c20b050409bf3702c574769127c854d27388b144b05624a0e24a1cbcc4d08467005b +b15680648949ce69f82526e9b67d9b55ce5c537dc6ab7f3089091a9a19a6b90df7656794f6edc87fb387d21573ffc847062623685931c2790a508cbc8c6b231dd2c34f4d37d4706237b1407673605a604bcf6a50cc0b1a2db20485e22b02c17e +8817e46672d40c8f748081567b038a3165f87994788ec77ee8daea8587f5540df3422f9e120e94339be67f186f50952504cb44f61e30a5241f1827e501b2de53c4c64473bcc79ab887dd277f282fbfe47997a930dd140ac08b03efac88d81075 +a6e4ef6c1d1098f95aae119905f87eb49b909d17f9c41bcfe51127aa25fee20782ea884a7fdf7d5e9c245b5a5b32230b07e0dbf7c6743bf52ee20e2acc0b269422bd6cf3c07115df4aa85b11b2c16630a07c974492d9cdd0ec325a3fabd95044 +8634aa7c3d00e7f17150009698ce440d8e1b0f13042b624a722ace68ead870c3d2212fbee549a2c190e384d7d6ac37ce14ab962c299ea1218ef1b1489c98906c91323b94c587f1d205a6edd5e9d05b42d591c26494a6f6a029a2aadb5f8b6f67 +821a58092900bdb73decf48e13e7a5012a3f88b06288a97b855ef51306406e7d867d613d9ec738ebacfa6db344b677d21509d93f3b55c2ebf3a2f2a6356f875150554c6fff52e62e3e46f7859be971bf7dd9d5b3e1d799749c8a97c2e04325df +8dba356577a3a388f782e90edb1a7f3619759f4de314ad5d95c7cc6e197211446819c4955f99c5fc67f79450d2934e3c09adefc91b724887e005c5190362245eec48ce117d0a94d6fa6db12eda4ba8dde608fbbd0051f54dcf3bb057adfb2493 +a32a690dc95c23ed9fb46443d9b7d4c2e27053a7fcc216d2b0020a8cf279729c46114d2cda5772fd60a97016a07d6c5a0a7eb085a18307d34194596f5b541cdf01b2ceb31d62d6b55515acfd2b9eec92b27d082fbc4dc59fc63b551eccdb8468 +a040f7f4be67eaf0a1d658a3175d65df21a7dbde99bfa893469b9b43b9d150fc2e333148b1cb88cfd0447d88fa1a501d126987e9fdccb2852ecf1ba907c2ca3d6f97b055e354a9789854a64ecc8c2e928382cf09dda9abde42bbdf92280cdd96 +864baff97fa60164f91f334e0c9be00a152a416556b462f96d7c43b59fe1ebaff42f0471d0bf264976f8aa6431176eb905bd875024cf4f76c13a70bede51dc3e47e10b9d5652d30d2663b3af3f08d5d11b9709a0321aba371d2ef13174dcfcaf +95a46f32c994133ecc22db49bad2c36a281d6b574c83cfee6680b8c8100466ca034b815cfaedfbf54f4e75188e661df901abd089524e1e0eb0bf48d48caa9dd97482d2e8c1253e7e8ac250a32fd066d5b5cb08a8641bdd64ecfa48289dca83a3 +a2cce2be4d12144138cb91066e0cd0542c80b478bf467867ebef9ddaf3bd64e918294043500bf5a9f45ee089a8d6ace917108d9ce9e4f41e7e860cbce19ac52e791db3b6dde1c4b0367377b581f999f340e1d6814d724edc94cb07f9c4730774 +b145f203eee1ac0a1a1731113ffa7a8b0b694ef2312dabc4d431660f5e0645ef5838e3e624cfe1228cfa248d48b5760501f93e6ab13d3159fc241427116c4b90359599a4cb0a86d0bb9190aa7fabff482c812db966fd2ce0a1b48cb8ac8b3bca +adabe5d215c608696e03861cbd5f7401869c756b3a5aadc55f41745ad9478145d44393fec8bb6dfc4ad9236dc62b9ada0f7ca57fe2bae1b71565dbf9536d33a68b8e2090b233422313cc96afc7f1f7e0907dc7787806671541d6de8ce47c4cd0 +ae7845fa6b06db53201c1080e01e629781817f421f28956589c6df3091ec33754f8a4bd4647a6bb1c141ac22731e3c1014865d13f3ed538dcb0f7b7576435133d9d03be655f8fbb4c9f7d83e06d1210aedd45128c2b0c9bab45a9ddde1c862a5 +9159eaa826a24adfa7adf6e8d2832120ebb6eccbeb3d0459ffdc338548813a2d239d22b26451fda98cc0c204d8e1ac69150b5498e0be3045300e789bcb4e210d5cd431da4bdd915a21f407ea296c20c96608ded0b70d07188e96e6c1a7b9b86b +a9fc6281e2d54b46458ef564ffaed6944bff71e389d0acc11fa35d3fcd8e10c1066e0dde5b9b6516f691bb478e81c6b20865281104dcb640e29dc116daae2e884f1fe6730d639dbe0e19a532be4fb337bf52ae8408446deb393d224eee7cfa50 +84291a42f991bfb36358eedead3699d9176a38f6f63757742fdbb7f631f2c70178b1aedef4912fed7b6cf27e88ddc7eb0e2a6aa4b999f3eb4b662b93f386c8d78e9ac9929e21f4c5e63b12991fcde93aa64a735b75b535e730ff8dd2abb16e04 +a1b7fcacae181495d91765dfddf26581e8e39421579c9cbd0dd27a40ea4c54af3444a36bf85a11dda2114246eaddbdd619397424bb1eb41b5a15004b902a590ede5742cd850cf312555be24d2df8becf48f5afba5a8cd087cb7be0a521728386 +92feaaf540dbd84719a4889a87cdd125b7e995a6782911931fef26da9afcfbe6f86aaf5328fe1f77631491ce6239c5470f44c7791506c6ef1626803a5794e76d2be0af92f7052c29ac6264b7b9b51f267ad820afc6f881460521428496c6a5f1 +a525c925bfae1b89320a5054acc1fa11820f73d0cf28d273092b305467b2831fab53b6daf75fb926f332782d50e2522a19edcd85be5eb72f1497193c952d8cd0bcc5d43b39363b206eae4cb1e61668bde28a3fb2fc1e0d3d113f6dfadb799717 +98752bb6f5a44213f40eda6aa4ff124057c1b13b6529ab42fe575b9afa66e59b9c0ed563fb20dff62130c436c3e905ee17dd8433ba02c445b1d67182ab6504a90bbe12c26a754bbf734665c622f76c62fe2e11dd43ce04fd2b91a8463679058b +a9aa9a84729f7c44219ff9e00e651e50ddea3735ef2a73fdf8ed8cd271961d8ed7af5cd724b713a89a097a3fe65a3c0202f69458a8b4c157c62a85668b12fc0d3957774bc9b35f86c184dd03bfefd5c325da717d74192cc9751c2073fe9d170e +b221c1fd335a4362eff504cd95145f122bf93ea02ae162a3fb39c75583fc13a932d26050e164da97cff3e91f9a7f6ff80302c19dd1916f24acf6b93b62f36e9665a8785413b0c7d930c7f1668549910f849bca319b00e59dd01e5dec8d2edacc +a71e2b1e0b16d754b848f05eda90f67bedab37709550171551050c94efba0bfc282f72aeaaa1f0330041461f5e6aa4d11537237e955e1609a469d38ed17f5c2a35a1752f546db89bfeff9eab78ec944266f1cb94c1db3334ab48df716ce408ef +b990ae72768779ba0b2e66df4dd29b3dbd00f901c23b2b4a53419226ef9232acedeb498b0d0687c463e3f1eead58b20b09efcefa566fbfdfe1c6e48d32367936142d0a734143e5e63cdf86be7457723535b787a9cfcfa32fe1d61ad5a2617220 +8d27e7fbff77d5b9b9bbc864d5231fecf817238a6433db668d5a62a2c1ee1e5694fdd90c3293c06cc0cb15f7cbeab44d0d42be632cb9ff41fc3f6628b4b62897797d7b56126d65b694dcf3e298e3561ac8813fbd7296593ced33850426df42db +a92039a08b5502d5b211a7744099c9f93fa8c90cedcb1d05e92f01886219dd464eb5fb0337496ad96ed09c987da4e5f019035c5b01cc09b2a18b8a8dd419bc5895388a07e26958f6bd26751929c25f89b8eb4a299d822e2d26fec9ef350e0d3c +92dcc5a1c8c3e1b28b1524e3dd6dbecd63017c9201da9dbe077f1b82adc08c50169f56fc7b5a3b28ec6b89254de3e2fd12838a761053437883c3e01ba616670cea843754548ef84bcc397de2369adcca2ab54cd73c55dc68d87aec3fc2fe4f10 diff --git a/orchestrator/crates/orchestrator/Cargo.toml b/orchestrator/crates/orchestrator/Cargo.toml new file mode 100644 index 000000000..e52076a0c --- /dev/null +++ b/orchestrator/crates/orchestrator/Cargo.toml @@ -0,0 +1,106 @@ +[package] +name = "orchestrator" +version.workspace = true +edition.workspace = true + +[lib] +name = "orchestrator" +path = "src/lib.rs" + +[[bin]] +name = "orchestrator" +path = "src/main.rs" + +[dependencies] +alloy = { workspace = true } +assert_matches = { workspace = true } +async-std = { workspace = true } +async-trait = { workspace = true } +atlantic-service = { workspace = true } +aws-config = { workspace = true, features = ["behavior-version-latest"] } +aws-credential-types = { workspace = true, features = [ + "hardcoded-credentials", +] } +aws-sdk-eventbridge.workspace = true +aws-sdk-s3 = { workspace = true, features = ["behavior-version-latest"] } +aws-sdk-sns = { workspace = true, features = ["behavior-version-latest"] } +aws-sdk-sqs = { workspace = true } +axum = { workspace = true, features = ["macros"] } +axum-macros = { workspace = true } +bincode = { workspace = true } +bytes.workspace = true +c-kzg = { workspace = true } +cairo-vm = { workspace = true } +chrono = { workspace = true } +clap = { workspace = true } +color-eyre = { workspace = true } +da-client-interface = { workspace = true } +dotenvy = { workspace = true } +ethereum-da-client = { workspace = true, optional = true } +ethereum-settlement-client = { workspace = true } +futures = { workspace = true } +hex = { workspace = true } +itertools = { workspace = true } +lazy_static = { workspace = true } +log = { workspace = true } +majin-blob-core = { workspace = true } +majin-blob-types = { workspace = true } +mockall = { workspace = true } +mockall_double = { workspace = true } +mongodb = { workspace = true, features = ["bson-uuid-1"], optional = true } +num = { workspace = true } +num-bigint = { workspace = true } +num-traits = { workspace = true } +omniqueue = { workspace = true, optional = true } +once_cell = { workspace = true } +prove_block = { workspace = true } +prover-client-interface = { workspace = true } +rstest = { workspace = true } +serde = { workspace = true } +serde_json = { workspace = true } +settlement-client-interface = { workspace = true } +sharp-service = { workspace = true } +starknet = { workspace = true } +starknet-core = { workspace = true } +starknet-os = { workspace = true } +starknet-settlement-client = { workspace = true } +strum = { workspace = true } +strum_macros = { workspace = true } +tempfile = { workspace = true } +thiserror = { workspace = true } +tokio = { workspace = true, features = ["sync", "macros", "rt-multi-thread"] } + +url = { workspace = true } +utils = { workspace = true } +uuid = { workspace = true, features = ["v4", "serde"] } + +aws-sdk-iam = { workspace = true } +aws-sdk-scheduler = { workspace = true } + +#Instrumentation +opentelemetry = { workspace = true, features = ["metrics", "logs"] } +opentelemetry-appender-tracing = { workspace = true, default-features = false } +opentelemetry-otlp = { workspace = true, features = [ + "tonic", + "metrics", + "logs", +] } +opentelemetry-semantic-conventions = { workspace = true } +opentelemetry-stdout = { workspace = true } +opentelemetry_sdk = { workspace = true, features = ["rt-tokio", "logs"] } +tracing = { workspace = true } +tracing-core = { workspace = true, default-features = false } +tracing-opentelemetry = { workspace = true } +tracing-subscriber = { workspace = true, features = ["env-filter"] } + +[features] +default = ["ethereum", "with_mongodb", "with_sqs"] +ethereum = ["ethereum-da-client"] +with_mongodb = ["mongodb"] +with_sqs = ["omniqueue"] +testing = [] + +[dev-dependencies] +hyper = { workspace = true, features = ["full"] } +rstest = { workspace = true } +httpmock = { workspace = true, features = ["remote"] } diff --git a/orchestrator/crates/orchestrator/src/alerts/aws_sns/mod.rs b/orchestrator/crates/orchestrator/src/alerts/aws_sns/mod.rs new file mode 100644 index 000000000..cc0a608c0 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/alerts/aws_sns/mod.rs @@ -0,0 +1,42 @@ +use async_trait::async_trait; +use aws_config::SdkConfig; +use aws_sdk_sns::Client; + +use crate::alerts::Alerts; + +#[derive(Debug, Clone)] +pub struct AWSSNSValidatedArgs { + // TODO: convert to ARN type, and validate it + // NOTE: aws is using str to represent ARN : https://docs.aws.amazon.com/sdk-for-rust/latest/dg/rust_sns_code_examples.html + pub topic_arn: String, +} + +pub struct AWSSNS { + client: Client, + topic_arn: String, +} + +impl AWSSNS { + pub async fn new_with_args(aws_sns_params: &AWSSNSValidatedArgs, aws_config: &SdkConfig) -> Self { + Self { client: Client::new(aws_config), topic_arn: aws_sns_params.topic_arn.clone() } + } +} + +#[async_trait] +impl Alerts for AWSSNS { + async fn send_alert_message(&self, message_body: String) -> color_eyre::Result<()> { + self.client.publish().topic_arn(self.topic_arn.clone()).message(message_body).send().await?; + Ok(()) + } + + async fn create_alert(&self, topic_name: &str) -> color_eyre::Result<()> { + let response = self.client.create_topic().name(topic_name).send().await?; + let topic_arn = response.topic_arn().expect("Topic Not found"); + log::info!("SNS topic created. Topic ARN: {}", topic_arn); + Ok(()) + } + + async fn get_topic_name(&self) -> String { + self.topic_arn.split(":").last().expect("Failed to get last part of topic ARN").to_string() + } +} diff --git a/orchestrator/crates/orchestrator/src/alerts/mod.rs b/orchestrator/crates/orchestrator/src/alerts/mod.rs new file mode 100644 index 000000000..bef941503 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/alerts/mod.rs @@ -0,0 +1,18 @@ +use async_trait::async_trait; +use mockall::automock; + +pub mod aws_sns; + +#[automock] +#[async_trait] +pub trait Alerts: Send + Sync { + /// To send an alert message to our alert service + async fn send_alert_message(&self, message_body: String) -> color_eyre::Result<()>; + async fn get_topic_name(&self) -> String; + async fn create_alert(&self, topic_name: &str) -> color_eyre::Result<()>; + async fn setup(&self) -> color_eyre::Result<()> { + let topic_name = self.get_topic_name().await; + self.create_alert(&topic_name).await?; + Ok(()) + } +} diff --git a/orchestrator/crates/orchestrator/src/cli/alert/aws_sns.rs b/orchestrator/crates/orchestrator/src/cli/alert/aws_sns.rs new file mode 100644 index 000000000..2e9e98600 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/alert/aws_sns.rs @@ -0,0 +1,14 @@ +use clap::Args; + +/// Parameters used to config AWS SNS. +#[derive(Debug, Clone, Args)] +#[group()] +pub struct AWSSNSCliArgs { + /// Use the AWS SNS client + #[arg(long)] + pub aws_sns: bool, + + /// The ARN of the SNS topic. + #[arg(env = "MADARA_ORCHESTRATOR_AWS_SNS_ARN", long, default_value = Some("arn:aws:sns:us-east-1:000000000000:madara-orchestrator-arn"))] + pub sns_arn: Option, +} diff --git a/orchestrator/crates/orchestrator/src/cli/alert/mod.rs b/orchestrator/crates/orchestrator/src/cli/alert/mod.rs new file mode 100644 index 000000000..f22dd0aca --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/alert/mod.rs @@ -0,0 +1,8 @@ +use crate::alerts::aws_sns::AWSSNSValidatedArgs; + +pub mod aws_sns; + +#[derive(Clone, Debug)] +pub enum AlertValidatedArgs { + AWSSNS(AWSSNSValidatedArgs), +} diff --git a/orchestrator/crates/orchestrator/src/cli/cron/event_bridge.rs b/orchestrator/crates/orchestrator/src/cli/cron/event_bridge.rs new file mode 100644 index 000000000..0602d36e2 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/cron/event_bridge.rs @@ -0,0 +1,36 @@ +use clap::Args; + +use crate::cron::event_bridge::EventBridgeType; + +/// CLI arguments for the aws event bridge. +#[derive(Debug, Clone, Args)] +#[group(requires_all = ["aws_event_bridge"])] +pub struct AWSEventBridgeCliArgs { + /// Use the AWS Event Bridge client + #[arg(long)] + pub aws_event_bridge: bool, + + /// The type of Event Bridge to use (rule or schedule) + #[arg(env = "MADARA_ORCHESTRATOR_EVENT_BRIDGE_TYPE", long, value_enum)] + pub event_bridge_type: Option, + + /// The name of the queue for the event bridge + #[arg(env = "MADARA_ORCHESTRATOR_EVENT_BRIDGE_TARGET_QUEUE_NAME", long, default_value = Some("madara_orchestrator_worker_trigger_queue"), help = "The name of the SNS queue to send messages to from the event bridge.")] + pub target_queue_name: Option, + + /// The cron time for the event bridge trigger rule. + #[arg(env = "MADARA_ORCHESTRATOR_EVENT_BRIDGE_CRON_TIME", long, default_value = Some("60"), help = "The cron time for the event bridge trigger rule. Defaults to 10 seconds.")] + pub cron_time: Option, + + /// The name of the event bridge trigger rule. + #[arg(env = "MADARA_ORCHESTRATOR_EVENT_BRIDGE_TRIGGER_RULE_NAME", long, default_value = Some("madara-orchestrator-worker-trigger"), help = "The name of the event bridge trigger rule.")] + pub trigger_rule_name: Option, + + /// The name of the queue for the event bridge + #[arg(env = "MADARA_ORCHESTRATOR_EVENT_BRIDGE_TRIGGER_ROLE_NAME", long, default_value = Some("madara-orchestrator-worker-trigger-role"), help = "The name of the Trigger Role to assign to the event bridge")] + pub trigger_role_name: Option, + + /// The name of the queue for the event bridge + #[arg(env = "MADARA_ORCHESTRATOR_EVENT_BRIDGE_TRIGGER_POLICY_NAME", long, default_value = Some("madara-orchestrator-worker-trigger-policy"), help = "The name of the Trigger Policy to assign to the event bridge")] + pub trigger_policy_name: Option, +} diff --git a/orchestrator/crates/orchestrator/src/cli/cron/mod.rs b/orchestrator/crates/orchestrator/src/cli/cron/mod.rs new file mode 100644 index 000000000..19e8a5cf4 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/cron/mod.rs @@ -0,0 +1,8 @@ +use crate::cron::event_bridge::AWSEventBridgeValidatedArgs; + +pub mod event_bridge; + +#[derive(Clone, Debug)] +pub enum CronValidatedArgs { + AWSEventBridge(AWSEventBridgeValidatedArgs), +} diff --git a/orchestrator/crates/orchestrator/src/cli/da/ethereum.rs b/orchestrator/crates/orchestrator/src/cli/da/ethereum.rs new file mode 100644 index 000000000..7c9c5cec5 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/da/ethereum.rs @@ -0,0 +1,15 @@ +use clap::Args; +use url::Url; + +/// Parameters used to config Ethereum. +#[derive(Debug, Clone, Args)] +#[group(requires_all = ["ethereum_da_rpc_url"])] +pub struct EthereumDaCliArgs { + /// Use the Ethereum DA layer. + #[arg(long)] + pub da_on_ethereum: bool, + + /// The RPC URL of the Ethereum node. + #[arg(env = "MADARA_ORCHESTRATOR_ETHEREUM_DA_RPC_URL", long)] + pub ethereum_da_rpc_url: Option, +} diff --git a/orchestrator/crates/orchestrator/src/cli/da/mod.rs b/orchestrator/crates/orchestrator/src/cli/da/mod.rs new file mode 100644 index 000000000..54c984963 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/da/mod.rs @@ -0,0 +1,8 @@ +use ethereum_da_client::EthereumDaValidatedArgs; + +pub mod ethereum; + +#[derive(Debug, Clone)] +pub enum DaValidatedArgs { + Ethereum(EthereumDaValidatedArgs), +} diff --git a/orchestrator/crates/orchestrator/src/cli/database/mod.rs b/orchestrator/crates/orchestrator/src/cli/database/mod.rs new file mode 100644 index 000000000..b2bd6cb15 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/database/mod.rs @@ -0,0 +1,8 @@ +use crate::database::mongodb::MongoDBValidatedArgs; + +pub mod mongodb; + +#[derive(Debug, Clone)] +pub enum DatabaseValidatedArgs { + MongoDB(MongoDBValidatedArgs), +} diff --git a/orchestrator/crates/orchestrator/src/cli/database/mongodb.rs b/orchestrator/crates/orchestrator/src/cli/database/mongodb.rs new file mode 100644 index 000000000..f357a69a9 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/database/mongodb.rs @@ -0,0 +1,18 @@ +use clap::Args; + +/// Parameters used to config MongoDB. +#[derive(Debug, Clone, Args)] +#[group(requires_all = ["mongodb_connection_url"])] +pub struct MongoDBCliArgs { + /// Use the MongoDB client + #[arg(long)] + pub mongodb: bool, + + /// The connection string to the MongoDB server. + #[arg(env = "MADARA_ORCHESTRATOR_MONGODB_CONNECTION_URL", long, default_value = Some("mongodb://localhost:27017"))] + pub mongodb_connection_url: Option, + + /// The name of the database. + #[arg(env = "MADARA_ORCHESTRATOR_DATABASE_NAME", long, default_value = Some("orchestrator"))] + pub mongodb_database_name: Option, +} diff --git a/orchestrator/crates/orchestrator/src/cli/instrumentation.rs b/orchestrator/crates/orchestrator/src/cli/instrumentation.rs new file mode 100644 index 000000000..edca05199 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/instrumentation.rs @@ -0,0 +1,15 @@ +use clap::Args; +use url::Url; + +/// Parameters used to config instrumentation. +#[derive(Debug, Clone, Args)] +#[group()] +pub struct InstrumentationCliArgs { + /// The name of the instrumentation service. + #[arg(env = "MADARA_ORCHESTRATOR_OTEL_SERVICE_NAME", long, default_value = "orchestrator")] + pub otel_service_name: Option, + + /// The endpoint of the collector. + #[arg(env = "MADARA_ORCHESTRATOR_OTEL_COLLECTOR_ENDPOINT", long)] + pub otel_collector_endpoint: Option, +} diff --git a/orchestrator/crates/orchestrator/src/cli/mod.rs b/orchestrator/crates/orchestrator/src/cli/mod.rs new file mode 100644 index 000000000..a4307d902 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/mod.rs @@ -0,0 +1,903 @@ +use alert::AlertValidatedArgs; +use cairo_vm::types::layout_name::LayoutName; +use clap::{ArgGroup, Parser, Subcommand}; +use cron::event_bridge::AWSEventBridgeCliArgs; +use cron::CronValidatedArgs; +use da::DaValidatedArgs; +use database::DatabaseValidatedArgs; +use prover::ProverValidatedArgs; +use provider::aws::AWSConfigCliArgs; +use provider::ProviderValidatedArgs; +use queue::QueueValidatedArgs; +use snos::SNOSParams; +use storage::StorageValidatedArgs; +use url::Url; + +use crate::config::ServiceParams; +use crate::routes::ServerParams; +use crate::telemetry::InstrumentationParams; + +pub mod alert; +pub mod cron; +pub mod da; +pub mod database; +pub mod instrumentation; +pub mod prover; +pub mod prover_layout; +pub mod provider; +pub mod queue; +pub mod server; +pub mod service; +pub mod settlement; +pub mod snos; +pub mod storage; +#[derive(Parser, Debug)] +pub struct Cli { + #[command(subcommand)] + pub command: Commands, +} + +#[derive(Subcommand, Debug)] +pub enum Commands { + /// Run the orchestrator + Run { + #[command(flatten)] + run_command: Box, + }, + /// Setup the orchestrator + Setup { + #[command(flatten)] + setup_command: Box, + }, +} + +#[derive(Parser, Debug)] +#[command(author, version, about, long_about = None)] +#[clap( + group( + ArgGroup::new("provider") + .args(&["aws"]) + .required(true) + .multiple(false) + ), + group( + ArgGroup::new("settlement_layer") + .args(&["settle_on_ethereum", "settle_on_starknet"]) + .required(true) + .multiple(false) + ), + group( + ArgGroup::new("storage") + .args(&["aws_s3"]) + .required(true) + .multiple(false) + .requires("provider") + ), + group( + ArgGroup::new("queue") + .args(&["aws_sqs"]) + .required(true) + .multiple(false) + .requires("provider") + ), + group( + ArgGroup::new("alert") + .args(&["aws_sns"]) + .required(true) + .multiple(false) + .requires("provider") + ), + group( + ArgGroup::new("prover") + .args(&["sharp", "atlantic"]) + .required(true) + .multiple(false) + ), + group( + ArgGroup::new("da_layer") + .args(&["da_on_ethereum"]) + .required(true) + .multiple(false) + ), +)] +pub struct RunCmd { + // Provider Config + #[clap(flatten)] + pub aws_config_args: AWSConfigCliArgs, + + // Settlement Layer + #[clap(flatten)] + ethereum_args: settlement::ethereum::EthereumSettlementCliArgs, + + #[clap(flatten)] + starknet_args: settlement::starknet::StarknetSettlementCliArgs, + + // Storage + #[clap(flatten)] + pub aws_s3_args: storage::aws_s3::AWSS3CliArgs, + + // Queue + #[clap(flatten)] + pub aws_sqs_args: queue::aws_sqs::AWSSQSCliArgs, + + // Server + #[clap(flatten)] + pub server_args: server::ServerCliArgs, + + // Alert + #[clap(flatten)] + pub aws_sns_args: alert::aws_sns::AWSSNSCliArgs, + + // Database + #[clap(flatten)] + pub mongodb_args: database::mongodb::MongoDBCliArgs, + + // Data Availability Layer + #[clap(flatten)] + pub ethereum_da_args: da::ethereum::EthereumDaCliArgs, + + // Prover + #[clap(flatten)] + pub sharp_args: prover::sharp::SharpCliArgs, + + #[clap(flatten)] + pub atlantic_args: prover::atlantic::AtlanticCliArgs, + + #[clap(flatten)] + pub proving_layout_args: prover_layout::ProverLayoutCliArgs, + + // SNOS + #[clap(flatten)] + pub snos_args: snos::SNOSCliArgs, + + #[arg(env = "MADARA_ORCHESTRATOR_MADARA_RPC_URL", long, required = true)] + pub madara_rpc_url: Url, + + // Service + #[clap(flatten)] + pub service_args: service::ServiceCliArgs, + #[clap(flatten)] + pub instrumentation_args: instrumentation::InstrumentationCliArgs, +} + +impl RunCmd { + pub fn validate_provider_params(&self) -> Result { + validate_params::validate_provider_params(&self.aws_config_args) + } + + pub fn validate_alert_params(&self) -> Result { + validate_params::validate_alert_params(&self.aws_sns_args, &self.aws_config_args) + } + + pub fn validate_queue_params(&self) -> Result { + validate_params::validate_queue_params(&self.aws_sqs_args, &self.aws_config_args) + } + + pub fn validate_storage_params(&self) -> Result { + validate_params::validate_storage_params(&self.aws_s3_args, &self.aws_config_args) + } + + pub fn validate_database_params(&self) -> Result { + validate_params::validate_database_params(&self.mongodb_args) + } + + pub fn validate_da_params(&self) -> Result { + validate_params::validate_da_params(&self.ethereum_da_args) + } + + pub fn validate_settlement_params(&self) -> Result { + validate_params::validate_settlement_params(&self.ethereum_args, &self.starknet_args) + } + + pub fn validate_prover_params(&self) -> Result { + validate_params::validate_prover_params(&self.sharp_args, &self.atlantic_args) + } + + pub fn validate_instrumentation_params(&self) -> Result { + validate_params::validate_instrumentation_params(&self.instrumentation_args) + } + + pub fn validate_server_params(&self) -> Result { + validate_params::validate_server_params(&self.server_args) + } + + pub fn validate_service_params(&self) -> Result { + validate_params::validate_service_params(&self.service_args) + } + + pub fn validate_proving_layout_name(&self) -> Result<(LayoutName, LayoutName), String> { + validate_params::validate_proving_layout_name(&self.proving_layout_args) + } + + pub fn validate_snos_params(&self) -> Result { + validate_params::validate_snos_params(&self.snos_args) + } +} + +#[derive(Parser, Debug)] +#[command(author, version, about, long_about = None)] +#[clap( + group( + ArgGroup::new("provider") + .args(&["aws"]) + .required(true) + .multiple(false) + ), + group( + ArgGroup::new("storage") + .args(&["aws_s3"]) + .required(true) + .multiple(false) + .requires("provider") + ), + group( + ArgGroup::new("queue") + .args(&["aws_sqs"]) + .required(true) + .multiple(false) + .requires("provider") + ), + group( + ArgGroup::new("alert") + .args(&["aws_sns"]) + .required(true) + .multiple(false) + .requires("provider") + ), + group( + ArgGroup::new("cron") + .args(&["aws_event_bridge"]) + .required(true) + .multiple(false) + .requires("provider") + ), +)] +pub struct SetupCmd { + // AWS Config + #[clap(flatten)] + pub aws_config_args: AWSConfigCliArgs, + + // Storage + #[clap(flatten)] + pub aws_s3_args: storage::aws_s3::AWSS3CliArgs, + + // Queue + #[clap(flatten)] + pub aws_sqs_args: queue::aws_sqs::AWSSQSCliArgs, + + // Alert + #[clap(flatten)] + pub aws_sns_args: alert::aws_sns::AWSSNSCliArgs, + + // Cron + #[clap(flatten)] + pub aws_event_bridge_args: AWSEventBridgeCliArgs, +} + +impl SetupCmd { + pub fn validate_provider_params(&self) -> Result { + validate_params::validate_provider_params(&self.aws_config_args) + } + + pub fn validate_storage_params(&self) -> Result { + validate_params::validate_storage_params(&self.aws_s3_args, &self.aws_config_args) + } + + pub fn validate_queue_params(&self) -> Result { + validate_params::validate_queue_params(&self.aws_sqs_args, &self.aws_config_args) + } + + pub fn validate_alert_params(&self) -> Result { + validate_params::validate_alert_params(&self.aws_sns_args, &self.aws_config_args) + } + + pub fn validate_cron_params(&self) -> Result { + validate_params::validate_cron_params(&self.aws_event_bridge_args, &self.aws_config_args) + } +} + +pub mod validate_params { + use std::str::FromStr as _; + use std::time::Duration; + + use alloy::primitives::Address; + use atlantic_service::AtlanticValidatedArgs; + use cairo_vm::types::layout_name::LayoutName; + use ethereum_da_client::EthereumDaValidatedArgs; + use ethereum_settlement_client::EthereumSettlementValidatedArgs; + use sharp_service::SharpValidatedArgs; + use starknet_settlement_client::StarknetSettlementValidatedArgs; + use url::Url; + + use super::alert::aws_sns::AWSSNSCliArgs; + use super::alert::AlertValidatedArgs; + use super::cron::event_bridge::AWSEventBridgeCliArgs; + use super::cron::CronValidatedArgs; + use super::da::ethereum::EthereumDaCliArgs; + use super::da::DaValidatedArgs; + use super::database::mongodb::MongoDBCliArgs; + use super::database::DatabaseValidatedArgs; + use super::instrumentation::InstrumentationCliArgs; + use super::prover::atlantic::AtlanticCliArgs; + use super::prover::sharp::SharpCliArgs; + use super::prover::ProverValidatedArgs; + use super::provider::aws::AWSConfigCliArgs; + use super::provider::{AWSConfigValidatedArgs, ProviderValidatedArgs}; + use super::queue::aws_sqs::AWSSQSCliArgs; + use super::queue::QueueValidatedArgs; + use super::server::ServerCliArgs; + use super::service::ServiceCliArgs; + use super::settlement::ethereum::EthereumSettlementCliArgs; + use super::settlement::starknet::StarknetSettlementCliArgs; + use super::settlement::SettlementValidatedArgs; + use super::snos::{SNOSCliArgs, SNOSParams}; + use super::storage::aws_s3::AWSS3CliArgs; + use super::storage::StorageValidatedArgs; + use crate::alerts::aws_sns::AWSSNSValidatedArgs; + use crate::cli::prover_layout::ProverLayoutCliArgs; + use crate::config::ServiceParams; + use crate::cron::event_bridge::AWSEventBridgeValidatedArgs; + use crate::data_storage::aws_s3::AWSS3ValidatedArgs; + use crate::database::mongodb::MongoDBValidatedArgs; + use crate::queue::sqs::AWSSQSValidatedArgs; + use crate::routes::ServerParams; + use crate::telemetry::InstrumentationParams; + + pub(crate) fn validate_provider_params( + aws_config_args: &AWSConfigCliArgs, + ) -> Result { + if aws_config_args.aws { + Ok(ProviderValidatedArgs::AWS(AWSConfigValidatedArgs { + aws_access_key_id: aws_config_args.aws_access_key_id.clone(), + aws_secret_access_key: aws_config_args.aws_secret_access_key.clone(), + aws_region: aws_config_args.aws_region.clone(), + })) + } else { + Err("Only AWS is supported as of now".to_string()) + } + } + + pub(crate) fn validate_alert_params( + aws_sns_args: &AWSSNSCliArgs, + aws_config_args: &AWSConfigCliArgs, + ) -> Result { + if aws_sns_args.aws_sns && aws_config_args.aws { + Ok(AlertValidatedArgs::AWSSNS(AWSSNSValidatedArgs { + topic_arn: aws_sns_args.sns_arn.clone().expect("SNS ARN is required"), + })) + } else { + Err("Only AWS SNS is supported as of now".to_string()) + } + } + + pub(crate) fn validate_queue_params( + aws_sqs_args: &AWSSQSCliArgs, + aws_config_args: &AWSConfigCliArgs, + ) -> Result { + if aws_sqs_args.aws_sqs && aws_config_args.aws { + Ok(QueueValidatedArgs::AWSSQS(AWSSQSValidatedArgs { + queue_base_url: Url::parse(&aws_sqs_args.queue_base_url.clone().expect("Queue base URL is required")) + .expect("Invalid queue base URL"), + sqs_prefix: aws_sqs_args.sqs_prefix.clone().expect("SQS prefix is required"), + sqs_suffix: aws_sqs_args.sqs_suffix.clone().expect("SQS suffix is required"), + })) + } else { + Err("Only AWS SQS is supported as of now".to_string()) + } + } + + pub(crate) fn validate_storage_params( + aws_s3_args: &AWSS3CliArgs, + aws_config_args: &AWSConfigCliArgs, + ) -> Result { + if aws_s3_args.aws_s3 && aws_config_args.aws { + Ok(StorageValidatedArgs::AWSS3(AWSS3ValidatedArgs { + bucket_name: aws_s3_args.bucket_name.clone().expect("Bucket name is required"), + })) + } else { + Err("Only AWS S3 is supported as of now".to_string()) + } + } + + pub(crate) fn validate_cron_params( + aws_event_bridge_args: &AWSEventBridgeCliArgs, + aws_config_args: &AWSConfigCliArgs, + ) -> Result { + if aws_event_bridge_args.aws_event_bridge && aws_config_args.aws { + let cron_type = aws_event_bridge_args.event_bridge_type.clone().expect("Event Bridge type is required"); + + Ok(CronValidatedArgs::AWSEventBridge(AWSEventBridgeValidatedArgs { + cron_type, + target_queue_name: aws_event_bridge_args + .target_queue_name + .clone() + .expect("Target queue name is required"), + cron_time: Duration::from_secs( + aws_event_bridge_args + .cron_time + .clone() + .expect("Cron time is required") + .parse::() + .expect("Failed to parse cron time"), + ), + trigger_rule_name: aws_event_bridge_args + .trigger_rule_name + .clone() + .expect("Trigger rule name is required"), + trigger_role_name: aws_event_bridge_args + .trigger_role_name + .clone() + .expect("Trigger role name is required"), + trigger_policy_name: aws_event_bridge_args + .trigger_policy_name + .clone() + .expect("Trigger policy name is required"), + })) + } else { + Err("Only AWS Event Bridge is supported as of now".to_string()) + } + } + + pub(crate) fn validate_database_params(mongodb_args: &MongoDBCliArgs) -> Result { + if mongodb_args.mongodb { + Ok(DatabaseValidatedArgs::MongoDB(MongoDBValidatedArgs { + connection_url: Url::parse( + &mongodb_args.mongodb_connection_url.clone().expect("MongoDB connection URL is required"), + ) + .expect("Invalid MongoDB connection URL"), + database_name: mongodb_args.mongodb_database_name.clone().expect("MongoDB database name is required"), + })) + } else { + Err("Only MongoDB is supported as of now".to_string()) + } + } + + pub(crate) fn validate_da_params(ethereum_da_args: &EthereumDaCliArgs) -> Result { + if ethereum_da_args.da_on_ethereum { + Ok(DaValidatedArgs::Ethereum(EthereumDaValidatedArgs { + ethereum_da_rpc_url: ethereum_da_args + .ethereum_da_rpc_url + .clone() + .expect("Ethereum DA RPC URL is required"), + })) + } else { + Err("Only Ethereum is supported as of now".to_string()) + } + } + + pub(crate) fn validate_settlement_params( + ethereum_args: &EthereumSettlementCliArgs, + starknet_args: &StarknetSettlementCliArgs, + ) -> Result { + match (ethereum_args.settle_on_ethereum, starknet_args.settle_on_starknet) { + (true, true) => Err("Cannot settle on both Ethereum and Starknet".to_string()), + (true, false) => { + let l1_core_contract_address = Address::from_str( + ðereum_args.l1_core_contract_address.clone().expect("L1 core contract address is required"), + ) + .expect("Invalid L1 core contract address"); + let starknet_operator_address = Address::from_str( + ðereum_args.starknet_operator_address.clone().expect("Starknet operator address is required"), + ) + .expect("Invalid Starknet operator address"); + + let ethereum_params = EthereumSettlementValidatedArgs { + ethereum_rpc_url: ethereum_args.ethereum_rpc_url.clone().expect("Ethereum RPC URL is required"), + ethereum_private_key: ethereum_args + .ethereum_private_key + .clone() + .expect("Ethereum private key is required"), + l1_core_contract_address, + starknet_operator_address, + }; + Ok(SettlementValidatedArgs::Ethereum(ethereum_params)) + } + (false, true) => { + let starknet_params = StarknetSettlementValidatedArgs { + starknet_rpc_url: starknet_args.starknet_rpc_url.clone().expect("Starknet RPC URL is required"), + starknet_private_key: starknet_args + .starknet_private_key + .clone() + .expect("Starknet private key is required"), + starknet_account_address: starknet_args + .starknet_account_address + .clone() + .expect("Starknet account address is required"), + starknet_cairo_core_contract_address: starknet_args + .starknet_cairo_core_contract_address + .clone() + .expect("Starknet Cairo core contract address is required"), + starknet_finality_retry_wait_in_secs: starknet_args + .starknet_finality_retry_wait_in_secs + .expect("Starknet finality retry wait in seconds is required"), + }; + Ok(SettlementValidatedArgs::Starknet(starknet_params)) + } + (false, false) => Err("Settlement layer is required".to_string()), + } + } + + pub(crate) fn validate_prover_params( + sharp_args: &SharpCliArgs, + atlantic_args: &AtlanticCliArgs, + ) -> Result { + match (sharp_args.sharp, atlantic_args.atlantic) { + (true, true) => Err("Cannot use both Sharp and Atlantic provers".to_string()), + (true, false) => Ok(ProverValidatedArgs::Sharp(SharpValidatedArgs { + sharp_customer_id: sharp_args.sharp_customer_id.clone().expect("Sharp customer ID is required"), + sharp_url: sharp_args.sharp_url.clone().expect("Sharp URL is required"), + sharp_user_crt: sharp_args.sharp_user_crt.clone().expect("Sharp user certificate is required"), + sharp_user_key: sharp_args.sharp_user_key.clone().expect("Sharp user key is required"), + sharp_rpc_node_url: sharp_args.sharp_rpc_node_url.clone().expect("Sharp RPC node URL is required"), + sharp_proof_layout: sharp_args.sharp_proof_layout.clone().expect("Sharp proof layout is required"), + gps_verifier_contract_address: sharp_args + .gps_verifier_contract_address + .clone() + .expect("GPS verifier contract address is required"), + sharp_server_crt: sharp_args.sharp_server_crt.clone().expect("Sharp server certificate is required"), + })), + (false, true) => Ok(ProverValidatedArgs::Atlantic(AtlanticValidatedArgs { + atlantic_api_key: atlantic_args.atlantic_api_key.clone().expect("Atlantic API key required"), + atlantic_service_url: atlantic_args.atlantic_service_url.clone().expect("Atlantic URL is required"), + atlantic_rpc_node_url: atlantic_args + .atlantic_rpc_node_url + .clone() + .expect("Atlantic API key is required"), + atlantic_verifier_contract_address: atlantic_args + .atlantic_verifier_contract_address + .clone() + .expect("Atlantic verifier contract address is required"), + atlantic_settlement_layer: atlantic_args + .atlantic_settlement_layer + .clone() + .expect("Atlantic settlement layer is required"), + atlantic_mock_fact_hash: atlantic_args + .atlantic_mock_fact_hash + .clone() + .expect("Atlantic mock fact hash is required"), + atlantic_prover_type: atlantic_args + .atlantic_prover_type + .clone() + .expect("Atlantic prover type is required"), + })), + (false, false) => Err("Prover is required".to_string()), + } + } + + pub(crate) fn validate_instrumentation_params( + instrumentation_args: &InstrumentationCliArgs, + ) -> Result { + Ok(InstrumentationParams { + otel_service_name: instrumentation_args.otel_service_name.clone().expect("Otel service name is required"), + otel_collector_endpoint: instrumentation_args.otel_collector_endpoint.clone(), + }) + } + + pub(crate) fn validate_server_params(server_args: &ServerCliArgs) -> Result { + Ok(ServerParams { host: server_args.host.clone(), port: server_args.port }) + } + + pub(crate) fn validate_proving_layout_name(args: &ProverLayoutCliArgs) -> Result<(LayoutName, LayoutName), String> { + let layout_from_name = |layout_name: &str| -> Result { + Ok(match layout_name { + "plain" => LayoutName::plain, + "small" => LayoutName::small, + "dex" => LayoutName::dex, + "recursive" => LayoutName::recursive, + "starknet" => LayoutName::starknet, + "starknet_with_keccak" => LayoutName::starknet_with_keccak, + "recursive_large_output" => LayoutName::recursive_large_output, + "recursive_with_poseidon" => LayoutName::recursive_with_poseidon, + "all_solidity" => LayoutName::all_solidity, + "all_cairo" => LayoutName::all_cairo, + "dynamic" => LayoutName::dynamic, + _ => return Err(format!("Invalid layout name: {}", layout_name)), + }) + }; + + let prover_layout = layout_from_name(args.prover_layout_name.as_str()) + .map_err(|e| format!("Error validating prover layout: {}", e))?; + let snos_layout = layout_from_name(args.snos_layout_name.as_str()) + .map_err(|e| format!("Error validating SNOS layout: {}", e))?; + + Ok((snos_layout, prover_layout)) + } + + pub(crate) fn validate_service_params(service_args: &ServiceCliArgs) -> Result { + Ok(ServiceParams { + // return None if the value is empty string + max_block_to_process: service_args.max_block_to_process.clone().and_then(|s| { + if s.is_empty() { None } else { Some(s.parse::().expect("Failed to parse max block to process")) } + }), + min_block_to_process: service_args.min_block_to_process.clone().and_then(|s| { + if s.is_empty() { None } else { Some(s.parse::().expect("Failed to parse min block to process")) } + }), + }) + } + + pub(crate) fn validate_snos_params(snos_args: &SNOSCliArgs) -> Result { + Ok(SNOSParams { rpc_for_snos: snos_args.rpc_for_snos.clone() }) + } + + #[cfg(test)] + pub mod test { + + use rstest::rstest; + use url::Url; + + use crate::cli::alert::aws_sns::AWSSNSCliArgs; + use crate::cli::cron::event_bridge::AWSEventBridgeCliArgs; + use crate::cli::da::ethereum::EthereumDaCliArgs; + use crate::cli::database::mongodb::MongoDBCliArgs; + use crate::cli::instrumentation::InstrumentationCliArgs; + use crate::cli::prover::atlantic::AtlanticCliArgs; + use crate::cli::prover::sharp::SharpCliArgs; + use crate::cli::provider::aws::AWSConfigCliArgs; + use crate::cli::queue::aws_sqs::AWSSQSCliArgs; + use crate::cli::server::ServerCliArgs; + use crate::cli::service::ServiceCliArgs; + use crate::cli::settlement::ethereum::EthereumSettlementCliArgs; + use crate::cli::settlement::starknet::StarknetSettlementCliArgs; + use crate::cli::snos::SNOSCliArgs; + use crate::cli::storage::aws_s3::AWSS3CliArgs; + use crate::cli::validate_params::{ + validate_alert_params, validate_cron_params, validate_da_params, validate_database_params, + validate_instrumentation_params, validate_prover_params, validate_provider_params, validate_queue_params, + validate_server_params, validate_service_params, validate_settlement_params, validate_snos_params, + validate_storage_params, + }; + use crate::cron::event_bridge::EventBridgeType; + + #[rstest] + #[case(true)] + #[case(false)] + fn test_validate_provider_params(#[case] is_aws: bool) { + let aws_config_args: AWSConfigCliArgs = AWSConfigCliArgs { + aws: is_aws, + aws_access_key_id: "".to_string(), + aws_secret_access_key: "".to_string(), + aws_region: "".to_string(), + }; + + let provider_params = validate_provider_params(&aws_config_args); + if is_aws { + assert!(provider_params.is_ok()); + } else { + assert!(provider_params.is_err()); + } + } + + #[rstest] + #[case(true, true)] + #[case(true, false)] + #[case(false, true)] + #[case(false, false)] + fn test_validate_alert_params(#[case] is_aws: bool, #[case] is_sns: bool) { + let aws_config_args: AWSConfigCliArgs = AWSConfigCliArgs { + aws: is_aws, + aws_access_key_id: "".to_string(), + aws_secret_access_key: "".to_string(), + aws_region: "".to_string(), + }; + let aws_sns_args: AWSSNSCliArgs = AWSSNSCliArgs { aws_sns: is_sns, sns_arn: Some("".to_string()) }; + + let alert_params = validate_alert_params(&aws_sns_args, &aws_config_args); + if is_aws && is_sns { + assert!(alert_params.is_ok()); + } else { + assert!(alert_params.is_err()); + } + } + + #[rstest] + #[case(true, true)] + #[case(true, false)] + #[case(false, true)] + #[case(false, false)] + fn test_validate_queue_params(#[case] is_aws: bool, #[case] is_sqs: bool) { + let aws_config_args: AWSConfigCliArgs = AWSConfigCliArgs { + aws: is_aws, + aws_access_key_id: "".to_string(), + aws_secret_access_key: "".to_string(), + aws_region: "".to_string(), + }; + let aws_sqs_args: AWSSQSCliArgs = AWSSQSCliArgs { + aws_sqs: is_sqs, + queue_base_url: Some("http://sqs.us-east-1.localhost.localstack.cloud:4566/000000000000".to_string()), + sqs_prefix: Some("".to_string()), + sqs_suffix: Some("".to_string()), + }; + let queue_params = validate_queue_params(&aws_sqs_args, &aws_config_args); + if is_aws && is_sqs { + assert!(queue_params.is_ok()); + } else { + assert!(queue_params.is_err()); + } + } + + #[rstest] + #[case(true, true)] + #[case(true, false)] + #[case(false, true)] + #[case(false, false)] + fn test_validate_storage_params(#[case] is_aws: bool, #[case] is_s3: bool) { + let aws_s3_args: AWSS3CliArgs = AWSS3CliArgs { + aws_s3: is_s3, + bucket_name: Some("".to_string()), + bucket_location_constraint: Some("".to_string()), + }; + let aws_config_args: AWSConfigCliArgs = AWSConfigCliArgs { + aws: is_aws, + aws_access_key_id: "".to_string(), + aws_secret_access_key: "".to_string(), + aws_region: "".to_string(), + }; + let storage_params = validate_storage_params(&aws_s3_args, &aws_config_args); + if is_aws && is_s3 { + assert!(storage_params.is_ok()); + } else { + assert!(storage_params.is_err()); + } + } + + #[rstest] + #[case(true)] + #[case(false)] + fn test_validate_database_params(#[case] is_mongodb: bool) { + let mongodb_args: MongoDBCliArgs = MongoDBCliArgs { + mongodb: is_mongodb, + mongodb_connection_url: Some("mongodb://localhost:27017".to_string()), + mongodb_database_name: Some("orchestrator".to_string()), + }; + let database_params = validate_database_params(&mongodb_args); + if is_mongodb { + assert!(database_params.is_ok()); + } else { + assert!(database_params.is_err()); + } + } + + #[rstest] + #[case(true)] + #[case(false)] + fn test_validate_da_params(#[case] is_ethereum: bool) { + let ethereum_da_args: EthereumDaCliArgs = EthereumDaCliArgs { + da_on_ethereum: is_ethereum, + ethereum_da_rpc_url: Some(Url::parse("http://localhost:8545").unwrap()), + }; + let da_params = validate_da_params(ðereum_da_args); + if is_ethereum { + assert!(da_params.is_ok()); + } else { + assert!(da_params.is_err()); + } + } + + #[rstest] + #[case(true, false)] + #[case(false, true)] + #[case(false, false)] + #[case(true, true)] + fn test_validate_settlement_params(#[case] is_ethereum: bool, #[case] is_starknet: bool) { + let ethereum_args: EthereumSettlementCliArgs = EthereumSettlementCliArgs { + ethereum_rpc_url: Some(Url::parse("http://localhost:8545").unwrap()), + ethereum_private_key: Some("".to_string()), + l1_core_contract_address: Some("0xE2Bb56ee936fd6433DC0F6e7e3b8365C906AA057".to_string()), + starknet_operator_address: Some("0x5b98B836969A60FEC50Fa925905Dd1D382a7db43".to_string()), + settle_on_ethereum: is_ethereum, + }; + let starknet_args: StarknetSettlementCliArgs = StarknetSettlementCliArgs { + starknet_rpc_url: Some(Url::parse("http://localhost:8545").unwrap()), + starknet_private_key: Some("".to_string()), + starknet_account_address: Some("".to_string()), + starknet_cairo_core_contract_address: Some("".to_string()), + starknet_finality_retry_wait_in_secs: Some(0), + settle_on_starknet: is_starknet, + }; + let settlement_params = validate_settlement_params(ðereum_args, &starknet_args); + if is_ethereum ^ is_starknet { + assert!(settlement_params.is_ok()); + } else { + assert!(settlement_params.is_err()); + } + } + + #[rstest] + #[case(true, false)] + #[case(false, true)] + #[case(false, false)] + #[case(true, true)] + fn test_validate_prover_params(#[case] is_sharp: bool, #[case] is_atlantic: bool) { + let sharp_args: SharpCliArgs = SharpCliArgs { + sharp: is_sharp, + sharp_customer_id: Some("".to_string()), + sharp_url: Some(Url::parse("http://localhost:8545").unwrap()), + sharp_user_crt: Some("".to_string()), + sharp_user_key: Some("".to_string()), + sharp_rpc_node_url: Some(Url::parse("http://localhost:8545").unwrap()), + sharp_proof_layout: Some("".to_string()), + gps_verifier_contract_address: Some("".to_string()), + sharp_server_crt: Some("".to_string()), + }; + + let atlantic_args: AtlanticCliArgs = AtlanticCliArgs { + atlantic: is_atlantic, + atlantic_api_key: Some("".to_string()), + atlantic_service_url: Some(Url::parse("http://localhost:8545").unwrap()), + atlantic_rpc_node_url: Some(Url::parse("http://localhost:8545").unwrap()), + atlantic_verifier_contract_address: Some("".to_string()), + atlantic_settlement_layer: Some("".to_string()), + atlantic_mock_fact_hash: Some("".to_string()), + atlantic_prover_type: Some("".to_string()), + }; + let prover_params = validate_prover_params(&sharp_args, &atlantic_args); + if is_sharp ^ is_atlantic { + assert!(prover_params.is_ok()); + } else { + assert!(prover_params.is_err()); + } + } + + #[rstest] + #[case(true)] + #[case(false)] + fn test_validate_cron_params(#[case] is_aws: bool) { + let aws_event_bridge_args: AWSEventBridgeCliArgs = AWSEventBridgeCliArgs { + aws_event_bridge: is_aws, + event_bridge_type: Some(EventBridgeType::Rule), + target_queue_name: Some(String::from("test")), + cron_time: Some(String::from("12")), + trigger_rule_name: Some(String::from("test")), + trigger_role_name: Some(String::from("test-role")), + trigger_policy_name: Some(String::from("test-policy")), + }; + let aws_config_args: AWSConfigCliArgs = AWSConfigCliArgs { + aws: is_aws, + aws_access_key_id: "".to_string(), + aws_secret_access_key: "".to_string(), + aws_region: "".to_string(), + }; + let cron_params = validate_cron_params(&aws_event_bridge_args, &aws_config_args); + if is_aws { + assert!(cron_params.is_ok()); + } else { + assert!(cron_params.is_err()); + } + } + + #[rstest] + fn test_validate_instrumentation_params() { + let instrumentation_args: InstrumentationCliArgs = + InstrumentationCliArgs { otel_service_name: Some("".to_string()), otel_collector_endpoint: None }; + let instrumentation_params = validate_instrumentation_params(&instrumentation_args); + assert!(instrumentation_params.is_ok()); + } + + #[rstest] + fn test_validate_server_params() { + let server_args: ServerCliArgs = ServerCliArgs { host: "".to_string(), port: 0 }; + let server_params = validate_server_params(&server_args); + assert!(server_params.is_ok()); + } + + #[rstest] + fn test_validate_snos_params() { + let snos_args: SNOSCliArgs = SNOSCliArgs { rpc_for_snos: Url::parse("http://localhost:8545").unwrap() }; + let snos_params = validate_snos_params(&snos_args); + assert!(snos_params.is_ok()); + } + + #[rstest] + fn test_validate_service_params() { + let service_args: ServiceCliArgs = ServiceCliArgs { + max_block_to_process: Some("66645".to_string()), + min_block_to_process: Some("100".to_string()), + }; + let service_params = validate_service_params(&service_args); + assert!(service_params.is_ok()); + let service_params = service_params.unwrap(); + assert_eq!(service_params.max_block_to_process, Some(66645)); + assert_eq!(service_params.min_block_to_process, Some(100)); + } + } +} diff --git a/orchestrator/crates/orchestrator/src/cli/prover/atlantic.rs b/orchestrator/crates/orchestrator/src/cli/prover/atlantic.rs new file mode 100644 index 000000000..1a567bfee --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/prover/atlantic.rs @@ -0,0 +1,39 @@ +use clap::Args; +use url::Url; + +/// Parameters used to config Atlantic. +#[derive(Debug, Clone, Args)] +#[group(requires_all = ["atlantic_api_key", "atlantic_service_url", "atlantic_settlement_layer", "atlantic_verifier_contract_address"])] +pub struct AtlanticCliArgs { + /// Use the Atlantic prover. + #[arg(long)] + pub atlantic: bool, + + /// The API key for Atlantic. + #[arg(env = "MADARA_ORCHESTRATOR_ATLANTIC_API_KEY", long)] + pub atlantic_api_key: Option, + + /// The URL of the Atlantic server. + #[arg(env = "MADARA_ORCHESTRATOR_ATLANTIC_SERVICE_URL", long)] + pub atlantic_service_url: Option, + + /// The URL of the Atlantic RPC node. + #[arg(env = "MADARA_ORCHESTRATOR_ATLANTIC_RPC_NODE_URL", long)] + pub atlantic_rpc_node_url: Option, + + /// Whether to use mock fact registry. + #[arg(env = "MADARA_ORCHESTRATOR_ATLANTIC_MOCK_FACT_HASH", long)] + pub atlantic_mock_fact_hash: Option, + + /// The type of prover to use. + #[arg(env = "MADARA_ORCHESTRATOR_ATLANTIC_PROVER_TYPE", long)] + pub atlantic_prover_type: Option, + + /// The settlement layer for Atlantic. + #[arg(env = "MADARA_ORCHESTRATOR_ATLANTIC_SETTLEMENT_LAYER", long)] + pub atlantic_settlement_layer: Option, + + /// The verifier contract address for Atlantic. + #[arg(env = "MADARA_ORCHESTRATOR_ATLANTIC_VERIFIER_CONTRACT_ADDRESS", long)] + pub atlantic_verifier_contract_address: Option, +} diff --git a/orchestrator/crates/orchestrator/src/cli/prover/mod.rs b/orchestrator/crates/orchestrator/src/cli/prover/mod.rs new file mode 100644 index 000000000..63b9702e8 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/prover/mod.rs @@ -0,0 +1,11 @@ +use atlantic_service::AtlanticValidatedArgs; +use sharp_service::SharpValidatedArgs; + +pub mod atlantic; +pub mod sharp; + +#[derive(Debug, Clone)] +pub enum ProverValidatedArgs { + Sharp(SharpValidatedArgs), + Atlantic(AtlanticValidatedArgs), +} diff --git a/orchestrator/crates/orchestrator/src/cli/prover/sharp.rs b/orchestrator/crates/orchestrator/src/cli/prover/sharp.rs new file mode 100644 index 000000000..46e3ffeec --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/prover/sharp.rs @@ -0,0 +1,44 @@ +use clap::Args; +use url::Url; + +/// Parameters used to config Sharp. +#[derive(Debug, Clone, Args)] +#[group(requires_all = ["sharp_customer_id", "sharp_url", "sharp_user_crt", "sharp_user_key", "sharp_server_crt", "gps_verifier_contract_address", "sharp_rpc_node_url"])] +pub struct SharpCliArgs { + /// Use the Sharp prover. + #[arg(long)] + pub sharp: bool, + + /// The customer id for Sharp. + #[arg(env = "MADARA_ORCHESTRATOR_SHARP_CUSTOMER_ID", long)] + pub sharp_customer_id: Option, + + /// The URL of the Sharp server. + #[arg(env = "MADARA_ORCHESTRATOR_SHARP_URL", long)] + pub sharp_url: Option, + + /// The user certificate for Sharp. + #[arg(env = "MADARA_ORCHESTRATOR_SHARP_USER_CRT", long)] + pub sharp_user_crt: Option, + + /// The user key for Sharp. + #[arg(env = "MADARA_ORCHESTRATOR_SHARP_USER_KEY", long)] + pub sharp_user_key: Option, + + /// The RPC node URL for Sharp. + #[arg(env = "MADARA_ORCHESTRATOR_SHARP_RPC_NODE_URL", long)] + pub sharp_rpc_node_url: Option, + + /// The server certificate for Sharp. + #[arg(env = "MADARA_ORCHESTRATOR_SHARP_SERVER_CRT", long)] + pub sharp_server_crt: Option, + + /// The proof layout for Sharp. + #[arg(env = "MADARA_ORCHESTRATOR_SHARP_PROOF_LAYOUT", long, default_value = "small")] + pub sharp_proof_layout: Option, + + // TODO: GPS is a direct dependency of Sharp, hence GPS can be kept in SharpValidatedArgs + /// The GPS verifier contract address. + #[arg(env = "MADARA_ORCHESTRATOR_GPS_VERIFIER_CONTRACT_ADDRESS", long)] + pub gps_verifier_contract_address: Option, +} diff --git a/orchestrator/crates/orchestrator/src/cli/prover_layout.rs b/orchestrator/crates/orchestrator/src/cli/prover_layout.rs new file mode 100644 index 000000000..dbcee0df8 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/prover_layout.rs @@ -0,0 +1,14 @@ +use clap::Args; + +/// Parameters used to config the server. +#[derive(Debug, Clone, Args)] +#[group()] +pub struct ProverLayoutCliArgs { + /// The layout name for SNOS. + #[arg(env = "MADARA_ORCHESTRATOR_SNOS_LAYOUT_NAME", long, default_value = "all_cairo")] + pub snos_layout_name: String, + + /// The layout name for the prover. + #[arg(env = "MADARA_ORCHESTRATOR_PROVER_LAYOUT_NAME", long, default_value = "dynamic")] + pub prover_layout_name: String, +} diff --git a/orchestrator/crates/orchestrator/src/cli/provider/aws.rs b/orchestrator/crates/orchestrator/src/cli/provider/aws.rs new file mode 100644 index 000000000..a3bb6ac6d --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/provider/aws.rs @@ -0,0 +1,23 @@ +use clap::Args; +use serde::Serialize; + +/// Parameters used to config AWS. +#[derive(Debug, Clone, Args, Serialize)] +#[group(requires_all = ["aws_access_key_id", "aws_secret_access_key", "aws_region"])] +pub struct AWSConfigCliArgs { + /// Use this flag to enable AWS provider. + #[arg(long)] + pub aws: bool, + + /// The access key ID. + #[arg(env = "AWS_ACCESS_KEY_ID", long)] + pub aws_access_key_id: String, + + /// The secret access key. + #[arg(env = "AWS_SECRET_ACCESS_KEY", long)] + pub aws_secret_access_key: String, + + /// The region. + #[arg(env = "AWS_REGION", long)] + pub aws_region: String, +} diff --git a/orchestrator/crates/orchestrator/src/cli/provider/mod.rs b/orchestrator/crates/orchestrator/src/cli/provider/mod.rs new file mode 100644 index 000000000..7f51fe337 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/provider/mod.rs @@ -0,0 +1,13 @@ +pub mod aws; + +#[derive(Debug, Clone)] +pub enum ProviderValidatedArgs { + AWS(AWSConfigValidatedArgs), +} + +#[derive(Debug, Clone)] +pub struct AWSConfigValidatedArgs { + pub aws_access_key_id: String, + pub aws_secret_access_key: String, + pub aws_region: String, +} diff --git a/orchestrator/crates/orchestrator/src/cli/queue/aws_sqs.rs b/orchestrator/crates/orchestrator/src/cli/queue/aws_sqs.rs new file mode 100644 index 000000000..39ee08743 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/queue/aws_sqs.rs @@ -0,0 +1,22 @@ +use clap::Args; + +/// Parameters used to config AWS SQS. +#[derive(Debug, Clone, Args)] +#[group(requires_all = ["queue_base_url"])] +pub struct AWSSQSCliArgs { + /// Use the AWS sqs client + #[arg(long)] + pub aws_sqs: bool, + + /// The prefix of the queue. + #[arg(env = "MADARA_ORCHESTRATOR_SQS_PREFIX", long, default_value = Some("madara_orchestrator"))] + pub sqs_prefix: Option, + + /// The suffix of the queue. + #[arg(env = "MADARA_ORCHESTRATOR_SQS_SUFFIX", long, default_value = Some("queue"))] + pub sqs_suffix: Option, + + /// The QUEUE url + #[arg(env = "MADARA_ORCHESTRATOR_SQS_BASE_QUEUE_URL", long)] + pub queue_base_url: Option, +} diff --git a/orchestrator/crates/orchestrator/src/cli/queue/mod.rs b/orchestrator/crates/orchestrator/src/cli/queue/mod.rs new file mode 100644 index 000000000..c3efd2710 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/queue/mod.rs @@ -0,0 +1,8 @@ +use crate::queue::sqs::AWSSQSValidatedArgs; + +pub mod aws_sqs; + +#[derive(Clone, Debug)] +pub enum QueueValidatedArgs { + AWSSQS(AWSSQSValidatedArgs), +} diff --git a/orchestrator/crates/orchestrator/src/cli/server.rs b/orchestrator/crates/orchestrator/src/cli/server.rs new file mode 100644 index 000000000..6f365ef9b --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/server.rs @@ -0,0 +1,14 @@ +use clap::Args; + +/// Parameters used to config the server. +#[derive(Debug, Clone, Args)] +#[group()] +pub struct ServerCliArgs { + /// The host to listen on. + #[arg(env = "MADARA_ORCHESTRATOR_HOST", long, default_value = "127.0.0.1")] + pub host: String, + + /// The port to listen on. + #[arg(env = "MADARA_ORCHESTRATOR_PORT", long, default_value = "3000")] + pub port: u16, +} diff --git a/orchestrator/crates/orchestrator/src/cli/service.rs b/orchestrator/crates/orchestrator/src/cli/service.rs new file mode 100644 index 000000000..1512eb978 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/service.rs @@ -0,0 +1,12 @@ +use clap::Args; + +#[derive(Debug, Clone, Args)] +pub struct ServiceCliArgs { + /// The maximum block to process. + #[arg(env = "MADARA_ORCHESTRATOR_MAX_BLOCK_NO_TO_PROCESS", long)] + pub max_block_to_process: Option, + + /// The minimum block to process. + #[arg(env = "MADARA_ORCHESTRATOR_MIN_BLOCK_NO_TO_PROCESS", long)] + pub min_block_to_process: Option, +} diff --git a/orchestrator/crates/orchestrator/src/cli/settlement/ethereum.rs b/orchestrator/crates/orchestrator/src/cli/settlement/ethereum.rs new file mode 100644 index 000000000..ae47d197d --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/settlement/ethereum.rs @@ -0,0 +1,26 @@ +use clap::Args; +use url::Url; + +#[derive(Debug, Clone, Args)] +#[group(requires_all = ["ethereum_rpc_url", "ethereum_private_key", "l1_core_contract_address", "starknet_operator_address"])] +pub struct EthereumSettlementCliArgs { + /// Use the Ethereum settlement layer. + #[arg(long)] + pub settle_on_ethereum: bool, + + /// The URL of the Ethereum RPC node. + #[arg(env = "MADARA_ORCHESTRATOR_ETHEREUM_SETTLEMENT_RPC_URL", long)] + pub ethereum_rpc_url: Option, + + /// The private key of the Ethereum account. + #[arg(env = "MADARA_ORCHESTRATOR_ETHEREUM_PRIVATE_KEY", long)] + pub ethereum_private_key: Option, + + /// The address of the L1 core contract. + #[arg(env = "MADARA_ORCHESTRATOR_L1_CORE_CONTRACT_ADDRESS", long)] + pub l1_core_contract_address: Option, + + /// The address of the Starknet operator. + #[arg(env = "MADARA_ORCHESTRATOR_STARKNET_OPERATOR_ADDRESS", long)] + pub starknet_operator_address: Option, +} diff --git a/orchestrator/crates/orchestrator/src/cli/settlement/mod.rs b/orchestrator/crates/orchestrator/src/cli/settlement/mod.rs new file mode 100644 index 000000000..1cf7c848f --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/settlement/mod.rs @@ -0,0 +1,11 @@ +use ethereum_settlement_client::EthereumSettlementValidatedArgs; +use starknet_settlement_client::StarknetSettlementValidatedArgs; + +pub mod ethereum; +pub mod starknet; + +#[derive(Clone, Debug)] +pub enum SettlementValidatedArgs { + Ethereum(EthereumSettlementValidatedArgs), + Starknet(StarknetSettlementValidatedArgs), +} diff --git a/orchestrator/crates/orchestrator/src/cli/settlement/starknet.rs b/orchestrator/crates/orchestrator/src/cli/settlement/starknet.rs new file mode 100644 index 000000000..9a171b22e --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/settlement/starknet.rs @@ -0,0 +1,30 @@ +use clap::Args; +use url::Url; + +#[derive(Debug, Clone, Args)] +#[group(requires_all = ["starknet_rpc_url", "starknet_private_key", "starknet_account_address", "starknet_cairo_core_contract_address", "starknet_finality_retry_wait_in_secs"])] +pub struct StarknetSettlementCliArgs { + /// Use the Starknet settlement layer. + #[arg(long)] + pub settle_on_starknet: bool, + + /// The URL of the Ethereum RPC node. + #[arg(env = "MADARA_ORCHESTRATOR_STARKNET_SETTLEMENT_RPC_URL", long)] + pub starknet_rpc_url: Option, + + /// The private key of the Ethereum account. + #[arg(env = "MADARA_ORCHESTRATOR_STARKNET_PRIVATE_KEY", long)] + pub starknet_private_key: Option, + + /// The address of the Starknet account. + #[arg(env = "MADARA_ORCHESTRATOR_STARKNET_ACCOUNT_ADDRESS", long)] + pub starknet_account_address: Option, + + /// The address of the Cairo core contract. + #[arg(env = "MADARA_ORCHESTRATOR_STARKNET_CAIRO_CORE_CONTRACT_ADDRESS", long)] + pub starknet_cairo_core_contract_address: Option, + + /// The number of seconds to wait for finality. + #[arg(env = "MADARA_ORCHESTRATOR_STARKNET_FINALITY_RETRY_WAIT_IN_SECS", long)] + pub starknet_finality_retry_wait_in_secs: Option, +} diff --git a/orchestrator/crates/orchestrator/src/cli/snos.rs b/orchestrator/crates/orchestrator/src/cli/snos.rs new file mode 100644 index 000000000..12851ac89 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/snos.rs @@ -0,0 +1,15 @@ +use clap::Args; +use url::Url; + +#[derive(Debug, Clone, Args)] +#[group(requires_all = ["rpc_for_snos"])] +pub struct SNOSCliArgs { + /// The RPC URL for SNOS. + #[arg(env = "MADARA_ORCHESTRATOR_RPC_FOR_SNOS", long)] + pub rpc_for_snos: Url, +} + +#[derive(Debug, Clone)] +pub struct SNOSParams { + pub rpc_for_snos: Url, +} diff --git a/orchestrator/crates/orchestrator/src/cli/storage/aws_s3.rs b/orchestrator/crates/orchestrator/src/cli/storage/aws_s3.rs new file mode 100644 index 000000000..75be1811d --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/storage/aws_s3.rs @@ -0,0 +1,18 @@ +use clap::Args; + +/// Parameters used to config AWS S3. +#[derive(Debug, Clone, Args)] +#[group()] // Note: we are not using bucket_name in requires_all because it has a default value. +pub struct AWSS3CliArgs { + /// Use the AWS s3 client + #[arg(long)] + pub aws_s3: bool, + + /// The name of the S3 bucket. + #[arg(env = "MADARA_ORCHESTRATOR_AWS_S3_BUCKET_NAME", long, default_value = Some("madara-orchestrator-bucket"))] + pub bucket_name: Option, + + /// The S3 Bucket Location Constraint. + #[arg(env = "MADARA_ORCHESTRATOR_AWS_BUCKET_LOCATION_CONSTRAINT", long)] + pub bucket_location_constraint: Option, +} diff --git a/orchestrator/crates/orchestrator/src/cli/storage/mod.rs b/orchestrator/crates/orchestrator/src/cli/storage/mod.rs new file mode 100644 index 000000000..f905f899c --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cli/storage/mod.rs @@ -0,0 +1,8 @@ +use crate::data_storage::aws_s3::AWSS3ValidatedArgs; + +pub mod aws_s3; + +#[derive(Clone, Debug)] +pub enum StorageValidatedArgs { + AWSS3(AWSS3ValidatedArgs), +} diff --git a/orchestrator/crates/orchestrator/src/config.rs b/orchestrator/crates/orchestrator/src/config.rs new file mode 100644 index 000000000..0027f842e --- /dev/null +++ b/orchestrator/crates/orchestrator/src/config.rs @@ -0,0 +1,370 @@ +use std::sync::Arc; + +#[cfg(feature = "testing")] +use alloy::providers::RootProvider; +use atlantic_service::AtlanticProverService; +use aws_config::meta::region::RegionProviderChain; +use aws_config::{Region, SdkConfig}; +use aws_credential_types::Credentials; +use cairo_vm::types::layout_name::LayoutName; +use color_eyre::eyre::eyre; +use da_client_interface::DaClient; +use dotenvy::dotenv; +use ethereum_da_client::EthereumDaClient; +use ethereum_settlement_client::EthereumSettlementClient; +use prover_client_interface::ProverClient; +use settlement_client_interface::SettlementClient; +use sharp_service::SharpProverService; +use starknet::providers::jsonrpc::HttpTransport; +use starknet::providers::{JsonRpcClient, Url}; +use starknet_settlement_client::StarknetSettlementClient; + +use crate::alerts::aws_sns::AWSSNS; +use crate::alerts::Alerts; +use crate::cli::alert::AlertValidatedArgs; +use crate::cli::da::DaValidatedArgs; +use crate::cli::database::DatabaseValidatedArgs; +use crate::cli::prover::ProverValidatedArgs; +use crate::cli::provider::{AWSConfigValidatedArgs, ProviderValidatedArgs}; +use crate::cli::queue::QueueValidatedArgs; +use crate::cli::settlement::SettlementValidatedArgs; +use crate::cli::snos::SNOSParams; +use crate::cli::storage::StorageValidatedArgs; +use crate::cli::RunCmd; +use crate::data_storage::aws_s3::AWSS3; +use crate::data_storage::DataStorage; +use crate::database::mongodb::MongoDb; +use crate::database::Database; +use crate::queue::sqs::SqsQueue; +use crate::queue::QueueProvider; +use crate::routes::ServerParams; + +/// The app config. It can be accessed from anywhere inside the service +/// by calling `config` function. +pub struct Config { + /// The orchestrator config + orchestrator_params: OrchestratorParams, + /// The starknet client to get data from the node + starknet_client: Arc>, + /// The DA client to interact with the DA layer + da_client: Box, + /// The service that produces proof and registers it onchain + prover_client: Box, + /// Settlement client + settlement_client: Box, + /// The database client + database: Box, + /// Queue client + queue: Box, + /// Storage client + storage: Box, + /// Alerts client + alerts: Box, +} + +#[derive(Debug, Clone)] +pub struct ServiceParams { + pub max_block_to_process: Option, + pub min_block_to_process: Option, +} + +pub struct OrchestratorParams { + pub madara_rpc_url: Url, + pub snos_config: SNOSParams, + pub service_config: ServiceParams, + pub server_config: ServerParams, + /// Layout to use for running SNOS + pub snos_layout_name: LayoutName, + /// Layout to use for proving + pub prover_layout_name: LayoutName, +} + +/// `ProviderConfig` is an enum used to represent the global config built +/// using the settings provider. More providers can be added eg : GCP, AZURE etc. +/// +/// We are using Arc because the config size is large and keeping it +/// a pointer is a better way to pass it through. +#[derive(Clone)] +pub enum ProviderConfig { + AWS(Box), +} + +impl ProviderConfig { + pub fn get_aws_client_or_panic(&self) -> &SdkConfig { + match self { + ProviderConfig::AWS(config) => config.as_ref(), + } + } +} + +/// To build a `SdkConfig` for AWS provider. +pub async fn get_aws_config(aws_config: &AWSConfigValidatedArgs) -> SdkConfig { + let region = aws_config.aws_region.clone(); + let region_provider = RegionProviderChain::first_try(Region::new(region)).or_default_provider(); + let credentials = + Credentials::from_keys(aws_config.aws_access_key_id.clone(), aws_config.aws_secret_access_key.clone(), None); + aws_config::from_env().credentials_provider(credentials).region(region_provider).load().await +} + +/// Initializes the app config +pub async fn init_config(run_cmd: &RunCmd) -> color_eyre::Result> { + dotenv().ok(); + + let provider_params = run_cmd.validate_provider_params().expect("Failed to validate provider params"); + let provider_config = build_provider_config(&provider_params).await; + + let (snos_layout_name, prover_layout_name) = + run_cmd.validate_proving_layout_name().expect("Failed to validate prover layout name"); + + let orchestrator_params = OrchestratorParams { + madara_rpc_url: run_cmd.madara_rpc_url.clone(), + snos_config: run_cmd.validate_snos_params().expect("Failed to validate SNOS params"), + service_config: run_cmd.validate_service_params().expect("Failed to validate service params"), + server_config: run_cmd.validate_server_params().expect("Failed to validate server params"), + snos_layout_name, + prover_layout_name, + }; + + let rpc_client = JsonRpcClient::new(HttpTransport::new(orchestrator_params.madara_rpc_url.clone())); + + // init database + let database_params = + run_cmd.validate_database_params().map_err(|e| eyre!("Failed to validate database params: {e}"))?; + let database = build_database_client(&database_params).await; + + // init DA client + let da_params = run_cmd.validate_da_params().map_err(|e| eyre!("Failed to validate DA params: {e}"))?; + let da_client = build_da_client(&da_params).await; + + // init settlement + let settlement_params = + run_cmd.validate_settlement_params().map_err(|e| eyre!("Failed to validate settlement params: {e}"))?; + let settlement_client = build_settlement_client(&settlement_params).await?; + + // init prover + let prover_params = run_cmd.validate_prover_params().map_err(|e| eyre!("Failed to validate prover params: {e}"))?; + let prover_client = build_prover_service(&prover_params); + + // init storage + let data_storage_params = + run_cmd.validate_storage_params().map_err(|e| eyre!("Failed to validate storage params: {e}"))?; + let storage_client = build_storage_client(&data_storage_params, provider_config.clone()).await; + + // init alerts + let alert_params = run_cmd.validate_alert_params().map_err(|e| eyre!("Failed to validate alert params: {e}"))?; + let alerts_client = build_alert_client(&alert_params, provider_config.clone()).await; + + // init the queue + // TODO: we use omniqueue for now which doesn't support loading AWS config + // from `SdkConfig`. We can later move to using `aws_sdk_sqs`. This would require + // us stop using the generic omniqueue abstractions for message ack/nack + // init queue + let queue_params = run_cmd.validate_queue_params().map_err(|e| eyre!("Failed to validate queue params: {e}"))?; + let queue = build_queue_client(&queue_params, provider_config.clone()).await; + + Ok(Arc::new(Config::new( + orchestrator_params, + Arc::new(rpc_client), + da_client, + prover_client, + settlement_client, + database, + queue, + storage_client, + alerts_client, + ))) +} + +impl Config { + /// Create a new config + #[allow(clippy::too_many_arguments)] + pub fn new( + orchestrator_params: OrchestratorParams, + starknet_client: Arc>, + da_client: Box, + prover_client: Box, + settlement_client: Box, + database: Box, + queue: Box, + storage: Box, + alerts: Box, + ) -> Self { + Self { + orchestrator_params, + starknet_client, + da_client, + prover_client, + settlement_client, + database, + queue, + storage, + alerts, + } + } + + /// Returns the starknet rpc url + pub fn starknet_rpc_url(&self) -> &Url { + &self.orchestrator_params.madara_rpc_url + } + + /// Returns the server config + pub fn server_config(&self) -> &ServerParams { + &self.orchestrator_params.server_config + } + + /// Returns the snos rpc url + pub fn snos_config(&self) -> &SNOSParams { + &self.orchestrator_params.snos_config + } + + /// Returns the service config + pub fn service_config(&self) -> &ServiceParams { + &self.orchestrator_params.service_config + } + + /// Returns the starknet client + pub fn starknet_client(&self) -> &Arc> { + &self.starknet_client + } + + /// Returns the DA client + pub fn da_client(&self) -> &dyn DaClient { + self.da_client.as_ref() + } + + /// Returns the proving service + pub fn prover_client(&self) -> &dyn ProverClient { + self.prover_client.as_ref() + } + + /// Returns the settlement client + pub fn settlement_client(&self) -> &dyn SettlementClient { + self.settlement_client.as_ref() + } + + /// Returns the database client + pub fn database(&self) -> &dyn Database { + self.database.as_ref() + } + + /// Returns the queue provider + pub fn queue(&self) -> &dyn QueueProvider { + self.queue.as_ref() + } + + /// Returns the storage provider + pub fn storage(&self) -> &dyn DataStorage { + self.storage.as_ref() + } + + /// Returns the alerts client + pub fn alerts(&self) -> &dyn Alerts { + self.alerts.as_ref() + } + + /// Returns the snos proof layout + pub fn snos_layout_name(&self) -> &LayoutName { + &self.orchestrator_params.snos_layout_name + } + + /// Returns the snos proof layout + pub fn prover_layout_name(&self) -> &LayoutName { + &self.orchestrator_params.prover_layout_name + } +} + +/// Builds the provider config +pub async fn build_provider_config(provider_params: &ProviderValidatedArgs) -> Arc { + match provider_params { + ProviderValidatedArgs::AWS(aws_params) => { + Arc::new(ProviderConfig::AWS(Box::new(get_aws_config(aws_params).await))) + } + } +} + +/// Builds the DA client based on the environment variable DA_LAYER +pub async fn build_da_client(da_params: &DaValidatedArgs) -> Box { + match da_params { + DaValidatedArgs::Ethereum(ethereum_da_params) => { + Box::new(EthereumDaClient::new_with_args(ethereum_da_params).await) + } + } +} + +/// Builds the prover service based on the environment variable PROVER_SERVICE +pub fn build_prover_service(prover_params: &ProverValidatedArgs) -> Box { + match prover_params { + ProverValidatedArgs::Sharp(sharp_params) => Box::new(SharpProverService::new_with_args(sharp_params)), + ProverValidatedArgs::Atlantic(atlantic_params) => { + Box::new(AtlanticProverService::new_with_args(atlantic_params)) + } + } +} + +/// Builds the settlement client depending on the env variable SETTLEMENT_LAYER +pub async fn build_settlement_client( + settlement_params: &SettlementValidatedArgs, +) -> color_eyre::Result> { + match settlement_params { + SettlementValidatedArgs::Ethereum(ethereum_settlement_params) => { + #[cfg(not(feature = "testing"))] + { + Ok(Box::new(EthereumSettlementClient::new_with_args(ethereum_settlement_params))) + } + #[cfg(feature = "testing")] + { + Ok(Box::new(EthereumSettlementClient::with_test_params( + RootProvider::new_http(ethereum_settlement_params.ethereum_rpc_url.clone()), + ethereum_settlement_params.l1_core_contract_address, + ethereum_settlement_params.ethereum_rpc_url.clone(), + Some(ethereum_settlement_params.starknet_operator_address), + ))) + } + } + SettlementValidatedArgs::Starknet(starknet_settlement_params) => { + Ok(Box::new(StarknetSettlementClient::new_with_args(starknet_settlement_params).await)) + } + } +} + +pub async fn build_storage_client( + data_storage_params: &StorageValidatedArgs, + provider_config: Arc, +) -> Box { + match data_storage_params { + StorageValidatedArgs::AWSS3(aws_s3_params) => { + let aws_config = provider_config.get_aws_client_or_panic(); + Box::new(AWSS3::new_with_args(aws_s3_params, aws_config).await) + } + } +} + +pub async fn build_alert_client( + alert_params: &AlertValidatedArgs, + provider_config: Arc, +) -> Box { + match alert_params { + AlertValidatedArgs::AWSSNS(aws_sns_params) => { + let aws_config = provider_config.get_aws_client_or_panic(); + Box::new(AWSSNS::new_with_args(aws_sns_params, aws_config).await) + } + } +} + +pub async fn build_queue_client( + queue_params: &QueueValidatedArgs, + provider_config: Arc, +) -> Box { + match queue_params { + QueueValidatedArgs::AWSSQS(aws_sqs_params) => { + let aws_config = provider_config.get_aws_client_or_panic(); + Box::new(SqsQueue::new_with_args(aws_sqs_params.clone(), aws_config)) + } + } +} + +pub async fn build_database_client(database_params: &DatabaseValidatedArgs) -> Box { + match database_params { + DatabaseValidatedArgs::MongoDB(mongodb_params) => Box::new(MongoDb::new_with_args(mongodb_params).await), + } +} diff --git a/orchestrator/crates/orchestrator/src/constants.rs b/orchestrator/crates/orchestrator/src/constants.rs new file mode 100644 index 000000000..049d3ee33 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/constants.rs @@ -0,0 +1,4 @@ +pub const BLOB_DATA_FILE_NAME: &str = "blob_data.txt"; +pub const SNOS_OUTPUT_FILE_NAME: &str = "snos_output.json"; +pub const PROGRAM_OUTPUT_FILE_NAME: &str = "program_output.txt"; +pub const CAIRO_PIE_FILE_NAME: &str = "cairo_pie.zip"; diff --git a/orchestrator/crates/orchestrator/src/controllers/errors.rs b/orchestrator/crates/orchestrator/src/controllers/errors.rs new file mode 100644 index 000000000..f0453be66 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/controllers/errors.rs @@ -0,0 +1,23 @@ +use axum::response::IntoResponse; +use axum::Json; +use color_eyre::eyre::ErrReport; +use serde_json::json; + +/// Root level error which is sent back to the client +#[derive(thiserror::Error, Debug)] +pub enum AppError { + /// Internal server error + #[error("Internal Server Error {0}")] + InternalServerError(#[from] ErrReport), +} + +/// Convert the error into a response so that it can be sent back to the client +impl IntoResponse for AppError { + fn into_response(self) -> axum::http::Response { + tracing::error!("Error: {:?}", self); + let (status, err_msg) = match self { + Self::InternalServerError(msg) => (axum::http::StatusCode::INTERNAL_SERVER_ERROR, msg.to_string()), + }; + (status, Json(json!({"message": err_msg }))).into_response() + } +} diff --git a/orchestrator/crates/orchestrator/src/controllers/mod.rs b/orchestrator/crates/orchestrator/src/controllers/mod.rs new file mode 100644 index 000000000..8575ccdcc --- /dev/null +++ b/orchestrator/crates/orchestrator/src/controllers/mod.rs @@ -0,0 +1,2 @@ +/// Errors +mod errors; diff --git a/orchestrator/crates/orchestrator/src/cron/event_bridge.rs b/orchestrator/crates/orchestrator/src/cron/event_bridge.rs new file mode 100644 index 000000000..bd62f1211 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cron/event_bridge.rs @@ -0,0 +1,235 @@ +use std::time::Duration; + +use async_trait::async_trait; +use aws_config::SdkConfig; +use aws_sdk_eventbridge::types::{InputTransformer, RuleState, Target as EventBridgeTarget}; +use aws_sdk_scheduler::types::{FlexibleTimeWindow, FlexibleTimeWindowMode, Target}; +use aws_sdk_sqs::types::QueueAttributeName; +use aws_sdk_sqs::Client as SqsClient; +use color_eyre::eyre::Ok; + +use super::{get_worker_trigger_message, TriggerArns}; +use crate::cron::Cron; +use crate::queue::job_queue::WorkerTriggerType; + +#[derive(Clone, Debug, clap::ValueEnum)] +pub enum EventBridgeType { + Rule, + Schedule, +} + +#[derive(Clone, Debug)] +enum EventBridgeClient { + Rule(aws_sdk_eventbridge::Client), + Schedule(aws_sdk_scheduler::Client), +} + +#[derive(Clone, Debug)] +pub struct AWSEventBridgeValidatedArgs { + pub cron_type: EventBridgeType, + pub target_queue_name: String, + pub cron_time: Duration, + pub trigger_rule_name: String, + pub trigger_role_name: String, + pub trigger_policy_name: String, +} + +pub struct AWSEventBridge { + target_queue_name: String, + cron_time: Duration, + trigger_rule_name: String, + client: EventBridgeClient, + queue_client: SqsClient, + iam_client: aws_sdk_iam::Client, + trigger_role_name: String, + trigger_policy_name: String, +} + +impl AWSEventBridge { + pub fn new_with_args(params: &AWSEventBridgeValidatedArgs, aws_config: &SdkConfig) -> Self { + let client = match params.cron_type { + EventBridgeType::Rule => EventBridgeClient::Rule(aws_sdk_eventbridge::Client::new(aws_config)), + EventBridgeType::Schedule => EventBridgeClient::Schedule(aws_sdk_scheduler::Client::new(aws_config)), + }; + + Self { + target_queue_name: params.target_queue_name.clone(), + cron_time: params.cron_time, + trigger_rule_name: params.trigger_rule_name.clone(), + client, + queue_client: aws_sdk_sqs::Client::new(aws_config), + iam_client: aws_sdk_iam::Client::new(aws_config), + trigger_role_name: params.trigger_role_name.clone(), + trigger_policy_name: params.trigger_policy_name.clone(), + } + } +} + +#[async_trait] +#[allow(unreachable_patterns)] +impl Cron for AWSEventBridge { + async fn create_cron(&self) -> color_eyre::Result { + // Get Queue Info + let queue_url = self.queue_client.get_queue_url().queue_name(&self.target_queue_name).send().await?; + + let queue_attributes = self + .queue_client + .get_queue_attributes() + .queue_url(queue_url.queue_url.unwrap()) + .attribute_names(QueueAttributeName::QueueArn) + .send() + .await?; + let queue_arn = queue_attributes.attributes().unwrap().get(&QueueAttributeName::QueueArn).unwrap(); + + // Create IAM role for EventBridge + let role_name = format!("{}-{}", self.trigger_role_name, uuid::Uuid::new_v4()); + // TODO: might need to change this accordingly to support rule, skipping for now + let assume_role_policy = r#"{ + "Version": "2012-10-17", + "Statement": [{ + "Effect": "Allow", + "Principal": { + "Service": "scheduler.amazonaws.com" + }, + "Action": "sts:AssumeRole" + }] + }"#; + + let create_role_resp = self + .iam_client + .create_role() + .role_name(&role_name) + .assume_role_policy_document(assume_role_policy) + .send() + .await?; + + let role_arn = create_role_resp.role().unwrap().arn(); + + // Create policy document for SQS access + let policy_document = format!( + r#"{{ + "Version": "2012-10-17", + "Statement": [{{ + "Effect": "Allow", + "Action": [ + "sqs:SendMessage" + ], + "Resource": "{}" + }}] + }}"#, + queue_arn + ); + + let policy_name = format!("{}-{}", self.trigger_policy_name, uuid::Uuid::new_v4()); + + // Create and attach the policy + let policy_resp = + self.iam_client.create_policy().policy_name(&policy_name).policy_document(&policy_document).send().await?; + + let policy_arn = policy_resp.policy().unwrap().arn().unwrap().to_string(); + + // Attach the policy to the role + self.iam_client.attach_role_policy().role_name(&role_name).policy_arn(&policy_arn).send().await?; + + // sleep(Duration::from_secs(60)).await; + + Ok(TriggerArns { queue_arn: queue_arn.to_string(), role_arn: role_arn.to_string() }) + } + + async fn add_cron_target_queue( + &self, + trigger_type: &WorkerTriggerType, + trigger_arns: &TriggerArns, + ) -> color_eyre::Result<()> { + let message = get_worker_trigger_message(trigger_type.clone())?; + let trigger_name = format!("{}-{}", self.trigger_rule_name, trigger_type); + println!("trigger_nametrigger_nametrigger_name {}", trigger_name); + + match self.client.clone() { + EventBridgeClient::Rule(client) => { + let input_transformer = + InputTransformer::builder().input_paths_map("time", "$.time").input_template(message).build()?; + + client + .put_rule() + .name(trigger_name.clone()) + .schedule_expression("rate(1 minute)") + .state(RuleState::Enabled) + .send() + .await?; + + client + .put_targets() + .rule(trigger_name.clone()) + .targets( + EventBridgeTarget::builder() + .id(uuid::Uuid::new_v4().to_string()) + .arn(trigger_arns.queue_arn.clone()) + .input_transformer(input_transformer.clone()) + .build()?, + ) + .send() + .await?; + } + EventBridgeClient::Schedule(client) => { + // Set flexible time window (you can adjust this as needed) + let flexible_time_window = FlexibleTimeWindow::builder().mode(FlexibleTimeWindowMode::Off).build()?; + + let message = get_worker_trigger_message(trigger_type.clone())?; + + // Create target for SQS queue + let target = Target::builder() + .arn(trigger_arns.queue_arn.clone()) + .role_arn(trigger_arns.role_arn.clone()) + .input(message) + .build()?; + + // Create the schedule + client + .create_schedule() + .name(trigger_name) + .schedule_expression_timezone("UTC") + .flexible_time_window(flexible_time_window) + .schedule_expression(duration_to_rate_string(self.cron_time)) + .target(target) + .send() + .await?; + } + }; + + Ok(()) + } +} + +fn duration_to_rate_string(duration: Duration) -> String { + let total_secs = duration.as_secs(); + let total_mins = duration.as_secs() / 60; + let total_hours = duration.as_secs() / 3600; + let total_days = duration.as_secs() / 86400; + + if total_days > 0 { + format!("rate({} day{})", total_days, if total_days == 1 { "" } else { "s" }) + } else if total_hours > 0 { + format!("rate({} hour{})", total_hours, if total_hours == 1 { "" } else { "s" }) + } else if total_mins > 0 { + format!("rate({} minute{})", total_mins, if total_mins == 1 { "" } else { "s" }) + } else { + format!("rate({} second{})", total_secs, if total_secs == 1 { "" } else { "s" }) + } +} + +#[cfg(test)] +mod event_bridge_utils_test { + use rstest::rstest; + + use super::*; + + #[rstest] + fn test_duration_to_rate_string() { + assert_eq!(duration_to_rate_string(Duration::from_secs(60)), "rate(1 minute)"); + assert_eq!(duration_to_rate_string(Duration::from_secs(120)), "rate(2 minutes)"); + assert_eq!(duration_to_rate_string(Duration::from_secs(30)), "rate(30 seconds)"); + assert_eq!(duration_to_rate_string(Duration::from_secs(3600)), "rate(1 hour)"); + assert_eq!(duration_to_rate_string(Duration::from_secs(86400)), "rate(1 day)"); + } +} diff --git a/orchestrator/crates/orchestrator/src/cron/mod.rs b/orchestrator/crates/orchestrator/src/cron/mod.rs new file mode 100644 index 000000000..4673cea4a --- /dev/null +++ b/orchestrator/crates/orchestrator/src/cron/mod.rs @@ -0,0 +1,41 @@ +use async_trait::async_trait; +use lazy_static::lazy_static; + +use crate::queue::job_queue::WorkerTriggerType; + +pub mod event_bridge; + +lazy_static! { + pub static ref WORKER_TRIGGERS: Vec = vec![ + WorkerTriggerType::Snos, + WorkerTriggerType::Proving, + WorkerTriggerType::DataSubmission, + WorkerTriggerType::UpdateState + ]; +} + +#[derive(Debug, Clone)] +pub struct TriggerArns { + queue_arn: String, + role_arn: String, +} +#[async_trait] +pub trait Cron { + async fn create_cron(&self) -> color_eyre::Result; + async fn add_cron_target_queue( + &self, + trigger_type: &WorkerTriggerType, + trigger_arns: &TriggerArns, + ) -> color_eyre::Result<()>; + async fn setup(&self) -> color_eyre::Result<()> { + let trigger_arns = self.create_cron().await?; + for trigger in WORKER_TRIGGERS.iter() { + self.add_cron_target_queue(trigger, &trigger_arns).await?; + } + Ok(()) + } +} + +pub fn get_worker_trigger_message(worker_trigger_type: WorkerTriggerType) -> color_eyre::Result { + Ok(worker_trigger_type.to_string()) +} diff --git a/orchestrator/crates/orchestrator/src/data_storage/aws_s3/mod.rs b/orchestrator/crates/orchestrator/src/data_storage/aws_s3/mod.rs new file mode 100644 index 000000000..e342d5ea2 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/data_storage/aws_s3/mod.rs @@ -0,0 +1,132 @@ +use std::str::FromStr; + +use async_trait::async_trait; +use aws_config::SdkConfig; +use aws_sdk_s3::primitives::ByteStream; +use aws_sdk_s3::types::{BucketLocationConstraint, CreateBucketConfiguration}; +use aws_sdk_s3::Client; +use bytes::Bytes; +use color_eyre::eyre::Context; +use color_eyre::Result; + +use crate::data_storage::DataStorage; + +pub const S3_SETTINGS_NAME: &str = "s3"; + +#[derive(Debug, Clone)] +pub struct AWSS3ValidatedArgs { + pub bucket_name: String, +} + +/// AWSS3 represents AWS S3 client object containing the client and the config itself. +pub struct AWSS3 { + client: Client, + bucket: String, + bucket_location_constraint: BucketLocationConstraint, +} + +/// Implementation for AWS S3 client. Contains the function for : +/// +/// - initializing a new AWS S3 client +impl AWSS3 { + /// To init the struct with main settings + pub async fn new_with_args(s3_config: &AWSS3ValidatedArgs, aws_config: &SdkConfig) -> Self { + // Building AWS S3 config + let mut s3_config_builder = aws_sdk_s3::config::Builder::from(aws_config); + // this is necessary for it to work with localstack in test cases + s3_config_builder.set_force_path_style(Some(true)); + let client = Client::from_conf(s3_config_builder.build()); + + let region_str = aws_config.region().expect("Could not get region as string").to_string(); + let location_constraint: BucketLocationConstraint = BucketLocationConstraint::from_str(region_str.as_str()) + .expect("Could not get location constraint from region string"); + Self { client, bucket: s3_config.bucket_name.clone(), bucket_location_constraint: location_constraint } + } +} + +/// Implementation of `DataStorage` for `AWSS3` +/// contains the function for getting the data and putting the data +/// by taking the key as an argument. +#[async_trait] +impl DataStorage for AWSS3 { + /// Function to get the data from S3 bucket by Key. + async fn get_data(&self, key: &str) -> Result { + let response = self + .client + .get_object() + .bucket(&self.bucket) + .key(key) + .send() + .await + .context(format!("Failed to get object from bucket: {}, key: {}", self.bucket, key))?; + + let data_stream = response.body.collect().await.context(format!( + "Failed to collect body into AggregatedBytes for bucket: {}, key: {}", + self.bucket, key + ))?; + + tracing::debug!("DataStorage: Collected response body into data stream from {}, key={}", self.bucket, key); + let data_bytes = data_stream.into_bytes(); + tracing::debug!( + log_type = "DataStorage", + category = "data_storage_call", + data_bytes = data_bytes.len(), + "Successfully retrieved and converted data from {}, key={}", + self.bucket, + key + ); + Ok(data_bytes) + } + + /// Function to put the data to S3 bucket by Key. + async fn put_data(&self, data: Bytes, key: &str) -> Result<()> { + self.client + .put_object() + .bucket(&self.bucket) + .key(key) + .body(ByteStream::from(data)) + .content_type("application/json") + .send() + .await + .context(format!("Failed to put object in bucket: {}, key: {}", self.bucket, key))?; + + tracing::debug!( + log_type = "DataStorage", + category = "data_storage_call", + "Successfully put data into {}. key={}", + self.bucket, + key + ); + Ok(()) + } + + async fn create_bucket(&self, bucket_name: &str) -> Result<()> { + if self.bucket_location_constraint.as_str() == "us-east-1" { + self.client + .create_bucket() + .bucket(bucket_name) + .send() + .await + .context(format!("Failed to create bucket: {} in us-east-1", bucket_name))?; + return Ok(()); + } + + let bucket_configuration = Some( + CreateBucketConfiguration::builder().location_constraint(self.bucket_location_constraint.clone()).build(), + ); + + self.client + .create_bucket() + .bucket(bucket_name) + .set_create_bucket_configuration(bucket_configuration) + .send() + .await + .context(format!( + "Failed to create bucket: {} in region: {}", + bucket_name, + self.bucket_location_constraint.as_str() + ))?; + + Ok(()) + } +} diff --git a/orchestrator/crates/orchestrator/src/data_storage/mod.rs b/orchestrator/crates/orchestrator/src/data_storage/mod.rs new file mode 100644 index 000000000..2e0e86265 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/data_storage/mod.rs @@ -0,0 +1,31 @@ +pub mod aws_s3; +pub mod types; + +use async_trait::async_trait; +use bytes::Bytes; +use color_eyre::Result; +use mockall::automock; + +use crate::cli::storage::StorageValidatedArgs; + +/// Data Storage Trait +/// +/// DataStorage trait contains the functions used to store and get the data from +/// the cloud provider storage. +/// The proposed storage format is : +/// ---- +/// ---- (stored during the SNOS job) +/// ---- (stored during the SNOS job) +/// ---- (stored during the DA job) +#[automock] +#[async_trait] +pub trait DataStorage: Send + Sync { + async fn get_data(&self, key: &str) -> Result; + async fn put_data(&self, data: Bytes, key: &str) -> Result<()>; + async fn create_bucket(&self, bucket_name: &str) -> Result<()>; + async fn setup(&self, storage_params: &StorageValidatedArgs) -> Result<()> { + match storage_params { + StorageValidatedArgs::AWSS3(aws_s3_params) => self.create_bucket(&aws_s3_params.bucket_name).await, + } + } +} diff --git a/orchestrator/crates/orchestrator/src/data_storage/types.rs b/orchestrator/crates/orchestrator/src/data_storage/types.rs new file mode 100644 index 000000000..312705589 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/data_storage/types.rs @@ -0,0 +1,43 @@ +use std::collections::HashMap; + +use cairo_vm::Felt252; +use serde::{Deserialize, Serialize}; + +/// This struct represents the contract changes that will be in `StarknetOsOutput` +/// as a vector. +#[derive(Debug, Deserialize, Serialize)] +pub struct ContractChanges { + /// The address of the contract. + pub addr: Felt252, + /// The new nonce of the contract (for account contracts). + pub nonce: Felt252, + /// The new class hash (if changed). + pub class_hash: Option, + /// A map from storage key to its new value. + pub storage_changes: HashMap, +} + +/// This struct represents the starknet OS outputs in the json we will get after the run. +#[derive(Debug, Deserialize, Serialize)] +pub struct StarknetOsOutput { + /// The root before. + pub initial_root: Felt252, + /// The root after. + pub final_root: Felt252, + /// The block number. + pub block_number: Felt252, + /// The block hash. + pub block_hash: Felt252, + /// The hash of the OS config. + pub starknet_os_config_hash: Felt252, + /// Whether KZG data availability was used. + pub use_kzg_da: Felt252, + /// Messages from L2 to L1. + pub messages_to_l1: Vec, + /// Messages from L1 to L2. + pub messages_to_l2: Vec, + /// The list of contracts that were changed. + pub contracts: Vec, + /// The list of classes that were declared. A map from class hash to compiled class hash. + pub classes: HashMap, +} diff --git a/orchestrator/crates/orchestrator/src/database/mod.rs b/orchestrator/crates/orchestrator/src/database/mod.rs new file mode 100644 index 000000000..b2ff7554c --- /dev/null +++ b/orchestrator/crates/orchestrator/src/database/mod.rs @@ -0,0 +1,52 @@ +use ::mongodb::bson::doc; +use async_trait::async_trait; +use color_eyre::Result; +use mockall::automock; +use uuid::Uuid; + +use crate::jobs::types::{JobItem, JobStatus, JobType}; +use crate::jobs::JobError; + +/// MongoDB +pub mod mongodb; + +/// Database Trait +/// +/// The Database trait is used to define the methods that a database +/// should implement to be used as a storage for the orchestrator. The +/// purpose of this trait is to allow developers to use any DB of their choice +/// as long as they implement the trait +/// +/// The Database should support optimistic locking. For example, assume we've two threads +/// A and B and both read the same Job entry J at nearly the same time. If A updates J at +/// time T1 and then B updates J at time T2 (T2>T1), then B's update should fail because +/// it's version of J is outdated. +#[automock] +#[async_trait] +pub trait Database: Send + Sync { + async fn create_job(&self, job: JobItem) -> Result; + async fn get_job_by_id(&self, id: Uuid) -> Result>; + async fn get_job_by_internal_id_and_type(&self, internal_id: &str, job_type: &JobType) -> Result>; + async fn update_job(&self, current_job: &JobItem, updates: crate::jobs::types::JobItemUpdates) -> Result; + async fn get_latest_job_by_type(&self, job_type: JobType) -> Result>; + async fn get_jobs_without_successor( + &self, + job_a_type: JobType, + job_a_status: JobStatus, + job_b_type: JobType, + ) -> Result>; + async fn get_latest_job_by_type_and_status( + &self, + job_type: JobType, + job_status: JobStatus, + ) -> Result>; + async fn get_jobs_after_internal_id_by_job_type( + &self, + job_type: JobType, + job_status: JobStatus, + internal_id: String, + ) -> Result>; + + // TODO: can be extendible to support multiple status. + async fn get_jobs_by_statuses(&self, status: Vec, limit: Option) -> Result>; +} diff --git a/orchestrator/crates/orchestrator/src/database/mongodb/mod.rs b/orchestrator/crates/orchestrator/src/database/mongodb/mod.rs new file mode 100644 index 000000000..3fd0daa07 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/database/mongodb/mod.rs @@ -0,0 +1,422 @@ +use std::time::Instant; + +use async_std::stream::StreamExt; +use async_trait::async_trait; +use chrono::{SubsecRound, Utc}; +use color_eyre::eyre::eyre; +use color_eyre::Result; +use futures::TryStreamExt; +use mongodb::bson::{doc, Bson, Document}; +use mongodb::options::{ + ClientOptions, FindOneAndUpdateOptions, FindOneOptions, FindOptions, ReturnDocument, ServerApi, ServerApiVersion, + UpdateOptions, +}; +use mongodb::{bson, Client, Collection}; +use opentelemetry::KeyValue; +use url::Url; +use utils::ToDocument; +use uuid::Uuid; + +use crate::database::Database; +use crate::jobs::types::{JobItem, JobItemUpdates, JobStatus, JobType}; +use crate::jobs::JobError; +use crate::metrics::ORCHESTRATOR_METRICS; + +mod utils; + +#[derive(Debug, Clone)] +pub struct MongoDBValidatedArgs { + pub connection_url: Url, + pub database_name: String, +} + +pub struct MongoDb { + client: Client, + database_name: String, +} + +impl MongoDb { + pub async fn new_with_args(mongodb_params: &MongoDBValidatedArgs) -> Self { + let mut client_options = + ClientOptions::parse(mongodb_params.connection_url.clone()).await.expect("Failed to parse MongoDB Url"); + // Set the server_api field of the client_options object to set the version of the Stable API on the + // client + let server_api = ServerApi::builder().version(ServerApiVersion::V1).build(); + client_options.server_api = Some(server_api); + // Get a handle to the cluster + let client = Client::with_options(client_options).expect("Failed to create MongoDB client"); + // Ping the server to see if you can connect to the cluster + client + .database("orchestrator") + .run_command(doc! {"ping": 1}, None) + .await + .expect("Failed to ping MongoDB deployment"); + tracing::debug!("Pinged your deployment. You successfully connected to MongoDB!"); + + Self { client, database_name: mongodb_params.database_name.clone() } + } + + /// Mongodb client uses Arc internally, reducing the cost of clone. + /// Directly using clone is not recommended for libraries not using Arc internally. + pub fn client(&self) -> Client { + self.client.clone() + } + + fn get_job_collection(&self) -> Collection { + self.client.database(&self.database_name).collection("jobs") + } +} + +#[async_trait] +impl Database for MongoDb { + #[tracing::instrument(skip(self), fields(function_type = "db_call"), ret, err)] + async fn create_job(&self, job: JobItem) -> Result { + let start = Instant::now(); + let options = UpdateOptions::builder().upsert(true).build(); + + let updates = job.to_document().map_err(|e| JobError::Other(e.into()))?; + let job_type = + updates.get("job_type").ok_or(eyre!("Job type not found")).map_err(|e| JobError::Other(e.into()))?; + let internal_id = + updates.get("internal_id").ok_or(eyre!("Internal ID not found")).map_err(|e| JobError::Other(e.into()))?; + + // Filter using only two fields + let filter = doc! { + "job_type": job_type.clone(), + "internal_id": internal_id.clone() + }; + + let updates = doc! { + // only set when the document is inserted for the first time + "$setOnInsert": updates + }; + + let result = self + .get_job_collection() + .update_one(filter, updates, options) + .await + .map_err(|e| JobError::Other(e.to_string().into()))?; + + if result.matched_count == 0 { + let attributes = [KeyValue::new("db_operation_name", "create_job")]; + let duration = start.elapsed(); + ORCHESTRATOR_METRICS.db_calls_response_time.record(duration.as_secs_f64(), &attributes); + Ok(job) + } else { + Err(JobError::JobAlreadyExists { internal_id: job.internal_id, job_type: job.job_type }) + } + } + + #[tracing::instrument(skip(self), fields(function_type = "db_call"), ret, err)] + async fn get_job_by_id(&self, id: Uuid) -> Result> { + let start = Instant::now(); + let filter = doc! { + "id": id + }; + tracing::debug!(job_id = %id, category = "db_call", "Fetched job by ID"); + let attributes = [KeyValue::new("db_operation_name", "get_job_by_id")]; + let duration = start.elapsed(); + ORCHESTRATOR_METRICS.db_calls_response_time.record(duration.as_secs_f64(), &attributes); + Ok(self.get_job_collection().find_one(filter, None).await?) + } + + #[tracing::instrument(skip(self), fields(function_type = "db_call"), ret, err)] + async fn get_job_by_internal_id_and_type(&self, internal_id: &str, job_type: &JobType) -> Result> { + let start = Instant::now(); + let filter = doc! { + "internal_id": internal_id, + "job_type": mongodb::bson::to_bson(&job_type)?, + }; + tracing::debug!(internal_id = %internal_id, job_type = ?job_type, category = "db_call", "Fetched job by internal ID and type"); + let attributes = [KeyValue::new("db_operation_name", "get_job_by_internal_id_and_type")]; + let duration = start.elapsed(); + ORCHESTRATOR_METRICS.db_calls_response_time.record(duration.as_secs_f64(), &attributes); + Ok(self.get_job_collection().find_one(filter, None).await?) + } + + #[tracing::instrument(skip(self), fields(function_type = "db_call"), ret, err)] + async fn update_job(&self, current_job: &JobItem, updates: JobItemUpdates) -> Result { + let start = Instant::now(); + // Filters to search for the job + let filter = doc! { + "id": current_job.id, + "version": current_job.version, + }; + let options = FindOneAndUpdateOptions::builder().upsert(false).return_document(ReturnDocument::After).build(); + + let mut updates = updates.to_document()?; + + // remove null values from the updates + let mut non_null_updates = Document::new(); + updates.iter_mut().for_each(|(k, v)| { + if v != &Bson::Null { + non_null_updates.insert(k, v); + } + }); + + // throw an error if there's no field to be updated + if non_null_updates.is_empty() { + return Err(eyre!("No field to be updated, likely a false call")); + } + + // Add additional fields that are always updated + non_null_updates.insert("version", Bson::Int32(current_job.version + 1)); + non_null_updates.insert("updated_at", Bson::DateTime(Utc::now().round_subsecs(0).into())); + + let update = doc! { + "$set": non_null_updates + }; + + let result = self.get_job_collection().find_one_and_update(filter, update, options).await?; + match result { + Some(job) => { + tracing::debug!(job_id = %current_job.id, category = "db_call", "Job updated successfully"); + let attributes = [KeyValue::new("db_operation_name", "update_job")]; + let duration = start.elapsed(); + ORCHESTRATOR_METRICS.db_calls_response_time.record(duration.as_secs_f64(), &attributes); + Ok(job) + } + None => { + tracing::warn!(job_id = %current_job.id, category = "db_call", "Failed to update job. Job version is likely outdated"); + return Err(eyre!("Failed to update job. Job version is likely outdated")); + } + } + } + + #[tracing::instrument(skip(self), fields(function_type = "db_call"), ret, err)] + async fn get_latest_job_by_type(&self, job_type: JobType) -> Result> { + let start = Instant::now(); + let pipeline = vec![ + doc! { + "$match": { + "job_type": mongodb::bson::to_bson(&job_type)? + } + }, + doc! { + "$addFields": { + "numeric_internal_id": { "$toLong": "$internal_id" } + } + }, + doc! { + "$sort": { + "numeric_internal_id": -1 + } + }, + doc! { + "$limit": 1 + }, + doc! { + "$project": { + "numeric_internal_id": 0 // Remove the temporary field + } + }, + ]; + + let mut cursor = self.get_job_collection().aggregate(pipeline, None).await?; + + tracing::debug!(job_type = ?job_type, category = "db_call", "Fetching latest job by type"); + + // Get the first (and only) result if it exists + match cursor.try_next().await? { + Some(doc) => { + let job: JobItem = mongodb::bson::from_document(doc)?; + let attributes = [KeyValue::new("db_operation_name", "get_latest_job_by_type")]; + let duration = start.elapsed(); + ORCHESTRATOR_METRICS.db_calls_response_time.record(duration.as_secs_f64(), &attributes); + Ok(Some(job)) + } + None => Ok(None), + } + } + + /// function to get jobs that don't have a successor job. + /// + /// `job_a_type` : Type of job that we need to get that doesn't have any successor. + /// + /// `job_a_status` : Status of job A. + /// + /// `job_b_type` : Type of job that we need to have as a successor for Job A. + /// + /// `job_b_status` : Status of job B which we want to check with. + /// + /// Eg : + /// + /// Getting SNOS jobs that do not have a successive proving job initiated yet. + /// + /// job_a_type : SnosRun + /// + /// job_a_status : Completed + /// + /// job_b_type : ProofCreation + /// + /// TODO : For now Job B status implementation is pending so we can pass None + #[tracing::instrument(skip(self), fields(function_type = "db_call"), ret, err)] + async fn get_jobs_without_successor( + &self, + job_a_type: JobType, + job_a_status: JobStatus, + job_b_type: JobType, + ) -> Result> { + let start = Instant::now(); + // Convert enums to Bson strings + let job_a_type_bson = Bson::String(format!("{:?}", job_a_type)); + let job_a_status_bson = Bson::String(format!("{:?}", job_a_status)); + let job_b_type_bson = Bson::String(format!("{:?}", job_b_type)); + + // TODO : + // implement job_b_status here in the pipeline + + // Construct the initial pipeline + let pipeline = vec![ + // Stage 1: Match job_a_type with job_a_status + doc! { + "$match": { + "job_type": job_a_type_bson, + "status": job_a_status_bson, + } + }, + // Stage 2: Lookup to find corresponding job_b_type jobs + doc! { + "$lookup": { + "from": "jobs", + "let": { "internal_id": "$internal_id" }, + "pipeline": [ + { + "$match": { + "$expr": { + "$and": [ + { "$eq": ["$job_type", job_b_type_bson] }, + // Conditionally match job_b_status if provided + { "$eq": ["$internal_id", "$$internal_id"] } + ] + } + } + }, + // TODO : Job B status code : + // // Add status matching if job_b_status is provided + // if let Some(status) = job_b_status { + // doc! { + // "$match": { + // "$expr": { "$eq": ["$status", status] } + // } + // } + // } else { + // doc! {} + // } + // ].into_iter().filter(|d| !d.is_empty()).collect::>(), + ], + "as": "successor_jobs" + } + }, + // Stage 3: Filter out job_a_type jobs that have corresponding job_b_type jobs + doc! { + "$match": { + "successor_jobs": { "$eq": [] } + } + }, + ]; + // TODO : Job B status code : + // // Conditionally add status matching for job_b_status + // if let Some(status) = job_b_status { + // let job_b_status_bson = Bson::String(format!("{:?}", status)); + // + // // Access the "$lookup" stage in the pipeline and modify the "pipeline" array inside it + // if let Ok(lookup_stage) = pipeline[1].get_document_mut("pipeline") { + // if let Ok(lookup_pipeline) = lookup_stage.get_array_mut(0) { + // lookup_pipeline.push(Bson::Document(doc! { + // "$match": { + // "$expr": { "$eq": ["$status", job_b_status_bson] } + // } + // })); + // } + // } + // } + + let mut cursor = self.get_job_collection().aggregate(pipeline, None).await?; + + let mut vec_jobs: Vec = Vec::new(); + + // Iterate over the cursor and process each document + while let Some(result) = cursor.next().await { + match result { + Ok(document) => match bson::from_bson(Bson::Document(document)) { + Ok(job_item) => vec_jobs.push(job_item), + Err(e) => tracing::error!(error = %e, category = "db_call", "Failed to deserialize JobItem"), + }, + Err(e) => tracing::error!(error = %e, category = "db_call", "Error retrieving document"), + } + } + + tracing::debug!(job_count = vec_jobs.len(), category = "db_call", "Retrieved jobs without successor"); + let attributes = [KeyValue::new("db_operation_name", "get_jobs_without_successor")]; + let duration = start.elapsed(); + ORCHESTRATOR_METRICS.db_calls_response_time.record(duration.as_secs_f64(), &attributes); + Ok(vec_jobs) + } + + #[tracing::instrument(skip(self), fields(function_type = "db_call"), ret, err)] + async fn get_latest_job_by_type_and_status( + &self, + job_type: JobType, + job_status: JobStatus, + ) -> Result> { + let start = Instant::now(); + let filter = doc! { + "job_type": bson::to_bson(&job_type)?, + "status": bson::to_bson(&job_status)? + }; + let find_options = FindOneOptions::builder().sort(doc! { "internal_id": -1 }).build(); + + tracing::debug!(job_type = ?job_type, job_status = ?job_status, category = "db_call", "Fetched latest job by type and status"); + let attributes = [KeyValue::new("db_operation_name", "get_latest_job_by_type_and_status")]; + let duration = start.elapsed(); + ORCHESTRATOR_METRICS.db_calls_response_time.record(duration.as_secs_f64(), &attributes); + Ok(self.get_job_collection().find_one(filter, find_options).await?) + } + + #[tracing::instrument(skip(self), fields(function_type = "db_call"), ret, err)] + async fn get_jobs_after_internal_id_by_job_type( + &self, + job_type: JobType, + job_status: JobStatus, + internal_id: String, + ) -> Result> { + let start = Instant::now(); + let filter = doc! { + "job_type": bson::to_bson(&job_type)?, + "status": bson::to_bson(&job_status)?, + "$expr": { + "$gt": [ + { "$toInt": "$internal_id" }, // Convert stored string to number + { "$toInt": &internal_id } // Convert input string to number + ] + } + }; + let jobs: Vec = self.get_job_collection().find(filter, None).await?.try_collect().await?; + tracing::debug!(job_type = ?job_type, job_status = ?job_status, internal_id = internal_id, category = "db_call", "Fetched jobs after internal ID by job type"); + let attributes = [KeyValue::new("db_operation_name", "get_jobs_after_internal_id_by_job_type")]; + let duration = start.elapsed(); + ORCHESTRATOR_METRICS.db_calls_response_time.record(duration.as_secs_f64(), &attributes); + Ok(jobs) + } + + #[tracing::instrument(skip(self, limit), fields(function_type = "db_call"), ret, err)] + async fn get_jobs_by_statuses(&self, job_status: Vec, limit: Option) -> Result> { + let start = Instant::now(); + let filter = doc! { + "status": { + // TODO: Check that the conversion leads to valid output! + "$in": job_status.iter().map(|status| bson::to_bson(status).unwrap_or(Bson::Null)).collect::>() + } + }; + + let find_options = limit.map(|val| FindOptions::builder().limit(Some(val)).build()); + + let jobs: Vec = self.get_job_collection().find(filter, find_options).await?.try_collect().await?; + tracing::debug!(job_count = jobs.len(), category = "db_call", "Retrieved jobs by statuses"); + let attributes = [KeyValue::new("db_operation_name", "get_jobs_by_statuses")]; + let duration = start.elapsed(); + ORCHESTRATOR_METRICS.db_calls_response_time.record(duration.as_secs_f64(), &attributes); + Ok(jobs) + } +} diff --git a/orchestrator/crates/orchestrator/src/database/mongodb/utils.rs b/orchestrator/crates/orchestrator/src/database/mongodb/utils.rs new file mode 100644 index 000000000..c69ab5ccd --- /dev/null +++ b/orchestrator/crates/orchestrator/src/database/mongodb/utils.rs @@ -0,0 +1,54 @@ +use color_eyre::eyre::{eyre, Result}; +use mongodb::bson::{Bson, Document}; +use serde::Serialize; + +pub trait ToDocument { + fn to_document(&self) -> Result; +} + +impl ToDocument for T { + fn to_document(&self) -> Result { + match mongodb::bson::to_bson(self)? { + Bson::Document(document) => Ok(document), + _ => Err(eyre!("Failed to convert to Document")), + } + } +} + +#[cfg(test)] +mod tests { + use mongodb::bson::{Bson, Document}; + use serde::{Deserialize, Serialize}; + + use super::*; + + #[derive(Serialize, Deserialize)] + struct TestStruct { + id: i32, + name: String, + optional_field: Option, + } + + #[test] + fn test_to_document() { + let test_struct = TestStruct { id: 1, name: "Test".to_string(), optional_field: None }; + + let document = test_struct.to_document().expect("Failed to convert to Document"); + + let mut expected_document = Document::new(); + expected_document.insert("id", 1); + expected_document.insert("name", "Test"); + expected_document.insert("optional_field", Bson::Null); + + assert_eq!(document, expected_document); + } + + #[test] + fn test_to_document_fail() { + let non_document_value = 1; + + let result = non_document_value.to_document(); + + assert!(result.is_err() && result.unwrap_err().to_string().contains("Failed to convert to Document")); + } +} diff --git a/orchestrator/crates/orchestrator/src/jobs/constants.rs b/orchestrator/crates/orchestrator/src/jobs/constants.rs new file mode 100644 index 000000000..07992401f --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/constants.rs @@ -0,0 +1,11 @@ +pub const JOB_PROCESS_ATTEMPT_METADATA_KEY: &str = "process_attempt_no"; +pub const JOB_VERIFICATION_ATTEMPT_METADATA_KEY: &str = "verification_attempt_no"; +pub const JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY: &str = "blocks_number_to_settle"; +pub const JOB_METADATA_STATE_UPDATE_FETCH_FROM_TESTS: &str = "fetch_from_test_data"; +pub const JOB_METADATA_STATE_UPDATE_ATTEMPT_PREFIX: &str = "attempt_tx_hashes_"; +pub const JOB_METADATA_STATE_UPDATE_LAST_FAILED_BLOCK_NO: &str = "last_failed_block_no"; +pub const JOB_METADATA_SNOS_BLOCK: &str = "block_number_to_run"; +pub const JOB_METADATA_SNOS_FACT: &str = "snos_fact"; +pub const JOB_METADATA_FAILURE_REASON: &str = "failure_reason"; +pub const JOB_METADATA_ERROR: &str = "error"; +pub const JOB_METADATA_PROCESSING_COMPLETED_AT: &str = "processing_completed_at"; diff --git a/orchestrator/crates/orchestrator/src/jobs/conversion.rs b/orchestrator/crates/orchestrator/src/jobs/conversion.rs new file mode 100644 index 000000000..63a4a723d --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/conversion.rs @@ -0,0 +1,10 @@ +use std::str::FromStr; + +use crate::jobs::{JobError, OtherError}; + +pub fn parse_string(value: &str) -> Result +where + T::Err: std::fmt::Display, +{ + value.parse::().map_err(|e| JobError::Other(OtherError::from(format!("Could not parse string: {e}")))) +} diff --git a/orchestrator/crates/orchestrator/src/jobs/da_job/mod.rs b/orchestrator/crates/orchestrator/src/jobs/da_job/mod.rs new file mode 100644 index 000000000..ab71ab6d6 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/da_job/mod.rs @@ -0,0 +1,728 @@ +use std::collections::{HashMap, HashSet}; +use std::ops::{Add, Mul, Rem}; +use std::str::FromStr; +use std::sync::Arc; + +use async_trait::async_trait; +use chrono::{SubsecRound, Utc}; +use color_eyre::eyre::WrapErr; +use lazy_static::lazy_static; +use num_bigint::{BigUint, ToBigUint}; +use num_traits::{Num, Zero}; +use starknet::core::types::{ + BlockId, ContractStorageDiffItem, DeclaredClassItem, Felt, MaybePendingStateUpdate, StateDiff, StateUpdate, +}; +use starknet::providers::Provider; +use thiserror::Error; +use uuid::Uuid; + +use super::types::{JobItem, JobStatus, JobType, JobVerificationStatus}; +use super::{Job, JobError, OtherError}; +use crate::config::Config; +use crate::constants::BLOB_DATA_FILE_NAME; +use crate::jobs::state_update_job::utils::biguint_vec_to_u8_vec; + +lazy_static! { + /// EIP-4844 BLS12-381 modulus. + /// + /// As defined in https://eips.ethereum.org/EIPS/eip-4844 + + /// Generator of the group of evaluation points (EIP-4844 parameter). + pub static ref GENERATOR: BigUint = BigUint::from_str( + "39033254847818212395286706435128746857159659164139250548781411570340225835782", + ) + .expect("Failed to convert to biguint"); + + pub static ref BLS_MODULUS: BigUint = BigUint::from_str( + "52435875175126190479447740508185965837690552500527637822603658699938581184513", + ) + .expect("Failed to convert to biguint"); + pub static ref TWO: BigUint = 2u32.to_biguint().expect("Failed to convert to biguint"); + + pub static ref BLOB_LEN: usize = 4096; +} + +#[derive(Error, Debug, PartialEq)] +pub enum DaError { + #[error("Cannot process block {block_no:?} for job id {job_id:?} as it's still in pending state.")] + BlockPending { block_no: String, job_id: Uuid }, + + #[error("Blob size must be at least 32 bytes to accommodate a single FieldElement/BigUint, but was {blob_size:?}")] + InsufficientBlobSize { blob_size: u64 }, + + #[error( + "Exceeded the maximum number of blobs per transaction: allowed {max_blob_per_txn:?}, found \ + {current_blob_length:?} for block {block_no:?} and job id {job_id:?}" + )] + MaxBlobsLimitExceeded { max_blob_per_txn: u64, current_blob_length: u64, block_no: String, job_id: Uuid }, + + #[error("Other error: {0}")] + Other(#[from] OtherError), +} + +pub struct DaJob; + +#[async_trait] +impl Job for DaJob { + #[tracing::instrument(fields(category = "da"), skip(self, _config, metadata), ret, err)] + async fn create_job( + &self, + _config: Arc, + internal_id: String, + metadata: HashMap, + ) -> Result { + let job_id = Uuid::new_v4(); + tracing::info!(log_type = "starting", category = "da", function_type = "create_job", block_no = %internal_id, "DA job creation started."); + let job_item = JobItem { + id: job_id, + internal_id: internal_id.clone(), + job_type: JobType::DataSubmission, + status: JobStatus::Created, + external_id: String::new().into(), + metadata, + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + }; + tracing::info!(log_type = "completed", category = "da", function_type = "create_job", block_no = %internal_id, "DA job creation completed."); + Ok(job_item) + } + + #[tracing::instrument(fields(category = "da"), skip(self, config), ret, err)] + async fn process_job(&self, config: Arc, job: &mut JobItem) -> Result { + let internal_id = job.internal_id.clone(); + tracing::info!(log_type = "starting", category = "da", function_type = "process_job", job_id = ?job.id, block_no = %internal_id, "DA job processing started."); + let block_no = job.internal_id.parse::().wrap_err("Failed to parse u64".to_string()).map_err(|e| { + tracing::error!(job_id = ?job.id, error = ?e, "Failed to parse block number"); + JobError::Other(OtherError(e)) + })?; + + let state_update = config + .starknet_client() + .get_state_update(BlockId::Number(block_no)) + .await + .wrap_err("Failed to get state Update.".to_string()) + .map_err(|e| { + tracing::error!(job_id = ?job.id, error = ?e, "Failed to get state update"); + JobError::Other(OtherError(e)) + })?; + + let state_update = match state_update { + MaybePendingStateUpdate::PendingUpdate(_) => { + tracing::warn!(job_id = ?job.id, block_no = block_no, "Block is still pending"); + Err(DaError::BlockPending { block_no: block_no.to_string(), job_id: job.id })? + } + MaybePendingStateUpdate::Update(state_update) => state_update, + }; + tracing::debug!(job_id = ?job.id, "Retrieved state update"); + // constructing the data from the rpc + let blob_data = state_update_to_blob_data(block_no, state_update, config.clone()).await.map_err(|e| { + tracing::error!(job_id = ?job.id, error = ?e, "Failed to convert state update to blob data"); + JobError::Other(OtherError(e)) + })?; + // transforming the data so that we can apply FFT on this. + // @note: we can skip this step if in the above step we return vec directly + let blob_data_biguint = convert_to_biguint(blob_data.clone()); + tracing::trace!(job_id = ?job.id, "Converted blob data to BigUint"); + + let transformed_data = + fft_transformation(blob_data_biguint).wrap_err("Failed to apply FFT transformation").map_err(|e| { + tracing::error!(job_id = ?job.id, error = ?e, "Failed to apply FFT transformation"); + JobError::Other(OtherError(e)) + })?; + // data transformation on the data + tracing::trace!(job_id = ?job.id, "Applied FFT transformation"); + + store_blob_data(transformed_data.clone(), block_no, config.clone()).await?; + tracing::debug!(job_id = ?job.id, "Stored blob data"); + + let max_bytes_per_blob = config.da_client().max_bytes_per_blob().await; + let max_blob_per_txn = config.da_client().max_blob_per_txn().await; + tracing::trace!(job_id = ?job.id, max_bytes_per_blob = max_bytes_per_blob, max_blob_per_txn = max_blob_per_txn, "Retrieved DA client configuration"); + // converting BigUints to Vec, one Vec represents one blob data + + let blob_array = data_to_blobs(max_bytes_per_blob, transformed_data)?; + let current_blob_length: u64 = blob_array + .len() + .try_into() + .wrap_err("Unable to convert the blob length into u64 format.".to_string()) + .map_err(|e| { + tracing::error!(job_id = ?job.id, error = ?e, "Failed to convert blob length to u64"); + JobError::Other(OtherError(e)) + })?; + tracing::debug!(job_id = ?job.id, blob_count = current_blob_length, "Converted data to blobs"); + + // there is a limit on number of blobs per txn, checking that here + if current_blob_length > max_blob_per_txn { + tracing::warn!(job_id = ?job.id, current_blob_length = current_blob_length, max_blob_per_txn = max_blob_per_txn, "Exceeded maximum number of blobs per transaction"); + Err(DaError::MaxBlobsLimitExceeded { + max_blob_per_txn, + current_blob_length, + block_no: block_no.to_string(), + job_id: job.id, + })? + } + + // making the txn to the DA layer + let external_id = config.da_client().publish_state_diff(blob_array, &[0; 32]).await.map_err(|e| { + tracing::error!(job_id = ?job.id, error = ?e, "Failed to publish state diff to DA layer"); + JobError::Other(OtherError(e)) + })?; + + tracing::info!(log_type = "completed", category = "da", function_type = "process_job", job_id = ?job.id, block_no = %internal_id, external_id = ?external_id, "Successfully published state diff to DA layer."); + Ok(external_id) + } + + #[tracing::instrument(fields(category = "da"), skip(self, config), ret, err)] + async fn verify_job(&self, config: Arc, job: &mut JobItem) -> Result { + let internal_id = job.internal_id.clone(); + tracing::info!(log_type = "starting", category = "da", function_type = "verify_job", job_id = ?job.id, block_no = %internal_id, "DA job verification started."); + let verification_status = config + .da_client() + .verify_inclusion(job.external_id.unwrap_string().map_err(|e| { + tracing::error!(job_id = ?job.id, error = ?e, "Failed to unwrap external ID"); + JobError::Other(OtherError(e)) + })?) + .await + .map_err(|e| { + tracing::error!(job_id = ?job.id, error = ?e, "Job verification failed"); + JobError::Other(OtherError(e)) + })? + .into(); + + tracing::info!(log_type = "completed", category = "da", function_type = "verify_job", job_id = ?job.id, block_no = %internal_id, verification_status = ?verification_status, "DA job verification completed."); + Ok(verification_status) + } + + fn max_process_attempts(&self) -> u64 { + 1 + } + + fn max_verification_attempts(&self) -> u64 { + 3 + } + + fn verification_polling_delay_seconds(&self) -> u64 { + 60 + } +} + +#[tracing::instrument(skip(elements))] +pub fn fft_transformation(elements: Vec) -> Result, JobError> { + let xs: Vec = (0..*BLOB_LEN) + .map(|i| { + let bin = format!("{:012b}", i); + let bin_rev = bin.chars().rev().collect::(); + let exponent = BigUint::from_str_radix(&bin_rev, 2) + .wrap_err("Failed to convert binary string to exponent") + .map_err(|e| JobError::Other(OtherError(e)))?; + Ok(GENERATOR.modpow(&exponent, &BLS_MODULUS)) + }) + .collect::, JobError>>()?; + + let n = elements.len(); + let mut transform: Vec = vec![BigUint::zero(); n]; + + for i in 0..n { + for j in (0..n).rev() { + transform[i] = (transform[i].clone().mul(&xs[i]).add(&elements[j])).rem(&*BLS_MODULUS); + } + } + Ok(transform) +} + +pub fn convert_to_biguint(elements: Vec) -> Vec { + // Initialize the vector with 4096 BigUint zeros + let mut biguint_vec = vec![BigUint::zero(); 4096]; + + // Iterate over the elements and replace the zeros in the biguint_vec + for (i, element) in elements.iter().take(4096).enumerate() { + // Convert FieldElement to [u8; 32] + let bytes: [u8; 32] = element.to_bytes_be(); + + // Convert [u8; 32] to BigUint + let biguint = BigUint::from_bytes_be(&bytes); + + // Replace the zero with the converted value + biguint_vec[i] = biguint; + } + + biguint_vec +} + +fn data_to_blobs(blob_size: u64, block_data: Vec) -> Result>, JobError> { + // Validate blob size + if blob_size < 32 { + Err(DaError::InsufficientBlobSize { blob_size })? + } + + let mut blobs: Vec> = Vec::new(); + + // Convert all BigUint to bytes + let bytes: Vec = block_data.into_iter().flat_map(|num| num.to_bytes_be()).collect(); + + // Process bytes in chunks of blob_size + let chunk_size = blob_size as usize; + let chunks = bytes.chunks(chunk_size); + + for chunk in chunks { + let mut blob = chunk.to_vec(); + if blob.len() < chunk_size { + blob.resize(chunk_size, 0); + tracing::debug!("Warning: Last chunk of {} bytes was padded to full blob size", chunk.len()); + } + blobs.push(blob); + } + + Ok(blobs) +} + +pub async fn state_update_to_blob_data( + block_no: u64, + state_update: StateUpdate, + config: Arc, +) -> color_eyre::Result> { + let mut state_diff = state_update.state_diff; + refactor_state_update(&mut state_diff); + + let mut blob_data: Vec = vec![Felt::from(state_diff.storage_diffs.len())]; + + let deployed_contracts: HashMap = + state_diff.deployed_contracts.into_iter().map(|item| (item.address, item.class_hash)).collect(); + let replaced_classes: HashMap = + state_diff.replaced_classes.into_iter().map(|item| (item.contract_address, item.class_hash)).collect(); + let mut nonces: HashMap = + state_diff.nonces.into_iter().map(|item| (item.contract_address, item.nonce)).collect(); + + // sort storage diffs + state_diff.storage_diffs.sort_by_key(|diff| diff.address); + + // Loop over storage diffs + for ContractStorageDiffItem { address, mut storage_entries } in state_diff.storage_diffs.into_iter() { + let class_flag = deployed_contracts.get(&address).or_else(|| replaced_classes.get(&address)); + + let mut nonce = nonces.remove(&address); + + // @note: if nonce is null and there is some len of writes, make an api call to get the contract + // nonce for the block + + if nonce.is_none() && !storage_entries.is_empty() && address != Felt::ONE { + let get_current_nonce_result = config + .starknet_client() + .get_nonce(BlockId::Number(block_no), address) + .await + .wrap_err("Failed to get nonce ".to_string())?; + + nonce = Some(get_current_nonce_result); + } + let da_word = da_word(class_flag.is_some(), nonce, storage_entries.len() as u64)?; + blob_data.push(address); + blob_data.push(da_word); + + if let Some(class_hash) = class_flag { + blob_data.push(*class_hash); + } + + storage_entries.sort_by_key(|entry| entry.key); + for entry in storage_entries { + blob_data.push(entry.key); + blob_data.push(entry.value); + } + } + // Handle declared classes + blob_data.push(Felt::from(state_diff.declared_classes.len())); + + // sort storage diffs + state_diff.declared_classes.sort_by_key(|class| class.class_hash); + + for DeclaredClassItem { class_hash, compiled_class_hash } in state_diff.declared_classes.into_iter() { + blob_data.push(class_hash); + blob_data.push(compiled_class_hash); + } + + Ok(blob_data) +} + +/// To store the blob data using the storage client with path /blob_data.txt +async fn store_blob_data(blob_data: Vec, block_number: u64, config: Arc) -> Result<(), JobError> { + let storage_client = config.storage(); + let key = block_number.to_string() + "/" + BLOB_DATA_FILE_NAME; + + let blob_data_vec_u8 = biguint_vec_to_u8_vec(blob_data.as_slice()); + + if !blob_data_vec_u8.is_empty() { + storage_client.put_data(blob_data_vec_u8.into(), &key).await.map_err(|e| JobError::Other(OtherError(e)))?; + } + + Ok(()) +} + +/// DA word encoding: +/// |---padding---|---class flag---|---new nonce---|---num changes---| +/// 127 bits 1 bit 64 bits 64 bits +fn da_word(class_flag: bool, nonce_change: Option, num_changes: u64) -> Result { + // padding of 127 bits + let mut binary_string = "0".repeat(127); + + // class flag of one bit + if class_flag { + binary_string += "1" + } else { + binary_string += "0" + } + + // checking for nonce here + if let Some(new_nonce) = nonce_change { + let bytes: [u8; 32] = new_nonce.to_bytes_be(); + let biguint = BigUint::from_bytes_be(&bytes); + let binary_string_local = format!("{:b}", biguint); + let padded_binary_string = format!("{:0>64}", binary_string_local); + binary_string += &padded_binary_string; + } else { + let binary_string_local = "0".repeat(64); + binary_string += &binary_string_local; + } + + let binary_representation = format!("{:b}", num_changes); + let padded_binary_string = format!("{:0>64}", binary_representation); + binary_string += &padded_binary_string; + + let biguint = BigUint::from_str_radix(binary_string.as_str(), 2) + .wrap_err("Failed to convert binary string to BigUint") + .map_err(|e| JobError::Other(OtherError(e)))?; + + // Now convert the BigUint to a decimal string + let decimal_string = biguint.to_str_radix(10); + + Felt::from_dec_str(&decimal_string) + .wrap_err("Failed to convert decimal string to FieldElement") + .map_err(|e| JobError::Other(OtherError(e))) +} + +fn refactor_state_update(state_update: &mut StateDiff) { + let existing_storage: HashSet<_> = state_update.storage_diffs.iter().map(|item| item.address).collect(); + + // Collect new addresses, using a HashSet for deduplication + let new_addresses: HashSet<_> = Iterator::chain( + state_update.nonces.iter().map(|item| item.contract_address), + state_update.deployed_contracts.iter().map(|item| item.address), + ) + .filter(|address| !existing_storage.contains(address)) + .collect(); + + // Add new storage diffs in batch + state_update.storage_diffs.extend( + new_addresses.into_iter().map(|address| ContractStorageDiffItem { address, storage_entries: Vec::new() }), + ); +} + +#[cfg(test)] +pub mod test { + use std::collections::HashSet; + use std::fs; + use std::fs::File; + use std::io::Read; + + use ::serde::{Deserialize, Serialize}; + use color_eyre::Result; + use da_client_interface::MockDaClient; + use httpmock::prelude::*; + use majin_blob_core::blob; + use majin_blob_types::serde; + use rstest::rstest; + use serde_json::json; + use starknet::core::types::{ + ContractStorageDiffItem, DeployedContractItem, Felt, NonceUpdate, StateDiff, StateUpdate, StorageEntry, + }; + use starknet::providers::jsonrpc::HttpTransport; + use starknet::providers::JsonRpcClient; + use url::Url; + + use crate::jobs::da_job::{da_word, refactor_state_update}; + + /// Tests `da_word` function with various inputs for class flag, new nonce, and number of + /// changes. Verifies that `da_word` produces the correct Felt based on the provided + /// parameters. Uses test cases with different combinations of inputs and expected output + /// strings. Asserts the function's correctness by comparing the computed and expected + /// Felts. + #[rstest] + #[case(false, 1, 1, "18446744073709551617")] + #[case(false, 1, 0, "18446744073709551616")] + #[case(false, 0, 6, "6")] + #[case(true, 1, 0, "340282366920938463481821351505477763072")] + fn test_da_word( + #[case] class_flag: bool, + #[case] new_nonce: u64, + #[case] num_changes: u64, + #[case] expected: String, + ) { + let new_nonce = if new_nonce > 0 { Some(Felt::from(new_nonce)) } else { None }; + let da_word = da_word(class_flag, new_nonce, num_changes).expect("Failed to create DA word"); + let expected = Felt::from_dec_str(expected.as_str()).unwrap(); + assert_eq!(da_word, expected); + } + + /// Tests `state_update_to_blob_data` conversion with different state update files and block + /// numbers. Mocks DA client and storage client interactions for the test environment. + /// Compares the generated blob data against expected values to ensure correctness. + /// Verifies the data integrity by checking that the parsed state diffs match the expected + /// diffs. + #[rstest] + #[case( + 631861, + "src/tests/jobs/da_job/test_data/state_update/631861.txt", + "src/tests/jobs/da_job/test_data/test_blob/631861.txt", + "src/tests/jobs/da_job/test_data/nonces/631861.txt" + )] + #[case( + 638353, + "src/tests/jobs/da_job/test_data/state_update/638353.txt", + "src/tests/jobs/da_job/test_data/test_blob/638353.txt", + "src/tests/jobs/da_job/test_data/nonces/638353.txt" + )] + #[case( + 640641, + "src/tests/jobs/da_job/test_data/state_update/640641.txt", + "src/tests/jobs/da_job/test_data/test_blob/640641.txt", + "src/tests/jobs/da_job/test_data/nonces/640641.txt" + )] + #[case( + 671070, + "src/tests/jobs/da_job/test_data/state_update/671070.txt", + "src/tests/jobs/da_job/test_data/test_blob/671070.txt", + "src/tests/jobs/da_job/test_data/nonces/671070.txt" + )] + // Block from pragma madara and orch test run. Here we faced an issue where our + // blob building logic was not able to take the contract addresses from + // `deployed_contracts` field in state diff from state update. This test case + // was added after the fix + #[case( + 178, + "src/tests/jobs/da_job/test_data/state_update/178.txt", + "src/tests/jobs/da_job/test_data/test_blob/178.txt", + "src/tests/jobs/da_job/test_data/nonces/178.txt" + )] + #[tokio::test] + async fn test_state_update_to_blob_data( + #[case] block_no: u64, + #[case] state_update_file_path: &str, + #[case] file_path: &str, + #[case] nonce_file_path: &str, + ) { + use crate::jobs::da_job::{convert_to_biguint, state_update_to_blob_data}; + use crate::tests::config::TestConfigBuilder; + + let server = MockServer::start(); + let mut da_client = MockDaClient::new(); + + // Mocking DA client calls + da_client.expect_max_blob_per_txn().with().returning(|| 6); + da_client.expect_max_bytes_per_blob().with().returning(|| 131072); + + // Mocking storage client + let provider = JsonRpcClient::new(HttpTransport::new( + Url::parse(format!("http://localhost:{}", server.port()).as_str()).expect("Failed to parse URL"), + )); + + // mock block number (madara) : 5 + let services = TestConfigBuilder::new() + .configure_starknet_client(provider.into()) + .configure_da_client(da_client.into()) + .build() + .await; + + get_nonce_attached(&server, nonce_file_path); + + let state_update = read_state_update_from_file(state_update_file_path).expect("issue while reading"); + let blob_data = state_update_to_blob_data(block_no, state_update, services.config) + .await + .expect("issue while converting state update to blob data"); + let blob_data_biguint = convert_to_biguint(blob_data); + + let original_blob_data = serde::parse_file_to_blob_data(file_path); + // converting the data to it's original format + let recovered_blob_data = blob::recover(original_blob_data.clone()); + + assert_eq!(blob_data_biguint, recovered_blob_data); + } + + /// Tests the `fft_transformation` function with various test blob files. + /// Verifies the correctness of FFT and IFFT transformations by ensuring round-trip consistency. + /// Parses the original blob data, recovers it using IFFT, and re-applies FFT. + /// Asserts that the transformed data matches the original pre-IFFT data, ensuring integrity. + #[rstest] + #[case("src/tests/jobs/da_job/test_data/test_blob/638353.txt")] + #[case("src/tests/jobs/da_job/test_data/test_blob/631861.txt")] + #[case("src/tests/jobs/da_job/test_data/test_blob/639404.txt")] + #[case("src/tests/jobs/da_job/test_data/test_blob/640641.txt")] + #[case("src/tests/jobs/da_job/test_data/test_blob/640644.txt")] + #[case("src/tests/jobs/da_job/test_data/test_blob/640646.txt")] + #[case("src/tests/jobs/da_job/test_data/test_blob/640647.txt")] + fn test_fft_transformation(#[case] file_to_check: &str) { + // parsing the blob hex to the bigUints + + use crate::jobs::da_job::fft_transformation; + let original_blob_data = serde::parse_file_to_blob_data(file_to_check); + // converting the data to its original format + let ifft_blob_data = blob::recover(original_blob_data.clone()); + // applying the fft function again on the original format + let fft_blob_data = fft_transformation(ifft_blob_data).expect("FFT transformation failed during test"); + + // ideally the data after fft transformation and the data before ifft should be same. + assert_eq!(fft_blob_data, original_blob_data); + } + + /// Tests the serialization and deserialization process using bincode. + /// Serializes a nested vector of integers and then deserializes it back. + /// Verifies that the original data matches the deserialized data. + /// Ensures the integrity and correctness of bincode's (de)serialization. + #[rstest] + fn test_bincode() { + let data = vec![vec![1, 2], vec![3, 4]]; + + let serialize_data = bincode::serialize(&data).unwrap(); + let deserialize_data: Vec> = bincode::deserialize(&serialize_data).unwrap(); + + assert_eq!(data, deserialize_data); + } + + #[rstest] + #[case::empty_case(vec![], vec![], vec![], 0)] + #[case::only_nonces( + vec![(Felt::from(1), Felt::from(10)), (Felt::from(2), Felt::from(20))], + vec![], + vec![], + 2 + )] + #[case::only_deployed( + vec![], + vec![], + vec![(Felt::from(1), vec![1]), (Felt::from(2), vec![2])], + 2 + )] + #[case::overlapping_addresses( + vec![(Felt::from(1), Felt::from(10))], + vec![(Felt::from(1), vec![(Felt::from(1), Felt::from(100))])], + vec![(Felt::from(1), vec![1])], + 1 + )] + #[case::duplicate_addresses( + vec![(Felt::from(1), Felt::from(10)), (Felt::from(1), Felt::from(20))], + vec![], + vec![(Felt::from(1), vec![1]), (Felt::from(1), vec![2])], + 1 + )] + fn test_refactor_state_update( + #[case] nonces: Vec<(Felt, Felt)>, + #[case] storage_diffs: Vec<(Felt, Vec<(Felt, Felt)>)>, + #[case] deployed_contracts: Vec<(Felt, Vec)>, + #[case] expected_storage_count: usize, + ) { + let mut state_diff = create_state_diff(nonces, storage_diffs.clone(), deployed_contracts); + let initial_storage = state_diff.storage_diffs.clone(); + + refactor_state_update(&mut state_diff); + + assert!(verify_addresses_have_storage_diffs(&state_diff, &initial_storage)); + verify_unique_addresses(&state_diff, expected_storage_count); + } + + pub(crate) fn read_state_update_from_file(file_path: &str) -> Result { + // let file_path = format!("state_update_block_no_{}.txt", block_no); + let mut file = File::open(file_path)?; + let mut json = String::new(); + file.read_to_string(&mut json)?; + let state_update: StateUpdate = serde_json::from_str(&json)?; + Ok(state_update) + } + + #[derive(Serialize, Deserialize, Debug)] + struct NonceAddress { + nonce: String, + address: String, + } + + pub fn get_nonce_attached(server: &MockServer, file_path: &str) { + // Read the file + let file_content = fs::read_to_string(file_path).expect("Unable to read file"); + + // Parse the JSON content into a vector of NonceAddress + let nonce_addresses: Vec = + serde_json::from_str(&file_content).expect("JSON was not well-formatted"); + + // Set up mocks for each entry + for entry in nonce_addresses { + let address = entry.address.clone(); + let nonce = entry.nonce.clone(); + let response = json!({ "id": 1,"jsonrpc":"2.0","result": nonce }); + let field_element = + Felt::from_dec_str(&address).expect("issue while converting the hex to field").to_bytes_be(); + let hex_field_element = vec_u8_to_hex_string(&field_element); + + server.mock(|when, then| { + when.path("/").body_includes("starknet_getNonce").body_includes(hex_field_element); + then.status(200).body(serde_json::to_vec(&response).unwrap()); + }); + } + } + + fn vec_u8_to_hex_string(data: &[u8]) -> String { + let hex_chars: Vec = data.iter().map(|byte| format!("{:02x}", byte)).collect(); + + let mut new_hex_chars = hex_chars.join(""); + new_hex_chars = new_hex_chars.trim_start_matches('0').to_string(); + if new_hex_chars.is_empty() { "0x0".to_string() } else { format!("0x{}", new_hex_chars) } + } + + fn create_state_diff( + nonces: Vec<(Felt, Felt)>, + storage_diffs: Vec<(Felt, Vec<(Felt, Felt)>)>, + deployed_contracts: Vec<(Felt, Vec)>, + ) -> StateDiff { + StateDiff { + nonces: nonces.into_iter().map(|(addr, nonce)| NonceUpdate { contract_address: addr, nonce }).collect(), + storage_diffs: storage_diffs + .into_iter() + .map(|(addr, entries)| ContractStorageDiffItem { + address: addr, + storage_entries: entries.into_iter().map(|(key, value)| StorageEntry { key, value }).collect(), + }) + .collect(), + deprecated_declared_classes: vec![], + declared_classes: vec![], + deployed_contracts: deployed_contracts + .into_iter() + .map(|(addr, _class_hash)| DeployedContractItem { address: addr, class_hash: Default::default() }) + .collect(), + replaced_classes: vec![], + } + } + + fn verify_unique_addresses(state_diff: &StateDiff, expected_count: usize) { + let unique_addresses: HashSet<_> = state_diff.storage_diffs.iter().map(|item| &item.address).collect(); + + assert_eq!(unique_addresses.len(), state_diff.storage_diffs.len(), "Storage diffs contain duplicate addresses"); + assert_eq!(unique_addresses.len(), expected_count, "Unexpected number of storage diffs"); + } + + fn verify_addresses_have_storage_diffs( + state_diff: &StateDiff, + initial_storage: &Vec, + ) -> bool { + for orig_storage in initial_storage { + if let Some(current_storage) = + state_diff.storage_diffs.iter().find(|item| item.address == orig_storage.address) + { + assert_eq!( + orig_storage.storage_entries, current_storage.storage_entries, + "Storage entries changed unexpectedly" + ); + } + } + + let storage_addresses: HashSet<_> = state_diff.storage_diffs.iter().map(|item| &item.address).collect(); + + state_diff.nonces.iter().all(|item| storage_addresses.contains(&item.contract_address)) + && state_diff.deployed_contracts.iter().all(|item| storage_addresses.contains(&item.address)) + } +} diff --git a/orchestrator/crates/orchestrator/src/jobs/job_handler_factory.rs b/orchestrator/crates/orchestrator/src/jobs/job_handler_factory.rs new file mode 100644 index 000000000..8f4d8a34d --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/job_handler_factory.rs @@ -0,0 +1,66 @@ +use mockall::automock; + +#[automock] +pub mod factory { + use std::sync::Arc; + + #[allow(unused_imports)] + use mockall::automock; + + use crate::jobs::types::JobType; + use crate::jobs::{da_job, proving_job, snos_job, state_update_job, Job}; + + /// To get the job handler + // +-------------------+ + // | | + // | Arc>| + // | | + // +--------+----------+ + // | + // | +----------------+ + // | | | + // +--->| Box | + // | | | + // | +----------------+ + // | | + // | | + // +-------v-------+ | + // | | | + // | Closure 1 | | + // | | | + // +---------------+ | + // | + // +---------------+ | + // | | | + // | Closure x | | + // | | | + // +---------------+ | + // | + // | + // v + // +--------------+ + // | | + // | dyn Job | + // | (job_handler)| + // | | + // +--------------+ + /// We are using Arc so that we can call the Arc::clone while testing that will point + /// to the same Box. So when we are mocking the behaviour : + /// + /// - We create the MockJob + /// - We return this mocked job whenever a function calls `get_job_handler` + /// - Making it an Arc allows us to return the same MockJob in multiple calls to + /// `get_job_handler`. This is needed because `MockJob` doesn't implement Clone + pub async fn get_job_handler(job_type: &JobType) -> Arc> { + // Original implementation + let job: Box = match job_type { + JobType::DataSubmission => Box::new(da_job::DaJob), + JobType::SnosRun => Box::new(snos_job::SnosJob), + JobType::ProofCreation => Box::new(proving_job::ProvingJob), + JobType::StateTransition => Box::new(state_update_job::StateUpdateJob), + _ => unimplemented!("Job type not implemented yet."), + }; + + Arc::new(job) + } +} diff --git a/orchestrator/crates/orchestrator/src/jobs/mod.rs b/orchestrator/crates/orchestrator/src/jobs/mod.rs new file mode 100644 index 000000000..2b880830a --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/mod.rs @@ -0,0 +1,658 @@ +use std::collections::HashMap; +use std::fmt; +use std::panic::AssertUnwindSafe; +use std::sync::Arc; +use std::time::{Duration, Instant}; + +use async_trait::async_trait; +use chrono::Utc; +use color_eyre::eyre::{eyre, Context}; +use constants::{JOB_METADATA_ERROR, JOB_METADATA_FAILURE_REASON, JOB_METADATA_PROCESSING_COMPLETED_AT}; +use conversion::parse_string; +use da_job::DaError; +use futures::FutureExt; +use mockall::automock; +use mockall_double::double; +use opentelemetry::KeyValue; +use proving_job::ProvingError; +use snos_job::error::FactError; +use snos_job::SnosError; +use state_update_job::StateUpdateError; +use types::{ExternalId, JobItemUpdates}; +use uuid::Uuid; + +use crate::config::Config; +use crate::jobs::constants::{JOB_PROCESS_ATTEMPT_METADATA_KEY, JOB_VERIFICATION_ATTEMPT_METADATA_KEY}; +#[double] +use crate::jobs::job_handler_factory::factory; +use crate::jobs::types::{JobItem, JobStatus, JobType, JobVerificationStatus}; +use crate::metrics::ORCHESTRATOR_METRICS; +use crate::queue::job_queue::{add_job_to_process_queue, add_job_to_verification_queue, ConsumptionError}; + +pub mod constants; +pub mod conversion; +pub mod da_job; +pub mod job_handler_factory; +pub mod proving_job; +pub mod register_proof_job; +pub mod snos_job; +pub mod state_update_job; +pub mod types; +use thiserror::Error; + +#[derive(Error, Debug, PartialEq)] +pub enum JobError { + #[error("Job id {id:?} is invalid.")] + InvalidId { id: String }, + + #[error("Job already exists for internal_id {internal_id:?} and job_type {job_type:?}. Skipping!")] + JobAlreadyExists { internal_id: String, job_type: JobType }, + + #[error("Invalid status {job_status:?} for job with id {id:?}. Cannot process.")] + InvalidStatus { id: Uuid, job_status: JobStatus }, + + #[error("Failed to find job with id {id:?}")] + JobNotFound { id: Uuid }, + + #[error("Incrementing key {} in metadata would exceed u64::MAX", key)] + KeyOutOfBounds { key: String }, + + #[error("DA Error: {0}")] + DaJobError(#[from] DaError), + + #[error("Proving Error: {0}")] + ProvingJobError(#[from] ProvingError), + + #[error("Proving Error: {0}")] + StateUpdateJobError(#[from] StateUpdateError), + + #[error("Snos Error: {0}")] + SnosJobError(#[from] SnosError), + + #[error("Queue Handling Error: {0}")] + ConsumptionError(#[from] ConsumptionError), + + #[error("Fact Error: {0}")] + FactError(#[from] FactError), + + #[error("Other error: {0}")] + Other(#[from] OtherError), +} + +// ==================================================== +/// Wrapper Type for Other(<>) job type +#[derive(Debug)] +pub struct OtherError(color_eyre::eyre::Error); + +impl fmt::Display for OtherError { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + self.0.fmt(f) + } +} + +impl std::error::Error for OtherError {} + +impl PartialEq for OtherError { + fn eq(&self, _other: &Self) -> bool { + false + } +} + +impl From for OtherError { + fn from(err: color_eyre::eyre::Error) -> Self { + OtherError(err) + } +} + +impl From for OtherError { + fn from(error_string: String) -> Self { + OtherError(eyre!(error_string)) + } +} +// ==================================================== + +/// Job Trait +/// +/// The Job trait is used to define the methods that a job +/// should implement to be used as a job for the orchestrator. The orchestrator automatically +/// handles queueing and processing of jobs as long as they implement the trait. +#[automock] +#[async_trait] +pub trait Job: Send + Sync { + /// Should build a new job item and return it + async fn create_job( + &self, + config: Arc, + internal_id: String, + metadata: HashMap, + ) -> Result; + /// Should process the job and return the external_id which can be used to + /// track the status of the job. For example, a DA job will submit the state diff + /// to the DA layer and return the txn hash. + async fn process_job(&self, config: Arc, job: &mut JobItem) -> Result; + /// Should verify the job and return the status of the verification. For example, + /// a DA job will verify the inclusion of the state diff in the DA layer and return + /// the status of the verification. + async fn verify_job(&self, config: Arc, job: &mut JobItem) -> Result; + /// Should return the maximum number of attempts to process the job. A new attempt is made + /// every time the verification returns `JobVerificationStatus::Rejected` + fn max_process_attempts(&self) -> u64; + /// Should return the maximum number of attempts to verify the job. A new attempt is made + /// every few seconds depending on the result `verification_polling_delay_seconds` + fn max_verification_attempts(&self) -> u64; + /// Should return the number of seconds to wait before polling for verification + fn verification_polling_delay_seconds(&self) -> u64; +} + +/// Creates the job in the DB in the created state and adds it to the process queue +#[tracing::instrument(fields(category = "general"), skip(config), ret, err)] +pub async fn create_job( + job_type: JobType, + internal_id: String, + metadata: HashMap, + config: Arc, +) -> Result<(), JobError> { + let start = Instant::now(); + tracing::info!(log_type = "starting", category = "general", function_type = "create_job", job_type = ?job_type, block_no = %internal_id, "General create job started for block"); + + tracing::debug!( + job_type = ?job_type, + internal_id = %internal_id, + metadata = ?metadata, + "Job creation details" + ); + let existing_job = config + .database() + .get_job_by_internal_id_and_type(internal_id.as_str(), &job_type) + .await + .map_err(|e| JobError::Other(OtherError(e)))?; + + // this is technically a redundant check, we've another check inside `create_job` + if existing_job.is_some() { + tracing::warn!("{}", JobError::JobAlreadyExists { internal_id, job_type }); + return Ok(()); + } + + let job_handler = factory::get_job_handler(&job_type).await; + let job_item = job_handler.create_job(config.clone(), internal_id.clone(), metadata).await?; + config.database().create_job(job_item.clone()).await?; + + add_job_to_process_queue(job_item.id, &job_type, config.clone()) + .await + .map_err(|e| JobError::Other(OtherError(e)))?; + + let attributes = + [KeyValue::new("operation_job_type", format!("{:?}", job_type)), KeyValue::new("operation_type", "create_job")]; + + tracing::info!(log_type = "completed", category = "general", function_type = "create_job", block_no = %internal_id, "General create job completed for block"); + let duration = start.elapsed(); + ORCHESTRATOR_METRICS.block_gauge.record(parse_string(&internal_id)?, &attributes); + ORCHESTRATOR_METRICS.successful_job_operations.add(1.0, &attributes); + ORCHESTRATOR_METRICS.jobs_response_time.record(duration.as_secs_f64(), &attributes); + Ok(()) +} + +/// Processes the job, increments the process attempt count and updates the status of the job in the +/// DB. It then adds the job to the verification queue. +#[tracing::instrument(skip(config), fields(category = "general", job, job_type, internal_id), ret, err)] +pub async fn process_job(id: Uuid, config: Arc) -> Result<(), JobError> { + let start = Instant::now(); + let job = get_job(id, config.clone()).await?; + let internal_id = job.internal_id.clone(); + tracing::info!(log_type = "starting", category = "general", function_type = "process_job", block_no = %internal_id, "General process job started for block"); + + tracing::Span::current().record("job", format!("{:?}", job.clone())); + tracing::Span::current().record("job_type", format!("{:?}", job.job_type)); + tracing::Span::current().record("internal_id", job.internal_id.clone()); + + tracing::debug!(job_id = ?id, status = ?job.status, "Current job status"); + match job.status { + // we only want to process jobs that are in the created or verification failed state. + // verification failed state means that the previous processing failed and we want to retry + JobStatus::Created | JobStatus::VerificationFailed => { + tracing::info!(job_id = ?id, status = ?job.status, "Job status is Created or VerificationFailed, proceeding with processing"); + } + _ => { + tracing::warn!(job_id = ?id, status = ?job.status, "Job status is Invalid. Cannot process."); + return Err(JobError::InvalidStatus { id, job_status: job.status }); + } + } + // this updates the version of the job. this ensures that if another thread was about to process + // the same job, it would fail to update the job in the database because the version would be + // outdated + tracing::debug!(job_id = ?id, "Updating job status to LockedForProcessing"); + let mut job = config + .database() + .update_job(&job, JobItemUpdates::new().update_status(JobStatus::LockedForProcessing).build()) + .await + .map_err(|e| { + tracing::error!(job_id = ?id, error = ?e, "Failed to update job status"); + JobError::Other(OtherError(e)) + })?; + + tracing::debug!(job_id = ?id, job_type = ?job.job_type, "Getting job handler"); + let job_handler = factory::get_job_handler(&job.job_type).await; + let external_id = match AssertUnwindSafe(job_handler.process_job(config.clone(), &mut job)).catch_unwind().await { + Ok(Ok(external_id)) => { + tracing::debug!(job_id = ?id, "Successfully processed job"); + // Add the time of processing to the metadata. + job.metadata + .insert(JOB_METADATA_PROCESSING_COMPLETED_AT.to_string(), Utc::now().timestamp_millis().to_string()); + external_id + } + Ok(Err(e)) => { + // TODO: I think most of the times the errors will not be fixed automatically + // if we just retry. But for some failures like DB issues, it might be possible + // that retrying will work. So we can add a retry logic here to improve robustness. + tracing::error!(job_id = ?id, error = ?e, "Failed to process job"); + return move_job_to_failed(&job, config.clone(), format!("Processing failed: {}", e)).await; + } + Err(panic) => { + let panic_msg = panic + .downcast_ref::() + .map(|s| s.as_str()) + .or_else(|| panic.downcast_ref::<&str>().copied()) + .unwrap_or("Unknown panic message"); + + tracing::error!(job_id = ?id, panic_msg = %panic_msg, "Job handler panicked during processing"); + return move_job_to_failed( + &job, + config.clone(), + format!("Job handler panicked with message: {}", panic_msg), + ) + .await; + } + }; + tracing::debug!(job_id = ?id, "Incrementing process attempt count in metadata"); + let metadata = increment_key_in_metadata(&job.metadata, JOB_PROCESS_ATTEMPT_METADATA_KEY)?; + + // Fetching the job again because update status above will update the job version + tracing::debug!(job_id = ?id, "Updating job status to PendingVerification"); + config + .database() + .update_job( + &job, + JobItemUpdates::new() + .update_status(JobStatus::PendingVerification) + .update_metadata(metadata) + .update_external_id(external_id.clone().into()) + .build(), + ) + .await + .map_err(|e| { + tracing::error!(job_id = ?id, error = ?e, "Failed to update job status"); + JobError::Other(OtherError(e)) + })?; + + tracing::debug!(job_id = ?id, "Adding job to verification queue"); + add_job_to_verification_queue( + job.id, + &job.job_type, + Duration::from_secs(job_handler.verification_polling_delay_seconds()), + config.clone(), + ) + .await + .map_err(|e| { + tracing::error!(job_id = ?id, error = ?e, "Failed to add job to verification queue"); + JobError::Other(OtherError(e)) + })?; + + let attributes = vec![ + KeyValue::new("operation_job_type", format!("{:?}", job.job_type)), + KeyValue::new("operation_type", "process_job"), + ]; + + tracing::info!(log_type = "completed", category = "general", function_type = "process_job", block_no = %internal_id, "General process job completed for block"); + let duration = start.elapsed(); + ORCHESTRATOR_METRICS.successful_job_operations.add(1.0, &attributes); + ORCHESTRATOR_METRICS.jobs_response_time.record(duration.as_secs_f64(), &attributes); + // job_type, internal_id, external_id + register_block_gauge(job.job_type, &job.internal_id, external_id.into(), &attributes)?; + Ok(()) +} + +/// Verify Job Function +/// +/// Verifies the job and updates the status of the job in the DB. If the verification fails, it +/// retries processing the job if the max attempts have not been exceeded. If the max attempts have +/// been exceeded, it marks the job as timed out. If the verification is still pending, it pushes +/// the job back to the queue. +#[tracing::instrument( + skip(config), + fields(category = "general", job, job_type, internal_id, verification_status), + ret, + err +)] +pub async fn verify_job(id: Uuid, config: Arc) -> Result<(), JobError> { + let start = Instant::now(); + let mut job = get_job(id, config.clone()).await?; + let internal_id = job.internal_id.clone(); + tracing::info!(log_type = "starting", category = "general", function_type = "verify_job", block_no = %internal_id, "General verify job started for block"); + + tracing::Span::current().record("job", format!("{:?}", job.clone())); + tracing::Span::current().record("job_type", format!("{:?}", job.job_type.clone())); + tracing::Span::current().record("internal_id", job.internal_id.clone()); + + match job.status { + JobStatus::PendingVerification => { + tracing::debug!(job_id = ?id, "Job status is PendingVerification, proceeding with verification"); + } + _ => { + tracing::error!(job_id = ?id, status = ?job.status, "Invalid job status for verification"); + return Err(JobError::InvalidStatus { id, job_status: job.status }); + } + } + + let job_handler = factory::get_job_handler(&job.job_type).await; + tracing::debug!(job_id = ?id, "Verifying job with handler"); + let verification_status = job_handler.verify_job(config.clone(), &mut job).await?; + tracing::Span::current().record("verification_status", format!("{:?}", &verification_status)); + + let mut attributes = vec![ + KeyValue::new("operation_job_type", format!("{:?}", job.job_type)), + KeyValue::new("operation_type", "verify_job"), + KeyValue::new("operation_verification_status", format!("{:?}", &verification_status)), + ]; + let mut operation_job_status: Option = None; + + match verification_status { + JobVerificationStatus::Verified => { + tracing::info!(job_id = ?id, "Job verified successfully"); + match job + .metadata + .get(JOB_METADATA_PROCESSING_COMPLETED_AT) + .and_then(|time| time.parse::().ok()) + .map(|start| Utc::now().timestamp_millis() - start) + { + Some(time_taken) => ORCHESTRATOR_METRICS + .verification_time + .record(time_taken as f64, &[KeyValue::new("operation_job_type", format!("{:?}", job.job_type))]), + None => tracing::warn!("Failed to calculate verification time: Invalid or missing processing time"), + } + let mut metadata = job.metadata.clone(); + metadata.remove("processing_completed_at"); + config + .database() + .update_job( + &job, + JobItemUpdates::new().update_metadata(metadata).update_status(JobStatus::Completed).build(), + ) + .await + .map_err(|e| { + tracing::error!(job_id = ?id, error = ?e, "Failed to update job status to Completed"); + JobError::Other(OtherError(e)) + })?; + operation_job_status = Some(JobStatus::Completed); + } + JobVerificationStatus::Rejected(e) => { + tracing::warn!(job_id = ?id, error = ?e, "Job verification rejected"); + let mut new_job_metadata = job.metadata.clone(); + new_job_metadata.insert(JOB_METADATA_ERROR.to_string(), e); + operation_job_status = Some(JobStatus::VerificationFailed); + + let process_attempts = get_u64_from_metadata(&job.metadata, JOB_PROCESS_ATTEMPT_METADATA_KEY) + .map_err(|e| JobError::Other(OtherError(e)))?; + if process_attempts < job_handler.max_process_attempts() { + tracing::info!( + job_id = ?id, + attempt = process_attempts + 1, + "Verification failed. Retrying job processing" + ); + + config + .database() + .update_job( + &job, + JobItemUpdates::new() + .update_status(JobStatus::VerificationFailed) + .update_metadata(new_job_metadata) + .build(), + ) + .await + .map_err(|e| { + tracing::error!(job_id = ?id, error = ?e, "Failed to update job status to VerificationFailed"); + JobError::Other(OtherError(e)) + })?; + add_job_to_process_queue(job.id, &job.job_type, config.clone()) + .await + .map_err(|e| JobError::Other(OtherError(e)))?; + } else { + tracing::warn!(job_id = ?id, "Max process attempts reached. Job will not be retried"); + return move_job_to_failed( + &job, + config.clone(), + format!("Verification rejected. Max process attempts reached: {}", process_attempts), + ) + .await; + } + } + JobVerificationStatus::Pending => { + tracing::debug!(job_id = ?id, "Job verification still pending"); + let verify_attempts = get_u64_from_metadata(&job.metadata, JOB_VERIFICATION_ATTEMPT_METADATA_KEY) + .map_err(|e| JobError::Other(OtherError(e)))?; + if verify_attempts >= job_handler.max_verification_attempts() { + tracing::warn!(job_id = ?id, "Max verification attempts reached. Marking job as timed out"); + config + .database() + .update_job(&job, JobItemUpdates::new().update_status(JobStatus::VerificationTimeout).build()) + .await + .map_err(|e| { + tracing::error!(job_id = ?id, error = ?e, "Failed to update job status to VerificationTimeout"); + JobError::Other(OtherError(e)) + })?; + operation_job_status = Some(JobStatus::VerificationTimeout); + } else { + let metadata = increment_key_in_metadata(&job.metadata, JOB_VERIFICATION_ATTEMPT_METADATA_KEY)?; + + config + .database() + .update_job(&job, JobItemUpdates::new().update_metadata(metadata).build()) + .await + .map_err(|e| { + tracing::error!(job_id = ?id, error = ?e, "Failed to update job metadata"); + JobError::Other(OtherError(e)) + })?; + + tracing::debug!(job_id = ?id, "Adding job back to verification queue"); + add_job_to_verification_queue( + job.id, + &job.job_type, + Duration::from_secs(job_handler.verification_polling_delay_seconds()), + config.clone(), + ) + .await + .map_err(|e| { + tracing::error!(job_id = ?id, error = ?e, "Failed to add job to verification queue"); + JobError::Other(OtherError(e)) + })?; + } + } + }; + + if let Some(job_status) = operation_job_status { + attributes.push(KeyValue::new("operation_job_status", format!("{}", job_status))); + } + + tracing::info!(log_type = "completed", category = "general", function_type = "verify_job", block_no = %internal_id, "General verify job completed for block"); + let duration = start.elapsed(); + ORCHESTRATOR_METRICS.successful_job_operations.add(1.0, &attributes); + ORCHESTRATOR_METRICS.jobs_response_time.record(duration.as_secs_f64(), &attributes); + // job_type, internal_id, external_id + register_block_gauge(job.job_type, &job.internal_id, job.external_id, &attributes)?; + Ok(()) +} + +/// Terminates the job and updates the status of the job in the DB. +/// Logs error if the job status `Completed` is existing on DL queue. +#[tracing::instrument(skip(config), fields(job_status, job_type), ret, err)] +pub async fn handle_job_failure(id: Uuid, config: Arc) -> Result<(), JobError> { + let job = get_job(id, config.clone()).await?.clone(); + let internal_id = job.internal_id.clone(); + tracing::info!(log_type = "starting", category = "general", function_type = "handle_job_failure", block_no = %internal_id, "General handle job failure started for block"); + + tracing::Span::current().record("job_status", format!("{:?}", job.status)); + tracing::Span::current().record("job_type", format!("{:?}", job.job_type)); + + tracing::debug!(job_id = ?id, job_status = ?job.status, job_type = ?job.job_type, block_no = %internal_id, "Job details for failure handling for block"); + let status = job.status.clone().to_string(); + move_job_to_failed(&job, config.clone(), format!("Received failure queue message for job with status: {}", status)) + .await +} + +fn register_block_gauge( + job_type: JobType, + internal_id: &str, + external_id: ExternalId, + attributes: &[KeyValue], +) -> Result<(), JobError> { + let block_number = if let JobType::StateTransition = job_type { + parse_string( + external_id + .unwrap_string() + .map_err(|e| JobError::Other(OtherError::from(format!("Could not parse string: {e}"))))?, + ) + } else { + parse_string(internal_id) + }?; + + ORCHESTRATOR_METRICS.block_gauge.record(block_number, attributes); + Ok(()) +} + +async fn move_job_to_failed(job: &JobItem, config: Arc, reason: String) -> Result<(), JobError> { + if job.status == JobStatus::Completed { + tracing::error!(job_id = ?job.id, job_status = ?job.status, "Invalid state exists on DL queue"); + return Ok(()); + } + // We assume that a Failure status will only show up if the message is sent twice from a queue + // Can return silently because it's already been processed. + else if job.status == JobStatus::Failed { + tracing::warn!(job_id = ?job.id, "Job already marked as failed, skipping processing"); + return Ok(()); + } + + let mut metadata = job.metadata.clone(); + let internal_id = job.internal_id.clone(); + metadata.insert(JOB_METADATA_FAILURE_REASON.to_string(), reason); + + tracing::debug!(job_id = ?job.id, "Updating job status to Failed in database"); + match config + .database() + .update_job(job, JobItemUpdates::new().update_status(JobStatus::Failed).update_metadata(metadata).build()) + .await + { + Ok(_) => { + tracing::info!(log_type = "completed", category = "general", function_type = "handle_job_failure", block_no = %internal_id, "General handle job failure completed for block"); + ORCHESTRATOR_METRICS + .failed_jobs + .add(1.0, &[KeyValue::new("operation_job_type", format!("{:?}", job.job_type))]); + Ok(()) + } + Err(e) => { + tracing::error!(log_type = "error", category = "general", function_type = "handle_job_failure", block_no = %internal_id, error = %e, "General handle job failure failed for block"); + Err(JobError::Other(OtherError(e))) + } + } +} + +async fn get_job(id: Uuid, config: Arc) -> Result { + let job = config.database().get_job_by_id(id).await.map_err(|e| JobError::Other(OtherError(e)))?; + match job { + Some(job) => Ok(job), + None => Err(JobError::JobNotFound { id }), + } +} + +pub fn increment_key_in_metadata( + metadata: &HashMap, + key: &str, +) -> Result, JobError> { + let mut new_metadata = metadata.clone(); + let attempt = get_u64_from_metadata(metadata, key).map_err(|e| JobError::Other(OtherError(e)))?; + let incremented_value = attempt.checked_add(1); + incremented_value.ok_or_else(|| JobError::KeyOutOfBounds { key: key.to_string() })?; + new_metadata.insert( + key.to_string(), + incremented_value.ok_or(JobError::Other(OtherError(eyre!("Overflow while incrementing attempt"))))?.to_string(), + ); + Ok(new_metadata) +} + +fn get_u64_from_metadata(metadata: &HashMap, key: &str) -> color_eyre::Result { + metadata + .get(key) + .unwrap_or(&"0".to_string()) + .parse::() + .wrap_err(format!("Failed to parse u64 from metadata key '{}'", key)) +} + +#[cfg(test)] +mod tests { + use super::*; + + mod test_increment_key_in_metadata { + use super::*; + + #[test] + fn key_does_not_exist() { + let metadata = HashMap::new(); + let key = "test_key"; + let updated_metadata = increment_key_in_metadata(&metadata, key).unwrap(); + assert_eq!(updated_metadata.get(key), Some(&"1".to_string())); + } + + #[test] + fn key_exists_with_numeric_value() { + let mut metadata = HashMap::new(); + metadata.insert("test_key".to_string(), "41".to_string()); + let key = "test_key"; + let updated_metadata = increment_key_in_metadata(&metadata, key).unwrap(); + assert_eq!(updated_metadata.get(key), Some(&"42".to_string())); + } + + #[test] + fn key_exists_with_non_numeric_value() { + let mut metadata = HashMap::new(); + metadata.insert("test_key".to_string(), "not_a_number".to_string()); + let key = "test_key"; + let result = increment_key_in_metadata(&metadata, key); + assert!(result.is_err()); + } + + #[test] + fn key_exists_with_max_u64_value() { + let mut metadata = HashMap::new(); + metadata.insert("test_key".to_string(), u64::MAX.to_string()); + let key = "test_key"; + let result = increment_key_in_metadata(&metadata, key); + assert!(result.is_err()); + } + } + + mod test_get_u64_from_metadata { + use super::*; + + #[test] + fn key_exists_with_valid_u64_value() { + let mut metadata = HashMap::new(); + metadata.insert("key1".to_string(), "12345".to_string()); + let result = get_u64_from_metadata(&metadata, "key1").unwrap(); + assert_eq!(result, 12345); + } + + #[test] + fn key_exists_with_invalid_value() { + let mut metadata = HashMap::new(); + metadata.insert("key2".to_string(), "not_a_number".to_string()); + let result = get_u64_from_metadata(&metadata, "key2"); + assert!(result.is_err()); + } + + #[test] + fn key_does_not_exist() { + let metadata = HashMap::::new(); + let result = get_u64_from_metadata(&metadata, "key3").unwrap(); + assert_eq!(result, 0); + } + } +} diff --git a/orchestrator/crates/orchestrator/src/jobs/proving_job/mod.rs b/orchestrator/crates/orchestrator/src/jobs/proving_job/mod.rs new file mode 100644 index 000000000..a034bb4ec --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/proving_job/mod.rs @@ -0,0 +1,158 @@ +use std::collections::HashMap; +use std::sync::Arc; + +use async_trait::async_trait; +use cairo_vm::vm::runners::cairo_pie::CairoPie; +use chrono::{SubsecRound, Utc}; +use color_eyre::eyre::{eyre, WrapErr}; +use prover_client_interface::{Task, TaskStatus}; +use thiserror::Error; +use uuid::Uuid; + +use super::types::{JobItem, JobStatus, JobType, JobVerificationStatus}; +use super::{Job, JobError, OtherError}; +use crate::config::Config; +use crate::constants::CAIRO_PIE_FILE_NAME; +use crate::jobs::constants::JOB_METADATA_SNOS_FACT; + +#[derive(Error, Debug, PartialEq)] +pub enum ProvingError { + #[error("Cairo PIE path is not specified - prover job #{internal_id:?}")] + CairoPIEWrongPath { internal_id: String }, + + #[error("Not able to read the cairo PIE file from the zip file provided.")] + CairoPIENotReadable(String), + + #[error("Not able to get the PIE file from AWS S3 bucket.")] + CairoPIEFileFetchFailed(String), + + #[error("Other error: {0}")] + Other(#[from] OtherError), +} + +pub struct ProvingJob; + +#[async_trait] +impl Job for ProvingJob { + #[tracing::instrument(fields(category = "proving"), skip(self, _config, metadata), ret, err)] + async fn create_job( + &self, + _config: Arc, + internal_id: String, + metadata: HashMap, + ) -> Result { + tracing::info!(log_type = "starting", category = "proving", function_type = "create_job", block_no = %internal_id, "Proving job creation started."); + let job_item = JobItem { + id: Uuid::new_v4(), + internal_id: internal_id.clone(), + job_type: JobType::ProofCreation, + status: JobStatus::Created, + external_id: String::new().into(), + metadata, + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + }; + tracing::info!(log_type = "completed", category = "proving", function_type = "create_job", block_no = %internal_id, "Proving job created."); + Ok(job_item) + } + + #[tracing::instrument(fields(category = "proving"), skip(self, config), ret, err)] + async fn process_job(&self, config: Arc, job: &mut JobItem) -> Result { + let internal_id = job.internal_id.clone(); + tracing::info!(log_type = "starting", category = "proving", function_type = "process_job", job_id = ?job.id, block_no = %internal_id, "Proving job processing started."); + + // Cairo Pie path in s3 storage client + let block_number: String = job.internal_id.to_string(); + let cairo_pie_path = block_number + "/" + CAIRO_PIE_FILE_NAME; + tracing::debug!(job_id = %job.internal_id, %cairo_pie_path, "Fetching Cairo PIE file"); + + let cairo_pie_file = config.storage().get_data(&cairo_pie_path).await.map_err(|e| { + tracing::error!(job_id = %job.internal_id, error = %e, "Failed to fetch Cairo PIE file"); + ProvingError::CairoPIEFileFetchFailed(e.to_string()) + })?; + tracing::debug!(job_id = %job.internal_id, "Parsing Cairo PIE file"); + let cairo_pie = Box::new(CairoPie::from_bytes(cairo_pie_file.to_vec().as_slice()).map_err(|e| { + tracing::error!(job_id = %job.internal_id, error = %e, "Failed to parse Cairo PIE file"); + ProvingError::CairoPIENotReadable(e.to_string()) + })?); + + tracing::debug!(job_id = %job.internal_id, "Submitting task to prover client"); + let external_id = config + .prover_client() + .submit_task(Task::CairoPie(cairo_pie), *config.prover_layout_name()) + .await + .wrap_err("Prover Client Error".to_string()) + .map_err(|e| { + tracing::error!(job_id = %job.internal_id, error = %e, "Failed to submit task to prover client"); + JobError::Other(OtherError(e)) + })?; + + tracing::info!(log_type = "completed", category = "proving", function_type = "process_job", job_id = ?job.id, block_no = %internal_id, %external_id, "Proving job processed successfully."); + Ok(external_id) + } + + #[tracing::instrument(fields(category = "proving"), skip(self, config), ret, err)] + async fn verify_job(&self, config: Arc, job: &mut JobItem) -> Result { + let internal_id = job.internal_id.clone(); + tracing::info!(log_type = "starting", category = "proving", function_type = "verify_job", job_id = ?job.id, block_no = %internal_id, "Proving job verification started."); + + let task_id: String = job + .external_id + .unwrap_string() + .map_err(|e| { + tracing::error!(job_id = %job.internal_id, error = %e, "Failed to unwrap external_id"); + JobError::Other(OtherError(e)) + })? + .into(); + + let fact = job.metadata.get(JOB_METADATA_SNOS_FACT).ok_or_else(|| { + tracing::error!(job_id = %job.internal_id, "Fact not available in job metadata"); + OtherError(eyre!("Fact not available in job")) + })?; + + tracing::debug!(job_id = %job.internal_id, %task_id, "Getting task status from prover client"); + let task_status = config + .prover_client() + .get_task_status(&task_id, fact) + .await + .wrap_err("Prover Client Error".to_string()) + .map_err(|e| { + tracing::error!(job_id = %job.internal_id, error = %e, "Failed to get task status from prover client"); + JobError::Other(OtherError(e)) + })?; + + match task_status { + TaskStatus::Processing => { + tracing::info!(log_type = "pending", category = "proving", function_type = "verify_job", job_id = ?job.id, block_no = %internal_id, "Proving job verification pending."); + Ok(JobVerificationStatus::Pending) + } + TaskStatus::Succeeded => { + // TODO: call isValid on the contract over here to cross-verify whether the proof was registered on + // chain or not + + tracing::info!(log_type = "completed", category = "proving", function_type = "verify_job", job_id = ?job.id, block_no = %internal_id, "Proving job verification completed."); + Ok(JobVerificationStatus::Verified) + } + TaskStatus::Failed(err) => { + tracing::info!(log_type = "failed", category = "proving", function_type = "verify_job", job_id = ?job.id, block_no = %internal_id, "Proving job verification failed."); + Ok(JobVerificationStatus::Rejected(format!( + "Prover job #{} failed with error: {}", + job.internal_id, err + ))) + } + } + } + + fn max_process_attempts(&self) -> u64 { + 2 + } + + fn max_verification_attempts(&self) -> u64 { + 300 + } + + fn verification_polling_delay_seconds(&self) -> u64 { + 300 + } +} diff --git a/orchestrator/crates/orchestrator/src/jobs/register_proof_job/mod.rs b/orchestrator/crates/orchestrator/src/jobs/register_proof_job/mod.rs new file mode 100644 index 000000000..042467440 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/register_proof_job/mod.rs @@ -0,0 +1,71 @@ +use std::collections::HashMap; +use std::sync::Arc; + +use async_trait::async_trait; +use chrono::{SubsecRound, Utc}; +use color_eyre::Result; +use uuid::Uuid; + +use super::JobError; +use crate::config::Config; +use crate::jobs::types::{JobItem, JobStatus, JobType, JobVerificationStatus}; +use crate::jobs::Job; + +pub struct RegisterProofJob; + +#[async_trait] +impl Job for RegisterProofJob { + #[tracing::instrument(fields(category = "proof_registry"), skip(self, _config, metadata), ret, err)] + async fn create_job( + &self, + _config: Arc, + internal_id: String, + metadata: HashMap, + ) -> Result { + tracing::info!(log_type = "starting", category = "proof_registry", function_type = "create_job", block_no = %internal_id, "Proof registration job creation started."); + let job_item = JobItem { + id: Uuid::new_v4(), + internal_id: internal_id.clone(), + job_type: JobType::ProofRegistration, + status: JobStatus::Created, + external_id: String::new().into(), + // metadata must contain the blocks that have been included inside this proof + // this will allow state update jobs to be created for each block + metadata, + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + }; + tracing::info!(log_type = "completed", category = "proof_registry", function_type = "create_job", block_no = %internal_id, "Proof registration job created."); + Ok(job_item) + } + + #[tracing::instrument(fields(category = "proof_registry"), skip(self, _config), ret, err)] + async fn process_job(&self, _config: Arc, _job: &mut JobItem) -> Result { + // Get proof from storage and submit on chain for verification + // We need to implement a generic trait for this to support multiple + // base layers + todo!() + } + + #[tracing::instrument(fields(category = "proof_registry"), skip(self, _config), ret, err)] + async fn verify_job(&self, _config: Arc, job: &mut JobItem) -> Result { + let internal_id = job.internal_id.clone(); + tracing::info!(log_type = "starting", category = "proof_registry", function_type = "verify_job", job_id = ?job.id, block_no = %internal_id, "Proof registration job verification started."); + // verify that the proof transaction has been included on chain + tracing::info!(log_type = "completed", category = "proof_registry", function_type = "verify_job", job_id = ?job.id, block_no = %internal_id, "Proof registration job verification completed."); + todo!() + } + + fn max_process_attempts(&self) -> u64 { + todo!() + } + + fn max_verification_attempts(&self) -> u64 { + todo!() + } + + fn verification_polling_delay_seconds(&self) -> u64 { + todo!() + } +} diff --git a/orchestrator/crates/orchestrator/src/jobs/snos_job/error.rs b/orchestrator/crates/orchestrator/src/jobs/snos_job/error.rs new file mode 100644 index 000000000..5dcdb80ef --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/snos_job/error.rs @@ -0,0 +1,51 @@ +#[derive(Debug, thiserror::Error, PartialEq)] +pub enum FactError { + #[error("Failed to compute program hash: {0}")] + ProgramHashCompute(String), + #[error("There is no additional data for the output builtin in Cairo PIE")] + OutputBuiltinNoAdditionalData, + #[error("There is no segment info for the output builtin in Cairo PIE")] + OutputBuiltinNoSegmentInfo, + #[error("Tree structure length is not even")] + TreeStructureLenOdd, + #[error("Tree structure is empty")] + TreeStructureEmpty, + #[error("Tree structure is too large")] + TreeStructureTooLarge, + #[error("Tree structure contains invalid values")] + TreeStructureInvalid, + #[error("Output pages length is unexpected")] + OutputPagesLenUnexpected, + #[error("Output page {0} has invalid start {1} (expected 0 < x < {2})")] + OutputPagesInvalidStart(usize, usize, usize), + #[error("Output page {0} has expected start {1} (expected{2})")] + OutputPagesUnexpectedStart(usize, usize, usize), + #[error("Output page {0} has invalid size {1} (expected 0 < x < {2})")] + OutputPagesInvalidSize(usize, usize, usize), + #[error("Output page {0} has unexpected id (expected {1})")] + OutputPagesUnexpectedId(usize, usize), + #[error("Output pages cover only {0} out of {1} output elements")] + OutputPagesUncoveredOutput(usize, usize), + #[error("Output segment is not found in the memory")] + OutputSegmentNotFound, + #[error("Output segment does not fit into the memory")] + OutputSegmentInvalidRange, + #[error("Output segment contains inconsistent offset {0} (expected {1})")] + OutputSegmentInconsistentOffset(usize, usize), + #[error("Output segment contains unexpected relocatable at position {0}")] + OutputSegmentUnexpectedRelocatable(usize), + #[error("Tree structure: pages count {0} is in invalid range (expected <= {1})")] + TreeStructurePagesCountOutOfRange(usize, usize), + #[error("Tree structure: nodes count {0} is in invalid range (expected <= {1})")] + TreeStructureNodesCountOutOfRange(usize, usize), + #[error("Tree structure: node stack contains more than one node")] + TreeStructureRootInvalid, + #[error("Tree structure: {0} pages were not processed")] + TreeStructurePagesNotProcessed(usize), + #[error("Tree structure: end offset {0} does not match the output length {1}")] + TreeStructureEndOffsetInvalid(usize, usize), + #[error("Tree structure: root offset {0} does not match the output length {1}")] + TreeStructureRootOffsetInvalid(usize, usize), + #[error("Program output doesn't match the segment size.")] + InvalidSegment, +} diff --git a/orchestrator/crates/orchestrator/src/jobs/snos_job/fact_info.rs b/orchestrator/crates/orchestrator/src/jobs/snos_job/fact_info.rs new file mode 100644 index 000000000..147c67977 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/snos_job/fact_info.rs @@ -0,0 +1,162 @@ +//! Fact info structure and helpers. +//! +//! Port of https://github.com/starkware-libs/cairo-lang/blob/master/src/starkware/cairo/bootloaders/generate_fact.py + +use alloy::primitives::{keccak256, B256}; +use cairo_vm::program_hash::compute_program_hash_chain; +use cairo_vm::types::builtin_name::BuiltinName; +use cairo_vm::types::relocatable::MaybeRelocatable; +use cairo_vm::vm::runners::cairo_pie::CairoPie; +use cairo_vm::Felt252; +use starknet::core::types::Felt; + +// use starknet::core::types::FieldElement; +use super::error::FactError; +use super::fact_node::generate_merkle_root; +use super::fact_topology::{get_fact_topology, FactTopology}; + +/// Default bootloader program version. +/// +/// https://github.com/starkware-libs/cairo-lang/blob/efa9648f57568aad8f8a13fbf027d2de7c63c2c0/src/starkware/cairo/bootloaders/hash_program.py#L11 +pub const BOOTLOADER_VERSION: usize = 0; + +pub struct FactInfo { + pub program_output: Vec, + pub fact_topology: FactTopology, + pub fact: B256, +} + +pub fn get_fact_info(cairo_pie: &CairoPie, program_hash: Option) -> Result { + tracing::debug!( + log_type = "FactInfo", + category = "fact_info", + function_type = "get_fact_info", + "Starting get_fact_info function" + ); + + tracing::debug!( + log_type = "FactInfo", + category = "fact_info", + function_type = "get_fact_info", + "Getting program output" + ); + let program_output = get_program_output(cairo_pie)?; + tracing::debug!( + log_type = "FactInfo", + category = "fact_info", + function_type = "get_fact_info", + "Program output length: {}", + program_output.len() + ); + + tracing::debug!( + log_type = "FactInfo", + category = "fact_info", + function_type = "get_fact_info", + "Getting fact topology" + ); + let fact_topology = get_fact_topology(cairo_pie, program_output.len())?; + + let program_hash = match program_hash { + Some(hash) => { + tracing::debug!( + log_type = "FactInfo", + category = "fact_info", + function_type = "get_fact_info", + "Using provided program hash" + ); + hash + } + None => { + tracing::debug!( + log_type = "FactInfo", + category = "fact_info", + function_type = "get_fact_info", + "Computing program hash" + ); + Felt::from_bytes_be( + &compute_program_hash_chain(&cairo_pie.metadata.program, BOOTLOADER_VERSION) + .map_err(|e| { + tracing::error!( + log_type = "FactInfo", + category = "fact_info", + function_type = "get_fact_info", + "Failed to compute program hash: {}", + e + ); + FactError::ProgramHashCompute(e.to_string()) + })? + .to_bytes_be(), + ) + } + }; + tracing::trace!( + log_type = "FactInfo", + category = "fact_info", + function_type = "get_fact_info", + "Program hash: {:?} and now generating merkle root", + program_hash + ); + let output_root = generate_merkle_root(&program_output, &fact_topology)?; + let fact = keccak256([program_hash.to_bytes_be(), *output_root.node_hash].concat()); + tracing::debug!( + log_type = "FactInfo", + category = "fact_info", + function_type = "get_fact_info", + "Fact computed successfully: {:?}", + fact + ); + + Ok(FactInfo { program_output, fact_topology, fact }) +} + +pub fn get_program_output(cairo_pie: &CairoPie) -> Result, FactError> { + let segment_info = + cairo_pie.metadata.builtin_segments.get(&BuiltinName::output).ok_or(FactError::OutputBuiltinNoSegmentInfo)?; + + let mut output = vec![Felt252::from(0); segment_info.size]; + let mut insertion_count = 0; + let cairo_program_memory = &cairo_pie.memory.0; + + for ((index, offset), value) in cairo_program_memory.iter() { + if *index == segment_info.index as usize { + match value { + MaybeRelocatable::Int(felt) => { + output[*offset] = *felt; + insertion_count += 1; + } + MaybeRelocatable::RelocatableValue(_) => { + return Err(FactError::OutputSegmentUnexpectedRelocatable(*offset)); + } + } + } + } + + if insertion_count != segment_info.size { + return Err(FactError::InvalidSegment); + } + + Ok(output) +} + +#[cfg(test)] +mod tests { + use std::path::PathBuf; + + use cairo_vm::vm::runners::cairo_pie::CairoPie; + use rstest::rstest; + + use super::get_fact_info; + + #[rstest] + #[case("fibonacci.zip", "0xca15503f02f8406b599cb220879e842394f5cf2cef753f3ee430647b5981b782")] + #[case("238996-SN.zip", "0xec8fa9cdfe069ed59b8f17aeecfd95c6abd616379269d2fa16a80955b6e0f068")] + async fn test_fact_info(#[case] cairo_pie_path: &str, #[case] expected_fact: &str) { + dotenvy::from_filename("../.env.test").expect("Failed to load the .env.test file"); + let cairo_pie_path: PathBuf = + [env!("CARGO_MANIFEST_DIR"), "src", "tests", "artifacts", cairo_pie_path].iter().collect(); + let cairo_pie = CairoPie::read_zip_file(&cairo_pie_path).unwrap(); + let fact_info = get_fact_info(&cairo_pie, None).unwrap(); + assert_eq!(expected_fact, fact_info.fact.to_string()); + } +} diff --git a/orchestrator/crates/orchestrator/src/jobs/snos_job/fact_node.rs b/orchestrator/crates/orchestrator/src/jobs/snos_job/fact_node.rs new file mode 100644 index 000000000..55792ce54 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/snos_job/fact_node.rs @@ -0,0 +1,213 @@ +//! Fact node structure and helpers. +//! +//! The fact of each task is stored as a (non-binary) Merkle tree. +//! Leaf nodes are labeled with the hash of their data. +//! Each non-leaf node is labeled as 1 + the hash of (node0, end0, node1, end1, ...) +//! where node* is a label of a child children and end* is the total number of data words up to +//! and including that node and its children (including the previous sibling nodes). +//! We add 1 to the result of the hash to prevent an attacker from using a preimage of a leaf node +//! as a preimage of a non-leaf hash and vice versa. +//! +//! The structure of the tree is passed as a list of pairs (n_pages, n_nodes), and the tree is +//! constructed using a stack of nodes (initialized to an empty stack) by repeating for each pair: +//! 1. Add #n_pages lead nodes to the stack. +//! 2. Pop the top #n_nodes, construct a parent node for them, and push it back to the stack. +//! After applying the steps above, the stack must contain exactly one node, which will +//! constitute the root of the Merkle tree. +//! +//! For example, [(2, 2)] will create a Merkle tree with a root and two direct children, while +//! [(3, 2), (0, 2)] will create a Merkle tree with a root whose left child is a leaf and +//! right child has two leaf children. +//! +//! Port of https://github.com/starkware-libs/cairo-lang/blob/master/src/starkware/cairo/bootloaders/compute_fact.py + +use std::ops::Add; + +use alloy::primitives::{keccak256, B256}; +use cairo_vm::Felt252; +use itertools::Itertools; +use num_bigint::BigUint; +use utils::ensure; + +use super::error::FactError; +use super::fact_topology::FactTopology; + +/// Node of the fact tree +#[derive(Debug, Clone)] +pub struct FactNode { + /// Page hash (leaf) or 1 + keccak{children} (non-leaf) + pub node_hash: B256, + /// Total number of data words up to that node (including it and its children) + pub end_offset: usize, + /// Page size + pub page_size: usize, + /// Child nodes + pub children: Vec, +} + +/// Generates the root of the output Merkle tree for the program fact computation. +/// +/// Basically it transforms the flat fact topology into a non-binary Merkle tree and then computes +/// its root, enriching the nodes with metadata such as page sizes and hashes. +pub fn generate_merkle_root(program_output: &[Felt252], fact_topology: &FactTopology) -> Result { + tracing::info!( + log_type = "FactNode", + category = "generate_merkle_root", + function_type = "generate_merkle_root", + "Starting generate_merkle_root function" + ); + let FactTopology { tree_structure, mut page_sizes } = fact_topology.clone(); + + let mut end_offset: usize = 0; + let mut node_stack: Vec = Vec::with_capacity(page_sizes.len()); + let mut output_iter = program_output.iter(); + + tracing::debug!( + log_type = "FactNode", + category = "generate_merkle_root", + function_type = "generate_merkle_root", + "Processing tree structure: {:?}", + tree_structure.len() + ); + for (n_pages, n_nodes) in tree_structure.into_iter().tuples() { + tracing::trace!( + log_type = "FactNode", + category = "generate_merkle_root", + function_type = "generate_merkle_root", + "(n_pages: {}, n_nodes: {})", + n_pages, + n_nodes + ); + ensure!(n_pages <= page_sizes.len(), FactError::TreeStructurePagesCountOutOfRange(n_pages, page_sizes.len())); + + // Push n_pages (leaves) to the stack + for _ in 0..n_pages { + let page_size = page_sizes.remove(0); + tracing::trace!( + log_type = "FactNode", + category = "generate_merkle_root", + function_type = "generate_merkle_root", + "Processing page with size: {}", + page_size + ); + // Page size is already validated upon retrieving the topology + let page = output_iter.by_ref().take(page_size).map(|felt| felt.to_bytes_be().to_vec()).concat(); + let node_hash = keccak256(&page); + end_offset += page_size; + // Add lead node (no children) + node_stack.push(FactNode { node_hash, end_offset, page_size, children: vec![] }); + tracing::debug!( + log_type = "FactNode", + category = "generate_merkle_root", + function_type = "generate_merkle_root", + "Added leaf node with hash: {:?}", + node_hash.to_string() + ); + } + + ensure!(n_nodes <= node_stack.len(), FactError::TreeStructureNodesCountOutOfRange(n_nodes, node_stack.len())); + + if n_nodes > 0 { + tracing::trace!( + log_type = "FactNode", + category = "generate_merkle_root", + function_type = "generate_merkle_root", + "Creating parent node for {} children", + n_nodes + ); + // Create a parent node to the last n_nodes in the head of the stack. + let children: Vec = node_stack.drain(node_stack.len() - n_nodes..).collect(); + let mut node_data = Vec::with_capacity(2 * 32 * children.len()); + let mut total_page_size = 0; + let mut child_end_offset = 0; + + for node in children.iter() { + node_data.extend_from_slice(node.node_hash.as_slice()); + node_data.extend_from_slice(&[0; 32 - (usize::BITS / 8) as usize]); // pad usize to 32 bytes + node_data.extend_from_slice(&node.end_offset.to_be_bytes()); + total_page_size += node.page_size; + child_end_offset = node.end_offset; + } + + let parent_node = FactNode { + node_hash: calculate_node_hash(node_data.as_slice()), + end_offset: child_end_offset, + page_size: total_page_size, + children, + }; + node_stack.push(parent_node.clone()); + tracing::debug!( + log_type = "FactNode", + category = "generate_merkle_root", + function_type = "generate_merkle_root", + "Added parent node with hash: {:?}", + parent_node.node_hash + ); + } + } + + ensure!(node_stack.len() == 1, FactError::TreeStructureRootInvalid); + ensure!(page_sizes.is_empty(), FactError::TreeStructurePagesNotProcessed(page_sizes.len())); + ensure!( + end_offset == program_output.len(), + FactError::TreeStructureEndOffsetInvalid(end_offset, program_output.len()) + ); + ensure!( + node_stack[0].end_offset == program_output.len(), + FactError::TreeStructureRootOffsetInvalid(node_stack[0].end_offset, program_output.len(),) + ); + + let root = node_stack.remove(0); + tracing::info!( + log_type = "FactNode", + category = "generate_merkle_root", + function_type = "generate_merkle_root", + "Successfully generated Merkle root with hash: {:?}", + root.node_hash + ); + Ok(root) +} + +/// Calculates the keccak hash and adds 1 to it. +fn calculate_node_hash(node_data: &[u8]) -> B256 { + let hash = keccak256(node_data); + let hash_biguint = BigUint::from_bytes_be(hash.as_slice()); + let incremented_hash = hash_biguint.add(BigUint::from(1u8)); + let mut hash_bytes = incremented_hash.to_bytes_be(); + let mut padded_bytes = vec![0; 32 - hash_bytes.len()]; + padded_bytes.append(&mut hash_bytes); + B256::from_slice(&padded_bytes[..32]) +} + +#[cfg(test)] +mod test { + use std::str::FromStr; + + use alloy::primitives::B256; + use cairo_vm::Felt252; + + use crate::jobs::snos_job::fact_node::generate_merkle_root; + use crate::jobs::snos_job::fact_topology::FactTopology; + + /// Here we are comparing our output with the same function run in the + /// `generate_output_root` function in cairo-lang repo. + /// We are comparing the output hash of the `generate_merkle_root` function + /// with our python output. + /// + /// Function link : https://github.com/starkware-libs/cairo-lang/blob/a86e92bfde9c171c0856d7b46580c66e004922f3/src/starkware/cairo/bootloaders/compute_fact.py#L47 + /// + /// This will ensure that our logic here is correct. + #[test] + fn test_generate_merkle_root() { + let program_output_vec: Vec = (1..=12).map(|i| i.into()).collect(); + + let fact_topology = + FactTopology { tree_structure: vec![1, 0, 1, 0, 0, 2, 1, 1, 0, 2], page_sizes: vec![4, 4, 4] }; + + let merkle_root = generate_merkle_root(program_output_vec.as_slice(), &fact_topology).unwrap().node_hash; + let python_program_output = + B256::from_str("0x17F41BA1DB11E3A164B23B72B52190FB0DA6184B4B80CF74E0882FDE7438E47F").unwrap(); + + assert_eq!(merkle_root, python_program_output); + } +} diff --git a/orchestrator/crates/orchestrator/src/jobs/snos_job/fact_topology.rs b/orchestrator/crates/orchestrator/src/jobs/snos_job/fact_topology.rs new file mode 100644 index 000000000..e56a9d8c5 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/snos_job/fact_topology.rs @@ -0,0 +1,135 @@ +//! Fact topology type and helpers. +//! +//! Ported from https://github.com/starkware-libs/cairo-lang/blob/master/src/starkware/cairo/bootloaders/fact_topology.py + +use std::collections::HashMap; + +use cairo_vm::types::builtin_name::BuiltinName; +use cairo_vm::vm::runners::cairo_pie::{BuiltinAdditionalData, CairoPie, PublicMemoryPage}; +use utils::ensure; + +use super::error::FactError; + +pub const GPS_FACT_TOPOLOGY: &str = "gps_fact_topology"; + +/// Flattened fact tree +#[derive(Debug, Clone)] +pub struct FactTopology { + /// List of pairs (n_pages, n_nodes) + pub tree_structure: Vec, + /// Page sizes (pages are leaf nodes) + pub page_sizes: Vec, +} + +/// Returns the fact topology from the additional data of the output builtin. +pub fn get_fact_topology(cairo_pie: &CairoPie, output_size: usize) -> Result { + tracing::debug!( + log_type = "FactTopology", + category = "get_fact_topology", + function_type = "get_fact_topology", + "Starting get_fact_topology function" + ); + if let Some(BuiltinAdditionalData::Output(additional_data)) = cairo_pie.additional_data.0.get(&BuiltinName::output) + { + tracing::trace!("Found Output additional data"); + let tree_structure = match additional_data.attributes.get(GPS_FACT_TOPOLOGY) { + Some(tree_structure) => { + tracing::debug!("GPS_FACT_TOPOLOGY found in additional data attributes"); + ensure!(!tree_structure.is_empty(), FactError::TreeStructureEmpty); + ensure!(tree_structure.len() % 2 == 0, FactError::TreeStructureLenOdd); + ensure!(tree_structure.len() <= 10, FactError::TreeStructureTooLarge); + ensure!(tree_structure.iter().all(|&x| x < 2 << 30), FactError::TreeStructureInvalid); + tracing::trace!("Tree structure validation passed"); + tree_structure.clone() + } + None => { + tracing::warn!("GPS_FACT_TOPOLOGY not found in additional data attributes"); + ensure!(additional_data.pages.is_empty(), FactError::OutputPagesLenUnexpected); + tracing::debug!("Using default tree structure"); + vec![1, 0] + } + }; + tracing::debug!("Retrieving page sizes"); + let page_sizes = get_page_sizes(&additional_data.pages, output_size)?; + tracing::debug!( + log_type = "FactTopology", + category = "get_fact_topology", + function_type = "get_fact_topology", + "FactTopology successfully created" + ); + Ok(FactTopology { tree_structure, page_sizes }) + } else { + tracing::error!("Failed to get Output additional data"); + Err(FactError::OutputBuiltinNoAdditionalData) + } +} + +/// Returns the sizes of the program output pages, given the pages dictionary that appears +/// in the additional attributes of the output builtin. +pub fn get_page_sizes(pages: &HashMap, output_size: usize) -> Result, FactError> { + tracing::debug!( + log_type = "FactTopology", + category = "get_page_sizes", + function_type = "get_page_sizes", + "Starting get_page_sizes function" + ); + let mut pages_list: Vec<(usize, usize, usize)> = + pages.iter().map(|(&id, page)| (id, page.start, page.size)).collect(); + pages_list.sort(); + tracing::debug!("FactTopology Sorted pages list: {:?}", pages_list); + + // The first page id is expected to be 1. + let mut expected_page_id = 1; + // We don't expect anything on its start value. + let mut expected_page_start = None; + + let mut page_sizes = Vec::with_capacity(pages_list.len() + 1); + // The size of page 0 is output_size if there are no other pages, or the start of page 1 otherwise. + page_sizes.push(output_size); + tracing::debug!("FactTopology Initialized page_sizes with output_size: {}", output_size); + + for (page_id, page_start, page_size) in pages_list { + tracing::debug!("FactTopology Processing page: id={}, start={}, size={}", page_id, page_start, page_size); + ensure!(page_id == expected_page_id, FactError::OutputPagesUnexpectedId(page_id, expected_page_id)); + + if page_id == 1 { + tracing::trace!("FactTopology Processing first page"); + ensure!( + page_start > 0 && page_start < output_size, + FactError::OutputPagesInvalidStart(page_id, page_start, output_size) + ); + page_sizes[0] = page_start; + tracing::debug!("FactTopology Updated page_sizes[0] to {}", page_start); + } else { + tracing::trace!("FactTopology Processing non-first page"); + ensure!( + Some(page_start) == expected_page_start, + FactError::OutputPagesUnexpectedStart(page_id, page_start, expected_page_start.unwrap_or_default(),) /* The unwrap here is fine as the assert is exactly for this reason */ + ); + } + + ensure!( + page_size > 0 && page_size < output_size, + FactError::OutputPagesInvalidSize(page_id, page_size, output_size) + ); + expected_page_start = Some(page_start + page_size); + expected_page_id += 1; + + page_sizes.push(page_size); + tracing::trace!("FactTopology Added page_size {} to page_sizes", page_size); + } + + tracing::debug!("FactTopology Final page_sizes: {:?}", page_sizes); + + ensure!( + pages.is_empty() || expected_page_start == Some(output_size), + FactError::OutputPagesUncoveredOutput(expected_page_start.unwrap_or_default(), output_size) /* The unwrap here is fine as the assert is exactly for this reason */ + ); + + tracing::debug!( + log_type = "FactTopology", + category = "get_page_sizes", + "FactTopology Successfully generated page sizes" + ); + Ok(page_sizes) +} diff --git a/orchestrator/crates/orchestrator/src/jobs/snos_job/mod.rs b/orchestrator/crates/orchestrator/src/jobs/snos_job/mod.rs new file mode 100644 index 000000000..70c12842d --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/snos_job/mod.rs @@ -0,0 +1,227 @@ +use std::collections::HashMap; +use std::io::Read; +use std::sync::Arc; + +use async_trait::async_trait; +use bytes::Bytes; +use cairo_vm::types::layout_name::LayoutName; +use cairo_vm::vm::runners::cairo_pie::CairoPie; +use cairo_vm::Felt252; +use chrono::{SubsecRound, Utc}; +use color_eyre::Result; +use prove_block::prove_block; +use starknet_os::io::output::StarknetOsOutput; +use tempfile::NamedTempFile; +use thiserror::Error; +use uuid::Uuid; + +use super::constants::{JOB_METADATA_SNOS_BLOCK, JOB_METADATA_SNOS_FACT}; +use super::{JobError, OtherError}; +use crate::config::Config; +use crate::constants::{CAIRO_PIE_FILE_NAME, PROGRAM_OUTPUT_FILE_NAME, SNOS_OUTPUT_FILE_NAME}; +use crate::data_storage::DataStorage; +use crate::jobs::snos_job::error::FactError; +use crate::jobs::snos_job::fact_info::get_fact_info; +use crate::jobs::types::{JobItem, JobStatus, JobType, JobVerificationStatus}; +use crate::jobs::Job; + +pub mod error; +pub mod fact_info; +pub mod fact_node; +pub mod fact_topology; + +pub const COMPILED_OS: &[u8] = include_bytes!("../../../../../../build/os_latest.json"); + +#[derive(Error, Debug, PartialEq)] +pub enum SnosError { + #[error("Block numbers to run must be specified (snos job #{internal_id:?})")] + UnspecifiedBlockNumber { internal_id: String }, + #[error("No block numbers found (snos job #{internal_id:?})")] + BlockNumberNotFound { internal_id: String }, + #[error("Invalid specified block number \"{block_number:?}\" (snos job #{internal_id:?})")] + InvalidBlockNumber { internal_id: String, block_number: String }, + + #[error("Could not serialize the Cairo Pie (snos job #{internal_id:?}): {message}")] + CairoPieUnserializable { internal_id: String, message: String }, + #[error("Could not store the Cairo Pie (snos job #{internal_id:?}): {message}")] + CairoPieUnstorable { internal_id: String, message: String }, + + #[error("Could not serialize the Snos Output (snos job #{internal_id:?}): {message}")] + SnosOutputUnserializable { internal_id: String, message: String }, + #[error("Could not serialize the Program Output (snos job #{internal_id:?}): {message}")] + ProgramOutputUnserializable { internal_id: String, message: String }, + #[error("Could not store the Snos output (snos job #{internal_id:?}): {message}")] + SnosOutputUnstorable { internal_id: String, message: String }, + #[error("Could not store the Program output (snos job #{internal_id:?}): {message}")] + ProgramOutputUnstorable { internal_id: String, message: String }, + + // ProveBlockError from Snos is not usable with #[from] since it does not implement PartialEq. + // Instead, we convert it to string & pass it into the [SnosExecutionError] error. + #[error("Error while running SNOS (snos job #{internal_id:?}): {message}")] + SnosExecutionError { internal_id: String, message: String }, + + #[error("Error when calculating fact info: {0}")] + FactCalculationError(#[from] FactError), + + #[error("Other error: {0}")] + Other(#[from] OtherError), +} + +pub struct SnosJob; + +#[async_trait] +impl Job for SnosJob { + #[tracing::instrument(fields(category = "snos"), skip(self, _config, metadata), ret, err)] + async fn create_job( + &self, + _config: Arc, + internal_id: String, + metadata: HashMap, + ) -> Result { + tracing::info!(log_type = "starting", category = "snos", function_type = "create_job", block_no = %internal_id, "SNOS job creation started."); + let mut metadata = metadata; + metadata.insert(JOB_METADATA_SNOS_BLOCK.to_string(), internal_id.clone()); + let job_item = JobItem { + id: Uuid::new_v4(), + internal_id: internal_id.clone(), + job_type: JobType::SnosRun, + status: JobStatus::Created, + external_id: String::new().into(), + metadata, + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + }; + tracing::info!(log_type = "completed", category = "snos", function_type = "create_job", block_no = %internal_id, "SNOS job creation completed."); + Ok(job_item) + } + + #[tracing::instrument(fields(category = "snos"), skip(self, config), ret, err)] + async fn process_job(&self, config: Arc, job: &mut JobItem) -> Result { + let internal_id = job.internal_id.clone(); + tracing::info!(log_type = "starting", category = "snos", function_type = "process_job", job_id = ?job.id, block_no = %internal_id, "SNOS job processing started."); + let block_number = self.get_block_number_from_metadata(job)?; + tracing::debug!(job_id = %job.internal_id, block_number = %block_number, "Retrieved block number from metadata"); + + let snos_url = config.snos_config().rpc_for_snos.to_string(); + let snos_url = snos_url.trim_end_matches('/'); + tracing::debug!(job_id = %job.internal_id, "Calling prove_block function"); + let (cairo_pie, snos_output) = + prove_block(COMPILED_OS, block_number, snos_url, LayoutName::all_cairo, false).await.map_err(|e| { + tracing::error!(job_id = %job.internal_id, error = %e, "SNOS execution failed"); + SnosError::SnosExecutionError { internal_id: job.internal_id.clone(), message: e.to_string() } + })?; + tracing::debug!(job_id = %job.internal_id, "prove_block function completed successfully"); + + let fact_info = get_fact_info(&cairo_pie, None)?; + let program_output = fact_info.program_output; + tracing::debug!(job_id = %job.internal_id, "Fact info calculated successfully"); + + tracing::debug!(job_id = %job.internal_id, "Storing SNOS outputs"); + self.store(config.storage(), &job.internal_id, block_number, cairo_pie, snos_output, program_output).await?; + + job.metadata.insert(JOB_METADATA_SNOS_FACT.into(), fact_info.fact.to_string()); + tracing::info!(log_type = "completed", category = "snos", function_type = "process_job", job_id = ?job.id, block_no = %internal_id, "SNOS job processed successfully."); + + Ok(block_number.to_string()) + } + + #[tracing::instrument(fields(category = "snos"), skip(self, _config), ret, err)] + async fn verify_job(&self, _config: Arc, job: &mut JobItem) -> Result { + let internal_id = job.internal_id.clone(); + tracing::info!(log_type = "starting", category = "snos", function_type = "verify_job", job_id = %job.id, block_no = %internal_id, "SNOS job verification started."); + // No need for verification as of now. If we later on decide to outsource SNOS run + // to another service, verify_job can be used to poll on the status of the job + tracing::info!(log_type = "completed", category = "snos", function_type = "verify_job", job_id = %job.id, block_no = %internal_id, "SNOS job verification completed."); + Ok(JobVerificationStatus::Verified) + } + + fn max_process_attempts(&self) -> u64 { + 1 + } + + fn max_verification_attempts(&self) -> u64 { + 1 + } + + fn verification_polling_delay_seconds(&self) -> u64 { + 1 + } +} + +impl SnosJob { + /// Get the block number that needs to be run with SNOS for the current + /// job. + fn get_block_number_from_metadata(&self, job: &JobItem) -> Result { + let block_number: u64 = job + .metadata + .get(JOB_METADATA_SNOS_BLOCK) + .ok_or(SnosError::UnspecifiedBlockNumber { internal_id: job.internal_id.clone() })? + .parse() + .map_err(|_| SnosError::InvalidBlockNumber { + internal_id: job.internal_id.clone(), + block_number: job.metadata[JOB_METADATA_SNOS_BLOCK].clone(), + })?; + + Ok(block_number) + } + + /// Stores the [CairoPie] and the [StarknetOsOutput] in the Data Storage. + /// The paths will be: + /// - [block_number]/cairo_pie.zip + /// - [block_number]/snos_output.json + async fn store( + &self, + data_storage: &dyn DataStorage, + internal_id: &str, + block_number: u64, + cairo_pie: CairoPie, + snos_output: StarknetOsOutput, + program_output: Vec, + ) -> Result<(), SnosError> { + let cairo_pie_key = format!("{block_number}/{CAIRO_PIE_FILE_NAME}"); + let cairo_pie_zip_bytes = self.cairo_pie_to_zip_bytes(cairo_pie).await.map_err(|e| { + SnosError::CairoPieUnserializable { internal_id: internal_id.to_string(), message: e.to_string() } + })?; + data_storage.put_data(cairo_pie_zip_bytes, &cairo_pie_key).await.map_err(|e| { + SnosError::CairoPieUnstorable { internal_id: internal_id.to_string(), message: e.to_string() } + })?; + + let snos_output_key = format!("{block_number}/{SNOS_OUTPUT_FILE_NAME}"); + let snos_output_json = serde_json::to_vec(&snos_output).map_err(|e| SnosError::SnosOutputUnserializable { + internal_id: internal_id.to_string(), + message: e.to_string(), + })?; + data_storage.put_data(snos_output_json.into(), &snos_output_key).await.map_err(|e| { + SnosError::SnosOutputUnstorable { internal_id: internal_id.to_string(), message: e.to_string() } + })?; + + let program_output: Vec<[u8; 32]> = program_output.iter().map(|f| f.to_bytes_be()).collect(); + let encoded_data = bincode::serialize(&program_output).map_err(|e| SnosError::ProgramOutputUnserializable { + internal_id: internal_id.to_string(), + message: e.to_string(), + })?; + let program_output_key = format!("{block_number}/{PROGRAM_OUTPUT_FILE_NAME}"); + data_storage.put_data(encoded_data.into(), &program_output_key).await.map_err(|e| { + SnosError::ProgramOutputUnstorable { internal_id: internal_id.to_string(), message: e.to_string() } + })?; + + Ok(()) + } + + /// Converts the [CairoPie] input as a zip file and returns it as [Bytes]. + async fn cairo_pie_to_zip_bytes(&self, cairo_pie: CairoPie) -> Result { + let mut cairo_pie_zipfile = NamedTempFile::new()?; + cairo_pie.write_zip_file(cairo_pie_zipfile.path())?; + let cairo_pie_zip_bytes = self.tempfile_to_bytes(&mut cairo_pie_zipfile)?; + cairo_pie_zipfile.close()?; + Ok(cairo_pie_zip_bytes) + } + + /// Converts a [NamedTempFile] to [Bytes]. + fn tempfile_to_bytes(&self, tmp_file: &mut NamedTempFile) -> Result { + let mut buffer = Vec::new(); + tmp_file.as_file_mut().read_to_end(&mut buffer)?; + Ok(Bytes::from(buffer)) + } +} diff --git a/orchestrator/crates/orchestrator/src/jobs/state_update_job/mod.rs b/orchestrator/crates/orchestrator/src/jobs/state_update_job/mod.rs new file mode 100644 index 000000000..0856670e8 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/state_update_job/mod.rs @@ -0,0 +1,371 @@ +pub mod utils; + +use std::collections::HashMap; +use std::sync::Arc; + +use ::utils::collections::{has_dup, is_sorted}; +use async_trait::async_trait; +use cairo_vm::Felt252; +use chrono::{SubsecRound, Utc}; +use color_eyre::eyre::eyre; +use settlement_client_interface::SettlementVerificationStatus; +use starknet_os::io::output::StarknetOsOutput; +use thiserror::Error; +use uuid::Uuid; + +use super::constants::{ + JOB_METADATA_STATE_UPDATE_ATTEMPT_PREFIX, JOB_METADATA_STATE_UPDATE_LAST_FAILED_BLOCK_NO, + JOB_PROCESS_ATTEMPT_METADATA_KEY, +}; +use super::{JobError, OtherError}; +use crate::config::Config; +use crate::constants::{PROGRAM_OUTPUT_FILE_NAME, SNOS_OUTPUT_FILE_NAME}; +use crate::jobs::constants::JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY; +use crate::jobs::state_update_job::utils::fetch_blob_data_for_block; +use crate::jobs::types::{JobItem, JobStatus, JobType, JobVerificationStatus}; +use crate::jobs::Job; + +#[derive(Error, Debug, PartialEq)] +pub enum StateUpdateError { + #[error("Block numbers list should not be empty.")] + EmptyBlockNumberList, + + #[error("Could not find current attempt number.")] + AttemptNumberNotFound, + + #[error("last_failed_block should be a positive number")] + LastFailedBlockNonPositive, + + #[error("Block numbers to settle must be specified (state update job #{internal_id:?})")] + UnspecifiedBlockNumber { internal_id: String }, + + #[error("Could not find tx hashes metadata for the current attempt")] + TxnHashMetadataNotFound, + + #[error("Tx {tx_hash:?} should not be pending.")] + TxnShouldNotBePending { tx_hash: String }, + + #[error( + "Last number in block_numbers array returned as None. Possible Error : Delay in job processing or Failed job \ + execution." + )] + LastNumberReturnedError, + + #[error("No block numbers found.")] + BlockNumberNotFound, + + #[error("Duplicated block numbers.")] + DuplicateBlockNumbers, + + #[error("Block numbers aren't sorted in increasing order.")] + UnsortedBlockNumbers, + + #[error("Gap detected between the first block to settle and the last one settled.")] + GapBetweenFirstAndLastBlock, + + #[error("Block #{block_no:?} - SNOS error, [use_kzg_da] should be either 0 or 1.")] + UseKZGDaError { block_no: u64 }, + + #[error("Other error: {0}")] + Other(#[from] OtherError), +} + +pub struct StateUpdateJob; +#[async_trait] +impl Job for StateUpdateJob { + #[tracing::instrument(fields(category = "state_update"), skip(self, _config, metadata), ret, err)] + async fn create_job( + &self, + _config: Arc, + internal_id: String, + metadata: HashMap, + ) -> Result { + tracing::info!(log_type = "starting", category = "state_update", function_type = "create_job", block_no = %internal_id, "State update job creation started."); + // Inserting the metadata (If it doesn't exist) + let mut metadata = metadata.clone(); + if !metadata.contains_key(JOB_PROCESS_ATTEMPT_METADATA_KEY) { + tracing::debug!(job_id = %internal_id, "Inserting initial process attempt metadata"); + metadata.insert(JOB_PROCESS_ATTEMPT_METADATA_KEY.to_string(), "0".to_string()); + } + + let job_item = JobItem { + id: Uuid::new_v4(), + internal_id: internal_id.clone(), + job_type: JobType::StateTransition, + status: JobStatus::Created, + external_id: String::new().into(), + // metadata must contain the blocks for which state update will be performed + // we don't do one job per state update as that makes nonce management complicated + metadata, + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + }; + tracing::info!(log_type = "completed", category = "state_update", function_type = "create_job", block_no = %internal_id, "State update job created."); + Ok(job_item) + } + + #[tracing::instrument(fields(category = "state_update"), skip(self, config), ret, err)] + async fn process_job(&self, config: Arc, job: &mut JobItem) -> Result { + let internal_id = job.internal_id.clone(); + tracing::info!(log_type = "starting", category = "state_update", function_type = "process_job", job_id = %job.id, block_no = %internal_id, "State update job processing started."); + let attempt_no = job + .metadata + .get(JOB_PROCESS_ATTEMPT_METADATA_KEY) + .ok_or_else(|| StateUpdateError::AttemptNumberNotFound)? + .clone(); + + // Read the metadata to get the blocks for which state update will be performed. + // We assume that blocks nbrs are formatted as follow: "2,3,4,5,6". + let mut block_numbers = self.get_block_numbers_from_metadata(job)?; + self.validate_block_numbers(config.clone(), &block_numbers).await?; + + if let Some(last_failed_block) = job.metadata.get(JOB_METADATA_STATE_UPDATE_LAST_FAILED_BLOCK_NO) { + let last_failed_block = + last_failed_block.parse().map_err(|_| StateUpdateError::LastFailedBlockNonPositive)?; + block_numbers = block_numbers.into_iter().filter(|&block| block >= last_failed_block).collect::>(); + } + + let mut nonce = config.settlement_client().get_nonce().await.map_err(|e| JobError::Other(OtherError(e)))?; + let mut sent_tx_hashes: Vec = Vec::with_capacity(block_numbers.len()); + for block_no in block_numbers.iter() { + tracing::debug!(job_id = %job.internal_id, block_no = %block_no, "Processing block"); + + let snos = self.fetch_snos_for_block(*block_no, config.clone()).await?; + let txn_hash = self + .update_state_for_block(config.clone(), *block_no, snos, nonce) + .await + .map_err(|e| { + tracing::error!(job_id = %job.internal_id, block_no = %block_no, error = %e, "Error updating state for block"); + job.metadata.insert(JOB_METADATA_STATE_UPDATE_LAST_FAILED_BLOCK_NO.into(), block_no.to_string()); + self.insert_attempts_into_metadata(job, &attempt_no, &sent_tx_hashes); + OtherError(eyre!("Block #{block_no} - Error occurred during the state update: {e}")); + }) + .unwrap(); + sent_tx_hashes.push(txn_hash); + nonce += 1; + } + + self.insert_attempts_into_metadata(job, &attempt_no, &sent_tx_hashes); + + let val = block_numbers.last().ok_or_else(|| StateUpdateError::LastNumberReturnedError)?; + tracing::info!(log_type = "completed", category = "state_update", function_type = "process_job", job_id = %job.id, block_no = %internal_id, last_settled_block = %val, "State update job processed successfully."); + + Ok(val.to_string()) + } + + /// Returns the status of the passed job. + /// Status will be verified if: + /// 1. the last settlement tx hash is successful, + /// 2. the expected last settled block from our configuration is indeed the one found in the + /// provider. + #[tracing::instrument(fields(category = "state_update"), skip(self, config), ret, err)] + async fn verify_job(&self, config: Arc, job: &mut JobItem) -> Result { + let internal_id = job.internal_id.clone(); + tracing::info!(log_type = "starting", category = "state_update", function_type = "verify_job", job_id = %job.id, block_no = %internal_id, "State update job verification started."); + let attempt_no = job + .metadata + .get(JOB_PROCESS_ATTEMPT_METADATA_KEY) + .ok_or_else(|| StateUpdateError::AttemptNumberNotFound)?; + tracing::debug!(job_id = %job.internal_id, attempt_no = %attempt_no, "Retrieved attempt number"); + + // We are doing attempt_no - 1 because the attempt number is increased in the + // global process job function and the transaction hash is stored with attempt + // number : 0 + let metadata_tx_hashes = job + .metadata + .get(&format!( + "{}{}", + JOB_METADATA_STATE_UPDATE_ATTEMPT_PREFIX, + attempt_no.parse::().map_err(|e| JobError::Other(OtherError(eyre!(e))))? - 1 + )) + .ok_or_else(|| StateUpdateError::TxnHashMetadataNotFound)? + .clone() + .replace(' ', ""); + + let tx_hashes: Vec<&str> = metadata_tx_hashes.split(',').collect(); + let block_numbers = self.get_block_numbers_from_metadata(job)?; + tracing::debug!(job_id = %job.internal_id, "Retrieved block numbers from metadata"); + let settlement_client = config.settlement_client(); + + for (tx_hash, block_no) in tx_hashes.iter().zip(block_numbers.iter()) { + tracing::trace!(job_id = %job.internal_id, tx_hash = %tx_hash, block_no = %block_no, "Verifying transaction inclusion"); + let tx_inclusion_status = + settlement_client.verify_tx_inclusion(tx_hash).await.map_err(|e| JobError::Other(OtherError(e)))?; + match tx_inclusion_status { + SettlementVerificationStatus::Rejected(_) => { + tracing::warn!(job_id = %job.internal_id, tx_hash = %tx_hash, block_no = %block_no, "Transaction rejected"); + job.metadata.insert(JOB_METADATA_STATE_UPDATE_LAST_FAILED_BLOCK_NO.into(), block_no.to_string()); + return Ok(tx_inclusion_status.into()); + } + // If the tx is still pending, we wait for it to be finalized and check again the status. + SettlementVerificationStatus::Pending => { + tracing::debug!(job_id = %job.internal_id, tx_hash = %tx_hash, "Transaction pending, waiting for finality"); + settlement_client + .wait_for_tx_finality(tx_hash) + .await + .map_err(|e| JobError::Other(OtherError(e)))?; + let new_status = settlement_client + .verify_tx_inclusion(tx_hash) + .await + .map_err(|e| JobError::Other(OtherError(e)))?; + match new_status { + SettlementVerificationStatus::Rejected(_) => { + tracing::warn!(job_id = %job.internal_id, tx_hash = %tx_hash, block_no = %block_no, "Transaction rejected after finality"); + job.metadata + .insert(JOB_METADATA_STATE_UPDATE_LAST_FAILED_BLOCK_NO.into(), block_no.to_string()); + return Ok(new_status.into()); + } + SettlementVerificationStatus::Pending => { + tracing::error!(job_id = %job.internal_id, tx_hash = %tx_hash, "Transaction still pending after finality check"); + Err(StateUpdateError::TxnShouldNotBePending { tx_hash: tx_hash.to_string() })? + } + SettlementVerificationStatus::Verified => { + tracing::debug!(job_id = %job.internal_id, tx_hash = %tx_hash, "Transaction verified after finality"); + } + } + } + SettlementVerificationStatus::Verified => { + tracing::debug!(job_id = %job.internal_id, tx_hash = %tx_hash, "Transaction verified"); + } + } + } + // verify that the last settled block is indeed the one we expect to be + let expected_last_block_number = block_numbers.last().ok_or_else(|| StateUpdateError::EmptyBlockNumberList)?; + + let out_last_block_number = + settlement_client.get_last_settled_block().await.map_err(|e| JobError::Other(OtherError(e)))?; + let block_status = if out_last_block_number == *expected_last_block_number { + tracing::info!(log_type = "completed", category = "state_update", function_type = "verify_job", job_id = %job.id, block_no = %internal_id, last_settled_block = %out_last_block_number, "Last settled block verified."); + SettlementVerificationStatus::Verified + } else { + tracing::warn!(log_type = "failed/rejected", category = "state_update", function_type = "verify_job", job_id = %job.id, block_no = %internal_id, expected = %expected_last_block_number, actual = %out_last_block_number, "Last settled block mismatch."); + SettlementVerificationStatus::Rejected(format!( + "Last settle bock expected was {} but found {}", + expected_last_block_number, out_last_block_number + )) + }; + Ok(block_status.into()) + } + + fn max_process_attempts(&self) -> u64 { + 1 + } + + fn max_verification_attempts(&self) -> u64 { + 10 + } + + fn verification_polling_delay_seconds(&self) -> u64 { + 60 + } +} + +impl StateUpdateJob { + /// Read the metadata and parse the block numbers + fn get_block_numbers_from_metadata(&self, job: &JobItem) -> Result, JobError> { + let blocks_to_settle = job + .metadata + .get(JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY) + .ok_or_else(|| StateUpdateError::UnspecifiedBlockNumber { internal_id: job.internal_id.clone() })?; + + self.parse_block_numbers(blocks_to_settle) + } + + /// Parse a list of blocks comma separated + fn parse_block_numbers(&self, blocks_to_settle: &str) -> Result, JobError> { + let sanitized_blocks = blocks_to_settle.replace(' ', ""); + let block_numbers: Vec = sanitized_blocks + .split(',') + .map(|block_no| block_no.parse::()) + .collect::, _>>() + .map_err(|e| eyre!("Block numbers to settle list is not correctly formatted: {e}")) + .map_err(|e| JobError::Other(OtherError(e)))?; + Ok(block_numbers) + } + + /// Validate that the list of block numbers to process is valid. + async fn validate_block_numbers(&self, config: Arc, block_numbers: &[u64]) -> Result<(), JobError> { + if block_numbers.is_empty() { + Err(StateUpdateError::BlockNumberNotFound)?; + } + if has_dup(block_numbers) { + Err(StateUpdateError::DuplicateBlockNumbers)?; + } + if !is_sorted(block_numbers) { + Err(StateUpdateError::UnsortedBlockNumbers)?; + } + // Check for gap between the last settled block and the first block to settle + let last_settled_block: u64 = + config.settlement_client().get_last_settled_block().await.map_err(|e| JobError::Other(OtherError(e)))?; + if last_settled_block + 1 != block_numbers[0] { + Err(StateUpdateError::GapBetweenFirstAndLastBlock)?; + } + Ok(()) + } + + /// Update the state for the corresponding block using the settlement layer. + async fn update_state_for_block( + &self, + config: Arc, + block_no: u64, + snos: StarknetOsOutput, + nonce: u64, + ) -> Result { + let settlement_client = config.settlement_client(); + let last_tx_hash_executed = if snos.use_kzg_da == Felt252::ZERO { + unimplemented!("update_state_for_block not implemented as of now for calldata DA.") + } else if snos.use_kzg_da == Felt252::ONE { + let blob_data = fetch_blob_data_for_block(block_no, config.clone()) + .await + .map_err(|e| JobError::Other(OtherError(e)))?; + + let program_output = self.fetch_program_output_for_block(block_no, config.clone()).await?; + + // TODO : + // Fetching nonce before the transaction is run + // Sending update_state transaction from the settlement client + settlement_client + .update_state_with_blobs(program_output, blob_data, nonce) + .await + .map_err(|e| JobError::Other(OtherError(e)))? + } else { + Err(StateUpdateError::UseKZGDaError { block_no })? + }; + Ok(last_tx_hash_executed) + } + + /// Retrieves the SNOS output for the corresponding block. + async fn fetch_snos_for_block(&self, block_no: u64, config: Arc) -> Result { + let storage_client = config.storage(); + let key = block_no.to_string() + "/" + SNOS_OUTPUT_FILE_NAME; + + let snos_output_bytes = storage_client.get_data(&key).await.map_err(|e| JobError::Other(OtherError(e)))?; + + serde_json::from_slice(snos_output_bytes.iter().as_slice()).map_err(|e| { + JobError::Other(OtherError(eyre!("Failed to deserialize SNOS output for block {}: {}", block_no, e))) + }) + } + + async fn fetch_program_output_for_block( + &self, + block_number: u64, + config: Arc, + ) -> Result, JobError> { + let storage_client = config.storage(); + let key = block_number.to_string() + "/" + PROGRAM_OUTPUT_FILE_NAME; + + let program_output = storage_client.get_data(&key).await.map_err(|e| JobError::Other(OtherError(e)))?; + + bincode::deserialize(&program_output).map_err(|e| { + JobError::Other(OtherError(eyre!("Failed to deserialize program output for block {}: {}", block_number, e))) + }) + } + + /// Insert the tx hashes into the the metadata for the attempt number - will be used later by + /// verify_job to make sure that all tx are successful. + fn insert_attempts_into_metadata(&self, job: &mut JobItem, attempt_no: &str, tx_hashes: &[String]) { + let new_attempt_metadata_key = format!("{}{}", JOB_METADATA_STATE_UPDATE_ATTEMPT_PREFIX, attempt_no); + job.metadata.insert(new_attempt_metadata_key, tx_hashes.join(",")); + } +} diff --git a/orchestrator/crates/orchestrator/src/jobs/state_update_job/utils.rs b/orchestrator/crates/orchestrator/src/jobs/state_update_job/utils.rs new file mode 100644 index 000000000..a6acfe4ee --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/state_update_job/utils.rs @@ -0,0 +1,111 @@ +use std::fmt::Write; +use std::io::{BufRead, Cursor}; +use std::str::FromStr; +use std::sync::Arc; + +use alloy::primitives::U256; +use color_eyre::eyre::eyre; +use num_bigint::BigUint; + +use crate::config::Config; +use crate::constants::{BLOB_DATA_FILE_NAME, PROGRAM_OUTPUT_FILE_NAME}; + +/// Fetching the blob data (stored in remote storage during DA job) for a particular block +pub async fn fetch_blob_data_for_block(block_number: u64, config: Arc) -> color_eyre::Result>> { + let storage_client = config.storage(); + let key = block_number.to_string() + "/" + BLOB_DATA_FILE_NAME; + let blob_data = storage_client.get_data(&key).await?; + Ok(vec![blob_data.to_vec()]) +} + +/// Fetching the blob data (stored in remote storage during DA job) for a particular block +pub async fn fetch_program_data_for_block(block_number: u64, config: Arc) -> color_eyre::Result> { + let storage_client = config.storage(); + let key = block_number.to_string() + "/" + PROGRAM_OUTPUT_FILE_NAME; + let blob_data = storage_client.get_data(&key).await?; + let transformed_blob_vec_u8 = bytes_to_vec_u8(blob_data.as_ref())?; + Ok(transformed_blob_vec_u8) +} + +// Util Functions +// =============== + +/// Util function to convert hex string data into Vec +pub fn hex_string_to_u8_vec(hex_str: &str) -> color_eyre::Result> { + // Remove any spaces or non-hex characters from the input string + let cleaned_str: String = hex_str.chars().filter(|c| c.is_ascii_hexdigit()).collect(); + + // Convert the cleaned hex string to a Vec + let mut result = Vec::new(); + for chunk in cleaned_str.as_bytes().chunks(2) { + if let Ok(byte_val) = u8::from_str_radix(std::str::from_utf8(chunk)?, 16) { + result.push(byte_val); + } else { + return Err(eyre!("Error parsing hex string: {}", cleaned_str)); + } + } + + Ok(result) +} + +pub fn bytes_to_vec_u8(bytes: &[u8]) -> color_eyre::Result> { + let cursor = Cursor::new(bytes); + let reader = std::io::BufReader::new(cursor); + + let mut program_output: Vec<[u8; 32]> = Vec::new(); + + for line in reader.lines() { + let line = line.expect("can't read line"); + let trimmed = line.trim(); + assert!(!trimmed.is_empty()); + + let result = U256::from_str(trimmed)?; + let res_vec = result.to_be_bytes_vec(); + let hex = to_padded_hex(res_vec.as_slice()); + let vec_hex = hex_string_to_u8_vec(&hex) + .map_err(|e| eyre!(format!("Failed converting hex string to Vec, {:?}", e)))?; + program_output + .push(vec_hex.try_into().map_err(|e| eyre!(format!("Failed to convert Vec to [u8; 32] : {:?}", e)))?); + } + + Ok(program_output) +} + +fn to_padded_hex(slice: &[u8]) -> String { + assert!(slice.len() <= 32, "Slice length must not exceed 32"); + let hex = slice.iter().fold(String::new(), |mut output, byte| { + // 0: pads with zeros + // 2: specifies the minimum width (2 characters) + // x: formats the number as lowercase hexadecimal + // writes a byte value as a two-digit hexadecimal number (padded with a leading zero if necessary) + // to the specified output. + let _ = write!(output, "{byte:02x}"); + output + }); + format!("{:0<64}", hex) +} + +pub fn biguint_vec_to_u8_vec(nums: &[BigUint]) -> Vec { + let mut result: Vec = Vec::new(); + + for num in nums { + result.extend_from_slice(biguint_to_32_bytes(num).as_slice()); + } + + result +} + +pub fn biguint_to_32_bytes(num: &BigUint) -> [u8; 32] { + let bytes = num.to_bytes_be(); + let mut result = [0u8; 32]; + + if bytes.len() > 32 { + // If we have more than 32 bytes, take only the last 32 + result.copy_from_slice(&bytes[bytes.len() - 32..]); + } else { + // If we have 32 or fewer bytes, pad with zeros at the beginning + result[32 - bytes.len()..].copy_from_slice(&bytes); + } + + result +} diff --git a/orchestrator/crates/orchestrator/src/jobs/types.rs b/orchestrator/crates/orchestrator/src/jobs/types.rs new file mode 100644 index 000000000..0eeba5e30 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/jobs/types.rs @@ -0,0 +1,214 @@ +use std::collections::HashMap; + +// TODO: job types shouldn't depend on mongodb +use chrono::{DateTime, Utc}; +use color_eyre::eyre::eyre; +use color_eyre::Result; +use da_client_interface::DaVerificationStatus; +#[cfg(feature = "with_mongodb")] +use mongodb::bson::serde_helpers::{chrono_datetime_as_bson_datetime, uuid_1_as_binary}; +use serde::{Deserialize, Serialize}; +use settlement_client_interface::SettlementVerificationStatus; +use uuid::Uuid; + +/// An external id. +#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq)] +#[serde(untagged)] +pub enum ExternalId { + /// A string. + String(Box), + /// A number. + Number(usize), +} + +impl From for ExternalId { + #[inline] + fn from(value: String) -> Self { + ExternalId::String(value.into_boxed_str()) + } +} + +impl From for ExternalId { + #[inline] + fn from(value: usize) -> Self { + ExternalId::Number(value) + } +} + +impl ExternalId { + /// Unwraps the external id as a string. + /// + /// # Panics + /// + /// This function panics if the provided external id not a string. + #[track_caller] + #[inline] + pub fn unwrap_string(&self) -> Result<&str> { + match self { + ExternalId::String(s) => Ok(s), + _ => Err(unwrap_external_id_failed("string", self)), + } + } + + /// Unwraps the external id as a number. + /// + /// # Panics + /// + /// This function panics if the provided external id is not a number. + #[track_caller] + #[inline] + #[allow(dead_code)] // temporarily unused (until the other pull request uses it) + pub fn unwrap_number(&self) -> Result { + match self { + ExternalId::Number(n) => Ok(*n), + _ => Err(unwrap_external_id_failed("number", self)), + } + } +} + +/// Returns an error indicating that the provided external id coulnd't be unwrapped. +fn unwrap_external_id_failed(expected: &str, got: &ExternalId) -> color_eyre::eyre::Error { + eyre!("wrong ExternalId type: expected {}, got {:?}", expected, got) +} + +#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq)] +pub enum JobType { + /// Running SNOS for a block + SnosRun, + /// Submitting DA data to the DA layer + DataSubmission, + /// Getting a proof from the proving service + ProofCreation, + /// Verifying the proof on the base layer + ProofRegistration, + /// Updaing the state root on the base layer + StateTransition, +} + +#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, PartialOrd, strum_macros::Display, Eq)] +pub enum JobStatus { + /// An acknowledgement that the job has been received by the + /// orchestrator and is waiting to be processed + Created, + /// Some system has taken a lock over the job for processing and no + /// other system to process the job + LockedForProcessing, + /// The job has been processed and is pending verification + PendingVerification, + /// The job has been processed and verified. No other actions needs to be taken + Completed, + /// The job was processed but the was unable to be verified under the given time + VerificationTimeout, + /// The job failed processing + VerificationFailed, + /// The job failed completing + Failed, +} + +#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq)] +pub struct JobItem { + /// an uuid to identify a job + #[cfg_attr(feature = "with_mongodb", serde(with = "uuid_1_as_binary"))] + pub id: Uuid, + /// a meaningful id used to track a job internally, ex: block_no, txn_hash + pub internal_id: String, + /// the type of job + pub job_type: JobType, + /// the status of the job + pub status: JobStatus, + /// external id to track the status of the job. for ex, txn hash for blob inclusion + /// or job_id from SHARP + pub external_id: ExternalId, + /// additional field to store values related to the job + pub metadata: HashMap, + /// helps to keep track of the version of the item for optimistic locking + pub version: i32, + /// timestamp when the job was created + #[cfg_attr(feature = "with_mongodb", serde(with = "chrono_datetime_as_bson_datetime"))] + pub created_at: DateTime, + /// timestamp when the job was last updated + #[cfg_attr(feature = "with_mongodb", serde(with = "chrono_datetime_as_bson_datetime"))] + pub updated_at: DateTime, +} + +/// Defining a structure that contains the changes to be made in the job object, +/// id and created at are not allowed to be changed +// version and updated_at will always be updated when this object updates the job +#[derive(Serialize, Debug)] +pub struct JobItemUpdates { + pub internal_id: Option, + pub job_type: Option, + pub status: Option, + pub external_id: Option, + pub metadata: Option>, +} + +/// implements only needed singular changes +impl Default for JobItemUpdates { + fn default() -> Self { + Self::new() + } +} + +impl JobItemUpdates { + pub fn new() -> Self { + JobItemUpdates { internal_id: None, job_type: None, status: None, external_id: None, metadata: None } + } + + pub fn update_internal_id(mut self, internal_id: String) -> JobItemUpdates { + self.internal_id = Some(internal_id); + self + } + + pub fn update_job_type(mut self, job_type: JobType) -> JobItemUpdates { + self.job_type = Some(job_type); + self + } + + pub fn update_status(mut self, status: JobStatus) -> JobItemUpdates { + self.status = Some(status); + self + } + pub fn update_external_id(mut self, external_id: ExternalId) -> JobItemUpdates { + self.external_id = Some(external_id); + self + } + pub fn update_metadata(mut self, metadata: HashMap) -> JobItemUpdates { + self.metadata = Some(metadata); + self + } + // creating another type JobItemUpdatesBuilder would be an overkill + pub fn build(self) -> JobItemUpdates { + self + } +} + +#[derive(Debug, Clone, PartialEq, Eq)] +pub enum JobVerificationStatus { + #[allow(dead_code)] + Pending, + #[allow(dead_code)] + Verified, + #[allow(dead_code)] + Rejected(String), +} + +impl From for JobVerificationStatus { + fn from(status: DaVerificationStatus) -> Self { + match status { + DaVerificationStatus::Pending => JobVerificationStatus::Pending, + DaVerificationStatus::Verified => JobVerificationStatus::Verified, + DaVerificationStatus::Rejected(e) => JobVerificationStatus::Rejected(e), + } + } +} + +impl From for JobVerificationStatus { + fn from(status: SettlementVerificationStatus) -> Self { + match status { + SettlementVerificationStatus::Pending => JobVerificationStatus::Pending, + SettlementVerificationStatus::Verified => JobVerificationStatus::Verified, + SettlementVerificationStatus::Rejected(e) => JobVerificationStatus::Rejected(e), + } + } +} diff --git a/orchestrator/crates/orchestrator/src/lib.rs b/orchestrator/crates/orchestrator/src/lib.rs new file mode 100644 index 000000000..5e0bcf6bd --- /dev/null +++ b/orchestrator/crates/orchestrator/src/lib.rs @@ -0,0 +1,36 @@ +#![feature(duration_constructors)] + +/// Contains the trait implementations for alerts +pub mod alerts; +/// Config of the service. Contains configurations for DB, Queues and other services. +pub mod config; +pub mod constants; +/// Controllers for the routes +pub mod controllers; +pub mod cron; +/// Contains the trait that implements the fetching functions +/// for blob and SNOS data from cloud for a particular block. +pub mod data_storage; +/// Contains the trait that all database clients must implement +pub mod database; +/// Contains the trait that all jobs must implement. Also +/// contains the root level functions for which detect the job +/// type and call the corresponding job +pub mod jobs; +/// contains trait level metrics. +pub mod metrics; +/// Contains the trait that all queues must implement +pub mod queue; +/// Contains the routes for the service +pub mod routes; +/// Contains setup functions to set up db and cloud. +pub mod setup; +/// Contains telemetry collection services. (Metrics/Logs/Traces) +pub mod telemetry; +#[cfg(test)] +pub mod tests; +/// Contains workers which act like cron jobs +pub mod workers; + +/// Contains the CLI arguments for the service +pub mod cli; diff --git a/orchestrator/crates/orchestrator/src/main.rs b/orchestrator/crates/orchestrator/src/main.rs new file mode 100644 index 000000000..90461de6a --- /dev/null +++ b/orchestrator/crates/orchestrator/src/main.rs @@ -0,0 +1,68 @@ +use clap::Parser as _; +use dotenvy::dotenv; +use orchestrator::cli::{Cli, Commands, RunCmd, SetupCmd}; +use orchestrator::config::init_config; +use orchestrator::queue::init_consumers; +use orchestrator::routes::setup_server; +use orchestrator::setup::setup_cloud; +use orchestrator::telemetry::{setup_analytics, shutdown_analytics}; + +/// Start the server +#[tokio::main] +// not sure why clippy gives this error on the latest rust +// version but have added it for now +#[allow(clippy::needless_return)] +async fn main() { + dotenv().ok(); + + let cli = Cli::parse(); + + match &cli.command { + Commands::Run { run_command } => { + run_orchestrator(run_command).await.expect("Failed to run orchestrator"); + } + Commands::Setup { setup_command } => { + setup_orchestrator(setup_command).await.expect("Failed to setup orchestrator"); + } + } +} + +async fn run_orchestrator(run_cmd: &RunCmd) -> color_eyre::Result<()> { + // Analytics Setup + let instrumentation_params = run_cmd.validate_instrumentation_params().expect("Invalid instrumentation params"); + let meter_provider = setup_analytics(&instrumentation_params); + tracing::info!(service = "orchestrator", "Starting orchestrator service"); + + color_eyre::install().expect("Unable to install color_eyre"); + + // initial config setup + let config = init_config(run_cmd).await.expect("Config instantiation failed"); + tracing::debug!(service = "orchestrator", "Configuration initialized"); + + // initialize the server + let _ = setup_server(config.clone()).await; + + tracing::debug!(service = "orchestrator", "Application router initialized"); + + // init consumer + match init_consumers(config).await { + Ok(_) => tracing::info!(service = "orchestrator", "Consumers initialized successfully"), + Err(e) => { + tracing::error!(service = "orchestrator", error = %e, "Failed to initialize consumers"); + panic!("Failed to init consumers: {}", e); + } + } + + tokio::signal::ctrl_c().await.expect("Failed to listen for ctrl+c"); + + // Analytics Shutdown + shutdown_analytics(meter_provider, &instrumentation_params); + tracing::info!(service = "orchestrator", "Orchestrator service shutting down"); + + Ok(()) +} + +async fn setup_orchestrator(setup_cmd: &SetupCmd) -> color_eyre::Result<()> { + setup_cloud(setup_cmd).await.expect("Failed to setup cloud"); + Ok(()) +} diff --git a/orchestrator/crates/orchestrator/src/metrics.rs b/orchestrator/crates/orchestrator/src/metrics.rs new file mode 100644 index 000000000..9fddfbe77 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/metrics.rs @@ -0,0 +1,92 @@ +use once_cell; +use once_cell::sync::Lazy; +use opentelemetry::metrics::{Counter, Gauge}; +use opentelemetry::{global, KeyValue}; +use utils::metrics::lib::{register_counter_metric_instrument, register_gauge_metric_instrument, Metrics}; +use utils::register_metric; + +register_metric!(ORCHESTRATOR_METRICS, OrchestratorMetrics); + +pub struct OrchestratorMetrics { + pub block_gauge: Gauge, + pub successful_job_operations: Counter, + pub failed_job_operations: Counter, + pub failed_jobs: Counter, + pub verification_time: Gauge, + pub jobs_response_time: Gauge, + pub db_calls_response_time: Gauge, +} + +impl Metrics for OrchestratorMetrics { + fn register() -> Self { + // Register meter + let common_scope_attributes = vec![KeyValue::new("crate", "orchestrator")]; + let orchestrator_meter = global::meter_with_version( + "crates.orchestrator.opentelemetry", + // TODO: Unsure of these settings, come back + Some("0.17"), + Some("https://opentelemetry.io/schemas/1.2.0"), + Some(common_scope_attributes.clone()), + ); + + // Register all instruments + let block_gauge = register_gauge_metric_instrument( + &orchestrator_meter, + "block_state".to_string(), + "A gauge to show block state at given time".to_string(), + "block".to_string(), + ); + + let successful_job_operations = register_counter_metric_instrument( + &orchestrator_meter, + "successful_job_operations".to_string(), + "A counter to show count of successful job operations over time".to_string(), + "jobs".to_string(), + ); + + let failed_job_operations = register_counter_metric_instrument( + &orchestrator_meter, + "failed_job_operations".to_string(), + "A counter to show count of failed job operations over time".to_string(), + "jobs".to_string(), + ); + + let failed_jobs = register_counter_metric_instrument( + &orchestrator_meter, + "failed_jobs".to_string(), + "A counter to show count of failed jobs over time".to_string(), + "jobs".to_string(), + ); + + let verification_time = register_gauge_metric_instrument( + &orchestrator_meter, + "verification_time".to_string(), + "A gauge to show the time taken for verification of tasks".to_string(), + "ms".to_string(), + ); + + let jobs_response_time = register_gauge_metric_instrument( + &orchestrator_meter, + "jobs_response_time".to_string(), + "A gauge to show response time of jobs over time".to_string(), + "s".to_string(), + ); + + let db_calls_response_time = register_gauge_metric_instrument( + &orchestrator_meter, + "db_calls_response_time".to_string(), + "A gauge to show response time of jobs over time".to_string(), + "s".to_string(), + ); + + Self { + block_gauge, + successful_job_operations, + failed_job_operations, + failed_jobs, + verification_time, + jobs_response_time, + db_calls_response_time, + } + } +} diff --git a/orchestrator/crates/orchestrator/src/queue/job_queue.rs b/orchestrator/crates/orchestrator/src/queue/job_queue.rs new file mode 100644 index 000000000..281615507 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/queue/job_queue.rs @@ -0,0 +1,408 @@ +use std::future::Future; +use std::str::FromStr; +use std::sync::Arc; +use std::time::Duration; + +use color_eyre::eyre::Context; +use color_eyre::Result as EyreResult; +use omniqueue::{Delivery, QueueError}; +use serde::{Deserialize, Deserializer, Serialize}; +use strum::Display; +use thiserror::Error; +use tokio::time::sleep; +use uuid::Uuid; + +use super::QueueType; +use crate::config::Config; +use crate::jobs::types::JobType; +use crate::jobs::{handle_job_failure, process_job, verify_job, JobError, OtherError}; +use crate::workers::data_submission_worker::DataSubmissionWorker; +use crate::workers::proof_registration::ProofRegistrationWorker; +use crate::workers::proving::ProvingWorker; +use crate::workers::snos::SnosWorker; +use crate::workers::update_state::UpdateStateWorker; +use crate::workers::Worker; + +#[derive(Error, Debug, PartialEq)] +pub enum ConsumptionError { + #[error("Failed to consume message from queue, error {error_msg:?}")] + FailedToConsumeFromQueue { error_msg: String }, + + #[error("Failed to handle job with id {job_id:?}. Error: {error_msg:?}")] + FailedToHandleJob { job_id: Uuid, error_msg: String }, + + #[error("Failed to spawn {worker_trigger_type:?} worker. Error: {error_msg:?}")] + FailedToSpawnWorker { worker_trigger_type: WorkerTriggerType, error_msg: String }, + + #[error("Other error: {0}")] + Other(#[from] OtherError), +} + +#[derive(Debug, Serialize, Deserialize)] +pub struct JobQueueMessage { + pub id: Uuid, +} + +#[derive(Debug, Serialize, Deserialize, PartialEq, Clone, Display)] +#[strum(serialize_all = "PascalCase")] +pub enum WorkerTriggerType { + Snos, + Proving, + ProofRegistration, + DataSubmission, + UpdateState, +} + +#[derive(Debug, Serialize, Clone)] +pub struct WorkerTriggerMessage { + pub worker: WorkerTriggerType, +} + +#[derive(Error, Debug)] +pub enum WorkerTriggerTypeError { + #[error("Unknown WorkerTriggerType: {0}")] + UnknownType(String), +} + +impl FromStr for WorkerTriggerType { + type Err = WorkerTriggerTypeError; + + fn from_str(s: &str) -> Result { + match s { + "Proving" => Ok(WorkerTriggerType::Proving), + "Snos" => Ok(WorkerTriggerType::Snos), + "ProofRegistration" => Ok(WorkerTriggerType::ProofRegistration), + "DataSubmission" => Ok(WorkerTriggerType::DataSubmission), + "UpdateState" => Ok(WorkerTriggerType::UpdateState), + _ => Err(WorkerTriggerTypeError::UnknownType(s.to_string())), + } + } +} + +// TODO : Need to check why serde deserializer was failing here. +// TODO : Remove this custom deserializer. +/// Implemented a custom deserializer as when using serde json deserializer +/// It was unable to deserialize the response from the event trigger. +impl<'de> Deserialize<'de> for WorkerTriggerMessage { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + #[derive(Deserialize, Debug)] + struct Helper { + worker: String, + } + let helper = Helper::deserialize(deserializer)?; + Ok(WorkerTriggerMessage { + worker: WorkerTriggerType::from_str(&helper.worker).map_err(serde::de::Error::custom)?, + }) + } +} + +#[derive(Debug)] +enum DeliveryReturnType { + Message(Delivery), + NoMessage, +} + +pub trait QueueNameForJobType { + fn process_queue_name(&self) -> QueueType; + fn verify_queue_name(&self) -> QueueType; +} + +impl QueueNameForJobType for JobType { + fn process_queue_name(&self) -> QueueType { + match self { + JobType::SnosRun => QueueType::SnosJobProcessing, + JobType::ProofCreation => QueueType::ProvingJobProcessing, + JobType::ProofRegistration => QueueType::ProofRegistrationJobProcessing, + JobType::DataSubmission => QueueType::DataSubmissionJobProcessing, + JobType::StateTransition => QueueType::UpdateStateJobProcessing, + } + } + fn verify_queue_name(&self) -> QueueType { + match self { + JobType::SnosRun => QueueType::SnosJobVerification, + JobType::ProofCreation => QueueType::ProvingJobVerification, + JobType::ProofRegistration => QueueType::ProofRegistrationJobVerification, + JobType::DataSubmission => QueueType::DataSubmissionJobVerification, + JobType::StateTransition => QueueType::UpdateStateJobVerification, + } + } +} + +pub async fn add_job_to_process_queue(id: Uuid, job_type: &JobType, config: Arc) -> EyreResult<()> { + tracing::info!("Adding job with id {:?} to processing queue", id); + add_job_to_queue(id, job_type.process_queue_name(), None, config).await +} + +pub async fn add_job_to_verification_queue( + id: Uuid, + job_type: &JobType, + delay: Duration, + config: Arc, +) -> EyreResult<()> { + tracing::info!("Adding job with id {:?} to verification queue", id); + add_job_to_queue(id, job_type.verify_queue_name(), Some(delay), config).await +} + +pub async fn consume_job_from_queue( + queue: QueueType, + handler: F, + config: Arc, +) -> Result<(), ConsumptionError> +where + F: FnOnce(Uuid, Arc) -> Fut, + F: Send + 'static, + Fut: Future> + Send, +{ + tracing::trace!(queue = %queue, "Attempting to consume job from queue"); + + let delivery = get_delivery_from_queue(queue.clone(), config.clone()).await?; + + let message = match delivery { + DeliveryReturnType::Message(message) => { + tracing::debug!(queue = %queue, "Message received from queue"); + message + } + DeliveryReturnType::NoMessage => { + tracing::debug!(queue = %queue, "No message in queue"); + return Ok(()); + } + }; + + let job_message = parse_job_message(&message)?; + + if let Some(job_message) = job_message { + tracing::info!(queue = %queue, job_id = %job_message.id, "Processing job message"); + tokio::spawn(async move { + match handle_job_message(job_message, message, handler, config).await { + Ok(_) => {} + Err(e) => log::error!("Failed to handle job message. Error: {:?}", e), + } + }); + } else { + tracing::warn!(queue = %queue, "Received empty job message"); + } + + tracing::info!(queue = %queue, "Job consumption completed successfully"); + Ok(()) +} + +/// Function to consume the message from the worker trigger queues and spawn the worker +/// for respective message received. +pub async fn consume_worker_trigger_messages_from_queue( + queue: QueueType, + handler: F, + config: Arc, +) -> Result<(), ConsumptionError> +where + F: FnOnce(Box, Arc) -> Fut, + F: Send + 'static, + Fut: Future> + Send, +{ + tracing::debug!("Consuming from queue {:?}", queue); + let delivery = get_delivery_from_queue(queue, Arc::clone(&config)).await?; + + let message = match delivery { + DeliveryReturnType::Message(message) => message, + DeliveryReturnType::NoMessage => return Ok(()), + }; + + let job_message = parse_worker_message(&message)?; + + if let Some(job_message) = job_message { + tokio::spawn(async move { + match handle_worker_message(job_message, message, handler, config).await { + Ok(_) => {} + Err(e) => tracing::error!("Failed to handle worker message. Error: {:?}", e), + } + }); + } + + Ok(()) +} + +fn parse_job_message(message: &Delivery) -> Result, ConsumptionError> { + message + .payload_serde_json() + .wrap_err("Payload Serde Error") + .map_err(|e| ConsumptionError::Other(OtherError::from(e))) +} + +/// Using string since localstack currently is instable with deserializing maps. +/// Change this to accept a map after localstack is stable +fn parse_worker_message(message: &Delivery) -> Result, ConsumptionError> { + let payload = message + .borrow_payload() + .ok_or_else(|| ConsumptionError::Other(OtherError::from("Empty payload".to_string())))?; + let message_string = String::from_utf8_lossy(payload).to_string().trim_matches('\"').to_string(); + let trigger_type = WorkerTriggerType::from_str(message_string.as_str()) + .wrap_err("Failed to parse worker trigger type from message") + .map_err(|e| ConsumptionError::Other(OtherError::from(e)))?; + Ok(Some(WorkerTriggerMessage { worker: trigger_type })) +} + +async fn handle_job_message( + job_message: JobQueueMessage, + message: Delivery, + handler: F, + config: Arc, +) -> Result<(), ConsumptionError> +where + F: FnOnce(Uuid, Arc) -> Fut, + Fut: Future>, +{ + tracing::info!("Handling job with id {:?}", job_message.id); + + match handler(job_message.id, config.clone()).await { + Ok(_) => { + message + .ack() + .await + .map_err(|(e, _)| e) + .wrap_err("Queue Error") + .map_err(|e| ConsumptionError::Other(OtherError::from(e)))?; + Ok(()) + } + Err(e) => { + tracing::error!("Failed to handle job with id {:?}. Error: {:?}", job_message.id, e); + config + .alerts() + .send_alert_message(e.to_string()) + .await + .map_err(|e| ConsumptionError::Other(OtherError::from(e)))?; + + // not using `nack` as we dont' want retries in case of failures + match message.ack().await { + Ok(_) => Err(ConsumptionError::FailedToHandleJob { + job_id: job_message.id, + error_msg: "Job handling failed, message nack-ed".to_string(), + }), + Err(delivery_nack_error) => Err(ConsumptionError::FailedToHandleJob { + job_id: job_message.id, + error_msg: delivery_nack_error.0.to_string(), + }), + } + } + } +} + +async fn handle_worker_message( + job_message: WorkerTriggerMessage, + message: Delivery, + handler: F, + config: Arc, +) -> Result<(), ConsumptionError> +where + F: FnOnce(Box, Arc) -> Fut, + Fut: Future>, +{ + let worker_handler = get_worker_handler_from_worker_trigger_type(job_message.worker.clone()); + + match handler(worker_handler, config.clone()).await { + Ok(_) => { + message + .ack() + .await + .map_err(|(e, _)| e) + .wrap_err("Queue Error") + .map_err(|e| ConsumptionError::Other(OtherError::from(e)))?; + Ok(()) + } + Err(e) => { + tracing::error!("Failed to handle worker trigger {:?}. Error: {:?}", job_message.worker, e); + config + .alerts() + .send_alert_message(e.to_string()) + .await + .map_err(|e| ConsumptionError::Other(OtherError::from(e)))?; + + // not using `nack` as we dont' want retries in case of failures + message.ack().await.map_err(|(e, _)| ConsumptionError::Other(OtherError::from(e.to_string())))?; + Err(ConsumptionError::FailedToSpawnWorker { + worker_trigger_type: job_message.worker, + error_msg: "Worker handling failed, message nack-ed".to_string(), + }) + } + } +} + +/// To get Box handler from `WorkerTriggerType`. +fn get_worker_handler_from_worker_trigger_type(worker_trigger_type: WorkerTriggerType) -> Box { + match worker_trigger_type { + WorkerTriggerType::Snos => Box::new(SnosWorker), + WorkerTriggerType::Proving => Box::new(ProvingWorker), + WorkerTriggerType::DataSubmission => Box::new(DataSubmissionWorker), + WorkerTriggerType::ProofRegistration => Box::new(ProofRegistrationWorker), + WorkerTriggerType::UpdateState => Box::new(UpdateStateWorker), + } +} + +/// To get the delivery from the message queue using the queue name +async fn get_delivery_from_queue( + queue: QueueType, + config: Arc, +) -> Result { + match config.queue().consume_message_from_queue(queue).await { + Ok(d) => Ok(DeliveryReturnType::Message(d)), + Err(QueueError::NoData) => Ok(DeliveryReturnType::NoMessage), + Err(e) => Err(ConsumptionError::FailedToConsumeFromQueue { error_msg: e.to_string() }), + } +} + +macro_rules! spawn_consumer { + ($queue_type:expr, $handler:expr, $consume_function:expr, $config:expr) => { + let config_clone = $config.clone(); + tokio::spawn(async move { + loop { + match $consume_function($queue_type, $handler, config_clone.clone()).await { + Ok(_) => {} + Err(e) => tracing::error!("Failed to consume from queue {:?}. Error: {:?}", $queue_type, e), + } + sleep(Duration::from_millis(500)).await; + } + }); + }; +} + +pub async fn init_consumers(config: Arc) -> Result<(), JobError> { + spawn_consumer!(QueueType::SnosJobProcessing, process_job, consume_job_from_queue, config.clone()); + spawn_consumer!(QueueType::SnosJobVerification, verify_job, consume_job_from_queue, config.clone()); + + spawn_consumer!(QueueType::ProvingJobProcessing, process_job, consume_job_from_queue, config.clone()); + spawn_consumer!(QueueType::ProvingJobVerification, verify_job, consume_job_from_queue, config.clone()); + + spawn_consumer!(QueueType::DataSubmissionJobProcessing, process_job, consume_job_from_queue, config.clone()); + spawn_consumer!(QueueType::DataSubmissionJobVerification, verify_job, consume_job_from_queue, config.clone()); + + spawn_consumer!(QueueType::UpdateStateJobProcessing, process_job, consume_job_from_queue, config.clone()); + spawn_consumer!(QueueType::UpdateStateJobVerification, verify_job, consume_job_from_queue, config.clone()); + + spawn_consumer!(QueueType::JobHandleFailure, handle_job_failure, consume_job_from_queue, config.clone()); + + spawn_consumer!(QueueType::WorkerTrigger, spawn_worker, consume_worker_trigger_messages_from_queue, config); + Ok(()) +} + +/// To spawn the worker by passing the worker struct +async fn spawn_worker(worker: Box, config: Arc) -> color_eyre::Result<()> { + if let Err(e) = worker.run_worker_if_enabled(config).await { + log::error!("Failed to spawn worker. Error: {}", e); + return Err(e); + } + Ok(()) +} +async fn add_job_to_queue(id: Uuid, queue: QueueType, delay: Option, config: Arc) -> EyreResult<()> { + let message = JobQueueMessage { id }; + config.queue().send_message_to_queue(queue.clone(), serde_json::to_string(&message)?, delay).await?; + tracing::info!( + log_type = "JobQueue", + category = "add_job_to_queue", + function_type = "add_job_to_queue", + "Added job with id {:?} to {:?} queue", + id, + queue + ); + Ok(()) +} diff --git a/orchestrator/crates/orchestrator/src/queue/mod.rs b/orchestrator/crates/orchestrator/src/queue/mod.rs new file mode 100644 index 000000000..98ce3e668 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/queue/mod.rs @@ -0,0 +1,129 @@ +pub mod job_queue; +pub mod sqs; + +use std::sync::Arc; +use std::time::Duration; + +use async_trait::async_trait; +use color_eyre::Result as EyreResult; +use lazy_static::lazy_static; +use mockall::automock; +use omniqueue::{Delivery, QueueError}; +use strum_macros::{Display, EnumIter}; + +use crate::config::Config; +use crate::jobs::JobError; + +#[derive(Display, Debug, Clone, PartialEq, Eq, EnumIter)] +pub enum QueueType { + #[strum(serialize = "snos_job_processing")] + SnosJobProcessing, + #[strum(serialize = "snos_job_verification")] + SnosJobVerification, + #[strum(serialize = "proving_job_processing")] + ProvingJobProcessing, + #[strum(serialize = "proving_job_verification")] + ProvingJobVerification, + #[strum(serialize = "proof_registration_job_processing")] + ProofRegistrationJobProcessing, + #[strum(serialize = "proof_registration_job_verification")] + ProofRegistrationJobVerification, + #[strum(serialize = "data_submission_job_processing")] + DataSubmissionJobProcessing, + #[strum(serialize = "data_submission_job_verification")] + DataSubmissionJobVerification, + #[strum(serialize = "update_state_job_processing")] + UpdateStateJobProcessing, + #[strum(serialize = "update_state_job_verification")] + UpdateStateJobVerification, + #[strum(serialize = "job_handle_failure")] + JobHandleFailure, + #[strum(serialize = "worker_trigger")] + WorkerTrigger, +} + +#[derive(Clone)] +pub struct DlqConfig { + pub max_receive_count: i32, + pub dlq_name: QueueType, +} + +#[derive(Clone)] +pub struct QueueConfig { + pub name: QueueType, + pub visibility_timeout: i32, + pub dlq_config: Option, +} + +// TODO: use QueueType::iter() or format! +lazy_static! { + pub static ref QUEUES: Vec = vec![ + QueueConfig { name: QueueType::JobHandleFailure, visibility_timeout: 300, dlq_config: None }, + QueueConfig { + name: QueueType::SnosJobProcessing, + visibility_timeout: 300, + dlq_config: Some(DlqConfig { max_receive_count: 5, dlq_name: QueueType::JobHandleFailure }) + }, + QueueConfig { + name: QueueType::SnosJobVerification, + visibility_timeout: 300, + dlq_config: Some(DlqConfig { max_receive_count: 5, dlq_name: QueueType::JobHandleFailure }) + }, + QueueConfig { + name: QueueType::ProvingJobProcessing, + visibility_timeout: 300, + dlq_config: Some(DlqConfig { max_receive_count: 5, dlq_name: QueueType::JobHandleFailure }) + }, + QueueConfig { + name: QueueType::ProvingJobVerification, + visibility_timeout: 300, + dlq_config: Some(DlqConfig { max_receive_count: 5, dlq_name: QueueType::JobHandleFailure }) + }, + QueueConfig { + name: QueueType::DataSubmissionJobProcessing, + visibility_timeout: 300, + dlq_config: Some(DlqConfig { max_receive_count: 5, dlq_name: QueueType::JobHandleFailure }) + }, + QueueConfig { + name: QueueType::DataSubmissionJobVerification, + visibility_timeout: 300, + dlq_config: Some(DlqConfig { max_receive_count: 5, dlq_name: QueueType::JobHandleFailure }) + }, + QueueConfig { + name: QueueType::UpdateStateJobProcessing, + visibility_timeout: 900, + dlq_config: Some(DlqConfig { max_receive_count: 5, dlq_name: QueueType::JobHandleFailure }) + }, + QueueConfig { + name: QueueType::UpdateStateJobVerification, + visibility_timeout: 300, + dlq_config: Some(DlqConfig { max_receive_count: 5, dlq_name: QueueType::JobHandleFailure }) + }, + QueueConfig { name: QueueType::WorkerTrigger, visibility_timeout: 300, dlq_config: None }, + ]; +} + +/// Queue Provider Trait +/// +/// The QueueProvider trait is used to define the methods that a queue +/// should implement to be used as a queue for the orchestrator. The +/// purpose of this trait is to allow developers to use any queue of their choice. +#[automock] +#[async_trait] +pub trait QueueProvider: Send + Sync { + async fn send_message_to_queue(&self, queue: QueueType, payload: String, delay: Option) + -> EyreResult<()>; + async fn consume_message_from_queue(&self, queue: QueueType) -> std::result::Result; + async fn create_queue(&self, queue_config: &QueueConfig) -> EyreResult<()>; + async fn setup(&self) -> EyreResult<()> { + // Creating the queues : + for queue in QUEUES.iter() { + self.create_queue(queue).await?; + } + Ok(()) + } +} + +pub async fn init_consumers(config: Arc) -> Result<(), JobError> { + job_queue::init_consumers(config).await +} diff --git a/orchestrator/crates/orchestrator/src/queue/sqs/mod.rs b/orchestrator/crates/orchestrator/src/queue/sqs/mod.rs new file mode 100644 index 000000000..dbb167c50 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/queue/sqs/mod.rs @@ -0,0 +1,138 @@ +use std::collections::HashMap; +use std::time::Duration; + +use async_trait::async_trait; +use aws_config::SdkConfig; +use aws_sdk_sqs::types::QueueAttributeName; +use aws_sdk_sqs::Client; +use color_eyre::eyre::eyre; +use color_eyre::Result; +use omniqueue::backends::{SqsBackend, SqsConfig, SqsConsumer, SqsProducer}; +use omniqueue::{Delivery, QueueError}; +use serde::Serialize; +use url::Url; + +use super::QueueType; +use crate::queue::{QueueConfig, QueueProvider}; + +#[derive(Debug, Clone, Serialize)] +pub struct AWSSQSValidatedArgs { + pub queue_base_url: Url, + pub sqs_prefix: String, + pub sqs_suffix: String, +} + +pub struct SqsQueue { + client: Client, + queue_base_url: Url, + sqs_prefix: String, + sqs_suffix: String, +} + +impl SqsQueue { + pub fn new_with_args(params: AWSSQSValidatedArgs, aws_config: &SdkConfig) -> Self { + let sqs_config_builder = aws_sdk_sqs::config::Builder::from(aws_config); + let client = Client::from_conf(sqs_config_builder.build()); + Self { + client, + queue_base_url: params.queue_base_url, + sqs_prefix: params.sqs_prefix, + sqs_suffix: params.sqs_suffix, + } + } + + pub fn get_queue_url(&self, queue_type: QueueType) -> String { + let name = format!("{}/{}", self.queue_base_url, self.get_queue_name(queue_type)); + name + } + + pub fn get_queue_name(&self, queue_type: QueueType) -> String { + format!("{}_{}_{}", self.sqs_prefix, queue_type, self.sqs_suffix) + } +} + +#[allow(unreachable_patterns)] +#[async_trait] +impl QueueProvider for SqsQueue { + async fn send_message_to_queue(&self, queue: QueueType, payload: String, delay: Option) -> Result<()> { + let queue_url = self.get_queue_url(queue); + let producer = get_producer(queue_url).await?; + + match delay { + Some(d) => producer.send_raw_scheduled(payload.as_str(), d).await?, + None => producer.send_raw(payload.as_str()).await?, + } + + Ok(()) + } + + async fn consume_message_from_queue(&self, queue: QueueType) -> std::result::Result { + let queue_url = self.get_queue_url(queue); + let mut consumer = get_consumer(queue_url).await?; + consumer.receive().await + } + + async fn create_queue(&self, queue_config: &QueueConfig) -> Result<()> { + let res = self.client.create_queue().queue_name(self.get_queue_name(queue_config.name.clone())).send().await?; + let queue_url = res.queue_url().ok_or_else(|| eyre!("Not able to get queue url from result"))?; + + let mut attributes = HashMap::new(); + attributes.insert(QueueAttributeName::VisibilityTimeout, queue_config.visibility_timeout.to_string()); + + if let Some(dlq_config) = &queue_config.dlq_config { + let dlq_url = Self::get_queue_url_from_client( + self.get_queue_name(dlq_config.dlq_name.clone()).as_str(), + &self.client, + ) + .await?; + let dlq_arn = Self::get_queue_arn(&self.client, &dlq_url).await?; + let policy = format!( + r#"{{"deadLetterTargetArn":"{}","maxReceiveCount":"{}"}}"#, + dlq_arn, &dlq_config.max_receive_count + ); + attributes.insert(QueueAttributeName::RedrivePolicy, policy); + } + + self.client.set_queue_attributes().queue_url(queue_url).set_attributes(Some(attributes)).send().await?; + + Ok(()) + } +} + +impl SqsQueue { + /// To get the queue url from the given queue name + async fn get_queue_url_from_client(queue_name: &str, sqs_client: &Client) -> Result { + Ok(sqs_client + .get_queue_url() + .queue_name(queue_name) + .send() + .await? + .queue_url() + .ok_or_else(|| eyre!("Unable to get queue url from the given queue_name."))? + .to_string()) + } + + async fn get_queue_arn(client: &Client, queue_url: &str) -> Result { + let attributes = client + .get_queue_attributes() + .queue_url(queue_url) + .attribute_names(QueueAttributeName::QueueArn) + .send() + .await?; + + Ok(attributes.attributes().unwrap().get(&QueueAttributeName::QueueArn).unwrap().to_string()) + } +} + +// TODO: store the producer and consumer in memory to avoid creating a new one every time +async fn get_producer(queue: String) -> Result { + let (producer, _) = + SqsBackend::builder(SqsConfig { queue_dsn: queue, override_endpoint: true }).build_pair().await?; + Ok(producer) +} + +async fn get_consumer(queue: String) -> std::result::Result { + let (_, consumer) = + SqsBackend::builder(SqsConfig { queue_dsn: queue, override_endpoint: true }).build_pair().await?; + Ok(consumer) +} diff --git a/orchestrator/crates/orchestrator/src/routes/app_routes.rs b/orchestrator/crates/orchestrator/src/routes/app_routes.rs new file mode 100644 index 000000000..205c87907 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/routes/app_routes.rs @@ -0,0 +1,20 @@ +use axum::http::StatusCode; +use axum::response::IntoResponse; +use axum::routing::get; +use axum::Router; + +pub fn app_router() -> Router { + Router::new().route("/health", get(root)).nest("/v1/dev", dev_routes()) +} + +async fn root() -> &'static str { + "UP" +} + +pub async fn handler_404() -> impl IntoResponse { + (StatusCode::NOT_FOUND, "The requested resource was not found") +} + +fn dev_routes() -> Router { + Router::new() +} diff --git a/orchestrator/crates/orchestrator/src/routes/job_routes.rs b/orchestrator/crates/orchestrator/src/routes/job_routes.rs new file mode 100644 index 000000000..a10730af6 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/routes/job_routes.rs @@ -0,0 +1,85 @@ +use std::sync::Arc; + +use axum::extract::{Path, State}; +use axum::response::IntoResponse; +use axum::routing::get; +use axum::Router; +use opentelemetry::KeyValue; +use serde::{Deserialize, Serialize}; +use uuid::Uuid; + +use super::ApiResponse; +use crate::config::Config; +use crate::jobs::{process_job, verify_job, JobError}; +use crate::metrics::ORCHESTRATOR_METRICS; + +#[derive(Deserialize)] +struct JobId { + id: String, +} + +#[derive(Serialize)] +struct JobApiResponse { + job_id: String, + status: String, +} + +async fn handle_process_job_request( + Path(JobId { id }): Path, + State(config): State>, +) -> impl IntoResponse { + // Parse UUID + let job_id = match Uuid::parse_str(&id) { + Ok(id) => id, + Err(_) => { + return ApiResponse::::error((JobError::InvalidId { id }).to_string()).into_response(); + } + }; + + // Process job + match process_job(job_id, config).await { + Ok(_) => { + let response = JobApiResponse { job_id: job_id.to_string(), status: "completed".to_string() }; + ApiResponse::success(response).into_response() + } + Err(e) => { + ORCHESTRATOR_METRICS.failed_job_operations.add(1.0, &[KeyValue::new("operation_type", "process_job")]); + ApiResponse::::error(e.to_string()).into_response() + } + } +} + +async fn handle_verify_job_request( + Path(JobId { id }): Path, + State(config): State>, +) -> impl IntoResponse { + // Parse UUID + let job_id = match Uuid::parse_str(&id) { + Ok(id) => id, + Err(_) => { + return ApiResponse::::error((JobError::InvalidId { id }).to_string()).into_response(); + } + }; + + // Verify job + match verify_job(job_id, config).await { + Ok(_) => { + let response = JobApiResponse { job_id: job_id.to_string(), status: "verified".to_string() }; + ApiResponse::success(response).into_response() + } + Err(e) => { + ORCHESTRATOR_METRICS.failed_job_operations.add(1.0, &[KeyValue::new("operation_type", "verify_job")]); + ApiResponse::::error(e.to_string()).into_response() + } + } +} +pub fn job_router(config: Arc) -> Router { + Router::new().nest("/jobs", trigger_router(config.clone())) +} + +fn trigger_router(config: Arc) -> Router { + Router::new() + .route("/:id/process", get(handle_process_job_request)) + .route("/:id/verify", get(handle_verify_job_request)) + .with_state(config) +} diff --git a/orchestrator/crates/orchestrator/src/routes/mod.rs b/orchestrator/crates/orchestrator/src/routes/mod.rs new file mode 100644 index 000000000..b43b6a7e4 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/routes/mod.rs @@ -0,0 +1,77 @@ +use std::net::SocketAddr; +use std::sync::Arc; + +use app_routes::{app_router, handler_404}; +use axum::http::StatusCode; +use axum::response::{IntoResponse, Response}; +use axum::{Json, Router}; +use job_routes::job_router; +use serde::Serialize; + +use crate::config::Config; + +pub mod app_routes; +pub mod job_routes; + +#[derive(Debug, Clone)] +pub struct ServerParams { + pub host: String, + pub port: u16, +} + +#[derive(Debug, Serialize)] +struct ApiResponse +where + T: Serialize, +{ + data: Option, + error: Option, +} + +impl ApiResponse +where + T: Serialize, +{ + pub fn success(data: T) -> Self { + Self { data: Some(data), error: None } + } + + pub fn error(message: impl Into) -> Self { + Self { data: None, error: Some(message.into()) } + } +} + +impl IntoResponse for ApiResponse +where + T: Serialize, +{ + fn into_response(self) -> Response { + let status = if self.error.is_some() { StatusCode::INTERNAL_SERVER_ERROR } else { StatusCode::OK }; + + let json = Json(self); + + (status, json).into_response() + } +} + +pub async fn setup_server(config: Arc) -> SocketAddr { + let (api_server_url, listener) = get_server_url(config.server_config()).await; + + let job_routes = job_router(config.clone()); + let app_routes = app_router(); + let app = Router::new().merge(app_routes).merge(job_routes).fallback(handler_404); + + tokio::spawn(async move { + axum::serve(listener, app).await.expect("Failed to start axum server"); + }); + + api_server_url +} + +pub async fn get_server_url(server_params: &ServerParams) -> (SocketAddr, tokio::net::TcpListener) { + let address = format!("{}:{}", server_params.host, server_params.port); + let listener = tokio::net::TcpListener::bind(address.clone()).await.expect("Failed to get listener"); + let api_server_url = listener.local_addr().expect("Unable to bind address to listener."); + + (api_server_url, listener) +} diff --git a/orchestrator/crates/orchestrator/src/setup/mod.rs b/orchestrator/crates/orchestrator/src/setup/mod.rs new file mode 100644 index 000000000..e14f00fc9 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/setup/mod.rs @@ -0,0 +1,100 @@ +use std::process::Command; +use std::time::Duration; + +use async_std::task::sleep; +use aws_config::SdkConfig; + +use crate::alerts::aws_sns::AWSSNS; +use crate::alerts::Alerts; +use crate::cli::alert::AlertValidatedArgs; +use crate::cli::cron::CronValidatedArgs; +use crate::cli::queue::QueueValidatedArgs; +use crate::cli::storage::StorageValidatedArgs; +use crate::cli::SetupCmd; +use crate::config::build_provider_config; +use crate::cron::event_bridge::AWSEventBridge; +use crate::cron::Cron; +use crate::data_storage::aws_s3::AWSS3; +use crate::data_storage::DataStorage; +use crate::queue::sqs::SqsQueue; +use crate::queue::QueueProvider as _; + +#[derive(Clone)] +pub enum SetupConfig { + AWS(SdkConfig), +} + +// Note: we are using println! instead of tracing::info! because telemetry is not yet initialized +// and it get initialized during the run_orchestrator function. +pub async fn setup_cloud(setup_cmd: &SetupCmd) -> color_eyre::Result<()> { + // AWS + println!("Setting up cloud. ā³"); + let provider_params = setup_cmd.validate_provider_params().expect("Failed to validate provider params"); + let provider_config = build_provider_config(&provider_params).await; + let aws_config = provider_config.get_aws_client_or_panic(); + + // Queues + println!("Setting up queues. ā³"); + let queue_params = setup_cmd.validate_queue_params().expect("Failed to validate queue params"); + match queue_params { + QueueValidatedArgs::AWSSQS(aws_sqs_params) => { + let sqs = Box::new(SqsQueue::new_with_args(aws_sqs_params, aws_config)); + sqs.setup().await? + } + } + println!("Queues setup completed āœ…"); + + // Waiting for few seconds to let AWS index the queues + sleep(Duration::from_secs(20)).await; + + // Data Storage + println!("Setting up data storage. ā³"); + let data_storage_params = setup_cmd.validate_storage_params().expect("Failed to validate storage params"); + + match data_storage_params { + StorageValidatedArgs::AWSS3(aws_s3_params) => { + let s3 = Box::new(AWSS3::new_with_args(&aws_s3_params, aws_config).await); + s3.setup(&StorageValidatedArgs::AWSS3(aws_s3_params.clone())).await? + } + } + println!("Data storage setup completed āœ…"); + + // Cron + println!("Setting up cron. ā³"); + // Sleeping for few seconds to let AWS index the newly created queues to be used for setting up cron + sleep(Duration::from_secs(100)).await; + let cron_params = setup_cmd.validate_cron_params().expect("Failed to validate cron params"); + match cron_params { + CronValidatedArgs::AWSEventBridge(aws_event_bridge_params) => { + let aws_config = provider_config.get_aws_client_or_panic(); + let event_bridge = Box::new(AWSEventBridge::new_with_args(&aws_event_bridge_params, aws_config)); + event_bridge.setup().await? + } + } + println!("Cron setup completed āœ…"); + + // Alerts + println!("Setting up alerts. ā³"); + let alert_params = setup_cmd.validate_alert_params().expect("Failed to validate alert params"); + match alert_params { + AlertValidatedArgs::AWSSNS(aws_sns_params) => { + let aws_config = provider_config.get_aws_client_or_panic(); + let sns = Box::new(AWSSNS::new_with_args(&aws_sns_params, aws_config).await); + sns.setup().await? + } + } + println!("Alerts setup completed āœ…"); + + Ok(()) +} + +pub async fn setup_db() -> color_eyre::Result<()> { + // We run the js script in the folder root: + println!("Setting up database."); + + Command::new("node").arg("migrate-mongo-config.js").output()?; + + println!("Database setup completed āœ…"); + + Ok(()) +} diff --git a/orchestrator/crates/orchestrator/src/telemetry.rs b/orchestrator/crates/orchestrator/src/telemetry.rs new file mode 100644 index 000000000..ba2303f5d --- /dev/null +++ b/orchestrator/crates/orchestrator/src/telemetry.rs @@ -0,0 +1,219 @@ +use std::time::Duration; + +use opentelemetry::trace::TracerProvider; +use opentelemetry::{global, KeyValue}; +use opentelemetry_appender_tracing::layer::OpenTelemetryTracingBridge; +use opentelemetry_otlp::{ExportConfig, WithExportConfig}; +use opentelemetry_sdk::logs::LoggerProvider; +use opentelemetry_sdk::metrics::reader::{DefaultAggregationSelector, DefaultTemporalitySelector}; +use opentelemetry_sdk::metrics::{PeriodicReader, SdkMeterProvider}; +use opentelemetry_sdk::trace::{BatchConfigBuilder, Config, Tracer}; +use opentelemetry_sdk::{runtime, Resource}; +use tracing_opentelemetry::OpenTelemetryLayer; +use tracing_subscriber::layer::SubscriberExt as _; +use tracing_subscriber::util::SubscriberInitExt as _; +use tracing_subscriber::EnvFilter; +use url::Url; + +pub struct OTELConfig { + endpoint: Url, + service_name: String, +} + +#[derive(Debug, Clone)] +pub struct InstrumentationParams { + pub otel_service_name: String, + pub otel_collector_endpoint: Option, +} + +pub fn setup_analytics(instrumentation: &InstrumentationParams) -> Option { + let otel_config = get_otel_config(instrumentation); + + let tracing_subscriber = + tracing_subscriber::registry().with(tracing_subscriber::fmt::layer()).with(EnvFilter::from_default_env()); + + if let Some(otel_config) = otel_config { + let meter_provider = init_metric_provider(&otel_config); + let tracer = init_tracer_provider(&otel_config); + + // Opentelemetry will not provide a global API to manage the logger + // provider. Application users must manage the lifecycle of the logger + // provider on their own. Dropping logger providers will disable log + // emitting. + let logger_provider = init_logs(&otel_config).unwrap(); + // Create a new OpenTelemetryTracingBridge using the above LoggerProvider. + let layer = OpenTelemetryTracingBridge::new(&logger_provider); + + tracing_subscriber.with(OpenTelemetryLayer::new(tracer)).with(layer).init(); + Some(meter_provider) + } else { + tracing_subscriber.init(); + None + } +} + +fn get_otel_config(instrumentation: &InstrumentationParams) -> Option { + let otel_endpoint = instrumentation.otel_collector_endpoint.clone(); + let otel_service_name = instrumentation.otel_service_name.clone(); + + match otel_endpoint { + Some(endpoint) => Some(OTELConfig { endpoint, service_name: otel_service_name }), + _ => { + tracing::warn!("MADARA_ORCHESTRATOR_OTEL_COLLECTOR_ENDPOINT is not set"); + None + } + } +} + +pub fn shutdown_analytics(meter_provider: Option, instrumentation: &InstrumentationParams) { + let otel_config = get_otel_config(instrumentation); + + // guard clause if otel is disabled + if otel_config.is_none() { + return; + } + + if let Some(meter_provider) = meter_provider { + global::shutdown_tracer_provider(); + let _ = meter_provider.shutdown(); + } +} + +pub fn init_tracer_provider(otel_config: &OTELConfig) -> Tracer { + let batch_config = BatchConfigBuilder::default() + // Increasing the queue size and batch size, only increase in queue size delays full channel error. + .build(); + + let provider = opentelemetry_otlp::new_pipeline() + .tracing() + .with_exporter(opentelemetry_otlp::new_exporter().tonic().with_endpoint(otel_config.endpoint.to_string())) + .with_trace_config(Config::default().with_resource(Resource::new(vec![KeyValue::new( + opentelemetry_semantic_conventions::resource::SERVICE_NAME, + format!("{}{}", otel_config.service_name, "_trace_service"), + )]))) + .with_batch_config(batch_config) + .install_batch(runtime::Tokio) + .expect("Failed to install tracer provider"); + + global::set_tracer_provider(provider.clone()); + + provider.tracer(format!("{}{}", otel_config.service_name, "_subscriber")) +} + +pub fn init_metric_provider(otel_config: &OTELConfig) -> SdkMeterProvider { + let export_config = ExportConfig { endpoint: otel_config.endpoint.to_string(), ..ExportConfig::default() }; + + // Creates and builds the OTLP exporter + let exporter = opentelemetry_otlp::new_exporter().tonic().with_export_config(export_config).build_metrics_exporter( + // TODO: highly likely that changing these configs will result in correct collection of traces, inhibiting full + // channel issue + Box::new(DefaultAggregationSelector::new()), + Box::new(DefaultTemporalitySelector::new()), + ); + + // Creates a periodic reader that exports every 5 seconds + let reader = PeriodicReader::builder(exporter.expect("Failed to build metrics exporter"), runtime::Tokio) + .with_interval(Duration::from_secs(5)) + .build(); + + // Builds a meter provider with the periodic reader + let provider = SdkMeterProvider::builder() + .with_reader(reader) + .with_resource(Resource::new(vec![KeyValue::new( + opentelemetry_semantic_conventions::resource::SERVICE_NAME, + format!("{}{}", otel_config.service_name, "_meter_service"), + )])) + .build(); + global::set_meter_provider(provider.clone()); + provider +} + +fn init_logs(otel_config: &OTELConfig) -> Result { + opentelemetry_otlp::new_pipeline() + .logging() + .with_resource(Resource::new(vec![KeyValue::new( + opentelemetry_semantic_conventions::resource::SERVICE_NAME, + format!("{}{}", otel_config.service_name, "_logs_service"), + )])) + .with_exporter(opentelemetry_otlp::new_exporter().tonic().with_endpoint(otel_config.endpoint.to_string())) + .install_batch(runtime::Tokio) +} + +#[cfg(test)] +mod tests { + use once_cell::sync::Lazy; + use utils::metrics::lib::Metrics; + use utils::register_metric; + + use super::*; + use crate::metrics::OrchestratorMetrics; + + #[tokio::test] + #[allow(clippy::needless_return)] + async fn test_init_metric_provider() { + // Set up necessary environment variables + let instrumentation_params = InstrumentationParams { + otel_collector_endpoint: Some(Url::parse("http://localhost:4317").unwrap()), + otel_service_name: "test_service".to_string(), + }; + + let otel_config = get_otel_config(&instrumentation_params).unwrap(); + + // Call the function and check if it doesn't panic + let result = std::panic::catch_unwind(|| { + let _provider = init_metric_provider(&otel_config); + }); + + // Check if the global meter provider is set + let _global_provider = global::meter_provider(); + assert!(result.is_ok(), "init_metric_provider() panicked") + } + + #[tokio::test] + #[allow(clippy::needless_return)] + async fn test_init_tracer_provider() { + // Set up necessary environment variables + let instrumentation_params = InstrumentationParams { + otel_collector_endpoint: Some(Url::parse("http://localhost:4317").unwrap()), + otel_service_name: "test_service".to_string(), + }; + + let otel_config = get_otel_config(&instrumentation_params).unwrap(); + + // Call the function and check if it doesn't panic + let result = std::panic::catch_unwind(|| { + let _tracer = init_tracer_provider(&otel_config); + }); + + assert!(result.is_ok(), "init_tracer_provider() panicked"); + } + + #[tokio::test] + #[allow(clippy::needless_return)] + async fn test_init_analytics() { + // This test just ensures that the function doesn't panic + let instrumentation_params = InstrumentationParams { + otel_collector_endpoint: Some(Url::parse("http://localhost:4317").unwrap()), + otel_service_name: "test_service".to_string(), + }; + + let analytics = setup_analytics(&instrumentation_params); + + assert!(analytics.is_some(), " Unable to set analytics") + } + + #[tokio::test] + #[allow(clippy::needless_return)] + async fn test_gauge_setter() { + // This test just ensures that the function doesn't panic + + let instrumentation_params = InstrumentationParams { + otel_collector_endpoint: Some(Url::parse("http://localhost:4317").unwrap()), + otel_service_name: "test_service".to_string(), + }; + + setup_analytics(&instrumentation_params); + + register_metric!(ORCHESTRATOR_METRICS, OrchestratorMetrics); + } +} diff --git a/orchestrator/crates/orchestrator/src/tests/alerts/mod.rs b/orchestrator/crates/orchestrator/src/tests/alerts/mod.rs new file mode 100644 index 000000000..abe8da2cf --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/alerts/mod.rs @@ -0,0 +1,61 @@ +use std::time::Duration; + +use aws_sdk_sqs::types::QueueAttributeName::QueueArn; +use rstest::rstest; +use tokio::time::sleep; +use utils::env_utils::get_env_var_or_panic; + +use crate::tests::common::{get_sns_client, get_sqs_client}; +use crate::tests::config::{ConfigType, TestConfigBuilder}; + +pub const SNS_ALERT_TEST_QUEUE: &str = "orchestrator_sns_alert_testing_queue"; + +#[rstest] +#[tokio::test] +async fn sns_alert_subscribe_to_topic_receive_alert_works() { + let services = TestConfigBuilder::new().configure_alerts(ConfigType::Actual).build().await; + + let sqs_client = get_sqs_client(services.provider_config.clone()).await; + let queue = sqs_client.create_queue().queue_name(SNS_ALERT_TEST_QUEUE).send().await.unwrap(); + let queue_url = queue.queue_url().unwrap(); + + let sns_client = get_sns_client(services.provider_config.get_aws_client_or_panic()).await; + + let queue_attributes = + sqs_client.get_queue_attributes().queue_url(queue_url).attribute_names(QueueArn).send().await.unwrap(); + + let queue_arn = queue_attributes.attributes().unwrap().get(&QueueArn).unwrap(); + + // subscribing the queue with the alerts + sns_client + .subscribe() + .topic_arn(get_env_var_or_panic("MADARA_ORCHESTRATOR_AWS_SNS_ARN").as_str()) + .protocol("sqs") + .endpoint(queue_arn) + .send() + .await + .unwrap(); + + let message_to_send = "Hello World :)"; + + // Getting sns client from the module + let alerts_client = services.config.alerts(); + // Sending the alert message + alerts_client.send_alert_message(message_to_send.to_string()).await.unwrap(); + + sleep(Duration::from_secs(5)).await; + + // Checking the queue for message + let receive_message_result = sqs_client + .receive_message() + .queue_url(queue_url) + .max_number_of_messages(1) + .send() + .await + .unwrap() + .messages + .unwrap(); + + assert_eq!(receive_message_result.len(), 1, "Alert message length assertion failed"); + assert!(receive_message_result[0].body.clone().unwrap().contains(message_to_send)); +} diff --git a/orchestrator/crates/orchestrator/src/tests/artifacts/fibonacci.zip b/orchestrator/crates/orchestrator/src/tests/artifacts/fibonacci.zip new file mode 100644 index 000000000..b59435368 Binary files /dev/null and b/orchestrator/crates/orchestrator/src/tests/artifacts/fibonacci.zip differ diff --git a/orchestrator/crates/orchestrator/src/tests/common/constants.rs b/orchestrator/crates/orchestrator/src/tests/common/constants.rs new file mode 100644 index 000000000..c1598022b --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/common/constants.rs @@ -0,0 +1,4 @@ +#[allow(dead_code)] +pub const ETHEREUM_MAX_BYTES_PER_BLOB: u64 = 131072; +#[allow(dead_code)] +pub const ETHEREUM_MAX_BLOB_PER_TXN: u64 = 6; diff --git a/orchestrator/crates/orchestrator/src/tests/common/mod.rs b/orchestrator/crates/orchestrator/src/tests/common/mod.rs new file mode 100644 index 000000000..63065c69b --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/common/mod.rs @@ -0,0 +1,181 @@ +pub mod constants; + +use std::collections::HashMap; +use std::sync::Arc; + +use ::uuid::Uuid; +use aws_config::SdkConfig; +use aws_sdk_s3::Client as S3Client; +use aws_sdk_sns::error::SdkError; +use aws_sdk_sns::operation::create_topic::CreateTopicError; +use chrono::{SubsecRound, Utc}; +use mongodb::Client; +use rstest::*; +use serde::Deserialize; +use strum::IntoEnumIterator as _; + +use crate::cli::alert::AlertValidatedArgs; +use crate::cli::database::DatabaseValidatedArgs; +use crate::cli::queue::QueueValidatedArgs; +use crate::cli::storage::StorageValidatedArgs; +use crate::config::ProviderConfig; +use crate::data_storage::aws_s3::{AWSS3ValidatedArgs, AWSS3}; +use crate::data_storage::DataStorage; +use crate::database::mongodb::MongoDb; +use crate::jobs::types::JobStatus::Created; +use crate::jobs::types::JobType::DataSubmission; +use crate::jobs::types::{ExternalId, JobItem}; +use crate::queue::QueueType; + +#[fixture] +pub fn default_job_item() -> JobItem { + JobItem { + id: Uuid::new_v4(), + internal_id: String::from("0"), + job_type: DataSubmission, + status: Created, + external_id: ExternalId::String("0".to_string().into_boxed_str()), + metadata: HashMap::new(), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + } +} + +#[fixture] +pub fn custom_job_item(default_job_item: JobItem, #[default(String::from("0"))] internal_id: String) -> JobItem { + let mut job_item = default_job_item; + job_item.internal_id = internal_id; + + job_item +} + +pub async fn create_sns_arn( + provider_config: Arc, + alert_params: &AlertValidatedArgs, +) -> Result<(), SdkError> { + let AlertValidatedArgs::AWSSNS(aws_sns_params) = alert_params; + let topic_name = aws_sns_params.topic_arn.split(":").last().unwrap(); + let sns_client = get_sns_client(provider_config.get_aws_client_or_panic()).await; + sns_client.create_topic().name(topic_name).send().await?; + Ok(()) +} + +pub async fn get_sns_client(aws_config: &SdkConfig) -> aws_sdk_sns::client::Client { + aws_sdk_sns::Client::new(aws_config) +} + +pub async fn drop_database(database_params: &DatabaseValidatedArgs) -> color_eyre::Result<()> { + match database_params { + DatabaseValidatedArgs::MongoDB(mongodb_params) => { + let db_client: Client = MongoDb::new_with_args(mongodb_params).await.client(); + // dropping all the collection. + // use .collection::("") + // if only particular collection is to be dropped + db_client.database(&mongodb_params.database_name).drop(None).await?; + } + } + Ok(()) +} + +pub async fn delete_storage( + provider_config: Arc, + data_storage_args: &StorageValidatedArgs, +) -> color_eyre::Result<()> { + match data_storage_args { + StorageValidatedArgs::AWSS3(s3_params) => { + let bucket_name = s3_params.bucket_name.clone(); + let aws_config = provider_config.get_aws_client_or_panic(); + + let mut s3_config_builder = aws_sdk_s3::config::Builder::from(aws_config); + // this is necessary for it to work with localstack in test cases + s3_config_builder.set_force_path_style(Some(true)); + let client = S3Client::from_conf(s3_config_builder.build()); + + // Check if bucket exists + match client.head_bucket().bucket(&bucket_name).send().await { + Ok(_) => { + println!("Bucket exists, proceeding with deletion"); + } + Err(e) => { + println!("Bucket '{}' does not exist or is not accessible: {}", &bucket_name, e); + return Ok(()); + } + } + + // First, delete all objects in the bucket (required for non-empty buckets) + let objects = client.list_objects_v2().bucket(&bucket_name).send().await?.contents().to_vec(); + + // If there are objects, delete them + if !objects.is_empty() { + let objects_to_delete: Vec<_> = objects + .iter() + .map(|obj| { + aws_sdk_s3::types::ObjectIdentifier::builder() + .key(obj.key().unwrap_or_default()) + .build() + .expect("Could not build object builder") + }) + .collect(); + + let delete = aws_sdk_s3::types::Delete::builder().set_objects(Some(objects_to_delete)).build()?; + + client.delete_objects().bucket(&bucket_name).delete(delete).send().await?; + } + + // After deleting all objects, delete the bucket itself + client.delete_bucket().bucket(&bucket_name).send().await?; + + Ok(()) + } + } +} + +// SQS structs & functions + +pub async fn create_queues( + provider_config: Arc, + queue_params: &QueueValidatedArgs, +) -> color_eyre::Result<()> { + match queue_params { + QueueValidatedArgs::AWSSQS(aws_sqs_params) => { + let sqs_client = get_sqs_client(provider_config).await; + + // Dropping sqs queues + let list_queues_output = sqs_client.list_queues().send().await?; + let queue_urls = list_queues_output.queue_urls(); + tracing::debug!("Found {} queues", queue_urls.len()); + for queue_url in queue_urls { + match sqs_client.delete_queue().queue_url(queue_url).send().await { + Ok(_) => tracing::debug!("Successfully deleted queue: {}", queue_url), + Err(e) => tracing::error!("Error deleting queue {}: {:?}", queue_url, e), + } + } + + for queue_type in QueueType::iter() { + let queue_name = format!("{}_{}_{}", aws_sqs_params.sqs_prefix, queue_type, aws_sqs_params.sqs_suffix); + sqs_client.create_queue().queue_name(queue_name).send().await?; + } + } + } + Ok(()) +} + +pub async fn get_sqs_client(provider_config: Arc) -> aws_sdk_sqs::Client { + // This function is for localstack. So we can hardcode the region for this as of now. + let config = provider_config.get_aws_client_or_panic(); + aws_sdk_sqs::Client::new(config) +} + +#[derive(Deserialize, Debug)] +pub struct MessagePayloadType { + pub(crate) id: Uuid, +} + +pub async fn get_storage_client( + storage_cfg: &AWSS3ValidatedArgs, + provider_config: Arc, +) -> Box { + let aws_config = provider_config.get_aws_client_or_panic(); + Box::new(AWSS3::new_with_args(storage_cfg, aws_config).await) +} diff --git a/orchestrator/crates/orchestrator/src/tests/config.rs b/orchestrator/crates/orchestrator/src/tests/config.rs new file mode 100644 index 000000000..e46fdc230 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/config.rs @@ -0,0 +1,598 @@ +use std::net::SocketAddr; +use std::str::FromStr as _; +use std::sync::Arc; + +use alloy::primitives::Address; +use axum::Router; +use cairo_vm::types::layout_name::LayoutName; +use da_client_interface::{DaClient, MockDaClient}; +use ethereum_da_client::EthereumDaValidatedArgs; +use ethereum_settlement_client::EthereumSettlementValidatedArgs; +use httpmock::MockServer; +use prover_client_interface::{MockProverClient, ProverClient}; +use settlement_client_interface::{MockSettlementClient, SettlementClient}; +use sharp_service::SharpValidatedArgs; +use starknet::providers::jsonrpc::HttpTransport; +use starknet::providers::JsonRpcClient; +use url::Url; +use utils::env_utils::{get_env_var_optional, get_env_var_or_panic}; + +use super::common::delete_storage; +use crate::alerts::aws_sns::AWSSNSValidatedArgs; +use crate::alerts::Alerts; +use crate::cli::alert::AlertValidatedArgs; +use crate::cli::da::DaValidatedArgs; +use crate::cli::database::DatabaseValidatedArgs; +use crate::cli::prover::ProverValidatedArgs; +use crate::cli::provider::AWSConfigValidatedArgs; +use crate::cli::queue::QueueValidatedArgs; +use crate::cli::settlement::SettlementValidatedArgs; +use crate::cli::snos::SNOSParams; +use crate::cli::storage::StorageValidatedArgs; +use crate::config::{get_aws_config, Config, OrchestratorParams, ProviderConfig, ServiceParams}; +use crate::data_storage::aws_s3::AWSS3ValidatedArgs; +use crate::data_storage::{DataStorage, MockDataStorage}; +use crate::database::mongodb::MongoDBValidatedArgs; +use crate::database::{Database, MockDatabase}; +use crate::queue::sqs::AWSSQSValidatedArgs; +use crate::queue::{MockQueueProvider, QueueProvider}; +use crate::routes::{get_server_url, setup_server, ServerParams}; +use crate::telemetry::InstrumentationParams; +use crate::tests::common::{create_queues, create_sns_arn, drop_database}; + +// Inspiration : https://rust-unofficial.github.io/patterns/patterns/creational/builder.html +// TestConfigBuilder allows to heavily customise the global configs based on the test's requirement. +// Eg: We want to mock only the da client and leave rest to be as it is, use mock_da_client. + +pub enum MockType { + Server(Router), + RpcUrl(Url), + StarknetClient(Arc>), + DaClient(Box), + ProverClient(Box), + SettlementClient(Box), + + Alerts(Box), + Database(Box), + Queue(Box), + Storage(Box), +} + +// By default, everything is on Dummy. +#[derive(Default)] +pub enum ConfigType { + Mock(MockType), + Actual, + #[default] + Dummy, +} + +impl From> for ConfigType { + fn from(client: JsonRpcClient) -> Self { + ConfigType::Mock(MockType::StarknetClient(Arc::new(client))) + } +} + +macro_rules! impl_mock_from { + ($($mock_type:ty => $variant:ident),+) => { + $( + impl From<$mock_type> for ConfigType { + fn from(client: $mock_type) -> Self { + ConfigType::Mock(MockType::$variant(Box::new(client))) + } + } + )+ + }; +} + +impl_mock_from! { + MockProverClient => ProverClient, + MockDatabase => Database, + MockDaClient => DaClient, + MockQueueProvider => Queue, + MockDataStorage => Storage, + MockSettlementClient => SettlementClient +} + +// TestBuilder for Config +pub struct TestConfigBuilder { + /// The RPC url used by the starknet client + starknet_rpc_url_type: ConfigType, + /// The starknet client to get data from the node + starknet_client_type: ConfigType, + /// The DA client to interact with the DA layer + da_client_type: ConfigType, + /// The service that produces proof and registers it on chain + prover_client_type: ConfigType, + /// Settlement client + settlement_client_type: ConfigType, + + /// Alerts client + alerts_type: ConfigType, + /// The database client + database_type: ConfigType, + /// Queue client + queue_type: ConfigType, + /// Storage client + storage_type: ConfigType, + /// API Service + api_server_type: ConfigType, +} + +impl Default for TestConfigBuilder { + fn default() -> Self { + Self::new() + } +} + +pub struct TestConfigBuilderReturns { + pub starknet_server: Option, + pub config: Arc, + pub provider_config: Arc, + pub api_server_address: Option, +} + +impl TestConfigBuilder { + /// Create a new config + pub fn new() -> TestConfigBuilder { + TestConfigBuilder { + starknet_rpc_url_type: ConfigType::default(), + starknet_client_type: ConfigType::default(), + da_client_type: ConfigType::default(), + prover_client_type: ConfigType::default(), + settlement_client_type: ConfigType::default(), + database_type: ConfigType::default(), + queue_type: ConfigType::default(), + storage_type: ConfigType::default(), + alerts_type: ConfigType::default(), + api_server_type: ConfigType::default(), + } + } + + pub fn configure_rpc_url(mut self, starknet_rpc_url_type: ConfigType) -> TestConfigBuilder { + self.starknet_rpc_url_type = starknet_rpc_url_type; + self + } + + pub fn configure_da_client(mut self, da_client_type: ConfigType) -> TestConfigBuilder { + self.da_client_type = da_client_type; + self + } + + pub fn configure_settlement_client(mut self, settlement_client_type: ConfigType) -> TestConfigBuilder { + self.settlement_client_type = settlement_client_type; + self + } + + pub fn configure_starknet_client(mut self, starknet_client_type: ConfigType) -> TestConfigBuilder { + self.starknet_client_type = starknet_client_type; + self + } + + pub fn configure_prover_client(mut self, prover_client_type: ConfigType) -> TestConfigBuilder { + self.prover_client_type = prover_client_type; + self + } + + pub fn configure_alerts(mut self, alert_option: ConfigType) -> TestConfigBuilder { + self.alerts_type = alert_option; + self + } + + pub fn configure_storage_client(mut self, storage_client_option: ConfigType) -> TestConfigBuilder { + self.storage_type = storage_client_option; + self + } + + pub fn configure_queue_client(mut self, queue_type: ConfigType) -> TestConfigBuilder { + self.queue_type = queue_type; + self + } + pub fn configure_database(mut self, database_type: ConfigType) -> TestConfigBuilder { + self.database_type = database_type; + self + } + + pub fn configure_api_server(mut self, api_server_type: ConfigType) -> TestConfigBuilder { + self.api_server_type = api_server_type; + self + } + + pub async fn build(self) -> TestConfigBuilderReturns { + dotenvy::from_filename("../.env.test").expect("Failed to load the .env.test file"); + + let params = get_env_params(); + + let provider_config = Arc::new(ProviderConfig::AWS(Box::new(get_aws_config(¶ms.aws_params).await))); + + let TestConfigBuilder { + starknet_rpc_url_type, + starknet_client_type, + alerts_type, + da_client_type, + prover_client_type, + settlement_client_type, + database_type, + queue_type, + storage_type, + api_server_type, + } = self; + + let (_starknet_rpc_url, starknet_client, starknet_server) = + implement_client::init_starknet_client(starknet_rpc_url_type, starknet_client_type).await; + + // init alerts + let alerts = implement_client::init_alerts(alerts_type, ¶ms.alert_params, provider_config.clone()).await; + + let da_client = implement_client::init_da_client(da_client_type, ¶ms.da_params).await; + + let settlement_client = + implement_client::init_settlement_client(settlement_client_type, ¶ms.settlement_params).await; + + let prover_client = implement_client::init_prover_client(prover_client_type, ¶ms.prover_params).await; + + // Delete the Storage before use + delete_storage(provider_config.clone(), ¶ms.storage_params).await.expect("Could not delete storage"); + + // External Dependencies + let storage = + implement_client::init_storage_client(storage_type, ¶ms.storage_params, provider_config.clone()).await; + + let database = implement_client::init_database(database_type, ¶ms.db_params).await; + + let queue = + implement_client::init_queue_client(queue_type, params.queue_params.clone(), provider_config.clone()).await; + // Deleting and Creating the queues in sqs. + + create_queues(provider_config.clone(), ¶ms.queue_params) + .await + .expect("Not able to delete and create the queues."); + // Deleting the database + drop_database(¶ms.db_params).await.expect("Unable to drop the database."); + // Creating the SNS ARN + create_sns_arn(provider_config.clone(), ¶ms.alert_params).await.expect("Unable to create the sns arn"); + + let config = Arc::new(Config::new( + params.orchestrator_params, + starknet_client, + da_client, + prover_client, + settlement_client, + database, + queue, + storage, + alerts, + )); + + let api_server_address = implement_api_server(api_server_type, config.clone()).await; + + TestConfigBuilderReturns { + starknet_server, + config, + provider_config: provider_config.clone(), + api_server_address, + } + } +} + +async fn implement_api_server(api_server_type: ConfigType, config: Arc) -> Option { + match api_server_type { + ConfigType::Mock(client) => { + if let MockType::Server(router) = client { + let (api_server_url, listener) = get_server_url(config.server_config()).await; + let app = Router::new().merge(router); + + tokio::spawn(async move { + axum::serve(listener, app).await.expect("Failed to start axum server"); + }); + + Some(api_server_url) + } else { + panic!(concat!("Mock client is not a ", stringify!($client_type))); + } + } + ConfigType::Actual => Some(setup_server(config.clone()).await), + ConfigType::Dummy => None, + } +} + +pub mod implement_client { + use std::sync::Arc; + + use da_client_interface::{DaClient, MockDaClient}; + use httpmock::MockServer; + use prover_client_interface::{MockProverClient, ProverClient}; + use settlement_client_interface::{MockSettlementClient, SettlementClient}; + use starknet::providers::jsonrpc::HttpTransport; + use starknet::providers::{JsonRpcClient, Url}; + + use super::{ConfigType, MockType}; + use crate::alerts::{Alerts, MockAlerts}; + use crate::cli::alert::AlertValidatedArgs; + use crate::cli::da::DaValidatedArgs; + use crate::cli::database::DatabaseValidatedArgs; + use crate::cli::prover::ProverValidatedArgs; + use crate::cli::queue::QueueValidatedArgs; + use crate::cli::settlement::SettlementValidatedArgs; + use crate::cli::storage::StorageValidatedArgs; + use crate::config::{ + build_alert_client, build_da_client, build_database_client, build_prover_service, build_queue_client, + build_settlement_client, ProviderConfig, + }; + use crate::data_storage::{DataStorage, MockDataStorage}; + use crate::database::{Database, MockDatabase}; + use crate::queue::{MockQueueProvider, QueueProvider}; + use crate::tests::common::get_storage_client; + + macro_rules! implement_mock_client_conversion { + ($client_type:ident, $mock_variant:ident) => { + impl From for Box { + fn from(client: MockType) -> Self { + if let MockType::$mock_variant(service_client) = client { + service_client + } else { + panic!(concat!("Mock client is not a ", stringify!($client_type))); + } + } + } + }; + } + + implement_mock_client_conversion!(DataStorage, Storage); + implement_mock_client_conversion!(QueueProvider, Queue); + implement_mock_client_conversion!(Database, Database); + implement_mock_client_conversion!(Alerts, Alerts); + implement_mock_client_conversion!(ProverClient, ProverClient); + implement_mock_client_conversion!(SettlementClient, SettlementClient); + implement_mock_client_conversion!(DaClient, DaClient); + + pub(crate) async fn init_da_client(service: ConfigType, da_params: &DaValidatedArgs) -> Box { + match service { + ConfigType::Mock(client) => client.into(), + ConfigType::Actual => build_da_client(da_params).await, + ConfigType::Dummy => Box::new(MockDaClient::new()), + } + } + + pub(crate) async fn init_settlement_client( + service: ConfigType, + settlement_cfg: &SettlementValidatedArgs, + ) -> Box { + match service { + ConfigType::Mock(client) => client.into(), + ConfigType::Actual => { + build_settlement_client(settlement_cfg).await.expect("Failed to initialise settlement_client") + } + ConfigType::Dummy => Box::new(MockSettlementClient::new()), + } + } + + pub(crate) async fn init_prover_client( + service: ConfigType, + prover_params: &ProverValidatedArgs, + ) -> Box { + match service { + ConfigType::Mock(client) => client.into(), + ConfigType::Actual => build_prover_service(prover_params), + ConfigType::Dummy => Box::new(MockProverClient::new()), + } + } + + pub(crate) async fn init_alerts( + service: ConfigType, + alert_params: &AlertValidatedArgs, + provider_config: Arc, + ) -> Box { + match service { + ConfigType::Mock(client) => client.into(), + ConfigType::Actual => build_alert_client(alert_params, provider_config).await, + ConfigType::Dummy => Box::new(MockAlerts::new()), + } + } + + pub(crate) async fn init_storage_client( + service: ConfigType, + storage_cfg: &StorageValidatedArgs, + provider_config: Arc, + ) -> Box { + match service { + ConfigType::Mock(client) => client.into(), + ConfigType::Actual => match storage_cfg { + StorageValidatedArgs::AWSS3(aws_s3_params) => { + let storage = get_storage_client(aws_s3_params, provider_config).await; + storage.as_ref().create_bucket(&aws_s3_params.bucket_name).await.unwrap(); + storage + } + }, + ConfigType::Dummy => Box::new(MockDataStorage::new()), + } + } + + pub(crate) async fn init_queue_client( + service: ConfigType, + queue_params: QueueValidatedArgs, + provider_config: Arc, + ) -> Box { + match service { + ConfigType::Mock(client) => client.into(), + ConfigType::Actual => build_queue_client(&queue_params, provider_config).await, + ConfigType::Dummy => Box::new(MockQueueProvider::new()), + } + } + + pub(crate) async fn init_database( + service: ConfigType, + database_params: &DatabaseValidatedArgs, + ) -> Box { + match service { + ConfigType::Mock(client) => client.into(), + ConfigType::Actual => build_database_client(database_params).await, + ConfigType::Dummy => Box::new(MockDatabase::new()), + } + } + + pub(crate) async fn init_starknet_client( + starknet_rpc_url_type: ConfigType, + service: ConfigType, + ) -> (Url, Arc>, Option) { + fn get_rpc_url() -> (Url, Option) { + let server = MockServer::start(); + let port = server.port(); + let rpc_url = Url::parse(format!("http://localhost:{}", port).as_str()).expect("Failed to parse URL"); + (rpc_url, Some(server)) + } + + fn get_provider(rpc_url: &Url) -> Arc> { + Arc::new(JsonRpcClient::new(HttpTransport::new(rpc_url.clone()))) + } + + let (rpc_url, server) = match starknet_rpc_url_type { + ConfigType::Mock(url_type) => { + if let MockType::RpcUrl(starknet_rpc_url) = url_type { + (starknet_rpc_url, None) + } else { + panic!("Mock Rpc URL is not an URL"); + } + } + ConfigType::Actual | ConfigType::Dummy => get_rpc_url(), + }; + + let starknet_client = match service { + ConfigType::Mock(client) => { + if let MockType::StarknetClient(starknet_client) = client { + starknet_client + } else { + panic!("Mock client is not a Starknet Client"); + } + } + ConfigType::Actual | ConfigType::Dummy => get_provider(&rpc_url), + }; + + (rpc_url, starknet_client, server) + } +} + +struct EnvParams { + aws_params: AWSConfigValidatedArgs, + alert_params: AlertValidatedArgs, + queue_params: QueueValidatedArgs, + storage_params: StorageValidatedArgs, + db_params: DatabaseValidatedArgs, + da_params: DaValidatedArgs, + settlement_params: SettlementValidatedArgs, + prover_params: ProverValidatedArgs, + orchestrator_params: OrchestratorParams, + #[allow(dead_code)] + instrumentation_params: InstrumentationParams, +} + +fn get_env_params() -> EnvParams { + let db_params = DatabaseValidatedArgs::MongoDB(MongoDBValidatedArgs { + connection_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_MONGODB_CONNECTION_URL")) + .expect("Invalid MongoDB connection URL"), + database_name: get_env_var_or_panic("MADARA_ORCHESTRATOR_DATABASE_NAME"), + }); + + let storage_params = StorageValidatedArgs::AWSS3(AWSS3ValidatedArgs { + bucket_name: get_env_var_or_panic("MADARA_ORCHESTRATOR_AWS_S3_BUCKET_NAME"), + }); + + let queue_params = QueueValidatedArgs::AWSSQS(AWSSQSValidatedArgs { + queue_base_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_SQS_BASE_QUEUE_URL")) + .expect("Invalid queue base URL"), + sqs_prefix: get_env_var_or_panic("MADARA_ORCHESTRATOR_SQS_PREFIX"), + sqs_suffix: get_env_var_or_panic("MADARA_ORCHESTRATOR_SQS_SUFFIX"), + }); + + let aws_params = AWSConfigValidatedArgs { + aws_access_key_id: get_env_var_or_panic("AWS_ACCESS_KEY_ID"), + aws_secret_access_key: get_env_var_or_panic("AWS_SECRET_ACCESS_KEY"), + aws_region: get_env_var_or_panic("AWS_REGION"), + }; + + let da_params = DaValidatedArgs::Ethereum(EthereumDaValidatedArgs { + ethereum_da_rpc_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_ETHEREUM_DA_RPC_URL")) + .expect("Failed to parse MADARA_ORCHESTRATOR_ETHEREUM_RPC_URL"), + }); + + let alert_params = AlertValidatedArgs::AWSSNS(AWSSNSValidatedArgs { + topic_arn: get_env_var_or_panic("MADARA_ORCHESTRATOR_AWS_SNS_ARN"), + }); + + let settlement_params = SettlementValidatedArgs::Ethereum(EthereumSettlementValidatedArgs { + ethereum_rpc_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_ETHEREUM_SETTLEMENT_RPC_URL")) + .expect("Failed to parse MADARA_ORCHESTRATOR_ETHEREUM_RPC_URL"), + ethereum_private_key: get_env_var_or_panic("MADARA_ORCHESTRATOR_ETHEREUM_PRIVATE_KEY"), + l1_core_contract_address: Address::from_str(&get_env_var_or_panic( + "MADARA_ORCHESTRATOR_L1_CORE_CONTRACT_ADDRESS", + )) + .expect("Invalid L1 core contract address"), + starknet_operator_address: Address::from_str(&get_env_var_or_panic( + "MADARA_ORCHESTRATOR_STARKNET_OPERATOR_ADDRESS", + )) + .expect("Invalid Starknet operator address"), + }); + + let snos_config = SNOSParams { + rpc_for_snos: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_RPC_FOR_SNOS")) + .expect("Failed to parse MADARA_ORCHESTRATOR_RPC_FOR_SNOS"), + }; + + let env = get_env_var_optional("MADARA_ORCHESTRATOR_MAX_BLOCK_NO_TO_PROCESS").expect("Couldn't get max block"); + let max_block: Option = env.and_then(|s| if s.is_empty() { None } else { Some(s.parse::().unwrap()) }); + + let env = get_env_var_optional("MADARA_ORCHESTRATOR_MIN_BLOCK_NO_TO_PROCESS").expect("Couldn't get min block"); + let min_block: Option = env.and_then(|s| if s.is_empty() { None } else { Some(s.parse::().unwrap()) }); + + let service_config = ServiceParams { max_block_to_process: max_block, min_block_to_process: min_block }; + + let server_config = ServerParams { + host: get_env_var_or_panic("MADARA_ORCHESTRATOR_HOST"), + port: get_env_var_or_panic("MADARA_ORCHESTRATOR_PORT") + .parse() + .expect("Failed to parse MADARA_ORCHESTRATOR_PORT"), + }; + + let orchestrator_params = OrchestratorParams { + madara_rpc_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_MADARA_RPC_URL")) + .expect("Failed to parse MADARA_ORCHESTRATOR_MADARA_RPC_URL"), + snos_config, + service_config, + server_config, + snos_layout_name: LayoutName::all_cairo, + prover_layout_name: LayoutName::dynamic, + }; + + let instrumentation_params = InstrumentationParams { + otel_service_name: get_env_var_or_panic("MADARA_ORCHESTRATOR_OTEL_SERVICE_NAME"), + otel_collector_endpoint: get_env_var_optional("MADARA_ORCHESTRATOR_OTEL_COLLECTOR_ENDPOINT") + .expect("Couldn't get otel collector endpoint") + .map(|url| Url::parse(&url).expect("Failed to parse MADARA_ORCHESTRATOR_OTEL_COLLECTOR_ENDPOINT")), + }; + + let prover_params = ProverValidatedArgs::Sharp(SharpValidatedArgs { + sharp_customer_id: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_CUSTOMER_ID"), + sharp_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_URL")) + .expect("Failed to parse MADARA_ORCHESTRATOR_SHARP_URL"), + sharp_user_crt: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_USER_CRT"), + sharp_user_key: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_USER_KEY"), + sharp_rpc_node_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_RPC_NODE_URL")) + .expect("Failed to parse MADARA_ORCHESTRATOR_SHARP_RPC_NODE_URL"), + sharp_server_crt: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_SERVER_CRT"), + sharp_proof_layout: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_PROOF_LAYOUT"), + gps_verifier_contract_address: get_env_var_or_panic("MADARA_ORCHESTRATOR_GPS_VERIFIER_CONTRACT_ADDRESS"), + }); + + EnvParams { + aws_params, + alert_params, + queue_params, + storage_params, + db_params, + da_params, + settlement_params, + prover_params, + instrumentation_params, + orchestrator_params, + } +} diff --git a/orchestrator/crates/orchestrator/src/tests/data_storage/mod.rs b/orchestrator/crates/orchestrator/src/tests/data_storage/mod.rs new file mode 100644 index 000000000..cd7d12fdf --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/data_storage/mod.rs @@ -0,0 +1,36 @@ +use bytes::Bytes; +use rstest::rstest; +use serde_json::json; + +use crate::tests::config::{ConfigType, TestConfigBuilder}; + +/// This test checks the ability to put and get data from AWS S3 using `AWSS3`. +/// It puts JSON data into a test bucket and retrieves it, verifying the data +/// matches what was originally uploaded. +/// Dependencies: `color_eyre`, `dotenvy`, `rstest`, `tokio`, `serde_json`. +#[rstest] +#[tokio::test] +async fn test_put_and_get_data_s3() -> color_eyre::Result<()> { + let services = TestConfigBuilder::new().configure_storage_client(ConfigType::Actual).build().await; + + let s3_client = services.config.storage(); + + let mock_data = json!( + { + "body" : "hello world. hello world." + } + ); + let json_bytes = serde_json::to_vec(&mock_data)?; + let key = "test_data.txt"; + + // putting test data on key : "test_data.txt" + s3_client.put_data(Bytes::from(json_bytes), key).await.expect("Unable to put data into the bucket."); + + // getting the data from key : "test_data.txt" + let data = s3_client.get_data(key).await.expect("Unable to get the data from the bucket."); + let received_json: serde_json::Value = serde_json::from_slice(&data)?; + + assert_eq!(received_json, mock_data); + + Ok(()) +} diff --git a/orchestrator/crates/orchestrator/src/tests/database/mod.rs b/orchestrator/crates/orchestrator/src/tests/database/mod.rs new file mode 100644 index 000000000..77c64f887 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/database/mod.rs @@ -0,0 +1,251 @@ +use std::collections::HashMap; + +use chrono::{SubsecRound, Utc}; +use rstest::*; +use uuid::Uuid; + +use crate::jobs::types::{ExternalId, JobItem, JobItemUpdates, JobStatus, JobType}; +use crate::jobs::{increment_key_in_metadata, JobError}; +use crate::tests::config::{ConfigType, TestConfigBuilder}; + +#[rstest] +#[tokio::test] +async fn test_database_connection() -> color_eyre::Result<()> { + let _services = TestConfigBuilder::new().build().await; + Ok(()) +} + +/// Tests for `create_job` operation in database trait. +/// Creates 3 jobs and asserts them. +#[rstest] +#[tokio::test] +async fn database_create_job_works() { + let services = TestConfigBuilder::new().configure_database(ConfigType::Actual).build().await; + let config = services.config; + let database_client = config.database(); + + let job_vec = [ + build_job_item(JobType::ProofCreation, JobStatus::Created, 1), + build_job_item(JobType::ProofCreation, JobStatus::Created, 2), + build_job_item(JobType::ProofCreation, JobStatus::Created, 3), + ]; + + database_client.create_job(job_vec[0].clone()).await.unwrap(); + database_client.create_job(job_vec[1].clone()).await.unwrap(); + database_client.create_job(job_vec[2].clone()).await.unwrap(); + + let get_job_1 = + database_client.get_job_by_internal_id_and_type("1", &JobType::ProofCreation).await.unwrap().unwrap(); + let get_job_2 = + database_client.get_job_by_internal_id_and_type("2", &JobType::ProofCreation).await.unwrap().unwrap(); + let get_job_3 = + database_client.get_job_by_internal_id_and_type("3", &JobType::ProofCreation).await.unwrap().unwrap(); + + assert_eq!(get_job_1, job_vec[0].clone()); + assert_eq!(get_job_2, job_vec[1].clone()); + assert_eq!(get_job_3, job_vec[2].clone()); +} + +/// Tests for `create_job` operation in database trait. +/// Creates a job with the same job type and internal id as an existing job. +/// Should fail. +#[rstest] +#[tokio::test] +async fn database_create_job_with_job_exists_fails() { + let services: crate::tests::config::TestConfigBuilderReturns = + TestConfigBuilder::new().configure_database(ConfigType::Actual).build().await; + let config = services.config; + let database_client = config.database(); + + let job_one = build_job_item(JobType::ProofCreation, JobStatus::Created, 1); + + // same job type and internal id + let job_two = build_job_item(JobType::ProofCreation, JobStatus::LockedForProcessing, 1); + + database_client.create_job(job_one).await.unwrap(); + + let result = database_client.create_job(job_two).await; + + assert_eq!( + result.unwrap_err(), + JobError::JobAlreadyExists { internal_id: "1".to_string(), job_type: JobType::ProofCreation } + ); + // fetch job to see status wasn't updated + let fetched_job = + database_client.get_job_by_internal_id_and_type("1", &JobType::ProofCreation).await.unwrap().unwrap(); + assert_eq!(fetched_job.status, JobStatus::Created); +} + +/// Test for `get_jobs_without_successor` operation in database trait. +/// Creates jobs in the following sequence : +/// +/// - Creates 3 snos run jobs with completed status +/// +/// - Creates 2 proof creation jobs with succession of the 2 snos jobs +/// +/// - Should return one snos job without the successor job of proof creation +#[rstest] +#[case(true)] +#[case(false)] +#[tokio::test] +async fn database_get_jobs_without_successor_works(#[case] is_successor: bool) { + let services = TestConfigBuilder::new().configure_database(ConfigType::Actual).build().await; + let config = services.config; + let database_client = config.database(); + + let job_vec = [ + build_job_item(JobType::SnosRun, JobStatus::Completed, 1), + build_job_item(JobType::SnosRun, JobStatus::Completed, 2), + build_job_item(JobType::SnosRun, JobStatus::Completed, 3), + build_job_item(JobType::ProofCreation, JobStatus::Created, 1), + build_job_item(JobType::ProofCreation, JobStatus::Created, 2), + build_job_item(JobType::ProofCreation, JobStatus::Created, 3), + ]; + + database_client.create_job(job_vec[0].clone()).await.unwrap(); + database_client.create_job(job_vec[1].clone()).await.unwrap(); + database_client.create_job(job_vec[2].clone()).await.unwrap(); + database_client.create_job(job_vec[3].clone()).await.unwrap(); + database_client.create_job(job_vec[5].clone()).await.unwrap(); + if is_successor { + database_client.create_job(job_vec[4].clone()).await.unwrap(); + } + + let jobs_without_successor = database_client + .get_jobs_without_successor(JobType::SnosRun, JobStatus::Completed, JobType::ProofCreation) + .await + .unwrap(); + + if is_successor { + assert_eq!(jobs_without_successor.len(), 0, "Expected number of jobs assertion failed."); + } else { + assert_eq!(jobs_without_successor.len(), 1, "Expected number of jobs assertion failed."); + assert_eq!(jobs_without_successor[0], job_vec[1], "Expected job assertion failed."); + } +} + +/// Test for `get_latest_job_by_type` operation in database trait. +/// Creates the jobs in following sequence : +/// +/// - Creates 3 successful jobs. +/// +/// - Should return the last successful job +#[rstest] +#[tokio::test] +async fn database_get_last_successful_job_by_type_works() { + let services = TestConfigBuilder::new().configure_database(ConfigType::Actual).build().await; + let config = services.config; + let database_client = config.database(); + + let job_vec = [ + build_job_item(JobType::SnosRun, JobStatus::Completed, 1), + build_job_item(JobType::SnosRun, JobStatus::Completed, 2), + build_job_item(JobType::SnosRun, JobStatus::Completed, 3), + ]; + + database_client.create_job(job_vec[0].clone()).await.unwrap(); + database_client.create_job(job_vec[1].clone()).await.unwrap(); + database_client.create_job(job_vec[2].clone()).await.unwrap(); + + let last_successful_job = database_client.get_latest_job_by_type(JobType::SnosRun).await.unwrap().unwrap(); + + assert_eq!(last_successful_job, job_vec[2], "Expected job assertion failed"); +} + +/// Test for `get_jobs_after_internal_id_by_job_type` operation in database trait. +/// Creates the jobs in following sequence : +/// +/// - Creates 5 successful jobs. +/// +/// - Should return the jobs after internal id +#[rstest] +#[tokio::test] +async fn database_get_jobs_after_internal_id_by_job_type_works() { + let services = TestConfigBuilder::new().configure_database(ConfigType::Actual).build().await; + let config = services.config; + let database_client = config.database(); + + let job_vec = [ + build_job_item(JobType::SnosRun, JobStatus::Completed, 1), + build_job_item(JobType::SnosRun, JobStatus::Completed, 2), + build_job_item(JobType::ProofCreation, JobStatus::Completed, 3), + build_job_item(JobType::ProofCreation, JobStatus::Completed, 4), + build_job_item(JobType::SnosRun, JobStatus::Completed, 5), + build_job_item(JobType::SnosRun, JobStatus::Completed, 6), + ]; + + database_client.create_job(job_vec[0].clone()).await.unwrap(); + database_client.create_job(job_vec[1].clone()).await.unwrap(); + database_client.create_job(job_vec[2].clone()).await.unwrap(); + database_client.create_job(job_vec[3].clone()).await.unwrap(); + database_client.create_job(job_vec[4].clone()).await.unwrap(); + database_client.create_job(job_vec[5].clone()).await.unwrap(); + + let jobs_after_internal_id = database_client + .get_jobs_after_internal_id_by_job_type(JobType::SnosRun, JobStatus::Completed, "2".to_string()) + .await + .unwrap(); + + assert_eq!(jobs_after_internal_id.len(), 2, "Number of jobs assertion failed"); + assert_eq!(jobs_after_internal_id[0], job_vec[4]); + assert_eq!(jobs_after_internal_id[1], job_vec[5]); +} + +#[rstest] +#[tokio::test] +async fn database_test_update_job() { + let services = TestConfigBuilder::new().configure_database(ConfigType::Actual).build().await; + let config = services.config; + let database_client = config.database(); + + let job = build_job_item(JobType::DataSubmission, JobStatus::Created, 456); + database_client.create_job(job.clone()).await.unwrap(); + + let job_id = job.id; + + let metadata = HashMap::new(); + let key = "test_key"; + let updated_metadata = increment_key_in_metadata(&metadata, key).unwrap(); + + let job_cloned = job.clone(); + let updated_job = database_client + .update_job( + &job_cloned, + JobItemUpdates::new() + .update_status(JobStatus::LockedForProcessing) + .update_metadata(updated_metadata) + .build(), + ) + .await; + + if let Some(job_after_updates_db) = database_client.get_job_by_id(job_id).await.unwrap() { + // check if job is updated + assert_eq!(JobType::DataSubmission, job_after_updates_db.job_type); + assert_eq!(JobStatus::LockedForProcessing, job_after_updates_db.status); + assert_eq!(1, job_after_updates_db.version); + assert_eq!(456.to_string(), job_after_updates_db.internal_id); + + // check if value returned by `update_job` is the correct one + // and matches the one in database + assert_eq!(updated_job.unwrap(), job_after_updates_db); + } else { + panic!("Job not found in Database.") + } +} + +// Test Util Functions +// ========================================== + +pub fn build_job_item(job_type: JobType, job_status: JobStatus, internal_id: u64) -> JobItem { + JobItem { + id: Uuid::new_v4(), + internal_id: internal_id.to_string(), + job_type, + status: job_status, + external_id: ExternalId::Number(0), + metadata: Default::default(), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + } +} diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/mod.rs b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/mod.rs new file mode 100644 index 000000000..92766a343 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/mod.rs @@ -0,0 +1,236 @@ +use std::collections::HashMap; + +use assert_matches::assert_matches; +use chrono::{SubsecRound, Utc}; +use color_eyre::eyre::eyre; +use da_client_interface::MockDaClient; +use mockall::predicate::always; +use rstest::rstest; +use serde_json::json; +use starknet::core::types::{Felt, MaybePendingStateUpdate, PendingStateUpdate, StateDiff}; +use uuid::Uuid; + +use crate::jobs::da_job::test::{get_nonce_attached, read_state_update_from_file}; +use crate::jobs::da_job::{DaError, DaJob}; +use crate::jobs::types::{ExternalId, JobItem, JobStatus, JobType}; +use crate::jobs::{Job, JobError}; +use crate::tests::config::{ConfigType, TestConfigBuilder}; + +/// Tests the DA Job's handling of a blob length exceeding the supported size. +/// It mocks the DA client to simulate the environment and expects an error on job processing. +/// Validates the error message for exceeding blob limits against the expected output. +/// Asserts correct behavior by comparing the received and expected error messages. +#[rstest] +#[case( + "src/tests/jobs/da_job/test_data/state_update/638353.txt", + "src/tests/jobs/da_job/test_data/nonces/638353.txt", + "63853", + 110 +)] +#[tokio::test] +async fn test_da_job_process_job_failure_on_small_blob_size( + #[case] state_update_file: String, + #[case] nonces_file: String, + #[case] internal_id: String, + #[case] current_blob_length: u64, +) { + // Mocking DA client calls + let mut da_client = MockDaClient::new(); + // dummy state will have more than 1200 bytes + da_client.expect_max_blob_per_txn().with().returning(|| 1); + da_client.expect_max_bytes_per_blob().with().returning(|| 1200); + + let services = TestConfigBuilder::new() + .configure_starknet_client(ConfigType::Actual) + .configure_storage_client(ConfigType::Actual) + .configure_da_client(da_client.into()) + .build() + .await; + + let state_update = read_state_update_from_file(state_update_file.as_str()).expect("issue while reading"); + + let state_update = MaybePendingStateUpdate::Update(state_update); + let state_update = serde_json::to_value(&state_update).unwrap(); + let response = json!({ "id": 640641,"jsonrpc":"2.0","result": state_update }); + let server = services.starknet_server.unwrap(); + get_nonce_attached(&server, nonces_file.as_str()); + + let state_update_mock = server.mock(|when, then| { + when.path("/").body_includes("starknet_getStateUpdate"); + then.status(200).body(serde_json::to_vec(&response).unwrap()); + }); + + let max_blob_per_txn = services.config.da_client().max_blob_per_txn().await; + + let response = DaJob + .process_job( + services.config, + &mut JobItem { + id: Uuid::default(), + internal_id: internal_id.to_string(), + job_type: JobType::DataSubmission, + status: JobStatus::Created, + external_id: ExternalId::String(internal_id.to_string().into_boxed_str()), + metadata: HashMap::default(), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + }, + ) + .await; + + assert_matches!(response, + Err(e) => { + let err = DaError::MaxBlobsLimitExceeded { max_blob_per_txn, current_blob_length, block_no: internal_id.to_string(), job_id: Uuid::default() }; + let expected_error = JobError::DaJobError(err); + assert_eq!(e.to_string(), expected_error.to_string()); + } + ); + + state_update_mock.assert(); + // let _ = drop_database().await; +} + +/// Tests DA Job processing failure when a block is in pending state. +/// Simulates a pending block state update and expects job processing to fail. +/// Validates that the error message matches the expected pending state error. +/// Asserts correct behavior by comparing the received and expected error messages. +#[rstest] +#[tokio::test] +async fn test_da_job_process_job_failure_on_pending_block() { + let services = TestConfigBuilder::new() + .configure_starknet_client(ConfigType::Actual) + .configure_da_client(ConfigType::Actual) + .build() + .await; + let server = services.starknet_server.unwrap(); + let internal_id = "1"; + + let pending_state_update = MaybePendingStateUpdate::PendingUpdate(PendingStateUpdate { + old_root: Felt::default(), + state_diff: StateDiff { + storage_diffs: vec![], + deprecated_declared_classes: vec![], + declared_classes: vec![], + deployed_contracts: vec![], + replaced_classes: vec![], + nonces: vec![], + }, + }); + + let pending_state_update = serde_json::to_value(&pending_state_update).unwrap(); + let response = json!({ "id": 1,"jsonrpc":"2.0","result": pending_state_update }); + + let state_update_mock = server.mock(|when, then| { + when.path("/").body_includes("starknet_getStateUpdate"); + then.status(200).body(serde_json::to_vec(&response).unwrap()); + }); + + let response = DaJob + .process_job( + services.config, + &mut JobItem { + id: Uuid::default(), + internal_id: internal_id.to_string(), + job_type: JobType::DataSubmission, + status: JobStatus::Created, + external_id: ExternalId::String("1".to_string().into_boxed_str()), + metadata: HashMap::default(), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + }, + ) + .await; + + assert_matches!(response, + Err(e) => { + let err = DaError::BlockPending { + block_no: internal_id.to_string(), + job_id: Uuid::default() + }; + let expected_error = JobError::DaJobError(err); + assert_eq!(e.to_string(), expected_error.to_string()); + } + ); + + state_update_mock.assert(); +} + +/// Tests successful DA Job processing with valid state update and nonces files. +/// Mocks DA client to simulate environment and expects job to process without errors. +/// Validates the successful job processing by checking the return message "Done". +/// Asserts correct behavior by comparing the received and expected success messages. +#[rstest] +#[case( + "src/tests/jobs/da_job/test_data/state_update/631861.txt", + "src/tests/jobs/da_job/test_data/nonces/631861.txt", + "631861" +)] +#[case( + "src/tests/jobs/da_job/test_data/state_update/640641.txt", + "src/tests/jobs/da_job/test_data/nonces/640641.txt", + "640641" +)] +#[case( + "src/tests/jobs/da_job/test_data/state_update/638353.txt", + "src/tests/jobs/da_job/test_data/nonces/638353.txt", + "638353" +)] +#[tokio::test] +async fn test_da_job_process_job_success( + #[case] state_update_file: String, + #[case] nonces_file: String, + #[case] internal_id: String, +) { + // Mocking DA client calls + let mut da_client = MockDaClient::new(); + da_client.expect_publish_state_diff().with(always(), always()).returning(|_, _| Ok("Done".to_string())); + da_client.expect_max_blob_per_txn().with().returning(|| 6); + da_client.expect_max_bytes_per_blob().with().returning(|| 131072); + + let services = TestConfigBuilder::new() + .configure_starknet_client(ConfigType::Actual) + .configure_storage_client(ConfigType::Actual) + .configure_da_client(da_client.into()) + .build() + .await; + let server = services.starknet_server.unwrap(); + + let state_update = read_state_update_from_file(state_update_file.as_str()).expect("issue while reading"); + + let state_update = serde_json::to_value(&state_update).unwrap(); + let response = json!({ "id": 1,"jsonrpc":"2.0","result": state_update }); + + get_nonce_attached(&server, nonces_file.as_str()); + + let state_update_mock = server.mock(|when, then| { + when.path("/").body_includes("starknet_getStateUpdate"); + then.status(200).body(serde_json::to_vec(&response).unwrap()); + }); + + let response = DaJob + .process_job( + services.config, + &mut JobItem { + id: Uuid::default(), + internal_id: internal_id.to_string(), + job_type: JobType::DataSubmission, + status: JobStatus::Created, + external_id: ExternalId::String(internal_id.to_string().into_boxed_str()), + metadata: HashMap::default(), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + }, + ) + .await; + + assert_matches!(response, + Ok(msg) => { + assert_eq!(msg, eyre!("Done").to_string()); + } + ); + + state_update_mock.assert(); +} diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/178.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/178.txt new file mode 100644 index 000000000..28bfc4300 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/178.txt @@ -0,0 +1,10 @@ +[ + { + "nonce": "0", + "address": "2087021424722619777119509474943472645767659996348769578120564519014510906823" + }, + { + "nonce": "0", + "address": "2227221089168209069826941066512062806409572016263164839237971044383978786453" + } +] \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/631861.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/631861.txt new file mode 100644 index 000000000..426afebb5 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/631861.txt @@ -0,0 +1,402 @@ +[ + { + "nonce": "0", + "address": "1078414861859439447609625051561318159181441818767577627526072576752980407822" + }, + { + "nonce": "0", + "address": "452209534934676154545654294308816651152428356935311062044743377288405172223" + }, + { + "nonce": "0", + "address": "3531573890894924400865460246450296108386933607128947513796992875108120052684" + }, + { + "nonce": "0", + "address": "2026277432377627077586592265423680345970848104991533515191680388006789313670" + }, + { + "nonce": "0", + "address": "1277217965843581233333988622875284192225997060671560837344569928083650344407" + }, + { + "nonce": "0", + "address": "3474088382524593236593691353434573269787843126994459351962719659810832209584" + }, + { + "nonce": "0", + "address": "3097244274214451443812369799678450109525654513946223778904994245611212438561" + }, + { + "nonce": "0", + "address": "3400579619170575237661820936955458778290675638290218625343607608443669417041" + }, + { + "nonce": "0", + "address": "2967174050445828070862061291903957281356339325911846264948421066253307482040" + }, + { + "nonce": "0", + "address": "1976116259487849312492355695320380942153209908997880779234707344294669942230" + }, + { + "nonce": "0", + "address": "1401227761463704270887644213836074299174240908273187808525853276343372400144" + }, + { + "nonce": "0", + "address": "1193793980142665566352544204440095113564265817118985616828039423177970071331" + }, + { + "nonce": "0", + "address": "467359278613506166151492726487752216059557962335532790304583050955123345960" + }, + { + "nonce": "0", + "address": "2059890653241907014298051114158398411337197157497483583226756461621595170918" + }, + { + "nonce": "0", + "address": "2745521300648034389696100607119642721684545306010728640981295661701882434821" + }, + { + "nonce": "0", + "address": "357377807133552052137632408610159849823535864279362609249128572320190447849" + }, + { + "nonce": "0", + "address": "3448734635787261550493195052928707940110263776324799542614930198120348162814" + }, + { + "nonce": "0", + "address": "3360429071221291256145051242936610342072288034069561673798122581686523359584" + }, + { + "nonce": "0", + "address": "3510517396796286814268654491166771226468744332760007374502919894689866497051" + }, + { + "nonce": "0", + "address": "385291772725090318157700937045086145273563247402457518748197066808155336371" + }, + { + "nonce": "0", + "address": "2651722879560814669652856477504602945267782506345687644982244092997176673782" + }, + { + "nonce": "0", + "address": "3488796095165551003812490975976509991633322013578458084167226256699277019952" + }, + { + "nonce": "0", + "address": "2461707722432395661708797885477397117007458536930774680416205805182417362616" + }, + { + "nonce": "0", + "address": "986382741099760837858161977603608913692450477470314113973101234487799157690" + }, + { + "nonce": "0", + "address": "185737424201398497167344167959067540566229443245220632491079834800567702806" + }, + { + "nonce": "0", + "address": "531844617968007980255795943865827999416134907993349077857216690873976391347" + }, + { + "nonce": "0", + "address": "344702662651677763925571133806699366796354681611808305628309404215461286549" + }, + { + "nonce": "0", + "address": "1886212889629631188189497155848883534738756148921111726686756987927630157522" + }, + { + "nonce": "0", + "address": "980641348758169158361564622616439166824113829417782360965256920656439161142" + }, + { + "nonce": "0", + "address": "99953545193082752183435261109354688502337763128908126143571746207059739637" + }, + { + "nonce": "0", + "address": "902492192278866739529390795567852665941148840926620678225438377550865106375" + }, + { + "nonce": "0", + "address": "2067224444038557195126515926228472195421901344546362610838227351433966642521" + }, + { + "nonce": "0", + "address": "742098049447282014672707612999368439203060756664780413368469616469299558010" + }, + { + "nonce": "0", + "address": "2400576541583162171491329523465582800749623016517020617078861506813412344019" + }, + { + "nonce": "0", + "address": "2087021424722619777119509474943472645767659996348769578120564519014510906823" + }, + { + "nonce": "0", + "address": "590819146674503166204135088463766346093745200688482655814515797828741941216" + }, + { + "nonce": "0", + "address": "2463696710263687514312235271344625047914153091771074572193028493970608265766" + }, + { + "nonce": "0", + "address": "2009894490435840142178314390393166646092438090257831307886760648929397478285" + }, + { + "nonce": "0", + "address": "2452964821141376376188535471786148775559498704049643240005573050663143271865" + }, + { + "nonce": "0", + "address": "2115387842960180390771412833368041781238577038972704247610917371518652651822" + }, + { + "nonce": "0", + "address": "517125115337780208081305629975956820263165114138824120841711207270231259977" + }, + { + "nonce": "0", + "address": "1981730265309066675196797336659669198174237715678236202495736994838932697026" + }, + { + "nonce": "0", + "address": "156118869544040767245479469729111978302124225586688183800009809053137844788" + }, + { + "nonce": "0", + "address": "2657678813130651106237595745441882116014929351909938101087448266452771807498" + }, + { + "nonce": "0", + "address": "2947101050413422186244031688162234654120722792901344923492705480573156879217" + }, + { + "nonce": "0", + "address": "35376072886180067490287169574242355415597810598679164251098184990598674959" + }, + { + "nonce": "0", + "address": "3516706803567795880065363201117600445892705351190069347826351694284452644275" + }, + { + "nonce": "0", + "address": "2149625499377050772775701191274921578103398273298955620360611655307104287237" + }, + { + "nonce": "0", + "address": "1865087347327005138825574120292363544645653480122826741425112488593153699332" + }, + { + "nonce": "0", + "address": "2469411803551208597379411124426031687239604825807346010918820473142021538594" + }, + { + "nonce": "0", + "address": "3402229046757193601316783875185919795671751915608236081584642072534314060571" + }, + { + "nonce": "0", + "address": "2717349590864410652496932888856273935362961331863672154604742488330120146156" + }, + { + "nonce": "0", + "address": "849735304348759709475919610214130244834292383849724551243964145413846342474" + }, + { + "nonce": "0", + "address": "3511963714829536106138334141541785908292521339852176217618325161743427162856" + }, + { + "nonce": "0", + "address": "773419650418337517107856101029931836850298774485466530128029681791734852785" + }, + { + "nonce": "0", + "address": "246930652783857782251838442103670756662366630621379341567502181154550565" + }, + { + "nonce": "0", + "address": "1096063446119013674494851733362477374612561912725755267587153593342670178779" + }, + { + "nonce": "0", + "address": "2406604840635476116508864530409543252709415104408551614769695111366646916810" + }, + { + "nonce": "0", + "address": "2570074710284622165207709623074680889692386679857632833645125496339340884204" + }, + { + "nonce": "0", + "address": "328966343566237043309945568093517764777620651224252503849760382161582042740" + }, + { + "nonce": "0", + "address": "1191739825916763637398323283749467777082897405437026733332881387444406755085" + }, + { + "nonce": "0", + "address": "2368576823837625528275935341135881659748932889268308403712618244410713532584" + }, + { + "nonce": "0", + "address": "1806018566677800621296032626439935115720767031724401394291089442012247156652" + }, + { + "nonce": "0", + "address": "1220912351037686956437549503486932817498748049677954586861289448026439836930" + }, + { + "nonce": "0", + "address": "632379065319338617515966994952624744522517246735712772724220857486592430828" + }, + { + "nonce": "0", + "address": "260554670605351557363208786823408343698854205589535046316598289977314513002" + }, + { + "nonce": "0", + "address": "2676793183253016177558903552952681290945937055709901086098444368528066152998" + }, + { + "nonce": "0", + "address": "2928090864209347248632212701907351157138541054198256853910825911696982413349" + }, + { + "nonce": "0", + "address": "1143756140483512977306866099840619314083599348905487658858492414522001993842" + }, + { + "nonce": "0", + "address": "3498130911219199049896567985399357292206889985411816585223208585503655329458" + }, + { + "nonce": "0", + "address": "3566610155365147154324739583776814726866268750579802300410398109296673304888" + }, + { + "nonce": "0", + "address": "228127240820201420112041055406192968922581942321662179607685569770048015434" + }, + { + "nonce": "0", + "address": "89969248537275856283909992903723960799405901172202770579163235044958208013" + }, + { + "nonce": "0", + "address": "1202089834814778579992154020333959781277480478747022471664051891421849487195" + }, + { + "nonce": "0", + "address": "1731102696175450693660616588606527072502442294166709213537079421435028118495" + }, + { + "nonce": "0", + "address": "1367689708448914284672019642877558660977148620222660050732556563503440731967" + }, + { + "nonce": "0", + "address": "1063672327331692371962180059205743251817202674328358947388162955887510343301" + }, + { + "nonce": "0", + "address": "2534681784017457087083809392510965130335560357182539279475941175006939624703" + }, + { + "nonce": "0", + "address": "3397542457055923809608815617683394077887553486608236413585486568648893320463" + }, + { + "nonce": "0", + "address": "2756519339868571593845682371256567329742307687641799998393353981756413385489" + }, + { + "nonce": "0", + "address": "2929798209522087394435116511849855244007824340817907300971221861926901771189" + }, + { + "nonce": "0", + "address": "2516079785748928841031449405181158678427633691355770916662146946819282621080" + }, + { + "nonce": "0", + "address": "3344662365413012717818732637518271827201391817997708353449773951692365623062" + }, + { + "nonce": "0", + "address": "797744374023959379046995466760970152157277175543892553019308889884638166276" + }, + { + "nonce": "0", + "address": "239115573244622630475874661282348313001102055343048706084366471503041806318" + }, + { + "nonce": "0", + "address": "158098919692956613592021320609952044916245725306097615271255138786123" + }, + { + "nonce": "0", + "address": "2465603276682798545330519786396646503623379206332158215270676817277464621874" + }, + { + "nonce": "0", + "address": "605788353767591490920830120891224727523939494312496042095152826386451208561" + }, + { + "nonce": "0", + "address": "2822384147535692580096452720173643476564545006536762268901337132689451489873" + }, + { + "nonce": "0", + "address": "1324073548176637888451367019974595613611629394021371614355795953553419332841" + }, + { + "nonce": "0", + "address": "2067328389187055618280650078875645532094077784855137341496529282555987314926" + }, + { + "nonce": "0", + "address": "2177149292491018417715774000056994188369467207221503622945886811766623165290" + }, + { + "nonce": "0", + "address": "551033985716712226396975647262975163712790823656635803622449210473325782228" + }, + { + "nonce": "0", + "address": "2650041872375786387356098295345461303918671315832493531436339392722753333679" + }, + { + "nonce": "0", + "address": "154405441650623340433846791446600333432749382000511499440420329763992121427" + }, + { + "nonce": "0", + "address": "482876828289395875538132910579471976747156502741786274588755116050381611281" + }, + { + "nonce": "0", + "address": "1127127985082931600365091568237226022424161400013612705565004766574153679823" + }, + { + "nonce": "0", + "address": "358810199151218248631742943895848912302453816508596486318701657214701944486" + }, + { + "nonce": "0", + "address": "767139313849702659792252270287386897918274623891989685767061166001717260390" + }, + { + "nonce": "0", + "address": "3211610579223146608467672259501658327132751513527555762223906522463236489012" + } +] \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/638353.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/638353.txt new file mode 100644 index 000000000..a2609f027 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/638353.txt @@ -0,0 +1,418 @@ +[ + { + "nonce": "0", + "address": "32416933474568815786185716414500492385160648520361391988925861090296858951" + }, + { + "nonce": "0", + "address": "154405441650623340433846791446600333432749382000511499440420329763992121427" + }, + { + "nonce": "0", + "address": "386637881367554327502030939466181550573781042801491876825919799346281497341" + }, + { + "nonce": "0", + "address": "605788353767591490920830120891224727523939494312496042095152826386451208561" + }, + { + "nonce": "0", + "address": "3531573890894924400865460246450296108386933607128947513796992875108120052684" + }, + { + "nonce": "0", + "address": "1199474686661334779816742994209041601323124009406982751961336092596397213939" + }, + { + "nonce": "0", + "address": "117151125621628647048612755493336806422296300639605904280905034401074255152" + }, + { + "nonce": "0", + "address": "3397542457055923809608815617683394077887553486608236413585486568648893320463" + }, + { + "nonce": "0", + "address": "632379065319338617515966994952624744522517246735712772724220857486592430828" + }, + { + "nonce": "0", + "address": "2062841868931543889731389716871014203640892799928551677360671335808440599047" + }, + { + "nonce": "0", + "address": "3474088382524593236593691353434573269787843126994459351962719659810832209584" + }, + { + "nonce": "0", + "address": "1728390004745303803871786398135109189087723573384222519806720656006147872132" + }, + { + "nonce": "0", + "address": "2026277432377627077586592265423680345970848104991533515191680388006789313670" + }, + { + "nonce": "0", + "address": "1919341413504682506464537888213340599793174343085035697059721110464975114204" + }, + { + "nonce": "0", + "address": "1119322158174803137003213090716390589133387785032911749814121362024296759139" + }, + { + "nonce": "0", + "address": "1957257877838915116496970724122436799495084173164252781402667496349619051651" + }, + { + "nonce": "0", + "address": "1163899603561904257316751882094315056650453632598100914273723143878043603787" + }, + { + "nonce": "0", + "address": "197008432744435784323773923243051262081539619489232774616086529489512140607" + }, + { + "nonce": "0", + "address": "328966343566237043309945568093517764777620651224252503849760382161582042740" + }, + { + "nonce": "0", + "address": "849735304348759709475919610214130244834292383849724551243964145413846342474" + }, + { + "nonce": "0", + "address": "2947101050413422186244031688162234654120722792901344923492705480573156879217" + }, + { + "nonce": "0", + "address": "1485561256522250023629199381189666078104683178461161016312495755820290789883" + }, + { + "nonce": "0", + "address": "1351953765401048596775042171909571296239313332174810497062306448302407294120" + }, + { + "nonce": "0", + "address": "986382741099760837858161977603608913692450477470314113973101234487799157690" + }, + { + "nonce": "0", + "address": "228127240820201420112041055406192968922581942321662179607685569770048015434" + }, + { + "nonce": "0", + "address": "3097244274214451443812369799678450109525654513946223778904994245611212438561" + }, + { + "nonce": "0", + "address": "1731102696175450693660616588606527072502442294166709213537079421435028118495" + }, + { + "nonce": "0", + "address": "3511963714829536106138334141541785908292521339852176217618325161743427162856" + }, + { + "nonce": "50", + "address": "243657618414669914011145943102955267494709494027555782211179696865191736660" + }, + { + "nonce": "0", + "address": "3129696904557584746198533927826403923157869138083471122452306368486244419818" + }, + { + "nonce": "0", + "address": "84386485312597548087364031012269478474953862610275474628345266950365750193" + }, + { + "nonce": "0", + "address": "2415823199904469648032036908129273273822726258718407751062694545490343490733" + }, + { + "nonce": "0", + "address": "1096063446119013674494851733362477374612561912725755267587153593342670178779" + }, + { + "nonce": "0", + "address": "3448734635787261550493195052928707940110263776324799542614930198120348162814" + }, + { + "nonce": "0", + "address": "2400576541583162171491329523465582800749623016517020617078861506813412344019" + }, + { + "nonce": "0", + "address": "1776610974553266536717504268803161112599528041518081589232635289436890033716" + }, + { + "nonce": "0", + "address": "2676793183253016177558903552952681290945937055709901086098444368528066152998" + }, + { + "nonce": "0", + "address": "1774163329918184045174723755882940573459094282134028642212645236766718908557" + }, + { + "nonce": "0", + "address": "246930652783857782251838442103670756662366630621379341567502181154550565" + }, + { + "nonce": "0", + "address": "3514630581899620394023720316173285995185795244438627070795407057066400873751" + }, + { + "nonce": "0", + "address": "3113055759842693714705912288183360876902651713297320062412275678246738621162" + }, + { + "nonce": "0", + "address": "2822384147535692580096452720173643476564545006536762268901337132689451489873" + }, + { + "nonce": "0", + "address": "3510517396796286814268654491166771226468744332760007374502919894689866497051" + }, + { + "nonce": "0", + "address": "1344783291195458433134746768179499037239965342346420189340107958388524507298" + }, + { + "nonce": "0", + "address": "2149625499377050772775701191274921578103398273298955620360611655307104287237" + }, + { + "nonce": "0", + "address": "1078414861859439447609625051561318159181441818767577627526072576752980407822" + }, + { + "nonce": "0", + "address": "2461707722432395661708797885477397117007458536930774680416205805182417362616" + }, + { + "nonce": "0", + "address": "1636817934745692989525650622720372466259891176242702978913032653742197806031" + }, + { + "nonce": "0", + "address": "187666463736235705531655690493265869818387228550857376831926888137388714370" + }, + { + "nonce": "0", + "address": "156118869544040767245479469729111978302124225586688183800009809053137844788" + }, + { + "nonce": "0", + "address": "2487912913868014004131904966926849406549842942812205187711794077420293443995" + }, + { + "nonce": "0", + "address": "1202089834814778579992154020333959781277480478747022471664051891421849487195" + }, + { + "nonce": "0", + "address": "452209534934676154545654294308816651152428356935311062044743377288405172223" + }, + { + "nonce": "0", + "address": "797744374023959379046995466760970152157277175543892553019308889884638166276" + }, + { + "nonce": "0", + "address": "1528277645207366432319530343137345932871946722249227153360549456392012982017" + }, + { + "nonce": "0", + "address": "1646344781686230427539922488538206808502962260644773964071315199920479660468" + }, + { + "nonce": "0", + "address": "482876828289395875538132910579471976747156502741786274588755116050381611281" + }, + { + "nonce": "0", + "address": "2756519339868571593845682371256567329742307687641799998393353981756413385489" + }, + { + "nonce": "0", + "address": "773419650418337517107856101029931836850298774485466530128029681791734852785" + }, + { + "nonce": "0", + "address": "2534681784017457087083809392510965130335560357182539279475941175006939624703" + }, + { + "nonce": "0", + "address": "2177149292491018417715774000056994188369467207221503622945886811766623165290" + }, + { + "nonce": "0", + "address": "902492192278866739529390795567852665941148840926620678225438377550865106375" + }, + { + "nonce": "0", + "address": "749218216907526448106961230145280420157326261847892319953188943455768938698" + }, + { + "nonce": "0", + "address": "2337672690457931797530286518190617997785751509389014694194294999210403718995" + }, + { + "nonce": "0", + "address": "1981730265309066675196797336659669198174237715678236202495736994838932697026" + }, + { + "nonce": "0", + "address": "3402229046757193601316783875185919795671751915608236081584642072534314060571" + }, + { + "nonce": "0", + "address": "1313483252473652617370481401696736945256311754574056154835834081336890201317" + }, + { + "nonce": "0", + "address": "3560544290383284875895843407818666212551549127928194833030969858674896060439" + }, + { + "nonce": "0", + "address": "2651722879560814669652856477504602945267782506345687644982244092997176673782" + }, + { + "nonce": "0", + "address": "358810199151218248631742943895848912302453816508596486318701657214701944486" + }, + { + "nonce": "0", + "address": "2684779351044579298266156468603164481381165938036371405527343093627708654870" + }, + { + "nonce": "0", + "address": "1015624604860009736492882760932230734006188110025461025338548195310228738069" + }, + { + "nonce": "0", + "address": "2929798209522087394435116511849855244007824340817907300971221861926901771189" + }, + { + "nonce": "0", + "address": "1886212889629631188189497155848883534738756148921111726686756987927630157522" + }, + { + "nonce": "0", + "address": "3488796095165551003812490975976509991633322013578458084167226256699277019952" + }, + { + "nonce": "0", + "address": "3498130911219199049896567985399357292206889985411816585223208585503655329458" + }, + { + "nonce": "0", + "address": "1063672327331692371962180059205743251817202674328358947388162955887510343301" + }, + { + "nonce": "0", + "address": "1497504634566801971524996600159726836026314278980042017340979269624030500096" + }, + { + "nonce": "0", + "address": "1659187719307827857045459595042174661285800386334435165665220069597062043043" + }, + { + "nonce": "0", + "address": "357377807133552052137632408610159849823535864279362609249128572320190447849" + }, + { + "nonce": "0", + "address": "344702662651677763925571133806699366796354681611808305628309404215461286549" + }, + { + "nonce": "0", + "address": "1836378155083282300084908222370567282668708468047049332614666013751405064399" + }, + { + "nonce": "0", + "address": "3070551624032525735639486449226326340553891847749571453203253553767662484369" + }, + { + "nonce": "0", + "address": "531844617968007980255795943865827999416134907993349077857216690873976391347" + }, + { + "nonce": "0", + "address": "2967174050445828070862061291903957281356339325911846264948421066253307482040" + }, + { + "nonce": "0", + "address": "2368576823837625528275935341135881659748932889268308403712618244410713532584" + }, + { + "nonce": "0", + "address": "1143756140483512977306866099840619314083599348905487658858492414522001993842" + }, + { + "nonce": "0", + "address": "3073879520084117328558327289156699541322708844922113370850966564816365701582" + }, + { + "nonce": "0", + "address": "517125115337780208081305629975956820263165114138824120841711207270231259977" + }, + { + "nonce": "0", + "address": "1324073548176637888451367019974595613611629394021371614355795953553419332841" + }, + { + "nonce": "0", + "address": "2009894490435840142178314390393166646092438090257831307886760648929397478285" + }, + { + "nonce": "0", + "address": "645567122627909410309130890438198578631705980378564142660458651942256271475" + }, + { + "nonce": "0", + "address": "676028716993851673397918835131328481427799807821756534219643869301313604743" + }, + { + "nonce": "0", + "address": "385291772725090318157700937045086145273563247402457518748197066808155336371" + }, + { + "nonce": "0", + "address": "1043509900732839028729188649128862291533509021300380179023898113558258165087" + }, + { + "nonce": "0", + "address": "2087021424722619777119509474943472645767659996348769578120564519014510906823" + }, + { + "nonce": "0", + "address": "3360429071221291256145051242936610342072288034069561673798122581686523359584" + }, + { + "nonce": "0", + "address": "2115387842960180390771412833368041781238577038972704247610917371518652651822" + }, + { + "nonce": "0", + "address": "1806018566677800621296032626439935115720767031724401394291089442012247156652" + }, + { + "nonce": "0", + "address": "89969248537275856283909992903723960799405901172202770579163235044958208013" + }, + { + "nonce": "0", + "address": "3336557299217359540889218399395382930861244837578703722882119358960459245041" + }, + { + "nonce": "0", + "address": "158098919692956613592021320609952044916245725306097615271255138786123" + }, + { + "nonce": "0", + "address": "2192185015552815667795098006747700517719605501427252033035433606745772754846" + }, + { + "nonce": "0", + "address": "1506554825755162363007002908214505071223211034174338201079348622056444444379" + } +] \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/640641.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/640641.txt new file mode 100644 index 000000000..aeb2f3d20 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/640641.txt @@ -0,0 +1,298 @@ +[ + { + "nonce": "0", + "address": "2756519339868571593845682371256567329742307687641799998393353981756413385489" + }, + { + "nonce": "0", + "address": "1078414861859439447609625051561318159181441818767577627526072576752980407822" + }, + { + "nonce": "0", + "address": "3474088382524593236593691353434573269787843126994459351962719659810832209584" + }, + { + "nonce": "0", + "address": "3336557299217359540889218399395382930861244837578703722882119358960459245041" + }, + { + "nonce": "0", + "address": "1651864268743598396351932168069581879768745041736651650426840782316957641536" + }, + { + "nonce": "0", + "address": "328966343566237043309945568093517764777620651224252503849760382161582042740" + }, + { + "nonce": "0", + "address": "482876828289395875538132910579471976747156502741786274588755116050381611281" + }, + { + "nonce": "0", + "address": "2174638511841737981141519476379213046554268517094967496121318408370098406833" + }, + { + "nonce": "0", + "address": "1626324986968478379894282511819569681839311328504325485934824633099222643384" + }, + { + "nonce": "0", + "address": "797744374023959379046995466760970152157277175543892553019308889884638166276" + }, + { + "nonce": "0", + "address": "2149625499377050772775701191274921578103398273298955620360611655307104287237" + }, + { + "nonce": "0", + "address": "3184679645331683678361487436750389401945961028766822347718324796995863414444" + }, + { + "nonce": "0", + "address": "3097244274214451443812369799678450109525654513946223778904994245611212438561" + }, + { + "nonce": "0", + "address": "2087021424722619777119509474943472645767659996348769578120564519014510906823" + }, + { + "nonce": "0", + "address": "2461707722432395661708797885477397117007458536930774680416205805182417362616" + }, + { + "nonce": "0", + "address": "2487912913868014004131904966926849406549842942812205187711794077420293443995" + }, + { + "nonce": "0", + "address": "467359278613506166151492726487752216059557962335532790304583050955123345960" + }, + { + "nonce": "0", + "address": "3566610155365147154324739583776814726866268750579802300410398109296673304888" + }, + { + "nonce": "0", + "address": "3360429071221291256145051242936610342072288034069561673798122581686523359584" + }, + { + "nonce": "0", + "address": "1367689708448914284672019642877558660977148620222660050732556563503440731967" + }, + { + "nonce": "0", + "address": "99953545193082752183435261109354688502337763128908126143571746207059739637" + }, + { + "nonce": "0", + "address": "385291772725090318157700937045086145273563247402457518748197066808155336371" + }, + { + "nonce": "0", + "address": "3488796095165551003812490975976509991633322013578458084167226256699277019952" + }, + { + "nonce": "0", + "address": "773419650418337517107856101029931836850298774485466530128029681791734852785" + }, + { + "nonce": "a", + "address": "239662865362034240643029484020826104800516253213877576945698001454992152761" + }, + { + "nonce": "0", + "address": "1199474686661334779816742994209041601323124009406982751961336092596397213939" + }, + { + "nonce": "0", + "address": "605788353767591490920830120891224727523939494312496042095152826386451208561" + }, + { + "nonce": "0", + "address": "3510517396796286814268654491166771226468744332760007374502919894689866497051" + }, + { + "nonce": "0", + "address": "1568538064569296151120717337874994342269033619163918827596131911140466613315" + }, + { + "nonce": "0", + "address": "2147911918386623644320329480187345575474771335266286588528709681487522463112" + }, + { + "nonce": "0", + "address": "1919341413504682506464537888213340599793174343085035697059721110464975114204" + }, + { + "nonce": "0", + "address": "2896215007816913101204591922707886176613292767310712225803138945175428753472" + }, + { + "nonce": "0", + "address": "3465020591089214488237802255922702944453422871487424535478479325435370352792" + }, + { + "nonce": "0", + "address": "1733438914292927427592798998616205494755138905981290109803065036744695516485" + }, + { + "nonce": "0", + "address": "1063672327331692371962180059205743251817202674328358947388162955887510343301" + }, + { + "nonce": "0", + "address": "3448734635787261550493195052928707940110263776324799542614930198120348162814" + }, + { + "nonce": "0", + "address": "1796504035551416850734347987128941049677212422103194704393786005603862882363" + }, + { + "nonce": "0", + "address": "158098919692956613592021320609952044916245725306097615271255138786123" + }, + { + "nonce": "0", + "address": "3211610579223146608467672259501658327132751513527555762223906522463236489012" + }, + { + "nonce": "0", + "address": "3511963714829536106138334141541785908292521339852176217618325161743427162856" + }, + { + "nonce": "0", + "address": "681591622674259252584122333275643442742636616507698762578453346816358147406" + }, + { + "nonce": "0", + "address": "367197906183797993130452795711865096328910691665422431405262502990466134059" + }, + { + "nonce": "0", + "address": "2009894490435840142178314390393166646092438090257831307886760648929397478285" + }, + { + "nonce": "0", + "address": "849735304348759709475919610214130244834292383849724551243964145413846342474" + }, + { + "nonce": "0", + "address": "246930652783857782251838442103670756662366630621379341567502181154550565" + }, + { + "nonce": "0", + "address": "3326961915761608684706172774354379779379643886375680974453167906880707787399" + }, + { + "nonce": "0", + "address": "1976116259487849312492355695320380942153209908997880779234707344294669942230" + }, + { + "nonce": "0", + "address": "2026277432377627077586592265423680345970848104991533515191680388006789313670" + }, + { + "nonce": "0", + "address": "1806018566677800621296032626439935115720767031724401394291089442012247156652" + }, + { + "nonce": "0", + "address": "2967174050445828070862061291903957281356339325911846264948421066253307482040" + }, + { + "nonce": "0", + "address": "2463696710263687514312235271344625047914153091771074572193028493970608265766" + }, + { + "nonce": "0", + "address": "2391855390141926402188931803023969197482576403727974830640533611372823518343" + }, + { + "nonce": "0", + "address": "1096063446119013674494851733362477374612561912725755267587153593342670178779" + }, + { + "nonce": "0", + "address": "3397542457055923809608815617683394077887553486608236413585486568648893320463" + }, + { + "nonce": "0", + "address": "1528277645207366432319530343137345932871946722249227153360549456392012982017" + }, + { + "nonce": "0", + "address": "1140790416516487235284749729006194805491036082760056818436046390206340016132" + }, + { + "nonce": "0", + "address": "185737424201398497167344167959067540566229443245220632491079834800567702806" + }, + { + "nonce": "0", + "address": "2534681784017457087083809392510965130335560357182539279475941175006939624703" + }, + { + "nonce": "0", + "address": "1875092539893345853371440789429987021301333344184875064228393690949091490954" + }, + { + "nonce": "0", + "address": "1945434431647477294659488336740620390245450834173332944478093705883196440992" + }, + { + "nonce": "0", + "address": "2177149292491018417715774000056994188369467207221503622945886811766623165290" + }, + { + "nonce": "0", + "address": "1202089834814778579992154020333959781277480478747022471664051891421849487195" + }, + { + "nonce": "0", + "address": "3372329944899944392684131936583374718916877916659855075261729287362933904898" + }, + { + "nonce": "0", + "address": "1143756140483512977306866099840619314083599348905487658858492414522001993842" + }, + { + "nonce": "0", + "address": "3552561185959056098217379568866936222609231681440444612160267197237526226777" + }, + { + "nonce": "0", + "address": "2947101050413422186244031688162234654120722792901344923492705480573156879217" + }, + { + "nonce": "0", + "address": "902492192278866739529390795567852665941148840926620678225438377550865106375" + }, + { + "nonce": "0", + "address": "1981730265309066675196797336659669198174237715678236202495736994838932697026" + }, + { + "nonce": "0", + "address": "2368576823837625528275935341135881659748932889268308403712618244410713532584" + }, + { + "nonce": "0", + "address": "1776610974553266536717504268803161112599528041518081589232635289436890033716" + }, + { + "nonce": "0", + "address": "1324073548176637888451367019974595613611629394021371614355795953553419332841" + }, + { + "nonce": "0", + "address": "156118869544040767245479469729111978302124225586688183800009809053137844788" + }, + { + "nonce": "0", + "address": "1191739825916763637398323283749467777082897405437026733332881387444406755085" + }, + { + "nonce": "0", + "address": "1957257877838915116496970724122436799495084173164252781402667496349619051651" + } +] \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/671070.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/671070.txt new file mode 100644 index 000000000..9fea89dc4 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/nonces/671070.txt @@ -0,0 +1,306 @@ +[ + { + "nonce": "10fc", + "address": "2249938217234002180483398376999334415579117092651200649747350732054475404301" + }, + { + "nonce": "0", + "address": "907709602385872895650575252431334011593986664640892864229936608645761948241" + }, + { + "nonce": "0", + "address": "2469411803551208597379411124426031687239604825807346010918820473142021538594" + }, + { + "nonce": "0", + "address": "1708260486737591819144035989647092165440582255047059932029714033661494821955" + }, + { + "nonce": "0", + "address": "1064810762463079168266112036380506103494161142652213083564982330455653187638" + }, + { + "nonce": "0", + "address": "3470361472081161015265605905526548436749553008398672817099789630357407698991" + }, + { + "nonce": "0", + "address": "3110282501378377883892935712622594915546071167514065118187492129119880884608" + }, + { + "nonce": "0", + "address": "3326961915761608684706172774354379779379643886375680974453167906880707787399" + }, + { + "nonce": "0", + "address": "1053670159510643005233429474416743801288893072160649223279960242754366678511" + }, + { + "nonce": "0", + "address": "880071607951670340241439032059815349850569087772357509679766079479292450847" + }, + { + "nonce": "0", + "address": "494667282832202516923361092240386813112300876514492947900343625188611998663" + }, + { + "nonce": "0", + "address": "2087021424722619777119509474943472645767659996348769578120564519014510906823" + }, + { + "nonce": "0", + "address": "2947101050413422186244031688162234654120722792901344923492705480573156879217" + }, + { + "nonce": "0", + "address": "1348575710282238088238036253818286691116053642788662164447289887881477572210" + }, + { + "nonce": "0", + "address": "158098919692956613592021320609952044916245725306097615271255138786123" + }, + { + "nonce": "0", + "address": "654342388182999933335510137305150344917550649843077476520165782525461596334" + }, + { + "nonce": "0", + "address": "216427556619826931576158470513102088188363477061982048606671748490764579530" + }, + { + "nonce": "0", + "address": "2318336240404265168748811394097691648061012293902787885032380785000909578095" + }, + { + "nonce": "20e6", + "address": "2914153965505187127035962647526667949300286346635303560476937134866841908155" + }, + { + "nonce": "0", + "address": "3492558690262082749186647210263132297408240468432999244510335000494821766050" + }, + { + "nonce": "503", + "address": "934314804757974406249496007427855425554552903528324388451483187946743476571" + }, + { + "nonce": "0", + "address": "482876828289395875538132910579471976747156502741786274588755116050381611281" + }, + { + "nonce": "0", + "address": "3236936304126741631551566903730667604709131246927656911566714107137273746231" + }, + { + "nonce": "0", + "address": "2149625499377050772775701191274921578103398273298955620360611655307104287237" + }, + { + "nonce": "0", + "address": "2534681784017457087083809392510965130335560357182539279475941175006939624703" + }, + { + "nonce": "0", + "address": "2463696710263687514312235271344625047914153091771074572193028493970608265766" + }, + { + "nonce": "0", + "address": "154405441650623340433846791446600333432749382000511499440420329763992121427" + }, + { + "nonce": "0", + "address": "1096063446119013674494851733362477374612561912725755267587153593342670178779" + }, + { + "nonce": "0", + "address": "2009894490435840142178314390393166646092438090257831307886760648929397478285" + }, + { + "nonce": "0", + "address": "2368576823837625528275935341135881659748932889268308403712618244410713532584" + }, + { + "nonce": "0", + "address": "2756519339868571593845682371256567329742307687641799998393353981756413385489" + }, + { + "nonce": "c0", + "address": "2753113806940174612646848075329853619778353394161740751706215135665057614515" + }, + { + "nonce": "0", + "address": "2311869805003812326553862683527996885064212807009169311639707141242822503961" + }, + { + "nonce": "0", + "address": "2967174050445828070862061291903957281356339325911846264948421066253307482040" + }, + { + "nonce": "0", + "address": "452209534934676154545654294308816651152428356935311062044743377288405172223" + }, + { + "nonce": "0", + "address": "1996028776274380133173023797698809051260720108905017428866940273598654803547" + }, + { + "nonce": "0", + "address": "1919341413504682506464537888213340599793174343085035697059721110464975114204" + }, + { + "nonce": "0", + "address": "2192185015552815667795098006747700517719605501427252033035433606745772754846" + }, + { + "nonce": "0", + "address": "344702662651677763925571133806699366796354681611808305628309404215461286549" + }, + { + "nonce": "0", + "address": "1870782032401865699841042440557421334501185380455816302978703906714118081524" + }, + { + "nonce": "0", + "address": "348406700183097323816755487765774404685763984831379505444198486353907712007" + }, + { + "nonce": "0", + "address": "2657678813130651106237595745441882116014929351909938101087448266452771807498" + }, + { + "nonce": "0", + "address": "2684779351044579298266156468603164481381165938036371405527343093627708654870" + }, + { + "nonce": "0", + "address": "3061110240019781426614513706891013014409971804538604658939851740524605265341" + }, + { + "nonce": "0", + "address": "3510517396796286814268654491166771226468744332760007374502919894689866497051" + }, + { + "nonce": "0", + "address": "3574546401479673078972677826775758426010964166763841372226119747353992695611" + }, + { + "nonce": "0", + "address": "1886212889629631188189497155848883534738756148921111726686756987927630157522" + }, + { + "nonce": "0", + "address": "3552561185959056098217379568866936222609231681440444612160267197237526226777" + }, + { + "nonce": "0", + "address": "3488796095165551003812490975976509991633322013578458084167226256699277019952" + }, + { + "nonce": "0", + "address": "1819353555469595227517916936825661354718292416257758257603220179173570271504" + }, + { + "nonce": "0", + "address": "228127240820201420112041055406192968922581942321662179607685569770048015434" + }, + { + "nonce": "0", + "address": "1202089834814778579992154020333959781277480478747022471664051891421849487195" + }, + { + "nonce": "0", + "address": "2255232768192109874584402976950672322268656998516955788942273316147447166435" + }, + { + "nonce": "0", + "address": "2461707722432395661708797885477397117007458536930774680416205805182417362616" + }, + { + "nonce": "0", + "address": "2929798209522087394435116511849855244007824340817907300971221861926901771189" + }, + { + "nonce": "0", + "address": "1976116259487849312492355695320380942153209908997880779234707344294669942230" + }, + { + "nonce": "0", + "address": "1856796092917222948479589883654595957487336270077871672322232564294067596983" + }, + { + "nonce": "0", + "address": "2374218501325025632703358547356078646989088119815079613574483696352472513252" + }, + { + "nonce": "17b", + "address": "523436294823910352998435030827319622575181239038514921309135559240881909891" + }, + { + "nonce": "0", + "address": "623771064731051534960895807108128105569542048211887818130149775326813130896" + }, + { + "nonce": "0", + "address": "2520086548783824114097192081904152894180691673462258183477698498177688128119" + }, + { + "nonce": "0", + "address": "1020752885302876858903522144217552148857053455463577119549085796907177205620" + }, + { + "nonce": "0", + "address": "253833690511380329558320257732495435410215086843294023411497999554458622174" + }, + { + "nonce": "0", + "address": "902492192278866739529390795567852665941148840926620678225438377550865106375" + }, + { + "nonce": "1d96", + "address": "1256434642634214488244139085896225607458457118223011442891103334963752090953" + }, + { + "nonce": "0", + "address": "432413111078121093985280996900378608894697186702150941876612199423333263943" + }, + { + "nonce": "0", + "address": "369634768025895292331242127995173344493277109110044398655865284904828102983" + }, + { + "nonce": "0", + "address": "1796504035551416850734347987128941049677212422103194704393786005603862882363" + }, + { + "nonce": "0", + "address": "128046835014687671764701071103697248442191699810634328684734697634499627675" + }, + { + "nonce": "0", + "address": "2339053739194465705536630256700315114085033127119452965299183410782350666322" + }, + { + "nonce": "0", + "address": "2822384147535692580096452720173643476564545006536762268901337132689451489873" + }, + { + "nonce": "0", + "address": "1981730265309066675196797336659669198174237715678236202495736994838932697026" + }, + { + "nonce": "0", + "address": "2368624700656479057373428915964163118551191083298200582350189476815925979168" + }, + { + "nonce": "0", + "address": "765508223075466859908478596968784063848608155123650120994833756754594687431" + }, + { + "nonce": "0", + "address": "3211610579223146608467672259501658327132751513527555762223906522463236489012" + }, + { + "nonce": "0", + "address": "84386485312597548087364031012269478474953862610275474628345266950365750193" + } +] \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/178.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/178.txt new file mode 100644 index 000000000..e5de8a273 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/178.txt @@ -0,0 +1,68 @@ +{ + "block_hash": "0x385bbbcaada37fbd2be407d02479a86faf632294161451159433f1687afa80a", + "old_root": "0x39cc0b3f01d1b4b06a57f1e77d0be8093b9be560380a5b88bc2fefd9932d129", + "new_root": "0x249a0f2b937b67ec50021fe7520937d3b8f94564e6d1f935d3b009bbbc45645", + "state_diff": { + "storage_diffs": [ + { + "address": "0x49d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7", + "storage_entries": [ + { + "key": "0x68803f24598877e0945e64be0baadefff792986d2c5a2b6e7c8aa334d1c0e52", + "value": "0xf43fc2c03458b02" + }, + { + "key": "0x709c6298f62a9011c05499b9f5ccce4ecc3e0753e48096edef484c409c25181", + "value": "0x189f07e" + } + ] + }, + { + "address": "0x4ec8ffda0fb4db938740a4fa54b3962852b8af5cf323b3d5f6f7ee102258e95", + "storage_entries": [ + { + "key": "0x2b1577440dd7bedf920cb6de2f9fc6bf7ba98c78c85a3fa1f8311aac95e1759", + "value": "0x7c" + }, + { + "key": "0x3b56d7f084d750efc42861fede4548333aff235c695a18e4747698157962a0b", + "value": "0x3c3af083273bcb2bedc6d7f38055d79a" + }, + { + "key": "0x3b56d7f084d750efc42861fede4548333aff235c695a18e4747698157962a0a", + "value": "0x3a4ab88085f30eb952f488e972dc0035" + } + ] + }, + { + "address": "0x1", + "storage_entries": [ + { + "key": "0xa8", + "value": "0x2ba8421b4e16ae6c77ba5d61446527e4320d2a57465f11147386a3b2f5f7758" + } + ] + } + ], + "deprecated_declared_classes": [], + "declared_classes": [ + { + "class_hash": "0x29ed6994318833535323c098faa060a20120dc763c281dbe5fb9541a7eaf6c5", + "compiled_class_hash": "0xb0ea1eb7b2bbd82380f7b1237ea2fb047719137bf2a7d019dd5e468accc007" + } + ], + "deployed_contracts": [ + { + "address": "0x4220016ed41491dce777cc24efc06a1e88722c3e70506313f504573bce64627", + "class_hash": "0x29ed6994318833535323c098faa060a20120dc763c281dbe5fb9541a7eaf6c5" + } + ], + "replaced_classes": [], + "nonces": [ + { + "contract_address": "0x4fe5eea46caa0a1f344fafce82b39d66b552f00d3cd12e89073ef4b4ab37860", + "nonce": "0xd0" + } + ] + } +} \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/631861.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/631861.txt new file mode 100644 index 000000000..768a393a0 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/631861.txt @@ -0,0 +1,9061 @@ +{ + "block_hash": "0x4f1ab28d98fd954f81615e8a7df9556cf9a0f8c1a6be5ad97ce77cac7d68dad", + "old_root": "0x3fda6c8901c2a890de89e86ba7a2192b8d825e48b2f8dcf925a292ba76b339a", + "new_root": "0x4943efe1cc2d0a9c70fadbf8cce18b02da7a8a0150c7487ce13262f57f1cbec", + "state_diff": { + "storage_diffs": [ + { + "address": "0x76def79cc9a3a375779c163ad12996f99fbeb4acd68d7041529159bde897160", + "storage_entries": [ + { + "key": "0x7c6d844c097ac08e155d40d383b174c05ce53b193d74caf6e557deadfa76bad", + "value": "0x0" + }, + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x4c5492be9a3fedc1cae0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x18787538fcf564eebd3ac" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x13e6155aa2b8acac7a0f3" + }, + { + "key": "0x3c61642f9789768773d4805df5ac9999ca7fcee76e19be256106e35ebc65435", + "value": "0xfffe5644e51618a1" + } + ] + }, + { + "address": "0x784a8ec64af2b45694b94875fe6adbb57fadf9e196aa1aa1d144d163d0d8c51", + "storage_entries": [ + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x7eb095cc" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c5", + "value": "0x9a8e7916a3672934856adb88" + }, + { + "key": "0x332df419aa058c3f4b36acbf5af4b7e8e3d4dd58918d5f0ab2841741e7b55c2", + "value": "0x66192543" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x3e36d9f3099f64ae8b" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20d", + "value": "0xb12f7ee796c95214dcffe83ef319693" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20e", + "value": "0x1e015c258706" + } + ] + }, + { + "address": "0xdad8ec75fed95ae14af953652a34b091c22115cad72363a11740ed9d463bc5", + "storage_entries": [] + }, + { + "address": "0x11a52a41f09a5e1826d30b971b9898360c57c3130b72ba4da14ef48ed7bf911", + "storage_entries": [] + }, + { + "address": "0x5ae9c593b2bef20a8d69ae7abf1e6da551481f9efd83d03a9f05b6d7c9a78ec", + "storage_entries": [ + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x2b75f4cc7dad8767a53a" + }, + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x75d596f5bebd78fe" + } + ] + }, + { + "address": "0x1f323f00c8cb6ac46ac737c63fa35332cb8570796ec58c0a9d5588eee8e8e34", + "storage_entries": [] + }, + { + "address": "0x70be75dc4976ebbafa7b52357fb6e8883289c9c6ba9e8ec513310407580b9f2", + "storage_entries": [] + }, + { + "address": "0x112f818cf76294b20d5ab035502f6c4d19e2d34984e84ba2187129463a3fcd6", + "storage_entries": [] + }, + { + "address": "0x5a745313f388c0446b5676a8be8bcdaae2f900ed1f2ee40cd2d89017ce7cb7d", + "storage_entries": [] + }, + { + "address": "0x1215a5ae8be2820f4b2e1ae60e2bbb7b38ffd3585502c0f58e65d73625e5f51", + "storage_entries": [] + }, + { + "address": "0x5737b6463e8aab45d9237180ac68515a49fa3e0656f06b5831c15c69af83332", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x11fd043df798f1b8d6d" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x1359db071c2d25e6c5b4fd617" + } + ] + }, + { + "address": "0x50e0621f0df8db7f5e58958c9ac9d1f7269552731d595176c6f7b30b8a234f9", + "storage_entries": [] + }, + { + "address": "0x56c5432051d0eced59da093f23f103911fd3532371972778b10412584e8edb9", + "storage_entries": [ + { + "key": "0x2f280988b5d9c43414dc6e27979305a9edc6ce0bc62f7583069df7501164db7", + "value": "0x6b03" + }, + { + "key": "0x7db9993c43bf983548294dee290a11845c51449e7e0346d0ce2f0c1eaef2fe", + "value": "0x1" + }, + { + "key": "0x348ded850e8fd1b0b1c5c51da610d7f750af14097fd0f2ed68435390aa970f", + "value": "0x1" + } + ] + }, + { + "address": "0x3f9f0d4a408fa5288c170909ec6e23822c1a1e09f01c57760b9f0eda1a514a", + "storage_entries": [] + }, + { + "address": "0x6d008064f9136cdcc538c61af00887577d684103475ba6d90b3fe13bce16040", + "storage_entries": [] + }, + { + "address": "0x9377fdde350e01e0397820ea83ed3b4f05df30bfb8cf8055d62cafa1b2106a", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x263bcfa19b1248227" + }, + { + "key": "0x274183d70af7771f2ea5e789177bee9cd2f107b1e5cb59ddbf5f540eda2516f", + "value": "0xfd4aa76726ccb4" + } + ] + }, + { + "address": "0x51031a2381b4f95aa7c663e217e77d4d135bef809111b523a427afbda3e472", + "storage_entries": [] + }, + { + "address": "0x3d6b457bb318425c0adebc24ee473f9eb1e733c90d56d8d47e63cf43d1af56c", + "storage_entries": [] + }, + { + "address": "0x6bf936f1426fda7ee144fca86088e5ce93fe54e303d93c83897a19e90123768", + "storage_entries": [] + }, + { + "address": "0x49c8810e6b4012b1711cd2d13cf600a7d1c76c40bef2f0b7cb4f4d841907ab7", + "storage_entries": [] + }, + { + "address": "0x64f65241b77505bd07bf10833e81701eb712a0932506b7ab9f1e4fa6d37db73", + "storage_entries": [] + }, + { + "address": "0xd3925aa9dc414403e0726a837bc74f444d83fc5390042202d7c0f49c87be0d", + "storage_entries": [] + }, + { + "address": "0x71914055006d2e2f353032c8cfdb257880391a7da364fea62b4742fc4da2121", + "storage_entries": [] + }, + { + "address": "0x21dffae619140b944081b30106b838dde5368315de83d2e3df449ab372cdb69", + "storage_entries": [] + }, + { + "address": "0x50e969cdea0f3d60e78b9baed9bf3ed5f18d29438a953c76c8a4ddaca6406ef", + "storage_entries": [] + }, + { + "address": "0x4abe9c3001cd0f986b4f1dadd61154236eea97bfc7b6692b04d582c46a9e7b8", + "storage_entries": [] + }, + { + "address": "0x2948e45b9455e32069362171b7d52d17ec45e551ad9bd6caa38be401be23aa8", + "storage_entries": [] + }, + { + "address": "0xba18dafbfa3b2432514d3559113125f39e2e9291389293e83f0d60086afbb9", + "storage_entries": [] + }, + { + "address": "0x28757d11c97078dd182023b1cc7b9e7659716c631adf94d24f1fa7dc5943072", + "storage_entries": [ + { + "key": "0x2a1f43dc33220d3ac66bc5721d50c162116d901ce79236699effa0908d1c19c", + "value": "0x9c1b3e864b" + }, + { + "key": "0x2768c364229a8e032ad89302b1af1d1e2bf735a4207b9144ef8857d265ec104", + "value": "0x8ea4483d97" + } + ] + }, + { + "address": "0x43406db04abd4c1744b9bdb1861e762de866e1424877d78759f8a5b3aaed2a9", + "storage_entries": [] + }, + { + "address": "0x3cc21466923b075fc859c2958d0bbd1cdf344143ca27060276e0681966e9a7b", + "storage_entries": [] + }, + { + "address": "0x25a04676377d3e3591d5de70ab52f446655f666687e9dad7515134d508cce85", + "storage_entries": [ + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df2", + "value": "0xb516b3215577dd" + }, + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df6", + "value": "0x66192543" + } + ] + }, + { + "address": "0x60db27f1ca3465408dfa5653365708b56b5c8d5bbb554dbe86c4965874974fb", + "storage_entries": [] + }, + { + "address": "0x5dd3d2f4429af886cd1a3b08289dbcea99a294197e9eb43b0e0325b4b", + "storage_entries": [ + { + "key": "0x1c70f25fc708092c79b3169521774fdcddb8dc37dd36424fe3a8593e8c2ffee", + "value": "0x268d1992caf0d6011c5ee1b4e4b" + }, + { + "key": "0xae1b72a594adf942d61d66fb222d7bbe953934f3b762905c245fa71ea84aba", + "value": "0x358be751327baad2dbe28f8eeb" + }, + { + "key": "0x1d4dbebc6c2fad17f5523c62f74e95ad2db7e1e0d7777a2dfa95e8afad476fb", + "value": "0xa20e7edcad229232f89b4e6254f7d" + }, + { + "key": "0x248377a912e03daafad3bfd3765034bb24c6990a48c74c14cb94b5a32628824", + "value": "0x101a5bbbe000000000000000000000010b680700040b49d4b801e3699ea" + }, + { + "key": "0x503624011b8bb06650797ee21eb70e423e5f00242ecc5dfed30b36c7ffc3a57", + "value": "0x800000000000010fffffffffffffffffffffffffffffffffff8b7e4ec25a593" + }, + { + "key": "0x759dd55b14f0c01c88a66d8198fea8571f5aed0f81a1cf25236c1ab2691e173", + "value": "0x1827bace92f2d598dc62ceb5" + }, + { + "key": "0x5c74ca7b9d9fc2f12cf059f1afd571e858853297e81395d237d48def7672bd", + "value": "0x73290058cd432f8f937a22685882b19a" + }, + { + "key": "0x64a006744e754eec12fc42485b719be471a62670ac178413f785fbed3f543a0", + "value": "0x4d952799293b7d3809e4068db9d6735e712f" + }, + { + "key": "0x48bfd3cb62007f41ca230b15e1f8d93c22b0be6fe0bbc43b8a99375d41f9878", + "value": "0x16c97baecdb5ae653f" + }, + { + "key": "0x4ecf799a7cf64d2c44b0e93cab37b8129c01f84505e5716bad29157f618b936", + "value": "0x4780d3a34084adf20a58f9a07e4c0" + }, + { + "key": "0x614c224b2eff30d7e81c52d129db6e7e0ce5df37d995d1e48255c2efce4a019", + "value": "0xaafcebbf91ecb91" + }, + { + "key": "0x5c99faaf5df7508999c1cd81d51685e14a18206f011cf886380a96a22bad7d", + "value": "0x43e10d95f0ded2b463bcef823cab5fe057" + }, + { + "key": "0xf43f4977ba83260d9fb7c2157768daac27f6810a06dedece2a65ee49a5dd6a", + "value": "0xf17758b7c98cb10" + }, + { + "key": "0x516470086dc42e82ae7194c72d1a4ffcceb7935d454791f90c63988ae6acab0", + "value": "0x8caedfc87a1d4c4ace" + }, + { + "key": "0x6d9224ad909354d684150b7926b846872dc4ae0ffd68c8b176152229085f18a", + "value": "0x417202d39a3e5ca9d37edcb0b3" + }, + { + "key": "0x73be3acdf9c76d205be8b74475e9206e0dde6258366ecdf5baf38d3a7faa4dd", + "value": "0x48c2b7a7487a2df" + }, + { + "key": "0x2b02662f887bc85c6216a77669077b6fd1fd665a97d1201a159a942fce7edea", + "value": "0x3944f212d943ff492f" + }, + { + "key": "0x71f9578e3a03b795a9c5bbfbd29deb474d8576aa3474f98f19af3bdd33ffd94", + "value": "0x58cf2d41739d6e3" + }, + { + "key": "0x5bf266b1528f5c16f0288d3645c1ba1f2d69af2c50675da50e8df34e8cb817a", + "value": "0x665ccdff0ce4e" + }, + { + "key": "0x7a9c0dcedc31500be06d47de566aafbbc11a1e9e32f97288a49e21eed84a5dc", + "value": "0x63c096573347372" + }, + { + "key": "0x5cd59e514fb89b17c9cb8f91a16029f726776514aedc41535329c984775dcd0", + "value": "0x800000000000010fffffffffffffffffffffffffffffd30f22fad7fea397d11" + }, + { + "key": "0x3ddef31ead3029a9f7d9527ec41efc869ff6fdfa29cdee76bec91bd81084f9b", + "value": "0xa48d66e19a3ba1b357" + }, + { + "key": "0x16d1a8e7185755d6e0bd96a430eaea5f8f97ecd865a35d07fa172b47b3c9e81", + "value": "0x1a11d5612788c85499bb99acee840815b" + }, + { + "key": "0x6869d79f909b1c730b52b2e4d87a226c95eefab8afdb5e12b94352c1d3899d5", + "value": "0xa48d66e19a3ba1b357" + }, + { + "key": "0x5a196e0d86f9e4f2547e6a4594f06b0fd52d5178e462d3958710df8a8da3f18", + "value": "0x0" + }, + { + "key": "0x17c2a389c6cca0dfaf59c6fd6306c29d232815847464d0372978b5cda3679b0", + "value": "0x0" + }, + { + "key": "0x2715c282d726b96de26294ccb027df7f55b5ffa3eff73fe08b1c276900a6950", + "value": "0x440683c00d8559d294d4eb09de09090c" + }, + { + "key": "0x2e174e19f6421dcaba249fe3f0dc8efae49f0b1c9703cdee4ee8a5889a905f", + "value": "0x38879dde9dab35332c5" + }, + { + "key": "0x459f85cdd9763253f1f72e50679f1a05669fb90b2e23aec2d42b549614401e9", + "value": "0x800000000000010fffffffffffffffffffffffffffffc269918621120d4f56e" + }, + { + "key": "0x7121d04d15b3ff6e93890aa9b1dfd66b40a98840a2fbfebfda16a2592ebafb3", + "value": "0xdb92a4b511694f979b9b7804e7d" + }, + { + "key": "0x44124f77d5d46719af8b4ce0295dfe2a528b8587ad60f3b89ce3b8784f94713", + "value": "0x10128fe110000000000000000000003e3f11cc61bc659286617e78bce94" + }, + { + "key": "0x2de966d764c7614f84ebc7a696934977fafa88f2993a8707031f5c15d292a64", + "value": "0xbf1579411881e" + }, + { + "key": "0x45fb8ffc8b8d0d2521fdc1b3558fea0c43ed03911387994698ae9e504026d44", + "value": "0x67eb8da37d9961c3d3793003f" + }, + { + "key": "0x36be25a052fd64023ca27f6483adc86ddd64ae081fa6854fd03c3ac7d2997ec", + "value": "0x2a588d1be0e086" + }, + { + "key": "0x13ab1a4ae1b8031733d7beb36595e493d1a073317cb3357f52b80157ff95ec5", + "value": "0x10018af76000000000000000000720294d19b35bcf4c0a8f76a47fda581" + }, + { + "key": "0x5cf50de385bece8f4f3e095460cb5f44da01a87588230dd4b06239bf23a0217", + "value": "0x0" + }, + { + "key": "0x48796b62896cd8dff8f9a61209946357419be2d915ce43351603c11df3df120", + "value": "0x0" + }, + { + "key": "0x1ea2e870fda4f7c97320ae0f1d6fe31d5932ff1f279659ab0c7fedab55e9d8a", + "value": "0x5d384d1349676ab9b175e0d603beb2a6" + }, + { + "key": "0x40ccc453ec4e4f75b5a2240db3f8e8f4cef8cf838633828aaa24d15c3f7e6da", + "value": "0x16c97baecdb5ae653f" + }, + { + "key": "0x16623e790c633a3f11fb78df92632b1b4d9f72b8f1146502a7dd5fb92c097f2", + "value": "0x800000000000010ffffffffffffffffffffffffffffff8ba0c2d3945debc372" + }, + { + "key": "0x4557a998d2f8ad326bc25a5ead199c82992e97fe57a6465ce3d19aa4ce48ac9", + "value": "0x3878008a79c96a" + }, + { + "key": "0x611d89d6cfdcf47562055f1644c9f6399845a78e7e46c021bf82aa773dbaa5", + "value": "0xaf72206dee624" + }, + { + "key": "0x605686ab02598311e977202bbb3206c49aef4274d66eebdadb76875cb01b8d5", + "value": "0x29f599f15dc7a4" + }, + { + "key": "0x660635e7f0bbc4891cbe2922919fa27e1f3d8eb75f8ed526556aa11b01a7860", + "value": "0x101724bb400000000000000000000005a2b568f93afae85ef725d4a32e8" + }, + { + "key": "0x5962985147e20c00b781c5cc2e9dce46a186457d86cf54a67710c879aaceda6", + "value": "0x7c4164a89210a37548134376379db4f" + }, + { + "key": "0x4c68f6fa10890b3ed0831eeec960aa81e8c9a1b1939038898c54005508380a3", + "value": "0x244af07a214a7ce02eeb" + }, + { + "key": "0x6a073b40c978b472b2892f62e3d3187c540d1b5cfa3f3acfa67db4fbf26529a", + "value": "0x267d24629b623e8" + }, + { + "key": "0x7cf41ad0d1b7ff934931e78e72454bf05796808d4f5c9e7d680541175382cd3", + "value": "0xb19906879fec7ecb5e861cab950c6" + }, + { + "key": "0x58cb0c02a73d0830556dab2b1b84e944d6e106625eb1bc94ac7468a079fd6fb", + "value": "0x182420000000000000000010cf99c1c2f888fd914f786e50b04ed5f" + }, + { + "key": "0xf582153e93448ad937ab10af195a981490068c6ef0930d00d7c8a366554349", + "value": "0x45aef21f5f6939e" + }, + { + "key": "0x5c99faaf5df7508999c1cd81d51685e14a18206f011cf886380a96a22bad7c", + "value": "0xaa18c387bb73" + }, + { + "key": "0x1e738e711a726c658242ce99832ea86ad15c72f9c2209e82244cc652dd909fa", + "value": "0x4acd5f53f1a10ec643acf176e8c8b" + }, + { + "key": "0x1c70f25fc708092c79b3169521774fdcddb8dc37dd36424fe3a8593e8c2ffed", + "value": "0x147f0764280354891fefe575b213dd" + }, + { + "key": "0x5cf50de385bece8f4f3e095460cb5f44da01a87588230dd4b06239bf23a0216", + "value": "0x0" + }, + { + "key": "0x7fb8eb02d6a09b182632c7c8d3b145d70db0aacf5f833eaa0f8e10efa48d7d9", + "value": "0x0" + }, + { + "key": "0x225ba24bfccc403559de70dca0513a23150b0a1328c991a5006d67eb26e79f", + "value": "0x0" + }, + { + "key": "0x77da36ad8a348f7adca9258539d691c7aad3e905d9859b233d0bf43edfa02ae", + "value": "0x3bf9c2fe5cb71cfb4e7" + }, + { + "key": "0x4c31f99c8c4b687a76744c501a3cbb144613d25440cb30ae5e6790817c34e1e", + "value": "0x136ce1a0ae9c8e0cf1ffb6aa7c5bf15f0bba" + }, + { + "key": "0x5dcee8819dc50b68b1c7f6380e9150d5dc313baa9653676403b4b70799f2aac", + "value": "0x100b4497500000000000000000000b22a7dd131e1c5efdb9c7ef78023ad" + }, + { + "key": "0x53e18c46404fd91ca655a1baf43cdee3f49a04372d2d0aea275234e8918d49", + "value": "0x427138c39931cf1d255" + }, + { + "key": "0x2f1e16d5124964a15d788b7089152193be536aea8f8186239368c87715c1aa", + "value": "0x67c6c326c75b0eb040f047b00" + }, + { + "key": "0x5c74ca7b9d9fc2f12cf059f1afd571e858853297e81395d237d48def7672be", + "value": "0x5f2109e08bdb9559b9a331cbd18b33" + }, + { + "key": "0x2527378130fe27ea9878456bdb7d5ed2b27030e23e69d41e8a443171c401234", + "value": "0x1005ad06a0000000000000000000d0ec8de95390b7732a5a653ce714c88" + }, + { + "key": "0x168f5ba7a61bcfcfd56fa87acaa2d68af9d8bad4749bfcfb06e425cd7b02385", + "value": "0x8cfae36e2833186e78ccca986b51" + }, + { + "key": "0x13e29bf521bb1adf9627face5c29e0ae36bd7c3d2bbf5d1a3d1240c703bddaa", + "value": "0x16f1e5c1a03c166fb288b2a03b931e400d97" + }, + { + "key": "0x54851a35101e85f03b315bf1d763ae378607775a7c0ee63477cecb462a78aaf", + "value": "0x7622c7e88f5b0464bfee8b52b2217" + }, + { + "key": "0x53f6213ff6af6abea3d10026893f74faa3042cb1b54e63fe64acb9c2bdf30e5", + "value": "0x1d9285cc6ce44ebbfbf36ca263" + }, + { + "key": "0x69231770222be37be5daf78e88a9665e860c666c9f0542c9ab8d864b8793cc6", + "value": "0x263ecb67bece32" + }, + { + "key": "0x5506379ebc798c5ebb6f28f16b6e513513741dfc66689cdcdc3129992c4b76e", + "value": "0x18d0c1900000000000006d24f9f3aa9ff1b3fe169ded0a4da3692aa3e" + }, + { + "key": "0x402f21b9d8048c711f1b2d8402b34aa65be186008636cc76160d4a2a4ec62b0", + "value": "0x48a6444512f" + }, + { + "key": "0x20c9142ca6571981eea2b62aa6b9c84961cb3ecc8d4bd3240c23c969023d533", + "value": "0x351df0fc350cfe19c78" + }, + { + "key": "0x225ba24bfccc403559de70dca0513a23150b0a1328c991a5006d67eb26e7a0", + "value": "0x0" + }, + { + "key": "0x324940169882e699d41463a8292259f3f0143920d93a64f42f34975a701f765", + "value": "0x888cd12e047edfd74b98e9cbb0756e96f2" + }, + { + "key": "0x14bebf32ee2ca4eee82fd52f88e7b080ddc211a6d2b1e4cf2857d89588e4d", + "value": "0xf8217c11ca5fb1d4991b3c8e9878d74e2a" + }, + { + "key": "0xc37a99b03e26aa791e82083190c484f773383fbdc97b455ebb37590ac5f448", + "value": "0x1012900cf0000000000000000000003e397ae99a000878b003992c7d7b9" + }, + { + "key": "0x8337bf2ade7917d7c237b52aea6765dffdfd9a5c007da9f60fbea349cb81a1", + "value": "0x7e3210fb391f73f6642f5e4a42832bdd3d" + }, + { + "key": "0x1db34b1e6f86f6a20e13b36d1f0f7a85b9df2a7e9341cd732ba5b891ce0001a", + "value": "0x0" + }, + { + "key": "0x79541114db2c85598b8e7681e5ab78bf43624bc7636b60249889f8d4ec5894d", + "value": "0x10073869700000000000000000005cf6fbb32421fcb6be435296780d9eb" + }, + { + "key": "0x238a8024273b67345c808b5e12bb6aec015b70de1c6386dcf74bae86796de90", + "value": "0x7481b13da5a6e" + }, + { + "key": "0x32c152613f25edcbb264d2aedde2e2c42e206d8d22367f812cc4c855d2ddf22", + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffef677c88ba9617" + }, + { + "key": "0x2c4e9975f13e205e82d7018746cf933fb751e5e5e7c63833f758c6974508b9d", + "value": "0x36bb9ad49ac242db2c4" + }, + { + "key": "0x5cf50de385bece8f4f3e095460cb5f44da01a87588230dd4b06239bf23a0218", + "value": "0x0" + }, + { + "key": "0x7fb8eb02d6a09b182632c7c8d3b145d70db0aacf5f833eaa0f8e10efa48d7d8", + "value": "0x0" + }, + { + "key": "0x51296a1bef656aa35c64b53bca578b406666a74fbd2189616f426d8f1c08956", + "value": "0x16485d52d02ceaa67de409c51b08" + }, + { + "key": "0x6b33839a3d9b1fd00cac584a5a685412f83c39a9328230f303e45a488a691d1", + "value": "0x2462100000000000000000113cdd1712abfd258dd2dcebd75a471fd" + }, + { + "key": "0x377a06f99c076c4ce9af686c5a1f8e7ab88a1273c530dc5f94778c4b79cd419", + "value": "0x808b02c150fa5e608d8347b9ebacff" + }, + { + "key": "0xf34837b4666bead50bec873ef1e6141dacb6507337c2f51f3557b773bc4d33", + "value": "0xf210c24421b90b5bbe4" + }, + { + "key": "0xf38524f86a0ee70d839d4afba3bce13c09dd8ad088b375bef5c620595a4aa1", + "value": "0x1c26352448a63506c1c8ed8c7e933f34f" + }, + { + "key": "0x6a0bd403fbf3d9dc4f5ae8d7666d1a15af77105811e2ecd47ffce0668e9004d", + "value": "0x1000000c7000000000000000000fff97e548b2684ee819669239b73066f" + }, + { + "key": "0x350e51acc7da2491c6ae2370f12b427dddbf8f7a1c12ac8dff218e12b40982a", + "value": "0x800000000000010fffffffffffffffffffffffffffffffff9c3f69a8ccb8c8f" + }, + { + "key": "0x4a586bf09eec1cf5a6cf9d6d34e17e76a4f73dae476853d9f2bed89865e2ef2", + "value": "0x1019c8918000000000000000000000016976e97c6df720320e624491ea0" + }, + { + "key": "0xc7f01c9c6ee367ffe0360f4e86ec08b9c22abbf970377e4cd61e61927b5af", + "value": "0x27fed04754f71aaf961b5d8e" + }, + { + "key": "0x7055270eb3adb774f82e617555341cb2e7fc9b11a05a12e8aa564995682d7b6", + "value": "0x35f8eea34b3619996" + }, + { + "key": "0x168f5ba7a61bcfcfd56fa87acaa2d68af9d8bad4749bfcfb06e425cd7b02384", + "value": "0x77251e9cfcd47d3d192b7c03973d" + }, + { + "key": "0x5a102d169d44492f35d9731e155589d4c7c986f7ce41ca7896423fd27d64df9", + "value": "0x3409af628416e308d0098c6df2" + }, + { + "key": "0x27727178c0bf8500ed895613170b250f36095a6d5c462bd5e4388dce167e9d8", + "value": "0x6268dd951b0e965b36a" + }, + { + "key": "0x3af7018c4aa6e5fa9c0422a94b88f858654f47a8bd2c875ecf0c2972a78b5b9", + "value": "0xb2e4b73fc60b58a00b027a69ce2fd" + }, + { + "key": "0x5f0bef2282f18a0bc659723ff06c529cf4af154628a7b1cf925f71552b1258d", + "value": "0x1007cd19b0000000000000000000448f5272250a6592899b789bea953f0" + }, + { + "key": "0x36c6d5efb225e3d4d9d5418a6f19ff3b1446a435e9566631b9f74b519e7f328", + "value": "0x4d0339bec66a59d6bc" + }, + { + "key": "0x21284dee0554a4f4aec0b677a37a38cfbf4aa2082031128dbf5718bb39c002c", + "value": "0x1000000d1000000000000000000fff92c3dede4f04a32e05b9a3ebd0d98" + }, + { + "key": "0x574b762f7322382b2f573da14579862033e3c78585629d9061c07b4c6fe6368", + "value": "0x7260a52ebe31e6d" + }, + { + "key": "0xeb79a886092d739c87dfc8a7c27307340e1cc737ec7ed57948c63104679a1", + "value": "0x0" + }, + { + "key": "0x7e90b0128622cf5b5b4703e185c007a43570b801dbb80615738c28e4a167763", + "value": "0x14c61133f6d862" + }, + { + "key": "0x17759cc5f1ea42115b07d619687876d99d461226b855338f4598b74df1c31ff", + "value": "0x280d3c307dfcaf475" + }, + { + "key": "0x6d9224ad909354d684150b7926b846872dc4ae0ffd68c8b176152229085f189", + "value": "0x424280fc6061d4c1c30c7aa880fa03038" + }, + { + "key": "0x7cf41ad0d1b7ff934931e78e72454bf05796808d4f5c9e7d680541175382cd2", + "value": "0x43fca4150856073d99141a902300c19a" + }, + { + "key": "0x63329f63cb2397399db811af407fe92e1149a95b0291e25bba242625b4f6a54", + "value": "0x800000000000010fffffffffffffffffffffffffffffffffcf70e8cdad9df18" + }, + { + "key": "0x5c16491ac90729be64a6a70c673ca36da54727cc88e4ed17ead6c2131c72917", + "value": "0x8b860038547f9580b2e684b61a691e26" + }, + { + "key": "0x16d1a8e7185755d6e0bd96a430eaea5f8f97ecd865a35d07fa172b47b3c9e82", + "value": "0x192d1c07acf60e2de31fe98a69" + }, + { + "key": "0x361ef488207486d09f9b050cd6c42cb9de591757a3ae263407dee5a677199ed", + "value": "0xec5805b0987c05b5bba" + }, + { + "key": "0x49d80a0aa49df5ed2b9160c115ef23d15dd37517c3ec5dd817835102626f9ec", + "value": "0x0" + }, + { + "key": "0x1568e314a5593860f749f3ea8d2e0add62f38e80e8f30b04ebb278f40c385f5", + "value": "0x10128fbc70000000000000000000003e43be0e1b99155a43c9e76a32e92" + }, + { + "key": "0x1c70f25fc708092c79b3169521774fdcddb8dc37dd36424fe3a8593e8c2ffec", + "value": "0xa04e7b28544daae5a0" + }, + { + "key": "0x4ed55f236b424b2eeb2bc294c9359c3d917b6b20213a60c392be5a80c881e6b", + "value": "0x100c5a77b608527e1fd084d54253d6f6ab3" + }, + { + "key": "0x77e113a40d0d7d251a510fc5e81461b45ec5db83ee19d0f9ff89472b7ac6c7", + "value": "0x48a6444512f" + }, + { + "key": "0x3fd58344c88bc2aba58536f3892e94d6926e33939ea1f5b0a961ac0deaeea1a", + "value": "0x622df4b0be1e2f2fd2eb" + }, + { + "key": "0x7121d04d15b3ff6e93890aa9b1dfd66b40a98840a2fbfebfda16a2592ebafb2", + "value": "0x6eed69a0d820b381633f302a785ece" + }, + { + "key": "0x5c99faaf5df7508999c1cd81d51685e14a18206f011cf886380a96a22bad7e", + "value": "0x416e6b57f75aa530d416f639682" + }, + { + "key": "0x3429887ba2ac550431ebe4f4f45430c7ae9caccd45f277127fcedb17dcf3993", + "value": "0x0" + }, + { + "key": "0x225ba24bfccc403559de70dca0513a23150b0a1328c991a5006d67eb26e79e", + "value": "0x0" + }, + { + "key": "0x5a3b33b7698a1500a09cc3d1af406508984c2b9429a8538d73d1ebab9fc4ed8", + "value": "0x10adab99d5954" + }, + { + "key": "0x255dab183a878b6a08e12860c786f321c723286c439bfebf6b7fb7b72cd3e00", + "value": "0x1007ceac300000000000000000004456e41a56db5580b6a3aae2249a98b" + }, + { + "key": "0x5ae43f331a8a622606567424872fa15cadfd0558ac5ced42ce94308e6b7238f", + "value": "0x100737fcc00000000000000000005d0bb108ecc778a0c7320ee3dab14c2" + }, + { + "key": "0x4077ee0183f64b8dedf6f0014218c428043fde9a17f63a682ab5f325626dddc", + "value": "0x150a9fb08fa7016003e2e79d450" + }, + { + "key": "0x6b422301b6680c856e8ec878176cca8c5ef58fa389d8c3a71e8741c89367e75", + "value": "0xd02f56fe0574c8f703" + }, + { + "key": "0x4ed55f236b424b2eeb2bc294c9359c3d917b6b20213a60c392be5a80c881e6c", + "value": "0x9d0884ebc496effd12183dc260e" + }, + { + "key": "0x66b905a6f37c3ef1651d9e33565e5ccadb6477f2dcf504d579aaa783aa4d9e9", + "value": "0x52330cc216de7f08f5d6f4775e8859098fae" + }, + { + "key": "0x21b9568f4402b3da7c050247e7c7fb6cf9c6296c7149cd35d4f6d63a11e8008", + "value": "0x0" + }, + { + "key": "0x6e20b2dac69b636eecfa1d8c111a9d6410377d7a936223d8ab1c697c08c0790", + "value": "0x745f3d2c6ba2143c8f" + }, + { + "key": "0x168f5ba7a61bcfcfd56fa87acaa2d68af9d8bad4749bfcfb06e425cd7b02383", + "value": "0x3af589f2b41224a22" + }, + { + "key": "0x1546e87c8ad9e7b9efa8aba36f4f3544d417322d9120d09294b8f9721ca9333", + "value": "0x62b1fe608f6cb83e431001d9db626c4ab" + }, + { + "key": "0x45c798b5abff14827978acf0f3f5327ce5c30d0ceb1d6adfd1c1063156247c4", + "value": "0x78379a0cd6cdf6e1bb030c9cdaf3" + }, + { + "key": "0x2715c282d726b96de26294ccb027df7f55b5ffa3eff73fe08b1c276900a6951", + "value": "0xb1aad4f22cf668b27a21f75dee2c1" + }, + { + "key": "0x4f91e1afbf7a92cddafd000b70b52beea487943f4bb1d729ca8ba6eee61bc4", + "value": "0x3bead32d7c18dcbcd8b" + }, + { + "key": "0x21b9568f4402b3da7c050247e7c7fb6cf9c6296c7149cd35d4f6d63a11e8007", + "value": "0x0" + }, + { + "key": "0x30c92e0598b8c420cd8410679cc3bc6b1f99856828cbc5e5aaa96fea5184163", + "value": "0x6268dd951b0e965b36a" + }, + { + "key": "0x45c798b5abff14827978acf0f3f5327ce5c30d0ceb1d6adfd1c1063156247c3", + "value": "0x7843cdae9dd75bde94544969cdb0" + }, + { + "key": "0x377a06f99c076c4ce9af686c5a1f8e7ab88a1273c530dc5f94778c4b79cd41a", + "value": "0xf95d75b4b2a596efa6d9dd026cf" + }, + { + "key": "0x72ed4038b312254409fc81f14ce4e81cc8f17f88e921b5f31fafe3f0ad85cb8", + "value": "0x37964f9e1a9fd8dcef9" + }, + { + "key": "0x759dd55b14f0c01c88a66d8198fea8571f5aed0f81a1cf25236c1ab2691e172", + "value": "0x160c35cfbdc0ef0915fe765d985e80f7ed" + }, + { + "key": "0xf38524f86a0ee70d839d4afba3bce13c09dd8ad088b375bef5c620595a4aa2", + "value": "0x5383189446d4500a5c41759b9d126d" + }, + { + "key": "0x44e5ed17e5897d14c3d75eea9db46c0eb8afc83b0c00cda3554000be8f5ea1f", + "value": "0x3c9cee4d30c0d31e263" + }, + { + "key": "0x5de7ec841dce952676aeccd7e5d32132a249efae2f8f0d25cbd26c6d6ad9cb", + "value": "0x665d5564bfeed1c8" + }, + { + "key": "0x14bebf32ee2ca4eee82fd52f88e7b080ddc211a6d2b1e4cf2857d89588e4e", + "value": "0x90f971a6c8167df1f5f483023ec" + }, + { + "key": "0x4d6c1987d45d29b9edd243e1dd8cc8641e3f558a8e0e52f09259dd1cb955c0d", + "value": "0x800000000000010ffffffffffffffffffffffffffffffc6bb0ded26bc00b6d2" + }, + { + "key": "0x5b93bef5b0c071266e12979a9e077a3b6a641cd375e885fc7f772e738497e54", + "value": "0x38879dde9dab35332c5" + }, + { + "key": "0x7d40347aa4e5dfd2a281b234596e495beabe234196f2d792a2f409885203df1", + "value": "0x16b1b04bd7" + }, + { + "key": "0x257c982678a06d8c6f2d415fbe241b4eed09fe6584af1cb159e55a8cdbf1f6d", + "value": "0x168105e454e839a43d953d03a12b7a374e12" + }, + { + "key": "0x51296a1bef656aa35c64b53bca578b406666a74fbd2189616f426d8f1c08955", + "value": "0xb5a10a92d8bb57da7eed42547c06b1" + }, + { + "key": "0x6bb75caf5ba2419503828464ddfcb58d0734675c3eb062937719652947399a6", + "value": "0x20d9def8c4e7a9f7e9ea9ea4e46ca" + }, + { + "key": "0x2165f10b8de1e54f415ca0f46fe3325e07aad812eff3639b7de8837a8f590fb", + "value": "0x800000000000010fffffffffffffffffffffffffffffffffd982db9d649dc19" + }, + { + "key": "0x21a78c96fdaf6261dd123a0ea0fd42584dea11cd77775c5056e2f527a5bff9d", + "value": "0x42d891790ddadb2549f" + }, + { + "key": "0x1db34b1e6f86f6a20e13b36d1f0f7a85b9df2a7e9341cd732ba5b891ce0001b", + "value": "0x0" + }, + { + "key": "0x49d80a0aa49df5ed2b9160c115ef23d15dd37517c3ec5dd817835102626f9ee", + "value": "0x0" + }, + { + "key": "0x53d0519cdc7454786ae3e94a23442f4359e03c5903c60ccbaf2c48614efe6ac", + "value": "0x10073bfce00000000000000000005c49544894227039f9917ccaedb5f98" + }, + { + "key": "0x5bcaa1e73a4bce52448a05f6c1621a8e96cac50a493f14b47bfd9472b21a366", + "value": "0xc628eaa437c974b94a238dd361c" + }, + { + "key": "0x369215321224a284eec13dd8194b1571fdbf2460f09bb7745249a95e61d558c", + "value": "0x339457e9c470613c3e14" + }, + { + "key": "0x21b9568f4402b3da7c050247e7c7fb6cf9c6296c7149cd35d4f6d63a11e8006", + "value": "0x0" + }, + { + "key": "0x193bfd10d57582e4aa0b066717a5b80a2919bb84fb74dc7485a369c948aa85b", + "value": "0x48a6444512f" + }, + { + "key": "0x5a196e0d86f9e4f2547e6a4594f06b0fd52d5178e462d3958710df8a8da3f19", + "value": "0x0" + }, + { + "key": "0x786e6f2cbcf63b6c37de67d37e3fbbd3689e837c77677e5ca9f95f64b1817c5", + "value": "0x1012903900000000000000000000003e33dd807581e298f58b2e781e72a" + }, + { + "key": "0x64a006744e754eec12fc42485b719be471a62670ac178413f785fbed3f543a1", + "value": "0xc1a1ec8a171c2e2010ab544218" + }, + { + "key": "0x70711f767624d2c44859aecb138e5d82c59467dc32f74a3b237843d57eea9f6", + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffc2ef7b72e1117" + }, + { + "key": "0x7fb8eb02d6a09b182632c7c8d3b145d70db0aacf5f833eaa0f8e10efa48d7da", + "value": "0x0" + }, + { + "key": "0xd7ac8fa3fa642cc725a845d3fe1719aa3824f56c8fe56bdc0d79ace02b3601", + "value": "0x75a480be518a9f1c5" + }, + { + "key": "0xe48d36a14905d02197fe7153edd600fa10bd3e475758cd92817556fdb8e6ab", + "value": "0x1019c7f450000000000000000000000169eb6237f217c038075fa099a88" + }, + { + "key": "0x1db34b1e6f86f6a20e13b36d1f0f7a85b9df2a7e9341cd732ba5b891ce00019", + "value": "0x0" + }, + { + "key": "0x4077ee0183f64b8dedf6f0014218c428043fde9a17f63a682ab5f325626dddb", + "value": "0x151af991049e742196087fed5dfee356df" + }, + { + "key": "0x7a9427f865e6919afa11a0dd74a35433ec9a622faca2f50a19a2235670bebd2", + "value": "0x44b9784f8b8be" + }, + { + "key": "0x13e29bf521bb1adf9627face5c29e0ae36bd7c3d2bbf5d1a3d1240c703bddab", + "value": "0x34ae92d88035bb402b03de6c43" + }, + { + "key": "0xae1b72a594adf942d61d66fb222d7bbe953934f3b762905c245fa71ea84ab9", + "value": "0x1762c96afadb2f622d922bdc47deab880df9" + }, + { + "key": "0x257c982678a06d8c6f2d415fbe241b4eed09fe6584af1cb159e55a8cdbf1f6e", + "value": "0x33d0e42d54ddd77b3234f75201" + }, + { + "key": "0x8ee3d3ab791dbbd7709d1fc40a4e88cdf3217f2a1c25501a8b1b46c510da74", + "value": "0x58cf2d41739d6e3" + }, + { + "key": "0x7ceb9db98af7b59409ea2cbdcf876b734cfc05db45e538d1aef43d786acc221", + "value": "0x29cd0487eaac3df7490e92f411955b2d625d" + }, + { + "key": "0x5a196e0d86f9e4f2547e6a4594f06b0fd52d5178e462d3958710df8a8da3f17", + "value": "0x0" + }, + { + "key": "0x324940169882e699d41463a8292259f3f0143920d93a64f42f34975a701f764", + "value": "0x406e9d263aadee0bea3a881e7" + }, + { + "key": "0x74b6636c3944a082632f91cfa24ea480be8ef5c6af04963333efebea1dd237d", + "value": "0x1995b65ca819b3a" + }, + { + "key": "0x77e220395621f16eedec73981921392534a0695802ea155fa843f77a48eb421", + "value": "0x800000000000010fffffffffffffffffffffffffffffffff878343607f1ad32" + }, + { + "key": "0x62d73bf55d49f318a69426701b9c623cab253b7c733bffdd5e997d0ed7a2f35", + "value": "0xa41755ab881d137471cb8dbee7e" + }, + { + "key": "0x51296a1bef656aa35c64b53bca578b406666a74fbd2189616f426d8f1c08954", + "value": "0x4878ac67d5cf4c1a9" + }, + { + "key": "0xc7f01c9c6ee367ffe0360f4e86ec08b9c22abbf970377e4cd61e61927b5ae", + "value": "0x143da394a384bd0325edb6ce826fdbbb8a" + }, + { + "key": "0xeb79a886092d739c87dfc8a7c27307340e1cc737ec7ed57948c63104679a0", + "value": "0x0" + }, + { + "key": "0x62d73bf55d49f318a69426701b9c623cab253b7c733bffdd5e997d0ed7a2f34", + "value": "0x10b03c4b1b15abd518a355681f49c0be967" + }, + { + "key": "0x591acc006991ecc44299588fcfe36aaf338929a2ce09835de224d78d1791dc7", + "value": "0x484f60e3ffe0d7093e13e90b468d0833d9" + }, + { + "key": "0x49d80a0aa49df5ed2b9160c115ef23d15dd37517c3ec5dd817835102626f9ed", + "value": "0x0" + }, + { + "key": "0x7d3a31e1f87016e6a693c1d121fdb6a57c13d8cf65968227c33bedf15226515", + "value": "0xec5805b0987c05b5bba" + }, + { + "key": "0x3429887ba2ac550431ebe4f4f45430c7ae9caccd45f277127fcedb17dcf3994", + "value": "0x0" + }, + { + "key": "0x4c31f99c8c4b687a76744c501a3cbb144613d25440cb30ae5e6790817c34e1f", + "value": "0x2ceaadbc153834e41a6f4c2718" + }, + { + "key": "0x2824c3f22cc0343c1395094d6c82fe54da134757852c597451f5c3f2870383c", + "value": "0x38076466f2e9f19da8b" + }, + { + "key": "0x5a102d169d44492f35d9731e155589d4c7c986f7ce41ca7896423fd27d64df8", + "value": "0x169e865232fb6f414ad74fb9f7ec9065b3bb" + }, + { + "key": "0x4b15c8c19037d8dae0451e671c50e1b0f5d9cc87594efd9b3b6f0c7aeccda63", + "value": "0xb1a1b3f4f1089293da4e34b780142" + }, + { + "key": "0x17c2a389c6cca0dfaf59c6fd6306c29d232815847464d0372978b5cda3679b2", + "value": "0x0" + }, + { + "key": "0x17c2a389c6cca0dfaf59c6fd6306c29d232815847464d0372978b5cda3679b1", + "value": "0x0" + }, + { + "key": "0x7f70142fcbd258418f0429362e78e36dffa18f0de514b9ef8358f5793796a21", + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffffb759bbbaed2" + }, + { + "key": "0x322ac886fe89fc05890cb78f6c99e8be358d336da90b7f78d4a84b20c721b68", + "value": "0xd58f0ba92d4bcb7f97" + }, + { + "key": "0xeb79a886092d739c87dfc8a7c27307340e1cc737ec7ed57948c63104679a2", + "value": "0x0" + }, + { + "key": "0x3d0aa142dc42b652f1b3508e8fb2826dfc7556ec19e164975480ccadb6d04af", + "value": "0x1007cf2d300000000000000000004444da50e278cd9bc5b80c9b904b69c" + }, + { + "key": "0x3429887ba2ac550431ebe4f4f45430c7ae9caccd45f277127fcedb17dcf3992", + "value": "0x0" + }, + { + "key": "0x7a0a6748f6bd335857d1e1369bc88c9c4552f4371fecdecb4a1cc4e8df91d07", + "value": "0x3718bcf22e574076fb4" + }, + { + "key": "0x2d5500d79cab59a64a8495b57ccdb7d9247eb0e99009cee761608b4bd4408ef", + "value": "0x800000000000010fffffffffffffffffffffffffffffffffea4a992fdd29bde" + }, + { + "key": "0x45fb8ffc8b8d0d2521fdc1b3558fea0c43ed03911387994698ae9e504026d43", + "value": "0x2da2a190feb87ad70293b815dabec684b7e" + }, + { + "key": "0x6e036ffebc4f64abb419b4ac5003973e083e385d5519d3726881013f4f67f0e", + "value": "0x521cdbcb40b407ce41d" + }, + { + "key": "0x53f6213ff6af6abea3d10026893f74faa3042cb1b54e63fe64acb9c2bdf30e4", + "value": "0x1eb42d1d206ef87d831db3e64f8778da0" + }, + { + "key": "0x4bcc038992fc8b47dd30e3ed4c7ab01a8681592eb43727886acc4e2d699e442", + "value": "0x4ba409b6180425f" + }, + { + "key": "0x4b15c8c19037d8dae0451e671c50e1b0f5d9cc87594efd9b3b6f0c7aeccda62", + "value": "0x440177fd9a1e368890c081e7105a0afc" + }, + { + "key": "0x2f1e16d5124964a15d788b7089152193be536aea8f8186239368c87715c1a9", + "value": "0x2d8f21b9b2724b66be175e1fd7c5573305d" + }, + { + "key": "0xc3c760984d8770da85e3f1e6fe78cd28126b0ea37d2fceafca6739db3cf528", + "value": "0x1043a9acd944fb2a2f30d8b3b12944e6e" + }, + { + "key": "0x6809d9d0b0730bc34d1e67788822805b400f2f3e2d1e92a69aa06866e076a4", + "value": "0xa9d50fe8fdba1621fb30fce57c6" + }, + { + "key": "0x33baf74ee1dbc80c2224db218691f57a04cfa9bcbaa0c11f92bc3a7d266c7d", + "value": "0x38076466f2e9f19da8b" + }, + { + "key": "0x6aff514d3c14935bb84bfc2f5e443daa68c6b9af02150bce2904dc5cee89fb4", + "value": "0x1019c825a0000000000000000000000169c6d704ab0b4e4d456690add34" + }, + { + "key": "0x1d52ba6c692370a3319ed2c30a697583dfe2fc6fa1ccaa09a7f3fa23d2a4363", + "value": "0x465f0acbc376475e" + }, + { + "key": "0x55e2c9d946d6ed541d1c22ad9be612c710515069781cc6dc93f78e07a1c03d8", + "value": "0x1d210f1be528a22551db22cdd77b7c561" + }, + { + "key": "0x3393c8a6d564d4f90dd77442093e07525c7b43f251db2af2c9eef741273dd3b", + "value": "0x1007cd2ca0000000000000000000448ca878256b25802940c01c059b8d2" + }, + { + "key": "0x3af7018c4aa6e5fa9c0422a94b88f858654f47a8bd2c875ecf0c2972a78b5b8", + "value": "0x44a01b94e1b0ba299a1fefa610b272ed" + } + ] + }, + { + "address": "0x4d0390b777b424e43839cd1e744799f3de6c176c7e32c1812a41dbd9c19db6a", + "storage_entries": [ + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66192543" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0xada6c0aa50" + }, + { + "key": "0xc466fe1adaf62a7bea01d07d35b0ad81cc8ce2fe00f8e0201c24bbc34266fb", + "value": "0x0" + }, + { + "key": "0x6180806f23c68be50a0927a6e9c4977256d4211877595d2490b57e01b6fa44e", + "value": "0x0" + }, + { + "key": "0x7df78c271d5d0bc4ff984c3a904fdaf9265e89d60cb9adf13f82c0360ff5dfa", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x1f8c8813f3665b" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x53a25cebf3a024" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0xb711ff6c077f60f73" + } + ] + }, + { + "address": "0x7bbdf36eb04b347e1ecd9b9b37eeac1688fa252db68888a79fdef358667feb2", + "storage_entries": [ + { + "key": "0x67a33ef9f7e1223e13cc0ce1637a3ae510def6a1063331e1dc2a894bd47f357", + "value": "0x20027fa000030020000010002" + }, + { + "key": "0x3cd966456ffd6c519e4b53912fb916d7971dc25735957b01070ce9855398277", + "value": "0x64cdb7fc4e6c3d3283585fcad7c2505c" + }, + { + "key": "0x144c9a7c0f738c95b280a8da2c1df43a52eee8b9de60382ad24e981acbafc47", + "value": "0x64a100540a52e6a51840cd35b884f904" + } + ] + }, + { + "address": "0x12e96d5b772a8b2eb631c17300bd3150e0b384165b05a63816951f4e32d1a94", + "storage_entries": [] + }, + { + "address": "0x6e11fa5eb3501f30a7ef5adec02bf3de3e184a7282621e9b9fb0df52a8080e3", + "storage_entries": [] + }, + { + "address": "0x26179ea8bc7e56a2daf98a44397f5ee56589c36f0179d091da8813bef286b3d", + "storage_entries": [] + }, + { + "address": "0x4efb2daf0f2cfcc879310c99429ce58fe3783c177817a7095345e2d3cfa2f36", + "storage_entries": [] + }, + { + "address": "0x10a6083f8ea8bfa0dc63cba3a97529c71b912842aa200805a43bd8d2ed23886", + "storage_entries": [] + }, + { + "address": "0x4952986b5c332d23b2bb8dee464af7a2578762df8080684e1cbdd3d6039a433", + "storage_entries": [] + }, + { + "address": "0x7c3b3761ed0694e8b59d5b4c523cfeedb46ee8f50d8d647e65f122d608dd2e8", + "storage_entries": [ + { + "key": "0x53f5fc4b61122c128c1b6d73fd754771424c3fee173c48d739f98a2c1915827", + "value": "0x155b21cc0b90ce64b" + }, + { + "key": "0x56c436b22033d17fd661c5d1331a533c0b45c1e964e69d268452786bd4ebd25", + "value": "0x1115b4a33c73d8509" + }, + { + "key": "0x2072dd99a064224a17c18fcf834da7c4f65a8d390cc582e65a5b1c2f130aef4", + "value": "0x33411de9b55b88f1c" + } + ] + }, + { + "address": "0x4c0a5193d58f74fbace4b74dcf65481e734ed1714121bdc571da345540efa05", + "storage_entries": [ + { + "key": "0x6cb9ac67a1ddceddfc6def74f93e913f123f5e5d264340038caa7980d178e53", + "value": "0x413a02f26b56df" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5139", + "value": "0x24d755725b373a03305e94" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc22", + "value": "0x2bddf0389beae6e639a0c" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5138", + "value": "0x36ab2a03edbea79ad4e214b" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa0e", + "value": "0x66192543" + }, + { + "key": "0x494e25fdb39b4549939f03c12fec0151b5e7986c909a9ef9d8825ce88c03277", + "value": "0x15718bd1cba5c3d" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb192372303b", + "value": "0x6cd6fe1b2c20ec0d4d" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc23", + "value": "0x13711062b1642669c70423" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc21", + "value": "0x33d00ab6c775424f2d682ff" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa11", + "value": "0x1f8d6fda120d4127389d1c" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5137", + "value": "0x35c41a494fc65f6c778da26" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb1923723036", + "value": "0x66192543" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5136", + "value": "0x66192543" + }, + { + "key": "0x72f1dc08c861339dcdba8658ec7a2b1aea53e0275e748cc40fd1ddb0e820e2a", + "value": "0x66192543" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb192372303a", + "value": "0x16ddad47daae5bf184f767" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb1923723039", + "value": "0x837965692c76653945c1b" + }, + { + "key": "0x4ed2d6109e4248b1bf8a654b8bdad7e733503963bf6d8555d7ecf26738922b", + "value": "0x155" + }, + { + "key": "0x1221c5e0673f7e3f71f3352569b8d53f06019c98937e25aca67ba833b341ba7", + "value": "0x0" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa13", + "value": "0x62b0cb3ace5" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c513a", + "value": "0x4533867e3b6b8be2c60bf1" + }, + { + "key": "0x5d9945a1be3dcd9b75a6ad5ae96ff3f5267458ef256d1b492d0ba765e3364ff", + "value": "0x3030d" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa0f", + "value": "0x358cbfe9f89b74f0de7e2b8" + }, + { + "key": "0x6e7e70973e50e3dcccbf32f1b5c81a7399e0dd1fed91d9fffb1611f17d9a4b1", + "value": "0x1046" + }, + { + "key": "0x3baca215cdc81a6f8e27076ab7728fe1ca3ed119300024e6948a14341508483", + "value": "0x8c864203283257" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa12", + "value": "0x2f4c4f7c315797e3960993" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb1923723038", + "value": "0x34b78ef9769c3ab029906c0" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc20", + "value": "0x33b5adec473494651dcd107" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa10", + "value": "0x365c67d1be27b72711fdb13" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb1923723037", + "value": "0x33e2274ea97f7136dcc05e6" + }, + { + "key": "0x3bad64fea8aa9faca2bf4f965edffeb2a2cc6712a3ea641130a3e18a7be1a51", + "value": "0x72c2765aface3" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc1f", + "value": "0x66192543" + } + ] + }, + { + "address": "0x6c11cb2f2bebb8fb7d010b13eb4170924cd0211773efbd9a825bc4084882cd0", + "storage_entries": [] + }, + { + "address": "0x220265d76b15726dd986d0f1d9e5776a02b90bde27f5ee141747112f170c860", + "storage_entries": [] + }, + { + "address": "0x634c44b5f5b00ed8c3aaeb184efe85c07130c8dc27ae00f8344e98601c48ac6", + "storage_entries": [] + }, + { + "address": "0x6ce011a01d962392429a67fa4f624f0f63ce37c1a4524404fca0ea2c2d42e4c", + "storage_entries": [] + }, + { + "address": "0x6ecfb0f43bffe3f32b364473a3b57fcc9016d1a247a95eb9cf48a6bbafcd8cb", + "storage_entries": [] + }, + { + "address": "0x63e1e68e98a9028be3dca64cd8fd72f4682cdc7c080127645a95baf7c1ff8fa", + "storage_entries": [] + }, + { + "address": "0x63fd2472c041b44f83d0fbbd650f6662630f145665bb4d648634a5bb906e1df", + "storage_entries": [] + }, + { + "address": "0x2ff424b92fe258a7ed3dab325dd0bb2436c27713debfefa649e1d1a7187daf6", + "storage_entries": [ + { + "key": "0x38036e4af1d77f33f0c5cd33a3353e2a5b2265dd26031df7d7c79297f908457", + "value": "0x3721de61a6fb66e8e59ee2284c66b699394c1f78e5e8f65eee2363177aebb6e" + } + ] + }, + { + "address": "0x5d2b1304eefeec9823452d62464b377a5cd8846b62b9ea32a40199c3057ef3d", + "storage_entries": [] + }, + { + "address": "0x2339aa7e36a344d384162bfa363b54bb0072117ce98673eba2c165d86fd8227", + "storage_entries": [] + }, + { + "address": "0x4788099e769c6da126cc1bc88a5eb901ad756cbca0c12a11fabdeedd395fc66", + "storage_entries": [] + }, + { + "address": "0x7b0dc33ff480ac12fa5b14f09753e3f07417b436e7d8dc6b60708b1f42592ad", + "storage_entries": [] + }, + { + "address": "0x2b3030c04e9c920bd66c6a8dc209717bbefa1ea5f8bc8ebabd639e5a4766502", + "storage_entries": [ + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x79f0f022974a6fa2" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0xa4f4989190d443f3fe8" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66192543" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x2d1cd20850d39b5c9147" + } + ] + }, + { + "address": "0x1eda935dc126076d78dc63b7ffd4893e85577add180414dcb8d1bb8c8067c22", + "storage_entries": [] + }, + { + "address": "0x73335cc71c93fe46c04c14e09e7cde7ca7f6147bb36c72dee7968ec3abaf70d", + "storage_entries": [] + }, + { + "address": "0x84cd2a29a598ca2a517dfed616ae50f8e40b8f455575d19497a055c8dd111b", + "storage_entries": [] + }, + { + "address": "0x3d3c4f7ae66c46312abcd32b7382685a1f0f15f0851c7487e317723074b1bdf", + "storage_entries": [ + { + "key": "0x24892eb87580d843f9f6fccee6aefeb23e752ac565e355b15d879e15f0148c0", + "value": "0xdb1e43351fda4b1" + }, + { + "key": "0x1ae3ee937f71823e9a3d8f9779551a0a0c0921137452c8364bdd976ff71f8a6", + "value": "0x1b0cb35475a86f9" + }, + { + "key": "0x547b24f175a9dd67d3ae6ac9cfa92973172337fad59bd4f0f23b142a812f280", + "value": "0xdb1e7003ad48199" + }, + { + "key": "0x69e23b825cecae641014a0a89589a303d858b680723423ea453b9a27c24980e", + "value": "0xda0f743d9a71c53" + }, + { + "key": "0x2fe448462dad5e2ffeb744106ad22a0a7b6170a0c408675c7fef7c2455acdf0", + "value": "0xe4a50cad12e6111" + } + ] + }, + { + "address": "0x149325667fe8f91a92efc7243f8a172683b7055322ebf82419dcaac4f3f23a", + "storage_entries": [] + }, + { + "address": "0x782f0ddca11d9950bc3220e35ac82cf868778edb67a5e58b39838544bc4cd0f", + "storage_entries": [ + { + "key": "0x3b392d98780581dda8432c8184b93e3252da170711f5ffe4ba6c2af476a75ab", + "value": "0x66192543000000000000000000000000004556ef5ec2c6d6bec444" + }, + { + "key": "0x121c4bd474dbba319caa6e29293ec0a450eae350e9fc3330ed0b742379411e8", + "value": "0x5d6a3436185920000" + }, + { + "key": "0x38c10662a48073f77efadb4820d93ad877d4de93741e9165b24bc8877d93b78", + "value": "0x9c74" + }, + { + "key": "0x551fae56970b85da0afd29ba49172d7d4c0b709ff30f2b9fb9c1ace6679a517", + "value": "0x661925430000000000000000000000000a727de748c9b437e44165" + }, + { + "key": "0x32e783e8a1618920913546aad5cfb12beef69bc4070aeb0068f2703ef21c20a", + "value": "0x8ac7230489e80000" + }, + { + "key": "0x42faafe4ad18a5b3ecb026295092e4b52ed53a53ef9fa0d20b4d0b1f0f3e2bd", + "value": "0x688" + }, + { + "key": "0x3cdee4311485865af57be0739f2a8ce2ac40694f4091bf16e19c50850bfee51", + "value": "0x662cdabde6d040000" + }, + { + "key": "0x15536878589ee61270a4fb2f294c4433b15395b63bf02d89f9ca083c2d1682e", + "value": "0x1" + }, + { + "key": "0x619722c7b3f0bd0db55766a22edb68c46c5711166333d8a72f4abd751df4e4b", + "value": "0x661925430000000000000000000000000023d3cee2a3dff31d7825" + }, + { + "key": "0x182cccb5b34ddda4d5a67180f863f1fc4742c68f4949797b0da807903ef36e5", + "value": "0x2c0" + }, + { + "key": "0x273720a4db95bc437b1738d52b7a939fcb19256fea6b1ce7255f6d32d388206", + "value": "0x6619254300000000000000000000000000070d7b600feddf7a1ed4" + }, + { + "key": "0x3cdd2f31b998e0ecaa03875e6cad0e18e75a2e3728183fd6eb6b5b56ab381a1", + "value": "0x161e232e52c760000" + }, + { + "key": "0x31fe6e08a57b0840314e3ff524f9b0c5ba9854de824a1837be2a7a94a0336c7", + "value": "0xf6" + }, + { + "key": "0x66bbbbf78ad6a0b2b7d80e3110cb4949991cdc19a842a0f5dda8b5211e3a533", + "value": "0x66192543000000000000000000000000003974994d2c842ef91e8a" + }, + { + "key": "0x5c73fce6996091af7dc6f3eea6f566e158fa9010448fcdf68b7056de7432640", + "value": "0x1" + }, + { + "key": "0x7ed3554230afe8460d648fee7a177d7cbacab3fb6cb4819a4e885ebe104c4d4", + "value": "0x6619254300000000000000000000000000273cb6f73e1d418d80a4" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xa727de748c9b437e44165" + }, + { + "key": "0x712fb012ddab8d5b7b2736641b40aa95f866617f6b7affd7f20b122771255aa", + "value": "0x6619254300000000000000000000000000000161e232e52c760000" + }, + { + "key": "0x3968dd3f3cda84e86c7b07d8cb80df74a2abde041509641fc182a060ca94ce0", + "value": "0xa42" + }, + { + "key": "0x4dc4836b341155500b452c01a417720c2dc7e107952b7e086573c786659b752", + "value": "0xb38" + }, + { + "key": "0x4b73ed72d4b1dbd2a4dd839870778a06f3649ee7e8e48d32b996f850e6cf5d3", + "value": "0x661925430000000000000000000000000000008ac7230489e80000" + }, + { + "key": "0x45290a4ffef1acab851f3e0f54a09018dc76844f9b8957670d334ddcb24eab4", + "value": "0x5ea110ff6a31e0000" + }, + { + "key": "0x5041c1b8508afa65a47b7fcd2dbad042c3ebb5a83251566152dfc05bd287d47", + "value": "0x661925430000000000000000000000000000000000000000000000" + }, + { + "key": "0x4e3443b6236b059f979402481d17e45acb60b120fff601564bd1d32370f17d", + "value": "0x60f8963a880ac0000" + }, + { + "key": "0xb436059494b8934be51f84a6efa557eba408c7a5616bc1f305720bd6efcb25", + "value": "0x883" + }, + { + "key": "0x575906af3b972d0f5fdd006aada8523677b41f9b997e89e6aa9d6bceda4f15a", + "value": "0x610eca920de360000" + }, + { + "key": "0x67bad8c7c336a48ccd4e6ebb641c6849f7ddfa5e89a3945918804394c82bf8f", + "value": "0x3" + }, + { + "key": "0x1bbec8c9f6fc7e4b1833eac94795aeef2950a49fcf3f5866c3fe16b7d8c3297", + "value": "0x10cac896d2390000" + }, + { + "key": "0x151656ce4ec5df2fac740ccee23e1e6163d3b1faeac73f420a98714167416b7", + "value": "0x2cf6f43ee900e6000" + }, + { + "key": "0x6174834d082a41338344fdc5c7e80011313e275f8a2fed655b348d76ec91b3", + "value": "0x6bf936f1426fda7ee144fca86088e5ce93fe54e303d93c83897a19e90123768" + }, + { + "key": "0x1f72de6240784f3c5e9627eacea1f4e465c0aee79301f292eb46dc3b1660f1d", + "value": "0x1" + }, + { + "key": "0x5c3e2a1e72d3c986c12d4824a109a38a03f0a0eff18bc4c25e1fb893db769b1", + "value": "0x5ccec5d16f6cc0000" + }, + { + "key": "0x5d4ba3981abee75ce01f26fc5496ffcbb9a0fffa5df112b0243feb39a125fab", + "value": "0x74945858029aa67f9c880e3fc869f62e18f0bd828051001bfb53d0a2214b97a" + }, + { + "key": "0x16816f2a5e32085b2e277e9cf058563278b88f5386f294e0c624d204d5ad173", + "value": "0x66192543000000000000000000000000013f2add120d83eb24921c" + }, + { + "key": "0x4a57dc80bddf9837cf4905c505ec2c0e6d8d46a869c49f634adbbda28173ada", + "value": "0x1ce9" + }, + { + "key": "0x25d71445f856de71c5afbec7ec299c3a2b17c2576842098bfbd88583e5f665f", + "value": "0x661925430000000000000000000000000000000000000000000000" + }, + { + "key": "0x6dc8a7f36c93b497755b9cbc30209e2edf947a031a69275d79f23e949d1ce9f", + "value": "0x661925430000000000000000000000000067384bf82699f6fab26e" + }, + { + "key": "0x10144c97a85b488b2d065f9e7fafed528e6536ef657c4dbefed1781c5e0827c", + "value": "0x44a4cf62fec355adba9ba1f3122a08c6ccf7819d524efb7ca549ca06244cc3d" + } + ] + }, + { + "address": "0x4ab6d9b3d472b2066791c8a5cbd1fc14994395271e95598cf6ab23002cdc3af", + "storage_entries": [] + }, + { + "address": "0x66b17ede4c6a939caa79890c19a286158ae0a02ad0d30a2aae7e6e037a6564", + "storage_entries": [] + }, + { + "address": "0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d", + "storage_entries": [ + { + "key": "0x6c5a74e47f2716d692f87ca6c310282dff1d955f31b67c33d1a7870d96cd0bb", + "value": "0x5e39d79c117d2c71" + }, + { + "key": "0x250e2b769483bc7fd5b8a7d960b3b782d1b7d08147ee17c69ab1d4be41b9a2e", + "value": "0x4d92b10f4aa6ffa" + }, + { + "key": "0x121c4bd474dbba319caa6e29293ec0a450eae350e9fc3330ed0b742379411e8", + "value": "0x1d8ace743cb67d86c3" + }, + { + "key": "0x49314fbfc3a6d68bbd13db498f00c20fcfe63d8c519c6a2bb9cb23c92d8c171", + "value": "0x3769afdec0357e1a" + }, + { + "key": "0x5260e072ef679e2dbaf1f9b104bf5a0582680e078a36e42e8fa978dd804ccb9", + "value": "0x158bf49cf843a0731d66" + }, + { + "key": "0x3fb163093be7e35dcb9749655505bfe63a69c18cefec377f139ac25eaa68f05", + "value": "0x0" + }, + { + "key": "0x456386ebc28fe2d616d1bccec8e1f4c2e424dcfcd27dc45214271f867eff35d", + "value": "0xbbb2275badbc04d" + }, + { + "key": "0xb5311b97477466dcdc360c8c4fe96e478c684872f76c6a818b5768004a4947", + "value": "0x5d0d78f2490fa5a882cf" + }, + { + "key": "0x29ca83ef4613508a5bf4e573e6233bbfadf5367086ae2d58a635f67c5c2e3d7", + "value": "0x2e7653d7d7a22ef6" + }, + { + "key": "0x7c6d844c097ac08e155d40d383b174c05ce53b193d74caf6e557deadfa76bad", + "value": "0x58116df18f14c8e09" + }, + { + "key": "0x7f0a3ff0244b195ae2ec1dbbc99bf7879236f8dc4e72c5709da87736266bfd", + "value": "0x589f0c9b966b9f9d0c8" + }, + { + "key": "0x77f4c1613e0d14b85b44c571b0c3f1062fb1ccafa35b427ce37fa94c3948a6d", + "value": "0x717ece5aa2df652d700" + }, + { + "key": "0x299e8d5d4148ea0963a3dc284d0b1dab75ebaa45a1163c3ab7f8e0e0d20278d", + "value": "0x4a8169bdaeed5f0" + }, + { + "key": "0x1437dfe96cf055d7694efe95994e114586332257ca3a57cc4cd59e9a8022893", + "value": "0x58d15e176280000" + }, + { + "key": "0x71a068f04ed709ddd5e5dcf5fa0bcffc6a94b7accaa15504f2db8ab28962b79", + "value": "0x0" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x28c5141f20bf1a6ec6c95" + }, + { + "key": "0x1f91dee9dc4c6966475385c9741200d7f6e62dfc34a8d0888f5c69ea8767ba7", + "value": "0x93accf6e2b8761a8635" + }, + { + "key": "0x6223849ebd23ad67c81e30bb3d82f2477d864f8ae8c8b2b9832662e7cd08f53", + "value": "0x16105758512cae54" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x2526b89ae93e500d935dbc" + }, + { + "key": "0x5826a749b73b2632e31704d24a9c6165e9b980f652f3d67cdeb3a34953c4c67", + "value": "0x145cccdf96724b066" + }, + { + "key": "0x3d04a4f8cb20e0ce7ca60c5f684ec484bf10a88ed026d9451edded425dc44d3", + "value": "0x65a4f1913f37c6babb8" + }, + { + "key": "0x4883415848a7258a7359bdd474a0127c069f94207f59e4e109888efd58a7b5a", + "value": "0x221a502944b28e00" + }, + { + "key": "0x3c33860d274b2b559e71c6190a38ae8aedda95366387155c63d55b1f028d4c2", + "value": "0x47f4de9bec107ae32cbf" + }, + { + "key": "0xd267f842452284025b1a955d3c96f27d1a20a21967527cc27032b1c88085db", + "value": "0x2182842e80a11295ec" + }, + { + "key": "0x51adc9cd83ac945c2a22217d3b8e54fbf204c63af09a9e7a3aec49f0f3ccd8c", + "value": "0x4c5492be9a3fedc1cae0" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0xbd558a43d8dd913619414" + }, + { + "key": "0x264a23157aa8b4e0e8a6aa4d95397ff45a904cb7c24c746981e9931e74de23f", + "value": "0x4d6b87cadac02b90" + }, + { + "key": "0x8e7faf406fa6479467ff0bf84cac24cf3b9edee69069fcbb876bd82026862b", + "value": "0xb71259a595ab7780" + }, + { + "key": "0x32e783e8a1618920913546aad5cfb12beef69bc4070aeb0068f2703ef21c20a", + "value": "0x8ac7230489e80000" + }, + { + "key": "0x13052d8da5063f6e7e879dead675615ef8f08117f9ad7dba154282feefb47aa", + "value": "0x24bea9e428c342f9" + }, + { + "key": "0x4a095aa1769d6cf030f2bd5932e4b4fd10d48937850e7b780ca3b0b40da5c7b", + "value": "0xa727ef7126f30e37248a9" + }, + { + "key": "0x356c7b27b831a0462c6754a40f256fa7bcdde439e01ac2e54a2974aa09f27e", + "value": "0xe040d91d7a4599" + }, + { + "key": "0x5496768776e3db30053404f18067d81a6e06f5a2b0de326e21298fd9d569a9a", + "value": "0x11934b836ae96fa48c0" + }, + { + "key": "0x41e98bc6b105140e2cdb4c84c0784417868193c2d35ee590750430600e011b", + "value": "0x0" + }, + { + "key": "0x5c3e2a1e72d3c986c12d4824a109a38a03f0a0eff18bc4c25e1fb893db769b1", + "value": "0x1d944a99d94afa86a4" + }, + { + "key": "0x5e24eaac6d765d0bce21e961374931f15f39880ec732d40780651e00cf8e3c8", + "value": "0x45ca20ea1bbacfc74" + }, + { + "key": "0x6bd7effc311eb8405ed49db155c5afcb5910fc2599e6a8aa340c0945ebc3699", + "value": "0xafc01348da80056" + }, + { + "key": "0x3eac1de111b4a93fcecd500b2e2b4ab44054a53dd123d96f03563334deda902", + "value": "0xc4be7e2fdb61fc84d69" + }, + { + "key": "0x2152f551f4a641a06f634e6f083141fa878c4d5a4c04878de4ddff4ca1d3696", + "value": "0x85861f744c2e0d0c" + }, + { + "key": "0x6085544b61ac5e4e14df3284f9c6cca57f6720d419c01402c059e37ea31e45", + "value": "0xbd18596ec7e030879e3" + }, + { + "key": "0x7a7b63c63e2b4de94aeeaae5fd8e39595c116c43ad70e44767bb9841d60ad39", + "value": "0x6265eb6a8e3ae880000" + }, + { + "key": "0x4fa9912688f5600e19da22d01ac5639f14ad3e1377d36b39bb0a2718badd6be", + "value": "0x0" + }, + { + "key": "0x3646467915b5985647994e6ddb3dd465052b2673b46726e45d647894763654f", + "value": "0xd1efc4a8b01e350d3ed" + }, + { + "key": "0x28affb810cc6a417b219889cc2e88f4dab38a3ec432a1723c8768ef06a9c333", + "value": "0x5cf041937ed50b6a" + }, + { + "key": "0x68db361478352685dafbb51c2b0d43d2576e0b7784c2561658b5a61d535a434", + "value": "0xbae27ddf04e22052380" + }, + { + "key": "0x721b3c55fea27361afe46e88161c57cda6502c695e760564f7017a81ab2e0f4", + "value": "0x58d15e176280000" + }, + { + "key": "0x110d72e967a25e84433e44d5dc11f3ac9ebc2b1cdc33190a97d01ce2e3798cc", + "value": "0x1379e103725a23e231" + }, + { + "key": "0x240f71f0f558b4ee88c8d379a7ab3f73665e8b8fd6c27220231b94fda754ea9", + "value": "0xdc729c67c7ce9cb6" + }, + { + "key": "0x6970aa5e124f8e58492d3d08c1983dadbc72bb5e5bceed6c12e1fe5e2e66f14", + "value": "0x1b1ae4d6e2ef500000" + }, + { + "key": "0x4b389365fc70d4c694456842dc06ced0a9602307759061720dea6fb56342450", + "value": "0x58d15e176280000" + }, + { + "key": "0xfe4db3c4add74e710b178317d643b6b8ad5c9d6f9db9f2a6896823e51f0157", + "value": "0xffff51d4bb041c2" + }, + { + "key": "0x6540782e652cfb3125ca8ae71ebd8bb4ebdbeac5ffdc272e0d01de9e6f0d423", + "value": "0x16c46f07bb12fcebb7" + }, + { + "key": "0x74389c3f22666d81bbce4034ebde6bfbb1010b53f9adab3ccac6c68c73ad01e", + "value": "0x45874f1b9745df61f" + }, + { + "key": "0x12e123730e672c88fe90380fc9b6e959b51a68e97fdfb070c29904b14316c53", + "value": "0x26c0a775cc0c559b" + }, + { + "key": "0x76181c389e63c75900a3fb0ae44f576cc6eba9698e9e9cb7c9edc4be7afd2b3", + "value": "0x1a9d3b04eb9400d2f6f8" + }, + { + "key": "0x3cdd2f31b998e0ecaa03875e6cad0e18e75a2e3728183fd6eb6b5b56ab381a1", + "value": "0xa26d9b5e39ec5efa" + }, + { + "key": "0x1f8bcd1c7bef334889efc47b17528f429217960974b49dfafe0aef88159dd01", + "value": "0x26c60759f0c456276" + }, + { + "key": "0x2cb3e4a30718e4427860b56e48880b5de8a010b122f10efba82b6fe3de49f0", + "value": "0x58d15e176280000" + }, + { + "key": "0x4e3443b6236b059f979402481d17e45acb60b120fff601564bd1d32370f17d", + "value": "0x1d5158fd64b8cb2159" + }, + { + "key": "0x443b616ba84687d39d168441092e29aa8f70c1bbc3ba3beee9b3e13daa5320c", + "value": "0x0" + }, + { + "key": "0x4303f9a8a386564a23333169d519922bd81a3521141a3f74c1cf536000a1398", + "value": "0xd31ef90f87757830bb57" + }, + { + "key": "0x19668d1535e2b273ff6fa5a071de84cc5fc7b2e5548d991039f37e905c6beda", + "value": "0x185f4251a1fb631ef5" + }, + { + "key": "0x7c4b9d7588247405681dcbf926060015500cf5ec925b1c56728a2b712ede8d6", + "value": "0x1628414e0cc8208a9b6" + }, + { + "key": "0x777725a52fa5d5b525f700f93a2cb66ab74dca0ac74b2a46d4cc5311a078d3f", + "value": "0x2369a39f06d610d1c" + }, + { + "key": "0x72eaa8bba5b8ff56513ef6f52fc45e988e8e126224fc1aaa18ccdf0df52d6db", + "value": "0x2dfaa52f7dd79aa9ff807a3" + }, + { + "key": "0x12552619c2c46807cb1053236cb8cba4d21e52518ff919ef17630f78c8ead3d", + "value": "0x3b1e1ae46ffa15b17" + }, + { + "key": "0x456135f537f0ee7651b7aec50d5f0c3c3bb7b8210984edc4fb3ec08cc6d4461", + "value": "0x0" + }, + { + "key": "0x580d3d04765fba164860a167ffa5beff23c567d7fb44969d58bbf72470445f9", + "value": "0x0" + }, + { + "key": "0x48353e3aba49faf57d6fbb2df23c261892547c45cb442dd79baa4bca1c47015", + "value": "0x21e0c0013070adc0000" + }, + { + "key": "0x211c485f57f335b662c3d4b6a16eb6da4112a7139ae32fea8ea8da772974d2b", + "value": "0xba6cf02a5cd53124" + }, + { + "key": "0x6180806f23c68be50a0927a6e9c4977256d4211877595d2490b57e01b6fa44e", + "value": "0x20601b7fbd02c45bc" + }, + { + "key": "0x53d00f8793b3001a3950b05028e4a8d34d7affdcd5836b2eb90bc207ba8786d", + "value": "0x42f4648892fd8b3490000" + }, + { + "key": "0x371eaec456fafb62307fb4e3bb96519ea81f43e046ec7e56d1deaefbc0e8fca", + "value": "0x3ea5160677494d6a" + }, + { + "key": "0x65937e698f98da7cf9294cb8381283788a7fe57e8dc7f7334c62126b8a82a5b", + "value": "0x262d607d1b3be9350670" + }, + { + "key": "0x4d70d1ffc44306816136c5e860c41c1f51c2b8842c609b5bd0da7621de209ca", + "value": "0x7372ac32adb78ef8c" + }, + { + "key": "0x5713adc80e774ed29eeefcd5fd257d0f41f2928d159f8334ad16ba01e2f1a53", + "value": "0x58d15e176280000" + }, + { + "key": "0x151656ce4ec5df2fac740ccee23e1e6163d3b1faeac73f420a98714167416b7", + "value": "0x9184e72aaa2" + }, + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0xa9f306973843357ff8217" + }, + { + "key": "0x5f272cb8db7f452dcd127bd9733c810c97c774389b4a950c0c22132005d1eba", + "value": "0x2a1f5921d8aead342" + }, + { + "key": "0x5a45959cdc664a7d990e480ede23781f4a00c0c4a3650ae553d6fbee1251d43", + "value": "0x0" + }, + { + "key": "0x6aeab01dd52882d2e3aa1f8ea4c550b0b16162aa64652652eede1653824335c", + "value": "0x155402e3155d3b84" + }, + { + "key": "0x27b143b8f1e4fb61eb8efacfd7f9a706cdc2156875e5b130ba074519954b405", + "value": "0x1e2dd618c85a64c011b9" + }, + { + "key": "0x5be9e82f929799601dbba1658dc1f532eb766f99b41407423c6d5b7dba36d50", + "value": "0x24a9cfd9546b045" + }, + { + "key": "0x44deeb45f69cc5b0823bb32568f5264d552ec755d06c483cfecbc3fe289d2f7", + "value": "0x0" + }, + { + "key": "0x1bbec8c9f6fc7e4b1833eac94795aeef2950a49fcf3f5866c3fe16b7d8c3297", + "value": "0x2fc719438424bf" + }, + { + "key": "0x669dad978f692eebc96d7387e809adf37d347e208a58c2bf8f792992fa58865", + "value": "0x58d15e176280000" + }, + { + "key": "0x121a72389197c25895ab7c8737aa0a507c2808009ccafeaa6de38fe14daaca5", + "value": "0x20b2af950e5d23" + }, + { + "key": "0x54f1c6b4da4f3ef4f15f89e0f859ae3d9268dfe9e9869932d42d0ea15c47ed1", + "value": "0x0" + }, + { + "key": "0x4ddff7748a34353c94249513b00447d55dc252c42670d9b2fc89f5f87508f47", + "value": "0x11fd043df798f1b8d6d" + }, + { + "key": "0x512b0f1838759f8998e04a996eb081d3d3b24afad3d2eee44b70695aca8a97b", + "value": "0x2b79e7ade590c9a836" + }, + { + "key": "0x19b800df5e5d3375fcce480579809a139ef5249ca12340664161540b7a20c0c", + "value": "0xbe9d394edf1c3e51" + }, + { + "key": "0x7003d313e29e93fe4ffed4f45994539b8ce69f56fd2e2f046d2a353057d5904", + "value": "0x58d15e176280000" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x1d073f1a56ce284f8b1" + }, + { + "key": "0x331450c261990f0b9eb86aaea7c39ae5c6ab072a71f66decf140fdbd75088df", + "value": "0x58d15e176280000" + }, + { + "key": "0x1ce9169aa7a8498bd99cbb5d77355f372eda1ed05b42507f98490253315a6e1", + "value": "0x115c5b69cddd0365d" + }, + { + "key": "0x71da37b9c5945d0bd3ef277eeab3d43d6f6f4a270f3dfa465205acc37724db7", + "value": "0x3e36d9f3099f64ae8b" + }, + { + "key": "0x3ab6ae8e909f512b024d9b86f2d7a8aaa3f2a05ecb5bec2843d4a2c7051ed86", + "value": "0x300580fd81fcbe000" + }, + { + "key": "0x625c891216062499d14ddd7257e81741a54b84c587e7d55a0dae7c3c9122427", + "value": "0x4490fde2aedd120db80" + }, + { + "key": "0xb4f79ae2386ba6b950647baf7847cf4d58c4887a539ca0a88c444da152c06f", + "value": "0x1ad36190ef58514f64" + }, + { + "key": "0x168e06589ed1429d749afaa1281b5f9e74a4cc19fcf352103f8fa7bd582a3d4", + "value": "0x843ac332fc3e8865335" + }, + { + "key": "0x7e753a6082e1944397da3e95065fe88020664cc5d162411afeb6e6a85522119", + "value": "0x175b12820a5b5795" + }, + { + "key": "0x798adbb2a995fb7cec7a982bcde09c96e2e272610dc05e51cd475bf9c58e7d", + "value": "0x58d15e176280000" + }, + { + "key": "0xf15fb1155914d267308b6b77c4b97002688532054721b6a4a0dd47172e6737", + "value": "0x58d15e176280000" + }, + { + "key": "0x43e2a627b69b10a0d0364802f42110af90a93bc8f8b3ce1e95d3420ba66a989", + "value": "0x13caaac77fcd89b5" + }, + { + "key": "0x74bf167c966db7e0dfa49ebcef16412e2746fdba0b0a3fe287f18393f0c331f", + "value": "0x1148db3e2f29757c36" + }, + { + "key": "0x1715dfbd02aa6e22565da75edc82c0237d6b1800b27daebe66c859ca663358c", + "value": "0x8f583e4f2baaff975e26e0" + }, + { + "key": "0x4d82998aa3d8e5173bfc632d048e555128ebde2d426f3235d8d67e72235baff", + "value": "0x7d9fd6c9cadd4ec93f" + }, + { + "key": "0x9e79c5a465de68a6a5a11b3d34d3024613e4f8bee62c0fc148a4a53137cd72", + "value": "0x119833b4415f875c7" + }, + { + "key": "0x644513e40d8e57d9345736d42e97e489fe3ef7d2c6cfe62227fa7a0cf04e5f0", + "value": "0x31d913f7260925eb23" + }, + { + "key": "0x2fefcdfd0b509ba446d28eab5497b270614acf9d5656718560b97e4af9e82bd", + "value": "0x602c88cadde4038" + }, + { + "key": "0x1dd9d833a4d792ee3c39425ba424e7a03cb6c27a91421d7a336d27c02c95a0b", + "value": "0x4c7d034cadd60b5337" + }, + { + "key": "0x21a3ba43012bf96cacae60c8c1b238beb0384b852ea340656a5270e70510500", + "value": "0x0" + }, + { + "key": "0x14d8b6d891eacdb8a754a6dd3aeaaa8d4271648e2dad5f0e48141a57b7d8923", + "value": "0xc401924636a1c2fdb" + }, + { + "key": "0x1b5096640ac74b4f3d77f989059e19bfeb38105f1ddc700b568d657c8c885a8", + "value": "0x0" + }, + { + "key": "0x5460e3ada357c552adbe9fdd830aabe59b7a3b43284240fb606458be8c6e09", + "value": "0x4633f02002eb92f4d22800" + }, + { + "key": "0x3c61642f9789768773d4805df5ac9999ca7fcee76e19be256106e35ebc65435", + "value": "0xaad1b2e746506f39" + }, + { + "key": "0x5507934e8748bf313490cf25bc0bd3d858d6238419aa362cf5bc01429b0fe0b", + "value": "0xb0f6bce8b7434c2d" + }, + { + "key": "0x3fa993adacc681439adaccc347de979c7052735cab4b8248adcd83c2be0e6cf", + "value": "0xd0e9c8d90b9693dd2" + }, + { + "key": "0x4278c0245d42570c539dc857dc1621e818062da07d0bb31aef71ea3b93c1ef", + "value": "0x9c2007651b2500000" + }, + { + "key": "0x6a2d19abedb3a5b6e02378994346f0632a32d7aac28a7907aa0851b92da6162", + "value": "0x1b1ae4d6e2ef500000" + }, + { + "key": "0x5ee78670918803f52dc6866592aabb690b4d4dea5d442d72ed216bbedbea02b", + "value": "0x2e182af189c786a73b" + }, + { + "key": "0x3d68b438663dac2de1ccc64cbf256b147d87562320499acaecab635f0eedc92", + "value": "0x2bf8b279bc61078809" + }, + { + "key": "0x3dd46ef52c8055788c0f3cbe187295481e80edcf17e338ec0c3251ebe447983", + "value": "0x515c02d8d7328" + }, + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0x2f9010cd4f4bbcd50e1" + }, + { + "key": "0x4a85a355998893507580dd65ddad4c32523250ddd8a52913c0aa3ce3a58a008", + "value": "0x58d15e176280000" + }, + { + "key": "0x326b4d0a04394a0a45d6478ca12042da2b0a4522f3d2ad92f9ecf8464dde7dc", + "value": "0x1792fc227f41d8a3a06" + }, + { + "key": "0x73409a2ef8c6c1c00ecc946bb129a55601b51a83da1196b6d34ece5846406bb", + "value": "0xab7b8f4cc8ce87ba3d" + }, + { + "key": "0x8338ce786c8be4fd8732c2f7898b9177711a3c0b5736d34a9c5380a111592b", + "value": "0x60c1135fb96d30000" + }, + { + "key": "0x6ec39ad2f520d6d219131f33fe0fb8e0d3b57b76bca399c44c1f8fb0d806044", + "value": "0x0" + }, + { + "key": "0x29e94dbb80358de97735fc838c1ac4ade4b7f4a3d4ee62526e0b8a167fb50cc", + "value": "0x0" + }, + { + "key": "0x7aad5dfb2918b0001f7c5d8f2858b2f47c86e3fa1139fbeb6931fb9a3800b6", + "value": "0x69a919936727381370c09" + }, + { + "key": "0x10931734cae49732f92d18d647507438ba1c35c8222b623bed47148c8022a5b", + "value": "0x8f1f941fe65b493bf" + }, + { + "key": "0x23acf5d290fc677e9f72375a7124c4659c2eb43b6ad50297f069ba615df0b44", + "value": "0x0" + }, + { + "key": "0x575906af3b972d0f5fdd006aada8523677b41f9b997e89e6aa9d6bceda4f15a", + "value": "0x51340aa3756c32d2" + }, + { + "key": "0x7ba41a804027133d1fdf7179aeed38e65be3fb2b846dea235a76a426550495f", + "value": "0x0" + }, + { + "key": "0x500ea75863ff752b8ecf935b094cd6b3fd475330a4f2bc01c4e6f6707ff722f", + "value": "0x157fb8fcb59fcbf8" + }, + { + "key": "0x126aeab667c785c808b87c4ee0783eab5b8eaaadda28d7ddb4631d5d9816325", + "value": "0x299fdfb66524ba56" + }, + { + "key": "0x4e305037edbab2de972400fc192778f6ce50c97f59de5f358e5a4c3a881204", + "value": "0x13db34bdda9f368a" + }, + { + "key": "0x45290a4ffef1acab851f3e0f54a09018dc76844f9b8957670d334ddcb24eab4", + "value": "0x1d76695cae1bf841c8" + }, + { + "key": "0x3d7ccfb9e9c5944c7a3226921716da0d42239892dbde7b12c1e5597d31c4124", + "value": "0x8b254d6374a7b3e02fd1" + }, + { + "key": "0x110a8976ab472ded6037dcf5c2d5f2c29d3c70196962236000ff8db016bac7a", + "value": "0x40c72a28ac63045f86a" + }, + { + "key": "0x35d7d7242eff6e573b33f19f0e7817038ac0f4b7e3c922d6022c89ed14dd460", + "value": "0x8fe943904973a2b7b57" + }, + { + "key": "0x3791bb57c6f40abc341e0805ba91b1781414c3e018f2044bb0a0a20b0ccd26b", + "value": "0x0" + }, + { + "key": "0x3e9e60d7013c093700b75b448a3fb0330afe825547ada33c9f3fe5fd35793ff", + "value": "0x0" + }, + { + "key": "0x1810b71bf9eeab197386a8125eeef2ad8c5ee3ec5e8d971249e4d777c41f7f3", + "value": "0x1c0aa1986f181f0" + }, + { + "key": "0xc8c2b5bfdaf0dcaeeb47e38d6d9f82acdbe9d7078bb36358776cc94847e779", + "value": "0x30c596694fdfcb0c3" + }, + { + "key": "0x774c86b6884225d5be259487c6c91bc9fe45fd14c12703b0638e2d0b439e245", + "value": "0x116f18b81715a0000" + }, + { + "key": "0x52eb103f66d8d45da8cd7f243416814bbe35fdb495141fa6fe83542a835cfbf", + "value": "0x5df1ee0e8e1755b" + }, + { + "key": "0x4242ba209ca739af55c190cbb05416a49ab6f2dc329c36253b9abfb7a8416b2", + "value": "0x71bb92d63bd15c8d8" + }, + { + "key": "0x6c88f4473dcefdc6b4dec9c5d6d1a6458c814b75a897902a31740bcce5a292f", + "value": "0x58d15e176280000" + }, + { + "key": "0xfcfcbc22efcbadab2f20c85590d3fff051f03c37b8ac047884cc168d82e0d0", + "value": "0x4019af8dad9a7e1a" + }, + { + "key": "0x71a553e4d87dc2056c4cee9d711ff6dd7fc0f2441a7fb0ca38f987b858d131d", + "value": "0x4b3f592a73736711f" + }, + { + "key": "0x1f7f66a68a699950c4cd9d112fbc91b1984309d851456ae415f731a9fa0682f", + "value": "0x28d770ab07113191" + }, + { + "key": "0x3cdee4311485865af57be0739f2a8ce2ac40694f4091bf16e19c50850bfee51", + "value": "0x41c89ea97c04a013" + }, + { + "key": "0x498b3198e881da020120a05d111cb8e5a41409c2f8e187a1574ce91e07bb7ff", + "value": "0xc7356db8912960f" + }, + { + "key": "0xe9e3109d8326a4325da675f8b8eacd065db0c27604840367214c060ee05bd9", + "value": "0x1b1ae4d6e2ef500000" + }, + { + "key": "0x6e4b7d65a4e2b11b281ab2edf0b4a1fc05bccd05cc611215bdf587ba82f5336", + "value": "0x0" + }, + { + "key": "0x3e519b9a4b10176f1f62ddd208b512e02a0eb78236122ca42202d5a9010bee7", + "value": "0x7557bf9b800458000" + }, + { + "key": "0x40dfcd01fc65bfe40fa43dcc5de9b30b9ff1191bb4b27a8f380c59b18d297c2", + "value": "0x15564819c42ff9d8fd" + }, + { + "key": "0x7a1b7192e2ad8a249d5b0e21529360588f3ae9d41b5b2cecb53ac2da8ec5d6d", + "value": "0x1b1ae4d6e2ef500000" + }, + { + "key": "0x16946970e312d52fedff2f24c64808fbfa2eca4409a2f687f5a489e598b523f", + "value": "0x19287a390659dde203" + }, + { + "key": "0x416b102a0ff36fa602093f7df7ee03b977d56f82deaef59e013e4799fa726f0", + "value": "0x11acffd6fc68f74" + }, + { + "key": "0x2bb236dab836f2572a5aac4759b12fe15c7d97a63ff5c16f523eb832c174f3c", + "value": "0xb7c70e6cf530e3a6a" + }, + { + "key": "0x242c92ba37d9a044720cd2db0aec0a1732d2dfb36cd93dc68f6922a6f4a1a78", + "value": "0x5520593de6d680d01e7" + } + ] + }, + { + "address": "0x7ba8793f1492ad7bffab7c9a355163f7c8883fc635535fb202aec1ebc6dddf6", + "storage_entries": [] + }, + { + "address": "0x712085327a6b77fa844508d43fc9d3883587343fdb7246b126deb2fe0b9401", + "storage_entries": [] + }, + { + "address": "0x49201f03a0f0a9e70e28dcd74cbf44931174dbe3cc4b2ff488898339959e559", + "storage_entries": [ + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x48d094cc7a66e44d8d9" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x1de620b2e60ec57a9fee1" + }, + { + "key": "0x21a3ba43012bf96cacae60c8c1b238beb0384b852ea340656a5270e70510500", + "value": "0x8b35e979752f19f565f" + } + ] + }, + { + "address": "0x5641eacf2a5d931620187c4c8a6683ee326ca2b6185ffa555e42f9dee1d7851", + "storage_entries": [] + }, + { + "address": "0x78597e910132071274f2664664ab069cc0a4682f73e701d723b6fc2e8930b1b", + "storage_entries": [ + { + "key": "0x23da4417e0e94ba07a3a35a70aa811f3bbc3c03a8e6770b6a550fe9a7348899", + "value": "0x7f47f2defd8a99bd6b6e47fc2cfecb0c" + }, + { + "key": "0x277ae353acff3873c6057f01a2b1c6fc6a3332644d56135917325981a085379", + "value": "0xfed505feba6f97d774fb0ba20f7eaf2e" + } + ] + }, + { + "address": "0x70b7b45f7dc9ddfa61d1c69c529dc5d12915e932f978d12acc672fbdf13ebab", + "storage_entries": [] + }, + { + "address": "0x27120417ab26562fc44907d73a91b5a8882b51c3b29e38a2fadd12674e888f2", + "storage_entries": [] + }, + { + "address": "0x4fc333204fc8b52a9327591e729d229e7b0132bfcaac0d212652f228d667ec0", + "storage_entries": [] + }, + { + "address": "0x28fcfa6432cf1bb8ddad2fd22addfc3ec7580328b96c3bf3510e1bacdd1554", + "storage_entries": [] + }, + { + "address": "0x48ddb56ceb74777d081a9ce684aaa78e98c286e14fc1badb3a9938e710d6866", + "storage_entries": [ + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x68344a" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x108f41cf9a4c9b714c" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66192543" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x8f1f941fe65b493bf" + } + ] + }, + { + "address": "0x3b3079ff6393f0fae4ec1ae1439e215e133912b4c76ff59190252e6b8d909cf", + "storage_entries": [] + }, + { + "address": "0xd32b72dfd5b5209d67d17da5ed97d0e118e00eeab4160cd4b517f819b726c", + "storage_entries": [] + }, + { + "address": "0x77b36d75ca09a944e7a0997b7732f7817407eda96e0e978e9f185aec0f48c6c", + "storage_entries": [] + }, + { + "address": "0x5ae3ac09bbfd59e9862c7a6c919699b5358f0eb72bc3266e9caad0e84bc86b5", + "storage_entries": [] + }, + { + "address": "0x36f183ec46cc73cb384aa639533c96ecba458133fb0c8292fc927973072af93", + "storage_entries": [] + }, + { + "address": "0xca44c79a77bcb186f8cdd1a0cd222cc258bebc3bec29a0a020ba20fdca40e9", + "storage_entries": [ + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0x5bd79cf8f80982" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x1b778e32349c7894" + } + ] + }, + { + "address": "0x2464682812fe861cda4b478ea9ce9b546c724383c5bbe32489036cf90bcbfb4", + "storage_entries": [] + }, + { + "address": "0x62cd8befe1322adc719ebd8aff6c657ef21941f4f8540a055907b673a183fa4", + "storage_entries": [] + }, + { + "address": "0x41f9a1e9a4d924273f5a5c0c138d52d66d2e6a8bee17412c6b0f48fe059ae04", + "storage_entries": [ + { + "key": "0x3f5753913a85fdf0e9ebfc1be06a5110a196b5d3a06020cb4f6d186c849c87e", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x34b2321bbd858" + } + ] + }, + { + "address": "0x5eb02e164f78fd91b9be6a0b9b3aa02c936db485bd760730f65711533c70a26", + "storage_entries": [ + { + "key": "0x1ebe6e6f404e1482af57426efcfce00eebc3712fc4dff42f6ce04be51dce987", + "value": "0x6f45a72a2ace3348" + } + ] + }, + { + "address": "0x5b5195e19ec26d7bdc5a81ebaa5aa82b2df591186cc64bc1a6d3db5c146e9fa", + "storage_entries": [] + }, + { + "address": "0x40e2fba08ef093d7113a8e80dff476bbdffc81ddfb29cabe98d76aa6e05b501", + "storage_entries": [] + }, + { + "address": "0x248ff122648be7d6a88a66e4b57151460164fd958948f18637c8aa0f049da3c", + "storage_entries": [] + }, + { + "address": "0x763cddfe26a2eb2eba7c05b7eb124794540565011b0adbeb5a1ae527b2f33b", + "storage_entries": [] + }, + { + "address": "0x229061f0e8c9f2bd265f2d6a6153ef5a117b8c4854379c3cfca58c3e1835fb0", + "storage_entries": [] + }, + { + "address": "0x753bf5d52dcb891d567f962e2601bc02afa3f8f203422eaee9b8fea54ae74fa", + "storage_entries": [] + }, + { + "address": "0x42b8f0484674ca266ac5d08e4ac6a3fe65bd3129795def2dca5c34ecc5f96d2", + "storage_entries": [ + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x15fe61e3f8563fd9bf" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0xba994a5711ffaded" + }, + { + "key": "0x274183d70af7771f2ea5e789177bee9cd2f107b1e5cb59ddbf5f540eda2516f", + "value": "0x0" + }, + { + "key": "0x49a8ef79cab313360767015d427d0307368eff5c2c81b019aff018ec638eef2", + "value": "0x2f08b189bfdeff4e9" + }, + { + "key": "0x211c485f57f335b662c3d4b6a16eb6da4112a7139ae32fea8ea8da772974d2b", + "value": "0x513c5366523bfb" + } + ] + }, + { + "address": "0x3a9af20b63141b53abaaba4a2fd7353cc51822a2ed0d7340c0f8ebf2d0f79da", + "storage_entries": [] + }, + { + "address": "0x5763f02381e89c6894ffea078d1cf9e58da0ead33d5b52aa608acc04063053", + "storage_entries": [ + { + "key": "0x3e70a0400372eefc7adbec3d416bd27e47c23016101672eb4d7fb401a612382", + "value": "0x13d84cb659942154" + } + ] + }, + { + "address": "0x5da39403add2b7695f56745c65846f7254cb4e144fbfecbe4995e0e9071fe39", + "storage_entries": [] + }, + { + "address": "0x53d93b563d52c8654eb31f203680650ae524386f2d099f3f2ae8c1244be8bc9", + "storage_entries": [] + }, + { + "address": "0x2148f64f57323e39b01c58adf6a69d30f467baa57b473072cda2cccffbe9243", + "storage_entries": [] + }, + { + "address": "0x89e7c35e6d4f1d0316e2315ffb3ed02b3cb2fc6be94c5ea814508bd02d3554", + "storage_entries": [] + }, + { + "address": "0x14c4df4c92022f2d00e894e8624d5e809126fb7525c14ce4226b07842ac73cf", + "storage_entries": [] + }, + { + "address": "0x2d2e13758c4ed963182630acf475528b071e3aea6eb6f98e7aaa949a4ff75d7", + "storage_entries": [ + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0xaa96e6f18b82a6b8b60c036d0" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x33b7c1a61291a4d" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66192543" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x150773de6df1c4178" + } + ] + }, + { + "address": "0x71e79d6bc6efacf561513f62477023ea5c3350ef158399ba00751d002ac6e6f", + "storage_entries": [] + }, + { + "address": "0x1e0eee22c684fdf32babdd65e6bcca62a8ce2c23c8d5e68f3989595d26e1b4a", + "storage_entries": [ + { + "key": "0x927da05b505fe9fad34a02c2cfdb5e017c446e3199d0b746ec298873e78747", + "value": "0x0" + }, + { + "key": "0x3ab6ae8e909f512b024d9b86f2d7a8aaa3f2a05ecb5bec2843d4a2c7051ed86", + "value": "0x0" + }, + { + "key": "0x55a33869e536ca83789615a450fa2360925d05676d9803ad1f7a802e2eae53", + "value": "0x99e92c851f9d2b63343bc54" + }, + { + "key": "0x3c6be39f77460d0354d345ddd1ec6ea68bb531649e06b6480aef0bbbaf8c99e", + "value": "0x555f748c89022a88b90f" + }, + { + "key": "0x737d7ef20a87694c18a663daf224c04529cbe50d41da5367259860ba7eddbe5", + "value": "0xc6b52200ba189fc665a9" + } + ] + }, + { + "address": "0x30615bec9c1506bfac97d9dbd3c546307987d467a7f95d5533c2e861eb81f3f", + "storage_entries": [ + { + "key": "0x2e3f9cadd00a7b869d6b98db5d32847ff18a5561c3f3f7a944380864c8f247b", + "value": "0x66192543" + }, + { + "key": "0x3cdef5d80c6ad04af135e445867114b5ce32ed8dc8de667995f3d27760e3520", + "value": "0x14f414c5a7" + }, + { + "key": "0x3d559b0a40721f941c60278c88f31a7302604bd0579c9d292a5a882d5da4488", + "value": "0x66192543" + }, + { + "key": "0x25d9306a3dd51d4276fa92f67bcbd66be9d76c61120929a3ca417a0ac223785", + "value": "0x17aceebd7d059cb3447" + }, + { + "key": "0x3e65716c9b9f010d10085941d0c6e6dfb190695b7cf09a71f0aca74ab94cdf", + "value": "0x661009bc9e694c3f" + }, + { + "key": "0x3d559b0a40721f941c60278c88f31a7302604bd0579c9d292a5a882d5da4489", + "value": "0xc976272aa0565eb2f29c237" + }, + { + "key": "0x1131b64255bdb5133d698c0e8b9a13bfacb28f86d2dea7f2f1b1a9f8762a408", + "value": "0x3fef" + }, + { + "key": "0x4e9417c05bcf183e111558ce4666b053bbfe9736b74fba16b017ab7ae075f1", + "value": "0x161928854548f7ed2" + }, + { + "key": "0x3d559b0a40721f941c60278c88f31a7302604bd0579c9d292a5a882d5da448b", + "value": "0x661009bc9e694c3f" + }, + { + "key": "0x24dc99466e4418b4fccd818c369e805aa4b2c2e28731ca51ec24311cfb85a69", + "value": "0xc976272aa0565eb2f29c237" + } + ] + }, + { + "address": "0xfff107e2403123c7df78d91728a7ee5cfd557aec0fa2d2bdc5891c286bbfff", + "storage_entries": [ + { + "key": "0x3608a23e75d686ae876e3b52e2294d904055c121151935b15fafe31349ca0fd", + "value": "0xc44de000c4fce00000000000000000076b6bd5435c268" + }, + { + "key": "0x3394fe78c1c289a03386cc4d95f74f325be7939b97c9b420288e3cdd9bdd55b", + "value": "0xa8c16000a97060000000000000000000000010c99c057" + }, + { + "key": "0x2eb147cad78d1f0f854d013954962f2ce7eef14efd47a70ba6d67693862db92", + "value": "0x693eb9cc86c9f31353c22ae2e892" + }, + { + "key": "0x23f0b2655ee8b0da02b9587b064df8813817dc1344bbfbe04b7c8740a819a6", + "value": "0xbaae93510d1b5cd6d0a00f012387cc4f88c17effd8243a727584da41a8ba0b" + }, + { + "key": "0x2977c117510e56c969cf4fcb2c10aaeeaf41a0c01390cc561bb2e5a898d4c6e", + "value": "0x1d879867ba74ba1c2e14d9b2d4f8746b80db001a3cdc8d2bb9fe3de34123ee2" + }, + { + "key": "0x38cfa6570c2ce35aebc683486e52528eaadef09694a924ece8a62f776c97b35", + "value": "0x71273c5c5780b4be42d9e6567b1b1a6934f43ab8abaf975c0c3da219fc4d040" + }, + { + "key": "0x3372d821858ed984f535910cb983be2c912f09c0ecf6cd45ad02994c2f48d50", + "value": "0x2ebaf" + }, + { + "key": "0x1e63d97510f962ddb485af38271d1e09affb0bdc7456ae9f9b127765efc427d", + "value": "0x0" + }, + { + "key": "0x2eb147cad78d1f0f854d013954962f2ce7eef14efd47a70ba6d67693862db91", + "value": "0x0" + }, + { + "key": "0x25e94ce122a404a660af2a766d6f6db167631a74728e34eedc00956635145e3", + "value": "0xffffffffffffffffffffffffffffffff" + }, + { + "key": "0x4c291e8eb138db200013a2733b2dd20b8de5cb64ab181649717f43bafd41352", + "value": "0x2ebae" + }, + { + "key": "0x1b17a049a92942e9addea3ab67b43ebcc31f69a47577dfe3a2e7b51d2e87243", + "value": "0x2ebb0" + }, + { + "key": "0x4d5c07106e8589dac0bfc460c1a7f9e597bf4351001d315d7880a735103753", + "value": "0x2" + }, + { + "key": "0x7d519530502dcfec89b4a4c546238119b0021aee45fe3016f5cab724161a36", + "value": "0x0" + }, + { + "key": "0x3394fe78c1c289a03386cc4d95f74f325be7939b97c9b420288e3cdd9bdd55a", + "value": "0x71273c5c5780b4be42d9e6567b1b1a6934f43ab8abaf975c0c3da219fc4d040" + }, + { + "key": "0x95671236159716dfc7be50e4e34a567d3e1c7223f076135d2402f02bed0e2e", + "value": "0x0" + }, + { + "key": "0x7de64258df3a23ecfe4932ef66cb38fe1e30e52a7d32c9f570f86b054c85955", + "value": "0x1" + }, + { + "key": "0xd82db6336a4dfd64ff68e8c2aa9270ac97c792b65278ee5549266ee3db88a5", + "value": "0x1af6b20585b46eab47a2134ecb2" + }, + { + "key": "0x25553582c0ecf81f4d1839b9be9c33a802e793a34df2a182465b12e363b8a02", + "value": "0xb30e" + }, + { + "key": "0x61a56d902c9dc1002cb73fa36f1be3e1fd4f923819abc65849b77a17ce9d5e8", + "value": "0xbaae93510d1b5cd6d0a00f012387cc4f88c17effd8243a727584da41a8ba0b" + }, + { + "key": "0x2eb147cad78d1f0f854d013954962f2ce7eef14efd47a70ba6d67693862db8f", + "value": "0xc5e9c000c65e00000000000000000426fac3c4034e212" + }, + { + "key": "0x47c765adc36f73a87a1a8fbef9ba30baf73df30e66e3df2013b048f25aa44ec", + "value": "0x1" + }, + { + "key": "0x27b96b11fd4f7fd488194c3595e1d5207b57c9ff569064a0dce5ec554b1b06b", + "value": "0x2ebaa" + }, + { + "key": "0xd82db6336a4dfd64ff68e8c2aa9270ac97c792b65278ee5549266ee3db88a4", + "value": "0x1c" + }, + { + "key": "0x2011ebc72526b54e0c7fda96f85a8c689c358ce41a88d4b3d48f7f2861ba5d5", + "value": "0x0" + }, + { + "key": "0x2eb147cad78d1f0f854d013954962f2ce7eef14efd47a70ba6d67693862db93", + "value": "0x0" + }, + { + "key": "0x3394fe78c1c289a03386cc4d95f74f325be7939b97c9b420288e3cdd9bdd55d", + "value": "0x2c" + }, + { + "key": "0x3608a23e75d686ae876e3b52e2294d904055c121151935b15fafe31349ca0fc", + "value": "0x5037c758c9d4d43331ad3eb3b67b1707bb5e9356caeca66fee9039993bd2931" + }, + { + "key": "0x2e1192bcd48d460734d04dc59f913b0cef4b278a7ad944485df914dc6cb73e7", + "value": "0x1447b" + }, + { + "key": "0x7d519530502dcfec89b4a4c546238119b0021aee45fe3016f5cab724161a3a", + "value": "0x0" + }, + { + "key": "0x3608a23e75d686ae876e3b52e2294d904055c121151935b15fafe31349ca0fe", + "value": "0x7c9df3361db33f7ca07d328a1d7812c" + }, + { + "key": "0x25e94ce122a404a660af2a766d6f6db167631a74728e34eedc00956635145e1", + "value": "0xc6130000c6310000000000000001c64e60c2cf601cfe7" + }, + { + "key": "0xd82db6336a4dfd64ff68e8c2aa9270ac97c792b65278ee5549266ee3db88a1", + "value": "0x30baaaf1b243f6e74c656f98dcb24b98687dcbe783d25f35854148c4c602d41" + }, + { + "key": "0x748a3662697117a8503816cd49a036fd0aa90a4de6e55a8d4830a072868042b", + "value": "0x2ebaa" + }, + { + "key": "0x25e94ce122a404a660af2a766d6f6db167631a74728e34eedc00956635145e2", + "value": "0x3c2fd0fa516055618cbef567475ad97f" + }, + { + "key": "0x7f02544b4627889c43619cf51e6aed255cd6c65f6252adbb15e5adddd53e929", + "value": "0x2ebaf" + }, + { + "key": "0x22f193a08b3b62e952ce3e4b53462f103b449df466336e0cc6b17b91386c0ba", + "value": "0x2ebae" + }, + { + "key": "0x7d519530502dcfec89b4a4c546238119b0021aee45fe3016f5cab724161a39", + "value": "0x0" + }, + { + "key": "0x25e94ce122a404a660af2a766d6f6db167631a74728e34eedc00956635145e5", + "value": "0xffffffffffffffffffffffffffffffff" + }, + { + "key": "0x612091f13822586ef7176c2ad1d4887e2bfc670f540bda642f6f24bbf42dc19", + "value": "0x14479" + }, + { + "key": "0xd82db6336a4dfd64ff68e8c2aa9270ac97c792b65278ee5549266ee3db88a3", + "value": "0xe5dc1d9493097c4ddc3e457fd469edae" + }, + { + "key": "0x2869f5588011f0e7c087ce84b149012cec003f8f07142db3abbf5289c858793", + "value": "0x2ebad" + }, + { + "key": "0x22ae9cf56b7cfc527aa06bd6fa685ee244aa4870b04c7e90953af3266f289c2", + "value": "0x0" + }, + { + "key": "0x38cfa6570c2ce35aebc683486e52528eaadef09694a924ece8a62f776c97b36", + "value": "0xa8c16000a97060000000000000000000000242c8efc6a" + }, + { + "key": "0x7d519530502dcfec89b4a4c546238119b0021aee45fe3016f5cab724161a37", + "value": "0x0" + }, + { + "key": "0xd82db6336a4dfd64ff68e8c2aa9270ac97c792b65278ee5549266ee3db88a2", + "value": "0xa8c2a000a971a00000000000000000000002da148074e" + }, + { + "key": "0x25e94ce122a404a660af2a766d6f6db167631a74728e34eedc00956635145e4", + "value": "0xffda307ee421f3ea48db8d876e94485c" + }, + { + "key": "0x38cfa6570c2ce35aebc683486e52528eaadef09694a924ece8a62f776c97b39", + "value": "0x2aa5f20f03e52f111b547da9ee4" + }, + { + "key": "0x3608a23e75d686ae876e3b52e2294d904055c121151935b15fafe31349ca100", + "value": "0x918135ffdfbb4792a1074505996e" + }, + { + "key": "0x3a82f57d282259300dd7f354e56df7929bd1ed1bea2ea0d6021d1a6b354fd72", + "value": "0x2ebad" + }, + { + "key": "0x343a0d0923c98167ba433800493bd23e361ed6e846bcc4ea1f451a0123a5a4d", + "value": "0x1447a" + }, + { + "key": "0x3394fe78c1c289a03386cc4d95f74f325be7939b97c9b420288e3cdd9bdd55c", + "value": "0x85fb1c0e0e9a67f1a12a747606d7e27a" + }, + { + "key": "0x38cfa6570c2ce35aebc683486e52528eaadef09694a924ece8a62f776c97b37", + "value": "0x85fd0b2e494af368c1351a1ba96cbcb5" + }, + { + "key": "0x38cfa6570c2ce35aebc683486e52528eaadef09694a924ece8a62f776c97b38", + "value": "0x2c" + }, + { + "key": "0x7d519530502dcfec89b4a4c546238119b0021aee45fe3016f5cab724161a38", + "value": "0x0" + }, + { + "key": "0x262d01c4ea0ba5224219c45caec496441066662f6d51da63f7a7184ad4d7beb", + "value": "0x1447c" + }, + { + "key": "0x5e41be02da9c02ffa7ee9077be25266dd79d9564fe1afd7575bad87dd779333", + "value": "0x1" + }, + { + "key": "0x2eb147cad78d1f0f854d013954962f2ce7eef14efd47a70ba6d67693862db90", + "value": "0x3e2bc1ad9cb07ed991c890311213ca1" + }, + { + "key": "0x3394fe78c1c289a03386cc4d95f74f325be7939b97c9b420288e3cdd9bdd55e", + "value": "0x2aa5edfe551c512c8c5fe2536b3" + }, + { + "key": "0x52516d7921391c5a683b9e0d62701ee6fad5d9910ac8c93509377e6663cb3f7", + "value": "0x2b5d529552c122ae5c321c03aeca562c7def447823e5f735c6ec0e914b60dd1" + } + ] + }, + { + "address": "0x1155db9c2f56405dd27b8b4015e7072eef1c51c7b076464f7cec35e74a8d8f9", + "storage_entries": [] + }, + { + "address": "0x1fc8847c8ac1f99eef155aff4f85915bed3d07dae2833056d9ab9a7e914ba2b", + "storage_entries": [] + }, + { + "address": "0x2da1373d08cb9b326e697119e325316547b2bbc7a09e19175fd5b364f936f65", + "storage_entries": [] + }, + { + "address": "0x611e8f4f3badf1737b9e8f0ca77dd2f6b46a1d33ce4eed951c6b18ac497d505", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x206b770d131290" + }, + { + "key": "0x55de5bd670b54db1a615e2d7df850ca188ba2e1d384506c102cf0dbdf40aa1b", + "value": "0x0" + } + ] + }, + { + "address": "0x3638c9fd800808dd6ed0d7c445967f230b5e6f96393985eac4f5d0658b06e86", + "storage_entries": [] + }, + { + "address": "0x1b22f7a9d18754c994ae0ee9adb4628d414232e3ebd748c386ac286f86c3066", + "storage_entries": [ + { + "key": "0x62f72e7ea76cef8457afa8819887a57383b6bdb40ae283b9c4a48aed49058eb", + "value": "0x738bb7548e121e441d276fa647d9851b9e715345e7c4a733e78bfa54ec47658" + }, + { + "key": "0x324897174b54132fe3ccbf6f0ed4315d18f1ba317b5e3d20c110c1913c849e6", + "value": "0x1" + }, + { + "key": "0x723bea80e9d4cc283b03318117aa382b2245833c4a77cdf8302ceeb358a9308", + "value": "0x51972" + } + ] + }, + { + "address": "0x23c72abdf49dffc85ae3ede714f2168ad384cc67d08524732acea90df325", + "storage_entries": [ + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20e", + "value": "0x633ffc3227" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x9039789339" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c5", + "value": "0x182941a9e8a640785f09357ee849" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20d", + "value": "0x91f7a32c8e3ceef0d81d300a730ad268" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x983caed3667b68479" + }, + { + "key": "0x332df419aa058c3f4b36acbf5af4b7e8e3d4dd58918d5f0ab2841741e7b55c2", + "value": "0x66192543" + } + ] + }, + { + "address": "0x64cd290c4dac803b8eccb62ba01ef0262537ce716d3bd37d914d101a25a59be", + "storage_entries": [] + }, + { + "address": "0x65cd2742d0cda46e7676e80170b46689d1b246e097087ed61568da772ab04d7", + "storage_entries": [] + }, + { + "address": "0x62518b825e86e44a3046cd775c5fe511d3aaadef6715fb196c71f110479cff2", + "storage_entries": [] + }, + { + "address": "0x38925b0bcf4dce081042ca26a96300d9e181b910328db54a6c89e5451503f5", + "storage_entries": [ + { + "key": "0x55838a897cf51fe17717f9563533708d4724a4caa87ef4cbef3b08187ef115c", + "value": "0x11516895d22a21d0e" + }, + { + "key": "0x17168f006d648fd6b3931eaa422cd3993fee782fc1e1004200d01533440b49f", + "value": "0x677db835d9c000000000000000000000677db835d9c" + }, + { + "key": "0x6a545b4cb13b27e49a7ac856c4727f3d82a2426ea9cfc658a9258a9bc149383", + "value": "0x12a215d956000000000000000000000012a215d956" + }, + { + "key": "0x15dcd89272105a440a2f96a59e04079cdfd76528c38b3907ddbbbc6d4b0a07a", + "value": "0x1143644709716680d" + }, + { + "key": "0x21718352cbcbeb28ef56817b17751f29f735169a95ba7158b21a773f8415e9c", + "value": "0x60e4423f1bf7f5f886d9f3" + }, + { + "key": "0x594d4bc6285264ec71cba366ae51c288451510a40e46ed2025463dcda6de81d", + "value": "0x192c8854f151e60c16e908f7" + }, + { + "key": "0x7ce4350cb2f760096bf07bf99ec3428ab488a6bbe0f8505834190ffe77f8fd", + "value": "0x2dbbf857b884d83161c" + }, + { + "key": "0x7ce4350cb2f760096bf07bf99ec3428ab488a6bbe0f8505834190ffe77f900", + "value": "0x537150fe3bed187004f662d" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa07", + "value": "0x3ac0302b34" + }, + { + "key": "0x1bcff62b08a6253ca0eb8519917cecd1e76a6ff3830ffb9eadac03303362bfe", + "value": "0x2b799c7b7700078a528" + }, + { + "key": "0x572b7eee827a553d4ab87d51c9c710b1c5910d35e84aecb437b92a593b618b0", + "value": "0x1154396b5edb5cc7c" + }, + { + "key": "0x5a6e71902dddcbf6cd08f7431bc2c50d0cbf726a98c9accb3610a77ba0f547a", + "value": "0x60722ecc6ef6bb5b4000269605" + }, + { + "key": "0x7ce4350cb2f760096bf07bf99ec3428ab488a6bbe0f8505834190ffe77f8fe", + "value": "0xa69964c85b565fa5a1a9608313" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc18", + "value": "0x5d0d78f2490fa5a882cf" + }, + { + "key": "0x19b1211aeacd9200f85dfa2eec8b7ec283978a08fa82c6776954cebd5f298dd", + "value": "0x6a396cc0018ba9e298d" + }, + { + "key": "0x572b7eee827a553d4ab87d51c9c710b1c5910d35e84aecb437b92a593b618af", + "value": "0x7b83267f088e1cd4dd6ed1a484" + }, + { + "key": "0x38ad8a966290f788fa85b7009a9371273b6f794257f46cb7c8dc3dc6644a4ac", + "value": "0xd2b9aee8f9e11fed5ad8e" + }, + { + "key": "0x55838a897cf51fe17717f9563533708d4724a4caa87ef4cbef3b08187ef115b", + "value": "0x7b6d58165cc68236ad0225a4ca" + }, + { + "key": "0x26b100c4df9cabd0dc0fb2e3f42c90d3c31b6d8e62f567f1217c618f0a479f", + "value": "0x115533f1bc050aefb" + }, + { + "key": "0x26b100c4df9cabd0dc0fb2e3f42c90d3c31b6d8e62f567f1217c618f0a479e", + "value": "0x7b8af80bdcae09c91e149c134d" + }, + { + "key": "0x42b9019999d1528847127414b3c012d72ac79e6920ea7f25deefaae0d292ce0", + "value": "0xb66646c041029d7a66e65a" + }, + { + "key": "0x41ffb42a00e32259c5c62a552f8f7d3cd033a952dc411235f689c52d197a8f5", + "value": "0x170e1727765659650f8fdb" + }, + { + "key": "0x41ffb42a00e32259c5c62a552f8f7d3cd033a952dc411235f689c52d197a8f6", + "value": "0x1e6d20f88afa388de13" + }, + { + "key": "0x594d4bc6285264ec71cba366ae51c288451510a40e46ed2025463dcda6de81f", + "value": "0x0" + }, + { + "key": "0xa6676a1caa331ae7faf178580d56f627ee0bafc1b0389d38b18d801d280f7f", + "value": "0x11c7f0f1a3f5b8678526451" + }, + { + "key": "0x19b1211aeacd9200f85dfa2eec8b7ec283978a08fa82c6776954cebd5f298df", + "value": "0x0" + }, + { + "key": "0x6f10bc29bd45b3c72d22ac8f22c99ebe811674375258607970c6c1352921596", + "value": "0x159c449dd6fca6326d5d2ae" + }, + { + "key": "0x121337cb5bfeab86c4be51721f231287331e42b53b24e5f628000ecddd8b1c6", + "value": "0x113e1707d8827da8a" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb192372302f", + "value": "0x736a6c1f18236f589" + }, + { + "key": "0x15dcd89272105a440a2f96a59e04079cdfd76528c38b3907ddbbbc6d4b0a079", + "value": "0x7b02c606733cf264c462c92800" + }, + { + "key": "0x7026697c59217fb3de24f91989eb6b6c8b6da46220040143f5a9e5027e6bfaa", + "value": "0x2a75b86f5b5631269e20" + }, + { + "key": "0x6f10bc29bd45b3c72d22ac8f22c99ebe811674375258607970c6c1352921597", + "value": "0x314b5823ad9ed6dbc527" + }, + { + "key": "0x2a6465fa4b76e577404b5fde0ac631f16f6613f8df262bdff56d7faaf59e29e", + "value": "0x1aabf0b2a11a69afc660d26" + }, + { + "key": "0x662d2ea8c5305cf0b29fbe085d08820d1126bff6d606402fe732751f02749f7", + "value": "0x2a53ab1d27d82c279bb4" + }, + { + "key": "0x7d5eab2daa04b3f89fdde88a5cbc8681a1ebabf608d1aae4309dd8553fc4a3f", + "value": "0x11a35fc91dde0b9bea9c0a7" + }, + { + "key": "0x31592c6e2a39be2db63ce47ff159cf8d5654fb977d963d0e8f87812a67389d8", + "value": "0x72f3c938b6f7bae8d3348c524f" + }, + { + "key": "0x38ad8a966290f788fa85b7009a9371273b6f794257f46cb7c8dc3dc6644a4ad", + "value": "0x128b05d9c52d2ce73db" + }, + { + "key": "0x594d4bc6285264ec71cba366ae51c288451510a40e46ed2025463dcda6de81e", + "value": "0x172a6f85644784575" + }, + { + "key": "0x5a6e71902dddcbf6cd08f7431bc2c50d0cbf726a98c9accb3610a77ba0f547b", + "value": "0xcb4e78880596f274" + }, + { + "key": "0x37d0655afd4249d98b13c4c9ae0ce5d31499d398666c0dc6f9b90f4a5f64979", + "value": "0x10feef33e6ce20326" + }, + { + "key": "0x594d4bc6285264ec71cba366ae51c288451510a40e46ed2025463dcda6de81c", + "value": "0x0" + }, + { + "key": "0x24843b3344afb2629ae103854083ae5bacb478fb23ee78f3f9274cada606a1d", + "value": "0x1432e88ae0c372a6f4f9f7a" + }, + { + "key": "0x21718352cbcbeb28ef56817b17751f29f735169a95ba7158b21a773f8415e9d", + "value": "0xcb0147228027c11c5c6" + }, + { + "key": "0x7d5eab2daa04b3f89fdde88a5cbc8681a1ebabf608d1aae4309dd8553fc4a40", + "value": "0x2a9287c3255ef76eeb82" + }, + { + "key": "0x72177748ed71c5fc17f73e4129a1d5fbc007703eb500bdb8570b63f331e770b", + "value": "0x677db835d9c000000000000000000000677db835d9c" + }, + { + "key": "0x2a6465fa4b76e577404b5fde0ac631f16f6613f8df262bdff56d7faaf59e29d", + "value": "0xbbd31ba8a311cb7e129bef" + }, + { + "key": "0x195973c478d5deebcf542291d2a6c4ffd9bd7e1bea0e9f0d012d7b5ec5c6e07", + "value": "0xe017" + }, + { + "key": "0x55e6105ceaec6b44b01a0538e9c48e8fc1892777b69d57aef53fffa52f6a4e7", + "value": "0x114e6a13bb7ed28f6" + }, + { + "key": "0x31592c6e2a39be2db63ce47ff159cf8d5654fb977d963d0e8f87812a67389d9", + "value": "0x1031f48370b6710a7" + }, + { + "key": "0x42b9019999d1528847127414b3c012d72ac79e6920ea7f25deefaae0d292ce1", + "value": "0x1936f677d50807334e4f" + }, + { + "key": "0x55e6105ceaec6b44b01a0538e9c48e8fc1892777b69d57aef53fffa52f6a4e6", + "value": "0x7b5481393a190fcfccce4204c9" + }, + { + "key": "0x662d2ea8c5305cf0b29fbe085d08820d1126bff6d606402fe732751f02749f6", + "value": "0x1186c55647802a48a84ed24" + }, + { + "key": "0xa6676a1caa331ae7faf178580d56f627ee0bafc1b0389d38b18d801d280f80", + "value": "0x2ae487eb3cab2eba7324" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c512f", + "value": "0x16684f2879" + }, + { + "key": "0x24843b3344afb2629ae103854083ae5bacb478fb23ee78f3f9274cada606a1e", + "value": "0x2ecc5b60f94889e7f134" + }, + { + "key": "0x7026697c59217fb3de24f91989eb6b6c8b6da46220040143f5a9e5027e6bfa9", + "value": "0x119644a6d3b397109610589" + }, + { + "key": "0x121337cb5bfeab86c4be51721f231287331e42b53b24e5f628000ecddd8b1c5", + "value": "0x7ad8f48ecfd52dbfad99051e78" + }, + { + "key": "0x7a53bac7ceb7994ab0bc91e55a584a2df1324e00a7f5a746fc7e9861300bb86", + "value": "0x11b81d85de000000000000000000000011b81d85de" + }, + { + "key": "0x37d0655afd4249d98b13c4c9ae0ce5d31499d398666c0dc6f9b90f4a5f64978", + "value": "0x78f779db40a0e384ee28e5d51e" + }, + { + "key": "0x19b1211aeacd9200f85dfa2eec8b7ec283978a08fa82c6776954cebd5f298de", + "value": "0x71aa97b22457bbd83b9" + }, + { + "key": "0x19b1211aeacd9200f85dfa2eec8b7ec283978a08fa82c6776954cebd5f298dc", + "value": "0x0" + }, + { + "key": "0x2a6465fa4b76e577404b5fde0ac631f16f6613f8df262bdff56d7faaf59e2a0", + "value": "0x18bc94e7d3babe00424006d181c" + } + ] + }, + { + "address": "0x4c710d72aeb3e1869d2245b49b1c6a13ffb0c8e9360cfe09839a324f994b3b6", + "storage_entries": [] + }, + { + "address": "0x2a04685f7102e88b37ceeb57589bc0855af0f1c626e46d6244a98dc93a507c0", + "storage_entries": [] + }, + { + "address": "0x17970cc53f1d4c489f5039eea66c6e4d8a93aa5e6bd67f34025ca9f67f13f0f", + "storage_entries": [] + }, + { + "address": "0xc9945e21e4d88d67805d387ec81b3fac2b16133f749263f182306e46c999cb", + "storage_entries": [] + }, + { + "address": "0x15dd77e613202162d89474e3bf5f4379a2a99e1910298445b4116dd13a2e270", + "storage_entries": [] + }, + { + "address": "0x1e03464256611db456df83f7ed2bf1775ac0f7d745363af7d00d6d6ae04a9d", + "storage_entries": [] + }, + { + "address": "0x8697de09b48b5c3c5285e4bd1c8373f7240588d45bd4aa1a41908920c4c19f", + "storage_entries": [] + }, + { + "address": "0x33fa91dd843d94014c20a6ba25c2b51313efb1f2ab1005988876c08c6cab5d3", + "storage_entries": [ + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x4616caecec2bcb1396d3addd336d2a1f50fdea7a4f272b481cbc1bb8bf5e22" + } + ] + }, + { + "address": "0x2e61775ac40726523e87ca357f9be26354af03b36d15e73499d35450bf2100b", + "storage_entries": [] + }, + { + "address": "0x71e5405ace1afd64c682e65b08360b573c00370f4e3ad6e4f2cd800ec7d93d2", + "storage_entries": [] + }, + { + "address": "0x677f33420f450bf5397b35f6de57ccfc8e5fe602004fa96902dbbfb562576d1", + "storage_entries": [ + { + "key": "0x38036e4af1d77f33f0c5cd33a3353e2a5b2265dd26031df7d7c79297f908457", + "value": "0x24d4ac36f63dc5d234adbfe731f5622ffb0f35988f6f2959314abfc2810b5e5" + } + ] + }, + { + "address": "0x523773840b98574fa058c642533c47927fddafa16a6cd9f5a0e64eb80d6ff49", + "storage_entries": [] + }, + { + "address": "0x20543d03cd3ceaffa51641634e5db34d506768632443e2d6afffbedc5e3c5aa", + "storage_entries": [] + }, + { + "address": "0x14e644c20bd5f9888033d2093c8ba3334caa0c7d15ed142962a9bebf36cc7e0", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x2f244371d78461817" + }, + { + "key": "0x12e123730e672c88fe90380fc9b6e959b51a68e97fdfb070c29904b14316c53", + "value": "0x0" + } + ] + }, + { + "address": "0x5209079fc404e13bcf84d0a83bde3d15befd7159e3b06fe1a4eef06dd5de49f", + "storage_entries": [] + }, + { + "address": "0x5202e61a7d544add8cf46a296e5819fab713cc163b128d65a38ca1e7ebdad7b", + "storage_entries": [] + }, + { + "address": "0x2f3aeea64f45e41d9130126851aada7c48f1178640de8908d38f3a7789bfdc9", + "storage_entries": [] + }, + { + "address": "0x14c9f7b2428134734548fa3ee04574180bec7f93a825f85435d50b8808c04a8", + "storage_entries": [] + }, + { + "address": "0x164d87a90443cbdac2f5c01a4f5ef33d41359d63231058a96df741f411f1f13", + "storage_entries": [] + }, + { + "address": "0x7671e1546d024e909dc341975a1bfb1d57a5492bbc8cfa7f40858b457b1eb18", + "storage_entries": [] + }, + { + "address": "0x20101171032f00a53a22c7521293c4069235e9cd7fdf677543a8b9dfbcc773e", + "storage_entries": [] + }, + { + "address": "0x293bc18b894805b327993a02f7c0b95d2dcb7e84f39bbcd030f0e10f154b407", + "storage_entries": [] + }, + { + "address": "0x324e1f128089b1acd729030f226f388c3a8df269e64a5985c18c17eb9d1dfa7", + "storage_entries": [] + }, + { + "address": "0x314fd69e00f7d62ce3844a0c3d98e9c56aab3b32ca1ab3fa1e48b5005fc48c", + "storage_entries": [] + }, + { + "address": "0x505eab7770ed3286ff44287902f6b77e4a4930f762b46e6be0a87273628ae03", + "storage_entries": [] + }, + { + "address": "0xc186ab0bd7644cfca81faab546c1825e5519fc600b96c1ba0e50f2bc371ce1", + "storage_entries": [] + }, + { + "address": "0x7b4e189f48e4c9aee736321f15ab590ab1af544c05138ae3b81b4eb689e9517", + "storage_entries": [] + }, + { + "address": "0x1859d2d32cc99b87d6e95db6fce7454e37de0901ec099d41e208f82b0a08117", + "storage_entries": [] + }, + { + "address": "0x79fea253b4424e0d4bf251c97b0b0f70e682b3d86952b8f534f150b05ae9afe", + "storage_entries": [ + { + "key": "0x23da4417e0e94ba07a3a35a70aa811f3bbc3c03a8e6770b6a550fe9a7348899", + "value": "0x7dbcb1f0c64a73ffae8e00781bc857aa" + }, + { + "key": "0x63ff6844f514d1e142a04495b95afa96aa296c179ac6419d6e9737f66e4882a", + "value": "0xd29332c0ab4c13816d5f4719a13f5c18" + } + ] + }, + { + "address": "0x7d1c87d308e473872364b3061352e76585ec81ef5757ff3718557cc1998ce18", + "storage_entries": [] + }, + { + "address": "0x330c27f4c693ead98ddb2f740b0843f3cb1c221784ee5dff5a9438d230ba34b", + "storage_entries": [] + }, + { + "address": "0x179d06081df942b78edc04ff029e33d9f95f27ee8650bbfcd9dafb65c7999a4", + "storage_entries": [] + }, + { + "address": "0x3eb2b844e15eb3abe0b610c755e39401741f113ea59b4f9776cdbf03d8fdd62", + "storage_entries": [] + }, + { + "address": "0x686abc63a7d02c7bd692b08e00290b4c90b3c55d4ca6af5fa63d5e2e98ce1ad", + "storage_entries": [] + }, + { + "address": "0x1f78042ca65d29145ba4f54cf0c0631c1f5933c48648beb18e062e31ad642c1", + "storage_entries": [] + }, + { + "address": "0x74697b6a1b6fb09916848eef7cfdcb10722bfd03798b14d863e99b39f92308f", + "storage_entries": [] + }, + { + "address": "0x1d879867ba74ba1c2e14d9b2d4f8746b80db001a3cdc8d2bb9fe3de34123ee2", + "storage_entries": [] + }, + { + "address": "0x7a3523833f7d28238e864273223fbf005212b82f68e0fb66b9610e4c2857706", + "storage_entries": [] + }, + { + "address": "0x1734520351e55969890b2a391fe9afae07ca0a66e613824d4f8e7148084b66e", + "storage_entries": [] + }, + { + "address": "0x3fe90402cfa7599a3851cdad3dd7a9383a3c7a378c3637a2e766d0b70a9573b", + "storage_entries": [] + }, + { + "address": "0x16351149c84da67c062c3c0ae9d8fb54c9f2127ce7d9c4b54706210c1eb1f68", + "storage_entries": [] + }, + { + "address": "0x7691e7b82bb18f027c597c637394fcf45e5c096b5d957a5ea5018082b424c1d", + "storage_entries": [] + }, + { + "address": "0x666b8405e94f98aebb90ba9a13ab91a305d1b06e4c6b319135189974b7eefcb", + "storage_entries": [] + }, + { + "address": "0x68f5c6a61780768455de69077e07e89787839bf8166decfbf92b645209c0fb8", + "storage_entries": [ + { + "key": "0x22f9cf0e817ec5266133baeb7b6699c1b95854014cc79f85dd997309f7fc62b", + "value": "0xe117589ad0" + }, + { + "key": "0x4e10d7fc3b3b9bbeaea75d9ed4e9e3f4210c127f39ae04b1a65a007df4a1893", + "value": "0x10d59bc" + }, + { + "key": "0x46775a89d3605630f814cda2819e580800f65502c49782def13e06c680cadee", + "value": "0x1" + }, + { + "key": "0x61f33bf7f64047434124f7118bffec843973a10805923c98ffe46e1a3ff46ee", + "value": "0x0" + }, + { + "key": "0x71da37b9c5945d0bd3ef277eeab3d43d6f6f4a270f3dfa465205acc37724db7", + "value": "0x7eb095cc" + }, + { + "key": "0x4303f9a8a386564a23333169d519922bd81a3521141a3f74c1cf536000a1398", + "value": "0xd3c21bceccece4cd451d" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x2c273406e2f" + }, + { + "key": "0x49a8ef79cab313360767015d427d0307368eff5c2c81b019aff018ec638eef2", + "value": "0x1bd561027e" + }, + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0x1bbd6e7f761" + }, + { + "key": "0x5ee78670918803f52dc6866592aabb690b4d4dea5d442d72ed216bbedbea02b", + "value": "0x1102d74" + }, + { + "key": "0x77aab2cc4ded10753b0cf2ccd9767680178832242ae229223afd5d853c3d28e", + "value": "0x73996" + }, + { + "key": "0x6180806f23c68be50a0927a6e9c4977256d4211877595d2490b57e01b6fa44e", + "value": "0x31c7c88" + }, + { + "key": "0x500ea75863ff752b8ecf935b094cd6b3fd475330a4f2bc01c4e6f6707ff722f", + "value": "0xb85a50aa" + }, + { + "key": "0x5f6cbcfa6e0dfae615b1015c2cfc857c2746d8c376c1fbbd0a95f9a197d18fa", + "value": "0x475e561a2" + }, + { + "key": "0x3f5753913a85fdf0e9ebfc1be06a5110a196b5d3a06020cb4f6d186c849c87e", + "value": "0xc7d7d" + }, + { + "key": "0x510c664db84ee917626c9a54fc14d86c3f1ac58176a20b04944d035a87fd0c7", + "value": "0x1f6133cfc4" + }, + { + "key": "0x2fa0fc502b8bce76cbc44e4671c0bb33197973034904a713564a9476c69119e", + "value": "0x2a99d9b93" + }, + { + "key": "0x2657352aca818925efe44abfb826a9a1afe47f1aa914776c082a18a03a9d38c", + "value": "0x0" + }, + { + "key": "0x3b51729a1fecd048b7f5cef08907ea6ac764106add60ec27d6ce9ed6a452317", + "value": "0x8078a8e6" + }, + { + "key": "0xce795e4058043dfd3789b00615f7577a1d32371001764bacf0868101bc4f52", + "value": "0x0" + }, + { + "key": "0x2b171fc7fcf45fa0d37a67bc9b2ac04a460b61188a4ceb6af12996b4dc38ff3", + "value": "0x0" + }, + { + "key": "0x759839c47981088126dbfb6dabca1dc9425635a6b817ff042b3dc741f4114cf", + "value": "0x1be3a51637" + }, + { + "key": "0x80bcd7cd4fbb68a71ee9d05a5bd39e7824227cd3511ee1b061ea1c6dc3da69", + "value": "0x0" + }, + { + "key": "0x3510876ed2ee963b3f09429c3c452232bc00d016db45d07c9d206895ff71039", + "value": "0x0" + }, + { + "key": "0x644513e40d8e57d9345736d42e97e489fe3ef7d2c6cfe62227fa7a0cf04e5f0", + "value": "0x0" + }, + { + "key": "0x6c5a74e47f2716d692f87ca6c310282dff1d955f31b67c33d1a7870d96cd0bb", + "value": "0x0" + }, + { + "key": "0xc466fe1adaf62a7bea01d07d35b0ad81cc8ce2fe00f8e0201c24bbc34266fb", + "value": "0x18af17" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x1265fbe00" + }, + { + "key": "0x5ff2f912fe6fac8d60789a7f48d951f595f0898d25fbee3c7b80c997019b96", + "value": "0x0" + }, + { + "key": "0x3c607dfcd07bad806b3ae0ec1e3a9d9cadf7d1721d99cc4622bfcf0d4be6eaa", + "value": "0x109efccca9" + }, + { + "key": "0xb5311b97477466dcdc360c8c4fe96e478c684872f76c6a818b5768004a4947", + "value": "0x16684f2879" + }, + { + "key": "0x599b39b8f0e0e064f62ba921252b0735c2732a18e0b87e5b66e7f235d05dbf9", + "value": "0xfffffffffffffffffffffe1474ba768b" + }, + { + "key": "0x1716740cace5c468d7624dd6f91515f2396edb5ba3434bc6ac4bcbc5edbdff", + "value": "0x0" + }, + { + "key": "0x43e2a627b69b10a0d0364802f42110af90a93bc8f8b3ce1e95d3420ba66a989", + "value": "0x274f96" + }, + { + "key": "0x5fad7613fd327fc13290b4c80dcb56b41035cff52310cc2f9e1d7de286fcff1", + "value": "0x2487391360" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x24a4031390" + } + ] + }, + { + "address": "0x4177ef655c243cf3a40f79f293883350ce55e93aa947086484e5824fb4caadb", + "storage_entries": [ + { + "key": "0x38036e4af1d77f33f0c5cd33a3353e2a5b2265dd26031df7d7c79297f908457", + "value": "0x75c3c2af8af655ce5d1444648eabf564991bc9133ac897025de5e595df5409b" + } + ] + }, + { + "address": "0x36697d777af07b0b7f2f563ca8225764094bcc6ca9bc5b86fdd08853293d9a3", + "storage_entries": [] + }, + { + "address": "0x113ad297efee051fe5217a44e6d2d94324f2ac908f0a46be2f2a8d48d4053dd", + "storage_entries": [] + }, + { + "address": "0x7ff6efcd0893c30d8b9fedbf617ba81694b37dfd886cf979795452e63c73500", + "storage_entries": [] + }, + { + "address": "0x601f72228f73704e827de5bcd8dadaad52c652bb1e42bf492d90bbe22df2cec", + "storage_entries": [ + { + "key": "0x24dc99466e4418b4fccd818c369e805aa4b2c2e28731ca51ec24311cfb85a69", + "value": "0x50e6cf9d811b86c3" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x118434d8b7" + }, + { + "key": "0x4e9417c05bcf183e111558ce4666b053bbfe9736b74fba16b017ab7ae075f1", + "value": "0x1273d7f581" + }, + { + "key": "0x3e65716c9b9f010d10085941d0c6e6dfb190695b7cf09a71f0aca74ab94cdf", + "value": "0x4d9cee9122b03d20" + }, + { + "key": "0x3cdef5d80c6ad04af135e445867114b5ce32ed8dc8de667995f3d27760e3520", + "value": "0x109efccca9" + }, + { + "key": "0x5ee78670918803f52dc6866592aabb690b4d4dea5d442d72ed216bbedbea02b", + "value": "0x0" + }, + { + "key": "0x2e3f9cadd00a7b869d6b98db5d32847ff18a5561c3f3f7a944380864c8f247b", + "value": "0x66192543" + } + ] + }, + { + "address": "0x4f4847d63edc8c1e035684d7d252f4f1f335109b70b388967c1ad6d69f2c368", + "storage_entries": [] + }, + { + "address": "0x1b19ea5b8ee6feded2bfd48fbb8a4b162805e5e10e566fa96f2d9c597684249", + "storage_entries": [] + }, + { + "address": "0x1a4033a7e85dae57e6f4b0dfae0269e1efedfda4edb076be99deb76e525f67a", + "storage_entries": [ + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0xc6b52200ba189fc665a9" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x22c27f07d04c0b96e634" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x1836f16" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66192543" + } + ] + }, + { + "address": "0x7748e28379591c2059af4894d3ee51c725bd362d74ffac72d6e64ed38eb8b11", + "storage_entries": [] + }, + { + "address": "0x69ba6c6a643bfb67f887322b3940e4d080cc90deaac8799f400bfeba5130268", + "storage_entries": [] + }, + { + "address": "0x719b5092403233201aa822ce928bd4b551d0cdb071a724edd7dc5e5f57b7f34", + "storage_entries": [ + { + "key": "0x16946970e312d52fedff2f24c64808fbfa2eca4409a2f687f5a489e598b523f", + "value": "0xb270f7030e0417e43" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x37e25999536b76d92e4f" + } + ] + }, + { + "address": "0x811d8da5dc8a2206ea7fd0b28627c2d77280a515126e62baa4d78e22714c4a", + "storage_entries": [ + { + "key": "0x3023aa9951d47b485548892fbcb42726511521b2069f019663cde7263ea62a0", + "value": "0x8a6b2" + }, + { + "key": "0x48be3692ab3e9e8bd4a134a7b958b4e69bcb00a71d4f58c22f9311921f12bcf", + "value": "0x166ceb28f" + }, + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0x390a54ed2d4" + } + ] + }, + { + "address": "0x182791448e3ab59d0ff85f067a546f7c6bdca65102942a46365aa849e4ee13a", + "storage_entries": [] + }, + { + "address": "0x319111a5037cbec2b3e638cc34a3474e2d2608299f3e62866e9cc683208c610", + "storage_entries": [ + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x2eca0dbe7852f95" + }, + { + "key": "0x165f6460edcb4846850890264e48d4cff98f64ccb93f798735e679826568753", + "value": "0x39d29dc6fd03efa" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x1171044023906b1d1" + } + ] + }, + { + "address": "0x76503062d78f4481be03c9145022d6a4a71ec0719aa07756f79a2384dc7ef16", + "storage_entries": [ + { + "key": "0x72f4cadc8d6566086678b6ae68fc83f71d33dc3e60713d82800825cbeaca738", + "value": "0x1" + } + ] + }, + { + "address": "0x2625c7662d20c6eb39dd4170bdb0cdfc3859ebbac3bd53c80bd058bc6b1360e", + "storage_entries": [ + { + "key": "0x331e8b3a16e9a4fe517b8c0178d4e295995a6ad302504206fa2d9edd6b8d970", + "value": "0x21966f10a" + }, + { + "key": "0x42636ae230470a1c04184c3e366303b7ac07e7d38560e43c4ba88ccbbac9a54", + "value": "0x1b892dc6" + }, + { + "key": "0x67e075118f5aecad3a48604271de0e018356b2d0b58b3a9568107426cc4a7f", + "value": "0x148e9acb" + }, + { + "key": "0x785e14a5758cc18196e31cc7e2c1e549327723ffa6815ff9d2ba4bed5f6c806", + "value": "0x1e24ecc" + }, + { + "key": "0x74b14fad67ecf36df7dda5d97d568fadffbb91a538a7ca254d8d42c3e090f24", + "value": "0x47fb803a" + }, + { + "key": "0x585adce98a8968da36460d61fe467a034fc3d5b7ccc444470ae6c9371229444", + "value": "0x448642f4" + }, + { + "key": "0x104cde61e81f30f4354f6aa6e3bb651da3182e0e3781de6d8566fdb87a59d98", + "value": "0xc20be5" + }, + { + "key": "0x104cde61e81f30f4354f6aa6e3bb651da3182e0e3781de6d8566fdb87a59d99", + "value": "0xe" + }, + { + "key": "0x455e8fc3ed8946e7236a7cf1a629af81431fc39c143813cfa65a8c7f43c7b39", + "value": "0xd846ab06" + }, + { + "key": "0x5dea1728846c23c257d4ed49038d13a72d205558b89d19c5633133912828d1b", + "value": "0x4d5b35a9" + }, + { + "key": "0x104cde61e81f30f4354f6aa6e3bb651da3182e0e3781de6d8566fdb87a59d97", + "value": "0x7f05" + }, + { + "key": "0x7ac033960a437e661fe81dd05c3b9a89fd2cb8c20c0b64ef0487d9b8390aff9", + "value": "0x2168c9d02" + }, + { + "key": "0x104cde61e81f30f4354f6aa6e3bb651da3182e0e3781de6d8566fdb87a59d9a", + "value": "0x2de947fde0a7a8e10f72b1b0088966e4c639889ce2852f47922d086e5e15014" + }, + { + "key": "0x6f9ecba91a53635e9c9bc7e251b5dd28f4f6c4d2d01dacb27215d440145976a", + "value": "0x43dfa91b" + }, + { + "key": "0x1233a683461d402f9fd4ce4cbfecf253cfbafce5b614f75603afdf724978fea", + "value": "0x457d5b15" + }, + { + "key": "0x57633cf4e366a28c9baeb140f2002156b2d9e597304228d5dce198efc0d0388", + "value": "0x1" + }, + { + "key": "0x7fe8396d752a7bfe1c4c417a88f782749bdd9843529afbf25baaec9ed5b4b10", + "value": "0x1" + }, + { + "key": "0x52fb5dfa1a999a8934c49632d89584f0bb142051672ef9b946a6a07df11d42f", + "value": "0x48ac84af4b" + }, + { + "key": "0x2e3339a874e0f1d7514fb90ab3ef4f94ad32fb9379fc23702d6621c5218f87", + "value": "0x2b118691" + }, + { + "key": "0x71a53639b6050606565c2940b8e178f3871c487e473ca73c86fb7d455b77dc8", + "value": "0xc840861" + } + ] + }, + { + "address": "0x113b0f0db2e781e2b3b9c7e2771118ccb755eccd69b20a587817666cacecc90", + "storage_entries": [] + }, + { + "address": "0x5b7088eb68436d237b1c524c7d53d31def0b3975707143027d74a62b0b98bd6", + "storage_entries": [] + }, + { + "address": "0x2a85bd616f912537c50a49a4076db02c00b29b2cdc8a197ce92ed1837fa875b", + "storage_entries": [ + { + "key": "0x8653303a2624a587179380e17d7876d346aea7f02dbd57782950500ea7276e", + "value": "0x672af9e94be000000000000000000000000066192603" + }, + { + "key": "0x7d570a43f276455f47442b8e4ce18e2240d406c64268495f8b208c50b3457e2", + "value": "0xad1a74000000010adf27f1be15ab40006619259e" + }, + { + "key": "0x143dae8bc0e9898f65cb1eb84f16bfb9cb09431972541141677721dd541f055", + "value": "0x5f22d37000000000000000000000000066192604" + }, + { + "key": "0x1b3f3d264a9c63c581333d4b97c556b6f20f9a1abf64c7f71e04b35df62cc70", + "value": "0xf40cd000000000000000000000000066192605" + }, + { + "key": "0x7b4de97b546ed17a0d490dab334867e9383e029411c268a8902768b6da6a2eb", + "value": "0x5f744d4000000000000000000000000066192604" + }, + { + "key": "0x31a25899ca3a40d5213978b15ae287230435bf490ae488775f5c1d06e50af09", + "value": "0x60d3c0a8fea0269831c89a6cac662d9754006619259e" + }, + { + "key": "0x5c8f047efa25ed6202a9d6af9b64f2a7fb47111040b16dce8362e0ea20809e0", + "value": "0xad1bcbf000000000000000000000000066192605" + }, + { + "key": "0x5d3144957fd869a985437a20ba5f51041d2c4f298c022c3767535e0b2fda6ec", + "value": "0x5f496ec0000000e012c90f64e7ba50006619259e" + }, + { + "key": "0x14633169ac55d1120517dc937d86acd6e8432632668af401e3f521aa5a1f16a", + "value": "0xf42a70000000066a594be8bb1301006619259e" + }, + { + "key": "0x6f64efd140d53af83432093bb6c3d5e8db645bd89feead6dda806955f68ef2a", + "value": "0x67486f47098000000000000000000000000066192604" + }, + { + "key": "0x437f038e1991939def57775a3405a3b6f0c0830f09d0e6cfc309393950fa773", + "value": "0x5f5bc20e91000000000000000000000000066192604" + }, + { + "key": "0x252e39d215625176a1db1dae25ded2c6a756c2b3ea6059b04880221887338dd", + "value": "0xf41b1000000001142b4765ff599b006619259e" + }, + { + "key": "0x28e86558bd7c5a9c26fceeafb9570eb7b3011db4a9ff813b318f91129935c37", + "value": "0xf41fe000000000000000000000000066192604" + }, + { + "key": "0x678817f315f1e297a5f652fb09285db75338ef9d9c221bbcc07817f2196b988", + "value": "0x5fa2b3e000000000000000000000000066192605" + }, + { + "key": "0x6a6414ca66551a2324e436ed37d069f1660ef01bc3fe90497fc729ee60781b8", + "value": "0x521b554ce3000000000000000000000000066192604" + }, + { + "key": "0x787a0379475667eea2de93a09a19b94bafd4d05502aed5d5233be4fd1ab0101", + "value": "0x672cf87f97500002889b38de331abf0a60006619259e" + }, + { + "key": "0x55c3ad197a2fa1dce3a999ae803099406fab085f187b926e7e1f0e38592043d", + "value": "0x60cae4cdcbd000000000000000000000000066192604" + }, + { + "key": "0x72fbe48204b03bcf34d3f828c9f6a0ada355fabe7fcb7b56e04785fa3c29580", + "value": "0x35f944f100000011cd8fb9dc070219b006619259e" + }, + { + "key": "0x56041f8991ff7eff841647cfda1f1cfb9e7321c5a96c53d4a5072497de6b50f", + "value": "0x35d19ce3000000000000000000000000066192605" + }, + { + "key": "0x2d04b0419a0e89f6b4dabc3dc19b087e71f0dec9f1785606f00517d3468636b", + "value": "0x5f42b8d000000000000000000000000066192605" + }, + { + "key": "0x35427e5fb3d65595318ecef1facb1681aba9f4732a993357228d6990192ba54", + "value": "0x522293995a00000d61635e5be2f397cae006619259e" + }, + { + "key": "0x2e755fb331dbc988841003875724fb2cfca53a431855f4ae1ef5e2a77aaa9af", + "value": "0x5f8542400000000000472b18f8cf48006619259e" + }, + { + "key": "0x2eef5218d06a4ea2659e97246f30b41ad69d3ca960388a535281325363d14a7", + "value": "0x6757605504000000004cfeca94c3719080006619259e" + } + ] + }, + { + "address": "0x39771e43a168a9514697cd1da8b882781658439a3f5bd32e5aea06985013321", + "storage_entries": [] + }, + { + "address": "0x36c97ecf81f02b69f5fd3898a70ce5b62914e364ccf0927a392fb1155d35087", + "storage_entries": [] + }, + { + "address": "0x71825580fe46ed75e3ec2ad2441f4021f52d808a164915617e1fe87478d33da", + "storage_entries": [] + }, + { + "address": "0x2ec195ba8703b4d93db88b90810b3be5be2fb18e4fdb38dffe3376838a2a707", + "storage_entries": [] + }, + { + "address": "0x564d9ea5346ca7374edfaf1ed08318776cd57644593698553d8b685c82913ce", + "storage_entries": [] + }, + { + "address": "0x5c36fd2c9be65def63fb9d172e6fe81ee4d350f1208a247c1f20ced82f0b299", + "storage_entries": [] + }, + { + "address": "0x26c5994c2462770bbf940552c5824fb0e0920e2a8a5ce1180042da1b3e489db", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x154e306f7da3d450c117b" + }, + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0x10277f460e75c06e77" + } + ] + }, + { + "address": "0x61da172aba2e80fbbd10cbc17b1793e540bf81b904fccf6896c658299feed0d", + "storage_entries": [] + }, + { + "address": "0x193a2fb497bc4e478aedf5f7f017c9bd6ec7a8b4c214e93c37cd7ff0a31e7ca", + "storage_entries": [] + }, + { + "address": "0x79b53c736877f6328863e595625f5fd3b479c9e71e68a3ca2962ae6b8eb9d2f", + "storage_entries": [] + }, + { + "address": "0x3a20d4f7b4229e7c4863dab158b4d076d7f454b893d90a62011882dc4caca2a", + "storage_entries": [] + }, + { + "address": "0x165e9f32fbd734f0ee34162b0bca57a421d4dc74573c4fc8f8f7a30e3a3d2ec", + "storage_entries": [ + { + "key": "0x53c9b5152ce42fac2351da5379f9327a7ac4bbf645ba1ceb95b9964421e46fc", + "value": "0x1005058229126a224652809444005b4a" + }, + { + "key": "0x3d661365c182cf4b6a32f22e316e4fcd5b6ced33c3fdd6ef17e4591061ce15", + "value": "0x4000000003001000010dea00000" + }, + { + "key": "0x277ae353acff3873c6057f01a2b1c6fc6a3332644d56135917325981a085379", + "value": "0x33018b38182780c259d408801010e690" + } + ] + }, + { + "address": "0x39371c601a79e0f7d81b64dc17a8404bafcca9a6ad453509b6c5657abe68e35", + "storage_entries": [] + }, + { + "address": "0x22f1ed2ce6254295d760cc13cee0e2aa8bf8d24d1abd5e9bbbec7525995bcc8", + "storage_entries": [] + }, + { + "address": "0x7a4ebaaa09cf08cc2c619023d083015c870492b147fcb49ae5e7379b39e7ae1", + "storage_entries": [] + }, + { + "address": "0x575a33680cca4beb4c3efb7297b7ee0f7bb4e672a9149c4691f1409e6c94322", + "storage_entries": [ + { + "key": "0x47c86e7b4530701802001a23c3f8b241b918c033b8d05122c0c195cc99eea", + "value": "0x3b40af994f0310e" + } + ] + }, + { + "address": "0x3a77b6a1715b9434bec420c3fd2841dca0ac7a1ee55f511203e317db808a7e3", + "storage_entries": [] + }, + { + "address": "0x10884171baf1914edc28d7afb619b40a4051cfae78a094a55d230f19e944a28", + "storage_entries": [ + { + "key": "0xb61ad1b0cce680166d9ae08293663dd76ee32f60afcffb51a601414abe03e3", + "value": "0xc387e23f4667c9eca6a" + }, + { + "key": "0x4ad5399a6c5b6103e5ad130e0430f02556c7cffc406625fbcbcea4e612b0ac7", + "value": "0x1468339dea" + }, + { + "key": "0x17cfc6551871a468902c6da51eb19b4a8cb858bc18ac0dd3ab8bc19ef7c4d0b", + "value": "0x366f4661477587838" + }, + { + "key": "0x7c679b59d4a3e95d904c93ba8ab33a18bfc774680e69105d4cef5798c143182", + "value": "0x24140829ba100cd4f3c" + }, + { + "key": "0x2487f67598912d31ab84d8fa97c9e78332d00795ecdad092ea09f9c9c14a9a3", + "value": "0x569454dc2a" + }, + { + "key": "0x2487f67598912d31ab84d8fa97c9e78332d00795ecdad092ea09f9c9c14a9a0", + "value": "0x5b59a0221e53757ab" + }, + { + "key": "0xb61ad1b0cce680166d9ae08293663dd76ee32f60afcffb51a601414abe03e6", + "value": "0xe050f712113a6ac4" + }, + { + "key": "0x17cfc6551871a468902c6da51eb19b4a8cb858bc18ac0dd3ab8bc19ef7c4d08", + "value": "0x2f08b189bfdeff4e9" + }, + { + "key": "0x4ad5399a6c5b6103e5ad130e0430f02556c7cffc406625fbcbcea4e612b0ac4", + "value": "0x1587510de53f2615e" + }, + { + "key": "0x7c679b59d4a3e95d904c93ba8ab33a18bfc774680e69105d4cef5798c143185", + "value": "0x27572bc6e" + } + ] + }, + { + "address": "0x3841cdffda36832106c6316d33542b73c0d5613acb19166efa57986714f22cc", + "storage_entries": [] + }, + { + "address": "0x34177b3b48d2daac8b8ccea1d0b1cfef7c440f6657e5a8e77a4e5191c9f390a", + "storage_entries": [] + }, + { + "address": "0x34240aeef40ea98c75c60f53da5ddf664eef0ab9acd7e9ca78ef4819b005658", + "storage_entries": [] + }, + { + "address": "0x1465330a5cd0039460bfbe85ca0b697da53727443744f35c0bdfde117694c77", + "storage_entries": [] + }, + { + "address": "0x156dd32e0cadf327fced723316878cd43c30d8d2b3742a570579b73c1171971", + "storage_entries": [ + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x160502194efdc26ae" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66192543" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x99e92c851f9d2b63343bc54" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x277cda74285ff" + } + ] + }, + { + "address": "0x3fe2b97c1fd336e750087d68b9b867997fd64a2661ff3ca5a7c771641e8e7ac", + "storage_entries": [ + { + "key": "0x5fd7f13fd57ccf441c8692ac4e4d82194f6858d7f7ebc9bb74cfcd5d45d2814", + "value": "0x0" + }, + { + "key": "0x43e2a627b69b10a0d0364802f42110af90a93bc8f8b3ce1e95d3420ba66a989", + "value": "0x40a6c" + }, + { + "key": "0x1716740cace5c468d7624dd6f91515f2396edb5ba3434bc6ac4bcbc5edbdff", + "value": "0x0" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0xdb82867b" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x75b692" + }, + { + "key": "0x4303f9a8a386564a23333169d519922bd81a3521141a3f74c1cf536000a1398", + "value": "0x314dc6448d9338c15b09cadf2e0f" + }, + { + "key": "0x39743e2d6c62b3eb9bf1345f5ee3cc02229635e1b0b932df49e26a7a80ca911", + "value": "0x24085b" + }, + { + "key": "0x7444ea6c2b77ef7ef1458715fd4fe85ff55456b7400cda2a0e214ea0df9e3ed", + "value": "0x0" + } + ] + }, + { + "address": "0x7c115c3f21e5d5b6683710d2c5d43a548a33077a5efff4b89a4c4cb778a299c", + "storage_entries": [] + }, + { + "address": "0x150b19dd07a77fc838d27e6a102846489d980159a445f2ba8a2e1d278276f62", + "storage_entries": [] + }, + { + "address": "0x5a88258407b5e5c4dc4db3628cae7aab3e1e16eaefb43509997be48dd6cfbed", + "storage_entries": [] + }, + { + "address": "0xfa4dce0db3eeeab9125e43fa8a59fb775a31c694a5c746c4c793a49d012939", + "storage_entries": [] + }, + { + "address": "0x48797c4fe26026ca9c5db39f3c87eac1215b2450369788dbdb0d668b01bf78c", + "storage_entries": [] + }, + { + "address": "0x5b9aed8ebe68d7e8670ab0b5e1fef8c32c04e926db4d87f324ae8d43ff0a297", + "storage_entries": [] + }, + { + "address": "0xcb1451f9e8f3008f17e1764da9fd37bd19f5b9a9c346f3dc7914a8b25e3ea6", + "storage_entries": [ + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df4", + "value": "0xa54" + }, + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df6", + "value": "0x66192543" + } + ] + }, + { + "address": "0x12d036d4822099814978b70404fc7cce8a1aeeaa6007d0889fa4f04225286b3", + "storage_entries": [ + { + "key": "0x69e23b825cecae641014a0a89589a303d858b680723423ea453b9a27c24980e", + "value": "0x14c55726909de682" + }, + { + "key": "0x2fe448462dad5e2ffeb744106ad22a0a7b6170a0c408675c7fef7c2455acdf0", + "value": "0x15470bb4706df32b" + }, + { + "key": "0x1ae3ee937f71823e9a3d8f9779551a0a0c0921137452c8364bdd976ff71f8a6", + "value": "0x37b4c3273cbe980" + }, + { + "key": "0x547b24f175a9dd67d3ae6ac9cfa92973172337fad59bd4f0f23b142a812f280", + "value": "0x14e7e0044253330f" + }, + { + "key": "0x24892eb87580d843f9f6fccee6aefeb23e752ac565e355b15d879e15f0148c0", + "value": "0x14d5e2d64a1d31a5" + } + ] + }, + { + "address": "0x5726725e9507c3586cc0516449e2c74d9b201ab2747752bb0251aaa263c9a26", + "storage_entries": [ + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x843ac332fc3e8865335" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x10880449ed" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66192543" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x1e2ecaf0b06ec295" + } + ] + }, + { + "address": "0x21f2e555beead299d450183573d3a72bff2acd3bf95a03bce7bda43877a9193", + "storage_entries": [] + }, + { + "address": "0x5900cfa2b50d53b097cb305d54e249e31f24f881885aae5639b0cd6af4ed298", + "storage_entries": [ + { + "key": "0x7af134b7c4f8214516c071148fe043502a19625938f2a16f0538ff40518abc", + "value": "0x41031f1ca7b41485a941efc028" + }, + { + "key": "0x5205bcb3e3f49a913e913df275c9ea1e4773ccf90f439baf079f61b80303917", + "value": "0xba1798f140a9" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x21260efceb6eb12aa" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20d", + "value": "0x86fab70e3072f43ad61ff4800f90fc4d" + }, + { + "key": "0xc466fe1adaf62a7bea01d07d35b0ad81cc8ce2fe00f8e0201c24bbc34266fb", + "value": "0x0" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20e", + "value": "0x5eb2d2c9c1" + }, + { + "key": "0x332df419aa058c3f4b36acbf5af4b7e8e3d4dd58918d5f0ab2841741e7b55c2", + "value": "0x66192543" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x56f1884e02a39" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x1f6133cfc4" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c5", + "value": "0x179221a0deb17f0017a791506724" + } + ] + }, + { + "address": "0x5c0973aa8038e018693eab2cfe568cd991ec684ce4796d12755080ba9bfbf96", + "storage_entries": [ + { + "key": "0x38036e4af1d77f33f0c5cd33a3353e2a5b2265dd26031df7d7c79297f908457", + "value": "0x16aa8045a25ffba54a3a930c02241fd1b5977c9a722f969b2962de5e669bc99" + } + ] + }, + { + "address": "0x49d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7", + "storage_entries": [ + { + "key": "0x41c5be7f50f27d29853e0dac5bde49442762eee02ee44eafe8b02056bec40b1", + "value": "0x502a23ec01e8" + }, + { + "key": "0x1f8bcd1c7bef334889efc47b17528f429217960974b49dfafe0aef88159dd01", + "value": "0x17c2dc03172a8d" + }, + { + "key": "0x7113bffccd963cfcf8c9c4287b4f8613df8c8651ac3e6105ac76792b4422d38", + "value": "0x2472dc7febfdd" + }, + { + "key": "0x28b29f040fcaa633b87eefdb47d43577504b666df5a28c8456fcc1b81909532", + "value": "0x3c2961957ce7" + }, + { + "key": "0x6e18d12b1930387ef55b0718604a666d1baf410387ad6edd86bd74eb64d93cd", + "value": "0x2d5b9ec890ad91" + }, + { + "key": "0x27097e05575ae766d0aacfcb00d1c668e43fc01e414ceba73c92c1ef4209fae", + "value": "0x28214dee8def97" + }, + { + "key": "0x21d88a5e3ff943acbd6e10d4aa5cd20468d9ff8667f7c581b231a9f6a90aacc", + "value": "0x702fde66fddba" + }, + { + "key": "0x41e98bc6b105140e2cdb4c84c0784417868193c2d35ee590750430600e011b", + "value": "0x4c7a0bca233b4f" + }, + { + "key": "0x24e2b2360d54fda4617d51e65be46a585c90a6ffa7ea1e5182711c23bd7feb8", + "value": "0x42e222a137" + }, + { + "key": "0x599b39b8f0e0e064f62ba921252b0735c2732a18e0b87e5b66e7f235d05dbf9", + "value": "0xfffffffffffffdd5d163ea4a68b01978" + }, + { + "key": "0x492d83ad5479b01161fbca925fe8b565b7c85f5c962b980ca8ac37b1a1c523e", + "value": "0x322ad8747d" + }, + { + "key": "0x5fd7f13fd57ccf441c8692ac4e4d82194f6858d7f7ebc9bb74cfcd5d45d2814", + "value": "0xcf0e9a31dde140" + }, + { + "key": "0x165f6460edcb4846850890264e48d4cff98f64ccb93f798735e679826568753", + "value": "0x3fd895d0e0b5a52" + }, + { + "key": "0x3a35d47dbea6764cfda77a354d0665ae573ef2b2e345cbb2a84bbc061e65e0b", + "value": "0xdb0d3619b3e5b" + }, + { + "key": "0x21ba37ba2cbbbc33b966849d627445ede0ff92a394c893f2ff00716c3a85485", + "value": "0x5b39d1e07625645e47" + }, + { + "key": "0x6c5a74e47f2716d692f87ca6c310282dff1d955f31b67c33d1a7870d96cd0bb", + "value": "0x1330addc0a11d0" + }, + { + "key": "0x46775a89d3605630f814cda2819e580800f65502c49782def13e06c680cadee", + "value": "0x2421cfc80fed06" + }, + { + "key": "0x7564da018a326bf72524fcc4c321b68a4ff38ca12d3533b3f4a02635c48bdf9", + "value": "0x3c2961957ce7" + }, + { + "key": "0x2b0f9a010876c5aeb5146ec7aff0111169813a5a215f6a7ac058c68c60948c2", + "value": "0x2a8e9c070e8ffa" + }, + { + "key": "0x235ebc08ace052e239f73c12d17e8618202b206aea4ec6a9538ae14dba6fac", + "value": "0x322ad8747d" + }, + { + "key": "0x444ffeba005afb4c1a1f459f0f50d3ca6e743b4a58e89765ad188c793c49891", + "value": "0x15cdc28b84027" + }, + { + "key": "0x1b5096640ac74b4f3d77f989059e19bfeb38105f1ddc700b568d657c8c885a8", + "value": "0x11cda772f0d" + }, + { + "key": "0x7504ceddd5e5a5649229cda59c42602f075aa30cd9aea1426ac745ddff9d7ef", + "value": "0x322ad8747d" + }, + { + "key": "0x512b0f1838759f8998e04a996eb081d3d3b24afad3d2eee44b70695aca8a97b", + "value": "0xbba714fb02f50" + }, + { + "key": "0x3828e94b5c86c8455e0e61fcade183b0044206117580ee1f0f47add3c7755a3", + "value": "0x3295864454682" + }, + { + "key": "0x15774bd755b124175f2b50b6d7b7e6337be150d0495f0ce858eb0354bc0141", + "value": "0x42e26c8e99" + }, + { + "key": "0x715243be3af60c8253b21af08b63d7da3c5cb9783d40235802939f27b6f44a3", + "value": "0x502a23ec01e8" + }, + { + "key": "0xe3a3a8c197db9a0166eb1ff0aa51462466fdb0a862acd9a04d2731ee305321", + "value": "0x3d8a7087525113b4b" + }, + { + "key": "0x1424a90e1a235c3b1bf7d4b70c51c033d9e2657bbc8fa156caac5b1cb3c690d", + "value": "0x21ba7e128c0dbb" + }, + { + "key": "0x3fceb6673b7c69011fb0ed61e9cd59ed65a247c8b252ef6f2ae898cb2626b20", + "value": "0x2f66bff870" + }, + { + "key": "0x6813e5dbbcda52c1bfdb3151dbf72eec942107040ed75e6813e71ba926594df", + "value": "0x3c2961957ce7" + }, + { + "key": "0x25d562512f08d59490da4838487938b2e65af211a19e0a27e17d163a7ef8796", + "value": "0x12843e3aaa388e" + }, + { + "key": "0x289f53b48fbe6e61456d15e0feb50270dea1cf7565275e76c3cf6d49964f551", + "value": "0x8d66d9f010" + }, + { + "key": "0x4e10d7fc3b3b9bbeaea75d9ed4e9e3f4210c127f39ae04b1a65a007df4a1893", + "value": "0x9db74ac60d91d" + }, + { + "key": "0x6c88f4473dcefdc6b4dec9c5d6d1a6458c814b75a897902a31740bcce5a292f", + "value": "0x21944722ad176a" + }, + { + "key": "0x5309aea67fb1ae938ed731af6331a54b0c0ee2531a5b75f2b4a0b153b1f74a3", + "value": "0x22d867a70be634d" + }, + { + "key": "0x239c769ee792a613134fa1cac6623fde47c206b8ffcb3a539203f57778d5d84", + "value": "0x34ef1f4621a9" + }, + { + "key": "0x3791bb57c6f40abc341e0805ba91b1781414c3e018f2044bb0a0a20b0ccd26b", + "value": "0x1d4de3d2e9eba7" + }, + { + "key": "0x61f33bf7f64047434124f7118bffec843973a10805923c98ffe46e1a3ff46ee", + "value": "0x4b5c0637c16ca1" + }, + { + "key": "0xc8c2b5bfdaf0dcaeeb47e38d6d9f82acdbe9d7078bb36358776cc94847e779", + "value": "0xd9443976eed50" + }, + { + "key": "0x496d7267d8a8ec7097e4eedb6e9c3913912a0bb22f77d302b051e6e573637ee", + "value": "0x161928854548f7ed2" + }, + { + "key": "0x151656ce4ec5df2fac740ccee23e1e6163d3b1faeac73f420a98714167416b7", + "value": "0x661e9d5d7b2cc7" + }, + { + "key": "0x75fcd80f6ffbfc0ac67fc514533a01f4c2b6f37711440e62b96250b38253f36", + "value": "0x42e23fcd4f" + }, + { + "key": "0x113779abe252eac66e13a4ac4a5146b043138850cb27047c1a3e98e73c0fb42", + "value": "0xd2da776daa7c5f" + }, + { + "key": "0x112c5ab8075dedd34809bd86ee2c5b342c049f7710d0d30a2dec521a84f6c3f", + "value": "0x118f51f24118f0" + }, + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0xc5d9feb95e5b98feb4" + }, + { + "key": "0x6e4b7d65a4e2b11b281ab2edf0b4a1fc05bccd05cc611215bdf587ba82f5336", + "value": "0x11cdaba0a2d" + }, + { + "key": "0x1e25f0c4d74cf8f50059f875b08f2e8c40bca568c60b427ffc052cbcd2e6c96", + "value": "0x12578c5d44616e" + }, + { + "key": "0x76b773fd56c370e1bf869759d077cacab058f86640d3062c7924ef3c5310670", + "value": "0x120dfdf8234d8" + }, + { + "key": "0x3c6be39f77460d0354d345ddd1ec6ea68bb531649e06b6480aef0bbbaf8c99e", + "value": "0x77ed8be41a74" + }, + { + "key": "0x77aab2cc4ded10753b0cf2ccd9767680178832242ae229223afd5d853c3d28e", + "value": "0x864bde30d24b3" + }, + { + "key": "0x5eabf6afd68372a8b6a522342ba15631ee91a56303a52d3775ba0556916b919", + "value": "0x12adc86d05fa1" + }, + { + "key": "0x26336184d5f4ae81214ffa85dcbb1999742e22f0c2793203ff744d715e1058", + "value": "0x2903a57fd90425" + }, + { + "key": "0x7f0a3ff0244b195ae2ec1dbbc99bf7879236f8dc4e72c5709da87736266bfd", + "value": "0x2801afe082042714b" + }, + { + "key": "0x5f8fc81bfe81bf4f7486322d9c0b786930d3484351323ea148dbb0c166185dc", + "value": "0x1295f75bb9e0a7" + }, + { + "key": "0x583347a6b6ca77f4b0e0fe35404845b5cb4df3cdba93ba3eb0847c942d43e37", + "value": "0xe80260c33e959ff" + }, + { + "key": "0x1214ed8862ba26815a7fa616e362aa1fcac09313a1a8ffdb6afb1eecdc927a1", + "value": "0xf9e5b8da4a461b" + }, + { + "key": "0x4634443c55b5c8f6189f591eef91027a3aa0e41aeacb3698f1f233b4fd98de4", + "value": "0xe6e0708cd1591" + }, + { + "key": "0x3ab6ae8e909f512b024d9b86f2d7a8aaa3f2a05ecb5bec2843d4a2c7051ed86", + "value": "0x2d7bb858a5a8bb" + }, + { + "key": "0x510c664db84ee917626c9a54fc14d86c3f1ac58176a20b04944d035a87fd0c7", + "value": "0x21260efceb6eb12aa" + }, + { + "key": "0x65937e698f98da7cf9294cb8381283788a7fe57e8dc7f7334c62126b8a82a5b", + "value": "0x509a1233ea1445cc1" + }, + { + "key": "0x7444ea6c2b77ef7ef1458715fd4fe85ff55456b7400cda2a0e214ea0df9e3ed", + "value": "0xa5b9ddb451bf77" + }, + { + "key": "0x331450c261990f0b9eb86aaea7c39ae5c6ab072a71f66decf140fdbd75088df", + "value": "0x4f93f4258fce7" + }, + { + "key": "0x52203b4985cdc27f0de325cf844cb8f6b12584a9d6d6b6387dee7e74a7354a0", + "value": "0x8d66d9f010" + }, + { + "key": "0x5f2c9d2d4891131904fb04bc025ac3842bd9ccefd2e7582b4d4b98b3dce74b8", + "value": "0x4d87c89c6d16" + }, + { + "key": "0x5470a09f4c25b48bbd418802d599f4285cb3f3823f4f0bc1d606fcf1f8e4a53", + "value": "0x1f25e3eeae642ad" + }, + { + "key": "0x3d7ccfb9e9c5944c7a3226921716da0d42239892dbde7b12c1e5597d31c4124", + "value": "0x126728f4afdca9279f" + }, + { + "key": "0x443b616ba84687d39d168441092e29aa8f70c1bbc3ba3beee9b3e13daa5320c", + "value": "0x4b4e2d661c" + }, + { + "key": "0x70b9cc6f36d1963e81eace21b95b4f19425e1ec10fbc8878461ad6ea2643405", + "value": "0x6bc0ac5312ae6f" + }, + { + "key": "0x68c7bdf0d838b50499ca5c221a63d926f3636f3d488f528285f1aa911642b0d", + "value": "0x126cd8e882a640a8" + }, + { + "key": "0x7f3ae7cdedb02dd23d5e3719a18bc593a5a71ac8946400e28b475983fd1bc9e", + "value": "0x8d66d9f010" + }, + { + "key": "0x250e2b769483bc7fd5b8a7d960b3b782d1b7d08147ee17c69ab1d4be41b9a2e", + "value": "0x1a0830560336fca" + }, + { + "key": "0x16b233413f25826429f5d861520300d7774363ba2fe55b5ea0bafa6bc8d03b1", + "value": "0x8b448b3d49d0db" + }, + { + "key": "0x3a9a4afc4dc7f1c98fada0d80d42380aec18f49876e10fabf194aa6271d4f4c", + "value": "0x1fb2a3c46bfe11" + }, + { + "key": "0x6ad18b0e288b1ecf4331a90e9fe0c8a33d1765a8811bb5beea32077585e5380", + "value": "0x5cd546849bb084" + }, + { + "key": "0x145470db0901625ea8ba278476f58ebf68b5a2038daad69c11f6bcc66c6d3c7", + "value": "0x205ebc3c207862" + }, + { + "key": "0x23acf5d290fc677e9f72375a7124c4659c2eb43b6ad50297f069ba615df0b44", + "value": "0x11cdaa8723d" + }, + { + "key": "0x58ae2ff4ca87df27f5441168f41b3e6e130143d9c27af823d74bec72b6d4d61", + "value": "0x2f66c1e8e9" + }, + { + "key": "0x1d1e43bb2ee3e6d98b9ecfa18e8e96f823938531f3984dde915a68ce5219b8f", + "value": "0x34063162c4" + }, + { + "key": "0xce795e4058043dfd3789b00615f7577a1d32371001764bacf0868101bc4f52", + "value": "0x322ad8747d" + }, + { + "key": "0x757f2d9db3dcb21ebe598e6d1a17f5e598b52f0d3ae619be6fe76bf09e18dc5", + "value": "0x11652dd7ab100a" + }, + { + "key": "0x12e123730e672c88fe90380fc9b6e959b51a68e97fdfb070c29904b14316c53", + "value": "0x442fc0e6979361" + }, + { + "key": "0x779011b485129310f4c8b1b2778f9d74fff199ea6ccde364a17c3257ecc0cde", + "value": "0x689df2480a2aaf" + }, + { + "key": "0x16da76230b10da2dab51036de724271f0366ca5ac1cf66ed2c445fceec5940a", + "value": "0x3405489ea8" + }, + { + "key": "0x10675b8b03b1dcb5a9962aa5b2148470f819ff22b0d5b37840d1a869c92e352", + "value": "0xb98d0dc76db88b" + }, + { + "key": "0x498b3198e881da020120a05d111cb8e5a41409c2f8e187a1574ce91e07bb7ff", + "value": "0x18b544826dfca18" + }, + { + "key": "0xa0a7ec22aa9a823ac959ad4b802155e032189815e025c469e691aff24ffa5e", + "value": "0x1286042feebe56" + }, + { + "key": "0x46c35163ae289e0a2d6b41f3db854f07402b92e74f7eb5c1189cb57835d3b5d", + "value": "0x3c2961957ce7" + }, + { + "key": "0x16ebc66041cda4f67c94ab579e820d1f942c738ba5c2c6445e244e7d37830f", + "value": "0x2f833f896b0f1" + }, + { + "key": "0x77aef57cb1d017567fbd900def8796a0f7f3a0fc56b5e9a132305d4c73b180a", + "value": "0xfe31d6839cd03" + }, + { + "key": "0x6223849ebd23ad67c81e30bb3d82f2477d864f8ae8c8b2b9832662e7cd08f53", + "value": "0x0" + }, + { + "key": "0x49a8ef79cab313360767015d427d0307368eff5c2c81b019aff018ec638eef2", + "value": "0xb7b6dce2b086e90d8" + }, + { + "key": "0x37ce8378e4860abebb07c8b7de03158f1400aafba86092cb4074efb70353aa7", + "value": "0x9ec561b7506a4903" + }, + { + "key": "0x6b2d62252f3f44360a7451638d1dac14f9e6b3bb743eb0c2138802fc7134cde", + "value": "0xc94323d828a522" + }, + { + "key": "0x4d3377b8030872cc6c89c61b09a08068c26971e39d35b917676bef454413259", + "value": "0x3fcc9b49a0040" + }, + { + "key": "0x5535747a2ea4bc3c6ae3584d6aaa71af1375c7400d875154924556d1ca744fe", + "value": "0x19ce0592a8d23" + }, + { + "key": "0x3b9481210ebe0fbed789093e0b80fedf6a914af4e9acead78c2eb5cd4e7c92b", + "value": "0x1937d16bd2cefb" + }, + { + "key": "0x24aefd9e3f1a168f2fec1d76d49403d8ee367a8443fbcc94400d12792fbe92c", + "value": "0x1ff99b9887d968" + }, + { + "key": "0x5826a749b73b2632e31704d24a9c6165e9b980f652f3d67cdeb3a34953c4c67", + "value": "0x247a5adab6b251" + }, + { + "key": "0x2e3221c846439064f5d6d466002dfdd50f83f061c0aadffd2f76d7f56334fd3", + "value": "0x841bcb7333c488" + }, + { + "key": "0x22a1540700cc59994acd38eab739a115da6820022aa3f024896184eabe9b734", + "value": "0x3c2961957ce7" + }, + { + "key": "0x580d3d04765fba164860a167ffa5beff23c567d7fb44969d58bbf72470445f9", + "value": "0x15384c5e8636b6" + }, + { + "key": "0x6b48748066cc16dfb80430d2e678c936ab4fb7364e793b745e97f61b7143348", + "value": "0x3e05d232cc" + }, + { + "key": "0x299e8d5d4148ea0963a3dc284d0b1dab75ebaa45a1163c3ab7f8e0e0d20278d", + "value": "0x34055e0259" + }, + { + "key": "0x6a0923cd86212ff01ecb43874d6dcf9380eff74b94e838153621f09f8336871", + "value": "0x1a630ad18e2042" + }, + { + "key": "0x3ea39db4fbdaa917ce0197986f392c17240d0f59f092c7f452f62c8a2eecfa6", + "value": "0x3405cc9fd9" + }, + { + "key": "0x30fdbbd904f309c6f7a1655de940643ca809827db7f7affeb0caca4cd25f983", + "value": "0xfffffffffffffffffa6b59ce191d6352" + }, + { + "key": "0x11f787f240b95ea6b98d5ceb1dbb42f5039af55b970cac82f41900af297f717", + "value": "0x340613092c" + }, + { + "key": "0xc5a87ec188ae6a46f7ed998b30bb2aecd7ae3acf9494e9c14f060e449f0b43", + "value": "0x459de1a7cae7" + }, + { + "key": "0x73c7d5a58b640a59da87b67458f040778edf7ad7ea35add5f5e729b86ceaef4", + "value": "0xc9281f74adba13e" + }, + { + "key": "0x3e66a438e2a3e1b1908660c2ce857efdf7b469aece295dd2a19e05215013b22", + "value": "0x62692e260127d" + }, + { + "key": "0x25216714d42d05b79b931ab552f7119ee7315fa7bacdf76b6e036cdbdf1dbd5", + "value": "0x18bb9e38fe889" + }, + { + "key": "0xa27e9d19f89a18e6b0aaec8f4dc53c59b508da5faf1ba9e74674a4b75a84c7", + "value": "0x513e07939b4186" + }, + { + "key": "0x8d90448eb1ecfa0f65e7129e524150bd1faff9b9ae12885dc660922d24f4ad", + "value": "0x103257a2594238" + }, + { + "key": "0xfe4db3c4add74e710b178317d643b6b8ad5c9d6f9db9f2a6896823e51f0157", + "value": "0x8407a364726a92" + }, + { + "key": "0xc75334fd924d4a252a349c1586fde84125b293e11bbb7302c083a15a01439c", + "value": "0x6f9a51c1bb050" + }, + { + "key": "0x76e8354658b0fdf655ddbe54d46f583e14e3877187df543d5e0b9107f241905", + "value": "0x5dc31a11eb99a2" + }, + { + "key": "0x1037ad2b2b6d6ccfe8b7d030a2483f734d3c087f74251a89ba5669e8a88200", + "value": "0x42e239f683" + }, + { + "key": "0x221abb0abff1ee35f5efd4febd64db9580dbbc6441ec6fdd4bc0c41bda7529c", + "value": "0x23f16148ba3737" + }, + { + "key": "0x148b9cf14da2aac6eef5be296b75d9420ff70f66d0233801d295a1c9f00a679", + "value": "0x2401bfa159567c" + }, + { + "key": "0x798adbb2a995fb7cec7a982bcde09c96e2e272610dc05e51cd475bf9c58e7d", + "value": "0x2f904352e98b8f" + }, + { + "key": "0x31981cd351e40fb3e39646f4dab74ac8a1b50d6c2f731f05923f5dbae61e653", + "value": "0x6f7fb9846447b0" + }, + { + "key": "0x6e8ea382fe1fb90f4df42f72e4123d01158f235cbb743dd32b678d3b5cad2c3", + "value": "0x79f0f022974a6fa2" + }, + { + "key": "0x7b36b036ab720b3b20d0aec059753e24eb1917cc36058dc7334edb8b42814c8", + "value": "0x204fce5e3e2174e26b398000" + }, + { + "key": "0x1ce9169aa7a8498bd99cbb5d77355f372eda1ed05b42507f98490253315a6e1", + "value": "0x1f23078480d15c" + }, + { + "key": "0x67c73761c40f8bd252202b7b791dfdbcefa57a9ac0f0e3cd591f6e000adc03", + "value": "0xe38618600ff7" + }, + { + "key": "0x55de5bd670b54db1a615e2d7df850ca188ba2e1d384506c102cf0dbdf40aa1b", + "value": "0x1f04e763cdda43" + }, + { + "key": "0x7ef4b643d784dae0d6d76ae269fcc95e48daf731cfd9674d451d7b61e399c88", + "value": "0x2f66e85678" + }, + { + "key": "0x7d093fc9154083424072697ecaaf8a5477850b3644d2e3b0ed78ad55a2e8714", + "value": "0x29031d49f804e8" + }, + { + "key": "0x3f5753913a85fdf0e9ebfc1be06a5110a196b5d3a06020cb4f6d186c849c87e", + "value": "0xb89e62a09e1a0" + }, + { + "key": "0x2875317cd26b1820173e8f2c5344d08373dc8ec2c1e63f2454943a4e90c7d22", + "value": "0x5f93e269e6e2cb" + }, + { + "key": "0x644513e40d8e57d9345736d42e97e489fe3ef7d2c6cfe62227fa7a0cf04e5f0", + "value": "0x18509e88dfd6e08" + }, + { + "key": "0x61dbdab866d2e62210220f46a69c2dee04523fabbcf910b8a48793f509926c7", + "value": "0x122af7f66827d6" + }, + { + "key": "0x121a72389197c25895ab7c8737aa0a507c2808009ccafeaa6de38fe14daaca5", + "value": "0x2bc497754f9d" + }, + { + "key": "0x2657352aca818925efe44abfb826a9a1afe47f1aa914776c082a18a03a9d38c", + "value": "0x10783ed5db9ac1c" + }, + { + "key": "0x463412d69b8d3202cf40e0ac6208de559d957cf87afa73b6f196bf480f90c11", + "value": "0x140fe01ce011da" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x2f8d604757d2a690776" + }, + { + "key": "0x2c6558dfdc330c50fb30d8fa349a70b8f99b20f1b3d4a2ec0fd8f3cc8d0cf47", + "value": "0xe8e08650e478c2" + }, + { + "key": "0x19b800df5e5d3375fcce480579809a139ef5249ca12340664161540b7a20c0c", + "value": "0x13c2f52dd14d1f" + }, + { + "key": "0x5715ad6f9694ba3a61a3cbeb93abb58a50c8b9b370630a50f373167ac7072f6", + "value": "0x10e7c2640d377e" + }, + { + "key": "0x53871a4edbccd398d9356f95fe1eb84342d483f92995dc6a59703537698e2c1", + "value": "0x4c5637b59a3cf5" + }, + { + "key": "0x20391aa5850cef6bf7c90e661e71ab8b888c8efaead47fee2d7eaa6c835cb6f", + "value": "0x8d66d9f010" + }, + { + "key": "0x681f48bf1efca9c5f6c524f2a3671acfdaee057a5726853893bcd2dcca663c1", + "value": "0x17f24a89fea6ac" + }, + { + "key": "0x74efca8b64ecc53faec1dc4c52a2d927a64b1fa0ff0d1d44f0d9bf9cd6c1d07", + "value": "0x122e4d9f1739e4" + }, + { + "key": "0x5accba5470d353ef16f3eaa9a4b10dff7b13738097d788e39fe991921bc21b4", + "value": "0x502a23ec01e8" + }, + { + "key": "0x68bc5b5c6684fadeeb7ebc51685b0bd1e70ed3532dc3086e3efe0aa30d5b97a", + "value": "0x1c9ea017f8ee4c" + }, + { + "key": "0x44f98ed3023c05c507107a1460e8a6992bae25e13d2ac67bf85ffb937dd0b89", + "value": "0x42e80573ff6" + }, + { + "key": "0x450f91b9bc6a3b068fe2ce9550c06735d20eed3fd5a28a6eff6c0ed30184e52", + "value": "0x93c2c3727be7c" + }, + { + "key": "0x5d2b76a45ed8f1a073d37d32ec4a2ba1d23d4284fbb50facca4ad02d5de0fbf", + "value": "0x3406267f6d" + }, + { + "key": "0xdd56ce8f0ec709a53ea92be6c2e11aa4fdcef6483a5f4abfafa18bc8901ce6", + "value": "0x53b351a1fbfec" + }, + { + "key": "0x6c6bd45d6c9ace81c1d1b3c6621c7bf1f5b77922d38bde7b66fdfffdfc0b555", + "value": "0x502a23ec01e8" + }, + { + "key": "0x21ca115a02a50855f94cbcbe2bbe0ba41ee5ce5a5e502a56391ae59fc5fc08c", + "value": "0x26dd9b9cf161ff" + }, + { + "key": "0x73b14e99b7e8febd11c4ed0b3e7074225863ba6c756b46d8c528f2fa5932f6f", + "value": "0x1af2ceb6ae960f" + }, + { + "key": "0x4d82998aa3d8e5173bfc632d048e555128ebde2d426f3235d8d67e72235baff", + "value": "0xd06d7c137f3aac6b" + }, + { + "key": "0x3ea08f7851f4da5cd4982dfde029b81e5cd41b707b122642131b9a32e50d88", + "value": "0x222d57399d034df" + }, + { + "key": "0x19fad70ad28c85d18d86c05c2f39df844e59574a3a8a49e120e477cf90ffdd3", + "value": "0x502a23ec01e8" + }, + { + "key": "0x589826c13fb47f4519211ada0c3d0f1620b334d5fa839f2973c205dfa650d17", + "value": "0x49dcd2542c4d56" + }, + { + "key": "0x4fa9912688f5600e19da22d01ac5639f14ad3e1377d36b39bb0a2718badd6be", + "value": "0x64c0c3a6219d4f5" + }, + { + "key": "0x47d0f5c473e64e1311ef39397b4208e67cd7ed2d74eef5af4ee8e3f6e53f275", + "value": "0x8b44313b32000" + }, + { + "key": "0x40dfcd01fc65bfe40fa43dcc5de9b30b9ff1191bb4b27a8f380c59b18d297c2", + "value": "0x175fb99608cb45" + }, + { + "key": "0x4a161488df9a97fe0c45a0c06caee5c0a873ae6eefe25edf78f4275326d16a3", + "value": "0xc87b88e14ec053b" + }, + { + "key": "0x8e7faf406fa6479467ff0bf84cac24cf3b9edee69069fcbb876bd82026862b", + "value": "0x0" + }, + { + "key": "0x42037e4c7cd29817ca5562afc8252b9ef44c7c1c6521763743bbea123c1ab1", + "value": "0x26443204bd31d0" + }, + { + "key": "0x5a33cb8caae813d812fd2ed2b40ddf439109834283b79e0b83147d2d7d079dd", + "value": "0x4909ec13682bd58" + }, + { + "key": "0x51af54395ef157337433a72c3b8e807775c50dedbacf5e55b4de380f723c66a", + "value": "0x83a0f2787776d5" + }, + { + "key": "0x36ba258c139345265d3b1dca43352c0d2642e6786238464b67bd9df90120fa4", + "value": "0x0" + }, + { + "key": "0x7003d313e29e93fe4ffed4f45994539b8ce69f56fd2e2f046d2a353057d5904", + "value": "0x222b5eb46542cb" + }, + { + "key": "0x5a45959cdc664a7d990e480ede23781f4a00c0c4a3650ae553d6fbee1251d43", + "value": "0x4b4e86ffe8" + }, + { + "key": "0x515e97fd668a789e49d3fb82bc6a2a4d885467d5911e0df07bd202ca36769ed", + "value": "0x2e0042f17c2427" + }, + { + "key": "0xe9e3109d8326a4325da675f8b8eacd065db0c27604840367214c060ee05bd9", + "value": "0x6ccf9189223cbe" + }, + { + "key": "0x311925f934b3f2da8a46597019d7f2bf3d84cc3cbc7b2d3eea719ca5c63d013", + "value": "0x150773de6df1c4178" + }, + { + "key": "0x4883415848a7258a7359bdd474a0127c069f94207f59e4e109888efd58a7b5a", + "value": "0x3881fac98bb70" + }, + { + "key": "0x77ca52dc3370686cdbc1ce869fccce28e02b31148e6c3dc4ac5298337231b0c", + "value": "0x29afdc1c4343e2" + }, + { + "key": "0x69c56cf8e1869addabdf9ccce3f77feafb91e30ccd9ef80c361d85f38b747ef", + "value": "0x360bf3ffb179a7" + }, + { + "key": "0x7c6d844c097ac08e155d40d383b174c05ce53b193d74caf6e557deadfa76bad", + "value": "0x3a099128b57a5" + }, + { + "key": "0x28213ac84a5abe21b95e820ee8ca9b2a707cf506cd32212623b06c073362705", + "value": "0x8d66d9f010" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xc881c11caf052faa8c7" + }, + { + "key": "0x3510876ed2ee963b3f09429c3c452232bc00d016db45d07c9d206895ff71039", + "value": "0x137930a2c3c0d5" + }, + { + "key": "0x3311b9ded06068ac3ef1d2a7166949cffdb9c1af9709267df9fc2b383be74e1", + "value": "0x4d87c89c6d16" + }, + { + "key": "0x1f13cace30ea3437aab092438c7129901736968369e64c246b82ef92f7f4f7", + "value": "0x3405c41e40" + }, + { + "key": "0x2152f551f4a641a06f634e6f083141fa878c4d5a4c04878de4ddff4ca1d3696", + "value": "0x16c7a68a0f9d8b" + }, + { + "key": "0x4278c0245d42570c539dc857dc1621e818062da07d0bb31aef71ea3b93c1ef", + "value": "0x354a6ba7a18000" + }, + { + "key": "0x667b267ae1aa964b67d4787e5010306fce0c5361a4780bbb7d96868e9b9f6a1", + "value": "0x75d596f5bebd78fe" + }, + { + "key": "0x29ca83ef4613508a5bf4e573e6233bbfadf5367086ae2d58a635f67c5c2e3d7", + "value": "0x46bb7f979f9a94" + }, + { + "key": "0x211c485f57f335b662c3d4b6a16eb6da4112a7139ae32fea8ea8da772974d2b", + "value": "0x84fd0733c0d887" + }, + { + "key": "0x759e1263a1e5678d35ddfde0a72caae18144ab5ead406349a5e7681b5aeb20a", + "value": "0x2f6646d52b" + }, + { + "key": "0x7b3b86cc11e5a753ee65df50695b2e96b0c71b18a9fdd31ee6937c025b288ef", + "value": "0x322ad8747d" + }, + { + "key": "0x2e19c3e316afef2f2a0266382530c834f878fff606b776bc809e07d720b361b", + "value": "0x128e1570198d6a" + }, + { + "key": "0x313f716fe4fa45ca52f57e83fe9332f56b333155e65d07ac0b58b714b52f5e", + "value": "0x8d66d9f010" + }, + { + "key": "0x2606dd1ce6bc7b3fd0f6fed1e3a1a931108ee008ca34ff1a0a6b69c0ceaa407", + "value": "0x14686b7558110c" + }, + { + "key": "0x6ec39ad2f520d6d219131f33fe0fb8e0d3b57b76bca399c44c1f8fb0d806044", + "value": "0x11cdaab293e" + }, + { + "key": "0x3e9e60d7013c093700b75b448a3fb0330afe825547ada33c9f3fe5fd35793ff", + "value": "0x61f5437f460e2b" + }, + { + "key": "0x14b5fe589875b2464f9c4054d260af69d67dc99a5e7744e1e77b89c8ddf877a", + "value": "0x8d66d9f010" + }, + { + "key": "0x339eff17f32560eefc2cdd477ce69374a1d404b7693a14c45e213e18eeb3a97", + "value": "0xa51d5d899ad52" + }, + { + "key": "0x86c7289ec3cce734ef884dc6a347fcd31f89b36dfe3a66413a5e8f797c7141", + "value": "0x26554edb878659" + }, + { + "key": "0x2e68f83aa3074abbdb37c05450035b6d3f1e6dd0fe06d7194ba22a475f74c9c", + "value": "0x322ad8747d" + }, + { + "key": "0x7e751b6a429bc7231b3bba6b272d90b1bff250242725ec3947a1c33597edd46", + "value": "0x304f2f40b6" + }, + { + "key": "0x29dd6bd55c8bbe0dab218b1ed4610bd8155cc4144491892f15a33bac41a1f7a", + "value": "0x322ad8747d" + }, + { + "key": "0x6dbb93151bec2c9513e8c363c44c7a7b30a13e139c90a213e2edf728b942fd2", + "value": "0x2918830c118aebfcf" + }, + { + "key": "0x7e9866fd5b8ee8481133ada18d04a9b17ce28fdef76bd2428c0ea0be23af2a3", + "value": "0x50f77215aab0f" + }, + { + "key": "0x52c5a133da99a96dd4036270c10c1042e8edf084931ecb7968e82a4569d4df4", + "value": "0x3d386bff2b442e" + }, + { + "key": "0x5713adc80e774ed29eeefcd5fd257d0f41f2928d159f8334ad16ba01e2f1a53", + "value": "0x23095d894d935e" + }, + { + "key": "0x1e7415f16604cbadfa6276abde6d53e373775c06d3e182b22b3426c33c93697", + "value": "0x3e744b42df813" + }, + { + "key": "0x4b389365fc70d4c694456842dc06ced0a9602307759061720dea6fb56342450", + "value": "0x34b549c2041719" + }, + { + "key": "0x73409a2ef8c6c1c00ecc946bb129a55601b51a83da1196b6d34ece5846406bb", + "value": "0x2625ded859d3c6" + }, + { + "key": "0x3fb163093be7e35dcb9749655505bfe63a69c18cefec377f139ac25eaa68f05", + "value": "0x663fc1a1dd0b857" + }, + { + "key": "0x3d04a4f8cb20e0ce7ca60c5f684ec484bf10a88ed026d9451edded425dc44d3", + "value": "0x8c9d9b5a30da4e7e" + }, + { + "key": "0x6bd7effc311eb8405ed49db155c5afcb5910fc2599e6a8aa340c0945ebc3699", + "value": "0x0" + }, + { + "key": "0x1bbec8c9f6fc7e4b1833eac94795aeef2950a49fcf3f5866c3fe16b7d8c3297", + "value": "0x2235dde6522736" + }, + { + "key": "0x3646467915b5985647994e6ddb3dd465052b2673b46726e45d647894763654f", + "value": "0x1bc2f891200f681d7" + }, + { + "key": "0x525c3f2cbfa98b3088963fc24190b29a81e1922b7ebc13b406a5192242b80ac", + "value": "0x8d66d9f010" + }, + { + "key": "0x5dde4043fdfa24b5eee175a792425787e3a058f5d9acc5fd3d83cdcac23b565", + "value": "0x2c6c9f3ab623" + }, + { + "key": "0xc3488eb7181ecf987b0679d005905e394c8ec85bf19200075bd4106d0529a0", + "value": "0x3a2e90781758" + }, + { + "key": "0x6776b56e94d13aa6fcc2c769fa9b88ca2cb0e718910ba83b08f6f00dc57f2cf", + "value": "0x322ad8747d" + }, + { + "key": "0x4a85a355998893507580dd65ddad4c32523250ddd8a52913c0aa3ce3a58a008", + "value": "0x25e60ee5ef3d0d" + }, + { + "key": "0x61d7f693649fb84e5dea051d86ecd04c0f4eebff0e58db9a19062fa3e1e1d18", + "value": "0x502a23ec01e8" + }, + { + "key": "0xd267f842452284025b1a955d3c96f27d1a20a21967527cc27032b1c88085db", + "value": "0x11c1d303fea0e7e8" + }, + { + "key": "0x19ac936c891040e6d16c705f25e210dd79f43cd820f5aecb13601f514e601d7", + "value": "0x11e841146a87e4a1" + }, + { + "key": "0x5ff2f912fe6fac8d60789a7f48d951f595f0898d25fbee3c7b80c997019b96", + "value": "0x2391f387c96e9a" + }, + { + "key": "0x29049d5ed0971560406f2e06d7a2634ce497dd71dbf7fa54a610c413dd5ca1f", + "value": "0x5f0670b0b7b22" + }, + { + "key": "0x7dbc1b286908106db4f01396fae1ac5925dc920879df596fbe151b5f03c4a52", + "value": "0x2ce0e6fac0" + }, + { + "key": "0x6a7725035cb56d55bc069618c9c4165aa6031768fd3db4c5ac8c4a1bd54b61e", + "value": "0x3c2961957ce7" + }, + { + "key": "0x2fefcdfd0b509ba446d28eab5497b270614acf9d5656718560b97e4af9e82bd", + "value": "0x451051ea152809e" + }, + { + "key": "0xf15fb1155914d267308b6b77c4b97002688532054721b6a4a0dd47172e6737", + "value": "0x22c91eb5c3ee57" + }, + { + "key": "0x29a3e7df0cd9bba3197792d179c706b9aab372e978b9293e8bd72c8ffbd3932", + "value": "0x322ad8747d" + }, + { + "key": "0x592049c177313d91a4b90cb676bcf2f502c2b7a65f67888e5bb2a76d6eec539", + "value": "0x502a23ec01e8" + }, + { + "key": "0x4de5ebee4511d9733990cceec71fc7d09e71bbd67107e65347dc95c523317fb", + "value": "0x3c2961957ce7" + }, + { + "key": "0x274183d70af7771f2ea5e789177bee9cd2f107b1e5cb59ddbf5f540eda2516f", + "value": "0x646fd7b57d7a9" + }, + { + "key": "0x5fad7613fd327fc13290b4c80dcb56b41035cff52310cc2f9e1d7de286fcff1", + "value": "0x2693c34773a18426e" + }, + { + "key": "0x12552619c2c46807cb1053236cb8cba4d21e52518ff919ef17630f78c8ead3d", + "value": "0xa7b26af8830afb" + }, + { + "key": "0x594bd28fa8e1bfe87ca12f008ee041261f2c0895c54f6712708a4862397ba8", + "value": "0xa23209867a942367" + }, + { + "key": "0x6e27b7b5c081e03cfac0ffa27099ae4d4eec7823fc488ba3563b80004c5f05c", + "value": "0x1ef705998fef85" + }, + { + "key": "0x32e783e8a1618920913546aad5cfb12beef69bc4070aeb0068f2703ef21c20a", + "value": "0x1eed453d82a9b" + }, + { + "key": "0x36e008accf5696f1002cffa271fde440d7e4d73861756cea55e9476f071c46d", + "value": "0x14974e273e5921a22" + }, + { + "key": "0x55a33869e536ca83789615a450fa2360925d05676d9803ad1f7a802e2eae53", + "value": "0x160502194efdc26ae" + }, + { + "key": "0x7ae31225b57523ed60179ae16c5d9ee940fd32db17f1de7132e8722b9272b8e", + "value": "0x42e24486d7" + }, + { + "key": "0x20bad6355f180f894a0590f6ca9755722112d41db80a33311e59be420dfb337", + "value": "0x125f27fa82c2b1" + }, + { + "key": "0x21750bcb6dc45c1df5e5770278bac53577fbca1ba43fcfa626eea966ebff3c8", + "value": "0x23c16741ab5391a" + }, + { + "key": "0x3cdd2f31b998e0ecaa03875e6cad0e18e75a2e3728183fd6eb6b5b56ab381a1", + "value": "0x1b451ea16a6dfd2" + }, + { + "key": "0x6aeab01dd52882d2e3aa1f8ea4c550b0b16162aa64652652eede1653824335c", + "value": "0x786725a69f12c1d" + }, + { + "key": "0x551664a93d07a03bcc88099b133dbe82277c85e040f16ad98d3010b5d7d8569", + "value": "0xc78d520620ad1a3" + }, + { + "key": "0x6c34c6493fae44c78d849f80ba41d858851e514eb834ba3c28af1790ce4a8c6", + "value": "0x51c86457c5556" + }, + { + "key": "0x7ba41a804027133d1fdf7179aeed38e65be3fb2b846dea235a76a426550495f", + "value": "0x11cdacbce52" + }, + { + "key": "0x11ce06864bdc7b40fade02045bffb58c0dc4ac51776419643b2a1169b582185", + "value": "0x7267827984879b" + }, + { + "key": "0x7813e74c34277524cedf3a8ad754af710347ccd2d15d5399aedd007238ff456", + "value": "0x1240966e72f1e3" + }, + { + "key": "0x110d72e967a25e84433e44d5dc11f3ac9ebc2b1cdc33190a97d01ce2e3798cc", + "value": "0xcc33307e1c8a7" + }, + { + "key": "0x5b34e65bb5823b7776c64cde369904c293839f4369cf4d8e9af6e87f989cab6", + "value": "0x40c868a70339cb1" + }, + { + "key": "0x22a3cb789d28020529229a4c76bf385dfe845857cd99dc92dd51e5e98f0c4c1", + "value": "0x1526236085af4a49" + }, + { + "key": "0x42fe85d29d7e7b08fef73c8a55b84f002a83b7a8ecb0ce3c2ae702b23f3f8c1", + "value": "0x42e1f386bd" + }, + { + "key": "0x669dad978f692eebc96d7387e809adf37d347e208a58c2bf8f792992fa58865", + "value": "0x2840fce8c9474d" + }, + { + "key": "0x927da05b505fe9fad34a02c2cfdb5e017c446e3199d0b746ec298873e78747", + "value": "0x9be13b9ffcb13f" + }, + { + "key": "0x57bd0e6b6c47f97a761d99f06ddd32264ca70953bcf239cd297df2dd97d6b94", + "value": "0x3405b24383" + }, + { + "key": "0x11f7a2e32920419e4555d418d9de3775abe527d8857f62f993dcc729755646d", + "value": "0x1862672fcc9e1a2" + }, + { + "key": "0x58fed951f81b654dfd752330f22a98217a34702811d47bc27a0dbb0e539dd71", + "value": "0x34059a8294" + }, + { + "key": "0x1db2cc2c39e3055d0bf52a86217b8cc6c3e7da9a194b94a6acd5726faa35dd8", + "value": "0x2b914dee0d" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0xc02009d6b4b5e1011" + }, + { + "key": "0x4aa2885ee95e2eaf83fcdaa59539ef9301372e916bc2419274d92a453c2b422", + "value": "0x983caed3667b68479" + }, + { + "key": "0x6179c9c833493a6f1933e08155d18342c6d438dbcc2ec72fa44a2a1bee20f59", + "value": "0x18f47b0489407" + }, + { + "key": "0x116f2db4078e99926a153e074b275c1d4054b90f096abcb58896a676eb79a9d", + "value": "0x42e2b9244e" + }, + { + "key": "0x59ba7c5c06218f73e6f08ef77e42671bbd9bfafd4f103b3a1dfa0336d9f3c8e", + "value": "0x2f674481be" + }, + { + "key": "0x7d23d5b098017280cb5ce87ca80eea07acebc9825e01cb3ebd56cbe96ffa04e", + "value": "0x8630a8455aa7c" + }, + { + "key": "0x654c989f4303d4a16e3b7fcddc6c6e4444952d847ce17d260457824e41799ea", + "value": "0x322ad8747d" + }, + { + "key": "0x6180806f23c68be50a0927a6e9c4977256d4211877595d2490b57e01b6fa44e", + "value": "0x45a70a8b38d301" + }, + { + "key": "0x3b1739caf1a8ccb3b0eba83e5f1ad5a55cdd628dd00793af4d3e025211643a2", + "value": "0xfffffffffffffffff1c94f86c50af33c" + }, + { + "key": "0x5c46f76a0ee89c20b63b275a778346e263545235cdf81990d7094665579cb7", + "value": "0x27a9266697270c" + }, + { + "key": "0x6724be6ef72b2c4eab0b97d4a075842be2b5d4d529457007a5e0991e549b385", + "value": "0x502a23ec01e8" + }, + { + "key": "0x71f0fa97f475f68f926ce38f140d3a810f3bf0bcbe768fdd93a6768a715c59f", + "value": "0x3c2961957ce7" + }, + { + "key": "0x54f1c6b4da4f3ef4f15f89e0f859ae3d9268dfe9e9869932d42d0ea15c47ed1", + "value": "0x11cd9f1c9ec" + }, + { + "key": "0x3be3638061cce494756c0b981b7ad58d466a80ab495730438dbde44d1b5d1fd", + "value": "0x42e2072448" + }, + { + "key": "0x392421c5928ab8b39a0d4e4eed74ee88578973fd136d822d1d7c7f60a185ea2", + "value": "0x14b35ecce9e1e" + }, + { + "key": "0x613d197003eaeaec95cda022ece67293267e42a6ab0d14b510a147b500cb6b8", + "value": "0x691c0a2d40dd713c9" + }, + { + "key": "0x30e5f5e542ccd7be8fc73a8e65ef93de707f9fcfd4e6b720deb4f68cf1cb350", + "value": "0x42e237eb4a" + }, + { + "key": "0x497d33c5bc20cc2545aa41b6858be1067547dbc1aa43dd6fc634597c8ffeef3", + "value": "0x37307e92083b42a1f" + }, + { + "key": "0x13bdd1e8044eb291acc90d8214ef09cd4b84920d5f3fa3784922670453fec36", + "value": "0x2f67305c12" + }, + { + "key": "0x6428e146212b70b5b3aa7be58079dcf35366c385342692a71bd25a4fda973a9", + "value": "0xa71961299a232" + }, + { + "key": "0x8338ce786c8be4fd8732c2f7898b9177711a3c0b5736d34a9c5380a111592b", + "value": "0x14ac272ded8c6d3" + }, + { + "key": "0x721b3c55fea27361afe46e88161c57cda6502c695e760564f7017a81ab2e0f4", + "value": "0x9b3e033d029252" + }, + { + "key": "0x2b3d9580902e81f600158fc046516dda93fb29393dc01b73971d271b4dd3acf", + "value": "0x322ad8747d" + }, + { + "key": "0x71a068f04ed709ddd5e5dcf5fa0bcffc6a94b7accaa15504f2db8ab28962b79", + "value": "0x34060d720b" + }, + { + "key": "0x4bcf31d6569a3198a0e3d83bc68f786311267bcafc40e29a103ff5f89c1a72a", + "value": "0x4ba07c02544c7" + }, + { + "key": "0x2c94cfb91ff34afd2de8ed8996f424dc6e74e212aaa76dc58745464b1cf0be1", + "value": "0x8d66d9f010" + }, + { + "key": "0xc466fe1adaf62a7bea01d07d35b0ad81cc8ce2fe00f8e0201c24bbc34266fb", + "value": "0x20ac19e4634af9" + }, + { + "key": "0x6fd7e93d009f1501741ae3106190c636e4e15283f16727fa0ce1fe3185a7e26", + "value": "0x628e5aecb4c40117" + }, + { + "key": "0xb5311b97477466dcdc360c8c4fe96e478c684872f76c6a818b5768004a4947", + "value": "0x736a6c1f18236f589" + }, + { + "key": "0x16946970e312d52fedff2f24c64808fbfa2eca4409a2f687f5a489e598b523f", + "value": "0x6b17fd6422fc03" + }, + { + "key": "0x1c0d06bd7060fec0ae69b82cb9dbed198512b21e28f74090aed0092ad8497f1", + "value": "0xb711ff6c077f60f73" + }, + { + "key": "0x3e460e11ca82366678b8829ef462e1aa2a0682c03fa053b20ab85187a624a32", + "value": "0x322ad8747d" + }, + { + "key": "0x3b51729a1fecd048b7f5cef08907ea6ac764106add60ec27d6ce9ed6a452317", + "value": "0x1080777143de6abd" + }, + { + "key": "0x1d16ffb7e8572197dfde11a3bbed16881c1d4fa31776e21fb729852c16c7b02", + "value": "0x2ce0e6fac0" + }, + { + "key": "0x44deeb45f69cc5b0823bb32568f5264d552ec755d06c483cfecbc3fe289d2f7", + "value": "0x212b3bf0c2f66c" + }, + { + "key": "0x6b7c8b2701b0856bf5c119b3653ec2b0f9afb41527e89975ba004898033a1ad", + "value": "0x3e05dca583" + }, + { + "key": "0x5be9e82f929799601dbba1658dc1f532eb766f99b41407423c6d5b7dba36d50", + "value": "0xe611c75d2d457ba" + }, + { + "key": "0x640de47f7c45c997e54eb2ea0d1c059031a1a258ce132fe0d71f6d3f67d9b08", + "value": "0x1dd7fe3fe7b839" + }, + { + "key": "0xc48c571635d0666d476b2531c6d366e8ab8a5f6616160ddb9e877eac9b7db4", + "value": "0x24892bbd010cfe" + }, + { + "key": "0x2b171fc7fcf45fa0d37a67bc9b2ac04a460b61188a4ceb6af12996b4dc38ff3", + "value": "0x25b29d212ba61d" + }, + { + "key": "0x73a40dec185e3316e41a48e4fe96107b383a9445f80f031dc61554f9e1983e4", + "value": "0x4b6e3a5108f800" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0xfd4111dadf69293ca4" + }, + { + "key": "0x547f8114927592559689f3723f98f995af7f74cbda36db122195f71cf3c2692", + "value": "0x6b7af9943fbc16ba8" + }, + { + "key": "0x28305ba0d696000c0c7180cd3999ad9cbba72de69e3d687a9d5d784643e1079", + "value": "0x1d8d161845bd46" + }, + { + "key": "0x81671ed62033126c2f559dff0bca3423419e96db4a5724299e62dbae32ebf1", + "value": "0x502a23ec01e8" + }, + { + "key": "0x54cb56c2861ecd907a98e8538b6dcb6dc3ad2ac32ab14ae6ad4e6bad51f4f48", + "value": "0x1e70d2642efd5f" + }, + { + "key": "0x715d89b92057c24314b4ecc8579b86562f21733e2932716c538d8ee622b0451", + "value": "0x2367f120f48f4f" + }, + { + "key": "0x21a3ba43012bf96cacae60c8c1b238beb0384b852ea340656a5270e70510500", + "value": "0x3ca953bf3e06d" + }, + { + "key": "0x6f77cb9de147bd59cedd3b23b3543decec1bf7fe6fe93bafd739f02b9a524ef", + "value": "0x42e2254980" + }, + { + "key": "0x7f2a31e6ef4dbdeaaef0262cd99b3a8d5b003c18cda5acbdce7eae3feabe558", + "value": "0x12078c8b7fc644" + }, + { + "key": "0x1715dfbd02aa6e22565da75edc82c0237d6b1800b27daebe66c859ca663358c", + "value": "0x27cc5c36ba65d33f842" + }, + { + "key": "0x3a7e5631fae82b8162e22ea1e0bc48e94f9a70424438e95e42b7d5f10e49f44", + "value": "0x34c4e269a6c4c" + }, + { + "key": "0x724209eb7b674ba445f2fbd4fa093381f004c0ea883b3caff2650ded2974ddf", + "value": "0x2f6696272e" + }, + { + "key": "0x5398ddf3537a1a7dc3e11fd1bfc6f996f4e6baa866d85cb7db453183f2d7311", + "value": "0x627667553f3c0" + }, + { + "key": "0x494405341ec4107b7f4c28593ab9e2ef7e3eef40a2e3b471c177473bd12f678", + "value": "0x2bade5750c39f3" + }, + { + "key": "0x1a2ace129ea0661004ded96d40ac07aced2c8daa4437fdd87357e9ba25ba94e", + "value": "0x11e74be6c84131e" + }, + { + "key": "0x7256df463582bc7b8d506ad47c8387ef9976b0f1ce953ad79f763b4ceaa04ee", + "value": "0x49acd6a128cec28f" + }, + { + "key": "0x5daf34d6238b7979132d25374fe70b8d072c588f1b69da3dc1ca1a854909b27", + "value": "0x2f669cfc01" + }, + { + "key": "0x18d7b079b471cfde70d671fc55b3c06d4363cdc22201c09924822902a33e019", + "value": "0x1f0a2ecc73a117f8" + }, + { + "key": "0x7e30b0db0ff744315846b5923c0abab99e6cb4e2408fdde5f2a7facff8ddf7d", + "value": "0x502a23ec01e8" + }, + { + "key": "0x44545cdf55d752e3d13ecdd7b5401909cb988fff6f6ad926e144d8d2badce89", + "value": "0x322ad8747d" + }, + { + "key": "0x42180273c05bb118eb9e244c9566e9d228a23c8d5affcb68e1543736236aa88", + "value": "0x6c245e0ffa6d1" + }, + { + "key": "0x3a4188802468122587101a0e7abd6ffdf8138004cd468ea1261660c3cb71696", + "value": "0x4fdd3173eb589" + }, + { + "key": "0x6570ca64fc067d3b877e150e4633a509540acca81fc58da0feeea7425712e86", + "value": "0xc38a96a070000" + }, + { + "key": "0x7e753a6082e1944397da3e95065fe88020664cc5d162411afeb6e6a85522119", + "value": "0x903cef55c44c195" + }, + { + "key": "0x3dd46ef52c8055788c0f3cbe187295481e80edcf17e338ec0c3251ebe447983", + "value": "0x8db85fe86abfe" + }, + { + "key": "0x30369438e3269f75ad626e4024e5f3a40f94b465307beba316ab40ea4111e82", + "value": "0x8d792077db574" + }, + { + "key": "0x90d1abb21173f3bb194e3400b7473778f3a5c40fc9ae068d7b8650f3aff6a6", + "value": "0x800ef7755b534" + }, + { + "key": "0x5c692f6ddd51fc6a7cecd1cf78e759a4e2fd5aa79bafd3addb50975101e0cb2", + "value": "0x29e02fb5fe2411" + }, + { + "key": "0x7f019a7b57e5890a3c7a12b73e5b06ab59bad64487260568bb37698767ed4c1", + "value": "0x3e05086b38" + }, + { + "key": "0x3252ac82fdb731f785266a5951b96a42ae7b2aebcd020b0f9356b229d78c5c7", + "value": "0xe41cf3f82722" + }, + { + "key": "0x665faa17b68121738e9667843afa3229200150351bf8b26934de311e1ff5b60", + "value": "0x659d245fb25c9" + }, + { + "key": "0x57491d700c9a849ca186eec4515b046d27809528fab3bc6d2cf42a93348a3de", + "value": "0x24c540821583b8" + }, + { + "key": "0x5f6cbcfa6e0dfae615b1015c2cfc857c2746d8c376c1fbbd0a95f9a197d18fa", + "value": "0x4b5616af99885d1f" + }, + { + "key": "0x1f7f66a68a699950c4cd9d112fbc91b1984309d851456ae415f731a9fa0682f", + "value": "0x3bd9faf62bdae" + }, + { + "key": "0x126aeab667c785c808b87c4ee0783eab5b8eaaadda28d7ddb4631d5d9816325", + "value": "0x42696f3862a1f3" + }, + { + "key": "0x306ccc7fe9bf6da6a04d9684bd458340ddaf80862576f7e60bdcc06b1dfe8ff", + "value": "0x111b6302ef4f2c" + }, + { + "key": "0x7df78c271d5d0bc4ff984c3a904fdaf9265e89d60cb9adf13f82c0360ff5dfa", + "value": "0x1cf012a9789df" + }, + { + "key": "0xb4f79ae2386ba6b950647baf7847cf4d58c4887a539ca0a88c444da152c06f", + "value": "0x0" + }, + { + "key": "0x54fc869ece7bbb07e416509406967b9bde412195e9e9b031cd2a948a521d70", + "value": "0x2ce0e6fac0" + }, + { + "key": "0x1758230bcfa42fab20e1d6477b57403c2a5af453216b8b04b7c2612a32f3b14", + "value": "0x365b44d9104000" + }, + { + "key": "0x6a5ce5a55cb1b7f284c1f4d5577d5da8974e5efe3c18eb1f7f4e4ea07713d27", + "value": "0xa72bcda07ae" + }, + { + "key": "0x456135f537f0ee7651b7aec50d5f0c3c3bb7b8210984edc4fb3ec08cc6d4461", + "value": "0x94c5465aa60" + }, + { + "key": "0x490ed6207c7a4c6db510d1bbfb07ff87aaf4b6be3ddc11a3b3fd0d2ceabd09a", + "value": "0x3405e90d74" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x52ac823c349d04b1" + }, + { + "key": "0x64e2e72091b3a4d24d6da0806de6ec7669ec2168f19f3d320380bdb7e6e9e1", + "value": "0x2ce0e6fac0" + }, + { + "key": "0x2cb3e4a30718e4427860b56e48880b5de8a010b122f10efba82b6fe3de49f0", + "value": "0x2576c3bbb1843d" + }, + { + "key": "0x4ab9fd1a4dc781e0dec4a0c2ba5972b5f5b178f7fb6b9ea8e44ffb9a030c406", + "value": "0x2b970814f60acf" + }, + { + "key": "0x4e305037edbab2de972400fc192778f6ce50c97f59de5f358e5a4c3a881204", + "value": "0x2af01eb5660e23" + }, + { + "key": "0x349a34c5c475caf45c468661f9678010e8f2ec58c5f75a9a17264dea974d73e", + "value": "0x502a23ec01e8" + }, + { + "key": "0x54c382c31dc07c33093a4ffb0c4c7333bb322e924ad91b09124a9362c18d5d6", + "value": "0x7d7de6f391e5c" + }, + { + "key": "0x7d749ded7935104a77b3f891e9181feabddf2bbe429235e114a3318b420c941", + "value": "0xc3372df1e6b8dd" + }, + { + "key": "0x43e2a627b69b10a0d0364802f42110af90a93bc8f8b3ce1e95d3420ba66a989", + "value": "0x81325588d755fb" + }, + { + "key": "0x59b14ca7cfd99e241e143423236af7cfe691fae1934defca4a5fcc1db4edc86", + "value": "0x15341c109806b" + }, + { + "key": "0x14d8b6d891eacdb8a754a6dd3aeaaa8d4271648e2dad5f0e48141a57b7d8923", + "value": "0x7022b138ea5e4b" + }, + { + "key": "0x6540782e652cfb3125ca8ae71ebd8bb4ebdbeac5ffdc272e0d01de9e6f0d423", + "value": "0x1681e620ba6f71" + }, + { + "key": "0x29e94dbb80358de97735fc838c1ac4ade4b7f4a3d4ee62526e0b8a167fb50cc", + "value": "0x11cdabcb6b5" + }, + { + "key": "0x5496768776e3db30053404f18067d81a6e06f5a2b0de326e21298fd9d569a9a", + "value": "0x6ba675c28683ecad" + }, + { + "key": "0x2dac932658cabc9c7a2a87d5140911c31313b4602e2af03ba8beb1f99965022", + "value": "0x3e0519fce5" + }, + { + "key": "0x4a5eb8ed5efc66d3789fb2a3378ae6cd0d2e66283283fa292f036ade9ce2f7a", + "value": "0x6806013f06000" + }, + { + "key": "0x5e0af186b2fbe848b1f63f21d51867885554ce0a430f0960d7eef65a0ccbb7b", + "value": "0x1223fdcba910ef" + }, + { + "key": "0x5ee166c501ab0eeae9695ef0569548a112c92f67e63175bc7c6267850df85a0", + "value": "0x1a7dc626868b20" + }, + { + "key": "0x1716740cace5c468d7624dd6f91515f2396edb5ba3434bc6ac4bcbc5edbdff", + "value": "0x322ad8747d" + }, + { + "key": "0x74389c3f22666d81bbce4034ebde6bfbb1010b53f9adab3ccac6c68c73ad01e", + "value": "0xf446ef1be0a3b" + }, + { + "key": "0x53cab2fad9d1541ea3187d18a0d8d0ab1588f49371f4a2784ef1fa2e05f6900", + "value": "0xd95fb87e9d9f2" + }, + { + "key": "0x3f7743ffd51452f4f9df651e7c860654bfcb3daf5b58938903d666e9a3901f8", + "value": "0x3c2961957ce7" + }, + { + "key": "0x64369f8be8236fa88bd6b4eb80648b4861c633689336a86244588d621c20d3f", + "value": "0x5c6eb52cc1540" + }, + { + "key": "0x5357b1498ab294c55159117e3c43df0419099c4fb25c7e508bb520876c01270", + "value": "0x16636519303f" + }, + { + "key": "0x12d57cf072cefb25642ffc988869cf8be41758d6bad89a74fac74a361e591bc", + "value": "0x322ad8747d" + }, + { + "key": "0x5460e3ada357c552adbe9fdd830aabe59b7a3b43284240fb606458be8c6e09", + "value": "0x3aa321a9fc47907e" + }, + { + "key": "0x5ee78670918803f52dc6866592aabb690b4d4dea5d442d72ed216bbedbea02b", + "value": "0x86165e763afd7" + }, + { + "key": "0xd0860dee0c02a75aca0eee40116cc6d6b1ed279f6dc71d5d75398d75bc16a7", + "value": "0x316639baf83885" + }, + { + "key": "0x6cd31cac1b1449b1cfde9eb5e7e912fe30c8c866ad1a8b4883ea3efae48c18a", + "value": "0x5dbe343571ebb" + }, + { + "key": "0x27ada114743afc3c19c8a51d6a18bb4cf0178b7cfa1887fbf5f7a6ecd29a447", + "value": "0xe843dad91ecac13" + }, + { + "key": "0x1437dfe96cf055d7694efe95994e114586332257ca3a57cc4cd59e9a8022893", + "value": "0x24749353a8b0b1" + }, + { + "key": "0x7d5f37ab2f2d1533cdb31458b7dc5e452244606a63e6d0cc89b96da20b6ce58", + "value": "0x14443533241c397b" + }, + { + "key": "0x61b60a403ea6fd7d3da96bd12f3a4b85cb987223d0bcddd5605451effc21a58", + "value": "0x42e1f60e5e" + }, + { + "key": "0x4beafcad942d1940be48b595548a57e6dbcd34f5134c145051d645f5090a0e7", + "value": "0x3405bc8ebb" + }, + { + "key": "0x6ae22197505849ce6e65a2e32af08f774e824e03472d246152cb989916c2716", + "value": "0x1420e42dd3100" + } + ] + }, + { + "address": "0x4c134c21fdfc60652af960da9fe7a23842207937aa4bda0554092e252fed408", + "storage_entries": [] + }, + { + "address": "0x5e03162008d76cf645fe53c6c13a7a5fce745e8991c6ffe94400d60e44c210a", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0xbd6976087a" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x691c0a2d40dd713c9" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x112e721b4487886bd4da5" + }, + { + "key": "0x29ca83ef4613508a5bf4e573e6233bbfadf5367086ae2d58a635f67c5c2e3d7", + "value": "0x392ecfb113d3bc2160" + } + ] + }, + { + "address": "0x738bb7548e121e441d276fa647d9851b9e715345e7c4a733e78bfa54ec47658", + "storage_entries": [] + }, + { + "address": "0x32ebb8e68553620b97b308684babf606d9556d5c0a652450c32e85f40d000d", + "storage_entries": [ + { + "key": "0x3cdef5d80c6ad04af135e445867114b5ce32ed8dc8de667995f3d27760e3520", + "value": "0x49acd6a128cec28f" + }, + { + "key": "0x24dc99466e4418b4fccd818c369e805aa4b2c2e28731ca51ec24311cfb85a69", + "value": "0xceef04ad13d21f33c06a7bdff" + }, + { + "key": "0x5a51b619c532955260421091dcbe3f190943bc9d369b2e54d9b64a88abe586c", + "value": "0xc3104e9bc400a349" + }, + { + "key": "0x7e9e4880fa5ce115639bff314fd1b8be1eb10e14642db65d771ddfaabcd4fbe", + "value": "0x0" + }, + { + "key": "0x757f2d9db3dcb21ebe598e6d1a17f5e598b52f0d3ae619be6fe76bf09e18dc5", + "value": "0x0" + }, + { + "key": "0x4beafcad942d1940be48b595548a57e6dbcd34f5134c145051d645f5090a0e7", + "value": "0x0" + }, + { + "key": "0x4e9417c05bcf183e111558ce4666b053bbfe9736b74fba16b017ab7ae075f1", + "value": "0x401cc6ed28c2d349238" + }, + { + "key": "0x511882b2b232ac557c64e7282dd5dcc1f8ea6f5d0497f6ea0de42d423ac3413", + "value": "0x0" + }, + { + "key": "0x2e3f9cadd00a7b869d6b98db5d32847ff18a5561c3f3f7a944380864c8f247b", + "value": "0x66192543" + }, + { + "key": "0x3e65716c9b9f010d10085941d0c6e6dfb190695b7cf09a71f0aca74ab94cdf", + "value": "0x1b2a315d72b73d3cd877a0b" + }, + { + "key": "0x659bf0f1a9d7044669bc5749ebb440c143dc0ae0c50af68558582902087f60b", + "value": "0x283e72279500c9" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x112e9025baf25b1295" + }, + { + "key": "0x59fabd3002531e0da891c7abf701cf29fcc554216f154fb8fc747001edc06c8", + "value": "0xc3104e9bc400a349" + }, + { + "key": "0x1be7a8e368b6fbb000ebba13c5bd32fab6d53567bbb74b550d01bb80ffd79e5", + "value": "0x283e72279500c9" + } + ] + }, + { + "address": "0x2beb9e2418c5ecc2a2b75a69e5912f8369166282a05eb156a7f72f97139252c", + "storage_entries": [] + }, + { + "address": "0x638d55f89c2c13bbece7a24a37316916858caac0705211e4eaefe01a17a7775", + "storage_entries": [] + }, + { + "address": "0x614051997d914b7d5390fbfbf74c74ccad165087b5dbd1f785741040500325d", + "storage_entries": [] + }, + { + "address": "0x1e2ce2d0d1bbf66bfd0d9b2304cffd0e2fd4b2f7fe8261c6e239b70bc9da5d", + "storage_entries": [] + }, + { + "address": "0x503f40292c41ab9fb3eb577bfa86121d9beeaf3c0f5d396caf9db2f61039184", + "storage_entries": [] + }, + { + "address": "0x5c78a673c83b0143a5b10957de11275d205f117d9116fbf372e4d97e747f621", + "storage_entries": [] + }, + { + "address": "0x691fa7f66d63dc8c89ff4e77732fff5133f282e7dbd41813273692cc595516", + "storage_entries": [ + { + "key": "0x468954ebf7facf3b3680083ddf3bd6a5495717bc8ab2509776334f8dca5dd7e", + "value": "0x21d0398c66a526563" + }, + { + "key": "0x3cdef5d80c6ad04af135e445867114b5ce32ed8dc8de667995f3d27760e3520", + "value": "0x475e561a2" + }, + { + "key": "0x24dc99466e4418b4fccd818c369e805aa4b2c2e28731ca51ec24311cfb85a69", + "value": "0x1ffacc625144a2b29dec508" + }, + { + "key": "0x2e3f9cadd00a7b869d6b98db5d32847ff18a5561c3f3f7a944380864c8f247b", + "value": "0x66192543" + }, + { + "key": "0x7f777adea67cda7f649161148fbc875f59821a0eab8bb64c0fcb9e891cfa0a4", + "value": "0x21d0398c66a526563" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x855fa696" + }, + { + "key": "0x4052be1ec7cc0d4888350e550ad56c1d5554bd2655e877c4da0f47495a2635", + "value": "0x83425094dff7efa2ccfd2135" + }, + { + "key": "0x4e9417c05bcf183e111558ce4666b053bbfe9736b74fba16b017ab7ae075f1", + "value": "0x4b5616af99885d1f" + }, + { + "key": "0x77aab2cc4ded10753b0cf2ccd9767680178832242ae229223afd5d853c3d28e", + "value": "0x0" + }, + { + "key": "0x3e65716c9b9f010d10085941d0c6e6dfb190695b7cf09a71f0aca74ab94cdf", + "value": "0x107308989f26ad0e" + } + ] + }, + { + "address": "0x1f605b90185d59aa94543e053091da065c3cacf8a19666ddfdaaa39c01d2aff", + "storage_entries": [] + }, + { + "address": "0x213c67ed78bc280887234fe5ed5e77272465317978ae86c25a71531d9332a2d", + "storage_entries": [] + }, + { + "address": "0x552170ec587129b30822808424219a3a234dafc37d68c1a1afabc8ff67766ca", + "storage_entries": [ + { + "key": "0xa6fbe1f62b9abc29c22b81fa07a21b0fbef84cb4e3083d72a39f9a616e6f1c", + "value": "0x2977c7a22b4934e" + } + ] + }, + { + "address": "0x6cd3895d9a5e50aa2a0779a95a4e46c33a79dfd129ce3f8ee8c5bfd81fce24e", + "storage_entries": [] + }, + { + "address": "0x66fb3b0730fadfc332fff12131cc567345aa1b94e2b1a99b03af868e94c923f", + "storage_entries": [] + }, + { + "address": "0x2583aa1f2b0904df9be0983f2e46726c0864101930d482d875564d24fc014d9", + "storage_entries": [] + }, + { + "address": "0xc6c90f37d0faabd6ed5b2b399a58aa5637200aaaefd10bc924b8d2b23ec41e", + "storage_entries": [] + }, + { + "address": "0x297a42a1c1d32fdeeb4b0bc6fcb7fba16b6a5422fbd8bdaf443b9d405eb0f01", + "storage_entries": [ + { + "key": "0x38036e4af1d77f33f0c5cd33a3353e2a5b2265dd26031df7d7c79297f908457", + "value": "0x20e05c91cae4e3013ef410330df66be3ab8820845635b4e5ad4aee54b78781b" + } + ] + }, + { + "address": "0x1b5bd713e72fdc5d63ffd83762f81297f6175a5e0a4771cdadbc1dd5fe72cb1", + "storage_entries": [ + { + "key": "0x6fe2640df704c656c8e6e497cc86b58c38f8640d25e5693b5dc1d16eaddde2c", + "value": "0x0" + }, + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0x133bc6c7b591fdd6fa0" + }, + { + "key": "0x60dc51ac647428c3a6dc5fdef3a473ec8a6c3329bd10f451a56384a46468421", + "value": "0x0" + }, + { + "key": "0x61f632bc491d34d5bab2c226722f85c136aa364cb912e163b197367dcabcbb8", + "value": "0x84b5d50893aa81" + }, + { + "key": "0x48be3692ab3e9e8bd4a134a7b958b4e69bcb00a71d4f58c22f9311921f12bcf", + "value": "0x185a533fc50147e5" + }, + { + "key": "0x66567ee399f2ed89cabfc1a84d818c9e9d0f2ff8387cb169dfed4df2181e352", + "value": "0x2b0e576ff7c09b" + }, + { + "key": "0x6fd5a6f8a6af3c02ec7273f00425ad7140c77bf4d493b053b2ce82d165d47e0", + "value": "0xc7f94cb5b7d458" + } + ] + }, + { + "address": "0x6cffe11b90f64c67d2993573f5eac222219a7615548031f7eefccbb10c23a56", + "storage_entries": [] + }, + { + "address": "0x6793d9e6ed7182978454c79270e5b14d2655204ba6565ce9b0aa8a3c3121025", + "storage_entries": [ + { + "key": "0x441705886c32d7464731102ea73cdacf71354732ef7608e2ad34ec1094a2e62", + "value": "0x1" + }, + { + "key": "0x78c90ecdf7f79e6a215ee19c375002bc1eb62c8e7b369dcf467736797cbf9e6", + "value": "0x1" + } + ] + }, + { + "address": "0x45e7131d776dddc137e30bdd490b431c7144677e97bf9369f629ed8d3fb7dd6", + "storage_entries": [ + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x2487391360" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x2693c34773a18426e" + }, + { + "key": "0x3f5753913a85fdf0e9ebfc1be06a5110a196b5d3a06020cb4f6d186c849c87e", + "value": "0x0" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66192543" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x5268dec29cd2ea" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x6bdfc40eb99a1" + } + ] + }, + { + "address": "0x4ad445ffb6294d1394b3f6a5610642d37c702eaaa47346b680c6af2f102192e", + "storage_entries": [ + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20d", + "value": "0x84bba826dca33417baa6bb759072d85d" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20e", + "value": "0x1c086" + }, + { + "key": "0x332df419aa058c3f4b36acbf5af4b7e8e3d4dd58918d5f0ab2841741e7b55c2", + "value": "0x66192543" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0xd1efc4a8b01e350d3ed" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x1bc2f891200f681d7" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c5", + "value": "0xa485182135912e666641f829a5ef979" + } + ] + }, + { + "address": "0x4619e9ce4109590219c5263787050726be63382148538f3f936c22aa87d2fc2", + "storage_entries": [ + { + "key": "0x356c7b27b831a0462c6754a40f256fa7bcdde439e01ac2e54a2974aa09f27e", + "value": "0x0" + }, + { + "key": "0x74389c3f22666d81bbce4034ebde6bfbb1010b53f9adab3ccac6c68c73ad01e", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x69a919936727380ec9e98" + }, + { + "key": "0x11ee0322a5bca3b26dba42cedc21ebbce6b798981cffc20c5d7cd8fb4641fec", + "value": "0x1525dd" + }, + { + "key": "0x1dd9d833a4d792ee3c39425ba424e7a03cb6c27a91421d7a336d27c02c95a0b", + "value": "0x0" + }, + { + "key": "0x3c61642f9789768773d4805df5ac9999ca7fcee76e19be256106e35ebc65435", + "value": "0x1525dd" + }, + { + "key": "0x7c6d844c097ac08e155d40d383b174c05ce53b193d74caf6e557deadfa76bad", + "value": "0x16da04786264fecd61" + }, + { + "key": "0x51adc9cd83ac945c2a22217d3b8e54fbf204c63af09a9e7a3aec49f0f3ccd8c", + "value": "0x13e6155aa2b8acac7a0f3" + }, + { + "key": "0x264a23157aa8b4e0e8a6aa4d95397ff45a904cb7c24c746981e9931e74de23f", + "value": "0x16345785d89fc71" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x4c1374279fc6a1114a8fd" + }, + { + "key": "0x21e1f7868a42adf8781cf7d3a76817ceaaafda5d56b7e7d8f26bc4f27ecdbe2", + "value": "0x69a919936727381370c09" + }, + { + "key": "0x4242ba209ca739af55c190cbb05416a49ab6f2dc329c36253b9abfb7a8416b2", + "value": "0x0" + } + ] + }, + { + "address": "0x79640950b1f1d78532a123e0bc92a7121158f06ce7e54968af68f6022b851f5", + "storage_entries": [] + }, + { + "address": "0xc318445d5a5096e2ad086452d5c97f65a9d28cafe343345e0fa70da0841295", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0xe117589ad0" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x113270349e5" + } + ] + }, + { + "address": "0x6d8fa671ef84f791b7f601fa79fea8f6ceb70b5fa84189e3159d532162efc21", + "storage_entries": [ + { + "key": "0x751f84c5bfd4de8987f628401392b36195df4136fd8b29c34fb5aa5d1e50744", + "value": "0x20e83a6532da264d3" + }, + { + "key": "0x5627d19c0388b3a44387e4636640b0aa121c5229a0d5301f455d6e9d4a64ab2", + "value": "0x23bae700741d778adb" + }, + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0xc5cf07c357f216f1ce606" + }, + { + "key": "0x48be3692ab3e9e8bd4a134a7b958b4e69bcb00a71d4f58c22f9311921f12bcf", + "value": "0x1fa03d2544961a2537" + }, + { + "key": "0x29e6d5320aef70d01b4fb70a36ca67a70b5f1eb9c71729a0db67c6d4a047058", + "value": "0x0" + } + ] + }, + { + "address": "0x137dfca7d96cdd526d13a63176454f35c691f55837497448fad352643cfe4d4", + "storage_entries": [ + { + "key": "0x5be9e82f929799601dbba1658dc1f532eb766f99b41407423c6d5b7dba36d50", + "value": "0x0" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x10ac5a0803b69a0a54b14a2140" + }, + { + "key": "0x311925f934b3f2da8a46597019d7f2bf3d84cc3cbc7b2d3eea719ca5c63d013", + "value": "0xaa96e6f18b82a6b8b60c036d0" + }, + { + "key": "0x4ddff7748a34353c94249513b00447d55dc252c42670d9b2fc89f5f87508f47", + "value": "0x1359db071c2d25e6c5b4fd617" + } + ] + }, + { + "address": "0x1f64d341ad1abbb5353e740c3a5c823e31accfdef8b03c8ef51cce6f013c516", + "storage_entries": [] + }, + { + "address": "0x432fd1e88f6ca05bf08c6ee4c74af01e16229f31ba07e4a094d31679695a782", + "storage_entries": [] + }, + { + "address": "0x3470cb28bcde35294cf577395f4caf714997f379d3ef2b1fd1a2037b665173a", + "storage_entries": [] + }, + { + "address": "0x63604ce39d26a6d5db59923b299c99c8fda526c521c52904611422749df572b", + "storage_entries": [] + }, + { + "address": "0x19a5676c6a55494fe983d3601e2478e7f4f67aa1bede91bc4a990732c6c87d7", + "storage_entries": [] + }, + { + "address": "0x1c381df6357df3693eff7a541a676a100375859ee1cfaf23e12586ad09dbd04", + "storage_entries": [ + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0284", + "value": "0x1e47cfc1f264d5e6" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0281", + "value": "0x66192543" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027f", + "value": "0x127df6a7c3" + }, + { + "key": "0xfc7fce0137ef0fdf47d2297ba791a15d3f3f1801dc7ef0b2aa311ad5d4034c", + "value": "0x109823d8ab36c9146ed" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027d", + "value": "0x93accf6e2b8761a8635" + } + ] + }, + { + "address": "0x1114c7103e12c2b2ecbd3a2472ba9c48ddcbf702b1c242dd570057e26212111", + "storage_entries": [ + { + "key": "0x262ad65326a75bdadb5f2c9c95948ab56dba78af15e4ae5d7c5e93cd4b235e9", + "value": "0x80a70573463aaebd607f00dcea735bc35b4" + }, + { + "key": "0x28e6176997c4f008eb67ec382d12f664527259b1cf28105b9125b003d7e1987", + "value": "0x60000000000000000024ab30eb5dc9300000000000000000000a82391f43eeb" + }, + { + "key": "0x8cc85a7d9675e0f41335d955975e50b11c3688872c516c3e65a82abfeaf951", + "value": "0x2a7a9cea96ae8e3b006a92d9605" + }, + { + "key": "0x3042bf072220e4a995b8e234129fdeea33ab490dbf6c03c10404398e81905e2", + "value": "0x617ce3e507f5848" + }, + { + "key": "0x7bd4c1486abf5368c6b370bc3d57c82356067bf8cce0d4233eced43ebfbda4f", + "value": "0x19c73b280a9d8014" + }, + { + "key": "0xee5a000eed710258ca296f75a6c9e87542d896937f999ca67bc0cedd7e89da", + "value": "0x600000000000000000005c58095af350000000000000000000005c58095af35" + }, + { + "key": "0x418d324a8987f42567a067bb58c1cabc5e0853c17053f6629042c0611984aa4", + "value": "0x1525cbc692c1fc90fe8c0a2248" + }, + { + "key": "0x164750c7fb35ab6526e82195e7d12faeb25e7922b80b6c7c69e83deb99e95a1", + "value": "0xc60773d351e4" + }, + { + "key": "0x8cc85a7d9675e0f41335d955975e50b11c3688872c516c3e65a82abfeaf950", + "value": "0x296cf028184737b3eae97fbfb9690d5cee" + }, + { + "key": "0x99422302bdb6b5e36748f5a5f45893dc91c11ac6c995e720aec011a270b324", + "value": "0x60000000000155c239dca50a9d9903d0000000000001092c1477a7a495e2873" + }, + { + "key": "0x69cdbeadec3967460124841835ba7968fd9588a5d3175d7679952d2ab6c64bf", + "value": "0x1e4068355ce6e5000000000000000000000000000020fd" + }, + { + "key": "0x2434ec9e252db6da1bc58a90c2bcef29de3ce0c41c7d806050e37043cb4eef2", + "value": "0xabff2755faf870b2fb24f25d0df81b8" + }, + { + "key": "0x6f1515e7362321b8bb2240102684e891fed34e18190c3b2c8afada0c604b78f", + "value": "0xcc1777f1fe76b9f3894b0b6430da64b6" + }, + { + "key": "0x4caec542b6185c17772a565ab25cb39ef519759a8ed4486d40baa19807096b", + "value": "0x400000000000000000005c58095af350000000000000000000005c58095af35" + }, + { + "key": "0x672cbff31c4d2e050756f7878bb24a3b5a927dff1e9495024fd291dac5a50af", + "value": "0x8fc9d8753ab374749bacf373fc2" + }, + { + "key": "0x164750c7fb35ab6526e82195e7d12faeb25e7922b80b6c7c69e83deb99e95a4", + "value": "0x94b3e960465620000000000000000000000000089ad4b" + }, + { + "key": "0x2d5f56bb4b5fd733f97be6ed1b2cbebf425e3a9ffb625d09a030d9defe88b18", + "value": "0x4b4c3d56f73738ae9438c50ddc336f34e" + }, + { + "key": "0x24e5cea43335dc9f35ac6222398633cc5ea509e7409f3705a7536cbf6702c8b", + "value": "0x9baf95220686a0afdfa69d5c5dea3837028" + }, + { + "key": "0x2a8d91853ffa04f8660bb93c8005a459f553d13d8241f4e6cf3a8615ddb0d93", + "value": "0x6e7a93804a406cdd95" + }, + { + "key": "0x69cdbeadec3967460124841835ba7968fd9588a5d3175d7679952d2ab6c64be", + "value": "0x3ac2ac32359629dadce18f4e" + }, + { + "key": "0x30d0804ae8f48c8112f44966cbff55b6d5cb369450e48b5532419b77a1ccce7", + "value": "0x1fd336d1135f87680bdc6a01f92fe" + }, + { + "key": "0x34284c3ad12603dab158b59c943dfcced4ca119ef363bd785cad7d47f75279a", + "value": "0xd89e60000000000000000fffa7f6c9b2ae694c7fe6dae" + }, + { + "key": "0x743d9ab5d4473d8bff4ef79cf5abc406423ab0ecb09d2e90c8dcb7ab2e7117d", + "value": "0x8eb38ae0c04bb8a643dbbadfac923ac12c2" + }, + { + "key": "0x184486d8990768c5f27b81eb8fbc0287dfe6701f6335c67c896f26d6082f335", + "value": "0x40000000000022e49e8e683121ee9e5000000000000022e49e8e683121ee9e5" + }, + { + "key": "0x6643023024aadafbe9f0c16bc9c73c8b854ac70b389ad369aaeb36fbc7242c9", + "value": "0xc49ca000000000000000004410cc1ff5191ac51451a8a" + }, + { + "key": "0x6375ddad2e4503d3a4a90dfd9681841fc20de9e56376e13b0964f9a6f779ef7", + "value": "0xffffffffffffffffffffffffffffff3c2fd0fa516055618cbef567475ad97f" + }, + { + "key": "0x41686b579e78faec607cc99f80bcbed8127a85020a61ebc45159406b3697af3", + "value": "0x118268000000000006d28f8ae9712f64c243fb0a2832ab" + }, + { + "key": "0x31a2013af03f21f528c9f2779d93de32af1586a6f5963e3b832cdb1e2a6872f", + "value": "0x1ce5dc1d9493097c4ddc3e457fd469edae" + }, + { + "key": "0x52a714c7747ac1c22c598ff65c7aa097bb255c3fddb824f29e9b4fcedc30579", + "value": "0xd085dbee1a87b" + }, + { + "key": "0xa7d435f413435a2b87c9fa963993e5c327e0a5f89c60cd22a10605d16a7d3b", + "value": "0x119d475a53b2de8" + }, + { + "key": "0x155a542195c960536e8332be132b99886b87164639515f0c1d29a6cde335473", + "value": "0x510b3e52e472800000000000000000000005e2a16fe2b" + }, + { + "key": "0x2f8219cf4a4287536707efb11917d68f111713153b96e78233b8a7d3b834ec6", + "value": "0xeddbae2eb8993a988f02c9f6ed6264f" + }, + { + "key": "0x4e7fa96de2519272d6ded3565591b4b53efbcd88e9689d6b993570ec95e98f1", + "value": "0x969eb0000000000000000000016a30f9b817a92c07ef6" + }, + { + "key": "0x581b12e70dcc78d30bb5154f98ddb87eb78b4e40621e0c6b796123a2c5cfc02", + "value": "0xffff0000000000000041a6b3b63a0e846552" + }, + { + "key": "0x447b37f7da08cd380be83f8ae194ec7065953088d60236058a3afa8cf83d556", + "value": "0x401a6a1c750ec43297de7af7e87d2133" + }, + { + "key": "0x155a542195c960536e8332be132b99886b87164639515f0c1d29a6cde335472", + "value": "0x918135ffdfbb4792a1074505996e" + }, + { + "key": "0x69cdbeadec3967460124841835ba7968fd9588a5d3175d7679952d2ab6c64bd", + "value": "0x3627166e74ea0690254559ee1c361d8f06" + }, + { + "key": "0x46a6f242530bfef935293389614a072e0878ad7b2b637280a87945adc844189", + "value": "0xc6238000000000000000005d0dc0e96449a05edf7bd7a" + }, + { + "key": "0x31a2013af03f21f528c9f2779d93de32af1586a6f5963e3b832cdb1e2a6872e", + "value": "0x5c58095af35" + }, + { + "key": "0x743d9ab5d4473d8bff4ef79cf5abc406423ab0ecb09d2e90c8dcb7ab2e7117e", + "value": "0x14a144e262047fd16aece8b6e7" + }, + { + "key": "0x6375ddad2e4503d3a4a90dfd9681841fc20de9e56376e13b0964f9a6f779ef8", + "value": "0xffffffffffffffffffffffffffffffffda307ee421f3ea48db8d876e94485c" + }, + { + "key": "0x3c9713a9a6d03784e15e031ad863d14e31a860bab767b2a6f9f470af9cce7e4", + "value": "0x3e051344f7c5e177c2879e493369aff1" + }, + { + "key": "0xcc35c36d89d811a277c01d9cf3477bbc4ddd730d1bb43fbdf2d25f58953794", + "value": "0x705e3ca657cabc9c739fd09baabbeaf4" + }, + { + "key": "0x6ce9c6611f5cdf1ee4e56aa4951df6410114aa413b6d78ae05526ba4e2ba3cd", + "value": "0x4000000000001be793bab65038461ed00000000000000158c6b98cfe0683259" + }, + { + "key": "0x2db691b34d3849d60a99a2a609400bc1715466fcd22850ca17b18904d5aecba", + "value": "0xa919500000000000000000003e420a69a186193081012" + }, + { + "key": "0x599395c41835cd9a2e29c50e28a0ae23d0aca6686b7e0c69d9912b07f3b8738", + "value": "0x969c3000000000000000000001697714deedc03920eab" + }, + { + "key": "0x24e5cea43335dc9f35ac6222398633cc5ea509e7409f3705a7536cbf6702c8c", + "value": "0x16413483ca046895ac2e8d1ccc" + }, + { + "key": "0xb8598e753038ff4378c0f468984e0f5d724907d9b97e137c5924b42c9ffafd", + "value": "0x3e2bc1ad9cb07ed991c890311213ca1" + }, + { + "key": "0x6cc82bc8940b457832adc8dd76fe256a8ec67850e53773e2b91a82eb6926bd6", + "value": "0x4000000000000aa691ed607b3a2a33b000000000000006e9174d80d6c3270a1" + }, + { + "key": "0x73f9e054befafc1a55ed10e524a1fffd21cdbc9922a5253e0e55e5c96238e3d", + "value": "0x12e24b8ec74f1b4b5aa338e023" + }, + { + "key": "0x2a8d91853ffa04f8660bb93c8005a459f553d13d8241f4e6cf3a8615ddb0d96", + "value": "0xbba8179f1c803d83000000000000000000150ca3c80e5ea7" + }, + { + "key": "0x67b1f22d225b695f5edab89db578e6b1830acbf73658d53ea4b03a789d70152", + "value": "0x60000000000000000014e23864bc04600000000000000000000cf7805f85c8c" + }, + { + "key": "0x31a2013af03f21f528c9f2779d93de32af1586a6f5963e3b832cdb1e2a68730", + "value": "0x1af6b20585b46eab47a2134ecb2" + }, + { + "key": "0x20889ecebf032c83e44174bd6457730aff4f1e1fe1215837562cc0a5c6b2544", + "value": "0xc6229000000000000000005cfc35f7ee3ebf30a68764d" + }, + { + "key": "0xe69452400002f732540cb890f2eff77f2cb84c23259bd8549df353420bc95c", + "value": "0x60000000000000006ede7bec1c6bb6b000000000000000006ede7bec1c6bb6b" + }, + { + "key": "0xb8598e753038ff4378c0f468984e0f5d724907d9b97e137c5924b42c9ffafc", + "value": "0x1bf0207cdebb5c397" + }, + { + "key": "0x5d5af5fdaec9ef4b688a17ad6d760ce1c25e0e007fda399891e3b2dfc285ca4", + "value": "0x6000000000001d0758d9563c022b8990000000000000147c08632373b279f13" + }, + { + "key": "0x155a542195c960536e8332be132b99886b87164639515f0c1d29a6cde335470", + "value": "0x6ede7bec1c6bb6b" + }, + { + "key": "0x1f5871d0cbc95a744af628c8de2175acc6b1ac5c527a3cd4f660576881397d", + "value": "0x89ae8ccbd7654ab03f778f01b77" + }, + { + "key": "0x6417e2f79350b2d33dd09304bd7353c105378fddba693f44560faddcf62df05", + "value": "0xeb7b91786595d43f555cdb6482abac0f" + }, + { + "key": "0x15e623e3a06644fb5e51af2b47525214bca32d7553523cc00e791ae55ef08be", + "value": "0x6000000000000001dea5c60d056292b00000000000000001be4f87b7f64a41b" + }, + { + "key": "0x581b12e70dcc78d30bb5154f98ddb87eb78b4e40621e0c6b796123a2c5cfc04", + "value": "0xffffffffffffffffffffffffffffffffe1d5c9809d7b96576a44bef5131896" + }, + { + "key": "0x5bc04f8b8748d04e5519c7d15f05a5f7d1e7cd2e439e3e4efc31c2224ae6ad5", + "value": "0x400000000000048677fb9986ba801ad0000000000000048677fb9986ba801ad" + }, + { + "key": "0x17677c97ce471a22de9a33001baaa2d42fab601a06de3562032eae34978da1c", + "value": "0x60000000000036effeed7e9fa42904400000000000000495d9fbf191d05a0ce" + }, + { + "key": "0x2d5f56bb4b5fd733f97be6ed1b2cbebf425e3a9ffb625d09a030d9defe88b19", + "value": "0x614d18251fe7d7a3475d8f0d59238" + }, + { + "key": "0x581b12e70dcc78d30bb5154f98ddb87eb78b4e40621e0c6b796123a2c5cfc03", + "value": "0xffffffffffffffffffffffffffffff7076ae2ae14d388e0117da2502c783a3" + }, + { + "key": "0xb9be5a3be2054355d0166827588c4539d98cd860d55826408aa262595317bb", + "value": "0xfb2f6f2add07e879315f45ef0" + }, + { + "key": "0x155a542195c960536e8332be132b99886b87164639515f0c1d29a6cde335471", + "value": "0x7c9df3361db33f7ca07d328a1d7812c" + }, + { + "key": "0x4ee2494ce5e4f18f55500145d788988f8f90e3ae039683bf125f462be484cc8", + "value": "0x4000000000001fb69d5b9d5fd3c02ef00000000000001f9f0fa611857d9f075" + }, + { + "key": "0x262ad65326a75bdadb5f2c9c95948ab56dba78af15e4ae5d7c5e93cd4b235ea", + "value": "0x12a8fe93133faf9a4327e3544a" + }, + { + "key": "0x3a8651c5f7eda965d83ac5cdfd042c739e3b55b27ce608d8a582b69821a041a", + "value": "0x1b9c9bb087464d89ce51" + }, + { + "key": "0x6e76682fe0b57b97ac1c6492bd9a8babe78931a6dfd92b285cb83159b2d721d", + "value": "0x22758710a8d46573d8" + }, + { + "key": "0x7bd4c1486abf5368c6b370bc3d57c82356067bf8cce0d4233eced43ebfbda52", + "value": "0x17fe7a5ba36465a62d00000000000000000000000028bc610e" + }, + { + "key": "0x6375ddad2e4503d3a4a90dfd9681841fc20de9e56376e13b0964f9a6f779ef6", + "value": "0xffff000000000000001c64e60c2cf601cfe7" + }, + { + "key": "0x418d324a8987f42567a067bb58c1cabc5e0853c17053f6629042c0611984aa3", + "value": "0x92b0135cc2ddd0637228255e087bdf005be" + }, + { + "key": "0x4694b6cc4fa86e4d2115395d2a2946c1a26856fac7af865ec086538481764f0", + "value": "0xa919e00000000000000000003e4980ef90ba528890a10" + }, + { + "key": "0x156f9c7abe798baad1c90b4ec6815a0865e1cc735b7777fbea3efc771f9bf21", + "value": "0x22123f954d5fb57d29b81a8e64bbbacc" + }, + { + "key": "0x581b12e70dcc78d30bb5154f98ddb87eb78b4e40621e0c6b796123a2c5cfc05", + "value": "0x10dd5906044debf3100000000000000000018222f3ed56089" + }, + { + "key": "0x1f874d13289b986fc31bb6e396c37ebe60ac1df87cf5ba51f1775a64c3b4fb8", + "value": "0x908e3c02e5f5653c" + }, + { + "key": "0x164750c7fb35ab6526e82195e7d12faeb25e7922b80b6c7c69e83deb99e95a3", + "value": "0x2aa5f20f03e52f111b547da9ee4" + }, + { + "key": "0x73f9e054befafc1a55ed10e524a1fffd21cdbc9922a5253e0e55e5c96238e3c", + "value": "0x824dc2296662aa1bb1095352ac4e2ccbaf2" + }, + { + "key": "0x634fc30f511c33a66d694cf712c4d81ef310b49beaaa4697402758935e3a151", + "value": "0x4000000000000004dcef04642c029fb00000000000000004dcef04642c029fb" + }, + { + "key": "0x156f9c7abe798baad1c90b4ec6815a0865e1cc735b7777fbea3efc771f9bf22", + "value": "0x4c5f" + }, + { + "key": "0x7f362912a6aadf63eccfe429427e7f68b292000abcdd024ac8df675ca357033", + "value": "0x1fd023cbf3f629351cfb41c072c6a" + }, + { + "key": "0x3da7e60bbd994a2241fe7da35b40ee88018821715f1c3e845745c0815633c23", + "value": "0x40000000000000006ede7bec1c6bb6b000000000000000006ede7bec1c6bb6b" + }, + { + "key": "0x283dff6a71f7cf19ae91c583b561892cbdeb3595307fb067534df9fb8f02b18", + "value": "0xaac50a73198ad4a1a65498714e2d2" + }, + { + "key": "0x6417e2f79350b2d33dd09304bd7353c105378fddba693f44560faddcf62df06", + "value": "0xf90" + }, + { + "key": "0x3bb16cd1f74056893fb81af40db7771a4189d5d2e0ae12702a938a1aba090e8", + "value": "0x2334164a68c22db7245afd824d" + }, + { + "key": "0x8cfa8b31a55eacc424d275d0383df1116c57e95926d118f2ec1192dd305c81", + "value": "0xc4a4d000000000000000004483eb7021c30b7a54dd1e5" + }, + { + "key": "0xb8598e753038ff4378c0f468984e0f5d724907d9b97e137c5924b42c9ffaff", + "value": "0x6c896b177772e00000000000000000000000000000000" + }, + { + "key": "0x31a2013af03f21f528c9f2779d93de32af1586a6f5963e3b832cdb1e2a68731", + "value": "0x6ec78e46103700000000000000000000000000068768" + }, + { + "key": "0x164750c7fb35ab6526e82195e7d12faeb25e7922b80b6c7c69e83deb99e95a2", + "value": "0x2c85fd0b2e494af368c1351a1ba96cbcb5" + } + ] + }, + { + "address": "0x155e28e1947350dac90112f3129b74e3a58d38132c8c26f8552002d78c3656e", + "storage_entries": [] + }, + { + "address": "0x7dcb0750533e01b824ff73a7ed25a4518593c39c60d2f6ff3f4ac1e1d0414a8", + "storage_entries": [] + }, + { + "address": "0x5bdadb021817e21664e9ff3610861a9216d4d556a031bf13d95a87dce8e0fa", + "storage_entries": [] + }, + { + "address": "0x1386681cb724851077ff2d700929c45c1509293faaa561280d3ec0e16801ad4", + "storage_entries": [] + }, + { + "address": "0x56fbcc1d476e4e03299b3021ef5971842d53a695f24c7eed3da00f7a2caf351", + "storage_entries": [] + }, + { + "address": "0x54ead9cbb7c140dd4f653aaad1f935ba8f8c002a2b8afea77793fdf8d1d80d3", + "storage_entries": [ + { + "key": "0x287589fb1b287155fe82c65b44553a0b6b0f2608e9eaae3be122a0895cc2876", + "value": "0xd84a12f00021d67217800460e7439404" + }, + { + "key": "0x32a8ad444de3360b172428a3777aaff738369cf1d9626752e42de73fa259347", + "value": "0xc5a4010c45ad0a481013060220d1a5b0" + }, + { + "key": "0x39a8832ecdeb135fc161574fa1a908add6228196f667c360c068a26883745b7", + "value": "0xa4410600248208c25220020012040081" + } + ] + }, + { + "address": "0xf35f93efe4b7fc4df9fa5cdea0959f4283ac2de767c634de53b5efa2a9b523", + "storage_entries": [] + }, + { + "address": "0x7e2a13b40fc1119ec55e0bcf9428eedaa581ab3c924561ad4e955f95da63138", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x35428f409f2d70162e" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x142d8f27a4" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x11fe2e8c11ff3f0676c1" + }, + { + "key": "0x6428e146212b70b5b3aa7be58079dcf35366c385342692a71bd25a4fda973a9", + "value": "0x0" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66192543" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x14974e273e5921a22" + } + ] + }, + { + "address": "0x471387a2e565759acb4e6e5c135241d11b3a12df0389956c417e62df295dcd7", + "storage_entries": [] + }, + { + "address": "0x6d3768397786287cd2da5a5df9b75d026f537ceffaeac3c7f1809d1da7c85bb", + "storage_entries": [] + }, + { + "address": "0x59a943ca214c10234b9a3b61c558ac20c005127d183b86a99a8f3c60a08b4ff", + "storage_entries": [ + { + "key": "0x44dff0be23dce03163b957c4e69a9767a4898e7c7ea6c4cf52d8f57d63ed5d9", + "value": "0x66192543" + }, + { + "key": "0x1b264b66023b6154947434dc29315488f9df8781cde65cdcd691eb84c000595", + "value": "0x66192543" + }, + { + "key": "0x5e0ecd6cf18cb208b04ddb27c0ad2f6c242a7c177db4f8228f6e83c23d85265", + "value": "0xde1f060ed63cb69" + }, + { + "key": "0x45c429925b63ad1d343f080899f82cb58829aef297aab6f49e9b6f729e225c1", + "value": "0x66192543" + }, + { + "key": "0xb5da8588258cf59a9a61b801cb29947fe195cd2a4cf7029895d1841ed37793", + "value": "0x5bf6f403e3b43a" + }, + { + "key": "0x7f707060dc04e7a4bf0e4a5b3cc74cac753d9ff1a2997082a22fb3cf8eb237f", + "value": "0xde9fb47569a1dce" + }, + { + "key": "0x6c954d835412673c1cbf7ae83cbfe10bd2407fa037aabfdc8d82eb15363d46e", + "value": "0xdff4b031f355ac6" + }, + { + "key": "0x14cc0f828501e1bb032df4e5810cfe7c260d7e196a140ecec5a83dc97fb27e0", + "value": "0x66192543" + }, + { + "key": "0x6c1dbee2d89535c1b9380b1ed3137f1629c31a9e603e6f366550b42846ae7ca", + "value": "0xdf4e1f7352ac6bb" + }, + { + "key": "0xf2834749bbc3f09a89b9ec9a485b3d2e0fe94a8dcb52dd0602d077f9e92b46", + "value": "0xdf6551cd76b0e31" + }, + { + "key": "0x21c9eb00d0ac408c043d571b90b3a8c30e8ea5c3f0e4b79e60416cd13493ecc", + "value": "0xd5c7ac6e6064cb" + }, + { + "key": "0x2ecc9ad808afcbd58273b4bd3dfca08449829c9cad075d097e9fabd4e755533", + "value": "0x66192543" + }, + { + "key": "0x20af9dda6575cf18feccc4e321633a9adf4e01cfa4e6cab03602fec71c7327d", + "value": "0x1d45bf898fa95b3" + }, + { + "key": "0x178aa618a136a3dae4121de8075402bd40a787adfcbbf4e8d8de55d887ddfb9", + "value": "0xe82a782eeb80634" + }, + { + "key": "0xdafd05ed8e8edc1a76e71cc6035424f9a4f6848100a2cf666f9054805a8a08", + "value": "0x66192543" + }, + { + "key": "0x154a964b4969028601192cacc9498e02ead6de4ae6510d99cc0fc6e5056793d", + "value": "0xe43c72b94ac0095" + }, + { + "key": "0x32cc2a5a8944344ae56ba91d9d48bb20837c23598d502ffaad2b9e1e112361c", + "value": "0x20e73d42dc08eb" + }, + { + "key": "0x6f993ef65ed08374ca714d0b18eceb7d7e1539d7d0512e142693bf7a486833c", + "value": "0x71014b8bf71124" + }, + { + "key": "0x55bd64a08284f65eaa89fd5a81f307ed9c778e89b797992d4af620df1d9cca7", + "value": "0xde1ea71528a4267" + }, + { + "key": "0x210e20aa0ee1aa847b3afd50ce9cea5a619e716fe61c8ee6b835750a8f39beb", + "value": "0x12c7df074ed83ce" + }, + { + "key": "0x67cc907a55ab9b5c251d076a1b170cde38a5f9b3809e2bbae55c3c2a96500af", + "value": "0x17fc959f11f814" + }, + { + "key": "0x3ace8a2d501d0cc72133033060e292257c4f1a5f26312fc945d02c6bad5e3c9", + "value": "0xe13e210f8f6abf2" + }, + { + "key": "0x13879bf0159bfecdf14ed144f041427c38ee455c92f525ec8792d455532f890", + "value": "0xe090f236892cffa" + }, + { + "key": "0x4a31f49fdb9cb10e4c5f4318207bab1aa70548024c73b5a20a4828c1a4e9005", + "value": "0xae54cf32ea746" + }, + { + "key": "0x1c41f330bd121872d68b16aad737d65e410fd9bab463545cc54e173fa5f7f89", + "value": "0x14964a70aab75ce" + }, + { + "key": "0x20282036f9f415ec13ff44bb35aef4f96afc9551818f06a946fe34ce4e8e976", + "value": "0x6e55eecabfeb5f" + }, + { + "key": "0x4172093f6b1e57737ddf4d2270ecce189aa9cb630323df3932d19c63e88a1c4", + "value": "0xde7c5dabbcb0d45" + }, + { + "key": "0x1ad05561d61ee79b7e2eea93c7dab54647930601d0fbc3d9ebcd6b61475262a", + "value": "0xdf2826ec095ed86" + }, + { + "key": "0x76621bdbd49b9f11095493ebc39a08c69c6462dc2134777fa63775e10bd10b3", + "value": "0x1d66f90f0f065d9" + }, + { + "key": "0x28395309f103a37c2c8693ca6078d391fb55773322d5ec683eb80ab7926f1e2", + "value": "0x286629728e66dc0" + } + ] + }, + { + "address": "0x47ad51726d891f972e74e4ad858a261b43869f7126ce7436ee0b2529a98f486", + "storage_entries": [ + { + "key": "0x6671afb709b0e8b8f7cc48ac4f5029250e18bdac1e5e7985278118d4fa50b5e", + "value": "0x1aaa25d" + }, + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0x962e55f2526" + }, + { + "key": "0x48be3692ab3e9e8bd4a134a7b958b4e69bcb00a71d4f58c22f9311921f12bcf", + "value": "0x2e486710f" + } + ] + }, + { + "address": "0x5fc7aec66090af1cea38fd4288ad43a92111270ab640f4adb5d940ef174de28", + "storage_entries": [] + }, + { + "address": "0x1cfe87313d4b610398810bdeb03f323dde6e193af58e8efe21c06ff721cf7", + "storage_entries": [] + }, + { + "address": "0x25d9df5a4f205c49521a10e771d23ab20001ffbb6da11fa8db5ccbb8ea02cd3", + "storage_entries": [] + }, + { + "address": "0x697eca109a04238a7b7ae8f335c26fa06aaaf74e06982ce74f44f19a1afb441", + "storage_entries": [] + }, + { + "address": "0x12f25da8682c3c69cc18b0f7ad1e66d16285a8ea6dce73beec0c5d5bdf52cfc", + "storage_entries": [ + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x4aed5e928ed18c6c682e2d9351f7eb8d7df27dde78dbc62d1cc57c51c915dd0" + }, + { + "key": "0xf920571b9f85bdd92a867cfdc73319d0f8836f0e69e06e4c5566b6203f75cc", + "value": "0x309c042d3729173c7f2f91a34f04d8c509c1b292d334679ef1aabf8da0899cc" + } + ] + }, + { + "address": "0x63d69ae657bd2f40337c39bf35a870ac27ddf91e6623c2f52529db4c1619a51", + "storage_entries": [ + { + "key": "0x5535747a2ea4bc3c6ae3584d6aaa71af1375c7400d875154924556d1ca744fe", + "value": "0x91f3f24" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xbfe30520c87" + }, + { + "key": "0x444ffeba005afb4c1a1f459f0f50d3ca6e743b4a58e89765ad188c793c49891", + "value": "0x17f150dd" + } + ] + }, + { + "address": "0x3bfd59d1579f5f3a1e196d30c2e9b1d85aff09ef4838476933f856e83284791", + "storage_entries": [] + }, + { + "address": "0xc5729a26837019d4af7c554b5f8391ed555af5b4bec489fb42c527bbe5febb", + "storage_entries": [] + }, + { + "address": "0x61706a781202bb0ca8b4860c566d4a87d433e76f0bc61a40cd3742482778c7b", + "storage_entries": [] + }, + { + "address": "0x5b20c75a785aee5ef10ce42abff4638cd2266c14e98f894467d34a3a949bf5b", + "storage_entries": [] + }, + { + "address": "0x7cecccbfa263721bb64c19892ccdc658ad08ea80e90fb8f78ff06446a62c3cc", + "storage_entries": [ + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0281", + "value": "0x66192543" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027d", + "value": "0x1ee3229bf0" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027f", + "value": "0x1be3a51637" + }, + { + "key": "0xfc7fce0137ef0fdf47d2297ba791a15d3f3f1801dc7ef0b2aa311ad5d4034e", + "value": "0x122211bbbf2910c" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0284", + "value": "0x724495" + } + ] + }, + { + "address": "0x4a87136cdbd069e92d0671a8cca1789d13dd66699af0017349b24bb0cc3e962", + "storage_entries": [] + }, + { + "address": "0x20833a5d0065221adcfb5d5f27fae77fad3c5b727af74f2bf9ebbfe2d4d03f1", + "storage_entries": [] + }, + { + "address": "0x2a3a9d7bcecc6d3121e3b6180b73c7e8f4c5f81c35a90c8dd457a70a842b723", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xc945b7fcba5476ad30df" + }, + { + "key": "0x16946970e312d52fedff2f24c64808fbfa2eca4409a2f687f5a489e598b523f", + "value": "0x0" + } + ] + }, + { + "address": "0x902646c357a0969f81c86408ce7ae56df1347e4647cf4d5188d6475b8beebe", + "storage_entries": [] + }, + { + "address": "0x68400056dccee818caa7e8a2c305f9a60d255145bac22d6c5c9bf9e2e046b71", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x126728f4afdca9279f" + }, + { + "key": "0x126aeab667c785c808b87c4ee0783eab5b8eaaadda28d7ddb4631d5d9816325", + "value": "0x0" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x8b254d6374a7b3e02fd1" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x320d50b929b37ea3dcd" + } + ] + }, + { + "address": "0x268ba9873d0704b5606b2ef243886800cd6a10435d06b933ef292b49876ae56", + "storage_entries": [] + }, + { + "address": "0x1f140feec58cfc669e552a083b8252d544544ff9f15b883d2771bd2f4a75e53", + "storage_entries": [] + }, + { + "address": "0x23e41e977b1b7145e71d3f957e394e9394205b87f02cd368f9386fe4590782a", + "storage_entries": [] + }, + { + "address": "0x47a4b0d3501e7a669be88deefa28d5109789a8552c10d004e98ff159a78bdad", + "storage_entries": [] + }, + { + "address": "0x225826e81a7fe596c8c4c1943a81a53d7870bc93973c2608796856d5e0fec74", + "storage_entries": [] + }, + { + "address": "0x27dee8c8c7f28d67bc771afe0c786bfb59d78f0e1ce303a86006b91b98dc3cf", + "storage_entries": [ + { + "key": "0x1ebe6e6f404e1482af57426efcfce00eebc3712fc4dff42f6ce04be51dce987", + "value": "0x2249f6c4a59f3c0" + } + ] + }, + { + "address": "0x8755a98ccf7d25e69aa90ef3b73b07c470ba4ec6391b0b0c7c598f992c3fee", + "storage_entries": [ + { + "key": "0x804ac79bc1173ca5e03b7ff217e23ed265934fcd39c1ea981b3f51c39e8325", + "value": "0x2" + }, + { + "key": "0x304f9a668510d9e43b904ee420a424c8a7553be44ed986c3659b8207655b20a", + "value": "0x356142001cb262000" + } + ] + }, + { + "address": "0x76dbac043a4b5fc15cc3f6f6d78c1a7c4bc2d875df2f89f246b10cbf53707da", + "storage_entries": [] + }, + { + "address": "0x269b18f23011c252ed53ae57121d37e65813fa6c3420c0363950eaf382a1a01", + "storage_entries": [] + }, + { + "address": "0x225042d229de00482cff2d78dc84df6755c52b93b2c451c5820d12d6bb45f12", + "storage_entries": [] + }, + { + "address": "0x7c2e1e733f28daa23e78be3a4f6c724c0ab06af65f6a95b5e0545215f1abc1b", + "storage_entries": [ + { + "key": "0x126aeab667c785c808b87c4ee0783eab5b8eaaadda28d7ddb4631d5d9816325", + "value": "0x35b43c5d841457806f" + }, + { + "key": "0x54c382c31dc07c33093a4ffb0c4c7333bb322e924ad91b09124a9362c18d5d6", + "value": "0x12f0fbdc9d3a2f99db3" + }, + { + "key": "0x13052d8da5063f6e7e879dead675615ef8f08117f9ad7dba154282feefb47aa", + "value": "0x6efc188510dda167" + }, + { + "key": "0x45290a4ffef1acab851f3e0f54a09018dc76844f9b8957670d334ddcb24eab4", + "value": "0x0" + }, + { + "key": "0x371eaec456fafb62307fb4e3bb96519ea81f43e046ec7e56d1deaefbc0e8fca", + "value": "0x617677588205fd2217" + }, + { + "key": "0x6223849ebd23ad67c81e30bb3d82f2477d864f8ae8c8b2b9832662e7cd08f53", + "value": "0x2dbce41ad6735603f0" + }, + { + "key": "0x4e3443b6236b059f979402481d17e45acb60b120fff601564bd1d32370f17d", + "value": "0x0" + }, + { + "key": "0xfcfcbc22efcbadab2f20c85590d3fff051f03c37b8ac047884cc168d82e0d0", + "value": "0x7f0bb85442a6f6a6b0" + }, + { + "key": "0x29ca83ef4613508a5bf4e573e6233bbfadf5367086ae2d58a635f67c5c2e3d7", + "value": "0x1535a9ab3994bd1d12" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x29d272adf35e623f1acaab" + }, + { + "key": "0x49314fbfc3a6d68bbd13db498f00c20fcfe63d8c519c6a2bb9cb23c92d8c171", + "value": "0x519ce107d9a6f9eff9" + } + ] + }, + { + "address": "0x24bfb44a0d8c1c83c0c85f89527678622fe9e38ce35ffbee5a5132a45cb8ce8", + "storage_entries": [] + }, + { + "address": "0x552363f5845893177f72d61803f762c83e0c345d9194874e43a11db5e9be7e2", + "storage_entries": [] + }, + { + "address": "0x67a34ff63ec38d0ccb2817c6d3f01e8b0c4792c77845feb43571092dcf5ebb5", + "storage_entries": [ + { + "key": "0x1dd9d833a4d792ee3c39425ba424e7a03cb6c27a91421d7a336d27c02c95a0b", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x6030c49521a60699f956e" + }, + { + "key": "0x264a23157aa8b4e0e8a6aa4d95397ff45a904cb7c24c746981e9931e74de23f", + "value": "0x50bd632a297bc990d3" + }, + { + "key": "0x356c7b27b831a0462c6754a40f256fa7bcdde439e01ac2e54a2974aa09f27e", + "value": "0xcebd93169dc10b57" + } + ] + }, + { + "address": "0x124aeb495b947201f5fac96fd1138e326ad86195b98df6dec9009158a533b49", + "storage_entries": [ + { + "key": "0x375625a1aa2ef72f3781f2e02601d101fb22f15ea7a692a7f9d1510f84da802", + "value": "0x2b75f4cc7dad8767a53a" + }, + { + "key": "0x32f5bc8d572fa5f0e59e52b5e35a1d81f4bf49a228818ffc40eb1a32d3a21d6", + "value": "0x0" + }, + { + "key": "0x38cb87fc73b4407bba211245b5fccc970ea91c77e45942bb6fecdcc4f1730ed", + "value": "0x2d1cd20850d39b5c9147" + }, + { + "key": "0x1001e85047571380eed1d7e1cc5a9af6a707b3d65789bb1702c7d680e5e87e", + "value": "0xa35d264f34b22033e03" + }, + { + "key": "0x35b30406029a0f7821d7b0d1164d35f5a4c48e75efb90b3973c5e322718743c", + "value": "0x7729d0a7f8921622cf" + }, + { + "key": "0xcb9a4bed8a7f300d3ab1c83c8ef03bcdfb6d758208eeb4ea8a05b841ec2786", + "value": "0x19ffbbf0e584876" + } + ] + }, + { + "address": "0xba3037d968790ac486f70acaa9a1cab10cf5843bb85c986624b4d0e5a82e74", + "storage_entries": [ + { + "key": "0x57491d700c9a849ca186eec4515b046d27809528fab3bc6d2cf42a93348a3de", + "value": "0xd8ca6478aefe50" + }, + { + "key": "0x3a9a4afc4dc7f1c98fada0d80d42380aec18f49876e10fabf194aa6271d4f4c", + "value": "0xbdd2b85d576221" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x186c94d1584556233f6" + } + ] + }, + { + "address": "0x20cdf29e127c29e4782f47c0465fbdd6866e25289c0514b89651d11e315ed48", + "storage_entries": [] + }, + { + "address": "0x3b43c0515fecf5a2108329519362212e308271deeff9d69a16dd19bf3f67418", + "storage_entries": [] + }, + { + "address": "0x5dbdedc203e92749e2e746e2d40a768d966bd243df04a6b712e222bc040a9af", + "storage_entries": [ + { + "key": "0x7b850b97a95709d170c041a8f27b77fab127dec2b085878ede660b172c5a261", + "value": "0x0" + }, + { + "key": "0x1845f4d201b48f0b262dd08ae1d0bf2614869973a3a2f1bf18aa6f59901b127", + "value": "0x2ff424b92fe258a7ed3dab325dd0bb2436c27713debfefa649e1d1a7187daf6" + }, + { + "key": "0x6ade856c96cf64f96e32014299c078ea563a14933905ae8d9b9addcf2201406", + "value": "0x1" + } + ] + }, + { + "address": "0x7c662b10f409d7a0a69c8da79b397fd91187ca5f6230ed30effef2dceddc5b3", + "storage_entries": [ + { + "key": "0x61f33bf7f64047434124f7118bffec843973a10805923c98ffe46e1a3ff46ee", + "value": "0x0" + }, + { + "key": "0x239c769ee792a613134fa1cac6623fde47c206b8ffcb3a539203f57778d5d84", + "value": "0x0" + }, + { + "key": "0x25216714d42d05b79b931ab552f7119ee7315fa7bacdf76b6e036cdbdf1dbd5", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x235e042a105ad86442" + } + ] + }, + { + "address": "0x1d876c45befa905f10b4bfa92ec3e28f1cafaef828294b77f2f11f5f0e6f08", + "storage_entries": [] + }, + { + "address": "0x6182278e63816ff4080ed07d668f991df6773fd13db0ea10971096033411b11", + "storage_entries": [ + { + "key": "0x4148b7506dc2846c7f82218fb97b7fdee82c8447447dae943ba4f89b63a3bf4", + "value": "0x7957f" + }, + { + "key": "0x1e44381b0f95a657a83284ece260c1948e6c965da4d357f7fbd6b557342cdc0", + "value": "0x82a55" + }, + { + "key": "0x125750461b05b8c66223ec02b69a89430baa5545becaccad1551304bd2ad5ec", + "value": "0x68d200f7019977600000" + }, + { + "key": "0x235a4d83b9b27bde6943b4e26301642f73f6fb6e5cda141734b02962b9d7f9d", + "value": "0x1" + }, + { + "key": "0x6508f86b2769bdb6cb25f7656bb7c42daac72ba03f6952e02d4774c0a398e50", + "value": "0x7f2ff24d545d722400000" + }, + { + "key": "0x291625bbd3d00024377934a31b5cdf6dfcc1e76776985889e17efb47b3ce2f0", + "value": "0x7957f" + }, + { + "key": "0x37a9774624a0e3e0d8e6b72bd35514f62b3e8e70fbaff4ed27181de4ffd4604", + "value": "0xf1b961b22e99797a7a00000" + } + ] + }, + { + "address": "0x3892572c5cb94945cc4b575806e4459068391eea09155aff10525fc8192eed1", + "storage_entries": [] + }, + { + "address": "0x914c504063beba497a3ebd6b077a791fd2c9af9232394e1589b62659b931a3", + "storage_entries": [] + }, + { + "address": "0x3c88e04a1dd2f68a19ea49d34aa243789b3d4e4bda21f2fe6ee85d811c09679", + "storage_entries": [] + }, + { + "address": "0x1fd03d583ad1ee9753d9917f16bc9fedda7ffcef627a4a45f104f1bae7cf53", + "storage_entries": [] + }, + { + "address": "0x3ea147e275db3713bf3bba573ba0f42ce081e3faa017b68b1b6aac82c1c4f98", + "storage_entries": [] + }, + { + "address": "0x49210ffc442172463f3177147c1aeaa36c51d152c1b0630f2364c300d4f48ee", + "storage_entries": [ + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x1b291fb5f60e14e902" + }, + { + "key": "0x299e8d5d4148ea0963a3dc284d0b1dab75ebaa45a1163c3ab7f8e0e0d20278d", + "value": "0x0" + } + ] + }, + { + "address": "0x7d00e377deff352eba6f3ece825faceb8689abec459a595c7e3629f69dc1549", + "storage_entries": [] + }, + { + "address": "0x2863acf307b2f0ba6afe2ad13124be9bfadf6b29109796dd2c57ce522cacb00", + "storage_entries": [] + }, + { + "address": "0x534c8087ac43caba09b7529c784966de6495b298cdaf62555c837a15f959c43", + "storage_entries": [] + }, + { + "address": "0x771264babfbcaacf3cd9c56ec9b73935ce97fb9775d6172f207dd9606bca20d", + "storage_entries": [] + }, + { + "address": "0x140af27182c7d63d31d3b015e6f7b00ee9bdb17bd3f9ff5a6cfb697a5031501", + "storage_entries": [] + }, + { + "address": "0xdace824877124a2e5416908a7579bf96b6eeab6edcf57674574bb74c2c7f8a", + "storage_entries": [] + }, + { + "address": "0x4c996daf9fb551c730645ee22a44908376746f359a3fdcfaaca935076c9bb79", + "storage_entries": [] + }, + { + "address": "0x4a876d72c632d73d5499ce67cbe5c2b8bcbf6d27f9f651749770ea6569e10c9", + "storage_entries": [] + }, + { + "address": "0xfd38491335c1129ac9a4ae845b0614b20a033cf924668dedbb9905f9c1f40e", + "storage_entries": [] + }, + { + "address": "0x6d93b7e8621a52a2645adb3b526fc9523526b8d631d25f53126177ad6047296", + "storage_entries": [] + }, + { + "address": "0xbaae93510d1b5cd6d0a00f012387cc4f88c17effd8243a727584da41a8ba0b", + "storage_entries": [] + }, + { + "address": "0x6d18397d631186efabd67741919cf6944df44376dfa14fba699517825ce89f2", + "storage_entries": [] + }, + { + "address": "0x11bd08f9d357e36a71dda14f0b13ed23a36013250cf4461d75d4afb0e60421", + "storage_entries": [] + }, + { + "address": "0x7bf92ed03e0796a98b95d4ff5af437025b6b57f561f2f01207193cdce849db3", + "storage_entries": [] + }, + { + "address": "0x15aae937fcb14182b7f2f377059530da5f292a05d35709a827106091d8d281b", + "storage_entries": [] + }, + { + "address": "0x44d55917b21bd5fafc579b03c8982365eae647fa93a25d48ffe60cc6cf8de49", + "storage_entries": [] + }, + { + "address": "0x5e13313351ace979a9c6d8da9d7f1fb2bc45d91d66763a5c5c008f5b9f51ace", + "storage_entries": [] + }, + { + "address": "0x22e45d94d5c6c477d9efd440aad71b2c02a5cd5bed9a4d6da10bb7c19fd93ba", + "storage_entries": [ + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c5", + "value": "0xf1cdce1e1fd26c4ea7ae783ff84ab73c" + }, + { + "key": "0x332df419aa058c3f4b36acbf5af4b7e8e3d4dd58918d5f0ab2841741e7b55c2", + "value": "0x66192543" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x24085b" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c6", + "value": "0x38f8c" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20d", + "value": "0x97ee5f6be5659d4a597aeb494a715246" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x63703ee0" + } + ] + }, + { + "address": "0x22b05f9396d2c48183f6deaf138a57522bcc8b35b67dee919f76403d1783136", + "storage_entries": [ + { + "key": "0x6428e146212b70b5b3aa7be58079dcf35366c385342692a71bd25a4fda973a9", + "value": "0x0" + }, + { + "key": "0x7113bffccd963cfcf8c9c4287b4f8613df8c8651ac3e6105ac76792b4422d38", + "value": "0x0" + }, + { + "key": "0x25216714d42d05b79b931ab552f7119ee7315fa7bacdf76b6e036cdbdf1dbd5", + "value": "0x0" + }, + { + "key": "0xc466fe1adaf62a7bea01d07d35b0ad81cc8ce2fe00f8e0201c24bbc34266fb", + "value": "0x0" + }, + { + "key": "0x7df78c271d5d0bc4ff984c3a904fdaf9265e89d60cb9adf13f82c0360ff5dfa", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xd7d356b725123" + } + ] + }, + { + "address": "0x7685993eaa77b371949b579083dae29633084fe7d82f42920111e9743fff3a3", + "storage_entries": [] + }, + { + "address": "0x7ae43abf704f4981094a4f3457d1abe6b176844f6cdfbb39c0544a635ef56b0", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x902e6a21ae" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x47f4de9bec107ae32cbf" + } + ] + }, + { + "address": "0x57e980208954e55a1af061c53ecdf6609ef1bdbc6ec3f700a23fe8c55cbdf9a", + "storage_entries": [] + }, + { + "address": "0x2a28036ec5007c05c5611281a7d740c71a26d0305f7e9a4fa2f751d252a9f0d", + "storage_entries": [ + { + "key": "0x3ad9655e466e4f1e85459ba340a858d609b7b9109e355ec292368162b410c8e", + "value": "0x8674f186b5d3f97b" + }, + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0x2af7b79fa79cee01e763" + } + ] + }, + { + "address": "0x6569b665de48145219a07c827deded8a3e7f34aa79ef3985bea6717755e85c6", + "storage_entries": [] + }, + { + "address": "0x2ed66297d146ecd91595c3174da61c1397e8b7fcecf25d423b1ba6717b0ece9", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xc019a89e79ff142bd6" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66192543" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x1c505d377" + }, + { + "key": "0x6180806f23c68be50a0927a6e9c4977256d4211877595d2490b57e01b6fa44e", + "value": "0x0" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x262d607d1b3be9350670" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x509a1233ea1445cc1" + } + ] + }, + { + "address": "0x5dcd26c25d9d8fd9fc860038dcb6e4d835e524eb8a85213a8cda5b7fff845f6", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x128c8840e73c" + }, + { + "key": "0x416b102a0ff36fa602093f7df7ee03b977d56f82deaef59e013e4799fa726f0", + "value": "0x33af68" + } + ] + }, + { + "address": "0x2f09c4cb0a2e99d5877cb4a07e13b6a7307677d2be24466f5a2f69cf8b7e52f", + "storage_entries": [] + }, + { + "address": "0x1761a1e21fceb9f7a5fc0c11418656b553fa27786d93c45d21519d33400dc0f", + "storage_entries": [] + }, + { + "address": "0x63d1d7cf904d552a4c137a56fe1a1f9ffd5e69b78879198090f5f0592516461", + "storage_entries": [] + }, + { + "address": "0x3355d13eb2843aa585150f15d3c7645903977be3de5a381bc0155c907062b19", + "storage_entries": [] + }, + { + "address": "0x3ccba12965a96dd6470b11a0b3c1c3ff12bc107cedbe3b03aaf92424c550995", + "storage_entries": [] + }, + { + "address": "0x530a1ae8ba2ed333d159782f6160bfd555ae1c15194ace9a47e25c8ceb94804", + "storage_entries": [] + }, + { + "address": "0x3dabf4d86c8c568d4429b858c47228922f5c27d4137cc6dcec31d7aacfebfa5", + "storage_entries": [] + }, + { + "address": "0x2b5d529552c122ae5c321c03aeca562c7def447823e5f735c6ec0e914b60dd1", + "storage_entries": [] + }, + { + "address": "0x6850a58da4e1d280cd3451e12bdaff57bbf5c3b86faf2de6541ec481a199dc", + "storage_entries": [] + }, + { + "address": "0x1690650ea3d0c0c33e924c464eda9f5981f688c3822abedfe55e7566c9f40dd", + "storage_entries": [] + }, + { + "address": "0x4e5b5d04e3fa732e11897c70c457888b0cef3ca2210312cf1141f2fdf40d08e", + "storage_entries": [] + }, + { + "address": "0x24de70d6f36e20e4fd1a2e6564e42863aaa67051c0541328858d20fa709af17", + "storage_entries": [] + }, + { + "address": "0x4b320ecd4f8760154a99d60096b21b141e05b773e85342a6b02526b9e738054", + "storage_entries": [] + }, + { + "address": "0x65f678b15d13b76a6d3a678a2c5d91e766b01b0a415977d0f4f5bd5b11a74b", + "storage_entries": [] + }, + { + "address": "0x7b696af58c967c1b14c9dde0ace001720635a660a8e90c565ea459345318b30", + "storage_entries": [ + { + "key": "0x119395435a681b523a028bf3d27f9b7743fcd42787ccda5a79147d10079d5e2", + "value": "0x330c27f4c693ead98ddb2f740b0843f3cb1c221784ee5dff5a9438d230ba34b" + }, + { + "key": "0x2a9f6940e96680af2fe721eb59341cde71d9b7ae61dc834d205d6c59360268e", + "value": "0x896b2" + }, + { + "key": "0xabc245f67abe2cae80e3113ba741e3175fa0b97df48796e5338fe9fe241d92", + "value": "0x4efb2daf0f2cfcc879310c99429ce58fe3783c177817a7095345e2d3cfa2f36" + }, + { + "key": "0x4fa0eaf37ac7ceb4dd6440317ba18190bc07c6cb25b00197d26349003b3de15", + "value": "0x7" + }, + { + "key": "0x1068d312f77ede75ac5eb949d1c1e6070a9a257f559f445727d10b7665f67b4", + "value": "0x4" + }, + { + "key": "0x73bf0e48958ab3358fada56d7cd70136f1f9c1b0938164957bde49da82865d8", + "value": "0x1734520351e55969890b2a391fe9afae07ca0a66e613824d4f8e7148084b66e" + }, + { + "key": "0xabe5e97f727977965dfbdf546cff1bced876c6aebf8ac1a25a122f9171cb4a", + "value": "0x7" + }, + { + "key": "0x5db9224a478ef51d13fa92cdc7f33d0f6bd0e5d18016443097749527d32d48", + "value": "0x1e" + }, + { + "key": "0x1c34951ecfad8fd6c45e3add037989b3b26342f9b0aa788c42cbf3cf8c10583", + "value": "0x3fe90402cfa7599a3851cdad3dd7a9383a3c7a378c3637a2e766d0b70a9573b" + } + ] + }, + { + "address": "0x53c91253bc9682c04929ca02ed00b3e423f6710d2ee7e0d5ebb06f3ecf368a8", + "storage_entries": [ + { + "key": "0x1716740cace5c468d7624dd6f91515f2396edb5ba3434bc6ac4bcbc5edbdff", + "value": "0x0" + }, + { + "key": "0x25216714d42d05b79b931ab552f7119ee7315fa7bacdf76b6e036cdbdf1dbd5", + "value": "0x172" + }, + { + "key": "0x3c33860d274b2b559e71c6190a38ae8aedda95366387155c63d55b1f028d4c2", + "value": "0x902e6a21ae" + }, + { + "key": "0x29ca83ef4613508a5bf4e573e6233bbfadf5367086ae2d58a635f67c5c2e3d7", + "value": "0x1" + }, + { + "key": "0x28affb810cc6a417b219889cc2e88f4dab38a3ec432a1723c8768ef06a9c333", + "value": "0xa6c19f" + }, + { + "key": "0x5ee78670918803f52dc6866592aabb690b4d4dea5d442d72ed216bbedbea02b", + "value": "0x12b5f90" + }, + { + "key": "0x613d197003eaeaec95cda022ece67293267e42a6ab0d14b510a147b500cb6b8", + "value": "0xbd6976087a" + }, + { + "key": "0x4303f9a8a386564a23333169d519922bd81a3521141a3f74c1cf536000a1398", + "value": "0xd3c21bceccecdf721a2c" + }, + { + "key": "0x4d82998aa3d8e5173bfc632d048e555128ebde2d426f3235d8d67e72235baff", + "value": "0xd82372879" + }, + { + "key": "0x6776b56e94d13aa6fcc2c769fa9b88ca2cb0e718910ba83b08f6f00dc57f2cf", + "value": "0x0" + }, + { + "key": "0x49a8ef79cab313360767015d427d0307368eff5c2c81b019aff018ec638eef2", + "value": "0x60eea98e06" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x126a5220b53" + }, + { + "key": "0x496d7267d8a8ec7097e4eedb6e9c3913912a0bb22f77d302b051e6e573637ee", + "value": "0x14f414c5a7" + }, + { + "key": "0x759839c47981088126dbfb6dabca1dc9425635a6b817ff042b3dc741f4114cf", + "value": "0x1ee3229bf0" + }, + { + "key": "0x19b800df5e5d3375fcce480579809a139ef5249ca12340664161540b7a20c0c", + "value": "0x0" + }, + { + "key": "0x18d7b079b471cfde70d671fc55b3c06d4363cdc22201c09924822902a33e019", + "value": "0x193babb1b" + }, + { + "key": "0x54cb56c2861ecd907a98e8538b6dcb6dc3ad2ac32ab14ae6ad4e6bad51f4f48", + "value": "0x0" + }, + { + "key": "0x2e68f83aa3074abbdb37c05450035b6d3f1e6dd0fe06d7194ba22a475f74c9c", + "value": "0x0" + }, + { + "key": "0xb5311b97477466dcdc360c8c4fe96e478c684872f76c6a818b5768004a4947", + "value": "0x3ac0302b34" + }, + { + "key": "0x3cdee4311485865af57be0739f2a8ce2ac40694f4091bf16e19c50850bfee51", + "value": "0x395e8588" + }, + { + "key": "0x450f91b9bc6a3b068fe2ce9550c06735d20eed3fd5a28a6eff6c0ed30184e52", + "value": "0x0" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x949b8dfaa8a" + }, + { + "key": "0x4aa2885ee95e2eaf83fcdaa59539ef9301372e916bc2419274d92a453c2b422", + "value": "0x9039789339" + }, + { + "key": "0x6428e146212b70b5b3aa7be58079dcf35366c385342692a71bd25a4fda973a9", + "value": "0x3d4b3" + }, + { + "key": "0x40e991e95d1bd7dc01ed5f83c96246c8fbfdddc3229e437049c5411343636c1", + "value": "0x1" + }, + { + "key": "0x3c61642f9789768773d4805df5ac9999ca7fcee76e19be256106e35ebc65435", + "value": "0x718a1" + }, + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0x33c91646e2d" + }, + { + "key": "0x737d7ef20a87694c18a663daf224c04529cbe50d41da5367259860ba7eddbe5", + "value": "0x1836f16" + }, + { + "key": "0x3f5753913a85fdf0e9ebfc1be06a5110a196b5d3a06020cb4f6d186c849c87e", + "value": "0x0" + }, + { + "key": "0x61f33bf7f64047434124f7118bffec843973a10805923c98ffe46e1a3ff46ee", + "value": "0x0" + }, + { + "key": "0x39743e2d6c62b3eb9bf1345f5ee3cc02229635e1b0b932df49e26a7a80ca911", + "value": "0x63703ee0" + }, + { + "key": "0x5826a749b73b2632e31704d24a9c6165e9b980f652f3d67cdeb3a34953c4c67", + "value": "0x189f90" + }, + { + "key": "0x55de5bd670b54db1a615e2d7df850ca188ba2e1d384506c102cf0dbdf40aa1b", + "value": "0x0" + }, + { + "key": "0x35d7d7242eff6e573b33f19f0e7817038ac0f4b7e3c922d6022c89ed14dd460", + "value": "0x9952df26bd" + }, + { + "key": "0x444ffeba005afb4c1a1f459f0f50d3ca6e743b4a58e89765ad188c793c49891", + "value": "0x11080149" + }, + { + "key": "0x3ac99788ec765822c4bc5e740031e6edf2221346ad48e9d41e6397f0a22503d", + "value": "0xab6a" + }, + { + "key": "0x7f0a3ff0244b195ae2ec1dbbc99bf7879236f8dc4e72c5709da87736266bfd", + "value": "0x3099866bd1" + }, + { + "key": "0x599b39b8f0e0e064f62ba921252b0735c2732a18e0b87e5b66e7f235d05dbf9", + "value": "0xffffffffffffffffffffe641a6790f62" + }, + { + "key": "0x6180806f23c68be50a0927a6e9c4977256d4211877595d2490b57e01b6fa44e", + "value": "0x401eaf0" + }, + { + "key": "0x168e06589ed1429d749afaa1281b5f9e74a4cc19fcf352103f8fa7bd582a3d4", + "value": "0x10880449ed" + }, + { + "key": "0x43e2a627b69b10a0d0364802f42110af90a93bc8f8b3ce1e95d3420ba66a989", + "value": "0x29dd6c" + }, + { + "key": "0x19668d1535e2b273ff6fa5a071de84cc5fc7b2e5548d991039f37e905c6beda", + "value": "0x8a67b13" + }, + { + "key": "0x1c0d06bd7060fec0ae69b82cb9dbed198512b21e28f74090aed0092ad8497f1", + "value": "0xada6c0aa50" + }, + { + "key": "0x490ed6207c7a4c6db510d1bbfb07ff87aaf4b6be3ddc11a3b3fd0d2ceabd09a", + "value": "0x0" + }, + { + "key": "0x2152f551f4a641a06f634e6f083141fa878c4d5a4c04878de4ddff4ca1d3696", + "value": "0x0" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x3dd5cc235" + }, + { + "key": "0x3c607dfcd07bad806b3ae0ec1e3a9d9cadf7d1721d99cc4622bfcf0d4be6eaa", + "value": "0x1273d7f581" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x6c823407fbb" + }, + { + "key": "0x416b102a0ff36fa602093f7df7ee03b977d56f82deaef59e013e4799fa726f0", + "value": "0x0" + }, + { + "key": "0x5535747a2ea4bc3c6ae3584d6aaa71af1375c7400d875154924556d1ca744fe", + "value": "0x159eab0" + }, + { + "key": "0x7df78c271d5d0bc4ff984c3a904fdaf9265e89d60cb9adf13f82c0360ff5dfa", + "value": "0x0" + }, + { + "key": "0x299e8d5d4148ea0963a3dc284d0b1dab75ebaa45a1163c3ab7f8e0e0d20278d", + "value": "0x0" + }, + { + "key": "0x1214ed8862ba26815a7fa616e362aa1fcac09313a1a8ffdb6afb1eecdc927a1", + "value": "0xca64f2b" + }, + { + "key": "0x22f9cf0e817ec5266133baeb7b6699c1b95854014cc79f85dd997309f7fc62b", + "value": "0x113270349e5" + }, + { + "key": "0x575906af3b972d0f5fdd006aada8523677b41f9b997e89e6aa9d6bceda4f15a", + "value": "0x39d17b6f" + }, + { + "key": "0x4d70d1ffc44306816136c5e860c41c1f51c2b8842c609b5bd0da7621de209ca", + "value": "0x6f66aa4" + }, + { + "key": "0xc466fe1adaf62a7bea01d07d35b0ad81cc8ce2fe00f8e0201c24bbc34266fb", + "value": "0x34987a" + }, + { + "key": "0x3510876ed2ee963b3f09429c3c452232bc00d016db45d07c9d206895ff71039", + "value": "0x6e02b223" + }, + { + "key": "0x1f91dee9dc4c6966475385c9741200d7f6e62dfc34a8d0888f5c69ea8767ba7", + "value": "0x127df6a7c3" + }, + { + "key": "0x250e2b769483bc7fd5b8a7d960b3b782d1b7d08147ee17c69ab1d4be41b9a2e", + "value": "0x623cf3" + } + ] + }, + { + "address": "0x210735cf7f812a07151df14c4699471eed48d4faade40c39e0eceee5a2393b7", + "storage_entries": [] + }, + { + "address": "0xda114221cb83fa859dbdb4c44beeaa0bb37c7537ad5ae66fe5e0efd20e6eb3", + "storage_entries": [ + { + "key": "0xe9c2232444a2a91fe1188ab3ebaea8011056d2d54a331cb424e6fdcde5f47c", + "value": "0x108f41cf9a4c9b714c" + }, + { + "key": "0xa6e9272881f51fae2d08c268dd89d7a92f6bdabe3366e40fd18b68f09a7508", + "value": "0x401cc6ed28c2d349238" + }, + { + "key": "0xb671f6a195cf3309d0b34a2df188d2f791b84f894487d01d227d569a9a98a9", + "value": "0xa256d43a76a2b" + }, + { + "key": "0x2740cdf3b0736144a4d0422e7579824866e61c8aa68f5546bf8ec79013b8a60", + "value": "0x0" + }, + { + "key": "0x5850c48558272fd22488e22115c6fd5d1c55b2fd354161addc594d2796536fb", + "value": "0x0" + }, + { + "key": "0x16519dbc29daaf53ba86690ee4ec04441e9296860cd175d3b05dbe511946fd2", + "value": "0xabf6800f9556f4b02f9" + }, + { + "key": "0x22c051e7349943a5ca3df1532e52d1d46fe02fa4cb70bf6b0703b0390c1e97e", + "value": "0x0" + }, + { + "key": "0x36b2862cc93554a281119cf4324887320da276017c9812a8fcd3a9621ec228", + "value": "0x27e9629b365387" + }, + { + "key": "0x53f400155211ea7f03a8885eed1068b5b19e116066b2e39ff53ad74e98f602a", + "value": "0x0" + }, + { + "key": "0x207c3e4933f817aadf19fac0a24e9732ad2e47ffa70342349af4ec57e8ec892", + "value": "0x0" + }, + { + "key": "0x66fb4eb7b2f7e11581b43d017aa7e7354a900d05c3ddb2a9dad3ed7ab443564", + "value": "0x8f194fa197198aaed5" + }, + { + "key": "0x2de7ac669936cc3b4e9784ff23826dc9056c74d54d3f41f1b0d28b36966369e", + "value": "0x16be0b446c9953194e5a" + }, + { + "key": "0x28424ab1e5a1b72ef45e34ef9d955931e0721623afc53bb09edaac96b5bb54d", + "value": "0xe79bea690077d6c19a6" + }, + { + "key": "0x16025cf89a35c6737d455e209cbfcce36a119bc3d8e20ad4b6e43076141c928", + "value": "0x0" + }, + { + "key": "0x1727959ffc61af4f1ac7048675a680562826825924160a0fa211500787052a1", + "value": "0x11fe2e8c11ff3f0676c1" + }, + { + "key": "0x7cb22d366ce8d696a6c4a2b6ca902e53b2047fae6fd45089db4142542735110", + "value": "0x6748b320de54f8d9" + }, + { + "key": "0x5975db922b2b5681ff3fb5d8f2fedf11ac744a8cda19eaf53456232fbe8932d", + "value": "0xc1330d29825083" + } + ] + }, + { + "address": "0x7ef454202662e1a6baeeb73ef510734a0f5adad25995895dd849d14d77c156c", + "storage_entries": [] + }, + { + "address": "0x1fecadfe7cda2487c66291f2970a629be8eecdcb006ba4e71d1428c2b7605c7", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xa2525ebb7a8863d28" + }, + { + "key": "0x2606dd1ce6bc7b3fd0f6fed1e3a1a931108ee008ca34ff1a0a6b69c0ceaa407", + "value": "0x0" + }, + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0xf3010e30df98d28" + } + ] + }, + { + "address": "0x585c32b625999e6e5e78645ff8df7a9001cf5cf3eb6b80ccdd16cb64bd3a34", + "storage_entries": [ + { + "key": "0x4634443c55b5c8f6189f591eef91027a3aa0e41aeacb3698f1f233b4fd98de4", + "value": "0x0" + }, + { + "key": "0x54cb56c2861ecd907a98e8538b6dcb6dc3ad2ac32ab14ae6ad4e6bad51f4f48", + "value": "0x0" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x2c42772ca2e70a22263" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0xc80343664431728f6cf" + }, + { + "key": "0x3fd4b890b842aea8ce436e29df9d53a3e55489447a9a6d535056af2eab2c5ea", + "value": "0x26b8acf23ea8aaeff6dca" + }, + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0x2af7b79fa79cee01e763" + }, + { + "key": "0xfe4db3c4add74e710b178317d643b6b8ad5c9d6f9db9f2a6896823e51f0157", + "value": "0x0" + }, + { + "key": "0x1ce9169aa7a8498bd99cbb5d77355f372eda1ed05b42507f98490253315a6e1", + "value": "0x0" + } + ] + }, + { + "address": "0x3e8ff2dff54d45990198eeb6197f5bda61e3f44919eab0d1d5a18a7b3e18b64", + "storage_entries": [] + }, + { + "address": "0x629cde7e2f97989ab26fa7494b97cf32a5997fe4edff06a8ea570fe1df717bc", + "storage_entries": [] + }, + { + "address": "0x5d28662333b2b904d1ed64c8034d3a98f5b4a27bdfe5aa7efedea382bb0ccdb", + "storage_entries": [] + }, + { + "address": "0x57146f6409deb4c9fa12866915dd952aa07c1eb2752e451d7f3b042086bdeb8", + "storage_entries": [ + { + "key": "0x6223849ebd23ad67c81e30bb3d82f2477d864f8ae8c8b2b9832662e7cd08f53", + "value": "0x2300402e90507f9f" + }, + { + "key": "0x3a9a4afc4dc7f1c98fada0d80d42380aec18f49876e10fabf194aa6271d4f4c", + "value": "0x11722c250b963a7" + }, + { + "key": "0x8e7faf406fa6479467ff0bf84cac24cf3b9edee69069fcbb876bd82026862b", + "value": "0x261683d2f6fae2a" + }, + { + "key": "0x57491d700c9a849ca186eec4515b046d27809528fab3bc6d2cf42a93348a3de", + "value": "0x13b505b77d57a83" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x475567b2ccab2cbaad9" + } + ] + }, + { + "address": "0xd0d479f96e131accb2aaacb496dc59101cf0c1d190b6c7a54a4f4cedfecb94", + "storage_entries": [] + }, + { + "address": "0x78a6b3509b18bce8fd600fe914dd16ee154138f40254c2eb40474907a597574", + "storage_entries": [] + }, + { + "address": "0x1405ab78ab6ec90fba09e6116f373cda53b0ba557789a4578d8c1ec374ba0f", + "storage_entries": [ + { + "key": "0x4178f77a6d90e44d8fc7650643f57f9b2b41021f2246d6a50d80599a423ec1", + "value": "0xe252a0bafb6b06001a10" + }, + { + "key": "0x3f3dd00a0853ab9839f5b4aa9a60bc5029ad2989b9c0fd19c71643b19d322ee", + "value": "0x1" + } + ] + }, + { + "address": "0x79e04f20c4d3e58cb28161553ff6df570801894228e4eaa916cb5a7674a5e61", + "storage_entries": [] + }, + { + "address": "0x18c692b667e9cdee0c60482f0dd1a73724c7ba3acef072eccad50bad3800112", + "storage_entries": [] + }, + { + "address": "0x1", + "storage_entries": [ + { + "key": "0x9a42b", + "value": "0x5ddb9ad20b30c07ca0078e5bd1e30a374363191713ccade5237a09bf4e2dba8" + } + ] + } + ], + "deprecated_declared_classes": [], + "declared_classes": [], + "deployed_contracts": [ + { + "address": "0x2ff424b92fe258a7ed3dab325dd0bb2436c27713debfefa649e1d1a7187daf6", + "class_hash": "0x816dd0297efc55dc1e7559020a3a825e81ef734b558f03c83325d4da7e6253" + }, + { + "address": "0x33fa91dd843d94014c20a6ba25c2b51313efb1f2ab1005988876c08c6cab5d3", + "class_hash": "0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b" + }, + { + "address": "0x677f33420f450bf5397b35f6de57ccfc8e5fe602004fa96902dbbfb562576d1", + "class_hash": "0x816dd0297efc55dc1e7559020a3a825e81ef734b558f03c83325d4da7e6253" + }, + { + "address": "0x4177ef655c243cf3a40f79f293883350ce55e93aa947086484e5824fb4caadb", + "class_hash": "0x816dd0297efc55dc1e7559020a3a825e81ef734b558f03c83325d4da7e6253" + }, + { + "address": "0x12f25da8682c3c69cc18b0f7ad1e66d16285a8ea6dce73beec0c5d5bdf52cfc", + "class_hash": "0x3530cc4759d78042f1b543bf797f5f3d647cde0388c33734cf91b7f7b9314a9" + } + ], + "replaced_classes": [ + { + "contract_address": "0x5c0973aa8038e018693eab2cfe568cd991ec684ce4796d12755080ba9bfbf96", + "class_hash": "0x816dd0297efc55dc1e7559020a3a825e81ef734b558f03c83325d4da7e6253" + }, + { + "contract_address": "0x297a42a1c1d32fdeeb4b0bc6fcb7fba16b6a5422fbd8bdaf443b9d405eb0f01", + "class_hash": "0x816dd0297efc55dc1e7559020a3a825e81ef734b558f03c83325d4da7e6253" + } + ], + "nonces": [ + { + "contract_address": "0xdad8ec75fed95ae14af953652a34b091c22115cad72363a11740ed9d463bc5", + "nonce": "0x45" + }, + { + "contract_address": "0x11a52a41f09a5e1826d30b971b9898360c57c3130b72ba4da14ef48ed7bf911", + "nonce": "0x1752" + }, + { + "contract_address": "0x1f323f00c8cb6ac46ac737c63fa35332cb8570796ec58c0a9d5588eee8e8e34", + "nonce": "0x395" + }, + { + "contract_address": "0x70be75dc4976ebbafa7b52357fb6e8883289c9c6ba9e8ec513310407580b9f2", + "nonce": "0xf" + }, + { + "contract_address": "0x112f818cf76294b20d5ab035502f6c4d19e2d34984e84ba2187129463a3fcd6", + "nonce": "0x62" + }, + { + "contract_address": "0x5a745313f388c0446b5676a8be8bcdaae2f900ed1f2ee40cd2d89017ce7cb7d", + "nonce": "0x9" + }, + { + "contract_address": "0x1215a5ae8be2820f4b2e1ae60e2bbb7b38ffd3585502c0f58e65d73625e5f51", + "nonce": "0x21" + }, + { + "contract_address": "0x50e0621f0df8db7f5e58958c9ac9d1f7269552731d595176c6f7b30b8a234f9", + "nonce": "0x24" + }, + { + "contract_address": "0x3f9f0d4a408fa5288c170909ec6e23822c1a1e09f01c57760b9f0eda1a514a", + "nonce": "0x31" + }, + { + "contract_address": "0x6d008064f9136cdcc538c61af00887577d684103475ba6d90b3fe13bce16040", + "nonce": "0x43" + }, + { + "contract_address": "0x51031a2381b4f95aa7c663e217e77d4d135bef809111b523a427afbda3e472", + "nonce": "0x1b" + }, + { + "contract_address": "0x3d6b457bb318425c0adebc24ee473f9eb1e733c90d56d8d47e63cf43d1af56c", + "nonce": "0x3b" + }, + { + "contract_address": "0x6bf936f1426fda7ee144fca86088e5ce93fe54e303d93c83897a19e90123768", + "nonce": "0x54" + }, + { + "contract_address": "0x49c8810e6b4012b1711cd2d13cf600a7d1c76c40bef2f0b7cb4f4d841907ab7", + "nonce": "0x2d" + }, + { + "contract_address": "0x64f65241b77505bd07bf10833e81701eb712a0932506b7ab9f1e4fa6d37db73", + "nonce": "0x33" + }, + { + "contract_address": "0xd3925aa9dc414403e0726a837bc74f444d83fc5390042202d7c0f49c87be0d", + "nonce": "0x5c" + }, + { + "contract_address": "0x71914055006d2e2f353032c8cfdb257880391a7da364fea62b4742fc4da2121", + "nonce": "0x37" + }, + { + "contract_address": "0x21dffae619140b944081b30106b838dde5368315de83d2e3df449ab372cdb69", + "nonce": "0x2e" + }, + { + "contract_address": "0x50e969cdea0f3d60e78b9baed9bf3ed5f18d29438a953c76c8a4ddaca6406ef", + "nonce": "0x34" + }, + { + "contract_address": "0x4abe9c3001cd0f986b4f1dadd61154236eea97bfc7b6692b04d582c46a9e7b8", + "nonce": "0x73" + }, + { + "contract_address": "0x2948e45b9455e32069362171b7d52d17ec45e551ad9bd6caa38be401be23aa8", + "nonce": "0x1a" + }, + { + "contract_address": "0xba18dafbfa3b2432514d3559113125f39e2e9291389293e83f0d60086afbb9", + "nonce": "0x18" + }, + { + "contract_address": "0x43406db04abd4c1744b9bdb1861e762de866e1424877d78759f8a5b3aaed2a9", + "nonce": "0x10" + }, + { + "contract_address": "0x3cc21466923b075fc859c2958d0bbd1cdf344143ca27060276e0681966e9a7b", + "nonce": "0x4e" + }, + { + "contract_address": "0x60db27f1ca3465408dfa5653365708b56b5c8d5bbb554dbe86c4965874974fb", + "nonce": "0x2a45" + }, + { + "contract_address": "0x12e96d5b772a8b2eb631c17300bd3150e0b384165b05a63816951f4e32d1a94", + "nonce": "0x68" + }, + { + "contract_address": "0x6e11fa5eb3501f30a7ef5adec02bf3de3e184a7282621e9b9fb0df52a8080e3", + "nonce": "0x40" + }, + { + "contract_address": "0x26179ea8bc7e56a2daf98a44397f5ee56589c36f0179d091da8813bef286b3d", + "nonce": "0x3" + }, + { + "contract_address": "0x4efb2daf0f2cfcc879310c99429ce58fe3783c177817a7095345e2d3cfa2f36", + "nonce": "0xd9" + }, + { + "contract_address": "0x10a6083f8ea8bfa0dc63cba3a97529c71b912842aa200805a43bd8d2ed23886", + "nonce": "0x21" + }, + { + "contract_address": "0x4952986b5c332d23b2bb8dee464af7a2578762df8080684e1cbdd3d6039a433", + "nonce": "0x11" + }, + { + "contract_address": "0x6c11cb2f2bebb8fb7d010b13eb4170924cd0211773efbd9a825bc4084882cd0", + "nonce": "0x35" + }, + { + "contract_address": "0x220265d76b15726dd986d0f1d9e5776a02b90bde27f5ee141747112f170c860", + "nonce": "0xf" + }, + { + "contract_address": "0x634c44b5f5b00ed8c3aaeb184efe85c07130c8dc27ae00f8344e98601c48ac6", + "nonce": "0x50" + }, + { + "contract_address": "0x6ce011a01d962392429a67fa4f624f0f63ce37c1a4524404fca0ea2c2d42e4c", + "nonce": "0x20" + }, + { + "contract_address": "0x6ecfb0f43bffe3f32b364473a3b57fcc9016d1a247a95eb9cf48a6bbafcd8cb", + "nonce": "0x24" + }, + { + "contract_address": "0x63e1e68e98a9028be3dca64cd8fd72f4682cdc7c080127645a95baf7c1ff8fa", + "nonce": "0x55" + }, + { + "contract_address": "0x63fd2472c041b44f83d0fbbd650f6662630f145665bb4d648634a5bb906e1df", + "nonce": "0x43" + }, + { + "contract_address": "0x2ff424b92fe258a7ed3dab325dd0bb2436c27713debfefa649e1d1a7187daf6", + "nonce": "0x2" + }, + { + "contract_address": "0x5d2b1304eefeec9823452d62464b377a5cd8846b62b9ea32a40199c3057ef3d", + "nonce": "0x21" + }, + { + "contract_address": "0x2339aa7e36a344d384162bfa363b54bb0072117ce98673eba2c165d86fd8227", + "nonce": "0x22" + }, + { + "contract_address": "0x4788099e769c6da126cc1bc88a5eb901ad756cbca0c12a11fabdeedd395fc66", + "nonce": "0x11" + }, + { + "contract_address": "0x7b0dc33ff480ac12fa5b14f09753e3f07417b436e7d8dc6b60708b1f42592ad", + "nonce": "0x64" + }, + { + "contract_address": "0x1eda935dc126076d78dc63b7ffd4893e85577add180414dcb8d1bb8c8067c22", + "nonce": "0xc8" + }, + { + "contract_address": "0x73335cc71c93fe46c04c14e09e7cde7ca7f6147bb36c72dee7968ec3abaf70d", + "nonce": "0x287a" + }, + { + "contract_address": "0x84cd2a29a598ca2a517dfed616ae50f8e40b8f455575d19497a055c8dd111b", + "nonce": "0x16357" + }, + { + "contract_address": "0x149325667fe8f91a92efc7243f8a172683b7055322ebf82419dcaac4f3f23a", + "nonce": "0x1b" + }, + { + "contract_address": "0x4ab6d9b3d472b2066791c8a5cbd1fc14994395271e95598cf6ab23002cdc3af", + "nonce": "0x38" + }, + { + "contract_address": "0x66b17ede4c6a939caa79890c19a286158ae0a02ad0d30a2aae7e6e037a6564", + "nonce": "0x10" + }, + { + "contract_address": "0x7ba8793f1492ad7bffab7c9a355163f7c8883fc635535fb202aec1ebc6dddf6", + "nonce": "0x3" + }, + { + "contract_address": "0x712085327a6b77fa844508d43fc9d3883587343fdb7246b126deb2fe0b9401", + "nonce": "0x31fd" + }, + { + "contract_address": "0x5641eacf2a5d931620187c4c8a6683ee326ca2b6185ffa555e42f9dee1d7851", + "nonce": "0x650" + }, + { + "contract_address": "0x70b7b45f7dc9ddfa61d1c69c529dc5d12915e932f978d12acc672fbdf13ebab", + "nonce": "0x9e" + }, + { + "contract_address": "0x27120417ab26562fc44907d73a91b5a8882b51c3b29e38a2fadd12674e888f2", + "nonce": "0x20" + }, + { + "contract_address": "0x4fc333204fc8b52a9327591e729d229e7b0132bfcaac0d212652f228d667ec0", + "nonce": "0x4" + }, + { + "contract_address": "0x28fcfa6432cf1bb8ddad2fd22addfc3ec7580328b96c3bf3510e1bacdd1554", + "nonce": "0x37" + }, + { + "contract_address": "0x3b3079ff6393f0fae4ec1ae1439e215e133912b4c76ff59190252e6b8d909cf", + "nonce": "0x36" + }, + { + "contract_address": "0xd32b72dfd5b5209d67d17da5ed97d0e118e00eeab4160cd4b517f819b726c", + "nonce": "0x16" + }, + { + "contract_address": "0x77b36d75ca09a944e7a0997b7732f7817407eda96e0e978e9f185aec0f48c6c", + "nonce": "0x3" + }, + { + "contract_address": "0x5ae3ac09bbfd59e9862c7a6c919699b5358f0eb72bc3266e9caad0e84bc86b5", + "nonce": "0x22" + }, + { + "contract_address": "0x36f183ec46cc73cb384aa639533c96ecba458133fb0c8292fc927973072af93", + "nonce": "0x3" + }, + { + "contract_address": "0x2464682812fe861cda4b478ea9ce9b546c724383c5bbe32489036cf90bcbfb4", + "nonce": "0x57" + }, + { + "contract_address": "0x62cd8befe1322adc719ebd8aff6c657ef21941f4f8540a055907b673a183fa4", + "nonce": "0x2f" + }, + { + "contract_address": "0x5b5195e19ec26d7bdc5a81ebaa5aa82b2df591186cc64bc1a6d3db5c146e9fa", + "nonce": "0x5" + }, + { + "contract_address": "0x40e2fba08ef093d7113a8e80dff476bbdffc81ddfb29cabe98d76aa6e05b501", + "nonce": "0x4d" + }, + { + "contract_address": "0x248ff122648be7d6a88a66e4b57151460164fd958948f18637c8aa0f049da3c", + "nonce": "0x4502" + }, + { + "contract_address": "0x763cddfe26a2eb2eba7c05b7eb124794540565011b0adbeb5a1ae527b2f33b", + "nonce": "0x3e" + }, + { + "contract_address": "0x229061f0e8c9f2bd265f2d6a6153ef5a117b8c4854379c3cfca58c3e1835fb0", + "nonce": "0x3" + }, + { + "contract_address": "0x753bf5d52dcb891d567f962e2601bc02afa3f8f203422eaee9b8fea54ae74fa", + "nonce": "0x44" + }, + { + "contract_address": "0x3a9af20b63141b53abaaba4a2fd7353cc51822a2ed0d7340c0f8ebf2d0f79da", + "nonce": "0x10" + }, + { + "contract_address": "0x5da39403add2b7695f56745c65846f7254cb4e144fbfecbe4995e0e9071fe39", + "nonce": "0x27" + }, + { + "contract_address": "0x53d93b563d52c8654eb31f203680650ae524386f2d099f3f2ae8c1244be8bc9", + "nonce": "0x3b" + }, + { + "contract_address": "0x2148f64f57323e39b01c58adf6a69d30f467baa57b473072cda2cccffbe9243", + "nonce": "0x75" + }, + { + "contract_address": "0x89e7c35e6d4f1d0316e2315ffb3ed02b3cb2fc6be94c5ea814508bd02d3554", + "nonce": "0x50" + }, + { + "contract_address": "0x14c4df4c92022f2d00e894e8624d5e809126fb7525c14ce4226b07842ac73cf", + "nonce": "0x11" + }, + { + "contract_address": "0x71e79d6bc6efacf561513f62477023ea5c3350ef158399ba00751d002ac6e6f", + "nonce": "0x26" + }, + { + "contract_address": "0x1155db9c2f56405dd27b8b4015e7072eef1c51c7b076464f7cec35e74a8d8f9", + "nonce": "0x10" + }, + { + "contract_address": "0x1fc8847c8ac1f99eef155aff4f85915bed3d07dae2833056d9ab9a7e914ba2b", + "nonce": "0x61" + }, + { + "contract_address": "0x2da1373d08cb9b326e697119e325316547b2bbc7a09e19175fd5b364f936f65", + "nonce": "0x92" + }, + { + "contract_address": "0x3638c9fd800808dd6ed0d7c445967f230b5e6f96393985eac4f5d0658b06e86", + "nonce": "0x6c" + }, + { + "contract_address": "0x64cd290c4dac803b8eccb62ba01ef0262537ce716d3bd37d914d101a25a59be", + "nonce": "0x24" + }, + { + "contract_address": "0x65cd2742d0cda46e7676e80170b46689d1b246e097087ed61568da772ab04d7", + "nonce": "0x22" + }, + { + "contract_address": "0x62518b825e86e44a3046cd775c5fe511d3aaadef6715fb196c71f110479cff2", + "nonce": "0x54" + }, + { + "contract_address": "0x4c710d72aeb3e1869d2245b49b1c6a13ffb0c8e9360cfe09839a324f994b3b6", + "nonce": "0x16740" + }, + { + "contract_address": "0x2a04685f7102e88b37ceeb57589bc0855af0f1c626e46d6244a98dc93a507c0", + "nonce": "0x11" + }, + { + "contract_address": "0x17970cc53f1d4c489f5039eea66c6e4d8a93aa5e6bd67f34025ca9f67f13f0f", + "nonce": "0x58" + }, + { + "contract_address": "0xc9945e21e4d88d67805d387ec81b3fac2b16133f749263f182306e46c999cb", + "nonce": "0x34" + }, + { + "contract_address": "0x15dd77e613202162d89474e3bf5f4379a2a99e1910298445b4116dd13a2e270", + "nonce": "0xf" + }, + { + "contract_address": "0x1e03464256611db456df83f7ed2bf1775ac0f7d745363af7d00d6d6ae04a9d", + "nonce": "0x16" + }, + { + "contract_address": "0x8697de09b48b5c3c5285e4bd1c8373f7240588d45bd4aa1a41908920c4c19f", + "nonce": "0x36" + }, + { + "contract_address": "0x33fa91dd843d94014c20a6ba25c2b51313efb1f2ab1005988876c08c6cab5d3", + "nonce": "0x3" + }, + { + "contract_address": "0x2e61775ac40726523e87ca357f9be26354af03b36d15e73499d35450bf2100b", + "nonce": "0x1a6" + }, + { + "contract_address": "0x71e5405ace1afd64c682e65b08360b573c00370f4e3ad6e4f2cd800ec7d93d2", + "nonce": "0x2cd9" + }, + { + "contract_address": "0x677f33420f450bf5397b35f6de57ccfc8e5fe602004fa96902dbbfb562576d1", + "nonce": "0x2" + }, + { + "contract_address": "0x523773840b98574fa058c642533c47927fddafa16a6cd9f5a0e64eb80d6ff49", + "nonce": "0x3" + }, + { + "contract_address": "0x20543d03cd3ceaffa51641634e5db34d506768632443e2d6afffbedc5e3c5aa", + "nonce": "0x9d" + }, + { + "contract_address": "0x5209079fc404e13bcf84d0a83bde3d15befd7159e3b06fe1a4eef06dd5de49f", + "nonce": "0x4e" + }, + { + "contract_address": "0x5202e61a7d544add8cf46a296e5819fab713cc163b128d65a38ca1e7ebdad7b", + "nonce": "0x2c" + }, + { + "contract_address": "0x2f3aeea64f45e41d9130126851aada7c48f1178640de8908d38f3a7789bfdc9", + "nonce": "0x7" + }, + { + "contract_address": "0x14c9f7b2428134734548fa3ee04574180bec7f93a825f85435d50b8808c04a8", + "nonce": "0x29" + }, + { + "contract_address": "0x164d87a90443cbdac2f5c01a4f5ef33d41359d63231058a96df741f411f1f13", + "nonce": "0x7f" + }, + { + "contract_address": "0x7671e1546d024e909dc341975a1bfb1d57a5492bbc8cfa7f40858b457b1eb18", + "nonce": "0x37" + }, + { + "contract_address": "0x20101171032f00a53a22c7521293c4069235e9cd7fdf677543a8b9dfbcc773e", + "nonce": "0x12" + }, + { + "contract_address": "0x293bc18b894805b327993a02f7c0b95d2dcb7e84f39bbcd030f0e10f154b407", + "nonce": "0xdd" + }, + { + "contract_address": "0x324e1f128089b1acd729030f226f388c3a8df269e64a5985c18c17eb9d1dfa7", + "nonce": "0x43" + }, + { + "contract_address": "0x314fd69e00f7d62ce3844a0c3d98e9c56aab3b32ca1ab3fa1e48b5005fc48c", + "nonce": "0x294" + }, + { + "contract_address": "0x505eab7770ed3286ff44287902f6b77e4a4930f762b46e6be0a87273628ae03", + "nonce": "0x67" + }, + { + "contract_address": "0xc186ab0bd7644cfca81faab546c1825e5519fc600b96c1ba0e50f2bc371ce1", + "nonce": "0x62" + }, + { + "contract_address": "0x7b4e189f48e4c9aee736321f15ab590ab1af544c05138ae3b81b4eb689e9517", + "nonce": "0x4f" + }, + { + "contract_address": "0x1859d2d32cc99b87d6e95db6fce7454e37de0901ec099d41e208f82b0a08117", + "nonce": "0x26" + }, + { + "contract_address": "0x7d1c87d308e473872364b3061352e76585ec81ef5757ff3718557cc1998ce18", + "nonce": "0x61" + }, + { + "contract_address": "0x330c27f4c693ead98ddb2f740b0843f3cb1c221784ee5dff5a9438d230ba34b", + "nonce": "0x7c" + }, + { + "contract_address": "0x179d06081df942b78edc04ff029e33d9f95f27ee8650bbfcd9dafb65c7999a4", + "nonce": "0x5" + }, + { + "contract_address": "0x3eb2b844e15eb3abe0b610c755e39401741f113ea59b4f9776cdbf03d8fdd62", + "nonce": "0x16" + }, + { + "contract_address": "0x686abc63a7d02c7bd692b08e00290b4c90b3c55d4ca6af5fa63d5e2e98ce1ad", + "nonce": "0x59" + }, + { + "contract_address": "0x1f78042ca65d29145ba4f54cf0c0631c1f5933c48648beb18e062e31ad642c1", + "nonce": "0x85a7" + }, + { + "contract_address": "0x74697b6a1b6fb09916848eef7cfdcb10722bfd03798b14d863e99b39f92308f", + "nonce": "0x2" + }, + { + "contract_address": "0x1d879867ba74ba1c2e14d9b2d4f8746b80db001a3cdc8d2bb9fe3de34123ee2", + "nonce": "0x2e" + }, + { + "contract_address": "0x7a3523833f7d28238e864273223fbf005212b82f68e0fb66b9610e4c2857706", + "nonce": "0x20" + }, + { + "contract_address": "0x1734520351e55969890b2a391fe9afae07ca0a66e613824d4f8e7148084b66e", + "nonce": "0x283" + }, + { + "contract_address": "0x3fe90402cfa7599a3851cdad3dd7a9383a3c7a378c3637a2e766d0b70a9573b", + "nonce": "0xbb" + }, + { + "contract_address": "0x16351149c84da67c062c3c0ae9d8fb54c9f2127ce7d9c4b54706210c1eb1f68", + "nonce": "0x14" + }, + { + "contract_address": "0x7691e7b82bb18f027c597c637394fcf45e5c096b5d957a5ea5018082b424c1d", + "nonce": "0x1d" + }, + { + "contract_address": "0x666b8405e94f98aebb90ba9a13ab91a305d1b06e4c6b319135189974b7eefcb", + "nonce": "0x9b" + }, + { + "contract_address": "0x4177ef655c243cf3a40f79f293883350ce55e93aa947086484e5824fb4caadb", + "nonce": "0x2" + }, + { + "contract_address": "0x36697d777af07b0b7f2f563ca8225764094bcc6ca9bc5b86fdd08853293d9a3", + "nonce": "0xa7" + }, + { + "contract_address": "0x113ad297efee051fe5217a44e6d2d94324f2ac908f0a46be2f2a8d48d4053dd", + "nonce": "0x2e" + }, + { + "contract_address": "0x7ff6efcd0893c30d8b9fedbf617ba81694b37dfd886cf979795452e63c73500", + "nonce": "0x57" + }, + { + "contract_address": "0x4f4847d63edc8c1e035684d7d252f4f1f335109b70b388967c1ad6d69f2c368", + "nonce": "0x55" + }, + { + "contract_address": "0x1b19ea5b8ee6feded2bfd48fbb8a4b162805e5e10e566fa96f2d9c597684249", + "nonce": "0x22" + }, + { + "contract_address": "0x7748e28379591c2059af4894d3ee51c725bd362d74ffac72d6e64ed38eb8b11", + "nonce": "0x23" + }, + { + "contract_address": "0x69ba6c6a643bfb67f887322b3940e4d080cc90deaac8799f400bfeba5130268", + "nonce": "0xe" + }, + { + "contract_address": "0x182791448e3ab59d0ff85f067a546f7c6bdca65102942a46365aa849e4ee13a", + "nonce": "0x63" + }, + { + "contract_address": "0x113b0f0db2e781e2b3b9c7e2771118ccb755eccd69b20a587817666cacecc90", + "nonce": "0x4a" + }, + { + "contract_address": "0x5b7088eb68436d237b1c524c7d53d31def0b3975707143027d74a62b0b98bd6", + "nonce": "0x3d" + }, + { + "contract_address": "0x39771e43a168a9514697cd1da8b882781658439a3f5bd32e5aea06985013321", + "nonce": "0x20" + }, + { + "contract_address": "0x36c97ecf81f02b69f5fd3898a70ce5b62914e364ccf0927a392fb1155d35087", + "nonce": "0x2c" + }, + { + "contract_address": "0x71825580fe46ed75e3ec2ad2441f4021f52d808a164915617e1fe87478d33da", + "nonce": "0x3f" + }, + { + "contract_address": "0x2ec195ba8703b4d93db88b90810b3be5be2fb18e4fdb38dffe3376838a2a707", + "nonce": "0x27" + }, + { + "contract_address": "0x564d9ea5346ca7374edfaf1ed08318776cd57644593698553d8b685c82913ce", + "nonce": "0x4d" + }, + { + "contract_address": "0x5c36fd2c9be65def63fb9d172e6fe81ee4d350f1208a247c1f20ced82f0b299", + "nonce": "0x3c" + }, + { + "contract_address": "0x61da172aba2e80fbbd10cbc17b1793e540bf81b904fccf6896c658299feed0d", + "nonce": "0x54b" + }, + { + "contract_address": "0x193a2fb497bc4e478aedf5f7f017c9bd6ec7a8b4c214e93c37cd7ff0a31e7ca", + "nonce": "0x8" + }, + { + "contract_address": "0x79b53c736877f6328863e595625f5fd3b479c9e71e68a3ca2962ae6b8eb9d2f", + "nonce": "0x37" + }, + { + "contract_address": "0x3a20d4f7b4229e7c4863dab158b4d076d7f454b893d90a62011882dc4caca2a", + "nonce": "0x131bd7" + }, + { + "contract_address": "0x39371c601a79e0f7d81b64dc17a8404bafcca9a6ad453509b6c5657abe68e35", + "nonce": "0x4c" + }, + { + "contract_address": "0x22f1ed2ce6254295d760cc13cee0e2aa8bf8d24d1abd5e9bbbec7525995bcc8", + "nonce": "0xc5" + }, + { + "contract_address": "0x7a4ebaaa09cf08cc2c619023d083015c870492b147fcb49ae5e7379b39e7ae1", + "nonce": "0x3c" + }, + { + "contract_address": "0x3a77b6a1715b9434bec420c3fd2841dca0ac7a1ee55f511203e317db808a7e3", + "nonce": "0x3" + }, + { + "contract_address": "0x3841cdffda36832106c6316d33542b73c0d5613acb19166efa57986714f22cc", + "nonce": "0x10" + }, + { + "contract_address": "0x34177b3b48d2daac8b8ccea1d0b1cfef7c440f6657e5a8e77a4e5191c9f390a", + "nonce": "0xf" + }, + { + "contract_address": "0x34240aeef40ea98c75c60f53da5ddf664eef0ab9acd7e9ca78ef4819b005658", + "nonce": "0x1f" + }, + { + "contract_address": "0x1465330a5cd0039460bfbe85ca0b697da53727443744f35c0bdfde117694c77", + "nonce": "0x3" + }, + { + "contract_address": "0x7c115c3f21e5d5b6683710d2c5d43a548a33077a5efff4b89a4c4cb778a299c", + "nonce": "0xf" + }, + { + "contract_address": "0x150b19dd07a77fc838d27e6a102846489d980159a445f2ba8a2e1d278276f62", + "nonce": "0x31" + }, + { + "contract_address": "0x5a88258407b5e5c4dc4db3628cae7aab3e1e16eaefb43509997be48dd6cfbed", + "nonce": "0x22" + }, + { + "contract_address": "0xfa4dce0db3eeeab9125e43fa8a59fb775a31c694a5c746c4c793a49d012939", + "nonce": "0x41" + }, + { + "contract_address": "0x48797c4fe26026ca9c5db39f3c87eac1215b2450369788dbdb0d668b01bf78c", + "nonce": "0x6" + }, + { + "contract_address": "0x5b9aed8ebe68d7e8670ab0b5e1fef8c32c04e926db4d87f324ae8d43ff0a297", + "nonce": "0x25" + }, + { + "contract_address": "0x21f2e555beead299d450183573d3a72bff2acd3bf95a03bce7bda43877a9193", + "nonce": "0xd" + }, + { + "contract_address": "0x5c0973aa8038e018693eab2cfe568cd991ec684ce4796d12755080ba9bfbf96", + "nonce": "0x4" + }, + { + "contract_address": "0x4c134c21fdfc60652af960da9fe7a23842207937aa4bda0554092e252fed408", + "nonce": "0x83" + }, + { + "contract_address": "0x738bb7548e121e441d276fa647d9851b9e715345e7c4a733e78bfa54ec47658", + "nonce": "0x2a" + }, + { + "contract_address": "0x2beb9e2418c5ecc2a2b75a69e5912f8369166282a05eb156a7f72f97139252c", + "nonce": "0x4e" + }, + { + "contract_address": "0x638d55f89c2c13bbece7a24a37316916858caac0705211e4eaefe01a17a7775", + "nonce": "0x10" + }, + { + "contract_address": "0x614051997d914b7d5390fbfbf74c74ccad165087b5dbd1f785741040500325d", + "nonce": "0xdc" + }, + { + "contract_address": "0x1e2ce2d0d1bbf66bfd0d9b2304cffd0e2fd4b2f7fe8261c6e239b70bc9da5d", + "nonce": "0xcb4" + }, + { + "contract_address": "0x503f40292c41ab9fb3eb577bfa86121d9beeaf3c0f5d396caf9db2f61039184", + "nonce": "0x63" + }, + { + "contract_address": "0x5c78a673c83b0143a5b10957de11275d205f117d9116fbf372e4d97e747f621", + "nonce": "0x4d" + }, + { + "contract_address": "0x1f605b90185d59aa94543e053091da065c3cacf8a19666ddfdaaa39c01d2aff", + "nonce": "0xe5" + }, + { + "contract_address": "0x213c67ed78bc280887234fe5ed5e77272465317978ae86c25a71531d9332a2d", + "nonce": "0xbc3e" + }, + { + "contract_address": "0x6cd3895d9a5e50aa2a0779a95a4e46c33a79dfd129ce3f8ee8c5bfd81fce24e", + "nonce": "0x2a" + }, + { + "contract_address": "0x66fb3b0730fadfc332fff12131cc567345aa1b94e2b1a99b03af868e94c923f", + "nonce": "0x3" + }, + { + "contract_address": "0x2583aa1f2b0904df9be0983f2e46726c0864101930d482d875564d24fc014d9", + "nonce": "0x52" + }, + { + "contract_address": "0xc6c90f37d0faabd6ed5b2b399a58aa5637200aaaefd10bc924b8d2b23ec41e", + "nonce": "0x33" + }, + { + "contract_address": "0x297a42a1c1d32fdeeb4b0bc6fcb7fba16b6a5422fbd8bdaf443b9d405eb0f01", + "nonce": "0x5" + }, + { + "contract_address": "0x6cffe11b90f64c67d2993573f5eac222219a7615548031f7eefccbb10c23a56", + "nonce": "0xb58" + }, + { + "contract_address": "0x79640950b1f1d78532a123e0bc92a7121158f06ce7e54968af68f6022b851f5", + "nonce": "0x14" + }, + { + "contract_address": "0x1f64d341ad1abbb5353e740c3a5c823e31accfdef8b03c8ef51cce6f013c516", + "nonce": "0x1a" + }, + { + "contract_address": "0x432fd1e88f6ca05bf08c6ee4c74af01e16229f31ba07e4a094d31679695a782", + "nonce": "0x80" + }, + { + "contract_address": "0x3470cb28bcde35294cf577395f4caf714997f379d3ef2b1fd1a2037b665173a", + "nonce": "0x45" + }, + { + "contract_address": "0x63604ce39d26a6d5db59923b299c99c8fda526c521c52904611422749df572b", + "nonce": "0xb8" + }, + { + "contract_address": "0x19a5676c6a55494fe983d3601e2478e7f4f67aa1bede91bc4a990732c6c87d7", + "nonce": "0x3" + }, + { + "contract_address": "0x155e28e1947350dac90112f3129b74e3a58d38132c8c26f8552002d78c3656e", + "nonce": "0x272a" + }, + { + "contract_address": "0x7dcb0750533e01b824ff73a7ed25a4518593c39c60d2f6ff3f4ac1e1d0414a8", + "nonce": "0x13" + }, + { + "contract_address": "0x5bdadb021817e21664e9ff3610861a9216d4d556a031bf13d95a87dce8e0fa", + "nonce": "0x1e" + }, + { + "contract_address": "0x1386681cb724851077ff2d700929c45c1509293faaa561280d3ec0e16801ad4", + "nonce": "0x11" + }, + { + "contract_address": "0x56fbcc1d476e4e03299b3021ef5971842d53a695f24c7eed3da00f7a2caf351", + "nonce": "0x4" + }, + { + "contract_address": "0xf35f93efe4b7fc4df9fa5cdea0959f4283ac2de767c634de53b5efa2a9b523", + "nonce": "0x24" + }, + { + "contract_address": "0x471387a2e565759acb4e6e5c135241d11b3a12df0389956c417e62df295dcd7", + "nonce": "0x22" + }, + { + "contract_address": "0x6d3768397786287cd2da5a5df9b75d026f537ceffaeac3c7f1809d1da7c85bb", + "nonce": "0x16" + }, + { + "contract_address": "0x5fc7aec66090af1cea38fd4288ad43a92111270ab640f4adb5d940ef174de28", + "nonce": "0x54" + }, + { + "contract_address": "0x1cfe87313d4b610398810bdeb03f323dde6e193af58e8efe21c06ff721cf7", + "nonce": "0x4" + }, + { + "contract_address": "0x25d9df5a4f205c49521a10e771d23ab20001ffbb6da11fa8db5ccbb8ea02cd3", + "nonce": "0x10" + }, + { + "contract_address": "0x697eca109a04238a7b7ae8f335c26fa06aaaf74e06982ce74f44f19a1afb441", + "nonce": "0x62" + }, + { + "contract_address": "0x12f25da8682c3c69cc18b0f7ad1e66d16285a8ea6dce73beec0c5d5bdf52cfc", + "nonce": "0x1" + }, + { + "contract_address": "0x3bfd59d1579f5f3a1e196d30c2e9b1d85aff09ef4838476933f856e83284791", + "nonce": "0x18" + }, + { + "contract_address": "0xc5729a26837019d4af7c554b5f8391ed555af5b4bec489fb42c527bbe5febb", + "nonce": "0x10" + }, + { + "contract_address": "0x61706a781202bb0ca8b4860c566d4a87d433e76f0bc61a40cd3742482778c7b", + "nonce": "0x3c" + }, + { + "contract_address": "0x5b20c75a785aee5ef10ce42abff4638cd2266c14e98f894467d34a3a949bf5b", + "nonce": "0x32" + }, + { + "contract_address": "0x4a87136cdbd069e92d0671a8cca1789d13dd66699af0017349b24bb0cc3e962", + "nonce": "0x59" + }, + { + "contract_address": "0x20833a5d0065221adcfb5d5f27fae77fad3c5b727af74f2bf9ebbfe2d4d03f1", + "nonce": "0x3" + }, + { + "contract_address": "0x902646c357a0969f81c86408ce7ae56df1347e4647cf4d5188d6475b8beebe", + "nonce": "0x1e" + }, + { + "contract_address": "0x268ba9873d0704b5606b2ef243886800cd6a10435d06b933ef292b49876ae56", + "nonce": "0x2f" + }, + { + "contract_address": "0x1f140feec58cfc669e552a083b8252d544544ff9f15b883d2771bd2f4a75e53", + "nonce": "0x2f" + }, + { + "contract_address": "0x23e41e977b1b7145e71d3f957e394e9394205b87f02cd368f9386fe4590782a", + "nonce": "0x1a" + }, + { + "contract_address": "0x47a4b0d3501e7a669be88deefa28d5109789a8552c10d004e98ff159a78bdad", + "nonce": "0x41" + }, + { + "contract_address": "0x225826e81a7fe596c8c4c1943a81a53d7870bc93973c2608796856d5e0fec74", + "nonce": "0x35" + }, + { + "contract_address": "0x76dbac043a4b5fc15cc3f6f6d78c1a7c4bc2d875df2f89f246b10cbf53707da", + "nonce": "0x4d" + }, + { + "contract_address": "0x269b18f23011c252ed53ae57121d37e65813fa6c3420c0363950eaf382a1a01", + "nonce": "0x22" + }, + { + "contract_address": "0x225042d229de00482cff2d78dc84df6755c52b93b2c451c5820d12d6bb45f12", + "nonce": "0x38" + }, + { + "contract_address": "0x24bfb44a0d8c1c83c0c85f89527678622fe9e38ce35ffbee5a5132a45cb8ce8", + "nonce": "0x26" + }, + { + "contract_address": "0x552363f5845893177f72d61803f762c83e0c345d9194874e43a11db5e9be7e2", + "nonce": "0x80" + }, + { + "contract_address": "0x20cdf29e127c29e4782f47c0465fbdd6866e25289c0514b89651d11e315ed48", + "nonce": "0x9f9b" + }, + { + "contract_address": "0x3b43c0515fecf5a2108329519362212e308271deeff9d69a16dd19bf3f67418", + "nonce": "0x1c" + }, + { + "contract_address": "0x1d876c45befa905f10b4bfa92ec3e28f1cafaef828294b77f2f11f5f0e6f08", + "nonce": "0x66" + }, + { + "contract_address": "0x3892572c5cb94945cc4b575806e4459068391eea09155aff10525fc8192eed1", + "nonce": "0xf" + }, + { + "contract_address": "0x914c504063beba497a3ebd6b077a791fd2c9af9232394e1589b62659b931a3", + "nonce": "0xf" + }, + { + "contract_address": "0x3c88e04a1dd2f68a19ea49d34aa243789b3d4e4bda21f2fe6ee85d811c09679", + "nonce": "0x1a" + }, + { + "contract_address": "0x1fd03d583ad1ee9753d9917f16bc9fedda7ffcef627a4a45f104f1bae7cf53", + "nonce": "0x3" + }, + { + "contract_address": "0x3ea147e275db3713bf3bba573ba0f42ce081e3faa017b68b1b6aac82c1c4f98", + "nonce": "0x18" + }, + { + "contract_address": "0x7d00e377deff352eba6f3ece825faceb8689abec459a595c7e3629f69dc1549", + "nonce": "0xb" + }, + { + "contract_address": "0x2863acf307b2f0ba6afe2ad13124be9bfadf6b29109796dd2c57ce522cacb00", + "nonce": "0x4" + }, + { + "contract_address": "0x534c8087ac43caba09b7529c784966de6495b298cdaf62555c837a15f959c43", + "nonce": "0x32" + }, + { + "contract_address": "0x771264babfbcaacf3cd9c56ec9b73935ce97fb9775d6172f207dd9606bca20d", + "nonce": "0x27" + }, + { + "contract_address": "0x140af27182c7d63d31d3b015e6f7b00ee9bdb17bd3f9ff5a6cfb697a5031501", + "nonce": "0x20" + }, + { + "contract_address": "0xdace824877124a2e5416908a7579bf96b6eeab6edcf57674574bb74c2c7f8a", + "nonce": "0x31" + }, + { + "contract_address": "0x4c996daf9fb551c730645ee22a44908376746f359a3fdcfaaca935076c9bb79", + "nonce": "0x56" + }, + { + "contract_address": "0x4a876d72c632d73d5499ce67cbe5c2b8bcbf6d27f9f651749770ea6569e10c9", + "nonce": "0x11" + }, + { + "contract_address": "0xfd38491335c1129ac9a4ae845b0614b20a033cf924668dedbb9905f9c1f40e", + "nonce": "0xf" + }, + { + "contract_address": "0x6d93b7e8621a52a2645adb3b526fc9523526b8d631d25f53126177ad6047296", + "nonce": "0x14" + }, + { + "contract_address": "0xbaae93510d1b5cd6d0a00f012387cc4f88c17effd8243a727584da41a8ba0b", + "nonce": "0x98" + }, + { + "contract_address": "0x6d18397d631186efabd67741919cf6944df44376dfa14fba699517825ce89f2", + "nonce": "0x27" + }, + { + "contract_address": "0x11bd08f9d357e36a71dda14f0b13ed23a36013250cf4461d75d4afb0e60421", + "nonce": "0x12" + }, + { + "contract_address": "0x7bf92ed03e0796a98b95d4ff5af437025b6b57f561f2f01207193cdce849db3", + "nonce": "0x1a4" + }, + { + "contract_address": "0x15aae937fcb14182b7f2f377059530da5f292a05d35709a827106091d8d281b", + "nonce": "0xa" + }, + { + "contract_address": "0x44d55917b21bd5fafc579b03c8982365eae647fa93a25d48ffe60cc6cf8de49", + "nonce": "0x4e" + }, + { + "contract_address": "0x5e13313351ace979a9c6d8da9d7f1fb2bc45d91d66763a5c5c008f5b9f51ace", + "nonce": "0xe" + }, + { + "contract_address": "0x7685993eaa77b371949b579083dae29633084fe7d82f42920111e9743fff3a3", + "nonce": "0x22" + }, + { + "contract_address": "0x57e980208954e55a1af061c53ecdf6609ef1bdbc6ec3f700a23fe8c55cbdf9a", + "nonce": "0x53f" + }, + { + "contract_address": "0x6569b665de48145219a07c827deded8a3e7f34aa79ef3985bea6717755e85c6", + "nonce": "0x701" + }, + { + "contract_address": "0x2f09c4cb0a2e99d5877cb4a07e13b6a7307677d2be24466f5a2f69cf8b7e52f", + "nonce": "0x67" + }, + { + "contract_address": "0x1761a1e21fceb9f7a5fc0c11418656b553fa27786d93c45d21519d33400dc0f", + "nonce": "0x5f1" + }, + { + "contract_address": "0x63d1d7cf904d552a4c137a56fe1a1f9ffd5e69b78879198090f5f0592516461", + "nonce": "0x1e" + }, + { + "contract_address": "0x3355d13eb2843aa585150f15d3c7645903977be3de5a381bc0155c907062b19", + "nonce": "0x36" + }, + { + "contract_address": "0x3ccba12965a96dd6470b11a0b3c1c3ff12bc107cedbe3b03aaf92424c550995", + "nonce": "0x3a9d" + }, + { + "contract_address": "0x530a1ae8ba2ed333d159782f6160bfd555ae1c15194ace9a47e25c8ceb94804", + "nonce": "0x27" + }, + { + "contract_address": "0x3dabf4d86c8c568d4429b858c47228922f5c27d4137cc6dcec31d7aacfebfa5", + "nonce": "0x100" + }, + { + "contract_address": "0x2b5d529552c122ae5c321c03aeca562c7def447823e5f735c6ec0e914b60dd1", + "nonce": "0x1b" + }, + { + "contract_address": "0x6850a58da4e1d280cd3451e12bdaff57bbf5c3b86faf2de6541ec481a199dc", + "nonce": "0xf" + }, + { + "contract_address": "0x1690650ea3d0c0c33e924c464eda9f5981f688c3822abedfe55e7566c9f40dd", + "nonce": "0xe" + }, + { + "contract_address": "0x4e5b5d04e3fa732e11897c70c457888b0cef3ca2210312cf1141f2fdf40d08e", + "nonce": "0x135" + }, + { + "contract_address": "0x24de70d6f36e20e4fd1a2e6564e42863aaa67051c0541328858d20fa709af17", + "nonce": "0x5" + }, + { + "contract_address": "0x4b320ecd4f8760154a99d60096b21b141e05b773e85342a6b02526b9e738054", + "nonce": "0x36" + }, + { + "contract_address": "0x65f678b15d13b76a6d3a678a2c5d91e766b01b0a415977d0f4f5bd5b11a74b", + "nonce": "0x3" + }, + { + "contract_address": "0x210735cf7f812a07151df14c4699471eed48d4faade40c39e0eceee5a2393b7", + "nonce": "0x3" + }, + { + "contract_address": "0x7ef454202662e1a6baeeb73ef510734a0f5adad25995895dd849d14d77c156c", + "nonce": "0x29" + }, + { + "contract_address": "0x3e8ff2dff54d45990198eeb6197f5bda61e3f44919eab0d1d5a18a7b3e18b64", + "nonce": "0x29" + }, + { + "contract_address": "0x629cde7e2f97989ab26fa7494b97cf32a5997fe4edff06a8ea570fe1df717bc", + "nonce": "0x2c" + }, + { + "contract_address": "0x5d28662333b2b904d1ed64c8034d3a98f5b4a27bdfe5aa7efedea382bb0ccdb", + "nonce": "0x1fc" + }, + { + "contract_address": "0xd0d479f96e131accb2aaacb496dc59101cf0c1d190b6c7a54a4f4cedfecb94", + "nonce": "0x6e" + }, + { + "contract_address": "0x78a6b3509b18bce8fd600fe914dd16ee154138f40254c2eb40474907a597574", + "nonce": "0x3" + }, + { + "contract_address": "0x79e04f20c4d3e58cb28161553ff6df570801894228e4eaa916cb5a7674a5e61", + "nonce": "0x3" + }, + { + "contract_address": "0x18c692b667e9cdee0c60482f0dd1a73724c7ba3acef072eccad50bad3800112", + "nonce": "0x151a" + } + ] + } +} \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/638353.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/638353.txt new file mode 100644 index 000000000..bc9657b57 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/638353.txt @@ -0,0 +1,9267 @@ +{ + "block_hash": "0x57c5b9cc13437a1af62837148503d9390d02716d3453e007b78df59bcfe83f7", + "old_root": "0x119966f969516343b78702292557ef1bd02841f9abed18555c1944cb330f29a", + "new_root": "0x53af8e4a2345f7c3f23e408d3755a964ee0aa18a7b1e174df636a2126209aa5", + "state_diff": { + "storage_diffs": [ + { + "address": "0x64ee14b97cf133b4c742c4d544bd04676c8ae655efd9e60c66ba7208dc814ab", + "storage_entries": [ + { + "key": "0x31e7534f8ddb1628d6e07db5c743e33403b9a0b57508a93f4c49582040a2f71", + "value": "0x2707dae778a417f72542a1f98a03f2aee4bbfe6bd47e1b31a94ae1294926c01" + }, + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x413f2dc4b97e8af93d6a0cd0705d38f1663dc4819a817b33be0e3e667523ee1" + } + ] + }, + { + "address": "0x47ad51726d891f972e74e4ad858a261b43869f7126ce7436ee0b2529a98f486", + "storage_entries": [ + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0x500547e1ce8" + }, + { + "key": "0x48be3692ab3e9e8bd4a134a7b958b4e69bcb00a71d4f58c22f9311921f12bcf", + "value": "0x37b28f101" + } + ] + }, + { + "address": "0x10f05d26ac860dab4c2cf904efe3e799814f82fc2d10b601a3f5264c9610456", + "storage_entries": [] + }, + { + "address": "0x1b35be10b7a064c82544804ef21ccde80567b7f01c6154f3ac0161e4141c0e", + "storage_entries": [] + }, + { + "address": "0x494d1b100545da8cc3cb5d56a04a52cc390d81db1163572123df1e25195df1a", + "storage_entries": [] + }, + { + "address": "0x5e865c3ab8bf9b3e96c6e9c1b2e3d5c65e65f22038f763b2a12bfe72587c56c", + "storage_entries": [] + }, + { + "address": "0x3ec72f60407705f957d295543d642f9f6700c51bd0dbf76abf643366b96e3b9", + "storage_entries": [] + }, + { + "address": "0x89e7c35e6d4f1d0316e2315ffb3ed02b3cb2fc6be94c5ea814508bd02d3554", + "storage_entries": [ + { + "key": "0x55d9f9fb083eb4793ad731219350ee084c84d254db8fcfa6fb1ad96c7bb28e1", + "value": "0x1" + } + ] + }, + { + "address": "0x6292c2edf8d4899b321958aa57999b4f021c1cd613202d801446147fde112a", + "storage_entries": [] + }, + { + "address": "0x6f9d157b5b600e4f90b16e418300e7539fb49019d9df8213e1f77ca7f0db84a", + "storage_entries": [] + }, + { + "address": "0x6c798b528dfcba81e41759a2ef0ed0d5c0874e8d94e59623ec46212b839f037", + "storage_entries": [ + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x300daa0ada694f4ddd20646fa2ad9b48469341cf2b734a1cb604e82fd2ab9f1" + }, + { + "key": "0x31e7534f8ddb1628d6e07db5c743e33403b9a0b57508a93f4c49582040a2f71", + "value": "0x550c3acb28e67e5dff91cae15fa63630a27a07bcbcb5f9a95ef5d2c53eb9b54" + } + ] + }, + { + "address": "0x2a6bdf356c6f61b46d9a022b329c9fdf7f974b225d24317cf9fc7e99eaaaf3a", + "storage_entries": [ + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x76290ac75f1e4a2f9ee417c2fd60cf7cb4dbeee076c1585df29c826d1594eb8" + }, + { + "key": "0x31e7534f8ddb1628d6e07db5c743e33403b9a0b57508a93f4c49582040a2f71", + "value": "0x7b6e9eb1f4fdab3e9c69d0929a109d2ed82fb1d138b3b66f6204014af0e063" + } + ] + }, + { + "address": "0x457bd0b6acbd26197d185681e0fe80d1bc928002d419dc1f4a9e3847e3dbff3", + "storage_entries": [] + }, + { + "address": "0x165761d7f11541b8e421a7f685e3a2c1e9bf687e442506671ce680f5fcaf33", + "storage_entries": [] + }, + { + "address": "0x43c668e71074c0ae575296fd46fdc4c264a8b9d1a112d697b875a06a9e18229", + "storage_entries": [] + }, + { + "address": "0x4551ef12419703d3a4e93ffb6a8b1778181a152d955c74b51330da4a0d3f37b", + "storage_entries": [] + }, + { + "address": "0x95c854389f68ac628f661a465e34348f0faf1f5acf23bcbc65562638318189", + "storage_entries": [] + }, + { + "address": "0x5523be94a7861e616f83f1947edd01db906bef2b6648bb89b95fe53f9bb0efa", + "storage_entries": [] + }, + { + "address": "0x42b8f0484674ca266ac5d08e4ac6a3fe65bd3129795def2dca5c34ecc5f96d2", + "storage_entries": [ + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0xc92ae584c8e46ec7" + }, + { + "key": "0x4ca5d64225532a8ece0d732d68cc5b92d509eb10fa97526567748a5b72f0a0a", + "value": "0x1257297d7390eb79" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0xed1b3300d41520a9" + }, + { + "key": "0x3d19d263a362d5d13b2ae9c1c0e43d60f995b3459207707d9f5e0fdc1e41c82", + "value": "0x0" + }, + { + "key": "0x2c3e0c69a9ad769923192816c094e7036d02755a23dd08bed0f26fc6a914f23", + "value": "0x90e7fc80fae37" + } + ] + }, + { + "address": "0x32ebb8e68553620b97b308684babf606d9556d5c0a652450c32e85f40d000d", + "storage_entries": [ + { + "key": "0x8576d042ddede5d5c33f910f4ddc7ca7c4f689de35873d3b95673a64219fec", + "value": "0x1bb5ef2b4e9185540a98a60" + }, + { + "key": "0x3e65716c9b9f010d10085941d0c6e6dfb190695b7cf09a71f0aca74ab94cdf", + "value": "0x1bb5ef2b4e9185540a98a60" + }, + { + "key": "0x4e9417c05bcf183e111558ce4666b053bbfe9736b74fba16b017ab7ae075f1", + "value": "0x2eca917003f6c575067" + }, + { + "key": "0x24dc99466e4418b4fccd818c369e805aa4b2c2e28731ca51ec24311cfb85a69", + "value": "0xd59d4ac7925c9050556679fd3" + }, + { + "key": "0x8576d042ddede5d5c33f910f4ddc7ca7c4f689de35873d3b95673a64219fe9", + "value": "0x66389ef2" + }, + { + "key": "0x2e3f9cadd00a7b869d6b98db5d32847ff18a5561c3f3f7a944380864c8f247b", + "value": "0x66389ef2" + }, + { + "key": "0x25d9306a3dd51d4276fa92f67bcbd66be9d76c61120929a3ca417a0ac223785", + "value": "0xc3db50edf4751e9d" + }, + { + "key": "0x3cdef5d80c6ad04af135e445867114b5ce32ed8dc8de667995f3d27760e3520", + "value": "0x3bd89e727383c477" + }, + { + "key": "0x1131b64255bdb5133d698c0e8b9a13bfacb28f86d2dea7f2f1b1a9f8762a408", + "value": "0x3761" + }, + { + "key": "0x8576d042ddede5d5c33f910f4ddc7ca7c4f689de35873d3b95673a64219fea", + "value": "0xd59d4ac7925c9050556679fd3" + } + ] + }, + { + "address": "0x6d40248098154bfbe3e35bf5dc2a5b5f5afed83a29ab4ae595c95d20074f83", + "storage_entries": [] + }, + { + "address": "0x72ee423aad9786da42f17c08df0c449d5f9fda76762338af9006985f74538f5", + "storage_entries": [] + }, + { + "address": "0x6fdd4a454b43b98db278f982ce8cc4fbc461d6df4ecc0165469d6544df3c9e1", + "storage_entries": [] + }, + { + "address": "0x155e28e1947350dac90112f3129b74e3a58d38132c8c26f8552002d78c3656e", + "storage_entries": [] + }, + { + "address": "0x5e61257da5878b1e11dbca4d6080aff8df1cb4a5e5e0e5c232a8a33fd7d39c0", + "storage_entries": [] + }, + { + "address": "0x24e9b0d6bc79e111e6872bb1ada2a874c25712cf08dfc5bcf0de008a7cca55f", + "storage_entries": [ + { + "key": "0x17d4cdcada607cb2ed7685ab1c3549205399decd15b207fef21b69213f46fc", + "value": "0x5ab2d98" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x6db038b980d" + }, + { + "key": "0x48779e997e7f249fcd474f7d574cd4b0fd7eb908e8212e8477025884e769f2a", + "value": "0x27a4afbc" + } + ] + }, + { + "address": "0x3a8c58a2b6652a6c1e1b00fedc578d7b6308a4db5de1ad37c03777fd442c2fd", + "storage_entries": [] + }, + { + "address": "0x7b1d4274b59797440c3b5f389baabf87d9b8e2117d94f57f6f05a89015e5460", + "storage_entries": [] + }, + { + "address": "0x1883f77348ff4325a4f39d6cee57e3c318ab4fa10de0cde8e10f6e5be263b6a", + "storage_entries": [] + }, + { + "address": "0x49d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7", + "storage_entries": [ + { + "key": "0x41c16d0d69be0041e10215fd1bd712363af233590b2b1b0db6b8583eeaa2ecb", + "value": "0x154e7174afcb0" + }, + { + "key": "0x44531fc427da0b9fc70da981d62ac6c68eb2b4e7b4ba67851844b6d5a9c36e", + "value": "0x132690fd7588c" + }, + { + "key": "0xe9d52020abe668871b5acc8b7a6acca56061c93d938c2cde1cf16d085dea67", + "value": "0x44fc344e6400" + }, + { + "key": "0x4f92a01853bbafdbf9ec41b3bfda4b03e549ce7bc62cf33bfc8fa2e5263fdbe", + "value": "0x167fa583a38cfc" + }, + { + "key": "0x2199a33a953f0fa55e511fbef8103852a57ec6680658de55a6f5f23be5d2806", + "value": "0x41ee7aef8adc69" + }, + { + "key": "0x6b4eb38b5c1c57a3f6c841a6e56a9b0fc53c454b4d95fcc2f6ec2b11a7b4553", + "value": "0x5b4706ae75a16c" + }, + { + "key": "0x2e3991ec240de1c0bad1de178cdfffa171b0b24b20761d100ffdca32172bf23", + "value": "0x21b86a50f20ea" + }, + { + "key": "0x4a72e481245c56351045dd2e8aebbc0ec2eb6a4c0a9bc1e71ef5dd4733b04db", + "value": "0x18b56069e0c6b4" + }, + { + "key": "0x765e4afe08228f7ede71c1ed5296accce8247c83757996dfb07e6222a2b63b0", + "value": "0xd8c4626fa0957" + }, + { + "key": "0x30bdb5b9eccfee559dfb6ba70cbed17a8a640e2bcad4e34d70b7dc433a3d015", + "value": "0x1c48f71328754" + }, + { + "key": "0x74c2e16562b96d61285c428cfd1e31e2877218be9a3cfbcbf97751c589c0955", + "value": "0x14f81159725e12a" + }, + { + "key": "0x3813d7d80eeabccc54e235786e7ef0cbb56d2b0a3821907eaa8187ba6782dfb", + "value": "0x12b3902ad4795" + }, + { + "key": "0x165243305aaaac67d300c7f030569236f3935274672b6c155713b8b6734fe9c", + "value": "0x35066658a589d7" + }, + { + "key": "0x2024a1fe5bda62426c5ac6eae7c0a75ce5f2b581eec50700f9a7c012f3cad5a", + "value": "0xfc410ec5da408" + }, + { + "key": "0x23a94b9e937669f20a7e51156c86031cc4b34311b868ca3d96e1d1456fe91ea", + "value": "0x1324514b1da52" + }, + { + "key": "0x13d0c87635987c37a5fafb2f1252457cc5304affd8a6d7eff25275377aabd5b", + "value": "0xc8db8b0692cf1aac" + }, + { + "key": "0x21ee5fbd07d844290ae34b98bd3b3ab1c3de6de806f83ef4b088d6a6d44a2b", + "value": "0x28e2a792d98442" + }, + { + "key": "0x1273d7ada552aad556e75f3c61b3ccc2250d3bab5a1229f215f150bc62e2287", + "value": "0x11c141b83a0cc" + }, + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0xa62d5c223483876c29" + }, + { + "key": "0x3d631e2afab7ed33b20c0e3280a32b6ef10d7dea262e0b83cb501832d6152c5", + "value": "0x11da772d4c00" + }, + { + "key": "0x70d042b8580d484ea49cd080d6d94610bbc7eb79e48a362b06320aecf6d6267", + "value": "0x52d178338a" + }, + { + "key": "0x18c49b8466b2a77f3077cf122ead37ee9f236f6ed2383f43804c7ea5f25335", + "value": "0x2ab213baad0b5" + }, + { + "key": "0x76443e18eb2b5bcbeaf536efe73d162c76f3c5a5b3bae039219235389e5037e", + "value": "0x244471d78087c1" + }, + { + "key": "0x547f8114927592559689f3723f98f995af7f74cbda36db122195f71cf3c2692", + "value": "0x2d1f0fa55a258531d" + }, + { + "key": "0x271bc238a1b6a93e96f9da3c38be349ea27dae7042520ece2f255cbbbe2b851", + "value": "0x771b3331c71487" + }, + { + "key": "0x6f80a0551db28ff14d214a691c0189c022b317600cb5e850a8bc7fd50424640", + "value": "0x2c1e3e7659d7" + }, + { + "key": "0x4f144531ef49da3b7795fc58e9e1ec998346084989be3be408187ba013c83d9", + "value": "0x99682f90da348" + }, + { + "key": "0x3c5ede3caf1dde6ba793212dffb7cda27299f060ac8d85e94293e37a872d19a", + "value": "0x4c65c6294000" + }, + { + "key": "0x6a403d296bbaf09261ce8e4df00a5a31b5d206e13e99c51971e09a6a423c6a3", + "value": "0xed2e26fb104ed3" + }, + { + "key": "0x65831f2c135d6da0f933818e02d3a90bb481a58352295c26841acee161c7bf5", + "value": "0x119b99ec4000" + }, + { + "key": "0x70c18ab354c3591a692d0829ae495c5221dcb89582a008be0030b179133efd7", + "value": "0x54970be1e549ba" + }, + { + "key": "0x44a00c2a4034f437007204621ea95d35a4949c3aedfe9a1d17219c42bab07f4", + "value": "0x12b0e803602b4" + }, + { + "key": "0x1735133d3c7d18248ef6430dc6d9613250148b4121bdf4f9869526371168881", + "value": "0x1ce7250989fd55" + }, + { + "key": "0x1424a90e1a235c3b1bf7d4b70c51c033d9e2657bbc8fa156caac5b1cb3c690d", + "value": "0x54e88ec580dbb" + }, + { + "key": "0x5953aed382427ea6f97b8eaae4272bb22fd5ae9ae41f8aca593654185e70103", + "value": "0x9c4acebf721a2" + }, + { + "key": "0x3f4d49108fa32d894c30c4f96354f7486e85c530313277bf84172a5f6d74d06", + "value": "0x9451ca15b538b7" + }, + { + "key": "0x345c8e515d194754f4ad9797d2839c09cb136f2015bb4d62add49e5fd858b45", + "value": "0x12dada8580d91d" + }, + { + "key": "0x38be05b7905959ca335f4a523efbabf265c5b70b090ebda2ac81a077e717174", + "value": "0x8a55e59edc1ac" + }, + { + "key": "0x237420549e04282925bdc239aed4f21136a1db5a7c8e231e87d3d4b71f49a04", + "value": "0x1329c4fe34fb4" + }, + { + "key": "0x198cad3852091abe6c9f5c48eae1534d0b36d9808cc1d35823da39766ab4864", + "value": "0x1d96bab50bf610" + }, + { + "key": "0x3572d15a927f266ee4d54f158ec12aa1267afbaafa794405786aec404dc89e0", + "value": "0x3934a4bfc21f42" + }, + { + "key": "0x6316da0c87d2040a0a1a3c52ea9a3b9405c812565a1fbdab470d97c444b465f", + "value": "0x129cd2135f0f6" + }, + { + "key": "0x6f541f9f8344075aec705326dffc0d60feacb685eb10c6d47ef83e87003cf4e", + "value": "0xb77dec635078c05" + }, + { + "key": "0x284f6da85e0d7c2efa9bff3bda8b4a460d2fd0b70fcfcf74ec7b14d8ada32fd", + "value": "0x4f154c7f204648" + }, + { + "key": "0x6596dfca243a315fb833094ea4a15c81936dd6207f759a31636a71bfaa9619", + "value": "0x12ab82e31b6ba" + }, + { + "key": "0x72a74be3e7b5c6b874aad97e7fa4896400b964d6905a2785a4e8437f010eb67", + "value": "0x52d178338a" + }, + { + "key": "0x6e8be713946e5e06951a9cc1a5d4bb912fd8ac5242786ad6d72b032d674e4f8", + "value": "0x11eac3808800" + }, + { + "key": "0x45904b8cf4adc1ab6ac03c8f5f99294d6bb239c2872365ec8809777d68f78d5", + "value": "0x1a085fad860681562" + }, + { + "key": "0x324f16fcc2adf257832d2a687f3307717a65b218b4b847b387f63045c97fda2", + "value": "0xc42b35e7e0d5222" + }, + { + "key": "0x65937e698f98da7cf9294cb8381283788a7fe57e8dc7f7334c62126b8a82a5b", + "value": "0x4817c6888f044fd16" + }, + { + "key": "0x3e3c1a3c01ab34e8c67b37357f60f5c9e038461f989cf7d8cb6670a2ddb2e33", + "value": "0xeccdf99cf70658" + }, + { + "key": "0x11ae4c0a3e38efc087e095f358e603ff367c328431ea82ec891273776d0eb17", + "value": "0x37d7435cf12ed" + }, + { + "key": "0x47c9ad8d055445b1203c11de21cd5b24f5e4b63cf5e8ea181dc6767fb2c4bae", + "value": "0x206e69aa165310" + }, + { + "key": "0x780419cdd24437998b984bdcf8ceaadc6a72fc6ff2f9914516f0ec26e2ff8a7", + "value": "0x13982a13746181" + }, + { + "key": "0x641340d1240e9982c641a4936727b90e7fb353e4d323d88755b69cc50eca6d1", + "value": "0x25a33b38d11bc5" + }, + { + "key": "0x3b291d029dceb92559a30a7451189a37e8850b2fbda3e646762055a1112d448", + "value": "0x6ec532af8b48" + }, + { + "key": "0x1de9a5fc06b280a2f1a0e7913dcb457a92189bd14419bdacda230393dc98e46", + "value": "0xc31ae5b8360" + }, + { + "key": "0x588eb0a1216782f93e2fd777785832de0e04a5216680c6e5bb7f0e9760ad2d4", + "value": "0x121b1f08b600a" + }, + { + "key": "0x45b35cf1cc47315ef3311d3e67f0112b2fb9ca2ca139796166cca3d649b24e", + "value": "0x2567d320724e4" + }, + { + "key": "0x3ca6d436ad25590a062c2e24c47b8be36ea73fe5faf47b1df23066169b60458", + "value": "0x81e4dfb0ccab2" + }, + { + "key": "0x69d1ad2c8b0376b3fcdcea2899cda191c731995596fa97b608dfe73ceb3c6cf", + "value": "0x52d178338a" + }, + { + "key": "0x110d72e967a25e84433e44d5dc11f3ac9ebc2b1cdc33190a97d01ce2e3798cc", + "value": "0x1feee944c393ce" + }, + { + "key": "0x4586f4c0ec33abf3b6f7637a4964d81c35ac99378d9cf1d47f25676617a7264", + "value": "0x127885ef61a1e" + }, + { + "key": "0x7bd70acf722dc27fa9c82ef4b8b538e1eb0fee089da0ae871fd6e5a6d355572", + "value": "0x4f71dbb842580" + }, + { + "key": "0x512833e246671faba32da48d87a40629e7dd17b40257ec590a6e17c8ac96dcb", + "value": "0xb9da562547ad2" + }, + { + "key": "0x1d2b6ff1f9804536f31024e474248787e4d714e12116efffdcadb6a3a829992", + "value": "0x127dc8758c781" + }, + { + "key": "0x17d4cdcada607cb2ed7685ab1c3549205399decd15b207fef21b69213f46fc", + "value": "0x178edc0e93ea0" + }, + { + "key": "0x47cefb2eee01586663db563048809e6a197ba3bdf46e6ebd1fa5a124963fd6b", + "value": "0x0" + }, + { + "key": "0x4deff357d812e5567e8e01d519d6ae9d4be61cdd455315b73d300ffb283ea46", + "value": "0x445490f64400" + }, + { + "key": "0x7f540a932b5de266b6c866fca1be8ae4b932a349386806aa77a2cef00d59259", + "value": "0x13098490c2f29" + }, + { + "key": "0x25186327234b2ce3b0255eb0ec60e95e076f9925147727c67aac17456d44e14", + "value": "0xa9b85c948ad2b" + }, + { + "key": "0x4ac2c57c9aba49b2a9733fb142568c81e2b0572c45a8a1fbe4972b9dea87814", + "value": "0x692c87a0a65f20" + }, + { + "key": "0x29c6e15e84ada3d833af845d16105164157bb8531ed2132738f6bc953df8109", + "value": "0x12a136113330d" + }, + { + "key": "0x36d43734ad47c9766163f2fea51355b7c70a581989675f02f31ad7763727de7", + "value": "0x9d3ec44357812f" + }, + { + "key": "0x3fac05b3718b3011ddc6f97b6941105e7c1f3d86db3d7c10268edb9de52d958", + "value": "0x129686cf07038" + }, + { + "key": "0x4da559f14a69ddd84d1889b2a4b177c83ed440e51ce1f65a6ac0a4da5e53339", + "value": "0x12be10d7fc930" + }, + { + "key": "0x766b2345032976aafa18db2f8eafebe611103dff38452a5d0db2897220cc4f1", + "value": "0x377fe575f9fdd0" + }, + { + "key": "0x3e3e3fa1db1414c7798056c16bd20a8bbeae6cfdfd7e1d619ce477d36453f1d", + "value": "0x197eea7545cff" + }, + { + "key": "0x67bf50479facce09d0e26e1f7dcfc15ac716bee837a187915b7250da6b60681", + "value": "0x1cf47f29e4cd8b" + }, + { + "key": "0x4a99d105c330cfe17fe19413f871704c739b6641ca3c6eb0061e2d06a4f11ed", + "value": "0x27dc4bba3924cf" + }, + { + "key": "0x3a6ab3d243d87f90e045dc01e7b831c5e485ecd9be90617b520054063b0159c", + "value": "0x12997455e5cde" + }, + { + "key": "0x1caae6d75a3e87f94c454e8d06aec0ac3cec705bb1a9bb31393e5301f8600e8", + "value": "0x12309ce54005" + }, + { + "key": "0x271a7a245da3425e67d110f1be756373272c12c061c383a6095c90501fbca7c", + "value": "0x3003739027d9c" + }, + { + "key": "0x3ac4fa580b4ba1604848bf1643395238c7e632b719af7e057a2f90905ff9667", + "value": "0x131c0a04748a5" + }, + { + "key": "0x55a33869e536ca83789615a450fa2360925d05676d9803ad1f7a802e2eae53", + "value": "0xd8e01f711c51a324" + }, + { + "key": "0x7635558e09dff852046d20a7b3149f304560c481a6719597fd3dd62f9f8bec5", + "value": "0x9ad56ee3ccd52e" + }, + { + "key": "0xbaf2ae35012a38277eb44e674ba3e1983efd58e7662509ab78271e73c1344d", + "value": "0x11bb4e5005e14fa6" + }, + { + "key": "0x441215e4cc4a6a330dcae3037f9553578fb21834b78b99247b0704c8b4a5fca", + "value": "0x0" + }, + { + "key": "0x37c53b331d3c30611bf2cd957b0fbaa883c9805b50bff084dad6c6ba375b2a2", + "value": "0x1bd79a75096515" + }, + { + "key": "0x189de86ea35ea3dc0f2cd9dd6ab446ebfd85a01742d6aff2637bbde94a1cca1", + "value": "0xfa9339c4360c4" + }, + { + "key": "0x4ab851af7c319653ea03e239304e83bcb6fa56f3871f6ba955de11ace8892b3", + "value": "0x12230cd8b074a0" + }, + { + "key": "0x1e0332d9dda869d14e3a01d051182f093bbe1e6e6c22ce21f72b7940d9fc960", + "value": "0x131efc2d32965" + }, + { + "key": "0x20bb1ee3e82147073e2e5699a1ac5f9cf721454f3bfbe556a7fadfb77f311ec", + "value": "0x13261e6d6f3af" + }, + { + "key": "0x177498139c47b017aaf6cb101c57669af474d4cb6794ddddad395e9c36718ab", + "value": "0xf010cdbc610cab" + }, + { + "key": "0x24f68acf9693b30afcf5f1d82b163d1d7aeab8aef330f6350ac7e0bc1aa4d9d", + "value": "0x16a0b04f884d3" + }, + { + "key": "0x10428edb40f5de8839ac44f594696c1ae7d6c532194afe991ab0bb21a0205b2", + "value": "0x1a2c5a4217aa" + }, + { + "key": "0x3c3bb9f266a1ce0c28b39a0468c1da7883363aaf473809f40cecbeda6c8fde", + "value": "0x515be074ffa1fa" + }, + { + "key": "0x62de966a9ce9b50dee89605d0ee87424377db9295de7aca5a17d9c9b1162063", + "value": "0x1521a7c64db5f" + }, + { + "key": "0x77d81236d4256c6920c1a83b6086f12675ee3c876abeb756d7912ed5dc6f5ef", + "value": "0x35dcf243a6957d" + }, + { + "key": "0x3978c669798f062e3c3156a1c5a5af7f18297e02d0dbb4c29ab8a387f0f1ce5", + "value": "0x853b6393d8fba" + }, + { + "key": "0x3281203c405c2b146cf9bdd145d924d9ed9632113f0a18bea9f0a47e409fb3", + "value": "0x12948677a5964" + }, + { + "key": "0x634f4692e578be6e762a3f4b04c3040ec898eedca27bd99e18e1765c25d9494", + "value": "0x2610bbfc7f14a" + }, + { + "key": "0x2acb22cfeb3f8fcc26417d6ac355bee2335300d557f579d061516c9c1f97d84", + "value": "0x68ed5b54281a2" + }, + { + "key": "0x709c519fa825e0520bb6dfcfcef687f7b55d3b0835faa6d3d9d0e9cd81609c5", + "value": "0x132aed4cfc64f" + }, + { + "key": "0x4dcb17bb7b8a222cd743a6d96d7ea845df7d00ae4d8e95fa97287c8dfae5474", + "value": "0x442bee7ed67bb" + }, + { + "key": "0x8f6f75b864fcf54cfaa284c9ab13bfdeeadb5ccb8ecf2e4265770a9579bab1", + "value": "0x134ae70aa8a1d" + }, + { + "key": "0x7a57269eb532bd456731969914f7e0e17304bf05add0a5a93979e4144024df4", + "value": "0xa9b176cacb2fc" + }, + { + "key": "0x4ca5d64225532a8ece0d732d68cc5b92d509eb10fa97526567748a5b72f0a0a", + "value": "0x30bb43bddeecb91c" + }, + { + "key": "0x299a06d15a4d54b1db16d0ff7ca33742f3bced167fab4bb732b5a82079b8223", + "value": "0x150493fe2ac94" + }, + { + "key": "0x787fd6f9593f54f8cdf06f8ae609eb9cf23aafb8574c2cab2c8289c3bbc9646", + "value": "0xf92de6decdeea" + }, + { + "key": "0x18d7b079b471cfde70d671fc55b3c06d4363cdc22201c09924822902a33e019", + "value": "0x259b1184f3bfd4b1" + }, + { + "key": "0x4d0e927c8a62914ae1cb5c257ff484f28cc3714fbb2b8211014a421e8e62fdf", + "value": "0x2906fd869c00" + }, + { + "key": "0x6fc34748f9e9d5b403fe4b31218ee0f1b10760245a5da13858c3dc96ca7c7a2", + "value": "0x15fa4d7ce81e30" + }, + { + "key": "0x2d963ac17e873558bbbdd487c1c392da35369635f71bb6df8138f62d0a0c948", + "value": "0x8054c8b939ba81" + }, + { + "key": "0x3aa6efe4660fc260ac29bf5f4b60fafa9cb67c60447e9264f39077276c67671", + "value": "0x131b3dc7858bd" + }, + { + "key": "0x283f82e9b4ac51c320f5ca95401ca5b3192f84c8f85c79927fdf3f770cde799", + "value": "0x221b262dd8000" + }, + { + "key": "0x34eaade9f12dcc6e6385184e591dc1308d98187c7da26503b1e5c4b5b03d9f", + "value": "0x198c8737a31eec" + }, + { + "key": "0x3ca834e88824e9b07a10b48fb267588d7db99829191253711f8cefb9dab51fe", + "value": "0x82e8d9aebeef0" + }, + { + "key": "0x1e587de87d0e6b6c65e44395b0f5232ef3097fb031f4404bfbe60d2ba4fe054", + "value": "0x5f4e7d62f8727d" + }, + { + "key": "0x1b03bc5925651a7ddc19d5c045abb2b85a49095b5924f1e5b6a79ece9298516", + "value": "0xb67c3bc3e151" + }, + { + "key": "0xbda2b4668fa184aeb602d0259bb6c0a199751f90c75a370bd8f7b079fe1a54", + "value": "0x7ceb977ec1c30" + }, + { + "key": "0x362fa86a892a77b0890302168d1db6c9520429ae03b7ded90a860c6f96a7993", + "value": "0x12c947c167570" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0xec804ef6de7af1ccfa" + }, + { + "key": "0x599b39b8f0e0e064f62ba921252b0735c2732a18e0b87e5b66e7f235d05dbf9", + "value": "0xfffffffffffffdbc4e58ca6a3b8c4fe9" + }, + { + "key": "0x5e8f6d0308d5c4afc6106dfa0bf003251ef9c487db392bd16170a5f5140a0e0", + "value": "0x4e86ca8fbd" + }, + { + "key": "0x2eea42ed6e3cc12a7455fab2c410c170f2537aa70435c7a6d45372ceb2535ea", + "value": "0x12313e67249ab" + }, + { + "key": "0x29e640a33b590a1304ab678b7c1fa1ab3179d74e7c682d5ebd54f146f9ed07c", + "value": "0x33987b7f8400" + }, + { + "key": "0x4596d6cfe605d74b57a3f9e6373a60c09bb19dc8f2f446d940d486dd37cc742", + "value": "0x12fcca2fb8dc3" + }, + { + "key": "0x3835f9dcb05004929d96adaac3638349af649481fd3080f5f7b66f80ad0287f", + "value": "0x6872b8b11b85d20" + }, + { + "key": "0x13d64dd9ab18f63f21e534f25aa3ced309394fb420cc9d1416554691b1cc2e1", + "value": "0x1336ff317dd51" + }, + { + "key": "0x4a0e3fa08de4d04168bc8d4c066167b9dc6509f1d02fc692d0a70d256bde1fc", + "value": "0x48fb80eb4c" + }, + { + "key": "0x158deb8dd40b2948ed55af989c2766e45d60322d9cde24dc50a6f3f717703b7", + "value": "0x3e99fcd91006582" + }, + { + "key": "0x38e0503b87211df933ca34a5a6f1677f88d16890ec6fb843e975e273e80467e", + "value": "0x527d2fdaf25efa52f" + }, + { + "key": "0x5fc680be20dc136605026568e22942bca594a4a8b5cc43d926e8b9b1bc64105", + "value": "0x21e4af4e7ed13c" + }, + { + "key": "0x3d19d263a362d5d13b2ae9c1c0e43d60f995b3459207707d9f5e0fdc1e41c82", + "value": "0x2f33d00d8dece7" + }, + { + "key": "0x286655063ad1d88a9a071ab46436070397135a1e719dba3c21148b4a306a2ef", + "value": "0x531ec9139f128" + }, + { + "key": "0x7c898015d17971a5a437227e331b68083001910cdad8ce8fa7eeafad8a912a1", + "value": "0xd0075d8fae82b" + }, + { + "key": "0x38f8d853a9bf4d8e9c4acd5f67b2332dff5a1af59722ea085d89b3fe06c1c75", + "value": "0x3bd2a41a1b0f5" + }, + { + "key": "0x55c16b532f4cfc60fff710c850bc84208e13a295ccfe6bb8bc1def93d91a9e7", + "value": "0x1c8ffaee5b6cc89" + }, + { + "key": "0x1f03aae0b2f1b8bf531eeb5982cdf0feb79b056b5bcf45212ddfcfcae5cd6bd", + "value": "0x9e6293d09de45" + }, + { + "key": "0x5e1f570c042632bd0992d7870562fe3688af1c612e43e32af052b8d3455c6ed", + "value": "0x1ad0f0ad22426" + }, + { + "key": "0x79ec03635103950131b8f68a08332de7301ba65dcded1deb67fc1e5e410194", + "value": "0x1183dd8f209512" + }, + { + "key": "0x1e870eabbe6cbbb7ff88727c2c9fc40a3ac30e2d40ae45bd13280e0a03f7e55", + "value": "0x3fdfb233dc00" + }, + { + "key": "0x3db1515a5a11bcaac776380f94c46a5e7be31ca627382d2dbfe114602bdb448", + "value": "0x354dda33bfbe030" + }, + { + "key": "0x35d618f99069529072914f5f7257c5cc5025e83efdc507ac38e96b60663bb36", + "value": "0x224ff974e31c3" + }, + { + "key": "0x19c970cefc422162ebd5198f037e77b9ffe8baf38036ef953c7eed6ad03d524", + "value": "0x13107f92854aa" + }, + { + "key": "0x3d2e4e91dac6980c6be13bad2091faa3df5f822559e13dbabf8e852cd0e4f18", + "value": "0x13603eeb88e33" + }, + { + "key": "0x6c3f283c1d20f5bb6c6c9adff038411381282826dfc8a12d0fe4a281da4e3f3", + "value": "0x9243ca6c0023a" + }, + { + "key": "0x6201def73d4406649f58aaaa69536cb7e436a991c421d2ee69b62c22d15b221", + "value": "0x45fc516a5c00" + }, + { + "key": "0x682ce19abe2c9e7f49c7d9a3191cde434d5039056a4622245890828612578fe", + "value": "0x4d1da944f5" + }, + { + "key": "0x657bd3afc214b7c28bcdf8cc1536471acccd5e39ffabf1eba9960ffaa0552fb", + "value": "0x52d178338a" + }, + { + "key": "0x6e1f7e9849896fef050356c4c33ffe31d22760133d859c9b8aee1c512c415c8", + "value": "0x4772bef35fea2a" + }, + { + "key": "0x42e37b2f6a4150e8dfd45972a315ee0f43b037f39617fa04f734d1aa984270b", + "value": "0x13758c74495cb" + }, + { + "key": "0x2101db38f0cad848c1f5fcaa03de2895b1529d38a8a9d092591af981dec45cf", + "value": "0xb23cd4b934f1b0" + }, + { + "key": "0x476d68a1f48d526d43da7eed9e7771044742dd0fc5cdd231c875eb90e001b2", + "value": "0x9848f0f055959" + }, + { + "key": "0x3d402bead8a4d87e103281300893b3362a9a25513f764780b58efe4ff4c90c1", + "value": "0x0" + }, + { + "key": "0x67776a6f5994e1c5180cf235a1ba82766ce1815d4f4ce77490919fcee4e5050", + "value": "0x1318ff89d65c7" + }, + { + "key": "0x51f35546ec79fd8ae7454693d83589be557ffe50e4bfcbb0aaa364cdfbef4dc", + "value": "0x12ecda7214281" + }, + { + "key": "0x516223f18baf4baff71e82df0e198f767c1ee5ffbe21415ff5b28efa7688a61", + "value": "0x12ca2b2b13db6" + }, + { + "key": "0x68245e1bbf3ef8460a1672aab87298fa401eef22c856ebc288135d1533cc0fa", + "value": "0x1327e18955960" + }, + { + "key": "0x38c52afdc9d827770181d681d42fd9641fbfaa461a4bee56a60be146009770e", + "value": "0x24e488b04c9bf8" + }, + { + "key": "0x3e462fc7483caae75b622fcdf18515e902aab14cbf63945561c0b50d15d6c2", + "value": "0xfa2fa4651650e35" + }, + { + "key": "0x1950058c332a9abf770c8c621498d2c7388ebd7e124b044242070583eb493f2", + "value": "0x4e86ca8fbd" + }, + { + "key": "0x3de1f84248407d0d58bc007a81aa60114585d5b22e68bccd85ea9b769d807db", + "value": "0x16d88e7481927d" + }, + { + "key": "0x2cd2511732a9843ff6d1453df7e939399e5a88421ab77ac57fa48255478a754", + "value": "0x12a5e8250c9f6" + }, + { + "key": "0x1c0d06bd7060fec0ae69b82cb9dbed198512b21e28f74090aed0092ad8497f1", + "value": "0xa772896217464efed" + }, + { + "key": "0x4d47d3b08668fedf5b936399a5d0c8f64a0b7b2b32c1911edbf876d26ea9789", + "value": "0x131ff44e77639" + }, + { + "key": "0x3502ba665105324e00dec6eb71cc596afea3a57de8402ce31b6aaa891316395", + "value": "0x27147114878000" + }, + { + "key": "0x12292216f1fba606e8db4f46e31894955c2c51272643e77418817f997df98e3", + "value": "0xcb5a006795f2b89" + }, + { + "key": "0xf8e3893f6f860f17316857214436b80e55dfec602ffe335de060167a2e4044", + "value": "0x48fc707943" + }, + { + "key": "0x27f7ab2b85939d9cdff6a85649189a376a54d0deb6519d75908a58cdfb4f2b5", + "value": "0x1294aa303adaa3" + }, + { + "key": "0x38e1f0e1a45b175a229aea9f3fb183ed2456bf7d172eb0c02f765e65ee5fc7", + "value": "0x191b04652b899c" + }, + { + "key": "0x71b6b8533eeb85cef95d24d72936e5e8031946968d57f267762801163101b46", + "value": "0x12fb4df475272" + }, + { + "key": "0x46e76525082084a8cd295f1d330e6e57cea0a7f563efe6339781aea59996637", + "value": "0x184355222eafd" + }, + { + "key": "0x2e41e762a69f7dc104e9dc9a66842a8480a6146c8cfb06be0154809ac316d86", + "value": "0x3b66ca4d67e54" + }, + { + "key": "0x14a7b53dbe641a18077aacf7cbeae9672b32aed1f989dffac1c723e3ceb3f8d", + "value": "0x12d638cecd3de" + }, + { + "key": "0xe3a3a8c197db9a0166eb1ff0aa51462466fdb0a862acd9a04d2731ee305321", + "value": "0x549091d82ccd9a42e" + }, + { + "key": "0x599cde1350fefb3fb3247691b37271571fb16a7d3a48841e61633a04b25cd1d", + "value": "0x133eacff4f37d" + }, + { + "key": "0x706e593a2e899c16984e8225b8f11aac1124ab0193b80b307337416b1d7ffc5", + "value": "0x3da796de8c00" + }, + { + "key": "0x59e75d991e38414cb03337b2c33628c0e610f3d0e52ca5e7c8d8dabd4b07358", + "value": "0xde39a41cf5c2d" + }, + { + "key": "0x55db5cfee7aeaa16b1f990cb984b5d0066758da51c26ea69aded22d8546658", + "value": "0x448a1e07c000" + }, + { + "key": "0x99ff64f8cd4aa3301dec7b19f4052cd68a1fb5690f6e017807e97a46d5e08e", + "value": "0xa2ee1b9d8d2bbbdaf" + }, + { + "key": "0x5efa72fd5f574f3f0b98f1cebad5571e0f2644c5a2ed4e5dc40fbafa6aeb8ff", + "value": "0x4d1e26d00f" + }, + { + "key": "0x3f7da3e97c56d9b22e5102fa2d91355eaebc11663c03f6cb21c97ff5404b6e8", + "value": "0x129c244a2fb6f" + }, + { + "key": "0x3d7ccfb9e9c5944c7a3226921716da0d42239892dbde7b12c1e5597d31c4124", + "value": "0xcf71fc43210cbf094" + }, + { + "key": "0x267866d5ecd6681ed693377dfa5f81ccc8edb8bee6dca23c5c63d906fcde660", + "value": "0x1a6d87941713f7" + }, + { + "key": "0x5513baecbc5a942a7c7d34a751b15ae250ade1c72eeaf2ef40ce16aa3461699", + "value": "0x4e86ca8fbd" + }, + { + "key": "0x748a28d66489adf34d96b886a65418d77e7393d29fdea1a8a26c21fd984fb64", + "value": "0x2971a8cc88048d" + }, + { + "key": "0x770379e78388b2387012d22209788658de118baa37e97365b8c2de0d136c72a", + "value": "0x162aab2c7d76a" + }, + { + "key": "0x3d05f3617f658f96e28684860a70474bf64f23d1d9cb04acd9f5e20cdb9133b", + "value": "0x16d9465fe6003" + }, + { + "key": "0x6dafbe51f65226b5818ab9ce9c696c186c969c38432785e2a97669b9f762369", + "value": "0x52d178338a" + }, + { + "key": "0x7e2e6398668a0cf3548af433113ea305d888088844438dd4c954c647117d077", + "value": "0x8baa72714bb18" + }, + { + "key": "0xabd27c7c50920b8b2deced52c892798d4fb16fa827d1ec52376dcad7535ae6", + "value": "0x13279cbe169b8" + }, + { + "key": "0x30f9c8cbdfe79d510f065f8a56f923fe3bdc35b59bca3cb56b39e7ccc56258e", + "value": "0x2c1e3e7659d7" + }, + { + "key": "0x2a9157f88e0d4e461c48fc964ff975277acdbb339fda5368da95331196f4ac9", + "value": "0xac36495fc49a9" + }, + { + "key": "0x16ea1229ff3489da9ec81b986551a0284c59851e213928e0fc9b4263aefee33", + "value": "0x48fc5a72fb" + }, + { + "key": "0x47ad2e6564d72e603afb73ae84c22c66bba2d025ede35845ee8ece0799ba5db", + "value": "0x107de34ffa1b02" + }, + { + "key": "0x4ef92f2d51ef13f3624e815a750db7ee26386efa3ce7e0d83919918225b49e6", + "value": "0x1286ce6b1f801" + }, + { + "key": "0x45a138a7f89b67e90717242e1d134504a254eb41eb4b9d633202366b4e4a297", + "value": "0x119c069c514e69" + }, + { + "key": "0x6b2539d15f6e619ad7a52d23d46177dc08dc73f62b55710e9abf4eb671117c3", + "value": "0x12a1730fa7291" + }, + { + "key": "0x535a79f9174bba81e6e2cb69667f1a0cf4dddedf2a7e1864aafe3b5fb607353", + "value": "0x24301f9fe9edaa" + }, + { + "key": "0xb1c0ba3d9401785a3486820d959109ed66afff291997d3b7b871bd96bbdc08", + "value": "0x129ba7be795ad" + }, + { + "key": "0x3d9d3855a158af6678762d45d0e9d7b1ed8b7d643d8f5394976375686a90b28", + "value": "0x603253e17507" + }, + { + "key": "0x5d955887e7a803c96e268338585bde86bb16b7d114187593b97e05a7c2916b6", + "value": "0xa50be954817f6" + }, + { + "key": "0x1e16c3b679046b874759b0b3803927ed60ccc9fec0f1b5a5270c70801001976", + "value": "0x35bba269d000" + }, + { + "key": "0x52eca304d8b4f3c3c073c12820f81c7a0b4ad0e9db4ccf1714b4c39cc54ad97", + "value": "0x54a9ab871d141" + }, + { + "key": "0x3d3abb0e3cb7ee47a907f4bb6d5907400a76b633997868e8b8516df8459c0b0", + "value": "0x1637ae08960e07" + }, + { + "key": "0xa2f330da872b9f360a0cdfb42a31a6f8a1a8a752a63cb86c4cdbb839723ae4", + "value": "0x12a2ae43befb3" + }, + { + "key": "0x7ae634e3d7c7dd23f6cd06c1a1a752d4651a782438f3d111931c0c93f9e5c7d", + "value": "0x685f7206b53aa" + }, + { + "key": "0x74d720180672745dd99c963727ef65032a04583ad8c53564fd156e5bfd3fa7f", + "value": "0x71de975d8553d7" + }, + { + "key": "0x55f893178f607635a20fc04a31f73fefb4e5af36b46ba54e3ff7477b3a74ea8", + "value": "0x55d1e0903db3c0" + }, + { + "key": "0x738b77efb96d982aa5d4ec6e318c8d235c3a47eee7a6452c0a2af1934df93c", + "value": "0x52d178338a" + }, + { + "key": "0x1046c62c385dd7e9cc89b71c784db1795c69342a7d7f7c0680f19799dbe79dc", + "value": "0x115f10b71800" + }, + { + "key": "0x7f99f9e460c9b300cc0d5737f9b6554758426992b7dcb4e47fcd5f97183159e", + "value": "0x20c10289ea5d03" + }, + { + "key": "0x2518ab3788e9686179701248f2fc1cca175da91776ae4b1753b3cfadd545a22", + "value": "0x1a646150284a98" + }, + { + "key": "0x2467c365f975509d1d6fccae4fcf30a93899527f7afa7e49c40f7e003452860", + "value": "0x16cf9cb6fa4d44" + }, + { + "key": "0xd2fd581d6f96d734a9be7bc8d69a0d536aad12ce850756d4aea93ebbcf8923", + "value": "0x4d6f3374c800" + }, + { + "key": "0x5d6d8ce8d178b1da029ef975e79073581b3ae6d3207855490ed259769bfb110", + "value": "0x12caec2530999" + }, + { + "key": "0x3154e7eb4529da881b46b16f175237a20f5a76fbb94e33cc1cd7223c7c8bc65", + "value": "0x131126f2dcfff" + }, + { + "key": "0x3454c8bf35013f2ad53781f21332653eaa98c81614004b10b21cd58792b22fc", + "value": "0x132b8cc6ca727" + }, + { + "key": "0x1a2ace129ea0661004ded96d40ac07aced2c8daa4437fdd87357e9ba25ba94e", + "value": "0x12ca6403975d1a" + }, + { + "key": "0x3f4ee310ca8009457491389f00d9d32910c2cf452b29b7e928058e0340dc17c", + "value": "0x450ed4ad8400" + }, + { + "key": "0x29f46c1e681ffac0bfb0311214662a2a4fbe35dd6e8358268a37de9bfc4596d", + "value": "0x130495b49ec87" + }, + { + "key": "0x4a161488df9a97fe0c45a0c06caee5c0a873ae6eefe25edf78f4275326d16a3", + "value": "0xc5e664f3ff55672" + }, + { + "key": "0x4c4426b38c2db94532a324f9d6f279423bd167cfbb4f08f22e99c2f614dab3a", + "value": "0x339af8e434b2c8" + }, + { + "key": "0x5d8c2a228a2c3d099390d4c0a8dd1fe27c5c8f1e5c2d2587fb2e995e64501fb", + "value": "0x670ffc4cda7d6" + }, + { + "key": "0x6f5a2440fee7fa279409892efbddea8e401aedfdc944ff3b1c55523943bd3f3", + "value": "0xee5cfd0f91b86b" + }, + { + "key": "0x25cb49418a863c485c1f45adaa3fcfbe83a9b37bdbc65e97d97a8c7608a3d54", + "value": "0x12d2c610d55d9" + }, + { + "key": "0x72468e7ba7462a9e57543d6f351006de1cfa5da371a34ef450821fc9153f224", + "value": "0x68525abb3e610" + }, + { + "key": "0x5797902a7e7b9836b96b7e999f6782a90d213c4406c8c46dcd0ef5a20c57571", + "value": "0x52d178338a" + }, + { + "key": "0x27583c43a0f382cc22c67d769cb8218c99d338171b82fb2927fe129daf8afa5", + "value": "0x39d0530291cede" + }, + { + "key": "0x53b7d03d33df5419c43cfaa2e3c236b7e8891ae66cb85c1146c0096a8fc8267", + "value": "0xd9212950c293" + }, + { + "key": "0x281fce64e2f24313a2d34ff7596eba7d8a34050caab72ba7cae728212857c30", + "value": "0x1bcd869df294c9" + }, + { + "key": "0x5d69c45356b245a7aef3c18e109043c2aaf4f965225b73986388f41a51299c4", + "value": "0x51667f1aa6fd8" + }, + { + "key": "0x71a9f2c94c6acc30c755717ee5d65c43d8170a9675f99def3feba67f243f523", + "value": "0x12acfb9fc3120" + }, + { + "key": "0x3b672296190ed6c66f75c528b47635d34a3901ccd689b75cc916f803c5d06a9", + "value": "0x9f9afa7f517aa" + }, + { + "key": "0x4aa2885ee95e2eaf83fcdaa59539ef9301372e916bc2419274d92a453c2b422", + "value": "0x9289ad2776c13f995" + }, + { + "key": "0x41d78985702c7938e81b4145aaf5360f40792a4a643c0ec3d0eb983ff56d317", + "value": "0xa7b3458ec5148" + }, + { + "key": "0x7cc4dccd10de8d1e48d2b545d608bb21ebd798293cc4f931025d5a2e3a060ac", + "value": "0x37cd50a220632e" + }, + { + "key": "0x5460e3ada357c552adbe9fdd830aabe59b7a3b43284240fb606458be8c6e09", + "value": "0x3a9a6838fac885db" + }, + { + "key": "0x602974c408df460b9fc588a90f940b84e3633675fba5b3e4422cb5a0aa4c6ba", + "value": "0x4e86ca8fbd" + }, + { + "key": "0xc35f0cd0c27d435ebaf820064e89b19ffc665a35ac8cf9d951cac078e67004", + "value": "0x1a4d455fc73010" + }, + { + "key": "0x50785cc51ac38fd872db275eae7029c913ee6051f4307d065f07521a490685d", + "value": "0x30c6f403a4d46d9e1" + }, + { + "key": "0x1236ff1c1d6c0d0130d02f540222ca64989f860d3389d5a5b0e3fc389b27868", + "value": "0x1366417e031d0" + }, + { + "key": "0x3646467915b5985647994e6ddb3dd465052b2673b46726e45d647894763654f", + "value": "0x1599fffa5f0560e7b" + }, + { + "key": "0x2c40cfaa9c0aeba40ea0b8f5818e1a12c44c5e9c01c31beb8fd21f5dab2f95d", + "value": "0x29f2b2744c7919af1" + }, + { + "key": "0x22163586fe000dea12f28c402f79b8675e07ad6753d1bb23fc5bea6c0b6fd5a", + "value": "0x3b6ad3717400" + }, + { + "key": "0x8bc2fc13b155f1be376baa91a4807b6eebfc17db285286d099c51c29bc25e9", + "value": "0xfffffffffffffffffdbcc313072c8675" + }, + { + "key": "0x4eaa11756110bd5dec009ceb10fafbb180ab85b60feb2c422d038d0d9fecc79", + "value": "0x17d40d233a0b3e" + }, + { + "key": "0x6f85a3e3854ef8666a883b5fa9b88a20cd1da78a12a9e739346394adeb49d14", + "value": "0x12abc254be3b9" + }, + { + "key": "0x7dd280ad0f88bfb845cc45545d6e8415e574f846183d9b03f7f99e2d33799f1", + "value": "0x26f60a19508a2a" + }, + { + "key": "0x29034e04d095005b8d4cc25f9169e7391a57f7f7c639e1fee745367dca86a0", + "value": "0x1a2780ccc6c5bb" + }, + { + "key": "0x70f60523557b1b8de4e54bcf47d899977cfd86040dab69605c0cd07df8b0240", + "value": "0x71c51617a9c183" + }, + { + "key": "0x60046d4938733045f39caa76d7ab3891c836f3cf489b02c1e9c0e5fa75c6e2e", + "value": "0x58346cf3831495" + }, + { + "key": "0x1ee0e23d02cfc2bfc83f2ed43b1fd3f0cfde2c15e966609c0835f89c1471f1f", + "value": "0x932712c8ef714f" + }, + { + "key": "0x7de980f86957de507840f664e74cb84a1795b445417f3f2a763d5e60db7faa0", + "value": "0x3cc36a514400" + }, + { + "key": "0x48779e997e7f249fcd474f7d574cd4b0fd7eb908e8212e8477025884e769f2a", + "value": "0x3095f06939ae25b" + }, + { + "key": "0x43f1dc47c4ec18dbd21bb96498764ff8e5e29836bba8a6163c346f88b0e126a", + "value": "0x11949dc89400" + }, + { + "key": "0x6d73530f2c06353f5ccb22f5891c31bf4bceb5136689a7847be806d2321a9f8", + "value": "0x1ad33cf6cd17a" + }, + { + "key": "0x13f5135506a2c4304d85d0d0f4ac745762489509e3cdd6735a56bcf6db5671d", + "value": "0x54c94992ee8b7c7a" + }, + { + "key": "0x418e7afe7c71437e1adf1a24a57b90e35035fdaf2160de220271e60cc401259", + "value": "0x494ce34e78e9" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0xff2060eee2bc06c86" + }, + { + "key": "0x5c4b7dab050cbef6466c2bbf719b5969293371d0dcca2fbee9bf16731ecc5d8", + "value": "0x13644d4916e9f" + }, + { + "key": "0x6306278b53883436378bc606d7dab2e70c6190e02fb7e763884593af17b106", + "value": "0x11c582c24800" + }, + { + "key": "0x300e009b23f830876734aa20371359f22dda75a19e16e2237d6fc5e7068d4eb", + "value": "0x29a7ce22a41db0e" + }, + { + "key": "0x3f61a550d3874055ef4cf3ce65ee4e8aed15503bae8316e8404b96ca1ff23d7", + "value": "0x52d178338a" + }, + { + "key": "0x5cd3ca44d5c9283b767630419430fbdf1dd3d439782a04abef712c9532e0661", + "value": "0x3bfea3f27d67f86" + }, + { + "key": "0x5496768776e3db30053404f18067d81a6e06f5a2b0de326e21298fd9d569a9a", + "value": "0x44f47e7a497de0f0" + }, + { + "key": "0x2077b85d7195305bf19f9fe9b997f335cbeb68663cfc0275a298fa8a039e6f9", + "value": "0x132dbef0c984e" + }, + { + "key": "0x6063a427e2215ac74fa78e3adfd6075ab132cac84d3f3e37a0fd0085ba8a518", + "value": "0x535c8475d29edb2c" + }, + { + "key": "0x3a4f64467d78d1497351108eea340f29ed74c56822bf4ff7b12d5c867b5fda", + "value": "0xa886a148ead434" + }, + { + "key": "0x461122023f439b87d9900427cb0d7b2f96535ca2c0eb4733332c38b2043674a", + "value": "0x97aa156778dc33" + }, + { + "key": "0x565ab9e67a38783cd602c791302fde5dd0418b794d1a70d9122d884916828c7", + "value": "0x5440dc4b7eb580" + }, + { + "key": "0xb8d063c404efac77f45b7d1057a027a8f1817f9a38d4094d0483c747845cc", + "value": "0x1795c6cc1f1bd6" + }, + { + "key": "0x31697d46959918d8e06ba6608fe3aa4f93996cedbd7936d7b82b07de613ec2b", + "value": "0x37db4d6d5fb" + }, + { + "key": "0x792a3e87e3391d581473962cbafd22a026aec62869ba933ee7f38e6da490e38", + "value": "0x6c0e0f05cf5fd" + }, + { + "key": "0x5f50cfb5ebe7432af2410decec71572752d8230dfa17fdef7e2a836f955f0d1", + "value": "0x1f7777f811fe41" + }, + { + "key": "0x12a6d4ea6241e228fb48334a19a3b5e2c3c44065644de8dd32b9dbc9973ee94", + "value": "0x14331353d6485" + }, + { + "key": "0x3b0f8f66af0f6cb54547c142cc346490b0fa88701573c8a208ff63c78158982", + "value": "0x1c71a1fcb43112" + }, + { + "key": "0x20f9b41497cf7e71b0a6dda89e2f5088462745e83efdf008bf9686f3f841915", + "value": "0x1c8b6cf1ad196d" + }, + { + "key": "0x74544e4bc851a8ead4bd0d10fd79113ba12d5697c4964a1d292d1b4f593f0aa", + "value": "0x81d800be097b9e" + }, + { + "key": "0x2309e1fcec847bdce2072e1426ef52ed38a0cc4cb19a745db8c45d3848417c5", + "value": "0x43f2c702dc00" + }, + { + "key": "0xdf8a7991adf851f14296f74c22f36f69ca4c3b08baa6f0195055b924b2e7a2", + "value": "0x52b0ce43e2236e" + }, + { + "key": "0x4a05d0779e7d7eecf0f99ffeb7728fcae4145bac34de2fe0c348876af97df3a", + "value": "0x62677387ce93ba" + }, + { + "key": "0x738beeda83522414ef254f250bdbbb8d15e90988f9eff8edf782b85432938f1", + "value": "0x127399a19d64e" + }, + { + "key": "0xa098d920010a898f0e17f86e109f34d145c5ab77baf82705a98aec4af2f015", + "value": "0x11e61b68c000" + }, + { + "key": "0x63bae7ec582c6117a58a47b2ddfd5fd7a6556496b98bcc1bf169ce4f0ea273e", + "value": "0x12a2e0decb65a" + }, + { + "key": "0x1715dfbd02aa6e22565da75edc82c0237d6b1800b27daebe66c859ca663358c", + "value": "0x2f9cb02a2ff2d708f76" + }, + { + "key": "0x4048e6d273b669e698413e2986624b8bbd71d04d70a9eacfdfcb85e26ece50f", + "value": "0x3e1c01311400" + }, + { + "key": "0x4dbfe544ed63377b3d819a142e245f56921729b4c3e205f87e66b64af007235", + "value": "0x585b1ae0a428768" + }, + { + "key": "0x7259d2a19421aa4423c0afdedf7141386273e371716e56da795c1a02967adc8", + "value": "0x4d1e85da97" + }, + { + "key": "0x7303303625948504c5fd26b4e9b36c55bde813a7119d0372f534a772783aa9f", + "value": "0x133b1a1a0b058" + }, + { + "key": "0x69ef7fb1f80a828a36ecb625e90ef38d127d5b38bd05035c015091d6eaff4d5", + "value": "0xd945736db5ed79c9" + }, + { + "key": "0x27ada114743afc3c19c8a51d6a18bb4cf0178b7cfa1887fbf5f7a6ecd29a447", + "value": "0xe70e1418a7d6ddf" + }, + { + "key": "0x5cdeacb1dbcc2298cf8013dc12d21aafa58a0492a631fd1a566957a35a34b70", + "value": "0x12ba6ad079a6e" + }, + { + "key": "0xeb9a7c4206897167f4ae0d536aab4d3110c28ab4f83970a1e96a36b40838fe", + "value": "0x13674094d6bf7" + }, + { + "key": "0x79e129e6c2c7e9ecc7e30b2491525c381590530bdd574efc81230b9f4bc5d25", + "value": "0x11c582c24800" + }, + { + "key": "0x6b5aabab09661b37e4c305b799438d5de809a4603d6af1f43e0415189370f8f", + "value": "0x2af8a5c2c77540" + }, + { + "key": "0xdfee5a9ce90e4c72a1ae479f569b93a81e126a129886324e380a47e9aa6adb", + "value": "0x12c2ea3ec106d" + }, + { + "key": "0x78683d670a2447fa3c76edee574b10a430da568afe05bab47b556b5f7238464", + "value": "0x12a1284446c9e" + }, + { + "key": "0x123972514396f26fe5fbd38cd80694fdd803a2fd5a6c00e92052e80d16ec090", + "value": "0x40aa572ed8bbe5" + }, + { + "key": "0x2a6d3a750d8f525d42e28401a5d6c322b8d9a29881d5a23bad25a4e3d16fe4b", + "value": "0x2506664c4767f14c" + }, + { + "key": "0x7256df463582bc7b8d506ad47c8387ef9976b0f1ce953ad79f763b4ceaa04ee", + "value": "0x3bd89e727383c477" + }, + { + "key": "0x13811d787d965acf0c17e0ca076265131320fc89edd37b280402ffdc050ba3", + "value": "0x6db1f9038a25" + }, + { + "key": "0x1a51cc03e3c7294a23e113885d65671e1c41b21c55f443832d91092e70eabe1", + "value": "0x5772147e127e7" + }, + { + "key": "0x48bf5de1b734de7ed22c4878ecf93e97512f44c7f2154a6d2e9e5630bdfec4a", + "value": "0x1296ae0a553e7" + }, + { + "key": "0x5b19a89ddde0079ffff5320f78e1a10707b418cec4444b98d3b8a298560609e", + "value": "0x8336b4adf6e65" + }, + { + "key": "0x9779d2e8422791ff8c21d1f03ac27f8bd212d32dfec4a922a28c2a612f4af9", + "value": "0x49f1bc08c10754e" + }, + { + "key": "0x25ffc8b4ca9f4a28b116edf69aecc1f2c5d30ce36084d1a9a878d28f98c84cd", + "value": "0x12c008f4e6cd5" + }, + { + "key": "0x68e58513cab903aaf9a8599f119656d74f0400abb4032f7c53f1bfc571f5a62", + "value": "0x3ffba2c28c00" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x36803e22e72cb85c133" + }, + { + "key": "0x21fa180371dce0f73eb06d6bf43ec1cf256b8fc7e5b3ce27c00a5fe55169f6b", + "value": "0x7ea7851480c45" + }, + { + "key": "0x45affea061e9bc8b6e821e962bb1c950044a4f2a2469b566b525047de24cc", + "value": "0x1cd988d1ff5ead" + }, + { + "key": "0xca532dd585de907e5e22bfa88b8162363b3202e7483bef1172293e20171cdf", + "value": "0x27c1b0a9e74137" + }, + { + "key": "0x2f6ed819212ba71958d17187743d958db4eff301d33e31862e12529e63bc5bd", + "value": "0xaafe1978927dd" + }, + { + "key": "0x411ff4d96a7c26b915708924a07b7adf1cd9a2b307e0a2051f6a5dc2bda6924", + "value": "0x120dba547dd223af" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x446e6acfaad53c82" + }, + { + "key": "0x61914fecb7d2da8ecd52c16d83974f66257f84e07f9358b7fcfe59c63e6e33c", + "value": "0x1ac00eae2991027" + }, + { + "key": "0x354fdcc8a09a891477cbf410c0bfb585db32f9b1a5aa0c7ec106b76e2669a5a", + "value": "0x32de37c84400" + }, + { + "key": "0x1eabe863416ab652cccb31cdfa93d36f91915e5b433cf9bc7de3c55f59aa0c4", + "value": "0xa01e61ed216bf" + }, + { + "key": "0x64d42eb7fe0eeb01ab6f601ac12ffd2798caa7a826a79c1d00572e9c23c82c8", + "value": "0x16b26de1acc5e" + }, + { + "key": "0x7157e29f3a9c7f2939289b592c925cfc7182b6eac04f5bf2aba7dcd2604270e", + "value": "0x25eb2d6f971a7" + }, + { + "key": "0x8c07f5bcd47f5e0de70bf857cddd7e5c943b88f93889f48498e06e58905641", + "value": "0x6bafd638d4def1f" + }, + { + "key": "0x3f6faf1d49fac4797813f483bd5167155f55d7cdce1ee66f7868ca4eb4bb427", + "value": "0x12a568045dadb" + }, + { + "key": "0x55db343016099af5314aab9f9f6cf3cb4e24eab2a64f6b77cf20d91643a6100", + "value": "0x1a309bb1b158dd" + }, + { + "key": "0x6e6a7ffddf642aef51023a84f5f5e7aad653de5b1fba769c3d709a591f8e019", + "value": "0x8eeadc326034e" + }, + { + "key": "0x1116f61e6181f06f8b062073e2a8398fa42398e4e0d5478fd6dd4d2df7239e", + "value": "0x19f9831dd0c1a" + }, + { + "key": "0x612fe7986c463d3e2824a69f49da9b9e004e1e6ee7a2a48d6f7b0022cc2f7ee", + "value": "0x1d1427218eae6" + }, + { + "key": "0x32ca11c045788984112c6fa5003bbd9e04ac373c357ccc315d56a5ac05ce86", + "value": "0x3319e4cf62594" + }, + { + "key": "0x400d64f550d2f53b3f06cd4694c81f78ad446cafac3853fc9e012eab1f7c5d7", + "value": "0x1f0a8286b400" + }, + { + "key": "0x7d90b7e2ec11796335f047cf2f487b9cded3d8e633c87c878e62d24105da368", + "value": "0x22f1a117fbb0a9" + }, + { + "key": "0x65544e9c97e4ee0c296846bc5e7d431fa29b4e1fe7450310f51af958c1a0d76", + "value": "0x1281c25630e9e" + } + ] + }, + { + "address": "0x131a2df782bd8231c2f93b7e365f0e4772968ccaa678f244eccfdf6aac79dd", + "storage_entries": [] + }, + { + "address": "0x6c9dee1b2da86ce77ebd8fa072d5f41d8ef4122b721004e0be38f083d67fb91", + "storage_entries": [ + { + "key": "0x5168e64926da8d6d3332b207265ac9c32b7188531a90030e195dd4a8ae35e63", + "value": "0x34b6bc5c489461c8" + }, + { + "key": "0x50b09751d25db8ecb8b5910fce9dbbce727c7e9b01795fdd0210f1bc917ec78", + "value": "0xa688906bd8b00000" + } + ] + }, + { + "address": "0x12d036d4822099814978b70404fc7cce8a1aeeaa6007d0889fa4f04225286b3", + "storage_entries": [ + { + "key": "0x412647986215a49a89de616bc520cbcfd93962fb03f43fa5163e777054a028b", + "value": "0x6a6ca91fd82b86e" + }, + { + "key": "0x59aec7e67a827932913cf450506690db7c24f30e6104fcd3baa14085da75b99", + "value": "0x7aa249cf7a7365f" + } + ] + }, + { + "address": "0x6523fdf78e97ebcf302af101626ac4fc8e80fd4f37080279926dbb0a7d0d467", + "storage_entries": [] + }, + { + "address": "0x11a52a41f09a5e1826d30b971b9898360c57c3130b72ba4da14ef48ed7bf911", + "storage_entries": [] + }, + { + "address": "0x6f80b8e79c5a4f60aaa1d5d251e2dfc55496ed748f96cf38c034de6d578f3f", + "storage_entries": [ + { + "key": "0x6fd7dc286e531f22f7c25624b854dddc92eb7ebcf5e1cbcdd090f3023d0cb8a", + "value": "0x4b035ecb9235693" + }, + { + "key": "0x2061da8812e7a53c4fff908d6af1692e13985381bb049c0b111c6f6abe9a2d", + "value": "0x4aa9cdb051ad998" + }, + { + "key": "0xcccb9f7cd98a9d4a8b7f535013611ca3c49490e2cee564d9303c2c4f87f373", + "value": "0x429eeeb0876024f" + }, + { + "key": "0x32aea7c361661b86adb678a8e5871a2a8e5eebf078cb6e9619d7cf873153d42", + "value": "0x42455d5a93b2aba" + }, + { + "key": "0x1a6097a5307f2f89b3cd7767b8dbe29ce927d298bd02f9c450f7428501ec7b7", + "value": "0x41ebcc04a05ea8d" + }, + { + "key": "0x412647986215a49a89de616bc520cbcfd93962fb03f43fa5163e777054a028b", + "value": "0x2a04034b5f09118" + }, + { + "key": "0x59aec7e67a827932913cf450506690db7c24f30e6104fcd3baa14085da75b99", + "value": "0x33a5a7ef32620f5" + }, + { + "key": "0x1a3edd9d59b9a482444e982f6a426f7567fddbc0af9c24beff321ac58d682d6", + "value": "0x3d3339f62d85ae2" + }, + { + "key": "0x7cce8fffe84ea40d8ab7123cee5c7cd8a72f09526d281a0294ceca4914ef314", + "value": "0x46fdef69065decb" + }, + { + "key": "0x5eea89ec30de993060111971c71cecdc18e635ca63307474e2a1684358c1bb9", + "value": "0x3f62ba526d03a76" + }, + { + "key": "0xd018fee5b99de8d981684802718892c766ec02da7ceaa49c4a32c51c578475", + "value": "0x43c1bb0aec5b769" + }, + { + "key": "0x76214e0d68f6b42db4db83e7537e523a12d18e91c1cd884e2795332a10df47e", + "value": "0x464accbd1f871bc" + } + ] + }, + { + "address": "0x3a755fbf8f798f37741fb01e1717c613ad4c910d8404cdb8bc2e4a765815623", + "storage_entries": [] + }, + { + "address": "0x6ba0916a69af60724d08ff5364c5425c76f03a1c3e32ed5c20c1a4c41390a3", + "storage_entries": [] + }, + { + "address": "0xd56d060ab4bb7996f5703b1db59c5174b349ef9845083d3fcf0298c87ef591", + "storage_entries": [] + }, + { + "address": "0x5543d69bfdb8eb7286141ef4099ab67b18036e81931525629de6a2b6402af3a", + "storage_entries": [] + }, + { + "address": "0x7b5ec87db09e114821d1478b5b929f7b231924e31a7cc241caebefd3d62efd7", + "storage_entries": [] + }, + { + "address": "0x1ad1a3e491c7d24a1cbe2655af721f70d8ba0ce5624550a95b90cc1694df1da", + "storage_entries": [] + }, + { + "address": "0x106f26129e1b5c149599eeda79934f413cd1608d5d2e79fc5e164bbdd2de06f", + "storage_entries": [] + }, + { + "address": "0x3aa84e6677f38fabc3632942d98251c462e9c675fbae9633a792bd157cc2d09", + "storage_entries": [] + }, + { + "address": "0x1abf15973f0b3bec47e114295a8fa6d50ba6c524042ca10ae76f76b113b5e6b", + "storage_entries": [] + }, + { + "address": "0x5be7fe0ff039c82657f929a70c45ab5629f3814cd86c03b1000fc13541a0c73", + "storage_entries": [] + }, + { + "address": "0x72466e77001f795f32d4a9b9d9ce15a37e29ee043acd420b16812d536cc7087", + "storage_entries": [] + }, + { + "address": "0x5f7348fcd9fcd13b1ebf3ed51992cbc6d93e1582f9f37f4f0fbe2cc7c9e0c56", + "storage_entries": [] + }, + { + "address": "0x22f43c1a9240f14570f8972e63063c1532728ca5de182209ee336951e5092d9", + "storage_entries": [] + }, + { + "address": "0x7df3257d11cdbea698450bfa0b54f219e40447c4920511a74784d2f4ddac017", + "storage_entries": [ + { + "key": "0x76214e0d68f6b42db4db83e7537e523a12d18e91c1cd884e2795332a10df47e", + "value": "0x1b95012d9ccbbb0" + }, + { + "key": "0x7cce8fffe84ea40d8ab7123cee5c7cd8a72f09526d281a0294ceca4914ef314", + "value": "0x1bd6c8096c4c2b3" + }, + { + "key": "0x59aec7e67a827932913cf450506690db7c24f30e6104fcd3baa14085da75b99", + "value": "0xb279c86b743987" + }, + { + "key": "0xd018fee5b99de8d981684802718892c766ec02da7ceaa49c4a32c51c578475", + "value": "0x1a967a086b66d77" + }, + { + "key": "0x2061da8812e7a53c4fff908d6af1692e13985381bb049c0b111c6f6abe9a2d", + "value": "0x1d5048b1bdb68de" + }, + { + "key": "0x6fd7dc286e531f22f7c25624b854dddc92eb7ebcf5e1cbcdd090f3023d0cb8a", + "value": "0x1d712c0a17bcc5e" + }, + { + "key": "0x1a3edd9d59b9a482444e982f6a426f7567fddbc0af9c24beff321ac58d682d6", + "value": "0x17fd8ee28ea3c32" + }, + { + "key": "0xcccb9f7cd98a9d4a8b7f535013611ca3c49490e2cee564d9303c2c4f87f373", + "value": "0x1a1b809ad937158" + }, + { + "key": "0x412647986215a49a89de616bc520cbcfd93962fb03f43fa5163e777054a028b", + "value": "0x913150916f0a47" + }, + { + "key": "0x32aea7c361661b86adb678a8e5871a2a8e5eebf078cb6e9619d7cf873153d42", + "value": "0x19fa9d2cf15cd64" + }, + { + "key": "0x1a6097a5307f2f89b3cd7767b8dbe29ce927d298bd02f9c450f7428501ec7b7", + "value": "0x19d9b9bf09a5bef" + }, + { + "key": "0x5eea89ec30de993060111971c71cecdc18e635ca63307474e2a1684358c1bb9", + "value": "0x18db3299d82e72e" + } + ] + }, + { + "address": "0x4c0a5193d58f74fbace4b74dcf65481e734ed1714121bdc571da345540efa05", + "storage_entries": [ + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa0f", + "value": "0x35bc8af82768258aa019125" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc23", + "value": "0xc6ec1505dc53ddf997e8e" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa12", + "value": "0x2f871fd11051599457b29e" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5136", + "value": "0x66389ef2" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb192372303a", + "value": "0x158e3b061fec17c75ad2a9" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c513b", + "value": "0x196f72070dd" + }, + { + "key": "0x49dc1d76bf4fe90bc97dfd7ece235109f4eaa6f81eed97188e4fe0540537940", + "value": "0x42" + }, + { + "key": "0x29ebfe1d9c76f9d001c2adddd7bf3d405574e0008ed677f7cc6b19446c14f11", + "value": "0x15060502f" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb1923723037", + "value": "0x33e755988abe223c2140b68" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa13", + "value": "0x34bc1cf7b27" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5139", + "value": "0x24eb1fc7ca88a74d55c8cc" + }, + { + "key": "0x25a5a32d000f2a7c30076943768a84c453da514064638c5c4740c7326419bb9", + "value": "0x10fcbec488344f597" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc1f", + "value": "0x66389ef2" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5137", + "value": "0x35e7a60e9509ab5a27634d6" + }, + { + "key": "0x7e2cc6cab2ddc160ba49ef84d4a5358f38eb364b6533ce11ca28336e9c25d93", + "value": "0xc1" + }, + { + "key": "0x229755e4f10eaad5d5aaa998f6688dc4243410820b05716ac1fc26ec3ebbb9c", + "value": "0x7901ffc" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc21", + "value": "0x33e504ac688889ca83482ce" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb1923723038", + "value": "0x34cb53f731ce34758b41330" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb192372303b", + "value": "0x535ef26c4b017f6348" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb1923723039", + "value": "0x74d66ef87a08bb59b4223" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa10", + "value": "0x36a8eabebcfe9306579fa86" + }, + { + "key": "0x1f5760e1e4a55171d3d8b5589202717a691ed6aa62bc528544fd0823f673db3", + "value": "0xad8dddb7fa4c2817" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5138", + "value": "0x36f70bdd6aa3bea6c3eeb08" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb1923723036", + "value": "0x66389ef2" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa0e", + "value": "0x66389ef2" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc20", + "value": "0x33b85425d6f486a0a90b151" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa11", + "value": "0x1fdc18c1101ac3fe8a14a2" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc22", + "value": "0x11f060158e4dbcf12b93b" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c513a", + "value": "0x45461a38c7e1856a268abf" + } + ] + }, + { + "address": "0x2f91ed08ce98ca3e119585505779f4ec1473a88a9b188f09ebb5585f776e0a2", + "storage_entries": [ + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df4", + "value": "0xffef7bd62cb" + }, + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df6", + "value": "0x66389ef2" + } + ] + }, + { + "address": "0x6eb587e14ebd9556db09f8d5854ae54bc24736e0e163443b3f7547e6cc908ea", + "storage_entries": [ + { + "key": "0x59aec7e67a827932913cf450506690db7c24f30e6104fcd3baa14085da75b99", + "value": "0x3d3b4070cd1da74" + }, + { + "key": "0x412647986215a49a89de616bc520cbcfd93962fb03f43fa5163e777054a028b", + "value": "0x22e5aa3a15fb0de" + } + ] + }, + { + "address": "0x2ed66297d146ecd91595c3174da61c1397e8b7fcecf25d423b1ba6717b0ece9", + "storage_entries": [ + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x2ef0b377a" + }, + { + "key": "0x748a28d66489adf34d96b886a65418d77e7393d29fdea1a8a26c21fd984fb64", + "value": "0x0" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66389ef2" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x4817c6888f044fd16" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x283eed59fe3f28a3e8fd" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xb978c09179cbbe03ae" + } + ] + }, + { + "address": "0x7c3b3761ed0694e8b59d5b4c523cfeedb46ee8f50d8d647e65f122d608dd2e8", + "storage_entries": [ + { + "key": "0x7f268aba1b4ddc0051f2f375c62c83f6d32e0e23ec46f2449bec596d55ee29f", + "value": "0x3b5e6faeb43dede00" + }, + { + "key": "0x6d29b229bb10da7015e610bfd8ee7199f634a80beb04d61b842503016e0b853", + "value": "0x97b872be7748ee200" + }, + { + "key": "0x7b92329a7627169b7e5a442c9fe4b669fe65065a8e8fb209212b81dc652e05e", + "value": "0x53f4bcf70e6717800" + }, + { + "key": "0xb2a8c45d55c092e928692f062ab3416a25ffca5dd2cd306611a7c60c33131c", + "value": "0x53f4bcf70e6717800" + } + ] + }, + { + "address": "0x5ef8800d242c5d5e218605d6a10e81449529d4144185f95bf4b8fb669424516", + "storage_entries": [ + { + "key": "0x4ab851af7c319653ea03e239304e83bcb6fa56f3871f6ba955de11ace8892b3", + "value": "0x0" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x29f2b2744c7919af1" + }, + { + "key": "0x59e75d991e38414cb03337b2c33628c0e610f3d0e52ca5e7c8d8dabd4b07358", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x9a5238f102037" + }, + { + "key": "0x34eaade9f12dcc6e6385184e591dc1308d98187c7da26503b1e5c4b5b03d9f", + "value": "0x0" + }, + { + "key": "0x47ad2e6564d72e603afb73ae84c22c66bba2d025ede35845ee8ece0799ba5db", + "value": "0x0" + }, + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x2417450a62" + }, + { + "key": "0x512833e246671faba32da48d87a40629e7dd17b40257ec590a6e17c8ac96dcb", + "value": "0x0" + } + ] + }, + { + "address": "0x6b3b8353005415a9dfcbb8914961d68117fb00879d1e4e8b4ba4194af155604", + "storage_entries": [] + }, + { + "address": "0xcb1451f9e8f3008f17e1764da9fd37bd19f5b9a9c346f3dc7914a8b25e3ea6", + "storage_entries": [ + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df4", + "value": "0x1b1c" + }, + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df6", + "value": "0x66389ef2" + } + ] + }, + { + "address": "0x6d8bb283808beed716f40bee70b570cd34a19f1ae055a2a98bd5785adbe5369", + "storage_entries": [] + }, + { + "address": "0x5ff29c4c41be4dd648ad559d4e1df603cbb3374f685710e6964ec9dd83fdff7", + "storage_entries": [] + }, + { + "address": "0x6cffe11b90f64c67d2993573f5eac222219a7615548031f7eefccbb10c23a56", + "storage_entries": [] + }, + { + "address": "0x36abfd00faf2a3d66aa94f88281215790fd6f03c92e64d4fd980a2b4c7dbfe3", + "storage_entries": [] + }, + { + "address": "0x5801bdad32f343035fb242e98d1e9371ae85bc1543962fedea16c59b35bd19b", + "storage_entries": [ + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66389ef2" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x189077066c" + }, + { + "key": "0x2ec31623436b0fbcbbd71b2b3eed2887c8156077098a52a9256a9e0edb833f", + "value": "0x1348a10" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x189b7bee27" + } + ] + }, + { + "address": "0x5271168745301776c05c699cf21525f6de8484de8965376d2bae40cbd350e47", + "storage_entries": [ + { + "key": "0x31e7534f8ddb1628d6e07db5c743e33403b9a0b57508a93f4c49582040a2f71", + "value": "0x24fe74aa594978b355251af51172295c6392ce96c5897d9b2504153d6cf9188" + }, + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x46e308a98f0ec7f5b365cd556ad406a536b66a3ea3d7de47412877a703666c7" + } + ] + }, + { + "address": "0x6bde7c683b95df8d5ef44277649a46321dd034ca8a01f9976b7aed50ffbceab", + "storage_entries": [] + }, + { + "address": "0x22e45d94d5c6c477d9efd440aad71b2c02a5cd5bed9a4d6da10bb7c19fd93ba", + "storage_entries": [ + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20d", + "value": "0xa4a6e3a0a209e70884d6f2d41953ce3d" + }, + { + "key": "0x332df419aa058c3f4b36acbf5af4b7e8e3d4dd58918d5f0ab2841741e7b55c2", + "value": "0x66389ef2" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c5", + "value": "0xa6fe56961019ae1ef445a3e172a13558" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x5ab06445" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x24027b" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c6", + "value": "0x3dd8a" + } + ] + }, + { + "address": "0x7d10510af4d9bfe30f4dd973472a3b54a96c2a3593d21e64c63f6ffa50d3ced", + "storage_entries": [] + }, + { + "address": "0x124aeb495b947201f5fac96fd1138e326ad86195b98df6dec9009158a533b49", + "storage_entries": [ + { + "key": "0x64206cfff9a5ba0dd1713fde823f96d6e390ec871b267ebba4903be7c390864", + "value": "0x0" + }, + { + "key": "0x7f2fe7fcea309bf0e4fcb934fa0384dde686beb95d9bd408623f9f97e6ba312", + "value": "0x12de76d1c3c3d14e785" + } + ] + }, + { + "address": "0x17e9e62c04b50800d7c59454754fe31a2193c9c3c6c92c093f2ab0faadf8c87", + "storage_entries": [ + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20e", + "value": "0x16ec93" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20d", + "value": "0xe0592349e29710e533ae1cbc87f7bfae" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0xd945736db5ed79c9" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c5", + "value": "0x6afb46d44151582f56f658aac0de987c" + }, + { + "key": "0x332df419aa058c3f4b36acbf5af4b7e8e3d4dd58918d5f0ab2841741e7b55c2", + "value": "0x66389ef2" + } + ] + }, + { + "address": "0x4ea9c40dd97bb615386905b82b249cf8dd5100b10efdbf5823752d870518d25", + "storage_entries": [] + }, + { + "address": "0x3dcb9975449b3d3371217b8abbe9abec1518950f066a924d1b8a04604eb9e50", + "storage_entries": [] + }, + { + "address": "0x79fea253b4424e0d4bf251c97b0b0f70e682b3d86952b8f534f150b05ae9afe", + "storage_entries": [ + { + "key": "0x3b8b8cf137bf03592fa7d213544ed68546b6abcce0f5085a09cd972c664ec14", + "value": "0xff2003db6452030969997c39a02c3da0" + }, + { + "key": "0x6a650d37b27b06ea47e38d76144c67d5c1a7c14ec62db5c0f49962fb8314fe8", + "value": "0x7963122c240023745014008200026b9c" + } + ] + }, + { + "address": "0x3ab1124ef9ec3a2f2b1d9838f9066f9a894483d40b33390dda8d85c01a315a3", + "storage_entries": [ + { + "key": "0x51b22f9b850efbf166ba670df6df491799c9f10d3a079224830385b27ead354", + "value": "0x66389ef2" + }, + { + "key": "0x241c0799fc0aa8b075a29c85966e92d17fe004e0fda122c9df4794d2b08d65d", + "value": "0xd002020000040100c1e000050000b" + } + ] + }, + { + "address": "0x16d60c76b5939bdfa253a487dd93c24953c9bfa5b6f737ee226a69c3c4a6073", + "storage_entries": [ + { + "key": "0x6f55d3709d47935c54bfb76b4233de95633b7f84c064527698838d9a2fd4c30", + "value": "0x27b46536c66c8e3000000" + }, + { + "key": "0x322cc6852348fdb309b712f473bf6b3247737e590e1dd48775df228dd2926a4", + "value": "0x4f68ca6d8cd91c6000000" + } + ] + }, + { + "address": "0x7ae43abf704f4981094a4f3457d1abe6b176844f6cdfbb39c0544a635ef56b0", + "storage_entries": [ + { + "key": "0x565ab9e67a38783cd602c791302fde5dd0418b794d1a70d9122d884916828c7", + "value": "0x0" + }, + { + "key": "0x1e587de87d0e6b6c65e44395b0f5232ef3097fb031f4404bfbe60d2ba4fe054", + "value": "0x0" + }, + { + "key": "0x284f6da85e0d7c2efa9bff3bda8b4a460d2fd0b70fcfcf74ec7b14d8ada32fd", + "value": "0x0" + }, + { + "key": "0x6b4eb38b5c1c57a3f6c841a6e56a9b0fc53c454b4d95fcc2f6ec2b11a7b4553", + "value": "0x0" + }, + { + "key": "0x4a05d0779e7d7eecf0f99ffeb7728fcae4145bac34de2fe0c348876af97df3a", + "value": "0x0" + }, + { + "key": "0x70c18ab354c3591a692d0829ae495c5221dcb89582a008be0030b179133efd7", + "value": "0x0" + }, + { + "key": "0xdf8a7991adf851f14296f74c22f36f69ca4c3b08baa6f0195055b924b2e7a2", + "value": "0x0" + }, + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x63735034d6" + }, + { + "key": "0x3c3bb9f266a1ce0c28b39a0468c1da7883363aaf473809f40cecbeda6c8fde", + "value": "0x0" + }, + { + "key": "0x60046d4938733045f39caa76d7ab3891c836f3cf489b02c1e9c0e5fa75c6e2e", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x4e8bf0b7d13abae" + }, + { + "key": "0x55f893178f607635a20fc04a31f73fefb4e5af36b46ba54e3ff7477b3a74ea8", + "value": "0x0" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x4046a4d799b0f0e0c246" + } + ] + }, + { + "address": "0x2625c7662d20c6eb39dd4170bdb0cdfc3859ebbac3bd53c80bd058bc6b1360e", + "storage_entries": [ + { + "key": "0x608f93cbf8b898fa1e22ce3e0e239ae1439ca870927e2df4606f032881487fe", + "value": "0x37ea8e87" + }, + { + "key": "0x104cde61e81f30f4354f6aa6e3bb651da3182e0e3781de6d8566fdb87a59d97", + "value": "0xa29e" + }, + { + "key": "0x4a2cd4de85a4e5c4fdec799cfd6cea00ea7becd72ca7133b5bea4878d7bdbed", + "value": "0x1499b661" + }, + { + "key": "0x269cf854c0e3bbfdc0b3617511b59b2476ef95f638fc3e69a565e471c57cc23", + "value": "0x866c0237" + }, + { + "key": "0x25c782a7b02f2c360fd1c090369d57c9ae1f94383466f4608ebeb68f579653", + "value": "0xe0ae2da" + }, + { + "key": "0x4b4fa1b6428c9801ee8072dc39a94656e83055022b4d228a4f0054053afb508", + "value": "0x33ed46e8" + }, + { + "key": "0x4dec2d423a3f1821b9d975f466a8bd6508e66bdc7ecd9c61c1d287b24907c99", + "value": "0x1" + }, + { + "key": "0x18738987570b9625f774e05ded7cc3e6fffb8c4167cb7c6efe819fb18f1010c", + "value": "0x38ea3e1f" + }, + { + "key": "0x104cde61e81f30f4354f6aa6e3bb651da3182e0e3781de6d8566fdb87a59d9a", + "value": "0x57b49b6b6f3e509073f1c064f27131ec0fac971e7305744e07de070da764479" + }, + { + "key": "0x7ac033960a437e661fe81dd05c3b9a89fd2cb8c20c0b64ef0487d9b8390aff9", + "value": "0x18d4c50cb0" + }, + { + "key": "0x140e9f0b1813df0d5e124a637a9ad8e1db4bc30386aa0a68c0101709e16b1da", + "value": "0x100fe159" + }, + { + "key": "0x331e8b3a16e9a4fe517b8c0178d4e295995a6ad302504206fa2d9edd6b8d970", + "value": "0x3c0b05b91" + }, + { + "key": "0x21403742b963377178ac702a950852c7c8ab06f1dd016e538fc8b4772abd8a9", + "value": "0xe600689" + }, + { + "key": "0x2061ca6b19ae36f11fa63fbd1d08c3975b2201551b494f4c12074b8efc42a91", + "value": "0x48ae83ec8" + }, + { + "key": "0x6e16d20c60d0498b043b49711b6d613d2bdc6c27d366339ba1660ec3b89ae71", + "value": "0x1" + }, + { + "key": "0x7e5fffe7b7263c5b4341b59ca43c654f1eb9fcebfb3218d776e36029bd845db", + "value": "0x2eac48d6" + }, + { + "key": "0x104cde61e81f30f4354f6aa6e3bb651da3182e0e3781de6d8566fdb87a59d98", + "value": "0x100f745" + }, + { + "key": "0x1abbcf60a22f271c2e7f2ad7b319f1c4707f7721ac693b9e966f655a5d22229", + "value": "0xeba7315" + }, + { + "key": "0x2e3339a874e0f1d7514fb90ab3ef4f94ad32fb9379fc23702d6621c5218f87", + "value": "0x2afadd32" + }, + { + "key": "0x9979eb6cf46846ed9d45d38e235c6c30cc183ce93cdd68d234a9c57616ed9a", + "value": "0x262d74c2d" + }, + { + "key": "0x52fb5dfa1a999a8934c49632d89584f0bb142051672ef9b946a6a07df11d42f", + "value": "0x509a035f7c" + } + ] + }, + { + "address": "0x3b997162c7bcd56e8916c3e66cba6ee96b4d202aa0df2b24528e22937591ddb", + "storage_entries": [] + }, + { + "address": "0x445d186447614aa1f841a8d16f53f7b761dd1bb71e11e5bd14e71775c9db66d", + "storage_entries": [] + }, + { + "address": "0x26e18095db83d89acd0293514c7ef0f442e944f52a7e87b42fb4d50ceea0847", + "storage_entries": [ + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x73aa515c0a77455d1000d017ff0625be2b9a263f13daa9aa43f6581672ad2c4" + }, + { + "key": "0x31e7534f8ddb1628d6e07db5c743e33403b9a0b57508a93f4c49582040a2f71", + "value": "0x343403448844703c0bea4ff5b57519213717e4fd8969aa9ffad1883fcbb28c0" + } + ] + }, + { + "address": "0xd2c80535b70909a20c936856fd4fef072fae8d826bb49541b5cec1adf027ed", + "storage_entries": [] + }, + { + "address": "0x68400056dccee818caa7e8a2c305f9a60d255145bac22d6c5c9bf9e2e046b71", + "storage_entries": [ + { + "key": "0x565ab9e67a38783cd602c791302fde5dd0418b794d1a70d9122d884916828c7", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x262bd88291753791684" + }, + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0xcf71fc43210cbf094" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x736f9984503b3063f0bf" + }, + { + "key": "0x284f6da85e0d7c2efa9bff3bda8b4a460d2fd0b70fcfcf74ec7b14d8ada32fd", + "value": "0x0" + }, + { + "key": "0x1e587de87d0e6b6c65e44395b0f5232ef3097fb031f4404bfbe60d2ba4fe054", + "value": "0x0" + } + ] + }, + { + "address": "0x3ed86b38abb1af8b97d8b3fa1aa4298d5a7eafe303181ba234adf7309236e34", + "storage_entries": [ + { + "key": "0x362a5acdaf2ef042b104af620f541c0f3ec3dd6ecd5ab352f8a800b88cdb5a9", + "value": "0x3a3d81b482a1b072" + }, + { + "key": "0x59aec7e67a827932913cf450506690db7c24f30e6104fcd3baa14085da75b99", + "value": "0x5c7d514693dae25" + }, + { + "key": "0x6507d2d5b6784f222678bc8ab3c25ef9c9b594031b796e0229022889f662c70", + "value": "0x386532edbfe52bc7" + }, + { + "key": "0x2fecea1361f9a4ed2b3f5f7a566a0d10ab592e6909907c1054bcd093fd92790", + "value": "0x4f1fdf6161510c40" + }, + { + "key": "0x290a66b6f62f333d51340c8e237d1fea4115f7d0eadf5a72d24844bc0a7dfe7", + "value": "0x3252935a037ceaf" + }, + { + "key": "0x897332dfff02d97b9f266abbfebcbcd33ca869ca909819350e44cc3b34314", + "value": "0x40927b2edefb463" + }, + { + "key": "0x1616824d6529720525185a9a5a8dca8bd61b2fe8db6b59338513ff65ca428e1", + "value": "0x194003c5388b28a70" + }, + { + "key": "0x3b7eeeb8f876bc6aa8d20c8f04ca0bd18684268a7399eb3a3956f380bb57217", + "value": "0x435c5caa2dd895e2" + }, + { + "key": "0x3be324d551d4077c63c687673805833e55a9ef5a817068486602b3c101b1ff3", + "value": "0xa2c38dd38ac4610" + }, + { + "key": "0x34c1d5491828a7ba90d4acd8bce57e7260e7269c9c0d8f0fd8240f9031bd781", + "value": "0x5be77e5683c9d232" + }, + { + "key": "0x372e0de8e1950aa0351443a0adb64d66e57684539ba696a792ac927bafec3bd", + "value": "0x78a10b5ce03ab9e" + }, + { + "key": "0x7d30dcb01f52701715d2c599f6a1cf3359a9d80d9e8ac7fb469941d21ae9803", + "value": "0x327732e2afb3ca2" + }, + { + "key": "0x1486b40d68f752f0e64fa8b9c7d7d074932735ddbf5b1869cd567e36cdb754f", + "value": "0xb2fa08c60afe7df" + }, + { + "key": "0x412647986215a49a89de616bc520cbcfd93962fb03f43fa5163e777054a028b", + "value": "0x1ac0bea2494d61cb" + } + ] + }, + { + "address": "0x7cecccbfa263721bb64c19892ccdc658ad08ea80e90fb8f78ff06446a62c3cc", + "storage_entries": [ + { + "key": "0xfc7fce0137ef0fdf47d2297ba791a15d3f3f1801dc7ef0b2aa311ad5d4034e", + "value": "0x1229de4952b8e0d" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0282", + "value": "0x5f0a78" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0281", + "value": "0x66389ef2" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027f", + "value": "0x17c9ea0547" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027d", + "value": "0x14bed39bea" + } + ] + }, + { + "address": "0x397f8d5b1807e2ebf9f719b3e22579264ab57db5777c19f5fedbc42815d9abf", + "storage_entries": [] + }, + { + "address": "0x293b9ac0cd6682d3eeac79877840b6d4564a2ce89292904b2a7a1df6dbb0da", + "storage_entries": [] + }, + { + "address": "0x2c7b987c2c237788e2995de035d2eecfadced42212c54430ad57f1642870dfc", + "storage_entries": [] + }, + { + "address": "0x63d6d5e311bcfd978e5f6e1e27db4af11bf53001f62bba9623ccd4170b58dd2", + "storage_entries": [] + }, + { + "address": "0x47e83d52c5caec8f52855aeac27dd10c83c3fd6263c71cc348cf3aab3908928", + "storage_entries": [] + }, + { + "address": "0x2fd2dc038802e5282b27974cc2a937f79ea5762d2c195aeff41f1fd57da1ca8", + "storage_entries": [ + { + "key": "0x9b0c01cb666656c4a6f3d359007aec7239c4860cb0750bde4a5a1e362fcfb4", + "value": "0x1ba" + }, + { + "key": "0x18c0cdbe55811305f0bbf7e7d7dd93e7f4ff9e3022faa355d474abccf1c0853", + "value": "0x1bb" + }, + { + "key": "0x3707d88c62463d51fc79ffa024a8104fcb795275d9134c01d016978d6affdce", + "value": "0x7462dc31ffc8b7" + }, + { + "key": "0x5db36be56c99a59bedd0f7002a9debb9dc9f1bb0193ad203ebf4b9df635f89d", + "value": "0x1ee" + } + ] + }, + { + "address": "0x1339b0b30480d67c80b82aa07a866454cefff8ed043b2a4bc079f6f084f4791", + "storage_entries": [] + }, + { + "address": "0x1d37d1625fe43cb7d955455fc52be2d91b06d1c8581aafa3c8a07485bb92dab", + "storage_entries": [] + }, + { + "address": "0x48cc9995a6ad278b9bf840683ee39d30fd92529356b01770910f6fda32a7f61", + "storage_entries": [] + }, + { + "address": "0x5a40fe05719ac68c5f49236e34ad526f0e9a7193a7e986aab1e99951f40a9eb", + "storage_entries": [] + }, + { + "address": "0x356ef866fb928ceeecfc8e76f25da96927614ef43eb5ab8d1efc4dc91984e6c", + "storage_entries": [] + }, + { + "address": "0x95d14cbdb22fed0894c2a2294b98b4975a97a8bf13183d475d533a1e1b1c12", + "storage_entries": [] + }, + { + "address": "0x70a9d8c1a11a855c1ec855666f36a53393e6a19d5a8d37107bbd34afc0ed093", + "storage_entries": [] + }, + { + "address": "0x4cd5f9b68f81090d28e40654d7f5dec1cf01f11a703b51564663f9f04b16ea", + "storage_entries": [ + { + "key": "0x31e7534f8ddb1628d6e07db5c743e33403b9a0b57508a93f4c49582040a2f71", + "value": "0x7be1052608231315e03365ceb6e2fa9d4c080f9b69bb1e8bb754cabc8918a34" + }, + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x205b261acd2cf8831659d84bad329236744234b2d780fa0e17106f399da55a0" + } + ] + }, + { + "address": "0x54078afd9c7ebd97c8a0815c3492bf6784c17d4f0435257dbb84a297c1acfdb", + "storage_entries": [ + { + "key": "0x31e7534f8ddb1628d6e07db5c743e33403b9a0b57508a93f4c49582040a2f71", + "value": "0xc500fb7415fa106df1b95399f5a41b060bd515b7c0e2626540ae19f36e149" + }, + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x71e96b7471cd2e9c184cbc0a5673637f62bc4b5ad106e88d41d0923250ddb30" + } + ] + }, + { + "address": "0x3321bb88902fd1baccdd3bbc43446e9822e3ae6345ea1bc38eecdf3567158d3", + "storage_entries": [] + }, + { + "address": "0x76ca6ae7ca340ae0a7dd0cd07f701c9b593c22ec15f9a76f20d27e1c08cfd1e", + "storage_entries": [] + }, + { + "address": "0x468b9e6f6d25ad43ee9fccfbdc97c69f9357d5699cb0afdf1e9300d43f883fd", + "storage_entries": [] + }, + { + "address": "0x3237b63314f49005710ae7006df3311fa7c8a50d61c79120821ff15568d2e4d", + "storage_entries": [] + }, + { + "address": "0x233bdec02232d34e5009cec2b8c307eacbffeaf10bf8c12b29ac359947fdbdb", + "storage_entries": [ + { + "key": "0x31e7534f8ddb1628d6e07db5c743e33403b9a0b57508a93f4c49582040a2f71", + "value": "0x620221615b90ce36a75bcf2674e8a6ac31a7452393754fb35ea949b1c9f3ce0" + }, + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x1669c8957576b608fce740779abd426acd85c71ab6ab63a6246ae7ea74567fd" + } + ] + }, + { + "address": "0x2934293d5a1558ae14242bf61e2951ef58637796a3312d8b82a2c3ed681312a", + "storage_entries": [] + }, + { + "address": "0x626f99ea4fff7a9b85ad1946f5a25c6da3fe2d18cd012d18caa294a5ed8a44", + "storage_entries": [] + }, + { + "address": "0x6fb48ea58ab6104134fd2d593513af18321874b0ffa156159ec921f6537a2ce", + "storage_entries": [] + }, + { + "address": "0x4c0978d7f0b348f82096a94ff67cb1e0249657b2cb2b34d1ca90c2081d4f227", + "storage_entries": [] + }, + { + "address": "0xef9f3b1c40af7e66094605bdf8574bf6593700f246ced34f43fff9c33e4d75", + "storage_entries": [] + }, + { + "address": "0x70318d5b15c96b2180fc5ccec5d6704c9b1acd5066eab538b047e505bfb9235", + "storage_entries": [] + }, + { + "address": "0x62873a99982c0f17b3fc24499c61dafdb58b53678779b0a1df02b53d4cee44e", + "storage_entries": [] + }, + { + "address": "0x362b1c3923c88c3071a88d446b643947c19ce84933f9e755a54b378e75d6561", + "storage_entries": [] + }, + { + "address": "0x292be6baee291a148006db984f200dbdb34b12fb2136c70bfe88649c12d934b", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x1035435b6d396421b82a0" + }, + { + "key": "0x13cb1c0a4de69c261b8a656c0ddd6b47d021ac42f3467ef2eb9a31975cf8c89", + "value": "0x58d7b1f4190789383c" + }, + { + "key": "0x177478c16249a015a42cdf07514033193bd8b26cb0b4917faa0e5f33d0767d6", + "value": "0x0" + } + ] + }, + { + "address": "0x156dd32e0cadf327fced723316878cd43c30d8d2b3742a570579b73c1171971", + "storage_entries": [ + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0xfbb3ac5255d841f0d599f65" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x4685f53f54a15" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0xd8e01f711c51a324" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66389ef2" + } + ] + }, + { + "address": "0xfff107e2403123c7df78d91728a7ee5cfd557aec0fa2d2bdc5891c286bbfff", + "storage_entries": [ + { + "key": "0x5c3ac47838d1249bee714068f886d8d3bc157aff5f38c5efe0a1795e94c2138", + "value": "0xc5500000c66d00000000000000000a5ed23dd1377ddf3" + }, + { + "key": "0x205d1d1eedcb46073e348acbc1f7845aa9fd9cff997d06de6f2209dbd87ff51", + "value": "0x1ad7820b4d1ee63ce7789ec1b98" + }, + { + "key": "0x13b7ecd67c3eab73d3808252fec7237c33c0bb8df6d8a69d157acf0323a6838", + "value": "0x1de86311760c3cc83a34f98f2eb" + }, + { + "key": "0x13b7ecd67c3eab73d3808252fec7237c33c0bb8df6d8a69d157acf0323a6836", + "value": "0x56bbe5758856a8ef533504bc1ae309bc" + }, + { + "key": "0x4d23e9832ac6633c7bd3e6c4492640ead61f5408ae015d1a259cfb613b420c0", + "value": "0xc695c8aad85cc51f95e1337c407c186c" + }, + { + "key": "0x681c793323f16eb29aea61d03176b21e9102f6b12ca263bb77c9f72192822db", + "value": "0x1" + }, + { + "key": "0x24aff386690ec746dbacfeb6b3e1466cb8f1ea5ec6716ce98c99edccc4574b", + "value": "0x1b4b2e01acee97689ef32662abd71b31" + }, + { + "key": "0x5cb94bebf9467a4d7e0d00f10230d3fdaef22e8a435d12255554717955e993d", + "value": "0x95df0000961d80000000000000000003c398d4b7638e3" + }, + { + "key": "0x6825524ba7b9e33054aadebdf240f4afc4313e2cf3e9f2388872815421e6a9c", + "value": "0x9587800096750000000000000000000065980a00d47dc" + }, + { + "key": "0x5c3ac47838d1249bee714068f886d8d3bc157aff5f38c5efe0a1795e94c2139", + "value": "0x717f37df8c39515465b9fb2cb6eb515c" + }, + { + "key": "0x28580f82d7bba618ed5c4a6dd50a1b07cefafe54efb9d46cf8e7bbf6458de3a", + "value": "0x309f9" + }, + { + "key": "0x205d1d1eedcb46073e348acbc1f7845aa9fd9cff997d06de6f2209dbd87ff50", + "value": "0x20" + }, + { + "key": "0x4d23e9832ac6633c7bd3e6c4492640ead61f5408ae015d1a259cfb613b420bf", + "value": "0x95c38000963b8000000000000000000094533b4c19446" + }, + { + "key": "0x24aff386690ec746dbacfeb6b3e1466cb8f1ea5ec6716ce98c99edccc4574e", + "value": "0xffffffffffffffffffffffffffffffff" + }, + { + "key": "0x6825524ba7b9e33054aadebdf240f4afc4313e2cf3e9f2388872815421e6a9b", + "value": "0x7ef900bb73d3076359dcff1f284e518fbcc7ca35c784e536e035697979a310d" + }, + { + "key": "0x31885fa1c906f11d2b84b8ee152e4d0934ac457cc84c895a8ad25ca5a957eb0", + "value": "0xc3fac000c4010000000000000000989ae731c383c6d84" + }, + { + "key": "0x13b7ecd67c3eab73d3808252fec7237c33c0bb8df6d8a69d157acf0323a6837", + "value": "0x25" + }, + { + "key": "0x262d01c4ea0ba5224219c45caec496441066662f6d51da63f7a7184ad4d7beb", + "value": "0x13773" + }, + { + "key": "0x205d1d1eedcb46073e348acbc1f7845aa9fd9cff997d06de6f2209dbd87ff4e", + "value": "0xa8a54000a91980000000000000000000027c20f155d3b" + }, + { + "key": "0x205d1d1eedcb46073e348acbc1f7845aa9fd9cff997d06de6f2209dbd87ff4f", + "value": "0xc6c95f1b08903f92237e8d6755e5d0c9" + }, + { + "key": "0x5acf47748e3f62f9af63173ff2ddfa43c2ee7f76d59b4683959fb07bd69765f", + "value": "0x3" + }, + { + "key": "0x599635d66f8a443036e8269a86a5467609c81e1e04c794c169bdf0600540a59", + "value": "0x2" + }, + { + "key": "0x24aff386690ec746dbacfeb6b3e1466cb8f1ea5ec6716ce98c99edccc4574c", + "value": "0xffffffffffffffffffffffffffffcbd3" + }, + { + "key": "0x6de46b5ce4f40d32712a20a8b8f1cc4f18f5f66d717c92716a0a7df90ec32c4", + "value": "0x69a4c7650437be9c842dbf53aedb8284b9686753f7bf8df2db0fcc0fde543ad" + }, + { + "key": "0x795d82de2a615ab1aab1b8aa2d02fc22ae7ab9b287e6e80848ae8de39b0f517", + "value": "0x5e9c1f79681bda535e6c2785e4f67d3f10c40c722e46b9660266a1a4b00e5bf" + }, + { + "key": "0x721f4d0631a998a1dfd8243c5005ea5881f962bb148c555aaa5ed28592cbcce", + "value": "0x309f6" + }, + { + "key": "0x4b0de9832f0ba18b365db2362c39044a2cfe4afd398c39c0670d67c74f1d661", + "value": "0x309f7" + }, + { + "key": "0x31885fa1c906f11d2b84b8ee152e4d0934ac457cc84c895a8ad25ca5a957eaf", + "value": "0x6a51c240eed22bcb387752fabc0a653497f3ab736f0f02811dcb11a6f7b0f03" + }, + { + "key": "0x24aff386690ec746dbacfeb6b3e1466cb8f1ea5ec6716ce98c99edccc45749", + "value": "0x43b4920a31bfdbaa560a78b62c82435934af2b026305d11d0624d9fba40b5" + }, + { + "key": "0x7105612c0061c6cf16934c38f5218f2777652540cd7c76e0c6362c3937b990c", + "value": "0x76d2cb46378bba2cf8a72752a0d3c6f61e81b2c40fd96f50da63f48ea308915" + }, + { + "key": "0x5cb94bebf9467a4d7e0d00f10230d3fdaef22e8a435d12255554717955e9940", + "value": "0xc4cd2155fa1ff5e7d5d777701" + }, + { + "key": "0x6a72e1a8922ed120898b53e826a7b71afcee85c683e506b2c1e5c0b80aed82b", + "value": "0x309f6" + }, + { + "key": "0x5cb94bebf9467a4d7e0d00f10230d3fdaef22e8a435d12255554717955e993e", + "value": "0x34c7e5ac9fec2290072af8d09473a9d2" + }, + { + "key": "0x5c3ac47838d1249bee714068f886d8d3bc157aff5f38c5efe0a1795e94c213b", + "value": "0xffdf249457c317377941f4ecc8025d27" + }, + { + "key": "0x6825524ba7b9e33054aadebdf240f4afc4313e2cf3e9f2388872815421e6a9d", + "value": "0x2b64bb38ffc01d54c7660950a4180685" + }, + { + "key": "0x13b7ecd67c3eab73d3808252fec7237c33c0bb8df6d8a69d157acf0323a6835", + "value": "0xa8bbc000a90300000000000000000000006f2437272e8" + }, + { + "key": "0x133873918340656293acc6fb783d9d778aa72359baf4d05f92c9cd1ac033848", + "value": "0x2" + }, + { + "key": "0x5cb94bebf9467a4d7e0d00f10230d3fdaef22e8a435d12255554717955e993f", + "value": "0x912" + }, + { + "key": "0x2db99343a5dd5fb55603b2ec21aa37e3c4c1278b728d30aa8ec485cd316ad0c", + "value": "0x13772" + }, + { + "key": "0x1b17a049a92942e9addea3ab67b43ebcc31f69a47577dfe3a2e7b51d2e87243", + "value": "0x309fa" + }, + { + "key": "0x74e76e61a4c99f17536d80b0430d007fdb083460c34677cdc3080344b392e45", + "value": "0x13771" + }, + { + "key": "0x6cfea43e47592e0d7302e9f5dbbc3294a2eba6ca55427971c0d9f305c9245aa", + "value": "0x1376f" + }, + { + "key": "0x24aff386690ec746dbacfeb6b3e1466cb8f1ea5ec6716ce98c99edccc4574a", + "value": "0x9583c0009677800000000000000000005ca8cf8624605" + }, + { + "key": "0x4d23e9832ac6633c7bd3e6c4492640ead61f5408ae015d1a259cfb613b420c1", + "value": "0x315" + }, + { + "key": "0x6825524ba7b9e33054aadebdf240f4afc4313e2cf3e9f2388872815421e6a9f", + "value": "0xffffffc61a5313a39b0c4321d7fd0cf4" + }, + { + "key": "0x149d9bf076294e71948e259a2146b83107c702c0ce97b455386edfe198f365d", + "value": "0x1" + }, + { + "key": "0x13b7ecd67c3eab73d3808252fec7237c33c0bb8df6d8a69d157acf0323a6839", + "value": "0x0" + }, + { + "key": "0x6825524ba7b9e33054aadebdf240f4afc4313e2cf3e9f2388872815421e6aa0", + "value": "0xffffffffffffffffffffffffffffffff" + }, + { + "key": "0x3693d5d1712821f511841863d6d4a2c3011571d4eaf9d201465df2fe1fc61c5", + "value": "0x13770" + }, + { + "key": "0x54790f1246990196f4db28552651c2a4bb7696f46eb7de96c71c9c5041985c7", + "value": "0x309f8" + }, + { + "key": "0x2129051bc53910507a67e6629819cb92c020a312293dbb39e2e8755dda2ccc4", + "value": "0x309f9" + }, + { + "key": "0x2161cd9e2fdeca77c5467d98fca97d423aba0f9b0ea34e43f330eff88f9459", + "value": "0x309f7" + }, + { + "key": "0x24aff386690ec746dbacfeb6b3e1466cb8f1ea5ec6716ce98c99edccc4574d", + "value": "0xffffff6c3a8d409f541c6934fe6ce09e" + }, + { + "key": "0x6825524ba7b9e33054aadebdf240f4afc4313e2cf3e9f2388872815421e6a9e", + "value": "0xfffffffffffffffffffffffffffff301" + }, + { + "key": "0x62b3e3e35a179ceae81e81b46eb02742e2f138d8837abb1cbb3870b35b3faa4", + "value": "0x309f8" + }, + { + "key": "0x626c1516ce89ba9721bab5a80be8eac0156a0c33fa4b914d4474d86ad33d76", + "value": "0x5e9c1f79681bda535e6c2785e4f67d3f10c40c722e46b9660266a1a4b00e5bf" + }, + { + "key": "0x5f0fe7721b57bfe7eb5dc755270b440c4f70b2026df14b5218aaaae3d80e589", + "value": "0xc58fc000c5e6000000000000000038e17a938e4cd979e" + }, + { + "key": "0x4d23e9832ac6633c7bd3e6c4492640ead61f5408ae015d1a259cfb613b420c2", + "value": "0xfffffffce8d86a5462b4734bb2d722d0" + }, + { + "key": "0x63d16efdc743609ed026c2d06bfac4eae470feec886e6376ec12f1fa5c22cec", + "value": "0x2" + }, + { + "key": "0x205d1d1eedcb46073e348acbc1f7845aa9fd9cff997d06de6f2209dbd87ff4d", + "value": "0x18040da4516869bb63f1578b81bf2a7336977b08fb2941de556ca8726913129" + } + ] + }, + { + "address": "0x4f9a69a5bd2c3b2d3d0755a14111f4e26040ce68834b18597293009c26955c6", + "storage_entries": [] + }, + { + "address": "0x133a05ef1be9371b26fc8f867719f23860efcb0b9b77b6eb2fb74d15eaa4049", + "storage_entries": [] + }, + { + "address": "0x202bb341a34d5343a27a0c0d4a0f80a3f8d445aea2eaf2fd118a53a0bc5f0a5", + "storage_entries": [] + }, + { + "address": "0x2b055fa234ea7234978a56fcf0cec5c5d344554179de40ea0a97ad3e89e71f0", + "storage_entries": [] + }, + { + "address": "0x16f37b6545568e17784ab9dbfe1bd147dc6b70cdc006c7c7e8090c9169965c9", + "storage_entries": [] + }, + { + "address": "0x2f1b4bfa784128c3874c4957340cc6ed8cffd4758b41bcb5c9643d772de775c", + "storage_entries": [] + }, + { + "address": "0x6735e8a88993e28fb7efbd7a4ffb58c8fac1f1a208951bf6a9c5d7337aa0023", + "storage_entries": [] + }, + { + "address": "0x3259acd60d217f8f8fc050fa24cf5ff577ee468b75ea3b6e9938cdf74f81038", + "storage_entries": [] + }, + { + "address": "0x40f5a6b7a6d3c472c12ca31ae6250b462c6d35bbdae17bd52f6c6ca065e30cf", + "storage_entries": [ + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x570768020d35adda77c" + } + ] + }, + { + "address": "0x21714d78512c4d7cc98f8c3959e9026081f9bb33bbb07066eebc51b6ce357bb", + "storage_entries": [] + }, + { + "address": "0x6da4d887cfe31d5e8960e04ba206fe0e3e9d458ef36ebeb135a5af657a4e35a", + "storage_entries": [] + }, + { + "address": "0x44c0805823258cd279017896017151115962a707ebc923c060721a9cdb20a0f", + "storage_entries": [] + }, + { + "address": "0xb582f43c3e7c16b979a9e7ae8c4af6c7d61dfe6e47831af56b2f90d2ca7934", + "storage_entries": [] + }, + { + "address": "0x1aada8dc55fa7881426ee1febe88dc3011724e9b214bf0143d91fe9e6b60d92", + "storage_entries": [] + }, + { + "address": "0xba3037d968790ac486f70acaa9a1cab10cf5843bb85c986624b4d0e5a82e74", + "storage_entries": [ + { + "key": "0x535a79f9174bba81e6e2cb69667f1a0cf4dddedf2a7e1864aafe3b5fb607353", + "value": "0x2fc91aa322714e61" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x1524c999e0b05214166" + } + ] + }, + { + "address": "0x811d8da5dc8a2206ea7fd0b28627c2d77280a515126e62baa4d78e22714c4a", + "storage_entries": [ + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0x30aa609a910" + }, + { + "key": "0x1a004563979c3c56f713d22e370f8abe1a8cae165b397cd90578dda19962d93", + "value": "0x6b4696" + }, + { + "key": "0x48be3692ab3e9e8bd4a134a7b958b4e69bcb00a71d4f58c22f9311921f12bcf", + "value": "0x19feabc42" + } + ] + }, + { + "address": "0x1114c7103e12c2b2ecbd3a2472ba9c48ddcbf702b1c242dd570057e26212111", + "storage_entries": [ + { + "key": "0x4336cccaea9087bc77a0c0d2c62dc799434de02c2fedcebd36142a84d41ad0e", + "value": "0x400000000000000009463ffe00d554e0000000000000000009463ffe00d554e" + }, + { + "key": "0x4b7198fa2f46c28610adae0229118a089133c5d999957697d73e043cb4ef588", + "value": "0x95f840000000000000000000013d0a2cef6dabf07b3e4" + }, + { + "key": "0x1c7be4c6f378a7bf6fffa5689617bebfe109d179a352be20661197196f4eb06", + "value": "0x20c6c95f1b08903f92237e8d6755e5d0c9" + }, + { + "key": "0x6b521215010aab40146957b8e5e77fdeae9e9982a3dd17055608f02a21e888f", + "value": "0x6000000000000000001574d49832caa0000000000000000000129406cdcd18c" + }, + { + "key": "0x3c49cb980699c1be6cfa54c9fd97be88b580c50b6919f2e8dec5ecdd51976d9", + "value": "0x40000000000000002b136d60b8933df0000000000000000028077921a351a25" + }, + { + "key": "0x503b79851918fc8c9a84ae80e5a379ad1cb65e2c6f6ee78877d1065735b1bd4", + "value": "0x600000000000000000085683af283dc000000000000000000002caee1d9bcf8" + }, + { + "key": "0x4694b6cc4fa86e4d2115395d2a2946c1a26856fac7af865ec086538481764f0", + "value": "0xa8deb00000000000000000003b67df9588d068601cace" + }, + { + "key": "0x7215eaf043540a39d300290acae921ccdd67f0b6a378644172b6ddfcfd74ad", + "value": "0x60000000000000001fbe5b599dfba9b0000000000000000011563f9329584b5" + }, + { + "key": "0x2c12209099404910cc03c8448ba9acb60c3be3faa22454e4d109817729302d5", + "value": "0x989ae731c383c6d84" + }, + { + "key": "0x6c1714f1ee4674433a252a3ac18e12f1b0f279bff16be742df52991af669ccb", + "value": "0xffffffffffffffffffffffffffffffffffffc61a5313a39b0c4321d7fd0cf4" + }, + { + "key": "0x2727f3c7561536a5006317dd5112e63e760cbf045d8917a1deff8c38083e614", + "value": "0x4000000000000000000a662a5b0f0db00000000000000000000a662a5b0f0db" + }, + { + "key": "0x8055aaca04ee991d68932992b6ead3f06bebf4e7dfe61d452445b81135afd5", + "value": "0x4113ba85d17ebb93f96e5ec522b" + }, + { + "key": "0x3318fbed6a8899bf80b84b00c1eb7ca11baf8ba1d6961689b5757bd751d852f", + "value": "0x38e17a938e4cd979e" + }, + { + "key": "0x5759838b461477a6ece55805c094f045390e3fabd7f6dc2050ef458a5b39791", + "value": "0x1de86311760c3cc83a34f98f2eb" + }, + { + "key": "0x4a5106f917d91db000a0b438d6fc79295f5b2e82fb4c5597b1ed48d6a11ddc5", + "value": "0xc4cd2155fa1ff5e7d5d777701" + }, + { + "key": "0x5759838b461477a6ece55805c094f045390e3fabd7f6dc2050ef458a5b3978f", + "value": "0x6f2437272e8" + }, + { + "key": "0x5759838b461477a6ece55805c094f045390e3fabd7f6dc2050ef458a5b39790", + "value": "0x2556bbe5758856a8ef533504bc1ae309bc" + }, + { + "key": "0x4a5106f917d91db000a0b438d6fc79295f5b2e82fb4c5597b1ed48d6a11ddc4", + "value": "0x91234c7e5ac9fec2290072af8d09473a9d2" + }, + { + "key": "0x4092289c1fccf5af04adaca35c1267808fb943873a47205f1eae8968f3908b7", + "value": "0x35c91cded25601fcac7eff04a10edc" + }, + { + "key": "0x76b5630907c5396bb0061e9975c8da75627d73390ce63428d847f63a90137b9", + "value": "0x12fb4f1b71de7e1092ddbac996" + }, + { + "key": "0x7a58d999738e6ada307448c3c1040e5bdd93d579cb177c425c5d090dc4aaccc", + "value": "0x10b06ddeecbada6818ff2d44e8be31f" + }, + { + "key": "0x1c7be4c6f378a7bf6fffa5689617bebfe109d179a352be20661197196f4eb07", + "value": "0x1ad7820b4d1ee63ce7789ec1b98" + }, + { + "key": "0x374f80162d1db36d0ea1230e2d1adfdaf87a37338d03537f1c07f4c95d99431", + "value": "0x4000000000000000590270adbd9d7ed00000000000000000590270adbd9d7ed" + }, + { + "key": "0x2ba9b3f42ac2688d3ea067aa8678a63afca79642845a242493924b2977982f0", + "value": "0x727a973df66434d7c68a7d70d481edc9" + }, + { + "key": "0x4f9adc0de2a9cc1ac499f8ad8348370878cf1d6237a224f65a674dac56d9b3b", + "value": "0xffff00000000000000000017be8ae24aed5d" + }, + { + "key": "0x47fe05a9ac55b3caf8d019ffa401d80dde757ae27bd3fd886197b3febb9c0d8", + "value": "0xffffffffffffffffffffffffffffffffdf249457c317377941f4ecc8025d27" + }, + { + "key": "0x79cf7b8564c5cdd0cc7cc70c4d11f732ef75f599aeb895ed4db876030a5de5d", + "value": "0x400000000000000005ba7d79dc9e9a30000000000000000005ba7d79dc9e9a3" + }, + { + "key": "0x76b5630907c5396bb0061e9975c8da75627d73390ce63428d847f63a90137b7", + "value": "0x1711f720e7e1124" + }, + { + "key": "0xd2a088bf49e12d368aac87d2cfe02999472e3fcb5a59ada198831a12b4a1cc", + "value": "0x66389ef2000180881ef1a30000000002e0dca0aebe4ec44581318f4a1145bc" + }, + { + "key": "0x307aedcfba7557c8cf86a62ed0aefc6e44b5b4d80f421218332b65ed1875a6e", + "value": "0xffffffffffffffffffffffffffcbd31b4b2e01acee97689ef32662abd71b31" + }, + { + "key": "0x20889ecebf032c83e44174bd6457730aff4f1e1fe1215837562cc0a5c6b2544", + "value": "0xc5bc70000000000000000055b08d00db338ade1170bc3" + }, + { + "key": "0x3b4957575d0f61d26f2a9bda1cb080bd05988c30ff160f5876a70a925059106", + "value": "0xff00000000000000000000094533b4c19446" + }, + { + "key": "0x4ae6d3e531b79d66e0d47bdec50a6c5f0781cf257bb23c89343f288e22887a2", + "value": "0x68d6396c7da043dd6d51e4976c5" + }, + { + "key": "0x307aedcfba7557c8cf86a62ed0aefc6e44b5b4d80f421218332b65ed1875a6d", + "value": "0xffff00000000000000000005ca8cf8624605" + }, + { + "key": "0x307aedcfba7557c8cf86a62ed0aefc6e44b5b4d80f421218332b65ed1875a6f", + "value": "0xffffffffffffffffffffffffffffffffffff6c3a8d409f541c6934fe6ce09e" + }, + { + "key": "0x604705a8b176b9299304589c5888aff34c9fc81d40ada9e73992f29353aaa89", + "value": "0x66389ef200012091e2c6cb000000000000000031cbc0c6d85ac0769f912829" + }, + { + "key": "0x43c712c922fd035d37ecad44e78c079e169db9b227bfe1c3b4980d6afefca1a", + "value": "0x40000000000009cc48cbd56fd992723000000000000007e8f31a4934d05f173" + }, + { + "key": "0x4e9e0e927ff85a98bcb118c36178c8f5bceef8446f0200c661a7ae9610ac8f5", + "value": "0x40000000000006f0b7df494d3cf6548000000000000006f0b7df494d3cf6548" + }, + { + "key": "0x25eba8b98f1d7c045bb0da4db9b0ce55160e860e255204c73eaaac6565ff637", + "value": "0xfffffffffffffffffffffffffffff18a88a9e50f9691d9e60cca7126dbc2d2" + }, + { + "key": "0x76b5630907c5396bb0061e9975c8da75627d73390ce63428d847f63a90137ba", + "value": "0x385f3c9cdc855c87900000000000000000000000006e41b5a" + }, + { + "key": "0x1f57b8dcaebd321aafbb9c979a5e0c39916b5134061a6d15acfc661f3bf9e51", + "value": "0x60000000000000989ae731c383c6d84000000000000000989ae731c383c6d84" + }, + { + "key": "0xcc35c36d89d811a277c01d9cf3477bbc4ddd730d1bb43fbdf2d25f58953794", + "value": "0xfc2d4443815c49e0cde92bf644ede04d" + }, + { + "key": "0x5f0d871fc67215382fdd4658c6b996f78542e256d1c9f23507cf3dc7c3e9ff1", + "value": "0x82faefa0ae5169470ec09aab4ac69107" + }, + { + "key": "0x604efb14c7fe13778f3446b455a3890728378875b00673aa79fa61d36512543", + "value": "0x66389ef200003183e137da0000000000000000000b85029a46d862cca1a310" + }, + { + "key": "0x4f9adc0de2a9cc1ac499f8ad8348370878cf1d6237a224f65a674dac56d9b3c", + "value": "0xffffffffffffffffffffffffffec5b888194103bc9ffaaeb86a611a0d81319" + }, + { + "key": "0x4a4f4c75a42ca953aec36b5c566010882b1723b321cdc59ab7eef6409981d77", + "value": "0x18c" + }, + { + "key": "0x6c1714f1ee4674433a252a3ac18e12f1b0f279bff16be742df52991af669cc9", + "value": "0xffff000000000000000000065980a00d47dc" + }, + { + "key": "0x4e7fa96de2519272d6ded3565591b4b53efbcd88e9689d6b993570ec95e98f1", + "value": "0x95fe40000000000000000000013e91d0f3318de07e2a3" + }, + { + "key": "0x179a1d1ab3137ad7d375c6d920dc5abf93f66c6577702a11097269c748d7644", + "value": "0x4000000000000000000000000000000" + }, + { + "key": "0x156f9c7abe798baad1c90b4ec6815a0865e1cc735b7777fbea3efc771f9bf21", + "value": "0x7f63ddf97d8f953aaaf6c6f129e11c9d" + }, + { + "key": "0x25eba8b98f1d7c045bb0da4db9b0ce55160e860e255204c73eaaac6565ff638", + "value": "0xffffffffffffffffffffffffffffffffffff102db6eddd254fb6ace8ede30d" + }, + { + "key": "0x745075248ed2ce6df550aa3c145794bc704e2e4bdd01ee43fedd545c3a02312", + "value": "0xd8fdf0000000000000001145258132fdff5ba7bf4d148" + }, + { + "key": "0x534003acd005ee1e24b9cc085ac768a21fc2f22b748f69627483b74cdeb0292", + "value": "0x60000000000013dd4e2377ff41498190000000000000117fd6c596b97faaf21" + }, + { + "key": "0x3b4957575d0f61d26f2a9bda1cb080bd05988c30ff160f5876a70a925059107", + "value": "0x315c695c8aad85cc51f95e1337c407c186c" + }, + { + "key": "0x1c7be4c6f378a7bf6fffa5689617bebfe109d179a352be20661197196f4eb05", + "value": "0x27c20f155d3b" + }, + { + "key": "0x7d9736edbe8643f25a9eccb0942e13bff79f9c15254109e99536dd0c0a39ed7", + "value": "0x269941b209de87" + }, + { + "key": "0x65d708e9a934d6aa0af89849986f00e1f415b6cc0e6e93e0def67189dca05e4", + "value": "0x60000000000000003b967b3675cb06f000000000000000003b4c5feb5aa2a37" + }, + { + "key": "0x4cd0b28036fa22b2dd2e307c97990aac80fe6aec5953e5e9b0fb9d5184d26c9", + "value": "0x3cfbce47fc24064878658d7f3a00e" + }, + { + "key": "0x34fd445f5db036411d8b58b3343e870b64023be54524fcbf60f77376b600a0d", + "value": "0x6000000000000005240328b14ec5d30000000000000000051a01c1dbcc68932" + }, + { + "key": "0xbe914335687c5e65948d8e0137d431787a0258b99b165e992195530b282a3f", + "value": "0x400000000000000028d424a172e01c90000000000000000025dc9e992f0013f" + }, + { + "key": "0x156f9c7abe798baad1c90b4ec6815a0865e1cc735b7777fbea3efc771f9bf22", + "value": "0x67c2" + }, + { + "key": "0x7a58d999738e6ada307448c3c1040e5bdd93d579cb177c425c5d090dc4aaccd", + "value": "0x579e3ebea249e958b05a8877dd973563" + }, + { + "key": "0x47fe05a9ac55b3caf8d019ffa401d80dde757ae27bd3fd886197b3febb9c0d6", + "value": "0xffff0000000000000000a5ed23dd1377ddf3" + }, + { + "key": "0xc058c8b6ae41745fcc0197cab2bbeed684f4b325afd749ff03acda0cfdc1bd", + "value": "0xdc28dca92a966fb0e50e3f48f7" + }, + { + "key": "0x2e04f47d215fc9cd5fae4050113118451779d598d6cb95d43a870953a44719d", + "value": "0x192b42b14b0b1fa4f5" + }, + { + "key": "0x2db691b34d3849d60a99a2a609400bc1715466fcd22850ca17b18904d5aecba", + "value": "0xa8de000000000000000000003b5f74ab63cd264ca48c8" + }, + { + "key": "0x7ef364aee343658a1a74bff52ae9a71cb3afe714ee4324baab7dfd9271b8620", + "value": "0x40000000000000000005bdf79732a72000000000000000000005bdf79732a72" + }, + { + "key": "0x3816af74669760adc3f3e74368a35886ca4e5bf545d9cff0530e00c8be3402d", + "value": "0x60000000000000006ea3d586d8cf91a000000000000000006d34043e0e14b8e" + }, + { + "key": "0x658e1ab71c65933f08eb0fbb029bd7b0a230a42fcc913fbc8483545e7abd5fd", + "value": "0x26b" + }, + { + "key": "0x4a5106f917d91db000a0b438d6fc79295f5b2e82fb4c5597b1ed48d6a11ddc3", + "value": "0x3c398d4b7638e3" + }, + { + "key": "0x1f874d13289b986fc31bb6e396c37ebe60ac1df87cf5ba51f1775a64c3b4fb8", + "value": "0x5bb0da5306e64293" + }, + { + "key": "0x483fb6e13583d340e9b498d1bbb604dab1fc3bebaa4c6c79e592a5be191f921", + "value": "0x66389ef200003191782e700000000000000000002794cbb0f59d99330fe3e3" + }, + { + "key": "0x25eba8b98f1d7c045bb0da4db9b0ce55160e860e255204c73eaaac6565ff636", + "value": "0xffff00000000000000000000000000000000" + }, + { + "key": "0x5f0d871fc67215382fdd4658c6b996f78542e256d1c9f23507cf3dc7c3e9ff2", + "value": "0x1020a83909910a278944ff200a9615" + }, + { + "key": "0x79c85777fc6016394e3dc0ee37c2ce0fb5fc4abf948f4e1bc4cdb7d50e2f717", + "value": "0x4000000000000000060d8ad2204dcca000000000000000000246958472929d0" + }, + { + "key": "0x52a714c7747ac1c22c598ff65c7aa097bb255c3fddb824f29e9b4fcedc30579", + "value": "0x74c64fcdf0777" + }, + { + "key": "0x5f0d871fc67215382fdd4658c6b996f78542e256d1c9f23507cf3dc7c3e9ff0", + "value": "0x40000000000000989ae731c383c6d84000000000000000989ae731c383c6d84" + }, + { + "key": "0x4f9adc0de2a9cc1ac499f8ad8348370878cf1d6237a224f65a674dac56d9b3d", + "value": "0xffffffffffffffffffffffffffffffffffffcc4e49bb545439d7c970f39eb8" + }, + { + "key": "0x29f08d82817935e112baef0c74939449768b97bb5d4491962c9d2ec13d89fe9", + "value": "0x124" + }, + { + "key": "0x4f9adc0de2a9cc1ac499f8ad8348370878cf1d6237a224f65a674dac56d9b3e", + "value": "0x4b09a6c479ea88a60000000000000000000000000070e849" + }, + { + "key": "0xdf07bc81f60224619d992d3bee1056aadec80ac241ab02fe63c1c7e26c5a4b", + "value": "0x600000000000000001acdb1d3ad735300000000000000000001ea2f3f87bc51" + }, + { + "key": "0x61b823ecbdc85f14eb0b989ddcafdabef7e9dc3cbb42698f5be626fef60bcdb", + "value": "0xe86a70000000000000019683255dec006ebffb3a809b0" + }, + { + "key": "0x2fdbd7bb517e9a9e75f8d0b3ce856aef058efb7a0fc30cc4a46a19ddcb8ad93", + "value": "0x12df" + }, + { + "key": "0x47fe05a9ac55b3caf8d019ffa401d80dde757ae27bd3fd886197b3febb9c0d7", + "value": "0xffffffffffffffffffffffffffffff717f37df8c39515465b9fb2cb6eb515c" + }, + { + "key": "0x5509d8009f031097804aa3db8b3a0ecdb8dba49bc3c1e2017eda629ed0d6393", + "value": "0x10" + }, + { + "key": "0x8055aaca04ee991d68932992b6ead3f06bebf4e7dfe61d452445b81135afd4", + "value": "0x42526fc66cf46b35161e9e821de1fcee88" + }, + { + "key": "0x3b4957575d0f61d26f2a9bda1cb080bd05988c30ff160f5876a70a925059108", + "value": "0xfffffffffffffffffffffffffffffffffffffce8d86a5462b4734bb2d722d0" + }, + { + "key": "0x4d85e782c6388e48860cb4f8f7a1fe8bdcdd87fc1af59d454247e9c21c65d47", + "value": "0x60000000000000000008ae24b573f8c000000000000000000003b4da1d53ad6" + }, + { + "key": "0x7df7da9312ca98a5eac9f634eebf39ed4ffba74f7ccf3869d9d09dfd9869a24", + "value": "0x984a5a39bc83f5446a3a15673f" + }, + { + "key": "0x3a8651c5f7eda965d83ac5cdfd042c739e3b55b27ce608d8a582b69821a041a", + "value": "0x111b159dbdb1ca7c29de" + }, + { + "key": "0x672cbff31c4d2e050756f7878bb24a3b5a927dff1e9495024fd291dac5a50af", + "value": "0xab2cdc6253ddebcd352e08e4e77" + }, + { + "key": "0x10060fb554b3ccb720f4bd34f4f1a3c61ae980b921fe36e80db68a6c1556dc", + "value": "0x1b4d8020dc073319" + }, + { + "key": "0x4a9da97bde3d5d1a889b1cbeb731c44eca493e6f863215b3980e4efdd2a77d4", + "value": "0x6000000000000000339e8443dde166300000000000000000286bc5767b89057" + }, + { + "key": "0x3c4cfcc32515ab7698d8af11cb6729d14f24537846ccf02073ab2932e5d6049", + "value": "0x6000000000000911a3298a9292ab52900000000000000149ff14c4b08f04ff5" + }, + { + "key": "0x592f69ecfcfc64e56beb0f3ecebaee535e8d4fb201379cc41ce44161b90dfdc", + "value": "0xa8df400000000000000000003b6f1caa98f1221014d44" + }, + { + "key": "0x5720be70bcebce0c5188ded70523c99ce4972bbd7d18ed9c6b1d429275389f2", + "value": "0x931b037" + }, + { + "key": "0x4987b0bc76b31335c11e54b3efe4d3125fe15eca508324203e0e9f83123963f", + "value": "0x400000000000000000156bd3ebed2480000000000000000000156bd3ebed248" + }, + { + "key": "0x76b5630907c5396bb0061e9975c8da75627d73390ce63428d847f63a90137b8", + "value": "0xd4e67485c0e4d9b2ae7f3db02bbf2a2f761" + }, + { + "key": "0x2434ec9e252db6da1bc58a90c2bcef29de3ce0c41c7d806050e37043cb4eef2", + "value": "0x804769b705a1b9fb0c6c848bb8727c58" + }, + { + "key": "0x6c1714f1ee4674433a252a3ac18e12f1b0f279bff16be742df52991af669cca", + "value": "0xfffffffffffffffffffffffffff3012b64bb38ffc01d54c7660950a4180685" + } + ] + }, + { + "address": "0x2855cce794bfe22da863f6e209d6474a6ee3f84dec50b896f6db72669c31655", + "storage_entries": [] + }, + { + "address": "0x326a8d16daac3c544c72936bbbcb729ec50b18b9bc3b223bd4a58ec69291b93", + "storage_entries": [] + }, + { + "address": "0x401366baba097d848c538bf30015679dcbbf3fc01523425a291daa62c7f9e63", + "storage_entries": [] + }, + { + "address": "0x7253a90deb2fdfd48d515bdf92e18f48ce043fe1bf48874e985ae0644f7c9c6", + "storage_entries": [] + }, + { + "address": "0x1a6eebbc3a969afcd15b88238c3084174e2dc69c56dbf19149368e9b34dca7a", + "storage_entries": [] + }, + { + "address": "0x8302ac9660f6b3c4d0779af6afbc737e8c369b5094e6274f98e4f2237507f0", + "storage_entries": [] + }, + { + "address": "0x2d95b9393393e54ea00fe55424cd7df233d5eea7599f26fe53f9692bef0c192", + "storage_entries": [] + }, + { + "address": "0x3d3c4f7ae66c46312abcd32b7382685a1f0f15f0851c7487e317723074b1bdf", + "storage_entries": [ + { + "key": "0x412647986215a49a89de616bc520cbcfd93962fb03f43fa5163e777054a028b", + "value": "0x7ec42ff29859df3" + }, + { + "key": "0x6507d2d5b6784f222678bc8ab3c25ef9c9b594031b796e0229022889f662c70", + "value": "0x247140b67678c570" + }, + { + "key": "0x59aec7e67a827932913cf450506690db7c24f30e6104fcd3baa14085da75b99", + "value": "0x3c24e1f75dd5429" + } + ] + }, + { + "address": "0x3fe2b97c1fd336e750087d68b9b867997fd64a2661ff3ca5a7c771641e8e7ac", + "storage_entries": [ + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x1090a37" + }, + { + "key": "0x13d0c87635987c37a5fafb2f1252457cc5304affd8a6d7eff25275377aabd5b", + "value": "0x4439360" + }, + { + "key": "0x39743e2d6c62b3eb9bf1345f5ee3cc02229635e1b0b932df49e26a7a80ca911", + "value": "0x24027b" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0xdff96bdb" + }, + { + "key": "0x74c2e16562b96d61285c428cfd1e31e2877218be9a3cfbcbf97751c589c0955", + "value": "0x0" + } + ] + }, + { + "address": "0x39e67f782da34e09fc8483eb8820cf8036e622639c6823d1d1cc349192d93cf", + "storage_entries": [ + { + "key": "0x4ae3be8e3df4051e9867a1401907f032455a6049bd7711045b8df7f5550faf2", + "value": "0xda000011020440640000000110000c0" + }, + { + "key": "0x6dd877e6b0d2aa2884ac0b7c6d992669a90a1ee0aaabdbef71caedb701d8b9", + "value": "0xc180000720350002a424c81000193010" + }, + { + "key": "0x15acd4d6223881f9ec55410f72f7a10010f7ad25faae2ecbb93a56822ebb2fa", + "value": "0xfcbe6e06c58fd43bf7ff67bed9ffffff" + }, + { + "key": "0x3bb92306ab81616992212643f705265db5de25d054aa413e314cdc23a4122f8", + "value": "0x1004805044010000000500c101180100" + } + ] + }, + { + "address": "0x1b80bfda8c7d28794c1ee4cdf3c34f29cb253295ba83ab6a6d87dcb67cabc3b", + "storage_entries": [] + }, + { + "address": "0x6671cc3d42874ef09dd7bfd15a0fc44e6b13435d0dc88f003cac771a843500a", + "storage_entries": [] + }, + { + "address": "0x400d53e74cb235968f1e3fe3ccc6e3512dbfb2632c2c8e9e79abca4fa01414a", + "storage_entries": [] + }, + { + "address": "0x23e1dee8e0d337c60917aef756906a004276844dcc7da5c07ca40d3cfb70048", + "storage_entries": [] + }, + { + "address": "0x6042cf0225d6bea28b833850b6d96043df0e0a55cd247222a8fd33445a85c11", + "storage_entries": [] + }, + { + "address": "0xb680ebd0431d9f56aba1708e534eebd84f79b1579b16d669cba8ea192f15f0", + "storage_entries": [] + }, + { + "address": "0x890658496dc509f1e6350f75752179d61a2f50ea1cbde17a2a848b74fdd0f1", + "storage_entries": [] + }, + { + "address": "0x1c04a3346648ef9043b016ddce685fc972271f324cd77963244246290ac8cb5", + "storage_entries": [] + }, + { + "address": "0x30baca044acb3de3d5f54feb1eee5cfc238aff52c188af2e7a0b94ef8cd595c", + "storage_entries": [] + }, + { + "address": "0x1f3dbecd34563669cce09da131c2253fb7381393fa4b08b38ad58b2519bb5d", + "storage_entries": [] + }, + { + "address": "0x39aa937808f4a098a0825172f73b84239d83b7a13fa63b3b537af39abee4bff", + "storage_entries": [] + }, + { + "address": "0x3eda71ae75b13f0f37653be8dd3d8cc1762b3de42ed69504c51283702918aa6", + "storage_entries": [] + }, + { + "address": "0x1c1a1542c2fd738bf0f53be8e53835f0542cb7ac7bbe44c1e64a4d0e1cfdbce", + "storage_entries": [] + }, + { + "address": "0x2a5ebbe29e70647a2232e60d4a53b037d1a4c89ffc0472526f3ba646b369705", + "storage_entries": [] + }, + { + "address": "0x7bbdf36eb04b347e1ecd9b9b37eeac1688fa252db68888a79fdef358667feb2", + "storage_entries": [ + { + "key": "0x5b353aa72daa303ecff86f5e316ec4020668938f6e211bea3ad126d6b9306e6", + "value": "0x1110100a0185020034445002200042e0" + } + ] + }, + { + "address": "0x5dd3d2f4429af886cd1a3b08289dbcea99a294197e9eb43b0e0325b4b", + "storage_entries": [ + { + "key": "0x5c932805c6b6500840b6bd79cf1a7280b2749fa069abb1e36550e37ce185d7b", + "value": "0x100d00a900000000000000000000047c16031805b61c292f79daeeef6ff" + }, + { + "key": "0x73d24f0f5c58e37b4c9329a9dfaf5eddcc660e79f122bb0466002197fdb5f85", + "value": "0x18d435b00000000000006deb4ba77c10790373b15aa717c3bdbc43be6" + }, + { + "key": "0x377a06f99c076c4ce9af686c5a1f8e7ab88a1273c530dc5f94778c4b79cd419", + "value": "0x7a68cc8086a040262d3119dbebc6e39" + }, + { + "key": "0x1ceb15b5b007fe88af99ae8db9a89a5e5b5c0b892477418d013c3611d2c6522", + "value": "0x100761b160000000000000000000556da503457ca368839717eb84f22fa" + }, + { + "key": "0x604f413908666c13125854dafe9079dd5a2107d388ab95594ad8e4fab83207e", + "value": "0x8e685e9d135f2654db524045aaf" + }, + { + "key": "0x5f927b3a7c239b53ef69078a8c9de91088bc6d260e0ad89a0a7969f62db8e7b", + "value": "0x1a611e2541d3eb0" + }, + { + "key": "0x3af7018c4aa6e5fa9c0422a94b88f858654f47a8bd2c875ecf0c2972a78b5b8", + "value": "0x5c915582bc75dbac1ad0aae87ca92574" + }, + { + "key": "0x496e6541469cf7681c25061e3c3b36244fe281d7bf2b4860ab01561957ea3a6", + "value": "0x353a9ae96200b" + }, + { + "key": "0x48974f426ba72174b60988f4840ebbe0d67e812a96fc288dcd5a44d1f7f23ca", + "value": "0x800000000000010fffffffffffffdbf80817747ae60fa6662d74187ee6de337" + }, + { + "key": "0x6fb851602697e57eb9b3b76890bb893e796c4fe1695817ff78393950e954396", + "value": "0x21640f8283ac9d6588" + }, + { + "key": "0x7ed715b5117e2c4ce5878bbfc6d610ae7e96f8a63b03688cb85da00c24a311d", + "value": "0x1e8000000000000000001000fff24d9e22142ed9b5e2b6e815f4c" + }, + { + "key": "0x7ef0570b85b8880e3bbf3c6513dbb513d0f0f6ebd484e227ad2d3d9c72436e9", + "value": "0x21640f8283ac9d6588" + }, + { + "key": "0x1a2ab876e57364ae8b443cbf633086b8d7b0b90542a086174d37d5d71b81d55", + "value": "0x48539e03714b5168" + }, + { + "key": "0x48974f426ba72174b60988f4840ebbe0d67e812a96fc288dcd5a44d1f7f23cb", + "value": "0x800000000000010fffffffffffffffffffffffcb87f5840b2bea774fe9ff663" + }, + { + "key": "0x611d89d6cfdcf47562055f1644c9f6399845a78e7e46c021bf82aa773dbaa5", + "value": "0x8bc39633cfe7c" + }, + { + "key": "0x314fab4f74feff1d471ccfdea111779bf6bd85b5957ca6e55946fcbf0257f07", + "value": "0x1a59cfa0000000000000f41dfac8c529bb870e72d89165e10af580c35" + }, + { + "key": "0x55c122c466b558e7a4c9a821edb4499bbbad4cb401efe01facc92cd64f76b47", + "value": "0x21640f8283ac9d6588" + }, + { + "key": "0x36d01a4a82a8fe6047dce819f0df29b08b0acdd2455a7989157ed68f095a739", + "value": "0x10b0bc80f2dbe9e" + }, + { + "key": "0x458404a39887901f80fa8d34f2a710df178ae04088012dc0c9c78c683392edd", + "value": "0x34e922b433288f8" + }, + { + "key": "0x5e69fc4efef5ed193323008ab7da661e68c1614fd67349558433884cc5ec435", + "value": "0x0" + }, + { + "key": "0xae1b72a594adf942d61d66fb222d7bbe953934f3b762905c245fa71ea84ab9", + "value": "0x2db02e2181eae8c17928c2827afd6a66521b" + }, + { + "key": "0x5a5faf04804b642b7f0ea93befede1cd6e715f6df4fc4578c9160147f26bea5", + "value": "0x535c3699bb" + }, + { + "key": "0x2b6492dbe1134db5deb7ac60cc86dd06c9eecaeb9aaf5e2e753bfb3aaf19a4c", + "value": "0xf6392bd41ae1a149ead1b806569cb28f8a" + }, + { + "key": "0xec10cf121502f7f268f244072da415243db461f004d27a7bef7f2eb6d6512d", + "value": "0x27ea8f508073a" + }, + { + "key": "0x4a38cbae10e1a3b8df4a48e27afd3e7717b1da8f5304cab5ce8c3020dbe65a9", + "value": "0x1111e32e7b1dced033a30988" + }, + { + "key": "0x3e610c62d63161dffdfc2714deab90d00ec61216379e427e889bcf1dde7b3b0", + "value": "0x9672389eece5b" + }, + { + "key": "0x17759cc5f1ea42115b07d619687876d99d461226b855338f4598b74df1c31ff", + "value": "0x2b9c91e9e1c77424f" + }, + { + "key": "0xcdcb7de689ccbb76fcfeda7edd9484cdc0c62b63a4e8672248d9e8f0b6d7d6", + "value": "0x0" + }, + { + "key": "0x6db1df98bb5c8addfe52bae9301d603938abbba89c204f8bace29cc8e3de223", + "value": "0x99afbe3ad23a15cd9fcdaed4af" + }, + { + "key": "0x7b12b55f02caaa35d4ad6a93ae2398bee866de371bf41eb561dc49346752dde", + "value": "0x3df1930ce1011ab2b550608cb6cbd9d3f37" + }, + { + "key": "0x421c8a67525231d1bd6a8df8e79651b136a1b5910c9b29e6bbbfdfa061eb616", + "value": "0x114c860c369a65d5f60" + }, + { + "key": "0x69c6fbc68635348aaed1ad9cf4dcdb407d7be725c095778662f9023eb0c3f4a", + "value": "0x1bf56f9a9edc09c6a345f9e6fa8" + }, + { + "key": "0x2b6492dbe1134db5deb7ac60cc86dd06c9eecaeb9aaf5e2e753bfb3aaf19a4d", + "value": "0x8e2b565308741ed954c594ad3b8" + }, + { + "key": "0x328e83897e8b82a5627d6c225b41a7a59664fd5d416c936dc92b83be85cc334", + "value": "0x4a6dbe843a04b8" + }, + { + "key": "0x4c2b45dd0c557a5b92aaf102418f193801d88462ca83991793ed017d4ad9c99", + "value": "0x222e3b72309337c45ec8b2ab545" + }, + { + "key": "0x5b66afc159e1a9ac6ea88ac18af84f04717572cd5a1af0d9318a0e208fbda52", + "value": "0x22125720703b08a85bc" + }, + { + "key": "0x5442b8d22a3e54e93133f1c7ef91d8fd4b68309ba9abf5a5fe05599b91e870d", + "value": "0x789138d33b82e" + }, + { + "key": "0x5e69fc4efef5ed193323008ab7da661e68c1614fd67349558433884cc5ec437", + "value": "0x0" + }, + { + "key": "0x273ef630923c6383f9454a5fd7b89976a915b64344633ea984a8d79357fed2d", + "value": "0x1699bd2f4c195d" + }, + { + "key": "0x79541114db2c85598b8e7681e5ab78bf43624bc7636b60249889f8d4ec5894d", + "value": "0x10075f581000000000000000000055d719bac2b1864d0c0b12f7ea3ac71" + }, + { + "key": "0x736b45bc89b1b0b40218d10fe4813e6c9a8448da6ebe7cc191f7f2aea83088", + "value": "0x10d6380e5ceba5" + }, + { + "key": "0xc3c760984d8770da85e3f1e6fe78cd28126b0ea37d2fceafca6739db3cf529", + "value": "0x32cab0908470cb398aa8e776dfc66e" + }, + { + "key": "0x420ec6960ef67a5d7ee85bfd787d12c4d528cb666bde88c5af0a9f9a08bd5e0", + "value": "0x2bcd5a32c7e0d" + }, + { + "key": "0x191c6d5fdbbab45d1f0ba54b3e3d78ed3c5ccf69e006b26adbb0f0dc133dcd0", + "value": "0x756b64f1ffd73fdd61438b4ee21f" + }, + { + "key": "0x2a757b72c09a97fdd9a1575b2fbd6fc8dd9244ad8e03d5009cb873de02aa897", + "value": "0x0" + }, + { + "key": "0x69231770222be37be5daf78e88a9665e860c666c9f0542c9ab8d864b8793cc6", + "value": "0x24d9f7dffe1dc2" + }, + { + "key": "0xbe3902bb1d9b1a5cb2822f23952815586379dd42cd2a0aa80e95f14c8e4b7f", + "value": "0x800000000000010ffffffffffffffffffffffc44e4a6dfaa5fc0b26ee6776ab" + }, + { + "key": "0x5c2b3363fb7e4970f93ff654bb89e2f5e740ff2dbe7d3658c5d0ed5002ed69e", + "value": "0x1000535bb000000000000000000d7d2c83b3d5bccfb391c95b52948f4ee" + }, + { + "key": "0x285da77aea7895ae600612235330a593bea49e5f84b62ffb2e094a5b1362c00", + "value": "0x101a5a1d2000000000000000000000010c4b82cfb665fa0131822b60e63" + }, + { + "key": "0x6dc128d02fcf64da5f640641f9f4d23b43560480e184e31a99971448c780f06", + "value": "0x41ef9c68e88d" + }, + { + "key": "0x3af7018c4aa6e5fa9c0422a94b88f858654f47a8bd2c875ecf0c2972a78b5b9", + "value": "0xdb2e02f4f3c889da45c5bb88b87b4" + }, + { + "key": "0xcdcb7de689ccbb76fcfeda7edd9484cdc0c62b63a4e8672248d9e8f0b6d7d7", + "value": "0x0" + }, + { + "key": "0x5af35c5e4fcabd060e8498ede27a80eb336e7dfc0a11ef24620c1f456c88539", + "value": "0x98614cf1fe9c8ca4a6" + }, + { + "key": "0x328e83897e8b82a5627d6c225b41a7a59664fd5d416c936dc92b83be85cc336", + "value": "0x42831575eb8e49b43f986c2e0dcec" + }, + { + "key": "0x1d52ba6c692370a3319ed2c30a697583dfe2fc6fa1ccaa09a7f3fa23d2a4363", + "value": "0x64a901e611e2b897" + }, + { + "key": "0x4a38cbae10e1a3b8df4a48e27afd3e7717b1da8f5304cab5ce8c3020dbe65a7", + "value": "0x186e76f31a4b79e" + }, + { + "key": "0x6860e474adeb78433760ab56280efcf28cf072a81af6b89d257201db2aa4d55", + "value": "0xaa9a41079c163" + }, + { + "key": "0x44a4d04799651f0b7b025a26538b0864d4d1a53ddec93fc3488acc17920fda6", + "value": "0x9eb2adf3104ec99176" + }, + { + "key": "0x5975d1d72ebc4e747fe89ec59e5df77ad5ed54b18c72a5c32b3c0dc0fd38d10", + "value": "0x800000000000010fffffffffffffffffffffffffffffd7cfb5dd9eda283630f" + }, + { + "key": "0x4af32b2540b093ad8cc977a6f61f652a2047da888f8295f3df68ce7c0944e32", + "value": "0x1362000279c25891f5" + }, + { + "key": "0x1104732f136427545e5b3653042cba3d9287bafb109f57b35f23e7f1e145d25", + "value": "0x800000000000010fffffffffffffffffffffffffffffffffdf38f654240318d" + }, + { + "key": "0x570dfa17c735fb3f7fd45405a02c33656dcf3dc947850e4a4c5d57bd8f7cf1d", + "value": "0x2ab9fedbad09791" + }, + { + "key": "0x2b6cfc002cf64ddf3b5101f4952a66ddc6a4294231305420e999447166ae822", + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffbcd40df8a87b7" + }, + { + "key": "0x328e83897e8b82a5627d6c225b41a7a59664fd5d416c936dc92b83be85cc335", + "value": "0x262370bb06f36134fc49c80b223ab67a" + }, + { + "key": "0x11b9dba184a2b51bab777826abc31712e8f694caeabc31622cad3942bf65ca1", + "value": "0xa04912d13ef52002cb1c98ae" + }, + { + "key": "0x606d57c5c2bbc2b1f6bf85a496c387b7fc5165a5630f5577bada6ef654bfcb6", + "value": "0x1dbc9af4509fa9ae77852a360d3a4" + }, + { + "key": "0x248377a912e03daafad3bfd3765034bb24c6990a48c74c14cb94b5a32628824", + "value": "0x101a5a600000000000000000000000010c26cabdacad67eff1968f6dd3e" + }, + { + "key": "0xff44c6ad71c4d8ee5929071009e78331d57c956ebf561e84c13eb3b6011fe8", + "value": "0x2b7be3722e86f03" + }, + { + "key": "0x683833b945260ef999c5d91361501930acea9cecde88b48e1f672d01613d9d5", + "value": "0x6a98b4fa9872d08" + }, + { + "key": "0x41c64e48f68bc0b8a52f2eb3cf078c9d329dd59fb6ba1d5a60b17e6e01b39cd", + "value": "0x4773af4ae34eb67586003b020e1a5e5d51" + }, + { + "key": "0x79cc7a7a65576a5cde685d04e753e67d30246ab50667842bc4c76e4d442b258", + "value": "0x28ef7b67bfd" + }, + { + "key": "0x7b12b55f02caaa35d4ad6a93ae2398bee866de371bf41eb561dc49346752ddd", + "value": "0x1d4d54f0f1c403" + }, + { + "key": "0x191c6d5fdbbab45d1f0ba54b3e3d78ed3c5ccf69e006b26adbb0f0dc133dcd1", + "value": "0x755613b4351abc3a2d749b389f52" + }, + { + "key": "0x71a0cdfbb8565e22235f83b3fa76be00883a97864c564a1d524e7fec56051b5", + "value": "0x15eb570e80723386014055b838" + }, + { + "key": "0x16a06cd5157d29494cad19613b97adaaeb13ae742e847c286a6a3fa38fc3aac", + "value": "0x21640f8283ac9d6588" + }, + { + "key": "0x2c4f30dba349ae47850d7944ca3617c44fc0ad11c167af77273084dc3287b3f", + "value": "0x800000000000010ffffffffffffffffffffffffffffffffff617f0ddeaa7551" + }, + { + "key": "0x3c32a627cd9cf49918042425b5f8bb3627070b90586372ae5b10a79695a91fc", + "value": "0x62550ed1491bcbe" + }, + { + "key": "0x1b794a6117fafcf791c7edd14dabf3b3d87e5f472ecc11d570545f6ecafab6", + "value": "0x1c82db8f302d1377d336b94aea" + }, + { + "key": "0x21284dee0554a4f4aec0b677a37a38cfbf4aa2082031128dbf5718bb39c002c", + "value": "0x1e5000000000000000001000fe94a40a80d59bf79b25e54b74296" + }, + { + "key": "0x41f404659ea050a2f83beccc5e715b4773d89e337814045829bcf0e56bbca46", + "value": "0x0" + }, + { + "key": "0x304c38198f6ae660799ac41c9ab4e11d83c170cb07a670a48d65fb4f44a7740", + "value": "0xafea62a8a6d2f260f4b42fdbb8b8844" + }, + { + "key": "0x420ec6960ef67a5d7ee85bfd787d12c4d528cb666bde88c5af0a9f9a08bd5e1", + "value": "0x110dfc1d0ac2180040a6acbd06bce3f1a2" + }, + { + "key": "0x4567d687bff20392c7de873ba8c00bbb0e78741539668144d21285e6f22efbb", + "value": "0x23c20e77237a7" + }, + { + "key": "0x5dd67f19219402f98c107b94aa637970513618017270258948e44b08ef48040", + "value": "0x77cfc785f634ca29f230a19a925308e9" + }, + { + "key": "0x37482a3d9d062e8cd8b4b6cd970444b015a23e2846acb2cdae957455906d60e", + "value": "0x9f00c4087db38" + }, + { + "key": "0xec10cf121502f7f268f244072da415243db461f004d27a7bef7f2eb6d6512e", + "value": "0x10b9ef62304667158c4fc6daf0a989841230" + }, + { + "key": "0x420ec6960ef67a5d7ee85bfd787d12c4d528cb666bde88c5af0a9f9a08bd5e2", + "value": "0xed084d703f9a362bfafc92d0b7" + }, + { + "key": "0xa3432a46409e597507c42781e5fded4e1f7c10824f546defdfb9aba292c32", + "value": "0x0" + }, + { + "key": "0x2ce60da6cea71ce6c6a545f54fef5e0f6a332b1c6a5843c493c7e23b5444d67", + "value": "0x800000000000010fffffffffffffffffffffffffffffffd7425c00a323f9c1c" + }, + { + "key": "0xf3374dcfcdf436323f15b925a02038cae22246dcd28a3571eaf28a897d7f2a", + "value": "0x1b2000000000000000001000e3d9c4433cec3b78d956ea8b11c8a" + }, + { + "key": "0x71f7662d983fa3de397475579fcfb714b1ba5b0c953893c4d57a182797125e7", + "value": "0x554513673f15e0d8cd04cbbceb" + }, + { + "key": "0x786e6f2cbcf63b6c37de67d37e3fbbd3689e837c77677e5ca9f95f64b1817c5", + "value": "0x1012a70e80000000000000000000003b5c5798f17221e072296f8a7c5aa" + }, + { + "key": "0x7b12b55f02caaa35d4ad6a93ae2398bee866de371bf41eb561dc49346752ddf", + "value": "0x5ea6caeb0a95e4f08703f26e1" + }, + { + "key": "0x6aff514d3c14935bb84bfc2f5e443daa68c6b9af02150bce2904dc5cee89fb4", + "value": "0x101a06a4d000000000000000000000013e4ffcf3303960f6f9f806c2078" + }, + { + "key": "0x16f3d2898d9e565a771db107c89c4051ed978f8024dd71576982b82e636fb78", + "value": "0x800000000000010ffffffffffffffffffffffffffffff9eb2d8ccb220d33bb5" + }, + { + "key": "0x5a5faf04804b642b7f0ea93befede1cd6e715f6df4fc4578c9160147f26bea6", + "value": "0xf759090900e2f955b1829c5017775c8494" + }, + { + "key": "0x463a7b8a0b11c1d3a8c6d3cefbc6b9cafb86e99a893ddb9d4a346f91c456b1c", + "value": "0x800000000000010ffffffffffffffffffffffffffffffffff77276394327258" + }, + { + "key": "0x4ed55f236b424b2eeb2bc294c9359c3d917b6b20213a60c392be5a80c881e6c", + "value": "0xbdbfb7498f73840b686c8f5391f" + }, + { + "key": "0x26fcb5cd86032642ca6f0ca7249385577e59205df4ddbfedc90c0e37d26580b", + "value": "0x6dbe61b3b4ab097ad9" + }, + { + "key": "0x5f2e5df0295c3904cd5db8b0ef848697d0296e75b888b502ae693928906b514", + "value": "0x1e484fdab322578a82a00c4fbd61f" + }, + { + "key": "0x77afd665d883bb77ae5dc981c8c2a46dd84d5421adc85fdcbd6a27acfaae548", + "value": "0x1395cf99b67675b6eba579273e7870" + }, + { + "key": "0x663e99caf6fe0ee29e110a7bf1c863be7624cd12506c872123c0f7208ff1413", + "value": "0x42831575eb8e49b43f986c2e0dcec" + }, + { + "key": "0x47b3b847536cd2bb98cb2ca5a8fb0159c43ca17dfefdd5b6cc0a02830663d69", + "value": "0x41ef9c68e88d" + }, + { + "key": "0x304c38198f6ae660799ac41c9ab4e11d83c170cb07a670a48d65fb4f44a773f", + "value": "0x5218ca639b1ad8f4" + }, + { + "key": "0x8337bf2ade7917d7c237b52aea6765dffdfd9a5c007da9f60fbea349cb81a1", + "value": "0x87d6cd5ed83ac51087436e5c78c768832a" + }, + { + "key": "0x184fea49b0eb79359e1c40e9f0ce159aa0442ba5cd40608bb16685072880573", + "value": "0x800000000000010fffffffffffffffffffffffffffffffffe59ee1dabe2c151" + }, + { + "key": "0x2d880398a4511f82a41ff951b97bf01ad0cc448b7f62761063ee7b779679295", + "value": "0x1ca502b66f73680229fd3f1b8d416fe5e5d" + }, + { + "key": "0x71f7662d983fa3de397475579fcfb714b1ba5b0c953893c4d57a182797125e6", + "value": "0x2daf95a220cd19269ec4676116de603d3cad" + }, + { + "key": "0x5fcd15b2b3a4d8953ba09f09cb50edc9921e027078184006fc6cf446f0d7ded", + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffcf6cb4d8f1820" + }, + { + "key": "0xc8c1f92e90e8d4ecce982b43db977ab649c3b10778b1d1e35a02f83bbc100d", + "value": "0xc3877fa1eaf63" + }, + { + "key": "0x2a757b72c09a97fdd9a1575b2fbd6fc8dd9244ad8e03d5009cb873de02aa896", + "value": "0x0" + }, + { + "key": "0x4a586bf09eec1cf5a6cf9d6d34e17e76a4f73dae476853d9f2bed89865e2ef2", + "value": "0x101a06252000000000000000000000013ea34cd7e64f88a704b595708c0" + }, + { + "key": "0x3ac4b7a555c000e6533c1b3586890c3eb2988416f382d6333bb53e67e8acdbb", + "value": "0x245bf3f081b6da" + }, + { + "key": "0xbe6fa725188a51bb8d0b2690374cd01ea86067c08ac0c06ff1f486825b17df", + "value": "0x1000ac61d000000000000000000b3da570ede0118288693100400cb152e" + }, + { + "key": "0x604f413908666c13125854dafe9079dd5a2107d388ab95594ad8e4fab83207d", + "value": "0xf67ef9d1a8815db6cb1008c2917fd0294a" + }, + { + "key": "0x71a0cdfbb8565e22235f83b3fa76be00883a97864c564a1d524e7fec56051b4", + "value": "0xfd61cbf6596449e6b72ea3ef485f2dce74e" + }, + { + "key": "0x3ed0de4a23e4c7f76a6ca773c06104911cc5681f57fbcb73cbf9cac05f6c3a1", + "value": "0x124d382106d4903db8a" + }, + { + "key": "0x5a5faf04804b642b7f0ea93befede1cd6e715f6df4fc4578c9160147f26bea7", + "value": "0xe739a8fef31d2d35f80f30bc582" + }, + { + "key": "0x4a38cbae10e1a3b8df4a48e27afd3e7717b1da8f5304cab5ce8c3020dbe65a8", + "value": "0x7cdcf17ea8fbc00fb8b5a425c41524c83" + }, + { + "key": "0x4385cc8dd554d4732242122fdef2318d85749918e9a19272e7d53c1abf7dfdf", + "value": "0x9e80f221558ab0" + }, + { + "key": "0x7493f7399be13ffd87a1eb89743889f5d1a0a603c1c7b417a6eb8fd903aecbf", + "value": "0x1796b811fe0bf" + }, + { + "key": "0x11b9dba184a2b51bab777826abc31712e8f694caeabc31622cad3942bf65ca0", + "value": "0x91e0062c380478013f9d6dcbf3f4252638" + }, + { + "key": "0xf43f4977ba83260d9fb7c2157768daac27f6810a06dedece2a65ee49a5dd6a", + "value": "0x59cabb88afcdda3" + }, + { + "key": "0xf7bace5c5d29baeeb70cb7187199527a670f282493ab881ebb3f88526fcc44", + "value": "0xb9b112debb16a7289310c6a3478ffde71985" + }, + { + "key": "0xa3432a46409e597507c42781e5fded4e1f7c10824f546defdfb9aba292c33", + "value": "0x0" + }, + { + "key": "0x67115b93713c11a90a478a74e04fe020b4de53a8a5589ce5efefba6ca655989", + "value": "0x216ced0e02a1704c" + }, + { + "key": "0xbe3902bb1d9b1a5cb2822f23952815586379dd42cd2a0aa80e95f14c8e4b7e", + "value": "0x800000000000010ffffffffffffe4a260567fa75cdbe5776df7d88b829b00f0" + }, + { + "key": "0x6db1df98bb5c8addfe52bae9301d603938abbba89c204f8bace29cc8e3de221", + "value": "0x5e9ecc558231" + }, + { + "key": "0x3fd58344c88bc2aba58536f3892e94d6926e33939ea1f5b0a961ac0deaeea1a", + "value": "0x5cd14e194062548933b7" + }, + { + "key": "0x1cd7120649eacb81d9d22e7ebf033168731b49b4ade362005a1e10a66e941b0", + "value": "0x10075f832000000000000000000055cf87d0588b96ed2f6fbdf87211751" + }, + { + "key": "0x33224aebcec112f9e766f4af2a99a9796d3a3062721aba0bfc723ba891b6d5d", + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffe86947ee01f42" + }, + { + "key": "0x240792a50b0491597eb55dc77d29adc3905ddedfda62c2953e1b2a7294e2a65", + "value": "0x30ade5c5ef4098d27e2" + }, + { + "key": "0x3f9b819ad903ba535239c397b9d6750b97a0727a55fe8756a57c48f9a687840", + "value": "0x2e701c284ed74a11b3" + }, + { + "key": "0x45fb8ffc8b8d0d2521fdc1b3558fea0c43ed03911387994698ae9e504026d44", + "value": "0xc334a6db4b8ff7f54f50d1d21" + }, + { + "key": "0xec10cf121502f7f268f244072da415243db461f004d27a7bef7f2eb6d6512f", + "value": "0x17ea1d24fe723c3a13455de39e" + }, + { + "key": "0x290f3dd811983a9448045f89ffa831d687b699c544bbcb4e9c8c8a7f6e8a634", + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffffb7f1931fe11e" + }, + { + "key": "0x22dfd7e2764449f6417e5d42247302ee08bfd258dc0bfb4dea5d27ded3002e0", + "value": "0x114d6310ec4ece" + }, + { + "key": "0x45fb8ffc8b8d0d2521fdc1b3558fea0c43ed03911387994698ae9e504026d43", + "value": "0x6eefcdb23d7af763553c8582b26f0fc71e0" + }, + { + "key": "0x5de7ec841dce952676aeccd7e5d32132a249efae2f8f0d25cbd26c6d6ad9cb", + "value": "0x2ac74f20c4211f3c" + }, + { + "key": "0x2a757b72c09a97fdd9a1575b2fbd6fc8dd9244ad8e03d5009cb873de02aa898", + "value": "0x0" + }, + { + "key": "0x4c2b45dd0c557a5b92aaf102418f193801d88462ca83991793ed017d4ad9c97", + "value": "0x3572dc0b3bb" + }, + { + "key": "0x53d0519cdc7454786ae3e94a23442f4359e03c5903c60ccbaf2c48614efe6ac", + "value": "0x10075fbbb000000000000000000055c596a4383db20d984d5e942b581ab" + }, + { + "key": "0x5ae43f331a8a622606567424872fa15cadfd0558ac5ced42ce94308e6b7238f", + "value": "0x10075ff72000000000000000000055bb28fa539aecff5a99ba3cc143d19" + }, + { + "key": "0xa3432a46409e597507c42781e5fded4e1f7c10824f546defdfb9aba292c34", + "value": "0x0" + }, + { + "key": "0x650f3d68694fd04458a9f9033d9dcac8be6c1adf5e2a4df9870b23701767edd", + "value": "0x1a25f98b05507d" + }, + { + "key": "0x48974f426ba72174b60988f4840ebbe0d67e812a96fc288dcd5a44d1f7f23c9", + "value": "0x74518cf0b38e42" + }, + { + "key": "0x5dd67f19219402f98c107b94aa637970513618017270258948e44b08ef4803f", + "value": "0x867fedd97356fe4a202f04" + }, + { + "key": "0xbe3902bb1d9b1a5cb2822f23952815586379dd42cd2a0aa80e95f14c8e4b7d", + "value": "0x90526409ad34c" + }, + { + "key": "0x41f404659ea050a2f83beccc5e715b4773d89e337814045829bcf0e56bbca45", + "value": "0x0" + }, + { + "key": "0x55685403e97ef430a5631a61bc90bf78b717537fb46463be5fb871bfdbf79fa", + "value": "0x4e353ef682785" + }, + { + "key": "0x606d57c5c2bbc2b1f6bf85a496c387b7fc5165a5630f5577bada6ef654bfcb5", + "value": "0x11e1a4e109fbbbf717b1f5bd8f859c2c" + }, + { + "key": "0x542b68f29e0846999ed26b0b3f839e4b41d95ec9424b11266d94a626e2c7e1", + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffcd838c49df1ea" + }, + { + "key": "0x591acc006991ecc44299588fcfe36aaf338929a2ce09835de224d78d1791dc7", + "value": "0x546e94b2ef0c26ca3950eb8c2c9e1e4b23" + }, + { + "key": "0x5f2e5df0295c3904cd5db8b0ef848697d0296e75b888b502ae693928906b513", + "value": "0xc12d0a9f043e762c3ccaeafda25e76740" + }, + { + "key": "0x2c7ad5a49b2c7847f2a016b7e5fc02d56c17dd2c28fa61726871f5f011e6cdb", + "value": "0x79746bd6e527532033b862074aea" + }, + { + "key": "0x7ab5b9eb5369e3d1a142b27c2fa220b14d55bce13a4ca9af24a978748688661", + "value": "0x900abf92e2205c0e0a" + }, + { + "key": "0x449a607c753c8062c92809161c7c267d7ff17b1de42128c3a8d16229df8cd15", + "value": "0x21fc2dfb1e2a4cd" + }, + { + "key": "0x6239e13ce1df40f2bff86641df44152670a3493c2afcb11e002b7051ff3078c", + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffeeb29cef13b133" + }, + { + "key": "0x202169baec7cbd5d6622af88de93e2f0fdb916c69afb0303d7d4661577d5639", + "value": "0x10b0bc80f2dbe9e" + }, + { + "key": "0x41c64e48f68bc0b8a52f2eb3cf078c9d329dd59fb6ba1d5a60b17e6e01b39cc", + "value": "0xa419aac4d4e" + }, + { + "key": "0x5ea06119a4d665161a27f9723f8c59462887579db7511d72a24905e33934db9", + "value": "0x480e6ce01ee3" + }, + { + "key": "0x32c152613f25edcbb264d2aedde2e2c42e206d8d22367f812cc4c855d2ddf22", + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffefc825b523b095" + }, + { + "key": "0x45c798b5abff14827978acf0f3f5327ce5c30d0ceb1d6adfd1c1063156247c4", + "value": "0x7a9c2b60acef2be5db29be857ab6" + }, + { + "key": "0x277b4e854eeb5649649e17405755dff739098e975491a0808b73b5e85fef718", + "value": "0x6c082b272bf9a" + }, + { + "key": "0x4c2b45dd0c557a5b92aaf102418f193801d88462ca83991793ed017d4ad9c98", + "value": "0x2745bd35cc42bcab09f6e4c619fc24de64" + }, + { + "key": "0x347f76486e749fca89ba33ab1d4efec49204c787470ee52a5d4ece98c1c421", + "value": "0xdcaa3c402ec640" + }, + { + "key": "0x304c38198f6ae660799ac41c9ab4e11d83c170cb07a670a48d65fb4f44a7741", + "value": "0x13580871ad9ccd71eea005e21206f" + }, + { + "key": "0x14e75f5be6cc1493906565ae2dd18d60d09abec3b34f09fc17c05a5fc630263", + "value": "0x15726049afce7" + }, + { + "key": "0x44548ee4d14c0d9d700f62c5cb55109f0143d3a7b4b51a355c712b3e7da56e3", + "value": "0x40efc9f404c7b9d" + }, + { + "key": "0xae1b72a594adf942d61d66fb222d7bbe953934f3b762905c245fa71ea84aba", + "value": "0x5546470fc56c75e3e66c18c913" + }, + { + "key": "0x413e1971ba654a0dd5a77d10b81546555d6243e55a72b67499e9c7b041bcbc4", + "value": "0x87db7a5468851104c1b7d30192bb8f" + }, + { + "key": "0x2de966d764c7614f84ebc7a696934977fafa88f2993a8707031f5c15d292a64", + "value": "0x9b66ef06fa076" + }, + { + "key": "0x57b3fc80cff65e783a36e25c07fb6bb40a22e8990c9ad4bb667438944862c13", + "value": "0x3c77b3812e92d156086d69679e" + }, + { + "key": "0x2eb900051c3a8324d79d39f70887495c3a6c5d7c31ebb39123a8c39590bf357", + "value": "0x503ef0085af9b2e" + }, + { + "key": "0x39885546942f3786040a607ca854347bccb5161de1826a043569524087b9559", + "value": "0x800000000000010ffffffffffffffffffffffffffffffde9bf07d7c53629a79" + }, + { + "key": "0x56726bd5af0e4f8d99f12baf474dd006461187e3fc616f082245fae560139c5", + "value": "0x81437369e5e67" + }, + { + "key": "0x5e69fc4efef5ed193323008ab7da661e68c1614fd67349558433884cc5ec436", + "value": "0x0" + }, + { + "key": "0x7d40347aa4e5dfd2a281b234596e495beabe234196f2d792a2f409885203df1", + "value": "0x179e63feda" + }, + { + "key": "0xf8afdd530deabb6d55dadc44c553f45872ee9bde74ccef24f6626fda2b24b3", + "value": "0x55935f73af3d4" + }, + { + "key": "0xcdcb7de689ccbb76fcfeda7edd9484cdc0c62b63a4e8672248d9e8f0b6d7d8", + "value": "0x0" + }, + { + "key": "0x25457c81943e4308a238e03185c54ce82af57eef170ff1118780550a6d03c85", + "value": "0x1a25f98b05507d" + }, + { + "key": "0x360b9cbfb3c4cb4326bbc6ce3af063c0f801cd212df038574a764a37cbe2e59", + "value": "0x76665c429186a" + }, + { + "key": "0x777cf87ddf8122c4a2fa882ad0341ca467cc1e5e6cf74c7bd4124fc07c44163", + "value": "0xd7637ed24733db" + }, + { + "key": "0xf34837b4666bead50bec873ef1e6141dacb6507337c2f51f3557b773bc4d33", + "value": "0x150225b7710d46863567" + }, + { + "key": "0x4da69f76bcd4cb6836b98cfb29264ce92f53d84d97b6f11048b20e660f2f9c8", + "value": "0xf8cd0ed072d752" + }, + { + "key": "0xf7bace5c5d29baeeb70cb7187199527a670f282493ab881ebb3f88526fcc45", + "value": "0xcccd2b06c74622a334eea6984e" + }, + { + "key": "0x6db1df98bb5c8addfe52bae9301d603938abbba89c204f8bace29cc8e3de222", + "value": "0xb16fa450f9e56ec8597483eb154a71dec" + }, + { + "key": "0x41c64e48f68bc0b8a52f2eb3cf078c9d329dd59fb6ba1d5a60b17e6e01b39ce", + "value": "0x3d299047f0ce1888d0bfe2e6d81" + }, + { + "key": "0x2b77360fdb6c8b69939cac3ab705ff7e6660d5814f19a904155568b0f9a05c7", + "value": "0x21e7ae73ef5750c" + }, + { + "key": "0x57b3fc80cff65e783a36e25c07fb6bb40a22e8990c9ad4bb667438944862c11", + "value": "0xf8ac084e481c0" + }, + { + "key": "0x57b3fc80cff65e783a36e25c07fb6bb40a22e8990c9ad4bb667438944862c12", + "value": "0x1bdd788821aa0cd3accfa3ad51f54996dfef" + }, + { + "key": "0x69c6fbc68635348aaed1ad9cf4dcdb407d7be725c095778662f9023eb0c3f49", + "value": "0xbcad7b147e7bea46a1bf2f72792862a3412d" + }, + { + "key": "0x4c461150be1bb0404df648b7535aa4412ab7c1715229ea6164f2da22be9b762", + "value": "0x476c02c101545ea9aa243ff76d" + }, + { + "key": "0x41f404659ea050a2f83beccc5e715b4773d89e337814045829bcf0e56bbca47", + "value": "0x0" + }, + { + "key": "0x1744a85531a31f0a461e20cabe2cd97e77a0434e8b70cf5b50ee6eb72407ef4", + "value": "0x3ed52862ecf73fc" + }, + { + "key": "0x61b9116b9e0e5d6310674cebbe2f4f927d5dd5af5883607002c2cefcc4bc36b", + "value": "0x1cbccaa4b2e37b" + }, + { + "key": "0xf7bace5c5d29baeeb70cb7187199527a670f282493ab881ebb3f88526fcc43", + "value": "0x23e602aae503" + }, + { + "key": "0x59034edee7db22248b7bf15a5d0aac4a065831e9c112628ae2139393a28507c", + "value": "0xd0ffe1826944e7" + }, + { + "key": "0x7f8585bc4f045bd960c6aed13bb5f37c035bd5a5df6d9282c80552ae18ac3d2", + "value": "0x3d52575ecce61c7ca84d7a757627667c" + }, + { + "key": "0x377a06f99c076c4ce9af686c5a1f8e7ab88a1273c530dc5f94778c4b79cd41a", + "value": "0xce4f1979bc63a4cc6bcfcbba077b" + }, + { + "key": "0xc37a99b03e26aa791e82083190c484f773383fbdc97b455ebb37590ac5f448", + "value": "0x1012a6c620000000000000000000003b65250b4396f4c33daf50efbc23e" + } + ] + }, + { + "address": "0x64278d4f5d4dbd450728f650335ecf2b2c33934da2cee438e0c0b47806a3aad", + "storage_entries": [] + }, + { + "address": "0x585c32b625999e6e5e78645ff8df7a9001cf5cf3eb6b80ccdd16cb64bd3a34", + "storage_entries": [ + { + "key": "0x3fd4b890b842aea8ce436e29df9d53a3e55489447a9a6d535056af2eab2c5ea", + "value": "0x2204e6946b0d0d0f3cde7" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0xb2cce0bfc92bf31c633" + }, + { + "key": "0x3b291d029dceb92559a30a7451189a37e8850b2fbda3e646762055a1112d448", + "value": "0x186fe286df517fe20" + }, + { + "key": "0x2cc30d6ec2fd5666b74fb0aa70b5209a1ead103bd7a577077561f1cda1f8ab7", + "value": "0x37f258c84f3fbe69" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x349d9fd7c68f46886a2" + }, + { + "key": "0x75b7dedaaeb6f970a38674ffe7669a8d0659956446e0f215439918856e5aa43", + "value": "0xde1e1417d8217a9add" + }, + { + "key": "0x45a138a7f89b67e90717242e1d134504a254eb41eb4b9d633202366b4e4a297", + "value": "0x2794af7c86ae122" + } + ] + }, + { + "address": "0x1fecadfe7cda2487c66291f2970a629be8eecdcb006ba4e71d1428c2b7605c7", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xd0461f562838cc062" + }, + { + "key": "0x3f4d49108fa32d894c30c4f96354f7486e85c530313277bf84172a5f6d74d06", + "value": "0xdb72c4208609a993" + }, + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0x8a532b052da3d" + } + ] + }, + { + "address": "0x68f5c6a61780768455de69077e07e89787839bf8166decfbf92b645209c0fb8", + "storage_entries": [ + { + "key": "0x74f67e3d389a7bab81ccf6d7954f3e8626b3e4f0cbe5221231d14d40f7f6b42", + "value": "0xbbd3ba1" + }, + { + "key": "0x4c37bfe444aad80234bd21fe41c46a41992b0956cab836cfadfd100aa29ef61", + "value": "0x0" + }, + { + "key": "0x2f91121a0e63b29dc1d6a4afc3a3963209345391a124869e657665e749659ac", + "value": "0x189b7bee27" + }, + { + "key": "0x34eaade9f12dcc6e6385184e591dc1308d98187c7da26503b1e5c4b5b03d9f", + "value": "0x2806d5" + }, + { + "key": "0x59e75d991e38414cb03337b2c33628c0e610f3d0e52ca5e7c8d8dabd4b07358", + "value": "0x278ac8" + }, + { + "key": "0x177498139c47b017aaf6cb101c57669af474d4cb6794ddddad395e9c36718ab", + "value": "0x0" + }, + { + "key": "0x2fa0fc502b8bce76cbc44e4671c0bb33197973034904a713564a9476c69119e", + "value": "0x2734952ec" + }, + { + "key": "0x27583c43a0f382cc22c67d769cb8218c99d338171b82fb2927fe129daf8afa5", + "value": "0x13dcdd3" + }, + { + "key": "0x759839c47981088126dbfb6dabca1dc9425635a6b817ff042b3dc741f4114cf", + "value": "0x17c9ea0547" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x1637182e6" + }, + { + "key": "0x7a18fe41748e3327f9cf42dc056ec772e88dadc21c0a7745f5ed01d03c0ee4e", + "value": "0x11b8a1" + }, + { + "key": "0x1424a90e1a235c3b1bf7d4b70c51c033d9e2657bbc8fa156caac5b1cb3c690d", + "value": "0x18b4b37" + }, + { + "key": "0x62a08dc44970ea9e504e10d21efe7b1b4384b5ac50809d7296b0c4b251220ee", + "value": "0x306a2" + }, + { + "key": "0x5a7a0269b464f3a77a50c4de3ef3ba7e2c253c514f440ef75786d28d59007d8", + "value": "0x0" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x33c261da7a7" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x7be75c3fd2a" + }, + { + "key": "0x6d73530f2c06353f5ccb22f5891c31bf4bceb5136689a7847be806d2321a9f8", + "value": "0xa34fb62" + }, + { + "key": "0x4ab851af7c319653ea03e239304e83bcb6fa56f3871f6ba955de11ace8892b3", + "value": "0x28c8ed" + }, + { + "key": "0x165243305aaaac67d300c7f030569236f3935274672b6c155713b8b6734fe9c", + "value": "0x0" + }, + { + "key": "0x47ad2e6564d72e603afb73ae84c22c66bba2d025ede35845ee8ece0799ba5db", + "value": "0x336cf2" + }, + { + "key": "0x3de1f84248407d0d58bc007a81aa60114585d5b22e68bccd85ea9b769d807db", + "value": "0x0" + }, + { + "key": "0x512833e246671faba32da48d87a40629e7dd17b40257ec590a6e17c8ac96dcb", + "value": "0x28aa01" + }, + { + "key": "0x18d7b079b471cfde70d671fc55b3c06d4363cdc22201c09924822902a33e019", + "value": "0x1708ed868" + }, + { + "key": "0x766b2345032976aafa18db2f8eafebe611103dff38452a5d0db2897220cc4f1", + "value": "0x2281" + }, + { + "key": "0x3ce63b6014623680de3801addbdbc460bcbf144f0c741cb14aed33cc5bb892c", + "value": "0x51fbe587" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x245a12b169" + }, + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0x17b32cce8cb" + }, + { + "key": "0x13f5135506a2c4304d85d0d0f4ac745762489509e3cdd6735a56bcf6db5671d", + "value": "0x490c92c65" + }, + { + "key": "0x22f9cf0e817ec5266133baeb7b6699c1b95854014cc79f85dd997309f7fc62b", + "value": "0xc126215a51" + } + ] + }, + { + "address": "0x574873cdb53fea2fda56662a84c5377e62bc1587fba0cac664ffeb0552b007c", + "storage_entries": [] + }, + { + "address": "0x1f537cf547ccfdd7bd3b82c9986bb53a3392200e549af8c42fbb5048cc0d3e2", + "storage_entries": [] + }, + { + "address": "0x71cc68b2e88cab8c13040a64ce0e97d289a2b8215eaf1f5608ec02292275e77", + "storage_entries": [] + }, + { + "address": "0x7e4877307d7df9c50ac3a9dad9befd5f87c2bb93c07a4336cd127920eb8d12c", + "storage_entries": [] + }, + { + "address": "0x550a08c82e35fe7af1fe375a142829c19973fbc57eb169fbe6f0bad23abac8b", + "storage_entries": [] + }, + { + "address": "0x279838e564766890400d4d7e477cb178819485029aa42ef25f779c204863f63", + "storage_entries": [ + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0281", + "value": "0x66389ef2" + }, + { + "key": "0xfc7fce0137ef0fdf47d2297ba791a15d3f3f1801dc7ef0b2aa311ad5d4034e", + "value": "0x354a9f89b111" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027d", + "value": "0x6682e84268b389975c" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0284", + "value": "0x2eaf71462" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027f", + "value": "0xb77dec635078c05" + } + ] + }, + { + "address": "0x53c91253bc9682c04929ca02ed00b3e423f6710d2ee7e0d5ebb06f3ecf368a8", + "storage_entries": [ + { + "key": "0x9779d2e8422791ff8c21d1f03ac27f8bd212d32dfec4a922a28c2a612f4af9", + "value": "0xcda6745" + }, + { + "key": "0x3d9d3855a158af6678762d45d0e9d7b1ed8b7d643d8f5394976375686a90b28", + "value": "0x0" + }, + { + "key": "0x13d64dd9ab18f63f21e534f25aa3ced309394fb420cc9d1416554691b1cc2e1", + "value": "0x2dbf1348" + }, + { + "key": "0x10428edb40f5de8839ac44f594696c1ae7d6c532194afe991ab0bb21a0205b2", + "value": "0x0" + }, + { + "key": "0xdf8a7991adf851f14296f74c22f36f69ca4c3b08baa6f0195055b924b2e7a2", + "value": "0x0" + }, + { + "key": "0x165243305aaaac67d300c7f030569236f3935274672b6c155713b8b6734fe9c", + "value": "0x268b2d" + }, + { + "key": "0x1e587de87d0e6b6c65e44395b0f5232ef3097fb031f4404bfbe60d2ba4fe054", + "value": "0x0" + }, + { + "key": "0x565ab9e67a38783cd602c791302fde5dd0418b794d1a70d9122d884916828c7", + "value": "0x0" + }, + { + "key": "0x6e6a7ffddf642aef51023a84f5f5e7aad653de5b1fba769c3d709a591f8e019", + "value": "0x164205" + }, + { + "key": "0x759839c47981088126dbfb6dabca1dc9425635a6b817ff042b3dc741f4114cf", + "value": "0x14bed39bea" + }, + { + "key": "0x34eaade9f12dcc6e6385184e591dc1308d98187c7da26503b1e5c4b5b03d9f", + "value": "0x2daefa" + }, + { + "key": "0x4f144531ef49da3b7795fc58e9e1ec998346084989be3be408187ba013c83d9", + "value": "0x50678c7" + }, + { + "key": "0x2f91121a0e63b29dc1d6a4afc3a3963209345391a124869e657665e749659ac", + "value": "0x189077066c" + }, + { + "key": "0x3835f9dcb05004929d96adaac3638349af649481fd3080f5f7b66f80ad0287f", + "value": "0x10fb92303" + }, + { + "key": "0x1dfa550066deddedc26d1568a70d625a7d8a8bfa73c45ca771ef8ae9434842d", + "value": "0x1c9aeed3" + }, + { + "key": "0x284f6da85e0d7c2efa9bff3bda8b4a460d2fd0b70fcfcf74ec7b14d8ada32fd", + "value": "0x0" + }, + { + "key": "0x1f91dee9dc4c6966475385c9741200d7f6e62dfc34a8d0888f5c69ea8767ba7", + "value": "0xbe0a90168" + }, + { + "key": "0x7a18fe41748e3327f9cf42dc056ec772e88dadc21c0a7745f5ed01d03c0ee4e", + "value": "0xa39ecfe3" + }, + { + "key": "0x7cc4dccd10de8d1e48d2b545d608bb21ebd798293cc4f931025d5a2e3a060ac", + "value": "0x82918" + }, + { + "key": "0x55f893178f607635a20fc04a31f73fefb4e5af36b46ba54e3ff7477b3a74ea8", + "value": "0x0" + }, + { + "key": "0x2c40cfaa9c0aeba40ea0b8f5818e1a12c44c5e9c01c31beb8fd21f5dab2f95d", + "value": "0x2417450a62" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x79e0dafecfd" + }, + { + "key": "0x57cb1bf6a68e535925717cfcdcff687c824bb248640ad2a2d4973f4216033b6", + "value": "0x210747" + }, + { + "key": "0x4a72e481245c56351045dd2e8aebbc0ec2eb6a4c0a9bc1e71ef5dd4733b04db", + "value": "0x1580e6" + }, + { + "key": "0x70f60523557b1b8de4e54bcf47d899977cfd86040dab69605c0cd07df8b0240", + "value": "0x2426de" + }, + { + "key": "0x6b4eb38b5c1c57a3f6c841a6e56a9b0fc53c454b4d95fcc2f6ec2b11a7b4553", + "value": "0x0" + }, + { + "key": "0x5d8c2a228a2c3d099390d4c0a8dd1fe27c5c8f1e5c2d2587fb2e995e64501fb", + "value": "0x0" + }, + { + "key": "0x4aa2885ee95e2eaf83fcdaa59539ef9301372e916bc2419274d92a453c2b422", + "value": "0x7dd7cbbdd8" + }, + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0xedfc9615" + }, + { + "key": "0x35d618f99069529072914f5f7257c5cc5025e83efdc507ac38e96b60663bb36", + "value": "0x573c1" + }, + { + "key": "0x2fce9e9afd98cdd22d9fb783e369d30c949d3fb19e81557ecbe9ffcbd41ffe", + "value": "0x15aaca" + }, + { + "key": "0x6b5aabab09661b37e4c305b799438d5de809a4603d6af1f43e0415189370f8f", + "value": "0x4be91ea" + }, + { + "key": "0x787fd6f9593f54f8cdf06f8ae609eb9cf23aafb8574c2cab2c8289c3bbc9646", + "value": "0x0" + }, + { + "key": "0x35d7d7242eff6e573b33f19f0e7817038ac0f4b7e3c922d6022c89ed14dd460", + "value": "0x41aa5be250" + }, + { + "key": "0x22f9cf0e817ec5266133baeb7b6699c1b95854014cc79f85dd997309f7fc62b", + "value": "0x702d347a03" + }, + { + "key": "0x3d19d263a362d5d13b2ae9c1c0e43d60f995b3459207707d9f5e0fdc1e41c82", + "value": "0x0" + }, + { + "key": "0x9c6b3f3b7615e32eef8d04f155d169c8d5e456f64c5e7327501f8b9dd4d4c3", + "value": "0xbbd8" + }, + { + "key": "0x70c18ab354c3591a692d0829ae495c5221dcb89582a008be0030b179133efd7", + "value": "0x0" + }, + { + "key": "0x4ab851af7c319653ea03e239304e83bcb6fa56f3871f6ba955de11ace8892b3", + "value": "0x3a4be9" + }, + { + "key": "0x4c37bfe444aad80234bd21fe41c46a41992b0956cab836cfadfd100aa29ef61", + "value": "0x1c4ba" + }, + { + "key": "0x4ca5d64225532a8ece0d732d68cc5b92d509eb10fa97526567748a5b72f0a0a", + "value": "0x276fe669" + }, + { + "key": "0x27583c43a0f382cc22c67d769cb8218c99d338171b82fb2927fe129daf8afa5", + "value": "0x0" + }, + { + "key": "0x74d720180672745dd99c963727ef65032a04583ad8c53564fd156e5bfd3fa7f", + "value": "0x313beea" + }, + { + "key": "0x37c53b331d3c30611bf2cd957b0fbaa883c9805b50bff084dad6c6ba375b2a2", + "value": "0x0" + }, + { + "key": "0x29034e04d095005b8d4cc25f9169e7391a57f7f7c639e1fee745367dca86a0", + "value": "0xc1caa" + }, + { + "key": "0x7259d2a19421aa4423c0afdedf7141386273e371716e56da795c1a02967adc8", + "value": "0x0" + }, + { + "key": "0x5a7a0269b464f3a77a50c4de3ef3ba7e2c253c514f440ef75786d28d59007d8", + "value": "0x1" + }, + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0x1b6b60b93b7" + }, + { + "key": "0x74c2e16562b96d61285c428cfd1e31e2877218be9a3cfbcbf97751c589c0955", + "value": "0x0" + }, + { + "key": "0x5fc680be20dc136605026568e22942bca594a4a8b5cc43d926e8b9b1bc64105", + "value": "0x9cc1af" + }, + { + "key": "0x60046d4938733045f39caa76d7ab3891c836f3cf489b02c1e9c0e5fa75c6e2e", + "value": "0x0" + }, + { + "key": "0x5eb8fa4b590466e6affff944e95060004be620fa252754dc787f3e0ec63bc5d", + "value": "0x113b48d8" + }, + { + "key": "0x7bd70acf722dc27fa9c82ef4b8b538e1eb0fee089da0ae871fd6e5a6d355572", + "value": "0xbd3eb" + }, + { + "key": "0x177498139c47b017aaf6cb101c57669af474d4cb6794ddddad395e9c36718ab", + "value": "0x95935f16" + }, + { + "key": "0x1b03bc5925651a7ddc19d5c045abb2b85a49095b5924f1e5b6a79ece9298516", + "value": "0x0" + }, + { + "key": "0x3b0f8f66af0f6cb54547c142cc346490b0fa88701573c8a208ff63c78158982", + "value": "0x0" + }, + { + "key": "0x2f6ed819212ba71958d17187743d958db4eff301d33e31862e12529e63bc5bd", + "value": "0x1e3dfe05" + }, + { + "key": "0x2e3991ec240de1c0bad1de178cdfffa171b0b24b20761d100ffdca32172bf23", + "value": "0xd6b80" + }, + { + "key": "0x4a05d0779e7d7eecf0f99ffeb7728fcae4145bac34de2fe0c348876af97df3a", + "value": "0x0" + }, + { + "key": "0x6063a427e2215ac74fa78e3adfd6075ab132cac84d3f3e37a0fd0085ba8a518", + "value": "0x55c8561" + }, + { + "key": "0x7e6587c27e1be667a6e8886b479e66a7b6fdaa5e7bd0c7821af40d0e53a9a78", + "value": "0x0" + }, + { + "key": "0x55db343016099af5314aab9f9f6cf3cb4e24eab2a64f6b77cf20d91643a6100", + "value": "0xbf055e0" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x9082aedb08c" + }, + { + "key": "0x3fa993adacc681439adaccc347de979c7052735cab4b8248adcd83c2be0e6cf", + "value": "0x1fe09379" + }, + { + "key": "0x39743e2d6c62b3eb9bf1345f5ee3cc02229635e1b0b932df49e26a7a80ca911", + "value": "0x5ab06445" + }, + { + "key": "0x3c3bb9f266a1ce0c28b39a0468c1da7883363aaf473809f40cecbeda6c8fde", + "value": "0x0" + }, + { + "key": "0x32ca11c045788984112c6fa5003bbd9e04ac373c357ccc315d56a5ac05ce86", + "value": "0x60a79" + }, + { + "key": "0x5d955887e7a803c96e268338585bde86bb16b7d114187593b97e05a7c2916b6", + "value": "0x115e95e" + }, + { + "key": "0x6e1f7e9849896fef050356c4c33ffe31d22760133d859c9b8aee1c512c415c8", + "value": "0x0" + }, + { + "key": "0x1c0d06bd7060fec0ae69b82cb9dbed198512b21e28f74090aed0092ad8497f1", + "value": "0x902fcb36d6" + }, + { + "key": "0x512833e246671faba32da48d87a40629e7dd17b40257ec590a6e17c8ac96dcb", + "value": "0x17213e" + }, + { + "key": "0x59e75d991e38414cb03337b2c33628c0e610f3d0e52ca5e7c8d8dabd4b07358", + "value": "0x1e280d" + }, + { + "key": "0x3c33860d274b2b559e71c6190a38ae8aedda95366387155c63d55b1f028d4c2", + "value": "0x63735034d6" + }, + { + "key": "0x123972514396f26fe5fbd38cd80694fdd803a2fd5a6c00e92052e80d16ec090", + "value": "0x0" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x345623897" + }, + { + "key": "0x6f5a2440fee7fa279409892efbddea8e401aedfdc944ff3b1c55523943bd3f3", + "value": "0x23dde54" + }, + { + "key": "0x54e16cd861292bc46d5512641e67b40a8296c2ef32dd382c297ec00cac3f598", + "value": "0x23f774a6" + }, + { + "key": "0x3d402bead8a4d87e103281300893b3362a9a25513f764780b58efe4ff4c90c1", + "value": "0x190253b1" + }, + { + "key": "0x2ffd470ee29bcb5c63f1f10cef6f97837fe41cdf71e3cd7a2209cfec4a88930", + "value": "0x3bca8b217" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x18eb22af278" + }, + { + "key": "0x47ad2e6564d72e603afb73ae84c22c66bba2d025ede35845ee8ece0799ba5db", + "value": "0x2fff3f" + }, + { + "key": "0x599b39b8f0e0e064f62ba921252b0735c2732a18e0b87e5b66e7f235d05dbf9", + "value": "0xffffffffffffffffffffe1bde8359df7" + } + ] + }, + { + "address": "0x642cda1469d3f1d47bccfdff008450d15237e36b2b2f5fae8119fd0535b6278", + "storage_entries": [] + }, + { + "address": "0x6e8a27ca53df086a979b670e1cc2e1e54eba850a92545ce3243b2016110209e", + "storage_entries": [] + }, + { + "address": "0x5f447992a68f6dadbdbd3d1b50df2a722f4210e9d01f581b9ab528cd2cb6729", + "storage_entries": [] + }, + { + "address": "0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d", + "storage_entries": [ + { + "key": "0x7b25d0a223f96995c6265e0133486586670a629c12c650bce23445468145fa3", + "value": "0x9933f186f3ee8fc" + }, + { + "key": "0x5d955887e7a803c96e268338585bde86bb16b7d114187593b97e05a7c2916b6", + "value": "0x16500f9e169efc268" + }, + { + "key": "0x3d05f3617f658f96e28684860a70474bf64f23d1d9cb04acd9f5e20cdb9133b", + "value": "0x42456c151b604200" + }, + { + "key": "0x7dd280ad0f88bfb845cc45545d6e8415e574f846183d9b03f7f99e2d33799f1", + "value": "0x9fc344648f300fc2" + }, + { + "key": "0x281fce64e2f24313a2d34ff7596eba7d8a34050caab72ba7cae728212857c30", + "value": "0x1158e460913d00000" + }, + { + "key": "0x51adc9cd83ac945c2a22217d3b8e54fbf204c63af09a9e7a3aec49f0f3ccd8c", + "value": "0x46c6481d389099dda881" + }, + { + "key": "0x765e4afe08228f7ede71c1ed5296accce8247c83757996dfb07e6222a2b63b0", + "value": "0x5be77e5683c9d232" + }, + { + "key": "0x6f541f9f8344075aec705326dffc0d60feacb685eb10c6d47ef83e87003cf4e", + "value": "0x6682e84268b389975c" + }, + { + "key": "0x5b19a89ddde0079ffff5320f78e1a10707b418cec4444b98d3b8a298560609e", + "value": "0x315cc738ef7294" + }, + { + "key": "0x6085544b61ac5e4e14df3284f9c6cca57f6720d419c01402c059e37ea31e45", + "value": "0xccb4ff5bdd51772e77e" + }, + { + "key": "0x2b1d73cf458548b1c7aec5110aea8f7f727ac106fd7cdfb208dfce63b4d2a35", + "value": "0x1a7caaf87762b6e034b2c0" + }, + { + "key": "0x4f3f29e4f67ffe9dd697c662caf00800b59fce30b57314159330d5e96c1987f", + "value": "0x1188738f53340d027fcb" + }, + { + "key": "0x35d7d7242eff6e573b33f19f0e7817038ac0f4b7e3c922d6022c89ed14dd460", + "value": "0x24b2b0726f95b005e017" + }, + { + "key": "0x6f5a2440fee7fa279409892efbddea8e401aedfdc944ff3b1c55523943bd3f3", + "value": "0x79823c48e553520" + }, + { + "key": "0x780419cdd24437998b984bdcf8ceaadc6a72fc6ff2f9914516f0ec26e2ff8a7", + "value": "0x12a27d60da17bf2fa74" + }, + { + "key": "0x2cc30d6ec2fd5666b74fb0aa70b5209a1ead103bd7a577077561f1cda1f8ab7", + "value": "0x2ae6c900bb9f9ca54" + }, + { + "key": "0x3d7ccfb9e9c5944c7a3226921716da0d42239892dbde7b12c1e5597d31c4124", + "value": "0x736f9984503b3063f0bf" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x2c83defbdfcf9347337" + }, + { + "key": "0x2199a33a953f0fa55e511fbef8103852a57ec6680658de55a6f5f23be5d2806", + "value": "0x2541cfcee9490e7d" + }, + { + "key": "0x4a095aa1769d6cf030f2bd5932e4b4fd10d48937850e7b780ca3b0b40da5c7b", + "value": "0xa6e19f1a9c25461aef80f" + }, + { + "key": "0x57cb1bf6a68e535925717cfcdcff687c824bb248640ad2a2d4973f4216033b6", + "value": "0x16386dfe03d42be9" + }, + { + "key": "0x55f893178f607635a20fc04a31f73fefb4e5af36b46ba54e3ff7477b3a74ea8", + "value": "0x510a68e969146da19" + }, + { + "key": "0x5fc680be20dc136605026568e22942bca594a4a8b5cc43d926e8b9b1bc64105", + "value": "0x25aa46ef0c6747e5d" + }, + { + "key": "0x34eaade9f12dcc6e6385184e591dc1308d98187c7da26503b1e5c4b5b03d9f", + "value": "0x1936b3ab8164bf54" + }, + { + "key": "0x5467e74a98f910e5c65b789a8985ceaa7e07b522da94cce19a07cc63c43262c", + "value": "0xae885f25774674" + }, + { + "key": "0x4360e9006f212e2cb34f9287d9849b0e0d6872baf710d5bf51ed2aac1b59405", + "value": "0x1601383914fca1562d" + }, + { + "key": "0x3eac1de111b4a93fcecd500b2e2b4ab44054a53dd123d96f03563334deda902", + "value": "0x818193b1eb7f43d23a2" + }, + { + "key": "0x6b5aabab09661b37e4c305b799438d5de809a4603d6af1f43e0415189370f8f", + "value": "0x7170f1a001" + }, + { + "key": "0x6fc34748f9e9d5b403fe4b31218ee0f1b10760245a5da13858c3dc96ca7c7a2", + "value": "0x49d68fc9036ed525d6" + }, + { + "key": "0x47113a2699b48476c38043256a5d41e7614fdd3c6929c7b484bc853a30d70fb", + "value": "0x175c0c6b60d0dba991f5" + }, + { + "key": "0x441215e4cc4a6a330dcae3037f9553578fb21834b78b99247b0704c8b4a5fca", + "value": "0xe10547e5d069f2" + }, + { + "key": "0x476d68a1f48d526d43da7eed9e7771044742dd0fc5cdd231c875eb90e001b2", + "value": "0x243cc54962a5432a" + }, + { + "key": "0x17d4cdcada607cb2ed7685ab1c3549205399decd15b207fef21b69213f46fc", + "value": "0x1ec9ff23d87fb41ba" + }, + { + "key": "0x76181c389e63c75900a3fb0ae44f576cc6eba9698e9e9cb7c9edc4be7afd2b3", + "value": "0xdeb508dc4fb9d0423a6" + }, + { + "key": "0x7a57269eb532bd456731969914f7e0e17304bf05add0a5a93979e4144024df4", + "value": "0x0" + }, + { + "key": "0x1e587de87d0e6b6c65e44395b0f5232ef3097fb031f4404bfbe60d2ba4fe054", + "value": "0x51341365d2e0adb5a" + }, + { + "key": "0x55c16b532f4cfc60fff710c850bc84208e13a295ccfe6bb8bc1def93d91a9e7", + "value": "0x4f50c789b992a25" + }, + { + "key": "0x60046d4938733045f39caa76d7ab3891c836f3cf489b02c1e9c0e5fa75c6e2e", + "value": "0x5142535b1cc876116" + }, + { + "key": "0x770379e78388b2387012d22209788658de118baa37e97365b8c2de0d136c72a", + "value": "0x42456c151b604200" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x106b1e527716e556e83d6" + }, + { + "key": "0x1a51cc03e3c7294a23e113885d65671e1c41b21c55f443832d91092e70eabe1", + "value": "0x8a11e6491ed9832f" + }, + { + "key": "0x20372af20d6330c223bcb42e338832b4baeed7ce4f6d908ce5633f14b8d73c0", + "value": "0xae885f25774674" + }, + { + "key": "0x59e75d991e38414cb03337b2c33628c0e610f3d0e52ca5e7c8d8dabd4b07358", + "value": "0x1ea49e5a5162c400" + }, + { + "key": "0x45b35cf1cc47315ef3311d3e67f0112b2fb9ca2ca139796166cca3d649b24e", + "value": "0x11755f75" + }, + { + "key": "0x39b065f25ae508bc15ead40bff2e699627d5ed212b42dab895990e3ce396a83", + "value": "0xad2960ae10000bde" + }, + { + "key": "0x61914fecb7d2da8ecd52c16d83974f66257f84e07f9358b7fcfe59c63e6e33c", + "value": "0x415f72f245f0c932e" + }, + { + "key": "0x6d7bd326d23384766619914212a172715a386e7c88ec11c582fcd68ed1652f1", + "value": "0xf814745b5b58c2e6e" + }, + { + "key": "0x6b4eb38b5c1c57a3f6c841a6e56a9b0fc53c454b4d95fcc2f6ec2b11a7b4553", + "value": "0x4fefeb6851f6ea30f" + }, + { + "key": "0x3572d15a927f266ee4d54f158ec12aa1267afbaafa794405786aec404dc89e0", + "value": "0x0" + }, + { + "key": "0x2101db38f0cad848c1f5fcaa03de2895b1529d38a8a9d092591af981dec45cf", + "value": "0x0" + }, + { + "key": "0x45affea061e9bc8b6e821e962bb1c950044a4f2a2469b566b525047de24cc", + "value": "0x56bc75e2d63100000" + }, + { + "key": "0x2fce9e9afd98cdd22d9fb783e369d30c949d3fb19e81557ecbe9ffcbd41ffe", + "value": "0x302574d12c154aa16b" + }, + { + "key": "0x1b1e8a65f1c5a276a43f1d23c79c869da4c606bb57f30f14f2228e6025a8cb5", + "value": "0x7827278064607f1c" + }, + { + "key": "0xca532dd585de907e5e22bfa88b8162363b3202e7483bef1172293e20171cdf", + "value": "0x56bc75e2d630fe000" + }, + { + "key": "0x283f82e9b4ac51c320f5ca95401ca5b3192f84c8f85c79927fdf3f770cde799", + "value": "0x83613bbd6b91c775" + }, + { + "key": "0x70c18ab354c3591a692d0829ae495c5221dcb89582a008be0030b179133efd7", + "value": "0x4f9b20ed5498a4896" + }, + { + "key": "0x7aad5dfb2918b0001f7c5d8f2858b2f47c86e3fa1139fbeb6931fb9a3800b6", + "value": "0x5e1624b84cb496660b592" + }, + { + "key": "0x74c2e16562b96d61285c428cfd1e31e2877218be9a3cfbcbf97751c589c0955", + "value": "0x0" + }, + { + "key": "0x284f6da85e0d7c2efa9bff3bda8b4a460d2fd0b70fcfcf74ec7b14d8ada32fd", + "value": "0x4f002de31cd0c8f37" + }, + { + "key": "0x4a05d0779e7d7eecf0f99ffeb7728fcae4145bac34de2fe0c348876af97df3a", + "value": "0x4f381854d083d7359" + }, + { + "key": "0x3d3abb0e3cb7ee47a907f4bb6d5907400a76b633997868e8b8516df8459c0b0", + "value": "0x3f5a9d10f6764c05" + }, + { + "key": "0x20f9b41497cf7e71b0a6dda89e2f5088462745e83efdf008bf9686f3f841915", + "value": "0x18bd29651edfb21aa5df" + }, + { + "key": "0x5beb9892ecc9859e56b58a3d3ccb32be4c9fc4d43a4d62eba6da9d0766f946d", + "value": "0x20a77e0ecba2e7e3f33a" + }, + { + "key": "0xdee712f0458f61a2861ce28402f7e21c9e1f37f5dc76abfd8c2b477f3c6bb2", + "value": "0x1b2258a58a93b28000" + }, + { + "key": "0x5168e64926da8d6d3332b207265ac9c32b7188531a90030e195dd4a8ae35e63", + "value": "0x2808f57c26f12cbf" + }, + { + "key": "0x4f92a01853bbafdbf9ec41b3bfda4b03e549ce7bc62cf33bfc8fa2e5263fdbe", + "value": "0x7fe7399d5e2e5550f" + }, + { + "key": "0x242c92ba37d9a044720cd2db0aec0a1732d2dfb36cd93dc68f6922a6f4a1a78", + "value": "0xac47c32a33c046f0118" + }, + { + "key": "0x5cd3ca44d5c9283b767630419430fbdf1dd3d439782a04abef712c9532e0661", + "value": "0x15990979674331af07" + }, + { + "key": "0x2d963ac17e873558bbbdd487c1c392da35369635f71bb6df8138f62d0a0c948", + "value": "0x2cced426d611ec0f" + }, + { + "key": "0x3fa993adacc681439adaccc347de979c7052735cab4b8248adcd83c2be0e6cf", + "value": "0xec184fb9d5d2c6071" + }, + { + "key": "0x5158315c4d9b4deecadd794a51cd884e2d9be86cb1a7effc52b783d3beea860", + "value": "0x186c956e64b7945dc" + }, + { + "key": "0x50785cc51ac38fd872db275eae7029c913ee6051f4307d065f07521a490685d", + "value": "0x1b254d64f64379be0dfa" + }, + { + "key": "0x42b64dd19fc3a1c021a151b132e34af526f6dc51469bf0061f4cc037291e9b6", + "value": "0xae885f25774674" + }, + { + "key": "0x748a28d66489adf34d96b886a65418d77e7393d29fdea1a8a26c21fd984fb64", + "value": "0x34300df6ac0c20113" + }, + { + "key": "0x2a7a1d7e837063d1cd0de357d33350fb8055c6bfc14084d6c3576d72d89850c", + "value": "0x23f377b6935047dfb71" + }, + { + "key": "0x565ab9e67a38783cd602c791302fde5dd0418b794d1a70d9122d884916828c7", + "value": "0x51de5bee237c062db" + }, + { + "key": "0x3646467915b5985647994e6ddb3dd465052b2673b46726e45d647894763654f", + "value": "0xc10bb7d7c16be56b8f3" + }, + { + "key": "0x5a3c7914d825c4d9cc5c21b24b617433451a78b9f06d6f2b0fd491509839391", + "value": "0x1395baf4ff8f7a9d3080" + }, + { + "key": "0x25186327234b2ce3b0255eb0ec60e95e076f9925147727c67aac17456d44e14", + "value": "0x580da605d743e9cd6" + }, + { + "key": "0x47ad2e6564d72e603afb73ae84c22c66bba2d025ede35845ee8ece0799ba5db", + "value": "0x10f0613645b0ec3f" + }, + { + "key": "0x9c84d3d68d81772fbe27c30b91432233382390c886c5cca91a7a6ee5281766", + "value": "0x22fa5dd5f255dfb50" + }, + { + "key": "0x41c16d0d69be0041e10215fd1bd712363af233590b2b1b0db6b8583eeaa2ecb", + "value": "0x42456c151b604200" + }, + { + "key": "0x3c33860d274b2b559e71c6190a38ae8aedda95366387155c63d55b1f028d4c2", + "value": "0x4046a4d799b0f0e0c246" + }, + { + "key": "0xdf8a7991adf851f14296f74c22f36f69ca4c3b08baa6f0195055b924b2e7a2", + "value": "0x4dd77063650aead78" + }, + { + "key": "0x123972514396f26fe5fbd38cd80694fdd803a2fd5a6c00e92052e80d16ec090", + "value": "0x3974ee0128145b8ad" + }, + { + "key": "0x4ac2c57c9aba49b2a9733fb142568c81e2b0572c45a8a1fbe4972b9dea87814", + "value": "0x4ac210fccfaa1bd5" + }, + { + "key": "0x9c6b3f3b7615e32eef8d04f155d169c8d5e456f64c5e7327501f8b9dd4d4c3", + "value": "0x246437a669d7e9427" + }, + { + "key": "0x5260e072ef679e2dbaf1f9b104bf5a0582680e078a36e42e8fa978dd804ccb9", + "value": "0x10e3ad9d58d4d4eb569b" + }, + { + "key": "0x75cbc85d60998649c55b3100e80bee43b53ab5b1b39318f6a1a7b5c048b27b8", + "value": "0xcb322dea52162d14cb" + }, + { + "key": "0x461122023f439b87d9900427cb0d7b2f96535ca2c0eb4733332c38b2043674a", + "value": "0x86a5d82d53838376" + }, + { + "key": "0x64661f0bb89edf2f3b9bb1aec2d6256f609de21571fed0b9e3823947d69a690", + "value": "0xd58607f6de467b6" + }, + { + "key": "0x7f99f9e460c9b300cc0d5737f9b6554758426992b7dcb4e47fcd5f97183159e", + "value": "0x0" + }, + { + "key": "0x65937e698f98da7cf9294cb8381283788a7fe57e8dc7f7334c62126b8a82a5b", + "value": "0x283eed59fe3f28a3e8fd" + }, + { + "key": "0x198cad3852091abe6c9f5c48eae1534d0b36d9808cc1d35823da39766ab4864", + "value": "0x34b8219027882cf722" + }, + { + "key": "0x3d402bead8a4d87e103281300893b3362a9a25513f764780b58efe4ff4c90c1", + "value": "0xdf14a23e88f486b" + }, + { + "key": "0x6e1fe5adc0d532aa34a3055e2aca993cf457745c0e4810ad62f207dbc748b2f", + "value": "0xc5270d836c4c17c" + }, + { + "key": "0x5496768776e3db30053404f18067d81a6e06f5a2b0de326e21298fd9d569a9a", + "value": "0xb53fe532dde5560138" + }, + { + "key": "0x299a06d15a4d54b1db16d0ff7ca33742f3bced167fab4bb732b5a82079b8223", + "value": "0x42456c151b604200" + }, + { + "key": "0x24f68acf9693b30afcf5f1d82b163d1d7aeab8aef330f6350ac7e0bc1aa4d9d", + "value": "0x42456c151b604200" + }, + { + "key": "0xf9031f4d0c7fb1d8def54148fd448cc4408bc26310430a8bd4617e97fe2c23", + "value": "0x2bf96a73612156251" + }, + { + "key": "0x7cc4dccd10de8d1e48d2b545d608bb21ebd798293cc4f931025d5a2e3a060ac", + "value": "0xd527d6fcb0d4dc8" + }, + { + "key": "0x6e1f7e9849896fef050356c4c33ffe31d22760133d859c9b8aee1c512c415c8", + "value": "0xba12ad055d5b76c" + }, + { + "key": "0x54e16cd861292bc46d5512641e67b40a8296c2ef32dd382c297ec00cac3f598", + "value": "0x5c24bdc8117646c0e" + }, + { + "key": "0x792a3e87e3391d581473962cbafd22a026aec62869ba933ee7f38e6da490e38", + "value": "0x0" + }, + { + "key": "0x11095c41474c0ae597aaf6bfb4479b7640fc44f0e8c2a626a898f810b517743", + "value": "0xef85ae470b4932e7" + }, + { + "key": "0x3e3c1a3c01ab34e8c67b37357f60f5c9e038461f989cf7d8cb6670a2ddb2e33", + "value": "0xa392cc9d68a206ba3" + }, + { + "key": "0x625c891216062499d14ddd7257e81741a54b84c587e7d55a0dae7c3c9122427", + "value": "0x3b4036f95e07cce1d80" + }, + { + "key": "0x7e634ac2c71ade35635c39a94f9cdc946608e8c104a3cbb708dbd1353fc8cb7", + "value": "0x24d23bbeb825f978f03" + }, + { + "key": "0xb9555633265df3f182cd6dfb96b1dedd4eba8f5732ea59cc0e412d3880b726", + "value": "0x233c8fe42703e80000" + }, + { + "key": "0x53b7d03d33df5419c43cfaa2e3c236b7e8891ae66cb85c1146c0096a8fc8267", + "value": "0x6160af02e3d1dd" + }, + { + "key": "0x70f44c52cbf72d00f39871866269e1c3360b8f8516065e07713329636be5463", + "value": "0x8fa9175763fac79e1b2" + }, + { + "key": "0x6e6a7ffddf642aef51023a84f5f5e7aad653de5b1fba769c3d709a591f8e019", + "value": "0x7ad7aa023a70c2d0" + }, + { + "key": "0x12b3e04818b85c3f80f9832f3bdec1da04f919cc6ec6b83f94dbe0b3b77b21d", + "value": "0x15d01d98db76a3810280" + }, + { + "key": "0x7a18fe41748e3327f9cf42dc056ec772e88dadc21c0a7745f5ed01d03c0ee4e", + "value": "0x147ec7372d7180c15" + }, + { + "key": "0x27b143b8f1e4fb61eb8efacfd7f9a706cdc2156875e5b130ba074519954b405", + "value": "0x12be138f4122752be084" + }, + { + "key": "0x18c49b8466b2a77f3077cf122ead37ee9f236f6ed2383f43804c7ea5f25335", + "value": "0x11842a754332e79a9f" + }, + { + "key": "0x29034e04d095005b8d4cc25f9169e7391a57f7f7c639e1fee745367dca86a0", + "value": "0x7ecc620ca26b70ab" + }, + { + "key": "0x2788a83984544ada9c646555c98240819a34b50c91130b010a9fcdd6fba4616", + "value": "0xdde607c304093e4a" + }, + { + "key": "0xd55420516a9dedf0005b191b56838366571dc7481815508245753e7965bf06", + "value": "0x378a08d3fb270e2b0755" + }, + { + "key": "0x77f4c1613e0d14b85b44c571b0c3f1062fb1ccafa35b427ce37fa94c3948a6d", + "value": "0x591926dc45e89e37580" + }, + { + "key": "0x10428edb40f5de8839ac44f594696c1ae7d6c532194afe991ab0bb21a0205b2", + "value": "0x25c36f8e137bc2e1" + }, + { + "key": "0x62de966a9ce9b50dee89605d0ee87424377db9295de7aca5a17d9c9b1162063", + "value": "0x42456c151b604200" + }, + { + "key": "0x7c898015d17971a5a437227e331b68083001910cdad8ce8fa7eeafad8a912a1", + "value": "0x0" + }, + { + "key": "0x7259d2a19421aa4423c0afdedf7141386273e371716e56da795c1a02967adc8", + "value": "0x0" + }, + { + "key": "0x177498139c47b017aaf6cb101c57669af474d4cb6794ddddad395e9c36718ab", + "value": "0x10115e4e2b2fc33e50" + }, + { + "key": "0x7c51cb43746f08c2eababdd8719ad4f7eb98351cb69b669761c4f8c5e256652", + "value": "0xae885f25774674" + }, + { + "key": "0x253364ccf17351553664ae6ca716d3c2cec66b9518845b033da003d54e2f501", + "value": "0x411fa26a65f570db" + }, + { + "key": "0x1ce0554a90567efc6b136c5657dce79cc332147148ef069fce9cf10d15cf3c8", + "value": "0xae9aa23bab9bf8" + }, + { + "key": "0x3c3bb9f266a1ce0c28b39a0468c1da7883363aaf473809f40cecbeda6c8fde", + "value": "0x51c1dbf0e22c4d189" + }, + { + "key": "0x57b1c7bf552c156f632213447c1bc32db5b957aacac8ec123272a47ca2d41e3", + "value": "0x1b0fc8ba47e0f1efcb2" + }, + { + "key": "0x3de1f84248407d0d58bc007a81aa60114585d5b22e68bccd85ea9b769d807db", + "value": "0x33209d8649507e236" + }, + { + "key": "0x27f7ab2b85939d9cdff6a85649189a376a54d0deb6519d75908a58cdfb4f2b5", + "value": "0x0" + }, + { + "key": "0x5efd3af40ae89aadf63658450b4421955fd1d9e2a4228cdb6fb629dfac8dd09", + "value": "0xae885f25774674" + }, + { + "key": "0x7ae89dbd4900148e0f33cdb6c31b9595471206175b4c79ae9655c85cd7a84ce", + "value": "0x30ca024f9a6307ed96" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x2d7b6156f547253b3bff77" + }, + { + "key": "0x4c37bfe444aad80234bd21fe41c46a41992b0956cab836cfadfd100aa29ef61", + "value": "0x20cfd7609a0c7a496c" + }, + { + "key": "0x7e6587c27e1be667a6e8886b479e66a7b6fdaa5e7bd0c7821af40d0e53a9a78", + "value": "0x12ec0c55ebe43c5f" + }, + { + "key": "0x4f144531ef49da3b7795fc58e9e1ec998346084989be3be408187ba013c83d9", + "value": "0x8ad0a25ed665760b1" + }, + { + "key": "0x3a5f74e83679c64a7604aef04d23a7258af050baaf5b2c7516e0d98b53a450d", + "value": "0x8b51e94dd43e54f4" + }, + { + "key": "0x46e76525082084a8cd295f1d330e6e57cea0a7f563efe6339781aea59996637", + "value": "0x42456c151b604200" + }, + { + "key": "0x1f91dee9dc4c6966475385c9741200d7f6e62dfc34a8d0888f5c69ea8767ba7", + "value": "0x7ac6aed22f0a284a5df" + }, + { + "key": "0x6063a427e2215ac74fa78e3adfd6075ab132cac84d3f3e37a0fd0085ba8a518", + "value": "0x1ce597ec136f44c1a" + }, + { + "key": "0x7e4c63f220881ff5888ebd8c7b28f6ad601b1c450ad8670fb3a26dd6759a83a", + "value": "0xae885f25774674" + }, + { + "key": "0x54df52d38f479efc0b0f4ef39685fb765863e3d5896d5ed3587cd264cee42dd", + "value": "0x3e41a58d015de0440" + }, + { + "key": "0x64d42eb7fe0eeb01ab6f601ac12ffd2798caa7a826a79c1d00572e9c23c82c8", + "value": "0x41d1498eee832700" + }, + { + "key": "0x72656ccb8138bb675a438f2af4df256d4bd5dc843500d506d07ee1e2048f218", + "value": "0x56bc75e2d63100000" + }, + { + "key": "0x46694e553eecd714d32a5e7e6ed0a05fb2127c39a27369e29ac60ade374d38c", + "value": "0x88c462e15aac9d0" + }, + { + "key": "0x9779d2e8422791ff8c21d1f03ac27f8bd212d32dfec4a922a28c2a612f4af9", + "value": "0x1b1ad69279965269e0" + }, + { + "key": "0x38d6079dbb7ade1dbdf5d488d4b6b12f605d942b9be1897078128e5630e3a9f", + "value": "0x570768020d35adda77c" + }, + { + "key": "0x2c7982e4c7704b4ac6e091ee095ca3d1acd4e68c45b4f26d1a4c3c3116c9df5", + "value": "0xae885f25774674" + }, + { + "key": "0xba01cab1b08890e4b67a0c7424ed91be1c13eea7a8f4526cf7bd71f9ce68ce", + "value": "0xb05a049f0cf218" + }, + { + "key": "0x5d69c45356b245a7aef3c18e109043c2aaf4f965225b73986388f41a51299c4", + "value": "0x8aca26f4a0f36e2d" + }, + { + "key": "0x1715dfbd02aa6e22565da75edc82c0237d6b1800b27daebe66c859ca663358c", + "value": "0x8e386aea20bf00581c92e0" + }, + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0xb2044bbc9562cc5b012f9" + }, + { + "key": "0x2f6ed819212ba71958d17187743d958db4eff301d33e31862e12529e63bc5bd", + "value": "0x0" + }, + { + "key": "0x177478c16249a015a42cdf07514033193bd8b26cb0b4917faa0e5f33d0767d6", + "value": "0x530042397c4b4dc4c7" + }, + { + "key": "0x2be4788efbbbd5a7c0eb2d334a92e2cd228ef5420752a530a26ce08a599d7bc", + "value": "0xb05a049f0cf218" + }, + { + "key": "0x12a6d4ea6241e228fb48334a19a3b5e2c3c44065644de8dd32b9dbc9973ee94", + "value": "0x42456c151b604200" + }, + { + "key": "0x99ff64f8cd4aa3301dec7b19f4052cd68a1fb5690f6e017807e97a46d5e08e", + "value": "0x4e5281c9467ed9e1b6a0f" + }, + { + "key": "0x35d618f99069529072914f5f7257c5cc5025e83efdc507ac38e96b60663bb36", + "value": "0x5d2b" + }, + { + "key": "0x3db1515a5a11bcaac776380f94c46a5e7be31ca627382d2dbfe114602bdb448", + "value": "0x18c1b96b295be555" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x9bb545216feb8c9210cae" + }, + { + "key": "0x1b03bc5925651a7ddc19d5c045abb2b85a49095b5924f1e5b6a79ece9298516", + "value": "0x49ac495edcacab0d" + }, + { + "key": "0x13cb1c0a4de69c261b8a656c0ddd6b47d021ac42f3467ef2eb9a31975cf8c89", + "value": "0x3235396af36bdc5" + }, + { + "key": "0x189de86ea35ea3dc0f2cd9dd6ab446ebfd85a01742d6aff2637bbde94a1cca1", + "value": "0x18e421964ab43cd8e1" + }, + { + "key": "0x5460e3ada357c552adbe9fdd830aabe59b7a3b43284240fb606458be8c6e09", + "value": "0x3e5796288c56c814f87000" + }, + { + "key": "0x2024a1fe5bda62426c5ac6eae7c0a75ce5f2b581eec50700f9a7c012f3cad5a", + "value": "0x0" + }, + { + "key": "0x76ec04ba50e3b815cf644c8013fb15515280c272539ba9cc1fbdaf5d12b9be8", + "value": "0x4d198a492b5771d67" + }, + { + "key": "0x512833e246671faba32da48d87a40629e7dd17b40257ec590a6e17c8ac96dcb", + "value": "0x17ecad260920d36d" + }, + { + "key": "0x45904b8cf4adc1ab6ac03c8f5f99294d6bb239c2872365ec8809777d68f78d5", + "value": "0xe8430f8656fa6aa58a3" + }, + { + "key": "0x50b09751d25db8ecb8b5910fce9dbbce727c7e9b01795fdd0210f1bc917ec78", + "value": "0x15af1d78b58c40000" + }, + { + "key": "0x37c53b331d3c30611bf2cd957b0fbaa883c9805b50bff084dad6c6ba375b2a2", + "value": "0x2d59cb86d17b9c3b" + }, + { + "key": "0x5ad104d79009257b281f6b3e83cb0b7e17ca390ac1561a9076a725ef60d845e", + "value": "0x1dc93a638e202b2bb8" + }, + { + "key": "0x4e01b20d4e3db9c906fde1190f8e03c171549fe46b0abb280b876dff97bd322", + "value": "0x1d3443353ca7ed5429" + }, + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0x5f45d9db939d380d6ca" + }, + { + "key": "0x15f5dbbd5c6f5eeee9e3fd223ef403019905bc4479a6322816a9be7d320a303", + "value": "0x1933c6eeda1be7fc" + }, + { + "key": "0x7626b4b7079ead9a499f2c6f88ace17fa5a77fd1e56a8a9051ea1fe622d6c6b", + "value": "0xfda3b4d348ce2a6f328" + }, + { + "key": "0x389572746c7a55e82d0dedf447a7e8f45977947727681e9e5f83038fa4578cc", + "value": "0x46bee4cbc29af1708" + }, + { + "key": "0x68db361478352685dafbb51c2b0d43d2576e0b7784c2561658b5a61d535a434", + "value": "0x7e2bba7587756a9a900" + }, + { + "key": "0x3f43f02f524621bba28ccb7e183a907b4f06d8023eaad5ed71e869cb861aa91", + "value": "0xae885f25774674" + }, + { + "key": "0x7398480d2ca837199d58fce94c6619368d514d613d5cd3364827ee2dba3a428", + "value": "0x2ff96236430e4707a2" + }, + { + "key": "0x6986b4f951fbad16c63effbbadef814dda84cf18ab6bef2d13530fe91d2c934", + "value": "0x16ed65f48f6044fe012" + }, + { + "key": "0x7635558e09dff852046d20a7b3149f304560c481a6719597fd3dd62f9f8bec5", + "value": "0xec74e2fb982f26239" + }, + { + "key": "0xdba7fbf71834a2508c810043486f58286983c04330fcdda10dbd8d5598a06f", + "value": "0xae885f25774674" + }, + { + "key": "0x2e9892044d3069300f5437983d78e85d9ffd10fd26dd3f259c13da023dd3b37", + "value": "0x12d3e4fcdf6ceb0000" + }, + { + "key": "0x7db46f34d4a2153d72e6ad67b126af116db9980a475e594d0e210e7be5b6920", + "value": "0xae198f5511cc8e8a2" + }, + { + "key": "0x7ae634e3d7c7dd23f6cd06c1a1a752d4651a782438f3d111931c0c93f9e5c7d", + "value": "0x0" + }, + { + "key": "0x4ca5d64225532a8ece0d732d68cc5b92d509eb10fa97526567748a5b72f0a0a", + "value": "0x1af7096f8e325e50bf" + }, + { + "key": "0x4ab851af7c319653ea03e239304e83bcb6fa56f3871f6ba955de11ace8892b3", + "value": "0x1ad8331179781471" + } + ] + }, + { + "address": "0x126960b1397991df6516dae6d930ef5e2073e0889074d5eaccb8bc575c39d01", + "storage_entries": [] + }, + { + "address": "0x7b36ffd1923786863824d2c4292893cd988c8b9837c0a206b3dce01821425b3", + "storage_entries": [] + }, + { + "address": "0x74252bba643c4a7bdadb048034611d2bc9c838c169ec4e258dc7797d951eb15", + "storage_entries": [] + }, + { + "address": "0x655d298d3d8edb710ce3376e308fed37c19ca26b1f60a1f2ed03f537732ba7c", + "storage_entries": [] + }, + { + "address": "0x782f0ddca11d9950bc3220e35ac82cf868778edb67a5e58b39838544bc4cd0f", + "storage_entries": [ + { + "key": "0x6cfe42c91e3fa2223a9d1f50b7985d63c9d7e3b190214607c0df9eff39cd6ec", + "value": "0x66389ef20000000000000000000000000a6e18d3ff66240ebcf0cb" + }, + { + "key": "0x74c2e16562b96d61285c428cfd1e31e2877218be9a3cfbcbf97751c589c0955", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xa6e18d3ff66240ebcf0cb" + }, + { + "key": "0x21ee5fbd07d844290ae34b98bd3b3ab1c3de6de806f83ef4b088d6a6d44a2b", + "value": "0x0" + }, + { + "key": "0x49580b558fb6368c64bc7d83fdf96ed21d29ccc4f993fd6c922cddbabffe35b", + "value": "0x66389ef20000000000000000000000000000000000000000000000" + }, + { + "key": "0x469dd35ef95499ba9d7bf0c330e303fd9705a089a663480c46d2689467a0495", + "value": "0x194c" + }, + { + "key": "0x3db1515a5a11bcaac776380f94c46a5e7be31ca627382d2dbfe114602bdb448", + "value": "0x28153c7e7dabd40000" + }, + { + "key": "0x4a57dc80bddf9837cf4905c505ec2c0e6d8d46a869c49f634adbbda28173ada", + "value": "0x20c1" + }, + { + "key": "0x177498139c47b017aaf6cb101c57669af474d4cb6794ddddad395e9c36718ab", + "value": "0x0" + }, + { + "key": "0x38c10662a48073f77efadb4820d93ad877d4de93741e9165b24bc8877d93b78", + "value": "0xabc0" + }, + { + "key": "0x29b201307746c9d2a6bb80b08e535a66d125e2050f7b8d664af8819c9170218", + "value": "0x66389ef200000000000000000000000000a88082e4bad5ffb34320" + }, + { + "key": "0x45affea061e9bc8b6e821e962bb1c950044a4f2a2469b566b525047de24cc", + "value": "0x0" + }, + { + "key": "0x1b294cb751b3e4543e387fdd8eb6e356f372ed1742d6dc140ae3d7c31b0d607", + "value": "0x4" + }, + { + "key": "0xca532dd585de907e5e22bfa88b8162363b3202e7483bef1172293e20171cdf", + "value": "0x2000" + }, + { + "key": "0x281fce64e2f24313a2d34ff7596eba7d8a34050caab72ba7cae728212857c30", + "value": "0x0" + }, + { + "key": "0x515958afb81ea96a6555062f734336f39e97416926e20d673a64b9a4d827a3d", + "value": "0x66389ef20000000000000000000000000155777c0e269dadb47213" + } + ] + }, + { + "address": "0x7606cac9053e9b8b573a4b0a0ce608880f64869e24b8a605210d7a85bb6e5f1", + "storage_entries": [ + { + "key": "0x1e3802d4ba50f5806c3c9c1147f921e9b734864c0b22e6a1610fb1a8c5b4d34", + "value": "0x1" + }, + { + "key": "0x944cb766bd429014af9ba96cf87e7036bbc215ac7e34cd38ac35989c326416", + "value": "0x17" + }, + { + "key": "0x79dafaf55a15679d236c1aa42a23dfe5fae9d21647300cfbef07248bf01b9ce", + "value": "0x3cd45dc9949bc0bb0e2991bc39e1552b0d642b8f5bf5efdb8dbe0e8aaa7cd61" + } + ] + }, + { + "address": "0x3ed214fbc01f7fcfbb3e77bd8d41cfc7dfa403addd672e6990649348585cdc4", + "storage_entries": [] + }, + { + "address": "0xda114221cb83fa859dbdb4c44beeaa0bb37c7537ad5ae66fe5e0efd20e6eb3", + "storage_entries": [ + { + "key": "0x74da8cd1f0039beaa6b6ec4605655d1a0972d98f2a255d488f06df0c12f9ec8", + "value": "0x36d3d337a378fb4c423" + }, + { + "key": "0x2de7ac669936cc3b4e9784ff23826dc9056c74d54d3f41f1b0d28b36966369e", + "value": "0x107dbec219f676c4271f" + }, + { + "key": "0x577528108d58cbf5e831355e9a6fc8ddc7018b67b405491e156f85fd5f03eac", + "value": "0x0" + }, + { + "key": "0x66fb4eb7b2f7e11581b43d017aa7e7354a900d05c3ddb2a9dad3ed7ab443564", + "value": "0x81640c688b9d119d1c" + }, + { + "key": "0xa6e9272881f51fae2d08c268dd89d7a92f6bdabe3366e40fd18b68f09a7508", + "value": "0x2eca917003f6c575067" + }, + { + "key": "0x69ae6e973cc2d2937d6a49ff92353c3a909ed9eb2cfb7c781d26da65b2495bf", + "value": "0x0" + } + ] + }, + { + "address": "0x4b6b4d3dfeee48acfc7ba32f7942e10fd1c64b0029834f48db01ebb6288d508", + "storage_entries": [] + }, + { + "address": "0x46d438ec4de720e7147646195758d27495ec71b8e8a49ff6ef5a2b456804a58", + "storage_entries": [] + }, + { + "address": "0x6f40b4774b7c03edd3738ebc1dab884ca78de0b98cc66fd114d085b6f610200", + "storage_entries": [] + }, + { + "address": "0x5405389eb8f587e739f144773ec187a7813e49e06c253fbe279bd509a843aa5", + "storage_entries": [] + }, + { + "address": "0x5c37d32e5626d0743fcadf53f9a86b0856fc54cd54efdefc38e87868deba0e0", + "storage_entries": [] + }, + { + "address": "0x4c429b69d99ccd0bf1e4777c836f15ca6a7caa18aee4fa15d834f5fc4ef72f8", + "storage_entries": [] + }, + { + "address": "0xe8595c80bedd1311ef17dfd1465e1cd4fbc03f2d516c04de61e85038b5aa54", + "storage_entries": [] + }, + { + "address": "0x67a34ff63ec38d0ccb2817c6d3f01e8b0c4792c77845feb43571092dcf5ebb5", + "storage_entries": [ + { + "key": "0x2024a1fe5bda62426c5ac6eae7c0a75ce5f2b581eec50700f9a7c012f3cad5a", + "value": "0x2f7d0a8f07d83e9221" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x525e3f1f0405d707c74be" + }, + { + "key": "0x7398480d2ca837199d58fce94c6619368d514d613d5cd3364827ee2dba3a428", + "value": "0x0" + }, + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0x0" + }, + { + "key": "0x177478c16249a015a42cdf07514033193bd8b26cb0b4917faa0e5f33d0767d6", + "value": "0x0" + } + ] + }, + { + "address": "0x10d576c01d9c725adeaf3a48acf7f794a354b90dcc8a423bc3248b31461d4c7", + "storage_entries": [] + }, + { + "address": "0x25181df558ecd4bd0e01a7397a37b39b779a037173fd03d68ef90e14d13ba4b", + "storage_entries": [] + }, + { + "address": "0x3ec240f5b47e9a6b4601c30c161a2edfd1c7164fd88cb08a490b8302c5d588d", + "storage_entries": [ + { + "key": "0x387c153462d309d4b5a1fc5f90e85bc59eeb2094b2fcef46513ea5f1d1c9b85", + "value": "0x1" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xf05ece53acb6c547" + }, + { + "key": "0x3f1abe37754ee6ca6d8dfa1036089f78a07ebe8f3b1e336cdbf3274d25becd0", + "value": "0x2b39bc3f4c1fd5bef8b7d21504c44e0da59cf27b350551b13d913da52e40d3b" + }, + { + "key": "0x37d931bc5c74214b7c669bc431e9dc2c39cba57516e0ab3c5a7ceb2d1c9e5c1", + "value": "0x6c9dee1b2da86ce77ebd8fa072d5f41d8ef4122b721004e0be38f083d67fb91" + }, + { + "key": "0xee2b6c840729051a0d06a623ff093dcc01e03f2e0c0e07114ac2440394b889", + "value": "0x284a1ad6382cffc520d8f711cf9519ccf43b3c105b89ef081cbe1a625322410" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66389ef2" + }, + { + "key": "0xb6ce5410fca59d078ee9b2a4371a9d684c530d697c64fbef0ae6d5e8f0ac72", + "value": "0x4a4544492d50" + }, + { + "key": "0x1f0d4aa99431d246bac9b8e48c33e888245b15e9678f64f9bdfc8823dc8f979", + "value": "0x12" + }, + { + "key": "0x139825585c3389ee852d93d2706b57d5bf8d4ba85922ef0689a691627211b05", + "value": "0xdad44c139a476c7a17fc8141e6db680e9abc9f56fe249a105094c44382c2fd" + }, + { + "key": "0x7b62949c85c6af8a50c11c22927f9302f7a2e40bc93b4c988415915b0f97f09", + "value": "0x3e8" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x15af1d78b58c40000" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0xa688906bd8b00000" + }, + { + "key": "0x341c1bdfd89f69748aa00b5742b03adbffd79b8e80cab5c50d91cd8c2a79be1", + "value": "0x4a656469537761702050616972" + }, + { + "key": "0x5168e64926da8d6d3332b207265ac9c32b7188531a90030e195dd4a8ae35e63", + "value": "0xf05ece53acb6c15f" + }, + { + "key": "0x35bfc9b032421f93a52912870bbb09af6c896d21d00165845f0c04715df1468", + "value": "0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d" + } + ] + }, + { + "address": "0x2ab5060584c9edb6e3586fe06a22a7fa0e00bf7c42f21ba57f7cd1b7f1b0558", + "storage_entries": [] + }, + { + "address": "0x7663d6f37f43e7a5a9b30ff53d804d9c87052be23caea338a1c12c0d5254d66", + "storage_entries": [] + }, + { + "address": "0x4b530e70c3425fd9e19f2abc2411c65f3b35ae5d028569a8ba5c6c141bccee7", + "storage_entries": [] + }, + { + "address": "0x347e051fd365948763c256c04f3f7513a5a485726926353b03458d6be9d2123", + "storage_entries": [] + }, + { + "address": "0xdf7d697c4f373d6536242f5c553984051291efa768f9ae97995da60eb13ac6", + "storage_entries": [] + }, + { + "address": "0x4619e9ce4109590219c5263787050726be63382148538f3f936c22aa87d2fc2", + "storage_entries": [ + { + "key": "0x512833e246671faba32da48d87a40629e7dd17b40257ec590a6e17c8ac96dcb", + "value": "0x3f00167faee13b7b" + }, + { + "key": "0x21e1f7868a42adf8781cf7d3a76817ceaaafda5d56b7e7d8f26bc4f27ecdbe2", + "value": "0x5e1624b84cb496660b592" + }, + { + "key": "0x2024a1fe5bda62426c5ac6eae7c0a75ce5f2b581eec50700f9a7c012f3cad5a", + "value": "0x15c8ad9018808e1822" + }, + { + "key": "0x51adc9cd83ac945c2a22217d3b8e54fbf204c63af09a9e7a3aec49f0f3ccd8c", + "value": "0x11898dc810855dc5939f9" + }, + { + "key": "0x4ab851af7c319653ea03e239304e83bcb6fa56f3871f6ba955de11ace8892b3", + "value": "0x33b08129802984ea" + }, + { + "key": "0x34eaade9f12dcc6e6385184e591dc1308d98187c7da26503b1e5c4b5b03d9f", + "value": "0x41f44c6399771e7a" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x430d1326c178dad20022d" + }, + { + "key": "0x3b17843091cba813b86f263f115aa72537568385255221bb1ab868507d9f35f", + "value": "0xe01054df26bd91f" + }, + { + "key": "0x177478c16249a015a42cdf07514033193bd8b26cb0b4917faa0e5f33d0767d6", + "value": "0x0" + }, + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0x577c3a64b9cd3c0d88" + }, + { + "key": "0x47ad2e6564d72e603afb73ae84c22c66bba2d025ede35845ee8ece0799ba5db", + "value": "0x3e2624085607a2c1" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x5e1624b84cb49661e666d" + }, + { + "key": "0x4f92a01853bbafdbf9ec41b3bfda4b03e549ce7bc62cf33bfc8fa2e5263fdbe", + "value": "0x0" + }, + { + "key": "0x7398480d2ca837199d58fce94c6619368d514d613d5cd3364827ee2dba3a428", + "value": "0x0" + }, + { + "key": "0x59e75d991e38414cb03337b2c33628c0e610f3d0e52ca5e7c8d8dabd4b07358", + "value": "0x739c774844f2c2fe" + } + ] + }, + { + "address": "0x78be2cdaefbb94a1a1e9148b9b5b695e1354fed286e940390f861a460cec9a6", + "storage_entries": [ + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x7ce5af3b1544475d7d0ae405996c4b6d3338fa2fdb8a7e76a51eb197a35a5df" + }, + { + "key": "0x31e7534f8ddb1628d6e07db5c743e33403b9a0b57508a93f4c49582040a2f71", + "value": "0x6b341b89c70872f86e19d50ed41481246c64ba9ecb711243a149198cf82e6de" + } + ] + }, + { + "address": "0x5550c8708a5c1eb902ab14a309329b3db6e0fbe156a56cb153f5422b84ec6f4", + "storage_entries": [] + }, + { + "address": "0x5bde3263870c52161a8f0fb0f19800358288eed67a05f0b49074326eb98a070", + "storage_entries": [] + }, + { + "address": "0x46b07b8422da099a1dd652800448363d881278c5521e882b51f8220ed237b51", + "storage_entries": [] + }, + { + "address": "0x360f9786a6595137f84f2d6931aaec09ceec476a94a98dcad2bb092c6c06701", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x2bbbb47bc1" + }, + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0x135a50641" + } + ] + }, + { + "address": "0x17d169d371a8432e8ff52e41dd7ec4ebfa1fae30ceb0b039f21429d8fe6ab39", + "storage_entries": [] + }, + { + "address": "0x57e980208954e55a1af061c53ecdf6609ef1bdbc6ec3f700a23fe8c55cbdf9a", + "storage_entries": [] + }, + { + "address": "0x5758b6124c7df831483d3c1c7a2bd96367bf51e751d4ccdd0a326871e878f23", + "storage_entries": [] + }, + { + "address": "0x5a157b51d250b3aa5a6e29bc9c1a7667a45341e7b6952c5db02b9008f1f7ff1", + "storage_entries": [] + }, + { + "address": "0x157d59e23fe92cd95d4ec4d185054257681491fdb2aa118eba322e624fb374b", + "storage_entries": [] + }, + { + "address": "0x76e9aef1637967df48eb53ff49a8ede6d799d5aaf866b4b74ce02409c1046ab", + "storage_entries": [] + }, + { + "address": "0x62bed67671bf533d8436d22863a9496834822e23c15dc3e95decb35cd6a8c53", + "storage_entries": [] + }, + { + "address": "0x1a80ae02f00b5fbd4f54e49269e41e86b9ac17e41ca044b70b03a4ccc6208ca", + "storage_entries": [ + { + "key": "0x412647986215a49a89de616bc520cbcfd93962fb03f43fa5163e777054a028b", + "value": "0x18bb22af3a623116" + }, + { + "key": "0x372e0de8e1950aa0351443a0adb64d66e57684539ba696a792ac927bafec3bd", + "value": "0x167a4c344b2f59d" + }, + { + "key": "0x59aec7e67a827932913cf450506690db7c24f30e6104fcd3baa14085da75b99", + "value": "0x6747cf8ded36b36" + }, + { + "key": "0x6507d2d5b6784f222678bc8ab3c25ef9c9b594031b796e0229022889f662c70", + "value": "0x3ef99fb9290178fb" + } + ] + }, + { + "address": "0x26fd67638beedf82c05ea59324cd7aac2933f3efbd4d62ff6421e1b0e9ab3ad", + "storage_entries": [] + }, + { + "address": "0x5fb486fe0b7e76504d35dcc7b398ad4e8787c7b96fff1cdebcd60c0860d1a64", + "storage_entries": [] + }, + { + "address": "0x1e0eee22c684fdf32babdd65e6bcca62a8ce2c23c8d5e68f3989595d26e1b4a", + "storage_entries": [ + { + "key": "0x7b25d0a223f96995c6265e0133486586670a629c12c650bce23445468145fa3", + "value": "0x348f2d66ee844f63e91c3" + }, + { + "key": "0x55a33869e536ca83789615a450fa2360925d05676d9803ad1f7a802e2eae53", + "value": "0xfbb3ac5255d841f0d599f65" + }, + { + "key": "0x6e1fe5adc0d532aa34a3055e2aca993cf457745c0e4810ad62f207dbc748b2f", + "value": "0x41377cae4d41c5a55aa05" + } + ] + }, + { + "address": "0x634a0aca90889a32c5ea9bc6d12f4c79e6ff76e2a0baee1b036d6d02a8a3fb6", + "storage_entries": [ + { + "key": "0x31e7534f8ddb1628d6e07db5c743e33403b9a0b57508a93f4c49582040a2f71", + "value": "0x2ee4b014f5730f4f8a3032cf4a05ed14d2b512e08d676d3737b4aa4a8c7ef3a" + }, + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x1736ea9cea7b167ed61bd824d61d27bb18ab94433ab8b3de435767a3953151a" + } + ] + }, + { + "address": "0x11c999ec3feb0bb211322b8771d9cd537542f53a6075100c85d889f06813459", + "storage_entries": [] + }, + { + "address": "0x5d4c8f6e98f3636b1a0bde2fe7318f1336c624eb2890c5c6a190136df83d32a", + "storage_entries": [] + }, + { + "address": "0x78597e910132071274f2664664ab069cc0a4682f73e701d723b6fc2e8930b1b", + "storage_entries": [ + { + "key": "0x220e0b892425d1f69aff06020782a0024fbbbf039d619a8e4d6e7daf180eafe", + "value": "0x6ffa900009e5ca80854633801221b400" + }, + { + "key": "0x6be3609b529d7913f8cd58cccbb4641e4683530a7f5ca66cfe3ec4af75cb24", + "value": "0x4c00408a10a80eaa38c01c8107284192" + } + ] + }, + { + "address": "0x1b5bd713e72fdc5d63ffd83762f81297f6175a5e0a4771cdadbc1dd5fe72cb1", + "storage_entries": [ + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0xfa529c53faeea6566f" + }, + { + "key": "0x48be3692ab3e9e8bd4a134a7b958b4e69bcb00a71d4f58c22f9311921f12bcf", + "value": "0x1b02167b03d32826" + }, + { + "key": "0x7fb34e97a4e8d62ec0102459ffcd34a5c60b07d5175717e67b90501c4068426", + "value": "0x30616b98fcb32613" + } + ] + }, + { + "address": "0x5c0766524241bddadeb9bf0efef9c1f6e0746e9bf3500ac68db5cd1250204c3", + "storage_entries": [] + }, + { + "address": "0x5e9c1f79681bda535e6c2785e4f67d3f10c40c722e46b9660266a1a4b00e5bf", + "storage_entries": [] + }, + { + "address": "0x2c0c40b58bf3e8f73a08a8cf0717c04f2b8310cb836871ab666a8cc43f4a323", + "storage_entries": [ + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x22c90e6bf89928df17277073514e12267688fc7b4cbe6fb295dc96e2742b8ae" + }, + { + "key": "0x31e7534f8ddb1628d6e07db5c743e33403b9a0b57508a93f4c49582040a2f71", + "value": "0x86883e51407790dd511df4ba5459557220f8416bf1d277ba97c5904674201d" + } + ] + }, + { + "address": "0x2d5d419e92ab23c50849352a0682cce3a2278d993ca7d8c8237eac44c8ef613", + "storage_entries": [] + }, + { + "address": "0x2e4eb111979a8d37b5dae9b2b12bb3eadeb79eca10ba7e9f1853f3e1531afb5", + "storage_entries": [] + }, + { + "address": "0x5897662ae996ca4fb8d8a431f6a2a2d3e7033241316bd8f668ec77a5c878330", + "storage_entries": [] + }, + { + "address": "0x59dc06f71e879a6221f7b92acf3fa1d418a8b0a72c82a1138c7a2e8852396dd", + "storage_entries": [] + }, + { + "address": "0x32995c9ff8c6baa10490bf2572db55bb70b8acad4c0c342a1a47598a2c9d07b", + "storage_entries": [] + }, + { + "address": "0x76d2cb46378bba2cf8a72752a0d3c6f61e81b2c40fd96f50da63f48ea308915", + "storage_entries": [] + }, + { + "address": "0xfcd269e0be252e9fbeb71a10b5b2bddac1f73a15f0c318dcb4a95ad745aa74", + "storage_entries": [] + }, + { + "address": "0x230d59968c1c88342b3b4e35903ab0817b609c6920c5a991652f77a78955adf", + "storage_entries": [] + }, + { + "address": "0x42d265daefd7628b085f76498f61ccb3fc6745a85ed8b99750f2b09f962c7c9", + "storage_entries": [] + }, + { + "address": "0x77078585accca2f07ff9595151554dd690ecfa189db59e2675d331cc8682633", + "storage_entries": [] + }, + { + "address": "0x34ee260ca2635df4ba527b4a550eab67b7a80fae21e03abc56ff862c332a228", + "storage_entries": [] + }, + { + "address": "0x221d6242f7ffa04f0d76ca73f2ccb8dc380534c947b0119ae93f277084d8724", + "storage_entries": [] + }, + { + "address": "0x2fc2d4b41cc1f03d185e6681cbd40cced61915d4891517a042658d61cba3b1", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x3eb7d70d8d" + }, + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0x0" + } + ] + }, + { + "address": "0x453c4c996f1047d9370f824d68145bd5e7ce12d00437140ad02181e1d11dc83", + "storage_entries": [ + { + "key": "0x535a79f9174bba81e6e2cb69667f1a0cf4dddedf2a7e1864aafe3b5fb607353", + "value": "0x6c47fa67d" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xe5320c7e37f" + } + ] + }, + { + "address": "0xd3584f3653618e080604294f952cdaf1c8f496e858641196ef6dc1f2692503", + "storage_entries": [] + }, + { + "address": "0x57f70177fb8a798cf901d16cf8cfa3b15344b83f6a1263c9b6759042dbd9af6", + "storage_entries": [] + }, + { + "address": "0x354ae0842a8d49069f03f61701eaacc19733ec35352724f420acda500b8bedb", + "storage_entries": [ + { + "key": "0x412647986215a49a89de616bc520cbcfd93962fb03f43fa5163e777054a028b", + "value": "0x6dbe2b41a84265" + }, + { + "key": "0x76214e0d68f6b42db4db83e7537e523a12d18e91c1cd884e2795332a10df47e", + "value": "0x13c344144bfa830" + }, + { + "key": "0x59aec7e67a827932913cf450506690db7c24f30e6104fcd3baa14085da75b99", + "value": "0x86e64e48a215d9" + }, + { + "key": "0x5f08b8191162b29a98e2cdb667a70ead3c24562c605b336ac9d024a0a455c4e", + "value": "0x14f42201fc2958374" + }, + { + "key": "0x1a3edd9d59b9a482444e982f6a426f7567fddbc0af9c24beff321ac58d682d6", + "value": "0x1116fdc0892b1e1" + }, + { + "key": "0x2061da8812e7a53c4fff908d6af1692e13985381bb049c0b111c6f6abe9a2d", + "value": "0x151250c20326153" + }, + { + "key": "0x7cce8fffe84ea40d8ab7123cee5c7cd8a72f09526d281a0294ceca4914ef314", + "value": "0x13df9e2a1e1a6d3" + }, + { + "key": "0xcccb9f7cd98a9d4a8b7f535013611ca3c49490e2cee564d9303c2c4f87f373", + "value": "0x12909185b152063" + }, + { + "key": "0x32aea7c361661b86adb678a8e5871a2a8e5eebf078cb6e9619d7cf873153d42", + "value": "0x1282647ac82e23c" + }, + { + "key": "0x1a6097a5307f2f89b3cd7767b8dbe29ce927d298bd02f9c450f7428501ec7b7", + "value": "0x1274376fdf252e2" + }, + { + "key": "0x6fd7dc286e531f22f7c25624b854dddc92eb7ebcf5e1cbcdd090f3023d0cb8a", + "value": "0x15207dc3a1e7c54" + }, + { + "key": "0xd018fee5b99de8d981684802718892c766ec02da7ceaa49c4a32c51c578475", + "value": "0x130d90b72c7295e" + }, + { + "key": "0x5eea89ec30de993060111971c71cecdc18e635ca63307474e2a1684358c1bb9", + "value": "0x11be8412bf8f505" + } + ] + }, + { + "address": "0xdad44c139a476c7a17fc8141e6db680e9abc9f56fe249a105094c44382c2fd", + "storage_entries": [ + { + "key": "0x616721b40bba80daccc007f0331595fdc045d127fe5164ad7881c8ce560c423", + "value": "0x3ec240f5b47e9a6b4601c30c161a2edfd1c7164fd88cb08a490b8302c5d588d" + }, + { + "key": "0x29948d1f51789de87ab107aa56e1c3e864c2573121a42717e0402fab5a309b1", + "value": "0x3ec240f5b47e9a6b4601c30c161a2edfd1c7164fd88cb08a490b8302c5d588d" + }, + { + "key": "0x3234ffc6faf33e9a7a442df01000cf07ab82da5d46e5ca693764f67435e5652", + "value": "0x3a1" + } + ] + }, + { + "address": "0x7f43b97463ef083970f8490cc39166d93404824f9e8b9a40a7005cc01bf1116", + "storage_entries": [] + }, + { + "address": "0xbcbdc43c5f29b20a90871217c9cba041e107526ed089a2c9bc1ecb44e38d34", + "storage_entries": [] + }, + { + "address": "0x23e322879d00130162013def7cf44039f55e3d4330716c1785bd6c1079746e1", + "storage_entries": [] + }, + { + "address": "0x73345f16511b36016c73fa68c7f1d977da079a0d4d31c6d1fb2ad4f607a9ce9", + "storage_entries": [] + }, + { + "address": "0x54ead9cbb7c140dd4f653aaad1f935ba8f8c002a2b8afea77793fdf8d1d80d3", + "storage_entries": [ + { + "key": "0x220e0b892425d1f69aff06020782a0024fbbbf039d619a8e4d6e7daf180eafe", + "value": "0x90a08014bd1a0001000d7fdd3ff048a2" + }, + { + "key": "0x1110a0446b9e45d8842b25e36bfff1cc4231a254aaf73faccd1b7a31fb417c2", + "value": "0xaa8b0048a2c197a6d654504c77813021" + } + ] + }, + { + "address": "0x5ef60ea2f01850982de7a806a3255411da9bc29556569f6be81a0c3bf8c70a8", + "storage_entries": [] + }, + { + "address": "0x39bdcaf3a03d309494553ee70d57bdfe56f4b30a839b3da92a5e20e94be5e13", + "storage_entries": [] + }, + { + "address": "0x17732c0983ad71ed0cdfdf349e68fe808af9a77348f5bf6bc8641b6b7fb0d63", + "storage_entries": [] + }, + { + "address": "0x7c535ddb7bf3d3cb7c033bd1a4c3aac02927a4832da795606c0f3dbbc6efd17", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xfda03570891bad5accc" + }, + { + "key": "0x4f92a01853bbafdbf9ec41b3bfda4b03e549ce7bc62cf33bfc8fa2e5263fdbe", + "value": "0x821ab0d4414980000" + } + ] + }, + { + "address": "0x46ccee54d1f0f6995f9b1c0dddad1d64d034968507a6d96dda74cdeb4fa024f", + "storage_entries": [ + { + "key": "0x31e7534f8ddb1628d6e07db5c743e33403b9a0b57508a93f4c49582040a2f71", + "value": "0x4eb861e7f2a52bbb93ff632019b5daf1568a99726aa0fa9a01048a17fb52bb5" + } + ] + }, + { + "address": "0x69a4c7650437be9c842dbf53aedb8284b9686753f7bf8df2db0fcc0fde543ad", + "storage_entries": [] + }, + { + "address": "0x4ad445ffb6294d1394b3f6a5610642d37c702eaaa47346b680c6af2f102192e", + "storage_entries": [ + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20e", + "value": "0x2ead5" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0xc10bb7d7c16be56b8f3" + }, + { + "key": "0x332df419aa058c3f4b36acbf5af4b7e8e3d4dd58918d5f0ab2841741e7b55c2", + "value": "0x66389ef2" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c5", + "value": "0xd9e610b93e5a9a502f204b92752afff" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x1599fffa5f0560e7b" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20d", + "value": "0xbf17d7802043d6628842dba67a02ab83" + } + ] + }, + { + "address": "0x2586c356fe6d186ec889a3cf08674b333ee0a3e6a8ba492845a350be3785887", + "storage_entries": [] + }, + { + "address": "0x179a1b0ceacac65f539eb8f474b584e435de57445f2677b2f81fcf5951249f8", + "storage_entries": [] + }, + { + "address": "0x71e5405ace1afd64c682e65b08360b573c00370f4e3ad6e4f2cd800ec7d93d2", + "storage_entries": [] + }, + { + "address": "0x7c37081d9097b40afd331c578bb0a4be8897a6b08c513f0ce64293a58a60852", + "storage_entries": [] + }, + { + "address": "0x451e8681e82e69a5ad456396f79c108ce6ac4b4fc765dc0e50a1f29b77dc36b", + "storage_entries": [] + }, + { + "address": "0x7a755b633aa7acc00a259ce6399b9304341ed0174ed90c43ed03f6d9786c73", + "storage_entries": [] + }, + { + "address": "0x4229a4c31de1697a19b8842efb582c2763e16a1b892764ea33f2118b841dea6", + "storage_entries": [] + }, + { + "address": "0x3b8f4623bae7e265c43bb64a36f13aed6b6b944def5cc85cea62f99d55f0755", + "storage_entries": [] + }, + { + "address": "0x3fdc7f54eced634eb87e28794e03ff39f2675a64bc0cf1f600bb03b6d92cf1e", + "storage_entries": [] + }, + { + "address": "0x63ed7b225b4fc00d9bd2defcefab5c9edecdc0d2a5aaa01a85f4c63323ce034", + "storage_entries": [] + }, + { + "address": "0x17aad5a6dede010ffa8c97d23f10d628ca4730b1a8630da9da1ef8e6d424504", + "storage_entries": [] + }, + { + "address": "0x7fa7673f4cee6ec2671aa5da6fecacd2848e083e049266a4092382188035d79", + "storage_entries": [] + }, + { + "address": "0x736125664fe548302c4f222a0f4467109c11284b1d80d4b827f61b35dabca70", + "storage_entries": [] + }, + { + "address": "0x204975fbf5dc93500106339ebd209a387219a45aa79da4a8bc1b11971505f27", + "storage_entries": [] + }, + { + "address": "0x21f2479c076c58482c587551d5baee3144324d38930ca977fb2f86cab9f2f6", + "storage_entries": [] + }, + { + "address": "0x546c9cc3bb47b99d0edea0f8c2298b3326effd3c4c8090ba279e19ba14ac8b5", + "storage_entries": [] + }, + { + "address": "0x65f0af7a16417140e6732be2c87646ca7a2ed302d81068350e0edbcb8b3f9a9", + "storage_entries": [] + }, + { + "address": "0x294b1734d2e2155e8ca04fb2fa93aa701c89316657f653d1be58d88a1bcf811", + "storage_entries": [] + }, + { + "address": "0x36905faf0b194335d28a61a32a2531095fe9c36344ec2bac679c5dade8a053f", + "storage_entries": [] + }, + { + "address": "0x1d052a41c13e3a3ae10cd1e6163cfb0fbba6b67bad787c25b4834187e45856b", + "storage_entries": [] + }, + { + "address": "0x4a088e68982cc6ead3753676eb3def3abb34282b13ccc169d4baa66c7e1ec3e", + "storage_entries": [] + }, + { + "address": "0x15eb3aef733a5a91be98e671563ed90bd9782da16a617a9aa44d0e8c56533e3", + "storage_entries": [] + }, + { + "address": "0x5a7e4d3b38bd4341261616391cc632ec5e60952c8888ac6f34a22fe3abc5a1d", + "storage_entries": [] + }, + { + "address": "0x24255ff5aa52227d3c6451800ac64415d68075bb57876941b0a3efcdc20f079", + "storage_entries": [] + }, + { + "address": "0x4096023f0aa573dc76a63b747b2c70c5754e8ab19c823f936a50f30720830b", + "storage_entries": [] + }, + { + "address": "0x24f3fdc47e70e44b13ecde5f3916a28bfbbf802f96fb9be7d52c48d632c3f12", + "storage_entries": [] + }, + { + "address": "0x7037b5722b7c951877349034efd1a6d558945e28285254ffaa95c08e52720f0", + "storage_entries": [] + }, + { + "address": "0x3cd45dc9949bc0bb0e2991bc39e1552b0d642b8f5bf5efdb8dbe0e8aaa7cd61", + "storage_entries": [] + }, + { + "address": "0x46ff096282494b7a1a4086890b3a25e0934804e782d288a66edeb7fe173210a", + "storage_entries": [] + }, + { + "address": "0x332825a42ccbec3e2ceb6c242f4dff4682e7d16b8559104b5df8fd925ddda09", + "storage_entries": [] + }, + { + "address": "0x517d9ed6ee09dbcbbc7c2fbf678c10ed4a0ee674820bdbbe2fed6a2ed769212", + "storage_entries": [] + }, + { + "address": "0x23ed2ba4fb5709302c5dfd739fa7613359042f143286c115b6c7f7dc2601015", + "storage_entries": [ + { + "key": "0x3a5f74e83679c64a7604aef04d23a7258af050baaf5b2c7516e0d98b53a450d", + "value": "0x109573abd5691d2ffc12ec0" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x4a1e8123f43a0e78223f12" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x8a85d5b824fee177444f5dac" + }, + { + "key": "0x5cd3ca44d5c9283b767630419430fbdf1dd3d439782a04abef712c9532e0661", + "value": "0x0" + } + ] + }, + { + "address": "0x5dcd26c25d9d8fd9fc860038dcb6e4d835e524eb8a85213a8cda5b7fff845f6", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x1041f0d2904f" + }, + { + "key": "0x787fd6f9593f54f8cdf06f8ae609eb9cf23aafb8574c2cab2c8289c3bbc9646", + "value": "0x4b0294" + }, + { + "key": "0x2648be2fc5c65cff875d60abcb6d868ecdda483b36e3d7c68461106589c2552", + "value": "0x0" + } + ] + }, + { + "address": "0x6182278e63816ff4080ed07d668f991df6773fd13db0ea10971096033411b11", + "storage_entries": [ + { + "key": "0x21e77a9737b27339ef0cadb7ee94a1062db385e154c9c8c947da5bc791716f4", + "value": "0xc1c23fd81a3ab5e00000" + }, + { + "key": "0x291625bbd3d00024377934a31b5cdf6dfcc1e76776985889e17efb47b3ce2f0", + "value": "0x7f57a" + }, + { + "key": "0x1e44381b0f95a657a83284ece260c1948e6c965da4d357f7fbd6b557342cdc0", + "value": "0x8cb7d" + }, + { + "key": "0x673988054750327564f4b0cc4181f098e096b0ee60c34328ff7ef3c0676d312", + "value": "0x295ada6173a18c18e00000" + }, + { + "key": "0x17d92a5ef59f284e0816d1e00c104b1c29694c019a4d709096c1054939847cd", + "value": "0x68ebb843cf9cdd92d12fae01a5cfc7838c647db6e10a2f74b6d6bdd0a77cb0f" + }, + { + "key": "0x5229ab8ddc4fce669ee1f6915be36634a47c6c78014936862652adc6cf7bdef", + "value": "0x524006d0ecbbc610624d11ebe3d9b633362542a440a74e57c561c52d867151f" + }, + { + "key": "0xd2cf9c95a1b7188942cfeb6b1935248a995bee9f0eaa6a60228e85cfc5696c", + "value": "0x221d6242f7ffa04f0d76ca73f2ccb8dc380534c947b0119ae93f277084d8724" + }, + { + "key": "0x4a2d1531f8ec5426299be0a5fb42cec50ef541f76f1dcacdc1ad7f648d1f4f3", + "value": "0x7f57a" + }, + { + "key": "0x3db6ec55ed007baefa72e1ff639054f691cb3009b778edb59a37aa04690682c", + "value": "0x2f1b4bfa784128c3874c4957340cc6ed8cffd4758b41bcb5c9643d772de775c" + }, + { + "key": "0x4148b7506dc2846c7f82218fb97b7fdee82c8447447dae943ba4f89b63a3bf4", + "value": "0x7f57a" + }, + { + "key": "0x235a4d83b9b27bde6943b4e26301642f73f6fb6e5cda141734b02962b9d7f9d", + "value": "0x7" + }, + { + "key": "0x136462b2e27bebb0fb669e3a6075e562780010fb4fc474a435e0f16477f00aa", + "value": "0x7f57a" + }, + { + "key": "0x2ad499e235aa25a967f9d20b01751474293ddc880cbb4842bbac5f9ea1bd508", + "value": "0x7f57a" + }, + { + "key": "0x1624351d46fb788085efebab759775feceb4783d69a6e09832f5105224f21e3", + "value": "0x7f57a" + }, + { + "key": "0x6508f86b2769bdb6cb25f7656bb7c42daac72ba03f6952e02d4774c0a398e50", + "value": "0x2aadaa8df1b63b80e00000" + }, + { + "key": "0x37a9774624a0e3e0d8e6b72bd35514f62b3e8e70fbaff4ed27181de4ffd4604", + "value": "0xfc6379857e88f3ab4a00000" + }, + { + "key": "0x34b79c5986b88d4d66b160f33f63f1286023f26e4f7c313fe62589757f36d1c", + "value": "0x6901e7c3342a6a252e49ed04a1c406c401c7b32e0f8f08694e9c97af1c5d521" + }, + { + "key": "0x45095193bb978ccc04f6dbe27551b5ad7beac4f2c47157dc3f0616aae4e2887", + "value": "0xcb49b44ba602d8000000" + }, + { + "key": "0x526685ba174c1e7928d039b6a5e05a9abc386b38b1a75362be97f8145b37040", + "value": "0x6cffe11b90f64c67d2993573f5eac222219a7615548031f7eefccbb10c23a56" + }, + { + "key": "0x2cc737c3a8403bbaebb3fe968ab97845f3b08edc78bc470eaee824b2e2cbee9", + "value": "0xa859094ea57a5ae00000" + }, + { + "key": "0x37461f16fa540e1e2c9ccb2b83c6623a9b199ec03bab457b67afb307f5e30a6", + "value": "0x7f57a" + }, + { + "key": "0x50204603de051f58e05645ac6c74ebc2375b68c2423cbc49292dd8807d71244", + "value": "0x7f57a" + } + ] + }, + { + "address": "0x76def79cc9a3a375779c163ad12996f99fbeb4acd68d7041529159bde897160", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x46c6481d389099dda881" + }, + { + "key": "0x512833e246671faba32da48d87a40629e7dd17b40257ec590a6e17c8ac96dcb", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x15c55ac801b87e062f80a" + }, + { + "key": "0x47ad2e6564d72e603afb73ae84c22c66bba2d025ede35845ee8ece0799ba5db", + "value": "0x0" + }, + { + "key": "0x34eaade9f12dcc6e6385184e591dc1308d98187c7da26503b1e5c4b5b03d9f", + "value": "0x0" + }, + { + "key": "0x4ab851af7c319653ea03e239304e83bcb6fa56f3871f6ba955de11ace8892b3", + "value": "0x0" + }, + { + "key": "0x59e75d991e38414cb03337b2c33628c0e610f3d0e52ca5e7c8d8dabd4b07358", + "value": "0x0" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x11898dc810855dc5939f9" + } + ] + }, + { + "address": "0x165e9f32fbd734f0ee34162b0bca57a421d4dc74573c4fc8f8f7a30e3a3d2ec", + "storage_entries": [ + { + "key": "0x5526f7099c4042801a7a651065d257ed580ffa9f6bc11ca376533ce6b9431f5", + "value": "0x1010a00f000922a02001400008000017" + } + ] + }, + { + "address": "0x69913035c6302806f9874f8923d3fc9f6d2aea9ed66691eaf676fc4c73ef1dc", + "storage_entries": [] + }, + { + "address": "0x1796860e8dc76fbc3d857b7133aecc27f05303e1388e6e1fee44541fcf1243e", + "storage_entries": [] + }, + { + "address": "0x11b7f0d1c47e8b9435edd6914c7955e69b199be7a2cd1ae465cad91d68bfea7", + "storage_entries": [] + }, + { + "address": "0x2e118b4a71db6e9fa6a8557466040e836fd3b1c53a54278d8e27ac19470251e", + "storage_entries": [] + }, + { + "address": "0x134f182b461039c36efa334fe7a433f375630338789457abcf47465e4bf7df6", + "storage_entries": [] + }, + { + "address": "0x52b136b37a7e6ea52ce1647fb5edc64efe23d449fc1561d9994a9f8feaa6753", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x490c92c65" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x54c94992ee8b7c7a" + }, + { + "key": "0x59e75d991e38414cb03337b2c33628c0e610f3d0e52ca5e7c8d8dabd4b07358", + "value": "0x0" + }, + { + "key": "0x512833e246671faba32da48d87a40629e7dd17b40257ec590a6e17c8ac96dcb", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x138bdf2c60410" + }, + { + "key": "0x47ad2e6564d72e603afb73ae84c22c66bba2d025ede35845ee8ece0799ba5db", + "value": "0x0" + }, + { + "key": "0x34eaade9f12dcc6e6385184e591dc1308d98187c7da26503b1e5c4b5b03d9f", + "value": "0x0" + }, + { + "key": "0x4ab851af7c319653ea03e239304e83bcb6fa56f3871f6ba955de11ace8892b3", + "value": "0x0" + } + ] + }, + { + "address": "0x48f86f17b3aaed89dc625577d1a76e0b0c9b7a927937a50977855f9cbda0207", + "storage_entries": [ + { + "key": "0x59aec7e67a827932913cf450506690db7c24f30e6104fcd3baa14085da75b99", + "value": "0x24dd00634bae58a" + }, + { + "key": "0x412647986215a49a89de616bc520cbcfd93962fb03f43fa5163e777054a028b", + "value": "0x1100fa5874f3156" + } + ] + }, + { + "address": "0x3d23bec5d2733adb0d93a397144a348b3394e5a9637dc2ed9ebe185fcea1584", + "storage_entries": [ + { + "key": "0x7d30dcb01f52701715d2c599f6a1cf3359a9d80d9e8ac7fb469941d21ae9803", + "value": "0x479a9dcea4aedf33" + }, + { + "key": "0x412647986215a49a89de616bc520cbcfd93962fb03f43fa5163e777054a028b", + "value": "0x963caf394076e2" + }, + { + "key": "0x1a6097a5307f2f89b3cd7767b8dbe29ce927d298bd02f9c450f7428501ec7b7", + "value": "0x180a24d15f0d568" + }, + { + "key": "0x1a3edd9d59b9a482444e982f6a426f7567fddbc0af9c24beff321ac58d682d6", + "value": "0x16381b26df8bca4" + }, + { + "key": "0x5eea89ec30de993060111971c71cecdc18e635ca63307474e2a1684358c1bb9", + "value": "0x171d722b878ce31" + }, + { + "key": "0x2061da8812e7a53c4fff908d6af1692e13985381bb049c0b111c6f6abe9a2d", + "value": "0x1b9f80e8d1ac15d" + }, + { + "key": "0x32aea7c361661b86adb678a8e5871a2a8e5eebf078cb6e9619d7cf873153d42", + "value": "0x181180728e550d4" + }, + { + "key": "0x7956f5047e5e0bfcb09f46d1046e1e3767af71ac650b9caedeacb62d7c99e84", + "value": "0x7762ff9982cbde7e" + }, + { + "key": "0x5f08b8191162b29a98e2cdb667a70ead3c24562c605b336ac9d024a0a455c4e", + "value": "0x2c6b50f049c770fba" + }, + { + "key": "0x76214e0d68f6b42db4db83e7537e523a12d18e91c1cd884e2795332a10df47e", + "value": "0x19d4d2daaf21165" + }, + { + "key": "0x7cce8fffe84ea40d8ab7123cee5c7cd8a72f09526d281a0294ceca4914ef314", + "value": "0x19e38a1d0dc3c6d" + }, + { + "key": "0x6fd7dc286e531f22f7c25624b854dddc92eb7ebcf5e1cbcdd090f3023d0cb8a", + "value": "0x1ba6dc852e91091" + }, + { + "key": "0x59aec7e67a827932913cf450506690db7c24f30e6104fcd3baa14085da75b99", + "value": "0xb8ad2dabd3d9fd" + }, + { + "key": "0xcccb9f7cd98a9d4a8b7f535013611ca3c49490e2cee564d9303c2c4f87f373", + "value": "0x1818dc13bdc18e0" + }, + { + "key": "0xd018fee5b99de8d981684802718892c766ec02da7ceaa49c4a32c51c578475", + "value": "0x18e82034d7b3942" + } + ] + }, + { + "address": "0x1f78042ca65d29145ba4f54cf0c0631c1f5933c48648beb18e062e31ad642c1", + "storage_entries": [] + }, + { + "address": "0x4df512a0bc55da79e68f2086ad9ca557ad8687960e6b0204955a95753712339", + "storage_entries": [] + }, + { + "address": "0x36c696c570d289d6dffee1f7404c28b7a7bdd55706283f72cd00d7155d825d5", + "storage_entries": [] + }, + { + "address": "0x59a943ca214c10234b9a3b61c558ac20c005127d183b86a99a8f3c60a08b4ff", + "storage_entries": [ + { + "key": "0xb5da8588258cf59a9a61b801cb29947fe195cd2a4cf7029895d1841ed37793", + "value": "0x573f3b31fdf4b2" + }, + { + "key": "0x6c1dbee2d89535c1b9380b1ed3137f1629c31a9e603e6f366550b42846ae7ca", + "value": "0xe084290fc439055" + }, + { + "key": "0x7f707060dc04e7a4bf0e4a5b3cc74cac753d9ff1a2997082a22fb3cf8eb237f", + "value": "0xdeed3ec67245208" + }, + { + "key": "0x154a964b4969028601192cacc9498e02ead6de4ae6510d99cc0fc6e5056793d", + "value": "0xe4f98b6f54b93a8" + }, + { + "key": "0x1ad05561d61ee79b7e2eea93c7dab54647930601d0fbc3d9ebcd6b61475262a", + "value": "0xdf4475e5802cf2d" + }, + { + "key": "0x13879bf0159bfecdf14ed144f041427c38ee455c92f525ec8792d455532f890", + "value": "0xe279d0542f0c1fa" + }, + { + "key": "0x1c41f330bd121872d68b16aad737d65e410fd9bab463545cc54e173fa5f7f89", + "value": "0x13782efc0b53f16" + }, + { + "key": "0x3ace8a2d501d0cc72133033060e292257c4f1a5f26312fc945d02c6bad5e3c9", + "value": "0xe1b33f6b0ea3d53" + }, + { + "key": "0x210e20aa0ee1aa847b3afd50ce9cea5a619e716fe61c8ee6b835750a8f39beb", + "value": "0x220c3b7a6c0ae8c" + }, + { + "key": "0xdafd05ed8e8edc1a76e71cc6035424f9a4f6848100a2cf666f9054805a8a08", + "value": "0x66389ef2" + }, + { + "key": "0x14cc0f828501e1bb032df4e5810cfe7c260d7e196a140ecec5a83dc97fb27e0", + "value": "0x66389ef2" + }, + { + "key": "0x19e18c1634d953476fb79367c91e07b1145f7c9be31ba9ac430e44c49df29db", + "value": "0x10ffea178a2b222" + }, + { + "key": "0x6f993ef65ed08374ca714d0b18eceb7d7e1539d7d0512e142693bf7a486833c", + "value": "0x620917bfb286ac" + }, + { + "key": "0x55bd64a08284f65eaa89fd5a81f307ed9c778e89b797992d4af620df1d9cca7", + "value": "0xde24e82661ec207" + }, + { + "key": "0x4172093f6b1e57737ddf4d2270ecce189aa9cb630323df3932d19c63e88a1c4", + "value": "0xdee910a833c059b" + }, + { + "key": "0x25d5b0d8cd8b2678b7881d5e019ee95ad30f710f0322325dd141ac9f0e2ecbf", + "value": "0x66389ef2" + }, + { + "key": "0x49a24a7610bc1ad6ae02e25481b145976dc13c9be0f5547b93d55e80f55dcc4", + "value": "0xe5258eac1fa2c2c" + }, + { + "key": "0x45c429925b63ad1d343f080899f82cb58829aef297aab6f49e9b6f729e225c1", + "value": "0x66389ef2" + }, + { + "key": "0x32cc2a5a8944344ae56ba91d9d48bb20837c23598d502ffaad2b9e1e112361c", + "value": "0xddce6e56690ae" + }, + { + "key": "0x67cc907a55ab9b5c251d076a1b170cde38a5f9b3809e2bbae55c3c2a96500af", + "value": "0x135abf80dff6bd" + }, + { + "key": "0x4a31f49fdb9cb10e4c5f4318207bab1aa70548024c73b5a20a4828c1a4e9005", + "value": "0x57e6c6cd7ea1d" + }, + { + "key": "0x238ea81375caa40a284a8582796dcca9aa9bb1cfea16b32d8430f25931866a1", + "value": "0x7612330ff6e7f4" + }, + { + "key": "0x44dff0be23dce03163b957c4e69a9767a4898e7c7ea6c4cf52d8f57d63ed5d9", + "value": "0x66389ef2" + }, + { + "key": "0x20282036f9f415ec13ff44bb35aef4f96afc9551818f06a946fe34ce4e8e976", + "value": "0x631c6af792ce73" + }, + { + "key": "0x178aa618a136a3dae4121de8075402bd40a787adfcbbf4e8d8de55d887ddfb9", + "value": "0xe98aa8efd3676a8" + }, + { + "key": "0x21c9eb00d0ac408c043d571b90b3a8c30e8ea5c3f0e4b79e60416cd13493ecc", + "value": "0x9adf0d5e6f095e" + }, + { + "key": "0x76621bdbd49b9f11095493ebc39a08c69c6462dc2134777fa63775e10bd10b3", + "value": "0x332e7abb147f552" + }, + { + "key": "0x1b264b66023b6154947434dc29315488f9df8781cde65cdcd691eb84c000595", + "value": "0x66389ef2" + }, + { + "key": "0x52e38798c4f7e8d89237707613307c6bb5c064e689f122560d4f45db4adfd55", + "value": "0xe9b1cb0780beb2d" + }, + { + "key": "0x5e0ecd6cf18cb208b04ddb27c0ad2f6c242a7c177db4f8228f6e83c23d85265", + "value": "0xde353a6d256945e" + } + ] + }, + { + "address": "0x2a85bd616f912537c50a49a4076db02c00b29b2cdc8a197ce92ed1837fa875b", + "storage_entries": [ + { + "key": "0x72fbe48204b03bcf34d3f828c9f6a0ada355fabe7fcb7b56e04785fa3c29580", + "value": "0x2f36be3e00000007f7ecee08aca638a0066389f63" + }, + { + "key": "0x31a25899ca3a40d5213978b15ae287230435bf490ae488775f5c1d06e50af09", + "value": "0x5857a99756a0139269c4a68e6092378e200066389f63" + }, + { + "key": "0x5d3144957fd869a985437a20ba5f51041d2c4f298c022c3767535e0b2fda6ec", + "value": "0x5f4ee2900000004fa9e82b99899c8d0066389f63" + }, + { + "key": "0x2e755fb331dbc988841003875724fb2cfca53a431855f4ae1ef5e2a77aaa9af", + "value": "0x5f31b650000000000023766cdbbcc50066389f63" + }, + { + "key": "0x14633169ac55d1120517dc937d86acd6e8432632668af401e3f521aa5a1f16a", + "value": "0xf4487000000002742ad483bdefb94066389f63" + }, + { + "key": "0x2eef5218d06a4ea2659e97246f30b41ad69d3ca960388a535281325363d14a7", + "value": "0x5ee7aaccba00000000235ad7612adf17a00066389f63" + }, + { + "key": "0x252e39d215625176a1db1dae25ded2c6a756c2b3ea6059b04880221887338dd", + "value": "0xf41d7000000000072e8649625a37c066389f63" + }, + { + "key": "0x7d570a43f276455f47442b8e4ce18e2240d406c64268495f8b208c50b3457e2", + "value": "0x81bf35c00000017d604676b9dd12880066389f63" + }, + { + "key": "0x787a0379475667eea2de93a09a19b94bafd4d05502aed5d5233be4fd1ab0101", + "value": "0x5f13e1f5ce00000136553ec60a3fc0aaa00066389f63" + }, + { + "key": "0x35427e5fb3d65595318ecef1facb1681aba9f4732a993357228d6990192ba54", + "value": "0x4a98e41e2a000007b36f8b1e7b9704c4a0066389f63" + } + ] + }, + { + "address": "0x1dfcab12c70718c8ab7ba30b975d09ff74bf7eb30ea3a8e7652b4fa07685413", + "storage_entries": [] + }, + { + "address": "0x6e1ed57b7e9fed35364ca419340c47479e93206a2dcda5e50530ae198d872ea", + "storage_entries": [ + { + "key": "0x3ad370bec4e96a0b6895a0b20573fe8960a494cd6720d86fec0e9b3252b2271", + "value": "0x13c1e4c054a30c649f1466" + }, + { + "key": "0x24dc99466e4418b4fccd818c369e805aa4b2c2e28731ca51ec24311cfb85a69", + "value": "0x13c1e4c054a30c649f1466" + }, + { + "key": "0x1131b64255bdb5133d698c0e8b9a13bfacb28f86d2dea7f2f1b1a9f8762a408", + "value": "0x2cb1" + }, + { + "key": "0x3ad370bec4e96a0b6895a0b20573fe8960a494cd6720d86fec0e9b3252b2270", + "value": "0x66389ef2" + }, + { + "key": "0xf1ec356adea149fcc8824a2b8712d81d1df416b0f8f8ac32931c66d5f80501", + "value": "0x49235316812" + }, + { + "key": "0x2e3f9cadd00a7b869d6b98db5d32847ff18a5561c3f3f7a944380864c8f247b", + "value": "0x66389ef2" + }, + { + "key": "0x3ad370bec4e96a0b6895a0b20573fe8960a494cd6720d86fec0e9b3252b2273", + "value": "0x21c5ad4c6e51d5e" + }, + { + "key": "0x3cdef5d80c6ad04af135e445867114b5ce32ed8dc8de667995f3d27760e3520", + "value": "0x10fb92303" + }, + { + "key": "0x4e9417c05bcf183e111558ce4666b053bbfe9736b74fba16b017ab7ae075f1", + "value": "0x6872b8b11b85d20" + }, + { + "key": "0x3e65716c9b9f010d10085941d0c6e6dfb190695b7cf09a71f0aca74ab94cdf", + "value": "0x21c5ad4c6e51d5e" + } + ] + }, + { + "address": "0x7b696af58c967c1b14c9dde0ace001720635a660a8e90c565ea459345318b30", + "storage_entries": [ + { + "key": "0x121d7652f021d546072d1dc99f4b2df008d67f4cd258a2f5e4653a5f7e592cc", + "value": "0x9" + }, + { + "key": "0x1e2d329c7074b22bf36ca6505fa596756ac898172325c7ede7dfdd77ecb9372", + "value": "0x293b9ac0cd6682d3eeac79877840b6d4564a2ce89292904b2a7a1df6dbb0da" + }, + { + "key": "0x150838b1b1572430ff4dc6e4f45cb3bd04df40ce294f308c73d85b80fbb7422", + "value": "0x7454835682c578f82972aaed5b81e847c062964aa0c5aa05ccb00059be1e089" + }, + { + "key": "0x5ceaaa371031ee347c3287444afe41b681f7237544658f886cb9b68f6b41197", + "value": "0x3ec72f60407705f957d295543d642f9f6700c51bd0dbf76abf643366b96e3b9" + }, + { + "key": "0xe68d35dbd8d073659ce915942a703c85ed475cb0023456ae00a547594a9933", + "value": "0x26fd67638beedf82c05ea59324cd7aac2933f3efbd4d62ff6421e1b0e9ab3ad" + }, + { + "key": "0x7b52ebd9c03e0f65963348347a177119cbcac9ad4d3e5606de991cd56bfaedb", + "value": "0xa" + }, + { + "key": "0x13266c8245848743eda113c723d28d1e0118f3344e873578e3ff088aad76061", + "value": "0x16" + }, + { + "key": "0x78c993e130f4e3d5e59f32f6afcc031f9b8ca69c58090788df92fcc90288a2b", + "value": "0x7" + }, + { + "key": "0x3ddcb31dc2801b6785217fd269bffb4ca9029eaab88ea987fd891e44ce70c24", + "value": "0x2" + }, + { + "key": "0x3a3f3bccacb554e88d5fb56c1efcf55b4f0eeff2346c8168a80e7cfd07cc3d8", + "value": "0x24a1ef0bb1a768abcec22c64f68e4d77bbdd883abffa6bf5aff4b5e28d4d19a" + }, + { + "key": "0x60344d4f1471a392a4278c1c48ca7fd38c2330552413a8c4b3c5ef0ca3ea02b", + "value": "0x7f83a4b0000126b765a27508f10145a6293bfc7354ef9a81895a85c0ca8aa9" + }, + { + "key": "0x7402e9d68e96eea25b43fa80616e5cb6e6b4177735aaf06d266de31a2a2dc28", + "value": "0x9" + }, + { + "key": "0x3bf7a2e3b96f495a47859ab0f2fbb228ba7e2cb1729ce638c2a8db17591d9e2", + "value": "0x71cc68b2e88cab8c13040a64ce0e97d289a2b8215eaf1f5608ec02292275e77" + }, + { + "key": "0x4c1fff7c4ed5fe0b972513e74700eecff8c84dac3c18d487537404e4e7a1452", + "value": "0x3" + }, + { + "key": "0x2ab214db3b5bef8e418d0870edd90e49dcf9b900acb2f35e92c57a9f522488b", + "value": "0x2" + }, + { + "key": "0xf21ebc0c44bd80d53b3af097e2127a0d3e57012653ac3792e78172fb5272d3", + "value": "0x0" + }, + { + "key": "0x664b35a185fa5fd37bc651218efe56521584a97611c98cf49ee1ab7db0949a0", + "value": "0x57f70177fb8a798cf901d16cf8cfa3b15344b83f6a1263c9b6759042dbd9af6" + }, + { + "key": "0x50f424072e6c09ccbecde977a0b2cc90a508331cbe75d5013c22c717e36c66d", + "value": "0x47e83d52c5caec8f52855aeac27dd10c83c3fd6263c71cc348cf3aab3908928" + }, + { + "key": "0x10d2d89ee93a61f82b84ba3ab879ed5ee6b34d6cd1766ce1b351582fa2c9841", + "value": "0x205d1365da9539143b6af1bb904b5da42a5378613ab6aa086fdcb2e09542752" + }, + { + "key": "0x2a9f6940e96680af2fe721eb59341cde71d9b7ae61dc834d205d6c59360268e", + "value": "0x90437" + }, + { + "key": "0x64e3b277df27168507362b534d34bf850e135dba4aca685d7fd70a41a3a7d4e", + "value": "0x2f" + }, + { + "key": "0x1441d78785f652ae7b8976b4f55c8574e1ff53c4df77bc0aad810e371ac3686", + "value": "0x2" + }, + { + "key": "0x3d42b568534986f2d5b258770670583b98803615b6c066be0946a3f67f73259", + "value": "0x1" + }, + { + "key": "0x770c25e1fb9a47594bfc6f87567cca5bcdd74e7433f9b08f4ac6778b4f48a94", + "value": "0x5f447992a68f6dadbdbd3d1b50df2a722f4210e9d01f581b9ab528cd2cb6729" + }, + { + "key": "0x712f91d522e041812e305a8d69e657a10960c7dd9accf8cf044284c74f5c89d", + "value": "0x3" + }, + { + "key": "0xbd5d64c747236c0e309cbe6cb0623888ce68906fff95347d76c1840e006250", + "value": "0x76ca6ae7ca340ae0a7dd0cd07f701c9b593c22ec15f9a76f20d27e1c08cfd1e" + }, + { + "key": "0x3f26f5ddf5ac02b67cfe5a9a23bf20214fc7d283eea551242d0e35f0ed112ca", + "value": "0x7e4877307d7df9c50ac3a9dad9befd5f87c2bb93c07a4336cd127920eb8d12c" + }, + { + "key": "0x708cc38f1a42053eb74c8afb5cff038db4340a0395908bd0b2c9227bee2720c", + "value": "0x126960b1397991df6516dae6d930ef5e2073e0889074d5eaccb8bc575c39d01" + }, + { + "key": "0x4cf151ee9e762c937905cc00fc15f23bc350e3938833f5f77d497ef8a6f6d43", + "value": "0x9" + }, + { + "key": "0x7835448a265fe4133e56731b1e3569e00692b102d4b23c7072406797e9eb36b", + "value": "0x76ca6ae7ca340ae0a7dd0cd07f701c9b593c22ec15f9a76f20d27e1c08cfd1e" + }, + { + "key": "0x54de06d8498fc9ec7afdd7bf2a5ae429fb7e17f97cd0bea111038f5fce65e48", + "value": "0x7d10510af4d9bfe30f4dd973472a3b54a96c2a3593d21e64c63f6ffa50d3ced" + }, + { + "key": "0x1771d6845573e7e576f312be9a4d7447a8cebe09f04c0ef750d5dbe319ad686", + "value": "0x76ca6ae7ca340ae0a7dd0cd07f701c9b593c22ec15f9a76f20d27e1c08cfd1e" + }, + { + "key": "0x355bae60451122fc99ddf0cf1b61a94e1525e4d66c92668723cf3155a62b918", + "value": "0x6" + }, + { + "key": "0x2c306cd2d1bd6113a04b6cef990288169d5793a5598e556bb060d609ed0ef45", + "value": "0x15" + }, + { + "key": "0xc974d4950ae398129c4ccb74d4cdd7f9137de501def2b3c60564fd78b1e1af", + "value": "0x76ca6ae7ca340ae0a7dd0cd07f701c9b593c22ec15f9a76f20d27e1c08cfd1e" + } + ] + }, + { + "address": "0x7f83a4b0000126b765a27508f10145a6293bfc7354ef9a81895a85c0ca8aa9", + "storage_entries": [] + }, + { + "address": "0x269aa97b28fd44a52e233e62fa048b9e041276d816b21dd75bc2f1ff836ea3b", + "storage_entries": [] + }, + { + "address": "0x28d81b90c38d72ac81f4e7a0da4f85e8cddc2b8480678dde4180cdd4f5cf668", + "storage_entries": [] + }, + { + "address": "0x3d7f13541227d6d432712dfaea8534c73bab6b57b28067373fac9b62908b6ab", + "storage_entries": [] + }, + { + "address": "0x4f23847a20bf600c558d576e326068d22b3be107e9870bd70aeb3dce0609689", + "storage_entries": [] + }, + { + "address": "0x23c72abdf49dffc85ae3ede714f2168ad384cc67d08524732acea90df325", + "storage_entries": [ + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20d", + "value": "0x61adad7a330816c579fb3ee414f30cac" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x9289ad2776c13f995" + }, + { + "key": "0x332df419aa058c3f4b36acbf5af4b7e8e3d4dd58918d5f0ab2841741e7b55c2", + "value": "0x66389ef2" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c5", + "value": "0x19cf60bd9ba487c61704c4e520e4" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20e", + "value": "0x65997192c5" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x7dd7cbbdd8" + } + ] + }, + { + "address": "0x7511dbdfdd0916cf2c38ed46567fefc7ae4ecb137ca46eddac3bdbd1794312a", + "storage_entries": [] + }, + { + "address": "0x25a04676377d3e3591d5de70ab52f446655f666687e9dad7515134d508cce85", + "storage_entries": [ + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df4", + "value": "0x14f2a" + }, + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df6", + "value": "0x66389ef2" + }, + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df2", + "value": "0xc368578862865" + } + ] + }, + { + "address": "0x2e767b996c8d4594c73317bb102c2018b9036aee8eed08ace5f45b3568b94e5", + "storage_entries": [ + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c5", + "value": "0x34078afb36431d07d25c60dec" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20d", + "value": "0x14c5d1981bd8f5a5265c3cc16e487bef" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20e", + "value": "0x2aae4704d4916" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x3bca8b217" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x36d3d337a378fb4c423" + }, + { + "key": "0x332df419aa058c3f4b36acbf5af4b7e8e3d4dd58918d5f0ab2841741e7b55c2", + "value": "0x66389ef2" + } + ] + }, + { + "address": "0x6d8fa671ef84f791b7f601fa79fea8f6ceb70b5fa84189e3159d532162efc21", + "storage_entries": [ + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0xc394d2a7ea83c5088233a" + }, + { + "key": "0x48be3692ab3e9e8bd4a134a7b958b4e69bcb00a71d4f58c22f9311921f12bcf", + "value": "0x3c20d10a3c743896a8" + }, + { + "key": "0x51c91a0bd33136aa35584c4cf575badb7ba010e298f0eaa7a36d374df9a1ee0", + "value": "0x10435b825e8c783d37" + } + ] + }, + { + "address": "0x424e20c1d50a7dc2aa3b098f4da6dcb4b1fe19b64726de40fa2e46f0ea1530", + "storage_entries": [ + { + "key": "0x5474dd2cde70e352983ecc9901d24437983abba328a971510a6985e9f6eef61", + "value": "0x400000000008000004000" + }, + { + "key": "0x15acd4d6223881f9ec55410f72f7a10010f7ad25faae2ecbb93a56822ebb2fa", + "value": "0x6f3fd7f96ef7b7dcd469efd83fe757fe" + }, + { + "key": "0x4e5b79277431d53b9773e7b7f4cfefeace74135d2361b9947682447195013d6", + "value": "0x100011002000020000000" + }, + { + "key": "0x4309e27027a30abaa0e0f2628e2e7ef33b13781acf7119c6c4082c40dc089f1", + "value": "0x21000000010400080000200000000000" + }, + { + "key": "0x6a740b2d11e3a57010f35935002f6328896cca44a7adc3d0c561b1cab51e474", + "value": "0x102840a04010221220002600866004" + } + ] + }, + { + "address": "0x1258eae3eae5002125bebf062d611a772e8aea3a1879b64a19f363ebd00947", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x686fa0cbf2cc8929d8087" + }, + { + "key": "0x2101db38f0cad848c1f5fcaa03de2895b1529d38a8a9d092591af981dec45cf", + "value": "0x653e5dd7f4466046906" + } + ] + }, + { + "address": "0x7cd076869d0f0b33d925ee64e476c3313692749ec4db01e64e278b944ba5450", + "storage_entries": [] + }, + { + "address": "0x216681789c9072368a4e36236f416ffeeca59475795ac46b4a0d84d4e87c197", + "storage_entries": [] + }, + { + "address": "0x428e5a3f659adda7e79e5ccd495176c4a83cd74ec181f2ffb15bd7beb7bf953", + "storage_entries": [] + }, + { + "address": "0x3c850bc54a9835aecf064c74570237ebb3a04ed61e81b6b60318aca30443460", + "storage_entries": [] + }, + { + "address": "0x5a06b217faf40c59a4ec6968977683fdc2f464bc682c08d9541881c442e3198", + "storage_entries": [] + }, + { + "address": "0x371902de53fde77541edf36b4bc717c1a2476e6f76e8a22d9eb25e9eeaa92a3", + "storage_entries": [] + }, + { + "address": "0x796f5e0d9d1bc30750324670e02d498ee0617ecf98e3323d0835342ab9ca668", + "storage_entries": [] + }, + { + "address": "0x592bd38cbc00a1658ebf02414047bd90d4db39acbb124801fa053a14dc863b3", + "storage_entries": [] + }, + { + "address": "0x5e6028c25d35100e171bb7de8c423fa4890a1e2ef091cb9941e306029f66655", + "storage_entries": [] + }, + { + "address": "0x28757d11c97078dd182023b1cc7b9e7659716c631adf94d24f1fa7dc5943072", + "storage_entries": [ + { + "key": "0x2a1f43dc33220d3ac66bc5721d50c162116d901ce79236699effa0908d1c19c", + "value": "0xbe1a93399f" + }, + { + "key": "0x2768c364229a8e032ad89302b1af1d1e2bf735a4207b9144ef8857d265ec104", + "value": "0xa878828e7d" + } + ] + }, + { + "address": "0x38fd8919115ce7894402c6614e4e95917c4cb7de8118b71465542722b718246", + "storage_entries": [] + }, + { + "address": "0x1c381df6357df3693eff7a541a676a100375859ee1cfaf23e12586ad09dbd04", + "storage_entries": [ + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0281", + "value": "0x66389ef2" + }, + { + "key": "0xfc7fce0137ef0fdf47d2297ba791a15d3f3f1801dc7ef0b2aa311ad5d4034c", + "value": "0x153ab5cc679e79955bb" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027f", + "value": "0xbe0a90168" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027d", + "value": "0x7ac6aed22f0a284a5df" + }, + { + "key": "0xfc7fce0137ef0fdf47d2297ba791a15d3f3f1801dc7ef0b2aa311ad5d4034e", + "value": "0x2cb42eb9f" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0284", + "value": "0x34888b9f13d4c1e8" + } + ] + }, + { + "address": "0x70f8001232949b40909c84ff82eb4f90c6be95724fc91527b833a40ed094108", + "storage_entries": [] + }, + { + "address": "0x5026e98af49a5f87a62411451c6f8173e159bfae8db392821beecaea8bb64ba", + "storage_entries": [] + }, + { + "address": "0x7b2d89774a1bb333a2789245f2fbc14e7b0bbdf55725a98af799e962b0ff4ca", + "storage_entries": [] + }, + { + "address": "0x2a6e0ecda844736c4803a385fb1372eff458c365d2325c7d4e08032c7a908f3", + "storage_entries": [ + { + "key": "0x332df419aa058c3f4b36acbf5af4b7e8e3d4dd58918d5f0ab2841741e7b55c2", + "value": "0x66389ef2" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c6", + "value": "0x749868022459" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0xc8db8b0692cf1aac" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x4439360" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20d", + "value": "0x147652afbb6c13cb84f4465bc0" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c5", + "value": "0x5c482cd6f349a5c7e93560770abde9fd" + } + ] + }, + { + "address": "0x8718bf271493c557974f8aab1179f431a0ca956c74e83f8ec4c37834f0f9ce", + "storage_entries": [] + }, + { + "address": "0x524006d0ecbbc610624d11ebe3d9b633362542a440a74e57c561c52d867151f", + "storage_entries": [] + }, + { + "address": "0x5ae048a93936c77b8f2525fcd5b7a867cadf23ea33c922c05d241e72c003be1", + "storage_entries": [] + }, + { + "address": "0x1c263dc6cb986734d79ae6542c67d82ab09569141368f5ec19e4b88476ef441", + "storage_entries": [] + }, + { + "address": "0x3a3cc51e76135caee3473680a11f64db87537a0252f805d60e69f31e1a7e9b4", + "storage_entries": [ + { + "key": "0x69eb3dfc5962140858dc66fdac6f30bcf1bc14eddf074f623693f81da4d3d2c", + "value": "0xa19802a12130820266c81500a40620" + } + ] + }, + { + "address": "0x261fe4d3815ac0503d7c86ba9ba8d74a55551ee2f89665a3d163cdb40a6d624", + "storage_entries": [] + }, + { + "address": "0x4d0390b777b424e43839cd1e744799f3de6c176c7e32c1812a41dbd9c19db6a", + "storage_entries": [ + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x55fbd1e24d5a04" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66389ef2" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x1b6148b1a46fb1" + }, + { + "key": "0x165243305aaaac67d300c7f030569236f3935274672b6c155713b8b6734fe9c", + "value": "0x0" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0xa772896217464efed" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x902fcb36d6" + } + ] + }, + { + "address": "0x34ae0b0959839b782457db6674356ff3e9b3667f15cdad7803983fb7d243ef6", + "storage_entries": [] + }, + { + "address": "0x42c4e936223cd885b748d859aed663f439d62ed67fe9ec15eb6bb2df17f6ad9", + "storage_entries": [] + }, + { + "address": "0x29ce851b97f322d7f2aaae9c9d85a6f6ea31791d28f007350e145395d2d7d82", + "storage_entries": [] + }, + { + "address": "0x24a1ef0bb1a768abcec22c64f68e4d77bbdd883abffa6bf5aff4b5e28d4d19a", + "storage_entries": [] + }, + { + "address": "0x6a37280403bcdf0d3390ec78ba05efeac09855f8ce7f18be9b585e612fe982", + "storage_entries": [ + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df4", + "value": "0x1c6c5148966c" + }, + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df6", + "value": "0x66389ef2" + } + ] + }, + { + "address": "0x6cbc110394329a1beb059b1da3a36e3042280f4c8cab1a1d10618e4822649ce", + "storage_entries": [ + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0281", + "value": "0x66389ef2" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027f", + "value": "0x1a085fad860681562" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027d", + "value": "0xe8430f8656fa6aa58a3" + }, + { + "key": "0xfc7fce0137ef0fdf47d2297ba791a15d3f3f1801dc7ef0b2aa311ad5d4034e", + "value": "0xce3e7bd7dc08" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0284", + "value": "0x2edb0b53c" + } + ] + }, + { + "address": "0x5eb02e164f78fd91b9be6a0b9b3aa02c936db485bd760730f65711533c70a26", + "storage_entries": [ + { + "key": "0x6e001e54cbd67b7f5487546b5a07535801ad39652ebe64b947558ee9d0f531e", + "value": "0x2499646e5e5010790" + } + ] + }, + { + "address": "0x63d69ae657bd2f40337c39bf35a870ac27ddf91e6623c2f52529db4c1619a51", + "storage_entries": [ + { + "key": "0x55db343016099af5314aab9f9f6cf3cb4e24eab2a64f6b77cf20d91643a6100", + "value": "0x111335b9" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x8f011fdb82c" + } + ] + }, + { + "address": "0x7d76b896ed1541dda7b7c7e4ce3e8124eeffa3cb2f081318471f057fbceb663", + "storage_entries": [] + }, + { + "address": "0x123fce86aef62aa60944aedffe2d8249e3ef43c65adf6565ff189ae97c905cc", + "storage_entries": [] + }, + { + "address": "0x7d7dddb41349a6ec4e93bef25eb63feabd468c599cd84cc753cac605709300a", + "storage_entries": [] + }, + { + "address": "0x5d91fbc26ca2d42c80a3ed730e39d9a25a92ea09bd2a3cef1bef4e8a1b55773", + "storage_entries": [] + }, + { + "address": "0x205d1365da9539143b6af1bb904b5da42a5378613ab6aa086fdcb2e09542752", + "storage_entries": [] + }, + { + "address": "0x747ecd1d6a18939b0fd8e9caabc0fb61fcc88fc3f38da5fdebd1c17624d9137", + "storage_entries": [] + }, + { + "address": "0x5574eb6b8789a91466f902c380d978e472db68170ff82a5b650b95a58ddf4ad", + "storage_entries": [ + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x56f872a6af686e63b69f" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x24773b3dbbd75f8ff1" + } + ] + }, + { + "address": "0x4d8bb956e6bd7a50fcb8b49d8e9fd8269cfadbeb73f457fd6d3fc1dff4b879e", + "storage_entries": [ + { + "key": "0x3aa58cfb21ac6fcef5c5e4eb1836685f3d90a312d09203bf6df457c91c5df7e", + "value": "0x1" + } + ] + }, + { + "address": "0xe91830f84747f37692127b20d4e4f9b96482b1007592fee1d7c0136ee60e6d", + "storage_entries": [] + }, + { + "address": "0x34f8ebe031e4b76de56020b69a42b919139f58cb6e574026fad69b1031b1500", + "storage_entries": [ + { + "key": "0x38f5f54d94b140c640c7ee4db9ad1861e36de0d4d130338d78395bd13c4ff31", + "value": "0x1008000a21001012000082040000000" + } + ] + }, + { + "address": "0x70eb967e7178e77874f363ed607401f958ba5cb044a9ad8cfca31fc68c29777", + "storage_entries": [] + }, + { + "address": "0x54bf278afcc8cd465abe6f324d0805600a8138bd812d204cea89e84bbce20b8", + "storage_entries": [] + }, + { + "address": "0x7c2e1e733f28daa23e78be3a4f6c724c0ab06af65f6a95b5e0545215f1abc1b", + "storage_entries": [ + { + "key": "0x7db46f34d4a2153d72e6ad67b126af116db9980a475e594d0e210e7be5b6920", + "value": "0x6582dae2c45fd2d52d" + }, + { + "key": "0x13cb1c0a4de69c261b8a656c0ddd6b47d021ac42f3467ef2eb9a31975cf8c89", + "value": "0xf4b52cb011a6e84e1e" + }, + { + "key": "0x72468e7ba7462a9e57543d6f351006de1cfa5da371a34ef450821fc9153f224", + "value": "0x30b4931b322c9a72" + }, + { + "key": "0x7ae634e3d7c7dd23f6cd06c1a1a752d4651a782438f3d111931c0c93f9e5c7d", + "value": "0x3352203773353e83" + }, + { + "key": "0x15f5dbbd5c6f5eeee9e3fd223ef403019905bc4479a6322816a9be7d320a303", + "value": "0x18bb80f8b0d8d712837" + }, + { + "key": "0x25186327234b2ce3b0255eb0ec60e95e076f9925147727c67aac17456d44e14", + "value": "0x0" + }, + { + "key": "0x4ca5d64225532a8ece0d732d68cc5b92d509eb10fa97526567748a5b72f0a0a", + "value": "0x0" + }, + { + "key": "0x18c49b8466b2a77f3077cf122ead37ee9f236f6ed2383f43804c7ea5f25335", + "value": "0x28a3ad0bb6575349e62" + }, + { + "key": "0x7f99f9e460c9b300cc0d5737f9b6554758426992b7dcb4e47fcd5f97183159e", + "value": "0x1f0ed561a3bb6bb051" + }, + { + "key": "0x27f7ab2b85939d9cdff6a85649189a376a54d0deb6519d75908a58cdfb4f2b5", + "value": "0x2472aeb8ad8d5ca1d5" + }, + { + "key": "0x64661f0bb89edf2f3b9bb1aec2d6256f609de21571fed0b9e3823947d69a690", + "value": "0x5358826f27dc3dfceb9" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x3195828163c90792035450" + } + ] + }, + { + "address": "0x6901e7c3342a6a252e49ed04a1c406c401c7b32e0f8f08694e9c97af1c5d521", + "storage_entries": [] + }, + { + "address": "0x44d7ac854fb45a077213aea66b73443e1bc0199943174b3a22adb21241c7517", + "storage_entries": [] + }, + { + "address": "0xf82053143948e0b903de31ad3da528842cf985a46960241979f38213ab9e0b", + "storage_entries": [] + }, + { + "address": "0x3b50f07cb94a2baee2c508051a53db6bde1e76a4136e55fc67223c127b93316", + "storage_entries": [] + }, + { + "address": "0xca44c79a77bcb186f8cdd1a0cd222cc258bebc3bec29a0a020ba20fdca40e9", + "storage_entries": [ + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0xc8457ea8a8a333" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x8d4e0877fe8d651" + } + ] + }, + { + "address": "0x67f2f700281887caa5030d8304596b9aa50d3592b456776dbff8af6ad3e5925", + "storage_entries": [] + }, + { + "address": "0x5763f02381e89c6894ffea078d1cf9e58da0ead33d5b52aa608acc04063053", + "storage_entries": [ + { + "key": "0x5c63163e81e774e359bba2fb0ab2ece0f297c9e15d83ef8377040da85dfc92b", + "value": "0x37efb5be098c12d" + } + ] + }, + { + "address": "0x692d51cd2b9ee9cd8ab3245becd34ed6e708e674a160af3190779c1e112af49", + "storage_entries": [] + }, + { + "address": "0x83e30d91fe723828f31cd748d0f9e5a86ff7d070d7b661bb5d0263e227a109", + "storage_entries": [] + }, + { + "address": "0x6dd1fd3aeb9d945fe9558c389d7c8aa1a2beb611777281f1f17f4a19f8c2e40", + "storage_entries": [] + }, + { + "address": "0xc318445d5a5096e2ad086452d5c97f65a9d28cafe343345e0fa70da0841295", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0xc126215a51" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x702d347a03" + } + ] + }, + { + "address": "0x68ebb843cf9cdd92d12fae01a5cfc7838c647db6e10a2f74b6d6bdd0a77cb0f", + "storage_entries": [] + }, + { + "address": "0x54e0275f58e47a83cab25aa13b3e24e73972398ec588bb3b6d507c325e2ab31", + "storage_entries": [] + }, + { + "address": "0x5dffd8a8754b2b4bedc834783a766a09ba3e0fbb99030fd549835184a23fa76", + "storage_entries": [] + }, + { + "address": "0x3ac7ad419320f2def8ddd8e7f5657817e94d946a45ebc0a4660c36ccd9136e5", + "storage_entries": [] + }, + { + "address": "0x213c67ed78bc280887234fe5ed5e77272465317978ae86c25a71531d9332a2d", + "storage_entries": [] + }, + { + "address": "0x73f4c39ccfd3d808ee717258596334b3427b6389c3023408835f12950f6d038", + "storage_entries": [] + }, + { + "address": "0x43e4f09c32d13d43a880e85f69f7de93ceda62d6cf2581a582c6db635548fdc", + "storage_entries": [ + { + "key": "0x2203f85ea988a1d1e9535cb3e1869ebeaa92413b6e469550c315612f4a6f9cc", + "value": "0x14d8abab299f80e696945b199aecee622" + }, + { + "key": "0x38403e49e7141c6bd0b6df7b6e9dd33aec85a3a5c746eef0dfb3ba13806adb9", + "value": "0x66389ef200000000000000000000000000000000" + } + ] + }, + { + "address": "0x26c5994c2462770bbf940552c5824fb0e0920e2a8a5ce1180042da1b3e489db", + "storage_entries": [ + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0x25e9394421d43b36" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x26d83eb7761cdb2b06394" + } + ] + }, + { + "address": "0x49db453fe9c5470731f608f492fb0b973a0cdb314b81276984d0b67fe5d700d", + "storage_entries": [] + }, + { + "address": "0x66a648b2d058716db62649524784b6faf945b8659423d09388b0bf2f5968635", + "storage_entries": [ + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x3e7af11a3dd3f15adf24cad77a298d5d3a8e67bfb4bdee94c89ce2bb4d83fc" + }, + { + "key": "0x31e7534f8ddb1628d6e07db5c743e33403b9a0b57508a93f4c49582040a2f71", + "value": "0x31ef12ef1110657b0d9b556a6b1551bb90618eb7d1095513207afd80444dcce" + } + ] + }, + { + "address": "0x587350b0b10486d67c386818adafc63a793db9a821e54affdd15295ee4ab2c0", + "storage_entries": [] + }, + { + "address": "0x47a2dc2230063f4b83e129e6137f8ae034e58b00fac0fddb94ec79d4259ad77", + "storage_entries": [] + }, + { + "address": "0x3e2038c260531bdb32147049dad1c900aee8d1127342f002d5ad838462761dc", + "storage_entries": [] + }, + { + "address": "0x3ec89d2cbacce397302cc30d428dc18245958cd81961caf093d3ab1c3abd4c8", + "storage_entries": [] + }, + { + "address": "0x715dea7c7a2ee64478c59b14c9ee6cea34afd3341e0ab774a4e365df55617c1", + "storage_entries": [] + }, + { + "address": "0x57146f6409deb4c9fa12866915dd952aa07c1eb2752e451d7f3b042086bdeb8", + "storage_entries": [ + { + "key": "0x7d90b7e2ec11796335f047cf2f487b9cded3d8e633c87c878e62d24105da368", + "value": "0x311c51b1920d683a0" + }, + { + "key": "0x6e1fe5adc0d532aa34a3055e2aca993cf457745c0e4810ad62f207dbc748b2f", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x4ac351d37b7dcc19fff" + }, + { + "key": "0x7b25d0a223f96995c6265e0133486586670a629c12c650bce23445468145fa3", + "value": "0x0" + }, + { + "key": "0x77d81236d4256c6920c1a83b6086f12675ee3c876abeb756d7912ed5dc6f5ef", + "value": "0x12725cef1f5e6dad2a" + } + ] + }, + { + "address": "0x7454835682c578f82972aaed5b81e847c062964aa0c5aa05ccb00059be1e089", + "storage_entries": [] + }, + { + "address": "0x348cc417fc877a7868a66510e8e0d0f3f351f5e6b0886a86b652fcb30a3d1fb", + "storage_entries": [ + { + "key": "0x4ca5d64225532a8ece0d732d68cc5b92d509eb10fa97526567748a5b72f0a0a", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x22ee163e33d56d3cf" + } + ] + }, + { + "address": "0x568ef92487ede3dc1e371d8514ba8fdf213048ba4589b5c22a30ee169bbba65", + "storage_entries": [] + }, + { + "address": "0x532b0e302c24f6f5760eb0b8f55bca1b88a2834197c17302be6801ba76f09b3", + "storage_entries": [] + }, + { + "address": "0x1", + "storage_entries": [ + { + "key": "0x9bd87", + "value": "0x1e330170a2642af8cca29fbf109cd2457577a0c1734e0e9ac1e4b656b6f8ede" + } + ] + } + ], + "deprecated_declared_classes": [], + "declared_classes": [ + { + "class_hash": "0x577d10ed2516303b513b8e5e713d9245d3adc6854dc902d664356141f7b207d", + "compiled_class_hash": "0x18d6f0b25a9ed55375bab5ad0daafc07440e2b1941f837d5119571fc8d3d884" + }, + { + "class_hash": "0x11fa6d7b8bad89ca9f7d9c1f121a660112d01ac53143bd4790b08b70d28d2ac", + "compiled_class_hash": "0x15f987946556531b9adc39ff545a75950ef2bafe20c4fac14c6eb998b002621" + }, + { + "class_hash": "0x2d303036cde9f19c3750e4ad7f744ddcda09c7e4d695b174e30c9becbb2f643", + "compiled_class_hash": "0x134ca7732015e9397a7767d821ac8cc0468543378e4691888ea7cdf6904234c" + }, + { + "class_hash": "0x75d90b8d6c682dd0e9aea63e385781f51992f9bf22c63b575db4a78f8474d27", + "compiled_class_hash": "0x25b3bb945fffc569f1bf7cfd46b4ef7c60a2cb0d8ee55c6f0bf926b21d10ea" + } + ], + "deployed_contracts": [ + { + "address": "0x64ee14b97cf133b4c742c4d544bd04676c8ae655efd9e60c66ba7208dc814ab", + "class_hash": "0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b" + }, + { + "address": "0x6c798b528dfcba81e41759a2ef0ed0d5c0874e8d94e59623ec46212b839f037", + "class_hash": "0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b" + }, + { + "address": "0x2a6bdf356c6f61b46d9a022b329c9fdf7f974b225d24317cf9fc7e99eaaaf3a", + "class_hash": "0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b" + }, + { + "address": "0x5271168745301776c05c699cf21525f6de8484de8965376d2bae40cbd350e47", + "class_hash": "0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b" + }, + { + "address": "0x26e18095db83d89acd0293514c7ef0f442e944f52a7e87b42fb4d50ceea0847", + "class_hash": "0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b" + }, + { + "address": "0x4cd5f9b68f81090d28e40654d7f5dec1cf01f11a703b51564663f9f04b16ea", + "class_hash": "0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b" + }, + { + "address": "0x54078afd9c7ebd97c8a0815c3492bf6784c17d4f0435257dbb84a297c1acfdb", + "class_hash": "0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b" + }, + { + "address": "0x233bdec02232d34e5009cec2b8c307eacbffeaf10bf8c12b29ac359947fdbdb", + "class_hash": "0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b" + }, + { + "address": "0x3ec240f5b47e9a6b4601c30c161a2edfd1c7164fd88cb08a490b8302c5d588d", + "class_hash": "0x7b5cd6a6949cc1730f89d795f2442f6ab431ea6c9a5be00685d50f97433c5eb" + }, + { + "address": "0x78be2cdaefbb94a1a1e9148b9b5b695e1354fed286e940390f861a460cec9a6", + "class_hash": "0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b" + }, + { + "address": "0x634a0aca90889a32c5ea9bc6d12f4c79e6ff76e2a0baee1b036d6d02a8a3fb6", + "class_hash": "0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b" + }, + { + "address": "0x2c0c40b58bf3e8f73a08a8cf0717c04f2b8310cb836871ab666a8cc43f4a323", + "class_hash": "0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b" + }, + { + "address": "0x66a648b2d058716db62649524784b6faf945b8659423d09388b0bf2f5968635", + "class_hash": "0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b" + } + ], + "replaced_classes": [], + "nonces": [ + { + "contract_address": "0x64ee14b97cf133b4c742c4d544bd04676c8ae655efd9e60c66ba7208dc814ab", + "nonce": "0x2" + }, + { + "contract_address": "0x10f05d26ac860dab4c2cf904efe3e799814f82fc2d10b601a3f5264c9610456", + "nonce": "0xe" + }, + { + "contract_address": "0x1b35be10b7a064c82544804ef21ccde80567b7f01c6154f3ac0161e4141c0e", + "nonce": "0x3a" + }, + { + "contract_address": "0x494d1b100545da8cc3cb5d56a04a52cc390d81db1163572123df1e25195df1a", + "nonce": "0x82" + }, + { + "contract_address": "0x5e865c3ab8bf9b3e96c6e9c1b2e3d5c65e65f22038f763b2a12bfe72587c56c", + "nonce": "0x39" + }, + { + "contract_address": "0x3ec72f60407705f957d295543d642f9f6700c51bd0dbf76abf643366b96e3b9", + "nonce": "0x46" + }, + { + "contract_address": "0x6292c2edf8d4899b321958aa57999b4f021c1cd613202d801446147fde112a", + "nonce": "0xe62" + }, + { + "contract_address": "0x6f9d157b5b600e4f90b16e418300e7539fb49019d9df8213e1f77ca7f0db84a", + "nonce": "0x95" + }, + { + "contract_address": "0x6c798b528dfcba81e41759a2ef0ed0d5c0874e8d94e59623ec46212b839f037", + "nonce": "0x2" + }, + { + "contract_address": "0x2a6bdf356c6f61b46d9a022b329c9fdf7f974b225d24317cf9fc7e99eaaaf3a", + "nonce": "0x1" + }, + { + "contract_address": "0x457bd0b6acbd26197d185681e0fe80d1bc928002d419dc1f4a9e3847e3dbff3", + "nonce": "0x11" + }, + { + "contract_address": "0x165761d7f11541b8e421a7f685e3a2c1e9bf687e442506671ce680f5fcaf33", + "nonce": "0x4c" + }, + { + "contract_address": "0x43c668e71074c0ae575296fd46fdc4c264a8b9d1a112d697b875a06a9e18229", + "nonce": "0x2f" + }, + { + "contract_address": "0x4551ef12419703d3a4e93ffb6a8b1778181a152d955c74b51330da4a0d3f37b", + "nonce": "0x3b" + }, + { + "contract_address": "0x95c854389f68ac628f661a465e34348f0faf1f5acf23bcbc65562638318189", + "nonce": "0x79d" + }, + { + "contract_address": "0x5523be94a7861e616f83f1947edd01db906bef2b6648bb89b95fe53f9bb0efa", + "nonce": "0x79d" + }, + { + "contract_address": "0x6d40248098154bfbe3e35bf5dc2a5b5f5afed83a29ab4ae595c95d20074f83", + "nonce": "0x796" + }, + { + "contract_address": "0x72ee423aad9786da42f17c08df0c449d5f9fda76762338af9006985f74538f5", + "nonce": "0x182" + }, + { + "contract_address": "0x6fdd4a454b43b98db278f982ce8cc4fbc461d6df4ecc0165469d6544df3c9e1", + "nonce": "0x727" + }, + { + "contract_address": "0x155e28e1947350dac90112f3129b74e3a58d38132c8c26f8552002d78c3656e", + "nonce": "0x2fc4" + }, + { + "contract_address": "0x5e61257da5878b1e11dbca4d6080aff8df1cb4a5e5e0e5c232a8a33fd7d39c0", + "nonce": "0x6c0" + }, + { + "contract_address": "0x3a8c58a2b6652a6c1e1b00fedc578d7b6308a4db5de1ad37c03777fd442c2fd", + "nonce": "0x770" + }, + { + "contract_address": "0x7b1d4274b59797440c3b5f389baabf87d9b8e2117d94f57f6f05a89015e5460", + "nonce": "0x8" + }, + { + "contract_address": "0x1883f77348ff4325a4f39d6cee57e3c318ab4fa10de0cde8e10f6e5be263b6a", + "nonce": "0x71f" + }, + { + "contract_address": "0x131a2df782bd8231c2f93b7e365f0e4772968ccaa678f244eccfdf6aac79dd", + "nonce": "0x43" + }, + { + "contract_address": "0x6523fdf78e97ebcf302af101626ac4fc8e80fd4f37080279926dbb0a7d0d467", + "nonce": "0x20" + }, + { + "contract_address": "0x11a52a41f09a5e1826d30b971b9898360c57c3130b72ba4da14ef48ed7bf911", + "nonce": "0x2330" + }, + { + "contract_address": "0x3a755fbf8f798f37741fb01e1717c613ad4c910d8404cdb8bc2e4a765815623", + "nonce": "0x108" + }, + { + "contract_address": "0x6ba0916a69af60724d08ff5364c5425c76f03a1c3e32ed5c20c1a4c41390a3", + "nonce": "0x71" + }, + { + "contract_address": "0xd56d060ab4bb7996f5703b1db59c5174b349ef9845083d3fcf0298c87ef591", + "nonce": "0xf9" + }, + { + "contract_address": "0x5543d69bfdb8eb7286141ef4099ab67b18036e81931525629de6a2b6402af3a", + "nonce": "0x7a8" + }, + { + "contract_address": "0x7b5ec87db09e114821d1478b5b929f7b231924e31a7cc241caebefd3d62efd7", + "nonce": "0x5a" + }, + { + "contract_address": "0x1ad1a3e491c7d24a1cbe2655af721f70d8ba0ce5624550a95b90cc1694df1da", + "nonce": "0x75" + }, + { + "contract_address": "0x106f26129e1b5c149599eeda79934f413cd1608d5d2e79fc5e164bbdd2de06f", + "nonce": "0x2" + }, + { + "contract_address": "0x3aa84e6677f38fabc3632942d98251c462e9c675fbae9633a792bd157cc2d09", + "nonce": "0x33" + }, + { + "contract_address": "0x1abf15973f0b3bec47e114295a8fa6d50ba6c524042ca10ae76f76b113b5e6b", + "nonce": "0x9b" + }, + { + "contract_address": "0x5be7fe0ff039c82657f929a70c45ab5629f3814cd86c03b1000fc13541a0c73", + "nonce": "0x4e" + }, + { + "contract_address": "0x72466e77001f795f32d4a9b9d9ce15a37e29ee043acd420b16812d536cc7087", + "nonce": "0xec8" + }, + { + "contract_address": "0x5f7348fcd9fcd13b1ebf3ed51992cbc6d93e1582f9f37f4f0fbe2cc7c9e0c56", + "nonce": "0xda1" + }, + { + "contract_address": "0x22f43c1a9240f14570f8972e63063c1532728ca5de182209ee336951e5092d9", + "nonce": "0x13a" + }, + { + "contract_address": "0x6b3b8353005415a9dfcbb8914961d68117fb00879d1e4e8b4ba4194af155604", + "nonce": "0x46" + }, + { + "contract_address": "0x6d8bb283808beed716f40bee70b570cd34a19f1ae055a2a98bd5785adbe5369", + "nonce": "0x10f" + }, + { + "contract_address": "0x5ff29c4c41be4dd648ad559d4e1df603cbb3374f685710e6964ec9dd83fdff7", + "nonce": "0x26" + }, + { + "contract_address": "0x6cffe11b90f64c67d2993573f5eac222219a7615548031f7eefccbb10c23a56", + "nonce": "0x1921" + }, + { + "contract_address": "0x36abfd00faf2a3d66aa94f88281215790fd6f03c92e64d4fd980a2b4c7dbfe3", + "nonce": "0x48" + }, + { + "contract_address": "0x5271168745301776c05c699cf21525f6de8484de8965376d2bae40cbd350e47", + "nonce": "0x2" + }, + { + "contract_address": "0x6bde7c683b95df8d5ef44277649a46321dd034ca8a01f9976b7aed50ffbceab", + "nonce": "0x4e" + }, + { + "contract_address": "0x7d10510af4d9bfe30f4dd973472a3b54a96c2a3593d21e64c63f6ffa50d3ced", + "nonce": "0x49" + }, + { + "contract_address": "0x4ea9c40dd97bb615386905b82b249cf8dd5100b10efdbf5823752d870518d25", + "nonce": "0x784" + }, + { + "contract_address": "0x3dcb9975449b3d3371217b8abbe9abec1518950f066a924d1b8a04604eb9e50", + "nonce": "0x5d9" + }, + { + "contract_address": "0x3b997162c7bcd56e8916c3e66cba6ee96b4d202aa0df2b24528e22937591ddb", + "nonce": "0x10" + }, + { + "contract_address": "0x445d186447614aa1f841a8d16f53f7b761dd1bb71e11e5bd14e71775c9db66d", + "nonce": "0x6" + }, + { + "contract_address": "0x26e18095db83d89acd0293514c7ef0f442e944f52a7e87b42fb4d50ceea0847", + "nonce": "0x2" + }, + { + "contract_address": "0xd2c80535b70909a20c936856fd4fef072fae8d826bb49541b5cec1adf027ed", + "nonce": "0x5" + }, + { + "contract_address": "0x397f8d5b1807e2ebf9f719b3e22579264ab57db5777c19f5fedbc42815d9abf", + "nonce": "0xc" + }, + { + "contract_address": "0x293b9ac0cd6682d3eeac79877840b6d4564a2ce89292904b2a7a1df6dbb0da", + "nonce": "0x7b" + }, + { + "contract_address": "0x2c7b987c2c237788e2995de035d2eecfadced42212c54430ad57f1642870dfc", + "nonce": "0xc1" + }, + { + "contract_address": "0x63d6d5e311bcfd978e5f6e1e27db4af11bf53001f62bba9623ccd4170b58dd2", + "nonce": "0x7a7" + }, + { + "contract_address": "0x47e83d52c5caec8f52855aeac27dd10c83c3fd6263c71cc348cf3aab3908928", + "nonce": "0x5c" + }, + { + "contract_address": "0x1339b0b30480d67c80b82aa07a866454cefff8ed043b2a4bc079f6f084f4791", + "nonce": "0x17b" + }, + { + "contract_address": "0x1d37d1625fe43cb7d955455fc52be2d91b06d1c8581aafa3c8a07485bb92dab", + "nonce": "0x69" + }, + { + "contract_address": "0x48cc9995a6ad278b9bf840683ee39d30fd92529356b01770910f6fda32a7f61", + "nonce": "0x4" + }, + { + "contract_address": "0x5a40fe05719ac68c5f49236e34ad526f0e9a7193a7e986aab1e99951f40a9eb", + "nonce": "0xe59" + }, + { + "contract_address": "0x356ef866fb928ceeecfc8e76f25da96927614ef43eb5ab8d1efc4dc91984e6c", + "nonce": "0x7a3" + }, + { + "contract_address": "0x95d14cbdb22fed0894c2a2294b98b4975a97a8bf13183d475d533a1e1b1c12", + "nonce": "0x54" + }, + { + "contract_address": "0x70a9d8c1a11a855c1ec855666f36a53393e6a19d5a8d37107bbd34afc0ed093", + "nonce": "0x39" + }, + { + "contract_address": "0x4cd5f9b68f81090d28e40654d7f5dec1cf01f11a703b51564663f9f04b16ea", + "nonce": "0x2" + }, + { + "contract_address": "0x54078afd9c7ebd97c8a0815c3492bf6784c17d4f0435257dbb84a297c1acfdb", + "nonce": "0x2" + }, + { + "contract_address": "0x3321bb88902fd1baccdd3bbc43446e9822e3ae6345ea1bc38eecdf3567158d3", + "nonce": "0x209" + }, + { + "contract_address": "0x76ca6ae7ca340ae0a7dd0cd07f701c9b593c22ec15f9a76f20d27e1c08cfd1e", + "nonce": "0x6e" + }, + { + "contract_address": "0x468b9e6f6d25ad43ee9fccfbdc97c69f9357d5699cb0afdf1e9300d43f883fd", + "nonce": "0xc6" + }, + { + "contract_address": "0x3237b63314f49005710ae7006df3311fa7c8a50d61c79120821ff15568d2e4d", + "nonce": "0x27" + }, + { + "contract_address": "0x233bdec02232d34e5009cec2b8c307eacbffeaf10bf8c12b29ac359947fdbdb", + "nonce": "0x2" + }, + { + "contract_address": "0x2934293d5a1558ae14242bf61e2951ef58637796a3312d8b82a2c3ed681312a", + "nonce": "0x4a" + }, + { + "contract_address": "0x626f99ea4fff7a9b85ad1946f5a25c6da3fe2d18cd012d18caa294a5ed8a44", + "nonce": "0x52" + }, + { + "contract_address": "0x6fb48ea58ab6104134fd2d593513af18321874b0ffa156159ec921f6537a2ce", + "nonce": "0x57" + }, + { + "contract_address": "0x4c0978d7f0b348f82096a94ff67cb1e0249657b2cb2b34d1ca90c2081d4f227", + "nonce": "0x7b1" + }, + { + "contract_address": "0xef9f3b1c40af7e66094605bdf8574bf6593700f246ced34f43fff9c33e4d75", + "nonce": "0x215a" + }, + { + "contract_address": "0x70318d5b15c96b2180fc5ccec5d6704c9b1acd5066eab538b047e505bfb9235", + "nonce": "0xe6d" + }, + { + "contract_address": "0x62873a99982c0f17b3fc24499c61dafdb58b53678779b0a1df02b53d4cee44e", + "nonce": "0x33f" + }, + { + "contract_address": "0x362b1c3923c88c3071a88d446b643947c19ce84933f9e755a54b378e75d6561", + "nonce": "0x9b1" + }, + { + "contract_address": "0x4f9a69a5bd2c3b2d3d0755a14111f4e26040ce68834b18597293009c26955c6", + "nonce": "0x64" + }, + { + "contract_address": "0x133a05ef1be9371b26fc8f867719f23860efcb0b9b77b6eb2fb74d15eaa4049", + "nonce": "0x348" + }, + { + "contract_address": "0x202bb341a34d5343a27a0c0d4a0f80a3f8d445aea2eaf2fd118a53a0bc5f0a5", + "nonce": "0x4d" + }, + { + "contract_address": "0x2b055fa234ea7234978a56fcf0cec5c5d344554179de40ea0a97ad3e89e71f0", + "nonce": "0x42" + }, + { + "contract_address": "0x16f37b6545568e17784ab9dbfe1bd147dc6b70cdc006c7c7e8090c9169965c9", + "nonce": "0xe" + }, + { + "contract_address": "0x2f1b4bfa784128c3874c4957340cc6ed8cffd4758b41bcb5c9643d772de775c", + "nonce": "0x116" + }, + { + "contract_address": "0x6735e8a88993e28fb7efbd7a4ffb58c8fac1f1a208951bf6a9c5d7337aa0023", + "nonce": "0x23" + }, + { + "contract_address": "0x3259acd60d217f8f8fc050fa24cf5ff577ee468b75ea3b6e9938cdf74f81038", + "nonce": "0x39" + }, + { + "contract_address": "0x21714d78512c4d7cc98f8c3959e9026081f9bb33bbb07066eebc51b6ce357bb", + "nonce": "0x84eb" + }, + { + "contract_address": "0x6da4d887cfe31d5e8960e04ba206fe0e3e9d458ef36ebeb135a5af657a4e35a", + "nonce": "0x41" + }, + { + "contract_address": "0x44c0805823258cd279017896017151115962a707ebc923c060721a9cdb20a0f", + "nonce": "0x52" + }, + { + "contract_address": "0xb582f43c3e7c16b979a9e7ae8c4af6c7d61dfe6e47831af56b2f90d2ca7934", + "nonce": "0x7ad" + }, + { + "contract_address": "0x1aada8dc55fa7881426ee1febe88dc3011724e9b214bf0143d91fe9e6b60d92", + "nonce": "0x2f" + }, + { + "contract_address": "0x2855cce794bfe22da863f6e209d6474a6ee3f84dec50b896f6db72669c31655", + "nonce": "0xd" + }, + { + "contract_address": "0x326a8d16daac3c544c72936bbbcb729ec50b18b9bc3b223bd4a58ec69291b93", + "nonce": "0x48" + }, + { + "contract_address": "0x401366baba097d848c538bf30015679dcbbf3fc01523425a291daa62c7f9e63", + "nonce": "0x724" + }, + { + "contract_address": "0x7253a90deb2fdfd48d515bdf92e18f48ce043fe1bf48874e985ae0644f7c9c6", + "nonce": "0x6e" + }, + { + "contract_address": "0x1a6eebbc3a969afcd15b88238c3084174e2dc69c56dbf19149368e9b34dca7a", + "nonce": "0x27" + }, + { + "contract_address": "0x8302ac9660f6b3c4d0779af6afbc737e8c369b5094e6274f98e4f2237507f0", + "nonce": "0x773" + }, + { + "contract_address": "0x2d95b9393393e54ea00fe55424cd7df233d5eea7599f26fe53f9692bef0c192", + "nonce": "0x725" + }, + { + "contract_address": "0x1b80bfda8c7d28794c1ee4cdf3c34f29cb253295ba83ab6a6d87dcb67cabc3b", + "nonce": "0xf0" + }, + { + "contract_address": "0x6671cc3d42874ef09dd7bfd15a0fc44e6b13435d0dc88f003cac771a843500a", + "nonce": "0x3d" + }, + { + "contract_address": "0x400d53e74cb235968f1e3fe3ccc6e3512dbfb2632c2c8e9e79abca4fa01414a", + "nonce": "0xd4f" + }, + { + "contract_address": "0x23e1dee8e0d337c60917aef756906a004276844dcc7da5c07ca40d3cfb70048", + "nonce": "0x6de" + }, + { + "contract_address": "0x6042cf0225d6bea28b833850b6d96043df0e0a55cd247222a8fd33445a85c11", + "nonce": "0x59" + }, + { + "contract_address": "0xb680ebd0431d9f56aba1708e534eebd84f79b1579b16d669cba8ea192f15f0", + "nonce": "0x331" + }, + { + "contract_address": "0x890658496dc509f1e6350f75752179d61a2f50ea1cbde17a2a848b74fdd0f1", + "nonce": "0x4e" + }, + { + "contract_address": "0x1c04a3346648ef9043b016ddce685fc972271f324cd77963244246290ac8cb5", + "nonce": "0x38" + }, + { + "contract_address": "0x30baca044acb3de3d5f54feb1eee5cfc238aff52c188af2e7a0b94ef8cd595c", + "nonce": "0x8d" + }, + { + "contract_address": "0x1f3dbecd34563669cce09da131c2253fb7381393fa4b08b38ad58b2519bb5d", + "nonce": "0x66" + }, + { + "contract_address": "0x39aa937808f4a098a0825172f73b84239d83b7a13fa63b3b537af39abee4bff", + "nonce": "0x784" + }, + { + "contract_address": "0x3eda71ae75b13f0f37653be8dd3d8cc1762b3de42ed69504c51283702918aa6", + "nonce": "0xd" + }, + { + "contract_address": "0x1c1a1542c2fd738bf0f53be8e53835f0542cb7ac7bbe44c1e64a4d0e1cfdbce", + "nonce": "0x3a" + }, + { + "contract_address": "0x2a5ebbe29e70647a2232e60d4a53b037d1a4c89ffc0472526f3ba646b369705", + "nonce": "0x340" + }, + { + "contract_address": "0x64278d4f5d4dbd450728f650335ecf2b2c33934da2cee438e0c0b47806a3aad", + "nonce": "0x405" + }, + { + "contract_address": "0x574873cdb53fea2fda56662a84c5377e62bc1587fba0cac664ffeb0552b007c", + "nonce": "0x20" + }, + { + "contract_address": "0x1f537cf547ccfdd7bd3b82c9986bb53a3392200e549af8c42fbb5048cc0d3e2", + "nonce": "0x79b" + }, + { + "contract_address": "0x71cc68b2e88cab8c13040a64ce0e97d289a2b8215eaf1f5608ec02292275e77", + "nonce": "0xc9" + }, + { + "contract_address": "0x7e4877307d7df9c50ac3a9dad9befd5f87c2bb93c07a4336cd127920eb8d12c", + "nonce": "0x469" + }, + { + "contract_address": "0x550a08c82e35fe7af1fe375a142829c19973fbc57eb169fbe6f0bad23abac8b", + "nonce": "0x1578" + }, + { + "contract_address": "0x642cda1469d3f1d47bccfdff008450d15237e36b2b2f5fae8119fd0535b6278", + "nonce": "0x7b3" + }, + { + "contract_address": "0x6e8a27ca53df086a979b670e1cc2e1e54eba850a92545ce3243b2016110209e", + "nonce": "0xe" + }, + { + "contract_address": "0x5f447992a68f6dadbdbd3d1b50df2a722f4210e9d01f581b9ab528cd2cb6729", + "nonce": "0xaf" + }, + { + "contract_address": "0x126960b1397991df6516dae6d930ef5e2073e0889074d5eaccb8bc575c39d01", + "nonce": "0x27" + }, + { + "contract_address": "0x7b36ffd1923786863824d2c4292893cd988c8b9837c0a206b3dce01821425b3", + "nonce": "0xf66" + }, + { + "contract_address": "0x74252bba643c4a7bdadb048034611d2bc9c838c169ec4e258dc7797d951eb15", + "nonce": "0x78b" + }, + { + "contract_address": "0x655d298d3d8edb710ce3376e308fed37c19ca26b1f60a1f2ed03f537732ba7c", + "nonce": "0xe7" + }, + { + "contract_address": "0x3ed214fbc01f7fcfbb3e77bd8d41cfc7dfa403addd672e6990649348585cdc4", + "nonce": "0x1d4" + }, + { + "contract_address": "0x4b6b4d3dfeee48acfc7ba32f7942e10fd1c64b0029834f48db01ebb6288d508", + "nonce": "0x37" + }, + { + "contract_address": "0x46d438ec4de720e7147646195758d27495ec71b8e8a49ff6ef5a2b456804a58", + "nonce": "0x1b8c" + }, + { + "contract_address": "0x6f40b4774b7c03edd3738ebc1dab884ca78de0b98cc66fd114d085b6f610200", + "nonce": "0x4d" + }, + { + "contract_address": "0x5405389eb8f587e739f144773ec187a7813e49e06c253fbe279bd509a843aa5", + "nonce": "0x3f" + }, + { + "contract_address": "0x5c37d32e5626d0743fcadf53f9a86b0856fc54cd54efdefc38e87868deba0e0", + "nonce": "0x41" + }, + { + "contract_address": "0x4c429b69d99ccd0bf1e4777c836f15ca6a7caa18aee4fa15d834f5fc4ef72f8", + "nonce": "0x26c9" + }, + { + "contract_address": "0xe8595c80bedd1311ef17dfd1465e1cd4fbc03f2d516c04de61e85038b5aa54", + "nonce": "0x54" + }, + { + "contract_address": "0x10d576c01d9c725adeaf3a48acf7f794a354b90dcc8a423bc3248b31461d4c7", + "nonce": "0x44" + }, + { + "contract_address": "0x25181df558ecd4bd0e01a7397a37b39b779a037173fd03d68ef90e14d13ba4b", + "nonce": "0x781" + }, + { + "contract_address": "0x2ab5060584c9edb6e3586fe06a22a7fa0e00bf7c42f21ba57f7cd1b7f1b0558", + "nonce": "0x2b" + }, + { + "contract_address": "0x7663d6f37f43e7a5a9b30ff53d804d9c87052be23caea338a1c12c0d5254d66", + "nonce": "0x41" + }, + { + "contract_address": "0x4b530e70c3425fd9e19f2abc2411c65f3b35ae5d028569a8ba5c6c141bccee7", + "nonce": "0x4c" + }, + { + "contract_address": "0x347e051fd365948763c256c04f3f7513a5a485726926353b03458d6be9d2123", + "nonce": "0x401" + }, + { + "contract_address": "0xdf7d697c4f373d6536242f5c553984051291efa768f9ae97995da60eb13ac6", + "nonce": "0x47" + }, + { + "contract_address": "0x78be2cdaefbb94a1a1e9148b9b5b695e1354fed286e940390f861a460cec9a6", + "nonce": "0x1" + }, + { + "contract_address": "0x5550c8708a5c1eb902ab14a309329b3db6e0fbe156a56cb153f5422b84ec6f4", + "nonce": "0x721" + }, + { + "contract_address": "0x5bde3263870c52161a8f0fb0f19800358288eed67a05f0b49074326eb98a070", + "nonce": "0xccd" + }, + { + "contract_address": "0x46b07b8422da099a1dd652800448363d881278c5521e882b51f8220ed237b51", + "nonce": "0x56" + }, + { + "contract_address": "0x17d169d371a8432e8ff52e41dd7ec4ebfa1fae30ceb0b039f21429d8fe6ab39", + "nonce": "0x45" + }, + { + "contract_address": "0x57e980208954e55a1af061c53ecdf6609ef1bdbc6ec3f700a23fe8c55cbdf9a", + "nonce": "0x194f" + }, + { + "contract_address": "0x5758b6124c7df831483d3c1c7a2bd96367bf51e751d4ccdd0a326871e878f23", + "nonce": "0x588" + }, + { + "contract_address": "0x5a157b51d250b3aa5a6e29bc9c1a7667a45341e7b6952c5db02b9008f1f7ff1", + "nonce": "0x187" + }, + { + "contract_address": "0x157d59e23fe92cd95d4ec4d185054257681491fdb2aa118eba322e624fb374b", + "nonce": "0x332" + }, + { + "contract_address": "0x76e9aef1637967df48eb53ff49a8ede6d799d5aaf866b4b74ce02409c1046ab", + "nonce": "0x36" + }, + { + "contract_address": "0x62bed67671bf533d8436d22863a9496834822e23c15dc3e95decb35cd6a8c53", + "nonce": "0x4e" + }, + { + "contract_address": "0x26fd67638beedf82c05ea59324cd7aac2933f3efbd4d62ff6421e1b0e9ab3ad", + "nonce": "0x6e" + }, + { + "contract_address": "0x5fb486fe0b7e76504d35dcc7b398ad4e8787c7b96fff1cdebcd60c0860d1a64", + "nonce": "0x10" + }, + { + "contract_address": "0x634a0aca90889a32c5ea9bc6d12f4c79e6ff76e2a0baee1b036d6d02a8a3fb6", + "nonce": "0x2" + }, + { + "contract_address": "0x11c999ec3feb0bb211322b8771d9cd537542f53a6075100c85d889f06813459", + "nonce": "0xb7f" + }, + { + "contract_address": "0x5d4c8f6e98f3636b1a0bde2fe7318f1336c624eb2890c5c6a190136df83d32a", + "nonce": "0x78" + }, + { + "contract_address": "0x5c0766524241bddadeb9bf0efef9c1f6e0746e9bf3500ac68db5cd1250204c3", + "nonce": "0x176" + }, + { + "contract_address": "0x5e9c1f79681bda535e6c2785e4f67d3f10c40c722e46b9660266a1a4b00e5bf", + "nonce": "0x6a" + }, + { + "contract_address": "0x2c0c40b58bf3e8f73a08a8cf0717c04f2b8310cb836871ab666a8cc43f4a323", + "nonce": "0x2" + }, + { + "contract_address": "0x2d5d419e92ab23c50849352a0682cce3a2278d993ca7d8c8237eac44c8ef613", + "nonce": "0x172" + }, + { + "contract_address": "0x2e4eb111979a8d37b5dae9b2b12bb3eadeb79eca10ba7e9f1853f3e1531afb5", + "nonce": "0xb82" + }, + { + "contract_address": "0x5897662ae996ca4fb8d8a431f6a2a2d3e7033241316bd8f668ec77a5c878330", + "nonce": "0x164" + }, + { + "contract_address": "0x59dc06f71e879a6221f7b92acf3fa1d418a8b0a72c82a1138c7a2e8852396dd", + "nonce": "0x6c8" + }, + { + "contract_address": "0x32995c9ff8c6baa10490bf2572db55bb70b8acad4c0c342a1a47598a2c9d07b", + "nonce": "0x11" + }, + { + "contract_address": "0x76d2cb46378bba2cf8a72752a0d3c6f61e81b2c40fd96f50da63f48ea308915", + "nonce": "0x2c" + }, + { + "contract_address": "0xfcd269e0be252e9fbeb71a10b5b2bddac1f73a15f0c318dcb4a95ad745aa74", + "nonce": "0xc" + }, + { + "contract_address": "0x230d59968c1c88342b3b4e35903ab0817b609c6920c5a991652f77a78955adf", + "nonce": "0x56" + }, + { + "contract_address": "0x42d265daefd7628b085f76498f61ccb3fc6745a85ed8b99750f2b09f962c7c9", + "nonce": "0x6df" + }, + { + "contract_address": "0x77078585accca2f07ff9595151554dd690ecfa189db59e2675d331cc8682633", + "nonce": "0x726" + }, + { + "contract_address": "0x34ee260ca2635df4ba527b4a550eab67b7a80fae21e03abc56ff862c332a228", + "nonce": "0x36" + }, + { + "contract_address": "0x221d6242f7ffa04f0d76ca73f2ccb8dc380534c947b0119ae93f277084d8724", + "nonce": "0x120" + }, + { + "contract_address": "0xd3584f3653618e080604294f952cdaf1c8f496e858641196ef6dc1f2692503", + "nonce": "0xc04" + }, + { + "contract_address": "0x57f70177fb8a798cf901d16cf8cfa3b15344b83f6a1263c9b6759042dbd9af6", + "nonce": "0x13a" + }, + { + "contract_address": "0x7f43b97463ef083970f8490cc39166d93404824f9e8b9a40a7005cc01bf1116", + "nonce": "0xc0e" + }, + { + "contract_address": "0xbcbdc43c5f29b20a90871217c9cba041e107526ed089a2c9bc1ecb44e38d34", + "nonce": "0xc3" + }, + { + "contract_address": "0x23e322879d00130162013def7cf44039f55e3d4330716c1785bd6c1079746e1", + "nonce": "0xe" + }, + { + "contract_address": "0x73345f16511b36016c73fa68c7f1d977da079a0d4d31c6d1fb2ad4f607a9ce9", + "nonce": "0x7e" + }, + { + "contract_address": "0x5ef60ea2f01850982de7a806a3255411da9bc29556569f6be81a0c3bf8c70a8", + "nonce": "0xe" + }, + { + "contract_address": "0x39bdcaf3a03d309494553ee70d57bdfe56f4b30a839b3da92a5e20e94be5e13", + "nonce": "0x11" + }, + { + "contract_address": "0x17732c0983ad71ed0cdfdf349e68fe808af9a77348f5bf6bc8641b6b7fb0d63", + "nonce": "0xc43" + }, + { + "contract_address": "0x46ccee54d1f0f6995f9b1c0dddad1d64d034968507a6d96dda74cdeb4fa024f", + "nonce": "0x96" + }, + { + "contract_address": "0x69a4c7650437be9c842dbf53aedb8284b9686753f7bf8df2db0fcc0fde543ad", + "nonce": "0x496" + }, + { + "contract_address": "0x2586c356fe6d186ec889a3cf08674b333ee0a3e6a8ba492845a350be3785887", + "nonce": "0x47" + }, + { + "contract_address": "0x179a1b0ceacac65f539eb8f474b584e435de57445f2677b2f81fcf5951249f8", + "nonce": "0x23" + }, + { + "contract_address": "0x71e5405ace1afd64c682e65b08360b573c00370f4e3ad6e4f2cd800ec7d93d2", + "nonce": "0x3c15" + }, + { + "contract_address": "0x7c37081d9097b40afd331c578bb0a4be8897a6b08c513f0ce64293a58a60852", + "nonce": "0x3d" + }, + { + "contract_address": "0x451e8681e82e69a5ad456396f79c108ce6ac4b4fc765dc0e50a1f29b77dc36b", + "nonce": "0x79a" + }, + { + "contract_address": "0x7a755b633aa7acc00a259ce6399b9304341ed0174ed90c43ed03f6d9786c73", + "nonce": "0x71e" + }, + { + "contract_address": "0x4229a4c31de1697a19b8842efb582c2763e16a1b892764ea33f2118b841dea6", + "nonce": "0xa49" + }, + { + "contract_address": "0x3b8f4623bae7e265c43bb64a36f13aed6b6b944def5cc85cea62f99d55f0755", + "nonce": "0x4c" + }, + { + "contract_address": "0x3fdc7f54eced634eb87e28794e03ff39f2675a64bc0cf1f600bb03b6d92cf1e", + "nonce": "0x201" + }, + { + "contract_address": "0x63ed7b225b4fc00d9bd2defcefab5c9edecdc0d2a5aaa01a85f4c63323ce034", + "nonce": "0x65" + }, + { + "contract_address": "0x17aad5a6dede010ffa8c97d23f10d628ca4730b1a8630da9da1ef8e6d424504", + "nonce": "0x6d1" + }, + { + "contract_address": "0x7fa7673f4cee6ec2671aa5da6fecacd2848e083e049266a4092382188035d79", + "nonce": "0x33" + }, + { + "contract_address": "0x736125664fe548302c4f222a0f4467109c11284b1d80d4b827f61b35dabca70", + "nonce": "0x37" + }, + { + "contract_address": "0x204975fbf5dc93500106339ebd209a387219a45aa79da4a8bc1b11971505f27", + "nonce": "0x4d" + }, + { + "contract_address": "0x21f2479c076c58482c587551d5baee3144324d38930ca977fb2f86cab9f2f6", + "nonce": "0xc2" + }, + { + "contract_address": "0x546c9cc3bb47b99d0edea0f8c2298b3326effd3c4c8090ba279e19ba14ac8b5", + "nonce": "0x55" + }, + { + "contract_address": "0x65f0af7a16417140e6732be2c87646ca7a2ed302d81068350e0edbcb8b3f9a9", + "nonce": "0x793" + }, + { + "contract_address": "0x294b1734d2e2155e8ca04fb2fa93aa701c89316657f653d1be58d88a1bcf811", + "nonce": "0x40" + }, + { + "contract_address": "0x36905faf0b194335d28a61a32a2531095fe9c36344ec2bac679c5dade8a053f", + "nonce": "0x23" + }, + { + "contract_address": "0x1d052a41c13e3a3ae10cd1e6163cfb0fbba6b67bad787c25b4834187e45856b", + "nonce": "0x43" + }, + { + "contract_address": "0x4a088e68982cc6ead3753676eb3def3abb34282b13ccc169d4baa66c7e1ec3e", + "nonce": "0x2ab" + }, + { + "contract_address": "0x15eb3aef733a5a91be98e671563ed90bd9782da16a617a9aa44d0e8c56533e3", + "nonce": "0xa" + }, + { + "contract_address": "0x5a7e4d3b38bd4341261616391cc632ec5e60952c8888ac6f34a22fe3abc5a1d", + "nonce": "0xbc" + }, + { + "contract_address": "0x24255ff5aa52227d3c6451800ac64415d68075bb57876941b0a3efcdc20f079", + "nonce": "0xc0" + }, + { + "contract_address": "0x4096023f0aa573dc76a63b747b2c70c5754e8ab19c823f936a50f30720830b", + "nonce": "0x9e2" + }, + { + "contract_address": "0x24f3fdc47e70e44b13ecde5f3916a28bfbbf802f96fb9be7d52c48d632c3f12", + "nonce": "0x91" + }, + { + "contract_address": "0x7037b5722b7c951877349034efd1a6d558945e28285254ffaa95c08e52720f0", + "nonce": "0xaf" + }, + { + "contract_address": "0x3cd45dc9949bc0bb0e2991bc39e1552b0d642b8f5bf5efdb8dbe0e8aaa7cd61", + "nonce": "0x3" + }, + { + "contract_address": "0x46ff096282494b7a1a4086890b3a25e0934804e782d288a66edeb7fe173210a", + "nonce": "0xffb" + }, + { + "contract_address": "0x332825a42ccbec3e2ceb6c242f4dff4682e7d16b8559104b5df8fd925ddda09", + "nonce": "0xb5b" + }, + { + "contract_address": "0x517d9ed6ee09dbcbbc7c2fbf678c10ed4a0ee674820bdbbe2fed6a2ed769212", + "nonce": "0x40" + }, + { + "contract_address": "0x69913035c6302806f9874f8923d3fc9f6d2aea9ed66691eaf676fc4c73ef1dc", + "nonce": "0xa3" + }, + { + "contract_address": "0x1796860e8dc76fbc3d857b7133aecc27f05303e1388e6e1fee44541fcf1243e", + "nonce": "0x41" + }, + { + "contract_address": "0x11b7f0d1c47e8b9435edd6914c7955e69b199be7a2cd1ae465cad91d68bfea7", + "nonce": "0x316a" + }, + { + "contract_address": "0x2e118b4a71db6e9fa6a8557466040e836fd3b1c53a54278d8e27ac19470251e", + "nonce": "0x1a8d" + }, + { + "contract_address": "0x134f182b461039c36efa334fe7a433f375630338789457abcf47465e4bf7df6", + "nonce": "0x24" + }, + { + "contract_address": "0x1f78042ca65d29145ba4f54cf0c0631c1f5933c48648beb18e062e31ad642c1", + "nonce": "0x9907" + }, + { + "contract_address": "0x4df512a0bc55da79e68f2086ad9ca557ad8687960e6b0204955a95753712339", + "nonce": "0x7b" + }, + { + "contract_address": "0x36c696c570d289d6dffee1f7404c28b7a7bdd55706283f72cd00d7155d825d5", + "nonce": "0x1fbd" + }, + { + "contract_address": "0x1dfcab12c70718c8ab7ba30b975d09ff74bf7eb30ea3a8e7652b4fa07685413", + "nonce": "0x797" + }, + { + "contract_address": "0x7f83a4b0000126b765a27508f10145a6293bfc7354ef9a81895a85c0ca8aa9", + "nonce": "0x11" + }, + { + "contract_address": "0x269aa97b28fd44a52e233e62fa048b9e041276d816b21dd75bc2f1ff836ea3b", + "nonce": "0xc7" + }, + { + "contract_address": "0x28d81b90c38d72ac81f4e7a0da4f85e8cddc2b8480678dde4180cdd4f5cf668", + "nonce": "0x38" + }, + { + "contract_address": "0x3d7f13541227d6d432712dfaea8534c73bab6b57b28067373fac9b62908b6ab", + "nonce": "0x22" + }, + { + "contract_address": "0x4f23847a20bf600c558d576e326068d22b3be107e9870bd70aeb3dce0609689", + "nonce": "0x19" + }, + { + "contract_address": "0x7511dbdfdd0916cf2c38ed46567fefc7ae4ecb137ca46eddac3bdbd1794312a", + "nonce": "0x3" + }, + { + "contract_address": "0x7cd076869d0f0b33d925ee64e476c3313692749ec4db01e64e278b944ba5450", + "nonce": "0x771" + }, + { + "contract_address": "0x216681789c9072368a4e36236f416ffeeca59475795ac46b4a0d84d4e87c197", + "nonce": "0x738" + }, + { + "contract_address": "0x428e5a3f659adda7e79e5ccd495176c4a83cd74ec181f2ffb15bd7beb7bf953", + "nonce": "0x133" + }, + { + "contract_address": "0x3c850bc54a9835aecf064c74570237ebb3a04ed61e81b6b60318aca30443460", + "nonce": "0x6b" + }, + { + "contract_address": "0x5a06b217faf40c59a4ec6968977683fdc2f464bc682c08d9541881c442e3198", + "nonce": "0x107" + }, + { + "contract_address": "0x371902de53fde77541edf36b4bc717c1a2476e6f76e8a22d9eb25e9eeaa92a3", + "nonce": "0x53" + }, + { + "contract_address": "0x796f5e0d9d1bc30750324670e02d498ee0617ecf98e3323d0835342ab9ca668", + "nonce": "0x28" + }, + { + "contract_address": "0x592bd38cbc00a1658ebf02414047bd90d4db39acbb124801fa053a14dc863b3", + "nonce": "0x75" + }, + { + "contract_address": "0x5e6028c25d35100e171bb7de8c423fa4890a1e2ef091cb9941e306029f66655", + "nonce": "0x5" + }, + { + "contract_address": "0x38fd8919115ce7894402c6614e4e95917c4cb7de8118b71465542722b718246", + "nonce": "0x123" + }, + { + "contract_address": "0x70f8001232949b40909c84ff82eb4f90c6be95724fc91527b833a40ed094108", + "nonce": "0xa33" + }, + { + "contract_address": "0x5026e98af49a5f87a62411451c6f8173e159bfae8db392821beecaea8bb64ba", + "nonce": "0x45" + }, + { + "contract_address": "0x7b2d89774a1bb333a2789245f2fbc14e7b0bbdf55725a98af799e962b0ff4ca", + "nonce": "0x34" + }, + { + "contract_address": "0x8718bf271493c557974f8aab1179f431a0ca956c74e83f8ec4c37834f0f9ce", + "nonce": "0x229" + }, + { + "contract_address": "0x524006d0ecbbc610624d11ebe3d9b633362542a440a74e57c561c52d867151f", + "nonce": "0x2153" + }, + { + "contract_address": "0x5ae048a93936c77b8f2525fcd5b7a867cadf23ea33c922c05d241e72c003be1", + "nonce": "0x799" + }, + { + "contract_address": "0x1c263dc6cb986734d79ae6542c67d82ab09569141368f5ec19e4b88476ef441", + "nonce": "0x30cd" + }, + { + "contract_address": "0x261fe4d3815ac0503d7c86ba9ba8d74a55551ee2f89665a3d163cdb40a6d624", + "nonce": "0x773" + }, + { + "contract_address": "0x34ae0b0959839b782457db6674356ff3e9b3667f15cdad7803983fb7d243ef6", + "nonce": "0x35" + }, + { + "contract_address": "0x42c4e936223cd885b748d859aed663f439d62ed67fe9ec15eb6bb2df17f6ad9", + "nonce": "0x74" + }, + { + "contract_address": "0x29ce851b97f322d7f2aaae9c9d85a6f6ea31791d28f007350e145395d2d7d82", + "nonce": "0x10" + }, + { + "contract_address": "0x24a1ef0bb1a768abcec22c64f68e4d77bbdd883abffa6bf5aff4b5e28d4d19a", + "nonce": "0x19" + }, + { + "contract_address": "0x7d76b896ed1541dda7b7c7e4ce3e8124eeffa3cb2f081318471f057fbceb663", + "nonce": "0x16b" + }, + { + "contract_address": "0x123fce86aef62aa60944aedffe2d8249e3ef43c65adf6565ff189ae97c905cc", + "nonce": "0x4d" + }, + { + "contract_address": "0x7d7dddb41349a6ec4e93bef25eb63feabd468c599cd84cc753cac605709300a", + "nonce": "0x779" + }, + { + "contract_address": "0x5d91fbc26ca2d42c80a3ed730e39d9a25a92ea09bd2a3cef1bef4e8a1b55773", + "nonce": "0x54" + }, + { + "contract_address": "0x205d1365da9539143b6af1bb904b5da42a5378613ab6aa086fdcb2e09542752", + "nonce": "0x1c7" + }, + { + "contract_address": "0x747ecd1d6a18939b0fd8e9caabc0fb61fcc88fc3f38da5fdebd1c17624d9137", + "nonce": "0xcc1" + }, + { + "contract_address": "0xe91830f84747f37692127b20d4e4f9b96482b1007592fee1d7c0136ee60e6d", + "nonce": "0x19f7" + }, + { + "contract_address": "0x70eb967e7178e77874f363ed607401f958ba5cb044a9ad8cfca31fc68c29777", + "nonce": "0x21" + }, + { + "contract_address": "0x54bf278afcc8cd465abe6f324d0805600a8138bd812d204cea89e84bbce20b8", + "nonce": "0x33c" + }, + { + "contract_address": "0x6901e7c3342a6a252e49ed04a1c406c401c7b32e0f8f08694e9c97af1c5d521", + "nonce": "0xfc" + }, + { + "contract_address": "0x44d7ac854fb45a077213aea66b73443e1bc0199943174b3a22adb21241c7517", + "nonce": "0x98" + }, + { + "contract_address": "0xf82053143948e0b903de31ad3da528842cf985a46960241979f38213ab9e0b", + "nonce": "0x793" + }, + { + "contract_address": "0x3b50f07cb94a2baee2c508051a53db6bde1e76a4136e55fc67223c127b93316", + "nonce": "0xb" + }, + { + "contract_address": "0x67f2f700281887caa5030d8304596b9aa50d3592b456776dbff8af6ad3e5925", + "nonce": "0x41" + }, + { + "contract_address": "0x692d51cd2b9ee9cd8ab3245becd34ed6e708e674a160af3190779c1e112af49", + "nonce": "0x52" + }, + { + "contract_address": "0x83e30d91fe723828f31cd748d0f9e5a86ff7d070d7b661bb5d0263e227a109", + "nonce": "0x794" + }, + { + "contract_address": "0x6dd1fd3aeb9d945fe9558c389d7c8aa1a2beb611777281f1f17f4a19f8c2e40", + "nonce": "0x33" + }, + { + "contract_address": "0x68ebb843cf9cdd92d12fae01a5cfc7838c647db6e10a2f74b6d6bdd0a77cb0f", + "nonce": "0x136" + }, + { + "contract_address": "0x54e0275f58e47a83cab25aa13b3e24e73972398ec588bb3b6d507c325e2ab31", + "nonce": "0x22a" + }, + { + "contract_address": "0x5dffd8a8754b2b4bedc834783a766a09ba3e0fbb99030fd549835184a23fa76", + "nonce": "0x2c" + }, + { + "contract_address": "0x3ac7ad419320f2def8ddd8e7f5657817e94d946a45ebc0a4660c36ccd9136e5", + "nonce": "0x43" + }, + { + "contract_address": "0x213c67ed78bc280887234fe5ed5e77272465317978ae86c25a71531d9332a2d", + "nonce": "0xe46b" + }, + { + "contract_address": "0x73f4c39ccfd3d808ee717258596334b3427b6389c3023408835f12950f6d038", + "nonce": "0x37e8" + }, + { + "contract_address": "0x49db453fe9c5470731f608f492fb0b973a0cdb314b81276984d0b67fe5d700d", + "nonce": "0x41" + }, + { + "contract_address": "0x66a648b2d058716db62649524784b6faf945b8659423d09388b0bf2f5968635", + "nonce": "0x2" + }, + { + "contract_address": "0x587350b0b10486d67c386818adafc63a793db9a821e54affdd15295ee4ab2c0", + "nonce": "0xc29" + }, + { + "contract_address": "0x47a2dc2230063f4b83e129e6137f8ae034e58b00fac0fddb94ec79d4259ad77", + "nonce": "0x97e" + }, + { + "contract_address": "0x3e2038c260531bdb32147049dad1c900aee8d1127342f002d5ad838462761dc", + "nonce": "0x54" + }, + { + "contract_address": "0x3ec89d2cbacce397302cc30d428dc18245958cd81961caf093d3ab1c3abd4c8", + "nonce": "0x45" + }, + { + "contract_address": "0x715dea7c7a2ee64478c59b14c9ee6cea34afd3341e0ab774a4e365df55617c1", + "nonce": "0xb8e" + }, + { + "contract_address": "0x7454835682c578f82972aaed5b81e847c062964aa0c5aa05ccb00059be1e089", + "nonce": "0x48" + }, + { + "contract_address": "0x568ef92487ede3dc1e371d8514ba8fdf213048ba4589b5c22a30ee169bbba65", + "nonce": "0x54" + }, + { + "contract_address": "0x532b0e302c24f6f5760eb0b8f55bca1b88a2834197c17302be6801ba76f09b3", + "nonce": "0x7a8" + } + ] + } +} \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/640641.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/640641.txt new file mode 100644 index 000000000..db1504367 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/640641.txt @@ -0,0 +1,7208 @@ +{ + "block_hash": "0x5b92f4719d22756be5abd05c608c84c5820d45092585772b7cbc1e50e8c2e59", + "old_root": "0x4fc28db91f9bf8cdeaa7cd6c6e5d49950a1e773cfe8c50ce13ca35923151d37", + "new_root": "0x445a54fc5005a21f2bc43d93f064a00708285749aacd84812db119a8d0cc547", + "state_diff": { + "storage_diffs": [ + { + "address": "0x794039cc6354bd9eac32a343864277150d55e5584d87ea26035d447abd5bce2", + "storage_entries": [] + }, + { + "address": "0x4ea9c40dd97bb615386905b82b249cf8dd5100b10efdbf5823752d870518d25", + "storage_entries": [] + }, + { + "address": "0x2db63eb7103179092f702a571f344e3c6bbfb5cb325d0a653a80054f36a3256", + "storage_entries": [] + }, + { + "address": "0x7ae43abf704f4981094a4f3457d1abe6b176844f6cdfbb39c0544a635ef56b0", + "storage_entries": [ + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x3df356d1a4190ef7cfed" + }, + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x4e2b82c66b" + } + ] + }, + { + "address": "0x70a76fd48ca0ef910631754d77dd822147fe98a569b826ec85e3c33fde586ac", + "storage_entries": [ + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x1e1d71443f601e11946" + }, + { + "key": "0x7cafddff1813ba86d339917ab7f7b007a16360c4c45402183cb2b5bc9aa18cf", + "value": "0x11fa65b3b93fa4163" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x17ae0ab45e0bdd6e15" + } + ] + }, + { + "address": "0x7568a4f6e7bf3167886c37f3aceac87e3bbedc3607f0c6d7e0def52bca04f35", + "storage_entries": [] + }, + { + "address": "0xb680ebd0431d9f56aba1708e534eebd84f79b1579b16d669cba8ea192f15f0", + "storage_entries": [] + }, + { + "address": "0x62c52c027ca7c26a621b4b82cd916cff700d7d116ba974b9ab99e776b019355", + "storage_entries": [] + }, + { + "address": "0x42543c7d220465bd3f8f42314b51f4f3a61d58de3770523b281da61dbf27c8a", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0xa569e0f403" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x9380782d0629f5bced34" + } + ] + }, + { + "address": "0x4ed4730764eb58efff233cb7bbacf02fd7626e9acc3d3e3bc745aaa1208388e", + "storage_entries": [] + }, + { + "address": "0x84570c646079aa1d54fdec1dad722698f6e664920b4f1e194241dc9c2d20ca", + "storage_entries": [] + }, + { + "address": "0xa9651e29b175aa3da6b2a3f1ab37381f977aeb77ef8a107e2dd7d69bf44921", + "storage_entries": [] + }, + { + "address": "0x23c72abdf49dffc85ae3ede714f2168ad384cc67d08524732acea90df325", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x152ced621d835c" + }, + { + "key": "0x7af134b7c4f8214516c071148fe043502a19625938f2a16f0538ff40518abc", + "value": "0x44ec70f5eaec8cff13833cbda2d" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c5", + "value": "0x1a562b748c06887c491f4ce28198" + }, + { + "key": "0x5205bcb3e3f49a913e913df275c9ea1e4773ccf90f439baf079f61b80303917", + "value": "0x324b3e5b68bd9" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20d", + "value": "0x96f0fe1fc0c89471be53aed0a40d21ac" + }, + { + "key": "0x6be031011e8672541a00e9b255a549ad5f3c0942f1a0f9132cc9e24c29d2499", + "value": "0x22549b7f7c" + }, + { + "key": "0x332df419aa058c3f4b36acbf5af4b7e8e3d4dd58918d5f0ab2841741e7b55c2", + "value": "0x664321b9" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x75954f2caa" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x960f252caec58360d" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20e", + "value": "0x666b5e2061" + } + ] + }, + { + "address": "0xba3037d968790ac486f70acaa9a1cab10cf5843bb85c986624b4d0e5a82e74", + "storage_entries": [ + { + "key": "0x303c42cefd8277c3a524bd20c4ec1edb52bb334f3b3e7d25edd29917b7daa2b", + "value": "0x3906092b977a9f" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x16bb52f5b086f32ea91" + } + ] + }, + { + "address": "0x127abf6839eb04057ad300222c1829f36d7edeeeb164ef8418cd77670f62647", + "storage_entries": [] + }, + { + "address": "0x3050b1e84c1b409e435a1457ad17fa95a1ee6b334a17b7e75b60867cf294ec1", + "storage_entries": [] + }, + { + "address": "0x428dd1b256d94cb42072748bcc7d2f91d50468ee014f288d6c95ae84ebe5662", + "storage_entries": [] + }, + { + "address": "0x2a6e0ecda844736c4803a385fb1372eff458c365d2325c7d4e08032c7a908f3", + "storage_entries": [ + { + "key": "0x332df419aa058c3f4b36acbf5af4b7e8e3d4dd58918d5f0ab2841741e7b55c2", + "value": "0x664321b9" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x40887e4" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0xc6b99c6bb409d721" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c5", + "value": "0x68dcaff71bd3b0831ba0189ae6c7b4e3" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20d", + "value": "0x14ae100fd60e4aef3103a96995" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c6", + "value": "0x7693db383c94" + } + ] + }, + { + "address": "0x5585e4ffe5b68bbb5197af4d374e49a39ebee59f60d60c56a745154a62b55bb", + "storage_entries": [] + }, + { + "address": "0xc442e9260bec89d02dd1171b674b40dad76a95763bc82bd8c4ea39e4017be6", + "storage_entries": [] + }, + { + "address": "0x7d4ef4c8000858c8930dc7e95fc2f35cc7542413df00ded717df3a867e63cb", + "storage_entries": [] + }, + { + "address": "0x68f5c6a61780768455de69077e07e89787839bf8166decfbf92b645209c0fb8", + "storage_entries": [ + { + "key": "0xf924afb546b1610b85a8633eb46e40ac5940df0d1a668f6054669dbf42cea4", + "value": "0x8f0a7c83" + }, + { + "key": "0x43e2a627b69b10a0d0364802f42110af90a93bc8f8b3ce1e95d3420ba66a989", + "value": "0x15b95ce1" + }, + { + "key": "0x5d60844623fa059917325a41414939015b6fb19d226a17a8ca46d9232f87edd", + "value": "0x0" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x1e321b2f6c" + }, + { + "key": "0x17e2248d0fdc1039965781bde897aacfa131503d036338498c9d735bab7408d", + "value": "0x4ab7" + }, + { + "key": "0x5fad7613fd327fc13290b4c80dcb56b41035cff52310cc2f9e1d7de286fcff1", + "value": "0x1c504dff34" + }, + { + "key": "0x2f91121a0e63b29dc1d6a4afc3a3963209345391a124869e657665e749659ac", + "value": "0x178063e8cd" + }, + { + "key": "0x634e2aa8f442fbf45e9558e7b07bccd96ba902eecb82e8c083cfef3751bc56a", + "value": "0xfb7862" + }, + { + "key": "0x98ceef251b13864501cff90cd35bb2a490c07e7888569535bbea0f06c439c8", + "value": "0x0" + }, + { + "key": "0x62799dddc7358d66f6bf98c3fcd9ef195622ecf66298bac5b21a8452af01d4d", + "value": "0x2a043ac7" + }, + { + "key": "0x3ce63b6014623680de3801addbdbc460bcbf144f0c741cb14aed33cc5bb892c", + "value": "0x177252e50" + }, + { + "key": "0x67438fc635642a4ee4889bbd851a1a55a689a77e02ed3b81995b9f4bc36a2e2", + "value": "0x8a9fd8" + }, + { + "key": "0x762856cc76a17e22e24c99af769bcbba3e76cf52697dfcd388e5a250cf03473", + "value": "0x0" + }, + { + "key": "0x3f1547aad0f022841507a52d87b2c51a9380b0407d7923a47763c7fd182c83d", + "value": "0x943e23" + }, + { + "key": "0x62a96ee07a1294b885215380eda354052be5e80d2e5ec08ac7ecbc09577fbff", + "value": "0x0" + }, + { + "key": "0x736310b8be24975099b864f404ab2e32f4cf95054ec8ef67568669c0cfe83c6", + "value": "0x0" + }, + { + "key": "0x600d1f9cd5d09ce4e80f2c93c02c3caad3a3ee344b10edb1fbca2cf3dd9360d", + "value": "0x10265" + }, + { + "key": "0x7cafddff1813ba86d339917ab7f7b007a16360c4c45402183cb2b5bc9aa18cf", + "value": "0x44b30" + }, + { + "key": "0x3e7e893ed7a101f3d45094df2001e6b9c8ac30029064fca1d95e7084f0e5337", + "value": "0x0" + }, + { + "key": "0x5f6cbcfa6e0dfae615b1015c2cfc857c2746d8c376c1fbbd0a95f9a197d18fa", + "value": "0x323e635e1" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x87fd9be7" + }, + { + "key": "0x74f67e3d389a7bab81ccf6d7954f3e8626b3e4f0cbe5221231d14d40f7f6b42", + "value": "0xc7e2479" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x7735c294440" + }, + { + "key": "0x7570459014098d9bfe2c9a9e02888133be7153260a847573ae2d0ed69cdce19", + "value": "0x178c378f" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x29c693489eb" + }, + { + "key": "0x6b7b04c872511cbddf485f2c014acaa806fd966d06a9f91615d5394087e20a3", + "value": "0x82b3895" + }, + { + "key": "0x6a7cdb96921d36c87e1b0bfcfb5d911d10f0ebb80648d93b69ab485aea22587", + "value": "0xa7d306" + } + ] + }, + { + "address": "0x71e5405ace1afd64c682e65b08360b573c00370f4e3ad6e4f2cd800ec7d93d2", + "storage_entries": [] + }, + { + "address": "0x15dfcd07bd8f4626373ad9bab3e258b668e322188d1f13ee438c120cae63721", + "storage_entries": [] + }, + { + "address": "0x41f367f6acac1dd34c0a6fdd2f864092311718144873a698f84e54433fb190e", + "storage_entries": [] + }, + { + "address": "0x5c7c70ae3b0921ff3c53b37dd4fe832c337e4793e078f737130ea33c1f29f9b", + "storage_entries": [] + }, + { + "address": "0x717b16d98a187634bdbe079775ccaf84cdccf6adecf1a9f5f09f21d738b4ff2", + "storage_entries": [] + }, + { + "address": "0x7b289b38c4ef84cd870763cc68836dbdd02704bb86582987772899e5967eb3", + "storage_entries": [] + }, + { + "address": "0x6bbf928c395b296c1ecc108cf322217711f2881e7189b728a2e12d24eadf75e", + "storage_entries": [] + }, + { + "address": "0xf1706d1bcb97473f79195f5ffcb9935293a56a6d4682f69fda8f548be40b5b", + "storage_entries": [] + }, + { + "address": "0x2526a480f54c710677aa9568eba87c8e4935a9686bae336ff5a92b2ec4e845b", + "storage_entries": [] + }, + { + "address": "0xb582f43c3e7c16b979a9e7ae8c4af6c7d61dfe6e47831af56b2f90d2ca7934", + "storage_entries": [] + }, + { + "address": "0x1913358e45e2781792ca7914b74a2201699d58eed72b755f29e76b1da6249d0", + "storage_entries": [] + }, + { + "address": "0x4a3c8b0af00c11d77e5cf4ef901112a8700eb8e1e5c41973bee927ab5ce1324", + "storage_entries": [] + }, + { + "address": "0x5fe3fd4a114b43c6878eff6b415aa0034b8fdf5cacc5acee9cdbbac23ae80f1", + "storage_entries": [] + }, + { + "address": "0x133a3f007150e2e12edf73233fb876377fcc7853efe95f6226dd5aedb6201f5", + "storage_entries": [] + }, + { + "address": "0x572c1243c18e74ebbed28fb0d5a3758856efca4c81a369a742a0b63a5acf202", + "storage_entries": [ + { + "key": "0x7e79bbb6be5d418acd50c88b675e697f6f7094e203c9d7e29c6ad6731f931dd", + "value": "0x1" + }, + { + "key": "0x1379ac0624b939ceb9dede92211d7db5ee174fe28be72245b0a1a2abd81c98f", + "value": "0x6091c03b3421c8542bec6f347607f53465c93f210131edee8e2ec4eaba73db9" + } + ] + }, + { + "address": "0x133a05ef1be9371b26fc8f867719f23860efcb0b9b77b6eb2fb74d15eaa4049", + "storage_entries": [] + }, + { + "address": "0x6bce17c535b369e37fc051c3f54db06073a6d91acd8498f4bcdae9d6232c8cf", + "storage_entries": [] + }, + { + "address": "0x3252f644d3381c085fa4b6d8b74e61eaf41e1aa42a2439fd131b33fe61434bf", + "storage_entries": [] + }, + { + "address": "0x266e9e5f11db140b211b9f64830dc3d0751090184531a222eaef6975c301040", + "storage_entries": [] + }, + { + "address": "0x394f098960193db3fe2ea55c6c97910d7b91c0e96e50cdec2fcf47f00fdc051", + "storage_entries": [] + }, + { + "address": "0x5b20c75a785aee5ef10ce42abff4638cd2266c14e98f894467d34a3a949bf5b", + "storage_entries": [] + }, + { + "address": "0x719b5092403233201aa822ce928bd4b551d0cdb071a724edd7dc5e5f57b7f34", + "storage_entries": [ + { + "key": "0x6d3758ddec400f63405723dcd7a03bb1a75a5d271c6fbcb34aab6fd226ec184", + "value": "0x6baacefb2302a71361b" + }, + { + "key": "0x1bff8c50a5584fb1238a3e05b95b80b366ff85cc15268676f16651b2c922129", + "value": "0x81325001daa67984978d8" + }, + { + "key": "0x6bdab5b5d08a8887ef4d36b89aa78ac9628cb8adfb2b7a94d79053065b9965e", + "value": "0x5a71052eb13e0204d02" + } + ] + }, + { + "address": "0x5543d69bfdb8eb7286141ef4099ab67b18036e81931525629de6a2b6402af3a", + "storage_entries": [] + }, + { + "address": "0x40b08e984c07ac01b2b0592ecd31a3cabeb5b462a4802ebf322dcab29644705", + "storage_entries": [] + }, + { + "address": "0x6d8fa671ef84f791b7f601fa79fea8f6ceb70b5fa84189e3159d532162efc21", + "storage_entries": [ + { + "key": "0x48be3692ab3e9e8bd4a134a7b958b4e69bcb00a71d4f58c22f9311921f12bcf", + "value": "0x3f8bc5f2fa15c05ca5" + }, + { + "key": "0x1119f7b646a94b67914e290af4ba7f677abb12be88442e7ad46134fd868582f", + "value": "0x700847d27b454c924" + }, + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0xcdbd59079c9aeef55bb2b" + }, + { + "key": "0x32f392e381d9ca21e90370af087e9aec28225ee2db67f097e3625b3ad88dc62", + "value": "0xc6ad2ccfcbfffcb986" + }, + { + "key": "0x1f720a65aa356e722b4dfb11a59ffea4b28eb179ebd4ca2eb05cc8520ccd2b5", + "value": "0x269f2737d947f403" + } + ] + }, + { + "address": "0x5758b6124c7df831483d3c1c7a2bd96367bf51e751d4ccdd0a326871e878f23", + "storage_entries": [] + }, + { + "address": "0x10884171baf1914edc28d7afb619b40a4051cfae78a094a55d230f19e944a28", + "storage_entries": [ + { + "key": "0xb61ad1b0cce680166d9ae08293663dd76ee32f60afcffb51a601414abe03e6", + "value": "0xcf941048d7311a05" + }, + { + "key": "0xb61ad1b0cce680166d9ae08293663dd76ee32f60afcffb51a601414abe03e3", + "value": "0x94be79369bb02a5c5a3" + }, + { + "key": "0x2487f67598912d31ab84d8fa97c9e78332d00795ecdad092ea09f9c9c14a9a3", + "value": "0x40d53a83b9" + }, + { + "key": "0x2487f67598912d31ab84d8fa97c9e78332d00795ecdad092ea09f9c9c14a9a0", + "value": "0x52f604729e3d69b22" + } + ] + }, + { + "address": "0x4096023f0aa573dc76a63b747b2c70c5754e8ab19c823f936a50f30720830b", + "storage_entries": [] + }, + { + "address": "0x68400056dccee818caa7e8a2c305f9a60d255145bac22d6c5c9bf9e2e046b71", + "storage_entries": [ + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x6f20a7dc5f885c6163f0" + }, + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0xb33d9ad3f96fb556d" + }, + { + "key": "0x6f62a92863adb05d84b91fe4ae8fc2f4592ed93ccbf3743ae66ee3dd50aa2b7", + "value": "0xaf17b330f6ac5a" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x22cbf687573b34824f7" + } + ] + }, + { + "address": "0x2a4764f52ec576502c2eba2b0cf4a12ba20cc26a3568ad42a3e0001650fa6e1", + "storage_entries": [] + }, + { + "address": "0x747ecd1d6a18939b0fd8e9caabc0fb61fcc88fc3f38da5fdebd1c17624d9137", + "storage_entries": [] + }, + { + "address": "0x613a9f425a3f3caae65cf26a56f65db80d3fca0c3f9afb5c1420334acf99d39", + "storage_entries": [] + }, + { + "address": "0x1fecadfe7cda2487c66291f2970a629be8eecdcb006ba4e71d1428c2b7605c7", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xdba27d54b43bf9d29" + }, + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x162ac3921ca77e05" + } + ] + }, + { + "address": "0x3fe2b97c1fd336e750087d68b9b867997fd64a2661ff3ca5a7c771641e8e7ac", + "storage_entries": [ + { + "key": "0x72e743aaae5f39528b2fd1be14961d5bd596f85d2679d50f9e3a542d52206c3", + "value": "0x2d91" + }, + { + "key": "0x13d0c87635987c37a5fafb2f1252457cc5304affd8a6d7eff25275377aabd5b", + "value": "0x40887e4" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x7f43f57e" + }, + { + "key": "0x62a96ee07a1294b885215380eda354052be5e80d2e5ec08ac7ecbc09577fbff", + "value": "0x0" + }, + { + "key": "0x28240d22f2954d1d6126069618717942a9b1908ba02b93af01ebd366cbd633e", + "value": "0x5815" + }, + { + "key": "0x600d1f9cd5d09ce4e80f2c93c02c3caad3a3ee344b10edb1fbca2cf3dd9360d", + "value": "0x26" + }, + { + "key": "0x43e2a627b69b10a0d0364802f42110af90a93bc8f8b3ce1e95d3420ba66a989", + "value": "0x909eb" + }, + { + "key": "0x6753cbfa63541f7633607833f3f65390429f8a4491f3e7c4eb3efbf593c3523", + "value": "0x19e4be8" + }, + { + "key": "0x62799dddc7358d66f6bf98c3fcd9ef195622ecf66298bac5b21a8452af01d4d", + "value": "0x118ccb" + } + ] + }, + { + "address": "0x14798306bdf27deafacb3d5fdc17693939db586eb956e5c9075e0fd4e54cd12", + "storage_entries": [] + }, + { + "address": "0xd3584f3653618e080604294f952cdaf1c8f496e858641196ef6dc1f2692503", + "storage_entries": [] + }, + { + "address": "0x549bdff3f2744f69a6f5f84bdcdc647452e116e1faf967e5ff19955d0011c87", + "storage_entries": [ + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0281", + "value": "0x664321b9" + }, + { + "key": "0xfc7fce0137ef0fdf47d2297ba791a15d3f3f1801dc7ef0b2aa311ad5d4034c", + "value": "0x3cec30fdd7170b8dec" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0284", + "value": "0x130b4c53432107" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027f", + "value": "0x12e997a2d7" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027d", + "value": "0x182ff9f6e1e80c53e" + } + ] + }, + { + "address": "0x7b36ffd1923786863824d2c4292893cd988c8b9837c0a206b3dce01821425b3", + "storage_entries": [] + }, + { + "address": "0x2e4eb111979a8d37b5dae9b2b12bb3eadeb79eca10ba7e9f1853f3e1531afb5", + "storage_entries": [] + }, + { + "address": "0xad567a6cab02f221a79f34bb5eeff7742bd0870b808e642f3cd1ed223152f", + "storage_entries": [] + }, + { + "address": "0x570c0cd5f78a7a85a2bde612eef43aed43f3445f0b7fa82e726c381a1d18e80", + "storage_entries": [] + }, + { + "address": "0x524006d0ecbbc610624d11ebe3d9b633362542a440a74e57c561c52d867151f", + "storage_entries": [] + }, + { + "address": "0x3f8c9062f1bfe45f82cd70ed97ff053bc5836783ec66adfe3288eb1b43aa83b", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x5a71052eb13e0204d02" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x7eb1bc5d75e3d0ac" + } + ] + }, + { + "address": "0xf7b40a51ab68621a620990df612ee244b0675cc767b7ee69c28ebad07acfc1", + "storage_entries": [] + }, + { + "address": "0x3aef6a88215f46b1cb7ae42e2ccddf6902b9a69602240bf188e1ac7ba2f74d7", + "storage_entries": [] + }, + { + "address": "0x46d438ec4de720e7147646195758d27495ec71b8e8a49ff6ef5a2b456804a58", + "storage_entries": [] + }, + { + "address": "0x75afe6402ad5a5c20dd25e10ec3b3986acaa647b77e4ae24b0cbc9a54a27a87", + "storage_entries": [ + { + "key": "0x682ed91ac0601afa4aa60caf059d6e8d9ed40b55be1bbb27c6e7d2177857083", + "value": "0x0" + }, + { + "key": "0x358b473831600dd7ec8a329c764eb6146a523f6940be0fae36d53d4dc44bca4", + "value": "0xb081f26c921414cdeea1" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x31a3b5867f8b4b3b9f85e" + }, + { + "key": "0x62f21f0946395ed0a794f8ccfde2a3253e3ffbd671835ac6759e8dfcd68cb7", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x6a3727ccfd6b36677f74da90c4e9fe60d1a1079b50176b22a7f581ad7a41bbd", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x572ecd966dc0bd18d8719fcdf8c08d22d42a8030710bfd2fecbd856330fab63", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x17275e74f17531f4881fe95b779f7cbe729f70a398b1114cb498f45c05aa641", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x649ce4881e25213a9d0f08d688c8c04f0e88b4a885d95895d755c848646ab60", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x33ff630d8f5bed3f973adee68fe0ccae4dde82edb8fb28c1dd0e4bde10f13d7", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x35a3cfe5794e4e5ff4fc060862366b33aa75687ed1367e2a753999322917899", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x3ae7e617506cc11a53afbbea01a6c77d64d60e35ffa72946aed8d37faae9993", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x155f6220e24b452a103e7819abd7c79eb261d5849459ed6e0cddb8d5557f12e", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x53508efbd455db01619f76c5d6b87ce8a2cb080b34fec6f095171a146ea247", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x77053073a8782c45a29f1cb7d70585ea700a150a1c7de6b9ff294eb03e93a98", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x4618fbab1b407d973b61eaa8dccdf9b62464fb0565d2e085a58b563463f8057", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x3f77016b930efcf7e1b09fbc2e44c8f99fb52bcf33b28612016a2b04e262100", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x2551f09787552c424fae0cb8ef2a40ca2750b1c9e3341a6fe9a1bc0e2ee5f5e", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x2a1c67ca73fbd7d6147f11aae0de7b3919643eeb5d3a1b0a1da6c151517301a", + "value": "0xe56e6bb8a5f86ac" + }, + { + "key": "0x619eef4c3dba2da7985bd74be23fe9119aa2f3b944701e23968cc87ac15f43f", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x5aad4c9dedab7586200159a0b9409525e47f5a8e760e6cfe462136a292a8556", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x20bbf2499f10c86d89c5a585c1fb91ca72ec5bf676ded5fa431e2199b5867a6", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x1b9a8c41cee15b51c5423c9e651743afb1622a830ccae9f1f7b274f1a5db9e9", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x7277c0cf95900dbfee302b49fa4ba894849fc139d07fd786b463054c7a668de", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x7a4875ed2d06b6975360d6d82264f2b012a7204ff878045ea574d54dc78f685", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x78d405f98a1fb504a19ffbbe60d189e011f8266d263bd3d4b77e08ec62922e2", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x30e884e6dedeff2fef944ce8c360f971d74b2db1e8579e75ed67461e23ad3d2", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x4c5dce639388f64cb42404a133470878216e3fafd5d922ff21476e42d8cab78", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x6f62a92863adb05d84b91fe4ae8fc2f4592ed93ccbf3743ae66ee3dd50aa2b7", + "value": "0xba33d45d725f00d" + }, + { + "key": "0x7783257d0d9ec5fb09accbb21099ca3a7d752f488cdac9efb26db2a80e8aebd", + "value": "0x23b73246a766d3af" + }, + { + "key": "0x75ce651d3e782be6a570a318be8e27f478c126dc2fa8dffed9acd88e639d5df", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0xf464d88522abe30a7a715e3c11fb1a9f3bd263ec2badbcbcc32ecf004b8596", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x4716e361638034cb24db82fbb0abd3cd43a84e158b560fb12c0f35b977cbb0f", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x1a97fa824bd8aee93f657daecae9948ba3055d31e8fe7abd43289798f259a70", + "value": "0x0" + }, + { + "key": "0x6ac150a59c70bbb92548f6b873b9f023cc569c74a5853b839045b9cacc0161e", + "value": "0x56b88643627a8296" + }, + { + "key": "0x7a9c08ea83113a7bcc7bbf2a897f997606a77fcbc34f4337981176da02de6dc", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x26a3315c2103024918768d7a3f1204221c14a328574b71c38a3ec7af5bd8786", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x471581d92697220bdd5ff0f8b363d0b705b37d54897d77ecb3858a586be70c0", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x65c96e1f19f9300f4c34e8e83b8bd34e87941957b64afc2048b15c590464004", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x3d292e900a4b04f617154922e4c3f65ce31871fff54b91c614a016334657099", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x503fa669e8ab43382476e51953ecda0ad4777599e25a9057f1d703f6ddce3cf", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x7fa1c2a8ce8dd2994a98d09b559019870bca90fda957f5b93da66dd04600d63", + "value": "0x9640d4a4b09a35b" + }, + { + "key": "0x370573c2b368cf24193c8e2b26706ace771c26c0439fe1be8d28b3fd11f6925", + "value": "0x9640d4a4b09a35b" + } + ] + }, + { + "address": "0x7b696af58c967c1b14c9dde0ace001720635a660a8e90c565ea459345318b30", + "storage_entries": [ + { + "key": "0x15e83510db1fbdac28669e5f612c29482c804fcd097a04fe1e8d6900f083ed", + "value": "0x805" + }, + { + "key": "0x3a808a54d13d94dcc1918387eec8ba5804e02c2be28861abafe5dfe06a6a86b", + "value": "0xeef442c6cf5d3f3ad3a67049d32f93edf86432ab896a72251ea6e10e86380b" + }, + { + "key": "0x172b865e65ec1ea761eeadb05302f71a6b1e20646844adaa1f88b0060891bc3", + "value": "0x613a9f425a3f3caae65cf26a56f65db80d3fca0c3f9afb5c1420334acf99d39" + }, + { + "key": "0x6eb8327fed73bbedc04cb86cc8e891006bb9b85d3b2c31ce54d10b73d416d1c", + "value": "0x81a" + }, + { + "key": "0x6d28991a524c31d0734a97bfe86ac647d3625f5f07d9e2a4bc556100abdda01", + "value": "0x1fa6ec0d8578b7c87f7e3490a1b496e9f6104000b962d57e969afa7100e1595" + }, + { + "key": "0x1ea93b79a8318b7eae6256d002662940e89c3c6b1be1326682b34415b8745f0", + "value": "0x614eb3fe3c35b41209a35365802a107676f227af53f017376bd567c8d6b11c6" + }, + { + "key": "0x2a9f6940e96680af2fe721eb59341cde71d9b7ae61dc834d205d6c59360268e", + "value": "0x9212a" + }, + { + "key": "0x5f8f8fdae1aedb402a1fd2392922af6ec1d21086fba036819a0da5f555541a7", + "value": "0x118" + }, + { + "key": "0x4cfc07d3a1a48511181b33a5e610afdae0a1de2189f33a5e89a7e2280b5703", + "value": "0x1f659e8c74f2377cc1ffe826bcf1465548eefdbafa8bfab890d577997f16f8f" + }, + { + "key": "0x1e9e849a473983a5c82990913e9f339ffdca5e73b9bb57f89dbcd459750263c", + "value": "0x79dd521cc08105684c9cdb37c33cebda8b563f8194fb0eaa54d807c92f129b8" + } + ] + }, + { + "address": "0x18e20a71b38bc0bb5a094c5cdab9748e2205ec8d93171a279e5178a0e4b371d", + "storage_entries": [] + }, + { + "address": "0x247b8383f0e4ce35ce4b9f8c1d2b11fab2b73aabc29f48bb2fc16a1ae7f645e", + "storage_entries": [] + }, + { + "address": "0x2813d3e926edaf07ee0859308da8e0bdd69dc396c172de1690b327faac1285f", + "storage_entries": [] + }, + { + "address": "0x3d51776d3ce07c211d5dbdf40a9333ec6d6d3a0b2853de1d6706f9ea3b88d45", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x6baacefb2302a71361b" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x5d64155e238b4852eae" + } + ] + }, + { + "address": "0x3ddb5a3b5e6dd4869c6e8bc34b3924771ea4c0d7e0af73ba3c238aaaa4101a2", + "storage_entries": [] + }, + { + "address": "0xd123b43df66c3bbe3e19bcd66261d7613f3a3feace81a61f27e24b79a226d7", + "storage_entries": [] + }, + { + "address": "0x33c6b3abffcac3a134618b3a668fe8bfce7b97c8b283ce8a17a167afeea38e9", + "storage_entries": [] + }, + { + "address": "0x6e499837da4d946172e8030eaff0d090a6b5b33c603e36f1511645f71aaff0d", + "storage_entries": [] + }, + { + "address": "0x356ef866fb928ceeecfc8e76f25da96927614ef43eb5ab8d1efc4dc91984e6c", + "storage_entries": [] + }, + { + "address": "0x1601b1e13d1441795f59e109306617df3eaae339fab8888b0cff9a2112d90ff", + "storage_entries": [] + }, + { + "address": "0x585c32b625999e6e5e78645ff8df7a9001cf5cf3eb6b80ccdd16cb64bd3a34", + "storage_entries": [ + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x383dd12dfc1e76669c" + }, + { + "key": "0x3822163be01af47f9dbc636a466ab3c22e71f8cc33d6829e3c32d439ed4b476", + "value": "0x4563918244f40000" + }, + { + "key": "0x3b6df0c17b76b4992fa833901c6038cabcb6c10a4af7aad4b6529f7eadfbbbc", + "value": "0x0" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0xaaf86705d6ee7073b0f" + }, + { + "key": "0x125ba9b66a13972539f8d31fa232c15560baa483f56c4b3828c2079bd2a6f55", + "value": "0x0" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x3e1b8b8a2a709ba50ea" + }, + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0xc44ebacd7305d18751dc" + }, + { + "key": "0x3fd4b890b842aea8ce436e29df9d53a3e55489447a9a6d535056af2eab2c5ea", + "value": "0x1fb7c6521159e0d38bfd6" + }, + { + "key": "0x5985369e6a0f3b93d36b065a77d164318ea8503ecf2973eabd83ad2ca4c70b", + "value": "0x943fdf9063fde98ca" + }, + { + "key": "0x775a89a6a2209914ed0c367a0fd38df77597196c70803f352c6d0308e2a481", + "value": "0xa00ffd9f3ee330cf70" + }, + { + "key": "0x42159a96b1fa76469ed74e2f956eebf908441531abbd2b40efe1142f80cd3c0", + "value": "0x1da5ecc7501292949" + }, + { + "key": "0x7faa618859ab0cf17dadc3717eb64f5746b96e31bf688d74263aca13722cbfa", + "value": "0x34c90c348a8051d0a" + } + ] + }, + { + "address": "0x5726725e9507c3586cc0516449e2c74d9b201ab2747752bb0251aaa263c9a26", + "storage_entries": [ + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x664321b9" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x8347bf3bbbffcc67189" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0xa60ad41f1" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x3c277295646efb20" + } + ] + }, + { + "address": "0x35c9a1c47d077eb2e2c5254c7d6ff0492ab95dff42e83f0331baf1e4d07e4a", + "storage_entries": [] + }, + { + "address": "0xdb0450edd7a35be5edfaf53cfa1cf0d59abd578cd54f5d363ab463efe8ac9f", + "storage_entries": [] + }, + { + "address": "0x2c60d4c124a68f3ac7feaa0940b765a5f29ae272c3c12c66eca1961e1047580", + "storage_entries": [] + }, + { + "address": "0x15e9c885a9e1c7ba44408bf077f4465cdee4fc1a7ea6085e44dfa48337b2974", + "storage_entries": [] + }, + { + "address": "0x5a40fe05719ac68c5f49236e34ad526f0e9a7193a7e986aab1e99951f40a9eb", + "storage_entries": [] + }, + { + "address": "0x499d864d40bc3f7e46103c8c761992162ef0e21221143c31b451a690cf007f3", + "storage_entries": [] + }, + { + "address": "0x57061acd9af14171fe4d973dcdd9f82b7bea887b711a88e784ee96fdc25e63", + "storage_entries": [] + }, + { + "address": "0x55cd0042bd90f56419e566db074af18b68e8aac5fb2587b40efb0b695cb3221", + "storage_entries": [] + }, + { + "address": "0x25a04676377d3e3591d5de70ab52f446655f666687e9dad7515134d508cce85", + "storage_entries": [ + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df2", + "value": "0x1d3969fce80e06" + }, + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df6", + "value": "0x664321b9" + } + ] + }, + { + "address": "0x57146f6409deb4c9fa12866915dd952aa07c1eb2752e451d7f3b042086bdeb8", + "storage_entries": [ + { + "key": "0x144a94c2fb3bdf0ed1521c90e60ea4141ddc825b0863c9641dd0adfaa6c2969", + "value": "0x137d8994250b3ad" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x47eedc3f22c9d030f81" + }, + { + "key": "0x7b5aa95a33fd6a53904d953461a66a0f9a9e5808540a14bf047736f6c6de459", + "value": "0x4a3a6ffaee87fe" + }, + { + "key": "0x6b7b04c872511cbddf485f2c014acaa806fd966d06a9f91615d5394087e20a3", + "value": "0x0" + }, + { + "key": "0x303c42cefd8277c3a524bd20c4ec1edb52bb334f3b3e7d25edd29917b7daa2b", + "value": "0x63168ec826052d" + } + ] + }, + { + "address": "0x26c5994c2462770bbf940552c5824fb0e0920e2a8a5ce1180042da1b3e489db", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x29651cd157b029355a1c2" + }, + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x665bcc514fa3b72bff" + } + ] + }, + { + "address": "0x49d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7", + "storage_entries": [ + { + "key": "0x5f6cbcfa6e0dfae615b1015c2cfc857c2746d8c376c1fbbd0a95f9a197d18fa", + "value": "0x402167772e03ffed" + }, + { + "key": "0x3a6ab3d243d87f90e045dc01e7b831c5e485ecd9be90617b520054063b0159c", + "value": "0x108519fc14626" + }, + { + "key": "0x138b962b2f5f314011b11d42fe6dd20c576502da206529eb568ab97aaf48f85", + "value": "0x1b7f29b2a5ddf24" + }, + { + "key": "0x502e6ad66b2a877d2aad45b2bdae767a4efd99731f00cf1efd1241999713a92", + "value": "0x1a12b8a90947d" + }, + { + "key": "0x17275e74f17531f4881fe95b779f7cbe729f70a398b1114cb498f45c05aa641", + "value": "0x1c556e602d4e2" + }, + { + "key": "0x1d0478915e1210d9590e84c118661f5891da0b61eefb2b6f38cbb9fa78190e0", + "value": "0x126eb1b148d779" + }, + { + "key": "0x78d405f98a1fb504a19ffbbe60d189e011f8266d263bd3d4b77e08ec62922e2", + "value": "0xea6b7e959f49f" + }, + { + "key": "0x472e4792b78649b0f391333058d5addb0d2793ec9963a5e0cc331ce17eeaae7", + "value": "0x79fa34dfef532" + }, + { + "key": "0x68e58513cab903aaf9a8599f119656d74f0400abb4032f7c53f1bfc571f5a62", + "value": "0x8da9b3786000" + }, + { + "key": "0x17e2248d0fdc1039965781bde897aacfa131503d036338498c9d735bab7408d", + "value": "0xf437021b747b60" + }, + { + "key": "0x38b3fc28caf111e1b7878a53a33a729bfb6e5a3585511f3aef45d75896a2023", + "value": "0x76885d31689260" + }, + { + "key": "0x370573c2b368cf24193c8e2b26706ace771c26c0439fe1be8d28b3fd11f6925", + "value": "0x2f132b58a877ab" + }, + { + "key": "0x706e593a2e899c16984e8225b8f11aac1124ab0193b80b307337416b1d7ffc5", + "value": "0x8a57de844c00" + }, + { + "key": "0x762856cc76a17e22e24c99af769bcbba3e76cf52697dfcd388e5a250cf03473", + "value": "0x4c4daa1d48" + }, + { + "key": "0xe9d52020abe668871b5acc8b7a6acca56061c93d938c2cde1cf16d085dea67", + "value": "0xac8351056000" + }, + { + "key": "0xa098d920010a898f0e17f86e109f34d145c5ab77baf82705a98aec4af2f015", + "value": "0x2b098bca7000" + }, + { + "key": "0x3f4ee310ca8009457491389f00d9d32910c2cf452b29b7e928058e0340dc17c", + "value": "0xadafab034400" + }, + { + "key": "0x125ba9b66a13972539f8d31fa232c15560baa483f56c4b3828c2079bd2a6f55", + "value": "0xb575fb4b42d910" + }, + { + "key": "0x2077b85d7195305bf19f9fe9b997f335cbeb68663cfc0275a298fa8a039e6f9", + "value": "0x1b9ad376173ea" + }, + { + "key": "0x63bae7ec582c6117a58a47b2ddfd5fd7a6556496b98bcc1bf169ce4f0ea273e", + "value": "0x11c0c8d81d930" + }, + { + "key": "0x3dbc109382e47b9c50fab9f1a53cfb1a3d14ed8385e19649c9bf7ca6b72a426", + "value": "0x2a02da97bb9" + }, + { + "key": "0x516223f18baf4baff71e82df0e198f767c1ee5ffbe21415ff5b28efa7688a61", + "value": "0x1098dbbde6fa6" + }, + { + "key": "0x4dafd156dd2bf6992caa16926e44cc71a36a9162b2593db8d3e97b52bebbb03", + "value": "0x365f25f0ddee4b" + }, + { + "key": "0x736310b8be24975099b864f404ab2e32f4cf95054ec8ef67568669c0cfe83c6", + "value": "0x6999ae766c757" + }, + { + "key": "0x7fa1c2a8ce8dd2994a98d09b559019870bca90fda957f5b93da66dd04600d63", + "value": "0x160bd33500dae" + }, + { + "key": "0x1e16c3b679046b874759b0b3803927ed60ccc9fec0f1b5a5270c70801001976", + "value": "0x83834fa27000" + }, + { + "key": "0x2a1c67ca73fbd7d6147f11aae0de7b3919643eeb5d3a1b0a1da6c151517301a", + "value": "0x1301211dbd93bd" + }, + { + "key": "0x3ce63b6014623680de3801addbdbc460bcbf144f0c741cb14aed33cc5bb892c", + "value": "0xecd64b29f745f1c" + }, + { + "key": "0x2309e1fcec847bdce2072e1426ef52ed38a0cc4cb19a745db8c45d3848417c5", + "value": "0xb2089936fc00" + }, + { + "key": "0x3fac05b3718b3011ddc6f97b6941105e7c1f3d86db3d7c10268edb9de52d958", + "value": "0xdac15d28a6fc" + }, + { + "key": "0x20b9ae30650303b655847e9b783fe784f1d2a3c56c82f4002ccab5c49b1d70c", + "value": "0xf7f3e2eda0705" + }, + { + "key": "0x98ceef251b13864501cff90cd35bb2a490c07e7888569535bbea0f06c439c8", + "value": "0x3f25369760d9e6" + }, + { + "key": "0x3e291e88fd85a5c117da84175023b4f10da36546719d789b66f7f0abcd90931", + "value": "0x163443c9a4596ac" + }, + { + "key": "0x72e743aaae5f39528b2fd1be14961d5bd596f85d2679d50f9e3a542d52206c3", + "value": "0x495f015c18e4ce" + }, + { + "key": "0x30eeaf7610725eb25c83f620b4a1ebfc0f97a6c714d714fe6322ff9dbcb256", + "value": "0xacb6fd71eeb7004" + }, + { + "key": "0x6b2539d15f6e619ad7a52d23d46177dc08dc73f62b55710e9abf4eb671117c3", + "value": "0xf24fcfde5d11" + }, + { + "key": "0x6dbc4ce2e1a60da6c8fdce487080c1f83812201d9de8f62de8cc51ac39ad1f5", + "value": "0x2ab2e90ed3782a" + }, + { + "key": "0x63e876d370d797ec97f3b0f1a35c5f1f83c669c4e70649f88524a10eeacf1e6", + "value": "0x4c4d51d49e" + }, + { + "key": "0xf924afb546b1610b85a8633eb46e40ac5940df0d1a668f6054669dbf42cea4", + "value": "0xd606e7ffc36bde" + }, + { + "key": "0x3ab8e917310b3be7abbded7560390cc32b6163bbaad9658c804d8e4446ca13b", + "value": "0x4c4dfba32e" + }, + { + "key": "0x2f0639f396b10e1edd5eee54c322509e1aa38fe8c173261021a0a3c66feb060", + "value": "0x2c18d54a7e91a08" + }, + { + "key": "0x684a464fe683519feec86a8ca0da00671b4e6fea827ffc2e23f87f173d36667", + "value": "0x3db657b2a97804" + }, + { + "key": "0x3b40d9606c7d9892f3ae7921e00b9fd759d9cd5f29150c5ae8a2eba91c86849", + "value": "0x137eea7504a6b4" + }, + { + "key": "0x5496768776e3db30053404f18067d81a6e06f5a2b0de326e21298fd9d569a9a", + "value": "0x182a9ea11cbfab04" + }, + { + "key": "0x106a703a477f685000492604e35c833468ae0b172e63778399bc98d2260ccfc", + "value": "0x168d7e97ee0b9" + }, + { + "key": "0x7b5aa95a33fd6a53904d953461a66a0f9a9e5808540a14bf047736f6c6de459", + "value": "0x71a89710bb3b3a" + }, + { + "key": "0x1be5aa9a1ebb07d623b5d97b0930cba5afed522422dc512134dce2f678487f8", + "value": "0xf825aab4ddb9a9" + }, + { + "key": "0xbaf2ae35012a38277eb44e674ba3e1983efd58e7662509ab78271e73c1344d", + "value": "0x12224bc62d640d72" + }, + { + "key": "0xabd27c7c50920b8b2deced52c892798d4fb16fa827d1ec52376dcad7535ae6", + "value": "0x1aaa87ed41eeb" + }, + { + "key": "0x61cbef861ce2c6eac4931f540acde76aba2a4b59545aaaf66f8be4847e2e029", + "value": "0x714b259daf5cb2" + }, + { + "key": "0x4a99d105c330cfe17fe19413f871704c739b6641ca3c6eb0061e2d06a4f11ed", + "value": "0x19c7ffbc17327d" + }, + { + "key": "0x29f46c1e681ffac0bfb0311214662a2a4fbe35dd6e8358268a37de9bfc4596d", + "value": "0x1a6df6801cb31" + }, + { + "key": "0x411ff4d96a7c26b915708924a07b7adf1cd9a2b307e0a2051f6a5dc2bda6924", + "value": "0x125b5d6528643c3b" + }, + { + "key": "0x1d2b6ff1f9804536f31024e474248787e4d714e12116efffdcadb6a3a829992", + "value": "0x104081376aa15" + }, + { + "key": "0x54d64f901d06a1ada09f507d96ef4d738eed3399573e2c36e6729f17131912b", + "value": "0x8334466a9ffbea" + }, + { + "key": "0x52047ef3504efd6231ed593e742eaa7ecfb3114fdb831dc481a353d99ecbde1", + "value": "0x6e019efba778cb" + }, + { + "key": "0x4596d6cfe605d74b57a3f9e6373a60c09bb19dc8f2f446d940d486dd37cc742", + "value": "0x1c21bf796c53e" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0xdb566a61925c99e63b" + }, + { + "key": "0x6be031011e8672541a00e9b255a549ad5f3c0942f1a0f9132cc9e24c29d2499", + "value": "0x404ef122dca094" + }, + { + "key": "0x5c7f9510c9add170c6fc6a45c0554e64753b2917c026f994c56cae95f13f4a9", + "value": "0x4a700f706d82a2f8420000" + }, + { + "key": "0x5fed395fcf0746aba8eeaed0480919941004b7d52792cac1966bfae04d47a11", + "value": "0x295650b3d1848c5" + }, + { + "key": "0x17d6e93da0a87c048607a8119dc161ae6965eb8f3c9f6c1b74afe47ae3715c2", + "value": "0x292e3a2442f7f0a" + }, + { + "key": "0x1116f61e6181f06f8b062073e2a8398fa42398e4e0d5478fd6dd4d2df7239e", + "value": "0x17bad36af4f0c" + }, + { + "key": "0x1e0332d9dda869d14e3a01d051182f093bbe1e6e6c22ce21f72b7940d9fc960", + "value": "0x1c4aaa9defffc" + }, + { + "key": "0x7277c0cf95900dbfee302b49fa4ba894849fc139d07fd786b463054c7a668de", + "value": "0x1a7a6694fbdee" + }, + { + "key": "0x65937e698f98da7cf9294cb8381283788a7fe57e8dc7f7334c62126b8a82a5b", + "value": "0x42bbca84994e3eefd" + }, + { + "key": "0xb8d063c404efac77f45b7d1057a027a8f1817f9a38d4094d0483c747845cc", + "value": "0x15f8110ba6f14d" + }, + { + "key": "0x3d2e4e91dac6980c6be13bad2091faa3df5f822559e13dbabf8e852cd0e4f18", + "value": "0x1c90502f3380b" + }, + { + "key": "0x65c96e1f19f9300f4c34e8e83b8bd34e87941957b64afc2048b15c590464004", + "value": "0xddb90d1c25d74" + }, + { + "key": "0x7f0a3ff0244b195ae2ec1dbbc99bf7879236f8dc4e72c5709da87736266bfd", + "value": "0x12cbade97f629dd7e" + }, + { + "key": "0x25cb49418a863c485c1f45adaa3fcfbe83a9b37bdbc65e97d97a8c7608a3d54", + "value": "0x10e992e0558ed" + }, + { + "key": "0x35826037c54c5a4e732d96015882b21a3ead98d9696ae267da0266c8b77e14a", + "value": "0x47418a6febcfa2" + }, + { + "key": "0x1c0d06bd7060fec0ae69b82cb9dbed198512b21e28f74090aed0092ad8497f1", + "value": "0xa92b046ec1bbcf981" + }, + { + "key": "0x738beeda83522414ef254f250bdbbb8d15e90988f9eff8edf782b85432938f1", + "value": "0xaf7776c9731c" + }, + { + "key": "0x33ff630d8f5bed3f973adee68fe0ccae4dde82edb8fb28c1dd0e4bde10f13d7", + "value": "0x139de4a31194f" + }, + { + "key": "0x3ae7e617506cc11a53afbbea01a6c77d64d60e35ffa72946aed8d37faae9993", + "value": "0x19188677efd43" + }, + { + "key": "0x41d73acd9834b32028d5fd2d7c4fc4e9e7dc7451e029fd108b2080522a7c583", + "value": "0x1dfea3ec15752" + }, + { + "key": "0x49ddbc28741db7fe944f01bee2b9a6f5eb6cf5d5f988d71d7d3b8f0ba367696", + "value": "0xffffffffffffffff55e3339fa5a61d20" + }, + { + "key": "0x62f21f0946395ed0a794f8ccfde2a3253e3ffbd671835ac6759e8dfcd68cb7", + "value": "0x1c756d60b89ed" + }, + { + "key": "0x3d631e2afab7ed33b20c0e3280a32b6ef10d7dea262e0b83cb501832d6152c5", + "value": "0x2c5d7a927800" + }, + { + "key": "0x19e260240475f57869942e6928eebcf94f0708c876c45549b188a2a52b05a1a", + "value": "0x1b535c11e8" + }, + { + "key": "0xb5311b97477466dcdc360c8c4fe96e478c684872f76c6a818b5768004a4947", + "value": "0x4f8b35b7703e547f5" + }, + { + "key": "0x4048e6d273b669e698413e2986624b8bbd71d04d70a9eacfdfcb85e26ece50f", + "value": "0x8bbe6dab7400" + }, + { + "key": "0x19c970cefc422162ebd5198f037e77b9ffe8baf38036ef953c7eed6ad03d524", + "value": "0x15f50098ff89a" + }, + { + "key": "0x35a3cfe5794e4e5ff4fc060862366b33aa75687ed1367e2a753999322917899", + "value": "0x1399a298f4337" + }, + { + "key": "0x329d5c26214ecbd2541ae271473c635b50ee9fa6f986b7f3e1482f1358bab8d", + "value": "0x4dadb7ea9509123a" + }, + { + "key": "0x6a7cdb96921d36c87e1b0bfcfb5d911d10f0ebb80648d93b69ab485aea22587", + "value": "0x3991bd0d8f711d" + }, + { + "key": "0x5460e3ada357c552adbe9fdd830aabe59b7a3b43284240fb606458be8c6e09", + "value": "0x3a99e4d70e1e3213" + }, + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0x988f67959bdcd121cc" + }, + { + "key": "0x3610ba5f90fb9b7e6727bbe2dc5b08b40a4e7bcddc65b02e1d57ccdbf1fc13", + "value": "0x96381268855e7" + }, + { + "key": "0x588c8a50f6402d910492c3cbf5449e7f6fcd696176ccee147e9ce0e96bcf6b7", + "value": "0x1cf66319262d1" + }, + { + "key": "0x36e008accf5696f1002cffa271fde440d7e4d73861756cea55e9476f071c46d", + "value": "0x11aef699098cdc128" + }, + { + "key": "0x6b7b04c872511cbddf485f2c014acaa806fd966d06a9f91615d5394087e20a3", + "value": "0xf4f8b6e715d29" + }, + { + "key": "0x6c91ff625bfa6a97a48ebc06c5429f5f4c51dac7a3ff4317c9b6f7a191198d1", + "value": "0x2ad91d694cc59c" + }, + { + "key": "0x1b9a8c41cee15b51c5423c9e651743afb1622a830ccae9f1f7b274f1a5db9e9", + "value": "0x1513e4a0515c9" + }, + { + "key": "0x7a4875ed2d06b6975360d6d82264f2b012a7204ff878045ea574d54dc78f685", + "value": "0x17e579451a08c7" + }, + { + "key": "0x22996483152f451581c019620e824dbf6db22bc0a97c54ba9a702f2d8190e30", + "value": "0x3f1fc92bf154d06" + }, + { + "key": "0x3393d63091fb416242146706398a727a44218d573ecd24cfdb274d197ebd4e5", + "value": "0x79eedb73fed67" + }, + { + "key": "0x187e846027be47c516c97cbb358dec77defb59dfbad6a0cfe917e4999818756", + "value": "0xf151c2807d" + }, + { + "key": "0x7303303625948504c5fd26b4e9b36c55bde813a7119d0372f534a772783aa9f", + "value": "0x1a4fadedeaca4" + }, + { + "key": "0x709c519fa825e0520bb6dfcfcef687f7b55d3b0835faa6d3d9d0e9cd81609c5", + "value": "0x1ae63f9629d4f" + }, + { + "key": "0x7570459014098d9bfe2c9a9e02888133be7153260a847573ae2d0ed69cdce19", + "value": "0xd4dd82734bf5" + }, + { + "key": "0xf464d88522abe30a7a715e3c11fb1a9f3bd263ec2badbcbcc32ecf004b8596", + "value": "0x15830134db06f" + }, + { + "key": "0x7f540a932b5de266b6c866fca1be8ae4b932a349386806aa77a2cef00d59259", + "value": "0x1b5bff04f0686" + }, + { + "key": "0x3e7e893ed7a101f3d45094df2001e6b9c8ac30029064fca1d95e7084f0e5337", + "value": "0x35fb560a1c5de4" + }, + { + "key": "0x113779abe252eac66e13a4ac4a5146b043138850cb27047c1a3e98e73c0fb42", + "value": "0x7bde22161b4690" + }, + { + "key": "0x1e5ac0b28dde18e5b2a7f9320307fb640160a7ef3e27bfa390c7f10f10e9637", + "value": "0x19c0957ba953941" + }, + { + "key": "0x77e75ec006db4586d1dae0c33b9cef6517d473d7431e31734efa563d2d2d76", + "value": "0x5615bc0214a9" + }, + { + "key": "0x67438fc635642a4ee4889bbd851a1a55a689a77e02ed3b81995b9f4bc36a2e2", + "value": "0x71e136eac5caa5" + }, + { + "key": "0x55a33869e536ca83789615a450fa2360925d05676d9803ad1f7a802e2eae53", + "value": "0xcdee8bfaf84567ce" + }, + { + "key": "0x7a6ae174a804f6aca7ed3cdbf4ad1ee33330aac4049dc48a8d9482ef21d41f8", + "value": "0x576e81a0dbcece" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x321401780af00cf735c" + }, + { + "key": "0x10e6412bf64661fff83480659d3146a6e4d19c14c536690eb9093235f1b4e89", + "value": "0x182ff9f6e1e80c53e" + }, + { + "key": "0x5fad7613fd327fc13290b4c80dcb56b41035cff52310cc2f9e1d7de286fcff1", + "value": "0x241bc52d3babf398f" + }, + { + "key": "0x649ce4881e25213a9d0f08d688c8c04f0e88b4a885d95895d755c848646ab60", + "value": "0x11c72bfb3cb80" + }, + { + "key": "0x67776a6f5994e1c5180cf235a1ba82766ce1815d4f4ce77490919fcee4e5050", + "value": "0x1a7833b9285e5" + }, + { + "key": "0x1a2ace129ea0661004ded96d40ac07aced2c8daa4437fdd87357e9ba25ba94e", + "value": "0xac05203cc02dc2" + }, + { + "key": "0x6f62a92863adb05d84b91fe4ae8fc2f4592ed93ccbf3743ae66ee3dd50aa2b7", + "value": "0x271ced400a70c6" + }, + { + "key": "0x49a8ef79cab313360767015d427d0307368eff5c2c81b019aff018ec638eef2", + "value": "0xa2012078aa5527317" + }, + { + "key": "0x6f5cc8a7672a6efb926f1bac8494218ca1c6edf27a02d08fe337a6f11856c7f", + "value": "0x1119200c4fcf890" + }, + { + "key": "0x1b45e6bf212224971b780da25eae1d2de38e932336a5fa0a97ff3bd02f90366", + "value": "0xabeb518636" + }, + { + "key": "0x1e870eabbe6cbbb7ff88727c2c9fc40a3ac30e2d40ae45bd13280e0a03f7e55", + "value": "0xaa70766e5000" + }, + { + "key": "0x65831f2c135d6da0f933818e02d3a90bb481a58352295c26841acee161c7bf5", + "value": "0x2a9e71a77800" + }, + { + "key": "0x6316da0c87d2040a0a1a3c52ea9a3b9405c812565a1fbdab470d97c444b465f", + "value": "0x10c52b2bfa76d" + }, + { + "key": "0x23a94b9e937669f20a7e51156c86031cc4b34311b868ca3d96e1d1456fe91ea", + "value": "0x19d2bacaf084f" + }, + { + "key": "0x7fd5fa01fb06fdddf91ac556bd7588c8a154b96ab1f940b47e6b20187389f78", + "value": "0xb2f76509fa287f5" + }, + { + "key": "0x78683d670a2447fa3c76edee574b10a430da568afe05bab47b556b5f7238464", + "value": "0xfc9fb3c76767" + }, + { + "key": "0x198cad3852091abe6c9f5c48eae1534d0b36d9808cc1d35823da39766ab4864", + "value": "0x14cbb0d72996b4" + }, + { + "key": "0x4de88296a899a1b43f011202db8bd196086cc2ccb17040e5ee480161430756c", + "value": "0x2c5fce9e5c00" + }, + { + "key": "0x471581d92697220bdd5ff0f8b363d0b705b37d54897d77ecb3858a586be70c0", + "value": "0x14a3507f0f2bb" + }, + { + "key": "0x77053073a8782c45a29f1cb7d70585ea700a150a1c7de6b9ff294eb03e93a98", + "value": "0x19affd615385c" + }, + { + "key": "0x1214ed8862ba26815a7fa616e362aa1fcac09313a1a8ffdb6afb1eecdc927a1", + "value": "0x11950f1436e7953" + }, + { + "key": "0x4477d822acfea60bf6fc4af07d95dc437eff93770d84d3f2cc1ae3bc5966eaa", + "value": "0x19c2ac243d1706" + }, + { + "key": "0x496d7267d8a8ec7097e4eedb6e9c3913912a0bb22f77d302b051e6e573637ee", + "value": "0x148b2af8b1aa6558c" + }, + { + "key": "0x2c2988668100ad9c322dfcab4182434a1e7c85a4625dcf399f6df176968f9fd", + "value": "0x122bf15a55e76d95b07" + }, + { + "key": "0x42e37b2f6a4150e8dfd45972a315ee0f43b037f39617fa04f734d1aa984270b", + "value": "0x1d0c5130d6432" + }, + { + "key": "0x33688a9aa6b9b4f7e0a78095e5be014c060fa2a941c45cb2da9715cf604911e", + "value": "0x2b10bf562585c4" + }, + { + "key": "0x7cdc1d2deef31a91bb30145739e99e9b753590786b1b4fc51f3778bf3e91297", + "value": "0x149c44a9bebb" + }, + { + "key": "0x18d7b079b471cfde70d671fc55b3c06d4363cdc22201c09924822902a33e019", + "value": "0x21b6a6665333a98" + }, + { + "key": "0x31697d46959918d8e06ba6608fe3aa4f93996cedbd7936d7b82b07de613ec2b", + "value": "0x3777b46a37f6" + }, + { + "key": "0x3f1547aad0f022841507a52d87b2c51a9380b0407d7923a47763c7fd182c83d", + "value": "0x2b9f1cb0f8f4ef" + }, + { + "key": "0x2ae384abfe124fd57348d40e21c4594a95aca6005b381e9096574e5e6f80192", + "value": "0x1b17dc35f978a9" + }, + { + "key": "0x7b7f6e32b4a6467007b5785b4198a58144620e7719aeb57712f6fbeae9c0b1c", + "value": "0x41221f39d6c4e9" + }, + { + "key": "0x3b51729a1fecd048b7f5cef08907ea6ac764106add60ec27d6ce9ed6a452317", + "value": "0xebba1dbbd163f40" + }, + { + "key": "0x2eea42ed6e3cc12a7455fab2c410c170f2537aa70435c7a6d45372ceb2535ea", + "value": "0x105cfefa2001c" + }, + { + "key": "0x777f0e1710e357690aecd18915a011dd4d655298b8b92393343b980c0ab5358", + "value": "0xa667996293de83fc" + }, + { + "key": "0x8bc30eb4696a620b60cfe9e20f4280c46f9b2a2b0ea1286f6c8f0d9eada9de", + "value": "0x1ba591011d" + }, + { + "key": "0x2ac284370b0a1559183a288a6dfb09a189809f0d8dcc8e7673ea6d85dd75fdc", + "value": "0x19026e6e3491d09d" + }, + { + "key": "0x4d82998aa3d8e5173bfc632d048e555128ebde2d426f3235d8d67e72235baff", + "value": "0x8b6dc1ee9ff6cbd5" + }, + { + "key": "0x3d7ccfb9e9c5944c7a3226921716da0d42239892dbde7b12c1e5597d31c4124", + "value": "0xb33d9ad3f96fb556d" + }, + { + "key": "0x43cef7fc1c23c3c8da2ff7d054d1c682d1d807bd2621b32a3805e16a6ef774a", + "value": "0xe9f4c538a00ec" + }, + { + "key": "0x7c081c37ac4546023653fa1ba4b87bc1d9cdae0f385f86cb10b845b916d84ae", + "value": "0x4d5ddee37b59251" + }, + { + "key": "0x4eaa11756110bd5dec009ceb10fafbb180ab85b60feb2c422d038d0d9fecc79", + "value": "0x163463758e4de3" + }, + { + "key": "0x32b518a550e788c1f493cef8eadf5af951e34ec41cf62ffd16d1c102844a365", + "value": "0x914eb93cb277a4" + }, + { + "key": "0x4618fbab1b407d973b61eaa8dccdf9b62464fb0565d2e085a58b563463f8057", + "value": "0xf647a1e786ba7" + }, + { + "key": "0x6753cbfa63541f7633607833f3f65390429f8a4491f3e7c4eb3efbf593c3523", + "value": "0x4ff0bcfc9379f20c" + }, + { + "key": "0x22163586fe000dea12f28c402f79b8675e07ad6753d1bb23fc5bea6c0b6fd5a", + "value": "0x88c06a637000" + }, + { + "key": "0xe3a3a8c197db9a0166eb1ff0aa51462466fdb0a862acd9a04d2731ee305321", + "value": "0x51d52aa8f62d5cca7" + }, + { + "key": "0x5d5738cc3d118e56d2406581091b5f5f68a47cf206a04fa65fc30bd8b698149", + "value": "0x1d4e7e69cd951" + }, + { + "key": "0x5614597a9d26714813f8a89a79980c148b2045cab6e784270fe8113ed8930da", + "value": "0xb4300df9f9a3e8" + }, + { + "key": "0x43f1dc47c4ec18dbd21bb96498764ff8e5e29836bba8a6163c346f88b0e126a", + "value": "0x2c0058b6d800" + }, + { + "key": "0x634e2aa8f442fbf45e9558e7b07bccd96ba902eecb82e8c083cfef3751bc56a", + "value": "0x56b5e4ecd153f0" + }, + { + "key": "0x79e129e6c2c7e9ecc7e30b2491525c381590530bdd574efc81230b9f4bc5d25", + "value": "0x2bcacba55c00" + }, + { + "key": "0x7faa618859ab0cf17dadc3717eb64f5746b96e31bf688d74263aca13722cbfa", + "value": "0x86a7adc7702f1a" + }, + { + "key": "0x3e3e3fa1db1414c7798056c16bd20a8bbeae6cfdfd7e1d619ce477d36453f1d", + "value": "0x234a9eaf853f5" + }, + { + "key": "0x6ed65613df63114c394e41e2d913e52178361ae6b4c620c1c38acb609ebc517", + "value": "0x15028fb265723ee9" + }, + { + "key": "0x5aad4c9dedab7586200159a0b9409525e47f5a8e760e6cfe462136a292a8556", + "value": "0x1bcf7ffa08e31" + }, + { + "key": "0x4e7d65b344849c33604ac1247f8915b21aed7762a4f2f1e582da4ec8bad99e3", + "value": "0x1b467b7817128" + }, + { + "key": "0x3727602eae5b11c1502b44e1f75577d29f992d7bc820381f22ee16661daa6c9", + "value": "0x1f933a17e03779" + }, + { + "key": "0xd2fd581d6f96d734a9be7bc8d69a0d536aad12ce850756d4aea93ebbcf8923", + "value": "0xb4dcb3a8f800" + }, + { + "key": "0x3822163be01af47f9dbc636a466ab3c22e71f8cc33d6829e3c32d439ed4b476", + "value": "0x41394e850fc08" + }, + { + "key": "0x26a3315c2103024918768d7a3f1204221c14a328574b71c38a3ec7af5bd8786", + "value": "0x1d587b85bdc5d" + }, + { + "key": "0x3f6faf1d49fac4797813f483bd5167155f55d7cdce1ee66f7868ca4eb4bb427", + "value": "0x1106a78b9ecda" + }, + { + "key": "0x3ac4fa580b4ba1604848bf1643395238c7e632b719af7e057a2f90905ff9667", + "value": "0x1b8ef3d8a9f43" + }, + { + "key": "0x13d0c87635987c37a5fafb2f1252457cc5304affd8a6d7eff25275377aabd5b", + "value": "0xc6b99c6bb409d721" + }, + { + "key": "0x8f6f75b864fcf54cfaa284c9ab13bfdeeadb5ccb8ecf2e4265770a9579bab1", + "value": "0x1823387ee7d4c" + }, + { + "key": "0x4d0e927c8a62914ae1cb5c257ff484f28cc3714fbb2b8211014a421e8e62fdf", + "value": "0x76867d4ea000" + }, + { + "key": "0x47e1fab8f527e4efc9d93a4e6a5c4d74414c927acbb2bdd51faf5d891d686c4", + "value": "0x34fbc5d4289911" + }, + { + "key": "0x634f4692e578be6e762a3f4b04c3040ec898eedca27bd99e18e1765c25d9494", + "value": "0x2e2592580f10b" + }, + { + "key": "0x2551f09787552c424fae0cb8ef2a40ca2750b1c9e3341a6fe9a1bc0e2ee5f5e", + "value": "0x1586a8e23d39c" + }, + { + "key": "0x41610a65464eac9d2b7088fbd3b9079e48a9d812491f14022a979d17d605b0c", + "value": "0x12c00e210fe8de" + }, + { + "key": "0x1715dfbd02aa6e22565da75edc82c0237d6b1800b27daebe66c859ca663358c", + "value": "0x372c6d14fb74bd817eb" + }, + { + "key": "0x3f69330b043276696cddbe66ff3935b005b163b8bc848dfc20078fcdc81bd53", + "value": "0x8e158cffb6b900" + }, + { + "key": "0x7783257d0d9ec5fb09accbb21099ca3a7d752f488cdac9efb26db2a80e8aebd", + "value": "0x21f228b1aa4a4" + }, + { + "key": "0x682ed91ac0601afa4aa60caf059d6e8d9ed40b55be1bbb27c6e7d2177857083", + "value": "0x3d1cb9546eedd36" + }, + { + "key": "0x3fd6ce84ef36d71fa42750a791f60560777ff6d5bf29f7b1867bbe9b448fa95", + "value": "0x4c4def6b58" + }, + { + "key": "0x6b2d62252f3f44360a7451638d1dac14f9e6b3bb743eb0c2138802fc7134cde", + "value": "0xa96e21f0707e30" + }, + { + "key": "0x35cf2f83e4e71d9d43d667a445500290a4d4e0e8f523fd59745aab6b36e79c7", + "value": "0x2be84ac976b4894" + }, + { + "key": "0x4331141c998e957c01f1c883bbd3e9310797954b575f29cce1e692e1e97dd8e", + "value": "0x4f08ba99c797" + }, + { + "key": "0x4d47d3b08668fedf5b936399a5d0c8f64a0b7b2b32c1911edbf876d26ea9789", + "value": "0x1abee15eb15d0" + }, + { + "key": "0x613bb90ba172b5d9e682b55f59986b46d1265ea0c46298062001cc600695a4d", + "value": "0x70080b878ff6e8" + }, + { + "key": "0x155f6220e24b452a103e7819abd7c79eb261d5849459ed6e0cddb8d5557f12e", + "value": "0xcef38014742be" + }, + { + "key": "0x70b82bfdf473a10f47148ae4452ddca0a7fbcfb1c5bbe89e4515a5c8c8aafbb", + "value": "0x3699a911448a" + }, + { + "key": "0x6a3727ccfd6b36677f74da90c4e9fe60d1a1079b50176b22a7f581ad7a41bbd", + "value": "0x17922973dfabb" + }, + { + "key": "0x110d72e967a25e84433e44d5dc11f3ac9ebc2b1cdc33190a97d01ce2e3798cc", + "value": "0xfeb5e0d7bc678" + }, + { + "key": "0x723e3220883adf5896f59ba1b425c031b50a33bd4ca6b57889095f712109d1a", + "value": "0x2d23a029985209" + }, + { + "key": "0x7589106b44e597c00aac2d0e214e7f11e1a767b886bf486ea256d36a6974ee1", + "value": "0x6846fab8b968a3b" + }, + { + "key": "0x52a820355dfd7699e014e4395d79ac2df12697ddc82d6c954b98c60abeb5cb7", + "value": "0x32da5c7c70f447a" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x1495b381c52be0dcde" + }, + { + "key": "0x27ada114743afc3c19c8a51d6a18bb4cf0178b7cfa1887fbf5f7a6ecd29a447", + "value": "0xe6d92f562425710" + }, + { + "key": "0x6ac150a59c70bbb92548f6b873b9f023cc569c74a5853b839045b9cacc0161e", + "value": "0x16b3092f9c3dac" + }, + { + "key": "0xc34e17e30dca4206e5537ac9da20af7ee9ff0959deafb2e15296911d5b9b18", + "value": "0x183dc93dfd47941" + }, + { + "key": "0x606fa46e73bd6fa80ab0d581cdb7c552e630f51141ca5d3e8525c8279f2b239", + "value": "0x133d99d86bf" + }, + { + "key": "0x53508efbd455db01619f76c5d6b87ce8a2cb080b34fec6f095171a146ea247", + "value": "0x6f64685fc73799" + }, + { + "key": "0x62a96ee07a1294b885215380eda354052be5e80d2e5ec08ac7ecbc09577fbff", + "value": "0x21cd2dd5e21" + }, + { + "key": "0x6130e83f5e1ca37586b1b12ad527d7c09a8f46ed294db1e48ff83754bff5424", + "value": "0x260d3224dee860" + }, + { + "key": "0x42159a96b1fa76469ed74e2f956eebf908441531abbd2b40efe1142f80cd3c0", + "value": "0x56a58f0ec37e" + }, + { + "key": "0x7b67a4af99d9e38a42952dd4b552afed1e1dad059a949c4f2acbbff5bdf9133", + "value": "0x2b39bdf3b9f69" + }, + { + "key": "0x212452c70d934077e734fcf8e49062d1aad613b94a95edae4e47d5fff4748e1", + "value": "0x4c4da5e07a" + }, + { + "key": "0x4aa2885ee95e2eaf83fcdaa59539ef9301372e916bc2419274d92a453c2b422", + "value": "0x960f252caec58360d" + }, + { + "key": "0x5b04d17c738e972aa66992bec29653b8d4f65a21a5da8e6706d2c11f2fbb5ca", + "value": "0xb7e4e9e99949428f" + }, + { + "key": "0x75ce651d3e782be6a570a318be8e27f478c126dc2fa8dffed9acd88e639d5df", + "value": "0x1176d934275c1" + }, + { + "key": "0x20bbf2499f10c86d89c5a585c1fb91ca72ec5bf676ded5fa431e2199b5867a6", + "value": "0x1af8ceff8775f" + }, + { + "key": "0x4c148b32b02a1a649b088a3cb56903fe25c7ca84400d39494c6d4ddf60fe4aa", + "value": "0x335d3e1a6b0c47" + }, + { + "key": "0x14d8b6d891eacdb8a754a6dd3aeaaa8d4271648e2dad5f0e48141a57b7d8923", + "value": "0x301f6d8bfc1bc8" + }, + { + "key": "0x4deff357d812e5567e8e01d519d6ae9d4be61cdd455315b73d300ffb283ea46", + "value": "0xb8278c796000" + }, + { + "key": "0x43e2a627b69b10a0d0364802f42110af90a93bc8f8b3ce1e95d3420ba66a989", + "value": "0xe47320ce2d0e70" + }, + { + "key": "0x1a97fa824bd8aee93f657daecae9948ba3055d31e8fe7abd43289798f259a70", + "value": "0x3cec778242571" + }, + { + "key": "0xab5c9b3010b688eb6572ae3f5e701e8dc07894f3a36ec1e0edb18cc6ed937c", + "value": "0x6d327c5b47b39f" + }, + { + "key": "0x7a9c08ea83113a7bcc7bbf2a897f997606a77fcbc34f4337981176da02de6dc", + "value": "0x1449ba3b8bcbf" + }, + { + "key": "0x7de980f86957de507840f664e74cb84a1795b445417f3f2a763d5e60db7faa0", + "value": "0x8a65d6cba400" + }, + { + "key": "0x111589179dd21dc1e92f5829eb986ec03e66181aac2f082c50c3ad1af2c36aa", + "value": "0xf638c978c64f1d" + }, + { + "key": "0x30e884e6dedeff2fef944ce8c360f971d74b2db1e8579e75ed67461e23ad3d2", + "value": "0x1428c6062a91c" + }, + { + "key": "0x49f1748c12aa6528063b44a0814e17e92a7e8cd3cc0ab335af80940380e5c25", + "value": "0x13cd6fc11a5087194" + }, + { + "key": "0x7a63c70ba9ca9bb575c8d1a67466c98040242ec54949b94a77271c3b0fd8353", + "value": "0x4fe2945507708" + }, + { + "key": "0x48bf5de1b734de7ed22c4878ecf93e97512f44c7f2154a6d2e9e5630bdfec4a", + "value": "0xf82358887ff4" + }, + { + "key": "0x7e47c691b5511147047b7b0aa8e55e663c0e6775ddf34386a0333a23106e5d", + "value": "0x4adf9ec83002b6" + }, + { + "key": "0x18dd4b05652ebc43c06e46df9f9414fbbecc9d2c5d9fd8b679865b02f28c4b5", + "value": "0x1a2cc5c2f31e0" + }, + { + "key": "0x400d64f550d2f53b3f06cd4694c81f78ad446cafac3853fc9e012eab1f7c5d7", + "value": "0x6be7070e6000" + }, + { + "key": "0x599cde1350fefb3fb3247691b37271571fb16a7d3a48841e61633a04b25cd1d", + "value": "0x1b6a429307e04" + }, + { + "key": "0x3e1862eca00a480293ea639afa480a0771cff1398ac7f3e69f9ec5b36811091", + "value": "0x10a5d384a8f3b" + }, + { + "key": "0x25ffc8b4ca9f4a28b116edf69aecc1f2c5d30ce36084d1a9a878d28f98c84cd", + "value": "0x112832c2d470e" + }, + { + "key": "0x4716e361638034cb24db82fbb0abd3cd43a84e158b560fb12c0f35b977cbb0f", + "value": "0x14325f82eb5ed8" + }, + { + "key": "0x551664a93d07a03bcc88099b133dbe82277c85e040f16ad98d3010b5d7d8569", + "value": "0xc482cfe7d56948d" + }, + { + "key": "0x6201def73d4406649f58aaaa69536cb7e436a991c421d2ee69b62c22d15b221", + "value": "0xadc24b626400" + }, + { + "key": "0x572ecd966dc0bd18d8719fcdf8c08d22d42a8030710bfd2fecbd856330fab63", + "value": "0x1954916a857c0" + }, + { + "key": "0x20164e31a639242b6c07b0191beb89111ed0812a5471409b3e1eeb4cd268854", + "value": "0x4c4dde765f" + }, + { + "key": "0x732bb0f92574bf996ba06c5e0821e1e336ef4155f3a56d4413a0c40e77eacf3", + "value": "0x45b4a6b86198c" + }, + { + "key": "0x62024f0156d804ac550147a04c423e77b423bd5b69767c9ae70ba9ce557cc7d", + "value": "0x6223c5aa02ac01" + }, + { + "key": "0x237420549e04282925bdc239aed4f21136a1db5a7c8e231e87d3d4b71f49a04", + "value": "0x1a49ddfd13872" + }, + { + "key": "0x1236ff1c1d6c0d0130d02f540222ca64989f860d3389d5a5b0e3fc389b27868", + "value": "0x18de8ffb0be09" + }, + { + "key": "0x685370c94ee56d77cb55badbe568417cb47daad36f51b37432d9a2e22159a37", + "value": "0x84013a957e3cbfd" + }, + { + "key": "0x5c4b7dab050cbef6466c2bbf719b5969293371d0dcca2fbee9bf16731ecc5d8", + "value": "0x1d51190ca9d03" + }, + { + "key": "0x8c07f5bcd47f5e0de70bf857cddd7e5c943b88f93889f48498e06e58905641", + "value": "0x714daf09ff55e19" + }, + { + "key": "0x2f08f4b1c0b6b4bfc560b99d5c13d3660831a3d6fd5fc8423f37a7dc77bfb6f", + "value": "0x169b78a059471f20000" + }, + { + "key": "0x1e2cfeb3117aa6f7cd2d7b106326cad5c994d0bd0d4465d964ff92407ab690e", + "value": "0xd36f9e237e00a205" + }, + { + "key": "0x503fa669e8ab43382476e51953ecda0ad4777599e25a9057f1d703f6ddce3cf", + "value": "0x10aa5b4259e929" + }, + { + "key": "0x3b6df0c17b76b4992fa833901c6038cabcb6c10a4af7aad4b6529f7eadfbbbc", + "value": "0x89b946b292df47" + }, + { + "key": "0x14a7b53dbe641a18077aacf7cbeae9672b32aed1f989dffac1c723e3ceb3f8d", + "value": "0x10925941d8011" + }, + { + "key": "0x3c5ede3caf1dde6ba793212dffb7cda27299f060ac8d85e94293e37a872d19a", + "value": "0xc38842948c00" + }, + { + "key": "0x55db5cfee7aeaa16b1f990cb984b5d0066758da51c26ea69aded22d8546658", + "value": "0xac1836e26800" + }, + { + "key": "0x27cadf27a2388c72be13c3758517bdb8c98fe3c7bd806eef1ed3a1ffc80e463", + "value": "0x17706bec863d3" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x176aae3ca2afbd6b" + }, + { + "key": "0x4c5dce639388f64cb42404a133470878216e3fafd5d922ff21476e42d8cab78", + "value": "0xc5f7bad941955" + }, + { + "key": "0xeb9a7c4206897167f4ae0d536aab4d3110c28ab4f83970a1e96a36b40838fe", + "value": "0x1afe77eab9510" + }, + { + "key": "0x6bdab5b5d08a8887ef4d36b89aa78ac9628cb8adfb2b7a94d79053065b9965e", + "value": "0x7eb1bc5d75e3d0ac" + }, + { + "key": "0x354fdcc8a09a891477cbf410c0bfb585db32f9b1a5aa0c7ec106b76e2669a5a", + "value": "0x8080a442a400" + }, + { + "key": "0x5fb2ae52ddd152a8afa993399d9d0fdec70d3ee4abaffc5865f59c2ea3af72a", + "value": "0xfffffffffffffffd492ca0f11a063a6b" + }, + { + "key": "0x44531fc427da0b9fc70da981d62ac6c68eb2b4e7b4ba67851844b6d5a9c36e", + "value": "0x1b0d7f4c0006f" + }, + { + "key": "0x71b6b8533eeb85cef95d24d72936e5e8031946968d57f267762801163101b46", + "value": "0x16d978cc4ba00" + }, + { + "key": "0x2548fc3715ce9b3fb114859871801c194ebb16a5cf2aee6772596220a1912d0", + "value": "0x163443c9a4596ac" + }, + { + "key": "0x3d292e900a4b04f617154922e4c3f65ce31871fff54b91c614a016334657099", + "value": "0x1297958795f61" + }, + { + "key": "0x5b3a98099587c433ca3f21ca0fbc3d870ade235a2c72d20cfc49591ded86802", + "value": "0x1b66867deb7e7" + }, + { + "key": "0x4fdff829a84cba01e1a8378845e585bb8b86476252897d7be5cf4d343622d5c", + "value": "0x891b7bc675" + }, + { + "key": "0x30b4de27c0a3158f4a3212e40f99c3410dead530df83be9b6c340c902721c51", + "value": "0xad7700cec90a" + }, + { + "key": "0x3f77016b930efcf7e1b09fbc2e44c8f99fb52bcf33b28612016a2b04e262100", + "value": "0x196f583f66650" + }, + { + "key": "0x673585aec9fd0e237346895471a16f94976bed33fa962c5532136d26ee6041b", + "value": "0x1b4dc9ad5aa68" + }, + { + "key": "0x6f85a3e3854ef8666a883b5fa9b88a20cd1da78a12a9e739346394adeb49d14", + "value": "0x114101fd67758" + }, + { + "key": "0x71a9f2c94c6acc30c755717ee5d65c43d8170a9675f99def3feba67f243f523", + "value": "0x107206060f06e" + }, + { + "key": "0x243c7f07427c0f6311fa3bae40f9bbc1eb097e285bc98164ec89be9e1552f66", + "value": "0x918193d38c09bb" + }, + { + "key": "0x619eef4c3dba2da7985bd74be23fe9119aa2f3b944701e23968cc87ac15f43f", + "value": "0xf4db3bccca0fc" + }, + { + "key": "0x28240d22f2954d1d6126069618717942a9b1908ba02b93af01ebd366cbd633e", + "value": "0x3114f4fbe1cf4b" + }, + { + "key": "0x7972eed64137831abd0d9b351e81a32810d530691843ccb1a5fdd955356447b", + "value": "0xb143a1807d40af" + } + ] + }, + { + "address": "0x65f0af7a16417140e6732be2c87646ca7a2ed302d81068350e0edbcb8b3f9a9", + "storage_entries": [] + }, + { + "address": "0x25d12040e9c681b1587a65c9c60a4dd048b303104d95d0965517ccbab14d443", + "storage_entries": [] + }, + { + "address": "0x13859fb2679061efe34f02081c0a130d1ed67005587942498c275e77f00eaa1", + "storage_entries": [] + }, + { + "address": "0x70f8001232949b40909c84ff82eb4f90c6be95724fc91527b833a40ed094108", + "storage_entries": [] + }, + { + "address": "0x7606cac9053e9b8b573a4b0a0ce608880f64869e24b8a605210d7a85bb6e5f1", + "storage_entries": [ + { + "key": "0x4794c87fbd9b6988e17c0d3729dffbc59344890fd581c313adf2e938c48aa61", + "value": "0x0" + }, + { + "key": "0x59c3196aaacd3e646526a42bd12b6a61ccff81cd7dcf7f56840ca0554027ec2", + "value": "0x0" + }, + { + "key": "0x288581f952e2ccac6b54422d31fb774d96f8b8e7165e763a066cf1282cc3ac4", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x5469d82f56b590f961646a3351b656ec90251d9ac55964776f1082fb95f8eaa", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0xeee70d5b14ded802a6706ddd6b5a82427e6b1f5fde81d1e3c2b93d0995d682", + "value": "0x0" + }, + { + "key": "0x39679e58cc9c87c82b69382cb81b6e7cf1180d3f6ee9afbe8e20760aff9fbcb", + "value": "0x2" + }, + { + "key": "0x4f4694fba013a65e999405a549e88d95695416ee8e6907d2bf7813398251f62", + "value": "0x0" + }, + { + "key": "0x2a9c186e84d510e8463f2e52bf35eecd04594cd618dda77c7b74d0a737be8a0", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x3342189cf89bb920fa98d170375ac593929ff118249d9eaaa57d1413937611d", + "value": "0x0" + }, + { + "key": "0xab6541277f91b59b13483208f53b9a51aa6313a0a66b94ac97888bb55bfcb8", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x24641334eddce9dc036fed88675927594fca0cc8f9a62ec6d3ea29954e5375b", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x3cf291a9052d9c9693f7ddcdbe490e3fe7ca31d4a5202bd3b6070e7c46fa1cf", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x18bc777dfccf5b8074f358c7b0d8a5b870483f0693766fb338837c781ecea65", + "value": "0x394" + }, + { + "key": "0x1870dd5f9a883cb72f2377632e1984ab047673705781ac7ca4e4b078c93e51d", + "value": "0x0" + }, + { + "key": "0x3419531350f77b82cf6b9e12548ffca6ef4135b0fa2b69d80705d26939b4a26", + "value": "0x17ca" + }, + { + "key": "0x396867fc6f1a9a5ad7cb75f9cc6feaf989e1c1e76ec75b66cbd1b0c6f9eec86", + "value": "0x0" + }, + { + "key": "0x277283a4de97114e6232a2ba63a3be8ba378517c2911f247d02fee82ddc1ea2", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x4f3717b124a721a81381c4a966e55711677aa1a8dde602ccf6da4e09abf293d", + "value": "0x0" + }, + { + "key": "0x6886686c64c7b51d09b34eaea221ffee918b12b95164920dab77e70dd8af7d4", + "value": "0x0" + }, + { + "key": "0x2f7f8e090cca351ac07e3ed45fe2c65484c795a14d6eed91524d02e5b806e6", + "value": "0x0" + }, + { + "key": "0x3b2365e354a45df478f848db2161d8ce7210ef8ddd0e9f686c386b3b7d62568", + "value": "0x0" + }, + { + "key": "0x781a345fe29c8cdf61348a23ce808ba906c52855c465456f94a91b248d854c7", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x583d45a5beff4d62ee80aa7a6a5f474e966e04ddc6168b9892463a24281e7fa", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x15a8a0a75354ffab97d8833b389d7e23d9e0692168efcb4e60d1d1400752b92", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x39c0a6fe7208b664f84f6e18792b9bc50caafeaa92c331a77dd422b4f2c466", + "value": "0x0" + }, + { + "key": "0xfdc767433dec128ec07175c7e5787fd4e840a3e7998f4809a44f2120d7cd15", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x16663558bc446c25ae4986ccbe04be16a717ac2154c7c6af18e4d06deac7187", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x22b7c65638d159778a44f21608e4ff31f4ee8107ebfa8c1051e062d2bd96e5c", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x34080a40f755bce984c74dcbd732b85255d96ab21ed8efecf0dbdb60dfef220", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x3eccad1481708816c7712ae4b6294b48c6ba0998274b380923d154513d70720", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x4c1023ea260b43640e851738d07411e5d4de825e0f5388a73fdefd75833e1ad", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x5361bda1c7cad5e641a08915d74ecf572bc78be749f1b199c39bb28270423a8", + "value": "0x0" + }, + { + "key": "0x4bda9574af5438b62a9c46ef99636674f773992a839cf66f02cd38bb8ac87bc", + "value": "0x0" + }, + { + "key": "0x4ec700e3b22f59f721c0737b425cbcc5471c7e97ec0e75d0f967ed592cd5b1f", + "value": "0x0" + }, + { + "key": "0x1ce4b2bef5e890f91b24a0834639687f8904f496faed4506c75bf3fa45c912", + "value": "0x0" + }, + { + "key": "0xc3c3dff8dda45a41ce49d00207bb791ebbba8a87cd1b9255b4f8f49bf2ee0b", + "value": "0x0" + }, + { + "key": "0xece6f883208c6bb6cf3825243d83b955855e9af91831c255fd00984653d067", + "value": "0x0" + }, + { + "key": "0x4dc0d6ec16706404f082ee99a759979b236fb8d74324dee82d0975d1414e26d", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x4e7d2c0dac739a8789b21f7556cdb092d266b6736ccdc142d1d307a887c1f26", + "value": "0x0" + }, + { + "key": "0x633a8dcbd9538cb0739a63a97acde180870bb0dec9ca65078998aa73c333c77", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x734bd71c044e7499e1388f97d9c054f43eb3e35b9bf60f74326ca21d1b9904a", + "value": "0x0" + }, + { + "key": "0x5c98ac4d5d78159617b6dca0ebdb29cbb113c7fe65d4fceed6d0ea69cf6ded4", + "value": "0x50f093130645a4b406e9ef52a565c6c89f262f18266c599f0942b0879d2fcd9" + }, + { + "key": "0x34786ffb66aae700d3ec98abc95aca53907107ff414842488663af9bd793d4a", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x3a261e5c4140d71a9f7cf6640aceee55ee985d8d788296a4712afbd68951f05", + "value": "0x0" + }, + { + "key": "0x7746b29fb4208608411839c5f8ad8a20dc619aae4fdac50ebdd5905727a2f65", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x4febd03784eb3ad8292802ec693c9853aaf3c7c60b1f3321d797b660cc1fa64", + "value": "0x0" + }, + { + "key": "0x7e5235fed6e4d5d060945ec740021a9dc687f98846a054ddb191028578d6d52", + "value": "0x0" + }, + { + "key": "0x568918a267c201ec152432c82f616887167012d9fad936f3914f64228e086ed", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0xf101588118ed61047d3c2d5ba1a518fcbd8873249fd0b96f4bd22ffe0b4775", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x1d9e685bd80fd0dc66a9ad612fbec6e51ebd659b498b71044173333870ae71c", + "value": "0x0" + }, + { + "key": "0x71a76ed62f93692f5f9368960f57f144cda5e69eac8aee31907c0dbad9aa420", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x781f0ea331ea4164a0cf881b1e63194c30194ae5e3ea8bfc0ec84eb2d3ee107", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x3c8315786938e4b384cf66f9e2be95657e55b5003b3b9a76d276bbf9104a05", + "value": "0x4287c246c2f2389fccce0a2706b61dd9c010695ecb7994f64db0d731dde82f1" + }, + { + "key": "0x1ffbbd62d394821268e080f79b1a69b0116e3e169114f57775432d9444a2e0d", + "value": "0x0" + } + ] + }, + { + "address": "0x50f093130645a4b406e9ef52a565c6c89f262f18266c599f0942b0879d2fcd9", + "storage_entries": [] + }, + { + "address": "0x48f85e968fc39f5d060d62b73f1ec721ca15f7f0f0db5214abb7a4094f320ed", + "storage_entries": [] + }, + { + "address": "0x6bb8b6108fe2b5df594c81b616a7dbc427c9b035e2b7d5d615caeffb0d43dd6", + "storage_entries": [] + }, + { + "address": "0x1aef647305d8fcdebf80b5df1c3fe90dc73e655c1bf002ede56c77cacbd1ccf", + "storage_entries": [] + }, + { + "address": "0x2952155b01ce465a4814d48d40769429ae5f7656714a1d278569c5ec0eb77be", + "storage_entries": [] + }, + { + "address": "0x584ec3dd754842c8c989447d164e5025a5472c3118d876ce5046ffaad7930b3", + "storage_entries": [] + }, + { + "address": "0x5f7869e122ab4f9b540b5ae2ed2be89dd6942589e67564fd99ccad214fd241f", + "storage_entries": [] + }, + { + "address": "0x2c7c7a33d9e897d9dfababcb1d0830a62a3d6aa81d72d2c3179ca343f4fe364", + "storage_entries": [] + }, + { + "address": "0xda114221cb83fa859dbdb4c44beeaa0bb37c7537ad5ae66fe5e0efd20e6eb3", + "storage_entries": [ + { + "key": "0x20c6d80f8eefd7232e13b70fe569c826f5374898d526b7954b8a22dd824a87a", + "value": "0x0" + }, + { + "key": "0x2de7ac669936cc3b4e9784ff23826dc9056c74d54d3f41f1b0d28b36966369e", + "value": "0xe30d4fc755c824dc3b3" + }, + { + "key": "0x3ea6c462e71f0729ad5065fb1ec223eba03428581e55483ea31460c765617d", + "value": "0x0" + }, + { + "key": "0x5dc24f22288195e83cb53382e4bd0d035166b4a29c85422270cd9bee19f2e9c", + "value": "0x3d5f356313c208cbf14" + }, + { + "key": "0x28424ab1e5a1b72ef45e34ef9d955931e0721623afc53bb09edaac96b5bb54d", + "value": "0xb16289be60d9f36b97c" + }, + { + "key": "0x1727959ffc61af4f1ac7048675a680562826825924160a0fa211500787052a1", + "value": "0xca55178227236178b2b" + }, + { + "key": "0x53b463fda8c13db92f531954c74c8c49ea2064b884c6056fd10f967356841a4", + "value": "0x167b4327483309f57" + } + ] + }, + { + "address": "0x5a8d2fc91666dcf88447a4e4be49835cd8f1d82235e7e94315e186f8004109c", + "storage_entries": [] + }, + { + "address": "0x3d2043810dafc87a47c865ff64ababe974ac777e1eb2eef5ea79c57de630cd", + "storage_entries": [] + }, + { + "address": "0x338724b89122b27c1d639c4e1ba54725af2ca038e70a5a8e90fcf86b06aff80", + "storage_entries": [] + }, + { + "address": "0x1e422d86a44ab9441489beb2db6049813c6a1e88935367c32af7262e18f23f2", + "storage_entries": [] + }, + { + "address": "0x74e2a974dfe277107b741daa34216f2927e009e9dd24d0cc651f0cd339a8f06", + "storage_entries": [] + }, + { + "address": "0x60391c8d5226fcfdc7cdf1c57a88574844db9151dba51981d50ac9709b71e9b", + "storage_entries": [] + }, + { + "address": "0x54bf278afcc8cd465abe6f324d0805600a8138bd812d204cea89e84bbce20b8", + "storage_entries": [] + }, + { + "address": "0x4c874b2a46fac31d629ab318b1982dec1098eef8ed0c8342b1b7226b0082aae", + "storage_entries": [] + }, + { + "address": "0x7f43b97463ef083970f8490cc39166d93404824f9e8b9a40a7005cc01bf1116", + "storage_entries": [] + }, + { + "address": "0x29888b3c917674616985a54b5274a2b1a04393e82aedc24c25891474b56968", + "storage_entries": [] + }, + { + "address": "0x1f323f00c8cb6ac46ac737c63fa35332cb8570796ec58c0a9d5588eee8e8e34", + "storage_entries": [] + }, + { + "address": "0x7c3b3761ed0694e8b59d5b4c523cfeedb46ee8f50d8d647e65f122d608dd2e8", + "storage_entries": [ + { + "key": "0x24ee1c18b1b79995ab5b34190c3988d6a20f2ae18bc1149482c1c010365cfe7", + "value": "0x5c06135402b962b68" + }, + { + "key": "0x29e06b4505425c62802892fe9899e0e63b20cc223efce84b46c82289c68add0", + "value": "0x5c06135402b962b68" + } + ] + }, + { + "address": "0x20cddb33dc1001e5a6ecbfb3bb019d7e446385ba995c0996e165668966bb97c", + "storage_entries": [] + }, + { + "address": "0x5680082063ed35617ba64222f8d47117461eeb7936936dce71095ae7fc5f637", + "storage_entries": [] + }, + { + "address": "0x63ecd18f6faa6beff2885ed2f7140052a2aae8cdb073e0f1431975b5e9aa9ac", + "storage_entries": [] + }, + { + "address": "0x6707675cd7dd9256667eca8284e46f4546711ee0054bc2dd02f0ce572056cf4", + "storage_entries": [] + }, + { + "address": "0x3d837aa354c5170ace739da9f1868958ef152749fd0cf2cd209669b813d676", + "storage_entries": [] + }, + { + "address": "0x3ed86b38abb1af8b97d8b3fa1aa4298d5a7eafe303181ba234adf7309236e34", + "storage_entries": [ + { + "key": "0x749630607f3322945b11290ac0a88d79a2b148f9eb447b81afc39119b49ad32", + "value": "0x3eefb1bad5af42b" + } + ] + }, + { + "address": "0x1814eace3b035a6b64424eacc3563d3675ccc0bba3c5df1a9c5aacecc8e32d7", + "storage_entries": [] + }, + { + "address": "0x360f9786a6595137f84f2d6931aaec09ceec476a94a98dcad2bb092c6c06701", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x1e7e8df334" + }, + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x7808ffe4" + } + ] + }, + { + "address": "0x1f9578157483430a512976f0dc21de8f9bc3b92d7445928e9df63ba3e3c84ef", + "storage_entries": [] + }, + { + "address": "0x5801bdad32f343035fb242e98d1e9371ae85bc1543962fedea16c59b35bd19b", + "storage_entries": [ + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x17928e6010" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x192b027" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x664321b9" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x178063e8cd" + } + ] + }, + { + "address": "0x65dc25f42afd66e2a5c13230ce0075d6cd44683afa73329b85b71448cc877ae", + "storage_entries": [] + }, + { + "address": "0x7fa03960a0bd2a5139fbc74ede86fea079d54d7df2799da7886407dfdff0ecd", + "storage_entries": [] + }, + { + "address": "0x39aa937808f4a098a0825172f73b84239d83b7a13fa63b3b537af39abee4bff", + "storage_entries": [] + }, + { + "address": "0x7662487addaf6da4271d0af2ef310872e3489c8404f173b464b877cc429051b", + "storage_entries": [] + }, + { + "address": "0x39877a272619050ab8b0e3e0a19b58d076fc2ce84da1dc73b699590e629f2b8", + "storage_entries": [ + { + "key": "0xaa922203ee4b297236d9c6243be62c257a44732f5e835948e66942d832e13b", + "value": "0xd141db262c2f87346fe70" + }, + { + "key": "0x6e28b413d1a0ecba18d7909ce89ef8167a47da7dd08252d9ba1751ee4b86eeb", + "value": "0x0" + } + ] + }, + { + "address": "0x1f78042ca65d29145ba4f54cf0c0631c1f5933c48648beb18e062e31ad642c1", + "storage_entries": [] + }, + { + "address": "0x5d8295acc535136cd4053873e701de4a7f881c8a820b763fc384bfc9d128104", + "storage_entries": [] + }, + { + "address": "0x33fe9e5ef69200fe764450fddac77f6b48c0b92111fbba72862233d1cbdb35d", + "storage_entries": [] + }, + { + "address": "0x6d252051ba1c22d7bcd6a625ae2e6729cb7a4d911f2a3a7c293149fe3fca01b", + "storage_entries": [] + }, + { + "address": "0x4a07322bb3ef7daa549cc9f43c23678e0f6d4d2ee357c17726dff25b4e73a3d", + "storage_entries": [] + }, + { + "address": "0x1a929b947cb5dcf7c1c25d4e231a58d843489ff1f9345bed38da00181f48f5e", + "storage_entries": [] + }, + { + "address": "0x248ff122648be7d6a88a66e4b57151460164fd958948f18637c8aa0f049da3c", + "storage_entries": [] + }, + { + "address": "0x53c91253bc9682c04929ca02ed00b3e423f6710d2ee7e0d5ebb06f3ecf368a8", + "storage_entries": [ + { + "key": "0xb5311b97477466dcdc360c8c4fe96e478c684872f76c6a818b5768004a4947", + "value": "0x23ed62a523" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x738ef1e48e" + }, + { + "key": "0x6dbc4ce2e1a60da6c8fdce487080c1f83812201d9de8f62de8cc51ac39ad1f5", + "value": "0x8ff1f7" + }, + { + "key": "0x7fd5fa01fb06fdddf91ac556bd7588c8a154b96ab1f940b47e6b20187389f78", + "value": "0x606bf89e" + }, + { + "key": "0x19e260240475f57869942e6928eebcf94f0708c876c45549b188a2a52b05a1a", + "value": "0x0" + }, + { + "key": "0x1f91dee9dc4c6966475385c9741200d7f6e62dfc34a8d0888f5c69ea8767ba7", + "value": "0xa7df6ad65" + }, + { + "key": "0x168e06589ed1429d749afaa1281b5f9e74a4cc19fcf352103f8fa7bd582a3d4", + "value": "0xa60ad41f1" + }, + { + "key": "0x5d60844623fa059917325a41414939015b6fb19d226a17a8ca46d9232f87edd", + "value": "0x41b8897e" + }, + { + "key": "0x3c33860d274b2b559e71c6190a38ae8aedda95366387155c63d55b1f028d4c2", + "value": "0x4e2b82c66b" + }, + { + "key": "0x1214ed8862ba26815a7fa616e362aa1fcac09313a1a8ffdb6afb1eecdc927a1", + "value": "0xf43dbb7" + }, + { + "key": "0x502e6ad66b2a877d2aad45b2bdae767a4efd99731f00cf1efd1241999713a92", + "value": "0x2cbc4b" + }, + { + "key": "0x2a1c67ca73fbd7d6147f11aae0de7b3919643eeb5d3a1b0a1da6c151517301a", + "value": "0x14f30e9" + }, + { + "key": "0x61cbef861ce2c6eac4931f540acde76aba2a4b59545aaaf66f8be4847e2e029", + "value": "0x1520db6" + }, + { + "key": "0x2f91121a0e63b29dc1d6a4afc3a3963209345391a124869e657665e749659ac", + "value": "0x17928e6010" + }, + { + "key": "0x38b3fc28caf111e1b7878a53a33a729bfb6e5a3585511f3aef45d75896a2023", + "value": "0x166cfae" + }, + { + "key": "0x4dafd156dd2bf6992caa16926e44cc71a36a9162b2593db8d3e97b52bebbb03", + "value": "0x179df3f" + }, + { + "key": "0x1c0d06bd7060fec0ae69b82cb9dbed198512b21e28f74090aed0092ad8497f1", + "value": "0x8481509e56" + }, + { + "key": "0x5203fa66d9558d636cf0f9c3db59e62dc03f4808b5dbfc50cf74920731e5d6d", + "value": "0x55ea57" + }, + { + "key": "0x47e1fab8f527e4efc9d93a4e6a5c4d74414c927acbb2bdd51faf5d891d686c4", + "value": "0xc98e1b" + }, + { + "key": "0x6430116fe34e45414893a9e23c18f185d42c6e5b8b8c8c083bd5bbe4eb94e49", + "value": "0x43082d08c" + }, + { + "key": "0x243c7f07427c0f6311fa3bae40f9bbc1eb097e285bc98164ec89be9e1552f66", + "value": "0x8aa6b7" + }, + { + "key": "0xf924afb546b1610b85a8633eb46e40ac5940df0d1a668f6054669dbf42cea4", + "value": "0x400c049c" + }, + { + "key": "0x4aa2885ee95e2eaf83fcdaa59539ef9301372e916bc2419274d92a453c2b422", + "value": "0x75954f2caa" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x121bb0e77" + }, + { + "key": "0x496d7267d8a8ec7097e4eedb6e9c3913912a0bb22f77d302b051e6e573637ee", + "value": "0x100b56c8b1" + }, + { + "key": "0x52047ef3504efd6231ed593e742eaa7ecfb3114fdb831dc481a353d99ecbde1", + "value": "0xf4d509" + }, + { + "key": "0x32b518a550e788c1f493cef8eadf5af951e34ec41cf62ffd16d1c102844a365", + "value": "0x29c442c" + }, + { + "key": "0xa38e2098b8084e1a7ca72298ba107c94cebbaa03460e4695e2062fd53d2498", + "value": "0xa569e0f403" + }, + { + "key": "0x4afd67fee30b877d9582d6e226231f86b86f4499685eb21b74d425314b452b2", + "value": "0x1d2ac" + }, + { + "key": "0x17e2248d0fdc1039965781bde897aacfa131503d036338498c9d735bab7408d", + "value": "0x31c7" + }, + { + "key": "0x736310b8be24975099b864f404ab2e32f4cf95054ec8ef67568669c0cfe83c6", + "value": "0x0" + }, + { + "key": "0x7972eed64137831abd0d9b351e81a32810d530691843ccb1a5fdd955356447b", + "value": "0x105c256f" + }, + { + "key": "0x6be031011e8672541a00e9b255a549ad5f3c0942f1a0f9132cc9e24c29d2499", + "value": "0x1cc5e2c" + }, + { + "key": "0x7f0a3ff0244b195ae2ec1dbbc99bf7879236f8dc4e72c5709da87736266bfd", + "value": "0x51db41f01f" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x75af32ab579" + }, + { + "key": "0x4b326b562d44622ece8953e3c980e1924325ba988613e49255cb8640af6ca07", + "value": "0x0" + }, + { + "key": "0x1bff8c50a5584fb1238a3e05b95b80b366ff85cc15268676f16651b2c922129", + "value": "0x37816bd07a" + }, + { + "key": "0x4d82998aa3d8e5173bfc632d048e555128ebde2d426f3235d8d67e72235baff", + "value": "0xd282e625e" + }, + { + "key": "0x27f42a3ef2acd3a0497924234e496684b6310b48d0287feab3dc6f42efa8d66", + "value": "0xffffffffffffffffffffffd8278c4ac1" + }, + { + "key": "0x18d7b079b471cfde70d671fc55b3c06d4363cdc22201c09924822902a33e019", + "value": "0x1cd84c97" + }, + { + "key": "0x10e6412bf64661fff83480659d3146a6e4d19c14c536690eb9093235f1b4e89", + "value": "0x12e997a2d7" + }, + { + "key": "0x7e47c691b5511147047b7b0aa8e55e663c0e6775ddf34386a0333a23106e5d", + "value": "0x58a6cd4" + }, + { + "key": "0x6fd7e93d009f1501741ae3106190c636e4e15283f16727fa0ce1fe3185a7e26", + "value": "0x2d357ea42" + }, + { + "key": "0x716092479f8edd30a77b766defc11b7fb60a4e26eff7e58a4eb082bcc773d50", + "value": "0x65a6" + }, + { + "key": "0x777f0e1710e357690aecd18915a011dd4d655298b8b92393343b980c0ab5358", + "value": "0x659f9538f" + }, + { + "key": "0x36c31e8a578d3caaea670ad94ce584b4add4a9051d94fad1ac4b6b0cc3218e0", + "value": "0x61df0332e" + }, + { + "key": "0x3610ba5f90fb9b7e6727bbe2dc5b08b40a4e7bcddc65b02e1d57ccdbf1fc13", + "value": "0x2079a0" + }, + { + "key": "0x49a8ef79cab313360767015d427d0307368eff5c2c81b019aff018ec638eef2", + "value": "0x48d8eb7433" + }, + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0x172c98fb5b8" + }, + { + "key": "0x35d7d7242eff6e573b33f19f0e7817038ac0f4b7e3c922d6022c89ed14dd460", + "value": "0x783604643d" + }, + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x3063f639" + }, + { + "key": "0x2f08f4b1c0b6b4bfc560b99d5c13d3660831a3d6fd5fc8423f37a7dc77bfb6f", + "value": "0x3834c611a5200" + } + ] + }, + { + "address": "0x14b5e94bda1421d55e930b45fc9a5fc6f246353c400e84fdba8fa843f8cc9fc", + "storage_entries": [] + }, + { + "address": "0x271d6be9971ac7f8502348820708e84d4ee50865aaf47f306cc9ea60736a103", + "storage_entries": [] + }, + { + "address": "0xef9f3b1c40af7e66094605bdf8574bf6593700f246ced34f43fff9c33e4d75", + "storage_entries": [] + }, + { + "address": "0x5a6e6e55bd8980fc2d8ebda12e948125d30b9fe3867a495aa78375f069caf86", + "storage_entries": [] + }, + { + "address": "0xdb9ab07d3bd7fd6974852c8c485648da3d26541a7446f16efd176fe19101ca", + "storage_entries": [] + }, + { + "address": "0x377c2d65debb3978ea81904e7d59740da1f07412e30d01c5ded1c5d6f1ddc43", + "storage_entries": [ + { + "key": "0x58a82871abcb200844df53ca49259ed55b155d5d08692f9e8b52f0a736611c6", + "value": "0x2" + }, + { + "key": "0x7c5de69826cbabaa8fa9f10afb02986e6319ae35c81a59a44532f2dbbbd5d19", + "value": "0x4824d37cf12be557fa46f624c561722952d64d045abee90d88cfe3e36c710c3" + } + ] + }, + { + "address": "0x71268986e3c2339fd68d2ee6bbc8868355504c29b91ca9779d2f3bc5296c46f", + "storage_entries": [] + }, + { + "address": "0x5a2b23cf18135d8eeb36479d2ecbff086c5bcc9565d79a6fd53438c5c423927", + "storage_entries": [] + }, + { + "address": "0x4e32ec7e71519d5961beda4fe900e2319f34797c2ce3b6878ebe1c77377d922", + "storage_entries": [] + }, + { + "address": "0x761bb41dd866bc729fcc11c359f247b9cc2049b327336cb133cd3a3c219b477", + "storage_entries": [] + }, + { + "address": "0x4df1200afcd103cd6261542a41eb14a68ce1bec6a6b2cafc36a488e94b59779", + "storage_entries": [] + }, + { + "address": "0x5c845591f684f34689c8ca55d740f42cbd55f68f915e1626052825e1dbc0970", + "storage_entries": [] + }, + { + "address": "0xd5b42d36d5d046364607a1ece1608dc28eb14dccf92e4429f87298fbe5d4b4", + "storage_entries": [] + }, + { + "address": "0x191c1f5b2180c63cbf02ebbe85a82e6ea5ddd189fcb0334ff4d6c62f41d6c30", + "storage_entries": [] + }, + { + "address": "0x4baf0721eb6526b4209f530aabbbacb897f6fab7e4bb7aabdda57cc2a41ac7d", + "storage_entries": [] + }, + { + "address": "0x1c381df6357df3693eff7a541a676a100375859ee1cfaf23e12586ad09dbd04", + "storage_entries": [ + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027f", + "value": "0xa7df6ad65" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e027d", + "value": "0x84af51fb9d5d8dc3400" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0281", + "value": "0x664321b9" + }, + { + "key": "0xfc7fce0137ef0fdf47d2297ba791a15d3f3f1801dc7ef0b2aa311ad5d4034c", + "value": "0x15e40ac6ae75b855f5f" + }, + { + "key": "0x29904f220cd5d7c3928339c9760e0459aa13e8f35214b3e510f51042a8e0284", + "value": "0x3c434d13e34e8b1b" + } + ] + }, + { + "address": "0x6e4d6390228e7241ccb475e8409bcb2ecdc444db9b3d78b7dee8bbf185860df", + "storage_entries": [] + }, + { + "address": "0x4c429b69d99ccd0bf1e4777c836f15ca6a7caa18aee4fa15d834f5fc4ef72f8", + "storage_entries": [] + }, + { + "address": "0x87a4f5be3027b0c040ea0e33ac216f7645517990ef8f640f58f268aea758b9", + "storage_entries": [ + { + "key": "0x5056ced584f9f4cb56beb5aa869675b460332c3943bbf3e128aef895126b979", + "value": "0x1" + }, + { + "key": "0x57da54fbfc517b96e9f27a283f0037ebd8eece8fe9a2f277051ab9d20275877", + "value": "0x1" + } + ] + }, + { + "address": "0x5bde3263870c52161a8f0fb0f19800358288eed67a05f0b49074326eb98a070", + "storage_entries": [] + }, + { + "address": "0x213c67ed78bc280887234fe5ed5e77272465317978ae86c25a71531d9332a2d", + "storage_entries": [] + }, + { + "address": "0x774abcdbcda119da498dc21db97f816c3a8f4a95a069c03a3db0f3cefaf5602", + "storage_entries": [ + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0xd36f9e237e00a205" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0xd141db262c2f87346fe70" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x664321b9" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x5ed54e89648" + } + ] + }, + { + "address": "0x41e4544106ed84a0276c5e8ae5436af6a568c19317205f9509f77da4d556e3c", + "storage_entries": [] + }, + { + "address": "0xdbb4c502cc99d81230c9b1185f5c620ddaf4eb68827b56a6bdda7c1dfdc33a", + "storage_entries": [] + }, + { + "address": "0x45e7131d776dddc137e30bdd490b431c7144677e97bf9369f629ed8d3fb7dd6", + "storage_entries": [ + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x664321b9" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x1c504dff34" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x241bc52d3babf398f" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x55936ce3a1f45f" + } + ] + }, + { + "address": "0x7e2a13b40fc1119ec55e0bcf9428eedaa581ab3c924561ad4e955f95da63138", + "storage_entries": [ + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x11aef699098cdc128" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x664321b9" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x162a90277e" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0xca55178227236178b2b" + } + ] + }, + { + "address": "0x2f9759ec4c8c089ac481e1b791bec65b4bd1b3aa3128330e9301c6233fb6f61", + "storage_entries": [] + }, + { + "address": "0x47ad51726d891f972e74e4ad858a261b43869f7126ce7436ee0b2529a98f486", + "storage_entries": [ + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0x4c0a0209185" + }, + { + "key": "0x48be3692ab3e9e8bd4a134a7b958b4e69bcb00a71d4f58c22f9311921f12bcf", + "value": "0x39f84a394" + } + ] + }, + { + "address": "0x1183c2675825b5707491a6f2e8973d1a10d6648e534c7ed19a89f423567ee9", + "storage_entries": [] + }, + { + "address": "0x411c2a2a4dc7b4d3a33424af3ede7e2e3b66691e22632803e37e2e0de450940", + "storage_entries": [] + }, + { + "address": "0x79dd521cc08105684c9cdb37c33cebda8b563f8194fb0eaa54d807c92f129b8", + "storage_entries": [] + }, + { + "address": "0x47818ee28928f65956d5abafd502b6c68ea9b52df2140341f5b0a513c170b9f", + "storage_entries": [] + }, + { + "address": "0x4d0390b777b424e43839cd1e744799f3de6c176c7e32c1812a41dbd9c19db6a", + "storage_entries": [ + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0xa92b046ec1bbcf981" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x56cdb4ca458c99" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x8481509e56" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x1a5c253e6af785" + }, + { + "key": "0x723e3220883adf5896f59ba1b425c031b50a33bd4ca6b57889095f712109d1a", + "value": "0x0" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x664321b9" + } + ] + }, + { + "address": "0x2a28036ec5007c05c5611281a7d740c71a26d0305f7e9a4fa2f751d252a9f0d", + "storage_entries": [ + { + "key": "0x21c89dd1fd2dcff4776d14cf7c046ef80164705cfa31babc96e429a9e09428e", + "value": "0x4b27a4f5b7bab2fe4" + }, + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0xc44ebacd7305d18751dc" + } + ] + }, + { + "address": "0x400d53e74cb235968f1e3fe3ccc6e3512dbfb2632c2c8e9e79abca4fa01414a", + "storage_entries": [] + }, + { + "address": "0x2965f4a3f2973650da8bfd28de55d7d3f5e8758ce2d37784ef4a05adedd04d5", + "storage_entries": [] + }, + { + "address": "0x181c466640bb8309046088968d9f40ad7184792c3836897da36ab8a171ce54e", + "storage_entries": [ + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x664321b9" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x11d88bcd61e386" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0xc3280ebaa7400d4f5985dac" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x4dadb7ea9509123a" + } + ] + }, + { + "address": "0x4aad29f635be29ce955eab9b488ff920be63dd83ff4d581f873890bcfaa923c", + "storage_entries": [] + }, + { + "address": "0xcfd39f5244f7b617418c018204a8a9f9a7f72e71f0ef38f968eeb2a9ca302b", + "storage_entries": [ + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x43082d08c" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x664321b9" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x3d5f356313c208cbf14" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x27b55614247d0cf8f" + } + ] + }, + { + "address": "0x5ae048a93936c77b8f2525fcd5b7a867cadf23ea33c922c05d241e72c003be1", + "storage_entries": [] + }, + { + "address": "0x620102ea610be8518125cf2de850d0c4f5d0c5d81f969cff666fb53b05042d2", + "storage_entries": [] + }, + { + "address": "0x222da647ad05611bd04d7493b420ff7504715211950154c71339ba79500ad71", + "storage_entries": [] + }, + { + "address": "0x3ccba12965a96dd6470b11a0b3c1c3ff12bc107cedbe3b03aaf92424c550995", + "storage_entries": [] + }, + { + "address": "0xa0948ca0fde3dfcbbdc87a41ae47f906271898e5dee225535a61196b789704", + "storage_entries": [] + }, + { + "address": "0x76def79cc9a3a375779c163ad12996f99fbeb4acd68d7041529159bde897160", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x48f07fc92cfb3a61d228" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x189f5472f75257a74d9f6" + }, + { + "key": "0x502e6ad66b2a877d2aad45b2bdae767a4efd99731f00cf1efd1241999713a92", + "value": "0x0" + } + ] + }, + { + "address": "0x285aa1c4bbeef8a183fb7245f096ddc4c99c6b2fedd1c1af52a634c83842804", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x4ff0bcfc9379f20c" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x19e4be8" + } + ] + }, + { + "address": "0x21d71ccbeb6f76437cb06cdd3e09fa91975c38b0fb17b57e6691fca13d270e1", + "storage_entries": [] + }, + { + "address": "0x4c0a5193d58f74fbace4b74dcf65481e734ed1714121bdc571da345540efa05", + "storage_entries": [ + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa13", + "value": "0x34d3a18de8b" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa12", + "value": "0x423df9fe3b10f6f3564e9f" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa0f", + "value": "0x35ca87d9c0b5f232c486f2c" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb1923723039", + "value": "0x87d5833ae233f608865e6" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb1923723038", + "value": "0x34d38d8bc49a96043d5c554" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc1f", + "value": "0x664321b9" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc23", + "value": "0xb09df7cadb76b77e625a2" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb1923723036", + "value": "0x664321b9" + }, + { + "key": "0x72f1dc08c861339dcdba8658ec7a2b1aea53e0275e748cc40fd1ddb0e820e2a", + "value": "0x664321b9" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa11", + "value": "0x2ed6c6c286c45d5243ff9d" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb192372303a", + "value": "0x173df148d13b4ccf89be8f" + }, + { + "key": "0x797c575e63bc9e50f7981e5ff0f7a06cfd0151593a9a80bae71f3a9eb5c788f", + "value": "0x1000" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa0e", + "value": "0x664321b9" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc20", + "value": "0x33b8a34a506e1a9c3b62b39" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc21", + "value": "0x33e9369cd947911c7b2225d" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc22", + "value": "0xe243af548f9e892eaa1e" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb1923723037", + "value": "0x33e9f9c3ce5af59f08999f2" + }, + { + "key": "0x6a6227deacc323fe292a4a3882deec112fee3c40224b52601d6d9d8e0b4fa63", + "value": "0x42cf214" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa10", + "value": "0x36bf7760ca6c233c0208c3e" + }, + { + "key": "0x5ae0913ac570a53d22ef83fa9ff26863623d375154aa47894b9798f441bc3c0", + "value": "0x0" + } + ] + }, + { + "address": "0x3e9593a603882b4bafb54f0e92f318d65cd21027a7cddb94503179aa4f0a093", + "storage_entries": [] + }, + { + "address": "0x60db27f1ca3465408dfa5653365708b56b5c8d5bbb554dbe86c4965874974fb", + "storage_entries": [] + }, + { + "address": "0x2e118b4a71db6e9fa6a8557466040e836fd3b1c53a54278d8e27ac19470251e", + "storage_entries": [] + }, + { + "address": "0x1114c7103e12c2b2ecbd3a2472ba9c48ddcbf702b1c242dd570057e26212111", + "storage_entries": [ + { + "key": "0x2434ec9e252db6da1bc58a90c2bcef29de3ce0c41c7d806050e37043cb4eef2", + "value": "0xd0f8d9394ad0d2f07c787e2dea35dba7" + }, + { + "key": "0x6d88295dbdb03384d43973aa48b3e07e5ed170ea42671f57eaba0a4f4af0ba7", + "value": "0xc58050000000000000000051aae414afa9a6a0ddda57b" + }, + { + "key": "0x3c9713a9a6d03784e15e031ad863d14e31a860bab767b2a6f9f470af9cce7e4", + "value": "0xa4d813d0a78705aba86b9d3b6dc6fce8" + }, + { + "key": "0x10060fb554b3ccb720f4bd34f4f1a3c61ae980b921fe36e80db68a6c1556dc", + "value": "0xd2fb08fa65db6ab" + }, + { + "key": "0x658e1ab71c65933f08eb0fbb029bd7b0a230a42fcc913fbc8483545e7abd5fd", + "value": "0x712" + }, + { + "key": "0xb1178719d91f67190e8b6817e39bbde5c78d65658eb211fe81dbf30520bcfc", + "value": "0x664321b9000093e582af4100000000000000000082bb2840dd6b9547ff6e26" + }, + { + "key": "0xa7d435f413435a2b87c9fa963993e5c327e0a5f89c60cd22a10605d16a7d3b", + "value": "0x18e17f7f5543708" + }, + { + "key": "0x4e7fa96de2519272d6ded3565591b4b53efbcd88e9689d6b993570ec95e98f1", + "value": "0x957d90000000000000000000011f681da8d5a86a2a657" + }, + { + "key": "0x6643023024aadafbe9f0c16bc9c73c8b854ac70b389ad369aaeb36fbc7242c9", + "value": "0xc35b30000000000000000034a24ccb667ba1d5281f50b" + }, + { + "key": "0x6417e2f79350b2d33dd09304bd7353c105378fddba693f44560faddcf62df06", + "value": "0x1663" + }, + { + "key": "0x2f8219cf4a4287536707efb11917d68f111713153b96e78233b8a7d3b834ec6", + "value": "0x455b2fbaa45e1c51654212a2e2a369fa" + }, + { + "key": "0x4056f233e9a4a5f95caa7e3bec3f5f3c8f9a986a1af27ea946cf9374b142a74", + "value": "0x1e25fc24623c37b1013e32f1512d74dd068" + }, + { + "key": "0x627a1a855a33cd27bd22a0781be1b2e06d852d00a428b3980e8ec542c76e02a", + "value": "0xbb8b110baeb8f33da6aa7cf25f0ab70d" + }, + { + "key": "0x3a8651c5f7eda965d83ac5cdfd042c739e3b55b27ce608d8a582b69821a041a", + "value": "0x9abd1bc749113258862" + }, + { + "key": "0x2ec5ab237f1435327ce0f7fc150f2cd8eec8aedeb790d642d442872567773ff", + "value": "0x671481ce41abdb7e145797e7f0" + }, + { + "key": "0x2db691b34d3849d60a99a2a609400bc1715466fcd22850ca17b18904d5aecba", + "value": "0xa8a1d000000000000000000038959793da2600792c3fd" + }, + { + "key": "0x6417e2f79350b2d33dd09304bd7353c105378fddba693f44560faddcf62df05", + "value": "0x1a50bf2f7352ecfd607cee934dc16084" + }, + { + "key": "0x3042bf072220e4a995b8e234129fdeea33ab490dbf6c03c10404398e81905e2", + "value": "0xb4b6d87c2914bb" + }, + { + "key": "0x447b37f7da08cd380be83f8ae194ec7065953088d60236058a3afa8cf83d556", + "value": "0x53c0a8b8593dea648364374cff1109e6" + }, + { + "key": "0x46a6f242530bfef935293389614a072e0878ad7b2b637280a87945adc844189", + "value": "0xc57c0000000000000000005162bf197dda21f6856fab6" + }, + { + "key": "0x156f9c7abe798baad1c90b4ec6815a0865e1cc735b7777fbea3efc771f9bf22", + "value": "0x6bb9" + }, + { + "key": "0x156f9c7abe798baad1c90b4ec6815a0865e1cc735b7777fbea3efc771f9bf21", + "value": "0xcaf4dc57526c27284bff323c67a8ea87" + }, + { + "key": "0x1f5871d0cbc95a744af628c8de2175acc6b1ac5c527a3cd4f660576881397d", + "value": "0x9ebaa32164abc770178e93cc634" + }, + { + "key": "0x2fdbd7bb517e9a9e75f8d0b3ce856aef058efb7a0fc30cc4a46a19ddcb8ad93", + "value": "0x1ac8" + }, + { + "key": "0x20889ecebf032c83e44174bd6457730aff4f1e1fe1215837562cc0a5c6b2544", + "value": "0xc57c200000000000000000516444010617fe23e7ab875" + }, + { + "key": "0x599395c41835cd9a2e29c50e28a0ae23d0aca6686b7e0c69d9912b07f3b8738", + "value": "0x957dd0000000000000000000011f75705b56d04a6339e" + }, + { + "key": "0x2ec5ab237f1435327ce0f7fc150f2cd8eec8aedeb790d642d442872567773fe", + "value": "0x39368294818025e39794b47024683973b28d" + }, + { + "key": "0x45c94aebffe08861d453a50e3b15854f65e0c836dfa78a7f280050273e8ddba", + "value": "0x11b6bfdf9361db4a5ac5fb2fea5836" + }, + { + "key": "0x4056f233e9a4a5f95caa7e3bec3f5f3c8f9a986a1af27ea946cf9374b142a75", + "value": "0x2a0ff60a82d7a50400e3e2bce" + }, + { + "key": "0x559613ced40cc69dc647323430f5831b046a4ae1dec1c590c541e4c533ff574", + "value": "0x4c4cbb77c541ffb4ffb6ed859b1" + }, + { + "key": "0x372c431f0c70985e63d42ba4190fe1ca9cd717ef1eb3a25fcff6d1876ffbdf8", + "value": "0x3b5ed11fd365415ae877d66b1b030" + }, + { + "key": "0x372c431f0c70985e63d42ba4190fe1ca9cd717ef1eb3a25fcff6d1876ffbdf7", + "value": "0x24dafc4c85d26d67c757f41854fed80b" + }, + { + "key": "0x38ea634abd6689364491e06317656541f22fa1b64768e716f7773c2088a0757", + "value": "0x4ca30b927d8080fbdbd37c0a0a7" + }, + { + "key": "0x559613ced40cc69dc647323430f5831b046a4ae1dec1c590c541e4c533ff573", + "value": "0x55ddd0c151381038134337913a4b6dbabf" + }, + { + "key": "0x3f8a3b00a620f8e319e575ef1401c71d78e600f74a0a75b01ba945609cf5d1b", + "value": "0x664321b900016236a6a99c00000000000000009185406250a5545c66474719" + }, + { + "key": "0x4694b6cc4fa86e4d2115395d2a2946c1a26856fac7af865ec086538481764f0", + "value": "0xa8a290000000000000000000389df26057568925ff840" + }, + { + "key": "0x152d6c988f4ae3408e94914cab55a489ad3ff23634b5ee8002f5a1570668708", + "value": "0x664321b900018f63a89c9d0000000000000000392aba08952b62bdd9251bdd" + }, + { + "key": "0x38ea634abd6689364491e06317656541f22fa1b64768e716f7773c2088a0756", + "value": "0x564c2251a1ebb9169fc0a8e22de159a072" + }, + { + "key": "0x1bbd6bb65298716ec5c00ddecfa01db59edf2db90d4fd573d4271322b84cb4e", + "value": "0xa19" + } + ] + }, + { + "address": "0x5984c673069b9f5c44ccd078a257d9d3cd342955305b1cc0e514e1c9c62ffc3", + "storage_entries": [] + }, + { + "address": "0x12c3666b3f45d3ab63cae565f4204664bd1db88260456127863fad3874005cd", + "storage_entries": [] + }, + { + "address": "0x1e0eee22c684fdf32babdd65e6bcca62a8ce2c23c8d5e68f3989595d26e1b4a", + "storage_entries": [ + { + "key": "0x55a33869e536ca83789615a450fa2360925d05676d9803ad1f7a802e2eae53", + "value": "0x109c2c36960555a010064241" + }, + { + "key": "0x3e1862eca00a480293ea639afa480a0771cff1398ac7f3e69f9ec5b36811091", + "value": "0x1e34aa4bb61351c988491b" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x21b70c20e86371bb6f7ad7" + } + ] + }, + { + "address": "0x4c0978d7f0b348f82096a94ff67cb1e0249657b2cb2b34d1ca90c2081d4f227", + "storage_entries": [] + }, + { + "address": "0x3a6ec0b0ea7a1903329d5dec4bb574ecb4d6fdc206664e1c61eeded8158ab40", + "storage_entries": [ + { + "key": "0x329d5c26214ecbd2541ae271473c635b50ee9fa6f986b7f3e1482f1358bab8d", + "value": "0xc3280ebaa7400d4f5985dac" + }, + { + "key": "0x3727602eae5b11c1502b44e1f75577d29f992d7bc820381f22ee16661daa6c9", + "value": "0x1dd56feb652356c082eb" + } + ] + }, + { + "address": "0x43e4f09c32d13d43a880e85f69f7de93ceda62d6cf2581a582c6db635548fdc", + "storage_entries": [ + { + "key": "0x38403e49e7141c6bd0b6df7b6e9dd33aec85a3a5c746eef0dfb3ba13806adb9", + "value": "0x664321b900000000000000000000000000000000" + }, + { + "key": "0x10a6ed498cea50ab8a2e3f49b3c639966d9a1327b6b2eef421203b5b359894d", + "value": "0x446535f337b007f84aec" + }, + { + "key": "0x2203f85ea988a1d1e9535cb3e1869ebeaa92413b6e469550c315612f4a6f9cc", + "value": "0x1aefa66ef4811e00ea642af155880f9dd" + }, + { + "key": "0x60648f61481391ac1803a92eaa5009bc1438ef6e8d10598d265bf5829d312f4", + "value": "0x664321b90000000000043120d50baee098121fa8" + }, + { + "key": "0x10a6ed498cea50ab8a2e3f49b3c639966d9a1327b6b2eef421203b5b359894c", + "value": "0x1deec41e358c16b320b4688518839cca03f21fda" + } + ] + }, + { + "address": "0x50846b713e4aae4cb066f322dab6e4a2a381ce28764a23c6e18ca9b4d7d7d34", + "storage_entries": [] + }, + { + "address": "0x5523be94a7861e616f83f1947edd01db906bef2b6648bb89b95fe53f9bb0efa", + "storage_entries": [] + }, + { + "address": "0x2000e23393d2a3ce1e13b0ec6d333ae4f235eae3454a5a2173944abf70d720e", + "storage_entries": [] + }, + { + "address": "0x7350cc9b7d39ecfe652215410b2b6e0fff7809e49dadde4e5acc52cfa7769ed", + "storage_entries": [] + }, + { + "address": "0x2a5ebbe29e70647a2232e60d4a53b037d1a4c89ffc0472526f3ba646b369705", + "storage_entries": [] + }, + { + "address": "0x5a01606303636f456ac6eb511fdfeee42e43d9485b1b9c30556540395260f2e", + "storage_entries": [] + }, + { + "address": "0x41ae4dc9ca184f80d95aa96d78792a08a253e7fff9f055937489454d82b1f26", + "storage_entries": [] + }, + { + "address": "0x36960ac1943af9e26283e9da3a355262f852c5ca0be2e78c11f48d394d3e932", + "storage_entries": [] + }, + { + "address": "0x28c22311b9be6be0b55cdf2ac571acc1a56308a5e754c5a9e15c004dad9691d", + "storage_entries": [] + }, + { + "address": "0x59a943ca214c10234b9a3b61c558ac20c005127d183b86a99a8f3c60a08b4ff", + "storage_entries": [ + { + "key": "0x3ace8a2d501d0cc72133033060e292257c4f1a5f26312fc945d02c6bad5e3c9", + "value": "0xe1d7f21b40f42f7" + }, + { + "key": "0x49a24a7610bc1ad6ae02e25481b145976dc13c9be0f5547b93d55e80f55dcc4", + "value": "0xe54f750003366d4" + }, + { + "key": "0x44dff0be23dce03163b957c4e69a9767a4898e7c7ea6c4cf52d8f57d63ed5d9", + "value": "0x664321b9" + }, + { + "key": "0x6f993ef65ed08374ca714d0b18eceb7d7e1539d7d0512e142693bf7a486833c", + "value": "0x6d7dbaee440771" + }, + { + "key": "0x55bd64a08284f65eaa89fd5a81f307ed9c778e89b797992d4af620df1d9cca7", + "value": "0xde271153e2ab544" + }, + { + "key": "0x19e18c1634d953476fb79367c91e07b1145f7c9be31ba9ac430e44c49df29db", + "value": "0x1130425ddd4eb6f" + }, + { + "key": "0x25d5b0d8cd8b2678b7881d5e019ee95ad30f710f0322325dd141ac9f0e2ecbf", + "value": "0x664321b9" + }, + { + "key": "0xdafd05ed8e8edc1a76e71cc6035424f9a4f6848100a2cf666f9054805a8a08", + "value": "0x664321b9" + }, + { + "key": "0xb5da8588258cf59a9a61b801cb29947fe195cd2a4cf7029895d1841ed37793", + "value": "0x64758c11996f72" + }, + { + "key": "0x32cc2a5a8944344ae56ba91d9d48bb20837c23598d502ffaad2b9e1e112361c", + "value": "0x114ac0041fc2a4" + }, + { + "key": "0x238ea81375caa40a284a8582796dcca9aa9bb1cfea16b32d8430f25931866a1", + "value": "0x6b4bfd0c4a9c1b" + }, + { + "key": "0x4a31f49fdb9cb10e4c5f4318207bab1aa70548024c73b5a20a4828c1a4e9005", + "value": "0x748a3158e76bc" + }, + { + "key": "0x1ad05561d61ee79b7e2eea93c7dab54647930601d0fbc3d9ebcd6b61475262a", + "value": "0xdf49e0090fd8755" + }, + { + "key": "0x52e38798c4f7e8d89237707613307c6bb5c064e689f122560d4f45db4adfd55", + "value": "0xea1b0ef62dca87a" + }, + { + "key": "0x7f707060dc04e7a4bf0e4a5b3cc74cac753d9ff1a2997082a22fb3cf8eb237f", + "value": "0xdf0dafc2deedc7e" + } + ] + }, + { + "address": "0x2ed66297d146ecd91595c3174da61c1397e8b7fcecf25d423b1ba6717b0ece9", + "storage_entries": [ + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x42bbca84994e3eefd" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x35205c5f0" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x2930d96a7ceed6e8654f" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x664321b9" + } + ] + }, + { + "address": "0x2b86094d3a7c4e642577798c000827ff1d664c75bd3d9728786cdb600670117", + "storage_entries": [] + }, + { + "address": "0x17b674705c353a4394f6ba94b271c3cfa505e0260d3ce06251ae3074ddeb9b9", + "storage_entries": [] + }, + { + "address": "0x4636f4b501947792b3d29117c4d582748e1cb067d5bc5b0baa53ae092116ac2", + "storage_entries": [] + }, + { + "address": "0x4010054c1cf9647633de4a99dc15cffe44e76aad7d51caad7b9b2ece8580b03", + "storage_entries": [] + }, + { + "address": "0xdac5ae4b400d9677918eb10ec864779926e8bf1f4ce9da8b2c254d01fb3d01", + "storage_entries": [] + }, + { + "address": "0x26a2d80fce47dffb79c1b15431f796204ec627cdd59a8e2338300025f72b10c", + "storage_entries": [] + }, + { + "address": "0x52bd9a38cf469573a8ef6a229f2288782e86cc919afcde9d1db161399b27127", + "storage_entries": [] + }, + { + "address": "0x451e8681e82e69a5ad456396f79c108ce6ac4b4fc765dc0e50a1f29b77dc36b", + "storage_entries": [] + }, + { + "address": "0x261fe4d3815ac0503d7c86ba9ba8d74a55551ee2f89665a3d163cdb40a6d624", + "storage_entries": [] + }, + { + "address": "0x691fa7f66d63dc8c89ff4e77732fff5133f282e7dbd41813273692cc595516", + "storage_entries": [ + { + "key": "0x3cdef5d80c6ad04af135e445867114b5ce32ed8dc8de667995f3d27760e3520", + "value": "0x323e635e1" + }, + { + "key": "0x3e65716c9b9f010d10085941d0c6e6dfb190695b7cf09a71f0aca74ab94cdf", + "value": "0x110ae23726c9f55e" + }, + { + "key": "0x4e9417c05bcf183e111558ce4666b053bbfe9736b74fba16b017ab7ae075f1", + "value": "0x402167772e03ffed" + }, + { + "key": "0x2e3f9cadd00a7b869d6b98db5d32847ff18a5561c3f3f7a944380864c8f247b", + "value": "0x664321b9" + }, + { + "key": "0x25d9306a3dd51d4276fa92f67bcbd66be9d76c61120929a3ca417a0ac223785", + "value": "0x834b9f4ba51fd6255b76f292" + }, + { + "key": "0x24dc99466e4418b4fccd818c369e805aa4b2c2e28731ca51ec24311cfb85a69", + "value": "0x20b19729bbf7fadbfec297e" + } + ] + }, + { + "address": "0x2055710baa11e128b44c95853d61ff549106b4d03ba87b38b6c3bfac1c78968", + "storage_entries": [] + }, + { + "address": "0x7903e183d6cd390c0f58d52d49b016c3844722bca68640177c20f62d5116473", + "storage_entries": [] + }, + { + "address": "0x63187720d892a76d390600ab857e9ffd390c597be14ba4063c49f10ab9953b1", + "storage_entries": [] + }, + { + "address": "0x2b6f51f8db7d53b135bc4eb5c1f11c16c3c30487cddbfdf67ae1c39325ff9", + "storage_entries": [] + }, + { + "address": "0x7e1f365baf57057ce5f9e091f9574f29b51283616cbea8e0ccb57c36a80cd4a", + "storage_entries": [] + }, + { + "address": "0x1ae80d66cc58dc4250a95a019a8c6dcb11f2bd0053ae6e9136c03b01be59a88", + "storage_entries": [] + }, + { + "address": "0x578fbffaf89eb9c4e7921abb605ecc6e273736afa28161ee20af1b6b2184c29", + "storage_entries": [] + }, + { + "address": "0x28757d11c97078dd182023b1cc7b9e7659716c631adf94d24f1fa7dc5943072", + "storage_entries": [ + { + "key": "0x2768c364229a8e032ad89302b1af1d1e2bf735a4207b9144ef8857d265ec104", + "value": "0xac3f54c928" + }, + { + "key": "0x2a1f43dc33220d3ac66bc5721d50c162116d901ce79236699effa0908d1c19c", + "value": "0xe697b7c3fe" + } + ] + }, + { + "address": "0x2a85bd616f912537c50a49a4076db02c00b29b2cdc8a197ce92ed1837fa875b", + "storage_entries": [ + { + "key": "0x24cae1e31d04befb4f59016640bb792129882309edbc3d27c7a98520ab302c8", + "value": "0x664321f2" + }, + { + "key": "0x13f2472f7ea1825088fa81aacf2549b299824ab41f449b0500d27b45dca032", + "value": "0x43c2b3d8e00000000000000000000000000664321f1" + }, + { + "key": "0x72059902c0ad80f9b2111070eb74badc483d9a0f8160f58389b96235341c167", + "value": "0x537fef7e8c0000000000000012c8f2bebdc1664321f1" + }, + { + "key": "0x38a390ed8433e2a12c69f9a72edde3cb21b0d100b48deeedab7b01ef526c500", + "value": "0x59ee4b4680000000009cb35c63ed41d80000664321f1" + }, + { + "key": "0x7d570a43f276455f47442b8e4ce18e2240d406c64268495f8b208c50b3457e2", + "value": "0x6ccb9000000000b5ea9b50f972f7000066432221" + }, + { + "key": "0x6a32a4b37dd40587a64c6d565b2c44cb5bbf6b25bd32f473cd9a36d53deea36", + "value": "0x5a1209246320000000000000000000000000664321f1" + }, + { + "key": "0x30608c87a4d0737cb010aab79b1b7453a420bbcc646d713bf87115901777da0", + "value": "0x5f5c5a80000000000000000000000000664321ef" + }, + { + "key": "0x54c3724d84c8c374ffaee45cf00d393b577ac555c47738646c719ceb2c16b6c", + "value": "0x5f5c34f0000000000000000000000000664321f1" + }, + { + "key": "0x316b34fbf9cef6ab81e2418c3023c2edda47b3b8a82ebf8a36450ec21cc0e90", + "value": "0x296cdbc000000000000000000000000006643216e" + }, + { + "key": "0x7fb1abb517ddb78b1ed112b07654e63d8a39333fdadf7930030ae938781ae47", + "value": "0xf466a000000000000191815e5c1336664321f1" + }, + { + "key": "0x2eef5218d06a4ea2659e97246f30b41ad69d3ca960388a535281325363d14a7", + "value": "0x59fb28ca26000000010c2a1fdd8704b3000066432221" + }, + { + "key": "0x3d54e60b9c626a6698e8a4d780d7db66389360a41a327521d2f80dd62abb636", + "value": "0x5a11070a4100003c3fdd045ee06e00000000664321f1" + }, + { + "key": "0x5fa55109aaac8b6f2a93dc26f90261f62428b2f2f1ce330099d815e5c4c87ed", + "value": "0x43ccf2994a0001f81d89ec0e14500000000664321f1" + }, + { + "key": "0x4f9d4d8d73d1b93cc7e5dc52ed35a76a1f1d2b7d3f63faff7fa2e7435d7248c", + "value": "0x2c624e0000000000000000000000000066431d2f" + }, + { + "key": "0x28cc96d34f67705b366fcbe985cb6cf21102f4a86f661b28ad4b93ca3c04da2", + "value": "0x5a15097d00000000000000000000000000006643204b" + }, + { + "key": "0x7754b2348b2e60dbe87013a742a4023766e09c26ad717eb823b2ea722f81cbc", + "value": "0x5f5cd780000000000000000025190d9e664321f1" + }, + { + "key": "0x6129b1ed4106cc845d968ea9bdd3377608b30743ab7096578199ee0e7f0819c", + "value": "0x5fc5b338300000000000000a1035bc5fb2f0664321ec" + }, + { + "key": "0x5ad14bec9b3944c52a1adff0988da1d6c21517bea2e376feea0f4a8287b020e", + "value": "0xf403c0000000000000000000000000664321f1" + }, + { + "key": "0x69ed96fd37ebff693d8d40ee89f558a3dfd3c9e064c961b34f8a5a2a131e1d1", + "value": "0x448eba3a6f0000000000000000000000000664321f1" + }, + { + "key": "0x47ed82df29832de99e3a93df06b22d3c6ea63d4373d594ab00d40f7fe6846b6", + "value": "0x5ae2b5d8e80000000000000ef2d13280d5df664321f2" + }, + { + "key": "0x1017456aa1b15ea00238811c33e7c86e7289e6a7ab7b5b04738916cc2249358", + "value": "0x43ce595d8e0000000000080436855cc4e88664321f1" + }, + { + "key": "0x7e0892589fcd9989c4dc4757b36fc4eaac58d5001ef1d5d85c192878919ffec", + "value": "0xf46060000000000000000000000000664321f1" + }, + { + "key": "0x1f77d79bd218039c0aa94eaea6417d9b629b0fd4fd3e2a40828b0c5fd8ff9c4", + "value": "0x6d0c041000002c5f97a3f57ec0000000664321f1" + }, + { + "key": "0x3069007f83c9cd2f7f164242c7360fac5392c61bfb889c2cc2b4090d4f6522c", + "value": "0x29460f5b0000026a2522a4ffce6000000664321f1" + }, + { + "key": "0x4fb7080f4cefd6e12dfe0b274bf550c0009eaeaa95d4c37dbe4e76c65b68f06", + "value": "0x5a0f5df57430000000000162320c714a6c50664321f1" + }, + { + "key": "0x201064f17cc42b7b2161b931995442075e5dec616fb4081a37eeece6759e17e", + "value": "0x43d935f1c0000000000000000000000000066432049" + }, + { + "key": "0x5ca5b6289bf69f172b7997d274aad1f6ac9f1b6386055c755373c6fbe9004d6", + "value": "0x5a19dd5e8540000000000000000000000000664321f1" + }, + { + "key": "0x23dd311416ad34d6bc3e98b66fa90be1a7299a7a504c107d87065ab6bfd7e03", + "value": "0x53748a346000000000000000000000000000664321ef" + }, + { + "key": "0x66f05cb9cf9b75d2d9fbc04cdcb3ec184dcfda59af7186ec3362dc41cff7be7", + "value": "0x59d8c4041a40000000000000000000000000664321f1" + }, + { + "key": "0x5c154dd0cedc8da61215147dddc9a0937f7c7559b4c1cba6776662e84d79d89", + "value": "0x5e9bf880000000000000000000000000664321f1" + }, + { + "key": "0x59eb3739e8a075a7c052cab839a146eaa4ad5a3f96118c32b99c4446c748e64", + "value": "0x5a1d1d670dc000000000000005b24fab943e664321f1" + }, + { + "key": "0x4c41e5106825baefa90558d41ab6a81d91e0c0899b274745a592d2e0bfb62c6", + "value": "0x5f5a6680000000000000000000000000664321f1" + }, + { + "key": "0x14633169ac55d1120517dc937d86acd6e8432632668af401e3f521aa5a1f16a", + "value": "0xf42b4000000004e746163cb5b9b10066432221" + }, + { + "key": "0x3006bc4c9e35cde6cb6979e3f9b6a7cb6efc3fe31f757055e2e9e340f706c85", + "value": "0x6cfc6400000000000000000000000000664321e9" + }, + { + "key": "0x6ef57001b643e7642434a0654db5eaa6c4159713679284d46c90bdab9ee89d8", + "value": "0x29446173000000000000157962ab1b72f664321f1" + }, + { + "key": "0x6f883e23893b6d597495566588c9dad1369030f57660b4f2702b024cca76d9", + "value": "0x59d8c4041a40000000000000000000000000664321f1" + }, + { + "key": "0xfd9dfaa4d01b369da375d24632578fb6b10e4d7d2e3a4eb2e6431709d32b5c", + "value": "0x5a157bede000000000000004cb3c38179320664321f3" + }, + { + "key": "0x22e21dbc1c3a6968d0bac8ea39fdf87f2ab6f8dc0d095e5c9b2a6a7cf4d9a84", + "value": "0x5a0783a68800000000000000000000000000664321ec" + }, + { + "key": "0x6691d925194735e8b4d13a69cbfec80e3226782072828e01609a3256b08d618", + "value": "0x5d5099726df0000000000000000000000000664321f2" + }, + { + "key": "0x230addd7dfe1e08676d8fff64eb84cbb11636be165510e18e3ae38054584586", + "value": "0xb6d834000000000000000000000000066432051" + }, + { + "key": "0xed858c85e7601e1cf13182dcd167d454e36e3b585da4b29596510ff68153d0", + "value": "0x5388d7bac800000000000000000000000000664321f1" + }, + { + "key": "0x5d3144957fd869a985437a20ba5f51041d2c4f298c022c3767535e0b2fda6ec", + "value": "0x5f884210000000be30bc827e0fd41a0066432221" + }, + { + "key": "0x152174569bd786c682eea15dd77fae455b000d0b2f87e2e987f40147adb5d2c", + "value": "0x59fbd84de4a000001382b69fc0744a8ad200664321f2" + }, + { + "key": "0x3f5387c1b7249455a72c9a51b7d9414bc2e9b695bc4c6758cfaf975eaaffc65", + "value": "0x601b50c0000000000000000000000000664321d0" + }, + { + "key": "0x75c2cafa0f908db61e577f3a555f5cbcb49adfd61c99be68c88da0722c4aa35", + "value": "0x43c94bd9000000000000000000000000000664321f0" + }, + { + "key": "0x3355e17fe415040f6cbd9d0bf90819b0d214964d65879870a24aed94fe4217", + "value": "0x5b11afc031f0000000000000000000000000664321f2" + }, + { + "key": "0x5132e1dee2528d145e1f26df9ab0c0b1fe3a608f2444352fb70cf457e988f29", + "value": "0x5f2b0fc0000000000000000000000000664320e4" + }, + { + "key": "0x54a0c1b798651f2fbf043d09c6719198778e3c030b12a28bbc428435f11a81", + "value": "0x5a724dadb000000000000000000000000000664321d0" + }, + { + "key": "0x11a38c6402c3b8c71bbe769ba59b3c90797f0ef5908764b5ce0bbe383be39dc", + "value": "0x4ef356c880000000000000000000000000066432050" + }, + { + "key": "0x35427e5fb3d65595318ecef1facb1681aba9f4732a993357228d6990192ba54", + "value": "0x43bae964aa00000c9217a8dbae24f288e0066432221" + }, + { + "key": "0xedbd5c4e3ba6388db22f0453fe94129764dff2318196f478d3bab9561f111f", + "value": "0x2c26d6c0000000000000000000000000664321f1" + }, + { + "key": "0x411554d4304e2f83c4516397eb67c1c382d7ffbce4e8d59432a792240be8333", + "value": "0x296524e30000000000000000000000000664321d0" + }, + { + "key": "0x787a0379475667eea2de93a09a19b94bafd4d05502aed5d5233be4fd1ab0101", + "value": "0x59f7792100000002ffb528c0c340ee80000066432221" + }, + { + "key": "0x15029ec472c7fc3e12874531883f36fd7aa41f2692e3c407a1408b812b9799d", + "value": "0x640a5a00000000000000000000000000664321ef" + }, + { + "key": "0x20819e88ebf0a32b6d8cfaa187ef967267f94b60debd9da25d513204a30da40", + "value": "0x5f6788000000000000000000000000006643204b" + }, + { + "key": "0x24509222463e5d334336e150cc8a2ef5081888b33c5d500d8f91913c81352e3", + "value": "0x43cf5ce6160000000000000000000000000664321f1" + }, + { + "key": "0x7555be05447f857763cb59c5b8ed70f8c4bf6d19b72466651fbf2730441434f", + "value": "0xf453e0000000007ea421809ce26400664321f1" + }, + { + "key": "0x9fb37bc3a972dcca9b8c653ee138815097a5c2382ec9fb3330d02751e2b7c7", + "value": "0x5a04a5524000000000000000000000000000664321ef" + }, + { + "key": "0x18b16c68f1e1b481b881f9dc04c5944809421a59c9afa07af662b163536b561", + "value": "0x6dac2bf00000000000000000000000006643203a" + }, + { + "key": "0x1bbb44e33b9d17dcf173a4cd27a0cf54d148d479b0f931d8580d2fc9a326cbc", + "value": "0x4f00bce2c00000000000000000000000000664321f1" + }, + { + "key": "0x759b24fa0385372f626bed1fd7b7a0552a3b781a2070093ff9050ab0faada79", + "value": "0x2dee40800000000000000000000000006643213e" + }, + { + "key": "0x24837e778c0465c2b8f5d9925a07673c8025989b80e00d88e954e1669b3c727", + "value": "0x43b17455000000000017818cf7a9da8b000664321f1" + }, + { + "key": "0x24382ccec16e0d93bba057717b9e8efa694dd326453c938de2353c1e49c7288", + "value": "0x43eed8e2800000000000000f3247f929c98664321f1" + }, + { + "key": "0x7f2e0569b0d194d118150f5ffa8988032e496f351f52d0dd082c61f2eb9762d", + "value": "0x6df39390000000000000000000000000664321f1" + }, + { + "key": "0x446cc02cebee1246119624372860eda3b93e9174a78eec0a626671adaf3f715", + "value": "0xf40740000000000000000000000000664321ee" + }, + { + "key": "0x1001a24930a3703ab4fd3cca26ff4ef4fe459b9b83188bf65e425d2921c1869", + "value": "0x43d8605240000000000000113c1e8633134664321f1" + }, + { + "key": "0x71691e6671f97ae208cba6d9086f7f6f33f9ccc58e572e1789deb9042104eb3", + "value": "0x4602483f8000000000000034277c823f958664321f1" + }, + { + "key": "0x561773d3b9960583efa16b00fc0c5fa3bcadba3dd30c95c1479fde03ec02e66", + "value": "0x6d1be4b00000000000017f2d7d24527b664321f1" + }, + { + "key": "0x31d92c1333332cd8b74b455697daf878794dcaa2e413d0ec6d064850b9d1e42", + "value": "0x5a5d3bb25000000000000001c78509c0d990664321f3" + }, + { + "key": "0x5bdff4590ccf912d575f02d0df4433e9c28acd9cc0722743a93451e3b79bf9d", + "value": "0x447aeb0a0000000000000055e64fc56f89f664321f1" + }, + { + "key": "0x4980bcbf5314101edf5a53eea20451fb3fbbd1ca848fd1ffc2219505c82ab77", + "value": "0x43c5f55b000000000000000000000000000664321f0" + }, + { + "key": "0x568dfb015156a62d5258dada705f40d105295de4f34e09c28f6263ce73dc96b", + "value": "0x2941ad100000000000000000000000000664321ef" + }, + { + "key": "0x31a25899ca3a40d5213978b15ae287230435bf490ae488775f5c1d06e50af09", + "value": "0x5381f15da750138353aa9673676d2420c50066432221" + }, + { + "key": "0x4284ad9838adf91d3e8334b1e4917bf45876b6737d01b704a218b32d217bd1f", + "value": "0x6d037770000000000000000000000000664321f1" + }, + { + "key": "0x252e39d215625176a1db1dae25ded2c6a756c2b3ea6059b04880221887338dd", + "value": "0xf4274000000000777c919d4b7e310066432221" + }, + { + "key": "0x2fc0a8893b3ddf518ebc793154784db100730ee0630c6b7c202fc56862aef39", + "value": "0x5f6be3500000000000003e1d50d70b27664321f1" + }, + { + "key": "0x2b5275e9dd1803a8f68e99a525e8eb2f3f12341af66df7063368fe9a0f5041", + "value": "0xf42360000000000000000000000000664321ef" + }, + { + "key": "0x41f20e43f406a80b06f83d6728c12c9c957a1f2c949c8473974506470c50ff1", + "value": "0x29444de800000e5c9a9f186c3e0000000664321f1" + }, + { + "key": "0x538417b2496cc20b92bf7da6432f65fe2fabd75207f714e45e6008f23d3bf12", + "value": "0x5cefdd50d000000000000017f633feb2f0cf664321f3" + }, + { + "key": "0x32458b65a2f0b1a025a62db5957a6caf050ff13e74827eabbb37bcf288add87", + "value": "0x2e3bf0f0000000000000031c3f106c4a664321f1" + }, + { + "key": "0x3309deb6ada9ac40531872b53d9913a3194d93f8d3faaa4dcff7e2414ab935b", + "value": "0x5f621e0000000ab367e1baeb70800000664321f1" + }, + { + "key": "0x6965aaa28a374063a4385b4ba0d5707c5403a9725214d978fe64efa2fdb9bda", + "value": "0x463a88f0340000000000000000000000000664321f1" + }, + { + "key": "0x4d78693b61a1d54f8ba06101b0e51333f1c361e967339c783a270c1c2f2a85c", + "value": "0x29454bf20000000000000000000000000664321f1" + }, + { + "key": "0x681929d9be47dff5f6b0107e8964e871058d76c365311b14b4810053cac64c0", + "value": "0x5a724dadb000000000000000000000000000664321d0" + }, + { + "key": "0x786e93884a79fa18e429d0a5169c76237c52263db6b68fa5cb943ca9429eaec", + "value": "0x295bc8a80000000000000000000000000664321f0" + }, + { + "key": "0x6d0458d2a2cd049266aedcdb6940a7489676da5950f4f2c6a6cfde1e1f8cfb7", + "value": "0x43c01dfe80000000056c254af1874fd8000664321f1" + }, + { + "key": "0x6c47e844edd25db724f656b7d0b7874e0d9f7d1dfb8a6be014c1db06de9837b", + "value": "0xb6f2a90000000000000000000000000664321d0" + }, + { + "key": "0x154db62c88a5b25aab1e64ef455a26194e26d1f8e46207d2d1287b9241ca8bd", + "value": "0x43d55390c1001e62765e365a8c000000000664321d0" + }, + { + "key": "0x2e755fb331dbc988841003875724fb2cfca53a431855f4ae1ef5e2a77aaa9af", + "value": "0x5f61f84000000000011c43387838200066432221" + }, + { + "key": "0x7033d7d9a7711f0d29f1e47c203fd896f9aac13f46c4ee3fc75e956c6a226b8", + "value": "0xf46380000000000658fda381f63c00664321ee" + }, + { + "key": "0x21f5dc193f2719826930b54b09cc2d4a9ff6a35cb2b2ef55ebbb95d3ff65520", + "value": "0xf424000000000000000000000000006643204a" + }, + { + "key": "0x72fbe48204b03bcf34d3f828c9f6a0ada355fabe7fcb7b56e04785fa3c29580", + "value": "0x293d91280000000bd44e9300bf6b8880066432221" + }, + { + "key": "0xf183161c0aba1659b399964d18617a43764d05a92193fc68de027407178ca1", + "value": "0x5a38d64c6800000000000001e9bed41e2ca0664321f3" + }, + { + "key": "0x1cebdb571b27f4fea8ede8f7aa82ee989bec1c5575007e03e02f331ad9bd273", + "value": "0x4f08bcb0400000000000000000000000000664321d0" + }, + { + "key": "0x3c0adf89ce026db32a6ce6c542734d7d57e03210a1895aab5013aa8667f32ee", + "value": "0x5a0c18ab800000000000000000000000000066432046" + }, + { + "key": "0x4444fc5993677e9bcde336925ea67baf2ee4526c46bc8c7771208dc8040eb7e", + "value": "0x540192682800000000000000000000000000664321be" + }, + { + "key": "0xb74ce762470904c73c2a792221b6d714bdacab58b371d406239b7864112d16", + "value": "0xf44a20000000000000000000000000664321ed" + }, + { + "key": "0x6c1c04d4c8b1c9f29c5c7c3ebda430095a69d76342fbd7ee9b35feab0f30ec1", + "value": "0x6d0acb6000001fd95d9d77255d000000664321f0" + }, + { + "key": "0x4991886e34c01023fba073c0456bbc54ae33b85c67f090e1b73f8a9b8330672", + "value": "0x43d1670b0000000000ca1d02f00bd580000664321d0" + }, + { + "key": "0x495891978e3ad0f2abe12ad7db7970a9b52fc4d873516bc87903f48a9315ea8", + "value": "0x5a0dffc796607ecb4e668c28640000000000664321f1" + } + ] + }, + { + "address": "0x7c2e1e733f28daa23e78be3a4f6c724c0ab06af65f6a95b5e0545215f1abc1b", + "storage_entries": [ + { + "key": "0x68a9645c71ed1c03cd7a06fe7508ac7d0f340c39701da637835841a0374d240", + "value": "0x3cb02a44b67760885" + }, + { + "key": "0x6197adcd550aab9195f46a31fb6fcc8b58faccab7f4ffdd30770eed06893872", + "value": "0x2d99f89c1d113feb3" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x33576d78ca3cea5bd02621" + }, + { + "key": "0x63598d730086eb7efbe4aeeea348852ba6ef3b3ec7efca3df1d4f265df3f3cf", + "value": "0x23382d342a0261b58b" + } + ] + }, + { + "address": "0x56c1ba030184fa30b30eae72c152ea69a3ec36cc62d6d17b8ea34c7b0ffb1b1", + "storage_entries": [] + }, + { + "address": "0x55646e4ea015a2d1ce11d30eee12cf1f10b1423bfab8fe029406624fa0e080f", + "storage_entries": [] + }, + { + "address": "0x62873a99982c0f17b3fc24499c61dafdb58b53678779b0a1df02b53d4cee44e", + "storage_entries": [] + }, + { + "address": "0xef72863484028cce4d15b5965d26156a273d1ee1cd72bf4ed7abee4190ee57", + "storage_entries": [] + }, + { + "address": "0x5ef25b100a2540377bb3f150fa4d440f7873970cd19c59b1139d6b0759841c9", + "storage_entries": [] + }, + { + "address": "0x57e980208954e55a1af061c53ecdf6609ef1bdbc6ec3f700a23fe8c55cbdf9a", + "storage_entries": [] + }, + { + "address": "0x7daadaa043b22429020efb9ac16bcc5f6a9b6ed3305de48e65a0ad5dcb76759", + "storage_entries": [ + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x37816bd07a" + }, + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x81325001daa67984978d8" + } + ] + }, + { + "address": "0x7a921d4e323ea8ec79cd9aef61fad588eb68f3f958fda0edff1032430273098", + "storage_entries": [ + { + "key": "0x1ccc09c8a19948e048de7add6929589945e25f22059c7345aaf7837188d8d05", + "value": "0x16c8ae7f55219c7146861c0517a2921f98eb0fa8e63c31aba28faaf6009024b" + } + ] + }, + { + "address": "0x1b5bd713e72fdc5d63ffd83762f81297f6175a5e0a4771cdadbc1dd5fe72cb1", + "storage_entries": [ + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0xef5bd6bf9c187d65a3" + }, + { + "key": "0x48be3692ab3e9e8bd4a134a7b958b4e69bcb00a71d4f58c22f9311921f12bcf", + "value": "0x1c63bab3680c4985" + }, + { + "key": "0xf41f7dabfb8c6a89aac280f9f5b392a0d5e7f05c6d4b17cab971c402432c66", + "value": "0x0" + } + ] + }, + { + "address": "0x5f7348fcd9fcd13b1ebf3ed51992cbc6d93e1582f9f37f4f0fbe2cc7c9e0c56", + "storage_entries": [] + }, + { + "address": "0x157d59e23fe92cd95d4ec4d185054257681491fdb2aa118eba322e624fb374b", + "storage_entries": [] + }, + { + "address": "0x4824d37cf12be557fa46f624c561722952d64d045abee90d88cfe3e36c710c3", + "storage_entries": [] + }, + { + "address": "0x44d13ad98a46fd2322ef2637e5e4c292ce8822f47b7cb9a1d581176a801c1a0", + "storage_entries": [ + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x118ccb" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x664321b9" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x2a043ac7" + }, + { + "key": "0x2ec31623436b0fbcbbd71b2b3eed2887c8156077098a52a9256a9e0edb833f", + "value": "0x3d30c4e3d" + } + ] + }, + { + "address": "0x8fc4b3ccf30f93e39bad9e5a1baca65e08a18549d6300b32249c26c8d93015", + "storage_entries": [] + }, + { + "address": "0x28f0a535b5e3c877f5c9e122a93c400072bad001b5aeb96f5d89b2d3cd2ba8f", + "storage_entries": [] + }, + { + "address": "0x5dd3d2f4429af886cd1a3b08289dbcea99a294197e9eb43b0e0325b4b", + "storage_entries": [ + { + "key": "0x5de7ec841dce952676aeccd7e5d32132a249efae2f8f0d25cbd26c6d6ad9cb", + "value": "0x12dae0585a755a8e" + }, + { + "key": "0x320871b23e3e6d57679e4943a86f3b0f85304c7c9b14339606ecc8cbc2d9b2b", + "value": "0x0" + }, + { + "key": "0x515cd61a07d2b85ab4c9bf68cd0a98d367c9583da0d4ee78b5f2069e699b255", + "value": "0x0" + }, + { + "key": "0x309573c94d0e7631a70243855d94e886149979b8c08af858285684b18f6ee3f", + "value": "0x442d21336c4bf1d90" + }, + { + "key": "0x423bba863bbfeeaadf8d3125f46deaf420fa526e05af12185b5eac264557a68", + "value": "0xfff7ff869af853ed0485b98fe7" + }, + { + "key": "0x26da8f7afc6ee9ae7decc5a62a5c1c0eec479a536d538f0e5c818eeb9ef0196", + "value": "0x0" + }, + { + "key": "0x20d2073c217071b6c53c4ae5a9430aee3255033eed316b832e4a72ccf7df55f", + "value": "0x2b6c1685d84" + }, + { + "key": "0x591acc006991ecc44299588fcfe36aaf338929a2ce09835de224d78d1791dc7", + "value": "0x595c5dda6f9845d50957f27613e83bee24" + }, + { + "key": "0x753711851610349c088b7d73873349385d26b4f9d5ea78f6add5fa6d27e7ebd", + "value": "0x2f309ba5486973a93fb8f6b8e26234161173" + }, + { + "key": "0x66b2df61535d57e9cd830cbdcceb15a55ea954fc41cdd4ffe65d1aff23a2d59", + "value": "0x0" + }, + { + "key": "0x3355f99638539f9b721b80a43df5a2915d3cb5b5f19f634b27fb8b8d932ae41", + "value": "0xb2a2f596f4d2" + }, + { + "key": "0x5f1505418e755fce7ae0210eba82c2b4e3c85a3a200f56189c1ee5d4ca012f", + "value": "0x0" + }, + { + "key": "0x363abe5fcc3bf755fd2f1af3742e666b333c4e89dc86f8013c4f7408d5117fe", + "value": "0x1061ae77270649086a69b2e" + }, + { + "key": "0x6444f7c36ef4ebc6f750248098771e309c131529e2aa02c6caf801e13cd9e26", + "value": "0x0" + }, + { + "key": "0x3fa00b0247d924eab9b74ecdd3e2e8ec8440ac9729142889e4fc634af98c99a", + "value": "0x7fa95fbde26f53cf28" + }, + { + "key": "0x426b3f2cfc0868438aadb4748e223da22aed033bec133244f39938596e6707f", + "value": "0x800000000000010fffffffffffffffffffffffffbe18c01b897db9228ba523a" + }, + { + "key": "0xae1b72a594adf942d61d66fb222d7bbe953934f3b762905c245fa71ea84aba", + "value": "0x583f3afbed03f47db55fa7da36" + }, + { + "key": "0x60245df0bba501d670f00cbea9817d337b02bca3383d93e186426748fe4b74", + "value": "0x1bc4b06ca8608ed13faee40da6df73f19" + }, + { + "key": "0xe48d36a14905d02197fe7153edd600fa10bd3e475758cd92817556fdb8e6ab", + "value": "0x101a394c1000000000000000000000011ef24ade8d29b3e192e1cdb790c" + }, + { + "key": "0x16f2217be84705a92eeb1e82bf8290f3f39edabeea36ed6855f9d302df979b8", + "value": "0x57658d965c6560d924" + }, + { + "key": "0x66b905a6f37c3ef1651d9e33565e5ccadb6477f2dcf504d579aaa783aa4d9ea", + "value": "0x101ea8b63a71a384a9c1d035bec" + }, + { + "key": "0x45c798b5abff14827978acf0f3f5327ce5c30d0ceb1d6adfd1c1063156247c4", + "value": "0x7ac2063421ee95cc0f8fe36ebb9d" + }, + { + "key": "0x6aff514d3c14935bb84bfc2f5e443daa68c6b9af02150bce2904dc5cee89fb4", + "value": "0x101a38916000000000000000000000011f6019a09d60f1f067f66333a15" + }, + { + "key": "0x60245df0bba501d670f00cbea9817d337b02bca3383d93e186426748fe4b73", + "value": "0x28e8f312f449bdf83c9e986f04aa2e" + }, + { + "key": "0x6a0bd403fbf3d9dc4f5ae8d7666d1a15af77105811e2ecd47ffce0668e9004d", + "value": "0x4f00000000000000000100029d986f6ee068e451dccb18efaaba" + }, + { + "key": "0x7b964873163e7d2a7aa7eaef64ef0b32f1fad1a2518b9222de99d0e8390e7f", + "value": "0x800000000000010ffffffffffffffffffffffffffffff8056a0421d90ac30d9" + }, + { + "key": "0xc439c053296d5764948bfdfa5c465665d234736f071a361e10681d632ad758", + "value": "0x108493e17" + }, + { + "key": "0x66b905a6f37c3ef1651d9e33565e5ccadb6477f2dcf504d579aaa783aa4d9e9", + "value": "0x7b37d78048320ebf944d30dfab90f0074a58" + }, + { + "key": "0xd7ac8fa3fa642cc725a845d3fe1719aa3824f56c8fe56bdc0d79ace02b3601", + "value": "0x2e5032269cbf689cd" + }, + { + "key": "0x255dab183a878b6a08e12860c786f321c723286c439bfebf6b7fb7b72cd3e00", + "value": "0x1007e4cbe0000000000000000000414fe60f302b605f42a0ecbd7ed55b8" + }, + { + "key": "0x67115b93713c11a90a478a74e04fe020b4de53a8a5589ce5efefba6ca655989", + "value": "0xa2bc70e3b8f02df0" + }, + { + "key": "0x3561316fda5c2e0981e53de49d17ca5952da5add4933424685164bbc7620c5e", + "value": "0x0" + }, + { + "key": "0x663e99caf6fe0ee29e110a7bf1c863be7624cd12506c872123c0f7208ff1413", + "value": "0x4e83244aaa8d315188762ff2fb197" + }, + { + "key": "0x4a56bbcc900ac9069205fb78c01bdeeba9926ad67c7ae9aeea2659fb0c6972", + "value": "0xce582cf44f8907454d5a7d3d36d5182457" + }, + { + "key": "0x704c42c2f22f0f7dc52862aba4e4078187181b74bbcd344e067da76791260d9", + "value": "0x0" + }, + { + "key": "0x5ea4d0b8fb07f8c1d86b1ebec6161d424f0f74a8a699ed5ee377cc54b4e1238", + "value": "0x59cfd00dc5b194b4a50b97b305485af2" + }, + { + "key": "0x5f0bef2282f18a0bc659723ff06c529cf4af154628a7b1cf925f71552b1258d", + "value": "0x10079cbcd00000000000000000004bb2bc1e9243875ae4d207369c48f22" + }, + { + "key": "0x3fd58344c88bc2aba58536f3892e94d6926e33939ea1f5b0a961ac0deaeea1a", + "value": "0x20a9cc902dacea767308" + }, + { + "key": "0x4382a104e6f4addb082daec4854541d348642582fe3bd50dab582113c89e454", + "value": "0x2e8e71e4f72a324831041d06e8" + }, + { + "key": "0x6bb75caf5ba2419503828464ddfcb58d0734675c3eb062937719652947399a6", + "value": "0x2163ce8396a26bd6cb42f1ea35eb2" + }, + { + "key": "0x2ad6a85d448ebffd8c30da32c6c4a36f6b4a6dfb9f7156114fa182e19d7fe2", + "value": "0x43899c2c0aebc6b41" + }, + { + "key": "0x1ea2e870fda4f7c97320ae0f1d6fe31d5932ff1f279659ab0c7fedab55e9d8a", + "value": "0x6a0c382be24a06c891bf8e0b7788d832" + }, + { + "key": "0x557fb0ffcb5150b2a43be20464ca70c570691461c8e1908f4eaf348f0399e34", + "value": "0xd850940dd2fe2ccdaefa188b135adb2dc9" + }, + { + "key": "0x16d43c25f6f59c34f2b2a29333bb21d988200df74b3b93c6d2fb9f4b99051f7", + "value": "0x442d21336c4bf1d90" + }, + { + "key": "0x5ea4d0b8fb07f8c1d86b1ebec6161d424f0f74a8a699ed5ee377cc54b4e1239", + "value": "0xd6ba5dd8f1a1245689ec530cc1cc8" + }, + { + "key": "0x1f7d31a70b1af4fccf4b74369012440e12cd96a4219392e1f37eaee994332cc", + "value": "0x800000000000010fffffffffffffffffffffffffef9e5188d8f9b6f795964d3" + }, + { + "key": "0x2b1f44177b8b10498c630ffd41039f3ceca870144ba89039e9f9488d081cde4", + "value": "0x0" + }, + { + "key": "0x7ea26d95f9f9311f5c9910f7fd1d476f9b6a44abf258961e76fe0bbd05ecb68", + "value": "0x41e73fe4768246dd745adc7" + }, + { + "key": "0x3af7018c4aa6e5fa9c0422a94b88f858654f47a8bd2c875ecf0c2972a78b5b9", + "value": "0xdf492339fee1ca3cf878df22aa6de" + }, + { + "key": "0x4dfb26c16c5401deb411e70f49b629493e26820c19e0589114a7923bb667d95", + "value": "0x2771d0000000000000000011589e5a2691c399ec2d5abb9047720cc" + }, + { + "key": "0xf43f4977ba83260d9fb7c2157768daac27f6810a06dedece2a65ee49a5dd6a", + "value": "0x1a3d7ece7556717" + }, + { + "key": "0x4184a2022377099c66afe4caa44db6d1edab728d2ce379d694f7ae23dbc1191", + "value": "0x568be1f720f526ff1fcb5635b46" + }, + { + "key": "0x2e73448117d324f3ad1f20afb9951cf52dade60c324607a4ec9572e7ca04239", + "value": "0x0" + }, + { + "key": "0x465fd5b352d6ecce28a1b92dec1ae2be9bd65e886c327fa414a016aac23b5f2", + "value": "0x61c4e5b74c7f6ed78170d7e9a5c9846928" + }, + { + "key": "0x63e693988a2fa19c090f03ae11aea599d2e964f9beafa06660932669f549b47", + "value": "0x0" + }, + { + "key": "0xbe6fa725188a51bb8d0b2690374cd01ea86067c08ac0c06ff1f486825b17df", + "value": "0x1000d57e4000000000000000000a55480fb5a59bd6e496c53a2253ca9a0" + }, + { + "key": "0x7ed715b5117e2c4ce5878bbfc6d610ae7e96f8a63b03688cb85da00c24a311d", + "value": "0x8e0000000000000000010004a9082ffbef977902b72ac6266466" + }, + { + "key": "0x529729e1b3d7edd6ebdc0b64e1b3fdecf7e19908cabd9666f0df184f8a35f40", + "value": "0x7a0f2100000000000000003693f7d7569dd85fcf4af5cc173fba7b84" + }, + { + "key": "0x29373d158f864d586db959f92cc8a576c16d25c2622ed39d1806df5184057a1", + "value": "0x1061ae77270649086a69b2e" + }, + { + "key": "0x4c461150be1bb0404df648b7535aa4412ab7c1715229ea6164f2da22be9b761", + "value": "0xfc7398d1fc12af1379ee6c49fc" + }, + { + "key": "0x663e99caf6fe0ee29e110a7bf1c863be7624cd12506c872123c0f7208ff1412", + "value": "0x340a0332a74be33b3f40ba92d758cc72" + }, + { + "key": "0x5c9470dc231b51f881f9aef98f70ef80002755ef4a50b7082377cf0a0f2bb12", + "value": "0x7fa95fbde26f53cf28" + }, + { + "key": "0x7817798d2bf72b06ac8cdd37b3637552be3e258603023315c3edb8b947d9de8", + "value": "0x1a5a9300000000000000f47fc114e6257449bd8dd4315e95427ef6c94" + }, + { + "key": "0x7021ae839fbe16a3d91c8a528089b1ba0b14efc0fda29f76c0de12c4e374aed", + "value": "0x13717b4b1ced631f4dd37642d40d8" + }, + { + "key": "0xf34837b4666bead50bec873ef1e6141dacb6507337c2f51f3557b773bc4d33", + "value": "0x1a0b4eb4c5d796bdb7a" + }, + { + "key": "0x465fd5b352d6ecce28a1b92dec1ae2be9bd65e886c327fa414a016aac23b5f3", + "value": "0x56057336e2acc5a6aad5419e9b0" + }, + { + "key": "0x7796854c5e89f87464dcf96e7a58255ca91cdddd662dec0ad10ab287bbfe8cd", + "value": "0x0" + }, + { + "key": "0x46e2898345b6c6f5765573b6c4d52e73adff98e2d9dfe42eebc65be56a01d88", + "value": "0x200000000000278beb6c77800200000020000" + }, + { + "key": "0x1cd7120649eacb81d9d22e7ebf033168731b49b4ade362005a1e10a66e941b0", + "value": "0x10077a3410000000000000000000513eef96e4f87901ab9ba8572056aa7" + }, + { + "key": "0x4d98c28a2529791f5a7143f35f5cb4987e738ea02a130f2df9ad3c8efd2b4db", + "value": "0x2f21abc84c5b736c06b06aa21cc7a6c4326b" + }, + { + "key": "0x61d1c2759c60350f45b4f9a3d12bef0e687c830391e4224e9ca81be05d39794", + "value": "0x800000000000010fffffffffffffffffffffffffffffffffffff0f140993fe4" + }, + { + "key": "0x66a61e6bc53ab89ef1deae41626ac0576780a09c63514d86f95b7e6f6dbcfaa", + "value": "0x41e73fe4768246dd745adc7" + }, + { + "key": "0x1c2c58a4d5147da39d1c9115f49ad497aefe0b28d6dae33d2571592e6b55dca", + "value": "0x0" + }, + { + "key": "0x377a06f99c076c4ce9af686c5a1f8e7ab88a1273c530dc5f94778c4b79cd41a", + "value": "0x10d7379d98730794b883f629f5aa3" + }, + { + "key": "0x30c0562e0cf71df4e17637c091696811e82dbaba7c83b2e79190a3ba035d6ff", + "value": "0x0" + }, + { + "key": "0x40dff85b22ceb4de5477d6577f334c914f8efefed9f5c892934c0f6e966ed6", + "value": "0x310199ebaa0939c96f6c6eb89d809de2ce39" + }, + { + "key": "0x134e715741d96ceb0044ae2fca0b6ec9307c85f4db185b76f701cfc56e82b6c", + "value": "0x0" + }, + { + "key": "0x395a4c40ffda5b19a9f676a2b5afd82335c64654742f9543a9b0249f7dbf31", + "value": "0xd6d3d279809bcf4482fbae08358d2" + }, + { + "key": "0x4a586bf09eec1cf5a6cf9d6d34e17e76a4f73dae476853d9f2bed89865e2ef2", + "value": "0x101a387d5000000000000000000000011f6be1e6248ffc4819ae4389037" + }, + { + "key": "0x73d24f0f5c58e37b4c9329a9dfaf5eddcc660e79f122bb0466002197fdb5f85", + "value": "0x18df7c90000000000000707cbdba742be2348899d3b349cb59d97a054" + }, + { + "key": "0x377a06f99c076c4ce9af686c5a1f8e7ab88a1273c530dc5f94778c4b79cd419", + "value": "0xa08cc59304b134d9ac3c997b189d4d1" + }, + { + "key": "0xc0067a8260701dfd5b49739d44313d1614b53860def6e9790ef84ff7230750", + "value": "0x41e73fe4768246dd745adc7" + }, + { + "key": "0xc3c760984d8770da85e3f1e6fe78cd28126b0ea37d2fceafca6739db3cf528", + "value": "0x13d9458da146256bd837bd6c238e54271" + }, + { + "key": "0x13c6e0581bdaf845c561dbbcc6622579362849b29e2a59129021278fe4f8bd1", + "value": "0x0" + }, + { + "key": "0x753711851610349c088b7d73873349385d26b4f9d5ea78f6add5fa6d27e7ebe", + "value": "0x572b92e38541534eb40e9e2a7f" + }, + { + "key": "0x174ca4d40ded1b191eeaafb8c222368024fdf0ac894af16ecb51b7ec8477901", + "value": "0x101a37a46000000000000000000000011febb8db0066338931d2631355f" + }, + { + "key": "0x6fb6c6abbebd2d1c09111641feb12c423eace8efebac4a4e602ad4e625f1a4", + "value": "0x41e73fe4768246dd745adc7" + }, + { + "key": "0x1546e87c8ad9e7b9efa8aba36f4f3544d417322d9120d09294b8f9721ca9333", + "value": "0xa952b821b982096778bc9aba4f6295b69" + }, + { + "key": "0x4184a2022377099c66afe4caa44db6d1edab728d2ce379d694f7ae23dbc1190", + "value": "0x6270e2b47f5bfe682f866c714ab206816d" + }, + { + "key": "0x50612e68e973cbf0e10d028a2f99693e88d14ed09652d6f2949845f21db7b7", + "value": "0x2aa982732e0db4d8a691e5daae6b0bd" + }, + { + "key": "0x2b620620e745370e0edbfb3ea80f7e0a906e5f206cc9b5b2f14cb8bee374e0b", + "value": "0x18000000000" + }, + { + "key": "0x3a887abe4e62bea93003f9b0fa318c7d2b13f93bfd5f57bfa510cf00367b670", + "value": "0xf0ebf66c01d" + }, + { + "key": "0x74ae5b751e298a47a24b856cfcfd766cd54b2d0e315dc4e93c23513ae431c6b", + "value": "0x7fa95fbde26f53cf28" + }, + { + "key": "0x16037d3c0424b059f934c0b028af5ccb16385544710a3214fd8488c1864de5", + "value": "0xc00000000000000000000000000000000000000" + }, + { + "key": "0x4a56bbcc900ac9069205fb78c01bdeeba9926ad67c7ae9aeea2659fb0c6973", + "value": "0x6d3a2bb809d1e9acc11c4b3616f" + }, + { + "key": "0x2deed4d4b01da7512886ae218884b860a4b27ed6c3b45ba45998795d93cb3e6", + "value": "0x1061ae77270649086a69b2e" + }, + { + "key": "0x1b794a6117fafcf791c7edd14dabf3b3d87e5f472ecc11d570545f6ecafab6", + "value": "0x1cafa37696dbfdb37c1b17b439" + }, + { + "key": "0x2b1f44177b8b10498c630ffd41039f3ceca870144ba89039e9f9488d081cde2", + "value": "0x0" + }, + { + "key": "0x5af35c5e4fcabd060e8498ede27a80eb336e7dfc0a11ef24620c1f456c88539", + "value": "0x2279d026d402b30f2b6" + }, + { + "key": "0x455b5d68de2198f0e79b282abbb49c01517cb9a88be6449969956862f7aa276", + "value": "0x4a24ccd8d8cf7382fa" + }, + { + "key": "0xc37a99b03e26aa791e82083190c484f773383fbdc97b455ebb37590ac5f448", + "value": "0x1012be9fb00000000000000000000038904d8a02b90073fda13db8cacc4" + }, + { + "key": "0x44124f77d5d46719af8b4ce0295dfe2a528b8587ad60f3b89ce3b8784f94713", + "value": "0x1012bdf3600000000000000000000038a447c397bda87c25bbe2be5dfdb" + }, + { + "key": "0x5c748957393ed963e0b16cd99b3ec24baf6e07284d471126c8cae435945503a", + "value": "0x0" + }, + { + "key": "0x21284dee0554a4f4aec0b677a37a38cfbf4aa2082031128dbf5718bb39c002c", + "value": "0x8d0000000000000000010004a58c9d3036b61678c52647135723" + }, + { + "key": "0x55e2c9d946d6ed541d1c22ad9be612c710515069781cc6dc93f78e07a1c03d9", + "value": "0x87224ae8487d0b983dafdb94be8a05" + }, + { + "key": "0x423aeeedce049863329528af38d53888d96f8c35936d965dc07b3f3b495a13c", + "value": "0x0" + }, + { + "key": "0x4d98c28a2529791f5a7143f35f5cb4987e738ea02a130f2df9ad3c8efd2b4dc", + "value": "0x57190142ca495ac960f93b165c" + }, + { + "key": "0x79541114db2c85598b8e7681e5ab78bf43624bc7636b60249889f8d4ec5894d", + "value": "0x10077a3d30000000000000000000513d6b8215f0a8328a260c24cea7ee6" + }, + { + "key": "0x45c798b5abff14827978acf0f3f5327ce5c30d0ceb1d6adfd1c1063156247c3", + "value": "0x7ababed9748f6d432fdd24f58109" + }, + { + "key": "0x6809d9d0b0730bc34d1e67788822805b400f2f3e2d1e92a69aa06866e076a4", + "value": "0xd14a698b205b24fe6f984380e67" + }, + { + "key": "0x786e6f2cbcf63b6c37de67d37e3fbbd3689e837c77677e5ca9f95f64b1817c5", + "value": "0x1012be8f000000000000000000000038923cccf2cc6f962ffbfe32ef1bd" + }, + { + "key": "0x7021ae839fbe16a3d91c8a528089b1ba0b14efc0fda29f76c0de12c4e374aec", + "value": "0x212f0478d1f53a283dcf2c0b8bf7ac06" + }, + { + "key": "0x1102ed17e9b8af12753e04950358809c00874f299facb2aa5b8d261d0a51f9b", + "value": "0x0" + }, + { + "key": "0x5aa3dc7c0db3a11a6c8f7d895755d9fc70c83b10cef527ed3dda69403266e47", + "value": "0x0" + }, + { + "key": "0x4382a104e6f4addb082daec4854541d348642582fe3bd50dab582113c89e455", + "value": "0x1831b35280148906798254bef0792a421784" + }, + { + "key": "0x395a4c40ffda5b19a9f676a2b5afd82335c64654742f9543a9b0249f7dbf30", + "value": "0x59e06ae438130dc7c82a76fcfd4bfed2" + }, + { + "key": "0x45fb8ffc8b8d0d2521fdc1b3558fea0c43ed03911387994698ae9e504026d43", + "value": "0x84aeb00277fe7d559b3b345affd6bc65fa8" + }, + { + "key": "0x324f5cc23f77c1696ef1d8c974077f22c9f20c1bf5537778dc088e9d87fd6a5", + "value": "0x7fa95fbde26f53cf28" + }, + { + "key": "0x4c461150be1bb0404df648b7535aa4412ab7c1715229ea6164f2da22be9b762", + "value": "0xf16ecf3613e5bf7f4f98d5544b" + }, + { + "key": "0x4abf337bc19531e49ffe9b451bfa056272f5c9f7aeaf94c82ef76e75edcd7", + "value": "0x0" + }, + { + "key": "0x619cfa2f524d755915f4e36edd1336a775cd84289962bd66a06c643a8f8e3b0", + "value": "0x2b6c1685d84" + }, + { + "key": "0x50229573d58ff2427d4c4cec541cf8e48b7c4d2874219f303d51c9a0ec1ccad", + "value": "0xdcfaf8fd723b660e294da2777" + }, + { + "key": "0x56a4c95e4d6d8e3b52af4ce76322f8505c68cb27062a396fca16480fd6c8b80", + "value": "0xc0000000000000000000000000000000000000000000000" + }, + { + "key": "0x4ed55f236b424b2eeb2bc294c9359c3d917b6b20213a60c392be5a80c881e6b", + "value": "0x1315f443bfa359adc679b30698f2792ff75" + }, + { + "key": "0x53d0519cdc7454786ae3e94a23442f4359e03c5903c60ccbaf2c48614efe6ac", + "value": "0x10077a04b00000000000000000005146d27af6799347f80e34e2af04d96" + }, + { + "key": "0x757b1930e6c32fb8eb91d0461013badb4594924dc37a75077779fea0a36d14b", + "value": "0x1e52bc9a9a09f09f581231fd6d918f5e" + }, + { + "key": "0x423aeeedce049863329528af38d53888d96f8c35936d965dc07b3f3b495a13d", + "value": "0x0" + }, + { + "key": "0xae1b72a594adf942d61d66fb222d7bbe953934f3b762905c245fa71ea84ab9", + "value": "0x300d8983b150f9d379b589cbba6d1f3b60d9" + }, + { + "key": "0x434eda92d135a75a1c75cf4b1c40a5abfa8097d52b06bd02baabf3da7dc0c26", + "value": "0x1c269667bd85a8049ba85b04437fad518" + }, + { + "key": "0x7f8585bc4f045bd960c6aed13bb5f37c035bd5a5df6d9282c80552ae18ac3d3", + "value": "0x479af72a3004b2b0a52c5b1a83bbc906" + }, + { + "key": "0x23515f33f7ffd5869111b4e593657c20cfbd948fcc17793f4e47e8d2f634afe", + "value": "0x0" + }, + { + "key": "0x557fb0ffcb5150b2a43be20464ca70c570691461c8e1908f4eaf348f0399e35", + "value": "0x7405c04cbf39ff367c705ba3d7a" + }, + { + "key": "0x4ed55f236b424b2eeb2bc294c9359c3d917b6b20213a60c392be5a80c881e6c", + "value": "0xc43c1ec813c4eb6f3d5a529350b" + }, + { + "key": "0x3d0aa142dc42b652f1b3508e8fb2826dfc7556ec19e164975480ccadb6d04af", + "value": "0x10084fdc900000000000000000003473d6bc371393ac8f4b5ec24cbbf00" + }, + { + "key": "0x17759cc5f1ea42115b07d619687876d99d461226b855338f4598b74df1c31ff", + "value": "0x11c95779229399ea" + }, + { + "key": "0x5ae43f331a8a622606567424872fa15cadfd0558ac5ced42ce94308e6b7238f", + "value": "0x100779bed000000000000000000051527458de03c527d720ec8f3360e9c" + }, + { + "key": "0x50612e68e973cbf0e10d028a2f99693e88d14ed09652d6f2949845f21db7b8", + "value": "0xe61448276505cd6ac0d6e2ef69b4c4" + }, + { + "key": "0x155e1edb536d8329a2f4c47056e709e1f498bde49c7c151630595e906426670", + "value": "0x0" + }, + { + "key": "0x39e48bb6732b0757666e8e25a40b4098cc9b26fbc1339a85d72fefb17e79927", + "value": "0x1061ae77270649086a69b2e" + }, + { + "key": "0x793e98173caf930dd2d984f2fc1d9637968666c590097c7dd5501b8e4598591", + "value": "0x2264e1f354381d8273785fe801fb826" + }, + { + "key": "0x423bba863bbfeeaadf8d3125f46deaf420fa526e05af12185b5eac264557a67", + "value": "0x799f2aa9325f916f08f43a2168494e226649" + }, + { + "key": "0x1ccdf2e864090d61bc66335369d6d843f4b924d8d3771d9837d321637dcd63b", + "value": "0x0" + }, + { + "key": "0x794a9d29c1b58ba2b4bdd2e84165baf31ef0893d445cd2278776e5f0b434448", + "value": "0x800000000000010fffffffffffffffffffffffffffffffbc7663d3f514394c0" + }, + { + "key": "0x7d40347aa4e5dfd2a281b234596e495beabe234196f2d792a2f409885203df1", + "value": "0x55dad959" + }, + { + "key": "0x6809d9d0b0730bc34d1e67788822805b400f2f3e2d1e92a69aa06866e076a3", + "value": "0x141b0a7020f2a26b7d91c696b6063f50ef3" + }, + { + "key": "0x45fb8ffc8b8d0d2521fdc1b3558fea0c43ed03911387994698ae9e504026d44", + "value": "0xe031b66b9613d2b6638fd1ac4" + }, + { + "key": "0x50229573d58ff2427d4c4cec541cf8e48b7c4d2874219f303d51c9a0ec1ccac", + "value": "0x821aac1c027831db5b1b355e46b96c285bb" + }, + { + "key": "0x4132497dad473843597519958aacf2d48d55ff51d40f9db0ca1f3a0508c18bc", + "value": "0xe4de339b13f068b219" + }, + { + "key": "0x2b1f44177b8b10498c630ffd41039f3ceca870144ba89039e9f9488d081cde3", + "value": "0x0" + }, + { + "key": "0x645f8144544c42fa6c23429c6b9575ff383a167e5252629d8336b1ba423878d", + "value": "0x0" + }, + { + "key": "0x757b1930e6c32fb8eb91d0461013badb4594924dc37a75077779fea0a36d14c", + "value": "0x118b7479ddc2bc0b6da24728b78f3" + }, + { + "key": "0x3af7018c4aa6e5fa9c0422a94b88f858654f47a8bd2c875ecf0c2972a78b5b8", + "value": "0x5f57d10f2a23d8aa50450ca717785eb2" + }, + { + "key": "0x1b794a6117fafcf791c7edd14dabf3b3d87e5f472ecc11d570545f6ecafab7", + "value": "0x4dca77be0cedfae44b13c3c32e215afe6bd" + } + ] + }, + { + "address": "0x747808270c391d163b153ff2c4883c38df91366a5a03891eefd6a9b0a300f73", + "storage_entries": [] + }, + { + "address": "0x7ece2199084611f03ed04c0adf428b92652d08f3ef345e675d2967c7bc23846", + "storage_entries": [] + }, + { + "address": "0x30615bec9c1506bfac97d9dbd3c546307987d467a7f95d5533c2e861eb81f3f", + "storage_entries": [ + { + "key": "0x24dc99466e4418b4fccd818c369e805aa4b2c2e28731ca51ec24311cfb85a69", + "value": "0xccf9bf95ebc1c92ec88a3da" + }, + { + "key": "0xf1ec356adea149fcc8824a2b8712d81d1df416b0f8f8ac32931c66d5f80501", + "value": "0xb8ab714222a" + }, + { + "key": "0x4e9417c05bcf183e111558ce4666b053bbfe9736b74fba16b017ab7ae075f1", + "value": "0x148b2af8b1aa6558c" + }, + { + "key": "0x3e65716c9b9f010d10085941d0c6e6dfb190695b7cf09a71f0aca74ab94cdf", + "value": "0x68fa121135fa462f" + }, + { + "key": "0x2e3f9cadd00a7b869d6b98db5d32847ff18a5561c3f3f7a944380864c8f247b", + "value": "0x664321b9" + }, + { + "key": "0x3cdef5d80c6ad04af135e445867114b5ce32ed8dc8de667995f3d27760e3520", + "value": "0x100b56c8b1" + } + ] + }, + { + "address": "0x587350b0b10486d67c386818adafc63a793db9a821e54affdd15295ee4ab2c0", + "storage_entries": [] + }, + { + "address": "0x38925b0bcf4dce081042ca26a96300d9e181b910328db54a6c89e5451503f5", + "storage_entries": [ + { + "key": "0x7c6e61aa2332be6e5eb975531f9288db4d586e1f32b2d90564e8333aadc0227", + "value": "0x1c135bceeb0eab240cf3ce" + }, + { + "key": "0xf1bf7605929b135ec2c45855a2b119dd8044e3f873984566a6b695ef62daff", + "value": "0x57f323538f25eb155e296a22" + }, + { + "key": "0x6a46d9cd885bc4417057ad36530f5cad538e51f8a774bd3ec54ef49c2bbf609", + "value": "0xdaa146ca89419e03b7767ba2" + }, + { + "key": "0x2e061f5de60b8b6a1e5b1de07a2220c8b501aa8ed1f9afa5e546c12b8a0063a", + "value": "0x586438332aab9ec8312b665e6" + }, + { + "key": "0x6d7e9adcf6ffd2a2d826d050a899624050b3c8bf5913e8ac0b5c4cd83a6c57b", + "value": "0xf7caa123e8418e0470c" + }, + { + "key": "0x7e19c15c38d5e630ca573520a832fbf0c527538ca1223bd7d57dbd38a850fe2", + "value": "0x985cee8ce970602658e" + }, + { + "key": "0x7ce4350cb2f760096bf07bf99ec3428ab488a6bbe0f8505834190ffe77f8fd", + "value": "0x245d5e4fdf856bde705" + }, + { + "key": "0x2a6465fa4b76e577404b5fde0ac631f16f6613f8df262bdff56d7faaf59e29e", + "value": "0x32bba7a528fc42227f0c921" + }, + { + "key": "0x2e061f5de60b8b6a1e5b1de07a2220c8b501aa8ed1f9afa5e546c12b8a0063b", + "value": "0x541076b5a3d4553" + }, + { + "key": "0x7e19c15c38d5e630ca573520a832fbf0c527538ca1223bd7d57dbd38a850fe1", + "value": "0x60af34d6f34c7cdc943619" + }, + { + "key": "0x160299a4055271d4a3200a340d1f5d830c77eb2ba39d6cac23a78bacb770b43", + "value": "0x92f4fceea4b441326358a5936" + }, + { + "key": "0x3f4bb10a68f4e591ee94e94546ce408da0dc22eb52f265ffdf1fb192372302f", + "value": "0x4f8b35b7703e547f5" + }, + { + "key": "0x195973c478d5deebcf542291d2a6c4ffd9bd7e1bea0e9f0d012d7b5ec5c6e07", + "value": "0x140c9" + }, + { + "key": "0x6d7e9adcf6ffd2a2d826d050a899624050b3c8bf5913e8ac0b5c4cd83a6c57a", + "value": "0x957f81adeff00103b24928" + }, + { + "key": "0xe9fec61b390fec7329ba7f843d198df59c11d54c307d6fe99b592ca2701ddd", + "value": "0x97f7d6854271fadaf24" + }, + { + "key": "0xe9fec61b390fec7329ba7f843d198df59c11d54c307d6fe99b592ca2701ddc", + "value": "0x606f98861e058f3df122bd" + }, + { + "key": "0x1c872221e7c3919f427e7039c18d634fa2ff516f539c5a72776d82418ffa07", + "value": "0x23ed62a523" + }, + { + "key": "0x6a46d9cd885bc4417057ad36530f5cad538e51f8a774bd3ec54ef49c2bbf608", + "value": "0x7252c7f2bef65f580123" + }, + { + "key": "0x7c6e61aa2332be6e5eb975531f9288db4d586e1f32b2d90564e8333aadc0228", + "value": "0x265b66753736e0d8f99" + }, + { + "key": "0x6985f569a8606fa21a550a03e01eea7981fb7f4c596093f93328b74f5307a3b", + "value": "0x4b474f1265cb50f35927" + }, + { + "key": "0x6985f569a8606fa21a550a03e01eea7981fb7f4c596093f93328b74f5307a3a", + "value": "0x25aadb8ad4b4b7179d6c521" + }, + { + "key": "0x3af2e914f50b85bff7fc2be1bd68cae5480d7028ce1614de4bc0d057532cc18", + "value": "0x9acd8b7a04f9b0789896" + }, + { + "key": "0xa28cfb499cfb3d40ae63d0f22264c2307dfc5470ed650b8a215e2eaa9b535b", + "value": "0xa37aa02aa496c256ae2255" + }, + { + "key": "0x2a6465fa4b76e577404b5fde0ac631f16f6613f8df262bdff56d7faaf59e29d", + "value": "0xa455fcc6f37efb0fc349bd" + }, + { + "key": "0x7ce4350cb2f760096bf07bf99ec3428ab488a6bbe0f8505834190ffe77f8fe", + "value": "0x136843b1e1d943e5a52db86e369" + }, + { + "key": "0x53a72fabcb232ab168ddc50e412ddd013af4889547d53d9d324b31e194d5382", + "value": "0x9b34eda952747aa5cfb" + }, + { + "key": "0x32f1cab436dea760773cedbdba08222cbd5a3fec7dcb3f24a83b75298cc69b0", + "value": "0x2f779db9ad4f70f8f5f" + }, + { + "key": "0x4706f44ed777e95b1f5e77eebb9cdc2b8b5b06609a577ef3e08b4aead25e73f", + "value": "0xc65f74344e055690aeb7e1" + }, + { + "key": "0x160299a4055271d4a3200a340d1f5d830c77eb2ba39d6cac23a78bacb770b44", + "value": "0xa28f22ddbc4be80" + }, + { + "key": "0x247f5eadb6b478328e58ee9beb6367a36315eee18cf60840ecfa9b3963c3d0c", + "value": "0xf8bc4e84491b97c8eed" + }, + { + "key": "0xf1bf7605929b135ec2c45855a2b119dd8044e3f873984566a6b695ef62db00", + "value": "0x47a65ba9d17d9b9b7" + }, + { + "key": "0x337d1fc32ac94a0ed86f6de834ed0f15558c332800ff167dc6e02c81169a140", + "value": "0x20bc183294b9cab947f72a" + }, + { + "key": "0x247f5eadb6b478328e58ee9beb6367a36315eee18cf60840ecfa9b3963c3d0b", + "value": "0x9614c43c468b2810e37c0d" + }, + { + "key": "0x7ce4350cb2f760096bf07bf99ec3428ab488a6bbe0f8505834190ffe77f900", + "value": "0x47edbe25d74101004eb313" + }, + { + "key": "0xa28cfb499cfb3d40ae63d0f22264c2307dfc5470ed650b8a215e2eaa9b535c", + "value": "0x10f90b0c8fb741d446c0" + }, + { + "key": "0x337d1fc32ac94a0ed86f6de834ed0f15558c332800ff167dc6e02c81169a141", + "value": "0x2e4f27586fbb0a9271f" + }, + { + "key": "0x4706f44ed777e95b1f5e77eebb9cdc2b8b5b06609a577ef3e08b4aead25e740", + "value": "0x14c9ca56e7256f71efeb" + }, + { + "key": "0x53a72fabcb232ab168ddc50e412ddd013af4889547d53d9d324b31e194d5381", + "value": "0x624b632519379cae7d66b9" + }, + { + "key": "0x5eded9322252159b5a9eb57c1f24611d7c81a3a352ff4c06cd563ffee33ae26", + "value": "0x554ce52133ca562" + }, + { + "key": "0x32f1cab436dea760773cedbdba08222cbd5a3fec7dcb3f24a83b75298cc69af", + "value": "0x215e68e2b8efdee21626af" + }, + { + "key": "0x6a46d9cd885bc4417057ad36530f5cad538e51f8a774bd3ec54ef49c2bbf60b", + "value": "0xca1796a18e8e7005aa80f" + }, + { + "key": "0x5eded9322252159b5a9eb57c1f24611d7c81a3a352ff4c06cd563ffee33ae25", + "value": "0x46182c6f7736f48ae0e58fb2f" + }, + { + "key": "0x2a6465fa4b76e577404b5fde0ac631f16f6613f8df262bdff56d7faaf59e2a0", + "value": "0x10e7a718933265df155006cafbc" + } + ] + }, + { + "address": "0x6182278e63816ff4080ed07d668f991df6773fd13db0ea10971096033411b11", + "storage_entries": [ + { + "key": "0x1346dc977f2113769a445ae870cd03b60f2cd93721db57b67ace739fe19a39d", + "value": "0x1816665cf6abab9800000" + }, + { + "key": "0x235a4d83b9b27bde6943b4e26301642f73f6fb6e5cda141734b02962b9d7f9d", + "value": "0x6" + }, + { + "key": "0x34b79c5986b88d4d66b160f33f63f1286023f26e4f7c313fe62589757f36d1c", + "value": "0x5a8d2fc91666dcf88447a4e4be49835cd8f1d82235e7e94315e186f8004109c" + }, + { + "key": "0x1624351d46fb788085efebab759775feceb4783d69a6e09832f5105224f21e3", + "value": "0x80e94" + }, + { + "key": "0x850b49b3516b9aaffb15815cbe5b4e0ba4244f054d94400f9bb4c3263dfb41", + "value": "0x6cffe11b90f64c67d2993573f5eac222219a7615548031f7eefccbb10c23a56" + }, + { + "key": "0x2ad499e235aa25a967f9d20b01751474293ddc880cbb4842bbac5f9ea1bd508", + "value": "0x80e94" + }, + { + "key": "0x45f01fcc748f6e42e6314a6298fce2bccb11c97c4a1d790d992b00e58305121", + "value": "0x173a2bd9a4b7d32e00000" + }, + { + "key": "0x37a9774624a0e3e0d8e6b72bd35514f62b3e8e70fbaff4ed27181de4ffd4604", + "value": "0xfff3180a01c5686bea00000" + }, + { + "key": "0xd2cf9c95a1b7188942cfeb6b1935248a995bee9f0eaa6a60228e85cfc5696c", + "value": "0x7350cc9b7d39ecfe652215410b2b6e0fff7809e49dadde4e5acc52cfa7769ed" + }, + { + "key": "0x7862da4390902b03cf9afa05d8fb64af8f0dcdd44f0d47bb6cb93fc33670db5", + "value": "0x80e94" + }, + { + "key": "0x291625bbd3d00024377934a31b5cdf6dfcc1e76776985889e17efb47b3ce2f0", + "value": "0x80e94" + }, + { + "key": "0x9630a2b02b3895ac692995b137c2385c49aad3c184c5ce6dd6668464d19199", + "value": "0x1298533deb6f6d4200000" + }, + { + "key": "0x58e64865a10fc55f7a1109972516e129b66d33df752c532edcd5b2d361be2f", + "value": "0x80e94" + }, + { + "key": "0x6333f77e9d32365103266e32f148090e0de8fda952c59dbeb043299371d92f3", + "value": "0x161a2e1a398ca47c00000" + }, + { + "key": "0x17d92a5ef59f284e0816d1e00c104b1c29694c019a4d709096c1054939847cd", + "value": "0x3aef6a88215f46b1cb7ae42e2ccddf6902b9a69602240bf188e1ac7ba2f74d7" + }, + { + "key": "0x1e44381b0f95a657a83284ece260c1948e6c965da4d357f7fbd6b557342cdc0", + "value": "0x9014d" + }, + { + "key": "0x4cd2043a596f021051495b2f681b1acfd267f401aec23159cd87c617c5a6765", + "value": "0x80e94" + }, + { + "key": "0x3ffef0183cfb07cc130e827cd6e20e3837bf4942b3c948e0aaed5d4733e6619", + "value": "0x15b4894013b9a31000000" + }, + { + "key": "0x60d0352353dbe89978c2fc563f7db682339bc05bdf89eacc59ec3189b6c5746", + "value": "0x229bf6f1e103514600000" + }, + { + "key": "0x673988054750327564f4b0cc4181f098e096b0ee60c34328ff7ef3c0676d312", + "value": "0x2ee9de4f852ba000e00000" + }, + { + "key": "0x4148b7506dc2846c7f82218fb97b7fdee82c8447447dae943ba4f89b63a3bf4", + "value": "0x80e94" + } + ] + }, + { + "address": "0x78b15c151df98b885d196099761d0367b488ae6096acb52d2045c9a69e0b849", + "storage_entries": [] + }, + { + "address": "0x44cfbbc6fdecd7c69de3e708ab9b14503d866ac137a2c98a05e604c0ffbe432", + "storage_entries": [] + }, + { + "address": "0x4bdb0f76380de35ed67375293596c8d8fade06791a9682d79bcf56b0b861452", + "storage_entries": [] + }, + { + "address": "0x404e65bc0ed473b8a7c3acc2198deb7aa15542efb5d63f120978174fe0f705", + "storage_entries": [] + }, + { + "address": "0x7e793d2d87373af82e7162bebd385344723f2672de9fa7d8889093cb29d9a04", + "storage_entries": [] + }, + { + "address": "0x7bf92ed03e0796a98b95d4ff5af437025b6b57f561f2f01207193cdce849db3", + "storage_entries": [] + }, + { + "address": "0x3567a431b23ed466663344f0a4b28548fae24835f5702c4d913f635d45393a5", + "storage_entries": [] + }, + { + "address": "0x52f56ecc958ca4db86a185c44eaceb020b029dd080b8e672c44cbcb1709f5d3", + "storage_entries": [] + }, + { + "address": "0x1f659e8c74f2377cc1ffe826bcf1465548eefdbafa8bfab890d577997f16f8f", + "storage_entries": [] + }, + { + "address": "0x3a8c58a2b6652a6c1e1b00fedc578d7b6308a4db5de1ad37c03777fd442c2fd", + "storage_entries": [] + }, + { + "address": "0x489c8c4e6774d2b345a0117b5139a20850ed7e3733647d5677f4182504519ba", + "storage_entries": [] + }, + { + "address": "0x1c1e8e10d198107c66504ab7ad4d1ed8b67759914a6abcfe977d41cff44673d", + "storage_entries": [] + }, + { + "address": "0x25181df558ecd4bd0e01a7397a37b39b779a037173fd03d68ef90e14d13ba4b", + "storage_entries": [] + }, + { + "address": "0x6ce6e9d36083afc3b3d06b88621a94d2184e2cc101735faf241af701e05a638", + "storage_entries": [] + }, + { + "address": "0x8302ac9660f6b3c4d0779af6afbc737e8c369b5094e6274f98e4f2237507f0", + "storage_entries": [] + }, + { + "address": "0x550a08c82e35fe7af1fe375a142829c19973fbc57eb169fbe6f0bad23abac8b", + "storage_entries": [] + }, + { + "address": "0x2625c7662d20c6eb39dd4170bdb0cdfc3859ebbac3bd53c80bd058bc6b1360e", + "storage_entries": [ + { + "key": "0x7e5fffe7b7263c5b4341b59ca43c654f1eb9fcebfb3218d776e36029bd845db", + "value": "0x30d59665" + }, + { + "key": "0x22c55911882f7f5e99259872f51967fd2364d2ac0fade187c846af94c53ffec", + "value": "0x22315acb" + }, + { + "key": "0xe90fa9f0760c2d0eebaa6e847a0f904a422bb24b9dcfaaf1040f4cb14e74a0", + "value": "0x190060fb" + }, + { + "key": "0x2fefb42ab8ebf4d21b7b7552746886b01701bedcc0eab1b8fdcfe1a26be26cd", + "value": "0x1f6b6830" + }, + { + "key": "0x2880059b1f650f7eaa1d883603cb89b50757eff5fc80cbf2c34c034c77ceed8", + "value": "0x11113d1c" + }, + { + "key": "0x52fb5dfa1a999a8934c49632d89584f0bb142051672ef9b946a6a07df11d42f", + "value": "0x5203afd87d" + }, + { + "key": "0x42636ae230470a1c04184c3e366303b7ac07e7d38560e43c4ba88ccbbac9a54", + "value": "0x435b18de" + }, + { + "key": "0x9979eb6cf46846ed9d45d38e235c6c30cc183ce93cdd68d234a9c57616ed9a", + "value": "0x1fb31f403" + }, + { + "key": "0x8bcb1d1b740a3de24d1b2ab1f5d4fa2494eb869f871eb4899d3b169ea445aa", + "value": "0x168bf8f5" + }, + { + "key": "0x3eacb78ebceb31b81e48ab3cc4c23d6b3127c6d51d7da9f0253dbbc3a511e62", + "value": "0x1d5bc7cc" + }, + { + "key": "0x5e1336107105ef14eebb01dd02e2e4a7adffef0509704a83504548094321178", + "value": "0x1" + }, + { + "key": "0x104cde61e81f30f4354f6aa6e3bb651da3182e0e3781de6d8566fdb87a59d97", + "value": "0xae5d" + }, + { + "key": "0x98ce1ce255168ce23b0ffa68b03824917685b0a525422908c19049077d8af6", + "value": "0xf06a329b" + }, + { + "key": "0x6694d01257ef6f138ee13620559065708550ac8945ce6cddc6d8a01ebea79f2", + "value": "0xeb6777b" + }, + { + "key": "0x59b1910449a87b0ecccb3050dbcd85e6e8d0905e96f7cbb7e8219854509b74a", + "value": "0x64f995ef" + }, + { + "key": "0x69bc97133658040faea2a23603251b018774724d8890cda6b381ab0490264ed", + "value": "0x22b6bf3d" + }, + { + "key": "0x7ac033960a437e661fe81dd05c3b9a89fd2cb8c20c0b64ef0487d9b8390aff9", + "value": "0x1c1128e9ff" + }, + { + "key": "0x63f4fbb32f7230e684536a6e2d49f1c21cc35f779d8cbe4b27c11140c4992da", + "value": "0x311c3f18" + }, + { + "key": "0x6f9ecba91a53635e9c9bc7e251b5dd28f4f6c4d2d01dacb27215d440145976a", + "value": "0x2702d5ab" + }, + { + "key": "0x269cf854c0e3bbfdc0b3617511b59b2476ef95f638fc3e69a565e471c57cc23", + "value": "0x72d44d0e" + }, + { + "key": "0x104cde61e81f30f4354f6aa6e3bb651da3182e0e3781de6d8566fdb87a59d9a", + "value": "0x404a6633f5786a74e554f73147c0c309205592f5e4bd24829e72c88804f4349" + }, + { + "key": "0x104cde61e81f30f4354f6aa6e3bb651da3182e0e3781de6d8566fdb87a59d98", + "value": "0x115f41e" + }, + { + "key": "0x104cde61e81f30f4354f6aa6e3bb651da3182e0e3781de6d8566fdb87a59d99", + "value": "0x27" + } + ] + }, + { + "address": "0x1942d48f0dd79353f2fb0f96ccb9c26dfa91979a8f298839e1a720aeb51525e", + "storage_entries": [] + }, + { + "address": "0x715dea7c7a2ee64478c59b14c9ee6cea34afd3341e0ab774a4e365df55617c1", + "storage_entries": [] + }, + { + "address": "0x4a0de48d47eb78f20830216dc5ea03b59b5d45810ec5481e5b473f24ef75bc6", + "storage_entries": [] + }, + { + "address": "0x15562fbba7e3827833e9eed9966dfd78236ba821c125dbd831bb27df65c58dd", + "storage_entries": [] + }, + { + "address": "0x10fb790d0231ebd62c287fe96644c821c8402937f54baa616fbb3e7ffff5658", + "storage_entries": [] + }, + { + "address": "0x6cffe11b90f64c67d2993573f5eac222219a7615548031f7eefccbb10c23a56", + "storage_entries": [] + }, + { + "address": "0x64278d4f5d4dbd450728f650335ecf2b2c33934da2cee438e0c0b47806a3aad", + "storage_entries": [] + }, + { + "address": "0x7bd99c4b91ae91b10497c0dd3153a7024649a07daa270f33a49d6a9f2fea80", + "storage_entries": [] + }, + { + "address": "0x1f537cf547ccfdd7bd3b82c9986bb53a3392200e549af8c42fbb5048cc0d3e2", + "storage_entries": [] + }, + { + "address": "0x74252bba643c4a7bdadb048034611d2bc9c838c169ec4e258dc7797d951eb15", + "storage_entries": [] + }, + { + "address": "0x40c8efec9046fe6d5a2649db6894e8a2bf5c0e7c69b1793a618ab453b54846", + "storage_entries": [] + }, + { + "address": "0x6d08a8d48ab74f2327863d99ee6503873c18e032f666f0c09256888fd43b45c", + "storage_entries": [] + }, + { + "address": "0x4cecd416fbb4347412e82780e04d5de34683c2897d40fcfe3868d26cc7e05b1", + "storage_entries": [ + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df6", + "value": "0x664321b9" + }, + { + "key": "0x3342fa999fea16067b1f01baf96673f31a25f2b1443e6754d93fc40b57e8df2", + "value": "0x1987a63880" + } + ] + }, + { + "address": "0x79fea253b4424e0d4bf251c97b0b0f70e682b3d86952b8f534f150b05ae9afe", + "storage_entries": [ + { + "key": "0x402922120f24249808a766e4e49b8e42a6327d9746b29a54fa1afb2e6aee7", + "value": "0x687f55611baf503f66ca2bc2eb0d8e57" + } + ] + }, + { + "address": "0x453c4c996f1047d9370f824d68145bd5e7ce12d00437140ad02181e1d11dc83", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xdf68e6cf16f" + }, + { + "key": "0x654835af6bc9e9fef8ef05b4d8e7494714254ce72386be553c88c62abaef2e2", + "value": "0xd149c8c9" + } + ] + }, + { + "address": "0x4619e9ce4109590219c5263787050726be63382148538f3f936c22aa87d2fc2", + "storage_entries": [ + { + "key": "0x4fc5ac06140eff994e11e5d5a1380002c93e3b678b5a426b2987cadb2549ea", + "value": "0x0" + }, + { + "key": "0x21e1f7868a42adf8781cf7d3a76817ceaaafda5d56b7e7d8f26bc4f27ecdbe2", + "value": "0x5aab0d76fe0f6f96bd168" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x5aab0d76fe0f6f92be93a" + } + ] + }, + { + "address": "0x642cda1469d3f1d47bccfdff008450d15237e36b2b2f5fae8119fd0535b6278", + "storage_entries": [] + }, + { + "address": "0x5641eacf2a5d931620187c4c8a6683ee326ca2b6185ffa555e42f9dee1d7851", + "storage_entries": [] + }, + { + "address": "0x8ec06821b83cc624bc1d9ec0c1d4ea7bf95034a5fff594548cddad7c6abc34", + "storage_entries": [] + }, + { + "address": "0x36c696c570d289d6dffee1f7404c28b7a7bdd55706283f72cd00d7155d825d5", + "storage_entries": [] + }, + { + "address": "0x56d67f66809ec57245d745bc2e151acd693bb3036d3acdf46b6717dc0cfc2dd", + "storage_entries": [] + }, + { + "address": "0x4746c68f5f6d6bff7a16fdad6f543750bd6e46a7c00a9e5bb6820c86347fda0", + "storage_entries": [] + }, + { + "address": "0x782f0ddca11d9950bc3220e35ac82cf868778edb67a5e58b39838544bc4cd0f", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xa625fd2e5a6b5d5ce0122" + }, + { + "key": "0x4331141c998e957c01f1c883bbd3e9310797954b575f29cce1e692e1e97dd8e", + "value": "0x10f0cf05bc50ab00000" + }, + { + "key": "0x38c10662a48073f77efadb4820d93ad877d4de93741e9165b24bc8877d93b78", + "value": "0xb08b" + }, + { + "key": "0x6797657a3642e22bb84e0110f0629d503b141c5de128524ca60927c50b8b477", + "value": "0x664321b900000000000000000000000000010f0cf05bc50ab00000" + }, + { + "key": "0x629d6245aa4507b282027c6507ffe75d065bfeae31c7b1a196a90c654c42e83", + "value": "0x1" + }, + { + "key": "0x5cfdaec26bc363e31ef11eeb388dad4cacf7c9a26aac1de5af45219946518e0", + "value": "0xa0948ca0fde3dfcbbdc87a41ae47f906271898e5dee225535a61196b789704" + }, + { + "key": "0xa605d8074cebf3dfe135c59979ff0f53a87a965b3fc2c947b2039604a62fe9", + "value": "0x664321b90000000000000000000000000a625fd2e5a6b5d5ce0122" + } + ] + }, + { + "address": "0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d", + "storage_entries": [ + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0xbd593792dc868258bd38a" + }, + { + "key": "0x68a9645c71ed1c03cd7a06fe7508ac7d0f340c39701da637835841a0374d240", + "value": "0xdd9630288541eb70" + }, + { + "key": "0xa38e2098b8084e1a7ca72298ba107c94cebbaa03460e4695e2062fd53d2498", + "value": "0x9380782d0629f5bced34" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x1cb045e07728e196e4194" + }, + { + "key": "0x1dd904a624c0590289d0b99e76d14a0e36c09837bc00a5951f953e148e829c1", + "value": "0x138e0f7578c042400" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0xaadc7a427a51aae3d2" + }, + { + "key": "0x2ae384abfe124fd57348d40e21c4594a95aca6005b381e9096574e5e6f80192", + "value": "0x121ed0a0dbf3810d43" + }, + { + "key": "0x64d07bb734302efee58f55893c37de0662e0725f63336c7179a6b8865575eb", + "value": "0xa95e311ee0a633" + }, + { + "key": "0x4331141c998e957c01f1c883bbd3e9310797954b575f29cce1e692e1e97dd8e", + "value": "0x9184e700000" + }, + { + "key": "0x4303f9a8a386564a23333169d519922bd81a3521141a3f74c1cf536000a1398", + "value": "0xdfa371a19e6f787c86d1e9c0e97b5f8f" + }, + { + "key": "0x63598d730086eb7efbe4aeeea348852ba6ef3b3ec7efca3df1d4f265df3f3cf", + "value": "0x3b6615c53a1cb34c" + }, + { + "key": "0x35ad341e0a6545e87ca7bdcf2a487c66a337dd3856471235018a9b4a30a8f08", + "value": "0xa9cf2d7eb75a0f" + }, + { + "key": "0x433a6a0830a1462d574d5851a1fbb5560df4e04f5990419b9e58e4a2dd5c5f", + "value": "0xa9c82c4807946f" + }, + { + "key": "0x4fc5ac06140eff994e11e5d5a1380002c93e3b678b5a426b2987cadb2549ea", + "value": "0x813aadff248459c" + }, + { + "key": "0x54b9bd111792c69a2287c6546c41c8a5a6a724e7ad379602ff84921c563451c", + "value": "0x56bbab8811e4c8802" + }, + { + "key": "0x32b518a550e788c1f493cef8eadf5af951e34ec41cf62ffd16d1c102844a365", + "value": "0x37a55d7c8f88e8af5e" + }, + { + "key": "0x77f4c1613e0d14b85b44c571b0c3f1062fb1ccafa35b427ce37fa94c3948a6d", + "value": "0x3835634384843cd4c00" + }, + { + "key": "0x168e06589ed1429d749afaa1281b5f9e74a4cc19fcf352103f8fa7bd582a3d4", + "value": "0x8347bf3bbbffcc67189" + }, + { + "key": "0x77e45cb820f5574ffc603033e68bee156bd53811fff87cf7774014351775ceb", + "value": "0x17cdd620d27ea6b09" + }, + { + "key": "0x1afc2068f072d2c2915f54980edb9373af596bdd2795d37bc0c4e177e39e05f", + "value": "0xb469471f801400000" + }, + { + "key": "0x20b9ae30650303b655847e9b783fe784f1d2a3c56c82f4002ccab5c49b1d70c", + "value": "0x111a29af6ff5aa3978" + }, + { + "key": "0x5496768776e3db30053404f18067d81a6e06f5a2b0de326e21298fd9d569a9a", + "value": "0x4b44ba3dbccaf156e0" + }, + { + "key": "0x5d5a93ead2a8a02f01f95ae9d701461b4625d6ee21fd0d1c86a7b23925e9a96", + "value": "0xa9659c9c689313" + }, + { + "key": "0x4a095aa1769d6cf030f2bd5932e4b4fd10d48937850e7b780ca3b0b40da5c7b", + "value": "0xa6260f09002e628c00866" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0xa630a38824a89d9725537" + }, + { + "key": "0x7570459014098d9bfe2c9a9e02888133be7153260a847573ae2d0ed69cdce19", + "value": "0x0" + }, + { + "key": "0x64d8502cffe4f09149c879aaf88cd57c362b614e1a8bbf1154c558abd1398c0", + "value": "0xad78ebc5ac6200000" + }, + { + "key": "0x6ac150a59c70bbb92548f6b873b9f023cc569c74a5853b839045b9cacc0161e", + "value": "0x12396a23fe67ad180" + }, + { + "key": "0xe6cdb5cc91506c0f4f5db3d2f4d1226039bf87622eb6f0e35389ae33fe76e9", + "value": "0xa9cbd080f8c36f" + }, + { + "key": "0x3393d63091fb416242146706398a727a44218d573ecd24cfdb274d197ebd4e5", + "value": "0x14a74753b9999f83" + }, + { + "key": "0x1715dfbd02aa6e22565da75edc82c0237d6b1800b27daebe66c859ca663358c", + "value": "0x8bfc92f66ec6a940e8dee0" + }, + { + "key": "0x6f62a92863adb05d84b91fe4ae8fc2f4592ed93ccbf3743ae66ee3dd50aa2b7", + "value": "0x17d262c6522504049" + }, + { + "key": "0x3fa993adacc681439adaccc347de979c7052735cab4b8248adcd83c2be0e6cf", + "value": "0xec8171cd77f4ce589" + }, + { + "key": "0x7f0a3ff0244b195ae2ec1dbbc99bf7879236f8dc4e72c5709da87736266bfd", + "value": "0x63ff4ea204435db9a55" + }, + { + "key": "0x7972eed64137831abd0d9b351e81a32810d530691843ccb1a5fdd955356447b", + "value": "0x93ba" + }, + { + "key": "0xb1ec660c657884caed2618032e6bd97bc8d8aec744cd66e240555abc09c833", + "value": "0xaaabda607eeeaa" + }, + { + "key": "0x12ae57352f0fb86c372170a14641bb208dcb90dc5c29317dd76e75f197f4762", + "value": "0x9842a7f36a1195" + }, + { + "key": "0x573cf5f8a54f4e5172b57e81c7c1234b99b02794a6947b29292eecbd5898574", + "value": "0x6bd8fdd1c2252fc0000" + }, + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x9a0a3bf630c837d9a2" + }, + { + "key": "0x67bea5e527632ea79da5fb172b992d8341f5018596b56d2fbabb9644e47d45a", + "value": "0xad78ebc5ac6200000" + }, + { + "key": "0x18c2e5bf53d39f86474ab186d621c7cd7fa6c56aed93ae2112cfa79cc0935e1", + "value": "0x564851ce3731e735" + }, + { + "key": "0xb5311b97477466dcdc360c8c4fe96e478c684872f76c6a818b5768004a4947", + "value": "0x9acd8b7a04f9b0789896" + }, + { + "key": "0x3482028a053168257d07b12e98149c5b69e8a3bd40b4eca51649ddfc5c37ee1", + "value": "0xaaa411b7586dce" + }, + { + "key": "0x692e3edd9da06d9489e9256c6f00fae7031cabd36be61bed19263bf954b104c", + "value": "0x278fbc8177ec7f02779" + }, + { + "key": "0x6130e83f5e1ca37586b1b12ad527d7c09a8f46ed294db1e48ff83754bff5424", + "value": "0x1bc9ec02c9b96330" + }, + { + "key": "0x7e2b26cf9fe3ecb6843a8455bc92e2e3f402dae2f2666fa66168a6cd86b3ebd", + "value": "0xad78ebc5ac6200000" + }, + { + "key": "0x178e737974ad5eb75015148151281a69b01d03ab7c3584d26ad8adf78a331f4", + "value": "0xa9d6f8820e1948" + }, + { + "key": "0x1b2487e50618b3ef5e600cbf5d1d7e87b78611c1e0883bc8d97a61028e1f006", + "value": "0x98cd064776870a" + }, + { + "key": "0x111589179dd21dc1e92f5829eb986ec03e66181aac2f082c50c3ad1af2c36aa", + "value": "0x110634c1cd48989b235" + }, + { + "key": "0x4a99d105c330cfe17fe19413f871704c739b6641ca3c6eb0061e2d06a4f11ed", + "value": "0x1b223b2244b193f1ae" + }, + { + "key": "0x5a7a0269b464f3a77a50c4de3ef3ba7e2c253c514f440ef75786d28d59007d8", + "value": "0x1173b17a43dc9" + }, + { + "key": "0x7b5aa95a33fd6a53904d953461a66a0f9a9e5808540a14bf047736f6c6de459", + "value": "0x9d85d519d5a91e27" + }, + { + "key": "0x557c2abfe5eeddf1d7433d4e5072592705eb390dca229c5a6669bbc8dadb7fb", + "value": "0xa95e311ee0a633" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x2e2188298fadc6325446fc" + }, + { + "key": "0x14d8b6d891eacdb8a754a6dd3aeaaa8d4271648e2dad5f0e48141a57b7d8923", + "value": "0x310b9e5a4a91420d18" + }, + { + "key": "0x6745a8936213d9df3a1afbe57f43e7a1d1592393e78d9c58be1c400da073cfd", + "value": "0x3f8ef458d9ecadba" + }, + { + "key": "0x6dd03bbf901fe8f7e8a0a80e689ec1b8fbb019e779ad5ee26ae3b48cbd187ab", + "value": "0xa9c4650370d68f" + }, + { + "key": "0x3b6df0c17b76b4992fa833901c6038cabcb6c10a4af7aad4b6529f7eadfbbbc", + "value": "0x1c0133cebaa3d086" + }, + { + "key": "0x1eef30261b3b2c99d7441debc4b733ff6430bac933d2d680ac1ca2e58265438", + "value": "0xa981d77c643320" + }, + { + "key": "0x6197adcd550aab9195f46a31fb6fcc8b58faccab7f4ffdd30770eed06893872", + "value": "0xc32669874a6885b" + }, + { + "key": "0x6b7b04c872511cbddf485f2c014acaa806fd966d06a9f91615d5394087e20a3", + "value": "0x0" + }, + { + "key": "0x110d72e967a25e84433e44d5dc11f3ac9ebc2b1cdc33190a97d01ce2e3798cc", + "value": "0x1058b23c5c2a78cf0a" + }, + { + "key": "0x1f91dee9dc4c6966475385c9741200d7f6e62dfc34a8d0888f5c69ea8767ba7", + "value": "0x84af51fb9d5d8dc3400" + }, + { + "key": "0x27cadf27a2388c72be13c3758517bdb8c98fe3c7bd806eef1ed3a1ffc80e463", + "value": "0x3ef0433fbcd85b2" + }, + { + "key": "0x32e03faee2ec47c0dffe6aa4aa6c7b26d0e72f7bfdacc9e2626d6be9115e01f", + "value": "0xa9c82c4807946f" + }, + { + "key": "0x6fceb9ed1e1eeca7622e7520e35ff91bb13196d99ad929892e241d16d23fd3e", + "value": "0xa9659c9c689313" + }, + { + "key": "0x5d60844623fa059917325a41414939015b6fb19d226a17a8ca46d9232f87edd", + "value": "0x1154d3c2e9152aa52" + }, + { + "key": "0x7da94c212f227dc434a692b87890de9170fbd51293553e1a6e1d86f7a2c2cd0", + "value": "0x1599daa86d011d679a1" + }, + { + "key": "0x4d82998aa3d8e5173bfc632d048e555128ebde2d426f3235d8d67e72235baff", + "value": "0x48f4062260153e51cc6" + }, + { + "key": "0x1a97fa824bd8aee93f657daecae9948ba3055d31e8fe7abd43289798f259a70", + "value": "0x71da3bc67da0541" + }, + { + "key": "0x502e6ad66b2a877d2aad45b2bdae767a4efd99731f00cf1efd1241999713a92", + "value": "0x2732048a6487c99b" + }, + { + "key": "0x35797a18517c1fd13915a5627700b0d760193246d8120bc57e752590877adb3", + "value": "0xa968f99a2729b3" + }, + { + "key": "0x46387a1ba497a095a949555654be73aef82ff32df6f7bda3cbc7ffbb132f58e", + "value": "0xbc0c1eb20d030ae240ee5" + }, + { + "key": "0x51adc9cd83ac945c2a22217d3b8e54fbf204c63af09a9e7a3aec49f0f3ccd8c", + "value": "0x48f07fc92cfb3a61d228" + }, + { + "key": "0x3c33860d274b2b559e71c6190a38ae8aedda95366387155c63d55b1f028d4c2", + "value": "0x3df356d1a4190ef7cfed" + }, + { + "key": "0x20286bf87dd817d659f091b3f16ff66ff7f451e4a9ba223530245499ace149b", + "value": "0x984d93174b1a55" + }, + { + "key": "0x6be031011e8672541a00e9b255a549ad5f3c0942f1a0f9132cc9e24c29d2499", + "value": "0x1f612e45b16f135cf" + }, + { + "key": "0x5460e3ada357c552adbe9fdd830aabe59b7a3b43284240fb606458be8c6e09", + "value": "0x3d3343be02659c7a128400" + }, + { + "key": "0xd55420516a9dedf0005b191b56838366571dc7481815508245753e7965bf06", + "value": "0x25df36bfb24f23109eb2" + }, + { + "key": "0x682ed91ac0601afa4aa60caf059d6e8d9ed40b55be1bbb27c6e7d2177857083", + "value": "0x1cb8954fd70f333fa67" + }, + { + "key": "0x654835af6bc9e9fef8ef05b4d8e7494714254ce72386be553c88c62abaef2e2", + "value": "0x1e249018451674158" + }, + { + "key": "0x43e2a627b69b10a0d0364802f42110af90a93bc8f8b3ce1e95d3420ba66a989", + "value": "0x81b158e93217b9dd" + }, + { + "key": "0x2af4dc99dfc2123d6d7a6d5c55d0d753a34e1eb09b1d8d8ec9246503a5f94af", + "value": "0x983ee0aed353b5" + }, + { + "key": "0x704126300ef7dea06f50dee61cd840873d5d7b926c44a4bca164b33f06e67bc", + "value": "0xad78ebc5ac6200000" + }, + { + "key": "0x3d7ccfb9e9c5944c7a3226921716da0d42239892dbde7b12c1e5597d31c4124", + "value": "0x6f20a7dc5f885c6163f0" + }, + { + "key": "0x231115efee884cad332d7306f8c4d78c1754630d9121d6da2d91801ce1d624", + "value": "0xaab5214e27e2aa" + }, + { + "key": "0x7afefad1ff678d42e12f63a891ecc3939ebc812b8e815adf093f3441f4ea742", + "value": "0x98c875a637629d" + }, + { + "key": "0x4a6ee3f4e5db37d048b756c006490dfbf132ce96b7b51104ac8fa6a778878f4", + "value": "0x853a0d2313c0000" + }, + { + "key": "0x4959527a4f0391940257f39291fb5bc178becb45517a6b8576b085aec9776e5", + "value": "0xa9cf2d7eb75a0f" + }, + { + "key": "0x3f69330b043276696cddbe66ff3935b005b163b8bc848dfc20078fcdc81bd53", + "value": "0xe3aeb5737240a00000" + }, + { + "key": "0x65937e698f98da7cf9294cb8381283788a7fe57e8dc7f7334c62126b8a82a5b", + "value": "0x2930d96a7ceed6e8654f" + }, + { + "key": "0x4bcf58947927e646e00984851b78af6782025521b66b8f81b333e7649153828", + "value": "0xaa9acac9af79ce" + }, + { + "key": "0x732bb0f92574bf996ba06c5e0821e1e336ef4155f3a56d4413a0c40e77eacf3", + "value": "0x7fb270b4e548f89" + }, + { + "key": "0x35d7d7242eff6e573b33f19f0e7817038ac0f4b7e3c922d6022c89ed14dd460", + "value": "0x1c37cf8481734ed4c336" + }, + { + "key": "0x1b22c213bab207c3af24d7fa5b6270bd41067835bcc689fc0524f4b147481bc", + "value": "0xa31062beeed700000" + }, + { + "key": "0x72eaa8bba5b8ff56513ef6f52fc45e988e8e126224fc1aaa18ccdf0df52d6db", + "value": "0x2cff98dcfee35e7083f0a68" + }, + { + "key": "0x36c31e8a578d3caaea670ad94ce584b4add4a9051d94fad1ac4b6b0cc3218e0", + "value": "0x4d56c967a0b3a13c138" + }, + { + "key": "0xec2011ed5c63f654e66caec1e24274325d7a6cb9e4e52b78704978a0280602", + "value": "0xa9cbd080f8c36f" + }, + { + "key": "0x120f04059157ce54e0845ffa0def2b8915fea52e4e8850896d7490c71dd727", + "value": "0xad78ebc5ac6200000" + }, + { + "key": "0x5c844e85e0f579b24e3170dfce559684958d9a435ad0acf8ec8ac1ec56f37cf", + "value": "0xa961f863776413" + }, + { + "key": "0x6eb2cc377fd46c4a32047db4ebbf0e208e83875f705fbdfd9adc9e65593e3df", + "value": "0xa961f863776413" + }, + { + "key": "0x6d3758ddec400f63405723dcd7a03bb1a75a5d271c6fbcb34aab6fd226ec184", + "value": "0x5d64155e238b4852eae" + }, + { + "key": "0x7aad5dfb2918b0001f7c5d8f2858b2f47c86e3fa1139fbeb6931fb9a3800b6", + "value": "0x5aab0d76fe0f6f96bd168" + }, + { + "key": "0x70b82bfdf473a10f47148ae4452ddca0a7fbcfb1c5bbe89e4515a5c8c8aafbb", + "value": "0x4bc08d4f7d2cc5b" + }, + { + "key": "0x198cad3852091abe6c9f5c48eae1534d0b36d9808cc1d35823da39766ab4864", + "value": "0x2b73744a82fcc52844" + } + ] + }, + { + "address": "0x155e28e1947350dac90112f3129b74e3a58d38132c8c26f8552002d78c3656e", + "storage_entries": [] + }, + { + "address": "0x156dd32e0cadf327fced723316878cd43c30d8d2b3742a570579b73c1171971", + "storage_entries": [ + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0xcdee8bfaf84567ce" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x664321b9" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x5327d36550c96" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x109c2c36960555a010064241" + } + ] + }, + { + "address": "0x72ac7cc4b9361c542c489833f1a437c8840fe20e78fa1b4a2d20e21ba45e1c9", + "storage_entries": [] + }, + { + "address": "0x66c9e44350c8f98a38c51addc3bd1ba49f917329a127230723088ebacd5aed8", + "storage_entries": [] + }, + { + "address": "0x74a95fca4405f799c8331cd2363ca2bafb4c91c23456db41fed8dbcf87ee261", + "storage_entries": [] + }, + { + "address": "0x5d0b5aa4cbb6d61b7e3c063f3e9c36111fbb465da025b033a351ce4c310d150", + "storage_entries": [] + }, + { + "address": "0x6292c2edf8d4899b321958aa57999b4f021c1cd613202d801446147fde112a", + "storage_entries": [] + }, + { + "address": "0x7775f49184509dd5c45d8a8d966a60bd472cbcc60c366d7cd21252c1adc2804", + "storage_entries": [] + }, + { + "address": "0x11c999ec3feb0bb211322b8771d9cd537542f53a6075100c85d889f06813459", + "storage_entries": [] + }, + { + "address": "0x7d16759e6ffce8e8d14331ae0f79e328eaa6dfefc1200347f221e9ceeffa4c2", + "storage_entries": [] + }, + { + "address": "0x4bfacd0fcf70f444815de9150008fd12b5fb6721562707e502ce71ccb327d88", + "storage_entries": [ + { + "key": "0x42e4a440fc5fe0cf46b4b468a34e72aea8f56a1779753c3f4ca92ec9d195684", + "value": "0x2a10002002218042820410200800614" + }, + { + "key": "0x2207cfb8ada73baf41a9fbcdafcd8783736dbc7a0d3df3917967275376f48d2", + "value": "0x2022100002b000a1c10810820c010010" + }, + { + "key": "0x417d0c8605efba9cb2feb972460584f7ca63205bb24bcce69f748cf7a9d8cc2", + "value": "0x800000114010104094000603002000" + }, + { + "key": "0x61a02df87775731c3177c2a48baa31d89048c6aaba6c07b8c7db219c8bb8b9b", + "value": "0x9565f9799dbc9ece69e6dffbdeee7b0a" + }, + { + "key": "0x260f5756fa03b3417967a55da9490c77ae5fc77e51207f4bf757b91168682d3", + "value": "0x80000100010000088004080020001040" + }, + { + "key": "0xd33dd49cf80396644d5c75d64dbfd6e7237ea7982b764f3fecbd7340f1540e", + "value": "0x8100010b020001008020224948800" + }, + { + "key": "0x210672c69d99061fdf68048ae54c566f93155dc7c8742f063e1e32db65c3c1e", + "value": "0x400241126000402000000810a0828000" + }, + { + "key": "0xe9ba7e3fcd8fbc04c287fdfdcae1d4c49e59a354f23ef6283ffb594ca7d83a", + "value": "0x10940c08044010804400800001210110" + }, + { + "key": "0x2237ea48d25f48f241f9034aee070dc472c5ed839496dc9b6830d5809dd52a5", + "value": "0x11979108091b205088c0b44105880100" + }, + { + "key": "0x76b541b572512de75010e126d3667cfa452fe0caf1d2fba099ac2bd3e9b3a73", + "value": "0x4f00e77a7d6ba59a5f0143598dbd88a5" + }, + { + "key": "0x31aaed833fefefa8bd078e02373fc4fbd8daa4c78bc8b10889bb0452d650c4", + "value": "0xbb274f4ff7f9f67eee7fdcd5f3fd2e8c" + }, + { + "key": "0x2d23d021cad503e3a9116962b1aae9ac8a06e6aab26a864234d05d29002dd9d", + "value": "0xc10004903042840c04300938100100" + }, + { + "key": "0x5aaa1ff21ee4173421eb5ff959826f13aa2b555069a511bf398de6804f02ae5", + "value": "0x4320099712e00b048044b08450592826" + }, + { + "key": "0x7a4660d0469ad14db154a7a46f5102f38337f51a8dfe5e3a0e7a86232b56de6", + "value": "0x180100400000002101084a000204a" + }, + { + "key": "0x709361711da3aff9983c6c563da29b3a9f5f8956131e72ea1244b22db6972d8", + "value": "0x40000080400210020008000012150" + }, + { + "key": "0x1dfe3ce9f69d1f779996487e30126028e89a362e8aa8605c53397c960f1db2a", + "value": "0x2200100008400b0008400042180110a5" + }, + { + "key": "0x7b45b2e4c4c2269cf134fc25e649b3720fb498a83c5d2f90b52a82208e9be2d", + "value": "0x9000000840403840001010804c000000" + }, + { + "key": "0xe0ed58e17899fb2dba14308145f4bf00bcce8fdd6b69f0f0d483c1bc661b04", + "value": "0x50209003000124000a8052001020001" + }, + { + "key": "0x31e6d779794d212b7f8da2c35ca97a6df6ec7c31e3da8bcec8c7cc97ee59312", + "value": "0xc08000a20000010e00040800040014" + }, + { + "key": "0x56f8e3c321cc4001770d09165b6ed8701f55559d8d6ad8907ca5c0f6166ccad", + "value": "0x65010102220008005000000014440980" + } + ] + }, + { + "address": "0x1a88c725bd3b6df417e8a223b47e1a82f1df14eaa9f94790664b7659cc1a7ed", + "storage_entries": [] + }, + { + "address": "0x886eb10f15a74b72abdad8c11110b0e70351059e9afdb8fbda264cb1413cfa", + "storage_entries": [] + }, + { + "address": "0x49a139e9a4f00d0aebba879363fe4f0a37dd9e08c92e48263ba024e0c3e973b", + "storage_entries": [] + }, + { + "address": "0xd2d2715bd37db3e2d172e43b0a5bc4e5f254c64ca623f0cff38c3bb373ce22", + "storage_entries": [] + }, + { + "address": "0x6d40248098154bfbe3e35bf5dc2a5b5f5afed83a29ab4ae595c95d20074f83", + "storage_entries": [] + }, + { + "address": "0x353e51f04546fb2b18505711ecaf432ef36e911d0a6fcd192007356c0fc839a", + "storage_entries": [] + }, + { + "address": "0x46ff096282494b7a1a4086890b3a25e0934804e782d288a66edeb7fe173210a", + "storage_entries": [] + }, + { + "address": "0x17732c0983ad71ed0cdfdf349e68fe808af9a77348f5bf6bc8641b6b7fb0d63", + "storage_entries": [] + }, + { + "address": "0x66733193503019e4e9472f598ff32f15951a0ddb8fb5001f0beaa8bd1fb6840", + "storage_entries": [ + { + "key": "0x7af134b7c4f8214516c071148fe043502a19625938f2a16f0538ff40518abc", + "value": "0x1d9141e1182489eb614edb8ae010" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20e", + "value": "0x3c0c7794c000" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x53e09d290b2f7f" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x4d56c967a0b3a13c138" + }, + { + "key": "0x19dbc9b4eab95d05b7871c69cdeef24e69dc2a3536f0c6bf169000dc1fdd20d", + "value": "0x4f12a2411a166db7983b8a1bed9ace6d" + }, + { + "key": "0x2712b812fff3c2f3b38d4c532c684b5a1800dae9c4a8001c6f855bb520c7c5", + "value": "0xd5546612f1d04ef885160a26" + }, + { + "key": "0x332df419aa058c3f4b36acbf5af4b7e8e3d4dd58918d5f0ab2841741e7b55c2", + "value": "0x664321b9" + }, + { + "key": "0x6be031011e8672541a00e9b255a549ad5f3c0942f1a0f9132cc9e24c29d2499", + "value": "0x932799de39a" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x61df0332e" + } + ] + }, + { + "address": "0x5f5ad291b88cf3d39f6213ed50883dd640ee75d3636a19b39be816961e80bd3", + "storage_entries": [] + }, + { + "address": "0x1", + "storage_entries": [ + { + "key": "0x9c677", + "value": "0x68263378d2eb39b8bf79e73c17a743b0041ef4a472ed3f06525baea229460b8" + } + ] + } + ], + "deprecated_declared_classes": [], + "declared_classes": [], + "deployed_contracts": [ + { + "address": "0x572c1243c18e74ebbed28fb0d5a3758856efca4c81a369a742a0b63a5acf202", + "class_hash": "0x4c6d6cf894f8bc96bb9c525e6853e5483177841f7388f74a46cfda6f028c755" + }, + { + "address": "0x7a921d4e323ea8ec79cd9aef61fad588eb68f3f958fda0edff1032430273098", + "class_hash": "0x29927c8af6bccf3f6fda035981e765a7bdbf18a2dc0d630494f8758aa908e2b" + } + ], + "replaced_classes": [], + "nonces": [ + { + "contract_address": "0x794039cc6354bd9eac32a343864277150d55e5584d87ea26035d447abd5bce2", + "nonce": "0x54" + }, + { + "contract_address": "0x4ea9c40dd97bb615386905b82b249cf8dd5100b10efdbf5823752d870518d25", + "nonce": "0x1297" + }, + { + "contract_address": "0x2db63eb7103179092f702a571f344e3c6bbfb5cb325d0a653a80054f36a3256", + "nonce": "0x25" + }, + { + "contract_address": "0x7568a4f6e7bf3167886c37f3aceac87e3bbedc3607f0c6d7e0def52bca04f35", + "nonce": "0x1a" + }, + { + "contract_address": "0xb680ebd0431d9f56aba1708e534eebd84f79b1579b16d669cba8ea192f15f0", + "nonce": "0xfd4" + }, + { + "contract_address": "0x62c52c027ca7c26a621b4b82cd916cff700d7d116ba974b9ab99e776b019355", + "nonce": "0x49" + }, + { + "contract_address": "0x4ed4730764eb58efff233cb7bbacf02fd7626e9acc3d3e3bc745aaa1208388e", + "nonce": "0x56" + }, + { + "contract_address": "0x84570c646079aa1d54fdec1dad722698f6e664920b4f1e194241dc9c2d20ca", + "nonce": "0x4" + }, + { + "contract_address": "0xa9651e29b175aa3da6b2a3f1ab37381f977aeb77ef8a107e2dd7d69bf44921", + "nonce": "0xabb" + }, + { + "contract_address": "0x127abf6839eb04057ad300222c1829f36d7edeeeb164ef8418cd77670f62647", + "nonce": "0x4" + }, + { + "contract_address": "0x3050b1e84c1b409e435a1457ad17fa95a1ee6b334a17b7e75b60867cf294ec1", + "nonce": "0x4" + }, + { + "contract_address": "0x428dd1b256d94cb42072748bcc7d2f91d50468ee014f288d6c95ae84ebe5662", + "nonce": "0x4" + }, + { + "contract_address": "0x5585e4ffe5b68bbb5197af4d374e49a39ebee59f60d60c56a745154a62b55bb", + "nonce": "0x136" + }, + { + "contract_address": "0xc442e9260bec89d02dd1171b674b40dad76a95763bc82bd8c4ea39e4017be6", + "nonce": "0x3e" + }, + { + "contract_address": "0x7d4ef4c8000858c8930dc7e95fc2f35cc7542413df00ded717df3a867e63cb", + "nonce": "0x256" + }, + { + "contract_address": "0x71e5405ace1afd64c682e65b08360b573c00370f4e3ad6e4f2cd800ec7d93d2", + "nonce": "0x3fe9" + }, + { + "contract_address": "0x15dfcd07bd8f4626373ad9bab3e258b668e322188d1f13ee438c120cae63721", + "nonce": "0x534" + }, + { + "contract_address": "0x41f367f6acac1dd34c0a6fdd2f864092311718144873a698f84e54433fb190e", + "nonce": "0x27" + }, + { + "contract_address": "0x5c7c70ae3b0921ff3c53b37dd4fe832c337e4793e078f737130ea33c1f29f9b", + "nonce": "0x25" + }, + { + "contract_address": "0x717b16d98a187634bdbe079775ccaf84cdccf6adecf1a9f5f09f21d738b4ff2", + "nonce": "0x12a2" + }, + { + "contract_address": "0x7b289b38c4ef84cd870763cc68836dbdd02704bb86582987772899e5967eb3", + "nonce": "0x41" + }, + { + "contract_address": "0x6bbf928c395b296c1ecc108cf322217711f2881e7189b728a2e12d24eadf75e", + "nonce": "0x149" + }, + { + "contract_address": "0xf1706d1bcb97473f79195f5ffcb9935293a56a6d4682f69fda8f548be40b5b", + "nonce": "0x1316" + }, + { + "contract_address": "0x2526a480f54c710677aa9568eba87c8e4935a9686bae336ff5a92b2ec4e845b", + "nonce": "0x53" + }, + { + "contract_address": "0xb582f43c3e7c16b979a9e7ae8c4af6c7d61dfe6e47831af56b2f90d2ca7934", + "nonce": "0x1310" + }, + { + "contract_address": "0x1913358e45e2781792ca7914b74a2201699d58eed72b755f29e76b1da6249d0", + "nonce": "0x50" + }, + { + "contract_address": "0x4a3c8b0af00c11d77e5cf4ef901112a8700eb8e1e5c41973bee927ab5ce1324", + "nonce": "0x17" + }, + { + "contract_address": "0x5fe3fd4a114b43c6878eff6b415aa0034b8fdf5cacc5acee9cdbbac23ae80f1", + "nonce": "0x4" + }, + { + "contract_address": "0x133a3f007150e2e12edf73233fb876377fcc7853efe95f6226dd5aedb6201f5", + "nonce": "0x4f" + }, + { + "contract_address": "0x572c1243c18e74ebbed28fb0d5a3758856efca4c81a369a742a0b63a5acf202", + "nonce": "0x1" + }, + { + "contract_address": "0x133a05ef1be9371b26fc8f867719f23860efcb0b9b77b6eb2fb74d15eaa4049", + "nonce": "0xdfc" + }, + { + "contract_address": "0x6bce17c535b369e37fc051c3f54db06073a6d91acd8498f4bcdae9d6232c8cf", + "nonce": "0x4" + }, + { + "contract_address": "0x3252f644d3381c085fa4b6d8b74e61eaf41e1aa42a2439fd131b33fe61434bf", + "nonce": "0x80" + }, + { + "contract_address": "0x266e9e5f11db140b211b9f64830dc3d0751090184531a222eaef6975c301040", + "nonce": "0x4" + }, + { + "contract_address": "0x394f098960193db3fe2ea55c6c97910d7b91c0e96e50cdec2fcf47f00fdc051", + "nonce": "0x4" + }, + { + "contract_address": "0x5b20c75a785aee5ef10ce42abff4638cd2266c14e98f894467d34a3a949bf5b", + "nonce": "0xc66" + }, + { + "contract_address": "0x5543d69bfdb8eb7286141ef4099ab67b18036e81931525629de6a2b6402af3a", + "nonce": "0x1284" + }, + { + "contract_address": "0x40b08e984c07ac01b2b0592ecd31a3cabeb5b462a4802ebf322dcab29644705", + "nonce": "0x2c" + }, + { + "contract_address": "0x5758b6124c7df831483d3c1c7a2bd96367bf51e751d4ccdd0a326871e878f23", + "nonce": "0x1435" + }, + { + "contract_address": "0x4096023f0aa573dc76a63b747b2c70c5754e8ab19c823f936a50f30720830b", + "nonce": "0x18cc" + }, + { + "contract_address": "0x2a4764f52ec576502c2eba2b0cf4a12ba20cc26a3568ad42a3e0001650fa6e1", + "nonce": "0xbb" + }, + { + "contract_address": "0x747ecd1d6a18939b0fd8e9caabc0fb61fcc88fc3f38da5fdebd1c17624d9137", + "nonce": "0x1bbd" + }, + { + "contract_address": "0x613a9f425a3f3caae65cf26a56f65db80d3fca0c3f9afb5c1420334acf99d39", + "nonce": "0x1043" + }, + { + "contract_address": "0x14798306bdf27deafacb3d5fdc17693939db586eb956e5c9075e0fd4e54cd12", + "nonce": "0x70" + }, + { + "contract_address": "0xd3584f3653618e080604294f952cdaf1c8f496e858641196ef6dc1f2692503", + "nonce": "0x1b9e" + }, + { + "contract_address": "0x7b36ffd1923786863824d2c4292893cd988c8b9837c0a206b3dce01821425b3", + "nonce": "0x1e6e" + }, + { + "contract_address": "0x2e4eb111979a8d37b5dae9b2b12bb3eadeb79eca10ba7e9f1853f3e1531afb5", + "nonce": "0x1cac" + }, + { + "contract_address": "0xad567a6cab02f221a79f34bb5eeff7742bd0870b808e642f3cd1ed223152f", + "nonce": "0x4" + }, + { + "contract_address": "0x570c0cd5f78a7a85a2bde612eef43aed43f3445f0b7fa82e726c381a1d18e80", + "nonce": "0x2a" + }, + { + "contract_address": "0x524006d0ecbbc610624d11ebe3d9b633362542a440a74e57c561c52d867151f", + "nonce": "0x269b" + }, + { + "contract_address": "0xf7b40a51ab68621a620990df612ee244b0675cc767b7ee69c28ebad07acfc1", + "nonce": "0xa4" + }, + { + "contract_address": "0x3aef6a88215f46b1cb7ae42e2ccddf6902b9a69602240bf188e1ac7ba2f74d7", + "nonce": "0x156" + }, + { + "contract_address": "0x46d438ec4de720e7147646195758d27495ec71b8e8a49ff6ef5a2b456804a58", + "nonce": "0x225e" + }, + { + "contract_address": "0x18e20a71b38bc0bb5a094c5cdab9748e2205ec8d93171a279e5178a0e4b371d", + "nonce": "0x87" + }, + { + "contract_address": "0x247b8383f0e4ce35ce4b9f8c1d2b11fab2b73aabc29f48bb2fc16a1ae7f645e", + "nonce": "0x38" + }, + { + "contract_address": "0x2813d3e926edaf07ee0859308da8e0bdd69dc396c172de1690b327faac1285f", + "nonce": "0x54" + }, + { + "contract_address": "0x3ddb5a3b5e6dd4869c6e8bc34b3924771ea4c0d7e0af73ba3c238aaaa4101a2", + "nonce": "0x2ccd" + }, + { + "contract_address": "0xd123b43df66c3bbe3e19bcd66261d7613f3a3feace81a61f27e24b79a226d7", + "nonce": "0x14" + }, + { + "contract_address": "0x33c6b3abffcac3a134618b3a668fe8bfce7b97c8b283ce8a17a167afeea38e9", + "nonce": "0x52" + }, + { + "contract_address": "0x6e499837da4d946172e8030eaff0d090a6b5b33c603e36f1511645f71aaff0d", + "nonce": "0x3a" + }, + { + "contract_address": "0x356ef866fb928ceeecfc8e76f25da96927614ef43eb5ab8d1efc4dc91984e6c", + "nonce": "0x12b7" + }, + { + "contract_address": "0x1601b1e13d1441795f59e109306617df3eaae339fab8888b0cff9a2112d90ff", + "nonce": "0x146" + }, + { + "contract_address": "0x35c9a1c47d077eb2e2c5254c7d6ff0492ab95dff42e83f0331baf1e4d07e4a", + "nonce": "0x128f" + }, + { + "contract_address": "0xdb0450edd7a35be5edfaf53cfa1cf0d59abd578cd54f5d363ab463efe8ac9f", + "nonce": "0x60" + }, + { + "contract_address": "0x2c60d4c124a68f3ac7feaa0940b765a5f29ae272c3c12c66eca1961e1047580", + "nonce": "0x47" + }, + { + "contract_address": "0x15e9c885a9e1c7ba44408bf077f4465cdee4fc1a7ea6085e44dfa48337b2974", + "nonce": "0x52" + }, + { + "contract_address": "0x5a40fe05719ac68c5f49236e34ad526f0e9a7193a7e986aab1e99951f40a9eb", + "nonce": "0x1d27" + }, + { + "contract_address": "0x499d864d40bc3f7e46103c8c761992162ef0e21221143c31b451a690cf007f3", + "nonce": "0x16" + }, + { + "contract_address": "0x57061acd9af14171fe4d973dcdd9f82b7bea887b711a88e784ee96fdc25e63", + "nonce": "0x73" + }, + { + "contract_address": "0x55cd0042bd90f56419e566db074af18b68e8aac5fb2587b40efb0b695cb3221", + "nonce": "0x4" + }, + { + "contract_address": "0x65f0af7a16417140e6732be2c87646ca7a2ed302d81068350e0edbcb8b3f9a9", + "nonce": "0x1438" + }, + { + "contract_address": "0x25d12040e9c681b1587a65c9c60a4dd048b303104d95d0965517ccbab14d443", + "nonce": "0x4" + }, + { + "contract_address": "0x13859fb2679061efe34f02081c0a130d1ed67005587942498c275e77f00eaa1", + "nonce": "0x4" + }, + { + "contract_address": "0x70f8001232949b40909c84ff82eb4f90c6be95724fc91527b833a40ed094108", + "nonce": "0x19de" + }, + { + "contract_address": "0x50f093130645a4b406e9ef52a565c6c89f262f18266c599f0942b0879d2fcd9", + "nonce": "0x2b" + }, + { + "contract_address": "0x48f85e968fc39f5d060d62b73f1ec721ca15f7f0f0db5214abb7a4094f320ed", + "nonce": "0xea6" + }, + { + "contract_address": "0x6bb8b6108fe2b5df594c81b616a7dbc427c9b035e2b7d5d615caeffb0d43dd6", + "nonce": "0x177e" + }, + { + "contract_address": "0x1aef647305d8fcdebf80b5df1c3fe90dc73e655c1bf002ede56c77cacbd1ccf", + "nonce": "0x3c" + }, + { + "contract_address": "0x2952155b01ce465a4814d48d40769429ae5f7656714a1d278569c5ec0eb77be", + "nonce": "0x741" + }, + { + "contract_address": "0x584ec3dd754842c8c989447d164e5025a5472c3118d876ce5046ffaad7930b3", + "nonce": "0xc" + }, + { + "contract_address": "0x5f7869e122ab4f9b540b5ae2ed2be89dd6942589e67564fd99ccad214fd241f", + "nonce": "0x3b" + }, + { + "contract_address": "0x2c7c7a33d9e897d9dfababcb1d0830a62a3d6aa81d72d2c3179ca343f4fe364", + "nonce": "0x5c" + }, + { + "contract_address": "0x5a8d2fc91666dcf88447a4e4be49835cd8f1d82235e7e94315e186f8004109c", + "nonce": "0x155" + }, + { + "contract_address": "0x3d2043810dafc87a47c865ff64ababe974ac777e1eb2eef5ea79c57de630cd", + "nonce": "0x37" + }, + { + "contract_address": "0x338724b89122b27c1d639c4e1ba54725af2ca038e70a5a8e90fcf86b06aff80", + "nonce": "0x747" + }, + { + "contract_address": "0x1e422d86a44ab9441489beb2db6049813c6a1e88935367c32af7262e18f23f2", + "nonce": "0x12" + }, + { + "contract_address": "0x74e2a974dfe277107b741daa34216f2927e009e9dd24d0cc651f0cd339a8f06", + "nonce": "0x1f" + }, + { + "contract_address": "0x60391c8d5226fcfdc7cdf1c57a88574844db9151dba51981d50ac9709b71e9b", + "nonce": "0x628" + }, + { + "contract_address": "0x54bf278afcc8cd465abe6f324d0805600a8138bd812d204cea89e84bbce20b8", + "nonce": "0xfa8" + }, + { + "contract_address": "0x4c874b2a46fac31d629ab318b1982dec1098eef8ed0c8342b1b7226b0082aae", + "nonce": "0x1d01" + }, + { + "contract_address": "0x7f43b97463ef083970f8490cc39166d93404824f9e8b9a40a7005cc01bf1116", + "nonce": "0x1b16" + }, + { + "contract_address": "0x29888b3c917674616985a54b5274a2b1a04393e82aedc24c25891474b56968", + "nonce": "0xc0" + }, + { + "contract_address": "0x1f323f00c8cb6ac46ac737c63fa35332cb8570796ec58c0a9d5588eee8e8e34", + "nonce": "0x34f8" + }, + { + "contract_address": "0x20cddb33dc1001e5a6ecbfb3bb019d7e446385ba995c0996e165668966bb97c", + "nonce": "0x4a" + }, + { + "contract_address": "0x5680082063ed35617ba64222f8d47117461eeb7936936dce71095ae7fc5f637", + "nonce": "0xbe" + }, + { + "contract_address": "0x63ecd18f6faa6beff2885ed2f7140052a2aae8cdb073e0f1431975b5e9aa9ac", + "nonce": "0x15" + }, + { + "contract_address": "0x6707675cd7dd9256667eca8284e46f4546711ee0054bc2dd02f0ce572056cf4", + "nonce": "0xff96" + }, + { + "contract_address": "0x3d837aa354c5170ace739da9f1868958ef152749fd0cf2cd209669b813d676", + "nonce": "0x64" + }, + { + "contract_address": "0x1814eace3b035a6b64424eacc3563d3675ccc0bba3c5df1a9c5aacecc8e32d7", + "nonce": "0x882" + }, + { + "contract_address": "0x1f9578157483430a512976f0dc21de8f9bc3b92d7445928e9df63ba3e3c84ef", + "nonce": "0x45" + }, + { + "contract_address": "0x65dc25f42afd66e2a5c13230ce0075d6cd44683afa73329b85b71448cc877ae", + "nonce": "0xb" + }, + { + "contract_address": "0x7fa03960a0bd2a5139fbc74ede86fea079d54d7df2799da7886407dfdff0ecd", + "nonce": "0x2a" + }, + { + "contract_address": "0x39aa937808f4a098a0825172f73b84239d83b7a13fa63b3b537af39abee4bff", + "nonce": "0x12ff" + }, + { + "contract_address": "0x7662487addaf6da4271d0af2ef310872e3489c8404f173b464b877cc429051b", + "nonce": "0x34" + }, + { + "contract_address": "0x1f78042ca65d29145ba4f54cf0c0631c1f5933c48648beb18e062e31ad642c1", + "nonce": "0x9c9d" + }, + { + "contract_address": "0x5d8295acc535136cd4053873e701de4a7f881c8a820b763fc384bfc9d128104", + "nonce": "0x4d" + }, + { + "contract_address": "0x33fe9e5ef69200fe764450fddac77f6b48c0b92111fbba72862233d1cbdb35d", + "nonce": "0x4" + }, + { + "contract_address": "0x6d252051ba1c22d7bcd6a625ae2e6729cb7a4d911f2a3a7c293149fe3fca01b", + "nonce": "0x37" + }, + { + "contract_address": "0x4a07322bb3ef7daa549cc9f43c23678e0f6d4d2ee357c17726dff25b4e73a3d", + "nonce": "0x685" + }, + { + "contract_address": "0x1a929b947cb5dcf7c1c25d4e231a58d843489ff1f9345bed38da00181f48f5e", + "nonce": "0x51" + }, + { + "contract_address": "0x248ff122648be7d6a88a66e4b57151460164fd958948f18637c8aa0f049da3c", + "nonce": "0x54cb" + }, + { + "contract_address": "0x14b5e94bda1421d55e930b45fc9a5fc6f246353c400e84fdba8fa843f8cc9fc", + "nonce": "0x59" + }, + { + "contract_address": "0x271d6be9971ac7f8502348820708e84d4ee50865aaf47f306cc9ea60736a103", + "nonce": "0x78d" + }, + { + "contract_address": "0xef9f3b1c40af7e66094605bdf8574bf6593700f246ced34f43fff9c33e4d75", + "nonce": "0x26a3" + }, + { + "contract_address": "0x5a6e6e55bd8980fc2d8ebda12e948125d30b9fe3867a495aa78375f069caf86", + "nonce": "0x5e" + }, + { + "contract_address": "0xdb9ab07d3bd7fd6974852c8c485648da3d26541a7446f16efd176fe19101ca", + "nonce": "0x4" + }, + { + "contract_address": "0x71268986e3c2339fd68d2ee6bbc8868355504c29b91ca9779d2f3bc5296c46f", + "nonce": "0x9c" + }, + { + "contract_address": "0x5a2b23cf18135d8eeb36479d2ecbff086c5bcc9565d79a6fd53438c5c423927", + "nonce": "0x5f" + }, + { + "contract_address": "0x4e32ec7e71519d5961beda4fe900e2319f34797c2ce3b6878ebe1c77377d922", + "nonce": "0x40" + }, + { + "contract_address": "0x761bb41dd866bc729fcc11c359f247b9cc2049b327336cb133cd3a3c219b477", + "nonce": "0x30" + }, + { + "contract_address": "0x4df1200afcd103cd6261542a41eb14a68ce1bec6a6b2cafc36a488e94b59779", + "nonce": "0x43" + }, + { + "contract_address": "0x5c845591f684f34689c8ca55d740f42cbd55f68f915e1626052825e1dbc0970", + "nonce": "0x52" + }, + { + "contract_address": "0xd5b42d36d5d046364607a1ece1608dc28eb14dccf92e4429f87298fbe5d4b4", + "nonce": "0x22" + }, + { + "contract_address": "0x191c1f5b2180c63cbf02ebbe85a82e6ea5ddd189fcb0334ff4d6c62f41d6c30", + "nonce": "0x53" + }, + { + "contract_address": "0x4baf0721eb6526b4209f530aabbbacb897f6fab7e4bb7aabdda57cc2a41ac7d", + "nonce": "0x4" + }, + { + "contract_address": "0x6e4d6390228e7241ccb475e8409bcb2ecdc444db9b3d78b7dee8bbf185860df", + "nonce": "0x1ac" + }, + { + "contract_address": "0x4c429b69d99ccd0bf1e4777c836f15ca6a7caa18aee4fa15d834f5fc4ef72f8", + "nonce": "0x3112" + }, + { + "contract_address": "0x5bde3263870c52161a8f0fb0f19800358288eed67a05f0b49074326eb98a070", + "nonce": "0x1bdb" + }, + { + "contract_address": "0x213c67ed78bc280887234fe5ed5e77272465317978ae86c25a71531d9332a2d", + "nonce": "0xebc1" + }, + { + "contract_address": "0x41e4544106ed84a0276c5e8ae5436af6a568c19317205f9509f77da4d556e3c", + "nonce": "0x8e4" + }, + { + "contract_address": "0xdbb4c502cc99d81230c9b1185f5c620ddaf4eb68827b56a6bdda7c1dfdc33a", + "nonce": "0x35" + }, + { + "contract_address": "0x2f9759ec4c8c089ac481e1b791bec65b4bd1b3aa3128330e9301c6233fb6f61", + "nonce": "0x39" + }, + { + "contract_address": "0x1183c2675825b5707491a6f2e8973d1a10d6648e534c7ed19a89f423567ee9", + "nonce": "0x4" + }, + { + "contract_address": "0x411c2a2a4dc7b4d3a33424af3ede7e2e3b66691e22632803e37e2e0de450940", + "nonce": "0x10584" + }, + { + "contract_address": "0x79dd521cc08105684c9cdb37c33cebda8b563f8194fb0eaa54d807c92f129b8", + "nonce": "0x1017" + }, + { + "contract_address": "0x47818ee28928f65956d5abafd502b6c68ea9b52df2140341f5b0a513c170b9f", + "nonce": "0x2d" + }, + { + "contract_address": "0x400d53e74cb235968f1e3fe3ccc6e3512dbfb2632c2c8e9e79abca4fa01414a", + "nonce": "0x1c2c" + }, + { + "contract_address": "0x2965f4a3f2973650da8bfd28de55d7d3f5e8758ce2d37784ef4a05adedd04d5", + "nonce": "0xe0a" + }, + { + "contract_address": "0x4aad29f635be29ce955eab9b488ff920be63dd83ff4d581f873890bcfaa923c", + "nonce": "0x9b" + }, + { + "contract_address": "0x5ae048a93936c77b8f2525fcd5b7a867cadf23ea33c922c05d241e72c003be1", + "nonce": "0x12f2" + }, + { + "contract_address": "0x620102ea610be8518125cf2de850d0c4f5d0c5d81f969cff666fb53b05042d2", + "nonce": "0x22e7" + }, + { + "contract_address": "0x222da647ad05611bd04d7493b420ff7504715211950154c71339ba79500ad71", + "nonce": "0x41" + }, + { + "contract_address": "0x3ccba12965a96dd6470b11a0b3c1c3ff12bc107cedbe3b03aaf92424c550995", + "nonce": "0x4d27" + }, + { + "contract_address": "0xa0948ca0fde3dfcbbdc87a41ae47f906271898e5dee225535a61196b789704", + "nonce": "0x31" + }, + { + "contract_address": "0x21d71ccbeb6f76437cb06cdd3e09fa91975c38b0fb17b57e6691fca13d270e1", + "nonce": "0x31" + }, + { + "contract_address": "0x3e9593a603882b4bafb54f0e92f318d65cd21027a7cddb94503179aa4f0a093", + "nonce": "0x4" + }, + { + "contract_address": "0x60db27f1ca3465408dfa5653365708b56b5c8d5bbb554dbe86c4965874974fb", + "nonce": "0x37cf" + }, + { + "contract_address": "0x2e118b4a71db6e9fa6a8557466040e836fd3b1c53a54278d8e27ac19470251e", + "nonce": "0x1ef1" + }, + { + "contract_address": "0x5984c673069b9f5c44ccd078a257d9d3cd342955305b1cc0e514e1c9c62ffc3", + "nonce": "0xdf7" + }, + { + "contract_address": "0x12c3666b3f45d3ab63cae565f4204664bd1db88260456127863fad3874005cd", + "nonce": "0x121" + }, + { + "contract_address": "0x4c0978d7f0b348f82096a94ff67cb1e0249657b2cb2b34d1ca90c2081d4f227", + "nonce": "0x127d" + }, + { + "contract_address": "0x50846b713e4aae4cb066f322dab6e4a2a381ce28764a23c6e18ca9b4d7d7d34", + "nonce": "0x45" + }, + { + "contract_address": "0x5523be94a7861e616f83f1947edd01db906bef2b6648bb89b95fe53f9bb0efa", + "nonce": "0x125b" + }, + { + "contract_address": "0x2000e23393d2a3ce1e13b0ec6d333ae4f235eae3454a5a2173944abf70d720e", + "nonce": "0xa26" + }, + { + "contract_address": "0x7350cc9b7d39ecfe652215410b2b6e0fff7809e49dadde4e5acc52cfa7769ed", + "nonce": "0x152" + }, + { + "contract_address": "0x2a5ebbe29e70647a2232e60d4a53b037d1a4c89ffc0472526f3ba646b369705", + "nonce": "0xeea" + }, + { + "contract_address": "0x5a01606303636f456ac6eb511fdfeee42e43d9485b1b9c30556540395260f2e", + "nonce": "0x44" + }, + { + "contract_address": "0x41ae4dc9ca184f80d95aa96d78792a08a253e7fff9f055937489454d82b1f26", + "nonce": "0x4" + }, + { + "contract_address": "0x36960ac1943af9e26283e9da3a355262f852c5ca0be2e78c11f48d394d3e932", + "nonce": "0x30" + }, + { + "contract_address": "0x28c22311b9be6be0b55cdf2ac571acc1a56308a5e754c5a9e15c004dad9691d", + "nonce": "0xc" + }, + { + "contract_address": "0x2b86094d3a7c4e642577798c000827ff1d664c75bd3d9728786cdb600670117", + "nonce": "0xf0e" + }, + { + "contract_address": "0x17b674705c353a4394f6ba94b271c3cfa505e0260d3ce06251ae3074ddeb9b9", + "nonce": "0xc" + }, + { + "contract_address": "0x4636f4b501947792b3d29117c4d582748e1cb067d5bc5b0baa53ae092116ac2", + "nonce": "0x4f" + }, + { + "contract_address": "0x4010054c1cf9647633de4a99dc15cffe44e76aad7d51caad7b9b2ece8580b03", + "nonce": "0x5d" + }, + { + "contract_address": "0xdac5ae4b400d9677918eb10ec864779926e8bf1f4ce9da8b2c254d01fb3d01", + "nonce": "0x106" + }, + { + "contract_address": "0x26a2d80fce47dffb79c1b15431f796204ec627cdd59a8e2338300025f72b10c", + "nonce": "0x55" + }, + { + "contract_address": "0x52bd9a38cf469573a8ef6a229f2288782e86cc919afcde9d1db161399b27127", + "nonce": "0x3a" + }, + { + "contract_address": "0x451e8681e82e69a5ad456396f79c108ce6ac4b4fc765dc0e50a1f29b77dc36b", + "nonce": "0x12f8" + }, + { + "contract_address": "0x261fe4d3815ac0503d7c86ba9ba8d74a55551ee2f89665a3d163cdb40a6d624", + "nonce": "0x1486" + }, + { + "contract_address": "0x2055710baa11e128b44c95853d61ff549106b4d03ba87b38b6c3bfac1c78968", + "nonce": "0xb" + }, + { + "contract_address": "0x7903e183d6cd390c0f58d52d49b016c3844722bca68640177c20f62d5116473", + "nonce": "0x4" + }, + { + "contract_address": "0x63187720d892a76d390600ab857e9ffd390c597be14ba4063c49f10ab9953b1", + "nonce": "0xeeb" + }, + { + "contract_address": "0x2b6f51f8db7d53b135bc4eb5c1f11c16c3c30487cddbfdf67ae1c39325ff9", + "nonce": "0xc" + }, + { + "contract_address": "0x7e1f365baf57057ce5f9e091f9574f29b51283616cbea8e0ccb57c36a80cd4a", + "nonce": "0x29" + }, + { + "contract_address": "0x1ae80d66cc58dc4250a95a019a8c6dcb11f2bd0053ae6e9136c03b01be59a88", + "nonce": "0x67ae" + }, + { + "contract_address": "0x578fbffaf89eb9c4e7921abb605ecc6e273736afa28161ee20af1b6b2184c29", + "nonce": "0x2d" + }, + { + "contract_address": "0x56c1ba030184fa30b30eae72c152ea69a3ec36cc62d6d17b8ea34c7b0ffb1b1", + "nonce": "0x52" + }, + { + "contract_address": "0x55646e4ea015a2d1ce11d30eee12cf1f10b1423bfab8fe029406624fa0e080f", + "nonce": "0x1e" + }, + { + "contract_address": "0x62873a99982c0f17b3fc24499c61dafdb58b53678779b0a1df02b53d4cee44e", + "nonce": "0xdf7" + }, + { + "contract_address": "0xef72863484028cce4d15b5965d26156a273d1ee1cd72bf4ed7abee4190ee57", + "nonce": "0x4" + }, + { + "contract_address": "0x5ef25b100a2540377bb3f150fa4d440f7873970cd19c59b1139d6b0759841c9", + "nonce": "0x4" + }, + { + "contract_address": "0x57e980208954e55a1af061c53ecdf6609ef1bdbc6ec3f700a23fe8c55cbdf9a", + "nonce": "0x2610" + }, + { + "contract_address": "0x5f7348fcd9fcd13b1ebf3ed51992cbc6d93e1582f9f37f4f0fbe2cc7c9e0c56", + "nonce": "0x1c8a" + }, + { + "contract_address": "0x157d59e23fe92cd95d4ec4d185054257681491fdb2aa118eba322e624fb374b", + "nonce": "0xe29" + }, + { + "contract_address": "0x4824d37cf12be557fa46f624c561722952d64d045abee90d88cfe3e36c710c3", + "nonce": "0x3" + }, + { + "contract_address": "0x8fc4b3ccf30f93e39bad9e5a1baca65e08a18549d6300b32249c26c8d93015", + "nonce": "0x35" + }, + { + "contract_address": "0x28f0a535b5e3c877f5c9e122a93c400072bad001b5aeb96f5d89b2d3cd2ba8f", + "nonce": "0x4" + }, + { + "contract_address": "0x747808270c391d163b153ff2c4883c38df91366a5a03891eefd6a9b0a300f73", + "nonce": "0x4" + }, + { + "contract_address": "0x7ece2199084611f03ed04c0adf428b92652d08f3ef345e675d2967c7bc23846", + "nonce": "0x4c" + }, + { + "contract_address": "0x587350b0b10486d67c386818adafc63a793db9a821e54affdd15295ee4ab2c0", + "nonce": "0x1b29" + }, + { + "contract_address": "0x78b15c151df98b885d196099761d0367b488ae6096acb52d2045c9a69e0b849", + "nonce": "0x195" + }, + { + "contract_address": "0x44cfbbc6fdecd7c69de3e708ab9b14503d866ac137a2c98a05e604c0ffbe432", + "nonce": "0x6" + }, + { + "contract_address": "0x4bdb0f76380de35ed67375293596c8d8fade06791a9682d79bcf56b0b861452", + "nonce": "0x1f" + }, + { + "contract_address": "0x404e65bc0ed473b8a7c3acc2198deb7aa15542efb5d63f120978174fe0f705", + "nonce": "0x19" + }, + { + "contract_address": "0x7e793d2d87373af82e7162bebd385344723f2672de9fa7d8889093cb29d9a04", + "nonce": "0x627" + }, + { + "contract_address": "0x7bf92ed03e0796a98b95d4ff5af437025b6b57f561f2f01207193cdce849db3", + "nonce": "0xe2f" + }, + { + "contract_address": "0x3567a431b23ed466663344f0a4b28548fae24835f5702c4d913f635d45393a5", + "nonce": "0x56" + }, + { + "contract_address": "0x52f56ecc958ca4db86a185c44eaceb020b029dd080b8e672c44cbcb1709f5d3", + "nonce": "0x67" + }, + { + "contract_address": "0x1f659e8c74f2377cc1ffe826bcf1465548eefdbafa8bfab890d577997f16f8f", + "nonce": "0x234" + }, + { + "contract_address": "0x3a8c58a2b6652a6c1e1b00fedc578d7b6308a4db5de1ad37c03777fd442c2fd", + "nonce": "0x12f5" + }, + { + "contract_address": "0x489c8c4e6774d2b345a0117b5139a20850ed7e3733647d5677f4182504519ba", + "nonce": "0x52" + }, + { + "contract_address": "0x1c1e8e10d198107c66504ab7ad4d1ed8b67759914a6abcfe977d41cff44673d", + "nonce": "0xf83" + }, + { + "contract_address": "0x25181df558ecd4bd0e01a7397a37b39b779a037173fd03d68ef90e14d13ba4b", + "nonce": "0x12ab" + }, + { + "contract_address": "0x6ce6e9d36083afc3b3d06b88621a94d2184e2cc101735faf241af701e05a638", + "nonce": "0x4" + }, + { + "contract_address": "0x8302ac9660f6b3c4d0779af6afbc737e8c369b5094e6274f98e4f2237507f0", + "nonce": "0x12a8" + }, + { + "contract_address": "0x550a08c82e35fe7af1fe375a142829c19973fbc57eb169fbe6f0bad23abac8b", + "nonce": "0x192c" + }, + { + "contract_address": "0x1942d48f0dd79353f2fb0f96ccb9c26dfa91979a8f298839e1a720aeb51525e", + "nonce": "0x61" + }, + { + "contract_address": "0x715dea7c7a2ee64478c59b14c9ee6cea34afd3341e0ab774a4e365df55617c1", + "nonce": "0x1bc6" + }, + { + "contract_address": "0x4a0de48d47eb78f20830216dc5ea03b59b5d45810ec5481e5b473f24ef75bc6", + "nonce": "0x35" + }, + { + "contract_address": "0x15562fbba7e3827833e9eed9966dfd78236ba821c125dbd831bb27df65c58dd", + "nonce": "0x1a" + }, + { + "contract_address": "0x10fb790d0231ebd62c287fe96644c821c8402937f54baa616fbb3e7ffff5658", + "nonce": "0x50" + }, + { + "contract_address": "0x6cffe11b90f64c67d2993573f5eac222219a7615548031f7eefccbb10c23a56", + "nonce": "0x1e15" + }, + { + "contract_address": "0x64278d4f5d4dbd450728f650335ecf2b2c33934da2cee438e0c0b47806a3aad", + "nonce": "0xed2" + }, + { + "contract_address": "0x7bd99c4b91ae91b10497c0dd3153a7024649a07daa270f33a49d6a9f2fea80", + "nonce": "0x25" + }, + { + "contract_address": "0x1f537cf547ccfdd7bd3b82c9986bb53a3392200e549af8c42fbb5048cc0d3e2", + "nonce": "0x12d6" + }, + { + "contract_address": "0x74252bba643c4a7bdadb048034611d2bc9c838c169ec4e258dc7797d951eb15", + "nonce": "0x1279" + }, + { + "contract_address": "0x40c8efec9046fe6d5a2649db6894e8a2bf5c0e7c69b1793a618ab453b54846", + "nonce": "0x10" + }, + { + "contract_address": "0x6d08a8d48ab74f2327863d99ee6503873c18e032f666f0c09256888fd43b45c", + "nonce": "0x53" + }, + { + "contract_address": "0x642cda1469d3f1d47bccfdff008450d15237e36b2b2f5fae8119fd0535b6278", + "nonce": "0x12e0" + }, + { + "contract_address": "0x5641eacf2a5d931620187c4c8a6683ee326ca2b6185ffa555e42f9dee1d7851", + "nonce": "0x1fc4" + }, + { + "contract_address": "0x8ec06821b83cc624bc1d9ec0c1d4ea7bf95034a5fff594548cddad7c6abc34", + "nonce": "0x11" + }, + { + "contract_address": "0x36c696c570d289d6dffee1f7404c28b7a7bdd55706283f72cd00d7155d825d5", + "nonce": "0x26c0" + }, + { + "contract_address": "0x56d67f66809ec57245d745bc2e151acd693bb3036d3acdf46b6717dc0cfc2dd", + "nonce": "0x355f" + }, + { + "contract_address": "0x4746c68f5f6d6bff7a16fdad6f543750bd6e46a7c00a9e5bb6820c86347fda0", + "nonce": "0x536f" + }, + { + "contract_address": "0x155e28e1947350dac90112f3129b74e3a58d38132c8c26f8552002d78c3656e", + "nonce": "0x329d" + }, + { + "contract_address": "0x72ac7cc4b9361c542c489833f1a437c8840fe20e78fa1b4a2d20e21ba45e1c9", + "nonce": "0x128b" + }, + { + "contract_address": "0x66c9e44350c8f98a38c51addc3bd1ba49f917329a127230723088ebacd5aed8", + "nonce": "0x4d" + }, + { + "contract_address": "0x74a95fca4405f799c8331cd2363ca2bafb4c91c23456db41fed8dbcf87ee261", + "nonce": "0x4" + }, + { + "contract_address": "0x5d0b5aa4cbb6d61b7e3c063f3e9c36111fbb465da025b033a351ce4c310d150", + "nonce": "0x67" + }, + { + "contract_address": "0x6292c2edf8d4899b321958aa57999b4f021c1cd613202d801446147fde112a", + "nonce": "0x1d3c" + }, + { + "contract_address": "0x7775f49184509dd5c45d8a8d966a60bd472cbcc60c366d7cd21252c1adc2804", + "nonce": "0x52" + }, + { + "contract_address": "0x11c999ec3feb0bb211322b8771d9cd537542f53a6075100c85d889f06813459", + "nonce": "0x1acd" + }, + { + "contract_address": "0x7d16759e6ffce8e8d14331ae0f79e328eaa6dfefc1200347f221e9ceeffa4c2", + "nonce": "0x54" + }, + { + "contract_address": "0x1a88c725bd3b6df417e8a223b47e1a82f1df14eaa9f94790664b7659cc1a7ed", + "nonce": "0x37" + }, + { + "contract_address": "0x886eb10f15a74b72abdad8c11110b0e70351059e9afdb8fbda264cb1413cfa", + "nonce": "0x38" + }, + { + "contract_address": "0x49a139e9a4f00d0aebba879363fe4f0a37dd9e08c92e48263ba024e0c3e973b", + "nonce": "0x27" + }, + { + "contract_address": "0xd2d2715bd37db3e2d172e43b0a5bc4e5f254c64ca623f0cff38c3bb373ce22", + "nonce": "0x30" + }, + { + "contract_address": "0x6d40248098154bfbe3e35bf5dc2a5b5f5afed83a29ab4ae595c95d20074f83", + "nonce": "0x12ef" + }, + { + "contract_address": "0x353e51f04546fb2b18505711ecaf432ef36e911d0a6fcd192007356c0fc839a", + "nonce": "0x4c" + }, + { + "contract_address": "0x46ff096282494b7a1a4086890b3a25e0934804e782d288a66edeb7fe173210a", + "nonce": "0x1f11" + }, + { + "contract_address": "0x17732c0983ad71ed0cdfdf349e68fe808af9a77348f5bf6bc8641b6b7fb0d63", + "nonce": "0x1b43" + }, + { + "contract_address": "0x5f5ad291b88cf3d39f6213ed50883dd640ee75d3636a19b39be816961e80bd3", + "nonce": "0x11df" + } + ] + } +} \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/671070.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/671070.txt new file mode 100644 index 000000000..942e88f8c --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/state_update/671070.txt @@ -0,0 +1,4432 @@ +{ + "block_hash": "0x3ce506e8eadfce1d621ab1eec105dfa43a9ae815e9b6b5e5bf9404e7d9a1653", + "old_root": "0x5f2db08bf7c3f0d7fd74a1800ed2c01de8f86e2fbbdbdcc57ce85ebb9ee6714", + "new_root": "0xb431bc099d6150401d820cd1bbef1765870945e967257e9184948cc57e1360", + "state_diff": { + "storage_diffs": [ + { + "address": "0x461682cc22e417a1fdaeeebf75171d20ea9ee3192ef2994241ec738a9011ec7", + "storage_entries": [] + }, + { + "address": "0x4b0a18b01c7816f86ae1a33df53e84572c0c79107b967ce2e7bf4a8b641d553", + "storage_entries": [] + }, + { + "address": "0x42bd58d8bf6b3872365767868b3f1f9fbc183c23f10566006cd84ce234265b8", + "storage_entries": [] + }, + { + "address": "0x15a288e90db4951762d0c156f48b7efa2ffe5a75bd12f55d8e6a38fbdddfc0f", + "storage_entries": [] + }, + { + "address": "0x6182278e63816ff4080ed07d668f991df6773fd13db0ea10971096033411b11", + "storage_entries": [ + { + "key": "0x3fe65e1dc9c95b8eac23689a73f4e7d2977698e5fe18fc94a6efaaa83957f8", + "value": "0x9ab12" + }, + { + "key": "0x7906d24c8b377670fb2b1d7bc71e1c6c0e5d6d9493853d59d62047e7f08934a", + "value": "0x9ab12" + }, + { + "key": "0x17d92a5ef59f284e0816d1e00c104b1c29694c019a4d709096c1054939847cd", + "value": "0x7110d84a0b0a3e8673e1f7d465c3f6c6a886ba7bb7c090b26053b150c7fd7a0" + }, + { + "key": "0x291625bbd3d00024377934a31b5cdf6dfcc1e76776985889e17efb47b3ce2f0", + "value": "0x9ab12" + }, + { + "key": "0x733f376b663b01387ab10c524d5af310326ed27da0e54d4a4cbd39eb4bbbbd2", + "value": "0x35453afed2c0941a00000" + }, + { + "key": "0x5229ab8ddc4fce669ee1f6915be36634a47c6c78014936862652adc6cf7bdef", + "value": "0x4f5447253a34ad18d8318f724272523285aedaff0f906f68b3e7ba45502f2c5" + }, + { + "key": "0x37a9774624a0e3e0d8e6b72bd35514f62b3e8e70fbaff4ed27181de4ffd4604", + "value": "0x12dfb4eb3e4f8419a0600000" + }, + { + "key": "0x70857e4361260cbed70dc16aa24e12881387b03d85f57e41d6d50c75df8e963", + "value": "0x9ab12" + }, + { + "key": "0x3fe54d14de82782a416569965d98673d641110f9d6d60d41c7506a793305bb6", + "value": "0x3218142da42888ba00000" + }, + { + "key": "0xd2cf9c95a1b7188942cfeb6b1935248a995bee9f0eaa6a60228e85cfc5696c", + "value": "0x42bd58d8bf6b3872365767868b3f1f9fbc183c23f10566006cd84ce234265b8" + }, + { + "key": "0x7b18ee438a4cb786abb44d6b67568802844f509cb0cd00d90bced8e919bb593", + "value": "0x9ab12" + }, + { + "key": "0x7b38e60d778428e2c06ec2629ba01a271f1147e404d9ec1f052645d62d59e5d", + "value": "0x9ab10" + }, + { + "key": "0x346ca968d0ca7bec3a9a1fa43c2c794dcc399233e6576801107224767eea48", + "value": "0x541866b17b40bfd2a00000" + }, + { + "key": "0x4b2e54e5cbbfe91c6e474cf38d1d0d3b98a2828c07120075db7037b0d3a98ad", + "value": "0x34362e0e6de33afa00000" + }, + { + "key": "0x24576f6382820f978c61c8faadb29d8c87e2f9316229615648a6498256d5ce5", + "value": "0x9ab12" + }, + { + "key": "0x7d42c1838d13fa94d3f00304fe618766ad0ada8e0138966e8161b47a92c7e69", + "value": "0x9ab12" + }, + { + "key": "0x34b79c5986b88d4d66b160f33f63f1286023f26e4f7c313fe62589757f36d1c", + "value": "0x3620d1fd141578ab27fa1d0d33f51658e50d08af34792422c95035929a8e80b" + }, + { + "key": "0x2ded8b6438d8d3a6c7ec09be02be120ba4e4bdc9b2c4df40c8080571b623099", + "value": "0x350177c2b9893dd200000" + }, + { + "key": "0x39e455f60a1063efa5d0fe90d769cdd3788905e25e2c34fa671b0b97e76a11a", + "value": "0x9ab11" + }, + { + "key": "0x1e44381b0f95a657a83284ece260c1948e6c965da4d357f7fbd6b557342cdc0", + "value": "0xbb8eb" + }, + { + "key": "0x1bb47a0abe408857c4c31360732fab2d090206287d740c6d4d69f2dab53e468", + "value": "0x334902bc15a18cfe00000" + } + ] + }, + { + "address": "0x1114c7103e12c2b2ecbd3a2472ba9c48ddcbf702b1c242dd570057e26212111", + "storage_entries": [ + { + "key": "0xc3b3960ca36cf159186b8724dcb63df660776ec7c1d32f5fb4c6eb6430caea", + "value": "0x6000000000000874cdb32d794e1a5af0000000000000087372b9df90decad81" + }, + { + "key": "0xecc78097ad363e630b3614241e39b94fd3a4d1749450a75d5a5196955bdefe", + "value": "0x66cafe7800057e514be59400000000000000000d689125f5d9aa71e6aaf6a9" + }, + { + "key": "0x7ee60d6f025746fda4a28bd4d3cb05d4d91c9328ae15f80fdef5a239eb7c580", + "value": "0x66cafe7800057e5cf92adc00000000000000000d2837bcb309321dd6d73223" + }, + { + "key": "0x171f8a9d9698a5d4463d3f88224ac770d61e8399f2e240ce2f576a93c01b165", + "value": "0x21915e068c8ceb8300000000000000000001436db584fc95" + }, + { + "key": "0x6c1df6be32e1224894c048674f84ac1a487cb8fb62cf7ec5835088ee0fb501e", + "value": "0xffffffffffffffffffffffffffeb61af63cdacdcc25e5fa33afcafbfd2d1e6" + }, + { + "key": "0x86759ce5ecf53e060bae0d153b46fd2e9336e0443a1467de1325d1f312fbf9", + "value": "0x400000000000000009fcb48d228f19c0000000000000000001218c7cdaa5920" + }, + { + "key": "0x20889ecebf032c83e44174bd6457730aff4f1e1fe1215837562cc0a5c6b2544", + "value": "0xc30f30000000000000000031875fd032c61a0844ab49d" + }, + { + "key": "0x171f8a9d9698a5d4463d3f88224ac770d61e8399f2e240ce2f576a93c01b164", + "value": "0x4ae3a1414419211a4f2621b23b5f" + }, + { + "key": "0x6c1df6be32e1224894c048674f84ac1a487cb8fb62cf7ec5835088ee0fb501d", + "value": "0xffff00000000000000000036f624691da005" + }, + { + "key": "0x8e5be92cdf8db6fbac128d3b061b14f72f85464222cc507fc4de6bdba9201a", + "value": "0x400000000000014fee24e9e26c1f00b0000000000000014fee24e9e26c1f00b" + }, + { + "key": "0x4a4f4c75a42ca953aec36b5c566010882b1723b321cdc59ab7eef6409981d77", + "value": "0x2087" + }, + { + "key": "0x45235f8e6223baa6aa3198133367c1bbfed97780bce569166e813e2e91c0c1b", + "value": "0x95c1861d5ea8f7f18" + }, + { + "key": "0x33d9cbf722dd0533df8300f6db744ee7579898955e200e84c4c26261be70203", + "value": "0x40000000000000003ce69274aec91df0000000000000000039d3c1f6670340f" + }, + { + "key": "0x6c1df6be32e1224894c048674f84ac1a487cb8fb62cf7ec5835088ee0fb5020", + "value": "0x15d7a466bbed164e0000000000000000000000000009bedc" + }, + { + "key": "0xf43bfdcd0c735b1c78f1974ca873ab1e643256127aa1f0d68881dab8666d22", + "value": "0x40000000000014b19aeca42fca2139100000000000000f5e1397dadb313a4a3" + }, + { + "key": "0x7d99f197ae6fe0e3c8aa36a180d6044652f5d124cc21990431e99e28bc05a1a", + "value": "0xd254515c53568ff00546f7afc7362c0043c" + }, + { + "key": "0x4369fa3ae0eca1d92c2c94c8ff8a212f2dc04b481525f8fdf5fd31529e256f3", + "value": "0x400000000000000011cd5ba49bad5190000000000000000011cd5ba49bad519" + }, + { + "key": "0x15d6bb0717fd1abaedaeba1d6a50e2c12fd2a4e18b58076c9ecee1cf167d5e6", + "value": "0x6000000000000000143af98302391e800000000000000000143af98302391e8" + }, + { + "key": "0x4e7fa96de2519272d6ded3565591b4b53efbcd88e9689d6b993570ec95e98f1", + "value": "0x92efe000000000000000000000aa5e10bb51e459d62e9" + }, + { + "key": "0x7d99f197ae6fe0e3c8aa36a180d6044652f5d124cc21990431e99e28bc05a1c", + "value": "0x1f2797aed173b5de2000000000000000000000000004f8c6a" + }, + { + "key": "0x755b191fd987ebd205ade2ca0fa41d510527ef043145447bee096a4d6ad03d4", + "value": "0x200000000000000000000000000000001" + }, + { + "key": "0xc058c8b6ae41745fcc0197cab2bbeed684f4b325afd749ff03acda0cfdc1bd", + "value": "0x133b99732c3cb55805beaed8ce5" + }, + { + "key": "0x1f874d13289b986fc31bb6e396c37ebe60ac1df87cf5ba51f1775a64c3b4fb8", + "value": "0x4b63e5cfb10de5c" + }, + { + "key": "0x658e1ab71c65933f08eb0fbb029bd7b0a230a42fcc913fbc8483545e7abd5fd", + "value": "0x448f" + }, + { + "key": "0x4092289c1fccf5af04adaca35c1267808fb943873a47205f1eae8968f3908b7", + "value": "0x42db88becbecc12dcd22cb3d7361b6" + }, + { + "key": "0x6e12e10adeb117597698956f97cacc7a60ade484bcd0ce2a1309db473071ba5", + "value": "0x0" + }, + { + "key": "0x6c1df6be32e1224894c048674f84ac1a487cb8fb62cf7ec5835088ee0fb501f", + "value": "0xfffffffffffffffffffffffffffffffffffff169340b9aa021e2cd38bbab29" + }, + { + "key": "0x45235f8e6223baa6aa3198133367c1bbfed97780bce569166e813e2e91c0c1d", + "value": "0x58599d90529110dba826afe901a9" + }, + { + "key": "0x45235f8e6223baa6aa3198133367c1bbfed97780bce569166e813e2e91c0c1c", + "value": "0x16cba4d11457c499d39ac586ce479bac" + }, + { + "key": "0x6e12e10adeb117597698956f97cacc7a60ade484bcd0ce2a1309db473071ba2", + "value": "0xffff00000000000000000000000000000000" + }, + { + "key": "0x3745c9208ca3169720b4d2a32a4bcc5275287afe971fd0657420126f49bc70", + "value": "0x400000000000053be80a361c5f7f55a000000000000004644f71d4364ceb234" + }, + { + "key": "0x755b191fd987ebd205ade2ca0fa41d510527ef043145447bee096a4d6ad03d1", + "value": "0xffff00000000000000000000000000000000" + }, + { + "key": "0x7d99f197ae6fe0e3c8aa36a180d6044652f5d124cc21990431e99e28bc05a19", + "value": "0x116213556af68d8" + }, + { + "key": "0x156f9c7abe798baad1c90b4ec6815a0865e1cc735b7777fbea3efc771f9bf21", + "value": "0x7f2fe23987ba63abdf91f19a1c81d4df" + }, + { + "key": "0x7d99f197ae6fe0e3c8aa36a180d6044652f5d124cc21990431e99e28bc05a1b", + "value": "0x55f7b555c9f7d0ad43e79e2bc" + }, + { + "key": "0x171f8a9d9698a5d4463d3f88224ac770d61e8399f2e240ce2f576a93c01b162", + "value": "0x7b6deba9387bdacf9" + }, + { + "key": "0x156f9c7abe798baad1c90b4ec6815a0865e1cc735b7777fbea3efc771f9bf22", + "value": "0xedfb" + }, + { + "key": "0x1cf0763e0562c7d70756507b5455a16e93f520e9f186212e0292b9052cb1cc4", + "value": "0x60000000000000000488a1b7a864d3300000000000000000047b22b978fde8b" + }, + { + "key": "0x171f8a9d9698a5d4463d3f88224ac770d61e8399f2e240ce2f576a93c01b163", + "value": "0x8b246f7814977e5e56c999fdf66f066" + }, + { + "key": "0x3a8651c5f7eda965d83ac5cdfd042c739e3b55b27ce608d8a582b69821a041a", + "value": "0xc45161b7802ddaf3e57" + }, + { + "key": "0x10060fb554b3ccb720f4bd34f4f1a3c61ae980b921fe36e80db68a6c1556dc", + "value": "0x92bbf6c339ba6e8" + }, + { + "key": "0x7b610f0edc7562777384acb11448c8f74e01e5305adea924d194c6b6eeb0028", + "value": "0x400000000000000009f420f0d48c8f30000000000000000009f420f0d48c8f3" + } + ] + }, + { + "address": "0x6f1bd7222f6aad3504c09658f224e66889b33d3907638b76099391cd1448ebf", + "storage_entries": [] + }, + { + "address": "0x172583c1be9f7701402e97f58f2a891846a7bd772165d485a1415dbb5bb08ae", + "storage_entries": [ + { + "key": "0x15c547a631716eab468184835e50ec65ec1393aa9f5b36700dc49cf3e4d1435", + "value": "0x66cafe78" + }, + { + "key": "0x40228d72bbb9022e37a20a42e8cebe3e0c58650273b581b84ad5ec8131541ba", + "value": "0xa3d5e" + }, + { + "key": "0x15c547a631716eab468184835e50ec65ec1393aa9f5b36700dc49cf3e4d1434", + "value": "0x66cafea0" + }, + { + "key": "0x15c547a631716eab468184835e50ec65ec1393aa9f5b36700dc49cf3e4d1432", + "value": "0x40256ff080" + }, + { + "key": "0x40228d72bbb9022e37a20a42e8cebe3e0c58650273b581b84ad5ec8131541bc", + "value": "0x66cafe78" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x7474" + }, + { + "key": "0x70ae50fb3359f6e228c9f9da5219f2046fead5176059f2958e2d83e6016e20", + "value": "0x66cafe7a" + }, + { + "key": "0x15c547a631716eab468184835e50ec65ec1393aa9f5b36700dc49cf3e4d1433", + "value": "0xa3d5e" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x426002" + }, + { + "key": "0x70ae50fb3359f6e228c9f9da5219f2046fead5176059f2958e2d83e6016e21", + "value": "0x66cafe78" + }, + { + "key": "0x40228d72bbb9022e37a20a42e8cebe3e0c58650273b581b84ad5ec8131541b9", + "value": "0x4027354730" + }, + { + "key": "0x40228d72bbb9022e37a20a42e8cebe3e0c58650273b581b84ad5ec8131541bb", + "value": "0x66cafeb4" + }, + { + "key": "0x70ae50fb3359f6e228c9f9da5219f2046fead5176059f2958e2d83e6016e1e", + "value": "0x4028652e68" + }, + { + "key": "0x70ae50fb3359f6e228c9f9da5219f2046fead5176059f2958e2d83e6016e1f", + "value": "0xa3d5e" + } + ] + }, + { + "address": "0x1c3384a988b041806b31b4d261e845be147165e223f81d89199e4c6bc6d4cb1", + "storage_entries": [] + }, + { + "address": "0x616350aa9964ba2e5fe60cc5f7f3ec4889473161a28b2202a3f8e4ee36ecab3", + "storage_entries": [ + { + "key": "0x36addc851ef8aaf7d47730978119619e465c662c0e900766ce39af6436c3d45", + "value": "0x1" + } + ] + }, + { + "address": "0x4f5447253a34ad18d8318f724272523285aedaff0f906f68b3e7ba45502f2c5", + "storage_entries": [] + }, + { + "address": "0x780f5ab2151d7c46a08a87c445a1012fa376a9c0e1df22e949d3d32740710f", + "storage_entries": [] + }, + { + "address": "0x1c4776dc67cd32ebbddb9699f487b4410194ada82fcffbbdf214dc23e9553ca", + "storage_entries": [] + }, + { + "address": "0x575a33680cca4beb4c3efb7297b7ee0f7bb4e672a9149c4691f1409e6c94322", + "storage_entries": [ + { + "key": "0x694cdea1e552a287037a06a199307f5a02d12dba3024ac671796b67aaa4e59c", + "value": "0x169e9dfe886ec618cf" + } + ] + }, + { + "address": "0x117f8c547be7d78ccfc63b705277855ce0ae20981f7b5224dca239f188843c7", + "storage_entries": [ + { + "key": "0x3dd762ba7a0f3ae18b3d3808fc7725423b90f5f5f66c1c49f9ae2b2672c6bac", + "value": "0x12841233e17064c30206e983247b9a5b46b56427f1cd621c780b3fbba1db083" + }, + { + "key": "0x57b14519547eb8031ccad54394b0d66c426736a195bf0fd563e79b5b37b849", + "value": "0x228" + } + ] + }, + { + "address": "0xd134b38cfa648b8b434850d8f292c8de98c016e940df204b945eb557656947", + "storage_entries": [ + { + "key": "0x6017fe2259e7bce631b7316afad31b76a54803f491d596daf4c5b2764ce1a62", + "value": "0x66cafe78" + }, + { + "key": "0x6017fe2259e7bce631b7316afad31b76a54803f491d596daf4c5b2764ce1a5f", + "value": "0x5f5ffb4" + }, + { + "key": "0x632de246297333b69466413e9b7145472afeeefc0c8636348c6cd094c018791", + "value": "0x5f5fde1" + }, + { + "key": "0x632de246297333b69466413e9b7145472afeeefc0c8636348c6cd094c018792", + "value": "0xa3d5e" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x59d3" + }, + { + "key": "0x6017fe2259e7bce631b7316afad31b76a54803f491d596daf4c5b2764ce1a60", + "value": "0xa3d5e" + }, + { + "key": "0x632de246297333b69466413e9b7145472afeeefc0c8636348c6cd094c018793", + "value": "0x66cafea1" + }, + { + "key": "0x6017fe2259e7bce631b7316afad31b76a54803f491d596daf4c5b2764ce1a61", + "value": "0x66cafe8d" + }, + { + "key": "0x632de246297333b69466413e9b7145472afeeefc0c8636348c6cd094c018794", + "value": "0x66cafe78" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x39be03" + } + ] + }, + { + "address": "0x76c52ed46c85f6662b1bee59b4c4965c4223c3f32aa5b2692b1e06ff566e1b0", + "storage_entries": [] + }, + { + "address": "0x7dffbf18722b28975702273557a90e84b649808209594d2bf1da3c633b12438", + "storage_entries": [] + }, + { + "address": "0x33d5b4c122f0d65572cf4aa3af31e8258a0a6bedfbf24e3dcc3b610b8a5199d", + "storage_entries": [] + }, + { + "address": "0x234d0c891cfc00ba1a53277c34c91f5f0a273fb29867876abaf069e2a39da99", + "storage_entries": [] + }, + { + "address": "0x6569b665de48145219a07c827deded8a3e7f34aa79ef3985bea6717755e85c6", + "storage_entries": [] + }, + { + "address": "0x71ad7b064ff7825ab11760207b16a28b54decc5b02873af6b1a2527e07925f0", + "storage_entries": [] + }, + { + "address": "0x7e71f1efb9cb53253627449b5599842daa61c68bb04743609a96111a94f0f3b", + "storage_entries": [ + { + "key": "0x475dee61a0fac6f2eac50a55a5ca17fe9b39dac5b3c93934d75e49c9b77bfc2", + "value": "0x265ae69f19de79a70" + } + ] + }, + { + "address": "0x8b44318e05bf18a302297844cfa8e28c5507e1ebe2009c763db4dec858c621", + "storage_entries": [] + }, + { + "address": "0x19f0f563f9468e1995cc55fec8dfddfc30bb667ce4b020a6c8b7d9aa412aa06", + "storage_entries": [] + }, + { + "address": "0x7daadaa043b22429020efb9ac16bcc5f6a9b6ed3305de48e65a0ad5dcb76759", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x83430ef2fe85b9a28de45" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x132c283128" + } + ] + }, + { + "address": "0x7fd8f52786862b8600d9e2a7823c77aba212e3d28b67e4623cd48369e94f7a2", + "storage_entries": [] + }, + { + "address": "0x45e7131d776dddc137e30bdd490b431c7144677e97bf9369f629ed8d3fb7dd6", + "storage_entries": [ + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x5f71fc54f9e312" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66cafe78" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x10866abefe" + }, + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x165edb26676973c0b" + } + ] + }, + { + "address": "0x2fb444d314568d6e45fa13a503592751d380728a05fc6947aa6e930e4454672", + "storage_entries": [ + { + "key": "0x2141a67791ccd46711281bdb998cf05330a94bd912f4ab44bfca6f08f79cbf1", + "value": "0x45af1" + }, + { + "key": "0x3fc73af821c877aa6ced977a0bc34de21bb584b2954c82c06c80d3bc0cce026", + "value": "0x18827b42d0f8640f6e3262a60d" + }, + { + "key": "0x2208eb7142b20a00788438f9ba35fdef173c7680ba652fbfa239fef3addf2b1", + "value": "0xf84ada" + }, + { + "key": "0x33043a6019faaaacd896299801314dabcc91bc7d39ce3e8d557f431280a456b", + "value": "0xaa4e71d2bdcea1c7ab9" + } + ] + }, + { + "address": "0x75afe6402ad5a5c20dd25e10ec3b3986acaa647b77e4ae24b0cbc9a54a27a87", + "storage_entries": [ + { + "key": "0x1e008b2a087a1b988d53d8ad26d04a1c8037cb77595ed47a76e098c109a8e1c", + "value": "0xb56cdf101f7be705" + }, + { + "key": "0x75c33e533ab03aaa9288fa20221fcef62b22a92b23f3a551b4851e724355876", + "value": "0x0" + } + ] + }, + { + "address": "0x53c91253bc9682c04929ca02ed00b3e423f6710d2ee7e0d5ebb06f3ecf368a8", + "storage_entries": [ + { + "key": "0x613d197003eaeaec95cda022ece67293267e42a6ab0d14b510a147b500cb6b8", + "value": "0x126f347e2a9" + }, + { + "key": "0x599b39b8f0e0e064f62ba921252b0735c2732a18e0b87e5b66e7f235d05dbf9", + "value": "0xffffffffffffffffffffdc9b395cc05b" + }, + { + "key": "0x516db81946c7dff80bd06c15b3e2b6b10d52e7dfc974b20bb69ae96b82db906", + "value": "0x0" + }, + { + "key": "0x1bff8c50a5584fb1238a3e05b95b80b366ff85cc15268676f16651b2c922129", + "value": "0x132c283128" + }, + { + "key": "0x716092479f8edd30a77b766defc11b7fb60a4e26eff7e58a4eb082bcc773d50", + "value": "0x8de8" + }, + { + "key": "0x28be0d1b762c32f0c434a2954fb9f00b05e7c4435dad20988f75196962e29c8", + "value": "0x1b499" + }, + { + "key": "0x40de00b6a95d48993dc4af9bd89d33b8faeaf3ebcbd8d9fc586e16f954df1a3", + "value": "0x1c78239167e" + }, + { + "key": "0x75c33e533ab03aaa9288fa20221fcef62b22a92b23f3a551b4851e724355876", + "value": "0x0" + }, + { + "key": "0x74ee32f30f6964431204823e70213278c5ca5396df9976fd7a27dd0351cf81c", + "value": "0x1157c5" + }, + { + "key": "0x1136e784a7b7e1cafd28236621374d83c739194f0d9be4644cf00e73f54bc8e", + "value": "0x1292e3" + }, + { + "key": "0x24e6f287d70cc7fcc92193e8349c21207def342360df512c28ea83b31faceae", + "value": "0x23bd433b" + }, + { + "key": "0x168e06589ed1429d749afaa1281b5f9e74a4cc19fcf352103f8fa7bd582a3d4", + "value": "0x35775aa3a" + }, + { + "key": "0x534ffd86a09aab8cc9f74c982bcf074fb87252aacb64e87f258ae229283082f", + "value": "0x135816d3b" + }, + { + "key": "0x38be2388ee2efd559cfea1d12bec03318cea12a44953c83621484a6637ef9f7", + "value": "0x0" + }, + { + "key": "0x1f9e8c510beddab3043a01d39114f0a7099e41917475fb3f7036b13298e4372", + "value": "0x7291fcf" + }, + { + "key": "0x5766ce84b976336c8dca0598cdd7faa350c1bbee3ead2c26a26984d99714d34", + "value": "0x362e68db" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0x418c4cd283" + }, + { + "key": "0x7d40ebec19d32e89de914ddb9aa326584327c9042e2078715b7284bb00c5620", + "value": "0x1f97e0862" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x176f47f3e406" + }, + { + "key": "0x22f9cf0e817ec5266133baeb7b6699c1b95854014cc79f85dd997309f7fc62b", + "value": "0x1c04854bc8" + }, + { + "key": "0x2c40cfaa9c0aeba40ea0b8f5818e1a12c44c5e9c01c31beb8fd21f5dab2f95d", + "value": "0x9fdde7c63" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x8348b26f4cf" + }, + { + "key": "0x3e94d6228474b08237aa2b0a5884d6a30d46838fb5f73995385a252dcb1ea5e", + "value": "0x3d1f97a" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x3613723d" + } + ] + }, + { + "address": "0xdee3cb1be6b4fd9a855f7c02614ed9852caa1ae1865a0d810fa04d6b5c92b3", + "storage_entries": [ + { + "key": "0x38036e4af1d77f33f0c5cd33a3353e2a5b2265dd26031df7d7c79297f908457", + "value": "0x3fa21630a0c3da94cb550748c6d9aa697d64993b79389c5c43ab82776d68978" + } + ] + }, + { + "address": "0x4a395a56c7f88cbd4972914f487b787032e452fe1948be89c8c2240b83a94e4", + "storage_entries": [] + }, + { + "address": "0x1b156fbf2fcad9612732ad2685d5ea0ff3bf2235ac47991ec7f292f46b7fcb8", + "storage_entries": [] + }, + { + "address": "0x36bc704e0ba7bd77bcc30c00f13d810b2c6dba3d8f7676263d82d9e69306f87", + "storage_entries": [] + }, + { + "address": "0x483ce3fbdd8eb75859dacffbec40d8cc22a0ae31526924a8ef732222bf5b0a1", + "storage_entries": [] + }, + { + "address": "0x2a46859fd22ee1b6439ce0c1352f20f184e34965a2f99c24fb303ecb7187bd7", + "storage_entries": [] + }, + { + "address": "0x25aa95a4b61df46ebc991047e593de220b2ef402626ce76348e07bb90718036", + "storage_entries": [ + { + "key": "0x6159728a9c5f7af023b757633edcef9603405978eceaaf4887b215fb8ed5e1f", + "value": "0x66cafe78" + }, + { + "key": "0xa6d9f316e6d685b6b7750482594191cf422e3056c9b8c5d07cad5617d3a103", + "value": "0x66cafe91" + }, + { + "key": "0xa6d9f316e6d685b6b7750482594191cf422e3056c9b8c5d07cad5617d3a101", + "value": "0x10541f7752b98000" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x4ae404" + }, + { + "key": "0xa6d9f316e6d685b6b7750482594191cf422e3056c9b8c5d07cad5617d3a104", + "value": "0x66cafe78" + }, + { + "key": "0x6159728a9c5f7af023b757633edcef9603405978eceaaf4887b215fb8ed5e1e", + "value": "0x66cafea5" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x329e" + }, + { + "key": "0x6159728a9c5f7af023b757633edcef9603405978eceaaf4887b215fb8ed5e1c", + "value": "0x10541f7752b98000" + }, + { + "key": "0x6159728a9c5f7af023b757633edcef9603405978eceaaf4887b215fb8ed5e1d", + "value": "0xa3d5e" + }, + { + "key": "0xa6d9f316e6d685b6b7750482594191cf422e3056c9b8c5d07cad5617d3a102", + "value": "0xa3d5e" + } + ] + }, + { + "address": "0x59251854527a17c8d1683bee208109032314ecb3a7d065a1516a60c890fca77", + "storage_entries": [ + { + "key": "0x5b4150a4262553d886f7595984020bd32ade64594444f3fd0be2fb388d31809", + "value": "0x5a" + }, + { + "key": "0x464f1dfbf81b1dd2ac88249510b2ea8015a87d9f9ad7d0a0191915f660ad3ab", + "value": "0x1a" + }, + { + "key": "0x3169280320f42baaf260a97fb41ce48a8c2bcf8f894064c9d5f4e63688377f5", + "value": "0xa" + }, + { + "key": "0x3e883b73eb5cc626e2e464050422cd5c5f1488d842ff8ae3a38c41d417c8be5", + "value": "0x1a" + }, + { + "key": "0x2af8b841dd851d29e12533f30d9d64a6a50563482caaf621d3a55dd03dc8632", + "value": "0x1a" + }, + { + "key": "0x2af8b841dd851d29e12533f30d9d64a6a50563482caaf621d3a55dd03dc8630", + "value": "0x5a" + } + ] + }, + { + "address": "0x75ddc908cbc54410e2f52face10b68987f1f590dd164fb3c67e134b1a658305", + "storage_entries": [] + }, + { + "address": "0x3a47e23f7a9bf0fb7345e9efaec5cd1e0c1dde13188f7fed6d4db801c8d6451", + "storage_entries": [] + }, + { + "address": "0x5ef8800d242c5d5e218605d6a10e81449529d4144185f95bf4b8fb669424516", + "storage_entries": [ + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0xd85414873e6b9b8d" + }, + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x9fdde7c63" + } + ] + }, + { + "address": "0x2fc2d4b41cc1f03d185e6681cbd40cced61915d4891517a042658d61cba3b1", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x29168c7608" + }, + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x30727d01c" + } + ] + }, + { + "address": "0xcfa6810ffde746a867ae4bd734c2d386d9a926a310c2f4181038fa997c45cc", + "storage_entries": [] + }, + { + "address": "0x210cdae3472187244f16b02850d7426963caf357b4477d4cf486b9bf911315b", + "storage_entries": [ + { + "key": "0x65f769480b31c796993980ed9baac45911440c47e915b00dbbd1fe7a255388a", + "value": "0x1" + } + ] + }, + { + "address": "0x52bdb85297e6b0c87d8ec98c5195a4324ff731676d64d9bee2e9e8710e8ea52", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x1f6f42f4b4" + }, + { + "key": "0x670303e14de3854b16d1ac7271c7366320e90ae714c0588ba17c4f33ff637e0", + "value": "0xac1" + }, + { + "key": "0x5aa332dc6ae90d6d53fee5fa2aba459a7f2c65c2b2f8759e4e478b3522c6186", + "value": "0x56" + } + ] + }, + { + "address": "0x41b0978486922bdfc7eeca616f4859e302875392b7bdf3c2a5cdafba685213e", + "storage_entries": [] + }, + { + "address": "0xfff107e2403123c7df78d91728a7ee5cfd557aec0fa2d2bdc5891c286bbfff", + "storage_entries": [ + { + "key": "0x1defc247f7f4aae4b49a58fce007f40a872b42dad6bc6f792d7ef1142dc9f87", + "value": "0xaf63cdacdcc25e5fa33afcafbfd2d1e6" + }, + { + "key": "0x6e36a9338db6c836da4b545964932ef97ca49ea5aa9ee26570a95dbad931fcc", + "value": "0x8b246f7814977e5e56c999fdf66f066" + }, + { + "key": "0x46f367e599a460ade4029dd5de12e56d60aa449b7ceeb85eded50d62a92cdf", + "value": "0x58599d90529110dba826afe901a9" + }, + { + "key": "0x2fecbe16e8fc37c47f7cf50ca64582fe21f336aa9b2855b8ea76c78b33de09c", + "value": "0x4515c53568ff00546f7afc7362c0043c" + }, + { + "key": "0x2fecbe16e8fc37c47f7cf50ca64582fe21f336aa9b2855b8ea76c78b33de0a0", + "value": "0xa37eea323ef92d2f000000000000000000000000001e4036" + }, + { + "key": "0x6e36a9338db6c836da4b545964932ef97ca49ea5aa9ee26570a95dbad931fcf", + "value": "0x0" + }, + { + "key": "0x1defc247f7f4aae4b49a58fce007f40a872b42dad6bc6f792d7ef1142dc9f89", + "value": "0xfffffff169340b9aa021e2cd38bbab29" + }, + { + "key": "0x6e36a9338db6c836da4b545964932ef97ca49ea5aa9ee26570a95dbad931fcd", + "value": "0x0" + }, + { + "key": "0x46f367e599a460ade4029dd5de12e56d60aa449b7ceeb85eded50d62a92cde", + "value": "0x0" + }, + { + "key": "0x2fecbe16e8fc37c47f7cf50ca64582fe21f336aa9b2855b8ea76c78b33de09e", + "value": "0x55f7b555c9f7d0ad43e79e2bc" + }, + { + "key": "0x1defc247f7f4aae4b49a58fce007f40a872b42dad6bc6f792d7ef1142dc9f86", + "value": "0x92e0c00092fec00000000000000000024db583d162d24" + }, + { + "key": "0x2fecbe16e8fc37c47f7cf50ca64582fe21f336aa9b2855b8ea76c78b33de09d", + "value": "0xd25" + }, + { + "key": "0x46f367e599a460ade4029dd5de12e56d60aa449b7ceeb85eded50d62a92ce0", + "value": "0x0" + }, + { + "key": "0x1defc247f7f4aae4b49a58fce007f40a872b42dad6bc6f792d7ef1142dc9f88", + "value": "0xffffffffffffffffffffffffffffeb61" + }, + { + "key": "0x6e36a9338db6c836da4b545964932ef97ca49ea5aa9ee26570a95dbad931fce", + "value": "0x4ae3a1414419211a4f2621b23b5f" + }, + { + "key": "0x46f367e599a460ade4029dd5de12e56d60aa449b7ceeb85eded50d62a92cdd", + "value": "0x16cba4d11457c499d39ac586ce479bac" + }, + { + "key": "0x6e36a9338db6c836da4b545964932ef97ca49ea5aa9ee26570a95dbad931fcb", + "value": "0xc2ff8000c32140000000000000001eaf5b89ab4042178" + }, + { + "key": "0x2fecbe16e8fc37c47f7cf50ca64582fe21f336aa9b2855b8ea76c78b33de09b", + "value": "0x92e480009323000000000000000000051823b7b43d237" + } + ] + }, + { + "address": "0x332825a42ccbec3e2ceb6c242f4dff4682e7d16b8559104b5df8fd925ddda09", + "storage_entries": [] + }, + { + "address": "0x7d47e04b4fa929dda44aa0068f651054f90f4bc1ef18e9ffadfb652d0398ebd", + "storage_entries": [] + }, + { + "address": "0xe91830f84747f37692127b20d4e4f9b96482b1007592fee1d7c0136ee60e6d", + "storage_entries": [] + }, + { + "address": "0x2952155b01ce465a4814d48d40769429ae5f7656714a1d278569c5ec0eb77be", + "storage_entries": [] + }, + { + "address": "0x5cda2b2904c8b4b92f6bf3babc5980439b96f5583dea7a74b73e9d701e53d9c", + "storage_entries": [] + }, + { + "address": "0x8faa2edc6833a6ad0625f1128d56cf471c3f9649ff2201d9ef49d7e9bb18de", + "storage_entries": [ + { + "key": "0x39b03cc1cdefcbdadd13946706a2aa9cd244f8e72115079bdf19063751800f4", + "value": "0x19724dde299ae7ae" + }, + { + "key": "0x584f38f5154e9b8a6c40203ea644ba5275c501456ff7265ae17aa662d495c7b", + "value": "0x72ec57cfcaac489" + } + ] + }, + { + "address": "0x7b8b7d9c16cfc00e475065ad5eaa740899355d0a982c1a4249af360462673a2", + "storage_entries": [ + { + "key": "0x20a9b24ae743424f86e0872bc7af28619283fe72fa43993484919a8330d0af1", + "value": "0x69de5e03e02e8a67" + }, + { + "key": "0x584f38f5154e9b8a6c40203ea644ba5275c501456ff7265ae17aa662d495c7b", + "value": "0x7271e6264f9ff1e" + }, + { + "key": "0x39b03cc1cdefcbdadd13946706a2aa9cd244f8e72115079bdf19063751800f4", + "value": "0x1957314191414cb1" + }, + { + "key": "0x5f22e7825c5e5b34213709b20336d8eebb08356fa19d03da7897dfe5f76170d", + "value": "0x21013b27bb6249711" + } + ] + }, + { + "address": "0x5dd3d2f4429af886cd1a3b08289dbcea99a294197e9eb43b0e0325b4b", + "storage_entries": [ + { + "key": "0x29c7eab513808908578484c8eec478045416ea305bc9b0931d69abd25c65645", + "value": "0x1012cc88d00000000000000000000036f99975f024f4b05cb77e2c5b6d8" + }, + { + "key": "0x73f910a5771e633fe79ee7de85447caf185a1a4f2a0831fd96609a5a4cdc5fb", + "value": "0x2e2471f8841815575b38af722ff5cde" + }, + { + "key": "0x1d14ffed31c27cb4bc8aad9170d5f8625c112ad970aafc1792b4c0063b8966", + "value": "0x2165ea475314ba5a83184f7407ddd894" + }, + { + "key": "0x4c461150be1bb0404df648b7535aa4412ab7c1715229ea6164f2da22be9b761", + "value": "0x2dce6f4e13babb209e84d0d0cfc" + }, + { + "key": "0x67115b93713c11a90a478a74e04fe020b4de53a8a5589ce5efefba6ca655989", + "value": "0x15b55b0de503cd8d3" + }, + { + "key": "0x5fab3c75f72d850419b85d95246b94193d661361fd842d016c31c8fa7720acd", + "value": "0x3b7adb0fc24584" + }, + { + "key": "0x73f910a5771e633fe79ee7de85447caf185a1a4f2a0831fd96609a5a4cdc5fc", + "value": "0x1c2802ee55f095e462de9ba70c09" + }, + { + "key": "0x4fc63d6b6ad805bd5013f490e60b550857f886f37e0bb336a504741d48b598b", + "value": "0xa878d855f5a970d6b33c612df46e" + }, + { + "key": "0x5a8f3c0f10bc17e389ddf04e8cd6f10b50038d26d2cf4f9974413961bd3c69f", + "value": "0x100000059000000000000000000fffd16c951b21b41d70d624152d300ab" + }, + { + "key": "0x786e6f2cbcf63b6c37de67d37e3fbbd3689e837c77677e5ca9f95f64b1817c5", + "value": "0x1012cbbd200000000000000000000037108bf9751e775b46d8acf0ed14e" + }, + { + "key": "0x7ed715b5117e2c4ce5878bbfc6d610ae7e96f8a63b03688cb85da00c24a311d", + "value": "0x1000000c5000000000000000000fff98c9c7c099961154a60004b78355e" + }, + { + "key": "0x4ed55f236b424b2eeb2bc294c9359c3d917b6b20213a60c392be5a80c881e6b", + "value": "0x1e0e56ac2c0579849ff1ffc70abb85483c5" + }, + { + "key": "0x4a586bf09eec1cf5a6cf9d6d34e17e76a4f73dae476853d9f2bed89865e2ef2", + "value": "0x101b36ffa00000000000000000000000aaaacfd80675672e1b61ed72f7f" + }, + { + "key": "0x377a06f99c076c4ce9af686c5a1f8e7ab88a1273c530dc5f94778c4b79cd41a", + "value": "0x3a05217d4b75bbb5c4a6219d96e51" + }, + { + "key": "0x7edf95034484895f303183958350d9907f624d312619d269dc313aaccbb1e8d", + "value": "0xfed46b02b20662891fd562de92c" + }, + { + "key": "0xb3a910e1cfc281148c32c7118ec8312aeec8234f1fbdf5126e2d2b5f454c2b", + "value": "0x1012cbd2a000000000000000000000370e1fc7229948ca096dd75ad6b1e" + }, + { + "key": "0x4fc63d6b6ad805bd5013f490e60b550857f886f37e0bb336a504741d48b598a", + "value": "0x113c67c91ad9300ff00cb80ae3631490" + }, + { + "key": "0x61e7f46d4b1ebcf886ea81733ef2b7d43a8817885c96559c818f8192b3c49", + "value": "0x478e7f4247bbf8110ff77b93872" + }, + { + "key": "0x4ed55f236b424b2eeb2bc294c9359c3d917b6b20213a60c392be5a80c881e6c", + "value": "0x15b3b1813f9544667865433d24a2" + }, + { + "key": "0x7a56cb8c9edc3cea44378a8df4220eaef157f130c42cb4db2750fa69ebcdbc0", + "value": "0x247f1d713f52058d649e06ec86d8" + }, + { + "key": "0x510abf9d7f3bf677e5e4ea16cac67144d6750ea2250cf1586e07bbf8a7b9c94", + "value": "0x2f1c2a50ff7de1e5149" + }, + { + "key": "0xc439c053296d5764948bfdfa5c465665d234736f071a361e10681d632ad758", + "value": "0x670b62ad49" + }, + { + "key": "0x7302529648cf8bd3b40af553e0ffc64bfef8135be5246bd00ed3ab2095373ad", + "value": "0x48c1a70578" + }, + { + "key": "0x591acc006991ecc44299588fcfe36aaf338929a2ce09835de224d78d1791dc7", + "value": "0xa9c5802d851bd27d9420230fe9f78afe16" + }, + { + "key": "0x6aff514d3c14935bb84bfc2f5e443daa68c6b9af02150bce2904dc5cee89fb4", + "value": "0x101b3713f00000000000000000000000aaa3b5ed44e773db4e94ce3d6e0" + }, + { + "key": "0x163d70e9624d4def491373945d39b17716359c269bf242c78b560d64413ac73", + "value": "0x53e4baf87fe7f1" + }, + { + "key": "0x3af7018c4aa6e5fa9c0422a94b88f858654f47a8bd2c875ecf0c2972a78b5b9", + "value": "0x17eaf73623620006b82824966dd843" + }, + { + "key": "0x5f0128f9be0989c98cbfe63ed591b1a63e5dd50f98fde1108d057f549146829", + "value": "0x6bff36ecbd4fc3710a66b22ef531" + }, + { + "key": "0x7edf95034484895f303183958350d9907f624d312619d269dc313aaccbb1e8e", + "value": "0xff5d8941548287a1a44fa7591c7" + }, + { + "key": "0x14ba9337b3d15393b603ee9309ecd0bce5aad090266467e428bd7421756f1ce", + "value": "0x5c719a8ef467a79c6484cfb0ab8" + }, + { + "key": "0x45632f3cbda18549eedb01fca0ccd075be2602eba9eb61b286ce15e1419028e", + "value": "0x800000000000010ffffffffffffffffffffffffffffffffffac1b4507801810" + }, + { + "key": "0x377a06f99c076c4ce9af686c5a1f8e7ab88a1273c530dc5f94778c4b79cd419", + "value": "0x3da0bd6f84a74668336ddb09075b3b49" + }, + { + "key": "0x3db405a2a17c36a162b4af2e3f5f52f3ac0221111d4f57d93dc2b26070de52b", + "value": "0x37572e5453e06a03664d9f82c7ac4" + }, + { + "key": "0x14ba9337b3d15393b603ee9309ecd0bce5aad090266467e428bd7421756f1cf", + "value": "0x284057ba492388e6bc8cf879b3c288c605fe7" + }, + { + "key": "0x6fc67850fc6fad26b5cbba8e04a3b1fc35ede2b5ede88d8d3b5aa4af12914a0", + "value": "0xc2702464bf68f5734fd" + }, + { + "key": "0x24b03dc8a3fa3b2de6eb33392b8ae92543367dd5a8d65e18fa3fa455a754437", + "value": "0x43be87e9bca948a76d7744bde03c48ff093a2191dc20e97e53de0db234002ef" + }, + { + "key": "0x2e47b10495ec4d8f08341a796f7b7eef17b990e3d2790316f08cf4bb15e69c6", + "value": "0x6c4e9ae13d8a5e" + }, + { + "key": "0xae1b72a594adf942d61d66fb222d7bbe953934f3b762905c245fa71ea84ab9", + "value": "0x979078d3684d78bb7f4283d2e81649f2df90" + }, + { + "key": "0xc37a99b03e26aa791e82083190c484f773383fbdc97b455ebb37590ac5f448", + "value": "0x1012cbe12000000000000000000000370c7dd57f11573281a5ab35addcd" + }, + { + "key": "0x45fb8ffc8b8d0d2521fdc1b3558fea0c43ed03911387994698ae9e504026d43", + "value": "0x1a5ac50df828d0c94d0a5bbad6896c774409" + }, + { + "key": "0x1d14ffed31c27cb4bc8aad9170d5f8625c112ad970aafc1792b4c0063b8967", + "value": "0x133edac8a1181ccec725b48b875d0" + }, + { + "key": "0x173ed6d665e16458aa3b3e740e984693c0487b1018792fab720b2fca8feeac6", + "value": "0x74b6bd1daf71f5762bf22cb872" + }, + { + "key": "0x1d52ba6c692370a3319ed2c30a697583dfe2fc6fa1ccaa09a7f3fa23d2a4363", + "value": "0x20f3f22b0c90069d" + }, + { + "key": "0x5f0128f9be0989c98cbfe63ed591b1a63e5dd50f98fde1108d057f549146828", + "value": "0x7fe35b9e41e8d3248a49165aa313bb15c5c" + }, + { + "key": "0x79541114db2c85598b8e7681e5ab78bf43624bc7636b60249889f8d4ec5894d", + "value": "0x10086b5cd000000000000000000031947587d061cccc178d3026b048eb0" + }, + { + "key": "0x642782866fc8a49d337f3045a24c8d5885051aaf1d63d852bca6b99ab10d2a6", + "value": "0x19ca75e0000000000000b602c63e189004db9e97fcc5338ef533ccae1" + }, + { + "key": "0x6014dca9337d6f8c6842184ed2c3d9b06032068146d0bf07c7c89e11599ce91", + "value": "0x89e7409c99dc210d8a0ebb5b53" + }, + { + "key": "0x3db405a2a17c36a162b4af2e3f5f52f3ac0221111d4f57d93dc2b26070de52a", + "value": "0x38f8383569be96f8eecc11cc37a41d39" + }, + { + "key": "0x591acc006991ecc44299588fcfe36aaf338929a2ce09835de224d78d1791dc8", + "value": "0x9a9128eef925c7e93184458e9a5" + }, + { + "key": "0x3af7018c4aa6e5fa9c0422a94b88f858654f47a8bd2c875ecf0c2972a78b5b8", + "value": "0x11f7bd9b857bbc25abb19d096f236b9a7" + }, + { + "key": "0x53d0519cdc7454786ae3e94a23442f4359e03c5903c60ccbaf2c48614efe6ac", + "value": "0x10086b61b00000000000000000003193f766a346a779d6841473ef79cdb" + }, + { + "key": "0x4823309f82e50319127ee3908004fbade88ad50c8af36bff40701fca76efcbb", + "value": "0x19c7ee90000000000000b5121b0348fff70c516e44410c857f9f580b1" + }, + { + "key": "0x16adcc43eb2fdc1ac2820cd7b749db25173cb6c680e077b399db2292f8a1713", + "value": "0x19c89990000000000000b5518fdf1c302a0ff759076fe50bf29035b98" + }, + { + "key": "0x6014dca9337d6f8c6842184ed2c3d9b06032068146d0bf07c7c89e11599ce90", + "value": "0x700febcac22445fee0016638e04c3295095b" + }, + { + "key": "0x61e7f46d4b1ebcf886ea81733ef2b7d43a8817885c96559c818f8192b3c4a", + "value": "0x2662cce8ce2d93c079f25cf8904972235185d" + }, + { + "key": "0x6014dca9337d6f8c6842184ed2c3d9b06032068146d0bf07c7c89e11599ce8f", + "value": "0x53e4baf87fe7f1" + }, + { + "key": "0x7a56cb8c9edc3cea44378a8df4220eaef157f130c42cb4db2750fa69ebcdbbf", + "value": "0x2cc095c9ff305e7b3818be70da759712484" + }, + { + "key": "0x273932e4c8710534cf766cafd06b6442f9abf34eec0753938dd81135e1b271", + "value": "0x19319d17a144f7d6f2809956ddd5" + }, + { + "key": "0x3fd58344c88bc2aba58536f3892e94d6926e33939ea1f5b0a961ac0deaeea1a", + "value": "0x6ff1bee36df02c108ca" + } + ] + }, + { + "address": "0x830dc345b616bfc853cf41bdf70df3c6dfee8400c1d972234c719df22b950", + "storage_entries": [] + }, + { + "address": "0x21714d78512c4d7cc98f8c3959e9026081f9bb33bbb07066eebc51b6ce357bb", + "storage_entries": [] + }, + { + "address": "0x2d0356738e30a3ce3d7ec6368e64d286ef71fa444990676ef1e083f68edd266", + "storage_entries": [] + }, + { + "address": "0x2c71de70b40b00e3dd6f43ed568bf4b194fab0189df68c54d25cbbb9b9e3d49", + "storage_entries": [ + { + "key": "0x420d81c746b1e969959a4aaa2c1a427f9a8df37df50309c183686b8ea635164", + "value": "0x1" + }, + { + "key": "0xb56df7e61e6deb44597b29250755b62280f80eb92b0318844024e59ec7ca6f", + "value": "0x1" + }, + { + "key": "0x3981ebd44382a01d81c161a6a644277e7a11d2271ff920988cb33e3463d491b", + "value": "0x1" + }, + { + "key": "0xab9b14f7a3ec6e3bd3158b8f1ac98edc4cac0647ee9270c03b610f185a2088", + "value": "0x1" + }, + { + "key": "0x21724ad56b24e9e1f830cfd2a2b016536a40ced27e0b720a7470dfc45c843d8", + "value": "0x1" + } + ] + }, + { + "address": "0x811d8da5dc8a2206ea7fd0b28627c2d77280a515126e62baa4d78e22714c4a", + "storage_entries": [ + { + "key": "0x48be3692ab3e9e8bd4a134a7b958b4e69bcb00a71d4f58c22f9311921f12bcf", + "value": "0x25ed32c8a" + }, + { + "key": "0x32ab5137f94b12ed741bfd46b8312173a7401621d889b14219bc021fc8c731c", + "value": "0x2e60" + }, + { + "key": "0x1d430bf138ea7c30cc4ba41938ff8081ecede809c1d7bc56b785784aceaae08", + "value": "0x189353c5091" + } + ] + }, + { + "address": "0x72884c68f836aa34fbe21e83bb22d76e4a050f5196073c6b3df50b902f9ad6c", + "storage_entries": [] + }, + { + "address": "0x60f0e4968d9bb9bf7728d797a2d6e50eb4149dafa89acf15f2efa4f57218ab9", + "storage_entries": [] + }, + { + "address": "0xe90d09b07aaa8e82ae73c6ed38f8cfc23a8e95701d36167fa97b784140c8c", + "storage_entries": [] + }, + { + "address": "0x55e557a4c975059522a1321d7a7bd215287450907419e5f8aa98145c7699a2c", + "storage_entries": [] + }, + { + "address": "0x7067304ed934fe31cf1579c941a370bf1625e36523efd901968329d715c3a1c", + "storage_entries": [] + }, + { + "address": "0x7d4a6ccab32a47a20806f11eba3adf6e362ba4de188b9895fcb24a37111a357", + "storage_entries": [] + }, + { + "address": "0x54f7595fde761b771e65c3b23803f81c7619347007376cf54e5c52ebd785215", + "storage_entries": [] + }, + { + "address": "0x30d1a6061325132500b0c288e8e6deaeeb58ad7cb7b4c6e8239346959cb765d", + "storage_entries": [] + }, + { + "address": "0x68f5c6a61780768455de69077e07e89787839bf8166decfbf92b645209c0fb8", + "storage_entries": [ + { + "key": "0x3ce63b6014623680de3801addbdbc460bcbf144f0c741cb14aed33cc5bb892c", + "value": "0x1256ac73d7" + }, + { + "key": "0x5fad7613fd327fc13290b4c80dcb56b41035cff52310cc2f9e1d7de286fcff1", + "value": "0x10866abefe" + }, + { + "key": "0x1c8dbf555be2559058fefd8b6a3531c1b0b2656d3b3b84719d9a5aef0728a8a", + "value": "0x0" + }, + { + "key": "0x7b1460d3a35c58f228935592465287ef81ec43063cd211a570383fb35d55028", + "value": "0x25fc21d" + }, + { + "key": "0x3713bab4467fdf657069badcb2d75f21c64f43f2e011c9d32255678d94b7eed", + "value": "0xe8e39480ac" + }, + { + "key": "0x22f9cf0e817ec5266133baeb7b6699c1b95854014cc79f85dd997309f7fc62b", + "value": "0x17122be478" + } + ] + }, + { + "address": "0x2a4117530d52d7a70406eb608b86f3874e50a6972126cbbf92e4257315cafd4", + "storage_entries": [] + }, + { + "address": "0x54452751e7d5ccfcb5dea9688ddbdbe54e6303cf472ffb88ff9e0b23c0b0cc1", + "storage_entries": [] + }, + { + "address": "0x4f96b7ebd84fd96cb0b457499a38963bd38f3184640b852b3a4d8c592c5740d", + "storage_entries": [ + { + "key": "0xb0cfdc8b5ce089ea132067c9e18d766dd94541c072972b727170463ae1947e", + "value": "0x1" + }, + { + "key": "0x32e4d1efc5f173dde7c1a53083584900020b81db23b5037b75f633789e8f2b2", + "value": "0x1" + }, + { + "key": "0x624bf90ec4ca21f812c323f3318dda911e0443616e30ec9fddd13b0c43c5a18", + "value": "0x1" + }, + { + "key": "0x126f22ed4d16a4aa68cc9226a6b32f6ea8eb766af2aa03bdc4f2c0f706c8fbc", + "value": "0x1" + } + ] + }, + { + "address": "0x6715a4a21077100e5890d36361974be8dfb55b9b466f0bdd6f9f96fffaeb3bb", + "storage_entries": [ + { + "key": "0x4ab629b754c2d17807fb60e8cc9838c523ed17d330067c6a023d74197e622cd", + "value": "0x1" + }, + { + "key": "0x1baf58600588a6ffde3bd8cc1a1763d0ec8f926cab312ec0ec9bb0dad957659", + "value": "0x1" + } + ] + }, + { + "address": "0x43e4f09c32d13d43a880e85f69f7de93ceda62d6cf2581a582c6db635548fdc", + "storage_entries": [ + { + "key": "0xaaee018f4b0aae1f15da71fb50a88efc915e839c9e3563529854ef0bde21ef", + "value": "0x66cafe780000000000003a065d1fb18455700884" + }, + { + "key": "0x4de90abe4fc76e4fe71c656c5954b2a6f61b88a7c498ef612f943e15603b195", + "value": "0x66cafe78000000000000000000000bb89b1dbbaf" + }, + { + "key": "0x43fa2f3e2294ecb4984693df89aa20d09e572506498025b20308244acf19ac6", + "value": "0x36d669a1d70d2842e038d41f500241ac803de7bce" + }, + { + "key": "0x6d11198631ae6699aa1dedbc2a6dd6b4a7954102ef0d50c0297226d8953338e", + "value": "0x97ac647859035999769188a" + }, + { + "key": "0x7c87e8c0d6c0b0be9a844b9a6aee716dd547cfdfd08760598bc0ecf0a350e63", + "value": "0x66cafe7800000000000003e1a9856c41b661de75" + }, + { + "key": "0x4e397fe564f5b2db97eb959c29efa0dfb56de6d173e970c5eea62baf714a71d", + "value": "0xc468b44e3fe60c622527" + }, + { + "key": "0x307364ab1c6dae6d095cf139845ce4033ef830e8534f2df2c7a4267fe80884c", + "value": "0x66cafe780000000000000000000024c6d0f4834d" + }, + { + "key": "0x592e431857f9f3ab108e57ede73f05339735addac7f6ed26d37b359479619e2", + "value": "0xa259d89d2c0154bda785ade" + }, + { + "key": "0x4e397fe564f5b2db97eb959c29efa0dfb56de6d173e970c5eea62baf714a71e", + "value": "0x5456a9ae60b44048960f5d25ed695c433a280545" + }, + { + "key": "0x592e431857f9f3ab108e57ede73f05339735addac7f6ed26d37b359479619e1", + "value": "0x95297b8cb1698574436828ff3516a09003595" + } + ] + }, + { + "address": "0x7a900c5b496d15bbb1c3c69d090e890a4b19dbceabee72232d4f2bec67ff4c", + "storage_entries": [] + }, + { + "address": "0x42b8f0484674ca266ac5d08e4ac6a3fe65bd3129795def2dca5c34ecc5f96d2", + "storage_entries": [ + { + "key": "0x6bfd94b067b7a0f959ac2f97a1c66f8f023e057e76392bfbdc29c0abc9cc414", + "value": "0xdf690e09164d7a11" + }, + { + "key": "0x232f4febea33280256a7336b9908d5db04277b80a99bff726ae2bd0939a3a68", + "value": "0x1" + }, + { + "key": "0x5f6b6fc6348470674807164ece27f9f698117509138b41bbd524edb641810be", + "value": "0x1" + } + ] + }, + { + "address": "0x6a20d4d7995fb8ba1570c32e53259ec1c53be111a33f9778825d184eee5a3da", + "storage_entries": [] + }, + { + "address": "0x405b7b5fb7353ec745d9ef7cf1634e54fd25c5e24d62241c177114a18c45910", + "storage_entries": [ + { + "key": "0x3e81755d87fb2feb6a8a6749a0c2c7dc1f7c9db26ccc10115ebb8cd48e05880", + "value": "0x1" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0xe6a2f0e614" + }, + { + "key": "0x5aa332dc6ae90d6d53fee5fa2aba459a7f2c65c2b2f8759e4e478b3522c6186", + "value": "0x1" + } + ] + }, + { + "address": "0x36c6e4627b208a7c9f4e8573fa7b6f702beac689196566d484b0963918db9c4", + "storage_entries": [] + }, + { + "address": "0x57146f6409deb4c9fa12866915dd952aa07c1eb2752e451d7f3b042086bdeb8", + "storage_entries": [ + { + "key": "0x2be41ea00b3e998afcaecaeff43baa5459a4184c3bdcc9225d5fe8d1cac1acd", + "value": "0x1763ea8f90b0091e3" + }, + { + "key": "0x516db81946c7dff80bd06c15b3e2b6b10d52e7dfc974b20bb69ae96b82db906", + "value": "0x2257eae37b4553b2" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x599fd5d50ecb3a267df" + } + ] + }, + { + "address": "0x5e03162008d76cf645fe53c6c13a7a5fce745e8991c6ffe94400d60e44c210a", + "storage_entries": [ + { + "key": "0x75c33e533ab03aaa9288fa20221fcef62b22a92b23f3a551b4851e724355876", + "value": "0x0" + }, + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x126f347e2a9" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x2dcdf56e39102f30162af" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x1774e750cb9d272d9b" + } + ] + }, + { + "address": "0x53fc292ae916dc86631cb7f9a23db0cc1222cba55b0ec1946635343829ebae4", + "storage_entries": [ + { + "key": "0x6bd3783ab0020ccca02c7c8bb2ea40dd7ed24fe19faab82f0c00c64ec90c656", + "value": "0x66cafe78" + }, + { + "key": "0x9b3d7a7e06dd7a1b1fe8e999aead043c7c263ec59619eef0dd8a2581811295", + "value": "0xa3d5e" + }, + { + "key": "0x166fa8ff56633d692a22078361d1f08024d3ab3633667599556a3c18775f5f1", + "value": "0x66cafe78" + }, + { + "key": "0x9b3d7a7e06dd7a1b1fe8e999aead043c7c263ec59619eef0dd8a2581811296", + "value": "0x66cafe9a" + }, + { + "key": "0x60083300b9067593147639591f33e7f50dd02d5f583e290da24c9c29b6b2b47", + "value": "0x485c39e1" + }, + { + "key": "0x6bd3783ab0020ccca02c7c8bb2ea40dd7ed24fe19faab82f0c00c64ec90c655", + "value": "0x66cafe86" + }, + { + "key": "0x9b3d7a7e06dd7a1b1fe8e999aead043c7c263ec59619eef0dd8a2581811294", + "value": "0x48526780" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x439601" + }, + { + "key": "0x155787e92342786e4cbebcf3b1cc51935f1336dadb32ca73bf2c1dc8978ecfa", + "value": "0x66cafefe" + }, + { + "key": "0x166fa8ff56633d692a22078361d1f08024d3ab3633667599556a3c18775f5ef", + "value": "0xa3d5e" + }, + { + "key": "0x155787e92342786e4cbebcf3b1cc51935f1336dadb32ca73bf2c1dc8978ecf9", + "value": "0xa3d5e" + }, + { + "key": "0x60083300b9067593147639591f33e7f50dd02d5f583e290da24c9c29b6b2b4a", + "value": "0x66cafe78" + }, + { + "key": "0x9b3d7a7e06dd7a1b1fe8e999aead043c7c263ec59619eef0dd8a2581811297", + "value": "0x66cafe78" + }, + { + "key": "0x155787e92342786e4cbebcf3b1cc51935f1336dadb32ca73bf2c1dc8978ecf8", + "value": "0x4857ca68" + }, + { + "key": "0x60083300b9067593147639591f33e7f50dd02d5f583e290da24c9c29b6b2b49", + "value": "0x66caff24" + }, + { + "key": "0x166fa8ff56633d692a22078361d1f08024d3ab3633667599556a3c18775f5ee", + "value": "0x48449858" + }, + { + "key": "0x155787e92342786e4cbebcf3b1cc51935f1336dadb32ca73bf2c1dc8978ecfb", + "value": "0x66cafe78" + }, + { + "key": "0x6bd3783ab0020ccca02c7c8bb2ea40dd7ed24fe19faab82f0c00c64ec90c653", + "value": "0x48577d7b" + }, + { + "key": "0x6bd3783ab0020ccca02c7c8bb2ea40dd7ed24fe19faab82f0c00c64ec90c654", + "value": "0xa3d5e" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x75e0" + }, + { + "key": "0x166fa8ff56633d692a22078361d1f08024d3ab3633667599556a3c18775f5f0", + "value": "0x66cafec2" + }, + { + "key": "0x60083300b9067593147639591f33e7f50dd02d5f583e290da24c9c29b6b2b48", + "value": "0xa3d5e" + } + ] + }, + { + "address": "0x411c2a2a4dc7b4d3a33424af3ede7e2e3b66691e22632803e37e2e0de450940", + "storage_entries": [] + }, + { + "address": "0x626a1182976caee727565fac2d143c72cec7f8c5319a6f6b49433875fa52bf9", + "storage_entries": [] + }, + { + "address": "0x6bb8b6108fe2b5df594c81b616a7dbc427c9b035e2b7d5d615caeffb0d43dd6", + "storage_entries": [] + }, + { + "address": "0x4d50f6ca2b2310609c1f9614370416f820c74168f373e23e5b4d9a86fca5d75", + "storage_entries": [ + { + "key": "0x3d799152caa65fc75710f2fd193a768a23f74f952b72e07059fc52059cc64dc", + "value": "0x66d04478" + } + ] + }, + { + "address": "0x4d8bb956e6bd7a50fcb8b49d8e9fd8269cfadbeb73f457fd6d3fc1dff4b879e", + "storage_entries": [ + { + "key": "0x4f7b85d157c2993f3723f3f02f8d6ab48820448c94250145bfb902ef2bb777f", + "value": "0x100000000000000000000000000000000" + } + ] + }, + { + "address": "0x3f8c9062f1bfe45f82cd70ed97ff053bc5836783ec66adfe3288eb1b43aa83b", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x703d7098b480994daa" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0xa6f37bea4e0fdd9" + } + ] + }, + { + "address": "0x12841233e17064c30206e983247b9a5b46b56427f1cd621c780b3fbba1db083", + "storage_entries": [ + { + "key": "0x753ffbdc2b0bfc4f8553313f1ed6545d4a2de0f7caa3a385b13d1ed4d0ad934", + "value": "0x1" + } + ] + }, + { + "address": "0x59a943ca214c10234b9a3b61c558ac20c005127d183b86a99a8f3c60a08b4ff", + "storage_entries": [ + { + "key": "0x14cc0f828501e1bb032df4e5810cfe7c260d7e196a140ecec5a83dc97fb27e0", + "value": "0x66cafe78" + }, + { + "key": "0x178aa618a136a3dae4121de8075402bd40a787adfcbbf4e8d8de55d887ddfb9", + "value": "0xef8397e5605e821" + }, + { + "key": "0x32cc2a5a8944344ae56ba91d9d48bb20837c23598d502ffaad2b9e1e112361c", + "value": "0x2a3ff7dbdd365" + }, + { + "key": "0x1b264b66023b6154947434dc29315488f9df8781cde65cdcd691eb84c000595", + "value": "0x66cafe78" + }, + { + "key": "0x55bd64a08284f65eaa89fd5a81f307ed9c778e89b797992d4af620df1d9cca7", + "value": "0xde4a79d92100b68" + }, + { + "key": "0x4a31f49fdb9cb10e4c5f4318207bab1aa70548024c73b5a20a4828c1a4e9005", + "value": "0x62740ce9323f1" + }, + { + "key": "0x4172093f6b1e57737ddf4d2270ecce189aa9cb630323df3932d19c63e88a1c4", + "value": "0xe24164573df44bf" + }, + { + "key": "0xb5da8588258cf59a9a61b801cb29947fe195cd2a4cf7029895d1841ed37793", + "value": "0x421f6676a60604" + }, + { + "key": "0x20282036f9f415ec13ff44bb35aef4f96afc9551818f06a946fe34ce4e8e976", + "value": "0x5223836c3bb55e" + }, + { + "key": "0x154a964b4969028601192cacc9498e02ead6de4ae6510d99cc0fc6e5056793d", + "value": "0xe76f5ff3b804811" + }, + { + "key": "0x1c41f330bd121872d68b16aad737d65e410fd9bab463545cc54e173fa5f7f89", + "value": "0xef664ef7e900e6" + }, + { + "key": "0x44dff0be23dce03163b957c4e69a9767a4898e7c7ea6c4cf52d8f57d63ed5d9", + "value": "0x66cafe78" + }, + { + "key": "0x6f993ef65ed08374ca714d0b18eceb7d7e1539d7d0512e142693bf7a486833c", + "value": "0x2ac9678cfba620" + }, + { + "key": "0x67cc907a55ab9b5c251d076a1b170cde38a5f9b3809e2bbae55c3c2a96500af", + "value": "0x109ddd78655ff9" + }, + { + "key": "0x21c9eb00d0ac408c043d571b90b3a8c30e8ea5c3f0e4b79e60416cd13493ecc", + "value": "0x514e1553e289e0" + }, + { + "key": "0xdafd05ed8e8edc1a76e71cc6035424f9a4f6848100a2cf666f9054805a8a08", + "value": "0x66cafe78" + }, + { + "key": "0x1ad05561d61ee79b7e2eea93c7dab54647930601d0fbc3d9ebcd6b61475262a", + "value": "0xdf62f29d6c10c48" + }, + { + "key": "0x7f707060dc04e7a4bf0e4a5b3cc74cac753d9ff1a2997082a22fb3cf8eb237f", + "value": "0xe0a1bd4bb26eb57" + }, + { + "key": "0x3ace8a2d501d0cc72133033060e292257c4f1a5f26312fc945d02c6bad5e3c9", + "value": "0xe2e4c48617be026" + }, + { + "key": "0x5e0ecd6cf18cb208b04ddb27c0ad2f6c242a7c177db4f8228f6e83c23d85265", + "value": "0xdfd8d0b489ec45d" + } + ] + }, + { + "address": "0x7280a807c8b79379bec87919433b7b836b93a92e6d71b24ee99f4ffe33dd337", + "storage_entries": [ + { + "key": "0x61b753ea8508680e5f5a5896622fd1352a0d94adedf3807618581a6eaa9f56", + "value": "0x66" + }, + { + "key": "0x6843daaed3889250ac055ef0265af2644277f5b8d248bac96e0435c8bc6f32", + "value": "0x1e79" + }, + { + "key": "0x4a81b529bc6c21c8a6851a49fb9988187f5e3d9025cf43ccedb8ff859a6f3c8", + "value": "0x6865262d42ddfe81d94d96d58b740fdad4c776b897b9105d601e0f2f49ec9cf" + } + ] + }, + { + "address": "0x344c86d9d9a189cf1b616c8d3bd550bdfd3f099f4076f7e680a14d4d8981124", + "storage_entries": [] + }, + { + "address": "0x1b14326182638866e10d804d7a9e9fd51a522c8ac59ab9b1b11975d21fae9c7", + "storage_entries": [ + { + "key": "0x26b54a6932478e33f7ff4e43ab87178a159355fe0e6c63e6614e8a4b18cad94", + "value": "0x66cafe78" + }, + { + "key": "0x27f7ba397cbd3cbcb04ae7f6ab10a58680ef53950553402075d7aeee76d4956", + "value": "0x2697e26" + }, + { + "key": "0x27f7ba397cbd3cbcb04ae7f6ab10a58680ef53950553402075d7aeee76d4959", + "value": "0x66cafe78" + }, + { + "key": "0x26b54a6932478e33f7ff4e43ab87178a159355fe0e6c63e6614e8a4b18cad93", + "value": "0x66cafe6f" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x490a04" + }, + { + "key": "0x26b54a6932478e33f7ff4e43ab87178a159355fe0e6c63e6614e8a4b18cad91", + "value": "0x2699697" + }, + { + "key": "0x27f7ba397cbd3cbcb04ae7f6ab10a58680ef53950553402075d7aeee76d4957", + "value": "0xa3d5e" + }, + { + "key": "0x26b54a6932478e33f7ff4e43ab87178a159355fe0e6c63e6614e8a4b18cad92", + "value": "0xa3d5e" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x7e28" + }, + { + "key": "0x5eecaa7608b66f1ebf26ec8bd8ab22d84ed97082f904153e383efb95b065572", + "value": "0x66cafeab" + }, + { + "key": "0x5eecaa7608b66f1ebf26ec8bd8ab22d84ed97082f904153e383efb95b065570", + "value": "0x268d721" + }, + { + "key": "0x5eecaa7608b66f1ebf26ec8bd8ab22d84ed97082f904153e383efb95b065571", + "value": "0xa3d5e" + }, + { + "key": "0x5eecaa7608b66f1ebf26ec8bd8ab22d84ed97082f904153e383efb95b065573", + "value": "0x66cafe78" + }, + { + "key": "0x27f7ba397cbd3cbcb04ae7f6ab10a58680ef53950553402075d7aeee76d4958", + "value": "0x66caff88" + } + ] + }, + { + "address": "0xf4bcb5b665a5728232b33fe97580583049e137d86bdf367d316dc2e9ca6a47", + "storage_entries": [ + { + "key": "0x2208eb7142b20a00788438f9ba35fdef173c7680ba652fbfa239fef3addf2b1", + "value": "0x39ea58201e5081" + }, + { + "key": "0x2141a67791ccd46711281bdb998cf05330a94bd912f4ab44bfca6f08f79cbf1", + "value": "0x11e51" + }, + { + "key": "0x33043a6019faaaacd896299801314dabcc91bc7d39ce3e8d557f431280a456b", + "value": "0x270b450a58a38bdae032696a8d" + }, + { + "key": "0x3fc73af821c877aa6ced977a0bc34de21bb584b2954c82c06c80d3bc0cce026", + "value": "0x958cb146c7ec515e2a7dbdea96b7e35" + } + ] + }, + { + "address": "0x7c2e1e733f28daa23e78be3a4f6c724c0ab06af65f6a95b5e0545215f1abc1b", + "storage_entries": [ + { + "key": "0x269e3afd13d7a688622a8ee84a4bf1d4f650a48e338e0bc9142cb66bc3c511", + "value": "0x97027199eb1a4eb67" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x414c16955971c9fa8d2b5b" + }, + { + "key": "0x6ccb87f4262ebc65951191c9b2dbf434f011a08adabc31b447565cdb9513fa6", + "value": "0x5f4dd77a8da64f383" + } + ] + }, + { + "address": "0x58388620d7b3db195744cef25a64063d1a9eeca12eeb321668286df5876acc6", + "storage_entries": [] + }, + { + "address": "0x38cc12c2f0a9948da9b2d5c986569c0567aa52af944022dbd870c5aee60dbd", + "storage_entries": [] + }, + { + "address": "0x40c94eed22c9a80383136565cb19cb8c05e6397c47a83a3f4bbea6b1c129f7f", + "storage_entries": [] + }, + { + "address": "0x7dbc0ae5ba61561b34d7951e3d51ee3524b41653b7d8d69f38c969796374ebe", + "storage_entries": [] + }, + { + "address": "0x1978b8733863f8a3161a202aa328d0796b40f12a3254bc0c622a1b4347d9631", + "storage_entries": [] + }, + { + "address": "0x1fecadfe7cda2487c66291f2970a629be8eecdcb006ba4e71d1428c2b7605c7", + "storage_entries": [ + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x1375fb2019e6a45d" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x16d917cc38491190a7" + } + ] + }, + { + "address": "0x7a7e603deece06f5c2b3859ca4a3b81e991b7629fa4203ff2ba883952572ca", + "storage_entries": [ + { + "key": "0x584f38f5154e9b8a6c40203ea644ba5275c501456ff7265ae17aa662d495c7b", + "value": "0x723f8b6ce2d551d8" + } + ] + }, + { + "address": "0x6c486e94d58cca139b82b6e001461fce56828740cc1bb6d07c29be230f2d5bd", + "storage_entries": [ + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x392b02" + }, + { + "key": "0x4f8829fff28df631b7299e89d5eee56c62d092a4376659de27816819368c686", + "value": "0x66cafe78" + }, + { + "key": "0x975c728729cd5e4a3ca7a0535e1685ca43a5990dab6d535055584fe02cdb5e", + "value": "0xa3d5e" + }, + { + "key": "0x975c728729cd5e4a3ca7a0535e1685ca43a5990dab6d535055584fe02cdb60", + "value": "0x66cafe78" + }, + { + "key": "0x4f8829fff28df631b7299e89d5eee56c62d092a4376659de27816819368c685", + "value": "0x66cafee0" + }, + { + "key": "0x17bd50253c29f6d022e00705e715cba16bda91c91e25851fdadd6dda0275efa", + "value": "0x66cafe78" + }, + { + "key": "0x975c728729cd5e4a3ca7a0535e1685ca43a5990dab6d535055584fe02cdb5d", + "value": "0x5f5bd59" + }, + { + "key": "0x17bd50253c29f6d022e00705e715cba16bda91c91e25851fdadd6dda0275ef9", + "value": "0x66cafe90" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x5bac" + }, + { + "key": "0x975c728729cd5e4a3ca7a0535e1685ca43a5990dab6d535055584fe02cdb5f", + "value": "0x66cafea4" + }, + { + "key": "0x4f8829fff28df631b7299e89d5eee56c62d092a4376659de27816819368c683", + "value": "0x5f5d606" + }, + { + "key": "0x4f8829fff28df631b7299e89d5eee56c62d092a4376659de27816819368c684", + "value": "0xa3d5e" + }, + { + "key": "0x17bd50253c29f6d022e00705e715cba16bda91c91e25851fdadd6dda0275ef7", + "value": "0x5f5c358" + }, + { + "key": "0x17bd50253c29f6d022e00705e715cba16bda91c91e25851fdadd6dda0275ef8", + "value": "0xa3d5e" + } + ] + }, + { + "address": "0x52021be6c3572486b5697430a2c3256eb1c5e9f9ee8383cf7a8b2f309a31f6f", + "storage_entries": [ + { + "key": "0x4f980baaf29da4401c3439686ce847150c6d0603749e7b39399577518098f33", + "value": "0xa3d5e" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x430d04" + }, + { + "key": "0x4f980baaf29da4401c3439686ce847150c6d0603749e7b39399577518098f32", + "value": "0x5cf4c279ec7" + }, + { + "key": "0x4f980baaf29da4401c3439686ce847150c6d0603749e7b39399577518098f35", + "value": "0x66cafe78" + }, + { + "key": "0x40c85db79ed32651d8cb7c6685fa8c650062910783d29dca3845f3a80d6ed43", + "value": "0x66cafe8c" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x6b39" + }, + { + "key": "0x40c85db79ed32651d8cb7c6685fa8c650062910783d29dca3845f3a80d6ed42", + "value": "0xa3d5e" + }, + { + "key": "0x40c85db79ed32651d8cb7c6685fa8c650062910783d29dca3845f3a80d6ed44", + "value": "0x66cafe78" + }, + { + "key": "0x4f980baaf29da4401c3439686ce847150c6d0603749e7b39399577518098f34", + "value": "0x66cafe64" + }, + { + "key": "0x40c85db79ed32651d8cb7c6685fa8c650062910783d29dca3845f3a80d6ed41", + "value": "0x5cf7a58a940" + } + ] + }, + { + "address": "0x7d8c33f4496aff713013411824fe34883f98da114d651185c60f56c1857e214", + "storage_entries": [] + }, + { + "address": "0x63d69ae657bd2f40337c39bf35a870ac27ddf91e6623c2f52529db4c1619a51", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x59c7cc16730" + }, + { + "key": "0x516db81946c7dff80bd06c15b3e2b6b10d52e7dfc974b20bb69ae96b82db906", + "value": "0xb0d2ccfd" + } + ] + }, + { + "address": "0x4878d1148318a31829523ee9c6a5ee563af6cd87f90a30809e5b0d27db8a9b", + "storage_entries": [ + { + "key": "0x2b317f1d76a1b287a48df2f31215729d2fd2d6bde40de53f0189a6c0f396a96", + "value": "0x30e29772030" + }, + { + "key": "0x608398e014ef770c41593655bdb73191e7876ae8b8ea86c440c49d7017f5d7e", + "value": "0xb0800374c676b" + }, + { + "key": "0x70e47b83faea56116e7d6fa80d0568bd0458120169fa8f12e38571e6cd69676", + "value": "0x33f4049a7ec" + }, + { + "key": "0x1697e3f0d595af286015241ed52a02f13ad8f8a6231554a9011af3ab85cc20", + "value": "0xa1b5dc88e" + }, + { + "key": "0x61b753ea8508680e5f5a5896622fd1352a0d94adedf3807618581a6eaa9f56", + "value": "0xc9053ab3dd7" + }, + { + "key": "0x3f7abfacbf46ee0c05c892d0f60631f833afedcd309c49891687b50df9f8d1b", + "value": "0x2885ed33da" + }, + { + "key": "0x1a647e407c57040dd533d74ad3d29d53e528620a8e248e5fbbc4f6caaee5a9f", + "value": "0x24af015b74d" + }, + { + "key": "0x7cecdd25dd2ea7e6c56680609541794751fca1ac02eae3d1ed6a3fc56abad6e", + "value": "0xb57aedeaa4" + }, + { + "key": "0x110c5eead1cc190e9d0355891d1bffe58c33d910aa3bb5d1b948361f5a08030", + "value": "0x4132a2fcc32d3" + }, + { + "key": "0x798861c6e140b459a4ffa0d01f1a6c0a20384e108b39ebefcec7f33451eaa4c", + "value": "0x4bd3f6aad80ac0" + }, + { + "key": "0x5af44454ca463fa5e54116c45f82d90f4c98b9566c59934738f2a5d8fc07cf1", + "value": "0x13ac76e52287" + }, + { + "key": "0x638083318d1e092a31e45210a3b2d8d0a572b2f2fb1de7db251b8735772a2b9", + "value": "0xa29f93482" + } + ] + }, + { + "address": "0x5726725e9507c3586cc0516449e2c74d9b201ab2747752bb0251aaa263c9a26", + "storage_entries": [ + { + "key": "0x1e6f3e4333da349f86a03f030be7f2c76d8266a97c625746ebb9d3220a39d87", + "value": "0x78beb285fb936031d21" + }, + { + "key": "0x3351bce4793f90e4aa00447357c2d34ac08611756193d8249009e0396dd7b41", + "value": "0x66cafe78" + }, + { + "key": "0x57c60b189063035eed65879a14ad5f6e718027a212dafbe52f9bcd79e9f4fa", + "value": "0x1040bd37c236b8a06" + }, + { + "key": "0x3b3a699bb6ef37ff4b9c4e14319c7d8e9c9bdd10ff402d1ebde18c62ae58381", + "value": "0x35775aa3a" + } + ] + }, + { + "address": "0x4619e9ce4109590219c5263787050726be63382148538f3f936c22aa87d2fc2", + "storage_entries": [ + { + "key": "0x21e1f7868a42adf8781cf7d3a76817ceaaafda5d56b7e7d8f26bc4f27ecdbe2", + "value": "0x29dea91dad6da34a4cd0a" + }, + { + "key": "0x75c33e533ab03aaa9288fa20221fcef62b22a92b23f3a551b4851e724355876", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x29dea91dad6da34874112" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x1ce81410b6bd10f7c8386" + } + ] + }, + { + "address": "0x338724b89122b27c1d639c4e1ba54725af2ca038e70a5a8e90fcf86b06aff80", + "storage_entries": [] + }, + { + "address": "0xc530f2c0aa4c16a0806365b0898499fba372e5df7a7172dc6fe9ba777e8007", + "storage_entries": [ + { + "key": "0x3e4e1993901faad3dd005be17839130abdccb4c36ab73f74dd3f05333e2b8ef", + "value": "0xca7d3d76718685fbad00" + }, + { + "key": "0x266f8b55363b8e73f00c86872bdd2acbf25fdec9ff149a7855e1a0894e98f7", + "value": "0x762efe5ed948e2800" + } + ] + }, + { + "address": "0x5d2b4ff90b0bdba43656ea1c7a3a42f787e419fff52883f156cfb30a4a9e0bd", + "storage_entries": [] + }, + { + "address": "0x7110d84a0b0a3e8673e1f7d465c3f6c6a886ba7bb7c090b26053b150c7fd7a0", + "storage_entries": [] + }, + { + "address": "0x3ec56cc583e8b6b35e0f226b26bf8c27afe973909e62db9e64e9c466e6f18c4", + "storage_entries": [] + }, + { + "address": "0x6865262d42ddfe81d94d96d58b740fdad4c776b897b9105d601e0f2f49ec9cf", + "storage_entries": [] + }, + { + "address": "0x49d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7", + "storage_entries": [ + { + "key": "0x59c917230835dbc4669c743532d8c1e5b99cb96cc0d0803480147c35aa9eabb", + "value": "0x4bd52cc203a679" + }, + { + "key": "0x1cd5f67a6b8a183a20acc9fcd2048c9f7e1941d13f35e914d25300b1e890a37", + "value": "0x1a2a824fd1ac87" + }, + { + "key": "0x111589179dd21dc1e92f5829eb986ec03e66181aac2f082c50c3ad1af2c36aa", + "value": "0x26b873e2a7ae94" + }, + { + "key": "0x5b13f9e3b68ad64f537c4400ba5afddf3f8ccae582b44fcaca9858c8b5160a1", + "value": "0x1990a0f5ab0febb" + }, + { + "key": "0x69a52b72a113ba3283d75a3032aa39d2a6e0bc010f7eca8734a1d26c7fc695", + "value": "0x1f66a1e569a25b" + }, + { + "key": "0x67c0cc5a565c6a132e0e88c532d9e3f7e839ef8ac63fc475393206d2776032b", + "value": "0x1f3bf603174cb6" + }, + { + "key": "0x6f52079809db66bd5c72fc68a5428f9e57ac516352d19276d3ff61a9fe58b6b", + "value": "0x104fb97b7e" + }, + { + "key": "0x367b012f3d07fcd419fa5d383fb3884ea5d6bd315bfd9e1e63c1147e5506368", + "value": "0x27474065d2e0944" + }, + { + "key": "0x613d197003eaeaec95cda022ece67293267e42a6ab0d14b510a147b500cb6b8", + "value": "0x1774e750cb9d272d9b" + }, + { + "key": "0x3e462fc7483caae75b622fcdf18515e902aab14cbf63945561c0b50d15d6c2", + "value": "0x1278171f85a7c077" + }, + { + "key": "0x1570aa5cc9cb038d54178c2e0af462328703e283205eaef0a949a7fa138bcfd", + "value": "0x1d0d9489b1e0ab" + }, + { + "key": "0x6636a75b3ff370d46d688599f7138b2fac9bf6cfa0ce2f4c55c459c9dacdeb9", + "value": "0x20f1d96b5597c4" + }, + { + "key": "0x2b70819fd7baa9909bf8c58bbac40570dedd9f7cd3ef7e7b7e4035b7e82ec5f", + "value": "0x105061e57a" + }, + { + "key": "0x31a1e53a29f3e42afc8b135e08d1333720d57945adc2c9c32e11dfeacf2ee", + "value": "0x199c6652362acb" + }, + { + "key": "0x5d03c72383f0cde9567310bc47892edc6ebbf757250dd84686cdd292f5b6f2f", + "value": "0x7189761b6725b2" + }, + { + "key": "0x3c8eecf9516c5c6429991a8965be2555872fb6190df9674142a3c6d99c4661d", + "value": "0x213fc8562a41aa" + }, + { + "key": "0x38e0503b87211df933ca34a5a6f1677f88d16890ec6fb843e975e273e80467e", + "value": "0x39e527f2675487f9d" + }, + { + "key": "0x1c8dbf555be2559058fefd8b6a3531c1b0b2656d3b3b84719d9a5aef0728a8a", + "value": "0x10500f56f2" + }, + { + "key": "0x585ad207462164c68668cded3d7ee02dea2f306cf2c325756401fcc2f2fb97e", + "value": "0x56f3e200e0b000" + }, + { + "key": "0x3aeff2c4fa75aace8f3974aa291ed288c2946cb2c89d3d45f43ec2e3d341266", + "value": "0x584dccfe023d9714e" + }, + { + "key": "0x36daeb121801f6ef0e6da8709cf053ce50ed601cc5673bd3151d84b2dca5ae7", + "value": "0xac0c6585eb116" + }, + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x3d4b5425d9d2cce" + }, + { + "key": "0x7a551cc133e5fe4a4cf58d4c38fc1b25015a7b3e4f184ba004bed8dacb551bd", + "value": "0x166dc8636671942" + }, + { + "key": "0x4b851648f96e5edb2e655129e27f91242ae590dec8d514f68767978b881ad08", + "value": "0x66f8404244508e7" + }, + { + "key": "0x19ac936c891040e6d16c705f25e210dd79f43cd820f5aecb13601f514e601d7", + "value": "0x2d4476eee4dc87b1" + }, + { + "key": "0x110d72e967a25e84433e44d5dc11f3ac9ebc2b1cdc33190a97d01ce2e3798cc", + "value": "0x9f3027e497926" + }, + { + "key": "0x5fed395fcf0746aba8eeaed0480919941004b7d52792cac1966bfae04d47a11", + "value": "0x24e48c4091b8625" + }, + { + "key": "0x2b427a7c272274f4129bff30e709da4643ecd0b874e95a89181aa2422b832f", + "value": "0x24cf42bba67f6f6" + }, + { + "key": "0x212c56ca827fd0cf508e8fd45edd724a6fbcecaaf2756037abdecef0ebe8bfb", + "value": "0x11c77a1a1e0752" + }, + { + "key": "0x3ce63b6014623680de3801addbdbc460bcbf144f0c741cb14aed33cc5bb892c", + "value": "0xec61530349485d5" + }, + { + "key": "0x70a9b73288fffff468b2443e4c1507b7ba0ef374b286faa9351fd9d86ae8d8b", + "value": "0x107bc1421adf7c" + }, + { + "key": "0x6b3254181b6b59f31aa86699e1d0fd2d3c6e759454a68932df062bf0f176459", + "value": "0x24c48e30284fc32" + }, + { + "key": "0x17d6e93da0a87c048607a8119dc161ae6965eb8f3c9f6c1b74afe47ae3715c2", + "value": "0x247432032f6be00" + }, + { + "key": "0x4c6892b386996ee4efdd7cda583b6f8da4d9e4d552eab4bd7876efa302f7082", + "value": "0x3de9c42658e71cb" + }, + { + "key": "0x519cd0b685c10e97e93dd1ad26ebe79c8864f99ddce61d07506b3f8ee9682c1", + "value": "0xa94feaa023a72ce" + }, + { + "key": "0x7f766a9590f3f9b39aba5d8c250c45767091ef9c749d390ee5e0f6c5413c5ee", + "value": "0x10501e69d6" + }, + { + "key": "0x53fd9d6a96124b5fa38da77f8f14dffcac7f5a85623c6534397994f59e7bf20", + "value": "0x9ab68537d1336" + }, + { + "key": "0x60f77b347e414d3460516ffc4bf588f4235089f60ea132698396b57c184bb40", + "value": "0x1a4d672efb804e" + }, + { + "key": "0x1e008b2a087a1b988d53d8ad26d04a1c8037cb77595ed47a76e098c109a8e1c", + "value": "0x1609302fa545b9" + }, + { + "key": "0x490ba80e3d784cbb7042849ad68c9ac3e35a2b91b8c2330378701a780973f62", + "value": "0x23802361eecd" + }, + { + "key": "0x99ff64f8cd4aa3301dec7b19f4052cd68a1fb5690f6e017807e97a46d5e08e", + "value": "0x9f3e7bf4069af45ca" + }, + { + "key": "0x6bdab5b5d08a8887ef4d36b89aa78ac9628cb8adfb2b7a94d79053065b9965e", + "value": "0xa6f37bea4e0fdd9" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x28db0dd4ba138b1ff0c" + }, + { + "key": "0x5fad7613fd327fc13290b4c80dcb56b41035cff52310cc2f9e1d7de286fcff1", + "value": "0x165edb26676973c0b" + }, + { + "key": "0x5f6b6fc6348470674807164ece27f9f698117509138b41bbd524edb641810be", + "value": "0x21f8465a874c5" + }, + { + "key": "0x24e6f287d70cc7fcc92193e8349c21207def342360df512c28ea83b31faceae", + "value": "0x3a051ac044f3e4" + }, + { + "key": "0x71bcf12577321cb8ac8617acd90a77c9ed6523899303e07cbb5b64e1e72fed8", + "value": "0x1d7b57e308b7b5d" + }, + { + "key": "0x3851d399ca5877d49e4bb7f5c0101164290c167e8b8f6eaad7d502d68bf374c", + "value": "0x10505017ff" + }, + { + "key": "0x69748f5fadd29e0624b8d5026e87f02e28b2759fb3fc02d97a917455e63c3d7", + "value": "0x643d371131619" + }, + { + "key": "0x71b8c2256a4d5150a6f4dbbdf96d0d38a07332f8403d0ed697693b5ac46de2", + "value": "0x79602c63cf303a2" + }, + { + "key": "0x76b53dca196d89bfb427adde12f7e4551b42a542da362051c502e141a6b9ae3", + "value": "0x929fc28b1a3346" + }, + { + "key": "0x7effecfcd0745eeb5d91e3d7497643fdfc0f5fe4077149f258e655b9c719d44", + "value": "0x24fe2c796e5b191" + }, + { + "key": "0x4dbfe544ed63377b3d819a142e245f56921729b4c3e205f87e66b64af007235", + "value": "0x6540d4232a8390d" + }, + { + "key": "0x599b39b8f0e0e064f62ba921252b0735c2732a18e0b87e5b66e7f235d05dbf9", + "value": "0xfffffffffffffd6363e8c8bf2ca9cdaa" + }, + { + "key": "0x266f8b55363b8e73f00c86872bdd2acbf25fdec9ff149a7855e1a0894e98f7", + "value": "0x1899050d6234d14" + }, + { + "key": "0x75c33e533ab03aaa9288fa20221fcef62b22a92b23f3a551b4851e724355876", + "value": "0x358f45aaa992e4" + }, + { + "key": "0x814cf93287eb1a0e4f9adfd8f08ad759a7ba6ef630fee1d681d11db74eb07e", + "value": "0x3a824513483e1d" + }, + { + "key": "0x723438ae54c04d20256138ca4cf977bce30e9acace63a1ee1684385e6380858", + "value": "0x7a24e2af9c" + }, + { + "key": "0x269e3afd13d7a688622a8ee84a4bf1d4f650a48e338e0bc9142cb66bc3c511", + "value": "0x20c343767eb91" + }, + { + "key": "0x79cc9f1d6fcb51e0503a05b7963d3951fae52b3863024f505eba10f044c5ee4", + "value": "0xd9385b619ca537" + }, + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x504bc49e2c4fd1fc106" + }, + { + "key": "0x5496768776e3db30053404f18067d81a6e06f5a2b0de326e21298fd9d569a9a", + "value": "0x78859bf7c99c3158" + }, + { + "key": "0x516db81946c7dff80bd06c15b3e2b6b10d52e7dfc974b20bb69ae96b82db906", + "value": "0x3e664ed860c9" + }, + { + "key": "0x16b3d3e6dc5eb6b2a22d393aca36ab039dde3fd8264d00f198e73d4d82ec7cd", + "value": "0xe5f18d13d0d62" + }, + { + "key": "0x4d59adfa23601a0d30b68b4838de7b31ffb435fd988887684fb51403556fb2f", + "value": "0x54946ca97ee3b0" + }, + { + "key": "0x64417198bb083774bd3317ff4f4679597a33013870d6a99c2a9d32b3c51c09f", + "value": "0x122290d07ad217" + }, + { + "key": "0x7629bf3e5e05518165939127817b7fc8266058cdf4f5283e37da72a4a452c47", + "value": "0xd5e1b535267e5" + }, + { + "key": "0x7354567862f4d3e6b5564d2e2a12ea3643daaa9dfe1d9ee1290311438242e10", + "value": "0x2669ec24a226fcd" + }, + { + "key": "0x2be41ea00b3e998afcaecaeff43baa5459a4184c3bdcc9225d5fe8d1cac1acd", + "value": "0x38d7ea4c68000" + }, + { + "key": "0x3badb570a5ac977685f9ba122d5862d02b575a348b0a3ce085e04da84ef9c8d", + "value": "0x5c7ef4b6e40d2b4" + }, + { + "key": "0x781170a5a58724480a7c2244c8ccc399d632371de15f86eb1def1d594ad373a", + "value": "0x88fc07bd364897" + }, + { + "key": "0x5bcb9d5ba4d5512088b3877732de73f8f5cfb9d5d3393fd7b577788cc161658", + "value": "0x0" + }, + { + "key": "0x637573e7c78643cbde2f5ef2c8bf24f85595a16a26b8ba2a6ce820d55b07081", + "value": "0x24ff89c4e8e89e7" + }, + { + "key": "0x2c40cfaa9c0aeba40ea0b8f5818e1a12c44c5e9c01c31beb8fd21f5dab2f95d", + "value": "0xd85414873e6b9b8d" + }, + { + "key": "0x2681e8758501492434ed3c4c23296b52d54a8e1427a1ab9dc0d782221f13375", + "value": "0x2fd7c0c0b80fd2" + }, + { + "key": "0x4ba42abd4e4d6d06507e99cabe0c5ec930c621772416ed6d5a36c1194aee557", + "value": "0x104fc1a76c" + }, + { + "key": "0xd952ae9351495dc8b2c502071219339d504501ae7e0d3e43df6fe5a4b2c6c0", + "value": "0x357e7479d0700f" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0x2c49101b3909b96" + }, + { + "key": "0x57736171232289674c6d8d450ea95fca0ea2a57c3a8f838737ce335bea82929", + "value": "0x37961407335215" + }, + { + "key": "0x5633e53ec7027b616ce31c20b0cc651d6f7b720359be8248e1a691863e2a3e", + "value": "0x1046a77c67" + }, + { + "key": "0x6bfd94b067b7a0f959ac2f97a1c66f8f023e057e76392bfbdc29c0abc9cc414", + "value": "0x16fddd08c8f198896" + }, + { + "key": "0x5766ce84b976336c8dca0598cdd7faa350c1bbee3ead2c26a26984d99714d34", + "value": "0x3ae6aa027d024" + }, + { + "key": "0x3d7ccfb9e9c5944c7a3226921716da0d42239892dbde7b12c1e5597d31c4124", + "value": "0x280b1ab91fe224a24" + }, + { + "key": "0x4705baa9724ea730ec703ed1e7fe788b550741c95b77725fbc2e01d2fe5189d", + "value": "0x6c6f8d6244dd217" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0xa378918d9402a7f61" + }, + { + "key": "0x6da2d3bc7a56461ba6fe057fea3a7371ee83c837dd887093b66c251df20f0d9", + "value": "0x1d392e42bd28ae" + }, + { + "key": "0x74ee32f30f6964431204823e70213278c5ca5396df9976fd7a27dd0351cf81c", + "value": "0x23915d13b36820" + }, + { + "key": "0x5aa332dc6ae90d6d53fee5fa2aba459a7f2c65c2b2f8759e4e478b3522c6186", + "value": "0x2187afc0648803" + }, + { + "key": "0x28be0d1b762c32f0c434a2954fb9f00b05e7c4435dad20988f75196962e29c8", + "value": "0x3aa52d80910fc6" + } + ] + }, + { + "address": "0x68400056dccee818caa7e8a2c305f9a60d255145bac22d6c5c9bf9e2e046b71", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x280b1ab91fe224a24" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x42b47e7cb9ffcfc270ef" + } + ] + }, + { + "address": "0x1f21a56366cc28ea3cff8434f15a37f6aca8a595ca3bc5ffc6840a9c44d581f", + "storage_entries": [ + { + "key": "0x3169280320f42baaf260a97fb41ce48a8c2bcf8f894064c9d5f4e63688377f5", + "value": "0x3" + }, + { + "key": "0x458e21e543febcb073fbf886ef04085f067be1186505042d02a7fac3e125cd9", + "value": "0xac0" + }, + { + "key": "0x5566272b725af82ec82a2cce0cb2afce24ef1c4e6ea035d7a4010029e72c8a0", + "value": "0xac0" + }, + { + "key": "0x5566272b725af82ec82a2cce0cb2afce24ef1c4e6ea035d7a4010029e72c89e", + "value": "0x100" + }, + { + "key": "0x497cf69593aabd01ec792f35b5bd7f9fb00973d50b8ffff6093ba806b57c0ed", + "value": "0xac0" + } + ] + }, + { + "address": "0x1610abab2ff987cdfb5e73cccbf7069cbb1a02bbfa5ee31d97cc30e29d89090", + "storage_entries": [ + { + "key": "0x516db81946c7dff80bd06c15b3e2b6b10d52e7dfc974b20bb69ae96b82db906", + "value": "0x9c5278be1e142ef6" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x1e950459d639772d59daa" + } + ] + }, + { + "address": "0x551710e31ceb35c0e14c63a33b8d379ab06d17625a0231b971fd98713445506", + "storage_entries": [] + }, + { + "address": "0x32a4480eaa15a76e95f524cadeeb8f75b43720530c156e603f4b550ba0fb8c1", + "storage_entries": [] + }, + { + "address": "0x2a85bd616f912537c50a49a4076db02c00b29b2cdc8a197ce92ed1837fa875b", + "storage_entries": [ + { + "key": "0x38502d057a7e5faeb88c2da2b38bed5cb3b54ba595bdaaffa08e00c1f23ff7", + "value": "0x5f497da000000000000000000000000066caff95" + }, + { + "key": "0xa1fb34bebf1a31f7f5655609661d0adf360ee017d59f5a79a888269f14610e", + "value": "0x40059ac104000000000000000000000000066caff95" + }, + { + "key": "0x1cccf7c0332e31fdb47f7b5ef3b96c446b20d931e65ca65d944ec9b225a8069", + "value": "0x5f7071c000000000000000000000000066caff95" + }, + { + "key": "0x27e944e50e1ed0d8b92bdfa6d1952d7ab591ee17142a9e75986fccdbabfa7c8", + "value": "0xf42b5000000000000000000000000066caff95" + }, + { + "key": "0x4f1a4684e38be7aa9f297c42bf5250499dd16de5a15420725275aea3c1875ba", + "value": "0x4b6509de3d000000000000000000000000066caff95" + }, + { + "key": "0x473ed377d9c2116809dc33ae8f59fd4c49ed961bc976ac34f7fb52509dd835a", + "value": "0x5cc44a02901000000000000000000000000066caff95" + }, + { + "key": "0x6c824c2c9cfc495fd01cf1381ada6a1e04f628a177b331d2868b65df92892e7", + "value": "0x2636128000000000000000000000000066caff95" + }, + { + "key": "0x23698d11a922abbb5528badafb0f486ae855d31d4eb1aaf7f968e13c8dd7dd7", + "value": "0x4007c6f0c9000000000000000000000000066caff95" + } + ] + }, + { + "address": "0x1a4edc870eb8da3b73ab70d5dffc5c0a14a6ab1ad612845add04200582bffa4", + "storage_entries": [] + }, + { + "address": "0x57e980208954e55a1af061c53ecdf6609ef1bdbc6ec3f700a23fe8c55cbdf9a", + "storage_entries": [] + }, + { + "address": "0x6a86a506ecf3e42b516754f94aad13f726cc6470008ef79a7dde024ce5df52f", + "storage_entries": [] + }, + { + "address": "0x709581a5fdc685876ccebf3062d2f6a352ff55c81bd751cf29997a07bc6fc69", + "storage_entries": [] + }, + { + "address": "0x41ae8cae25b8b723aaa5af424b979bbf37c778f0435cee87f010a4f461eaeb7", + "storage_entries": [ + { + "key": "0x584f38f5154e9b8a6c40203ea644ba5275c501456ff7265ae17aa662d495c7b", + "value": "0x725357fe169ce96" + }, + { + "key": "0x39b03cc1cdefcbdadd13946706a2aa9cd244f8e72115079bdf19063751800f4", + "value": "0x19506d42a403f0ac" + } + ] + }, + { + "address": "0x28385e91469dfed6260efe5a054b3cdc9967fab2f4fd87d1aac33c5a1719c07", + "storage_entries": [] + }, + { + "address": "0x4c0a5193d58f74fbace4b74dcf65481e734ed1714121bdc571da345540efa05", + "storage_entries": [ + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c513a", + "value": "0x38dc71314e257b00aee81e" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5139", + "value": "0x18df98a61f224f059c96eb" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5138", + "value": "0x3837f195207c031a68f35c9" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5137", + "value": "0x366e1e048f3e051c96c3080" + }, + { + "key": "0x48debd70ae9d943ab4f84d69ab1e7980db8e11bd0ba9c6a17f10403db1c5136", + "value": "0x66cafe78" + } + ] + }, + { + "address": "0x7f28a38e4f6622d530c83b75efd5ef772352c9c8e4bbc5e75355601f611367f", + "storage_entries": [] + }, + { + "address": "0x4fc6aa08cd359710f619476074e0ff7e7f82532d6fb1b3960b5818a796f75e3", + "storage_entries": [ + { + "key": "0x584f38f5154e9b8a6c40203ea644ba5275c501456ff7265ae17aa662d495c7b", + "value": "0x8962d9835780c252" + } + ] + }, + { + "address": "0x51c78d100ca4a44256e229e9a10a5c15608c77dc69976e7cc66d4423072ae19", + "storage_entries": [ + { + "key": "0x54d3ea9c0db4a610c18c358d21965fdb7179d7a1b49811496a8751a56947e9f", + "value": "0xa3d5e" + }, + { + "key": "0x1d18cea329d5a2d14841cfcabd8d7db6b93be60def6afdf6be811d3f1b71d1e", + "value": "0x66cafe86" + }, + { + "key": "0x7c9a042730c89c7065b8f5aac7a03c4aa748584e307d4a65a694e0079f00bf7", + "value": "0x66cafd8d" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x560a04" + }, + { + "key": "0x3143ea7d3c8a263608fcdc19ce0b6e7c8f994be763a3038af5ea5d9b98c6182", + "value": "0x66cafe78" + }, + { + "key": "0x7c9a042730c89c7065b8f5aac7a03c4aa748584e307d4a65a694e0079f00bf8", + "value": "0x66cafe78" + }, + { + "key": "0x3143ea7d3c8a263608fcdc19ce0b6e7c8f994be763a3038af5ea5d9b98c617f", + "value": "0x5f6b3f0" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x55af" + }, + { + "key": "0x7c9a042730c89c7065b8f5aac7a03c4aa748584e307d4a65a694e0079f00bf6", + "value": "0xa3d5e" + }, + { + "key": "0x54d3ea9c0db4a610c18c358d21965fdb7179d7a1b49811496a8751a56947e9e", + "value": "0x5f6b23e" + }, + { + "key": "0x3143ea7d3c8a263608fcdc19ce0b6e7c8f994be763a3038af5ea5d9b98c6180", + "value": "0xa3d5e" + }, + { + "key": "0x1d18cea329d5a2d14841cfcabd8d7db6b93be60def6afdf6be811d3f1b71d1d", + "value": "0xa3d5e" + }, + { + "key": "0x3143ea7d3c8a263608fcdc19ce0b6e7c8f994be763a3038af5ea5d9b98c6181", + "value": "0x66cafe9a" + }, + { + "key": "0x54d3ea9c0db4a610c18c358d21965fdb7179d7a1b49811496a8751a56947ea1", + "value": "0x66cafe78" + }, + { + "key": "0x1d18cea329d5a2d14841cfcabd8d7db6b93be60def6afdf6be811d3f1b71d1f", + "value": "0x66cafe78" + }, + { + "key": "0x7c9a042730c89c7065b8f5aac7a03c4aa748584e307d4a65a694e0079f00bf5", + "value": "0x5f6b3f0" + }, + { + "key": "0x1d18cea329d5a2d14841cfcabd8d7db6b93be60def6afdf6be811d3f1b71d1c", + "value": "0x5f6b3f0" + }, + { + "key": "0x54d3ea9c0db4a610c18c358d21965fdb7179d7a1b49811496a8751a56947ea0", + "value": "0x66caff26" + } + ] + }, + { + "address": "0x719b5092403233201aa822ce928bd4b551d0cdb071a724edd7dc5e5f57b7f34", + "storage_entries": [ + { + "key": "0x1bff8c50a5584fb1238a3e05b95b80b366ff85cc15268676f16651b2c922129", + "value": "0x83430ef2fe85b9a28de45" + }, + { + "key": "0x6bdab5b5d08a8887ef4d36b89aa78ac9628cb8adfb2b7a94d79053065b9965e", + "value": "0x703d7098b480994daa" + } + ] + }, + { + "address": "0x422d33a3638dcc4c62e72e1d6942cd31eb643ef596ccac2351e0e21f6cd4bf4", + "storage_entries": [ + { + "key": "0x740321d6a7262dfc8779e165d24e7728845351b0c282996f14552fbaa4c2e13", + "value": "0xb050001" + }, + { + "key": "0x5dd4499737629107a81202d83ad6a1b2688037bb186aca75793de18bb37c628", + "value": "0x318086f240000cbec06781000a000000001223841cc00004ab8cca8001" + }, + { + "key": "0x60224cce9df7386d1ee8909d7c9cff19b0ef48cf9557212a975fd68987293d4", + "value": "0x100000000000000000000000000000000" + }, + { + "key": "0x30e4ce10fdfe2019b8a51606f36351c03f356c1e096d7170b9332bddafeb40", + "value": "0x2000000000000463c00052010066cafdb9020000000000004c390005" + }, + { + "key": "0x4ff93c6c744bbb1f94fe7af82c7cec7b13ace181dbd1aaa7076512ac85794cd", + "value": "0x390003" + }, + { + "key": "0x2645e91dae0125d5c9c2824bf60a58f245282acc5166def95bc4cd2a52690ce", + "value": "0xa3d5f2" + }, + { + "key": "0x4203ffa245689b1cb1c3ee466d3b9f23f95bb1af77a8c484ef3f90d5d387ce5", + "value": "0x66cafe7800011" + }, + { + "key": "0x737a2d9aacfdc49537a8f6878bbd256fcccdbeee836be1048b98fa8c52fb827", + "value": "0x19b2d4eb4000033b94ed91684400010020000000000004c390005001d40042" + }, + { + "key": "0xccad227192e71f1da0033af759c1f8abfcf576a10406cd678c80c5abbafab7", + "value": "0x66f28b78066cafe78000278d000278d0000000000003d0900" + }, + { + "key": "0x5130d09dd92970c04a47dcfb80cd087970f53c7608684d44b9dbcc3f65cf8e7", + "value": "0x15ffffc700019b227420013aa6b8013aa6b800012" + }, + { + "key": "0x3f81031df198fc214ceb09f9bca12c8f9d6efb4365348f85da7b6d226d2fb10", + "value": "0x4600114002c0000000000030d400005573000061a80" + }, + { + "key": "0x52e1a6715251bba55fab1344e58e90d94c3682be4c6ab8db8a5821be56bdd3d", + "value": "0x3cc002c0000000000000000000000050003d090" + }, + { + "key": "0x7335497d754b62ed116a2f3838f916e36f65a3a72db23c3881d18d04b8f3470", + "value": "0x200d1000000000000211300050000a3d5e00003066cb1b57066c4e183" + }, + { + "key": "0x2bda1f5ff91b2cc6aea4db1ca48faebe3179df739ed7eedc84844744cb4a9ac", + "value": "0x8100054010066cb47cd020000000000000d740005" + }, + { + "key": "0x3cbe909a262ce0d1fc077be0a210a28a36a6019addaf7875d0c0acf5465c15a", + "value": "0x2000000000000390800054010066cafe7802000000000000390a0005" + }, + { + "key": "0x31c74924a7eb5835896bd92f9493f2babc61dd1d8eca1b9b0979ead5abd04a4", + "value": "0xdd2700003003c40005003ac00680000000a0068af840000001e000001f5" + }, + { + "key": "0x13d325c6a7fa76be274e53b347bdadc42b60db5558628cabf738e262d0b51fe", + "value": "0x3cc002c001f400ed000000050003d09000000bb800000001" + }, + { + "key": "0x6d31370ccbde5b5bb5552c58e0e40e30c09750fb64a3514bd5679ade8c163f6", + "value": "0x1000d000000000050e9df90000001855bc801" + }, + { + "key": "0x650e844355dfb0958f4b57dc7d214dd35b38d4540ee0c086857b5b72e388506", + "value": "0x1" + }, + { + "key": "0x1a678014c88c42e25ea36b45e6b4c1bab16ebc9523c227293e69b6e0cd9a78b", + "value": "0x66b87e02000000000" + }, + { + "key": "0x60a4eabf7727feba7da816dbff220100a5b00a2ab37d56af8f08428faaeeb8", + "value": "0x2000000000000050a00064010066caff46010000000000004e2a0005" + }, + { + "key": "0x42f60b616edbe3a8856a79afa438b33d2a68eab737dc060b9228edbf371d50", + "value": "0x6064180dc000229e958881000a0000000038dcf250e80001ab702dd802" + }, + { + "key": "0x75b27a1e1e1056283e3e67709fb51893c6c609143a2e4e4fbaded5750b1dbdf", + "value": "0x6400180000000000000000001202650126ae69" + }, + { + "key": "0x66444406176ab62d20e989dd820cc63040595e46002de0be2ce3ba25fd3f08", + "value": "0x202520000000000004b4900050000a3d5e00002066cb49a2066c5cbf0" + }, + { + "key": "0x787b4c5c7ab19d4bc639292767e2b66d248c5196d3be732e82fc2b5a63b73bd", + "value": "0x66cb2603066c819f8" + }, + { + "key": "0x725e590d29f9cf64eea9e1993c6b5df79a8c217a287e3cc9c5be30b37afbbad", + "value": "0x2001c0000000000003ffc00050000a3d5b00003066cb0122066c8b355" + }, + { + "key": "0x5490895fc74554724e2b93261313598985f09e3ac7052371156f37c5bd27b32", + "value": "0x2de6f400007000bc0006000c4002000001f25003b87d00000960600190d74" + }, + { + "key": "0x3797cb207902f2dc5ed3b068e4ade85f9e406f6db8a389689e2097225151917", + "value": "0xb050001" + }, + { + "key": "0x52e1a6715251bba55fab1344e58e90d94c3682be4c6ab8db8a5821be56bdd3c", + "value": "0x200000000000011ab00054010066caff7e010000000000004e2a0005" + }, + { + "key": "0x4092c33dd9091d11b59a13d4a58cca4b890afbdbc32059b0eb2841e32ae9cb", + "value": "0xac2214bf8000226d375981000a0000000005acecedc800012295c92801" + }, + { + "key": "0x450c927fece51f746d82c03791803bbeee6f08bfcddfa9b0e8848c915344555", + "value": "0x1000a000000000004812ed8000000e6a2f801" + }, + { + "key": "0x5f69e7c66985e8c2542762eb293da7eb5e8e821e70d8287189e49553b9406d7", + "value": "0x2000000000000390900052010066cafd5b0200000000000019940005" + }, + { + "key": "0x78762d869fc650977b86df046e828378cf1a8c371dd9191423a2010bb586771", + "value": "0x3ca9076c40000f8cc75881000a0000000032d72f6138000c6d1037f810" + }, + { + "key": "0x7e44197b45367c9d13baab8f022cc0952b3a6fa01dee49549334ea3aec0b7d4", + "value": "0x100000000000000000000000000000000" + }, + { + "key": "0x7e1f2decbed1b5461a5facfab826c840b237ea95da91218ad46b0f9700ae2fa", + "value": "0x36400f3003d000ed00194007d0000001f0000002c007270e0002be570" + }, + { + "key": "0x7818026a6f81863c46895dd21bc5127cea25053a07a83f8ef84403d93f4b7a4", + "value": "0x66cb1b88066c88d6e" + }, + { + "key": "0xd7b26181206d1ab7573c726679b39c6c43db67ec91a533bcbe5b2051d285c", + "value": "0x2000000000000390900052010066cafd5b0200000000000019940005" + }, + { + "key": "0x69d2c9f0d3533a85ea36315c62b948a068ee56b8b4a1e7f31fa2160c4813532", + "value": "0x2000a0000000000003da700050000a3d5400003066cafe78066c3ef64" + }, + { + "key": "0x672bf3e1e21adfacdb088596d36f211061f09228ea8e2d4ab3772e14b52921", + "value": "0x436d0005" + }, + { + "key": "0x4f8445a7166a8472ab1c29463270bf3a605124d233c9fe4b8015b7cbe658dc8", + "value": "0xb050001" + }, + { + "key": "0x408ce980b8893a2f3f435c930f03034ac5444082bc6280d01afc39dbcc254a5", + "value": "0x66cb4327066c4105e" + }, + { + "key": "0x3127190ba811d9403619b0585a205faa9e6110dcf756d91b9e86a76876512b", + "value": "0x1ba11000700016800590014400b3000650a8000495d30005ec4e00002329" + }, + { + "key": "0x13025d6292f37242c746c77fb32e9ec6d3af655a93ceb53439563e01a2d32ce", + "value": "0x800f0001a0004600114002c0000000100030d40000493e0000927c0" + }, + { + "key": "0x759ef899426d03636014ee0d79c36fd9212f4a194b0d6879d04c2f9bfe56a84", + "value": "0x66cb0bbc066c731e8" + }, + { + "key": "0x67dabb388f2e46c8ff3dafbd35af61c22e0152b30495fab0c392db1d51eac13", + "value": "0x717da4002c00048003000140005600061a8000010549001d70e700040d2d" + }, + { + "key": "0x2bda1f5ff91b2cc6aea4db1ca48faebe3179df739ed7eedc84844744cb4a9ad", + "value": "0x1500000000000000000000000000030d40" + }, + { + "key": "0x18512debbec02d860b731e06b1cd236a5f03536054705f9cb8cef2a421b15ed", + "value": "0x3dc0090002b00017002ac00bc00086276000022240002d7e400000012" + }, + { + "key": "0x12ec2b17c9d9da39bedbe69241e2cd976da49b134b9ce1930c17ad43d91f9ca", + "value": "0xb4004f001780045000b4004a0020573f000124f8003f5183000321f4" + }, + { + "key": "0x386c26b34ecd6d2e95b5652e4496a55cdf79eee45aca9cd89bc41f6730d6140", + "value": "0x46a688308e9f2eb6e734624eb7dc5e0ecdcf7a020021bae1c3608f17505c2f1" + }, + { + "key": "0x32bbf527da3357b20fcc7d2f16342376f282a074c4c5b2e8ee3fc16134e2d93", + "value": "0x12c0050000000000000000000003c3200000d0c" + }, + { + "key": "0x275ca398a3d6ebe29098fb104152e95e54ecaeb1bd09002a1844c78206b6a6c", + "value": "0x66cb00fc010010002" + }, + { + "key": "0x542fc72ac9f05e532c383236d981c5013d761b8aaccbe81210d801e1e2fc95d", + "value": "0x1800000000000000000000000002faf080" + }, + { + "key": "0x3127190ba811d9403619b0585a205faa9e6110dcf756d91b9e86a76876512e", + "value": "0xcb980000d00048000200060002800030d4800049ca20032770b00002e2b" + }, + { + "key": "0x3509414a0f13dce6149a400a7bdfbacfbbdec91c360724391b75c0836d393c6", + "value": "0xed00000000000000000000000000000002" + }, + { + "key": "0x3cbe909a262ce0d1fc077be0a210a28a36a6019addaf7875d0c0acf5465c15b", + "value": "0xa600000000000000000000000000000001" + }, + { + "key": "0x67c6f02acdf00b4eeaf8c4876f471c8ad5939aff219ea7abd17190e1660a458", + "value": "0x299b795800000095b8db81000a0000000021999bb80000000524d56001" + }, + { + "key": "0x1a678014c88c42e25ea36b45e6b4c1bab16ebc9523c227293e69b6e0cd9a78a", + "value": "0x0" + }, + { + "key": "0xe6cc676653df56b9f2ae5a5ac8e2a75ed94a9adcadb2f21875ae1d2804b756", + "value": "0x19b2f209000007d00000000004000100200000000000021160005001340040" + }, + { + "key": "0x12ec2b17c9d9da39bedbe69241e2cd976da49b134b9ce1930c17ad43d91f9b4", + "value": "0x3cf2be0280000b0d06f501000a0000000039f2da583000101dc6363019" + }, + { + "key": "0x5fb83c33e4e8d91f2c263c98d5c2056e1426bca99e68d8a3d524007369ee364", + "value": "0x66f28b78066cafe78000278d000278d0000000000003d0900" + }, + { + "key": "0x3f9346f19bbf51a610d0cd94a17b7be5caa9141491f880b417efd6db9a968c7", + "value": "0x66cafe7806694cbda" + }, + { + "key": "0x7bba35e0753e7dabfd551772a8bc2de6f6b1526445da4bc8c45b6ef6e4849ba", + "value": "0x6865262d42ddfe81d94d96d58b740fdad4c776b897b9105d601e0f2f49ec9cf" + }, + { + "key": "0x2e4fe539bc41f3e09de75c784b3c4a1f0980d06e73c4bfdf94693bffd0496d7", + "value": "0x4246c98000600034009400020003a0121eac2000000100012021c000cff20" + }, + { + "key": "0x2e4fe539bc41f3e09de75c784b3c4a1f0980d06e73c4bfdf94693bffd0496d6", + "value": "0x1000a0000000029ae32dbf8000aea2d111802" + }, + { + "key": "0x725e6f57ee9c3d19b68c70301ce0676a6e097f570cfa6477977f82d4e26446", + "value": "0x200000000000000000000000000000000" + }, + { + "key": "0x7e1f2decbed1b5461a5facfab826c840b237ea95da91218ad46b0f9700ae2f9", + "value": "0x1000a000000003c3e816250000a1545c55803" + }, + { + "key": "0x209d136a0096a453b224863183318abcebff2bb73f99ab89cdc0284d8882129", + "value": "0x800000000000000000000000001337b20" + }, + { + "key": "0x296baa5ca00b84e54c158148d33e9b5cfc268f47c13c862884c850cdff54f79", + "value": "0x20000000000e1531b0000002188984001" + }, + { + "key": "0x7e1f2decbed1b5461a5facfab826c840b237ea95da91218ad46b0f9700ae2fb", + "value": "0xf700085002bc008100114002c00000190003bfdef0057a51b00e86847" + }, + { + "key": "0x7c253f90fee95f8daaee35cc3ac9e33ad2e0c14e6abc2af387815184aac1130", + "value": "0xb050001" + }, + { + "key": "0x5ae04be8b3227175e99f0c615ca72c885607b3968a11367b97b03b5f54aba71", + "value": "0x2e90edd000000ba43b74001000a00000000000000000000000000000000" + }, + { + "key": "0x57dc570c3213b04ecb319247eccd8ebc6da5b183e4216f410f2db4332d7398", + "value": "0x20000000000001a6400052010066cafe240200000000000039080005" + }, + { + "key": "0x4b7ca233c33750f95087e2e995a3a1ffb67cd4226a9f53f3da6d5a083e44ad8", + "value": "0x2000000000000050a00064010066cafe78020000000000002ca00005" + }, + { + "key": "0x355a0745e363e78755d697ce8bf50bfff3742b502f6f285c6d10570bbd77d03", + "value": "0x989d3c9c00001129323401000a000000002601e40d00000008c4916002" + }, + { + "key": "0x32bbf527da3357b20fcc7d2f16342376f282a074c4c5b2e8ee3fc16134e2d92", + "value": "0x4000e00108004c001d400da000005cd00002c850000000200000a2f" + }, + { + "key": "0x36d585e3780b66b06532e66d87674a5ebc764f931294464346a383c84cd5e89", + "value": "0x18e5f40053003d0003700204007d0000000e001ede6d000b3b880000bb80" + }, + { + "key": "0xbda979e8856502285c17143dea5583ed576f2fcdbb7fc111835dc611802788", + "value": "0x66f28b78066cafe78000278d000278d0000000000003d0900" + }, + { + "key": "0x78762d869fc650977b86df046e828378cf1a8c371dd9191423a2010bb586772", + "value": "0x1fb3c001e0019800120004c000500000027000000110002f462000bcec5" + }, + { + "key": "0x1360235a57130b4447e1ee6c63335ef751dad373378e28ed8c7e83acb9a26cd", + "value": "0x1b99991680019b2a0b70011c5de8011c5de800052" + }, + { + "key": "0x774bfe40a32895baa203160be01ac79241b5bd995a49e532d737248d00cd086", + "value": "0x66cae8df000000601" + }, + { + "key": "0x324e12b92c2101fbc3b75e957b3cdbc820570c5a9291a48f7475e514d0ba91f", + "value": "0x2000000000000390800052010066cafe780200000000000039090005" + }, + { + "key": "0x7e7a6ee8ff98d6ba66595b1b69986dbd6ccadceb00f58e9c955312d12a837d9", + "value": "0x4e2b" + }, + { + "key": "0x75b27a1e1e1056283e3e67709fb51893c6c609143a2e4e4fbaded5750b1dbde", + "value": "0x1000a0000000012d67a27ac0004c572a4b001" + }, + { + "key": "0x2ea5480116a37600a0b091eb7dd17ca030b3d6cb5fcedd712d55349948c6323", + "value": "0xc35000046003b40045000b000af0000000200030d40000a3931000002eb" + }, + { + "key": "0x5d0ac7357c4e03c9b7a65471ea4c38b9f87f47c7bcbfda36c2dbab57f840690", + "value": "0xb050001" + }, + { + "key": "0x669058f19243dd04258a9442b126ffa6d8683feeef1d2de639257e0e980fe82", + "value": "0xceb57b000000389fd9801000100001000000000000000000000000000" + }, + { + "key": "0x78b9366f5acc75a060bd6f12dde10425b4f9c3455ffdac47ec79a66f59727e", + "value": "0x1" + }, + { + "key": "0x3c03197adc6d7385a0d5dea5ad04fe78b0000c04c3aebae5d8a69b956b902df", + "value": "0x30001" + }, + { + "key": "0x5490895fc74554724e2b93261313598985f09e3ac7052371156f37c5bd27b2d", + "value": "0x4584d137c00012b4bc4281000a00000000283cede08c000c33a7e62809" + }, + { + "key": "0x3dd6db86c326e46ac98983dba866bf992385e0a134fd7bd34c2d1095156a5ac", + "value": "0x66ca8d91066c8b1f100013" + }, + { + "key": "0x558bb4f5318d8ffe1028b6b7ac061d371585bf3bc43f3306187c2691a46aca8", + "value": "0x21f4c" + }, + { + "key": "0x4362ff87301ad20360350fb970952fd2c74d412a9d1569466edea71048b981e", + "value": "0x10ccccb600019b2be31800e8972800e8972800012" + }, + { + "key": "0x6940b31007f59456ce702cbf369967bbb3cfb8776767713285e3e19b5f825eb", + "value": "0x20000000000004283000500000019b34e70c006ddd00000310001" + }, + { + "key": "0x324e12b92c2101fbc3b75e957b3cdbc820570c5a9291a48f7475e514d0ba920", + "value": "0x3c000ef0000000000000000000000140000000a" + }, + { + "key": "0x467addb09dcb6e0ba2d2d0d6aa2e7c36e8b0b53f93600b2d82cced0b44caf79", + "value": "0x1000a0000000015e6ed64780004cd9b28d803" + }, + { + "key": "0x38d4947d72fdf9281024323833d805fd82204f2150e941289cf9257ba0c9371", + "value": "0x100000000000000000000000000000000" + }, + { + "key": "0x3a51606ab47c8fa31668d74361cf4783dd450a77953a0d806be6d2d9cdda445", + "value": "0x100130000000059cecfd7e400030433da6801" + }, + { + "key": "0x32bbf527da3357b20fcc7d2f16342376f282a074c4c5b2e8ee3fc16134e2d88", + "value": "0x319b000110028800bc0020000b3000006210000000600000ba200004f46" + }, + { + "key": "0x53a49b93b21aeecdb95718fe8f01a9b2d07d5a134e0c1d99dcb2919a4fe867d", + "value": "0x4600114002c0000000000030d400005573000061a80" + }, + { + "key": "0x68c65d61a0972934b2738391f1d9d227d613f0fe0703881929f82175a52f227", + "value": "0x66f28b78066cafe78000278d000278d0000000000003d0900" + }, + { + "key": "0x36681d0eb8b85861beb8e98df9b11c80103ba5ab0f10cf6c9fe61398a4d1bcb", + "value": "0x1e780001" + }, + { + "key": "0x8962f3813726b0c1d9cd411fc605061372b9fb57f55c3b1ff2c0e54c4cd83e", + "value": "0x1dd603f5400000876d01a01000a0000000000df46ea8c000097041c4802" + }, + { + "key": "0x758791320bb0db2c17e572720c324f2c40c7df5ae85be25e5c446d0df620bc6", + "value": "0xb00000000000000000000000000000000" + }, + { + "key": "0x36d585e3780b66b06532e66d87674a5ebc764f931294464346a383c84cd5e86", + "value": "0xa42ca8003a000380031000c0002f000000010000148100002c6e000006d5" + }, + { + "key": "0x2279843e27c8274a9de85f5c4a3fc9affa7174772564893394a1f7f41e2f2ed", + "value": "0x6679263c00a0722e1" + }, + { + "key": "0xc89392e94cf9d4f475501a71def4bc4c7ad99eccd2e48b518cd8e89b2167db", + "value": "0x7000000000000000000000000008d02ef" + }, + { + "key": "0x31c74924a7eb5835896bd92f9493f2babc61dd1d8eca1b9b0979ead5abd04a5", + "value": "0x178004b00000000000000000027131b000118f8" + }, + { + "key": "0x467addb09dcb6e0ba2d2d0d6aa2e7c36e8b0b53f93600b2d82cced0b44caf7c", + "value": "0x506b30000d000d0002c001f4006500631b18000f5710000098bc000003e8" + }, + { + "key": "0x36d585e3780b66b06532e66d87674a5ebc764f931294464346a383c84cd5e83", + "value": "0x4ffb3632000023685a9c01000a0000000037c24742e00009b943c90808" + }, + { + "key": "0x7951c40b5768debd3c919d772b4ffefcdbaa82c42d619ae32e9282de86ae563", + "value": "0x66cc19ea066ca6b3800022" + }, + { + "key": "0x4b7ca233c33750f95087e2e995a3a1ffb67cd4226a9f53f3da6d5a083e44ad9", + "value": "0x7d00000000000000000000000000004570" + }, + { + "key": "0x700a5bcfb7a99c854ca14e084eb138678c0526d614bc2ba0698fecbd99c632f", + "value": "0x19b2c261800000012d2f1a9f8400010020000000000000d7400050017c00bb" + }, + { + "key": "0x289c72d0914f1c1d5e1afa4568fbcc49778385ce9f076bdb6f94667acd2378f", + "value": "0x20000000000001db400052010066cafe25010000000000004e270005" + }, + { + "key": "0x32149db0e88dfbde9640f68414f11a88f73de620be30ac0d0aefb4b0999153c", + "value": "0x1e780001" + }, + { + "key": "0x67dabb388f2e46c8ff3dafbd35af61c22e0152b30495fab0c392db1d51eac0c", + "value": "0x1c9c490780000b9c4fdd81000a0000000036312430c0000f1fb6a5480b" + }, + { + "key": "0x72caa276e96c3caa999ea434c946a85569de3681d30d1d6372821ea5be700ce", + "value": "0x13a00000c200004" + }, + { + "key": "0x12ed0a68687678217e8e212e851aaaf26f24b745382184bac5b8f83e2089d09", + "value": "0x66cafe7800000000000045ae" + }, + { + "key": "0x3a51606ab47c8fa31668d74361cf4783dd450a77953a0d806be6d2d9cdda446", + "value": "0x7001080002000000000052e5100012c9db00600026" + }, + { + "key": "0x6d9603a21973264b6e15c1fef329f5f6bbb72a389ad77ca8224a9b9caa2c7a5", + "value": "0x19b2c4a4c000000d4a0c49ba440001002000000000000083f0005002e000ab" + }, + { + "key": "0x2ea5480116a37600a0b091eb7dd17ca030b3d6cb5fcedd712d55349948c6321", + "value": "0x1b4b657000000d0dacc001000a000000001704b4ab040003d55f664804" + }, + { + "key": "0x25f9078e206fb340e5843c10d1ebf7c765bd74cba8878e19ff153fd6b4d3039", + "value": "0x1e780001" + }, + { + "key": "0xfa37f26dda1f61b002d13b34d9ee88b19649ea05698a703601a6e810d82fb1", + "value": "0x20058000000000000474000050000a3d5e00003066cb0a96066c5c886" + }, + { + "key": "0x2b65efd79b432d09ffa4e7e33be167cdf2e7ae04da21ba6d155690b97a6c51e", + "value": "0x66f28b78066cafe78000278d000278d0000000000003d0900" + }, + { + "key": "0x355a0745e363e78755d697ce8bf50bfff3742b502f6f285c6d10570bbd77d05", + "value": "0xf000000000000000000000000000000014" + }, + { + "key": "0x32bbf527da3357b20fcc7d2f16342376f282a074c4c5b2e8ee3fc16134e2d78", + "value": "0x77919cfb800011b47da081000a0000000036ceacf938000c7242a1e81b" + }, + { + "key": "0x18af50fb8de234143c21b2847e2a30f3f94bf59ce1b2fd92ecf00938bc217a", + "value": "0xe80006" + }, + { + "key": "0x287778d4f96a6f2c9cb24fbdb8dc7a7259aacb1cc6c15c72fc7a9c076eb1657", + "value": "0x100000000000000000000000000000000" + }, + { + "key": "0x77ffd06aaa5fd9764988d3758fec52d24113739687a4eae44e4b01dfd265731", + "value": "0x66f28b78066cafe78000278d000278d0000000000003d0900" + }, + { + "key": "0x2c3c6a230c41d709b4cc4a02ca35f5638899aa648fd4398472f4a264f645ff4", + "value": "0x1" + }, + { + "key": "0x3346a992e71bf4637479542caa80c84ff6f93c4ec9145ccaba8aea7c60f853d", + "value": "0x76961fb000002bf55b6001000a0000000018763b1a8000089769510002" + }, + { + "key": "0x542fc72ac9f05e532c383236d981c5013d761b8aaccbe81210d801e1e2fc95c", + "value": "0x200000000000009ca00054010066cafe78020000000000003a5b0005" + }, + { + "key": "0x411627e1915bb03c496c34e603229c56a5afc7754f95301abb43207b8c52760", + "value": "0x1b99991680019b2c2a8c014b0aa8014b0aa800051" + }, + { + "key": "0x5a4e469a287e8e25ea79b6f79b743a8e565d6883fa4fb6479abff658c7cc12d", + "value": "0x20000000000001a6500054010066caffc50200000000000039080005" + }, + { + "key": "0x209d136a0096a453b224863183318abcebff2bb73f99ab89cdc0284d8882128", + "value": "0x8aa511dc00000f9cf7a201000a0000000029a9bee6000004b118f50001" + }, + { + "key": "0x5c638dc349821a98143b09ea8e13fa61160aa2675e5bf1fba34b00d742fd7d3", + "value": "0x1b99991680019b2c64ac01439e7c01439e7c00051" + }, + { + "key": "0x24b3f7d078f69daafe0280c6a22b8fb9afe1506cc1aad6b0680c2b453b261de", + "value": "0x2183f82b000000046c33c01000a00000000086eb95020000013db502002" + }, + { + "key": "0x3ac933d3d5d95a5d79a34f37614f1d8b4ed20953276fffcd5c271f92da478b6", + "value": "0x1" + }, + { + "key": "0x24da69447a55d8387985e68d4e0955a6ad0cad2f042be2fedf46d89eabb16ba", + "value": "0x1d613c7ff80000dcd242181000a00000000078a14478c000334af005015" + }, + { + "key": "0x2530ff7c2855b1f4f65780cad90735547c3d523e9ead0f505905fa9bb3c687e", + "value": "0x66cb1b88010010002" + }, + { + "key": "0x5596821813ab08dab07deb01fc42ee963730be2fda8a84ee0e51da4b841d911", + "value": "0x4e2b0005" + }, + { + "key": "0x36d585e3780b66b06532e66d87674a5ebc764f931294464346a383c84cd5e88", + "value": "0x80075001c00068001640050000176160000002400136770000d28c4" + }, + { + "key": "0x587d6e049e51c008d4abd7c286293eecf9c5dd87dca1154380adb28175cd173", + "value": "0x66cb49a2010010004" + }, + { + "key": "0x5f987b5bd61eedbdaf86f097fe96477854fabfb304007bd3b1f0eeebaddefb2", + "value": "0x66cafe78010010002" + }, + { + "key": "0x1606a2e301d8a5ce47d6d9f4eb76755a9fc505ecffe331ab54329d0e08a66d7", + "value": "0x66f28b78066cafe78000278d000278d0000000000003d0900" + }, + { + "key": "0x18ea94da0a518999d3008f962858802d61d5fbdce52e2e58e43456b54c3a22", + "value": "0x1c232f490440175a52936981000a00000000000000000000000000000000" + }, + { + "key": "0xf5a95e32a243040ea0bfff90b664923bff0d02fa4aea48d055743558d514e", + "value": "0x1001300000000c2ff9573c00003aa5689e001" + }, + { + "key": "0x6efee867044d1a964802bae0b5a6bc3555d10af72efbb01b22567bf89e9b9f1", + "value": "0x60001c0017000000000098b1bf005b442b0251f1ed" + }, + { + "key": "0x1986e27ae2f26a0a5581cb6849853a4bb68a622cf2d5298909fbd5ec0f1572", + "value": "0x19b2c21180000004a9a9fbe74400010020000000000000945000500178004e" + }, + { + "key": "0x6efee867044d1a964802bae0b5a6bc3555d10af72efbb01b22567bf89e9b9f0", + "value": "0x385f780e00001198342c01000a000000002e2f3b5e44000cc9119fd801" + }, + { + "key": "0x8e1930f9083d55418639f863eba850bf7857f6e288b3690123df9d228473eb", + "value": "0x13ce0001" + }, + { + "key": "0x9fa23edb72af6b6b4a63918d4e2d9c2f4e48c06fb88d5b535c686d4700ecdc", + "value": "0x1" + }, + { + "key": "0x398513b845abd5e635c104488f1657a5e4974c187484f0414d0d9d0f21358f1", + "value": "0x1b99991680019b2a7fb0013a036c013a036c00052" + }, + { + "key": "0x109ac17659ea4f4eadd984051956a44790c2260e0adf5154750112e5380fddc", + "value": "0x16287470000003765231801000a0000000023db196a00000580db9e2803" + }, + { + "key": "0x41ebed38fa4c8e4a32177003c5916c307a74e758de1f67d22e40b190401e5c1", + "value": "0xed00000000000000000000000000000002" + }, + { + "key": "0x70dfbbdb5acd7c5514100f9d0250e1eaf9a546e77d9b879f30ca3ec8bb37b1e", + "value": "0x100000000000000000000000000000000" + }, + { + "key": "0x3f81031df198fc214ceb09f9bca12c8f9d6efb4365348f85da7b6d226d2fb0f", + "value": "0x200000000000045bb00054010066caff39010000000000004e2b0005" + }, + { + "key": "0x5e140e96b4c1de5420a6a1619d9446e4e546bc1c6870ade01a7eed1eaa3b544", + "value": "0x1d5fff5890019aa5ed8c007e960c00f59acc00033" + }, + { + "key": "0x23e1a382361f986046aee7c832d54d0f0c2fa9241604119f60116d89324cea7", + "value": "0x100000000000000000000000000000000" + }, + { + "key": "0x109ac17659ea4f4eadd984051956a44790c2260e0adf5154750112e5380fddf", + "value": "0xa000000000000000000000000011dc44d" + }, + { + "key": "0x467addb09dcb6e0ba2d2d0d6aa2e7c36e8b0b53f93600b2d82cced0b44caf7a", + "value": "0x60b5c00046001a00045003b400810000000e007c84f600000013000b3459" + }, + { + "key": "0x478222d5abddf71a9eadc2ec4141f111efde845b7cdf153d8e3a8337dbe3ee9", + "value": "0x4000000000000000000000000000000000" + }, + { + "key": "0xa5988aa9091c37fdbfc6f878eb5883b3ba2974acd69662885ae82d3e62efcc", + "value": "0x10030001" + }, + { + "key": "0x2b6d297ccf9ec87414b7e2da40c25cfa9960382bf2f63e1fe2b3adf4dc4d37d", + "value": "0x4720006" + }, + { + "key": "0x28c567167dbea741a244cfa20a72e94bfc44048a72e56446d78ad9bc3785826", + "value": "0x20000000000000000000000000022ab44" + }, + { + "key": "0x67c6f02acdf00b4eeaf8c4876f471c8ad5939aff219ea7abd17190e1660a459", + "value": "0xf0003bc00a600000000000000050000000a00000001" + }, + { + "key": "0x28c567167dbea741a244cfa20a72e94bfc44048a72e56446d78ad9bc3785825", + "value": "0x2000000000000452900054010066cafe780200000000000018b30005" + }, + { + "key": "0x5490895fc74554724e2b93261313598985f09e3ac7052371156f37c5bd27b36", + "value": "0x17000000000000000000000000000310f3" + }, + { + "key": "0x18e3c5e0917e5fe3462ba59a3c8463bfcfcc40339423e34245461deff2945d8", + "value": "0x8fae3a000000006ddd0010012000010000044c8a480000011e1a30001" + }, + { + "key": "0x18512debbec02d860b731e06b1cd236a5f03536054705f9cb8cef2a421b15e8", + "value": "0x190cf058ac0003d7a864181000a0000000017ac714db40002f4bf14d00d" + }, + { + "key": "0x29985959af4b6229c41a78781f6eedc77e31e8045ab80d3186e0661bb07ba90", + "value": "0x91bd920000000f97b3001000200001000000000000000000000000000" + }, + { + "key": "0x7bba35e0753e7dabfd551772a8bc2de6f6b1526445da4bc8c45b6ef6e4849bc", + "value": "0x66b87e02066aceb40" + }, + { + "key": "0x13025d6292f37242c746c77fb32e9ec6d3af655a93ceb53439563e01a2d32cf", + "value": "0xf400000000000000000000000000000004" + }, + { + "key": "0x60a4eabf7727feba7da816dbff220100a5b00a2ab37d56af8f08428faaeeb9", + "value": "0x7d00000000000000000000000000000bb8" + }, + { + "key": "0x13025d6292f37242c746c77fb32e9ec6d3af655a93ceb53439563e01a2d32cd", + "value": "0x100030000000000fdad2a68000041dcfa2802" + }, + { + "key": "0x5dd4499737629107a81202d83ad6a1b2688037bb186aca75793de18bb37c629", + "value": "0x100000000000000000000000001320f90" + }, + { + "key": "0x31c74924a7eb5835896bd92f9493f2babc61dd1d8eca1b9b0979ead5abd04a3", + "value": "0x100110000000010de1db73400024b49005002" + }, + { + "key": "0x712338e464e7b38bbe19943cd358592c1944a17a7735ea591ff46b2ae6616f2", + "value": "0xb050001" + }, + { + "key": "0x1dea0259f37c33838c758522548d60c03aa94c90d8ed7f355b570bb383a4c45", + "value": "0x1" + }, + { + "key": "0xf5a95e32a243040ea0bfff90b664923bff0d02fa4aea48d055743558d514f", + "value": "0xaa00000000000000000000000000f036ec" + }, + { + "key": "0x6d31370ccbde5b5bb5552c58e0e40e30c09750fb64a3514bd5679ade8c163f7", + "value": "0xaa000000000000000000000000000063ad" + }, + { + "key": "0x3127190ba811d9403619b0585a205faa9e6110dcf756d91b9e86a768765127", + "value": "0x36b9a89c0000100bf4b81000a00000000317ff41000000be2b7843019" + }, + { + "key": "0xc89392e94cf9d4f475501a71def4bc4c7ad99eccd2e48b518cd8e89b2167da", + "value": "0x2000000000000452900054010066cafe7802000000000000434d0005" + }, + { + "key": "0x7bba35e0753e7dabfd551772a8bc2de6f6b1526445da4bc8c45b6ef6e4849bb", + "value": "0x76d7000000076d60000001db480000007317" + }, + { + "key": "0x355a0745e363e78755d697ce8bf50bfff3742b502f6f285c6d10570bbd77d04", + "value": "0x2800ef0029800ed003cc009600000001000000030000001200000007" + }, + { + "key": "0x63d90699305808098127eaccca26556414dd6a25451a868e4463ffb95f62795", + "value": "0xb050001" + }, + { + "key": "0x5a4e469a287e8e25ea79b6f79b743a8e565d6883fa4fb6479abff658c7cc12e", + "value": "0x9400000000000000000000000000000004" + }, + { + "key": "0x67dabb388f2e46c8ff3dafbd35af61c22e0152b30495fab0c392db1d51eac17", + "value": "0x1700000000000000000000000000152710" + }, + { + "key": "0x58eb485b99cfd21109d5257ec523d86789065aec1c2a502d51f723e7e45c7de", + "value": "0xa3d5f2" + }, + { + "key": "0x32faca2a1c54a90134100d4b09a5ae6489252248263c29b1ff4e19627fbe90f", + "value": "0x2000a00000000000003c700050000a3d5e00003066cb0211066c9df85" + }, + { + "key": "0x450c927fece51f746d82c03791803bbeee6f08bfcddfa9b0e8848c915344556", + "value": "0x8100000000000000000000000000003b0b" + }, + { + "key": "0x383222921c77fa8e1834b13aa1c8fc989d502d4cfcc70574f7240854538541f", + "value": "0x2001500000000000046cc00050000a3d5e00003066cb00fc066c2e9de" + }, + { + "key": "0x7113696d7bd078a873db5e6629d0676c2d35a6e7457fecf579913c8adc30315", + "value": "0x1e780001" + }, + { + "key": "0x25c18455014472dbd0d98d4e9ad4ba699ddde0cdb3828330036fa999614f0f9", + "value": "0x66cb0122010010002" + }, + { + "key": "0x67dabb388f2e46c8ff3dafbd35af61c22e0152b30495fab0c392db1d51eac0e", + "value": "0x2038002f0007c002200090006000072a3a000c6a7700062253000027a4" + }, + { + "key": "0xe6cc676653df56b9f2ae5a5ac8e2a75ed94a9adcadb2f21875ae1d2804b757", + "value": "0x160000000" + }, + { + "key": "0x78762d869fc650977b86df046e828378cf1a8c371dd9191423a2010bb586777", + "value": "0x5bd980024000240003002f800530005e467000068360038cf0800038032" + }, + { + "key": "0x41ebed38fa4c8e4a32177003c5916c307a74e758de1f67d22e40b190401e5c0", + "value": "0x418800054010066cb680d010000000000004e290005" + }, + { + "key": "0x2e8d63ee1449dad1a3806a89bb750adfa6945d0a7c149bc81b37f1fb5aebd7", + "value": "0x1000a00000000000000000000000000000000" + }, + { + "key": "0x744ebe20bdffcfeccacfae2ef1d0bb8d5bc51c0287f99fd323b705cadea4d60", + "value": "0x310000000680004" + }, + { + "key": "0x12ec2b17c9d9da39bedbe69241e2cd976da49b134b9ce1930c17ad43d91f9c0", + "value": "0x40009000dc002a00104000b000a3a3e00017a6400063b9d0003009f" + } + ] + }, + { + "address": "0x3522cb79d93f90c45a56d7239c693d9ae77a2b7199996b6824e628ad0a3aa47", + "storage_entries": [] + }, + { + "address": "0x5763f02381e89c6894ffea078d1cf9e58da0ead33d5b52aa608acc04063053", + "storage_entries": [ + { + "key": "0x21ac58f1f77317f0c83b1207cfb427a93d8fa4adc7ca853f6b52114dc7b6bfc", + "value": "0xa068dce2c79556abb" + }, + { + "key": "0xa156ef93d34cf9476b99e38b50009fbd2e3ac6caa4419b50f1230f6234e70b", + "value": "0x1fad01aa84262d984" + } + ] + }, + { + "address": "0x3c6d7570b38ae69cae141677508aa988834263d880618c420884791e6e60443", + "storage_entries": [ + { + "key": "0x1d22f147b65dc66e34c48098e55d1e7246715700467b6a75d78cb214484f228", + "value": "0xa56d35811e4e0d7b30" + }, + { + "key": "0x1d22f147b65dc66e34c48098e55d1e7246715700467b6a75d78cb214484f227", + "value": "0xa56d35811e4e0d7b30" + }, + { + "key": "0x202e4a016683c36bf791aa7b38a35df6ace4ef8e1d45826ff940a7328ca5e5", + "value": "0xa56d35811e4e0d7b30" + }, + { + "key": "0x202e4a016683c36bf791aa7b38a35df6ace4ef8e1d45826ff940a7328ca5e4", + "value": "0xa56d35811e4e0d7b30" + }, + { + "key": "0x37d9f8cddc6f064ba72d0e3c1e53eb67867dd8506fa4f5d61c86189caca8ee5", + "value": "0x3d33f8dc7772664b527" + }, + { + "key": "0x36b2e05b5b7e59f8304ca6be11e95a94469d52d0be887de68db61dfb221019b", + "value": "0xa56d35811e4e0d7b30" + } + ] + }, + { + "address": "0x67a34ff63ec38d0ccb2817c6d3f01e8b0c4792c77845feb43571092dcf5ebb5", + "storage_entries": [ + { + "key": "0x75c33e533ab03aaa9288fa20221fcef62b22a92b23f3a551b4851e724355876", + "value": "0x0" + }, + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x236ba454d892dbd130074" + } + ] + }, + { + "address": "0x4718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d", + "storage_entries": [ + { + "key": "0x6fb914f316fbd4e1ccf26070033cb54067180520e114325ec93948415fd3", + "value": "0x37bbdaebe5fbd77b42e200" + }, + { + "key": "0x14b36f2f827c4728ecac41e90cf996e64c4b20c345087b6be56bbe680051a1f", + "value": "0xdd9fd6078501e7bb50b2" + }, + { + "key": "0x4c6892b386996ee4efdd7cda583b6f8da4d9e4d552eab4bd7876efa302f7082", + "value": "0x0" + }, + { + "key": "0x110d72e967a25e84433e44d5dc11f3ac9ebc2b1cdc33190a97d01ce2e3798cc", + "value": "0x107730d31065fa7c03" + }, + { + "key": "0x31841f3378e678bfca9f3a963e04a7f4dbc1f931424be6de81a72ca10d2d589", + "value": "0xf84e7278271408701c0" + }, + { + "key": "0x17c17f5188828726dcf109c0a7617a21e8dcd15e669b8f2b3800142181e6ce5", + "value": "0xfbd1ce8354eda94a29" + }, + { + "key": "0x5f6b6fc6348470674807164ece27f9f698117509138b41bbd524edb641810be", + "value": "0x3bbe0251b8e7fc9d" + }, + { + "key": "0x3d8c8038259764ba977d6dd5c76e0b151d096637b2dc805ed798380acfe19c5", + "value": "0x8d62ae62e733b490275" + }, + { + "key": "0x168e06589ed1429d749afaa1281b5f9e74a4cc19fcf352103f8fa7bd582a3d4", + "value": "0x78beb285fb936031d21" + }, + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x4e2385eeff0a132fba" + }, + { + "key": "0x2b1d73cf458548b1c7aec5110aea8f7f727ac106fd7cdfb208dfce63b4d2a35", + "value": "0x37cbe379e152ff64ae52b2" + }, + { + "key": "0x29fc908a4ccedab95f76ae308f0458bc6ab44da1694cb2554539388a0ace838", + "value": "0x219199cb93003050dfc" + }, + { + "key": "0x7c4b9d7588247405681dcbf926060015500cf5ec925b1c56728a2b712ede8d6", + "value": "0x95505ee6ecb65ecf219" + }, + { + "key": "0x75c33e533ab03aaa9288fa20221fcef62b22a92b23f3a551b4851e724355876", + "value": "0x0" + }, + { + "key": "0x99ff64f8cd4aa3301dec7b19f4052cd68a1fb5690f6e017807e97a46d5e08e", + "value": "0x6a3de3ab492cd66a808fe" + }, + { + "key": "0x3aeff2c4fa75aace8f3974aa291ed288c2946cb2c89d3d45f43ec2e3d341266", + "value": "0x5cc6426c3671bbf0cdc93" + }, + { + "key": "0x4a08fef643acd846b929d92f3d70aef67565de947e17a14b5464bd07f3b8146", + "value": "0x372e85f06f12f072" + }, + { + "key": "0x7d40ebec19d32e89de914ddb9aa326584327c9042e2078715b7284bb00c5620", + "value": "0xc3fc185a0789359b283" + }, + { + "key": "0x5bcb9d5ba4d5512088b3877732de73f8f5cfb9d5d3393fd7b577788cc161658", + "value": "0x32cfcad47a2ce71d" + }, + { + "key": "0x2188bc0258a2a3ea1f3466dbaa59f580d93db503170423f56f00df6a4dbeb78", + "value": "0x5d2c8f3ec9486ebce" + }, + { + "key": "0x648bb9fc3b76cfedfd3febd4f0342560ab4b1f0ad5712a35aaa8dae022b62f", + "value": "0x56856b308fdb80e51e1" + }, + { + "key": "0x60f2f30403ee3742645670b8bd536229583464fc2653235bcbf6264a613cc4b", + "value": "0x4e2b3c15df0511c1d" + }, + { + "key": "0x369ae40a701707e9ae171444b0a92f8356e74b20807605ec987009b3b52a21b", + "value": "0x3da1f4453ae9f59e4" + }, + { + "key": "0x54a88fe105dc54fb4ce313b51e122e05b168d57447da6fccaef8412ea3b1cf2", + "value": "0x7303c26a0b139800" + }, + { + "key": "0x75b6e38a278b3400efa10429c723213969db9ad441d46cbec8c85f6fad729f", + "value": "0x1551932d1dee4972cc56" + }, + { + "key": "0x4f45ffcac519079061d4f01814f530203fd683a632ea2316ed277fa3a684fa3", + "value": "0x102ae5f090073e005" + }, + { + "key": "0x948a4d75e3c704c08e38a1e15e508ac7af25023acd1be059bca9234455dbbf", + "value": "0x870f1179813ec9da92c" + }, + { + "key": "0x3d7ccfb9e9c5944c7a3226921716da0d42239892dbde7b12c1e5597d31c4124", + "value": "0x42b47e7cb9ffcfc270ef" + }, + { + "key": "0x657c061327a30a83117b17d632a1d7b010a8d12b4844d0eff07f355151f2dae", + "value": "0x67892d884f955d88980" + }, + { + "key": "0x4686410391502625d91cc748b15c74d5bdf612948c934964a0dea25c305d0c1", + "value": "0xcc4923ff54b28677" + }, + { + "key": "0x3e94d6228474b08237aa2b0a5884d6a30d46838fb5f73995385a252dcb1ea5e", + "value": "0xb2244b5c2d302be" + }, + { + "key": "0x5496768776e3db30053404f18067d81a6e06f5a2b0de326e21298fd9d569a9a", + "value": "0x1e4ab73ba1def61a220" + }, + { + "key": "0x2be41ea00b3e998afcaecaeff43baa5459a4184c3bdcc9225d5fe8d1cac1acd", + "value": "0xe445780a190ea56" + }, + { + "key": "0x6e0201902c241f39dc7b65304127df3f56af76cd87279f3bcfeae6255bf0c30", + "value": "0x1d9a5a0293469d92c9e5" + }, + { + "key": "0x74ee32f30f6964431204823e70213278c5ca5396df9976fd7a27dd0351cf81c", + "value": "0x673a4b4ba2e7a62f8" + }, + { + "key": "0x1136e784a7b7e1cafd28236621374d83c739194f0d9be4644cf00e73f54bc8e", + "value": "0x1a520414649cec" + }, + { + "key": "0x516db81946c7dff80bd06c15b3e2b6b10d52e7dfc974b20bb69ae96b82db906", + "value": "0x27beb83d687ff3e9" + }, + { + "key": "0x74f67e3d389a7bab81ccf6d7954f3e8626b3e4f0cbe5221231d14d40f7f6b42", + "value": "0xd15ef687e7850a772" + }, + { + "key": "0x6ccb87f4262ebc65951191c9b2dbf434f011a08adabc31b447565cdb9513fa6", + "value": "0xf2fb1e2bd9a8e5c" + }, + { + "key": "0x695f9adffb7a633d221b46473a8a58939cfa93746b8d7aa2143e3f3d199857e", + "value": "0x3026f14e87d10c0b2497" + }, + { + "key": "0x1f9e8c510beddab3043a01d39114f0a7099e41917475fb3f7036b13298e4372", + "value": "0x12cd1422f1f84112b0" + }, + { + "key": "0x5d03c72383f0cde9567310bc47892edc6ebbf757250dd84686cdd292f5b6f2f", + "value": "0x3635cecb3c0232670" + }, + { + "key": "0x23a45c61dd671cbbcc92adee989996362d539ae300abee69ef0f37bf2a344d8", + "value": "0x414e00a3ff797d27be" + }, + { + "key": "0x43e1ef374bc5f9e49c6c9764a9aac6e36bc8e3df0ca3bffb3cde5a0990ca369", + "value": "0x7fb9ff5906d2750ba6293" + }, + { + "key": "0x7aad5dfb2918b0001f7c5d8f2858b2f47c86e3fa1139fbeb6931fb9a3800b6", + "value": "0x29dea91dad6da34a4cd0a" + }, + { + "key": "0x7354567862f4d3e6b5564d2e2a12ea3643daaa9dfe1d9ee1290311438242e10", + "value": "0x11ac2e4c354140feed" + }, + { + "key": "0x7d900d2bd2efd90dcae19cb6d26e0a129ce62923555bdfca2a2673c70319608", + "value": "0x8585081138015a6897" + }, + { + "key": "0x36daeb121801f6ef0e6da8709cf053ce50ed601cc5673bd3151d84b2dca5ae7", + "value": "0x0" + }, + { + "key": "0x16a7ec439faedc60e083203c72e0bc90483c23b317be16f192267df83434277", + "value": "0x73452c346a262af87" + }, + { + "key": "0x129226399a3e8e88b4c9f04e61229c79b33bcd6e6204fce73b383cf5c93fc33", + "value": "0x33e251cb23608eeb19" + }, + { + "key": "0x4aaa724a3d1989870308041396449595317702e4c29d0e9dff0d5de47c79683", + "value": "0x23af4f9a69fe8cba6b" + }, + { + "key": "0x19f9a132914af6550aa94493058b0a330f5ab690baf1db4a282240123fe0ae9", + "value": "0xcc16e4222139b0de1" + }, + { + "key": "0x3811beed927ad7b96ec1c7c51828f51d7bd7a42c3d6aa922d854def8561ac3b", + "value": "0x1c324effe45a1d95f1" + }, + { + "key": "0x6d5601e297816cf6968f20bca40baccba50e4ff7fb140bd11da1868eeef8dfb", + "value": "0x1e74755981e011d192" + }, + { + "key": "0x493875a3926558b908441a8fd6642a9f5b85f7fc5e39289c3a83b72b2eca837", + "value": "0xa38ea51de2776d1a69" + }, + { + "key": "0x1309f93503e67115c9f11ab4d051b7d41919dc0d6635e1bdc3ebc88b9451806", + "value": "0x1d9c851b90f8d9b64" + }, + { + "key": "0x6da2d3bc7a56461ba6fe057fea3a7371ee83c837dd887093b66c251df20f0d9", + "value": "0x39b5f3b205bc69c303" + }, + { + "key": "0x6085544b61ac5e4e14df3284f9c6cca57f6720d419c01402c059e37ea31e45", + "value": "0x1045cd7563a9d4b8de51" + }, + { + "key": "0x21fc100eae75eb3022697744ba0d172ecd86a4ab12bf6db60777cdf452ad849", + "value": "0x16ad5b2fa549680000" + }, + { + "key": "0x76b53dca196d89bfb427adde12f7e4551b42a542da362051c502e141a6b9ae3", + "value": "0x0" + } + ] + }, + { + "address": "0x5e660516ba60c3bab5498ca7f5ddfe22b59bc94bff695015f5cb010eb5df2d5", + "storage_entries": [] + }, + { + "address": "0x45725428918c740312c1c075a3ea937046673b10b9a106761929a6624fcc2b0", + "storage_entries": [] + }, + { + "address": "0x53c9815155d16431b6cf8f4dd38e2aa157e211891f9e5854fd8580494e8a820", + "storage_entries": [ + { + "key": "0x32aec9ee121fa1ab1cfd839c2ac7df4287da31a72745aa32344e5e4de51bd38", + "value": "0x66cafe78" + }, + { + "key": "0x32aec9ee121fa1ab1cfd839c2ac7df4287da31a72745aa32344e5e4de51bd35", + "value": "0x5cc2ad664ec" + }, + { + "key": "0xefb0884a0332bee3218e5114a1f5a8b94b7f3a0aa4b620ecd81bc37c64598f", + "value": "0x35a604" + }, + { + "key": "0x329c7ad716328e6d50f9ca0db199b7680edd1f9888de9e870e256b4d829dd57", + "value": "0x2e34" + }, + { + "key": "0x32aec9ee121fa1ab1cfd839c2ac7df4287da31a72745aa32344e5e4de51bd36", + "value": "0xa3d5e" + }, + { + "key": "0x32aec9ee121fa1ab1cfd839c2ac7df4287da31a72745aa32344e5e4de51bd37", + "value": "0x66cafe8f" + } + ] + }, + { + "address": "0x69a7818562b608ce8c5d0039e7f6d1c6ee55f36978f633b151858d85c022d2f", + "storage_entries": [] + }, + { + "address": "0x7b696af58c967c1b14c9dde0ace001720635a660a8e90c565ea459345318b30", + "storage_entries": [ + { + "key": "0x2a9f6940e96680af2fe721eb59341cde71d9b7ae61dc834d205d6c59360268e", + "value": "0xa9d34" + }, + { + "key": "0x25a273c319cd3f930ed9ff159a3a0146d6bc8ac225e36a91de5c19dfeb82005", + "value": "0xe90d09b07aaa8e82ae73c6ed38f8cfc23a8e95701d36167fa97b784140c8c" + }, + { + "key": "0x231d1b392107b6f87597982816e784ee9bb0bf4cc94c1da87552fad6918882b", + "value": "0x1" + } + ] + }, + { + "address": "0x201bed466ee86ed71f91104fe477d4ad25b817f734c55ba3b2ecf08eca75a51", + "storage_entries": [ + { + "key": "0x335e94da1c9e89c7317f3eee90db12cd50c83b6d59d0be903edd62ef3b0eef4", + "value": "0x80001400800005000000000d00109000" + } + ] + }, + { + "address": "0x6e05b85d84a254faa07938b867b76aca1f1d95ebeb6bb44894c1d1912ec3180", + "storage_entries": [ + { + "key": "0xc5e53830927ac5ed78b9fc96dbfbaad93c13024249b91f8633ef407227656f", + "value": "0x762efe5ed948e2800" + } + ] + }, + { + "address": "0x241b9c4ce12c06f49fee2ec7c16337386fa5185168f538a7631aacecdf3df74", + "storage_entries": [ + { + "key": "0x52549568349cb64d5f4909bba20db479e8d9331f00b8640eac05706801dacbb", + "value": "0x7" + }, + { + "key": "0x6843daaed3889250ac055ef0265af2644277f5b8d248bac96e0435c8bc6f32", + "value": "0x8d5b" + }, + { + "key": "0x514b78f7a93d483cfb693e35d73e7b6470e2cd87deea4592f66f7e6fb30d598", + "value": "0x72884c68f836aa34fbe21e83bb22d76e4a050f5196073c6b3df50b902f9ad6c" + } + ] + }, + { + "address": "0x3271c85b8da8969a14c295278c5587015377e20867d57abe2c700ee62f1daa5", + "storage_entries": [] + }, + { + "address": "0x2545b2e5d519fc230e9cd781046d3a64e092114f07e44771e0d719d148725ef", + "storage_entries": [ + { + "key": "0x68548110ccb8365e37146aa1d2036d945025dd27c72f6dbe101b12eee54a5cc", + "value": "0x65fc57af1ba805d179e100000000000203d4562e2b57310be34e" + }, + { + "key": "0x68548110ccb8365e37146aa1d2036d945025dd27c72f6dbe101b12eee54a5ce", + "value": "0x98ec0c00de6f56f6a6275f066cafe78" + }, + { + "key": "0x1ad0faa9eeb78029029ec955737b2a89d359675997672c98d2dbe7f42d6537", + "value": "0x1e950459d639772d59daa" + }, + { + "key": "0x68548110ccb8365e37146aa1d2036d945025dd27c72f6dbe101b12eee54a5cd", + "value": "0x6145f0000000000000000000001c78239167e" + } + ] + }, + { + "address": "0x54e2640fe5633aa21d431405f8539a72fcfd85d968de02c3e65478c93f8045f", + "storage_entries": [] + }, + { + "address": "0x655e00e38323a46f37656bbb8d571ea53f7a9352fddcfe83cde2ecae66a1e4", + "storage_entries": [] + }, + { + "address": "0x72cc9028da5b1b916d5344168d5b37ecce8c81c8b4881384443fb488b4c22f0", + "storage_entries": [] + }, + { + "address": "0x4ee30db0ac6ae7c812544c135f43c507739c84538c54b3e1e9dfd1b3b5956de", + "storage_entries": [] + }, + { + "address": "0x7ac27ad2c6bdeb2ccc3d4afb26c87f58439a37ec49b7b0aec8f7ac8e572902f", + "storage_entries": [ + { + "key": "0x584f38f5154e9b8a6c40203ea644ba5275c501456ff7265ae17aa662d495c7b", + "value": "0x7b912902af4609c7" + } + ] + }, + { + "address": "0x26c5994c2462770bbf940552c5824fb0e0920e2a8a5ce1180042da1b3e489db", + "storage_entries": [ + { + "key": "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "value": "0x31b1eff22283b10e601be" + }, + { + "key": "0x9bbef8a57b386d59cf37a51ebc41ea292e19460fa1da471105f77fc8d788f5", + "value": "0x2e070b92c202504c1a1" + } + ] + }, + { + "address": "0x46f4c92ae83fc3b974dc542c199ac18665980ca56b302938131417b259736e1", + "storage_entries": [] + }, + { + "address": "0xc318445d5a5096e2ad086452d5c97f65a9d28cafe343345e0fa70da0841295", + "storage_entries": [ + { + "key": "0x3e9df762c67f04c3d19de6f877d7906e3a52e992c3f97013dc2450ab7851c9", + "value": "0x17122be478" + }, + { + "key": "0x1f5dba4f0e386fe3e03022985e50076614214c29faad4f1a66fd553c39c47ed", + "value": "0x1c04854bc8" + } + ] + }, + { + "address": "0x469b656239972a2501f2f1cd71bf4e844d64b7cae6773aa84c702327c476e5b", + "storage_entries": [ + { + "key": "0xec04b7b7cb453eeff7ef5475a71ef489f6cfc86b3566115cad1301aee3d3a6", + "value": "0xa56d35811e4e0d7b30" + } + ] + }, + { + "address": "0x3620d1fd141578ab27fa1d0d33f51658e50d08af34792422c95035929a8e80b", + "storage_entries": [] + }, + { + "address": "0x7161fb852fd41ba5edae69c5a34065fee060dccd90a7c7a6ebf9a3b5e24168d", + "storage_entries": [] + }, + { + "address": "0x72c0be3a42c614837c7bc8e0869bbd7238e5c03022cd678e52f46c71e99c1d4", + "storage_entries": [] + }, + { + "address": "0x12ef243d0ba3d846288079dfaabdd69a61cb80911f9f2ab0d5cc6e1353d3274", + "storage_entries": [] + }, + { + "address": "0x1", + "storage_entries": [ + { + "key": "0xa3d54", + "value": "0x3383936333b00e773403bdc5cc145852b326960a10b3f4e82f04b44d3679630" + } + ] + } + ], + "deprecated_declared_classes": [], + "declared_classes": [], + "deployed_contracts": [ + { + "address": "0xdee3cb1be6b4fd9a855f7c02614ed9852caa1ae1865a0d810fa04d6b5c92b3", + "class_hash": "0x816dd0297efc55dc1e7559020a3a825e81ef734b558f03c83325d4da7e6253" + } + ], + "replaced_classes": [ + { + "contract_address": "0x2a4117530d52d7a70406eb608b86f3874e50a6972126cbbf92e4257315cafd4", + "class_hash": "0x36078334509b514626504edc9fb252328d1a240e4e948bef8d0c08dff45927f" + }, + { + "contract_address": "0x6a86a506ecf3e42b516754f94aad13f726cc6470008ef79a7dde024ce5df52f", + "class_hash": "0x36078334509b514626504edc9fb252328d1a240e4e948bef8d0c08dff45927f" + } + ], + "nonces": [ + { + "contract_address": "0x461682cc22e417a1fdaeeebf75171d20ea9ee3192ef2994241ec738a9011ec7", + "nonce": "0x4d" + }, + { + "contract_address": "0x4b0a18b01c7816f86ae1a33df53e84572c0c79107b967ce2e7bf4a8b641d553", + "nonce": "0x3f" + }, + { + "contract_address": "0x42bd58d8bf6b3872365767868b3f1f9fbc183c23f10566006cd84ce234265b8", + "nonce": "0x429" + }, + { + "contract_address": "0x15a288e90db4951762d0c156f48b7efa2ffe5a75bd12f55d8e6a38fbdddfc0f", + "nonce": "0x5f56" + }, + { + "contract_address": "0x6f1bd7222f6aad3504c09658f224e66889b33d3907638b76099391cd1448ebf", + "nonce": "0xb1c" + }, + { + "contract_address": "0x1c3384a988b041806b31b4d261e845be147165e223f81d89199e4c6bc6d4cb1", + "nonce": "0x426" + }, + { + "contract_address": "0x4f5447253a34ad18d8318f724272523285aedaff0f906f68b3e7ba45502f2c5", + "nonce": "0x433" + }, + { + "contract_address": "0x780f5ab2151d7c46a08a87c445a1012fa376a9c0e1df22e949d3d32740710f", + "nonce": "0xf1b" + }, + { + "contract_address": "0x1c4776dc67cd32ebbddb9699f487b4410194ada82fcffbbdf214dc23e9553ca", + "nonce": "0xc" + }, + { + "contract_address": "0x76c52ed46c85f6662b1bee59b4c4965c4223c3f32aa5b2692b1e06ff566e1b0", + "nonce": "0x5a0" + }, + { + "contract_address": "0x7dffbf18722b28975702273557a90e84b649808209594d2bf1da3c633b12438", + "nonce": "0x47c4" + }, + { + "contract_address": "0x33d5b4c122f0d65572cf4aa3af31e8258a0a6bedfbf24e3dcc3b610b8a5199d", + "nonce": "0x7517" + }, + { + "contract_address": "0x234d0c891cfc00ba1a53277c34c91f5f0a273fb29867876abaf069e2a39da99", + "nonce": "0x1525" + }, + { + "contract_address": "0x6569b665de48145219a07c827deded8a3e7f34aa79ef3985bea6717755e85c6", + "nonce": "0x5cf3" + }, + { + "contract_address": "0x71ad7b064ff7825ab11760207b16a28b54decc5b02873af6b1a2527e07925f0", + "nonce": "0x21e1" + }, + { + "contract_address": "0x8b44318e05bf18a302297844cfa8e28c5507e1ebe2009c763db4dec858c621", + "nonce": "0x5415" + }, + { + "contract_address": "0x19f0f563f9468e1995cc55fec8dfddfc30bb667ce4b020a6c8b7d9aa412aa06", + "nonce": "0xa04" + }, + { + "contract_address": "0x7fd8f52786862b8600d9e2a7823c77aba212e3d28b67e4623cd48369e94f7a2", + "nonce": "0x804" + }, + { + "contract_address": "0xdee3cb1be6b4fd9a855f7c02614ed9852caa1ae1865a0d810fa04d6b5c92b3", + "nonce": "0x4" + }, + { + "contract_address": "0x4a395a56c7f88cbd4972914f487b787032e452fe1948be89c8c2240b83a94e4", + "nonce": "0x16b" + }, + { + "contract_address": "0x1b156fbf2fcad9612732ad2685d5ea0ff3bf2235ac47991ec7f292f46b7fcb8", + "nonce": "0x4fda" + }, + { + "contract_address": "0x36bc704e0ba7bd77bcc30c00f13d810b2c6dba3d8f7676263d82d9e69306f87", + "nonce": "0x245b" + }, + { + "contract_address": "0x483ce3fbdd8eb75859dacffbec40d8cc22a0ae31526924a8ef732222bf5b0a1", + "nonce": "0x1f38" + }, + { + "contract_address": "0x2a46859fd22ee1b6439ce0c1352f20f184e34965a2f99c24fb303ecb7187bd7", + "nonce": "0xbd" + }, + { + "contract_address": "0x75ddc908cbc54410e2f52face10b68987f1f590dd164fb3c67e134b1a658305", + "nonce": "0xfc" + }, + { + "contract_address": "0x3a47e23f7a9bf0fb7345e9efaec5cd1e0c1dde13188f7fed6d4db801c8d6451", + "nonce": "0xce59" + }, + { + "contract_address": "0xcfa6810ffde746a867ae4bd734c2d386d9a926a310c2f4181038fa997c45cc", + "nonce": "0x3d" + }, + { + "contract_address": "0x41b0978486922bdfc7eeca616f4859e302875392b7bdf3c2a5cdafba685213e", + "nonce": "0x1e7a" + }, + { + "contract_address": "0x332825a42ccbec3e2ceb6c242f4dff4682e7d16b8559104b5df8fd925ddda09", + "nonce": "0x2983a" + }, + { + "contract_address": "0x7d47e04b4fa929dda44aa0068f651054f90f4bc1ef18e9ffadfb652d0398ebd", + "nonce": "0x6bb5" + }, + { + "contract_address": "0xe91830f84747f37692127b20d4e4f9b96482b1007592fee1d7c0136ee60e6d", + "nonce": "0x291e" + }, + { + "contract_address": "0x2952155b01ce465a4814d48d40769429ae5f7656714a1d278569c5ec0eb77be", + "nonce": "0x2437" + }, + { + "contract_address": "0x5cda2b2904c8b4b92f6bf3babc5980439b96f5583dea7a74b73e9d701e53d9c", + "nonce": "0x26" + }, + { + "contract_address": "0x830dc345b616bfc853cf41bdf70df3c6dfee8400c1d972234c719df22b950", + "nonce": "0x449c" + }, + { + "contract_address": "0x21714d78512c4d7cc98f8c3959e9026081f9bb33bbb07066eebc51b6ce357bb", + "nonce": "0x31183" + }, + { + "contract_address": "0x2d0356738e30a3ce3d7ec6368e64d286ef71fa444990676ef1e083f68edd266", + "nonce": "0x58ec" + }, + { + "contract_address": "0x72884c68f836aa34fbe21e83bb22d76e4a050f5196073c6b3df50b902f9ad6c", + "nonce": "0xf" + }, + { + "contract_address": "0x60f0e4968d9bb9bf7728d797a2d6e50eb4149dafa89acf15f2efa4f57218ab9", + "nonce": "0x19" + }, + { + "contract_address": "0xe90d09b07aaa8e82ae73c6ed38f8cfc23a8e95701d36167fa97b784140c8c", + "nonce": "0x2" + }, + { + "contract_address": "0x55e557a4c975059522a1321d7a7bd215287450907419e5f8aa98145c7699a2c", + "nonce": "0x24a1" + }, + { + "contract_address": "0x7067304ed934fe31cf1579c941a370bf1625e36523efd901968329d715c3a1c", + "nonce": "0x42d" + }, + { + "contract_address": "0x7d4a6ccab32a47a20806f11eba3adf6e362ba4de188b9895fcb24a37111a357", + "nonce": "0x5d" + }, + { + "contract_address": "0x54f7595fde761b771e65c3b23803f81c7619347007376cf54e5c52ebd785215", + "nonce": "0x3f" + }, + { + "contract_address": "0x30d1a6061325132500b0c288e8e6deaeeb58ad7cb7b4c6e8239346959cb765d", + "nonce": "0xdd7" + }, + { + "contract_address": "0x2a4117530d52d7a70406eb608b86f3874e50a6972126cbbf92e4257315cafd4", + "nonce": "0x3" + }, + { + "contract_address": "0x54452751e7d5ccfcb5dea9688ddbdbe54e6303cf472ffb88ff9e0b23c0b0cc1", + "nonce": "0xe8b" + }, + { + "contract_address": "0x7a900c5b496d15bbb1c3c69d090e890a4b19dbceabee72232d4f2bec67ff4c", + "nonce": "0x23" + }, + { + "contract_address": "0x6a20d4d7995fb8ba1570c32e53259ec1c53be111a33f9778825d184eee5a3da", + "nonce": "0x3b" + }, + { + "contract_address": "0x36c6e4627b208a7c9f4e8573fa7b6f702beac689196566d484b0963918db9c4", + "nonce": "0x4c" + }, + { + "contract_address": "0x411c2a2a4dc7b4d3a33424af3ede7e2e3b66691e22632803e37e2e0de450940", + "nonce": "0x1111c" + }, + { + "contract_address": "0x626a1182976caee727565fac2d143c72cec7f8c5319a6f6b49433875fa52bf9", + "nonce": "0x5a" + }, + { + "contract_address": "0x6bb8b6108fe2b5df594c81b616a7dbc427c9b035e2b7d5d615caeffb0d43dd6", + "nonce": "0x526b" + }, + { + "contract_address": "0x4d50f6ca2b2310609c1f9614370416f820c74168f373e23e5b4d9a86fca5d75", + "nonce": "0x13" + }, + { + "contract_address": "0x344c86d9d9a189cf1b616c8d3bd550bdfd3f099f4076f7e680a14d4d8981124", + "nonce": "0x1678e" + }, + { + "contract_address": "0x58388620d7b3db195744cef25a64063d1a9eeca12eeb321668286df5876acc6", + "nonce": "0x3f" + }, + { + "contract_address": "0x38cc12c2f0a9948da9b2d5c986569c0567aa52af944022dbd870c5aee60dbd", + "nonce": "0x77" + }, + { + "contract_address": "0x40c94eed22c9a80383136565cb19cb8c05e6397c47a83a3f4bbea6b1c129f7f", + "nonce": "0x23c9" + }, + { + "contract_address": "0x7dbc0ae5ba61561b34d7951e3d51ee3524b41653b7d8d69f38c969796374ebe", + "nonce": "0x24ac" + }, + { + "contract_address": "0x1978b8733863f8a3161a202aa328d0796b40f12a3254bc0c622a1b4347d9631", + "nonce": "0x4e" + }, + { + "contract_address": "0x7d8c33f4496aff713013411824fe34883f98da114d651185c60f56c1857e214", + "nonce": "0x71" + }, + { + "contract_address": "0x338724b89122b27c1d639c4e1ba54725af2ca038e70a5a8e90fcf86b06aff80", + "nonce": "0x243b" + }, + { + "contract_address": "0x5d2b4ff90b0bdba43656ea1c7a3a42f787e419fff52883f156cfb30a4a9e0bd", + "nonce": "0x3a" + }, + { + "contract_address": "0x7110d84a0b0a3e8673e1f7d465c3f6c6a886ba7bb7c090b26053b150c7fd7a0", + "nonce": "0x42d" + }, + { + "contract_address": "0x3ec56cc583e8b6b35e0f226b26bf8c27afe973909e62db9e64e9c466e6f18c4", + "nonce": "0x20" + }, + { + "contract_address": "0x6865262d42ddfe81d94d96d58b740fdad4c776b897b9105d601e0f2f49ec9cf", + "nonce": "0x1bc5" + }, + { + "contract_address": "0x551710e31ceb35c0e14c63a33b8d379ab06d17625a0231b971fd98713445506", + "nonce": "0x53f6" + }, + { + "contract_address": "0x32a4480eaa15a76e95f524cadeeb8f75b43720530c156e603f4b550ba0fb8c1", + "nonce": "0xcb" + }, + { + "contract_address": "0x1a4edc870eb8da3b73ab70d5dffc5c0a14a6ab1ad612845add04200582bffa4", + "nonce": "0x74de" + }, + { + "contract_address": "0x57e980208954e55a1af061c53ecdf6609ef1bdbc6ec3f700a23fe8c55cbdf9a", + "nonce": "0xbd25" + }, + { + "contract_address": "0x6a86a506ecf3e42b516754f94aad13f726cc6470008ef79a7dde024ce5df52f", + "nonce": "0x1c" + }, + { + "contract_address": "0x709581a5fdc685876ccebf3062d2f6a352ff55c81bd751cf29997a07bc6fc69", + "nonce": "0x240f" + }, + { + "contract_address": "0x28385e91469dfed6260efe5a054b3cdc9967fab2f4fd87d1aac33c5a1719c07", + "nonce": "0x81" + }, + { + "contract_address": "0x7f28a38e4f6622d530c83b75efd5ef772352c9c8e4bbc5e75355601f611367f", + "nonce": "0x2b86" + }, + { + "contract_address": "0x3522cb79d93f90c45a56d7239c693d9ae77a2b7199996b6824e628ad0a3aa47", + "nonce": "0x5dc5" + }, + { + "contract_address": "0x5e660516ba60c3bab5498ca7f5ddfe22b59bc94bff695015f5cb010eb5df2d5", + "nonce": "0x120" + }, + { + "contract_address": "0x45725428918c740312c1c075a3ea937046673b10b9a106761929a6624fcc2b0", + "nonce": "0xdd" + }, + { + "contract_address": "0x69a7818562b608ce8c5d0039e7f6d1c6ee55f36978f633b151858d85c022d2f", + "nonce": "0x4f10" + }, + { + "contract_address": "0x3271c85b8da8969a14c295278c5587015377e20867d57abe2c700ee62f1daa5", + "nonce": "0xa14" + }, + { + "contract_address": "0x54e2640fe5633aa21d431405f8539a72fcfd85d968de02c3e65478c93f8045f", + "nonce": "0x5c2d" + }, + { + "contract_address": "0x655e00e38323a46f37656bbb8d571ea53f7a9352fddcfe83cde2ecae66a1e4", + "nonce": "0x16f" + }, + { + "contract_address": "0x72cc9028da5b1b916d5344168d5b37ecce8c81c8b4881384443fb488b4c22f0", + "nonce": "0x2b7c" + }, + { + "contract_address": "0x4ee30db0ac6ae7c812544c135f43c507739c84538c54b3e1e9dfd1b3b5956de", + "nonce": "0x15f" + }, + { + "contract_address": "0x46f4c92ae83fc3b974dc542c199ac18665980ca56b302938131417b259736e1", + "nonce": "0x232" + }, + { + "contract_address": "0x3620d1fd141578ab27fa1d0d33f51658e50d08af34792422c95035929a8e80b", + "nonce": "0x420" + }, + { + "contract_address": "0x7161fb852fd41ba5edae69c5a34065fee060dccd90a7c7a6ebf9a3b5e24168d", + "nonce": "0x3d" + }, + { + "contract_address": "0x72c0be3a42c614837c7bc8e0869bbd7238e5c03022cd678e52f46c71e99c1d4", + "nonce": "0x907" + }, + { + "contract_address": "0x12ef243d0ba3d846288079dfaabdd69a61cb80911f9f2ab0d5cc6e1353d3274", + "nonce": "0xf9" + } + ] + } +} diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/178.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/178.txt new file mode 100644 index 000000000..98f105c8c --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/178.txt @@ -0,0 +1 @@ +33013d56fb8e4221f51c068a466263f7677eeaee894bd2fd3671cf82792bdf8d2041e2c414a9a31183641cdf69c23e8a291d1c41d1da09c07fe435826fb0cf39093cfd58303e6bcf99290bf3d1fec16583e65a655e949b48a9586591a1147b676a8ea036541c5baabf8749d7e9775680bfef95b31b5ab48729ba1ed4566835fc4c9049c64051200cf8f100422859ee7c5b6330fd2ad19745996cb3b6c717255102628f04067b2a32783bd7091f7e1afa53a95a2946ac5c2edfb83e414fcaf95e6dca93cbbff1362bf9f19a6362cbbec987a38c96621e9eeca467c6c77d38d5cd12713a1452e661d39b303301be5d2af9d4da590b375a15b800390ca5c67ed48e4b3381f7cf16d39ff58402932cc892f53a105f572b72a59f9f34679baa95be5d2d30d6b42be24dc62b99b9905199a20ccbdb5009ab085edbef59e028aec24ac3449083a977a1a4e2f632f73109ea6e6c59af27e2723368f1f3f51b78012e16e21d4e7481bb42237322f3096a0fb76272eebf636c13927e8a46a91e8097fb440f6c1a9c5587b57222c11484dc3f6d18e99ced680bd193df550f8b6b4675aa7da7119d70ca65dd1f6894788bde5bf2a8543f8ae6f99c80ce2fa8442982ba16c1690d9274cdcf4a28ee4cfda78bce4ee1e5507ed158f0856765d6d80abfa3a7606b5ac9d3715835f8b644540c2b9cbe583e6a8b456f2d67ee11f92eaa8f9504492809d6c98967b9529907de3a68f5f4669e167f8284664ec51bd3437c07b500fca103b0f1a577c75ec439ade16569e8d63924c59e169fb1c401c8994fac09611c132d0bf8ae6b77274a5a2b5066ce194aa20ce4ed85f31620ba16a29e4278ffc9e2528944a77d6d0960d1902b2740b7e72a09c33da17d64f39110f64e212e49ac581de886178c72cd1e03de8fa253cb3886e2533c444acc1f71705bbc660c75a3cc3f45e7ce5330afd84f77639c64fa5ee9e8cfcd9292549fb8c9172437d80a796848100c5b6caa0e7101bb4891d19b5d7e008d3190946a22f8f480462f26d1c38637cd76657e528a089cd26a3116e2d88318852b9ae57c4b5171fff2c3a0e664192b8669bc3e9b0283dd35abe388399622ca61e20921379bc8019f8b61790fc5ca6adc2b5ab842bebdcbd38a0883830365db67cc94c5955ca3e524e0a3e191e9da64065b49bad52587fc748ca6193388abc0b634d34af2a6bdf84f4a9f22910a1222b773513f7c7a3276fbc64c89a87a5b55fd3bb6f412065a955c2f3d91cb287d19f9355db720e4cca4ef14be12901a74ad35e1f81c9ed9fbc9b32b51dc8e42b2505dd626cb021af4db5653797cb43a92d76dd313b8d4aed90fa3e9547fd8f6fe3f60975b39c5918bd78a987d30351adac9083edc90cd3636d62bb555be04ad504356d397fef741a0344d42709f6ab0e3e1f7cdc9de0370e8807363c52ed0edd42ef2c084928a4905f8792e7f26c2941da7dd573a5b9c8415a3b68991b84000e9464940c9349356e38aa410975191cb99150e86a12d6ba313906348fc4b8218f702feb034ccf7f7b416d0a5ccdfb1da51e50b8dfdbe5c24c77c6a2679a97a08e5164dd5c9646aba938f6b977db6f89d0f8da378a705284899583b32ff062841a658b468955fa9a0276becf68ce7ad6367818a2944d3b69047044f08be98ac4a996410149bc0789eb954d4385d59040f502156fbe26b00ff4c4759ff9356d2ee8a349e9c0821d429c2f56450e1510e97e99ce0b40341cb464bdbfc34356ed7693b5688849f10596bc9b52ec342daa71f6c63828af7c2bd5e82e7fd6d3ac6688a241fd147ae561420b78e3df66c32409273744c825d51cb8b0ecfc049ef2178876514bd95442a7627b05a0d2f422b3f95f74b69db381f3957796d15d973b4971192265e284ba28e6c615b1030f78f073fbc4aec39d1d37c645e633bc355e939c7580d6ed00c740209df122962a2d54e98575d96e83233f9680f11fc75ff2952617a1eb3d7db264b6b3560f22a1d1b9f8b01d44d07de0abe24e9abcd9ec4c0d4d9f15e0fd5ba98efda7f967dce421540073d18833c5c1596dad9575a4cddccc3131a19098b0fc39becbe6b878515639eae285f8ca8bef2e0d304854f20644c8320c0196c3ffded3734e8965931f7317db3124a10f6a76a3c692cd450d171ca36d27751d33226bb5a1bb60dbe33cfc2c973778b9baadf957a4cf4c6ff241c93e8a2e25e51158a8756fe416518172e25c55814e46d34f85d59a2612126884fe05c24de49d187f7414221deceba95370aaa274d30ba4e6ab594670052017db5acc7176a24a466bbdab501de2e3d93918dae94a62b5f699514ad71b9a0ea18e121edf46c663a2482563ed16c578ef309ad8c28f07e89070744f4cdb3482842ba540aec63455b159cf5b983dfddb5b6410f859d6ead0014d3bd5e6cd795deb0072a31df525fb0f9fbd3959d140bd4bd70799e75e73da3e56473c7963742de3a1ed3653e706c60badb67932886cac9c712115e0d358601d7085705afbe891bb061d5bfe7eb5990fb50ffef4b83966fe0f19da9a0c67c53b88d1471db45809f45206857263850603fe2aec83e692ac9f00b9f5ba6dbdc7b79ba2ef73b5d34c7d1039b6198da67ca5e4b278ec51606ee2206a9c40b28fbd2b8cd9709e33588cf4813ab67cb3a4350ee6003331cc7040e01408b0e166731d718804a54b5391408903f53355eff5c3f393024b051566a0f8919704c4b44e800d39e0109c4f3ce55a0daa52902cb529ccacf2702549ad7fc2bc18632327cbaeb24ef164b12c300b9ac13665b22836cdab066630bb3d5c6ecf84e068918b14161e10c5ce019d8ba13a66075c8ffe231a7ef272d18644465adc56b72546aa0ebb68f0b56f5dae67853ede9aceff999440dc60a54aecae0423d187926d7fbffc31b03020ed49c8be88b0f0d9bf223f058599430b05a7710bcccd51f0bc956ca78595d3627f2903624358015ab5b099c5bc93ef6d47f1d2b27e50f72bd3311a36555ee04b7abb238c1e5b58d35fb563c5fc169ae908bb933879517503b34e4ec3b7f839c020fca906aeea72411a8202146e86f020574a4f32e62e23804316e9904a093e28056b2e4ac094371550cddfc598521379da4a6404a41e7bf8664efb0915f90a62bc211193d2634fe202a076d6aab3769c655184fef338a52937b46c2b39c2f119facf3491181fc906e8807af4981dca02249a004a64694d4864be69692d938e06566dc1df3f5fcd750321db6281846ef9b5c0a6f61f13a43fe63fcd52cf98378e2c19c895de0da71b21c4ec17294cf4f7ff70e9ffd9a38515898f7b46a34c8652186dbba67d120b24357088b3f819ff65f29742bfe9414247f62f6f7cc70e6d60a5b8580b5c4faea338216311a60512756b693b9580b2412721119ed070b2ebc1acd7ce28cf2e07f284db238065e5e2a4c3fbfbf822226e3390b8d4f6fb071af2fe09477c4e398d9f00e9368708d387b0be79d22db2fbb00ad38d99f1a34c5693ef77f9763a0e6b55b285abd3342ae514344e676291f365b1be209a733a65c38d0bb561a9d5f4c75ab6c65ce406960b570e2a9b9736ed3193caec2e4a031541dd4575d1ab94a48d404f8a41d4c25b0952ca08970bd009dc0895b3199518071509ff41cf958c5e4802e6983526738b98699a1727e9bcf67aaa286f49b731be4fff88e00765adffc5b6255d0114d5e2cd8ac1ba0cd3850fe0df3f6c640a5511a080883ef908c8b27892d73e0d0665a927ed50923550bfa136560b7a8dcaf6be6a7d1f4ab77c42526c7d965522d60a3daf1dd65c718afae38cc81446edf9424ecac175f5a95cd74563ad871614c119627cd69b8670350d7b860bd45ab74f8f3e34c86e8f6af7a52edbb91d3ca9069e56904ba1c969c310d0b4a7d82d10f4186e89e419517dea2094a8402f9ae4f07e07f3fd5f6f2f3435c3afaa0968a56397d916b294e8357fb0cbed91bfb3e16701271b31fa6e3bce23fb3d8ac33adb98b086de99cd57e211149508c2098e1fc232b4a7faf5162751782fa7ddc0e80cae33d75042be4573455c57c45b6db19665b19e506f32d33e2c37f659e1923434ba9642efcdf83fae740bc82cd36a7b1a1367e226f47f2f5042ce3788d352ca06c308eaa0574ba3effe7323617769941ae587b22dcec60110c97e85ad82cf83645ee833163c38fd87f9cccafcaeb036e731955b5fd51ca5b54f29ce4d3385e5ce00f6a59e4f8ae15c154b4c2fbac29d5c8215bee237417cefcc9419375206e11c9e141c65bf0189cb99b09f445c9ba56340bd677e1686f004910a6c70726cb38476d0dd66edb6015e64b6f4d97e9d01276436c2ca6d1b817a78abb748e11f03c220b5685d274011678be8c2f0caee2da072bba505ed11ab58e6efa4c4dfaea80575311776f10947a5e6cb195f1d5177c7d23637e1031a33394f5080cb71701572d3d9542d301d0bd51f6b2739ee718ff612cdbd68e8af584e515cf8297cb91c3e3ac3099ca2361d86088febfe09b75a1fc6b51785c2e92d59b4ab5e4211ecc8e58796743f508484f56371a6241a596dd7b35e9da31467e7a9b6c6c078cf8eba243a2843074543e0073057a9a931c0236181d9374a8b76b9167ff6e1d8f65ea687b1b1213457827267b4489d8cc987d458136104a73fd3f0b01a5921189c72aa73ab20a201b662470fe7cddc5ec2bc4c8f0157e8739fbda2ef63ce482f667ad09ed2c6062ad7f4e9b5bf4f3c7a9dc8d3517524a9e154744547276940530ccc41f92536a1e7014abd9d568c5ed0b0f83f0a760184800e1c39557057fec1696ca248a8be8c06902222d92d630678cbc928fb10fdeedfe56de0b492e1097a30eb99392765b9e3c74276635424055c6a366e1077373f411cc098e0f86ba788b7a3c33471893823dbd43e7fff1f67e7397a3aeb548008c5b0fff1084a72e07f08493192426d3c5db0b661f231118d25321be1d9d61676367b23d1b0f187aa541001507ab89936854538275a03cd9f2741d810fc44dce92b33bee59fe554d0c3f0c7b8e7309b694fc9c014a4e0e55fb2783d8ba530fb54dd5182d82222afb3ee23bc7bf107b498351bb555486441679bd37de752e546b339aac3ddfecced0dd473d3a39c0d2fd56db19a3de5465a243a8ddb0a1a668850ee48bf6073f993985d06f1dfc6c7a62a0aac09e7175f8994521b46ae5f560bacf553d00882e33ddf29b8d4a14094431f7ebbda2c300eaf8f164fdca48e4029af5515adfceb91a3819f93f64ad83da8a5de48b07007ab787309ed96e40ad1a8f49704f60ea7e0c8ede20fa182c6f1fe81def7a651c8e0d643cea2eef3817392d4070d4edb28b2936b57db1756d7689fe76125ba8455e2d2a3fef18f3bb452a71cd9782bad8a23fe3be84e922c1d39881506f7034bf2255e2850732dd6b754230b5934a1b865a66a219fbbd1ac153d144f2417ffd9eaf348c8407a5b93fe968885e624a3189481ad80240bc4e0e51a809a54f14a417890e72f627a2ab9f67053f073045c6156e849332098a0133a17a096d157c78fc54c30dc8720933ab7a4fbc5da2ea8d4d1cad30612751c661d235489ec59ac384b5a4ccc904dda6c006715495fad297cb3d1c16d2777cb38e80615e083dcf4749f4fb53534dd4bef6b6373223eabfe9557b863c6c13d29bc48ebb508613828d9eee5d22bec52a1abe263ed6b748c8d2c3cd1d44a37f91bea3ff32c13930e50e9849b3a0ac25db4491cb26dcd0f6451a1b3bb9d41d8f0a720dac67c41d565192fccd0676cb2da785434b5139ed16e68b2b29fd0f41bf8fb61f0376bc4da2fe57a7f9929c479cb7d4fd39530e53cd57be55fb437afb77c03a97c102681c929c18f3efe0dc6a11b9ffe77407f866279f77c28f1c9ccb85058aa43f016bd14cebbc01bddf49e648dc0142bf1a0fd3dd2928c8df0e0d86982ad16c585cf28bea7c84dd224bf9f38e1ce3f1fa5f69f281136897467fe7253858aa6f0b68ffcd09a43af88bae95c441ffa55982663790b0783f32a11774333196388ce8f097f08c9d9d689b15118b9d7dd0302c499b83c2a8403fa052dd23b3a231801c674a63ac22dd5c82a6216601eb9a8b0f468dcc31527fcbd2d8df68890ae74f129cfe100a29aab7d033ff094e0b49ab075bf52fd58a548cdce94b7c983109996b662186d69681ca80bba3abb0f122c3d935e65c8cfff40d0020f2d5453076b541d287aa2ddd2b516d50a8372dc86746386192b54c77c2a403115409d86d9dc46e9b3b7b8fddcb8e58e60a1b455296deaa35b7b0cb5a8aac4e6d328f9d4797b04a6ccd60f86e17d7fe9abb4e9d42a2d1b01d71c09cc04c7db7e8bc75c468cd7b62085af29e32bfe58f981a7c5d822486324757b28ded1314034094eaee8e97f58bd501e3f1e39a355c6c4c23c1b0ace34213d5d97582f515cbe82f6aad9484e49cd6185a07871e0a2b3b1d07e908ab332c0abc6cb49247903fef2df3570378405311d0070d51ad1d83dc5e8d9840e45fb54e148ca1e1ea1405ddfaa0f0f36f0ad4c7975efa96c65c4296aab5c39b3407a21f2a30af4c09a975f9d41eb71518174e4066a53cf5de3282e937de73b7ddad5a046be41bd9356225f2986db6805a3a350c795b86a6ec8883553ac19181420ad81c4aea531037f383c80fd5f85e0f8d75d23a0ee15904ceee1c679d6659d0923442ef51d618b70232116dde91d84464dedb86d3e20bd140a859bbe1bbd85e76d7535ec84a68de929873192277ab5d91501ce7c5114de79d455bdd8233e91b5e7a0baf845a1c54cea0250fd5bc851ea16994da076eb86850803d0b6d46b91f3fbb48b4e969496f1afd294ea62dbcab8eb875619a16276f698096dc3080df5c921102f4a911b5560b6cb39a21fa74882ff4b23e18c0556b1aa88459a6b13833715c57fc870deff9ff7bc7bdd666aba91b5e5eb91b0414f79b56512602274e3a5e200b7d42f0275b0ee4090951a0666ebc628e176dbe357ed68f0a29aa1ca1ba60a570de342a94ffe65ac34904aeca64ea67b74f9476a2f003d32f2888a6ec53562a14c8981815baa9690a07e823aa093d57bcb3e817796f990e002644677bfe5f97657e0cc0ca80addd9cdb476e25b46d1064865a03dc527915a73133b25e74563824bb5abe91255e9514b4cd1c1af2b346acbbf04cd510b65d51d9f0671e6124c01359198bf1f00bc6e004bec9e6085ca19f124cc88c54d7c5977ef9d6c05e16c62ec6c6e3b3d29680e438eda147489f3f74621093af493e670ac83ec7b38892c140fd2bfabe45d2e85e4cddf83fa4936de8d1b55652a860e95c6dab0f2bc6c9ae6aead5e9ef1ffd1d40f6723ef8850b9cdf96f4b767764fa1466b02fa126d310771c85b7f2a054c0a397abd31be2500bb4f357629bd949489512f0df011a700f745248049fa3ac7e696a88511fcc2f8e52ea2abe98b489b64496d26795564a1014a65cc85490fdbc4d4046c7c6c16056b2c5c1eddf8a68d804a1fca576571e64a5340db0f155d66b5221a1215ce511ee04f0a13c3325a933b507a4f2bb84b09dd597dec959d0c675b78629ec33322977dd795972eeae4c1e8a854c8856bc49b2b5b00f56a816cd49d787a7c406f68323aa5a6a0b26e2c23144f958a5cdb330a5329a8165b9e0402a5ee9c64862abfd36808145454ab8355dd6e7617557b708bbf0b0126a3c300a3d6b06a72a7334aa204e7f9da5618697bc5188ab3489cd8df7937b89f70975fc8163f5ad6f991d081d7d1eb086d533c61399d0fe2485ad495d75a05393899fd254d59cbee84c32f36e9597046ca975a59ddbd22bfd2d51f5f663eb00fb87242fa0a2758efc7866a710b7daa2cc7feeefc57656c330c6d414f9a422cd03680af678568214685c7b647ced5e3e5c9dd492e5e9f3e7a28d9e596ea3607b7b19da63b3f4d9b8dfdb1dd1933e85db78a28ed280f7964fbebcb1d458d2c49a51d572e548aa45c2c6762806c561635d49ac600b7aacb209a71f525ebb1433571f7690ab1074c6b3ce7820990d7dc1815aa252742207e39c14c361082ca21d259a5d5df0133481ac8c008f22216a9d1bba1c12496d0830ab45a2c4fde9557940cb71c4bcbfadd72566f53719341d65a20502b5bb4cf1fa22523b5abc62b5e402eab049ed6f8c472737f5d1e6c570f8f278540b57a0349b2f4c90b672fdc5ec04a6c7c372d9df28cf0b65f0bf98c10448cfe1702c1adcb8a6fb8807cc3360932cbf8f9d75564ca628f3083a1aa3500878352c21fc1e948a8f178a9cf2c20426bb5f7132693e9ec6d370e0d8bd40efec1adfb829aa2032db339f62bd41e1646006caea1eb988919f12fe0ac33a4a8d88bed9184f879e6233c42cd7b32760d5aa93ef32c2c5893e1f40f5f999419431d19db354091c631838ef1b488362eda6db609e8470a8b83f2f7aa2e39a763923497232bb118bb052fb86204b5ffdb345e233f275ba9e33a7d64c553a8bfa71b927d1706a4d426540fc7fb7bbc19b44c23f4f30214920e90d573dcbc7a9d3a44f39ddced365127451e44d5d6993e83e85ac902a02703fdabd1edad166ac3447205fac0c9c7851f59fe0d3fc6d2e9a96651dc4587168fe9c1bc60c9942d7e0832586d7ec759d67c3dfb7c03e66e3f39c30af4e768ee2d0c432944d8d4235bfc098c21d1832ea2067f5040ebc0295ec31f2a7f9f004599426ea817de955a03f06917ec29d68b31e4f22c05cdfc762472f31fa06fd35921e11101527803f13ff2a420a8cf07b1517732205b4d32310449d256ed18b4313b2e2cf0a428fe870c4753b38bb48c0128d36e8d29e5ffd63646633b13048a85a19be788e7c2b4348608b7055bc0c0e63237d65c2b13d582c0ac462c5bc3bf388a0cbbae26a57fa2335824c360079c3df08d90875053f262e12a120edcbfb3a52d3988a0a5ae56e12b3dacb33f241b7f1b7782ab7e7f2a4e86eafb6fcf6c0d99824a01c1138d0c1bac04bb529533613bca1620ec2bd167bc9a957a30334d25b11b716d8ad929a8ebfc06548a1a0edee57c6f3dd109eefdaeb9340c0958c14b7625ba0d067b61461cf71051ac58c395d64ca091fc2b98458630cad45501fa56c93b5ecd884c3e9b448dab6affc9d9ccfdc5c5deec31376473609e685fd8b157f73daab541e060595c5b82ac2f609dcdb2da3648a76dcb416805b1fe1cf8e63fd59302f945736fba5b99c5317b33ae3a08588cf9505954812fa9cb4c533a62b939966584d45babcb0676e02175c67f411e182d7abd88224b355cba71692b92f7fd639afe8bbc91baca5c787ffd14605b599ed921a2daaf6652a6334c2384b59eff4890f2e5ad52c120a4a9df34ff40900d2253e878e856da93a603225afe23836eeed425c5687b4f007469f8128336b6d8cee6a85bca6260a88da98f687a415d62e4bc81b3b0fd32526281f45eaaffd68631e66d4e67d8a6657e705933b7ddf827a0a62ee74fe60bfd388c5f6cb09ea0fa2365a071338200e7f03bea6208ab9c33431a7aea3fd432f6aa452e9f998cde68273b03ae149f172c1ad10c02043b07b678b415608a76a6d77430706a44521953804aa4d768098eb9f2da652c4a238a14f646afca3d6f00f5e4095120526051f585f7c9fb7791e7066b644315c8ba1d246d4344e24c1d24893f40bbae0fc08ae86cd68102e260f226332ec709c93202775b8572709c3a622abd31376dfb010c7649d3ef300d62007f5d07f94d6748a5d8b72e2491786d1b287a7f9905fa91197c6cc1667bdb5a4236c8b45057f0b900ec525f96ab6345293f05a6e5392c058ebda57bd4a5f1826d08e36b5a5f25367dd8ca42a806e1616723e89b91696c405dec6b3a8d468d36a9a8c48fdf146760c7886b3be32a2eab87be832a37fe0b6fea2aa2dddfe94ac74f38ef02cf0c4edbb441ce2111cff686f19740dfe6d933499a291ee41a333f892d6ff4aea23bb27928e3bc64168ff75b38984d0b490313c667d96656d8d68db93a5cb7cd2c18f039acae2569a66e697d3ea6462463fce4f9804ec30f9b337a6444f5cb9a69362f8cfa7373af11b9efd50161af5c10572249785c430c88eae1a35b8cda9c0c015b7905ae8750ff2846f7d8aa2f0d20a9ba467881e3e685d7be603a3d829a680d1b327fd3267ee38ee105ac913b24f71253c9244b372fe30de32d8aeb15862062717726ecf541eb84166cdb0ad877f6571314e36ba53eeaefa5837a83b32c2e5a3f808aae02b3ad3f0963d0d606ff89afb0c0747f5ebf3b1968f061a426a8f60c788ed2f90c5cca2d4730928f95c220c5c31734e42cca6448932160cce4fd135bf59919a3513b6cb51e1028a053698e407c11113997316a0b69bd148170e6a0102922aa63086891f52827f19265b95959d3bf02e3e62943e64a5924f67b78a4100b5dae5ba5dc70c7eb84089d3172e27582d6bd2bba46896bef9de53236f62062ccc9031310065329a0d226e96c883c16594d5d8cf39cbf39c2fbf3a3d862406d27fa6d5da5698a5f0be3e8b652aa23dd591de58453f3bc3a345fed8812ea2e61e885db9167ddb61cf62c80eb59eedfab9ff475b2b9638f06aaaf453d5b5fc965ae25b8726e34b52ea5bfcb134a0a9b4d7e1954792c54f123dc9a02146763964e27446e32c7e13d59bf5aa9adec269a347f6830e7c646722a507e671a61ea324fea7f318a7a4c629414290616b607b43f44454143e47ec028aba1921a827eeb3cf10de55a3ba4de77b9e1ae31a4a32c6fb44267c81f565c029a8c8eb7a1f08f0d202107f34d01e139815655ecf82e337ff242d91f671e94849f5e098a5114222e29b67a1de5ccdf3e02c721955a8c9befdcde8311239a2dc39cef4fd6a3e9c5587fb6f4f5112574f5701ea2745d647eb12bfeebfb18cbe8beeda8804a2e2549712cdfeda419fe3b2053f0743f04863bd1f8849a833e473d6de2e91e275b196653894815c74fdc72d58f1ff8777f10f00ce4ea253b930f70e9d3351eff0f3be91083682d93b11ae1dcd7df7b1324cf1a3fe7806aa38e63465c01b3ccf52d17be53d96ce6491c3e1a97c171c010bc2e74bdbd1a858a0cae6ab0e7a9329d8b4656483dc118bc4897bf61c8541fd982868908103f55b61e5ab0de6d70da6aa2f3b404fcd561bc5b5ad59e72d67289ff8b847f87c348610ddca9614d7239ad7febcf626ca5d5369ee892650ccfb67f70c6504a4bc84712f837148ea775583657d9bd00ff545b9455332c361e79eba2b0124492ba6c7c50b29c50115106a9e58516d24ac76e44a879030d8e6436623805ac6ed4414c4616726ff831d60853c5613185664e4e933b3e7cc91ac9f6c8a6676ffaa81ff60d3efdd8f839bd7f7d50291dcc57406f5ab40e36877512e8b8e5c1d04319971e6b0d3a47893a0fcd20f71715126b79152489c4a2e6aecbe081ee8d89cd17ab81c63ea49d57c583524fa682881b4192eb034f8efc5baa28d7368347bf2a34d3f6f4dce359a6574454aba89fd1c807db4092d8c52dd99771d571b97ed4e5a7363ea7fea27f274f0328536b84131736f827b1bbed6ee8ed42b0c500e19573389649515b8f7b56f1d742e9ac46717c5236c08e46a56426414f0c703f525b3bf68eda1cc8cc80e0695e1cdedd962c031f3ec0cc1f90864fdfa1dc5b0c39bbccda40c1fece7ab722a6655c55fa3db1f6283229fc04c0ec42d53aa2316b72c536abd611f40a0e84dd88c0880373ae24880f1c77cc3c62099fcad8ae6f7a398f43c2b10da15a9582d3c92a1e5e010106d72de5d2cb625377b124925114bda82f89ade30f82cd680b2b1b1d421305dbbeb64916d7165e15bcfb5e818583ff2ccea9db4c26a198d00ed24becb53a5f63fa1665b7502736f94225ce6a81f4890cf734dfb325726077c441994d5ee2a5acefeb2a4424811e0c8c822e80f8f7f87372fecc4075c0c19105090d93d68b3a13d0ef574a43292fabbcfd74e4aa350947fca3fc392c5419b88f26e48457b7a429bcd22088986846e8ec893f0aab0659f76b03d4ef17d3e5890ae5850433abf92bbfcd0377671a800f0b15b3cae01bcd73171780d87b2f02ce5311e212c2dfb538809f60512c20508b123649b29281900433b8fe5bc4e80f9dd50bf8b9de4d88d64f0156c7854e083dc0c3f3e8db888f5407e7b629d47370e24518c4d0c997edf1a310648792022f654a976e19b44c5ecc652f4b25a02de0ad197807b2b021a72dd72a4e070ac86cd9242829f69e5dce4fb434f751a67b739c8e8f876cdd61577184aa6dc7d21965fae66264b2c4f40391869721e48c61d157bc884168928d6317cade4208689fc257cd76c8f0438c2e4829dd79e4816e13635ea6a29d328b71d77a996fda93431fd5c3db6038523300d67649da5b815a08b19f9b096e63683f0bde813c130b04c5bc41ae9d881c4c3fa728abd65b20043e68d9b8c824ae7bb4fc977c61dcd27a8cb0802601d7dd311c775988d7e44f15aaaa23a89e4178f522bc94f628732dfd5d62e20ce56deed4b77bc35b61ed29c817c33da634600df2590597606fced26dface3b61c76e78d01c1a7765919b5fb6e46f94d71ac4ff027968e6a14e4cb54e2cbda880f36c9615f2ade3a595dd658723b5f21846b9b26158fcba6a463bbd6d08312463509a945b40c24daec7c96f8c9baf76a373acd289f73feec15cf42c3d1ddbf07c4fd37810a422a2ee4fff4e80f1603d59661848e58abd9033659744a526b2f0aa753585ad435f858bea4897efb9abc243b7ab8aef04f5435b223e6cd9b5131fddd313b9da4b2285ec5973eb2d5bc4fdb62ffc6bffc931d88d009242cd0b7b9ab6c9ec32cd0c0db984db6ed13e53d8f79c08ca0cf3040fcd8e28d2264b5ff1f57a9fe51afd66d78cfe6e9868596e1664f3f75539d7a64d953f4f19926784f2ebb692de7bf18b138408e223b49845fc281e9d8105a814f93f1b6c95b8efe155531b11d5d08b84a2e600c1debdf28c7a4774c58305c24cd0895e51b2e7cc7b307e748a204f757f38ecba8243253d778c44cae9d7bc14331be39b42fb06aea5ac2bb8efff0165acd8927d5616e8cb1dbe5a0a64c7100fa8d5c287493defcfc039e07376a932ca617536c70040e7591e47b7518e15ff9d00b81eb66aaf38c5d4b7fa1eac1f7dea0af74dc55537423b5ab0d54815040708251632c6494e9fd31cb2d849dde338d00797e2ec465601a3d6663b2aeef5ea90f5a34f8406b4a7743c3da2461834b2beb646386f1408c49fb2092b542f42d4d77b1822ca0bea90409bc495fdd45f55cbe50572f4b1591db6cf7de3e7e78998ba05cb6d634e95634fbdc6e4703bb9ec162212fc5cd58e52d2767e8b11ffa985af79b508414c4869f20293f523c94340fa44d21b1403478d6ba457933def4a5c12f811b4bf583d958e17e13493b635ac031b54e13c58bb162a0b834253d6b2c49ad5fad69b0d880a669b94e571c62c5f1682da6016e2643ade2f74b554dedc66ea5358934d73b352e401bd6d79e8173b624ca376404f21a353227e20c2e9cba4349d505aa92c657f0c92043cd0c8716b14bacd7515b4d008a0f21562348aa4059f8d4cde950cee3f6eabbe492fbde41fea822f2f7e987e0b317d8551d66ffee85b12b81a7322f61ac647c38157668e91186d7a94a7de41e75e2914ae9ca8266e98230b63841a48237a1575527394b5a79727120c48ff50f2c4c278ef34bceabadc5477aef95c6ec80265aeb75bf25fae08d14d930922a8699965df8f2d19cfdc7108bce55124b360780c7a4b616322342c36f9bc03365ac5f8624ec32f62268c928c1098715e084845e4778f60b67bf6d67350272872cc2ed0f9540119d8f8c9feef0b7c321e47f47e72d48a7e52634d0dcc47b48bf5a2fddf05a1ab65b85d4a3960da2fa011304dfac06a6fc6b61f330d03ed30f1c275b15d62a36d5275b9ae203c094379485be470b140564bf986f53a0bcbfd43b99e1cfac6834a5ff2244af14b1865026e051264ac6ba6beaf78a20b38b187ba164a2332a5199295df287055a69a46306e3d45dccf8051df0223c3720c7dfd2e1418ebbec75b6b6dddadf576dd683d931f1004d8edbe598bb749567be237ff1bb8423fee875755366d334b3aed6e30b1459833aeda6ea80dcb117e03b9a70a2f1857c88be9341f1007abf703ae57a6f65cca65f656385364f3ae1131e6ef477fd86252115dbcd4caa996ba7ee0575728084cea28f18935fafaaa5a63440124d83ea74415869442bb4d20eee510f038820f1d41b84514361980daf2f9e786c513ae284f99ee1f65ff23c4e15e035669ba2d4a463049b042d9c595e83c51b976302f2d5b27e91ba9e364799d47cfef96662a2d7aadbe4bac06135519926ec2f622473f21edb9c516924f2348fb2cfb16c10a542fcb28aed94398bfbd477d8c46a73f76079cc35cf302f1bb6d637236e5f91f445f48f3a421001537d7c627eb22ddef4636cb37d550779da4cb6d7b85c5e806d07378bc43a3e6681c14fbd8297062730e08204fdd0dbc4852bcd32a4c25aa2e77d8e708b9e2933f760500d5289b8787bd1c474a721dc3559a9def2046536b3b7f8d8a86c4a8a2bf591e2a845af205cfe579df407db681c0a24256fe0e90ce42e11b356d8a48a2fcd12341e453f0acd8835e1092c755bcb95b84aad1528e27529adf163c21fb18f1dfac061cae6a1fd2084df77f2bb29e06baef1a6bd5fca40801773720c0b2688eb46486bd4fa51e2e69bd3efce12366ccaa84d5fd6ef40e2e782410ce31a65ca9de3a6ddb3c33d94f900989f33a801940bc6e36c82980bf1ec311c916e2f9278c9e8e1e11fdc1b056db80fabff4d91a3efdb2c4f6743f4163aaf419a9b40506318ddd2a612ee2600c7d4ce647023d4989957f53d83113c80748308e7adb86e21ace91e59e4d2dc1a3bbe302e4f6c0d0dcf53a2fd6ae9d6132f30380447cf67296b94454c0d660b681e948f6f4126dac5d6d7f5fee35d49312d25b4b1782e4b81dc1663e1512779ffb5cf96bdd77ff48e7b9744e5c7be978282157eb67681cd72a5f6a8b2b68da0dc221e05e26156c693e42fd2e28443d324461990d0b7ef4a227133bbaf614a5d4651260b25bb61fec54f68dafb3e7f80b3670872b69439675812cceb80287561b19f0920ceef66c190cdd2761b4fa0096729ced53c02283ba91ac7e22c866fa7cb57d26275a163f56f8b6ece198f129002545ca6374acd7632ca2411178b63a563a1ed5edb2e3262d9355369fb139085f585004d194c22ca9d352e1e2314f6dde1a6c55686ae42576aabb0318444f0c6f1680eb8f7765b6114092aa6cb7866fb7738d5c6603c64b80f8e229aa4068766d155b8c52096fb30a869d282c165bcb81ad1a1c6629601d140d399085f5251e205a2a626f69ba5ec272e06eca33a1450f9fd48ad4653a59d1955e29f5981272221669cc7aff982bf22568086a02c57ce387790a7dda87b9f51da2764ba888fab762656d2625fc68492c3dd84d33945a75db49a15352823399d8cd9c7859855ffd6915bbb82851ae890cebf00507bb95335d34a2114af3296414b8ce8afe459dd672893def458d21a0b8f59126772517d7104b4885cec517cf41e87da431c8addb366bda499b7970aaf9c5386a8a9c12c49b707adf08fe8d3c6dca095f791abafd3ffc8695786ce285b9118fa01b3c5753f4df372546d448e15b76e59d8739bbc53e0e6f01ceae462f48ecc8f43130d051e996e9f1e254ba32c16e7114c61fc2466c02e62197424f266d0b059a5905fcb04be1d2e67a14d275085af18bc6cda60f11876dffcc1e8052fd076248081e02b5fd93409e65c5c4f23f9a116497c3d90b2aff3ba4ea8482523b2066af9935bb784019b0fc95cc50df78454bdc371b9e416805ce8ac9cb6185c12a1970c8ed31d4e4e81cb5fc0100bfdef0d13d491ad1a82a3a2210d686196f25bf638fe3ea5a8973e80e938cf3d88fcfba2faf1f7a1cf1654d0cf7dde83716f626c221a31722dc6eabaf25bf5bda95fabb4ff00bb5ae6e6f6ba2a09728ac60b6b29c00e43dcf10e0f3b785cdc66bbbd328952138865777699902a6e028a51463428a0ae418e992adfdac92f445064517071e8f71d361fe60d462abac5fc7061847229722d75f8de379762d43610c329ce221ed346cccab56698a939aadd7b89e04890ee298a4781b8197250f2358778497b1fca79c94c62e8d8697365bdc3a449637d743b96f2ede42861e56296e9f7bd8d725c58e74465a7dd024813698eb6e41816da2d809fac75da0978991e96fa06a2fd98eb6e5f75609a6f7f92aa665392febf22b21dad8da7b2fec0c424d45542f5e652c13759164257156395f314fc42455435bbcbad5f5ab7c5b42bfe293d513a90a6158acd41bff0f4be1468456935bbad1b740a87350ba6c8cdd4a609429d7e0668a0522145eddf489f44b526f5d0d4eb56b698c2a8afe63780d1ffc005a56a89165bc277c4867ac155b9682f6613df502aa43db5ff3ef7132d5175d6af9af7f41d6b196092fb8ac2ad0287034c63f20cdfb51f2fd3212638f925460f65e6985b715d1d7e4021a483b50026669f382c867a8462cefbac1375035bc996b4b628581aae0c31d68a2ddc7b25a1a3007e0ce56723e002c3c78a8ae5f1eee0aa079ae781ee56e696c2881d857f2ebef939e3c0d1a242151a3eadfadd259c71d1caa16ec231d72096c539fb9ea84336ffa1bd5fc73e29edb25cc5def1c68436eb1e0dbad3b6468643784dd9180095096bd10bd547bcff87889694d0c11361aaf69a903ad2b2c7a7c07122839031ea54cf6688bf3677e17fa45d9271ecf1a59a4d5737e8fd8cfe4726a89a8c91502eb8fa2fdad44199e9db4961380ed9118d17fcaf62b390ff74051108f7c5ff9a743d901906a0a64f5d9be514c11c40d3b5c48cc5e3df23dc9ebed2ff702a5c5dcd805cef3f273dc34a529e81764e43d039f3279b2b3d99ccc229d62aa72c9d9856b4cdd212e3f0c72422a327c52465397e603a5292ab607b229ce48f2260bec295c7a12ad65695d7064a4ac6ed69fa1f5e67c23a96e82cd7785ee4260370650fd0cf9a4770d9f33fa7f6bc565df6e9805c2a06de503507b323fc537f3a8c167a4da6a3e762ad3521506ecfc1389024fec9160b13a632e80e6c1da521ee7d98492eadf4fab9fb12d67c2d0a02e5ffaca0c29535c00842de5a1c5e16bb0dced547de0af01768d33978575ef252d8e1d72d9a804c526504da8bb0b232d1111950c8a040bc910f259b140fb55aae76752afa4df18381ae1b94d415f9f6a559a20871c2bf8f8adc900f0c2a4fc12f1dadb0e215deda560d2445f4040f3108827875a892a14b6961f3ef8a773f61f8ade5a06fa010d16f40e4c6d8409a342513b90d5ae6f208928d2bed56fa2df566414f010cd1c14a3918e5335082a4f19bd89d8f070ec496c0c5d5e6d375572abc5bdb45bfbc967ef59d6039d2729470f29007ac83b733c76b0dfcbaa452236461f9768edfc058ef14a4eab877b218c35630f8cc09024e4923a8dc0ae6a6029eb53d8b34d9d02be44633c70a21395ca5e0de87cd1f424c7183268073dde6298243442cf2dc3f8ac9b281d5bdf8815d521739286a9401f18b26275f52bc2d5e384c7fc0855f7e6fda2126974d39714d364c53da225386169d15c2f169a53c58c5cf167e94a5e0c6aebeeced5384874ea296baeaf7dee2565c833214940fe6c981d3f18317a4da6034b8a40da2b3e9415684d2eb0c071d8e8f982376fd04045aa2b3c38ec4d63dddd5131ed4106a7326c2eb97eb5b37c845ee9e9d7ece9f715b0360b14824ee617578d6c10ca2f3e9ed725986439d010b10099b0674d819e5f15e3f9a3d215ceb0e9af20e5fae0cc5cf666ba7d1ef966084138367345b247027058fb58a4ea9f4939d15d0e8b01fd19386521377d84436d564e8bf71370dbd21d037cf73298f804188944ddf9ac5740295b74c53beebbd5b975ca56f92bfdc5064c4da0c4c235760a0af4604624bbe8fb50bb6854620876e6cc91b875d2bca8c74e684ba5210a84be6f5f2f139be30c792fda9d6b4487ab48b2dfedf981ae601ab374d57d1e7719ecb4d835c7d5b2772b4627923198deefb947aa19df7389cd9adf8531f453f19b694244dd1517ce57b7194abddda1fa477bf5b0b056d086b974731ce1c0fbec1ea6177673a8a74e6df316619bbd71211da31e73cb4d658b31915606d5eb90a348e0d091507ea1bd0ac51d20f151c2db5498a120d0235f5a864b667970f7f73727ab4c602d4e5d5b634b38ac567dae4194e6d6558de976694fea39f1fa3d521932bc72fa5e2f728ca2d56ba1f91dd115cf3c2eb25d038ea1fb908eaa92626fa34485e16b6a78d56490bd3fc3a72122d4a6803f35e12e0a66ebbfe595bebcd238e20fd00ca6fbde6a731c4e6662dbc944c23e9a970c7e8d25e329d555df73b33aae40487458c76002232f6408878f73eae714b986b706515a47e8128832a9d66a57e065d3d81be12c506e574b739dbe4e0f33fcc29ed13197d55f354dd272405dbb321f792872e3d209bb4698bef8e0b0e398073b9052da5cdbeb5f58b7666272949d20f733cf9c08bfed301aa730c5a52ecf0994a43d8599f78ee1cea04b1029a2c303939be5bb90246d44ec40fefca771f5be75509e043a28e6a39f0bff4c139c3c6a2aefeee454f8502e43e8657f0f9f520e8fbeebe4e7eff4d6879617fae9685b9486161994e74482566e070a6c7058bd1a97d8f4fd309b61987a01753f0c32d5742f72f6fef149bb52d02d5d8ddbac08b436d4f77eebefd86e5efdc0a95c3bd7aadb0414b8ec0b3f20cf621de15da19c7e6a121e1ea58c35ce723475a0a2bf830dee406beb5d17d16fe6b12794d57b812c9fe4b8f51e47dd4fb5f134987c7c8848a72dfdeb34a60d434f3e82b765c0871959dca50f22fbf4c6f888a2f917e4fa13f453a93ef2c5010e1db7f5b490a715baf4e777ea98e4bc7c15ef643cdbd7d422666bf01075b2e20ca0df9b8a8967f56a709b1d33ee01272e2517f8d884d18352cf3441e227e3762e2993f693d7fbbbd8e98666905c19e3b29fa36f2b02793ff0b379d05fb86da0622aca413d23909959d11f86d2e4cf9d88c1f8ab8a8e5d156cac5beab7e7deb138bcdc208b678cad5603c88d5de22792a9348e036ba435bc25eac68fc7343b4569889940c03e5ff46531124c6fad982bc3f42d022dbec6e874fb21fa25b5286c39dfde7fd251645863cc531c56f4435993d31c069afb0149e0e8a5bfe1729206456f367cc47255addf0196a3a1247e4d149cc0628a14b3be7c8859a6c0ff29fa1cd88832322efe4203e8692a6f258ce277aef9ce483e84d49b5b0eec105e61f867b3290374535b44d13e7eab342fa9fda2e0cbebb006f78f68464b8421bd40da263fefb436983e8059326e47b1fb817fbccffff33459c8aab90bc13b1171107d401da119863635001b03114b1bbbc0ca36df6a9b64a455bf45feedee9b6b912c47a1e060c2e298b9660d5385aeb7194084770069a147def5a520bbd29aabcaff5826e2e0b8338458dcfb023f423f4fbc79b202529306309413486110bd4bde8873aad9976c15b67268773fbf3d47ee88d7b6af983b4de1aecfa9abb74a6b99991a6315a2381737de10b012a3fcca0bb0e73eb017d7bd10bdb555164bd140f9116c31b05eadb32ba6170115573d036d91252d210061c864fe17702458e99926d406c4a284a7164014021ddc04318126665fe5ad6f54ca55cdf4ada4aebe2571a05d4bb50f8b6ff636af1901b73d896f45e17ac16ab15d0e08bc7d4911efa702425effd32acc46ca7a2a702add6fb392e3fedae8b2a16b32011d9fc2af17f2f2600723aca90f551bed6991ca309fafc856407738dcfa859f0b54943ee8e743f04573e96f15183bbd20217bd43f42b9470b59804d17cb4908781942be26550387c90ee566556b3a9d697a91228c2f0c8c5da5fd4ab172379d215dbd6a2725468b7767951ecb86f74e24596aeff5a3f6cc4580099065358453ffa689ab2ba9ed285154c1e5f7cc729b4dd9122c5df2f9e7acad8d1b4e1def644784e307716620361d26b30f19fb7453c766b8a149c5f072f65b10896863dc424bba8806cff2b5ff583bbad66322ac6be48221abfbd32193d430cd255ecd8f01b1c46b80ac566a35cd29b45fe795b8c674c287a8ccc5bf47850b038152e5bbf7d18d76a42e926cbc846b9b561203d7c487a3d86f1583fbff0acdcce74cbfae5539a0cfdd3601c51a1b6a7988ea79f74413d279290c16a2ede9f919af6e17e0fef3325baafb65c587a266a73a977d6a2c966625c669300f64f272821c630e1261c400b80a806499e2e416825df593340569621810441d2784645eeed53e2ecea82c9c7a3582168d0737445cea2ad79985afa03ef5e522ccf5caa4b026199ffaf46c167daa5368ede92a50baacb526eb2d806faba0a7e03a3c83bf1a4577e2996937d257c5e12165f9aa70f89b6c1353ac4287117208647329bbac7c3cfd00ab3130c9cc658c4025586d6ba2081c6f4da8f779779127feb64a7bc1770a222aeb48b1ea413aec903306782500019e0869e7e85b3ef3aeed7120947bb7853776b367b1f4060828fd6575a509f7b0d4db1f76acfaf191c965c20b930b2b629bbd8a0678d9dd9b6cd2c784966e1dd702444e00a3a5446fe815d566781881f7bb99d5ec250c98b84b294ac8e20c2dd6ef5c26a1a73729ee9fda988ed3656aa7e40cca438a22ac05b8cc2555751025d86a201b7964e36292d6973afe531f2d015449df05b8565dece8b7e77e8c698823d21ad0b9f5be46427df690b8ebe0eebc5cc3e2740105e12072e3754fd469dcd388ebed001b52c8d0de0c3e8e383af7b9e1be899c6a6882ba5c69719b4245373de7d8c52fc70174cc81326c489f40a7b85b46b26f7fbf9319c9014630ec6f7644f549411ccd19183c21e48b019bc02c4be46751c688e12792baec52e25e3604e5569596c04ecc776762e96e19b03463e8088597500fb83d164cf59fbb0c0d2ea3ab7154dc1e5d8892c6485c5ba4ed4dddb05afcab8a290d8e4ae7053eb50f030b86dbd807e092cdb9747f44e8c22f85d60fd60014a4f7ca305e926f68453fd42c294262769b78fd94246964d8064d1a93d708a9db67e8fe7e004e34e26c6710ca51f57a687efd8df26ff9fdf1f6f253288cd334f4f02d5e3fc767f20d944e968f7ac0bcc341646d523f85d36aecad1138cda95cd09d1870a2c73dbceb0824df1422bd81bd0e781b3639f2e1bd715184c7bb82250ec3bee356e499ae92ac040c010efedb52861355a8023d1bfe5a13ef105bdcc4b3cb1778b9297b2802e86a5d7a3600a9bc024493410362e176bc724078dc6c8b623e60e2c72ecd9a7e831170f74f080565de2962c68523bd7a5f1bab619f63165b34c96cd754bba5e6491048fc6e3c76bec0ed0b5ad4665747f1bc8a557e516443e810985977803e46a42fe9009135604ad1710642fa4ab04ddbbe16003289cd21b20e1ac6625efa165819da10e36e225e213095778a2e19b272d0af757ef1fce79a1095df5b12af5d4e7361c6d1fd2fe1610159f09bac7c38008bd1707585e0875e777679e463b012775cd85805b85768ff3844f5bef6e1ee15770de4b60b03064e861af42768263f7101453faeb4f22831209bbe5211b07b3033532944df5d4566fb81dd164d95741d67462e508e6442e6cd8911f8854c56fcc09c420244bcfbd280f0633085049b3d4aeb5f75e1ea7f1f55914c9fca21758404f9c868bbd67297f9c96b7a894f9dec104fcefac0b06abe50cbd5df4a44d4222e0da382cae28b02ff0b96ee269470123247438025c80c4c918f91893ca225dc42c4ed481aa9cc2e8b73864cd8c467370e79c2fc18dcb9758c181c874b9f8c917361124c6ecbe0e2c9f273e04723c2fb6df5675428f7ad4ceef7a498dfdf395f6042fbbb7c0d7d59a43a669189a15558246d86f41da9ed8f725e0771d06c1d4917a0c2580fc8f97253570e3a4b3a7815434191c31647a91747f05825ce54cb09b8868c7dd8db696e7a7bf518f7ba8c4c0013a2ada1c98898e56355c5ed53d973ef6d0f24c84bf4a8f8e61b3debf4c157472908ac077f51dd9f442c2a3bf3c870ea3855271bcfd141b9a07d8e494d085c1bbb613c9931bd0e3a4d78ffcd47c14b7c192ec4af7d4bbfdc2e99a389b5678b2b9c5b607a33c5fd446d955523dae9a63b5518d90ae46bf3534f9347398ac55c23ac2a9552d1c7c8ea288864945cf953c3d67bf6f16dd3efd4c522d84076de44594479c31ec7090e5c97d1bedbf07e32f6300d158c90baeda3bcf25ba69ee18a32e01ac07a576dceed7224efc68f26ac3d4e38e842197ab17115373b122fda156d2f6cdd45cecaab5c1255f71dcd090f890b73dfe965baaa0b14cc6b7ab1a5d93876f53204eb5dea825418bb9b5351102701b96cb3a672ac8cc1f3109e276e3817bf50976355494e84f2855444c0c89978d5108924e1f2fbcdf97ae812d5f914352d119e8d8f715aef3738df2d430c2521f895728306cf72d0d54069a0f33c31361ad0cb9d3a4a795e0445fdd9cb467fb6f0f57b3d7f1213245dc2be00f4625f104a1f4bc03a63c1720b5ec39cb837e1c6d938c8dd46d2fb01e668c1de7869781f95445d36bb9fc323f4657a8e4b6fe79df596aa89a2f18a4454559810a2f39c4b0ce111c08426d529027dbb73baf3b815ff7f6c639cbbcc00adf4c1f02454124fbd39fed262b77d8c51f771d15a12d5e2a6b839b18b5be3ad8d734192e71d376f10a232cbfe7a1cc9e6e2a27394626347b10a22edf41d28bb20b566337a2ff5735ad79addb331b79864cec11bacf6eaa7e2581e4dd892c3d5fb9e6373e070f34f7faab687b44a537c161be62e816f23b331e2c4db618e31b2ecef33dfe200e72c4379f1cf1a088bd1336aeb9008969cafdb3e656c558442b3e0194d264d81725db45cfa85b1e08898cdacbcc47589b6611c6e53f872434b38cc93f6ed8c4aec721ec57965b05450e1b43270792dcf49301155386688467dee361b3246d5536b3ceaf89db1d6f55951dbf6f61b5989ae37091b22da2d8e92968d5e3f1436da633d3844db4dda46b27c92a7cf9613931cb2e34c492c7f553eee385681b6f12d0151e2939c43a5fd53c400f889c3c8e5017d953a815c57a92398e85c71c2e3bc680878aeed8fffc2695fc744ba7a88d4fc4d8d606489970060263248ab197525ed190b7b17d9de1a99fd0edf742b4fc5a7be1d5b0f183dbfc1f7a0e1a1f897710800e2f7920c1202c2c89aab53651da5bb3db913245fed16aa4c95f574a104d5470590aa9f13ba78c43a7c9424c7a8075e873224774df7765c315335a668d5fecd34c688e4d38295c17388422b7d71331f1a49f816ab031a087eaf3201f2371db057854932420731a39f75f34b0a7e32efbb9f6d0c2eea8fb1902d04e6ca79ba12648e99e2b1264938950f90fb6e858de8cd4620af6aa23fa410c6671a0cec872707307bd1b9d5c044c37f9be1ce1d8de3d060cd11156861856c6f4e18b50c3d3c1c4da3aeae127f726d1d1babfe2331f1c7feb1b798e688cd21103ca02814ba71664d6b741e20c0b19dd3cd8d46c4655f9245c8b72de995f3955bd4a9f7d4b0d569c77255366dea8c0b597844ed86372f6f96e84096b443a7a5713f58b9a50da02693b2693dd6e3fe53bbe84222003fdbdddff3c731d19b8af83122b47370de0b006b18a1233d3f7d9c652f3a96d6c086f05f9fa0d342c1220f0b4f247009e3c71802bff555c767a599e5c4a7c6bff03f4b40de512328a50d841f02de5cb66ed007703a8c25cf9394d171edde0a679db15c63d1ae3a1f35c4d954c9897896debb4746a8938ac0f1b719f8be8ceb8c3ecc3dbfb2256aad4935d88257f5534ae1d15b1a4ac39ecc1e95ac9feb550a46905369c006a88079161c3c0c7cb44d63bfbe44faeec355164a2a713c24ffd175a968334d29786e952846b662a9e5c26ab7a41791c232cd0aeaedfe05e950fb016b37d35ebae621522b6d66f5883326692dd828ba57761f40e08a4fcb7451e0da78e2cd2c399fc26641a0adb12043a55a3e7968efa88c79c671bea98d608d500a40444c2405606d32f94cd490e81b6e1eba7336ae3bfa37cb3b7fd76b047a2e142bd79a3f17dcee19acf447ab0d7b687d64a8402eb15ef590f3ff8c1e999f14bb9f5738160e163d59c489e92d1d688f0fd3da44a9bdee4f8508ec8f024c137c1f924b33c7cd443809febf09578c919419f71c6aab624bc8272f6fc3089e244bbb19e5dc5b3ca6989153591818ee1716f707ce5f9aff5df2fb1d5d908f96d32471dc15952387e732bf9bf54093a44a259f14a71c2f36a3a4ae07a37a07ba8c3a6d0a0a2accbf4c002a20966ae5fac18fee36e11dc256d157c12a83ae7dfa6076cc3ac02cdea06607eaf3123921ac42e53d68300a93e207b8dfa174a794a3473ac8d349879b27138baeabe96b22c0aa554645c273dc28eb5f80643031785a5fcc96b0b469e0cf567692e44e2f3abb3deb489482576cf594118f9260883a5fa99e31e3bc5e628b9456319779f9515732f5416f776a44157e9c0837accfdb8b13d69b32b02c268576a6178284bbd86d6121bb776025bb72d6287628710307f7ad1b6be25d6f70a4f47586d6415a17e4c5225779c2404c75b9e0d423bdd86d8fdc42b699dd5a2a8e6d3110f94287a312498ac82895589dcf624f95926be436319f691d904eecd33bce817392e02a24afc3f3973ed23ed292aa4d87d19e992ada2ae5bec8ea22d0714ed07162e14a93e9b1fcf92f2561937c08df8a163c884b9d8ed4f130f0b0b4f898b770b696a0f36a5948e6a30b2e5cdfbd5cae9a668c8928278ee24334eb89a2a110d712d5e7bacb7855c9ba35497ad8c5a461a684f61d58e0d83ad4a05f271d5669cc8f996fe712781b1399e23124b519a50741df864537f95ccd783fa7490ff9e1cd95a175c241b3b6b40fbc124e7079548dc6188e147c4e8d64cf857b62a42900eec868780f34ad333c3a7d6f46a8ccafc1497ce74cdc54541f6f123ece8c830e96d3e90f0592d0e4da21790926eb38ade6af3e8ddb50bf57b44612e2c4a3028a2be602b25ba415aa7a9c5c1788f456f96446107afbf6466a796a3674ce87091a2d6d8a400ef064a392bbb56f02a2629717edcf352c33fa00c3bbb056cdbc26139075c80048ed9ac00819c96c7955dbdf4b944b8a18dd18507cd7a2ca8f6544e7a3999e1d58a32db11805716c5c56b70a123ff091d7d645098f4feb592542ef82186efa36124418613712136bf40d50d8505e2060f65daf83c46f74ba213506be33b6e369833861f50321305a5344b67b569979e3ea01fb3f8deea325c3cd324d4b0ca5f5e07003ed19eda1651947bbbfb653660bdad97c5e2d721b1cf01dc6dc91980e0d834d1caa91956725c408d9bc266582624091f421d156398e17c3b5528b1170a2bb02d00ae51bcb4ac533fc4b35462aea923df1b2942380ba895e10da889c661bdbad97b069a8662a08d3f736c59a2f4e9c86b78c8f2fbdd0561bd0bb186eca1a8e46cd977ad560216e05a4432bec220b5a9870d31e8de2bef0c4d99af4185280d4240c1e249eca625bc3f1069776b36fde4c3740f557ed53e0ea011fcc9d02446da41c016106b36177a93ea1d1f726001a18cf7c75a018b09fe325db3082021e692a8f424400f9457022d4e1b7be21c81bd37614e3c167d5d55695d17db7a63f5ad47e61e5233d3035cd6fca0c705f3f695b6800583844e8a61ad2fbe82437c22ee9238daf5c176e9cef3a2e57cc138600397c1c530d6125f06307f33aaf8aeb1a824af169348357e95c55245fff791577c335f7fa86c32e9dec77a3a281eed42ca62696bd66cb6ae25bcaca5394b49b4fdc3628e77edb258e30bd521ed7b0af98e085f005a61d519fc21f66b20bd3c2e5ef7ec65793a8b85fee64ea7e3d046b728ab3b88de2ed0e4509d0df96fc580e95602779e6a5388c401308152fb99fac961673361104e9113ddf5ab4e91f6115cb1413066469cdaea37aa78d01c41516dfa85522d7b4be3b273cab65398c091f75c896c0338ea97879c3358a9bc7bf1bbcf93f9b0f59262759a86a7defc745b971fed06e771133677e917a3ba60f172dd5784a2afed9f74a7965c87fdc7ba70b78c129866572e67fcdd8c528490b65ff066a3a8154129e5dcfd642de05b4035db37f6be8bf05a1266019de3194bc47d39328dd29b85bfc0c77b83e6147996f732ff3eff3d90ead7b9e7fa5f61116943a15cabc6c89b9d45e514b71685c99a3fd87e56709d73bff97a8341365a6a2c6a91b99e3d6d530a423d45cefd357b8242cf4d6b064604a27297d2f1dd4d1f40010233b20d562b6f536805fb27ca9555bc544eef335775dbe3e5d07da10415cb071c7f55389c4752148a6b219508f7544db69c993c9f64b6a083f50fddde563d59d8fdab9365e05193d3a99dd26c41cd0a8c82dda4fe174dc7007bff080faf05c9768411cf61edb34125a11d99fd4aaa16d7d5f9fae3cf9a9daaf009094c3c2e2bec4fc48355c3bb914f2134b824d5b4b44c4793dc24b3cb9f681f496419d2c724d3d26aa29f97abc0c21ae3eb1f32d1797c062ab110c4d80df35eaebfaba17025897f3336a81a85649787628ad2e99ace2592de7e096a45e73575f555d8349141f4d2a8a82fae4f73ac25701105defe6a092c45d129012d7a5192b69049a10cd13868a7eca99c15b6a195c39e0119f670a042d8140c57aecb95744229c12fabed7465abc5df77b9d6fa6dbdbba13ba006a4766b47bd2ff159c70afe358a29105e745ef634df5f7901f0991ddec88c538842f1c21564b6774b9ccfa9209f1e752ffbe249c77f2b67744456c6e55088cdd73f9db9c7567e328df80fc63017c2e12fd50498332626af9328c00a022989c7c3d774a6774945c51974e1b48f09737f07bd18c7a9630e2df283a62e4537de482f82c4b243791910e1666b4e4ef12dee00e57e7a34d63e8c34999cbfd6378657cce8ef2c0cda058f7ff09da32d739233d20839f19eaef42f853c902279c72782f72c598539f6de8280c583c7b3dd7078784005abc0a2a84695086527356cace5654bf2938a6d0dd05d200862c4cf8e42d922b830bc5a145aa33f7c42a697bbd3f9b2e9fb6f41bcd5454b2461617649dbf11cd36be169b181a5634ca2cf5a513b68e393eb294b15d91f1c4f4f087d396599045a9b6b206e9aa4c9ee1972c7736dad60dd633f5a4b2ef701c0242d89c2b0684999b0f12875bf25e7488cc1f8ee99d0526bdeb5e70d5c2614a380bf6b37109623baacabfac0cd90706c8a651c262a75300a3b212bc67cc9fe38c74167739797b350ad2944f37665b5a7049b4869c3306dfe45f0d915eafd0a26c3f69c2e9cbb17489d38dc3afd002cadbb72755da209103cfd48a4dc5f5484051b84f47e485696c72abd423ef3443507827ff01a2ec22ae241ad18da150d18b7af80455120b562f1918a41e526b5c9ce101fd5a2808ed566dcb5c94b707fd876d00a4a8508de59357bed32bf51a3670a61a207559c29fd7b1ab903ac3add499628dbf5b9fda63f5d4e197d1e9861cdda2ac4a6bd5c3efdb2ee1be59d9076631fa482717c8ec7e7e56ee79caf11d26b00442cc6f20e8ed5dc9698f8287b45a42001f85757079fd1eab07a98d56444544a566a26899c728801486746e0590de6b9ae872db5f44c7cc9f8abe174bb84741391669e256a0e56b53396dd9aeb4c67734b0d314db9d7f93f1f1c4309dce382833da887a60cbfb9432e8923258261d5f52109b4d89cb322772a84e9f5b0f1f8e556e96fb15f20daeb525f0907ef0ce395157788de2c9130ef5966154a6b11c313ef105bd48b8eb896a636700eac4cc4c1c95dc629a56c125d4e8a7ef1fd14f8d7fa1a5226b87765b90f3fe66da6b2781eed0df502d3ed94854c9dcf1474617d796d0d8176b6f5faf5dac1996216bbf5bc2b870c8787d342ddb3b9c0bcd881fb339c65f5101494b6d0e2be3c4523a5dd1826037bdd893423c71104e1593fb5f1bae9d0ef93d2e8e6149a20f27af8c190a56f3985364ff65de617e7c1ac6ad0575081ff0c0c391c0a05ec6a71f1382d3ab5ecd8e81950ed565dee7bd7e003e4aa5d25b21ae7179f48d39dad42ea445ba280bac62e0493ea2594ab9fde290a9201e4fbcd5a0d598c691fedb240809152e1e304be481cb03b99690935b77b0cb405c279c9548c2356c6792a14cdc499240df784865bf1d92e34fdf74bdcc8a7a4666e0141fd6201b3554a4e19fcbf77affc920408415c67e7c916b204fb7e7fd3b06752e65ced1881e65835d1d01bce7d615e4ce478e1adcc0fdb7e8e42a0b2b1d1ef7c82846f44abc96bbfb7b2f727afde56ce06c6e7fb37d7d75b4c4a432d84a04089b7d412ef282d1598c58431cf358bbe12ec02309a0038a46f019c3a75c2dcb5ce9f74706bda09b3f8dab53973c64e08e16014cd626ba0aa348d90ec17701a0ffd84dcca0eaac6424472e1b5d3a3b40bb9d90a8f5bf83c8d517644142171d7c054dd42c3418c74a54fd6da52bf5151b65c663ff296132ec0afdb35e614d0d915b91537130512458b676e27ab5cf1cd9b96df60f3deddc2fd65b2c54a32004c82bb8e0d6d42792aa771443d951e274097a939e9b704e7c3bad47e6c7469416530a70ec415196f5fd748dfafcecbf289c4f10ecf7ed439d78f30326ccfab931b8dc64598407345226ae3b2500f05093284355c873abe6deba5b5c679f8a3937bc05bf5b782f633ac8437e58b8ec1e4efc4d0d380305e7a66c0a06ac8bd950679d934f41de152f3e0061a12cf2f8bba002fb95d7728fd11a827e04aa93ca2002b722bff3281ca652c6a5c10a85cf7c07cad0131153470307d39047dfedfd3b317aee9af7493f2386800747b7ddc46c403ffae427f62fd2699ce7fd3d8f191855da7e8ef3c9cc1500ce705e732f9cc4d70ee8abc103a4ab614cb23e0fa1184747a483f04b298a77e6021d0f706b41ae250502abaa1ca009c4d11d5df44daade0fcc894dff1257ca3843317d3dbfaff9930136262871c8c282494327742627eb0f743a0cf5b4034c94b709906cd7790d3edbb441e3d7e3a1342c62c984c785af100c5f7d03604ecb590ace55593b87c4d115b13fdff73aa13f8ed3517d96c0b4121e873ffe11cac39387842d4222e121e85b884db517e3695b0ae68aac661a0f72a92432de834589f11d22aec4dab96b234fd8c50617ca9d4c17a5efa0b2ebd419ed415cdccd6d09d656f2e019e22689ca9920ccb1ca50c977aa7ccef6b62ce83184ff9f3dce645e6589cd7d58c92c3f4151913cb4f3e90043f730cd9d877a9319fb43ba776292c9e5c1eb0c598e87d16e65093fd21498c888a7cbc13c415ee76119214b6b961931e1222cb7b22b329545bdc9edc78ca627a5ba2f33ae6401e919ae446ee0dd6a227ef2bfc1857c7764eb8a47c1c7bdfb95b981fc13a9f6bdfb1a130f18764423d3d03b5941f7521c8225e45b16551ea40a950aaeb5c8fd62a867a4be1258c7df10751bfb297bbcd97ac02263e1fe4dcaec937875ff44f54a465759c4819476503c898caa6a6dbbf5c8343f913361ff45dfd12f1379b7a3b11a15b73e71e1fd792031af3d7bae4d0d512db850f44b816c2e4375cf33baf9f21956315bee08e957972ebce631fd9c3f715c4da9cdcbb9c4348ae8039b94fd0ab058af265e67354fc3d2a51e094a807a212e086ab9b4ae4b72a37ad040840ce141712ce86ba948fb95b9dc7dbc78b84da40370f4a5e3ababadbd546492fa164cf221e1b7f2e008cf91dc3745e0e463c7aec25f5ccd88b4263736ea0b89d40d77b941bd1c5e21bd6a32c292c88242f94a5c2c8c9f102ea1bf4db0b063d356545eae3f0944ce3a11b9c48b6bb8b660e5a2b2397c094291ac15853a43af3533eda8fe0d46fbabb38b62e2ef82f7ab290d65fb0ae353ef175c9250a68f315e509473e14104f2f74ccdc03540eaff62ebe759ed106503195f5370ab8bf1b992ea9631ab557f908872d63e828edbd5ebd987c2c95afc5a7e5e3e70f403370edf6a11ad691c04e17ddc5d57d155d4bec57c6432aa5808576b170a18d9e1709f817af93cfe6df4bbe557b597ba5d94bf701599f150789760bf8c5b0bfa890aa9692575a0925ce6d1806578e2accf45f366460c36aa728333aeaafd7d0e5bfb9fe53c0bb54161bfb10c3c2ea1786212cd12981636e8e5a1669d26f2895588d61c427030896310546896fc69424cbcf08cef7168396830a0672d97fff3e0a8c403e05c0d5ecd2d586fb4d05b22c952e785ae47be0ad6d77975a86cfad79fb7123ccd9216139d23e50db89da70faa5186a7c4debc57c3fe4390e1c1a2ad0d567eef383bf2b1ef555bb773b9ba8bd61832551cd85a3fe6aeeb2ae2f5169547caa6756ddefe442f1856e84f048630b83a3203093c800bd649cae8b7b435302bb7f5cdeb5bd08e440b0e0303887551e588dcb37808d030d8662999b5492de3b7d1ce0c5b1ef2817241060f0f9b1208c54d33ecb184dd8db00eb1338f91d4016b0339a704ccc21abd5374b95de5026e9869708ba89bcd4b57ec6ead29af5ed9dd1dc90e863e10758747f71bfcc6159a5e64d540cf40ee666b39a3f3c8d61fa303b95af656d098bc6c405a9f37079bdb649680382d9e03f30fb962329d39a507f1ca26de971e60ff59488c30c22b58aae49f90bfaa96ceaa09b8774a2c545f32f70038fcc3b826e29f1b7fe5792584fa56a4ee8c5c0e6bbadd7ed5a45dd4ca9839fc98c34454a936fb0f19596e03e06f2bcdde9a7c31731d5ed41dcb4d81a35a04d261f51380e822e75ab1aa07a5a977f5f33cb122e213151959af189fd27f72af0b238e5bc97c12305826aad5559eb124b104196ee2848629b1d5e4227d103c570841b7e36cae97de5e924e38d656fddc94a84d29fbe70d29f9bd30fe0b7ee672c88534d3407b59c01165130e40c4b19cc048d1ef810bc3a7bf15333360e6bb920dc838cbebc85e20135d677f80bd59864d6c4c0b153ef4aadbc98d6c991f87b8f6cb0e15aecc316139dbdf4bca34ecb3bccee9eb2229e2142a04ed23ff9d4a9d49f0a496be94f75e02da8dd2ecbe1246fe3fa92b1cee2bd43a4325686a86b08b772b507aeda132bb6cc50a8a5c61744780d71e49c1776ce90ec4023a95530a472b6c8f711014839e712e994da6ba76c19ab044f20ff66cd6031809757300315d193f1f7352030c6146e3dba8e75f94e1eb14cd4ad25b9a81578ebdd1a8c5dd0c11a8c2d3a71ded365079ea7603ebf3caa140c12a5cf3183ef1c214684794382eff90651cb76a8dc94b9aefbb7072d776e55bbca0cddb009e7702be566088d5b9e7514d2de44dc3b218251e98f82477bc80b305d5b2f3da1b614c31d5c4791eacfbe4a32365bdbc3117e5e9e865baa7f70bb2823e75e26c084e64d48d551e6fc2a65b8d7826a93f6f137f61e00da6b099292f9fac88fee364bf4880bb5a5632dbc9c9c91a4f3fb1af17b9eb3ca96e6b6d76629da99203419afd792e8b68ace884291ee761dc0ded52278039eda860300d2e5dc8947e88cfc0ae192bacb8315e6f222b5088d28727cd00a79299cd6d5e540d7faf9ca9be8cecb9f0a71c4a7db1fef1eb7ae64b6cc5650b068ca2237760b821a8847972bbb52f5a694c19a9b52782d31b4bd028903bf81fac1b116d84a6d3516bd094589b354a63b440d3d1ec0a7f54b3b8ffe2875d484878d474fb0f6c64723b3b6c18389917d4784673dcae1f80317ff5119fa8c5251a5d10399557a715c19027308bd7ed2e5b4be698dae6d36dc84c194e10b70176532629390a9f3646c084b0bd8ef674c79a662c43a828a67c4a334430dbd8412d7068ac815d2a3f16bc6aa67f40ec836b2cb63ddd45d2e04efbfe0725eef615b818f85237fdf95fc300fd955011a5dc4c0d9be4d627ba87c162752c02c9f2ac5f318484fed44c758aacfbc2a3caa5726939d8f795ae050f7febf9450b23993e0c009f2b807e1f65fcb9392b30a0a6198f4867c59579ca2302d4c95962bd3f926b16dbe866226b0b9b8f097ac07d02ae89a6128d2cc8bb35ac478f12ae8a8ff88415c86cdd0becf8e8bb7635b876865ef19f7daa1dbdb7bebf07f29c32be48908216af2a59263113bb51e8fb44db1b6feb0464bfb8934fc5066ddbc786dac755676af2beaeba4ee7f6997c69b15db0638016c7413706d3cd9bec89380fa9107e374f669995e40e7151ca9ed799bdb3898fd96890752bb44fd3559d418c2f2d0eb74d8682a3c7d6ada1408903c458b0ca354476bd8274e052b40da850248ce84a9e502690a0da88761e2356dd288acb287cce7f96df436205967c37132a17ab25864afa9718a794798b7a2d472bff9fdf4ffaaeef637de89a79a6eef60b7a2f139d2f4431271a0e2cdf77885ad1235a8a9fe757bcfaeffcda0a2c5492508b69b1d401a99e435c7e27991ddbc2b4cff6626550f17c212cd2466beb73afb165ddbc1f1ce73da3c7071e0f8fedaab25bc2f913282f984912c625f95c87d8283ce2257b60c381806a9078ce220483c11e8f13e98c26d15a9b3094f94b2426b470f9069037bf3572869897da53648087cef6e208253eec718c7f5907391e2b7711e619bd4c723c12990d148aa6b7a74d1460582c36b41c973a4cc3df91e3932d2d32b51f2e2ac2f28674f2bda29671be5282dcbad5575f010fe80796ee925b906eb1aa3911c3d9622658695098051ac82dfb35deea42c1dcc7a2292e90ebddfda5170c6368448e78c79e2e182e26bcd17c49d4126534fc1a1118f061f93d7f8b853d774e0d7e4dd9a8c016655c2335b42c8ce0c04631b9eba7378ceda83800a7dc2fc17c6da865d64c59c5f2fbf95fb11d84db71147b5d79ba68df06f38d9a16d23df9e363589dfa2ee27b28bca702f96354384684a85b3c6cfb2413410e3571d025329d424f47f0f02331a5beef3364471d867533eddf74c77cdf176bd57c1abbd80fd271824f0d89505794ead96bde8ab8e6c4b28662fdd545aaaea9b05e6a9c4c61dd68f919c8b3a3a14ddd6f4aa9e447b8fef4ae44469a3f2eb73347488dc39090e00ccb26e8f22bbac77697b98677b6e684ec13632b137b408df2473f51a98964415ee148602dec845746b9e428d119a5d502b1f3ada11f3d0b9219822df6e4c189617815008bb40830df1264b403d80c4f7ee9cc0f30955e36f0c51a1bad178f4b22bfe2c8d9b457974c4e41433da4a06cf2b5a1c1372a2f3719cbf7ef6e9e5db34900e91f344da103c9f17d3de45daea7e5fbb59d88549f0c28a45f42f6f778cc5ce446f09acf7e09faf2721d709875e8191833adc477ee03209e00d2c26f504d3d6c243874837fa5c66b275f8f1b718cb7d0cae6af01e5b7decd15e0de0ef5be4f9939cc0fb0418d0ae140efe156a99c037ce1c6d58d959e66635f9906d9b06633a2d47ef71cc90b7cf6947abf57574f10934ba7f3b5eeb3373dba38ae3a5a245b4c57b6cebce671d679c08ea0531295b78434bd42d9378cc755c0baf9ab93ed632e1d825ed489efa71ec3f08b1e9bbfe006edf0e42a6f65b6a9c810197ef3ae22a74b11ea21f90b6b31a280e0f9db18185a2981dc5d1fac42711ed90e51a73b416a37f2f6fb4a2482365a2d8cced3676ca0039440911d5bc3a498fd2d683f702950a0ebf4a5010c872fe78a57a0ca4ca0ced8d4d63164cc3a1dd94830c14b0403a1e5c785c7b0a2f15810602483e4e0c938745d8ce9815a031e35ad28b625be7039dae6a6f604396a5bc90bf8fa6c1b6e42bfd9724b6491775c828aa185758e28a50792938d338228bb92c846d7c5b08f5e6b38f9c23bd218dc9d182d449b92532f10efe0a8775e573875586a95f1d637846d21668ee4ed1d40eee14563794340ba696efa80dba62b808b6622d4f4f8eedb11add00fb07131bf430cef7c958948de5f33637da2a17c63dd7732a3ae7cf08d561eea0d9b05a84fd273dd86de3801746f2f66644a755a01bddeee88a8b357ec0ce72c47b24dbaa162942f8d1de51460aa63539af4ab9907d295f327c85449397e186edf1129e4c29a8bdbfcbac0292d169e8a848a68307ab47078e4cbd9430efc19966d9b2dcbf714421acf19c5478dadf4afa680720cdd137021e7519e3ab45ace30ddf4cbc683b01134b2ed1b6dcda1f3d17cb098a8a2c6da19243e3bef13fe0528d3bbaac9a6b6f6438b2cf41ac46b9dbb39410e2b52a4b0235795a973417022781a7766a2def8880e4f2f2e491e87b94bc46f8215d72121c821059b7db8cf3b11465a3cfcb836b7e50dbaca52fb9e60f6ca37db8c25fdf9a5fdef026da7499bf96a2b0d8108e8b9df9e0259728492c05bf82d19158ffe1c0ff999cd87a66d9cd871faef1feb8048097ad59c4b39e13732047ed13e91e41c43aaa48a4b7812e78eb33db1d41ce405a43aec143751f5776af68b75d0a90c87a8938fa0b4d9ebd9e568c793a185376504c1cc5c43e813328ad4fd857fb85c4fb726f58ea6704809fb6ae3577fd4de49323bdc45431e249a0c21172654f97c91fd72a875e9f84735e9cb567b3fa99c614ff283d433b2fd46ba52fe76a1c6f37e68dd5c0d5875e78d98fedf12516c5c37d80f2fe9094febd88f6290c3500dd9e28b552ebe595d77c7f70d35d0150b01a33d03e59965ede7eb5d960a8d265690098ae632ebfa2362967395d1d25cb927d975d7496f4af18c94075164104e654eafd66ddeb379fdd8b44b86804568ba39709bc48c3b575b35de5737c8aee67446182b51507d0cf776d62984cde92898592c79f31e7d1d5a110c9f6b57fe623eb3874843130b1eec24afde877b3e2143f243d55454e72e15caf1da45a84824b5c88f89fcaf1ae836c7a9f5f649e3551d4e55f4f31af21494aabf98f1c2a64773564ba8e1b46e3cd633325260766d7bb2bf941b3836716c6f5c0890bcc13280aa2bc91b69a941d5f1b329ac44c61044ca9cc633b8d0fa2ef3045be5460384f42e5ea74628cb0a5a497be645c3b7d78169e46ebe3adf8228bc35fb66b7296152d890d2afaf855dc63c1ac74987e9fef41446d1cf24ff542e506d9315dd19ddbe7dea55f82a14c5ec420f81fc7ae3c71574a33718ab07e754911fb492cc867a5c58613a8b05de58c63b7a222df45e251d7497f69e1d93860161dcb530f9c5939f1cea73040e71d469edceb0ffadd04b4d216bab41cdd76667814591a19ad09986aca40562eeb2813610db45a040c65a587d1f1d0e7c4a9906b658b5de48967cd1897796002813e4cfc65ea02ffb56b0d3ea04a85e3d958f5c26a3b8dc3b3735c40d892bfc473b38278badf36ac06daa1d9363c6b2f4db6c4ff97eca4d1158f78774ec746acd54bb5f85623bb484b4c6d5617125d8e5791f0d8dd171d3a946355086af1c2fdb40278a781f59d9a1d11b3485bf5509498f31608a3323b952528573755403f3d2538d5356ab39288fbf1f26f080b407ba134e4bdc8e5a68a81d081442329cb10cd969db1b59615a48ab2be56ced2f09e65c1c27769317cde26d85f482058d2f5aa1aba6b992ca3c7c1529c5005d1971653f9e16b86f7f0b71fbeaa778d194579ad2230c3425cf24a10b9dc849a7709deec1d627da72cdef2ddd866d39a9fcf870e7cea5b3f0c22a1d0e739d45a1cb654b696f54036a1fb7cc96b6b586ece21c5c70456645b606d70cf4751bd18fa57deeba82429a1b4af81c2935359901041c53191bc8868ef83de4b6b5f1e3022fa17a67b45939fdc034005b51359716e105e230e8b4042ecd6c38243ccbebe5941886e7e85d139fd1000c9d6daca27eee61673c8faf4ea1c07183169d8eadf4a38a8bbb391a60333f2260330b6539507ae1a6f1193237541fc4dd127b99e270b977a5dfbe6793f0d0d283523f08cf4b992a9cfd45c7392f1dba7816a874e2597a815371dc6ade55b3e9c8691339255a5966fe3a9df72243c56078ccd3abba45b08f2c79bd63e9bb9b03e2e1e278707a1dc1c881df8597daf517d51934524bedd4dca1226e5477a435839b078ff1f3a0e7a6d3aff3872b902f447211c128842b86c800fb28499fccb0b67dfc5d8abe0ad672f68852dd77b54384bdf12fbd2074dd5de0f7295e5e143ac032e4368a872d6014b5c908ab59340128e2eab8e205f68f5d863665518040d440b63c9e3d87ef1918c486abc39158982ee12097fb95d41de8cf18e0232055e965b515c90858e39dece1ce50b4f04af56a116c6513d8a024e257f5b42602396a20f91bc7c453d67a166c0d6705cae6c1830cde92f1dffb5b45e07b340a95ae7cf0df9fef4f2ed5c628381532ecb0d62a651e85b2f6fb80332c652e5e246619df4bc6aa6cd410462f60aabb98c20012a73d79a03a13a45f7171b8b27f2e91a15d17eacaec05aacdb9496667c77046bd86091f17e60d322d39d1d34e1934d56995f5ae7649de163ceb66840e27306d06e5946dc3f3d261ac484b1c5ed62b1f735195253f30e02fd5a81674681f1a282fcfe043376888f5ddad9bdd34c933c431ba83520afffdcc7aaf7f9c3ee2abfa9b4bee81fa0e9bf54d1289ba2bbb316312aea33a6d2f07e2cca8f89544265461e41ada0588e57529acf6ec74cf766ce8db475985943fa0a252fb3734eb012cab28f1cc37223a17000fac952f995d6029a8f47066c19d926ccab1fb4534e7bddec965b7f651abeceeb5c65bf9bdae07335b0f5df22e853802f4cabfaa3a8c201ead63a6890765f924833fe494f05d6a69b4556d2892a913b007c6bc716278bce915881565bd7879f7ee6e38507f8207ae418d4a3fb32e43a2c08ca8240c4b8320da63587234c9d8d0d2c7d0fe1e34160bca148adce50431de6bd1eae38698b90154f7ac203e720f7010fda85e22154d0774aaade46b647397c14a3c27d3ee3fa3a0dee089cf86abdfcfd4e86f401a456c003e9be7d9b3010bc8ba9b184a1edf3d598e9cd48ec364bcf97bea78544e73dd88bcf93a9173c0ee1b9c37feef7819eeabec2ac82de6e6c04c821018ba56611cb9946d73ba3733755c993f4a152157245e47f9b1198f924a34c0cb5637ef430c8063518eeb565a8e3811e10fd4b767986fc38c2650cfdc0e382d543459366e3e67034b0803d29415deaa75e4c3c339f7228511988bad03c68476f77bb526081b6fb9d22730d6c8a84c0e9c3f1805994b5318529ed5b16c2e8f4a8ee74b4501da697c2ca2db5ae82335c8b20e59c02751a980c554ff2e24c989d07173c5f114fad8c657231cb7feb21759f9a1ed567bab6bdd9776150105b0e5e0e0494ba5181070425fdad1cdea45f9f738dac43fb31f1b37fb292d1e4297c815b304e0b90ab22bbc8464186af3f88eead128fa83d31a5f21d016f88c8a1eafe7ffb3526a15dcd3ef1697005812fc9aba7cec5647bb4c4718baf57fab0f988ea17eba396a2cc8c1024d8acc00dc057dd780dd788f32e1c4670e06ca30fd90609cb234cb131a8995f7de474552e908058d9a9f5782921ea384930d0172851d85597a3c54a1275000578549f0a399da167dbd2723cf88c9d008771e6c6dd9f4fb37045efd631a086cd4485273b15f0ccd1c67391d301e35d5085cd6b6de5d183530b5e4bcff18863ea3e4bb0db7f7349cc2a1874feb5a052566811957c7e0bb89878500d0c82ef809c44c5ef5150f3e9745988595e9059ad1d8e4efe278707ce89ed343f44135ccb75b975ff21db8c0b650b0bcf5ae7ac900883899711ed4fa164351e7d21b0dc893a17545eb44d98216c3fc2d0f9756d0f9b4fc5506814aaacb8b9dcc35b83a7118b0ff7801ec393f1b7d838ce131ff48fbb1d2824574624b64f7f145044c5169574956897e68d6267516c03138c435de0b492f894e63b7dba119997bcce1468ff6a4eeffaa71136fb60d0623b4d580523cf3ba550dc6d84b6b0eae6d05fc100978cdeae15527053283609c1338db5f99ae2abbb380aa59d1abb745a260621f0e5f9966458d4675782fdc991ae2e09878e7e8accb0c56dfe07343afee9851343b001a106bc9825d73ed089dca7cb7d482a1626aa727b5807934beff5791083dbc8b447060cc7d00cc0376aed65ba69036f36f33a9fd7628821d80d72853b75e0fd429417abc14ad3f1c72a7b4182c27c40985107bd7990ae63e999ef225db4a08ea72bfae5de56c6184d9bc6f3f8216be66297cf93eedb8dcf03e42c3a1e7421011258a7fcdd01e02ad40a6e2a8352ce6fb077d3af5a34477234a6b5acfa154a95488a8ce246a588fe66d48f552fa8671b9ad7fbca5f8f0a48bfb0bc4701564d3fcb49dcae315fd0745e2f474da3a2ca70de0ef1ae487dbf8c92aaf3fae973a1391452e0d052f793b449ddeacce06d81f9fa192e64170a547e5738ad64a1529f94171aa324450eb043ab2178dd007a22be1faee2c76ff6788859d5f3ffdf35bebf7973f17dd4d00c100aa4ed4243d161f3f90dfdb50c5b0cfd0e34a867e73523338374cae21c4b443ac5c911c9aba0bf3a950d97a3dea67db32a3c5649eda0ed20d0b7659d32f63c387cb2f48c0e566c85cd649e08e4f5e5823e25eefe28e08e031531a5a5d89100cc86e3fea5c4ecf110a495761fe7b40d640b98639a7201be2fcc51425ac0f908f49e29beb234a01524b27198734cd6436288368f7ae862077cd6e2c525208db3d74fcf13dea6509b2d7f12cc600ce46d2b5c704d3cecf34513543abde71f56232ee6a099876c5ea2768f54953e41186565704ba8a4bc63c6a5130b0d8fb33706f9822b6f0a3f08b231937c82b006f0ef61f79f5d0dd3255a70460bfc30f577364dfbac15a76ff669812bb2247d786ee7915e9dd1d8fde42e031ec3443bbdbca8341ffd8974118c66d950f63eb16314bbcea687c1ff47e381641bfdbd58877c8c041d10c8a6c10336dc339cc2c1f31f586ceac52ad2428092a8d4464d74ec236038fb8c225c33d15f6d5fc9a6325c722df9a1a31ee58545df44b653a54e9e37776bfc3327826029ef37cabab27f00330775c1219a476024ad0ace5f1dbc76c0d5a673a26ce550273cda4aa8053b4ec3461ba76b2b8ec9f6b7cf0d74a736039389de39bd80167520773bf9598133bf74303fc43a8ceda255606d8a132757e27d58c01f2a0613de61363e7b0757dcd09d805c32fc5334ae214abf8a8543cc0cb8545b5d95699b6c2a9dabc57d0dd937a0e9c81edf5324a8618a6e5b0b63125045934e8f1c8170b13a152f54221edaaf390141fe5fb919e7d616008557c720fd216c769edaa9dcd85dca617e414b8ae4e9ed0532bcee7c6051490316d1199e27eb5eed6454f966d0af5ac52cb32b9c14816bfbe3427e0150c5819bf129ae0ef70f242dd187f8f0f15eb2d06129b40e0f99737f8daa80cadf55d9d2965165a7c476e442c9ceb971641b6d8cd4d024d42e322dce958bab0b05214b5b7b42e0dbfeffe92aff0e66c22a85b89c2538dca8803caf4407d932afb5d15870f9a0fb3d14b14e310be8cd52bca7fd181573b1139683071bd9810e8d1345a0ac765daa060f4b77a5dfeb10b732e4d0ca175ae5034865090129801db7d87423b2fc6d50354a53a6388a492dfc92fafa4de28b478fa0d8d2f071b385dbcb03a882340844e4472817d88ea650c13f6636c1f91c83ff97d819c4761a8b5cc5370424222f75c43c4e3690789457e937d5e50057a4328b6f912bb7bc6dd75e9103ef9c8b9bce8f96506de77495742ea1db9479dc9903df521dd39861eaceb0cd31464a025f3f09b4c8ed583de926cd8a2b068b2206ef1b3dc424a0ba52bb85d4c5fd9c73f5e6c96f4d6f38ff3ed4f19aa2531336bd116fe01d15854abb9f6f6776ff938fa2e3102705bcc8a27bf96811e5302584180c981267813bc2d43a110fa01cddfd1f619a6a8ffdb3bf61cc1dbfeeb32fbf4f846cb1fcb4b21fad85b8dc50506b1b0b883f705151f83f78f94e610fa75c37af8136411114fe94288b06fc665027a0462b5a0717d2acd3d6181105d46148ca73b79bfe21aa2cf7e0891f8754da976b0180b33b6dd43b2f61c3ff9055e25c3f11152115c3c7f8932256f0f1d4eec082cf5322c4f3323823b357280849f3a6888066b9f709f396a9d1e1e59c12a90e6726c73f2a505ca9ef24adc23172d4c4335bb5bfbeecdeacffabd8859310e7bbe75dda4b2505332bc62c73260e65b1f9621d79772e2b2b8de93fcbbf4241407c351adad0edfddb3bd2780604536382e08b29c65eed20a0113c60e47668f25acb459049928a6a7311504e2d6c484db5fd9a9f6f50b0f45e3570e76bf51ca067964afbd3c5c647f72e36caafb93d598d84597d07c3b04f425ab4875ae567543ea308b42fecc22f624ae4684030453a65c81a284c607e18d826e70509f47c230b7f11a24134622cffd5ebc27f50db113be11849443c2fdeebe9afefcd5391f4ec443fcfb99046e13af1dad52d1550459f833a6beb1590db7ecd66aaaae63123cfbdb0385b904448de878adcc7dd892fcf2f0c9a749ad9ab71d959f7845f5bb5d3987c66de6d1298bba6705abf5bef03014aa2cdd9424e1d0710bb262ff03c80363f02251ef6de72d4d25609de4db48e53e71f54b4fdb31376e47a18e73856423645d69c29e79aea25b750cff543510a7deabad0a6384037c26380c7281cc3353901f83e8b735d90324d0cdbcc244fbacf4f65f30b58f5016be0ec61d2032c94b98cfcdae0477803285e1a5f4a7f412b89485c98096a76b21a16dfb54ce34732ed2ecd91f29876d85ab8222d211ace5fdf65e8d8610fb0eff3d865db67b8f1a643c50af69009fd0bce25348c36eb2e97b3cbe15ee96ba4ca76ed3d00fe79f3a641ea8d37687482791241d70b33be7622fe659a8c44112af543036944d6b00b64729734441e418f5b694934482dbea5a47fc81981aa6afcc8b536703edd478351d93bc65b816616f93bd4b4c43826f464c2689baa43174ca7ed3fb14255228844fb5316a40fcdce342d7bdb8efb75a824333bcc4a6d1eca20076b2963614ce845b881ec7b1e1414bc3097c95bc3387ce8aa7cdc8aeb6700382e535de820b03bf67bbb030a4cfb52e7233d958e7dd85ffca74ec0c008c74d46a72a8f4bef6d9bc3744fee21911de1fb98ef8e25f24f7553afbc6148a340964d3ecec090cba072f2ad5744539834cce35f96563b2b2bc6de70839c207f032826516b40d2a2b54f710a8a6eb2131cf559c63193ca8b302c75a354232bf9be51220a423269715b4340a90a76faa07b5d82aef498a91080872840829775b2086a1afc9bc46eee26c5e3be1586d21240578c198e38e2abd225ad8bb7d5c239b48ce41b87006f8cc7873039a4da4f403ab2eed0f333814da5d691968e06196631aa9a3606f9a347bd4376a0206520a4c8c1b8d444e5750175982492c4bdf89d24dd52d1f8d3cb2cbfd8824efd4519ad28fad6807c48a2acc3677705f1a12fe4b6f53f39d678262909c7c30fa12c41412916ccca5c3e12ce589159244d6012a27d6628689dba18d45ddce0e64b5cbb4b3976d415d17d706c7a17e53be19f408b75da50152ba02135f8e023d3ee42c8d8df96ed6bfd7c44a8e064ea396f2d667e5ac3aa773cb398125880e556e355d7285346dbd497a7d7875f867d4b7817e28a6a2f751e66a2ea3c745ec35c456718fa9780e53b7194514533c124ecf53ab48968c7b4eddbf27901f8d612c3aae58d233d5b6fad7d5a261f8d411dd5a137f93039e2c8b7d5f5432f536a1063ce604aa9ec995f6437805c66e1c7121c18a5b32da8222ce6b5a8eb41b39f8390cc3553b0783c1c9ea71787e895b05bd0578e348081b98c781470acb4ef8a92be3922936439ef0702c2c78abb06f1c982f8b7aada53f046f8ef84dfa3c0d0510e8b33022412264cf907941c2cecf85457ee5d46fa9ea8b2956069911fc31bf13dc42d51734e3957835555c112c46ad79df19392e0f96d1996ecf706386835a361cbe469bb572c3fd840a7b0050e7959783fe38711a85865b0d087b9df36b19060f193976a8b090598f19da4431aa3a82c53b69670d2cdabd41b5e7917a2bab4bce90405a90434348fe0bed047d612fe8df936375e43ce669054015932ec1be10b10a6e931e53fbb60efb8fe5447da876214ed622673478b02e041427db05ca63312f0e2d41004a8b489d5c6767c7ccd7d6122a90a89c616ed34b92685f214d1af3193d4b728cd595d634852b4f9658874c9337acdcd42e0c1999e5cd0e101a49bc4af2afb0a2f053bed956ba8b06a57fa2ff26f2860b49741bc3f453552ecb0a8bf53b2f2b119ed5f1a6e88b7a867bcd69e6a7354ae25ebc1ac99b12e2ad111ee14c7d9791b2ba28c5e6cbf32ce1bec6412dc444a9ad540a4a8a8354be60332bd3914dae72b72dd0ca7bcc0e5ecb68dac5372fd9bfc919eaf697ef49375b5c473d6bd6261862f8cae14c7d204c322f12cfe3c9308bc79d292c0b46ee80a6fe4e1099e244c7fd136ee180233ca1ce5e871099b6c5babd98f5231c35e0bc3faa026bfa0c7a6a5048ec9b4e9518ad83cb8bd165d4958df599a65a84d43eafe99f60b662aee6b1a903a486c9542f2cffed996a36b2cb3758b6d49981bf71d3d1921c43e1ce0f8b4cf3d30f5b79155d405a2fddbeafe718aee5ce22d9d367ee71b90917aea97e24b0ef597f8e622502e4c4e8968d4c3da17f24681bc5c5de25e2d070ad6baf29fc5a8d4e0b9b2d03b827305df725e8b3a1c4948ad6243d13544e186607546fa6ec4c50fef348aefda92f358960616b8abb484b38c9a73dfdbc1146491977c7a46e04e34f31a2205e895e27b51921ea5f298e07a736466fd0cfb4d93a4529bb7d0bbcc82bb2fc8c749724e6d27c0f6013c5432ed8794eef88a1120d0560e037a6ecdc0ffd67d94b4d6ff5a88e3dfdd02f693d7251aa0054bb2fbf5b596c73dc7387fe973685802e21d5611fc1b2d691c2185136d91db1ec8468f2eb69d408087f0d8b7f51b37fad1cee0f770f1d22c7451845a72223756aaf32307a4e050e9f79b39cde4b44f8837205ceff9bf65a1d93be3863502051ff8840a3ec3c4b50c2f9dc84f25973ef19fa1d4e0bf9f0fe198061353985791eb275c9acee643017e14260659cb8b491d038f7d8069971f4e282321b0b406bf8efa1519bd24c443f8594e0c0af5dccf2960000806ed990b89c4ac9b55ea49d01985803091418508100aec6389b00f31aee02a12159d6f065da017ad18ac0a2675ed017bb8864afb928b0b1673124bf528c0beba546860a2cfd4b6694012e43f83221c5cacd1ce507d93f3af9772b7dba52317cff3ad68183c868503d11396379b37d9ad7426006b07415ed8376cf858cb55b610c1b1989e8d5e3aa9c1d5201fdc9f26f037b5e34d680bc15d7a1a20606efdf4308d5f1e9da64fd5edaf4e74b56b5d53901317065e70c29870fb94e05bd9901cc367242e1ef3a063ad2af6f529c86705700b328fbd8c85ab88a5c6f3e5a734e53cea9dd87ce3759830e256355b5ea4ce11fe570abf75c142b9d22c6cd1496415d3ead376f41727d14d7eeb1525c305ed440a83f07a0fde594a5e08ed781314ded15e6d9f5e33ca0f0f039d50543df49479eb33a8d174f7b4d453b823b539290387094e03f7f3c8d97d9548c4d954467d3cc5c4d4cd66ab9b7b0bc5857f23bdbcc599aa2e1bd6ecdea17830ef4f85713280b2a60cae98e1a7c12329190e441c2e80f01cc60dae73323f7fbc9ec53e92ca1ecb4620cf4a3d5ca1de52ece3e8bd6da055a334f01ad192faeb8c7c53aca60396d4b3cd0090def5945ee3aee09c473acaa0ee61656a9b27e41440d1cde3544131e4103cba18317a9bd8cbafb6084f8497d14e0c4d43cc42f8fed9bbbf51b51c5666804fc2f899b691bd25be79bfd8cd6398a0a559e94720f461e1aa16b52190ce9ae2c761439803efd0aba1fe2808cbd77863db70df74e19d32786aa9c9565a368f55f4840b9ba643da101879c6e4ab922ad2f41aa0c82ddac92cd839d6c8bea9d0117c4a18919ae29a5a37bf9c0904e001b4590fd8829579784d4be3f81e84c80be732ae2e8879a1d5a5318945fe101cf84adab1b5743601314291e6d39f157d1df2fe2689fffb0294e84851b3edb345a4b6d604933d089397d3a15cc2eea3f6a3301054ae3a246b14beb1dd94d128d9f4bdb32dac609e59cd622f61ae36fde3a5a4a6b7cf6b9755f88f43a95ec28f166cde1b77b3c0d3f3fbedf0a67f52694f0680303f9b55eb48f4bb165c7e95999d0805ba61588d27c33360f8c7861a56e2e0541a5f769d3586ad7e3601dd6485a35a8714ccd7773f67baf36bd06964a7ee1bc31f3aa88f8a03e5828a7492e0de372c86f0a4e1494f71c850565d806add5af244aadc92163b710b141d82e84442e0d797110625c498ca0a9985cb4eee87239f4650433d4f3a8db3862efc2146823f80df7638b1fc638400f8688827a253eb31e1134372d8fb3490e7c81a02abd32a042fa1bfc25bd3d5da91fc2dee92cde51ea28cab885ddfdb6c059d12da62d859ed7f51f40bc2549105fda9d5a4bd6bd301932bc4627e4db900b1402d1548a4b4ba95ec193db2a948b39bf117b3bdaec42484a9b946ed3a578b72bfe1d228208a8fc476bebcf93e7c7eafde846a0530f0e3d62508e2d71ae269215f743278da84317a80e325ce5d3421e77eceb8fd9f610266f7a384367d8762b9952b8c93c1f983eb6ce4336f32b8441f8a324c32959fcf062f730e9b9fa9e6e116cc404098352dfa70fa40f3b76facbfb8d5c86142b59aa4ab88b00782db10aa905d99f6a25e3f8a155841c2e28d63cb3192faece4b8ceb673efb097359e89a9fca9380144c59e5d5f37d31431dc4ec974d3a945f99912030c0ac7c0cb767f7bd095969f989f0f71613d92bce27723deedf0e30a101d68a72bea19a297ca151d9ccd7e5903d8679f12e18dd2bb014205a30f37084511bc752afe2aa1cb86d524dfe97b69dbb858751ee9e793f12698e49601be7f31d62cd244eec50dd56ea7268ffff22c2625f58c287ecdfb321dac2d7a8bc95974d193a5f29aa6c546abc40e46270494a1b8ef266d47f117cbe8cb18692826805d4ad3c25e4c47a3029c682a38c1eaae458585c454b86de46a76b83e732b126ef0a2f5515e43c45f32a48439034606c506716589c76eb53ec1406f693ebb9eec9d6ad1759281ed59e0996937a695cdf1ddaee01d76d131850477370e8ceb0121b074d191d68470d90b1833d662d6f382bc1942850c0b0e8277e663505c8f139e62786de4f51ed79d51122d6393058c995246df4fa5f2056f711858c444a3faae7ca98545705a1a248eda913ab23aa6f417ee61f782ebfb6d6114f9afdd8b882eb976435466e9377ee66d916bff2a4224689278641dddcc77cbf7bae822fa892c83243af3a039f2ebcf917802f9fa5a31c1c5c7b18f4602a3a31374f0e8df92864a2fe181e3539616d5cc07ad91ef0b5d9e7efc5090dda641b7989d03706c842feb603903a17b63813cd357dbbbce5c11a27bda53427f52811eedcc275afb606850b343a29d4c77ed59ef1f21f069bef489d0da4890e49b856ed74494e2b59179047763446d81fe2e1e87fc8c2e60aee629ccc0aff496107fa3f0ad716f9144cb44e5dc30955e31ef16095fe7359704b5e21fe541781ac7f2d800a8b7a4163ab112a25f3680711e29cb3afad13e34d623869e316e7edf063faf8af12dc22b88d838b585437edcc00ae78f7de5a3f25676f129e33972639e803b02c65fd6bf2c163d4c8e63da8857b5717f61a403621479227e28884c13d497ef809435e2d5cfe5450d53f1f595505690a8cdbfa3876d4ee0b8688f7bf544d881c8ceda2eded6192e654b42da63c232bf9a528b255e832416f840a56769ad8db9072fdefd4811f1eeac30103c148f71d88931f7d7a984dce41630aac5374e4842198fdd505fdd23a70432d57cc4ef5365e642c80e67a65672fb444f73bd61df4ef66ef1502454a4f55a4f009890779ccd5a71d4d202b4d2034bfcb159e76f807bee50e739c0617a1944d413d4ef4739e9748890a5c3db3e7f475664a5062566d01a45b1112193f54e38b783be66326e114fba00666c8c4b1ab27b1f5edcbe6be515a0dc1db7f7bdffb8a5a3b9eae9c6a66709f51a6ee07d18d37170cd48c58f20acb989800c46237a22bfa374a75e661b909bc5f933ee26911769b9fe642f81205402468fa60f424c8522136aec020b87ebf3726d6ca4609bc5c7d36c83648e7d30b55b348f51dace65c1c371dc3f2ba8f3d4c90f980a7453266785390a335cf0edbc44b051cae3ac7ab31530bca8b90432babebbe4908f6e7731c20248c3cd632561442d2d10c49f97a457258af9d96cfa60ca0455c94e52383ef7e2833922d949d888980cc953f7b11c937770843587d9d5e62545b704d3dc415cfb4834118e69ea53288722cbf35b6744521b132870005ef08661f7a969610e0d392a009afe72672732aa7dc4e995f433361ee426b89d6c460f209550979165cb3de37cbbb12120af56d0bb45f87e64c2c72dcb551da4359678e3c5f575d314e2c87b51fbaf269563ce262cd7eb875bb1a768c7ab577df2cbaa6d5a67cf36f2b819b2223a43440dcc006e51c87ac638842935ba82e7ec32948f0f3ea96fb080dc4f0352bf8bf0f65050e11bcbeee753f126306d7df59c43b53aad2cb222bd8c4ad7b8dc82c4f1403703c9a7bd0fef7084665f8986b3183f8be54f06b79be1ba914518457393afbd25f8a85236bac5b181aca7d5cc4e4c8dc9daa9dd82eb1899a4bbb9ac14ee1e014aa7ca686e941deac3ebce1c022eef08c3cb179333279b0f47b7447c062f728527f9706a396b21e10729f2b66b102b76b8d91dec5d6cd1883326c84ef60a5c2f07e66ae89087ff742240122bcdd4718e75e98d0542dc7f07c80acf0b6c65bd2afd46a434ad2b085021a76a1eb847abdad6677e37eef2ad09a2a15d521ae5bea77ee5e6fa079b5405a19ca99a1310c9beb6da958a35c39f9ee2fa92aa4e22f8f08c8c2913eb5af46373fe845b7af6504034cb1e311811193ab95881376714010e504621164c0c708342341feeabe728e01925ee1a40f7fcc60db7cfd0757de15c49dcabea8ce246d7253fe468a6dfc6db0afc01589e923394804efb8cf255569bc088fa554e42015334afd4cd573740668d603d6ba1408753f927ff91c73dbb80810b52148e985b02b0ce6b7a8b30f66a9d4f4d131e38c19966c8ebc47d111994cc87295cb6e0286f63adc64b568d475fa538c88d43a41cd3fec0e1e08c0f00e36e705aa98b49a97c55d4a87dd69819db39561ff53d10f4714929a408fc831fd9a881ffa6f041a5a34645f9709944235ca9aacc1cb630a308cbb7c4e5df206c6127627fbaa554b26b2092b0eb90e76e2c9bc42bc38fad7dd22681ed096f08d70fc0351bc392fc56dc34cea450aa6dddd99ea2f9452a8be03b582ac9beb4ddb0047866607c2c41f008b5f1b8b05bd5421f55181f40f1a7a9adcaa171ed737fef20adb0e2f6271bf7b6c589a81eb886126ee89a61eba90cbfd0aaa208979e0773ca4f2f1ee54c74b3b8364d877e3aeddbdf65c75ba6d776a00998ac71758f4cf99265915ade0148053eb3151f9089dcc720c37221b87261ab91e3410a7a3914d2f20093a146ba6b383295013a4b33a26c7f193c8dd2c10d4c4f490a9b022f6d3789d24899596812e564656b4c3630f75856a2c47b9c8ec43e3e3b938aa73dd7f7c17d09185f233c13eaf68e980370db805ab73e632e42af4fda9752e95b34f67e37eef50e4d1f69f2ec93640c591c4f69ddac63d9b5ab1c61bd1fbb3bb4bb2ed2da78ede1e568d3bcdbc34f454df31796326ca489d1ad860621bdf5b4fd58aad6e0cde6a3c90236f8b240c2633268725faad983ab721b60e0c0467439c6c5dbe5989717a53227f9d8c211d22156a001dab63cfee4ed1da41109d65f7e89d44190513aa2d16d51c8121a409e597cbf125a25260264a38606961bd7cace140284c39cab135d118a11bb10f41b9d819273c5e4e2b519d31c8d37d3e766c9cbdd94a6c8b4c0946efc3b21f491d363ac130c3b9702bb37f4d36b85bc1a602b4c93380b3d96eb25f192fc592933052a417b0737f852464c06080672c99480cedb896251f098326212aeb5729e317d705b9ffa2803258992b95a36c9ffc711fd006cc2ebd8618723746e275b60801faa6a6f494966f34d679e3d5b2dd33835965690b51a85b59510d8ebc2a0eae50741a79dd3798e4219b55366dc2e664374ccbabda34922f501fff16d64bf73433583662c76b69be73e354370a7b2b1f15beb9867536c60564ab2d2b82948e464e40f498babc16a37a64ee27ae8e934fa045646e7f789f08358016a8d2d1d77661ad0bc182b42861dddfb11270df86c53b7f4ba90bca2e043d6e8686e55034a46683eb96d807c857b8b9adf3752fe7320954b8e16875ac4b0e3275a1013f712c191a13eca543f4840138a601220a52bd8b1a025561d16c1cccf3aed3cbd4adcd01a9aca45b3774898668b4a53b51551584f5db371764c608e8b05400bf3c7cbd151960f049ce84c784c7d99364a11859178ff8fcd40093ab9478506b7d87e5166cfc51fc49b42bfa98601810142c02cfbaf472513dba7009ac3fc1e712a19fc514c7b7054dc73076f9f48687d0400acda7cbdf0d8fcb1b6a3b0aa1728001636f24fad29386ebe2bc99b8a17406d05f7c8eb2347eeb2058f242c4431667003a474def96ba5f0873460a9ae53ef87ea5aca4cf12d6d51659e567cff6cf7a171008525cd6b079c8fccd6549e4e91d179803dc8daccbf8a5240c53d5ff24d6f1b91a1de6e70c92fd1836a4735e471e92be219bc094168a7069741f6c50b0b1a64f681bc9925545417bad3f5b1f33b0923a43cc156af5564a05a12a2f273b93bbe2311d61948163d22caed6d43de98c7e68612a9e57ab98fbc2b9fd32d2774feb244426c5377fdd32281e6f590ab8b0e8a6e676faa9431440f550921db765eeb376d50e56d8327e443f7344d2d0ad0d84fa500c4838dcb9bc491e22a8f8e780a02f92283da49b892e753b6355e8d672802c955aa4a9e37feacc1cdb7ec56bf56314e2166973fe77fa95d477164c1795d0eb4e575d40f5727a3ce01982045a0ac010e90b3773deebbe0b77ab2066dbae169a7224be16854fdc710d49ce464f51e3ef6c513e32578217cc0890dd210f51d4ebfe6aa9a8cca613ccdb9c3f5dc842a47f893ea4577e1bca4123121ef934cb891f73a4e80f12feabbf36f3b691ae117bcba353b716204c60c0e5dc5926bb68fd6c211f6499f91d1d6bcc14a3b587a855da0b0e93100e3ea6be8684aac131b8b0ed31048dfba73d28c6a9c724d7974985f0cf6c9ee5d43268fdcba03a7e3c6e40d73e7ecbe3141c914ea046cafbade75c9f5430de918ef6435fefac110f3f00b8a6839262a5dad08e85651d8b02144b4f3d53717b95a84eeafcb50bf879fe47eba584f6f38b8ac1732456fb09dcefe5e74570224f27c65e1330d6be07e7affd91e160e2ff5c607878c229fb79c18bbb8d1dcf0e7e6677d5e76008b1c7fe6c3e1a1cd65b0768512d2b8b320d3c9f930182db73467fe5dd5d1b731eab509a50c637ee90a3f1289e394ef7a60f1b8154a831f3943ee8815761d6b442cfe24f64737778670b65bc6bd7225c2b707125afc42b4cbb61c3ae7eaa3cc8c4ee88f0d008e88d8afe6c47624b6f9b6f4cda8d6882de1b534275372db941efdcc8c3b4ec15f241dcad1841e705c16a39242cd23ffee912a74aa772e580c69c533238797921cd5111568d975cde9ed5071bdca0ba470d1bff68f010521c3135440a7807078e55ea2ca673b24b83780730bc3bead0d36d523a1aa3f364030b6b0577e06b6802d72aed5652573aafb30b0ee0f8c47c7c69e8221e3122a5e51b0d072dde4af1661d55612964de75d294c30fc71abdd1997c4cc0209ffb0e71e7c738b660d77d01404567106396df553b8121ea48e743ea5798cf3b6df867068435325d9e28b9b053738ef4e81d836306309d713823616628ae3316a6bb5c49fc02c83417c4422086ce0af24fe77799029d869e9b12dd0aba41bd3520cb2fd95d3b6c5abfc0cb29d7b18bbe10cf7f140cbcc0a896e80ce362bf5d2e5e776d31ad0e24ad0ec00dd1809a0806a92c725000c047eca9a776f674e287486797955147a6b41169ff0caf18b0a9ec188d872ca40ecd84a09ac3e747ecae1d892fbae006985d84a94e22a631556a6529827fd1dcd50febd62d21fff8e02428d3dbeed4bf2f41c37777191b22e3062661a54a8aa72b1410dba97628d8de7a242bc657d6d3b463b059202c7d41bf1a1f98e2a08de543917c8a015067535255720d72ef02e8e4b1bcdec4493e173174a0075c7ede4486a05760bfc92c7ba4b356b340368d447702628b021d9ff5061e4edca953cf7d00b3c953d2b76f76f9004abc56609051e4a7f9aa71fe3f12548adc4a5e4609e8e88fa2e0e8050e438b19617491afea6a032571dd0d046d3b0b33dc6a7a1b68af42bebe16a3ec40741fb6617980faa66ff5c7f5f9cc6a0cee339f1e6dab642a10d15c62b7ae8edcce5dbc4d7d109a667cf6079671f6ac64a3e658b8445e18ab4ae6938545ea2cfee9da3b69104c41673f3a1d2abcac40281a43dfad200e8ed7fd6e56f87efb14a9e623a51a2db4c2c8458984e20576e333cb048c7054bf27a36a736075f66e0fa25737324be33b9c84ed818a98c14ab127b500d2ffa5d929579fb5a21ab82ee763cdac024d22cdb471b8e44e21ced90fdc7310c63c7a945e9a403a43dabbf4f26fb458125943f63f56e804a98b4ba49353dedab36d7511c729daf375b326b50fb0146bda33f1c2c339d8f9a6d6966b281a7eb193d5f9d2c1ff4d72cb7aa85ecec2c582db4597389485d751a92505fa370754fbe0fbae1d7af4bdf9e47ae77e91cc48dd5a59f4db3813e874b0da23adf4e7259cf0ce0ebba4bf436521bbdb363d91019baa4b5ca26938698ab06f5351f101381c6d8c3fab2c75a98426cf5b7daa29055a7315ec33d834745f0279d2ba59691218d9ae98fab58c901a575a6b833728d34a0f3ed4f771ebff96a307c0629249e0d202b369ada164b2dc84846f2d7f63d9f0f773403587ef4f856c891fb96a09aaa98ebcdf08da72e6e1407e7ec4baa0377d475dbbb69dae50d08628fe07af92d7dca07d9938fa537eecf97c9d1e3da74120d317776a636403ae04b7b2ea94ac431141898fe0acbe71c52ff0ede58e9a9e53997034ef04b8c21334f7e61f7b520050c80f68797a638b478875592ba35425f4862accd1f2bbec7bacb88b70a17c19ffe43445c8384dfb67dee6a997f5d3465b743ebb19dd5eb95c8497b55d99e4bbe0608546825161eda312efb6567b02f1fdef28eb767b825f6034b161b046ede7acaae2f6f9c3e85fd9b67a95733ff48c2b3f12c597bd6fef1f1dee44b9bf8f786b7314ffb12dea52a503f1aab4d3c75377ee61193375ba18446c7ec0c4096e40265089392f16ee132ea6ce35192b9ce2d7a71869d38967463e719284de9372808d7eec768c8a485fecad3e5979e98a3c75f94d1ba853b001d22166c196737e090053bded43d1fbf7b29e81bf6279dbbcd8dd496d0cd572c395780c9badeaf71fcaea317c00c1e169375392e6a22079415f4e2caaf64195ddceb748cd9238279a43fa9448f334af9e813840489211d41dba5d3ccf4959585398170d756bfb06319df134f00ce7e7fce2948c5e515feaec9967685db304dbac405dfd7011f70c016d3362ac9ad595c3e01fc7b33ec4932d9d7a35bb23b96a7815933369b93107330e4b8f60f1a63bbd165a211dc731eebb2ac769531092c118e6f477d465af17a3a4c26215b8dd7de3a34c691d413d3abdf03f733f76fd591a0546eae910b034681b541d27fe409cf16cf986b978eb938a6e451803271b74ffd8247cd4ec1782bd1d7516222dc6968e5c3747590d785e87010f59ecf4f637a30d91e0a48e0b02a00104ef187e8c09e5aac952293e4ba94ae62f1e1251560066869a60f9e742c9544f8f1dad9dcbe568ed8900c876c08537df4242f381d0bdd9567dc4149a281b457b91b02336be68cda7b383af0c29e9eef7e0101e9016f1ba9e7ce257c4169c9c92cc34e7de20f503ad52f54b6d33211967376b8e6ac50f9bfc7ce1c765ac32cae979f2cbd83e2e9b64cafc0fd79b77c7f6ec3c5718647903780e1e7dc1e82d212f7329a50fc0bad8e9a1ec6412aaa7c517e5437c5c1f4bf9be6eb59e4c2e3cfd637ff7221bf48947613b9a9c1b27f8c75dfa178ba499094d72025bb64c1a59b39246a1bafdaf82ed26645acc4bc3e99c833f4477786f3f880466404a6f2b33bcd00bfb4e25f42f9b6fb5fe32dbb00613e7655eaf439777e41dbe796fe1e6e7e562208621246e005981b290780f0fd77bd646271a0023ae9e7c17a0e01b6b4e6d9a2f5224ae15e941efa339b14bfbdd5f8978686758efcfe8fc87a4ceda8b7def37fe922c84fcf4bc09af9772e2fc9833f394092f71685ab844ad05577976d1c270c5b1a963311e966a1061375337e83b83f6494fb38ebe8fb93e6cd51f03edd2bac1b70e191d5f852e88d2a090c3f2004deb19db036192302791a402a499c0793770b3f4c27be0331cb50e3f274aeae60fe10915a2e62cb7a24561d753cea38073e4229b19f1b24cfba2e0e5f5f00115c70c11883b3c4d6dea148bc5114bdd106f73a5b1952b8efb138cc44ddd7c7e320f26202aa5e2f1ae4694eab647049253234695b19c9b9b32ba329709169d3ab6b5593c24f7b38e1f4e8fd3b228c22edcf479a71754f3a997faf6803f62ffc317941f2fa6a84e8104cb0528f2a08baa7df97bd90a81aa50645a8d7a576b48a454782b34c356c70a9a85138c46fafbb9902a54f2685a7c62b97ee2222c8bd05fd4737c1cc10b1824b6dca198982a0e4b85048acd94f37e198282d8efce82388356c3101faba1b8a931ccd65724080d087d5dee0dce1c39842379e70483168a00d7f1b101008a78a0a7a30afeda28bc60e69fea51da562c99b4457b9563a7d0451000253cad7c110689e5c7c9d628d62e0eec2dd0499a1464087f2839ac2af4015989a66e78483a14c6f45c7baa2b6408387a41d610eea9525b82ae96d386c933ef46012627f7a9a340fff12304c4e14e4bfb10356791ddcec8cb795255058be4ea0743230d22c96a9d8974429f634e6aa507784f3075407281a9520104ac42a02a32760f846c161dbf53d86c051eb788f925bca7da3d4b09060239853da98deffb90452a8c0e66b7406d40b7fe96cee6578b26f60312d4f716096ce4b594b4a505025700d47df3707dd6da70fdfd702886a3481f1bed25e827e2e5a8ab4ee84af13b2b3ecc3df1604e05793681ef4a526d125f35f7091d7604a07487b0ea079db35344492c936eea94bcc7a4da850169223382ea852aa294440da6659c3a30d309cb2f028a4c5917b6a5b7437cdcd13ff8f36d6aa3967d4935f5f35c633623990463b87196956c36f8e560c17187d215c6caa1d749655d3ee86c302d930fabbe76397135626f4e1fd663116f18eafa6c9bfdd4ea70c416b5821f3d001aab7bc8c206de3508d0b2733db53846294c8deb03771d6294a2ca4ebf9a113056d74448100435653ed4292f514fc7ff53eb11f05176104ebcdbb758fbbd5910f263ab5cb0997104905d4b0eb9018cf09ebe8351184eeeafb43874a872d868c87508ead104119117f7f6515701b31b807ed849389a34fcacd63adde49527d3c733d4ad027a971d70f01ba6159924c98dd9419bbbe04856d9cdbd28b2542a5610721423444e9c3d4ef4cd0c4fbd19346f40c3b34ca701b88f21fc8a48c5b6f9b509c8b6623f4adb1996a7a7a483e5fdbf99905bd6be118ef116ac9488fb846907def5a1e56c30dd07d920c3aa8d08dc5a4959c60701651ba71f882a0f40c6fd4c950cb804a05db73a16095469cfd8ee2bb5c7b9bf3b05679900717ba5d65176dabc9634da4928723343a6763388b02e6bea01198c5052d6715d789e92e57efbeaddeb484d78115a6cec6917c6577d5140780c37fa930e14a0329ea3221fb477269571ba94274c5d0d7a785d4e6b2396ce68d514734c3e952e98b592977b1b9c076fd53e0072d43c0c1e540e614d86da5f3c26a5980bc9c47bbd56c9c66e8177165cff8f4641e4944db8c812a7f9b66617703a642cbda0b3e35076117027a175e5ebeb0732b79067446f540225354d80536393ba3e196284d7bc3e613c374a46df422aefedcb64b34a13c74aeed6a282a9f36eefba87b919dd0eac88154c04337a5c10c497ee27db1aee4175dd0d0e24cbfb2a9287836971cd6aa69ce5f9b50959b36f9017fc48b3715e1dfab509c36cd6a2c6fa7fe4c64b103f7c3d30eccd44371db46fc317ec4261641fe80634d647741065d4c2c64c40548dadbd520b6a00c233f42abac3400e5b6aa1769b8e1bfc8b9af935ce8090996d40a556e612c3a4558243436e8868566c78a9de51549722886ae4e98a40eff6a47d80f576733f17a05ffd3159364a186a3cbbfca3fd1a80760c03947910a1acac1228e316485df3d3eb0f9fdd4d01093feaaa7fa05aa9ddc84eb68b4bd8367696c84862a081f93fbbf1c8e7ec2d23dc309bad3fda3c7e00412a6daaa68c5b4df8cff5637366b451a1a951d187f05e5e03c449ce7abcc2051a38f2effe83ef9e5919fd67833a19bfcd4c78a41ee910142a5ae43781bda6ea8bf1f297f967e70a29a41f16b03ea5e177048f50382441ed301f28004db4ff9d860de252c2f84b8fe164f1f6772ab11f277e3d25ca05bdba25272166ce62be7fb8545a4ddd86bfb1e16279573ac55fbcd6d7f9de0f915c1b195b5c04e2dde42d48b3e5bdeece55b64e52c48baaa9dd38847166383c362e3142cb7da27c00568832af126209586449ef7f7997b71d99c5e147edacd260287a5d6a6b7b47e7b233bbc272a7e2acd915a160d5333245a7b20dcd8c9c737c166f3fb8ad6a943d2ec93a00d21505490b0b346d5b08c7fc2846728bb97e5392e54a188e21223b9e4bc1b79f3bf8587e1a7f569e0e3088ae760b29809ef2dba3345c185acae40cdeb6efb54c5d4eba3c14e9237a238eaf6db9f2c0e2d01c416f84860f025e361018d141a83d1aa2eb8743a8c3eadb71f9e1d069180de18286bee0a64f1757327d0e90af0fe54a2268363a22ae30f00f2918b070b7a912f44c68c9b33e7eb5e7e9fb64593bb230e63b3d0a1416cd3a94352b8299bf80d7d37888a27520db3200ab913b5efdd043a91e2b3946b692e97f37d8503a01da88c4904f01d83406ae6b275bbd41bf0159c0b12026926aeb784a58360a3ee46c951f1d583112198289cd7e5cbbaab3016a2fc9fe11103203cd0862fd3bf14e18c5f7bb7f083731e28955b9e1f807b2f41f7d3e0de59ea9e25c24a5523927303f8944c21d99a90f177880787c7b46d841801fc36657a540ce6d88e5f6c0e7d4a34899d4294dbf04bddb3ee57a2cb3cc716ab76fcf780d8e55fa84f0175b7724f689b5865b10ea6c3999735d87a66d7e19a761ec9d7aee9972fa7a6de6d9b61e12794691f40ddd54eef67eb0a004a7daf8d172433cbf65646dd61be49406a01f35403cc5ff546b5f68d48c693718b825840ee01c9d332cef9fae8bd709c3da24743fe6b0e1094745f2c63c6b5ff28ffdd8a6dfce50577793b44a5bd854a0120c622c9f74d0f6ec68b6e131b49a01b40e39b4a3806e20c0ff757ed12df1b8f21413465cbd30507d4ebe370f88a4be7bb2c320a630bb2e2c65ac5b48f01e10d3cc19b56c7b62ff80464cd132b6e08a62bd2217491794514e52293d646a0ab72f77890fffde1a1c256e66c548f68ff2072e8ff49b2c56d4c4c9054eb613ef0aa4bc7557dfa9d9a1e0494c72153378245b2113c020275a9d0d927f35002a8ab98732d6c37605a80cfc22d9a96a41593d7d1ad33544d24d54be8ed527317f016bff07193b7173e685843a0518481f15b99241d66b9d4b09da0e08377144239b56f72eb5c4a33ee3ed57617fc19dbe1a732f1997e9c77cdfb3d73e39ab7ad55b9653d4cac7ea8572ce9f2d58dfff3f25ad71a192c9fa0735e46ca299ed6ec0bb152087195b121f28faad339112e00d33e2243a0d73a45ac03f7c77df21204cf4a4db9a851a9187b7fd6d005dc159bff07eb698e79a6b9c29fc0a64c14072e14081ea56aef813bc18f7262eb5b3bd23443abd776a4a03b425f6b8800dbd09491ad41993bac8ad743f9092710699819bc4caeca1298c0998a9318900989fc14757713593c7d95b6795c94a01f26fb02e2dea2d9561dfdde03058883dd71713900fd2ec67002c77bd249b4b0578e0d3bc8e5a8b4dab44c5ddf08dfb957385b23258b8d5feaa64017f1d10ca0fef8bfe4c9fefaf587ac608dcd6288e0772f4853c9cf67281815c1031ff8cb25cb7d98a8be21a1daaa6f7ac42f4f26f60c998fc4fcbbef747b535085b52a1b910b1097919415b8ce0cef50f7ebf95f19a3dea7034099ab9476f63380e9f0038242186595de790353bf42a81d874a25db443077ae7983887b282ff016b0f6da40f672c7b6a311d04a4ae763848e15fade5403e358cf567a4ac2c779ac132576c25abefd90ce7326ba1cf0dc294b622062e450bb99f8c734b03bf8b3e2c264a696eaf3715b65f9f012dfa1e206c17acc9a424c7d4896afde23fbeb81ca05713203d06d91415cddb7c284920722e44de7612100f1e23c8e523a0d65ad5eabb4d4c3ca2c9e568aa75aa623515df961dc8aa9ba344054c32869289619f1d216fa91018c46eefec3f358549120ec5f12c07cb2a25bbef9041b35e6438bdc287911ad64e2a429ed5072c6a2ff65c11e590f47a4c6272cf9078cbc1b570e37cf880531773726746968434b13c822245fde807d11d7c2f784413786248e25fb3587021dd01381d47c5149e9e5eb039a4976bfe634731f4061664839201d666788088ee9828239c29c5d27239e4a238ba18f3da8a0f3a7421e3179d2412e11ed6155a8f91204e3792598ed8d0ff198ee3ad8d5c1fef5e559702112d6533fffcd8e003d26c245643f325a412f451fc40de69d6232f80accc67f1b13cfe0f6da224605a0f2e0c45d1dd5902b73988c4b7a88e2da17c41815c66487e456d417fff92f21c00685b64f5b0688a33c75dbe02dc3bc7989feb35c93070aaec22168462aa57387a3d3e55609b800fff41af9bd3270eaf925b40e0e92e259af4dc2daa3b6149928ce65561c34a24cdab19382d899a7c0f4c4cb805ad0d0696abac6d6df1f5580fe18b4c03056aa345af83f4d73e14c122e329bdf975dae5ba4355bcd9d299ae9179051e16fd481369373f6c63919469bb2adb78ad9d2c8ab30c39a7ec5dd6953179310aa7da87d08ca22f886b5a3240626f8ca7c8cbf95430ec0b5c589c99a065ff814a2d1fa271856a31b9daea2710c7da159f4aafac38b4825bb1e2be7fb1bb0f2f358b6b65af4de1a780d5bf87f94e5fcebaab4c95afb3349b915dda0c6cfcde6040104458bd0165ac785196e5ee4452e86dc0e311170c0a4dd60bc5b9c4d3dbb4404da19d3ba0564f3c8054c0579a47770e3aa95b2f53b04b8a8fac3e277b770117bb36bab6e1bfce276ff800bd521bf017e90cf18edbd5db92e63d2bc4c33e8457bfce0f153cb09eb15bcd2a2b9e18a08adc8ec122505b367648ef6c52146a454aacd5f8749e0325c5f90f3afa8595122e2c44c4801945f21c89bd4aa7bb3aa01fdcf7bee4b71d4bd0775bdb941088d3dd63a1cda38b0905ebc87d72988aba4551f26d389ff595875b5e5a744d692a6c351f91a14340eac18da4eabd4f59bf813701217684aac3b3d4cfe01d32b9b83a5d222a39bca1bc8935a1ba6288dd853566f8b1fd71059c9486612c26d7eb0b9568070838354d31d4ed620a048dda88ee126dba62736ffedf8b8003aa41947fb38dab0f5c00cd49d99cec7f012829fc7163df572f121775910d3307744f0e947a94faa261e89d948cace916738ddfb09454a06765d7a6ad02d2c65dd20d5a6e86f56f8866cbc9b9ca98119e93a6b2d422392509b300a677b412b053aa9d4f97d53b0b1b7c5da3ebde2ab4642a0e50321b221b015b9f484825fba0abdcf5ad01f063e1634675257c65d73ee17332b4c39c68ec934588b99f3194960304226a3103cf07bcd427700aa1b6313d553882af400ba737db123ab0e63aa2bb672eeb73716c1c224104c0c911e4981360a65a1172266afb19d76c4cf5d4c06d9f8db48cbe257ab268af3e995649883d9bb4d44b7242871a3c3362e0e91843adbd737c1569eb76d0cae6504154b66d487127fb13a423aa8ccb1f43bea1f45650450d74d250e77c10a5d127b0704c2dd817c268c7fb106c00e52279a6c4981d702c9a743ef41839c63e55e28358e04c3e4d3e99d05146e490668e090a71c988c7926359a7b13cbfffb40b75c006b62b47e08a96cb926bf4fee676532dbe6de707ff72f8ba00de137ed01c06dee19bb0449066a7651a07eeb5280c7d8149113cdc51468a0e706cbc34bea4123a3e4b4a69c7592ad1933eaa2c1334a84bcb65ecf3ccf35c4525e338fbde63ad287705cd8886f57eec5e206f9121099f92f266d607ea5f4011a585c5b2458fbc1e59646a554062da4baf5e741cb1c33443965c01e5858aa3d48db6194da991a44cb7b401848dd70a8f8f61ace0ad9678136cca14512b872d9a0b18cd96ac5cfe8dfcb1462b6cda338ca317337ed524414430f89fd653cd6ecebfadd34c13595b8858e456ab64b1a34eb500df0d3a401e3d32ae91583e59af7003ec9a32f24ae2749c8fc1bbbeedb1db6156036a7a715fd3407ec9bd19821bfd0f5df90c27f467e5cf544ab28639cf81cf38f901b43ba4470c344169e4c039b3290760a183ccbc2f4913e2e16b32245caa09347657e636c3f02b3382a2901674f5be5198071efc4c32cbe8ee61fe8dee2b3003d72424d9c78f5b622108e77ef1a7863b14a7566d5de19de4c5dc729a220d412de681fe98b6510bb67dd6077d16f2fb1d02eb8a57c8190d0f8153575fd9f83485a7ea504078e01587d31ac85b24be92da3672b3f4d885bc43998f16115e445398c5934bd9e94848ff4ff9b9e348b8dbaa90d973e3df2914599c8ed92b47544384edadd06f77c7633fcd99887d48fd7aebb2b656d443ca7d7ad3135e0449e85008bbe8ef2f735dd0bdd10aa219c534566dedfdc88289d396632c2bca6bcb5d72cf5952dfedc68289839006adb4c779914592dd1633d18dc075df8dc0a26db154626bb0427524e0ab20ccc7ffb7801def00a362b740937f2fb10430ffb421723b9495d3001baf4dee84de74609776560534045bb03381700e599526c6687a030f573d73b37eba5c079a82411104a6d7ca1d956cfb38922562427900c41d39281c7b9273f635ab99553b6f7eca8f0f35105b5facfe6b477b554ce3399a5a8cb70181c252b9b1754ac152899976529769f94b7ca4ca316114b3e3f4c27c0c2a2e069854a871e96d68b2584bc7dcdb864b0a5e8c9784669c94cd860b60386690dd690d73b8b04e77db6652b29c8cf0e9a0ad4ad95314b466bae1725fd7598f78133bad19ef360d24cefe0b4e029004d5b07b54bec58755ee5a822de2a743e1318f5d799467f6d6428bce0f3521fb65d12a698caa679e25ad851c84c28aba994a7c5939e5bdec3f39811d207a4a8d8833c71e4dbe0a34571bc337b2bc5dd3e028f45d7ad20a29c2498b4e46a3c5b0734e387d979533967872773811e6b604a613a71871909f8a1fd21c46465c7ade6f90235b22d8daa3faa277ee92a0f56015854f403bfe0d7820a2c7e58436f7601e298d2afb42fcfd5e96414208bc661e0c026a6994ec95cef3b2e4ad490f0ad585128b0cca6d3cc5377fbb688e1dd2109a04270a71e5181a3bbd6f871ddce4f35d5d239743344830892b5bbc65a7d4fe199e3004166dffd1417e6f890bfd9bf8144d73dfe7be3a541bdba618bbd25e50e6473011bf60f6ae17ee1dffb767d3aa9f842098bc035e2a34aedbdb02d2e0dae3e21971fc3cd0b6ab3d58063678e886b4fda3ac70415932ff2af8f133256fe4d69ffd5a6bfb54bb21055b6dfe1321edd1b50a62e25c809cc6da1fd4139a7e77998fe224544451276109fff7a5be93befa82709691039bf25a5757e247c2ed98073c1c4cab1c62ded04a4fed013205e3a82dcc0e93c9d7686b4e79aaf15770669c41795268c1c16418dd55ec33f8563f769af91718c1b5a9344891215c349e14273066458d692d3a40fc4aff05a7c62785046979f1e973215ad79ee925bbdc2dba2cba2602652418d260f3a4d6b799a4ab9db35d0227bc94c1d3ee5db5676e225464295dbbfb85dba62a40d3414127f6a17541184125714262e24e017c4b240eb162c74836cceb63f91852d5ef36d319298f6bd204fe28dfd19ba2f56d7fa1f1d86dc23a9600fca8dcc909f36e08272fd6d778008199f2bec065ed52e1d4566993e6386cac480160f77ac63f451418b78f8d4eac9429ac497e902f70e2e49c237186fd5a23b2aaa879a9348f8162251bb540d66ece8f53cffa2445fe958814bbb7b45841325f366e7bc9e17ed23f4853410d8410edaa63add83abcba7f2d9daaefd48470a42cba07b56c9f4c7aeb86e7283972f53adb6ded7248e660d44eacc9a6bd3946a1495d4888479e28d895aa51d1d1fed9dd843eebd4e93593524202e6d6104b4cea5f49de5aca8de19fc119a604f7d1e2c088f00e8fbcde280005cffe400cb004b5e7e5eb7370ea6e2b55cc3bdd63153c616798074b10ceaed1b9ac49bc0aab6de660749b43b967deeb6c399980bf45f392e76949e900e789e48f7124d8d99504bd20e3ff13de06d5dd819dda402454305d31874e8f7c87e99f35176f7815a91c8a37fc3dcf1ab71fd6fb55f6a87b62b71c4ada50c823094ab3cd7a604fd0af31a81a778551c89645c5ece5c92122da642503709aa00eb703009bddc8e201972773f811796a6af20439b4e5433fa0a3a6683bce76176fa9b7cb685d08c7921c2b5aa79616110fe0c5484247b1337903631a1602e7a06b83fc1a8e183b68c1c216ebcde8713f7e29a5b53503b2b53ee714e23a4582a591b012870e130353937810c5f1a51a48e8cc0f425ef0e48ba8475e63f8248674a29d7f1392f1d3f411681245f275d9372bf4f1db21f742057a21a4914252ed76956e8f2874e7e69e78685baa2f0468d5503789e2e231de297d8d708046260b5498e53582f98bc60046e569f15fef15f7292dc387ddab1b223a8581bcb4b6a3794fc70f20f7179c20b8ff67fae0e08d87f2de3b53087df7988b73a995713c504e8a0c17bd84b3ea84bd1361e6e744abad59883a8e470facefcac3dc3ac63785f25b622f7f47435ad84a112e238f7a1cc58322a1ea2f64a27617c25dd7f2d1b625f38a573d35db63bce6a437797192d226aaeaa26e1bb7cb7ff79b3796813f86776bf4054722751435255a5a249a99793624ac8be9f8c2ba2effcac15cca65907654aac5ccbb20b9452da61b0da139ae98b16ce2f11712497d679021dd6d0c0de3a202f0854b5c98c076ca13a4b29dacc9726196230d23c2135f2ad225714206be5fad3a1e76a778127deb3b0b824d68496935352b57b7e0b2a021dab5c4eba4afd76c764292797366601a261ee85e18281d3ce7d73b603363ea3f3b0e6591caa1e1828af0af4db1a56c9c6b429fe2ed04fbff8d3ca053e7abd85885ae055addfa153ae1e84783cc1f77dc5a4f0d50aea8f79edae2a88622855e7b60d6253bb9f00ab6956c820c90587deb5b54b413824c749d6939b4ba8ecaa7dd8e79db6a6e29638d5fc5bbb19d1173d5604e1ef4adaa9d1ee65474617edb2a2ce4d51f1d319a15816e2c09717de4dc021f1663c17fa01c8ff46cff80f28425e45cdcadbcc749c8cb89812b225a2bdc5155b42babe2b2bcc96c0e77fb1a03432d966c03ef6b28191f4d3d4a68d141b4d808dc18419f0187d7a00307283ea21b2be0701a47310d8981f43ccb1edd0810fb0d3b6767e63a93258890a7caa7b57e48c2547cc1f528f9b6d46177c35d1b3f986dca7e9986a20c7bc5ddadc774cedcad19cfb638bfa079ed414ea93626017cef5c364e0a80feca9dfc47faf0153ac36514778bee8d376b6b4bfe6c783c0a8ed329c76e8cf367de489de3df256cb02e82a4006b7916d6d8f8795f1d88c2e4e9386e6be0ee882de5d036fec0db689d60c65808f4d968d0902de10ef37fed8772c61af049625a72a0df7102d0270b0ea39afb86f8a55f07e35c208717ad530daaa45d69c8ee01d710a604ba841d4d24e7554b3453dcb657f15495724e0f48ad10063de55845740c3a7c58ec3211b06a3fb0985f94f6f71ff42882dbdaaf4335e29f3b54c1f181edb6b2c4f2a06e8d1ee326f92eb4333895b0a9dde521642bb775466585a63770bb04a0f7d3d3709d70f32939eadad2c61364929747d07ad9312933107098f51a600f2147e9933a193ece6ed931ed91f2f00bdba95d96208160623668861d5fdeab8b360b5ff2a855be8162cb496e0adc4bb6b897d72f39200bab8a2ad11b993a6133e8cedf7579665ccec73273ec940b020e5c27dce31560fbd3260b83536f7f0207dd3f9a2bc0a0557b7671ba90a34c3510b9af1870d7657e5fd81179561de640c0fcb4d0f0c1d59b90afc41986e3dacce684b0306ea56629495d50ef3ad1e9eb1f90a44bae788e5559923cf5105243d7edec374294d48fda167c5fdb77c3e632a0834d033430a98c6335e8ff237d88da56020ef54abfa15aa66772a5c93ba9ad943229e6c4efa44f98f8ba7dafb2af8a196655d4b3978a27e25318dfc31c99f32d597b03f53b98071dca8d7bb67627f53f2568ddf2111d095a19390229f4ca5d3ca5d9d785802a068792145e94abd349c142a67f2831a09c995a5743b7b4b4b2d56b40bce9bb38885a67b83cf745a10d59191af63aed9226926609bcbcd8432e9e9ac27c4ded41e301fab7323e0155136236c6cac12e9f07ad0b231859a898958a4f4256c248b0b52d07f59ac7e49605bce7e182630cc8a477301e65c96c0eb603db8525f149736c2ec0c1e7243f33c4e678b105a24b13ef5b8a39521d8263a1db80f41ef2b6d2978c6b23b0e6bcab19fc9cbfe347c65a69e66406e9e555b260f8d2011401a678e26d974478b5557ddeb68856dea2fe315c4b3f6af90ce5cdfd99e3c41b3c46eec8af85063fb9b73f909d5b767dc5b101081f822b0dd64f2b2e9d8f1203b6f960a9021bc9d2894411c37048637048b703566de8605831682f0de811bb19477e0017fb300588b763f6653e90f53f4a6439b1809c49fea4c2f6607be998219c5b1829efc39558e424114056c67974814f05db987e471e80dc9c0dcefb10d65d5bd4c7610bb4f1bce1093ac4a10b4e76cf4053c0355c01e4c5212e742717efc704ac7e37fea8f2773ec9c8c74b69c6dc44f953fecb6af5b210af7f0b611f6af483c04ae23152af9608bb6bbe49e2e7edccef55725c73ed03a9762e8332855d91a212d64ce686ee36f09ed2a0540c231392e22ca1ad23a7f32e7d2b10ed38da6c76362674e4e79d72e3226e050266a9c0009ab409ad0b3bd089f9ae04dd41aad62b409d272b7d4be24e52c1a56d2883bd61b373688a3061c6b6e9a6e2dcbc0f432c504441c79d4b8bc8759dd20118855f02bbb32343187cfbed8fdb1b92ea1f6fed3a0bba265665144f3c02b704c27f8df6ba8f4ea712a2d60e0328fe08b816a3e625e416843e671549fdff854d764b18a45145e7cc4e1b18a253d607c2075bf8b5dd48d88cba3885f99dd3a9be7f1ff473593df63a600d605d7589c37ef4eb194f4b5bdcc415968c187dc7488701231d33d5ea754c0ae0432b96da46e0a32b2a6b4b688df9db26aace405033284922ce15fa6c72221c81b2c15b71e4d9483d52f066306ab821b8bc9b62c3869cf18308cd103e7d84732e4375932b2f95f10d9c3747f6a82659cd24eacc37062aa52c5d562e802b596f853567bc79be6bba47f6b8fcb4cd278f09457ae73392649978c522940c9b8916d8cfd460a606bf18754ccee49fcaac3cd602f8e0a8b26d6baa0a8b771037ed04e2931b5bc9a4c3f4ff3a71c05d530d3305cb1e2552453bc52dfaf1caab43993b831449a79dbb9baa531c9fa3611da43d781bcae6fd74e4ff25a5b0cf3809ad4df6e74c76892efdede934b974f270d74564c4839ad5102d782b05ea823edb0b6b835f95495587c05e684b737b483f5d55a36a860717ef85e64c2ea3d5da2b0366b8b41766747d4ed632be1bba3f12ccedafdb69ab49ea2b505e21d2f342f59552c695327f855eea8e81892eb1efff4bcbd1465f555cc2bb0f4463ef67410b3c15c09d8ca2dd829c832a3f5f25cdc399f7a74223a4749e394a895fcabf5b1d5b4767a42448f418a9effc9d1a58f58a43af66f9e7e72ae31cfed52df4de0bf749238304cf11591b66244871255ddd82f5bb400822558159b65af947c86ba9e89d2ed30f30f15891d21b4f4ba4296d875af05f3330f530c8e804fb45fb7c1c0e1429e375215621b1a7a5c117f8fe80ca08b7bac16d921dca8aaddd24e0f6071b2b2d4404304c9e2c8bf777a636adb778edeb2eb6d3260cbe86642d370360a4e2ea5c66b9a0659392c1388c78b0282c870fe0cc1e6446abeb89033ecf8428573b7a04667c3f4c648d1a5f71a0b29dcdb0fd003a1247dc309edd5118974f0ef14d136e0f2dff29d06f7cbad816f702a2423e419a16c6f8a4f1c49d100c551f6dde5a1ee6b89056168fa3bc02d0fbca4a89331906a5135888cb65d91ddb5b581c3ba70266025af3dcc2f03461fd78c9d549378af483618ec2115504a9db4a3bec92ad62916bd6b9720c274d17eac08b175d8b6fb1c93786e671aeae3f6b2140d837460a98e0408dcd6b03914878d38c0792a6dc98f4375296b5f7c57282b824ccde955a1848616940e61bba33c7597fb100c4913c560d6eac9fda399e7d5ffe22322242de819b10bed10f565856993495fbd3dc2e368603e03b8d2ce80d81baedb75e17ccc8049481974199f009e763f61d72f40d5318171f0d23af5173bd7eb140f55ae0e284ea187f38c2569fb41805a4b8a3041a205bb712c4fb47ff6d9d23f18841e01c64c1c3683911721872620961c16f9157ad5b9e67da5cd414e697527e1a615a3f4e064321589a5bb5c93ab4797f71a3d4929035646fda4dd2eb6cf0669111c5a37d7fa17e64ff40d90943ad302cabfebaf8547eed69b8e32961057a38ef6d1bc82df42b35a2adb1546c103a2524da8ebf4d1f4c34da7ced6624eafc4ec807a1d3a57e10c12c172f8309000d0832327ed6dc8ecd1ea75c49270b4419cbf2615c23d392445178c14beb1b4f6019ba65588f6e0f08578af77ae36adbd030103cffc31e92b53088f3c3adc6cb291291a43f3ccedd0a616a6817248ceb083e65546d8c69ae994a8df73ebc999da5abf2a9d035a4893c4dd7716324137594a06a070c38d983bba0f37b642844e30ed8209f22ca539ec889f1cfca11dd824beeee2d4473d3cbf67eac1f9f4f0d596ececd03814d37b523629e0df520ec23db0c087306d509d9254885c085494eca7b0b90c6c2b2e7ee99f16c2e439ef3cbc6920a661b6af7a545804c3c68dbdc4436626c39a0476cc323caad661d0f768b0a664c3cbe75e81867327d2ef666e258b94a410d68cc9ecbae8c323f09458311d591831f65b1fede844965e323a9202f0f2490a099b4be9a357c2e8d8013c63f3882e059399df1079c4fd3346628dba9a2ae5fb250f1f292e7b41016e8d55f637958ec35342595965e911348d3a8fe0d13b2b7224079c4fb9c152d8e0337fe8121e6576c5ceaa0be81d80bab668bb163d00ff546b8b5d9801ba191058d486462fc0e4b20e8f6b1cc061edc758eb722770d9d4c1abc61698898ae09a910fd1dd928c81c37dc285330ab839b71786620228982eb83055c52ad8a64fb772a60d36dd8d1bd53aa834bcd0ab1124cdc873d74e9f199672a0d8c2f934b68fdffc75bcd5e3d2d1712d6bf0842e2100c35e31ad61bbd50930930e80bff97816c5fa3cd1aa9b90a17eb921364513ac98d1d507ce7b27d0366562692245dcd0a590bbc54c4d8d53d5cd7024ad9ff2ca25622286f0c859e83a5432d09cc2c03a3b82eaeaa52b9cac229f0c402f42ce72aaa89a3db7335c235d51f4959857ecbf0850be15215c1309332bf75e1cb23572746f496f17385eef96eeff81aca0d59f677b942e461a46b0f54a617b3eae04ca00ce6f8d5cee9e4e51bc9dc3d95af756af8210a1feb6bfe61380f206d2661f4915169c89c51dd4a698d1d7122e16e20aea5b68e2f75eb30521f2b226fa4a563d7fcabe76b81abf9a18717f203109315267ade720282f8aa303b7d7d60ff990144557a95e1facacfc74abe3bbe71c8f8d8f3dac1f27c0dd5d20078752502bc571d3d4b4d007c734df01e913790e04a9b00279962913ced655010188c0a7c0d84ceaeffa5de49eb697a5f97412dde039834107c83a0842974841e3a66ae007489b19b3c792798dcf8b791d3f30233b2238d5b0bd74e35ceefc31c96375f6338a18a956bd634574efbac5ac628ca07b33be72817d3d073f5dfa9063d3ebd8ee8c9c5b026fc85f37e270bdc56d8764f6e09a1033017e0334945e73cee762b98ac865c6b9eb21ac96c81aeedf0f86d4c01bf8ed4580ded3281595220e58e764a76532bd53364f006108af02064d6c9a51234e9fad61d832832d6fd0cfe43c23a569966b0fb0e367b6a303be96cf75b8b67b379c033ce3bc4c9896b53c6f8fb04b8c302a6f22b63649198bc16cfba9d7d827631614a40ca6c818d515ba583f4a9ffc65f424ce2160faf41fee282f840304b9d98cf3ee70ae5a7c68501f4ccd17428e29f72380961713c284f75de7c0b19a9fba76285e3d3cb882e79632a91df29afccdbcdcd80b32a96f7222831cb3764dbc198e22766656a834981132491cb0269281758e0672e5e6027ad693978c957bd6b909e9e4a55ccabd7b022dc4e20aa5b8b6c8988effc827c1a10fa7d9d20082329d1c096033032d7923e53df2b3a40e8f08c5819b8d3a53c1789b5ceb72deae086cd75324ac45c923f5121e677342dcf90a5e1a0a03cfeb29d3964d52b8ae937c6c603f0591baf7283163ed4f889b15c078d81d7d658302943101d81342abf58a6dbc874f97e404627b6641214eca4d0f1fd90851d8b251f95576a38a661e65c52722ee7e34b9451882f1adddcfa436d4797fddc84bfee6f69c92d7f420b4883710f7b9ebc08a65621d43415a9556039c0946dd9970ecc78c48b2bf969cac08dff7cf2c99b4b7f1c82a12824855a3dc466909645a241064a1b79977d9675dd6dbe5da56098f847ec2344447e76867fbe8e3c400a15b892d4921fd833688f44357021e7cb051ea672436b22f2f4987b3d8458f4e81514a53116f249e61de0ab977d2e5ce0ee2c2904e7ff59f75405d2ce4b7300ad03b6808f6f3152aec99385b862e467495cadc2a005461d4c2e1db3b0ea97a1b12c566ce795380c0507b8bdc4cae4f1543018954b48832cd7e299e3b27b8c11903865e7f6149a4ba1710b655c225e5990a5eed9db2cf639534a6b3ba524b6195b20e2b75f1e57ec86797a043eaed0c6f5f89ab7cd178a3dfabea7e89a42505768dc375061dbaae4b768cfa4179dadcf483d302d24418965479b7827256d9683beaf4954e2abef4f3fdad7df3125dc8d22c9cfc77dbba24aa853b93b1bd41f09aef4a258e9dc180120939b2e4f45ad26f050fb4105df1b499832cd3e0cf73c8e425ec2f60d4f2077a13414a4a416c91e6954c1c1d583db43d98e24ee615c163f2cdfa92d821a71616667625aa9db33f9ec6132bc21ca3601d9ed64c2cc33b85e806c569fb047ea4186fabb0103e9d4fe43542a60a72ac2326a1262cf2246e6991cfbac1b337a5af9d0701b8ab4b284d638bd82729233cf0ab18aa0571e149ff5fb2e72bb6900a292dfa7a618fa7a452958a470f7cbf3e7144a408d209330df125375865b7f59a64337d436c9080a41ce0ead810578819571ae5c8e4b6328918468a2a117f9cbe1ae3555e983ca17a819131439fb37c8182fb28453725b4db3c22e4873f1324fa31e586399b57f0cf76b6a1e9ab272490a2a128bd6d356dd390fb3f434b10d9e41d53973096fb9e1c198e07901aab180db23583c4700333e361311781f9717de8391066f25febfc9b3bb69e6f8a284ca8c2c79b6d193c1d1be7215bf8713e3df44c3b8d48a6d6e97adf87fffacf687f4da0cc711f3932189adf75755bfab10588be8d8a66fee689b20ca034ef3596355512f6e347a26e35b6442386f34ee975d85b1c692730da8d2a8e24d514b131b7cff3adfd09adcbf0c41db0a913a5ab31a95cc9ad1345da4a0fad28033040fb553b15d0e05409d5a99aef8338bb826e62e48324a5286d8e93ddb2dc0150f3158fdbb730770b02c3c2fd0e926115eba2fd132ff6c70b76ec4e7182f5a35deeaa1cad0416a33661f8bb60ed86551b0616d96e6b4e3b9e26c2def6bf6caf8961851ef521f845f5796faf83ed8f48a92af206efd8c19c7c1e05a414640d8af2180235a681a5a6cad5230e2394199f8457e966117613edde81341d24804c11b377d5cc75a6705ecf1720ec578ddd8da831b41f2d7237b4c0ddd4d92f2dc8f61c5d00a64ea0b2cf5a70ea10be3210ab351ee352fc6373c54ed7b15cbc49687ebd06a74db254e6f98539437644cfe079ea4f056bb031a189ab1f749accaf8610fda8631a0cf102636a5ed26c008fe7b363425f6a9652e2032ea5e39f483f670a87bbca0d76e6c625077483cdd643ef64c2d1e746145121bfe4d73becc8022bb65e29118eeb22863a317d3e200eadb1620b0bd8d6aafa0576a7f3fde24b60ed1d278627e8810577fe45e88c2e8de71f15e21a70d6fdd787c42c435564f9d87254aa56cd4201f3d9f598721f5746f82403ab63066438a29ab73aec00d48d5670116f6e636098147f70bcb5f762e2937da5e22bc69cd9f7125abf3b630d18c127f08c8157417e73e20d5b60dd6d62d644abee55e312424c01dddd80b362e33360830ce49951a19316489fcf677d575c1cf170ef628dc7c39d27764e32a6aec23764295f0c72c4d18046a079a04a6ca5d0dbe160cc109ac1e6644f25e3e0395e86f90198e976f1c25271c017a94a706e125f4291db649b5fb577b35d2c595c0eb89504211339285622c358a19967331cbcf4214bb99d1213f7c82601c4f36a67d012fb6dd7e1e3248720c9c7da41c30ca822cef2ad5e3eee91e46ca3300e0430bf0fc93ff0c04d159538a4e072cb434b0ec0d97b37955b857070196cd383c0763356389d0ce4db0087c7ee6d351aa41ff14a15ed8a9927fbfb0d9fe50321388d208d04210fdad853b3bf0491fe0a29ecf7668c10df49a6fdbed8b3898ffcb42198b99ff914bc62757802fa2a25402616a92d996c5ed9c58d1d225530b907e3a6a47f7abd729b5221a15dd501cf00023daf831a0ca56520507788979bff0f1ed06c7c828f5eefc0447a6d1921d001f712faca191250df336438d3faaf9aa303587f46b9818a9e45635bf26c89f9b8d781fc24f49e11efd5938363c08ca40d9b653213d2f3fa1acb33cc7eaf27b504a09d83a813f86c99b4d6039b8bf493a5666b1dc3fa76e169b4801e71f2e119711ff406780a14ab57bd68da623e01ba15b1f83c176343a4c7de04e2da2eaca86aa86875384e3c3888bb0f0776518001bfcd99c4d7c007d77c32668f33054346cac546122d71d4f406138d85feb404bde9857dcb70dac25d7b69d21c8691a91988b34757c2504b5b72a9aafb8ead865f88c38e145b6f52bdc55336ddf00124a360a9281e4c4c19d8dab99e23e4d62e967452de5c2d502a21bd56903506ef67d964df640c6e843d940421e8fd8507c71ff2227d58896b29742713267757d7e05b88358e58ef4490e6f205d0added21c068004bad330a60dcf9a54508266de0f1d17c2aec1f1f94f14c1c612060e9b096512840dd3c2b369436a5374694901543d06d86e60736eda0fbfa589c10f93d2d95e03c85c0e7f6f4800e701e104ac4de6022bae644a93f29f55ab220fb4bcf5063a323b3e57682a184b1f6712a7751f976b8676829e18aa90cdfded84b26e85f389de4472a667f75cd944e043d139bec17904049f20c482d15da0e63f0ac307238c09a64ecace26992fb4a182c37e3f508a2976976732572a2f61ec8a0266bf1bc9be6498f5d4a253604073564986b20683059476afec55bb6c7a64551d0466121b816c8e2228fd62daa2f323a6727e0ddd20dcae8a04b99566292ab6714f7f50b4a56467648670ea3352b3e90ea1b106be8e90231bb7335c88c654fbc22c0fb460200ce1a1ea6c730a05356ef604398b8d4a68c91e49a2e7f36e079e200483e4818452edd6684ddfdef1e0af4074bbfba85d09c158937f4bdaf2d791a7ab12272b04716fc59a4aba47fcc44be735255fbf848418fa03a76756bd42bae45452308c7f5e6456d269b6411d83629dc99c1cb39ec10d52f4a8c0c10fd02b01a7fa6a79768354e4c57aff5c68625e5cddd13579461fa4ca43ba522e3f3010c46dcf9566fa9eaf1906ce9773bb02829d101031948a9f4dcea78411a738ccf4a3b73941abe2a25f44fb697d1e3dd0df06bfb68723526689a38700320d8db7b2ac003ce8fde9c9b2b0f64784135f6015f3d2ff5fd8d9ade96d8b7f81fc6a6d9ac76b6d81d59ab75306fcd30431371506900953e6f21c5041c76cc2e93d0eed07e0a6328a57e21ba336081b5ddc10a029335643f608e7d3fd91e210be60c6ac0f6ff83911f912e50e7c312a0b2e57911b6bac50032c9674e8e0d62ca82997292e7e4964ea9cf0e4bf5ae8181e4175f60e45245128a26346381a5c8fc6243753e280c0c0a4ecd450c92dbd16c02f6d44eb9aaf2b919c6fdb4102da0f66d763345283dcc259236cdbf01c279f06d99065641b832feda447cdd13b30d9b646e8db4396a66baf2e444f1481f477fb67aac2244d87f855c81db95f15d36817d891f198b71133ea72d47c594aa9bcb0d132e6874cacc019a8f6ea331fddfa96c7fea090caba4ae3a209997e72ad03624737b379316583d4d4e7b333119b3c92dbdb3eaf818c1b0dedce55b82c24f4f9b5c8e5d42cb9ba8e520d77224c88776584bcef44894fd421c8b2e4ff73a8dda39ce410e959454c20ae83885cfdcd708bf0f2b41a78405a39fdc693a6fb363a58085a5091ce38ed009ef6a027a7bc6bb42ca0338cd630eba989e1d841347a8a11c1cac34a47fb97db2965f53dc9bb7a5f8821cdf64f9b193f4a427f3b6c34ab24071001b387ef5de3b01654f004d3d0a21855d2e5eb697ccd939ad13ba58f504bbce67651440a785cac0b945573a604bd86d6d4357fb0933b0483c0881a285294e4a1e6bcc43524b9ca53b69c9af924606a790fb118f370b15944faf514018be90d70c0ff261acf8d0b5deb0a586b48f7fad00e21183650eb1629494313d93bf469f2f491713a59004c75dd194f885cb3c47939802e013eb1407896fd4220cbcb8dec921326f4ae8595f5b47c0242bcc09e036d8877c4c0f43fa8355b4a02e5d1309d5565b9e87c8af1ff74ad92336d95dfc7d8565f97e398de8bb776cbc1893a3dcb9534064a1c6f89ed92d8fd08f92ec9655d8778e40acc6da6f0b54d42233960ae548206231d58a2e816ef1a317772d6330df313c08a7de2aad8b5bad67e7e4236a2f36cd2df8d894050cf71b91dea63d3270b3482a1844f27d79db701c3bc62a65343eb608e9775f8c0f3f59485e2d08027e97f4bec4bfb7825c3f36d5bebfa955180ca5434feff308850acf642ec4de5d8bdb719b9307207f6c7b00fbcd57319b61fad87722cfc6423a81802bcc1b4dbece399e90b51a7c03b1ea0fddd18ce73f2557c05abd9e0419d761f83528815f108c4d349303ede9bbad784da697fdc79744baf066765b7e08bdba44895dbbca3e9476a1cbbd0f3674cecbdbe1e81c33ca557db15737a78893ef68d77f892dc196b52bb192264c4dbf1c5182ee650ff88d212cd1ca235a98bacac0cbdf812e6f62400356c64006a3c73de2dac0dad938b02dbb0ea7230e50f979b0f8cb61f2580d9a27f6fba40f7dde7e4453800b96c961245ac1c9474968019da4174b6204eaa98e52eb0aa737e5cbb441d41f4db10e8657a30b30e466a998c4e54cf6be3a6438a963cbe1e78fe27b94c0441b9733881850cfccc7edaa052aa6ec04330bf33c57b1ed12277e54462587b6ecb6a53555094ad18a13c78d2e6f5d0380d4ae09c311096f592204fe49b118a7613a4757e94a1e9fb8e05eacdcff9b435f8b63e7884dd60b3ca47a027245454816edaf0b8b65611a038be23238946921d3f0c3c79de0e821d6d169298636380bee9d9206d8462b5f3a17c77938a0f8088d5ca64bf961d04872ced71e0c145c622ed615ae5f9c0194ac487ebab6c6614bbebf682f2d203dba8aba075b9b2e546610d1fb6a07b6080e32315182600f38e65139f2ab7555288dc51d5fa06dda32ae3d7adbe6883236fbe1b02b40a371db79d75d68637f68313a413732bb4e849ba96a7142323abb5077bffdc9db190bf878de6ffc54a9283d4c5ba403c15e7171df7f37bd37f34e6d4db90edf688de3aab15bb91f0da262609524fe53e466d87f0feef966886d631a224fc31b20217e30dcd3adab30e934439ef2fe6ecb068f655a201ef900a526238d9919267c4efac1e4f81d483459f3c38798647743322061157fa07a6338ec360524af9032247ca369a84b0700aac95d847a9d47fd49b9c19a2dbd667bb39701569269c5981bd08687d60874641f092061f4b63b1f1111e7c2ca03d2470f0b214ba96805d49625f95a423d8ecf063c2fe78f54d8e647916803ddbd6f39672e4aee815f1b3a90de35848c01e6119d45bd0ac256b67325ee59af77c4158a9ff51ee9a237b6ca6a522b3da5789271a3b6125dc3d324965eefa91249ac0463b6f62ce67137cf04ec5268908f85cbfcf096ba37937737288f1c371e73b20bfb8de64cd43ce7162684adf2fb5bcf2e9572d1dc10cbda12f1e42b4f7cf1e0d494878113c95284bd6dcc1150debf1f210239eecf67e678172798fd166a43b1560258721af79f192a951023a95e1e794876e0cbcbcb6a0c338915129afd58e86c19530708a0d833ce3a0f70b66d00f9df96765b3ea3e4a82122060472488fff54443f7166efc6d39f0ea8c95b0e35a575f840b16403b04bccec8b1d6b74349c6b500c6b0b35f403a4328863406673ed0ff21c724603fdc66c967e9d5f37f4f1db30860a4eeaf77bffafbd41b87c6d4433ee46bb4aac3535e06bffe118a8cfef6992e1fc33dc9944a4203abf5ba8fda2f781279b9df5cb60ea2077eb753ff8f0c790c7740e3a4c1991fc0c02b9454270427d75841af21d539243827eeb160665f555a4c517c03e8934ac848310faffadf4f86fbc88b39ae56190545322bb9b946be06ace17d15f12e059d4c4a78172d73743b62c24e54b9e7054d0a8461cf7ac7ae7e95731269fb979abe752c2b5ae791d19d9ace324074f12bc0b6a84cbfaa1ffad4b4631243385c3dfbb7e54c0446b61797e65e53226839b655c872750c304688d6c741f62e1948c362990a8d9dae09aa40da63c05ea9705920edcdad8fefa95aaa65e13cf8fb6e8b5406328c387b3731d1f8a39c81d86d20d26862738d678bf5271506e7333d26067e1ce27224a03a4562696d325596a745a5edba68fb851b792eeb92a659f76e664df10adcd5eb213dc412f3fd15f445e5c2096c587051de6c421b01a04cc17e2c2193140a2b80e39abe5026400c3c0b9b28ad07aab743cfdd19c8359360c1c33a1a7f9480af85262718af4f7910fc40b236cba813cd722f110270c0ec44e84aecb130710adfe844b0cb766b71a55daf7a4f5cffca5242372e336362c0bf66b4396bf0684af3f35fc45d63523cb4a5ba877cdae86d12bc826705b921cf0638eb28ca5bd853b35b1ff60252c8c0c6d8785461b236f180a155722af2957080488eead76df9d3bf4abb4e4f8b14c0a7411bdd183cedb47180e42375a4d0dd129204812786cfc99a8a810b79410df557a89b49d436ac9f7d4c39108ee132a73c4041e978e302da3a21a71ffd991265a242082012fde81ea8c355977dbe82b2581b0d1b37a0fc0384dfdd8f3f1c667d2ad3175b830f798b62dd6b74b070d5e390ec314759d07bdbce22efe69169304a9d35c9d02811a28769ccf5212bb5f4ed8c5ef83bee8f61115d5bf0e5cea7714a4bd32e16d0385377b99f7238bcc365dea5cecd53c777dd77b967b7c70404702e7e2e96543dff79cd64ca90e2cd14c533e0f71baf1d8733d7c7fb46f902e77e058367249021c902f2fc896ce6b57a26085aa91e03b5b17b56716d413d9a9283a25cc8603ce1e2f1b81134fa9a697e42aa72e16684567945e617ebdd63a18a4a543b8d58347bef1761053b9cd7cda9206c363e77dcb1dbd3442384f494f63326a42bb3ed25f4035f703a642e363e768667a9a7bdf208e81d2f53206843bfacf2070056a6424df82639323451eadcc2247d4523f819db198f774c8c8a362d04295d322bd4eeffb0738c12166c7bac3010587131acbb6474af28b54ec95eda284104ea8b83b765efcc393bf4e229c387c54eaacbe5b97e03d215d3e33021b23d5c5d7ccbae8c1c0428c42687d1ca4204e6bed7e15ec4ec77b4f0d4aa88a45c1a30504f52a85526bc4c0f69e20c807c2bd36a0ad18395984c6962753a4f76491c9bf26d86ff58b7fa0d0651467e348d44d5926437762b37438a4a7797c83c02a3ecc3f4dfc6dd9c0a3a38c78e1d91cb547484242b12bb443be487648ba3debc0d4a1c266878cbf14bddf955ca0355334240933849be0a3a651444a5faaccc65932d3048b1b6423bafde27bdc68f838faeb57446b84f1616daae2eeaa4a6f061a18a9225ff7f6fd0b4d017b4623a4e88c7501576a330c503fc4a049e66cde9ea2f2493d4edcfc2c1fa7b7707b96ce8a5dda4eb006acf2a20339be1b49299736f5936cce9a03d6f3cddd92e434d6517d50c74c523f2b66a7e700894166131e8332373d6b4b08db68dba5fb73c1b00b827f1c0fb3e547e383458b293dc8e97a667998d83d4c5d7030cf2e36682eef2bd07cdf07873b4816f12ac1c67b029a695e3f5de357c275910e674b6e6564420255fe925f748e2a54a4f103509cd6c53235ce791fcfc1e1bc2ec532763189f48e924fb7461f38ab2eabb7946808f263ade090d78b40c3580581dc74e9b5f071f112e5f5043a72c9b97f2bcba3ab832ff671bc08280013655dfce9d285ab44a8a966b53f555d420cb4337db02e353284cfcc102c1764a4df96d7cd3f7be63aa2576f1191622644609a9feb1a012526300015049218ef1963b2267678743e57c0e500490f616ea25656b5025dd30c6db11423551b9923bca2c336ddf13d5a5bbde6dd634072134d06118d5332e10a46a6ad22799ff759786f7ef74f9c92994e9fb66dbf6b2b07f752501feb6db1522e501f79c02bb15aa0ac33cdf24239b7863c199799311b99413622053b3a9b25e84395eda336d01f1e2057d3708ae861cfc48c5c2c202cc2500f868e102a38d6fe5e645c6417d78974b6823c35352642901eca65fbe94688212d967df8aa8101a419648ccfb306adbbfb2d4ac4878df8f637a416fd036d596733f9622455722a92cbfc6bb0813e6de2ef603236282795f9b1794f1ba837c3e3fa7b0a59530a73c2703218d709ae3bb8ec448f1aad30331a32e691b894422f4a9965092807b06aeaba6ef38a8cc76ea8710fb88613a6fa3bb451506d285ab4bd326db4661f51a4554f4715fa31faa666fa90f918e1b45be74abe5c9eb65e00e3cd004c4b526907eed13158805724ef6781e099d7ff6df6871ca793c2f1293cdd53d47e16799cf7f4e879ce02c3b03b08a4f0ab1c3a9958385ba590f64e47e8f095385ab80e988dad4d7b8dcc24f5c91f056f38f7a065a849d885f91de728be467dec2bf7d65007a08a24bb48c5bd50eac3a0f172884cfb1d4cc7e7102d5bb396146d1534adcc0c601f8cc8725919370445c021bc544e737d46afe85fc722dc8e8132f8eeca8744ac6c134e8113318a70d8c284743e74469483fc9b07a43d7e56694b919af380872b606545901cf279ee2c92c4618edd903573999e2e9167fa58f7ed90319f683a3e32d7ba38154ca892e41892aff17080c63c21c204b0189abf5db31db7c07d40172e38c361633d512aa9f092f773294a8a0ff998000864b456008f4d0b4d20007d4c567fdaf653278f5c026dffce0ed9bb37d3fb0f71285eb0137a9862b7c252854b3bc4476c2cbd486202313276ce27476ec24003f6182a99c18921ea61e63f38f92d58e331af3e6539e148f8672d05b2875a48884f08f7a94e8be2bb854903964eb8ae1a7eec95f27b9f1085ef416138526e27818e3bbc3bf4f38f5f0a6f9eee7cfd54f5c88913996072ce7836f12ff05ae466604c0d5e884d1de33bbb53aa10a79662d64acd6c175205120038d535299ce97fa44b27f7e19a818e8b6334fe766b6935a4f2156a294239ceab726ab18df066eed8f67346f788dbf7706dc1a8ebeb3e6b0ea42814746e11a7d745008d9230250fdb7a4bc153f0d89d0f7887b54cece3ecf3306913745da704903b612836919efab68327b1e8b8e4a0a78abc0748a737d9b8c910a258cae8bc968d7a2d7c2425c1fb721134fe57f5823c6548ab61d13e431a5735b1615345aea16f22089b3691a33ddd5ab195f79ebb17a51d5fdf156153d8d88fb365c03a941a598421def97d8a3ee63171fcccc4f6488fa0f136a97d51740c510a2a9fdd379340d1ebb8b36fb2cd2b132e8374e0f384cc4bcbb7fc238465f44c0ef99bab72188dd2bc0c5b22b14def5994960aed3f4c3caf032538bc12a1ebf589f65f43a8042393ed2298f8f6ec3727405859ad30c692932ba4ecc67eca2fa580d12a7d83d3ac0aa8e4445b3f2003619af382b5f0a53bbbc01fb44da1b92012b317289becae402a5a08934de2b93f61afb567ac0c8e7e835a6db3eef9e20d98b28b8935d1c1c6320977d33086886f652b50a32950f97c23ee0d6bbb6b6a46dd32ff2cbd6d11851e935dc95411487b0606ba3a42b87a76ff059121b8fb77a279e1b76aac17252eba8726a00c6de7fc04da4c81a51a28449d819d2809835bf45b217cdfb25c3b0763474c386834a6d05dd02d586dd12822d6e3e6519229033c76bb289b14224bf64cf57711284318f1623e7e873a56eddd45716682181d8d7f9508a96dd9d43c9e46a72d5641170e9e534c423e46bffe720b83fc05e00366d6cee7c9f893c149160a9b50e1b96b227d17e62fa9dc15917cbb31caac1d252641630646950c21e11fba8c3442d363723915c3ea52a5a53749ce3d93a1028cb3ea1b57a9c3b45ccf7f30385e38aac2837e48ff5eb6e8452fa89273a524e4727d94e511f5f810b7fefff3939f1954302eca0562514250fdb680607e72d3315664d7a6c193521f967cd50959fc2665536dae41e40d55b078f94d31d9acb98c04f4e16e74bec075fdf8986ff94b62daa956ac33d09125e29049fa687be100b3c05272441466f8e5613d5177a86855b039afb565b00a59d6f929ec63b8d320040d09324114ce52289b0c5a9cf22c9a9d6ec2c76cd35d3c63c0c5b9bbc5fdc87b89b56ba158bc157205e0eb2549591be3b61b063825782ace2c2242030b2dc721f81fde0b16bd8ea4d9c19819d88f28b842d91e216f51292931a79ea433745c28f3efa80d9bc62c26e31645078c6cb65665fe4433c9af35789ae5e788b1767427797c108607436b786877f4ec891910a6e0bcb1712a7952bf49dd06cd5d9efb29718a3f33130334af8fcf8b77fcf8cb55a79b945bdccb2a9c2adbf5e8e5b7d2b1794036643248e60ba91061ac560229173848e5539489928de5a19e1b77b261aaa67e575553c40dd48c5a02c1c0c12388be97514ac02d0e9e95de76fc26304515cbcdb42ddb5e9e871dbefe032a45628a8037333eb70c9b5cef4c35919610c5defe2074c596c95ddb3f9c650137be33a5da80781954bac430c467d58629bd1a5be07c77ac5b8487c39ccc0fe62b5755e58d1ef949405b319d9c9187a66e4e59d212673cb9bc3181297f873a7f4b66d6157264201ab0ae6164fee7b6d254826c773e6ea33bf1cc745019a05f614146e33c5e57a468309486fe6b6a5280cefbed859d2ecce34a33ffb405de622da48f9c5a96c17b6abcef1fdeaa86484e1d8407fa36dc1e5eb1e0e270ab0fbd661b4b6212e9a5671d710c6940fcb5993733c33bcebd596938a76cd0432f80c9db94bc7cff391a672c080d1fddc0f1750d363011cb10b1513447e98961573ad060268d52f832cd4443608f3f1e396f6e5e07b5b247428ff1b1455eeafb8a98a0995be7f704b2aae557c309b77e61fd7105c5e102d668b9264ea5d4526069d19a329074d4f54d25d216cd7b6de734f20a0c33d6cf38b36cd94435f2d73ae3505142e6fc7d236494e40ae9f1f8f5239ce954b8b78caf0cf42190bf3b3be54dff68e4ab89151449e8fb48a1768425a4f3ab92798b757d92ced20511276bbcf934ef6d2e5e1b87376df7532d6b39dc02b7d3c42492b9799085bd9339e403fb5bae2364e1953dfae0e19601fc06187c90ae64881606091e8ccae6f757f3f96020c66485b4de96bfde6bf03e6a67a8e2639ea95e5ffd39e7e04da818553bec64b14019a0b418807f347e3e654d5d628d20db9ff6d92298a3001dca7f76f26782527da9ee218f729d444c1844fbc448518de1941675965d6133a528570e10c0666a2119eb830c5dc94a62de06e00d528f28fa21d93db013f983c351ee3c953f0549bbd555444cff98432e3a3808b7d84406790a5005960a637c7bc85a096956773c1ea835ae3874b232cab65d5d63f2d01e3a9d11d90fee8b67a751715b59acddc95275774b775f2da68faf62f9a765fd08c630908a557ba83d4b9b6b73a2ae4b81c6365ead648d10ae6834599f04291e83970c1d48b9db2c7cc6d0ac2bd3d7cdbe23bed35f17b46ba93c6702e7003f3e57ea163cbc8dc5f76a8d47879d66f830545d5056338fefa941abbf0203d7f8ea99bd2dac82b4d74b8abb5d4fa8fe42897a82e54b913a4475a515f5062d2f848caf44c69dec5a2789fc945237a08f811c2d9bce7e691428eb90883445662e35708e8a5c6229044795d872541c9c8408eeeed298d437298f11105a8b5aa2a2091e37e515f7d062cf71ee7624baa50e0f44f044836eb22a5e0ef7c5a653743418f8ccc60b9106b6a905b5c39be039f582a451998bc7cfa560ed47ca5f2d54f8262cecb1590dee6c8e9d194fcfb71e7b7fbec8e7487edc57f944f8ef71107e05a625f3a517bae21f7c575c502514264401dce980e91715acd9effe389d5fb57daa8995985d1f3831fbeaecb51c60e68732a4e9ce4b3542b0071aa8b8dc2aa0bd7149fb5f23015c6c8f24730e666dc512a0b2ff31f5f2850bf3fb8dd72762ea806c6a3da9b553078839bcb5c4787f583538f81d86d7a51802f7ad7436121b1b6b096721b205f55d57ee5e0f6030f080d71f069bdc48b3a40e39ef8262c36f6cbd47ad2ba018a80dcf1ca6b2f5ffac3a8dac7e5f084e1df7b0cac212baf317ca9eade659ccd4a57c577b92b79c101fcf76e7804fb824512c3778bd7b8280570dde0bb166a74d3b246d71265c4a370deea3ae8a2e340c849970f99a4b5ee930cfa9d0c0365264101f37c1d141aa03e460273a5b261bab0b71080e9e65c78c2898a24001ddff3cb0c270d4d1c82a44903d11eed80e56369ce451c1e8adb65034c39f581c2704930909523b4078dc91e5ec3d54a867ae8def497b055bf515936ccf8e9157f080eeac547ee1f1ae9a4eedf7e8dc3d28ce5e69c9414185f5aefc68d0dafb5ae5d1caa91f597d759df3cf661106d071a9bd4316585944647c5e7364bccdd816034b64f43e851d9f996077629299cace79b82aa3e4c3eb7a44b5f25219dc5bd13e53af691ff02efc89c6e11f8b87ebf21608d107cc5deb96115c63371ebbe3050414df6b355419d42f67e7605cbedd4f09e070d63245e1b1de584e13b03283e56a3c1668fe99bd46f8f01c2bc4b693b7f6287f2ac94a3a3ec355565de9aa62eca67076e5304736b2b0e90f3d942bb9cad641c5bb3de73a5910313434df2ee8b7d130e805ba12b6d9f62418d4caf0cad8417821964864078c693da74dcca29d16cd7581bdc05c7abba37a442b42a9e7c7442004f394eb01f1c194861820f122119d9237d6c2b27a23a4186b9f54d6614fd06c58b600a547920c3e553402196366cb8bd2be45c56c2abff89137068740772a66e07d6ec05ae509ea6203fc0c78ef24c040dd3cf7643083153a9b064f7c8be160d7d607ea4f46c89122397b4458bc0a07581f83c9cb5c4074204b6ca313f38da9a83e27e89f1b9ab483342e393a3c94797ed6452a1788467a9e6d6da3fc7f03998bcbb384675111ca2201c27c119db0e15ba99df7e2f4b5b6766176a1ad770c9ac7d5f3d654ccb4c8686d8a2b44fabc8bc4b61336abe86c364e013e8484e58c73f939e7747f1b4d7c9e03fbe82480e8f37b8295522381c67afa657e3ec8a66090d658daf91c456994a00e755443287f70bfaf42ec71712b8260d99be581b8b609066590c155641817980ac45aee9452a9188a8425ff03ccfbc969c55e10be668a64eea692af8511005621efd0f2664776da479817af8ee81b2d9212a750c8ef4e0e7ab8d5da71c84b4c218b59fca5c74a648e897b829e9737e9f92201f17eb142e82027aa52ea6529482aa1326ec8afbc8df23a30c821f64019a5fda52e2670020d1fd9c10bb2e8182653e4ecdbfdabe54a39492e168858df037807da4fdd53d94ae526fb38ddc55aac13819bb29d7fe2c21472b0b7c8d01585f016944722f5ae3d9c76e59028baaac34b919332f4d52c3ec6c4ebbefa6a084f4b6db2f76a5f7d165f0c5afab5875d363e8a88aadbabc8222fc7da7ceb2d2fecfc328d10318f2f967ba6892c187c0a8c43d6b56b240d3f13803137bf03139f8bbef7f23ea66d85054806529baeb001665de7a463fb8c7d9f478ada43c46002501286e42c8e1a207899f3e7dfddd90aad3adc13f8ff26e3d034b01e636f873fef633bd35bfee25311504040be8d5f627e364c798276b6588bbd6d8b489d987086c7668acef859d811917daa982fed2dcf643d9d061c9f1df5ebca684b5968710c4d0e8ac93bd9247a2051dbcc3d7bd0b847706c435d7bea67df3d539eef95efe7ac260163b6b56af11fb38d3e1eaf42ab1a29e219d52f2e7071b905c69377719113ebf11e1d4593c660db01f54572d0cc1b85c164d731bd1042add9fb514ed2a316767698f809f21d73f6181c9fa4e15e224c6be2b85419d5a854ba6230090b52f93d75ab14bf4637ac0350c8a8d88aec5ebc5dabea1e446a7cb4946c39dd7b99d00a5abe5236d95a92085cf073131ad0582973a6a604d821116248f6664a17149f235029d124784a7ca29c6181525ddb728cf35dabd7df526a89d439676c3afaf115981c7445cacbaf7456697e5941cf578f65f4c7e6b48c476b20f7b54e9d682c30f8d55a55b0747c7e90e2f42a9bd90541de52441af116693f36a56794d2ee1c847a94296b591c123b101134205081009cd6ce3b8e9c13c028f6f9ba932b1cb02cfcc8d5cd4b8592164375c4e32172657f343ffdac7466a1072048e025842ce034d49f50abc4b6bed2b08177e6e3e24010ac4dfbed33d59c09d37dbeda1662d8a932a82a6b4248f3fc194b176a1195256318bd60d8f3e3dfd6279917011870a9de10cd164798d6818f3692206f9a76622ee1a98d4fdab0a887a257814b5746f0369d1e41b0a638d815131c085269ab6a1d5c146eb999518528aa41f816ff25777266af836a56e50a60e9461768fe946f336f9e56e690cd6f09e5d5307c6ce4e71d2152e0c886e216b26c51d1d3999a3fae4715b270b805071a57d0820ed99d9fa52f8549a51c3bd0aacd75263a2a21460b5b99741d2f4e151acf718a3eaa8b3ad3df9f5d1ea49dc05741f4f2ff459461d8f4e54fcbfa5026ad2d96652d6da439d207c1d9a69401ea2feae39107fec56ec8b0f1dc801c0169d950b83fe297467b40d60aba675979e88c4d399761d1692ee4e76dd0de6d768558008d8eb55fabb23f78eaad46ab4b580ec3672e90b8f4555addfa196682fe60022ce9aceed08b7bede3fee44d82853700d813d3333ba02413756a064e8c1c7e552fc68b4f0e2d6007217aa4297d8311e58f1267a2f3613a07eb558d05218a44b4281c67854b19c0de53397a5e6b6359b095ac5e7232bf6b8c14a0e3e1b7b84742da4aba1770bf6f8131728901dee279b3b54a231c81b2640d5eb392d526f151a03460dbd9757a723f3f3ee6c27171e12a78d6bf5f0b6c1cae05513789eec99119de3ec66c5ef462250ed71b0b552dd8df3b6552c9833c71acbc7659456679c45dc845bf76a64ee4fa65b013fa570ffcbb9f360479d3ea0d050c8aa351bc3c6432d8beca9c7964a95cfcbd20b95daa984489fb5f11f5e250f0daaa156df3bfa17c0e80a597abb63cf893af42b2d285d5ce791dac5f573c322290abd96dc5761592c278266a09ba3ee0d1d61b69ecca0d27f1966314518250084634b7c4ec93f59a01a3716bf5150509fdf90cff03c8002cb825046ccc766a6479cb3f286f39f25de1808a06fec163ed68a98f406202d4f65ec5bca66dac1b0768c03e68dee150b3f2533922cc92e1069154e20278905ab77d1a1352da0a225f3ad01008fbf29174a4cb977887a199a64c0937e86e60c62e8fd37a423ee3119d9107ea8be173955d55879e7abd64fe74ce79e13c7eae099ed7a3fc756faa5949e3dcae6815c4bc344f7cb95c9d2124076ff4336ebdbe3ed9a4de04d9f807250fedfb1eec98ede4e0b5220a3ea07d07285be6b8ebc2658b504ac8ac08cbe415ea6a83cc450d0547bba7b8f0d867cabc2b3c55bf6f058369457ac41b8431301b517f22f3f7da28a7db110c81d4749f334ad15976777cb25ddc59f9e8172e3521569213762f2e987f9c2e02c192c6931d1a0a294790b6f52c09815a577b1ee93b4f8f38631f1a6b261fb3c47a487061cf24ee0aae180da855860df733603a0137506c34545f00a70a7d5114443a428480996f861d6904360a1cbb982bb72ccf646615cad620a94e3761e4754c08cb5d0ee1b5a7bdf307316642e064a50a34833f5d0b6a7b318026edb2c4e040c4832e7c67c3bf0dbbd28d9ade1c49c442ae1f3cb62bac4bc8483eb50da3e2752169167c275ebc1e3286a060dfe0f4c8b4ad2a19f01c627fe637a9e53d0a07ad45124598dfe03ab157ffc74c7c641431dc66066c1cf4324c1ed2045e04ad2dc576f683a6b8e56ebaa1fb8cb0b78b263541056d5adcb05295fe21c6ec9965469eede600967f8cf76ac398f643638ccd138062c642fc6c43f03c4ac4a06f2572569a3b7ba74c2bb99b5abfbfb8f281bf2d2eb336383276ed0862b7bd67c6ca22de16fe8ba15c1f62bcfd43c20321c41e08969750448512604bfa03d873caca62a5681f754b630db3a68a690a1b815460cb9a107b5e1f1bf42a753d51538026e78eba8a26fdf4c1eab5eb5e1db1069cea928514e13a6cb1e43d182250205097206125c1c0477b8ec68195c391a0e142269af41e0464d4e6a6334afce7c00ef4a0a43e664c306750c9d58dbe77e76c403268319e1113f6828fc73e9da0c0da9045aed7f7808c755d23a0f058d19668f9279818a1ea4b13be73884211a3546b77982b5ad491d9aa6007d9acf0eb7133cdbdb6fbee3951640d8c4907adcba289013e023989882dd0d2476ca8668db0029c51a3b21d536ab60fbe353cdfeabce6a2d980637540e02699dd86b4956230b85a43c02b0a724052512b83a301f2400a311e2f94c23416e5cdb0e130a8c7ee355bba90c83c7b187674c627805f058f5e9e762b419a101fd59bf88d02816d9c56dabd3a9d5a0f220b819d1d3c77c5d6faf6d3878d87fbe8d4a05e79e480573cf06161d3bd7b3c462179ec8274c43b9b0e1f6d2f71cdc92b1f39483459d3939b443a792d09cd893bad58b662b9933aa76d9c45986c25d7e477d7ddf0cb97b57acb6aa90e4ac03811224905c45267d126242531d4ee35e557f9574883be1d724bee3ce7d82687bd4161a48b73e3835dd568c09d21ea650cb57cfa9687af62fa18c08f9fae67a33d1c760fff84ecdad6e99d218d155c557a03a2a7327110341be12e8901cbeb19052b09bef64407c20d1fbc33bddc71d7d58e61b29446d5c306504dc941231bd7451ecf2b87dbc7c8263abf8aebf8c535b46a006386e60b6c9c619b29501ee9223c693a60a1adec27d5cb58b338e81ab5896f201d03bda0e7983410ae0294dbdb610b2c2d70d80037e562dd9dca0276168ef7c7926a57a3e22c9d68a2f24db9c4a762a74a70586959a96f937960036c20e2bff97e1556b85d3b237c28c16c4996561e39f1923f65d0d373736ccd538722324a50e0ab4ddfe2716f4d2b4182fe35304d2d3881ea561455e5359f3f3893b922dd6b0a67555ba0dc7e3d727e8a1e4de754b800fcbac810637d8d5f5327161e5a7760230cb45405444e81c34b6821569201b3a3d44310718feedf69dbcee828e7c9e764d34ddf8c29e443f3ecf52a0db3168d284a47b1f4258244798b677422206ed3b5d475bffacf7d4534d9442a5fe9687844f01c95fad14825b8e2a81f40134c760e2a4513d7a78cc983285137645b20b532643429999dcebdc2a5a641cfeded6739a866c92591b312bfb91e1e2fc414e970513267e7375ec3ed47c0c03712dd0f2038623b83a49a86d87c238ddb5f202131ad89c26c41199fe8a5a632019711a99bb48d296083a3c4bd567a6c8e74577ac11b80008632dc549ce0a619fe3d696a83d3f57b249b7dcda9e5b04a03b85ef70cc601f545bbbe3c217e76d7fe3c8f9afeca0a916e1005e14e3c78be206819bf642ab63a6d5113a953006dba153dd6ca2ba8b4c657713a2c2eea7db431155069a8d4666a2de782de5b01f5aff81df753338662a592670b1c8147a784c4f6073cc2c4eb893935fd95e8c0f6861d1d1c8abbe0cbdcd15a813ef89d1ce437ef5184219055b7f607379d24d661318e2d905a4b327c90fecaf407c616802c5fc913aec0dd229e8036e0453fdadfe6892ab3dac3fce2e01bf80c4e584400cab150634127fdaa66039c09c75b3362d78a95f2a08a785c5dc28febbc548d7211e67414921945fbe7f5c96ed830d9e247abc74d7a93b8b1e8c934511b95cc9b964e793bcb5867cdb24f10aed6a2bb466d4a44d69f01f05b47d9080fd63b113093bc1a434021a300224e502aba1dd7483490d5efa1c5f5dacfe34718b352495b52d236084239b8ed2d65a3d9f8059ef22aeefa337c1a1629f09c3044c55ca065c8503642adf36a3bf47ce0e5daff5593dc9cc366945d152dff2ef0e331b2e89856bccd1d3c890df1667b503ecccc124d3af69c35e664d962f678bd16a2d1bca6b5cdb648482bbddd4b05ccec6d0342c5ec2bbceb090c1428a33222f43c931fa9cfd6d2713085ca874f18b44bc8e2b413bf3dbf77442a44c7552471b019220e90c4c05a0036d27240b4eaae61b95674e3d8967a15a9a817cca7d654b02cd897ac4c68f341e6b39e48088a5991c20d1454132ed425c6a23d0c3c486abd9667018de80866047961ec8b53e4381c3eb24bcfbac1cf951c37e4d3cc375908ac7c279638e55b1bd5fd2744906a1c6e2246c2fe000c50407afd2afbd5ebe4af222f8e679a69fa0b3841ae207e2b4a115c63685fcfd01eecf5cb9168a1e84a6253c77bb374f52532e38ea457b5c2fe58462c9a8938ecb04256ab790f39ca85318e8f109364c628504ceac359276d9776141ff8e1d58ee56a7ab31d80058bebea6e05ff4407d7fc1a7a9e707c030b617949147575afc0da61ef1c74ad4309718b01825b600a94271230cc2c642a430bf1f8ab508b86ba376467ad1f526c07733ac5d1c491be630a48b86b07b62e19becd487860c96cf5e0440995c467c41cdf2d86720c063b633a4d8d61948157982cf0652addc2e8bb864150d13bad4e37b61fcd391ba84f2046730757d7ee815e61fd769dc3b75dfcdd7300b68086b330b3b8ed9a03fa46f8fb63effb1984d54f78e0a041e87fd5778ce91561a258aafe5938452173619453d473bcd4f86da11dd3f3d4225d484eebecdc8c91d4d9655a37d65031b01e90bf085babce6761f016543183d329e93a22a8cbfb0ef6a02d5eb9d0fd15a9d7afd1982bdc783cb4f3c3c507e541a8860922f8e353e6d59b6ba04195f8a75e8703f0ae39f8dea70971468157e3ec89d08c88dd8184104da945cfd595b5119209bedf691b58c3ed3b79d0abfe02296899002a1c9703a485f73239aa4e3e4ef666dfcfb80006a54a7da08ecbf9b3e9ba6cf7a2ea8a000465e50555e0fcf673103b25dbac012ae1455fdf78f4aef9c6c1126bdf4115269a924e42fe5f8f87b67ab02b7add70af5944a8a7e994cf10f34798edacefd527c6d833f39a74617158086dc418051d82703b389986108d7ccacd7870ad4fe6c3238cd42fc758df4dbc3e0a96f2a54508b3849eb28ba358b3f42cc8232ed89610dff34b63245a9867c5ee2beb5e5910911671d6cc43dcd481e2cf84c83a6c78fce0748c53cd9f1ae55bc8fc22688d00034a9844830d57af242704278f7e82763c3d74f3623a8f78d2448bad8d4f9e5dd502f0da56ef52ae204e0201dc58ea53d6d4781fe2668d08d47e27eb87bda837bab3377139981609b974355232d0baabe630191aa08fa2449a7a5d523e26cd19291440a2967b1b74a2bb15a9c38ca787a7199151d0cd3f3bf464498c37ff5f0afa135441e1e6652f0770d5ceb31bddd0a0ec3c6acb1100fea809fd2c70a229295f5fe80960834fe1ab5c320e6f113e89cf8d6fb938422ae721777f9a72423e46b78c4f66c1919aa3610783e13e1e0bfe3156bdc1cf6ff7fce6463be7bd892828564c27bbc72bd8c067c8513ad193f7402094930eaac364c936c7e76183bbac3487214117d3f5d3345f229b5a8a80ba5c43ca62cc61177651e23e28a7506f19674170d1d8b2d0e138d249ec3a70aa38212794ab5f7238819381cff0b99a3cee033b69c695d5c78b5aab93bb1a45f881a93d5d36803c9b8a11d0398d11d6c8c802d500bda4167da96183ed09a12917fef6756137b698a1c5670a3493060c5c052ebf6399bc87bfbb615c2a892e7d28ff3e269dc139b8888c4a27178446f1d89a49a9e25a26095922a43e6d6e0e8440ad114f8b601804438883ac534dd55752b8648d96851845aea6cd3719a4fe97ae59aaa3882f0520ab25a912517218249b2656874755fc50fe8fbab90f1c3422d0b23395dd9b3b76ad50ddcb67141c2da1da03c8652563b1dff99fdd71adcb9da836233c097ed8b79497d843b7d6b220930e5f18015fbe449d02f59e8c39e0b805dd54cc9feb225629a972640e28bdacae7a67ff0a42b12f49c7203c2ea0061d17c686b5ff6f6f42a6bcb2a06ee6942a410347d77f96b3e848ced198e264f43697db90c8dc5eedde72210201531d720d60cf410eef6460d747649c7553651b3190bbc7c119156eb376eb9e283325096d2ca7117e5d643eb88dcba03a70722904a896fb5541e31855099996d7a2839d609133715ed6878b136f609f51e0eb144439f266e7d40e797c4dad039b760b07a887fb487a516e090a0edd65081ba767144bc8310236eda533f81491ce51319ce229b461450689fa27f1960c25c6800482c6e6b809d93cc10f88125e4b7c43df4982052bf73af2c87d9678803cef5d9ffb477e74526abd12c2619d20e8b1289574a7b5379defb6a85d9f99944cddae51d72fd7cf1df3f54af67a925b06a972963cab06578e754a818ae239ae2133575b863d54a1d900ad4dfdebb571b51bfecb59698e68bdae4b8266090ddab7594a3df39951dcfdcb758020e2e6f6b639a7e49120214401843897d48bac9ba234ec96aca41787f48de446256b5f96e6ecccd75284bb0a531b54c8fc1ddc8500c81f446adeba0e98a209da77de05c3c1e6b385afe8e81976fd372a8136aa72cbbc1e6627e328b6a6cc0d92becd86ddda978a5c35128b23d78775c0e47d6148412bf794d95403abb23411f0e42287b9590b02865675b64acf15daad67fe33bff577b41c2f001e778da6d6e0b896c153fb99073838d39052f76753c5f95e24aeb0da9f4a9235962761dbb0ebc5b3bf517222d7e59c3fb60b1b43342efb1b1f2f18d8a62387e672201bc3bdd283214925809cf371df348517a7002b7250cce46c525712b17cdc7a02e923b55c9f323330c5a18a255d234958be3b59219167ef4d7a3c04fa85bfb72834f486f93bab7842f84723b45d9ccf4c125e57c3c2b62c68cf9337b5a51b6f225540a9ad24f3a08fad55cf5c7ef1fd5e2d02bbf1dfdc54b72ddf99a0544a03d3752fbcea0890dda17c42f7ef7ac6c34e8144b94cfa0c17846f87358fc01189ecf263f9bbf6e35b01ab96b9ace6c4de6fdcb04d4b8b9a77d21b2d2c0604c8194e26335084f7846d178587c7d915c5cb10e8cbd626ce62e6d7a40ab3bc42a4c7861f27032df4a8672f6416e25d1915df1163d9d8993c5a68eb0e3babbfc2782ee3ec3673b5441bf255eb33c15c90f0c163c72ae005b1f11f07c864f3f39ea2624a4318478f87fb2c2fe8f2df7011b9117049281ddac69c5a4dc6737aa1b20761715fc0e2d906329a614845965c4ccf40464f9e6df558ca40f61506f34122995439e9a7d82fd4e7c5e4a13058feb111183e45c5c59a59b629ec3a401d292609d127036f4758583215b3683abac0959625584ebde630ba276dcf2d26bf3899fd75e37261eff468f4cc5d9fb9b2123e75de37650e03e7f6564dd5fcc8ae6d26df71cd13a26e38cc692dbf6491d4ec7ef43b52e2a418735bac5249ee39beb6e9df98757b457e3c4018d4da198e912a85271518b974e26881d7dc06787c2c932a055f17bc814b8fb3bb488b06fdd7ea1f4e2c218c626bc2a206e1df1b70d7982813da94b7180a98de3dcdc4e492d4bd8b89b300acb9cf89683ea47d372d4d06c4e94d7e6d641f776b015b2fb7e840c8c30ba436a1e0a1874ed23d3a4796e7bc7853ca8e5d1cd4805ffad47679c04e7744f9c14c1a9d1b98f5c7a61b45237b3d8731b6f317dc7a68c199ea2649b66ed095444418a26e7bcf3e669ae1a9dfec9b31b288717491c77d460031333e0ddb6cf98b061e21db7e0ecf4e6fd0af76bbc02d233de0ab75b012c9d8bac0c5933f3791ec10252796941caf6885d2de35ddd5ea6a6efc219d766f99027c7f6ae4e1fd9d18f14567ec79b7facef4a4fb9675c7864daf740103122a3d9cd9e55029b9dab2aea800d9aede5bd27b3d8a6c57579b29ba96b8f4cf8a9e406a846a4f2973e15797ec49f4dec7f3023e34808ec059f6b6c3aab0ef57ef81e67b7a6e498e1658c4fe762c772827216b89df52ac388199945baaa78f1e9dbe439e3b0436d916c5e9222c1b6ff2345bc3b91f30bb2bf273700a55efe15e872a4a16fb271050c279ded71e6a0c9ad020338c8ac2d04bba7da9121402fdb91b0baee8cd5db0ef77a665deda05b2648dc301e71822c58eabaabba0f7847c860dd14d0de8b52117ed8e1db37c4a9c1e475596f4fbdd394a18122c77f3cd54e6d1c3ec79d02cd17bc8e79389d35e587f95f9100ca27000f233e6f62c461a4a02638199b6650d863d8b7d574e915ae91ef165e46e2da2b8ac98b66471d8d1c44556c13e56ecd345b4845930ddf26c41c07a8ab428eca51fb5d415f561972bc071c2e5041b7d2f01a08f7bf8788e6f0f9c5f9d2c3bba86156fffc024da9502b42a9f4572855bbc30d227984b4fd519c69c7b269a23629434d295efde5927e72fbbded2ad5d744b0199865ac8afc45d53b5a6fc955bcdf2a32ed4b3c993223e1afb8302c02ccb730181deaeeec1c95722b79b1767698ebc53e4059de07cba4768eb536ac6e0e5baf898a4004a52896805f447271a62fffdb83fdc943fd9542e15e6c56eab5a3ab47816e054c24b915f9d46e98419078b1111fccc0bb4dde4d9acf1676d36e99e859d2aab37332c466f2776479c7e8ad1296ee452a9e0b9157c9d960a18432316b16d3c2204d8322421fdb03b6341a1cd0811dd5b512e477a4453e35bf37368f5355a8b6bc631a5bc0385b4b657e7e21043f47494f6498b0f32a9f02d2c27338091a90f8960af569d5e0bc54bdeab705c9332973382195f665126d465ecd15cc1a6d2d8b0760c08d804dfe5b849cdf6cb78adf0b938437784f3def0b0e54ac35632462dc5a289286054f0bf4fc56293661a66489c14f0ab429a521c81ffa5652a5bc5bf125d9f064d29039fc2c34697fa62cf591193d6053889337240c74005c414884d8d47da813f596a09555699806db6652c0b44a57f2e5b685bbd0b83216c3335be5590f28d4e1e041df368054a2731aa0452d135b45f67bf71199e384193368f1a1cdbab6591218b14e4c7605e6baf00a0c9390efb774106dd0335d55409183c46e969119db74dd719acc128d7bb506ffbf0684673b4fda77fb52ceb48d877ba5d6f4b2f839d053d2b475e1ecf51216d78487b3db65832ebcd8b939eacd9573d5c86f393bf1831820abb237ad55b02f792e57d5ab384638bdd9f08b8b13e838326e747831d1e62d6731f5504fe211afb2b8df13b54ed4b6b8eddbae9d1d0e121788d212ac6e14581d681a719f50ca73e1b58012673b33f6841ca6ccf2eb44f4f0c7fb09a3e34456a619c76603dd003d32c07d6f86266aa59f1deb73715aacda8ccb7f5d478292f2e5056936a3ae372ea557a4c8396898d8ad97b127dbad2134f2e49bd41670e5ccb43580066cd944df010352a7265276b614b5609dd5c534484eda092ad0f52007c63ed47f11cdda201c067e0b7cc1a852f4f89466e3d0bd29320731bc50cc6452bfdbff0c24771127a2104b88aebc600eb6767633afd398b558d6a0023a7e3287c01a36666b4b802a3dd7474211feaa7a3a6d73830a2f909967bb095340e9d0183f17ebf10fbf2bc7dd50cee4783b3ad3d791cedbd88b122cec686f3e05e7e05dc63bc2d1d37950db7463153bb56273ad11e80cc1a8356d6eb06c78f0fe1174cfc960da1474c7ca370c7d9f2d980674a027b7139fc87d78538fc4b95943bb7487e9822073c76d5807d1ca2506ebccd6b11d7a58ae028a5cb54176afccce3c8161740470dad2b0ad22e820a7c2578dfbb0e35bbaf6e7a14ab925362acee46821b0c3c5dcef2220486caab025f30062c595346290692d5724106a8a65f9f5d1362cea12f6ffd1b9930656cd78a7300d5bbbe88bf629bdcf3da00277db7c538784b56e9ba73f00ef0c4bed5cc68bfd13a5807a20a4006f77c969f3fb8a1a876304c3b3bd360e46b14475037cb9b99d26130ac4fe1267ddc0fa563f7e93c8df6e226f59d6e6dfa729e862e2510bb207753385b81d769721d105f19130b78749bd824727202aa573806846649820bc5ee2ca230aaad5a475437f4a9f02a4e787a04441aa94209989d9f63091601f7748c6e202a9bc404e489c700027ed857b40b3f51ee4bb70f7142abecc8a7e955e3370c4a65a50d2204996de6c2d1ec8ed90d804a234ac3178d06f9788be886d6dabd5b5fb66875859689428537772b774fbb3f49722b97bf42628483c12f543702290925adf7b1c671be8387205ce360b798985e0b15f5c641b41e011bae358c9f9778f9145932f214c599735dada7a77f275a3068d3e52bd76c8a591739c1e6187e132f3c355066143562e3e13318fa78f4812d205b354dd2e22aba42f88701a48471385867f1f42d9ce4b60f6dd4a9e110c1470b98a6df0d1e77b48460b93c50c96978482eaf94bd5067af894510350c4bc114914988b189e9b7de0cb97a39124e6e123e94e321c0024b6b0c86fdc6b20c133c02c290147a5e3a8f4dc06bc979075d4a01500ecca15e9b297226bed1c7b6423fa8d45e8a54017ffdf87d3d708fbbb5d54e2cf5b224daac77e96c8a20df020a3870e466beece1c92732e08dc74f9c337c22c0d570bce988d865d6f3b26127425398a31bcc71317064fdcb6a43762a3535167e1ad63a1fc4942efc12c82c39a632753173635bb85a52db12929df44bd9af7ddd3ca177d7949fa4228d318f9b4c5ee9d8568b404c5f76969ca85923fc5ad3f55ac8f6eb30a44f470636d8f60344237f77766a1571ee57a38093f5531667a0f1056a9a12b59b7f625c23b4b70ac462bfc606e8a82b5372b6b1b835c55f8a022634e3e4a602911c167eb00ad1bc7b3781f862f29513efbdb5eee120f386db4f41c4369199d736c65167da80bae9e7383f4d277777c98dd4f52a5de5f4cf1815e3a87b166f4cb91d1539d81b79b6f50dc599fcfe7864ff77e1ae704984caba6f36a6fb0b8c371585a03cebab91626d1db37561f049fbbe91422aaaae19d2e101050d9e0453c9d14da6d870135a08755d6fec2d38a96432f017b09c246eb8abd292fa672100569fe81ec6c621990527550731b8ca2d2e1c7c8bdddbf408b9927cf8e38564b26cf90026161eeac0b40c372af3953abb141de42b000dc1c8a25e63914e3b2160521b4b886c89cf6762b44ffce2e46edcb7f836638b936ebf2cdd0b91f4acb307a89c485eda0f0c1222a069bb975fc7c531cfd26ee6ce90a23bbe61566c9e9b4b0c0fb78bd135a8411d4233cb7f9a42767ee16cf42a3d18259a21761bc67149bbaa2e33e45918ec74a7b35ecf717222753a92c233a4a90b5de8fdc263bf8371975ef2ffeaadb17382968c355c253a62ed81a6edcbfde7557638997949a30dab754fb3423e9517d3e305b75771cec6ff33ecd5317ff15f5b337e36ba319803b4f1d7ebb2c21b93dbb6340949ad0b3393c67ac348d20c6bdd9d9c7d11625ae52f022bad1421a66a8b00614b54e7a31af391bd1932c51e92a4ccd276751ca16d6ef8ee10d4116b16a93f2fc153ece115667b3f368e3f6a3370889c2a5208f2378b28132528cf5028cb597a50422602206aae452d91ae2b1696cac580e92318f2f749cc62093fd86b58810a9f09cbc887de583f507da8121471754a5dec49a47ee9324b711dc3b63d50d06e561a748db1e5243e5a25508cfc0e65e1f2b33a2c2d988405be754a9a6e54a2903d527bc7b13f622af4dd019da99421578e35a37c98fc0c15fe4c8b4319be5293680bf170b8be822f6b5107471731d9ea959a7534641fca6e07eb68196ac3aabf025443a6a62b2c4e34487c2c477aa0e7dc0e3d509bae9dba2a000edc4b87c1752b725a49616f6a09c210ac7d27fe58212ae62791cbe7b23fb7594a8b1e8c7eeb2b1ad301a3f7bba39aceec6055fd2bba091fb16f1baa33b2df3a85dbc343449f976121588ba94dd546cf090ffe6bd56416ffb425ee1be83b7996b1de6391411db30b067c6af654070cf4858dd64a0e53836a35de375c42f140e2e39eeeca9aa2733bb94e3cb0850a6605c66bfd8bc66b3099974522d1128e814b7de7bdc7a260535c639e64eac2ed7eaba786f30c8d2db57eb584aa0bb7c13a10fe4d9dfe2626e70b05d1a24a19b7f0bda573b8e190c7e8df87865328e3416b72715351a24dbb82253c714e8dfa50739b785c0d9a6378020ddf87330cd9acb69dc177796e502d333be941d4b02e40b6090c3a728de059b0c9a85d4b93d73d1d175decc321eec0a24b93fe9dc004ae3ab731be3c59a4c164af92610119d3d90776050807d9fac98f4f28acbbfdbd2e5c57b7c6648149d5c7fedbd9a5c0b1b2905abbb26771084bf852902edb5d188e638bfb7c3b72b8cc8255e9dab3282a3bbb8545cccaf2d1146d261a8c1f5f72db004bfb2e359b6d52bbf9ef2c57ca76991e92dd2bb7b1382d7e17544417fb0a410ed10fc7796e49fde3e0a58ea758b884559e0348a6d29250752d8e657a87ac44be8d19442a9b4c84db480e5710ff6a9c0283c1c4fca7a2fb40417f6cd72671e1aff1b8ac7d1031b30c262cad5b1408b62d6b15e3aeb01e1ccc0fbbb5a9be65336d3261c9fb6e03ba263217e38c291b15e8b34fa82740d30f6a3add2d97353d2399ff7e6064f5e621a3affdec0afe35337841c1b11f46ab498a20ad137049c026466112544c0d37b8c6806d358cc43adcc04a08485e3c95390d5846cc303d39c323565d07f425f7ab9aee991f3f40a682ebb07ab6175283de8e0cb2ad060dec9610bc34907a4a3116ebdd67444fe1740de528a28335a9e638b11bdf13e7ebf54356e9fd821835130f726713c8141bae2947f1a9866931acf23a49171d63c2a9c438aa612acd22fe77eb6796ab62c0ce93d51e1f03114d039aaa3a065589edbb0d86118e9da08a9fce38bb2b113f69a158876e1c6eee2238fd62373f988579d1b11d0ba7b5bc49701b1b06414d9058807e2903a6ed2366d5267b0f2087cbc1a32d0a00553d68d1057693d2e19b4fcb32ad6013b1978684542b775192c6bff3f03363a0e0b9b160e60abd2e5301150a168027e447d923e48d972a513fa280fbe7233461d9b0dffef7f7c2ef2603eddde5790e4464533cd1ad8f8e4cad6d951804bb50f5babe5580b8d83299817d3e56451d5199da9c0f9405b04b2d5c911cf38851bb5b69bb3c97132333f0fb416e4863ab68fc5c02283cb5b6be1fb42da9b872623976e596f4e1a75e61e0bfcb09b0e5aa0be5653c1d879b3f7f103bdb1fd9a39155135f12fb612f0bc85ebc6315942668581340c6536492871645d4416d39747214c1a190307f4b39c53a454d155b8144d40c9408c70bd298602d7a2a16f6dc108b5c464efd81ca901933c9b596596b8fb1eef6f03f7c933b2f183e9456d61bdda051a6e8499622be8264c2a03722aacece6dbdd06071430eb136e454853a849ed3a3ddefdd1479f514e8bd193bcf71fb55d87665d1e95c1def738b2ac49aeea9bb8bcf31fec0b06f365a8f55cbf71293539f19dd099458f7e238ba9094d3e07bf0ee5b7448e9e88768f078a558cd58febdb5c2f922b17ed81570784e191a7baecafc431f342d52f41625d157bcfe215a2e9b17579e14519e37636f6fe8b31d1e7ee44397518a9c9e2842a6e1452dd378f29107c19b8f915709571592129b56c9c8580f347f8abe4304d1ef7f3e3f4ad13faea7e21e89f9868954880f792fe4f881b84e2c0ebefa65bde45894cfc68ac06f29e63de8aa2ce48f72267fc9649c81bc1dc1af2d260d8e2eef233d89838a797803b55bb524f96dab33f51461fc1d0b15319de2b320203b319501083a827eacdb49f26dddc52ce7bf434cd0cbc2c130536dd0960cfd1d5584b840749d64f76db95b9a9e38e2d41d133918fc1f54414757859c7ae0032cb02494903656ff30d6d50f61915c622c3ccd1e41802a965db03831b60fbcc450f2d38ebbfe7c36bc18cdee2dbc925f44ef6213e18cc98f623507942916f6ace326bb8609b8c1674d137443cdc34e047aa68740743907bf003727b97630ccd5d5191b4d8f7ba771e89c5e097e92bfdde28d3a12034e9647b02313f22c6c5fb1934194392f30f18ab6ce7578a3a58884f8ad73138583f4e151e2505423d315f52e7fab9db8ff1d5882b86927574386f23ac7f0577e3257a8a43c797ac44cf37a6654596502b597d12876f3d72426d56bcfa1dc00b0812ef575cb5f70225ae26e1ba47d21254d06c440a6011e2f90fc8808a00f1f25f7f40c67c37b9f9042fc02faa6f8fe6cf1248cf48b4e8741c67f6843c3db3e38f461dd9af318c8ea305421e08edad1b607443b4ac73a8da06c5a3d96adfa62eb645e0fb91318c585223ce4d616e6544ab16699655835db0eb94eb6ccc20639272acdabfff82b06b46a6032f4002b3534144379a1a518f5caa607d23df2632c762b54781c113d24c3d4aed64f9301badc2acbdedef768294ce74b5d4068fb494b4f3c2732bdc54a8422a952a995ef74ab5370d17c7833176b97c18acb3a2b52b80d152bad5be10ba752b93cbfc11e6b36bdc11ca15e24d6cf38d914eae3c6570bae8e182fb5b1d2211ea40b62ec24592f6189c0751728a2528805d81e68371fe9ca56930e4b0db37d8ac1961fe55a85ffc6b02c32863604ad931c11c60bdb613ffc29702a125f368efd948e3b34be82b8d032847a72f629e888128acd03596394f38fac94758c47026e1ddd70792746ce7033c801d7b6ec62181d4085f8723972810aa68e34157ba48e86f4e052b2596b3d98da69d31694d7696c2845a5221a88687e1bcb087aca89c68a4554be06d8506832cb7df72be83c4263f335771859ed385af4acf795c85fb381b590bd7829e1035122562e5843c9920f9c9146e348a26e12fcf4db821610d964fc2b7d5d32ac6cc8c3a66c39027cd9f77b01e3874092f4b5816def1f071e743fbd445f43c3b7e5cd43c9e80a7abfcbf89bf6d34461b9e78bf11c93386b3ab9f12929951fe16c39ab383f1c3c81e30ac8175b83046308edbc8d05ae5ab2a60780beaa9cda35af5697291d9d8ac6be4cb82c6f53c508ab8f888222f1506d64c9606b68b299bad7dcc10aa48dd97f110dfd398168862887f261c06e56e2b735399f1c32eab9b186d92b542ad8ec60ea22eb0cbc66d20141006a476ea86e1f392527b526941138ee45529bde758b554ee1a5ea0a99e537d89ef72c3b50e9945393fda09d284d60b9c6d121753fd9b55f15db2bda5c7d00974a2092d1d467c9d8bfeac9f25908e48fac3d6b9a4f29aef113fdeafad2b057576aecccf7177f2a24f546ced2ed130946643d1b53fce3befbc17339d485e67091d0572aee9826378c62c9342bab62ec37c0b116562689b96e29dfe5ba64e82e02c77743fbd135ccae1c8d9ad2a3ba1c44fbc2198b208271e7c9de1b73d98f138ac8b74bb0ac4337d968fa62f080b06cb6cd1982bcd8a6e13a14523deeded525dd5acb2ddfbafec49c4204c2b1d17b47ba16fd9f5ad27071666528383bd5c2527e36c0746f451ae83c58f227bc2da231a0bf2d185435e2e70472811fdde60e6596d8a8599f8fe40d1269f69892040ab0936f9beef9709cc37e06c99fc9deb6690f5c6304dc85946a8efcbfe75b0215997d14bc56c483ea3d557d38823625dd50697ef463eaa1754b1299e14c3239a56d9d6d2e4ef7fa4ef42bb073d8d4ea831134f26293d76965ed5b2a9c05c458e1ff5a57b482e3cc61cf9cba92b31117333f656af5a38713d992de495ff5307bf6524fa60817631e9a576f79a6dadf0ac47379ac09c5c7c9dbc4ea236a7ba02ade3005149a9ed20c1dece3f0978296b9a4365f996c1d2244aa6a8c7ec3296991f192f222a0dc6787de9661262eb3d5db2038cfbe72669ae2da8591acfc5f8f4ed6689f87f7f4668aaa298f16a8391d8cba734a7f339175d02e993568c9b85cea6c211dd42f454729d874f48a22d66fb0e7429ecbdfb763c1fc7328ac7d6ed3a00e2a5268d0df7bc00d5ea30074312225e25435cab2f78aacfcff5de454fb19f8352e3d82dfe8fd6a3b5a7dcb8d7f5274334407a523302884187968e99ac732d516777f37c8fb71ef1d9b57a243cfda880d202ef0098f8e90784a58bca5b6583eb87e40f01c984c3ea44a88d38f4775cce13a44b2ea4380a74b6c7a4e22e6c6fc91af32819ecf44b59caac27bc77218e5c1152ab05b97762edc93314f9e9ccaa97b45de945f96e16d8ad15aaadfa752dad90688e6ab770d6a51b03a363d133a112b5395ea41e47e484d5f1933ad5f57511b1c14e2afcf0cc2a4a84d7d63e61bc37ca1378a79110094eb2cbf58bab8f2695b582197b6147da4f6db8d9b8e2b45007643ff9caa1cc5bce41524b617fdeadcde2c1cbd9357b83e774ffbfebedf05463417df0cbe0926cae4a37784fa5ee1c7911d3eb99ed14d60a3c03750a7b87dfa31e551e2ac349e8edbda9f453515d3ce9109f3ec7aa83267a861e7171347a35ee593cefa10b9a80ea41e778532b777848071145bc92c6761dae000ec3148ddefdff8b4707330a3ccc20b275b1ffb4bd591357d9f50339e6f9056a3dfd510e8de6f8682bb818531faa6c6bd3ff6d73cadb773ccf31f305505b751a6090601637b7d7007da20876a00940f567f335345aa35538c913414220f10640e240c94e7d7993377d47148ae50dd267b00891c3f17885b789902cb027a1e80dcef6b2ca5fe5cae0098401666abb9a89eb0f023c2f74d029d9b548bc390f95491784dd94add85eb487e8865477cb3fd6726bca8679c403db7c102a7b13cdf682dfea48c6e4fc3cf6f8d713970c2aecb173314cdc5a254569a12d2f0c294d9f1dcacef6e5ebdbfa34b490af1e22cf0d8031f15cdcb83bc3828dde41feb074694a29ef6d4db8cf99c4c84b40c9a61180ca37e44625fd1d7459868ca5faa4402248277ec07ca4dc54c327a03300e0c91441bf2c1c6283ae61dad6c82d194ea28025ccb4f073dcf40ba16bfd69da8246987d7f4c094e0839408ad292a5495406855333638ca8cbcefeaed487bf1bb91d8fd6a3d2a88923b8d4d921e3111d953c28e732a10883fb071a1aa3b1b36c07867a7208d9a18d3120712ed506b56af881632b588a9d144fac5682c1712ccf47813adecb398a11ebca10cd9464ddf9d0510ffb454d20ee0c9e440e73236cd204e982f01a8537c9e34f20e85521974d80267eed7d05a325a49fa013e33c9e68991b06e571617cd5989cf1343234e64d7e9335f70174723633d74d42aa918b16b806347938c8ad82bc7ff0b9423eaafe8fb8c01d3ef94b06eb0e839b56cffac7b23748808c3c80abddfb5713622994a8fab1d41ed9cedc6d9d9f1b2027406b00abd20e66ac290d882d940179fa1dcd774d641b2c5d34a6935c9cb9423f1b79c96334c2b437393995b42a96c41db8e1a69a127e1d75052b6a487bf62d5cdc6bbe34ccd071430476965566c64548eb540bc9c758af3b99a97e1ba09f0cd004434518cd719f930f53456f716010adeb7db452fb2406b6b27d8d9372b39f638131446411ea179c89a4cbac6004747498e4adc7a563a3e63eddf2706fa049a5e05b4043c897e6d9e794f17034204135bad2c88841cc1fdc02a4392638c8583b67181ed2e0d5c3e716a2f33fc3f3a77c07f945ff5e3bea6c9305b74c477b1c64b67d853debe7ee15d905cfbfb356bbc126d7bd077812b8ebd6b932d7dd4484d4ee9594ae1ce643002c1d478d6c951ed9d0f665d4c3d782c580581a8908e45e6ce219846ba9176a823af9449a66252ba20028c61a41dc390503107eb9126c52e5acc07b5d00c123af04394a203a74ba406ebd93c26ac16b7f0d197b8fcaca028a10c5569fa718575cf4905afe85c0b9708c6d99702fb680dff4d779004eb8083669537aa5f9826a58df98b6e922237636024dda6594e461abeec148e6f7abae3ada334aafa9e2bcf414e18225056196a99eb73a5d7a87c2e192e1caa3e1872d02d542c910e3d55f46972e38c9d48630c290cc79c19513d8c858263010acf7d2cd1689e43f9844429229cf3b628054a64946a56e06e9e087af3fe47f22dba92af0d9249a945246b82d3e999b2f37b209dfe6c72b5b164afc44696f25447d76f7a333b94ec2c2dbfaaba43966aeab40b7f0fbbb8de3fe3cad94a69b46eb7809b29e9981825def3daf80f69e151bbfe5a1e0a80bd3a8d7d45bb2590e01d91ae713755cde468d599e0fbb9a29d28d5c80043d0253ac54f702f74c77910a1d4bad2670f6efabc310359fa17100a83932a274408296cc5774e0ac9e2b6cb9ef58ed3682a706c9ea93bfdb90440b1cf9cf151bdbd97ea6591e6b23540885cf925738c54c430721a3f15221bf2a8bdb3218068aeac90a960da32589152988ad38fb85b227a22f38223613e32a29b26662ecc08c1e1c49099b409a82eace95d9a983078907317ff021b55534233f9c6f897353992ec236c5964430fba32cae861ad45866dedf9aa8e138b14d0e2631f64c63b6ee8e4c67a69b9c02e12c7ff59bfc6787e2972a83b84f2637138eabc66815ec532afeafa451da22d30afb17228d66b67743f415f756c0dbcb6682824470c440f06933b18749ea0900fc084d8401e62515c3f7cea2258e4288fbc1276aa8464f135adf778c64efb3edc94c314e97b4e322a72d5682467fd9288c2bcc43ae77c072cd6da91a02bd9e210242c8437f337fc04765e0d0ddf876959c35f96eca0e87e5f41f758dbcb87af422eb5fae4de12114d077ce9503964420f85ab07869f727c0bb6ac12eceaba73d23a07e2ba59aa7d5fc5a4d62cf7cba54eba13275297204d474b380b84419c07ad9631f65840bc3f86dc8076d39da68f72d16406b52a38e309b7828da57a99a7e75882664a48903f8964cb98ff92c0925d6c6a3457f71f1a54fa3f772496602aa5e93aebe0f143c12560773737b2ab8950320487683aa84e2f3be6adc1cc7e27882b033175e532fa57e059affa9a138eeefa669074773dec17dbf3c72c0ad5a48b17578829d57499cdd16a01a9281ddbcf7f1783cca657e90ae9f550eeabf9490466b2791cd9802e2928db6698ead17975cf8c6f4961c5be5b9a5426642fb26f7ad99707f8679822363a04f03153a746ab9b3b021271f36d1fdf2497a9400bb00bd49b518e47e0384e18089e1ae8079463b02f0f4ffad959432b07586532e3ffd5d6067fec91098bb2c682d96f3539d0df06a97ac46910655ee33e1db27b8a4c561304569045fad0fd1b9993db987ce376ac88b029bb869a4a0b0a4aab787ad360abcf2d23f7b12689c778f23a9196dee48a6f6a2669080302d231567c90667956a44fb49bca590bb9ff39e5d9b12249f2a588d21f76ff2a722a506073bb4a89cd760b69d42baca64d93fc0237584c57aed3d4bba5e4120c50a521e60af50088376e77c845366cb853a3e2421e0659afa67822133436123037e34121270c360b9d8f9e5f37ec04ebe61adc951a7a7ce222557fa30882fc174da8ad74ce1707ca749baf0327911e3931d3d014126d274263a0cd9d9295c0283782ac999003d7648396773c18164ea74d5c84e90b58189c875a3798bdc128e438bfbd9cb9ec9f64dc46389b2b1b581a2fc44a58b11af30cc420ec626323b3102b0dd106ee1313a2aeb9e8bb8dd389c9f8efa95d3d998bbec4292e178c6b53d434da19aa090f1a7d877b72199becc967b3c78dc19ff500c33ce6086705c80ea537f77ca9e839f08a6fcbb8ac1562c56246a5aee69699e42157fdae1112861b036c990e8fb4742af2ace0efb23c4a252c87fb29760144317c7a4b8d20716f617b2ac5cfe97a0c0e4a650d777f29248b9fe7bcdfb757d91ec6d81155032c71f18a21a44eb003ddc5d3701de356cfa77dfb2c0674d653b5e85d08d0af3921a05b4128ca4ff5522da431f300da27a0af6e52ff9241f779993e977471c58147efbcde5e872c5c33d9e5a1705dc23c54f4aab3f3dd7809d14f18cae98d236ed32ddba84ca15c9e0c164483ec919ec0296037c3d5e36d44b759317592f927c19101d37b35c5b8c832223f7e1f332693787f530f4bba67b9adf2a6830574499dae9bd132543c901e30d864ba2b0a8bab585a6b2aefcf8b623046e9db9f0e7f5660c6837f5c8caf006d99d4a234b19549e1a0435440c2d63eaf1da2e492c4d2a7e9b967892619c46f4618087ae022c886000767711c7db9a3f7c8e83fb3d5416195b68d49043d5fe47e7ca2ca7d0f0576309d85aa97040a5bddeacbfa3316878aa7f47b4400bc5b73e83081e265f4953fad499d7102d53b18631840883935fa3961c1c1ba601d5ee4f93265d18b961a608d4fb4de4aad4c4d344e93cff9ac9a488ac2c3f20db5a65f754d4b61cd657088a1b847ce8e8edd7a866f1816e0f3727d545d4c1539d3eb4d30d052f77f104bc4b1789ca65dc239db1eee502ecb581fcf650620d61c0730d77ce56a14a4e9ab7c88648957af4704c4b881a243dc33be9040a21f6c710de84cf076b51e8caab97bad1e33bb187df1b724cfac7d15b734f251dde8ce384606545a2385347815325695cddee990de631b1b9bcb319e5155015089b06b388141ce7828bce4ef2a134168bc9c48b503319c49a9fe3c4d402d954349b5d967d48e03ce4879e9e2ceb10f5b07cf2093a13d512896cbe7d5aaed6f533eb70d4b92c31de7134ced779c5c836bd9f4ee5640071f3d060d7a5134dc2439f977e00f1946ef16b0b88df582ed94e18a59d3edf843253b23154252d779288aeb3ef565e20675d7d6281ed420c059a18e47c9377c6c1b6d32f3c85eaaf88e0977b5910cd8ecfb7f2b17c012ef7dbe0aae8a5a8c71596467a1f1c73a6841b2fdc07b6f65bcfd884177e001c0f2169698ab35ecb331d0607a34c7779337d5d2e980320228686d9c8c2df5393fc814e0d7e0aa2231a53b50e4db2a0ed3908d5a1cad26aa2f3bdd5a5f09d1ae7115a6c2598313a46e63d58f692a8026bae173bca6356f8f1a40735e23aadedcc139c894849ff58cb6985f312f0f5fd7720eeddbd2380bd519ec1f0a45f41ca6f59dbdaf379d9f4dc06c23acd1e28063cfec639c65eb7e6f4827f2473a1f6e75a0e62125be4a97bb62b052794475e3d1db6a0be5d9bdded30c106ce0b944b32dff39e8055da06efd9919631e2ee4c795bf197b5c1f9aef662b71a4dac058f538362a38435413d501d00a3a5eb459c491f93e5238cb37c1b843fbe78ea80e47451bc95433d50f08a3cbcfd1a4ffa7a5d69e2c165c935b499c4321613b513c5ead088ff3a73f5fb342f82ce04c4372843fd9f6ce3d6f61058042a92d9d2742a364a9c8694fd9722b7ec9d479ef49da2aff5a7b45c837f44b2d4e300539fa8a99dd5f45ccd2d21acbd34bcc77c015949f1d9cb9e20ff3c4729038f2910754fca293d3c5be352a6795484f3137e0a8cca31dea78b8b0d87dbd1c441ee5857675c2be1583a9c438c902b20dd6068990603bdfae4ac1596f8d7ca53645978d54c77272bcc6acc64ed0ddb41ce500a52d60e3cbd2dc7c8f4a87148a56123f6f957ef2b133bc024ed3e3d3473fd297c97bc7d702fbdd03b7a8ad1221416891747192bdd4272a62f6badec112adc67a99bf365e6e52cc4766259c57e920b8df76226803ac1d68d2ecc841ecd49d8616b89b277330557c8736f0a663b8447179e0a13c64e772acf12361c7368d13fe7d82160c7e767e8d8a3586d10b121b5ca225023f59dc9838afb54d6c29cc5b0c0c0830a6e04caed75e6b8e1142ce135436c2c827baa55e3572e623c27066f0bdc7a879d75917039f1a3e0d976ad62dfb1756b379e1aed82c700d2a14902efe48923e31d8880a06d6111fe63919972938eab9275d8f733db846274a9f64c2af8e796eecd00bee42d74537dac07830185d2181e3e8c6414fe7a49f2392ceacbc85f2e61978f016f27c6135ed66657b3c04060189e4ba5dee72505326ec47e8053aa270aeac8f992d572a899a303ab3559b91592b048a055bcddc84d77086d04fec0ce6063f9f2829ac66a17877c72c712c8418cf2810381dee2efd14a1a45bbc223d99df4e4c8c32f80edb1557a184097d72f08b75a04ff5f3e56e3de4c8f6b9ff0cc7556ab553b72305c533fc60d6145a4a195219b4e3c7acf872268543cf00f54c71f4198c2980821a1190c05def3f08fb130fbcdb432821882472c4b0b43474da35852777d02eaf7ad3c6404fba5629c6d90d308cd92b0db72a5c05b87f4a8d1c5abb1268ffdb02ef0bbef43cd43b915de866a3cacf53f4e7e969dbb52672b8be96d57e5b9a758b575d13652921340480a0fe3e79a9ce37f279383d599267c2290c09529006e3668e61fcae84c9738c39307a1d7b1babe26bc9979a844255fb5e57c9ddd704c0c318c25f930b7b17e8d4e1662153641185e813b01a7d3d80c04b1238b117f358ef1cf2d0e365814db0d21536c9535914ebc62c9055514491b9a00c48362c9c3bd860a1be3f07a6450099cf5002074b96d4d0f649c9b805e18f50a06a557260379c76f20c97d87d052542240c8be8772210f5e9b92ef8b1a7b736f1fc17d73145fc18ffa907c1662a6d08dbee392b0f26e2037cbaea24ac4de812ad7f55c892fe620e5f3c0e645f0b9612e62ac9eda9af39a8362b3dde9b7c4a39b333f4424ce2a0a3c8c0f40f44711ced0029292dcb3ec0bd0d819a3914ef078979cf551f97fce1bd0d17dac6344dc9aeea2491c8c8f317dfb0bb4c0988c8e16cf383c2e139a56ea20f0f9ac8730bd5f8a19a9129e77d8fa82e672e2e54e7b5ceacc4be6ac73d24f8f2786e54ed34674837c87474a0022491f37960de88eaf95fffbfa2e8870762c3cf6895c7fb162eed94d4037b5ee190f51fc2736afa565a9cbffaefc0142a5abb31657a8dc5310b3f89e265ecbe69b068920c6998068460515256905a722b2692c9ef3e92ae5ec6cb3d0024aa05cfa1a58671c226919c4cba8ec6d946424039b1c9dbebd55b17242283c2e7b556c071a1f7e5f1ec828cc32d6d39aa2cf5f2464e49080e02264f306baddaff6d172e103608f1dbce0bfa6f01f3e8d7c918879a04219501f93127c086fc4a1bec488dff9073d71b8f75f2e9e425f2fa39bdd5928ef2a948739a2d45ed555ab41cf424f6ba2015c4e5c3fe5fea64674ef83980d85e4a086222c1645ccedf8e6a7dd21d8ab783f3afa27f0d330da8382995815344774e88bf1be5086e030f52221afff6df9f7e361fea6275f40632f67681a808ea20066f8871560272d5b428c4718496f8f16744f2da94f684f9455fa2ce0dffed91e155292a1d38e7b7fd812e1ae3883cc547486091e3438cea66191e2ef904b092044258c95f458b43d74209cd91688a51237022fc5e7ebf50639e599a372e35fbecb67ef1eb6d92edb2b6fe086b21a6f15095654decc0bb9b136ad6636a2047f69199bc18ae2473d3b464f2dff3cdd2e969152e5efae969740e0508193ecf3d85d04b115035266cfb3348b1f4347bdccae1f03f76ad7e9ac6d8a5a45b261e9a81cb5d03906f1b1ef7b7f8502973d2f834d802e7f0956bd8fa0573c6b8723cd93aad3ef8508672a3b717554ed3fefaaed534741048d965fae73c972e4fea9cda8164331d5a656e39f4e8a40e88ca0331769b72d3bb798d0843020a04670d10926372a85ac0d84dc8191e0a74c793b24bc12feb9f708a8118258e0ab0692c46a7db6f2b86511f46348837357490aae130fa191c9d6afea099029b19039a422fcb499c33082a8015a77fa983be72eb78d51b8da162b7d1f6200699953f018550695bb9e56581c8311afa414de103043afb187c778c7333d97722507de3c42af42ef3c6874781d21fb30d67e57804b2cee7fea12731e570d3f1c94b8a4e4735d639b886998061845794a785cd18f783968edc390018c9ebb8fb346521cc6e12b484c1a04a86ea5268ec1056e0b04f6823c0bead214450f7c21326c83dde186d59327487f569af5663fd4907eb6997cede3cc3e0bce9003961e53954e27dcb066591607365f30f5900a564af54f6817e884eb02b6962e2ee92fe478800ca407c9670380fd082e1c412cafc7c253b60e71dfb0a9ca55202858f72ac6cc8f38ddd99102c48d1ef610e2e6ce0bfe1e2acbb5d4b71699db36e2a4bcfbe5084ad872624e3e898dff5b53248e4f36e73b704d2fccd51e2f6e2d1275d7a315691f43d3793df36bc9145ec7c36b1572033c1b8b1d8315bb15d2d259ac570e41be398dd9532b6568e09ba02822052123611f0d6f0558cde86f6ff7586c34b00eb1c80ae9241157294f8bbbb0d35db9edb13f0306fa413024978a6bd9c132f77bae4ab8fedb39d6aa3fb1171e61503e5935c63fd692e6e3e61a6e41b70676b658176809ff30de9661fd541d6f40e9dd4e1bcc9bc6e4b359f9e7eb0a1087bd800b76acbbc4a18681149678b5c382e530b285c7a11eb9edd3d1219e687aa65f0fe6326b4d9bb99a9437b99a861405949740f34a8d3fdefe213f46c942454fc83f49461a89662f48c1f8ff6ad35b061ab04bb81a389e9576ec518877bf119e168e0fd04823c43cfc05fa7c97793892ed8f8c3ca91227ff9834302c3bf7c6cbbb539faf0958e2327b2e91dba73bea12a0a2f539484dfef0827d8a66e54b9a9a075d678e433affc35eb0cbfe63785ed6a5d5d13aaef89616fbdb6440e50b1100196be8456ce7f4b48aa0624a745b36530d11a09335295e72bba830c14048afe294ba5a5a59cac4ae61cc0e0caa81bde458102fc59935f4123dcfc9c4a93b0f74d7f9bdad1ad99ced99264f49f2ea9582e3dbfd761c82019b29cae3139ae7bc94f158831398684c7da275fb1d546cafa476e2d577058c3260d2697c77ed8f05611fa5b0a09bc0da1d73a33f7fd1e50dd2f4bb71d5098b6bbee666a1b80758add2df65c5273584c5e01d6efe30ce8d5e970fd81dc0c2b079f98fc090e7681fcda31c62f2be311f25f7a2484816d850a83153d1191e67152bebf5660ff82fe5d7c973f1ad1139aa67b2c3a475fde445f062650696a176bec5fdae4e949942de7fd373b6ab7d1762aa310c3442487a18cd6698d5350b63ebf5565f803bc848925c1673385f1fde773dc6f8ced95efed5a5c2305c1556d949294bd948caac24ea1c868dd4afc274d93205e160e371795614d347770d2d2d5d69fc36b8197a8573cb683e25b3ea6febe5416dc5622935d650920479f9203f390394b5a7b4494ae8d11889c83c4c99e32a017a1d76900b45762316367fcc28c1cb697c0a49f37ae0ae3dd6d796b65136793edffb422c58fcac5580727fe2a6c40ebfc96ec1ff6f99580b24e030a6de7b1ae3e50e4dceca7fdf432dc899897fc24205f25ad9f182eea821c14411a928fce07d5adc8841d691016416226dd17c3daca57ed4ff7832fcb8646e213f2369596fd75dd2d4e666d842e66f55588723313eb85ac46fb6ccd86116a801a35d7e5ecb761c6f18ef75d20e1102c963e7a343c6d198528ae484cc281fda3f4030fd402256ef126d1190a4c4f28375d77781f28ac6368ce50d04fa9a36b9d336ece55b18faf2a0ad9c435820347edbbf6bd8f4567ec96e8c80b905636ca28638b64962eb80644670c85be7f514f3806172502e506962528890951d69849642d0ed67e7018ac60c7047a64d83218e36a5f5daabc78ffeeed4d6760c6000e5b0f207c9f2d777cf9652fde6ec16c54ea3191f0e64b9eed57601f85147f281e7bbf7ba943b11624219b6deda317d305d1569676d6fd4a55e23c86e24eba64527a5e423dfb2bfe42e11bb72238f93900e66a012f5519cd61ef80694afd9d753595367f19790a8cdcbd6e8fcfc6c2721a8011d6014650aba8baf2abdeaee25d4410f8a468cbe7ad5ece2a59611508e360a3cf894326d039338e59776fbfdcd0f358d35e24b685514517783e7c4d0752429ad3fa121f5c63adf75edc874e3f6218dd5c64765c349dcc94cd2fb7a258b173b31f486aa29b694b825c68872b70de93d47a7d515db81597e10b826dad123154c14f23b1d33642d0a5798bc929c5542131d9ab7e03151089eaf682be59c82019067e800993cf0a696a7789a6f283545edffa78742e3b0c238717959413fceb4028fe34961abb551702f45cfc46ed484fcdcd2fe7581cd91c3a1479def580245ff7cb9f2edb933f62a1d3e7120cb242c589516f04d963c64f1d7c8d46e250366e2e73d10c382e2eea170d0c3445df425c651903259799155d1891032984e18a2abe7c64f80e7d951314e03ad659cbaa03017493a6a4fc1d320d8193655af664119cc6b2e5faf3410a947a76ab4c1349725c0c97a5e6956c485dd4bc941e3dd560005880d8485d387df2aefb1cbf9d74c3f9d389167aea1b3b6fd39b5d6fbf813890bd204aab3799c61083b4be78465e66680a4c20eca2f39d072facf940a61e19d389f1005fafb43e2fb25fdb8eb3f0d3a0de457e451e93c7147bef2cf120392b2748f9b0f03df064ba172c4c349d5777ff7ac2883ff5c6754105e46b0b3ba33b49597c073f1476a4316d9d79f4dfae37bbc7e01525d28f7345b7dfa242a5f21a70f4fa84399495dc8798c8a13787fc7c63d283afca50656978732e2e97af4435299eadb73d5960d67d3902def19ed082854ef55ca9277f68d69d1f3b29536e0b514e6c0fbe9e8dd3cab807f4ff5e4192618448c699f643b2f4cbf7608c0db728642078659db707617ee9af7f982e39d967c7275aa2fed909db0b51aaea3fb025a04dfdcc80af9b1a3d4b5d3e1a5855853a7604a1c1748eb15a07a0453bb3060ccd049b3a08b7eccba37e5b628219426694c947dc6cd647d44f668540e8ca590d1f66a14652f2c5e03bdea3ed5a6cacee66a455c0b4cb4d388c6e1cec319c2f6e4428de869ca8959f0ef4a96ebaf042cb907941d0063616d3a6d3ee687988461e12c43a59c5e044ed44be5126565e1019297d1b8a9c06aacbd980dcb0a85dbd5c538c9458b2e6648488a72f490b44c9beb23728a454ad473c8561424adc51686f232cf702f8fb273ed9958caa510d8d179f692cee777c67db25ced9d09e2cdb4622d8f44184658c2b50eeab7cf6f4d9f10450be2129ee832756a0e43dda1cd92ac0313854d01b0de2af728ebd58c973877d712319eadde0127ddc123e6e99040c8a4933c830b895500e13205907274d8ac7e3a428f0b1a2dcb9a1949a2e65da51b3c69bcd6b41773637774d8e700b44bc54a7530e78cb31d1078b7febb5e2576f071f058a0205833da09c383c49c3626a3c76f7e3bfca5f96f2635758266b5171e69de599d44aa18e05cc02892e6061c6e4eeb75527b2afc4a7ef41338f06e730461ae49ade11b6fc4f03360f006f3d3a533c7455f0ee2e1852f41fae86a9e8715d8a08adb041457e962cc5389bec2371df690940407adbe8dc521af867971d4f698fd0651e19a243549ea157eb78e0f8b2252257523bceb858e1c1c3464e7f688c5ee47b155ca7fc3e0716e0f74bf03558e8882c3673e3f3cac8a874bdac92324f872e25cf60f4de4dc948c94471adef075ed66b4c3dd1b4e5590eb30ada5c1946f03346755b4e0196a6f90875d1b577aa54024ad7afa12dadb63ed3e5fd856a41f623b05d256683eb369e0337b7fa1d3672456f7e0d5719291697d3fca8c601522e27b06c45d4b890c7784bdd97ceb35bcf9151032a1e3be20f44acaedef3579dd848ecf47757080ed4d3d0f733746588c3ccb7b08651a4ab597a8f485d1517bbc1eb18a0fd6cb76bae60c0eb773a3c78043a9741a9ea5b4c653b7ed395ad4676773d87a47ba5f41f6a8c28955d730880e9af2f88d6dca8aacd11a81e58dc5f1e321558defe658a44a75edaf8cd34dc48bb71417c2ff1ddb8fd0b146f2c7945ca8bc42b604642f5137f83bf377b5e6ee35b432b81a182f88d86945f195ebf1d9a6a578627269a88ae8befd30f44c601ca3b5aa04337b360ef174399039a131384789695579166f883ecca30eebce45d090d9066994c61389573b3b0ccc8243053469f89276c834331960f3f96719204e2b3bf5cf8a668468041c64a7ade043727a7e87d416ac816d7524ebfb1138183383e244a43bd73dae96c0ce030cb6a22f863ff06fc7b61b527d72105217a228dcb883521f0c0a20edc42e1f16756f81c6231b94de11c333eb14a9d9bf4126fd3131d6c4d3fd4991d8078d52d152ca34d8dcdf53936252e3276dc6a49e405ba3fd4dca830ccba43ada3800a6d1cc3d706eac660497b53fcdca4dd27c489f238da6c0c1b58b0ed0cb349d62394cd394d36fba46e3318afb3960bb9512d1fe2e3bc67ad4e55be216f558342e0d780f7d56aeaa02657555a1136edf38d2ea807fd5301c267ae742e2b62e5eb59b90fc6b2583ff91a431e50986b3bf8aaf93f68a1332097503f8e8620801d3b55579aecac2f9479eff07f9251c2e96fc84b0d4562580425ec98fd4f5919f446c3a02c0e2652af8636895dceb52943af0811c7a7b0397ec030373c1abd34c5d0025527aaa43b6052254c9a202862a11910822e31971372da6048f8ba40836ca38288ad13c64ce28569d1ed96216b365f79221689d685c52393fd31c8c3dcbfc882b5ad77f045b4f910130552b3b184d98ee21df83efcd53a84c0df6cfec7073af78366ee432a68a039372b24b81e0bdbe64797ca05e26fb7f24df9ec59710bc2c8b72e0dbe0c2c8371f45d68f0073fc94e03e8121cfe1c1f36d8c8be92880e27540fd402b25f65ad75e9ed7cd64f6daa2631e5629f132f7c9b3c860c34212565dcf7237b22454eaa30b59d5ddf993d7bb02810de7177202da2894b25960f05256cc481904426c28f3cd0efc629a69edae9f2d3b154f32af7fbddff74a308517069e9d4d0530c0bf7e08e271f51380750da1779d4a19a003421fe050451aa846051e87626f0202ebef9a1519cae2fe799f485d4b3bbc4daf99dc34f319ebd8c814bca59b999455e65025cab8ae5b3cfa368195e492aa6e9a3596f3f258b88b15a0bf7f7b2ca0b7c7c99475cab53b1f28c1e27b7c75c163bcc1ef0672dc1290718cceca7ec0b4d64a620e557f7481004e5377c3d1c051047178ef75dc166d6c5e759130828030d721e28c2f453cb50ae43ede96d2ffcbc2a5fc2cc78cde8224eaba2ef8edebe045b325af38ab5ddc6031475f2aa903a2e4e74aaee03dda371a9f562390c5e8b02b5f9ad5456c73446f91c01fbf265d8a1f10ee1b127c219a661766a0ac34fc8313a4083aea9dc17016ea395e113027e6c720c2bc1dc0aeef34de0707a95ae6a1631f5fb155262cf0a03a418be9c71bde7b459f3ceb71d36ee267016c97d4f405a9bae195846e2490a1a3067a6887e3958a6e616652071d5f765aa3991797dcc5acf8957c10275742d2c8962b7dec46627cedb00e2561503087d6b14af7922cb2f49b81ce6e78b911a50b79c58306dbf3765895e02b9ae63f598091429e2c77e6a0945807c22cde77ba63ae3abe398e44279070567c3f16a5e625c425ae9cbb53da6566c3290fcab6b0ddecbc53476e63bbf54d0bdb6a5440d17f885fad1a81b3f560d8b7a0e1f65d061a6145b8792a2026fe56bfce771d26fcf82845aea28a515c004d0eb5dcd684def36c9c9b25942ce72fb94ebbbfc33b787a53c1a9101db6faf915e75c97c612dfaeb54dc23f80a31c16b9054c0db55d801ddf90780c4c252a19fe8b329f25f2089842ffdfe1ea14c25b1da6d7f8f305586364a7ef2cd8009b2f283a52f6cac74f7029562e9b810a50a07c123dea121604ef01392d25a1d4504421d7a1631c4a6458e8f55fa69fc82e7d1bd80f48aee9094c84cf9f245dd47eb30af730004a44177e6cf95712446cd3189fec6537f8a1855dbd8256f8c151bfe7d7cc926d08b6526c6ec5dc30ec90cb103caa0a2558b65be08c8642e59ca387a5a5379a4216a66495231d55498ec1e6cad2767adb9c28d15c6de9e794abc22434a4951b413ca5c4e7f1978caa9341aa93a6a11012f31f3e3042a9d3cf7301b796d1730db38dacd62d3c85536d2970d9e93b9bdae25f299d832e3c63bedba19a2852b292d3746e5da798418ba6e2770532a0269de63f1cc53e41bd709c26f34f251409042d45962c1d9cd0041d37aca512a4fa5fdb36043db2a6044c6645a25a15018d022708a73985686e82e2130fff7a8c7f3f54669e08887d812c9b8f7403e949d3688fc6428cad22ffd488597a7e4ec4800ca70ea195c149a5e59e4d60282ff6ea4052b4edd559095149181ddc809d7cb74dba1d626a34c11b39375813761d8d9a4dfeee4f427e5075cdc9e9dd82c3b1eba835bce25649cdaa6dc1aac215a9a05c5236c34fb3dbd6d533b112dcd2bae4eba0a4000e792af0b1b752d784553d81a68c740dd0ecfc9aac6dbb139fde1655bbdf1e3a0158f80c8b3940e76056ab4cac8eafe2945544793935178f5d9ffedbc49a957ed2bc034c3a379b70725150a4995f4f5ff07f3004613d9cdaaf1d39f2726a7c04b534a8b519356387f194a4c7ecfec7aba4dc571f414ffec3f6674336695ebec244b0c254a8656ce776c8ba7570f5c6bedea01770e60d95eabd6824d29479a0c7ec528a48fcdea66a3364a32a812065b29860a236672c734a04e1a660f386b7eb790c4d50f31bd08075f6c7d97bb358006ca69f72443dd0c3f9d3166b4f00ce4bb87f4e34c26d1dd0c66509d606fd456b6bb2013014993e89a109900ad77d6e9fe9fc6ca896cd262f94dc54048a656e290d9e5d2461a5bf4d2cdeb408bf6f13f4537fe8e0fc8d544766bfcb72780cf37f01e2ae31658a6b9034077b7ad8de5147a0b64e173854d55fd3d1f84f4c895e96a3c254991a8a2db52c233c04c2a31b4540fb597539d2df3ff2791657f5bda0395171161257f3ffeae2e681831d72f11b388a10b143038277f1a8d637801c280475c1951ae6215768b53801461af14f67434a4fe0735f609ec6bdcd8d37624a8b56309032106b5c9789e884c48985b364892081841b710a0bb0d1699000574ea5aea97236a0085d155acdf07382aa6794278c2d4e81e743ab2294857996ad97e7f86addae16c547e79a3ad1bfe994fae5399b490fce91e5ac772d224977f809d47c128b6012b4f81dbbf67c84b24870861d0d4d01c51b78a424c6365a1d061b96308b4549f9216c726ef2c9cb7f3a2763726c5425ed37ececb55320dec5c38b1897bd11271422b497b35dbcfec9ee49c2ab3c38d4af077943954179c33bf3433edb5ef325997616a6d9ae521601aaf16aa069aabed8b7191ee5984f224b0b91bc15bf0c54bfba7495a60b09cfe5c4e867637bbfc5c90604f292d10a5115b1e01f467a5bd7fca40758bc5ac381a6b414f8ccfee458c9c5dd72c0a734c540c1d41168ee7a7c050c7ad962ab70241b50066b01cc60c64e30a0c8848f747a0769a3ec1a0fa66239ff2ea3d56afd3501cbc1e5f81b8389725e2d207179a89f01128dc0407904b578e0319fd8393ac4ac03526b978b34ed3c2675aff375b5a282e90cabdbaeb701eaf0c5ae0cc36d6ce0a6fb65827c0d9b08b4d4dee6c8b278410089f48b660e34f57678305a091ad9ef54c8c86dcd8c676d399402b6489c6db6802e97bdbaad6040991702574275ad21485ba3f9227f65cac0459e320ed6aaaa85cc45c20e646a7b089ce3a46755658abf2d5e99873b839fb6211702c46846e3d8884cc3c066c3029389f7ea8fea0c9989bf0cb66241f80c6cc757604c882520b1caa3a9b6453080c8616d3327a9abd2fd98407e58db8538f6a4df348e9843c2c6a2d157f17213d2e79b2266d18035542a702815aa41c4dd180fdd43455de81b7370d57210b9842140387621abf3a7b201542486a3d06c032ab5f115678c036ef50227e3599e16047485308a2d3d67a7a3452378aa1125b9d2fb77201117ff46d2e332e6ec83af3411e19342f9fb2f23c80c70f61ad30355fb5df2b421204a0af314ab32a6d0f30b6f0a50d51641126f2e69bfe5e0dd02a1d777d414b2bc3325b980e0e7f5bb901ccf01c1d2e7a4ca9b78d832d736e3eb42665a1f665542ddd3e483cd768f66949cc5cc50bb0e6205fab1d62410d5e190a42d464475f497dd7a5bf8e508d68a50f1e8dae973f3a96d0df5d9a14802252f943c16d834033c51a8888d7de6da87f016cba9f6c0047183dbd3342edda9a220d4b18104f472a38708b09e87538522f8a4dc9a5dd97d8eaee945a3d1a50ea8f441437d17f14b75d438830c2200ca8003c6a582206d4c3949ef63f25ee6c1c1464478ff7a645a3033877310f2c13c0e73e03b7224c1790c73920747c74720d757ce88cdf0e26eea6d0ebdfd4aa21aa5e9c0a68cfab7964b3543fd81bea3a1bd60a3da2ce752c8fd01890dde61f1351220b5a09e39477568fd79e6ad1f06f3bb0133fd0cf9862f9880623b3e77f7755a568d98c4cf6022daac83db259107cecaac09ac893063ae94f5317fe1458f113bfbac14eadf3e5de181d72ac748f1756f709869edf481c0c5604c67d0101ab6d90dc3cf1cce8c61a170a3b2198fb96fd87ab5734615a5b4884f6df7ef533f82efab95ea6bab9b3d535bbf01d38c896a6bcc60b00e04d72da86e0bf8cd959a862a10ea66d2c1f7d86525aabd8dfec5b6150440f04c80e2c2f8b7abcc35daef1ccd3c869e6c5db003fe1b4d21340ec2d89890b3cba20e35d8aa787f5dbb7f8f8c8abb1c0923bdfe114c3a7e3ffae4a5b294ee22beac6f305add0a74b37f26943e20f232d885917d0624ed5379009a96da0e28750151b7d1cac6db15eb75ca7184e44505e1b4703014f7306f685d09f7869c713c0abd17e27cc82a8d6a7d938c9bf4a88f3cd6bf61127961d3820b0c63dedbbb8210c189c49692c6e4a87b1bb738c7252f176610b2c99f4bee74409119ee2f315f42d30f7289e60fa4dd0b54f7ed29c37800fec20ce7aee836bb6c2947ec4c5705c2d1cd5677f3d1315808d8665131e5f2036329de89cd80293be18e3e49ef760e69f534c221ee53a8aef22234277815a56109f7bae63eedb96f2d769408097094f5c520b6506617f37a00422c33be9b69665aa72be1591b46aa650745050e99ae6358039565c294219dece393cd0e5c1b9658095da2625d6b7517c316f1ece33b5249274386b12da23704ea8dd99181c7a2084e1a5a83008d4ba18acd65265861ea0dd141c18243ca5f931d4531a07270db4949e9e022d7454005cdfa049428e86c172fa43dfbcfea227817da7214ec8dd9b7c8eb0c5be1b4259efd389424273d846b06e43244ff6eb6ec32e373fa0d4efa5e563ae22f86482d20d06d5d64142c67a4794492f3093c4fed62afceca9c86a0562a41f5e42ca31a78941e0f78c7aab3fcf893a419e16314d4594d86db3483037af947e4fb6f3f119fcfb29db911b12f360fe71e89c2157e237c4430e53c7f5fc1960ccc0b1fe4c0f3d211b05723f8878485f5df865c5885abe43837fd1c18827ce554ff32191eeb3888497ee52630bb3f3d156181c373a04f3ed380992bccdefdbc4578d519eef06b60e8a0f8858f521d6601ef8cfff5b7bff56d8a4f1595bb9c6a589f6546a90046eef87d393dc1dc165202d8656f0368d6cacd6bb61f21bae6945eba4f0e61385b14020f954e2389c764f6bfa6b76d98cb3737c9b65a4a662e82c2b14176e8630798313a6ac085967b8e125b2be515ce7b485324fa66f42e41d18389e82eedadafb881705c3d556afbea201ad9b9ad797b66e21d1be959fbf5f09f6c10542da8a619a31840dda16afd5d63c1be596f5415a77058fc423e40c219b7b275180eb9deec99f7c8035424e3b14657a122d553f0302f3f4d43ebdb2703048bd8986b95079554141fba85d9059382cfc920924fdec151e2125ada908e982001937d3e6fdabb7c439f03ee5bf6f3d6f2ca436f0774ad09e2f40c1fd74f557bdd7bb039643c655b0bb655b945f622d1c0860f66dd8b0da601de50ed4ed8a95e0acaff9bbf6f1047950330e0902075d6a5f625a9a973435ce1cce40cc71cb8b903c4125a0645ec50430725169102465512682afd103284d566061b5360f4e06eb23a2e12813fbd2af21aa636fca0fe21bd7abbf5be49bc4d6113b2bbb35431571bd86c5919428f318c413c6f612f4545a3348e24694b35aa0665f6b7a55e48f7ec2519c3e3feedd5d7f3a52216e18133f9eaf84d645500e0009267f5b6f5c68b8edce3be554d3965203050f3d206eda1b8fe642767baddf4a4f80860fa551ec6aafc2bac63ccffb1d3b5ae4ee7b241116d07eed5f35b7e127e34cfdb90b323c16bd2613b77552794878cdd6d0a98af10c15b8b6276e3062a97d9b87a2e2746189de163d02db6bec321b80fad468802a1e36a8de354aac6fa4e1151a51025cddbd75f7086d3f4da426fbcd38a0911c1d68a7b7999b0ad87629fafd49e46520827ea6295100552607578da633ddb428d302cfba65189bf137638127bcc348b02c6659c51694e8ed566ed28b5260ec9a6b1450c5ab20109514f5908dbf94318167d39f61d7fb92616ac5d94088878be2455c6e8ca587f7cf999cd85c1dbca066575f39536cde591817162e32a28e2181580fbc1c1bc6a8963d68da87ca12498f8763b4ba3a210e34c7e73098cb6c3cdae821df24ed2b800a246a8fcde75bbd340dadc0d4752122a5c33c8b7b5942c8502e0f679abb1cd0a513ff38b2046807eafd8f3d2bf7e94855199465428b1313b90a4037fbd5d71e54bf4e26d3e12ab9c2f92779f8b56591ac34f86a2335fc6f826940ae17e50052ac32f8987aee19beb711ee3a9e463c61a58ab1a31be32072f6690a1f3f5011958c2b1839b6114de6651d7c5ac4615444c8ce6c312811eec7e1b753a7c3001d38e26587cd54d64b851de4dc213c48c5346803f5d488a98a5e324d52704c96986b0906ee8b56699a5e54c457426df586ad15ce6f86022cace4f68f6604a40f629b6b4452016aa8b4a5f5dbdcf143cfca659c9c9753cbc78715394a2922b1623b942bac65d595607fe5cc2b42a5713e75597e8fed16e98b1cad8caa733464e233b7c72967c20e456f19519e4d06682a92f69a32579cd5b4860da773205cc8ecceb8ca3070b6e7011e210e1b7dafb39e016ee510c56592f6959275106e190ee665d6817c847cf07e7e327cc20749c595795964f859ee6902cbc3bd492ae6b95dcfacf380fff434ff15006f01a4af70ddbc1dea8bf805ee4f57225f4957bd0e3693eae484d5dd6fb7291bbd24f373754f041989ee64eb8c4b702185c03db613e335514a6c155fba1b59977bfd151d5f23b29723f4c7e37404c73447b8637ec61208da438de65a156c3c99bdd4949a2953a214cd006545e4959c5c1f755dfafd732ff42c48576be00cac502eda244695e51cbf4e3ef021d15c1ca8efb31bf7237be2f636bff4593f0ceef04057d98ec58958752c01f15010bd264927b55e6a304359346b4aac339faf20272c592f433c2f8089c8b48cc261c3b5349886177cdf31f6254aaa013067016a140c6e10c4b1a2d7155603209829e56bc62694090eb5ea08e51122ff4e8e7d0603c4643907b7a67afb82a97a7849777ef124bb210de72bfb78b6a44a271cf5d625a62d5be9ea6cb545dd02c81163d0c1d108951f6cc0314aad34334ae491fc7877c884cd1bd6b0fe8e036f07b8dfb37d09b8aa3d3a05041a6defc93c65e1792f3b4d5a684b3bf2677cd0c42a66669e2a7a351e4cf05ba068af4315a8dfe350c558d91fe0c91ff7fc2a0c8f9804732b36c104294c7aabf3dab0d6b08638e4b4f9730b5c2bc4e94d437b97599a0a55ad181071d04a7442d02664c2737783e30a3b638b5faf35328e35840deec2367b66473d858e5b7127458d4f69584db55b0a229906e4eb3e651b3a89fbd8acc0cb3a589da8a340f4e12a7477849f3b713c5134b447ee63b1f4d7ff8b26ceb77c59aa2e6cda4d3acd07d3ac4d06b151bf262c3c2a4df12f980cecf4e98482480e02cba26f0e4664913d592352ee55a63cd9327b7901caff89a3e8925156fd480be83378b63d5025a740374d3f0c6b8d1eddff1f8c93bd441b7ab54587dac82990d9b9c3943d980dc9ec2aef685b457ee939f2f7ddeeaada55739845d2882b5d04a7c9ea7d439d0445ac2fd773efcf99ac5ab8c6660185cdb711267c1ba7918f91a4a454944d3c5830a37df1abcacff82bb11593f59910526c56dd1aa6dd7e2ef4cda3f9d0a50c0cfe314a349e16e24ba34b1091d664d1140e1aeea721f5e7b19f4fa07c62c1f21638b131522b3f6e45f176ab5c40d93b73dbc50fba5b634b7dde9e93bd08da563f131c6dd499665062f4bfb09192f09e20ac5b6f6631d7eba2647c2c0d97856b2f0f52befbe0bf2b6e578ef9d2800ccfca0f19e6165e930a1f08c4a1c3e7005c3ebdd64d168c359ee962a488e756bd6502b4948e31dab30fa432e40d85ef37345b6fb8694bf3aa4a6df41154d37c5cb09fa26f1d756e5308d025bdaaa4b5558811eb76de76ecd0f0508426538481491f63d4b7437513f8e79d500967cf845bb769927222e177b9813b3a09e099404063d568723d7ab6d8e50471b13253d980f923964b02f2998fadf958c11dd033d08ecc34f007e57d0c455d0f1e4dcf4192c930ec8a18332c33710fc2e4846e81d404cda5f2effbe2bb63101315bb81762757508eb313b597585a14df08c6cd5ddd01bd75a986f7cb311e473ba9e85745344a4caa7ef959444887e4373feb673331314fe58847435d9454cc35bc03fe8bdd8e19e1bc245816745d6b794b3fc57af8b5c4280c4ce08b34e349ce06d447bdb71a53a299bf80d79347e8fef5b346718cb6970a58b0916cb5bf4c4f26d07ff2e6c742febdea48f78c423296adab23e0d9aec346f302ee1cf2c869642a4fe33ebfb633dd93fa66fa6134999ce99959d1ff1280aca99f48303b77b5ec1d44ccd9cc6f674d164f70919059f2dbe323113f9ab3e4e1ff004f949570be35aeaee08df60c08dd44fc53a517b489257a7abfa70a62342db72362c202dcd4c41e894a5a75b453eb1a567c90764fa7569363dac36280cba935e73b5eb38e0ef3ad4d707dc4b630859c060aab71ec8c161d8374e6087ca67fe156ade44bfdd59a3c2998ce5332439badcf4d86e7690bc1613fd0e6dcc4069f2bbadbc748d656d6cf4a08a787f45160b54160017b6f3fd56ffe8d293902c8c7d03a527bdd865f9ebfe9a471510172c8aa822edacd63dd62ed3655d5a969a6fa9123d4c08c053e2f48e6fe155785366041b998a00e84bd61cfeec0ada2a07505b69d35d0a594fb0644dcf391dcea10290f2ce932d2afde3c26cdfe58f03930506603bc2f950b1955a8e91daaada35745bd48dfda33c1e9cbe90659ab84aa5aa4b5686190a995f85194682fe0a1542f8760a55e68ecc8ab42bb13a7e0708a2104e4b3b662cbb12e81713b99b9fd9e1cf7522066881de7acf9217c9f91645560e27695f035fd5beaa501ab20ef3e1e32194b01cba752f2c867ac09e22d444eced508d10f88433e525dd4c4ec86049c4ecea3ada40591a3f5dc55d3326a91e81c159e5e68f65a4ab9d2ac090b6bca222d01b0a2273fb4099d29dfb4c5d207833cef6b982a202a062c97b9bfac6976324981d97b5100f7d86f95bded5636b03cc921f98e615ffbba9ea459843c3abd2132e561be13bc3dcc976a14499cac34a52aa5beaecbc4ea5628640cd39dfb237f2860ef572deddf8e673d23a16c2e7693903495cbaab6e03e5e335f63c619624f5c7e4364272278ae7298d880eb99ae17bd50bc9ef2969cb9fc1ec228d4ce9a932c29139b9bc6b7a628869ac5881f29a368c4ddc7c95974528146b6a29d30f2e62aeccbfc986a833c8c0ce8736eeb36c2eb15b89bb523c83f8cf15cc6299a68b707406e9c8dc8b144a944ea1d1c5f80bf1345784bbd69ca2f9faac028cb65b345455e024a805a875306ab5512f0101a075677e6fccbfcacfbe38135fc09d9bcec4aabef963ed6e23af1fcbd3dd15144cdd7e00ce16b7000be9b25734a3a5f4df15f20404276e3c82adfadc042e1ab16559e7eba6072392761a98af5ef3f93e9e55006629f99c0125ab494b20f55253ef01afdb590ae554c8e0b3e4985381091e34101311051e2aae71503d89191ecf8c0fc51339f8a185e27c1b5be817a8e2345449d090b40624db6b03bfaa501e873b786b89e1729a82abc9b6744c2fcb4e9f71cb56afdfed19fd7b6468efea3ac0ce7483924ed5c0092b7fa595333a586b62e35a9a3339651be7d1c4a11c8ec661c730318da15851c488bbee5819fe75a0aac1e99fff66218103b26f664a397b8b28a9ad9f53e6256a5fea3d3ca8d88b1fa9714de5c80df5a366a97c27cad7932ffc8970c627c6ef76b46785a5aad3079644b22995a4292c1ce8017ed70468bf9b1311f266bc17600f909b9f9e418b3019c4e1fe4ce79c0c3f1aed46d182bf1bbb3d5b5c5bd726debb506226a7331b5018d192dcee9b8f3060df74e0533e0e43a8b4431db67bd26f3aefdd1983eb14717d3c56939eeaff84560a41effa495f5d2a1e8035a5ce00688d3df90e5304aa09b363a481d85f65a7228e26fa73817a48fd3106e1e7d9d63fe69ada3ff08d8aa73546a565bdd40171fc14e20ce183ddbcbed172eb7e535edb1dc8f5c6abd8546c13b093dd399379b126d461d7dc5bfc583c2d540a4a4e9b2c56b3ec868471fcf9a3efb32ca0b33efd2fba5661b557575424eea0975be89938a178a7ff41ccdda52d6441024ce3b651852cae8f758724d6315302d4013199067d003d4b0bd7067e044f05857ee180c7f0cf18a799acda7eadebed1650a6dec450b2dc27a569f396ea2620f4ca370a37844e8fd82c881dec426b273b2fdc9a9a1fa760c5940c4ad0ea8f154da0e7e8a4342d480d0a897793fbfb810ac4cf2c755b29a5d624615e91afab92f64255ba3b295beaa31da4cbe263ee9441037a0e9e130bd416838a341c147d7029206eece1e314c935c4f3cba419f29755296fe1a19e93040b63784e8d272186b91fb723ab0c433e4ecfe119bba00e5f225ef20a10a820062d36362907188de69802a002122b6b7fdb4340b5863195c2c144a78f2e6720f2b9d5526ed02197d3d998368a698b630ca34bca23950429d983dd1afcb9ea94fc2fbf03858ff2c92168ecef185cbf62ad43b41c310433e75b4d94d4669c14568ef454c290a02274811a5a5fb42fc1b89eb3b06ca750be0f421d3dfba68d0189662f3bee7d44b28c57370cdfb5857c989df06ef9e135f3cda2b07068c2044d51c5876201097288b6b6d6ed83fc82c2fb46d1fa382efaaca9b84f19c078e2045e3f84c75bde89101861d793c2a457a63e66320709e4381f01b59fae0aa5991b7888e0f343c43b61a8a24f66cbd7f66cb5df9151c92c3b3b85e1126b2dd3ae9c3ef2bb810906e5578cc0bfba5886b1078c9f8f2e51c77fcb06a0493f67dee0ab4a1b8ef4e9575146f300ab1c1118ba10eb689c94732f0fa4f33494372858c212d45c030d924a28c7fd661487f3a0aad85319978c00ede208544fc88097b34f6f7dd01dce8f1da1842a552356362268c7c71cd237169579ade1e5ff549981ff42bf76119f76150f8c26e185dc430a7f6aae40d724e9eb251e72fdd75edfa2ffb677ba010c671ff62bcf05797a2aa0b65ada8acae0ee8edf056124fe752c9aaa520eefe100e803f6d75a418ad9f96735c3dfb95e9c2ace4c8bae623dd2954e6093ccb088fc31e0d6897c421eed37e3869f4b5ae84179cdaa20fe786c306aa781e71e99d8f861fc6f5ccfb10c89a7aec26a719671460e9fc81f480901115f2e7fdf91c26cc4fa176b618ff6a565b75dd3531db537318ffcf6ab9c86274a4d9bd3aae3d9a1a99935c21c6c61c1163d3395dd222eb91f09e6952b1efdddde0bdcaeb612f77a87db571e0cae81c6981384d27d678e992b85a035f0f672eafea416886eaea7650d6fcf113d3656cba5a0ca4846d521037223272f9fe4dc51fd2312454ea14f39e3deca52290a20376c2657bc116f13e98f62ec826e8c085022c0aeaeb482a561b2007b3d209403d7b904eb32712f7eed8fcb2b6fd608a917a885467e1c566ae11fde363c75a71491a91d76372e6f72ec931c76f36c7442c2abb3a0e8d741829be3c08f130555f39a279550beedd7c828cb29c146eec4dbf8c1c0c0b4348e2c60700fdcf3a81fc19e274cc60824c95290ab3dc8efdbe3bbfedc2d4c354672aee94d4f802c6c4f1229e09e0de33e654bce0bf72ffac48908b5c0a849d434cab1114499a5116d514599281bf32bd65147ad1516c48efce239783028a0a719d25e7a497723b22182c1c95f53c5b04a64b3edfe95301cef2c60a205fafe1dbd4a5993ecdcf44dbda83522c2a009fdd113622c9a51fe21dc0d75db8c3725a14251007dd34f75b27ec433382de2395c06bdd6ee5af9eabb6ae6104b4babca1194cb2cca097563ce48e960d39bc0fcbf82759a4fb13f7faa8eb983e0c4298f6a750c0468ec7ec7c8003ed36b5aafc316472c5b29dd3425bff25289ef174dbb21d566ea38e8cc022dd01212b6791e7573538b42a0dea4c6afb7e968a305f21d6c3d0ef2aacb667581dc255619f48420c0f5c420c055167188d0c5624ef57d137de841b07ca141f85caf21b05eda8690fc70daf2a606f2b8f7eb400585b5326e4efc727bdc89d32596a85bf6a0dadba776071dd8cdcf4574a3bd7ed82925d9d7c3223ed3cfbed627270d8673279c449471592454cc7ea9e6754bffa6dc23cf3f384df50f0d2dc768715ccf46ce96e78cff56949b8ef92f30d9147608aacacf18b7b3b1a6a145d16cbbaba1c1f37c12ba90f8db4f1f313d3f7874d37564e0fe04e4685a5e937fa7e2469ce3963f8d919949a1fa905f364ac63049f9ddabb0dc5d8483d8eeb8f3711aa30524a0caff6b27a4311867bfb200c816945d3a1cb3a5cbea0c786cc6c8b3fdb4e6b995a110bd471c0b1dfc3fec15a8dabb31e82ea11b53baa48d5c3fe79b637269d7234354d02d5888a5899f99b6c5ba378c9f74d8dc7475eedccfaf2fe144b690fa8289f4768d1c7ad464950ae6f02c370934393c7febcbbad8cb1068e9366d47da6542ce2fa97a298f14914a52654cfc30af29ceb957ed89548426384122e790d4b53c96804f59f0b39a62342622b9a0c9de22c9a57a9e26d63c3539232a97ffd05110d2655c959f222e94ff74b8d70c638e15778933c21e1b25b1aed6ae3c9de6c5329124ecacbfa1dac673baa824c3f200feefdae14d9249057137e776cd98a16570fa09a6c4676712cf205c694d7cc2f35d44232c75ef032a8be5d6b566fa76c60690150e66c2013051e1e6d4698886c3102e8e01d209dffd71d91406eccfb1f2ef8ec8dcaf86062d00f31c82fa2ca49d78e94edbddb99e2b48480f7473172455f392a694ef905997bb0c964c38bc118fd973f1ca9247b8ac0f72701859452c12393861bd0735af0fd12755a3fa300aa2455a21055dca54ef0d1c5eabcb8c85644b600c9592ccdd1056b8ce8fc08ba68582f8ba9ce0b1c83d1e0e80fecaa6bbb61ca131d58779bec0c7c010a3ac181517ecf4b3ae9b419ca5f129d2bc628deb468dbbcb99f0bea89f6e1378a77a929b96bccb6769e2564576ea707e218cb5b650f34fa3de792ae05af827c084aab384ee621724ba8de75bef33f0888a59941086d5442df11b16b859204d7955491172945cd5f0a31a88fe568430a5df9261233300410f88c9f2898d58169a352be54ae44060578b3a72d155f7e9470851bd12506f45e8aaf6ce5afa57d525f38a075e6e45ea04097b7cd48f39011d8630f4e1f4a75bd28a2988a655000acb7555ab524e4ebc47b0b4c1ae03214da215f2e783c24371d480e889e8b6f4669d4ce57f3c5abd7dde7b4c1edd72770328b8bebc10b6ff8a0590672c51e9a2ac223ca17bfd2eb87ac0b2ea3a1ef681c44ef3cbdf1c12600d9d9f56952f0cbdb393093af9cac560a7258caa7f941d18ef38a709c4ac56e55839ae510470c640b35c9f4fe32eb0bd54167366d370c10d8bc99a29f92d7171b68a661c36a788b75dbfe25ad171a9bedf87eeb19b4b10c8d7ba942397ae5259e95d3a28c4960d27b7f29986611a977cfd1701a70969556b195fc5c9ec506464b2a82082646708dcdc4e13f948aa33110390c3dd0e4eeef97de937362f1eb3c6004fa7631ff0b309edaba11aeb9ed5adb31f9f151904629ca2d7a246659c661343d764be2fa37fbc6115bbaea446a06d1966df96e5b1e107b83904a9f99c0092d212a7dc2275320bdaede1b506b19398f28ec446b4503ce12043618817c3f4d5b6ccc384f198efbaf5f1148da208013faf4d15ae8d80ecc1cae7c8bc64a321b3c564341e191b02bcb1812556a7e6085f64169878829e9670941655f62e12b2909e45f72d799762b1ead02a13facf9b19dd09f2ebf39127b2f39fe99c8f127722bf5d1d80eb66a99db9a232422107a2129ecd4a8b34d96e25d625a4fe54c684c8edc4aebc2e2846a722f1d7eaee7c0df208f55113f35a8580aa326664507f13bad5c09ecdd37056e247346f1f1d179b861e1f6de7ef144377790367fb360793e35fc3c03eadb6dacd097390c199305c8da21467682ac7b2ab9356be01acf6b61c2fd4d837abf23c3a4bea6c1b17f21a83cbbd6aed58d748ca5d1f1ee6d52d931d4d3a52683a95f62250d82c7f55353b85caa08b1746f46f4dfeee2008d1a9f31b2c65f80ec73f43b42e47990192586e21742caccfadb5878c069b7dae70893509f8ab585a3ba2e34942555596a5483f2de09d8ea9299942a441a0472b53bed6986051e1c866d21ef0494e3eede02186d7681ed4adac60ef320b60e99372c171edae80587a99621240471ff5b611ec74c7ab7eee619578616ed0ab58082a5135f1b9405420a57369919b85566e73710c7ec303798f278cdf7247c12a92959ce586c954159f5a2688d7b7ceb8d37332fc1edd5cee379cf5eb2cd06d9d1b40afe3bb7ec88e546a3b419eae35b3a95e7f9fd92e4f5e1c2e93367f98ea5833d06990ec8f96eaf340aa42c922fa7cc71d09500bbc2b85b1a49f5f15a7240ead3d342164c6fdd2b9c4459e10b6997ccfa44f29e74ebd72496be34b779825ef7c627cf15ec83fee27ec9d17821056621eaa5d22cd91ada0feae63d979eb21c58fe4390221091a411e9b16b352f317093cdfc55152a1a87282874e58354bd3164c5d47f17f5a0d474d748dd2036c639c1b6a5a8156829f9302719c0de3d73618d8f7939065310a5afa256b3ee7a6c8b89c91629fea3a5beb7512db86c8841309494d4f75e9ab7f376b89a5014d1abc4aeeec787b3cce63297f584fc8a373b666a4e7b09731c29afc552c56ffe122bd3ac4599a367fec5f2778e4593e05145b37421e3442e335cf11bf5806d39c9f815e89158ba78e6bf69fdee68c09381970157170fa2457e30a4161b83353a3b414c16b68b2b6f3b17fd822c5e961d15ce51737452d610b8938b4b309b1791fd1ce053ebfe5608b527765d486ebd20d2278b94a5e2882ae9ff87f12b7c09a76045c4e50fff5099421302d6c58ceb457fb9096e7e2a42673c031cd873511e70d0bd326132a17cfe6f193a1f0545bde6f7f19e64eb7e0966053cb53cc92cdadfa992176ea01527f76bead072027bb7c1ce17742179bb5013f98f1e3c0586ccf024a2d9ab3f5f9ca22f0bc0939999ce65f94e3e3f5c5bec6dcafbe0c889284c3398c9153c491416e5d9c3675cebcad959ca87fb194efade45ad6a3c224a36a023942e2ca423950fd79ee0ec7c45b5897eff4fefe1488d4f683497acdc5aeb4b0fd37f868abe0b4eca5addcf7384398bd41741dfa9e518d44199f0ac5676d55051389423787d2e7867d7f07063bb6b8772fc65437a4faaa02b01a5b75f034bc682b4a20906ec049f85d6c14b98ba9b51a3f8cb7dea69b9dd73654861933acb9e0ddaca181b0b7af25879f61e0d611b31408d9a3823a05a0706a9ae3bb8cf52575b251c600f629ae43bfd3cf01f11f366bd1678574c6e908b104f9a2006a4b30e7c59172d39455316691a925152c361be101d446b388cb70d5a9c64647d5504c4cac1dabe0d562889ff46bf61db5952d4ac1f7fee8bf79c6569f03d895b5558e5edea41433c7c25b6d3bb389c8ded4080248d5195286277fc2233e702e769ed0153128956a4e6e35b76cbea1315b26569b606bc87070c141329e86a6e6281ec25786d1135dc22eaf87cadcb43db2b1b74bc711e96ac3ea6d7592e5838751d1d1263f386aebf2323499478d4973d1a8849f1d1e9d6781a36b40a22ad38da30eced92d64149e1be61bfa5087621937590d91a2bfeaa86c0776e71ed4bc9a9a4a28c36797ab10b910b1b1020778ad4aec6bf6f96434565d7651835a3dbb2c2cacf4f5a6beb9a19f674fb6e39d9fe0353243a47119f46898ee0543b7ac3bb2a8b740ffffdbedf0a26d1b36bb99405e011cbc94595dda7fff130ca4e74b9df84f4ed4255e8be6f9a8e6fd83551dd1ea3a84816083108c83ab91d43483f4e2bdac1f59855cc1981e6a923b4e2a94d137eb3a2ca3d20126c9cd56dbd5f7765bfd1aa889febf79c481997e2ef85f405f5889b103ed8db923114f909f36a936e470f963fe6bf8aa30c62e834121377cc80ac9aaf95b5e71e5c09c14e770d1c64d492e2d6b672eabd9182817cd71bd87b9d1dc61538eba4581c20afe84e67555bd8b81ff0ccdf7e471f321d4cca23f94f85c37870a05f295ada3fc1b06435fac38fff220189c5b1c8799d14eab0558a6be6e04a7ce172ca0ca5fea0837252e9d9e1118e7e8ed1da867043bccace8460de175e897ff52a66aab56e0f279732150834f6c8847a4f85d72b429c9fa3076c644c58a3db1c1b17c036fba18b242163f01a1856237a064605583dc81c792049682ac2fe97b36da61e33f2b99abd1657df6a5b56ad4130dcadd68714baa0a5ec4646e399b8d1dffdda403428e96b1299f7cab5521385ebe807080d506c754450b31c023d20ed34a3dd34f1d0d5191332517a23a5ded534a7ef8cb9bdbfb5bbf2d9230e1add41a19b0a276583faf63aaeb58c622bd5dc7547f3f2ca266d4a35f1056fdfe02f3d3ed1c212c6f53ea712e308020d1eabb03044a0a67a1bbe9aa8e1b3ea29e95ed33718bc63dc2c03a401bc8e86625b31e05ec2f9a330bc93865631f2edf3eccec49b9e7a9c79dbe7f55705b7f80738013ab8691c979d80523be736b93d8a7f8260e980977f8b65a57e363af715ac168ab1379c717ddeabc2afa3d9ec449aa1d26762e246affd7341ab02ae0eedef7f99575c0c071e06328db671601ae65d64b86a626b3bbbd3d926663874b23e11e1de280c4652af10631c40a84b61a5bcbe7275d6c6c96f1c46428742b49948e1beb2993e1b632f3bf8f00f3575169274b6a5c406fcff80ff21bcb60e1fa42df7a16aa56b313ffa63cdfebf30711c32827c41c6ae16ff9629999e241c5394dfe7cd16b4b31fd4d042b8f2fbc7bd705f31fb31f0d9c315840f8cc0d25cc8a24f7a792c6d7ba3957ad51a22d69194ee623eefafd4ca20abf8d9237eac691effa19df13c61901ab1661dd7b3a39f0aa5eb5a1516299a2a090179df063f493e0155555d3bf670a1d4838334fe462ffd2127e8718207a62859b7f15e09ff0a5a0bae768f7164074b63bd7314b8f27ef6ad4294e43f964edb65dd76eb635c68bfac9aa4221e6b87ca3afe95202ccce619404c2af656b320b1deee664e973430b7f2f101592ae47ab16354b2e0707d7b692ead425031a035fd762a72c516d5440ae89ab1ebfe9e8daa51b269cb76cb4f7a68605e2abb45ee081097d898e23c738508a54b074604bba9dadd7c6f0a4aa9e7c7b5292dd3dae5391c0de505caf617b67baa7d58306db254444eeec176acb51cdb610645fc7690e37115161d0ef65fce78d62832f3427661d57e31a9fcd8a01b3dabbccccb240adbb9d011400e746bc8f966a0830d94883a552895e840dfdfa30c73a3a7477936ffc3afec7adafd68c53fb4e01694b3fe179848e6f24646560b7d10a230160c331c26a4a0a296116f3822629c6ebc4a126652320def23358b54c1055952542a44b548dd8d4765ee09001c1b656d3496381af214a19f226cbc8899bc8fd6ef201af6ac830b38ed00469e154daa7f0945549e2e1706dbaeb3689ce443910468380d6bbfa1d9914f013270a60d8c5f77d17f5e7a295ec5d7577b0b488acb49a83f5e5ec7cdb3e9307e1731313ab091a979524bcae9834dab3b32481a2cf598beef61328f74a3a91e1916a9f831f9c16ba32e5358442c7fb7048e673ac173f97397bea4a9474b020d7a44eea1867e72f4d0ea680124c647196036b40cc618b8924c46496df825d5d00e5218bb1957f0744ed7930262630e85977abfe740a42fa33c375d4b0ea26ed92656b9dfca9aa78b3c71de8fb276627706f24e324d86b2924e728f5aa3a5d53d5a621cab9a3ec659d5dda5f3fa6ce50b66cfaff95e046676681224b0be75e2775e681580080705581eba0a3b898f8f0ef22521eb33fc8862b074924546fb9df82e5b0725737db7dc6e577b6672dd4e09f527fa5ddc28cd4effd17a2c0139c520410f1470940dbef94c8b9002a6887125e6902c74043f1e977f145cb4334befb45a536c581121b0e3401237e502ef2fec4647dd34615722e5d7caff189bff98ec20073fc61f17feb3c1c8df021c28fff15472e8dfd1649fc4913abacd57bbe59ff42b569f18d66385d424208d6b3611cf6eaaccf34f48d26827c2b6a1b022ac633c56c60362ca1e0ae1286c511a64daf0072afacf2517207e961148ec8697bab82331a387f4146553d0917ef610c6db7cded0431137b92945df97b3dba47687b37426ce69026552e9e5b0ee228241df2287defe94eea12f05bf9f104d5d7028ba86618471e840a083e6d1333d59a20fa80b73483c7f274625a30e2addebcbf5f1ec4bd3e6f4b51ec775711f229f9a435633764bdbf49206386cf3a01e933a580312123ecc93e98f19e42d36ac712c839744e84329a4fa2a312e80d670446fb0768402bb6e56dcdf817205a425884a4e50cc3c0a8c8f297f5aaa3cefb67ac0dd4d3303e12274c86671256c3d8489c792e8a1c62df0aaf80ba8da570ce525af29226b3af66aee76def06d2a910abf9176d274be63061828c0f32b6e8bc614bf06f2452d262190a80975a60bf0c85201f2af87522fffe6be0156e3df51b0a8c68a02d01c8267e5dce72d089ac9b5e9426dbd55ba04d5e3996fd3b4f47987c5bb7108cf2f0c82898c1a0301bf1157231cd5f5681b6130aa2705bc154db2298c5ceb8d782cfb668d01142d91caa86afabba52ea063b6f33a7052e9fc0e68ed09f1152453242e4413333c36dc4befe79744e33fe60884e43e079e6e99ef90ffaae4f1f0e32372366d994755be53d09d1a15fa3141da047c881c4ad10165a56f46cd5ef3952730784e929243f86e9a16e5a9b2019e137f81363e14b432317d28a29f7b4f621b1f3126f827e4e386ef432cdd0532f1f58d3430b61cc44dc754a4275326c6780278461021e8c50089ecf8a2c6edfc909a67669b2d43b8aee61c498bed37387d225f4a417c369f9d9e338f76e2ee306c533f775a9838edaf579a4257e813054f6d667c6362ae1a53bfd44c7867b95362d9591ba76c00f99964abd5f9da65c858588d9831b6a0bd39a03278c9783371694fe6c4d7a498dfdea92439a8d63e9c222ecc65d4fc079ac844a939b09a1e7fa8fd2bb86521b1c774dbb0b1a5eedf3534685892fb9cc7d80460ba1d8f27b8e3051725a01e3ea029413c0d48cc66c4d32e4d9c838fa197daf4591b6d43eea059542a442c3ea7afa8554bbcddb523918387319689becae094aef7829a9b1d5381d64b5642ea24e6636c42a4307cf0bd72c15c9338574e4d48a0aa40896a2091eb1a64210214f30a70df1680c9fb147ebd8661517311561f8388276b68b9377e5e60b272f4adae5fcb5f157f53263ace20010055a9d5f6751b5244da9da009bdd364fa8ac3c55d1e9ae3c7753501f0edbb5d3b1b5ba3ae7c49405d9185e9ab42465c8904b7c633989d462be46620bed235b32a2f3cdd10cfdd0a3a6c44e79373962792b169aa20f142b27aa1ed250d708a6865bcf8d645d690f193a138b9d72251adc5476bf9392a6309242b46b65e2a9cac05daef29552da40f6ead6b8e5f6bbafec5e49b0830d61b7e6c77f6c3eb4e618614ed58a3be1ff3541614a2ad726296b43705d8f4bc2ea46e038df0d9b8549bd94bc13e88a2abc2e080e53e948f17d2fc282c47a721a5ef68b7583d1f31da451f066f08162df472e65b747cc8a0ca2727bdcf0ca1c332952d22357e09de0d5e8354d653de641fd1ce35f6a6ba0e270a538d018c2cbe6cbf6890de3d05b197ddc54b6caa8d754cfe2f9872d7df33ddea5fca10b642a5872d5a6c3a3d6425d24a484e2a75dba70613ba7b257486d221d28c8ff98c33e9abc0c5891066017685876669cfad70a19ed5406d52864a1ec980a27e781526372d14f44ddf5de2045e8e71737514a2435f9945677302382898a6c962b9fc031d2497f1e77019c7f1010cc51e05dc91b41173378c1c479b71e356ce99135b2ad585ba490349d74fafa5b7d669a61048f3a56430075c794233f984c051459c3ba0ef6e22fd7f372672277e93120bd7c7858dc7286c42791e164f505ffa1e2e765efbcd59b0faed29831a986868efd09d119a0639d3e67530e3c151de4a4b01dfc86102a974943103e2594ebe14d5244166a5a2a77ba104e3607a7e6e074a0bf51159887c47fe88ac0e51a4f552d9f6c665fc5b8b888e4792776697651eaf09a606ba969e9f418043579c05a65a7f22f40b60dc4d1ff6c131c99180e7bf91f53769d842a59138e8b2ee8176eb576317d3730bc5354e37ae199b8b281ebf6bff0a7225b7da8568c6bfa1a5dc3435493b2d61eaee2154dbd9f66c67944100cd6e390abe0c7ee1f5e7da76047d68281a92858e18117a451a87194258f0ca7bb27ba541d5a4326870c1d95b73bc034b143bec82b8b3eea1f1ed45781ae115412f707b5760887eea8e154c16d60c455cc9cc71e75c16a8c36f7cba0cbd474160c8636622729ecd2bb31afddc3eb36d4a2ad48e2a8a99bcc22b642616e6aa71d82983c24e8c21fa7a6fe544c3812a773e9f9294e7d5559c4de7b11d4b2aa8ed804dd57cc83dae28fa1f41dfc2eb3b8032c6fcd42131ce9f0138c05d117da02af9c0af8f979b1c63868a12503cac9f9a2c150a4bc2ed05d6bd1a2eff904843488d610165e120803af015e8141c18eace65ea347b3a7240deb5a632863d78045e9ecbc271bba747c734201b07f022454507ab23d946d6e70542c0bbf2ef1023c1100a24f71443f058c15d7c9129fd49a357dc1bcba52c28bfc4f1d25753ce4ceb803c587a804e1601c3d7d6c33d798b5122b99cf5f903de85454e5eab58027b12ac7be04a5f215404191c6ad15a1cb18971ed3f0c4f4b81d8e32f714a6a6073f3f74a351c67b8089fd2d8ad3d5b74616f4a2ea49d3a5a8a4fd391a3c68181e94fa35f5cd1a684432016b6f086e2fb7ce2514b67a53e5f1aa670e8243dc5e72113f17ac3a31a94204c63495d5e5b10288837c22369d6f4b64c54e4cf371811b8e7cf1d41b81372f74c303af189c806ca4c37ebf5dbf616d0926b23c0a2ded3dd754b916d299142d88689ebbd03b6bcf8a26d8306c1b20786755af47d37838485c9141c92d785fc2e9bb9c2acf47ee7c4a6481d38a722995bcd8f1239c880a8fe036a22fd2b1b1c63755694470c2b61b4de21df5341dc47e75eac4ee031f66cbe65b7ebcf071a23ae131564ad0715088f7536e248e90aaa679282f1fc05e5084d8663c5bfaff55332b0e25a62ed307671a0409b2877e710fd49e127c99cfa9b2b9267c4de27964e7f63791820e42fc9509650fc22560442966fa4f39157dd0b2846c3fcf65e886db43dd688636430591bde4ce7d1496efbfde810605d1b258c1c7a1046fb235d8f8799281db6ddb5f4143a511eb34ac26283546be907a651e8f91ae87a2e0e90b7ae0281bcc6cdfd891e195c3f49e6cf8c4dca05b97d4da87c7be3b6c9b4620c212c0021aa98b24bac973f714e1b82f89c770aac1523768f737520572f4eb12a65d0d37fbd8c79efde28744a005dc2653b8a6ff04fa309b9f017fb6e827751f08b7b7df718b0bac7569e9511a51a1a2d5d32aedbaf76df0421c6350f64cfd349ba086ee9aa3b1a78a6b11c458d82bd09fc9ee0b7c925dda6546bec1bf7ee190af874d8d0d0615d6c9582685c17a4790a989a42ea89c1e46f8f7982b508fe9ac8a22c1a524fdacb41b9f9b542cdb4de350660a446aa2e4c5bc79d016566a2e29ddb7e1a4d4e7f29112ec88435f549c8e0f604782d4443a68e40a867c85b1fdf08cbed6791c9aebdfac090bb70709f664f3b18f5f08492fcfb9c410085040234eb271b8a7324ac62c802e3426e01c8356d161e8ca2ddff726aed912bf16489fe79aafcc9bdf4bfdcd88a6f316f112c9c53e49ba1a1687b2d448eaf1df005e9b0cb61dd037104bcefa86e59c5457cee4919de9ab27a6341b7108d257bd890304425cd87648445144b68dc00645c3094cecc9b9c702e3870a45964e605a2db26e3dfe5cd2aab7bbe114c158121137db120e6fe271354a352d362b3dfc25721bcc700b2ce44370a43233b9dedc53db3c1466716fe6b1f12898d3fc909c1b0fa899535c55aa877f0b11dc04f487c415f264931606185e8b861e69094a77c53a3527097be800cce2996e5648ee6a3411d82f60b07598eadc99918534fb2469b6686e92cb3f78534ba981b2e50f3ba6c512c68fb21eb77cf3010f5ba02da2a87cb91e0396a3ae5ecee6f5b19b2f6f819c3b3ddb93f96a00d1bb55985a4a0b22a838727d1ec8303bc32cbb65a13605332725330ed23d2a1352ec9279169c4e76d704800dfac7c8475f06dc15e2a715d47a7316f0f7228851a96d1e35197581386680022884e6cdd3f3ebe355b882c5573b8333498e2b4b83159e5889783fd7a24df3af72999ea10a11229bac41f0e9b0bb6efa09bc610a8f4af1131af9a1958fe65f2ef21328e034e307d0df5b9f6854ca6f35186f860945c2c7f7c7652f8e77a767a011733a25bbf2f35c5e71f1c07046dd717002746731741968cc40f99d4be3712b1ef1ea02d333fac28aedfda302f1ae91ef42c4d853b4237ebddc17dbaea86921c43d5f7eb86c172a6b70543f94ab96690c31c4b5c1bfd934ed2ed83a9d4faea0fcf48fd9dede08650ec0cef1f559ebc553f5b081dd172d3ea97b81ada417e53d9b7a7f6306aa7d8305417723d05012ffe772b9efc42255982e498a2c413983a6dde1424d6582fc416e52df9be6863825ce567737a8296ae0b5c59d15d8aff3d28b657b2c850c958da529c8d9f0d5dbdffcebe410a2a8a15130a7380627cd143ee3a6e1b1334df6a748ba494bd275598a607272d13f88cdd888c04b21c0d2d98dcff62f4c4715ef7e2eadbc22d179cc1cc8fce21e03d4ed3be4519b03c1a420859134eb3da224d28ee1a703f5e46a561f21f86ca36c9b35275a8db6c2c76a8bf67a958e3de76a4f3a4d98e9b52623b2940006558dfa7f10153c28cfa3ac98b72ecc3659a8e55eaee30248196e90fc39771b5ba3874da1469cdb14f5bb032ebae9eb321b4aafbcafc0d368558cb07ef96a42367efe248640bb4a720f7d053ff6a7c62771e1669c90f53997adaac07cf955c7bd98cb2b1aa0c734e76c4760df7bc911dc338dec6d9f92d8ab2379a0f5e0e6e1038b4cd0931406a5ebfc6b989533571c80081bc37e77e1ad0f865e14fadbac43f0d78fe9fefe3a8d7c77a107c6247f15790a0430e6ae1e428d00ef165d939697651d1338d18bd9081352fde06b61390019239113ab6f39c73eebe181c90202817e0b7e7d67fce1ae25ee4d592040eeef94793af636d36b79929b48739c0efad5aa5b14dc2acdf629fcf83b25884f7ea0b50d439d95e74d4da10d8d60d0c703ebefb4e5fee21344c11b88015f9fe3742ab738a4235504444e8287eba135c81164226554656e46a544c81c37b18bbdaae8df32f2e253139786bc9cbfa6f12195d4a29d3d3ddc2093b5aaa5a131d212900328411e6ab58e79b8e70bdaa2af27a8dc2cf50dbcd6e3af74c4fcbbc20f1eb32bcb634c7cfc79960835dfb6b6868ce4196b046fa018074ef89df8884b22dce32f0118bd1957f6b683e4374be4355a0a8f253c11c961e0d7b56cb5bf5670e8923a78a6455471a8f053a76f4ec58f69838205e2c5856557c2470c1842aa721afc390551d0b3c10cb91c9aeb2792329024084414ae464a0b27d4db78161f294bf237114ed0e02b74ed3416af12a41975e6f6b1767a881a0c70d0f70fe742146eb2610f17e74d53646759f75892662b42583dadbf516256cc78611a224834c801ad495a122c14961f0a477f9d1ba5ab00c59bfcf6101e25e5142bef3bb56735f0b2d8db54fa880128d46ecde2fe83ec6b48062aa732138a7791f0653f0166b99bd03527be8a092e48cec46e4a037714c9772a53cc8f7c5d39a6226c41aaacf9fe2f38bde33f5f41b4644745a647b4dc9bb6606c7907d654e2d852a78994551f1c46d8148438dbb8075ae0fce97d936ba29f813d1243fb0ccfb519f284ad80a00f5bdb9920617f8f1d03a563d3f7c3368752640d8d42fc609949b1949deb068cedd80e70e58bdedfd8cc2797f48b302b764537992bc40c71a100ff0da737f67262927bb7d4278d8909a031a6433d25a8f4f92834a0a04cd83528290bb01ebf4871fc184e90fbe9e291e793fad8acc664eb8ca0bf75d8315a981e9694204b71ba4c3cd3351582eb89d1ce40fbc557008fbf928fb5077cdea38d27fa7efaa20f86d4f1b9825cbb812db8c04f94606811218c0cd2bfe2a804c91eec40e039b52b5446e83c0fb784162008f2e36bd13426614989009018c7a67a7dac7cf0d5a9a6aae7b0036d5dd12d94ca305354510106c8b0e72b68119ce833c07b65e8023fcbe3d4bef49e7c0ccadee4dedc7a1df7007f69bb9ecd124493df72a52538808c33da9de9cf14358f79a4da282b5dbb60c6c71bbba8e1c13131a7f4a19268df4e4ac226b1af58e351f012e3c23389b55512874accaf67ce47aa6859cdc72bb29cb33d5a97ab36eac69ca9f2280d742a3733f48b972b2021fe2aa88d50f256e8c25c9e02c170f42e4860bd0de92b73e386311f9b86eebabb178b7951f130107945744ae28e4f219c549e55909f66521cdd007e6de172ba942bf8d55f6283fdf56e6cbc98e808f7b4199bd1818671818098363cfccdeb8a9e2d05857665eb003836b4b6f9c6eac88d4eb2982a6717b7d8b6e3fbc6f36f8d6e5da81af254c1d9da5c23c3c57dbe3817e828191aaaf0c6675ed27e618b279cf8c22a56206828d70ce34b0d7fceaf1665073d49887a3f09826ae4a7a75b67b6fea286fc6180b68f63d97d12e8f1460a808197479061a4e5d00b81a9472791763aa0e14f13e56852a0347d60cc9db36dca827ee90c48c2a7cac131e773c50ffb5f66045bb04427e72753a8edc4383bc9f30594e4a635bf1cb5b2470b07dae4fbb58e66f396c32bb3448ded5327f85fda1a2a70fb3fd0e098cf3de377b44306153e467eefacb7139732e2e0001a0ced0e5a33ac01c92be39adb3cd1b424db5f9e903d69f65e9388d5dd2a407eecdf4b341a4629e49d24367411a294074ec65e98ba0914df8a928c0ebadd4e58775e2c5358f97605352db219ee38e06ba8d488761af1c35a2d75ea8bba0d99f054fa16aff571c790d498dbe6949d605ea2986429ae78f44ecca47016d92b895fba9346e70105697ae689fc15712d724c438e74fa8c9c50c81560f16abc22ed1601c5a176bb6960150e587c22cfddd053f95581b08c3cbfd782378d486cbb42466e1f886d3984aabb7a72cd827b679442524dee91426c722508b020993dee223d27af6271372f7dd1d2a8efadb7c26254aaf108745d729029d62b29e891b3b78b14d11a9f7e9724ff1c7e67375daa153e3bd3738d33d38dd9c5368cb1ff7eb5329eee48d7c12ab99d37cff27b5bfba1f811aef43583bfd381ac5cbcd319c51383ca4f9410d411a465b204d42bd15ef3843eeeb74f0aa623358ecf9bb7d644f1e8a54e0055ebe3189b7a1dba613199b6caac78c4649e28299a9beb49d269423a54992eb7b19edfec51b5bca8aaf05d401ae5bb1ea471a8485c32a96adec7b6d6256ac70135196f41dab4cd4f650b1393724d9013e27ed0d494217665c8b766300eb6c8cc8a7a606434f8efd7052b7a269f28590e1b2f4af4c8724479b709a37f851e56a0ccc1f5263d5fca585f8aa565daecf1d8c64e681b84863c0273ab0f5dd57e6bf7880e259625e9c56bfbe3de03d720ad8f9689b0f41f3deff08a220f10e6b0f1d117f20613546b454ee7938096816c3bab4ee14491a895e75cbe16c0b99d960faeef2a66a0217a519a179248c51042757c0cff565c8c468a54014e715816d0295aab011d4249c7e89ae25547e4b93316e58b54c860cc6b54d1c72211a2710190f4302be4e46bcfc19e7e78e86137f86309fd99525b08fcdea5f44f7867f0469cc093fabd077b5cd6bff952b24566bf24c55d8d2a309b948d8302325a96d40537524ea2f584c2ea8e5f6102a1042b3844454a95247def9925c76fa32d57a20b6bf6e0781306c04599ce55e68a6390a2a78c80a0f120f6621eeb62226f4df57566c475930c28c9f06c7267d18351cb94783f36af6e9b8fa31c849f24b10ac4c299e06514e6fc057281e09311de765c1a165226fac930755e356f2ad496653ac7e912d1ee6452a17c2a51d4ecd22246ac8bd7d42115af07be3d7d0c234e802749e99170c0e99eb6f4475d199e8b7712bd24b9e6246a773e187e6419df80fdca0d45338661bc3d43116f5dfecfa5a1ecd283aa16eeefcf401099ebae7d3f3ee417db53ad7cd769997fccce8a5a9fd1d4022a07ff2e553e0954a2965bd6afc1fd98cc951f9282157a89468937799232df7a28f54282eb27a2def6da44336761d6ad8c4b4ed522ccf25a19f2e2fe110035a1d7a21312df655e1fe38822646ee8085a30a9408a1c205acf4000162fc6a479d13fe8c7be6f132589410915a5682a0277a99139391ba5452953cef067298250aea638ccee6721f67a8a83239142d33366d0ec247aaa12132bb10cb341c5a603264be1abd1291619b76fc7dfc08729e325628760abca6867b44e8187b089a5e4948abcabc61733b214c3bf85b27adcb1b54141f5dc924a544d981bc2d195a16a6e730f74af72fd33444cf91386b0b1c1bdfc52285fa7c1f11c086e5af1432204f6bcea938e4ff80ef67a13fb5db8742226f899e218cb7f526f572b55a25623464210d0c642c78506c5e19502a8a22d0c6c62bb85b45d2a15bed2dea044bf370c97da49b464060527378f382315872ac1d7746144cf3d23753cb19713ad3c56c5198517ae85d3eb09fe1216ba4e00497691398a101b5899371b7cac82aa3950b26f316368209744d0a7d95f3cfe7412f1363a3913595a0be84f86f3faa0aec0cab446215cd308a24ba4b0e5e5104b48adf52538b2c35cf69e060578fbf01021057d98fd352d89438b748cc40fc3504ce8bc56ee45d6414ab991ba93b91a83e6b04ca94933ca86c34245a5924f447e85fb50645ed429f8c317bb6f6466efa8a5148c1e6a3260276f0583a9178cf45769af10ac41f5e14500ebe765da2ba7a290bdfff7ec9fa66dd22575056111f63c7c84fc4bb4242ad22759c112981c7b76d22eba04e8d346c86d98898d70ae14c24d292311919ceda80e0e1cfa4bca3c60158416a2739fe709f1573d4939bd27d3495835fc12ca7b1331ca8e4b113d9277b6fdf50406a09fe488ce24dd7a645075ef0939ec3571bbc5297585897a0b80d25585a10fe5153791aa1efbc7367bae7ab07e1cd73b2a2c7253bfceadeee20d7e64f326718ca85998169976066f1f3830414d284dba8a4e61ef1a96e6d756dc4416bb7ba35268c79e805a2d6bf0b47e9c0218a82aa93a59f00ec23b498d9b3518b1ad0cb8d73f4c3774d90b9e3265b478717c831cfb60e54747d59cd23399ef26d21928228061273983a0c473befe37643db4fbacab6ddc6a6bd3109f19ff7f72d4ff53d9d0b427c0dc42c6f3c3299de510a9f723e3f93a18d8d3fad8ab950072a6f40d11dea772be50e90fd4149e5d9e26ab9fe274b2d23af4d17f344431f93e809fdc69c272a0aa223bf8f21527f694fa364cd67dc9ce4a070c3b40bd9d28a6a32b963833047d738278fe638e90faeb3c9a0718a41b160b6b096c72cf685278e0585064507593ed374e5e14071d9c3a0bf3daab8ad51fad2e4719decbdfb2a954739ff2bbac4b9d072371e58c262ad5b4923a0043c63f444e684f68efb5b52231d7db7ed15b496eb07cbaee09a854961f9ae511a4ce4acc0515320254dec7ffa429e5b262713826d77a1deb59509b41552bfa475492444b0e6a62363ea9cfaf114a9634a854d37a56f222a86bed32cd64b1aecffa1bf706e01f2d8fc48b4043265d55ee8701843be18f0af90df5d7ecf418e6c56c7ec7bfc410d01e10e31d51802cd6cc9f95be6e234996d7eb381f55f2797af45b17b51f307aea6f9d9c1f41e5cfef49d1b1995056790868558e001f0e3f1421da1246fec6a57823cc49e0fe31b125877c1947c6ff223681361e7ee4d35e09b573c3e8b3f4b4bb4c97df3ccfa086bf72dabf8d65458732c81d33a90de123da794afaa3b42204067fa970a517d1b05afe413b1a82e0133b679dc557615f870c91f3a8e732d962d020da1338c752c630b361d77c32db2bfb27be8d66f7307e0c893418e49fb53c24bbacc59accf05b8938127d8bc6fd410b02fc5c73526fe8f35024ca45b64e15b6218529b264b49f1d4cb4d97b37a6e5b6245e20936b74e5d47eb975bb0282e290e295ee0df7b68dfe1dc0fe3a8226b9210cc75d86fc9c66a9ebc8a7db1662c86c2a97b43e5493d484532d5a223f73b5bd5b8a536fab2cb75faee558020bd2751e59b03de625200c95a64e3a86b282c9532d9a1e7b8d4c703377f4cf25cc5e428a385603637a44e79c849e22e56841bc1071418dc469b3d3b7e6746cb9b9041c467c98c22fe744d4939243ab2b050beebc76e13fae19a65ea11b78e5a5cd63a554755d467e66501f87c42c011b25394914b25029bfe99b8d7404fbc937b0656bac744027f2503537d3b16e1cf316dab7769c148f8800952d87ed9fc8f045f24a24faec2155a0932b4a1a679a3efa71098447b25648d1a5cb3157cc21008ecc6c02a3ba122fbe640c10c996fdb14249140a75280d1b73665aa0390bffc9d54851155bcf3fb90a66e3fa7b882119742898053d07928b10f31718d80152f5a0cdf07c94ccefdfa4a267eb600a27a1b39b20e2c9da65392f4a1ee1768f6881f3940bab997ab309acf64f73a26b7cb3910c0f190cd50c3f0fc9c60a9cae924ba9100f6b48f1821577d558c0494150fce86dfd6786dd94178d0aa06003c7f9c784bc65bc137c7f3746e20dd11049add95d5678a4ccbc7908ca0b5325fe2a5f9fae8c111868871373ac61ad2b81f003140954a560cc44397272880a44194e382cf6b6d5d257c3bd0e08a04d83897dd0e1013529cccf5e40a5c1bd218321744de5b8c45ad7b917bcf33995eddc77f9ba17d4637fb6ea87ea3471ff6bcb2e7774d9d7053b672e1b5ff4d2d57db013b8e16f120afcd8b62ae57f6b8e738499907b6b860709153990ece050365a6cd68e7264d22917684cb5934de12edd5c812bea7bc6ad96aec158b00c44c165ee990e5b0d02d06d14445727ce7de87a5bdea9385dbaf9d4058b07f009a0e44513be47b2538483a326a034051705f2c2d7f4215c6c9628e9c48ec8096ce0167f4f3e8fecb08ecc651ee8088f2a146108de81569a388f0bb59f6447c37179238ca1214b5c33712e17140ec3a70ef805f44886a14467199fa0ae896fc9d7c623cc2d4977ec800d7a4c1074687d5b0d6c01bdeae9754147919c0ae8948cca6f54a7e642c46131a6b3c638ec8a2ad21b46d022dc4dd5013679b5d40f4bb5ffc150739cc7fd3aaf493ce0d24d86dccf18279d5727f06d0594bdfeb92d46788a9ff5db801893df5ea1a6f1a7bf256c0308a5355829801475f3e70ee4c6aab752151075a937acd8b82008e7d033bc255d8c6aa74f038fe2bcb326e50240b36cad68a73a6b68f9a3954b8ea90421cf6aad43691af922e610ffd7bb9359e20874f38625330deff556807a4ea0d15a9c6a592f2120bfa8d1cc469d35d7dd389b79ab8fd3861cb144803604de3eb569801d77a9d96ac6cd9800f72305b775ae62e2e7fcf09f282506f5eca0603a449d87554639d625ea54f845564556e56d78220813458207cb2bda5d88656e19dbe735fd3122bd1d0330cc4de1b97297e7cc6eb8dc771250ebb01692b53e7c5246996912ac71e28854cb45da6838ef5a38001ad3a5c4e09122c8b8ab7ee4bc6942c95d30791bfb167dcddbabb660fb0adc92b389e444135b65f285f37cce779a984b6b55a9b55097bd43bb444caeeffbd7195d99af9dd0b952e1485a6e07fe7104c31dcc31ea8bd2199c066a5368e6276b9dbafc90db0514ceeaf7842585270f110ed69204a93d5ccca04b17234a938c3f856a354fe7c3c27826c7d563ce186b99a4e55816633fca09e23b635625c1e8c1c215d862fab2a2f9a711a1e60c2e9f80cc755b7131bd4d9f1b567af7d49117fd8c260251f0643ab4c8b5f012ac87e719142d3ec04703ad714fb727b1fd2877888af4d6ebb3b5d59a8fcd334024c6e0344f5ce71bb7ec8a9ceaa8036386aed03cabd7386ec0f0a53cfcaf0bd9fc46cc45cbe1f45ecd4c61ea884e0012e3b2b7a4babe47adc1e4ea23ee96cd102070c2793b2cca4840ba2bf23d06f3b0ff83b6e868311e3c41855e5405262c170cd19cefe5f1fde7b10ea1b66c785a5f35f0fe2af62661890fd69db1907a3ebd0f0a6b2c423bb99712d1ba582cf095df823265625bcf69fb0dc439c019aa626eef8ebd9590d10812e6bc3f5ec8c39615325f60f1501551105aa207fab909ff45de120348ea7642af956e059b6869454fb0bac8873e5d2560a1602675678b73b53f78a1b138ef413b626c922eafda0ebe443b39555259ad341d00e4dd713043a5d58765a109e6a494c29e4d4eafbd80fff169e43e67999f55fc40c5221cdae7159ac37d6244118257a0c9999f63fe2c990e47bb4509102c26dcf1b3a8a2495e6c5a41d3fab46dbc04d7716760281a076aec5207b6b646c21b9472c1436ba5c09f726e1335fed316c281d7d410d809f916f40eacbd8d9b63de28c4348c3cd198497facf26762be8d8375748b5315b0b0d01a520e9f170b6432a093b179f708b6187ae48d8e90c729b40cf6d331c9f1d4a765e710b479d4a3e0f281e753fef68345e4391bdaae9e86594913105165070f7399c49b992f363ae30eb35c5226561c5ce3ebe85073814f4128a4678ba68c7f192470b5bc54a7cd539a61aa0cd27302387884bd3f499cf5633990a17bf49339b2d876fad76dcea07d96a6e7451aa5b9c1989d743ae66b3367c5017cd8f1fa936112b6ae0a547fb53f1e6651c5e5a5254d63d285e5ace262dca8b5a09f507d039f6774f98f6bb9714d7963a8c50d773e2fded00554d7b10c86095a02e84407a43ff81f9f22a00ff0610bf51b7861068a03a6ae5ad09d64dd7ef8d173bd085152257c9203e9c4380ec7eb36ff64fe37ecd7779256aec9928ba9f54ce21fb08e1ebfdf8cd556a3af8ca411f5f3927fdc8ebcbc7c0a80f7b64fa229c4563e10cb148859638b97f2e29f4b1a31fb0e6033d03ca483f47ec77e066dd7074737738c86019c4086dbbdf958455c003ae1fc7a09bbbfc2ac4b989af8d5981284d6f13cc12b8b74bdc6eb30133f0bc5b9f8f342eb95e561013fe4d12e5ec1363156d1ce88bf7671d01e0bb16bb5d6a5e35fa104e8bb51f084db0eab62f9837719d4d48e18ef4dc04f1a5a1ac3df4c23ef5b811d11a7a6f67ce1573a238847fd67edd52d00f8873147b6c1a6ece3f1e382ebb192b45a8ce1f77ec2e1384e198e7f76f49af91bbf22bb1bdb22e652ba43e21d1712bd942a4ea1d69063a28a5abb0afdf6bafb0e1fb1aa60c61531bc0b259d5507ccb3787874c21de79130a4d616e542c6e83044bc10ffbc44e2978820036006ac14fc2f3be83e410e7a75fda375649a60473cf58cdfd8b6a78e1cadb52111e47036665d36081053183c26c87d1f26769c655cd830bc0316de2159244200003fc66eec40749817f4b40ead7dc1fd2fc30bfff6405df5664aa1d177a92f9532f6acdc69d120cc56898c5d6dce9ca42ab3c5b6ae2cdc957e06cf52c6d5fd21ac958e03fda9ec6c5c8759d5bd1adb42509149dbdbb7d5be476bfde4aeb71eb53f870750ecfbdb3bd14b5eb4cbbc3e49e609f8ecbe60410933ea7d5708aa4141f8d0b93d66120cb2277a74501832b721a1d2574184b94e9f59ce82e11af76eb552c81af875874cadd4890005aef2bf9b3217bb719a861a36b567e17baefc9f21160fe108665619bcd5525b218d191993883a7eda516a338d74d9a4796524d6b2be5aa19e06363b9a42f797320e4f46278e3f44d4c6fbba7d4f48e88de3638472ace2ca0776fcc6f46c97f197bb379b66d6ebbe782d1a83cddbffb7e309b516c6aea92ba60eba2dfb097a43fe435923b098d48beefec95a5257a5aef2ea47c49495c8b11f33ddb7054332f6b77b466f6f1f5bb8dac3eb483b273556ae26840fa5b288523686b472474d48e1c2912dda7a73b37bacb00ef7de51c9c7c03ff2f336c559e235980b17f14ef30f5f56e524443607afe6982cc1c11f77f1a62906fac47d08a3c7456a4c7296613441000d9d7570bdcb70cce8b2b73454a9afdfc9d431271874a1889146776c47d23805b082c3f0c7b7a9fb8771e1847e08c9057126e59dfade9adb9980e307930006e5ff236637972157e34ad2773071b12d6e40bf0680133ba636bd47d7cb03c25a638a7c4139a7fc9963cbd62f0c6d7999fa96099395f8f35cdc8e9c46942f8e824edd146acaee99b21783cd5a5d32bdc7b1a904606b03493efd9a84d7d52e01fc31206b660240560c2af86db3d95469829cf730e28d4a8df3331f275a7db6b1209a9dba31c32843665edfd4666b659e04a486e24002d7ce2b051907ab1d2f2a9b8c7f7cfc5444489521f725ed75e2bbb61d89f7a3e536324187f1df4130ae1cb26d93e749aff075328e210961c3a5c55af32b3c241b7de3c5e43e0c3f6e374eb1ef3efb43ad636fb51b7d5bc5c677e751ecb6f5f5e046eab69839618a6023a899f1dca4a273f6b3ca8c5122ef1711aabea132089133c99cd05be1ecdcac07d8f38afedd593c03270fa3235ca0264a13aafca8dd95796341a74fb1d805883bb02c9d5ffb0de1f288a9e504afc7a32ab384855b8343cebbe99780df4324b220bf7f9e356705b3b9739411d02924475b9de5da9153e4518a4c54121f79ef3ff9430b0803ec18e660b1955824cf8e2c6256e400714a2570f69e155568e774f015c96653b784171ea87aaebfa617ecd10dce4bc7841c3323ed6012c4a38a801fea7045ab478b2740a23b043be6e29836492e03a877ec21cd17d2e738841d48ab3a5f1a72cc6a00a3d7008154f45125915e7c41876aa4e1d88c3b799afb34f510b66679913f516141ce2be8c5b71dde867b01619a64da36199a020be8897de2b704ea204de19316715b54d28b174cf3340d7b2968be2fd20e055e729cab491f2c0fd14aeb19d42ea0cfd20f7bf1a5bf5e8711810601c5243ac110929cfa9363f80b339cba688fbe8dd9b98f573c8b230088a98d07f854f06763f050ea90285421fc6e163aadddec8a1c30df5241c383370a48784c97bf15f73ebf34a21680bda251ac869a5b82455abfc3c2a85e35bf2e869ee453b724d459744e0b152b7fdb405fa23f0a5e38b9019e0ad26744d99f9fb7208c80ebd615aee1bffcf46184c8b5ccc66b866a84d2264550e0b8772d0ffcce70ba43fc7ce2dc701839ff0023540e6c16f5fd5e1fc4c800dd3b25355e08ff10a04d48256cf2a68362ed76775bba806d51abdd454935008659668cee209aa0d5e777fb122fd60bab4af0bf3cc9e5fd667962c5ae1d667a0ae52f5b8ed954f584cc1280f3dca38ec1712f39abe2739519922d7fcbd849eb58f11dd16a6f99cdc76aeb58bc6e053db7cc96a640908405d9b2593f165caa066c2b563f0093841b605151aaafbf75e007c3e6547c128576e17e25a59050ad4bd3b20093c5bd735c8152fdd26a265531c48dc0de3a1ff300e2bb5b2147b8e83abc1beb4ab812c2c41cb9e73b395b80c660432d15f9a358c2364e64e0830349b1c036f3735798f72c5b35280ad7b48507ecfec54e271182b526d26210d08c184288df7d6916d50d3660101e8788b892ce76e3c16ea9c186ef8926408d3745667e4282511dc89b19d8c436bbf6deba91b6dd28ad363037575d27245f131eef3e80f0c873218fa4c9fd12a02a352a5d336084c8ad3d45bdb25839387f94d9d6e8375930ed22faefe5d2935a7f36ab1943ae9ab8e792347efa461d585b9c4fc3f7598f5663a4bffafa825dcd337c036d257a0b81af1ea037feaa2bd0cf89592a315b887ffc6ee3ed75186647ed1f1a6cb4395f1b91f82db302089dee03aa04a76632fe6cabf6d01cec552e44c53f313bd21ca50c9b30d6306229b46843ba0007c956089332f43f43b07612074f28d80a82bb652c8e2c6e6366938fec64ebaceffa7555495e02ca68f3dbe0190267ffab46348690121628f246ba42bc2b1b7bcc287a1750886d7f75ed8c0df60b28d1767478b9cb5154604978ee23e87b5c1599d55a6802aa5b18ede45f94dd7058fa5c8517fbef04113dac6bb95c758f985683fda0a0ecb493e13ea6828605f96c260833d6343f755d86a1d6ef148f8c6f4f2a8d9ed97dc6d6f12da5920659066fb31e7571b401a5562c7821beb523f57cd0a8a16fa027e98f79b91a7e901549ee47e7e2bdd5f62fa103053af44ef73d44b67b7e9d87180dea0abff051a013a32bcffdb5f20d06a1a91808eab6d0dabb5f43514272d9f49c5cbc8b5a807734ed47c2a4e382f1b05e1bf5b49b329eb1ef795959e514173521a642f8e550ddd9a7bd3bf76588b2f33a631cccbcc088305ffbc550499a2b27f86fe05654fb934cb6bf4504c4616052a6b04f55729e482f1f299e7fe12d96b2170d9bfa293441ecf0c78939738bc9e268e442d3e647f7778d51d6b1ee6dc49aff191953c80f5f4cc5753fe3640cbc7d95f8063f73f77c18dfe7886a1d1bc9fbd4ad7fd5f915ec03757d6c271348091036c4901cd60bc5a5655f2bec265acd30d3eca8e9ce1bfb024b545848a2cd20c2bc311390d54e19cd2f91d8a50a1b1ec9dd831a76ced71b37230ede51557083e9f389e782951b7afbb93fb042897fab928b5369062e3455622989689845dba26b72a78faa576cd21e308748f71229e68b2ed8e02d2547d0db17a703372520b3e44d7fc5c70e3011dbc8adee49935dceb5356669aa36bf772acfe1f0aa563ba31b75f502a1b54eb42f5b0d31d3880077af0cb6de9f9fb69bcb145a56bc93956996889ad9de099b00a0c086df018402ed8044ce9d4909d1bf02e134abafb5c522bef136b00710bb0fc2ce1d82687abc6c8ecdc8fd3216fc9b4cd33cf016c30db86b970fd6d97bd4c524bcef55e998bd000babb2d3f6690b6ecf813ab70ac25c3befedbb4ccf253b366aa8ab0860f3f4e235fb19fb97a635e140c5599ac0063ccf91c60babfaa5706b822a16e5af06d5a4e7d0ac459ac8557e6efca91f61e3639c6f6b29fa57a10aba887e2838496a92ba001aa0ece31a9aeb1d62f0d07323099bce41239aac56b325797a7ddf5af8863bee84d035743858aadd78d6a93564c33801df27563854f914d7cfa5cfbc93cbe340ee93f4dcd10c9af83c1a994651163efee4e3f40ef312bad2d2b3552144c38a17ba361a7c9175d800f424c645a242495f510ec5e6498dd8028684be31c98a0b8af14b200c5bf90bb8ab73aad391a55f06a78b19dc3a6b4e399077d4eb5ec5561059c9ca5553fedba13b4c1ba8b0aad6956f2c355f54a6b09dcf32add2cba33e1742252a54757a1878f6bae4858136547007d60d7294a29b6eda115eb3e2d79e94d17bb2790e2afc1be91d822bd29144d7522560f993fa1826605106b9707d37c03ae3b5541ee7dca97c2d28b2b34a9bc1e6e9039ecd79900ceb929330dabeabfb6621eb8cc7f78e51ad15c87f056cd49733d4fb1a3cd318b63c4f2fbfc8616ffe9c1237988ab7e5c5042aa7c315ac174ec31b64954659f0aae281ccfb27e139db90da6f6c1fe74a2a6dfbd696e5cfe2b8a68cd4e6e7464982084caa99b7635399827faa515123050200c63317b1f54b36297014ac2678bd97f65357673b075867574420b681883107e68a8d7b305cb52cc5b796783179f1f3f6466f04ae871ad0e7c4bbb4af349bffdd6cb86b12afe8c49ff85fbbfb21ef913b885319e2a008c15f47e1eab6db7a98732b578ed0d4a19b772801dc4a48c6397c01186f7e5e1943a08d87b20efa4dc993dd50b0015005626786ceee2d2836723c95d41034712448695ece27e537d9cfd5809fa642ef428052d0aa868b8c2f01790f6a0d22f7b9ed117439b4c1e724c24d28192ec223c5d84ba955cc32f764c1db76a0a6ede2a8c42a985f2301bfaf3fa364789d21a0f3632684d583d25d19a5092d7dfd9b7637a0052a57a19913d40a191770c1c15dd970ef46cd384cbe46439a70764de75115f981921d4020269336c57b365a61f09bf52b230e0993cd2adb688a92720709180f8af16e9511b7373ba10ad3f0b57e813e3a6300c278145db91b64bc0957929dfe87b944456618e98baa4bee570622e030ebf42b6c1f02fdd79f8bad2bd689661b1443f2530d5d9ece267f6fc8534cca8624828221eff61e8a429fda6e00b127cd9ef84f25919cffd5c6ed70c2846f4ff6a1ce0bb3bb077fce56dfb656208a865e783104a2bdf8e28b9f9e48eb05d7dd9e88db6c6edf03d69a5a133cc5ba86e0198a2f5df235a679707fd4c295e61ea8bb6a368e8ed496d46a950ece23d1dc8a210867ccecee94288dcce8ba203703e153cd0cd98aaaf0ae083b2f09d4560e4251d323c96bb2b50a2c38a8c13bf63bce4e3a3bd19cacb353d2b4269007266cbe8fe26ad2187954adddadc8282e3237a3aea4b23ae6d477bd79ff9e12bd745ccf63c6d722301cdd77fbb1ef027770987d028b34d5bee4f0aa3601a5a89adc064152818393a98abbc6a80d8457ebc3dd000893b6ef9cee6c1f4f2035d9d8a9034edf8479508dee22f87d8655aeb6268a2b5e80b917d3cc9551553fa2c05e1c79fc99203f53f63a2574ed7ac821dee4c3780122cd0fa5c5cdb23047f37cf7487353f62f87f104b0138da5160da818a08ce51542144fc6cd131a08a50a51d31072e83c692db5fade7ae539f26a010d131683e841513c524f4d06413746f51755af6e857473f2942b45e8c1993560c5d02bf5430664b3f0c87cc2246175a86ae70b57e0c0d445bf6cfa031997d53fe0629572a495780c01208287d0449d1dd8d2529f058d734631b0f4145faccd0ae782dd179e74c377bd87921d594fc52f07d2460f73dc9eed44aa63467646251164318e60f262258b5143465ee2dccc42d60e80cf4838e37c75bdf8c6a6a5c53e0766ab1217fbd20834eeb12e41d1e4bb284ec3c0826d5991a21141de1193430eb445595bdc04bfd9648d9cce3e64a233964d0468fbc95504c765bd9e19197ce375f6c2c90632a35dc494da5bfbcae519d83e32b09bbcf24569919b1265336f05f7542dca582317202bc89d47972ffcfa4393603811843c273b3b607e156f7ec9f3a73d11051de15642c6156da5747739badd0cf26845d91ddd20e64a06cc2c25d723e5894a2c6cf32a4f74752d4ef43c1328b87b09b1790f0a0b34098a2cb912a5e3b767fc52b2c78627807c7a954d24b1e44f87c7466df9b8de058e953468ab7213c229861b49cf281eed7b79395c5d7c5d109e36ce6f4e1cf808e7c1716236c7d608b12185db21012af8f3ac9ee5f5c0a7369afde44a9c8c8e3437b89f948dced52b6126410a3988e6239f30bff4f84923f6f6508918579c3cdd1e02603204d875a02741326733ea8bc4b49f36b640ca80504187d1dd1809ea52b271867c3f0ab3190183b37cc06f47b28d3ab24d3a8ceacf54db166e467af49fc6db96cc6c8892737077cf27c80b7f8725b89466af4fda691266b22973df2e3bae1085eba13c70450c87db4076034d1f77c089133c8dd1131c66fca8663fb7539d4840fb2bc00701ef358020249a90a4e865dad290c9c617dc484947cf0cd0b18860d782ebb1069c9613b09ce22e184cede580b0963ad7c93280ab5bd2c26958e8a1edfd40ee81dd07d751fe861ad59c92a83d6003553bc0ffb563e0c6758ab22a7dc24a6d5b802d452415898647afc575d84e69a5cc40c7bbca11a581774a92d5c8d05495e2304cd88765980afdad07c42b4da2515ae0a277faa5b15b1a14c11fcd1ab2c851b03b3e9c2a4f7b7ee42614ee6bd33312330621682fc1c8fef387a5aa84748694f2f4d10296e93d72f13672d9d77abf4a14d6bf20999e0227604ebe38eef33f1a372544b3cc1b34e74f6891aed09f866338eb44dd2a4d09aaae1a172524d3757ba3f2ebf004f963cb40a2ed2ca8525761c2a206c5f6c9a3c6eb6e10bc95a7f56ef05aaa04b3720f20ad7bb5196883612e4cace012fe4048a52bcff823b4aaad0e042ba6dce9626f32e25d4e1b2b6774514caa72366b39e3022fef3d1f73937aa44516f1a0e48dbea35e8110b90bbfeb208e46b268a214d3ab4e1e4446b6978738018fa5520bdc2f875259b76b09b60efdf6ce37daa2446c9c3a983b8411a40784f1f22b6f88077fe77d077484b89646836f5bc406c9b6f4741ab615cf31ad317642f3aabb5e7db51b643cb07990fcb9557f7841c3e94e12449aac310468bb385f43ee759be6773a5d47a79a8917f99e1cb43e90b9dcc4a5ea3738b565c367c9b346459676a9a68e78b3d2205f53b74cfdb91b08dcbb24203e248bb51c1d14bd4d621a18ed087e8b2625c1305368ac36c87802eaf3a2f2aa16950153d952493658a701e0a255b62b6f3a3031927aca7d9c30600d5a7ec58e748f7e160a52922055e0a1dc00268b3b47809a5ef5f6b07765e467043519f86112b4ee5a44dce9e94aa4463e11e2f29ce40453b01632311e2dea0700fba4f1287e17f97b2905b57e02637506d1913b1a78a2caf80fc70dc9d4e9556b705d6704820da880da40c0b77791174e7efa267264ed9380464c02b014b07aa1894b721a5a4072ce388d4688a5619f5183085591be2b7502d831f6a7c2781f59b7b986a103456dc80531968054a6df7a432cb76b1bc8f49c4922eb3da39377296badef72750286d87e3c4bfa15403a1d61fe7945e91c032d9fc9946a59d9f1d4df2cb3d55ffc83a9452acad8102444bb56a05f76d6a29afc87d90f80c627180b6fcfc7b316b127f55364e97f0cc61c5146892197e463da35b9e75e47f2770841a6149725e698ebc6200ebcfba26197871fa5a38a6ccc31934b0499eb1c61a862a1f1cd3efe68714d8de0f2a15fa3e31afcd642f73d04968a43d0358c8341a0e6f73c357de17930ede134bf7a4b61a5b1100824a20a914555bca824fafb026336228fee51da712c5639d4315943f2c3fc4d87d3aa5c11c35f63c0b836ddde3e3bd479e4536f1f320364b292baa6260fc00acf6e421280940e6a7dce6b19a95d2b5da9a875fe89855ff5c3dc378af346149ee961b9cdbf0c218a0d225a51d57fbe55cc1063b0a6d58720c4e31b105011818c6d761095802cc65b3e938edf296a18d91d707b731cd5d442991867085409d9df18ea02066642e65c66c9fbac62d15ea28812100a5ccc285359f111bfb6825ed126c6a7da3ad83d7712ecab742045a703bb5b9650adcca489b2a1464776a6550356df4b588182f43f380d0582184e6e9e033051752007734e2876527b92daec4947deb69fb35cb66ff7fe54d83815edce01683a830d42fa0e77391311a32847db5023bdd2bfcbfbde25332e480114e7b00b3270fbf01f03278337b97124e4ef362b4c203f68048e58c333c8e28f06ac9d59e5d0aa38672bcd446a316f446c3e1da34c58144d25ef661d385c5192035d44d0da7f64e76e022c1bf2368bb2942a2e7ff6ab3e5caff3245fde85b7063fc4379bcad8c09b25b571bb09c0473420f2ea362e18224baecc3c3db554cad7973a456a38ce9c99928a1dc16eedfca6a97172069366b4924a503ce910ee0d883526f1e345b727e18125e6960fba2732ef07e117dcc1f7892613283888583a4f2e9050d5ef35ab1514a8c31346305da310209ae76d76bd94f5d925484fc6279a8645f5e5a57b31e114dc42a43eee3186e23b18754e034009641ead0e06fcdab1434e170aaa776aba36bd4f733f16e3316096175ba4e3a1e79b0ad24a585046b98c1d371ddae18346e2af021c1620933552e4789c2cf49730c0778969b35afce49e1540c595be67748c9f216a386e87b299409fdf44cbf80df7a3906ea9ce45a6dc5eba43c2205acd5f249231469646c5e223f53594a351e74803b03382a2eeb2067b88a44b032d166ce10c41b8d373a4084e04953c0af1f23acea1bd8ef5f61dca4815a79cbd97ac6767b50e3aac59a67fed020852c28e4a2e30b2dcfc018143ffedba948c89460c25b020d7631aeac59ad1ae2d152504736da65315c30146e60ef6c68b91c628079242aa42fe2855a3f489a9c1205a6509f5c6560a24add6d7fb243b81e4feba931d69fd1f2234e3744d63a4f34eaf40b7fa056608cf95a2361efac2e63045fa35c36f524e0dc2b0a47482c9ffa929e5d2b0607e3cba44730dfc2fef23de8fe2df36d3b2ad0fa85e94ea113c90bc4c32a311ce4a1e1109291ba32610ff33b8b49ebf2fbbe55b6590f0ec73ae02c607c725d885ddf330b4e14b0d4ae519a188079893a54e8dbcf7c16058d643d8fd2a0172fec46fadcc14af9cdbd2fc9cac419e70f20af36331d510a2a328cdc22a37b1b06af5ea53ddb8a56381c83e2a532018631ba79e1c872c5930f102ea4c00f7d338ee97e1510c202368d4904b97ea9221b73b3372cebdf21326cc1d39a61b5361eb4e88598249250cd5430ba2970f9edab6ba1d7ba8fdf3e0a424d7b2f9796aa7585600812aef29f0116579e88e5899d3ed85f31cc7a1bc2355b6938f55867f9cf12d8e8803d676d743f483b7e5152ad9ce8879731ae755dac5d37b4f6f6f065b5b3bcf6a0aae85e934654a3d195d081b29a8e4651f98f9c1b0eafb64b454b91aeb0a2500be08aec91df0555444067db210e56e274bfc071ea2f34e14958780583933c1b76d9f7f983311471391d276ff410a00c6e0d1260ba64e8029d6fd8050bfa81c7981e137d74e468a692ff6cd40c48e211f6666a390a2c4fc7b15bce15d1fb3ec00ec3bb48026c3c285a7d0b351ac4f9ec70398cd450602f87d6a23c144fd49c2a14df5e01c9eb64e5cffc3721212c8f79121757e2bb385ec7f09ce58a5d8a296203545d7345acb91263752b3ca186a4b19c41d9e3854e8569b3bac6d25de149c63ad5dae51d8d053c4bdf18306368767769f893d3fd5e10416963a5afb9249f3b93d2be0ef6e9d2e81e26b70a69d1606889d46a1c7407959fdf39a548f2252c9775e2e0765600947103eb98049fad010e6f2ff8d06d26a2fc1e49201887d6dd9d82d2f1ac0d64a9b09e0cc42e7c3b68841601170e4323ecfcfb84a825e2924af8a946149d6e02b7ac16ec8e1cbc8b82b85f561f98665d1655b7049b4ec90356bd5d67e8d6a706a3fc9f86c8872302e7d92e276719305729c36b37ef2d4162fc89c161b43127a8f106b8e05af5ba01a41564ccf9c55e603c8e287b7ec68da1a6d1bdf918f96e60a160ad05bca419480cfe0f5783d13b4ae7a1897cb7d46eeee41fd44d1b30496ba818b9ffcddff521fb74ce5cd3b34f3148cdfab190af9d659a1d07f5c17cc3421e1b1c23d8ea3028903ace28e358d71c18f35b34d640fa8d049b1e53e6a8b2153505ed85516261b0c9d8e02e143de1226f3cda4125af3bf4e7428325e432e0181730ab04f0be35eee2edf060df193971ab2dddf00e9401d897cb12aa44ba654b0ea272309bcdff2175fe12bfc477342290ddf97f3167d16aa51934f299a6f570bef1b9e77f7f74b7c55b694c641d8c04a9018c97ffe3dec5a46c491723b36e29d93ef0f5926727b4caf33c0fb8d18432191cd740f30d53fecf084220c1c5ff9bd2b78bb7c5071855625ee8b552a2ce2a5139e2f0fda6ead2ac12c62631935baa68542e95a2653a861cfe14b054c5845a1438726417f6b9a0224ae2d75bdcaf70fca3ed63c51f2f56c2e1969fa5a024458d081ce7ca87a246fdd60490691669e7613d027269522d935a20f5bec18d0c03c21203b4f00c893d4b28e5d637601c4da41ef19cec7302928bedc90f6cdad0385ed9deee624862c8a5ffb59776da9eb8120ec187701b18cadcbfb81c038cd521b65e4f4fcfe066f45af73406fca9982e604db708d2fbb2f7ea28aa3d11e6a66ff663b40c6bd6f84e01b5f02d548b11d0c0e312f7ec9048609da939bd5089b42361a2914d6a50e6c090f1edf81e5ee2de448aa3003c5145af4e1433d95d501e69a51536149722fd2959d6f08169acf131d04fd0762987ca97f5d482600fca8a52d20d4ce2f0ca529784b78878d7927ea6fe370d6d57c3ab3b783a36779ccbaf45112e9795469abfe05f060422f198583dbc5f0b6b2542e01edcacc663d46c8b26143cabc2f10bacafca7a05d98d0207894e79c8db5a6506250c54f1beb253f157806fb06b301cd817640eea6efa2a92f4d99cd22aaaf9782edf3349e5b9373006fd668a95549b191a4c59479e30e0121dac4b1712e3df0e6d944be9ca7013b35ce0dc8bef7865d8a77a99e5fa6064cb27471d917873ac81a0730268fd6fe4593e38d12d86b546905be57738705d7427c5e2a8a727d863bf4218bc98b038f0660d786d46bdc7da957cf367ba8299a7ee6741f32ccca340e9ecea320559b5c7163f782c3f74e274b32fb6ba2532045219195cd7af7deba87efac0875b891f976a1cfb3041269d360858ece667de7fb3a5ac439575cddb7ef314a473944ee5b6873b4789fb76bcf9291e53635b01f2e88fee3c205b416c4775ab71e684b3fe638f4fc185c8ee341eaa030d7d76909ea34abd9d605f047f4ebc2d35733d643fe86d254f3b677d4fac6ca7259c854b6c1393ea02995388039b7f4e4bae8d94ddc9f81866eca1bb2537daa9bee84fd44bdd3e5d44fda623fe17899e8f7ccf87cf616511d21fa1f577a04ce6e048bfb31ca74e39515e06d64f73504c2304253b85eaa85d361a189a9b3bbf50369ea35edd4bbebe679a5f8afb243f2d407852754663be435d5b7adb00a1f77f10998453cec2699c2f3e6cab8b2067d5e67c132274349530c05603f37c410f7e87b570fbeec91fd1b533155f064364fe1c7492c7b3786b1309d2697d67f0c777277d3edc8b6b3ff61bfe57b4dc099b7fed74da02401fdb0235503c8082f3cff41fa0a2a3521ff605649c7dab4872171807d7c7474be2ec271f0d04d11c1ef23d88ad220ea9303e207edd5fdfef52ad5e825be5576c734337c2810e753ef790fb110b6064062c3927c32ec3134c58e857f62a2be862d31f3052a80519d2316162e2e43719cc5cd70b815ebcdff8b2c3d24a27a2512b182471dd87ebd1c598239725e02be4127f2451be9cbbaeb78a407038ffe227ba11832962f1bf7851ff08d13c3f352ff798d47dcc8c5f00bd97d82b5359aecf67c7713e9c7b5b0b8b5d57ced610033c6cb8b4d1ab0a85b421e8780ad2fc18cb828a2751ea89828bf181fe45e4230af8ab3c38c6ee781edacac3c6d260153f8ba5175b2bfaa70cb87954bbc68c3010f94d57d058a11e8d6e656782f2249183831532c541679de882c1bacf1b40b29364453d0e4addbccca87d32acbb02645f954931d5460095844e429c6e04cb5a0aed3921fdb7d13365127c7bf782922aa5f553119326501f2d3b52c082a0dab93d3771f27df0f0569b201f6fe333802448990a988372777eb6495ab820fd5a3dd24519521571d43fcee966dea1160f41c003e874492738ba84f787cdd85f622c1c76ad6da9b2a6855d48ba987b68631ad2165ac17e712db6b21a43fd6c3cf0a46f633e791541c3f5b6ecab94b53e22b500fd91673f0e6f410c8701c76a82c8db46f378bcd8cf45e8c44c52ca5c98b49a3e3595fde71c6d9c3d9daf1d283d608427951f9a86a19e27c1406a8a96f8d0d5387b9957694e223ac8ad8ba43fdfc320dfdcdc851fa5cf13a32e344352893ae7b550bca58c12f7b31a288e1c331719dcd724499a817cbff299e0a71f24ce38d74a57b9278238a4ca32295cbea129b91074dcfa4aa6639af04984eba2cbdf3cfcf5eaaf10fe25ee3c2f6bd3f1e87e1eebdb73924bda35a402349292d7146e3e7c702905943211d48144b1a6130fef2ebb2832e7273173058769c724f4bc57110ec0191e614b5e5a7f84dd02f3cffce0861ece9c1e5c990444bbf4d94204a570c09eeb6e92e2407b1c53554c7a3edf8c2d39589fa2748ab1ba2ff7d3ff2150297eeee92545af1e578b37579fadacdfc227941ad8ad873d12fe1952d6b313ac7f11bdb96b158d3487482358127c86ac9e0dd12efc099155af291f339e10d128558d0b540d05872ddb296b74c79c5f1dc75ad227fd5d9d46d4cbd92823d87e9be819d9fa30e6e41da6043cb629e67a4737734e4baf57aa740c28b7b4057db109c6266a6131eb8460debcfec2cf0ca480fcdfe74fa4a24acac741f3cf9390318e7a80122b8ccfe24aee0a530bb6f2ec4006364f5c3aa767d0a7aa122dbfd4d8bc807a71617842034151e51cefcbcd326b8a71682b971bf70d10c19f66c852b8ff86d42df71b137b04e05ed24c6cb1a5f58da79cbb4d3f6be7130210ff641ceea65a8202fe927dfe2f79bdb205af589e9f29959f254b66052991345e6369e1a164d4f12cf7248818690cbd2d230720ca2e355989b834f1a7d2b55bae5bef597c480f5b95c62ef3d957488113ffa23f3e00d0e5d87c048b645d83b390da3bee17c5f1668899115901520484888d919b0d7e1918d2e16a720325eb93c9b7c51ad6ca8c5d2d880b844b6acef57963cc249f558a61f87b0fb0c68e878407ada8c3c67d5add7074d8b896017be763266442500e2f33cd76bf772b084eefc4c92ebbc379a24481954dd8965a155e31db0a2054a7911c0b7f4ce76b3cc6c29a0b3fab3b53e6d0b113e675d045fdb43101e458d127e9284e68b1334889b19cd0d01272a0917b56075fc8c3e844d868a822b4ce6c16e096d33636f0f65584d31ce4dac89d90f7512d4ed7675a7034bf7856f7033dc277539ac9e5b5b37d7c2268aa17ca90fd379b7cb128b98c3ac46eb28ab4fe768bfbed60a55d55fdbf8af488453df99ac5e43b6c15044d220945cade9c84f7d04ceaedce5dd45981e820f0726b8ca8b99171d13499fa14b00e64f619606e0e65369f2e21601ac153c6f533e3156a07e0019352e36a9556cd1dabdea4d84f228f3641ac9f6eec41de38aac2cb6bdba775df6d5b85f70d48ec518c733ede6317b05dca69595f216d2910430876d3c025638c95815575d8c5912258817121c5c42054f34178053c8951ebdf86452c3e08073c59dd8200bff66d32557012f1cdf1bfce1965203bd93f87995cd041fca08ed6b718e547f9419c135e4b43b2b842b18daaa952dabd5b92a4f98e50dd7ce4a7bd4d90c3af043b7e6938ff94f9b7a5da97a774184a6b01baf29c5ff4551d490131b5a9ce18270898ab73e8fa681ce65a5555009ab959df6c0e0e2f1f646a4391ea36382494fff98eac7276e52ed7d2185f151539de7f7df6ff7512358352356b3e48ec0ce7164596ce4ed8bb5023b0826dd0e02eeee2601e8e6a42f5ecb4aa307103765cb7284f911635c703dc35378fd7bea6c22bc4f5b76c74524823adef48f170cced4aee46936550335f30341c63041d50c34fc45af7668a98998ab081c1c820978578ba482f46513ffe6a0e0160da6b8dbda1d3d42aad9b4165e5efd236a4516425f821585756540d24c02eb928f5a3d8e2586305624480572b89918b7e15bd99d06ec02122654b30897bfcfa70c49c0dc9299171c282464a965c9a5efa52ab4e73fa89c0861b063196c18d413537997113ab9ebe5569c76f50afe5609b6a9b047f9ec07c4b9c40bfdd68ea09976bb0b940c9863b728bcc1d18ad1654be56672a74fa7051bb6c3d027d8b25921aa0badbed87e48318748a93e6dbb75c9baa261a730d7f2739692eea4ca2c4ca2b2822558fae5affb016e1b6d5b28fbd98b9c2873ffc55f5335c7236b054de270dfac058dae65bb3dbf3ce66c9601781080e288c6c222c37bd545c42ee674f929c4b09e61401986d4a9a2df0aedd51c4492828e07e2b89e00cc3222cef326b28445abbc762f4bbf2ee802773f4585ff41364e0ee40dc66ad5fd53893e3c8561277010f43a9697dfdb81c177cfcaa0f2922328288737b30d611053f9a087f993ffb21a5acc962eddc90abc6b1b09ca33ed6e63afc95e314297af52cbeab7d90f0f69426b0dc2053a75780f2c7505191a1bd371f2d7add2bfb74d069e7c9b7297f81830d917069b5294e5a1c0829a09c8ff466a2c879e7c25396d166847b7eb5722d235f34c1bbbd23c86b2dcb783ced37ab090847f8622296e9d7316816c6357ce974ffab07fed7f8381f185083df4a99a36a2ebbe0ead2fec5980143e8eed43a0dc1f685030cd83d3355b8f9e71bab79e8c64f3c46c438ca12db06424e1534cb5dd2686241401faf2b00cfc997c6d00796e1bca7f10ac7b6b01a33a88ebcd155023e022685df219bb4847e5d0ed8e13e7b8cf33abf69d3bac2ff577aee6d0bee56179ca4f3ddcc04dc060a6e4026a4cc6c54b6ae446ec9d547f704870b2d974873fe20e2aea087069e1cb77da4ec274e0458cccc4ca36a8d019660f2d6979a550f5d19ef2453f5ba9923ab51ceb25e691dd15b475c8647ad29ce1b313bea89b305404772da20c878542d7ca4c5a6c06b990e28c63034bce94778350d09ccb3293ccb3394975569e49775029e0e54945650961d230084881aca611b81bf794810ee5d4044d894d9e37fb5c44e6e13fef27360d042cd32129570383f439753a2a64f1fa19d26831da4eb1c41870d113a2b8c8eaf34033e5f191d3301798e1d9d1646ef12aa12857a976942a53aa1208f2f4e52c2db3bd751ba55bd1f84e352f1d7da3dddf9ff29198f7dc97653c9139f96db4bbfb2cd9e6c5c6da1590f982b616f924a35740199df651e40f4d93edb0d4150d3bd276d852d2483bc73233d3e43882ab7c6abb95f06a60b417a8908d83039c91144bcbc49e250eb7223b8bfe186123eaf3a33d9a469b4949b741b93ffd76b21dba5fa690409de00042e26e1c9373441dce3071b74ed4f7b9a31f82d68a1b6bf9fceaa2bd6e3cf1df00afaa8c01ead41f33746c9bf19309ed74b6f1e23ecfd40157aa0a5e4112c176e64c448dc13ae2ad918525262bbdf09580baff4af59164cb2d70a64aee47b85fd515031a991cdff00f86bdcee99652db505f86f0091567db03fefbd5fb578a7442790bc7e7de479ce9ea01e4591c6f1458e496594c62d3d3d0cdf1d546a7446c41299d008a0e0466d9933b54c70f0ddbac84755c8ece66116e6ed626bb49b953a272934c36a47eb0df0afadecad0ab1bed15cf56d09812c5f32dfc78cd7fa529d334ae77992e3524103b75ee610bad40e3db7cd0c29660dc0a70bcfd11094ccc4424bef1ea9cdafde7b1924928a15dfc3e81be89782cb838b6305d1a2388c230b40ca6c376c3e37179fcd8f44dcf0fc354e275bb79ad7ae1138a394453924314a634c47d936e3e10a8cb98f39e9eeb7a944e54f0f4b1c90bdc482ebb2419a2654314f6ddaab67eedc2e2df9eb0ab03c4fa933c6e87430d7413ad3df443c718a370fc7393fe0a1ac258c9923cf2233d75425fc5c2744a278fffe9114ae44c19fa235f1215060122eacf833cba92c628cfa22d27df5373c2e9327619d2cc4a1a58818e68477da007905d40db16fc2fc3e110d4bc6a2f5185837f01b53a5771049d6104315c681a07315211fdd2005b1b1027fb1576283abe163da73bdc37904104645aaf40bbd764df3577b4bd5d3084d39c85c8e663e9e98760697d3ecf6f996e3046167c32779190d1cf8490734d40c1407ecedf70dff0b3de0534a642f568c8462bd03a6ba11d7f01668cea6077708eea70fe2cfb366b53f1691a39d228282280f47b24685d5c9b9ae9e90cb3beed4d894b7d8d3027d79d018171e631c28d4ca1c1a1e912b1daa58068a3fe8b5d9afc713f87c9a9f61c3fad79458b68d46ec4105d591fa319e2eec07cec8df63e4c6897ee124153ac2c0cf1086b2300cc1ecc7132aac03b59937f1382dc86d78fad04362bba42873d4592abb7549bee0c4d9ba42f04b54856849188ac6ef84a17613f85085905658c76913b510d127a4a5d2b867268b5fea94f0f5d86fb602a4827c15195e739552b371edcfd6ee001a0205a2524495171f2f7001291af4c5acc5ecd5e4c4b34f0987afa1cfe09c27c3edadeb71898c2bfecde618cb738e7af9d4d7dd288603078935a8897a5ed79baf93f0ea6e1c4f7a3fed6decff3279753f05bf9b965f4a8830c01619b7e992f1dc4508624f5f5d0a6b5a0591981a7fd70ad27a732fe22c2407e4ff4c856ebd69c3e1f6fe252b0493fff33f0f713f7636269b7f9dc3cbd521aad9505898969537cc8081ac56b464e6d0a1673ae2221de83d47e0b9429ec4bd8e1e3d4ae88e808548788cfd6fdabf344804fe75662b03631e1e40d89af3134680fde79dd7809987ae3a66c332df7241e197c7011ce0cbc3ec344d0259856f7eb8789e7065e6b185fba6e353143bf769736c86a00d32b0ecb507aa6fd767cf465a3cf9783ae53a5d0e4cd2cf03d5ae16d7c0ea3115744fba0e4adeeccaa81580b68f5afea42a330c62a91e051b5355bb3eab0262b8f02722e564888e6cd4ad0be0568b1281b80b057ef076a556cb1ae3409becf6e8547f953e5d6b5631b4d6739d169f31fd5c1d6db06659020359993e652b0fb9d97100d9cebf46da4a5c0fc963c0d1e4cacae0dd1a1dcb71485e8377ae6b8e03ca059b77d465f227eb4d3a3cd92d7dc92053ac3bdad907706e083aa234d6fb5823d6a29c327c563d7904e19566819e2ea6954fb0bdb706bc6a73e07e40aca83eb7ce98ef173a798af789ae12588f4b9b1b17f8ea829378190bf2b1050310e6831e142511fe9c31880df399f9a0a258a1b59aff01c75d93ae11892a2f344af41374e0e8fbb529779d113c01cf886de2a7180157227a11abb22507d396d5dac1474bf1aaa59ccfdb9fc308db145c885de440174aaa1b76f77b2fbe394cd65dadbdf6c0930b3bacee9e6c8369059bc4e656db04db9dc3a36dac7108f59fbf31bd0a062e37f18abc75cdfc9acc76427ed2f8eacb6edf89c928ba732feca5e2b8bab236272440d37b580d09cb2e049188104d2b49795eac6c8b1c3d10cd1b03f6c06acdad375c79b2b797f63d1cfc9e650e04d59a8a7a2ad070711694a52e239a9429faf6190ef04d87ac9983223bb9040aa10a63551d1c9000ba0dff9368bae17f6e7f805b9833372ee01ac372615996f74b318e43d52c86c890131a769e0541528082003bfcd4186405785c2694b7f0537bbb73be0c5c4591932e53411bd5c46407cff0f8cd27005030bd245d5a26f1051ffec87a7d41b267d863cb3a19229f257074e343a06b2ff4d77b3b32a86f251fd57d0502ebb89ace5e50257cbd7b0d4b8207a52a650380e70e6795707ade196fbf7eaae983cec085694eb5966452938f7df64463af115a6f67e6cce2395899070d49899acbbf5507ba31c10bdb4c410aa9acd4670033dbcd63895453564691af042beb3bfded7f02b664f677e3d09126f4632d1a8d99f5d1ba449eec5361bb772f9f15757c8a42d06d069a336028f99b437dc18d62b9c5a9f17b4ca72583c99f12ec62708dd99542cb4df1e6653c2b2ec81b24d0c5fe9785c79a89b8860234ab9e5ca8198521b1defb60a9cd46fa3fa04fe6fbf03657769b0579b9037fc1fa4cb406538df8a64efbea43a468b74cb1f7abff7b7f81cef0101146abc852fb4077d6971f10c758585bed37246aae4d5a44fdbe7dfb21beee02d73a624b850c1b24c08fd56bbc6e4e8977617e6b2ac56363a76f316fb537bf8b0cd949b3a92ce0fcaa1c838e98369165af04c71e479571bbca6ed86517efb57ddf4a488170e4a399f19074c3e2401c214d06679234b9bd5a31ca3345b893a8249c6710599ee7508b015638bb1566be80b64c90ad62385dca9b0c226a36b0e4ef541959b4a0bb31442ae5c7d880218bb96651cd9d74ee218e9a6654218cf5d206312bc20afb287f2499963c90925e9b73bc4b8c5d77024d4729664e6cbafcadd0c193eac3365129b867d4bf7bdb8ecc086b051c8f89594381af1b14ad2da6100da53f30086019efd305c1508871c9d2b2414549f67468dc5363521218abf625e4ebbdebadc5f5ea9379b2bb31088a54f1d10275fce9db5b1cdffd13c713e7559e808d329ce6e08c70b4252f7d76efe0e34f06d118613cf38e4b373623ef2b8c210712f9030577a39621499c62cff53479ee20657fd5c6f7167c8869cc0218574268059d1029f61963e39190b3f48b4527c335611cfcfaba37bcd6e4e9707d8d05d10e7519713d650c316d6a0d934da8b069510cf989e39814a860678018f10d360dab6ad706ddf1460b90dc358c57a93d380ab188a0c6779533d2259041c4e94ff9c127bf83f96c68982f0c514fce0e6dcb72e977b1676bd99dbf260af5e6fe117bce4dd1bd1cd37fa830f76108198865d71a7f0dfbfb3ab7269adb54c4b9d20067cfa1ef02170bf532378738fadbca25740633112214519289d733aa1ae04ce964f21d426d81e29852ad491fd24c6c94b42d9536672e18eccf484df876dd3c85b1007e02ab6f3a424047eb9686fe4f64612ee8f2af59f13c7ad392787afe0d73e0296cd5176c37d19645dc548084c0ea5e0028a85dc6a6d1dd101b8a9e1af7aea0a42b4a3bea6f5dbe2ccb8eaa8ef4cbf9403d76c083487203ce936ea29e1b1a05be23ee2c66abc0479eaa4481eef6fca510f5635e5c8b06844e0ce47504c37497f22d471fb488cd61101cd2017a611d1529e621d998e1307b2a6aae615bf0ad640417d51ef397d19906f01a4453a7a0b13b2ec79da1d9a3cb7be43b5adb0bbdfe69e5b0b142d0c9c6cb39eb3df1af64f001ce64b8c54e566710184a29ffd207c40976ea2d0e72380160e22e760fc8d5ca0d98968a8cda6f237a90a7641c199b0d6ce65ce6ced928d62164a7a9a8c5d1a14fe245b38d1b2d2821a4d232c5be5be690593978c71364cfd84604d44b51c1764d25847e8c7e9506caf13c7bbe2d217d6099c2c91dca5c564bffdeb7a75ae2d542c9bac7d2622b8552ee4bce88f6dabd392e0b1df6b3389fc963448de44c530b176ae9273c35e17485b5c219bd7a617c43d8e176dd1dec6352541835b844091968fc93fa5bc28e10e6e48dc396faa76fac0e08d9560b66d0186166d5056c9ff865d06cdf6304f28454191e0da7e88783d3f570c5f17623fc004634b86f7d99470cd74384c26add0942054b883697f03535fff4dc34bc2ab1d0a4535e964bc7260c87f1e323b2ecd8c06a8de6d4cf4b5741fccfdc4c75664cd9e33be6fe6aa24b518508c1463299283b10a2f40ecd8456b45548d7221dfad1297a435cc4112dcb3459bf09d30470b387d7b978f5be533f9cda247e65445dc31a02a3b33c16599065431bf9430db95d074ba2a6119b0509de831d8b736859ea4f1cefc1077e2ba56d14f064c291d903b3766af71e5d848e794c2b0474afdb0c2172bb6fa5d4641260360a55a26c59bd01c066c1a20473b852dbecbf109ac5148fd706ef11865deb47c533613f45ca8fb24cfc5f8a2742f9d91b520d75433d1f66f154c75c6da97d091d11cd9de8489a24ef43ea2cf664b8d301f1c25c22b8c375ebd5f79cd8407b466e8b637c750446e5fe4090df0bc10bbc5e931e5b9ffe1fc187e9152552f531599c8958f48cacc5d5372d252d6f77af6e6c5dceafb821875e65f8fb2d631ce659ea2de685c012aab48c6efef62f3346f5ab479afdabda44de1ef0947e70186427477cc31ea149b27dc1a81de08e4064c4d26a9dee03be900abf1cc7a040bc182b5b1fe0faae178ce022a6aca5cef71da6b1c298b3833f9a1e30a9e7340ff009264d9a60a6f85f1fb04a1d3bde1a6b317e640c890f092e0686c676631c60cf604416a92b9baeae2456975be01e88ca9d73b8851621f2ff5088b4aba3326576d539db3818a15297329d2e3d77de407ec8b7a566d68098c0d0db46882bf0cdb025651456233be2e6f04649fbe23199cba60f02beff622abb9eb0eab4cd8e2121e315f4bd68e23c344e7510788aac67f13c7899d17139e47fd0a24737cf73f60a5b7117cea38cd006ffa3792b121e29c2231237bab653013a7f88aae59a3ebb584416cb34ffa03ad79221ecf7febd868a055c723c656f82fb40a62231609e8db0e85bc73cc1c08559ae5553c5429776a2e1525ef03bc6892f6a926095be0ca5e0c064496b398c315c1dd17bac248b3484e2aea8aa6e3b36a6a49818da0d09f6d4565dc9aeacaa156d57e4a776b540f3aff87cb31f9fd3b9e147264eedaddd19735f65ba48b0b815248c634f99ce1172176a19be52bc45c56248328a7310ef92f5dc1a001d94e87fe7ddab5245a8bc5d0004d1c7c04432788508f7cedb41a19ce382046edd4324621ed6fa313915881b60830d02be66a966e3a1a7cd12bc4be1158e4babee9503578193ad3ef2025346362d00c64da0db1ffb48c1ff4b6f9807f45409241d2d509cc24a0d3f1c127235c4feabdc28902e8a8379e08235cb764a27565d8dd7edf2640780798688be02e87d82a9bd750ca207f0b5af531a4d9f4003430d28e50a361c43afb7821875ed510a5eb977891892dc427a2ad44265d5510d5429a0c1a2b12c501e7cf9218b0a8c8cda32437d04672c6dccb7b13f6e96fb87b563c9b7988956f951edad7885fbeb38f915b8731417e45b3ce0b5fc791ab38f55700c29d0c889d807b40eeba302e5d91fd2413dfeac50d69a68ac1ce57b71b5804ad934ec15d93f0586240a25369ae7cd85d0aa290a75b002823b942c3805c5b24a429bf1133c2b914a8cdbc7ec6e244ed866ffb9c3002816ef4a1afb7ef5c44a511289aa8d1919514be555e7bdde9e08fcdda39d3562ec5ef9b343d1ee01a3e665a4fed243ae2209c1cf67021d7f61bb3b76582b87885c16a58508200bd575ff5886a9cef45b4a57b2033db6ad32c10dccd507fb0fb00898544c4a4043b51f6170d3532d4a810fcc1b69e6ef37beca22a4ccd7c94e715786178704087d7eeb6732b19cc3637d8a1d107b91e53d709e7e628a92e9fb9c27f24f067a2948c33f7e72dfae981b160de47eab4a402fefe148ea547016ead6a698deaec4da07b0e5e81229b5b450b1aa2787fa52bd373b0876233c9f4123e34ba292bcc16518c4aeb561e1210f50fa47b770d5b8d7d15663d0efd681e6796f89f50e77fd3ad88ae0190f458b1808ecbd1139983bc192425dcbbcf1ba87721f8fcfb35c74053220694649c93ce4cf3a2f0f3dd6d6336e7260806d3a947b4a13218d6371bce1bdedbc71096f375f211ddd7dbfa94764be3fc66e904c7f582723d71951a4a31698c4ae2e6e518700a58c8b833c5c77527c09834c2bed9e778083b67db092e109c901dbf10cf8800c55e2b06b82fcb564dad08c907a496feb504ca745e65b0d6d10e377ef720797df365123a7944c597bef707a8f077bff2c933c905ffa3b88efbf7988e40f1b4f874722d0d5a9700d1bc255250d43ba558cee6984f80e48ba0f1befacd1553c8e8e7e4c94347b82a6710042275b76d12c1bfe26e1444b18f2dc182f99a90c936df76e77f653aebca82866bc239eb4147f26d8aead2654fe3e8fb1640b36519914d5689e04543f4fd026ea247ba037c345d2309d6aec1a0ecaa79f8923571c8618b098ae183bdaec0f376adf5ea57ec37d0d907111a4e9e932f2a717cb923ded8364f44a38234d8da3da32e200ad2c8caa4c9f16f178d14e5022e3e73a375e9e6877938040fec43069c31a16605f1e5c58906d82cde79ac6e82ec49b98f760c68d88f96214542b4b65a9e0161f9671bffdc169aca9be75175cf3c57cc62f3706a36e6988cb13962acfa82c6d3beee029d4c572900f963cde83ffd4729096383d772af41cd6ff90439d935010417e3147a7a1c71c4e37b93e1b617af79490225e1216ce9f0144391f82db51fa12f2678a2b0907d2ea5aa300df2762121dd727724468e050abc46b464feff1790c1c3c42aa218ea3b3e2f344a7401686a6693d97c2c5e966f6c45e89c7321f5439655097cbfead4bca6057f114553be522992071badf5e912f72cf5b46ecbda823f66bcf05f674f52d01a8b90cb60532e04254d0af61a8fe54859ae0e4cf500c8c6ad02dd7953f708074a5165e9e813bd0f04a5f8a34812c83abe3d7e10158993d7bdb2229829a4df02a3eb8e0970d8706bd3cda0ba65f19f92f8cbe74e14de7d4c89ca4358ff4fabf1998f4b3b8e2d5edaf033239a588e6ceb20ad592a77fa3ab7aecee9186547ff918588a68cbbd8e7bd3163e98ce6712808374888c0590c9bd4263ebd91a4947e02f3840c1331f8a235d098170318bf8d075f9441500fae20484d732bf91a8c9bbbf7007121031dd681c27f33c9bd974904364fc1042cadafc6f530d179bbae0514a66a84cd0a757a4f1539f1035cb67fab25940d38d2ccde35c5ecd41d2aec7c5f710e9ab1e28df1c162628f3d0d37237899826246610e29b150d388ce6c26fa8a570c744f7f0c9876a6a885dc86561de97e5b5058708d46be4fb3582301e4b8b58b1f5c34e91a220354cf8d43e2cbf882b37114ac0f487e7803af6ab89ba31e1cbdd82d25218c8e2b56e0bd898bf27d2fa5a5e5942af592b356e8a0362da6195a1c7e52b7d194589105e944b92437f8b6da2482be9cb9ef9dcddef3efb68dfc863bcf9be0004684e880fd14641ba7d5890feadcfa462756ebc14bf4bc531e49c31dde8fa65e8aa7a7969cde97365ab12966bc276ca04590a560daf930015183bf4d217a131f3679a6d5d5b9d603ae4f40648a357dfda6959f3fc2cc3da73f3b5987fdf912ccf6f688e203ff2d6722d2e456c320ffc57bff18941f3bdd47b36c6174ed95f9e2282eae932ec9fcdf57e66d675518f14ad8b625ce9a569a02b251095963bc5bc2262f826524fee2baa0ebb9a4c1da4d14fbf7ffd0b682a4819eee4bc897b4271020e240c2d61a341f03b034c053f055209acb3606702cd9787c5dd8e2ba53c46cf721adc30bc2ee76df589af6cfdbf1d556d7c8f2a14fa09786ceaa0d94e463bed372a5808731a2924126f260ff93cc0797945f89401df7df761a6ee987ecf4df418d3fa5a6e1abc893b0e22fd17c79b261b294821421d36df8f357abe9807649d57ccdd39412e08184473fbaf60d284c709dcb2f450a539820f673d1b4b4d04df4f719723197a153fef5a0a99d0c824c92fb45db817dd243c2abaf1170b10940afe082c310473846f06e074b977f0e9e2c950f758d4c814cbe9d58c7820e0db40e9bbb4471cecee2536fd3370d759bc53eb250ad81bd6f5956319267314182dc65138ae441658cf85d773a55cf7a3fc5c6d7247e4b3bef54c78608173a3239a67dc726231daf92f160600be572552ffbc6d7c2bb9a8ccef9cc5b25c89cdddbc758e054b2372629cba44d9e4ff8c7a307d0fd931be9b4578522f103224e8756ea5f7c32b0d36c402ba55c059220fb13d43b07b1428feb2355bc13f7a56f67ad9fa061dc55910097ace6e02ca895ed0689d5393f72bd9a0f18ee6735e7713140a99936a7f1095af51ec1c80e1e54c35f895bd6400650d5a44a21e0d7fb58c773d14276e3e033acc0fa7b15d541307baf6f32f911e67aae3d756a0077f213cd0b3405bdc1809529de38483df776d5a15963e142c9487cfcdf31e3bf6b52e84a0fc66e7edea43eddc495e36baf9b215bbf5cb609169de72e1f6a94fd5f0269369aa16bd473117d070ff4d27e76dcae416bc3fefd9361156f1e8cbc62453a4906c9f4921bb3e094afe1652d609e08c4dc8e907f6aca730f4f59100892ae2e0d2ac9f55b4db9205e4e5b3b6969f2d374432fefdfad1d5a95da2fb616e957dedff511df54f162c50577aaa997d220a7f6631439f20562725d750ee7d382bc17e61ca5606c228b35cc5d30e3139ef9f8ebb4982cdf5ab03f5d9640ce0edd221c599af7881c3353213d2bb1ef56ebb974406330f192bbe6abffc0be3a2e573430e2bd37e130c86911aefc557eaae64f6e5f1015d6086f05b46729a3497821d29c6c27ebe8c79d2b90db54e3ab706baae4bcf42253a2660c15068bd20820e8523fe3c9c4b9e77e2c1507809cfdaf67681351bda94f7527a96eb0e1d85c0eaaaf2d8aa410ad7845a210c9c57cbcb293fc0d9ca01cee37c1d5a014c80f1a0900a7b081c1f520d8251c9113d722e6b73e3a736c79b0cbcd7373e940dadf8b8964aaaf366c14cde4b0fab2ee22a79f55df879bcca4c86ccefe9da1f6dc2c18206279a6b15a919d7e1399405a8b00c478f56880993b207a13629aac36e848171ae531d90acc820bbe7a10b5b2e5c8c51aac4e97a2c0fdc2871fabfe6bd884c624568c9a90eb6791acec5f3296178cf6e05d865d676de8f1933befbbcbff61d17befa50e5136f5e08bf1f526446c1a925569323903feca5587e4fd055d9c76f6a849fb2dd75763e9dd638ae5b850d295aea57b77c89b5ec6db6e59ef00f273a4dfaf4940063fa4aaf42d2bf0bdac3d91ff189c15f5ecfa2bb4365ebdff924d07eb13f5b8399991e74534664388bfee91ad8c07b4112d31319f718c8d12b439c66cca499cf8ecb62e083f743561babd59d6f00007bf33acdf36d87b49f5ec34cab9020cb7499b6a338beb21b1598eb71ebb0b5976e6131567c7a31e989dd63e0f2b40b79aeadb2e093c32b3a19495308cefd8201fc302df1557f7f0026576882f561db53c9ce396c36eb74406cee83545960d3c7979290a3c665ac545ca17c9a7e7c9f9683ed7a90d483111a216f3ce96f2244e61c1ff960a083adc6dad22f71fc1c39fbedf3220c06b7ee502cbb87c71c5fe3ff6b5fd3f355e1325036f4c84473b2e6be976adbc0f3b6e62c48f5164d3947c6c712e4341d37fdde1860e6e8514c59cedc1b6165c028ffec046fb9c1fa79b1b5b174270be1bb5ed08a5ebda1d61884853cfdf4c7063dfcc0ff67ed8deb1e1c440d9ec0a21aff269a6e36baa6588ce672171b645ec5639e19af2742831876901c8588801e692ab53775d8a2c09fdce0e541d34ccdeb3368834c1990c91ba3be985d1e14c8d28b7b2402406e6ecddd1a4be1ac168f0754b3e877119c14f3d28649c0081abc064934855c7a4158563325a41dbdb922339b1c40676d616743338f8055a00d0a1ab282f3b3062500e9477165d7ea15c83e4ae4cb7c6e03cd22b635bfb469f51578984a9e53077b9a5cde3d3b055305faab26e7c2a01459ccaab5d2f38f9e86c7fc99964f425f8cd83705c7c1174ec9a1bbe9925cbb31b2e5d52b8013d2016cbe173c71df971c4265b7b08da6e6e59c34407c5fc9924f5902e7376f002ebdd9234fb00629d02d93ebfcf1bb30172cc0bf90f60e8b363ee80670126785a23ed241d4b4cb6e9594c44e49ef135bea9747052c176916716f34ddc25c9ddb0af11e48ba5eaf1e50d71dcb087b825b83c64432f8a37307d020a9a63e0d60cd5ef4dc5787f5bcc6d728fa1151db83a599b9bcf2a624bd2d5527cf665def476ed3519f2262e3ca28df1706cd1b405e17f7005352d2b4926108446afe76c63540d759f68fb04163543bfa5202c0ec68a98fe0f3840746a3bf0843659e06d651e5e349afcbe3a5c5cca3ccefc7e9f53d378fdee7fd986d1553a76d94ea4f72a04a32c9bbabc92180259655ea4f5ef1cece34bae584727336a19c6fec3057eab4f4c8dd645430bd9570da83f2900a1109dee13a472e4ab16d842e224a6c7eb0592bdea3ff89f7c7ac1cc8a63a05961ea7fd822a13978f1a964ccf41233afd02e0ffd37b15f46a8447118b9326f01320fdca45ed4a827976a7849558872cc1324b145405391375fcd1a0fd3fb4bffe21dbf5693fad55040694b6f145a7943f9b6d48de078bd05368235b285452bd520d446b0a7200e06c7b770b92168e0ded9c21d7434e0e257537a9dc2e3b5079cc035c71c7a8f3f61d3c3f3d0217018755a18d1270a08bd6c165cfe39217b76b758c73bf19e88d2620aa4b22385ae8c3d9eda147b1d6931f72072120f9b7351936194490338f8ff7e693063ff44cd0b73bce0a01f5f96a62c53b2b8d5fff414cf3c1dc632de5aa6c0c084e59392effa9618184b915f1c5afe229c47aa38c8e259ddf2d1232d03a433b94e7323a1b18662f46d390a49a16e7406a88d73d15b20f19b08ea0fd2e9a47c69e5da4a0146d9ff597d84d618a8bf0bd6f1af25bbcad809d58aa76330658016b9ae91e264b5186e7c07a4a9ddb958d943a34362b0f921c3fc7e926063416da0ca02cca1a19676ef95f516c7b834e718617d9c1ce4bec39e86baab34378d39024e8ee30bb56ea64d0e09b1bd5beda6c0675d4a33fcbb733eb7779820331b2685ad379491b00fb662035e3643b830f4757d18d71eb1a09d7f83290d8ab8da01a626449e51431249f4707e222cc6ef3e9ac0d8fdb061153a3dd694f552fb52ac75a7fe70d973ff6377f347215289b7345813cceb9c51e8f2194a7800c89aba2fdca41d36a2015482397ab2adf93d2bedcfcebd4a6c596b88794a3d1409d866357185ae412ae52bde989cc3f864a3cc2b0e557f3dcb01813737ab7864d011fdf541afcaa7d552a1c3398fba84f583b28185ff417a85c06451fe431a00848037bd7e783aae5b261b3371df0ea0bfeb1975c0049a15137084e675a05a8e0f74fa8d10c1b3e68e25ccc7ee3c0810da682fe26c430ab0e6c6a1c93a7566a5fbc5b95bd8b088151850cc0aa7a58573bffab3fc0703fbb0ff32fa9064fae63623dd7026fdf5c6b6bec062909edfeb6a48f7430c6471e42b9202b290698c7c7ae6003670e64e9f372225b2a68967e0de5a9667e68701398e7b55a582e91744225d9f93db5007f9901d741097faba48ece555630d24e88c758f7ac0f546cc312e0b4452df369223ef607543d983493ee5301fa0697a8e86880f4945cec76010e450169778e3f5084f419552e4c60a78115f81655d09cf22187f39539fe49d84b2e696d883816be340b2e17a49dfd8f232731fc1c9f5e69fbd93d93b37e70ea567371752106a9ed0c07fc67a9504570b8eda02a7b523ca67104608cecce3473b144636666a748c770f9500d2fc2cdfaaf5929709e5255567bf5b719f0f2bf2c2f9d070b8da0b18bb882e06e347742e0cf3e31b4ee72812f8bd666febe2fa2d09236981a61076f449c024035738f753e5d7515980b96c2a2b4be2389972eb523a32cdbbabab1c783dd8bb1543586adcbc4844673f2c31a4ac6a338a5ab0ab822995da43bde2cd2a870190b23a37088f570479dfee3c9adf2b2ac28c31d797d0153b4e5172574606158759126e0ebec2447901c3643aee8933bebe8e8b18059d2da39446c18ce73241c825d704e57c0d1571617640ccc4d070222d016afc61b0201ec11b2eaed233d5d738d20d76a5237ce7f2e6c8d7d4fb3a0819bf2456645d992e418cc4685d31889dbba2796c385a4f7ef126e28d1f01248d10b72e62638d795cd68d291a3f09cf9714f20bfa5760a39da2751532624a7b8cda15411c9d807d18c6df4fa276aed0778906d1bd1f3c2e1b1d4f2150df97969b4b568421d1492cfcec46867f2adf2ac038b4f95de87208a473f1ae7e77fa77e3cf95c95caacf090f0d165d23386088b641e3d77ee9c1cc32a53d334e1d409af2fab5f2f0a2442d6b3599f49ceb45639ca502e61682bbc377cd6b9bdb219c0166135888613e022cf16ce6830fa160d9c3aa1382608f7700eaf071731f27d7fca06a918b6a42248bf2ae3efb4a9e7e1c539ae09795b51abb58f401877fa7a520e8352fee5a690b2ca17a59eeb364fd00ea3ec6644467ed4f9f6fd63bb6d0b26e8a5947ff8b2c7eadfde05a2a115158efbc4d9667463225e9058e9289d34883d58c00f530c533b2ff38ce50eca04ff907e9cc444823ebc3dd9f02c73e90d78be6aa125c8fe6441b9eaf418419bc366d6cc1a956a327846e40daabe339549eb049913f62f06468349fb79e9a7107c707a5a93be56ccc88c196c6c9144a7dbe81d84aeebc9e35286fa1c32cc1cffa52f53a82eb35124c505719471ec84528a45c7776e6d891f4fb1aa0519acbf2034169e2f1a6b470ba28e7fc298c3daafb17533e7d96643d97d56b2fdbc2d8dc12e0199d2f088505b532be767a0b647f9ae1c1116d3e15a43b81ac91110366edaab9d90e3941b2a9d59b4441b08bb3c79d06902743cd6c9b9172d601b35c0a9acb6728e6f9719076fb11567e2914163c4285819eedda1ce9dc0a91c83731fd80d9320cb96e3473ce73f5789c340b58cd0fd8fa163dbd810b7d98a932d8ebec8e56ac0c0750ce30e82307abb640d90d2ceb85d114df6ab5dbbd70e26fe7ace6c4f7533012a5a943faf905082f10e6eea9c6cb0fdc61462b4d7cdb954da753fe959f3bc7d9ab3885ffc31c3200053e0109f916bc9ba2aa7581c706d9097f419ee8c075013e9d4a3108b7fe977a1e5effd9ba051dd061f5ac1a2cbcfabad71556b8ca438f02085d44387937b4fa5d0c5feaa59f9c0a934ffff2923ef894a5cdc8f73119fcaae44fe1f36a32a5d16eb52b1756d937cd665a7e352642e185cdc9bb665b523c00972256ca2995c456590c9fd1b794d6a5cb99058d87b518ec61edc0040d2cf766a055b0588b316d842db643eab2eea9426118ebee5145326c0eb248bbe84717307d97f3fe1c722c282c8b7065e4f15132432ed98597b3bba6c81cc849dd1ca4f3b3fae17339618e49e801de56c576a3ba68be5574357837fbdee0e999184468a74dc721ab93bd3643c1dba00ed72b3ef3ff91fce5e19e1a4572a210a85d08e84a4a75d3af32c1b8e5b5bdaa5fb9451147e31b9f32b5457d1c6da45061c12af3e60bdf52320d32b56e37d4bae61b4291dac5f0b2aa2dc5cdeb930c9d097649e1a7667f56409edbc94e80695678ecec3a140d5caee4c403b43d2edf8698e39cae5c3915556726652dec277220b16606d4fa7f760e90cc4c5ada526b73b464fe785bf079546d94c1d1502954438eaf901867e132e77ac7c98ceeb1d4c42c67983769dbf6e4bad2ec49ed32b0e4a719ae14d456b978a92ea0d57fa211e77b1052d3341aab260c33efa91e6e7b66620477ea5c5d83764be0d40b112c0eecbe879678557de3109518952447ceccad2d03a891161cb7ef85cce4874d964bff3ebe0faa902549957164ce13ec13ff15e8c8246ecfdf435ae26c7f64dc622ae053bf45161b0a51e6f048f6ffde943a67a29ad9b53a4f18e8b2620793379f9459e65d35cb20a46885542d2e5268f6ee9f21af1a8f597d8f7eb17aa43e3409aba2f4e22db35cff13526c6bfb23da50a12dbc4e3210c5cb82f082880d1ab7e01b3d083f1c4a3377bcd51faeb9ca4b7a5413ee4d61f4739529b185bfdaec527cb0ba25cc4b26b78d0b762c597f20c40105e0ec42ba43af2b8857d941594706055123346061c4d619ff03c1a14bc2d9d601c79c1bf8197767bb0a3bd4a8060bb9a893b2c612937fc1675043ab9e8ca8f7f52c3e90eeafc61970042a4312d71f00fc06f57cbfb861340770ff0e1718b9c63da83b33f8019d0396a73e381a3a0ea9f401809ff15d130ef9c4e81f56022045e198ae5ebf6272ae67f39a2315544442c560be178ca384d75523a6f32be3a379af6c21ecae4d7610ef94ecf27e4aaedc97b95723c8e3fd539a5615b049ca8c87f659733d9d9332ba620fb3856bd6731debb1160b6a27b5bd7f766b4281859f41380a56d461e21bbfb62b623b2d513cb6e8e71838d6de5c34c21361106c2a26c16f24b20b926c2e83a788be006886f124f3617be81b05b15767c15535012c0ef3ab9b897f6987c84c7cb5cf8e9c22a0531aba9e1c8afc3dbff0a5353ebeb36b4719432fd43ab5b62586b77a49703770f646a152168e1799ba5e35f3ccc9cb6b36b53adfa24c5dcb85ed18ad9c8317c4f36d2d6e010f80329ff006ff99e3f24ae71b5d2a20ab10434283dff563cf44e374e6986b628d4997a504359fa1b748678198e437823ff53b6b67914c068f182f9b8d61cfa670bb56824b23df8d22f197ea8f537170bd3a1a6f2487c56e20647fb480c5a450860c48b1e864f4db61e65790b72b6db5682604b9bfb827f681c5a702abfc2e70416915250ee6e2a41d5a281b117154b8dbf9141a1a64ab8ccc3d5b61994831548d35e71c2f81501e49eb158f9c71fb17c3fa0daa018dbccd92fca67654f9a432de36bf6eed16f1b27c95baf13f06a90f9b742d234a006086f05eb914db9a0f9ccbf159e67b0210764aa0a7b167c509c931a405ecbf9fecbb9d57a9dffdcbbef4fe5ba81f7a515d7ac06ab43e31617954409dbf37c9ff1a2a7a8a88fb7eb1a26f0dd78307c9e7071f46006c06a8164a6b8adf7d99b1b4722528c5d7f14d1d2091b87ebd261c75a6844e1df289a8bb4f3345ad9df81fcbc65ee84a5695efa6113a2c5c786dbdc238d43a6eee75d11e6817b1b0405c78c191c643b71462c700ce16c1d188ed9e514d716a3d638e92987fbd89d2c902d8af50a75d31dcf77ab452b7381cab75c1b17ae4efc7ab841f29993965cb06509bb31973c262dc7279098d4ddae5b573c07241fd4e0bb7ff2e785b1131092994032659963682fb96e1c3f5922cef177aa503d556462bc9e6a9b06b9f2ae0e2dc8641943aad69505d1a1da03da515ba7c34e2c81d25a5637fb6057cacfef29583956e9f9f14460115858d8377ed17292e55b6d5b1ef17f526b7354098d1b00405992e34784c4995dfd607435addf5606a43b3b26236fd78891fc020b4e23162d994d755dec0b53424abad876b52cd4689e746e1c8d3e5370c2c2c3ab448a10e218e16bc2651209d4315477c6d6b9d14246e81c0ec2d2dd75118c678f5fa8e754e688ee15b2af88e2939186e982c61bd5f2dd68d606c9c1ab5c74b4d548b334d71beae548d0a5c7e948c4a87ee436a9ead38f2e560b9c3e2e6df48c9f51093cc2fb75062c82954a7ec5d250e09c0567fcc0960dc3d9561764a106b94e15888bbb42cfde735cb28a8ef78d78738f0b0b916517263339a6d13aa1d853e47ff49781fe541d4d4d0d0a4ac3f3f94684b4d6ce11fa545b6806bbb8ce4f7eb10d3e7800ebfbc3b74c880e180945921e4d9ad9d8bb80598716f7d3db284b81a3fdbed7dd4a680148a1076c83da1b6844bc131465981853c9ee911902ecb2d368460bda8d6be0bd440851cb28cb543cacc9610119963f0f39dea0c1f165370f5186529462f38546702ba61a67fb9393d7cb439127b332100eac5fda038a6ef49d6bd74302d36663eae205741c43ab8e727ed3278ef5803710abfe4f2017103e5eca0e9118636a9b607d3b3f9a2c764a54351ab6f35f1c19a8a7e4fffc28b0a525fdf8a3a944a1c60798704f5984e0e4bce1ecb2f517f21ae7d6531fd1104dca04203bfa22b21df04655959ab908fab1c683390cbcc41718bcf255505e6e7292a57bf15869c19b4f70f6e09a3a7280d113e665f4d3a5695e1d59be9ebe3e772da95a27735bf7eed40628e0198a8db7de31fa9e27f6abf851144cc5b82f589f368ff37d4fdd56407dbed7b961a98b8df562df97591929d3094c7eb3d9e903915f4fad5139271e30314cd2b89452e8ff03425228f3fbcf1547fac305bf48920a8d1b1a91b7715f0fb5aa7cfd41590dba45c1b88bc7811d39364717ecac1987f3d55238f783c19df2e1296322eb3f829d6a1ae10702dbd32d5677b84a43c9c12c3d43a291d983c46efc69aa2978a82ce3459f8f559766728c2eb605d1b786f61cf0b6d04153a2fa4bb131d94a7d76280409cad7a94bca44e06d2e5709cdbaa09ce2239002270e16f67bb17784529e23da315099697d876e4909d4f5c035b8c80a8b7015cf39dc880c91f4b7c51d0d07bdf64735523af60c842c399f9302a5970e5669e78622c43d595380891479e126dc92ba22860686891613cf1b7e5bec644462b2937b435e2ba9b731750976b68e09e606852a455074c1388bb67983cff907dab79462472d4b67206897e332cb9ba700a36a4ad27c0282687237520286659225a35e42aca12a0249a17e78054e2b31f60cd2edf1da4f361d1be0ed6299be236447f4ed7037547579ebc1401987fd9eab3d136e879e0d4455175c206299244b19ac35ed71c15b5cfe96aaa16b1119d806acb185f05d306e29244ed34bb119251b79b656341492c1ce554309409a9eed4f0bd215e3260c075046d0ee9fd3c0ed47b98b16d1cede9447bd30d29a029b7c1237744f1d27681b293e4ad8d98b136014fabb88f1d6564e7af127e1fff18ee0d93cf309ea3021385e310e8d04d63ca7fc8d8c41c855f01bf46ad595582efc16efd46d126cc227145d8f0965f60c865f9d5dbfd9c492104be69e24a677ed70d393932ded37b3cc0a1f23df855415f4bc1395d29d3f0598c471be44bba991faa049f7e67398df337a4305eaa61c7253c95d80f402a0b18a895c0834c4a3d32ab08b83183b7ce78f2537daeac77e7da0ffddf42310decc1cdc11bdcd1f2ee07fc2e0132e893fd5dde12296224f99652056f9f88f743e2c8f3ce01550a1f7701389af351434bc8a8fc55d4f167eb4c9b006a27652725a8a908ae98e5437fff3cae4082e790325c16a1928c7c508d2ba2dc4c5c33dcc545d4841c507c4623ff397d6e1e000cbb1b4ffd925bc7e73a3d493fb611499eabb61cd38808f6dd9e95938ee3d2e607a98327ba3475fc4a6694141599c4e02a41eaefd66dc564c15f77946fe430f74dd7b48ffb14d1fa5da7f670db32c9fbb1665fbf672a9cae92963feb325dd8523236d3bb0892f68235b5387e2450803f211a37877ac7980c7cd04c0d193e2a7e5a351db183546880b92d085b02885588b4ec98b70ab3e8ff2c441b33a2573fdfee95864ec5a0327fb821a381be773f86c0372249b55d6488065067416358675d20680c1feac1f49808fe04ef4f08185a85e1f74121d924c6ffdc718cb8c69733b30297c8f796b86c47b392168800d3dc23e06a1e6701600ac9bfb2264c909fd3697ed21a29734611f53870e7a8504dd4982bd003ba85d3344922f157010911d59a3415748790f1951f28490cf0c7fa7edea7d5411a79f98d6c03289f6495fdbe2c4e9d27202453b8dec95850f9353f32a036ed29a47f876ea64f051c09ba64bbb74008006583a6ad841aac5198eda2dc2dcc3f8cd7eb53208fc2f7e9e0faf53d79cb7d4e56224b6b36d4235446a23c76e445b45636f919c4afab24dc330e8b29b79c036c5d10395d6b94d0374e1fc04a2b05c81a626a53f6e0297c826a7ed61ffaeeb4117055615011d62271778d105cfed6bb247b37db9a5e18766a857c0110eadac5fe0a557cdf81a4f98e1a057c30f6d14903736728a6a3d0174c01de7fa262ca91cdb9260dd4bbe33b931096bd8b558a743743481ee4d30da5b9d0200f5dc739986a8645cd1325de6a9c95158b99627f52aa3a272ba56644873ad5a11265395ac5764182cf2af100faa8bacffff82cc71fffb17db07eccef6b5d5f5521b6fee2db1a24e5bc0e93aae9c40b6c5cb9a40568ff70bd65a7919ed3ac2c0955a401e263548966c800a97f4b511ce6de1d7ace38d9d9ef0d384a0e9fb100403a70feb9aaf6e6966aef1a52a9c59e81af020c45c3632286b4efde6aa69e3da9d6bb3c477dec6a00d5af1921a92999eb5e97355e265b7224c11b5b7a73dbc940109d9276fe078a154f9fa18dc2ce6ed8d9056ff36551c1c81b028e1ce82c9d8b3fc310f119ea97e26e11b7745095de15e969d9be1bb1f7525e7c65e600a7f9e70add2cdbd5e653d1c3c965cfea24497dfe966ca84fd4da9e02c2fbc4834b554d061cbc2b611854f3629d55d1f12b377532b0c01142bc6a1f0214f1870ba916ef97da543fd69aa9e54ad10e87e3e2f2a6ab9d0992f9b0448ba908dfe6e948b29acb431317eeea7f406ce56b9d50f39196fed20dd98f361d2331a6f4610d2e627867e7c296035877d5a55c0952f106e5508d2e7e33d7e8c376931c157300ea5a4f599808d482bb5452f393f6c2afd22b1e734d500d9d0117ade3d6a4ef057036107765457e5fe4f590d2dd4cc29eebe5fcb44d628976b20e231af94fa8de3e52ed27dcb8cad3b48856865e2d9892e5873bdd31d1ce32edbf5bf97e54cd7df0d54bd97f96bf78d2ea81b5fda6bbf68218cee95a4186267772c9a1796f5bc5260b2cf48b8a9b1bc642b432f9748652c3902b3b89b51052821b81708cb44c0891ca7664791c2e7c8c2480628646cd101efec527dd923996a668ff832733cbd9a71fd42382149d986b1bc221389bdff9ae7b5c1d09b7fc3ef09f8c15c292fa36f5598b7df06a957495d223974645a75341c6a2f604daeba312b35b32b1f81ac862b303d9590dc63a3d00d0e881914fc8c339ed7d7a3bc36bf3406b640a7578082e99d959e53d667adb33d18c193975d38c75c9e7a5c35f71bf5acc454d66cc11f7d4215b193eae9a1293509342d814cf2b5419e563334dfb06c58ee6d35fcc4b2025e30461489d6dccbc4579181f462baf64fb237f07fb863f5cafdee62ee59703f41ab7c927a9ba1678606d92694c6b94b577a02bea79d68979389cc856ac73bcf22e813adbcbed7cbef4e19fb653700a333d23bd274c532154cdbfa784de29a35bd907ace3da4a923a528266773ded9c6a8f13b556fb6ab08e7b8197c9c6c61a46e0ab709ad4a2ba8544083520c113983cc43b93d5d736a316e3af527b69fbfafa19e3ec48b2bcfaba769f9ccf00dc9392101206aea450faa6f07c27b15f36e08fa3931391280c5ee853b3c38b044c2d5b7494f5891fae61f45aa50a9d301f66911d25766afafa4f01c397c1d7d05416caffe9fade5769f543ff33b5a01c0f1ddf615623afdfdde5a7644c19445840114167eed9c352decaf76698242b2b330313ab35b08cb10b990254f080e4ef31ea868f4edf53760f642104ba0872bb5655a3e6525d036b4e52e272316acf3f409e0b20a3a666d04f1bb6c62402a1dcad618aee612216ab0228eca0575a56438ab815373eeff20ef990eedb656f785d72c4e127f5792479fb5ffc22778e99050790bb387810d7bf74220f2b4d284240ca3b5605c63936c57f4b40453a495fe537e6b598c4543b9ebd011467be0725f7009501824aa2974acda4cdd0b3584639852a0d1408840dcb3aa965467d705cecb697db339c2e48f804513c0096510e19cf4e2d2f5cc4fbbdf0fb5702b1952ae21e599432b6131c70aa319e3428269da2b15ac03a9ed15b04ccb681caad8a535fd2f46620377a8330cb25ef7500c86a1c9c000f19c38d411ee361852863ad897316f620e6dff227a2c66d2af4274b16c236f3f9a61fbbfc84c6347b47b1e66bbcbde6d6318b3b02eab400ef13b181cebdfeb722fd99c40881d3d799feb4d57b1ad61006d7cf5192fc5e7c9185be50a3dd95d80fb268ac2dd53a52735ed1005858ea0ea79102b3a090024f3012a73953e1354601bb9ddba3341073daecf59e3cd8fec28143fc31bcb194fdffd2778bcafa2057ec0f9f0b8b9e8d34e286c915cfe968d0193507f05c5a602e83d53c10c8fd9b14f0316f8a95e0cdd478bc2bcd016309fc40a34161fc5ca4074071d02f57c200362d781cc58d3b390493cec676b96b785b932335f3284ca2be0f8073d6391e97405fd9cd1ceb0c4067222426b01ff8d52cca1707c018de61788b1659d6ae3fb8553fb1adb31678192e639181c7a58311bc4722e8dca023aa703cc3e480de024b867c8e09c6adfe32986be80c0c8e457e5a5c3c0b8dce7cbd16d9771a0ea575deb42768988d9e7acb72982a8bba7051946b2baad1da418f576d532227dc4c352836da52eab014ebc62227790dfc1eae134553090aa4aa6014ca3c47328dd9279272ce7127689f592530594a01ea67c930b1717ea0dbd72dc1291777065377e3a137a9f6dd191077fd95bab72983031ae44e0a893c8aec9a3e566ed32c817379d8bc6764265455f7985f7d07f5e039e745eca4b98bc758b66246e6e482a8258ad7788164b65ede2b42d50814bcb32c9973357782458afbcdfd3e07000e963bbf9773276586842dee64ada482016779a67945e5e4783a597dd6d3a4e42d818f37198a2d4a2ef41d8b207baf040bf949fd58dab3b202f0ca29c0a024d49cbe1b0bf084fd7148f0963248c4d620964211a1d1b6a0ca767f4160aafbea120aa46a52d57a3477a2bf5ed2bcfd9dce449e7c2cfbb187f190f4a642b78391009ec732c0508142f4fd1eed5c896fdc679895e86f75151ebbee8f22e86aefac7610b6985d3f9d682c82a3e340f612283be5e01b84c41a14fb609fcd04c6238996712e389f21233e2271572260a04c14d5ec9d455101b75d5e971850431b0d10a5609060f53b159c91f2feae3fade0c62233d0836588065d3c5605dbfc8b55ba92be02f5bee3e158aabced394e44376e2dbff7855edb998ec95236f1b9e6befcb133cf915470adcad598ffc8b2c4204b3842baa9114fdc57aef542c6dc7abef14121439ed1ee79ba8ff245cd20e6b0808f6d3aca012c3d13a237bf2b64dc253f30673eeb0c5cdfc86d88f56a43f8bb37bfb268b420421c8af43e1c80f2fa8346d23e606ed35ebdc42e0491fa105b62556d462651b4ff5eefe8e26871d3ea9897f2779220b653e3e59a9baabf6b54360b538a89741c49cee544f58f37d2402b6f1533dfd58c7a180426c5bc28d6d81493c0252b74354b5d37f8ca9dca5684944e8696c244ba964cf1ea3d7286073d7ba5b937146d011d014d5889b324a267d11a54862f0c304a412e08cff1c1f10dbb8960d2289d694263af3239d7e81074606192e6b6f8cefe2efbd99a98c89a0ac320e6b5b3e83f0c7a8892d797814713bc2513c62ec0d27a3fa7ce5112dd1f6f4c093391e4305f287cb0adf6ea9c2050097af6a3afd18a417130cad973371c282432c3f54f9336d1d30c9610191c6b885320050db8ff5b4bbf2ac56936fc4e63e9957ff5841946a9d4e180404b07a3a3cccb2131174d1cb3deb6927717d4c91975b05f13345f213ba1347d0af53c43bc4f7ec1dc8ed81787d4a3c526931779cbad5cf3ff97679b8e3859c9f4b92d848ee3aa521249e02d692bba65d2e081a7091d1d6c2a55457e2c1920480f12ad2a74cf1951af136ddfec8a4bd69ddd3da022842c413bd4e7c170c1298d481839f9cdc7b701ccbee0f3a899fba824bdcd13c4ecfbb5eb144c6a01ff36fb912967ecf5ad8e4587044dbe91bbae9dc9041831af43d1bd817e4303216df406518c1b650cf3ef66a2e8c85b295b5e2a9113343c463c8f490220a6158957b0f30d08614b75bf5a5055cafdd19667e3bb29d3c5ab61874b2fc48d3de7bb5d693bbe3c7cac878d795030172e1eead06ec2ae178cac0bff9db3b4fb98765390748d7dc02227bde0bda142a4b91520aae62aa237644f2147f3b65aaa5a0205f732c0fe1477378d62bbc38a87dc434de49b487beeb6f7cdf71d13b3aba73319749ab5eaf7f0942de92041848bbc2d80b3bd0deca946886afa55819b806a5ef80a449af289aeec02f5f1e36e40f7de7cb1894d8e061226a220f9cb30c6c4231de02f93ff74597c4729b412ff31d5d8ad727fd375a22b7a8e252a4cfd556fee39e80f1e2955eb363e267bd0e7ac763010b58c57146aef2ede408a473c063d49e77e6beebf062d65f42f5d81b0efadc58bc8910aa507dd5db3e1140df226bc4a313be012b5fed3c9c135fd9148a823c599bfe2b721c6b0a139f0059dfa14a533a4eac54d9302f51625cbf6349f5dacee0a4ac7ebd6a5a3e2e9687d8830dead301c219ac8eda2d451177b45d5c3aacc99ebbd98369683a86981f8d88d8061d1ea4b9ed6c2fe08ccc775b3bb154a710fd74c52c4e1904e5b9dfddf8531be3c0af7c3e21be0ae76680434d82213cfa46474d14406353e3ce77a0676ee81d96ed81e5dc1083788e659db0f4038b3807a2911bf12a29fcdc8289a4c25e51072fef909f5eb865e5394de1106a51296e7e82e4622a3ac49751a2e0aa8c3b299e8c75ab6af02078bf491b53c686cc384a342a2d02c6ba98fc32ec9fb7d62abe2f0623a8692a677b9b9e92900e05043d21c9330a5999d406b4384afea16865373d81891aee5fdd07db73ba769bc0b3b212d9d7eb5311b0d83c01e4c1272ab842ce930fcb4481e0ce5ff22c341f72488d0d9983dd8e08a8984d129900fa1b3684c9485072ca5bf15da0a3768ae4eebead73d10b0793c28569c9fd7ccb772fdcfcc97c9b104ba682e24f51d67358a7c4b219119a6f53d8decbb0033ac3db4ad541bbfc4cd10745b7620c2f312c8c4f02636b695ddef171d63cf9f3c285697108b1b365f85b8fa9d462ea8af235221263064856321e02cfbf0f676677beff6d4eef758c14ecdf824d421fc685fd974b37ac4cd423f1f190208abb78179ba1bd94e7312f76bb1f8ee3e162e2de9478d9872f4f8f908cd6de5b961bd0579a5458942ccc287903bc893c9af9ef4b0718c18525413ff5832e4402dd556999d7cb04eeb95691263b30382c3184073c2014e3df272097ee1ae737ceb1a845325c69a26ab0f8b07671ff07d245dc3178b0d36b2493354bce8cd73352098fe9fcfa28a89b75bf90b2b3e79f45da5b00272a6e1a86505840b19891705d371b78b8b9dcf11d9d3bda4dd3a28f42cbba489061626f6de9177d21b386869fe3485acf7d4b2e81540a6826f63b0716bf1fa965cb17f64a065a543a3992501556c60553403cbeae5ce11a4cf87966aa4b3931461af9b98e0a707c40aa43af158ced45c6e1e572e4d9eef04a48c83af09c9d737785d7964a7d01ed38bb4d91ce51d5a609c7151dab7726f03a46a7e0041c4f8548caefaa19a600128a59df91b71341743bf1741350cbdaea6f85be87851a85032bc4a9395f1012c99256429e94f518cea7dd6c4ba8e3af522ee56e5702e16542ca3c6a790cfc6d6054fecb159edd34c3ff6b923f12958d941ab24ec5da8803585bf22861012073088b28f20d59884733b2dc536780f61ee51584c8355d54fcf5b40e28f8b93409009a38d7f7ae71b8cc03e4bc30ccbf3c2679e41004e0a712b3339bb120849e73752257530e157673dee7b979bf6dc1b56f5badac223e8696019224d1b485024e3b63ae0dbd05cdaef05dd1c8c3a08b921f454038cc8b7f667ecc32f1be4c68346fba96c30fb7c246a1905502c04415cc91c329e0bbdf261661e90edf1f1cde51e8da5c3952e514d1a26be074afbfa8a835746ad4878bb8024280252b1fa1fb6e8ea9a37dab9e4b8baf4c2160275e677684d295e0197d1cbd3b58e5197326b462f09e4d5d2d88c50bf547822e198e87e180979579bc3a91c073dc1dc6a455ce1c4950df85e6199d2a6571b392ab7335c43cb5d84d80c0a3c9aace37f31318d9657ce16e31a879a668a7e05af6914340e4f46bc2c2f4c2cc1265dde7e511d5ea32707abf63e76b2657a4f535574919d1d40f318579b8eb4331d10038973a898667907e2745c9e182e95ddaa9ce873539eb8fa36a4cdf3c265738c76fbadab8370f4ea88cf3fc233ec6ea18255053c8ec3860f8df6b68fdf51a156497ee810f9e4845220fd0df0d4373fc9baea638d2f9aa4e3a408e14089aa410bc7e15037dda41196d2049e6a59e3f47481dadc13e456137bdaa23ad5fda6abab727d0cfe9e85cd7f1fe292cc0c76240695abb0382e30b6eb1fa5dfb92024a9a8a9ff03df0ab457dcb3b1189e7bc588c7e273e74447cfe359a38e9ed9ab47d88be4286f497210b35b5b2f72e41a4d350e1806b59b6fc2dc08cbed1db72ed6ab147a669d3b4af6ce7b8e7d7e26800e1f7c6332989b2bf35fe2d9f43dd6f18292e5856d0fbd10a1ed1717684e27f52e3d14732f0295ff529cc0064cba1515fd0a27141e0eeda3f5b408db830eadb533ba96352135b7b734f91ef0853c179536ae4406b1389b7e03cecacdfb410e0ec7305cf566ca8f0f2f754fe848189f81a1fc4836b9f003809440983cc325dd71a286c1dabf8d5b1338185e520971676d690accfd11aa77a5c55738882bbfa79f74b0c541d582dc2132e4dd4afd1fe4c2276a1b154cfe1f6671803390bb761a9da7e088ae3cd6418208ca52b38cc5eff96e58f833f945852284d270339501586de9d175abe072332723837e745738f90207a3982e641226c3b2fdaf7276bf83fd74837dec31546272baaed7071ef9ea98b02d516d29041afde2f414fa0dba29109c50bd4ffb3b9da781c8c67f42736d1a39244b766626dd6fc2b7306a32c2ca415abc86b8c953b3ecb3e7e4daf7669a0e99bfa5cdf67975b4804e0f53eca55ae914591d169519b6fc26f1e56e08989f3a29952d1960cdbd3cb499140c1b59c9880c707d01547abffcf58cdde1e95fbf21c171d4cfe76e8cd92047c26297ab6c4b3bc6d3cdd76576eb62771742f4efc3268fe472d844c5a5ba06b72efaa986c14879e2057d367f7eec6ded9638c0bc7d5c5fc5fdb62e6ae38a61db46341210022dc00ec88ef809ecdc4c6ae5fe181975162ca624bc70aae66a84fec4a9ca96f986fc7388d05f930b2e578dbb77c5307c85557937ffb34dbcb635525d6b7ee952a68da34380d85736606617d4e99ef1fb933b7b2aa5dd98a2094027988b4931eb5eeb005c0996451c0ad40e7e324fc8aea182151b2c0e02b6f1e2cc80a2ce081b99a733eb9018a2deea87acaa26d27c8dbf9211b433e0d0ebc3443d616594f28c0b53acdf945bf59899889b2897e61e97dffee9b1704958b35655749b6a3a31ac5686d36e9c200af340520fd74da545b04fc1092aa758b92818d139160505211b79d50e25ac1b96e6ec61fa679583f1ba2197d1efc1a855628991a9d8b5273b3e017f06139c4f44efb8a17b2e4c053e76eecc8f2eacf65e4578567e39b2b040663037cf52ea5c7ad5087ca94fd22b6cf46a12f5f860ff2f1570d1966de48b059f81aeca6e473f745d98d3fa01977b1c00a5a5774a3d984d8b0ee0746ab77eb20588912253559c10ec4cf46f0cebcd456507057ffa1b7eabdf5f01ab38f875965c9724303c1c1f7c59aee6d364a5d12ff4903c3f06ec4eb9e0619072095f2e4625af885a4ae5a0caf15ad039eb2efa527f756bc58493bb80215d3390b7ea13c298d05b072c0b64de102d8f4f7dabbf73e18800e28d4577ab3f794450edc53943ad98075d83d4089556e5a750026fdb1c0ffa01a52b2fdcdf4f682533b21b82a629046178825a545c38abb4e5cfd1611b15181db1a3816b39eb2a50af9d0694efc064ffa18fdc3fccf300dfbdcc6e1526c4afb7b1b67be7d6b982e352ea28d593abe654472d7c211b00f1c4fa81b2e468d766af2f1a2ebe9dbc219230bf89af02a6ea1f111bdd7832b589af175f52bea1037d9eeb03a8c43ecee0b17e702c979a68420fe635a925ed7a194a0e71103865e1e5cd34a6be0aad9af4106f1c5ccf6e567eb1fde8290151f1d4105ca15b4f5f2ef292b02d8a253483af01a2567f2909f975d3ba4a73f8d8b714c77a235dcdf21850dd8d0ee3f90c08216126fe59ae41082d8bb988cea7fb06037499696d3d00e196e77c77a278356fd8c6b32df70101f219bce9800f13e666cdd71ebcf196d593d01067339d5fed1c985053dc3792b79f30c6f376865620fba15c31ac58817b57d55a6e9a735955816a95354073d491fb3c8947244cc8ca87d54b0c3808bfcfbb61a0e5f6f45de9d749d450e46e54f9a4b1b526b26e8a92024bfd593b0a1f8bc59f372ce55d64d8ccaaf73294f4a4756215fef4ff569152cb1f4dddae006d516571263cf44931fab8f2669f4a654308a35ded4bee74c86137fecad5d7897b2f11914b7db4bc45e7ac73b665d18dabd03e883c7298ccbba0fef1e522383839acc08f34e7a23870430c590540dabd1a4355b88dbe29c9116adb9e668a2b671f653de185748c08ed89e3ec4527fc88390a5be01c2df4a54562460852bbe17aa85320e5ad976970df1855d4e0a8bab23db40cfb775778b1b59886020293137f6348ffa0c49d1f92499b2e6b046df27432aafa1e38f16a1edb77bf8e4a3d3703217bd037b19ff11556aaed8f41f6664a25f2d7f257193a5a7a0c94693042755905aa9eaae9085c6ab514d18ab43f30c98254ae734287c03316a8c35cba60c1249e258cff6f5d2049b5d1ae396719e5a0e1dd740f111342b9d4020c45958e11e9c814b09455fb617164422293b6550dd754eb529f0d5f65a4e3cfb99f56a53d0a017802b804ea2c3430ef5ec2f6ee3dfb06af620197ae948ebb70c9b3ad1149766b81a60675cef77a007bad7a116697b6c70d520f3dd13a5544554d05329649ffa382b5f698e99f98f1ddd011b3be1d21cc6bdba8b23671462e079f14fc3bd9a3ba8bde0a2536c3359f56fb030045b683e475868b2520476fde3c0966583aa3de4b2224032736e47e057f51c4f030808de36d2d8c93318080a3fc706521fb8a5a2dd1b49dacf10b73637a2d05a0e8aaf7adbea871fdf242ac64b098350593e1fb10862020ed3228c935d0276ea12e6d2f689c13208cce8bdf819ddbaf687871bb6b7be0181aa800d725de99d8614929b8ab2653f308f1104d856288786e00cc2b60ae58943fea9e08d0a972bc772555923dfbb8e4d17db96c09cab451bafdba33f7716550cd04eafdade4528181800a6f59c31c9c7a15ffe37b13644d4ae882c9773ed05a01e6801ab0d2d67f1196c915fdfb28665a094d9250f346cffcda79817a4ce64ee48a3bbd0e4ebc4c73b8a8255d1671ebf8ff47ab541bdd0e2d8be291a2c02ec402b5e2b3456a7f569 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/631861.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/631861.txt new file mode 100644 index 000000000..055495f16 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/631861.txt @@ -0,0 +1 @@ +6ceb88daa260bec80dbd3084a04188592ba256b2f3c9a8c7eccfb82c123731da71bee5f4f94cc770dc33aa672bc3f3571f7493820ef53a5f8cb77759dd9a4795173db067162aa1388b70c4d51d617bac90d85328363de5c9fb519b8f8412731e2ce961920b898ec4819d8d0d0c0fd31e5be5b7aacf2a6c7f42cd4ecb44ad1f8a67726c2bfba5c72fcd388ec8f3c4e74cb567c8bd6a5a9be476917241daa61e2813f1a1d568c6effc7a62059ce3271383c0f44cd2de1c49c426b853598e4a12a954adb2b9e9e02592ac13d8c139fdc84de563df298ababd8318d93e582d4c4b2f25ffd017421af01418a8c7320b78e02860814a826e7b87ef781abcc4dda238b303394f0dddde28dc4a3a1d1783c9f1fd1e897a7778f67f64f9dffa25dc1258024dd3838c5aae1345bfe398a2584b06964efcf6d1e32c5085e4695c4d32d8ca422d677ad072c753e647eb08870b3efa1f83ca8511c46a0c9741727e71ddaa309b1d15629c0f5f0e1739af63996e74090e1cd2706c5c97da52f03b4cfdfe2c243326ea97c4a36345f42e945a0031b07e65eff8d96f73bcea74b8b9891f3dddf5fb737fe9f7ef115c1013be0fc6b67f08a371d25320bcb0d4db8d757feb5ca801b24c5d7c4e85eea0c953b91817a4ed2da639007c269bd6520e4007da5fcd8ff6405f5d8bb64f6023a9ecef98a78336c23a72f8df651c043b8a1f94fae53267d28e6a3d818da1b67223bbded36d2d640a11410b2345a3e82f2beb47e3ee3185918c4880e1419ef0e98d361847895b8b60fa7a7618541905af37138a5570d5ea9c2253a407db6f24a49f6e1388772e74178e831c58684b8216e1562b46e95ae018b460998d0cf62b80fe849504bba798d4477f889360515e41098e8f28ac34f6121704e1b1ac23beb14bf8c6171569ffa3ac86a62377501d51a2dddf7ae874319acd1f97af81f3a8922fcd2b6cf44b6af49096c4702b794baf0b681f9be4acca290d0b86e917e031dcb29a0da254bddc8df7e53a6a0c9bd60541a0e2cfe039ab4d771913814346ecc91caf4634c81bdefb730564fe7752cdc8019365feabdbafbf0a67f8d12a01e004799656f0e545602cbe0dbe73e2281fe6278d9960495f7adc331eb49d5d59a777efdb575718819622d2c553e741f91d21d6e6e77228f5d8f4e422b777f1788121f4d638e06d6baee513d6fa7f058c47380cde62b7ecd5a2f3530d1b102c90b0aa10ae1ecb30922341df70eb036a6e3cf17679d1554b087874532b954780bbce8089089ba9d760c8d907a2d3ac5d436d13a0c2e1a4a1c05fbedf5c6b14d8148d5a50eb03bc62b6cd3df965a6a02775f0a3834e772751ec914e232cc55ac837805ad8cebfa1c2834ac1697d1ec44c4870aacd9d7be93c6c28980971ee29feed52a9fdd37b14621bcd678e429f2068129428ab1c5af1879c1f10b0498beac33a2173cb6ec313aa39b013adce884aa4e0c05cfa7b00c8d0a91cdff924156afb1ca5540532bbb277f95aa996ebc7b2cc045ccbc6d8eb885090913ff13bc5e5841946b36a35de827e9a0239187418d22218bf6aecc7af6a4dbcb911db71fe7685c9a057f0daab0c0d3ca18f54ef7024a391ec830b0cde49788e5744622e18f9359f9f4d7608d2634d926f94b0f4e14c3cdf6fa9e2303848e3d12eba445ca3ed538b0f6a25c4f2be2b1b94dee8ce8cb4b8e6ba2c916dd4e58f9efbd02546f3cfd06ee51a0162f71c43bd7109d6e1b49ea03c208ac7e77571bafe1bc74f68c366718e94c2dc4c9dc25549d84e9a334ed014b865a72c0ab8f2c3a48fade52a88dfd2aba4d3b07702aaa9bd6895dff9cf5559acddc64210f10ca82ecf9fa802f8dc40a1357342cf465274545c4dff442518f48fcf74fc48f8e0f1922b5bb1059e97ad229833091e861ea7207fb657df158d29341da2c2917678eb73e2cf3f602e48d9568e21af120b16756b42cacda4407b201465d0f6ea3319745d3e5f8e1a0375668d9e2baa0c55f608139580995f3d55edaf7c48f340d6379614a74c6a58602403f878f4262169c52afdb3994c77b2a02e53b614b3c3638b92efbd75d2437de7d571ec263eaace3973edef6ef409381c892789f5e236d09e96bac8e86f1648fb9b88f9006b13bda456276124a1cc1f8604e4082336191e05e9922cd4cc597bd6eebcdf5a4b95e7e5d7a0fc2f3d90a8bf370c5cbaa6cc5f6038a52bb6c720ff4e5d765c36d01bdddc53258a47c2a0fc8bed8ff67b531b485ac5d77c250a2bc403954b6bb7e706476c9ecc1ad866bc129ae9ab26bbbc50e352f5535499f736e695f0817c6e709ceb3313fd9764c3c037e340823245431249ca47d8493bb56126c9b1352a2006aabadfd6eac82ed8f958723811087b9226a271b6fa5f213009239d290f7d3492f2f6cefd5b0ac9da4cec38c454838eed10f0799a43b4a59013d4c145ae18a6c4a1fcd309450516fb6ceabde26683dfbdec383124736912da6ce59f984b935613c9d048199e1325d2f41dbf9145ed2f71fca3038b54da44943fb091a6df0c07aa399e380bff651b38042843185af810affd25b1af9abe350f040338d5052036313d2e1e45a46a33d1bb9f93e7ded06d2b8e8191346bfa2974631d55df90b7925067dc273ea9993a250a1a3b7ff28ae250484e8c640782eace5c01d2da8715cf1690cdbf757c1c730495155a5149e47f9ea802c4c712ad2ef525ac913046ce81beff57d2309ee6e769ab758e01eea5f23ba681361a2073eaf0608b66d208e555ef1701c193f15b318526238b23ecc2a2812bbcc79b6a532f792f29a776a7d8fdfb461ad46a04edc6bec119429d0a31b70831624ded745962ef32156035803977e24d50bd60f8261a16845c73cca8d69dcbe599748a169706433bc9fe77c42eba0db60bbbd13c2c0391087b14eda73252e7e9a1abf2a3b5c40d536a3a1f79aa1e13a5289b20124e8b2e69dc02d81c3ed2fca27c6c6c7d51d4df1c3d76626444948ac656011d2c587df607e8a8ee7604bdaea8073cfbe699d6833e30e4334b870cd05b6b230e0e572bc21d4c77370437c2830b726121f3ecbfd40a196c9aeab6bf4f77341103a9c88b329a0191d68676e9076b851203301e900620b4350547b8b8095b04350be1cdfdfdf98fffd1ba29707d3a7932c3cbe120a81db3b837eeb4c1c2d6282dccbb680d0e481c12cc060b17710d81e9cc0af092081e89611cf36d16764303d01d824b7f26aa6c22f864192b9d5b0cded5405dd1bf1fadbdcd2f7c38875b426296194a85bf1bb9c0c2bfdafcd809c8ead3ed48cd364e7e1511a840680e5d6e705c60c93c62904e3d37b8739c2811130edd2fc8d7c8055e1ff201aea3eed2695d0c47013515714d82fb7c3eb74fd1c9a32cde24f5461b0eba6e514b6f12da7cc4a815c067c0bba4763d1173896d99cf0c3b04f44219439e320cfee30597112e43ee768b7d57c62b0bc77d9e6b86f3e0c953250253d7468eb13ae5f81a4ae8c991b43da3404591b7eb699132da64bf86532a5b35201a537d742b52ec592d1674b604fd52a12dd208a95d056fd4b1201db7ec322c9d0e37a11373873cee146510b64903795baf9aea859770d23c38359fb9d68bf397c11dbef78805fba530cf3ee66bfed073e3f31aa5d54512b507bfde5b54c67422c74ab146474924dfb9c2d7cc59f7adcdfe5c4e7f3a835e4ffba04be9d7bd96021f65eb31777e62b2af40039497a95d8c318557edc92580936f270396754c258d575f5ed82b1ad27d3114ffee03ba271942b8c9f5393f2be33cd83801b11175bf711996da06bf1942112fff7167025e7e5f4c21cbc1fafcd769a8fcee4f1996a4614f6e523593826579270b0277041f7857128a156bfdc9efd71580e87903d6c71869deea657eba4dadb3c432ded14745ecf05610b199e24964c4309af903e73a7b4b46ca45c3dbb4c046219d82471c3d09f2f2a27c88884f3d73a1f167688099a9671bb45ef9fd36b537b9fc5270df21216daa12c9de01b46ffa2b331645d3320e1b39aa27d9ca6c5d72cfef6b8f6721a7f368bef3e9a70b864f1f9b01d1a684a74ceb1e1747cdee64a27ee8b02b21d896b654055b39ccfdbc3caf47091efa847207af9788b1e1cfaa321d2d6b9034bbe8a769d80716f52046732be839dc6129bd4ca45e6f6c6453d5108e45a03950c67b2f7e3b094e78d6a0f05edc26989ad0460a6a9edc044c3385e8cec6bf6a5c395a71030e124f314e7c7f2aab8e4cd6818f2e89d53cacf643555863cdef1d1484fa551a1ce798bd150484d3c31a077c5fe353ebf4f0945e2a9eef8b2031aa95d97915d438c2af667543f8de947cef5ea19e189f8f83572da43c1eaabc5ff952d0f4b37781d97ab448bb026b97e67034b23556ba34843db18a22ac891270441bd5ba6032a2db2015c6c377a51eaf03e9423d3a964588ec6115833b6d66f320602ab2fa1b190e977e9eb385683c98458bf8dd052fc144e1d73b169904a73de1c0a822062bac78dc0872638a18fe25c13985ef1888aa57baf8720693191a25040ab5fd3af2967136f61468caf7481cd6fbade304febfec46e1e8235e36be7c7670e96bfe5d847d064d5155d2cd7375b03596a34b36ae6c41fd92b5ec07bf9187c27ff23f31219cffc564396fb765e8b62833e551c4ace0c0d4d09d0faf434fc227a063a5c0743b11712eff448e63f3384df79c5d616d490cd3ec3e92d52c998f99eb89c5b2552d0b68a9f184c1d2ca574548143bc4195991894657cb945a742f3adb003d555225dc2ca5b3dbe7594212e9775a077a798796578056cd9525911e40ce88f2a25f3db5b0f3598f132f4430fd63364e8d56f767a3494d0eb3f44b2fc1c3f4f736d198b1df67e18400e47863e8e338638b08ec4dcc9b7ae599718cbe7024681fb6155dbe05564f125dd93309e098cb211a88e9df94f1ab06e17c2e7849416c142173374b70a1fb58580f79c91396ca2bb05028967893181c0c77ef0a04e2cb5512ae675e5829d5fddf0e583403b474344cbb5d9a30d0224ad0529746161dc94a4ac40af331c3822e98abf6fcb863db529c16af26bcbe0cbd5bfb559952c7a17af1adb1dd808a562c551cef39d9f38d0ae6027345e45abfe6d2bb87833e2dda1c4c04877b258b163da34a3f42f116743438964c27122fa966a743928b91b8dd288c74b639ce9934d6afce7f5d52127e42cdc0a364880568e5baa58c0f028513ed518a34e0ef6fd1c22e082bcebcd8c70fd79e110c4c94f0f25b15ea7916e092f44f080f7323024fc7cf76a7d30bad56577a3a99616b04acff7f2bdd063282d16327cab1731f130f76a53813be49f875196e8594873e35ab7bf50ceb720e90aab6f3f9875b29327aa80757d6ea6049095e55eacc0803f3c5d3294e7b8eeb2251908c578732bae6af6ee5810140afef661fa23f729f5bc90d8fe25bba4ba827e0cf0910bdfe8c8c7a72e57d146606431f167dd24cdfae5381fdeba5d4e0037e99610ede860d55c89a01f15fa7b240602e16aa09718ff183d60733c44bbe922a5b234d11a3e9b3fb38994e054892a17deb0b1d220a1944c26108fdba66e14864dd302d856e135c44ad1294d2e009a963fb5022c5f998b1b82622d2d127050fe51d7ca919af15aa6b33286b34174dca1e4b64e563d95afb3e2e9ac1da879929e3a87296f668c7f563ed32482d7ac490d6e33707089e35fc47e53931dbf2b735dc6c5c2526556bc0c2e9cac34e510cea65162960691ae57ea434d439495a4961b5b3ed4fd7a125d55e46f40353d91cf0187e0b0434f58a2f3de4f304b984c7785674727d3dea60eb6f71c9ed025c0a835fcf591ac999f47138c51c1e1ab187bb70b556958a4aeca32d75f52cac71fdb5562b278408b8ea6e4b44cb3e5626114f40e6b5422d43e33d5550c3c4a9815b386ce41dbfb8298f97f3142c135328d53756593e172f0f5baf010e61977a56b5354b345d0f382b60dbb121fdee98124876beee3e88f9dd697bd3129ab0fcff360b763f4fbea624654ec4eccf6f0a00348de6df90b1fcf4252a409cbb1b60fc28fb39d95ec203c2a721a98a7fc88c999439155a43f3cd278d2260d549164de88b9e83b93395e38b18e8881f63a6514fd1cb52303086a859dee6b45d071685414a868fc46a75dcb1a8d454a671671c3c53b9837bb9d6c69cd40d15c89075d496ac39159957759bc3383574c7baf5f14189c432d778e12f143f467b1011fc36b61288058e59cda5326942f431e200ac82ca9d3a223ec7709dd3471660cbd8b0ef3a25d294200171aebc15057712b219d3280e75713831c4f5e0b4aa19fbac8f03d5a3dd5a0823dcc36c980f1cc6d283eae36fe5ef9643d459da0ee1f78c59cac73878a9103f6dcd96513caa70505e508d39e0a5f0c63c5cfe74dc0da324179a06d910fbd944fae055680417e4d4a7ea78c7f9a22d317596492e84ef801735d0c820ce23d00bba44ad7df61a93a78168fb3cb9381fa4c97a3b09669f886245caa303e3837331aff979a2717d689843482f417240f709f86322365cca211a617c0a03cc601a52ec80a92d111563edcb314b11c31b79a18e073a6678b81ca2651d26232effd00aabf91de4ad2371ecbb7bb0f180337f82e7e78abe51451187256f3bd3598d3f42a9639056fc4e75b0057d1d7972e987e3f9539822ed7ddaad10fb85a21d51904fe4222f22545fe093a7bdc8472f53bda98f3c44fde6f58d4a3adfcc5eff73006d13a4fcf2b71e7152f7224507c3d727cd5f0fb1d89c0efc7632fc71e0c2a3682de2290447510dfebab1a15b914badcea527d421c79e87f906619da3fe24e88245f56dde2ee413ca39a048f8df920b0686fd8ac0ca516c3343cb9ef9d819b9002b2ff424f97b10d703f30525c5d733e3019dd2f154d1002a66545a1e474bbc3d253746713f8a8c41e6469efca469aa7aa9db48c269b7419db803cb890392f4bf0fbba128facbf1445d9d5f1bcbc2b811d4e0946837b26ac668bf6746138e40ac46a979e0e66dbed7575e792ca41b87601316d1db924b89212048e78d3d525b5a658f2b46706607784c4b51105a583bda20aeca7218e2d45bd3a802453d68ddf822ec1cf61849d7cb31f12eda1de2574e8ab28ca1a5b5baba246e659b4f2444b126d60ebe0575b3ac87359b4b1296e5c51b10fc388c367bc8e36fd2de8d27dc4a60e57122a2fead1372dbc13608536a69e52eb6447bd0f481a48e07b3615422f9232f61d48df5ec8f30ada65e30d0b84a415a602966e0134d052a240b6efbac2258eea295bd4fb025930e7a9a3c2e0e9800fa1ed67962ed0962a3fea6e584b6fe30d23cc735551453ba35856eeb1e48f181f13eb0d9d3e72c5d31557b9e5493a30886e60e89e4574d5b2666a90be18300920b080b233a035fcb79d14e0198cde002f6598196527fe326a7542df9acac0aae09cdac67ecbabdd8cbb4a4a77452a512f38f1ad6ceacca2b6c62fb78f2c293bd7a8120186d955444437f8121360c4171057fc5a558753ae65fe8f0c557a15cc6bec8c65f7848339c6a8c0918ab39b45154634a75f3c1b7fe15d92a244f43594d82854a133a11b3b0dc89d83143b4aa71510565edebd72fac87a35574c3e6ae6df08b11623a66c9ff7260ebaa8a5889633c70dd92d86bcdbc6497b62a459ef5ca81cbc3697e10884e1cb8f89b2359c14ca03ef01000414d7f9ab85b066fba827190f83e8ed9ba45ad3a604b15b576e028df756149c392fe3b672c6ceb37647373f168281449a43bee24cae936659bec162c2fc593f9b4f6e95ea1cb6cb244d8b99b9a193e4e12e80d1e97a60580f13f4ac908f59204b365dd8eb9977501b0e536383f6a4c2c7758069831ff914d19c91d829819bf78022b0c1cf04cccb7fda878349ae5e2337f638bfe0e485c8dc4fb6b7386731db8a618c4d5f66d97a1839fc4406827198a83a8b10ff2b77dbbb1610af6f8bd4c25caaccc350aa66d07902acadf6b2f022e760fbeff4873d05dc8311863cfa7d11b4edfe1ff9727d433c5521fcbfedda8b90989002918551c87347404aa345833959236369145c54013f3c489b7e05f445c2d08e4af669be6e8fada57d936dccc534a43b167b2afd649c30e2a4a7c1bc09dd80bfefd22a1bd942f8e6d3a188bb7a7d568fdf825571a040f8055e9e0e3763fc5c9c6170d0dc26bce4309af376aae8ae7761b8e0d1990244c12f1e9370d0e0805f88131dbde9be4624954201b31a4703fde1705245f9afa4216d3de4f528355ea813ce869419a1b9ec564618fee0add247dccc334eb6a3ac6bc68b2b996102908b52e86434312a73fb96eab12475364b5c9194be347267475a7e1ac86a433630b34016aca0310e69e1c02e794187192ee91a642ecbb27475926ebb93c909706af877442af5a958fd1fe53222c60c58256b038997d05c23ed578a0f4748518a9a681b51f4d77e14d1d0d262fec70f8c22f18a0e7f80cac9f7bca3735fb9e847764fbd6d52bc21615136829c168539364b351e997091d4263195841e45aeaceeb535802e246d70f033cd67261391ca0035054ccb637e1a2c771e6ad143553335b9261ba1d145122e5d0230ef1e7ca020c04ad7736ac0b34084e24d31dcaf69b5bd148c812940f35fd11174081b18a37fe220d17982699890f6a0ead629a26fe85191178c0f642a9f4c9302070dfd0ecd8c42497247ba75e0d8281d1a4eac14a1b9c5c605aa047785fbdab6bd87dde20d681d54b6732e45bbb1bb1dfa38927cd644edea0cc0e6705d2b1434d929586d29ecd817f6b1b07028fdf100225581b07615e8b80abc0b520a1a67148c900e6691452ee9089c42f279d1e82b98727dfe3867bdb139f78c92a6666e7045c11f38555b1594e64af77582af8f9305c7d316af9817227307e80956152044c89c6ce78aa3eb2187390f30a08bae86d5cb94958827e3e7898b6c353d594d70642d9b60cd378857e769e9f938ce80c2d642b5a1166a08ebfc383d58c74226a387e0179c27a636ae025bfb1d5e8727b56dcb54865e81099064837802b04c9a642e385aec0fcd2ec5a82bb124aa91ac3be5c8ea584a3caaf15432e167f59fa9c0cea23a1fd5708f699c054a67c06dbc6261415f4f14e64c728e43071d0c0aec80f4232b0214180341b29b1ffa88a2ab545db85e53324b62349f96df580bbafe02ffd88e2b670d8a8260f925e86eef82ce92d19f450b21a26343cc93833e05c13138782f55a2a3628c721b2e36192348c75b181ef104d774e918503efe10370cc06f3fefe8acd3d0d7c7ab08958ae872706c669fecd39902704871e47735a0d523ce230d5fb0387735dae0cb51a1f76991b43afce002307e057fc2683220bef8a38077000e7b2cd28abf14811ee359e3397e63028303574d77a81d28872d130c209ec4590221f92d0a76474b8df1caf5b470d8044242b4e3bf5973275b788188a6ef147efb9a18063dc0b88c8fbe6b5e1034af4babac9a2b50fabbab58c73580c49a5804a59258ceb6d6ac147016eb2f89f076baa533276ecd087959bbc3a5fe33348f3a7242e60874572aaefdb697e2094ecbe1f29b21a12c3a5fd3117667dd33b896dabbf9f606ffe2522aeaa4367c38d3324dccf17625a21fe71a15e3c91891a20f31c7ae76d71f120f04a087af542b5a586ac5c5c64eea70f0e2c3c6cd8db1106def0f2a53809438d9e122103412c9a80404a8fb900eeb6ca3f0a8b6d741f25c66c09d90bf93b9e8a9712a8444b9acb5f24386d07d2269f9587d42f0b82370200904265845c0fac51ab0e4c55245192cd80c69ad12d90786f735347c6ceb14f0841f266df2bce7c6c040e240898400820a22019056639ff70fbde838572606a75eaf3bf0e66ecd1c045a925b787b152f8b141f924cc3f0a048a6314ddc7001d6450a4c614ef833148a1902339fc5db6407b74c81a62297350f7076b7cacfc08d59f6c555ffdcc775e95ccb427db73353b2f2f2dcb1e92ba4381dd88f2dd104e317d5240e083f49c6850702286da356ec408543006295ac588694eb4e584e73e2198fc072a32416b5b459af2a56846cac70997932c2bc7a3658d8c3ec1aed26aa76d48b1274c19be0737ce4472f01f1b5e5df0f548047c9e1d6c1f54d36c4661909af22c383d23c7c056d6ff0152eb6ae9323362968c95311194d7ea716c8c1a30e919b3d327a188b5b3590520f3360809de9f1a4ecc666a74a4911b5533233e6f4514ab236b68232bc434400a31f22920f195282d8b7f886d82c1eb4024e45af7f47b2e90ed10b68ff88053d27506a384900593009bcb5f0dc12ec5947c4872a4357b6fe13867b47e3f705a38665d47c7aadb8dd33a761a87299f8a2959941aa598c679e8d84ec22b902e5b65db73a53cb6cec5256cd3bac37b83c76ca5b961348a4e441e4ffdb64c3ea130798c185f6f497627c2d4726aa40023ac658a4724d2e7b927d9712f3724cfb761cb26e480436e7af87770219ac6632ecb57d62c6dcc35f82d85e5d692ebd6d7454a428b4a1350f9d89e84df277c2968d517094b59e864426fdca402c0d7ac023fb6ed41347a5b3370855383d726981b08f0831d6fe341155ec5c99609f39959e61dfd850c473505f020d1ebfc6421846f91f9e92b243c6df34f690faab175ecef9ab8176e7b4c7fef88012a9537b142bee2caf44a73ba857c3d61ebf7a3a3e5d4ac7bc53ca7bb70406d8ec7b55991fca09ebb933c9b692baede7abd1ac4d6d3e3a8099a4c4b8d07308ebbf6f899d7828f863ac8534e2e6eb05ffa05582ebe099c34fa2543180d6b12c38e184efc528706ce054f4d6a156dd8d2903daf88513f3a3dfc54d6f0e0d63c527a56cf9e2093f3f848545f005b4d8a8fa70f821854b96d4fe52c133c4cb31f782246e6bded8282b2acb40ee3def375302e4248969f701a7a03040bad3e8872bb5f9a210a72d7f684f7a8199838437601e6d81d5091c998fda1a45761b542699488a06585d663d20c7fd066cf17495f5fe7d8ce05fd09954f9cb72863cae5afbca4e6d1c091187d771f1601b389bf22b40b4fe3258ad1478b82e57211d87b92949c8019469a84d3cac5554b27596126a31b183cffde593f8dcca6a5fd9c3ea56f6eeb7605795ccc98888348ba85d4831d6583957607b2df7ade0a08a85a50c9baffe1f048257f401881b05e2e8d10e534abf64fbfeda26d7b809238dccb57615a5a480aad0485faa151a46a18ab3a6cc9bb22fdebdcba5f97c01b2693e8fe1e85268ca067e1053dfb755e600821e3ef450b74081329fada64980942b00c3fc555918d19f6c7ad067c829f65a0fd9430fdfb67d5ec2d2fd7a0182af6f23b89f4e706c6ad9aed1acac16f30029cbd3e6e17e23cc186db2d4ca97db1a9c58dcdfae0306ecb179bcaa4a59fea2eae43fbc70952e44021024222dbc0e3b2fdd9c546ae23ba3930b0d709dfe7431ad2095a96402382c3335f96ca6a143b1ac67ad3c820c2e7a1803ca904efa7fc19f75371451c0604d21c15787081a78cd8568bba939e648d6e8d85378c61aa8c0efc343d33bd4ebd27ebf27853a90b147c6eeff8a3d252efae34aad6466881ae0c6b53ff3cc800477f0ffecd62200f9f677566186a7635db673130c06c970ba7120dc305d1fe4e269df3b2c3a3d2edd2734a5ef121d750f7e3325750b9a3aa5e1053d1a8002431461c73926a309fef14f8bce0a88c86fa91cf4089c0dc6ac4512e410700ec5b0fadd4825172afc9df73acb59923858d45b40ea4aed63e5a30df2273ab9f6bee29af54f66efa7d11b34b747576c03d36a32df9ffd0eafc45c5501bac9ab7c8146ae3a42a6e10fdf60e746a6b9017f6894797146d18a1aa3a543b3e7150fbe975952969d9974c19470c2b88599939ff06144ef578a90b7f0eccd03fc47deb8cd8fe334acb281c786aab28ebdf6e408c972ff0429903cbd222a3d51df1ce45f642b4e81b09d52956b6725f75ec67b313a167b95dbb2a9d1e5baf491373293e7982e2888b3a28a38879c592701191cc2c58911790c9a218020c628b3949255efd29d409ae72fe874aae65c057996dd38178d77cd81e6366fb8b427962e7f0d02a36555ec18f62cc7379f26d9e5939ebf3e73276d7b508b06634ebba2e95fb76783a304f9cb7ae96cf8905822fb9b6eb7d84777031541fdcfe84e80a5989f880e20f7b4433cb94e5166af28a2a80726e5c9e6d7f3de67edc21e68cb12c76fad1ff17e44c48591f7e35157686431e34cf4a8b7f37e404aab7e2634a36187367521cf7f5716701c89746bbbcdbf4054d8a45f6df65c3d88ba145ff0233384ebd612132a1bf76e36baf991eb6691533f88e3c858efe84b824315b2930b55cd874fd8eafeb87a9852513f93ef9a6fc3c12c090889d06c40494c9680b20de073d6867796f56029e5665c688cc47f78193a9ebd95d19113089b6f4e0fb73192e76cd9153f71167433206cfae66b08a17ea011e5caa9a5c830e1a899c62553473a5076948e0779ac930f06c5d0df6c41c98e9a1c993d7ba447cc8d2076f45531b1bd3034cd0980df3db40e17d550875c0807eaf58840ebf4faa4fc5b91b5da80c026c5f047de9a7fb73ef860f50321dd423b88e6c331c9958d5ae68a79c73dd41cd42c3f23b00521082273b9f1d5fb05d2d73e2358f427e3d213073f033bf19438a43226f116c75bba880dbec215e22cc1e5f9741c5bcb911b64b2fda33534424fe5075af34b4b679fba7289374d4aeedddc4180d406a39626bfbec5274951a5cc369bb903daf2dda384def0b1065d8cfc048d2aeaa9a9af09f46883301120927da57e67ac2ba1318c4e578ce00a779b3d6643fe00251434a95e6d77ceefe1965c3972d4b2feb3df9cf5718b1c617b06c4683ccd9f86e125aff1fca941d54706dee67a4c9dec6877e58ee0a466d9ed8aaeb51b4412876da384bf9c8b125a06a6afe3c4dd646d086d14b25ec012a6375ab60a8bb84739b47d8a7c008bac360c93e95ef4938c83b403c0a0a9f4248f269e152fb3c3a71c8dcaf43d4656208fcb535a03dfc2ad16d6b2d73ebad6729324aea2dec7576e3deeb7cd4b7f336080d2b03b73588b07f0fc1b29a9006cdb11efa8ec6359b7a6a15af9b586c2799d6d45a18a341e5d2383ba02120532f4d5a6207074e9beb5b5be5c121ec3e1ec5462dfc50b34bdfcd02878fc197141d5f5c1236fa0c69340ab7d4fe3e0120d3b0fdf15b0ec20632b1f185c7871f112133f63592e958943c01efa3c1735020636a4a7b5e1a9d1ac1f029d953f62cdbb5a0c44ab38320741889d7d8152a6e7269fb3ac30520dfbe9bf6b82eee26b012b74db310e941ccab94e5ceafa615a1eec90805388648efd06d3231ac7c11ce9089b829dc32aa98517f612f153873668ad1e6c2b20b0ecae22423c4599222391749e29565a25c5992f47a53683fab327fd45c5ebb2f62019184fe8830c9e0f87444287374b081a0dc70aace01e832fcc3affcebf34021cc6c381647beaf3b739c9a58d964bdb86338486d50a3888c8d2ec6e4b7f46d1e5a3daaad855dae558ad642cce6e5a66655f603a145fe6a0321e297db633c4b6b59c570313410f2445db8895a7710be0ff950b09313cec4623bc00791ee759a6f9c3931228481c886be1f8714e8a17e1ae6d65ab82903b967120397c374f89c40022482affbb605c7ffe4360d5b09e93e7b3983b461d5d519c73531fc3260380223bc5f4c14a968ebc75fb78638b40468ff12b34cadc6d3dd3120c2f73e127a254cc50c23eeb4bf2ee342d5997c06d13b132b39580450860f225d0a0e0b633c19030975a906ce480313404d0a1ad91cfca79af0d5e31156fab7ce9836eff0e3530115805e6b77df80cf2f44aa8f6f19f3d145e06d9a766e924604eaf18935584c4d9bb892770dfe43235dece6079930ea8dab465307af1634851c9bf46bf177719d4cc25da8156e8e1d961ab3f1ce20ef3c9c96f58d8042b386158a6046455b202911faf622f9e5303e5837c39eaf9f29acc504e3bbe6e0bde1ba6ab203d29f58b799f1438b9b083fc54163402a7b425725fdb237693dd2001ae35cda2804dc5de57ccd1caeca10abacb7a1b46392ed6be519dcaa53c2f2db75849cc3a138123c610f3f29a4046408cd68cc464705b5cf1f6ba4de4580658ef4e625dcef374805547f1550183665b648adc964fcda0d28422096ce9fe1427e3c98614cf2d9041ef32a183e5e0ae3d473c48960720109e4014bc434571b37d2dcc60b8877273f3c297c36b8c7a909e2f764d5c261ccc4ef17309f2c40d201aeb7cf082013dbe65ac125a9952065b3074750a0c809af467267b98efef35eada6b6a16afc6be4101a53eea5ee0de1b05abcb5fedf37b85ab428a966099738eaebdd8a9efc4a91694540d8a18c499a42b5f98bf0e4125a4a3934f3393f189ac0c0e771b46a0622b26acba63cf0971ba2b936c2cf6c20ebdbcad52f6b610408ccd90479934dce6b3e613997806116e604108d0611b7d43ba57459ec33fb264d6ba919fbdaed413f2a2a924406fcee5858bba6e24b6b4325b361c0b76d0b1b6e5a7c2eba83224e73432f405c0cd6db332e501f8464e054bcdf1ae7323b752d8a680c48cb7c4d0d15345f3278eb961a737ec86d1e956982f38cced954e4e8f7584c684977d0fefa4d8206437fc302b602954da868c6f8dfd3c9b78cfb6e884efd904f636904b83d06d84b5d4cc34bd7fea0088681abb60551c1e2ad3403cea63eb795f63fba7805d1e943e3f38e2698ae313ce94f60d82ac77ee9c045e3d46aabe18a66824827ac066835cd633d4558a33a82e0fcf91ca994f99cf885fe970f3fe01e2f6c6861f66ec0260c7214e40ca2aee099f78405899c6826693d4ebf4820b9de6355c8e54042f31982fcec2396c6d6311ff615cf7c238d0ece89a4e43947e0d7bc804874b472e960fcb823fad8254e5c107b718ddc517ab8758286af55543eceb9afa55631554216494880a141734642f78b99a48cc59fdd43e067caccde2ccb0f3f515c4d4ec2261131dbfdca98500dad0b1269f09efeae6c9c03940bfafb070b9bd3f4aa1222040e3ecd7ff56fd7fad06b95a59d126df8c5aa2105d6894cd007c2b0edaffa141f7673e9707ef5bc5d1df6c13d22bb586b0f5160d1794f14dab92c4add12f25f50e981586a604d8e37afe8107d523737cc978fe3dbbaf2ad7993359d2340b44d0752242d155bc4cc7876b3acc0a81b44191a5b9cb688b6120e96d520a996e7ac6ce34e3e842142ade235e6f7d995a0a8f6581726abd0a34ce67a66580dfbad2350b4eba0e2dfbd8243104fddae06ec264c390f322573b3f0729f6d765949d0422c12e910ad165168ed76b1e9cd5a2af106c0390d62a3c2cf212735cb2e043bd25f3298a6cb0a8c5d4cc9b6bf3bee2ef5a9c2da68c1fe0bc303aa516f8d7181686c250c3b6598d1271350b5a104b7c955e0b8bd75851a352b607c99358d8af1a95990b50a7bdba1443fb29b352b2737895adeebb2b72c416fa83bacb27756526e4bf525000e3eaa21edfaeb0a8c6a9f532691ba26ea4023a606172201690b15c6050eac5a8358513a86d99ee7d414df3f5a57d73bf48e7c7c98b2e0a8beb64ad94473a7ef5b5c18bc11b5528e8af4b7bccfb08cb09524d472ff2383143b9ed3a2287cf7ce6b9101d105df576b41c97ce5ca846ba97a69ff7de99e77e3011c839624f287e8d74902515ed297bbeb2041c37039e0893126d12e7ca8ad3297e344fe262e29026a7d03adbce43d12b4e4cc982c215dbe0ed3fb88b3eab2c33b9536ef6cda191faf44a35e579db0d20e5901f433b4b426131653d6bf3fa452fc0fcb1b358af6da41f11957ba4bd9c7cf178100387ce186e39bf399dfe6ffb5491e60c70a174a64c0794e2f406d9de15f1d5c221ac97ff547f650c17398acea9043c21c2bc8101812e52ab1b97d416a9d140daed7577c44124cb24d59849db6d6a0936f69e6aaba43bb50ccc92fecdca87bf2b0a9269286036d2e3eee7fe1766a9ea9952a7340a818c055446c55153c73a430f874d5c3c0059d77783d68c974af56ff9455773f246d59b7b191b12fd1cb0cc613b5281e040374c0e0c0757eeb7db7e19f65420a86b6fbc146a4400fe1bf540d898025b666cc2a65c07da465ae12e69aa356a0e8056fab22c2d2c19de9188e567e524b5edcf8a62850fb30cbf0131e80824ee01e5a8967e35146f3cd4b63a0b5a3da064a14ea903c87167dd9b35431d0cb6935bee565fc4dd0520d606f173c38ea9dbb8db51f41f8e22e3647227dc73a304b662082ce9d398bbed32919558a19ed5d0904a8b6f270bf28440e937accb71a09adf2d26faae35752370d043bc19e0aba0454f6d88a83c47c73a37f0abb8e7f54d22746c4648079c303791ecb1651196dcfa9c43d5d0af266e5201c50a72aef734c46b9c9c2f425bf94fe042894fc05a1360bd58f9c92f1612b424838bb97ae541116af0b2836b59eeaf115a767a65f7f4fddbcbf3f3a83913a5122af337ccd708862637990212dbf53f6e5a9eaa8f18e993d63133e61fa1ae2e30b3734c79714bebea6f0b81f542deb0e511202f4a411196d94f13a6d9b033536b6e8bea39e0cbf4c4b173d956260b71414e782dc189da7bfe3d420e27c670ba049c6cd65f568eaea4463e4cd0ec0f844d4ec7a33e3e7e73503305093daeaccf38d03b048a026c5d5352848bb1adb8ac196aad15a0702f1755c20e409a8bb1856919340216b4bc0e0e5a3e5bd7a2cfe1b927a9a2ad15361323aac04af4eed861bcba67641523b63f025a628651f3c849275a25f4bc1a4775a5dbe1e27d1ab84bf2b51f00f6b64fd420ea24f7f7e437f3c03bcd9c14a8d849fb10b81e0b8165613f9eeb1a03c6e2ee6d9117dd38a580584cb5e7d4b185ea4786804280063a6e46d0730327494069406f13b0b8d0520ede47b3767c04ca03ffa0b31f9ff9c9340f99c4d9bf07244318ed6fee79c3b79f7806bddf60a0763e6a54ab2e2b662cb19819e6b2765f164b34c483bb9cbc99454fa6e686425fd580b46c71bc81b857c240cc2525b3ce2364c11435ca699486ddf75c7638a060ec8fd249ea33ad5687ae79be10490503011ad864a2d49a133c53b1ee905a59a4afce81ed3cea8fcbffa75517be860aa3d14bdc2c34c6443b1c542e83b3690dfe3143a9fdf9501201282762f1ce53269043d5839bc9da4a3aeda9d1aa4f91e1a64ddcae7f7704cc04f412703f539a284fe35602e274e2cc43d93279339973609e31b33cc46e9e8bee69a7f2895155c05de0786a2d32bb86f6823f62fa8fe41f059002bd6708a69f2ee7c9a08850a0ce5964e6c8e9e983edf71d7ef44d0ad7b0fc751c2aa2724b40329db06225269e8c4304f2020ca530306a5d862cbe7d7f019c3d04b219d6e8fad83106a8a258843a6cd13179ec807cc0b8c763556b9d43ca432a73902d093dc1a5971a7d26be4b6cfbb1b8e25c4efaebe49792ea8008630de4175515eadb65fbd608a02d8c88c033ac1018940e5ac59679b6e61021d2fb37f0de2bc027afcfdc745c7e8eeca2da1a15d599daadb626ef2def003b19388ff5ac39d253191f407a13d0ebc137ecdd7500656020b606206fbef2ea9d39e0b13fbeb971aa5ebb482c50baa5e59fcc52d8a3340ddb401f6e8f0d7db39d6598fe193115ece231135a724db1233c563b20e719f04c856dacd850bc87d8aacbc8722c70bf812353342b3f2378e8ebfad64d4b6c243564adfd498d35c5c11c6a55df4166b00b0b3ba44e1f82a0e13e977b3e7cfac3a11eb08e0a6a41e14348aeef5997a46ff724951a6ee6a58689c039eeebe4458203689e4926794aa49267dc3119be7af1f85fc232cbe2c928dfed6cc819175df01a4fa32616a9f8059f73c54f9be0a562dbf10841b8700e2a8ec353d0e37656f5669be765a427bdfaeecb1c4f700eca328097f2f3fe5b081f7d34da2bb06374a49d9c110926860ca39f821f99f6ad581e7e0228186cac50dca4111832bc6202026f5b99719576c9aa7a23fe1ff8d92497969e4e1447e931e5b236456c1d079b048b40864a639944de244c4f37e48435fbe34b7223e1654859a979a01be35c64e22bf79118cfd37cb5fe2e4e109247b2ab829071469724f5b0a08b7f3b340e0224f7d84057d5dbb0471dfe62bf30b79ec42e876b27439301ee398ed693a7681834c15ad3e6ebe351ae6519729ba5f385569cb1b6dab00a8bcceee5db30bfdbe1d2ed001bba056ec91a5e32de2f6af955fbb0131a484bf5a73305895fe0d431cf853c1d74435b402eac9c71bafc6afb072eeb8b4b04110f11c15c792a99c737a90040b44af48b74da3271436765e775b7b07fe1a930990166e98455606b6f4a30e514a77bcfab8556c6a921b99dbdbde9ebcf84d97ebd5a1dcad83626d1b331fa43e58232cd62b3ba73963ca893ca666fd3b4a7f9d03c3afccd3fb5342fdf8cc26406579304ba4b005255e92105056d310c9d80d24d94947cb38184ee4717bff2c4115e006aaf19cea69d0f4db2fd7b1b0f60f3f3cbec5c9fee0abc68f3bfe9ae92537ad8bea55b9bcf0243e06f40cdd860027138a13ae4d903d3a77a19fb0d24372bc472a04dbd1159ed5bc5b642618d5f55f1e18f173d71c08089bc4a6ac65fb3a3e126e7fefa40b3fc26539a98567442184c477da29dcf8629c23b11039e1c47237627c6ee4652f6676295bc8766b3d767e3f41ca7dd1ed9ca6b69584e0189b28a6ebc979b30b3bda1e99279ddfde716eae928a9500660ecdf5ceeb0269ea0b0adcdc2ce524f0a491bec31e36acb0098c9d94b067ff4e215dc68da9515d3baa07e4999d0cca3fc8e2e0bb999940fd6f88983334a391101332d89029c10cf6740ab9f84071723d437911e10d8366a30e771c3a901e57e42d5e8dfb45c4ead8cd32115573d5fe0e926b29144e7302f88595e9096d8f631c859bfeeba8c2fccf626393ae4aff0304472ce4bd75dac71068ffb14bf5e62d847ed97edf23dc74225d4c1eac4e99f1aa2b78a9ad14f4072af0746dd322ed4f6507dbbf8a204e16aae9682c111b1726a594e38556c4f9ff3d0b01f6a4df120bd0fd79e81a2191f0a1c92cbc2eceb5fecd3c65b994ef71a0ae2802e128273db57ff7ce50e8f1137f43b642649e51197d056d33893a446fa820ca5dc023e6c91927c04c6f07216bfcbd6e62465b829244294330613a988fba01f2b8e3a62105504c522edb0ff41f7adedf5058fd07a046725df879aaeebce5575028db60ba5b2eff5bf57e89f4dcf948034a16bfd4aff5d94ae8e5a6aec72ba1c31d8ee19521b3d0269c5962a78e0dff47270bfec8de38527e7a5474d501fb5254bcbe77fe134b4082053de7691c073d7720a2a66e06e29741ab00b5822977121383142e72c653ecf16df70c979d2a761a6dbf826c9a16d09d374496b314f37f4ea3cfa534fca7aaf150295ca53e5552cd1b443926059212a89086d243b5c9d7fde84c1f93c515d65944ce22d0a876f8015d600effd9d99abfc983e0d494884fce8f965814ff843d24fc151d53bf7862a707401adc5e3c255a49a54b80b4fa452d7d8bbfbfc9b1cfe4ab41c9ca8514490d386428f7126df04e498b31ff6fe24fba6626c580acbab3bae07f4a9db87bc6da37dbfb1c1df8667910d3339af4d6931dd079d7f6c69880f5e6924349a3612ad853364cd9ea209dfafdda5169025419832471ff44c3874a4d534682275dfb0d1c188ddd5ec7a33ddae29e88124b9f22398b5884dcc27e0f854b356cfb0282a75518a4f5ceb190c8fdac4058e6cca4afcc8d1269d2fcdc7f5621614d24382064336c5d9ebf2a20760a350ab3ad979beeeb6b344aa50473adf6533600b79a6291d756acc8f7d8683dc210d242794dca8f8c2e1f30470243c3d44c6b0bdab63962582b1de1b8fe1e87b3b0d6c8d4df781c9fcbc87f091280b2b99f63bf69f2181b0934a13c5e26f34044577a5280089285153d2e93b85f3ce4114a427290f6ab7bf21827607e324ed4a5c9aaa1e2290462cc84a661215b2bf9277ccb881124f80dec536553a006bbae77aa56d16a39904119b32c28c48d3ebb85aebca4185480953461b2591722ff37603a9b5ffc52332dae2ac8a0707aa79eb94ccb090109b5478434580a7a7bab61486e6789200efcbf7d986ae4944bbd8885d7f2869a6aada16c05e1ddbfab11c40b53892be7f208f7ee6694bd68e5bbc214a3c3258610d21e5d00b0bc13e07139856bb8bf08f7afd148cadb861b5107ef2b75d81eac6e8010c669e177e96cadb6fb75437819b4f455b0f7d4214444d77b01ba714fa99a223b4f30e94b5507c57d3a4dbd8e93ca40bab4e930dac87eff27bc9747143c8f15a431542b7f2f30ea2ee5207050ae014072b131434cdf19da8e8833f00ccfaa05266c14761705f56724db6a3eed6a36077c2fdeb71a175cbcfa8f4dc33fe602ec93612c307c0986c2d662764269321b084a7bc94c2fe56b6c123e2974c8f04ca8c3783997fdc0b4564958a5813c41641422688319aef534fd3564b066c53d0c0e75c609c38be1c1224024bb98b3c91a8d6df832c085dae73bef36ca65b1c5af0664f065056c8eea14314e13c3a7373ec2c2f2b7ac99a25eb6f8665f1fc84de7a3fb3939a87ee143d325a4b25be4313cab8f49fd4f2d2c40af93bac1ec2ebec35e7cc91322e7a0f1c1f491b80539996aa21da2536bfe2107dd43efc764680c6772a73d5970a7044c83f9888a360f6e10621bdf7833dd4543632ad4840c96c3672b62f94c1fc1d3af184916977915442f25584c5e757939868a5272aea8afb2d02586f73a63214fabd42ea07306cd847df3ff888a087aabfb9d4dfeb0c094a52e9f4eb22ac464c682a6f64ac54f52d3913e93f5093de384cdaa09f978254c0d12a8d2ac0156a8ad107bc4f7e7dd57d8eb8dc2fb9c811d9043202a3ea5cbc13a329a5a7b230d2148a1e7b9ca88c53622c23c047974d75686b798847ed9e073bd9695fbf13921561902e7502a38376d2a22a06c2b435492dec0324e698a8531121e57321c04050bf566265298c8d0cfb90f7a058db8487336cc8cfb65e9feac7f5ba5324d2e5bc1fb741a2680c73ac5ce08e7dd100b6b355c9c09c5d8946a30d582f3d111362fc47378a15b0d09205da2baa03b73b2bf23405bc1b354bbef2eb21208ea465f368c1a2af86713c71264562eb3556a6f5877b85ecffb9a3f6b023fd9d49edc6b4fe11c970ab649c0d85e96ac661baa0731af39796e709dc90c0ec1665c47fe1ccb16af8940b202708bc12e15272541397d9ba413484453b9c059990a10ce186295d161b163ef510b761f6c3c75ee536cb39fb7913466d817c11ac9cd1d5ebe4e0acc8bfb6156d121518cda5088ccf28d79753dd7f5212a7aa7d99aa171b7172976885e2b28efb071db1cfb56aa1711384934386f752ef67d03ecc7871b0e6e0d166418ab885298280a2577ff1a76a3e90276e8f34f371955bc3316c073fa2046fa92ab06818a23fdd07bbdb114a35a55798dcba38808f2ea7147cc1e585bd549dd180a89abc692028efb5aa7bd3b777d8c7c3d19160e0905d889e11362625100f7f073dfed0f91661e9bbaf34a62e6893023996ee03dfa57d8166ff4f66d456a2fba360973459dc169640d6a055bfdcd04906b44f26a857a99ac1931ea9bf442305cd68292588dbc403676702d577342dac6de380bcacdf7c93367ac35a141426b36733999db347734538a25e9a0f1bd488369d6582a4f43c1aab46aee5e191359e87db1caeb235db3758604740c05409a167cd28dfa2be4a5a002b3231949486075d6941e1ed03f40317f3489e1fcb79defec6e1f161ab95a31843769c2253f0923523cd80a76a1f3e065327cd6f2dafe0648087df806baf5c3566687f92a2f4ccd81f129f6d8323ee1ec1499a10890c4c2c9847f25c3e619b42bfb8a2d286dcf84c58e396749b6ca18d89f85112f70575d4a428b86950c10e96c996c42b3407e4faec46459864b253d595a6575e0e0c2496c8ed23941958630b9e7d235a773bbf76c95611a7602b36d3dbd0e4bbef6f0a4d352401d62076f6ef96311a83740d272aa15ff6796bd63c430200370052e4f1807d64cbb26b71f2b0098e67b23347382c94a9b3c91f3c8783e6bfa4e35f6bb229fd67c2c27b9b0086c1075030216adfc0976bdeb4029170c624e298c4ffcf308a7c4a9b7db1e66f9a4fba10787240c9878e53014611c64f034c0a0edcb083ed0d868e8a28a25427398d52b867116c3f51b15b044aac51174970e8c494b136a47421af56909f1feba455687f92e5948e5923dc6b5d093d570b1d8a13af4b393eb310b9aec166f87ad8fa7199b1e4079af19d345c723ff770a1da2349e29c72b11c8a1a42bbdc4601157a92968ea0fe41430062af72bb1243f76cb4ae4c748c4c9c2751f1ea4d0c98b36badaed2a2a8fc472de32d60f104efef03e7cb8a5890afbbfb8d2460d0e55f9fbebe467d41ed9667031bb95b2ddb7941e90a82c1b3e6c9db981313f7c347081dafaf1a3b03e02a6df2ac4870e1b753f5dbfc224c64971dbf85e43162dc5e8405b76aa42ff20e4b773f677b70a69599ee13275370ed8cf6a3829b60e8bef8e7fd8f5c1093142215d405b3c7dda1d94f841c55c65dabdf9d54e88835ee0d73055762e545f8f70e29b36449bb87de6f226ab7964eb3848240a4f4aaca1253422e321f27d17e2343229d6126ee652c54a079e22647c0a9d79faacc118f23f0bfd65423d28c97c204f3cf00924344ba7ddb638e70daa377d71fdb19d69c137209e58b96f3ac63d5865225dc4fea23e1d7d2a24101a2660723f2032a1662edf4bf0891f0d3e590641ea1f983d552bba00449b0055aef1444ca59f745f982d354a33f02cd77027260c5426c4d39f856234ba4e8aaeb5e02b51a0d18ee3ae2bb880f329562e41f3a303df27b767e805bd0d33c2f8829a713dd734ca2789b349a9892bd10aa4aa068f32501c54965aa0a15952148e9678959b3eb36a73395ac1b77bdd04b50e556d0e38ab7853b4d18cd6540bc8aa6c0666e21294e16c32b80fe88d2a111f0e1ba1966f28b9c240284ae3ddfb66f7aeabfb2ef3de0fe434c8e905ba899c93ef84dbdb42731e821f11b10d81ceecfd01be201a057d8eb297775b934b9a156b4aba2d4d221ba006bf5d131515ff2026eb873707eef85b6974be12ccecb9320693a23deb25c27d6a4d6235675459a0893c50340c2b0031b8914eaba2041de0064e1cf5100d3410f5424599b9b5b767f82abbf727fdaf84c44df704863a5b90c9b7f615e7658ace8e1200b1f19a888ad055abcb9c2eee513242775d1303e92f7dcbabbaaa21b2c95696cb0977338f99d0339ca9f53553ead533d374827fc1c23414c92b5473bc4eeeacf460a469000ab2187c24b0c3a68fe670e5542b8bd5798800aeeadc6dd9b8c4d732142e4c0737b3c44414909ade2babe405d13f5b6ddcf2cba9b0c651bd99895a203f8199ae349d8fad5d11e3661101b50ef30ac58cc3ff812cef3d66a00a1a5b3c80379aa37f9781202b44679c89a9a296432f73367eaf3e406f976ef47ede2416f5ef2ff4926a96b845968779039643c3a7b9f34c6bd415337542679c3c3238e137313e5f4e8625613604428bec189cdf710a8bb77654a1f449ad2ccbb6e803c06496e34309a6fb2670d24dd18837a2837e44f19981545ec41f2a01df731f7cd23975bb256445f2df912a4442aa03796ff7376f935b178c3c2d00105fc87d467803c489fb5a7caed71be2dc4e3210593a626647e8c49a18e22003234f2238d41b3999adbfe917da962437c1d8c47be8935077b6e44c52975e6f32064ec2261404e7723dc5731bcab38502905af86243c0f4d43237b3775b264b332fba05abedfa3ae02494a293800903d5857a3b2782f2f7fa9723dcdbc62e6baa62a51f4c36b3703cacf0c6e9aed84a079d2bc53c1014c9d8fb2b544fe79e712c17d302e04a5d6463f1545652956a7856a1fa1d75ff953cde0eafbbba80fda8d94dc90368d17bbaddf97922c3c84226ffdb071b48347bc3c90ed84b72eca7ac7564bd81df261dd6900465d3eb64bc6eca1d8bdeca57c3b8736dd5ccd5605a1d5b5aec5b43b6d4db28231f1fd35d22a4c3083a3b6db68030475ca8692744a4649a2329503a45295386ccf72fe65a26c57ef488595e53d7aab5c38b74f31eda7db567727d5428fe6550a2ba7361736c1c70b1e543a5616a80f57f69a1f8de2740c225a1aa461395bc5d8d058fbb9760f703da640997c2f006b5fda6a0529c6fe9df535129a45a2ec3940f46767265bb0fa9635db20e1cf37de90f50405fb04061e264644148152ad24926dbf1fc9dddc2a3c05cf359ef4b67f0fe2855126de19173433b2b9d4dce85318d536dacb58b83d27424151e14570ba884c1e3db2e891b2c4904e93a042d7dd4e019667e241c7e80feaa9c422e0b1891d707c682b792a74c019249a976fb45ffc24e5a090c090d15580614c6cc421246f1181101f9a666a861e2b7871919ac299b71c88c0a66484a17e31483848a4abb57ee97a8eece95d139baa30d10c6afb7a41ebcdb91918f0d083f73cfbbf34387047d86341d3c1bbf50aba1f80057054838a0824f53da384e46163624b1abce1e6658bbe0ff85f8356960ac7cb5da0678e328fbc1f2503ccde0df1683321770796aef34327fbc9e451a92a9bad4a6db3e2b9e84e5197107c272306a0b58d52e61835d6ff1f299db882f752b02bda2b9d116bdc772cbd5813e2c59b18167cc98d866b085c9aed956b108e59257a9f017e1b152e5f5ade1e17de4c05c2901ec26942f0c58344b84554f5abfaedcf3cd3c1c9ccbda34de3acb95ba36c92f89560441234542205bd81be266ae9380ec86ec45259108e4e499c8a4a9df08dfdf46d6ed9e5e794415f90115717118e0d516a20ba60c1c42b782b551b0cad640fcb8809eb18d86874c280f1d2d591871d8d5e8e1b9365d08b2dba2c0e6edb36dc6223ce7ff7dd5471b05ecc40b85e17c90b98f9770221b97b30d9441c9069434d31317dc913a85dfd82db2ea34183ad970d10e5545ec1aa4692429cafe07440be5468afae82a9188e0649a7f41e1881c6da8bb07d8c5a8d8614f71701e03a5c99b950268b78839603504df553c8e09ce8f0095c1fdf0551dd3609d8ba91d9e7a4911dfdea98a32b1c16567973dcaeface38ce9a2d6a451ba9dae00b57f56ccec69b8a39a10f15176658f6ccc52c359e178cd016b9741c066e4e0eb426c8441e0fc6155cba4853d3f398ff669639ec6bda982525c4623d2108c48d7726d3ac2f71a30dc9cb4fc0f36cc4bf4e12412ba30225a728548ead0a44948cf695deb509ab1768238c4e4cde8c281fa9e079c2ccbe45a357976c107090ae7f39ba6baec540f60651bfd31a9827e83c70e4b171804a9ab1cbcdd582fc2c726e16458e23d7a07b28898e813f3a4c910490a5e57c6137597038828661ac457f148272102bf29d5d9be83bba9a354afb6c70b22cd25e9141d1820217fcc22e2ee496811d8690f08753ce704d56374c4e078e41741819499182001524e8e47ad87b2c79db6da98f2609b2aacb5887c5ec0a71539dedb515a843b50e83f659dff84123620c8aa59155973a01c60a08c412fe70825dfe85fb01c6477d07ccdc969b9849e0aee81554709804ffee20d686cf9d5761b58cfec6d133d6a753ff78310773ed83476646c41c048e33f2c90d208a26ec80930f8e118899966abebec568495dcbc5392c7e339e74eab49eb6565e709215856f3f2d693ee99f6fd4c13a31763433f3e444cd6548e4276dc779658558168e93b6c813520e9c152645c38311536d17dccc3efa83c56ca96dc192cb900f186a95286f8a8ac65eddd1a5801a0b69987a73ce00060f9f25141bdabc3223adfb0482d964e8db7acdbac702c4e04f0e6ab35a74ad0a95baf2e9a82b09f2f7efe0b134c8c6c3fd59d4ad3b57c5bc39c28fe538094e8d89e51ef19d480e8fab22be6587319f4eae4a19e4431b217085a754e30a3f8a580aed355bc2b5355e2aba18720678861595693073566907d1c91d75ed75cddd1cfa1ff8907e517221413ac1bb25623c6463bb45fea5bf59cae90afb09fd486ee00ea53098b3f1246c9366f8abc4f281068d2a95553a673dbd4b3d95e79c4826579b44b0102633e9fa48df4ad31635c7aa603feea879ff53ad06db88460eb3a75817cc53da02f31ffb242ca10426e7aeb8098aca813089d94c2d44b9ce5c70d62d80a2e71d30d40d3a0f443723366a0b1d20fbf2bce47528f70bbc36e909c28e8b9bcd1eb20df19dc26ea05a60a1d34af13355495340bd363e190e1f4a3f2708ec0df588c0a6b8433b0e546f52b09d508d81ffe773728df8348a2be56409e92474034f5b0efb545e723580881052898c454b8d86387779cd47e048c5d14ee645e5f2716d786cfd1cb3881e8090c0c24855f48ce08fb49d2d75a81f3d92281315b76a6e93fc513693572f916f6e11bc2aedb1d8d162cf3993c78edb7e9cedacd35f510e49023b48d89fe2641a252648bb3d5dde423f87e72ab05f980eeb5b0e6b309eb128dba9d68aa76fd31f8cf6aec0edb8f1c27a6ecb3ac43475694525ba19141030098840b1aa3d4918020b265aafd1e4fa0ffd48f76548db0d22622c43f2e5e047ee853965e13e92c8f5de3213cdabc19719d5672d6bd9874419355b3ef3a7b2bc627ad5371a8041d8c68f72fb8d93a46c5cd46e14409747cfde17cf19a719602fd6b2ebf349960200f1d925eff48f0eae6e76fc3637cd11ab285c753b2385ff6d66ec06f09b59c18f3aebf52ab6145ac9592425636af257d346c478948f1caaa6ac3bb9b312f81b3c231af01b40f8d43870526cecf5b58b7f136ce3b8ff33babaf350fb72cd9c35400650135ea62737669204509cd1546e00935a9e650b3d958f814761c79b2f0c5b92f543ad3fba8f133779067a95c88d86f35a13a4036156f47b6c8629b86a24bf9a84e53b1b50b3f4caf53b1b4e21dbf75fda7aba67f462585af8f04e83b89d57c13231bda05f31337e045c523cb0654aa666a1e24f48c15464e855c341090d85b3c8a2ee5027f114dafb7799532dcb82e1e7d3a60f721823aaef1448ecf39ec1862f664bc5a121de91de18ce58199f75721c42b5fdf7b51d6c459eddea9f9651068121e7e2046dfbb66baea66ab26bd2e687c5a726d41cece534a8c8c7436a2c3536c1aeb0cf982753628a90dd0cf8a77f5446e525f7eebab48ea75d84e6a4163789772cec2b659e6805c0a5025ad22f2a20b2e3add2ec0f4c2d968309b2d769dae811ae61a493464b2716884367e7a2a9fe2ce90659eda780847b91964d8faa29cad211b648087d95182fb0be28b4f9342dc06775fc28ba16607450f4d09798dc27e056d5020a82d267ce51cf6a70e60363c866a0f9ca39da81ced89d3d82856fee9193f77ef56639b7d14f1d4256b551583aed3afae5f67b17fb0524094fd6146dd272b8f3aba31f298e69b30c7422339f77e5ad60949516de82e3dc0ea1e0cf77d0cd985bbc1a7744da734ebbf9490ecf55460aee02ebcff000705560be8ce0cca09f5fd0bd6d272ba191af406f7159a251aa870f49d89babf9eb3361d6fdb5f9868568db8b8ec0f0bf6d96884c04cb5ac7ee11904274415563eee753d4d247bf233c794eb7d1dc2671474eded127433c14267003ff92876b0ed1c50a7e9d3c75d16ea542047d7f5e29ea830485325ed540f3e69be4253efdf5f461e2befc0968a571559d789916f7f25ccd2a45b2cfa53543de8a46dc3f5758e58447716f30f550f3f951b954dd2fd8310d7a85c05321228fcd5f5545c6292a0f64f58b065aca83f488593635acfb2cd5d0fb3ce7c9858689a53a4e5120865f0d89247893b52354351b831decce98a717388806891eb3ab1c7cc4a6fb357b8296a04057aa729f873da0d9e25a62c4855740b1c852ef157da1ab14ac6b9ff36809ecd27110361ae57ad61b140efa81315a2cc1d92e2c175165ab7617d1417ac2c632e881f6949a75d3da0ec875ff6c2af925b7e9f8f932e16dbc226e027d38a39fda8baa6d4e39c372a9af7bd4e8644d7e271d3d02b8fea551b475736e53426686364f2a61e9149119e1cf59d6631b609a0708d241bd66524b82e751e20e1743b347b7a3c608abb307af7df93e7d90293d35f0a1da754298b1a0be0825909f67639cd43eada77fb04940c5dba14368c7fa2d1ef83b3b97149c0822e0b481b3b4cf6bd4c8433532631fda4636d0b825cd17d44331b3aa04338eb182083ac54c7acf42f656ebf824e62745e69d5e625f946b425e173ece47d2ef50a1282daf32c7c33213089d195837399a325fa86df83bc05fa7179874acd056d7bddfd6ef846af7ef4265f6962272e9efe25dd2f6486d0e9d20165781528efdd778be8848a3acfa15b8b7c4db96b6ba5df87c6e61164974e4c7a5cd325687fc328660589335c2d61f7a7d1c2b85111d73cac4b6af481464ab77e14cb8986619f7d9a70c1131c8ec0868903fe947e192673aa8e96b584439eeab7de4a500874b0c8535c20469ea7dc69ea67e927ea5040597495439660291c1d50c236afcee1ecd40165aa1383c0a21e48c4fe51e133c03da8c53af3144d901af5505f7dcc7b97a492d7880ac0030430cc0e7f919d1ee25f05a3145dab234b1a6bb91c2b5336d9b521a8502b224246f05b37d5765e5bddeba4806f6054300b5f789779d84570128a92e13bdf41d29f67e01eb6d9811486e2078332e12a72305fcaf21337660c0c5d28692646c012e8ab32647abf900b3c29d6034226f29e8ad69e090e001805bec9a1daf1c92934760cb58464b287596b710194e6367bcb1fae63abba6448eac7137ac66bed8440104f3a863de0304f9e62c47b99a21ea3ad0d5fd5ab220d5cb4ccc26b93c9ba4fb2c12a33a503106bbaf9cbe86a94068b7fb6279e076eeb0a09c330661e2e5a64905d2c72be108d50dc81a86f6ee47ffdf75af7e2e5d4a0342c128f0c48442a1e7c5e60da3db49b5fd4d783d6d07b4077c64e40d4be44a274927774d84776d8e1ce1add278d693154117c7c606c7410bbaa59cd172949093561fee47dc72ff77861c00af2417c8f4d856f6228f9a81d128c42eee6a927b92cd3ca1599f07d9c6e381d8a8707fe775d0bc411f370be985bbe8e7a1be21a866e2269b4529f139b88833a63879cd8fe6596a5c82ba37ed9f1b164118d2a3a74a222c9e73ce0693000ccf7d678c07eae4594aad2de88a71337fa9fe14ded90569b188647474391d18bc0b17c31bf8c18093f6b76655f900b49458a13f451478f7e0ff509d5ba69fc8013316d2dac560427d5b0c0b0b95d84d1c9f21708da4b43ad4985bf09d8e2a6fb9a36a724c23b9d05542e5adbc23df0225bb4aa625d0e385c2c0d80b55a7a1deeed43f5a91a75c06179d2731cf60161b751e158511ae9085c61ec6f75abd7d6e468ba77929bfae14dd2fdce47eed15d3c5a266626d7c839f9dfebdac5014a40011581db1b46ac2a6443c2d2c3fe31f44317aaf1598ae647e9f8ebfb66394885f59fe62ad3a240425f78fc3564b8b2fb2d898fcfc83a440e734685d0592089dedf42eeee0f6e335806e1c7c4d8ebe97e3c9591b5ad9a48f03d0cd58d9c8b48cef0a4d43885e2a116175d1ff67fe784902b6b17833aad0221a2ae092160f4255f714dc51ad5e3f69c0077ce5695e754212e91cf6e007a2989374ce2ba61c975f8d9967506216ca25209f0808be018cf752737e0c6847aec41d94a4832872d081a04323eb722859ccd228f0eb1504d158372102f1b4b8f9d8c320805ad73a108d113df07a496064b3c4aa9653af00902a7cad0f8d576bdf49ef4c2ce24ed2bcffd37a5be10ff0a48612596be65063372444491ce1c07d87069444d56a32744f2757ce5f6ff09480b785aa3d85d75f98cf775b1a460bc1d5fdb50ca8ae475db4ba52ab41a799361f36c20e96580381ae080d60765a20290f659d4b4550e103b15fefdcf505eed15820a4d9b667c3dfd7013e513cec1e3f7814279ea608fc941634f7df0ffdb3fddae205b7bd704c0cb0b3769edff820143d8837471590a8b1a7e7281b8600141c243625f79b59459607b235aeb020ecd09fbc706de4c6a848436aa3c026b45c8b57c7458d1272f96ef768cc0e13e7e8c09be7a9bbf54eb57d10b840c2dc0291405f94d2eb2caf8641072b17dc1d58e9efdad5b3fe6276506baeefc6f4098427048bcb45428a8d453cc2b831453a9f34b578351798de17fbc859576cf6aa8875a19625605cfb930763acabb2d9bda8e310d04560ec217cf56dcd4c50a3bd28228fecbd837b062a504cfa4ba124438c880ba561bd9ea49c8005020bd0c570035645b56264272b17b49c88085c05e3d7ebd7be69bc70adcf28a4a42947692bfbc4c836fc511a78f80ee47fd3e3ad4ba6046008074dde44d7f0848bdc602e68bd89d529aed60368bce702c8221106cf72a0c8f1fd87c9b8db1c94681630b5cdcf97b8a70520e0d0aad3dbecb2ee387fb0afcb8fafe951c9245db279eb65bd535fc3302f70504d10f5185623708911207f2a4886d552572c43f8ddd6af88e8f61c6bb1d5d2c4cb87a14cc141cf6eb216e303345c0665c2b3582a64175c09b470e148d7cab8860745125916a3b360f4f761262fa470b84919d7f77c0c6d460a52a040334695618244e24cd2d00d2e9fbbf89a066849bca9a91cb1e366a3104fc6943a5a568c76ab984faff7402ba94a70fa70a9914f5e7df6667c34a9501df8c8ed316172759022532329b32174af0df76f6f2b0c212229c7ee363b0dbdccedaaa00411cc15a01dbedeb8dbf84aacf61403f9048609da74418e52b6134443432fe19e236fc40280aa5bff6a4d70acfc3a9bbb87edb1adc3b369e9003ab13424764158996b184503f2efa364df88049bf4354e291bdbbf1697d2daf2d68ae3cae8f80eed6b1402dc543fcecb7c426d8b941fddf02259b67ae69c7d70f2b33817d6162b4c104a138fad1d4cb248d8284419927afea15dc07c9ec804a571f6d9fe058d9a5f94b39340534947d3abd01d9b2396efa2e477c82b62f7067a1e14d67645fc40e0b995436405a599730da65a7dd859b1379e528b36f459e1c1a423f6eba51a64b1cbd0a59b0984516419e10a632dd0bf87d5c583d48f72b066df999e6dc73bb502cca2c63652ac6c16bc5fe265e8e519466b254256f5bc615737f88c4c795d5c3144ca1321a53645c6f6e37605484052f685a6d11215e0b2c4050f6059f8ade9be7d7a7705b0a02a38a0b95dec074cf7370aba643480511441da06c93f574a5f67886531ae02b07a75708b80d6bbb8886adfc490484b6f22cbf2ab46a958eb1f9ad69850742c42e10964f0aa9eb2fb681f231e63d83b04150c2439e4840d7ac7f2e7ce727d10c7e84805753b408931d42b3ef4aaf3b7be118a1a575d25c27801e9a136526a38b74c0104c9745c24e269c3f7855c9c0dd0d59fe1000416e3825d634864f34c73ef9258950f76a4a0103a4d7552165004f624b7dc51aa0ea25373049733a2134e3e33474b6421de88953d0c34cadf5417a810ab486603a9ebafca5ab051c72e5a0f018ed732b4e6ddfb08af26b0406c4dc833c5e121e4adc9d6f5c0ec1f5523165998968badacb73ef38124bc0eed4a233152a8dfab5970e09b680f375fe1f44010d8fd6b3567034a88f17cc841773a730850cb579fe34562a7d1afc32b542c39a097c9e48560f963b5f614a2ec93be1c64e73d3d63f99188ac44d58a7de6f0a220b9247ee4404793dd84dbada81154175ed911543318f90ee7e727f8ac161d38e722ab94ab7a2a73986aff3b4f5a1c5a266f08b9f31dc1a4f111d44d7c50870cc92c363ebdbf236a0c0e988e2f12e2289523627592dc148d592c3b88d1538535b070039603121c53ea61a6d937349f5ed1bd1855dde4f0471f1ce3675cf3d6c60b1950c5ecdf9b75b083d60332b90e2da7f89c8375a7fa258c7fd6afb0668dc213c10c1aa071584310e35cd00ada56dfb4fef9a6079881927e39b57a8865f2898ff10f9a037be7d20939a71059192c77526ee096bd4c01f3918890e8be05315f1024e4da16d65d093a3f87271b8203cb57483623bb2b2da9a62f235623d084cc5cddac89e7885960078f9a905786e074c4fafcf93973df040d8d5a65297551ef35fa26f0abd3bc82d41959ec1c2e91476a092d53c30538b83eaa7a62376622c3eb4a81e2657abd74d73a11afdfe051ad5390fe0ca44dd579e91a6c5e1ac030c68937882ba8731cf227ee601b237c577b86927a641f67d0e67df13000ec351675166b5ead2b7a22a29c954923f6c9e328949830eaaccbc277454cfbc35671a9ac10b571298d98b8c9f27ca9a70a478992fbe1a104f1a6e2f2e2af055807632d1e2e0012a828a1ebb1551aa10bad74e78eb0ff71f40d99d0889161fb504c838200ff22115567d2fc432555c30eb21ecc92ee8fe4918fd173d19cff838176d2b847391519caf57f65f9add28f3d2b634c79f565401ca1bef779d12fa909cb22c155268118ba4f28db0e36d9679a0114023f1ec94272cf566987a822255d92d25b7338b08f2ff2b09cf567abb3a1d37fbf21ad544ae3e17b5df166988d2062005e13bca33da1a61489beb70d6b321bb50d0ffdd0aadc7d1ecdf1c102d9042882ca8dd9a5ea9afd08eab13e3429c01b1aacefa3d30268c08e734bad96b2834474a2390498dddb5cf097add47bab3690f8e06567fd6b248549a9942dde8295ad669fd71823a5d65ec1b5467a1d698c29d11fd63aa2594b512104185c1f6ae82f731301db36a8f2d43a1ac3c7f63b201c16014e01c373107aae7fc4ff417b2f2c7233d26193a60e9387c28a275a17cd993bf276a68bdf97e1ad618f4a323fc00f069059927a7d531ba6b618e72f0cc370d6229588b3fd7e8e17ba8b2f0675aa46a00a79a8cc0a90a716328d9bb19a410ee51e480d304afa2a7dc68a4c0f8f3dc352f7e15a79736a93feda75d48153afd6a2d314b7985d18574108c79607433ce60678549568797cbc5d7f77a2abbd2d543e6c05ce750af1ec8d8c71550ac272cf12d7b0141a1d1c173d165a891788c9bc32eaf36cf11e1ef339fb7c479f89d136c2115a810ec60d05ecea95ad4380ca9e3ea3eea32bb2836cc2257e5276f982a5565b077b14520728edffae17eba97d380c721e5a252555f4fd6aa4436aa4cc70613662f78421108a40c1d50754683ca18b83cb745b8c4617d52082e388121e7012f574f242e1b22bb018cf061a84d87f276ef342719e684329367e4195747ce006df164de0925df7390d59fdad8cf5abc8f63438cdeec0f423d1d72435eaea2e2435bdaf5ba805347603fd9538791ccbaf67c7141708d0657ae66c98fe4941e262eeef4f6ac9ab969ca351806f3fec4609cc77099d1ce78d7eb027a3ed468ab2b51b4cf1609b65eec81b6738396dfeb0710408fdd182663a5ea38f49c5ead35ea5c329e0e82a8c77da0c467aa7e8d0a76a6f602492411da1cd73805cf5d9ab49b4a3bccb3ef5fe7a2679e736c92ef5e611dece5228fd747a6c8a7f91885b19afb462ab09417bde52e66fdc8974c1fc106efe1beef3584dad421d6bb3b020306334cdda4993e0649e1a33976ad0bfbbdae4460c062d6533a3681bbb312df747b3417ec06032c6ce0af1314a83c38e8538cfa019f9ae18fdfda091e8e2f8c23a9d361ffb23eb64e50fea3827351868043bc6c1c09095149bbd338a0dea811af5e2e1fe92474b7375354bb80adf1c9bf82882ee1c0726c6f1ada4aadb9adeaba455973e49ae1fce7505a41854e1aa4b9d085219a272bc1458db16de74640880546610da28529d8cd591f982b4d5070da2f3f8b6ad99e634322598dd61702324434814423f8420c726557855fd682d06ec6d82421ca2fbdfe2b1af6ae9c2e968dad814a7cebe25abe37d9da2c356cf9b2769d7f4cd48355883fb062e16f3615d8508e45ba80a046e48ece5aac96ba6e907c4c4592683149ef353ffdfe86fc4a13e2a7153d7b6b860135c880929a9bf86d382430d5357cdbe0d05c8c02b53ee8cd39484422bbd75ee15150274955b327316dfcbc0bd51c6e4df399c331dc7cdb161c551d8d0800d9e9d9f8e07096e353f2ede6d5614a840e4085b4526f75e9eae9ab326b2afc017d2df2d547b7dd6263f1530189694496ab9860a595bd83b4a364343a2678b3001528f83b44191c8aa79041299deb91dbc628e4040a82bdc5cdeb75c54f50edb49ae1b3df1146505d6d3f39b0b751c4019dd0ff0639a0eb7235ca8e3041cb3ec2b46c7d39abd5f944a3856322ade2a60004023ba683e8b7816783552952adbcb5aa42a3d90a48c1a93677b8cc94d61d915ff1ec27c6f6becc831f9f1a589fab24e3d44bfe07c3e45c15523de2cd73cdee7dde60edb78c4d281a03ddad6b5bcbcd9ebfc2ef8650c4bff27a0605b1a2fef1677482debdf419a819d5f7525acbe9de4bab609a33f43b659e76de93962e9b2661eb6b23ea83269183d30a3130238c488e3bb820d3e04ddf1c763693d8a6e8f7463777628146607a167a78ad1149775cd74caecc825d2fb04e20b9b0b0c3865862fa6469926ee752913a19675efec0d97ed2b837467fdace63a0eccd71da20b0d611f3774b74ee7cdec8d7dc614b3f2784ba05c5b5ac1daccbab07d78644fd28afae88710e3d439604642994236f25c6deb52ee8572da6e4d39aee93a3c733c5b1f61e1524d8336bb9f9d3230cb67b1df22acf4e3d500a5afdd0a9783a8864e667c298949b61f9d975531ac83a94ce93c191906dce78fb098756613209971263d65ee3f58bddfb71097dcef239a10a3df6f1c3e874c710a62c2bb94efb2b91b9b7cacae62ed44bd9a4b1994b12f803e7067f3fa41633a4690ec65ee02b2f2a250a1e3709f95da7024e0c996b41f37102a66dc475a4b4f2b011a3cd0a073415e91c78a3c7cdad3397c5f92b633768ec69cdc10014ba0b163683208476e41c0e46e4138d092044b5d519c845f026fc42abb55cbd35aaca44591e8ed2f2e11d76434599488ed0951247abe5554017353c61eeb5d857ffb424aabfb01eceabda5c5dcebc3007d939af74efc446e043cb990bd76e9b6e2a883b07806b85de91dd36f55f5e7e8cbf93ebf47b3326ba6218f5696f7443a6462be1ea9d197d407930fd67bbd212d736c74dc7b5605f7c18d079f81e1ce6e238cc4b33808970fff403b60ce354874679d91d85775b9ddc3a9dcaee763a4c12bcc6b1ed409523e5b0b6b772acdff7cd4810d8d4464f66510a83dc35c71556ad722b3987375ca77d327e3d6fb6906be701554d7e5487c4bc650beed202b3ea3f83fcdb8193eac35a6a58ade41c2d073515fb23e2c24849204ac954583a2df02c8090b1213a7371dac983f955bd24bf10eab9a013d46840d53a0fde7fe6467a43efdedbc9cadd4aad4bc6c48fb88ed283997edb14587179f135e51f0d1033385cd5801774caffa57f10f08861bbc7203608361f8e3f1cf7483b0b288e5dfb50caf75a23627dd9f7ec55edc29ff889433a40bce0c78330281a178def14812b48357e85012c6c2aa0dd184d5c3552e073dda600d6b6b53a2bfa4157d2dfec842dba6e7aaf40ed586a35b933bb864a644828ec29be7392bae7785aa2d7d1184de9371ca21fe5bcb83a360c703d6b095aa60ecdb8f2db957e55e8459207fbe46bb05cdd61cb5e154ea08c4093ddb2bd8a7ba81781fa62f32861fd16a195cc7b6864f44fc2195d1433926a9afee829fe67cffd626148ce47d7e35f0a6eb8de77a168d595802f6b11f1f167336ade6927249dcf72ed8d041f1781c9724607688cdd2c3a376246e99daa26d85e7fbcb6bc4e2819551ee69d026500fc3ec2db4212d39b3eb35d97c26410712a8a1ece270c17bc2e80555cbe98e08ee9113effd463a3da7be4c7b8b1e5e8999fc9c062b5ec96c4700eb619b020f1bb9940a95202b1eb449337556cd9e727373d99f5f4c40f0827090072c58af697fccc53dd2d5ce9c56cc3132360d415c454bb7abdf4a8ba86ef75874c7cebf025c2a91b1a8329e994a701f475d4bdc38ab0911b09d12006c1fe418fe352a9d24c689e58d4af48573191c9b9f5edca4809618599bddd921b993d302ff6fbf3c650d0ac64a2ed0f25c5d6c754404c69a8d5ccf99c552967d147eae0d7c26ed440aa9ca32f3a8f4d86acac753ab6c5100c38f95327d980177ad02d1989dfa6e4ca642b9b0b627309ab4bc9b82aa798d08aca6c0eb747b6ffd9a8790a5afc872f0d31946c40e5544b963f8528cc016a80d94a94f2cdf9d9dc3565c1afd832b66219ddd11a26511673e2d916ace66be61f79c4cd10ee0788fa3fdfacb0f1ca17fe79213a1b6f4d1bccc239f7f3bd16bf0e0b0debc9e77d76448f3d49c38616486ff2a0953225f159129cc4ae0c5a46700398e3754c8eba290f64b43045fdd919a9e26ad26c450a33a394dc33638be3933da38579ef6abe58d72f1a8e7dd2a68addbe8712d76600052110f1dd1b86a501f9a7a42d5692b772309d4cd1cd50f409a1732dff3d5d72eaa98eb19cd8c179e163fda38d46279b97ce1068a7fd0e29f1aaa6dc4e81318687e8cbc62b8edbaf205e8f6f1be93ac8f2b7a13759f20f92f33cbb0162723b9fc5ed4a72d650fb431b4ef05198b0548eddbf02826a8ad521e169c55a5b5808191257fcf93381ce19552213ff0eb816ab781574ac8dba23d47a24c42424d9476cd7724c5efd30f62624c1aaef645b24d7ebe35d74e026a769158cc8b191d42026ef665e05187ee528f1f003393fc8c1f1c23d236664eba5dba71ae2bb59bd6df1595d25b7dec3bbf1bf214b70f28cfe171e126cb7cc139142637494d60c480b3f263e0c1752e9fa51a6e143831e07e56df38fa9d73b2b3ec6c8f1769c07925247cd455e57634b94c1e299213146826faea3b0a6ca103060b0a04bcc32b130474d149ae6cedd329f613a0575914b4cfc50bea6568e9ed94448d32c5e1d737719b2082139ea068f0ed0c5936cb7dbb23ed7ddb79fb617def0baef21633886fa65b31c07dd9a3b4fcbd9e6c6d5d0939b1b4b196776c6fcefaece5dacfec692030b4ee49e0cf236ba26f7e0edb01ae272367252f663a836fe90aeaf86684844ae6b8ef37acf36f953028bfb18b580a445dac51efa12f3edfa9ee56b2b90924fd955e4b7ea54b2765801f292f0ebeea09c405b73226755f4325818ac93d7ba0df4556fca8bdbf9082e962631c22cd6d5482e6b80383a82e4cdd067505e9337ba054c350fec056c1ba5b0bfd3c4e7c8d61d7bd911b8d9819cc1b7f73f06d63f45102ad1de1b939c049a8b761ae8a84095c28509ddde1db15e555a50099c30a42eee00ab9f34cdee2019ddbda80f7d4d7b7e1820c083c83c037eb04d370260bcb49210249bf7e73dd231c4bfa38ac0d0e532182a96b278d2f2daa87b63d9cf0c9a10252a10710badd1fea1ce9b85704317f0c475607238b2eb7121ea000f634458155f431ea2f89282066a8240d7d308fc3c03df2a9386c360cca90c4a8da898df8c18a3d8b6e69f054fb9beafaf2f271cd77a9e7546b9cecee547f9fb4f6799238f59dcfeb01d3e19fb105a07fa667036e1ffe855c8e103c87ab6f474e1913477f100df8a657630589416432fe256bba842a20fd2a57dcec2f5d06cc095f463b3754a87773903c7c0df8c17ec517e5ee9ea55a4a61c4a6a446a1dc04d0945f1faa82783d1e11e7b5ca944933b17d65eede5430fa2c2165142ff7c971534457cb0be670a32dfbb73304446036c0cd1e826d957dacaa7f71bcfa717ec2467815aeb7f720a35e42bf05845b42f976ad7cdaa2f8c40f5f7fd819f35fe465829bd0e894d4848bcaf76ef8399d7422cec96552cf9d4985082d93091d43d0c857a566ffa91380b0f0f626df7022f70ef660cb8250f024b3c041483fc3cdd4db34ba3a9d0446f10caa21edc86a41ac0a52e7f3e70cefba73b29002f8d20278224881efc0e9b35ab7183a8803d2e00e7397e68864e8249d925598e8c2f74a228c0b51c2b36fd546be1634f739b53e02a47f0b98f37e8c8f62bb501e96e5b8c884cded2d9166a65b47aa21dc37858d05be3f633035390011bac4e71568e410a68ad53c8d96a8419e04f2cb236a018f26008b57442e61456ebdb977c5e01f6a14915af38d3e6942d6223f74c4c2b002a6990674ed0d2f0ad35daada407d12d408b03544819c7f75d834d44a12d815dc4443d78bc9117a80a0b68754a31f22b0a524bee09018bb501d69d81a5610ac59d82485f6da1a843abfd8c9c95c77a166e8b6f5db461703a28ef44b9acdd19b0cdf4ec5052ac32e5308ffabff7d5d73e9a8f70692607b8ca569dcc85dac60adad7e87293822bfaf2bf8656e9bd83d9277767318586accef5671b7e768a8a9131f2e27563df0c12fc8c3d67e1ab8315cda7f56075c29dac2f51a8cf1dc44da6f214ea9ba7b1bc3085491dd7c3e419a2826d212139de34001f03809ee3712e436e8d1be78bd8caa56cddaa64d3d4d34394e48f4330c78a513542ce2f0117bb0f3b8dd0836707a61dd49b2093288ab583ed777cb2d683147ecc5cab99fa87eb2d95ba25e4406fc778eaafc10c694719beed1ac9a6dacb1f0ca5521b91d90b7885de06e89b110cb7126f55639fddc7d7acfc00a0b01a6123518a2d2f0217c7d6280ce8050cc04ef5a5e3126b84b63d8c852e324fe3da7c52a5135aee009c515c2e04b4849cbb8a4aacfa8eb942babd88b39774cf6d49bc8da1332ca526bf26af3d7259fa99848984b9a1132e2200b9eeddd4d4fd8abc92effe85685b1b455071cca0876bf19aab67ac1253251b90cb9437bec6d829849fa158901c23385aedfedf525359c16247e027f8619fb915a4a040c7b8e164df88194294193a66d3c91b900095855d6b47972c33193960f9ec930f981c232ed2010b17592fbaac3cce479d28d0c8c5cee37e060e2cf14300e1c79ef48250f68560b790f4333942c8f3ea2ad82574f4d974aa199b145a7f2496effc571b3a3334ab66bdb163a812aedf5f91b5a0532f67794eb6fce5c3249ca92b13a5d0cc67ecd7a2afa91a7d779042a5a22fc3b9d153ca8339d85b7bc7ca2cfad0e84d3fd162f3746b172542d8d54506791f3d69d3adbfd0d144594831f12ebcf9743222e53aa1c8e5685faf2c09de23d69ca4609ebd79c65d5e42c0fcbd80d4f25d52c72979bb5031a06fb95c9e8e8a6cfad38a1c1f268543a39064f3a50532aad78ebfa4eca6ddf55e553970ce6c1550b00a4afd8adfcc9b8cbd159be8bb1c97a79dee67f8a13062ac2b3ae1011057db5e3446028627c924a0c192e7d0df443682084eca0e5310bcd14916ca082fe4f9466baa6349d0519545e4e0cfb1a9cc1287ae4aeae7d5c797454205f6444a1f9a46b22ea888fcf0400515833029396e0453f570a637f24d160d34d1e7f7cb2a60bce89565aade6ff7a4b5b6faeae14c07b2d57539ae3690bafd21a3727fe2ce403a6de8675294f454f32e4df8946311c3779c399284a51a3eec4c46afe91388b4b140dd7170aa267427719e78d68259d21b63cff14a11be7c5c71b34f5e8ca12f34d4eef1cf936ee7dc801b1f3a30a41d30cf65374b587baad93256e62a240084877d7986d5551661e70daf814ddd335bd081507227f60ffc072ec5b70b5f4d83c8388bff3b5abb8aac85e165730b178ec34fce6c1f26d63d0733bf644e89603fac74c0300aaeba87154457f666d38bfe39a85593c8d631803750a37a049421792b3bdba29a983372ff16388bc85b2ed67ead8a11f5075c7df04de1ff1dcecc1288d33fa82eab39691186bb9621cb82d989f100793bd79be6e639ac54cdc7e5c3d8d74a6fa115bb731998a6c3bc33e439c19096a51b039ce2f767d9e1617dc7a0cf734ecfb34bba43ea0024c898470d2f7fa9d7ecde3cc464ae00d514780556cbc90a93553d1820b895f3224b173425c1b24112ba2f92df3dca49646a305b351297c4781ae87e152c6641da21ece6283119a9f6524a8920447f495f591d3d5a2422d802a3cabd2059f3e2e5e7d73277af21c721b59acf30383069728c965c6b01b12226f4b2ebad8082eb2e0f20e229381688d0a72b8d0da7210827e8b80236b0fa15b5b2a024d35320b7a1d3f4c9116a7f1ec4685c0c5d506044a4cb0a95d7ccb4fb5bba42c33ac3c280079e9d44162287efc9dae141378e3a1d6f625371409c237cf9d33e3a16ded8f9d0889fbbfa9578a054ff8c3e368b455e13743a582bd45d777d9cb15793c77bf2c4ce2c77c285f0111ae31a51d413905b14f1ceabd053c678ceaf7d6ecee4754cf584e8cb64528f4c68d4c1adb116300382508313f1b47246dd4c5bf81c23503536bd1f8f67f532c693b21eaf3f50930288d09fbdaa30239371572f7c330bbc2d01ce7c80899d2ebf2129a265f097d34990dc20e4c5a3cfad31427ae424bf4280b4a79af99cacf1704bfb045f2641e509213d87abe955a5b5acf02694f8b2fa591e31d7a08bcfe1f5970e58453a0f9b5246d5fcc8874aa75c8c63b4339311ce9a37e8febc9e8351c4d075b1c9a68a7b583eb2b88bbf5cdaf683a6cf7f170ba3328eb852f8b4ad05cf318718b980659c3fc53f5b8be136a412ea1a426af1ef406e0c06a4f37e7c753cd873bd18b6d97b4b395b27fd8c49be0e235f3f2ba5d940edd5d9fc2402a0e5caa0bddb89c6a81c6ddcc5e1561569e9ceab2944fa301773294ed2be64cbcfe5455a30cded46ba765a1007e0450b024b2e41fcff6b36d8f7802c2808b61742236181a92e2b35c5f65d1fe6bf03339147ac997daeec373f5ce4b0a9ca2ab2583ad9a109d790404d4f5eddefec7b80bcf6ea1193d9052450544f808c67e0a14c6a2712f17ebdd925db09ab9a03e916eeb9fa14665c55232125c113dde6b8ed62669a7ea433ff02d8c026960ba98f3686af39e97f11198573e99815c4fd9c9762cd0fd6da5f1f5d8b395165602e0f66c93bbb196b99b645d82d56e73fe8e12ba322d87596e5bea9b30c48aed7c4d875e716a461996a51584fb72e02dbd5545355dc31a5a77eb53f5e7f01d807455030e291e9506308b09ce2f3469660dea200ff1c2d7bf8daec30db221c430cd772cc55873c10fd27a3d0142bb1c25143f9280a5dd182f2a5612b74c0296e7573abcadf8acef96f371aacab0ed7e10648a63313e39daa27934baaa93d060b9b0f31777ba0656a6f85837992d15c5ae3fddc86c7d0c593b9e1f5078e484daeb5bc04aaa774dc3d5029e513dc8d4fb82b26912e126e1689737920e83a425c23baef89bcd677d044f1ce1ba5e41fed1b298a642afbd9c46ac76f4a6ac52359c96c25ff9416d1c93b65357dff3d645026c802c523e7bd81f600554317445a25bbf792dda4d8fea817863322eb28406b9451052cc9491a7b98f7e1d9180cbc20f1c31fc9747c1eb86ada4c70f5e9418c3754b02c7fe9b08934156e3fb18ae05a52e53f0ae4725ed6552a91f2baaeffb401012407285920aeed90958dcf9b0b649d5ff2c22cc1085ae562e00391996ef49710db73db7416663fd8d38561b80a56093f7080db91e08d9b565763ab91aa76802ebd538d472f6d4505845b94bb383c0374fb8347058a0a9790aade96cf4946c3b779fa3e31c8107f423e472b49982db3c464eadc2166fdb14cbf154c9f218b4c069e15b28201af80e86e78cb9c0021d7086cb320d804314a87d61f166cc7dcfc058adc6c09b4f7dd0f7de0cfdad240b1bd7f26548028bef2ff7fe3377cfa7f7f2d593d328a1cfb7f58f3ad8c2751238c9e61b6f100c5b528f9437778d11d986a7eeba6429bdf97f9402292fa4c3a5c9108b2e4950ba2145dc349b73c0972c830eb950bb90afc03357a18423a967a5d24bc6f2f5f170288ce4597e764225842d2d9891c59a209012fa4a0ba0ee29a72f47b88be33cd15cb4ea5ac80c857f489d9f85b26b3d67c67948c9edc1f7ad73da8104d92b10fd5a02cd311812f9a455e7c1ca940c24b67a53af16680dd44590716987b47bcb2af44840904ba4771122454187f035d5073f80ec6fcf29e048b3c10daeaa46e7bc05cbbfaab6813efd7840c4a17b8487926a7a7bd9722fb768f22ba19503292acc88865a6648f7beb276967867d6668cb248d289bb66136f26828a52e5c5fcf03b6362fbef1d7e371a16b0df4e3a60ed0cb3d0c5a262fae07fb385303792e13051b6a7d3b5a8012d92c4111c222ad96ff6a79238c08dd022f7d2ef4a1d4dbcbdc91e1a218b09248c84ffcbeefcf403eb82f04e18c306338181c3d8e47bd37067a85bba63207704ced4cc03cee7cccd1fe1c8078a211b13fc8aa1ddacde192e9c2e0ed2e48ce279bb7e31200dba6ab7646677cf67f1ae23f23215b5de401e44c4d0abd04238d6965d48f05262e85efe8f70ec507a8bc4c6d3e8a2e38d138459a836a22df23f9bccc439f93c529f24d2fb97e564f7d8dad826d7d0df6079a417ebd7fc521f429df1196a60b939eb780d84ddb4857ca47788d1e2801f57c82c9d9a52cb7cb2885aa077cdb886c0598ac118db47f97992c20595f900f2016941fe5cac00c16a8ab3001c5575d8acc46a1ceb7e00d6a842cc70d8bc00a71b365e827ece1f8b487563fd1c0fbed5f6b7ed5546ecd2515f94ecce9153369f669e31f0a023fbf2216757bdd4b3067fb781e6f9d6bb3f2fca7910d539cc65372982cd7dad237d3be889fac94eb4ad6d30632378f6c9808fcae0129b357831b1c17dc4cd7ce0f02a9f50ac60b77c6378bd7fa3b37ade8e0469e9602a16b9c4892d5b83a56f02b3833b3350aa16f3d49344b7f13134402d1d37f7744a39cf9139bad123f3ca39ae3e85b95ae0989228e540e79d98f3a233eb2a29c7410101f15724a260b98a9fba176ce94e6337180a9965a2cc6936ae0adbcb0512e10055907aec5c37568b8f1b2e021dbe069b11f03f0afb0d7aaf02dcba0558c2b54476929effed3194503c3386347ff0b01f6b96cd3d8905e7b4a348680c9cf513c46f13e890d380c9ae97c820f5be0736120592b666f8d6a22482cc721dcd3e96fe53b0c1f59b58791ea05be53cce0bc3ba6a88c42cf69f9091f0599be40fe20e89b305f7a8687311f3583840a506759b44d28e397110624c631985c717a0ca054b9e05c6cf53b427eba50dd0b7014ef107d065fcbb452d7f126abfeb9823bb86f85bc58c05fd4ac37dc4a63e599828a7a9a168f680d3d6de050f9b0e84963b4c610241295aef6d95a0130f063a6ad36e823808e6bc4a3b7d7eb3f806e60a14ceb75ff3a5ab28384782152f47508ca5712294146d2e19a260bef9b29f92efaa9b4f4c309df9d82702c696fdabdc791b58b0552c67ffcd0a56c126faad93084c8c6243d0be64e07414a24acba1ea124fb054002d5b84e8a8727e0e7ba8057888f78949c0cf7a65f4f1b80304005c157952cfc7162709153720448ad9b6c5ec659ce85625af9eddfb214ff5cbe6ef85b6f649c4b46035b2cc4e774aae1114114b74860df71dcf2fb1c1db37737bbb99a17ce990d489993ab55853cafc1118ea9a05377cc0146b044546b1eba1f45544106250ea160e975cf2ba5f876c0ec3e71f1b15ede35773f5add1cd23855805350514de6362c724d8326978e0c5119d265e532c58c29a3ec52d716201ad24d60f6ec35c7b94ad44399bf231e24eaa9918cad59cf435e74360d91d8feeb487d18b523ef2fb942b437375c49644f8edf48c597c33032105fc5f657272391eb3f0e63bffd2fb514d7d9702db7a6b694958213982adbdf257c597b52a6c8b031cc83d1eb7c3cae9362621a562f3a45a5dda54d221cca25226bde7196b2a9c052c2f871ab5d3741221920e44d50279b26169d9e3a3c30531421563b58762f3291abe16848addf2b4a0a7732daa3971a4805a0b949eb9bbf58da9bd459c966968f534dc5d1466c31fea10c84063b4e3c84044acfa96ce8e72042a7aff6452bad75a8bdd275704555b1526858973303f70e91bd2fae3670dd0e3769b3baa4e57f90b5088af0ddaa36b600ec12df47e4005c52df26fc20fc8d5201965b3f2d012c8bff41aebd000ccf6dc18b6d5a1dc07c2393222f1dd7801300b7b9c64a9821f809d5c9069a479085e340f456e67788b83e25aeeed4e4e4435b9f46451f8ece481e4bd6ab64b5cd8b9753a3f8ed231564ef3b6a34ad4659e70c948b1da4e94f8fce35461fea9d6bde427f927d69413a1dc7387b780430de9f6c1cd109cde787004638170dddd2cd3da98c1d5088cf050987f4f7e1e6a5b22a0ed72b68f43e5647d19575d26d74132195aa8c71b6f0874e5937903d536bbca665ca9f2e743269e7c22708b2b8c1b7d90580bef5f7e94811d6f2acf54e736e5a3d5fbbe6fdfae2e878f6789323bb348c219358d9a90ba595f4bc1473da2b32787358c6a01300a03c1546a13e1d526026a71cd7cd0297fcfb5993874c10528d9a47a83d5bb90f84522d6b99c53222409c251b7f2025bcee138b5036ddf87bc0523a90eb706a4a549adaa8d5ac6b6ff5025c70f5db8f7f268b72b81f58a921c4562d3498a3331c3a7a2510d0d2266343e2454f793e3b2e8249b5389e721b808aff2c061660eac7b7af69fab00d49bfe8cf01f4aeea63a8bba26f5244791771f5471b7f2377319f41f58d559ec922da4577729661abbe2a958a93a8151c15e5587170ed87c3559b05b7834678c2df637ac931c9964d94ae2232586cc2ab402d2c000b1805bc506b0a919d81f01b3966ec2c126fd9e2439358e1b68b7cd398efe18c45d13ee11d5dd125c512bfd8baf199dec600a63d09458064d49d0a6e0c4994b17240284f4b07c6b16520ce7c8d772b5407b0f562052ffa32a0c3839ea827f0c82cf59780d10452c6fb976ff669984692a54ae76a692d482a7edc6874e14eb2cd60da5bc94ab659e07daf0dd5e4c8846c40ff9431553caeb3d742bc7306359a6914643ccd4c697a9ee2f04382b5fac2471bda6cf9e4ff4288d5373e568a91684f1cb411c6b418bbaaba552303d4eebd00e6d3d3f03cd92688fd7034fa979a2e7f2916f0ba8e15e1d62ee2131f6b28e8753beb268b727d7eee942cf8d89d5defd8346d8b2eabe73d7deab3d103ab408ef89deee584c6cf5007eaa801e279f63d6d11af67144bc9b3968c4c1cb88387aa2cf866fccf645248f5f62b6f874bebab985aab4cd5ce2630b705b8b1ecb9ae8f6d279c02a8676ccc78c74a67307f3f5cb81ee6a65c0704cb5ea06b32fe5f3136a6b6097c7481248c0926da156323d334203948e3994d798b4e44cfb534d9b5c5f31b7048d1510c419d64cd6a3dea0340492a579298046a547561e6dd4a4b6ea66824bd3cbabac0e7d3bc3e79a6573f504518dc2342d41235a1c28482679936d73a2c8fc19d581cfd53aaf27170b10bbb4a0f01e39781da33f7485aeabd195b31b8ab0e553f69df8d4c4f36d7d835b57d7b0bc13f7573587e3af9b2e5d447c25427f889ef69c0494c98c2b52fda76b53b1340bcceffd1b9a94a67d21e825fca3a12dcf22ef3c4f76586cefbb85003d6174c7397327ecc109498e07dfcf1e97ffc4a7b1ea38fbc56dc753c5a5360ef9d7af209c392b75d5ddd21d92a1257584f824aeac147e6c41c91dceaa8c837d6d7de943f7b3851abdc0e6837de2f2fbb38f28c09104dde204912ef0e363a1551da879738f8c5548df05b109d5a23ab7a2e8eac8592e065a6eb5e9140186d9448490b5723ef220cf686794bc033efd775bd78e428d99d80505cd52195e5cdb9400e944c08a917134699a79b642cddad80bad814cdcfcd7acc301c0dbaac15ea619584b44531429fd78d3c8cde1035cd8112fe43110e81e0ed8171614727f57f2d827af71f546047527e21342f422b8bde73d72d851652c5138eaa8b4a733b0037b6e3a44ae7bea50ceead766dcdb01d43bb863ac9b0f5f262597fb5341fdb97433533cb45e728b2200beacd9171ad28f03b7f42ae5c5bc02a8189c91e400ca493dd3c460aacc5ddd6a609238e8107ceb63fac82b7710254754b6bb9d1468af98406ce5f054215c3483987d1acefb48224483228dc01f6cbc8cd28b4fd5f58a84695a837206fa3be8eb3c5c7433d3a34dafa3d49dc3df16ce3091ca49c27a7ac829f16d61e6f5761b8f1f9672df119635fcdd7e3859ada85b60de21d8ff50c960bb0b0844df9d71f3633f9febc2a423e9d236febe01360ddb73548e9e6de02c867757440385a787f8390439e49a250f240c9c32b8cc59db040a41d23d6530b443901a9c53c846b12fe7f5ccdd6feb731178e7eb2a4241d2a7d3a45e545abd971793bc2d32d9715b2a0f98684f6a774df39510988a197c04064608a3ac85ce57942976ca50cde2998b3ddb47802a96cf51186696683934852f1adebef05f9543e6c77e55569529e0f81cada2fdf9d263dd6f66cd16f11458a9721f620eb99550c4cbd90fb1eb93e31bd360781af3bc53765c329028495159c4f98d15b1cab967db0f0aa4018bf0a09bf0be245500665f39830533506724e791e4ec9d7f58d14877de218cb578fb3b564186214bc9805aa2f891713b0d4a2c3070767a53f31b211e552d74925835b4ec95851043bd522746eee3f43ad0f45e08f9f053346edff3ffcdd5a93644860d490feb8f7774b3b811f4be4e3f21f47a94c735388a874768fe43a2fc44adbdddbfa7b1cb14fd31c15cd6b5367ac39292055ab7274ef9e38ea2a14624b5122d4e985a973669aab3a98f7033f7b127ca2f03b69e4b285b4ab8c0714d38b3fdf24d1fe583a7113535d9b54e42175849c359295865a36e399930b8f89275920f9690060ac848c03c6e7c79616b4f05c02b84e2b61caefa0789a27ae243fc14d2ee1883157373e396fcc78ee6cfeba6d455e210f06a0c7f765e559f81d930e2acf34c959fb04f91e30b3d3e567ecf41697945a706a89fdffaa61a8f13715801fe728740d3f83b76e790625c5b8d8ac1f9bb5fc1bcf3a56a0f3bb25ec592f46113358afa066cf1da71441e71511e75a2229862062c55635c237ffea91a5ea8663399453c0f66615eb7ef2bd51a92ba9873d60b5702bb15147c37d2aaea3fcfb4d42ff786a77dcaa7e100abdb08e4670cc3b32352f0dfd08cc8a84d362975d9032df5d1485cd8dbc6270dd3a2184275fe9b560fd19e4f9289522ffbafb37e0d955e6d5a7015950ccc09472a5731bd516b89943440af8c63d24060c450ad6f4da09347c70b60e48bcdf44532afa50d0712e5716349bd50136f120f474016010dd35e174cdf5638fccd2c040c8d29985fb9d9a972e242d9d06fb6b9b72aedaf1c1175679101a835bf4bde5802c74c4afcdaaceb8f5436072b65286b7f90e59340a26fb79ea3df96d18cb185ce9a0812277f964caeaae2be77df6545806003f76001e182d0287e188e00e893177816fce7fefb3b1fe2c1726b57b22ccc64f020269676f6ef187305dacce501f319ef699fb03b454e579dd9dd28da4f3db62b3cd132615523a4cbeed2316e357cd29f996ce37e04a3f816d095db5831dc917e2d48b5de4b0b08b5de2af79e86c7e13d77e78631ec0e1c80287adbed4d55721630c1927ef628e6c3ed3c14689efde9f0e40d89fb7b9a38a943a45dadd09a10e8ad45b017718d17dcdbe888810f08dfe896e036451ce9091b72c43bd09f7bebec46a414fe3e68b37105a7f79c2969e949420c8d54c4e8d9d0acdcd8db0422733340d1e1ddb44c71f1bda7dc06d54b5b2b977bac8ab5ee7097c6c7347a70392ec70a8054976c44f67d11ad8f433f824ddc091e1ed484d0b195b945b7bbde54ae89a4b243f1d3208f128fc0fd0337e1c7d43188dd6aa74565625d43735dc8f0a97518ffe66037d150ede413c46c01092a8827d4f3ad1ca22db0ff47be3948bd01b91be47666cf2022831c85d93d444e87a3489914296cbfa3dc1544ae653e10e9ce7c62c2d54b2c17e4155341cd88de313669f6b138edabb5f212ee2d72516d4ca343a2b0ce6a60e34de88480374b6c95241f113a3a5751f377da73ce74c535628a942e70ee2452734645e88c4d210ec27d276272935452417c6a6866bf5f81603b2d62560a8e220b02126c2f6dbb755c3036efd086a97d4090039aa323599e462f7c5a20ef7f548373c95171c4d6e9c4db3330aa71ed04f16e0764602071c2f3c216b38651f46773859f9f93052043bb046d35576f06853798e9df5066a0704cf5e30305596eee0000a8337cab4030441effd00e9b37b058ade5d09e1edde77aef51b29528a82416852daf88ba0088348bb68bfe3858173f93728fe9d63ed286603fe510e6e75715bd9f23e54a37b3ab0343b24e444f2f2bc11e1d3df903afdc07120922886f5d362fbc721d266846c17a304909f7612882335dd33b80d008db0a1f7c7522677087f163d026e3cb163aac131b0f7b9a5eef518e345297911358ab32541162f36cc4c4b2549fdf196a5cb7996433b8a5172e67868f12df4bca89a5c0d7f39ff13b74767212b32c19975f93f6da5d28a87bb754c3c5f9ba14bed8a82635827cfd5a3cc2426cd158721102a282b55e0b4a804b0a0a72cbde40e11d72399924ef195b3970429ff7ae7d098e4a30cca06cec8c4575b65de939cb55e43a982066f6236e367c74b35fb92d0ffd2b24b81dbf5d02b29f386f8425a2849ef5407f46d7e34d0732174c4f4064e6011db25970e39db031ee2cb3a99e4afcde195769773b1bda551e22a557a1633ae9d8c309c40f3560ec7c24fc01da7da59bef245ab559a59a7d3c4d24ea2657bf4cfec4246d6184d08d2540e5c597385723924feea05da9d2cbf694e2b37d3ada7201d8d96201502535de38273e3a2690326ea44c63a4081d09b5a111cb809c34c0925eb6c7353b367ca59b0c5be1bb62b8f98851343969fb5d83988f0fd70af70d3f826951a13de8c73ee78941e43a97cbf6c608b430dfbcd43634494285705b8c0d16932f402b5b233a4e699bba79fa6ba20cfcc4181c3f34f25fa9862f8b4c61d9f05b97065d53a2391613794c7626a17e5a8fa2c67599359f3450ca80fe43db6747ab331a1aea49dfc2c6f1e8ce60cb9c502ed56c05aecaf99bf4a2fdb0a3b2831f02ce7569fd30f231e3bafa6d210d0689d96704dfb384d038937ecbaf8ed06252620dd40d4427efdb91a07bb8c575c25d5982212e9ce3a3e90334ddcf9c125334e816434086b62a335a71a981fc3b63bd73123a2e3e6cf437ce483635358035e3b3b3e528c7ece63e0629bf907fbe5676ff25473419c1fa9e8fcb38a257956873cb9dd3ddde3d374a73b595f9be6d864eb770ef252202f37b554962242b3ee09dbcdffae144edff70ab92aa2b1500af4506c5c463fb65aaf2494531a2a5e76d3b70b3a06b84c6f7e5e3ee3b07ce5473ddfa472f89996c1b1c7b4d06a27a47ee4abe7de8e74b8f12584f3c4bae25a0d28f6df5632be143955e8b731425fe0292d76057cc8f2109ce43a144d20e3808a85bcdf309242b5e3ac581301ef5729a1bafd92b28c7621e43fe6ff71099d37fea434e01df2c804b737b95c9cc37ce644fb1686ddf4d18faa99c90f153c73093968cb4115f99fd0d4567f3b2fdd0e8d6a8fb2bf0a1cb79d23300f079b68d0edcc0eea327381ad2a277a41ae39c246e2ad342b78d5268c2e0e10e42c5d63cd8ef9f33d934a3b30e558fe8d025a0618ef015c55abd22831bf84916464f66d8aba7469625745630f03e52acb3cd72f2d38659fee7ac65baad70766338fba629953ee3c7d645ff201c6470f5c7de5c7b355b5b524ed64fe181729b49f8a1d5ae2f059108da24de94ac52e1f01663e99ce640234fa1de6ba077f4b6c3d4673ae423747c4becc5cba4959d06ba12adce3c63040f2894e98b44b6bb1eebaf3c98d91dffb341dac000f711a40ef88e1ca51b8c29744c60b5308d092fdb006d18ad1e96be3ef095214e60294672dd02ea93a1e4147c1b7dc05b7f1f5eeab848402915b8d3e5f0eab14a1287737e3ff4d774047fe6c4f432bcba7397a79dc2ae64e5bc406c4b2710d2b0180db49d668a16a49ce24d08ee829e8af4c0534a7dac55ec36d970f5873603ebfff81d6fe943baee97e851d3d17a6ec4fca806ae031460d13544f717baf7e5b735b8e8905c654526b6a843d61e02719843d14a2363f4b50e8014dd0ebfe273661a14bbc1ff9c8d769094428fb28ca84e0cafa4160a30e576be58bbc0ed47963348a4cbdef29aa53c56536a368d43b23404bafeb02aebfb544668128d2b8cc6da5a3b449c6d6f14558a9f8209993e85f9cd5978359eb6fa84e3a78dfab681c000c7e761b14d30ccf2531df99b79d9ba1f5d60b9d4d65e152af7350a9688fae483b545590fc960348322e410fce8f49a7f34c2599e919cd318b8747a2e134720e22a7110a60e0389045c052d5f52097e5eecf4c6ec77d535d77634833885c0a285be5757a8ac7d3cf7be0eed674774b523ef8569d7f11eddc9ba0f5f43252b239bcd85fbfa52344ce1bced074c376f9a02fc6b3da1f9da6141176b125d48a06592699c37e3c2e3ec0a2a5708be14b572b74d931d379bc2f242406598cedc9630918bb6eb54f09a524ef44abce9e51727b2dbe60a75aac6709cabb9dab4f2522054e0a448cab7f1fb282da9afa4dfc72b2d2e9bf83ecd7258fe29e3ffb62ad51092b26661be8d1a858ba61a51024ea95f858307c098f5f2be17ce708d923ae8a4fe2d630141896ae9f02b6540a42a767869a49e7a42187b006d5a96203ddcc3a1547a68d7c20186d87d50a4082bb2b264e5054728f1aa3b57ec37a92d81326ac0e88d6527f22e1ca3b294ec214caa4e14d78132ce9082a01d032a626415e7c555be97cb697f5a73786616eaabbf878080e1d3843f34b46e34efc806f52628c602111f58544da8512d916079d5d49f39bbf7bd1cca0624dd350788ec1d4ae522436d16c7018422de48ae413f77654cac9eb5414bde9dfb953789ea19c4bac47a91fd467efce13b1008870d63a6c78c1e620ccbaf41f95d144e349ea3c0db22f4c0f065fe67a5591ac9e3e897c52c28df533e0ccd0c7d92d06e6d49258c9bce21c5be85fd175e2396f3d81aa1062469362b8b47dbc685e3ee865b8208400f36bf71530f69c5f9b8e670aa8a4471d9c7888efb937a55b07f36dc0b8707a8d5b35e82e873bc8b28ae3e59c851d79aa895580563cd8355ea44ecba3ca6f2a65815cd852d429f20f73678243a0f3bf5db55e200986248bfffd810888af199a9b63d4fa4d703bf9a658d3b60fe74f1a5477b04b935e1f6f7c6f5eaa274d85e450b004081506e2a6c9bf8a38129e142a6fdbded2631df6d06f54f10f29b810decee02bf90031d00d4e4295f909cdffc11d8d1a843dcca1c4bee8b88ced3f68356a04fd240f3bd7af5b8eac91fb016c876a8a1f8bb633a957b7fd8a3ac9a311222fdf0a986b079840338bf6817cc767e5c6d78c6a8cc53b135bd906a2f40ea3d040917b524ff4c1cb8daa80c0878e12a243b58c9436bde047e5059371a3df9262cd3674a56cfe5dc10a3b0ddc9de8934d6da374f31f9a18e31856d33cc114d7e7ae3bcf5f522e8b32aa9087ce0bde1fe3d93f6d3e1657996bb2d333029837d0f4a3086dcd5391460ce8c62b0800685c17e5f7de1fe9e91516ca2f3b9bdfed8082e537fad1074de19119499e865583a73eece8c01a15e828711ae1be4493568d081e25d7f100b63589d32a2401cdfd6f4b9943e1cf1db3b7401c9723e73a5c9e9cd0991b0a0e4cc807ef32653990ee6d8fd2197c16e97e1c001d7b09d0310a22a3a160fc670b4f02af9b6251a2c12c765a9b96c07f34b261bde697ad71c33528e89e8bd9ea2ccd9494c86a4560e03e96e0787f42ed270ef97936a69d19748ac2f8a03feaf255ef23b75737358576eca346297cabce49714f9ef8117b43cfffc30b06fe2e9035c131288a0d2a3ade1e1b7ceec33b6191cb20873fc5e962b41f9e7d6408959a0a603d4a833789e2fa8c55fd4f0f3330237010397352cfdd0ddccbcb1a7240104df889469a769b20697edbaff3b09577ebf74650abae3433a75f39d6b1a4071c2ec25c8e75e812980484f2e46c9e536ace2c191225e975d33f7283a96cde165c384bcd5724cd6e01c031c68c9dec9a6976233ca7280663ffe8405cafb2a3ae52327bc682d2cc3b30b09441e1fab0ac48722fbab4685bfdda8ffd6d961c66399e1ca448c15362965d260047df7cd5519c762cf00fff604d2d73d184896116d5e06cdd5af5c86aaa44f5d2e735c7aa5ba72ac4142d409ecf83f57e749dd2cdfaff6f8fb6d1bdbf9a2b475804836f67884a0a3732e7769d11baa317281106b49e405bf4b2dc2beeedbc0b8fc51e3c947d9f9f224d5c9f3d2367e45fd078a235a8e421255b5ffada0f1179cbc9469a1ea296c0d0e613ecdba4f3193ca167d9ca68285e3f2724a364fc6b2fadc73b71587bf70e1bc490341b236992bf3e8127c2296912a884f7727a5b6d3d37e3c8b90b23736301c02a4ea1d86b457573425e8f231d6a609c73112dd12dbb77ea5430d245d845c08fdea82d75cbd5b5b0a758e3e0f538c973993e1219f230db9e6e7e8aca754500ba0f0a6685eeaea809abf938578114fcea0ec1236ca561b85e5e34ffd19a5f552b97a60039fa8e1dddf51b9444732a24e8a204106b2575cc3d0caddc2ada96e72c86c7776d46a4d849357f13665f65312323bb146f000d2c56e98eab2d161cc4ae85c37e9737af525c51b2dae90a2d998234fdde317bff1da45b0d12e44ef98bd555f84ac45426f0dcaf7e3be2df26d126607f595713cac9a49322d484d92c3cf16ea0289c190397f2b3f118d36b6c0a07e05dce4acee2c5311692e6ae9a91944fbe7fd890debc6c6430b8c2147c6a70f6f37d22b6932698f3a59d673aa98c97dc800528af168285b271a277fbcc29127b65b90234e263e4037b276f576818b600676e3b96b78ea8968541291fd75301860ff10bc232f4b2dfb6b24776ac724d4ecee3c0a1e4d94e1756975792551f14a304b3196d1e7bc066aca58f7d979dcb319246d8c9b7697f0de28c67ff6914013b4694d3ee95fd7fd0f555047f5d527b05dc3248f36202828076ec9861e1622a77308cfe79e20f8394cace8c331c7b2a7c8dc7a237cb324fe9137acdc9bd4a7e3ad1a1953b51f319c7c3172c0f2b8630683ca8629b26bf1f81b5e84366e05b8a24f1b9a08d518246750878ee9cd4d9966847f85b4923df5907a91f60151d55e79e4aa780d7e719065ad289f141fdadaeb3ca204dd2cfc57022a6062498175587a78ff173a91878df754334244e0eda51f4cc967869da2714064dabbe81e42a1d2d9abcffd9bbf79f22aed74c4b70dd18008156c434377098615a484562620753054a6d51db8c4186716ce7f553080c0bdd33608204686bb50c3b3bf7717771561b6667017ab50018c5b57eff7c4aa5b5c114d2686e6c27628c0e0c83589e3283b1c0b9930450ed98cfebff19f66627d8f235a0f68004d5e1c72390c619be5da3756520df5b9c9b101766a290dfec5c5caa92a4a0105f080f2b31a65e70500959860119199933b2657999f55681a17bd7283b9023f251938faf550e971e885b67562add693d69fdf2946d596f666ee44e6bf61f5e8531d8ba33fb2d6f00956111f222d45e012018f5086ac71bbefe87a546ee227930ea73f5dd96a5d9641f59579b2b91bd6c2f26e312a56049f63523452d25af3749f438ab64abb5d77c9b00800c069dd8d26612e46b4be054106f294fd6c19717aa6bb7292e729937df9f356114a684051129dbf891070cd4197d1bd1086b3ef48146ecab74522bfe5ff03717024e38888089cde06e616f436f6f9f69418e97d0092f87a7873579d4d6b5049401c25d1600d9c8a2741a6928f0d85163298b247aee9f381749afb5adc27a590487495619899a868f2b7f237781a4703fe7d46c615f34d005c7e9d90f81df15f0f1b2034aadf298372266e781b2bcddec5325e23f703855b634b460fe4fcf6360b9cb670e076c3a17d0e49bd71db8797776ccf50fb3065e12e59744760acb5cab010030f919df152e1796ddfa5528b1c95205fbda072e18ae2bbbf4f356f31ab5c5c103ba829ccf61afa3b94c784d433ce886031d9d5ad453777433ede06d011f8e9df0296fd5b05fc71cd454c2c6ec44cc9ada329be2af07957b2f297caa27d814c326084daccb3e868c2079fd8f43d6cf9af3e18511b638a11220ec97ec4af48e276c7f71299842c2997bab17d7c68ba3d58432274c3eb0f9716b036cf14ef1c141cbfe1f1ce67b1b0464ff09b853a6ad72432b9abea2ae01983fa511860c1a48558a4b9eb2fc0ee8c3966b63b7868b103b50e99be87fc7d00e0a666254478b22eb3fb1df0ac752d88baf91bd374c26b1aaec3c9a9261cef115abb52abf276aaeaab17daebcb49fd574064b100f371a6a355bb188a99ad24c77941a5aa1528d3a3848e53714e3cdfbe48de652eb429257371d25a324a6e395268fe8a70c4bf240a63fd988471ab6fed6efdb0dec781c18e09da60db4baacada6d1c2a4950c1a5289f615612124d2991b9832f3eacfe239631b09d0b572b15945832d007009f52e53504675f441a38116575f2ad62480fa90cd333d05c5eff00ba602e5d343d5b48a3606fd58dfe3b2ba7c864e7961aa581a16519ad44206ea242a6a2aff3cc509c033724dd0663f2a6fef56de4f299b170d7db0e522b5d4b514b0d532746a141511a6322c5c4b2ff99a2ef01c2d97a95eb1baefaacfc504e548e0d252d411d20336bd8182f2aad43f03babd230afd3cfdd9e957d6a40b0675aada8dc4003520280a0c8f2c536d658f826fa146cf491c841849c4375b839570c0152fd17037b5c9598870fb9988d802d566cd63fd45011f5c88022d8ed69352c2f246f2d90ddc59b777c25166b53541138f98ee5682339277c95141e7d286c51d3d8aa09959d870c3d54222ad6f2bb7b04a510c72f2f287721ace8b52192531c7b3eb804a50de947a2b6461e42acd729eabf1c6bf07445932ce4cde35acdd28929696442862d2610cd5293ed31b621257742cbd356fb97f3fd227c40a8e108444c90007386e968bfcf54fea0f5dcad5c73b082b4bbcedd56aeed39e9e18f1aafc91c0305f0d78573d1e9669c674021799c16ec970be05f0ad7b03eaee5b84330137c5393d02b75d2df7b61b5c5a10e87af0e998b9d5d613ebdb985359e769b2bc76a80aab29844db8d2ae9b5b02c67ab589f41e526d75e6d7b2975ddec01003794edeed6123b81e8c29a52b466068de234e1ad3c36fe39c5ddaec7d51a1898a04062e5aa44b1ae5257051f0e653a2f1a913fd68bbd28442a79538e03eea3056c708d50e264bb7d95b5c32ff015c409c5738660140c75dc9a00876248bcd6718e4b553161b54e764da6ec2a9fc2c2e82df6a8a843c46e895afb37dd757376d50003935534868bd40e91bb5bbfa2bd318a76d3ddd2abcac87781826d513c2e85ad03a7a4d5828225b24ba565416cfb7b08f286de0ee2e9c01a3c3d3d06f3f282ff1ed2c5a0518dc249ccea521549e27b0e202dd93b19b45670b7ab6ec7bfb605daf90bd4b5156af3b08e466cfadc63f778e74ddf26f68afc88c824b0d67983b1e42d707aefe34e891a81ca792419c6ee53405ca881ea6e640feeb98810d2069839a7ece5a6063fb6dc3d381567665c916c90a3a640b4ad5b01af1360992c307f644213cb8014c497e97da4d9b29edbcefe8192fb37e5282f5f982c7ab49c5a31c1b087f724c0445abed88a867f7eb3e238f5205cb14b21fe34f69f3de11488ea63530e8bf4f6f8ed1a9b3791ee9f7819e254265469f243dd33250aa590f68c374cbc72d6d495cbf1c57377ee9681ad893b49f9bb164de79ce4f374b37db1abef854f6cbf6435dd99620f68883a1a9af263396157ac3d1a8b74601b375c7e7042dddfe6703cc3f9d56e8546e50c1084cb9db0dcbbca697f6fcdbb69be9714a2c49ac90542f7a63123c4717493ebe2feace78c18cdd991588ea9421a712e7ade08a5e93b2dee85cec0dec1fe0ee3bf9deb9314e27eec109cbd9134ee18f389c19e3b46bf73d586264569ed578f0218fcbc506f76b508ab8572662ad8bc62e1d445bdbdf690d25072b1c5e065eedf2c5ff13a8304294fe9716a817078eec2bd12a679213efaa062e7632b76c5016964627a729749b828431ce8954ab0118b675aca53753aae1441643abb5fd90b7cd012421bffdaddd9776712a1e5fb78aa46adf3f5a18f802e83f3e3db242b7971c88ef8f245654c385dd8f7ed9324f1114cf5b02fad390b8946cf2ab036dd60b534cc6b2d93f4ef063889af2c36b2b1524dbf22d7a409ee2c61959c87ba48100413c9f0d29d54218593c1a4f8b0e0bd3a09811615bb10d5c090765abf7d5a47eb3bfbad71a8d7f526ae510c3562b08e42c42fadb52ce42227008bff5177f85356033639a118d59ed9b63cb5e759daa50034b2423124d81c89f12def427291a40ad93809b82b93c0fd7bdec7b32dcc3f78cbf3e44de5238716b01a22782f3fbe1b4fd86f20463a659b46217a5b431ad58e526070c5f8a34f4f92bd18ea9e7110f0a0f562a964b7b5ac602bc085b623bd2159607313ac02c4c93499ee7c362fd8075303c5a4d87ca4c8f39a19e23a9cca7029ec9d5660791a31f64898ec6615b115db7ad5aee9af726b30b03d84afe87b19f1c39232aef55bf495128fe2bd45534a71d05162920b67b5e09eeff67cb8ddb830dfda9eb8f129a53161b4a94c71c95d15c047949633c0cfb70514fe4619efbc9d545fa547e288fac6f23510d2efe32ad1caea40c08f98682cdea7b136fb0ea1061c85f0703fd9d9e25715c04c8a41eb9b8f25e904dfe003e4de91f3b8486b04e6e1bd548b0596e1961e60be7fd90b869ef70aaeedd6e70b6d7ef79dc8a1bcd8103df092deb7df04e2728c7994fdf2bc7d3dbdfee1c16514b5fcc1b0277ad33add597bdd2ee6703f148f1017a86f2907e3eb1ce75551aa9de2e64f293c5ac5d5285b4ed00a74a4adb643ee9c386442b2f3fd79337631346c81f8922438cbad16a451d40eb4486a0ba565b47578596b8807c319fc546784c97fd643580cf81e774e61f78603ee7ba7e4d1a002d081e091196cd81747a0fb69c8fd2ae3b28c341a6382c46c09731a2fb71db3416cc398cbf78ca82effdc1d027d9c7ccf4c2349b6e4a65059cc5241ee0105503e86980f8b960d1b5628472830de2cc4f41a0bd91bef789c6346e4859201ff63a7a6240a443640547bd8c1c5d75ac6861a0bd362365b073841ed1a461e03a2a7607a2b5f56f675dd0ec11c06ae882399543aa5f0fd1f01e6b30ebbd52b72be91ecd748a1d2d1a0f6aa058ff5a39a733d1a45230ab48ff62b6b043b757b948d4089e4ae899642b8d93948b621a90ed5b44ed07054fe0aa6f144632027b655ff75225a901900d9265fe1e6a9901348fd065a5420b8b90614303374588e8c118148646a74dcb0e66bb4ce3eb35437bfccd40311e2b0baf322e95f6bd9c3cb66c5f088a26845e7ecce01c8b6d287dd70aeaedb1c7c70e9908206cfe648de07b3822bdeb6854341ce15f11a3ebac0205e30a7e0607198b8488a124f2770b4f403aec182022c63b77c1c4b5172aad99734c05e0b4cab032e406d26f09a85dded83ee2db7811b8e106db7b54c70b996264839b9b9f48d8d8bfa6d014d42f8642040f5b190a51eaf960b0a2cb94a314279d53786e325124809c7efa32d1b052fc282fd5aa450c4c64f2ea4edc2fa817ea1c6e3547d1ff15913691bbf148fc87ad195d09d50b7f4284e1a1c5a79177d8ac22fad90a4fd426dc5c5904f816319f641d5093fc92d1f816d9870458ca9c6afa9a68e6493fc0a50983b98e087e7875ee931184a9e2e03a4bd9b9aa59ead3de9e4e912309ab598a4c12592338e553e7a48d0ac84798336b003eccc1a1f4837841b163f91d7abb6dec8bbc29819a6378cd780269ed3a4b3741ae52fdfb2e3e55a10b175b013f5b8f7a9df53db33ed95672604902e9bc942947ce60191d1361121c86b48a33d06b247a08c9a08e07d65bc72928dbf767173d63b75726eb81c66297a245e3a4486a9b822cd3232336214cd4421d35dc47e6e4bf76335555dc3adde77d5d0e5dc42b8387a39542bb65639f21373e7232fd4ef374aed691f2bf347df18a97ab56182c9a567786c75853e354ede038ffd7c3841c37496c17f929b91d0d809b7485084e2464c100df253d839e943b6844e20738b27eac4774bd4eb5216502b4f653160ada1d3f6f859c38debd63873919e14b34767bdcd54ca54cea95e57948e7360482877f69fd4f13dcbe524c6d2c9a17d40f35e72342b8b87ca5a84bd7656b3322dcf2bc105bf9dde94036a908702efd83be23e7ad36cd56a00d2cf358e03cfa73aaa758cfd6bd5c9ae4e81a3b2a113a40f98a6fca5f036d4ec5059bed883f45711b5fd0d1b1d00a8896d05c9c0f160c55ed668280fe8a43ff34f64b0c083150466e80faa1dfb6dcb5efc6199d5bfaf20ea3a5eab006337c3f2a81b3babdc51389ca75db63bad6d5f1bc32675d498158a3a3902a3ad97c1958d337d47d1f2b549bfe7d4a0a40bcd2eead6dd9b33417d03801898fad53ea36af822f134ce39ad1d253a0443d272381471ca55f6c6f5955cbe13420b6e43cb07d5cc3e541a44f90524a73da0e9a96af2d8c403512298ced82c85c4a667faf81ebd5c6a6d97c84f947fd35d9ce20a4b95f6cc5f12328f1006b9f657f49ad4e413cfdb465ce1506aaaccd91451f38413d6a15b4792d3c35291719b6ab8a228f94e431a50ac1ef27e8497a13b83bbb711632e4ab79ae3fc0f772ae6376735b401fc52c53ffb43d0a916f71eaffe6f5050fa1ae9355d0535faf547aef9ebcfe6fcb0e80c5dce711ae143dc0bf25d8df8b66163aca9ffd4e7c247d20ac41dfae4b11dc651d90146936cf7b376e292ecfe8cac26c9471330976c21c43baf26a22f1caef1993c2be3c0f97a2de280489756117d5c324ac44696c2f27412bde1c8c0b4d06562ae8b33ead6f83d5f36da79d9e864f432f0dee1d00ec04e6ec87a24d71d248ea5304b6cc10029357d676c42b10596acde0b0720d0572db64facbe91ea5b57627a4f2e6e4a304a4f83bab9364ef1b81b901d33c4fc90cb12167c8f8927643743e53ff795cdc0bb380bf95f01b606c2759e2bf9542bf9937f0d39d282645ddf69c770728ef189bbc37cff784bf0291021cb97e556b6cee9393cecca62d041595f95060f5fc9d1749c2b7235230078b7cbcaa8d172f16b5513a583939f6d1e5cb83735d3fecb8d9f00d5be36ec92d6edd8265132e17e90c995e819bffa18298912b9fe448606184d42d0389b08d863a7350ec643823a877952385637020207b80475d7c5b3e33946489b416305bb1a797bbf516f44d3e108072e011f1377551095f528ba19acf2ac082b49bcc1c095005674872573ef0a7efade6ee988e3d19746a620119543f68d1d9765fc776257bea1a74e5d01fe21ea429914df2dbc924a52c0f2e1091b2c45a85036ee81f8a7adce56c2f970a7e000955de53715736f8f3007287de3b531e7965870e6b424d347f2b1e306509f76bd7457b07eb5e7a869c68ef9fa806d28624e4eda427cfbcc025d898389233efc0fa47533294a48d0d1ce2dd7b151ded0650e71fa32b218cc0518e582b6d53147ad906c4544fa97c224ebf16411b0da0b33a84b16b21e0e6adc68a91dbf00979a87e4e88a6b8b6e35c482c815b8b813c96fea453cfcc67bc9d3697a1bd3a0cae3d9467ddab55e8757db5940b267c7ff8fb82832db6318b2e1a8c719cdc150f79dc755743007e89b8cd687baad9abe3b9567fe3350556ad3f94d49ea989201a187773efb9da8b16e0bb089c92ecd3dc5f4af38effd25da2f080890b5cc4bf2a7fce18bfa51410680df192467339f2b69ef09a077d3909f2338b01b2ba361f452004e3810dfbf8c86dbc07f9be89d8335d48350ddb2854edc3a54a55f2ff5956c985bc025113463106d040b58aa2cb7b7f23b2053ebc63eca992b84da29fbb599821d2d0d5a234b6c1e6c2256e80130e36e8179f6d2c904a5bd9c38faf41c40e7e3042414a26c5e0cc712b4079c1f1a505d883ea9fb5f71e40ea9bf36b0373324f45a4a2893090d8ddab7dcba25afc48ffaead0fa9e23032699760f45f52c347220569c0fa4b514b6bcd012f5982e6c4f517c9b7b54c6af49b5f1800735a4234e9729d24ee97d099e1a314f3fbf7788d3862e0f9cb980a2617b5bee92e513a198ac0a88321397fd67ccad77bd5c67bb26946c7a8bdd66d6fd566b513e0334a2581cc0719a4dfecbd0e66cc0952952595b7900ce7e18cbea5944ff13c0c689e33cb954d11f66ad3cb2826e4373c70ccb0ad5eadaf9eed413491eee86b4b9c754b1f0fdc49f53247be8dd2ef8086bea1bc7080525b58923f30a9b909bc23127b17b8ee98975c613fa7c16297eaf4e9d0e0f34b1212193605ecb721ea8ce1f08e0578782de09f4f66ab88f7d255621d2ba0dd9b605be467ba66b7b4768c65ac5428fd7df55f309b596b5edbce80ba85a9c170bda6c7e5ca872f7812776356f88929b7560fc11bdedb1f45624c367b82f4ec9be37722e43cc09841508010b28a6012b511e027f4217de868fa0f23dfe289927e50d2ff852096d0f72002e6524b4f2d4cb06ba98efb9af7fdd1c689da02d588e60147ff8592a16e4741f438ba31034f14c8b642594341bc733fc8ae031da0b6a18dbf7c6f18306613613c7790be4f38b3b55ffe9c0e1b498c799f9a21b73b6c03262424469339985f1343bd40b3c8099b0103c7ddf1d21c6937cd724d1f824c2a453daab35929bedb9eb54149a1ac57cae866c19da7d01d3266684feb6a8379ec20e7afb306134973afc3bc5c17d55d39c36d0ebc9b05f99013c0d0690cdc10307c64809f0a57317c5e3c4de90e7d3a85419c424a86a753279b7bf0275030994be971617c92209040bad447e9640b462724d99322cc7f6fc1ba9846d1e86696a45a21e9b36c833fcf405095f72f71715d29867e0f4a30a8b4a3d5ff092b24cc574c98cb2f113b50a873a6a62d21e512d55934fb5780da7b8b3138a5b89f1825fbceb975c4581ec322a744d5b60e7f08bfaed73eb1b1f9325ce46be2901962fe78e0053a62172209f378a9f57f58ad205520373679933110197c496008d709f9af912e67649f842597e5ffe63b57ff2614ef13e63e037d927100cd71bbf19f1d7bb6e33cbd26613ed0bebe0088aff734e65d798eee23c89439045a21d8b3247f524d1756daaa8161e8d1c9e81039c673c45cddd5b46fbeb792a8adee075696b49b585257bd73487c6b7f564fa6df984199ecfbc2de1e5e23733fd8b145f67bfcce096474e579ae9ae28d0c3b6f988c440ddb457fc172a9e14b70d8e7b3d88a433399fb4eb6365ee4b67e0bb55ae9c24be33677c1fb4e0b258c488f0dc3a6641d0e7963cbefd9bb1f174e9ee38fd8364d72c03ae622d8efaffecbcb91d462a49c67063afa118b73f123cfb345e69f3729e5f93447080b11729c5f4f9aebb40d139c7b07b5a1afecef8f8c46d74f872e0700e098aac8670554e5ac5eb7bd9bcd239b5aba1db788160ba72b77e4a079544175b848fe5ba7fa132ed96d99ef21c650d74633a178b2a9a84699e4103fd1181c8b4a051f3d0c28d2fbffabfa2cb186c1d987ee1619dbd638bb8d617cff6538696417bd5e17095b04cdb995a59c8cb56968c8a3ab0db89d778be041f084f07a0a5b8353d196f56c78a867c1d4fdace3b8cc1c4c5e61f10bad96672def1cd3e02b81fce77b86210216999aba0ea446a2374599cbdbd48b85878b71138b855ea72d3516f11060d618338e5db7fe3d7f247c9909858e2ed9c1980f2a6554a05fa20bc422b1c0a8ce3bf83fe2e3314cb7e1dd812308ece110c4f890a20f79cbcd33653b67770a6589a9a36bf624fd5cfb99e7d2d317b4e2eecf1365ca2172264ecf1dcdacd9b15b2ec218e0779712f3217c9137c811f34fe6bb9313720c4364d12664a6b8c682ecee719402d905432f8b57ea7db9226d61d6153fc4fbaa73a363da3e239792a063aa4cd39a9b856f305722a749e567b3677a1f4ef6574546cd0e1d69c1a47b8a1e9a69153af4181d371823ed74f826e119215c6d4183587e9c147c734b479a931682aafa27bafff06af33ce782dae2e1f30cdac5d7bc2b0e30c01c021ce7c4dd0e36489fe86bc3d80a1b380aa796968b1808252b9a2931d9b6b206568b421b465df097c5efa1dd2eea444ca24b0ed3be208a508642b57024d2516d5fd9d6ee8465cc89ae01c556257cc14713ea5321e97d439d1f5c434f4a648646019c46625ce6ae2703bc5bf5815fabb3b883e03960823970859e4fa6bfbfcf8628020d131dd797b21600fbd8c942b723dcfffa79caeeea8e5611f2f1647dd1071d397fd72b57f8737ce65aec715735f91465c019a1f9e6e8073e319f1773a5bd1e53c6633da59627ce05ca0d16bc671af11d9e47a1871cd7b2d64b92d3e89cdb1c4eb7c44578c5927f5f4234f22f318d72bb729627d1a1ec0f825a3d5dc8500d1f1f9b7b6b68879422afbef855c2f77aaaf6a6d964f46467e9140f84c4cdf71d4747b4fefd550b03c9f177069eda77c12d27ef2452877228084ed4c6d959721715ab6c66fd058a356b98e752c20b0a758024fdeff096b2813e17a4ce539aa1b548a73379cec111445cdb1f70a8327b1111bf8c8ed8f999b8ed30c712f4ebbbd037d7bfc13c058b028319f00ccd5a58964623012bd92375cd06774acd035491262b931ae05c8f54605c8f8e19dc1f6472fdb1e6e6a44a4ffb371297e8d03448d807f9fbd1375b2139cd548c4260897adee60c82c11255b06fd8140814e6c8fd3918ce67294c84244921deea23e6670a0e951685c451bd8d014426fb64bc259b1d249bf9a6418963957410faabc14e797e21689d6165e5a40df64603b6c37ef6b54c01fc52ae37496318f47c06d11041a189e16e19c3fc2b336c03a4852122921a45a3e770b88da5d1b56d81f1925f948b6f06e4edbd8128eb5016c6fcfb807ab85a0d67956097528293a8f4bb06a2a298db4f8849ce20ee5dff91c1f094fda52a68a5e42b13794ba9f889fd5ef6c0f57192387e793d7d96421791cf27e6ac118c10fbb0ba7b2d3595ffb6defec98478c84e91deb339f32de214fbe20dc0643da851d5125e349ec1e8f098f675838d60517b76240e5b2833c58e4fbe1c915f1e185194bf6c85ae8b169cb92d40fb6507b4efdd87cc9fbf7e467bf788ae9ecf39845a0c455e1645c68b8a8cffcf49d6c8d4f04c6b636527810f95b2b1189c3aa0ea31f95ed0226b174ee4014bda6f6f65a3157252dce3db31fe0991de06d78b08ca3e8bb1d20fae3d06c6f12643ab0023f416159c45c8e697b7a2beef8ee7a51bde1de4d691a0b8a3e1f3268e285f68de4abc9600eea9d8483729b17baefd82111d20ee7b3963feff0d5a5a46db73b83e83df49b71d50ec4c25f1c04247a584f788055732111cfd0dcd87ad362cc036477628260a851d5035e2a82c402fe99e75b0622275c85a9f74eb451dfe67c341c663b8e9feac0fd3524344b65b997ccaaa2a18d197ac05394f2c88d9fa3f725d44273705a7782f89190ae8936e2e287a518e61d524b89c878adb91d789415c806f48fde6e762a74d188d2780d9402b50d9da658c24c6761950e337c9108a2f6cab82ddadba094d249a343ed11a24781eb490292dba52b1ecda883c55dfeeb3e413948f063db016c4fc90cca60e46df71c7d7721efadce774b311a52bdbc77c733cb54e8c145b700b56945cc73ea55c31ee8619740e3baf2fb1d8e9666212f4469b5235ecd4717d6c6d26a481970f18889d9353206dbd8207f27ef0fcc04192e903c4ae2bad3e2f5844698976611fefb8145f469026a821843d63bc47b50527b396464aefd0cadebf9bacc9101b44fef45798245e26abe48cb764a01b99c2437cbd03bb0b3dd3f947c3a6eb6218b7a64af2663a006da9232b5186441305785d0a165f9a59aecddb030c4bf9fe72a6b22db617538a40d52e718f44bb8a65990acc00609e2932584ccffe422b0209b77a99099522beaadfd4bf2267614bf2e5ba40119f51a3d116ee6a85d922e351075fb874f8114075172906c7c7ef7a391c427e53e23f720f27cf2e3e54b4b9f50d915e9b45489f5147f6894fc3a12a27caaa30aefbe784a92e32c28ad64cb41380798ac57a534addad336f7e0e8147d80796d418bfb2fd205da9cdd44875b3fe28eedbfe773c3eb1b3988309c259ca85a5e92621bed06af1a53f0d8a5199f79451c311d38970211e08e084b8422938b5aac6ded785c6854813d90a8c989dfe5da26ccfb6fe294cb867ea92d6f5e22d64208501b5a8c4a4009b9782490785e9e7f84339931533b8f4ccf078c7311a136335faaa3e2d021bcc7ed0ce7c76c120b39f1671230d00c12dac7e575ed3d5cbc53fa98c4d8c1c4b1c530c5c67278aa9a5de5c549ad80310c572d0f629bbf628879b290930d96103cb2264172dae0b052ec76a1dfa5c58e22c9cfa5b17b075d9c20ea20a18457f93cbce61aa63cc15bb5d8b6988982439f1ca7ff9c6e9c6b0f72ac2262aa4c51f40cb4776f7f8bec7ff298c9ded53f6213d73bfccbd92dcb9ec4ad1fc4ba87220b1f59a55f3f91d6b10c73ea84008425654aa8fffc724b17861722d508f32250582e3bb15e42e083eb7d8e3d96caa7545b899347cb53c3657e6d3ce9b4344bcd160e2128af72113dffb8228e5b57e4c679454f505eddc7446aabec084e216b76c878ef6c36a6c2539d68536308253d45d9efc3162c1bb9279520b543aaf3d7a904ce0e5e9a8da3843c2613959c91397399b38d8494f66b784c1cb2e69a193fc41b96b998d0a031708673821db80e20e58ae967260262a92756decf26ea982366ddd30e7963f679266e6fabbce7046b63dbb272e1fd9c3440dfe494ed8c92192a939751314c8d51a02c3d94290561a3e0798409cc605cb9b2e872dacf78fffb712fc586e29da8fe83ab45dfd7a7accd10b99d6a375b538d3bfc01f2696943258a2f404c084d566e1e73af182f323b43814e9c627eafd9e83ebd6082fccb447525eb67b945191350d02ba29e9caeb56e05db4db25d6a1f653bd1c62c7fb241dbd79d30f04b3fa0f99586a250bac29f9681561864c8a82a0a9236eea07ef45d4c124d32e3caff46e2bbfb3f6e9aa327aa96b1286fb2b863397957cac5213de84bffa711cc23ff48d48641f6909ab1d741c4e78ef231fb153ff69a1f72066a34fa6b56e1cc1b884c76b70c32e7113c9e25136036ef79b43131357945fdbed5c3d82113db8f8d2dd8803f6df59450dbd19ab6bad704bad3dd3468c1874cdaddcba935751f44a3a303a647c16c4cd74335fd51939df23b91c80dfe7dd66d35e1cb33e2cbdce4a9fbad02d32f23e89ed2c64c240be42b640e7e94d782b43a3a6313cecc456109ce82e236932919762283f9ab136651a3be05aec96eb815cb65258e0637dcc2b74d5e713fb0157cbc76bbfa9084c757990530d60f83b970aefb1114a8a4e8b1dd48137046d52d02bec72edcd230261e442a3faaeec49479c379e28fd9da8a9fa009081bc1660df557c552ca748006dab4acfab699e198ae69f77f1e755c502ef904a083ac7cb7a74b0a7d2ee60003ac576e55aa05dabf20dc772c301bcb6b92bf2862e591bd5919eab73f5dd572a15ab53eb4b7beaddc25c4cb1c1bf336e9fbe4a4be8cc057ac836f6d6631cb265d2c6d8174ff517d1980749817651c17b54a9fff3aa15fb953ebd6b008f65b8622fc202be731e8986c3b03130c6f968a672daba7bf4e7de6b84624fd2110a2e083904833584aba821b8884c74ce99c963f15c565d8d1fa96cb924755ca4d55e1dcf48bb6b8f619223d3cc48be44ab3984fd3dd7d5fca0838670d2d01703fff368aeac80c2139a72064fb33dae7d9f2d084ae7e181c7426bdcd88a78258fdea25300024f8219c0cea9a6357493720a068eb32aa589432ef7176f4515c5f48e883a3ff9a20a64156c6bd554275452d8da82624f38081d989a4d70d231e9327e5a050d61634ac2e6b37b23bf53606103c885bc7fedf91fcb8ce4209ce0a4f52bd3731c84f9130471dd1f6d194c7d56e968d09e0bf29c07ec9786e24f35023a662d5818fa9ace02a31b3d0dc20626df0b41b41506c9469c95bcf44e32246e8540124228715a57fc5ff8b1a4f973d54f05a77e81ebde802f0843211629fa8b459c4c65b40ea23ad9035e449d462cc0cbf9acb39df725d9f1aaa6a55d396e42fb4e0a19e7c5b3e635caecba54e3f931f92d98066f735c6c9f148216702042db1331c228dffe0cf2f96d36ded9bb4876ec461ebfc7fa7892efb90436aeefdd9bc9c93e4c532d5fbdfcbcd8302022def12e4494c113188c1fdcd5bb44628a1f3366fbca11a5898d00de71417e5eeea0e89c46e1a4ddae2a2af887f3c478146ffd8f177a1ecbc897d9fa3ada4207ec79a81ea4c1e34454a2f2cc138e61fb211c1239b84f0b603d2b16c4b9bc4b1409a10e236da42ff30943785c8c0ceeab8ca2d93ee0de65e3d6d99e7f300b8ee54669b8c97fccc537c1661516dfc6d26b0fd91d0acfac4442d132980d518bb47a9c02bc7001ece4d45937784a7d408b97542be3076e065faaa1364399b6b8ae980514aededd8ba58ff327677af7018759658f0014abdb05d0e66d16e4ef30b63293413e3e55daed23bc9a4342db92a31a23c937fd276c0b122c61561524f5714a6c9088cac189d3c6e57ae86b25e86a0968e9827f3a923405097a3e3e66e9b30d6796f90d93da483fe59ae0ca2e9a823792296438385d14d0518692a2b126cd177df55b9d97035191ac4e1756afef5f31206e166e6ab5301dfd3a40c966c971073c0d49b859bb7dc00a521a93d5e5642bc13e19f58aad6d284b14581e4c7595f807e8a3b115d75adc85a965fb687161387b2cf97d075f018b1c6bf11ccb5a7e18329d00ac576556687ce0893b096d3881ad7760340e7617551832e6825b50d7d8020a0cabaf544de6d9d6c0f23ee60868ef262eb3cace52ed62eccf94060a2ca6447b9017553b201979ad3197e600dde23233c3d605f36fc55cb463191934f05ccd2521efa66db421881032e9ced232d7cd063479a0747082d36d1c33419d10f0bb66749e50b884c6a086d2017f6306ddc383d79e2ae35ccd9f2e7746c3ed99260714e80057342cd861f9a5378a43afd3f21243e154a40e50adc6ccf92a7bb27607803131c791cacfabad17b54ee285de1a9c52d7724d0137b3ce3de24defc9a1f45cd78b24f76c2a2a60c559680165d074d9cbda8b6f607fdb70d0084f9c853b6675173e7469b5e1606d65a4d6f0fae89e55e05c320606d49048b790d49405d703bb530991cc8e485a92eb7a314c4b9929b9e0421f4e6cea921df705dd37567e49de3c83d3292dacc6d2a9e02fd983d4e3a506d1148c2e111abc704962cb2d126ae84bc1f00037da483ef2cbf710c8749b9f203ecce8671f7169d61a182cfb3ad9b46765797bdb2244fbef0af565d2f9efe9a7a0502c54dac49e08393c46867ee00de19597da9865cd876738ab9d1edca54c4059dc2c6b531c232fe06c467f76837bff602f775a79ebc4bd39597d5f49e8f6e2a3ae4022508ca7319a52d3de7d3142cc5ded07a04bb6faaae310e3b78d4cb7ca32d3a602c0cd20bc92afb07bc5559f2c89dafc8b9c49fe7b597b35ea8cd9e46263e57d10f93aec7da8b2a85147c6e461ed8e3007c8032bf4225d02bee27f7659a53b3201bb7de5dc81df29691d024da6a80da6c98dccbd16ca19c928ad1284774a604360395be285b8ddbb55b699aed418d144c85b6bdad5e748a4bb296e88f4fd823d137095fbf7f21fdd61c455f702eda361e9a6e6edd4cb32cb7f645f516d9e812a0be375605c2c72c0047bad3d87f77396c6ab5460f1c3ea254812b3168715dccf0dad06b9611b9973b46e038be7fd48c2a54533da7843c445d5df6a1438bc3af55af180e05133cca8198168b002f47dfdb5b68bd748e2c05e2286366fad7cbe2c1b117169ebb6c32b00c517cda388c7d818556e527fcacd528c641823650872d559f82ab311a3c21ef0adaf55463c87adb54b53b182f686dce8f5662ecf88d45e61cb19f951163d8e9a1e991db850cff638b179b3f3e8a323f0995650a6e7c21739735bf126a81b60586a3a8d7a0a3d068124571ef4b6bc1513383b6750ac630854ecb0a0b2edd97e0ae25fcfd370ff6e17cac3cb539500443824740477b7c0d7680b3e0df1c71676752d6f50346212c2f8b76c9bc53c5a805f969bf057bffe482136b1c8345f2c80f4cdcac87c6d64a04dc7a16299bd98ab6a231ffed9444dbb03511b7f5c0b446d9864b246406c8d04888af6d2fcb47163ce718bd52ac53cce42d61623268a734cfb3d41c0d7e5fc215361a82d305b5b71a6abd588e79f73b924c76abe9d304316496a07edf3aa4c104438fcf193c4398d8374599f72de556725c7df47578abfb2ffeff0b33302946cda76669d10118691f017962edeeee7b13428c67749d3bb9c1347bd111d3b1235db61e72ef9cb0f8b4c444e712ad4cd64516e908fb5e11a6024957180467c7fbce4b97be6204199739fc46c323dcc91364ddd91f44867b9ee44866ba5d591566ec2e0bdb26c5a49e7358f951267892d8821997a48ac8e88af59afc18c2615783abd77027461aa4214c59dd37d1c69b8a90179a0f4ad83774063f35d10e7357b4f635ed8d80f13647438edd5619d4c68ff232a439fc92b70e1d5868fc860726e122e2cad79c448993ebf8828b3e412b6e407314115ad20af03783d4709a7b3bf1fcf692714145073c9612778cde57d49b45b54574f76d487ded86edc358a7b0ccbff13f41057964c5e5630a751aeec08150ad3c979bc5c95c16e84eae4fc12d48a384b53e8f50ae9fcf5507edc0c71f8e1491bd9781ebba1dd1c4bf2003619b995f2f3a4cf024e8c93d19534930c15fbac5569d1366b17076b12b014f3ac9a206dc0d75daaf23547bf595861fbd209d23b2a4afffe4b94c26269a5f62f6f3a192667a2994c30502ed97366c896b2a993a63cf1a03dbc37f02c323d64fd9b148dfb7b70ab3420acd8ba24c17f23c80b019e3bc6bd8e5901e01812d74f3680689658c6afbe584c8f5ea5a77d463dc49f4595708158b7460d48597e8fe147a9aef06d0ba2ce67321a283507c443eb3396ffc63833dc9ddd01a8d181fc460ab23c46d533be8d87e919ca13e45ce6ee3f00ac2809d753fc22a1383602f423e117a07cb9a05ea749ec72bee45281f49afa9947fd0f9953227688cba197af928763986e946c8e1fa2acbc05a0b7821890f07549280105bdfc53ffaa03b664f8641a46c2641caa296c0eeabfcdc3424c0acbaf4e9d1cc36a112dfaab74bc55d5f900a4200c1319c6062179619095982846c41336033341185c02744e80a4dc4564cae8f0dcc792134c3eaab1c742029070fa5962bd517cef3745f34d113b20f24ba505cb2ad5b59c9bbc1d3504b76eb13da01db984570f22de60cd7258ca9be8386d704a5279029bf32bcf4f5255ed33cc2ee1e89430d5088b890be9c8927be23de541ad628a743dffa1248fac2f990f515f158b743f1d667923ab3f0ec31a7ca697be3cc1dd688d4bcc0ccaf26bbac6c8564d0d5e335574844c6383c9dfc1c981c0afb1307a93cad26ec0990f452130618e395b7d31b910091b9f3eddd5422615d35dfafe5bbd62324d54bb9ea5b971c184477f7114f914b5ac2e61843cd6c9444e2e5f6316f244c36dbe1a4e5022fb0476b194cb5c60eef1152b211cdd130237ce13120e473d57a9f23ec503f789a57f8d877368339cc570ec00f4a598c46e4504fa8636274b157c199647afcea5f2925b2515e12af4078fbaaa0e6e0434e566ad011e5e6b604f92b25b46f4fe8e6e11c8e14e713eda1a2a92f99b3a9feea9a696b948ac390b42b9887e47ccc578d677410882a572c860bd1f8b56bb6ed5317d8838df93378eb74c6efb962ab355fc824c8cc2305ce228cc56344d5393eff41b5c47b6e5958fc8951d379b5998162a379b9f2d532b8deef7a603c3808f2ef5557cb79bcf416fb390ca8d49549c0af9621df42d97260f6f3c1b6b47ebafcddf2118c68a7e285b2dae13041efb94355eefb9b9152640d76b55e2149ae90b00bf894643c7c2da0a7fbb8acf504657346841a52ab5ec4de5586747d8ab46b474e506745561466eda45e477a2a2d0267bae40d4738b8f32eed753411fd3ac8745cc4894a5c694000528d9d5e989285018ed2e7b5634bd33e7b63b9b129b1f5000cf48734489b43ceaf34c6507bcd989d50359ec3f13fa2206e27ea3621b074277f4c7ce9b660190ee2f7fce462d7cd708ef1bc60641002bf7d7b4084f6006a761e875c2761e97e946feb5d3998f3033f213fc38404e656ae34e7f77e2e329e02d2d9e72e2880abc033574c39ee36467decc50664040a06bee0c0268a0d0dfc05c156baeb896844468695063447705c470a185a502bed025568abd8e4d6aa716267ba5a7f8c04b92742fe44911d6e149bbfb6eaaf9f3fa6879354d110c6b2f35d71c9f533c1ea43e763b6c2d843decd8193566adbfb6332a5f1efb1b6140a2b7bd9c71c495ec1edac590acbcdff65d5566e61fdf0896f62cf231736cb71a2f23f7919a351bbdc4860084d09ee37577439eb84b992dfb1a2e1bbbeef57a715e9916632945b81248c382d164dac24e35228d7a3477d04ecb3cb1e77898d857537f9d710a4612c2bd125172b02b4fa486558a451e20aa554e1e9aad4d19244393e51c3b5465d90fac8206ddd6c45b7eba24eb03826abf39ab5b6b3b0c38030f47ee10c6d91fc70ba257ff6011db408b5680d0a1c7a7d0aaf748982c2d132b7e8be254589299af30e85439f27b2b0f6f090b9da63e1ee27dbc6d9cc100db42465a767b54a3459920c0de181b31104cd18aec9dd38d961b35614cb45b7f5d6a9ceafa9be891a69a6fff0ca3a58871d47fe56e0a7a632c12fb625fc58174e779c4abd0fd705e13d2da7e7c53ce9a3609db583e20a42c20c9533f3606f4b28f3911b281218a59fe2684befaef191217b9ea3a0e76661650a938640cdb926fea8de0243a2310ebd9efdcfc09bc9a3a9dbfb00969f3e0c1db8ef76c4bc751d3992f24d9e37ba31500eda9ff9496153b8e99a34d3acde9339767e4365125a6b30922f7812cc495e83103adf918cb57da23242b43dbee686f64a83732239d80055096df4e0b7749aea82be5e757358c0f1decb2d5f084dc6ecd2f7b8b259194b377e22bf23283fc2091362e16ca265b3c94a60ec776efc7e8fc70f80f5a8f2d799d6f8c77a6de500bc20635f14f74227a28c1c8084655e2fb1ae4d3a13276cd86cf9525d1bcf65da3e54e1e3dfa2fa767110cb1fdb8455bc8a20f6daa058eb4f477879b36fdaafda2438e9113907bd7347aec658166505a26a87fa21a04fc72e47f46d7c2c718e1017733aab5a5986e1692bbc8f26446d14ab181393a1093c3a9e6d91dd858e6c3a47e5c0383f784b468fded1cdcf4343827c5fbc6e85e36aefddce2f28f6aeccb32d7a62bb9f0f94a71ccfc47e0a46ecf279c8e896846b1be00c49f01df36d61b84fe8a4b21fb04c757d2be342d53893ee7d6433b183e801441f6b3e6d46233cce85b774f7e28ca9a61a5163d342f39d3fd1a2f02134b69f8ea496812e1c13b09024ae26833e3849089798a84e04f1d9675742cdf3a1271b1ad7b815e19bfa22525e19e04e4231e7f111202be28e37f6e3d456a003d5ea6929eca55f8c4c846ab7c534052760c4b7c189bc379871ab99edb8e6ebfa240124cd17a6b293bfb25a959713fdc0006b3114e25a4ae4442f8011df102dd1d03d1834f2002a75a39b776e7cdb0f7142231ca6f34c7f706bff61ed7e643a885489a5fe59d604230f07ba3014031e83768390e93c73484a6db12adb2987ad6fe486386dd62a625b85f7e4710acef6929c6ff6df826f2860e1950226004813d113d151598b24f00ed62948aff7089857e1c035b8b5f7242019a06fd71b99d860028395b9669774643094a5fd982eff72704ac5f8b62b0f626ecf0055f2eedf5d20ae1be7deefc69a79467bc0f9713e564be746e8fbc11f7b710f6226ddd9c8ace363c9b70f9e3fcbdbbd17def8576b3da16b5c84171fcc9d3121a8312c4a473b84f2bb860aad804e37f92f987a3182a29bf8eff557e86c200e2fa70f8dc030b2a2dc57920dac49b2a5678fb5b7ab862a1ecd0ddfd31a9c5f5057b9c531ab717a010bf92817abc58b972c575bd24d657a14f421c3a07acb311ee614b2f9f890ff14a4d048afc983c5c41c0955d33e6c4743981d9699b5cf21da07572a20082ae693e0247c524cb4488f0d8e516b15619081701bd77e1d0375905decb167df8ad52688bbb5b12b9b9fe49e80c72a4dccb2b488800467b43bcfce774279a4dc6040e0d91822322a13942507d77d7e14436d01ef3dc25137db8d9c5087e743e4cf37524e16a46f1399431e237a05525a9f13d5cef6f536adc6ed2d7437a31094369b53a4d0e7b1b70098e30bbc9b8ef13d3aa1f93f78263632dc1e1767cf447c1fbe71d8131d6e79b2edf5b299794d47910e68c16c598187c019e09b16eae77acfc36345c385e81ae1da591bce8e47f35aff0cf11a91215e5d064b66e528ed382b9b06cdc6745682d5e2cd8f9b1509c820265f8f5529b458e44f2b1a4a4e92e9f51bd5a8468eb90e16a1c612eb3188aef54910872560665f7838ca9e35200ee1639e505dbf2874fbe17d4d6a2052da45df3c64eace454b511f3af6899a08c8db9ee612fc6848c5f0b151543d6f70b382b1d970c8232dc071a32fb39750f926af083256e0e81dd3294b436321d4734cfa74ac95b156f558b27eaff56158e6275d6e0da0505f313e68c42e2a0181d85e27a8075b9e7b8595d7ef25e8ce3c733bb83dd9518a14b9b47d11748665ebb0870bd09785a1e1ec414f3bc8316054befe41ca65d4575340a4f6ce019f130ccfd7bbce106186922df114a6ebd37969c772e44cd8b274ec254a0ad919be523765088db28572fc4dc22d5753622e6fd9d78bbc831ab41aa099d4ca7ac6c9190238109ac56e47c0db48172d6403e126f6f4a0598402615bdb504992f1d96348123fd1435fbaa0bb9c3646cf50a7ddb658398df4889bb50161d93331d55cbc4955240fbaff50d3944ca0b055fd7b6ce0bf2777adbac1a1ccd60d2aa2fab500da32662f77915dd0e14f3cec86560143752c7b87aba91d836c95768656251c2c73f5849b717ee446c7005aa1df3054a5073d8e9eaf7e7b66843815faef6343f78bcb34ceb18dfa252d67045560ed7d464e95903fd8f7b2155fbf3128b41e3cc8d15f15af1a8c21b72b6efc7bf222c0942e1f96c187b2bd33b82550d537c196f7788ebbe55b4282e065602612ceae3d4283ee62d6a22a1e1175a0a36ce93c37297dcf348fee3a2e0b5dc2b0bdebbe3d71dfd77342f67672b070d96eaf8da5d2bcf9ac2f278b42de4010b874a7384aefca9ffc2effb9cb29234ca02046a9e2cc8376da6b5fd0a646b25b64013c63b49062339e4716c616dfd28aeb43eee81cb411afeb9ca6322990bb1595f6a1f5b153ed2372858e80c15f427dfb06414bacd2b2a7a2f29ae37f100a90c086888b7d117bb75e52dbb68f1181f3088098982be21edaae5ccd7037f53760a12159643eb09be2e8cc3d039e8550bf8c84fa670c34708642bf076440add02c7ccc4049b731267d6a7d25743de200b62399befd2030273565c12948e86dff476b06a6ca7d7e7413c9a43619fcae00357cb9218e5e505b0bcbf3068b1320d8b1e68a8dbbd1a4b8ef014160ee18a060e42692744565bfee6d8f408f958e92915f87a13e20d8dd8c27a0dbb7edaefa20946e685823834106e72a9d69d592673e63d83e821a250ec2294a03b3eb90003262c165c5eb6aaf991d9839e95bfe3c0f93edff2f6db2e8fc3e35bf99736c52c0f7265dd2215e7419b3d55c133194ddf2665d488b6ed763f2e9e86163d04cda373129d17fed35ce66ccd9f8a5656dc9ed32f1792ea1e751aff9fefcdaaed980f0c9eb365dea7ee9c0b0b8186ef927978fc92a92e9b7dc03a8c19d6d236080ae072a248e3c6d3ca53436feef51e13d6cadc478fd1077f529ca7cca72b3c6cd42810980764144b9efadfe85a783a30d3b9d9b603e76e08ed3164a73db41825522f1705195fafea354ceac10b2ad2432be43d658690dc254e23cb88f7022ebb12046512d47a46dfdff5e78249565ceda1fc961408696329b03f502696dd16f50e9317b88eb2994d355e57148fcdf9422948bc9a26ac959ef750567042d54bc3382419c372c8e46d2f5a4cb637cd13a7d9be1cab53e8d41f7ded4560449286b4ddda3e96aed1e1e71adf98268bc0bfd00b48cbf01004e5860e9ecaa8d0396a34d97969416200792f3dbc4b0635465ddb3f74718334d13988c061d6108a7bc75f31855c57fa497c603845e635706239a7421ca520e609935b696004b5c235162e44c61c1cff4adb9d5d7523432ea64fc741228a36f4502686463d899f25ec1e62fd28525b6b40ce360c6ad2b2e412a8b1056f04d8844c8d9d1c8f50f9e6852f630f9238fbb796c0340b5fdefdb1a7cb6fc8151ed905c277d3bc26bef9f7c3ccb128605642449f7c18cf519267f9b68d9128ae7a2bc69a8022154435441b15ffbf376c480cec95aedd24b369b76fa6c8434eb12ec95547ee23f94343a3a97cfaec3d7363633aa0c74dfe0449ecda2c8fa7a1f6c86b1985628303e1d15869ec98d901bc434915737a8fd88d2f9cf622878fcf84496ecf4515b41ff70c87d1a30d3020cb0fd815a65c9077bb2fc12b81faa1c48796506929b98f00faba1dcd023d46a1065e18e799edb64ec03a72827015a64b2084e34b88bf816c52d736ede34d877520462ed6879c7bd74d933d979dd30005d4bbc483e008b9024d76a41066878516c4722517c0528f2eee3161036a1d4fd5f804e9c7c049a5a3d37184b63a09168c7f5f229a60ae6e574f7034edcf782ba57dba880d8cb8aefdc85fa1e0be2e9befab5b355cd1499b528f8c65db56eaa98440138465745c7826db1d442127c030e45b619fb8a42a818fe28507026f2050d0b32cc661dcfd919d0986db876ed34911d83e2c8550ba2f39086fe317dfc3c026275e2afeacec7fdfee3f6b2e3160d23ee873ca8f122c61f542d26703f0544afc1d92a023fbea6821823cd2dad5bbb25c8744e2a5ed1695aed024f4076e0be8504eca2a501217e33b910c0d4cebc638538e463eb66ee4d3f71737a5dfdd06ed09b4e9fef28461303cd29376e4e33e0bc72906e015df56ce10557c84ca3b9f075a9a9ad8e669cdc6c362dac8f6c5cee785183b35eabb5cc64bd267842b07cd479a2bce8c7be6ef88cccc434ec7af0b5603106e77cdc83e4ba75b3cf5746b1cdb8c89c2c2515eecf91a21a229b954dd1444c61b8dc2aa8ebaaf321cd92d26fb11d57578d76b3cba6ede0fb7ba909cfa9e088e5e2b81e8387fe685f5415a0f98f932c966f9c226ade56736cccbcd4cf34a896b6b584b915bad166a932d1d73558a31322bb16e3ff16774a900dd0c9d872e92b6064dc9f5378071fad006e54d16898be0478ee8c83888ec7422c9036b40b650575a413faf99793f1ec584d85c5ba438353c9dc3ae6a5cabf78c5e08b3e2d6cee844e1fa17c566e58a5cdf986e143fcadf2f0fe63a9b20ceb89bee7e0ca794570a5c66906daa027b67d98f29a997a28ab4aa0bb5d2d35051bb94e99e72250eea172a1432c22c32d1eb72199918ec794121a5a695a141f4dbaba135034735feec2211d12a1e703cef6f10241595d7836d5f51849306ed0bdf793adfd52274421a6101759f3dd9aeb393330ac849c0b6d24bb98380a435fe38d0b9b91981f490e2692132b142b078062e609cab11a52b29d1201dcb8772e34b7a3060f573f1ea2f42091f8cb10e3c47824f8241fb297c7fd2a08753cca39f310c20156cd16902a41914f84b6f6c41f4b0ecd5d8b0e8576292bf2a59d4a9e65cd6be4acdf25a18ab526564e1c65e0caf210655a19f97ea95f68d13c75fe2beb1a095605ff7a665777e715601d78d2dd66966a96658dd6f5e7e5121342adf8c522ee6bbd3a2f221de511a223050c375b72b877957d98c87afb5854139e65820547729988975451ea62b301d47b93f073b925fb0f8662ed7fe19afb73519db7a929eb2d5f1258c4ee10e2b2e6a32829c632e3d7c0d5718022d042f6bfbf44f77cf7cad5791cdb653e57b0edf1b8d8dbcaacdaa47f401d319ea2b365c9581eaa3ae8335d2dcd3ab38809b6b4aa28a8c57b9705bfde806f2b72272292f1ae89f15f664de07d595fbc0e9120e9db90c206886208ee1c34474ed6dfde11be64b54a11607417ee93ef67bf1fa5131714eb3e05246fe61ff8767a3c7dc20398ed42621244bcfae5a2b0761eee24aa2c3752f0eb3bf5a9d2ed2546f3d293fdfbcf2f328c961fa055a6e2b0cca6c6fc13a0278c7cb3ea1c5c86f633fcd0c2c36dd8379bf1a8db1fd4eed4ae6164410dc2e71ef37ca5e976d495e570916151810eee4a5fa601d45c84aec7691779747a73e9ba1d75e14871b00d3d233855c69da18c69ff83593a40bb4ea550249393c15c7bb0a28721543bca2b188610368940e3992a95129976ebb10f738ceb3932d076c4697e609e9f563e66e5dc2d031df5009a4a631e329dbef19cc387c95163fff7243aac29f731f052b46c9547af09bca4eb47db3c474090f3f984b245b3520ac0a7b513d0388e2401db59be9307db6324a306f7a226b3ca8794761fd408f60800759a0d42d0715c0084fb120925eec9dafead7cf898910c40f77c57556e411c8aaaea9bdb8053ee97fbb0c219cd07b759c462cfd871eadf00e4e733b04201ee6b5838dd836fefcc17fda5c13a72e917fce7b6f1b6f1d7ecb940dce301e7d470fa2dc715e2d4354cad82d276059099a8b00042179d0b7e9da97f5015eec66738868c0a3c5edbd72c9c38c6e9703834796c9fc4a52363408e52be78341c6435b82364e7940d8a222deee20ce056a2bb2e5a5474394719ca0baa2981d84dde85d4c5bf153e1826ff695bdcf7a1c3a37f3a34ac0a49e7be198c10a18a7c4e6326ad0d89f8a92c4ac68bece32990240818e20a9320a1eb2502e2cc73aff56958515f61aada2c241083e25a611610ac23caf592ceb8d61c20cce2247c29bbd4490681c4682768d8544b09cacc8c2fb5ad3634cf0a48ea121058613792bd019a2ea25ba247cfd4035b0c98b9214cc210ba453f7373a03da6543e77cd15100854981257d26206fdcc9d84275441ca5fd9b797767cff0b839788f3918a5bcd27e361a1cf7c87b1b29a60ee742183580efca0e1feb7caff0854f33d585ef79e4dc269a459764c565bd303c8ec9c1338eece870a0aca0829d44e5d6cdc02cdf76b70dd7595f56550010922e33c3833881f7ae6c798d4178c997d092e7e93765ad921ef15773f67edd4a2b74f9654fe995346e84ad3ad2b686557853132deb1379d51c666fd191fee988dbf459e908ec5e9ed6c68ae1599ead65c11d63259acf8bae98d567555aff5ec72908a8e03505d878b88066bf5ed1bbee533d4b035a0894ecde0b5f5c2f637942365065dee24ee69e08a1f0bddbe16665974bb7fa4266bd4770c76d15b104e90d169bfe376acaf5d665a3be9d0455a3c1dd0140594d480965700d53a42180967d851674fe75403175e08b8746fabbadf5177454fe7e865d6b20b41d8f4f27c4c55b1dcff984ade8e900d0c0c44848cff05c6d95135639c881788f73b66e685f1ee35ad7f73407bd5f1d7fa74f2490afddc2becf43b06f002f56ff407e94b1673cf5a366448c7a6b795053174f960a4831e4cbd702a3bfcaf41e3424d5d6bde8bd431055515bd00de5eba1017ff6f747049be50df3053ade2808402c1f7d4e5fda1a861f3164cb7064089074472392d704ee0a8830e2be683b4b3656abeffb7a5f5eaf03b5fb1d97407ecbca33f315f21c3e8a7da62ddd9cb67c6a420faf86fd21dbcadc589c7b6cfccde3f3f0afe9f9335910e44b523b91f9b1300e11e64f24457c097d72769409a78cf584bef080c70763f6eb52518aa2a6f92538522c767683f5e80bc76e4e151553ff6430f8b97a733846cd96b2277f76cbf8123821315018181cd56ec2fa030b77d55996d30b8e78cd0cb1363c86a2ee82dd3c58d03bf87a5dbe473c07c931ccbc5539c5c7f08fcbb4cb2ed31fee49482766116b28a6f36a16a6d3cd6ef2454ed6758ca2e4201a6b88a09c5839db626402bc2c787d2ebdbacae61aa19246bec4e3b6b66d509953d04dd2774b419c0161e7c16a8cb8cc05744ab0f8bb391fa18246a37a39c39577ec920b5044d2efd0ad04e93630e8f824bdfaebf7935565a6915de233ba22e5c4bd9795aa069bda5b78d893047b58debcc7b16a68f30fc22fa38d53bed427931b65802e912c4fe41623886e57cfd5278e9d63329a5d505d4e2a44acdaa7e9e8410c94ae6fa4e3266a1110c31c25538954e63112b71ad1920d20fc1705862aafefe810ff02abce5b86f0f7ba189ce5dbf35457652444c2bbff98ab8f4a72e0f74604bcb99c3706376dc1f5bb419f8be3b9ae2810c41e11dfd8adf90eed1f92c2f70ac5eccccff172ffcb516509c941e693b3b8d14e1066a209b66780ff57a37a0a0e86867fcdb2f8d7fb2cc04a328824a1b90e1f2e4259447015caecbb76e1670459b7c2459f074342847de43aaf821eae1b802e5baffc28f78c0499df76f5965247b9f4c48a8025d8b46c8a67dc9f80574e8bb337c5f28fecf801d1506cce3fceb45103ab54c2080b7ba9c32b79b952b9934d40b4234f17873aec4ab426fa19ae5a326eaac8d9d099d7007b32b57f1ff356a77054f346f061c8b1789c8ee1cc1c239549c002127f477142f30f90f4e91f7b0439890c8b0d58ac5d7edcf1fdc2a09c4d85c6f5488be128194b3bb8cfaf311308c094b8b93383fbd2db343c056de9862ce1e72a9d91cd91810b714dce9a24f2d3f15e64900e265e8b77a801d606678c12dd381cd04d2436728f0331e6cc01a96fcee67b682f9bdaca5b049a339b47664b29ef6526d3e211e7606702d467e4ac35cbb382b11153db7660113444f760bc4f7cb4878972a872b86d0d8792bc98735da65576e23b2dd9151150ee97212d028ebf21eb70965675a4b324d009467dd36d6ac802ad0c47feb8a8d4edd47f54b465e0d5055e83ca529b8c1073e988bec1f827a07dd76b2696f6cdc4e017fb7777db93c3f849c0dde3028617186c7dd8462482fb6a2832e92be34bb97c1d3f60233932b11a7d5bf7564ab451b908185336a419c0c8183b10f795479b38a1fbcaedcba7765d0f2f97339e0a3343e264f3ee14dfb37d67fa5518f65c032a5f527efc0829724288fe182ca320420ee38d10bdc8aa64f5d88bd3ce7c289a35d0de90d1725e8c6b5c840250b79f460b0b108a56e8a7d5ddc97484b568460747403cb76476ac1c96a5cdbed468500f89ab0e9b57e8119e0348e3b20645253bca4cde40029cf91192bfa478f338e55f5ae5f875fe5499696aa247348a92729485de84f2468cc80c2c73940f9649d0374d3a2ebe6ecbce6078aa94cdf2d6df9dac95b2eb4392ff1261f65972fd3b3418482b19ea9bde734a391fe5b38498f7ed72b3e013d444fa6f2683684bc9c2e441591b36cc4ed145d064b4bd324a69748998f205c6bb7fb097ba81b5c1d13d02084212d99d8b3d579326e6e3ef7a74164a5d17228426f1dc6cd82cef2d0d501f5424b448d75d7cba26974d2c07d6cb26f5c93960a6d5349cdd6bca090a662246642ce284bec1f6ee296a29951fdb42b3fc1798d12b28b7fada3851aeb3c5bc61589d8cc5d80f7a827191ff8e91a22a46c2daece831fb8450effc8db69f9aa5e01c602884912bf1147cfa3e3f4c8132201d10f28d5497e6bdbfcef7526d41fe815523421c7f179d7a1caf305c3a933d52eae40271cbf0f8ff7e269a1580b283b234494b8bfd072fadb9e0dbccc1f2a2db2784efa2ca83bbce8079da8bf303456f72e85609c83b2f32073a70592e4a8c951828300bd36590e735fae0e4d0f5171a50f4c676726d091cd5cfa728ab9416b7aee588902d4ba375139336fc2a1349cf37423c2a7703e6ad83ed43676e140bc1ddf04e4585b84e4588ce46620633448a0855380227b3d691b2df92158aa8bd9628303e02a0adf3bc42dca77fe093fc8f3a7a35f2b52353a3996c96f4d2b655342f5871c4b28e0a2139b28e37281ad2ab28387508fec63d0d37146df71b9f5efb014a81c7154aeaa197c683eee0aa63d520a77a146a005df559c65e03ac822c888125a7a421fb8a41a82caadb1e14a8f26becf8536254336c9a909c74d73bf14c8e821fe738322b07390a4f3e171db0f065f8ccf0641735ceedda8dae94b76adeadc420d147d951cbf0ab4c6904fa67a46aff8da3faadfe6ed212e92ecb79deb08537264f65e895905d75407ab580267141c429bc766da52a0add4fcc3f14a16b6a5d0a90dcade91402c06748cd2f8a8f6b782cd61a56baee2752fb78095c6c9709ec043908138fbac09446968c0c4c3b2915d638af0b33fe6cc5cd481555e27abaeb54ea3deb8546c114c9a95c839b2414497e26e36074df75c3352b7c6ffae17a50fe421386dc4999f93526fe30f8214e1c3b8acc0fae4c057e004d663efd102e486483e9a54b816888e809d6f93d155410ef22e925e7562dbd729e2f3dc26a44f2e22a213072607487e7944092dd6973c07d519d4ea2bdc37dbced8d11502f4c6037cbccffe6c8f02c459da9892bd034859414908f36e20efda0208101aa5377605ece2f3a0366cb0c7ef187d06cc252218e38f43350403f190b0e91c95170416876616118edec68dbef28ada793e7711c04a350d68da139c5c9ee90f8c7cd00b380558a2f45d311a056732fc1293b10692de71356c6102dbed1467ff7aa2f8ec6d2c7f7b9f3ab088adae1cd2aafb43a68f6168c61ed410c6cc84737430860d04badff9d1874fe3f899fa8c70b46af6e89588757ea98b1907f937f4daa8a45d6409631eaf87e4a3835d26589a9043f09422753b18460f678a927b8963eebf9c53c61fa7df54ebf4d71a601d45999ae477cbaac413fbc6852135d98b68fc8b16a87df596756dfa1b0e06cce8f90ed344ed01180e26364ebff335c6c98e29fc667a5ad32d67c33d2c132db3a5bbddb4b41a946be9a6937542fd4ce748c8ddd33aed9d90c40aaf08573292ee5f93aff8a36290860aed5f942a8c97102403c856541dcb213c23a95a01ee68adb78a2947c389dafcfc953a89cdf9dd226c1f05c32bb5b5a57331e5cbe935be4e67c85b2b36dea0e1e8563ea1db6123f8731b6c3408786eba5df60c907172e96fcc5706caf122d68309ec7d90041c12ac5de46a55e400fa57fb44cebfaa7e4096fb5fd8f930296e422304ec38d902dea7a2a54a0ed4fadf6da424dcc7b11d8750c5eab9f5f083959b08f7291a9e2f6894a5b9142077fc6849ca173bec247c5e579d7073855043ca06af9ee4fd07896e916be40c8d9aa18fa14fa0babeb4fff83fa5528e0e00f4bb3feb0e2ca4ae9a3ae532ccfae27266f6fbf07642a7b028ee9f2f832ac1a0a874ec52500d5b3e9627dff058475c41fe14c7706fd7a39822f0f24772b67e53fa82ab22134d9203d6cf114fbcf87bad07a20371f92781ed9b126e3cae8956408d35590604838c281e5c2d2b1de6628b5ba12a74079beadb11f12bd0f5662ae594f98b8f5b6abaf399c0df00bd7eb972915af7d06a8df4391ab875e711457c45668a8c1b9d118908c3d3080c1bc87c41d7922e1bc1f853c02ac8d6faaa9f19242e301d2db6d0989ce606b6925df75ecb16f49f474ddee0acc6c24ab31ce86831b66ffb93805b20aaffd696d1700b9f43154197fe833c73311ece815ffcf82b51c9374b48ef083ace0118e206beb3c8310c54fc27e4dea35809eeae0cdea97313f4ee741522beb89e14b3faa8841c2341c81439bb25714b25d4b8c082ed9d86b2debe5d0ce8345a863b1da8db9bd3d28db6cd966092fdbd128fe2085dc735fad4be1b7a239f4131002f1e9c6cd9a82df7b570579f850b178d5d0fb465452fff929936774eba639ed0747935253d5a9bf15c93ec97a0ba6097d197d104be104f611175745b933f541c15323b8608c747e657922822571ff680ebc19d24c6b7cd535405d7aa6b9060e0b077abf53c1c5c1370cc33ffdd70f1855872600b5ce65ea654aa7dda64d6c1896d018c70020cc7b1b9ab420e84ac8ad360a64e02881bf005d3370b3178256458dc01913ec5fccf4ef54e69597cb554e7c4633fb0b529da630c0fa665e0a6fa67ab597f7d5497844d9b7e7a6f60d6f1905741d216e4d970e2a11f76c71d765a3fdc9d63e7c1e0470c33d33bdb7004a4b014e0140126bcef937de6cf75902897c759ae5040cd8a94bfa2b43ee531ece4fbaa1a102b26883213dc3b13732cee977e7d06b357cea0a1a8eada29aa63e5e860acf1bd72e7ca92c5b101618de4ae6e04bd85fa6618ae093c7949409bfe2d1c3074d19b790ec6b4570eea0ef611ed3cb7d3bcf8b956507d5f30d6d48ff270f563dcf2c8ff0bade7e047331bf9a2485ca0a6a4c2c991ded34b0d8df173674e4747ea5b93ccf7b98fc26c009101b4060904433deb77a426c2de9a862ea25e7073d9d0ea69addee1a13471c921a404492424d5504e36b0a787ac4425388911eda5c9942f20d99e194861f1de3653e7de975ef4f94a1c2495c9e496c66e20ed25586d01afa6c533aa402003aa18f12cddcaa73677d290761d94119b32d96ad79361763601cba6736aef52c91d0bc1a4a1289a22bae06bd6d4204625bea28b72ede796341caa581c6b5b014df9d9079ea49ceb089a24c02c5fa4aa1bdaa1d1af412d2d0cbab7c00deb20244cf2a31e910a740bcf60d676da6811239130c12fd94d5a4e0c80036f1ac3c2e36b37785d5355f59ea88b700200f8a8e17ad1e4274d9d53d3a2d09994bdd97672ffdc3e90f03abc7cac3e50475df79158948899b30f415b6b88eda061c4d43e109f43511cdc696960a792d60e26f93a41b0809d57ea0e1f7b8e9a1312b666b71579686ba4bfe514e8f9afdae773362c5aedd8a877f08e6a66072e82f245d1e3371d3ea3525d03b37da3e808bf89789ec6e312e7ed76a3d0c4ff847383644e33a5aef2ba1b62c24a89f7f63c14209acf57e512b9bc5db76267b8c4bea9ac736bc1b24c48e458ca961a3b2a0d4b05b1e0550856282a6be64a82cd537261cc27ff74c3171a69a3ff8b7f3e7972857705857bca5670499fea04a9cd6037f813f2c0b1d6f3df19f93436ed6261b63088d10cde1babaefbc8d4294df03bf5a5e32370e17e9cbbf7ef478078c9166d62680f90b26b7ae612c2a48adba38e0376fb505e763f30981b2938e0c196f0f6392845700c3cb600abc8a7af02ccf77e646f0626e0599ebe366757ef19bcfca082abd4d9876a4cdf1f0181f3af257e79c6fecde8359a383f20c4bde0071f1d2bce8be4e77974317f794211512a1b75d14b287c3796d1890e02f59174c1d0dc66e78da71281368888a558f7d659417af863a5a8cb42a894f95bb58989874af2d4db28575279427d0a749add5d7af83afa760d06bef64fe02e3caa786a1835c3b7838b59ad561846a8d5ad39671e14d8bc07556094a226fe7513390b56387a733d592439b9585c95db14216d6318495a4ddb83d030c243b324bfadae2b8abff41c5af1cf4a6decbd14f623cd4a6c158c47817c431c948f2246541a46183cb2333f44be6660a5a1c23fec625ab844671a3c26193566d6becef9066bcf6dda370da3f32d1ea56c40f27d45b2c4c820a1f6b8e5031098e323eba9f2fcb898b4896feaafd767bd000688b43a8bcd405bfe0a7a8ff59911503b19e88663e59f91f6fef8d84df7f2f57b1223278c25a76785ac78e31d2c0387206a9db4a004911d3f3d3dd6c50f6f379b612370a74dc64f872167b6268947c5f77ee5a95681e19a6fd90f4e53571237f4d353a362d8d327c12c8b1b6a5d1d9644a430017f862cee8bea7e439b13ba78e1cdb5c934c18c6773ceb3cbe371e3a66782f719fd98e306c2e9de9a8cb51fe67fce701c7ecec199b5155013e95267005b54b15686845b2b2ff779db7fe53c530956cb2ca48924db335982001acc0c804cee56e030884a95cbdb131972779b8ed91d23fce118d278646c50b33b464932028c8afbf702dc01d0753e8fa1d952c4f0847d6d52adb5461e81ab49e70367e5345bf9a169ec30fdd6f8a3e76fcf349235f2a951067a511c18f97f1b6ae0645365dae34906045d00ab3105ab1559080673b564a760c64f137b7404b6edc4e0145518f8dce8a33cf3f857716848024ee52b844cc63691e075cef8034290a34193b2ddd2482e10ddf30b63eec9045f1a20269cd3903a5da047e2d1bdf9c60239c63209728410b40a7dda013ff80a81db942b6c0514ee5fb77dec27dead30607fc4d479eb15ee4d42af991b6c4f91b767132905ad1f50b27c2b6c3b00d16817c0306115b6aa89a906f803b2b848caf3f6b30321ef8b84627c5630bf2b57fc7c9d544fe85cc4813ea2db836f0c378345bd2013dbdf66a2d941decc7d637aedb396c1974bb272d5045e511c03d7719ffb03fc82f2fa1653fdb618fb4f6b4cb98f7e2552698b0d56b5d7d28e560a48e2229c2ac73ae3325b41a5b8be31bc4cd1a67fb619923315ee35a90283af8ba7f77ed1f29b12652e167daf88e0ef5165581bc7248e99f0a7949170cf8bbed678523c36ac737d2543e3f61bd086f66257833038f00002195928ae471c98383077f7a8e4f063a3e91c554173c69be6b9935be1b3d72ef347a9ee511e2e136a0c29c1f40f75cc77242a5c1e2f3db01f05b55dc7fd21fc1e09a4c920d144a7c1d3840ca66f90be6463bde67543f4548d5de86678aae66b958667b765abd8939005e52a3b052232766e7166dea190d211f8bd740549d22f59af7b850b3b4c5b2a2c568201e5dae5904f080a99aeebd1f4efa9070564729911a362f5ad4d8c5d63e372a03645a1ba598c36bdf4a748e846c45e06bd0ec432c390d44b123694a2ddc87dd58971348972a95a8828694cd773b8f0fd50eda27b288ab86c8538d30fec376b508ce4a992b249e71f90453b3af0e26d7a7b21021a764656711d6b165de5e38a9015a55bbf5cf016d6e8a2f9751baa6734933cd44ed8f83a64a43502fc3ed99e6a8f598ce23197860779d5924706d3bd55f19ee0f2963f9afbb4494f08591defce13fde7092273dcbf2853b36f0e72d44f50c4d318489fa343a62182e28abe394d6f8136a21ceb01fba1385ac6144555cac1acb6e082de809566c64f70010038242513497a884e66087a5973cb10e6c84421d5b60ff18327240c69e1ece287401cc7dfe43da5ff56f5b95eb4ea440d64702cff75a37879cc79679ad22398e2087dbb0549af3170aa5935920aae0b51e60d5475139248b3b08c0fac245332c39447a449b1afc6432deefacd6946e03f83bd84b8a2478339974a372446e06a3fff8f41ef731f54b96de618b0417e7845e90e562005a491c31ff38556c451d00af8ba01b1e8f0173abec874b268a79227fa6f482194cbec587e95b057a29b48dcf6fb222aa880b7640e78c92d98d82b582fc918b2b43871a8ab760036e5ce79241a87d3c24bd63ef1b1587fdb5b3bd424af4fa42d65b9e5508804c9e96281ff73d0b9d1f3827c856a3c8765a58a7f38d800f805ff445c60cd9bbbdc7041258d43cfb8322be5ae2b5785e7fee2de4c49f4d701e177c5328d25f4dca716649351b658d3a6390677b307cb58f34bbfc88bc9f76699bea55abe11438d2c4f91cad19017db7f7501bf262a8a1c29bc474f6ba259f4d10e152da396505e2fb53fe676063ce470eb0be64bd1d303991f72744be0f3f9a3b0709223fe93fcac5c1f811ff54a83b15b41146aac9651312ea52d8b0a7a5acd8a521c3e2d507864e875858c3db932add131b8667b024c83becf0952a4da15332ae4ea6e39c7ae0733d60e269ee0c3c06b75239bf36072cac78cc4f9a8c07d472f529aace1b6024ff82850f3df8b5e1b202a3f3f1f3c3d7c21a65a50d5c2185090b1dc62e5c71c605b67abc4652e06eae931d07f776b35120939748500039d3d411089b71a12078e7523e79677de29802adcc4e52b5180e7cd515274b5a9cbc737d55f5074f8b2e043c1d633cd92e972431b6e4ebc90a94d6e2816b156962d03dd22ecdd7b3cdf26ca4f2df30867edc9549d27f2b697141699bb91109ccd8f4cf31020ded9734010230f66c047957375d8706ccbd74540ea3b76c107c7ae41e9a4c0e23f881c9013eb42fa5b53e18d9be76ecfaf2add8896e04622069b4898c35740cf6bff776f9d97f2f45ad7f29517da473572d504aa7500962196b41c6040d55214dbe503b17a26b932a90be19c6b51d2b7f854d6555b1b2cc1d82b964273dac05ecea24da55cb3e39a1ff0fa7040dda8b0c19aa5a0e48e72734e1f5b3f4be9e1960bddb054305715f539c00695b45fa21da8a96d996cc4c91ac96311c9d390d3f6aaea639966827ade45609af462b6abf3176e69506e111982e7bdf86d68a542c64f24f6760cb6fc16ab0ce167c801f751db3df36d8dd2b7a37865748e037d656547c365aa9fc4bfde140758ec48f7ffe8626fb079d8979dd8275a428e7362562d6e1e290db0b0d351598d0eecae775da4635dc758fd2f89c4ac1516cb260782ad81eaebea63c3c07903fbc815f8ac1dabf60085062030ea786095bc3535f676c164b28f211cf36c2215ce27a617d4b9bbef8ab2b754cbfc998f539665645ac6b73594673b552bfbb6a4894374f9ea3abfc20f2896fbb1cf0e5ae34282953b333c44b426d0122965fc0ed7ca90077c69dd6833ad2f991353a8832f11e29b40c23777793d0fda8ec2570a11b30c8dde13da73c7bc3a490098d2810ae66c7f874680c758f873be20656ce57cb88e0c158c243888eff411bce1afa54aee80d3ec51770859888893c160336072413b9950d0d30ad012c049612935ecbd2b69da57f1f1e3d929f7ed754a6734f038862b2d2b0f83f68792ce919b9ff4e802ed4a7ae72bb147f96e078fc01b95888f45e40b426a9c5734e681fd9abf7e5a1b64a0bcd61c8dadc62ba2ecc248d745ec8d3767acf93ffbe22ced754773a2ea9253ce3a13c556f72556dcb8150bf1d27c7c902b862cf10ebebc5930396d5ceffa460cba13fca5d3b2ab9b4342e8743f85a6efc7ae1b822f439793f00c5ccea208f527cb4427aa394a533b8504811cd8a49e38d6dd063280cf8f2c97515e3f1981235a7d60b8a7d7bd3f511195955732ae13f84137bfe9b7cc704db75b8b47915d03c7585441509f7d7dcc2b7cee25d9c4ccbc0d3ea88eedfb2c9004558f45f83cf414cc23aab3562185355631f9af97fbed7a863e26a80a785fd88c6e5d5cc76654c6a1b2e90ba51ff677a9ffb54584b243a3815cf887b04c0fb3ee444949d0d2a29171157308c527ac03c5beaff7b75202a4f80ba52492eb6f7768ee49c9ca04c205c236dbe783114c165ceea0a167f4fec2eebdc209a0135b2eaf55f798543b007d5e063bd3eec40080cf0409f5d641227afeb4dd5b133fd868734947fa4265cf4d6462081bbc72a424c2397f96409d6271895c0339d81283695d153f19d04856dc6e14456399cdf6084c78d7d6c2e33a59d89d806c6cc313e78484b7e9db85344712843588869e337ef47a860b0b0403d57297a43943531b1892dd88b5bb2849191884c7fd76312521f27be3fc63bc249c7559cbb2cb637f38b864a57fa59cef05b085f8d924cd2b1ba21d1aa57e46f9a5be23bd6af9b5006b7d995544af8ed6eebf93a0cc92123808ad0530e3c19d7a94fa7944912e48e71f6f9dc5e6f0e65770dac0b6f2675892d833a309d7cf726ad8c8bfdf7ff6f8ec5476832e7fa898388d1c00c746dd485ed27c52cc9bf35d0545fc6f816a4b8b6e613e16ba9fb770142b2dc182d3928c2a37b9e482dbb6f4839d18b91b2312bbbc9c3d048546f7d196e09430648b99657508543b0eaa49c373ffb6bf1a19b0a97055758b589aaa38ae4f3a46c41604c3f82ab9b706c1bfa4c0d83456ea5d7999c03990fa2db9d1cfb1f69db15b7559bad71ad13193d57ee48475d9cfa311e17d453dc603cee6a00aa5f34cf1df5ec0f2aadeb7546789b3063c2eef8f646c6e04ccdd6bdc163bfb41b95925557b67a1b9aa4875b829d3912d9d431208815e8c2be8a31f4b9171bd5ac324c450f7516b96ff2c2fd3ae49fb4cef8e9644f40c2534ed681a5d6e76f3ae9afd34f195fa182f31741f3fd1c2f67f6c1514918a40a45022fc4f27506a817d2d8761422363520d550c3017eec6dbe17a2d0ed923cd10494d56c16dbd9dd2ffff52b8e2152f830e8f3317fddec6bd4b6d4656ad88404067bebd73a483e37e12ccd917d56b349abad16d84fa55e911d7bc929e57dfa210afcfc2dc16843c7cfc7e35c550a50b664b0e3cd52f2c407f90903acaddf457743050e49ffacbbe6d5bfd8e68043bd0931100ed804753e971742f812658be65f88a3f128693725f26729ee45bd55053465040f09b74c259e6a364a7c37134cbb2b33593cac093c11d2a63c5c004a6baebd49698fc739d354e8e947c6c742e8bc8661b59aeaf087276a3b3bd8f96971e5dda1677bc8b3970d33bbb0f4f396165d788da74864b922fb4da3eb6f2461d276b5c0acbf2f41833bc670faed477b88d971f03a6e524685fd01d4211a8b04c9f6b33818c97bc3dd8ca0e25fe0a2cebcabfc137a4829c5adf790f7fbd448727317a0cea9b4dc54f440327ed50fb16e7e874a12a1fbe08bce67433eb37ac2410e1ca9e0a85eef098cbdff0a14ef5a31c04c8a8085f9e58864ae03d81c7061174f78a53d5e95d6463edb6a897219570783f603a1fa2bf1861bd33913e2a6106fc1c3ccc9702b9db3fde4766a887f95d7e1f7cc65fc0f3509f37f8bd2752a231c5b2599f198ee7eee023fb635f37b82683237a96d837ef6530788f21dec1f143177d9260bd0b81513009b4429f258ec47cf4507fca7fd20f86156ec9fd8597d44b14fa11cd6c3c1ba37cda728808ebeea18f7564b4cdf7b439b7a5125036fe76c4b6f3384e9bb1e202cd1c909a416e66d9fe2bd1caf6fcc34af93eca0e68d693911ba29b3347b30f1a1d3b296c65ad8bb52883d71bc2e76375e05ded109270c374023cb69ecc7270400cc262221cb848f094e7685843d4e18a528da988dda6d05dde867f7ae3b60c3617d854b49b41b26171ef3303d82d00ae03c571f6ee26028cb901fd08a360fe155d98b634ee8b0dfd56477f5ffbf28b145b4bf66dc68f51feddaa40961da32e497067a1e4677c1b553834f7bd9ba951b0b9497d5f9f38f5fc96f925e34d73d2352853871e53edf369d1263b8b77a6885b46004a9e70136288733859c1e2ba381611823c25f8d7cb292cc1d0a78ab929ae3a8f7b211d7d10b6e91e525e116e41b28861fc25ea250d8650687abc1acf086da87a455e322eb3f6c51f6ccf71981693b576cc80709d275ff2398ca5fc5d0af09d750b2f15d795b73c9a58f11bd960c718036068db1aabafb37a96814108c7bc323f83cf6194c32286e57aef9708e740ac3a8959c6104fe11779882468135e9be9609fb28db9b0eb82f29dc724f10de937a1b42b5e6ec3b6e07ecdc8ca844d2600dc09d237bae2b39559cf4c95a5bcb60f5ce6b046788caa4d857bd368343c725d3338808ec5c450b563fcd66ff72d4a926ef65c94c5639c5a2de39481b6dd7883629778665ed4411bfda65e1601f3735cd3df12489dfbb094e4f0114575628fe8527c9c15c1a06bd85e4c2f495a11cbb3b2a61f80cd3edf848b79b7deda9475e14cb9e9f385651d6151534424f0d9e709e1aa4e24b387d0a47c09a3192aabe01b56afae3b00f1d5a43773e5ffc270758d713fcc63e7aa16a4b57091df967c7bf2588b2014f7063a215bcaad0d639e36073772fda7017ad8021b0f3ed4db44e7b2a05848fa1ac13771f35efb13cca526fe6ab6b67645061b37eaff637ebeea24171c1c15e35ba24e8053f0fcc90f406c7597042990e6dd6f233c00af22119fc096126404aaf8d53a3c872a7dcfc7671edd84fad225e4161ca565fe93b077e1cda63c31c93d86d1332a3e644c8b52ef77f182792c3a7aab2cbdb549907f0c933c578d1500e73055e3f8b50b6d81c50e208a21be740ed9598b26356b2d733be0b3f512da29474f112a8e82175265dc86a750ffadb81fee692d4c54314a658e3b8300f19dff53ae307e047ffef0b62574b230c75f026e499a12f5d7fbdbc0a885985fc09a3d5318d61c9857b6750670449969d79e484955978d42b1fe0e675f428ada5259d1b475f54068475f257d325ab4df8e03ab9613feafac52df41e2a5434c54ce904b0be1b53d2e1c9fbd7f3a0ceaeaf415a724658706a9957f9bdc4b40932886d3cc9898819e380eb5a049b528a45201f5c86f7dc2df9c98c9845702577797ef75ca39fa729cdc0e21ec3ae1b6f9b7ad2d69bfa7dcaa55bfdfecd632a12a0e25fef1a409a27c205129e5ad17cd4d0f543e0e4a707727769073bdcae35d9806bd22a83bd804a4ff786705351ecdaa4d9aa301a8c9957b50c9bdbddc9dc40431f263550add02fdc46c25426c891bc009d801471c7a1bf39b19875fa1bb8d774c2837eb10ea85e2930036df71f4248f573ee66eb6a4917ba7e3137547ed1c5514e51fa0dca285ccdf189488fdb833b1197c2a8a505df234ddbff087fbac880f89cba2514b69f0210ac0fc87137f1f9121a36a094545dd9560f26f828257f988004a2f79549e815e7465f67f21be5506b842c29aecda551df0f6eab5d7d691fbed48d2c4c782e0fd6fd5e48922ca2997d23db057e2e7b13fd29c70d6533ba8bf75d3992db9c505b8f6dc28914f3191badf9ba630c2d57cdba319e30792453be48985cfd0f812f7138404bba0c854e13b6ec970a24ae38cac43aaf5a877957c60384bd3cb90e1b34451e8d29d685f20219bd4400609d48a133afba8b060ded254bdbe9d18800e83e81bcf04027dd20abca14ba6f59ee19810f101cf084a1fc70c8161e5479c291095d3c26aba3c8623b3f7130597e8cb407398fa2d9df9a43ed75cacae683ec580f233c11f14af3c5f47d74f6d8bfde61fb4f1d208c55cc10732e45063a65bf4f49d64ed951f9f5c4804fe3a2ef1e808f431223ace6401fc1bcdcd2de04594ff9717b3a239fa5871f4a8f5d9945db40def82a943283321af53eb18c0b9eebbb924ca8354f4c5e91e4e9319743c7e7fab8257f1f7bd3bc80f128e7cf886f3241062bd44339d43fcb8d9047860ff4b6c0dacadd65d144593dd7d2e837e7e9e746d8254a1ebb3eb2a9a01a673c0f250ef076c42dfd684dfd17e3b309fa58ea2c46dc4015633451c198228191e159c581d950c34c5a65d88cfcdb0fb1cd9d608e53775aa6c01705bb9dcddc8fb52fbbbe336a8b30ff4b03a787d30de88ddc28287b9134919900222f53e7b5b7cd3fbd513125cdca8616546d5a390f481591bdf230e26c4e3b500070978fb62779ff4c7a48c54e4f7abe52e1da24455457ce2a74b059396564a84cc704c356ee78bbdd9c18277b43bffb5d3096c96ef112dd33bbcfde026b25b7d5a965efed21fd290ba23c7fbf40f93f712effe8c02180cd3aecb88e4ab93a80e906ae6ed0dd5ca913670b88ca9462b696d7e73e0bff1ff318a03acf0761bc71bd1b652c1952d992733022495a9a5f5b8bd82e3b52a70c3092a4811559c4d546f34eebdd729743d249f29185cbb3fe24479599ae166a6055a5ca52c3134a914b38b9d5c0d4235c17583dcfec532786c51d5c8bcfd46414fb37987989649deafdb02da138549ac24821b39a413b069f5c455bf80c92b4506c4adeec4902ee7a03bdd72a46fb385ded8fdd8583b1ee26f86c06bc0874a8786cd2e7443346a40c9331c86ca458f6ceb778c1bb01684d80093bee19ccd03114f230ff68e53ad0a251714c4db0759b2f05a73c207e2478e8b3f9152e65a3b04b9fa275257540dcaed5f45965b93295914878df7cf4eaba8259c5c35a493848948841ed28d063e5751f561521311773526755caace5e5a104df0a073a06e7bd19684a437ad4129758eeeffffa9620e2edad76254fb454162436f7ff4ccd654ba0d675fb514d25bad756199188d93972b4411037224b5a5517dac28549b61e7f5774dae5f5951a5a9944d102c07144e601847c9df36c040daf66f9d0dc1bfbc6bbfd5386625c739b3596ffdf6a21fd67b336c8d4ad0677559b78002a72488be58ed18cb1d68f1fa8ffd94d857488afa82a5e50a6649f3ddeec4fc1ec0679a6126a1940e4d50264cfca3d3b6a0c5123d1507767e0aad5c24656fc20d36a7fb6acfdf7e756d827151bec04f214c6c4189327b122d6d19a0e00338c7690cd3783672841da40327e4dd588f9b2bcb341f0ab279c57cc880e2c3bb096ea61e6b54c20e09bbd51c5b64f85e4dad68bb6ee2adaa74a2f18066aa397bbcde2279eaa663611a7e3cbf2d760533c4883e5553bc8ff8c9aa825d82aa1a2b3ee7c3312ebbb6b161b7647c7e34460ceba941d07559c58c6e03592acea7465a3731ac73154e5c5f765fd9e3b7b3ec87056094af95a00f2cff670de0a7ffad0f3ad0ddc33283d17a0397c4c0e592024bad09e0e6ec4908e26737ba0577b9d13fcd272d2827bb0560eab6105b04c2d85ea93bcf2da64b4a4561937d167500dac53ef6724fd622a464732838cc452034ab9c08884c3b32d72f6b13f5b0fa82d19cdcf6132551022883c70443ec0a0386c8f640c466390fc7127bcd4220caa6edc49872d108633563f9b1087b405c03307184621dbd95408fa95885a91a83519c776b95741b1f22276d0d2a8a3bfe712446bfff407575daebb2547a90664dee057d504666457133741fba04150ff2859b67d67f0ba74dda166ea799cf288fae94226a101bbc5262ba5127e7a1e656c330843740d82d5de323f1700b3a2984bf2c5a5480ea3dc360773a553ef9cbd5d703e949e9aa4044c50d194d088ca22238761746ad6bdb672eff45640547f2a4d2ad4fd0c50bf7520370364fcc0145a04f238db6c7ac31c76eb6d9432818f8f5a44c49002adc7e9a7aa0557d3ff99c6eebb89ac6b39aba6654f811fdda3432fbb2f039989b653643f58858f4405fa6c335af263a1a80b2e240d3b538e44274c2641cbc5406165284e59c0e0418d8caacf247f7fc7bee6bc1f63400f7a5e8ffecf537e88f003e4abd1a9b48b2a33baf727a5d0645dd062f304ed022175e5d4d10110a8ef6c9ab69e6a0b1c707a1cf3ac6e5160c695d47cf52cff5eb76cc64e83ef5e818265950827b0da5d678b9e6b637fe515839166993567e91d9cb2d38ab7441f607d08ed4da0302b24bbf9aeec219472b4198dbee7e594e3434b87d8c627ce18fb0f8b0bdde9fff54f97ac300a485d7c194727d691a6e2ae10c8feb04d53fb6709d99924629679ef3c639228dd99e53ba29e7648f0077f389ff54083f146a4487d2dca7e708be4cd18573e8ed34726ae29609d36437890980c6463f1a7abbd469a2b4407c45ec41ba44943b3a1e9c68cb0a9bb560096de002df25b8863a1f043a2c2d6de6e66ab1b052d03a9e1f935c2823e4d02ca87acf9ae931904e30465135e066a5426dd8c223f109ba2c5b60834dc2dc09e3e1a8a64dca3d640eab68939f9744a0003776c92799d58f195c0bf830e1035a6c531a76b80a1054171d04e2d9d9d2fc1b8d032145ff6969aa726bd338eeaafe2e22a6de117ffac0907ae6529cc269303dc1a0f39651d0d142faa351f387283f436a94dea4f1ab28af5192833c88fd4a34d1d86a18789e206aae460f724a861badfa1af9b04a60b40daa0531b3738079affd109c58d8be2e68adaab7c314668dce7944d6bf4f16ae55e6d0320edfa9e6b458a75938b6e1f0abee395f7af9ade94a74685dfa37f70f5ed69c270afb720962a854316a78b229d7daf6a7fcefc48b0f6cf4a9caf51ff8b95806a62438111238185140f5deb9a8422e6d310c5ea7400783d35019ced3833739cb606df92cae74064eeefb1901406ef644555aa894ef0bfcd6e6812abe8959ca1a908645d425a3a7a5571870e1795a83e940e1e45536efee0bc80b45d04b2c0529b2807ae52e3eeceefab34b4197471a0e695612e1a46b725d9cbd0dc498cccb5e8625d072ff44d1fc935277a0742d0d5447cb7977605d8bbc7b95576892ac6f135552549374a8091140ad703f2fd3b8203aeb613cc3bc488459e938737c84b1f8943000399673370fce5ea748f2adc059f3e9b1316e76a70547402913c1bd9d50c2297b4d33194f32cab3136e1509e9786af28ea890194bab659f73904c92f51e12cc4c9d1252908b7a26653b4ac55f33088be2605b50648e693ce0c1afac447984900fdbd5974b17bb7957f0b5d29aec2cb546bf44c9c06ff81450d60b491084a357f036d14a1d9777b5cee6d8db0e8938a2db03f39eabefb4d9c863be2ccd996652248e3c60cc0c0397fa644033282273142e847e75ba9faeeaf2085f3ae70be49735339df7747ff2005c73465a175cb45639bb113c52e4be5d690746834f7d82beba4aa7ec4a18b4cac81ccac6650cce008e0b5fbd702efdcac00ca3beaf54f44e0dff2409f80598e0c4446e016e3db7f412fbe6380d40563215da1ad711f282b97a104ac9a09f19749227a90c0d8bcc65d8abde79f76bb37d98ccd44d9bd0c4d9e07978eddbe19b540bd1538ed4ff7eafed3e48c52b753278537a480065abd569fd7ef70d11636c8db93d6cde2f590d93bd728098e4e1808b2f810034f0d7f1582168d73c2c59523edec8f78be27935d4bb071b8957ed4dd344959ea888b0a0cd3a45627ccbc11e24970b5c4b7153c3bf0d5e3dfc7139554052d98edd1e1cf356a10c8afb8298252816654fe82791562c5f34a8a85ed354112949c7c0df5f217a8815c305b02fa6639f9c6a35373562f86437be0f07797b69261d89bc3ec52380e4b2d15b60e58364212bd433324e937d305a66a8e1346a254ac6daa0b3a191acdb1769e49e345baf9163abaa24af053bfda6d8fdaf4801919761debbde37571a9c5a6201705f0825300a1b7a555f0208adfa8b6492a983c85e66a2e4e40ad0d6eb363977272ec7b693fb6645ccdd0882a4a746a45bbfd0d508a5125355b7d5d6fe1d41ecbb260ac7456f5bf2dfd26ad0cf502d242af0a80b6c5308213b9ce37bff2271710da49bfa1feb3bf8a1c554ec41eee20d401ebbb2d63374cdc82402cfb23e8cf3e3ee65691d60525d3b5013ff41e9e315297f875a817072914817042beb9c63074f78f6126ace04339b64e5f1e5ab9ed95ca5a4a85b79d23db172822b846bd4841194ed8ad254cbf0863085958553bdbc0b232c3c83d925e6b2f8470ff6833ea1b9359a2412b855a61b8477303162ddad08f3b9ffa2a074384332711b22070ec413b07ace84bb70161fae5547c12059ba2ca3db1610054ec04cf9301d5bc7f62529534712d671cbb8d25eb6596f569d54cdee3899e0fcc1bc6bad61de22b74b667a07d5609545bd901b248230bb08640933c9651304eb3c26dd5f44174d3d07f13a77b726fb70aeb4bc029d90324a9d259c511bb272ba0265856fe539d11552126c19cb882f30c0bfe7f1222731ec090319387967ccea518ec34791450889e0c6b28a0d046c16e2a8ac4473f3af7394159e699c8ed8542cd93d7de5c99cb8c8ac987050a605f517a9934ee8285b46040f15200449fb5fe621c3ba47182412976229a0f321d4d36ca8e713e7a097884304f28b37a0aac6cf742f4e81b7cabf176ac0365a24ce5f636e14952473e6fec9b2c27b0640d8580072e3188431948999959cce2e45c6bbe38d57fc0f7f4f63089a0807f68abef3695c8c2cb402c7e5f2a8511e034e92fd009dcc9406f794cd6aae957f8d0dfddc54d100ecc0b0b8b37ed63cc3ba9abd9704c64d460e6592abf18a91b736bb459a2f06b85256dfa5cc4d996aa90835525e62d729d1a4452911d87153dd2e79cdc2c5dbb5b754eb70041c953d63c6dbd9943e0c4997bd780aa550de808e2b5b923eb97331c7f6f8eae5face9176db3d627680ac6972d9be8989b488c19edb892688a5a31fbce14cb0ef5a318192ab5f84f1f49a2719b065df409c7a5cb1db68984e1c33e618634fc983391f5ce1bb706c582a67ca36565dab9edf27db1fdbdc4e6938c0705ae5c240bac9035548e004bb4785c74d043f699dcd04cf641dbbf740f49c3553db43ba1f277496eec054e65f73d4de30905c716ccd85f40977efca07cd197430b4901fdf0c067e89870a197fe016166704e44391072527a34b8a65faf5d437c05fc1719da652af2f554d19473c26a816ff8a197af3006e560d942095edaae4f71ab70c346e97bf97d6e3be8162f23eca1f5421d8db8b41c23f5b44c0d181036c2b419b4e36acf96ab7b8d2f8892d2a046a9fdf54c09d65489497911faf776c4779f1f5d9e3f00053e535d24ee7337b7e700e92fb2c6361578515127f1e26a4aaf8334dc6b6ffc7ad7793489f6ba662b954e8956cdc8dafe55f8897363846ee848fc6e65d020654383326fec831b74e86a722d1dbf81dc80f5568b201f0c7aeaef39471cf191c8bc8d8d6368e43eec9d94d9245becc577fccbd12e5c2ff67d417f57587518ff926d2e6cab1e549fcb71ba9c50576205853909e88dbc2ad836ff5d6f397ceafbacf3f4a4c9a5b500ccac61949bc0d7d4f411697fa77a317eb56d7a005221a81407fc4f0928a28c096b608373a870db116e4428003edeef0ea5217f1c35477841c4a0c9f59fc60a58cc7bbd9ebda4f89778c8387c4081ce57c987c2fa124237bc3ab537efba6237047c1e288e0449a06c3224e6ca8abe5dc6728753412b36d4d0fa772730ae964dd02754fe9ef2312422a4f0142cd1bba087ae20f13950b5e418cedc5ffaaa3d9176bfa6fd2f25f2c8c44c8aa5a429a36ade6a6d9dfa46bc7d348f802ef364310567504d8ef27a7d7b0a224e03915dd2f32147f59a8013690d4d1621b36fa7acb2213cc6463489085451aece0f57d0c71fd74e15936e1e7c9c73ddd18db7d896a85c623d75d7b2c8c7ba2fcd53b45ad674b49b88580830fe71e30a38d1f5363d42880c0248f4c315a36cf3213cd47deaa4f53431be0b4d7b04fbf06c109f1ec6d397246a2a94c5d52372d9afb08dc6b8a7e6b6e789dc34a6db6a8fc4db829b17067d8397d0afddf0a5c869a34dc6b4041540896b70d8170dba29e8fd2fdcdaedeb67f3681afef3e16732d0223d2826dc52c29892991b39cb600778a3246b1c1fe8afadfaf36f8acdc1b6b0d3d879a513f819c3c7812e27931654a995b5c75da37eab8993ec71bd842c7bcb660e79d9aaa8b6f053204e5a475a11c11f4232681851c8eec73817874114b80285020de51651708eee76f72882a74c3fd0a67639a8da99385a23ba4866516739ac7fa74364139c39a185be463c921f21c7a0bc535aaade42debc6d01b98e132664f928402d56ab79858ea964142004bd8f5b81a8c63c2f9bb08c55a938128108c599f92161d295c565ea0123736aae1567bff64d2367cace8832391d16c4e915df6fe284a32c1292bb4c8815522698796accc7d72bc36d6a5512828a3c12b0e84098f38d0ff3773e2b0b4c34e7cf953c1042f46845392e89cbd574988e885a13dbeaabb4023add86dd713f56bdf194b679a910a7f02a28696a0c57cd7546ff83420d6ceb69f2d3b09f68c16341c989c8ed8a4fdf8abb91f3f3e2e9ea41a158b6a6d5f27a961c35de0ef4bf39f1219f86037c6fceac9e748c448468d641bbf3c898892f9435a9d4deb6ca51108fae446b8c9fed5cde28970f4a28ab49ce7a666564ed4ccddb4dea23b5c99a287c34ed81f36d47b1604aeac52e6e48fa44451053ef5a953d06404a7f75e00025413a58ecae51cd5a717ad1b87b6635dd063127055647fca5914000081c65c42cbb6aea87e728ffcde8883faeae8766290e18b3c0e59524f819c0d03b5ecfe615669a85ba563431bb61560871827d7ef8a956cd546224caf602aa5724531bac5a929a5aba156d2ab46aa73c46bc3c9418235153de2b278a71ff62e308ff837a549a5ac95efff73c85b815ee8adc82c291b6c8f8695c153f71c37985c9fdb43719c9ef05cd89f4e302af2acfc6fd080125763bb2d2473ac96239a68ea907c4020e13374f3b5ddfd525cdaa855e2b0eed31bac95c1fca8288e3a2f86698c4dfb33463a695137a869360bad73e15fd61aabe95d5bafab218d173aab2e546dfa0f61edb1e48e6c3121ebc791f287045efc9f4d30f7a4ca70293ebb376e7f1f975ba3d08f96a1dd0d203e81bfc6ee96c6ea2d4bd8331d30619e56d3e15f6b0cb7bba00415dba78570674d54dba1c0e8629ae5707db7ebab0673222a29b6e9563b17c28060622c05f89b3caa5b374ef3175bb89bacea98c617124573b75ea63234b4118909ffeadd146c6feedb615cbd0794777cff931a20a8df988b40fe78b31944024300982451ebeebc14f634d996c19540d8be816bb28e6c9d38fb05d02e84ac9394e96bf2c2765c318e46c4be0d1f44fa976641f8fb902ba927e8b3a3b14c8aa02b603faa95254706a435a283c1c4b3f25fb3db23ff7ce65b669d6ad16ee956a3cabc3087248db05b78315170a19fb2e950a7790a06b1f1785ae6a216072825f443fa3545a56ed6a9e7358dddc4668aafcdde50aa814fcf87cc37d627c288c1351eabb1c01ea432b6fc0b3b08897a7c47bba11c8c8474959a038e8407f96c69526664c6446bb569f974c5110d37e7fe286cf68cd20155931245d1db4d7fb0dfe1c158748a70a00e2b5f4c33fc067e223684d70fc9debfdea5136287fec02f7f21e92522d0607df592c8f10138b3da347e527c9fbb66f91fee99a2353dd1f8c13125af4675abf84b046a53c1e89e40daf122a2d600d279065c9cd372071324ed94303f9efa75090785d02202a42afc8c942bc87eeb3cae71c27da88f8f04288f16d30936a24c4452f5cb793a7829a84eaf7f5ce01b7b085aed8d9bff06d63982820c132f588283f755b8d62653dc51aed697f8fa82bb499cef128f6f94db92d890eac48433e4e4d74c5f90fe9992f61a9f231f6c4053464fa1988062da375388072b146d7bce61fc8b4f77cbe293699a13c8c7703a5895a2de5bdc3c45f7974891bfa2a701bc06b8bfcb7c94b32327041603be1c869811c27f4be7fa0ae5c63f760e609a6f864ea579ecaa4aee407f2340b6e845635afa7a43e81a25e2e01ee76080e6540a61e55fe425b6e55cf8c8942913ce0bc4b81b9176a7b4a188cf910160bda55e26d51e06e69f9442a2f46b571c1d9724120233db8c5268eed88b96058576698c6afdcac43d3588b8df28c08accdd601cb57d1d0803ca8b0c5bc3219030887793d0ddf32b1fc09a5240bd0063eaedde2707495b5f13de2abd8c744e94e5bb63b5ee88fb082107e13ae6b8318eaf441639db1f014146a9d6b3c88dfb03f62730f0c6d7c829b56940bb87b2f792191b39bdab730fd1668a177ceeeefca7561b9f6fe8c8d6923e788a47c119b970340d80aa93d55190487157ca08e22c8bb6544c3eb6a8c8a6a057cde96c58fe78dc119813072b12ef04219d79d33254fc771dab4d8c4371498d4ecd92b6ff5cb100119daa438b1f4c128295a829a80466d545ac0053f0e399166329812d437aaa0565ed97f3d6812122ee119f4a808c88551ae6d13c7402b9a33367b6aec27144d9ced5880b3771a39e7207d3f3a82a5a833770ea3991a026fadaf339f4707814cc167fea7c7cb4a626bb75ef60de981ea5352ae6f960012b8128aff72dc39939c264c6c28d77456ab3ca2b17416a4cc00683d96ae06872b12deefed460d5cc0dc3737483986d942fa146605c6713c26c858241493dd8998e670b04061c640e2e8341bfca8bf19397aeabd3486d52b79cc2d4c4cd7fec411de3fcc6f3a8659a1c0284d2f0570187cedf1d0d0f1dd69527350efa32c6d953fe09a0f0141eb72c6aefcc19f8df86d9eb09758b0cf8e5b336e6ae3897242461bb3f2097e403895a189b7ed5255d9abd46c8ae02ea6e942288900bca235c92105ed26807178ec4cd9143b0a201e80871d5c2b3d0c9ed6f8c72104d6f389c796f3019c4a736ad924d7c3e2d3ed95a7428ccc9b94540af393e0300422d8dee2caff107d5cbd05467674754dfc3b9feee394505db014ae0b63a67a0f2b3c168e79aae67680134416460fc2f40a446b05d1dc2d4239bfd7edfef12b202b132cd23a2ea68ec152d3556587120ef2b5376d6ab161205fb9f2ced2bed01a23c5dd5e2efa93e6e81f5cd168ec43b0c388d40fb373db80130fb4b0e5501268ed987e58e9277c253491894990d7dbb6619714b6a0fb1313f87a20581b22b4401c293485a7391f1331bf113595e1897bcaf947f5ba86bc3e37b5f1285660a046b23de572c1511f6d2a8db4518f41d86173ec658f6bdc7d939372c9fd910d95546586e901186cb460e9f21e0e0a80f77da14daa9ae6a6e2f68cb6a1c0d4017268595de88870c6602067c6f98adc8e255f95b8f418aadd4057088598955ac48b4b960fd6533ad52284daa8f9b1f69aa84b3b9ace0c77a51e509143258d1f1f732dcc8047139d191f41e81c7245ee4923ee56978169d294b05bfe63aa90f6081f104883836b482a10e74fc6fee32711ef2df4be740831379fa96910bf530622ff14e99bfda10ff48a70efd5fe3cb2b61bbe98b4d09ac2a191c5f8299f7e2473bb396e5b92a02bf2cfa771b9d8feebea5eca4371189cb6fd686eefcd5869256e093013be0d6a46e1d7bcb37f1df4ad7a6126a29381e3d0532b8d32b5597e87266b38f67daaa37716f70b90ff0c87f2606dd73705a056f80b1a87fe5394b2fc8a1120fa3dc45edd6e91a2e932e400c1c893cc0538d61466c975c169cf5c7d8a34786311bb1e473bab7c78356e6f276448f28baf3fa15c3e73b42954459e5e33113a62b33eb245cc8bbf10a92867a77f21895c96e60a92ac32ca062c8044522f98606b20439c99f00fac9f1fdc708f93bee488ea7e607a593e94dc89babbfb05259a0ca1b090f9dac83dedbe644163d6efd0390946b52a6dcf8808dad5552a272acc6e463941fd3ab647ac57ea87b5fcc1a760b9c32ad80e9ab1368361a918bec7a2598261563424d3a14165af96a7842c8ba928ae22a8bc09cf6cc7b7ab60fa6136620b4375bbfee393825889fbffea27cc27f982a39386263e373364ceb627770b45fe8d0ab16d6f39a8f1494ca5d7ecf87b0bdb7738bfc36269cdf09a732fe00158f19b0b84f32bfdacb7ef6338188bf02a9ad782fadc36166e03b4eba5e1579552764bea63a407a1dd8988a35adb309628fc468c61ac6d3d4ffe820b3761f5cb62d7c3382c40a342ff9925aaeb86a4bd6f798cc4fb98c49ded8baefd4db192584a754b9cbf1e522148765e619fcfd7e04dbd940f653879ecfff4b619fa08b07725bac9211ccb43d158de054e7199640121196c5488c14f35c96c1a7055e2138441c679555809882336ce57e1de4f40fe3b79a32669ebdc29667f6ea96d3be1df01a65044c8a177216d2953de7c50a94cf4ebf60016e6db85bdc436852c800e75322d9a53075bd53ee97389867ac98d54274aaadeb0dab9ed7f09b859aa0b02ab6acf3501f9eb3fffddaaff467f3744f6b7d3d1da509d30037c377c87edf8f56a2a61609aa8c440e05d9d91586f82c8ea82138dd73330c5e00e8aa134cafab2695752caba463120dabbb320e5aad9014dac7532a73bff72db2367be1eac66046467de98928a133a07db7f420f3794dd99c32c310d4731ecd90e0e95aa85aa307a3684b682ae96958506319b85546b5a21e8fdd7076ad8bcbd264b4494994bd63d4a4a34e7b891b9cd49d97cd57fddccfb01b437afa2b52258ce34572109b3b1d565529b4e469f37f9c211fd107b58c5d337a8069c193721b12ded2ae9038aa9c4124a26b88bb808ca410937f4f086059d17a4f1ccab284321863649c8dd34603903ea355cc221a06585463243e97192e9e89d9e5f8e8cb5760bf9946dbe88205d0237190ec026be74c8f408b7e11f0ea5088e082892ff6b5c70812618e5c21921391047ad52b56c63686aa152b4cee57182ee4473f93fef3c7d4c4a3a866d501c31f2a703d66881230022dad07b2f5eeaccc5158f9c4aa64c9d52da12dd6480a02b0bef5a1c94a4707bfc5a1d4360f1eca63c31e83828461502ff196b4b31f764556102023c84274f98f9eaa87e38c844bd5b7fb982551ab8305164aabde7f25d25a5e6a369efa8caa5f337c0c68029cf357ef6dd146c97f6dcaf112dc233d608030ff237810a5e82f7a045dc39b3c0f876bac02ecc574592b9938e07ea8575fa5c8cc4864f219a489d6f76923ef28174a0f0270097c2eb72c51fc9e1ee39702a7073c579377e5e0f0e90b0ab6539b1db4a44420b3942454c433c8754768435b539a6c6900cd94fb6b134dfd9c04d5c9fddb4b0ea3e9513fcf6e77892e74c29e12e21adb2e82172f88bf2d2b28476293ced0fcbc438ace4d58e61cb72b78c6855673a0b169bdd98a0b9073d01cf363a620ba6b188cdf930741b5551f70546ea9f0bca4a573c85ea512897354362a3a4fe38daf1ee1e2ccb7ea5470994694fc84f70f5700dcb2adda65c127f9af1d6fe35e8d57185c1a1d8d9ceb7f076e311e60958a111c5c9e47c73055e75c8c1c2853ff94017311eee375927f043fbbc30da3e31a8531afb734b4c42feaa8528a6736ec0585b66fa6b4e20c292762e1d3cf3146311144444f8d9f4c9a1d3fb14a661cbbdeabe5e1674f46e4287e9793df4eca10763cb2b0f5ae6df18ab93b699a7332cae9a6fe6ca8e25482c99c3b7ace04a8d6d23336a25bf75219fc41511e4098b039d9b5bc962514e505f0226753b7141dd5246f556367a26e6ed43636290789aee4c23cec6a4d25f1f140a7a5b2f875f1f7337a53b3d28259178cb175dfd83b8c88c2fddba4c2ce73646dbf9e635cb0df46a00ca85d8be44eeec76e96e50f6f8bfc4b6d27c9b0c6e731b7ec5769ca790ce582e698ce20df7d5329682aabcc2ac944291f596955765e7b9cb629b33ba290f1b803325e2e1f87a28da65b6dae6c216c788c81cb6357047b1235ebbe3acbce14170b0e61406a307d221bad0ae50e088f594b2e1807800e08408fedd6626687671a1c9ba1f6c6b23027ccadfdcdd0a37c6c11c171d9126daafd8bde31479dbfa117b6118110dd4743a740a7b4e48e4481819f39f58e1b5218fb0d8d32e4112265f4efad058ed420dbb676d3b8a1ead6c13fe5cb66fbe31e08719431b675a1c0e49e9742f6a55a5c9d32b28fa3f128a42640b113c2196edca97acaa195c934a300bb42f2230e6d454a4c76c1ff1dc5480fc085d680c18c4c92740f871e47ad32907a762fc96918ab830b2846884b025123454906681b9b723204a2e44891e23686699a8d2b11c52e5c7bda03969f3afd953bfbab4d28b153d32694e6e331025a173c88b5f0244261115ecdf964750ca3e2e3356a5ec21fd4a77db15be88ce8c6a01fd993c7fabd294b8dbbf983c597123c93e445f37bc1f853086b13a16d5ae03512fb27a89f8ee0ec336439a05393a9ca6efc17ef5c33b45781994de7257bbac63da24f46e386d0bd0e6e7c0b1b42821068a85e177cc20b20a4d9fb769d617133ee13e6ee0be835f8fe454f9ee7710c951de1c94e424064c881c1d60851a738312e514813b9864480388b3c40883c706ef5ee16a9a04d9a9995346a9fd96b7fa6b793c27310da1887bbfeaa359ce36700f9cc6f333999b8de80a7965ff3be1350b8f8ea7c0db5c06afc4f400a02e93df6634003300aaa4ccec0e1d3d449db0e017f57c80eb2b79ea69cc06650c5fcf3538f1310f5f93624c00e2cbcbf708252449e8cf4dfa18b7a28e19088bf3cd3236d2d3d4a9d00f6077be2e7751dbaaf4e6246b6cef07c4b88f600c9a1d7abb06973ef797a82009efbd443d5a4a4836905f424c788dfa642e5f8f8b8fc047da09e5e22f34f6815e131f21ce663c7d1a9da9003d9dcf00158ea144449fa188f1f4c8c76a65ad0fd349ff8ee7c37093d6451a290a47501212b7c7c38b9ecc83d8d6d0176c5193287ac58222e7d0779f6d0eff3cdbcc71ec2c87845accad8f3ea6f3748497631e6a195d723e437ca6991e2e7e5a90fdc5b52b5ad92bbf305973fcaf0770f46b655284c96b3d7d6ec08be99d752eb7600f7accce8c27eb5c6a45548e2d6fac42b9216b2a7bd9532d89496827eb2c55b21cf13214e708f2f9b9196dcd56198396f99fb5853894f00cd6ee0e259c713a23807610889a9bf0a5058d0a53e0a1a5309d779ebfbd753deaf15bce0be63fa0a2380a10befff5781c822a222d597e46d605043b78b02fb84be21f42c68360144dec4473c5a028fa19059b28f62f826e6900f6b0efa307baf79add65f9f838253b7b8aaa266db346002b1ff9a0c6cc2297b843cb41837c6bcd6de66d649126041da15d806a4a45cd25e23cb8b7f9a1462eecf0767be034097b7e03780e481027fdb9abe69129c1d1569c94fe0304aff7b92d0d6cbefa36ba4a28935175ca71dbfba917703513729c72ffb623c3d948337b95671bc8add3372605980e81424ee25683b71461de27490f195381a6b816774fc9629f7c90496b99c30b3157521d0bf6f58f259ecf27f219f8dde6e392445f12dcbb6cb7efbb20c2cb090e34c51b470bfdcbea431951de08ef9009378bea6c2c623c26896dc8fd37a1a749de302cfa95194ba4f761a06e6b98f366b807450c60ba0688dc8ef687270be0ceb7702bbf66028e15f80ac7c473e9012233e8a6abb2295b2b863a0923db7fb0f535e9137f15854e0924cb46094b48005cf787d7bf5e16e81c5defe4b5b68a100c6a0127d0c3de7d9ec2e1a667503b581199180c767679be4af02e8e69399ccd6028ab3d94fc4f96ed13f45f3d13006d060421c19ca856ab0b7a7f7fe2c9c67dc0a1105d44b386e8991e16f1cce19d540b8640b1cfe244456fe0caff82286be4393c2d2330a9dff127816e274eeb137ac2bf40d86cfc9049c17169e7b5c0dd319783f76b8eb211f871b8c682afd1c45b904955313530be4de62fb1a3154eaa4f168ad870ec08606221cba9723cb05aa2d05b197f05b52e48b6416fdafd7e89392ce9bc41ac0f912bd18f52e7724067ebc16080a7ddb7f4e6e9b091373a54c4a56ebc41189f5db5daf976ac80f67ccc4ea9210ce6d988eb18fc2ae0fa0f63cd310618b7133c9962c73c57cd0c3d33ae0e815377cebaa901064414ffd14f2e97679007b845475405bee0234e11aa79851b2f80ac61831f2e0143e400a3037896a14bbe5c6626556a72bd9bd77f4f2ddb0a0301c3015e4efa454d3e029cc1d9ea375dea102800f7d0630fc56bbcce48b31ac445e0feb97d3c392091b24117254f54c8dcff3dba1bab886a29e1d5569707ad88b846576b0e0e88c52dd4a60fe180e5328a492e34df091f5f7dee3485e45b6aeb4c0b5463c84f49586c5605ef8e1146e890cd693fe20da032786288fbe82df7fb0cd68d6f2e3c87ae7db32e80393af38fff093b0d50155bd49614a5ffb74e2229cc90edacb8666e76f17c7303afa9248ea9aa0df9053411fecda276af7eacba7442eece4335208106b3e7d4ec855aeacb389f0b7394a3d75475291affcec937c1b6608f1e811ea35c60d49161edc40c2501426122b40668d8b4e9b5a5c012b20beeb35f9467c0405ab5fe18a1590e9ecc620a0e43f85872feefc00c2cb9f493ab79276c98e8e1c9ebfabf6134cfa8f2993586350f0e7fd0faee53e7054d074b6c175bcb51f633e55bb13fc806abc2e81cbf2122d2293ce60fe0df77a02ead018b837c31fd02d1e8748ed5c418ad3a5210ee9a281c98e314da09e12c1a18f7241f31e9a3b32454131955ee03cff65fff44c2ab218945c21708ddceace725340a8bba1d8bed7775d7342322898e7368f4ab91333c1a76bb52776ca8a9d01c887b1e76f65b3684d6bf76c7b9bec0b19f1f38660f0c07cb431b2fc83d9ea48952ef09f36e54df3cc3c67f9668cc83d4d5f66a1cac1cd6cde3fcc6805584d364ea42dc679439c2c146dba0d92b69ba87472a96aa3a6b9a115932e18e33ffa2e8253372be772c4b90643ecf478414dfefa1b84980b318ab2dfadc00c0444506778700a7987e80de760f4384f17c0e7a212b6d47ded3081083064571d65f56f373f5be5a5aba768e09ebb087ea4724a3b3fd9aaf3da11eedcbaaf63b03857bfae810c900496cb2b5edf4c305bd9995e0822830bd6878306e2d94d4e7104d0c47565f323a6702df98aa3b55617b082a05271f651a5ba42adef3b4a55e1b2d717cc21b7be2c775bc296002cbc8ad9c7363a264cacc048609b99826dfa8640099c14a8a67e1bc2de1989a2a8dcc4e7b402b4c1254687bd41f803ea36fe7d585dfccb2472d9d60a0855b0eca65fa1a10567ac0c4c8c8c98b18c39df2b66080367ba1e2ce313aaa53941003fbf76f7bbf68f5d02767d8d6674e64ad4ad9ffe8c0929ebbeadf144aca52ea389734f79840184295ef0ed9ee435947c8d366c0145ee3ef1317bcd2bae9d74e45c5ae7d05d5424cedf97389785504e294316d832eba838f651086813bbc6c9d993de62dd4579ba52b6fef9a406b4ab1dc80d21a41b8fff60fa28aee376ab65d7aa4a47326d09f7585b5ddf761b41a396a16aa202976072cb9b36ae4db3c803a18e80f2e46ea4127538b78be34a635146d0097ff430dd785fd5791b92c557b5038518fcf7a5e45e1a61f8db712d3007f0fbcb0ff1db0a98259b712a8119162a92c6a822ed34eea1d69d8615ffa8b6841dd79104e6ddf856228687a8be60bdc37277e5c1d608d6af0498535b9434650c74dd7608d290c07d2b0bc42d213ca0594dfefdb468aa784c7f61399f14f2b387cf093477e09db525749215ba9ea4cd6e0c53e89e4ddf012afad93bafc063f071821f1e52a09732c9bfc11249c9857a83c88fec5adbbd55d898cf1b2006d02291900dcd324f60b959e1b40ea0d37e2af2b803b9740f67262d2b3bdb7956ee33dcfa14467d405dbe0ee8bed39630de85513b11b04bc947a53dd03d5b29c18a331bf8ece9ebee824cc0dbcff2eabb25ff98b715537e512d2ac7bc53e64bce654531e9fb7fc363567afd1d12dd0494881de9782ac001caa3ba141c5f5019b30881af2d86dabf7eaa78b1fe995d6907ff0d7ea8fe2c90349b5dcf141aca16c02343f5d74b775fb4c8bb77fb1a84c04b723c3e41a1d2a4aaee48871c4dadc1b427135986397ce6a64d0e870145b652f82d33f0a6ee592592b61b23c6ed4e4930b8f7057ff8395587abaece903855fa5369c2d06a0114c9cadf5a6a1f6a2dd9c0faf14dfe8d8b7bceafbff6cb97eae828654076f2560aaf1d8f408c75f94b975521b4a7e2c9980326cbdc528c05957772862e5a918ae24225089917dd2c3d2651baa31f926d213373886d381612263d84c0b458553936721c6d16fd623e892b431fe5b4ed3e9d00ec152e0ba8ebd9d6afaa7573a58622c99f0a4fda4585b63bc067a1d6c9709600719416557cf4ee4f8bf9b7c650809cc8f94b5197c974224e97ad23d5cc37d135f8185af7f92cdf98eed2491bc726e1064da0b661114c46cfca3e639f9f5a4f531a152e99357396b5c6d64357b61f7e9273a724a313dcf802a19e8278e2f1339ec212f13098e3de99826075c403fab3d5670ff3749e5da2344ecf4711de07cb5675bc7c8bbbac8be63c3f98f35ba01556cf129dc835a8dd2b69d2606c2a993abb699aedd9b72f4d91ad3fbaa991cf61afca66bfd6e09b24471726d343407f3496f79e757b5b327ff07b82fc86d396458859cf14c4e1f00e4ed2ffc4edfc27137690f94581b45e9451dec72d17dea650adc21732509400eef4fa046311fe5d2ce1d5f343878243cf3c6b25ea9322307e3b88db11b686f3ac4bf136e3255063187364626158a7364ccc182314b257bec5b55219a148b3dcc4a22c92b5b642cd01bdac1e3de7c9c1c6bad62b579b00f5796f6c75844ebe253fa2b97c1442f6c0f415787b103538970f8a37babab8647a193852bd32db6bdfbd3365913590d5698f4e95bc4eae3da83bda2a4999edbffddc3b90ff0e7249337256922d50a676a2fafcb6f6013c18d8341665fb2b76bce1c0a2f07e0f6fb628fc5400df4451d8be0493ad91197ac4dd12fa9c14f495443e2e3ce1162c9e170c7d4bef59d723ddccb0a8420b04dabe9b1215ba376be4fd0ca738177a6d28675cb1960a6e0629ee9966d9a59e7725a6e0ee7a02b663004bed2a72ead5f09d80b477b5632773b2686933bbc4d2601c1b52f5088898c91424cd20dbebf727a439c9e3231c8862961102b14b26e2f2ef1a667c42dc9023ab942ce9806d9ec90ca6dd29905f97529fd7c3506d862979a2c2c1010e0a4a238cadab60836d5fb73b5da56aac51dcd49fc0854c4383e415c46958253bac6bc32b2311854d9c4a0a78410b0b8d922c42943eef6fd1d74b9749a3a060e83a31a9d784804fb10b586f0f0963859ff6b5d3d802519ff977c0f8ebbcb22966881f2b2ec9f07165046b838e2620fb3e46de86cba66b7e1e32196c4bdaa6026dd7cf55ac8f25f38fc35d833c70bcfec228c3642a203208f7a57fb6367f644abbc7069b99e7560f537b1774e89b8a46f1e9f15442387f31cfc80d40b7a99c7022847001e6545388fe132ff469a79797897aaa91a609c649c59afddabd436998bf7e5738a1d6424229ddcb67fb4eae7a48c96021b465d10277d4fd994c83a7c97ac3ccb37aee5c292f0b6d1954af71fb9e55f9b4f1bb0c828a29d8550559c972a09d71571379e3f1bfec84360a312269c97fb2c0a2283ad7619151a698b6689bbb5ad15bad2e2fd615386393531d0592d4cc627649c5879f2291e51a01eadb4c429a947dd4e296b97c76844454b8910c48152c70f4a435a1f325daf161130f06c14477e2e07b9c2e12ef298a1af2126ec04b6ec4d0dbc84576a7591b68db42d9d7660cdda916aa3892cce5002fd1c85d88d1877615c1afe31cd30bd20e2dd800fd96d1464a1ce81db3a1351d9d08e8b7c7072d742d9dd5128a08866f6b2f6fe1856f261ca4c7d0f806cb446790884c07369f08600ac50c8415a1b41cd5b239e375cf353169fbc9e5dffab4bf54b98b2a4cc98a239407841eb89a72d7e62ec5f1ec5eab70de5941b013c04b611cc75dfafa28bbf034b5a2eeab3eb4b16e343ee32bb8d4bebf80e2e61effdb56f49b038f38fa5d21dfcf033c3bf1841f8dce2a19abf5110015a6380ce65054cd0d75a176fd08a07423c60e55cc04578436b69fe6b409c94a4a9e6166cc424ff3ced9d10de37a5f3590bb2cfee708d2b414f119acf2be30a11505e6b54e4d7d9555816dd32d756126525455512b4c24f83a96ed9cddb7567753667cfea592b87f5e20abb8680d447357a9ad3ac167fad551f3d69485214b9c0578344cfd97c9b265e1e2735f88b5a5a7dff2564c99d043bb13fc03545a9b00f9a977d1014d315ca116fbb4a7039fc0645083054cd701b303a25293409ac46ee373a2b4a9e7f1f422a6fdb22d774ac04f82d2b371c30f701e3bcf6e332298b48a0c8bb7d19ca970cc98f6d4dc2563b6478afad123afccf844621b0b790d49ea8faa038564713e7f0b0fcab36ea462e5235d46172a532d2f4c948a227517ec6cb2d4b065935017d696777600410c0f639b28c08b00ec4f83666053b9183617a6655f3943af3307d5c64c5ae432c30de4ad861dcb6d0810c19a968d413ccd3a2de846581b996784ef8bda28778bcc20331b1ce51b1c0d0b59b8d5521645fafeb42457f13e9301b6dff20e566647aa66334c5052f6674b1ecc09cf41d8d0587380ecf7979f006939524bf9d6f52f2e901018ab5585ec0c76b00c47711bc13ef21e88a2f3c7d90650a4ad45d0085bdd28c33d7beadff53e8916a988cd4cdc6a11aecfefda13dc3ed293cf687e1b09ae8a9668b830bc196a0685f11dc171b7262da5d9b54c20e7f330dd9ebf4dd6983e7a86c21c3e56c208b51567c69716d4ca5f094befde8d5997568f6fe6ae3129025a139d16e75c45694c9b0c3610d1e351af480d2c60862abc56e64a71876d93eab985cb89cb7c477e80aee1534a95b83110796bec88c84d8a26082e49a677816ed4431cd64a7500df7f0fb514e40b9e3f38f9a07c9e122a500b4e3893cf7b393c8ec4a49bdd30c21ae6b60d52b9630a348a7d70c123cf5f580902939c4bfbdf3f8c13bd328588d9ce423d892581f289929dc2b42e7a078100e626446bb3e9d139f9360b575d421ac4ead1629cac2ee4bf0edd5801822f2d94d63af430236e2702fb01e052e16c3e4f9099b6026bc49586a717e37145ace4581c497c3a5764eb66e8217f6a3dba956a53cc902e9d84ba743d5a3e1caa2c9dc1eac7507c6b6b75cfa2f17fdb848319a8ffae410259cf3be4a1028ba737524ebb78a6c77feb0f0046033263eae432d203a7d9a88a63884d71021e5f5ddf005b5ecd9160614131be259320e027bcde9fd8f0e1ee3934e14c811bb115ad7519f4e1ce61829b43e0c403f0914a18737e4ab3cedce4e519d0e4574c92e7515151bb5635d02a04b8d53c5e33f0ea3d88287a63e11c9dbb315cec258f37ab8f02287f20071650d00859c1079cb511278ead5d46e068719486d734d056bf97b98c9e044206d7bdabc3a7354419a01fed091648efc1df0472636b69c288db4c3c4dcaf89ccd8933d2f1ddba67ae46c0bcfdf25eed601272e1ad098905401b886ef0cb7ea2a6a26d447a189f5f5b0628ef4b6d08e0b69c9e77c681d7747311f8f67cecbbcd1bb812ccb40d6576e87018139e2ec3dce06d49b67d44e75f42a6b79146cf6586e6e785829132215aa6950131d558a7ad99de904b1d8cd8c49d39a23b99a313c8a562f15c4f7f617e2c3554b2710cdf758d84fb8738b67abde3d85ad40a15601da9f9580fe4d0e3d02bc3be6e51a0f8f2cf33f4605257aa7826690d4a65a48b73b4927be730b6da096d74eda7bed5d444abe5b3273067b360c0ebcfbf144a090d2511064a296003e30152f6fa130d141e539b9837520e6f37fcbf33a9eff4d3db4343ff2b72b0e9b0d4028711e4ec27ea19babc5ce17183f3e4e706f52e44cf642ab3f48894d3a4910a42696e018de58448df008fd6eb548141f7ae18f74cda71deb35e57a8bff53b0dd02b52ad21c580a453376eaaaf7ab33fb5fb562657699b893cbb190b859e09be810ad2d25beac14553d56803bde2b0f51800b56cee284b13318f904a39302633c21fdfb6b3b0dfc0061dd955324c0f9c8853165754572386d7a0c4702c89d2df84182f65ddf983545e461d09ca79619f567d86644095db61c9999ae77e783bbe420e81b4575e24ad054172a5184989148fcecb5b41081046b5a9c0903223911e24c691bd779196de021506e3d1a25abae2cc255affec40d4756778ca8aa768e08188fac13c0367556e8c095f75dd02990eca8dfd2eff1c892df372220f537398861c6a92aae087689bb2907fc72c0b4350c542d1a3eb979d8f5d7ae31744f2bf862731ef50769b4f6d0bf739adc04d10fc1a63a5f51e8218e986d4e6a168a3a023bac130d27d41116b261160dcb1db4220441990834d86df4941fe4065399c6c81cad02f942d091f5f2d3e9dc9a653c0ed4f5b89fa2dc567f0cf00d5ebd8bcce454144d33f34f6fbe4c999f99e46fd84db727089f24c0d30a66b2e859b94c57d7242dc162b00c49a2e0b5ab466f3b93f2f3afa49d8bccc784b377a71e219ee9915c51c03ea70569c72ceeb14bc508026091fe5ef2c3d2cb6152ccee88c0fc231e36e9e7996ff6c7889578793213d6e4aa435d0bceb1e6e48a9f76b13785200e6a26f95b251c5ad60d68ff204c752f245876e296cf3fc01b37d235f5bceb0aa6923f221368848ddf4c400f07f8fc9726a94bf915dee07dc7f0b7f571289037cab26242d35f4bb45eb08ecf8f7d463b68ad8877fc41f3e7ecc184bd286d509673286980893e08cad75fc8cce77cc48e3df6e2a7d17a4c8d042a78cadadcc8c7897f5841ab9b95c942a8f0a61e98ec90a116500679ca57b33967d207a37503efcb8c55784191dc40fd822096bfc1d9059fee0136026fe499ea3be647b1da61726f68057ece8237d9f43c9f9f4a6ab31b602739c30d0107786fe49f4962b50628c31f4ce7ab54763b643e96406b897aa76ef0e385a8223ba951e03ee24301c18742d80a0102782b9e851e1eece384712c22b4262da6897630a20ef6c3c1a968a4a06f40c1998497be042efb82d76496d25811a809a81cca8f99103b022167dc83f22272250fa966ae28837ac3e9ae1c4a322f3fb28552fc820ccfce0bfb0fde8e87896df43e59d91c048bdb3a7935c15b96f0b705b16f7be2eeb588a8aece89a9c25a170b84332c43fc2f01640c6ca5444c85d5e5ee9d938d597cabfa83e9d3e624a94ab606bc5a73a8cbfb621ea308976138835f633ea77eb7cb33157047a10d14421928227cf09e5d303cd2654fa5950ca4e9e2e6729543cb952b60323d2d1cdaf8081b56093518b028e9a22920a6b669430a2ce460e6d5601e533023327857002c099cce98cf206bb51fc08e05780849f174b27e48747058e09164da1125c3712a1e1917fe51bbf8cd1b2bf697d8c2b2aa089918187bd4af44bbcb6baee6e725e71ac74e0412f45d27c8fb821239912c2707ba6da4a0405ac2d2b5a024d5869c1257d9d115f72eabdd0c771c12af47c869c6551d47a90aa01ae1d9282bc69222264ffe213684b1ca74fdcafdb1f44702eb699f8953ec54310067b35521c7ebe36068a87ad3433dbe543defd63c7a6901b6514030fbf5227cb8ecf11a4f89caad516203db40cd8cc9a742d559d8254daf39eaf18c18f649e14852e4e9a2bf93d1ad005683fd67801bbcf5e1956c7842447956fccb3bf9de9e27116effb139cb15574ab552bafb0e057624336c1549518041bf76d544a1ea45bc7e94dd3f2930a34222ce15b966b7438b6e1e9680e8b09764d35ad5d886d68f698b3e8cb7ed5478c836ace5b7d7e93a6e101c518a2fb3f6754be829219c479a634d2a0daaa910d9e5120c630e0afb4ccdc6e381311b1c970ef04d0fea61af3fa68c1bb928be60b8661400a4170551cee1e43b2a1d8eca834f0d12b0e2180ba46fb4d1ce5ec20729e839980c0e0f77d928dab31697461f1bc9d65078250e811dda2741769e084f113c0db197e9a5b20b7fe193f63d75daf20f0557d99b3aea51ab48f73af9bbc9439021c36836a6703a6dfce2fdf05e2bc1a7bf67cfed08fc5a74062cb86d23d08dd022403dbf17bb684705ed2f68881ede539726ed875eaa8031f055d6f526caef4d4b2d1b998f5aed35c058f91d92b84c77feb0d8f04241f4a8e09266d037dbff943542008bf9d9b4ca07f205657e98703ff3f27ef5eed6cad5302e2b14cb6beef90f2dc1722d22b60ced21c9db753fadd76bfd048c99a1d4ea7b3939c72cca2cf65e09682857a4aedac98d9da478b0c898a5ec95db5ce6a547e8e3b612ea0d89b32a183cfc622897233f3b55f571c2cd0d0af5d26059f4a22feb7ad16b40a9b42a4572cec72a6f7d525d4ab2f7e27cb7ebd97a4ed786bbc1a7a9504dad60af2b6906f49f0dc88f3a5e981c4b95b99b08b0bcf53740cc35a923369edb793b5fe63921edfb96f616ae5c0b8a3889ad81a87396170520eb555d3a288038eb431ba33c368f375aabe8850b6860ffb6cd6450e5e5798c2f42513594d2590d16e0c35faa3526ae67cd2575be4503277a9e8f2b229ca2f038b2b59a8c07e43a001adda11f2ce66d1cf3c16f968dc8f10fb15d8858c3ee81f3c3c184e876bd117a1a84cb9c4ea8a35af0f03069dc1649cff1ed66a1a203202a041581e44e199b42701030ff708dde5686526017c3b1894f1d6c3a2eae9e20ae061f04ded7e5d443568bb31d2b4ccc4bd867a98e6278da1641f3aa0317118147c74e296e1b2c27238fd69aa63d38c222bf3bf55ade0d5b968ba591fdf4200672d4433cc2ec38c88ba47120e8450bc62faff0374e3cf9f83e6dea61007cbff5cc21da5c826d326a79b7cced1815c7aa285b5e106384eddbbb3c32a6bb4c488ab2d644dba5727226cefe556a8747217131610d70c15d62ad985524c9c9f570ecd97384f5499911f716198eefcd3addf9126433cc4dac6bfd1d0a11a26661e5ce435c571b8ee0a6c71ede234f2650136403ff19cba3dae27f6508843b9eba78cfdf7f646ac6bca06d90c9d0df9047b973167cb858376d80869d45f5ed9cd9be157b2851e47741c2b167363aad5d3d6d4166b99311ef89e34b09e02d5082da83e8addec6da31e805b44f43b8777706c9a517bd25fe18c4d53056aeac9e137046cd4f80285aea0e6e2686ec5c2b776321034e39ad31e8f47cb7061d870ac9cbbe2360e42d282854635708d3a365d71c516760e3928f300a65c2a619814a1624e46305c044141f4daf80baee085cf0221ee955c2a72b54a8eb571aa5815119bb5dec171a76a3aa1c8d4063b5c9dc141a4f5abae92a1fa9a3d17af639a5d1bc33c1d0ecae69686d2867192ed9f4f05456db4a3f6eaee3b560e323e1b46f5accd588045c1bf45ee4ff18d79bac5f2e39178b728517c1a1da76dd8d51cac60887d6aa6d7319759ed0a1cdf018898534462c794d6b21e6a507351f35b273600cadb1d35c15c66602bfc1a0da73e3e117611ef1a284d4dd0ec1bffbdb88d8232af67b4aeea0e7b781e2a320fb506af192ff05244373c218f8b2bcbb51f0e46650fe24545a93e09bdd143ede5e760c929ac306d6d9f38f6538b74bd8d06c01a0b7b83a2fc6760f105216325e585b781a2c0304862428e31957cf1b20e2891acb69a57d3a8fdb9ddb8f76272a61e356df59ad05a6f627aea5e5c68caf51862e2298ba91b90a88c23cd203841a5195ba4495fe4a20c922a634fe6ce71853c0a821c57d56bbad9d47039a8a06f7db88d31814de2ee37604eb2c9b1e3ac00da5dce73821c21e7a5958b2dd5693c7e6494d71c707629433417b0d1e759d307079b2e5997332e0a74e347c571e4d5c6ace7bf8dbd839b1b895e8c3c3a97f4573f9ff481499fc09951f617dd7a351689c2a1b92bc415d93706e0245b4ecbeeeeda4e15253f334f66341d18a866741d4b02ec22e907b6637394f973f3f2a4ab56614be84cf2cdbe4813548a7d01db3b4acd63f738c6e225fcc04cb755b7a9781914a87998f6f9a1bb840ebcb36f82868790367b37d2b01d4b861ba4d5288eaabe45be5f9775157265287fc9c78b66a1fc50a7f51c3213c46103504f66f286106f4ea0c77c54d7bc988a204b68cc8d07808b4c8377c327248ae31b2fadf4e83ceddd4e2f25b2089c5c22860aa1c5a274411a50d12e111065f7e237c3fd822024c6b3f10991bc0f431f2579604ba8efcba962643b1f128675f7042be7b0cce31a91ac207a34bdb789c9ff53bfbbf7b0b6a6c7e94937093144e212971c76599969689ad5e289db99e12dd25f79b1a2557e39d14d6acbbbd0218496aa75e6e1910e6716fa886a2984cc2f1e04fb0f2fb033c23b33f5c5db17033985f11123a183e3f6f2d42d2b0b9342a8fb96be4053b218cb17013d7ff4b3fddfa97c99a6f0f17fb483cc0f371d73ab3bcc61cd8d002e6ece1cd9f803af048a435bc4ee9df3391bb8a76855bb6645889279a4c13abecbbf4f6f80dca89cb5bb338d1fc978ebff812ca28b1b42d3710a455ce9ff54067f94c9dfac8d947851e7216c257fc0578e1b7dd74f93565f068e9587c07d644b9f1721c5238ca016242aead03200ee387645762117c616a618d46d93af1c89b17de560bfb1b6fb54a2e79f836d50e49bb50ed1ec146185f9d4077ab6469de0093de1588aa729207ea418c5fcda03315b72ce0e46b017ee0b3a732949bf5261a8ef471b6e4939a6a846c2c2c1de137da8f3f546cbff2d1bcf85cae4a0b4f58096f164210b8b9bc9ac714dfdbe1f72dd9f9cb95c10fe1b7a6f110fc33c5e78836da5124ae2182d59676702d1a6e1f0177b9772509b2f5fa4a0b5812f3f277267beda0e2e7750970e03a48383f25ef8c58bdfda1a9243b0a2f8d2848c35785a6b54a5883bb213611ca034d7db8a8e71512b3ceeeabec415ed161a763d4ea39773aa5d0555b0f94daf6520180f32afb1d24969401dcbcccfa20dc028acfbca18d1a8a4aac8b40749f13ba3397c801ff887814581751e5f9b57b83084e3cb2fb4ca662bf1dc15931d162cf66e206b1cfdf210596357bd68387444d7dfd219a6c61c792baad344cf9614a291b26ef2d1ecc671ff95718c71ae8275421d5889a092dc5421aa6942278af57d4690aa0d32e6d21763bdd9039c8ff634be37ae4336c69ef5a11a285c43aa194de0a762ded2ce814de47b82d93cfc84121e4f1ec99989eac29bc9ba63cc40f6eb0149644924cf406f5f237953103f275e22a85b5b6485e0835509a1b3fed330651661d106fd9fd9abd092d0e8aec40e82f5b0966f5942be0c0b24dd9273057496f3978521f5bde0b223cc6fe148120ea3a256903dc4b0f0cd0cb8de840c12af3d13b5cabf30b3ea4c1f7f37c7bc34740e43987d333c495a7dc7eec579069d2f898271c22cb10f981ca1d868d46cd7e78c507f78eee1af643210b9391307d65b3c51cbc01ea4af7e2f8f648df63ed7e10d8e4bd534f31273d16fbd22ea38816285b3603676f4a91e4bcc21ff8f42d54648f16057a4646f53a2a7a3b6e3a42fec8563283661eeec375f089d6df1c729ba30119354bf41500cd0ddef0a38294e4ac48106451e2238e5d1da107e338d45b72f72f4dbdcc392ac2581a5ed7e26718fccc4cfc5f0e9c57b2a6d72a1f23a32644d565d4cb381ec83560fb5622531fc558c144c0f655506e9673caf0c6f6afe64636a8cc9a44910225d2e794ff992c56f718666afc292214e8f1584675aa093a72bad8c48220f8caf015eea449b33d4294e50342bd3388d635752e82f32473b9a6b1ba17aebcef15fd7e7cdfd53f3e2e357a2b550755df96522fb7252f43f118d108e53ef5d1207377d2e782776f4c01e0c070c12b977af67b7274304109c917b93a0e938ddc37d726cc8cfad580f7d0b4f910c8bf87d1de7895b6484e73c47c3cba35f7864114f3a52587ab7a17bcc35f1f70814d5acf29d90727e57010c72250eb3e69002c78fd2e048e60bbe734fe8d8319209af6be74cbba1dd53b92d33bffda82af4f787b30745f7c389014e7ad3643059722eb3e87d3f9bccdb2534c895574d1e24876d9876b6c0b67710cc1669ade2b8768df685f24b18505304a421ef4101ce992a9d12f595cf3b5cc20a0acde343aaf7a3d162baa9654b984249704270a52d6549ddbc1c9adb3f2a6968c6a346c71b585e1b69083259bbf313aee3ff2ad62f2435ac1fe19760131fcda61c3cd5848db8ae397258e6d10dbb85495b0854a78d2335973bc6fff0925e9e7cb59f440600baf47def97cbf8e0dd35562f73d955a2abf5674d590263e15b96e19d6ec9a11a72009046717103accbcdfd711655e7473d3758ddd00004f07980ff548db52177e266bbc85919b91d64032f0d0de7d8ea083d9daf5e2d6a26c243a0be0e1ef0b9a2dd8de4b9845e03d3d00a594683f196777c85cb2c199a1b834c5bc1369b767b2e251807d6467e91ec49f11545bcdd95ec9f6ec5a6f1a9ea66140321b83cc23197e17580f63c68c7372d166b0be7dca1fd0401ae40ab4ffc2cbcbcafee4bf42c283956d048a5ff1f87ffd4dd7b98c8fac9bd2f0625bafb266fbe706d4c2336706a03c6414b709f06bc7786fad02b8122a4e40b58979c1f431d3bf1f0183ac336e3d67a8683efd90fa4b95cdef07f3ace86067f00bc38d44bd54ca8d14822c17f4f12a64281a0978c259484a6b8ffafa6080309d2f1cbdc7e412c6b6e71eb85936c6538df232031a4f9ec60c7ba03d6e5c168b1eb2bbc3a438b946bdfeeed63b58f21d82a95a6d975ca0cde53ded676708915c7cc29d22905b3046048f5c1458b581a163c6d5aa4f2f2d43d5a2ccf473f0df36ea9dfcaf8501a97a1a06844a29203c1f2d1b0b46ed854c713a31cfb94c2e7a1a15bfc73426d1a8b19b7a49313bcdd8480435c696b08ce060cb24cb588d31db1cce1f2db248143578b2d76e4e6f67bebe8d6dbf961f4c31541b396f2870ca158fdda87d0abf7c91fb8251303544f33d52cbac44a8d8ac73177f4bedc7b8a8929845b81b9e5f0a757b7fa889465e5963ea6206f0a898640885432519a39fe10782fc1d0a8685f2e494d312ec9b0cdb6cba2afb16edc83690827f3e9bbd784cffc32d2cca858b83b1b72e3addac62bfdb40dd7427e93d40048df21a627c8e1e9eec2065ae72b78eeee8347bc1b66232a5dfcbaf1247963689c846270ecf2eb2cbc203ad451e117449a52fa348df0bb250806f022d569e35a2ea4516e3680c7f50e518c5a7e34ed4a3f29d79bff21aaaca331939fe61b077b9ac25293795c2e424523cf9871a537f33493b98a5a43017fe3a811d8debc4daecef05a3d0110b4ae46cd7a657f1e7e4627e3e1c66373b00a36ce8cb155a68e1e7904b707c2246f61691b0058a2079536ac69193d0806eb2cc2f8fce9cdba2919db994ab56ac07b0acb57763ef572ad9100a88560b972d86758634f03bee5e81bb80cbd2b7cd19eb6666974d6ff41849708aaa55a0516eb661fdc797dcee7ac851550e3a283370648852e8e6e8d453bbff0c4b9a47ae1ead94e47ce74331da09a5aaee169a7f577843595ebe0041fa1cdb0e893c9fa41948bada44eacc7c841604ef8284e4d8982ee170ec1d1984601e25e6a6b8de6b211a8d9a576fbee5516154309d4ce5c65e03e791c20d454eabecb3b94fea22565b229ad253d77983a1d5a8acb72470478e6bebf372d6e98637006286cf1066c42f18a6571cda84bee31983ea492916ba67f011fc1238d17a92cce8bf6f6b30ff04123dfeef329b467c1aed50b873372e002b02b7129aa91a8eccb865c33e1b4c1d054cc9dce87670e0cbd2721561e9eaadb4084e2e649155224fb7ea8619a2e71d6379c349fdae3b8e90ced3a445932d4b80b3d1562d14df609c6415b490b56d681f3248ca47801b01e48518f24ea33549f0980bd187437a6b82ebdb15a1e37718d6ea77b61b7bf9c985f00de2fb4ee13816c3cc516d92674c1211666bac56aa2c3b38ba9e4429b4edf6b152e7c3fd194d3360ae8b985b817b7b9d80be8943db38a64290b849a8d725d0a291450f82ba6169a1fcd83f846e80bf3ea637c3024d2c2e04c533a82c0beefcf3f2ea632eb25b6c7f44a7c636798cbd37f23cc381651e8e9146f92be57d43260fee67b52bb2f7d24bb636e328a149dcc77ad128ee7972daf51e8c682e496c4d952f393a808ee8b88c2abc2b04e52ae5e3f15788a7245606458efb0464278ce6e54657ed1c247cf09b44ad2f33c0f77ba8104c3c76e573a766bb39f7992dc33aa97cef99ed822b2f1a6c8c18d6a0c039fe039c9ada8111888173f681d3840c808bda22f51f2343f3cabe0b2cdeeb265011b03e718d5a72673de3e47e478065f73ce5607d4396b21068a9acd70ecbfc8e6ae92f2a38171c6a78b2438287f683520d5a552bb2cc966dc64149cfc52101675640d54d92d1546898a673163735bd784c53706ecbe5d4c4f332bf5a80d0be9ea8f56d388edd0784a824c4232b0fd0517a17c43c4b18b41c241a4a2ed6b465a34ccb4a40670f06353e08de9dee6f063f145f43510c48cc12d73da057b397c816d7cad8862eb137f888969ab0e8ff105318cd7d82e227616c25390a52f7739c4078a4f5a6445c4804e85b00a9cc6256f06df2eb36a5160959e75e753f8c28ec9138fc86dc68ac5dc2f9da327ba4c6ce1577558395d58ff7dbb5888f859751c71cd593cab2e7946fe8fbec231fe83bbd309a21d4911d1de2908e9c182f3e346af738808b7c23495c03ac5ade46cd5ccf6a51a0bf506c5a01cde2198bbde2d084ad1e347ffd95e86357397a333c8dec2650690e3f92844060a4014050922a803f17ec3e4c4828e072bebf1812953ee58349969d5b31eaf0da4721ece1e5fb1bc0f95bb2e90045393ff17709f346c658b9245278c9799200775b62bd5b39e21abd253152b44eba96047b97ad692529635caaffb87c65eca12c38df9e8a02671b55bbed2ae0b8f3714cc52f12b2f0e6e3f3429e42c41981771a9d07e45bb68c54423bd153c04bb7bb0f2056800fa81db9b5e5da9563427e50e2426da24b31dadc698ff221a079b3373481cdf088bff89da24e6d1afd3cfdfb6efd23a52cdbbd32b0d6e3f221ef10443c89f430f5d64bd7e581e9c472222e689e69347b62adffb0e3cbf21e0bc323132eeb0d68a294e457147ddf6d957bef87ab09695b211cfa99e9204775bf1d565848e09607ffb9433fa7dbf40ccefc7b4dfdd850ac909a890ecad26588392de3ed69dd313eb3f1fd4e7ebb9277f9133ef32a48dd5f9e8741bd969258141956088b0d03c2010ae4792f8d68f9060fe3b74acf6c702bae14d20bbe9d5d5b0ad5a93b19469d36c7f402b7bfd2e4f8a1892372d660826029ebac59561da6c74a5d92b4580d46309cd29631f4d8a93f454d109cd4ec9cac807ac2f4b79080898a22f5a311e7f44aa88b787be8ce0f9dd95e0001292e63ae77f4a11b6a31893e7e15e81c270678786d22dd1a234722c290c2377982ade0d7dd4a5f8fc4d3ce8e90fd22a450aa398b66f13c4293154735ac2c425aa26771d37659360412650805953a21b917c245985ff59a2a997a3a3d6d7c957caa459aedc8b443a1f658f8caff95e5eb36b39b6e261e9c283cc72214c0e05d84fb89d2be622baec5bdd4ec2f1c0961f03c224e77175f516e2ff1a5e1d18099669c5f027975e10160c98e7655e0c2fe37348dd79cb30f2bd4a452e1a4c3d46ea9eaf3f66251e7fd56bbac3c8a30aed0d66b13537a8d559f2644abf380c54e63204013417e8d341c59dbf20b40ad59387f199707d1d408f62c335f464d349403878d9f0d6960fe4e0a0f39c94fc099391f0c7ce0b19022eaa5bdc8c9aff8985b93d000a3642d51842e2509b4f8f65b3a41614d6366fe746ddb10b9eff52c9a8b2ee10f2fb765bff568c6c1683ee34ef39632cb32bf5baf7cc44526c8192c277673097af17f8a4dd871c61485f428bcd9cb6b141fb0c1b1ee507b00b9ba1c76985e3263eb114b7b42d872d73f8d0efd378009df192c0c9375b763d826ce1a1a8a5e8d66feb6692deb8c942a4bdf86a6943b3a88b4fc709bc3faea8cbb8b003f030886db06370eb73bb27b1d595e01a14f4a3542d0c20d1010a139ef2c9e99a1564da0da9112af7658c7f04030024ffc623d6ae84b6fb4ae5b96c9fc83c5f64b6dace53e7f12b7e476e1a22ed1f58f49d35d63cd55ddea4eeb703465fc10a75cdced2a9595a5ac70fe8141f7fb3d908fda835728f9878ad646f1596e262c7b43ae59fabfeb06b9f53ca64b2f486cb4646db66600b62469dee814b1587c8a2037f94f39d77d9bca1d0cb66e056168affaea6a039843c31c32fcc6bc10085f75ca822a810b8c81c6d497d8744612e01bc4fb881490f334163db970dc1d01f7c41a99bf33ecc3ce81f4c14b4c2cde83dd045c933886b7f6f5aba9091f93ec061d8503246115edf60416a68ddcdac264dda2864a1d43f50d971ef1313d08563f513b4fb36eeaa09c6bc0e37991cbbfb82000d84161a0110bf5f12bebfb5a7ac8ad01220f41d2e7735562b8f4bfb4c5f07cc53f422efdaa06a71322e61f2b7d608bbb91b90d32efeb3c72d59054ff439a3a3bc1eb52dcde8ca702679eb92c274e580e07aed0aaa9aa1ccc5b43349b268d0df42f153d437025265793a63c56bf88ef2a142d97749f9b861b0782da6ced163f36e40b30c1f71b10c86fe7fb38ac0a1c09b80f5cc8f455f11b51afdfef7f362f23e66f51718aa645ca82136fa7894592cc8d4cdbc4fc4dc7520a8c8d7a24d10f6abffd578c3a5c44920f833cd20372e4f8f231b8c7317e0c680571e7693236d87cee790a70876331e07ee4b77b1927434d0506ac146c177b2fd0e82a21d8c22aca54f1365c92f6eff2c5ed630094a7e7cec0ffe187241cced5732cb692aca2cc33bed5311141c3f4561e956c1923cd8fc3697041c7a00f2da81038ce2b32bc088240293eb12307bcb1af23f6c9f747703f059e76333fdc6fc88f12536d54417ad7041d4f3849b71fd93bbb7d0e46e7fbeb3099f88ad5562e68845845208a160ddff4345ca616336b134f0dbaa38077919cb146c6eb7fe64cb3ed664e3ae4802c54e27a0a3784cb1dbfb6eb7256ba6cdb8a345d48c16064e737eb718ec7732d20a1ffdc172e670254b9f87e2b7b5446b4ed90cd6e500dd68e733655ec04499dd5984c6f2f96b4a5b6ee65b036891096ee31cca73f76a9c40fcf8d233bee2d6cbb2bf73f2daac6947d2d0e23454e1f0c67f075bdf1bb9afcd8ba8b062e2bfbccceb0dc4650d0461c7af9c37709032270a0045205150896540db3d41949b8c4c811a53d1e394574bb904f4421cbfd244c9d25b28ffd35d2ef15a7fca6600536626a3c8046383534a713977b1a75a0690ff422378a2a0c3f22996bb9fdf5fa84458274739e581c4fe4f1a2c2b8b47f1fa80ee1472d6fd6931349c47d3fab0295c698409db2200dd375fe9cb88343b3d6ee7c9322f54483ebc47243a6e321d3d93161c2d49b5019d0ae09cc3c795c1eaec5c62a7dca5a873b439b58903e2f3f546cf28dbbcc1737c407b56c6c988dd3dfcf04a51b5de899cf9a2862f0cf0a564d5e100faf5f076f6fa6323f41861c5facb99224fdecb511312c1003937d2c8fc5c6cc1e159535bf5d0bd90fb67b4c4f07c162c9be5ee8a8e96adb7c41b271ce5b635b2020cf2a5730137572c0f05be200cf23ea360e136f328d4eaf707a4d9c1bc1a3edd8ce051844f78300e261b5fa0691bbaa014e49003d0b6b7d909611d0dd1f12ef2ceb1d90a8d8c93ca0ee4524255adf0740e4ddec3cb0834511a54be87d2ae8d405886e610723902763014c72efb07a0bd8366aa4169fdf3c35069da7d039672add2d42be1ffc6886aec517684f8e3627bdc4eadfd428ed8adb76a47e9cf94637b3d91e4dbc0be8b0bb072900d10eddf7848542c3758e7325ea50ffe9c15dd77cdece231344e2c9b24bf06e06784e5c84cbca9d6ecdbfaac974f9044d8fd281dee4e06bef181c83f9fdbc71f37859eb7587f80e4646c079adfcb80f036f06fcac05c8313a7e572e164d69d65861c20e027b1dd8f8808bb20baec4e0448048a3ddc31f1a477bba56d3824fe31026e8b9450149de0418cacc8dfc67cce5c60359f3a7d111d32aafb69504b7c8f8e9b82b13b8d450c239a00367234980b374006f1b14a22ce9ad31bc2d0cc1fdd86445f40572ebd55e1c756fb0ab9e186d0cd03132e4d4107cbf35d2e06c86d10816228f443759b103c6c729a2dfe7e069aded474498f93aaf961f7df67fb4422e6d14c6af047267595cd663f8d5a54f8070e0da7f8cb9683739e74731ce9b217a0cea483bdf3aadbc87e3fc62dcfd06560dd69c1834463c6010089051df8e7195bc1aabddea8cdfd4804a14422f4cd38059e4832a7b7433ef536054c51f97a1fb94795e08e3f7d62c1cc78898ac1c672f5761b56e13154ec64085bfd856d7ac2c431030dec2a7f868c909832f91b6a1735d6fe4d687583ef6483457a13d1a404925096e95386c5ba3667a15d8be5fef8b0c9a47ea41ba15de6783fb24a8e6851cbf20975d233cec26c7d975e8e7e2c4aed440902ec4051b35de2fbfdeb393bd4c3fa5926438caa4e1cd8873ec83f42f749cc5263ef9125f6922e72299767c83e5ba651f384cdbcf518b891d462517c881c68e66a9608c245fc2064b168b1c9d961e79771e7efcb52e06431bfe67d5cd797480dcbf465e0caea431410b0057929487f470e1982c7dce65ffc6ee082eddbd8139d5b353c44c8a80ea4fa3325c0b0558be0e9b030c6818e24bd90b94d2f94b9ca7db222e3a663e94fcd2dadbd8c901f4e7eee8173634a882fb60f4730b5c279366413a301700dd2b5c2a842050288e57b748ab1b04c9486347a3cb84243c6c02c4348204d910ff01eaaa0389c5a54c6e4e5f9b98b0e67d12b8340e821251800202b10286c85b6a45f1456a7c64fadc25553ec228f4e4081deb58bc7ddf30d8333b0f475d880d3de5a2b0b17e19294306ea4a290923c8d4db2d868482d91b2ff76c7eb629c21bb629156d615a42558cb4bd736de928692aeb0bb552b6c63d829985e9c970ec73913af5c69d1cc0428c37ba8134657b987f48a014d0a668bf2e0f9be4f5bc1f312b5c57943a6db95cde7c8dcb608d4d0fedfb99bc5a3514c44b22836bf3c1f9653df08249e39aa0c72714402110bb57beb28f7631700ef9dca6ebe07c666de972721fbe8964aed0d59430afd7576f529474b7dddbded007cf4ab343134427691ffb8b94a7085b8feb9930e516bade81ca5e8ed2e0fe768cd7cc09ad82307ea73af24661d23ce8b13f4209bafafeef75055cec05e8bed994d9b6b9504c4138fe4a8cfb4e16461b428f3de01f96c1069e6f828fecd4e105d9206b9f358e080be7272efe9d31615be1ee9f1a673acf285b6666aa6af4dc80683c09f8474ddb670618a2deee40ff22a7cf13cc380709a5a1e0ac079551dcaab9d6a75d4664607d496c15dfbc48c5515b74d16747c159368e31621889ed4292e12e86d9c2002192f95a2a1a97630a3bc0a9435ad1010fc0ab7de388a77f0a009c646013a2cc5415f422dd8c8c03e1c6ca5a68bdd2ad3236af88c6890b895e493343a7798c6435489b37435569ef7ce409938a5100653c7b3ffdfcb8620ead6fbb935da944458fddfd4088eed270c783182aab5e2e917b25260642b71e87bd2c21739d01086fc2e9d13d0d75e10b42ea54e98a4b7b94a36d804389f12cb85aea6eaf9172c0adae5b6f72b0ef7cdebe59a6dbd8a624f8b86a9b61fed2d4251740079640947b8192ad3d0bdeebc1314651a0c163e34b56ac74ee6d2cda37a0bfc9824c5f50153cb9fb0271b43c40cb14243a1c701757178a1250921acc968a5b72c5b782e10673cf128630a7d10f933da6ef7238cc6bf131dddcaa8532718f76bb00f9e6e92c88e4a6250af293873b4233c854f5cf4fda59486c3ccd002dfcc06cd598ffd2c698fa833d5a8e79392dac7abd17c5c9610f2e41911e4aaca7429ae599a567c9f9e7bac01034dd89428ed6e9d16291808e83b75b12185ef898dafe1c16563b23e031a94bd73df90cec34f77b3f1a2b1860149a0ef8e4afeab9dc8cd2d992e6c9736d418c2601a74026938e80f01f0d82529fca440e315335cb2fb42c0bfacea89b9577c7132176141b3a7dfde820e3ad1bccbe9664deed5ebb3ee56dd0953aeadb61ebb9e3296966a438e910063352aba225640a08badbb721d65f1d946738aa308b739da450b7eea848074396260d9ec21f1cd524bca5add172b1db61999d5b5613b71be611b389133ddf3e6a28943ba5e761793f758ebef6e23b7996d0cceb3035e3d9e204468ada313fc52a1e728120dec98819b37efb92caa9cb4b6b0c1d2fb2a92cd026e2de329a66f9d7cdd81afbdd0114e3db58dd0e9c0b63b941654c458440f8081fd5f4d58b88e31e8832ac76699c4560cbf0f72041a677a289f2bb45914292b42204978338650bd39f5cf67a923f973992c57387ba09b8ec283fc5df35587ae463b4e419333f495fad1fa0477ba72214414af24791aefb04c343fdf968a42d6d68b823c50b71ff58fc3e69fedf8bae672518010f1715ed5335eaef45224f6319064980254a9c7ca2034cb4a5c8666a1d6f4b4f2a8d7e86677f2daa9e328394220d028a0e773924e455489cb68b8163281d432a4fd55deab7b969ffdf6a7aba72630cf35500fbebad5f227fe13382ff1ea3ca1606561b3f1f19917ba3c97281bc19c765ef035c6f68e9e6c0aae83bebb359931378628b54870c2a4efe94aad2ef251a63fe483f98cc4e5895f4b7fb5b4e08a8c4db7a0b379df3cb5b72c013779a1b80a258e8467a81f6412124878e30f2060b0cd90063a43c5a726118ff47654c1cc206f169a6b0c2838889b7a4ae9d9a99d8c0836fc0cf514411a7db69838ee94a51812fd7e8e535e6d44b36063220e662a2836a7f4d0416feb4cf11680006593d7a26f30dde4d789506a8c6db942721b13cfd6815e06cd8056756b7529de40f5bbcf3457970ae13aee4ae9f8987e0e9c89580ab72c9035eefb2aaed8aa05ccb1fd570ad5d918b4cc170847e58699f1f794d717e950da82d5f605940715b0cd309ebf59ead41c4790de59c0a6f041d32b6950471acd98e135eb50830149ce85208c1ccbf685679b9ee7cc86857ab20ab0ed1de41bba2980f34d2a30bf600040d2e1f5fab11e155ea07f31bdf4ca85bf544e20565db96566f9a75b2a1638598c312eb37e9d5f647db19f450c78cde48cefb62255b92d81767d7ec18df447fd2841cc94a727516e2ca7b042ccd40bd48f6e0d5084d53e0b4463e8bd422a9c5f0bf5399f4d315abb2531e051f92a400580acef2114b7841afd960d556d8a834915101766f3c12cf05a85b12bdd4a169bbc1efcdad7d8c1b31259844fc821dd43e17436e8b58dfe93bc784ae2a6bc001a4bf9d14522bff8582786e8857b633f37308590e530104d103771d65fa2294a8af8efa20d3a9a6fba8d40d4e5d0b076bc2e83d479db8f53e90d34f2a10038511dfe4f05a96c467940876e6a0ad228f34a09a52a7924e8a27ad3dd3659e35ec98f574a3145b22e75b186edb976b09fb76f59a6ddf8e0d21baee559432075fe5d37e35dc76c15f8c1fc0bdd22bf545f1310e53002abb3a4b9d505830fa4440b2ecaefb1ba45e0485d3ecea75756847e3576dad5bb07d01201561ac632daca1c054d86aa855723eb5812b2a90ae9791857b410b08cd41bb4c5dc4c45e87953f8cbb3157b198194f481a34da8714ae393976a1044d6d0c96476fa22873eecede4c25a1f3a03dc3cf7b5f706eead4b356aaef920c54f180408d16a91569e298214de43d2e109410ed77535b4b43a15cfd66ea677d39172b2b6744c61f0f34244ea1e97b3549b0c70a46aefa2d6c8a23af905fd36c6a3fbde97c93f4dbaccb815596f5102df00432513417fc2c25f27133d575af1d3dfd62c9ae0a5cf5b9e2f4a08f6329d59e66cbc75ba7ef527830f386bcba63724d75c443e25837f8965b3d550106d5cd2d11f14f29850ecfc12a7eebc91bdfdb46c79751a457f3760122c3548eddb6752de642f9d13b9eabea21f786285121cf579632df26e174e116c0320ca04e1f31d2e8ffcdabe4049729e56f6052e18f9b154257781eca51caa218c9aae9ea37de8dcf2a60471325f62e297d85afd7b58558d8b12f1d055bc37996f9ff51d9ed4dafef44ce113b8f5fe67531e3b3e1f9b245aa58c07300d873c3f32801554a06ac5f53fe1d4f6ea0b6958a6de9ad13c9ba4b3b48ad89e62f1ec52137b2c6ef4f7ed70a014ed5f13a75d36bede83fe88318459607bad0cc47cfc3856ee8cccf9d3dbc1fe49c205437c31670680c9657374903eeca97ebf3a9790dddc9d6ca9cc447252c6892be9d5b5bc3d7f11a05076fee6026f765740c298856db52a76dc74542b98c1b5066d6b46622021fe65ad2550a49f71a5ac12caad72dfaeb8ef8dbcabb2db3c75703e15aa2f1f9ffbaa416933340bfa79af98fb7478ccb9f4e33f0cb8bcaa4fe4a4a971a29455ee23c14f50509141e067949bd6aefaca8bec249bec0fd0b0505909c5f970986b4e8d5677298174d9c86141d4328a634a8d323650dceb291aed57487b54bd0becf62f52ca4f9046877e788f230dbd5c1e95e2b73652c98e0b540a54851e585639024f7aba1040a6cc726f9f70e7138c8daec1181e0654bbf4fadccffddf56ac648c8f513a496ff0a3d0945163dd015ab20e82d7a847b22bb2808b079ca87da0a56806e39f7a3a83c1cb1c0bf050675956bcc416ad59c13cc5805dfc0e2ca670c70d57f8ff90e6e213780d55e3836fe73a418a2f7ed7fc305c269e338d19b56dd62e6d5bbffc25d51b8277ba3db9d5543b00e26c93d855982508aecd3614281695ab44b9190176f289d2266ff34bee1651fe0f3fa08429dbb2f906944ca02e1d150c677ee921bb608c662f135f56034121a8e74a516068d86d0ed4bd008561a8434d68866a607ea2d78939dc131819e835ce13fcb678c873535d286b780bb44663afb963b2174ca6ee7cea6cb7609e1c1a1b127ed66ca75e7a4106af8efd37628dfe016a6fc953350e3aae1b1d68e2971b15dd2ffa7faa1548b6a04ea36a6b56c96a43a0c87575c64c30729dc55c98f6eb776ab89864e69e91b0345e9cd6b0bde0960201d732258190688fd811a7689f80c32920f5c4f0d9796ef74cc379c9c21e443668232795a16dc30754f0247c2a4fa1d5c89ee2a279600fa739784f9ad349f131bca26e7835ebfade5403d2f9c9e9c32c050b9093d04295b9b9a7bd8a84c728286e445fbcf5a65bf81b5f7b2428dca65e369e6104d97e8c5907ec68650a54e892fccc1adf862500133ee40839d86567ed55760dd394b20bb6ba52d72578196a8a7fdd17fee723eff79abd4af71b1bfcbc50a2997bd682d95b619be20b1be32aa7464f0e7bb6022d3cb552d554bca802cbd2e199b40f74373b47eb8ef2b8c0a79c602e6c07b06bb4981594752530e461d2bbbc925d1ec3081bf7e98dae38253e96887a1aa332d081ecf919bf2aa3e16086e5f9d0bf2ec8f2ccc5ac7ae83f826e4d4794b21fa227af1575f9f29f9befbfb53d83d2e54b497429ea2f987e4168b4925c210d5bf21210c468625b82b7cf0d0cbf6e6ab25afbd084b485f070e1df9b8ea000a5d4049f0a41cbd682c62c83d3f3706bce5d5ac488e368d88b2cd28eab93882fdab012042f044030649a8ca9f0c37638238b72e14c1486b1a7d7d36abfa8ee544cdc471c603f4d8884cf70f9e7d6d90dcade8faa513bf8cb68652630a68d0ee455d003b8f2ec2c45bd8b64eeab9742a68327c9dd2bf5667ac65063570aa44cf6357021cb6646cbcccb6921241e39e93f49041804e385c5ffc10d7451648d53340beab263133d5cd9542580a6e4cb000c16c87c801a81b93455a9f3ba6435b04fd4dab5273b8a3e976688094c9e7b194ecae01b916087ed3f98dc338512e4d29236bac04342acb4312380fd6cc77d1db689be67b84417ab0d3b34f6e11f923ec90b2d53a7cdd0ddf0f7e207a524081b9e34b9c98b30d5bd01385014c732369c27033a92317b7ae8bd74b45549b1c3fd3043d22f79d7756258fd4195b164eafda83a3ae1a056c15051e79d77286483c977cbd135faf7a98ec10eddc50e026e1b2d1c9bf0b53a8b1598796b104529d6e02d4e9e2e45db72b134100ce954562a2a7c9f79e6bda636991fa75bb85cc8fd95bb3d0e91bcf2a98b5b44ee1d5ea0d919bef3d45074bb9683114750404899300f5dab84ede973d381a74915f3a9e97a70128a79c2d164a98eebc23bde127487edb2c75c1288646dff6e5ce7d07ce784409770cee6fd811159b551262ad82fe933268880ac419784f094df91dfc19ca9628a2095350f0e00ae5e9e6fe5315cbc3719e4ce7f84fd6dc53baa14580eecac5151838fb3a18a3d8c8fc752f96f304c1faa289fb2987cf917aef8aebfa29169130e2da063d16d62c345bfec27bade70e4725cde8b8ff9fd98aef9a832f3193fdeef544dc3b51c470b69def6a00df26dd6dfb722d651d915c7cc89f4e7e88290593d3656f0cc37595205c6f12dd64e3c7cc85e4334a9ad955e57a21ae5944c26dba67d3a65628ca313449f61a83de990fe140fa6b1c977e81ab3069628303f8e82d919848373d4351879c4261f7d1550504715d22f9da0a155c3b7d9cedbf1aebefef042129baec8561294e6d787b070e2237a15b8cc30eae4bf5c8d9b4deac03522b7d645687554f5b37dc8a0b47c638a0af90a2ebe81e7d6312c2267c820d09f2244abf23b20427b6b2277a4f749c9cbee5e26a95a908a8a9b4ce67d612882bd29f23a022a373de209c940b27104b319be944b5ad21167949612198d68fbd129cee81b3675e2e65394fd0ae1cd887a12639f899dd94f8dbc0a9e385ae77289a4428c9ee3af72e6afe1e873f2863ccca4f3444262527df499099f19cf34d8a58c5afdf08544c6f6ff03ce9f751fe58c13fc83f5382e8575f7a33e80ecb866e6d69562fda507fac2bcbf7e53a757c4ac8e46754b3f3c6a40dff3bbc441d271d52601eda085d5d33b3cf1d7430c470ca99cea12c6c2147dcc82b9b24f5455eea1ff76ecaca12e93b7fc1d931e85fd3f4b7cb4cdc798c401966ba20a7e1c3a437fe2b2325d5558f19951f09cc8e77c7a4db9c0d11fb6dec48913ce2ed33ff5929526861a047597e6fbbb75eafead6032501eb7c1ecb6f6d4c60638c358f94a034eeb41e6b371493a801d3293fa06f2e702ec7a67df56d0bcea0915e97f8cc99379b2930d3fb008def99c29afe114d942bf6208fdba6f654539b1e6265ca6a4d096802e385d94da393ee0c041526039c52b67c1fdbd058fc1220352470141ba4900c304188e850585d968eaaeff613d673eb65b1d3fa6dc41e3ec2d6d9e5fc61ac2963b02d086535625613c993999e092a4445104650fa733c071fde8367cd50779f003d659f286abb9570e03fd2b1561f015f550815afa7024d7ecbba6ac62d48cef6d5e83b346e3c0881f1ba81acb4899c2fcbc6f1eef5eaf4ef429bb796ad8e03a81051381cf342a5c7e4c7ca4ab35d2a36af4d17f1495b1a940c383476d0cbab79e1b66f209e703ad63c512ad294604cd041e954f273de7e26ea7247390b01fcad14ad0a002c4e40a3ff25abdb6ba4037998c5099469408c8035d4400a561ff83bc7fc2d1672e1393f36722481db26c4b3b548d1d0e5dbd66375343502ccd5f8a1e5c0ba5e98613803b5d33941576e07b20a944e250535134029ae9e4d7f8956ef0340a05ce696babda9309f9b72416856ae58ebffd3d1cf186aee1776ddeb1e74859a7f348cdce7576f111191e7a8ff422e5c420482db07d4fb02e2831003478e1337753e31bc3efeb36ee013469460a4b4409ca203f23675a4824b45438fd8f8444f0363d8aa9c1198bdcb7794659fff7930d246ce15eae0bd5f478599b9f8cf6379551e1bbdff7ae920de4c665fc41fedad0bbb6c9f20baa6bec56b2aaea4eb7608b845a0e44f464ca238a3ee3be217db9bdd33e66232b238330e1ffc4bc0842b35ab1bbb2918ff631e2c6c3bf95cd49f3bb729e65c95cbca007b324801cf9ca5c9180201be8b295b67e26f6157a6d46208679812bf20758aaf99514fbfcad69078702ba03c3f36a5371f15069e7b306798116dfa4098a80d219db8af08b91eec8090588f3e5fcca84146fbdb01e2cf5aab5b68575fef05d011dfe9e617038670b63b480dfc5ecc22c1aef8543faea841f363bb2e1bfd66b3015481d103d34a49123a6e3c7ed93cf484aeceb65261ceffe5d4dda24e456a645bc4eabc473e091517707245d425d9611e37c44d25eb35ba6f51aa255927c27e940e683c23c4ad6c97ab3ba3582c612138ecfb96cdb62b25fb08584c43a12fca154e4b1449b6999b2de53232e4fa089244375856eafe8d13a9b6490957d193f361a1a9b9a549a60e6a04608dfdb1a27d75655f38bee5dc5204c951397f31d9e6bc452c4bdab76e9851c73f61432fbdae947f1f6e784babe42ddd4083206f9287287a4a1d489654a4fa5654061b26dd470dd284c75856a5d6e938c293dad2dbe471e7b831cde7cc92b56b024d64366c54a9bd73cddf3a318986a9cff7df48fbaab3963622d3c7021e0a5f5020e8a4f00a5a3e0e4a9268d8662f68af5001602ab688d0d3b4deec7137729461f7a45a5e1e9db6ab2a0a0e1c5e1e843f368a172371de066eae09e823faee866f5cb0eeb0db85acb93e5f2e68c6e0db7a1c18292b50df58fda11840e3b34c415177c88eb798afd108c391de37e0c94c954c09192822538ee29b59e2dd92999f70d688e0c75e675b736eb8c23ed3e44484b6563d0f44e725f37e8cf87be9f32c3ecad84728abb566d1bc33ef3faaa58ac4fbee297bf4fab7ad17531962b86bb74871ea2485f565a758bdc86e058f3475bae9e8ff2e0189bd3fb53391dc3738a540c01dc25e5e6c6f43b8e9ce50289d5fa98bc55bbee195a5671b19f0ff6161c24fba708b12328f6e051672cfd6b1e7a695a7057015e5ec484f6f53d91bb111d637afa08c80ca640de1492d3cfa34a4926e03f9b643f73f6a9ad35e738f02de195e1f7048be5ea05d5f8ff05ad193c35089372610b50bff797270284555a322563e1394ae29204173db8e07558af3e5cd9506802e8ac7dbadc253edc561463cab2389bac529ce44dcdec61840d79a7972af159a70d3b782a9617c1403738dfc03422e7ca9f49c797b8735a2c51bf05fcf722f4d707713022d093a6609f5f0af926172444dd65def41d58106ffc595ad59200271062c3d30360b14704cd42b06bd57013873d03877008793ca044227a689460b9e64842010115664e701229775d66216851bdbefcb5eb9bef48d6340ef40ba08592dc9a6d6ac1434954bbaa60f3071da45bb5ff5dbd9c3339675f4dfa6af60b097a9714e15ab07c989a49793e4606f9d95ab55fd182802f3520e765e5db0dd3c45cf12933b8650030b06e61129192a61586e080474a12cdfcbff49ae5d254a8e9f3f94d047fa8df461f3bed011842f3303ad5b5dd74d18ad8938a7d82b22314cc6227cba6b54344508eb32cb630c47f6130cdfd568f13cd5329b2cbdbdf6224c117787362381353d934bfb686c811c9f6474f8f0e9bb7372d44ee4b3c4cc75ef12f028586ea8f567c79526ace20a5a095ec697a492073ae779845e72db1561854efb8addaa8c00e51701f441f28d0c7679aa5f64bbfc973973f5175230f14e8217b38dcca7a868224143e3e1403b055c4c85da00e79a97926daf410050b5d6c443944256bb81ff84aafd9a1410381bcd1a0cfae58c9adac0183834247349dbcdbbded701f6552af10ededf69db9107cc9832d65752ea5acff39d1e698a388103e52ef1801b70dd6df33dfb1a42bd64aac0f6ef9514adde05b327f23a00191a701730338d7aef5cbfe21f5a13b2b7613c1d91b093d007099229998d81db6dbe78d6cb6ef40cdf6c9a930d36b187f3565b693f46ab11e55049f4446a85424ca5cfbeaa95b3910a19db9a8c430709d70e004f47d2989459d10f49374d4b3a542626f2fa93ba9d10fadd582e8841580539fb5d9f31397cd9f995cb07887e7edb925be02181cd6a457f164d8248fd64424005dab4b6109f05ee89b8bda97513e53df8bddac33a9a568346bbed2083a7913e1b636147af6e1f33d0ba28a6bcb7e882962b43e7155edb600fcacd85517f9e3ced5dd33814538e06d1a00dec227e60881064fb43377e92203b1982f176eb282a93461c1c8d1152f07bb2b667603a9efe146257c32d911d1e10ad44b8046fef2be49653352c7badbccc314a45ca5fb0d5bfad19e75f7118cfbabf8cd0ac9b63165698585044f843e6841332f1fd63fc76905914115d495914b32cd74e2e813530890d7412b6b599435a8ffbf18c9501ca4965da68e32316b4af5d7678fc1f900fd0c9481a94603b0cee6e800e561b13b099f3539dd724d7d7db06675ff4904530eae2a179263dd373380f46ec9f05e23bc4b42a6aeefe0c66fee1fdbe1f4f9a210b8b429be22bbd65edea1acfb8a7e28f9010f66f84ef141352d417366f38ea1033a2bd66fff31af56c55a0e918219ff464c2e439e7e38e216730b4404e324d348bd3e07a2f8707a9e834e8ff272b224a66f9cb44642d4476e541882e132f78473061698b76d817619f006d96fe3068439aeb6e0b1eb59f736a74d76ee389d54d303b5363924f752b28bd75b113ae650c766abd33d6ba09554f6840b2d5acf110e93a11b719ac9f8ea679f945110ef23b94b36ca56ace6a9b82c1724154283c67dd26f99804548203fc00b2f940b310d86590c8e3bb8c117820d7d62fbff2636d843dfd6c556076dd53d0f9d0aee78b65ced5daa393bbf8be4f2fdc79eb5e0b28b06173c8038ab69fe4393e97e1c5191bcf245538757954621b06bb6e4367255073e0ef7b07fd0c2b058dfbc5bc2fcb8daeddb2b715cd728273ff3e2fbf4bfb42035a36ebf078279c315fee9c0d8499dad79bdcf1d29773eef18c330a521b071841000532b206c86c9ec51c92393aa29fcf4dc3d7f37bd39109a32f8679fd5d52a49d19aa05e0fe1cbfcc6a6c129ae530233cffbc847b35461079542309312d043aa5396fbd3e8b2a6b2bcc5a8baaf56705515803d987c8f2ee69cb92e6b719142aec7a61b162a9f22e6213db8e11e194085a419fd0a779133f496a796c9012077ad18e0105c30b8005b46648ce4621573fe432b64299e101cd5f78b265997a526630292fa30150aac0a03aaffbe186ef65a3238d7637b81aaebca7775cf4486ead8a4c1ca0c2f17688e9fd350b417171cb84718ffba334241a565a2481543062a85cedd601bd5fb3bd1dd7378f90624338768d8f0e9fb554fd7655545ff4a15c2172d82d2567a162543a9bb9ac507fd5d84540fa75db07c996bdef5455ab361e7c2d952faf7ea95d0617768c1bf467fb38b9dffc438b2c7763450bd5a221654fd55c1bd0b3b67d27692a8e32892e39359f8d352b021f3bb47e5aebf0e378fd6a6a881cbac276a211ff62f1eb166a2b1420e50be1b9ac53fd75d485470b7fd01124ad57c5ff61ff80f396511c439ddf5db30e9ed8833e876b011aba77598bca2a4b684b2a8134230e76112ef67004a3028069937546023c0249016a459947b1342c07ad565db11a54b7e49e82b6083894e124c642220cc9795b850b2e79271224ed3a7ea088e7a90ae71e4012d756ac2cdaef2cf569428f54c185dfe85d74d96c7613bdb0e9b89f2720658edc88bf5e660dc705643a712170a4f4c532bfa1645e9fe24efcafcc4dfd461dee4e2ca0d8751ba16eccfd4bd97bab7caf8f1228af1d5df78ac35e00f702ca094c4c8a1db80fde11ae0de1b92111188720da5251b94da4b9fee32eabc05b9aa53c1c52c417fe4d95a6841261d50b5b3ead780e72ad57b0a179583ac0310cd5db9ee26f1df99dca454630630e5d733d5d0a6c01d8da601fa169e82746c2c00e7724c6f5ec41a8cba1f2702bab20c6a4e144960ff369607ff3c7a71897a4be844f8ed376a5f748ea59b33841c7eba4dfa8f6204cdf3e24e525aaf1a343e2e1ef152478afad1fea455399100cb4fe2ebaa1356580226f194b6b75c2e7fef12c2ad1918d3423148db5de013be86eba2a384ec76ffdf5981d1ce4646b4af73db6a7e6bbbc7a21363eb5f21f58fd9d78fb97d8a29076757337aeac13eb8f8aa7023990703aa9cc34046d86e0a28e9be889f2f4746292c2df2f0b3577a14ef2d7d99639c03ad5009b24d2fb76352824f807523ad5505339376208825c6cd7149ddb42479d7fd2eb2caf82e58487c641a8789252319a849a43667ad08e50a6f9e7ec64c57430f00d3397a182580f042dfc731921453cee925a609bec6badc37a20c44800bacd4dda645f4bf0296650ad4a06276d072aeefede371661a768df7c3ae9d6a0221c204f9dc387914f88e4b51a2ecd2586423719516199b1ca1221d6375f068fa4465c61b86e86dccf2433acdee06dc7742fde15b5653ad476bffacd3120a2c06fd8161e84844b50aa8ef9f560995823e36f6fb44d4f2efde21d34ca78f9d26c98efd15e40dca6f26ddc55fc3ec96bd7dd3fe58aae18cf8213c02d9426925f823c6c30f53c5e08b3f8ae02f52328d85c5a02f0d90c499ab8dad34d7ea4dc9db8a61946f8fc92afb5080a0c11b6740e355c5d94ec0a632d60a5327820aaa652e48b6e11602f861697702f946fc3c959c6737956a0e2623acf1dda367fc5412f1521ceb1087856bdbfead467f1ce51d5f48db29cfb93401d98c9a636ee0370c696556e5e1f3c03af33307d078e21f7222bac3b02b4bd710efda1bb86f2ceb7b2cd70897342804335b55964c3270c63b5d9ce1c9c5e29471d35db713536edc3def2c9da20f56daaac6a9b852626c4979eea0ceb44d53471daa57e2dfdd5b51136b57ffd2605668ae4fbb2f24dc70c31df48286979deb2170260c1fa3672ae4489aa96ceb04c3e9e934329edf2d121887c0cc962540b9262124bfdf168319b2e88e15fc4c7b9babd1b73889bd06be8347fbc22dbad113d11fd2512ff97571affe2292628915088b98c09ca3ca939af1182057853cbc84b70338e7e4b1518ae8e0860de04df869a6c575d1cbbff4a74952fb4dd4f09454357ad1cbb56bc8896e51b3ed428528043d2f454c1b020492206251b6ebca27f9859648eff91cde633b9a405537acacbbbda774b2124a0545eea80b9317d210f986b89613e19eafc68bb7593160d95068c38f2ae2bd7836d9426b3a5735105667c45d31227a9fe93eeaad689743eb46351103b75517fbf6127eaa7b488446495e30010e362ced2a6752da789b995c4584c7d944b4e5ceb9935e6b850ac49d99e5e29eb8f059666eeaab65d7517ea5a7f9fe1c9ea3d2546ede36f3e4e0f7900d3950d3077f73a87a64817ca8fa889db958ff1ac59e4d17950092f577fbde2bbce4d47fec65c773a6ce8b9da293a47231e8c24f6f0ca83a010feb67d3bd3f7c014e70d5f4f6541ac5cb2d92fb72dbd866884026621ebaf5b5ff44aba0bf98a0d42b16f24dcd3a2d5521515f74eca2e0ca293d26dfda9018021cf5a153d4330d7306f36b1d211a2a23eb2c14f789c8511fce5e220c51ff288d004a76f93390fb3085c537a7c619d1cd7e0c9947e589ee6fddd8c13ab4bd05d21e757aaa4c59e39790d0d7a402c232a43ca452e9b030368bf35dbacb1a50602819509b5d82b4170e42f1c38b395b7ce86a2b4c6e9f9bb0bf09bc9f4812aebdbfd318d6fcffd110e7544629d6aa3412b8cd2c3e98440a3c02589a2372e680426cb1c7ec1412644320f1462f628f2d3c5318c51351f251b85e660b6e183aeb93bf830e0254f510e0452131330894e8b3fa4756fe736bf261fc97b886959299b46c9a6e37d2a9f3e98bc89188648cafc3eae8823e11b0317bdc66e3123b0fe480b3c16db4b6d07782b3bbe47910f3ff67ede95b1c569f13bf8d2428914f316e4c278428e6005a11defebb109dce29abfdd675bab8ba962c74bc9a7df98fc19d023c0d7999074c4d08c5cb639a2e9a5809acfdfed4014f155da516b8de614bdf4a97efc626ddbe3346b30ec67c5bbaa55491e0c97ebe6f079049a9401574300bd61b9b95875a57fd2f614ba039ab0cf2b33defc6dafca5fac152e3d4866c6563f9e5075fa0e9fc8bfda59421d05e6a9e7472da4c2e969a9e2acbbed7dc9c0a22936a47fc5ce44cb8ee5a21c6fc9c81c8fe55a0e312fd24b09478abd7ce5c79bdd38ac50233b0495cb12504512e3c2129146af534ea1451916f3ca1ecda2d91a2868d677ff747e35fc127b88549ab7aec446932515e0b0f28a36b909ee63491c09152b1ea109143e367bfa0d36d9f79bcf35890998c2dd2fe80d9992f80b561b68a59da98bb1badb379dbd2c1f500d5522c4a60998fde3d052b97bf145c7d5728606d27502e63ae41242f87b1debbc27784bc4b0887fc61e03d1a3f24664567421e1d12485fdf12c267d7ad1151ed852157fdaa746b0bb22c077513a43bb02b1a4d36ab47be588ccf5dd663b428d6d5dfc511abd5a80147625d76a889696fed44c03d243afed92585fa5a05412bbb363a8d3155ca277ed4f55110d75c515d53e57d2f3bd8407828a6adbaf0369430a34184847f211e388904872c3babf891edf60c029da2c58a82e61ce10513eed9415993c166542a532b823bde3559a57369cc631950fbe147aa984dd4c405b1686b5777f5e2ce590fbcd08c3505a71207039e947a8acd63edfc21c026f8a31ff067bb26998f80625291b0dcfe3908ddc0b74f63679f81372c631f6eef64d7246db64d824ba7cce27821b17913c8bc75ddbddc88c2156f7da0b6ae542f2c62399d533ba2488bbbe11b4a87dfe000601dd9b64c006fcb918ce7cf4de95474b1408e7a3a942b006819b293610637e0df9dc30b0a366ea044a39143b2380ca5d5b8c198f4b0cb18e9a7898925b378cfe67e778ec4ee1b66cb0ca5e6ca0c836d6494cb8b6c01eed649bbfbbf7ab8af76efef863b508549b5d8818b7407af468c2135004d725ef6f6106f9f6f46f01531011290cb5906577a82caab45beee75ca52014a3f46ecb4deec968d958d678162de8363c86cfbf779914b16353d42cbc38617c9f9e222b9243a1126494a3aa93986350fcd9ab984b172dab5deb808f027843a76b87c015296f7c34430c2212cc7af5d97007b5f25ee23a85d0c854cc26711ac4f7a99006a42a7ddd8754d47361a31597d26ce8aebeb9744851766f57ac180e653bce1d17a50a14756179c4b54a593c79ca9ac200066fa04b9d98a208312c0534f0f0fb4648fda0c801375972a5ada122895be724e1c564269005374a79344983f29e4e682e778eddc97b549c548f9a47b95efaf3fd486413fcf01f97176055a12cd2d0805c5a31e5ced5748a7a49702a321bfd3a31e24fe40e9b944e2a682551fa485acb86d5d1f4dc3f584d2de6fdca06cfebb09c8e1c7cf698fa03b05e02dbab235723d1fd6347a6a0ad0e904d384b883f9c5b64090856c21c09b7fa691218d162a397c488ab9ffcc208c50b8f99e8bd05f31e95f4f42e37fe7b3802a100c163c9713f0d182120d38ddf706c40b9f8bc6b1adbb6da7ea0220d3e9dd8ec158ab6a8edcfba4f327e32d4c24a7ecb8b4a7e3a00fc23ee65ba933e0800fdd772b01e7f93ccec1ca9e87013e819092c36a6da8a280fd5b79fe8063a08cb147f6d64f9303d9c9b63d7504eb88611ebd0325811a4274eea10106f14c6b47f70a91b6a3c9682ed1f20cae4585a1ae10e207cf1b2312aa29b35a03f8dda682f36dc05f7e4da15bc8dd23bf5f3682e629bc822328b47258c8325eb8dea6a0647fe9347423836b8cd0c53353d860b06102043acbefbf75daca951ce16ae9c4fb7da6963715ac8403803e8b3ff7ff424ce1f580ddd6b28511dd281bd4fc31fd1581f5102730f2376233b0a8523ff031118ad9bc9e5a3fdcf8de3e8133fac31e13fa4ac56e047ee35239f5b61457e5261f0149198c73f870b68934c54facffc085435d8179f47a5fa9da88fcc29651437530e1ed359b7a2e027515072a221977ec5ee3a1310f49ad51ca140ab1a052c0da83fde4b39cd5ad543f2a283cd175c5ec88d5912767b487ed1e22be8d4bee9cc8825d88c53a93ef093721818516937b28b4c6f6d25307294f3a989bc67d7b8c42824b0cd7af7e3264adfbd8b19dc3c457c92851320c291adff54304579a2fb96e1c8f8a0da518c8e946775be37e8d17304355b62a1e96f8fb3e6e67283b37462c6122bc0638fed1d5bb72831b52dfc1e9ef2b26cec8449abdf0daa412d690cbabc4d99ef7a1db3f370f2c0214665c2652f3a8c0281b2254ebb992c7bf0242fdddb30e847b032b966f892e1d0b48d4c1e155853235b0927f0e2317077582ec5a4d147fb78ea968c1a07b801d6dd2f15f2f132c22cbcaaf4935bedfebe71159f811655aaf60afd87ae0daa52fe79482b5b1b234937148819a538c3e9e048753c97e39fcad55284b5cb9828f1e8ee590f3b6bb2bc1ed0c9fc9b168bd886c34d95a15d0f1efccc3e0677873742806f4da4ee960bd8342ca368efcd4dbd45d52d8d273785501a33f4f3e0c121bddf2d3ba8c3f1f46c1ea1f5906f665924e036e37464163c21dfd25be9a73bbf2223f1f1d44860d9541f43f2ad7efd847087525d891f5d0a07b2a2b878112f337462539321ff7a4beb10ca59b95997eb0adef34adc25574b2ee63d4c3000aae6a6b7120c50bb55e7af6eacd87a770661d6a23c0a6d00ff7a8199c0e78e5d09c9b5d09d9be11f6d35c94d307be5c7affdfb8567c8f8dcc96b5d512d6c11dccac4eba55aa19f7229b3a710829acc4b205f06c571e9a2c9fef54d003bab068eb5aac51c5063ae9164e07727a788d9a169bcdbfb56fb7f3448364d618a893a9f0d5e11307bfc328ca931da2e88a74c2bc13d25e961d1a12d238880e6ebf7e23e3a9fd857e73d650f24f1941780e84c351843eefe1c80c6a5ead7df69367f6eebd4138ee36ceabd923e68581361221b816b88b12d35344f4a865d0851d173bb850d6bcf0886eb894feb84ad1cb618811e9926ac78cb6f9bdfafdedf8abb9adaded619fe518842285bf6b43269b4a075d85eae243182be53913da4e9a75c267a58718c34602d83eeef1f9a9b1b31d67aed9d34afbeb6cf45060be0b9bc4542d9389a7c4f4782d5eba01df99a094fb18aec72b7397122fff300b323baeacbc08a7a1748ce44e63ab92511383932ca66ac5125505e05d5be80b635397d3f254060462c398d7a8dec974e78229f5ef4765f3d4e3c11766eac61efdecf318e9990c3418f4a47d17f34995b03290f67f3e610286be5a1e316f3083f8a2b0dfdda83d3adda2ee6ebb39254f83d897c3152e706e1db764dc44a69d97ad57469dca40015bcb08959dcd04dc2fc3940a93f5f6e0bb93373c167b7414e3d90342d64e25594a262f0ecca95e7884bef5e650bf10dfe7ca6bdeca93b53bb6365cdd8d8c58b417af180a9acab728d89893b390abf505c53a39ddef3700d63b6d9831d503d56ec08918fe732c0361b2bb5b7c96417b138845efabce471a963e5823d6291f96fce75dfca8db5b9203286832f712c85d46355744c2d3b0d6215639f4f6fbaf34775bb7e8bd33bd46f2399a1585d6956b35dc3348e1b98e77b47428ce2483fb2b695894e1f17aa83e11733756fe14c38c637790b2351d2d8d852170a1346cd1863180ddf565f4f5454d3d24d5eba549057598bdc3bbb81679331c29873b73f36b875df0e2a25906a61b0d4940fdd3b480cd988512b8e7a15ca5dc26fa57018aaf62546155f2ced8e7d61c2ca570b4222b65b6a22ad6e76f3b3b1d1cdbe460ed05ddab88186d481b67fc6914bcff25ef426197931f59f56ea3c847bc66807388442e5b31114f14069c9e022e053da5ad25ef60d3be792715457552b491f59be6abd53e098c099129c43719ff489f342eb7305796969173901638354787b73ff620195ffeeb81cf8fbc2b42346ea100b67e944c6dfa1b14888d18197541a18f432ca24442cc50f5d1db343bf1f126e062656d6c37df6de52226579fbcde35f422225e88a5b29a7d922b6a891d009e63b64d3285d2c3ee7c79f0936b2c804faf60f2c687cda0d61499a2df4e5ad963f31b03d94de9a651279da3f89304a2b3a5c4628a584fd2a52bd030b8ec7b2ce682968ee0d342267e4a0dd9ed455d020b7ae5cde158c6d8a2fe0282bb494f76a0924b7bd4d81bfb9d1179a5f9081cd17c7755c9494eebfb6c2dc54f78ff8b515b95db39ef2e7d3fdb25ea2c443de88588dcdecc0828f9446ca8dfc8bfc8f4cce357101d186e14c7867d74a5fc92ce3febe6decb4e2800d6e03a58d11de727c2ed0618408cedff5e8ccdedf44fefd6aeeb3eccea31140c75ac5674c1dc1e82a61ce036610109099642a892c6100bf2d32debccfc4077d76d9cfe32edbf4417cd57467f67f31ba3023a0143d4f915c63ef4c14e5d81d27b2ba54777529c24c93af6f0c2ee81b6e6b8c92c4160e1fd7c7a6ee6314105ae74c14163e60f8d0b858867c204d0de358d5a78b5c88341bee12c37024253162ddf4667acbf0c90bc16dcb8c42b4516c9908a73c8e5f5dfab549acf223933685de8e4b2be42b93476b554f991221e57f8a0b9424b207bf90c923594b36150d838f008d74778b535aee25c2555591f601f2440f716dc7833443ae0dc8de5c9dbf090211f7c66f66825977fc2660eb99cca1c69e97cc8c717cbcaf5e7d3c1727978f63d50298ae3998f00bc76c1b8d630471f994a2bfaa31ce37da775324f6fe3d0cc586bcdee921fb59f4b3041553577d0b5fc83f961bb37712864f9cfc29e2fe9f78d3bbde0a4819c6ef2aa01d19b174936f56111662a6b4c181227b58a3d07ed80d9cbec8984b0c1fa3cb2d3ecab348e96b7dd34e3f6ca3efc695fb5ab09661014c1b9c22bc55e72703b47232ba5f9611d57f8396f751811b67aefedfc5402efd6ae3c3e956f2e5acdc62e51a63a24098856c079c26ca79356bb77feeb8c7040583ddd91fe852168dc54b904cbdd30f90338af8ec062dd9753b51cf735ff67a6f70d8196d9698fca51f0b7231c1dad20116e09ed3d59e3dc38fb4105c0a02e9c3e8597ac6491bc08419e4b0726e8a171ff0c37b9198897f7f9649bb040bce5ae9efe9160b1c92e36b8c12200c063691c0eaf1da3bb46ecfe0efb673f5aff03a6fe297bdb1a273bea5420a1f3ec74babdbdaf83f7fb0c0b558bab30139e5283bbbf9cb276f6f35ebe90a62ab1fe126b28aab48c550ccb4157cf0103ce4132435b9babdfcbf69ff755917b39112b5686318b90b5f2fe7bc675eae2f8bbb46dfbcb69e574ffa4162353e3d401068e5db0711d956201e08691cfa4bbde1b225073c8ada3ba9b9970f880b33ade95c57b6f57f192a7a7a3aa2d3a88af3d4b5baa35b2e47b19c10686a3a24806012554318596ca27210c8165a4469fd6e2a6adf8cd6efe7ab60902efecaf5074878624eea20d737a725bd1eeeaab138193e1c6917bc6a5460f1401a409cb1f4b01e2efcb15ea3b0757bce7f7221eb309d019793439101b8eefafff4c31fed9c4a8448c2c9e86e46dea305c123fc274d2a246164851423b42bbf528119ab15c02bfb470bb801a84bc42d3c81b614d8a438a30e0f693685f705545383457a74b400e6008d24d385fbe493c2ba7f883372184224e6d7f366f20080c0f14bc51db3b9ae30c50b22b86cc5d43e737976ce50a1bbb30cad4828ede750195d96e8a7ce104e42e496dae7d015d55d681962211d8cc8d327a5b49e015e22af12c14d56c231e4026779947a6d426521f7cd1d48de2172520a1685188d40c3db825e8d491dd6e6091eb2bcd328a512a48dccc9a648482a4363229faeb2fb4d27425dea822eb52a4744b4d6caa904fc30ab24f48dbf6cc80d56653b35cf546ec6cd9d39eb2d7afc5dbd819b20f4619ac7bd5a4febfdb9b8fcd842eb40e0b4905593a6969ccd411f098f8bcf8d92660dab1b3b575849532b93a6572054f05ea5b7de6eaa37af83e3561862e55779ac1c6dd0c48309f75838444b1d88e4cdfdf11abc3069eda7dc9c2bf0bf7ea1671b4b667594f7a72b1f193ff3bcc78c26479b694a3bb69c32065c06037851052eb692181b1d068db7c7873948743af0e593c20f350827426b9af51c60ede5590931202a5332c0f3c8deca1d77ca2b038cbd6f45d5ea8c6183e3171c98ebb14aad5f0369ae727d2a264bf1bfb12729d9e470116f844b45b5d822cf10ae753abdaa092a25482933883ad6d0d57521a702acb797fb2e2e8b659911e75221b29e1e894eb017c2a7316a5141dc55a8c519e7aaf46785dff4247d1314c42f4a7d66f72ac12ea52e31623f4a38fac754fca9d8ef120b77207a2239d5d42269b3c9986d9698ceda90bfa50ddba34ea0a3f943118ef00bce3d96b86ea8f22547cdbced993d815d52f269033d411d127beff05fecc9e37d145339010b287b6620abaeadf2d0923b87fb5ea0ad147257657dee2b2e26cfc5a1766da5df6d926e2b7eb3b421dbc75c98788b832f3affed5da9a5964cb24287f076c30842ac1e840a207a6fe17e7e1a5347b37b6af26b6a6797f3327c2a2235e193bdf9604875a314102c3db448664ca9fa63c7141a6140a2d07d9f1023bdbc1ea219404f5503ef597a0ebfed160cd9b5facf281b715231412e2ecbf1b62725af966460096cec1c24550d77f11e08f3a242cda0d6ea1b82fbe6b8ba71ce5159c7b7ca5c82f70bed403dc332659dd2c970f795514b563861d8a787febdb26c1de19bae808164a9e27004e69ad598f8b1a17c35db6dd6437cb6d4645c8505eeca79862d7c5507047447615180001b974446de8cd7a59c0531579d391f693e286c9f572b92f38992083a9d24dc03dd050a7808eb66ea841ec9240aacca39bf2c6333fb7ebb48e4139c10deb7a32e2b1155f57928b8a804606cc0a599f3e4ce445947820ecf6c935cf7355879c745f444e7a2f9f97940068a71f76e05eb12582a71e60ec56fe164da0a587f869b7dde410f56f914aef51724849fd726a345718a5332d932ca03bc9cc0345e3d02f131bfe4f4fff75733c2fb0aad962b9e8e0178e62d1006536531cb55104b056bb2b7746b3309b4d42498e8c69de992fea4444fa3a8da20f8d2e796e75689c0f77dbba8ca508570b9ae83ec7e5f0fee5c7ab996a478f7a512508db03b406fd74db2147d3fabf626cb3bdc91e0a1c985ca0f6150d5119279b1690aff3e5848b9757aeacf02e1167d26f40a14b8c42d2611bb1e7e64f18bdeb7b5a5f292008319722bf8fd2699bf50723eee77d695dba34f301c405c228d12ceeea2f80964e78b57a5a8b3463d96b00102765729c107bc01ea8b46fea9f2eb5f20296f3500a39270167bab24083c6b194b98b9488a43bb7b7bc28a2345a5959ddc9db0f552f2c3b52f9180d4016d7194c761690fae0363218d14a2bd68b89f47d04351773585a43e1517683692eb50716d14c9b7a402711bf2b1ef74e2d5fbbc1bcc544715f031b7d5c8ff292eaf0e1b19b4d2b7ce215301ecd067de2fcca6c965476f985848f38ac2996e558d7ff4131236de2b4659cb49bbf068868ebd6266505cbe935d730f3368b4aab1c38eb45f38d4d7dd444d80cc7eb5ee16ba530ceaf2c2071d70606ed881f8b7e5c78436abafeadf9cbb85b4c1c5a84072404d904f5b956f826d51be7835cc1bac33b4c4cb5c278a839b0526a784d65d803f664ea7955437106bac3db4321ee3bb14c17ab7bfcfdf07240112cffbe62e4bb5850e285ca28eb7153764478f46fc694ef59680ade8e21bf3cd7b7804eb2c4a6861efe32198a3df49927ab18e0d722742f11f1b423ff7347c77bc71b29a6384b88f404579b6dc545390bb318e76e9607261698f8d93fd40891fc692fcb3c86e981e7d95ed125233547aef29d350058c75310c71f07ecb6bb64411a2bb707f816e014733cf51cc7725899cb4fbe602efc1f7a8e4b02fe4211958268234a6099d88b618363f87fca50b466af0a04da81540b9fd224aaff18930f27ea8f30d7fa4b9db6269cdc1e314073e248df063587d3fdd6124e2e5b1add4bc3953cffe50243af11f93dc8782ec05b49c4a08d4db228309d5c2ad8d9a657c76591ceeacd07ed5468e7e59b6f9e933e8836d6592e9016609340e3d71baa4d9bb21d4ea2c67725bc6c27a6c7ccb54543efb5937d3cf382d700a24560e5ce37a63bbd405319d8fba300fb5cd2b110155a3c315cd0b9012239f4cd49ad1d2c68a8921408c28ee09f3f8eaa6bb85ad71611411528f04fd001250076db6b3c327345a0f5b7e135117ca4ea548766502f23f63397bff8302ce8dabeb04ea29da1f35723b7c61ade53e0ea2f9c1c57610c569ba4ec828d2de22335e184414e298719b17507bd70670b8a1eaa31a55738fba445ede83f323a62675db82a4f4d50041b4628335329292e45f42a3fd967ea5065685557cf5de0a813e9fd5fdd86225ed98e8087dab5f60e8db78251b20336f6c338b90287af05dcca719eb1106b6c63accfa882384b004161fb36f29c78823470364874a3664c95a94d052e788ac2ab289b337a4289cda06452ed5d6285fe187698beaaf5cdc36dfb6b384725f699ac43b7d110d3f555325f99680a72352073d271a1ef548d4ddcaca57e682c5c9138a904644f5b7ae26256f37004e8d66ee0d5ca04f2243094d79eaf831e4aa90d7193c1e466c4fda18c69be875e0df413b136dbe4b61055acf0babfb878b7dd6747a7c93969fe15e7fc8f778ef327bb69bdc23c5cf08f3776376465285b0e945c811c9333deefc2f72ef84bec1b27c8fafef6735cdfbdf6805bd1be1513267af3698f5278a6b310c173729606668599eeeca6895ffc8209de96aae34fc2a6bdc8f002d5d002ba9d7689ce008b2b19d27bd9a0017b08411987d31650c884549730a902ac331a991e1d220957853dc258162b15f7143b309b7326d29c23f07f0963ef37e157c3c6a1d7d92bfa7357c2d4a570914d9d4f561f6a9813f13346f9d8442849dbaeabbc258e361563276bef3fe98f029a86adccd3d4914c642d1229991d1e774d0f174ebd5d835c33d142f9d0f5c04572a484fb177fe564cad8441f5d7323e257f0c82a42d549f47ca94c0749c4c932df3f9312f1c19845191d46177ab605d5da4c71bea7f3860e45e17315e1d5ba2706bf278c973c7a36ef60ca4e4032c9bac7d99fb768f205e483dea9803fb89df5cec64aca5df6316af50428ed6f5e6770e4b7cf38fb723535b812c86df60e4710d96f41d3b6e19cee5df8e0bf85fd4d6b4eb8fa9f576775074eee7568e3e8d47600f34fe4a2c80dbe11ac0fd75839e9d2ad98ee75bf4590f23900ecbca4a2d8f13a27b5b9a21dbd15a43f1946db5c30288a6f9b292df60fea2209f0ea07dc8f45a4b82653e07f859a9c3c8bc60d5ab8bdda3586792cda512aab4e452100efcd266eecae9a70ca1de99df0fd02a533cbd4328ed8cc9635c49098b313159df787630b189d94e57a0bedea4fe1994f437a87e9793c404677ca406416e6c00f09d38706556d133cf7dc00f457fbc7d82539f18b93204e269c9fa27860b8bc8d80f7073c9d4521fc3186022b42acfa3544f8bf6ed08e1be1d95c7a44d07051cac3fa649fe67a739f48b8d89ad98ef8e37b89fdd0eb64461edd9d990c1d30c8e4f6ed153dcfa6b21d32a5c4e2c0ba3d6308a0aff96001af822df85c43b8b41ce5c773925f26d7023709c7f4721cda1f60f46d90843648293d89d4ea4871ca51df84a7b07da41fb414bad5d55241119ee5247114259d126d05a214227efaedf43b9216d5dca32110e6975af3bc2a6fffa9d538ea56698c24ab3108143d9ef26f7de79e96c04cb04328d2a9faf811f15b284137453347f7f0864ee0b0bcb2cab7a3d11623e1cbedb0986b030e978743d4bb6115df7d69dd561f3346e28c7c46eac0812cf19d0c4aa330c30b8c13e7ce2c2dbe51143ca59e4e5996e2418f46191de5eeb6c5206f2ce33ea81388c51dfb468ae1e32b0069990dce20ff335f3bb97323cc88a0536c57ff65dca74d581fb0c775355c0a8821fe69a4425bdb550b004658425d563f36c6ace182076cad625542cfafd4bdac39c72806bc876af07d06df66dfc821e21de9c0b8f0db5f29f18b02f0cddc9378f5e5d44f39a4f200892b5e1e320231d111258fa1a84b10f4bf7441db29dcdf8ebf04915caa58ccbe6db653d35c7c63bab8a1f4bd8f260ccb49f2a5ec9836308fd79cdf984a044be006f865e5fa60e2a3c77b557ee2df10599c58077eb9a41257d52f3ec995f513b763689661e32b91ab1a82b0ebbb61bc3c6e4f6d81e4ee9fadeb288f824f7fcd5ebad2699f0dfef22e40756a4e91df42e4a56e1dfd3d6b2fefd7eeb9871a6e9b01c20ea720409db628c82bc7c1d44af52a10727c419867b6a4bd841783a3370079cd57a49136acf4cb82b5e97d7065971e4a5572fa799944b2f8d2ab6a43bf94712b9508740acf970e20cc7de33a59278dd44ec75ae54341fcb4933c39ae653377b9ea27e84a8ce55cc56a96edd2510123278487a2548f59b7bc38fd6effb0405b0f1909d01f84655da81b35a2c6c0374f6c171e6515e736fee56a10c5fa0442d37a8de0d10042f112337530b633a8d44f00c021d1f849a9a7ae052a6985558b213c69d1440621625fa42c2f2b7911836440dba00af48861176ec364db0eaffb9917eb82cbd41fc487107ae774cfbc298f605663540ac7273e8a9e4ceacd5ffa1b07d28b4eb8d120a4f2a13b8d9c75e2f1f16657f29ddda23478c295f99df3b2be86c00f78072256a393e8f45c4731fbb308826999bbf8e9eac52352c28b4e4d09ac631c4103a651913a6051b6d9371626f61713c18ea660524e67b9d88839637ebb4ae7622f9bc10bf236aae28724eed68748208f6b4ea0161b594e0491d9a124c603efdee7a8f1d39a36991e1642e69623f63b1c51be9e6de96bd6adfe28e0614714c258af5f469b1baedc59bd5936fb4789b7be21d379694cc7014b9b9e51946c7d442b3e4f30c4c804469483ea6e6990a1bc22c07ab158112cf37e756b6b4c835f6346f9a0c1e20176f6ba0c570df6df483d968b35955b13ef4a7f8567a17317d9d5398daef673ca85101c4c80dbce07fad436ec606b2d476571ec0faea9784ea5566d270325aa554ac649de167e08db5cbddc56482406f8fcd5f24561ba93a77be0aeeabed6135ad78a4c8046932de54eef8b5daf7f74eac1848fc38e520f5797e0e853f471af2c7a2cefb4bb69cd971e3229505fbc0a3106dfd80f8091fcc4fbc2d3c78ad0f5c74fb14fa5732f6215a2b5172d3c41a71a92bc14e24f0f731e70d630a656e4c0ce81a462e03e4f14197ea857fa65344cde2fd53ba68f2fdf0398c1d7dca42016d3b17904b48096d0490326d8c52a50eff8efc75757ccedb1f6ed0a393f1f454bf5527304fbe5d37969d4d4f99f4452f3bf668fa9f29b57546d4c46af5acdf3c922d62b5e63731b70f337f6fc63a860b7325863757c0926ed4e41e6067426a4bf37fe92c0d5dc0e7602a238eb82562fe0ce6c6c2cc67dec2d7362370632c9144793f48a347e7f1e86d277618ad68a86efd4e732baadaae20f5199546bfb764164441443480cd856562a4545d31439dcde2d44f56bd68e7656dc8928905c9203a6b59661f3d4e8cd388643abd477d924cf52e60d838f9c271fff703642370a302ed85a210daa29c521e0a8b9fe0a0ddc7ddb7660472f7d2bc33afb8728246650957c9f44e6056c9064936bf5327e740e1b1d69bf52d08dabe26ae35b73c51e538b244dfb35f929034ebc7b71b7820954723d2656ec59eca62dec686e97414f85c3190a56ab24a4f35b532a4943acfad28650de0dab37c234e77bb653ca43ee1464b654481b54a451f19cca653ede99dd80b1b5b0627e08ac6d6a03727baff8e1d0b7e4ddfc33b2e1dae5f64468f0f955b36cd58e57c2a17ccc22f099b6536821eb866cafcecbd020ca9a154b91b252c659d7f20f40d7341daf02752449f41464c7f8fbcdedcf873d7188f7f03c46d4e0fc9d6ec6b0180c7ec3987d5ebbf0f4a0243f3bd22f1328201fd552074b85754bb626b48f150051e51bc6aae0db092596deb2cba1d6b6a7d560b354dedc1b3a60a9c9f91c33cdb842e25aff2e31fd4913af7d066da755c03caccd629cbcfec5f1c8c4fd488c08348945cbe5cd0e60b5335aa1fa52b44aaf52ec0031331713a1b651b40a136804ceb14db7ca185837d185bdb93fc3b6b2a0bd88a6748dee42b6be145c2c6fb462e871d6f99f55c8b5fc33eede4755ce6d8708a7dd85bab62b1a5768283e0996c99f370110f616f3b7ef85967c0c2f4db21a6ef2ce61a8a39f67ef205db88b00366de493ef8d6123cd4545f980094b59398a288ca11ad7da38386795e49acba8505ac12141ce1ca12f467089067ee10c4f03cf21629f934a4c0a84297d48b8e3a2d073de8aaedb9bd0e4c73b70d1709efb6e1614af64eb701ed278e491fe3c716ece695e1d268fb5ffc221c52dee0aed3817b8aa06c908cddef19b035d7e060d4a23a135bbe628096d07258d1e935431424c0e661b5ffa059b900a47a2f0d6c5b8feba0ef79b8be016b1f09d269ee5713c9c1df1f2fe6a96f2ebb8cbfbb50d39d1dac0c852262959174d7649d66cfe38d9259090f60fa8edd3ad361ca3e52bf8c2bc41e71cc7a995718e05c4306c83752c4e88ad1234bc086ff56df88bb1a041cd726ca12b856a5c116cc433b5d94f2d9db8f44e926fd8fe032c145211b29cd9a1f187d52fb98acb1078a6df6f5a68eba6efc56f6a7e5657e098db570e656cd907134e995cd7d0559a68506865e470a815a7cf7027cb55d0eecf72212233450dde059e36582c3ed45311e14ff3a5145346bd1d8da7f6617b1b5b4bf38807d0cbad9044d9bb926074dea2a46ea53141108ec34ac5c63a3305edc79a591adacccb01d959d8455d92f40753772253f1ec983afb3fc5f462198bea520312b31d88cb316edb4d552424c5e70a74bea3b040aa21a4e24fefd256f999cae481489bd3f23f4edf9a2fccf54ef0abf5986bcb434446e26a200e52070fde28c38fb51a5948cf036cac2711f11826e0e5813d15868ccbd60186f88708706822758a3f6c7323f8c5d0536e23f304008856a4614095fadd21663b7344bc3da7e6630f42ff547cd9cd05e7b1a337260801d65f858d68bf7bd56ced4c600695407e30a734107727d80b066c873ffdc711ddd26314e0b82761a4bcc9d7c0cdc4beb7f2fd08a7d2e9007b34107ba45f32a67573eb8bf28e25271de97ac467a2097119e5d85f0fee8b42cc9f0859934e31371171d88130f83a828d063762d8c32159f92119815792f2bf1cab8f829cff29e19c25a5c045e959fab2b5c879f75950091f852d3c13914dd5b9761d6784739658b8d371f046cbcd870049328a6365c46ab3659627a7c3d64b6b92c3b8232b3bd50ef33d2593485ed686b2108ae771e4f5bc91738afdbbbfabe706f348e0806c00c7004267628ea1b0f91808556c5c0811799d7be85fed9d19e371d745bdf67a6e7b829e897d5e1b5e5f828679fae8e3ba3a04eb8f6d7c6e57c53a20bf0c9920a8a975341d133f0cd4ad0d9ba648c0f8170a076cab91b377fac80c4262f9ab91e4ecf3d15f7fd5f60164d2b75a455702933ac8e6df05a150c56d21cb02703f79de77b2fd4f99dca2c1c3aa50f2b386f26f0b5b595be222f40fb27a6c865e9a5c729946b812893bbdb1649507792dad1205314909d58be7b54f1b05e8e6a9b8b59c743072f62395a3876a12b25da7e28977d3a619922525f62a4741e03565873f3da327001b0e08c4342b2da621452830a04031600fb32f2862f477c293f560583850f3183a81ad80a0b26545df7d3557fa3990620f1a3c6573e9279607d4016944d106d2969a4e8dc5f09021282ca02b7f7c4d81073f586a240359d49b4570e564e003481e26ca45a8d17adeacdf9613954b9c66693b877f04f8d77c42c48b8a0b98a1c6ddd36ab60a44ec539524a58012f0bfa602e2977ffa5a94b3765259c44df1151735f6a32f73adfbe5776ef3ad5e8748eed53398aa8bc3a7d3b95835916bfbe070eae99d804b916134a38f837551cc09df7f8534d7d2777f1fef685d599276e063c4065147b115dc642d4ee080d2e78bd23c475d354bc13809982f11d4b561737b2da7bc7d548655ad8929e1c7e89d963a9a8753810177cdabd89ee4d188bd045f8aa87d53645181f48bfff8bf6376ed2e911e839cd55f98edf989d08994ba31000104814b02a64566f8266dba9270a1fb353396b0e939a04dc11ff0fc6892851df63a1b2a7255e9e5ee0e6d30528e753af4f0920251ced5fd7f05e97b8be083d036c1f4b61e3a8e2eb802fe119d38962eaf1e5277c59586c4823e33ab2be712d7dc3238f473e2a404ae1e548171a6dd3e30370570ba239c77cf092ca4a961f31fab88d0517ea49213c04992f0235021f9237107fc99a0b022437e2798a7bea07cb102dbb32e70d3fb681c3cc7c3f3b1b29ab98124a22e7038b3a2cb3ab7e961aad3411e5635ccc4f2d34d7b820bfff96513ee6e34b91a9d96e4cd728953ef701fff0e08380e85a8fc7ce2bbf7bbc86908ef51958042cd8c352754fe06d08c20b21837a31403cac31f6999c546f57d115358e302405838002b791f29dcc0f6733c4002f802223dde0e1cea6681d54c85c9342826cae1bb5844fb33fcb280b6c2ac993e685d00b39cfe28e7f3f35b175c5b56a8554211dcabd57bab92d4b1d6202c339b15e7ccacbf5f5cad4c1b662c213bf23c0a2f85beeaaf96b63a824c7164291819cab061106c2562fcda7391dd5aff63c3df07310ba579e0affea1c171429e68cec2eb30a74dbf618b796fba9075755136f59b78cbf9f92c98fc0325a7525ac0bf8d162f9f6b602793ee2549e8b02bf05ecbd6d7ca58241d501d7b0773054f11a921114054e040f391363d4f8fee31ba9844f12931e70de6d1f4e5bfa2c4ad614b4025215ac194902e1ffac996fb332c39dff05c0b019beb71eb9530b77118033379337da9bb8ce668dd6bb939272b1b4c2e86601ebf5ebbde7408ab30e0236bfd140270b3b8597e33a82a45368c794fca13ca12c830245e75d222a256a2e11df71d17ea8ee2e858a10d77adc627f03d3617d07bc12f33f26a0a73117d1399964ad6cf483088f6abd2c089c076e2b7be9716bafdd3cbee85a40f2da17c43bd8989637e438438cbd6722ef55d6da35b59b1452a6d8148bff20e2042fe3bc3500112af0d38aa31741f2edadb66fbbb3cb0274a8ee1e9f02248630494130cb211a6bbb2cd70f636bb48cbbe8125c6e5185ba90a462a9b610821c68304ce60229e870f0bbf6dd108f0197fde344bce476e34c9069dd2766289f54d1965b09ab11460f18eca38428a08555856ba962981a9657c5bc6f9659fe97714a623825843c43dfc85e2e8c0acfc28b6f5ad6633ad62f46efac63fdafee50f09fb0a20ada6afdc3fac70e47ca02435d14b57f475b93715ac95996acd0278e1af07d549b12515f3e9608ae9791fb0da7efb313842ea17f897c74fb62c5ab5064bfddcccab539a3c4f017a6d91a40150e462e72b21660c2954ee24cb957e57939a64a40250506b83f42968a733817aa44d0daa35ad8c68abc291dd065caacc5f89cf08a8d72030535fbb8dbb7764a56d322c2bfcfeaa5cad5a4f61c01fa037ae2d2b6d3e64a1b5e497a35e515572d17be64be27fb995fb95076af5f3dbee734f5a3a0b7f1e82b63e60c717ea78f491b729bb7eb9d9f4f18f3936e9273c96e026b28a8af156c4f2efe836ed33273848b824835b6aafddd0129da78d0f410151b8b2cb9853b650e2c8f8adc4001de7a862f6b462fb7c47b16925139362a9af8b309b46b31024624ea028dfbfecdb4192c57c4fce2c9a319ab3be3d63b4b7f940056f61a3372b436565d3478c3b82fcc83941ae2fc76954d0a63ef99b264ae6fef4b8e1e58c78e2b2e0bdbbfe2a89b4e0da514b95ae7d3fd02d766147541038bdc6dc3d2704bcf119b2949cd051e1985bf8ec0057dc4cee10e237c9c0de01833f35c1e3d6cb72c5a7b614993cd865d20d284fc54b561d9cb07cf57c957a5649b4a060e11058700649144ff342b6e560819361c36d3e4083bca7510b1a3c4f3350a2eda387496066e6873995e11f5f7dd9c855dcd70d88536cc3f653704c4d3c3e52ae570db7c9b63a65528e832e532d1c6babfe371f28c328816562745ee7fea65b5f6b7189e151544580b42341be79d78be295b6f7a32f1ce9c84f7286f53ae2afe6de19f695f0b28ae8b2ee6a1ddb9e7b2bb2b878d8081c6b432a1c82369c124ef871406b84a26419c7a20e743213d6add1b34080029667376da77dffd2ac41f1694f6d05c9b45d851fc48c47a8cf6a9a22767353a23e8b4cbb7067a37236a8241869cbf5db656cc021d3ca95cc3fe3cabc9f8f3ab81f1bafc038ea7f1d309db298627dfed82044d2ea039723c908aa405f2f548e2932fd9dd10ffe3cdd81a47ff45b249d20c39674e6464a2b060ce005d1647d3cacb742370814edaa52e2524d07ce691ce6654e2d6bbaaa45dddc05442b0f3b273957a1bb5a673df3fe184ee3de78456fa5337ea4340c6cd738ac74734a6de684cd8792a04944597562bb0dc52f822ef7c61317a4235c915d0febc42a1f6f9b66168476d8129b63720403a66a00362d67d1f0c447b2b1d42eaa6e4563aa62f66de976954b4d490e42b5da535d7a01a06315f4deef779fadd14d492535030d31741234009c482e4f2ee7bf6aedbb9acc983862a3edecf21456ba64216e6bfa6fb829fef53b8de1b85125d6af433e3fee7592c57d40f326f0351a93567997e77a7af1fc0d401130f24671fc688ba9794ca2c0673d8fc524e9e7d923c00bcd7be99d2cd00772107ee1aa613bb1a6b2cf83a528d40f4ec8451699d72cc9aa028b635bc18d2254b27a465cc29f6b17bbf6daba7342366167dfc506dfff65ad72c06525be4dfc637919298f37564edaba2bdddfe7d68b2dcbe4d7cf4dca205d1de56788e4b9165ce31e0b039b9b56efb3d1745715e57014f7efd4ef20579b113a8d832f0538b8583c73297dbabce2029aabfc286e611dbe7a196602bbea8fd97c3eca0fb8f19b2bd76643b8b20b6c0f44ca19537461da8972f8ee40b49bfcb53bc01602078f22ac6c94ada7106d8ec4e063719ee3e49d7078210736a3ac66d52a7eb6fe96a2b1580022124a435c91d7950421edb04403ed79969be0ce70485b50f6e20dabd95b7de94bb3a9b92b23dd0ad3ed4d41d39f12b736a69bd17f5cf4992649e944d6ba3cbd4dde44b933a62aa1018f74494708a1c800395906ba6952f823729276685b70931b3e90ac60894eeffece39a7859ddcfffc231896c322e9409ec260fa8ab12d19e6e645fcf2867fb2b0a4b69bb3aee73a0dbe15826e2c2862b5fc1368cbafc17aac612b59d5130780251617b983fb196bef09fd47193a98d45f5acee5c9bfc211986c3c201a2a2b8b9cdafd7be60280e631f15f43b9d059bd823becd9d146cbe227ba65a532e651df15f69a90529252725a3a6bb25c3a7e8eded812dedb3c8b6082cf9d10124ed6435d765aa3c08b375c83bb38a37a9a828436f5d0125c939335fd23a68a74f54a568a48d82ef18ad906595ba99d429062c2dfe318ee9055f502d5aa5f6a429f731b21187313314f090d97a0e41df6e744798417bddda4b69ffa20b4f9694d74291147e77e7244ef356d4b6dc6d7d959f6d102a03a4f4faa31a279198fcb60cad8872387fa7dc5c9f5b1ea508530b6a897035b7b183c25321d007391beb1ffbfa3d776e2b8ddc35d883bf55e35604fb574ced8af89c2ee70b7f70a1aeef8ffee82152181dad691598b19a60b7a99692b0fc098ca117ace4742b14b84859beb0b81e41c932906720e30ed0663169e31f30c1e9435555eb182ee701f70f4143aaa0fef9da02d90c6082ae8daba0e7b963a69347f32926fc4d78b0836259a5237aba65a9f419eb8b1ec56019b444d09978e17d8fba92fd54ecfb657abdd90f72b325a4b4f19aa42d3b0f1873b70fe24454267f7889890c2fcb8c13a585bb3aca492676edb85f7ae773cb37afd06374596f6cc139bd8c0aa31c810b279acb47853450589ad3da2ef7462303c161693027952babc096882988e541658bd52081731423d5537401dc21217abc81a5bd5064f56d7d1c2b5dec0a8ae40062a5bdf686a6649d03111154176bddb69a4f9ce1021b94a7073f87fb3210a69bfbe8075ebbb2bae0d541433bb36cb94e21192e53f9da4c7a7d3a1042931c359a0b8449a8b52b28792693a944173861e158482a9a071447a081b4c1e46f06f6e8ab5658bc23528e95676b258aa14d98c8d1be4395ba91cfba4a29fba85af5521526887029c014c91f044dd98c361460e79c1ff8f765376076bf8643e747d11a2906f1be381b2896806ea9a465fe2c86be1b6bcc0cdc95d7ad41fd7503507be298e089f687ce1e36d68ed729b72925031f79a5118df77fb0f9de8a6b08d07fcf9e9c6b26aeda9c66e4791a8d3e0c49073b91dcb0156554fdf9c4c37b21adca089967644b4a7aa3b6fbfcc19acbac19a5dd472982d73bb71599c7e8e43bad4a58a48bde781ad5751c9fad17a6088f1620ac7d114da446d2e5bdd6dcae6a6417929825537e06476701bf066473eaef4644ea4a63212cf7b0aaab0ab489c95e21baba22dbc5678715bf5f4d4cbd711d187ffb7d1d3ebd6a77bc04ac62499e8b927ce60117eb000155c18f3b8bd882ba101f3de33041590ca224c8a5ac100effec117c92f5784fd88bb177aa8659697147cecccbc38763fcc5b9d53219705327514ce22a288e13a5dc1f0485a976f53216d34d8ff378a4827cdd8c918f16e10000ece850e26d7c8efd97280e0ac6e5a003c167d9316ceed9c07193b353d875d58098f25924e84a2e1fa10946d1a1f43304d183f73dc4b65c731d4c5e7db32bb19d3293b7a63d27dbae14355c80aa215033e03c52ac8efcfc2ffae7883a79decce56209a3f8b4e7c17042501f9866d14136a889b856007961cd830960450488a78486deb428eccdd914dea67e6e53fbb6060a56985a387f1d3cfebdfee9ed5d42ee9982ee02a56af55eaa07559f61741c49301b04375bfa127c04ba1765acccfcbc67bc792c0fe77c955891bdc2a946f024f2aebcf2c04a06cac4fcc4b01d62a5a0b16867001cdce394499aaf669d54e54362599a5e02072df3f97f8329e2d5a692846e111dc9ed77a504ab60bfa29ed9194b4aa4e04069ceffe78b1f4bec3dc6f6734987ab8883a73c94053714511998572a056190adfc43a92d70e700b7d1bbca713824ae10cc2c3f82e3135d28a20f4c8360b2f8ef1b5a813b7f16b0cc3005e6ada1d005439223f2b6882dfe15832c4be3b9a030ab4c6ddba5f138843f9e432d850d91ef9253fb940d5f7fd80528ec1bdb9d0220e43d799db230a7f875c89c2cdefa11f8f1991c29a175f98ff938c86acca48d217fb073c160c764b00db353d5885b9cb47fb69f459b52258e1c43140fd776bdd7652b0a25baf24c619704851bd785779a054c5f5f545c6cfd421c8e458c4cf080d044a2675e30dc3b9bc0c4a2039bec9ac8837bc2bfd57058f8c2303520fec7893bbf37c6ad8dea31d25ad08d31c49c7ef8aa4477e3c019ec4f0cf155183ba35819805a43713fa06a5169cef6ca84a1e6a670ad044b62058ee5cc3d384101d99a0a3532b694258f3e2beef26de6eb99c4549a07b4aed1287898b57f4aebdfe3b67262410a3d6f9762a290c6ba755e0af6fb7d7827ef34bb6a39771b1d06dd2559f794c2ffc370db6dd531e79e757b48238ee0fbbeb0ed79d596337529bdd0790cb91730c21fe6c67e0c216fc70bf20fe38b340d4274cc1c3a6ce6c054162d3b0e47713bc10c2d2f7dd24272de7a38adae2f558967f39f20fcddc56428f099717f6cd9e49ad0b269fb0273a321ae4c53c417b3b86c73e715765368970e8a26a2471e9e592f06c0c94b024a581a3a1196674e40a40a50ca97d2a1d5cd503ba496dde6e2b30879a140f3bdd0b45e6332bf707c963cced9755c7ad62cd627971b5c6de1057a8aa149e21eeaab6f7519530ccd5b3cbe17d2d196455a479f29918d49eb1c9718fff667d7d48ff9498f79804bfd6bee77ee14e48104c3bd1a026a1df640d09520c58cefad76315f37485dabf4b70607c86f9207e154a4289546e62b42239aa6d7d7e7154493a66fe81a5510f30ccd70df2e84d12c9e5dc4c23345f8a09d531bd3203b0f8993e79f277ef3c2a49082dbf2dd889e181034efdb2f9da0ffa8d2b6cedc2d9496c08c38f046077add47361a17211eefbc0090219f2f775a698eacde19a44df5ea48abdcbc62e813d840b177e083208b54c5334a2a16fae6b090a4e92ad1b595d4141c7a783e751fc448776f681ed3666bb440d8370274e81d7656383af493eb9ffc107352056b7cf6a4cd1c68fddc8f81fa39e70d622513680365a496ab66d2d83915f65d42451c2d8d39347bf5d88de3846900c961b08dec076cb05b1e2bfcf6581ef49c66eb7cd6e0c2230a377f72e63617cf3e10956494a06c3f695904dcd5f04d8bc3e8a092408271d88ec092ae257b6c0b46712e44f8bfa751d5fbf524ce112da043ea6674a33a688892b5aea6c890911e380118064ff4efbad6ebcdf4db2049c7665ae0c11724b267918d5b508a7afa37590927e26845303ca50817f7b19175982d905223919e39e7d966e3e0059627a3883dd298f38f30d2887eef0520691eac0329db611ac0d80f2e753d6cb9791d742052473f6adb345019230fa3032da2103f386a13cf10c229616a4f255ec559318b72eef09d883969d89406fc0a5af470c0b05e785c325f6a895f5430b56fa6ee9b6805294c7538f29e23ece026616d740f4bce178e352594763195e319db36a0ed0459d08a366d1e2c083546edf2950cb836fef1cf79b7c16457ac16b80aa117a12163bdef8009b6ebd6abe73760895bb6d3b64fa97f8ee345958c36117f9532052bd8634b387bf14fcb0dd7d6ec5882a6b8410eaa24c12938da0f65801fe4357a447dff25e66751d723ed3eb60a105b81598f3ce8042aa748d0ea49140aa9775907154fcaf5bf3e1c411189ada540f2d0bdb99c92a85adc034b217d0f82f0000c64a4ccf8e3abee76bfc37d864bc6f15fa02328479710cb1f03c9d81e033d96e140caf488a65e3cd56841f7c1835f0ecd1d7c8a62456d0fef53ece2ded5b056ae59920d10f37711d164e2d56cde182caf2c7323a2808a914b9dd4a805b0116fd43312fcd7c6998e2971caf11a3929e0988389fbd99449edffced9c25849ef3fb639a0b0cb8584fa4633d327885092a05608c63bc2f6538c680f8f5e4be5c34f47344c17de6c9c88fb7aac437a545c4f759d33871cd20b303c7eaf742a82d1c150711bea7dbb6ea43d08971d74a9fb83cee1e4d4dc49ab1d178337d5fbe39fafeb6b0e775af0d1458774296b935ea792064b405b21452633bcbf299197d815ba531e0ec07607f08fd2d621a168a09881f52aaae2779e858d067d4db42a230836564947aa0bdfe17fa821d666d75d6db4100fff8837b9a4eb2b6ff2c700bf87238169d1ff59a61f1607851ff305bfc9e6283889f12217c500ca01049333d1d3ce86193920434d7d2024bc9b047842b56d1794e7cd0e1684976f42a457c5623de39415f4071dec59b1c423c0b9279c03b846ab269757692dbd7a7a5f3f4cbb0de87072829278a4895c568203abcd9b4c823955e23335e7b7b925a22c8f8d3b095de40cb80e100be91560ccdc36cb76d14201448a2681b79b69996a430013a5f173a258b874240052704cb7b8362459ebf5b2fb0021179890f4ae991e4ffd3c55f77562c46582ae42995d762ddd53a8ccb1001e9b479df5b73aa614b52e3895dc6fcf631cae29eac85015e67da271ce99dda9b30125fd7f7d660de8341aaff65cfbe407e04c5af1784c4ee38a828caa01669b6a35b7813a6f56d364c7eff849642abf60ba7dbabf82b2daa15a1b31eab681a7ba82fe9eb87c3c699d2a1b3dc1510cb2198fbc185cb1a8cc88425178be07880d11f021feabbae9a6e372e92b734716630b84a9cf71ebfe8617b0cd45c45c85b9de222e19e291c6fc3b9a8493217296975fa7a560efba746e22c617d7fb9f25127614d28b400df6971f7682c6b98993b04d66f5d5b432a08ed3c0f4b2d48db29be04f280a6c7a0113577acb4338dff4d167d4738067507df93f36bf77e538d31327a54a5d84946bac1a31efdf95404e7a2846c42eeef279942d211a3d0f09694584f1bf40b58101ce5ff2c2e92b977a302aafcb32aaaff4d7cb7ddaaa7b308c7bd84df88ba647246eba5bc2365b0f06fc5814f1d9a93dea74e3f55a90ce3df5e1fccbe2b3274ebee91207c89deda97402669a3b61f65aa2b4d001e678770f416ba026c191dd2ff332792511e1bdb1c04d6f13d88d0bf2ad12f2d4ae254902249261dfe24734ff3ae2f1f4b91eedb1a29209ec03aaeb800a8069dfada4e281df13e788a2afe1677159307309a0864fce7b2fb0e43812881a4cf317156986736aa7b68881f663c9fad751944d1aa5285b584bec70fd1667bce068d76391402a3f26c50fdd1a2032194cfa10a086079aff252f979ba1958d726391f2fcdd174778fd9afd2caba1a47a3ae10cca655aa4ebc102186e520490179244b244097fd19905d0b442407ea94304c558efd7b7068faa0db19de4f1c53bb05e6a7f39b6dcd1504e600b3944b6d019112cb9b30c27546a27dbf56f55c02325ed74bb8443cb1b3b0f4e959a0dabc6884dfe0a5af0e03f7257ca9685d671a3f3d7e3031fce144660b1bf0026abbe52cd366570dfe8260b56681eef5b1ec05416ec9cb659231bbd75f4527b645ca117003628c52f680b09812f0d179dda1b30c85a6a9722b6ecd8fadb68c1dcefdd5c0a64537545ce7d4d9c161d1cb2ccbc216dd97240e48fdee95becf392b2aaa29175eacd4efa1427cfff18d0f4737eae9a2a9b16f09fc3c1d94d87cbca6363c007c206da05558cdb94540b4c526ba75b46324fb07b4b5e765f6eb67bbaa1c2a2815fdd1dd991ea3072631d43f05a5d312069fb7f32775535955cb271b7f28690126ea67eec9ee0a15cbd4543bf1f40b733452658066461df025ecbdd952731a4f7c2237f6bef17960f86127314883b863266a91fbe8cd504c1736693f9839fcd3e24b68c1d4af42e34b348681c469c94a688489f4c61af0b69258532bbd9050ef3bb81831b0f96ab8921702142211d74e69a3d2af2dcf9afb1512d1ec4a2de7ee07054f3fc6d1f075243400083b115e52a6dbe260c84466389cbcfaaeeb8b7e679e5232b5c3662b82f0d6535f8524e456b21b67f5af5cba3d20562ecf95f7dc1884a91c9512b3f605dbc6323f0ea50a860aa8d9b1239525305fcd84ae722316c73163e168bf24af197446e732c4ce3ba3ab5fad23d74666c6ccbd5ad1ee24ed74aa0cac458fa96c37c2121902fc35f0497fe725f3806db1566a6c1f8e30936866b15b934f928eb566ade40c736c202231c7f918b7c66d01ccdc5ef0f1e0890049e884544a27869f23ec254653c24de53a4e298d3735c220762a0372efb8299c655b8a909e453e2318ca9536070632828423f7957745b2ab5838291d1eba294d7051ed89a691a990e818b034750a82f14f77bda81729dcb04582b89283a4a2351194d33bf175c37c208ec2ee0d79ccdef64382b8fd3bf31d61de691926c7fe8427b4c7bafa815d64a56734bc4235c671f6552460488aeea541c910fcdf856ebfde5302e9c2c88a48d9a81488684b063222ffdd2ee28ba81791e10a1800e577e0e5f4c34cfc06e27dcd60c009f64324686e55a2b8adc4835c992467d381a9da9abe69feec31a0c8c42e5ee0deb14c26ed963982244a8c4da9561ae00e09fd92c82f52b14f5d2cee625874915a77ef02a22f3c94e53f2801ecff953b37d7b7e6204208bb9d2ec0ec399444f5d3a5d9c487a1d4a8147f60c7a413b1e005da3a42219c6d469f690bf310652a613f2abf481168cedad870f83f75abb9bd522e41f812f619bd1e11c3712b4cfa136aa11ce561a7b2690e5c256bf850118755b0bc9c1a8387c62208ef23c1839884b40ef9e7f41a614da45298a099719a563289408546123e26f82745c45ce76ac1e605a6ab376c466372e351bd14120a2c6c9849c8bbb81884deb26f3f2c74a4e2de3eaba32a743003fdb28384a3f8a4e4dad63108cbe94de38c420cefc18a60419a917a525f22280bf87b6e97a2a69c8e332b661492438031a68d0bdc528b7444d364a6b0b44a541a966477ba282f79e62131d05c63eaaa9c1e5eee6f01f4b9b1f4b7fb15a0659c88c585b6b522db175cd75480a3a1386a6f46cc337cee2988c0d78babccb460f2c2cbaa6a2674b784a7d68effd4b9e49346f476b41785260f010f9490c33f6ef4289a9720fada081ee7b341e0c18b14eab3572ea528b36f58f2fefde20825b2375e862d5863ffe6066827f6164c6b8b7b3acf0a6b667a89acd72e80ff2ee585eb3962acf3f5917948d1edfa34c88841454d5d1e247c113d8570f53687d079f7500a3d140c193d53914a50cd6c733f78c311ec63875a116fef3169372276ac32ee2a99f8d4edc53ad598c2c1c63dd89ab53d4d6c218446a9d203c9a928018023b9ba8fd90423b3d1adbaba57d7cbad01be0c4b8754f5ff4290f72c1589ff7b5a15abc5b270d6d25377e243270d48f38af923ba7fbda0bde57ec2432b9b295769b98dc687b414bd37c7737cb6611ddd425cb8bd4a661240d61701e7e24fe1bfaa3b243437c8b7eea0195572b26a5ccfd2554d0c898599ef9507748f362f4b115abff1514cf59fd3ac598ddf1baf8210590372eb0b61975716c685524305042b8b32a79ffd6a204664fedc662c00cefa57736d4db8be772d0b8423740f06ae9d92ff0d9a0917cd35fa16666962bda2ff5c618f2051b6c4c4d24bd500ff517a3adbdbd5581a07e9ccfba7b7e0d0f0146eed991445bdf740adf45c8655242592cbfc0e488b288856ee9eb44ea0c6197f4654a97bccd938b704d11840043186ad8e4a9663f8476a4615ec8b28394277509a03ca382da0207dffc7084133c15a401a085eaf88f7ea8439972e12e01a0f78e3bb7a5ded96bb8d04222d9699bb700e25482895cb5ae87348ea3e94e1c5956cd2ad715f5c52b59dac74bfd21edd63a83d71ae57a2aa18cef7379fb0cd34c3625842616dec552df004270741cbd7f2eb9bb31e1608d663bdee9db87bd95766e15df8d8e179b8997059d9a1367ee8a4d110489fba347b3ae7fce54b45109aa29b9484877f16e3b9526d1a42228c3a2d06c4af156134d357e461731f217d4a7c40b43318f45ba04d88ba3b3ce2863129aa0e5147370813e1c20693746ff1c7a5ab1e7a76b25e3fbb932d7910329dff2c05b32568d471b887cabe39d5b33a9a7b57300eabddc254a789ad9d3861fc9c708526e02b899948a869d6a12d4764150b6c131589aeb3a37a030d6c1693f0876c8b5f21ef866fdcd47e9deab3c0bc844d7e2d58ce1e112da561e8a3ec7102243d7053f4bd782d26fe35cf7d125b5f11c264cddefeb8d727b1a050ec2245721fc45d3542ae1e14c146f2782a5e17ef1e59fab080efa8c1452e4d45ed34b263264299c1a1803915c4b2e14d8af1bc45bcad56940b279050645bd7eb4ff0812b871f96c9a5cce080f6c899b13a09e7159a26b6749815b9ec0690d497191180bf93365805cdf0a8609112257f82632ddeeb3e4bef3c326086efea1b68a5cdd5e160789dff68a114ba461db5778c6cce054a42c7a6b38283d3a332fba5a8a3613e053b843153857ee636dd87b362994f1b6bbcd5534a60fb54f18ec42791e24087cd173cace14c65cfa4b85b2873dbb9abfb94791d9e098ad2e69250be0048d6d949c03dd84d79d028131380f7ab93e6af14ec8388563a148754cf16d46e6a16cc01a28890e0ea288f4ccf67d6507716ad96b27cac569d1c4dbdc6ee85387ee02330389cf9d787f6a0a525e8369b61c84ec24fef826882e83f5e72b4ec83749361c631a218aecd2e90511ce768f5c5bac8fb40fe4ee9120eff58b851b1e7ec03e8de0bfaa1c3f5989eb4123b2d1a44094443859913906fd354b9aaf514afa98189be13170d7a33f76b79b64e4c4f1d08d473a2332ebdc268f00e5b16066a7db1867149732f0274733f1178c4110ceba64e3e5e5ca70a97a036c9cdabe0299c53b1c2c23a598bb43af94478c58665d0413ee84c14ae8a8e5920ad5dc4b866c8a236451d44659121ceb90b0ae18127288be8ef1421d6658c7e9413f85cbf9fc7d48393761a9208b0bd7976f25eb0caab0961bbec1f1d135da8d02693ce18c31444459e8bbe20ae0cb798005a78c5ba0cab0c751fe3203d9d90be62d629cfa005f48e8a220df3922f3c922a7b93b8f945ee41d74beaa81a88232d9f2ba14055176254ccb3097e92d0e5de7f52b13a78d5162b3b5f1d1524c3fd2c04605aa2cfee806636cf27a5dbd2e8fa949487858f5c1b8948c8c3159270fa603c3c54bccd0ba14a583fcc0b3c0800f13342ad093c7b7c51c2fdf0821b4ff228aed6ab5cc739a192ece5ec28b6afdeeb263f7baa5a20b76b5178b5a160883880246f4289a0d6a4d9707062f252c645fa0d180c9f90d4794afac67a0c11d9d39f55f441349173065a66bfde34ce0c0b8d3177ff2ea20a6b0072a783b57d514475c75634e00ff211581925b47630be0246b4d51950213a34fdc70531d088a49af733d0ded1cf329430f39020bc4a4dfdcdfef0379dc0ab184e02c621576011ed59353edaa9c078a0b52376a61035331c29f3ca3d49aeca6eb2571bbfa5df8a13fcb9a84e8469ec85cb8d817fbd865cfb05f24701e408cb9f4dfae00589c79356e8735bc4b2eaba3029ade3b698652c761b15c29486c5ea5eea46015a3f3c58730d954bcea5330e5052cf03f5254e20e6ed31ee5aff1661a4a73725e0caef7c095edb2f336cf05692e40fa1e1742ba44c3af77d679fc5a069a0ec850b187e79c2864182697873228118447a1c80fc8fddf5c9faf263a38e839c179cd10d561ab8ef644cc3ab77334117b25eff185519ead8be0f30ec5b2d30b0681f91039b34bd0454b63733bdb8a13533499c7d02d1df65198cac763dc89dc1fac15f228400cbd6a66837a42d81113e7c99af9da20d38b1dc44b147a8c9fb463c19844928a414cf3167965c129785919dc5f825d046b042ea0ece6dbdfd4123b655374d7f242f3f16ef5ec4170533ad4937c3577d545c456273876192aae131ae83ee7330e9703d79788e3c842d332bf57a1269344208a4693c48188220fcf06a378380472348735b986080e309c37fdb3c9efd649f339dd554999d0f3f46d40b2c646376423ce9047f1dc97cf350d3243beaa9fbf2bc06ceb02a99feb877288a59b31e780e4aa8f9e3446a564aa1a65c262e23ea4dcd5ab0f648165f7f8d87f560a767495f30c9598025761f6734e6613b7e61472bbba85f313021591a112188f702fa5ecdbfb65cb1fd0fa87fa16d10254f34b5a800d45381a6d9f0b218cb5cd6a76a129089b5ae61c37b406612d38bf04befebccc0dfdd7f40e0f0c61e457b063215d600b5802c09346d660003fde0d742bf32c9169aa7ab0b05912ffc93be1a8f51451cb69d28ef0f5adc204125aa21efe4fe3e3a3d3d736e0c91eff70c0be5d94187df101de55376f7e71c239a04fe66d266f1ecf546c577ab4910d06eea02159a12f04d1d1dd3227334cfb70c07a50fc8602311ef4dc629f358219f063f6d2fe98016d0b17154e7340cd6f696ad4c3de1d068ea289c0b7d50af67009661f18f7fbd0ae16c2d5c89d3ccf944e91d1efcafc21fad437aa2d9330dd70ee7c8c514df234636f9305369c5036134a4e4a9c5c52003a35ceb744b3846aa4e707ef0ed91eee9587cc749be1d68371163db62808cf004fea6e7a7d47bcdfe6fa387c7cd9052b719fd3ecd9bc19fe823d782ed4aa79b5ba97907f58a3daa8e10ef3ca672e8ba2347be011e1c04df666301c5160e9a75ee5993dadf35bceb48fa65ce159f82b445b0ec82b480950d6c12298f4735c27a7de38db17080357ddab9bb643a2928d3aaa937ce88c8333fee02279359ee3253e816e9b5569893a8c632b28f1d422a9c5a1bfb2ff695cfc4259564c741b9304019e9000c178c3d8bfd734ff94cbd7c2dde8509e7bc61fb1c7c14ffc59eb9b9a1db5fcd17ffa0b3423b02c6b8da010d23c0ebb6d300170875f446eb8b4d4206a00658f856895d83e60ca64ab1c8f4ed26bd217a0b4d4b1e0f018193160b1140abd9a5b7cd0186b3f6ca728feff27c1a81bf4d3f2c3e2c2af747a0995052cf1aaecd94f5b5ab33bb8f15db1c381bdec38592feafc620ebe66810e4b6e7e7c337c25fd593497d27922b4603604e7dc65b1007a74bf4e48de70e23d7334d141eefe8e25321afe50b0a32c4bced09037480e74b117c03ec9f11ebfe516236be27324f76b3bb7259e0a156ad8923866f28ced09ef9346b1f2117a5575508b7d782f57433956758f9c3241bf1c711fe4355b57ea4dba3541f3c249b4b21fc25875687029e0abf0e3ee5b844e3f864a49e2795a5d07cdaa44a04877f2bc667d8eacd6c66c9a47193e5c406a04204f3032cee31e1182206c74382f6fc16457b875289d5c77c3c57d2c7aee233fbe4d32288822b5ed978286f557127d19f567e1ce8795989f7dfef9c21bb1dff7a8744b50f9fee4cc618a999a1992895cc43291639f791a6a6d0a8c5e9db6dccd5c813609d33bd137db7fb982b1ad18963f289d78909415bfca808a027f2a7bb849720ed7a9a99ec170aa327dc73655cd1e43f33eed4aaaa9b9a44b90a63d104494afcbcd6df260178dc8358972c1b362365883be75b92ea922b2225859f7876a408f4f38c519a74fb34dbefd68aa80e9c54f7a903a506322290b9ef3f30ebaa08020a92bfe5421d1377ec0e6a198821c6b6fd1d5c6a84ecd1cbb0ff7ce46237260671f8543b7cd962dfd3d5bbdf514ead56ba08d12d05ebd73c6f5af8690e878526e679162cebd28d97f05137583a14fda3d8d4947b431af095e914d4df304c104a7dad046d2388705664fc028e823a5531a371c58e901f33efd82cd66deb0f1273f564e705107cb0a2101362d597bdb3170ad68b41ff24f2154e4d5ec21df9685785a6c6f9bbf6636d88cd455013febde6a8b99aee42e0c092da7d570c616582b8ac9f49a65422507875adc1ecfa402d46b84cdb5f41cd63116d3b63c5642452032d0aed5ac12915c85b3ff878f8ea22f5da57885faae6d8bbf8bdf2834443e361cd451c0e3954ee23895f25bb6c5bf3f5585fb6f18e6790d340e22cc42667714fdccfe5a32ec9f12496ee943c562029260382f8e3543084151a9cbf70ec8821a6d3de2c1169744170dbc8ffcbc6988d7534f9899445366b19fc0f6a6328755567166726d72882def1987cd4774e2206a498419f583f9f389ed5a168b07a6789ec10cecfdd7c75d294b35d3c8f3c7bf223fffe3d2b8fe5154b6f83e062cd32b109eafb4e1dd02b412634459789b81df24034514e7f61073bcc4e54d06f9ec1c8340d87c6bdd8edf568238d128616a7ad4472687be4e14734b4b30d3f8f78d5b0d8727daef5284ba917666cd5d9084eb685c9770121a8638fb32fb81f8ef35b92b83ad104a557bbf1fb7bfddd3bbcacf4b31831d65af7b0281bad4e08738b10b0e4d97a8262425d761f402a2c5daeb8e6862b357e2a76878c55a2465e7a6218a7ecc056e8ed477ad362fd06d36290d03c74fae70cab515b2f9d03004c43a1fad05741dd39cc0ce54f8985fe9897bc3c377558caa5e39d009aeba0b3ae11efdb08be9dba715e622d03f95adfee663129f265bdfa384f3d7ddb949aabb6eb5864de664db3cc9d372379ddf3fc467837c6aae079ca2423bbe25dc04b1160e02ea4e7bb2ad5323652aab3f52f536252e7714c72676b917caecacd74dd24cac72ca193af66ea249230f09eca4e675860551537906911e72eb33248b423e34391d387d1eb3d6e68239776085aead7b1ffb47c3ae3a92b1e23ff7aa5a2a33a0eacdfbf9f132346213b64a7bee47f22f988b982721258aa624bd89c1d40615a38fc00f3396ada640e257b49d15e544a57276fa301147a587639e0e11471c198cff7caaa8a6a690330916962a3a9c3a89fc8426d240476860b6cc542ceec470622fe6770222a10d03128d12530962b1012273a3b60259cf91da7c43829507b7ab5974a379430a9544566191cbd9677e22dbdf2bbae861a3fa5a966d983f2e9be0045a89d82021cfe9b74401974ba899061cae4704f23aba5d879d79c168279bbd71b9aa4eda40c30f5211e9bc4b942cca521e687f3c186966467345626e025bf0fa7bb960548334ef9e2a56346027e1696c0926b91246bc43dfd41850586353fa4c21d61559d82e5b2d728f4dbce753c9827c446dd967ff712fb349e56c751852fcdf9919d0eda75d9a7d70b1c500be65e04e0ee8bb441bc5dc8b5176d8d6a82e591595726ef316b52f4403d06de2b4b26e3e1f3c0370d108e756c401458735315286341bbbe6c4d1edb0f48a4e73a58cef4036c1cf106b653f595fea12b1228e9713899f8d40023efe35309112eac4af0a439b1bcb73402d395024abb4a78833a9c9418ad63aa16b4dba5a00c9e8ec9aaa86f8f5d7709751903d4715f9ecb99e2bc63d6dd313f13887d94cb617c099ddaf0bdff6d502172fe43183a1f1851753778b41850154c73a19c524d5d001b7b7858170cf1f5310af79ed2ae5e05fdde360f5aa38a7c9ba42e735eccb4a521fe6cf794cb05f1162362bf3b36753024a340e4adacd3e7f037f22d7ada27d5fc8ea33564b37b40c82139a3613faf8778c798b2b3ac37cdcb2e8ebf51f64ab298d56d52c2ad9b272164360be2cc09c32a3821620a913fa5a495159b4e94a4aab8f456080b58c45565b52db8404c950cd28788fa9e5d4245ac7de5131b0952e70245e147d2ec55263adb08b5917ef860e870da944ad88ea73bad66c6258bb9453d3740383b9338822de62e6b6b51fbe491dd500ed2cb27310a0663925b0d7a6217897683676ba7670f98fd27a8fabd5d32bc9aa661b3174b4b2c130bbb19b229cda084cc08739586a98b8488f8f022e7efcb4cb2cd41710412fe9b6c4761adf6439429e0b505ef620a8f1ef3c60732121f145a944ad2c0aa915316c2484e0195ee0a6dfbe5155a82f1ad8b1b2165502c5f3b53b178e7c1bad9cd72cd5977784c651db8343ca3929191ef50045bb50093fd22fe86aff47b09ae3eaf9cfb1342e6a4be5221fd703365f8f9e5c6cbdf898e51cc86eb936632674103c7ce20453310a6af09e419209937249022d856a9f0e79c5b8247a24fed8484e97ae90a476dfc20884ade5c215963df528a8e0143e6ed0e92e6f5f1762a72301dee245b6fa2cb59bfd7915e5d96d0eba56fee57d516b17c2c99e210e9a969a2443bd9d19ac17cff04762ecbcea700fc1ddbe43e019d32f7c09bef4332530047d59ded8865d1704a0efa870896759707aa4799141b4083daec0a9e1896a1b361398179b9534009b298b009e775ae50fa6320a20c2080c8a857e765bfc8cfd7bd4a43d8590857a42ab10626fb660a02ad6b91f970c3d1c5d949f80f12e4189a8d5d61fb20119b27a0d3b18965a790112419c6417b75088bd53a917e87e1d7650149c98b2ff5ae70dca81a08d13da041347ccb5d9b95f4b3eedf4919800fd03260e195400e0592ea7f39dc762affbfd1b201ca06415321e29d15c058428e22bf122c6254df3bce9bf6dc437d520a44206cd5bb4748a913e1976fed67f5979d2ff026f33a5837f4bf9d99677bf6c28f714dffde595f4f2cb78cfa7beab9877ce2533bd66c936f974785b9a9fece6679e31d6a29176d33f4f2413eb8b3259ee3e8ed08fa4d3003dfed0f73f90bf1d180f67954f882da44f2d4505df89400c5d0136a6b348ceb5ef8154853999e84404712137ab56192e294be3ef892d8aa975bdad8bc8193471821049757877a8af2ebb676916db14c3db592cb31f96adc71e1d4fa929a2c9ce4d0ba8b2d8650f5cf5561ca3c7117b27a99b1f7933ee5fc758602d05939f4b626bbe162a0528c5ee27b662e52927b8d0356b1f84fd90dd21683e55a2da111729c2221f86d063b337d4306f3df10282e335afc9b3a369ee0a3b8b0ae93e21a3c558303b710b295d05bf8065645e399ddeaf2059260e0a6a8c82c85951a595c4f6c0918e57d959708c56b672d145bc0b15abb360ae1b7c493fcf65f55d985059a657d75267c6a85c34e73725b4e0ceabffaa47c41b27c68d8ab8a2a6ff4693ca11b4d78468e68506c4894d27088de93556a9405f0a246aa54a7d0cf9d378d11fa68147965c308b96d252252daadd1ef3397959a9ef1ff2d5fc501c6776afa438b76a1d252192fadc87b05a2002db94b1447ccc6847747fbcee1610a5bcbfdd6eb8ac8b3cff6e1cbecf24f262d73389c6ebe0afbef0bd535815a165046c9915bdb38563af08eeeb1f69e53a306ee75ba61e598f97ef45b600a5be4944b3b4022e21b7b2d492b28004bb333f25460fb9bfe25ccb784cba92bdf506b0810155f96c5b582304fafcdd3085eb2516b656e010b27f6bda9c0a0283521c9001d74252f48429e75708e3a4cf8120f75f4441c1a69d32cfd181e19f7364393dee22bddc03365d014917f97f7bfa5fd518cae5d97c6f0ef8debecc46f3c34f86b4df8d083097d0ed62d871e5d2d51a435757f989780b0cb4dd43909937b24c27f2ad9bb4048a675280543e1ae099f8cc43d553f6d7dbba5a1f9e32bdc0ad3b934b9971126d23d0ed2a12d3180e2bff9d15794e16ba77a704b5efea184793251c64aaae15b15c26098697980571630021055f4c9891aa78cb45d93777cefaa6e7333bd6a9bb08906c66973b97eae2d401486fee34e406748612d40c78eb709e7e4c7840e816da035a4465ee1de4b6c401638a0b1285c7ed677f1b4dc8fda3dc7509205ddeefd12db5145288863776fff242ca09cf5f24140e4dd0541b58d1d12b89d407cc9a724ac0ab865e8ebb03726c031c85f12a8a64219758ec2aaa082b4d81e4640269de939e10d8b093eea62320300ed62e6339dcea0b1fab968b1747b1171a0dfb50e2d541d508b26ac984f32a610fef6f27db2a56ed06f7fede53d25ed2fcea88751b99a5acfa5c0ab20836941b39439b5c65b9376c224be64cd9c5ad4ffa6969111b7aee071fbab7f667bd610e322f516a1de02754c93d69afe21a2dd8285678a1a482780fc182fed7d9c89a4143ff95cf3eff1bf6a1fb0e49ec8130b2617d3c627f45e6da690d9d0cdd25433209e00b2604a9c4d99db10443faf29e1c002c5b6a91fd7fae7a2afcca8999c1474a654670abefd6f2d0637dbca6b15a8e6a5967cd538bb10a2d299be48dc0aa6b2dcc6a366a84d28265245640bc971c183d35d70458bffb3cbd3e5efc668c5a2e27744e6fb573f6309f4d83cd7505a783cff4ce9c5d1d53979ca84688b1218c7189b044930a6c0317118b04b4a1e579b53249af855812b757b0f961f9643b5538c86b381c28e31d41a1cf9d59c97dd8af77e5179658a6ec877bcb423c833c91424b6d9966a00c1b1f5924f1706aecd698b2c71db3faa84c8ab848eaf355a6cf3a339ce85f80688ee93447f003e32690e878400d24702627791faf312cedae223598f41c6568e4b59e87971a65805c45b055e36862fe16c1b04656127d8120865f3d7d8ba625a9dd87b29c600f2ee8440bc138558b36a87cec3618f12cb2653c09774e7bda15aada83a4375b1d51ab14b729d22e3af2235e23b34f650d436ee107889f7d8b067b716e1dbe56fed7d8a760af9dbef7a7dce09107dfbf186376d40f7ebf64f20e84bf821e9688ba375b1180d2150cc16ef43a7ed0400ee663a6366132746e7b207d66a973681f48213575d4b9db366987d557ca9070cc7e5f93b5417215d53829cc8210f1eb7ccc761d0e60963246bec6f32cc61ec90e29b8a31d0a978925c9c24ef5851ecb3291f550cb8fff3f1a88e327b2f156237b6f1c7000451fee29c327acbd3b85cc7dc4e86da4f0476917762f556216fc87e88c7a0cd52018daa9310a7734c9cd19064649c225cc7168c25327742c6fe9a2c11a1a750853b2bdb3b0e8686049c5ebc01933d79b141105bc3e6440c50012c4073f37d8f438c80f26f66d60bb329a0bf754577b6d091673f7251181916aca84ff8018fa30010237771fa1bc977ef57979cc6b3026c061e96266d3da4bd908e7106eaec55e1d30b426c7a9940c1ab0404706b94f2d6272df21039b8511bd9818afaf93e5be1136cb35b8c702180394b0c2c541f036e8cc58c39e219975569722c3548e10503938a5bc03d1a1bbd0209f557233a4fb805cf6c670dc3682673c57c50ed63885554a3dc3ef9261155d270092e801a5c5b714f16903c09d13f3e3b1b8f8163fde37f27fd290753f1ba939876cebea7808572522b1ca5b2ef3fc174c93be00992d5b60e2db553670564a1eff3ab140230ddef388e2a355289907b13e42b3e680d661504c0661a4f5cbaa478db87374d64a45780f455460c1b42a35066c6727dea4145487adf7b6f9d0034c4325444903e584ce20a03c42b1c1fed44bd486e2b145470a8d3c02754c102fdd1269c449db30cdea8f5eeb73dbae01d9256f7e888c320a9882332666caeb984683dc07a70024d5d3a8b1f07baa679a9a58a7591cdf3c62bcaafd14b4812f2fef4c9c131f660549f21266dd3541bf172c5031618012813b454581a6b67afccf4da4d5c0b658007416934c70969202531ab60cd507696d2e98b5d2d48c5afc4c2b6a8f864d8dcf73d78d2b886ee5cca90cfcdbb3c1f9ef0d8e8919fad9b077ea5a7de3aeec61a5aec0c510c5965510e1e2bba46ab7ee2e20d16f3d3260dc150eae1870c10ff864d2d733b54f2e97f874857394de375bf40e52c5a7f7350a344622ab723721bcee25e66c2eedcd2983aaecdb738196e91b5a39b10c55ded1bd5f2f4a97450db63b392c726f205cfa42713d0272256807725482d4d410b969ba61f8ab318ce020726dae7e56cfa41c378502f62e2772b5fb2550a19ef2010dbe7bf86866a2b547cb05588710c8633e7aff772ed9f1b77bc260de187bab6b396168b2d9d0b749b80dbf1cc194e89288a0b3d40ef87e5e9bf14ea9bc3b2658d953824ab574c680b8e6e24c115ac00a461423b802bafea0d5ea4187d51b35acf3712391cefbf4462c876bcdbffe6ff7194ff127d2de548615265b891c62681d37fb3530bbcbd0f4d973d0505956777023bf3ec78287c38ed37c6be45c47ca8beb128bc7b0ff6d7db511eba5773d4dcd6cf343deebb63a11c1d25c713d45893da789ad6956990b454e539a0aca9bed2c73247c6c51ece52525b82d6bbf1c30b3a316bc99b3b69dca716d3aa0e47cc0c965d72f3ebd7e30f34014314a2c9f9222c56c3a9fe5d81ea75534bb7b749f2b647e1f1ae7dc36e86254e3418742b9d31b68cb11148582ec5c6bc9e317a169fccdedc9e05d46517f22a9a139486909fde58331239c6574eb55a261ba39ad5d3f946f6b3b626d38cb9f9c216a8d7d2249baabf158cc336c1ad66848a4e925e824339267674aacb508df9962049638efe1128104a4bd3df1bcb3d9151af8ef79d6d1e3f9fd9f965b6a32e62a3ad24701d1ac8d6c91f798ea6867ad19e4cc051df60453155d136de43fa1e42b087c6afc45691e666e1749977695dfd558f91435bf7e1d878afea6cc7c9540070602202135017a5fbcdab91003f0ada64ac5a993f454f3d7b100ff0f351c89ca59fac1d7b27fd7d5fc613bf97b75758be9def6a7933d477d5c597ba7c5857dac72db993152a5853ee51039b811188ff4b2fb56b30ef32019dd4f9d54b49dda071d6ed3596f4e96816c295ad995809b9c002f217e1b0244b511dbf915bb24d6a14a73bfd0d7b9a41b1021cd28f5e45939385394c816ce28e18a1d93acdc09f1fa59a2aa435595cab9d8924b4598a4e64facd2dc6039ac79acd291bc6a7c7ed34e137a78ee99469fb974522e06a12d5c7bc64ef920f6273b374a68aea13971e9a76c9ccd1a00c32ffabb171228e0d6ece653fb3f40af1da47c5781cf36f75170dc2e915151058b5f137fdb6badcfaab6f5ff7c10384f56f8c82fd852a3cddb55b025e30793d4331766ef8fa4693d1af2cbc2516c4ee122303bcc881b0ccd3c29ee10e70ac97bc21c77234fe37758dc040df65079ce869963744e2ba2f2537a4bbb4265a52b8bc9d9ea558a7309f30f88cccc01a0309239b4c3c14201e0daf2b0c9321e8a5de9be592b44c4b9c8fe44e8afb545595c4a7d67e6bf968230b0587fb5178214e7d2cb1ada0772dc32379059418f14e9622955ecfd63e09986e1a4042b2d26b944e8c76ba1807b49a9fd6d047700f3047133ad1b402722aafb466603370ffec85b1abd96a90c5848612878e600e3540eb803ebc784f700c81ec9c40cc566ee5534bc8259c5b214dd72cf83a397ea097f4c363df0b8ce108217e3ca9a5a54e52e3cd72280e917606293b07bb397c70d0c7cd5a5bbc6959517d4f1edd8da112bc684cefef19ee5ccd29d45b77c0adfc3447927e20af2c01ca00b01816bc90970fd3a6ba68b7ea6e273cdd73b96344a280ffe6241c9843436457ae9090dfb4b871ccddc0066d41e7fe6ab124afa8e809b74e43aa8ef474f1c9cd10b388f825590b488b8c2c521d2f566a0c19923ea15339fca1aa644afbb156e3c69be6c814f58806c218ad75cce19d9ad5fa1b22e0e79cf60bf652905a2bcdecf774d8e631685d19b4463582c4af058ee072bf18808d08c552378ed1943e5d39b845850f411ab970e48ad75263e797974aba8f7294a455c3621329d8a61eff275a4000c676a7aee44b6c0e6587f1da0aafbda3c95bbb9fccb8f0c0ac9087d4c4d7108d46b295d38a6dc16f0d573690c7e69f809e50340a263b8d9176f86d87e689e06d98725c9fee3fdb8369f2eab88fa5dd4bb56072b3aaabc8793d2cef9f9ff31bff64d20cc3f5e491af5d033dc9b2c660bc8c19de7958e0f7d1df801a94c73264e0acc0afbfbb118ee03aee21783bd53fb98e2af881ed23bf07114c227c4b60c4ba885372e101e5a6fa532edcd5cf966b4703f6387c84b671b2401630bcc52e69fb66f18cabe45b8ea71558a9f74e959d2efbcf70f900d1b8b0227e6fcf961232930c83ffe3a1ee9b0c63a2c33d33e86d9739a4974586bf6ebde4011b2f35d04262bd4668e4cd7a5693b6ef5f9ba6967c108743989041e9a56d2cd86ff7c242812c53517461b5b4325f935d77e01a513781fa9ddc74764ed68db1e8f41e2dd1606399a636e6827fcb51d51923d76500c2e455931e0510d9f0a5fe5bf824716c822d0735b01ae21ca50f03b4fa1dfd779ad99bcb6fec7453986c98f7441bec41d39077b1b9ffbbe53fbe63caac0f9f1b4d8186d89e41cc5547d573ae7b546d27d6127f134485a07f45513eee3b689d90609d9555bb85d42f61b177d4b6ff7c279ec5add026a56219eaced02f5f2331b1a16d4ecc21da8ca2b8f702f5d546ff619f29ef7142ef059498a79dfd3fff75ef7cb59a7c65b4686535ab0383c8c474cb1403d226c44a17c9a8ea3c31fe8443d79c94d3591a710af17cf2f2363b28bb39bd6f5bc3825ed9fb5cc783a98ba61c7b7411749de981019d2501f284abf5ee15762cc9670ac07f74ed0edeef2be7d57b1a37b519bdae71031bb9d990814cce554c7d55f6d9962d0d1f3c0f7bf88cf00f7f9fe134bbcb3cc9052dfb06af93868e0883ea6381c8f73b62634e548ce587f0392e82e88ac18f1f8499a98deaec0a158baea224369386c6b6b34de2011be3ea692a3be1a73b97deff25c6a679729142cb4d65f08d11f56238b6e9462b3d0ccca3c4b5678ed3ce810361e55ade2c29deba36a2f693386ea3883f0976cdae21b8ac8945ecef8986387bce423e76b8904ce5644a02775264b721a7a46a7a0429ac99826fa77a65c6c41c138532260a33c0be0f59f14fd1ed2a21fd7444f1cc7c8f93c1109e3c21584345b109173519e3bf5315cd166af03708ab7faa0805ae729d1cf48607740912c0f66d92fa11b996d0b6a41ee121bfa4c8c92aba75880f74d974ee66caff95cc594cf95324fe08fb9d0d60ff517a361c4ea720cb77ff80b98caccb99cc6f4a017f33867c9673cb238327c3b0b3376bb9573852eab709d3c51e3c8240d6cb3681f6093e82fbeacbdaf1ec5146c704f11ca0f90b8d31b37db2cb65b39b9126b0dcc60cce4e829755829b25ca418076e233e7b41f1038f4f7ee79e9dde3a025fe450276280549ba8211477e426e14a4469ddb700c9919ccf4311b661c3e1f7661c07bb875b6a30643986be64956b2a7c3ecac7d16a3f915999c1499252210c06716d05d3e0c779a2ce9539022d6008289f6c8263dfaf867575e939d4a1c5acc46b48c79b42fde6b816501a23026336b50230dddd7203906bce6d6793bf99dbb1c2c4bd2d5198fd886049bb47edfc367d27f0906ffe4c234fac2f0bbf5777e8bf5c495b07b0d6f8accbcade2370d3538a9704d3cc81d4977d573b0138106a766073a23808949195e18f0a0c4fc1b705ad4a40acc9e6604e3cd2d58ca5abde3fd035f41354333dc001c295934cef7d16dc833887906b5da07b654df9ea5a91a504d7734cdb32a634fd1fbaa860db3f0b17dfe6bd022dff7dc87bff29ad89460c4d9b9c981044d103463b08b95cb5e94d110b53c97b685d616d7d7827d4cc175fe14a13dc51b424f7ddb2988f403d5419352989b361442aaf3b097e1be75d1aff391d52cf8b2ead327d99916eae0d6819279f6a415ce3699dd76d964d9253cdef42c853bd47f5a7233d66cbafcb2fe6499eeabf01f4a5b9fce65bd9be4d97209f3727a2d2227d01725dbeb5227047f7557703e0c36379dba7648d6226b50213716d7fdcc2111409b3bda22515b45d3e3b37a65cf822d6d03961408e7a6c834f920e3cff700fbb0f4936681565c412ab2c65184ace636eabce4956f8a74779e2856f23ff80fb3d5efac7b2c45a8267b35061ec8789733bdc589de207f213c07d1ff408fe97cd09eb025c94d72b991cdc4316dd57ac592f6ea016d25e753851950af5f877587a6ac82bd8d374b55050f84965cdb508a8e7dd95513f5a3816750def6086c2273562413ca542d4cee311060dc2b56bdddd8a3d7038687cea33dcd2b0a928bac71f7c469422cbbb5cd62d654d5cb62a21363d793cd3b67e7a1b2d040a0ea042f5e5264c0917aac17693e65b215d80b2cff10582938ebcdd870c937b93b1fa23a3976384e78b1e018e179510340b16c89ece8e756b59b432077cadc1622edb04abf5abbf1813f6573f31fe81316c7fd01a0642f6d7bc7e47dec6f29acf33bfd8a9f5299e7662d7e1f1fd1e6137024239f8cec526fbf1d45b2df6cf174e19d20eeb321e22b19516f20517a1941f84ceedb561097a630f670ba9f00bac5c233247854e0d6074967ae3adac546e42be0719b0980fc1aa1953b6e8974819614bab7f7ba075c3ded892a3a4224ad652963881c8136152df9623d59715e879f939487a5ceca38a5e0565ca55e9571f29cada4b05039a4587a9dde33d3df7d6575408b24ce485b4f3d5bff0708652cb2efc6e57178c5bd65ea4b845aae74a71b8f1e4c02e6f3df9743b358e63f4688054e59b55da042a83b748a5d5af77cbf7408024dfe73bd8fe3f8fc799a8d261b75232758da48a8e8d19d960c5a6075b14c7d55f6e9f363f8874d1d6fb76fad8b648127f1e030a94c6c18d9382598d769cb2066bd1c27aa3735b6b00aad47cd95d41bb88d4b58f1598d070ae727bbcd16c94bf4db01fc89cd2bc7a0340458c69f70ca247616a0c6d4cbd291a65fb42701b98f396fc770b21184c8c67c3164fa4b5732b85b3f7eb8c3c150a1de779641687897758a442d68d213fefea2b1504f14d0c48874a2cd6f4812e6336d9af7b481a885ddfc210e4d36ba1305904d384aee759ebe8deb903eb34d6d4cfa50e5b876243fe8ab5767a54143e6c82c85b57acd764cacb3d79c3c91e5bc36a47d6f79475f4d74527dec08513192ee7341f4e359c4f4128d4029c271ba6eb9a1bee9fd51ec2ab3297cb67441ddfeca56bfd56ad14439f7ba3ffde57f39bfa647bf9c5f009f34afe863b44d984e89ddcdebd6fb3dd090ae360d3b79ba291fff4868f18966df055081e3029065b49a72c6e21e96fc70d72dec8981d9b887f5578b1273506037ae1c1450df8949ea1de1a489279fb4257f857c8d801536f1ddaa8542d4098004101caf8460e8552f634f5779272e9a011aac5ab3584552628a61ba3b62076c3b960934bb13c149a92b6a1a72d0a994f49f2e63f3b38657a23104f94352d8dc9447d834ba8daa25e8ba5c2aeab943cc664d3fa6e6cb78451c0231eb630ee75bf3661f5842122d9ed7a9bf82c309cf27c1789da8d2c23000103e4f6c144ebaebcbe0dc4a94534ddc2adbfbd220827d715074d0c4a1dba3c7a3fddca0265eca8b10589d0257e11f7ff57916508a38f3e024309db90c4d1c158c298d920c27dfef6787092b55a0f01bd2a4682e810572f64536db62cf1b7744449c8673b0f8f2f88d35f38ecc726a2c24aaf82a0b9b514fe5ac03e3bbcae3230da0fd8ef9c40ff1434cd422563c4cd4407d7126c328cd4f96d0638ddb086d632e9cc67144a006b7358deb26fd3d833ddbf0604e629f6db612fd2c89495acab9a1013fc3c03b5e8765b3cef3aeebc8647855aefe79ab20dcb4edb2c86e93a8f9c9805782187b5b0a076601c6b0a29cb2d2c876fa5202a1d594465865cd906d4631177752b09052cc064928cf845f6373efc83c0ad3afc3ec75461d64afd3dbf1a6b5715413ad60af5bbd6e5515c53cdaecdf625316510e3144005a31237fd32cdb0d1c87ab871f5de7ceb480328ed9ae4d220beb2870c8db25839d8bc6374675e381c82f583a86ebb8285ea17719f79421e195d5ebc0a7bbd16aa9621b79c7d8e59ae9c3079a033a7d17ac9082897f807b9284ba230bb9ebf173e3c7a2a40d00d065140c7ee55126dfbcb8314d765df47cb4069d1057ef6ea4960dbc3441c45e45ba0a8875aedb83126406f200ab06eb2f65ce2cdf493be5d3f6ea16247c3728c1939ecefd76bb9883cc9f85e02b8f4527bf2985a763a43696406a343a721898cb10beafe6bf95a253526cf4633fedbeb42a9b38cbb8a12c364db83d527af030eb516f2e6aa369fd2ba9baf97fceeee08723c39db03097f525e28aeb906b11b0186ab6bfa6833c95c45222b38f5ab46d7067907c9becbdb69393e5ed3959740db80ee632ab5cf71ca9badd7f6924563fa0c6c97ef4b3c2b48628eb77af6d1a07624531474e8b5a6174ba24e03085e29dd32fb9ec29e3972980bfd642ed971621d7bf78a8d86d96ce728b1ce8182b8ca3111e213e51c18e868042d94a5e496dabbef379694ffd3782e345dc4dbd12c54f46f1ea7bec0eb52b943a7a83a393a0cd17c20f9416f99c3171ddedc68bfaf6b45b321937d6be401f43bed3ec81ee53bff5d071ed90b5f90a166ee29ebeb377703b94cf61449aea9d538f2dfc816d2b4d0471add31cc04c9ef7b931c208bd04f29b63f5818741549fe01e3df1452cd1d805bf7efcac05aca14dafd286c1b34a32945c761153e55248a14aa764fdd30f20178a64642a5c7f6038de889985dfe55f6b3e87581424c54535e18f5d90e68e3866b906419de9fc55be7c4af35f39174b694359ea221dfa27e3865a9ce400b21f34a8f1de83e0a67d8d41a0e765e4b447d1280da057aa21e9a63f858e76e93b59a48a2b9fcf5964fed78c3654ef770ff009bfff36158a45fe80c94b6a94bc0985491767c161b5633499edeb3efc23f8e0ca727743dd5ff838d460f4f695f985334e1f74a672931a342bb1997785132a5ee708afcdb8ab4407901143fc6655c8faff4f9dada853e0c38416b8c366ddad65a71e27a33a1868f642b937aa6947bf8623ab2d46c7082d75e832e7ff919e9dd28a2712cf0fe1bb9b55c5ab7189b5683f4c3b26d890d27c379dbf7d062e3ee11114910481a10d87f07259357a5014d363d594e6cef8995c9a8fb34b11811953b2c953d3e805f8ae3b939c796da4801878e1cc4f5df0c806e1076cc1ab503659ff0c7bfc3b2e2bc857a42874d5f4f21dc0916dba75c1a84863f4d8322173662b3626714fec48c72e1330fd607039ef55b22d5eaceb0ba9e13c85c4aa0080d5bbb051df36a0bc693af4167564dcaee2f133db91c253f30dce67fba9f18b0d6b63ad9dbf23e13857593672c2ce98398e40054c86b05b6b7f186d7e77801575138fe1f5a8a8339b05a2b2a6c2f9b8484ea90bf8f559d92fc27d1edd2fbda2958e407fa0b357d66e5ebfccf621f5dea343557924b1aef3d2cce468f03e0b87abc91be78b298ae908c62ae0e60293692406e5e680dfb488bcc29b165426aed9de930e5e00a9e4807e02a97e76963a5a91ca6d90bc4cfe1eb34a310b66ea4384d92bb09ddb3e3b602393ddee411d51c4e0fcaf88475c1ec43ce1e7709c8f0e452965985d6a32d7eae0d62d32f2433cce116567584fae3f5f3acda53a7b4c7b629435a68f241182b9644f559f617bc6e30eb9d78691f3bde0b77684370a7a5da2abf4813c07d80bc6ca8d8bd0667cea094bffc7ee221e676135863849bdcb8acb0d72d69c8fe4923d3fc7e77a10db6ef4ea47b6bce81cdae79b3dc8cb88daa0ba6a85a024edd7e5a3ff8da8ed130c372863e9945c2c4aea2a00b5d64b8b0388918dc4c99e0385a42c1e65816595271231afb6bce02e7ee881c39cf4b34ef85f88f767c0484eeb7027ec5c0c9790afe39398f0387c76c463ad3bec1bd17c9896c2247a8ff4eb09a56a1517a29fb3c4f53fdecbd02e0d0165f6c434d4daeb6b2cbd679abab3dbccb6011d98066244b187b968fdfb6692ab1c28139f39a61385e0ddc2ea20070ff9ac57f01d484e10f111d22c443e9fd26336c63acb3afaa5f2f8e55b9d3018219803d2341357692317e33bcfab70f2696866e543467c61e6fdea2a9249fcc9dfce91800711b8d623bf9f422d6dd1ad1d057d8d1dde3910bd60d8107323d7a39fd51dc609f8551a1448f20162d0a055b0583cd4b0396206b0e550e3b7876752e08b09d5590db112e225ffbb7d8ff860c73054ef3f8a7975dd0717f549bd911728b9d3af1fe5c1dfa1b4d2268ac1ebad71a8a370c18aa36a2c4a77c4b14884903c5b82838985d4bd917ba2788053de9b8f70bd512bd1f26e6f1030afb985a892c6e9363b5b098795e2a4cde7234c020bd12ec078040f37cffba85309d2a4364e45b717bef0054e8ca70b762b3a5ab81b067ea5195427cdca8c303c6d00b1ee22b25cfa08978dbd0f94e9fb8a7c5803f3b09702fac9c3c26179ce7204b9564200596de30fe8bed00ef6ab791b62b8e85914c8aa579a6fd92df9e7217296875aaff9f149ce9a4aee50c6923efb31b29966139b917f5d0a1d076531fdf464613a72c554dd5b74b1ad6d76ef01e1f624e4fd79dcbb120a1f360a8ecc3caa88a68a10bd32ed79ad5c68f4439e1c84a93bea16158730ac8466367190c7ecfd851184d4b14fab14fb84958ee47cc7344f7a46b2fc2729ebbdb119918e7b8b9a28297c35acdbe86dad9e690392af56bb33195c44e1a1d0dcfc8e69eea7fa3da7f5c70c536b5f17473939fc0cd3cf62e7e404653336c4d79f9b1bf67b297a557f6b454edc5657babb49287543f4006bbd3330d76107faa78655ee3ba0f1043b6419b36457beb9f5459fcdf69dc6c78a81196de0f62e0860fa9039004e6170101a52589b8bfae321394afffe6e01c5417427fe2e628ec794fb0573e55bdf43c7d9f26e0581ac287ce3ce18df7866ea5254ecdd1400abdc13caf1875e69b2abd173090fcc5a09ae8d8c802cb179a49228a4e7f8d6b86af427f5a7d65ea8c0956cd22e222ec472a46d948e3161f9e23967e65bae012f47cc50ba259c5d3945c75c11337cee3525f8588831cc1efdc5931d2f0a4b1d685436182d6204df2095b51aaa86fefb5a9a27c685666ef270019fc0702c6e61ec630f4b3290c5525b395ce75b07cb66dfbed55cb5f527d853028ba906cd12b4d01bca2935380895cb2cb726e9ac23e86b2a1ddd6d772724efa67b039f167ba6dbd995ff78332ae1c35e880d330f69f9ef85174241ec36df76e25cf0d9199284a6a6d39168b03653129a4e975e8bba01eedcef973b3487582eb32b9c9134b4a13602b5bf0cd2aaebdb1021e2cf37010fd5db1b7273a0759848325088058b7856585d01fe42e2484bd38fae34cc132d200daf318ed27022478ee1fc401441d066a1c7c63e8a03d7420cf6dc5d902652b41573774e8f1db2a02ca07736357756cdcff3a8aa9b48f635ad6ef184075cd26cbb56a5d76feef11108e2e450e3061cd87b3ac103c6690308ef5a25f553a641f8e5836f361afc6af528a2d9cf15f20630e218037e26063331f0c21e4df3b3d14ce69ff3e89419e95d68b69c0c0d3f450feb017a54785c512be40037105724a5a03e9f7656ad37ff261cc4dd233246675481e6f2a623670fd4128810a6085ec0b7c7133ba9e1c14be866306e2cb7fe976a7736f2ecf4d89412664463d063dabf52dc19ad84a3710989c30544e8d602f6fe23b653673e07b3674b05dcbf914d557735c8f7caa41a00ab01b0cd0c6e0029caad1e479f34ba9a892cca39ef551a48884af51be51224a40f81c4d998fe0c96a3346595edacc5b6d878fccdd1f361a60801cda719f700ba13ec7583b705463f688a4192eb8effd779c3599d273b20f42a184e535e9a7656100b20783399acc43878570f744e16de274c674cbfdfe45df6cef610368aa5807826a721a2e06e1c9161cf958d63545fdc26b58740f802515d99602530dd1c53daa5a0c319b2c6ca385e027a1fc9e163a3a64b72b88b6d7be037ae7d7bf62cd8dfcec3747ee5eced1461bd67930af57e6fb710e66edfcc10aecedfc5921ca76e798fe1a674da70f3806d207758cbd2258d62bcb3051adacc64e3818561aae455e382c3999baeffd12ec767a8b30548392066da7bf5c16be482e520259451b09914d736348105ccd50de50736026917b88f4c040dc58358d5b2ed31f929c6cc680afeb6d041e21babed6f92bd2213d748ba71010d9379b4297183da78725dc5ada4119650871b49ac126d5e8627b3c32bfaf5a1ffc1ee3deab83b82862dfd7fe1aabe962ad6811cb4bb2515864c2352f8b69cb1356609b4c95fbb31c35d5b01e6bdc0d031958f0337928770eef5968d531b12e7798ae020fd2111a52167aa80be640054f4efb2b8756b80df9b17277669bd492827ba344df23c31c04e0ea415603341e0c94b248fef8d0733d339695d205efca4d547cf823077bd27f823012142c84dd21868eb0c68be3c8718f985e40a261edefb4d028f170f67116d9a813e87b09d8578bfb44d2990cf769b7ea534559b6d0472b18a9f36d5a2c278d1761c16f170460cdf8205bdc4d8ed28e2d683e85b5661929d2a97cc37588436d1fc6dad4e3c704ba80a8e8b13e81fe95443e42a038f047d9b34776e8e1ea2dbf8f7266b944d50e9fd4c7297a77a49620c845c3486cf833abe6b04129b12492dc4ce924f2cd141fbf5a3c968ded0a86031e8c6dab8f554fe5830d2dfd08de0ea91f3c49eebf5e68337e30889ddd7ca9a6880ac52403ecb52e6ee8abb5428031b0ac78cc9036231f2ecf6f72be442405b2dfb4ed4d11f30d7bcc3467f689bb6771bd18de7864bc686bf1602bb95d8ae04f10e2b3d1367f2545b56006004056e94670559c344f08144138ce59d164d1ab787dbab48c5a708883f6a977636e0540aca618299e730764dc1472ab979e131d33ba40958952423be531b39ef8921afc9947e00dba7c7d36a22d242d3cd0019473b868ced02561745d873f93b1981cbe68e070aa60ed350261c54d5bd81cbe93a81ad17f4a45e7e9c7873280c475d9348cc47b1d5c890827b19ee96573371da8ac40613dc17e4d586e0c85a9dbbb74567a933625378b0e27bc85c1a59b888b3c72abe96ca0feec2522c71881ab8420e64f02797995f01f2c1cdb685fb7ce806ae176b2fcfd7d6f1f1827e31c48d6afaf4a8840fba3216c3a539a51b4dae4c43bf5c2651ffd58515c7ca0e34b9aa5467340cafe9fb0f5aa2f8b950d65a11b33e05a1ef2bdd5804f56bc02bf32d8e7a48eaf0c8c434a4c5347ce0c13189b177693ff9ad429a091406b920c4cfe01643d9a653e36da01ed4007bdce71b0ff69b3ec854a642375ef97d3af4425c1d0153c331dc41281cd37516304290017b9bb5a0b7a00948934d2ffd4cf4a88384237d3eda623ef186212841c1defd869ea85a3a211450afa9a906664feeeb1d60d6edc0057e9bb5fafa4321daf883bb0a326350f582ace0edf4f840dc0617d4aefa84bea38b1effb65b03a277c893003f0dfdb90c18297e01bc31f3fccf42d610c26d3b0e72fa38b4aca5e35c375f07cb8c2e421b5d5773535fc0e2f7354b288308eb4fc7f412e1399e7d249c48b4d855ee9721978f1b2805196fd8c657a970a54712dd71f5fae2a7d0a676c8ceb1ec151fadc08461fc018729f86adb96d72d4b8064679c39f41cb037f2f6e4103b4d8d42a89e9c5837061350458bd61efcaedc7902d6fdf3baabcb064716d743e145a8181d2e57571bf9e528daca974f83f85dd275c2845edadc03be910092040db5574065eab1aa2a6d6650f11520811b361b9dc64e71609a3a40bb0ad2871adfe2e3bb1c1f907f9e1ceda720cdeb0d134524640cfbae3c49638d81bd016d697bd2157dedb75fa800cf1ce3dbb48f1e39185f2cf015a943c65356079dc4d152332cefb0e63143b8e373fd297eb3d1cda8e6299920d67e9be6824b9f8ec24859320a52d38cc447360c42034b68c9bb1ec91085f1ed450bab4261ac16980707ee2b27fd3b47bff2b94ec858c0d6220e4df52b6ce6a0d73215958063553e70e915b0c245d3e2839e9693f2024c8f360082b3131519565448d912a3d93384c704ebab176be582263af0d3d6e012f4e92bbbc846f96b57fcf16c94864856add1c785cef6aac0731f5b595175f9d098835b82acda2da7d01467c41a895bb95e1438dac910f328775fd9b03268d256213edd5b74272765bcd1bac4a872aeab96151823131566281016aa1e494e1f2a4538b67f5e1d2e8a44e273376b7556c0230374534e1a9ed6f32e77afde2e1d5fb186a138901cfd1c0adf0b6c9559541ad736f6f4aa42f19b11175fc3581ba49f40f692edad65539ebf50947eb1ede4dff1d0fbf2f30c82e7a1d70f7e2c05a120d306dd46a1930280b00319cc471774275d0 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/638353.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/638353.txt new file mode 100644 index 000000000..907734174 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/638353.txt @@ -0,0 +1 @@ +6ac2e75f322bb6df0266300dabfa28ed9bd76372277515cf4017a9aa8559fe7a45952b1591a86c59547ec9a85fcabf36c6251f10a714109cd75e70c860deebb87308fcc8c6ac25a0a50849c9a7e4ca76cb5536c7a45f1cbfb8b9c5634c99936852b728e794d8e8ca569f4c727a2a0b5bfddd8b461e338f6039fa25d89258a29205d0b25c61dd20c05b86834a811bbe512aa7b7e35ce2031ce67be8b4ca5337a7735c8533641110402d9016cd1a188ce8a99835696db749c99cc158a702a964856cfa777480d3c5d32e1ad627ae90eb64f17fff7fbb6685d013412977adf3719e4056d162529268dbce7a85213bc06eda362fc99c6c7dcb5655ec0eba7f9ec607694e1ba267e1351e6eb498a5b5e2274b43a4a9858aa638bee5feb54963a127896bef9dc04a81c20c4d6b50eafbe8af8eaa0c400f6ab704b1e92ac8f4523d7d8c55be0eb050163d312fa4cf175fa791b291d0b4233c4ea3f6c06e98a297fb334170c52f520785e13a8f0b7de6fc3425df2bda4ce8ebeec90c1cf4866d1f0c5bc261397e62b8eddf4bc291f6b9a3df03ed1cc61d9dafbbb9aa4a3e91ebb8135e595f74251b3b41f1bac25d4b764ed50a3514400d67178512bfe23ca348713f3a6706c46676701d7719b48b838f8c946c673e00bc21cfea1b900384c0ae6ba4af762a3ae693473e94a8249169811cb59891cf3b42ee2f86441f78c31cbf98f4eb0e0f4b47ced2b6f2f0a518ccbabf1e01abc87829f8b856e3acb458bcb6795567645aeaa1e9597cfbd3b2ffebe99710aae1d70010dc4acc55c23abc3917d7f341e6495065f49827881f0666a5edc293210dc3d35a6dd27a46ce009a58f73fc41be742683e088e24e85150afce33d201d02e1c57257ea188709e250dcddd81a402b45dedf109b0c43e076ed9c755170204099945088019410870c28d0456ae54f68d115e7ec792a933f16f26b784dfed9239844d7a134fb610e7c1d26f9d1b16910906723dfa5901bb5f6fbb91ff91f9555443a35a133cb43e8d451c5400262fe5d840294a3d2ef1ec06716de4d7c6b851903bccb3e779e404e5dd362c63f2fd130a486cf121734c28841066d2a712f1aa4a30cad88aec9306373285912d89d30060091edb2a24603b2b3ef21e014f568d0433842fb41cd1deccb072b56e36c2846f06b09e5a10c538dc001be0bdad670fab1d61852fddf4137269df6bda333698303f5ca1d148174e2072490837a752d7c05c8b7755c132f7efcd6fbca7f6ee6b4d2f48f4bd4ed58f1e3f95d017c5865f34b143b0cb7535366cfe8baedcddfca63b2402966137f76074a8dc0dcb324aba7fd92aa0df2aefd382b1f39e7741a5a5e33b62122fe069ca805d7c7703fc2f336687030d8fd3996b534e250816dd62eb2c726c652f5ab61c222430869a40e1867972d43830aa91282324aebb8f377a32301d9b894b49687170bd8297ac13c7e44ea6d0b978a74f27c75ae9956e6cf8a0e86d1aa75a17c44f322a26062f37a018cef994f20797a6e0fbaf05634a69f047987224ba7d50e1c18a6677eb39fb5f7ffb42e62c2df32d3295a5e0549bb56eb52f5caa7785a68c322ad8c93ca07f6fad08acc8d6ca72302b1e4ccc869a26767afb6e115d2ada0cc4abee41d0a186c28f16f6b88b4d558e76752458619dbf3263380b96d30ce36229e7a5ae95da4491a820dc6dc7030c050aa4a1c764db0a29b8de5c19ebcf83277e3efea56af518b9cd583fdc940b1a3371bbc45b25c794e2a8433b0ea4575b9ab7fd7447e4783c353d3d966d1e9ace9cd9b57ef77b4333ec6c3f44dbe425a4582a339ce50a03d9066c7f39b69400b150ee4cccd5b71cd5ee80ea46f5fcf5c88c069b33417ddda6e825afbd35d450b598525d5d962486a3450e604b8e75fe1c68297f4c8fda9f98a8df00d19ea11e8020992d3ddf6fefe086e2f16e80110144fd8d7ff7e9d999fa037b6465c18bf476802954fe5d5fbcab97a9021cd006d818326d2f1e3343038778cc4e851010c144183f7f01d3e61d5b9f16461789f2bb84459b6eed35cc24a1f90b41bd3590e884b2fe8331a78ceb8e497c3c470fe24c0d5e0f82d536bc4713b9292696b4105d6fb6732aa4e7e4e1406f60211d9a186ad692503b7935a814fd29ea6c659c4c1c1688168c6e8cc7cec03822b17089881dce886b51e1a58accbd6eae2f85226fe3e94469bdf89de9fe8f5ed56c544d95cbb1cb11ecbfd28a1dfbbe3a1af2b40d457732b6a7f8fa3cff3ce97a2472dd7b8ac6bb0095ff7f59ee974df9e35fd400a016ba2818c8d40aaf4a0b64b420f4906e7b456b20e87b79d78e683efe608aa93e0ca5584403fb5a7b47903f63693abdc5f83caa6a64efe2792434a97b3352466648d657fc43810b72e4da9fd46c8b408b0f1cb52c517e2cd9c72e75a2c57e5d6eacba7ff1281085a0ad979f4966add280f61e6598e70596b6653a8d7cc5291cd1da179fdf71cb89d75f1fc3e13597fd8c94c8c8671249074c1b3237ffea716168c52f74824634a2384c1464970fc7cc5ac32a0066f9b8e8ff535a865dd16b06629ab07b712c5c2ca9c6a692335f1c274557a99d092c84e119bc1df7dd4b3ef9b10fce507035d665b3167a99bf3b81dbbd859c6b70c1f90b10fc688081f025b478369397e68f31dde7787bfd2c585800a3bfc478a0b7eec594720fda775ce2188619622caebde63fb368b65ac25e42104dff636785e5a0eaad571f54cd2bba3fb9e56d4645010b2915a636f5d14ee6fb7eaa0583e614a63058c76e06304350c0590e3e43ffa714c8d32c1373455655c79abb0a56a61e2ebfc864e571578c3c2638d4ea797db1a81bf54a542d9604be26c26e37b3873ac2cf6c1becedd17d6528198523f51d01a52a72740738d864ecac7df9a90f7d1012a44dab259dc777ac7aad539d6a8785ebd5b42c67ec15666d2693dc32591a983472fb79e2ae63ace2a4b99c69dd75666e8a642f44373436c6c447c72a7c1a2f48cb29bffb3bb76c1e150da562c598d05dba21072e57053b5429c4f99a8c94a2bde38ba266392b95bd32e4f5366759853b9ca4214d115940f2b0d988eaebd6ae4da8e94e6632bd745b45e9db2173dea3734663a26cfd67590c9c197ad5a7138a28f410e725fecc38de65734e1e54a1c1dbcaa6f9c4569e10740a4bcb8ee887e89248396f44bcce13fae743fcd8f91e145d2123fc3a5a2f6ed6e6fd86fbcf0a5e69d7d44fdddcf5a07490ed32b246c9657b91371883b3fe10dd3e679f070e8ba422e059a46c08453aa0be971e5697c4341cdd42bb843ea83f16abda45ecfb1ec7cf758c6ab67b5027bcdd20c33a7a3c83713c5b5767d044242c6704eab70328209ec6db4602813a06a56ac3f66154dc98b1638a9836b700728aaa183712732583d7d8d8b3063b47c75c8391ed3acfebfd252e1b8828bacd3cdf4beed5ab5da214d64f8e459d9a2ef22a2bcb0796fb9e4547cd1fe67dc22444aba09dffcdb3f6edca97e36e971a2deaf765681cedac61c83d77ee27b1b66447709361e523948a3e5cb1f28a11d4aed10d7404728d325a10b9a85e6ce60e0f60997a253d5cb2e215a7224ab29ee90297203d2a3b58b203d6ccdf4b243a5e2844baac861fcb00ad031f619af519e283f5772aa8dcd508a94cf72510802707f231bc725b4e4c6ed9706ffd66b793b9dab5b8e0a9bd8239817257a282b285de2534266754534ecab4c461df319d8f1633aa01b5c382bce724a0d1dcc8a08b0888532d3060ecd89890078f609dd9ebb30acef0257435bbd0c553df4d21378754002a1aa4e5fefc9a4a0ac0fd8ef633f62a01da0e72ef1be4749dc5bf3aa843e255614431b6a4cd3f9f4233fd15eb1483a5724be3b5e2c7c938fad8b284133e058d61d35c9200c41d7f4878a119aa007f5b4e7455d7f39e4b3a41612e8963efa199116e42cd8fe315fb144778efa266f8184fc9e280afab6e8f45cc93732bcf779b02d3f28f3dd509e76dd1ef007650284e020784fe0ac619226d7b2a986cfbacd9065922db48591dcca237d33b6b98e650bf1127854206f608df5f8b23bc705cb76f08b54289fee8ddc51678de6433754a0886d852f402985d665954a54a58354c5f5cbffa986092e5dbf44dcdc7e7a8e3b452ce93680f3da42fc67daf68094187402d82f105ca5ddafeb0f34b593c907084f016cf2a232a27767e1adfef3d8f304b8f40f9839fa515f43a4e9c9c2c8f32ad2b14494e769c8fd0b5b07ebccb740d2354fe898b72d03a5bf06ba77c758d5258b148462f3e99687205db8a0ac6336a5a5bd9e6fbaf1bac8a2e770edf1a0b6a0c7436f5830c4073b9f506b50dcd94500b62129c965ee6b81c72b980133bb4314f2e54f1da20cc581e3f3baa54be05464bb1711d101e54d8a74cf59ae19bdd607809d9c72dc5c622d1f744ca3212ce5a23110fc9c3bb31ba54bbda7972f1ca1488600269a7ca3f7dbda1e91ab54ec38753563a60017fdcb3ccf8a6330d4de015df47948c30a9a885a6e31bc81e9d118e42d7dbfb62b6dd81fd1557d22784372088842a698889b634f2e21cbd81c6140c6727886992e2f95386b608ac920d5ab21a6e7da4c3e0f4ed24acb1ced4e27fdc6d95525d9b74181bc3e827c1fde0eb65374ff13a3ef60aa9b3d25c5850661317099d9623d9d8d3f70881449390fcc954f6bd81b85bbb313184ef3f3a2f5d6d0c6a61260475ef54c1438ec23eb77335d984f2026fdc20c39a7e49f324ac78443a5e5f0833a345a9452549fc32e3db21224505eef9711d3e8a67836feb9f8f7bce328567945c3bbf41ac32fc84bf4f296d07bf6a3a8320bf519eacd214cb543a371b28d8288e9898a81307834fa8b4b13f4e68041d95e6ee26f9ffb4a0d37616000fb153070445367844211120ee74df3cc75f4c69ff07f6a93bb773e735a530375b360bf8ca955f1e5b7bf5a22b32d9fa9af9ae528b714d226455396413c0e05e1cc622f84a9818d2e34aedf6f101c6c97bf2b5b190d4e5239b17d74ee4294c4d2fc4e1496768fbbbe4b4edda0814608d02765e2f08d0a2746b73048a8c7d07115a2d2187abef664e398071bfd94ffa030492da072537f575e9836f1d6b4f54a8568399ab645955a8e3a2a2df640db96a3c02bbed1eac87abf105a5916b737ea4404e3b02041314ce2593f7e6a9d4b84d866deec1f01878b2f28409a95ce16c634ef1ef8832b45bc0503f68780f0d2b3348af0cde03956903aea995d16c6582dd5c6ced3b331ad78f1c533aae3404e17239d196927afc82a25c4e0a3f40854ee60d5b84a4f8b89b188103b76a635e56583015dfd35ff36093e41e9250021a3cab3218f0f0d95966ef91ae8a6429a4f81abe3d50e360c7a56cf992e46238034ca50bb3cd02d57a9b5b8757b37759b6debe036ce2ce1c1261ecb5a15d58f514653a5fff3f208c283c3a1450757388aacf5ba8f36b971ca19fac34d67a27f6a797d16ff3399d9389e9a41f2f2617769c37a49491929cf5e8371ca87972748f220d8a579bdfcc3dba4c490693fe634ddedabad8ba79b6606d7024cdcf74a3f6b4b50d6c179dc98b82bef966e17dda2307519807682983f4dfa76870b0a994fcd6e8755b6ac6ba4c0a8c86c1612ae32b61704c44914975c0652265cbfebac587108e055c29914355196287621e3c29398754dc395499549506b5f2e7a920f4c87b64645fa02752f16ed04c19162104a64cee11f27067dcfb8572cebc46989168fa1b2f0254c383f8250c682fef5ff24d9708b7d6c854760eab234eceefad18bc963e5f076d7bc3e21f070832233fe0901757adcbe946ea000e6f957f3f5e2b860c68795cbead26ff248b64c4cb1b7c054e275e6c3c7dfc744d721634ec8933baf7b99a0ef4f7960e99528b1d64c374c2640d5b1e043396a093e9b3660123eaaaae01c4030936f41e35d9bb71d9922b9ad0ced1d7fb969494cc4443968ca4e10d7898286bd5c3fd6e7526b90e065ef95a2cd684876d2cdb750c03e22a00c86760bd665e0ef05daa8bdd600a7bb5503ffc4ee7c3e6ca9728d8f52fd08afee372dd997a55108049f25a7311e0fd194f1520f56d7dfdbb81f45aa601772e5e0e647c81200a1fffdafa915dc686d7a39e114502d22a42be693d39af44c0ebe0ddd48ad8456b3cda4fe597113b251811bf489b2e890694ed782d564514f1803ea7ed3e71442540c9830e1c76d7522dea629f71af063b7b0023b143c92f0d8c1898bed5e2adc70e70b84c1eb3cc8edec444cb981e30b8768eeae743ca98d6aa5b84d0c19a8b22656b2ef2742a8a54f3054fc88ade1964625476fe7c665b6016ed55385db7c4461a17d4ca6556f63cb8ee945f4a5ba667f9f9fecdbcdf0d414a2ce56df35329ee4cfcdfcba6514789b1c4b390ba798d3016548d861170ec2d3d508f88e00742230470f81023b507db24bdf8eb7f052d0ab5371f6fbce46694aad2d029c1aec01d3f67118a199fb1a2474e42ab516f2aa79085ddb5365041483440aa689b01881b301282d226cdf49893fd92f69411322e6ce2e11e472dd0e7b907db73d5bd09160a6df5b85cbff7198cb89c25606db711b93ed7b1ab891c5d47daeef2cd1247471913148f6d85f4f16a42c0c8c7c4a4a24bac71602bda34d2f68b02047e5369273bef6cdc935c7fb3225985123de279141c136d31f465c46c2be66a07c53ad15b2ea28ac90717fe1c4421d41563a39bb181615a538cc97e9a4e2c203863f5144058c2f9afe9c6e0ec858aafd675910ffbeb7f58d3402586f6fc53e0653fe59ecb38844d0e2a7e83a1394e9576eb9330f976c901fcf7c3800f891766fde90e9f2707bbd9c3a67fcb48e6f72bed71e8ebf39133451fd33dd5f7b2735347be0adff15e2efae4577c0ade39d7ec00449f0dd67272fef2d843370fa51f7f5b2a2af9ab21fa95e8c524412593d7afe406faecda2c93afb1220dcc78f29a961eff3bea69225c1b7fda96db7f0e63f597ae12073ebc176d399e5092a23bf4da09377494c315b807bd245cf0b5d0768f8c9cd25cfd31f432f81fa59551b4fedf8fe6e52cd9729f8de8f384041dbb9ea86f74d294fed0e740e56c893e2c8a834ca7bd13759207b73147732fc7fd25e730658c1eb6bc6595aef776f90426e88ff4aa099ae941327bea0fddedb9238690060feb9675e0de7132a80f00c677b8a3117afe916b1f5c710763775484e6ac52903febe85d1eb5b8d98706f7711fcea0ea39ea47a31d38ca985614c4af82630cc831f9197a9979f7837764a3d466a150589cd20195612b047a02636588ce96400c01e22db390db342212715aa8107eabe1939e00499229db8fa1b0331fdc4a28421a03c0ff7cc86a422f6abd984f4493ec68994068cf71fa5d0d38e8c512b1303b6d513fa9bc4aa1994b17e4de888d7388da432df57a1d8dc4fc5325de6b661551315aaeac594e3d6e9647299a085a1168e1507e7a75539bd536e67fbfeee1dd0d18205d9cdeb524e0693dad4f82b2b26429a789bf0c4f8721e6f251fde9590ba808c1c033f21f6a77bd3ee640033bd64773b9dd20461c4e77e7cadb22a663aff284788826d23062905a24e8e416fd567ade618d37bc23015cf69983ffbc35e9bf877d47cd6d9f476cecb9b6b85b1af0e7b311d718b75685f56cda99f2ab1ce335a61e4835bb6874c4ff78b3c8e1f49032a704bb219f5582c34e863b284dc282b4ebf43531f6e64b19afeb8f5589f10620380e523dd1295fcd2ad48835b33d752e6948a6a8b85ee2e34a8876ea3408be4102620a33e30e6612bbabc13312327d377b595f7150bf9cd74467528fb0b3f80cd360c73e8134f44ac719895c089d273f529a0a311f00291a9b05d96b156a0ce22143ad1e1a45c61ae6a80a66afe613c690e00a69ed86130c67264e2dc96f11a82d023ccc974a7952256369a2785247fc10cc93c32151e870003a7aa04b94cd4983592f218947081585c41c0d883b6235b75aca421119a1dcf5abdcb11276c7fa8e0db4f27669d57cf23ec7b506f5c03d2b764dd8c5b064a145b928be829f683f1a34588dce3ac88b81724e7c45a048d97725ff370d232b29b6434e4aefb1c3beefbc537b6f13cf876315ba4abb11043eeaff413e3777f751e51f61083ac9039b028019350a481e15d2a2309b11dfa620ef8f2401de722259c0454f876c1bfc00ead7a51c433efbd6ec251ac319cb18089315fa599b10e867b9d20c76bfdf13410cd93dd95c5a3cdb31a4f4d3ca78f0b6c97805b26e5c6e49a326f0910f92d126bc0a4f269c57d842c6ae78eb7f3fbe36885ce1480c71d112e9a7b3a182134ce04c6aed51f93540111d738493cf5dcd44f846685a95db4f8f3750ec55d5ecfd98239aabe49b16133125f80c54e98b0afe8479e3710d683a582abf7e5f163593281fc7fac0c43e869499ec9a41b7209821b81a097847955a6491a39a425864c68d3a07fe3f9d2075e318df64963bb798ea681563cadb9ed47f278cc0fa22533bd346f7cbaec71fcd9aff04c492685d81e9e9a56a0dd9f4b1b774956dd450f4377c38daa67a20250fda290059456d61e38dc38217811b2031e934fa3a710f0157c0ddb3c39d610fcee63bc98f57aeee704cfa3601d3432eb3bce3c2b312ff61e1eb3cf793cafe484deaae5e7313cbe7d19804cf86d2302bd9b8b54c84111e35be1104497bbc5261a895548533934092da49bb514afb2ef3757f9cdd924872bc8f4d17de68d9f96377bf46e2dbe7cbac09ea994ec286681c9652459588ed0bfc32187dfe3711d9490092d3c86bf691245421a6d017aaea64f5f749954c0f1d047e67397a404df532baa7383ade8d6f4995d4e05336eac0f06eddf990bde443c076450ecf957b1247bbfba84e2b065f4bdb36b5e273c62f2681304214938cd3dc89170bb9dd4a650b7ac4ec769b77043299597b2e9cfb0284ba6d176b40a301e9ed7815fc786e01074a4067c923a854302047d8db5928cdc8462d46c56239ca228911ca680f14fd20f5cf57e33da9b83bd455758a34dee51b2b7720e4fccf19df435774405dc9615fbdc560a64243e621d2d8fa2c0d91c8e2c0d8f242c2b18178d30b3ee141888a4fdab296e1c80c8051083d6f7c174bae151bc7afcab020be3077fbc25f0d8fb96216caa73d1cf0b8153f860433f8f69375ba1dc5969b3d8b8b12a27955f0a4921d7180562c2282a75528f7c5bdcba3eea6fc058c016cd285ab4733651668b6355146a86b987c387a11b4e5c0039c2a8ed77e4797501a584c422e72a3ba39d5a2161a9f3ee66a495f6ffcd0296683205cc8754aa2775c8c6c34bb735cc5bb05aa2a0ce21eb5ba2828bc3b4ba70d3771377e92563bfb6cd2154a90cc9fa795ce1069f7ea8f81b7b365fdf55b2fe511f5fd2cfe57876dad6e9c3f0cfa56e06b696922739b88eaa22544748d331d2194bb6d8e6e52d876be8df23dc55dd9b4681be44f2798d3f3d7f640ce00f35bb6e6ad86d3935a361ab51f20b5b61480fbc4be83334cd18bbbda1b3303fdcb80df7ac4fa54fde2d28b3d327297d24786f41e9a3b71530d1335f19bca4212ac5d651619395a2a6e915ba3a68c8f9ec0717dc25ce1676132d5c7309a569b2b9978acae27b1ac1f91d1a35aba6bc107584469776a9714b61e24330164add353958d7897b9779b86cb47eb4827c640f91edaa7f579716f588ffb9cdbc0a44f50e54ee365ec46a93f596ef500db93e283331240e71fdf26ed1ab2baa0b9fdd50d852d98a4c7ba45d2c77ab39904dac8e91cd9e406115c112983c9655b18a845b2d748540a343161bf3d4c2eca81f983dfe3672bbd42c066fa5fd7d275d2f3e778cdb8dae1065fa0959ca2551d18cbec5595ec26fa6c253ff746d3bda7897861f9bbbed40deab0ee37a09718c40c668c764acfeeb646a220e75b1d0e45ef3941033e1ebb2a8f8554b5d70c209d123e9c7d01d16bc39bb70cec2aadcfec5f00409ffd5793a8365511ede393bb1192b00a320630d88ae88656468231d3cb8ee8612f389aadf09ce6c592e8320e7e7cafc997bf2776d529212d8d3a678386c5d9bbf4147ca3ab9a5d2fa32bb48b9d74e7e494d1a23a490598480e9cd54deb9ea6d4f7cd518eee3f924c099fe9ea6e74812f6c795bf5a4e51051eba9ad453594f20109e5541444605f8c0ee8489b9a7213a7676c329cf6e07915a6cdd99f3ebb65af1f6af85a3f7a5b468afa1f5c403e59cc04cf2fcf444fd63f66b68155da8e72cc60f5a7b9cc117505a4cf669d25376e210ce14b980e3ec258ce12533faeb12778466f44e870fcabfdabab58d8a48f172be8bb6af760fed70fce1a3e6c41c4e8c42e528767f62e126a881971ec542638534c0d86eb9110264ace0a06002155ac5735223b6da1684158ef0218b6e28b4551c4860ed8eec8874c26cc08acc5de4b53ff86a741909ba33dd29e50445e2722fbc5e8df936abd1e2e7713850d049e7cc2f9cbe4d2a976c7b0926f53f7c90c016750322f09002f452d82ddd235ddd6e7393cc2f1bca88f36962806604adb8702939f43e28c2b387d4658705bb40162ae4f2c60798446a4f8a8cb093240c34baa45358de4fae27a11130c7939e3b0455452746af12b433912c156ddd38fadee103f48c2e5eba486a51ecd099df1edb9d7af401bfc952544f30e58c49e782412555333a6f136a50a0e5a2e7cb77885731db11a290a0b774d184795ae4b36472a5b55571a8590e74e7570d0ce5d405e5cd32572a151142e55587bf90071584f1fe0bfbb5722742f97c30a2c78f2b2bb91dcabc2985cda0062ff083985d69f72d4c4e78dbf4d50833bf615c639d3a609062580ce9a37b934cda06523ab1c0c86330e480b9aa9db31acb04beba7a4376f04dd202803777c7cbd065dfb53ebda651034b2671698befc7d1645dedadc0da477697029b325377a2ca6dbb87bcb3b4f024448a13338b5a9d9391a6855d25f17b0d5a8e93793667deda41744df5fd90d891a60521fea5f2e84c86e5182470794e8089c0f3711f991748ec46b8236d7da0650a1d36df14c9730014400bc878266267e67217fae3ed5ced47678263a3e9d5d7df58cd4713fcd653d3f8b77fd329236ca6e52adb697867ab027b1f3a721e1eb5a768e60a245e1156f431924814cb302e15f64c2dddc98d28ed759b26a89988ac9d96ab6523901586a0dd6080bc0ef6ce5d853a2ab9c4f8056e62cbe15ac90c1354f768d07215b4f9a64b7b930d11b62665b91df2a451eb9cd731000d1cfbe7417a9671f79bdd0d06c02684fe5addcf8033ac070c2e0216a75efe518645e4ca4fe3130e819a8b8e1be04a38e9825860aa986812debecafe77ccb4e4b79013affcc600515670d44f8164b0451e16953f996396dbb4df7e73229564606f85ee95b5512b230d21ccd5b9528fccae5125117572cc0781e25af3783e9c42aa759613c7d4234e45fed9b24385aab694766b0c8f8173edb549baa14f8ef0d666434cd93d615bd36e142429b0e30305579221d9ea221ff95566c29ea14f69423b4bf9a71876940eb28b97a5a9d4944995d1ac5afdeb247e504739a29793d6cef1a362f4aac8c8804fface766560f2358ca9ffbdefd1124d40277131f920a7b24e92160f730b12b47405bdafd0d2772ab1bb4e24de52895d1cc5ec5b69787b5b26a9b09026790d56d5dae2b839a6453cc9b9681736be93965cd4a4ad4eab04ee41f983a3d663f974c31794ae1780cb82f1bf4edbbf5a1452c445e845d6799aed8dbe617d3b840ee12f45403f55f51b638a46ffb4fe1860c51a3157af709cc9a4974580be1be78f4594821b90e045f184688b73291bd9b895227c8373e6913b906dfbc6c5afbbd47d4ef83af864917ce163d679b0925abb3e56f53d33bb4af0aac40795284f5aa7dfcb283cf0e4536c306397cd71adc32605c6e1dd2cd82a1f8b0f47b923a8c711b562414a4da046dbf9edb17fc5b9854f97c2e67baebb930bb68cb96c40c7d3f1a8c3a3e1be976573575dedfef984866640eb657b88670f9940033e9abbe1ddf66bf5b213d0bba69ae1985ae5410e7b6430ba7ebca7a993de2d73e18fb211313da568d56a0552f55fc1baeb1396bfe3dcd4c1625e34690a89a43ad8ba1d0a34adef13cf342351b542615ff3494b56d7b8e1eb16b7dd38977eee3d64515520527eca87d2335238206742a265b6a6ffcf5a38f1acc8384b0aa35bb1051ece42e63b076d52d624a8533c6c4dc43de368cac4f0d75222e78857e18cbe861f9d8e4a7a8db71b0bf28a01d4c68ea36b9be647906b9c263aeb372a84fe73e73293421473a5fa6e7da01b66aab1902ee766ea5820492418370c463557a935c1439f269f359da383e9aa9883efa5d72590938b12aae8046067de7157267a97d334764e5bb256b798f7a4bea28194a44eed338071d5f9985ce0debfba5385442603a2ebf44a788499a0c16636d438ef89b4e37a44fdea94844f8eb1467ef07e72ea05e4fa07d9657b9e2052d1c54b1ff89589f166db3ebd227dde40a36d8e929d6370bf6acb96d891a0a09fe29425509994a68f3f29b13c3e439216fbf5f9a081222b17efe8b2774246d9ede4147a13f0a0658bd3eacba6328e99008c7fa9986842a3659aa4abff0b18641e133b9043f539bdd112c09284eef49a706cfa2f1649f44c16f5f49607cc3c4d5186b089950be545bf2cbdc2785585fb2af34cd7d99574d4787b12a87cbd060dec46f6e210e983084aab3f15a94aea52674da30596acb215238e691646c4845d65256f909098bd2ee99ed6814f5fa14c35690d6974743ae1bdd668ca3a0e8c535af39a813e154e8ef778ca02b088e09c6175166018e7ee9a90b72cbd5f99fdb723a63e05b6216d13490e68b57c7c5cdda42dc1730f72091d3f6a35e0948fcaf7040004550e80c11b22dbe7ef7c999ad8f20af0a97de2ad710f21b8d9241a37081f61fa01d70de5deb35bd0addf606486f05ae427efac8225c45d4c5f21fdd9cdd2b0459bef71113515fae49330c077ccfbc490d8abe82beb9da7632485975e8d11440c767fc5dc9bb98dff600c409c0121cba457ba8275cd8c05b958158202e852a0a629e82d0cb5120631157d27d463340799c677a6c5ed9ae34aa491608e434f530182317c6f2960463cc234d3508e73fc14031812e1fdad53ebbd5e58724a70c017c4e738380cd3aa71b6b72c514254fc313deb4d3f972a2cad5c1ee5f387e1f2f4ca86c64c3036f3befe964c7720229d2215f7a501fced9dbb18178f32853ed2ffe37d1ad252c951b3f6c07f458efe9f73b175336af52c790a509bbf4f03c65300483890f95d7a3cfc61d9ebba2f6155b220faba91699c62862e31633e61cb038cf9c6b31ca85072f347ff7b10d9af89fbfb28efbac40fe54e1f4e58c47997a42940e9d4aa2f33737ea8a76a5327820704f1e3c83cd6743dee3da1496f0f8133f815467e0144f437e3935a4a4fc88257877ab43ee253651f24756a799deded0079b0bf2c94e7cf13ed16b46e144bce7b54e7ae4857acbed0a33f3f366890a3818a6deee43bdaadcec6db309d4d5be06633f739f7b780e2b212be641f0ed9b650dd90cc67cbbabf1137846fbfd7457f3a84f917619bdc36bf86b1c6eecbc2dbc11125c0d03da05b2b99a4d97653abfdc8a816ded58e0ab1d3ff1b614fcf6d37b6df4706c2a42cbcd30e755424c4ed0c9786a3fc84e9357027d2f97d001860a1c17f0924dbd7880dee742e43859f5d005227e27b5602da5d34ce7fb363603b48f3a5d33c63ff1177b432ce2165dcca607ad7f4cf69c648461d8452d352f242c983274016bf01d4a171b5d45e1a9a12976a45c888072f80532cccfae33099aa26e3b641e3e6ec838b06c7c2cdada6eec1399c289594a3eaf521b5250e1c163cc243d17007257ef8ad08a005b432747a41480f921ff56a8dd68de52f111b96f6832149648263bb1316384aae8ac4b5d92b01c03a24b4d6daee3a17a5f706e6937820cb217693b4934cba443fa149e2cd3e71998ccc1a7d64f5301df97d5dc2f6f484d49bb49510d12eb104586b6f5b5c3030b7e6809d09af59f91306ab5a0e6761a3b9439071e0b0000fc3e025549d700ab816033d0f471d50b2d4c5563661e1d5a1c6d12697655e65a4eb0abc03cfe66ed5b8027b1be69f5c181f2cc57e6e2f5d802894918723c635066bbb62f1a78fb1d2538e203543cf4fcd6c37d06384472e3247267b81cf825ed6ea21f49d4757809cb06654fe33fd323879459920cbc39862af3e8116c262f34056b373652339d01eff1fa579e686f75061c06b2a25facec5ae56b1af78a75792fa24645ff175449c2c6e7255e4384272295ef84c87666e5721fe2665cca57f00e4e6b56ce79488cf65baea0c507bf6c9cd5093d159ff20040d464d2802cce29fa75ca978241919ccb37480ccd513ad4e32340032b1fe749660f98cdb4f43f170557fb477b8d6e3dd54a579b805dd5b701d036f92de740d02f742f0a9445c692144ab8cd13f1ec7264f6ffbc7a3d841fdaccb2108c464bae18ac77546258443cf976d5538e12b162aec6380982ad3a5bd082bab57ed20b9222d5d10661ba3b5a78e7b4d09174f4511755fdee19b52fcfcbc2f1477f9c98843b0cf0a28012d2b4068c2bea859c6b07b9aeb55406238a7278a36dd87aab45cd1ea7559351bf042a6ae21953dcd7713d64bd33c67b0c97fb6d197497e080e8076b05112c204ded4d473a34be7e4efd6846b804b54c59ec7d377bd7c0cd07c6416dc9e8d798f16c89b09450bcf4fbf0157c328c657bd25b2425999a92457ce4cf310f619e25482be3b793b93ae9df0a54903e6231ab5fe09aa8b33b5ddfa707165b90a4fdebf816e5f7d5fc179ee8580266a22fb94711a8fd0b6d2a7b5eed59ff11428e4c85ac4872c2bdb1c9e378bd7c3351fc121a146baf08008bfb3811e9d66184eb075718d509fa1dc54b727bce5ce970c338466dca0eb064fd0ff207321b366ba9422633e40632ee3bb5fdc7d07a32709187f6a578f82a0fa02589c168376c58b0bfc74b1e1e0f1172b8bd8bca47e42819eacec5609391019ae8970ba74b00b1b26a98efd8e9b3334d0b6543210bb1c5942cce6859239ad7f574f6344caa533a7febe0f5ce320f2c4a416f1dbaef348095cd5717ce7e801318571a9408281c73c348305bb49cb0fcef8b44747f165b0281dea3a0fca73c0e87b71b06b2b224c442127c3605978ad4c709c6e880d7e7a76260e8c9570e31edb132494df88e3c42e59864851e21e18b0a54459539a239a4f3c058a2f41a73beb5a8faaf20f1605cd8b0dd7ac49b0d211e4d89a47afe34bdf30c4694cf36e7efae59b4fbff0132cdc0587f66e4fe0d3e08260c0e789a61aeba734927dad537f101b89368731a3dd2554c75cb64f7461ec01bbaea2e569ceff0387c0112a0788fd39879bce58128b68a3278a1c2dae22c98e2d1ee11993c175da3d1b23a9265cb91949b5e688d684c36ae4e3608b67bbe885a9283ba78a9ebdf60065935f65fd950755d66376022246aa679c5a5eaaae6b0353eba40420637597f080b6816d2bcc34db34b3a4d702ce6de4aa6d5356586cc64f0d47f8d5a1097022501b43004a134cda92686f75caae8e6936d34a0f7a3133ebd90376f8183b1a4bfb38e4c71bd1a5373dd69711674498cc522275e1e275bbfac35139f18bba2ff40dafdcbb6fd57d6c42b964e21fa655f324889a59873e7163e5853fc470a2fa0092989721fbd620479ec058f3988d1e8e9c4ace11ecc296a231aaeb03fc18b22b1d494268a2d45c898e957eb296a4e9f30b010d5cb089a10bd56ab4073855fe3db5f0455beb29ed876c8fb6020c88b7013b9b3662e038c0fbcac1135a6286e68ee166d8ae542742759301fe0003a18943ad6debc9a86bc065ec50c401bc32be04717545af701c5cac35a1a6f13aa557051e990d890aa79da9995f8dd908583b3f99c6f24058918e797a6c56d57321b3a77089324c3caeae7594434a97b2e4459626b1293e26cb9abaf9e3b7403df81b428c750a84edab997661a9c3bd6dda4c218902e640bb64723a9ef6fb962ee5505e48bcd6c6f28260d9bce0b44d1bea4313edfc20e0e20ea9626a8e94d232fffbfc924cef3310aea2cc7865b9a9e80d57c0b1e75343133e4828d52f9af0222006d5cd93107f4e12d8de8eb290334e06b11fcaf1cb837db5e5eb0e65b0e48182c4678aa505a2165ccfe610cdfdbbf498ab1821c6004d3e91c1b7d81f1f55a9739b840fa1075cdc0e21e3444474a4816dd412dfb535c42b5490ac17a243b2cc303062d458f60b36d3998ef906cfc59412da599555cf6907f7ea66ddffdb83ae01deffc4f5f300d3ca85d4836204802b33fce17d2a6e3e61acf15bdae356131e46cd8ba11e782f4e2a1c20fdf859639bcae965331fc2be84610b1562197ab3f186ebc11735a1ec3e4e40d9ec75b63f33e96b169f0daeeaaf1a1db425bcabd4a8707135424ab6409cbb0f183e1553b7739fa0ddd280f311d0f0386e20efa630e2c2d419e8d983561ad7008c63b9ce0f1f05dbd99cbbdb8f216c1be2f83e05c06bff96e568881d3cb9ab20b1c929392aa1a215da504bbd828be3f24872c6fd80017c3004cb58d0e69c82364e7d4f4e22e02acb3cf3e7381446cb5b87021b5a9118916108f71267f8945b587fbacd8743bdfad8639d02766319637304f791ee317eb227bd63069db3f35d00d9980a735cb20901e88e1768c75ae3f993080cf966071fd9c9286069f16e0b3469d150a7afe9d556527e1e033d5bfc6f4c7f1974e0ff8b4d2bb373aa5bf8d195d9b10bb0c09308c13b13366a369d430b320a7764c3d6c82e96618d111a13d60e8672f9920c0bd38a749b39ed110d139ae6ad9336a2a9cb01b161ad0e9e7fdb21888d969a3b40d432d6df16cdefc65e2a525d0d89b438259201fad2ca7a31f547d0bfb18bf8e93adc662074ba84335c7e05e154b0e09cebeeb217f0a1cfbb11517377e0ea4a928d6b772f36982de8944e89efc518d03f23af37c614e68d21747ba9af08143db3819faca75aec175713e8185e8ce3a2909fe4146493fe678fd222d67500b9a7d5823936b24f5f1023da2157f82b69c1f77b1ff61c85cdf3146110f5cf96893c8b0933d3ebebb8274e7a558e88aaa9c0163228db6b0e4452406f1a805dc39fbb1fa5d746d02805cedf9c3a901b1e745293a02fb86a91eb16823310ab001263ebc2a64e8057802ba745a0e79e372faf66606ca2d47ddea6380ddffc7844ae59123c31fb618beb0ab2b47a9d7ec3a5dba29b391d0e0c0f290c16719fbf2ebed9832ac82aa4175d9bd61d3561dfb16652d6cf64794ca238ebae2ae95d4c9c47f878b60aad82b967fc725b9451bf51db2f8489c1c235c1ac92f29a870015fefc8a0d8bc62b4fea5450932d833aae794e36f2062e60c3f7ef390c9931d924c34bad1912bbbf07e5255f98f060eaaa8ea05d519b82b3bc4108959946a75356bc3041cfbcab86e8f8feaf92fa4ceb4e4529dc811032c04829f68a91af84bc8dbd5526d82cb4dc51d649285bf0dc4ea57020cbf5f4fab0fd0b073331ab480e1200aa2977ff35cc4a9a38474bebe79285539c56f46ecb2e4d6b17cd72ff16145cd774a7f338aceb0153e2bc3b6c5b70d0264a3de376d4cb60d3bb5ed0fa526f945fb0ad6c71c96b239050d71c14cd94a905a8c7f458501cc6b5715216accc29aa9d08259794b076925279bf718778e00e445cb4f5097ec64040d686a3806279333bf5403fe6ad8bf5287614043ddcf6f00584db30d3d7d8d58eccb244483037706725a9cae2dc60dfecf84b5e87bfc52edb72b2c073c856ff96e965375ad8eddb82e0eff1b7f4d7dba1f42828821800deada87d44f30d8b4079fd6c80e0ffa98f7e255aa9ab631575e7b5f4fcaeaf3f731854b11070960c904ee678d72e977f38e5cb73e892c0dfd412a5133ea2baa2de8d51a9813ec7aafa42d4c786acc9d2d0368b4a89a42f007f3094a8de2d7c93e0fef4d4212e246212278d50f0d3461ae7e295fcbce420659c68b40dcf73fe48097dd36c56aabb6bf6656973d3f76da229104779f51a18c15f3b48183c784c7a2a5dc3ff74e3ca3eaa516e9f451ea06abb150a189659b53ead8cca68d208fde1faaf97e4243dc35430de68b1e47fa1af9e1a41e3325045ed100aaf6e05c3cb935b9d52b966f9205593a2560cbd4d0b799a30cb213592e73436b8e738a01f1cd40e37fd4322d503887ce71ffda278bccfee3ffe79c51caaba22cca4cf0b45acda53bda509172d1cb7b1bf46c60830200ce5ce4870e5d25536251b29ed934f7509680ec50bc5882143dc33adaae456b3b704f6a92a2200886e1688fef15213fb992b8674d934dae3904070f01634909c596441c7f3521c81ddd4e484548712814a8e77a21f248549d2a1417b870ea1d694cf296ba1ce4a0820ed9d32e5571baad5d46e9a5d76cd316b0d4f92137c7f0012f35a2148b050f5be3a4602bd1a338dd53496728ef2b2e1f98d57f03f01211b2336df88a4461b8ddeca3889bbaa872df49bc3bc43a4d716eb3057679079431a7a4fb36c6a5977a0679789ba7abd3ad7f43fe916f674f4a6c2bff13d362eb3277f9c367cd7c47f90576c0007d1a517e5d78d37b4436480ba81ab7613133db86d6700f592682d8f988b255d147b33cc1d9b5a83c4a415dc607a91344060f1d5985ec18e43ffa44170e0af1a58553a6172fd8d96637a9391796aa66ae62f545dfe35caa5b6389488b36027d02e4cd30adf556bf603a732ba6fe3185074a13c373b8de5875cf67ce74e5d8801d3cc692f200bc902db4973e625d0f65abb70bd2351d849d577666573d05279d6eaef48321d4146ac313ca10cd830ddae9bb14cb09a31c271cba616a29da0e266a08bafe430d9926021b8b5cda86c972a4fc78ac1e7753b8be6464da43827e2787c3aafb49291d2f53371f3ca0b76628669cbc59dbf7b5eeb995987c730d24f08f0882b1709f2eb987bd8a44e05ae59309ac546e3297bb2491e0cb16847bc2e5e84323dc746d401322625509dc9d8b03ca2820c0ff1dcad55841af53a19993f7ba9ac2d82383c3e9b3831c3f9257f9fed9ed6a952b4f0d94e2b3e0309a9b897a84739b3ee3ae7d3eedaa5e2a7d8cc69df5ae784de40c3121f1a50bec193b2bee55c043362f05b45e74880f0176d6165faa5b72a4c1b5cb514185e42a014539044c8b659d6962dd6fa1e0aa4ceb2f2013d5e0a594810b10bd70b044788c29514d950aaf86d045d01b6414b15cd7d4ce40a3476afd941f6f6f4f27fbd6027df5c450d30d7e3d74fca5aa4d2a614a54d1123279a789039e5fd0c4f16680593697444df4e8332b9eed734bae796cb3ab68b4d68bca9fe94b504c474ac1c9f7563c36d46faae88ef0f65e92a853045ca05eb0808138f3df73f419f4106eabae9b23805778eebf4feb5637f6734a71229baec8f2cbcb3c71e1e0d163e725cf4ecd0885942ecda6028090a6bed62616870b6571ce82792f71b3b64ae385069302a279be90bd2bac1d61753df816ce63fc53c2fe0a12808e41745f418f62b48aa56426b42558f1e3893cc94530dce813fe010df522ffa38a3464087e510dfa0f2564fc20b543f86633b7297af4768631ae3c5e58c2318910e3e23efab792da0062e86decadea1e9a91dc506dcd2de9534d98923fd569e632f78e5d51e1297336b6673881ef1cf1f74d55f878dedc271754dcf44fbf15ac199d700e9bea70b5f6fc82cf271ce2fdad40afa7ed8e707b664116ee9851d03ca3a6368268778313aa850fcecc6a0cc8c687bc28d73382595ae397c632b3b38131d677e6d521fd7fdb33a51425b04f18c6a4bd4c5c33ee870f9f6b50ba3b176d05faf92f17d3128a0c4aff2e3b84b4c36ed36e2dd486652f691e2a306ec199f58287fcaf88448476d6d48926db117b003ff803d49a6e509605bf6776f48215a8cd97fd0e686cc0dc9e95c0bae11d7f7d046cd221d865bf9807fec7365e65f49eb92836f265dedb8b26a906ab9e5a75183629ecc3fd0c34d343996eb48bfc3a13ec1c0832427226f56d06ef7fdbf3421aed961a7f901dab5f202a64575b0d20798c6605c32b5bec088ad0edaf88d2dafe2743a8d511662e8e6d23ae7f0dcefe9c77b3b97f89c72b69a604b5d00c39fd71b0b9626f35315454143f7dc92d5508c02add88e0b328313821cb26fd7f6be0cf2f4f5486a1e40f675ac87e7ece5f2c0c832b21218d09db2c98405e5145aa918236edaf361ba37ccb147f72ba47a51e91156cabfdcfc1ee872933105f165be9887668c186c84e691b2d082ce9b5630e0095d3bb9a320936e0e36f9eda0f81de5ed6c901fb546d39af1491628c084135202c3292286f566ad31144abf64b00c0a12e996cf09dd39b8a1c5e78fa74344d81d6e201052b7a889e4cb922ac90c110e86d6556b9b5db7bd91877ffd2adacdc6618435d39370b15365a4cdf0eecabe088ac3414645b6a9a9747e423e7e6492b8c07d810ad6c6b13e7b940733217e202386ce02071da29dc9053014f6590e82e8432d08313707e72b7be762456a3994f419415fbc434a3c7c04eaba1b7f16a8c29834a06bfee243414599a25e855e7bda33ee8627274f704d800bebef22d677eaca663fefddcc5c9c4e476afa5e03d15a685bc05699d8ee73c26cbd791431aa91328f19e856c63efbb55b80b935eba293217b6e2119b3b7abb30e055bf1ced01e6e176dea0591bebcda3145ea5e0d9f80cdc67752d80d354280641dc0ad8e56c4dcf52965df1486fc2df1f4166f1c7439b51609b27f3e38c695bbb24921ba3d3d1e2e6fe1fae751fd7aaae32ac3bcb1ad24af56f070dd4bca369efefb4326a2367595723723f1ebd47103627a137396887f3b0022c1c87b69d62a2bc4762bf63e0e0d581b97ccfab8583b0bae4f64d919b7a613aaf9136028046f4dd32b7fb75d9722323fdd4bba8be998f0d66e1004253d92b73c0d15f1a282c32b12c0e9d849b35a69e2e89fcbba64711e9db4f51fbf2d8e54556c888fe8036c108bba3dbf3705f81660c057f2a81aae582f3bd7c7561a7036ebada9de96e722170510aa264afb1b25905a336512a7b97771dd9f3418942d38a85ba22f6732ab97299f6b6550aedde558bef4f29933f8a86d87bc6d1ca038015e2266698f12d31c564a8486b327c19ab9c193ca454415cecf25033196f14623aac0c24e59f0b9e566f47bae2715f1a2dc631ddafb8eab15bcf54e0698c608e360f558ed9266d62536611959ea4aa1eb9e307fb242b6190846cdbad8204136ee44db8599a2653cc0ef810f4689a98aa781eba8184f931a81e8887fa9dd9970a9035aec9789f1be73b4638c41a3787e8ebea64af260a5237989c280995f5c4f4c1c38cd567db2e3cef7ee8c91e3e132c0b5b4ad56ad8d847e4e0a8885c6e88d27e3f5ea3403961dbb1e6db3264832c50f39395f4a0c51898bdf92b42a3b666ec44e9d957345e2e9d5128cb82e41a6e6e805269ead47b1e482e013cb74938d8514067611837f72980669e085cade67376890e6e9ba6fb250458d9a9ad4a9696c2909cd3ff4a7126b8a62e15b94d48e33f3f0d8fe539ab367694333a7d2cde4bdc5ff6cc0c03e542454e0e842183b7fa5e6220725f50db3644dfc96331405ed2ab83e46115166e3eb8dbb6bc72e94728bdca2b03f3ad4efb4a8ae35ef34da27c7cd25b920dae266923fc0b285450ddcbf332445d2dfaeb893d7603d1bf606ab973ec97e93363946f99dca2dd5a5baf1517847d5e0672ceddcf95be735fb69439856c080a731712597b802a46d83d1d5385887f0eb46fa4fe2291144a6c0c3c6445b4937cf129db184c788ac807da1c5c5d453e415229b271aba4d0fcd3e4f7333b318e61fb1bd044c176f66a5a452ba32250dd1e0f48529acfb2a3749746dffcadd42023ff5de03940359a5e55266c37320ced2afeed64134e34d3a195da3318c7f82105cdbe4b01c3c30ea8cceeca4921f170cf33713a41d6ee23f06d7df8928c7d45532391060178ba78778825efbc49a1d9646ab3bff09024b2e6ed45823815c171338f22ac194bb77693e98aa3abdc2a94edad6121e215211e14c15c8d8ec5d4912f0789b83560536f7434c48fa5f55995dafb225985bd7372de2a789eab429ea4d0fe40135eca002cd33c809c25b5becd4630b525db920a568a0da59ab6fa53bab0bbcae41c35cc7a0bbbb1385bbf8cf6776ba474332ce6cd047849199b1a3a5b85da0dbd40cb1b8a93b7034e3cad142869ae8df4dd3e29216c96d6d21a912903c5d55e786bdafc8caecef7d243ab3198ef4d5ca0cfea4899eb7a69a003962572546b476c177094ff8e66ddc37cfb808a6541e5c267327ef585fb67c6d055a121985c47c4521981d8feb8a74bb4282306f10d3d2aef7db2a1c82eb8d331cef3cc05097e33252f66cbe5270a3f8918de36e86898eb7ce8520649e241d62db960dee9bce6580d6dfdac4f3779757032e0a64dcdd6155fb81d2318eb724a36b2f76642f0c7ad330f4f16a688a9f6ff405c5b2018adacbb2a7f5150ffa5517dd22c04a2abfca32c763b2458365d4c38039d77ee2b814849de11e0c112db0076c721ce5aca32604b6bcb4c4fda43be895d8745c7c1c74246fb896a2dfb9d7d2fca904f1dbd131606d43d29d703b5b894fc3a58382eec2f2a7d095c30664c12aa057d7c22c18e51665f882810080f0b93112d1b2076a2a16e6f2b126bfefd024462630ae9e1b30a140b9e6b4442e7de5929f97db92934f6d61b4e0218a3a036a6ac59e75c2b2d440ef21893d39b999bd721e8cfc6669cb80da6f45becfdf98aea18a580d8452b703254ff746de6d084eeb9a85330b6d0984ac0e5d4970d01613ef1683c3d1260383fdd3aee42e6cf605e3f68e72a21e0be5e25893af9a6368027bc4359eea026ae6e135a2362a167d0d9b014937bc9b2257401e2d17235b548565c7eea5a6275f54d754f65207521a612a08bd774d50af604b7ce57349342cd96ff5f72b210b7da37494341e9dfa6fe01db0316fd25a3cc9bc303b44635428ba6167a02b90804fa0786a85ded43edac4e972ec9f7f832715fd615a5311182c07af0cf603fef088d22696adafca8c991c2e430b0d0dbd0189914e4ba65952733e829adc5a9e5ca9e1479cedcb68e26a8a821505f79bd8ca4eef9779edac937cb2ebc0e44261d41971bb5e811272542608d864c2bc09892527391f0c16349be6c9a097c0c21f30d68389a3c514119bc3b05cce47a001141b268da8171bbd2ba040461c66d80bd1e735649025c6eeccd73da81d4f0c542e1fbe3d16481a5bbe42c27ad657367112dae494b9521bba10913676f6e32f5924c33ba8194c90772819e990ea55e7fccf2ce061799b883c3ef21b11d6ea3ed7feffcdf584f9782ce44fa33dce6206135282009c68861158d170c82ca445a36d0e07fa8f6ae8523c8091180473a101d13840a13fc00cc20c9aa3d72385b43070e838b0054d45d4a507d216e2952a3abcfc6084f8b3cff5421f27ee1d23edd0f8c4ff17045b694e327dc1f3e5dc7ed5e203789560963a5822ae14088898a54e0fca216738e7969938790cc7b595cc601514cdc00e3ee7ac4028d07f2260e337dd6bb1173d7ed354aa5614f0532cbc529c365b610f1f9dbefb3e932babc6d7525e952935b5893cd9acb5c6fce92f4feaefd9fa95a3281533980add854bbcb6aac6afa7bd08eb780f0edde0fc58ab4c917dc977238b6072fb7015f55f311b8f8e00c4c5c617c7352173b0b2399f8137baca99a0c71a94c9af894e14548a4cb42a44e60701efd26d55147c02d1f83e60b030a388313a7f5867fa756261c209b70a8272c117f53dbe359822eedb9266731356f37c1515d15a13e9ecaa5e1284282cee2fc1e4e7b566db9f4c9350013bcd64b83960e2d4c2ad2b78de119a10dceb8af30c0a51f952ef0ca9cbaa814423ae827a36f390f276608c62b6056c3140d761acda8af5fed82fc05e955223431f1a9785fbdfc174a6404cd3385c36ae1e6a8ef7907acd91afaf8c9678299023e455f79ebc289440e2187e8d282884eac0b95672ae1479ce5b8a510fc11c52ce2e05ff9bea97a59f5b32ff283429c9230d00179b05ad61c15a21251022c80dc9a461da89e0048264ebf5923dddb97727b52539b887af97b07994bfb3985c0ee6ab0a07203a0450b80b72412f8778a41568ff7b72bf64f9b9ef04d3cc24bff91d133ce52eb7a664386d923bd5372791efb81dcb523ec6b1a52649e65fabbe649bcae772333704d296e2568f8085ba28c13e9f51c9d188b1ec9ae3dde54efa403bd862d4b546206603933cc15539fe999b2c63725d25a3c851ba1316bc437bf5306813da7ad77fc3071e71e45707bc748a76b1ff9c4f8b79747665e1ff51530b0a1673d8100f4fc26b88892689e5f2a21a416954b4ad43a7015109afea7e4352c7528ec768113ce5d9d4520c805e33bfa45d5afa4ce1795fca97ce65e13176ca49528d98453b4f614ce9a3de8b0654942843b970b42defaf99b73454a8ef3bfb586c635e22033122471eaf6dba0fb402a523e2e5d6d337b99c7f53e85f0f5e630c966c4ee05288a26ab07c6e09703ee02ca8a5f7d2b030dffff726f5904d2a22af44086c13fd4290a2a8234df935cc4977ee9d3089ede18ad154368fa7cbf083718d78bb7f7146e0cfb5c0f70b2c55800c04eb31acfdf14aa049fd5e921cf234376d5f628eb59d22bff3a1269f4711b1093d30570ef2240ed8232e97cac131f2deba01608b40e01502db1903d30c2ed2cdc3fedba6083cdc049a159be5cdfd3a631be871b08bb7851457957cff3f94c60a7d956fd5625ed1e6772b6e6178e749e466f2e3f26b5b20fecd48f484e4fc41d08eebb42806633ae5ce9a96e273003194b0be8c6aac7fb014b5085cae0e42737fafa72aadbcecf1a6d508c6389722f43c735e39d0dfcbb080ee9e4f29d91992eac27989085455313bd5cce8e2846b9e5d68b8d9aca181c18e641a01e6f0945e3e3cbd1767e2de980397167b36e7da82ca5eebeec6f2d7f6e5ced6eea7953b3aa87af16cbc060ada0acfff2419c87dc948e2d4442d786b741e17a9de646240c5c6a1d75191f73861a1ee5951091363131dc96dee88146522b23d400985b6a7666acaafaac83a015b96bfa8458359a493967b1a4054c8d145f34775607b65c66f8c87347c0048e7c4837fb082823a3cc05f9e213ec281b7735710d2ea5b967b76ac1455c3516afa6c421605e45d18f871e0bacbe78ac8a4018ce26397317faf6ef4a19c07e9b0a12adabd204d1a2eb40d82513cb6203193640c181d62ca6bf3387f9810aa06d9752d8c4c2954cf808b3fedb52deecc77c5d322a47b8ac42855713760427a599ea1df6fade212c7b9d8571f5c070037335e106a6068799a0d6d79f27295108639f8b54ba5b3cb7f14a461b8dad6430f62c894fc60f339f05ec3135f669f61e3e3cc06002c993f3a622d81a8be9ccd49463743833b20fae891efe3e90b5dd43f1e19a8b3115c2e1faab12f9b27d5e1e3ed5e66cabc2366691eb488369bad068fd3e4d1b1907daec8011f89f2ec71150676c7d2411b4e1b4ecdf07abeaf8a07be8331ce0d90123c40cc851b88b2d2c838037f50961c3c34ff83bde178ca04d6af1fb88fc574015e7cc45242644e52fbd0d988c52f8df16ec012b0a6c913c290c576983ac0d82fb5a7d1d293d301d77447df26611bad7f961e8a1732b9c8f564c03a903ca98f3915c3f9592ded21ac703e1926638f03b57d5bd98805d623e714dd3cabda16fb76306c7fbb2c10b52eb626d525849203e7ada061cc93529c34055ac1801ed3d700b6b3e168ac918ee2f3d4cd0f75b59a68e02cd69e2d311bb7cf80d639e84e44a4e3f4f5974635ef348daa50a19429c4acdbf72ce988afaca06bf50eb75dc0e2172efb6fc103b0dd8f40a0476615ff062a4c8f483a666dd805718c9e25437dc4dcd9c017102d2839e017e570437553f7090c60995a9603617448920cecb9dff6130c244e575adef9c7fe55dc7bc370463176cf5ffa45ee5f3e050846e1ef8b73bd28d1b95c32cd050a6dd1ebde665709398550b8a14f92310833d1d106ede1c79271d590471971bb14fdba671cd13d7cdc34fc2a120e2e32111c6173efb95bf00dae7fe2db7da3dd50abe44f56a726028d2f3146f71e93606d0b8f13a00a55ff3efc5f6ed0aa3f625dd0551a09e4151226ca9dea8b3465b3527b2555224147916f5ecbd127aa98044360b5b1f6467ef18147f576148be041782bf49d56a4ca9ce776f8a6c82aa3166ba3467e0544932ea4de5d83858b58697ef831bc046b65e1b5d760a3230d4a68254dd75140f4e21e965d7aecbd79c34b9fe5584de0f7202b77ca38f30d1c124077cdda0eaaa701bf8c08e619a0b4e207f4f95f9f84681d62c015b41441084d87f50a8f338f43d708dbc2d60ee9434d4422e6e6287852bff5630dbf192f364bd9ebf7cf629ac4957b2a087d26f08fd987e2e0b2d50d01b393a9f3aa7071daf3d1af523826f991f41afa066af60630bf9d178c9922be0e8b0f60cccb832bb263c5a79368e09c110e2804d2b39777c1f1adf3665981db3a6b06af7ad8c67417e4b5f76a25930fc6151d2a1a0c7c9ed9fd6345dee39cc3ac47e7ee1fb00cfcad93e53bb682e638b2052839d5851fc94fe8b8c928c96b34c4cb27de849f7c8627728c36eb91458ab2ec185514c873d85c5d2fae15c3afa1458965d2a21932b539f266ee5a24f1e5201fcb796ef4c4e117c4a304fbe24f376b612d1964a4eb87a13fe55fee1de17420189212e8f21085c34e03935b2412ae8ceea8d5dad3dd0c387b608e1d4a174654bc82be1db105b4281e041a9bd1e74ac47e12bf00b34fae4d5dc0d609ad9a79f6a3306c5707d3743d2d0151b952b7a4e263bdb93ea644c32853e8a799100c72d21419ec913de4afd1bfe54795dcac79104e86e300595803c231018e21de779894aa1f2dc364f946d7157b9a358f3eaf169892c3c9fe3546489d6a7944a21983523ea13f0a55c027cddd2af3f9978f4fb01d2ab8549a93a27eb340dcf12905638676317c88ba3a9e18e5cbb8beccd701636997f1ede2016efce111a393aa87450333f4a50a2746400cac66cd05cc9c65162f2102e39e4cfaf8b427c85c311b2c4253b49b948b139565753fd85d5a491fa2839007e76b6ff7585dacbf75535e5a40569a073b16c29c0e0cb9d39880ec6a85714229f71548fb716bb324a6ecee8276f50f308c2c8c942e3e566b1baa27b19a81eb518d71df8cc7808b2f70f1d28204f51fef7185c8a548bea4c3f7172efcdfc7b607504116244bdcd7ae877ce709e389cb4c8f423e58d3c92ae2b7d8e8551c8e781144ac8bdb335a830bca1fd2c8d659c4ad86a1e3375daceba4383a58e0f87a1e9c22a5444d64bde526c591607361ec633f4fbd8cf7629383c321d7f7da182cff5e55a865e71dfd55490d539751f2426853bd9ae5614b6f8b56790edfce1282fa193fa4082491a1cdd8851f5602c305f49c0dd5bd179d83dad985c6890e4a186538bb97084492b403efe82596ccb06a52e732995586a9cad2bb1cbf43c31987b72527c91091a8e73d5b1ab6662ed3ded60af22ccee26996e6acf1e6cb86444b9b74b453f300f0839a927199ba6c1456861d08f996087d523f801ed66884a209ce440acde35afed3ec8179dc249b149b9434687ade9ea6a0516706e25967227ecd9f491b90f8d6dd36007c3d2f1015e9c4deac9d28446d6078568809a51213778e2d303b4568a91da3b9a95b623a35d76dda69aece4a97d6e4fd0daf9c6cffa5cbd4b95583afbccaa87b3ec8048f46acd3cedd4c940c7222ae1ac3c3b1578df13c1c711946c6374de379be69e03f564e992ed978a02f48a98b5df59e059877f9523f191d2786b7ec07a0134d6cf190dc87d89598eae5a2adbdcea9a5b8afd33c82566b9a6fe9a53de267fab2912532458ce42f782c511c52f8bbedaf2da63c1889aa0315a74c562e7235b05b58a6204d7d97aebac2a8f74b61e7522f61d267ac9b17bfd6e2265c9eed0405367300708f8312833c3b8706fc95950caf76daeb7aed79c5bbc5a16d4a526a96224c2720f3406b75b16dc64e16a4e601f778391ea91d175405baaf40478f7954fa14bf20851af9617c8c6aef531db2a024649965212f032aeb8f62d93a32795c4727eb42a868a9e87edf7ec4b0adb4fdec3ac81c060415e5e1d6700eb73dcff235b27a8626364360f626525147e2668b3b6eb4fc133002b5f087df95c0b75cb70e82711544e4b2be145e949782cb93e8692b804adb4f2e1d179b84c4e44110aaee0ff3b4b3e41cf9bbc37490389d67df905f808d0d6e1cef7475dbb678b1d2856eb08e3386b28f69cf9fbbfb17c2b940aabc6afe13d56f4d33f3e16bc0d262e3ee34b506e00c5c6598102b0c9cd460627a3c0e4e8b6635d97230c744bf7ba7f5e5861de3b467a2b26857225c07a040ef62e65fc9454eadd2bce84c75c92f2f48db3bde86beb1a312d7d23132571c774007f2cc3f9fae639b634c7b3a7e660a89c9104d4285733ab4625fc2801ae442ca2d1ec9f4cbe4f90b6665ce320a33248d77a50a237881c3909653f938f4eb85db46151de0c0aa4239e89e3ef5576cc76b3005e7121dea4593378952e8f35f122d86a1d903a323dfe969a6835676c50df60ad012c44ba5f9c9e9c52aa6ac8ea8e59ff5085488a79dd7272c02822edbaedc0ef48700ac5ed95e68203847b3db8d4b25c695956e3d2b7bfe184ddad31056376e16e56727840598f205d4a05cf6512e76014364bed03c7e0e2c080eeafce0492c08420409eede5eef748bbe1ebb75ef938359f3c4fa1a6dd86016dd130b96f8a2f47f50c8013c7f342385cc7cc3330a7fa1ba13d8e1370d56e17a68c8b5da87c6acf3e73ae54113d526ec9966150a06474cceca1ce65f214f940ac4266af8aeaf87df010add96204a1ef24d652726fac62b06b5f607ba120a729c7907b90872be87a935e8bac45a3d9ab4b8d08e0a031da99a06aba4ef349c9e055fc1955d87cab83c14a29e59d2c338707c6113ad1ee8454fc7296cccdf7e34edd6e8a9b400c3fd5076676727d35be74da68670319de87232e674ca0ca1e4574b59b2b6336047eabe54b3f07f6fc78bf750c267f4d8f7246b23dcbec7b0273431f28a54f8ae198da9a50929c96e2b5f8197fb41b14032d16d145859a5e93e76d8d2c1c21d8e385a6ce36d6801c16c0b556be1fe1c220f43453b2cf31d7b0d82913e7d1d4e0f6f791a53d0620aea6df7f77bea58ceac2fe81a0a90ffff50bd28846766613178dcbc14257a449748463268ed58bf8a5d27cfbeaefe40c9595a7d77103a33230f78f401d035e84226a96f32c35ac79753af1021e38a5cd54bf14d15e56e08ede20bdc4f94df9faab33a38027173222f8a53f1d7647343821023401b813673d79ec328eef735a16d0e5f2de7eef620d568d9b41c18f2484932426a2d6586bf4028c6d9e286b3c974073c565d7ae19d0840825f6c35e9dd93517f25d61ef24660bde22da1e4f0d12659a59719a2cfee07860ab62f9ddd5d528b5fc16ce96e080158f7e9d8457afb29440eb866e7b52c7bbff1a97c9985bdc48c9c3b00ae1be732cf7e15ca5021f5fe7d9c5c76bcd4cbdb21bf9a1f0cc2fe4190b39c404de5be6e69d86bd9358e235055edf0633d4b2de10e1bf8fcf854bd07cc0c00a7466c6caf0987af1f801cb25b7fbb05efa228761193d801f7e680c5708e68c228286a32ae7e5d26fd75f82f1008171b571d61da883c21900bf5925635c21a420de95a0e0aba28bd5a00b5640868b72187df3f56a7af172896807aa71d13e776d3b1694dc4cceec9e633feebd2f23d0a08e854dba005d07765354e82a045a146a0a02b654adcf269b912a6a82e921a4f36aba855c3b40d7d17f2862780ca449ec54721a9b8bcc11573f0a9f600fbae2034912aee4001abd6d291e1124f678852b7fee69e33dc92a5d7d17619b412d1407f8acdb325453b74d6b82716461c27799b93012da82eba8b7a8641859686777238b7b6d2649035989585b224ae7df0b65a59a2206ac557015966b36c9c2ad1eedae41c614b588f663aec79d254f97e06607485ab0b300dbb0360cc1369f17ddd6ca98060c876cfc6d7ca4c1e663fd0143d51c591609db95b989118aa6615c0ca6758fabf62c16269f5c523c75b2716e6408ca564b50611827f901b756f3d2fe34336a08d26dfaba7496f93370320c11fe4da9a29f3d0dfd0a153d43750e686bb6ce3eadbe2b89f8cb796ce80496239528ee02e02d81393814001fe9210300db307dcf07699d5d095b19c53d31961b5d7a3709e4f749198f8b8156283d07da61797cf0af7ab58eb0e5a0f47a5195d3ed9f2dc0fd6728b8b30b572e9f24f5264427d5e6a14974c7c24e00360b33e047a3fde5c6e34e0fef2a528e31555b4b6afc14d1e464b5b30bd4a50955d883bdfcc1880715de63334c819c2929789361e90b123d90a965d385fe5e17adf898f22db2c7bd613b16490bd23b1b3afd5ca87e5df755f179b45dc7df48ff11a5c7137ea8a843f30e3549ff9fb43b5b6e8f2782859b31d9bc7d00f63ea869f95209f3240e25c09c604d01876767f635378eb0b7ec2923bbb7d9391a2f3f91d807f73ff613f38f333ef5255eac57f12644a00953fa3524f7d9226a0643082f240cb951e82823b535446e8fc9704da4064791751c057aaf14753742fc95b6d5ac78c3f0e89726187ba6a63a22e49c2d05347d67ddabb647cdf70733d6d8d3faee627943967bc7bd7ec23ea034bbe5cd6ace48d9a411e2c53be69f2018272d1b9924ee7590d3fec01de81b497625fe3a1b636639b118b505bd7927212a5cca67fd31b46753af673db8dc5d975024e285526d5b1d9694a3adf1511e94853a39ac4dd421352bf1ce4d18d33247271108a3074ecd90f0de3e1080abf5719e3d10aa6742d1d6e1098416ca95ad5272b08e2340b68eee3e92a48424e5f3edb29e447718ea42e49b22dc995997dd01988b0c980876bbc831901b011dc932c1cb850c2b1c09f7cf34fd1eb73ad762edd9acbaa80baee91fbf922b81149e1c2fa45eeb16e1f99ff7c89cd6883e92ea2ed16ef47b1b24e5e34c2767dc0e043d248b7f65c82f41de300aee991ac55e17b993d63bf94d6788a9fe59882365b4ece176a0ac127893117294939dcb2a6b9dfe31dff5a74592c1a48acc984d6734b5bbef6c24f88cc4401ae07dcc5589a1d02876fc51d54df7ab4115c8ac234390559597488d75af9e227450689a71d70772b025ee420a55cc6cacca2059c6e0dda238741a278de2f9e6da8026c758f63e03ed7907f927052758bb7e1644d1931b0a96a8ad103575d4d28f29664c215c62bbce200b5ce71bc21c60443974759e0c8a88c7b46b89445cf8d12fd4e79dd8884a693d4bd6b63279734dbefe05ff64369b8dc5166af9ea50da495c9686c923b23033ff76e17418cd63c92e2fd0e7f6ed5eee6118c60925c544a89755b3e25c01cd99962698ce6e3ff1495effdbc3176d2be97c6b9fb6b134baae63860ebc218581a9fe9fc771609dbe064730c2ba302bfda211701f912e78b691a0435eb5a23e803f7bd350e4162c11220d0a6154d213a4d903e152e39887ca73e7ba7366ebc2086ef543c5dc68bf091475712cba54529d1bd9da2de0f269a576d7141856bfd0f68ed60846a70a4f79b6ccc56f5c4ac505f01e748e24a61cc0606359bcad5751b2c368e4528562eaf115728c3fb035889ba69cb714550f5527b15ec1778adbffec7d5655b53009a2a347fb7d1cd3a85bccfad762bbf343daa997ff80cd3232ea6b22dd9dd43a6ad57a32524a23997e5becf02fdb739051c3be3f8bdc7a7cb2858b4126997a85364e2f5ffb7a332bd38026e889e8e5f91a620019001178ab31005e6b2f6f675b45d83ef3950e10778944f01fc2e723c082ef34770f4dbe9aa7f78c824511029f097aef11fcfc743741d966cc4598a0e028913dffd5f938557aa9e3d57870a13e0a944c64b7a2e716dadda30c6f7fe51f96ed48c441b69c9d64ccfc3b1dba012c183bc44be1c7e80200ea134e9e6a280d11eaaa6026fbb168b5d03e3a5efd537e67cfd7e638c2500c390d5e5c8aea2be6cf63232f19aeecdda7a03cc43890458e14774512df0e495a1d17ab8774804209026d101051f6b0d31674b123813ca7761c959ce45f03e753f0ab25771b75d0d62602bcf29156620154de2512e42ffdb80babc6b32ec66fd93dc224873562d9b358f4f51c885603ac358c3189a451990f1705094366f63f431321c2014bcea54233b4c62ed653bc23f3bed19f0fe142672efdc85a32f46c7acf394a65d01122efab2e58a73515d0b0e79ad51dac793dba294c7b4728d6359d90254a144ba323376cfd1a9ab941af0338ac575ea0e23d175880edbd2b8c4aed50d77f2341f675ef9cf7746a601550cd237f2714aeefa5cb0ea28c66860b64ddde45e7cde84d6cd6369d7989c82823117dce7dcdac3ec767288f5be8e8215e8ba3a929acd945fb53bb96add4a3691ce81788a6f33a3f8cf45a84d703c5f386b67dd80a605a4fd5abb9dbe2957257b34d0df768fe6633845855d536d7d3309f2453acec75e90d7f6b06f3d9d5dd6dc324fd2e2ea22b403daf0b6b9128448bf6d3590cb1b2b95726f4a24e1d16bc8d77ae3d3a9286ad64556a2d3ef7d8c7e2903270b1abfe88f6dc740e637b536b8c55e4f11cad072bb723212b937abf82e413fc5173d406d47a953392ae2d2e6d171e68c4fa3626c9809598108d84865b402d6212a361a73f794040d0bd949ce4abe973213cab930005353d108c0762de596ad82c62ea9fdde24216e2ef9f8f2b52c5bcea43db7d80c6486114271519102524f02cd9266fd698c416ab04afd1e51af60cd097f3d01bf2071164074c8cdb01776b79757919aef3fc2ec88ffa1049132131ac120a75de6ad9c66e5327f9bf6ae9e3da47e405fafb8c1b69a1aa89fad567c20ab9e45307d5daa826de460113f16c5e0411081e14eb67f20a77796a3fbfd434c54e3f046d6e305431ff167a639f0305486a682e6149769952068dd0da28a759f00cccf256b810600e6d2982fe1fa45c37370fb2cf6a000f048f50e0225a41b8cccee2cbef840ac0629e0009ac6c98a70ab1c5a15f8093aa4720ea7f69062a3492dc072b4aa690513ae2474f604e066375d2d44aa747e32e12bcfe03656a7981858272c85f68602153b809a79eb25bce5065ce6b57ff12e3e1db9d98adbcc04c58074fe8b7ae767a2918738c91c8ae8ee8b922aef0264cf8f1ea559bf8d6d520ed837c7744e561b7303e29b9d9e72903e0632322d2f7be0ca1b09c385cc4cfcd377ace66f65d61554eb7c51af25446fba105ec230443cae41577065518adebe607d6d62b5d8f9f7d01c1f290b46db80c26e38b7609223c3037d5fa3c1a7540fb96ffd981544714f12f0990626a7be848c91b43e226b6af98a402dc17a9030cb578200ded6f0c524058d946e18f5afb18a0ed31bdd61397d6bfde1eb4b74446b74415bcbfca0ceba606360b0203cc98e412eaeb9446b5ceb320162fefa803342573d9d00c646820ba503be750f24e133695c14970fb863a76e0ff690eb58002b172bcbaf282a725ae0553e332246f1464fd8e2dc67e0a3ba0f417500d2ec8d85dc07453a4f7025ed73f7ee83a223e46d18fd6e6fa6441feaaf03f06ec098e40f5e572169450c4de454cb869657c77ff70f21d8098f51433cdec5508d8b1bc4ad187deacced53c0ac614ac81929e8c750465481c3ecd684499203f3a33abd6ae0fd04d0e75d80c6274367b52ae5a6d64d3d0c9b05caa887c71aba627b3c05afa89ef082f0f9ad056494fb7b2961bbc73f7c250e215c59f94f360983cd4e73a6ec5c570e77a1e42d59936fb4846081916f60eb32959c0e7bf235f33bbab886d6f8525377a05ea6a28d60d56c39ae88514f598b531ca7578237e17b584b129b62a2da029bff70978dcab22d17a4293a25c733768a5874882fb36b181cc04aefbe59693bb0616a3e926d65ddceb26396cf65873c7225209c95c581654cdfaf4c4ccd6537b34a501d388f13378c0f9fd77389b36eb82aae8309499afb7e24b94d9e5f733a66c733d4c781b24ee91c48f56f2f656c49d37bec3a7ecf91191cebe6452fd10153e9af331603111f696a17e15dd1607dc49fa17409c62990e35ee9b0ee578c3d6bfb2a81e28bd261d4fca02e3245381e3ad654b7e039a1d09d5f1687ab1a19349d1987f7a506e58cbd2882ce22e9ae0214be536ee5d4509b2b64a5519b51fcafe123d849b6a631ac5573e1cea801d0a9fbcad83863423bb71f9c748182aa7b720a473aefd783f173dd516c26ed4912f5612344b8c883843e657c294e03186840f618fcf2499fb4f5f6892fbb5ef5603f46dce3b61a9bc287228ba09e8a24ae05e35a358632dfe0c6e6431ed968c6b2d889691647c8cc9e10b706f0186c98ff6df8fdbc4ee108b562d36b303b50a4740ae2ebe2912d0f721696dcc72a9ad3b14fe75ecacb7e0034d7308da915d34ad4752aae30c5951078d2c60fa81c0526dfa812478d5782a4a05f832ac0094957cff9d6b17a0336eb733bee3b433d64e4da25ddfa93ec35ca60dcea7546aaad6f4fb3a6e5c82deb4f2073e4933174fc93cb983d1cf103a9fe31930b36f85a9c9ee935569adff9e6ff36a6d0e68cd56f440ec68bd0ce36ec5cf59265e657bf89e14b1bc860cf293d642a76344013bf5def37781d08487b2042a7186d2ede7ebf6aa5f15f2de4fb44f339967539a3d97f2ced2e1d3dc7fbbaf5c2ddfe3caa166ef34376660ca827f32680b2fde6f95e83b99c7e0ce50856073535e593635e89d50cf08f0225779b6c6fe4ffeeae40af6f38406f469872f1941186a87ae3fe451f9fee7cbd5367b33037b1292df68969b9b3357e31b05d17f68464326c411dd23354cea36dfd1f0a33739d2b9440832d684b80893a47ce9f7f4d201bf957fdeb1b1c4e81a4c4968e9265e12ba50ff0cb434c90c7eca13d322e37b3ea8a125b5c46f950b265a7b4372c85f980ad595f95045eacff70e7843c3fa1f5962daaaa1ca812995cffba017862451ae64ef7f2fdd2f2bfb29307970b959353c4de11a26c249c4c3fefe520e94156d22957680978a18b7548648c20a86a1f844e877811df9405606554c46795b6645321244cead3df7808fae8e2ebaa843220c81f7acfed0bc217f4378c4db176fc83eea8069391c002320807cfbc07efaa549181598d4ead5f34b562525554a32c9951e8c0c222d249768a73952b10350314aa05f499bf22c60c3f7a62b19bb606d59862f21c845ed8ae4d3f4a83a5b37fa5db08920935f78459f7e9cfc53250eea774aebbfe7aff911b42049db7719c48f515a14e01e87a119ddcade6cbddd28a52ff3747c93c8adfc0992861ab4a6b17d0f9e5287a504148de37537a08576bb1e3c44ca416663a2338bf8f176e4c366436fa04d32b186d5e0a7896f5f0f6cd36f669ed705e8339f0cb60950c2d8701a0938204f7f9b44721005553d52953185e5d0a6a479d9caf4e9aedc5ea38331ab3216586e83f04682e855ab9baa091ef7074f1d228ef6b7b1fb01753bc369c551e05cba8a90e249812f4c093c78098bdfb762633148658fa075bca258fea9e4eb353df152f45cabd57e4bce53c7f087c78a3712232b6126ada98373f71de666274634c2038cb367659c712be970bb6019cc97066a792e70b68f204ba1e398483dae3dcec6c0d818eccecf8fc60aae668c5a1165f34257d323f5abd33770ccb184b90872291794c38dd83d46571dc95c52ab1bbac6403bb306d76fb66e45a7f116931f06cf3857bde586951b2711ea60237454df0db0b90ef502d7025fc1a0692e350040ea8903fff4b81a7769b0254c3ccdf2f694506307b0f3bd2f5669c780aa352b80e53d318d721ff6dae77a47acdd759f556ba72829947d139d687f3acbb4b0268162a994bf58af3622acd7de78ad6db506d26537a3316ab4b6498827e446b001ad8f0f0065351d888e2eb56ad474482adde409af744a52e4b95b1a932933fb2267c1cae4928b3a87143893fa73bba06c5dcd86399266da8db9258fad410807118c83b07f4d2487eaa8b99a5331a3ac6a6c21ec0dc22135eabaa124e282a5fc1e8f9a9c8082dbcb1508dd0c34758f1d889d93064257d8b32894c9840b93eae1398f9746eedb3c1d0d4e114743413378ffa02510d97a46baba046beb0845454e10c68800831851546a239cb6b290469b8ec6954696a65746af76177aab02039a196c9a0982436b3559f99246ea2c963f8e9a2020b3de751083066630a7521c062b8a6a7ccd24e1fa472a0c52dee7d6b572bdfb278512f6b4bc0ce0b8fe6f51e820e5d378f951301632acce1696446c7dbd48dd9550ac711428ca075bdad17d345e96e7667499119f3e9a2ddaf5325c37c64dab063a1d436ff7cb66193eef78234aae222804aa8581f1ea8063335492ab7e45ed18fd21af3f56f7f85ab9e0ad5b6a17be0169f4e3261cd595d18f5d1aa10e1a268814e8e161dee0de94c5fe4d856e53c1bc6f5e1d42f93c80e07375215e386b3458b5950bfc88c39e07dc66dc685b4529f39f0e2829fb93a0e2c9f16401d68e4951ef97e291210e4064e02e504643556091ed7f3003febbb4d3c0dcd0d3bf33d8a41d59a8089bd0adee1871843a3291afa7a394cfef916860a5a689aeb26b43c059fef145b71fcd6dc7ba71845c06a305d59a4fe4ba436e13196e3bb9b9b3742a2314f33ed9245a6f81fac2e66115304ca27705830a6aec090771a9bb50adfad066b1408268cbaff5b6bc8262b4293ccb631770c139c04871d2ba485f8b412531cae73668374b5ddd1a8c1f7f806d9fdbcc1aceda34595fe796c1a07390b384d1702fddeb37781116ce532878bf4424bfa76df6fc3772f6ee0847a41d81d9eaede005dcd45cba11717fa643f40036e8f8457642d3b0ba283f6e3ca4ef4f9aa72a4b35ec42cc3707ce1d85ce693b6a4654c195fe9a4a6725f1e656529587125a97f488f344906ca4d8ad9dbd5721263b3fe33d3c372f861f9c06deaee6331d6779953878923342a827767ba10418097ba2053f9e3cf16f6a3de29756f765997b8db47b44ffb86fb17d5d8315f4df671c3da8185a3361e5013b6114f3c017e86c4be21f55c412b09f0ec54dec9bd3363f60effbf48829b9278373418e87217dd3516f2bba966708f3f041ed8012f5565b6e45f5a379e17e1d6d3af2f9ab6ff41832dae1fabd6c964dddfbcbcd47054eec78de0572d1825625fea9d1992d398c9bb89cc713ec443bc9ac82fb9c893944babefd4abf7d640a3f432e6c5391ba9a4772282c664cd361d3a1849b64201261a6f61b220e250635902d3f0ad99663d66cd5eb6b38d7b677d7a093eb6c90565efcaa70415d735d77a3c16a8b4ab59a28efc32bd5322984b4b96066bce2b66e3576872255689be24b44d4bbbdf43fd3e8d87f0f287b4cb1b2560ded019f202b6af35e416c264a2f28ea862f082f3be1c288fafe13a5e880032f4cbdfbd421bf119fa45ae824af5143868ef3475bd8a5e15a28d678500a9b8cadc400e68f4fe50e16e20fb0ab156656349723e019fb7064c981614adb30518ec9ccacc9bfd05d657435789f91c6653021ecfe18ca2bb6f5723a3071c0dd9091f8f420b71678984b7ae97bf1b127d457693eca72fa36da2452378ffeafd2341df6a63d897d90e214552337cf32dca3ff7dedcd892ba978025260662200700d7747904074c47b2f34f6e0da6132c85f44f35f6d0455e8800bc36ecfaaff29beebbae7404557a4ff615eb04e3c95a5f5b295f9ccd9dbd2acb96ccd306316272f91e2fc4e858dbf3d44ff23d5d7a1e9b7cdf8205ab3311c7d7dcfd930a028b0f23a72fe0e97cc43101ba3945220f1fb3559126db30eb9d7cb3dbfd4604ecc97c4042e8cb9ccd626c75387fd1e5f2889381d8836afc095898eeacd7d5a9e25481fad093ed43ab00c3c61e855a8b08a1c50e3b4b851edc5438964cd7f46b3806e49008760c3e017731c514288172e4795cb1de5cbbe5db1110c8d6ff3b6411dcb23bacc18c54c6691e73b43afac0bc08743f579f15db26b28b959655855f6e4d10b593052af578b2c4930946ca2c7f282e722aa9d2162e4f7eb215fd92cdb526105f2ba9450b02f658b04bcd4f987ecf1c94640cebd6509dbdb8ae83ff47fd1d3db73c8f55a5c026a5a01372ed86ae010a2eec88e6dd3bc07243e99c025c498f00cf854ea024ae1de036976691538408a86a37610faf070a987a1e8d2545f02870a1660ec0228a411034365b7c07af1b3be3ddf71614f7742292a00baa2cb7c95db1dcaff7d1745c75d713690655dbcf0e7c5cf9f339ec4687e973653f07552c90caa95d946127fd28c572790d1a8a064310d21c0b2f9e43eaaaeea494be813708f075d9b011dc6d9e84b29c297b3e42c8307e50468cff2c4e1f9c13c4d2f21a3b583e474f77fa66b4f2fc1b979815361497461c42122f18136d13b6b420e65cff13fdd3d3fd4c8c63929ad63f20208fba58f49165df17e9d138d5ae43d7076ca5e010ea64fe66706c95474ae4d42f242ca3474677ed86fd422b9453d478a64b61ae006592aa13b563618238bf6a23e35dd4a69049a4ac6c853bc5421a2c8baca728f5c0be877a9dc2c61c89ff260801feffc38ba70d69b8a6b38b61b1350a8cbc2bd5e4ea52d51f748582cea5cf1633ec31af98278e17f21f852ee4db2866a3fe92d98c9e9ea61d5ef6adff8d0b479406e8f1a08a80b684089b98f7d035f01d1f55dc9a18d92a7822750ceb32ad7933a769efa7231d6187bfe6499e28fa84e6837ad1d5f7353fe214444fefc1882d11835004e7addbeca0684d9cdcdb3a04b624d9e7e594f0e7c82783a13be0b0fbe8362a37d05c3923f3a6ea59bab16602ca38f5374388928c157882803e20aacf351ad0a3aee2e6a50b8631590a366696ad3a369c9ca0fdfe1476c356a3668bd80d6db7eb2ffcf8ad5cfa2dcd81fe9cd9701acad6da59203aa72bf5ecc443653b015b0d615cc827b74f84fa628ea4c61fec7d76959e20530822e0f1a80b484d6b4eb60efc28813efc22e803f181dc0874c93e0b8a446ea660a9f89220cf0bca52dab6e5a03b8398502990c07c51abac2a6dad2ffa9c40846ce759b07d89737feb756eb810038359f8177f0b7b967b66d1313c6d9ae6c703033221e6735cab6cfe6fe770cb76cf017f9373b0a31c2b8069e75ccef7275b2f4defed5636c486c1bdb32b570ae01b5f5b192b7a436cc4abbb5cd68bb0b0f83dc59a7da112fdfe3d6aad3bbc390f8c5e8040962952fb0010334a49ee20cb74dad92cf191212d2294be3f35ed2eafdf032a68aa7e6067d2aecc574d12260a4c23ae43da54407859781a0831a525ce8a111b096eff48c04b994ab5a70e713feebba728ae370574db7bab19ce914c6109eeaa6eb034817827b729557147d4a544310b4c3474b9c14481bb959cec714bdba713d36534dcdebdcfdca1f11a5fde12e86ab1fce6f4adc4e3e1862204094036fdc48e2bf5e3643c26edb94b722323072efae5dba1c04d63efa8ded856873d4d8c579e89049c05b255d89274e231a100cc2face8c10f8cfad0268365e9e81fc5067b560f219b504d52bf6efa261c6283e91ab7f6e3df3d9737daa87ef3bce13a36563f46ddb8260c3896923c9fc672ee9b5eae3fc1c5895ec68e09aba064504304c3ea405758d20fa6d6ef5cffb4205076672fa3f690b7640b2e0f87f42275d3c72c2d390e909ae30d0cc59bb470ec7fa28b482d3685a1bbce3be011d3da9c9f199b848dec375640bed199c834b8fe90800d12864147dd02e287021c9fc2e532d0df342939a14fb3a82e8185fc88199297f558a67474d0158b06638ad7ab7f35dd6328dcb9c8fcdd8c4ef95c5b1526046a7153f924c1e614c07eae29e12eccfa888216937ea9bf18075b6817d338e5b95197eccf4392f54c6c2cdcbd69dffbfea10e5771188a5909dc4ca557d1ab3c06a79a9016a698bd33f5874a62b969ef739b3098f4d0af6063bba4a09d9260605eb729e34653f9536343d682225c8a5b7b55fb6465d23f932a059515e7420172e43f091b6de57fd015c0479c14f61f1d88895c70d3f7cbd91bd8d926a6dc8c338098cbd3194302a865b749c7ca2d6f6c98a2b73d65dc5bd714cae13562429748ab89dde38fd57152e8b6deb7c7acae12d71e3dda8e78a5065d239ce656a4b81ed59494e18813294cb165c3cb75d965266fa43c1d51655534e532ac23d858616a61b8247072a4205ce3d8db117e8ddabf892414a2495993ec8a6435d8e9365b876985ce52bba5849ae9392cac20d3786c5746367b9a6ac099cf554bb352b067536327f56317a64b9419278c033c96f7d1a619cf1ed5969f4a9f0c6613fe4a580c523d3cd1c2265e18ef07af9c60a20596ba6a1d480e539cca3adb52e3a96e16035425bc7ee3d31ec2edf3372cd1f8a52552c2c9e27abc0fd8de6b619a15a8795d4e5df1c1aa31ec465c69f5664ebc3eb2a5aead890ef4d9b1569eeba86855e525cdcc2c7c3b9148b3255a341b711d9476890b38f2e205f605e1b046f78cd5a8989333e39ed116a9701c70e306d94404fb4c62999ef6a6cd786aabfa42a81bcfab4669904d4af6809c3554af9da08cf48a6aba1320825f95291eae8bf561a9e604dbfb3a2091d2c55f685a2803b7f21c9711829c26dcb3aa1a70771b91cea71027c856195f508347c7870584b91b4c0acd8fde84f95ff8fb9f4c3db653a6475c2321df109ef186d9df5137058dbc3eb48b65ae760a28bfde647541055252b8c84a61f9d28c1cc39f88eb839c4323008aea0ac7275bc044323f8dcc23a2c66f4794f6fdffe18391f6c8213ad89380b5661176fb55420072ee9c51c0dabbb84ca712c4514e415ac1c652c515172102f6a4a81083b26c5590d84d83051835e1c46ccc568ae307af561e6b35c84bc0509dd3a55d810d917f208e617d29daa9745ff6e60e446fb9a4668868a48eefb9761512baf5362b62530d82a75a13a359e4a7571d06c0c89e11d57dc5f616592dcc03505713e6456a0d31d5ef38d64be1a215ed8c29978c28310541bc381f15c4817630029179582a55f086826c0c137ebafba9308c4be3ce31a3d48608ed23efde97468489adbc6802b0265e4ed2a2c5a040551fd223fd4a3c165bc055a420673cddfaea13130f6a9cf121de52984ba54b61f01a393da57db0b10b8e0462aa16df3385848d04f9ef2a5f5378d7273aaa6143a71a3a981c56f4324436fcecb6525c7792a4f080b5bfc68e6055c902a1a96727e7b0a8999414bd53d250b59c54afd038ff7aba30a05315c62a20621102f47acbf36de629bb64451157d079f1cc7c39f45ae1a91609eb782ff8e568768e3587ece3bca0c2e257f2d3c368e17d2e1b6d99e21826e7159831265e997d1eda70b9ceba323e0b20e07c03921cd85b919f2142376b748b3c79074e3c38676c7bed83eadf142dadc98fd570baad997e25d8c577129eacf999fc4a9d2abfd6beb4a7007c29fcebeb96a91a007583d50b564a5c2029b98eda07d7b5b1b48091cde5adc64268011c5f3585b0e6f071fd50b47b5d42c36f9079908187f88b57a1649ec4f45ab49634fb7b773cb4f181cc68206e4b3b2f30b5235a70e5740c088ee350672da1ec49b11a865b102655c46bd0230ab9b9021e080f6f6d9366e0903a1ecd5362e4999eb1dbd225e036bb4ac073b07b484d193468457c6197b296c32bface176fdd4a0d2c19ca7e6dc1a2b7b34804d1d14f40bf531659badb45ff8beb5f8431c6b565cdedf60f2582749dcecbccc63d8b87054b3a8368dcb8935b18e3f760a3c925c334d07a59f206b70525174717e791137c7516989643ae4981ce6230e7de455aa17b9fb78a2b3520364a687006dec1940156d39dd08575b751b4fcab63e2053595b79dc4f7a7e28300ea6bd8cbe41a3a7ed67c649beeaf14c36cfeefb137a0f818a82ec64eafb896616f9110b66558e6172091a3033f68e32ac0d4e2a4cfc124f95e963687ae6b430be9b201e853288550d8c19be130e0f49deb3e6c8ab9ef59f26641e9b86c98205bc5adf235d1a1a580c0e81a15f6c0ebba73c4a696cecce973f8c1b43b9a7bf3f7db92c69d34f5469d3a762224b266c68f2372b87e63619b2d1b3ce5779a38f1d22eb0c95e29a8b9f56d42e736b05cb7d71b9860587778a05299b65acac79283dcf065f95879f4a31ad8c6f1e6afef767b4a7b094ff224508bc6f5d027733fb616c92cf97d8cc9ceab80bf50aa86d458c78bd2279f1da1c7f6b6949485f115c08a0df55fa4e213fcaf8d1657334a2006cff4abaf777ef6d862f4d3a2347fa9b23d4511028b7b18715bfb2b905fddd036272352c29bbefa8bf411116484de37c217e2cf27fee9d116a7a01e40b2032f61e07f1c1263f3685687d2354d83c0ac225eac419909c07e8e0c228e860153a997049646b63e737e2630002bba0daccad5f9a2882d8e9974d9885b14baf3da94ca4e979b267c5bedb9faa038ef2338d5f34f57b5f56562dc03cc1040f85623d09d8cd3b046e1a4fecc4f767fcde79eb2060a63d33aa143daefd6308767bff98de38a961a644acf085d5296dff02295f803cc36f4bf5721667325bcda69aff48234be19cb1fa653e01f9e0c0d285d661e43fa17fcae71530810498ecbcac15dbb9127a76e7bf011d65093cd5dd422b339a1e111b4b0d1a84dbdb43e77f44ac8849e12152c4c0b18cf484fcb774ef525e8703f96befca9dd92abb64a471a39eb7e3b0ecb4ff4c7c9fb53f549b88d97bf66830d55a92ee463de2f02ccc06d34d82997ce2fc526eb9acb2c011edf179d8822b67aee9a67b16a16ca1732d31db60f6a5da96a1598083824b2a1f975cd832945a31cf069defee94eefebaedd0787096dc7830990a6586070f31acf89a14009cf308b4da66be9eae893a85e223a2231ca89b2401148838211317cb9e98f15ab42026f7147d662e3c251c0168ba9ffde88751b413cc719feacdc78b1ff0bd1aa02858989591257ec45c82033e65686311dabd4c408a4e2c1492eb2afa676bff0ab85302e5fd4476dbac9f8c5b448570165465774ef2f680423a7ba3ce8db7c1218f675699aa7d100d88ea24c1ea5f63437774664fc4362095e74a6cffe245215c115f5666b0eb756d08f693a46e94c4fc47fb65f1c5029911bcd48093e1f49fe7484cec8be64dae656263d79c8a13162012037c268781acd2df2a2fcd2297a042010f0be56d76ad5f719475a6ef19e9544de4ed0d0a640ada52403edbbcf42298cd5ef5e06d64beb242966a635252712db63843426006d2a0842c0e313a8c7e863c3cffb7deaf849b5d4ff96192b2e416811cfe698166013609d0a7a0af027c0b9352281b8a4a2afb0ff657c64fab6033542b22d307bb44d160196090f3951db03e482ed3295b7af4673e45cfa7fd41f4d27a318541f928d0ba97b1442aff3028a86bbcb6163f0b0337f20acd07532ea4eb00cc974eb7fd51732bb564e4427d9aa1620e0e58a8e5e132321f1e772c4dc009ae65d607a2bf0b6b3cdf0de5b9b90854124da9ad51df758d0623d1e3ba1870bda18f164602fbc6affa29eedf2340a58465e2e64dc7df5d381f6c8cfc072653075d55a546cf84169fe229ade8acfe65c86f145b9fbb39b4fe08e01fdfdbab42067cbf0ba0cca8b1d235a4a0ca507030904989f3fa1cd7ed18204e88d4da60aaf0ca0bc0a9d516631d4ae3b2da45db3c75324b562da386a17ea6b25a0d2ee7a6216386d6cd557011b54cbf4133b5c4f6ed2a81d6810a3562b45271373bc8be4f13deab4ec6380ecf6cc7920593a63dbbd47388322d5c9b0b7f77b54c8597828c979b260b849082d9eadeda401d0351c20d0d7d937681e77ff8d5d68e4569aec42bb4a031dde17c63d19a33ec61b2a08fb232c770d2ad39ca0625a858f75a47f879b9b47050012d80477d869857f3ee9d500fab95c4afbb54882d50c3d4f02dcec014a8baee56ad95b1e066efa3eca610ee62e50af39f2dd7df0c3a232f1a722c07163ae811da584f1a500295f08e13703173ecc0d4a7f905d0ce712c70331a10b4646455c32d52d29b48a4d7151da961034237b3531f52b7123310083d71d7681b461bb84e29ba6b5f10198958d36145d91ce9eb5857c4fbe4a5a4babb8cb19d79132e612e1be2dd0c598abd1b014ebce96775843eeeda597befa204a0a33a869d154b2f6b1aeaaa74da2ab8fd9516d5ef47ebb162bb673b3a0b7a7a2cabfe7e7fbd737f250a6203d5f7a5a07c028ab10802e8b7853b1dcab1787ef6a93cdf5acd8080c4b3193dc97f3b1e0e3c46a9f156089736012ca953fb65fb72716e1c0152bae0128de3845577739a70a0c121c086231f4bb482d8c28e3980907d437dedd5ebddcba91acebcfa1485caf2c5af296952b12e2a2245027459c7457589d5f84a63dfd979d437fb67e99e4e38b97e3aec6fbc8050831c8145145769e04daf033d3382b371a72f3c168203aaa3add7706d11e85e7f47080c7968c5c2901e71f16921a0ef02402875137dd42dda33a3632707c58761e92ca286c476c3eedab394a6e1267a3bbb337fcc61925b3383eb56cb275ef169911060f75cbe29b7f9f1599711cf1a4478c5c0902797c077ea708bee407a86649d9554d16bbbeb36f1d5378c9bc1da27b8f634d7fd515c9bf14446265901335d74e86f88aed0b40bbce4e92118befd4af32d992f12c20478dcbfb496239659cc56b81b2d154d812361a9bcb8c5857d828a6902e62951abeb04d7fd801a5c9b83e5ab5cd2b04b9b6e6f01972487dfc2445d655ea7dbf057ac2fa2821554113cdb47167b8bb6cd424d442e70ce8f3dd66f317e753f54ae26e6b84a0508451c712dde5b87bd9435e702fd9e75dcdfb99e8cadb576abe055869b3ebfe7ee0ab2ccd8eaca6aeadddd099a4f45b71b198d4e68e3645b139f20128f05e2b64617e850dddf9a8181a96c7bb9ff4457ecda9e2f5c1dca704964d77d6fc0a8f19261bdd8ca8c4896cb20a9459953a5cf54e96ec6b8dd72649e1847e7a4e0d97db82f27a36b7995e660d11efd05ce267463dd9728adb53afb4e190b845c043a13e15a1008d1e62fa47483aeae989829dbc48094aeddffb71c69e115ffa371f531693fe59afcc080191e2c5d5c98c56622de25818cd0ad2d97865c32ec46786e60e55aae9a27eba2fc988d40a85165577d15a82552ff1c225ae558767335e03578d72497afc8a95b0b0537856a4ac3f1265d9382c70d422d6feb6f7edb849010b31326452ffa0a15d63a8a0a877bcd2f1cec7c77d29436e94d7bc92d691ddff92774388ef599b77c97d701f471b0430e225f981ddf2add7820e38f3ceb95f29251564075f929dbf3241bdc6e572913d499653345b559bef5e28bfcb6fc7ccaf5ff6251e1337c86d26a9040fa44253e7841b1fbde2b8afe34bcf461a95e9a494757af2e2cebd988a747518f230accadbe337ce6cd6f1a1dbc3eaa9fa742bb1dd6471218756873f11ef57be9faa5711d02696c20103dca0d2d1bd28b4972b3edbc2d660865cae480a093b72d92fb9cc4557f1fa393580c20526245c787e3df772a0473415143fbbf437588ab9d9b3c99ca0fb3b86f67d04dab70b32830b3704950f43f35407949202f0f806cc944b2a2a4cbd34631e785e6cbc2f8c78708e295704d600222c017ee5b40c0930c7ebab32386a30eb651aa53b9d1bf774953887c21061e6525f53cc53a944850ba03e4120c47e291bf65796392d850412d73d9ddbfa5041a6936e759875460a692da5ad4cdcc92aef3fc28fa5f50412b137230016faa1015d68b83481a6f7db2a3c34f3e951d280ac3b8484bae1bcebfeb3c5680c137d6215d617833f80a4a2f01483a614b5e107d49be3003eccf9bd735d5810ad064c92a4a1e89f418640ec5acc2ca2481aa40393ede18f779b0076a2c556efa39329c073bdfa2e03b397b9c94e93081bbc9e6f30f17a33d260b7025681b3e2b0bed3634f55a6ea200054a8f0893faa21e3ea1c86bb5005c2fa366f28ae2840925fa9a738c5447de9b6fc46fea6d48504147f9d701a9af840bba83ad7b88c6641ea72018be458dac76d862130c77bdac17fa4aef1800d16dc93a2e43df428e5e8e872c21c8d2e7b9690d785828c95a54c4f910b22a1b11f360bba5b6cc98532e0c02b83e7714f49ddc10b586a5efc996a4e8f3795312941f7e50920932a041729dab684e5f00b0bc3e076b5a3b902d1d7a61257a82650bcfca6cadb2d97257ca48e310058a78decdbc5cfa0424ca5deba15634ef73c3880894ddeb1047f9260f4c3ecf64c05e8aa3a95e49d3997259cd3ffbaffce3aea7dd0dd826bd08019a4f94d5685d7e46e95d976bed7b2f38fe3a53d64ab6cd384d93d0ee522bdc889d41f32fce51f796b09af3997686158a3374d472defe3c722f66014ec0d5a25c07aa92290356df8a24f94c79998ee856a0c0612cbbaa61af956916e4d7c35f7902855197ba43af87752b3d822728fed5542907b83093e3aaa3625afaab1d2515778550bf1d4a62cf88f73852dae5523be45d479c0acb517f933a3184d686043c86929e2caf3bf24a03f40d9aef5e0bf57fc03d1fcb363885997178843000462665262b78f808d459e35d524c7b2ab4b3e0c023770a7821023628064466daea4469479e0c6330446871659d2135218313bca8607ee24d153a6a822cd2999104ee5b68f50c023283244b774dfd3d0c866501a78beab4bf74b1c0437fe181b1ec52cf2fbad8504de0d26190b3440fd5f7345d1151ba40a86405874f0a6901ee705f4354229ce31eacde58659a071ab9f2611b1dec680c90caad404ceb114337aff443c0732c636eb1a4928809a84630b2fc2998ea25f4e93cd74ea9db482b17a74f917db0aa7505426176a8594447c8f6688136f4f56a2cd09b25545503f4cb1a91d4386315026c55805f4b64798f4a99d37f79ac3137d5d9adc5c3fb8120ccea30b62247d587625946199642087a1d5eb30dda90be2f990820951b82e44243f7f8d184fbf4701729e8cc68aefa9bdd39e60f1263fbadc222b51674f0f8f22dbb9115862fd5b73fe379f5362791279c8d1b1fe7d55375f9c4213b04b373581ba993b9cb8f916f670638056e69873b35dcccadd70eae00427f734ef310be1a7f7e17a2e52112bc2e8d1f7cbd824bdc77a66d985bc0b6ba7eaccde081a4f5233714149b067bff1766dfcc99843915fd96ae41faf3f433817c4b816cf1ce70f94994b6d3139d8d776e098cde9635086c789500ad1d8bb88f6f58e64d56129a4407859c834ca27b340ffa82046dcd05aea143705efde8998e55a9a8dab47f050866b37377b3ba106437fd13b0aacfba1acf61c4c7d9a01f045618e96ed846984884f396d1ab9b47783e1eb11086704ea7c96086409d793e8aa0d6efa090ab3abad60a2f89730899b60e542e8998ddc81829b4ad73a431895b6052995a92b2220a9fd2d1c6e5a557841e9e04b8aeb9199356ba49eabfb04a3cfbfeef217dfa342173350a4386c31ee11dc8de218aa6c17d96077ee7a43fc76532a7777279fbf189f33a79b9a9e2592816e70dcb4bf286d209600ab033a00c1f4dd1d755873c50f6766f7150856b4f030f5554ed93df951d62ac96d5012894534f5ba07265ece1b0810ca7ed0a21534e48419ae29dd55413cfc47b8e258af649e9ffc2bfdf7895e29190987f0636660c2c050f7ca5bf871fd9a69e7206f951ade6c26b9b75e2f6d7fef37861aa77d5bd586bb887e7779dbcd6aaccf753a45ed8c31c9a80e9f0eb3ce019e02114640d304459663f16b16a7d89f04dfc321cd6210d93531688f3eaa95acf2ced5e3348af31aa56001644172e1f7e1a66ee225c71ee1ea8efa3f9c98f75cea03488a7fa0d62f2164baa3c7aa3a0a97a7495593a3dac10c068dc3e9f60be214f3b708c225b3b5f35b8bbb24154a3ff1036dd5d57d4aa293a7a1558c8d84587ffceb8def43d10967b39f5714e8327f9766551daf54c875d644bbb8ce6a75de9e4944bcff537347f4ef249a34c15f40af43cd52160ab5a9eb026daa84a680c31607b77ad5f8551e1d4178ad63aa0a23d19df8797799efe7e9e89b1931d5012a5d7a7d0b67d335a043e294d079b1aa47ebab3a2e92738d9171b1be5e7d169bac25a41ad2654c83eb4d3c80c544ece9d346fe3d4b2bc73ca0f500abbd5fd86abdefd6dc960383d1c7a2b8e9d59f9d8618bd0629b1d425993c7332e424fd44a982e4de601aa620b07c959b1b9bd70e5ed9e53bd340bc0e4fc8d455a981accd424bb8afeb70851b6603e1842195c1c6430736254b192d6c76f61ec0386795bac9943209672d103405c49482adace64c5d46e3f7a50acae1772867d526f33c36151460b8ab7f7c5740a17c0b4a3bae012edac35d22b00a381b21aeea5182a743c5d5990418b4ebe6f3ece08aefa66c19f47f4fdcf47f127c19beb7438a09b4eb4177205a44f97a4b3166f79f8751084e00de8ecc0025d8daf70707e1f50ae6056c33e00e6cf772c97159834fc25135f21755017d4eedfca2f94ee9c820c7a3b8a4be77375bf9284305b28dd0cbd415d1ce6a284a5bae99951a3bd0a0d5c6bd0ca3aaaa6ea9851ee8765af42419f96657c09add146932ff5018fc9525e5853d994a2f13a12ea38331b0891775108a6351f5879ed9f626bf5731dd141d19fd1d1620072d8cbe9c9088139ab326209c1356ed3cfc6d4d92a404196325c88d2350be498ab711df273c4986f02553a39ce782a729dd1661fc615b9d1375b8ef6d6b7caa06e26018650af6256a47fa91b3328d0297000c6de0257933bf06fd87d4be481b7a6f21b5bad9f8237a1b5fd25bf5d8eff91843e232b0bad9837c5620195d8f88a4640bafdc1fe212b1a9384ebe1bc8fd3e1ce4d9772c52caa91bdf211857bdab3c8656b4970f2941ced9da4930cfb9efef7d416b29083131c2643f664dc1de73c32d21607b78cfd52c485fe7d192e4d3f59ebe93883e20aca9f5f7362c420e5ac41b35b3142e2591767bfae7e74df97e7da434920049e120447d83361315265757e639f46b5881f2cf4ffa77acd25540a77acf00bd746bd95f5712e41ad06b4f6da14c44576ee4f3c704e451a8bf13b47e3a52196667e41375f17ae6bda1919252846f05c2bd56c480b43a29ab222a7392936c9682d0045c944382bc9b1d61f20107e8624ab9e06586b458701fb39fb10f9058c66605ff1b4f74b474c75976968f9902a4f0649214d183adb42d0042e915558c7f81b5db6f0170fcc60f5863f944ae3d28372ab445f6b49fe21cf8b105ee9fd6a7eb54bfc8f9305379f5d68378fe414b14d07effd3abab1ddda9de0cc03b458934d306ef0e5fb6f59e7619ad3773fc9a5fc06c84511f6c199099ab50a62ca780aa3e29946b7af9d71cd0b99a1c460b509267680e8310110f4dcfea3fc4dd457786a7bca23409091a321dbcea236fb5d71a866961d0050fc7352b2925bde42bd5dcead5062876636da6ced6479c445d64b76db7de82eedc9096cffb22a459c4d6886c73578c91518e9321fd488927bdabab7a4f3162801e85027dde57b994e775fd3697439322895b21751db674b0b25e826eb46170cb3fb217d381588985cdb2206a38efaef2f1f98d4319d2f1c267b3edcd51b033b679ca4fe44bf4366e60b659f2b127f1b921dbbdd27e3a5e02db34e7c8c9f000268fd461a5ec532318e0108cc6088865235d94d1b4fd7dd758ca20a5b79f13217f9dc5dd23dbab7e6358106adf9508560044b6e31381ccb00868c991465e5591cecfac5fe133a4c3bdb9a7f3eabf323ae7b911c77c7a56d2a54bef68629414e4aa8a0a6335d6e00881f3371f59896033d58ac3934d294e39526fdb83ccbe09f4c6064ebd91567d4c0dbcc780666ce060f504faa84036aafdf11f558293851943a267055e5cd93e9474d192f49f6bc94e5d05d971cec2973e55c0f935873f2ed6dd70971a9f392e650acd95f250698e4802ca643b2268bb761cd393560b5d6676a5755cd3856cf80fa459a5fc9b4d743eb2653a778c3447d7072d4bcde14d0ad0e10b83a0c1f33b72aff987983432c5319761777c5c79140138710b21b364ad606997eb52643edb3bd508927c0fd8407e5c82c766182ecbf9a5c9451257e593619c8b889b83c070dc0437cfe5ff69b26c7f195e5e0020c5d2564528448a7554020e29e5ef61f5f36582431d62e0099307f551fc10536aed70e19f6bc3f8004423cb0fbbb4a7ebe4d48b5f2e28859aafb202fb5a33daeb28e343c034f082796b761dd4c307bc409aa2f572f16bd323f468533ccf160f11057eefb90833a69594463826c0b8dc5a0d82c2022e9d11ed80ef7edc59ec90eea2a6a13b1b7b1bf90c5266e643512a5e9e14be0ee2941c84148898e393283e9a709d051c51eee479d7901538f86b16ae1e3bb67da974a66abfc778b69690183e1b3ced24b7b562de3dc0918434309f4f3336810a5d5de7c570a386855b1b355957fe5c77b88583d3d732d98866daa961a0c0787eb627a5048089f3109653f28d22c392df9cd200888a8063477472538e219086dc8d3a8d48592df38bf1b32585de166002cfa6d2bc04b6cca429de3db3059850fda32fb4be7e89dc35e081ec973558ef454e656eadc15289199d32d329b044c1db185c5a6557a1e1e2e40317e1aa518c9ae3fdee20ed51cea2ebfbaddf777b9aafd93039fd1b0228c611e2ca292a21100ac53110e39e553f1f66f70827d730d2e7921ea10360a70663dbf0c8d093a952b5d62f6d9e8ba26f4274cd854bb0ce8d919a6d7a43b62527b3da6af15bd52535f5cb6c1aa7f412b3adca26ea737a0de1ec8e65aa561f45d56950f99a0911a7449996ca843e730253f35de0269c0892e7eb0a091fec34245be28c71c750f4d734c2cca37614b523bcfd58f6fcc329b22048460addc8d3c84143bb1a719c4ec7d9044a9ae9b8a3d01ee39cc3069fe9c610f6dadc7afdafe026641dc0e5aa681824a446fb7fb9da72978cb9c88463aa75432667675017e5ab47a6fea5c297f379174a6ce3fe4e48961b0baa2e25102be56a1f34610fec78cc81d4541ea86d7a1cca3f06906a54cdb2da327bfcae21165a124a66e2f6a4f7b45b4e5847d6b8b1a384d0058988fdb9729e89191a9fdfb3ca3ae4a9f726a04a00b363d16bf2dc52ab2921aa3ee4b30321d2bd3479a9fe7384733356ab02a521a7830cd81a841a727ee2d502a80d77fb83701ac35a48da5c07172db3f565c0096a5430f1ca0c76e6a8a56e090c92b490b4c446c067a97700d4304ee0a71c98e9078ec1173ca23795edbf2c7c71cf4251b4a5858d476727c45e321392721ae82ea856c6c9d0572a0f30d6bc5cfa14a482b58d5133b24db58bb43b32519087720563f1b1e43ca20e71818b9c598d945ead33fe827b1ef644dacee407e42622a84ec8d4ae9c52e1db6275aa63f75058ffe833125856c56b49b18869cc6bbd9f85b7c9df48e2c3888a4b820975d336acb8cb32d276d74e305f5b3ef053b30b99a67af65a5dcb426eadff7dcb92794075bac502183f82be57ab688a2cbe16db0ce52e1fa40f89484f06d9b95f2ae2487b54f3254229d82650cf008ee67d4793b1105c62cb316057f6af89f0537eb453680389303ba56b4f98755e03a78982a4a71cfeede67919357a8b834148f1679b6e47ca16a80bbb13b2fc60c0788d0f31d07938c0a6fdc10e5399017782fa27824240bc85b8ffb23f8674e88456e82c1336ecf2e632ed89f3e26dac11d663178e066e22f1406002a4e787cf6df8781d938c8f880330acfb043774244d996cf5b1e9caf291b8ee05dc2f2b94fa10d7a458f240fb29468887ccdee71f6f07676bab5fdf8b731dfa3ea7b9c79d4125d343eb89ca42f313ed499c4ea3f62b8f3f28b6fc9b9db27efdb0eaf5220a782aa5527097d0a3b2528d1faf07c4708ae74bb229c5d8b2e0dd40aa8994336ee88a71a3fb41475693a34b3c585957e80961b55f654a019604ed625b22c7d25fcd59e42685d3dba1f35e8e880ded2cebd95dea42063d11bed5dd687df97286707e3d312952fd636b3f5a8ba5f7b76226016dec2a76fdcd3433306cba13ab7326617dd2573e5b0ef5a4cbbe01744db8d3a748fb9c995ce126f0f9953e38c38f4678760a01d99a8e1c186612d1adbb9b07a366c19652b779b0f3bc73904c2fd1a737739c1c3e9ddfdd8739802255e2f0e186ab7c8a625ca29fd14ec9c8de965ddf2fe6b5e912eb2f9dba4a0e8c0e5855a9e38ba169bbb34dea86f1875b36ee9d697351b9f8727b957190c1765591c6d53c7fd55723a8d00967d0cb3e1fbf0e5cc1383719bc6332dd60c5ce407cf44b8c0550bb0625395717ed342840f99e294bf389a8a8c30dbbe2311c10a00f2a9e41f010bce76b581d7b0d62adbf986817c1a9b40ad2da260335a0c65fbdd18dda2aafb7144011a4b9df3d1505dc5a8131b8199a4b8de590e521567d2977022fbbff603a952f25ee31357b0246d60b0be062e1f1fed290d7fcc2bd88f84aa5b0423707fc3d72fe9835de06e54a5bf8c518177503d9624e6303bee8093dd6b3680dac400d228cb6bcc44938824b7ee6bc06d028ad5107abdf999482b8e46660eff2661e0c9e5fab55f26398c123d4f77a6423fb3c5eeb8f24d6fb94feb0e5c9ad69913e89e8b634796d92f6748bb029cfa15388983efa2557317a82cffe1d15efd07d88d0eed0af8f2af104b60b37cf396436e5b7fc0af044bef31a7dd12be080d2efc655058a3f30c3f8a8d34bd83024943f65bf8856d296e4b1d32d31d8dd27fb5d57fedc28f3b74090a3a0c4e0c64b6a8b693c35aa68466aee7a9037c38077f56f0f11c8ddf183d01dd6b6b0c2462d3e71be0f103b85b0df4ea9185df8ca0b1641bb748e726463e21a0ca268b994dadc8e71956a0630b7465a11561f19e5b2ab17828a5b5a3909715ee630076f5ae7a5c49f9a06ffd46d5c9246ea73e6550b9b3e1f4e899256a0b11a7f02afa718d9c0fc51f17e44aac2bbafc547bdceed2f8aca173ca7a8666f030ee493c91532325107dcb196467d74d86da7f7bfe581c02d6de0451b4a5b0757aac0f359d90af13a49b31855094ab89ee74a282247d61c91b82550ec9e65d41900b812f0630d74d3dfec13645aa4d44fdcb94cd4d4bd07a138a2c39ab6130b59dcfc65aebac9e17f007e4bbea26a9e4b1b3e2942a3ff8ae29d929e60c51a01c00082c6d1bdf2917eaec16f933abfd36ed5c751d58d0a1b74632bc0196dec806057dd45d8d1ec756e9a88d9435b571e4e006d6fe1d4f7597a68c8965a998f1f60017c735b3c634c6497eea60a1e1be345a16ffae3e7cc458d3bd4054db799873d2fabb551fbc58dc84bc4559c0e96c9eece6cb1ed0d7475134c86e4ba013db3594e57560b7d7edfad28719b3a0487bf7162d1236972dc2e49766cee12c9c54f7f15cf3322680d1f2491c8c3b82710bff5936856fab08e5bed7aa7fd4c98ddf28feede240c6fb8d5f5c480e0a175d52720a60eb9eb7e5f07252baf508e010a8f48b126a4af5865b61ef8d758fb945bcafcc55e4078d0d62039e046973b0519e34d467d30ec1ef681d06c68d6d7997f0d797c4e2ceb892b1de838a6a482e11a147c78bc422e103e213f2e569dc48b4bd64145d1d60729481b6d8475908ad27af1c3dc8d42d3c3b344f22acf5cf843a9e8b0b9702bc01d7273acd4fda2795ca6909b3aa892b427d549304cee7eb9a50b902059e3d4ba1ef2b71ea0026d9dcb88a4a6e43311a11825b672f46e5a013bae96a7eb4dc856008172ecbd30c6f4dbe99c02646bd3ef887d2292934c85d0a10004ce8042b4e99bb816a8a73257f0b2ac7db9b56537386db64c8d07cc19952073b13e89cd1cff931040887b3d68b2560e4785dfbd9611274e395d7ab93c2cd3cb2ce0dc45225e37e1accf4c8a2b29503065148a39a39a667414fd3c3e011a86f4420626bf24c875f651faff32dbb888e8a66f755e35a683bc46387af777064ac969fc0890ca0bdb282cd72c81f3b807bc0b4ebe49f29683e84674593651121d8653374f6edfc0194d2d65453982da75b60f002b7c551b05872289ac5265882143c233f3161d94dd6adbc98b6f49b30112b92c8a67f51c45c79a2c2d342bee1852dc2eb54aa8082872a19932d0d15ab436a0216aa0213b9d229b371a7f750af466cbd16cf8b63bbd1c4ee23c023993e3c726dc26b401e5add868739202d82119cfbb995d7235317ea13bac78a837f0e7dbf4ecc1888168bbff77916358cb19428dfbd2ebf20242f3fdeb6a8d5b0ddfc13eaa301bf5d130a729dc74b3c4fbadeab2eca71dfe9464a1eda771148786a71e621897ac89a6815079a16e15a2cac7048d9355c03f06df7fc910708a958b4d5fa1ad01d3e991943c23f7323059c661215a5b22d489800cdf4b394200510b4fb7353b4f5d8c14710dea729721bd4f47e286c0690180d0f8591df8d95d9a111455f8deac43688007d6179d11a39cdc431881dc381bf0c9378ca592ca6e919ecc529b058a3f3054262fa8ea063db7292b85bc485fba0de7d810a8614cf0a4679e09f18ea8f4d5d52c105c555b1f1f16b3d5d6662aa776047bdb8d523c7bc30b789b92df6adbe7c3ed98252dd733bed95025074d885beb235ac6fea76c8bbc19839005730cdf91c4f124ae662ed8f91df00e0fe601e0a04986b3a4e0e0e1bc9e0aea6448958e67310db942e15a4202cfca3d4dfd757394ff4c59cb064e061022b8d789f49e8e14649763e764868ed1609240a3ccf62181adfa90f9d18b27565c3a32a009efcdcea45de143d63bb5196f902781b53cb71c9c0408800335454cd3fbbc60c057f54a759a39df200e20a424744fb0ef53db5db00422895dc7aa942177c1d55ecba2ee211751af8f1f8906f15e85f06215f39aa8cf32646ffe9e91f19e48704182bba4364068245fdfd60e458c03f7071c3cc7fb057d985c051aaddfabb73eabf2f6fa21c937876af53ddabc7705ae9a9871544bf7e11b54e38a9fccd0499a08a6b44e548406ff677b99f3bc0ed2840028bcdc99ace62fb0b025cb6e7e58126e72e7fd36377a37c6f5e846c8cbe0020648a832ce6b6fc79dc45f171731680f06bfa430a2f8e55132e4dca086e144dbc55355f37165ed8dcd0e440700cc4381e936aac8208a920bd3bedae9bdb45fbfe164b1ad6e55d40ee81f9ecfa327933751e375def441e8d466869fa8e9e3033936fbec2b5c29f3d558ab40bd058e6711087595eda6003cdbc0f5d1a5a7dc9e9a769adf0dc9e9e1361745b0c24e4e1055f56341c5c50764acbd0f9fecf979c103bed03185b93bc3f544438aeb8431fddd3c7245e1c733325008b516703b8a9368fbe106ef3157462ae10f35d7b91c0d1bdba4ad580157a3ecd00588f7329439876125b6aeb3ce72a377d93070d2c3a8151ea1b6b5b49edda1127315711ee6aa6d12b54b2f644dd9ab8e45ca985b03c021b5a3967be6e38dd43b83e6a8ddf4440c07b8326c54df1a1aec4cc8fc962a56a2d467c35dd718d188b2813345774281371ada3b52e93ae5ce36c6ae457ad640012cff488786aff3c4e203518d794464cacad484268546ef7236e01848d751f5d4e881024f31e6526464a2b0dc3b9cff32d0e971d51e60870869671f984916268a9b6f104a769c2377e801f57f94bcbfd43a2b9b9eb55478a74ae0c05ed7f8a71309583173c65fe7a4186258e69d4550553a699c9d5cc7294dc5c48bab06413c3e045af6ccf3d14362e9cde1169c0e24e27836527c60297576a102cd8220ed41d16cf0f8d144f5ad7905b1711e3452d6f12611a0402a8f9598cbf7bb7204134e8b986ca398602d36ff06861d7b8c64d5d799273b6d697bca8d6ae25e3869d847f0f370faaa56717811deda547caf0d6290b5b3b258643851f356295dd47c37770d533e83ad550700ae3a056a7330955b08d5923a11fb1c104b77dadf865cdbcc42ad30adaeb6f3afd0af2509d14c4237912ead3132a7d2b7970b90a41b8622f4b7f73d3e0f42a3d710681d3d96f2a603d2900ef47a7f7dc34ac1d3cc19e38e939e44170a894723ff41a5bcfc4a755c4d62d21bf2e3a21fb22f2831de2faab20b9882973abf731a1ccfc74b20db9a4501313cd57016eaebbfa3f1e7811fd7808340d1869a87f57dbf7e6b5e5e287f30c377f3d0d022bff2c192dc2800e89cefc807505f7dfda673ed80c89f5198b40bb2f238d29e59d2cf65408562a7929b8d60e4caa1caaba35e300534abfbe659a3ac814bbbd40332ba187cd12d116e8542cee26cca9aaa960af05c77e49d910681d97bdd092f570b16b7c97164906606df1ffe9cb422d7c11077ccf2d6369d9d71cb2d8cb35558679c90dd0297811d23d7d1645bf31437817e55b7c964b0a27b17bc7fad1c51a3819c407a500cc58cde6a4e9b283b962961e64a00496aeac99775baddc80d3968a387f0c398927a8c858be83a125ee85276f0c9948290848c5523a7cbd3b0c5ade9f644c5885e380919a5de65007c6efa465e754e8cc5d55b9d3f3774c9920051d2da65188a8d5a837dafb61c065a2b2ae498b8eb18b2fdf856aeb67b611e422536435487a224aaa2293fcabb5a66e3b2853d1498fcc0decafd5ccfd3ed0b5e88e1fad46949b56192f71506d511bb2dc880bd6a3d55902d7906691ce789b66e32650dc18d5a6b89b84a2e154b80027133908e3e49604bbb2652e568de1d1d2ec50a29c2671d37ca1d674cdaf7de49e2fd471aa115d607503760fd718030027018614440a17ad309b64bdf724ca8a998df36a119762c62d1f8844eabfd6e4b95f40eae0f5e5559a3bdea248f2b98c42cfa442498e27f48fcd78bb43a3da0b745c24f0d654aac91c90be4fca1a4c022126c93b410c6c7d8fcf85d871e63bf7282001cdf86a03a929b5280f82d96910c67aa91eb6313a3e95219764c80081bb51f63a30fbf972e27822c4c376da9bb98e371a05a07e3cd84d2ec53b35944b353facb969d0600681c8a44f4590c96b3726dd8b6f7c8bf89d81d5b5facc69d2a9dbe6393189c4e8edd6e6f4cfb63527cae673bc5845616916cb283479219a62d77ab7c32000512f5afdf4a480fcb6efb51f717a5a8b931aaddfa057322da52720b1c2f4c997a6e6bf3442ce60807e43184fc5984af241b272fdfe71469441f289e70c2e26727183579c0206fd5f946ad089040f2d43b1e4015cc683be0b1ccf30f40092829a2b3addf3daa751b7db29f4a704f83cd534e29123bd0ecdfcd943200ec36cf9dca741a39a9bc97e9d022e77d76c435bad660c22d8e63b122f563061fce2196c1b675802024d68f3f1314e7250270b542aab87de6a70d9ed544fd01fc6944b526b571eb7c3081ad74e55b191b832094bda1cc6ff1002a6c3e88ae4e3e6858abedd91f257dc1208069663f0282d79f66c216ada59830d39af24e201aff6e3c43fc125048a054a9b6c82c4b6dc88379669acbacb92e5a8f0c73110029c3dab590c4643abebbc67d9569a5cb13933e19a6258607b018152deb937eda292eb9b3516fa5ad1a28bc4c25c539fbed46ac47e47980f411bd1e0e0ec36a34956068255f6018346f3a523616c8c1f1ad91ad71f44a18ba12532fc248d4c5caf1178dbbac704d9ef0e59bfea359f75b0bce13edc6e76c94166a701d09923a8bdcda3de97eb30ca2f6f9028164bb698ca8225bd231175856c3eff1b80b53627ba13c4757af619a127908ffbfa0ff852c7554d199209b9fd93e508b571981d9439d0bae7648b94aa3a535189849ddb5746aa05203424cca54bb66b5aa2a4b4fe743dd66507373fd06696c8e1230d4a77b5c7b4a33426b04255c473d438944ee208aeca9ac0b327bb530f5b116b1180a8de4c3e682f231dd0fcfaaba21df85da388d89502483483bb6ff23b9b63dabc853fbb32de8f671bb22c8a4715560912572202534822aecf35861c9017db93683a480cb155ea6fbf50278d86e05c0241a8e70da2208c51ea0043024d02d1bc3253e229e7573c2f6115b96fc39fbdb6b9d3e06a080c07db6f1e588ed2e06f6a215cf8fa7710d13d4487a9b8ae9306ccfe5abf177d9784be8a3c3866695f4ee76873884891afc85f215db021dd9d631639f44877436e85161d9863479a875f2611520e8c7f0faf2956cad9bd2610a73689c3a4b522e0b12439bf70810bede71bb5b2d1ff5a42273324f8d5aeb78246938ad892192be92a6c81c65fb65849a49faa0325860fdf830116837ee9af6114b8d90cb375c3cf29beeec76a16be2a778c1e7c6b583198312c474fc32b60c9aa7cd91d2203e35fc2498065f25703c639f0971db93a9b29242ffac4bcb4b79b92f84cef0972dc56411fe63147255ffa54852c9bd618b88c41653e7f8e0ab2d36b96b7ab687354dee5d0e17c251cc30f2aacc47d65b2f8925d21e7e206782036fb574195e5649acdadd6b7428d55c0b72b6de12a073d3a49716472c27d5cd2d4af0d78dc16480b45e1ac405322c8139086c47e3e763a6f2e00251aaca5a266506d4701a8ab8edac0abef41aa7481bd26e105875feaceb02c38122f4836aae71766980138b6ada9dff459b2e6f5eb3c2e369a3b39a0894ab4d72ff4e9a11d08c3098e5fe3acd6532a717c560ee8e07488dda703557b90abdf2849b2dfd048fbf7589bc6d13ce06b6918cd3f3ceff7ad198edfcada1869e3118847050dd69496cd58dca0fac735ef6aa1a244abdb527383d13194a7febb7045da2a7f4b6f1dab8877262c76ef7723e066df3ce2590bcf257f28c886b5379a7af10e7b0bd0520282bb4e976d1db1ffdd08df76040e5328c0d09ee00ff83ac5e20a453ff0c2d325ed66f4338aea00844a41e44ddde0370dd50c20c64469499cdcfa324a306a384573ce339956105145686a39ee3467c7c80b227bc66620cd4f700d3732e093ae09f0fe9e1f4939548568cbed72da2b1ccef47ecf07b50442cf7eab314b3140615589585256418be0075dcaa802705a38026c6f857882f9c9685ac23491f6651eb1acf479db511cbb66cc7671be724b4c4dfaa5b8576263a8207a6529c4872431a3ed0dddd54df887a7a39fb22c715fa271469b992fae95c360ce7029d20edfbe8a4df004e91a85ed1df649919ca59c84d3fc890bcabf8c1d7cd1614c7bc62896d9360da7f931725d13f6a6adacc15a174d1600a40da30a677d031d19d1ff55d1a9349d8c9c87d797d0af743609047bd0d4966bbaed304fb15650ad300cf876e343662ef5a03a79a667ce8351acf5ee6818ecce3c3d17d4d51d8e264516b3e6cbf89b139864347b49bbbdfb66026547201e83ffc7939dc139ce30af7307d2f67b3da11ce80c1048102ee519c9d0e133d1c709f76cdf08696da6f9595f0a53c3ef972128342aedfad627e1ad4a84d2d8132eaf7ade39aa62d41a0127133af84039eb88d2818b1bc08eed855b0a281e7fba6e96f927d7ed26423eaecc3b9d2c143a67e332f714e4274c81b0bd38f3fc8b821e564e0dc3031f23dd745c394b89adf2957aa617fc2f51ed8f8b5216a400183b745dc076064305366b72f84d7a54b368008bf29287a3c5b3b4621180f563d86796f747d24503af1234be354cd318dc3cef5d5a223eef9ccc3600e29bbd25e30a0d2fbc03bfc9a14753564670a2e14d6c834d54fe560b08ac7518057b75e673b2706a7940e959a2293073d2182e7a98755540d7f9b745b9a826a1adad6666a86a48f3aaac7e0838e5424e8460968ad506cb1ba1342f1e40ad88aefcbceb856e0ce6f6c6cae982f58d91e5c34fb2e707d771f43d48b119ebe1474298f8966afedce6be3dcd2945182d7a6dad5bc4dffdd55b414dff7e0d9ef9f632c2499ac0f30c7181f7743cedba25540a325cf3ff0b9f56089fcd290e602b60bb3c65840774872416cde02d00ab07d3ab0719e8c0ff78c3b6d3084400fbec721b2d18a9c9339a16f918ab83a6ff02a39cea0e615df12e2d0dc30f55449001d04034d25b550e849fcf71f2a41ce24c433dfb2230b50e6893abdcda79effbcc2433b16dea06e699486ae03260fcd4a9cb4b021ffb2316095673abb3892179bedb1b27e6069de4e6db9d4dd85a7fe6e2452f656f93bdb3a1e3b96425a0e97c35e54af57ff56d106cc5b64ff9de65c62256022929e5656e5d9bb6e264d26cc18758e6f080beea7c3e876ade62a97e299357eb171fe41b14fa598df11c25929e110633553c7924d1d4db0154fb4c2cbeec6869076f33c3426b602d317fcff395848fa1d899d2f3e06583f8db3c44fe0beee88166174ed0b4a0aeccbc5b9614d07c81bb2ec12b8401de9b6d3ce44d8702893d8f481263e44be3261fd569c2c5c39a64acfff1298ff4a277b7aeba47caa1e347dbd6428e8a81531ba8628d1d4ce36df8a28fd616b4446f537a45e5455f96aa9d7abb2f93ff6d86fc5b3c0de3a029b6b7086686009d487a4f7af7e2632e096e5bdff54960ce5fbaf006d3bbc94a1c3128b3847a1fe0ebc9075a9f94c42ccd9afff32970401b8d4f7f69cc3a11e2c06a82d47121d44fdf29aadaf5a6211324370dbbdf69204d56037ebacad3804d31f4ce14efdcda2c520a85e9320455c0460090e4c56d1a2a0a95e39f3d6eb9fb4eac402dc6a069d97616f544e878934671a6f5ebaf03aedef869a30abf19361432cbbbb9b0ab0209f8e5487f1f617c29f628393a9c5988b9e10d4ffd22726805b6562db096f19c5f92416b5b14cb4bb8e9dea7b74771beb574e196dc0d48419d04b1bf445c92cc867cbc8b3c56d6356e1c887eace8462cfc6ff8bd1958f29b6bd2047add8b3fdde80211b6c76cf4bcd9183791e35e596db2aa0e0ce01a97e7269a25132777ae9d1345657b0f3441dc2f595588abab5605a7bf32c4c6252e0b58b5ae8bd859d41ac3a7e61e6d6a20bab8af81e405b2413489c6ce862a976fd484161871bded0c0edfb7d363ddf7f4cac110f10637a0665d9575d285a8df57152acafee694b68a3dab9525dd55bc542d82e82c94f5601623c3b24ef074f4aa3843d8521ffde4d7edb5457f98d4e21d5693b484114a31737156617e17de3f9e68b8a017626164f609bbbb00b61ecc4a7afb7c99151a8441d41b1ca8cf7000d22290b521490c64b14d46c733f5e979be57290778a0b3db0b3466df998f91e143d699007336a40da0860f7ff9ea60bb82ee4078b3c4786e4a39096491594679759e507e5a546632728cbabef74f6028af2fa0bc9b06cc4770bc8e2a5cecf21e051072320511f87a2710154486762f91c0253b5f91db289c0ef445f05b158cac547bdfcf1989d43c0e4d13025d8ce92385da3176945abdc93de16f301af1c5c2a5878aebc4e40e6e06579fa0c0be8ccdc0c0eac85614ce644616da17b4df4921759205828024d0e7871a1a16b805c0b2d2245b252ee8015f66374112de10731432ae4da927db3bf1e70a6fc1b1b99ad5bcf8b539563cb6670ed21b7522c12566a31f5f098edcbb61b44f6d5f36300662584703f67c42431a5201d3da8be8cf76d62159cb39197918f6fa599e7c58450645a7afd6be0d0acd11764fe00a4ec675e3857cc8fc240c5e316efd857f9e71fbc00263e36050c65332b5f6f1391ca13e5c56f7f8a0c9fecefb25b38a9060a6f158e60578930c3e11499520c0325604df8b3cfca06c54460aff457d5eca5608068f839b828858e5b62e4338665d004cab8909658c117fb9ed16e2a9ac9849edddc66571b96f174e424addc805f4766a4630e3f80e1f1ff9f22a09870ddaf112893bce38b0c6c80fb466b2c05c395aad123edc98419cbe2a4f27e11fdb147f0283429564274cef8b261b9cc6ad43e65072c9321373e84c09ac5e8d9a5a25aae5a7a6c31c077c76036e10665f62bb1e72c9e60443f6730f21cd4605b9b7b63e08bc7f8993f90e0c49c766ef5ef87d6903040b4831cce94f7ca34e602dcd71820a987af4bb97092f80844b3cd044ef3b30695c13621c6594db80e64b349cb8aec56b24a485fcb40fbac469a94e60edc0b31cbce389cf66d74fc9d3f3cdf68ab8ee872f5673b365413c3c0649a47dba8671528de1974bfb8a141e307843817db3e2742dbb4eb06a7345863fb0750874838d2eae3af5321b384a273300a8d9390090e09f07766849e3453d30781d97522648789071656a82bbdf1d8f60f8eb6a806d966e69b8611be18bb36d8d02e740ca6abecd71a3f82efc0f20c771d220fffe5009eaaf9139ea70d4d460e5253ce0c5e118daf53d0302b9983208c702c1c58a9166515170360f9dfb0f1029591d01c995730f1012fae077dcf769119c0278611893d5c355fa744827742f53b8b483c59f4273a548a3e03b5bc07c089f374edccb1b394fd1825450d2e2134ae44c7ed71bf266e3a097c32b2829875d89d1ca8ebcb4ca39796df377fdc402ec96016df003a2bcbcc7bb246ad70657f08c089dc679e834f633d66c192f8c389422401e8087b4c50448965fdeddef981e78f1cdf4724fc2b8653c61351946706ea4c0b70aecd104dbd0af11788403e50b8ed43e57bf57a5ff09e21aec76db0e146714a28de6234281cc8b910e542450ca99df749c5fbdc559db447ba85f7a208ddbfd49b6f88298b3f3ead51cc1032d29524212403ab958b17836fd45226e0c77f20fd59c5f142df140167e3cb9f54c568c68eaed4c5447fe8c3951e787f419ba953ca0928f9f1a88d48a872c0ded8cf6342863b44c3a6cb0d06d1b565d926bd7fac8c4cda40e5a357cc0e62ff71fc534ad1fd0f0ef8794ba804614eba393737e7ba47e4a1ad812245b62f0cc89298804ddf400099415f19743072bb0d64816ebbc266cf14cf92025499d8932c5d5a5d351da6220774d9cf7e217e4e4bfdf6797e779f5e041642312b9e51ca1205cc4f0caa642ec2279e2b2d547abc9e1545e341bd52ef1fce1b884226c882f64b169056efa6e514f51ec0b5ba71245abcf45dc5ca7f2f3d38842b07d66673f97ff7e3cffa4a95844764c30394dc3e6bb581ecbcd28527317277094faa823b32f2b4fb9a56d2d2dee8e2d6af39487e2fa45267635d77eb41adb786eced607509c29bbfcccfa858891ed500b490ec3bdb9b128a7a8a0dfacb639e752f3e612562b37a656e3e5b857c3aaf09f4d809316045212fe76bddcd48aaed8404aca1b6eed33ffbe59bf1499dae6be3c17df047cdf74340142b6396eca75bfd9cfc320cc82ce04336524c1fff41edd058a3fbe57c2fb12bd530a2cf4f119a06a734f7e2a387382f8fd10d271a1ed5a96e9b6db4b49cf61c7352f22783cc4b5c6d3d4944d6a1929f374385bcf2608b94d9822aa74d4f0168c596d6ca568938fcb031c38ef5231f936d6078af18a8a948135ef3204e8ba047ba8c39a0f7d4fce8f3b5151072432da1cb1521201f59b0520d846534ef6755a3eccada37e66b90515f3c987ce86fa41cb5b4837e989c69956f39bf12592033418b5fe27ebc8357d201ba30249b6da2f1f4a9cc77e4cee751f8769250331d4071f1223c2ea9f35c276e7d18ff8caaa3a1f4de6f739390146fdb2a6d2fc73ab7127138a23e737d2943fa8c1e1ee3c5ba33882512c2201d391e489af4856fb77636f1559d3bc854d9435f4c28e4f3d09077d3dfc94e5b7b3d848ec3f2b7cf581129bf3fb6615de99d0f2b167b6ad55e090ea88d0c4496295964060648f0a419710072bb283764b6abdba949b78e5d45f990436b00189b43f3a096ac2d6aa9d0a146b250eade392bac6baa127236eb83f71d566c3f753d9f164f98334ac4df7a927a1e30d69fe88e8a88b3d259ab8787df265b3f1944191b3fd27f0aef87cfc95514f3d89d551c26a73bd0c1cffca53f25632010e97b6dd26afbe6f9cc8f7cde15b65a574122a9d1b5f8aaab77229bd2011e1bebdfbba8263c5f79f14168b42365978ef352fe622b41c2d4062f32412a1f98fbfd57d1a063822066c4fa917c7d364bca5f7f0dd723d68e54a789c6c36813411f15d0b0e22a38b463b2bedb4ad5755bff4a354db7579a8a2d31299a7742641083616cfffcd00291b04211d498ce822c1c85e637c9e0509629960bdb13b02da33df07326b29a7a9f1edc37b0c9fff4d608a7a45556b786da800cd3d6721277e9fd9ebe8dc5674be5920831a9df1c6295f3cf9549f171be1c7dda8f85ab57d598753c6e1775b430aa2acbdc5ad92d4695412cf14d0e20c390dee908f9ac641aaa992a8e8ef7126ffd218f60dd76ccb2e20efa5c2d569633fc52d58cfd06e42e56cc0f537e0e7d68dc73387aa185ad50ee79776b45ad88defbf7626da879174be3e82a076c66263330f418b0b9c557e3990af6cc81e382baf30102922cf1684790babdd5cbe335ff2c8c94df97615200b73c77818df13a4f4724b035d074a8da97ae8f1f6bf51ab378719a71e1fe3bf1036f52e8e0608f5cdf636f55d294228bed518c37294d029c6c3b06f525d005c2152ecc438ce0ee612170b2577b25d6a47a3443be025f0e05182680cc7f5984e52a676792127a75135ca28ae4f15538f65e67ca50cb51cd7ab6a959bd353c18e26c769eab93692162e4ad4a29f71e45e82d6857a30273b5ecd240947cc99739f64ac2f79da2add708d4c29c0bfa849df5284e2deeff29ed019e3a06053d0cd95022e1ad0e924388185e9ecfde27fabaa767add546d97490713ea9e5cd36dd3d012900ee2d3b2281bbf5288c697cb10b12f22d2992eb115987979d29b909e3e762cc91460aeb4b5dd6c6efd9266d966b2475b49ff6003cf4b8cd12a788cb23b48702d22932ea4f8ac35b8aa6481f422d8f4cc24c5c52543d888383dfab5ab87c26cb292277ee8b136038eed227429225f70df5ed4097a117edf67ca6c91c090e57396f8ca3e535882cb7011e6f991cabd9ae57e7d2020bcd25e4f1d84f90f8d8545bc813aefbcd45bb64640025673e6a81adf896a356459a462072b423b0e270408889d0436cca9035e5815dd73d375de544efae4c75f05882b8ae50c91cb8d8b342e53ac2d308e64ae102707ba787959061e85266b038d95cc205fb6e610b25b480f790640635b2c0c5a916b618bc80e519974b6c2c301909aefe64e995b2d9e2fc6f289064deaff7809b48c0d703878d566983f822eaa686e2fddde603120a04ba22aa48dadb02481dbe435cda153269d067e8c73857315bed11a4859a405c55ab2abeb840f6e1d79481ccce40aabfdafb219d224391d5401bba05c25ad9f2e65bc643bc7fbb3ff9ab39853c4b9209e2edde52aba752831848b4f146444b7ac3bbef4b9a36c40089a0fd6ca52ef498104d20c080f662ab0ed6ecc745f10550c4884ad6dc4cdfbc3429e4e478216ca20e953bd658428e5e3824fa04ed6581d634864e0c5da316ac4feef6c9be02c4114cf736aa868080491036b3e7ec8049e5037f41701974132b98ced5219c8e87c668ae55c8c40e528c26b5bcc2828c2f8546d207f0097584a5193f87cc602641b65046a16a21d46f0a8ce813a59e63934554a6fdc58dacfa2773b629bdcd6200738ee9bb8f10f47dc96d76020be10fb263166d62e4b852533a690cd283045efed17c7c7f5e1156d3d598119974b3a353b725a1a2467c8a500648d6f3ab62951f77b6fa3e418a354dba9fdd8ffdac64435db09ed3cfd7b59c3c339269fe0aebc9e1094047b44242ee4f70acbc24283d202b33aeefef3603887a76390e8e60f5fcd534f52907e5dc19edd2076c3841153bc8e240f743ca8c232c6919de6d1d3f1b6f7586b757521fcf776958197661276630e6cd71b0ce6397e2df89d538ab117862969c55464866fd137e0fda3ff805602d83b34dc51b62f9ae76344d1d7bb22b6fe22c1a9f8a5909abb16c7a4721999dd0f2ed31ce533dc5fb262423186e18abe320e56287eeabdedbb825499aabc22c3bf2686a4a3db40d34a9903eac2b6956d5c1029fd234780e6c764f3ea234373c4944b601c9f835f76889a59ba747841f71439348d5150f7db69fad9dcd3c063163e5e3e88f97138947a12118f5f02fd643eb4a2b9ccd15f933c2194320ec76e67d363e6c9f1a54c3cd311ed59537cbc6568250b363df613ad7f6ca20b71fede87561b1dfc20709645c0f712d73a6f4b41f760c1f6b312fe5dbd15e83bda0710034b2ffb5764eecd078b7f8636a8711e86cced5d1049919817343e3fb712eb1cc5fc3428f5e218b986f321a2bafe0ead61fa308decbb33658805cfed14ed8eaf6d1e33d5895a299a48813d8421b4c87f2493a68ad58fde223320b3c2b1b4820a69de5cab3989466063b6dd10ed309516e7007b13acbb0ffcdf8585d2e0480b763f9f52e572bbec8ab3544575cb9ff7da9c4e0dae294bbfdd92fd7d3f1017d6935c495fdfc36d7fd5a3a9b02c097a77753b5f6ca4e44fc1043d51f8aec2923a40f59d21d0761e62513dd5d2e6c20a446bc81bd897a5a1cf92d0fd744c7c65e310c8ca289121cbb432bac56b97d27d428ebabe6682c40163f12200cc7cc76bafa133a40e05d43ea9ea1721648911646a34adfddd31b07c01fb7f06e32c0730627aa9026cc7c44ba84d265e62b5cb6465328c191336be7503da6f7ccdf6337f153c039b37b80ba3305d3975ed4b96d8e29c40de40703804f1e6efc55fb8109715ba63cd28141fca6524b5b52b3f7129d5a7711a71c2f101c2273bb0b912411338acd5f223bc691e12f6731ed35f04ac5ddd7566d51f62e53a749db1544d8765a071d1c7631761d877236ce8f5ab25f1166448df1d1b42a8ac8840b273b9397d8510426a4dcc701785175252683bfefeb0a5f8dc415bce2c666b776640a6942f426ce2fd153fb34a6660f667b5d2f2ef34868cbf9adfe589db78dad3fc3ab4e88d3216d7308adb90e2e89e4afc9f0e582849254921517e1b9412907b075244079a3e14d84328738f58c6b10d500990516234323cdea1425db9c1cef42aefe29252032b5a58d051862051d4304e33e5598416ebd27d3c667b26cb0efa9a32c80583be26612831060a58147aba303bcf0a8134d8c1bc0617a40bebfd580a077603f308d2023b585033f8e6ec8d51ecbe7bbffc396109b8acaa93200881f4656188d339cb685a34a112ecce4ca4e6d04c64fd6a63dbeab2801cdb11c54176b5a0164edc2b7f50f88f7779990251ec005061a1206683fa44c86ad784a7eff094cc7e28f509c91ecf2dc1c1c81347ffd786466df8158bf86edb1cdba98b95aaf3890be58ca8db2bf6d26336d423ec7f75a058e927305ba148c28fce1f86eb8c893fb2bb45d9c210eab63d56454decf3bc78f4ad53ca4a70d1abde10760eb65185c8a36025d02a1a5de4400c711dbfb2640bf343867137d78d10b724443cc00fbd8f6ebd3ba4ab16dbf898c7dbb9de036afc671c46039622c7480d6c9c005a5c905539e35acc98459b5f0e67c13eda38fa60929492a047d397a9c8eb974be583c8e445508d9b9f4ce687fdc8c9a0106b1112c7aa85e61486c7d5defcd7199c063eceb3957442f56bb0fec3d8e2cfc21c9a0c25149bdde136bc05b0fc7400a33f6557a374cb19994932d200b8fab481bba75e299db76598f3fa0146d7fbd25f1e42072e36940dbf62af8abb7f5fa91d35269049d7fbb033e34da0b4aa3e05debedd84a726add9143bede5b3572a115c9c5d591037c739acdbd2527fed1da74507e4804cc34b64c42fc432b6811c85f13aa99202f5a4c9607f669ac30bda719676517160e0f7696071e1a55df9ba20653ec5f65f8ba7e59b5c9fc27da7c8d44d426cf8b79c5337c65dc4ed0a2680158248d330b7c16795df06c57fddd69437b84720d381cdb4f5086368f514045839e3d2d09e3371ad30edd1b98f1ecf1af389120da521d64830b26edf45c60acc55a97353dc9cb9b1051c110832a93ed8c05fca79865264d22e810fdba63f19a68810bdd49a2736c1bed775577cf09b5733dbcf7a001f68d67d5c3fb50cfa9da6824834cb2968e64bfe5b99f2ca2da627965f69f425de5913d5d14a8e7af5bbd4f91e308a837c3276d052943c1cd44cba69bdd7b3e4d134b9c35c253e49169304c6ca30b119d6293c1f0675da038601e2718a9a09ba31c4a4fd5340ea0d04275626325c75b6d6f72a3f14418e800916e9c6a5fa0d0a89a438dffd4e61da50c56e9631b6a230856bd50090099f885110decb80c533dcd31cae291407a09a4e5ca935043d1488530e50cafa11e52cc4b91009233f40629b370847ef6d85036e987501986734bee458ecdfae9d8ccddcbebd48618749a6a0db71b41e363744554c1884ba38f1a7cc033c08d6e714a36c760af610136c61b885d45c020292bd00fce6baf9a3f9e521dc8f4d4e46e955f30e7e662df5228589d1e42fab4a5a1e288dea60d0da68c0e9fbdc2b8fa058ce9fbcfd44d0fd5ecc8b92c173105bb92ea634205091e33541a03da2598e4ca0b36d562c093f8d9b5fcaa9b8730c6bf95c3c70cc5ec50bd49273c67b7a195e116373d5c0b5f2e791b1b5b563824b47436f95cd4c41c399395e0720c4fac3ce74a3feb13f2fac7a11a7151e7e9a3433eaa30a82859231ff7c810827bf3e657f2d0d5a3e66b6d5bfa313f570683612236c737f16a3acc560686a65a8b80706c5b854acb7a07f50f4701793a93a75621c6779d67cfdede2c6479e6bb3ce389aeef8786f20f1eb82b466d386769131ce0ff700dc5487e60de534d131756131ca69f40a1a6e09bdad71b3089e0f3a3a4052f93ff0d42e3edb583746a973f32dd32b5219ba613f40d30db850fa4e13e8a917222bc7d4319031703de8a2b1eb1101d1cc44ff3729bbf7871879780fe6797642e99f13ff6c274f96aa8d644999e4d5cce138ee5c7d909cf2de089ba35111113f9f377b5cdb85659c0293d450cd299bb0f7c8afba66c33b597a2eccbddf8a513b148959042ef26977c91aa46355368d9d68a347dd48206243be3aa05a50c3e72b989e4bb6ec1848dc5e0a0552e694dbff1e4a20b8a61bd9507b3dcb483d1367464c452de223a4f3b3210f6089c1f5ca4dc021b68f6946db1c5e3568eb091c5763dea004576cd6f3b58c59c6bdc614046239be7bea6505c4aa5821c1fe7c4fb805762ea3c9fe12d264cf0a49821b2a7ed4c75eae1fbe6cc34afeeb2007e98d35471714448f99cf7723c7c879c646bcb3583fca83a64d51dec3a2083453c1c2a5628b8e8fc456a2575e5c9c41c409f0261081737f2f57095f2adadcc7afab5acb42b353fe3f8927c6d53b0ac93899ecfce0c06b9d78f24ede9127815a95585f6f074cf615977620450faa543fda33a964ec3ba16e4629ec84e5976e101a8785904095e62b29ad845c426d6814a99322a8b01a871cd9b76f49076582b478c26cd2570b7bd86ef22cd635c00d33447e71eb2bca34aa36015749339f99bddc34ba4a6be6a5520bf61f9ff28938fdac25af560cf4aea9492f2a91670917efa99beb7600db266a8cf79f5109f8f71108d1fcdcf5b4ef01eaf5a83a63f3aa25edb8c1fa3832f4e9f5b8a871de154f4af237efc8a2bd11975816dfb85ad60de463a62b1e2434d68114412bb6d562d60e9d2920635c3fe464525092fcdb2bef665e59146410fc84943b408175218dd0d18d9333345dd7a0f902f232ca17b8bd4a0049a09a31b223fc4513b8bc746534ff43a181c4765f7baaea967fc578a1645acb6bf51c4bbbe97cb936a16abeacf2c69e69b53aa8aa02aae5220f9315b2492349b7104e40947316d28df32e5c8ec65a69d45376a65f3aba6cf995446aef980048220fc848d6375b99a464d7abed2a463068b07688382e8164b01fa2e8d762896850ec2921331f2d8f5ed810885b4a0cfac4ff61d25d0a2076a0e67d3de58d90c52404d33e5a7e9d4fca0e34407b9cc65ca58298857d228fd590fc3ff0eb7f0abb43eb487162ec4b5d9263809f5a5049d2689c50654c54700eb88e2e788296735437f1c24647783943937b49cac58f9e527de8218e71c2e80a2e40aa55eb046ba77dbd545683145614df22640e5d0bc08a9bc44181b5c4d3f766c7425f8bffb5446715ec0acd839dc6c5086ac078c1c22a2ea8598b1b5a35cfd353cc04afaf83c33f8eef17577b8f2311842f0607b0fe145b6f5e467d7a63fca48c6e96975f43a8b9b67973840ef9369756859571c6c38bb7146b63d93020af21f216076c14e7a62fcb153b9d5f558ad1f58bc650d7a1d784052d2015bc0c65472783657e8817bad164291f4bc36bfbcc11738a6e7543c1baf70cc5dca521ea00d624b96e051391830d5b57f17bc4aee56583395a0f070b2e6b0bb47c1a99c9e00c2172549f121037c04d4587e5363fcb51a91ce238d59a56f7f7986505ebccdb25c785ef69ba8707beb96dceddc47fa4f11d4e3e3924b7c1e7da12926f8de43dd814ff6e82b19d9229c60f122507ff05a2f49f6a3decbd830cf06f08154290cc6d39408b546a71ee80ca52308521d079c9079c6f9ca145a37cc2f68ffec335f68c9458c856243ab7c2c03c532e2844a33f7e63441e67b5d67c1f75b599f4839097096be816b294e632bf4a30d65e7e94a24be4e79406c92c42f79657c419c14bfe3a1abea2d18b66228f7181e060c19442ad4738a73899fb2037682b6e7aecedddcfbdc84ef6e25104366cf6827dfdf93acebcf1a970b58d47c764960636411ecb1b0220caf85a037c5235049ca8e55b45e8d15dcfcec692e952bd67268b90375e004ec75b979b74dd700e61de72accdf04537da20e5b33fe0ef02a753363a55f759ebd373d25f529dec38964bbacb9aab058270f9b1e6726468b3806a39f9a536d3658487fcc45a540a6d3f17a6eb668fbc33728daf10f1ac2e4dd458a8b95a02e0030a512a742f2787106f3a3376deb6ab051905541d15ffa794c94bbc7bad8eb8442b12181485ee2249730b173cfdd073d199ab9d48e84783fa4c02993d22a0a54e3c7a98947b92ba45ff640f5317903d6132b993907a3baacaab65c54d905a23b42b2178181e0a5d33cb160868d4107e15aedb6fec003c7fe9dcfa65fa9fa70798dec21663f3edff16ca19d745905a7eba01a9bfc22a110080cbe9d5f1a5643cb9d0604d6305bd885dd28eb10ffb66d70796a154de0a157a3f5e8c480bcbc5113392980b31a86f280f5c4e26fed7e56ae34450f38a449e195424c5a7bebe939f626cbfd571e195d14a6a79669bb60b6f2d2f47ba0dc5747419f30caa5bdb615a7b72a1d01682903d55dcf69024d32fa069f132181853e5fa9d55c075e39435acc35dcddd63934b5e205394760d4374b97615bc3eb61c11a77d7664891b7412476f1950fe642cf4fd591f2597c842f6ee47e951f7871d870beef34e97104f673368e03253485f651a01e0889c9bd9788a6c6ce732cd82ea5b99c2f217a55484b84ee297c77a8da532670cc215bae62b64d33612e350282d32ed1d984212bc39760e590652b05b7f873186b93bae338c98adfa2ce26c9cbfbb5886f6efa8c0f9f256c61965a967de9841a6bc20c96691ca99f3a760aba8c91c483032007226354f4107b58e8ee6158272901e238b1c7a03a7dabf5b1aac59239910c973536008bcc1fe61975a28e98d57da8589f914a413b681f1f282365c23931324bea542235cb5a895b7fdbddaf84a219c2797e285fa1f8180c35deb352db309ff815a14253bdf8bbb13f727bfe065d8fb9d47f6de8c58a0f75fc18fca333e5714b079ef457dbc6bf586b84719e66a65b2fdd341da1ad56d6dfdace81261806180aa9a6f56e9e309bea422377ac20c11da32b042810193c9b48373a8b64cd1168fa2091dfd837cc608afb9e38e36353dbb0d0985b4e1f6efbd77ba3da768a93c9a397df75d77476f0af083e7825b119baf58da6b03e9eea86bdda00a3437ba2408dede6f5d542b97dd7efc0eab474544e1e49baa2a700b53de30ede9e3e9d0bf72f0af83bb2d6ba7d1eb6698fc921933f178ab059063fc6a7414059855abe0b843b97a320945970b3a7ca913c84126bc19f8ac3a6ed5f56725afd06791e62c2dfb0c78dbed73c74079b068f7f645489e48919763663e0974f45a6b603a31645453ad2d92b9c06b0d081f5a75baa04876ee792cd7db24457f6e39da968fc696f06328ac8861937952cb7d7b6fad086b0fbc570eb58f56cd3c1e410bacd9dbadbcce583a32060046926dd4bb77f84e284014da887f585abe322eda9bdc3898e4c3ec611f16b7ac5c7ea0620c2999096a2e3354baef3992b23c5e20e7e1f5884f61198a114a0512f6866d5b9e09ba75083a41786f474611e74d5130147bf9da0488d8a6b1c1e4f90d7ce4e4c02959876837d1bc4ce76a7122f552d2161538dbafddda07a50888cb91729d01b468221c5e2132c6b053cb24afdb5ea1dcdfe8e6c1a86978238ae3cfdf5000424a9a2d7953b289d8d0c1979b42776d868586b56bec9e58e53546c4bfeb93e4ec7edfeb091609d9846f13f10bfc64dbde4b687db012f2b4ac79cf1ebc848f9bb6a0e418ef05628eb11178c18ffec713325b36fad337f878fcc7284f569b8ea7f717f8d3d9106cf3ba3be5a96c077f323b7bfde769df30760aa4a0b74f1bf91365cf17f709128c7b9d016c9116cfb49fa53f1421658adc4b354a5f1e5e5a70375dab650d6f6e228eea4de1a986d8fb63b852923c10ab16875a8709eec642aff8954a82027e53c7cf78eb47ab247d37eaa551eb699f1cc1dd855b8e1ab79b481a1c42c3f65e13f503803d8f96fcc457b2ee44eb9ba5654ed916bf50a91657a13a95f30fe9186bf6834f413af659d1bc1937b452ee276167dbc8bbcb858b815823db0b13ebb100dc286221fa9d354443029e906ef154d63900eb0b46acde56b067cc34c4684b0a89e3e34d1f3af712e5f5fe380e8178c1cf9d66168627457090546752de1e4f47e676225db1a842d1e6ddd76ab113d8f2614bb10d3955d69ce51b10599ee3d6007d91528fe3459e2a52d014da0bd39cb4c7a322a3acf34abb8035743fb807205e074f6126c3728c84cfdc7109dd7f2bfe2f0d41aca8d30500e34c2cd803371d4eec065f0663b228bd6d460e26ffedd170224afdef1919d98ba89865b7ec3e1e1a75247372def9c02fee3516c8c795af942a4b49a91e5ee181b295fcd0856e3503a4e4e388daed3d9d7616510737538eb5a4edfd2c80fe3adcbfdf41388f1fb767e0498093c49ea88bb480e35f0ec24b4731ba6392e7d3b1c0ed4e0c6616d05943adfde3c29fa4f9c3ef6e0178e23c292c33f803ba6268140d994a114ffc533f427751cb301f27222d606804c5adb7ea8dded788bedd00dae15379ff644c0e82629f042c94e248bba194145a33c95e60dd2417de529eb9264827d145010404ff52f335949c4af8c88b195c57646b7486595c8b904ab36f23048d4128d57f338a6ab843ac5d4fd90c60e808db3285acbec53fcad1a0fd60dbd8deadfd6012d5481183a1ca50e39c871ea3a1035f779b7198f8478350717fd78105ceedf20e50fa035dbdb7c8c22d27e0b628e132b3489eaf0f511d7dc4366c790f527d2102fc9d46014210e53fb7f8730cf11d0341085fc780ed62f028062504f0ada9732cc7900a7e8aa84a1936ef03521e5635e3d07f162affd540ccb40811967119d499adea48f33a085834f1b8b88e54906fcd717e930b138b6ffc317103bb505d6b4513d23fb550ab69ec906ed72a5c895e4e1ecd8e44f959b1128cf463a30d40bdeea72354069be16faef5df5420ae6581867552208984e0195d8eb7ce3f15e6171967195d551fd419aec80027b461067506d01b5c2190daa846649e1d85be28bd5d73641181852dd9b37bd37743a7fda539c7edf1002d545bacfb47ec370e4e7a5fe4db3d31706571ea4b5ef01200a9aa02440b3ceaa2b9d77e52b9efde14f86e94abe338fcfbb17c115eaafbdc647d592edb0b1b0c8e0f781de04f32c4a6705c262fff6c9bb8be0261f9536499fb670c736309254b0312bd17cd0585cf52781482ba1e34be7a1d440615425c8924ce24ec4d3f9dc2d620def300df4365bdef5416036d3ca3719f0e4ece3795bab0d2d03d260eba6062bd72dc7cd31531dc6cff7af4a80b073301c3e778ca2667b3863e6b5391c5feb3f11f7f892dbfaf74ae951713bd24ad4df520409b53bc0a1eaf29bc44386e656d0dfaa86405120ed090e5085d1635163cc33703762fbf21675ebb6cf5f1037801e689cd11b53b79a6bbe0c4d5c44d803a512ab763a93b6319e42e9d41e4a66ee88cbf03db79e84e91c4eee5352b67cbe23ea8b62e3fac8d3907ea050769752efec8773007de739ffbac5b8160644ad82cc63575549823f7aac5ebd2382bc77487dd2893244f1345b5c34958213b412c05da87d88b7eada9c7864f55a05cb140a51a178aaa98a7fe4ddeee9dc0d026e8d9e4ed72ba7aebcabf897be5a1f79fc40efd89378b133be33e037783b53b1979442e0554f40ec8a1af8405aea8b2d980f9ab80a6812787be2fbc9b4a957f48e48512895a245e58b106c4cdfd6d1aaf8fab5a310e81066f54aaf92ac2b2fc2230029c1e05612c3bbb09dec616a5165e9301c113602e1a826581722e73a56f1c3bf285d07fbf6790a558acabdcd492acd6c0ba2573e4d85edffa7ab423d34458e69d8721f10660952a5dd3c697b2e4c18a6ba4d2bca3ad291013bd37c3ed9739a16ebe8b5059c09048456222d1f436f3617e4bbb7925f3f5f1d78058b959db097851ca0b59482b9bc267edc866f8b331643d338de42c2ec81b1c1331f1a6b54c54b7ab6eab8dda4c81c57aeee98b322f691bf3375b3420a264e035851dcc283b2dba6d55b850f57072dc8f022abd9b63d118295a3e6d262b77f8c22ee42a5c2f3304d805cb44c3dd9cc6749ced281e04f090d271e1da821f30514b9719ffdd60b5865930a24f3f936818d8f21e6de010d7df676816cbae6096d46ecd5d3d0423b376dc66f8b8154891bd0f38cbc78d0a4affe48140fbe714ab51a3491cdbd63c3aff6f6bb966a5bf124b62d7a72e0caf436fb6555522235a117a3890aed9b62ee9c72ad544613cff9169c9aff4c58dc4f3a35e5ab9b1557bc1ca5eebb0401e1e24df655b787259640f5c9d1732ce4f3ad07f8664e799ac5c9c184070e1529d10219e14036d4d26b22e6d890b907a0816813d7c71d0374f5410a7ed0a726f8e049c6969b68ee22cce61d44ffe647b67bba0b970d9d1b5e32ceaa7d554f4ce4e5bea7c7c99b539841c05e41b034c1ae07188c37d3afd8d2aca4e4174a150d1b00d9f23d4b3a29e459205bb101ce975902acb4da8ef93dff4c2fc91b8d1f509934ecf72f28f29a2ae8983c576e97207db1a24d8c751070c8193e97da6e7bd6f66626dea0bea8a7bb19cb91ecdc3a85efe30985a7ed3f930338ff1a4f94289f9a32da871439640512698b676d010c774d868a1dd927c5a18ebaecd4d0ab851f599436be465c833a9fe9dccd26f1f437b061a4eb74e57ce67d0c778f4c31fda91896e8911c87a6500ec34b299697e2d454cc836bfa1ebf8f85a4431a44655831b862b9fc96d20e21628148d1f8fbea001a32367a8681018f8b7a8b541f8a7a6852164d6481cbe0ee3def1dd2b287bcadbeb7966936cec76cb5c68d9dd7763c895e46058017d2edfb730f9fad1fe850a5cca7de798384771a149b19d1c728b1e746c12e65735fc654823941eedebc812490a7b5e08e05bdeb33c640c5740443ab96231a28d1c1a51848893e597f2d3cdd40d03ac7d51f52b449fd798b539d3aaed3a16f6c68afb8e454f6d826c6407adc5e4b3129231103735f6d04c89aeb09a490357e5ce08fec517a8515715fa0a6630ef5a75a6f3638ea776339fda05a6892d31281b9bf48eb6dc48417b395ee6a91b75e838adedb69c8a34aa272a68b85d9a954a91b5f287e0d2c1c4260505cedeedabdf9505e6155580374586019b0a3c130273050cfb01d693fb01f67f0db0160c45475a808b20bc7b0f177288a57e8b0ff63920f8ac7f166888a51a3d6d09a7566c87a0c39a5659926c4ca8587b3367f838375f4b8dd2c63120885545fe3d16c7d0c68512ff02c469e212545487ccce27042e25b71045bb5b9fdc6494bdb24cf4ef9135fbbc86b43462f5a17d39fc298b8944add042109750be5ee9ccbf7a8d5b3ee37b5082455a3cd8af98d1d65e333931522a0ed7748a9bd5d2ab5ae8f77dc8c98ed7b1c1c29cf95603335ba820be428b6fda632dfac74060c1a4068fb8834c1ed24686f9832abda652c3184c1404f3dc665d22b5ee29083733b1301429557eee3439d5988454ffcc19b0362337e748fd60be7111c78f8ca9a311807a41e8104eadac2f34c320096577771c5c70231f1c59ca58adfaf8979e4232aa5ad656115de134a5f929df7ad6ca5fd70695b338e04d5d91534cf59b94eb8c6d249f97f7e10fb0d403fca923e34cce09a474a952354e062a5f09bf00784a2902bf92b9187b42dac2cacca22d684eea6fc84535ddbd071043bf5d6caeba63189d6a8f8bf4cd9e41a870f6dc628bcee3eb984944dc4c44ac6307b46acafea4a74cc591bf9616fe6a2f060712ece7dd9196480febb77924f3734813d0d00f31b8375dfd6a8c49f7fcf26b9513475d918b20fac7f1d2150f2d1671db4fd346c4fa728b9ff764215ea3e744c5757151953764e9dc3c90a504cc0a328fea47acb4265e5c8a42caba4489fcdadc94393102c2dea2b58353cc30e553fb15d35ea78c607075fab317b45aeb58ebf1e913c34b4af65efd6e4e5a6cdc0362be6969dff4d6e6d5b6032209d8aa4b82152ae562aaefc24c3128c450292b46ff4decf84767f2447b6d038d4a728248bb99189c897b94589b85cf6ecd3e1851d5a99bd932fbfceb185c19abbfc223bd792e3417750921ba22ea6c363256c0fbdb66addb6b16645c03f0639c167093f79a27dee86413976df336331a84138666d2dbcd0068c97e150df2c21a0cbd21b31991c0081f02e54f684b9b7add0a7a807c1e0f262f013195e547f6175c5396659ecfc14259c15a242b89d1156a3d8c0ab336f768a5dd3016d07bb39cddcfe34e7dc755f192825da1499a8b4e1c284e5cb5a508d7b7025977161bfdfdfe47a9efa8723621a4021d4cfa943abef304e8a5320e0f97bb600dd19af856ff78f52e05bdfd6b85d943794efda6bbafce66387b56e2d5b455c51e637c17b9d38ebc9b8775dfc7523c330e246cb11605bf3a969b476ad212018fa868ba8b8d9c7185d0c3855f88fcb02b4067d7ef931d512354b38b04c551a2c3be253b88671b51eed03075be42f23732d0f5c9af51f7a33aab61e975bc1299df595062eb4053545b9a4fd81f0fe55f0a83c69d7191ae6a183c81292de732257cc105606a7e8e1f0fb688e2df92d67e14d6d4752a67605a68521a586241c148680412dea31e6d1814623322b8dee90865c3601d562db77721a2c368f122ffa53dc042573b42381574b48e5fddac9c5da529c61e3e9c2b5f3be1d0bf2d48898de1a7c29d34791aa61f885e6e2676552224286915679eacf5071ff1303fd718445046954aaceef7c49932fe7e49697e710493dafde3076a0d0fa29c2011f97b52954c5465aaa749b5f68a75f4e55c47aba2cad861e22c811d70637337e3e41dfbe6e0f844ff0e3d9ceb87faa46fe5bc0605527dc458d34d5f67ce12eea119510f9bd710e3857e5f56e3f1eca807d7e6b6d1522fccf31b0eb24f080e1a9809b05061f019dbd41d4adef08490bfc700da9576aa90ab692581dd30638f44d889faadfe86b4e9fe90c8ba60dd1b812fe8522e56742097c8b0994335c21bd6ded0874115f06461240c81cab1655df92a5a94798c813c5dbf7ba07d64aacf0956110a52affa8782b8fd2c25e4ef0e8d860d8aecaaf0cbfac6a2bcfe61aae2af3cf4e9191db84546fc9a3b09372e1a115510c8512d680a1469066c7e2abeb463dde3f79f070ed9b6f795b148d4f43019a6d1f4462fab756d602e24b319e3befec4410c60825867d507b45f9d41f1bd97f4ca530e314356b66afd52251d6bff01ee334d94a04d94c5788ff160699be1d3b57c20acecda13c0d9e76739536df49466b7174b2eeb4c54be74c070b55d0ccd90c3402a76301ef68bda8f170a2e6b027fe39fbb7670b0cc1ef747ab039fafb215c86c1dda540cb6fe2a34de73a8d7a549bcc8d0dbd9c731107a80b451749c4a51416781f7f7664e9185f45b6f3f6766e4327d18cc1a811d3351e76ce741a60acbe48048c953ac1fcde073b13029d9f62c8fc9f0f386a16617b78816f39eecdc9db585901fdeab57134486e259a011c491ff9d02fcdb4edb10ee23a83ceb2ca22d4aa363edc8980c2bc0b6732150ef9d9c3370d2da7390004b0a4183f682065e45a91b7c18dcd93a5aaf8cd52806efee36f3cc9e14062822af92b4a06923ef65935e2b0e9af63302bf2b3f1619c527dd24df660d6427e0600650bb1011b7b4a64162ba76238fdc9d3ebe27c765a807d2d0af3f73644914fe2df6aa2047a8b1fe6882f06de7bdec5d6a0771b76f10a965075384fff0550edd72464a803f62ec09c0002ed8d89b5c945b0683eb36e53defb55615027a2503e2cc00fa917ca002aa683b2c93f95b44ccf0cc4f4e61b1c3a24682f46bd9742643deee4edc042ee3cd15100376aa47278c5a12c41434fe9acc3cd7f72d05f53aafddd60fee1d0818affcd55d75c2d5fc7e4d1abfe91defcc3522072b29d779aeca86d433c693da9b8e2f2b0469b00eda81413e9e78112d49b78ab771a3dee8aa0741652a35d9c8d7adb02b7dd6877ed5c75efc48d5523604d67173edd51e888b282187576cba3dca64a6ea2245370ce4ab711a80861aaba88bcbc3f718873f9426612230891f0c5af209783de96edd43d7527b312039b52495ecd39d2b3f94bab4be0c3bc3ed1241ab7b7ea39ecaf7f8bcb0deb93117d75608c685ae2a4572c7b474bd42ba18ea6d9858bf3bcf396c02f8e227c2122b7feb45d6ef58e0fe89f2f54cbbcc800538d5cfc9c0337e27d54e81ab61e8033fa92d933e12145a320bb930a4f6c4b5749e2efd7b821d406a8f297026c0fb144affc5af015127079bd8f5a4e5594bb44857467f10f3a580a08031f4d8ec1a390e97f291426e7ddb112a2f29ac00dd69ba2250650db63b23d376f3d5dae93a4e6701f8801618c2ed3ec383772e63bb4861fa06e9d2c3a15b094dbfe56d5755be44ef518b0ea19c43d1abeabd12ef1bb1d44ee43b202e1c4692b7e67e2eb484a149cbb844de2e1934a808b9afa2f42154e158126296bc44a948763ca6eac2852d61f5c91f17606800fce8a3a59b727140c4b9f3b6de5f42a268f7b394d19f16b509644e118ba22d8ef2790b9bfd96dbe1f96f37094ce66eb440c2ac508af3af5122f94fed0f578c5932fa6421d81e29e82b9b2fb97fc45985c5f986e2934324df49bc5b89abdff672d025132e60007d0b23dfeba4a5b0c028a929ad26ac4881a211485a667f3a30a7bd2e5dbcef50e6a7ab8e9d1a2d944cc70d93adf52580dbdd1dfffb84e58651aa3b9bdbb3eeed757d9f2394115bae97c352388934f9c957d1388b45f5e0bf0854280928bc77de225f2a39c028c1b9d500ebec5e171bb4ae861d0533580eb02a412db0c79281a252630831791fe4dec68ea1aa991b48e9b7b900d62e342c225ea97a4864ce53a6b06059c164afa9d3952ed6d22ab6c6879689693d2c366d290dd4d89e71abcff486b0dc65673e739f89ecd65474e958e38f60402a16029e5ac1483481eb800a722c2072cee79dfd4247b533db7beb59c4b30671dc104ba996183f80e6c0bde0ee1af3c110ba81cab4dfcab48389aa4bfab9030e050087d5e349888306a00be207f0bb1be40f0eae64bd302f771f753dcb77501996c674f76237bf6707f76dcab66393b0d4ea5704561fbcd78ba53ec64b520e33a9605e4c58023ed28210e68171a83f3fc7265935f69221c547e425408bba021250cb9ec04edf42f7cda3aeb3b559e7f107698687cf4b0046ca35622ccd3d7a0b1b5eb9a5d5ef154405592d2ccc508ccb74ea7a60ee3f96a6a055c6cf7873ab2b3739cef02bc5187fe6540ade10fb9df54942ab9cff1c411363052d3fa80fe440789110627e1e18a5e76132bf0f03f2a956f791b40e954e4d0aa46656f54d72702fb323d0ac673372cc488b35c1fda95de9c456533b72221e8280f9a7c182ad5b4f5502ec82100ad975a4a39a987f4d451723fd90575a228f27ea480617fa881569c93e5bcf5d73111b40768acc8182e4c239c0948e44e9b9b5dcfd708548be462657d7085a9c978cf9fec8f496a8d104191179146c20208ccc07e9aee6bda66abdec9efc828f6b51fc6a17b8056010f5af7877a890fb9788070b4187cc63751e4dc3244dfe0839adf11655739c99cfc6a3849299af35631a137c52638f6d376bc8100060cce128bf1321c0c715d183380e34e11beec8f56797788c7478dd0b6763692a67c733b66f697e1b25789a04359bccbbd1e3bed9c3cb8d8edcc6ccc5307a12950edb69509ee0e521824bde55977539d27383919717840779d2125182074ec567c6ee487c28f14f546291cbad8b2273e29e2539c040d13890da234b0929e86b786d0556506836264dfb5d99fdbd064db903698657425090dcfea8ca5444dee4895dbfafc97e9bd636b443f7077437cd820f37436c0281f08bd17053c531ddd8b3448136fa1d061e5e4ca76adb4e2032ea0a12eac4c2298917fd69a69b1045eeee4cedd1c06be1b8457221bdfa87b94419ac937c8bcac7b3e574877f494c6562ba7a236a1d2a6bf19c66e0ab1974cd1b1a7838f0a00302926c4f54d7124b687cb5b8267b0103939cca703eea7e2cc589f3840b1b40ca1ed6d0f943be3237663e29a2fabf516bcc3a08d741f03daf681176109469fcec6b2473e77a63e310601c9ea7ff16640959316a21c7c9e16f6bd213988aadf8f0b8e8ecc41b84131878eaa38c98968841224acf5fbc108aa0b1871e6d24ed799f2f629ce161c83358342a65ee6435a446a0a64daf7decd2ae6e7b7960ac3a5fa7d9fdf6be8637ff3dcee94f6ba69ef85d759fd727e9b9c83cec8692d11615eb5cacdc88ceaa348a50058e0dc86f94c4e1db64c159d91fef62241dd1eea0dd20e99986c83b5a17cb316e73797e2ed788f20f40497ca98a07adb646039cbee45e789beb62da6a24e7614980ac3ef5f90277a41a6c76b12e8fb87c5671927beff70b0a94826e3666e62cb2f69c50b9d6ce564ceb69cfe9d7d7d52652a66c63739241fb081547dcb9b121985bfa3257091a64ce2379a8fa6b067ad0a35032ec0f5d2c78557a7de5d086738d4e7d7000f5ed8eb93e60bdfd1e1e9c7091151c501516980d81a4366500a4519700e6c8aef8f7e56805163148d758b39fe0f21431507678874821b226944d52db79dc9082461f3400d59408dc306234ef23d4ef088889b5c02bc2fb30698571b3280282c64ab05a54eb804f588deee6ae9b0ffb5c899c7bdf299461e5ef27368f3eea39e3301891105cf1096221ffbf9702bef2d083df9eed31179b660c703a13dc80eb1038fac9cd9d940373c248d32e3e916a3e51614e9db00180a01aed60ebac1167f50e2d20e53c006ad9075fa4dfecc5d6ae47cdaaa33535b88d2560658c5cb11371fafcc8517aad8e30e3b75f643137fa9bea6550b98423be60d97062bce221296ff9ce181f240f23799eea7c9e4d04c14265617decf1358c7f8c8131949d7ac3def8f1010cb80eddde57abe021b678b45ae9ed11c17f090c7c75101a8fc033627d0736949580574d5b51670e6bf4fd2a0d2a9e60e29b1d34b770b217fbe221b40c1bf66a9078f31cb98dfecddbd37cf79a0d635566534f65c6fda66bd70152ad5b62417d0d71c1077c742679433327686ca7f316274442df2cc0793808c457bea5f414cf63c7758dac5a45523e7d61c5a2372ee02a1e729b045ed4297252783f6698d652016c775153d802f4073ee4a3c417ef5b8a6abadcb03f5b0d0b9ae902e50a1e938dfeb8b21a7d2e7e85ecf255d54d3a9347579e0ceb5f631633caf7c2238f8560f64218077a740f76cc1985d44fae66dc5dc2cf8f876f011f1deb983c7f26789ce02cc71746170e29b92920efc24f897281cc38d41a5c5d6751df4414c6bc7f9daf598ef1a945982ef95fcb9c6f841d885538ee9916563a3afa5714058269fa26c57246e5679fc25d5f735adf8a73fef5ac6d4df38cb559729d41f61cd0373e0fb7919eba2008517a5f7dd34921f196988f2a8e015088183e7e433e920b5bdb5be19da74e8afe82572ae9c99d2b5490f8777ff9595956e3712aa5ca716dee7a7e17214308efc8d4d14d4abf7b64d4411e73bd03a447409972682994f109e40ce6cb5ba439b31d44bd85d1c6341b6f13f3b0cbbd52e86f461a9328051fa1af9ce684bd483d13eeb38196887f7ad0fe5685231482481c831315c41363a4566bd3bb776ea3b54f62d9aa5a5f242a4b13f7246a6c2a9f7941d5591a666d41383ac883c6d3ee0aa06892129886e2c9cb845e584b2dc1c98796912887c0382cadf032b31f5c2945494cdddd7b2558c1076b3def9cd4e60f215a115aa9b4163be2df4d734148452cca6b9508a4a96c3a84a80c29aad5dbf7765e85531bd05f49eb0a58ccdef745664db910ae42a61718d862250996a7b18d07f9274987f01bcd117a2ac04ed323443361317c1f651c213e00090f39f158c9e3ad4050d56a8cab6d4c06c4a47e893e56eb4951bc69d1fa21904012113e6dbe7423b76651dc3b4ba88aad6ddf3996dc46c3978ab8df439236c27cb146c9ff7d77f1250903fad2d03b7b62e18acf7fc4f5da917f6370713e87576d56d5c17baee7aa4d41ffc0216310bc8ac745432037842cae512948c545b1e131c6eaa032bed93c2767d8fd67dff01248d17b8346a85d48f7816fd43df291ea0c4074a5c595d4245a136f47ba036e014dab0929fda824b367382a74579662eab2e10405bd00e341d7050ec2aff232d1c122bc243b1d60679a28fb60467c0166a474f13127f13eef620f9e7f00328afab03ce00024fab7172d18bb025da26e536b93057e37c9a208ad181bdf6a0a827bf1b5f6068d3e45cbfb33c9b96be1eebf74d0a5c4112443fe6e07e4e5e9d1dd919e644fa9d5f22cb80ce1c181bdf261bac1baad61510c7417880152d82a739b37027972380345d9915eeb8cc9b67b1fd4d999a3008d6503e31536dd7d05f0ae4f8d9158a9a9a0d0c5664a94807f5a50003dd180920c7569fc694112146da2101982173aaf7f7a3bb16bb526fb51af33ff2d5de01fa42c7c8bea14100b7c535931cd79296a26529d8089ad14f78303b835a56303914a4ea8e13832ca4cec3291be3eb334c1843d0fdd959dd8a9dc1f320770292526603aebf6c551875532432392cb2474d0cfcbe56cc681c3f5546ece34950fadde2aac28ea711ac25a96da188214da1ae7d202f840e0de731526752da89b4052f86d8b1d73b02dc6fdf9861377f5b620ac51e2aa0b398bbda0945bef9a4de4462a62e41e5bf94be7acd9bc2bc13df0f03f75cb9c307b69905a4424ee2d8238b743fa9a9f2fee3a34ec287351a5dbbc5b0055ccc8dd748d809bae7b831f2d92e99544aae806f75d71b945e46b13301cda48ddf989cdf93f9a6f4dd5359193530bd09ce8a12dde4e6b4012213c50fa2535464b60bf751f9c5e7887ea695fb8e336d8fe64c2b6c63c16322f0ab5b47e12de5245f151d65040243f88715d50373345ba6654ec595f24946690e18046f1107da5367e9f66ac05854793fc9a9819ea8b294ece4a0c4f0eb87c929545a10bddccfb6be6524d48fdf7de3ebefdbddc3f65a27da950a96e4fe28b5f3e134088e81512beffe1031f221af2ff5d17e363090495da527fd1343733a43e88076191ba9c92a4d1ebf31ebbaad98784068dacb0dd51e6e25959551472916639f10318becd15ecd0bdc05f8cdb9cd7ff90710dc2fa1ae3deab17b34575585eac01fbfff014dde72c27a2e9d0d577dc62ad7fafb1e0d55a21d3665556532bd0ac6399213fbf25b67e4c5ce5567b7597e028c34683c75559f063e4c7102b7f7f502a323a3c37c87e69884402d624a9128deaea20efb3385dc3659d9b6f9ab483e7548b733c0e217cc43cf6426ec74d52053487f3a52dd039823468b00dd24000f94c258e21696c5306ef3ffdafb55a1fc44436be94a964c88656843a6807c60463a57c19295071bcd0be909b29cf155a750e0af6ea034537483c436267571ba233bfcebdb2884dcada63d32077b45580d010ef490098feb06b21fe7c42d9f64765dbf4e7a53ad2db0360076740147926ae57cc7b80969f3942ffea8623654751c0f334b68102ae4f618c836678ef3ab61c0dc02689709fabb546e35d4b92e4d2287dbd64ee79863a631b47987b000166abd97549a1f08b4d3edf11531712861d977efb6197aaaf83551dc5b2bf9281ecf5d8c4578b2f0c2928c7f9d14686ddf6a2881299719b94d0e48820d0a226443d59d82c12b62a120aa65ea3585b654b6f2c1b1b1a214b9a9ffae43b3c43f1997535bbfc733d295e8d68f59c276912161c8881e40513d026bb4428d6cc3b2a6f9c66ba1baab8ff064e6ab1eecc39af02bb4f6423c24afa214879ed7fa0701b88d41dc80352cb8352acf43d38a128d864675d0c00816e4152109470f6c57c41d8be4c9a0cf1f34901a03db698635cfbe2f5e333714a9f4647eeedca2044cb5bdb294f40313dbfb3ed59199c19404e06e3c108d683fc6b51a6e661df12b80b4b65bf2947df9722a14325d7346b2f1e5472fe62083af5c4e531f6f32cf19921d9507dbbc563490d74d829b8607ae600f0cd403e0a9c68764e1feee57f88d9121189043c7776ecd7168c35f084b3073e6bfb4da638ca26226794e6de942a4b1f91361375b7587b081c774579de3bca6b03c6c6d943034fb808efec65137ba6a42a02e3cad736eec3fcabd98adbcd0d67df3bdc4a15b5af4da64840308786af576d1941b5443c45af32da011540ada617136724a517d1a1b08e8aed883e3b512d215a669a439059624dedab7f7b0a466b8b4d05e1d8ef50ad54fc0a216b669ec3c5762734382d5f2a686998fc6c447207f2bd0081b0b11ac42e8db69cc1b9cdd435469f8a8ee2c99dae155ebbdcf2945947f461e6267d4f76be84615f488783ae26a129311733e1ca2744c46a0a57d9649d7e234c88ebf45179b69c2125b0c0ba71a1c9422374e630f269db1c3c2d2a0a896e627ba62bbb723912919e75a0cbba956b307944f8cb224ae746e6cbc10a4c689288d3fec2897642c95b2c893420b0892e82776047802b4ca7fb14eb8cb32e9763d27ffc88a0c41fea7f211526c5942b1cbb8fbd3e438e9360e3c322002b1b1b13d1d16390b4f2b2fd1fd1b443611c3da75d39a06695b672ab1397295d14650d754bef27dfe4820164c431f37c75d3023f9ace43623243b3a900ffa5740f05441a91c4b6b434bfb9a1d28b1de2b2317cc000ac81cc5ab5ea5666dc936f6d61f338c152b2b3e7ecfc74a4da22eca608f428763e9f348f490d40dc8cba2bcd4773149ce79822c93993e24b939980afb4c2881ebeed7e501a98477bd34ef24b3cd157f45b8b7b7691bd49df240545c1199cabf08bf46cb8fd8878f7a095f9f54b596333a1ef3f4b36a63d44be4e3cff5ec9358b74aec05589a54ef60a946dbe2efe1f602881436b089ad8ce80f76d432b7035c3524a24922f827565b2ab5fe96b4dc593f2771de684f0645ccddaf60256711edddb5f8873ac5b5b79835c13b71d6d374a747b4ae25d4e8fecf380a4b80af3838428319a63204ac4a35a9ba6866a4222ad9d686888aa22911718c71a3373e0886ecba4f16262e2c19255f51e9434a54fd35af589cef69b31cf918bc63f82c71e05584f2d73457347ca0aeab4d431c9543ae03c0f74d8dd0a2d43d778ac26be1b50c591ee184b4b3ed58818c9ac69ad005f9d7fcc0eb878527492874bdef14347203393b033c5d6789a3c4a7c6a64de39fa8e0cf57096b16698a1f1fe339b0bd080ec7737815a8e12c2283418ed20531c5988e36ae7324eae5fad0acf07be96bc3a010d9fd7409bdbb69525bd020c1a8a497520e240bf9443432fbc1998e7fca597912780992014373d3532cf426291e273c4e7c025db1c0ab22f5b535ec8cf2421610675fc0a31c42fce442b1c476e174727063d2abae78c799e071c496369a3f2c98cfe261e9879904a266d3159dcbff7ff8b1db0b8b75d3cf01ad088c52b2758bcf0575e528a368aeeef0a4622f81fd5c372894b206f69cbe5f40c35611a9099c68d34e60a18ead6214c2c4000902dee165745bbbd6d1803227010746bbe0351d7a58972b5deb82cfe07c9e1706f8d2306277e41f416c4da813e0d6a07ffe8444e417cfb38ec3087a3768914551df2c15191e345a445076360ebe84fde04982d93cd803a2eb4f493e575e1e14d1b2cb00b6b543bf0191d0165b6f9e9465f66e072e4a89f63d4a68225e431b9135b248cc0cdd7dd61cf8d2aff23169c3199983afe6b11a61561e349d7c43ea34283c7cab343cd2eee194ac07185fb8a85abab29456598701288cd6a60a339470812df1bbc70d2a3107a29eb1fcb7453163c1672df5c71f122fe568b96598a4c46083c055e0464bbaae982bcf1caec0cb3a7d29f7caadb41cd0be9af5ad17fad54c6c202cb50de714db347a4e20f34a4776b5ac4bdbec4aab5d3047e8ce386461a1840e33b99b578afff0fe8b93951def73271b518c9734e87dcd80de877c00f6ff7776f13f957dbe69b461ab751648a6562135d574f982c6e742977c827d6372bce9988b9ef856a09d1a7b17ff9fe70eb2aed5587ba907599675e8165d84fc16a8ec8ef327e51191ceb15a389807801ccbeb1940c5fe82e89c62de8d053f7ab1e2a3ac3372d8b3eb24d060c247ac79b665a9bd8583d6f83e1895ea10e607f2061607eeae6bcc4cac0dba1dd7d572d5a2b0d6fb0159bcb941182b313584a1f061bfb7151e3c48c653d9774281f2c48b821fb7f1133c34adcea1320ded4e9b3dc5891fccad2b847dd9d571520a6a6bf229b9e88ffcb1b42adb45249b764401568083012eb567c4063f0a64ab2806adb09a50adaa81199ea693de065e7f9d1980e1c89a96ba1e2d15db671d8735b4b8e99cf4d9b87ab77c3d1888a5233d49ee61b36ee1e93f65a4d305b8257951eb642ef5db2da1c6d6f925ccbdd6b9a502f3add1502032098452339e717e7b508fce8d9dc0689186cb9e8b6508b69561841f4153d85764c181118d771065214e4ac818d526ac6171e8cbdb87b8fd39c45b715705adfeab06b9c14c9497e4e792082cde0518ab4bb46fba7f8c41e734ac36c516d53311f04cc9e88271eec9637b2d35c09124d0989dc9d05cbedea84eaf606c6e8620b2e261d1e999e97cfde5c52e9c1d6e7c4029bdc017817492ead4fc64a93202e0818fd42fa877032e681fdba2ef142452b2cdbde145355afb6e667c265fb8009029e72dbde82cfd2e92feb28cc3325ceb5c382ad00b7179b57c254099040525eccb6388925955eed356e40b272fb896eaa6b9f49df3a468395fb933a28f37a06f875e7011c6421477d812388f25875899bb0f75e2705fdba9c1e2369c4330c2012d999fcda00b30b4af5109bb08e72585c97cbd59c410a1a2f20092e96bebe43608c4cdbd3c674f4cc4ab6e1aebb01e7256c102e8d4ef2751ff723c2541b856b338f539f65e5f2b6aa3dbd19dd4e2e634beb33590270f2b9d6c9ea5690fb804d5e90a8c21524f484ca1b5eb2ecdc1b29bf2b2ede4ee066f769c8102097ac7b55f0dee0487c6eb348577bda214859c7e8c97f63f70744f64dfc41de2e9b24c3149ad997bc8fab29efa08487b17c4f54bd24d0f77f6a68ab57a386d0cbbcad2a48e0014f785988f208a71c355907cdc93bc4d45470a17c7fc6caf3827f3fce1a2f67e0cbaca4102960a7cdad9262bbf7906db458909941b41099961059a376a245eddd0264d364b6c8c91e75fab8ba67bce5ffa8209103957e6b971b703c922049baa867d3c2ad69ff4deb4c63a5bee37308fa67cb041fe1d2c6e6ba3086b9976186a7c078ccc9866178296733bcfc11c7b6e10dd13fe09cef8ea07a62d258b21a6118deb03c316db989687e3948c34cff6f73270aab00bd71e8e1a6644c116d1dbb3d08c6f8e6c0b5dc29d17504f01c8a0120fa3b7e6f0001687c7afd2ada216b665b7907b767550f8bc5e5b40fed31449e97aab288ee17e46152c463f1030e3bce7c0492b45f0ff755128494a7cff818957125fb36c015cc7ac26c489e3c5556339ffbf6bbc399157ee4588664e43d05c42b92c5ae97c3e0824ce5dc26b2db724188c137878b2d50fefcb1302637ddd61f131ec2003d7aa4b05ae5d36b586f171721c933eb34d3acee6b2e6b117060f49258f797bdeac78ad47e87e7ed04a328673b9ce7ba60310e3a48b68cd63d05eb02336015d6eced1e22ff30cdfa6782208be400acbeff43ba56094c24add86e331dbb51d95bd12348837a11b7cfffbe0893ecfb7ccb8ed88b467b910608946bdc442bcb4e48bb2911062635edefe33f3213387a29bafdb43bc2632c0a4a23e8ad15fbe36fd2a92e02a54b90a75f7a6f54ac648461f235acc5bcc65585897e12694540ffd09ddc915a3c41526ac3762b72908aeea6aad6abb793f6d3d9b84c909270fcc1aa81cde139e45fec9ecff07f067f673d1970ca0722f11385148b490d79c3bcd745735860a15728e4a9772d8370731cef31efb7894a03506064ce0c5f3030260bc9f2738eab51ddbe5eb274892384c39a41b329afba0c31cdb798c08f57604ecfb5b2bdcbdd672a0bb2fa569032500406f4bae60a739e81e5df8bf9ffd1ff89b62d7dc684ee6e366d3807027654de14a72a30ff91dee103e1ddc02fca54592accd2df0e65af3f551bed30b9264177d8c94e90a719cee0a37f73c74dec5d31aa04afbce9f0904f10c258788b496811453f2e9f6b3dfa25d251c087f02603ab6ebe02262496330fbba399f30d01565a8372de2d214fe8f1b667c2795ee92ab8c85b30f2114b7af2fe921319e165590188b6d2ea013aae057635fd4d46ed10e7f0715ffad19417718d7322668b0103a934eea489749db49e0461edfa8a09706df972a091b924ea49e61138111b911235f6009109baca7d6c86a22ab5f1c73c6095334291215cba504baf154f33350a4184afb6bcebca29135baef4df75ecb2272427d9c01da0912a8106f226c8243b24ec192775b007fa0d0c89004fc232ef5cc712211f2dd089f2dcbdf4c044516055970c8e053d34effce83aa4cabb0e4f3dc2f859473f87b1bd173680f7289553c713a962244d7842775026170e16af1b8d3b90c492dd851c26b0603dfdd20f45010ee387d8389a62b3dd9b2f622f2771d311ac312161f6a9ab72515ce6282e190086b3a92f7ccd24ea00a09cd81ab7ae1d0f27f5a14ce8ef034faf162491ff09ffb2911114a7738110dac3cb880105d19ca1396d55d682f73f8595db0aaf305d39ea06fd146e1c967608c2599d2564f003109589aa23656490f5a9c5a19296430aab2edcd15f71ad55d0ba8bdfabf398937a6271d9ace7de78a5340f639a41356c5ec8fc7647a49b2ff1674dd93669a7475886f63a79c60a3331c39a6b7c791a047f6404e7291747448188fa4fd6a6fee5b69e29e973ef72dbe0c9cd2fc38406f6d4eb207bc1b1e4c944e80248dde18de305f1c36f00213dcff1b90a551f196496a2e647f12bfb7308f2689adf043abd26da46489d55994861a8fede460319501437c2c316bfd78671ba0ad4133f36806fd5896049d0bf9c22dd0165cb3ce91d1ef065bf5a90cc09746624d277da7fd105f98ceb0b66b0b489c5034d6676bd5eb592876db2032fec8b791916840d251ac4c8c5abaa84f27c28a48aa915169e19d23baf762b8d5fccc58b2417781135f69aee43840065d9a30a1e094817c44c47ef812b3c4f3525f964d7814ddb0aa965741cda413fffe47a0eb2f0ecf563ca22cefe15eff52cadb23ec4f17a539fa6fa3bb175722b6a73999a6823743bb11845998b421a60207aee99b857a94c6aa97ffe372f4cf34b1e25a24ef8d8f452c7568d8467a5a33373c452012ad01c858349f51dc5a5113aba2c15064811d564f341e38cf742b6a13d042694ed067e7b3707fe901e32d484dcbfd4442046ffcaa25d411701d0ecfd542d37c11370e65af1d91a18243270d340b0f34307a261e5e23d3c01ff74ff9176938d2723d24c2227bc0934bfd68fe5abd7f018ba67441a095c6d69017b87c335c7c2bf8a1aabc04871a612b4ce460a69df4661a1ef1ca8af219963b86c9bef5cc30253385b578a7622588476e307b7c8fb47ec89ad90b4886bc4343003050297731c3fddcbc18aec7f4b35597c0f9492b46792835e64e9fc11bedf02fd35c726dcec73f12af5a1f3027d1f772f99adf1f073ab627d4d70e2547392482d9c200a6a606436fa7cfed3cd28c484a1e2a95040b3cee3625893ff5e3e001c36f115158f47b055308938321e36355a1b9aa976aabec57877de47751bdf628b6651ee29104f1daa7f47a3351299bc50a8bae877b091c6455ae0c6f9598b283bea51932642a6a32e5f8656346e47449f80ccddc7c8ee565622f18b215c437d5a0d5cd70f12e2173bc0d837a7d40af997c7e62f6f1509ab5e38ae47a964ac8ea49b92d11d743eb434400f4bcc6ff7460c1ed821fbe5c8f8bbc9c7a3313446d07198da1d8746ea6ed5429fa929b3707fa9f65723a3d91db84033ec86dc277b4cff3faa75bfd7c98235ff51157d05d9d063e127bf8de9cd8a3679aa16b33c2b7fa7f2bba4b9c42ddde59b45ffab8b567f65ce2e3fb2f10a22fba65c12902c1064661698d414dac96c068e8f58da2a5eff4d7b9374b05062ddd2a71ddfe40ff10f5d32c8d561460e4e74840f673bed8000adc6b86a3f41cf1bdb097c5e46315c785638a600c453b7e3ad86745a20ac2ef30d333acec62f41acb6be3dc53560f9c2e25b95d15967fa421d3b9bc4dc6294cf0f59f380243c550343aff1c70742fe43e2f24b862b847d84579c550d0ceba434484f78a042cf35fa5a71eaead90cad4de8b80eb137e6db0586e91d5d820c2f546eea6c5fb002b0a87600d62abe1b41a996e51fc0b1104f872988336c0ebcefa9bd23bfbdbb81a61d213628d4a56d7169c90532922a05c1a309c7c7a2069645743cc17f17b1e9d0a632bf80881f07b4bad845347380d01131c0afe014263bece09165b404f7892759f850e8e06544987de1eb1d62759bf882303ca73c14fcb72db95568c71a04959ad14a5256090b290bd83da7f6960f6a6480febc4f354883a5057a455e4bbfd9840a77b8bca6184f284d8d53ae364a679dd8c16db0518bcfcacb04f2877a751778f8027571f6174d20af391ec8e3e8c53f0b48533e54d0e5d7a3e07b62012345f2ffbb3273544124b8153e95e2cb1360b0bff07e3a2270166c0ebe29b287254252f05430619470393224f01d324302e5431e25d5cd616e278bf624465fef5c5b76adb406f87f35416d5fe5c027bcf99d1678ff208077f06b54ee0f5c0411e67105021b5132dd4d87d1de35d824fd82a9426fb73afd3f5369bd448e1a950fb93bc8ddbc67ac71318bdd7cda5783891cec83f648567c569b5ed4b7282db3f41006740a2af006921ea615d271889a3d0ca5035e9d2e2e4d6e0a7a509712450ac57f4fb0778c22b630853ec368442dacb907f232d40e122b89397d5d7f316956eff8eadabd2ab65031ebcdbdf40974491d214755cbfbb4a2084fc95732f911e5516f074845a925372563602ae4e4ede383e47ab70b110b060e2d55acfb11ea43ad1058211f31b1061af8c85e549042481ccc57ac400ecaf821fcf882183ea057e2a4d06ed7c0ecd033de82cfd65939ba51f0b3cde6acc28945674f6d317ab305aee7901ff0ca165f4caca6cad81f42160dbf23e6d7970b47740f06ea5eed92659cab101a23ab07b32b1136dacc7efe3599351bf80ea7f1be3182e88cf88d31dcefdbc449a209162e53561dfaf4810651c8b4abd270a02f4e4084f390b85d231486279d098edecfb956e8f9320e6a466b34ffcf617fd7b00cb75305b6930ac304e5063f73d4317ef95f7d799335a2a81ac4c87591233fafc5125c9bf4c13e927df552d275f57469d8466a8bc1484ec3d6d27cc27bd4568e282eb3e8768aecb8e8650a3e6048ebc8ef0621f304e78a2f2854a0410276fe106d47b0724278c01a6c2ee6411e653655006853ee5495c089980c769768426415fdba18bf4ff02d17b2ec45f5eca92aef651aa18c01215cea4533742474cbeb9636304339bdb8aaedcbc41f21416d86b60a2a4f5a12d44ed61ab0edae6644f822045249119c2cb192499d3f68346019a61a15a554603eb338e61d19daf38b7caf33892b24e858e77ff9870e3369fd81360d6139014812d3a06b9f3b4b9c11d300aa9c883df1aaecdc603792d8d6a97b95ee5edecf64593598226d48534c5222d2e0b313de6f82eb41953137616138b4580d4019cf70d60ae55fb50c86e6fc27de2e348b408bad05c9e0a0b32a573f02e4bc711e430b1e5a2373ab81c767136b4952d9f4bfc0266d8953805671b671d505290216ffdfe17b4375a3d627550bfdb8b17c727dec0876fc920516f14827998a0707b20bfcb4036562d6e72f21e7f906f2b3737b3a4b93cdb63e5feafbea7a63705289c366cf53403f8b060237cb66de04337febb4cda135b286f8824f5b3512d525ecd274c896519beb28914dfd236016523999c4d91f19955faa040860415b1c43bbe6360cdabc1e0e3c582a93c848e8da461268d1350fa2df2934edc9a37f61485ae1bc788e6a5378b1e1a90e02e3fd809064c495defde6ea2ab5d171237ddd4a7a956ee693ce783d4f8be970cb4fcbe08b0a3c12147be52fbc4271a58f383c3f2d6e824dc2553f792fa39fdf2d8068696ee8189fb1f4351a33f4459998a43213074cc91b1e535db5a0323cda433599d00f3314ab3c86a226d99ef813a3e72f5af227be34cdddc45d683f2d2bf56ecab0417649eb2dda20b56da3e8fbb31a4519058b4d31e0433dec0a8631a75c172fe9c86242cd2a32dc9086f456c532e990060bd8f8f3a59852dbcd42440fc051609c63d05afb5b303f2976a7bd3c401f4546edf0670f3222fb33947dcd5bdcc6c6d0e26ee4f31cb7a628430f140a06da674c74180bd1748cc95822be86a410fa92ad0a3780a60f6b5d1ecfaa0a09179b2d49d9a934a71a8891bd71184bf21b5617eb964cc64d8e5d5be4b5e0b4888063440e3cd986f57fcfef590f19beace3bc69a600d94369faec652b4aa8c32941e70e62287d7dda6126ab092892331e21794d8e62d673a99e61e053c9d3e5984b331319bf55109d72f26162a350320ad2649d42a3e07b808e75de7640f7b44a11dc63365175fa91b1df37b3f40c589af35f5998f25cf2aafb6a488d74e6950a1f90573d14ffe7c0c7c1d919cb43002bccdd7ce94074f3f3beed1793ed89ed57597d1e1e401f1ecdfcaff3072ecf81a4d0d3443bb5f142b9be9a579c2bb96e73a2b58b4612fa10a925f8018e386081046fc8062b0bffdbb9f6061c03df871c7f3b2f5b1d0e6d754f4e4d9e42dfefa964dcaf05a307e780d4e217fa807da730934bac2040c4909b135a1c9d794f4626ec60956a59d60d1e5efa085fea93bd197939ece464ded8fc851741accb484006d902f634843f855b8f104699a5862b2ee30d2dc30ddc7c7116b7f5f8a6ca9851e9709d33eb3ccb8387af668df638aff2e8814ece635701b800558a9e84d2d64bfb010ba013e94a4360833b063c1d711db956a6e046d7c98ba5ef42838d2affa90a17467ecd0900ed0c16588eb43187eb65c80beb20d58f42e61cf3666137f15e4720e2c3fb4056d3e48fe770bd09e885c8fda03e51f7fa1588c12e670c70513fd9b97990929fe764de86e4a8750209511946a7ac3c5ff4b7831756bb4b6505b61872e2ca0104eff15ef42a79b1175971ad41244f342d5eb2b407509bed230d85d677d64db8518fc18974233489ad925b0ab209e33b12adda3e88d9e4089105f8e7f39df4a80c7bd90c0a640b5af4a6cb2a06484313a204f2679902b6124f5627b128fe25b6ba541ec435870ce670c33669d124d4497ac35a34fc080dd2e51cac487ddbd3ae62905877353b0d17290ae1ab332d875c56d9e05ca62d22a145c298a84fdd006d21bc42f7b72dd6893943c61e8aa7b404d3dd4e024b7629f8baf01b771f4c3b271c20249418144818e4856dd021759848cc1589fd61ad998c104c56f12d700bea1a07b591da703dcef7a0312202e4585486116a44615a7f5e976af1f29b584cbe76a460875ffe157e0a6b6f26c632940dcfdd950e78341679445d1813294125b9d4c1d040d9c403205bcee978f390d703949a981c9e8505c8f15043b18852be42973aa0a6955447ad0a37e98dc3faa54d532910f0ade78587c03739c756c23ca6977ef0c5921347bc02b156dace4f886a111b7763d6f48407bba903fa3836497dc98df3f4d07e325ae435f877290be23b11e82dff41981671848a647e2e1a849c345cfd0c0d98e6cb2fc2770d9117bc5971569614040235de5178ff1ab07156e4f12167a833f549a8e7d4b3962b7c0f667bcd6ea1f3b1a4a96c901be16f1e7333568b93b1ac99b18912a52330296cbf63cb5ebc9423d76f04685368a8b330ab76e263beb5b07c92db7b5e15b8c2cf6d6a7d410398ff555f74ddc805d5a23d4763f66046a069d5f88dff19ac6f17d9b9103185270df68bec215d6ea52cdbbb435be7153a926b06e412ad4726e71b86c01a2b5af75507a255c4fb0886816931df8250a3fe488cf6637afd867250b7fd7a205a808e743e684f5ba82b6924fa3b62e87456766859e03b0d36aa8f810744254a23594466b82b7e26543e34722db0c904f4bafbd515ef1362538aaff35d53476ef45617030ac98e7653e2af85374cad15f7e374b67bae30e7bacd56cff9bed4694e41f28e3c260d40ffc79f2e70887f3dc5d72113245f8784a59010ed20d9ef2c9f7a92cf7e05b00769b66512798603dba776ceeb8caea93eafbc1763996c004dd15c54aa59a6f0e3dc6f6998aebf90e75aef732e28fc86010357417e67b3ae17426e03dde86582e39839dd295211a1925c156124b100b19a731bc87494b6cd187d1cee13bb71cb56dd2d27e1e728451cea3faff1db9780b42eff6701932c8b69bb73a7a88e077fdd2ef2910160c0c46a5df12148cb2909c99082b99f002d9b22e07605fbd9ab865718b65a0bd321b35d0ab2b38ddd8a849221d6baf0eb651671dbed55c7cd5f1f16fb866adcece0cb7e27a8051826385e6ea3d02f87b666013178f018d744b94ab02818de49763292ead768e01968ea32521bcc3611da724d65ef9d13a8344c6af91fc6e32bf48d761d7a8a6fcaee264fae310620fefc4f4352c416ad617dae60c534787cf293da69d848b39d8daf91771939cc4eaad5295b1bc53c911fc9d9df15ee92eaa489d6cfe9f5a35cd51e87a78a73bb0c58ce96cf3b6090effc0a139e4b80292ddbc573a3d5ce3ec5a40bee3158230cf9dd1e272715fa886454bdbb1efebe8738d2a52bac5b2fd220994b09988fc8aedcae48bc8003cbd4d4423709ca59e5f0bae3687e06943adde8bee8bf6db42310792272b4332cf471f75cbd160d141558aeffd86ee431639ed4781458c05a12c33b997ae3702466301018a92a104c222187bec59c7b301ad63c1342e5d585c81b6bb42e058d4795baaf8861014acf330e08f3921d42361ec5748c52a89e4460b30292d8bed840ec88b4d42a2591ec95a541ae0c4fdfe133dafb91f0d67db0642810f75cb764097dc3284002f47bb68547c1f0a65950693a5279dab320a84ab0077433a8c98b10fa7d4925da7549dfa69959811c22bbb3bee579a73fba084ae0db8d3996ef4a424bfe0a6d0d504c5b6aa886b89af027b6be670f8768225b69606cbfddc88cae6b5219bec5a9901cb964011fb658ab00844b8a651755bc42c3ce375f8ca57fef0fd9c8067d8cd7ea607eaedecc7e320b210807b964a06ff339353e97b9ccd74b1559792db4220275e563c013bdb9b9b2eb40d997e1566d6bd699385fd3d15d472dfa88acd44a029c5fe43bbc3dde56251f2889fd7c75bfe77ab7cb0e9fee6c0a3d2045f827830c54773892d4019c1faa16d93abb45b2c14ea706d3f9f90ce1384dcc4f40d8961aa8a74360b09ebecff9351d2f575a7471a87b1451ec607f2a65126a5b79b53e497dd4ac95d4ce693f176596414bfda77fb9119f1777f623852a0cf23523db4cd1daa3067cbd3aafdab2965202aff8619a094853f09b8d5389be027ee59894f640d49b09c05df161838b2776070ac83275a52e91f24e13a5d5b72cdee39ee76e821b1f0f23bd795057e221c6df288cfe91f648381601dcbd42665dd294089838066c2876a4ae783c79316aabe0e089995f7ff4a08d8cbd3ee768491ab39218335b4e6a89830ef1a4ab886bcbff6d3f49b469d28be762ab953abc20d49dd7ede018e70780fdd185390bd3891bdda7c028c94cbc5247acab2c49844c85e11ad95cbda143a5a993ad2fbbdb05343258f7c35f78dd171488e2faea775dae1b64158c77edf655e8e39c7a3fc5b6353a7a1ea01b6f47b8503368c4293c3333342dbdba1949d8f725838ede5d3fc7157557698ff3022c5872507f7e040556dcf40d1c3ffebbda5bea99e712fad6d45fcc2df0460a9ffa7e0ec1a80d06ab0cc1ef07e51979f47665f88bc6bad4f90b67f2afb118bc3113a961567200d21a195fb1d362e7b775019edfe012f9efaa3218a857bf84e912194f29c89c841e230ca4559f9790b0117dfbe1e2d5eef7047e622686402670a9a8339e73e76a4a0a1ecb145a6ce2a757d76af2f00dc13540cd5d21ede30176b2f23b7bc09db59bf01d69cd1d6a133014d2198586a21f484edc5dfeae87158367d6893de8f0b2e6d41100ddcba16dfa5f8711c4cbd67943a83d65dd6c33a470b7d5e191bff166e3c85d33f4ad7116686ee1b5ef3621fe51aa6159b250a36cad8b18707a659111e8d51492d50eb9c4919dac147162fb65c734ab5ad8dc9831e688ed6e281182ea3acd0382d2e3242b0004d8f70e41aa771fa1f663ae51216ac70393e83a7d43a0fda322fb15a5cc6f84dce8cb5b78b82f7f9fc1ac5216843a05cc216a3b7ec468db7242f549e02b06136b34ebea5919059f31448cb8b1a197aa11f92b2817f595662235e6327d74ab5a08f783d01cdf9c5d2b5694655c8bdf0bce2151bfd7b37b0d8907fbfbbfcc6124c6e77972680a6fb5eab9489a92979ffb0bad3dce5fbfaa3f1b65c9c79c210eb5f45aba0751487f65125e8d904fb3255ff71e1ac6e24a48442347d6a8e47b955d90bdff9178d04444e803be65ba58b76db2525eb772510f8c28563f641f62a851f53ac1630529e67d5744b667c184cd3b2de7531870151fe898683f718a81fc1d5861ed62a678afb8c99913caedffc9d215392e3973a8a70528068ad061ba5259bed6448d65ced4036bb8868b1c6fbb276c74b50104fc3e5ad213f0c02c84ffcf86369f7abb800675d64483130985531fc7e3c3d735885fe1d2015ebd817e3ec003fc3f0e280af5e47f70b6a86ced0e02d767377334ff013c15685a6ff4532d604df580a0f3f7d0daca793a04b2f1efd1e466a7f38032d0d8be71db4c5215f50b1b0e0cee4b1e1866cd50ddd258a99e5678f83091923b114fb6043bcc20a88d8a4901dfcc290d8ab1e236a1042fca54501b03f9d5270ada165d376070db86017bda7557f5239d6f8315b0230c88d4da45c3112f1913294accef121a726211149acc848a456859aec06363c350337b377839134360c963b714472db7350f10b1c6eadb3f93408d3347ed06c005c0410fb1875f31628c883220f761d339f27c47136517b5960703c4f47300066fc3f24fa5320152c0ae048317ef20aff17324e67af3ec94aed076004b911f4252f968732fb03642f602a4479ee3435d5adf93829335f894efa72904bf5a09b886cabcc8d034fdf0e28cd853aa1c044e4efb17dde87d10730b723ec8caf0404b2c6d1aaa432125ff3f898e6e6b9d4972dde9b652647d01b9a4e3b3a80008443e22ee9f83e6a05b95611444fdd6be1ee6253aa61461f40be705245f27d7c3dfc43dc4f627990b98cfac62155c94ce3ae0cd8e48457ca916d39d6548b228833bbc35559a4624afe026adc935b4501558e048e626c59f26c76dfcea22531fd77a6967576edff4f594b96fd2a2ac8dd26b851c6df2a522bd8b3e9d525fcf5a09d6f22dfa5634490b348e49ec79f9c48d5852d276dfeb1e947a214fa88c09a3319f0d660ecefe94689376ecb36f8b33d4191d0a90e813e75273e09867f7cb36c19b77b13ec790a51baa00fdacccf1cdb119f59a3ca25ccb49f6391f1f02bef6107ea156bad1b768cd927d52023e90d21a6a3da34e71d8ff59b710c8b9ead82fa26c1cb4cf821d4a857c25a663b267fe1246888bc3b9f4e94ccab8f6677ba633d99fc523252519ccd20d25d4e6f9e6a2c55145ca46bb93fd90c17c8d5d5c73ae9c41d23ca7c097d1eb2b80c1cc3396dd8c54e6353d81c481d0f114075de38131178e7e46f6cadf2db636a00d5f0878dcb26f637cb0ab6b7c2d2d62d1fd574be8bc059ccdde1e5d0b1e24a39f0b15dcef4700cddf4abe78ee842180bff0fad1e0129a5c3f4950f00045b2dca3b382ce309d1d4f9a19d2c774ec3309dcaf558dd7472b54a616f597e857fe0575e423cb800828853dcec188937e4b291039cc91bb6b18a730308ef786f4303a17d437b85c4d05b90b6ecb3641e2ec94437bf681dc3f696dc36de9e6443eb2a85870c2a9cd551ce4c7f41d72270d36304d0d817993e8bff7b89daa0768cfb687ece8d4b817ad15f76c792bed25e1ced59424163b9f6d675ce788c360c72b8f1f7983d94f6289204ace7739b23467cdebef08ef796b7a60ce2fea7f8fb6bf1c554a720d64896f6f7808aae21f7363977b044e0019040511bcc42f34f13e16b4aedee4f73cbd4672411d4d8d7a31b6d73e200df3e3d25ca10e6c1cc5f67166e0a1051aa37329da0ea8ff23de6c4377c243e61dac1d3caddf076bd38f19f11a31a062c31cd17dd946c0eecd464e6ce245d2f7b21686f028e39df217653b820ff546e0076ff707502e952284041a7b49f86e6c58f33834fe01c9ffc4fa13f9e3cc740fb7fff685d273e11070c30113d684697b5f074f4425e9b91ade21aa0383978db39bb31db2f00754e17faf91a500d0f64201c4a2fdbbbaef90be1d670f94fe5585f8b31808944be33ccd78c22f92d7f00c57a24050440e1febf8a9cc3fad40a9d47f9ec67dd041343ea23021f2113e839bd8e6add5f002efbbf0ff2c198c5b926bebd2ff9c3b30a1a9f22cb57fa6952e35ed73318ab94c876ef8b6d5220b3142bd557a7ecfe33b3867308d8af0dc856587a966170297bf3f5dc020daf909da0ee1585f952d792a5af07710441af0c97ed40ff13db2dcde10e3f77d057a1e18e19a381d8c4cbb6f41961add8a78c99eac26e7157b42826c3ee3a3f083200bfb48476167203c02468cbc5a4ad08a784d0cfbb4ed53abba6e974360675b766d5c2a31a5cc47c8573771ace79e93686935e9b0d09f05a724845ea08cab7c595349ad98c25556e4ad6ec07e87c2b80884c5fcd56f8fcab1c40d5037a747972fb98eb62a75fc4520cf6c66be4ab588aa7921b70147c31e40a029b820f84ecdf0b89179254d7556441040fbdd420864b07b87f512271f36b1b43667288e93209dddeef93091f6eba08a601680cedf926d13c19f02239b70bc4e0a3cfb7a56c39ae699cc00a6fd090876422b15cbf6394e26d298c508b098a603a75ba737e4fc2e80d5094e2f74c879834c69711ccb3c19fcdfe9f751053c5a4dc020d9590e84d5178bd4df2bf8205fa4345a60509c6d74e9f574a80f5276741a31e344fc23c3112e3237f28e4b740d524b9709d5b9a4761966b03d545b76f5e084cd5b4177c1fa6cc50c671761dec49a6d81a22d64891268779d1e5a8cf7f8907943d1bf4c3c6989913b9650d3b44c555cfad92a0781b22df296986f3367a997f71fe9cc67bb5e1626e1ef5f5c18b5dd19ff7d0b4df56822f3a96682d3eb4b17ca59d2cda133084cd0eca95c2f55960c00b710ecddf2db08ae738670bbc10ca36b188b903e686a8bcf9f77524a62162304b3c0e8148ea8b86e71eb5c9c68c83cb980ba686b54ffd0d6111f2c3f0cef0b5fb3733af6d6ff4e50d9bd0cadf2cacbda364cd2c8bea9781da207cc9da96bde0b2955443da0c6f82be2a90f777b28f5c1e4d7f80351db9c603f2c1cd93138fa6b8a1ba2317c7f999bec9614d118a03c1649c5c70f36ba8510124801617f3d3166b86dc3927f087e4ffce2189201917e7a4f2d9cd2c78897a88e0e4d7511e6011910b547adda436c10484b47d1a52718ecbfce3f34d7728ecf19a01564c8479c3b360d38f27025e60e77dabcd321696df5825031a130d5abf0c75806aa22f3725e6b2593fa19e5fb524066cf0bfd478302d98696657bcd27c7317c790f300026655852d44b71d1d135dc8eefb30140d17c7c5b85aa88bc21098b8ab0585c56256fc0cce5664a9ed58cbe7535535f98739c2efcba6c2d9bccd404c2f9e3c000052d83743c940cd322f6e3a4c7438f36097d3bd712a78df6559821e9e29c53792a3bb0e757fcd4a40b185d83c4ada723a7e4fd98c16181761af6e48096a9211de74550cf437e078dd657cf5e1164f8313be66d611babfea24d32deb6851bb52126303528573965594ac4ba6ef8d2159a92496584d30f5bcadebe421fed026cb68e0386be9048a122c8f0a7599cc0ed5e333d9775ef86574202469c9348def4c95049114ccc94a4a37fdf7214693fee2b743970a9a1c46e644c8d51b7ccd681c38c3cc21c371b42ab77713c38d3149895f636819b7afb082f878939122f2ad8ff6854d788bec91d92e9598b95bd525ac2559821a71aed6b5c16a392c45baf78b4006e9462bf6a19da270533f2750cb457b3a540f32b1f2e17a754fdc3c5b1f1cc272d8d3841229e798ff051a19c560373422ec2ca9cd03031adb81b39d659440f9f727eeea955d5a9668e60391562ab4fab14e7588c750ab86ed10b010e69d993611f1bb0220de2196e5f2cbe123bf5c7e8d3310727827c2e97cb9c9f760a1808ef5835c0aad9f0fb4b6efbde4867813b9f615204ed85654c5e8e9bd335b74f682449188afec59024906f06ca5647e76797d390c2787408948d8d2fb5e7dfd64a23657378ad9aa51e1117938f8ced230d163c06675f9698628e9a0676013d9645dc307a794363bde38aef389b7ced26dba9d7dece254766644f7180b71a42020cbd597f04387f5bb4b8830bd7a4b470c7db20887d5dea2341fb4403764363d62b360843bc6c484267901707da9c8a723254fe121ba250a1d13dc37f3c638d5576a54ec305f7a10d306920ddea49305837b9d4b5573846ac1855869c6a7354c8df5e57b34234465143b0685ae4d4872781e0a7d7898f8a621fcb7dd0b861e7f65fef2f609fdd2a3589e1c761684a42a5607eab79bc65ecef636c55e6b149a01e3b8f35345a28fad8bec2f7a639497ac8a6fcce2c16ec5007a58b0281bf255fb52a305d9794281c01b60502fba2613821f2684c3ff4ffee060ff68f9674b0a9a40867677e77abbfa39a4fc9656091dc6da12dc69288489c64ee3ce61dd049958fc7661f161f121c6aea5e7f5b806b2d11fabc8cf45257434c78af54e35a5962b10c803607ad1491d819ddade44c8983318e71607ccffe64bc516aeba1c47197423a8500b4abd571f83c5a16b085f973c66ca89b61d5ca60fb8b21ec685cfb3b6eecef196bb58163543b5ec54ffa0435ca6d24f291a2bdce8bdc5c37c7cc188d6ab1570dd37975a0cccb3cd37cc6928a3896c12ae5f16f0310d9a9390d5cabbc4b19400fc434ccd27cec2ec8cd223af101f431ae8561d9f63faa3bbe129b2a070595c54cd378aaf2ddec21e318e31677d0a93d949a2cc10f44c2fa4ceabb68700a3005326810ba7f9af7a1f2db06ea3c5608a03f1b170bc8897a6d51041adc46e2051b2005a282e97a517dde5c35733218923e86f680d747340b0bba51011898c6d55d73aa1dd05e3a30ef9d511c8cd7f2b14aa11a1d11fd8bfe1be161d6911744a63415c1ab7d7b2559f606b80abeff27a4d197b560a1edafa730a9f59b5c336ea257063694103e71750c2bf55f58f8aab04341786b23f21c433df30eebdcec0da48f3832c138bd9dfa90c977a133e34acb332b3ce7b56e1a53f0872f4dfcec46bdc31839bcdf25d7ddf935b5b1e5f1690e19de8afb285cc404cab64b5f6f8dbeff0539ed7940a1aead0df1640560f06581979aefc02b122d1276f62503316d711e396e77ec1bd815715ae2258e7e13e97eaf1107bc175883005c742d7130207870603667d12904fd20f0c258d8ae7fd0ba936ee03fccee671c4e51d1864424590dd12fcd0f722d8fcfc7944ede9238f5905c65670d5dfc322f4c7d36708d7528d4920d5a59bfbc56707be609789e830e806b49078a9022741ce68fabee39eb2649481296781d3ec6f795041112e9f0eacfcefe386c636439654aad7c0abd76f0001a0820ca8879ecf91d88a15a559bb260cf07ca1c74526dac958e3203ba8690afef29b19bd60858dbac42a68d146c943f21271c59cfff39afe7838ac260b0d5cc405dde347207fc46624bb61c0b720e377035d5535544ceb0e30f8ee30515f4bdd73ed7138023e65bdecfa4ff7c207ddded066c66be1e174f5c5bc662fa6475d4ae5f7e17c8f9e35c3013cec433f11345b3b3604f495dacda49d9f897cfefceb82870280f34cb9513bf1437ced303349f8cea8b13575206671bb4d7a4639e714df3243e225512ab9781025c8f30351fa2493deb06bf3f7afad2b8cb4e0916c6fb3651d847f8088ef05f3bcff3b33d0711e70c46ccc9459e78350aa43979f74a0aec42287a2debc2f8ac4574a9fca47862611a350368df0e340418c84ec1110fea6d3f004752d200f4dfeb3b2a5cbeb459acc5f4e038a3c024cd198c6c59e9fe1f033530f22b7037bfa6f643f66868e3d09ca8f0324ec8652070a2873dd64e47ad2d39b363fd0ac4ead548d43b955ecf3469df746551793ce2b0ab1a09de15dab52d1882a74a9a348412d1f5d7f9583c5786a0e7b6a176c936fac23b2c13e65a48c255ad7a91cbba74f2437e4a7d0a5d56aad82ba3b1c5f3c2e836f247dcee4964be55804a34ed4c1b01420054635656c27b3281e18661f00395ca2948f528221b9d5ff37066161a3d9f666b19b30587e1d494119063ba7f9e38e6713e1831c63bf53cfc714787e7991d92fc3d6d530ca01f4e49b6a2a63d0e6a9e1c2441a795c8750dbea1aa1fee1524409d74ca65e07265a395c4abe5e9f0488ff48ca36006cd0a37ba5c3106384d6cb4242bdc7b2109754e42b69f5e9ebae09d0e82ccad2e1667333e9c45b363447f6d1f63bdef4600b00931feb7e08f6196893eccf000318c2f266b3799d5fef8ca799571354e16760ea28cec36035cf61cfaed9ca90ad093f00da5411d2f4cd94500098393ce89b5d42cb322391b6eb4478fc3244881a71bf0336078d5ca31081b506047ba1d17ccf6aafa7fea07be36fd6481828748a3f0a85446aec9ab828ec4ef5387762a625a2abe4b07a65a89d4ebdbec33a9fa3b4a112af6ffb550d7535c0180573429ba0af478a212133ff5001cff09d3ed47b3310d2829b3725688a87c7faa07612d42e17768207528d97906453a778aa995f796fc1858ca1b19b200e934dba68622e3f2861a0efd965d37ba9260564cc2784e38545eb7dc0a910a5facc068e48edd75566b95a795ecc24916c71c9994909e63ef0e68c19dbcfdffd5038d633464e00b927f971eda2c6e22bd7776a33437c4330cef3a8cd0c99712926599598fef5d6fbe0456c0060425179016860dc9bb3abefe800dca5440edb64479bf9780b93505ef6324449b69aaf1b9355ecb0b1341b1e38c23a6793ea18d51c5d7936eea6ba179284f2e177fa5fe0eda345a48dd893b827a230a184c219a26f530798b5084051a61f083ac1766e4ec3a3d457c44a6a394bb467064d0d301a6cda44dfae13306898d74f45f348cb568d57d0518d25940fbfe415f60f59ef9abe14207c5682d594f9d6d3b238deb22a1e0fe63c92af33c96aa35f1f65614783283003ee3be6cc74e987602490e15c39f07de1a8cacd9d9713319aa5df0a7eb3ff5d6421bcb91af6048e9daf038c85f90341d0fe127e15ac9aa3e94d52af4ea3a9c20e8f29395a1e01aa4802dd2b47e2ea0e46bc8f4b4bc3f9114153d03e4440ff01db420f5824c1faaad7638713d0e10139e4fa96c1baad1b303c9258e9992f168bf5497b673fb46cd97611e821e5c9bcb0feb31638ccb61e4077eeaf2e0189404f0360a23964ae52d4dd74359a41f54e05bd04218a98ddcff31ba9e44abae513d2cef9f76cb06131cbdaea6c9e69846af85a414a2431bc42e1317e28c98dfa493cc57791f9af1f76515912c5552b6764d60e3d5765dbcca7a0a0a5676acda59bd1e53216a57b006a492fda911ecea90fa7b872d366c04237c517679762859888208a0f5a5a0cdd39416696029fca34002193c712abdb3fd26108eeeea3b52ce42626df5e3105de2ca88c0be21f0cb866bfb89900e75317dbf0e2fda25283e0760812f3b2a38544d9dfe83bf880dfc65f82176b53e53cb716c2e1a44948e9cb1b7b90e90a57c0feb94fa72e50d75b5be96a59f678d8b1a762d43a20fbf7d6eeb4777371baa97b6367551012216c7003a4e1d99f6c84d241bfd47dc41bd5ed4b82774a5ea8e99a5787306092d9789f127a9d3f6f7144405ed075aa5faa5f41e8f4a550cfb16f8d48f75ee0ae671dc460bc5ff6f4805d920eb834dc431573513234d6d22e61d0cde8d991b4a5ddda02593352deffbeff4eded4e0734dee75df4b542d75d7f7a57cda4e773461d90cc804d34ad62a69c9306777908a0347f118463dae764ed636266d4c1eac726e4d9b730c82aabfe980d645a9353b67d18a13598faf3d2837480bb6110fa9038a86296c9c01accde3207b278b76c2318d970b5a011acd948b64c4a820d1b90c8c82af467f5c5530f196b3996dd306b63df57a908e24bbed96f14dc055b1953fb05e02eb5eacb6859a3275bb5e004586eca7e4b7ac5357ee02e233fc77bc8bf6ea4a317f81e04904ba2deace58803c2a492d4f169fcdfc7da3e5e2f2c566b192d1100e3e71fbe0834ec4785c3080d3738a43fc4e65ac034776a1adecea32d78400d271455d3637e78d5debda6fc38dfa6d8e0075e2edb1357ba29e19defb278759f5c2f0b5c788a0f5e863b2bbd1ae73ed433e7529b895f887130e7efefd98e2c5c2a23b2a99710a402078d7313069a77378677e8884a9a812e873a6c717b350512d35a4ed6305d66396c067da05b5d408b04fc9f2550855ebb6cbea7c40d152d14fe9a407948cd20b5bd8cacd745a20c8ae902b2c2e9a0cc6193ffea3f03116bd3b20b7ad0b28213b787d4f92520efb8ffd424a305c16d269d43b029f3a1a9928cb0c1503ba1451f7298522fe934216c3b59e2011d095f90aad0e2e7c47a67d9d172b1a607144a00a46f3adf093cbe8690fefa807ccdad4c2af46b868c2fb3cfbfc3d1c71437d67a979810e7554b94c40a62bf0f6c9f013beb73d606e516a5251659e29fd956c718fcc71c5f5e62f7398c86d3e7e3d4fe2b78b83cfe405e033d30283c2e5057dafd89124bfaf60ead95f4a9f311ed8de494a213b5f1569a23fbd0f810d01dc86018bb45aa26c2207411b19b07e3a69ae8af1a2f1efe0781e5324fdd71047c912ac176ee20b8e23715044b929e493245a721ad0835c5d4d0a8b8ef8cb0c3bd3a9067b3daa4fdc11f25dfebcda500f6c2588c768e9bffdc4980f889baa793b573f929a6c474c0ea13af1e12758007c3644243934998a31dcc320f7e290ed7cb8dd2e54c698cb3056f9848f759d6ade691ae5d2f45147faf3ef03b3c860dbd5e8837c3ea1ee9955131fcb5df16754774adc9b443d20a625d1a0f10c48d8b15d7c4a57b089b7882827076e88cde674cbb087654e336f072f9591814365e8b8dbc1a533bdd120c91aa302ed8b5c1147dad902bde2361402300cc080577be6942663a3199999b76ac13035c9dc8f6049b8bde0283920f6585607ff942bcf55d7c51052585f6270e8b4b0822c2eefbbda4826e07ee1cb786ca8098382edcbcfc72a6d832c8d63867c47c303dd20ae9ee549bef45b15b59083fe75794c8c71cbafd9c69a55e3ee28f49d23c057cba04ff079524fe0c7726612d962a184f99e2bf048cea9a58f1f5e9e6f62cb258c93dc42cad85325fcfa153d1bc1855467d6ef8c1909e5281d71c95f3960e7fe55ac9c097aa00ffecfdc08d9f803a35cffc3e57340ee8c380344e5581ec666c2219e9c5aff651cdac1ea003deed4f86462555a124569684f65e33a655ff2a763a64828ea303c5aabc043004353a970feeba7365e3ef5429f527b62ea0ac4b180d791d1692095001698fea30ea3ba7d8c31b50291599975a7d777f68a2c069bbb27809424405536a0cb22e67d3d3d6848ed937e064b0dce77a3de61ef264727eda3a8d6cce5753a7f718670be1c8c8463ff56c0a586077763116ebd7188034984ed0668719879b51943a7e151b94eca185e639ca71c2363296c4913a0e680168ff6f156eef7d429a9b6d8dbf8043c982f38a58a9ab5e8fa3ff2e96a65d2345f68a1f2a0bb87e0798f6b0c1f81f5d0db09051bfb19689d98c9623e7c6ec6c5732a420bbca162d690841963409f00b279df4bb08a8814af3ba99cfae9d58cf1425e20eb402335fd7fd3013a4b47a5c3847869a9958b8b17232a80cf0475abf58576ab1b3220cc1a35cdc32edcfe76747fa1d4352cc79e0b98b0545d3a565e3242d60e2b7b5461bee9a9c60116c4a68f6872063e2205184f803c165aa6c627e633a45499d1ca903208274ea6cfa79b28b3ae87011f601231ce871603574763305066cb6f503f3c6926621c9a2efcc614c28140ec1cbefc0a41507c67bde539233a0a2f631cf502c5ede8c2210dac1f8b80212cb29797312aa84266adac6c5825f0ab0a8828e4fb76ae6140fca20758086091b62ac2fff44e4c94548f206a177370ea2a46a246a3586dc3a0a18908f6716e4646f65f150ecebb0cc4ef31863780f986873c973612271f3acba19d349ab4ed5e2e524daf8137a147de5bdb66c275b077ccbd17feb96565c289ae4a172c9ba43c313855477848161ce302f4b2a3c11e4bda3522bea3fb58a0cfa00c12e04e9b58b7887493c6be52f8341d57025a83fd86e71adc9820ae80cf55ff6fa8c8758e7722ff964cb75467e41f6dfbf90e86f023721cd5db7bb8b48fdd5e5a1dcb992749f727a65315f2c297ec6d27094c039c8c1bd63fadc0947801ed7fe3a70b8e96a4f54eaaf6f16310e798b210cc14b6d9a9177cde4456c186f9fc994e611f7bdc4551b32dfa859a550dbdaa6b1824501ce380674108b6f09bbd0bf977177cfe3757c5727ab191719f517586293bdb62493d1fec3ef759e03a2797d122e9be8dcd0b9ee7eb58f916ebb52227e46d07971a6f5839d7449ca158a92728eb4c5eb60011b6a36ef97960a3fec8364e0ff324dd605dc8496bbbab2c380e7bbad12a84cfdb001adb56efca4dd8ba77f0633633c220984c43e61dbfcb1d2ef419de16453de232b0e34820481af2925c23a5edd18f8a8152bc825c4d8e8377b697fcab9e3ee95f8336edf63f877422933f3870a2c785678b3bda558bd94ac7064e7a65131f041dd36d5bbc1aae9c6b48ef31b3c43619b504bcdc279e319c54a5283c24748f26f7272858171ee9cefea3f99242a38598fbbaf2a7e9b0a0e98d0a9694d2f9ef1dc2938b8cfeae0f0f7d0d3ef460c069ca01e74096aca75a8c5dace6a1be6f60a1d5f6f3effa11d28e98c97503c792e7f2bad4ac3d3ed2cc704c2460a406d486ac1832dec75962bbd9f9f974c09bf71a0db718b70ad54b3e2bbc7e0842377120b4655d56aa00e27d8037aa1d760ad25027cfa7267e794465e4493cca1c797d7e3c4994173114f07da0b7a96d130d71aa56bb60360c90dbc52c6cd9d117d6b1b0a7b51c7fb3c8e77f3dab5ca94cf781631f15e5b1894294e37dd52271ce92f93f52fb19ac30f6a38999b68a7c50c9d58b1ccb625bae2055ef7b78db8d5d11173192117046a02355e9d802abcdb4cb10d70b5283457548a2e9123e78d20b8c84172092af1e51071e9d266d26b53db6e2948c54091011ea95e00110e19c8bf09897dfade259d6e83e15f3842c182ad816111ed7c47b3ae93554439fb03f15a185eeb4c07424ed1fb134800f1d34153df4209fd1c5de4e671ddfe026ba6128aca64b5d15940247eff4b777ccd7d6fffb911c093b47ef4062a2790473c3f1cc627217f8a5cf786b1104fbca7a7e9b9b91c233b3ecf0381a8ee8a435e52cdca4f970b0bb34c0ff37de776c0b87c31d290d32d6f8cf2f1a1e910a5899749299a9aef49b6e539341e83d1712ca98edb1fc1e35bcba1f5aee9b52bb0c65a1518d4a2715d920218e49f8ae6c4d63b2cb55670b12df65b83399e8b860665d115391c205c87f48b071f8102f01561ac74afe470cd11c8790d1b21049859f8d22a8b2086f46a7958321426c5746277900434386e2243999303676bcbdac1bb69e9ac7876f95f58382fef68bac0fd351ae2feb19d850af8ec9e5dc92a0b6372c13551c72014bfca742db5b07acacbe611b30655aa620acd9c268cb02f2531aee7f0602120287213eb9adabfd4b325c72e36789c3f7a02f8de97b32ec164a95bc7a1bb5a6c07a709ffe54720cd10117f62b5b59778ac204ce9574b1d0992851d609e5b396148404c02af388d6402220c1c20c96933d16f40b88574f212459863d6f889f0c52cc9bffa5a46788fad1cce62d36e62836c002c7dfe0910769177abd16ea2a531f24b1405217088c3993f0e2fd3168568635ac49ddfcf2afa522614119b0190f6112203179854ed088c9f42720beab16867488c2646d6f97293bdfe181cb4ece1efa1ffd44830713d0935333475d5cce62c5187591d144a93da7f0e1c31a00dbe3af6b9c192a0ab84f05d2841791a1b446009bd5edbc40549b63a89e61a370321bd16330d7207cfa4a4fc6b7cee7f625199211992004a2a21d97533fa3042a6f025285d89aaba69ae1b3113029d43c2770d33e637cbd8a702eb5192c663bf5455ad18702bd7707d1887bd4e7c6f5e9ce38b3463a1b06deb4001c455d5c3a754a91ea49a35cab9a194d58cf33993bb91c3391242fd90e100121375b3e24b7ba9547db26a394ac670bba67f96d9d3e82e7a9816ca38987f9a10dd63bb11e5208dddd4daaae761924bc7c2a838bb5d849f6d296f3871dcf521cebecaa85a09eeaf538532d634024c80b69ea3ce92fb5e9de66e09ed0624a864e7a8d29c43b1a7eb10919919b567d23ec160124eab500bd249303aa387063287dc902e35ab2d0684943a3e29addd375fd1904bff53f720127295044bd7fe5c3a34566c74e90a6c81ed7046997620093b428ff349629e8fee94983fe1fe5905f7e202ccde57350fa01f613b64485a4cb20010ab96ee0a059272252f4f44c939f514318991c1728d1485fc033f21b01d088b14e070ab324d1701b66aa7a6e1e975f88a64ac94a5f559f98820aa9ccd6ecc67d63119cd58d10ccbd466307e15dc84a119dc66c05261e1aaf4ab46906842c0b09dae0b7dec86cb04df53fe146f81b4f91c25cce7bcdb6a93ef097cbaf6c7a37a93d96a6eedefb663a31c545967ab0c6e756d53c8f29fbc874184a90ebe8196122898947865c3da15605c2839eb6edb366fcb35d48d264d8b4cd78ef256edec3ffb16a7b41bdc370fdd499c2353f37def22ef6200be2e3f6cb15dc03e34b396523e1d3924a02b7058f6269f100155f3258ba41bb1753552facf00d65efc5073734fd40719c7a2436b4570dd4a78de3ca74b93f328166bbc25f6663455c69a8c47746c7a6386ad0ade1457313da3f184561553915ac1e277921177e7910b57994f8d27991b629b7d661e0a20fe5921b285bf7f5a656df23144ba6c10e47fddc706a4d96e67920edcec0b49a8826b190fa47e5e3d1fabf38141c8ecb19972c925d5ac373500d893e1211a55132cf837bfa80a639a493eefc5a8a85e49a7ee1c6bf0b63fbf5c2855a2796a724fb72d934a71aa3beaf1368bc530503b9917ec98b9d4e909c238b133a97fc566d159083b54bbe2fc0ffc415e2f17f4f5c48f7d4226e2f2fc3afee93226531b44f10a7b25168430a69f9bb2571835262e9f408c5f40404fea5e46f3439fcdee15f770c89867e9629b80bc152d52581b26447b9948fc64ec7c1fb3f420142a28298fe855915c9d523c63c2d360e899ea5e9725d45541c39f562c9788c06654a41e8d48af2a1cf1ce24961d9a3a4e3cc15d6cce3c5566e359b3169fa39a6f9d3319d87eeb0b0b329e56dd408e9094c216b63971b1833ad2938da765f580d1369839f197bf9e443177ed5c2eeca39459460ece656240bc561b9d3b2223b0dd307e49e712d7def172c4b150914c9bd9a001db55baf9ef1a4c28ece768fc91da08142004688e7e21191712fd4a86775e9d9d96a7a9738a72a031531b9446254d43bb3c8acc9aae7ad19cb5f20de30b1c2d035c452120c4c59a690f4972446d1884de3f3dffdcc1203b6bc040f982e5db456d0025ae824b7037bbc8f981e4232b261d5fe0e7f19b076a79ea86d5423ee5c5f9dab53d9d84236d08cd340499db43fd252e92bfc423895aece9f33fa6512a46b692caf0444b874d0f0cae4230b1d2b51a0317af1ae9848849b0e7fe48b16cbc741efd5f53c0d3ff53b71b1545dc88c2684d58ec0d60577a54dbc4cafdc9a51df62ff854d9ae2c1f7753614a2a27c106c5647d4e586c8598e818870ec868e5bb8a6f91c582d4e51c2608911477592ab83533a444755c4f3bc54b3ffb84f7149437b7260c7bf13d8d5d4f845fc3d0577810346b02b995c5c33127baab6deaabb111d0a25c0a079d45ee46881c4d5ebc22962d92892f24f56e66c1e452aca5bd0c1027343a86e25e34258f925ffed77ab26d0d95bd13a6739149517aeaf7aa350e3d9dca5b37fc8227cd41114bc5003b75da39f3360bbbbc94b20756d81bc97c04b02671884d4b9fb65efd33017f10313a0c3e28a7fbd68952f4c428568dad9f01b294eba389758efbaa251326826cebee88119b81dc4bdd6dd6c9658b5bc30bb6621e29f144eb9271527bb63d5ef6686e0e1d983b1c1186ea6fa8b74e6b78928d0c30045d2734647869f963331fd0a63b1a40ce1c3c4f6d42d9d21199a9f2324c7336d44c97391f388a48702ec8520e8346097ec6f54715297ca50d5f3bac2b44e93e2c713956cb92f9344f54fa1eddbd2f225f4ab96ed42c60cbd03b09e113f414d7389556c3973478d42d31cc2ce3941e6c8727c5eb7419bd862ef8db2332d6a5b6af29c89e09f645dd56b8aa3ce331b36ba9952ef9492dc624d586c6032024a0ce06c2d3527069ce9a3f164ccaccc07e47c757de98dc96b3fdbe12cf6de3eea57c94ee8ca89b806451943da3f16954ae48a862c71096ae67e8751625109b614fb575ca835f7a9c4ba1a32f5e03f05afe4e345e736afc574ac6eaa321e3dc29e304928ae4e8a3b11a7fc54d1a690f05fe633e05374dd4aea9d24f50ecafcdbad589970e4b9bb31d44ae9896e17b5ff1d52295b2d4a70f0e399c4cfdaaa315cb3b86559e9523a7740b959e284fb7568372111156ad60eb5b11f5ab3373a9328240f4dac41145b61671d640bb5ec88008126ed2783644d59ff06d074ad6791f8a405c959c9836dafd0e18077279535bdd2f64e40265621469996556af875ceec65abacd5bf53894d0ef8c792c67d2404f760211d970098b7e1547dbd19ba66ef2f066eefde1954ad6de29dc02d2868baec8735f04d38f67549a484206cc53acc4fcdef7618cf217a4eeacb78d0b36397fbc6b4af6d7eaafdd3424bbc692db323c04443dbff35b114fd63dc94a2985e91ea71dc73fd124fa9e4195c72af0f4bc2beaa28092fea217290d6da747017446f8bd27eaae1e61f1686b834810a5ee38822993fbb19d60f623c0267c0a6d399d644005a4d10faf208af66d93d630cb2983f858b86c66f709a21edac770d50d39e61344e20d5f1c9a8c6c7af482d70736a34deb784c9b7bda8e839f9e8e1ae84bacf801e0908456a1e6ccb4d8ae21c0dd9f9172902703600bf3d0b8b588b884d973895e3a3ac523fdd95f630cfa8c4038bb57bc6534fd1a1de7057596fb705045681c65a206bb846898de31e4b44516e175da1748d9aec98009357f32ad14e9edb1b109d85ee26b06266f45f74071ccbeb44d4bb552e6ef6aaf814be174b2e19985874b25c64837e884ab72aacae26aaf5eacedb4e70e176569b8cccbc004cab58cc025d696288fbd3ea1e6e00e285e8aee9e2090c161c3603ecad95653bd989f7f97654d52549b676dce4d02b989e8b0646c82e3e0a757abd9c1862cf01f217d9c1f060790f2232919cc748d5fbefa5628af515eb359343ca6c9efe0a1b9ab1e26b75faec387fbe990e3d9b15d83f34e147eb555f2ff869298bc5610ee9722076b0f114965467ea4f50b661af4aae3e22a8c688c37c5b667c9b511a81690905b28424ba77d02ad9a34e68c5f1dba63bc90e1cdf32aca10ca8f0941a1af9416518d5200a3a2e919cb8699bc4ddb2a5566391761f25a311485ec42201e0e1b839c751664367d6e88d45003c8ee370d307de9ae8e4611723b2759d9ceadc56e8b2823d20591a2b1d577544d8e185df0cdef78cc503f65bbdca6f16f6a2c7ae36f9029994237ce0dafde6d709c88a518f96c8e736b91e6a2c47c6399548c16348c5066d22c7ee3e09cc20f87029da946a6297ec7f2915be03240cb69f1f1b5de3d77f65b09656849e78ca7e817a8105e18464e5bf785ff98e3bb6eadd548d00e79f852216b29b7475d918b7c1e328b1da667e00e5d30ab3da337fc47e528280e9cdcf57f2d7bd625f9a450efc499c1337827874897f0325a329cf312f9444295a9cc08330b80cbf8b244157d7956137cb44fcc9871f1cb95a7e31d78f40c626a6c2094fa19cb2fa26747104e8417903a19c545812c0446b612638335591c71b7a5119d62136a388ae48939de8b3b666cc644f93f7dc1e47656092c62f3bea298bcf7e7d44499bd01278d6e6ca0636cbf9fbc0c175b45b4e6930385035b6ef0260849b5de70daa6b3183ed115148e526866d669179929a4b38ee5441db704e52aa650295f55c65340d2d51031a9af2ae216ee1081020ca28eb1312b122e93c1828e5525d1682aaf9a6e7f1b311fc2cc0a3f507710e6bca908cf4fd13be8e47d372d036f585e804f087e32b5fa9191d8dfeb648747730ffe05422d663758271a2aca8ef9de5b8c0c850b5981ee5bbdd9e50b7074fc98b2c220a59eac2ce2df8fea737f40292ece29415da7a76692f6330c29709ab020d7d72e342dd3ac026fe3095c05be8755d4ba583b72acac7d77a534d96ff01d144835a74a7e16cdf60d086c3be38dc7442fce8d5b35347f2acae64a743fee9a92478ea17a7d88191239cae72bcab16c133ba9a08f20a60509702e5a9b943d060824d3c7363d79fb955aec8da3dc54171b7f61a9fec2707b97d083178413cac5a02e34890a5402707a7a4dd22ad5314e680d1808e9dd183305e6de2cf5e5a2927388f1cfe8d1de60e6a736777d60b81d0772be9eb5c09a53241ce5cab293ecbe6f01fe7cc4e22e48ece85f263b7002e64405b606f0c004f0619c99fad4d7460d9d233a19d9e6311839a8b81e5eca8b970eb47297dfc3cf604cee36e5c4fde78bc4e7525a78c378e7468ccc6072353bc70554687a45f22a6c15fe4fbe0d084fd9f486f867d979c17980610f93c7b5f7d5404d956cf7dc55a97df0a5789aae1f108afe856c42cabba1db5fc820c74df6d82aaf5ddcd58596d5c6bbcf23e3b761d310f8a3887aa1be2f50afc1d9b7949d2414e27107a3a36b16ee0c5a641df0b7fca7456acfa8b7948dd49ce039db3794140a03e9b261a83ca422f9cc8542d37112014c7aaeb2a8a182ba970a50691acf7434e258a60387310ab27f4e03f34b9bd83e91ce9db5b9dfeb0f550bd65852c1e845900d40c7c47bd99081ea5d51c090df2ef053accba03a972866f7bed78b83b94965c03d122196145210cccce8f4cb7e0b324d42b246eab9c9b10d3d458ac4a1070645c4ebbe22abcf2655b19bcb5de2f33497440af69b0a7a7074ba49336e6663cb7c6691370323c0ae4da85900264697f427d00c8670e5a5127e17cdd70cd24ce1325976a71de0483e28fcd1c6cdd33dc66f7b52c4cf6acdb42668538730ff57309c044f7129ec1c743eacb0439f91f73775c99a315af80450011d93af2e3e30a240bf52d79d93f5a16d11a134bfc5f577a7eba961c830c8b1aaeb15aaccf86b56e63efd0442aa6e3f1c0ab58113fe0c34fc62c417bc7136a611b6517c0d763de1c707f9b7665cfb6f869955c89830dd4e10868c187f6be876dc3661a1f3a465bc106ff6fdb0de3b94648e03f7d636179f15eac60ca7a1e7732d310ba169a156179a9fd9f97937e9ef68307812dacc01634b19c8965715dfbbbead6a7088b668989bbebf35b8229222a225d2a237c56c50c9343e9d58fc421611c6d5bece792855afe250edc3a0b64de1b29000ec23ef3d8aec085e498743e5de074130670a3ec10a5c5e7610e34e39c9389e944b089b82b43e43405273a216631068ef5eeb27834c826da93b6d7ac22dc3cbf8203a352a8fa7516832e37ab76644baaf818b6a8617ed9a0b9cae349dcc0d478a2609e657259a6f00af8db3ac2db197aed3296b638d295040f919dd5b1bf591f03ff02e4981295beade1a4764d96917c249793e6340e6683ea9592ece21bd377491df6bd4ac5671315d6c4d2dba6db7d82e7952c5ade210e68489808d4116bdfe836b6edccefc9d269d279f8217208d249f803562bfebc3db78cb58494dacc73c0205e73b80545ec4e1cfacdf420bd631843e4059f8369f71d825edc48f64fd15564270d2e9beaf3f7800d0741a50a99d1fbd5b5f184e614dcc6de02b05665c6b93969e6cd0a9d7f89bce3f3d9b1dc004437b593e91582fc09f88f0575a7bd9db5bfda28d026f8626a1f980a77329e581269f4edbcfa34def825c4ce085777388f8393f66fa9f2c8ab357a2aa6b45869f8a3a2c19ff7ed01d9ed1e75c687a4fd194e3c9e5e0698240c7a9118f5a2e911e5fa73ded3197d5c64035b409695303683453e40e5af1f647aae2e51757607043053b1d53958fe3ea7ea0b6f5da4989b34b49707a8a6f6d09dfabe572b3607e6aca0b641973823886c38f2b4a2a9c498d7ca4468b01733837b3afa540e48596ad85b16ba364d0ce02622607550f933ed708eb81a13373848ac7a3bb557d387f5d466800bcd0c90013491ff3a5e0393ff9dab2126fb78ddea59427fecc5c75cf371a1b2b6872eca579d0919522ac0fd4d593b43f224f7ed632b2ba73c0b22203bdf7ae39cdaf765665821be40c7355155d6d2e0c4f2abbad8539d05b7650d7cb61e1012b132b9dcf196fae8f3fc1ba9f924b5ef38c55a2229503a87c17562cc14485901c508a49aea92afb1a0a2d86f2a83f9f2bb93f79071154a29af877327ef7cf58031bb032c7f63c4b6d3dc3a3094fded890719c2d7572e213bd0c9e8f54605108045bc6a3cd8cc7e400e0a7b76a5ad8e7f673e26bc444f9a6cac16b741a350a483c7976889ba58c74ba17b2418b000a3dd9cfba2ae669bdb40fd2b2ed0251d7214ec57b81ab91eec6aef96dbf01bfb21633d2ab913d78c0c7d2943a37c128ed5452cde8b81c91ab6d99bd87f25d704222a5e6b17b67b7f0f0f1db4ac8a1b6556d05804d50115c9d9f319971cae2f577e25f77bb9740a844210dc1ff4fd0bb49a30eec60df86d637bd701de0124553e1a46beec1f7b42b5d9b64372d1f1f586d4c5ea9a4aaa1533eba194935975748b501189da0e3cddd96022f57248cd0034efc22136a6ee92dfdaffecf5e54515aaf7b295dd56637aa93a3c5fd9b4ffc21542033d886f23db885dfc145874f1a211dcce18bb899d2aa2fc1243139a682b357a673e07632c7d57f5c048f5c17a680f6d564bc628bef63b237b206e7232eeffce4722bf9dd48bc66b39ca8768b35efe0129442cf17bfb8f3da5faf4506aed06ec257f92095aee8e357b20bbaf0f1000e591f10f08196ff4fc267260c63fd907d8848d4a6460a2f851980cc045e1f6c9f59d4cd8b392f19c820308656525611e0ae4e44eaf11839d01fa1e64d85d0114277e594227c590ab9e5c20e0b8fd3153a2a1335e92e73bfbf6a7543b86f85d5696542dc7f11ee42ecd91ab12b500d7004e04dc8fc6ef554b0666ddf2f60fb5ddc980ad1102a5a9cd3eae31a12aa9b3547cd2f3f3ac141add363ec43b310137ffbd76903749f78091f17aff7f6aa35de19992af82ae231da6b7c4f175abb463ddb22dff1a52f9362a5b796b17055e7a0ef6e65e5716df376bdeb9ead6a05e0fc64e9060195186a81f92d3ea43ae83321d103040d2e930e2e2a9ad7e14ed5ffa0cb772c589f04f21f2ad30eb54509bc1e62e573d67fea989c87a22f01574529c1d7151e899c144e269edf3c8d414b3230d3131bb9992d217aeefb43ade83e993044615abf44e32918fffee7618ca566ce27dc121c1ee07f326395461b8bfdf0f06263d8cec37c8d4b55dbd44e63e54180e34918195a559197eeff791a86f9257f82bc69783b3ec330e42cb71e731f78a5ead41734c0564c3030527a8aabed86b53c7910a673ff248f8d3154979b3e07c9deee4e1772735b2aeadae07b8749184d341d87d60e390bcd0f0a8d349d5adb62c8b33f87135db6c23f9e6e8b84898d12528e1ae2b68da9729612a75b7530fe5272592f58f1fa157bc8944e37e6eea195b9dcf7c478b6ebe258e82cb6db48d6b9e0634477fa479be8963e12016b4ec21898df99ecc76da056e59653b7dee4650cbb103a611e11443788d354ac0b3d4852667d97f7b1e85de4fb111b6bda2ed8a47c9650ec1c200153f27a584f17f2d64afe3174c156c0e07a9c79e023071958f504393e46b222a7cf4487afdc4ae7d8f2d1bd41bba1c2613fdaf4f01c9822689bdfcf14146ef918a49b56c6725fd6cfb134a5a503fa1974e83f979d835e9f3a3b85895168ff17156a73846e7168b65adc795a574a4b360bb50f7759c4ded488560b674b501276be07185b6b33a14de850da84c51ccae0af925161add441eab9bb21623ac43871af9997b57a7a19516b8f7c88b40c215b1c1818c5ecffdce8c73c1b744363ad2ca121c819923e9d805b75d0b6ba2e3520869aeb4c0539fbeb0a363fdf3c44db9182b8942caf97f8eccfb6df02df5b793d42de1f576eec97f05be5eb7b006d2cf917bdf9d38d05b50c6469e83cbdb2eb4cde928924b88a3c6ea90bb54857212932242492783f19de27b7269848a237739d39703bc58184b5380c3659d302f52a6fc95be033ac7c0756c9d6ad09c1975969c61e8fd44554dcd1a2987c546821d24545a5129d0a1af2e852b347124084c58b2e55a87c8c9383238137794951bb6c16ca5fef2c85018cb2e7cba49b57413317d14ee9f3dd5ada11cc300c4e300f55bc0dd037b6fa47cd2b5de74d65a8891e468e7c237369e1a5ed25cc2986427cd8ccb25c0ca7fca031e81c5d47111e65c8e1843a3ab993ef3b72289cce856bf68ff85aaff410cb19fe67dbe75df6997cf8309f527264375d70f8cfc1adfc5a496a6d774aea2adefc2ad9cf25d1bb5926b41f2cd76e222abb5947ec1127676657a13284af91bfae36caddc403b39cac8350d4ecb1cba2473e9581488c79eb7261867763c12d50d3794c2ce1dc8a9396b58f55236909a4d40160488c0366ac36a5996404d18d3ad177992fa310ea553be3d69f9a554ed881219796a9a35c7f4a15bcdb6f726d3faa093fb05fb678f0b4d4f9226c5ceecc724359ef05524f4c0468c0dc5eef9b7f95182567d5fc72204de610ad94205e198af884de92fd68c523c22083dcf10fdc4bf66311c2234fe8681cd8eb8622ef2d3021e60e8a84b89b1cf21998ed209d6941342ed9e887f503c90421107528e2cdc1dc244b7da1b8420c1b7dc6fd0ebd777519806c136b9f25b08d7ef7db0511ec99cfbd84900de6df6b5eff75f26526b0f472d9422a8af0113790ba44dba8f01ca07b1ece8c29caf569e4a448e541403005531f68cb14ae9d2a18278b7433e59ef41f68122fcc7fc3000165ec1f8b2f49eb622dbac9bff57f8314139b746ab310afedfb5dd9459c0a4d953b9530754188e2e67b59b25e0f0298a7d410fa058ea2490cb5a565a223bd2d9261903a4fda7bd35f9d54e0fab26a8ddaf6d1436407d50214994d0d4d6e8c3e1b0122ba7f7fd233a41530f03a44c94994a65d159cab0e875f24d599eb7ede5909e88379ee33f64d4508ae072fd026fb61c5491ba5030b6f8eed92686b72a12c81b38862a9ad1ccc3d41d20858da94a936fe7cb3acb907c259ae545c808b63620fcb5bfb80e81b1b2b7331aa47f2bb6652674f0779da3fe0e10ffc0c12f897125435becd14a80a5b9401f2134fe3d28c5a9e5d4f395b1e549938501a17629b647e4f8cda6f6245f71cdd8bb546e641819e36fb0a6ddd1a0918c3e8314deecf4c8a13c0c5d08cd38764d842e96ee33b244b03f666c1ea84af4506558033504b3c570ab52665dafac6077e65bed3cdca63be07c1b038b1d19eb74d38b391430f6f248642ef3c7dd02694f8a47f9bb98cc5eedb8c9ee4c0c400eae1b7d494a3b63e32ffc84a2eb2f6efdd4f83c589b5307193fff83e1d1c84e1023f8c41ffc4dc25b5ba75897b2f8db654b8c44651f302e832457b1bf58a6326aaaf05efefb91c4691b631f6b5a4686f070ee83e0c0e52ce7d5c3aded1208565346f050ea1a6ed71dc8d06119e47d6cf7a4163659bd3b44f6f6d43217990e1acd17f975d23127e1e29e6bf293ac3be1aab65ad465eee91ad9ab9ac486b44b392e5dc1101e112e613b23f5a167e8ef5fd0cafd0f9ea142b903d189ec874996a799596d4d0aa857d536ff6b7981b6fc46091b46047f8656a26f4dab36f7b1f7f9e43b2512c7ffc733488cb02f3e324e983229341c69cf31264b957ffe7661ba1742592a3f05cda4430a07c68c1ca82f2d8c874711dfc4b8098bea740b9a875a3766385e3c33b652e249daa90cc8cc97bfb3e0d4b54a53f5e9f8eff2bb7aaaf4d7b62ae2be83cfff8360cef44e8bd98991d281fc6531730fad8b7063b23700569f4dcdd2b1fe86958170a62257f9a9c02f7ed39eb5430f86d3b5c4b5171eb285dd9e74d9e8952e9c46136c8453c38fa9dc7510765ee1aa10148bb92698501a8bb742fff251695904429e0e98e1f7ea4e1d81a38cb0377ccc6a7968fd99af381d970dc2daa385de4e10c1a08b4b84dc05b4fcee748b84a13b476b5db0a25a43dc729a55e03068bf16d47af1d71d53aee56792c19c0b016844d625744dab841d3efdedbe36fd2d13214739660bd476d4c0777f7714d77a316c7ede907ed5c7beedf0f731f347d327b2a0cadc8b740fdd481e046eb7b3d883c6b5ecc75ab536cd9c21df49a527fb92bd62247f57a533ef746047cb71ea766c11e03c19bb30f15e06ae1fbe4d14c04bcb144bef4523eeb34f2ef1fc870076e9228d35a418528ac61c28fa9db288eef1a6a3376e3755b7b850f23c48aecf32ec6d3822521e54e5e3d98f4413a55126498f35bb6a04cce8522f82e66c0eb5a8fb05cf8e1b08da4a9f92ffd45bd6294f246072ff6fd036282cb12c307857d507bf5e51cf5111e9ed891370f5d9b814a2bee7b40e739b971303fb02c3a5b5af055b1c2cad68d3c91a62185b3b257a786d147544a2d960f91476e9d22d19deecd51a9e7cc2a09556b3532646b1cb7c1b6abace53225422fb6870c6ef27d012e899eede66fffa6b46b2e775b4a89e0040b12ffe6122cfdccab182add384c9c1740cdcbb625ba3f20c9b326b6428701ef126418a3720879f63240305d0e3ceffc21e206c16e7f86b2119eb0c6ab20ba002e19e4362db76a2af0956a667902923f656b353be480aa2f4926aa86a0536cc3400fc0d01519d9b29d21d0543a256fab0b0fdb549097a03d9e2375e9e733ac5abc4ea29455dafdb853486a4cf04137aee528b3f0dd6eb6b3fbbc7b9d5a566ec46846503550fa7a23b7cf5f91d0ef9b509147f4f38a78761cceadc339c648b211aaf31ace00798f905a80d44f0f7831b5f0de026c3a7b2b8c956dd9d6f49355932230585f65f624a03aece0879a430dc18a230c1046ba21a20a4343d7fa861730539820b555402997d7960dea957e1f3fd6f3dca11d600dd9462bb8812479d1ff2a028f442f449f8da96478d87d65b9cc3cd8ddb9f981908b24cc26816fa29146c55f7fef3f72fc6987a443d4516dd1c71a78ae91a5b0050396ed98cd54b833689cec6f971de1d181230a64bb6237605c5e944a6b405d596add4cd33f59fab2871f4b1f252ba08b1a22008dae364e4163e38a2420e97a5f83214d6660778ec9a25e12cde9004503d4c0353231168a701866f60ba3a65f24f0b01eb2889176a353ce52775921f4c620884cb3322894fa13ef1bd04615005aa669fe50b87b1601457510f48c5b71e863cdca9b0e443d8fd46e9d0f9ea8a9ad5fed9eb08a4fb9436246e702356c1b24bb85ee33175780f57da22de04d12c915c44bec1e7cd0f9376b6946a29114ee978103b96d174acdfb2bceea1b58831969d96e421f3a3315461d9868be3b08260cd7860a147d3d58f109a989481dd6aaece7f8e69baaed0fd730d2c1cde23d64489063fd57a0b7b3519cbf17c6c1891350e18d17fba4c9042a5a6772a1d147a1da0d7c9a72aa58902724fbc895d89f978562ac7dc55ffa61d4de9f66111455e400d18563c1f594f1603e6997856512bd235df1b7395a01935c87f738f5c06db5b72082cd2b521aa0122910f90c6b0838fcdaa0f06ed1d03b975349142b3c1ca3cf8f6951ee9ec711e769841cad938a0226eddfb43e0b5e85dc9315a2dd110546bf9a27cdc68502f1ffb21ef086c4e61c9d0b5464c380d22ca4b68da783d3617ff5f600d88683edfcd04688e1dbd3e325f0f3683ee661ab066136c48b415e63172b6b2bc2682115737a4f5e91971e27de88ee371691b4ecb3f2ca57eddc993d6f347cfc2c42b58213dade3dd68cec237a442fd723bcd9db111044dda3c36a5e1877e0525ccdb4dda0d156b2a5f9ceb9411c0714d8a77a4351e5c7e55b3ca334825cba25cee82aa82d69cc918bb0fed4553140feb902777eab5be7cf89692860aba636a55403bf52c054bd0a1d0067e137b880e35f57b11511f29095851c465f3437993725a7524892daef6ffcd6154ce363856ce1b436ee85ad1d9134e02412398037aa0e51d59e74a68ce45490bc8bee3726e5bd327ebbc70c40473be9e955e39b6261dbd9318089f00424f1356f694b919f1ae9f72c585266701b3f2fa2101105745623a90b716bb05f62846eb409e756943f3fad68fa13343d5cac1e21654d61ca47e0f8366e1ace7e2733621de2420749901b169bc8fe990da12416e669ac00c57a4c873645ccf2ea5668aee7c3c41df03c3cfac6aeb7db9095829d6f5c4df57e7beac678dcbfed010fd88f300dfe81373fafd55863e3c22e6b35f9ec066cad769a65384fc11b816147109bf2f44528a16ba6c372767f96c75bfd34ef25b5b41cdd3d80eccbcb8b15268725b6e03864755e3a2609be7e5d1b0cd9ce2d49c46da8239787cd577767223fafc295385f6caaa96cc0e37bbadc086c07420b29465b4678827c5c7c1f10b326b7e8d459932b708ce7fc0c180a8289ca8d9de41ed2af408d3b54514e67f7216b4b9a7bf5674d051ac2986d37eb9ebec7373065144b018751738f47013b39e45cc0276308b4c75495cb3b92d0c6a6c5ba0207715b4bac7e135357db0bd91264b77a069d0355f657b60cc1e7bfbacde79b77edbc12e8656ae452cf8fcdca25b96fde980d566f9a481f896453f195a2e460a7d6d4504fc3591db0b1ee7ae88c6a04c9873b2b07d3241bd003207921fd07f023ef130b229bc4a1f1550f6349238d6a55a16d7cfdfa5123948cca736c433963cad47b2a7184da330dec7c7293cf8c72210dcb48cce0411de15e5d2f4c254f379a97201373f72bdb9dda2fcc9411ee68c1a507f0aa202156f35afc8af3ac83b6e1f17529c929251526bcb846f921fc601de3c32479a444563b5250e0234040307ff0891b6eb9d4cedf467d61d980f67c7d389447b97a02a9418cfc28a0bede41e9fea727e3856c61911c361362fbea0c173354b864e59659d725634be154ab1f5d24ea3cf1c0675e94ebe4caacd990f5ce8baeb967984eed7d0e06070788086aa4d34d3b762994dd415cd30c647481889042594c7ca4d43345c4802f2d1062ebbc31b45af7a025db551dc92f1a03b77a1ea590f7f0b4226734d59a46262dbc3dc0bce6314d141e503d10d5bf5ebfd4ef56b22bb90c1373c7d8e0cf115edad1b4adeb39052ac0c8b7fffa28b5b1c509a360d1063050080823ca1cc7248f3fc82bb865721b4cd90b4e07748ab572bdb50b8bde35990a16d47fe5cb81915db09f3a4c85a6218fac9d5fc679ef30291a1961a282a191d645a271f561fee4f5b40f970f11e622aa1a6a2ac0efe6af64a2110e434363c15d8b75435751b5f99d5a71756701db0bcfa883aedefaa4bfa3bc86789f1a4f9d854834218fd27865dfde744c3d8d190e8b2f887fb6d0345166b8bbfe10803a4e879af76805c34b84b0703860cf6ec44e0a5ab994b50056747ac76d43c66cbc3acee8acd6eb1f85f3d79b2906e3106e0a8fd82eca352a1e9b15736a4423a55e7b507c81f8856975d978ff65dceb23605d47782dc2a5ef8b2efaff723db3fb71ba16592ee64327428f79fb157ceba1be02b0d41ad93d10653a9a5815297fa6dce955592c1e06a5b66cd0360f375acf500741d51ae4c11a2bdc2b2ce93ccd5b23f9e649b982b8dbef0ddab54d7252605d2ce599b854a343dd4acb0101c62854bebd552bbf25792f5f8fb8300f89a2468e50424de29d876bbe52e1e3366b14b00a3d163787124883af3195b3a3ffbb9336709c3e2e2f5636eb0b0fb7e2cf9016b9be8c6aa08d4800f3b33fbcda836db34764fb633e504a6a347fc745e8d69bfc683d808b9b8034a1f581bfeace270fe2431ddac0f19dc88c2660964f6964469524a11add88025dca4bcc16028e3aa0c552478d8d7c3cf0decbee4e4da7fd7f68035bcb485fb75610aa50ef29973adad1b12dfdc7402a5c0e8612665d3cd1d01dab516c2ed424f728f9d3131beb431f9ee4734f159f4ba89360b54d1e328a8ca1f5b3ae05ce0a51e2fc638745acdba5d819455fcdf21e682cab40bfa1be20c0f5572de46fc36a1f30061a4811a046fe10966d80cf6f3672589dacb34c1ebda5139b95414fa0dd5806218bc8464efcb65b4a5fd902e2bb7502a82f5dc2d1cbcfcf97694bde1944de7e789feae15e66540b8549bdc6501cf0d9f9e0c0f4f7ba0d9aac6c571eb5bdab55edf24d2e69b4a4c6435ed3c9750516072d491c62fd302fe44d1eff92dcdf542a5d569e76e8bd077b4704e71352b42dbf0509179edba665012b15cb94df656456855ffa77d63035eac0228a7a478819dd2e13b25be3809e7ad783278d5be087aa13986028e34e9a6f9d02f30cfcc459dfb5b3cc304641e0297fa665acc7c6c2d35c7dc5a620c9336d4d32886cb13c260d5a0715e194ac06d9f3d52916debdf7a5b07928646aa49fccec3be0f5f7791823e563bd49156aae997fab8427988696a81ace5e8b5e26ca3dba217b8e5c81c7ca8bb6701ce4d8afd48aaf3cc00fe064989e08a70dbaddab749c388fb30b07a28a994ae2c3cfa775b55163000bbaac3e5a87f36e4c5f6fb31c0c2ac8c1a7699e15e545ecbc36c57d9c7cdf585fca43fbe5a0a62ae02a7ab519a45a81dc4c591aa616a61d24680b7cdf7e67b790381017c04f5e870857186b529e25e1adaba13aab79c8f8403f66c5994f5d667e5944c32b47d2dbb797e485d08c6272b5c3eab17a1152b3905470de29b012f547cedb33f63016b3494d92a2fcc73e263ec15c7b62b6a8a7a19e6bcd7471bd02b71339771155853ea8254f21599b30ac1a0b0ebe432e341b3eafbcb1cbf9966c30a5012b92df9a4268f88411babd1c3e9b156fb4ae0a80d6d9081d627740346ed7e546e9f0d6de17572edf82681c4a3780adc09d1dbc638fe83cb59d33c0cc2b47926c19ac041021d161e48f675d583a1a7e211a4d10b1610add1482255f16c067d8f8bd87f975e91efb2914f2d910554ee16ca74f9a636b6fd25574feb96c84a7d95ee0044487ccde802c77f0633a7cd5d94ffd160da3aa06551f7ec0d79f9b29c23e622558aac207972be168e75301fe409d9418b11c38ce1c059654cc6975cf0547d9a99542f730df525fed2d6fdb3bb43c5107ac99624c860c5d52f5b84743c859127a33d5dac036dfd8ffc051ef011d0ca058a8206d79ff4df26ade2b2ae32e644e3ff0b515bbd39831495251ca3fcd6e22935ef43d7fa4b0162f96f13d3c29195e8b91b44fb5a506d0ba5203bb2d6622a0ca32f6e9e646b80fad3a06bc75180269906f643d985e7ee9010a0545930fd48e75ee00f62f63de16f6055e938cc1df87b439af4c43d3c4993a595fd48021e715b3219eabda6e29c7ce2f96bb1ae29da5123807ad20735f975ab702cf8d1532e52c96f2a05232abaab381bd63dfde48eb8b344cd5516c1f34743f288c01dedc9e13204302522d3d272131762e20434d447f206efeb9ea899c7aea4ced431583578966ebf1a58a3af4c9d9b90fdfbba25996c3a8bbfe97f0c978fa720c3c7dea234dfbea866fcafeb1da14d6248f8c906500f93549da1dd45501d96a57248b2bd53390c4c1401fb7e647cb454ccdc72ed6e3926290a05e4253739c6643c68aa76e869626215c8289e6593afcae3bcbdf2abc1898bf23d0fd505b8e533486f0ea6640b79f2fe0162a35a96fafdaec4849d40b695a036782a406932c2a2c1fe4e495062b1f2fc3c01f0753f6f4fec1c0a829e8205e2b6d1c57dbe86624fef1ad61c8a710b1f792d77096d0a6bfadd2f08a20e4d1db625fe7a9ce953f2fb1143fbb7ae168c28531c6102dc389dcbe8d0c87a4b441dcf339231ac424a459dbd167befa6e62200c99cb05ff0773201ee72cab105c2661488d0c912f66330b10d187c7293c97ce88eb35e64cb1053c6d35cfcae9b500e86f92adbe9a1a291ced99610ec07e255d496a0c3314c96bea9f4e90468a3ca7ea4f054a7118d1e83c133003959af68b815ecd54179bcac53f95ce00ad72556f470e53d4ef5589db56e2194d6d749b86b5dc98f2c15a8eea1f7532556cd5548af9db2055083cd5bc6fd97fe86df069ba99594cb37718f6a564512ec63ddcd51a9a4c328437fe8f8d261c9aa43e2dd241fef8b173a4858ee2110cff77c6ecf20c80a089c52d65d65e41664409a72932c3d5c4ea848fd5f900191c603c99bdff029058ea16d04cfa5663ddc9991bc77eec5f91ed31f49e88afe3e40aa190555717b13b6d364028df4420d85bb0854a551ca3cc9544ca1fb592a17c254492a99804feab75db5fb4f02c5b583e4f50845246877d4266efb2a13de7c308e4a18db3d6aaf78387a20436da288135788467fa572bebb66702073fe5c69016bf3eab1419e83bfe889dd808911d2054284722bfbd275601b131a78d481f2ef7e623cb2be435b58053d8dc53d833539accbfb1e45e8663083ad432f8f24bb66c8d0d15ed153afa2893ccf2a349253d6007b202c0c3b82eea5672317f741da2e89c50c2702ff812d36751388b5138b24e1a4b1d27bc756d39ee942f5e6c47bd38111b2e4ff31c39c3caa7413c1633b16e1931b5c0a73a6c23351a35b532c8d061c4932777fcd537be7845c65df03dd9ad909dced0728de9204b80fa7aace6036839763867d76e4af58c4001f8ff5611a1463eebe84e519a4109635308f6f77a48e56290f903bf9246e9db8812834d7c1f23cbbfd21371d89383ab8173b0cf9f25fd792fa14cdbe474d3286c2450066da87e5f56a0dc7c13daa50515e6ab6369418ad682ea9960e8aa337edd667b318649946657f3f72c1d0bc4726eacb461d0b120fea07f9b9d203520b09fb7a61c535914ef6a74c9632c324fd7576b4c6c2f8f2b25bee978e938b6f5f1c6f6fd4434ffb00d956dcba5c78d08bdfa00d4773fa892692085dbf9f3c5f961e3300650cd67dc9ea237c41315e22a7c57f5230e1c605d74b983b1d3473726f7ae640127741341873df70e4a9db133306aa7c31c4e43f4a61e6346cb2c4ed1d866d72268ed0fb57d6777e710abcaaecd9d37ebeadffceaae03f6ed481c040f8595bd0a1078819458771c0b65e91b4a669000813f271a8988d0818574c7f89dd45d3ab761f89b37c1b1c50c8ce05b51d7e632c6036d42fab11038e0f7306fcc00f08c440b9df60f24988832f9f0cf05b596a1738dca4e989684a22faaf04158bd27dba853252e0b23112c3e690ca75a6a252d1ba7f3ce355459a872549aa216e4a32c3a3bf7f7cfd057aa2bc735355354febbbca84b78ff277fb1445a97d84d3c05392873404adf92851c48ce3298a9d5d3bb5b5010cba298aade2b3ade1c3b8bbc3cc75965a111e0a23041441cd62c2e4ddc2d7029967351cb92c38b7a7eaded8bb0804703553497b2ef5a3a5fa19c4829c6b62ff290af5143165aa2b5abe9b232730f2bac4da1a8be1c495f9090bdb2dfd6d8552a92e8f7078683ee12e9377b85b387240cc5d5d0a539b12ea1951c2fae8da6e40486700ac04af199e7859ff1083586156e3e312785edc52c80e56bbf2c0463a32805b874b3c02296bf101cc6ebff7f1aaa5577d9659bea804edec2e26b6d89f4af68c2351f46aee644ef480f607c4b3db9ca56b124abeaf54c48fdbc424bb3e0e7b37b75540823b53699d460b7e459291423d3f8f8cee6963e3b1900d87bf34bf2dbae064b42a7a6594dea125550e729c632b3af09437cece2aa200d381afa1819f8b72566a59b234f28aa73671aec1a5473dc6c2c959a4323b49c17760125f50d276772f52c9a12a721e0b6a4b2cf6fa11e23c1514bb5cfa8204fc5e3c61aa80ed2ba246f78ae0129fbdf883ebdfe0535adf0abc33ab7700090907712ac10fa664271ea7dd8e4f92d781bc478ba9910f7fd9428cb1deba09d2d714d421ebb52e3f32bab6820e93441fecd244db190504e3ce0172a0e8f752e0816002cd22b7a74c726939c1ddbc7624a83aa39cbb1653536df6ee5bb4ace06b9a6a6d468765ad91aaa452de74118aaa18eb9c7d2803942f96939b0114a3c5e2813b14b7fbf7307c1ee50d2dd0c8477c3003c5f78705dff99888ff1c0ae8a97a4736bc9f756108d5b49456da749a79405ba8c116c590fdb63d2bd53de6bfd40ef84614117e17b0480543effe849ccab6287f35afedc43137744468ef55b71576919227511936fe74742c6809eb102b6f87e54b4a3940c3c887e17c3acb2b1c59a5f435be9744bb85f97b6e6caa62c3b5f607bc515075e874b6fe289ace57df3d6f7f4578c3096d931a56c52326f733d4691d810c7903f56f4a6a1911df6c76fe3262dfae544e718c9aaaa458f30e02adfbe508252bb0fc8545aec2e3c664b13549e796c64f0b7012d44d26ee3263013d41dfb7d78610679e8b7f65a52b04d311cb599416f248965cbc6026df00288894c325f7008cf311903edadd025e9fcdc970564c7389cba8742c464ea6778d3050b3c5dbfc42c46df05413066da64778537b28c37a3b4e3fad4e371c9569bf33088ad8b67e7cb188cd660d4d964a05f4ab1ca6d6df5b06067edf52659c5e04d177f1e934fc306613020c929e468eaa36ec97c91d71a4e45cd7df20e2fbc34e8d265486b82dee31db117adeec07f8921374cd4a16b9eac2c6ed54f839dcdbe6606c491d5ba87c524eb6b222d6ccf801b59acab726b648ae2da5c9eace677ba90cc200f547fc54757c7da2077d5e310a3e0841930cedfeee8bf1a5d04c4ebf7c518f7fab8e397365f11780308c504f9492ac925344ba304d1736f0f24b3bd83c47238c6ec05228b1ce485d20843d09b6e86067c5d39138960bd546bfb3473564d82ea210c4df168422990bbe604231419cfeabaf6a6109c4350098ccd071f0275c6e5b719e66000604590feb3a6f6ffb5321fa72205d0398ecd17a8e8b43acb80210249082bd2346a7a477a1e21bcf1f14afdcbe745ef45d368fb29e6414507ba78eddf66e2f99d17ceb4bbd922d76c5d659df8c933eebb34c44532b4a1d63e7e7cbb632043e43a1edae807159fe7560bc5a0b478af5d435a9245602467f843a11a9297b392b5925961448835345a4cb5da25b362963550d05c1a0212f2beb40a4035de7080720b4362ca0fa8f3faa0d3960f0e21efb416ea8cf5a23f8ef367e8315c49bdab8f884a423bee711ed59f8d4f88da7873320ec079bbd849de5ce0e4ff199b83ca31116b29ab29546278063644dca9369153f60230a846e57ad7cf7ead2b31423a6df724c5eeba90381f9329fe506d0ed7cfe585a5ac7163e73e724a5dffb31a938cda04d3d10ff76e8edfb242007b6a96048efd55c4bff3b9440ac86723c076d8aaf961cbb51d88f7e5b2ae0fa11c21ea623ee36c2412db71a9f25a134220d2c685d429c8eccbd0211a7758174815f5aab50e260897222ce5e52a965567cc6276d8d363da4381e742e8b2aef7e6c145d6be586567ac9e862545d8e4774104cf4671612f7f06baff0207275cc0fe69eaf17cfd9b6ab0c3d9129ba57f6245a5febee4277128edacbe2c0c4579880473bd748b12e4e09d86960c965463a4633cd76cb5d65e29d2bcfae3ee2a19dabdb63cdfa5a24cb14be02a37d0e7ebcb2ba309ef56c61f89d14b5c298b6acfa53484fdd9003fe6a2e9aec93ba14efabe51fa800b70043f142cc1f2a33cf4ff381bfdbec743f5752a1382bd5c96d7ee05ef52a4e1e2c00180edbe6f397857b431655b8f9f134cdfa28372c9f33c393e9c150552b42f5e11b7f52656269e43003b0569da134cbdb03759c53d02e351bc3a3eacb845fc4d466d2f22fd0d5ee157c7b2b878219dc62a4aa99b1abd47de8920fa846446d32136b096d4148668f962f2b3a59af56e71c74daccb7aa5c64178083caad4bf4bb84c2cdebdcdca23ffa373864e1e38cdac517a30b0e7c8923e9ffaa4a43ce2563734f9554bbd4b0553b5749268bac744afcdab02ca11777315cd2d9c8e274625a32b91a2f5c1a73b33c8b84f1b017e63dd2a64f6e45b2cef40defbc7ae3d812df50c94d78ce17e10bfa5b9eb0af2d48b2d262937978ac74e1f720fbd636fd360ba17bc330b2b1cd3809feb05130584e979299364cb6bcf8fc9c576a6c75056dd59460ff52800c89e95aef78b2b03edbe786c4d32e8ee2c735d0a7fe0ca93a1260c334d29020a979666ad5d829f0946db6bf81f8219573c99bc52b0bca5a48874f523fe8ebe8ee9fff080daaac58a7a727c5545d500718c4af7fa7c04f7a8f2cb0c6503ac588fa6a399d736248becad04fc2837d5c9330fbf4815e401be25303ff64603969f4403d4b79ea638ddf68c82ea807f67b63ffaa95196c05bf0ab81339b714b093399991be6088fff59ae1be13bd4693bbff3425be19b62ed15f1dbd3d2473698672121e406ca2795a9f3fcd20761bc09abb3235a4863df4826b1cbb899279ab3add0ab6de57aec411b4c8ef50e349e51db27bdb4775e9beb0d02cfab6b71e31fe2fe61b272ff4c200ae5ac7783fb7e1067c8bae7106db26d67a113ed4f198c812a8f6df26ff1f51cac4be33d327149bde24dd091da2676a5f429da546068328f411fc886cd3070565598773d6b9da87f728fe4e7f596f0294615d4248d46d14de711fcf7ddb6be73c51b029dfb3fc4ec4dbc6051c4cf0ebc1d6c5c731768b038d00684dad38333261a993e5843a02a9279835d34dc6ee02574161d207a314839cf099c28481f7a139e9799d50ac747d47038cef8241648e0398f536d043c0aee01523d78c882de7c19e81cb67059982c58606b13b7a506d4d7575a853342983eb147f75cad6bf1e96b227cb06404b18832d56ab34750e4b1b548a116730ae0fa3b053c867236d06ab65c0189c0a8ec7e8ee7542bc371d21908102e6150728a3f7439e21957434a09994a63399dc34d16d67b9bd72d3d74473f752a73fe087d3a39cf8db438e43efdf2094a2227e2070b6e928bf592f5da222ac0666ac660cf71f9900c56b210cd6aa1072b1526501c235a9c3c359faf7e30a262099afd4dcbbb3e301f1317f55529afb91cc5a6a3ac3c208ea175303ad61498065f380029289cce1335444c671f31f53515504b25f56589293b5df842be012404c5821d46a616467df10bd81b7668f9c5c643e2b4b914e19964179289343ed6a458bef4657a5925a7a4da3b8625a177f184f9d2492f8338bf13784f9886bb0c228fcedd624e7f2e095b920773fb256965f459fc34e3fc3269de5bfb7c2c104a8e170455704dc0ef97e1a7e1c1a1ab0fb2252e7ffd1e0d9a34c9fc0c35168a1bb826d11d6ce68452f56da771b10936baecb53a4ed5e32f399deac7a6fd0308d5c63a4b8f4fe369db0e2a88a48942a71b27dc3df8be016eae826e7a8e2449c90a309e40ce080a5692c88533c8682b37b0ea7194b92fad0af0e31401bbc978d7fe5eca05a070dae91a7bdf523cb465657273fa243b533ac50e92f826e141571fe53183ddf34a25644216158228c125a1994d8a42fd642e0dd03b8de460f417032993c82c49396e3556b87679bb1f57c000d6bf529b85c09a3a2c4fbf2a144c7783243b293d31e4bce1746cf5e514a888969faafa190e7bad0fcd83bfc44957a7c8adfb95d433cefa6477f7857e1a0b2e56794b567b1d32b82a669b1565cfe6787264ee3747299cbd3313adf7a5f05d52a325a08a47977ae1e2b92b3c024fe3916a2884995b4b1d412580e2deba5bd93048b82a0117e2d5ce59a90eb5fee4b33ce6a95ce7cc09ef59ae380fe046c1cab39e3aa88f84b8a42b3501b0930366bc3c9fc191a12a29c72cc1483482c3028cebe621880f953d796fff9507bde449019172ad861dce10ffb316bb673aea7f9d1c49a319f43a731fbc6976fc8c3d82f94e7e628b183e639f75135bcff6314383747054f457158522c9f5fa504e848932aba7fe8d539c2406bb0541a04972c6223756bfe53be730b24e2feb84b9f2068323d21adab1de2ccd328ef6ff79d638ad2800d5df885594992bc3bb61c61179dbbf57b543097c02c81a3c3de614144dfebbe32dce3a483297cbb986208321c8795a2e2fb0b60b4d644bc0f6220e31c9e6e3ad8a94be5a6f9c0d1e3d7bb832ff1e76713092921e17ca738251332103d0154540c0d88287e261e513d0ef6cf9142c41e7867b551a2120ba4ea01af677866b273ac0448b726fc4e4fcd1736c81e91285dc02c7a37e3a58cd4f755f7f7935a9dcb447d836cf26ef9f662fecd5b9fe43cd28abaa30c61866a7b633b78bfcaf8ef721c5d9c8b79dc14bffebae030fd9bcf3a620a12ce42ca6aad55347baab05316198f9b58866783f48b8c917157b97015bd7a06bb042178ca658ee723795d3055de20a5592a6798735be96b034a0db56d7b5d5dc958b528b85d10bdd0e11af3ff2c7cb42b4a81f5f5f097dd1aa7d1bdc92bca204d41335509aa4a2a4ded9a6118249e3f53cf855c590e3c2393bd113abde33375c31ba03b66cf9eaf28d8328eecc3f11997cb2df93aa1d15d893b91db78a747a08a6ed509bc3d9013f1593457e3139aa5e16df59a5352c53480f76e5c116842ec429404b9953dd5f49698267621735d1cc4e38cf0be9be1bf5f580fa298e079df5e63501ae6abccc15b6249d2788f24af7155c757366683612f1c6f2676a4d7a297ef62671cf30561283367918c7179adcecfe831e15a049e24b89f098e2041b88376c4575fda1b8f76a79fbb3d4b96c3bdd9907bb9a2fa457b6afcdcbcd1292ea2b23170db0f8550b6e7a8ca44f5fd432a571c76fbcb7c1c33bf6de5e45b8bcb3336432f9e5e62b5366a23975abf376bccc05be8f7e24386e92828c4b969d4f0821f95626ec5b5b092921c2d3c953cc24dc43c618cd00e91c2c096dfbc00c6da724771c7f0dec20de1073128502f3b9db117c32526093efe74f6c9a8d2831cc1e730016e1ec670c0df9cbc69e20f86603b121fce6909b658a0ac0e078530c262268664ff75de94503096098447597a2e6c0ee99130145ba3df280d5eefb1788c44d8b05426eb5f855e85bb189e6befea41c6f33fbe59181e63566acf0e321d48390384a409f3a111841b8af7465b397df01b2c5a2c31afa3e0af5d7c1c3d8709ce5455f34074dbc888d63528eb2f4177950ebfa9af1b3e99757827eac75dcf86d3e0f154a746f218c9df8f170038d799a7015ee7f9862eebfc0fd51fd97a6de98828c4e403eb1326013c0d220987f3d56f2cc4c56c67d810783ccae4b302b9bbb536f716ecfebaf3006b6b21094ec1ed7b1b768826590f5c55f03167098e93982bc4652e31a00f542710eac89c078a41796d9f7f7610127b18f55401d6d1f80ceb5611f3cb52adb3ea03b43ee327e561b7261c5c96866523ee6f3456f28bac6bf1d8b36d065ea9b251ad5ad3127f247945b1666c682efc024bb36dd6db00dc65ebd4c4d985f9b073b152ebe24f55695d3ec91a9a639b0336e85aca4f2f919ed623bd15a5e618843deba5b61790bbf1d3d4e85638471d39d63b6e9aef7dd7ca3c41fbb2d69d71d048b1246960df80f20eb8ca3e3ee27bb2d283c0412962b047da75d1310d7a37af9518458443a9f651ce5b210379e48cda748e315c6c779f9b3b39ec36ff38f30bed4ced329fa46f97cf83b093a6d85cdb60e96a3bd32f87fa9cbef4f05eea312515e5404e513c6bf6bae57dee0f5b182ee92f7c58e39a2b58c846f7306df704645d8681cf5e51c2ab1ca515d2848426de8de4d4b234dcf63589c4eca69ee2e6101f1a47f3d9cfb1523c1549ee3edcdf9e2b1d157113dccc6626757674e1f95e4757c87652890cbae15dbf815c62b4d05eedfd8b80407584a2a6178cc4a3fdb02eb42ebcb13bb25f5b2c43ca2af1f07c068979aec4289796f54c1cbd43a51de22fc2384e5ea37e2c11d1286894f2be1914926ab2ed781b69f65db31e966a07273c4881f77d8db8ca268a83ef4a87d55f506962e97ef922d67fb77541a72ba06c24d46fbc582bb582fdcdb9039eb30823cc06e7457b4fc1b8f4d6b38a35de990b68109b15f0d69956accd163225b9d75638cbce2037d7581749b97fa394a847d49ff9e37f3576c7dab3037ac1d67629bd504295dd70bcd6bdf8c1c53d13edf9bd0d973629f8240d68d9f1221536df5c9a16523eda2ddb5dbd9cd3ee88d545b87a2e88ae3bf16c8c9e60d3bc09e5b2f46ed51b15c02b616eedeb44660ef5e862e1a8607e638a597889358b9daba5e73de52320b245a146462819632c2fb644f605fe607db5c7c830ec84cf39cc5323301546383a91d60e73cf392d902e769f3197d6f1dff965df001bfa12305a605cf9f7b28fe8a36e12d736647df152049f353dd17e7673b53e27570a020f994c71d756347a03520d5af21792f5c25142a6672c1adc1a8d7af87ca3898c1a839229837bbfd0addf11690bf3773c2f8440a2605bd0aec1167fc1851a89c5d4abe3b54922cff3d326917f67c5d0db8490c50bf724c699749a390514cedf19c5a86d90f180cfd243fb7b4b54daf7dd18ee71ba62b391fa49dc9124c3b6f9b44e4f24622af6940dc1053938c0c91969cd629350cab0c1103e0311829a86647d3bbbacaaa2493e5c913f410bb90853176206b1d2ddf8af9f084b43d4ea58f61b7e51bb47e02b9346ddd65dd0af3285244f4a35228343bf2f97bb2794096fd95a66cb72d0c93db7e5a4a78a2765c3a17aba5596d4ebf0a8bfd20f04b578df60c6300f4a4e4c1d212fdb1b8203d5262fe9e6e280895b8f560263e5facb15f22f90ff9b4cdd123683a06d2c281b6048e6a243d635148e50beee2e738ba0ce85569ac3ca90a99dc9b1de6e848dc4481296b8ba7523f05c68d979391aa16ecc972a87b2a91dafb9f503d33a0c5d8d0948951ada2dc06af7c6116cd61b93054fc7181915ed060511c66edd603ba058926383583639b70f642d982124c7e88cf806b5a66c9aaa5340a45d7e51bd3e822be8142748c9d0955d7bcc9be3816094ba38d3e2f1e14310b8dd73bf8ce62417bc9983f5195c524a03031c6f784c25bc22de2a991c20569a8de96f604b3db0e9067b9dac9353546b057e93698ab3c40af4f6ffd0f78b15943b9469594c0013099d85e66a30dfa03cfcb330dfc76c8da9b0ae467192c2c2bbe6c926e062c88279598eec733b73802bd1009f2c24d658e1951bd424807ce4a1956ad3097cb941fe8af46b44fb8690dd338c4d1abdb56a6f1cd10ecb7a57fbde88cfa57ac8f717afb40398cc5381c18a317b5b28684deb72b198755296e4ea92784e6ff0f80e994ca8f15a153040b118b009b3ca20da135d91fb525a8cc98552ad6e616441df057ece07e83d474db4211d0e6f75c4652cd11766cc31fc8d42667f5430550527bc818695ff86acc246f5be5b8651bbe466637df1fd44f721bc0d1525e944267aeb8fd2f40b90ef05b2c434a97a74df490189be445279a68bd97306109beb617ff6f75cebd330a66300b39f8e9b45424e1d7ace0135b21111ff5939fafcd903f9aba25aa9ab050c6586977631d6230014eec4ee770e67ce2c42006218a288b6c195346e05d209ca065179117def7ebf3b458994eedefd245081148226c6a630eb5eae90ecedbe599770a80cff166780173fcfd1005dad71b9632741b2229d84b55e047bd9470bf034f6714cb6a67791c4a9af8e1151ea0c13400df8ca71d075b7f9f7ae8083e925fc3502abbf2eef9b9ab64de00fcdcda94dc658195b4b0fbd402f13cbc8f2ad07577268216c2b168ebc577e5a3c74397074a416a514c59e55238497c13220242a2195e1259e6397808cffd86ddbb41898fed4941ad4fa2c08a8c433861bbab83c49c6ec59c80820cc0084ee3bf49dcdd73fb0955a6df7dffa0e11c76eaba6645ab024e78e6ed11b603c58f63251ae8f7b98ce77d0bf8d0294d3489d392a62986124c219ad0751791d61254320d514514fe531e9d248caf11d8e8d3e26a1655c5d5b14897dddd35d514fc59a243f02603f59dada7cdc6b3a7209364ac0a745f2785b40318c33224743141140a01e206b2aa144273670bc156a81f8ed29623445de13f470412c5c47ef72bf3940a591ee4b79afd55c9a95d82d6a9a1161d46e3c8dc0c2a9d55d56e5f394f888e20212ebab1ddf4a6e5c0d7616762145d21968da6b4e847cfb7417b2363be2ced9190cf558c7056a6dd16ee8dc54e6b2ae5e29d0e8f9912e30532c7b5d2f51b758b8ea05e467633d805ce518963250d93a9c8227e9053149817b887fa759908ee0ed9b700316fda02572a3b8a74735849442c45a8e12f37467f4fd5d419557a72a5d2c08ebded4cf599533c612649bf10f79ed00a6bd322aa1572d29294dd86b635f09783227b8b09d56867292514ede58694721bbbf14d3d10a44fb63549210f4a1118896cbd72327477cc983265895bfd3996e0b8f8708dc1a17492bfa10221695b16bcc71967f3cdb83a0866b1324b4132c384c5266147a07e615449f954b020a3a37214bc109feaf3e375a875d026dee011f23601211e5c0a30f6c2976c81c828eb7b087f9c5dbadd25f6bfe5e8a6b66518faf31c2ff7d42a6825a4a4934e432fd535cc39a9d48074dc481b38008dd8e89a8e35c43379245d0b038329ee4cb38bb6373aac49409a12c3ca00f28c0543a22f74b47205ac5caebe5cdaab4777d7fb0854426f83a2516d6295537819f522bdc9725c1a44ed568884808593e1da1762a4e902c180c408c0c18215d532b189541e01f51f14a8c5490e92a1518ca156179fffd3d1f92ff0a4fe3f82b637a2774b675b0e5236c51d8603a480666799fdcac578e3ad3625957ed37251b57171bba4a32f0761479eef597d202c1bd847f83659b30ee767dac871ca94da5716f8fa850bf49317505d572291c8d873fa2f2beb1e12e4119825891db4d8541cee9ffc32140324246f010db766b72057712916cc3850045f98e7c665d9b58dc21425e1a103db61140b18f4328ee67c34bb6e2bfa846bfb1fc7771ec302296f50e07d63a9b529729a54a80836a372de7ba49b44e46866a73849a1c14f1a3cd351898fab8e8f72ba8b068938968d564f69e6d950c4ddbce6e86d892d2e714cd0d63e7bb9398750f29e48ce6f5f94da46824a3b6f9a9e493de5191db0c0e92344034f756537b668dee75c4795af573429aa31931b02c4b220f4c36f337dc8a1a93c294b305e54ecd7d331d92a50faf61825660a3af67fbef49aecb7b8132b4587a82315fb63bff2356f6d56ad8ea0e79a32838f27b00a6ea153c0940e7fcbd4e79afa1fcf20fdf8c08d360f262edfbd8a3be77d031f6e215f05401e12555b473bdb30e198e735d1f3c66adde158ae3dbe9f0abfed05125222bb92188dbc2db213d844176b7975e23a6b4c50dcc7a605fc07aed406d6f9664027380290a7930a4b7482cc81e170e2ad44386733469b548aca4f6e8becd075b2e95c0f0a3e73aaeb7ecb8786077c5673815bc0c6f6c5a5513f6edbdb0d76dc8ac73ad9e8ff933a312814e303bc936bce4405f644fc4549ea731781a767500d3902e0c7d14161f5ffd0d742cc1aa651f3b9569152b3c9ac0af13f928073cf4ec711f50ed13a78ce037bd7a2a0b9c3974e7d381aff8d0b5d5ebaf94049592f04518ce366b06fb0671d4bdb00362b40e3f67e546330cb2030957cd3bd5a6058cef46e28c46c99eed1c27459d3a517b0c6056d72903d296a4a15659ec3b81625035d3184514414828911ad85fa8797bbfd3058601afad9598f27eea5d92c6b5b9d849f0fedae817a05b89e58fbf62a6abc71ca259dd7b026bcbbaaee28a16b3815efe90ace323c5b8143fbdbf42d2bd9b1cf145e796f1ff1557665e7d92d7c6dd5e33be727d13aae684c8f8f125cbf04909c8b15249b0667f39e48ed2eb119733a6f1922a55f98c877ca877d3e4a1f5630b9641daf8748e1bcac253fcf1e3e697cdd134cb2e638be0afe3e65a8ebfa9633952c3b5bf981a922610181519e8db0a39c9368d761603a6f97dae6d26bdbe6087b01118f614289d59743df6352743f3224ed283293d6f32efdd11ac89a83ad7a3de36f27b217fb7f6f31a2637703f34ef32fef1c7a84db1c75a293941deb8fde1b8a72a0096f6e01f99479bdfe7535b4eb4bb239ab1da88a3a039f8bb86bcbbb15cd36f24c378c0635c46d2d11743f1245d00d20c4cfcf3782b5f622232fd5b402201cb57420511ef46d1195d22cc12364cfc12acffd1413fd9cbde922bf2fdd25e66b7a20ca543958a8cd95ac42f3a5fe47806e59ea2b02861623bc77c1d6f065aa076f9b9c3e9e0f6907155c1579eb07e04ec657198fb873950840f71ac935bdf241fb27303fc6707677c9237c4b6f49dace027c404243da47991cabb80b09195f15f6c9bb37141d7760f150d93947f4c5420164311f4fdf4d0734ea4d9abec9160d54924f5db663514996725575d5db1907ce0c1b6534287a3e091a03d2faf7231a117191a18df5ab12791437e1744ec746bcbc57847236854c70a8f9f2beb0d336bd724d6c4fd246a099f6b162cf6f8eae9af538282ebf241e439c14519d93ab607c9052135c1bd0ec8acccb27e840fb4c3e069e851f23210731abaab29af61b573fe9102bc09ae277737ee68dd6d8148c13cf8af2f3488a725a7fbb994a796c045c2c12d3e3e431f20fa30c8f1c9a7653d14d51fe4e4bdeffaef9a3e596a2aa291909e64f33067973e995c4a38862482e68c2fd2843cf24824b62c89d4cf29b07b24f56410bb87aee3907abd2e14bd04dc303bac963e51a35cbbd0e49505434092ba306f1a1ad14ffc6f519aab4b99f8a3d31fc7cb4b827af3e3c030e0b0e681f988fb2668a4c5ae9ee2864c6683cae4dfe35f0c63c3c6522ba2c0de21447be72120732dcec7abf3a8b5efdf81ab5bddc768ca0b8869c8ed799ab4e4b86df2d4a26781c208638dbce5a94288a553e24ed8e710e80812bb903fcb70400781413329d59898526b52dc4f152ed6c57493048d00a8a8f56f351acae6f39813b8c574d05f6b62068d75c8263d7af1cdd4b86a68d283960d2666d70d416d5e2b05a106c2eecce5630edebbf01d047c562db82c0c90400d11775cafdeafe36da2cf2a33d1dba1f787932d3f6e0e12b6cc4bb7af4b4df3aef3d3539518cb087ef3dcfcf229e22a7e867eff2003e36733ceb6eaf3f75a5589f1673956215db7f3d4c905b62bce2c4ae2f5e393dfda99130bfef42a0297eb863e010a65bad93bcfc6b042c0eee03aabeb25bf6daf4d75ee1ef75819b9a1644505516c1546ca1b9a6b1770d3c0d1e9c41ecb898182cba8dce479607d9ba9920ac544347c0abb46a02b3ae842c9df500ff7e11ef8b324f8fd25f077257c6457556540222bb897968d31cbe0768b5de9a048ebbb1a90c94fcffef7e1a7ff68b642ce8fb65c94d056a8c296f085257cbbbb7cfb0be292102fa06f34e4c2a8e03a0434672071476a7b02df419b60b645460cc2520474df5561fc3cf12de8c253145bc4963ae4857e794ff47eca4363afa8314c97d26e80f489d0a5574886d16cea93f209706bb369348a17df387134fd9a9fbfb6583eb6f3ce38b41f8a13dc5eb52134da1e51fecb16abb138d2940c61d835f1ede907a0a6a9358ac588b2ceacd1f6bc4ff776247976d93f957670c7cccd7934377677ad24835d3b719e040738a01a7f3f2cade88de18a3056271110678e2449887d185322ac99bd8c9a0bd108b509fbabe1979888771cc81bfd9399067a5040cba31d1e4abe7e629eb561a5829f63a28627cc63db1f1cf9f66100e44858321fb0d7a0b2899708a912ef726fb4ba92704dbd6c2d72fd3a6a9ff60649335b5102513baa80f19e05fdb3e31e9444fa1532f44b63dd855e6f712424d66e817b60cb0a437f491dd9d106a8549a9237fb53b6c59ceba3eacef90c6d5801f97659f210c56fa582ca5fa18b05ab6251acb875f435ffd8c64d727445445cd6e96d4cf473cb8daa4656bac538e6564502500f2f7bc1088cf11605e8982c8ba57e304809f7b838f9d0e119abd5517671be9324dedb01c0ce6fbb86859a7fde21b2b35e9b1c8ae540f8f92b776bff4446a58f9855643847f7a18ba4aca506a410159c1bc413a7cfdef4fbf61f1882868b5dee6c1b276d5e560a2c0631f17fa6458abf82c5b00426582e4808e853674040c443a614859be7a8658f8ce186a4bde050ccd9d5f9edd2e7ae5d562eae6d57008605296b048c0e1b991276006aa8a3855c559a8cedbb234a9fffe23d4d4b5a3d04d2d58f0460c9d34768c7eb8f1e64f2143b6e8f2891e2fe483680025576d2ff557e528f02d2bd88ac6f2ec6d497b18503ce265b93be82c58177907a753007cfbe3cdecc7b4d8122ed993e8c29f2bf54d2dd6d84461a767ff6bb38e1b31d91126f5852d9f479765b8b7920f14171f1c71fd5c8ce72f83136912317d73fd0720d2278b3874847e951fb1f12a76893bba420f431aa2b99d6f39ab6c2f3242c933b37cc3b1081d7f7eccfbd03f6d64317441417d4572f3641352fe1dbd5b76b9329607fccbea7dffbc86325b0356231539129608923bd631b1bd963b02ec4ee6007a86896cf3ab77180c4a56ea21f46a6611de53845d95a43421ad12f7fe35c11b2feaf2f713f9ddc0c2ae38da02f233036774f514ddc72c63f30236b7abde8ef46903d623b01b3e3b00a0a3ab569bfd003981be326676cb12bd76e737dd58e3f0e7e125ac69ecca55b953578dc076b7fc4663a4848e06b8ad15874c5ebf8ab30a8d54f29397022f17f4ac1c956468066965f67db389929e7ee75044d5c828819ad64e0f11fbc39f47a0fef3355e3aa19c2012bac80a64c39790fcb030fd50634ae7bc0218dcef93fcc0027ae4129b19b72c644ec2be2db158ad4aa83bd950a969ba3f15378be2c65ae6c7b980bd39d8f41426da3c3fdcf7f2c174c70d615a75a3f96572ed32af5f5f7caad9cf8e01f32213ea00910bbdb5732428d34dc33ed8ea3c462849b732fab0168a8ab9a23ab887373174714cd5d0749ae59e97e5650d17cc8e6b1c4c292fb0b3c7c91c0b63fae93d0f722c17f0a5042e345a2cb37b4ccad0a1dfc44a641b1ddb41c66accc014525e2cdb44a56209629b1b387a9a81aebcc042ee12babb615416c0e1779755bc836b4599a1f382b29ef4c8262ffcc601440aa6653d3e7da2c11a1f9e0801b61c3c63ee84f250202890e1f4036679aa227a6d51746796691978229f59d74f7f01a619121cbe12d54519976a5b0df5c42c060f0359d0bd94547b5d1a5145e8ccf4251e491c60337585bf8eb8353e20f55e823ce4c395f0d07a715af8b364334b957c4e718afe5d7c0f6208767ca54102d00d19d26baf6a24a397cc42908828ada3e40f7a5823333b1a66a145ea57bb6f7006cdfa6966e2c04de9269373cd2c5f743420949ec49bc07936c374e4d93da56e16a61f51a47d01e0f761a4ddee470513b91c1eddff7ca44ad890be005be6d48c5d1fa6c7f6fe49a5e2d9a176f14e242fa2104dfc4047f1e69e3b2155f3c0fa2a79a75350393492ac0cdd7956810df466e839b4be98ebce9280708323704f34551125e34ea8e437f69151ce67d9446108a10c93bc827eb43e6f7ca0f730d41a1043fb1e042acf67aab7da3f0b9d3c30a58535d346af9d79ed6916766053823828975e547d818919e999e6f90c8f448fb7460ae8febb5a36f6247f994e9100f2e59cd823ffbc27392548489529343bd0f2583f7912365bc5df0cd0323366dcbb14c0f7407e4691d1f98ec14bac5e22791f85572e865861b0a23b72e217de396b8c5f10fa4f1b01a2b92f2274a5bf45eba0142092b22c1fa0aa8e8f9ad43c24beb734b85829bb31c0fc53d981a6da6a7db33a376c34fed8a5300513c93dc052f262bad3e922ff8fe584de879322e6faad1aa03c7a9bc35de27e4821c9ecf500417d3eb2d219cafd4e69c79ec5e4f640ebe384739ca91ec09a885709cc05ff320763f07b11cc93666f30bd884cfe2077fe89430c1c2e2946bdbae112b492d87ee9f65bd7a868151944684a60b21ac6bb03d9526cb6eb2cf03dcecda519a3c84f9338d5f7217be9c41c6a52f96e12d93442f6981222ac49468c53ddf1e31a9cdc2aa3f3a56baf85dc35f952197d0ab8b4468e1f1188d43ffe3900b70074d820f889d6f679efd2a91e991cf02fd84405e999848a184d2e47a964888d50c23872ca2b22c8ee428dd3d2f1d806ddd6d20210c3531905d749e7018070a48a9d78e47fc6ed34048e2afdfe057228003c50fa086468206cd73fc72ba70667ca5151a50059a187584a3d844cb1dc3a9eccbc3b2ed2c4de2e6f5918fd1202389e3fd1d89a25fb5f187c621511a1d92c371d8234479fd34448561ee26048dac3f0bdb8bdd1abf04f53a8cace1a8c7d0733c01bb4d806c415738f9464963e96ec21d2587ab5a7a849ef95d61ea86df48d92e67f85de4880fc531c6e90ee333f732e001528c2f54c3bf77a061e27676b74a73ef8891ba5c5dc6912cb696a90bf9f198c3fc64109cb7876c4764b8d99cef6b46165f8fe636d3b1aa7c1c64df5cda2757143172053f28fd08d4637e7d926018e65bc130fed28327354907be7b56f87e44ade9f359fb138d12f278411b4d43d75548d447afa593b32e9b7e4be651d7f170622736c2f7d876c866b6795786283b2ca1bcdffb5e65353a9ea8c43e7bb07206e3ab79025090ac6cf1ff9334896f8dae3598d471c258a595b723ccb5fec54209c6bc07c01f1a9a00cd0d6e978121331cdc1df4ac888cb5247610596ab94eb0d8b90934d54d355fde35af896c0e1b479e8886c004b0ece2de675c820467ac49d69bbdccfb356ebeb970a6b72cd6efeb0ab8c9deafa26ed734e355beba035e0aca3e77f6fe899eb7805fd4f8b9a597ea359af288659d3bd2bc420bdb42b646e0a33044d87fbfed393bbad0568fe20fcaecfe03632ce212c1893461de46f64abac1570699453625f843a47e4f02e1f0f64db79e7b3230c4f35237dbe1fd849536895cd6d5a2cb615e8f657d4ca6cae1ba2f812fff3d4144b0e4ca9bb96976c35d87156e9876b7daac73cf6bcaf057057e1cc2d85d467fe2910d40e9a9519f80c859e4110dfa9268b2b2a45916993b6ee2835a01bca32f49b700bfe3af0f0389fc3fa9fd7e937022043ad6976b90966da3c80df8022f5eb4a445a481657e2fda8b4013ec08d5cb7af1bdb3d6332d35ccf760b08cc4afbe3054f08125534a54e9481f79b1b761ce5c2c6de486e2670a6652ff5cbd321260e381e3bf25204343731ca3f2d4838494492c844b301959926b7fc1461e8336441801c52b46dd0cddeb6109f905a9265f1c200edeea52928e2077e15c2f63fcd29fe34b9a864c3688b45b8e67313d8451e5c5d481e6096ca55966de087a631461f696b835168739e331fe0c471f0d287c8b028519ec37f1b716551275a583ba016697125f5166357e76f7aaa723302273d6818ed40d9bc580574044284c20ef3f1044df6367027119e4642077b95b556b0ec3ce2b4e25df9258661fa28825df4fb880dd86eab870d18f7d851dc1dffbd5ac4d007609e3db9277274ac2e09835e53bd56122a5abb0630706f35685ec7736c536853f452966d7e6fc1034cf625895b0518f37b1b481a4766ab5abcdef7992150470ed1fe9957f7a2634b37ed2ae2794429b08a81062f4a69553e3aa7e84537d63eaa29505fcb231edf952d2e9bfa4b2260b67c68895ef0bb8f95a5ca52bf41306cedebd4c0719e9d00b2f5d68fc0417b1605c2bdabb61134197508f4c49bd894b5dccce0e4b4bbb15116df6780fe386151c605b615240072b6b7e000c5afcb2e81d0ce485d4841f18e7b8dc6537a0d3022902f4dce2b4bd4d05566e16983d35990fb806cb070861c5b291391242d5f3e42c35b6a560b6639afc30c2958e30aeb9d0ea255eb58d0d3becc5c979e869adc5a27fdcea2663de71c5c8597570fcd04cab77d84f2f27e205301940020558381339a0db558081604ce0a84c42546c549f5fd4edbd13b1adaa57449cab55aac591ffbd09fb38e7ccb5e4ea19e0de6e81966f975585e3e6fd796bb8e02337554a554f9121472b619aca7b04586eed682de2ede0c698382fba039ac69f1e9a99e9707c6c5e14cf3e89d8ad8ebff0d6141b4228b8397a2aae0fb4949662d1f61e32e253fc22fa3b6dd5b47c750ec00a2706f4e0e0d4cc15563afcd6896f98ea07a053058630be43336831fea8663880cdc34086c6c10e906ae3456fbf69ca4a4682a55e135ef90eeec158858e47a92d9730165ce12b1481699ccbf9cf677db5de0a447a47401fa1962f7617150586de7316cffec7815ca05bc88338d019d89fb9a7b2ee4f80132f83af97f639e35cc80391f9ac3a1a0c0b54598384c0cf578ab543447c39bf71849d7c8fd028b512a6a79cafe5b71968f2e49e4fc7474a1ce034abe57752c962f89442a6a237e0f78f7d05e56cf5e137765f1e90661334f1503183c299bbfddf349dce7bc004b6b68296c7f8ae87e3ef83680b66e38ad4fd5c94ea341b11e8a3311099fe496d2e7a4ffab6cf697bd7d4aa1472d7acce898260c8ec72653ac7d3f25657aaadff4d76d5aebf6315e614d752483c866692200d0f8c5241e2aef3eb74bee73c2cc7398cff946771fa5273b4c19a14a701a7cb07b6badf55e80ddad9e9a7d4874fe7886d273ffe7f61cd3e24f555bb0b79585701b6ba221431e487fb4b44bd25584292e46391766ec42ed5bec109e8a9bca0e6f7005673c62e89ded9d1c5de6280bab5885a733d92ad7a4d897437434a2557a2a093959fa0c90e700ade876b47345df456255be6baee7b11e7591f2543772124f2da88e3e4e8bf5756d229c0910c27790320edd5980c5b658521c38e66989a75be64341f3648c9f1674b7ecae15418b2c03656a2aec4e4878dfbcb1cd05d675102f1ce6334ad18c3a2bee806e03f95a6e1fbea56bed65340acae0dc69d5e8f4cbfef5ee755954e759fb84668414383d9e45f5832b7d11edd30b9293e1765eed4ac4e38ff7149d702c743ca458c07ee4a87ad301b1a5b973e5bb1c202bf1aa508c561787c5372af5acae6ea2ede5d09b916d01e8c088a3198d659054674685968c9762259f44c842a6458b9b75654a51bb01b1582a883484cfbb829667f7ac0f8c7c63637d234fb7295296805f10a7685f9339ae7ebc84f765bb5e3dc729188e6ce852e4c02699f3b4718feefcd891944d7353aefe824385d48e88e2b9b1ee00a43c9bfce132338017b66d09fb2808ac05fbd67faaceb69c1758d22fe56e62f0415a9f8c9d61b6afcbaafeb3d6673792b69abfbaa554f2f868609b297f47eb143256edc7a41bb28b36be90cf0e7beb1949ca527de051fa0a464efc949617be44b19f764f290762191d49a203d9034d730aac0ac65cb3abb308c53b5276b0e09f8f79c81890489cb37a54c7b78bd0182ba283fab88255f76c47333f3ed7a792851bebb470fa3c72cf28b52459fc7418358b42c3e4cf7a2b4ac07236c2232ee7fc7025ba306713b4c2dd393acef7df8613ee4a6a3bfaae21e00d7ab42f46e53b625e4a2ab7801a5a59897e4aeb65fc4404b29185125c4306b3484d08afa5519f394b63acd2421e5e7def1646f1cd03dc8dd4ee0ff4272a69156d64cd0b91b3b142b60f8bbc0d25b692d668098e2299de63792d064a3c96c9f23fb98a0a35ce8a7056ade7a8106b28524e08a4bd96007439643965a6805c34e63711812cc98c688b1ca2fef1932a577b9513a122532ff1f98ff0089e238da18fa68320a1b241f6d5e44dfd06575bfed8ac7c5c12fcbd5b0f18e50465688c571855033dfed0bc5aeac0fc95164264d8f4d6cf67ecf6feb08c892ee95e8eec0ba25004d02acd4ba2c86a7c623962680720a76091075b8ddd1656a95f85770dcb8e0b0b74280b172485a01a457a08237adcdf51c15f3f7c5bd6377a2f35f3135c914c1ce40dadaf9542cb6abc15e82129258c120fbf0b5260857a15c251bab00c81b69a8ef122f26023b627554003240316bd70257a72d7626c97aba18eb9a2fa81f8a5a14a1ffa94beb2322802624abaf099411b7c6c7dcf98b95ee167c34e3184af999dc5ec9424445531aa0ff7645ea37e656a948995822ece69d139e83929cbe17150936637d3b681c08c288567c8976e104e98b25f6f6db8395876b056b149600a57c2eaff2380a9ae08fc950ec6792deb1512c2d91ce1c58233452e0ccf3732130d138d0df511d90217213120899a8b0f5e1cdf6a505fefcb88d4247ccf9b5c64cb3f3f734dc3627ae501092cf5bc5dd04fc32e6ce1e184afddf4d4d93dfc06f43b6d67485d0cb4412e6dcc28338f1ecf3e5fc6cf86e10aef57a896c84df0f91228921d1d35fb11aac5d0f3200ad5bcf207f4495c70338eb5ed6bcccefc836a28588d57ac092e66dacc473116473dedf2c17d5e4e9fa1b1f4809755d49d4f14ad9b2400b8fd31a0bc3d5a1870f7ff1e6b6207b082a0249736306bfc4c08d3f9e3e14bf0d909df9298325c30716969fb821d9688ceac27f87edb4b2d32313435fda77ad2311902b7664d03272dcaeb30e71bc0b98e71c16a55e566907f41b936c44047dcc0a611576c1548a15a84401561495ff5de39a07509cfb9819715596afec0d7d7b5602113ca7ac5f968a8614773443b241f0b8b0cf3722c92335f747fd665b1fccb574fb17945a8315042ca3d2f1005724572654614e43edab56e9d893de11285b62c2d707c927e1148fd3476be16c5b496febea92055a7f48bc2e9970cea90ac6728cb102107438b3f78856d943dbd9b992168fe8fd00a7df6630f0ea2c12cec7490c2fb31afc116450b8f40db69f050b402b1b4032907a8387d0e6be636ab99e32ba7eb0511a60f0541507952175dd9a724f1b91678d738f928af340d7bccda51d4c134a21f9d313deb97b2c861a3f88aca6d86c59ffe965dfb6cc51d4efb5d54be004f4ea1a3044e8f510f9a8c043c14b2f4e7816e6fdb37093717225795044f24311b8fe220724f02a2c79a06aa480c7e98fd5b80fef080240e702b761d944ad4739644bf9da524222ee0208c432cc92f5ef05bb633a17758620707836027d8fda1c239b01f1221d2b3909abbf523efeab986ae2b290c036c012a5e2520212875c5d07a9463591e936e6acda3d541f33d830f9ba76c44c098a4a975d8a55b0cdfa28fcd58d9ea4395bdace2f1f96b073a2fc2ce2b6ba2f72e4aa66fb879fcc917d9ba2e83aaa63f34175b7abf5a746a283f9354699b44b62559189d343b4cc18b982e104b70031d81d6a5b43f51a54ec126fbf8b7a66a555cfc4a11a52c5b32a379573e4576ae373e041c3460e65e8ce580c8e473b669a3e0f9fbc1448ff11c34d3bb42397dee3797d37e5a07cb03ce3070adcf1cd8c53e704106eeeb848035a06ada06520c49251628a89ed014f5b3ae350b087f420fb0cf00b0d558e3c5370852bf837abf8011d6f17938dd3cf493117fe7014e8ba9733ee43ad62a868dbc414f4f76a000a80b274cb9339673d88783dea02905131dff0cf526e66e905fa4a6066aebac1a9e68072ff527d823e97c787b2295fed26a5d351360c2515c8c950000b0e93a70c6652506866c0b4fcd669db88652cd2dafb8b44035befc89c4b99062bcc7d7833b1fe9fbdd6a707f8936f464efec51532f54c5b80ab4d041ea8d5d4e26a15831134b0b9aee0d25ae97c72a5747c577eacb2c17fa57b6c7b915832f27bab358563c1d858a65ec0f32f844feb7e622ab3cffee5709f3d97c7a4ab65698e240292d0a48c8aa3371aeee0f7dca780cebcfdaa91a5f10576a130d2da766cbb17613c3404258b6c82348d64c4fe773f398a7832a068557622ff2de272b041de1c88b1be51c0ad98b592ec97d516763823f0ba3d1551af6cff407d6e57068e86a4e75d30e63c1717c186622f22d6ab442c10b1c6da57d803efdbbb454abea03cfdbe26fc940c8dbad127c057ab6666be1dee2cf011ca56ba4ca2916a708c4f7c4070ee65e07778a18199aad1d8a87b68718bc081be3482abf6fa46aa602699c7cfe3279a81a1b0a0b192b640ba29df78ea2b697c039ee403f177d8984327da9ff0b38c3321fda8a61cda8a60a2ee20304c4eaa4be6b31c9bbbf5839a356a1dc0979477a7233eb857fe1994ec144b50a1df2209305d85c6673dbd65eea085725137d213e5472b31027216d91c3fab983364c144cef46d724237442f98adf04075580c55210033873c86079c208fb27cea6e0ac89d3780dd48f7cb570ca050bf47a0672aadd1585daa0170244a202cf478ed1b1e49e181cb70d629e9a1cf677d050b1d063a0059374b4a94805d1549c7c5ab780a38c9eceba1096c2101a7df333d71077ba250ef24224215d0e9b24e256b31fabd70ebaac65557869dd52e0913bb409ed80002abc2d748d3d4fd9d957e474f56b2b72503b33bbd31e70cc940e841be373b72953d5884b3666196053371984a1f0727af6adbe087d7bae9af5c8cae5fc8b5cee1973875f57afe84bc778101599d5e91f0bec98c6ba05f9a5d2c9a4319715593940edb83cd0a455d293020bcda3d71409dc0c416e602393f7cbae26805b2664912bfe101296c26dd6451ec41419db01a9baac53b01062734b67e087036df02c581c5abb9fa906da45a8bb0d51e427acf7c46b666b73f9a7c8196c6ba145d68c4b403309192b7ae08de71eec971753c0539b885d562eb3b95c9409c4ebcc21c95d20a443d658ec1145a4af090ca91a59ad2adbb15b378f529b7c3c7943a859fd3f655e4c56a0aa2c9009c9a82189fdd92cf269baf6bb504b76829ff6b8256a057e198e4f402018cf67702493597054df210ae8245d9f5241d33d6b948122837690406d42cd88b29fa5369c2e003d4b87827232d71c8cca80d2a6e1e2bfe098a93e4865c7fb4772497043c79c9e3d47367e15d1227950a66d07638f7e82f6f7fdea19a8370dd463f7858ffc36f7422287ba9f7ab84edb3c8adda346b80c0adfb3022911755bb530ed2f35d0051f89e29a0dce9333e36824dd1c148fa8d49e6ed3262645787a80cc50ab3759ebc7f9a766cb0d7f7968e7177230655e9149fd178ced4c0259f248ba9114e699bcb902fb6f1a24e10948bfd5adf31f477909deeb45185f1c25263dc90cb9e9bdd715c9d88d05f4a9ab5b69db9c2879949fbaef687f162f47e311565fe9b7c2d742701eb805c685406d3462ea7a6a0402c402b79c5f2a66f632031c5c83725acbb9cfbb14908e541e2eeb0359eb4fb35b842ee0615b6c2d9964ee5f14eec17c43239b396fa4bd51f784c167e462129f8563e5374c18db34266a79df7f89abcb41798fe02d790c047b8e30fd872b83bbbda1368f96126b37a8da6321143c69831e865afcd17e65b8387aabe95c6736125fa0748d7e42b3625625ebba3a58f8a206140958135a36ebf115a07346da875e621a5494b4e5f6101cca362dc78c9d2f39cdf4bbc453666a94d724728451f25a5c5878deffbd0d7341558f92054f4b4f54a96badc30695f95b5bea31ca09b3e8dad94e8ea5f92412243996f98fd0aa8e865041d61b37cfae4dbcd286a548b35b0efd37deabac7a13d94cd888674231dd0f02c2c9c57e78e26786220f5d8afc1fb0a9014ccb069d4b105d4c7c71282272cfaef108281da7772b7c468045f3c719ea621a57aaa28668cd5fe7a291ea601804cab103ff3fbac4f006ce8edd0af85ff89b10c4133cea08da33faca22ce7b83bd5365642ab97710ae73afd518f0bd7e422d6a2403790f053b78cd2eca2f94b44fbb2679c9efa7e6afa81efefe0347de31b09e7d604098407fd1b3915df0a023c5d7a8d6d83372da7a53f43bfc7e4279aeeb9648f1b9d433b054e87e9d5c0698a5b7260b22ec314c8c406964f16baecab1630dc3c264de4acce133787c7e5f182d8f4f771422d81e3fd301e9cfb8b7e99c9afca2ec23be31ad1038ee0ea23ef896349bd42682c5d86e83bf66e627cb0ca24b5a038334a96097a80196105c0be2d786c1439f09f4d13d312f91454e80cd50a3e927d6da056f47079b269ffd747598e9e1025f8d71d1fd38be950f51ba33426a2a4f88b240232a9ef1d1fb7a0d757023affd119e8f872c160ff0d50d304e4d67f78fd3feac50a8e4395473b2fc95ecc20cd21b8a55aa9b0a7945d55c0023143bfc895a1b17009cd5667c8affd2257b29de620e5472235cb446814847071e6b72e392b9a6d7064e28a670d00745e2aac63a8d9e2734be271fde570f81ba2abb143b1d55448f273dcda6efe26f7a34a1fe2ab7ece93b740d64f5b5606de97f28d50128b132ac61c7b80a2a3be2ce4c1e0efdf054ae7b745c4977b2412389e6b83fc7c7149fa1159f28d8bb95f6e07afdd7c9223eda9da5c5fc8ff2b20209074e0796fdfdceb13d1ff2614a53e75cec069678e65bb580cefa44fbe67415406a21122d7d7850be683645356fca86d0f516f9f8a485e8ea43575ca8dfddd7b4326caa271372ed2453c6855cb28dc27e24df104340f152f99511707b06f51ffc6c0415dc4d60d3244531dc521a1004619f3eba38242fa769e7dd6bdfbe1cc3a2debd8770dab650241e1bdf92e990a53b3fea75f38954def3ab89cc5f05f5f66ff258079254ce5b6b26c9fd4587b1a85daa65bec1b6b00bd81c5d2a00dd3c57a55f4c4b3c6fd9691b5f901198f5e64e4c0bfe617a1192a45c70b3368df22b365fc0fdd7ec0d4cf58223196eb462aa841a44be5a430e35db860894a61dddfce966a10126a346ea907671bece6b6bf26385f1acb424e9341a8e09a0b24ce695f6ad00b32ce6ae9866795df92fcb28a061bc08bc7378e86a6bb803be7ecd94bc354fb623de64bda4a4ba263ffaaa57a2559ca9dc4a87c1aa6b84a3cc265c620221d4a98a7d21eaf0738510cd86b0f177219eea748d2501854f2e1af7660dae65c81df71f1b6c4150e1f31434d67871ecd2d79380b3460577a8ffb2ca32c2c9ee3c7d403dc876a70e6e915410d1e0e0c125476b4cd863553869bf888bc7e8d19902345f5c2518bf79a14f2910fa6033e487e77445c450ff9e7683510e50f6bbd594de405f572592207d8750546dfa85d68d58db095b5eb7791ea05eb31475a74a4fb55da0c1751d104f641834e5d15dbe280cae56e76cb3926f9484478d71fd0baef81b8b64e727a5cd90475bc01aaeb52e1ba5b8aab707492cf3ac6efc9962b89f4299a596c42c4f5c346b18c78352964f793bb364c98fb203ced79ae0df9eea2163d7af27e6837310e725d9f6e58bec9c484d9d62e82e7d798a3d7f87ac0b21cd5e866a29be974b9e8957a537251c556000fc0c1d2fa97f8620588f93c05d8f68b8c8cb1b23e1e889914294a7eb25b39b38d753d63eaab716e27a933336d80e45c4d8f9675fef83235e5db8aaf431dba5beec1d76f958ecb7a50f997403f4e41bf4d04efc541d7cdc1d28389dc4b32081b64a9922e6d9963760dc358a5a736298e755f6785b07aab86c5d0f6ea2e64267e7ba6dc1b231589115cf9ef8f71b75d0fae8e798475faf9c5c11ab2e324a12aa3deb424cd7b4c255542fe9d3a4a940ed280e2f000ebfba7f395293c1056023699759d41f630b645b99ebb4a6c0e9e1390f77a4f708fe7a8b332c5485cffbacfd1aed543f75e70aa9701104706ca430ca26a2de514e069aab2c69c04f7cfc815719cebdc455b77b02b3201cb262a1042718686c54e24e580abd01bcf9a318ef446e429ce90d83ea54ddc6d43d49bb8e1ce566a72c6ff1fdb0761251e2befe00d13c48c6b8efcc62b4603bc240f530c82fc89d8d3e2d0220fdc76791874a988b0525312b4e6683fd4607e29649da84b84a9ccdc15d3035d7943f3b8899fbf875d7d4e6ccd7785ef035e866e3cd7a458d01a2914e288cee183e1965d34706da3c5b12bba6d1539f0e180a70c4035cb027e7b8e3baf4f3a8583dfe0a1053800cb647c15421fbd005549599716c54807911569ef3cb347f8d62d60e57a53c878c02fddcff558830975ee5bb8f426fe75db804cc33c81ccf0fa71abf25daae9f9f495eca9a0b5cb5514d63911c2a7f8f43d9e9a72be1d4220be29272444bc2f5bf566ed7c72bbc275e6d9e819d2ad8f175b4b1be0b0f8c77173f0c2c2582e7e45cf6e273acebc0c83e645e0fcc9c6bbf66b18d4e377b9710e9a314e05acce06ef913f8cb7fe7bf8ac67d813442dcf52166d9ed3d9be55e4968881f3a04962f60db734c2d8dc64c0d3781697767aeeb39c757554dff2dfec70191d11b22ac2a222d62a461b70a3adef8821a8d9960f29ed4c0b47d17b3f8110a1d77b21b952796387dea12d88d9e2c85945be31ec0035ffea1f0acdbb4fa81984e39134672beb00f5349b301208f9aa8ae104f1b6c4de6741953f99267fd12495235fd41f36e50818dd4cd30a720665c9f2f85ee6c3d090ccd2ef78c6cbe9eddc7d1d22eca1c4ecaf6eef3b35f4e7c18a0d255a455114b1043e5f3e7c41936a12f83f966b10331a45fa89faf087f6f83cc454291876c6febb370b325996b540335eae118c43b700e53c3e7c6edaccf5b64741c48485ccc06868b565f0ff8ff0d7583760cb9d9169426cf037da05d88aa35087d33c5a5dc52328466eb68246aa04ce41c0c62608c6357665771fa0ba8d511051ed71a22e8dc0b27a904c9b62fc83008784dacad8cfc42ed35731a361de311fea6382dd8545c80f3d9f8298c248b5b9434356bc9419a9cc7036ad6f36376f275e62c807650e4fb5f75d07388aebd0276af3b06204529d0b977f28aaf553a943c43a560f5ad4304047ec2f0c60990128651610900b47557bac6db072adb703710cbcfdb50843578a6de6d4f428fda7de0c9115ac4a174bbff2e8f6a747b6337fbc2695be087313ff682e677b3cfd970eb1f6e26eb16421f21b960957f5e25e2f8af631f929391b259e09bc40c9611f43154271342234bd9413640e4033cb7829613f41e9ff4d5095afbfac481f2162baf005412d68a4ffba0947b8606dda7a343a89f12cc21d56a6121d03e2f679bb66878412ce1307ddc71bb806c8f58c9dca95dbb03aac70638924ea543791e609f54346ba8598d055d9763bf2f7123c13e7f07deaafb9756976a98564756f70ac1ea27525b1478e53e32e28c2572a418cf9791a4b0bd7625a310ef12ae901c828496dd58ab03ddfacb3082192ba124dc98c62e6925cf27eef3ff0c3fc996a06d51ea1234610a0878c83b596811457e9e376c9d510addd4293e674bf6d8102748f69338325c1202608e01ba64bf27d700dadd8a92821f5d9d895c9fef82d74dadddd61a47f26c10decb03412f25c2d6f68b56e731eec7558d3c8503d9c7c509d4d977b42d20cc622e6ecd067dbe489dbc7bc3c1cc729be0c73828be2fa0da009bb48b1c6e46130562d2cb084b11689b1da3868eeeb9ad8e632ea09cfa5d0190289b0e6a3e16bb01127da2987b3efe09c5e6d9a17ea5072ffeb69baa13dfb1b3849acbcc077f3dd4c4f4cc0d9b1495c4305ca78652b4670db0d57c450d91e3dbea9a64b168c85eaacc0e5d73541ce6bbe1d2904878979c3586be3b8d3337ee790bd9b18433288595c37e855ec3c92667ea23023ca0456732c636405f97e49c7468d990431c498fc5ea88b5d6d5ddca2071b881053c788060c6a20e2e82be2c916e214b6e4490a831416c7147be14d7599697d2bff7995b7221163c5a5591efbd3c0956d544055f3d30bff8ebbfd2340866980b0e2eb7adcabeb53437d4c8d1d103cc7017348ad8e87b30c54b5a14e2c01dca27b9e66b6f31ea5d4037241717da54c5e0f13e9297d0b02354799d13e33f22f2a84d63c82a152c0f3c43237f7b667793086e26d9ce6219d125be2273f638f6eb8e7219c8ac9c2ba6835f219afba7bae057ce4e790d51b083f1044b92f8308ea2056615ba3a63220564056d9cef22d1c0ed124e25f269fd5d82d3c71a5c75600e0dac9b51cd047b08f7e7e13335fe398edd033231581a2d70c84d032265996b9d6c42650e9a6f8e31afb4d35eb41cfa2f4e971e7b50eee1dbdcae52acfec95a8a5ff6dc4cee8ceef877adbadb46ae62ad18fc0c3d020547e9e4c543d36beca0b7b7978705e4d0df64b3a643eb225fc99ad3f612ed9da0eddfe0ea31678886cad9be41d418355d08594302584e19e0a4f149b0196e59233f6be915e954c9749258abfe5b0dd4620817be2736b5b9909bab31e45f48d1cea59f8a46892f132c2ccbd36f08e7d9500de5252f708a251ac90a4b9f6e73fe14b0426196c486f82d8652239bfa09c0f9709ed0cac4a5dd23355612490e5aac066f1488146b2a10408c67203e14934435f2ba618473adc720d33bd3616b3d8ab3d788ccb14519ae1adf1c5a98af8a4d2d9a59a638bf3f8a64cb68edd77215dbd5c8fb58fd675988782f35c2dfd73b4ca7265e405c12cbb26f3df7e4c62ed9bb03c1af001cfe32d35a718ac3d42a9c52c0fab69623eb2394e853559d0b47a28b96ff90443258125a9b8648bdbdc8cea70895e9af20ffa2b68438b21b7f22b552b524ab138386212f5fd489aa920d649cfaf85685d2d182b1ad0c075d4b527121b7e8a904f6d6fe7a2fd13cef3ef3a5e0341d30547fb81066f994c089d869d17efe42c00be565848ebf5350791e779e7b7168e8ca46d577a2fd4b3e969b26a982bd7f996b73301e7315405749647bb1bb0bb53144df54a825d3986152ca56c46f6bed421526509cbe500ecff243d7005c420131ff90364815788477482002452b19c2407d5ee75c5b5359ee0ae46d93e0b67510375eeddb2b9463ded2f74a30140fb3f4ec42fdcca074d2b887edc7e37c1fb7799a9c90fdb83d51f2a03c43003779dfbcbfb08bef00b9c61f17fed3006a93d4daed2bb31b6fb4d7d1059611a61aedb46447864249999ff07d6b1bbcebec28e2084c5a936ca5311bae72c9333702e5716c06e57187a64f2a84b2f8e455d0755c804d1087e9def002634bd424e39acf595198cdb42ee7c099fe612da71e413734b5f5ef8effa149854eeab73889ab1886e564e5064dc70e308c039f8df9333a9499bf1fe134a9f3f971580f3b73c1b66875f9f3192d04cf12ccb2cedd543db636d95ba59c30684d4ce2ccf72b29fd99e3b74a6c8526be8c77b3a937bd608be8f64da5ec2c4a1ef65b5ee7253e31d4359a6de760577d7ff41973defd7df9076bc73ee02db011e368267d1d46368543a254f4c0421a0ef17dd08efbe0480a8fed16037a65e166714ad9a757b4030435ccbc79ce1308b44fe8db8de58b2e82f7ee90d2b5873ae34b61fbbc41cb5876772a37116469ff6cc4c6b86e3587686a78fc3bdeb0859f4b7c78ed65361b29d818c565650b51fe439ec5d04b1fe333d02c7ebb007b9b813ad36c1f45a3ef2bbc275650a92ed671848c6e3156f4ffa6a0b7eace7eed9b234031a5a1cefddc41ed1dccf544ed11f24854049b688278c3a48f53b4eea20e93248cf08bc6c23d0b64b0eac6c3e82d867fa244381927b096e70d9c85b487175755856a8df734de67664388ff395dfe56cf0399aac537245c6444059552c6e95197164f3a3ef7a23e75eb825c0ec293788e5369312688ea6eb7ff37d0245defa7e456a79e5fea42011a52ef4b0a2fe581f1f6ac047beadb40754d056e455fcbc64ce26d1ce917aa5828aad79ff4301158cd58309ed42077f81f104f4366cd8a1d4ecffac16d134425f2cf9f3e4b5600c1c4f139d6fc3119a0d6a6751f50c11bf97d70ea2a5b796f5b0ed730e25a36d10f708b4b8c905f39514fa5f72f21dd97b21d88fe902c2dbb22c7e204a0db8d15e5387d79a255aa30125a3beb4c1cc91b639ef6b4034e60345e462a575ff8aada3d4e5fc129e3f481d3852e664efcbcf7d43380cc548db43b53eeabc25fcd1f4b5e0791d21ae517e4838006ff9fc66cb5a47dec009d43259b1f0bd9de431ca62e64c7b16f37fc2f4f94fde2273a9152ce1a03ac142a2b01420375ac131c88241a8e391f5198d5e91a001962dcf1eaab6728974cc1e467c7e925a55997cadc3d712f557d3b3ac7acf32bf855686a26eaa7db98c31ec9ab54d8180c7908ceb87284d0ac08bb2084aa84b0262dbe09420cd7098d7f7b5a3371c30ffc4fc0b6b3f916c2caf8727c614be5bc9e856ebe76f33f61848654168ebc1d3cf7846fb8f271ee2f05d6cfcd11f968e33bf2c7d00e2790c3258b196cccd8881c5e9ea44187db804668db0f378f5d90eac0b3804c9abb17e33356d3ad4da5556753178867e9dcb621832f9c8355c035ae6b1b9d0d1c10fbfa8d58469f2334b638fdd080f41e67288885096fa18672d627dcf9ab2627b5da1908f1e9cb756b3804dfce20381b26e8baa035cd166a460872379e1c34d876876b2360325b539f4c26040793b07f72679da6cbe875e0fa2a459083da1bb193ea63ae28af16d50a5c2d52f5fc2a65c62bf671637a39004c0a8298c627db3e940695248a3ff58db0663487dd6ce4428cbbe2f85f86d69b2f3c6c69ce8fba7db64b20c44a22c83125700cddfaa9f66c4fd61240096bd215dc76260985104403b097165bfb4fa9e9a4ee1ce0586f98b50c517f6f0ebdbeb87be0d6c6934e7100c47a735b63634e5bd732311b0f2c3b8d8896840068bb2c4ca8aa15a0cd953e8d5efcb9cc73ebf00b662f5052a78627f5b2cccf6fa783d59ea132e6a4c34623c443402e0b3099ecf3f126110f62d99c69ddf2989c59e914f1f9234565193926d6b31cd815edaa142350d1495d6a2ab71259c3daf09dd634793e0c4fd3c80326d812f022f42eff05100e4d4a3b27a775e71e94cc851e8c4d2a6b245bba501bccc35877a654251d56e93c1972fe0218afb0cabbe37f578b165cc22772b4da47bd503da5f8e279f8760955091a7172e44fb58c55d7a0bd67be6da198a2da9739963b0d9ce715f052793aa3466552dc7567cbb67deb47c08e2483a86083293ed39a4bf40e61a6b1f247087961092743e9eba495ba689d8b48bdb542f5f0e6f950ff0d7b54a711a889ee0a1dd34f0deec1c4d6086adb31149fd1f1a8876647d629e7e15ca5cc2d0fc3d685056d51a0e8d7a6931a19b9884799f24c14463b045de9ec738f6006a6a0476bb2babf5249b53c51f804ff0669f951a26b38f2cb12f9a37a034cf344422f6930bd8d800b67fa7b64e51d563c3f1208db1306e17e214c13921f375ecba204c7e84641df16e37134cce8b3b48c172dc65622d10a130cd4e6e80616be71d36e4298a2e771463c7e715fd372eb17669e1d1b385cac18d2ba1b8f0283bc0c52953bbcaefd5e08654cdc8da3e01090e49199b265fdf256c9b72ef53fbe40f22cf82f6c9562123f3e03d3bab8b6a4c175a5df4e5b195116bb4159f664b0e4f23491f0033f4eb84ddffe3cd11fa4da185bff3ebd308ee60ed557958ac12ee9104346cc3493d8a4719bd59bcbae80c82581d924fada499f149ee6c33eb347c3378a9a2510a7ce454caeb7abc051ccb7645767f6b2398e8d9d54c925fcc81264eb0e3e97bbc900dc375e1df64b3b649b33c5581feab6aa6b5622d8d2a188f8ea8561f9cb75762c34681dd7d556ebbafd98b4ea59bc589129852cd77c9ced0f1b08664fe3097b6e8c010ea1e37f26b9507a4bd36cfaf2e1bc88e3d903016b8d0d4cb8eee0e7d76d0c46f865075fd621dfefafe560173e98ee1ed1e57caa6a3ee790a763c9541e8059039af23433bcef07a498040da81b9d8c1d1f13bdbe25b6cfda14625877e401975e5d8621f77dc856edad0fabe6ff6846907d0137f37269049cc7c3a8f742598d3ef2fe161c3742635010b71ae34565c9d23e69ad37bacbec612ace72890c2dde70547138289f729801405519d7ef5ed3196e7e09d100d91d91be3a4f21da2f535fc71db210c838c0c21e535981c9e3528bbed47b22ced136b3d5c95e0a410cb74830763a3016c53e5f7d289a9f57e2dc5797639710d6168b68eb9e9b4b6e8cb953e6f5c32372f620dcc40f4d052b9ae768ddfd018ee483faceba1da44fc992b35828d22218d261d96807d5d56c7d89e18d5dcc7e9f82be4bd18446896ef0c30f41d445bb5b2e7cd1ad539ff7dda2d13934fe23dcdce3fc6b9e99a083c5d85eca19918230264d63cdd4d9d6a4a892db4a0aa337df395a5445808639486de296034abd469a6c991849191aee701992f06730f4b21ec96f429d64de5d9e7b21c483297b78f403b5150aee734ee340cd35477518313443db4df3116eb4cdfbf98c4e2fec6c14524972a58a036e4acd637ceb2c75b361bcc844db2253503806b8f69e30d973af957ced95ec90c599845f5a3789760abcc91d969f6d3b65d49068bce43503f6caa257e42db03e2cdf947fd669f6e2451f0ded33ae037d81489827f08c15797f484cace83b9c371332cee7db9b07fc4fece1f50cb4d45cda60702491e72846ec5f47e87acf88925f9052060864d0140088ca5df3d2a71b195d1b19c1536a83a7c6c5e3e8a33f4de5816169708847ab56958d6171e6c2770a20fbacc54e54af32b89fb7ab40090301e27d7aadfa01309992fe13374c12c7937c67d5a72311c2e5c1b7bab8dcc2cece4adcc83b7f4b6fa0cde6e1466b0d54d96a186d593313b52e2d9156935c9ea76df5d725b5b4f1e09f0f22c19569a7ef0819c3edac131ebb47a974e8a5617ed7405ae0096c4adf0a76e1ab75508c7dedc799e09ed84143df2ddee3c9fbeffcc62f0cacc93fb1b05b82324af8d80135074f82552ac4e536626f709b627a8bdbc4426d9935d7c9132d4e65f3e6d824e86f4d9e449fe6a75b7f10f1198ea83c51f5da20be3a0ea82dc8870cfa33cce39e4e80f45d95f4ab42228f724be879164d6aa39d51108b1308dcb0892b5c8a58c0e05504845011ff1bf6583bb639605c29052f343d663971f8d6732c6edfb929d7ba1256a2e00234154109a506bf71bff4b2271dcec6d03ad4a13c8d28e4fc318f6cc23b8544bbe3680a0a853ca43e560d5ec35d9c7ee828b37a5120006e131d435abdc3bfc969a4130b580d666b42e036a0ea16dd6c88959cb55b202047f7bef98ab9adcb268e2252c106f2e05c7d2fb592b96a1db9ccfd77ac1f4f3fce91d70783b4040d0b0a185d8bd66f818c2318196cc5fc57e03ce16db8da10b18c331104e837fe940b96a46891b465ba3f44a8e808ef8f70aab01fdc8c1f953a1c7e3967429a24b8d22c8f4650abf041a65ced614d582f1553bb84308c30e31cd961c238cb22ab0f6d1f292a117167f4a0ff8a0ca66b4df44a63d10263ab6dce99af81bf7b5fd590103ada097ec2afc10f44ee37d75fc552ea52a5ca1e1f620fbb0d7df00366abc021f8323ac5e3b84b703057ee18acf4875a5c3b347d0f75a491ba14a525af8900b7552b5a25602ba97a601167a84dc4ed1b24ec9585349bb4ca64fddc227e4b022ca03309b5e82ddd03e9f3d6a127fd4516be9c147f6d154df6b1a530f7c563cb0bc39b0f8e9c8253b845d48aa28b38ecddd1c31471f12914d96a1bbe8ebf05f0b424ab41db1b04299eaa98ec281f4464674fcd9beb1ffe08ad248e966df1f46e66624425542020e5d6a4c3ddd3a225a91d2ab13fa12da7920e5f5336473721f37743581904a647a91159fc93b5c551f3976ed6e823ec7e3e6cb9fc15379596f73dac1c25cb9914f1b6f071778ae8ea05cc9916c31c1ec8dc5f8122e7f277f808b80fc00a9e0a811231f526c53e99f327e3367a9fa8de0fc1416fc1b88c4adc1bbe6e360e979b4c03455036095c046c1b2a64a850fb722c4ca531c9036c346b31506b235b609c0bf05be571f0f09a2b98e98785818b689d53e611ac9a1d03bb58a252e3003f2e2e1210ed3cff6ab5db99d3517f7bc68b07610e593b1e4d870b30969c1f36c5e49a6bfbacc3d2ea693305c886b66f01329474837e0dc47ed1620ca0934f37688b8421253cb5cc09c295215ad045706025a076b4a58b520a6c8d48aa362a0410dc5c340c22f0ff8d253535708aef5df5fdedf642f6db5cc840731cc9e1a943c7d48c712fd2a399a2e216b698b9a8b64dabf4932c2ccf61347d42816f086f50e86462ee0f438dc3392f9b1ccd6041f856b725c943822fe13bdf36fbb7419d6de85f90e9dda758f555c8062b7d79cdd75c6e7d3a1af681b14e7a93cfb34ca23622139c9986d749c8e4ff80f995952f6248da5f11945634f66ad7a6d83077a75d2408e90675d3b8cf077f76d44109d224fb05d871d8da9a4046b7b540db93fd2b7147a593dc139cd14ecd80ae49da55ca3cc2e86467b0eb248329fbe0f980f36e65665a0b2dc82540bce4b42bb8dacfbbf0bf39b6fbc6293760906785ec9f7f3b69b9543e923487d759ad036f5454293723f370448b7988e9d700eab7a63c2055fbb95473c605dfbf802831b8c3ccc1cb2ea3bcfb5b6c2cc75ee4683146aacb0896488c6781650a4be70b3d397feed983820c84bd073ae5b77538aea8e3e0cc717629a09edaf0c9e4d0b9b8a5bf4dd6f3fb07714ba85f1263a272e0ecf82acf139d5371a910ca7398b7f935e1a942ec2ed3fa52a3067fa88cd70eeb71d1e3fd0dc16ab650e185eeb6cd2e738470ced6a71ad90777841b6c75a31efd2998edbb01a9238d05229e7076c81da09107e185261f74246a400cf90aa0c182ef4f29291664500343794c15bf0c0be26bdcfd8b52e8a186f19c77689a7195254135749b51e924cb98e3523e64c4c6ba03961c6d396dbe1c30b8897ae4a34f3a183a30f64ded96ec084a24e0d2c7ce3956870920fb1a67430fa6d92e3ba2b4663770ac393611b94047714733dc1cd484cec3a5bcd7060883a2a73dceefa9b93f499ba85f0e3d956ee3b0ae882d4ce6327ac6fc7753d1c438b2478e0b26dffb8d4ec907c0432865f0c0d04b5c4aee181d444216d20f8647fdb9f2dda12bf3c2c5c124b8c7446c37a0887364d1f0ec4275daa6e0113103595073970eb8ad5228b3632a1f7f66185afdf662e41191d259f42a574246df6ba8fba7273632dcd3ea80c54cdbc72f463a41ccd8ee712158b5177f20bad1f1cbe1441c8247e2f90411775f882afb007a3ab0398b4000df438a695358eb04e9a522aec0ac59fac8112c76702eee253aa530ef283bbc58bbbd886e56fac033a21a3f50b0e199f4a539c41986bd62901db162d2d1fda5ef5dbf3122b6ed8d10dcbb2a0e20dcc37141e42c665171ddc247623f1c59ad8ff0ea44cf314fabc7fb25e65295c4282f5c43392d9b94d88f502254d3c8701b0af96406d7d9b3e562c09f1992666ed22d341e3d69bdaf4230c63d0e83f68b4dc9049c1e51f2209d6ff6207f8f72a3460b344f6a259d8c8ae9131992026585978f36f1f624b42bc19e7a566053e7d5d7299dcd346462c21ea36825d0c8452ece7da388092d92fc6ef98faf5d2b6e6df0cb1f6c3d48be88e0cf0e1aeb4d0d80764e4f20bcd1079e8fe89b76c983c87b547a07cfe035c022e377b05d8b867ba1c32146607cda6c1051097bb40f1ccf70190a2c6ce3e4eb8a85ae184d6d0b6dd2dfb522ce04cecd160135e91c1354e9cb67f5d9b78f7178fe751cab05496ed7df7ac5e0b0a61bb7ea15502449c561f2ad3f2fa138fd6fb4a4ca9e1d5be294be1d633e0f0e292ff6a14f90e5ee6996f322b37ade9731bdb06ee0808949544bbc321ad59704346233b778dcb2571c0fb968c4700b6bf70b66c22a87061c806eb7f1e6df072f0a61174629f38f773158bb59bb5f03dd7d64cde426446a051a64411db1033e18c19cd3a31859ef10512da899deaafb40bdda8b97b6a29b4ba3f70f9bf724b2fb7f9c77b832b6741d4286859c8c4dbd5e252592f5852dad691e0145767042630be76eb27f638903d580430d75f3f973df1311c59047ff0f5b95935a6fb609aabc017c4aa78a7954c110c582a0ad35236f1f4463a9a32f5f476ae75371a81d44efecfc993c299574887c3f9e30d9050d4e366cbef3a18564669462e5e24be35fb2232b173f6e9e3dc78461ff52a1cbfd6cf009fe4e2fd79859f20376753b25efd9ce2342006cf3c4b5bf29013116e19e482a769a5c31039e3eaa2d67a5f0a144af52ef279511c56339a298461db6175f39c6de11c901573c3f87fc66fb9f7e4f6cfe710f3d629e6b77ab2ae7f2679a43be3c3eab1eef58100c60483a28f4008544fbbf0fcfb60a57d0d817a73f5a5acc365e12a08c7dbc26013c68534088d575e9778d851b95ef4a30851d0e1c8c845731fb50a9cb0132dd72ce8223899b801c327b8d59ca099b6507f80b523ebe56f6cd0dfae24054d34755fa9ec0acd7328bbd37ccad9617c800e22e0d6d47397be395afe70eb0ea33024cc0fd7b5f6abc47aa85c5a97bead5128fad17307c3e599b5c5aac77d2e2aef21ec5e4af3358719fc6d6e4b8c2e3cf2d0182b6dd76b6c7a7d98f4c429be059d1030d5f4fe91bb3df503c32f677ba1b4665a1b590e3b77f28b88073fb563d82964db00fc25a5b07523c03c180f87d91a2e105a513f35bc847086fd40f12bb108b3b0bc85ff221cfc4bb9b15028be4064f7ca4c198ed78f4cbe3912c90e58a4c9413d1e767a4497267ea0aad28b2562247494e88260d4458e09e3d227c334dcc793075f9c14fd2d230d05253957a0e89b7717d1f1439aaf56342c44a34233d44f2640646c080ad24a85f13a804faaffce2ad98186393e70f5bd52d6cc8e5dd32c35687c7380a8842220688a4b4c3d4238f539ffec7ae09be82fe6e554f5667b6004513b0d0cbf83b41bb0dc94af6b7cfe1162f3dfa24f5145710559fecb5a469f96bb226d918b71e5b8530c44c394a57535a99af231d1ae67ee74176efaec6302244d70059dc74b88f3984898b17d47b5b629540301ec381d18b7e364b6c80c34b68ebf44491dac4e4c4691447d0fe7f8ef024f0b202c9166c82462c8a4ace7a6c3f7996b5b64aa6eee26f91fc9a73d068f4470bc581976776d386fa04b554da2f30f48913e5550eafa46b07c14cd7bfe7fbcaaf09d7badae2a59fbaf764cbedc41bc53175817a6f72f8b0c3b649f600bf56108bc0e9925b893bd6610a518a2b493b2c209f92e4ee777931f2e4933a75e1e8380f4a6ad59ff1f0624e04dd052a6d6bb4153d81e91a1f198cc2dd8c95ef16ad5e2bdcc3048787ad898a500b9376a31b5eff5e328aa1f9ecede3ea6c6785956b749e7dcf5fa4bfcf99cfe7b791110658ea74e032b4db362481ea2c16b1e64b7b48012afca3d00bc8501937a28eeeb31bb374aaec094250e0588ce1110f0ea072538c8b59a548eb4b0933761a91d0873c555342a2081cf9239635d43593291431f24aac1abe56187485376ebfb6c5600b6b63e6fda6445a5f8663660dcfc26aeabd52016b79a8892954c664cd857e610353e60dd2736a72cf47deba7780c389beddca8936a46e3eafaa1a1f52aac56f402eb00135123b1bcd28acd89e1d00fa453d0b12de2119b2c11cb7590d2cb0b62960b5ff1fbc6cf069f8bd9537bddb81c8e2cd73cf68e27f27c21d35c5e9d03c3d78a8f5439605757a4f6ff397a0a9e5a1a8ce8a3962b62e96550dd888d3928307039475f958e3674074a4205fb73702a56bb4dcfec05390197530736419770e67cc92063aa0a9d9595477da282efa7238b34cd6e13fb0c2c24ddcd8ec52f3272c5631ad21715c9b43cfe7d9ccea29e1a71ef5cd00ce9e9b4c33eaac896fcb53229e18cb267c40cc80b50ab536b6946974f3d2a36040701cdc5ce7fe892235d75fec9addea63ac3a13eefde31863b31cf82f6593ca3ab97af50ddf59535a952a5bc19bb1d83f3c1570d50dbe73da88cb81a9fb470c7f7755c925cb91692d8f0b21fe5c2c75adf9ff28c6999a048d70f126293d8530bd9ae3632b9be40ea3b5a4423217cb5ff9fadaf633c73c67a8af387b378525bf732dd7549c12ab685b00f522d62e42f4b599ade5cc2255ef5f60d34c95c05d9e6c32c17f92edf581f8872213291e634330f9c5860610ccce3124a670e60c0b02500a47018ca2adf6608f4937bf5fbb3be93bc67a23b4a261bd12f1f4a71a260c9e5ea4493e98cd69028830600f97cad4065b493cc9d5419acc2ff9563cce899bc4114d39191681722b63eb73cac6a2694a6011de2587cd2b5ddd52e2855bab9986aa78c8584a7b726cb5891d05a57ffe1b3c348d845c5af04101c8273aa93eb1c2c84883815040b53f69605e3a2a38c81a87b593d978bc02adc03a23c2320eb102c10298ecf37975fe8ef26cc7c8b969563686e813d5602c642476b918d901b11dfb3e87318e379b0d4e3526a1e17b4a8675f89d4433366e1350b4338136653608718991754808b9615f3e1f65b59dbcf21b03264b3468827fa39b4e76b390e951ae7b48adf6135797f9ec1393fe6347eabfd57c60cb8430dbfa30745a3caf0c1c5945723585bbe47bfccc63000a6aa3300a3724751bf6c2e144ff26721fdbc25db21742571a86c85351eb4cb6671176f57edce5a9bd7b0470b825400aebb65c5103727c9c2cdc3d8ab4160c2d6ed7f6126ceb15f9c069c8565eeb94be9a333166b753597b8b5037fa0e095de0eaad82b337e83f683ba0b304253e48297c3aa6bd7bf9c47e77bdda051c2c04dc5ca5126f0ca0b958fd481c6f688d335ecb27ab12dffa92b2e857a72459dd57dd460e2910c9101cfedb167853beacc3c6e0fc304d90bebe6a7dd2ca25b49a6e9dffa49a8dcee2331674ff8ce5cf18bdcffcc0a84026306f4d8c17f635f519100a65f10c672f6b47bab1dc57c59af4a3fcde509ebfb53927f2294a21ca974f64299557337a801b997c6d3b53bb30c4295ec5f11f790a499c49b474e5a211946eaed49a7cfddbc824ec6a4765255661d2f42ccc46bffe8495991ede1255b54346f8e0a48ff768bc545a15de9eaed804555de3aba13a9e0714aaa684f0c513431201a02651401959a2facec7df100d150eed68d2ffaac4116d4996322f4eeb2432f249ca6126fd863fb089c89515b0c86695717e7a0afb54412a35937f5280b4493f6eaa07b911ebbe2aeead89901ecead960a7431cc541927e6289fe6bdabf557b3bff46e663bac047af0b1a727bb419cbc5119ac7d4bf9c2bc3411bec35da971e4ff66c397bc1480aab903f2ab2f648f0605fc7013c9cb83aa4b1d2bff7d644cdfeb168c2ab3ab45692362f951832fbe3982bea7dc41c115191042e2e2a5f93254d2bd18194b2040798b0ba6fcf8fc1532630afb70e99fe80138ae34d80c122fbb7a6c4ac9a55026ddd87e9002aa54710053ce05fcb5c9d5c6e99f0c56e201421a50a0c05fbfe5d0415132a69baa536663e759898c51520d5f42f72f0bb9491c1949aaea2656ff55443666c89fa07904fbf9457f6f1a129b263ce01d47189f175a7c485de5826fc3fc871fc43f458bddfdb8bb328f4729e365a95da95ca0402dcd201c206eb3fce7dd6f9ec64ed872349fc87ca248ec0f9f212c9b3b034a3546351e20b9001db390bb70d615e88b0dc5a187c6a56fd24c9ea64bd1e23938c66929f264f9d581f42bb907325af75fe9d6e886d6ff13809ae70dea0eae8a5ae75a117df3b74647c86f35b460988a18273728efd6bcc6879ecfe3cde6d2fbe1af21a88f081f5977eced6fcef7f31b5310103f27dee64f6f6cc410cb8b4b9435781ada21d1c5dafb2fbfafa17ae687016918445dbaadfa649b1e0ef14840a8f561032037ba668eb01553b65b14e6bb162013a9ac6e51427b6a578145416ff806e916aae9032fbd87dbb74e8b1b398cbc97833033589d922b3710c2c170724cc12600b5603e6f35de5327992547251f2df45eb7e252ad1542db95d93017099895c62b2459aee5484e9684ee64ccb4a6a4693051eb3d7254ecce6567eb3924a5b443388362914b8f9b38a974d6f7793504b4f54b0cc5e69630e067b387ad211d82121397de6ea04a6e90137ff5563a3673d3c7a1f4ddb6b35f26139a5ca85a91833f055ed44fafc0a156d5dbb5b11d5a7c69e0aafc96cb83672755499c1ac3f8245151d0472e5ca5c3dc44cfef6b406163829ee663d26521266f2a7ba4924406934c14bfe5459ee816fe1312888299fdb73f5df509155d2ea363f81449f8829e69d06adeaed597743e65e5e7bf034a129315d8ab1b0023a223c4a7d97f246d25f756579380286cd98c8f1b45110414b79300f63006b48a8edcc9b5cab8f996bc562a06c2df5575ecd0fc66121f69dde697c527b61ec3e0b762d1c87300221168f949369d3fa8f2246ec2ba7144952d7c25e1bfcf4e72eb492c42ad2d56b40fb619e833360f55920d09b5f25bad8a00908402ee671f62c934353c4efa492892d785723b8aae54f796c882fcadea83325b22f6d1f934069f54425fc804d240e27eb4550462ba7e7a4e54e388a674c8ab42448d0823aa8c858715fec98522e787533bb2427157c9b936a64b23b2d1def962f49b3f1ca8594effddf51a7fa10cd8f4e1565920fa8afd6365330d2d52f6a8fd5426c7bd0029fab683afc9d2ecd5ec9ecf5854293c8d8cd5bfa5c2153a6f9c33d982e55229e195f7e0b6ca1ebb54c124306814702191a09258c6f6fe1d58f39036869b2e1d1977136863c5ac8e50ca107af636ecd3ede54b6e8c6503ea7188c3c7ad3077e54be3c1c062e1f6707b9bc3626b6d60ebf15b55c75e1a3127f47b5ca8e6a08261a923f04a670968364b983dde550bb448e7a845332b086ce38afb686c7e6439439c3b83554b1ecc1b0e80339542330f1cde3e22049b85566243d5ec3d3167aae3e2fece046a9f832a9aededb19c1dc09d8ca58b1f76206342e1c787cd1142325ca48c99099015f4b78f219de40326b5388b5789b5884b523dbbe4b332c215b711fb84fa107735c720deab7bd22a280fe4222d08e8ba9536004db018f415eeee6a2127fddbbaeecb516c42c3dac833fe6e549642ca702e6d1acb555ecf66b7c3c2770763a6bac46fcdb074f5edf10e71e72a7b5b179a987393d5b42301cb8ef26b9a039151d4483737076d2080e90c94c8ab4b1fdae3956b9b07f31cbfb658c8f2bf03b715cf31c37954095ed9c60eca9d17c9a4f58ca67f8325791a585f7e6e738bde49cfa9f619af3d12de474f3e2d8f380e5017b2c2e59467fd4b9425635fe0c97056f250fb98ff6ab028fb2200278fed4bbcf60362b5822bf076ee41887469a9f9b951c82938d8e0c02d1eef3c29c05b1ec97f718dd6f6b49ce539b1e0f4dc4d57049d4a70768629c34c6e0a5d48ac74e19b75d55acac6a7e13f2ba9e626a75d65267a31ac2c3312ffbf7b07031f2b9bfb6bdbaa2a19dd568f06840c64552968db57f1b56a2ac3a331a6bbe14f8192b74e4fe40ee61d6cdba28ea6345baff56d11cb77cbf862c5c0d92f92475ce6fb9ce19bc9b2fc876cfb7521f43ee51faf5ce8157302920d0461db404cb47220a3bf7f8cea0ddad2da8e74e8ae9433560a801be17c07d1c23a3d14c10de3499c231ee70b5ed228c7524f00a85040661a852f9864402bb2cf63cdc368c4c151fcf97774f1ce23a923605ee4e03e85de8e9a55e3a9ebfc93ec4d28b1e0121a0b85c09f4bdc66db3fa1bb974f6ae3cc68bea7c4567fb22ffa1f21579197145172e2cd9f77e60b410ea613f94069dfd2ebaabc524147b8295593ab4524a29ace3bdc8bbdf34d81ed8584ddd72377565beccdd3b7d4913f6be98926939f5aee9d58c50e4a16c22ed4b4409fe8106c6136351c99105455dd95613ca96b17eea8121c124361838aafc5bcc31811cadadf11127cfc4e1b88e70d5946083b051aacdb06168096f93fdefaba4ed96ebacfd08bda07dd93df133dcbb62ed9d509e49190079da5a02bb19a6165632916be9bfeec53aca9124a89210a232c473c44c458da5221f769a64a9821688c9b32a95cc4bb766172735b2957862555a4fb61ac3ebc6d6c365c73c2e15b5d03f93d29d4cdf08196da265821312b0c1c0dcaa7dc673e392bf2afc1e0e291517ce08218ac85636b077ea89bc2b329993d448bfc0160e911f3fa97b0b8bd51d123b79efd8069bee3a26b52c0330895b598c47f90b7e85c5a99634ef111dec278f4ff538d829a4803b560aba20c106b049e3a6c6c6a93e0192ea58adc64b084d69515352932fb7453e6023eca150413cdf2638f704a2a62724972296e9b0051ce31a52b55c6b6dc173f89ea239507a9c818e0d8cb185deb5eb60b6f40a3bc44ab92475ca0cb66072ce2b8a0f09fab27cea3ad78f3fa05b9135f3e8b1927e9bec15971cfc3ec3a25613740597647fc64821042a196feca4409b2f4ed6930d4122cfdca71d0603188882c0e694c84ce2ef301518ec876615a0bb6f2d1b4066eaf81b7a30a8e666a063e177ad6f8720aa777f0dbbf8cd725114a5343455bdd8126c44ef2bc4e80ce5ccc95f6544cb8e0dedf7a56870fcf113131dc9647fd923a9bb0f5fc65e9393d36b618c37cbaaae5c12a42c96eea34379c4ca0d66d92f98fc645a5c26c8a395f7b2f9c3c32f8c13df032211e3d6d2132f52404d96ba96fc7d645b6215780ed119258bd06e0cf2058925d3ea7e6c176b9d663b93f25b0cfab887cdf7bb8692f3aec06e2047bab22f4811ae56b95cb7a89d230c96a7d26237bc72693a057a3bba224096cd8ea528407b9ab31c9fbf68d7c286c3281c1a5613e9ace2e6b8d21e81f9e31573b57366734ada6c2fb5f9dfa811055ce7e82fc7692e51a8b34c6c19a47c6dc12bcbad7cfa2c5f2561f79ea01c76c4f439f65238a12107bc702f857a8aaaa533c91e50900f5cd113eae3c22f594d7009b664bc12ae3759476b7fa747f88ff891efbfbfbb7466b25f58477d15b419d603b0c58bda832d9e391f6960cf37eae3394514bf866e53815e2aec8e065701433ab95237f6af680ce2f06182029b418494af0fa32a02f49cc2690aad2d3e1d5608de1a95f4666e218cd61090f8a8314d9d2d63a889f04d87add20c4e9e35b032b7fe664c0408361f216cfd74183cd86d8b9e132c7f94365e73b411ecc5be73e3e430bfc86a217c42177c83634e6451f8d6111ae516ea8cab8af33b438d9b2b0726b1b1deb471052eb9b88375a67d39bb372cf58566e354f48381d1b5df192876dac7426acfd50848542eb7b0f512ee8e3e5b9930d00b93f6d370c005c24da9210ecc47741592168b9232239b3c4d9c2621863eb151dee12b284e4e7eac41dec0cd7bce6f87c53e55d16ae44bb58e33cdab93077944647ab97ad08ec32e9ae2e7308b3bf8b2428c281e40439a3a7a74b7fd29653cf1550b1c5e207210614fea41e09681078c2385e2e0ca3e9c90d90984efcd82024ee422fe2bf8566377f7b2f0c5e1172ad0c147abd0b0acd0dfdec17991d3a25ef88c53fdc4e3e99f3d4616a01d2d2327e88be4a8bd032e17d6cf36bfeec02d8f768be32a034d65544f5d03f178064fc2d4b3e967e1097e74e02cb55d970ad4e81c55be0700395a6e43563d10da5616efd9639595e9cb1a182ca3bcb3bcd1599748af60a946b07785de94c0c2b792ea8fb3d6b34d4bccd60eb6658392f47ecb077e6b7d24264a537b01dff292b438800a03ed990f64b882763151e9fdccbc9737f0868df8432f7deaee868bf70dcc2a2bf971ae3a5ef7b45497e747e5ec344d946295ad5840c67768c812c5936cef0d10c43abcb2efc48396b6ec9d10470bce8fc5de37bd8e35f7d7468214f708e1421a187cb9e46f95f94fa263827b159b6983d66ee6a569fb35329e370526af442e94aba432be5947adde976b97eb2ee403a71b7560fed0f39e671f3a3ab1506b1c106f88f4c00b7db81c4fd01b47935270873ee9ac68e1fc31573e30f956ec075ec870f00a53c233ef4feec3e74cd06af3a06e39e15f604d07666e0c5294b8e2c9a5688359289638fddc3fd98f7463f31f031c363eab4898ca745f1fd8a71917a0181b9802cc9150723f499b3696f93dcb8f3a3c2d5d92bfc86ad75943e47a60f606885c00cc49ad666eeb5819c6c72dee5a09bd464e7090ed25b231e061035566789307299bd0c4be46e505de12ac30dff154bbb890f3178630e613fbc04b53c3636f3fe7c6341140dd5de64e4bec25dc8bf75a05d225d5f7bf7a9a9e36806a69fcb097567ea6f2310bef11afcd6c5a73f4f566034108fe16f7550c8772ee7b9afeedabed21fe21c02a7df57c5b36798497b040a6c88d18b173cc141f24ac6c83e9628a90d17a5fa202be098a9108cede86a3e3b03124f5d6f41ed589f2967a136f6976db487298f93723ade60231a43c8b4854221b928595dfdf3d8fe263e9892256ea5b48746fdbdad67109129d8b3ecbf2de0befc42b73a70cc3750231d47fcc207b35389f891c809497ba5f02f3dcd557e9cadeb8a37059e773f221eaf023b56d7becef420c5205432cdc745e9d033599c6934aa1beea64db3232f216c59831f7114a5284fa9cdb5397ff157a29391ed8e3ab86ad3ef6e1333039821a7c88abcdb1c87ed4e75dcfa7296bd528165edc82ff4be89a20da75befd52271fddea54b58d51cc9b7a5cffd1af573f48e9f61be475ab475e6462d553e059c53a1dcd02926698f48489576e21766b38767942d21b303069a6ec26b1ff2b8bb0e027fe4c26305a344ab9a177ed4eeac01488c81f8304939610dabd591241bbc6d72463e97542cce8a842b5f754983df1e3f0f2cf0b5d81373658a24552e2c1c50f9f8f065f813cff3555772c0e878ccdde649f0f136aab8612709e9c8038ca2464d86795e928340b64fb697fa1a64a7e47c0954d60f1c39a44f6f615eb1674420224e2625c2abd7364630eae9778c22ca7b31df554a6fd62e30b93ddbb0b4aa51fefd474297213b2ab5777ea2ba40ea2a96ca72e8b9d88859390755910eee33686d7521cf499511e199d068bf3ab48443a40d175af893cdb433f9e30585ef1f5b36a489d612ec3949f21b91e60a2b9d247c1794e41aa5000d03a793d7791ab735b0255c541dca2574827e00987294d97234b032a15a940cd974a6e51c3e07480fa4ae74c0a65fffa2144dd342a9219ccba15cb6189a46c94a4d9021f186b6e3132564f567e69b1d926445931a22aeed7bda3e8bac8c1d1ed8031102dd0efb610d263a8ae06dde0f07607f3d1c8bdff58f58c96ddd36ac79569408f0e61a84d021c52973317df2f7901c0a9261ef13cab3d949645d1c4f75e98fb5a1c2ff7bbd3bacc11b3e1ce4383230dd9fe03c9823892462369a612810e0c72db11d8ce9b270d5859c4c4c1c3b38b2e42121a2f39849f5cdd858704c39b9d4bad7e3f809265211e4c12a22cdd69e9d6caa3e6ab0e3a5331fe913ab2e5a70e1bde06055eda02529691c4898ed3073f7a0c0dd1050ee135a047c714460d4ff113f02f3df411d22c213db1c9aac081aef23ab32c0cf85e669fc5e0f43b94d01be2adc5b0444b938940c8223adff7b427907370008aea50704d2513c81f08eec9f6354b39a042c2d548cd9884c9c64c78d1dc7e25e8aed62c5d65caf9908c8a016bea637428f4d0bc061bd83aff1cc4b86fa59a7618d55c8c7e328647f2971f7f912f05d3c050d48f1a2c70ddc843fe6002ff1781111776c6c2b49bd7932bc872513335c8a26721592ef3e19361808f83f7cec42ca3c32cac2b8ade72a328afd4d5756cfe4e15966581865e07fd6a2dfc740be05403d0bdd58d804640030b6852baf31370594d66cf869bca230ce480079a1ff397732f05f9c738528fe0eef15747c5391960d372ec6b1401a649a52458d51a96b41c2bbb0d9f5c77118ef97d60f7f1e5f10efd80ef4e8196d86b69ed07cb2e16cc840318366fd9a2d32f837e03398cdfb66d40d11dc98866dde6efe7bc32cc0c59d5d25736e007d086fe0fbd7277f191fd68ccf5613b8970f54948478574d1648c567de5fd5bab3436e837934dd871d18bab84a5c0504ee44f66978101cb030600b7a8662a5693824c4cd4e4d88ee331694e187571a7dc7af46633a277b2555565ed47bafb7813a7407dc843231c6f5476f0059304f8a1e2c6d72eedad1fef4258ae93e1c743d4ca0bf91d9610a93a572b2c2a23a70e52bbb9bee56aca5cdbbf28e0a78e9458c2ecca47ea5f9629c1d1109059c5fe85a3961e2337d78ca76b7eb9765849c6828bde355d0716369e6b98d38a3375f62494bcdb060c87ebdf8ea64db236ef1473a62a95f3b32387ca953660e909c03077861d48007c89b34fc3e6e13004ed332092ba71f4dcbf87224c0a933cc2307a5b7d00d451ef1cd29a1739975297743ea8bd9051059e725aacff465e459c35c1dd94976c5dea9b8cfb57d7bd8fa9091a019a367a0a402663448d7e83bfbe334ff0be90fbf00654598b3248555eb7fea1c3426e414d235269faddf571140224381aad7337ac3dec7ec3ab8f25648d6d40a63b454c31833d20b6b78644103396cce4d2c5696fbdd97bf38afd9857fcc0174deac678ebb33f954413176d5090305e05ec81661b705d5131b30d07b90d34dd86dfdaa8a96e556c1cdca6c6cf81463a27e9af3f1744acc1d606d05ba1c9d7211ee5189b140ae0fffe10e6c9ae3172e60e6658143ff453a78ff90cd9119d219a2eb2ea84362cefc4cfb69a2128ef23ed3e07a92b57dc231506d01be2891087428352fb6a12000eaab1528d4a1fb7e2eac44f7ceb884564c28e83120931f92a2135717b8d2b2c5897411f3da91962570b64ccb6a13758698d0a20142dc8b075e80185ba6d3295e47320e33341ba7a2170d4eb4798b7eedb7a09b4148b12749ef8bd4f0af3e6aad7a462191020a64fd0448e34d6f09bc51e30e4c58998147658958001728fe37f611b884cb14401573714159b33d46325b471195b5d5cc939b06c97a08f78c27a64fb4286a7abd71373c53ae9cdf52c3a8ff251c3ebca5a1d6699a7f6acf56d455b421ba970e88102016873ba8bb06324495b1b43e2bc68f5f048994fc6c68ca1302cd9fbb05c5602e10076d026dc443b33d9a4f1933bca804ea5f4a2c3e95ba6ba274309b7edd0f9e22035b6e3a9e345c208f68b18469a112c78f313400126cbf112b44d356b46480694fdc05903054e26d9216a4fe2b469a4f5bcc6603521f72767f0067df3719ff5f83c9d4b4ffa9c8ace61c629e23ab8c68be3be571c0ffc88d38d44d84a944dc3f9ef59ce865d7ce35568d114e8553f528d21eadb25c69f7daf2036f8d3ddd575cd90324308fea33f6241111942129b2b174b7300605c4531675803487b437ca4a14a330966cd1e79a9554154b0ee913443281ed1d1d655e721db0555e8715950877cfbd015cdf0dceb78844f9d34bc6e4f5ce46aad599d264a3b5dc9cad50cd3979c716469aaa32a26139338e32367a7bb5fc079949ff953b4320b267639975458ae9bfaa002851d5a0e8cbb7ffbccd0a15a40799afacff7e8542510f7ee93d578612bfe3c9bd129d926fc8856525ef477ecd9e9d56075edbcb7077c9e4c8ed5889225a43f7499a8a363de9232df97044387dce4b7024223a4361d0f28bb8b8605c2e685257569b50f4b45edf27c448624db5385f68b5e5fb0fa8ce103b011f314e8b915ee6b752f66b219948610df657836039f3547948f9b52539b704ba75048e3207b2f01b422c5df3deac9edb68a949fc3624129e83b8242e6c713a589e0797f1e80dfb45cd6f346b69e2797d6166d2a8f146cdb190e04bd59e86ea22a311347564742f8c76ad27a9ce2e33faf580624b31a7571d426571810a6d2d009210827fe1c54a6099b38fc40d6a634e8233470b30a5e031acee7e8e59e99360543c1fe2d703c511246a1a92605c13c7da09cad6eee52887729c9630cf65cde75b2260ecec55cac3e5c0b4edb9e92404779cb0c3457ae659dd7a34ac5f33d275b231a10bfa42420f51db24466a2e7094175744fb030cd7aadc534d8b0c140b95162f297e181b2c1177ad8b467747702a976acb57d69bba262273527d754b767a706fefe4f645c03adfa48de6aa01a095ae51a10b31088751f3e3e3bcfcc095ef4929a9de400a08da7070cedb3fe3002970fbb6114a7a6e1ff6950a72300008d9ee4c492612d522d5bb952538eb48f617ff3dd73870cd066c22e415e2e6a85ab7266dfb1612caa8519c969f9b66543ee365d67ee4b357ccfd8f9b06ceefbfc56c155814045b212a89b588d2b4c127f21a62a5e37f4b254d2c918546f6439e9c9bce3d1fe5421d91a35205db21fd9b98ba6ef57b09bb79f109c6f675d44be986ff711e4190da29193f157c1597b882ee8343bfb8fce14292ffae01c791f64d7e8b4d2381a45f8e07b1505f9c16fe3d24a160d340bd5efd4903690ae00b95de3b7f5664bf207be89b870b0e14306b6455f6c8ece70df76f20f50a02464e48ef11aa334fa2ac4532c021ac56e6d8f4018c38349f661c57b9478ccb9937b5dc03590d2060145be0efce37261444f6b2c438508a76469e294c6da37d67610729f0e6a1a70e183ba2c323e23f70936f46d758070a60c6d47e2055e17905902b848c4d0cc53bf7a4c92575831ec4b129d34be08364bca890faaf7a50dd4742c37e3430bc2c3c0ab82267a2d502c8f84600959dd57f4661f1143400e08917c21c62ce8ea85d347c16fd5da6ba6b7de83cf108cce7cc6eb729ce75f60ecd4a55cca22a87fab16d405dd5e475825e49bf3bfe36ff09d88a7307770751bed62f05d4d8ec334add199940c3327923405ccc596ecf5b6b97700d8276bf73f75aa9c080ecec945b766bc902adcfc7eb88ec924fb95f5608f7e4d53a2e48a08a5b01c4573c510b49f60af6020627dcbf8e22fdcc2e69cab459c7a481f3bc35623562db921bfdd51870706f0b6d1e34306d0e98f2ea5fe89430f04233b1bc8a85d7ba7889a2dc1601cc55645e3ed8ddd5135fa1afe99c128dffb28fc7fe5cb9db4c2da725a0c586eabc32f56290f104ae13a86c550f9c50c2f4617b40c64fca03af88f6a1ab18d70bb50a167aa741302307d88837c5c0d11830b6a3097168cb6ea1f7d3e4f5b6b94fba599b0a4fd9c68b2d2b9216af2c4d76f2b41fc1ff5e4bbb7c3d191264fb94932005b238dcf5836b12658404122ef9229e76c9059a54c1723f464ff341163b08dc0a6506d828c96c62b3beaa275573da065ee2182fee2de7a8b4bb6e076dd2be9340d97baba2300920dfc3f88829d50786f54d368d1d39dd543aac706c054e3ade6029bc7378516f05b6e574f89e7a2c2ca7a4aea79229b36c1bc557359e19f285704676e614b941a3be349076c704d000e9862b852419217287f7e93e6a42ac8a376ad8113fdc38c1d14ab9dd0a18593aa067029979ae421cc126fb487acd19c42c14c7008f3cbe9ff8ce4e7ffa7899eff6701a46aeb7c2e96db936d0322f2777544db10cf9d11bf9b55686f4fed9a5132594ee76e997e90481552770298b4373093f775b3d8396997de7721542e139495762db6a301b02a65f1b806c3bfc9c023cf59c24c05a823faf27d3923604aa24eb121f45e20dd015ee2ea7c968f295d6197386479ce4b3e88d6ece1e65d72cb6f9f778e52497aef26bf4a575ec99d62e645988b51279b06f0f4825125a8a0145804ad5b077b2362ae32a1cee1bcaa61b57e59528824a2c07397aa803141ef9ae8fff3d695adea4c3171ab07b1fda373e179e63140981a1599dd0cdcfdcf7ced8ffa6ab4c06578a2e0cfdce6f6af911f81ce18ed53f3425895ebd3a97ee7dbc665446262ddcbf4a5d24d15104d57d69b820d907142c5565991e2514db7687b4506bf0ec4356d04595f30499e6ab6793d70d87a31e0bbb64506fd6906703a77e57bb8865638e1f49549662ab0fa3ef3f58015d958cf20dd43942bf99dd3063df99a4e4696d187430cddf530bbc9fd4ce9f09a928df054ad774f372a1743de40acfdce536472d4dd24f19615c7c3604c07d5c3943c2b2bfdf1c9632ac838e7a81ba4140eedf5e8676b35385e8270083c91d5d4d83342f7dfe846cb7dea7bbd6c6197d0fc8ad297468a163d7d1949deb78de5941e18406a4098374d95459be0bf17691f364c014b46cbfde5b5ba4ac5ab77b04d73da21bf182e5750e418b5a110a9184c3160fd44939071ae881da1ccad365281545f40fc1bbb1c104cbb0cfef25cdbdc183118b7c4eee93bd3fc24d0eb9ea7061869dcebc4314e33e474479593321d66962b5840b8a6f09d6217141f56ff617d46b2dc50ee15919ba6e070e47c1c9231e2c636c4f8735a99bdba14ed02bb352cd591193592f6185f6da51fdcd3c33f6e0dffac98bbf3086532f443d44740c2de970e7d76bc773a4a438219f112dcbf64f770f55a6d8dcd2eff073d057c42848067edf463f7d9b7b8ca6c860498d52e433509e670f2e446cfd4469a7e25954021e14a615db80e254db51d80ec86257804c1668eb962c97e7f5d0f8cd43a50d07d353cb271a6a40330e5b007887bf5280b6f126af6391b59bceaf59f5e634d25e88b14d07265f997e65222d513ab64a1ea1870ed52c8d6a34c367fb3f515d57250e118a02b040546efee0678deea7cff9e49560302de8db3ef5c7d29cae9c782254c27ad325a1aedeb4241519e704a0b646261ababa3bdd87545b68ef33b9977285f8be0dfa3faa4de67e99090d78c805ebd18749738944e19eb35111c01a576b790e2154eb32f7d165d671ba445d94514cfa381f41f67e76e2e2c70adc33c7675ebe51bd23e634be87a361f40780072d38ad172e4cd22e12d20024822479f1439f22a4f6c8f6f215ff79c2de57574c0209474319a6cbd0819a246be556c5a832919d6a3f0f7946cd60ddc89baae7d6fb750a5b4ce9ea65a94c4dd3dbb568083574454b7a3d85f2603b5be836ee3377ba8dacff3a71f28d68e84ad5374ecfe6682a0edb8dd553f8fea533d1d0c8acb53adc5edbbea28c7d2f146cd1399442c369f5d33909b0b27eb2fa364dd359fb6f082b5f46e7cf3fa80f1246c8a068fa44590e1e3c4fc6daf6519cf7a5a4c53f507ef909d52d5f4e0a7b8674ad7ad79dba2fc1aac0ea41003b6ae770dc6f01b8d34b448f5eaf3f2281ce30321d9796f05c373e1d99e9b908e21b45eebabaa78b88d79ac994d8ca238836ff11344d3ad29a30813c4839036a50c4325d371324aae547f0552abe5665724778b4034b04184030fea8a329829d91d06732bd987d3c6ae0668671d4428e864ed9acce07ecd140135cbced29452da099481dd59c906fc41115eaa31dec1b0eb8008ad150705f7d06af961baa81607d127899106a2081c8ca4f91970bff965f95bd0b66c773e09168abbcb8b98131a4dc8ac05104a3d94350e6a5b52dcc4263e1a388ec0fe54ad1324de5e385f0285356687979602b3a36462512eb7f6d39dd65cf8b0c0ea35b644a6bdad2adafea19eb1773ad38ca6aa5c2d82c21c1b18895c28be9e1f6c66d3125bea2f6e6d034e1eaf8302eaae86b3f9da312f5bdf2d83483cef09891989c120c970c27d85ec3c6dd6ea457e57e48dae11bfaa224ccd73b93476db5a6c2cb700611ffce560f25e023f022d00251d789c4c2d0e11d3419b1f92465fa070dff7244ccd41c986d44d0ae81d8aaef04e9f93f640529ce4816a77dd7c2d2b4cef216498afa71c9f099c80023f9c6afbcc023e276f81ef6dae075f6e8e83285ba41ad6fc124a5c1b28992ddc616f5125061b0f13dafae3d51a0e9f20ec01b4f6192b049ec6bceff5f3b3ba6873c5fe7bb11ac51344159e3d3b352e682978386ee802310dc47203c937ab5206501dc0fc29bce280a629c657f7f855c976ea820fb79ae1801ded57e35b9521aeabddc46e3acd7d4742c82f691c4f02a915db832eda3f06bf8967a5e8533bc84f42ed1bf13138b666f8a202a1be863054ad92e64cc5753608ce6237a444858d09cfbf2bfc1e4392491595e6ad40a1ff9fc93ba8cb6553e5ad9194b3f6b07907c60d2e66d446c70ce3498958d66b74a8915aa0bb7e1c2a65f40121075231e8ab4a45cdfb60c9b4afb1dc33798995b466f5bdae48f1e7063737ac3703cbb0115bfe49f980ae520723a4560c16c37fd301feb877e9f9cb35c3444782c011a0c4e76026c17fb8c248dc7ef6c686c84f784dee2fbf201c4a5493bc8b3eb6ddd4c7b271e6462fa4823a2276bd4b07db2aed6ad64be066fed4af36e097123cd9194c2319f633b325c74e8a811778e6fd623b9896a058e6ed4b28a6bd28723a279b725c2984def0abe19e9fc85b5083cec236fb6aaec503dbe933e66ee32b5d2e1bd225ac6939f7f9d11cbcb9ce340a509ce4c19decf9df97aff932452a988791c1951ab9ff98f479f80c7dea7a43d3ba4c8fdbdffff8d9177c0de17c88d9eeb1e18f6d5797778d8c0c03d4f3aae9963f84418a77bf0e532f0480364624848b899a40c08fc9da48d2cebb1d177366411701a3ec831c37297560a406d55290ceb084088bc03498f218ca62146f9b96e66fac6dad584a786d746f3013e7fdddbb672f85b1e6736d638c722121429d1452e3bababfb82b26ac5196dd86d06c9440418ce21b5d48e61b73beb6d9b5f8311e6dab41cf10da688d3e817e44738f7abc3acd4ee00d39ac331d5fec68b32cc5bf7d8febe5392af776375552319af94e5a23b55edc6a040ddaef3a44650f019a2739a68b1161f02b292912cd222bb6847b814d1562d4ef75ae49b1e7b1eae8ff4d455d0e07daf5cd37bc46fbb3adce68f0e26c96eed18b5e581e54777c26a07e26607ef0000f77beb52adf322145f9b5ea4e4da532f07284255795669601faee95b467eb4438a42b1d40ba92828c943b8957cb9801af9bbd8233cd1b05962bc754ce58b097a46a532716321da07bf24e45b5301d4a7f3df2556dba952899e19fcaf00d43653d837bd4e56f10c3f7d0be6daf281fdf6517f7e7455129f0f337e63b91a8f6176ca4268faa81eac076f6371720993c4e4faf0a61cf783685a9162ad8fad95f6c84fab5b151f8f532154f2e778f13016210aec9195ac5b91209ab03b15f35ff7441cd6e2e665c5cd3d7ea9087b4b5494e678ebad87943a9e85e0a7d5f77c56563eb0fa4eb642b6bf73a5f6fdb1d2b5165595133bd72d8ee642da2ec4ff8f0d501e589467ec27421c0f3a4cc2b7e7c948686252e795410e8dc25b29bd9ac63f5a9e7a7007ab2e04125e16b22ef3ac9dd1d0fef7bcf7582abf2d242aff503ebc59bbedec71548d5f3c449519bf4cc8f440488386418b04c73342489520e085028508d0fff26bed182a65ae1c05eaed10c078e3a2c4ceaeacb84e7e3059387e7aa69c5db876a174581d33eed0efe3ab2f4cf674922dde52e2b4bee77ed82f191d3578de1b7e7bdc4fb560fa37f661876a8471e125fafa8406f57d64fe335377e5c6bb75225028bacb84245c652cb32ba7cf8cb28970b28a7b4bcfd44941ab858040e179cabd2c805d634c657a4557f36192e2648a5bd6b91b39002fcaf516f4064bf13776215391240425f650f150ab42ce7f0c1b52179d0483c5419cec25dba36c689d3fddf62cbd8c345f29070cafb820209851ba3a21cf34b28ed2e6f8c67a8a25fbb74e8de150a206f08edd46721f3a703554f0f7d4c424b2f6a2812e03e1a7d8c308a67885cc654ab0a5c5598a50b583096e024166802f832084d6609032d97b8744ef8619af4b0ff5dc88a1b55525f89d222e1df9c809405a9b2cc7b5e14f93c58c92d68f6f4060e0637d14d79e98908a48285f6cf710469346db6c158690fc06bd39724253be60901ea9fae91c2ccc301660d6a43be09c0d3f9e9ca15207f3509ac0cd21ad54270c7d303f523b4e4baae5e64cb0f4ac33896bb17d4d49cbf448811feed0070a20d50bc42609b35859b11f9f67b5a91e0b44ce3b1018dbbfa2bb2974fdbd4b9d0858a37a643630e7068a36c69310144e82acd45ae66f47069fcfb99782036f3600d42786b9439fbb701584781827b6806a1afa68d4a83d2a05ba2fae7f1b3c1d327e64d6d1ff77e6add43f1a609e0fa9af5668784a357dfe88e2f81b7269e93c68c98e7120a05e85485db9156dab45ecc4d0ee24448293daee6c7b20d690c7e226aec6a970e72a172d1fe65e9f4f99f321252b269ee0bec5079f09213c09d55440150d5a1676d8b9efb3e763ecbd04b00411e712f18d6031202a2bb2df9c3a061db99a92fcad848ca7d53c2f8afa67413f3f7d5ce03e333923fdbcb997f7734d1982a34ec693d3442c592f05f5c778f1a79f77a38a3af23cfb2edca6c1d8c60b6c90d2f75c3de6c023a3da6d5d34a8808a7fd7fd28024a1fbf9c1842099eb4cb693879bf075e32d288a44a1abbcccb85a66d93b5f513796f091e340f84e87d6a37c359bc6e31ebecd7fb58f9b39b93056b15f9f44d8dbc7b89a3b7afe625de316046bf709ae37fee17fb8e51a1f64daa437b8732fcca876b6d8efcb464deb7a105cc95b0c04118112b74d5ff917df876ea0c9877720c787d79653b4a1f91bb3070f4a49d7b28f9a013ee0d773f5cbe169e802a1f7236e0640f5cb2be4de75a08160997f88cb05e73418f1f1eb65119518b61229c8c4aa0cd048b74c50204c0de3fc672aa57baf81584f2c1097803a172f5350013fead180e6d8cfb700552b8c92e6ef7f9aa464ebebd90e14aa808a50789ff4b909f4cca48faad868019fc9ca41dffbe87273b7d1e4e08447b5706903996e275fb95cf160fb23345616ca48a410917733cce2f0cc75779400b839d2fe179c4b1c836006999b6aa24c63c535bd55578496938f6e044d0e6370556c928d7123b7db03984bce045ceb2a71e7913fd4e093df12cc56bba1bb18ab303f29d5a4c723015cf5846f412b820fca507724745f3b7dad50477a38e693b02dfad521ea39a2ebc9e3232cf166694d92635c62d2bc71b901e34c8f5f9ef9f399dbda37e18072365817a7d332ba5185034059e2747f2b481e4d28dedecd278a76fa167dc65577a8b54d38b5900bb489b601635a2566f521ab639a18f746aa7f4ac096fae67893a2103231a9385d046d6d9b9e34471301261b055ce8627f85af61ae36818d1a4031b1e78b12e926c7bd5a93ad1cd70928d6bc32ff0a0a9b423dfe3c676372d7eacf3553c84f071499c50395474361e4dc9875e6d49b95a1e882500e7822b1e098dba8c92ee315c0c0c6faec4d9825617546bfa41fd255a9d47aa525a0fd0cdb2640fd59336d30c3defcebc65a2445af25b4e9d97f476a49867c6d821884505c015b00c9d2c227066ce5b9ad4a9b84d52257e400abb0c9409a9be5e823b703c7cb56e629d65b0e5a85bb3f029a8b64864af9823fbb41bc4088e319acd5f93b7e1e3918f312f631811852553e439986045056959ca35bda053c2a182a1fb202f6c65540003405176c5040287d4d8c13d3ef745f76f933371a15312e0f3cb59a9a296c00e33ec8347dd4a87c89e9abe6b7c23ee1bfb48045fa5f3d6f971c740ae2271f23d2ef63fde05358d7fadbf634a8312565dd8decccd3461d71e495de8de56ad434af04f2afa93e99d1e145bca32d6c29149cf2a4daeae05e8b4ab0051e1f48bebd356dbabad606762b3e887e0736a258919ad770e0829ded8e704710aba90a38f990159faecfc9b37b2669fc704a5fe316a17bbc516529d7fca6ddf490f560c518abf0605c50965c16cee8f7b1b7a828f1b496be3637a99a26448e99fd776ecb6770e5c8fb63adca7faf9089603633ca1f687c68aa2b92cadea1eb348ede1cf4b08b8eb440a2eab7976ed1a1224eddc47e3dea948abb973ed9fbf959df97af0c3aa69ea998be3347f18f94ccb2b308868032401e20a08a8d89bd12ec5c2843b42ad313b67152ff3cffc369acc33241b85270110c9d7a4ed674927fc53de8d0b402131e5ef1f5f20f1a529f4290bc8506cd7522aa7247da37251599e47e385da8e9315c4d1891aa61543254fe758afbb18e576ce464b0e9ce5da5f1a1546fa769c2ed38c2ff3720a710c01c2a8383a98e3d3625c72e303e79c74717e1a3aab14361a895e6c712bdeff0683ff6e60ac4878e7d41ed7d062cfee5cae074bf24f2b906c8234e499b761b817b4aa682df1764499c78aebb531ad5c3c0b6b10bd9374932c6c2e7c08816f7e5c134edd3185526144956b9db13599f099a66f3c5c133e5f6eca20d52c87bfa4a4c9c707026a588e7a7820614b9e9085d0096d174056f5719d199949f20788e046ad953469a5ab476cd102821ee93cd20e774d116fb53a74add57742823ac81036017e02651f1a58d288854d8db6728c3e4463633e646f906d587ae477e084ef475d269f68ceaa8d2d1374982693ec0541826398c0239331a440d99a7208579365404cad71661ae59c24d1c6033e7434f381edf48206674c42cb9e215b0f58494a2bf34e2a484a1e8c005b34ab1d6f91e8270852e5a4b622388d711bffdafb04fd120a743474752699c5ae2b24ac5d457646ca2714e22c61ec6fd9fe0159e3c479f2f24366434049f2c464c79449d0a44e6a1b7b5ef44101471581d8c492261f7219fa3356d3d102c867c3bdb43d436289c7ac6bc8f44f37846332e513750c2261aa34804139d0df33f5e34a530b2363d904f1345e88ef6bafde90286a11c8f3bfa922cb0237c48081043284e8921e078c4f06914fe43e88c93e829d377d0da7a665468700d3f82057bd5d6e33ef2defa5fd89b5666c091484bef409153617eff28e38fa4d8a84220cea9fef066b469cb39732f73795d1aadcdaa9ee36a308b67b1684df5c70d1acb9c905ea40770b8a798cdd8ee0ea37b8a7d077349cf3316bcf1a068f3308cfda7190dcbd48cb088ebf0a9335a0e36a01d73389027bc492c7cce0e6012b9742a53683aa293cf910cef02ee6e3717044a3018cdfa0a943f3eb983c93361ed38243d9cedb5f47580c8c82c1302d3dbb4be52e7d9cac6c031625293490f154ce5b518701fa4bffc3021fcaab496234d2a50919e87436d7a9cbcb247697d533fd4a210fb51083d3b92cfeb7650bd3641e965298dae181000658216db875aa07301f6363f866d9a33584d9f4255eee9f4dac49da0cbece87a24cc194bb1a8f4c03cc3dd3d028f9aae0bec37461ce0d876c50fdcc8c1a01ef003cbee39e205206c2fdb92d616fa899458ff649e8f8b9906914e04b650f6f184e2524a59568494426f70d1e984d0cdf60a3c7470794f66ac8bdeb820fd6f7c32d8bd4c7fd304b0b35fb09b0e5b3f767bfc91007257d4d12baa363df5ee365e5fdd3e58bd480c0539423b812260664963a1a6c8d4db550f391939bf52764f01fb916af08dec91c04ac49dbb2f6d0717a5245b88feee390530055fbaf2e26c2aa2c4a79af19c2d71f8e416aa96f2c6e4448a9a5db0cb41889a520988318e20003c2ef647eb773f05b39c32347541d93c59ca03d6a504baae50b230da537488a15b814997ada32b16aabb58bb4abfcf97e53a4f658d9c9244fb921f9900b58df2dba980dedd289983470ffc33a412c11a0cfcaf67517967464b8a81ca46d678d0dead65fd15e9c5c1b87e56eafe3cbe8e8114f1a2f35e5363de627964f85f52c9ca0044c4f06d5246832a883f6c9648b1bba940c6feec5bcfb113887e9fdd93bd3404003d39df5fa096267150335659d0f08cb13ed6215cabf27efee419cc38ae0b0de75dc057dd453938a420015c97c49e70a0ae0b1019493d2ea5c26ef5007ac72fa60834f8db86f8d56541ab84ad1ac9004ebecd627cd6c4ec22fa12bcb8b49b4967b2a43d91f35d9fc46757d515e948c991d65ba6fa3a0b38659fe3deea1ec3f0446c6208953695c840b504863794aa0fc25c8de7cb2549911d697d693cbb41fe58b00e1abfa269362da0800a2bfa5aee6bf6d1c067762206e108a850191fb0245934b46ca77600c49841c89f7416ed9e26d056cb5fca415efae910c151dcc660225511de4a50c00bfb7fe2e13148430f8badc50a9d1934af18ef8e8c301ff3a47c689b6a8a31e5df9f88aaff9ffafb4bcf5b383e4e81f635ebfebb6b1722dd4e64f5b97beb0296afe760816a6c64088b5284022342745bd4d2ec770aa796daf0b08b9d8cfb604ea851defa3c755c52a4940005b20089729b23f650bb710cf948b179043610c128ac25a8e40c801e060fb49e842f48c58ed9f128e9354dcb5f4ff520ad60ff1110341eab6461a025de32e4bfbe940a7125512414ace324d2eb3bd3730b13fb8673b3bd3eedcbdd485cc5cef6c686c1f6d8550e16a80921454be8ef256b39e9c686259cafb9d6fa2097696acb5680f2e7fb8ff3a9cfd6856a4a5fb09197dbbb72fb6fe762390355cf0d668d04ea118c2c241049d995991263c5e0c7d4e9292fd21f8d8c8afada1f7bef2a5b7f36624f8f72e0f30737d455122e4a1dbd9640fec13f7fbcb6c1a956b82eb7aca54ffcfe195834799d08e971672efd61d5a9255421565be919d3487d27a0a13d51f97852a45e15ecc72ce4b1b87f5b4e71078b1d22a5c383b430a97675bbff8f846b4b78b5d338efd60400b2c8c8fb4f658495df02ddef58382acd1ee7f18fac1d88ad90ce441ce0ea59d2467eb483560dab495a72af8e372ed460f441b552390dce13d962bd7ca5f30b8d090ae74bc0641513da373df35ae1bfd3d6575b1d36d0377915fd289db1fbd77a3dccbac60bc46f5722b6705d1978daead00079c0acdcb020699bd18f25a8ff870fa89bdf9be107e930a540ca22cb3e4a62432db6d73a6ea00ccf61f49b7e0c02748db682600d6d6047c2117bd1c64da636f042d194491ea849566baa9d10329acca65f263f7972b542867b3330ab0a0492ab375b7a6c9340aa078e8f37c2ac7dacf42fb251fcba38a772d535a88ec2f17ef9c9453c97035a2b6e9f5910c6f9d8fdbc531eb3ec39f58ed10ba7a8386b03671c85a4929ad60d5ede08d5513c4291bf6b4a99b7bf32a90a01261c39b9506322f281e95d804a987ecd5ba71aa04cd170069a91e46d97826440169ec25b3d3b413bdb82c2723dfa70a6b4e658fb790179930af9dcc2ec4438b6fbc2059875e77f72db5deaba74140be4e0e462db6b010ef43de5c904d88380c537be54339fd0bfa28c336831740c07bd50b8fc9080a67d42017dfcf0dbed0c541b7bb0247fd2e8a3f765ce2bb527fc5ab0ecca3cc65fc8e36fc15b6cee372b807b1b0049a8e388baaea2a90c67ae7abe6f6771d9925dcd54f96342f8c333ef51c7427f2297923e9c25095bd67f3aecb43891e3c64aac9ca75ae7685c638d61855dd6b33cedb972e8a353eccfda104a97f17bb1d0acf8cad33301fac40c4d2950f49c6638812ae5878e3a35aa54b6623416c9dc6f22daff5459fc6afa83ebc955c9a90aba0bb9659a93d6800c34963d2b224d6f7c54207834f731c878096e38470a67c7bd5cbdec52d423a3700e8d142618bc557362a5bc72c7b2265e1bfeeb76e5ff46de1d6406a3a0edb09e05c09fe8a7863e8c3ddd1e72f1bdf412f1734194936a7ba53276e83c52d32292557bcc2e647ca6d900f43f71f6ad387e12e53c0186aba646d9ef8f7c43055f6c35506b8c1bb0e84d43cad021a5a2822b8fee04d2b60e4034918189eb5f8080b8ff728f2189325627b50aac4839f0429942041dd0f066c4f85144288c601ed90c2e845bcc0d0fea0c67063372791308da27206b32754846dc66305e117d1e2a52c895294a72e7b067b8ea6af65e52192aba4df1f \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/639404.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/639404.txt new file mode 100644 index 000000000..da49b923b --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/639404.txt @@ -0,0 +1 @@ +011636da6db5e37720ffd4a718f5aa3d588098256b48ab72e85a9a9026cd4f5958af28918df1031f5b70f6614558341545483c26b3d91ebf7cbdd5d0c7881fd85d2aa3f88fb72c9e9461463ae388faf6bf5af8cc99d5b9e21d66f887f3564c63305d66cc20fe87c88bacf3bc1f547a4b5d62eb6219cc134e5131613a858feef06a5c4aec2e7d093fc2bc26f4c2a45c4f160456c40e381ea86957a1a1e618151c4c49bc4ba0f25191b715961cbee935bbf5c02e22d219a76411709e06224016ac5aac9499b5b237b80630f8d6c490af1ec73cb5cc402542fa2f6d9d3653e0db413f95c8651aea246fc0289bf7b1138e5d02ea6369ca52b3e9951802787955182d3b223ac08287a74121838f8881385060f753648c06295010e3d265e67e9e6a7247ee112a76b9845d48f6ccd7bd443f4712f7830ee56ad2bbed3d012bb1c66b7717bd6960515d8d1714ec18a6e268ed9e286f20372ba4cb5a9874f2dd328d1d762aca619bf107d21489f5c2ce4fbb07e7103a6534f12d315c7227007777769c745dd57260446f07ab0c7b99a0d22fedef5931b5c4fbe2fadb9c6f586032144fd26138e97ccb85baa31354f53f05f64781457ab4f4b263d21b7a587ab427c137e71ffdf5af30ce11d0fade023ae8342d7971401eed0da656919cbaf0d7946fdffc5b3ae81acfcc539b725d9641c891bfab50f29f66a7d0f3ec0346ba756758d4463b1f0111961177bdd83e35a096f1e95113435405925ce6afc7aef3938fbe73f82cd148b1e0456dbf141ccf7943bdf96baf2b89cfbd53ba21696c730514b70d0f1570a82e4612d9c8a62f24b37dddd183ac9c1f710c2c2dc5aaf63055432a3bab4216b850847c657632b34c9533e58370d5fbac321012894c015d934e2ada1c71631e246686d9930a6b9f98809264bb176567911eb987aa6db3916442a5328fa853a8ccc3495f589c317af572d2bec434d434652b33718a29625d10198479abdb2d9f41dbaa2bc088e564513669d0f450aa93787cae495073309b33b71c85e5cd565b41de8691ee621031dd686f139ef27c4a2289fd73f156bf626a5c31321da45bd2009c94ee56aa3ff83e31f65214dc9c4483251e40b0ed762e4b35fd89110919ed21e2be48f77d0ab0168c0f6d6ecaf37f59dd954269bf38029aeb9e6072003182cead0ada91602a29c8e28155eccc4da3de45d6de0afa61d0dbe49a61e4fd2cb0d65b6e7dbf6be4192fb4033d182b9769f133873b816dee7c3b04b88cb65d3ede17bd0385802013a2328f94b65526a784ac25876b9083d574e26774df285734b56178c049429cef9fcb2b50d2fb7ef03e31887b9deab6032d5d78fe8c44fa6d77da393e832ba7fa8ab8c52a4718e6e4b76a4c6d0e5f49235d725598acc18356d02875b1c52ab87a1020c53d01551074297fa6dfb7c4c42e9a92f5f7da428d0381d65b88f281647202323af4babb82eedca24c48d9592e314ab737b77f575b0509668fb47da6a7bfa6d7d8d9a6e8bcc69af8ca0999a2ba7ffda41087debcfa410aa29e1826fb72d198ff8b3572f8477276f74daf958e350e1a776faa15ad461511eca506381a20ab188fa11b23065726a51ee32f02b6e268a88f4252aed5d542997be1ec1b514f99a725712fe8e41c6f6b62619d9f3a3d49f7936c1b57a8272f6b5257594467c941092c2afd0a21e7e17b3c8f653c8962675ba1352e4a7de80208bcd55ce6211c0bd034be56d232ec904747cb2341660bdbca8e369f3e962a0174d54ece4614a64cb68cba877974f9f7d468ac6975bcfc2336ecefff2a1ad072b2f5710494009533fc083f363eba48b4747e882fc569f1d22a6804d169eb3b672bfefd99b97c670be6ff4214e92fbc40ccc7796f39a4e97def5ecc884d00b724c36a5764e205c1911ec7b288be96691471fbec2a27c8145be45cf84ea4f4f958a14e8bb6c7fc26d42675c202d5f532f08d08416d61d0a648b353616b6a5b0520d6d743b6fb197525b00511189a167dbfaf079b24cdefd2e62ebe8d15ef6255308da82f939ba2d2ace981b3533fab9823201c456ae8e264b0cfc034348eb61f49638b6e45a8e42fa9643af6309742c360e86372c5e44a873869107b1b281ea03de40c68b112dfb7047cd4023194c7a6306d558a3ba88e140fdbf26e8a7f49bc0354b6b6cb0daaf60e7777bd34b81d7f76ed98b2be5541bf6ca1d1a1fda2174f12baf51f687a32bf39cad870fd0bb86bef0c0c9c0908b69c978562b5fa7fcdbe0f166d84db2e883ea20983133a1760678bb1e7f06f1e464aa088ee1d83b57386223eb28ea88fb6412969ad16dfe9992874af33472bf7ff921d66f078b3be7bcc3311a40713aa3469806e343a9bc1d40cdf8c11bf99f0c8dafaa8ffa1ec4c553b099b955531bb3e13771c27284b97e92005a727dfd14573ffb7a6cde8a17ff714577d32ce89246595cf0f8409d19482e8a9674cc7a2bbccb12595cef8c39bc1b1404101c0ba8b63b759d6c3b0f06f9de013443ed83446967b3e770b87880470942046bc4bcfab9e95fd0f38e2b7e7fb16be5e23842a43cecba461e6702fec106b5eae36a710152b192949ff8deacc455a0e1ec27daa91bf278e94306d1456873a03b816a26f5dfd45649312459afd8a2e0dbc60890e51b1a5dfe0195eac30200a1e645d2d7f512949d9bf4e4e7c5865d6b9e7069696efd39097c999c63eeba4772f0eb6203685393f2ca0ed0b7eed11d6064e62a247eb3557c9c6154b7cd386405d64d95c1bb5ad16137b608cbe8282ca4860c861fccf7c4ce2346692807c80202e88b529db4edc55452a103613bb0e8757350ebc3cdecc7485068f24a012137e1efeb4b2c0b24d09fe8f38fccb32b5c99769c657e9d17748587abb6446e591414f2f8355bbc8f63d89ce166f74fe29108e440d37e6ba289c4d9a1d037880815a165c923adaf956cc8308861f757ae9370938bd5e34368d13a5e63f15d019fe3067d6b8330348b0b1a842a68ec511bd1cb05e188628df754a13b64e8daac4865a6d58d236130cb662ff2751bf6d49cafd646c5932a1e6a6cb00631f0ffafa69c600871bb5a8145aa66b1b401002b5ed76b18a87993781410e14bb9c21832792625d53a647ee7b98b273893c0aa1c0b2019f0651955fcb025d248b51dbb4e77e654a04167d7be98f833f0509fcef6ccb3973ee98365d2b1c68be75772bf256d8582c73106d193094d20b9be0b9968e90586f91704a268fb8b0990034bddd83b09d1a27b0fe887f7e044cc40938e73d07c2af6969a27c9e4b530caac23896d137b71a170d49d33349b1403e37c50d25666ed6666de28a1ead83d478b0ddcfd479194819061c3176cbffdca3eb6d54ecf58b946c593ee2906442fc2cbe890f768b8e0f6d645de5620191e56936bcc14a860892648fa8d2ba44c02068de84b6360ee84a93273b7ea8205e95407a6f7effefcd90fbe55edce5c172c75497662019016107e784fbf66f1f7a25d3f7fddacf61525095670808a20149f5e8eb8484f6d9a327bd3c5dcfdd8ef40011a426b59b4f17de9c8c6ea7bbb41f8805983abdf494416f4437c6a605f84553885530ed2df83a6cc9dee97a6dd3fb7801836fdf43f12e016a28df8fd95caf12659a68166180ac9430a1fb6e07b17499fa628d5ea0c49810878cb2b1d78707de2c69b4112da08ace2c531ecb54ef81fd555cdd4fe06b02053ad4932dee51506cc4254e6a02e6c7cfb1d882bd5d734c324c3898167d74fc3690eabf5fbd6af9e77908759c1203e67c4af32eba25eb496d51ea7d4034901e38e401953ea18fdeea7e649f0ecd1d6d98be693e289388c6edef005274f366ab014eb3275cbc22852c587092fe7ca1c1dd6230950aecb2bad320b2370faef9e422cac80e82b428d95eeedba943967fbffa0e59c2660139f63c0ec6b967d69ec516fde37fccb781a11a7e32bb633d05bde6475d5e5cb82e1e8793257af3d6f0723084aecbcd57b7bf203bee7227637940493679019f8ec12c764ec0ac31e1801628c8d62a226e1836cd1c72f462a75739337499982d4f85ff6464e9705e23e0516b0b12a3395525d05da6d067c734ff7e3332ef257a84e977b2e03e3b643400c902ded30071d8a755fa180d2e88fdfbf809f7c976b76da0bb76362b19700ed6e013b62b9587cc5556368f3e268463e3039ffd7f4a4a27b9fd1015398a69362d5653b9678736ccf2147aabf0df2051524bb34f9bc1464c660c2dbebdccf49a6ccf5c97fadc9f78cc88a3d1809205377c532fda9cbfbc53811d62af1045456fd6a70a200e32ee2d8f32ffbe6d7aeb93beed53748a2d1eaf185b9529ae5ba83bda45530ea3bd1b1e3e2490728a0bf8ebd8ff7d10c6698a0e934da6b39d936fea506d59d1d1eed919fb027f926de390987480e789b277ef8a86ab0757f152ff01543f31efbda73fbbdd58d89e664f050ddbf9964dfa6332d0d0bb2ad9ff735d4ec62a21616e79d3a4ff6d54e8d25d8121540dc79afbad8e2f953c6de88433c25851cf05fd1e95280e1e0de9ca17ffcc3105c41fadc31c761e485a5b33c8a99289bb6c429738d0ed7f781fa38337b99659ba167a5a25cc8d298ebae59088621c3b0d0263f7bb66a04cb417e352b4c565422f3e770270b6d290e186f606c6062b2684c657d874d2d5feb5c8dfdcdf2873911e5ea1e1b82eb2dcc76d7b0b09289e298cbd1a74b428459daa9e8fef7abf0e52da5da3260371ed5382a29058b534505829dc54ef9387955f13e752f8ca3a6375d0ca2465558b4bc53a51576c6c1249feabe716014ce9041a31fa095609415a8cf548a08ef8e6482393b4e214b3ab1797cb1d263795c2da0bd3a9cde19500bd69f0a429a12c91fcb7baa340d32f0860207298692f3ce74209865557bdc39635c9659e51e8be6adcb8488dac96abcfd00ae5ed219cae5b5e6244772c9ae6aa74088f8f3923e872743a6a54284a8f7b2f855a536e374e539faae5c48a832a11a995e714e8e99de6fa4e2f4a6a8d1fdb36e6e9231060fd6b83c4a475ec20ca4def261d0f3ef46020935b9e1392950631e533662f045293e4213923ca0ed857969dc361e01033528ce295ee530f185bb0efa845820ff7aed98cd2e766fe25de23d54bbebfd65b06e56de5d60b399d56481cfceea43b3974d790e4af382b3958196961e21892fd6e271de44fc1fcb0d4ed18a39f4818aa5a05e0a0d1b1ecac275c861f0f0b83352d96cc42f111170500234e5920ab6c662a3894cefd32a3cc9bd31ee8f692b1342011c9262ffa78d4fc78d0714c4d1392e333a8acd4f685f3c85b184cc69c2e6755e54f72b41dd9ff7b660c0d0b8f5ed36a29501df0199051eee8f5d79de282593b757ceab9006285c3d77e7b815a54421f0a96823d68ac244a8eab5bf90c7fb7b82a2a52c2996fb6165153fb80bb494ac0dfe5a773aff44479ba4810eebc439c62342cc7aec1e773eca5f4376ebe51f9cb1b5479f5466cca1919d05a82d56aab18255a45218eabc033a0aa27f7960e75f0f64874988e0f43b13f13f1585fa0de5721815363d29759560f3e03cb1b5e6cf6529a1088a5df138c708005d9c14c702ebd1e3c441867ada4a943eb87b1483edc7b960ee8796213de96309e0c8aadeca9cd0cce1372bad8bd7228ebe4e842607baf8793cc949f6657c1b1605d99ca1f06e9e8b6e61469ff539f63a0110a2b2cccdc47bf204b00e741f21bdeeed31f98b3e03fe391581070db15b4ca0e2246225669db65afba6e8fed008f8023e4adf6dec553e6e4d173b10e8353bbad062109e038fd3ab71f11c225aeacc0b6d481ad02f5a9aee2e7290c11376ee48bb52305c39d1cc0aca546a1ab9252742988e75c105e0b903f8fdc452b61e49c7fc84c621994589abeec92eae07481577a5318d84cf1431ef176c23a02636593718f08b9c005d5525c4d6be92dede0fa50389acf6c8cc3e38e145280b2de4ca4d8ca4ac4cb46c9cfaaefea064aa97a1abdf86127d3702568b95f381039e86ff538ab16d9447b658829ed9c9c1d392f37e0267fad4e787a9a03238ea068c540bd59404bcf74a1507fe278ffe75d23ca3808db02a4f7328f86c5dbebafd2eab17e0bf8455cf25a209e260d0e4207b2ae3ff3e451040192d9bb43ff590f7c632a2ad2ad41da645b392246484fc496de3a1091cb37e8a2fc5792b26c125dbf215795e49465d1327d54ed56b2c44dae307ab5984aa93c076ee2601aa68b4d06344e82b904612c0abe3df258f7e784dcfbfdc2e49812129227b9b20aecb78209d3092e3d2339a5b558ab919c8a62d038447d0e55991c29d818738f72d062d7240f74cfce623c0dd1c8d9edb719715f379cf3f6ddc276d40965b7de9d018c95c179d69499c707fe7ffba3afa62b91d2118e2b9893bd44a5044f786408c187c38ae5ca7ec84e04c742eda9a716743befbc73d9d7cee5425fe76ac4da6f751d6212c12be1b99366ab07a4dc183c71dfc0c3eff5f2da6bdceead2cbafb5ed4beb9ea065c038f4e249bf8c9f977e225c47c7e91b8ca8ca59790ba6f8671560a4c6468e221fc1ada5c9dc83f11944cc862f60c511a4618ef4d68516a9b8080f4208f1afdc30e1fd246b129145ae385c9b504e1eaa4ea601f51163efc8ede31e4d0b651c788bf714e25014e3d91fac3966f6be722bae29fced1c5e8cfc0661a4679466654ff5a628e23a7498e041708773d0815b2b29e8e2945089e267a60e6733afc9c8b58d674f705b1810a89479fa15a456b61d4ad901f54e87c4c741098637f91e0ce72bc1229578e4b645db976b229e8cb3ad5d779417a277090aa2d298235d9ed0dbd65edff65c32e44f3c626c1e813edd658087ca13ce6a064b9dcce2fe170d924edb6894b3755b05e9c206088a4dfe85080c82568c7636f25158b9b59d9e8c42a7bc755241e2588580529694cb047da6cfcc50371e48329bbe2bf9379b3520c9a0ba7160528ece5dccdb41673533bc432bb69f9aaed4999404a4d15633db2682a9317739c4d27569c5bcadbc40e3dcbee85e2214eced603e768c296b8971bcba5ffeb8fb54c2f9ae45aebb5bd7344eae4e640ebff4f4590622a987c70ebec7fc397bea1ba3749272d45c3d884c686522da69f6cb4ae335a592e71fadfd0aeaf178405e52d703c6c17aa26e1f84ee228f415e31c12778cc2d324903de01c251de4232c5b84717375ba9b1353775990b362d92a278c926dfbf33086601986bab54f1db14d655567d2f76b61bd7344b85f9f40b1b048cb9f7b2e7a938373601af7c03c2713a61144474d2aef6965c38245edc758f7da6d17582cb8868814808b2ac9851a7870361bd8c608f92fb3170d97976df3074c2d0d758c92c8c61f774d9564a1c3a0910dc5cf3deb2d91f873d0703b82318f92348b1eac53d2371ab67a6ad0f29d5aee6497b8c7c605242d5f8f25f23f3dfd773206608ee33c7a5bb73c354352ab82e64bb30f370e770ef98088099e70b15b803c1011a0e25638beeffdda91ef6a6e6a425a18b6f654c2569f971430c46df6cf620448e587762f699f272c62b178cfef7295de5baad53847f103d9bcd88198a0d5d8ba84f539b9926b18516bbde135464d1d3cc05e07e0581fecd9236a99a0058959370de2a1f0aeaac96571451ae84d73810152d5c4a517a1b5a189a5aeb5bc716f549009faa6214492bcc1941480603377e55144875514285216be4d2a73b0fe41700d3be123816c7949e3772b5ca538ea28905abf7a1cc19625ce0b3def3341284ccfac6d1b852c37634b62905d2c4d2095184b97da48c7c348410880c47a7cd354b5bc8fe8a52ebf2a32f742d6ae27ec976d819b51ab0a2f9735f474aefaddea20bb6fdfc262bfef32db57df9a451d02eb7bac5c0320a7a17950465dc7e6d1297ea24d939f24f64c37f7d70b3e072de63d28865355f16b51cfa464d0f1c39dd1e5e75c08dcd4e315c5773be8309845a65e0a5a3b8daaddf08ffa87d51a53e44f882b6d9954b3a41be57cd5cbefc23891c140305f28e84f0275864f0a2dda2cd9e9281cff4e7951ffffcb1ad46ee8470d8a261ea074526e9abd50321e37068284b1f1caabf5f79632bd38b46be4622ba54d33999453a4cc5654c9042ec14614135b968e3261b483a4c1ca27b126d1269cf5c90980648de4b6fdbeabc9edee858bf66fbb05a609df997c10c43094c15ad6f7755592c9f5271a92b34b279bdc824829862e8a43103098a284c2c8990302957f4585b4cfb9254cebbf5f0dbda1123175e3e463c3b42fbf20119698a1c2517b1eab4e7d305872f9a1b3f7b86e1f10063c75467bee775d900c6265e3a02f2bc07574679b5389db667ae673856f112ca471108b4142e6034cb5c0e183d0c0727cd41d610627b7718849c1fa3ea9094d8fc913d7826f7864aadf5190a69e295f9aee412ba2e921caeba040148db42b8c8977aa479b4cefd4b4ce351363ef1f3e4cf921284dbbd907a9faf8e0f54aa7cc7c3c91acdaa8435beab392fda1568e1447b3adcf9f2d21e3f91f1456c741c65b063abbd3f087bbb6d244971230039625e7f10ebb09343b6e0ed4dfffec26560f2ae1966c47e364e599bf3799fcaab12fd847263025206d3912270afb4976eec99e14963e480d726f7c329676ea30fa4f2a57c94ae87c3bf583edef3d3028fb3d4e74a77920df40bef95661fd7931df0e07bdc1bdc8b987265a2f93b666a40f9d3938fb32eb274dae032d3d6be1f5f04f6482aed4f2025eb9e37de52d6f0fd8f3b8f8c917a6777eead1fddccfe4d7a82f4b7afa445a097184777f6fadbafddfb1dc8abfb0cb45fbd7bb3ff80dce06636b6afdc0b03a6b8d357bc01dc4a5685cc2713119ee8ab0ee7d6e717658cf8b040e4a0b301be26cf506b57130013a72eb795f180628f70a7cd41b39db63da775b678bea6cd9a184fd4e8fb1dc0b36abd97c5d07cff5dced7851adbf244a3e0faf38e6ef242c728c0b202ccf2030c7e8d40a96d4625979fa11888b64d321aeb83a179ac1aa0d2427f6d9f07a9e6c9ab643a616d2a48ac49e870fc9a44426caf68f47c6aac8cfe22564cfcf2b08b5aaddf2e52318ae44f86aa063b936048e6d086302f8bc1dafe362fa98bca6cb39a6dab38f3f2ff3afbabfe84a491416fdaf29481c01ae801ccd1b98aa6a9e5e33792d95758e839ec37915820b4a6bbb326aa8161aaac6421d1a442e66c31a9b00cffab06e389a460580c2268d982618001eb58a580b2ce840086d7ed4e3a2227a0bff9f478ea4392158048e6d0fb4f23441b9f721a9c4976cf80f156ca9d676ef747a63bdb99f67f27a422af0d7813af158e98b49211f699686fc390c9035bb23c322c47dab7512602e91d5a7b986974d52a8bb44e8b39be15fad5d2e8090ba8db73299e815d7fdef86835e0b116fd79b206f2d21b81ad82b04f0074287d4f5818b70b185dc49aa7951fcb2040ed1b7c68cbffc4fc983c5fb81b86d5235e56cf85ec3b044dac1b625a07e1776a02cebc4e15e3a4a7bf477ad474f579dec819c171aa917a4b3cdcd7f99fa098856bcf43427ac0b6789a49cd85d2718149831bef3143824aeb1bb154ed9aa01f86534be15e93ddd180b8b77ff0b2e11f480a1cadb7f8d2a4f0c7ef6a37c14b95b9e9aabc93506f272b65e4d1feaedd6a345e02bbae770cfc43d9c8ffc6aeb05633a7f780e77310131b5a76408baa91f1fbbef76546d617d5272c6806bf48555dfa463ad9373e2643d49b5b185f37ee395966b7c83ae2d971142cf07209cb08c45e46336dd5e64406e258c5b8e85d93a0bfc383d2ada657536da109e877b487bf47292932ab6c83e3f39fc872e2d22d71aa33c021a969113f755a8cacc629b5dd2676a7f350f00d003b5fa346f0b072602b39e1028426f03a2c45dcfe5df3d372fe1c0366f48ecd35025d8dd486348b419f510ca770466b64bd1a536c8ef1f5731c1d1a592e9dec25a7dc29efc06d9d28ff0756eaa79d8f303d0ef687fa9dd1c9f0dfe09fe19de463f981fef6fde10c69acebff1154e2f9835890559e4899ef290a6ae20cfaa6cf8676ad9cac97746402a272462cb1286de65d47f4074108c05b2f3939580c206915d28b9962660af0827213495abeecda7490aa5dc1569cff5ed63e7742fdd3b484e0ce39b0bb127967f5a3767b69cafb077d0ae385f9898a6563667f16571de39601b480b9d6451b26fec35855fcf392aeab37c360f74ec773f0a7e3272c42a3934c01ed9b84eb9f07047c1e19a1977df60f572a30c2eda44996b4d953fc3f70f0fb3c9c3bb8cb2ab41bff71ceb8fd79bff3a7d1ba9eecee8fda5fc43d71b511970f6d66bba1a4b8e554c5ac0424c6b1dff5ad0fef9607d94bd930858968e7b8d07e38df4b9a27d1c37d281edd0e5d0d05298267975ffed16e15d4793a38073d91dfa61900316a15a9377b923146fd002e38b370c9d7c6185ed2dc862b785d78a6382a92765fafa35cbd4b2e9138f121331243f37ce4f3175c4af9a74e4080125610faf5d36c58fd10e62d514704b9caaa5f43819214319c76dfaa125b3ff662a67b17710ca1c8c91a34806c2a5240f7489f54dbf0a0959646bcaa66e3bdce16d4f736f39830afcb3fb974cfb6ce6ef8ea8b3b2bc860083c86ff1c9d99e46dca861a7a3807a2a276ecc8519ffbecd4103dddf22d42bc0091fc7ad44423b5d79ee31b18232565252ea4fea291a9a7c7fcc1ce409ae3e617a469d303d4a9cc06a7e41fbbc27623b2692d45a9e547aa884ebfad2543c36646b0139b0771bfc7a20b702187933d9eb0d951f51d81f208888eed3822d735791d8253c3f7a377c2d5ad142280bfa93c8a5680c8720cff52b699773ceb8e8e96260f3490809fcbafd290b2e4678e9d7211c0c2ca25750dbaf4120f2784374600c80e6f798732ce281e0275f47ff41e77bc35662c56e7946fd07ccbd2fa21f179aad1afcaabfb0b20f77716fd2574c83feb699c22d4cfbb6f7c13e3aadfc910b683f1a18204a12916b6fcd73e5ef6c4074b3bb493145178d57810490f7192f8e1e1e565baf4a255c916a025671d09697ed1ec65016b19d6b61900810655dbd4889403878fe3fdc9f84a78e41ea59944b52f9921ce20bec18e00b5ba202be7a8ef82120b8b532c6e1536f142a8173c15e0e6319614622e6c3ab72ee9caae25fa41a474a432909fdb8d1ccee6aed7db69384b56b302bd5e37ddf085676eca7d903b98f9b7be9b129b1545e4e0db97f6bec079f72213286ffbe20158666a349a5d919e2e5eb0f33b1f17b804021e7ba7c433db1caa5e1c78713b0beb89476452e1c4ebb5eb3bf3a62a10ad9f101621fce42e59ce55b55c9116b154a2d6fec80425ad9c9cfb336a0b435f70a5a23114c7c3b854a8a4ea04dcd42501214d196d0dfea3c02dde0f6ff5df7259df82d445b7a6be74f1ddc646bf9791de23668ed5edfcce102a2694987177f0692b36bb8e2401831db04e82d590f3bb68d60c9ce6f7139a4a98c90c864275e0542c0245d3249e8eb41f925850ffe62a98cab9a194c9d483e0019c84d2c2dbf9895a918c88ebd8bb524776047b44beed94a69bdcce28775609dd48c0182d7af4db9cc1349c300b90ac087af6d3b53b4a3d95b6fb618824d962000e8754b923d06f0fc47ac9da06d6ada6e5f61da45349308d0ceaeb5b3c44a017ed561398b8f8abdc708f103d251929ecb96a41adac0562de07fac32b7898b38da5dd83740dbdb85dc20441cd14082343cb6ee91f6a06b6150eae704fc1c2e2a732d0906891d08a30c03d1db3fa126efb847818753662a029ec639c5419dc9a7498728251a6c880ccb0790c6613f3f25e6b0b178e6dfc95627fcfdb2c3bf63ae7d82dd22684a5b0144489579fd35ff3cf438d75a51569667851aadfc43da43c011581a4d2638275cca0276579298dfce0d5c046fe146503495228faef61414e886836072bd5a10d0125c65df73be7929a139a2ac3426afaf303d7db9ea57ffe4185a33fa39af0a6d5601e0e7136b85ce665d6480bb3372a9fd21772f5b4f459cf6ba64159e79e6013b1aeae6e435f54aeab92853ca6a1476e50ded1af934fd0c4737b7137417d7a800192a0a41daf4011168aa91d303f668b9ccce758c708d50cf4af2a34c74431506386b89c3393bc2938eb7c424a67d7b10cec672bd05900fb9935d7ceac895f9780089d12a450f8888a005ed4d72adda55e878c112010b5aeacf43af76e9b15b073e4c4cb49c261962bf14bc0b083ba7838f6922ceecbc1108c9ec1509f34660da28ab8a423be05e26c32311a1629537956666c0e7cf627068b7b28642e7ef81025eb1e28b668b3075a64c929e9384a9ead5c11561cd85c6e160b7a2e1ba14f50273cdaddd674aa1543d29199f693a7c30b7d1e07acfa022f845b64a92fe3095ed4598e3464886ec8ed1f90bb0c23a5d1d4ac4bb9a568107c7b66bd9f5ae0cce87714ca5c7efc7f854b0a301a02416b5e2e514ba61c6fb90ec32da6f03c5f18bcd08bad6bf74b09d9a89d8e63365d68b41f4f859523b59d3bdd771c6da418b239735288887cf2e410455bc4c82203bfc082107aea4e6a62ee28f6eedd0e26c8fa70a73ef058478e5e20354d2d224e5f48cab24546525c408d3d9f6fb050c2841466941dfbabd3e2047e02d9e3e1fc4de9a9fea5263484ce67d357c5301d2cc13aa48741d7dbf993abdfa70514b2b4efb48835e3382dd81370c9e34728a37e3b9a14385593019baa3e110332ff87fbc2a43dd6333ad759b6cf1091ca17738b5cfbd2da1259118e589a82c82b74498ea5b3e1c74255d39f9ce3758dff603616b74e950fc45fda00267f422a230b28654b9ca919d47a31c551d08bd18d4e19ba67d2e0bb8db65228ab010407eca1fd24e46581a482b5b271193b5dc469ae4eb6bf1b405b48cea8dc13ce02d35c3f978c9889561bd7769fd71ec8d6a0b6756e7503aad21dc242a8ba8827d7d36973d4f2740df60986c87d1bc4681435559ff74faeebb15bde25e6ef953627cb959e4c5e86a9ebb168f8302e242987e54765f89d33fcc018ba81987416892fead663d39d705792c593562e81ab0b3f801386644f59ada39b1434ca26b5290653b9405ff226c2c7b9f4474cc20215c56179afec3f225182426ef9b6cf052351c57bdedb8ee07b0f87b6fd51016b42ffe62950700cda1b60aa7566c7b9c21e18bb3d7c346efea17e5cc2a1d5ca5bd08738af230cf6d28dc351d1f4fa18adacdb8f3e264c742398b3bf26ce2892cec9d0e09594947c7b71923867329c03f1b915822fc47dc5cd489cc42bc884970161f8b0828ee6fb895b7219619e25b8ea728560e8abda50c43e220b08dbe73be84200afde7a8580f5f411c6b4b83d5f2a5a5735f7a32980eeffeb55cfd4880050f06a7f50474d0532b266fdcb6ff6ee1a27076f7afecdf981726ffd285f73fc442907fcdd9d57193788a03377cd9c0d19259b5eca454c712867712186b06abd68adc3307a074d6a8c34e5c050ca583c0d3093407f9d4e9977e7e7c6dd4f7172119b01f514edf10bcd77f25115a7e83e011b40254df6a81e263e9a5aa2ee721bae2768e8046f5fbf3aa4d00566a4c80493306b277b9333bbfc792183e76a7d3a2f7398aad30b195bba4d771aadf7b0c9d423b175edec921434c0ca44d743811fac23e6d7c3c201f3dcee23746df44b9a9e8723d4d5e30f351d8033b5a5987415cc1b0382a7ee9c9b7a8ae1b603ba77c7c29237cd6c9e559ee67eeba3cd592186ec7d9ecd44ff13b77bf46728af37a44936100656dde7620b7b6486b4c181b3f878ca7736f0b765b0e5bfa4de5aad565b9318c555442824cf4bebff1e89adcff6413008f86fadcc404ca276cb65f1629b33c1d7b366ca20e6123491dcb44bef654abf8ef7b27b650b5b6bf6d5d0df038c4c19c7766ad4a07a818dda00c41ca5da754612ada653b4827202824c6bd3b78ac9ddd841bf1760ed75375a6553c02ef995c10ae5cd4e2354612e652f0db6643f13076e523b05c92080aa8b73a326866d786c44e185352db2baba0196565cbca899c83d336bfda2d2c2fc9790d354cd716d04ea330ea68e24e86a83a1df63378476fe0d5eeb76e38b0f831074511cb1004b94e29f1823e933902161a41db1ebd1f7cb3ecb7ddbbf154b1c4cb166a000e9b242444568b7b6a04079245ae3650282c1325596099ce389622575f894a29f8a0c9d67cedd6cb169260046ae5506130f67f23f9fbfefe1d8338e619c9574134ff4aa6be89be25bc8a7782601e85542ed32cb0e063187e59ebd329b0bde31c99e6c7a2f79f3fa30b7fa04d04e6127be658e7a6450df64276199327f52585ef2d7a18efe0396bfb6150fbc7578f05a949d0b561ce0e38320d8eecc9d8abf2f4384b4be3f39029a859243ad6538297cfffc43625b70691adaa733463eddc6a802b439f7453261e381d1c40993d43a5335fb942749619556830cfe2b1622299673a642251925fc39cf57bfbf6341f0ea4d01f32696e290dae6786f2f2c351ed029aab7a88a29c4afd72467fa45d6cac3208fdf11395258c743cbe82527da650cecf111f0d498dbb577c241f182218f70dee9b8a3da7361d9687e0462c034a9d7bf25360c0a531b05c1c8fb1d129bec4ea3a495d13c76333f8dcc5c35a4fa1fc9b9cb16737f50b92312f17fe3b6133b44f6dbf68ef220537379c07361385908b0947c480d3cb90d53850cc802d729898780bd36277b7562755e4d73e7d9c28c6878e6fa2f98e6bccde10589b3b71f3d029f1cbf9478af1981ee5349cfd532f6a18cda7ba2fd7ba1cb53b811034304d3070e4d577968a7f7feb9e555c14407542d733c88687ec860f40e3ee0b7040ad7e21ee9ae2f9836a17ea7e08ae89e079ef098b1ce63d30b9390b4d0ccb4d21bbdf54cbb0363121e5a6bdd7894ee5cb09b46016ba03c13374ce9949b03d53169abe9e2c631c41ba5057100c641f2dd8984593a7a06c1f035b237667023b68129ea8c0388ab8b0a58de7252e28ed5e6583a8d4e616d5fe7138420988abaaec6913e47e453f52fdf401bc1b60bab02ff1ace81a0318ca15b187529118b4a0a219b7cea133f316b5fc32774221def1009f6600b883ecec743330daba24bda7725445ff8b28bd185a56d34c4fccc1d50794e98b0aad46cee4fb2576b65fee04493eb353135990d6938a7dfec390a536784901d3a0dd5b9cc0aeb8609b50aae1311907df3c2c19e4ef14944536c4a5f0705bfe694ee529f7b5053e911cbc87e5590f137455a68c63fbc29b5f7f1321ee22df1cb828c8f531bf6b749722b245b0f00e8e41aec65775b464a3182ba156237b907ce0258b6fb9c13d3f8f2afa5417006c8bf8d890fdefc7e9fdd02cbab748e3e0009d7cf5678f237804e582154716c94c491443295fd6b8d67bd904c9e74f98e10eec099f06b76fb1d38af9e2527a99045600dcf6b7ab8875edd19e88b8199672bc5cf5448ad14f46012622e21a7ad56d52c8c2a68d2c8871a11ddf084f92d63877441c23fbdfa422bd5854a7b162bb69d2641e91d0fb2097696e9f0b28caf64701683492b04484c9319fbc9b0fb10069b23cffe4b0656f38c15508cf0d0452fc7989c032986312982678aebddd672d42ec804aea919f5b5166097517029513f2227261bdb44cfe50f9d5059be36ae94fbb5565eece84b039c93587b0a796d36606c104ec804832b5ad29a31e81dcbf2a85cda22165706358ff24d38d35be9b338d9f0948d930bf39d9b9a6a721a5011cb501e50e3f632b50ebb5be619849cd8d1f31734b98b863dc9d973e2247f12e33d8a3c36edc92ccc37fd271057fef4164b32d01580aab85215bf260d6e8911663aae5e0fcb1c5c0e9c8cd8912540ccc71e302218d5fdaf422a78fbff3ace3da505430fad33674debba3cbf47d567a0319fd6c9282f289057f2a70cde26d95864120f1d7dfc655b7f92a18e9f9e03848e464379a91934793d44f4516863d33096bc23d8fa2f5ac537fc9aac10d8f41f558cf61ceaf273596d9d319fe4dffcbe044f5433bc265a5d069f5fe668d723a19071d7bb3cbf5c27cbfe96205fe98d33b45fff5af61b73072cbb401397277e6a2146e49f47d1e10a070c741d3cb8cc51212411aecfd4ead880896173cc42b0ed4b40dccc7cde0f4e54b783c4421bf4e813dbc9be343540f0f9ee2e6affbc7689f375a1482e12dc540c89b8c8300dc12d201fbffaa5f4e4577204b62d0a6ac0432c56a0e1aac8eda527338c6e8bd15681a00f9bf66af15ee695b6d592915242aa04145b0b73645301e3734b27eabdeec916776e1c18c01d1ad0533e1c951fcb22cd2c1ab30404aebc2138ba91302203f123fa4124657aa7b1c4b580c88ed4a88f2e74be7b8b065ba5998e06ad6c0cbc03a164acbdadcdff2753dd1f526c94839d50923b9fbbfabf0300cafc14626bf38ec6f0b3645cf8ca86f9b5da8b0c0476cc1a469cab12e98dffe20b66f0b5fe17cd717edd6f766057c02b810309925f55886947ae66cdf91811d3b31a8913a80dd2e5e2d999861d0d575b98382de140393c9175ab416e3d2f66064b98e56895d74902a78686dae46e5a363fa327206ab5e6610b7f5a18b8080f0eaac37220490594116c70bb14dd9482394fe0a4803d0571225655a99a2f56e447ab9eb11b99ed9024a15b47cc1be4ad023e26e2688797863b5599fe3e628a9a367d71311bf888c7357d6b25cf82bdf594e9c3ca7c4493e0bb046bded00da6464ae635a8afb6436206613fc1a64d06fb789a71312b708a1710f48d98d4dae5a6d348eb1559d2c4638110448891fc7e44861ea5b57634aab29055f913063a82a24c6781b3ff57ce0f0325f979c0997ee5202f4b83134d71c0c2449f347af225aa57fc7e864c6e54dd234d9513c5b0bc4b77d42158cfede2e345455d78443388ea5c2a507dbe464007628aeb182610e7e9b35148feb0783b80241190ae78909ad95e1f2b18517f7e5cc145314b2b96eb17ea8f72817087de76aa903898ae41e78da8fd6fabab2b4481065043f569b37367ae28c51b96fb66404720e5330b81147448bea2c34dc813986650f7ef9b3b0eb2b550401dc5944211a9e2e31412f78fe4f6fdb405e929748e120b62d64d2c8b417bef51cbfd523bc0fc3892b5235c8e9a0db93aebd14824b86239dec9484fff3bca8579f1e7b6d42ab8efd45612ea506022760f01b2529a7ab0db17900ddac3efe3a7ed659b6f435dc5e30330568369cb629fe00956cbaeaec2ae6d7157ab6402f3a3739c0b62b662b1fe4f50967562542beb4f05815480cb071d1c56f38c4367581bed0251eae8344a30fdfa6ad1f75ba3c7a5094c04109eb1460c560786ac30ee25803962fd35a41241dc6c1ef9533c7e73f3fb4ff4bb32e0ccf1ef8d9e4b4afa5656eb070c13392414ed4da36327304b3b7a1307c01bef80713aca47bf83b8c52691d460d9551b99cda52e5d46c84ade503e5beb3231b0a27c8678c72026f4cb4f992cfbdc7577eb1b7ae2855e2d9422eb9069c22c786d96e2f263ab37b937751786a18aef73c278dbc3b755988a353db08ea86cef41a3c06fca8f79f3d37a239c2e441683ac7e303bc9a8abfeff8898e66a3c04d643e6332bffdfef5dcab0b11a8ab23adba2c16527176c070f28b1285bc54dcda0cf0db18672881c415d531d035d3c8301bbe82422f92b0bf21a391870f587d2a4f5af804c08c0031d435a391d6c1ed7f26bba81abb9f30e3c64485e8891ee3e3dc335052e878c2af0ddd99b6951ae0dbd69f2e61ccd14fb14722faf62a71c3b5147c0010a69017fd4018d41925f0d879890ae7783d061eb592dd859045ec3741ebeb946fdc464c622d269be8b7ecc86ac2bcc74d7d1fc2dab0b7c2bceb28deca6de87843151315c4adca85bbdaa35aaa655363340776b1a6f228178f4ed9598f9c247c6296de9ce709aead83bdf03d7a96534907c4877f67e4251714aa1c0c3b0a5e3a1b33d6b8d00a112edd6cde68ef0405ffffa0d83fc7e9f4d8f3358356aa4b0a156cc9933a47ea5717c065d28fd6c8575566204e50f35987eff7a8929839ade0162de2e70a4ab100fd6e7566cace30428f7dc63c906bc9e23143e5b7922fe819983864a8f82fb4357830c9eb5e64a8ced838e0776f85a6b3293c76bdd1246e0f042aac9ee277bd850a1ed563320e786383790c9591984f288a2f1963898c5d3eb32069e791f8dad4af6e02a423e2399cdda0ccb194229c53d4380bd21f890652bc667b8d917e2c682c7238277a408ee7e4d8475e12981a87a752471d5dd47ea4c651f338faaae02dfa2bd5ce734bdfca39d6c4f83d7e7e82047b8d54b195c6b6b9388ea1054fb4d2ae58951028cbe3b35dd28d125bbe59ffb3ad1bc33b107af93f32dc2ece50e55deae545527811d3d5f66094d7d8892f32f196b8419f54c685a61e85435cd6d07fa70542e1dc5e47f508481df558bc42e188304aaa30931515b52fad1a966e414db4e832683e63f23a066bfec7751b9f42717aef80e88ac521ab115686bb7fa584345a80a6b573515479a5eba80398c06a91fe546b97bf9ca8ca407b6212d370634b14e538aaeb8b0df3b3009aa7e23e9eb6d39faf84d4e1148f4b3f11692b1cd7f5eae5aa84eacdd110012bce7807e38b984444f011dcff570c6067f830bba77013a76429e9fae21af0f970e0428ed1d0f1e157112a47c930bd013ac9f1c1b60ea5b3c101e699beb6c3d99fa72c964c3b6ddd39602f98d6476471864f4d21a795c48f37b1e47efda7d53443a3c1137598023462e6c20a698f67624a790076930b1986cb609cc810254a21daa89009a1a90236fddaba59156183135cf1b4c7dd215a0c78000113b47cb164da4c24c339e212358d3462bbaa4a135a4c2c9ef43d952aca2e2bddc9459e0b12952281d01b017cd7ad328150c84f5d4b5749f2a3df09a1f9b40a9920a8c0810d2fc6d2b3409fb7162771b9078932c45f220bcf92bdf693a90abc650b907acab71688a66c2c3d83df1f882b5e18408b7363ff01fabfca68d4bd5d2d54ad8eadf4e45222196aecacd3a166fb07df50e10e3efd3467f479b71eca5a3ff25652e7f2799bfd310181d8cca63a73dc030da27124736dc17610399aa4365b7d4bc5c9db04aa55c63bbf2742cceb37108bfd095b9fea885ae054cb3e6435f6b4c6d88c0b02b61f2805d10ff332649661bee87d0f22cfc6b9e3926a31b236d05ab0a3b3c28a7e0d884b6bb20a99f0a772993f1e701784d1498fd668387b4ea08e65cca21e09140bb50062106dcd80242fdce6f60c343580af7c5ef0cdf80ba8a4d84d89fc8171b85e1bdfc11d67607e6065386119e256d006fb336bcd45fa4026ba433a0a516f63f21190283cc24dfa66362c8d2cf25823f9feb5e2a4db9a4cc6c1082d86a09e8a45fe9aa167f99fbba9c1a2ca284e9235df71401e0c3029eca9adfcd50408f46565ff9ec27e3844020ed2acf513ea53366f47955cfa4bfa0829a08a0d01b8275a97f05a925e111719c95fefe13a5753ef8faba49a54ebf6a64bca66d2f7a41878533d672e4f00311d73351c9f14e5ac3a832a76cf3d5940c7b22762caafe37f9982304fa67f5df56e2ffb828418a0124a17c38e47a5d39e57c2cf36e6dd4cd2cf07613c47e551019013d4cb2c2735d8de10fc77a3b670ff0f2049b3d25e1e9538c8aaede1f120e0570bc5052c60cadf630139c5b0a2782af986bb7a5b209b6eb94400c241cdc97b06def852966f0797a543fc3fa813d456f1ca35c5ef48f3fa7a5f1830e2622a2dd5caad7c5c6982e445d562e2c2ea6dceb9522aff3850e5f7e66f4f9a7feb244e26ca9c1b0a68fe3bdab6aa02ce2dcb9f063eaec2f6841b6eec7654c9446c0cb0d277cd7eb230cc8d7ed31f794f58dbe14a6c2c62e0a1a7fd0b016c67d9ecda2db72627feff64ce5108a65a739bef325403acfbc7fbfb23315d335a51cc3c271df4bbc8016d63b18e93800b62115de32969c96fff2d353f9637ea191cd6641fabc6d0a901923871af1716d65a14a18e8e2c8409dd8dfb54b37a90bee665cf86b6fb25f5fb0e47c4ea6d64134260f740bd21653b6e74ee1e517c1e074c880c840407b27671d12c1fa2614199abb6c827232590758074ad82ff68a8e1a5edc5c1ff86c6f01c7d01bafc7f3d7485e88ac042244cfab9d7033ebc482e33f0a6a43a916819a0740744482a5085663ce63820000bcac44a3a824ddd0ffb5b31a66a27cf5d0945f50a383561e9ba8101d8fcff4a8eecc1e97e9f467b3d3e4e66e37b4e6873a13cc3c46ada40fa77917f60dd5af3e971588c1e8dc4de0c85a8481ba85a44b88c7281a92dd958f269f0645e9e9358c6aeab4b344872ee4f377106ae495b69a5acf5988032d6be32181a0be2c33e2a170a7cf1450e95a0c100fbb54c55c2c7ab8ef39f7c5ab6dd738c473f978a556c8477e41157e9fd6d06e24e718740fb521d88890bac2ec4e502fc4d03d546674181dbf7c58ea8af2fcf1438010915c158a1314b0a652c5e5fe326f533782be9b07ff7801a01065d960811d7c252e36edea7f148c3a223ecffec18df5c9fd204d6fb95f4e12914a34df8fdbbe04628b02f432c5c42d10fb3bc4e6194eaa38d7fe76375df44106697ce69985622b4b559e5b05c0eca05208348fa5aad09fbd802ca655f1d9acccc740b68d2be409bb6f535f81ba7ee72395904efd2febd28ab4bb1acb78934866f0632ca835a928b13fc26cd4168a7e27059ac3e71a7fc546b25466ed1345759aa44de459985614160ba184920c684b75aa35d10382fa8ac6505496721426b8ba188603e75041e6a8258cf6f8c94c3e262940dae6ae6771070a370ce65ac449ccff44fead0dd68c3a7a24f36f0914d1560d5f5cd28f939b248a57ccaf6a32f0780c21e420333952b1ed54b0333c1169749984eafc6060cd3858aa3011bba3cbd0399c64921334d2329c600b74d16c2d707213c0e584f64772e77ed056b601e27360880e1559aeeade293cc373ecef8632a9d7582c59139c6e9c55e897f7f5c30d7308f30733b37a6a2f8e2b2966eb549231bf6314271ab9a51bbc5bc30c4eef9c7d2b2deda0e500df07b52f7fca9f2973ffb38ae581d0f9731c09f5aebb623394a3d6d19666a4a6edef7e1f4c1c67dce1987199b1b676cc24bd19d244259c6412f4b981d9e2121daec85231c2e84b3a40eb7661a01e5c4bfba8e982d7d55a050af9de7fb6403bd3f139d61b9b7350a2d3e14415930a6f3e0592789d582118a230c9131eadbcda0ba91dee40c10c3ec843a440b82877a334883d119890fd2302d76ce716dbfaa54ddce0dac7d82e626cd036ee41221f31d5dbb640da4ddef284bd983d16c5839127a6f46f96098ba9d111be579375f10fe821381fe484a4e9065a46a8f28ed709fca94c198e2ceaef3533b3f2c957a5fcaed87ae72692a5b44cfe921d8cad106d5a25e563cfda314abbe19fd99e1cc8022be2938fc3b4f1b679684762651a6a406affdab3225879b0f886ec91b814216510e97cd5c06c566ef2537ed5bfb18f9269dbe66a1d27e6f746b49518d2cac87dcf66ffa7d242eb5cc58b5c24d71d3cd4f0d34cfbe5893cfd47b5f9bb101e5475fcc15b4b33aea0e7c167e9f0e598679c4f89cdde277cfaf9034698257d3c8210d796e356977e6a45a8feba8862cfa0f0d8c4cd8a27d3824c4d650a0bf22f6bb1fee8da6cc7db614b5716040d929b3ca207f45b48dd25acb0e014fce58e959b983f7fd7c55f79bcb90abdf36fd0b66fe610169b7c72aee19e20307fa22c9fcfb8e4ef7b0a4354aee71fcc8b3ea53b9cc813304c718a1af01328f0966fe2cfa84439dc9155a7a71b59e88a91c7059faf77da865c531b1841364091a8d487a3f27e11cde3a6f997f50a655b9b6497c179afd5fc36b5b893705783847be02510c16d39a30bacacbf752e661c95a789e164cfb15b59d2dad1e27ceef6abc74908773c0b79144e56c3b70e209a8e3431eb68e9bc00760456af3e68c9c6074a1f7edfb767c2d14b2139f91162219cff1ba827982c0b8a6c62e032a43e5439a75d2a12d652474ca517601063f9766fb7fc108cfd195336e7597281955f925a8463e4da7423b92c006bab86618d82f239ce27b319ef00c6294f243f11b575d06d996a30c64d640d151659c37f17ed9729cda4c5a1af1502b9ec8fd7f531a1cca98ee97d9d320d303c2ede3487e26f54798ed7041f69e10f280cd5b6f4c48033b4acae5c489d1e184f291768d92c1cfd687876d31f0b963d5ee947dd07f15406604fa4cb10e611ad0442298d6dc96e4239eb6787239a9ecf566f9a85a453872ed339e5e2f7e0b9ef59fdbe92de699d0f0bcfaf31b3292cbcb2a9e84dac09264ed4217643f74120bf403d5f88fcbbc88ebe589d20b43eef09d0ccacf0dab773737b96ea1c0fd1b959c41ed719e0202eb05efb2cf3520a9ad4e18fcdd7a6290635c7353b95e32c4555dcca6e6805164fa946d55eecfd0d2590ebcb47e039ab50a8733022df337cdcc6ea3c8fbabe2865c52a65981eecf4236ad0b2131db5e4b5b2d05383e49572b0273d31b5d7b6f914821f766a314dd5629159d632a96b7e16295bd8d273d0b193c9f7ff9303c8a2e211a04f7ba0ebb2bd8545bd87daa50a05809495f1c18753ddcc1e7af11a0dd9e867a56b5ee6df0aa36728f5f9041f8ab55dbba0951b7b6f850bf7b4d099a59b57abe4a1625b20bd12c257c56118e6b2c4923a8f6e4f9fee39161522d3432495bf70dfb40cbf6c6a09335c7aedf84222c12c3a74ea66034eecc29e2bacbd5a377ae0e923eff431dcd898d8785a7cf0b9712489bb38dd63855c0beb2af9fbfbc2ca984ff5830bfe4ba208577e1796cb62268432de3c528e8de4212d3564b69a6c4e9c540357133252a9a42a15f6bb609ae321652efc28ac1e8d9464b1946c3c398f62194724ac7ca6c706a6e3ca7a6ca1e0dbeec181935b3f8192998c08aeff34ca32f2371d2451cf4df1e43302199a51d5f15bf204fc471b28d7690fde25ace86aec938aba7c6c9e956702be687eb536b0f5e18147c920d0e228286563776c28ff9d2e8171ed1a5d15c38367779f0a4f6629d10ea46b2aa7af41a50d3863d05c3cf701d30165aadf2567a0dab20882abd5e59e7c7aefe6f3ca6f0a1e506a8308ef719f7f7cc1f536d92d7665bd7455fbb1cd7c1e19252f256ab81209727076eb165d7ee6891e9c4a70e4c9cd2fa73f9265091245c6260d76cbdc898da9f39e78c4b2b1ff34b6e1456cb1785075bf1dda03b2beee4e0512228e2ee856450280c07c295655dfeae911a07ce6bf41b6f36bc661b4ba24d357f0ceba8dd4a6a9a25f1127defe3055a7729709384341779d3274b33a189fee7b4e2dfb46a30b0bba34b6f3ed76e4c11cb5316292b8d30d82cea392e746c50733825e41d29c82dff8bcaab9306f3418575949f6dcf6a463a87940ec7013050318c79f20676b749b852bbf70f380be034b712e2b0582fb01c806745a4c079e409a1a24953f715df88690aaca9f1197db6c793786bc1f8cce1fc571a78d6bbd2b90d6e3069de915de8273ed5f421f17adb6f0b77ee72cc284b25381ebb95510b41431e9b7e6fce0556bec4ab909e6961b6d1cf0aca0b85fd57b23f1d1353c6d81aa08c103ab2e9692d87fbb8af2e86920a73f6e0f90fc644697a8d197e1f57d3353d0103baa614ff85e6c6d3dc99d8aacff2b189083d7321b0ec0d63df36221b8a080f5092d595ae0f46b5e72574f80d82ed1e9c2f3894b564156f5a410e8eaea3720758b4d5ae87c01fd4056a439db9898030e4b5934dc112e7b32923a0b5e57f0c7622c1fee4940bb47699a97aa4458ea04b35f0a86d09918e164e919c50ee41aba06efad8af1b428725c2f89c4e16b174f4e5037b26dc44314061b965dcb056d52e13f8d6030f5aeaa3ec9490a7e24b2de3b2046d47e7b90a4b28a00100e9d22e32a4dc3c238035d85e7dad68982b2e7d1641b6671856dfead46fc53078f5a42bed6fb83fef2b6a6baa40372cea093433babdc8b0eb5c2e03ec0c7ee40e4efa1dc7133622bbe252585feab66780f06c2e85e9d01b5a45ef6f9c39fae96e97be4c922f1d2e06e8cf4e30d999d27a3ebe082a93552dee0c812ee5289f5d0b5231fb2cb1982b98cf2cdab01a629f184bab6b2d0abe1c2d9233218c5f832dc0c68579ca7f5b0ffc08e4234bca60d0231cb1d49db6c7dfee6abf4732068f075e2192925afbf4e36d5cd3ee912da30a440b29201c272b234b64236d73027d1bd371470bc2327f89a6a87f1ec39ba0aeadf4a298efcaffcba2b6876889018b87a2015eee972ea76368628d0a1db6e73bdab7a9f4e122cd328a3072422b1e31fb83319a85b88cbdc3bf27c8aeca8efc39103ed289181ea58df92b02cbb611f5cb90022b8070178e3b8d6a7f3f11c1fafa9daea9cb2d60d80dc8160b71e77122e9e74a6fa83bce09eefaf5843a3ee70f415b9410c89d6918aaf266017c0b73212f92a831ec2a89b9ebe74a92aeb8aa0120d86f714dfca1044fcdee5289b351058eff6c2027c33b6230c759ea2ec3d2f5324eb341b64672f3326044d5ddba3f56c4fbccf3296e780b70ea0d70dc355e7145fdbab9afb832b77f33560988620dafbe963fae59f514ea5be6c11081bf6b15850987d52ffaa970ec45b079387b436e0b96fb8fb3756220225aac968ddffa4edd56811871ef91c5c0873251c4074de5ad2ebff3afee62277c817eb453a120d624171e7f6d52dbbe1dcf007334125eda777076b0c02fe35b800e00882c3642d88bfa6a579dce6e67f01a229dd9441e9d1abb1f842c2928a78b52c15edbc2d7b65c8621b6afa3870b96f1199fab5519b0eace4c446fd7686dc4277ef2f02889483eb0640436ebaf9cf403626973d85e50f05be087e8bc40049a604d9c3566305b2f77e4888b0e460e6ef091a5232553669a7bcccedbc5101a37db77352cad88fe66a2da04ef47d3323f9585364767412068e9cbf1539c0e93ade872975227f7f1c5931c6a0f81b1fecc7bab248b9a3963c41e4fa0018ce391e873c2fa068265f388e752900cd769366ecdce79ac9639b55c461435e2ce10d974dd91c0506388a00a836122e7391acbcd04df938d14712cf39e86c6b32e903ad716aa46ae639d7bd43f89af98a7b5c7d831f0440ffe0eb04491391c0b3fa8c7631dff2de7c87e4f4901e8cbadf5433854c6b9567c9e684262d41935eaf26f6b8e508f5fcae99d75ab79399dd978611448ef8873b112114eab63d4fde3cfa6c3d6264d20fc6e24407e020bc3439fa819bd91e95f34ec6b69e04169284bbc1088888b6af98fac384c238abc6a5020843f308054ebd2447380544ef96208557dc3225f9596e152b01da6dff156a78a165df917baf55ac355569050eb3bc537fc97ab10deef81252f348b32e9991a26d9d03f0f7b10e9a9521db5f045d8b43c674d28f12db79d3d986fff109171649c29e3956c3a1d195f40b8c47f20b7a865c99d13aa57e018d92c4a243342473242e23608717a097d9b30d0c3808a4710cf232aa2d2629a51f1b9169a741b61b181e5468f0dbf4349cb531e402e3265ca55bd6a477d607eb3a35b69e6c6bceb4409ce2b5e63bb1441a05a213115460588c03b59b2418159d5d5a60effd4d615d05778036267724cde3f24f19d30b96802f64b407678efb09a97713032865d002ac8820f53848c94202c30dfa34a85d45fc382ec335a11cbc8a09b4824bdfbd4a693bba77a6d562f821f14e7232ab1f2b84900d0a65daf002583eca2f117f0bd4dfa5a82bb7ce18276d61b77680e3badf5c3545b62ae261903f1d553849d957d3e7c11293ddef2f77e47559b106c3e4b4a5e24b27fa55dc87915e1b5c5c752aed11cf34fc9ee1f6ed29355ec4b643b1f3466bd979795f7631d6816d3dc8e2d3af8763c4217ee248d9c561e9b448fbb6c3d7ceb009048219c521bb4a35168d469f4527a9e43bf0d5b84e245c6b785ac3d69544281c980210e8eed4135916ccf932c5bbec8e51a6a40fcd44ab5ee7aae06cef25dbaa9455f3e2ede2bb9dc1a8230b8313bcd954a082ecf6151d702a0eb50bd4f884eced16d8f570b1c1fba03905083851df3ac59c912a12009e83fce3445b2d63f633db2ff9fdfe5e98d2ed1987fcc9a7ac585d5290856792442604d50953203441284df3fb5968ee4072b9a5dd962ac2f39ce020b9779695ab69013a48278fc16a6eb2db7ca5b75cbb5e43f331666658c0f13679be32402577975d1f6219b977d225736dfa3e5e9e216ed70085dd54a9a8f3ba883d492be09ce65701a3c7b4966b251864d30ba932a3f66829a8307252013ea883867b1654627ebfb0bd1f2cea2a9688ce76dc2e4741434b7532c8cb57a3d0b409ee5cd600551d60e335fc75efd0233f7c9ed16ed04e87b97558e6b07f0e66a25fd3b5fe62bc0cb6cae0118f63083654a456768c03554731b414a95ba36de9ecedf67c121257d1523e8827e86b1dcb04426eeb82b26c2464a15490dcb51eb9eb501bebcc518cc39abcc0a239d7fcfb44ceea5fd6a2adf94277ebf4a36e2f59fcedda3a5c069a4f3081fc44618493c9bb7258a08d4a6a26cb121e4f9a01c2fd798f7fee1501a5c33c7d9020182271fde054dff0f670ae859a45fa70d068c5351490b48cbee51fa8e4483ef9994da6f76f0bfffa3144119d6260f727876d2445183d6f9bf9e29755c12c07c347d9d2fb795f9a8350bfedf901fd1a5f1517ceb883efff8725c054edb47953dec05dd99cd9fb7faf3df852631c7211bfbec77d2c8cda71806dc433743259a23a7561baaa720f9901518053d293ce957627a9880161e1ddd7fa217b9672d28581945327941168a27a16c8f9cca3b87feab6b3cc5ad4652e59a0e345786052c484ded22ce9d5af68c5a8c32e8555be057e866cc0e785ef3d2dd41475f03910211ea45b1af977453215b63e32f7203ea6cc58e56eb66c4669570561f2162b20123cec87e73237b754c198fc166aa9b9be0760acec8d7305b93fdc014a6a54bc657fd0973f13fc1ff6a97b9e84b4fb9d1cdeec1d7d627128de6b2e92df469b520aa2ae9ff5af1667dd9020e0dedf5f51f95455d8b943bd3587fa3626804e509dcc8eb27a59180994f7c8b199571c85dce8c6510354b227794fa011519413f1cf5df4e1670a083df06f69bc00fb919d81469742ab7de025c5c5c6fa6505657b701e9a97b4856a9d243858c5a3d6fbcee419ce984788a110ab9ff7baf489d4e15f2a2e5555929db242f7d6ebfe254f7bab9f10eef134b4d9c99223b576efaf209a178e3f5356a0e912c21a10509cf65ac234898b8eb5f30620da6185a41a557f4627dedff2fe6e0225cd9213d799a0030da445c8c99844f4627de761264c766641fef7f775df24cf93a9136b342238e21a9cbe724680071428faa87861d991c84665dcf02dccfe6bc15bec302369b54a708f0b2100359d31ac5a516d0122331919fdb067a66da951bd65d05ca5e758b0c116b6f203f5b281d7cd058d851e0124334622c579f6dc465519fdd51cd9c7200742662274a53c19e786e2e425baaf9e0493a34803377091f86cc79498caf2ca88803c451e76e6b01c2a5fd1c62816cc6911414a5eb9b9762dd7dabf94ffcc54621f2a91fc0d8dd960c2c7a8b0f74a519a1ab1739f0119164cc2975ad5a7be2f48626384b628e8ef1ed6bd319338b50c81edb881512f63b380af5d54e3f46ac87283e46af967d7ee13d9c36331cf1e728a29b73adfd6e74d966eb58a337d9b5f7c0114bb2dff1a9ed88e08d26577d90a873f757c96c07f6bdee10988b704ca031adb7bf411e7733b462ba7f65546f9b50df33b15fb9c5eb8b22fdd5aa5b06531813de28850fe1da25555e2242619dc64ee542862c8a64413cf39aad7d20b5d75f0e511709b2139769deac2df61a715df6dfc38a06c0741727952279e1175ddb8150fee8b1d4dc1321ced9938a10a19af0ffe26dede29a5ebda605c275991cda151c4ad18c6cbf1da03bb20ffc2cbf959846ee2c19ac0abd5c978d65cc9be70cbce23baeaf21659fdc59ecf6b54c74f34cc64b12214599b898ca03503348c302ac764ef7397a0b47b2a4060607131392c3746f664c9b1950d910b8a4da36aba34b55914d9326a552373627abcb70cf2511c39b2c612100227553c50c18767438cf254d2bfa21f09801f84a6bc64dfbec1db24c28ccedb7b83fe17317ae8610dbe299b1f2255d707224c6df4b0b6c36cb8246d1bc8fa9174c03b4763bf62c2d63435d43d7ebde1ed02f8f2807035a44e285bc55b8e6a9b6c8900109d7186d5f49b6777b697da0ebfc11decd6f7e3c2d1ec3bdd9da2f1ee755e944f9c64f5d440ba56d240848b9bd2bfe4864c73f3724d5405bf09c79e519d6e378e400b02858924dbc71fcf6c40a76db7af9686863f119db8a7048960cc878932231a7e5da4faabe29bfaa165d4ea862b2f4ccee336540aff18eee6ccad76f5ce0df843f64e4916908d3e35d843fa343033646613f2cd74bfc90e280c7e3abeb7073da5c0d6b0cb3a39d937feca8c82c1a655b49540733827ff0c6ae62040648f44347ba4c2f650b83ba5f6f02e93aaf1eddb3605202b4d30f087f72934ac2f824d971b3646aa058d6a68397bb4ddd7ed3a7768f621230cd9f88801468c9d2d3fc667ef4282438d72c5652a14bde53bc090a3cd03a8573eaa24c7ead7569721a6b4a2aaaa16c1dc21a36a8a9fb277f349e90087d23a939d9f961a6b280eab53015f9bd10fde0f3d5f28b44b8e6d28ca6d30a5525053e99e6680a2a7613b122f321a5ed666a4b01b99a3c386c7b1c69fcfd07098f4c06fd3e8c187bec4a8001e9e5d170c57978e21ed1b4dcd6f0febc89a97b7c67186aedc2d5018ae49b814a5a33054670a41aaf7259b38d25d3e85a2e81496d8902c888a56ca218388e633dbae9c518a5713c6e4896fc074f0b9e12cd418839bb6b26844371d6e73862c8b0c424ece0da644aa9a175a81306131a9e69f2018f1a3e7d93b2b90deeb8dfcd3bb425767ba45c32ff567487d0ae82d0af81e6264e150095c75b3b289cebc380d6dd772ebc669492b03f9365a3180f5aa6e763f6c8213fc59933509e1ab457473b70b954d21d35ccd2d04f557fe4f302564963704815266f9c705d3ecd982642e80640e9340879cfef305eaac5f95c1a32922191176773e63f2ddba0d8aae51d639f899b6f2ab45ee1f2c2bed3c52b8bd735d16cd74119d0bfb7ccfb95ee3154534e3dc9e0b81e871c522425e0b369670e5e625a283c3c58680f70a887f90621a834713061578cb2c97c3e6e4d989f33afa0e77872976b5b3328cdf8252f7c196e1b425c2d6f36e14c7826ac048ed74c8662ead4602a54af6f53ccc1ef040b44bb60e3eb7c5293a5c05c01ca338cdb18c60ef9aaf7856e46362512fb590e2d4a7f083372e6ae84474835b34a6cac1cf7bc488aaa7b9d1648b34867cddcb3ba9828e4658463ccd8a5714f513f05ee032d5fcaab63ad162cb5f6af8284e30a23538238530caa1a521ff79a4f95ad59948912dbf23a3a2c55e82aaec8682aae6aaa2b148cd676aded2ffe5b8bc658c271325a6a315b85a807fb6d23a6f7357106945e29be4dccb9361b3be25b548a656dd5557735de3b7a4ee2487a02d5f0c67bbb4ebf69cfc2c16b166b4586725d2d93360a483fbe8dbd025e19b2544f9de6485f75396bb503cc58ccb0f9ac11be6422058131fd68d3a54bd509eed025a591b5351916e6184186425a8f4cfcb95afce8a92254da7185b043419d4fded69007d1dc99a5541285848ef49f5679b5b625141b0871d17ad6b812c6016c5fd234f8198aa5cf51125d7081f7569817930035f33648ab04c59b0a011dd8a8fee081526858b81d5163c512bda6802d035a3ea97ae21b73e0006587413a1b311cd21121ae1c210789a3a2fcf4f9bcc16b3e2c3d836a35154e5ebeaf3fa42ac5abe5fcaf0107bc02a750ff88b3b4a394411c0ac4b84aa8f9dd4da4d2342db25b1e2b1bbebd3566f1653d2149547b3978b463b2c5bcec680cce41c9cf49966f8fb7ed356aefe3cf2b7030b29518c54debc4ba9f8b01b2e4993e11382822b7b4e388dfee2d58604233ce59555f586589b6bf37659fe4561a57a172a6574d80c92ded011757fcc5f623b234d855573f0f4386baf74726b535d221e72d1d24c3de59ecebcc6f0dac32ccb59775099cb4d23a7e99ce24edec5b65e0ecb1e0333b547a087bc0cfca5091b2e48e8a83338590824bf7256c37a94438e965e7f35f485276759697ec2976f780becec24a922ee510dbc8d8ffb356ef9618bf12841e061b72e1e22e39d11282bf2841d3f913fc452be69cf3736a020766b001d6a201388a8b00e218028bb612314d691408c6276c4636d474f12d6585780c2a18991741cf6236af9b8d53218b2ce465bf5b1334b135325cee41193fe37910ed8d0e627889bda6bad74bf9e840c828a02bfa29bce84161b9df0e94b3d15c409bc8dc24cfbbfe7041794b29f2ae0871c0b184aa22008511cd8b06060f1cb79b3efbbc005f7c0535dd21876327fb89c022f0c4c352df07ca1998f96fc54ef3a8f554476bec6a37dbad249fbdd9eedc07251b40ba2edba153b4b9c1f22fea670c4b34cf1001df84ff329a1af712654f3fab2abf96da68f2a55ad4cf9acc30ab66121dfd138fb4d307627b3f2b10317b4d197637f1d56dbe8b602d1009045f61a68ecbbd17a15888be3d17c1e5eb4b872d410ae12c5aad6109b9eeffaa38217ae31bf27161ea681f0df7a06ab9d3c94bcbfaae9b64e4a16370c0a56a08a662b1d896421a19e5b42e645efc432d053ca44675c8f018f01f18313347aabda2e2e6557a1c980fedd1cc06f7b24c6d2002f54ff9db41477cfa5560d65438dc966e10f0a5c75935d3be50de2d2dd0f014cc3e82bf9cd9b03d75d93be6fc12f1363e47b70cfa3a6ccb777948ca6879eda20954b55a1c6bf3d4a495fb746fdeb6b3066e7e476e5e11879b913d29913714724ce26e2d81a47caeb0f9accc9c3af533516485dce4ca3f618ad7cdbf85dff03861f0cf59f01f4eef0b5a7494e88930c52550c5e199ff71f5675cd5218a50a342f0fc6c6a783d41884680e832e54ccb2a8f8f32f12f503633f09ccccf04658c9e2ae572fa751ab192cdcf06ab30ba4f18cd02e0625fdb6953ff343e323010b17f6c0958ec4af513ebeb4e0c9856f60eae6ebbf02958805626fa8e48703fe965323996e776225d61306033112aa74361cf120be95c52ae3add9087daeba9b0870dc382dfb16eea64f367bf257767856801e45aa5cc4ae6729c4f31fd8a5d6218f13daf4847e0d3e93b8559ae7674cb251c3573c1fb09551987e9f7ad3c3af8ab2965d2f4d88cd6ff5bf12640f8813b104cc7e2b81c6cf75b53b47bc1efab55de9fc1b2ac5bd1b5c9be3ab1de3b24aa2327eeeb64c854705a77ddb83a96ecb2bab4749570a6218f7b3f62bf1f1b01acf99c395089a0dec42d6dc3b822d72c7a164a5753fdcd76122f1b4fd77cb6a1ce679043f8d08c40881eaf61c28de7a48f91fb2f1728b4354eeea1189472f9cba6659d89b17acb36d4726f2e5b5a5cd72c2483057f703cd67aa1bc488617d2321b1baef7b6270eaa0a15e2d38f25d073f252d2e3ae45458408fcfd27337d0bdf8045d08dee2638af155257aaed0efd0dd952ccd22e2adbbe4113d1c3565e3419bf230aca3a9f44ba55580ba63e6ce8263313281e4aaa851e50c48eb07ef64fc557963d317ad3a8aeef333bd2604121cbc506f307dc74c2867b8165b0cf01cb5c0b860cedeef8d6a16916e79f0bfe29e00fe9475570d231e18ff8933f02e1056d676cff45b0b464053943759b2915a90a443a55c6143492f01785e241cbdffee559607920dc4ea8e6da56ea1e34c1be0ac93325b9bedbbfb5115b5770ea58907d6cda671690cf3323385629cdddc298d4216d5bcdcb18b7fdcc541a6738fc3d6c7b56ecd3f6ed45e8950befe5a219726fe87c25b0c70ef197e6e2648f8ca08c9eeb81eb9f3e515e84692cdfd6e09cb67af0d28a1c7988b889d0d3c73983c2ab657955033460303bf3a75c3d75a5e56e65f21226d6f1a0facf1c56297a9ee51144551f2664e81bcde8e351c71b05e44767678d4df2d7edb2c04ce5ede9e182990c658d801e0eda4845be32bc387ad1e882f391812bd443e4ed73f8366bdb49f7476d9d24d747021b587066277b9801797894f45dfa8fe65da21e9afb96b3977a56c5d515e9a4aa230c73157d8b6a2dfa90aeb8ca34b504bcbe33ad34f578193b58ab134742819d0f9ce631dac3c28157d84e2c7152b85fa577dcf68651bf8314e00b4042ca23cfe0dfc93bf2589c09cb9c740cd84d13eae7ffcb178eae954679fca02d2be5153760e15b38df7efd7874170f38ee28f2d9634048d0f1861017c934d2fcacf0b3dc73210b5c112506c8f73b3526edab6b557e9644427cf5072aabdf4ec3980e4f6ac0d7d7222fa22ede28e2a938149ad865dc7218bbdc0d2b1a2212cd81f1a7327df22eed310ab2a9fa9db69be2f76accb54f76f24d7eeb4707a3eec08183c2646c3ea0783621cfd93a32f1433910ae27b288f1badcfef362daf54cc56c953cda2f94486d3c5f8233fe5e8bb6611fc2e1a3e42ec502ff6987711ef12e3ab5d5655302f3c72304836a27939b5c3d9fb0627a0cca1375424d9e1f712f240907d0695d6ce43031a4c3c4d8174447f9ab3ed8d21f1d6ef7b69bb2af8da43ffcf63e85c120926d29a12eb9aa7e6ff3901ebd855e8fc4700331c06e7ec93a983cdc9292282d7abe51c825486d40f5eac68a5c5d15881ab22b58eaa1ff425902838cfafbceaebe723abf82ff6a89183358d204b58e6397c3aa5deee29f2df53bd0b616a7dad2a9e22fb561dd84fe247a436a2d10cb88007c530b0dc9377ae48e57246d2a0690e9a64820486f3b5f1363625bbce857800a56096763e71243b661f68122713a922d814dbf61b5554846744f73afdfa1eab99fce860e891fa0e04e455c8191a30eb0ef411ea1921c1addd0cc59eb8ffbf0d9ab0bf18e1a2314fbac683f689fd16675817244afb9d264284c68e4bfe166c17c7b7d29a99fc449121c45e79a9e6458ff031737190b1d8950d0f236aa3040697d0d9206cb8f83ab0be849c0fc980574d2e218d953e7e5e52159e4b6d8c2fe567ebb54a5fabf6409976ae488f08af42914c726756b3432bed296a66b9ef6f70980207ed0a948fd71ef61a83e84469c65fe7422d2b960844bcde0eb8eb0b17ab5204c10eeaf2bb72fd464abfad9689b7477bf1b20671a22e73a768737c95f9d4b3e375fbece3be8fbc70a87055cc6b281c4e16fc5a976f2c60b01d8925b4550700636e3ede2ac00a918ef4528459874feeeb64a96498ddde4646ef57bd809ad060ddb1cdab88700065770a93e53bf87c8121a095e5bbd1b85a7f066f644871a41e37b37a20e493baa6d1e02773199e22403351ef6c192382f3c74071dc66c57d03f8543c544918567185b6960d22d53ca666b19b09c3ceb2c1665b08546211f6eded22f1e857cdad31ea5da8eca66d218559503e019543dfc706acd8dfee97451ed3361c95d183f3b84cd032eac38b976a8e60363aa920e18e3531b504557ef84a7043520cffe4bf980b8aff628667184363f48e0cbfce81ca3abcd9a29b1d0f91b3e1cf24ccf8c7b091a2056a172beaa87cc4a43d84277f054453d9a82ef3e1f01cbc2a47de96dc7b640e5490768a335f47d44d6c260b55a190ed39088b8f18a84c56fe50a3b9f2ec91b4de30889fb4af8295bbe200af1c31dc3df9031320601e8afc6ff3029a4a1c8f2ad22e38313de8a571da9a1bf1fca39a1a772af07666af86223a83335e8e16eb3ce94bb34ac3652c95203c97bd8a42045e619eb19b533c7173ca92e42beb52c9af643681f5533784737795a8521f0a1a8a92721dac138bd5e79ad938ab401caa2bab5a3532f5175d56bee87901d76a8f8ca178dc3c2808de15177c71c372f089d4349b6c7bed5a94848e47ebc8c72c1348823e8d84eb81c92e63242972b1861f54528ca247008fa2f58150bccc2348c0249962c9a0bc1546b88107713872982c214e86436a98e4a80163ad7c81b9024c2ca860958a07f2c44daeb5855644f7e3fdf2ff38e1960ed3e40deeea1e38fdcaf35ac4cb8ba971ca8f56fb9e48af6e1d1a4769cec63bc119335fad467a197b0ea50e83773efcfc251d8d31410b731b0fd55ffac05f2a017b85d06e9b5772e221e169bfdffba18d0a90b6934a4f3a935c47768d3a98dd408cf357dd971c427adb8b27a1580a618da9016c8fb96a55f4c9e98d4aee12c7b72e00d760a95e97146dc2ddaeebd11e96c4bbd4d5073f4ea5dc836f0945941620d2b0525a0b06fc13c0dbc1f1539433d28360f51e08f0abf9e6b6db29bacbbd7ecd55643aeeeee1db7efffa7fc71dcab3fcf38763cdd95beb6d135b97fa8f0bbad770b587134aad612b50586d8c534977ff949c1069be286a7b22caf6b786fd95b89607493b94218e63905f257f9b76b1163e0f7fad46ffc855f44c3e1131c27117f43c468335e20d13d7e4efc707d523465f5c36a6795ec4284fa256519f2fc04c534a009c1ee938d820398a23201c6af04e6545c5aee488e838be02849ff8936a255c6c68a71425a4ea1f748e22e2d5f95a906a75b74075623a3438e1c0b69fc8645476db3f256355beede6c859d6f1152825cdbf5febee673b49ae28219f784556d3eb36f7ac4e3ee8bd7b0b720bfdd75a3216d5d8e8a842fa3e95c0d8579a49315d36c6c5d762a6bad6ebfced786013f242dad4fb8cf761f65936e358a728927527b0fde55b58d9d7978f29ac07a329e42737ca92efd4c929dd1c7c54322d5d84b92691c2040d64d4232d9f44d6855ac3683e8f448dfdac01bd3bddb29f5f63d5a06760f557b1e5821d451b43dc8fe9d4c7e9dc6556ec984d0494cf7afe5618c33fbcd126df9b8d7cc03fa8166212c4e77667e9243d8dee65b92dcdd32066ffa5a289980e8707d3058750f47db06023829a661d651df03b6fd850de865b776c113a47fce16846352290ccc1f8a4c2eda29b7190d0ad91fb47239ad22fdc3931c1060d0072ad8c8c95aef7c7af10c4f7f4b09f3c5a59add2c7cf9145b48fba1b12bdb1659007fdb6017f341982f6aff28329c65f156d89b8520bc147fc3c72f836d45ea9a7c56b37fccc59cffd4b36130f8c2c7aa0e1ea2b2b017693f33714f1520f0d6073f578d5e5cbb6e1d279012ef02d2cb1b1331646be52dfb7e33a04e5d04ec6b8801bdbc58dcd024d7e26f178c4b5da5eefd2d2d433ffb50bbb55448c50d3c017695c61b9172e9788b2ab2fc3b329e789fc5e708983a43dabfdd58203166c7e626fb1d9033024b2b0af599597d1fc0465bb601e91dae19e7dc4d5909ce40a619d6571a7b583fdf2f6fca5a80c88a1bef38b185cd5632860450b2a9f34c6406cb65d2dfa9c8fe73386577a8dac5f2dac6c34eb770965864cff2fc97ce1c6b68baa85d48c5cc29781ec3cb7a7abbfa21259eae7621cebed5ddcf34cda08d733ce20d7441ea8532df0aa66a237a7b29ce18697c419c19603347e46022f912069690f03dd575a4cb79ab3c625396c6e515c484a1e57db12d9f3343015e8dc918c3a63dec21bbbcb7d856ca89c292b619e84edbfd760805e122f875a48cda4b5be3ef351d22369ff9022a476ebb6f5f7d1f84d1308f69a442d9a76c277ff6e722522765d9d88c7dc586227f14a1e380244ffc97618256f14153659343f8eb1c02c060d12f13ebe49b7789a91c2ab4c98de6bcbe619c4bf84f0d9d83f40640b64eeba3af57f436a4f56293746c55dd328b12c91f8a98f0c0b59a258d1c4d454c452313ecd6b7bf0b3a17e20d74bf348041d8a0ec37edcf20209ccdfe57cc5bab129a3682e82ac92fd065f567b3e6ef2355589c6183009cf58676420d1d4dae5a518622a08faa90d37791fd333e34388a54fe16ee20d407642080db56dfc1f292478e4d3d9bd373056e0fb095170f8a5fccf65af2f728b865170597614643a0741162de09a76728ee07c71f061035adb2a2d7c5ae7aa03982faa5e3e92a488819735a3082b0761540f534cbd0a47bac5ccb9468e45f5d21aa8271eadc067b7a1e6b2d61da44a0acfd1929876f55d53bffdc4e1cdb0150f7593ff8ffe1ada1b9963535155ed2098551abcfd055ece8791a083d6d917113fa94994c6c56ea75e92d3197a1556a1a97a716e11e0ef721727259bdf6ab174f7f1b792a11fe9af0736e6c912531e6781ab267161fbbc7f84fdd0c2a0a29be562ad09939682db9d65d5564a5c908cd5962822d5694d93e36a6087215e0ac5785cc42184024b27e3db1b6393db1b6546b3cd531a01030d90d7fc8b14426e0f1ee2f0f19d4b6b6efc693fb26cafe6f00aa2c42852a80666896d7b43c8570f6b77fcaa2dec52053542a16362a9458cdbad348b6aa8e857fb1fc7f0a0e6a32d19248f164651b7df55cfad04b1525d54d3aeb6bbb19494b19c886628f780d3614c1a7af89833e827ef006dabe1e44353b09b717cd4a189a6e425a3c531d8d76381fc2f701e79a2f9b4478ee8d018e95c23903671b91de3bd3ff68f2a0c1103d794c89462f6ce17ea79167d24a68ac74d6d5115ce5dd15ebbffc216415283bed6cd7326c7774533b7c67694edf14cf5cf886f96eb6f855dcdf338724f468de03a66abb72f9897268fce8d81f7765a90a975919b1a3521129104798cb164d287cfa5463e37531cfcfe876e129b02278ea6956e90572b24fd861452a66b9e14e345696cac620be9b6da7efc107ac6b6d49249469b10e76c017fd36930f4903664656b355d409ffb7e21a6d0873fe214ffe2db52be18115ae17cf9c3f0b637097791fd63a6c5ce5564bf3a6dc83713af9926e4d0cd7cdbec7067c071984235b2283ec84951a4130f6d73882877b213c3cee0daed92970f2785beb3293e4f2602628351d05f18493e0716eb4057c1307c8e3359d910420d3f5b60aad5a4f379790bf23b2cf3b8cb25d4ed3d837875425f8a53035a39a4c8ba204babb60780f14df9fa09bf029009075f5c99ef2f4812077e02a60470278ee05a98296ba98a57905e3dd2276ad70fa421858780083410157250e62fb02e8d9a58f98cf1d7feb083dbd58b54fe6e78cfd0c15fa04b84748a2afd40e4e3bbf76c9a1205a4942d1fa234a82c9fad202fd46a6fa0619479a51131b01660d63320f35c848c77c648be733d699f76e0ae673df398d2b3e4c3b61a323d7b285394a697a815d43c9517a134c641810a32d3dfb1d8d28a0649cb63cb5ef1c1055b19e151a85622b55f48dce0174d0ae13a7fd22e8155d665d4d3744047e2f1fd5ec301b822a3d8d9577e9727848fa042f03ebe33db532e020d6b728f344d0cd6f9a0033486147868adad78f9ed0adc6afaae8dcc084987c038c7a12e66af2f0c8c5cb96b0dfb1837b9df05816affe95adc9a14a54b660485d1882085a4d92130396f22f6f776f973c79199a51d29c1313156373255b27cb494c1e0c9f8f7c5b8d1adc6bfb7aef4ddd88a2ec27884b399068c920b95fad672223f6408960e65ff6f46386ce03e6f9364e421a8a0ca7eb16737e9d60609f211676705ca2178ad483f919cdfcbab5121c383af09ab8ee6dcd117b834bd3490b8fd3fa20cadb160cca09043de7d4aff3ce9c3ba322871618e7d88721b75df97cae40e44584df6499e4078dd96b2f0f370d29d992643c2f882003df3abacb91e60dd6ea2e7eccd0c0ae41e64ff34bc9a3a2acb63c73f5bae5e2a267aabbad3e4560d95c110e786c8c0be8b476834c2f090cf930fb5f906f8078c81104a47df8ec719d6c681c94588486d67c8f2f8c2465ceff5e527cbf8789bc5c59e5a0f057d4d3052566b53f1b2c236fdf54060baa5ccb2a144b221a83df73e8ccfcddbd0fccb16ffd54ecb207c63c1d2c5f1d7e73f02b92966315d6d01f3776269de7fa995a58f93a11ea2504cd8e55ce10bbd30a9bbddd044a9901dbb4e708a21832801867c827ff34881a474c55767f45ca4733de418095cecd510fe8bb4027f12eba3c5f41ddf32aeb28b4357c0aa17e3efa6221f72f21059e0e1b2f9ae818dd3691e3c19f917419bd3102b0e02af74c05c3654f35db53b1ffcef229d9845197031964044000d21ed8cda1b1f84727817a5ce0484c475247c793f57f4fe06e07ee62c4af7b0cba01876c50c83c8d45f860a62985a7f950b0febd1b3f11f47f1b98ea5ce9c8eba05808ba81a7fd2f7bef6055c4dda99301d9679fa5bb648d75c736a234100a3ad64ba1ee1b0098ae6df1b643f91e65bb4142c2bb993860c2e5774a321dd9bb2de072ca071e1829af0afd31e459aa7be1098419f3acbf6b4d387da0d7dee989bf2255dda842c57259c35f81e42c00c60d905834c21b6291d4015f39674c603f8c8b045a3b9234cc1e891f25f5c3f0288ff9fb84db362abbc97c6d89a69def710c6e60eb53c40126106d3dd27a7cea2b83aa0a42b4226909dc5f56dda531207b80ce10f61a146fc07c17701d2df16446778353e6dec7f1094e82a67e8a551227da7711d1f30f3325dbd4d796e84e0cad84b491ee2545057d2b8f9a37b5f29f1c15c950e48388ed4278d57bb73b26cafc7e004bedbbfaf7a1f20ea51fd07fd8cd5138707cf08a223d301451736271ace2f9f437cc43e891dfe590bc7abe64f08410913f0a0f23d685c62c2484c517f3ca5ad29468dc2177ed50087c9627c9567fca771e212fee3057eda2d00ae5987b99a75cdcea2a6f89d27703c95b765483e610a5337c0c10387ad67bcf14285beccbb174113e4c21107488f6943da776ee48d3a1516f59ba0e48cb3cefc2fc18fc36d3facd7fa78e3bf6f526f4e210ec9662cf0870481595dd22dac73d9223559a515284ae473bbbad93c97c89d8bc256f1fa8fe0f197859da96b5e6f672948cd6bbab03fcc8cf45d9b239351baae0a82c72276f6e54cac6cce957f3047ea98e707d9633b6144b6718bd260545ef7b663281cc7a6d346448bb4dd0414a56bf20f4014e04249dd003985bd8691e2631399bacab990b8850645b2c03414cc88ae6c2da7f27b6338712700919da099d08be027d03ef6d9c717d6bc74b608feea359a358a1e01568dfd8eed6e3ddcc6b5405dcf2373517777341c7d72717c187fa779d63a1a0df1918e8fe736b57ea89962a1b399d671fbfbbd5e7d95749f5c068c027e2611710872f170007edbb5f37492f37ba68bb1d52b07772c194455022e6f6dbd5daa9c1355270a2e290f40727dc766e5453573c836b639a3a8c0ede9e0c6517333b3d9cc152e9c1651c91f41c2caac993b97916ddff3b7455b38d6c84c1b35831fdf9a37ef8047e6a7973457761d0294b103251e805a5d7e455620b253c5a271d34a8d588ff7ddc6b3422a7bd21215c33a4af568bfa59011e90789a0445248fd5f79bf1f3caaa836d1111cccc97daaf163659136868f7c3d8aa8830bbac0b1e5ae0dd1230f984c6f9b7c79f390b8dc3e59f31221df7e59578dc896fb864795992546cee547834cb5afb90e7abb773d6e0d39a29244b751e2a36c57e5de3d7e4fc3a90402092c8a21a83c42cd9bea3da261d6021b7d6bcb003735657e1b0d0743e969ffa3bc534f8696ee7e951c1a99acada3d6fa7e9bf6214c7fcdf6c9d82518a30edd54d676eeae13fc89a59f1ecc5388cfc41d7642da25f1c326080f0c6e2e3fdcc670b154b7b88012dbbb5dbdfc2fd826d1ab9ec3c3dae3f48edec8e8d254ace9848c351ae99857244c31507c122fcc9f2665613d248efdae28bc5ff422381f3c1de86b7ac90be92713bb3a8fc7eaa705a547f2dd3d67449dd057f131c5cfa45574d1d9eefb3039b441ff0e1b142450ed3434491ba3910c1277d84026cc0a7ed31c0c3eea520a2611b5d0c150f8effbd092d5d0c26b3f589ceb9bc63c916bc59e3b3aa53391baec69a7f0da047f4841fba6a6a3a0ea476cfb66c2fd6827d6863fc42960c4f14591753a09c261d613506ce1ceb560f2ba2f6300a8fa67c8476a17e6af9c8662646fd56f8904c70e12aff6d5579cd9766acfa53412ca9023544b26dcf99db2e943d3dc34fa775a166695728141239ea5733d4a3e24f2b16e4c04eb980bcb4b9302c7a3f49d0632b65e8bf745e531bf65565a9a9f7a4c9998e773f262cca931d7256033670adb099a9697885254b07b4cda23b8f766c9e43f30d32117a87a44d9c43691cdd834a8a5e73d03b0605ba5592f2a3a5bd08e27939b830d0b836dca9a0f20f54bf5cc18dadf8451b0aea5d57234c4d9923e4ea805969a3e09443e960765f034b45d200cce7c73ad20bd93409e7066193a31e91302da7b4edd0735db0c518564251adda6ee917715a1e027d6e659fb7395df326f3eb5f6894cd33b1d95832f013ec276ec5bbc95ce56f6090682520d1e7d2c181c55f79c40fcb61a9b4f0be39ea3221dc330a2808e4305cde5fd52577188613d9a85e37bb4b7f1ca3ecbe1e1e3e8f6df08e1e4babb55f10ef558c2fe5a1334f6aab3d25387eed7a7c486ba9dbf91079ceda691d2f536a965563e394e484918cf4cc94857ae4faf6ef5832ecaf33331fb25963b6ffe36599f36306c771d3b522c3181ba5d42302b0722be73783278788f69cfa71afa259c1c295db2bc20d60b3d113c1a52acfb5799f572ce4c6f232799d072ec18d625ad34cc9ae2860c6aff66dfc33e302c4b6c3cbe0d6b30a131d1043841a1a4dfe1d53e93813cf500abff89a4f796ac4de526466282e5d73e12943ba657b9f7f67360d2f18e2587655191f82dff8322ff1ed67f584f483bf224d54b771ae60976f3c05bf51112adcc1624c53450cdceb64516cda6f205ed7eafb9eb0a2bf5b738164fb936da8617a618f1262a8967e44218b8b4039b1055349f742a75499ca82db67c47a6fe194c7cb848194533d549fc82af6ce6021479d7b454a9556de49e9760cd6c075b69a851f08d6fef7c01aa41466d4e63a6eb605b4b9187627d6684aab6120f1c2c42beba9c17c08ad7dffe382cf2ac445d1cada6de64d7ee8634b98ed70eb19cfe97df6ac7c773680b72eaeff6c50c4280eb8792e8cfb2d6784e257101a5ba0a15be21f9b46e987d417f161d72f162e1958ec0326290ebf9b97b4097818e3a5181dd4188d69842f10e0683e9b60265799006e45666fc8b320f8205fa9393029a961b38be9503e94a1262393c083e34edf3152658a7511f3fc6c0a9e0725d5a203a47fb15b8c9fb0a6c252dc2e9a6937a6365f1364df3635b1d31ec356308cf84f8d71e718881ec639b6119ef97137dc305ffa2c8640508f79d027c15b5f58dfac1bb81503a0db0d5ba771527ba3d837a3c52df0c51e52c20fde98d831246a8805b0e328dad19a02624614c9c4f8726edb7de3b4ff95e0cb644d36c53132f06c3b61f3c5cacde15175d557a47a6610f4f5e0016530afe6c125a202eada3d21566df56f1c308e0157b80f61f1fd3db6bcc5366cd798e1ac4ed9b1aba7164981a038154a52fbeb652da3a4c73c23c72600dff27c100c5f39d47fce89d1eb1254c461ea417ca0ab1933446f91209e06dee1c1a5596f53f0855106c5252522383c493657e5b3767c7706631313512b40f388c2858d86bd6dbdb9311cba0a9f4a1fa347ae2f8b5f715322b1f2d2c08c708679206be160b03056f96d4336fc1c365ae6d98c3535650178df301c10ab507cd0a9adec05248cd3f2838f9a91511c634782f6255748cb33961fd6da91d9ee52e81e1c1edc5e047af6b27b9a76083b10f4bfae6a7b3ae62f943b32b37c7f27f770984c080e170df274f1873b08bfa03e20da58187607f5caca726b2da43e15ddc950db0b71aafa1bd80769363ee38928ed67386711b3939b9acb1045aefe30bb3521b419f3090ce3020e2f5205829637d85dc6c4206683ee6659daf111869485d91bb23b823a3fa07f51db16bcc77f532caca7eb88c15997ae0ddf2498827a1222274c4fcf027a69ecc34238cbaed264856747806795197b8dbf0a9f840378bc4b39966a30b2025bd996713e80aec7376fbab1a049bfbafd8f584e0d38c74d6eb66539629f008ec83aa25275274d2227b7d608d18b321a5ff8d967524f7a6a2d65e094fd2237dfc9f56d951840acb55823d834f025e7afc37cc37c6673c7498d19a8f819d60c4119e730a368bc18475e956c9f93970968fab47fdaeaec64ccd33d8d3998743578e739288af84ba70712655503049fe4f3704824adbbf861fded9fbe7356a050b83c993c649a1db03b33a90c9d7bee20fc8053cbd4cc1bf7eb8d45ef4f7ed4a71cd516bd69c6f8818e6f88575e9fdd680f94cbbb424ca0c1ea38585a5c4b566b4a9809a25468c9424a1678278d79de4a34bdf843a27185d2d426d1074a87f749bde90a05eb168cbff41703c85d75f2db07703ae2b3267c6b116c162629085c966b3bdc7cb1085e7da54a0be89f6cb12c9749efbbd6c744b5a56242d666a7a89a8a76b746835b991d92293bf51f9256bc9e254cb74d59415d20eed5cf4417ad78c4a208e9f67b45ca2d4f7d33e2e106de95ee8486ceb351ed692db7a9fdd413cbebe4002dcb0de358b1304ecf95e76509b4e559d32ac4bb30f0a26d29ab39137aa592da22181b289e9507ee832a86521898078206ae818ae19333e92bc5134cd32f9652ec26175aac2b38cec59c9f9d4cbcb274689eedec0a97b3286183cfcfcc6c0cfd0806d8a72de91f7f6dcb051ee3b6386f04ab6769a6cf8cba58d015cc9e87624c395c44ff7af809105cc6774b0d8bf0fe01f7ec6830e01587184179424cb92af65d9df9fb0be2182989753e4212f1e2fff9f310ad5c027aad41a58f2af1fd27d0e9c7ffbd64835671c788f057a398a1a34fbfee76e95d3ddeeb84a9c5fdc1924be9f88f8daf7766bb3c04c603c49c920f8db4ff4b7c75398a2e9a43ae0af640c4661799c7b7881fdd118f0f72b443e8e534e03aabd4fb1f5cbea8975422f1e77f1408122c96f24e52c09ae9ebf6033558767a15726168315e217c4488801c2caa82b03ae90af756e9d7d3f5b3d86651a7682ed8875a9e2734267fd9e68a766da7fa492ebde6512eb8125adb3d4fb84fd2ed1aeda296549fcec508b37671d48e88a19f7aede94d50035c8257efdf85e91e11f2bf16ff299c4b699884e7783d02a6171295ae5c9c1ca311d13b60ebf7165ec84f73f0d6a9039cd9eab8adb658aba330e48efca91642b581997bbbbde82183bc2fe9b28469f1353fb3132766e86ba7ab46945abb31726626b63cd8a8766153eec43c02b7de4c9ca529a2257ee0b284ce6dd8913ab8367c1bbd476a379ec68903faa23435d477bbc2612e8164cf5c9cf4108b56e8cf3ba8b59e96810ab88a781138482423a767698d3e08875c7ded63a036b1570462081155961858c8b4452ff0ab8fa3da63954c30c536b6b92be52c1e48b1d0f04b2c3822d96ba8d3d7375efa2e13db432651e196c5e23eaec930e3414da1603d44579fa91b0a68cc68888f157c383610dd04457fdeb7d6402b26a68eac30e980e010e038d685f0f440f79f30d8850bac1843dde7403f6683f8ee364f156b7b74031e35128f7b498ea841b289758fb55f7c3906d36d9c757bee583d8f5275e54bf44b1d32fd970a06aa4bf76e2cbefb0f0c5bf8fcef0fb630f28eb2c693bbcd64aa5b476750dbeec30a7d8a976bccc80c30716abc85ccd2c63ab0d6dd731779b0dd6380df6d193efa1a9a45e81314ac7eb855a2be0ff3b3655d6c79c51d1f346579328ca15294b44d489a9ca798b47490155d2ad852b9231f8ca8ef1861c778ba1346b810bc395a33a0052d5598ad33f091a0e5da95035e8d69624648b71fad822f5fa8480e40fe38249d4c589e35e32b6bcc0becaabeafe76876654fa318e911c635c8710036ed58926e06301562addeca5fd263cfef4be611880e3c2b63a4655169b9133ea71300dd0999439b3466677ccb6c66abedcdbf9dbc3b80bb91d5e9ef5a3198cc7664cf204679d5897351e8a16d19da599f3a4f2cc60ecf7177f2bd773a225d6168baca9df4f5ea45d5079ffdc12559bb6164d0c412879d2328bfe537047c9afbabc318bc7077f6dbc9157a2c5b10f92427886f72406116e203f9d1c76758adaec63874be89cb091f6a72642477f729775ff76f7edc8dd496a03e1ba0199fa2732574c759227a8516ccdd8695e1399d58137730f85e3f70d4d9d240f0130f7a0d5ccc70f1fa7d3eb31c82675fcf0c333a36a51afc5e132ac3c960055e0141047eb3040c800a5bfc2a2f63bf39a93eacdcb71588c8c5b6246198ee83a02e5a5cc860515877b45b6375ca115cff296130bb020ea14ad399637610fe62d56de49902a54a6ac36aa45d6c0c126e124ee809eb2b171cd0c08454af3e9d183d70ccab01ebf7125b5a8ae057b300ec792ab91e34fa65b09b9975a8066d506303404aecc4cdbaf9bafc43272ba2d52c1106dbb2d12d27213bf615abdf1dd84ab76b15f6b7b119eaf7466f3e61ce989957af8fe05e432dd5c7bc5172b9d518db012974ca484b7435f0d6549a2b081337c7393067dd2d0ccc3f34bc5889e6e043f92948b824e478ded92971d1947d34cc7cfaef0cbe5c7b1ae2eff77400d274b84c69491c7d27544de2066484be59d41a222f75a6fd779ec819ec87fc30cdef324240c5c5a5f6be488f44ceb349c82e643bb8e623ee8ac7213919bf84800d10207038ce515c6b64e00ec011e44566c7ee948c65c908fa571ae96787faeee08bce8a5589078caae03e11eec929aad932583a98e6e899286a409de75a8170c8a37542083184a342c9cece55d493089eeb3c5f12b922106aa12897095d4883b9b97c970090bf4b7aec0649705952a2ce0899f4402edc4390617c69c778a4f16063a62a6d295761029b49bec76a39ecb3a7df775e4d89b7ea518e1d58fe99659429407e36ae576d8394260aa3f66c70215b12acd4de8b54c7baa926eb67be12e0cac09e38cc7ac33e211389fdc420879aa945df9fff5089e028a5f6aeed6a3b0abd03a34b0f34d00e7df5cfcd8677cdd4031e1927a8c6530c6bec7aa74ea4c78341f5d748a2ce51c208402e090db8b4ff7581f6d6b6eadc12a917aed7dbf8a96015e8631e262ce0c42446d90ab0dd53188f280c52eef6f0d3d4f4229579734c5e11f0073509893868555e2d54c7b5b0c7f4036ed3890a5137d10d804f05561b7adee9525b2d130c4398fb0d2b895187f72e867224251fc8e2dcc6c37487e2088d60be480aec09cc93c23e9045e7e4f6900cec173f518eaa8b796ee1b0d67e8e9ae88c190c222e88131e5e0445b1e2d82f1b3ce6f0e234030086fd364f20119aec82d9b02482a3d8ac3bc37fc7d7f11fdbb69178205f1b1167161cb048d148c893bc750e728da4347a099663209fd6fa01ba8670387117861f698e078ce5c8007f011d0a3e27555ff5944b37d378492e43d0bb22087067c51810ebcb227d305487d0db6f4c2a122cbd1a98a27b82576f871c437a79eccc62b5fe5bf0bc29772de00feb8006b2e9980dc8d109f129e8c23191485c24d2f8e7904db4ce18a3e39462033dbb083d76377acc38a57d20608b5a86436c11b99d481125a86aa905f76f2d34c689592bcf6a6f7bfff55353e7d5b35bd1e898cca5ea5ce53df90582938b663253814bd907c7223e64d04532ac1dcd23480ff4b85987d3bdd8f46baee160ef1e2f4b0584f1575b9cf184b528170b578b65d9e438098f8d6d23c83fb3379924111fda3dc0ecf4c01be05f6318f1be2d7adc5221df87ee872a9028dfbb626bbd8436024de9bbc52a0d291d7771649c9f13c35e9a272b9a3b429be63084f79ddcd44a2f5793b99467df226b31b43cf4bdaf73b31e81f8c50f231bd0b96ca51705bfd0543a206efdb7d82c7b892b9d8639f27206b2e1d11bbf405bcb3df9874578dd60d8491b54bab8b0ebc58312726844829e423677aacdaadaa2e438558220e52d5a2b083e913959cff3b74411adfc6a951923cb1c9e5f63a4067434e2a03ad5ed41ce0257ffde0a466f6e7b85a0798a9d4f3610c390befeec4d72ac2d1d7c3136e8a3269463e6854a9b0c497f4d045f28e08c029bf99c29fd5bbf5b3c1e5774bbdbc96bf67f3c6da1f50238668df35b3ae0128dc26ed27af20e509e3c0be578406a943ad10cc3fa465d8a5171b04b370846acc22cf31be549743ccfde654e8926eecf5601e08202c4c3bec98dceb1ddedd7066a4e7d9e3d8cc755fef9fabfd8bcb98349cb72c7384c7f1656c172783be6ab6725701ba56f885594b688a13696b06307374ff4302f85c7d217f15b60da13546821c6b6364cd1735524b855dd4aa29a8d25a82588bff89aac978a585b5a267fab6364350194548cc824781a09882723e121ba1460a3ead65aa78c0be3aceec373cd3fa8dbdfb1a343133e61400c0367470af925d3a2042054393e40c2dba3b5e83ca5014dda2eeb2f854550f542da38d5545189d221854817bc6491f36de3a5c44c16fdc52143a828ed0b1da70800c06f63a8cdfbc78c67100e8d8df4d4ac15f90c369a466dfe6d89f80ff7fc1b8fe33a551134b17c894b9ce37cb91548d17f3a09c62061fa409fa836ebce003027859f24148ee00bb3f16a543f40727698d91367e637f7fa84738440261d67ee1e63d221c7990e7e887edba4d72b0f3165f228b7d4b612c01ffadcacd08afc6caae7375fb2290869b00e75db32e65a2b23c8af46075061e3d20088c7876d119f542bf11f32a51cc2ea303739b2a3abdfed37be515c9958c64da257e36ee4b4287f194465e2adfcda50f24e6e2d6b061fd100204a0f7dfe069136ab389d69361e8830780a24fb85bae3e4920803b10453f7fe843b69089b377c92ac637b80f669bb79cd37cd071709baaf2beee8814b88880d96b6bc41b65c304c495dbb434539cd3a4463a89dbee6ff92df1efc5d3ce303c3678ef15172de15efe62c60e155465a04cb5cbc3b7914242139291bf8242a061640fcaca30815e1f839184ccb96a0d3aa62232f847b43693888af86822bf7d3419532bb0344e686588bebfa9d6b7608e4f6005e27d6b9558e01c08f459919e1d1a3a0d54e3076370c8eb526c14e21e8b3af5ce668be281dd52ca18ff1404628ea7395168164e1d9d1fb577cdf9d73d93a225ff0de86e6aaefc231c41c689a3843a7c7e5f202754772cd534d44959dc9011715f5899ea1c08d6b5eac8bcc5a6362836069e3d36c465c09a29c7ae2fc06b2c14dc505185d566456300b5bea13b15d3e461e6c7c9f27f2d1c327bf30b30f14a3595ecc23188960f41c44b89e8a36826d3de60b77a53db430817b0914b1ef21ef05f9c54ebb3e5456d48275b6e4f0f4fe6428340c5b9af5c30ae7f401b4b1704b4f3e801cf6e307f524c5d31dc3e5ce1fba94174b26851d01994c7fa50935f5cd0dd58c408e9d6b055a2e14765a37118680389cec6ee951888225981d31b1d0c952837563fbd55d62d3cc3136deb290328bc8a53c3bb34fa5243d79eb942a6f756792f2b715b09ab677f9aed9e2b21ddc870e2d2b4c977ca1748ff48b8b75a32b736d18cc6a0ed1ad35a0ccd88deca01ca9f259b9ca6fee66a61d4c00e7ebe1ea6dd5f9b676876686d0016cddb966901f905697feaa03766915bc9a0dc93379147252000ea6302ae00fde6c3f6474f36cbae3a79d269f439892303674ea26399217d07d746ca41750a4722da43b77ea869969b4a70ff9a5e588ba3d2a0fce13d61fbf7ba7f66469e10804c5effe9506b45c6ac53a942c20cecda7b2a3b80c465568d6b6999b150d61da0ccbc6f6d8ce9d765df8ad9ae50efe1228e98b306b6ba441d2d005fe19682792c801796cc670c7ae3e1a616e2dcddbb7b2c2f5fca042ad0cceaa5ccf8602037851c5fa7e27bf9e04c9f10150bd8d0990e045a7eacdf98125ec60b4f8e89a14e67d8a2c8ec4c1569c54bee29cb8cb544b3e7c6854474c0652d1cb7fc6ea2ea73d09d22b1ebf01ccd2d19f83abb85b375abc790d07d64b77721e645e156b535498bad8540638c27263ad13dec5ae63569f089f89f3922f6c5092d5efaf07ab01cbe88cfc31cd2c50eeeceb429b5609d8674b9c4a65849f7842cfed3c74430c3357df2cc4318ce64d1a8abd6f4f4648310bdd4f67c0e7f07a5965305d18ba65e258a5a4cb25876d1108f10758b9c83d80b1e2a23dc9af38121472cf713c284f31309fa6ca1c027812399b99364938408d2ae863987119870e0bef31132392e867ea2840e87ec11c4e9e60de42c75ccf69f882ac48166286df4080e1f37c50939d729729746c5d939c903a4d5b1e88e55bdb502f38ba1fb95259aeef06d60af02ec63fcc9b1b179131ead5897e17d1e6ce24d0d4427ec7a8756cf617288dde6f3e119287a903bea870c5dc4a3ec6fb86b30f5ca3f1d6d3385d05bbf146de897df51265c9c7a7ab4c7c55aeed2c60d9370f840345a985f650e14e4c1d8af235fbe69ae3c9f6939b060298cae6ea7ede74753603aa1d49d359792e4d7c4d758d83bfab237f6a8b4651c840bbeb8402da88c75939f0e0c81167996a8b53fd609d8656a1eba5f42f8268d91bd8ad01cd9f23badf038855aa653ee42129e032b45bade34eb11110811857871fc38a7e9822d08bac6894a28d952f966d7b9bd70a35eddd17468f90c86d218df4798101b84303eda71ea8c1d225e67117811e6f0c568488ca004a8f026aacfde758d0c8e369dd5f111a46114720f43c081d64d9a997116a2ca1258dc439ec8047ae480be4883f1ae6aacce9bd69c0122d20df0d1535524617de2b33805d5997a84688a0b3558cc9005ebe4c1f3ba7d344c7969b0ff66af2c76940fd8c31c211e6833bbb82459cf52f1e97e84ee43f170de1ff41edd64c153140f0a148065103adb457caf5e852011e6e7511f4a797ac70cf945e161ab8e795fb7d186843b3313909d8c268d9988e714d0d6757c9b51109744775314e0e06aa1d2570ad4e61b23b8513899c49b3d736f841e50c9eab2a0fdca05da15d59a0f4a1251fc30ef7219ac267df2597f514f1ef96ca7a785d690ba56ce1338df685991ef4a4d25640af3597a35db0a13e97bf29f41b2863249a6beb2f34a8d7fd8137755e7e4c95641ee1417373254fa2bb5e8654d186c5a4a7576128990d86f157e24de02797e6c735565c9c261407031cffc131d9b0465e116b97b1ce5a51b9c4838c00df884ede50ab9a3b9c247e3412d230b75bb87431274b38164cdb2540177ae1ee872124088723634d4e1609fa183cf6cd2845c43d04242dcd2e2bb2544df88214a7e138c7212f4c98841ccba6b02915bcad1208dfba6d408351a903b5ad74e9b1c25aec3721be27f5f55ca04ac0b09697e01d3dc2740ec506502afecec8693e57363a0c1494b87d035b0d546e7c9206dc70a0fb686b3e31687cea1ece5ea9f2a9eccd606f8df1a4554ccd516b88ec0627c8f02b954f2afdc5b6262c872a2a3f7b1446b9f03d98f1125c90ac0c0bba2491a0967e98c733ac79b98d93358b1f237b938491ef8fe281fbd8f43dd1c25b23cbcf622357d3235d536a60b52b129da0ee8c021078ba0d10eb50cd47b4d630169591973707cd50fcb1640b1ee2a38977a75c43f93e8a3babc2dcc87cbcbab90169765bdeb8d02a455b30416cbb9c57c6a607903e6600a5e116feb62dca6531a7d8a5f263383d3d08f8cce260ff01bdf05bb96c3ec4aa4478bbee1d6632755c822ac6284121f5116e6c03b2ecabc351778048e97abf4f9c76eef6b1411b4a1923da7a708784e81cf69e01fa2ac9882de0f4ffe8ea7c7585056e152a9c04453f4383ff1e0012a55bb997192cdc7753add12964377614babb37c1fa387b0846730ebeb6c4aa70df21112a2f4cd1a94eba4bc8a58baeb2a4959fa41ce547eca1c417fb8d5e12576d5485086f560984570fda770e05788cf0055560f46ef24043537ba0e64f71665f70d697e9b1b74303b3aa60d2cefec879bab7624ce9ca0526462cc49043e664245d026b79a99645b666335bee779320ccc32a9be36efd18a0832974197c75a34a71f9f81cb8303ff3b3f20539fb18e3bc1ddcac3d5c33c5e38d8f08ce36afaa9f616ed77fa3a995b24ddbc306066b9f086e85e470297fdbb117fa84e186136a301c8afccfbdda354aabf177f6e95b63e0f27b6d683cc68de428cdf0ac422002236a2f46f73de167c2ff616f55c3719158f560b9c3a6afd5e6d71ca00c12f580c36ffc488b4c160408569683de94ed90fec783808e838b94225548800a0ef817fc35a0b818f97095632840c7acad0d248adaa2739de76c8edebbc9b0f4c6c5f7a26e183bd6b886f86da92b234c74300b12836b856c5160d9a4e52e3ec485cf7ef42b9957922556c32b156863891d2716c5e414d26b109d0346ff6e2c4cb6ca8c3e6f2cb83df72322436b4f862b3a8b27272675ccd6d7a67b54d4fad8770c250c905846b0c30cb52fee4577a7b50d5db76e6f683c31f1a333eb30ae67ccdd61370656fcfc700c4c409b7d9dcb4db867e363cced8f3f4a3eb70d269efd9da9d273930253746fcc860583a5eb46cb4de49076b8f8abb36eb344b5546d384daafee2025e84dd761923970f6f8bc97b0ee488bef041a71562c53561c5784ef54b201f0a4bcf2e8f3b1dd01c0753962167af3b4404bf77883a7b85ba9905cdc209bae4c66c5c91623f50eee8826dbb65e9617b5c8527dff12bd23e2d922be4dec500cf4f3664d7c8a075f44a70437ab9ce2c79910f67fa0aad1896a802b6c2b7cfcc720f5c93a7b301572d37abbf11b29a085e54ded9d98e2f9f5ed550466d0a7f44ab64315ed7c26cb7e50611eb025c5ad56b343f44a46e607ce3244dcc74d3d91ccb4367ece27bbf3608914a0fd4df36e4a26671147e6becce94da81b1a96675b577231ea9b18254dd132f93851ec6dd0c88faea660e1f05552352ccbeae1b72d64ab46094fa6709b3508f026c8a8222bd7097b64be008ccbc3d7a47be68d347777fd869781e4b85049a2dd7fbb3d5ca9dd6a2a721cdf0c2f035dfe596bd23fbf7bce72fafc741e1b2e194f540b9a5b5793ca22658c4166d86bfc512fc9212dfa637b13bff6c9cc39c4ba8fdcb53a9f1cff28cd4a43e39992e75481838be77b1b111d77179a660d8bc93b59717475251e97185fba949cc30ea5f7e3a472cf568a787de0da74a30fd49bba27253ec26e1a4d35a9df7b7189fe9d5ffbb0226cef1e6249d55c610a2d6d2be0135eede5a72357fe71096714e5ddb7770a270c01abf5fbba1202f273151c9210ff369222ff0c0b59580745b7ee0516205ba0151dbde05cd1333693fe6752236eb9fc0f263b8ea5b5befb1b8a50f9cc2295adb4390ee87b8e15e342f63c6a2c7af191dc6b2966af2aea3aeea282ff3a7e327f90627650114152bc88e135706cf7a0b95e90efc288ea04dc36ff9047c73ee1c64ca7b1b7c16602581c889626188dd825b6a0bf6df4a4fe6704a945e08fc37cfcbb4dfc1ca5856564a3672f2ad56c290db71000da593578fc0b78f82d4ee2d0d2e634a45e329b948130dfe6b31fa586922848504cb3633ecd2605f296553b550dcfec4c6a2d11816d6692732d960738d114f364baf20322f43f4d4289c0919fcbc43c8ad2aac7d3c0aec7ad09b07fbb1bd27366e494883b4d56fceabd3adb442eb8ce5219248531d307939b6bd5f4b4d538762f0f01558873a565d467242b49945d6a4b5fb64c930b7a656520807890a5a445619c5a5c77689b07906c64b04abdc3d161bf84e605e8eacc571b7a15bf9d4daa07bc6424ea01803d89825cc8b06d55324efdd8f4f2950e09503463e96f39d43d24577c046d25ac438ccfa1be20ee63ca44bd91dee7039a51747142651f1714bb19f4760deae40c0913344d7b48a0e7dd9a279aea060e1171bc1c70d0ebb82e0da0a5a7d10a8af8f9f8180739615c63298b1b2a0fb485c5b653c51873e7bba374e7aaa9ccb248d4d4f8a7f3b5965fef030ba9b154b6df65890ede165be922a9370c11c1bd0ddd1b1e18cd4f0dce1a5c36640d40a110fee446cc17dfec98914c4cfea30d45add466a118029c2739bc477edffee27bf2e42a508ce648734764118b1f35e2b1aecdb8b5de312ed898e755f0eb5a3b3585b8425bc82ab7fb9dda2177b810f14c4c97f117113e639dd7eca507612f5945b60bf5e11ac420a013657cbeba422835fdc3cdccb9d298c0eeb31fcf44f75329c1a952fb61257b324b49cafa0b8abe4b65534cd8277f453a0ec9b9d65b94cee4c021938f22c186ed2acb54f61f90b2cb8a9c011a9e21a6f3bc28f13bfcdb94b6570e984fdca94b0de71846d15ae76caadd00d993e9546dc7b8dc9d1edd9cef97a6bee70632c344234d9a20325e318f26412d613cd4ad6244b2f43a828c4dc1248190bfae0e09eab5077991f0d88f28495188beca40a9aef008d56cd37b163b96a3ff29295f9b1992be6036fea5ed4c8151bb831b2f9d93805c0019b9b26cc4d250ef106629478d42e6327e1d9cf0105feb366347cb9079b858af2c8305d08576969198d755839eadaf2740bfc0001db76b7fb5e3cb5b97c26f8d1304a1a37806f201065385c1689ba71ca30a0a400023490e71275ad6f59da57aa026ee89ab7973d50d8cb6a61be4f0954ee48f83350bec663bd80eb502eaaf3628cabb7e0bf8d2ebf57116c11070b97af5fc9583a86fa346d27f2d0866c32442859fa783303021c3dbf2c45637092d4cfca20dc2a29b3c64c0d1a33d26fefed1c68bb5a85976e289b217ae27aecce9c3c4a0b3f71fc306623561dde565d9396c92821390de5076b2997a1735f845d2e522ba35d855c0722bf041c49ceabe9db51a908ead212572646b6135b973738437ae4f0a7fc49cb9d101b2272580357e463cdc2fa5a132d208b81aee180cd01b9d75788c8e3a438febd1edf96c1926a6198745618a8ee4255dac416080bc05689982a74b010ffd0c1180f4f3f3e5c686f8c42d21b3d6f086de1765a00675bf2180a9ab1edc3e332d48cd8eaaf0b7a60dfd556196546861b41c1cf561868a35dbfcbe5fff369033de5b71b2b7de71320f738cf684ddbfd8b2a19c0f818e8c1c649bbf13b67e39fe5c267ed9b872d50d79f4d255cd0ddd530407f191f0a5ea539168218f3b7c8a29d0a4ca00e95c3faf6f035edfd81fa56b218210ca550253312d8c4e9c5eb0dd3762b1e6a9638039fdcada3f23e855771560ca1466eb9f25f9de7ceba6081f6af5185e9130f3707af1da955f3d186a3c5b07269f0525f7532846fcdfd29c9c550de7a0d4d8725ccae5d42b0f53dac7e41e963f637e24b16e1cf616ae11eb364db52d62709f64eecd6947ddae336c8a0a18e36d6e48c097a5f358b7186f1ddf2aaf7fbfceb496fb41b57fdb020b675088531444081c4b3a591282375ebd053ed4b1692376e2b70414a77c4e95fccbdf1c0383c9d5948ca923ca41e1303631b9c71792e2dd67657615b8408fcfd44bd9e7e7c6eab0c818e6b965b96d64580e405f14ffc7b4fe0c24a73ebed900fed117c54932a6146642ce1894a41bb970d154c6d2747ed41b19aa99bdec952edf98d20585a5763a1f7c5cfacc2ed9f9b5a3c44bd25a61d3a7d55f697632bdf81b63bbe3097129a1b8eb1a0f56eb6b99ba32f5a451dc8959bf2e445da32d724120b720bfbb0040686ad32e38b8a0457e0d446e4c197e3b255450da85728af9de862b02403e50615016192cf8a5d6852f0ddf3baf9647e179b972dfd03e605c9a4c5aaf506523933d65a075d6b71187681cab0a4bc0e048b0089f928d6d1b031b64678fa428220c1c17642a3d4a0337ae3dc3de78cec2aeea3f78616e5c24063978cbdcbc9b428db62a23791c5930c0acc995faf134747fee1fa047f42bbc9d509435ab9f9751249dad019f66416f0d2d44a0fcb69f9ec7a21991ee61dea16843756d21709fe68ae392d1a86453b664e41c31f57ded63f95d2837f54c19406fd27a209d3080c03822e1a0caadade20358e3e04a0928a041c3e7194437acf44b185d6ebf537631def1ce6a5c54864851d96f9294fece2239ea5c049ac7b37a26a7ea687bc4c8615c86ca5f6e0fd91b62a6adb82b604b17f5531d65120f01f36f4387acac9c1162f33b1c05e2b77138c331fc3a23cbc2ab397aa59daaf95e728d4316760ec3b9638250b72bbb6481608cefa10800618fe739a98773777d692cfea6e73437e02d6203046cd34ef684499d0f0589430dbfd49fdefcf614d9f02db750a7e6bd3125669df30a1998e228044ae450ca50b52112923bd4ffe4fe71fab2dbdb53577c0f9475218895df85cbf97bf3fd4e2dd871ef8e048ef883f0518891a6b75efff4f4613035fd4d60d4f506679c56839ab84f76d6f7ed9b4ec63ba1a21d482ab5d73a6408dee494178f0f074eb41f0619a20b6fca6880921afd5e2d836c333ce75c7755c0e8208a6e476e6f447fc5a4fddad4737c22227235d7243b05c1b937a6477f53821f7c4388b008a6aeb4b1e7f28d9a4a99d90c3fba8703252993e968432b0101ae0e956ae4ed09d7c83cc033148cf59a53ba7f2785df89a94aa48289a937fac162ceb2f3e897f4f30bb70e5223c91352a62847ff5b436dc21992a9f12ade2d20bfe36ec6a3fefddcdba7dc55bc58be12a5e8a863a3549c7d5e4f48f8e529fa9505e4eb4de7c53e9e1ffcadc605de5d83911c95d202d14c445ec9bd0b548977e6c6484576c0225cc1297b3568cd165e35f908bb89fa0ec5f5cf3e7730f247a9552aaaaa5efdddec0d24b5b758c76194377f11a868f050146f66c20756f842fe7461e1f9f4ab18720fb04b94cc24e17b69f6774f228300c39c7dde75bde060a993e7175e93d568365141ca18b0bcb7b1fb820bfcb7eec300e06524012771c83604e44cf87e7cb01fe1973001d5308358a841880c737bd14d21aab72b9fb3dc01c2b9f7ec67a3b4d98c845877d96034a6a1ce609c0efb1e27766c266b1d1439d8f13dbb4e364315d410535206a246a4b910dd492a34fbdf58e2f5d4b9fa2604b5713378b60d07b698e80c333d6819bf72bad75675a0ee19f00fd05293c161b93993e393b03b4327aeb735d0463d61b66b55d4b6db10649a94bb2f1bfcd15e86c2e662ec57a94bda89e9bac8327bfe6e51eba4eadce3f48baae908e95438731a9da66e5a7c22d57a0cdf2b6327e9ff84e6641a1c70bbbd42e776f1e19244d5c3aa66a89409d115cf1aa6387f7ce7cc0b67fb2e650ba4519056cd664a22a2af3f17770d71ae4e0b22da8ef03bc20b35e1cfb934189ba5fa6177b60e5b98e4ef61a0f407ffd8e8230a31cfa7b7c8ce1c8758e499b32acf8394f70c2d788f025cb31cd09cd19e5c93c0239c62315dc1cf675d76d0515bd0918004148db205a077b917d69b2160a5735b2ee5255559f948bc094537719ea3624cbb011db4a8cabfe5029614afd31dd8e0ea646c762f83fbfa06f6fbdc9ee3838bca852116f2b719d55433c7ac1753ddc6acba7f9d0dc89ac9917ad8a11ee710c767296623d1dd7064ed42219602ab2cf6da29b2f8e31af8db0fa05787013dd7d254cbb5f8e521292fec40274203bfd8203c03bc17320978b286cf7f5a51b850804a2d2167b35d83d97a6092cfab462ff74042abb36b8c4431d4c85324c62d6f2344c8b07258819e152171243eee9dac91185aba4b7a01ae9a8ad413bd2675d06e4354c42c8fff1252f9d555ffa773d62190281ac5809eef1666f399e08d2ac342332d0cbd43274557f2c146e6c92402c5450ecf9cb54e79a7b2d782d2566a177eeaa6c7387cab950c500306b1ed6e1ea9902f2f0275fa90640140208b4ae3a600cf603ba6ad885f14c5c3a512bb4901165beacf31c1dbbb7ea9a851ab72edd627e6c0a851f7304e3d25427a7d790753d4bf23ccd8c7915d796615c5f46e43ec46ee5b9759b4c9d4c0e845b70abfdf748fe34824af19ddd638f01ef43eb1b1d4c35888c8394ee249729f7463d720dceb5312b166cd9644dee43afb9700d8d91439004d4bef69d7d0461a1528f81bea960b577c59c3b1e0a416092d6af9f063a9296a125473df91cfb06f16252430e24103895d7c96621b796d3c5e978efed9e7134b502de5fd7f849084a359382592c8c818ab93283e55f5eb668e0753a1a5aa43a77f75f5647e5df80114d1732216a97e11ee3358e99a1ac4d6e8ed2ea600ee43ef4fc6618db663941d7065f1cf83b557610d774d19dfc72d229aae4fdfe8d623d038afd7ca85a1c2c324f985cc8b6ddd666d151ac2062cd1a2e17583adc3d969f38e8874a2283b1ebc42ca55856e78ed22b539581f826a9eb970bbb952b528022041b266e775b72989232c1ecada56f0b70ffdbdb39f2a3d66585bca7fe038d8c9b3c4835af9b572a704ef2fa2b4ddbd160e6ffac111e3d51d9da1e7e6848d5d7766f746fa811cc2b865659eb187b4394044e6db099ac0b0780d5c08c4fd421a008d8892ae907cf88004c9805c74bfda263a2561fdc780f93133118837e4bba20c12dfa490c91cd78d107413106b6a4e5775112392fb3216a1bdd60778f586c6b4b44ef15b3706abdc40748a0a4d16fda82587a691c443821603f30cda5ed9949314f2cf938483acd926ea99bb0608c5f8ee578e8211f9c5c2a994bdfc8e61154703da404ae5617e8ac37743c242ca22b10e1251ebb4d5c03916f0131a3eeeec5bbb096d951972fdd104763bbecaaee828c7249f4074a29d32a6b702ae281699e7ce43839857c873e9a00cf56c0606c65f3f323ecc7b0db29759cb6f694a58d75073ad639a7b0cc91030c4ddc1486847ed6b12a5fe488a734bad0eb65038a8ecbbc3a9611839ee8fbfc1df93108332a5b40baecd419bb8263c283ddd1cb2afb80b6173a872c1ed370632ba20c282a4c4b1f8ce7cee70f665fa8b630c4bda092d74f11c90797dd45f513497f41b840f9fb0c991e28cfdbe5b4404801b688169a323de9b22542c63eac5942bfb56bb3c23d657eb687c64568ed36e800c441d6a6908cb45f07e078eaa46e6b9c1d319f499ea078f73600a70a2f066b1b634bf66037a94f8be6a52cd083f43661b5b2d9d6779e29ed0383776b82c9a070ee8d33bebec4528fa1874941fa0b01a078228cd68012072c6e9f7b8508d6d8ddc4471987491c5ccdf664dfe5847d45f674450f59bd284157f3704d55669eb7af1ee4859d1ba2610b3688c215b6420e8976567ad2ab4491ee24c2a77caf3932f826bb5fca963c547e673c22bca1ea1872ba7b578a1326a42d6a39de9f1c72719c0f360580a92c4797afb378808bcf5da16e735f8bba6c464131681a7fdeae4783a1ef83605559e2442984ebad1aa70263ca3c9e1e11c442f1a5bcd727c447470414999330c0bea6d6a8c05bfacfed4e00dafee01b43f00aa4fca290a2bfb0f79715ae7a9c28b3a64994d8830aa6bc4466859f78b7c68e99175d6228462cfd4088456a77b687692bea810bf02dab22677b9c2d4198c672876ae713839b6a3f089be14425ec4fdadfd12dafc5142d3b61a7901e346cdb534a5c26cba3ba8fd2d9bf4f128ae64fb92c206f8dd4f870881c8ac356caffddd3f0c796d9b4e6f1797d6ce0a2771f128fbb6075dfccc5d975157ccac7d87bca25d9a5aa5bfb25b1162258c078ad83b8707eb3178d28c485352f157a94590dc4f61a8c4ab8a54cc6890d5a1388db694e4e4345cf8ae2fbf84c0ef4c42b86e441020a5a9eef9f7de1d212bb5bc1067e8c892aa0e49d93b1fab81f7a7324e1a7438b6230242b7c520f00aa0fc53a41291b5143d609ec664bcc6668dbf419eca18dad8caa23dc9bbc6e90e071804c99332591df2d1355f3053e345a3a3aab5e87a404f36f105353fc2d109ba06ecf0e8c9b08c39dddd96a758e87131335b80847b534009a19a45b872a5741904e73b7c6af76229b39a2cafff5cc56fb8d5598eb8b954c5babbc6e2c427ca4c2fd6ae19da988893d25ad02dbd7d92e34538c2b14e695e5365cf702352e146f980abd19091b63e4801e916b3686ed59bd1a9f81af46227c6fba16be12e212db277809e10335e19ffd393dc5ca493e132cc254c1a324a5821bda898acb6aaa8f99ac1a215176dba1ee2f2b400bfc7959503ac1ee0be4a962d7a0587dd78c7393d4c46a58c5d4a5833c8e6a9770304d181e31541c36745e0c8d155162ea50e8a2530f4bbc8d807c21d0163d117a8d3d468279d478a78d281869e138da72844694a6f39576415ebba0edf9988473508a15530a17c75288941d3b57d53310955d5ba77e631ae8edbbd10b69bb89d5a44c393aa607e66b17960071144c6a4a3e2b36ed2f7cba8a3e990e6f55e877d1fa2f672dbf98925fb4b9e15d324ea99812c22b861de2e92461c1d17ad25f7edf031256fc8f99ae1f1cf5de945c98e0ff19016a2ee2c13bd59b2b2e7d670584e14ce34e561708a235b9df634c39b07369fa7d75e18580f2d3972d914ede07693bda53418bcab7f08cd5e4d3a6f3810949d95b7065883774ee5b7228ff1b8cca0c98a805994aee8617d55dc688cbe15680dc7ccbd295b6cbe7aa96431590fc66b152651cbe75cb4e855e5913f29028110ee601aa2ee667c12977f615fe2903f926e8bb0f6566b11db9f0102fe748b74ed1a5792996489cef3c5e018275a66824c190ba542a6bd2acdd59d73fc390f5ef118b8930c508fa05d93860b7f5204f3bbc8bf405a2654eaf1b5da6ef8c312c87d78c5660c4c6138146dea6cedf87e6feedad595e013e80ab8ce4f2e9656db3ee06487fe7b115a913a692d0f9030066be943d3d5d35df9b10fa2678bdb1f45a9f77e67ddbbcbe5df86ee1ebc23a11da019785372a121bc6d762f51fef5f6cef115946b4ec528046ebb0acb62a0061b0c30b1ecc2d98865bf1613eda04dc8ef005246ccb10fb3853abdf196d6130a4fd2cd1708b5a60b046361d0c781ef91547db59ac6cdb636d785744bb17e40a6c63f477e8852d22b52605c17108da6c3b3a83fdf9bee3f1d1dc07b4208470b214b46377ab325edad51d00a86fe9b04bef807086d6c5522dbbc386713b029b02b75215ebb9753626fd75fc7b0ef8c15d5424e75603d7152b7aaa81b08de62980afda0f06eb6a2c647b64522630c9159f46b832d0419d123e13a1043120b9d4b24b984d900db221981595903cca296a38ccf8ca45901105b709c06ea588265cb7a7907ac268404407187109baafd80fd97624f9b075d2e421fc61b11c1e85dad1fbc7cf4f5a742920e83cea90c3328029e39ac62b3b6fee9cda22afef6471d55002effede76624491da6d2e40e0c04961cbb530e6468534c0b6e38ff6ebefb62da666e9ef70ac68bf439e9fadfd8f672c0590d01d6b429ce97309723b35484b9db304cee62099024b8d8654a021715cb575c4d27ae69057ac89dacbdb15a9123b6e1ac185ca4d0951eb76e3e51be4fee6684704c1f5205957781c79c243f6abd458c900540aac32097259237f765ffdca7192535fc9f2e9096a27382b9217542a3ca19a06100944f2602e53c7a28e4971ce537c9fcd72618736ef1c50279691ef2778b9f02031148fe9750af7fd5eed120a5cdbf66a5d71ae00a9669e654a5b3f359d676a06f55b7b2e215281cda5166f584dbde234c389d4fb57d99e48aca8db23abb9587d603ab341f23ec0e64c55b3d237b14da738b4c13ebcf0e994badae230076549918e26dc4a15c76ce6ee18b9fbafa63637aa285e671824dafad9efe0eb7525f5e587184dd27419a85e4b335c9adf7038b8ec3265340eb8c54668e51771419eae217611e31857e6c3a61620837d3092bd7a385dadb8db9b2d8e80f3c2a4140abadbe61328c22b1d447bcc5ce531ce2a883c5d9bbdb63c77f75055498b65ad7022cc7b5f6ed0117f4c61ac613467077b87fe1e85343e1db4461a9258738a7fb23b31335b6c3c34aca95a8f48616538b2e8eb3beded64b6524d15f0f14438420506c5c9709ebcbf52292bcbecd2d3d691448faa8128668a3837bb638f25f79dc49be45e41f4f9c65e67bf79ab3d45d9dcbaf36b7ab967a967f04d1a7cd8e7a2f65ee66830e944aa600e675acd64bc74ee0265c59734b6f3b9cf2b25829a2592d89ab116409cd89a995e7021e5d8b64d6bb66125359768a83ef17ce41a9e95083a70cb5343a14ebd1a933905195eb61e5d0de0bed78ca096d0b940f0fd02892c5e26afee20db712633fc3e2061c0a3d0d4dbf41375d36565fb8a8831bf59a9ff53fca26e42a84df614b6ee14c8841240658864328f9143528536d6f75fa94c3e9898abd55e82ed77ef59cc6f5ced84b76f34796c66c366b563977d11eebc48a7bb0298fe081b48fa89e14d5deb90c332a8419d2c64ed9d83d49434d858905583909a63dc198abdd4f50fd817f5553ea521ee5a51595abd01fbc9da83724760c14ffbabd121eac21a24abff2aac7cdaf8e067d9901d9c400a2a1ed38b1c803f50083aa49753466bd9ffaa88b7ce73871cd52a7890b8b2ca1d953a3bc5decf075a06946ce61a65f54cca49690c52561f8ac65a09282a8ed41ed3d7f1273c58d76cf76147833708e71afc938b160b6eed716c7cb88bc106b4be99163cca7632bbfd024d40be587ed89e09464d7cbdff7d556715da28e08e798f2f0f28bf16cc3d51762b1f0968e2c35a3f9cdff3b75730ea47ce02c6d85a60f59bcbb96c15705cbb369d985c28a68533d5c907b3f789616f8e300127883bbfcf2b5120d808d11ae12d02bbb46ef5532944a20209d3d0daab03ff83cdd1d5b0517f8a8cbeda6eac23ea1e13dc4508f44eefb0591b3a19a325dc754d8b09f9de4aad01430c7263ca7b9f6b2efa59e3a2e402c047f451361bd9d1fcb59368636824057430c508a31840e78b279f3444a2d2d8300727fc1f0c90d3a44a4c81115337a1e5e20ef36c1da1332a189e49e810e82a1bed13dd45155ebadcd1ec4b2d27993ff6a86e1b994af869f39b16618a5b990b460362930a1cf84cfabb1cdfdb2ecba607794b3df0eba998b25aa852a00ac8e85deb9f8d5cea87dbfecc27e8f90ff8e4c5a6ef7266911316a1c6575c3d4da0859c41cc0db6fc128634ae6c8b8d216258e2541906eefb5fc57c1fcb59ee65ca4cacaff29c7bf94b3d11ab61ca7cbc7705336822d12b78eaad1dd11e6b23efde958913b749de0f41863bf6d6a6bcd81d7cab58c725431e8243fb47805a64f21e283e4513a7afa8f781843167d009ca304da4e2004ba35106eb6794a715ae790c20e060d91dc30a49d2f6c779a98c0115107c687b8ba1a9fa06c8afc91d4a0102b345e9da1ddea030ac00b58532ea936825ffad1d11d82c485f1e78205db9d0a3565f87de5b57d93bdc1e3045024e462c39e708530a955876a91880f8322a899f5b2afe9823ba845c35ff5017a66fcf30083c0278155fb6cd3523273f51eead5c8ec3abffdf48fb45f49ed5dec79660d385c34f12993b7aca08e594a446493d400f73168b1fdfec020ca68ea06a6edd023e28a1383634cb2bee83eda3595e3c2c9aad8a9001f43f45ea38416f41f136dae541894bafcd4e3c3a348f1b21a60549419e208d94f4b98f06da9369895ff1f122f561c486a7b494dab092d36b05a2bce04bcfbc910658308ae8f5ecbe138a0f3d7f03fb689b2384c15554d200478ef8ec21ac057e0e0d32e7ac2fbacdf2ecc6d47b4e451d1afecb2c93bcd06c9910793245260fabf65fe49debb9e17111aff6ce399399d9be043716be0e121ce257f9d0bfb099be0a46651164134786bef2566563e8b483dc50d3d0a5bb0038476abcc9ece2420334bf734052f6f1ece8a6dc67835f286221b1e4551ac1367245dbed7971935832819fc84c4e9f5932d863a7912b5b0f3f01d64a49ad267c12b26fa7596bcf1b3ef2d9a99ce1bafbbb6b24e5c3d31ad6d83c70a1c3f3f699320b933e6b870b53cea2405c615b7657b93034d0e13bc3dc188a5486a4eae53516d56e27e63e587e7209882e2a89ab271d34d69ddb5bee7b5d3fd3dbef1230494b56d79bd9b313da6e842b0623f796176f4d93d72875e0569da9610b296a3746098e1a2acc3214a05b595aef8f28bb555bf71fab3108ef2071de1e5234835d52722dd6ba6f05281b996e9048ff8649d3cfe1600c71d31f67bed26d8a8940231223024f47b4ee464e3af313e196f0a29f2869fd3a615822a0ba1971844863104b0466ec5192496cd92ea8b4ca9b27940656570d92a03be978184990f10316134750fe195f441f2e2dbc72308351659265c8cbae6e9d587f3802992c827cc3d7366fa1e0b68fab2ccdaa59ea8b723bceabda4bbd1ee06d29bb5b1a8b80a18979f14835dad83aeedb10f392a8486b7515cdce7342378d520e7e05523d8fecb43a56029579e9cc8226192ca58bafddc251f33569db327503ed24ce0d70cb0c4de90862a38b6f9191cd0fbf254335f954644ca3d5642cc792387c5bfc06cee105e1251b6857886e781a1e23a975d2970b332677f9172015c038ab4e9bbb5704a3e6864d5fbc90939503ae2fd9c4da54d602052841801cc8a9645f7837b3d92ea59b2000204493f32f2c01b94962bf704e7aaf174ac263a170ba8f8bc69246eea34189434e5f671e351c518aca1f8962fdb148a52ce671256744b98f49a5d0ba19417363699fea020e307266b9739a4fcf1b7c0e67a924c684741ed109a67bc495b4bc0253179d77217e4c22e450d2174fadc8bb0d256f3cc76f7601f0870f7b30b28820d4e5b9eb22bb83b45eefcdfe41916371f1d0e0c1de8dcc7a296e6f59c1ba216318fd99a73c5e1d95b78bf4be4dc1c05c5b2f7d226dd1329dca9e3b49ae6ad1288754db76e0c4e2a33d545eb630e27f52c76c2e5c509309d51080657861560b3c24ce29570ee090a1d8b81f4517f7d6e1257490d0e493ec18067dc4595a383144fb04b9479add91eb9359c6c8e0e7d369260528abc2186f8a69b08ea52c61176ed11c1750b663e7b179227409ea8d932954b4a4a291da8f09bae26d3688d27459963488755ccc95558874280a56af786e4f74c015c9d3d357f22731b96c8e3336f27c72759333b11a2853a2af118e6ad486c357e68eaa768363a4dd7f69cb854751f46ab4ec1c26b9b01d87e1d2fa7f4a23b1466aa00c4ecb636a9950659ab76437103f62d5c7e57426514ab7b74d07fdfa5a7a48e3a81ffbd075d6284b75852252b1368c673e1415c3a4b15950f8d3a28d5da8009fac9fd4bdd83b1978e30e58878267b77f4a1769eef04b962babcdf4b307386397fc1430e3fbb465fe19e114a4da1d1a0cc8d6bb64696b67faf7c4630ab2daf036c77fdc04aa447f1b62c272e9961b212aa79da5ed7e0394c024c48a2a82879a38a42a6ec8415500064ebd3a59b372a244f2c2013fe3a5994dd01bd9aad21088078e3aa854ef4d135c357b4121b194160b5fc3fb320950a3a1d7edbfa9834c10a5b2339fa41c97500edab815f0402a9ba80b7581a0a62d0908baa89078b9e80e8c17d048cff9377a6d70c6445a4ad051c0ee4c97104a893fa72f44d08ba49d08703b8fe9b619ec40008ba2609e3e60b4a54750864af328e58d93c21e9f400a561466414f073785d3b1ee3913c87fe56c0c944a143c4662704bc2e168644d62841664223de9a10a22dd7af6336fcde2f3e436c0ecaff7bc95fdcb46584575ea004a689d8d3cf436662439f015b721c0fca5c1b11925286babead8882b5e42e5c8c1e75fba9a47670bc853724dc505560fe23ac4bc6c58b152ef9f2e70501824a5b563e3afb73c1d0fbeab134e434f478448a1888ab16521870fc9f9143c670505b2a7a83142a788b4b2ee8421a05f2dd8950f89032d4a5a3bcc0a87a3bf36fd857ba87b18f0b2c2c6ca1ad1010db81b802177c2f1999f936931a15d5513173e813ecf0c410baced578c8fb2334d9c694ad6e13738cf4d755a30f8b0615fba718ec2b924810cf4310ec83f301d8caf22b3bf3c1903d3453a4cb6e36ac9fd02d0b87b9e65ba00aad1033d832265b3c023b75fc5ddcf9be59b12e4f9c72775c60232cd2ea9494a2c295ce974df385c34ae4cdbaa0ec4c3f88cebd6f5a696a93685124199fb6efc64c86a2b51420233fb5e597956a2e037fa565e00a15a148a913b6b2a982af07bdaf7a40ac93e0a93b381ed14d2fb192710187c870f186765a4ffacc24a49274fd50df4e416361d078c6e8b2df4c23f20cdd1d5f9b284b32c89bbfa2953eaa6c8a934d642c1781f8d2eb372099dd99274f6dc5bc2a3a852f7397d366f9f535ff092b55ea97807728ae107878e61ca7cb92a622bed04c8d1b26f0da592fb7a65fde0401951279a53ba87199fc69973d706365327165271f39c0db57ca16b53505b0dec092f992a2fe95138a39c3e4aec4df7f2290f831ef796d178b737bee465db465012157c114239d0e2d8222015755581431ddf2e06ed3cbb295755436ebb04a7017be2f0fb5ed246ebc3791ca38f878c56db8568d18152a54e687e117d9442d1c87ac6eeac13a7330d9646c6302d13106bfcc1209eeb58a3a3f440fe905c5f5c90e4b3dc470b5ef5c379a6079de93f1bf1682da34d984b8ded8b47c92a89201f80f5c6cb391d397912fe14b5c2ee5fdcf01da8d34fd66032934f4c33e1ad9344979d74bf8b65990b8b8038e28a98af103a9028b6201c350f7ce600f78be80d8b90a605607d4d84482a47049ad9934133a420dd1db0d7cd9216a6f5db2e7446c44e3e18c3ec4cf16af00712ed8fc4c01149e665bf854c43c17651dacef35cb70f83f6fbd3056c0d77c23d88e47f9568a832febf2a6c50b7c3bea3dd4f0d4355014254b6921a323bb92199e541cae9beaecdc276b7e6ffa702f959749541bdd5654ba7a88fb5351e21e1db18fd3c6fff9dfc672eebf9c5c1faf8d2b82b8af8e8dc3d6f0cd9176f74ae466c857ff560424d1780bd016e83f88b1d7c4332f307121e045959951152f27cc97d727a060f16e1fc15123df6c5135c41265119b73fadd619894d098253aab624672cd5a835ddec486a5662439593c82fed5eaf1fb285c7a24cf8228558731f4c460f36fcf17d6b5cde38ca724a3ab8b02d06ca7a0d6b7e7d348b79e8462321a870b35811a04529cb9c7fe39ffc0c7cf9098af8158e3eb575072f010d1d07997981eb68d82b9ea500360775631d10c49f828adfb7b7b57b133b60627d1d3b01937e89cfc05d57461601e34c710ab8fa5bd4303c38e26e966c5c2e630a6de208dadad5f40064bf2e34e077c893b614b8be8753bda7f7a6ea7de1ca471503e97ddd9de11c674de0146492d71479a8c856e822d0560d26e9704b8872aa52572a7501935679cb199a51f07d3c8f7c2698ec7b3b481431712c22e78884a236582786133f4a7370c7640166f2f77a3cc9a04e655aec9ae585ae49db37df120234a6885a6099259d3fd107a8c86bd93d3b399c9e643772565535e48d9806ae4466b4f6c4f06ef4556472249f56cc8147fb2b4af362aa4261983bf97e3b9c9ff8487b2fb2709a644075197db6dbfc46d599e9dd0f72414aebb805f00b257da2450c7627f58e60f9b9355753738a9933216c2615d756ad49648381b7f0892613fc3ad507986b78137826f3094c9a397b46ec38c7be3b312691367155667c01f3ea18f9f32ad47c7fbfe53290af90fb6282bb69a1b7d4d1092ed9a2339e1cd6d24b3013f52b15c0c88d3e1037fc3c8c6dc074b427cb398d43e20090f746396b5a7f487615ea64a2287d003c608b97c473e709a3e98ed5689c131de82238bfa1a98b237cb0e6fb35ff74b83154e5bd5d00f8766b0915e3f7e80be661a882d3a73f4605cb723e92178fce29864d5cff1b34fa808377688cb28e4f884e5d5f83ea74a233f014d3c43a5aaccab3e4fbe0bf44836e2d6c3f2880f8a2d014f2a695d921d13e61327d81f49b0dc44f3fb602498a0777daaa5daf3ac974022de04cc768a2ae43578c7c42d9eb97d6e81392ae1c46a3c552567ac1d8cca6894f5926808eefad3081f8ea72fe31988a89ab5610507ea5c28d3c85ce39c2679e133d640a312db512f186009428b13588d838ef6227ab488f227b18c39bee7d76c22068bb381c47397b90805a2f13c7ca5e15c2d669c8d0a2b13cf48de3837b4cbcacde11311e261c39e011e58536c37c917a7ba86e44deb8dc898ac15e7b545c365d8a141345a45c8b4f8318cfdff7c76b1a13f8969616c676374dc116429f0e4f1a368d777e460beadda8b7c8b6664443864482717914587fde30850b2d490ee2e822e8b292c7274fc8969bba9b25fa6fadc76ca6e2f5d113b27c037c93582876b1eaf6c2f2e7282dcdafcd0dd9731473ed108048ab17857386b34842685b863b335e917e20ae386ead2999538374c7773871a91238b20c5f56f23c9bac87fb70fe2e436a56514a39a88142068671e390b71aa0b651de3447db416b9b6fc9482a9e93f7cee6015e4149371cb59479573cedfa0848ab9138880f8fb1a4fdf61ba893e0f906f6f15551691e16cc1cc19b7e2bab0e72333ae6da9457e646d273bcf8ed35a298e4b73011361e334e54db9694aaa0b33639b9b2d5cde57f00be17b24dcd2a8022a0da3903cb8938d30d5e5824ac86042f77d8c2cea3d8b289d727144eac632bf852c7013942261cb7e58f0a932475e0a4c3a32fbbda90234a62ecc7105915f28647d82da97b32a76997ae6b618f70997a83e8e6f95ca4ebd73e7146382e3003e5cdce28690ce485b0439bbaa786f5fea3c86e7b1365c5ac315e835b13a05e19df5894678b679eb6b1ca3936a6a13c1c7bbf7e41d8eb6d8ea84ab910e5bc5a18a8c7185fdef822d27b7107a8f10c3ad10a3b4b1a4b58f92f2eafd4a99641899970604551b7e1e054360e01444c34644ae91a21ab5511162aa373ab81f3452ff52ab8c704c9e1b098581f50976c3a347b0ca9102f8d1d086914ec9861e05fcb3f7f8c5b564a21d6f6fab490f7a6b0c17113d7419766c27c6d1a949997d6841750f7111d602c268b5f0549188028cd5323c6a169d47c933247b771c482028617b010668608b27f76e79d47f0a59a83c41c812b5554263533547d20bb73ca0e42e3a9b4124c21663eafa6b3bc9e198658ffa2b50b2fa01df4fa5117f891f9890ebb1003933be78b8f9d09b427dcc2b58448d995a89dfbc75217b6a515c781314efdc3468e0ff39b2449fcc6cc07158199f3ff08e182dc887888dfd4b55e0e5413409248f36910bd46c9ddd314af6c84dbc4958ea20b171c790e9b11917496583ff96ba9e3284a219bc25f629e5fe3fd81bb78fa0645e59b0f3c7e6e9b4423c17125c2ecb7433d17e137d9ce6b600b18bf1af37407ebbd2e58e5ecb7f6cc2a8112194ac50750424f4402dc8097d73007f3eef12556ad27de4ea265b2584a577ce342bf2d3167319de24a9aa49aed016b72795ea4b45a8cbb860c915f6994e51527fcbca49213d7ff348de486d410dd4a3cb7fd0c2a75025cb97bc4e26e187a3e70d5943e6329d5e6ed1b4ed3867856bd64689bd4cbaf70a3819fd84b4486507b8ef28a24aa4e0493883fda11eaef8d6663c5bfd3444139972743a27227a4df86f76dc686bd4adcf62cff2d1ef745b577a9f137c8642787cf2e9869df891c9b222d34d449cb4c202c6e66a2c301572e77f02867d0db7cbf085dec6670f7d1e6e8d06c44a7fa43af5b917409560a85001e511bf759524011de8dbb775b4ffe8b019ac07425a261e460b668f55dd66cf44f7666e64e8a1188dd3e4d5a09b55ee0fc3ac86c57506aed0aa495c6209c79f07dc1df16e1a19d29f710b27fbfd09debf96002ed8cfd181989c692de6484aa12ccdcb09e5722938760cf82e5a3d63f705bb063250cb756189782633a77c87545ea942b8ee3b725d209632ea129f25cee489c6651469d27caf8c01ff0df6568c1db86f935f02b38804f4fa65e33768c4249e9feecba0966cc55a17214029a73e9bd7acb2840b4f6e8b49df9b9929921eae95607b413af1ae0fafd27b6db06d5b2877c47b0e1a42c5c525137952f6fdf7f5170f269c57539604e5999f00114607279be1fbd21a054114a8d74f9e9a25ff4e9236637ff3f1bde96834836852ed3d167b9bef9a43caa52c62185cb2e40bc8bd6ab2f8ba6db59e04ed0d11b62058ea9a760435823fcfa09dc709f3c2b3e4c2936f30adb717844c8dbd52bbc3aa83edf66a6ed74b29f651240509a9e28371291b734224c2ae8008a234dcfac627d49a8cc177a95b12a08970e0a7faec6c08846db1c3ca108d6432853f0a52481f6e9806585442cb5bb831b03c1f9e6bb83246ee6171706214f5104faa81d83de0e299721711482a9948eabc008bee2881587e6ff4d73d7c2313028ec5fccd006f6c9b68d06789341b9c9124fb7aeeed16f7da54a7b38c173812b19dff3e334bfe1fed3e5c14da733d319bb1e157db64288b4c1d37dd274151f6efec35fcfbe856c2e50e9041339b6c7736601388c0d18c720f27c2ae0bf28ec085939095df60c66b91849757dbe487cfb6b68a034641f979e53272b8ad20412176176b1ff085dbf538601fbdfc71928eefa87ac7e280203c2dbfe3b3c0ed8642b6ca1e774998b64b026bcf2c58d4967705010b174299cd5ae33edd57e2e9e7452df0f8a707716ef10bde6084f7ba367e8ab2c36e37e8d077f61f9ede64243436756c95358a26345f7adceeb4d436a5afb60109d304b36558c18664548ef55fd602b6da2419106d0592243dbb526abf6bad6ef6ca8db93b904a87fd473fd65e768de23006de4b639954afdcdccbafccdcd3b53dc605b7ffea83a7e6ac68024324bf87946fd04d75941933e8269c35a1605615e45e108a9d9f60645f5963e83fd2f0909600d2d137a662464ff18eea9142b6fcba4adcb5a1c14630ac4acdd36944475e24fc15919fcfd8f8cfea6d5c7f1bc6b0cfc637f310c713a942434f4e12525052685de39a9c5a7496126458328eb4bd612a3d7be33aae1b7d1ca3e4c8c8e554ea857798a0dbed0b6a9f658b93ea06c52eba4910d8124942a51a3d7a4113b3f0b0489584601af5a7bddccfb850da9ccc8c93e662658546b154d55bedf56934bc0632705f0b0859fed1753ba27f14f096215c11967bc33d284b478bc2c4930394c5f0731161125d966c271689b4e53a5c978c5e6210190a6e931a68fe83f674705ae6b46536772b202a15408e473a47d5e6b4bd420f9a9381fadd3b76ecdf9216ffc72eaadb6bcb2df93e6d0d5e5544dc7ff9dfac92da1cf78f93d4713f2560fa11552c03b09877e3f4a1856ba0eb63e6a064a227fa4d9efcabe2e31e2edcd1b1ed19b1d4ba9c1b59f1d1d4518ef567ec44dca6796ed1d5f2caa938b63a07207c2d43a949e16686e6ed361203037e3f4fa2871869477a861ec0ee912d784a05717f943a03db9a12946e7267d187b33a10eeeacfb8e9e9a3a29cf8f78a7956a420e37046e508c8cc9efe195a652f1e2b46a0c4c5af0535811b8cca9f77105a77121ddb0dcd92b8d3317b0a9504227007052ab8b3050b098484a8fab2e18f5a305793a5e603c5b6916c50f5e56e8a1a21e3ddade01b6005942cd8ccbab75e92363f0b189eabeb5896b4ba5ed78af583bd27454c71dee639c01044c1e739736000f20e7a7c8c7b859ba3800f8b5bde4197879e5d6fa92426d3b5c8a703534454e389bd5b2bf15a62b011d219fef09c33fda6cc09b33e402d47266a99df1ce65e961f926b6a7a9a003d59c20a66211950b74473a43681c6bfb7c3ee5ef1f66bb94629afaac1777d3ac8090f65326257b811d32e5e6cbab1393d878f98feee7219d3420b3a83cf600a809586910c3a0a4a0623e507c3cd0a89de1bd68a584de51a959151878050e0e25d068c05a23d2b8f4bded5a5d36078072574976ecfb009d776668704597b9ca3857b812ec7ba6fe115e80967f67d45e36b9b5fb9b3e375dde30244d4999fa9844220faf072828394f9288ee75046521e03a9df14f485b84bf445b4c3fcd8d784fa468574d010a59dd3d943b69e452fa95c13d5ffb28668a7538347dd0fbe6e7b04f4709099d5e429130b29ac0be8cc628c5bd3531b62cf5ef6fc08bb6ab4405df8380ad8de74d02c5910b341ec54e6fd240cc5fa4b7018e226d06f144f824ba0b94ab3465573b5444c3b9f40b6d183df54d84a7b594aa4dd04ca1f0877e3b69e0bcca21bcd11f5ab75768e88a0c8cc075ab0efcf1c477232d37f52eda48a0ee39b02e545f3fad0095b2334d6b8089a5f86e8f4e622e5cc6041b967282eef14c62e27f7488e42b2507ecb4ecd94dc52d68e1b4d3df9d9e06a84b8d8e2cfb000b0842ad17cca90d176ab54c318aced639912f0add1c975192235acd53f88c4c3c3d706653687057e4e3eda59302fb1dcb71df300a8c496cd5c16c313828c2d1e2163b2add4f2588ac96091e0f9a4c6078c4da9c77553250d1bf158102ef9f24761b87fc16476777687502f2dd09514f7b13d3114d14851994550c8b192c67ee3b5199bd29d559a069b4c6bbf6e8bea81ce9695fae2370160f6f5e67088523f6035b9a51b2e0546fb59dede9131490c7e110b01105b6b6162fd42a798f4af8381a0ec5f9d917bf8764f7cd6492eccc7e55406953027ea2334e8b2fc5ebbba093605526841eca215f5db1150daea14db90497cb98fb110052f07b4f3f9a85923e38fa41d8aee75abb2ed3ff99d9fffd26e744c4e90c24ccf5959c57379f3509e8c1a2f3c0e686e1325c078f8cf7fc146026fb1ec3668dfd00edb158cfef15e0a1c926563643caedad5be5bb64e659965229f40f9c2cc75c7591dd24362f399738d62d700ae53b7bafbd55b8e1293a443129e080a303015c62d00671041d9d6f5be0de92607fa8f64b590a4e09cc30adeb618cd1c7450502387278006e2e649468bfaefc17451885b7be4908cfd4953372125b8180bcf81d61c19e5adc8856b7c61babacdc152d244515083f18735c964a423c5dfe3d6f56bbc31959fccfdb8cd96a431c78f13527f92e84bfcdb699c71fc9fe0e3c71037f7bd1c055d370ea32e337635cbba70995fe99ad27931ca22eca5a2e27cbd665a9b231f009b0b0c42ba3aa8206d02749362e5199b350e28c4b8c8d8f28154aa84c1fbbc96ce748f14512c089a3dd22cda4e3c307d35c3d68efd45304f4744d0e82fcc1c26ebc7489b55f482eeccc4ce1cc0f6ff1bdd0cd612c2a7baade8c46b8e31081000c99a5429d89a23ebc821b0de8c0a0203f435877d68f613b390a6346f329bd81529d47384daf2ceaa2b0dbd879d186ceaad5780daef9bfdc3a03720e1e4ae4782579788ebf19384a9a45daa1b8af4b5888df5d35cdc1719fef0e56a7bfc3c4c23eae0b47ce7954e34de0615c9b8a2cbcb2eb38846d680901a08f14fa1f53a2da3b6da5a146ef6bc70395522e3385ecbfe0b7e4d376b2c58c44856eac1724752b33666dd6303496b1095072a692eae7284ad28d7055da7931e9779454cea18fac2aab6d3365119b7a92d3d7ee53ac4db4e64cbd0b9a77a71d115df89c6857c94d62f561fa35465e145930847e9ae24f57aa3401002c7b689176c10bf5bc6608d9221566670414d6a7ad0d7459ecd95ac8283511661023df9e0d5934efc1a6415f3d95e39c35ea626be9058de17e48acb862b492fa8f80cdeb34f7cbf504d5750e519f02d37418ab42cc6ee7e88d5558759daa95f7aeb0566bf03e6860f6c5869e725d825310e8fe0ee8dc89aec31ee4ee13a1d8816f8c3ae57173830dd8cf646c4cf5175cc3948daf3f56ac65369e22e24a86ccfabcb42432b944a371c8c0182918fd78ed5c0cbc9ff15f881be2ead9085067079cb6056d457f91c13c74cb24a11008127cc8a6731e39470d538b1ea8b1aeb68c22a7b39ebdca059fda4fa0b6a925705b171ddf59ec45784bad43e9d39828176037b50e4e0b382dd97cb33beb73149ceed8fb643e7a69033691a2d5a0f1aff46e58b46a76f9c901c4d27c1a8fac374c38360d05cc1bc8597b43c7c89e7c77e02679a3db5ebfedcc1aadb5df82763c595b45e273935973f874f55f1d3649a4f56100429044eda8bf3eaa19be82e501a2ccebb1c4b97581e4693e05cf29d10880c5fd4bc5ef51c4c9dba8eafdee4e55e50a880e9ecb0c52c42dcccc8fa3dc0b5f9bea57663574d9abfab95830f0641a38edf323ca16d650a6bb437f499729cdd92b1e3f144579383838e1bc2716f219a952811992156e62970bfb208a58c509f68bf181fac5e817c057a70a35d73248c3a2a5ae862a6de709373adfdfccc1cdc8a3463d28ee7b35160f28bf08cd1f2c645b077647ca4b3966933cddf2c06d872c37c9f970eca19c4ebec633fa3e154acf32ab1895ff3f9b19b6bebac7623fdfacce88dda2fcaebc33706da89e74270bc0b7320e9f8b0bece1642b3c0438a78202eb1396310f4483d217e1b38d865028ffbfa6ebe513300fe1bfb0b9540e32b6b8f634e4e44088bdaf6d7634d72ad16a788fa00d6723cde50929617c9518f61293c05ee79234a521f815ff46a11603071efb1a628b458591d44f011ea30021d45c4d0e9bcdee19e3526b584625cb3437086be847c45a4faf6199ea155dfd86e70abf4e771329630054f19eee0adf9f4bbedf4c6fca9f652cb8ed694b21dd83a979c9597ace0783a0ccf9cb658d06810d6d010b3983b309bc51c04f77dcc91b7a939dd1dea5810329bd1d61925fd36c0693ba32119cd92458dbba858018cfbfe6e9f6c70696809f8d9088262950ae3e6446c064d17ecd903b6dd144ec7162dab2327be2b3ddb5cdaeb0ac65d76fd719119951d843764038601f32b3b7446ef94ebf3488041469e1e3ab1e9b764cb4344da609915c1ae595dcccf8bb421c781a9c390edb76c7d213dd88c4466fca3c2a5d0e68a796b9425054b6c230b9e1811ac66f6248160c0e39536a5701f44b6c9b1a6b4a67c4ed10e6afb411e5d1aa583ac4333ec3bfb026858240fe48989d8cfa0cea84a7e9d0157a12d3079c22307985d8b6aa526cb3e479cf34932f4d17610465cfe06c6d90a51a8ee22ea52e392497a2729a18dba2056e4dfd064693f796d96cba6ed0e9de1efa6ada0345f2cbfbb538d5cb59b6f880ae690c1b9bf400016d101b795ff7d4dd906d8390595f8fe05ad55b6e8bbd796cfb67d47941e12919b960a39be3ea9aba8867cb294ae8f2af7888561937085c44f5a236b4111ba958565b613f4e6300aa416ae54200fa9fb02a2064867664d9003cd503da9250d5cc4f173e57fa55ad3a1de6b7d620d7b0e7ca4503dc4baf68d3744faf9f393ec6b40265f1bdbe87f161893c66c80d2f61396d67f90cef49ff45aaaf7469f32fb2aed16b65f0e0965d61d7430e662f8d781cc544d018495c59d2d7207746675a33c7f04fddda49fe13d99638923c7c17d77e3cd09606aef8e9bec4993767d76ec14b675686646b79135e86584bb9388a599fb98f1544d9cd3fed269a5fe266e9e2b095431a8d527d3331a0f1e206d97d1f5d1c23757f41aacb90a28646e36ef8ba0619529a41aef11df0daea1afb150549790c065958c406a82029c32e04323d09f8a12848d3e9b75ac1ec33c55d24f4e92919cd97589610dd2da4af4f79432d43f440602667882a052e66a6c0d29ca385f2201f58204db3fd0c278d72364b4528fc1b11fd6b2ab7bf459b4e3961b217dd34e5d8bafce8d080e49ecee66ab07305722e6acf64e21d52d88175415bd804cfe7cbf4179ebbddc248f647f211d5c875868146e2efc9607e1690e424d94a205875fa7eff042e5cc408aa7c5be919442ac941044164cf1f0ecf932840593a7e7cbdf08fc6511555acdb6884e41cbd8eec08672d2fcd60542d995ce60e7910de6ea9c157f9a68d6fb5c6973b7636d2896218cf4f5b8b1ebadf884fc3ad5857641cdd61e17e86b4cbbd11ce8ca885e6fac88dba5600e076a7ead8cbaafe8082b960f7ae3de10b9e5d63abd5d2c799cd2690ea7970d9363245b2a5180377da38051f96d154168350fe214505aeb3acf63bdcd79e636004a9746ceb063a3ef2d64057d8dbd4cf4f0a568e59e3fd927fd7c58f5ad822f84dbea5a807c332545af38685588bf4d27ae342b564108076dbe1dc2de95c5ca28f94743a474acc78c9a7804125c5d71f6206df53539d5caa9f9f44b99303572246ae7a3a2a33016ea8caa7a6db279131e3fa27b9390a5c7c3e7a45922f37673bfb6a05b6104fe4dcaa5986e82f4252348525fe14fc2137961e48ea8fb93a330f166ab551fe3bdb3f171c12a7c0566bd0744cdc9d20d0820b9d8cda2bb8305eefe95d7700f3b43c81ff9b91e24a2ec3b22f790d61be36014f98a9aadc650e6ad33e6ba1cd377cf6b7a026d4f9b38a12b9e0cadeb5f6b0504676a91a4bde825b7dce2dd0b336af04303e47cc8a75352535b8163e93b26ce8ca497ffd817316094f019aa9ee530b8872ed6b63099c4cc28ce7fc4e8d58a62642c7de2bb373944825e2eecb838e98372b6173dbf5addebd7bd0e9967f41014212779abbaa10ec33c294a16f443090cb36004c8fb9e088c811a6e0a64d343e7e3682a5dcbe98110dc57921a9610316596e0faecc1578b586b78c35d9433f5521425984c4c8b8b0411174443e3741faaa246cf670152120fdd0fa20456d8adc385eafb6a8ee33a1368a8d60d229314af5ba68f7abb8b3f0af68721536f153960b1910da92c271b25c4d1760f5802c8a58424ea185f0fe3d90f307d1610122c8ea2170eaa282cbbe1a9835d6ed3525bfce6aa225f3f0cfdfcc00a7e68a114c5485379101934010fd6eb806e393b6b0d8429f548721d917c2fed7cd677f9eb0257f0fbcdab718342a276e23b6447da6599500a04612a98b76d05f785e9d66e74d29b13773bc2008a544b34b67dffe1ba25da82a97290d00584696323c9afc3f69176303704c1563c454c6d692a7ea9613ecc7e9fdd5959570e86464c24b05a874ab757eca7b65e5962f6f58136334951db94537243b8f64215da193f72a939829cc6293b07534b35922569438bf48e83ef9c0748c57982b022093712376cf7ee44ca5d083912f7c44633952b04b834faafde68874a9ea35d3135179e7bae1683ca6702c765e59828d5f24fa650a9c866dc4e5ce084baea2369f76016a6ee6ac63f17302c63845ddd4120adf1e669943e2da829ecc6e46db05d493ae36976840cf75c4d4f80ad71e530ce3305e1d42e3b5bdbdcbb0de88d356679715b0475b46c018f3b81e185a9d5e6b30eaf64a1af7fe02d9040b985310dc9457a28ae0f86a3b59b731879efe809213c82a43fa70bd58e5144e99e8bd2d1a7f0938539265504f9df9098c3e63d2e8316f8557e2da218db3aaac258be1228cb17951fd7c2773dee7e5bb0577efbec15bb9303a34c02ca241fe19b907aa4a3d3ba1a95188294148bbbe17f4948adc971986e3160c0a5eefe5f81f2daf352aa9442a5f2c676eac74372ade1dac146f69125552f5ec67441a52241b3daf07e07620e4d5fa144988f82ffc18c816a500ea26d4c83e8f9cf63be7d2efbba6a89cab3a39c62f868c08b3b89dda4a7352fef165f2d35254f345819f65c41fc889116a38fb540b5831334c5506ab9e33c2b17749fbeb41d2451845662df35f4c816213136e0afeed012c37cda925e0d312482f4c0bd10cab8c98219fb58c0ce48f447ea90a64daa7ed1b90321b01f60588ddd0725d898833432f80fef80483e0a672d7b16df5200c21801b1530c6871ad00ec81c76cf4b37046801cd83d5466d7d0eaf4c32fdcbc533f15e1269a92cc3a0fe57436efbc31600aa2eb1071053cb958959b9ac6bdaf609e158187eb534980f963a489952b20bb581157bacfab36e398422192e6b1b1051dd21338424222ad9b6df55344b251c8e7fd268617f1c2af0fba7d93dad8f2346171aaeadb5a0573aa29805d17e00889ab10979c81bb6cc53b6170254452b09b4091e30e821c968f4ba5f64794af28c797380f6cd0f58bd647f0948717eb91cbad1c4c210bf598d61264b3f95a5823520c11ce07ad877288f09a7743786d38988724ed6e3c8444d8f4f5f635525a53631033bd76edece32fd38e4dcac5492da66a8823fe18991273801b70e7ae5d615912cf6fac514d56c2333e248b62f53c0866d2ae0be45834a8d666443338201c9969841cdf5d12b8ce1ca61f5b374ea01eda8c82cd07581f37f6ab732b4fa4e3782449f92eeef3dfea90a36c9eec3ed68aef1e3d770db9053c344651b2e9493404eb4e6f09a067962f5981efd71e95a14da3eb1902c016b978799953350417a1d17621a389ae525b7466b1127f6695d4b912c7080a962262279321f4436b92d311bd62cf20cd020d56194079268a77e19fab483b4c100512651778921f77a9c4c26048b75f712f3d9f27d7e91fdb3bf481820880b11e180df54a8ed467b75a36a82a6de3e97b7251b2cfa3d42f6dd1767f18419440b495623979c5b43c4dcd34d055f3dfb49c06029d8d8993ba703e2ebf7e87e414d3fd790e0e40a4312b8d0addd8f118067bd0c4a17fa608864ef36085b46ba74ae1ca1ba89d94b57c80c1527acece430a5028df85333872aee6b2ac8415ae2b5f8caf38f0cd64d4ed539bc97af433cf8529aaf689e3a8c00c183cd1007e9198133ea9d88818b99248b2f72388b3ef295ba26bf24c1fc1707e891a58d1e34d47bea6320ecc85bd463bf6fcee52a6f29d70b55c2c32f4e4935eb51890e5ed0da21a94027184813350d04e1c3812073a75665f8226e23c2998887e2377a17a6801e92c6dda53b4f0a40e1ff207abd7c0f22da56e727b5e020a4471bc77353eaa17c69cad34be2fdc62b47381e6c7db7d22d183c9c5db9c3f04a62a3f49f6ccce98e5ec27fe6afb0ce1506888c07be82df70d9efa89010ec276b208bba0ed2905117bed440915f79740a5ed4ef2d6ab4e4dd4f607309ee761b0b9ad876d5e566a9e744fab7155d2d633f686a4a9c6c438a1902f64b4fb4b7685e1b26eca6b670bd2e5df55cfd0ec23d6ea47f1a5d7e3d5500473cbb0059f60900338ba5978105b15c56afac6a1ec3d671798108b6237c265492c640ed5008e75da23714adc22edce798ef27f2f334fd142fbdf66e59010900d72170b7ddca6337320c6d0d189b0155bb4d9311144c886f3bfed3a24a2d75bfc720df521dd5ffe51d195fd2f36f1de33bac635151b84907e314582ec3a88f556d3739138518615d72cf7deb962f2d977ca053f04c8ec62026572b65f2231b3637d7616317be6878dce03cc45a89844c841e9852c43bab6ca926c09f7e62cbbbc6042cc0ade6f0d3237c8a139dcb86816055319917240c43aa60409ffd05a9bfe2062f7b7e52bf1b0c439528a39e2106b9a4c9ecb000e70da5c7bff64557f744749c56a8f53afd6dae7269bde13d4f18e46c354789d9f46b5c6fcc69a3b90fa4662ed807cb412e2cabd897030d32311db45f18185087864085b5895aa042cbe91609e123df33e0519ff0e330fef4418276a5fd1b44c6502f9180d4c20dfd61af8456ddee73a08adaffedfed153dead4ea342a5adc47fc7702bac2a3b8b99d1ec806a87093019772292e74515142ce52ffa956cd20afd7c2ad1920850b82b69ab72c84eec09905d93a57f140b9017bf5110963be153c4de3ce0fa3ee99d53c223651b2148a4d01106e9bbbf2e4018406a00ae542737eed16d314ddb650888f80e865e79afa5da2990fe078793886c8f8550043c47877ab51c9cd032c1d407113b91accace595e099c60c5cffcb92330e64a536a03647e616a3943ab70eac8f96b51a4e11ad3de3fad562435a39d843db444caf88cce31751cff04b1858f055b20b5a139e4f8b6655e66eb7324775d6e9eea2452fa0d16600c69237f4bc8cb171609d4bd31d195b65f5b46efd38a2aeedeaabd155b7e1fcc58cb59c80e0ad60b3ead1f699bd1aa15bf116c0cd165c5d1566fbcd57db536b15f24a3f351de69c63c5c089f7fdb2252f7cb780cd77ca80149c86f2157f9bf9e187482f822da204b6c03b9c8fd8b49b49f3db56356fadb541a3ddd6cacd551f23b36b7702e261bade70f3b8aba9582ea8f65313eae583d0ed041b7c1f61e895966eddcb74d90d1245fe1871648f3518ecc8ff8c13136373c521a8bc16528cfac6be8f31a146b667dcf2af26cdc320d8ee5c64cd7f76a4c77ba06e6552aa8435f1d9f22ecaaaa67c7e4d3a505bfca8992edc6c7f38979b6dc7c957dd0c31eb5b42b0a59e67d9bd43c7d69b3f015ff906ca8fe27c20dedae4ad949c63a61066632042f2f397ed61254e8a37468a9f2ef1cc31f5ea3c69f3499064f3e3fbe21dea4348ab631e6a649706b1df58f8daa2ba351ad590ed086b7946e4c30981c3059856efd1054cf213c8e3a5223117d3393e75621c1491f0e564aab0a276f29ea43a26b91525d777a2e5db6ddd6780122b006aa7ae399e55197d920af79b108db8adb2e55c160661fb29253877dc90f901648d60fd8522128d86a325b867740edd4275b839d3cb41d7484e8c7f48343a877bf738af430eefc5e7551fd14283dfea1ee2509d6f9a6a8d1026446f88ae4dacc94d7344b185166b801861856f9325962302fe8ea69c45ed1cdd1668cd7d5f260cf356c8f0e4035248d40bcd8353407076201c1d0811797a5f064d63384bdd620f6ae138c827ac157a97aef13adbb1fe720724bfc33e900929613846127e7b4d8dc9f254fe04772530af8cb960aa688f8f2720566113455b276ae1b6bd019758e25132b0f88fa84e4abd9498b2f1009c1a31fdf2c6233c3a806aec114633867457b32861297182114f0de84045cb37d705970703af4cd596de2cf7b58bde48d48a8cc363e7c5dfe79ff842f457d2b1852ee6f2a826217d3636161cfebfcbc1cd28272b62f2cd3544383c61a46d07466b47864ec0fa1335e206a6ebb423c1421bdbb316d023cbeea40d7ee0b2f449f59cff20a415ff93513c696cfd05e3d32b1dac48b6ba4669d18745e0f9480be6b9bb8883a7d342ca72b10f737192c671547eb4f315a38ba7ba608c8520e864979e75d39379244b9e9bdad323549046a6d27f4210fa2fbf8ed692714b001d6093d2d5b173863fdcc166952edd2e9954eb478887872bd6c39a99651b1b3c1005d98fa0e731532b56b65578afe6db2b41543cce3cbd4f26980887e37e277f1ad766ff8f19219850a7d1a801466b0f69c55ae11e358fb7217b47ce498045be4cff12484171d71b46dfe21e0e7180e913234bbc22cc7fcfdf23e8f96d4b7f8edf1e28f38d6242327e0ca5cf411f7b789e39c5323dab98074ac3f1b6ff912f50467e367c46bb32baca2a9855c89d1921933ac523e43eb7ebe976e6c83ebabcd01f54b191fc2ea264d79d77d067ee24d73ecbb3a074c5aa829597d763b9f80d71f8cd520f3d6912a70bd9cc99545ff67487171777b0e12effeda0011fe2a17f24c9b3f185b13c5523618facd3c8da38761ffd68a13dd8a0193b7d2a30a9b2c41efd830c8fb70fe624714721826f31b363bb0c72d0b77568fc008f0b7e1932d34dc4f456665710c2a2ab14f60967a686aa9508bab023036c0384a67d4ce1859a2872af8c28bead00cc2e66b6229a5e1e126846deddf6ec3a016d8bea2fd9fc40c07a8aeef8c04656e82250268274b12f893e26297d1dc86e1c205c7c34b11fbd9955d220e267fec015e3fc5e045515e0fa71fd0c153e0ba92c29ab244238ac4a297786ad31c39e872b6e04005d83f899038d30dc08e93ff37fc459dd24bafac82e2e3c1720f716a640561212a06c24b63e4dc98ac66d061859c5d04d85b5d8c19fd6fb6c3ed2a3c0387f3a27225db1f12a67b9cd08c6ca686cb1f50f3653c3c389534c9758868db390a9d019f30d3d639990da9c19b21381380c31ddae3b495ca9daa99a5a2196b68a7df3b2b8b334d7f86d7a2592c5f9ed46cf9c8f35dcff27e5dae85a6fcc32a167da198d6ba798e0397eaa530a17ac2ce8e5aee8a1a295a74581fec777dbd34172d81371ad55815dd4918ce87c3728157e0a012de741d4e68d8ae40d41477a11baa09c1e3434362ed674b5c31aa87d8954c8d9c22c338847357bad78396ec212d0b495847a840b2c5c47088dbbe228038e958916f61e0f19bf0d4047792aca36fc812e6be98a25765e0a1dc6198aef59063590109775507ba906008f07df65d5d5a4a048ea0e3c7ca7272a7588fd200bf67ab9797d8d37c24a5cd2e77e623462e2da190ed465cba6404d427b5c6dc0748cb1e61fc0c193f8f6a91f9fc9d85a2358ea892503fe3ca8e4ed4241e76e055ad307ece81696f3247a7c0ee141329c74937adee9c7238621c3d2685de987d792f9c43a93b0c8eeadbf43b528def8c8053b84ea9587537dc7165bdb435b3402f3a3034e54193d2049d71f0629eef413d02d57e072559cdea4cde6582b8ec2bfa6f1b20289faa936bb6d5d953d48716545426cffbfb08e016323de605fcd3b8218d2576dee0ed6b795cee80e715ef797c719521e81bc6db0c94445b74809b100598c86e3b05e783fa79333e588320a737535bc2dbe6b312ad27d025ae9a32d57d29352846f6d4761609805aab3a7ed18912f5e06c8e13999b9252c7374f557f8777d10a2886f4d4855f53ea0c1a8cdae20dbfbf74f0c933dfd3c74d17b030cd03bc2030af2007d758f064a0e3dcfa080535e02932220a0bbb8ecd1e5f8b2de8dffbb27078be391dcff086548ca1427694177f6ad30fd7e19bac1d03b2ef2e509e29d736578a84e8231c6d8bf9ec77f694006846e8d404df775accc0610e0529d7ea988fd43e5cd66719c64b6ed1ce477d49287731f69c7b4b814c0904ec56ae5988d20e7624c6fa2f5e9062f5c57013eb6e52957810c0d44dfbe1a3709179d3ccfe510752f8cf0c0c6d21e92e85e77826506b9fd8da95c8c40c2127d4e5d9b670711337f91d8121c5fd276a5f4a9434bc678ccca1f929d7a2b0dd50f718507881afa9b7052b2e653a9725b6685d2b939d1f393bea13311d7287a7661dfa31d700ab4f828f5f8e80fc12a496342193fe4202a8bf9eb194d5ac99f2ec4d60b5c4f859cd6c5b10ac762f0cb995fa20b98f4f378b160a4f77122ef7372e60c184bb3ea4f5554004f0020c3640bb1e416df46e6ec62ca98fc742b3108e71270851a1acc6d6372d861199b18ec09151d316acd25013afdae059bf0cb89fb7acd790141024f1a02710472ecde31aa6afc35b5dab73db620d9f791d3b00ca8e47a8ce9c669e8daeb5e953245468d674f9ff76938b00345c513979614b94fd1db19837860b2af2e04123c39c5f913d64be94c239036a163b390dbba1f58c81a0137cd0593ec1253ea392e79a3cfbfc107b364299fc5f33f60dcc7d58837ac45de4661ac65de8250cb004ca140381cc3f8dba84bbfa7003568eee83ea50601588ee2af90257acedebb450b64352b98d16fb073c3779678eb3347a5887ae1138f5229c5ab679a6e4c8e7f21b1c881c5355bd309abc1a27beb6c97c19f02bc39f88099ce5ae7df98a9580e761c607b99bee3fb9a248e7082de10e666e4ccaf6b0221f8f6bd4125ff36282dc016b607d1dec8188475361398d0ba83bef6190f6ce30bfe7358ad555578dfe092ee49edacf0bf3fd99bf0a7065fd63f9e07ecc7e9f2e64d900ebd53b12113f37a7885072cce6930084ec8e559e37d90be7a09d55db91d39c8104c7e0d686fa3100d7cb03b316408219fbe6444c7f5c67cb31dbf5c9a29f58ed0d31acd030d21fe1d715c2907dae41395d2b098f097fb0bfb8a19aa84f87baa1bc41c119cbed87055b59aa9b1a597e0dd69c09e18d2e30f96cdbb9d6572725884e53cbee061e6fa206e7e550b8f934ba184f60014b0c06aa23c808f38d148ce42bf176b35685391cef1f39543a90f717b42b1840c54cffbc3976d01074a32ea3b3ecfb2bc1c36b5339407d6b36f97d8e661f6fd1d028d1dfdced9eee8c7e0177bca1748bdce4c7c91e5ea829bff71901535a3132a4b83379935ba0f4894a19b6b9af18445a9ec4fbbc790e4afe9d50a76fb86917a091f0bcaddd86613de474174ed99d0f293ad33467a56ea75042bd74e5f70fab1e2022bf387379ac8a6da62d3144ad7466cfdd93178c423b09b9965e23874725da915e724b97d4d597b41e5118575e1fa5700d274b3ee3052dba2c66961806ef12375cec1577e1cc851f315d71a0667634fa16a92497f0ec3a076f8e2dab67e928ab73d4618045efa6e959854778c48929737153958e62d70de845b5d7dd705c1d57780f00393990cdbe3d8534b1022a0dd6023ded101294a513e8bc1b31227d29d0f45ed0ffdeb55c0d1b4f3a68e4413295861f8a545441bf6e59f373a14f2f6f863b634cab6b8252bb59fb9074f92c1465c1668658aadcfa86921ce03c6a0c69c3ed030b00846e936da539e8c6365ee2572db2d3df8fdaeb26f503590b1feadfd6f292a02d714759bcb42b5621bbdca6cfaa3281c96c4d8d47b4f980354e9d42c824c8dde32a8af7df62b8b55cbe448b4c35ac8fa5af7a55a65005859818a0bb05e92cab10479d8808e1a4283011eaff08954d33f10f055260364d1dd5483ab25f2ee1abf068842222b28b2ecfbfc407851d02f52a40e8f0fd302da45c4ed3a3cdb14d270775ee7ad10e9caa711e0e553d839386ea6b438fd7c5ed127c1f7ea86ada3af24d08c99f279bdf3be182dfab3a556bf6802b88ab7feef2985d481c35a6bcaa5fa3f0f1e85d502eac23a0dcdeaa83900efe7c13ebf67c877f821e4829825c00df02cde72234a9dcc1930fe88712b0d048826e93fae6ce0494fe5bd58f0fc06d989b64aab74665657b130b88e8fd056ce9a8e05ab343792a8f455e792ebd1f4557525a15c1b2180c0f209f88b297a85bbff8f760291ddfed31b95f51f409afdcde618576ca8dd37358d0d79a2d647d912eaf4098cd4202d16676143b5ae5bfd32421a951d2158e07e3c706297ca9d0bc68b1406b94e280a157ed4885eef7e8b25264b7605232c4096b799ecb689ed21f91581c92cb6c8b7462e03bad0309bdfff101973334e97e4521377ce1ae09882cde949ecfbd63650756e2326d85a9c79f4f78f51885a914979f2eb287a9968c2404c9701fef26642932b7688f7e03a064edaa35ed9e856d31954ee05a0778ffada7ce10dda1ed72974c80076fea2368c479f902986b58e2e133d0e9278c5fef5d52d1f0060942909b46311a0f0f619c2e6fad712041125e39c30fa84d6ba86ee720e074681c1370629cdd133a15fbbad4a88a6eb9b9bfab141bbd0fa08a9464d8abdfd18647bae6b9854870890b55420354065b7c453b58cd081973d1843a0abb53f2b08db821851459aa1b7e6aa19275c349a516c8c54fa1aa9de304446d5e63fd308f4cf09ba452383e427664a955cf35bf7ba2ed9d153b8dd7378a32b5b17925e92c1ae8ba1b1a59dc6a730b19703ecb2acae32e380e0f46e97e9103ee8e6b182a81a80b8564cf305f30d0e190e60ce2d1629fbcb1aa786e791885f264da8e01a3e56049496f6e70b61e49f612726608149934ff026eca3ad81a68597459f4193c0303be590313db812b993221274f1be735e8aacb7cfe8c1b34f4b22adca2fb6a45c247d876b9b83658523eb7f1d0f6ba884705f46fda6af1a6222af7e9e8fa5de0b0b204ed0c84095c7b08f79423a4638768661da17d79a6051878f27dc2dd07c1f29908f65fbf4444c57acb54fdc20d3fece31bc8b9ac45ca3f1d08caf922ceddad08c36cbd94f72badccc0ed1be9131a833a686a27a3a5e8efda03ac17c1e7c2a5b9e228016414321bcf25cd3bdb4581a98460813a998f5daf216e3c769eabb4b351a8c5f486cb5ed104404c7bcd9b475655a723b785149bc32a2acb3521c09fa5ff37e9b9f454482119af89c7e1770090b9c681043ce2731f13aa327a5c31bff4584aad2bd33801a26b0c9babea75f7dde54df99ef06f005d748d9a0bc9c0801793c6148792b6385209dc4beacbff18284598669f9c0c28078d7a43b965714d7912fb4927ac4a29c91b0e7bfafc6dfcc9620993219a895c7aea0ba50b890bf8cfc196639de99007ee9ff426e3f6b620ec5b5972494a1c4b4524a99e35dcf9e04fa10d6765a0b56095c8921c3ad5b8bb2bb0ab5b235937adf84a93f50edf3d13302d0d8f92d8134920e55bdd0ef22e21b5cbeade0e1d371b7348e4bc942d8b2625e1eb00c7c9be3367a0504a51d86740b535c491678483915cf4b8728fc04ef443f8d97c7d70f4524d4aad5358d4203e8e8b0271e4ef76e1fa2af550cc77aad2556e9c8c50694232eb26a4db08cdaf453ccd61508c5812adf3a79b803ead0461d35e1d2dc32e3432479deda8989a91dda7b4a2e63c329746cc486a4a069ebd2398d01b83bfc5086532800c3e629e92281a5d638b07bbaefdd1f83f141c0a6b5188339c36e458c34e21474a26aa99f9d1bbcc387a5677a875e19ae22cae1a9c1d18f55c5a8f00a4572304d7232cf90fe97da299319b4552cbc94cfcadf00ba6383d51b0c10f20e252e280a235384bf11f23057112c18406ec411a27dc758f90157636246fd17d90060fda90c1fe76ec88b8af89dd921f05a997208aab566e84cb2bd64ed66629971c1db51e3a6250b7f04701265424110de9a38faf418c10ca2c47de3ab12147d9016b4442c6c2d5e1f381c1b1e962da794b17ce6b4109961ca6d8da4e2e2226852885818cb07d52317d8da101282e4b9bc45f4e3de20f6b26ac5dca69c70083c721e892a4e60f89b3b1945e6639d22bcf959ebafcce2bb3b7611af079b82f5abd53d708f7fe0a92415614d14f474a04fd849edd79281102011f4b410a0f73d79a436603aa42ce174c40ba9fce33295ce72082591f0b36652b46f2ab260a5faa33087a004f3f57369b505d69620c16483895f6f30004fe8fc0e7a1c8add2f3327632bb4a765b081a20df62e1441b0d43d5222b0f50e7da36410281c7c1f804b97e1674911a9ff66eed7cabf43deb6feae7cc2bf3f803c18be00e85db118aa9104969f97838ed76283e9512b5620db75a18879283b95bef24c378495ddfb249497e138b91bb50b3321ae916be7b9668fa73656add027062f5d41b3d6bfaab49b4052424087d66eb594c6cbb76de623695e7163a696d7d984b370fe1d3496c87093f4a6e326b5f379888e5b9e3f59183964a32efbde29edc0a6ab7254643db27a334183b079a7d1ce887a381f9e3add5a5c2e8d27894852c0031a6a10fa2cea1ae3a03e377cd2a072e1535aad55ca7df12da2fd3faec47e0aaece6d484f825d671c65900d5a126667c40664edebd4d61b130925666b4ef07b33dc43dd99788603c851ad242d96f788ce6ed004b0a0ef64c95293f7f5d918897bc28b2d19a8db63ae30c5103700e798de10f15df7d3794d48c585e20d62b1729bb9be317a7c2cbb1542d0002db4b8fe356d36ce536448dbc202c8b7dc4e7fc1accffc382fb81af788652c669b8cf918bb47bfea137b84a569d26800ae2b91e976553191b4e0609b3d941df744764b37c47be3e36212eef5d1d478e4cbb450629a09f4e86e8f499b0526f1d699f95a4742d9fdf808b98d54b1c69d8c478a82726d3145687a3268316f871c83e1f5058cfb8c5fa135368657dc2ad2a1c3580b001c1b624aa069f0c1fd8096e89940596dec381cb4410462a34821727008a4b8a6b4238f7c9e2da15a3bd1b45edc29fd6af546b67cdeec1f6a27c5aef00673041314f5c030eb48ddb609f3965bfc6d0d1ce219777c6a8b85b3f065eba378584634701abf7c588cf391edc50b621e03eb4d2cda595199cd24a91d2990f688187be6597218fd24f51c944c56517ac2c060e1ccdcfa51c0cf7cc5a9f5b5e1921804bda43302d7161922985a35b5c802566416257a906d67a5ead9aa5bcf33ce932001f64d607973124ba7f7e44736d634033f4e521058a6428cc3eb0043f144d030c7b49babdff421fd248b6729a57750641e949e6e5ca131830448ed9ac140e55ce2711b82520de94077a7e670ab490a50a5a179e2fdf6e668f7bcf7b0b0540765cc0ce2ae4db13e3b772245808d0b43ed7c8e9b8f8b45f924f5a1c202baca65ebff6828a840f7a58b0b00510fbad5508e8d15829019568a59b405875af65c88b98e3ea7c52cbea921b0b311d343cffff2fe65f6f4f58d623f7de141e4e9e3d56db714b018f189c5e41ae0f379f09ca5d6359e046ec7565f3b10d80e281ad811aa4b730d812b393fb2eab8d1f4a75cacc4c7e6e379e3397d4c91e4e5560d969998b475b4465e5a079848d20594d6d9d623761070bb208c80f87b07d67824d77a1db351eeee18bf2fcc68ceb3899e96002f77ff978569e6310eb9c1c2124e42d9449ea22356a5129636fd4032c788599b7a3e18d067a3f1a1f70dfbdff61a5aed2b33f1271fb60e491cd408e6c30c2d90e5841b784bf9f05be373a7b6b40bc78d9f584102a3eba284bd3e6d63ce2c62f54e85ffa8268b86519e73f24dbd83fe550c49ba8462f160e3febae4008ef38d1837642edff29cc2016e555ebaac368ed3b23b059e5c1db83d65f03e3251f6d863fd365aef6111ddf4cd1c8ed46c04f363b7f231f7300180dc948f8f4688f3d2b84147f21b68db5f24f3e3a3a290084e27074c89c45f59879b69ef471493ab7f7d517d80ccafbe86fb669dae3e33f7c40891206107ec5bcc21e7fa30a6a171b414491e93ad48210ae2e79ebf4593ed49902cf733badfa448578fe2bae37efe3ad6bd1a715e7b041d353bfb41b955d9488417e1efb35f94593b65962fc0d99ff74efbab55e92d08ea09252ad2a8bd59087351c31f3f96789c9e0ac6017085114f7c85fb557161660e324cf7c9dcb103d851cc447af1683eaee8931dd7207122b2b58265b2fba0090940b56ca223c435a5d7346d5125537e69a7531426a4c002feb89c15e21615426fc6a1ea9c87df87ec00eb9cff63fa61f92fd561e5438b7178e19529f8c2a7b9b67f6fd5055541e624906a1dfdb1265a1386413e2726d475a1cddd754182fd6dbbe0d24d37311aa8cc2f2f1f2d2571c4b1dbeb52fb86920d48b2d5f841ac1c1da905e0fd0965e8b45207b165e9e61e6d29f604b18154a110f11a2574e8f078aee377ab549f3c85a242ddd51beade21197c7800051ef026ee828a468874a87563b135c551382d00086afb7d34d6cacadef9627ff3d301072d7a62cb2e7c119118de03deb18b7a12f7ba81286fe8f045b775c480bd815370faa23cca1c7c260e1ada16c7608bdaeb278e0b50326505e634562cf6572261fa759ef251fee689e4d67158e763ce05500a807c0f0fe2eb7589f2911c032d947815e514519184cbe371af25c8a79ec81e9c8b141b9185a00ebdea4460d4fad54ebf805c5e6b9da7fd4d70bab46e4f24c9b99a0ca277b2cfd7bdba852d7314d67fdff994d777ffb6caedae88e9a58fff3949973f58241935f2fad50dde9f3e56813f72787659c995dbfa452664630702be93bbea0ff6daa2c592f407344a70a06c647dd09335838a2f3f27eba5c6ebc1e207e33a25772c3e711ac9f15e27ea8735142f4eeea9e182da10c44902dd204c37894e4060cf8738c86dc8aac73ba7e2cc97349c144ff49f2690d59c9b6550f371ab47b5fb118ae684fef70b5dd171b448c77a2562e6d9915980de3789e64d12b682d31d330803df92b1bc17fa06abb3609e1098be464c19db68a28142c3b28ec4aa723f8db04d9d052dfe850d3972e3bcfab618e71af1b8c04f08f021b85c2676d312215d2ac80e115f1c08c8802df2ab52e3316770e7db04405eb8f83cb881fbeece8cad38c0a6d6ff45b944a46735fead651acfbe0faecda32f44db060c25963b348ff885cdce67b642bf691de9a73e35810422ad78f4b193c47bcf2b712d31a02a30bff8533f7f2e8c81b623609324030d1b4c368f46ce5081f9886dfe12a4fbb3fa255ef1597a453b192cd9d7c46bd93fbc2f3546ead1f6231f95b17fa61f554c796d0552ad50bc849294f23bc317307f03ac45a9cf28671e5ee813d41f3785a1bf45d1c93457093210235c7977022bf96c21dcec02c454165731ae390639fd50d9abef135a2c56a95fbd7f84d0100348f71bf7f61abb917efdd988e08154520b96a845ece962f5a763949586f215ea5d1f7e318750d067a96ae5ea1a8093935dbd85b9a6065e8e2a68974fc094ba31cb1d6e6763764142fc48c52f0b5180d14d7af10e02c6f1c1b12a90d769c725bcdf928ab52dcea61c2c654bf3a85786596a1330481bf3fb6c6442304df2c0acc7170f39233ebd8803502062bd7348a7cd5257c2985e2e8a3e89de80464262111a959fdcf54e3a047b137f2f26ae77ec862c535a25106653d88d83578b22842eb4a11ac1fa2c66d19cf9de184873c07f4ebb30fa046373465759b2004f7a22d90fd3d620a201d3a7a1f9248eb251f28fb629f1233ff2e245db0831c23feec2e67219769576af156d2e45efd47fbf2d5f92e2142f8c8b5526b37f0a2c6899444a94184d2034eb2087aa39fd43e4c20f6838bd1adc263ba17d329b804dc03bc2681de1f0c475abc64d26bdd5c874a0b0ecc6ddd3297e134759ec7be611b28374ea172665a65d9b4f8fc2a355417f3873f60be55487d18f840a3a1c2f0fd65e90f4af757e662658938038b67111be8cdf1de84335cfa99bbb94d948b7f71380a2276b6e1597994ef7335dc96b1473e57b820cb9642c649f457e12e15f372c6435d32fbd76ffbdda545e64b04be356a462462e0b4b974996c77f5e892b52499df5011f23e0a6741db6b94b7a2dea0235f0a207ad8c0b1f377c79a7a407c414e3f1458de12abde3f8b025b08cb8bcfe32c6dc485669d7990bfbb5881688baf55414cad4945aae3c9797b821ad31868b08064db1cc1f93ccfe9f0556623d73812a66b8c1560a0e15433b0ca243ae81468f4158ea903d64d2ba27dda4a94568e506a305fe682567dbf49ef38e71aebeab442281315604705e7ad16c5eb2c28245ea43d917ec0ab277e5ab7c1e631f2e289cc854b68d9f97e5e50ce7085509cf4e4714c8adf4181a5ce0c71fc55c29b60c22f16de32edab1903d44d4a06e77d54948f2b0559426ec1c425b7fcecdb5efc4de67738b05c0eb8f0383638f1625d35938d3d2fc6047c83d0addf165850d8b4f068551f0eb54a7ec7eaf8b5af35d91a84663590e783540866d73f65c1a2097df622c0eedc30bdbbade3471092af5adb3a4613aa57212427e634cce4e3a79ae8a53f2f650f3c6552f401aa5fa9d33741ec8854e8e64b9747fcee0d0a549e297e8f4a1250cc18633a5068485d06d803430f23106f8689a5ea3b9ee4351eff813d4bc3e609ab39be5cb3336fdd85e94757a2823a0438fd3c178d3eb6ba07d636a41e143c6cb5d5f2658d0e130cf66c2bb9052a6e8cd350fca163a73fc7ca5afe8fe92497183a277319c3f75ea9c64e0a71f1ed369a0a3dcfed3a1bbd17860eb3fb92a99dd8e34a0aa48dd843b374515986235b524da2a4564455de5281a7a180798cbd2c03b153a5a782d4f9c6fe873649ed58130634ace38390da55c5acd2e7a702f59c7134fec398f19569811ed3985417cb43f043a416c7acbc81696483dd6c5efd1442a1861602edf5be11083e7653e19b1a3cff650265ef6a1654b0e6970f16a4abd2dcf0ca07460b4790b2daadd0c2096d4d1c8a073f23164e4aacf5a4a540f23be961a3577f382bffbbd2bb44cb25f41285ea6aea2ba07c56fb494844cc05826a11c00aba9e768a57f738fd8a454a6239e61f90cdf1ce3123556f3f589de3609862fb94984f0ca00d80e28e20f7e6c508edd3ef42fcea793e0b8023b2ea132ce59c43a6187e16194a75e3ae55faef4d33e24ca3e396f6450fce99c64c9b8faabbbb8e77c7e9153c8bf97986096d7c3355b20ad4d5325c309c796ad5f39f47b2b524fcd3448a86696fd6bda84001505c50e3c2794e08126d0fe2bd8592231528cdeef60ef8ca877517064014e670adb51cc4461aeb366b3a2d12480d1cad34d1cb79415be2151356a044536a3dedce81132edfe4840b2c62838c8c176134a7a2d4a05281ce4a5227a1472fe5720f02c7660ab936ec78abb21820f94cc8b8ebfcb501faae615f1fdd5712ebba0220237570cc0276eef5012853b849082758717ac186fc1e070b07d99b68a09ec05eae7342105f3096ebd04b7a1815948922e8c3df9095732278024ea44fe2b3601c2f4f5d2b9989785fbf8867384a9281c9d4541c26e8ec6933b70c136edbd9c0830703293ff230a3b357f4080f412bb06571369c3a2931148ab876a30129cea492f0823bb670e716995b1c8606760f6f78551592d101ef9fc8dece9bf80e6b6c2f984562cd4b4e714a6a7819e5eeb958f3a4145e9d81ad4f2bd17f38ec389274d71da46f3df8c5d180aea1d797dd042c16fb1cd6ed6e3e10e76508ca25ad122aa8d99c1103d74400e863a3f986db63a322ee7c34c2ff8df86d6d4c5e0206d7a557f01302e178d64c4fbef9af70ae5b8fda83a7f6be8ed815866c28e6833b0b43bf52d139a98cdc8c6c86dabcff754b2d7206702f46ec17a855a76b06c0c01284819ab810c1efb50f21fb0440b74c46e9e65df93e8fa6705bd8c3dfaf2138c969981b3421e7f601cf27011ccca2aa892965f4638b3084ee9162085a0b74048d8eb093025acd01f28366a3d45d9c1a117d3d8405e722d669cff12174bb2f68114902d5a15ea445972f3e5715083880d8aab8dd82dbfb7b07866e2d7d266b3bcbcdc7cae3475be8d79359e01aed2a0574b6ecacc50c954a2ca78d0e90f7a6bd192a72d7f113528430ee23fe59ac9a50832619d3cc24b77f940259d912af133c30f9a8b37e6937b3b1bbeb8eb49730c445b41487934ad05713d48d4483d30ccf18c39854bd6da59a48ebdc0f443eaa5736fff9112e3d399659d59f6a600851a5da07d0a40c64645ca55378a2378e751ab9b9e45848dd938acb3dd3727b82ddaf8d938841f94d22e5efd43181892de4b36e86161a4f512511237cd55fbeb3380fda85cee0f1484904afb0674fe064a626826db4dc0e60f8c054fd0a41d6c23fe67cf7559e816102c8be5fda341f5aa5ba7da31994ae99e090af05850be764f0a2d4b974171d5572e0013fef0751580ff0a65ab9110d5941a78f9907213dafe8f2282cd9622735d978e99f2e37c861bce380704315a9fe82481e7419d500e12be27514ed68e33f3905722135a0f2088f3e010f7f913d10c98d6cefdd651ea1680b390e45634e2074dd470e9cb42d3fe3f80e17945ef00d8f5ffeb3619baf4f06035fbc15a2963467ebc1f6f6c7795652c95b66611e773b652e786355079d2e2799561598419f3b58aa4414a44174d47d2f473b3d579c17e6e497cc68ebe04e7c583b8bd9af82136f152b237ce39ed1c9f58839633c86f64d7ead7e01998b54b78829292ce9c80ef3a9baa7a210b6791260765276bd4b89677232f0cd2f90ddcecec81df09bf42ccf6c230101bde4153b3cb47e314d1143638b5f08d86099edbb75af555b48b5013c6b8d3b364475ea176bdf482fa11d19e943fdef358532a21a7a31de07280c3bcd7d5b04467477047d3fa9c438caa000546a85330af0a26c7328f4958a417041ce5037e7a3d7a8f81ba807cf590e68ee9f15ecaa0a82c0307e9f768552ea603b23fcdb4f4e16b9626fc8caccafcfe68086e48fbcba0620841a5320466aa7bb375e109c55e3a628b21bc6c8f3d8ee1f25bf516a83718ebe441c48aae4c8b5e13bcf1d11197a02f2a092428c88504718168d1d0847c532c1eb5e8933114d01056ec6b7335cb539f504816dc567c24547944c8e35274fc52f6ddca6af96c145a64802c975af4365de6dfa7c247aa0c3f746bd18aa092f950e3a2948ba0dcf590b4947142bfdcdd3783b063ed2e62f4f6c02f0f962636831ea3a8e3dce74fea52d31b61cafccc32c96908ac9cb5c5c34b25d2d314e1736ef97cbdce36a6ad52d0104dfab156211eecf50733aad337a0f8802f88e107aa207951775621eff4e5d246adddf0af0969afb651dbd601464373c443b03044b209972ccfe645c1595cb02595d70437a456b55d59e13a0945d880984addbff25c387c9382dd0a3175c29e53ffcd6bec85422d7548ab31196507c507c260ea39ee602cd23e62984f19c692a3a68faf1911924388e38174b40bbcd53873c0779698459ccc23f905668e535d0175ba96395d7ec66d730b0cf164adafb39ce671a21477b43f332783e9f0dec3043473cd65af913b1dd6a8ae199cdf0ee30ae0e4c8c65f01f7035d50a70bf049c5e9d4b7a53e519afb0e29ac58297c3341e604f8d11e405492d1cffdf7202fc136925d44365133b05da06219c2009d2e4ea781b45176bb3d6683696f609cd018b050640e607979bbefc1ee8b6810b536341f107390ac339fd92a2b7033a01e2985ce87c803ac8ffaf3688dade50a9cb05ec320ce6cd578758b834adfd7cd716350b015cb7afcb7768f7bc39d11ef340a418f891dca2f462fa41beb6d672a317b219e5ab4394fb64191871623e6341c7a8f88124f2297a98b99960d9ea0cbb194130cb76872d89fa3b2ee2290452dea295c62237b75a969a012762ca2f6f72670834aef086b6bb80598aae71011264e19fca7ea0cfd87a890257f1cf3c5fbbf51473b9ab14cf3e1c827140ebf1d6994d07a66635705a7bf47640911a7d45f85e10602a706ef90d238469c673f2d926cbb517d69684622cb15248e79661968b04c142aa77cfaaaf77a1a7dab758a24ce9d525fdca422dbd1714b549c1c0fca087d92e79539a87e2e59b9e520185b6fb7c10aad4ddab8cedf04e32a268f713b76f2236b6462440d4b9cbd028c24020618a9bd1f8391ff67fd17a3d34e0e8d5cf345e072548df7b8efea7b34890bf7558368c1ae80e0bee71a8fc35634379f47159d526193118e9437113959904977b9f3bf1a0bad720c89e6c2b63d3dc19d6635f8f4c2d1afaf1b3331cf049a283cdf4c8365963eb1a8e0fdf2ed16a88987b670d5c692e7dcc7f3808ddc8f6afa2811f3a816ecf8e4238d57b8961b2c8d3e0435a2f18509cd2e686c744ddfeec31aba1bae378a07f6e00716b100263dd57a972c00a28f6efa9e58c25ae46f2d139df4d65376b783ed165cc19757049a80736d7808405063f1f59bc0f859f2f6c70f35af8d115e43afc5e4fd98e67b2104b639e5cda31f3f40e9b60e6486678cb772d860f9db4ecd560978ea0a77dd84342e6224a32406f4881e25762bc0df6b45fc34bd99a88037b82be89b21a6a74e6eb09090372488973d885025cdef983155b2b6385d5f81b8beec9ad346f2ab821000c4ce2e22cedf44433a6c340b796ec66ec1125717b9fbd43088adc5016ef38ddd2f24bff6f2582fa896aa3bc9df2272d13ee256c08b08bf63fe6c1c742cd38b32d5edee8261936c58906647f7e777cd34284ef967d81cdf3dc09cb8e708d668e48e2b3032c359984fe1624fe5b9574b74d4cc630622557e70a2f8424ecfb88466dd54cb22eb4e5380f29633c933de5966ab01b807367ececa79ed4e410bb1ba0ea574d035255a4869c8c2dbbdc5d34c2ec2e7b4ff3d986e6dc772a3eae19d3e4a3bd8690075ec1603290c7c81aebdf16cda64428742fdf63db8001db4aae08c8c6675ea0628efa7e10efcaebc0d5686f88fa3c3d35e2cb53b6448a9b543fb6c2dd3ac42e60855feb68408b0e344d840f6b94ef84bfd875bf07390eafcb53af28469b000e17eba94a56abeae586246a94e04b2c449d4839b92945fc5d7e565de16d608203249ce74a1ed87cbf17a089c8cdd2822b059b8153ec77cf1e3f8f88a94afce2be1a6e5c4c71ff7d5b29bcba696343e2c2580ecd84c1218871d91ffccd4489da22022fcf5405b589cde5bb64fccc77a2f69828162fc289e6d05958ce53aed191b157d639d1ccdb9aaf541cdcb24915f1d9808ade1be2aeb922fbebb4f986d1c652260b09bd0846769d30cae0cb63c52b12c8f0277f9171e0aec1d45294b4967eac3cf1a705386b1210f32ba8832a93fa6fa2f91cf3cc4bb8ad55919ef8d42c48ee6377efbdf239e244542659d9122643dcf81ba4737f3b523e38af39f7a96e28ba4977a309d5a59e88e9120148fc87a08b0cd7eef63a194dc6600483ff8217c02853e94e700f52019e4caa0815bc85e2cbcd1edf82c6109d15c675796cd0db131e6c01d7fac6776711bee87fdfbe57bf0ef1a0e631b0804383faaeb596d9e6710c1cf7f669337d5038f84f265f8328531506eb854c669953ae02984ef9403ca8915cc0d76bccebf9cff2ae4766ff4d7f815bd256697f59873629c00414ee265c330b92c4dfe24384a57568064d55a40279c15f8f4205c0c51c3f92aff6da67bcac02195097b418e118cc6739c47c1e96a6af4b88d45b9241cbb58347478e7dfc563492e8d38d465c3e6f4ef4397ef721c231a3fa90c2cb990b86778302bb67a33b71d6f21611b74298abd3d848657d1532b5d7f15fcd7f1acc36d61b1f058ffc52611076dd6616ed978c9c9eed0e608c6b11cc91f1230638fbbd98468e72e689d31f4075ada8531d4361f031767993d174f0369a6effb75a4a8419fd80fbe7f0335ba42a1a5ecc89b5805052b30ae44e5f99d920d0ca5c56691f47233674a78e85005566629cbcb2806ad8109de8c743b9920d9305770c8cc22c0d0dfef23590664ff610af4d646d0c253759569ebb0da815785dbf3406718566c83d0c8e2893223a9cc0b8b4086b8edbb5232527453161a1f676a5e82ca6b15babfd7310ea27ff18407797aff828318172e4b6dd26451afb0b85aa71e1d17b4334dfb6b40629c21607140ce96dd08fcb22df1ecd00224ccf0a8dcae119ec56aac94b1d1921817966dac6e856bdd21768a5bf9646f997fe2ab27c18e29a6f3d03647fe1dee615531d4a14fff1876da2bc56c7c894aeb08b676574c4a039cc4ab7ba62c79206dcb3399b82309d0611a043157e5b0396410498a9baa670bc9b596634f04bafd9a7ca01c25f526e1c32ba690760cd4ac5c124980006e61d85f91caa4e6b21ce90bc1f613c4d17ffea80756794752a80e11da118898d0a6bd7318d72c40ff9e37e362309979a3024911eff7b80ae7d6cf9123b0e942c586a0cd4a48dcb65e839d11b67280b163a80d5495b6afe61ac0f2bfb42d203e7eee9553a3625fcb6f4391a211a62534bb66983a76c7ea4bdcdc9220744feced7bf6edd4b48b390efc1af4754f435f0c347d4e9f7e82c14cacf4a901b31ca615886ad3de308f164e5db855516a43d9ade62b1b73c1d159037e9f411a55b2fb5cdc6691eb835726b6935471c34474778892e0ad7fab7af08621d346beb47e3f793383ed4718ca5f6a6f37be2e0400be894c9d7c216bd34957a752b89cb8f5f012f45723a31d146b8fc135d58ba3650c73e0a4b8475e0b1dcfe10cd82a10c4b47b40a7cf545f61e4f632ff536771538123b390f6313d876ce9805236e682abdc25e7dde021ac8b44e619a26e70c9a4f8ce02a767592b22d0a5b22df667ae7772206055f261a155c7a10b25d9f89b319393bba2fe425ff48eadd0df05e004aa9fd21d1883f9b52bb9f4a44ca8c2c3b01b0bc3bd27bf35d8e8603b75923b39ddc78dc77f204166bbcf83d36a1ef9cf21d29603690756c1f09736d18e7219c7a463768b6dc715a2e527a09d7e729efb528a99a55022d7dc1a7dda73b25e91b39c425f9af8d4117feafcb0f671b4fedfc27a1b3472e548562cfbec3e3f02a9a6c96b28221c654bb13064f885204432e9262ba5412933b599e7b99147d76fb4498f5f06118a9f629db0dbcf5313bf66d242e05a2180533d479662da8503cbe9a793acdc9d4b10949a579b15503362201f316647088c3356797d2f11ad7ecac1eb41fdcd9faab90126d1e54d0a898aeba4541123826a0b66df6831c9f7bb624faf69238b72b82a48dbdd0d6db7abae0b5f921ee9dca352a709ae2837af84ccc16ceb12c29506236f10d14f05e067b2dba06688e174e2f3e514f14dd7cbc1b4f36a99104b48232cd4833fb341b4aea397f8872742a219ee088e3de75b26c5aacf4b757000ac5a7e978a1a50d968c5da166312d6d9e94900d990e687a9773ef81fa63d921a3798a00c103ea07159f316ac9a817f612f74624a1ef2ad70e0aa6a6634c28412db88a0bb9f65a180ae7a57c91dc6f68572dcfd0f09798a9a7b3602c33fac15bb4ffa5fd3b383b8562979593d5c54b073ee05b310e7e0451b4fc7d279ba2b9e6d3c1dad3dc6d58a4f954ec97037e06c36951ebb149cee5fcdc49eb7d3841e1d22f5461ec6254215aeb4329bb21221118cd30e6723badd22829361aae937d0889d808c03f1a4d2efb56cd3292334a3f9b84ccab54ebe0b62e6e68b8f05303012bcae4856ae550aed23f94609808cb631af5944a5715520db7dfcd4ca4fa8ac0b9a6663a83ebd9451288aee9eaa78f01fb2689ec6afda850df0089fba8996d137ca1cf49fd3f7e0d5ce9b099eb69d920cd26276f8be47dd65d76abc2bf71c4bfe3c83c9fc27e4266df0cde451f919f624dc11286ca7f3dcb3e3a2d1f4519136c7978bd42ac1339992296f5d9a89025416c9714e7c638349e5887f6368b0a48d013b1fda3cbd1956628f24010f2795d1536750cd04ae734df1827a8b133b615287c1c83f927a5d943f52772acb58f444137eab95b64a4b9fc2b1479605e463579593b4e178666cfd2a1c04615aac4aa738ac31bd5bd7bf9786777040845f7eb7d802ae52d470355f0ba41d1ddaf192b39fe040816ccc10c3b0afe3767fcfdf2c487c501898a9a3c9b607a44c7e8186b0998cd22f626e575925167a39640aa1c000d11e482a7e0193e686a8a23780377356684006a05e74491939f90afb3895ecb8571d8fc7c34032fc52fa4a3016a283611302051459af7326dfa7a1e4f457c6946760d3be1d665f59f9a203f234c9e63fb8c1119e8de4b79f87b9134d4000c26ed59a621b4113dc2677fab54d01e5349b1bfb9f1d9c801f56c0b51473027e7f58130c67011fe69edd5ff73356308b139bf2417a60deb59ad2609ca0cf584489cff94d0bf65ad7c0f0632e52f6e85a3050a5dbe0984beb607296691446774635a90ea172b1f7c0c4f35c3a229985573677fe9d7414a66a3f75d2a39b5ec071011a3fd14618d9e2278e1aa50fd68c8fc37f9b03d57ab11337cebd717dd359fff51bfe18c563a76ed57b1d334afbb47da41d0afdd55cda7477731a2bb9a073857a07961132bc5ba5bcc744b9b44a68fdf116eea2b95edbe141f4fdc71e261fbff3f0c231c1e7cf591a22fb09a97a475075eec00244bead3bdc12dfa1dec6b6834d99b21213bc28fc3e6a015efc396588421ed6f5850d62ad2711ac272979998d3727a5f184ffb6377c44e958c4d6fd6306b85a3f20edbd87a7e0edac821968e779ca98b535c237f6ea1b50155de97bc076a107cddeaad5aa8320bf582d18be0b6d022fa1f23be16836de37801affee435456ded3adc002961f4fe022c08444c3e37a3fd0480a86f456c1997346c4dd4b36d5c5d2c2f8a0ef54d42916fb347011ea27ffd9b132b1b0bc8beb2b873289f646cd12964513fff11d6af32b21038d79ec8fcebb06690a265574d77bf879524f2551a28ea13d9d00043f40bb86b57a0664900c484785d1aedd098ef884903973e45a0067f5cc5790dcb4fe3ca42fc94f93bc43676f378927395a0cfb5b06cca011034ba3a2759fa10108fbc40dd815ab9833863e221ba5d1113d8f779fd41e6394803fda78b93d7691d18fb26d910ee5aad6c41f83cc702f11941081f591438a064fd8b1acddb93b07dd818840c91b70aa5a421180043a888dcb17b43eee0526b64b2de43f724cc6d32d30baec214916488522f830b6ac04e24d2ab36b12161f814f213f90aaf1a9e3073dcbfc64d0d60180909956d70d9bb8701d06b6346b5d540c13910a7f0fa9d740a2c5535148f597bd717063f83ec7a21d1f20a332d75dd293d635b684bba1e746b6503fea7482f225744c00e1fa9b6c7dc2637c22797533e980a4380d305e1c3eccaef7553aa68689b97e64b153a865efe6d959a0737182105ebd011f366168b79cdedd019e4e245fe793f0ecfa46a2f65be525bbf3cbc60352e2496291bf261f06fe01dc2fbf8f6b7036f772d4cf30effadf525ed0e2130b1212d9bf923a441b19926080baf4f0543acdf6376d350274dcfabc8c7c1a848c414df7f7c57e313a257b17b9776cec5e71fe91cee7dbff2b89c5c67870b696b3d6c543032162d80309340350b990ec876b405578a2f95daa6d0301e8a5846022cf2023d1afa7179483a2b3f645d596bc4d79c76705205aa39e82da78daff661e72b41b366a0beb00a8441629fe341eeb9874725c14f7cf33f823b2c61cb5c0e2959ef4231a3eab508a65ee7567272eec6149ebf0f0475773a1bb5aaf3ca372cbbd9ea0bb57bb6f7cccb9be63a70d70134d78c0b1cc8d1b4202d290306fa37416224d6f51cdfcc2616bc4f354242771d83e473f1db030ff5b41c2d8dd00e2f2adfea6bd941dabbd1291a688953589bceba3e52853aa1bdab772029771cd64d6ca7ab8c127ddeb8d0db0cc1ef7d765ecb6e4b1c6129de1240e98da116eeaa8b41595a6c69f54a24249d6a54eddb4a6fa56972e7c8a6f5598edfe604f54204d4586386d56bc0fb0a991aa3327337a085353e27a1c54e0d3207c4c121ea192cd110c7276ee8efa029403134ffaf7ef39f426d36604da65e78163d3d5d01b830811a6ecdf36255560924ae82b319ffcc0b4dd180d2a1b76ed75045534aa7b837813ee615e3c955f8dc611fe61b6976cc1bc2a5311f2260cda62092cc7fe2816c2711fc9721027e41f81578e1e7f3036a0466efa2e11e11e997b07dc64937ea16fe409725505e582505a27b72e67decd93b26e9f3f322de087a8b44fd9071866ed60a99feacf5450994bd950bcdc95b81d5a0f615e3f2bd61d28a97ccfed41b1509233d26bd130ae198d2daeaba49b633e73423ddf741a272dcd58c1a1337b36d813eddc90af77df2b07342254af6ccd40ad3b3208eb2843f76253fc14b2340436807a04c3528161d6a9564bf59af24c8e3811eac4c6717286595b7c76bcecaa14427843afef4496324ccaa997508452370ec2b0b9fab6a5559aa25d6f0fb729e5d5e2462bf5483065881d3eba115740c744c6e92157120a4de1961515f634ddb2935235a7748219defd2950070b24878b95707d916a47c87fa84b2fbb46a78e3fe4efd9cc6573363e8cfdc941d6b6471146a3a2f4d1686aeec36a6cc2019cf2a295a718f25cd95a178ab120caba052f58f9b57c02a875ec095b76c46d44df6dd7f1e3c18c6448573f4a7a1a8ba38bd8d742b36d789d26ad05193bee212463efc546a83546a466a64e84dfdd024b515bf62a46b1190295112c32e9c11da07ac2ba303a784e096f439eed17286e7df8ef2f21b3683a31d472af9b6deae5078707cb951e6bc18c73a17950534883dde7b746ee4d90593a20823725ff9dbd9fc51d12d7370bb6438fd8a156bfd942a8e8affad820cdaa4537b72d06c06f65a1a1de0032643e05875c650e273cfc32c5af8df81cc53f3c44fe77a8d01e554218e1c40a8701bdb097f42ef84cd54953c8b3d5b48a6405ac0f45f5e644678848f11fdca875183ece754fdbf9ba0ed9481566060a930a8882999f2160e870cd0ab8c5aee7a0c9d8d4709361d05a1f6780561b743fff69c540e0573b297d354d3cbc254fec56d9e7b2899f66d8c9c99b406e6fd3a2c6934e1d413297000af5d2d24465fe3550e4382291077951edd5a1fe7631f57bef10f813723a00a93fc754b26f94fe9c41f22f73c5918bc088db9cb6cd52bc098ac71d8605e8596effe5aef17f24029d526553491fc7082778955ea4987c18d2b989723c147a5b050b3e84a32d710fa75329646b935b8dd7dc700c74f2ff66fb93f7db538a77ba3a3738a05b6e6538a35345a13a6545481959ac52d48c47ef013168ebd7e59f217ab1bd8da3f7f1b88661da0eb61da8951abe2987b47365696f4fafbbe50cfbc004d491a4282b99796674fd8be3e83584cbce0ef60f53699450103da38393ff7ddda032997eeb9e5cae02df9d7be8a3d1b95777e4f2de3d5699f64185f65998bc2607dd0dbf9e88b4154173b1b88b72ef9f2d39553cbe7122251219945df5d4980d20d67371b3b50501c6f15ffd9393ce88118bca39d8558e38e2d40c1fdc98c10e370c361095beab5725cb631cbe8e7a5ae8b2d657e1956b8657352923d43dac0150914ebba32436bd70e89bc079026a9f626750680870ab85a1abbe84cda0c791c1973c5136f60d0f3633d07d13f6f3eb51ebcddb297c6096c5576705bafa8d4ae9e5ba79c234487951efc93482bcf33363cb8bbbff8810fafa2fbee51fb1789b1b4e64fc95b5377b36a08e3f84f1b905861cb8db6b540552250c0764140cae7d4072454f6265bb8610f6c1c67669fd363379f6f4d38bfb361d3460624690db25398d0f341191ff40749b7f83e6fc39a47c4424a56b20d33263c0c26fc52639d8b2f7224e5daf76dfd578862fe766649823a0b73e4c94bf456eb867b1f5b93d888ef8d2092e613788e71903f976088ba54ff4a47fa3896de1b4eb4a198510f03dfb6c064d52ee654710ed19072e03659c85490d2ba52b68b315adf3322676d36756ecfde03467b05eb098451c42cd8dee1becd4c56922a3ad016dcfdd56ce339f3d1dcc1e15fc9df1e40fe6e42fc2cfd33cb073c1223c77389e4f7a777af7ce537d235825871df4c3025fa9622862c09e70a57739ef466f935f9219688766b79f3907082ecf9e5de10080ab6a28e4047f683b599224e5da2210bcf56bad09ae6a05cd1e1d866976be02c8cfc40cf4089a95231fb736e6a9048a3d720ce7cbe94f9c8b85a1d800a34406bbd636d71fe035ee776f42bf66722c1a62df376c4f97deee2188dd78b47a2095db9759808fc1109747ca3bbc711b152631889fdb49fd29278e5ad7460e709e13409c2c959577bc3d097e25ff53b1df7b3c0b8969e5239f2b265568562ba55381424ccc27646360add2552cfe99a86c43ad03b43ea1adb6802145404097a6843152304d91c6ece891fea4cd9c5cd3685dffe21c2fa753ca5d81adf4a6de2f53546e50a8d97da7342fa4c9715c12a8d94837849a050a8b5552c5cd0c2b1635c073024d0a7464d1bc8ccd5a1318ee2847897bbb454a4bb93bee564abde83805efc012065540be7e2da76cdb4629a5a388f38c86ca83f6468c0c30dd80762fbc3516dbf8c0e02e04e3af43a66b69919a91fd07951cf7f9355d0a886002657f2dfeb0fbf11d74f8d7dc597740ea0d8081fa8ea4b5d5a7eb54ece6db924e501f629f15d8f5544fe431a4066328fe4ce0ffcea8b5839ac416e96bb107ccf8f34f26b8921ac3d3bb1d20d42e72d9a400af448ecbf28036d6b526082c77bf843483ec60469f125d817f316d8263b2bae13bbab8596a02a65946e529d2a086067135ae52941bc5880752f5ac839e754462989d9d351286ac25288013036ca0dfbe6c1be235d26651a92464f99da7a4c2424bb115419a9c0446f3022a354d12793e5793ccb6f753d94ae289570e64fe6ba69ab01deac0ba11b19feef4cefc2cf02f4c2f0e14fe84b0904dc47caa950d400fbbcf77eb2ed3060937b57791fa6814a4f690af513047c2fcef5e6f03e6ffd0d63463d897ceef50988ff28bebd3160ccc59124922f2c780a62496b276ff5c1dd41fd607849eb688772f7367a98230e3fbe9be89a3dba1eb3f2733191d7a787e9272c7252b2894477d5243f925902975a4a8597db446c0d1744f725ed7fa6ad3da8dabc5dc1476c8771ea4f55a09f68d08efe70fa68364a9b65ea69c6b1aa8fe17e23faaf769a11703507e69c7b54f6cf64994b7303ef7c3755348561351cf57913126f2f1faf97b52b31a3d29727bffc9c86180b389ab87b8b1fc3a0107dbf64ba1dcf369c86bdec17f4b4840e7c73ae3cec175d630b1ce72f1904fa08eac115beb809a762884f1d7d1be6e62e8d21c10aa98a95660559a8a4256696b0082b0d86331055f3c4737214fb11d495a792234f5e4a890f5f82def5b55a1ec003484796b8c3e6dccbd4b8830371925f687f286b16235741af3272d26651a397199a3c0383b0bc642a743afc64b6bbca7b4b7f2e34113810bbf6bc23c0c696c581d40f1694da51284bde21bb3b1eec6c0326e07dcda56944c202493b0700a82b3361f4cd6da58a6a0dc1d0d01c7b973cd7991619504e65271b0af3de54ba22142aed6e045d8d8f95d10cb59d1dcec4ac282fe69b90f5f37198b9eb812cd25b4699e219d557c67b3fb85c9e0d29258903df34a5b377e39a20db926c382946f9699af16e7348d478f6cd6abb379489e8d729f8da38ae12ac57061f8e7df65ad1f228735c9e5b62f56a1a620a5ffc2614e8a2801e0fd5144b35bc8300389b8c2a32b70f61b5a2ed620b19acbf47c89477a5bae4817b5f7bbc05aa973c71f02880c9eec3aa8145596c9eee6147d1574838cdabf1ce0c7b6c9f6c18b150c66d46890fe8bdbc7aac680cdf850d0bad2b9f64de4fa55a9240abc15b5483ae8b373369c004aaabe7798be69e91218c0d10e7cb88089fdb4a52051e3782c61832e1314f9c8e1ea319642e23348de2f8cb39734df628c23281f1aa805d83e43f8510bb7b89d814ebe68f83948b2a49573f4dfdfc96e4c6fe4022658207eeef77502f208101d33a3bfe3b7ac721aabe04a48c49ee1e52036c1f2a13080ff2011609a2f50fb3671013a94556664504bfb70bcd7ddce3f0c121259b5ded2d042ae33dd1aa19dec25e0d0c289768c3cff09d18c86221fe1e0571c4e88a3133faf3fa2c4ebc054a0805eb236382e2d3601ab818f529a7309b59819fd102c66e536fe9c7eae32615bedef4470dd0e08196a49567f18b0095411c8b80933e5c348573e4b4779bd1569d31612532eba085ad84893247744c2af133db038648c829d339fc8de05d35f2e57e1cdc27be16dce38cfda3bba7ef24fff4a911d4387b5ca89d86d4a7ca14131b111d3ffbb9e7c22d6d6132cd7bb25838aec69a9a944c527c60fc28312c3466da7e24845f6d7d1a590bd2f2f0a40e7dbff6df18d797d473577ca1ea65f6b15deec3ab63d32e26836d481a32fef538272d30f7d1e8561e0fcc708565dada764114478b53ad82f21e08d41c3b46198d4485952f6c5b3496317245aed8377391a8576e718be5560a361fbf3f7510c75e6a47a1b6c88ee7376b493ab422d0eff6187a2d0449ad072acfd8c2d1ab676b4099494b7ba206e41d48f779685b0680bcccfa64dcd6955ca661eb6c3ffa95f29ff8026d7916601b40678cf3e18e1bffac5e30f979e8056c1536c7e16351034b47bf985bf7a12851d222d3a51569c85e80baa549b7c1f91cf1ed44045d97b02bc4fd17b53baf470cea0f7f7615cd6c95c4a39734b921d73cc777f0be1f556ae40c3f91d349364facc21cb27a1eb1ffc1233932375a95ad2b9b467a9cedfa63ffcf6037d6de65363484376e1d9ae4d079bdfdff4fde601c79a153a5280da50b5592e9476f31a69f5f080eccd1934477724c174f52774407d44075b8746c7c4965fe6317e2f682e599d224b006648c1a6c94fd84910fac4827a976e21c306fd4db5392016673878f82324143ca5d0e23adac3a61ed0a30d0a49f8699d3be19f3f4caebd9d1efe3e1558222b00d76cdf7abf2838ce68e10c2480d68cb939abf05c7349bcf514a71e2009b31a5243af62f75ea0a81b26b294225357f80e22acc8b5e6b45b699238d4339754a248476a615df3fccc143be5d156b1ce402782a448bd533be0905004ef1bae75e0a25a75bcfaf61800d5021382a70cb615f46140d6c26c71fabc73a1cad03583d3e33e3e8b5d7d7f0c96290ad0f12cdc682691829f46b91b4fda5f3e2b742c9249548de5da67f328bcd5a81166bc37ca41216ef0557e4aefc91325bec8cc9ed00468e8795926a141533ffad2659bfe43a54825faa2f56bc8ff8ecbbd98eee225a528b9bf51d18951d880a7ba9cf13f10148428963a1e299a2708a1a33131646004eb2ded41615e79f1074a3060a6a5e8c8d42b7a92a91aab576e0cf04bfd0d26bdadc6457a32f43181fccbf3012f6d36ea54633aa3e0c97a002f49f8c8e67a52332be3fada0d537e4b0deef71f320a9f314b2cb7b7aac17dc35d590c7999ecd6fb6d2bf1246bd079c182a17c256d77a087856500e38e5fad8b440e55b20edec2beb6e8f43a167f2e99a2df4ca9836332e0903962f7ff0f2cc3841b48cdbeef41c519ef5a8a9b9c30eb5c822f5ee26b1de5f8c29fbb0847940c7c9a583854e53464aa77ce4207a17a188f459d20f57d569be52a11aec518fcda106900262ecdf738b4fb97c44ba29b0e06ff8235fe5447340fce9007358dfed88244d89e57ea2593ba7cc887ac2063d595de8c8726ae24fbb739387add44849b0d8116dcde4746a3e83c9be2b32f8ec3e78d4eb5388db3338bcdaffdb66794e0a98636b47fb700c9dea1c6cb0293f9b23f035417f8059aacef30d212728007a660b84f53f540215e796b958c364d21078babd7dd166c0f571736c945d293c4ff599ca8b944a51526fa65493054ea284bdc2e7f24158e4d4191a9d3bdcd74ba86fa9319bc593426055fc7bb3ab7da5eb99dbe85d44ebd814428e0f049ab8b25d26c24b41917f880a912cc6f6572ba7c82c282093f7ebb0e9fae4c675a64b03688fa39b925a1a5d62777a4bcad3c7329550ad99e029088adde1a7dc87d3c56976cd1f45c0da2e213de0556694c6d21d6a104912b26c540a75377288cbc8b86dcda2620c64dc6c6f5007eed49c9826a70fbb074d4b1e8eaef38de5c6a0c1de76a832a05ba62c820024e8a5753e0290f6ae0cd14d66629a2185a24297bbbe38399e238b14cbf20b3428c79a0c29eeda3489d609a2ba77c6d8e11536e7c29b3afea773ff470d93951418157a398e823810a4f9102600ce81d77c6f00561a39071c5971e44e1cd7df6219e7f7568a6b1f5661f5b2bf9a4a59bc03c8476581c4f1d14fb6257c51116df26a5f32517fa5d7c0da5e6ba1fa31b40b739ce18f96467ba0ea8bbb9de62e14c514e9083b4005bbe509524886b64af91a47ebdfdbc6a3700a34e048536fdd2f6c4f9c5f878dd8ffeaaf3971c7c126b7d98489b2c3bd7446cb12aa95eb9e5ede0a59470ace53de8122d29f15a9e88613418e511673ae3fff2ed250498a6560322129134abea00521c1377d760bb7be9e2ce03ee39fdc2e97c1fe0c5f2c20b404094234201aa71213cccbec0d3ed1f4423ee1a3d1163fd66961d0b6e28098ad64d6256a921298a8b2cf4ae9c1882f153074d40a3df4ba7c96b06f89338d98cc8e7b49bb898145bc18df269554c51d30dc47cddaae0b42f4df693bac6201a24291f1128c83936e35647066f31a00fd96520e2eb04b73970475a4cc97e3c3066234c45e9aae430deb907434e18d1cc32af7a41b702e1f919b9fd3b956e8ae377e982834f9262a45f946840085aecc2224b6deedec5b6823219cb562bd560f0ec9892a4f9296eff780bb0d7f3ccb2f76f0c146ff3e6fe0aafefb5afda9c778e28de4bb556018a2ba6c6ed1d0a68a6d1cb6f4626e533b53ca4f1f69003b5beef8e3d9d00bc0d3674267c25e51ccc317017aa7fb7f126403ffa949c1f04ed1696a72647c2fa319a6b5d31a34a91c877c759b766f2790a5e210aa5fc09b7b32859a0d72c85751e3f49c65a387e04fb38945473c4bea7901ed2c39c5e4eb7aee67f2af048f66af5e8373bc5a1af1f3e1ca0f5ac53170f6ff5998af1c34028f5d6dbac5426c1839165abb45135fd37d7b4b914fd55b49e93a2bc6926d3ebf92d29d41256996366ea99051cc291b413a68cf883374d36c322851847cf91f9c16fd0caa0cfb9a3e745837c4c4c768cb06cf43c92da16c83d1d4174f13c4be7ed17feaee9a11906e0fa76b9da5b81274e969d4907fca100b412184fa12b1194effb356b8ef1719071be8cd23bd90201496895db18f7647c122dc4cd83a70dc31b01a6c86a53b7530f706a1e01ac5af180e7b7a579b9db4e03b90d74464afb16b2f90818313f80d231cb3145e65b879269dd6a48c4fcf33f6f24a355db274196228623cc6fafcd835a1766f86487476a6329879f107946fc78a86e9532b8d4b3a588cf0a4411e3b676e406cf7feb754434ddb70811dc26b6106e66212faad3cd6dea4d5358f920b2e76a20f90bae173da25096a2870c7bda39ed26b34888bd9476a59528e0ab3624080279f0b11ccaa138ba106ba06207417edbaad068d2739d51c57ccacdcf95e2b14d4bcab3cac816a2d67a8990522670ecdcc02718ae31ffd86c5582d6ed81a1cdfa62c9656daa682a0efceeabf663387179a151fc8fabdfa7a4454878201b30ef22927ca514e7c984c661721cd89ad345353936beedfa8cd5db7a523df9d7105fd2dca36c435f0217aaa4630aa61cf51ac33479180c1d166ac735e2b902a0a382b0b8874dcae2b02dc3897dcd5cc619b587476ede9661075b5b5da4451406b5f99a4de3b0fe7c59c29b6f84b40d1baebcbbb9d36567f7bd6552f2871aa6b6f070371cca3ba27ae47b96e767c45f9b199dcfd76bf42533ef12d0fda08c0c8ac2aed3077aba3afbf6a555a12e05136950b3bc1e303a6d4fd6a6a7667936c6ade1e5428be1dc9f726efc93a322323b2082f8cc1b2808cb5f2081bf2fd2d6a40d91096de315e5f3b5e2ff5c7cdc63cfed33c81d10429e2835519c9d80a82dca30159dfb9ae332b49147ef2eaa09cb30b2ccfc15ecf28ff3a2d813200e992cb96934b84801ef8f4b6aebde4ee307d18665d735e03837f4f9f9b07d6c160903c0bdb221bacf3133293dfc15c53456df18f9b47ab8048e706b975f24bee66b4c0b5e105bc709556ed2893c838b1623d003d7a2fc70df5cddad82c25befb59374bde61301440383798109c8131dafc6e4c7f083af75fb76321ac1b97d92ce7b36489de139968fa1f26bc9c75824306b60040b0b64cd4408630e1b8e164d59a90fc9a5e36ab3f72145d2056adeb3ab4086433bb7decb8416c62484b7cb2a0e0c054bafe0327a213afba015363840c9536714eb7cccb4342776ca4f24a955d1e2da0c94129165acd84a702feb55cd74c7bc51e2f47299022d7173c5ecb6a4e78fd47ea83542696f4dd40064af7c5a8838b491cc4559c6e487b6155c2f6e388f26b901ea141e9aed63ffd27af7bf99ac8cddd20df4e14eb18d97194455f369b18f317ae8204f624cb28e3c6ea144eaecbd6828325eb3edde5f9631ee1aefba5e9fd3f85710c4b6369f68a32420317ec3a0ff0dacb3ba520c5315a9f79898c2a319db8e6783b9f219a851b8c9f78d5fe52d5679ae74709f371c76f06aac351607740afb8a130047df6d1c50a4bb1240766d5f9789c078b5a14e509e03fae4cf1b5dace17e909b60b434218e19b43f5a5139c6651a7c20004ba4083a47c77ecb4335015f24643ba64c618885906175e519630751b493fbf4eaf52c6a936a327b8bb5b5a72da05382394a658fc38196ea03861f520e4cdde1f559fdd1cbda6bcb75d2dd4460e0f9da85991dccc3ac6c805eba77cb7c895dc540b35f19a69af79fb913a35a9412302782f103107bd2c098b0305e878c3a784b1ba08cde76f61129507153f72b14e8dc45b8d0c9b3b57d16ab426debbe2206a6f77498974504c05b168a2540dfe0107d06c355580f3c793ebe865ea84b3998677f520fc144c969b9fd6f5ea721c3bf3a0bf710b102faaf90c7fb9dc309370ddaf2011f57b9803c65d248620c0a74e7c4bd9c6bc1c3d597491b3925cbb5ef9e2ebbec95639115377cb48cc0f10290f52468c1b9cdc8015902cf16f3837f741e95cb137bec1f436f7dacc72199b691eb86f4a58e7a058e334588821facf4ba5b8a20a3e5d30a147b517f54442f4ab4ef005e97cf141dc683a40573371cf2ab5b73670c6a40824f482bc13294603113f465114897a6583a82da1cd22960669a38b332dee3dd94447b271fbec5e73a6298b13b40271ad46f219316d99498b94e151c84874a078ec145c128e6d00b68106e21ae3e5ec721f82f0f0916d6ed49fc3c83e044cd4c2907acf807d65bf339b49c61cfe68fad890e25952f23b9d5f350efa0c33c46064ff39eefb08c5d793506cddc05561adb646ba96ac4d7804e0181dcd5075cec92dafc84d4d7bf2a8937e292e0e031328edb63236becabe74d3c5d63e028329c3bcd3c11fec91239b459c4a5c270552d0cabbe2379dbf9349dec4c01d02ff218c39a4df39f11c41d5d88c56d3828579915bcfea6bae361d9c6ad6da5116ed87550baabad9edbfd2dd37366a3af11aea942ce61968daa1910d728b7cc98f104526d1b09f49ea83dee4922e6c8b0320adda8c78e4f6f64e9348ca16688b6ddfcf6ce5e26d8a1e07860ef02c02b10aaf3d1d9fe3addde98a8608f6757ff124a81617c6a82fb2f974b20875a12b46f925d8350ac1455980b4667ab6c34abf4aa719e566499c9c5817eb512e9d2f8e67f7fb925f6d2ef8a69901e52f24222c8614998685bc86d84ea0aa5f82621e44932c6a6d3e56e2d1557282ff7293acb25e3b6e257566f4de182b23dfddff0c683f0b77f5c7d524e4e158556a083c809360ecdf4123234ba5f9af7c21700d265f081f7b1e2ebad1df8e97d9f78ac2f3eb801dfff5151b88ab0719a4b9e62f12c4df0af0a80990147b2674e1bb3b974caa4ad6ebf1bf8d0da71b09e12f15ef4d7f94f5a5593453b2cdaf64b3a882e4274b1ac2da85d887dd053f900d4e7f846e3c2cb6a49c987f95e086c7eeb484640219a5438b3dbdcd6920dc9759aa00d6192974a5a3462612a5a4d7a008fec50c69ee09f15472d266d27531d8e3251c730d1083d4e84687db0879f5c3c873ac28c737626ec011334c0173f9c2073c74461d6bc6b427855b635a8b89a4e7512ff61f4d3597e6b6c87f0ac3f13d24270ed45b43326138728339bb87aa5d22ecb9c794a3573f0ddb7ffc4aa228edfa8cda4f58dcb6541ef7c67979ae41424856f220bede2f62974fba3cff57abbdcee3619c5997af19c8e18b7bfa673f6c55d998c3bf178c6ffdeaf103f4838621152e2a9b1468fd5e33c9eeb20cf9a5d74c863eaaa171928622fceb8bff5c7d6079a987e915ff181844177e70a9e19f0c7c306c79173c7a88b7f0ee8af386313f74da612058b8fa8adc80928a1e399e76e3428d35ddf9327d85d672408db3a2e4ef46a9f35fb26abf1d0bd37d1e06748d253189de1a1f998b6c0559d6fbef6b0d45f6c1cd2f83c76e17a4ea3927d0a99e9220dde62fb8743393418895701772851fa3e3a835c11e620980f14bfa25ea5c9f99495d868c7b723cc369ba6dd0601f4bc4b0f1461bb528aa89b29b1ea7cfd5e135371fdcd6f7b88800626b3bf3436a35bd60495d934d8d14dca4b14925772ddb65943166ca7915af4af13c92cb29f6b436c6d0281c03d4642b97752e9b94a7e2dda9df63ed38a2551567dff63f3060e3d69b3070476de1f7576bf32b1b13ab83207d40dc7b36d7516cd9b3697ca5b2883843613802abdc0d90868e1f890d62b7ad68f94fcffeaac2ff4be8cc36f8ca30aa2eb5320a4c0b1910f5300b0d94358579576313ceef6641a1a50c87f6897e351d0c77085887dd4bcd8ca0e8e6625a5b440193cea4a775c710600345bdfb3a57a2fa605c8674eeed66ad448da2355a3ae45049c392966ab9404ea577811d1cf19fb02c585e715ed4ba14d4fd76fc2bd2148507a0cdba80833dcf954b19957c7476709e202744dc0a629a5e0fff3783af742dc9989031fdc68d6b6b2da840205fa6a3df5c91f473193e99420a164209c4ea5482f595f1a3582cee2ccf85132d38d20de8254df95e2943be359bd7037c54a9f9ff9b8d82122100ca029d4330b35b7d94b7139d02fdb9644750a8fca3635ab1e4f37459bb6aa415a40fe6587c97eb7616df1529d903d5abd0be060976876dfd8427074adec1adc338732f8af5c4014ffe681f74b6639d6564cfbbc17de87b837d4185d1b7142e6daa763616cf6a3505a2b665ca7ce77d11a3c603d82a69bb12a31148ed72be9b37494bbd34f62d0768f9200ed5cfcdcfec12325db82be0b81a4503e351b60bf67f14f4efc972448f5e555d18779f3e261bf3cc4ab3a19393507fc621e462d1668966bc2e5943dde245619c004f0da6fd210b36c3ffebf782712fb6bdd104eb0c5357099ae152093f1d565213f40f9949421dd7372f6ce714908742451e2c457d89c138218589f04695604846e032073347bf37e5ad1960bba51c739347000d009692db2ab6d5756bb3253a0b4c366912892bb72f258636447777e264add8906dc6236f0b12d5ea5404d2936088b50432389a2ef139511daf3f83993d5a29e324ada64c81b2bf9c05184c062a62ab4f4b026c58f6716220340f821d16c46133354a30ac52aaabddade0bd3547b78561cc0098d0a7cd667ec6bda0dc27032eca4d3080d7d74bab1abe583e14715ef6feff6749d7d617c3fffc1b3d0300f9ff9ba55870066db410c5ff0550430d87a958aa66ea714b07949481b2cdfc9a9539a97351237748b454a753fb345d490e289ee1ebdbf2311e9118fb204063470c8ee27ad3d409f990cb4e0320a9733cbd109e1b17f6022c11dd523fc582f23de2400e2c6a250e537a58a8040e536900b4d4dd2f4e13870b06ee1533291bdd6c243f6d2173f2842d171a6119cfa36d329cbaa3122c012830f0dcdf354b0340b2c6846ba3f92a3695a16f7102ab9981673f978ec6eb05d7151fb2fd0f6388501683bcc15850ee7b25e6425a34701a3334cf098e3c7a7e86e3f6946dc93c76b629ba0ed2dfcc31bc3538e87fcd09de72157c049dea62e729463b2e9a649c9682a7369366e87d0e1349f15b346af09738733b0bde72c11518d4359765c4a4953e583f5c042698da2511e78d2dbbf717ac2cf52a431c37df27283d104e9bba17512841a247b973a4e1f99042903b548f113f867c43cae535acb30b740550c3f84450aa5e334a1d1605ea4fc821bac1f350525645944ad281a3fcf98cff4983d84420afd99ab4c153f7b49819b1beb8124c074c5ff2b55d25acc594c6005d8e5f16995b106d2428bc187ac6464d63838fe251d1b014f318ae2ffe69bf673d3a24a7206d1e4e784e45758eb26892cb2959c3702890b44913a118b9edc442562790efd00b499bc1d06f5d8b941609987ed8693c15363e03e67f2b5c2e84851ef64149311d2ed5393b36d97063fc9e67c7d3c96b2bbee2fc7a02260237d0c04f64fc97e985d829552b03e3dc176cb5de7a4a6b2c3e87c1c7f9119f79c1372ec3a847bced65e7b658d1c40b8ee12d0550e0be11205a06c85066b0f2b1094007a2b9c58dd934afea310662f968b7dbbd31cca05c56a3c370f08cb7a3d6852bb0edd2689f1ac9eeaf8b2bb294db9e00b14aea626328247be010d90b069787f4b5a499378d0bcbc82c8cc06205198a217988863e75323e0e7077344b1db2c64b59ae4093d4302a750f073f222941c7af18e89c1ce85266c25c51b8a29e4b8d2e0372bf36dd6565e9f8fc1dc6a3fb8c40fc1b7f5673351be79c73e23508e6ccf11a7f187298cebcf8938e174bba1251db7bcb8a16b8415438bda960b8e8a59280ce7e65ee2116025bda17dbcec46a6369ad897fd16065b5df1405a1a79ffcdb4fe1ce85d19e74835048a4891b57c3d7aa54dc3182bd10cf904f0b73b049a59a79072859f6ea3038ec090a5b11a77fddf9ca0f6adc201a41c8167ad364b2f6df97729893f42270955314ed8a7a06798c3c4f6a17a00c62f47ce010ad3d6778e495efda1cf96c53f7aa69b5662627e0298f4c2e6ad72c418e1664ec64bef649e33f96ada2819920893e84c23de5cf78e95c9301d02e7008496314d91a3ed8c8d34e019831c4d1b759420083df8696d9faf96f93c60efe5d84c82f1d9c5ee931e1b43609afb4688c3e982ef6ff5f0620431a900b3537fe280d06ff744748bcf64057b6b048a3e85f595b399da33b44ed33bc3731e117cd6864ca264abdbc886f30b16f258165e52fcf1eadddabbd359355cc061cf7e90b1cc4b0be1339fe604336326278b06df3ba021929df23cc016ef3671915a8b3dc0961e9decc9b469341436fb4d640ea9fd571b314f57658e08a8ecc618dbc849a62937b171c13076b1cccffb99baf69a3616abedd7630b3f18cda8418ab2e0faa7098cc53d058a0e79f0c9dc475a77164ad28d240e263458c88e7dbeb691011194e300107ce3855bacb5c3616b5abdbc691ede550e11cc5b06acb9799c5f3ba665396ed09549fe51600532ed5f37127136f90ffd16683dc5d7f4dd061a16cac773e460b5e6b50d8f7c0a9e852073e32ca9441b27e25b9f6a2c31069e949d66ff82119a4d95d0c3c52fddb4020f12dce74b2a5eb83049c3f2d9970b470b42045f8723a0a9f26dc98acb684630d393766230d0742d6c722e6a6e97264525a5dc27101ecb7a8628ad2e3aef804583b03003f6d144c35e95d97eb48a680365f7822e743eb79eab7f7ff65ec5a37fcc7e291f258bcbe7b32bc9821f44529caaa88fcdb0e69d83e5d80cbe4fc3385a87eed0ca0b6d6f672b0b409f1a186dd00ca8b410c1d59899fc1175ceb16426d226ab5f45acc8662c5ea477d54202877531f5fbb71202eb7b96c23d0a1cd47e0a24abb83c0ffa5c7f5452557cf54461d6554d3941468aa027a4463123793b20ebd4b008650606fa554d33566a37ab7cd2dd8f94c451ae5e57e340a765c73083542fc2513285ebb5d6933894ce0f67f8d7b9022cbe23edf96e2ad8bbdef0285874def8ba85e2a98ad12f9b68f1b558747d01d20c3d133683bd70243b3d32efa773491262a1e0b965113e3007789c2d3148ff0dd8b301f3f3e02469637aa8635928a4a2e18f97596fedf41375b2f1715e6f4b03a944b4c676e67ed848612ea2ffc17709ddc017cacc8d134e92b4e4ddc1accfd84dd7729cf2f75b5836ccbfa75aa8f069dc158f6b909a0eadee336ec5deecfeaf2789859db22396ede6c5c77c47765be1855543dd11a79cf651ce870b76528ce85144008288e06b0faafb163c4b35cd0b3540047204c68f728ebe749ac0bdf7a48e38e0af2feec45a385975ddc752a24043cca4811e5b84878c5f27bb26d64a0d406e6571bf7a61bda4efa821d45f0d1b264281a9d38e5c36405ba7a8a7ffaf118094838a95652f894d8d92ca8c5a53903bfd61c440c37b0361a6ad1aa59451beb95e91b1cd85bc2afe7515d59d93334c8c9a8a943a3259d70a48232322920db97a8b70d55e9def5ed23618ecb0deee0527a644ab9ac1fcdf746509b04eef697a72a6d64989546ba77e1541faf8d25dbe679859ea243470607b47b91d8b8764743a9692472743c0086600987fb121712894ca2228712f6be734b930d0d45072132d3fc5f929c1300283e54aef6f0cfad838719da9981980673b585b641a7a0dfafc3da2f757f4221b794c3290d0a9cdb108307b1023b2a533988f63683440d13319f9b01fd7a661300b46f6a5dd0da50e2a0d1cf24e853da599d307beaee9afea413c15989e275bf43514cebd22aa4922ee12b5049b458ecc58fee9ad48bf70975b72209b0dd535bcc5e3af47206cfa44ac95c0159ae29d51073ed5dbd7bcbedd239cb6409a30a09ab84cceefe365559ad7b7d286c1edaf9dbd7c38d267b030e5471c60364631e4ab5363014a43f4c8fce6b49f1a4be5a96316134e24e010985f6c2ba65f8b0b245452fb8430c2549011d7f137b8828ad59dded2526462c06f500ada3497f0ee145923766d3a9bc210faeb36f8e76868278d34aa4213c768ffd0d4b0e3da19c070bcc490074cc3a004b99930b45a5e86d0786204d0e14f98d0bf96a2808b96f919c1f8f3108c9bf345169967756de10bb3eedafe83bb783dfb76ef9492af098283750df0bf6665853d1ed6a3d58569cbc9b263d870454500658a5b336273fb097d6322e8a72f6f549f2f0046837de558ff7d5206abfa40c6af091caa057d42201053f51b2fadb09874be4011de50267ad6e2c09452b7e8a8b13fa49371fd1b9197e7172f93cb5bf1da0f036cb3ba18d4f571c4d4d04e0fa89e55c2d4131d44738a9d705938c1712a5a67bfc3073fc628cb576661b5c5f07e7b6f3b4ef6d462080511cd50c38205aca8e6bc3aba8a122b84c3fb0e959f6c35ffcb24d475b28525f3ef98f79f17ed53eb0d5cfe8c1e84685845206e8cec1a13430d3265d61e8f301676d63cfdbebba8882d402023aac2573e3439bbf7a4bca368b7eeed02cb1404052082bf7cd9a83d4a03aeca0042217cabc0db7f244056082e7b554531d7d80bde8c41fddae52941ca19a88a8999f81112127e6c5131ea1667fe8a34504f7cb61dcffd19e87fdbc9118a44c7cc1ff48ea57cf21ca6d2e434934870a2a2182bcb317b9588c00b3a6a740a1ca7336e6104d8195684515497453153ba09147b5da2a8ffdfd9ec718498fae1d6c497e6b93a06ef38ec5f73c5a1428fbf7637008c1031318b0791a14b07c828fd29cdef8548ba116b3944344194308f1be654ce21e9b35553bae8214974a237e06be264039720fefb19c9829231fdab79ad8304406c1d89cf73e526fd824a5b7c06295247bb9198556b28359c3437212157224f9638320256d7a22af565c7fc96bd414159fcbbd4eb0393eb044fec48a0a0d20874328e160f9dd6b0142b52976df9a4184cc3d2d780ea23eae8c080455d36523cf5c03dbeea07373a772e170cd45b3ed5b192fa817c94136d9fedc9f9f12c55c23ad28014a8ec574d17b0d527d318b3cf359bf2ea0f60ab4e9d3534c60efa64da654a56f50804b98f38944c608e532c4a0b916f9ec673fb0bfcabbd7973a2710da0c40d045de37078a94355079f683ebe80fb276dd8ecf18f27ecc67219bf75f1a1554db6ca1f724d458e292d71aaea1ed3cc1943064c3eacf2385c3d7d82a0fc469690d7b160fc6b6d8c013a6f20edbffee4447be44c3dcd9b6346c8d4be217cd10edad9b1165eee5398870d5ac924ad4914ad453d12cee6487fe2f4959203a25db365a6d9f05957ddc74606b180b0a8111d6a2aa8b124768d5b1bbf78f9f36c55456236f4d0c55e8134b4c2e4c6acb76a935f8d65dce2f5856c3313917382d9b38ac338a229fb34bcad923d264b5a9c4e02c44b00759303092e3844ab9b13a946868bc4b265cf6f6b0df3f00fe23b33a677e900a2430c5c043541dddae6d3b405b220dd88b7703c5bdb34fd49d9f444f275c3774dc8d8c3bb606b7cd4af53cac59bfa1865ab7fe6cb301a8873e1c0553c4461998c1de07464d08762f7edd30d31bcee0acf89523db384483323100a066c80d2d41f49c4e0b4ecff0622f5b3bc55fc09241dd05f067f0f37d0c9d99a89c07386c7bfa20aa546e1505bc2e0d1b8edc6c59c86f9af10eb672e39157c61027e1eedc218e126aabc8a5bec455052c85b06a5b8b4f03c74dda722cec68a38ec741956270a612273b4a854532deb8395ff99cad4f9c7709302fca89e0ef01d95064d86fb84d4405dbc53c11283127018618fd3c558ce148bd86b4204867f32453cf03bc3882cd67753ac905b9fd2042df5b8b01216a3945a9a81c1f06a16163c305b7237bf80638baf0f7baf01c525610888f144943d7c7795f7a21937631202269aba9c734460b07d2c30c61aa803b29f6eaa1531d71ba0603758b855039dfb796b18a2a8eeb69e2235148b39b87385b69a0f5dc8ee5a2c97383922197f68c4e0f619e55bc37a769d344724277d0299c7c16e4f0e099cc2e41b50743a9856b1e4eadaa40034cee8bd208262dd89b155caf17d2f49601f916c7fcfe5b8a14b41e5e477f52e0c8b31fb22a9dc25934558b0a7ee631ffdcfdc46fa517cb92a29ac663b2232c80e57d619b50a96ca1b42b00948257249a8b489c02df96f6b2da16682bb51e416e2f164ec75bdf2f0e0a37b2b1dfc27caf46b770a6d02db046769be1ee04166aeae2c52102e22dadd51e43d4c38da0e5c0083b371abf97ced01a48d1c16c0abe29d4c962bd5804c67ced1c6e0bed0e281342278487f3067c1d6abf6fe252e066b218c317e4aff86655320809077c69699a58785621947d48dddb2726601c019b858c2f9754c6f80f51f83532bbea62088d887502bf32041dda2f077095b9dac1a52527346caa1fabea0a2140843a82603f59fa3365f285d46e7bb49b55d996985db3d22ec665e8a3055f32e3df1c84a4d7191ec3934650595d42e6a8e7c936d4106b04b2086ced1e849f18529ebcad834235b8f3192bcc22f4059f0d083769236be7729dbbc810a92d0e63fbb3a20e1b8b6a7d108168427c3f234ea1a4165587087cbe1c87a38ef2ea8212516811c69bf2d1e87c0987cad786870875dbc10cbe70d677d695e4d68870c82f1951da9b15f3bff35c3bd307066cc206d8e4ee185bb0ce5d0e0358add5690923b18f3d5c5287316eb2b740beb81500cf5f8396515e0a4870c98e4d4a2a9fe469cea8830960f73cf0530be491199b5a6c57f6a2bbdbdea616ee4115ff53bd830baaf0bda1abfcbf4e223f1ef795bb6d7c0e16a429ccf96512d23ca022cfa3332bd558e1daa3791b7eafca26371b9c9012b2cbe6999dbe0c4feaa5b9204d9fbd2290b1b05ffcc7a4e5a7207396252f548b9f9094d555a655c5466cce678422e331d5b779de57d14732bccca96c1a83f0ddcd09a6ae3280d0f053bd8862d564bd613cb0562b328f27fb71a7cbf4177b723a82044b73780a5b82f917164dd326744117904070a2b1859276cd9fe367b62dbd075052fb3f8a50d6ac5f3e019510de0c83a9ad7be84d6ad449b94c3c369daa641d4063971fb7fa377597396ea2d450410fadadf2f801d2eb1c9f2b55484519bdda80d579f4bb9681541552db38904f4b54986ad0f0f145d2105982c760ea0bae7886f4fd6a5a355b29550305b894bd3a6a2730d457fc9a215acb8ecf0a67986a62f99b894997b835ce0809f6c220ac39b6f42b9c6f1db35181d4fbad93f23af8de33382bdf1b54a7a9efea55c66e7341a6a4a8666a586da5f835b8ca6aa049e5b4a5dc2408dfcf02310c2b8859e837156c74dd668763a2a9f167081482cdb488446065ffaa612fc72defb40d524e897305cdb5e25aa87d7d4c7d28535d849fb4ac2ef53218e4d25f6aca715a36ad636146c136d86b9c59625fcefb68d76fbc52ddcd87fed91b25133c5355779cda29663a31344bd2dd08ac6e5e86b1864f1895430918c32455789c4d5553ab67e17c611e3ce7a10c248e9dd7b187324cfccc1c4fbef1b260229b8cbb2af29f9ff16933396270e346d6288548ce9a337e856038df92c62a758d09f7a0bc16b42056426f9b44ef3770b60ebd75dd31cb6c21b0282b2e744a285c1942eca16baf14960825d9a05df763d6cd1ac6817235a954725aa4aba867a80ba27ee594467ca490645c1bb7a636ea5610de727464f78b2244a3047a493a320442311f74cecc8f0bb43de72f3c4efaa0cd3d5c0de2368e3f86e8282732af4399842b3903a0f1a5e0b63baeaee180ed9df5a3596debd2d31905838abe43aae52bad46214fb071f0f17d51ce3a7d6e97fa65174d230011af39e01f1cdd314f32eb8f59ae5dbbe12177b62da7885410771d582c32c63d9eff55860fff330ba6634ad0d143aacb26ade5463a1a7db755d752c6b181048a429c303f4410e73ace335163aef30ba1fa565ac95b79ca0a1733a88e8c19c65eca1958654e700f2c4bc091839432660e80d0182a4fec41eda8199e32ad600e7513545349c3405c039c851f53d52e23d0de3027b02caad106409f08c06a620092d8f6cf37e0c779e4a76896627d16170dfc6efe266d8acca0e86a9a1cbe94f92ab86aceccb32bc148aa2fc421aa5420dbe28df8a748b5042888af707d607ec414248b16063036e0c0c954407c3642abaa66ddfc4a24d4a4943f9c2108bf10d024dae73a189ed4358627dc0279cd6543b3ad44be3f70094176772461fa7f90ff92529e7735307d8516f46c6f59cdb167160545c90d5deb26d5f685b7d9d30a160c1f136cd51e1484929251aa02094a26e3b136125c09ec6b341573b06f89555132b00d161de2b45b55c32699b39540e4ffb46ec23d6a84dd582038495696471623c58f560c9753a5451cc53ea3a33432dc185ad4a161bfe858d616727b1554a155f328a4c35d7386bed0ac2b5cddaad8c656c12dad70cd0836532c340a86236206788ce8f706db46a5fb1b57c24ecf6285d1ffda7739e32c337203f0d365f0d662573fe463d888501dbf846dd01c298205735ca78005bee11cdbbdba69a2fccbdb622471632145caee7a434764c7fd71f0f091892c4f38b2151e2a2896c20853f8b651da15c97748483f73f9047c3731d342e3daaa24dba9f09f28549029fa81a800e7b04cbc96ebf2428ff8730433094f8b55b448442039dacd3aa1d3315e1fee56b8e9a47997950b3056922597d8351c0b420611053364d847b3c8c8f2f7867eeba94984d7a5021cc742625787e6b67b3c68c62139aefc2b432b00be162837538262f04175385ff078962c0c61021de47bd7cf3318f5da86fcc26b5449c65851645c901bd615cfa489433e1bd717c7bb12710c796904cf522835bc479500b0f839c3efab2f56d3c1d8fee26d64c12e0f2fca2d5352a644054c73ce27897fdd54627bb5552135ce15935f2a3493b09b8a4ba487474fa42eed0c56f604263d9771b60e37fce5d6a4b362dfcd68015c81f52a87dbf750c4211a1711f7a99cc1cf15bedb22a47ef726dd1fc87825cec835d9f822daea35a354952f855340663e8f9c4fb39789cf016cd07cb9180b93f8f3d6aa60042330d77e09748f2df2452ac63e988efdd60b5a37dbceefafff30926fd534794a8d446a6a1aaa106f8a165c81d526ecc211b9db00177824009cc109c8790e653d0917648608ef0f79ebaf70da3d9f7b72b2b086a00e16e3afd9af37b3c4ded092b21a2f1c2ed022fa154cbff0b38e788a9eb4b7ab8be7e93063e8aa4c791db7bc2c5d03e362f94505a83bb2967fd084b6246a9af74a2c59958ecb9cdaefe2ca467a079bfc97c55f5b463e1931c9b61e6703d6a41e2ed96c529d311439235f3f6a4e3bc19439477cd1ef7ef8c351b524cff31bd479d0ba93d14c850df571aaf86a5a6c5f511c60b8b1cc746dc1ac46357b6a6474eb356a4e274ac599193b4badf57e465ae6b3e83a19ad30edcf46634377c7fe66bcebca5f0369c52a0672d89e8b715a122ef0a7119e456265acdf1195a62936617aa451ba51ff46ccca73429a953e5f5a39c22424d8f29b16426ad19c0f9e56414675f68f26808c38ae82ed81573903090f9a7aa39c00050f024a169c6e5c5da8f55ded27248d844c456d11b4cd602e1d86a9ee8d9f7b96ba43bf913845139bbebfdac9074f9d1ea8f8e99616dca64974aed5252358cbfc12c2e925bb0e3fcf98fe2e8c75feafac8818252d68ca021d6be39fd3a97f44dad5ef98dd2dbf88cbf91051d805c97284ef5a11cf6b7bd66e5e9f5c836d129529391d52e1866a61ec4cfc3f43e641975b36e15a422bbca3623bdc29412602a34bea6fface498fdc3f1970fd0bdf0be57fa615b0e295d98e09b29ba758cbb60d9f681ae77b64dda66e59835b97ed9bc64b9034d38a90161b732875bbfa3c811f72562c2ff6f6d97ad25a3a83a14841ed1873d2a74475e1131f32a0061fe8242bd2f15e623f54d2dc0093633399635cba468dbb2a85ee0f2a38a6b587ae1a73b4ecd115e454e922f9e11085942dfc1e472a9feef35340669d3748ef9df60947720e7680e2b46543d768795681c80e73df22b6518877aa821700ec6aa787f7ede104815a7b7fcb3bb110b4c14d1a612c61478e6456b992b0530673e6e73aea30865ea14bcd5841570499c88e7edbfb98fb9b73c0d29929a428498186333b202f66d4b5a8f7c16e13546dc9c3e9157e97412252c0d1aec8331b26d4988aec6258a832ebf3b45851f61ac7473cbb74239779928a5af76408df001775d3368aff008e5c711349a443f8a4cdc4af00fc5b51a1fd43c3947687bbd341ff2c6e61784e432e1ae8df0c32648c1bfb16fde77783f041439f35afdb680f02c38ce3271d7bef011e4d5c78a94522b5396a2abd930e4fac6cf04f4944a9382ab7be6a0707f44cdcb61751756ecfdc605cc53a5f1f49ed6543939e06dac1f2428a371149d8ce9d57172d63d0c1017c24ad2dee751586ac83ade39f4d4d7f9918967eee5a384b29deb3c571ac4347617e7da0b0ac980e05c70e4d42074622037345898f92b6af97d2269d80b6a91fc276f2009afa5034deb15eb006e57a10452f818fee3aa27843c485f9c53eced32335aa213ed4e235c44bd51fba09edc5f75d8ec22f35aba2709c5e1fe7fe0e9e5b11490b44ef15e79e693f48659a12c26709c5a5e00ac05f5bf5c73e620169ececf7342b62da0d48681699d66088ebd1c671a2fb05e5cb968e1b525f8e22dd5c465c8551f5a2543796840a662f71466fa56190c9a0454b9d0cdcf1d71d7282faea03e463fd22a2ceb9c6ed566a390c0ea60fd2d0b35efd3905290b12cafd3b35e7c9fb544cc05dcbba94315482c0d12d3b23402806bc9acd16965db067b29ddd40e13b04b9fb17c63c6b6d5902f1b8486015304bbdba625edd7f9d65bb5cf4871d2e7e9539d7b8c7a31f322b457449a39c45b472db82d08c03d48144396cb1a70084f15624eb97f59d16045b6d797d43ed6d27258ec9df6c721b7efa7b436fccee9ca2c5d0ecd24aa93f3d5fe2cfe49c193dc9a3d47b9dd768a998f3cbe4eaa1b60141a4935565de66876cc569673877293344366a4e41980f01a9dfb5e4ef061cbbae3c0ba5e71dbc3ed5b7368a0dee8d08c7a5090f295a4ac337fe30920c053c3eb97c5c2ccfdd1ead7d3dfafe80bac560000671b4474d7d202fb1e0eb633735ca41cff84e3842fe18974a1786b2984e6167406c556bdde6915019f39ec976ca64e81c54030fb66b736e8b5c9b98aef23930034c11e2d1ec06a17f3ecbb6b2f7357138eec0f01fe0f55ac78ab63639096c40566a437f70129e25b0b39d8471f1632163f30f92ec458baa109aa524163a6e975b4f304a2a3491e116a5fce3ac20cc084004ca7867979000eaa747741c7609dc94ffda1275c45602a1753837fee03de28075c069476c36aec382f71849e32370eca74da204a810a3814e5e2082e4e94ca5dd75ac47de6027750deb8dbb5b57ee7e66bd97e1fb560bb6276cf79b4df339be40263eac668d7645daf12cfb2008026ead9999ad32f1a6c3d53f2515c7efa48e64dc362a158dcf70753fa5daf11f95ba4ed5368c4f50aadbc348325ed131282ecbec547f00b4a87c2a3961b2294601b45be0b976428b6414943249a9238ba8e4fac70087693e42f85c5e57cc9920eae6ab9aa8fe6e4d3cc26236b4c3a5d6d242cfb207a7fbdd398f0203c46909547ad9edf9978b566fbe23ddacbf778e1bae5b2d21f9576768ae8ce0f7b9e2782ce3982c7e0864603176fbe2e445007db2c7ecc6d2141468f705bd4817bdb3a86e8fe32e3a8b5c05163af6a27e631cf49141da552d9832dd0f9dac05cf89ae3e54e96fed5bce6c1b251e626a1eff8893b053d219724b0e56e48be341c5b3d7983b45011fe2b8267b896ec032e785869ae119c4e2ba56f99bdf72567164195e2c10df7556a56dd817d3d79ea078aa40673cdeb85b8f28043a5c9413151518fb78227c5078a3ec48934d599992bd8a5ef6e7a33f2744c276cc927ae77b4d80f55b6a6ddd291ac69f41f7a9ea1aa77919e83afcbc3e3a343a85974edb18f48ae53e14c1b1c8ef1fc7adffa6aa6ab0535a7bee09f1af0f246724a63ccdf7330f712d360c6850b7551df2bd7b25004b3f41f27c35cf1bccaf1d41d459bb368d33e28c52f3d54b7ecd8567f8abc6c1dc681b5be122db86d6ae89919cc5326640cea5136943e0741c0485edcbba7d5ee095401ebaeb255ab18719b48ca89695c8dd01f31e71ac252764db6b4794b162593af87930f8f85eccd69e379e2d1b16f6357e770df4f7cf0342650100ca85246637cc4cfe2c482cbc9f99fa78d922eb7a3bdcdd21bda109cd635ad99b0600d8973108ce6d28fd826369aed78a844bf605db391a23869cf652de2fa994b623a54e72edae76efbb433a3d7dd975782c9caafb64a449becdc57a39b487a7427cf3ca11188eec29c49d87c219ccb802b237748704b82ad350f852d4f462925c4bb474701491368ee00a448661b9a9193e22c63b6ca26b15b7ca26884cbcdb085839a76e926afcea580b78ae7e09c53e1bb34e45e9575d071cc328bd25eeba77f1fdd621b0e0f3f78113b9ffb13b3ed97a12d55eeaee2c07dcbc696f24f776f40b65dd21f8076709b6803c85fd9146e520648d42d3b61c04dd10f1695fb54d880a2568a246645cf8a14271960195c613a473c8beeb352d10313ebe4826c3d4d01f82c5d98600a82a8d6322d5ec34ba8bc6a085bf77e747a7c11c3aec74877dedc5e56c355c9e9314d43a408c34ef03710acaa06de65b4eee2f005c2971b8e75e3fd7d761645c6aab20d29091ef8637c0d91318b757892a8570f6cd66da596de70143838933d85ce08fb3f246c11058a2948b620bf2094c6628df6355807c118aa2b9bb78cd3b0b9b7366fe7ea13acc786cf2646b4f0b059bec967a16a66837fe9216498f0a749df2b423dfe0633b229fef2c3f98619001db3e0a228caf9b8805b7e4d7072992817ef2399b17b3cd5660be3749f3347f078df931589a6ca956ed97c84c7098a3ec0d9b613c22b22ee095134c9ec21b0648f25992c4afaa90d1c2f2a9f75da1975083d76a41b0c339224437429066aada2d478dc338f3b83b581e2833bc5b0dd17b6ed78bf4774802909b6baf1b614f2629dfb93dd46b7d94950f3fd923c22963b2fa30dff105e7996a7e8cb3aa108df609556b4a7090d6549c33d63deaf3956fb6a25382de77276fd98c1109bda97c56164b33c168ead36dddae5a5c1d9c2db94f3f558ddb9c645a7255d1136085fd043e5b2cee39b4c7ebca0aac366356752208f3c6f82505374cca1327f68ab18f81499d8f44fa923979cbb8cb899156c134761398a708dfdb229b95bc4a34d3002909777120fb74b78fc3f1a1bda78773ca8093c733eeea4327e74d45ac9c2c13656b3939a4717ec516a59814e1f2781db1ef1c38740d20776c490ccbdb937ba66b1a6da3b74275dd2da4ac1e04965f706ddb6aa5c306b13571c3863eeb5b3e4a0a0d90ebf001352394484df443ccf70fc41508a85d7d0f330563f3d3e48881978d7287531fc9e85d619db1101ffeec0fb0840a1eb5131f1a135fb5cdf427d38dc473da966c2741aada829279e91e02016a443399baba1b6cef806110c5566fbd4209040dcf80ead3820c372de0df3f91df5b381d983423c252f0eeaff4cf79acc45d415182040d4d5d358b3949cdcf3277c92234fb0a8eee1e44a32899e000d20e21e60e4b79a35e096762a30a1356d697c22a33f6cf3ab31ada12598326b8bcba0a999d1461e91782dcec4608b7fadb3b3b4946478ab1d7d433362432f87c7a2d590525f9ffa748a4e4df5034f2837aec1c50613022e649761064aea73ce9e35e05a0577b753c86ee053b874824b0fe42028e530b2282a59bdd58bd553343d7884f56185936c4620cb5e245dbc353d8ca43eca503f99faf76aa8b236f1f2c93ed63a8975eacf4942faa56dd3c50f14c700524af3cbe4d8add78a0a08f1070069b0dd9f3dc69a00533ed0c854d71e45f576200163480bb198d3def6d0f08eca6cf65835c47e8b395e076b23e938e663a4e5b9640b3b9253e233b2b0af46ce6a9c724f027d2c21735bb09f6120e12799af5c343d19eea2e18a9fa0818bbaf84f899253bd7169380b9d2d13a9c2ba99326d2aa674b8bd2cb6b31b4aa75ae6d254df3404bc65fc5c1dfce912e20c5f5e901ea1951395ef8650deae112a4aa7c39b45529b508e896da4e74f315fd3d3c145e83cd0837187ee268423d45c8f08676811a3d1658169a8d230ebacb2e535a335306c965ebc3ae364bf86e05aab431e2f1f251984c8586c8b2e32fcd9f2761822bf705696f4dbb503c860f1daf0c389e347806823bcd447e937114b0e474b1759b75a683445cdc2818e6612717cf2748090d4d385ae1a99475a8773e2c1f88ecdd0ac014105f834d9d9e04e347ed231160b503c7ef369655e1a2d8c290029c838c737d2752c997ec4cde557d857dd9d99e3f159ffff7495d5b2f19a1f7ffab5d5313722cce28ff2148c908174b0fe9318538511dd8509c908e14271d169e6df124e06373dc2fd3be063d5c1d32509cfda0623c3cc0c99c9474c987c5c7d7d32baa4dafab44bdd82600646091f6113c06f4312251a722fc6764871db989abbbab616404a0013d969e5b5b3c953cfb7878556b71dc00e5d1342019a6d66cd0a460836400a2f5515789ee0943438ef859c1a3b252de4d111e86dd7acae2bb80326078018dbf06b72de78441df585505c5d4312212277de7185ca4e9cbd3881ea484d5d307b72266633b6eb87bb85d45ca2b5eac6ec0df056de0d5c0264b49987608b5c8fce647c9e2625d7bf8938d4f0c97239e24eb8705c55bd379f31cb21641cc9e23945df18d5d3d322966591b5bd5974f5a53047d46aa4a95ccddf480f0fdc15d1d3f90bc083f93fc1eb276f9710cfae5a3085b2a40112f6f189fb320b29333c32ebb912acbe009d530fc1b1c7f29c4794e0ee6d48f68f4cb92e3d5d961827273bba76acf41d9613d9c4fd9d1c2eb1e0e6f0a9b6e5e6a99fedb68e90d916f0db1fab24f31ec91f03783f341a74620eca1496027036a4548356d91ebc5c3e6b81757b407851abacc92ec96917485dd87a83a6c621133f78d9d905c4b9cc3b96e654cabb263b06b873c487db87998faff89772a6334d75e659292a0bff3d584627afda74cc0864ab356af3d0eb743e213805b2a01a9a34825e5202dbabc39d0d3a2a1587446ac417360f61fd3954c24f6433e3c42a82abe9a538dd4d3f0335acaf4437598964454deb0e0fed0e97c4d0679973c533978a9833b15b66f0cd872b77f084e7e01085996aac9a96afc9d5b69a7ac64e32462da5fe9116812a147f2d213db048dcd03650d686bd7daaf6f92a5f01220334c135d2052f5d8e7b87d6cb6f0cbb14cb0c20b3ad1e0f9bfe4170d62a57b1d27b9b98c7f1890de361a095a50f0f705a33198a470d188afc24d9e197d9dea16f71914994be052b8714a54fa95151180e3ec0027be84f5b69f13ec137b23a50f7dce4b3971d4100e5463bd04957e922cbdc058918b185b287936a292668859514a7f0432f2895107a306872ae7b682bc94e089363bbf0280582473a0f4cbea29cf84112b730e0527b9e2fe811a31e31b482ca1cd827c1a92e935dde0564d2e6abcb0042bce5e5168559a6d5e294a0e8585cae09e070850f20fc9bd60c3b25b6f3b1a979887e30a8793e5c92b5a8e0fb41e9b4fbb28a06230cb7482479b1b1e5b386628a31d7323286f1c4cfa6b99e7ff5f576a71327048684054e7a136563e13466a2a6adfbed7b45c560b1b364a10cd40d33970c1fbb4aea46b9adf74743b5724b209278c397eb6ea4f9a921258862c275acc81728034d2487a7d856499872abe46b19f929e5ea364fe74e2d23f7cbd83732f1ed5669d798459a28aa9c78c4ce98667caa9ecd526fe2fa671fd28f8c450e6170c4f37717db3c1d281011f2d71f5b4d2b14f85bdf30fc2d7cb5b36857ba45f22a46d45367e9bf94908eb7fb31799ca9efc39de181b86a89141715a3d9342eb8c8c345b6f8720d2779db4729e5f7444a5761e4067949113d640f33901e215a7323b84d9c89af6f814adabbb80116bcf1e3ad57c9194b58610531705180ecb0664c9bb1a6dc5ad2493c483a5191ad7a85f5b75a0463316ca5bc2de10cf62e6789680965f203663093917827aab385e84ac805e36ea440e66f2ec86be80de6fe6f91983f94b568990abba72d6c74c685af7b061abf6f13d88deda5ebfaa4a412e2f6ea9b3303ff97cfa5d6aff5c5418faa72f16c09d73bd35e2bdb80f2275836b41466365c06d626d5cbbbf5fda379879b359d240aeacf56ba25fd01632e636a01a4b945d9a4bd99c61541d0bd706524067d893a0999d173e10ab4d1b890c388bcb3e82574be2d980557368640068443e54a89fcd572ade4884dbcafe1edeb7003f85ee042515c123fb9f5b965d09d7ed36693a77f1e3ef37df747596657bc493e4febc321ad10bda50abbb5164169a0f5fdbdb56a9e9282dcd5c72ae9c179c36b55c48ac85fc82a334026530164885983bc12c160262ce62bf1b3a0be86463f0a330ec0474340205a433088cae0b154a4427cb7b91bfb6e93f9306e6a24c572a977122d2928c008f6be8240d1b46bc73f0258d0adc8dc09d434d8d0fd15b5f1e44ee6b00171cbfffb03ee4d63029e9da542b761d8fbb628f8036dcfc79754e8f08093495be48ecc38ec867626b23b64efad51c47cf672fa741bcec8ba7630f0ff4193a5f223366317d920d8bb137077f553aba2c479db9ab7cc8f1c64aa826e13b58637bfb5c12ef54ac71649a106c631367162a31ff9f8cc3541f1b032f24897a37e6cfcc97216a4fda5eae19329621ddcb0766d4880ec9ec1848ddd14ea3ceac7f48be876e11094b30f526a451f3e477a78ecbfde3155d0fbccfab60ea29d60977cbec7cb735d5a1bba8c39b5a43798ed9e7b356c79d59e10d81a20d64aa7d6d3e3671757af49dee2f5f5acc3b5718d59b5ab3a602fb3037bab8faae201f44d2dfb932b5fff4fcf04ab19ce837317b8dfeee8705f0843a1954aebdfe434d1451a184d5810bc812bc44fb581c25a6e73df19b02e80142dab4a1582f4edf0ed57f398f6d6004f3c7826fe1f3695791bec7b08825eb7b13568858bc63439cccd19ec3f3ba165b52912ec32cc8b62c20d06c5d7eff5b51174fdf43bcbb5144798be3b42f1f3f33baf87d03101f0b5d086ed94e71ccfee367846d574a44b9e70a2f0199533466396c6ab3c15890471b9488ff3040e4c8cbdbeb069c2c1b344d3058207424db1a581cee7796bc67855097ecb594d55e13196ec60c4d22889a7e9908fb81ec1441f1a187f47f070ad221a05c892f31a058097cf26e0e89d2bcc718fa0747fc53874df0d02cd4cc348a4b0921f56a80aae5a36d59bbb1c96cc79ba1603fe89f26083bde4efa9583c53b29d55e5c7c90a8fb11cda3c2f743dbb10cb182409651b7bb7ef31c604ae58ef76e8d356bb26621b679ed530c3912fb126760c63896b8cffabebc7ec5597553a74c38ea9b404478dae6f1db124cba54f62d96a091e0043116932f3801b3eaa0ad1e4087f9f23faffb3cc8eb32b70bfff715c92b7c2693160f0e1e14ce43e6e416406e118c6a3b64562d3f03446416ec99a3e535d7b5ea78f306dcfc61b5c1a10915f1b9f9e87d65227165aa6b2fe6ea672fb677083f78c96c162c503ad6c44fa762137059f33aeae6cfe91366b8f2dc940bf7504b80398ea21f0dec6e66a816343cb1e7922c7dcb5af7065d2a04164a8986ce33055b7ca634023e14537e08f5ac57e95a36fde5e384e40b0db2e20eaa577c53bf9e612f850dd85a2926dab6e4e934e3ce7312bb8824b16950a9ea14dfb9236b77d5d98b82793e0656ce60cd5ae4673b976cbb5d42a4be796fdd446a393ba0ac8c18e7628d456777241d473b22624d02baa0e48c080380a97096098e2c07baa0cbd8fd4c8f4cfd7f09dc4fcdaa6f2726598f29d949a2b61fc46a67794bdad359b36d9f9a01fb602f0de41155074b70551635c2e5cd3dd228c165722aec3b64325faea62d07dfce39b475e9277ebe1c54e85a002f08e4cd2fb71d1215a5a129335547d2bd57ae57651570f6e278cb0e06ec110503e7a9ce30b0197f6eadb69b59c859e5ce3df70b5d9f714d34e7b12335a7d8afad1f1c407ea5503ca7ec8b0e3874cc35f2267b81daa66d9a86ab253c677571aad0b37ba829f68f599eb5bea9a589089c445a13fbd93e026350d4426150063f568dbae0b714ddb3af76c71f0d1cdab772ad10e6255c268a44f147ee4fbbc55ea29e6da20acf1bfea4b7735de3791bc760ff5d69c1aa947ba4f28916252e4db4464c92265f33082f780a0223b374662d9f35087041c29e9eab28b8174222836421d5181dd78bb16dc91ce64a125a2a6542ce8ef93bf672ac04df71f34514b6ddb9b97185729b38d24edecd5f15754dad3972070779899817459df3d45f8c588fb582f6629447b3a1e66e2a2c89d044bc6fe49b019e106b5ae20fea61572d545c6bed49c4e49d622bb68ca4a4e2eb5be4d1fbd5d0e15cfa861fe926fb6dfb7689d3aea7e3e704bb3f90fdc17b4f57c157a5722a4dc19e0c444af974c612f9f9f9dca1e0b6490cddbcc301a44e5ca4f036ae5c966df1bb622d18c67741100190aa3d3cab5653141d00d93697787924b43ab7005c8f7a60d9e6a6c89e944801c3402151057d358a8a811981c74195f61d8f35fb3f0ab8e4f66524ac90195bf9308bb87268fb799ec8fc0597fe3e3b51bfb163b35b8868a9a463045c1eb04eb95c00deb2556b299bba6e2aa37147e88e2e457120a1f07da4d75d32e5b0031c6769a18912b9c3b90d5714c696d906a9b384a3838dc952d93ea3358ab9c56e547d9ec521413f3b23a6631ca0fc1ad6840897b91849dab6815108bd57df78023b948d4ec9c254d374202ec790f05f73d7f3829bf0f8b9ae183757b969471076101d22dac559629c8b63b36c2bff59c175a4afaf99b4d144b70624163ffe0c944ca14dc46d42797cd67d00b5637ad95767a9c4f72782b9573301d212361b7ba02f6c6f4519e0139446d40948db863c9b0a65f25fa1f4949a20c3f8b4a58d090f0dde744734b4c55f84c723fc0c40f6746183d4eb77ffb4334778d62e75756f89329f987cfd5e8f29e17e1163b65f5f2df13a9a92c568771ac930da4ba1e2def42c54b436f27bdedd7a302c1f5de8e11efbc5a0f8d35fa0fe1a40b40d5bc2757d377243bd9ca660b05f1195897ff73cf84d7e941435e7af6731a7d93658c6d64e201ec766a2e399153fec01ae85be1f2a7a216e6eb9a4a4f0e04622d065ea1cd72976efa4f226d833eaba61267c2a75bf7d01f9556de144a90b802d35654bab3361f87335f68bb3dadcbad2400a7460e3a9bd0ce9fead38a450fc8e317571db5a055212d8ccfb96c04b3c7591336838741134052d4b513a6d58bb909f73bc440d4468ada4f4d8af783fbe46f30f77428971d5026fd65c9e78490d31943e6bfbf530344b01747d280acaf711857be1c6a4c01781d2e257c2a55c4e7b30aa3b67762ec85159e251aad9d853f77f256476f985dfd6319fd33682210185ab2ddd27114e8c17de56a820982b58fbf7056280626db85007398306bcb3502da7af8154742ae6c3a640f56df9763a6096100fef00964401fd4d0c9f8bea30e550e73b79cb71332881dd4056dd31fee766dbd3d04d0a4a25ec57e03f88cf50dbda1a8316f413c89a5d0148fff999b13cfa2ea34080165aa2725b07d3a82bbf1fb6498bc860495a526c9ccc25c91a54d0fbd18f71bc8db06b22d3c9d9363886f1899636caaf6be60e83c70a6663ef9cbdfbc822b8fde02da862e213010fb514bf1fdc794dfc6b710a94cd8a8f169504c220bbf7c15f5c8a14504c1346926e775b421e432b8027e70f0f313a20c25c6077ae2e95147dfe81115bcdb6deeed50421e54dab7f044e13276ea6ce7dd599472089dc5b59dd905cc1e07962794b6f741470b13d5a104238c148dc88ca195dd3bd4ba4237ea064f11956e468b8162774f539044f1ae35f84992402aa9d02bf3c55d63211c8310a53349c3af7e106b2dca68be2c594bd6c35cfd92b400200b42bb80e52f402788f64757ff17edb543259606c850897ba6e061206ed04093ff2908b0a2fb2b34e2f939476584625e8a8460bcbadb2c3342322bc42cf5276637ad765386a65a626a174a8a247c8304c445f5dd928afc6ef018ed0c27f5a77bc85ccb5e316c3d646b2cbcad03959a10ee2c05517bf4163f3292a22a26e9f99a3a70898c695829c633571cd6df2a6d04389bd5aea25d2f1de5dedad644e9ea73eceb51602e330c304671e79e0774c39226fa0d51b8c313ccd28a4a172a52728a3fd8b04bfd02de948aa4a298b1876cbf99965ca15770004f1146d0f988f4669657fa8f0a4ef335e1e64327fa6d148d0c0e8069a701aead667197883a0641217ed386440c3d661c8e37058a54dbf559e7bbe8b2883231ee03d211e50da0c3ec506a628dacef9c0d7577e89d3db71eba26ead014adacdcc1fd928740a6b4f0465ec0ef214e6b1d8adc221aa26566e3f6a6fee9e573a5a7b2ed6707aee6bf172fbed3ef43a43615e98aa3fa508b5eac20999e79eefb3785ba81e595b3191e1149b143e7dff92de244c4c9c049589a09ab5d8f1bc5d6171d37f546eaaa783f8b1f733dcafb7cef2f99f88bf6d16585727b006170daecb910fcc4d426bb3eff19ae68e975a8da150786904e4cd5fc03b3d0719bd89d0b637fd0cf65d064be1a923ca6ba43865b9163c0337d5c71413d65efc87faaa38695b90811108c15bb9a76eb4bb5ab220ced1ba4b04578280e685326c843a45067f9a6ed5a7681693295b82e67326610c9b203966219e577b53e1f2d8ef3b540de729f1dea626e10e28c4f36addcc0849f297bc39677c4f5bbec7a69bcdcabc0c72f914424a1c40aef77249f8d597c9beef1fb6dde2ef81764ca5ece03f75f0502bd833691036fa9c014a1c9f039030a81eeb1403dc8a0a7f1b38f4cce55e15601d2c62d7637377a55ef449bc38e85b10aaba68ef4b5a2847c8427f6392373006ebfe94729015fc92b21e434fcb1019c84634b0b5355a6a0b3d611e43db2dd67ade7558f04b090dcc718a3f5621d9d43e6a1882dcc5c4f5283a78d214bdcf57a9bd5f12c1df172c64479833af608c1c410f6ee2196e6fb5d4a06a16bda8dd5a74b1bf6a934831e49060ee67b0b8ec74d0c338a7424b385d787536b4045b1c9f029c2ff1c54b4434efb9b73c2d1f13acf6042dbfb15252d73b97410d668fe5d855a18a1e6c5840a27506be8c002ce6fea03ec1eb806ed80eae6ff8da337a17eea40274b87dc62b10bc1f4508920897bf059ebda70728514ee94ec049669da168a3477db9a4f92930731788b5cd2fd2f345a63672a0083ab09b2d30362d21b1939cfa6a3f66bf7235557b243288854356fd162c01e06ddd596ec074f0abc64e404c485131aac87103ba2ee0c3fc11e0367482838ebc08d13167c8a3c1018f6ea44aeb14a8ac5e2b44f6845b315d6194ba8d3980b34c42b7230fbc6e7ac283cb31c916d2d0bcb6039c323d46ef9a2777b58a16fab7f4da18e7b5b02179165c681cf28b0cf2e1e9051f06d99e4c4f82d64a6e60c2443d8ebaec5e682245028e31bb603244d90b505509982d9a8469c9dd63964d07cc34dde31ef50f38dda547b345646ab9836e2f1e521f64b289e0573fff68c1b6393f69e3d132585f943194de0816eb9c02627452825125f3e860f5839fea2529ac0753fc65b8efe3ca669a8c3d90bc8e9b302d14fea69dffdea705bc0e8593ec21322163ac67063107e6ebce9bd3dd7b9291f75f3d71d3259d56a42e8894114be7068ab1371d5e21823e943ad751a2a02d52923d3c88d0c9e4ddf40b4dfe478377a0e47778ff2efdec2c0677936a467ea19741621cea6ecfa6a62804d9c284081e0674c2f092849c072df867e7b607277f3e421ce0720f57470244b296b507f35ce56735618eaf2364272f005070acfaa9bd2636edff75238d2b71ee2ea512d52db20ac2c0b9feea27fdfbef9d0e2ed1f18bbc00c448431d181526c6e4c80b5e6fc35f56f27a15abe7e0900caa549a0e4f81a443c64e2d7a252ea2a1c2441c60abcf89ad3de6511b6ce7e24e7d5c733107393f29d21a26ab08a953b67604692a0ddb7e7f42cf5e4d780009476d44aedfb3ab9f1ee4c390c753413ec1367c549bf0a9dbae9abfa32a03d979fd5f16e867510ba415cc93b4224ab97d914544fa5b0a7fae8454f535d6164f6bc32a7b19873680cc6e12b22c250cb21622d307b7aef5c8e967981209879ed0d4e9c0b195cdf021b767f1225b9bcf3fce929444ea99980720c571dd1e457a4731c5787d2cbe23215055a2a66e17d3122b4e6f488b5bbae5ad431a0aaa4cade6d1daedd98c01fc40673b414283b42eb0a9acd045de55d7996a5c123266bb559a4db84124f95ceb2e322fa47295b68cc9be7deacbd677c1d67d214bf9c71d7daac9648c7491e7c62e6f58c98164f6158a8aad82afa965d04dd5d3ca275291b1151b854eec7eaf11f95d0749ed3ef30cda28c57f3abaa564c5750ef216a6068658f416bdd247642e86912d3152beff8901d45167e60906b6622bd71f13b9d87f0de6b67835468f54149839aac1d55d34af029a5874079054d25e5d5aeff6ef3e6c139dd82d785624c05f680d1954e872aa846f35b4f0c266d04aec7476a3b3c5f56e95c68e1b3988d0bb55143ae3e358eabfa8b814005be172904bfc1fe12f132ae96353448aec1722bd2e76c9bd4ed98405f3931eddd25a1550999e8d71a86abba29d95e57f418a53095c49c5cbbe2a946d6d471e17ac99e78ac03c20a2dfb0414318c2b7b8933223ac39d17d398191582ae1e3c17af73a19a21056cbdeab8944f195c03d17f46fd3926e40aa78cb0a997cfdc6dce32a6c4139c01ed28722e5ae66d710df7eb97ed4595b8a186c3be330d1ccc19eaaa38f14ff032f22e3ae922ba5290484abef1f3d192e43ab57215e39cb8566b1ce545f1194b3ceaddcd5cf00708a4d0d909c2d92ed0e067703b90ccc5deede8b896b51eeaa857b2bb817093b2b5857f62559723bb30a591c14926e591e633591b336ba514c91ce7c5d7edc717e407366961b2a119b3267cb7c2eb21f246a5773a56c58d602f6e460b1b6155a184afe4119f5123a8b2ddef8e374712e14bb894a3680e5147a635ff42bf981f4996fc8f423aa85210449a472d235eb1716cf8cd73e8c0e94546b091ecd56771bb50eda2e337eee13f62bd9903df86254b45df1c3c1134f9e3f682142a14c4a9df0b0fb60f1934116610dd784c0f8f5da9bc78a8bd16fa20499500f71decce94908a37f1e3d9461340b654d63166029f6535f1fa55d4bcddbc90a961844ea30ae3c7a2202af7df49a0936f831f601bd553501f5dea71ea2b78e97d2ab4f77f224ba96fef2f3279f19ff1b4c0c654b8a2a82f373ca08ec42380d4fe83644f04a8bbdd0dae920e525a6c361f4205944c18e6091ef3383a45028216006f9874b50c6012d67551fa7f53dd3254ffac9b1a5838538e1cfebbad5e7b1ac371438c4e878b3ff312ad7773074f85c974d9c44bfb447b5aa94b219d28e04da7dff426f07acf1d6f653f09320f16a2aea49b970b8057649f1e537c9e1ca884aa76d27ad1f610735b1acd95972873c1af7c0b91a6446f820d275a127d60bc372f46fb527b493bdc78406838258892f25c36ed44b87d7ddf2927819a48766574247bfe1ee093274238cbfcf8072d695064f90d2f9941833b9a1910d4fc7e58d6a57d6e9e6f8ea472ae12fd59131c3572dae7467badf4f7834ffde0c6f8a36530fa861ddadda6d1abe24109888ca1ac9344368a4e3fbf50d20a4058921cb0e9204583ed10af633c49cc1c5b79128c4a82441ec018a58aba897703986d57cd895e8d75b65babea6ea375e96d590e3a69218586741aa91e6fe940f8b96c47afdeeb4005a06f25252979afb19d8ec73b4d61b6fcf3dffc80ec441e0bbec84e196c934a8ccabeb3c248a69ab59cfbf73dee01cc2ca39686c35cccd1c9263c0cecdaa819717eca8707deccf73b8b9a229c0546ba418a1ec9c1bc5514a7dc66c4a5ae16a3e65d991be2912623e1743253989895aa14fdc7102315e9b083cbcdd6ce96e4205e03615c276a7c8ea077eb1b2c0733757b1e577d9a7d2dbda14d4f4024ec7451e99a919aecc8f578e1fe4c1c0dd28080d34b51fd1baf548700b750420b21613f0cf0542a4ce7034d8aacc46bfccf242b3c29936a8dc5156200c8dedb5a7c55edd22d9e1078f0cc46757b8be193d02654e33795518e8baa21f3ce13313f3dd1ec549a77cfa59f15ae799a7e16eada80c8b996d3d25246f81038179d34563a505e77cd938da1383b40199c3ca245440390a4dedbeb8a08f786509470dcaf2a7892bb01bc4be4d9ab9a8f1438504d5a73c6a7e13155a8d738673887326fa615beaf61c8398de43713d7c1ae4a9a3d0881922b361cebcc796b09fabfa205a6b006388137ea0a0a527d4f1f5e6a36986220858eb825d9b8584f87270554bae4398bedee826b9ccc6da45e0b48a812cb8bf3cc0765c83fa0fd4943240a596c4662cd96f750a058c73af97d0666ff0f06b811e39abe1f79e3557b6a509a8ec57f72870d28182cfdcef4931f9c9d41bafd57e2431e83bb133b6687a9c6cc748088759ec5956099c1fa8fa70c8af37f624bd4f167a1b4a0ef6373554c9f87e9d7f31ee87536f60c888197640061507c6a2ef22253f6407dc0d6949f0d91368114155c7beade8e291cf7636c9474d4cc9a2b2ea29b107bca81f65fd3b0d730eff91b8fcf3929e1eb9c7d267cdce1beed28daca33c2732d3c23e22cafdc139f5d3d5ae00a33ede6f2cc2ec0d069ad50ccee821416d9936ebf62945279e99685a5d38838ffb7ef6e5a39893c2ce9c4c057c35f8354abc9739f8a1082e66c71e28bfedd95aeb9e5f421710a2d0eb7c050da1945d12256b7abb267a97fc8dc8126d6b654484a35310de653871d4b8343b16e4ce3f43610f9e2e05588faae1d2d534004fe2aca895aa5a6443c9525059cb7abf081d480cb977a04d2d344d751735f10d57d3ee7be2cfe96c21fcf2ed265218e8af4be6621a313d33fb9a6d347a869a676edbdf8ba3937f94c98526bf4c4e1d611f98d427a0de290f06771561dc8e1903224bad82e6ecc2a474dccc0ed8ee00437df04c24ed2b2031f46f93a92c9e7334e755cec4b1cbe984315844a01289ac524e002b27d20235965a5bab5621c4f99097dd07aa6fda32e0b8a436fed60a6287a56be53f9fc1064d3a7cbaf8b4f12cab19f464f6c24f023382794fe2595d758e3ade2e1b31caa31cdb72ea2bf6f84e9ada7c7cdb35da98223dfd4c20ef4b5f0d0f75ce2d7e2e192207193943b0e6bc2c2fd8a0dc58b73aabe94e694d084fe51d7e4e5c5a7c943293cc941ff73ad0ef82c060d36e102da0cb7631391ff3d80fab05a36f0e466c5bac65ec246c196fd642f06012706b1ad6cd3bc7e3f7b6c462dc228aee4940be58bb866061b145f66d5308f8372885e193de6002a4e79a0a8f86e51bce557197b7ba1953f1d58ff3a206615c5ad338f037806060dcac8c79d1b870f31053d3b5290d964be80706dd05213466f2ff5d6b77db5d914b939c3a68e3be19f4525cf8198d2b53dcb0f77f09e97a7ff1afb1b5ee711ea2523ce240a1f5308fe85ad3976e1614239517c79f83436e32ca53f64e9e0a23ed2dfa893adc061ecb665ce483bcad6ed6be69be5882cf0b849b014c071aaab906cfe762747f5475440a0f69fb3ed70a6b7c36488b6974f97ecde4348d66e74eb107def40b13ffc536ab59c25f6935120d2c0192b2f02cf45d36eec2256e867446e72ca1b5a03c245e2b41351e663b1944e76f63dfd3c6c32d166e7d2694fa1cbede6e9f9ea5eaaf8d994c1608687cfb96ce6a5a97ae5fc25029b4d849bb0685ec85f66a1fe0698248a40e389c9d1ec7390a5264c85f11ef499e16a1c22e1aee8df259e66d0a76bace9e2a53a007867d662047412eebe963d20a188cc6851409e2992b804f8dde948c0a44275701b985d2c81c27a2dbd3556fc5cc666921b4867d2b5201382b46848cad44808de61c6dea5f70b78811e623bde81d3df554577bfa37ecd9964d0acbac6925d03f305bd9159a0e4345e2e7fbfb7c170780a1591c760f2f0740fe3a4ba889201c2effb329587fd2e46b014f4e27c2725690929cebec86c616d0a6483c7178443cbdaeee2f3f2964d992e9713fcc7fd68b147664e17639dfe582950fe1b838138c9136c4a1588945687adb6d1b71d35fd9db1d91e518ede795199d77614ae4635ade7a29668d7e528976f84b5833604ddf76d8b534226144bf4fb8a36c618d09db6a7446c53bec30ec29374a898bd3b70cdb48b0c062da0290a8c89c3071850bfead5474dc4a0f2cf68fede6eebafbec3b1006e974b4284e202f3a41629df935a4acb3efe67714c4c8c8384006dd2e0ed6714c9d538cd3e606c0c6473d86c8096b27ec35310f6be54ada82cdafe63a2bd26658d64e1711c3171566871e38ab490afd43dfb80c107fed73ca00884dd33a3c9d8736e0b014d44bbedfc25283c5693a1329657f3ee937afe6697fb5811b0ab93e063aa1b3bd4983f7136509af4b5ba97953478e98b5ecf27495bf10a467af59291687220b08ce3ffcc4a03b83bb330c28ef6c163344a4e76bdfa6f65931eb1ab168085e70b8b7cb1ec44fb554b76442c944e6a50d58ddc7700ff41018bc02bd26f52712e204ca4646f3d43d0789453183c95df39009f7b0082991f0d0aff9cf03fb0c0b482d986f45149767021d1bbb0611966c57767477f4451ba099e38fc05883a2b26007c37734d01fe0253d16f9e2c50d070102511170cd2a7924ecc9f18384bb4ae56c278723bb0e9f78fa577e1e074e03cbc5e3c403f7957e588b4dba54f78bdef2d5b61a4fb9826619dc092ff6cf5d5e28c8fe3cc47d4311dc2c164cc9168b2e146a106a463a1dc5d2a044591a0071965af1b26f80625e94666054d57bab2432793e3c57d09caedbb9bf0c102c0d7e935d64839c73966a664ffa3695d07070f2e2bff496b3232b08812b4d5c33df86c3ec78b358230485acb07ccb889d3bb765820cc03c443618adc27a5eb26640f264df28e85fa3d1c5783275a3a77a5f48754d0998a331053fbb4dc200e57bdcfe7ac248029bb610ebcca2c111bcbd9c65364fdf524bd007e7a1af900736de8cf222e476911b98482f7ccd684d52c6fb6636cd40ab30b50178f2c02c3391d36d17ab017f411cf11bb517e620a9064be78464175dbbe5a22e6b648ade4a4733d972628b88799b5194e437932ba618b54d288f4cfcba128fe85ddcb6984d062ea9572fc7f28f8f0b15f263e4db98f268260d634825511e54bb188746542d7406c6b1707ba0cebc044676a6327df05983642e30dad972268890b121e2ee505d3e763812f02f430e23885a80f157c69435c6cee3cae397f5601667442cbd269d0d251d2c10a2de787ac987f2e4004ac1186d47f3daaa2d4bf6d4109c9c85661cda0b402906c795774526782c26168d68d3799dc5eea4506fdc07bcf9c5046a950378c1111befdd02e293d3302efb1da331457f4e8bac8433a9f151a120571b97c7b2c9c4b0ce5d71b4af8ff29fbf01d23f90355c8ca064eae2f45ebbbf6072f013a61033fcbee9a4b30a6eb92d0e1064af1b8dc5a288b27c1ef363e5196c29b60fc6c50575a43d47cdb6cd198108efa5b435869b18b1cbcf46b4f9837cec02d15e373fab75e54d57f87365da722906e836ab7e88e6488f8bc82f65004fdb4f39273a7f99d4fff57710dc84fd2b0a6d379b44dd9ec573e51e186356e720c922e9c86c247756408c9aadfaba67749d3d873afcbd9a4849bcdf2a5e8501847f159647a3097aa3afccda5503dea0bc4a01d42a7c2fab6aab68b4e06cb9405ee36d323172e173da8a91e6935f083caabb324466c24a382d370b998d5b9830f71b214b494ff40eaa68c7b3f33a900a58847cfd4762112d5322c6397b2463bc3d944b12d96f711b45daa798f6caf74789576a68e92ef0995f97ceac3c730c6d93044902d9232adfec11c39844c5832cc4293f6e1c36c214391988c28eb05888f5e966cdb6694d7e3fc8c1aa0a557fe26f00bff4e9c45b620e1b619fe8b45e51c59a1d2debc746606c41d449e0bb8055dc7bc00045869d3cecc11441498e710b6ca102289cd212bbc25c1c0c186a3669fab096ba9b09a7cb93d438e0c85d13747ed62f5555c14b742147b3d267f27ef22d40d8a581953cca76b6c6f7501b94810a660984f4b7865c63057253a0b249204a1c2031505d0232f3e0d10bc2ce72795a511c28f9243dfa0c22b12bb5a98a8822b16e69697fabacfacecaa0a9f082c642e35c9df3e8b3c710f9bc7380f7d2ea3820b17d9827e32cb4c8d2f647f7f4ab4986223f372dda5895ba465a7619240b87757903b0d9dfc72427da90e76b01c239d43e24ba30832933379bb984259f22d880d9cd2df3b02cf68ae27425e981e5d4e528428d3f823f8f7d58b62e7dfb451cc190178dd60bb6877870b1dfbaad28036d2f37d4d3ce2ba6a9d6c80c7312fba51f583992081fe1dacf8376c6f53aa95e4668f8f12c430d9eddc5611061d5d4a10758e5ee38d0249128fcfc1f61f72f1dc911f03a27429ee54b2bff922c730d68be89b51e395fc4e62e59300796e68e530446d8576ac53bafda9804052255da5baf675eed18c1ddcf3d6abb3470ef42e52e338239e568161fee36f8b5097faea214ae333cfdcda362b61805550c43b50def6b4a73881093ed86fccc09a862f5e12a63fb3751b7194cd2e5efa8879d0c5cd316f31a2e876e4178873f1768bd9a8b028efa813c0c2217f63eebe08cb17718196749a75adabe21dc69d1569516745828426252d0fe67e45cb473bd2acff503494f55679afdbdf342020d50c6c25128218f6d754200403d5696eac36cf25b64c24e88a774737a9960c75c2a4d79315f3f3c5b1244bff2ccdbbb652ab841ec61511845fe6d7efdec23fbc30c62ff54f4a6b8ecc17cbedf3fad5e0d551c2741ac940333afab85661d893fdadc2d74eb007ffb35b7df01547c020349e81398f854d4642b263037869c5aeb1739f8c06563a7e00f0a9a255e291b02a414c2f9695e216d067fe3ffbe3b2d1dc1c7d85f62ebd5769975cdcf7cade407e8c57293921e963d4228cc0a932751fd73b617571b370700e73100efd339b782b714c420a89c3c0580cee2c2de061a78df869efcd12af739b1021cf04eab8b7a552c70633e320a17d82d1ae5e9cf3287f5c81832c8ad1921d886fdd2b20371921744d6f2b333785d79ce1c49938a5ab12b1d77e37437ad3bf2f58ac7dc39fd05e399de4efc6d9d300949e6eaf73a4198f73661aef0d0731f42899830a44b5da53557ba29dd752d146e47c1ed94902fa7b119aec1892702478956b09bbb9bae4fecd250d41fd3c75a8ab70f1f20c975eeb5246a6c0227a699973123b7528982a374817cd90a21146058c5473521206a62af04eea6229aae4ace4a246d5ec506b93a83bf16d64f8617a198d74fbfe78203de976d11111157c51ae56346663b1bc909190dd88bc1ff36acbe630e9ad493c89a030706c45b2db4ddb9992fb0ad84ef63bc574c08ec73249b3d55874c57c1d3686fadcf970a8a43e486b281facc6097bb2d4f73eb99a968d7241ffdf836680c84dd8abee79311c4d8b3947737c0b8a4f7189c9eb7a3893e874db03cddbb7cbab0b67358bfb74224024b958c7663da72dc6fb0eb810e1a316dab8292b3de641803465738094f958422fd741272a1cfaa5ed8d6e8ba79902525ab00aa99e368b8c2e359191c65a2d54a213dc841b4a205c58d03a58380875f23bffa7297c1396dcf0c7191570ae2704f003115e8cba0a9e1cd7298a6f08001dc7a192847c0a2fe0905766dc3bd6faff154038f2565491531940dc61decdb4fd3e526be67a19de6de42b0c71150db8fdeb4ffe1dac315e491c972d392be9a363e171c2d8930ce5e9548b5de966eb33c825ac2dc3f37b25df84fd4d7272d032a7e29283597b0046844cb6ecb0daa4006354cca6a44c8e13e8c28f6ea6777c913611fc07a10aea8a554864dee37c7d25fff57be5d23a57c872a15f8b686d2bb22219219fcd271777422bb578c9fa63639206310d6bf278c140a3dad2419f189220e909d206992e64e6ad9e5213ebe5f60372c2cb81cb054a52a394283d551344bb5a1ad20b7b8d9803c9d0cd400606934af4cc97280ffba7947e6b38b42d88f0260e0b2e0ba213478a4d83375f73e55e78c5994e307c12b6e8affddb90c3fb06a5e2fe31800a23e13d3a0ccaa80d11e0732a7d3e7737016fa7eddbc9ffc164c60efa285eb28766ee0d34b958a277d04d5d0121f43aca092675c5935c63a40784edeadf611709d3ff038ce7755637bf876f54fc81dbc8b8b647518f31a8ea99f64a1a7cd88ae3aef8f616c2bb90007c46da61618af7a34f7ad03ee4faa36e07539afca277f33112629dc721441850ce0ab22cfbef38030a42026f7527affaaf3476ac44ec2dd0b4b7d270b6d50a3a2c351209242d8718eb3c03803b3d1ef72ac30f46a3fc9c3e7a27a403fad303376573fef5e9f9cd831fa81478b02ad4ab3eb1091d871d1b5b875432b34bc2b3d32373aea316ab0a31bb96b0fa34e55bb84956966d2ed810190f750c3b25ed741ba6bfb307524fba3483e1a4f42a7703c99ea35c565fc303b54507705a58d236f81bce1bfa645a19e396866051588f4439a0472f80b6526aed185ee2d2cc10a62b736e4a724a15c0da1b3990e6542644ea7e3390a4462f307aace3dfe320ec6a26210854e2b7f62b28e66bf670ad9263a03ab3d8c24d406c907a1be2ebfa549cfbe52983ed4da0940d094c86929848bd61e520e7516075ccc3c2d4abbd8818a6a6491a405c350f3b4c2a40c18e8f92e3d2f3f0aa765a7419a07a2f65e63a97e946087ae748dd542b2491a5bc2144ac21a236c1d38fdc9b74794ca42359588ca80bdd7d33643d1dc69527b65805f7a505fefc82e14c7b0bbe636c756c5dbf89a4a31399cadf3d48dae6a0a00ac92d8cc36417b49ac03b410473ae19e4bebaf2ba1c6ffe70ca0832838b413f74cbc6f2dbf49116018470c430dae5769e6e3c3d0c6a5a9ac673aaf065eada569a49d09a52ae5fe1d5092fdd11e5ca7aacac3719468666f84a713833dd5d85bdd98476bccbe5b8d446eb9ae512d7cd205ddc63702fbc668d348799c764e2fd75334e24eb62ff75340ab40a67adfd875743ab63363df45f6d5bb76b00cbcc4679d740cc86312a47f09ffca04efd72a53489fd86dac35da6015a05e5fca8999e208d27fa40617ebb910136ed071f3b7e5bc9d016670432af25b2880a7d8ef9f3f99a778aa60ab0ea43196bd0665f5c4de4e5a655380d6c77fb67638dc1080a64d6092b96f9fcc95050446c50cbdd8229b4f9b82690471b5611d7027fd292f4173dc84a3b8f9173eb729a4f8552bfefd6f390dc285a58872bdf697777456908b833a526d034535b60b211f5798679d581a7c870453c5d65f6133c3d7df2efe61192e5c0e7630e440134e7ecb0dcd9b56774193a10cdb3f977fc521b18e412892620775896e2eee567c15f4fc731dcdc15eb1ad89c42eab0a59c8a689652e57f891108dd768074536e26bbf238fa0753910df3e3eed1543af9bfad2ba1be1139ec1aeeadcc92e85abe4469d1ae4d4aeb8088f366f831de4a76b6924634b9367b3c5021e0d73ceddcb865033cbf782cf82739d47d3f447bc8921a2286b3e6672ef98096935d53a9b9c1a0645e7fe1bd76dd0dd461248706484dce838fe0c9434cff97e62ab2bd208c3275b6674a83a5bbb8b7dde0973c15193711d42187e26d55e8ad3d2218a5b9873eb0550497655eb53016a6bfc95c6ba4b606f83c3f138f92125e54e631e62da157a6d7aa6cbe9eee05948f2fac0029c7a8703735cf2cd5739b4bdf2dd361c48b7145e2824c93c0eb5f6825b84c4d2c187e844693fa6402684be7c26dcd0fa5483ff59995980b89481facd4254d43783f224144db6aadc2a06eb5be4c752ab6638bf6f835b25909276e87d80177406b99616d02c71f3dd493d46ddf37128d4dfc06d43dc4f6716383150b67b1bb8b1d850fb7b4efc4bf5c9556e214141d5c68d3a1b3d422eadbd96c6185c4b85bd9de322da23245d3bc426e5acf2bf9c6b19b124de16ec585a652751edb5e6402ad6d30dcd42ffae7687cb6031faedb6f0804237036b83875df8d2d05dbb3b9edc4d1d5c18253c295260aa84158603d57a4b9c659116533cfc565a14fa3cf6eba1155f41a84dbfa90998e6a5f14c6a4e0754bdb90803b65f683af1635b7132ac43af91b9756e09ba08aeaf7b4abc404bd653288c0c6b314592f71a79cbc1c0463cafb9042a159a00e9e58b86ae781babe3acc784d95e56cbcb2979001839a17cd571b60ae25d79acd8b2ad4e0cbbe0b17eb470a18b3f7eb89c92f7b25453c257ad54f6d2088fa5c69a15ab1e9c6c76ab9f2b2d05a01769abaa404d9e77f9e2ec7ab84a47926dd102e5cd938fd6f73cc320d48cc0696640b6e32aaca462fb6040f16f1782262785c0bfb133efd831880e38ad0de47a736cc546f0d625ec8dd9544d986919c136cb04dfea618ad2939c0a91f1da12382b10c68f9a18b5c26d535785683d7c2d2e91ce371ded0d7cc9c995f27772e02d4ea38df442378c6e1bb912bd2fcb4e4b51568a8c953b2c95aea785ab38bb35b82512fde0798f1fb7b4491b6c40d3d43a4fd67323f810844eef064efd3e2b48e01b8053ed900209a2bdfe5d04941e0236dd30eded31c04eb0fcebd77f13d28d8a462818b47409977461ef9f6d2810f75556cfb7d89045e7c5f6fab736c93f6e1e360a206906cde7a517355b98ff70067c95acadde480cabc4b771f0839d8399380bca77f6e20b3b46e65463ed3638b5066efb14c589c1d452eb1476130a94ea170096ed1fcb7ed24c54a65a0ac6244aab55463313a259767c7b56c3ac44493204400a622e668687d4d7d0c1cbb35d1b915726eeb9d94fcac872b5b1bc3b2f77e92ace1f81ae2bb6b7af7a8de44d35be5885519d06b57d3e680f6a66403f479dde3a79429b11390b9f843428a185ffdeb976b112969a3a99a5b817dcaf24d0095029b21cc64fe84cf5e94cde433e8ee443dc6efde04de9ed5fba06118e100f5d514acd5517b045280309a9abca64a94fce7057bdc31876694c6032f1a2a2ae67ee09ad76e7a61fd6ea08def9d598ef0be157db27729c205387035ca222563949360877f7da253235fbca5db7f81e63736736f28013179f578e53113c529300204823616aae50eae759f87c710d05abd1644ae7678466530b79fca0ab14fc1b36dd453d408a7ca27f1a31fa2d815c0de93d07b6fd7282c5ce353b017b69cc6d2bb250bfbea3982c0a3a2f0efc1fa724746d4f1a22b00b830b0eaa948485b7da19fa6619b5bcea6b6a8a727a2d69696b92c768b09fec537731999a3e99cf7394362128b84eef8d50ffbe3ca3dcd4da7dcd9206f76e47c9d277655ef3ff67ea71f6e64cb53761044c3ef02cbad3a94b6666653be11eb9c8d23c148e7ca29643646c0e46a48c81d963952c4cd8288ca8f94aa9c681ad7793639bb4a71527a7a4daff0e67961eb012cdbbbffbec599421cbb96a05c5c2ab911d30c72d3acbffd85e3e3660e637d0b11603327e72f08806b7e440da9ed4affc9e40a6eb595958301676530a84e51d563b86765ff1eedd73ab96fdf5320195c88f4bb621607df64dff4b556b814b1f29c36f54a0c1c6db2af84561e2b037f046b8a7d23fb9190a6e0d6b3d519147b6f9cb58acf3abefecebe17659a8f6c7b9a1ae5b756fda274d38102a1d6d7e224b4c4790a62f25de42a66f0d3ade50ff861396349fd05c757be4872e700e8d103439ea4aaa0a8c521cd3458a7da7f3fa3071884b64f0a6148cbc5675432179a596b32cad44518021e6829130ce4619335989b9cec9a56d2330ccd35664084892c3c333e420d3ca6a3f396bf4f651a763e376c14fbe2afa841eb70e58ce2d41f662c7239576d8ff39dea510a6fe999bba2776fc9e9ccf468faa321ba24c64f09d412b04306b21546d533ce609dd797d5fe7d3dcf6b25943912d514dc08c669a9371d3e83a3ccdeb59c2f080f44d8cae0f6c0df37807eba3897e92ebc6945829f4b2525601a6d83cc7b093b333096fdb5edb8747d83639a95c8bebfc894139392b0d7a920d39018e3c3f2e3f3b5eaf741d468ecd7a9cedceed59e36434ab1f95c3a8bf6329732f7077723b74d55610a34f601d0b5d0791d50c107e13498c1d9f0e31182d878d3a2b19bce2fb1a48dad0bf33b523daaecda1088502be73723d542f2b567913e1223bbaae2c4691dc6cb2a7d78897a7eec51fc934d243a7b622d23b7eb1abd3762819a105139a3ffc01926d25ffbdf55d44026a42a46b52a205a3a7cfde5c2cb30a745cd93ce714d6b49574490d5290c380400e1b0ef54f7f4f4287afc9f9ffa510e87ad0e8864cbefae01798f9201d5e6c94b62bf9c3250c61d1d501e788c1592c180fc27d11914ebb88c109df9cfb8a3d308c9d98bf36316833801f059cac4ba0c8c0e0a48a1fed50df2aa6caf38bec040c272b8166e4c56cc84738da6b44685b4b3bf23cd519e88b29e3a98fb5494cca6b8755f7388cea29aa0edf837b1d78e9eebe2b479c0fb2e814e9194c3a40d151927289ed03e45d4fede88237a520852591d046935693b8dbf1ee79bbcfd971d5fa277b7bb4603609efaf37a0ba178c62111b8c93c6abc3d058a33a98c01ba339c163cd2591c75f6b818e8efe96d5aea04612111a34e5951f4c6c36cf52b665aa1c3e2e26c9f44e4bd8744d85cafd00d54e360cdc25db26a4a1b5631deb8a07877b370db4f908c74383e433790b5bb91ae2706e70d172a4013e372bff9a9bca88f5ecfd8f43bdb85aab04ce2e466346b48df7a29fc73b22c3c84537051109436d838aadcc4669b055b0499f23a28b0485f591c2be64462f471dfb1aa45d811ebc287e83066b66164c3cf2ddfdb3d6d204624312880c2540007d73a184dfc911bb64ce450c0cabce0800bef3e2b837693c4c9153560240a8dd221ef5ba2ad6fd469a90b0356e985b4635172225cfbb8c0d3c3b7d883f06ea147d0c715f89034f87c9b1c87c3e167e5058dcb963adddd105f70a3b227d4770d153d2c9d3d371a19f6cf0b0fbade63a5bcef92f8514ceb77bed8d98962153eee9317f87889c3b7eaec55b289a5dee410e0f80bb3af0072e12db21a7b33d6f885729de0210753b2938d3a5ceb4b7899c119ccac2ec46671f4a9e459299bea7721d9fde09ec15661215ff60cf52476ec063d06ef7b1879155b9b91902dbf01ec372f1ef5aced24e344e904d685715a1ef4a0a33fe50aafbc26d971673b93d8a83a1cba1c7dde2ba226e68225a8cfd1ccb5ee98a362283b725f2901dd78ae61421beb8198e8a8c6a37550c264a9552a129122d11f9a19b05b2f10315d48bddffc7cab483dcac4e64da5e45fdb015d9790760902e5da2e0acbd2637a7103e64186d0e2daab8ba84d51c8bce14dc16e1954904abd411fe6ad96a2c3f4a3bf22a98986950462bd18f923832ce5930a655e71371dbc2926f5a424a15c12f04e149760b1fdf7f58e64ff1e186011e8ec47c6a0c25a04909a2a9796180d71450e129bab6a1717d39bd755057b86603f3b117ef311b30f37487fba771887cbbe5cec8bc5496e39c19764c9993256ac0854b13bbed15eb277c633ffbc79d346d952a45e170975f98d60814123fb28874c695aa82aa3878529fde28352558f1b978aaa118e8d1d90a372a15bd687c65c205a0afb1144c960b22d317b481ac63668668e52fa1a8e1cda5aaf9eb700c9a95c0b3a6ffc563e3bb7a62bd6990b41e5d37f405e749babf5312ac524ae54374639e094b7ca3239fa9e36f91818bac84a6c1d8fa1b17e9e0e6252c234c47338c46324d6b02383c6ae0c11d5457661607e9bfc0c2a9eca9b1668b13fb812af7f0d50cb06008992d20d5af163080b5a8926d08bfa3ddefc33fb430bd0851f65493063970f220d25a97beec9505709687d2e1cc7a310ac0eca2911da348ddf9b34a9a1e95c67b742c59403b0a2f6640efe63f26e3ae2f5b2befb00613dc8ab2e8b1a2fe684fd9d50cc31dfdaec3c8c244a2ddf9cb7a316fa21dbeb98381a265b371e0ee99bae7d8023bcc0bb6d7b2c4faf796ef54881a429b0cf2b68ad6f02369c67bda285070de6c0b29ce7f05e38569e49279941338af4fc98e2c639bbb2b517709f85fb9ca503c432e758654e90856d585a829dcc9a0dc24aa16ab6ea77ddc3469264be0964a4b08d5ec0b12a0d8b7328abb680872bc7a1442df07b01bef1c85eed209c1ab0310883ecd663ec340feb0ede57b8127860510fde5b6283214f63e9eaa3ead8f35250e0aafef07ef772b7ff39b7e0d923ab8c1aed931153680a4e31ba0fdb8c9424e39dad9564537856f51d81bed6c417ad4633fb2460bf0120923015152a1289010a70c7fa19d6e15d903efcbab0710790666abc2f88402d97894952c7394a6f404020ea6ba41f810280c84886d2e9164acb5a4a91e441673bd6cafe83b4418a6440cbb6cb5ba6e699359f23bfe817eca9b58c013d644bb76ce736e3fc68406a354b67e3fca65e40df7c6df65e0c3e29c74ae361fd64c6b613ccd904ea88dc09a44361bb5933f65ff350e5dd2b568349524faa7b2c13a8659028f66a0487166514b6e5071f326a90cc6b5275094cfb43dd9bea5ee7cde38dec9d486b7dc9365fa5d1c5d1e77b001e7bd8d5cab14ef9dd902f7bcb9b8b205aff15827788c33a5571784bd505e6f6c6c74c0ecf34396ed105f6be03ef7c82859d5eac562a0fd9d9a3fa9440121051134b8b45881b48effc1afcf50ed24d86f14eb5801c73901682656c93789cb538ab7f957d8ad49707431fc944cf5aaf36031454081fe9df4a13f55877d0a0d1958076eb71090349161b36f908a2703e5e0a84b21aa6aa1878f2e21589e4b3342e758bc38b316e06141f1ff8a6d2589a638a01edd3098b53436685926e4e89568f62d9c439d294d3bcc95b355760ec07be1520ef844368c093456275245be532012543714cb4dc172187f5473ff345689fcc5f5e509941171a1d04bf4fe94b676707e6a1964dc4789a4e5ba67b2dd60062eea07d9e144d73e72312add43be4450f3951464cce8833ad991d55feed5894db636402618cd0a0068fc5df19fe5a53025c60433f589071037792a7ba28b5b81235cdfe079f34a8832204b141de96d89278b8a36dbdb034a1bf0bc5fbecfd2cb37ba066189b870bdd76028cf448e07e59d58f2b25f0fe5548c2dbad97efc2058a9fdd3eb9fdf1921bd1c666dc68ea6a82b59dd01469ea45b8de4e1e6e2a38d930f7c56c49e1ed7a0528a386ed64e67905c172feb8c5bdb7e6b6674810da992047e7ba937a61dab9c0bc911e37a0049f1ea154264dffc9fc1b76eded72b794ee53ad7f401d6cacc0e6a300b1be5f6a8a915ec67ad4ef35c4f77a1e55b3eceb14d1c837abcfad3a2ebae6c2f975fd6d71d8743b1561027383a775c0beb7ce37a75cc639572bae571ca36b01f3d30399e111921e71ee5e4629914be7fe00bb479768e251924293eb7f11eb43391806a6ec841a04e0cd9f0e667510ffee99d55fd4a7afbc4bd723a880ca8556502330786404058a872554028b6aed23a2f2a804f24842679c9815232c3ba0e0600e98bdd2da5f11b0b631e5fb98ce91d2eb3dfb8f6977519c51c4ca85fc8000b0c884ae48a051edac4e16cfa794488dd571caefd43f21b160f2169aaae35a359aa4c3a4f944b9443bbbfe4f499565007267da6a741670bb4799ce08e658783629de35bbaa9672f2d30bb998f22420451f72eab1e5de01b3461f6d2c16c699426d26480e9abd5ee9b2b80dad0deeb42fad1644e3813e841c99a374b3e96b1a735a4beece979832ef16400e4a52288d4e943ed80b9616bae34356a68139f0323391be8306392ad5a9fa00e7e98600fc6a127a514690fd41019d9de3ae26d17674067200e727680f984e8584a89a3affb670f54ce97aca09c368c0c0934828f2a0984186d9df7bc339bb05e414d44b8bbd7342bfcf6094d88f25020d52fe2791a36a11c4d97b7b1419af8e82883e52735ac780ffafb19fee0e2a09654bfb50c4a397245c0e7cdbeae8dc46bfa3973f909814bac4ceecae3132d0c6eb762abcb426f22e2be4818011dd61287ae149949932b76d9719f6dc02efcb63113d160a7835160c2ed3e1744052ff95f1f2062cdba4b6c3eee54e725d688f393b598d37aa9673c532e172ff1a7346f43f842ed4d9b4f17f257351910747ecba67ad97d03f06a7a590566dea57c915845498c4a8faed12f32157cd008f215283377ca153c73227f91e6e3bc56a2980f03cf6fb7ad230bdd06fc37b40854e3caff8e242322e127d33017f6787f96b13aab502a4be9cb514efccf70213532923e6e1bcdfb4f5220d1f1b2fa0ab8c06a62d3467d53eea973c241dbf9a1f347b08687c9353a2dea2f076c1280d90cf0d5c2183e125ddcff840404c5a5075ec19afe3ec2f9d5c0ad22a233882fd4090bf69628787ad8343f4854b62b00c6a34b4825dffa5750ec9b47c4b5c166fd7e1d7296d377cd6d40c7a7145ff406904f651239d7b94aff95761e88b9a63bff6b4598dc783d1510d8711c856c603b1572760c646be50e0cc53b5f700af95e6c7dfcd21ce132fb14bc4fbe3cd9ad7d5de23921c72eb86e81d7ba3fde238b6d9fce2c566558161114296186da51224568a56e1e5ae170ae3fd884544a22d2d20932d058627801b6ebe26a80e5863d41a3bdfe8491b99e6b8d232d09d25dea2ddac67af59cedb8f9b72487fe423743fb2d6e23c432625c495c923768c7b53edc20812ba869be29b1bfcfb0b5aed1f9930b150c0969c3a11c08ddff1349ef85972e9a93d88ef37c0e19300c82b8c3da652675500933cc06da110be26a33f552abfca31c4a52b69b8630b8f1789dfc949569386c762ff5ed3d1c3b79660aa70b61bf74b1cc1481ae384b6669919537f4e0f9971fa0f7fd90f565a37b4c09f51d6de61d01260ee2f16a164c22b8a3ec80c3be1d313d8f76b3b90a352d39de092cadb835556cde791ed471808383c19b3e1135774f650886d85c90534b217e8bb777a81db8a0b0e730517e29a844d26f8df0bf3d8b57034444ff5764264c7c262ba634bb289914132c73daa8be8a6bc9be1017e0eca3f89a8bc0c9fc552b52a3424982dbe72d7a3121e1539c42ee5c4766947ebf46450c5d41935a3e197244e11ac50bc186d389637731b097089119c21931e2d69d68def43ffc249fb71db556367ee79e6c121f60b9b8ca9bbeb632db666c011e07bf868a7edf421c021d07a2b7ab07d98a4d9ed8456d13dd61e12d3de98a72d920b5a1ac11bc4b6f0337a5935143d8b6e8ab27a4e57baf0976dc4a3ea946624e76c4672abdc3ffe0780120559d40e91c4268cbd513650a9aacaa60bbf43f36fbe8aba85e199df568e518484ac723e5c27287c57d82ebbdf14771f3f3bc000997d707d8fb6ffbedce823892da3e6c5b20143743e40414583448af48e8238edd122f06382953b33424123c509d18b6a52adf83eac85e02db2c4585263f47bc6c1eb58d7762221b9b81700754d937f0d76f3f5fcdee7b8158d0a42aaa2cf2ac02a764ef62dd3ea930b78e50b3f3bdce20628ab444f1e77bac1e45ff136dca15095f0d03431e25e7ebbfa62e504cca1f734850f4b699d5d540447f839cd1fc361260bd74bf1f5d0d96ca40523e7b3e3e2c2fa87546fbc831853afc97eb181083a6caf9ccfc12285c033a314ccfdd1218880f0775811f98067a4233ce6c397658531f728d27843ba9f3ae39453d33c041f7f8eddef29d106afbc9d256fbf5fc7339b463c022bd905080d34141030ce417878991757b4ad64e796aafe565eb6ecc9b5232e78f6abd519fdb99005ca3bcd61b53501821559e216d2ad790f43b72818479808f8650edf17dd24236638434ca20647add12c8d52842b8fa5d727960aacee141142bea5ad55a73e54eb0721ebfb0f8d0dcf8410e70e67de73209a045311df55920be610352954d1f0e3d899ec055960719fdeb896e3f70aca46b85ed2969ab1bd8dea982395d05ec3a0e5ac1bdd34a21797db0e5cd721d3d4bc70c89b782de1a583500bc69d21f6d6b5e22707c7f5f53c32b2f8cc52ee6facddcbc567ac41c87d84ff0b692e71df6345c875fdb76aaa9dd49e291edf7872b0096d2fc619c9a4a48f4fce48920f5976db9423238fa06a807b98de1f86c6552d01806112f4205c8d52cb3fcd50f49e157fd9a3fde9b5b26693e99cf183272844b14c279adc85f1fc6ed38f3a57eb551513e1920124b3a951a029807280431211a08ff6c86ed78861aee2461d6ccbfbb3fe985dfc39bf74f5a53c7d0583796fe38a1356f8d56e55cd7f9ff370fb148be125e4c9d92039a475cfded451dcf50487dddc6d2c27df4e84712b4202b7680a91142f08ee53a57385f561f6940028d32f2fc7fc49a1ab750b5f7f64438d9af932608f21f6a249f68e54e5977f729a61392f48988be8e8ff384ae928688091f6c5a58c59d7e24945cb8752abc706a92573ce8ee149ce990d0dab828f619183a7b29c3c0ae526b01bc32b10899d7e395169fe64f1ba13f4eaacbb066702088273c48143068dce9f71a0d5e8ce93d36c3c4a4561f28fd90a5f0b62dbef807b63e7c4e38975e371162315ece4b4e7342ae0d0ddb54ededea5c848a9c27283cac95991bd15128ce59bc0bb1927caee6b3cb49e618ae60729c2937110a30854f4dde5a3617022625621d4f7bbe5d1507a1931817285278dd4528f34ef56c576d59b39f3cccbadad34c132f7550835ea032553dbc22bdeb134596eb6a4d44fba6c98f05228596c789a1e125223e9e3cf312cbbb032976fc8d2b2d431a50b9dafb619c6642dd6762f8340578df102930b6b2d94ba005a48442e19e290336117ac123fb683aae7e0363a1ba152147fcf9e5201186bea7c35d700399a3dfe21fee50211772186c4b185c7eec42516939020b048f245552ca31171c35bff5966820641131225513b9e7f86e1d0bbe850673f67ee5b30d724d687932fb25d793ae93dcf7e3c0729ec685f10f1ad628cfa1a9e0e968c9398d895f3d51a4ad822b5fbe99e6810d29ae145a017a3d7e04d33f50946eed763394ff13cece8c859a652dc3af1a02224e6e3f76b6cf68d61d1f5bd8631f42ed42a835603d90dd55fbb597265e97aed0654a398035e7512555bf37fef7da4f5b230fa9b01479b409e189e6713df820c60d3e8633896d490c7815c10e907656ce99075fee836a7cafd9e8766fac5742292997a19b4b0409536d020248d712be68e894139f1d175f1490f74589512bb09f4ac1b50fe303601db8a79cfe17bcfb5d18ef0f7cea9bd18fda76ec1709e56ea5630fdf3050ca3c17d8efcc688b2af2c0e92cae5500040e97c11e5b07784c8f1d33d7c6dfdf8bbae9661f4d6356b1c909c3fc5ca08f33563531a8dca51756460864eabbd73137fede27694a2684779b6d209580dc05c4e31097f523b57b3fd432596c5a2bc5e892074752cfac063bb7089ac19fef67634c62ce422efad59cedd73638a1d346396dbe60812a22a6f563aa7b8d3cffeb11f67631006ceb35b634b443f3dc770d68998e3c71df5a8d36b6b14bbd3502a97cb1740b1c28ba9fd28929229e900b7458277935f5a19352ed39d2eeaea46c0f20ac3c9de58d2da05aa91c5ca5d607d06f5b0d7d02e4c53a40b9e23ac96921c5c882a365137b3919730055101e23c51298fd05c07f15926106e7a191bb7f2c9b44ac541c640e600c3497d45b5f0e03d9d04c481468127f45555c61ec7aa295e3ef71a6f3c1ab50f9bf420368e17e02d8f3427f863265b2e6cd903ffb486fa3e41472497e1da6671c3ece515a13d004a8242eedf82eb929d53f2d0e59874502c6068e3252de5580a2d56dfd15167d51a5adf713b3e2b47927e354467a9ecc829b40f159167c3168c669aba915811855a7bd0bda9caf4707d753a23e63b04fd95363d3b233d640c41b8976240784448fa6d114d2554fe6337a49b2ac6e8edf57650d77babc2a768df1e6a2bf661176451b702f33c2143d8eb834f5f4f0b1249931a9483013f2a3946222ab354b4162f0f9a444954a828f866c71f7fce6ec3b92207dd47170585951bbc8ea6f4cdd923594a295e3b24d6cf6a8a823c3a210902336e70659bb7dc2723ae97d583be42d4748641659d7ba35816422d8d4c1bef7f46ca013f1f2d9e67aaddf86a038e3045d111c7f48054bac26e3b43674b3520feaa44f1c1b83458c485a297c0d59e28433dbfe723dc4c0b4a15aeb99e1cd42ea18f983c8f03ca94aca8745f544016d5542afb6d6b3a0231591b83ceb0393b17067676ee6d2b321e8bd898ee77a466f5226d20f97b1963281e4b13cbf61e0c395b6c5375e5f9b90265d0594dce91a37d852591dcde211c26b320cf1a5e7d4d7581bc2e7e728ca270efbe4c2be352f0f7630d8fc1c70228ee0dc495a98ba92a7f0449a790f396f0e934cfd905dcc07d48aed24beb4c483b2383a521e1b5c77742639eee66c610494e26d2c95d40a1f287d6fca8c9f71e44b5908a6b8f5f569ce6a384cc783e4eab0fefa3b0326561d675331b7685d03e601f2d29c8b62c16e36ed7c93c87f2c10f07c9d8a782bdc3b3feabc1a24d126e39f5fcdbfdb7979201d02bde41e05158e2222e670436c32242faf8af9a9bc5a787eab11853dc8057668a80c28572449eb0cae6f4ebab61324618d0f4e16c55d7f4607de24282aca5e4f23431e23bda92e72adb912ebe7474247bd9cc4bbd831433448042d45cb02ea72f549e705c09c37952dc3c8ace1822a977ba904d63e8bc3c0dc9d002e31bd2b6e920c330a8afc954acbece0517c6e2977f627fbd12fa1066753586e0f2a972f4e4ffd24dab2c63f60400e8a1c72ac1a897396c320f6a2b7ab68180fc3d23cc3334b64bc35e738560b0d7ad4609f6d474fac46837ef2839e4c0dd989f22eae2c3e999523f70fb3c63809b91fa3858118b09fb761f5a506aef2f18e4888b8656e0b24125d2340ac1de67a65176ea1622ed2eaea5ddf38c675e48f8a546ed57928f5d9ceff0cfa35a0d68b2fb6071b811de4d28670934d67716997ab30e3382d698b56afa815fdd66e1e4653d3a72c7e1740c364380edb1c50e42667b515ca1c01f1330cc31681219e58ba47f93df306196f0ba5038ffbae814de8ded2fc1e28bc449bfcb29f3661fb473a5765ee2a170ec1280850b1fc87b7b1b331d43b4cc1bda9083c69390487bc7c202012301cdf3bb0bd9d5d14dfcb8474ddea8b8e861112c71391a86506c1483fa1b42731a945230c774afd1cd8542a4f6fd75d934d3ef70a727d8b95c0518f706a898cf3576b0ea18593d90b6262a66468775c770fdc2eeb97d69e4a0bd8e2ae74c1cd2fbcbb0ae08f6f937724dcaf2d51aab23eb91991d6de4f4d986c7aaed24505d16bfd225d9feac589af9e407036ec42b4f4cba038170b86d4e088ddc4322f269e8839c04a09b5f244f7e50b47081461509c0ebd79805f639c0e2d118ec59952285fcc9d43dc3a0c9489d576994aead30c8b4d8434901622b156c1ba666c45b512dddc39303a837cacdbf4d02e4e9c13a076c4d820ceaccd53e363fadc4383c2801dac172ba88ae9b3d4ebb16b4705a3d6a84501437885fa88ab9c760ccea0e05a53f46a67fe6a7a2cb3427a5dd5389ffe92bcb67c8a2024bf875ce2aa70c359f8e0eaed03f53f6105e85b5b32d4cbf210456aa1c729fa8fa90996d7e8e82dbb0283721e015a23cdf3fd01b4b2baef2c2877ac44de9045579b58b1feeabb9a40d103226e62b1e61dd826dd21fd7ec8b64718cc16648665a87832fa9507c31f15b6179f180e1a7484b946f8ceb122233967786c61e2de8c1d00e89c0f213bb228bb548621394a59eb8242fd392316cacf0f4d4de17aa0a1cc32f239dd788904d17c6ef65326f1a898b99180b93e046bd1e815d85d717bb8c8930f5fa072ccea4e7f68b978019a6ff751974182eee85c2baf022b8f3642239b2284419eef78845b8037a2194e6c02014d2e434cc3b30739e9dd782814ddce5852fec3bb8bd47ce53059de536ed5b4d78c15f4f93b4afaf5fcf48dd8e944c2976220877df793c00828e4142f1f1fd9710b37946b14b1761d7e747fcb84b2e59678d2df44a3b6a61ed4af204947181728c2573ae7bb94b707b1d85bb106b6358956f876c12f4401b928d5ed362387fa0a9d82a96f651f3a2cef433e8b3e2c622ac2fedb6bd0e7954a72add5bc3e7cb9748003f9b6832299e111787871d06e762718bbb71f870b134ca9a7ad9c68f2592b17a383111fe1e18ad5b346c8d5dba5aae2620c44b4bf193c4180ca1702ad4b532524893aef78be861a9bf8c6d85d4b5017e267740ce66d8cae858d3b410079d8c99f36c990b306fd96a782fb2ecf456ddadd1b5b729ecefcbc1751936d557cc39645c6861db7cdebddcc5d71418839d0960416f62eab20b4c988ce7148c07add1f968e665754289f8612d2c6fdeba100eeb4bb09b76d8fc7c4d1453b01ec31f72331bf65b8bdcc40df13c28356edb0c5cab23103a7ddddf48e97ee7a28dcc8a8bc48256fe439623ca1c53af2079e9e41d2c42ca0b17a1b2106bb5a5e46866a1ce502b8d83bd113f2c079032592f76908dc6b6c26e2ac8e4e29508e371180b648b2ed9ebecc594cef0dc8babed79f94169276e41374e8f1c80e624f1f0b8f1f2b4ce14142cd8094ce4dd05a6ad9801ae631d093ae565528ce46407637221f330436026c3ef1b6527b30bcde0d8123527d68a5e6fb713be5a2b0ced9ca2aded672fe613ccaed68d6d2b52ee4e809acd412c5a5d0406f9eb62a8d00ab2b1efa59a83436627b374c02561056c9be07c2568fef37c6ae42f3a0f51f4401b915089227fc1cd8ec434e0cdf6c0f84583902589a20ef5b2ebd407051ffe4f55d34078cbe8ebf1a6bb9c3c93a4d67c414ae4bed3b1be879e1bc8dc17dc6f103113b0c779df1935c1426f39d8ab7ebcc6772debda0c66e15e39ae35c489f4fea7f109a9a841233a8d756b6627ffc0fc51129ea593665b86af4952aa127dd59bacb2d61790a6723e402717428e5b1219db8511f82d5eab85a0ad40b1d7bad34a611008ab2ecb229647c6ab16854d4edfeec6e8487ffd87493794217c6bb27b8714e4feffcc9a6b9701acfa1ce2dafd491d57a5d9a5fc1ac656c615047d68ec9f3305f7f8c642783e9ac7754ff8eb6672766fdd1ca1c96ab2cddee2a7e424f1e18ce397a0db72523015eb18a319f5af389290ee1683516abce9bdad104d0db0b34913080c1396730dd5f52c310323e99545fb02ab9ea916e2ad5cb98ec892562ec6a3079d6a6ec4d62098c3adbdb9b3fa52e63ec4cf5497ee22fbe70bff4d87da579142c00eaa8f4f17df5d79e0406728121222f876075141cfad8ac99420bc1a9f7056f29627df3c3d7da65249218b60c9e2c2462880a864cd37d186741cc0927673a384060d1913237bce7b6b72e1d9b5e19300b0fbf1cabf0c3ade23a7d2fd6965beede7de3b2e8792747a4945c55826bee55a34cf31c324ed7212f7f564fde20042e0f88b0cb32d2c18dc6945cf477789197ff35faf3ad7a0be2f1f47641cefb453c64e18cd8ebaf0b287244dc0f47db521e5c3e1b33bc3bda1dd5339c7ee0ec087f9b28e00ff612ffcc970beb562d8abcb95bf3c75c4d936a2b97c56e1f2af26a2762aae06a2a854fd6f7ffc0eb1136f881c9e1583295065e1c1cfe4e6c69ba1d0c4692142933ec28369aea09ade6d572e99a7de830e275d16719b0362386423384974d44362574a618ed57a119601415720b86e8d6ec07636624dfcdd4478f2cab04178c1ef06120baceac22aedc0e0151fb31616676b49416ea1777f5ed6b72221797d7f25c7d1ecfcb48850282c82a8f3f73e02ad55704c59cf40bc6b24d2a2bc090b0b7dfc8d657cd9b61892a745b476f147c9f3a822a071bf6ebba4ae100e9a1455e0f60abde577077e697508dec99ee8c78bf2c0c2073d2626810941725ca5f9778a1e4b9eae577e5f40688db1e45a6c2b873f45b417b8c9bab6a76ed4c8958b0f642d693578b9e75d88dddbbe29b1bddb2b5d12e121c60111f030f95583f42f33015629b35ca2d02713eeefcde3e3570e38c186facc4f50fbe832a8865634ead6502b9a3e4285071b5b716df999c2ce055a19d9a98791e6283a3c5522ee9bc9c11f748b4cdf4ec264804c8b60892686852e3203ec9a68956933038eb127102ce44cf7eb3b02b49cef034d79bb76885bc9d863464addee1c25390337802e8830c294360873f74be56457ce926d8eb594467f8fbc7e6c5b1e85481533817382953c2f90ef95a502e083477a9d3dad45b8d37444d46c75383ee0e3f7f056c50d733a6268ea1c4f884b79455f858f9f0307cee74d7b58c8edd59eca3da9d368f3828efd813c6b64fed784ca3c4ea901528be5e1e0286bf5352c6faf87a3d32fba9201fe04475adf12a61fd5d0ebe67de5ff250616905f0f4aed9a95a782e10a183a36fc567ab683d8a980d7703c8e66730e5a54f03764f66603918329d170f4e6719cb3a4531227f71c3d6d29ea7b0f46024349b820c07b3550f9ae22dcd30bf3771677aaf2ce4f644357acc8aa613516bae0820d04d7e86b23e81e903256f78b845cc913d5d2fd58809d0526529a59a01b67a0d2a0fc5b302caac76890603bd67fdd205dbea5c9032d0278f962e951caf8f06c79ad87ab671c5e2c3f6986d231aec0ed135da23de359a7da668320f92d70367444e593676bedb9d3cb495039f5414774cde80788211c48dbe534425372de3087a50d0f79d65cf44cc64a0384000ff9c5210659ab451b325c22656440d9e6020810308b89ca04f909fc6c740fa8a1e9d50ece312f1480d9f25208ac3281372d11a14ec8288e8686e13afb536026d5ce3de62c1eef263a3866246e49af129bd306ac16f65868258d31de4f9042d4cb8447ba9adc4fcf5f1c9c99c33ba811fe2607f26882fe263ff18d2c3801f0505731f3a099ffb104e885f16e43ae51c90b27b9204a0b548c1b3b33cc98b33101d78bc40e04f6c190e7ad17ad4919230774661df0df0ea65ac2330cc1c1e6ff34f2a7d1c19713e19bb7ffeaa8fa65c76605cb993d940ecf5f543017b236966616ebacf0bc1593f0490af7caa9849ec28185d9304bc39742259480361905434d1e4b19e192185c3788c6ad5636e5c2f927d79160e13096273d37e58b5342f22176e66759166505ec984433a31108f045c2caf43b71f30bb9a7ecce7d06756571c381ce28389d9cb03c86e95886c7450852b4c73f3b4481023e340c8a03d3956bacea38866e3cdcc65e656f0f13232907dc86f1522f5903d0ce4a88364de964176f59abfda233cb342f09de994b516d5d5ac26b9addef601c0cafac8365f1739785901b6f917619239f54c8de24300be467e52e7ca16a8a17da18bc933292946869f07879844963e31ba8d200a66789f08b0e6d15cd0317310fb1733418ae11b1c45cd59554e0c17118786d1553f3bd2764b8ba3a53826e2b371bad131d44f23a71391d75b323625390a00657bf61937a50462d59ba191e1813cf005dcfb40039515c47245fc253304e8ec6993e313b19342581e77b8b6f62125e539e8d3cb544834f4ad79364ef290e9180a0515dc1c99a17fbaae8c77dc43899c24ab34a140a908732885b70300981d0904f3cd05ca9fcdded3c023793344caaf590f380927caa62f000f95a5ddc05d232dfd80c6719005bee82475cd2030030ca7851b871435cdc7cae9039625bba78ffc1679a49c1526ef8454293daca4b5584f11b23a1e56fa21b301297189d8fbfe1e07f283ac18e91b103453e3ce3e38601b814590450953ebd878a0acb586db98ebe46151f1803b371d109ccb76c501158d4c18115947f9e7913ff1eb59a6539397f97aff86234ec5a4b7a2e8cfd2e8d9cb2a05d75e532dbfb2c908d2d64354160be083e85283bc927a546970473c043b499f5ec9565f894b8244130431f4286be9301a9f1b559c66cfdebb429371fb9fd0ed5d3f14bd1775e15c680b7a7fd4a5ef5f4778bcd4df1ab4632ac9ef71723eaba4f8e61757c67567ee5e26d42ddc060a19603b3b4be18f0c3c099fdc4a69af560551914e9cd95b3fc4d619a4079ace6be3b81efa5a946a9e7abc6dd317dad8a382b3bd5174e2bcae429dc9084670e8a50460271d33e2e3f6a8c60e62dc0e69fe6b583615a24d2118a0b6635a7a0cb541a5ef6e6a1fcc4f0ae1a11906fcc6961cc55d452362aaf17989971765bf4871015c6482fe15cc723aa5a313f8dbf6b96d48f34534b9012b3510275c3e51c054e182a08091ad856bd9e06f27ae51dd0d90abd45e5cec4c20d9913ca8ddf4d76a98e1167fee525a3245a595819e40000d33f49e5f4f44b1556723b11e1b97d68bc6c071fa2b93b5f821f8a901c684cbf04dc235606317134adfa0d073e6476fc73e8a35bfb45d99ca6f07d8c21f7b5b5210d7be1c1b995c828a7db43cf4165d98a2380c6729cdd3670fa73873d591eebcc5e5f769581dd35d243a39ed2447252d9ff6ec9238640dee6b3a180a4bd0c9ed8cebc5c8097d0024d8513b5b8d1bcafbe87a5d86d3fb9455ee9252cd09c94165dc8e39dc1eca3dc35494c662b3c076dfc59c1c6565f0a41f4d18cb1c6247e4ebe2915a8751a140c00a038c65ce41947d49d56e0b2bac9b32ce7ad94e2a715e0a651d1f4a64875587ca027ce211e6e27d73d2b3f22ceb6169de2892fe293a56e89c22f9483c5eee8f0f182fad0f94ac91b4f4dca84061d72ba8be4566db41b5ee2cf13a2211edaed0049bc56446cc4288a179acce3067ef4571f167b4ba247d5ccdd824da5d6320c29364be4cb4a44b7faa204c00d77d35684b73ee1e7d43bf96517356c46a85130c737b758d37a4190c0063789e20c4e2949cd878ac3ea5669b81d503cd62028abb33c8d92a9999dd23c38dd4215d9257ce0ad222ac340393dcf086a36816e8b62a5b06a7eac663ee54225c3e8c5695e9069f8ac508665c7d8f23e84c3451e900c56d8dabae37d5203b71dcaa1f2e8165819571421cd30bf4f4c439c4223887fb6bc5ef1cbc601c344b2d6176a55ac076b2d8b554201dca4ec63d00b9b82258b5ce6714db6c8f809d489e41f31a9612028a5041c4c503e4c1b012d388346b56c4dc20919b3ff2af56fb8d5cc6b75fd70b1d14f4a3b2a548b6c8763c8b322f84f279f152816f4a2df357a4a0179737fcd1007a7464bda38176ffbe295a5c30b6cf49a9ecd33a9ab9b18798fa3db4b9f7c9c00bb9add664bf7a27613747a8067a04123cf3618d75c7c649315d3e665cce963abc4f6505d69e05bf68aabd58692d5d2e5d344e79d5ebeb213ea79e6fae1686f365baabb6f113785d1deecd851ab01413a01bbfa03a004461cd34490ee84da6fa1526127ca477041bdbbd57c745103b047fd1a699ad01a8808fe2f3bba05cfc0c47f81ad551bc1cbf8252ba2e041dfabefeb2c12a759ede59982c84aace99a3c8232e5ba609876ec9ffaded0454b72afe2fc86b3779d70c34fc252efc9bf746200ebedd31a0cb970b1c5b175b27f054d4f198c5dc05f4ff5715e2666b7145d845240bf3e38dce25a392146662058f9d00de165fa7b635ad03732275c62212fe6b0903a6b828e589c3a34b9d230b47c86f66eaa7a6f1a0bce9e70db0cc36aebecaa5898c508a393f9504888f432f46e0199f0715f683a3b638bb374d328596197bb8e03904ef994260b0a82d046bcc41ef204c4cb754b5fe7002e151632f649d7c53a8454f388cb5cc2b2d0092323a93f383954d5eba8cba57ade3abeef9092210d6e77771e68eca2da5465d7b205bc8f455af0a1cb6f9fd5398bd6b971d0cf8e4c5796e2e44e88b83f682391307d3e9fc5ecf70879bf5c5dc3a3039483a07909acb6a115cac2ab344e788ed4f09e100d7ee205ebb578e3e37a1008e59388dfe5350d0c5f882a744dc28a2ebe61e41275ebeee1a077963dbb4c793cae33ee0918434c3c5bd685882d225b82cd15eb425ae89e1f1363176800fc2bf329877325bf7b7b02105de36a5c7a7fac22e3f981f85c018a9f24d2d618c278d3a4e0d0f4b22b6e74d72831fb108a49902766e8278785300521979527ebe4363f75ceb019dc59cff0ac1c0d4ee1db517ee58118c1a89c78d0fe370f809337e78be148ef31170b13e449caf6c4146badb92bf0b3b11675f04372b73f992997ff01d5465b3bde8962462876de31b10e2c54aa33c15700ce75ecf5cc05a422d34e23d710f5651bf713fb1c28d986e9f57467833503d19e4323a3eb10984b58a2a56945aae199a5f579313896061be87df257b63540ece01b8e5b88f30d3fe9025e98653fb3129335acddcea734a7d088514703e311de3a6c7da0dc7645b4774aa06f23dae7c34ee7d8ed56069f1d53877f592fd5618d4523b5c26cc182f6d24eebefc9b0187976fbc06224d4f74543fdc44c4dd65e355835d958801110d1680a91c5c2c64d86558517b76d0b23f34f237c4e2c652940f32759c9324e25424870159fc1884fde777d450d9e2d8191a25fc764c1465a5c51346589c2c8d736ab53048e95bbae8a2680c9c47f4069895f715f82324078e1f96dafa50d99b3826004a65268bd18d27f29d267def6f75745b314ff6366b5429751e7dc76cef6230f729e76d37f1d91dd7ccc9a23d392bd976ce4fb1636c9239e11a5d734c481a369c88fa7581f4fa5c39dae246600b1ad3e388b8bbdc0b9bb0a80b3c2c167e3901ce97a5f624e76fc57c7471e5ea6fd009782850c4c82e4ce5ad0a77eef35c33ab1f744c51ef82d79f75166074453e52b4cabfdeedb70df5a3e86059b6b0a9bc14226fa35f6855f9c2468e2087e405b0e4dd2ed47678419daa674af7ae808d0cdb2ce0c5ddbb04d1d3d8fe73815b80e6ed76ac4351c83f396d4095a3c48bc4c67ba0d516ecb4aaaa37f752868a49858b54483ee483c45c9b609b0f4dadec24f4c576f17aff8635ffb50e83b6555a16fe38aa3d4cf0cb1150867971f85d9d769406688c3ee23461e15023a7e57a93eda344f8a852531f211af96f417508c1f077854848f888f41618f18bc6872d16b5d1c2806026449c62597377ce75001c2fe5448c635f9977fd14c318e9269f7e4fc807a86385837349e9bda950d58555244f14210479faad8b8d9c32902501322bd5d59c9d693e7a1b6c6abfc4be2edf71db21b0bf088608de81e61b6ad6420ab97df4a7e2ed6dda371b3e05df306794e5f3420b5c87011a25f84a279231d47787188582857226e8039dd0ceb3cc68a0b28cb345a38ff0ea85932a5d5bcc56c0e7f20e786e9f0c166b702dd7bbc24de94594028cae3b2a3e3ed2b54768ff9061314888aa78079c4a6a12fef140dc0a3a0bb6b92f94dbdd7105fbede51dc7896303e13dc3f9d2eb80200c538452ab78b9778667fd65e8dd7df28877b4d235a9e6e3bbf2dec1dd5b335f5c0c4a1161c06645a5c04ef71eb70c9bfc9f9c45cd395c2b10ace95a88964070d1622b516ae5f9f3dfcfc3128605ea1682ed1ed1d65d851463fa639a3d3f874365074dc435f8ebbf93525d4320cc484b4a03036d3645f6bc011dfedca78acf25b972233cee3e369543cdcbb036dd7fe63db1d368f1fed6f2577aef05eabb6828a50b8af38fb4878fa01f89d869d1e0bb100d33e8e652cc84e24d1c3d68b7452c23768bb5494abe4f4e89a3c8b9bf13922863c9919390e3633c10dc29c4c2c4327fa9c917b8e834995571cf42a8e8f0a4a1a6bbb6bcb68f85b2e66f781098212668ccff63f41ae142f19af368ef633f24ddf905934817ef54be5e764f1811c55917fcfbe9baf0bbaa98193b127c34bb3d3bf12930342c83e57c0ef90c824ea35e536a4f77c9e8372e56bb35aca5e4b7b74c9666bd2ee8d61418551e6bbddfaf64787a912626547e0cab35afc434235966a2f440b27205c0848eab008f8eb44441cad5a6300c682280ce8cfab464d9eaccdf4cbcffd6bf2a83d0de820ecdf1f85677d071e6f4960a77cf7825e823c7443b76a81acb95c8408dfb433276fbc37c0a521b501d30856fa58d46462f7dcc9678903c7d110b7be93eae54fdb2faa7360028bf6486d1c3492da0665049b5c97d4dec2738ac4b51d23eeab6c6d92177c1414fb2d65e5f0c477d819466d2fb95f0fa98fbb6e040c64a9d7c1e1d5487525b68adf0de5e769626900e39cdab0503fdcc50c3e522885c42320355a2aa6d33403723b00c7a6c6df6b95e23ba39809d716555eaa9530a9fb7880e26a3cba28eea350661610ab0f43afe1f21ba15dea4e9a54d119bad996e49c46e9f9155f7501a5e35b744e53e0377a158f08899ab8f2c9c50c45642c7b0381129b33425daf49259fc7a733f9e51d5ffb294df5061455a9318bc9cf39cab7dff8dbdd2305a79d9533a7ac5fa31918423062d016d17e4e02a40846f397d00464e795b00b30f658716eedf91eed6a59c07b792cca418ca0dc1004047cf96e671263d28f96682a7b23422f179211330f3c935c59509891eec6c034312323b6c1b77b607c511ad362011b31b0f39cf21bd90f0431380d3cd96e37fab5b75fd0ac4ac7058d9019cedf91e347d2cc20bebf4e7d5b20078c0edd5c67f8f186a66f3a253de6a0f782166fd52d0f08641292e874740d500d5009882a7f91ae3412e76356619d9a9462adb0f41967cc0604af246d0d21bf9232871d0b0d9dd9bab5fa63b687bdffd1fcdc9132e7f2d9120291e27369f756ab9e431e3f552511432e21a97442dd8059032a8ec593c597c14796db094124e8f9dfb955e1a63042cb29e56cb27b68e728d10cd06667c83d0669524702ef76c873083a93a6d407cfbc05558b9b1539c72e09458bf6912ef9a4124a9294de8ca426bc3522143d4d35990410db7be26922a91543af816f46e8a09f45950c47006845e1d900f7548a5938d9c309a38bfaed0a7d60a9e67d61084639d5443f16e2b293e0e795ed061fc23eb4e1a1b0586196cd69bd1943d298cc8be8498e488cd8ae23396dd3866c27658565e76ca9401892e74912dd04dd3f5a08b7b5a2882b756ae99dd5ec9dae78a2bb4f0d08293bb0fa4954bf3482a81ed0d5d137c27d177a91174c98a4f93f97091e21a3d082320d90809fccd0c37d4bb26e0c206ed138aa505d1923e78b764f534b23880ba09bf2345ab76794273e834d3e3ddd0dc171d8813ecd0d2f50bd537ce577127d47de2638a1fc1ec5252070810bf12e09efcfd939593e1ca1bd01d7345b717d2a57fc338279ec84e570ebcb630a67748808408165f8bf885e5584b8087f3ebb6a78d79d04cc575cb4b6485a81b655ac1d141ca5119a32a0c813942165703061a8098c3f499e6a2353c321ac7d142af419d7400af1ac1dc972c3205d2246a4ba2f96321ccca88a2a00a30cb9fe734866fea71cb91f64cbf20932a069c2c385134096c16804a9c71e0185b51ad04b987494c6900e10e7f5a1fbb390472c56bee9840067207e1fba9467845fa3350ba3cc34f28278c3ac3e19d417c3603cd758e2a8a56c8c64ae94e12d4194611ca57432a9f0d36aeae0b9f9e7000f24fdad6591ca95a1e1df5cf19f79519d04cd69db72921c96337e219d293a47f7a66ed5361ca6b454dcb00b2f3ef4a4174309e122b9ea9540d01931fe09fbffb4eeb0fe0cc332cf7ccf62e988c02cc1514f825bce8f1d0c9b58913843abdfcfb917ca9442ae4fef38173ed72b12c5c06ffaee22ae825a6aef37b147f79e28a8487fa172c79892c3ae3b8554f9b6b3031dd253260ad399f517089a193266008bc9d0a5b0c9ecc4486a48a77e144467943b970eb63101fd5cb2da48c3493498738464e18c5eb15393f81d959bace42202a188bd90e90e8a969f4feda4ed21dd356ec808ad23fc09c4b47ff95b35580b2664fab2539e7798bd7ea80d1a687d9aec40db8951d766e28752b988e053db348588cb42a21df2c0238609dd687d18c6be649c8cc77cf6cbe34c70ab2cd96100b2aad0140f5485131fee4e220784423a548026516a111a3596e0882d6207a57a547df24852202d61231f27ed01228345364029638e9ae4813f692527614a622a42f4192ad2ddbd36d95ae2674ef9ece2c93e18c29f4bfd9bfc33e4d1b576d51776d932a02cb2958dd7e1c3689ea8ee2915fe7410033646a6cc05eac13cbd86be7090a1d26793d952a34cba7dddc6d3adb8a79bf5e442723c1c198c21fd293490107672bf8ae891523422c90a743c0df8b44276599b6181c79626c87ef2446cfee0bb0b3efd5d6971a47bc646496c77b12d2cbaf42d07064d156a06434ba544ef54aeba92c2575c794d28e3d6a8ad35b7486fdbc90146ed24734a9ca135a290072045ecc3dd6b49aa6b3ac0d398fdc8e4a6035b273192ac71a2eae3de1e4d2fc3e5de85766de531aed35723d92d3d7c1d4f51c3d1b19a81608d8b7d27e4df7246039c9dc07b4de2ec44f6a0890860df0793ff21304baedf766927247a3605a8cce15e823fa9c561265e9ed3e87a34a2bf99cc0c01511dc97a9130b7fdf6df568ce1a7c684faffa3f0c3e417f53cb85a80976a0f470f6bc9b782c139ccb3ef10b16490b53e180646f05eee42ef4b030643beb17432b385da880f5cde9a89a8755ee102c131fd2a6f97ff41d738be2683cf8c1e91db3daa290cc6f896c35e41e45dd3115565b346b2b1ae44d6a961c12702c734d8bda08581e24c846e707c739e531566144b23b448bbb49826efefeeeb3090187a12c5b5cd0fb6c1298b27a3834fb3ce042db15ea50f905423b7fef5347978170976c52f8523bd0de4a44071c8442246c567590b560ae4202d30f3776ae4f288d88ceb08403e8a3359453817463ac6e8dd2bd6a7f136d38522b34dd63e1820f2213896452260db5d0a73d6de9a32b506ec4ae27191a860f61af8fa3d41f7175348396f14844e59ac8f9b6efc5a1e32cd8549b67fd00837b8e167cc2e0fdb5816daee4bff105bdf01d07b14853568b484a5a7a0021e1f5fc742df689707b3e094425638a8ff5b9fb7a853e8c9a5b692c90d129ff4c0c29f7e5465b53536405353cab4e875eecc8326ebd3a8fa58f946bbe1ae4f024a6e25de07b462eb265c15031d7f8667a7c0bf7e608e4c4de18586c77e68b0ed9f12a9d0943b51bebf8623b68f9f5f97d0a79886a9ff849db6acc096e850f3dd6f1aa7c97816595e0f319d67e8d842e64946e3b88ce1473f41f9d0ee6b48113db37cbe3e5c42ed6e68ae0998fce90cae22cd978284232bd2cb29f4fccc165ce5b87026e0bc0f2acaecc166ad9b9ac264f1f6195fa7e2fb2a939be5e83b8fea29aa3067b0ceb23916f84dd959421b80150bf6f93fa24c54be79bc249825c8b30d9838a913ef88bdd36a8d30339e1f4738e5a1f9db8e47995facab843644edc4447c485e1a3e9ba5a49bbde1b30941c52d07cd43201d911da2cc0581d0b4f79accd431f7842d4ff623a4d33511191e733dc9d1f54ff8a6f59f990af553813fc0c6faeb5677ac9fd1e684d8ca0f2edad12634554696b9eda9dda5b1d13f16cfaa10233473b66c841a12957d8d02b0c372f159570cbb41ca66b80a6fa07eb9f0912358ca6b55b5492575083e92b3836a41ce34f8b4ec39617aa4f4dd61dd6cf5f456b77e7b19bed835007dc50d64136c2965e472aae32ec147dbe385334085f9bc71199b03744bdae5ea7761049e4e0e494cd71619c9c8b36ec35fd2063860afa36ed3568d67182d711e992762a3205eda1660b7eb21aa3f3823e632621ef930468cd6b91fdc8c1b547919d9037118f245cbc81cc3ac14b1ca71faf745125eeb7ebfa4caa3c7164bf5c5cb4cc088fc59cc1aad642404f7e35d70bbbc63880087abb6ad7b86a636170f8a88208a3fc2fa6d01c0fb2827d5d4b4255cee323a32f5bfb8df5fcefa4a46f05b4fe7fed10c4e7fff3b7a7e92bf3bad2934b1011ee5d2b58c93de6db6943c4075ffc2041fd877c2e5424303a5323373f0e597a11c7ebcdd8a3f3924a63a0dbc70e03395f69dab24bccc0cb39fb299aed919e614f0c89a8d4955d14d7379d7a33e1f4ce7929d56fdd2a4d4fdf6754cd2a4e32fa4c59dc6184b694ae30b9c8b27205f7046b8ef26cf2b214a29e3c3aa9ff214d6c2f4d77c2b3a29997dd7b1e9097c2ec788a36b3c64ebf4a725def26cf99d4908246e3dba2e80b6899c9d6ffd512b317e9100910a10116cb249e1d29374d27381a4ce209f5aa74e039b372127ac5c6370a928017fe4a144e5c599f66660bb49a3a41a8cde39705c02d354bb19336e4eae668e7bc49df864d2d541e455a5a382a032b543f0529e2435b3e64dce8e381c66f1d16ecc61a4be2b3539f9cff677b14451ca047b8507e6d0487b83a346c52d28174b298b900bf8428000e56fd832200852b6a7bef201e886ef355f1a39d67c2c337dee8f5448ebeea8c9def74ec28eebc2d611fa940fd42743bc07c03f602c16a7f4e099f5cf348c628e97f696b18fb794a554c3a67cb287414ee283fe766d699a6bba8c21983086063c37e8abcd551396cf36492b9016a67f0f04f874533337c4663461096816880af3d036ab117f14d5151f34cda27901dfb8d316a06b592e5e8a0081178c11b87c23cae9953cc350e7039be4290abc9b6dfcf88d78666d1d5ffb78cb07aa8c2afcf1718ec38b6ae9305763d24f869fa28ca8d65b23599e33620abe97e6ae53ebca9eb03a6498626e724ac1f61061a848dbd1a268edaa48105dbcf457ec124499efe3e0d82b823695217a44ae79ed6fe7380f97479c37392db754490faa9cee89e0e21a3e15d2158be09ab0c2be28bcbdded687223b60a53d0d32f672addb58ef87867735db669ca6f28d9e89e1f4a6327b58e2d5e12f2163b65ccc19c0dc8370a274dd0d76c614a1f4bed4eb9a311f31ce621a85263d0aef1d32892968d5c045cd48845270f8a679268f91cc51a7d5a34c6ce7ff7a87efacabddfaaa0b8e36f4b6a0112263bc5b6ab29cc5e867bc067c13c2f217495f7001514cd7d54b6318b74816af610f1ec2b4b36c5362fd957037cb1fe1e0b9c4e697e83251a60405b161f47854769d028df3873eb3a3e2e8e828f5d5b9c1a2d913c21e07cd660956d9f9ea633577c4e35e596384057c611192f802235c5ae361c2e895d19381b256fde0ffc007840b7c2e69003fff5c8f6182c7f47584660419988fe3f9ed1db92937e9f0f65d7ea52d95110672c3abd4bd2df69bf93e1c4cc1f9bef1958cda8eca8b7f0720412386a091cec57435b2257582d00231876971ef54602521fea8a94966095e6a0b1a37d8930b042af9a67bac69366de14b4e9c53ae0d2c7cdc4df45a4e3b3fcb2685d8a0ee5bd1329199ade7d37e52eea671572796770c27fab94edd5db40109a9fd38cd7a27600fbc10b7368a6a6743b1db15ad0f2f9f227327825b03e36262e42745739450743448ec23f8661d25185b08b583801bf7d21fac81fba71af7da4aa12b41f70fb58883dfbafd6d37945474f4c85ffda6d932a31e24f474a2d707e6c6679d09dd937b7826fa959a633425e13bb7d4364c8411e5d130e313f27f3214f4633c6ab1b5f8eee325d460ad0c7fecac563819d6755c65b0d73bfc93c84566267bfeafc3c11c10888afa7718adcb0bd075c149437cb8e0ba7c2f70cc082b77d1dcf17cc7a6b2d53d51d70ad02642daf5357629395e2349b74e4c304786febfc52bd25e99111e5a30f6c5a3f45b4b4a1d026e469eabcc27641993fb1a75ef52451693f5f2d31476e0a0192eb931718bc24746a70db8958296f8b24dfd157fb13e98b6b06112d5764f2f4e80a153304c085700b06506d0aadbc958278263ff845c518bab42c283789710862e30dd7c33e2988ea8f292001a1eb57cd5d88f34569e926e53b34523915507e042cb08875f008b60b2a4097538bd261faa36971aab3d97a4475ee63187eca9a39b605613bf376afbad5c71a3687d9a82c2989fe6eba57664db33216cb7c7bc3a1062a30c0f914d160d2bc171bcfd050fdb96dc8e74fbb5a19d39055db14207917d41e2d6bb9284aac267aab08c4a9ced8560c995b0c159f5ceccd6c72408c21b20f2a6b18284a785785ca269a5b20f6120e6d6dbbe9da9b6412eb4a947897a91ee384c9722515e5272c326e24edb36ae6a78fd72c45b2de56a6fb2808ad3da6caa2aae2f826c8335ff55da2c2c0d3526db35f5b82b5c0fac9b5f36e260f749f74719b8fb02e0bd8ea01bdff0dcbba5c400b99a1fca771fa8120e55ae6fbf9d04522d8273521e524997f9e723017c9809f1309e1a22d5f31384852089a2f859314fa26e98ca956a45848cb9df32c59c476620cd3789e0aa4f3482d2520e204a9e034b75b27918cbff8c12d6e4296f3055fba4eb0513f40488def1a41cd341a6c5fef8b6039e0ebab0f0bf8317b4c21dce0f14d93fc0a2577b5a5f52cd069963644bda616bf097fb1db009ad07d548f02654ee604599da9fec3e669255e015f3a9c5b41bbf44145118aeee2a83aacfbe67e3eaf8fa5f3af1ca15f0d483229257ea11ebe71d027c23d28b7f3b68a19bb4512508153140792ef0849ab352961460fa9a0038af455a9d3f2a027e42b5b613558b800ee84c34b57161ef671ce1e1b52563f2298cf59fa12e163f30d60943844ce6a1b9ee5fe40eaeebeeb2969fdaeee2d343f1746fc66513b20b1c37e655555817ee6cf96cf645f3ec66b4bd845f7a87b165811c0de0c57f4284b487c0cf0773446864a7a64a30bdc8e3f522b3fc1fa6fabf23ef8fccbb89c5c647d5a1abe57427ff79e96426874007e843982d950313becf42b7e51954138d842905de92aa5c0e4edac465add88b9072064f4e32788f64f311e70bf348da005189ca4cccaf1285dfcee12f82772ab7a531dcc57c8dbbf02d90b6721d9b3cefaeabe60b3b4fd8c90126c97d5f48270dcd50e8a466035c1873abc2e7cfc01d941e435550cad5423cfa9ed41ffb69c5a47b33505942d7cefdd9369a24381d5b29531ef0c7c01f2d68d99e2a604e386ca82d90def5c6afd8124c57ba6b0b3b0622dcb79911022d7e312bcca635cfee4cfd4fd4474a3bdb0db382a258bb4a1a063e2718b987d28a40324c81c51d0846404eceb3c1fdffd71fa9fca648b3836b62a76602d7bd31a8d02b1807fc72ce8678cf6d342aa2625d59b433e897f16e4b6deb0ef86386cffb53bedbb51a2280f2cb67b7f2a9a8911639ec097ebb248ec981d4de9579cbdbc51a5b434bd1c6fa80eb9bf3a56d823abf8d94c1aeecff8703c1c8c9ae18afefe4891442aa072014dd8c7bae13c90eb2615f86eef2d0134ff3b4c68448b0f4665227611464928e23aefe7fb1a653116e20c67254e9d9ffed8e4e8eba38c3d854e851fc060642f32723cf366555f3ecfdf2d8442762db13e0de7c4aecaed97ada3c21438bead8ca6ee4e05b76d6e57fb4974810a998e684afb23de8508979a05e81429f8d25d727d003a32d3a4464f22fc4c5fb6617b6e2637d84f26948aae5b5ac017b735ef863d29247bc5f96062795cbb66fc67058acdc034092baedb362b93d51c57b66c67f0a7374688ea6270a29cff17c8ffdddae19daf2db19fa8645b30584ccdd722df5b6f49eb02076a5277c0d3aef96d88f713170e2ca8fce28bd75f6bba22977a428c816a7cb1f044cadc9dca53075111cf518225709e57f0f706c69e14d95f1cbde042fe6d180243f7959fe2f60950c9b483651ab3984714f026c72f653857cd64510fd5088b202689b3d0a4197910a1f2d8ddcbcbee00b2cbaff137343e3561ea90fa304d8e026b89aae760920e6afb9b4146b00f38fb0fcd23d5ea56eca2ec78dd1df8a9a1306d3437c34d4633cd2aa683db73dee0eb15477e30cacba8ef38f4ef0aa39f93d75d32396bc690c885879fe229b02ade3f4e3f768adaade07c29e277759a9c5d2267f1d29f47ef5041d49bf5d78f32dcaa4ff68afec3d927cde7b3fd7c8a72cc934b9bc13d696f4c16a8784bb9dc02efe2aabce414ac6240a21d2106bd75c48c1e1a50bc8d9f517ce615d3fe92090c41999ceb2f86e7443c2d09a4d95e2a1cf5243a1143cb21f8548a0de0f6f4e3d512c5690f15a1296d7a8aac550b0b3a2d9d5633de49a98dc9c9b2380491be5f13784a748abc5ee92d53d08aedb07962c2f22d1ef0e2685dc2019b644be2ac73105aa9ee0d784a2c30bf3fccc7304c88e5ea8b50afa24b9944f5dc558eb2d076cc51de713bbdea146bcc3671e84dc581b0e49969d1fa7631df96d6b2b93f4e22a2348875582198abde5373b5d05084c180fccf4b0a00e0b5075ad5cd0c76a73ee864a5724060db7808305e46c8417773cd57600cd1c02eb6d51ed8a184ee03f152f587de3aba59a428c8fe1867ceed3e078f7e4a82ef352056a00ac26448c37a30565dc57bbf25ea37c91f0dda3d7d12ca39c043e76cc2a08c49fcbf8821b3e27d6247cd2f30590a45157eec000938be0325f403afe21c0d17b9d5f10de2cae56975dd8f115c4a1457b6ed6b845d64e0da95e24f9552136dfa159a77ab218dd5cd343a275c0b91067c7a44f327eccbb2c3cbc6304c87bce3881815241cb043d288d73d6885349dde45a2730f660cace03f687316a71dd182c35d9cd5316f74c675ee6e40b0ca0c0046f6017b7b45428ba8d1686761de961a3b5a2d9b78ca1db8227a042bdc6bd2c96fbdbd3f53889eceece2a1358095ae3684f710aee61b8105afac5a1fa5c077c0b36d693a08f616fa36ac87028eb25f96dcbd465e19384cf677bda42984d71e1ad575100380e251864a65516ca0c38d761eb8bca2bbacb0c6d76877004b9e0885dfeb40c6c56d3859ecbfce3d0a849465e0588250d16a5579860fae09725bc825adabd91dd58005d85559cf393be20fad561ab94b79112b236b0063b12dcfb823d48567b71ebfb3b8c49d5a31b29b736326d10e2e7bde63cfa233bad388d96df31984b59e653f863ec8d85c49831042e58443b5d613ab70a2f0967d6ae880adf62e0052f4e1596f7dcf62ab4571d72195154dfa1191026a8a63caca98bb34328fc7ddc54768405bb5647cc24531299f1d613bfbef9a7d7339bba9be638298c782c22dcc97975988faed6d56221623a122ab2e4d8eb34b3cd9949797d5cabddf7e3a93c94feea432484f35711d211a16d9031f3dd5aae8074d32df0ca404a48ee8827197971026bb7686180f3597042fc2771c3a22b40253fb94f700f80516effc4fe1b03254629f1e88a13d33d8f4fe036d3dc74b4c85a1952d76c9694a525482cf66491194f90895a76a1f30ab2b13c62282d0fdee9412c3189f7524c65520dbfef31525ee1258c0cbb48a60371ff8b54346dc722462506008a6440c27c43c657dd90200f686c4e306562729a20e3105d51960d5580876676959122042116c60c8b7d35f678e8b58ec0be50772bb8c21cda7ebf1e428189f5f8bb5006993647c434f983490178375b20b86677eb30f7c24fcba8a95ee860c1881f65c1bb3cfce5299ec0c03c50abd2c1fbd6f049cd3d703f1b0f862ffbe50437b0da86aebf39602c5278174db3e108b73e3469aee7120a445ac6fae21f2b77f04c7dd3d0980958a8a8fe33b271f54762db61ee90e4ff7be190c634acf54b1dcc9714f6254a40fd1cef25cee556868240f9e46ac487550d4bb79126e70d84cfac750d2368d9d07cdde7ffe56b0a62ea3442f1ffd929664236fabf60ad1ffdf310bda41c9448e6df5c4d4e2f08a20126e5de91ba0dc3d5c49c70bf3120e8cd7a98081503952c0e554f0d33c566cc6899546913e01e3389e4a33d6eec53a713e13e0f9319aaaffd8795f022a4c697d48981ca44cb9c0cb55c7e5e3ef16f2ecaf1bee027c87dc79fd1b55836046568b2cefb07d3bb48674c2e1229f93c85b0ae13d59bed04f80b68ce3f2fad8ce03915a3ec3bb61d210921d2bbf1a52ae45dd3ce462858febcda144d05547f6b5432b8e8eec582aa11c3fbff8b130a0b71ae36d111249d0566137e0436ab964bb4c7a8dbecb984901c74f2918f6a84e2ac378aeb0cb98d157cbac081bbaa1707f20012a2155c81a6348a49574b9889443ff95dacc71eb76193a73173ac6310950b26b8ddac3c81160426dedb7418e82d788a3301f607fdaf65446c4ff8329e7a6d240fed3a8083d61a48f5ebfa9e3dc77fe5aef9bbbb94f63921b104526916fe75411d423b4ae632c0f23621d0c66aee69281f41ad7f33f98d77d783cfa15efecca6ebe44f5e20bd5a97bbe65c0c40e93955ad368871ec158636d0ad8d0eeca8691536e3468e4188a3f454642b2fbdf557496d6eefcc0311c3b7abe25aeb6c65ab4d60e2f23875dac99b1520bf338b06982f04d582cb6f3b25f2d3e065b5f45cc66831231acf86c1eab018da8ab4949f89fbe0a2f3af90e255fe6eb4162bd90978411ea42e3026a2673b4c342b631db0a1d22578a066239fd1d6441b875fa2917b4c0b29ed99431b7d2c9046fe5d21b3feb65bfad7696cb04b258b607344512f82dcbdc272683065ba1fc4c458ab4fe26a02b05451d6d2ce0734bb06d5c17857bfcd7f090bfff148ebd68cf4c3961ea67f781e67487155e89fdb23d15e945c6f1f690fc1796b770bba8f0cd1f8a4dcf4372925d1b150e1419db4b2d05a5811c2aea2c52bce3553fc7a01571cd04117614c6216f91e320550d1b79952ba1dab36850fbab8897845f9568600f2ff3079f91945388ae7c68dab76607aeda4256132d683a0ce329725c1b444441b7d105130b55d6f19f1b45ad3079d3efc41a222dd6d74090365f0d432505ab2087a6027404d2ee2a808f38b9aff8d864821c3eb29f745119c8c8671e80ba914cd9e989939c9dfa148bbdc2da10dff52d0aa49c00d25f7ff51727895a4778a6254918dcc24e050de98f7093a84584dd93999edf0227e596698ec9bb0e98e41a81729a7f40a9bc2ceb0e26bbf1c88ae365e17a5d186a715755a5e82d294ae3df9631c8bb8c9ab43a94dd14e242ef096522bf945548047d2fde6e5d2b44b0511c81c377be04ebe2c6bb9772f4535ccc2361a0e81c26c03523d0d4021d6127e10b09e74961004d3b24f94bf3a269fe6c5ea166b69e69487c189563ee6367cb34256eb94f19109972502683388e90692757e03b6775a120c94ae68c81fa34fd7b89bc6920481262f5e4f82649a7a8cc4b409f27c3a5b882ccc21145baeb45564373ee5106ad5ef8a0ee8799586aa76853010f17b7a87d3f569d2d763c0042a70670a33ec56d3732437c673a25237dd0945fa2a9c6acd86ab4e6afa2484c7065d3928a8a3b1367884fe8f3f37178fc77e900ed4a3d72577c75e52d8c34d7631fb43b9e1683b09d0272883055f5f3e1ad9c5c780b9feeb95565066cb4757a1c95c5b3dfbcde16a2901be203bbde771a8a98bc1b1d651e965c47fe9cd9545d5a74a11731533cf11bcc9603c889aab4c89d4da46fff02d2499b2a0fedfbb1bc1383c18a48179f8c15b56347884c5b00db3c328e5720df2bd87d902bddfdb9be5742fa1107dedd961cf23255bd3f697b41d8184a65a337efa6b4e7d51fba078948fdb46ce39891e2d38a3245c93e66649c0b7a2a8bc265b1fcc8fbfd587ddc671618520a890d2781ddf26bee9d2053b7290a02a901584d7233fddcfc9c25ee5c2b1e0cffb9e58885d8dfdf5763a545b1add4015e238e028726309599afd2679139cf5d2bf3f214e80fb5db093eccb2f16f5fccb7ce2234c88b434dffd52cd9bc084a21dd0a9c9779e9165f86aeb41d398fffe8ee68eef9a5ed0475d9351fc4be065b550dc976d745d62865fb5f5d40491893c1529ca3242fd31bdc4e96f59471326bd5a1bd3814f59e0e95f0c387c0c54130d534d26e01274f3ad116cc219c0d1a9563c3e93e5bd16a87bb47140bc1653b2922027367cb91e9b76a4bef3ffd2652cc0c401b3a7d9234125e7836d27a949424fbccfea180a93c3fef27358f06801703ea78835c9658d52f3d89bcdfcc9be4c773117b1f26f41fee8b205e2103e326c6e841a16ae5c4c46023694c8f23b2e0fc48d0a180046173bf6a1d4e5984c45bef5a36b03e855c10cf036e587d0cd283788b2f9ad0e853a1fac5199e7156503edefab2e1c3c81cbe22f3fda80ff2af2cf361701ef508737fe1dce6f8ffafce5ce939aa1b83a291e4332a3b8a235d6b2ac4609fbcb3aa8ec703c7c5c794a77d6d468b5cfd3e959ac5696b97eeb96a957c1bd0e347b830104b1874f3a1aa4e7211bb38b1b8ef5111d1922196c1211abb624f7e82b5a930c598e7ec4836b717c65c4acfd0196d6d8253887faaccaf2b62a2ee37735d52b3f214cf2e9a5163fb7673c7caedc22fa6cc0a3bb3555a108eda8ece8a41e7b518952656b11f625ec933208d26d587d15c9fa01f8cfbb1a11101bd1a16ba4e47e907aba0e2050692b3e027373fcdd8ba4968b98c15a4fe7af96620be101995f0a2040e35c63e118129e36e21dd901ddf4a83c79b9d30e94f36f277883967524ca554214692130a26c3106ebb530fedf761d8d0cfc7907f5ddbae3775fa9cb219638704c14025dd6f817e3b31d12bb518bc0cd306a0d3e367b36dcb84b0bd57673a8f3c2b2565f925cd2810ac5c769be507aa6d38da53a40feb8ef9d699df8c19a15740b52c981ba80b3c32d620811b526903326093e6585e9bdd03f91d9ed1f0e0f3ba386c86304b9b271d78c75d9e0817f2bfcc2b928db52ac8265e648a848a181ce0e9efe64556c6e2330281a0f3b35371046ad7c34c6411f300540c3058e96eccdb0b1ab8b231b8bd5457a0e224ba370c4071b74c8bc4b44233858262d4c2f0ca2b5a8c23dd7ac4a50ba43e7a42888ca33e380103de631dec599345c72d68965b732c23c8535ef041650f73b3143c88a5ccb4c41ecf488c92decb35256ccc1859dd45d578897f0f61486c5b2822584c5ba7c345c53c9cbff1cf6d4b2b82dc1008157e8cbed8ac8ff65968cc580cc67dbedf4e4a2822873e5c4e902f10763beda71cf6414357850c7f5d82ff70ae3152555e4e22b2c8cffa89420fb27f20ca823eac0ca4f7fb75ee1c279d6b8fc2e20d6c4201911ebd21729ca3dee276288c42ca728c2ffc3c26530f345573dc42cf9e1cc6c3687a33d7526e8fc0a3d2e2bd8643cebdc8f6fdd66927222d343eb527a77b0c9163d9ffda8fea6b9221036019d754049ef3a8e56c2b864aa41ce0c772bd380beaa00e57697217dcd53a91e424ba13ff69014e4af87f66150d1a9272cfc093b119810d95b5b74fce6f6544858cdb6d3509cc437bf81f065d0feabc798d194185cf9c16a804a0f39b470d64d44627d324b0a1521fd55cd334e8cb6523e7e229e06eb6701e0ffb0f8513121fe15ceea060b1b9ff0ea17ff61996240de2b1cf75d427eed7b178bbdfdbe72ba09aa4ba69fc227ee4015b12d355128a1d0b94e053ba1a80e444b0da7fb3b3df373f383acfdb4e3a67bddcf6eb34dbfa4789e322550c39691f82f83e3af2200c6f788bac5829d57869c93ecacf0fc37f5c5a8ebce6d63e97d976fa080441d39d4ba241600a91d3019eaacf3e5843c81c59447b7d070ce090adaf2c79893a7b449ec84c2d67de1b91f48822db6a571c29f0b7ffcd0650305c84d116c48e36f44bfdaae1218e21d5556bb7c079be224a113cd282ff79e1befc5f440a9341cef98daef7beec1eaa3d0de6dc159f4e549ba953e5951189fc61f37f4f1351a47d7fb065fc42e581ee1875bbb701c5ba55423dd2de056b62c4a53ddaddd18a3d63b7c2c6608c41f6bcac8d7f64157b966483210e40049bf8709f3939281064bde4bd58bc0eac93583252b467994ad9cf559c9947f564f7334de95f127630e807b421bfe99dae12ec79e3c40c730b985f4a12a49c6b439bc10251a00e3aa0d692cc99b6e4dae477c0439f30b5ca41ffaa53ab043d915a18549ca588fa7c0c60fca747c655faad43032a4ca6b254f591c470f4271bac25a6c7121727c125e8dba59a3e2e2d974dc6eb12f13ae35f01436260c49a3aefc7698f73843f979d205ad0642376e5b3903fee531a043cd12b1e632986dd2181afa01697be04bc5f72d7223e3097f1ec52eb92faa00ce4ed08d99400e119333ac0cdc2e51c01c4aac280f3d9fb276349eb75362e3bfa738a2b52f86fa79705faecf5334fdbe6b8323907b136094e5d8afe2c1f72a4574631bb3b6c0203f65db7c47270c34ff418a6cbe19bc9331311f497691ac4431f501d76dbd81d715d2a4cccc4ddc140cf207312408bab6998256f564e0b3655dfc88cf834236c1e121457283e03f1677fa8d7646e0eaf02eea542a25eddae6123e3ded664d33961e9ea5a6f4f9d26ef5576dd75dd9fe3111150fa101c2c8bf4552829a7e1c3350033df344cdbc936540101c2230175181d7c268bd5abb835d175bea54ee22257d24ea0c2dd83bd50bb9fe302d2b0011c5b270bf374c613119ccf2c56f643ab499ceec1a60c6a57dbf82bd54c686a6265744ed30d3476696eb419976173578e1528b1ef718e30e36fe7a79d0203f236e67e83b51a3de50f55cb55c4520207c9638aca56a5a3cf97663cdcc73b0da00336fc9e182fe8f6e4f3fdd5dceb17cf381805d14882fe4c3a21a6efcd81321170eb2f8c5a7d82f73755ec8c867e3cc93e0b11b09c53180438f44b140d957af8434f8479f6fa4b92109ac61b40bf4e880c073d2c4d58672094937a38671d082c3299884026d14ba5f7707730667cf69f755d70871bf318fd62b4340b3609370afa6f70cfc2b9f05f1a3e19e6cff42cbf410932e909e587f16af501124e91996a7190fd01e06e69281b2ec19060805c74d564e4e9c7b057afd8ff3e8cb8d8d86e0317a64e09c2168bcf33c2d629325264375aed45ee1460a4ef87d061a3b315cd96a1f42074572c23fa35c9f0dd34f2a27323f59e5f03039683c2c9960d39ef8470e8bae2c9bcfd3b70fdea9a42f67b7eff3533b2326f6c2e1376010caf928b609c604b919b8a6bd6acb29b4278eadddd0062d7ecfefe459437a76085065b81927fa21916e99d91b92bcf489aa4d393e0b406c7f60b4dc36606c60291bfdbd2a8b496492dacb84f8ad5af345faaeb6639ed2b2da4601b64dc91f89c7a10dc3ad222e76fbec671ac47ab672183bac56e05d80f43909f34d1459f6fe3562dba6a829e099f25032b8fb29ac8268bb3691569c914047d9c2e670ebe95aa4bcbded7c9afe9fea2c00f1dbde33480adb54f445b494eca11a15016444692289c899cc4cd3793cb3108bda5f4469ae41c114c1f48284515441aa8fecbb68e74191e97d490254171b59d09717667583fd9e1ba3329553ec6460a0dde7ae1cf5612e05307221a817f8a143a1d932462daa76a95b416ed3d7a06c07f3f88d6f29ebebc765556740eb03784f115f351fcc7c091279cb7c0357ccea1603296e49f42c067e6c5bfa3d2d6efa5df074212a1d76a90506b72fa3e94a12784fd818512f0d4c9b81e4c27191c15ec081c472c23a4ef147d68c80564b5089d74d4128ca9652c21304c0cf8d59455b60a712a43678100d554b843be4d825ac1d22969b64656006efcd60ea2b80177722d7ffe31b54458c03ca0c5d9485ec5bb6948f115cc21e748428b8bf7febd908de6f2ea8b05c21dae8395949302b61f7bb5e38e38c4851020a86ae321c0fced8d1abc36ba55a9e8fff21f59d621db717c8f47eadd030ef93a6d32ca3cab0f2877c0007d2ae4818beb985d1dfd621b8a3127b17f4f36590f756f23b89a5f77a79fb862c56769c28916e8d7d3c77159a45631b074455a21e5de7413a408db858de185e0fbe632ff9882f0443da357aa3de5b9eddbef22a1cd814a471e173129b0ee643490435d66910c5e49445b299146cec8e488d5c1849b96046a652cf4e46b17a51303f5aa79d51ee41601b16944adf6461deecca2660b42474a92c70786eee631ace72ffc05f5391745bbee4f672841b5573efde2722414e92e3b8aeaf457eee651f6954655b6ba817c8f9d0183051c5412985c3ddbe10e2d3833d5032324f03ee306076ba48aa7248ad1dd0647e5c491256df152898886f3f6028bcc4e77a4d8a82be0917cb831b82cf43e2735bf44865720cd9a44e4b52fde8b1f832a1a72c3f748afac1e8bde6d9c640e023b89c332fce863ce536db5b25a973b3884399ba98c5391ca11331c070e110748a2971480b43228e5e313f400934be2af93baec16b8925bd1a9db7272440b6861d655303ecf6960a86122f151a298286a0aad016472103d262357e538ead50f6a096486d8340e85d94904c018ce526a0e4c5c454d80ebe72259e505e376384e5ab9eccedd2d58c77da5fa0789bf4e09f03307ec514d8b39efe994b6c8d2d4664b59f3ba68af41e33100b8f11dd92891545b674f080aee3cb7a5c5695953c6bc6660867d31316b705b73d2adf02d4b628c827ec0e59e4f8d0a6ec125ca9c338c72a8a20c91bfa9e3dd1582598f1927dc0b5ba7f07de65ea40805af19a0f3e0974e5f6075348559f44c3b8b4a40ac90f2f8facbaba5e6bb99c0ca3bd565e2461f1b35918ec2553c659d0cda4304bee9b596bf8e1456897c0f2fc31bb8978865af53bd9db9f27945b9798a661cc2d15a6a5e8f8b60422e9f4f3b890a82548ef88b45ae96ba58d0adfea7e111bb0af18bdbab213b1a5df0f0923b819ffef24e0c2553bb1fed71946d704527eb1ace874b8ade223443eca91141beba6cb97ab774b42ae38905d6784be9549c08b6c514557d0df8305af8c9afcf9cd76ab4264c3b4f09664aac5b0716142d3ad403b870c70e6f9c14a1ffb2374f551efefd93f8855c3a32a5db7bc2396f7364ecb6c262c034d1d5f5637a35fcee94010e21c5a4f1fd434f57f470dbb020e5dc12bdfcc40c65a407be96b326151bd4cdf0d0fd1f34290f2caf65c0df9a080fae6bf848df0b4387447f736f87b3d294cd3bf2ed7042404085ff4fc1006f5fb8b08eeafb13dfbfd730f25c3adfcea8e1bf944ec586e1191eaaf8e70a9fe7bd8f7f795e8a6da4704419b1fa2de4a7e1ac99d3342ed1ffb955174d30faa42d32c551b66f8295f27706bb256d07b55c766216077ecbaffada6f433b72c9442c1d50eb6debd91e36eb6cefada5c966eda22f2fadb56f63f43f03197e0bfefb566aa7d66458c952297e7162afc1068abf3712663479fc8b0b1047dc9d64bb99e6ae6168dba68a1447c7ab8d13105d1e7f96444a54444ab8f0902e74276227a99accd9e467cfe577533181891f2d8442f2b030d951eddcf2ab704bae567d3af248bc0dc3828cede06d7d858a6f5bc3bf823d9a690e6ea8d90d1902693cc2f09c7d05dde64d62b6dfa3322c0946ccdcc519179841d0fbf859d5e34a65e12a9163d485147a206b9ff98a5c9eaeba4543d338a4ac8f737e8a763eb468f232dc1a238b2a4dbee173a25c05063707572c7aae46ae43eb8f8c5044b63c38af59236da2fc522a70f03281e4ddeac7237ebcb5dd87b0a76df593a953713b1aa884ea44d1f976578755c8433ef6df2e9fcffea795f252dcb0b1e7e2589eb9174dfbd328e1284546faf60f37861d13ca625d9b93a97a84459d17cb87d1c2293c2d9aaa824e2f7b0568b01a787d41135a6649542479e202dcaa04f4b7c4dbf35c9a403643b4831a1287eaccccbf6c0df68ab49c47ecec26e98d6c36eb874ca2547501b6ba8eaed95f4be9097eaf0a6390ebb82af154092ebd7eed2d93fcaa894f90a535dd2aacc6e88c6f6435eb6b0ecb9ad749345211232247036cd0b0f8a60791926ceb3d39b7d6b406069f6c28996ed52ec86358a3b0a9e71d7210cb0831202cb8c818c3bb2446e5c249189565da7a283fcfca04c1dddece37ec81c56c935cbfde1bca57e6bf41679ab327bab312fcb8a83feb7cf267b6f0a4643c48abc50d20a374ab4b0cee3c83aa68cd0ae638ab1be613e2eca9374843821adfa0344009622d0fba0b86871cce28b19e08c3319f9a4642612980962bb8abb8e3ae33ba2a3bbad9d926b037b0f0560999420a7af7a171111453298dbdd21c1c66a037d436ec19736ca63b04e11bba3399678752e83ab0d27b2f9e1ec485ccbab64fd8036aab0ab416e9e137941facc64d34514039045ba982cb847e9983311491dcb9cd269f0d48e0c2880ed282e04e2873943a4ea8cc09d41ab8596bee3f4acb99e3284bcb15586a08d8f5e52a36f76d4b733ee1dc6c4571296f4883de7f3f346299fe5c7764e18b6ec39438bff943c71c9bd4a608d6dfd4a24aed1658c297924f5a13545a81a454e56bfce905c47e686ce972466fd36756b2bb14a93e3ad0dc472d5e0a8add384c74314580b6ee7e4ab0360e4224b991083ea02dc8d47ef46699ff65194a48313c036733cf46eb09720d5a6c2f50026cfac76be68e42efe5e1ff9d9b2b99710fb82dcc1369a9fdfb54db923fd7add1fa06bc2772f2bdf81e837866002a647a4039a057b48097abba5623650cdaea2c644db6bcc759ac5286e4ea6439618114ed0303ff9a818113200b3d4bdba2c75acbd231912f5fdbf168fba1a15a1e8b1926bcc01d349763f15c0ab3146ae412fb428808d90c423c814ea04578f4101a62b36a836ab34afe6ac17e4f81f06c55387b1dc8fc88b18c9718c66b8fd401954034b3cf217918457882162a7e6da6e2f1dd8fe67346574f8e1db5679594610487fb0ad9332718ded33010d9ed72b4f0bb8f649ebabfe80c9bad04327f2532ca9a86e6d2021d3c9689026af2165e98d823e94db296101c103b57e4e5aa692e1490ef1af6a97f3bd4af48240c154d7a39573f47322229408bb977498d580d3f0a2c60fe12160f7708749f3c0a0af3177d0bea5f296b24f516d10de55fccb646e02dfc7304d522869d1c8ce00b3641c1ac39176197a7a163c3aa72e67946b066b7c6c684612e36368889740d944364b05931c2b14ea87feb71a443d97c38875a030ff26995f72633d95b6019ce9686d913b61d94931c5624563512b5f4ad560643143df1d3ac04e7d74ff0cf66b60cec404143a8655ff8ecc1e0bf1478fc8310e3a0d007d63dd0cb12b3f3a3a5979e2e3fcc80cb1765194e294e065671c20855a2bcde1fac0d6ca6a0d32323c53bc3e948a9d19dcc018ade3edd9b56271d1628b45ef5e4a5328a343961b536f36643b003ec23f3058590c82c8adb9518a445405c718add6cfaa5a6f410224cbd5c297a68a08424bb5b63a18e7a59eb8881fb1e819b073a667c5067973baeef2762f1f2a584b6a036017599e673c1deb52c3c6f3494ba6acfb08c7808a6add14a77192c76e29a5119730a0d7d76f0de0ff2b2152bd951212003d618da8066fc122c04a099db92864d37e09d64fa01f78d541d40c8a00c3de55ecb8c300b71e17e3a0e226b4c875fec1ab6e1d50995a65fb5b543940fe94602bb4cc8126626bce1c817a0b69cfa6bc9ca0593eae25c031a45fd0316d8186357c7f67c8bb5334589f955852023b08d44bbdd73ab2c93d6bb705a53fc6b45658947e79bce58e2f0d96bba533980615b4bbb198988de9d444edf8e1af0ecbd5b8ce77b3359295ba00f8002d8f587c15c0588a4a52c3a06264657274602feefd3cbb0ab4d9a9505b8ab01d81d35ad10952380fb56595596660f8a8941cad2135e16db15f808526b6ab04de7bf7bd80a0b1457eebdd53b651c04176b73a6e9b0a5c04c119e38ebfdf504a5e9ba8172b37004da30a3ff9703c1000d954294b341bcc7c21171fb71cc0bd3a9e6a6d9192062fcb7fec64877251d8c5deb246ed61cf17de4199c4f412405b6b02db099278c3c5efc50aa3d83224251c2fb3f58ee4e5ad5ce1250272e5e7cfdac7ab2e806471e494ce621db0d223e51828436f35036abc8f385fed763103ec9b346bd4581838624b1c301a19275df3ed8011a941e98042726d07e1c3597a2e520f6bc2c21a2e9411469335441762eceabd270793d20352014ea12637b26b06ef88d30ace7b7a5e35c126ed4cbaf1126a46d64b621914c3b16a7ea7d47086befc7e6c6b2e35512f2ffb7d26baa6d79098b987177fb3443b370e9ccfe408d253f3eeafddf05f904d0bf6313e2de3f6ba3c3f357ce082323cfc7c2548510f596eff12a43e07d9d3c36d21bab43a851505cb1b22595b3d7eec9c80608d245acd31e6abe2511c56b77596bd0e8367d2ffd3d25fa0c8635d1eafcadf7814cb6b04b00219248dbcfe59d0a091d3f14c6567b13fbbb4f86ec498a40fba0098cd5349b15d304d6e4b48cb246d146bc9f94fe7ca7aeae487ce18558951d33b1cf91d4bde82d86de565f6a9983e3afc60038868c3fda3c5621ca9524ca298c71940ce05ca7c3a9ff1dc95d3c2642a95552c61f632b70dd27950eff8442f27a18598114860a7a48a664958412b18e50f9c3c645a701f07e43b4dc759e0dc3a0691b142a6f03f8ce9936fa9d0b2079432beea292838c25dc3c2887e9d69338821631eb57851d5929c865c9d13e1997f548c78ec4d7e16c54093534f95b935cd7d199c09775f921be6db53bcf4b3afdea5b3ca5d0237bb00e7329d50548678f985e25514d188f1d90e40f930fa888dea858d99f9672980f40548e69df387557babe209349d4a7a4bb8b96162be762ecc99e76411ad784bbe41d7a9a290e0866e3fc77b7c29c55609c07d19057585a906eb156af482a2fc03e5b09a0d99d2da61c02490dce3adaeaa6e009e5ad5a8038f352d22cde149c1ba52db80677711a94f768b1aa1151185288509581f1ef24030b1819b7f2f10269cd07f6170e2650d70ea7f9a7dce501ef7b33ec6336c8ce396c8cc3094b564d298d00913188eedfd7dde658796218e78fefcc25b3db4f9048ec2da26a52cf3fa8e0626f3b03e67b1dbb13ad62ac9395977471b321b3e5f7d498b92cd6f287c10b1b173d769fb38085272cf85ffb81903f3514ab403abbbaf3539d1dc816f6f78e6f5e63ddd3bc0df1291c4d87e2a901d21e404f79c56a4178c85ab90344afe3ed9710cfa699674da7bdbcb9675276cd31b83db9cb516b3b42653238cd777354f4303b442065bcde8ccc0aec7d260043e6ac8fb847f838631d9df38ee7eaae62366921d9abd5a8f319595128d41e62f9e5b2bfa0f65a0f6e327fe09b3711ef470e102fe38168c5c38b70a4812447a6874fd7f81b4475f45f342a9284b89e7ef280fd2601cd7dccd872c2c7d60ca7ad698d397ffb591471892707b178ac62789aa1396a6fe8ee2e41848f000ad6cd5f8820e186a58aca96c6e7764213ef67269f11bb0436a685d8a904587d2cf0d43d8064d4df76bd9cb98684a481847fe32120184129e9cdcb029f79495f6420a3e501e313875b2bee7e97aa92bcca0c1a18027a4a3b4410c9f65a3fe7cb149e41bbec766d3267caba940eb510e2b81427b5887cc5485aeae84888447706a897be3441839a80bb465b7e3a484bcf40668c25c2681c4166e9a85ce6da5f92d963d6d7ca8f0021b7ef801b4b3d00641bfeb612404e092315cc331babc2269db81ba57f61f330fb81715e83d0c753d4ed023e441a6c3b1b049f6504e415a5b2ae8b3565a3bcc786bc76f0f9a87d8e0878580fcd9b5ef41b01a96bb4f310fc7a85560656de5e7de765f35e73452ed2f3f71eeb6ff7d353559c14685bd3681bd6b89fa6025511f986e6021fbb0a07404301b85ef8055eae4878d21829c3c2914347af6e7e3c992b7588a816a7dee6b124171671edf44ff43f08c393294a96c3888a7966ed1834b05b08c69f9b1634446106ca4c222f7027240a376933302c30157261fc1dcef9b5f88d52eda85ecdca6fa24cea9a0f18a93e88037a7e6f3bc441d7756c55884f4f3062d51d909f9be31001ae4ae213150d0514d6f5b9c4a6967def23de8ea98f261724d3484e8dc8fae80363caf64f57016fe5616c3afa802575ba18018aed33f92a52adbbebb2b11d3c97662e099f488e713bff0d611a57063338348dcbe50e1900854eaafa730fbf8b3991b68031ee9236cfe6c00a15986926ff17bff4b453e1ef67ea65bf2d9c4f1e522ace5f2e06e235cd5ff7434e8f36f93bea57cf8ad713323e3c56033fa1668439e11dbec208c769ea1130099215a1f6be800b87d6be27401a96ce53f4db4baac504971c7479190ea43273734eb8bb458128ee7c8c2d1d7b06b762229afa8f363dd73226c337c76714aeec810ce5778594ef2b843eb1debe80fe8007c999ca32131eb115d29df63bdfad8f441bf530a2c660d0689b14d3cef495fa1a2d126ef2c1d121d4fb7d5b4d527b62633c4df8349a7e6cc7e5332b73aca1d2adac905393b9d8f510e03c8661732ac3d7a2a453ed5994e586ca9380d0d3aa160be38418c9af546dadb57f131f23764b42d12b77a614581577b515d4999c4c4420d92bfbd7a97e97252096733758ef9af20d453a26bbfc825776979f6864168b14b0bae593a59a42037d848026eeb2ec5a59e232078a11b3c9e1a809b70ced3d5788d29e7a04aa86f18df69240265607ea4a0b0415eec49e01a0c53f26d46bac799b8e05955814f2ce0766de4c9de943177f3931f3face4a89f5ce5b363da8a5633c7f0807a075671dd37454627f27da287a76e4aeabc400d3fcd32d81adc080b609e41aa339cb5a95e1339e54341f18becf197019963fd948ccb96ca06e8ed50e9f6b734ad8360f5903c3f143717359ef50cda9238887c4701acac5d3e3c59cedbb793878d2dd3e37ecca293a3ea281918176dbdb07565a53a59b76d11b6baf39d61447bb2614a0017cec1a4d00118c1ab03f73009ab2ec3bf75fa2bd3a2e60691f242bad6aa88d4f6131e43d21a3c3b5a74924a7791cba93fef21438ccc70bf59631866b9c574d03847cfb0acc89ce20f057fad65843f87594c25daffdc457a286fce94d8d2d38f71843791aed967f9baba75acd531eb662684c40d0be61e335ba8c67670a221fa9d824ed1d6b3ac1269fb2660f1f10f8919c6f5bd53f4e422ff98f9b1e227e081fbeb6eb5d6a50aa3c42759793497563aa63bb181a455836424b831279126fe4296fc95558af2cda4785e9072910001ca8c6b323aab949633df71390ab11a6bf16d00946199bc1672e54a267373aeb74dd91ad5cd24438c59a68c3c0d72a3db9210ff0a8 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/640641.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/640641.txt new file mode 100644 index 000000000..db0dde03e --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/640641.txt @@ -0,0 +1 @@ +3a0b9d0ebb7e3fc9acc3f7dc204d5557c432ecc9a426b8f1dfe00aaa96bbf05a44a0433967d95f07edf16c3b1782f962d6c09549e1c47f75bb05f9614623c8a701fd573769c0cb79938f585aee014b804d50f2039050a20505d775c546edf30f33a405841c141fea071fef2acfe358121978a433ba8e1615701e6ba7a40eb991044fa6c16e73b3f1fec55c47726c1cca6343e30a82f3f5a7ec8930b8826d693116aae80ae38f608253d71c97048340d6c03e95f910a799d232db213d000bf79545784abfc9c8dd2aa8dea58a5312c5ff927d97239b79144905a6b34cafaf60c86b2bbb1bf417f72060c95baf152e8fd610662f820702837c871bef1f8a4a3c63384779e77f21c89e95f384720b43a1eab59ba954820d597f606466ff0faa5f9f0119599590a594e5e1d9d774f8f568e29294d532388a78f92ba24e3cee66b02b0f8e13d87f959ae79bb769948fedf1512d619d3846b86d3a73c50d039d7a493e164afb1518be8b6a67fee6828d70a106c75586901ef572a5ead2f14fa63cfd6d4342a02255687234406c33578c09414664dbe83fec0f7cf5a15179204bc2c3183a10e35d6dc4e3f87a8156d78b1cde6ac2cc99fb3031379738e2c3d045a0b4cf54383d1cf61a4069558e01e80b6ec8aa6a4fde0035f4fb76dd1b0f7a503c54035e3c0d4ac1c6e04c2b99447dbea1c55edea77b1dcee93849875e9bddb06b54ef5c95affdad925c5c17cd7b196ed090843bfbf38e8f419a22f714ba3a876b185c1ed01de0986868afd78701b71af8d338829d68347be2fb565758c1dd12014cfb40888ae244173c982db447fd132c1779e189945c09d74d3ad95703484a2bbc855ab712e01bcbcb06ff8c1605369e6ca928c5960dbcaf3862ee5c66f3810d6cfa5e2f0d91fe22063bb551e6b890b8a59189ed1c48a7ff5bfae45cdb97aca2a70f4054952cedabcaf4ed9462654cae7e880bcac24d92c258abb894acdb77aa274f0c77be2c222d1131044e8b8d0c370f3218e941399fb9d738b88f776da1d012a616b014947d0c382c2b853313e47f013d3b5e96b15d9de25fa94e5f8d31a7386e55318a2abe858223b7483ecb37383dbad3ce232fc83762fc9af8693b5b1dc1833e2d53da76c1d5486d075799af85e8d24e64e41063d3bd5ab95ff7b8b2997c3260797c2ac1e822049c0edd03631d1ba9b37aba6378b44b0c04691aa72352cc036368cb0f53b3e42b26c9c633c74a3457d2dccc8a8a0d112d3ee26b462e487a5640688fcb613e1506a32fe7ecf7ca99f729a5f5634ab6538b54b9e0d6167ca3d84241ab234bba36e22e30894fe70dd825b51d8b08e72948e9569d3bd9045230ff5446ba646fa35d33f19f1e574084a7939b35a5b7710f68d9f80aa050c6f7f9be731712f04b14a4fd58dce6c765d59d46ec18c2def85f561e6abbbeca0084b65038002548e836585926a9f5da625e557d1d53341fad0d58211c1a001f8144c612391ee67959329782ed2b485c209b6e8bdb3f38fd35e913d9cceb4821ebda8fe96abf4be7b073e1528a09098e27cf3c3e7dd5eb0dda1e9754179d04173a2445281ed391f5e9dec812d80a7e4a0b311666dd777629c685c1b2d848d0003816664764f26db802ae10b9e228c5f1bef0aa3f738aa3e3523df226eedf1dfcb13b876e239e48730d195cd543cf136377c088b7da9ee47ae5c7e1ac5526289e09643a345928c746664ff1b8b294a4dfe4cf778d51787d7f1d962dd6d47052267f106b674f52765dba22e93af1efdf3256c6f5366c19de6ae0df78d288e8b48aa3dc5e8e158e2fbccc0411f752455fef557cba015710fd9b6f4322ab140f8e9614d5e1af5ebf922dafb543dff1f5b10e3baa75706f26666e41931f4d2ada6f562546fac00dff45125f6924d32ed46d15fd1a1be920ad68f48d3344a57d429244105d98b815be21e5fce01ad0352fc7a75248fcd8f475de5ab87e3c353fc7d5146026d83e50e5d15545f7ebfaac2a1ceb89da18d29cac8810ed66945a3a1359d61f6771b14c1341274a7cf8b023ea1d7a1c80f48f54fa8a6aeb6898204bba1968196df97a71ee515f07241b58b8df1775a04c925e494711f50dae2390f284fb82909b390b1cd06638fb145a7cd8af9055d8b4a33798a21d338cf7262596d0dd64b8c16aae3e7cc2294b265a9f92a72d46afe087a861bc617c73f8ce663cc48191063bdd4a0df4048d12ad9c02fc02fb26ba362a83cbb89a1ffd586750fcbb41d6c89ab2373853b01d2af629418752163b1c5984a3b9f1d52cb3f7170fe59d040d0f625cde067a497fda5477abdc22ed3889cd6ea9c909809246a63fa6a4f9324e20cc5eed1cac9d22a226b45b30e562b400775f6e2f3019a0a2a3ec9513aebd4a27b1f0bf0a0902676af1e6b8d36dfdc8dc1bcef37b016380534b37778b4512ac12c30eba4486be4b4f2d14529a2f5d2f63d63f72045a742df219d8d5d8977fef81a192011be0af51273de3947ca2d934e0370ee3d23c525605ededd38b3550537e8ceb82274fc1584d9bbd21ad19750d0b82b25b8e3322b98ee9f632907683469c8ea2cc302b8a5bf8c56cb0c1602db9a45c63d3d0f1a1e918724be933d44f54fc3f7de61f22035f5cbc8e1e035d59513e91201f2428403d01e9ccab986ce66237b887f51dd0d8e05c2d7a3d99b8b69a7ce6187d516d12dd76077c519187e69df7933fd61dd457f42dfc2c3d0ae1ec6a4752dafd42352c724051f64f12c381b4698909e436f05ff101e43dac5f312cef4b313c0590076cdf3a73d532c7442aef7076e93c508f2592195208e1216936d3a592bb356a4e4c6ff4120f3c3ff67c6e632d20bb2f5e1edc34519be8a3a6576592258e747954b1b4477f64950e6face4ee4d36c40f316349c0a4068276cd61531ff75d8c1a11548873059504531e65bf2c9bfc080e25e84b8597ef767f4f9febf76ffb54e1dbcb15b6559a2098d443d217f2634c69d581d0645d67feee9b443cbec4422c1d785cadfa6d33f542fbe267f70f70eb216d0dc2858ba8abfe46c76d577fe1e621de13db18842bbae2bbdb8118f96fc540747580db39cde279c3b6ba90f4c44c681207ed8177de729b3570ae2c02d0141ff8daecb1621a7b38ef8faae21af9ee53c86a57b84cc558f74e9979a2e91ac35ee9fbe0716f235fc045da0135afdf9235ce04e61312de0980fc44bcdb1e08e860f6caced820f984e0ee2e4f66a2f152ecead3770a26ea344f28bf5cf4b76f735e85cdc390eb10195120a804ce4bf1a2c578b654c2a109fe63919a71991d5ffd028c4f4056d954b7c989b0e4688b95bed8427f250f42b778e6bd947dcd7084e823b2c384acd1811a12f602cfcc8127adeb6e132574146e9e7a4c8b8d4653570e6d349b1e359c52b60270e3c35af9c006900de252321880b6857bbd498ae568e25699f26ac81df57c8a7b9f1e2367407b53750e99a79ac29dbcb6571f4d7ae3e04b06901adda058a24b55f506defe126c45452288d809e02dab6bbae12354b6a1372a64a794f4e161ff17ad9c13893987d9ae8672e8060850f99e0de0142d12c21601eca9bb957196b6ea92eab374dd53c0462c28933469f7b7416288f9bac24649c60793983c996a061860224303c7cff7d7f36985daeb7cff6839518cea28587014d80e216b7f8ccd9826195d52545e23ae5b8ded408a7ea93d7d3d167b19c810c733b28d3739e5ff0a7848d0ae0c012f637f85366d977957697f29bb804cd4510d8d8d7cef1c29549f721638b6ffa8f12c1814f007c9c2d3b14561da1bac1711aacb64469cc8f59fe5935443cefc51295c5331ad4cc7261e30590ba61be79827dc594980e5077264b620f39f2fbcd4c321bb72e11ed16fea7f7828b0b8466f4622c46f8526f08c525c5eef7cc6407ead90f6c7880b7c683e0b986a3d870ae43d443ed079bc311fe6605e8cc61a9fa7e72d66f8eac9c9e9cb708d0f0ed2e28b68955a5379f6b74fb30eaf93bf22df07d3379ee42dfd93905853cef52023f86c196ce919fdd7579188b50d153c0921b540bbdf0e29ce22e7581536fcc5201e562a8c007e4ec6823dcbeccdd5b32a4205b821536ab015cd135dd3e7a3df670b5e0150263982c5e7df183428f008081f24d41b443798fa958bd0cbadec50683a36408323e762eeeeebca1154c62ea38b81dd304a58de67db0e2c000fc2e02a802c318849a265fc64b6c30886e5b238c45f543eb6684a9c59b65f77b7d2fd1d751d2acf6c963259019721ba57b5b28f8f2c642fcb6f5c59ec7ff207c0384539e5136e0ca6062d3727982dcc911e0500b691979caf32d69437c67a3f0ceaad6ac43f59d8e0c5ea2f82aca0893f254b162ed61ff25e18ca191efda442f88a3e26db8340ab78016bea852390f19a78b6f69c5147bf8000be5907b822acf7113f044a81545e7b676dcf6d7af5ad7a33ffe03b5f712f47cae7ecfa3db5820f450cb5327601b19166d5ae40a8a49eee096719c981d6018ae23ac08705379a4ddba310aacd2e56ee786b7e4472e8b38f58d2790acb1b24ca744abee869da83bafb09006e1272bb400e22cb18795cedd621355ab64ea76ba947e7e86082576fd94c218a515673d8837d0fe81753db8e85f029df9da21b60fdb57c67ea58ccbf18b1516be2626a8828ce5dcf4d2b55b61450576f223a2dc5f8f0e3c8cbc5f4d9cb984d3de2586f205f113306c9148fabe5656a158f5b6bf0b7168fb9d2db9b1e598db00305581a270e474bf9730fadca5602a0fecf06a640436dfe6f8fcaa0f59d15aa18e5e53b2666da6f3e4217076153b66e0bb723cda2e5489db46e41730444839a339fc56876582d426e39b7c1b9aecf7efe9bee7bd2bd2debd70a6edc9fcbc285169eb95aeec5581191b3e39e891c2bb5fe4a150048f69abf0ce7a6425850e74cbfdfe60d99e1b8a5ec3594e605d8e9b2edb248e056c39b4a0ab710bfc595e624b72707713d86514489d48d95428cd44ee9da2e1fba212def26244359f696fba928adcb04fae662c5a475fc4df2724396c21aba423502f496429e2c22e698c0bb8c5e621c1cb1623a942da78f41b9b6458f12bc97c4caad59e0185947830df7229c173717e0bb8bfaa3022faef2c049cc0e1e164e2db6e446eb92112754d1523a1287a844e88ce17af0fc159945beae02c0a25ced41ccbd44e800ae0e42f69e1f5c753c6d63546dd4cf3ea172abecfa503723d9557be90edeea54d2db116d1f5869c28e667d7b2ea2dabd9127bb28b554587c7d6d8c75a7cdd4dcea46080245182881fc5d4bab746c3e4201e776a0e0211541b8ec7d6c1388ebaea521cc88e1f650984c0eabcfe8434e4e00d72c0a52175b10d6df3f9916dd38729f5c487f5bd5c8e8b71e869ff1935d3bacf0410347c8e041d7023d0061415f3ed3a02a195cf65aed8e7132408572074fb9b4a56f496772a47f5991da39ce3ed1184dcbc0553d7e92f452d05435af4fcee99fa6cbd448e771dba356054bd49b7972c322963210ad9d44243e752479d0588598e6c2f0a4f4e8fbe03bf2481e8be54633a4a0bec74116bb003a8f8a1d453d580217f97d12cf0dd616ac854f6ea956f15f9c30c4ac0cfc0829a0cf826575843d43c2b097caa066b87bc2eebbfae0bf54680bf1fe228066da5883d76632d36b83ed40472eed00b5352343f29c3a1b59f5b7a243b097efcfdf0f254e4df726b540fe0ecf7718f1a46a98e170674001ebcba5ba8df6673acf095257ce943805fa8253c1cb42a06e6f3b5c2a138dcc3382c48dd9abb8b40d412271ddcf85994926741c772c7af9bd93384f33efbf0fdd803670ccf990ea314a263d155b984e427d979c23a919c1d6f6f6190d024dad0f0db1a573ca770700ca405e7aed373e68cf01a7541108de3cb3f731daec23a4470a47a0f0bcfcf3ebaa2340ad0e63f12fa0fb1badaead367302a453fe35a1817f00929da4931acc5d6576134a761ca06be9c5e7eff8864f4e8e2aee3d84c0a3dcb6512ee5385981fd2e0370b22a9e15e59c3febb41fb0544a181271eaad19755071c8b3d5c2799b96f9cd268c0702ed18b19c4c604fae87000426ec03c9bb85bd15779886e086323d59d015063ed48be7cee8b6ed076a383459df3c65f08c9ed5f2e4cbe981c7a45bf2155074ff25210b80f530ffec66ff148fb1d8fd18923744da725e9ddaa26c9769e8053b250ae1f88664dffb63658ef7b3984d80d287defe83b1708ddd895d44c93466860bf324c329c8c159c0ccb78b55c4fe0a8ae6591155cc793a14bb014a01d25eb205d4ad34892570873821895d378874a8fac0fc9d3725f19aa64b53742f5a6282a83a1182ab773a2a176b5b6da139bd268ff9201386429902c7bd95e51e8f297036ea568fce2ef1acfacdd5ee9832d242ae704990672a4a275d939becb0d9328cf81eb0f92ec64e254f0351ba978e95e155a0ba541e650aeef5f12ab9455a1c7c1e76e32dde1024b2fe730a5f3e97d5729e08ac8dc5d43d42eef9690fe5f95a6cc809d4ed435d19ebd0686e29b227116cba6e7dbfa6d15eb21165be38cbd231853ccb49a29f16dbcea10e64c077e9e0538f20cf3f6ff5d2e7764cc207b1446c905660f59bf78f0e066ca6efa057c2207d112b83291f053842edf47126e96e6bf209d9cdae12e519bee7691f27b769088aabe797ba4d59c8f681ae98779f975e9e66f3a25822189638b7784e1831de498ab6f5668c346d57d83ffe8f69673f7388f59168491489b8038297cef351df17e15cdc5b3005b61c5bbb06565f110b595b91fbae3a4d73fb0b533b905545865e25f9af0a4f44fde7e8b6fbf6a90fa66fb9cffc507b0f6da0adda3c3ea5d7e9e18e45033145989e5f5d6846bc48bb4a24756543325d53117ad322f5404eb6d0af2efeea002e2ff757264dc9347578ed63f6accd0b3ba50ae4603077d0507035f811548ffcb88a6ea7413383486c3f0717ce1d30d0caf0b0039e3729bd47a2808f0cd6cc8b4cde6d965b94950374886858a69792c0a70dcc2558a878d23162671e9aaf7460d2c0b7a88fa8ff62a18f372f1eb6ef48c20a8656640fb32b84d03f9c587c72ac350995621fb97bcbc880b952068bdf99d9cf69d8f63fcdbd7afc543b47c4638501239e7618928186557fa04416bac44af122f4312f06e7c4c1f9ac34533ada8f0ab9d6762d2aa3d3e05f500bd92f27061d21586dcfd3cc72b05d961ec58cc6e8d73d57b174800589ce033e682ae2b0f06c28d9d93bb2f4c124ae153b1225209e2268326fd219f8f32f41001ccc7fc1a94158d728ef69bca7cd4ba0c26081d71817b151349d9ac7264ec58c0b9bd3bb666bec4dd8b2fea4af33d3551238f4f75771a1ffae8a36059caf5d29432b2d54b30bfd0f47be16982f089a0882543e2d995d68437b9ec6a5cf3b420f1a24e29331f43190670435760aa9e834e0474106a94e6d8646fddf3a6f245b073118eccd93d5e19de667594de870d44cd4bead135229d5146ece7b634bc1e7ce50658f3f8188ff24042a6f66d0df434a3636d2726548229ba61d819d9945d14565b9729763e986fe30967b33f6030b7b2d38f762b28cd5d14154a9bf3d36215a1823be5b9c2e4cd1465f174f86d07e737f20c3b87e805db83acf4dc841b65cde125457e5ac1b6a60e4b3aeba40d0d2c0003ec099f65833cb7e2d7e8c22803657044dc65f64b95ec1641a8685089079670cc9472f75c4160a58c929bafab299046209e8755907440e3862335d3f1a08aa351214121f78e0b20c21125fbb416ded60a49f765e42242dc5feff6fa94e9333fdf169d3a83120651f6b2fc8078e305f23629b257d40b1342cb7d3118803d210edf16a67a832201407bd896ac9a5f76941c84873d90a37ab0c6e8a9aa671f2bd62280051a2b5a346880e8b049922498e56b624e9da56db3639a1fac253edf7608ea9b3878ecdbb14ff27155207c664ec392575f2648958432b25c4350be64b7e9cc067f07de6a0771eb21ab3a131644872ed3c267d2b93de2aab49743bb56ef4cdea01539d23122ede99909092289136266c16e4cc084f98a278113ea35ecb3520f945b7b90b1005b963f95da7c6815600267e818ad48aef562081c6d14454dc3ef183b7fa6110c42d942a7011f62f6133ed8695b00e61583220006ef34123d4b1854e62a073faeab9b58f1086c6218315384aa915387d3de85043b44d1f2cf95ce0e1fdfc2131bccb40a6c179ca4b97296d734d8ff1e2a37c6d94b2633a19389d435c29e9cfecaa5a748cecaf52e65f33f25cb687ce5fb3db0de1a498bb3755492d28427be28b526526f658ebf890c73d2d717130a2d103a52345aa74308536d42cb3af984cea0a58edfdbfcf27c6542a0aad0b097fce6677cc30e38434e93f5b3d55672d4830a4fc104eeb6f00d9573693be2e8d85dbf79109d77a3e60caa0df1da15a52671e2831343047d1486989172d9d3cb568913be0d09bbb7da030f1fd4f96d20edbe216801f2688d84e18c0022b9529630ed41b59acbe99015cc29c51e30b9169b2645428b3b79b4c45c92f1a9500e78ab5a8ac2b41626f586100bcef3db74d51fea543af3a1b80c04365e14fcb0d224aa60183678f073bdb666cf3930179e62c2102de9c4196c3e5d295c60d8e43486aa62aa60f972de64b825dc07d7cb811633719e570f6b3c292515a1b640781fb6d9182457c84df36a0b03a79c496eb8655581fbdfcf5bb273943f27d2ce3c0853629c3b9cc3d24a647bcf1db21c521314a674db490385f792ed5ec1e0aa7e3a1319974ef4dc4096869d0e84e6dd7cb4a10ff85c277082d3b4a718841672b01c498a438b24a71e6e4ee4c223adcb7226865d63ba2c49b588be969850660c6fa41a22465fb07710e1cc6883fbe671c2390f07ab415cf3204af4aa1cd82237ba245cda05c3b09ad5ff0a1237fe6ae73571aa826f4756dc53dee0068c467670d7959665e030af744a81e2083e4876317da225e1cb6b8cd32524fb9c4a714715ce982b4f710e38a8a6b4a892b67bb03ad0e9c0a93ef6c1428b402656ad2986d38c0d454e67e05003b05335f343acf7bbe6a6ff5f810c73824aa3f38f74b3a4f6f931d9d8cd8c742b533ed1f5c4336016a4ef2dbb10ce3541696846674cf23038754d526d6fd4560dd121a75f2c6a68702aed89177700d1e0e884bd26800a500277d31a10c6b8537c062088d15421e2f2bc404aeacf840a96f558216a0d03e536f6ed18ec55694457b7de84c578800e255a3cb81e50174217fd7d804f72f8d513d00b2fcc9beebcdc77ec9becbc352111d34a43cfc0c5cf2381ad18d8df6a33aff67b058439422b567716bb31c707dffcb9196d277c7baa52dd63678bf5df95ba077d4664b1c252c4a8e7bb5502bb468b0b53069807a28b97b2a52088bcd62029b8abfef1592ef0f9dd771fa18cce8d6a8ef41d95841a4dbddab906bafab4667fddeefba66146ee926fd6e3b87a0c8984d4f37069a7997e3d6f33bbe34e08b412e0e3236978dc19beb3b6c922c7aa556d0a0aa4a4bb88c2c4cfd4acf471207312677a779bd6ab3cdda9f6d6db02889fa0f17a97f4769b7f0884ce446d063982452029c609e59fd4748e435692753e3690a019f69a0f31bdd0009d9341e8ac731e3f9dc342cfd26f38f7ea184698b2bfba0a9ab413d5c89bb6260a87a2bc8b05a4d6d872723e731964cec6596d98d13a8b7b7c1f242350b571c84bf40ede85360f7ce30091922cee43f3461f3008c0ff4c000fc596d337bbffb1786cd1a588e3ba60b5b7949a8f9cfeb99351f435ef9d13ce3e86bb7bcaf24c7a2b1f59b11813bd380174292a6f301d8ff328e7a47ca18cfb683cd1efc9c442eb0d03a82f56745b42ffb0729df9372b96fbfd4ad12a88095e8f1de97531b002d5f6489e4d36d3c68a23af288d3c241654ef4e0a24c5db9d002392ba4d9d24fe9f182746e6dd53606d8e644d7aa3f4a93ad98ea2eba8d898e5bc0570967e8856fd3eac5d98a224c5075ff50d9bec35a48fe9dff1dc1d3f5793981041cd7249d7e07de708c945c368ebeed55b0fb1cafaa7baa53b8e775feace1a4dcc295d9c9da07bdd79317a1454990655a0d5d63b4651abf9049328d0ab27dd4fb66f8496b4cacc01a9a110f23f1afb2f2da2ee6991f5c38278f895a1f595976baebf930b506d9245623391057ff14442e0ba428bcedc332bcd197eaf7d040252313a3e21f2324fe1048cba335cc6fe5ee2c51f80c5df147c134ce2a256fe0974e2e8515e14762fee81b120f15ad825c2dd51af372ba39498ffd48c4e17b193c6b52a23709600301dc219aea64b690c9ff0256c669a1ca5f713776dcdfa5352ffda9d8dbd636dfea577ffc905d93464806e438c473b189736d6e726e87a3faaee49623cbc3262bd9dfc0d98b4e8b382c87b236a3864968f077245b547934fe793ae8793c308f8a66971f33b32eef9ac5354571bd0a9fd887aff9ed9118631df08f4530be2accf5696512fe854c7ed2b2f4216558e678d3ddfc7a660ce75c426799792ff88cdf331d243942f55e8ae7191d824320e6258ba875c7ab51b0d54e38aa041528a500f7ee880366c21753ce0f80460eb303140076bdf4d563439fd7a7266be8ed18e1fc8e1706a3fc028672ae3062fc1867e96970301f787ab316fbcff79b83169e45870e3c57dccf2c0b9480e10e3e06c16cd191792cdb45f6213e8a333e3185713724d4e0c4346769c21b103dfbe8dd3a543abee44b07b0d3debd7fe750ade2550f45efa3c19d613ed56ea80268f84c07a7ea27eb262842811646d2b5f55958ac6018ee288692a55ed657b5821d2d556f5b7b12816931d574583657c5c434db15ab723b4f3926b267cf966c5f184187a4cd625a1218b0e2f4eea0c0d7df0f6c5528968cd4805d715d54a66d867aa4dca801be3702d964cbd16f070b0747c434032938ca12589cb339622ed855cb5f0a873945098e9579218702760a98606d459d7ef8830b3921cb634fc11ff9a6495d2ee5b1041124f7ff310d59d1ae4a88fdbac90f805845600e19de70e8c12d511368a1e22e1ac87bc16bb7f122799960ab28aec621565406d4112102f6065349d85c483cf2762d43032f9735abf28c27b1b992e6fcffcbfb8c23c13e96b9d9d4e102da6a33a1f1d069fbcae9e5926cef60441b13f34d6217db5636f1e4f3c6bd4c5a57d8c728124617102659feb1efc455e21dffb0111d29755c8b02a3325f8a1dc7c575d924490905feb0166d6f4e98b314b0d5d7f1724a5749a00f703d4e90df691c6957cc403b63fc1627327db178c40d30861a840225c25bd140c384e1f789493506cd841db3b1129f75a1ef24885caa54fd990c514b275510630d414c50affeb11bbf7940999d1b9df574534c75cc0959f055cda7a47d2eae4e3937ed78befb17913f773fbff402042ab67ad996039841989c9fc652b16d305bf6d2ec960ad26319ab1243dd7ead4b523bdbc7035ca543502395222f434347d2a426aeeaa4fcd15122cf809134dd3edbc537cbca830b2920e7f5356c1f25b5f247b8292c1b4caacd31b0321586d64ffbafee955461a98e93d3b33068472d725fb2a63dcf550d443589577d9b39118b404ca1536c10c2769f01c5ff9c1e135ba24b298059bf881cb7f4daa903f7ba4accf47639cc9fd9d8fc7f3b0de1dd1bc9cb5532941db2d0bad7bff76990684b05386ee9efa464e22e23a14046687a18daa4b2fe82f770e9a04c8ea23991e3259fdda0e53782ab15551e289346a27b47f0aeb03a02bdc331bb27f43c7488ac2c1583e456843fe0585d09e5f3c8d16b53200238bbb91e1cacb6b45f812c46f9e31a4f5d20573b2c195b793513fa24aa449977e886b9de482ca243fe89e7086b3a3442f5ed4606b57dddbf6f72d52dd709ab0e9e160b27bd5a36f461d6507d398204ccda5b73255c672b4e0c2dc58af965958def2e5a1163c55fa9ef15564d6926fb06d12ee467c0546fe9b2bce9054b444eebcd8a112717fe5772e5209bc1c736afc5978e658da3364d3ca9c144abcb4d2fe749f5efde88a5ba4deb0d1fa0f1e10f83b533abc03c2fe7f9e2cc84d94111ebff8ed15acc3dc34e9d4135587d9356b2feac1da2d4b8f350c9c7d8a1e0533883a7c0b95731ce17f264e28fe8488b4bdb941db8edced6113249306e35c3392122aa1cbdb97900ae982489835edc3fc61f175972c2093cbdcda78640774ae651e63a574c6a8e3fc3f6ce7ab68f9f3b053a9866e1546f2d2d0d7f44779807c91727353b326878cf8dd23052ec57b7b09b675f8878ef83d95428c172c24a8cb1565aad9cad4d378fbdbf744517f3598079c006f6fd0f5abe5d19267f3365c665001628816fa9bbe35a5442c278d0fd1c8fb23c0b99b67e44374d007b63c31b0366caa092e80523844f16ebf88db995e3d194515a15a9a1a5636e42d9b827084207eb5807243092695b46dd979b94437aaeffbb9657f8f369f260cc39e61e7cb6647cf7006a5c386722fd5b0abb07fd80e4eb9602bcbd0363518e659aee3ae0da4324435ee83a5e8fced29be520ee255a479913eb57f019370350fa2613c12d9b2636ae80c547f81680bac98668d933ced9b79a66c280a3ff3674ce2295a59f4b142973e8e69abaa0709f7cc5fbb4ebb2bac00a90c10e3329669f475c855d7f3213ea2f4a618af6c78705ff82e646428d1db5f85daa8ed102d0e6acaad7f2e03021d47a7b7956e6c157b8f04b8999629e30118ae17e5e63fa419ea078975344f040d72747b533310d35306b2693ff59af53bc9b83b5e796e2c68a407c3fa1598327792a1d0e4116866ef253c3082cfaf0dfa80fb683f14c4cccc0a116bf349d9a255b179566fe93a44d24f5c4480eed41b85d24802b4d8f88e0d91e3749cfdde347ae0c18131d15821a407154067d5de72a9cbdc99d2aa0ce4bca1c2caff62e1f27e2f87b5de6aac578722ec6167cefb8d5d3aaf43bdd99bbd63b4282f436166b308505480e3f89ad405611c0f3eb723cd53fce3009ab8e2082a4af8279d8e184680f6c36ebe3f2f4ff35bca9a477ea23543f790acbf74934ba5de5fb7e114f82445a4a5dcbc4eb9071edec77d51148527a4adbb4428dd9ad932d304892777b2c31f9f82d572fdce7aa468b70b4efebfd79b27f82d4a012fc938a4334a5381de60bcfc8f13f3361275cd9fd4cb6b5b45b65167eea0a60b6d5f9a5490782ef3a1221bab73509e19d2a129aa56d4b501d84482b881645db4906797a314c773c667906107ab50459d1a7a26c010cacdad63546beccf4e218480e4d0109f3efcd88c73117337839499708fc7a08759f43bdbce3431f2b819446dfcf2845be45741c746590049ad4a0831b0f5e44afcce65fce997f715f23dd5068405edf32f8f403673924f14c76f6677bf5564f759bb56331ae3850cb22ba994f37b0c3f00084a98a0471bb6d9b23d8abc01bd1b0e76ffa2d9eec0f9ca3f263e7474eaa1892cd49dd18c6a6e6ab9e8154e41b7a5b6b96a3860ee6babef80266b64e82f58fb6cf10302c3984da191d86036b30164002a84306f0f91a90e165c4faad9338a099a08db43ba5fc01627b745230d0ac882584749d08a96995940fa4185c1a0823bd38fe022453e49059181bac358950f695de94d164790d238478d62111f5eded26c69b263af1bdfaab8c0924825c66bf2bc9b671e82f9371cc5357da0a5df25ed4e9614b195c4978895fa215a5c4f608380ccae9ff0efe47c88ae7c1f73e095fdb09a6165721e841a9d29493db3d8024abaa9f4a648dd747380b118b266655695343403a1a991486b81dac6b0a317b483584b6a157ef78bb16c14aecbec2748f73d382b02f27aae7c3c8e50862541e7397fa1518d72ee747e00277cc9e773bc43a0959073017c402c10bb4a3c69786bf38e994add860eb9e8e15f6197b74ee2b7ac82a01240f8ed4e316bf727ef64cebbde73f0c982c0eddff8e31fad49185c6c5c556d21fea460e7d9712c74a7504cc2b79a666ed8585b6d95a59f5071377a0ca724de8732d66d3f60a8e6298f54fdca2a1f34c6fa83e99280b2643fdffb82745bc14c86a6a6d0e673a974234b260c0a57b134ad4a57e772903a7a20ea78cb140961c1d2d784ce0decc75395c03490864cba6031567693baada6915c743345040abb73c30f6900078cd3cb61bf055441405fbb4546b2430de2c0b5814631a953825722d7392e70cf599507273c6ee5ec0f526f88a8d0d301561fe8b684e0693592e57a50b884d918de1f4dbced23316775045233cdda3e68889047c2069d872595f574d523415edf8fc2b7728d57a6e6d528eedc3e40741ceda1bdfa8d201f7719ba32e2f8445da84194d279bffd8c09fd7f3b85cc280630f4d4c1b2a2c522ed817551e235e1034d5c934ad288ee33c7a0f0ce8e436da21b30d383a49db6f43615adf545773e307e6d7cd0b4ec7fc195dbda75302a323ca9a9cc499dc0f9543106c3e7c5a2bcbeacfd2bafa9f7a82c129385e6e24d38bc388d678cfe252cb3218de7b98547ef20c99fd8e4f7f5565a501ffcf6f5bbb623204c54c749a6776977d43d7ae0a198188bd50f2d3bafa75a139d494a2d2d19b895de62b6b916a01cd72549ab101e7347a95eaae2ca56d2b830b6ff048cd10fc84ad7f610ddfbf888e9c74faf23eaf46b57bcd73ef2190651421f4b9035abd3350e226852f62281ddff4b9a7205be24dd815d5877bff9c7626f674059d1295bb819ed16aec01b8ec8d31c86ee46e3b5a38ebb70e6669c8073024e143761e06f57e7b2b4bf07e148f32b869c4ee2acfa30a01b156bb916cb35b8b5afc24dc6925ac9e69955dd1a46a9860c43229066d1537bc92e231ff7c45e1db6428482d6f59ddd686210809e7d2f89b627f13513fa3fba825276ba0db5e2d4fec85bfc071aa781a47542c05ea5f7325aa283956afa4d7b9412abc5e61408f1841a8f88beb95a782b35aa5b6b2286dc81f8e0a3c0b47fedff5aab6206b8a8175cf9c275abfd09514c7e5bd055911f21999fb242bb16c1b8ce68c951385ce9e009adfc71ba8a094127130783c53cb4cf6832b1c18cafe17ab7ec12f7075e3c34bf48dbd8278463252cf1bd64c7c7c4cf938eaed159e6d2e30ebc36a731ac0cc55e04f1523cffc32d9412128bcd495d88e07056f542b67036874ac020a8e3025e6034c09a8d3bcbbb08db46294d4b64091afafcb68a52e0b3282e616acc44e5d2e813e9376afa121a3cf8cee2930a9f44a01b7dd1793c390ca8825b448f41a33bae8e986bc499605c31e4de8ab9ff6c184d5c9c9646c9d88d9c8f48f502e0dcaac6e773719133bcda7c08809d60d375000b88d191201d78ae76b39de6b6f94bc260c55623cde2d983312c2205932a8b77cf4f86d2cc6787f17e97a365b320c6aafe6fd9b4696ac9dddaa2ec2c26c018d0c53c7fa1b3d84b664bcd52d81e79ac0ff664e70d4ba7678b66f629a3998762260cbae3165752deb5e28c533675334ef8b8cbfe8de34e62c7fe9f84d30f837d132f154486a45e59c1e233692d3b4a3ff250578c7da7fc586c7e7568e9b3280b3701adda75b8650cfbbf720685c83c9d26e066f559ae6a396d1c6c5f2d67e0322a53019733864c4bdcd3bf2cfee595c333b96fabaf6d56c44214141dcf14fbec31a0a2a0764d2dc28fd227a6fc1be4213b0597c4f2b3229a0427de01c3e7f21874e0e977c468714220c61d582960f1fef91f1ee5bcfb6100613a29806a5a77ce9bb074cf10c910eb57fe4033d6e42a19ab82c6409dd1e4eb4a384ebebeaeaee21df2c6ba7057d9cee7c94fc85125c4879ad2be9326d3cc36340516886df42379d6fdb54e90bc12c66ae1f6c9ef59fbb851a3a07bae0a9dcaf9ae893928333c24990b1633f449d342e3bad258355d210c2f2969df70fd8e64d3215ce1dd9cee5ef451990272e151294059272c4c16c92e694b27464772b7079322984e8e602f0ecb639efdb3c195c4fa68477348d38b6a3888244917b3bf2fd4220b5e23af7b40ecb6daed8106b7faecc479cb5d216d3a75559ae4ce7d13045acce3b40e05a10e734c0a5eb4bdb910f581291b44dda6c22dc086617394b4e1c8b6e6b7226f7b59cf0e845f20e97a9f875e131a210b851eaf9028908551c62be2bbb185aa4bc69b1d74ec5a95fe01adb2705a9b8737f756877c699819b57e5d80d847c91fcba8098e920190d4a8e9435caf00bf57ce2625779c7f121d2818de41a252635dea2b3b8fe93d04347f403a43eab84030122280d531aeecec247c8a49772717276980a4144a558a7129b3c7b6797c13087b64f9614ec03d2c33d81d204a7da144b36dc9434e483a350d23178fac6067f183e6a10fdb81bc2e226bd486fa675e15351a463462c1d64101a4bfed6fdf3f9489a3458707245d5f89321066a063b334cbe855ee3bd9e59409f389f1e311906c9e0403979e4a7c304db7fcd7a53af89ceb5cef95160a58c1dfcab74a758fa17034a1c8b8da7241931b46097117e8fb1b2ba2e3226d13107459d88f1ac3f7b45d313330495ff6eb111f8d78a37194e547488695cd50c311c14dab0f251fa535c44eccfb0caf597b80550fd72fdf12b5af5fb299053da44c569634af77970a05d5110c731c164fa3633aab5d0071e33e9cb859b7e0eb17158107d027c2f67d84a6920e7fdcea17ce9e26998ac545a4b186be13db35bd527621ef4b7b50728bf49485596dfc9182df35991424ebdef17711c68d7a270d522e238092f8e8b150b648956d32b3bebe126ae88cb7328698f859e769c09343f889201bf7dba2cafb5ef5bed04a9e16124e062e963f8410a5bbc650c98e1ff5dba0e22740f74f5936b318236862adaf638c995dbb2612b355c52381dd723e44af98041f59146bd083af67ef2f6c7d018a389de5b54684484cab37006d8815648d34122f3efb2776eceac1a4513b221836255aef56a1a11e8644ef6b007cd2288e2ff67dd791aca6aa3b55f0b82b309e476cf9f3513f789f93356ed00ffac47cab6c440d95e88e7625e4d5130cacce3bdab06732eadb8040750c1791f6bb298516e5e401af4d07217c588063aa66c8eaa9931770ef7cd8802a7c07e086349a921f03d52bcc5df511f25e314802e86331f8a72e5f57438b96e1109bd683444374d8ca3113d469a06ed6bef389ee4c1b1fd4e25b562466d50ce0cac15cc60170d20d3ea14a0fbcd69fc8c9ba941e03b98d45b671a6432b96fbd252c2b81e5576d4b6e383a3876c2f9a2deab29ca58c281dac3c92ca2fa62f4d343321474c201eac77d8010e2521fcf5f52d200a6a12fe042c8fea7fbd58873d73348cab76fa92c008fc95b1795217493e7203cf04516e2c852916ef5211b420b1e5342eb2127103680741c760c195f12d50c3f6cc16ccc3d49281e563b1e890fa82b10c84c8311311e233b475ef375e40596c5014b8e649a198755faf1474b8f488757c63bc062bf1ce45c2bc6db33dceb79bec47cf3e79f6c6ea9fc878ee15f810502eb2f254bb73cff013861c9771071fa29bd9800494bfb4c80a7d8d0d94984eb054403f29ecb310655807373da679e9288c84fbabba71e17b21fb912f0a2214a5ea6ee995e8f81ad1599914b8681f49c9283b6190fb77b40c8053cd1eb744378ccc8f126198a26af283c0b473ef50c2a0eceeb66b310d667e5c0be9b41d512e45abeeac0aa41fce549f1dd134d51bbbd71d277f2b666bd83a20902625984f0f039e6c428a5dca802644a00d75631893a5ccf647f30e5a93f179ac5215307d223b29453c07c0717f3602926e9953b79f1334cf05a4d3e57dd4bf6ff77ef68d8fa7d15050ea76e731724ae6c0451f754bc84afa22096f25f50055ad406400fbe3771ecc2d84a366d7b71dfa609190c56289acd111e2eb4e7442840cda796e04dc3692838bba96441b46541c20ada889492aa73fcee400c0c69a7108f7f02f6b2baed8fa04ef1c52d041f9b21ae74e939cd3c6f332711d10a1f40ea7523f253e8380c14f9ca26ee62e943d94d81b0b14e16390244c80ad51270f1cedf95c68a95b9786c4ddc6686ebd321b9f8c8da3bc5b893035b7e6de00da14bbf7acd9913309e7ef93b639fb5f26b56f0c6885bccd322e2d67185792a28971b7d969cc9b133ddd3804c554ba1d3af25dc4617f414733c3e0cad2b327a9f472f88dd2df00bdfa1673bce879d7a97476185e0e84a15cca97c5f24493e3321acda6cf155b7a7f0eed60afabbf9f57f304af1ef7d2cb45296ebbd75e9a79c31d462c5808fa82df468a51d0395e7b06350633dda97df174543e42caa2ea758b4cc747e658538abd11242e1fc280c914d4e272424847b20ea81673eca478a442092ec656e30dc6d2cd19dc75d526efc7e8b34f70c146102effbdbf8fc3e52007e894394c2b7096ddc5d7f7164edabae75515029eb2a2445eed379fd11c6cbf13c9db35efb389110349134c9c15cf5a145706d4e9b6f1d4dd22aa2e8d2b8bc72999b3dc22ef8f9fc70ca23994a0953372097403593022cfa5b3b98cfe0223a9ed27e63633038b0f3f4612c43b130b394770311d1d858f44533a560068a0f89dd59719ac5c55c6e33964d3342c8790ad417ec33c773c07c6926f75d55189047040f7dc79b5a17a9a1190415fbb54bebdb131a2c3b20473577b515dbdbf46616452f31cd1c6375afea2729787a084aeb32cd8d2540f522d4e14fe7cd7e8f5d299bd1d580254fa13c24e81bd74f755ff35ab0196f1dba4003c6009718c393e2605e0a8a2ff88562ed6b9d01ff0873f78ffcc4073e4eb5a6eafb4204e1d750f8526b0ae639619a2b6159955fe3d47760cd4a2c5f4c850a7241b1cebd95264ac75a3c39f63a881bab5acf353a254a1860c3cbc2f62c3ee946a82d010379b35e3723abe6e792f150ce5eb977920ecd7912fd31926457abba5aa77ef7af6b3864ab2fbba677b7be37352d8e7ddea4a527a4d3e91077596da58b8058c31b6ade2de5309337cb5ed12abba2ff8767a058c50dbde128611374c6a3031d52b87a594a49bc4f954567915eeab4865bf6ab4e9c434bf08eef0177c6d27d9cde0f7e70da3186ad50d736341264cd6e58d1b3564292f4bd510d232fe8457a7b810d5f0ad92fcda0bb94c0bfa809ca565402aacb1f3133822cfa484c9da7e9ad36b6a2e0e4a6476a7fe842cfcdd73f8d4afedb123fb157eb0d1e49a430504d9998a9aabb46b390536bf9bccf4bee17edd21b14be0b998635037558a4e1518790727a3d7822337813ed120e1698654745193f284f5d3a48b098b1115b035a75df79faa382c4443b0be63b64890e1dbd24244eb8aef00811eb1394296ae11a521a8b611e31188a34fecf83df09b8e78255c22cc9b7c5410cf7529664c7e0cde20c99cae6612bab191601a8cbbbd2f451246482cabdff4e4f5a2f8e2ffe62e14ab5302a53fbe3598486c23ac2910e65fa31af9f178368e96254e05023305b12a9cecefd85b0450cf9deef55e853f0f5009048aec1c3d25e431052b738a6de4f50e6aec1cec59a3ed714a019634a6df7fa0ec017d08c83fbd4301c6f4a23bcecd63a6e3980a1ebb812e697818a2dd0d999808365e676a257e9044ce922aff29e0b10503fc8449e4f6f67305eea993b69e4d6353aa6dff3fc17598acb4e8d702ffc6996e6416d3e65deb4e602d76fc4564cc4ac9c21af52e8195fa231379e49d22d7908b195f13b99fb5d72d842d12bede837efba003994af35d428052edaaf4c478c6921fd6b2e1efa32a91d8237742f62160940d9c2d6d5e64ff96c640a76c74d2149c450bf83be11a84717f13a59ebc181d266475a93d444df4668133d4f13b543c771c9bb2f21a64076ee102db1ce5252c10300153113b22e68221f21e211b0a3192c9c5ed9076370a52ca74a38453999af35b418947bbbcfcaec414cfb5b8a1712c9caab01588a51fa2aa38d6d49fd25ccda6ef6a83f94b145274dc274ee024338ba22dade54179787e4f731e4d3865ea75a8f1c4287448f0918317c16bc05474809898d76f51152bd6244bead1c0f4d28b81ca84ae4034824252fbf6ea3c80510f677af46e2db5a2fdfd1e7f31dc85052126cb5db6599235a6a67626d8757426ff728a6ac642c71eabd04a51f9e578eb4a13dee32d5655c724c0043666409c879fda4d07f3548baa911e3bfd631b1ff6ddf2ac21dbb9de0dad76ea1ebdbd4f20d65f43d04ccd352c0fb52c846ea2e3e618314a1ac58596cf98749a97c70eab24d4a813b170b977c23060ef387f5a0b6729642bbda6be3fdd65a602783fa1a3054dfee2b8f6a9d577036636b19eeea24d1e70d516c43d051d85e030384fcc73f48b7cc45115c39951c93801eb3810ba1850269339ef4a15eac3e1f40ef19455c65997d3a337bb45c5fad3cf860732db70ddac8d7db31a90b4e3b57227153a30ae81d7f5393e778545022c905697b32038abac89c7c2226f2cd0066a2bffe38aa7c585979fd79c3e851bd8a8b42ec1d6dbdaff562b56bb0edc37a2c35c52479243092b9a2a158a93cd81c5745d39d596a2527e228f37b94a2b7dd16d04ff3894e9a4b686e308125ccd90227c3eaeede270741e585a5887a27caef6add0901fca1a4269aa28679b46020305773d5edc184b6ba22b88123956a145d724842b5eb1183da210a7b7b8aed008092434f5299f790f28dffad6c4c7cbd572e2fa7b251f8ab4b054f7ee3b60e2ba082a31b6a3c961070ad0fc6e641a6b1491ae236ddddda3e6288684dd6a7c98117baaf76fb4331b988fcaa8c13f3194240408515b16023e06ebf49c9d5f19361d2e812ad6ba79ed5bba16150ac0e17a227562884186c960060eab480169ed7532167b5a71f879f1b363742dc49dbeb9cd34786a336ee9dc86d538f85285df85b8bb1b4c98c94630f48f5507a8dac6bfd5410b6a88f313da27b20d3d3646897ca752ca95781d6bbfaaaecf7e90154815cde158ebc56e25da102b547f6d4c9fcdbc35bc447ceb93c253183726f22cc9210e272da4833d8f1ce97662c1079e1c1e56ca0254319e0652fba60713ed8d87a5e63458533913492db9788fe57e11f82fde661f804c9410a0fcc6b848ff0440726b7149a4afb904ebf2233b9c4387791b0608a88d10380391786f460160457bb74de6ae97431897dd8a711586836405966acd7749c88dd81f8072568b1f7630eaa763c01c50cbb6ccf676a8efef33a1ba013696551f78293ce70815ab83540621b4572a938f1b1301a7e65ded05c7e878f4574f3f69638f46f197378234783d82339310127804a349168e3cd304553da9ec5bce1bc7ce8774b7488c4b29e9ef0f9b81f37341c1a500fca4ee18f0dc882d8f1550be7fe10f2c3d3104d633b115520c05ce36a6f41f742759681b4215ac1a059db9be5ae68ee360f9878f1a5b2842c44597d9b07b87f43c2e15b55a2e5d4e678bc2c813b05d34757ffb914935a77821746bcc3f244671e0c42768963e459b077b762950327372818c62477411243c4830e81b48acd8b004b8faccc9ae7d3bc960a4474fba1c1f54fdcb9b9ef9eee04bf4a61906bf8631c9189bef84f4dfb27937a46990337471fc804991f68201598fc11e8d8ff27ae4b14468f48715481dd5d191abcab22bfbea99b827a62673da9e33d7a19a2c479f802871b626e7e64f4f3e1d45c4419e238b992f0c23efd1f2b53469e7249dcbb49573ef97a8ea24cffc8adb338b6072e288715f28913cb9ec5fe344963900c391db0ce70060e579b8ad120d9eb125edeceda8b67f0bec96c1cc82b4aa3072e384e2f91d7aa8d0ef266737a3c7239ac7dc931b6b6a19d9a7521ff16d559661733721287b2584de0370e55019debbfed43b16d6fdf3021a96117d86c79cacb8e98ad79a2e7b0b137c4bfc67159954ad9806aba78634a152f1da7b1667650958f32afd1971264527040d047d433dd0c12bf1b9459d74aa24eeadb2a1e2cb7637cc9e21051acce6710326f6726adc1b539fb4665618c5e5b75b881732857c0b5d4a7339f0d2ffa50e5ee7d77c8f2f345f8e72f0a20eeeecffe9927ee4f10f1aca3577e44f6c924f60277ff7c8a159bdde7aa9fb55555e601a703b420628abdab165a00303b61e88c482ffeb51e4269e398f09060d36e20f3cf2b7818289afd623641afed077f4236319d46ef6c36bee3464d3edca224a3614a13caaf7252e7557271ab13b9c192e41b2fe4818d5ec85db5eb9ca0aa50ff246a1bc41904d12d779715c45984d07f7f2aadc405bc4276afd1f83e9626cb255609bc936b2bfc0989a6dcacf52c86764a59f08f7e8efda83dc4621ed6b2bdf8a9b55f99461308d6c7a73cb159bc82961f1cada34ae8d6a7f8a1ad5f344d0680c7f9aeb55f57ed3330d3d0752da4620bb17c7bda31301f67b52db51424f4a8db84a727f77d157589bf249d2191f4d7ea7f585ea904f78833c81e66f4cc950b8a984176a2535e623f06d95af79ecc386678876ecc51c187fa7e2aefcc8f6d36c6d2a2b988e61a3b3e9b4ea578a3b1318f704ef902dab4b0364f6884e5cbf6617d7a7320364b24c92b5b5d0d02b6cc4518979c53b48fe9931e68aa8233efeb0cdb7ad1b7632668d19011db8ec954378999e719582ef88b052bb02be069247739d3d8ddee6de814c7dd76db72ffc50b569e85b8dcf3b553ad6e28136b930020b479d65e8fdf1928e1aa8eb83ee734c0206e29cf00c32678ac1d73a872598a74af468894a4e1e5237ea60ea7c0d7302738fd088ac02950707d94c29b60107e348da21d4704fc9d54df597c80d6d1394d6087ff82ce4a3de4ae8cdd214ea358dc94fff6ae6a1bd9553c78f678c03bcdd43dc379c8bc55f41a7841b317e375e7cb090271974a9225737d6a1123ceafae273dedbb7926ec0dbfc087c75f7816de779417fc1d2d4b1e3eb88ea233add1e8ce03896d8ac622a0cf7a0fb4fd3588f7e75e8fa49fc4172f0ac33bb9469f703c165be07726d97debc4daaf695c4df8ff0e25ee241540bca93ac5c32363b1532684292a6e8969755d507b85928f3ce848faf7de43b1f490e367af5fc2fa2d3e96202143d6c280281350189dfd6070cf7b5fca18e17a629cd34bee12554338b678a0334bab4e7a677532c369f634c36082abd774a31876de3e414283129beb881e05a368304e0b06b79f9f8eeb631c0a407c18e24f5b78f7c93f6a934681972fd577393882984e3b4e6cc4991f102341d06ddd075cf529992462d0351f143e6a3e451cbbe659fd7e6589c57da1b9c3de0671b83e34d12301f270d9612d297562685c2b531edc0cdc09ff2209f1fc40cfac9e9c790834e87aae5d9b84d9fce0cc181aeb5b43d6116306d1e24f7df47488f1dcea6d7defea52cc40bd5cf62aa0ac18995b13500a413c4750d018d56c0e15fde66fdade991fa6194e49cebb54eaded25b096b4669d81f40e21826a60aa59668e448e57aa723269c038e5497a5fa0b3d35adcc8bf166d7b734b850ba64c71e8c061f01d411a8fabc0dd66143626fa0ba229a5a544f03979ede590b90df140fb9cd236adce343af9967166d9616d2d8b9f7658f95abc616b9764ce381bc4d5bb6d8c9e16bba5998a825b9e85b094b442620bcb0c6fffb267169a1a75a595714a916e0e210afb3285e0bdfb03e68764b842e2398d88bde3e0b80e05e49731cf670af7217209297026500df9db5962ab6f5449cb5b00f64705718aabfb9f7054c0757821b301a87b69700011f07c1f3be07d6bd2ff97687f10a1782b314bef31ff371f34bb033df972015bc33ba007b047ec22f6aa984bf62da99b9a9c81d816bf515165a91c71655d411d808880857aeb19cf87fc72da83104ecb621efa2234f80fc59e6323cd2b33f46727bb43b58c885e92f5fc8051ad9e41975083189481554fc3212b76f740565712274eb836b2be97cc35d649892803bf7e8602bc5b5a62ebd4b4be1851fc319036fbba8ff5f53b9f1040c2d9f7e5b45c29c310d0259adab8a3b9aa84bebbc685d7f8dc2c5b6f3162a6a6c00b1e29b2ccbb5340de0b8687439fc6feca567fb4110879bc976ff9799e4f89563c81808feff59bb00884e0b825593c999b58db3f73181deca88b01e3ab2b528b81ea645e0ccd1dcbd2619ce290540a5d545af7b892d23cd6d68d60784634672ced7f70c0c8b300b3caa7938a298da1259f7d2bdd64f3c7939b2f642fcd62bd808f420bf6c18934dd655976bb72176a9506ec84e3c20c8afe4852ff7ccd5760cfacd1a0f8e2a90b26a9804a71e53be664f4572679b27f3e107adbf5dbf1b1f0853176ac8eb6fda8319de1ee236d6f838b4683ab5fe5e9f2da4a5d11494c80c63c53954f4587a3fbe8a58b42b5a4f15ec8e7eea69fa1da80f5804266ab7cba9886dae820a0de628d74560697792ce00a6010682652c584ed4292c8a8e9a45880348054f3db6291b7e1067ac955e23dd862b3e79df7e4dc8a326003962d84d0523d1e58f52d880f6f9955a866c7d9e9fc14005371fe754897772cc12cf13105e7312bd8ee5ff4677f6fca318e3b285f10b36a473728b2e093d46628e1b3dc236ec838faaf3ba3bb8058e5de53b55fd93d5b443e2a38135561e9c28cf103cd42724127312ae47ce27ba13a83339ba0934d843ab9c5fad6215a3c3277c8bd0728f980de53eca6945d61994dc3cecf5646f4dfa9ecf45e63170d24058121c3c435612f08452e99d6a140d992d4ea12e5b86cbec20cdb81555c60ac9ed1254c943bd221caee28018d1a1ada139706dba1481633e0dddc255523cae78dda5dba753d13e60e41d5da4b127fed2d186698d66ebfdbbe4cdd2c6242fc992110927a3039c34f2aa02f3b097e63205bb8b47d5d490c215428de9f83d6d9849160f9e4a939744f523c6e547c99b3e8eee40b946f0e18d0c19cfcb0866afb5b6e9fca9092c12a301cd0e2056e5e6f7c9c161d42d5b1cfcdbef955e0f006f58f61d8fb366c869f9946623976d456015fc1360f63e01cc390913500ca2658a06e2bca95a56efd91bc0493042bdf9ee8b4ae3a294590f714ed54425a87b449c72b4fc528fb437fd5ba1507cb8386c1a8066a965b76568419ce59855d3200eb547dff63db0de9b2b1bc4375ae725f7a35205251d082b40ca8c8d6439b47460bee9ababf7318573ce64b3047ebf473c409cfcee2c4a1aa8776a26e9f4dc2316cbf1b3701c2480d99b22ce33f233957c86a480b46dba47321bb2eb245cb16625e9b1be35a32f72d3d664f6f255201527fcd9e4e4a2aa41ca264ee0e70b18724284ab45997a8dedaa159594a69289d3bbe257a6dc5eef6cada1739e419e03c35cd88e8fd35639b4a284e261c89b05637aee7d7b918bff885e145d3a4a21f3a1041071d95bdfe52a4da1bb4ff161fa871672e534beb20067cf2ee556724b0ef21ee68fb7e7b0f083b531045dd2625148ea794dc65aa18de41f1dadc37098146933e49594172c889675f44520220d5f2ea8472d2c0d63c2f3b0ca65380009d2622cabb9fba30d70b37c3bc7797e5e4ecfd615e424ea3b072e30aa1df6d974daec26dfa10a1e611ab15ae938b9d350e52a84b8027acbae2b466c150c73e7827dd615f2dcd3c14cc72c937fbcb38ddb55b66e262f1f448003e9bcef1f9d146028a541d2eb7b6f295e5bac65002de2289c09b937cb7f24f399e3cfc41d8f0d5e0c100fd5ae77e67b374f68fe8e28a06876a109de208a42982b394f2c292069624acb102af5e72f6c8499a523c72cbe4b0291a7eedd951ac37f391386478852f0b74d512163ff485629fbb1786aebde8b19423c24ae53f0328788ce445c453d8f05b602c92ae1fe39814645ae439a465dd9f8e7e72d5ccdc2a42bf5ff6683af1b1ac165563b14f5b62b6a34f8968b9a66a0b6500ed8c876204e6b620b1ef3521499e3027e2e2a069dae31b89439cc6ab1f4866de4e15188da6a1890aec403a8f7768740c796f08c218ae7b6122c2889136170a008792b59dd780e130fc661af573b8569c563b4ae4dbcb15fa94efe17ffd9818a68f7f11d3680bbb461e2586236265b37bbf62c69b70ccdd80f8cc9e7174e5891b484881331f996468bedb592dd19e9540eda0e28db99a1ccead3bc6a51513ab5203aa00e01e4c5941d0af516ecdbce73e48c736e90454b128cede7f59b216291344f74f563c57aa5e67ace9c235cfa19f4bd5a2a87813f8f2f97f06a07b71520e8c490431fd23e171cad044d5f92082ab66f8cb28cf1b61cfef4925d977b17f22d23eb0d6d06a400faa91b1b8d8ccc5ed710427342c900b22dd87226ed374a2c6d2febe0775297ed9dc038ab47be6501ebf90bcdc28c62752572ad74a93d65eacede754686fa07121b00b1f57b192f08a69c2cef8e6f55cd59c8131f97e4241c93f6f17136d9a6f0059b33040a48651603be336cd8f838fc733264adca2fb0b9022ffb8670b5314226e0a077a82eb063d63fb2180d4306f4ffd4b8fe9008ec1fee86fce24ba9539c85e1bb44d4e86c6b907c516132dce34c921b53fa9832b8fbcb344a2673d13a3fbc845f0e9d952c0ed8e3c75fc7e4d76c057523efc73f04380c7b4fb6b555055a5e685797932b0420acf4cf427398b630afd191ab37d4af71ab7fa50d4c7539e037d59bd3217c0f59fe1c8d50de9a682abf1b0d1eb086cdd13ad861310379b3d0dce6b1ad75dfdd4625bf36f66bc8476d40019f9d1dd0910818a3fc6b70ea28ac4746bdf318ebf85595cbe57da4702f1244c29121e664cac2a842b4a0fa9bab87bc5b7d24352dcc41650ac0381bb315bad9385c9350ec007fe3135708e862f61eb44e602a2562fa5a7ebb3a2b918c240a49ef09f73e627166b4f52252eedd72bbb3a292363503db1a099de14557cbda77e430a90a1b0120c046dd794e9535a9fa572530b0880519282bae16b2c8f28451e55659e5c258996dd097e896abb990d89818c3f537b8b96bcd4eb7e9b6acebd4414cfb81699dffb4dc558e26ff3364fc5c3c856eb0e3f35509a7c858bf8b3a7c8ce587887d5226891352e5fba404ad3043b801e54f92b15ba1cd35475c05febe2622afbcb524a46d6bf6c319f0520882e7987ebe3252434ef4f0438a2c3a26ccfac1b6d462fa8fbb3a905fd786d5c2488103b2f59527705eda53e472bd3aaaa313a5f1af8d2a609a070b0bdc3912b524301ef658d4e1815beb30c2f403dcf3764b0253b0d06ec909fc190a00350df80eef81914037502c72665a49541f90e4f43024cd7f76411de0dcea9c7af79de7e5716e458a291cce07be49211159d36a26590888e3df175493606977298064db45a4606f1b150afd1bf58a80cf053986a869ff7a1381cd367f68c5c46792836fc3c4c8bba04f0bc334fc642d4b00297c0d1721965422c36d46201a4de300a7d351f3664fa04dfd2251168d6fb2456b8c6d2b0a779a3e191800f537bbe706832ae3f82b6b75d86c392e2ec42acd405c2ab1d6493f4f1e2f02d47f9ba7660341f3296664762b19b6c9557d17ad6da5f364dfbf0c4d6e556ee63c1d8f8bc12ec9ef5120f975b519864f6fbb9f9bd2eab3dc78df6944f6c556cd852da940b22deee3ea1b18935d90417436bf496b5302377bd0c74592f674987ae2bb69b491303aa198771e8cdac58948015acda787ca489a4831248defbda07a5ecee550f621e5cfdd9375b4906924e561cf2fe7f7ae6fe8e861cb1be72976c1099dfcc5ea36811074df6f7f7d012db416440eee10b997212a4bbb2750f7e180887c71521a9ae2457c4c49c4645ba4774686517e366bc6b938e4fc0265a3e827c0043ec16c526176d38db0339beb2c880a783caa48c96ec4013141a16cd7cb53b897690a065902394f97fe1c245180b25693c77885333539eaf0a465f19cb43797bc05008b37c9f89bfdc2124ee9d8f12704ba0b6647fceeb4f1e302779165db7f7f2c93bca0d9c1aaeb45c8f47396873098c33e16cfc231291d87f0b0999eff677e96a3c808f5c5867d35d4603781ad13d1b40ff2002a8b8157ba0bdb71b0405ecdf8b04ff612c768a48ee4c41692e4367cee4e547237c7b5d94224ae2b29a35504df4d84da9fa0c0c0fde20ee23b65334f06ac2eb70a1da7183232334063f20caa47246082ed8b1898c3f362b888d71283ddb34b1d84b42ed5f0645d7628412ee26ca2ecb0650e62ae833abafb6cb1616174e7b4b9f30b97a27cea6fa389f9854ccbfb9fb7851727f16d2f6a94988847b67452717dce290a0d4f253c4618b210cf8f2ed4e259b042ecbf957f3b814d11a3d6ac62cbcb70d6143ba4c018ffb5ef89c0bad2dbd26b71261a55b0762ba26a8cf7505c62341d844d49d73c95414138a4d7300d37e3e7bdf9c7b1499790ec6e1275d83c64835e4a17e5c4772db144228c916e3be04e2dd838640ea4ce08ba1eee72d30e109b9577e01128fd90cfac2768188b7bbb7a4fed56119139d8587743b6c69ff0b5cd6dace2df19048ffc8bfafd363d6803a8e4b970cf50818620b50f11f86628ffccdc1a96e32f73177414feed708dbba1b7ef02aae55c4104d0254159d9395b41cb6709dadc1b2b65c9dd61b63f047e91ebc6b06d20e1b3e2ffae0774c21ce1df4dcb28170b3bf94d99d6c19f5c625851b1f74ccd24439670da2d527044cf1c68aad68223991c7e4d92533fe056827c55847389feb9ec959baad8538ca81202b6414b2ea89b61f28b79f4e8ac2495ef9d451b2954c5e6bcd53e154ea90fe198d1fe529dee6c3e68fd40a06c46c4812a3cda91a3af572fbf54ae8c134bf2d6c1e95ab27c672af1eba4ab24a3756b2d62b4d66a90f792d46083fd4a6777635f9bc28433d9e4bc426490d1e9ddc234c81f751081663d733bb4937b89342e3ba1e7fe43d878f1534604665989fad3d9f093c6b57c1e0a2aa1eb3d7933491de6938073faff5c1121e753fdb807e951970df85f6483f6586afb944c1f2f20192702c36f3ac6734bc9af30ca8ca411e102e336662f66c64c1fa0b94dd93d0dccbefd8577328f74f3587be537c757951eb3075d32caa3c4f487618acc2c346056d8bf30582261f9cad76e9c578a2c8c77e71da4f70061884239f18901113440cbd8ddcc9ce38ce69fef5cd055db93a04281891cb477bc67a7e4678b5b60a04bfbd833d5b8125d714d8f2a2d4dc9e663e7e8632f7e60de9510b344da9dd07a37ec39ae98ea8f67b691f1ee50a32b08383b7670e427dd31830974fe4570699d1cd635027e02204731ced94600423b203392f7921886558a9fd76d192cc857e427e8fba3d520986baf58da63514fcb8a33d756d5b033f6e61ede6fa92ef420cc39c2a94519c92c7ffb1473b250526a6500288de9d6bef033de5e6644efea3f4d1cf31c3d218682e6cba0bd6819229f9e9d1b6dcdc8581247cf7c902d1cc866e01119213aee4e71763cce3a68947d4d3594e6b9bfaaaa87226f4a0c0f9758593e70eb92487a522d64987ff1fed6f25ceb109dd4c857ce284d3c1174216c2522ad440551629c9765f4dada4923b996dffd6e24c38646cfa1e33f5447a9b80e1a7252bf4703d93e124b6b99e785dfa71fe9ada6d4d36f34dbc6456ba11cbdcacd25615f37a188272bbf963e381276020719fae6a47cb8d31d1b315b7aa86c67dcca0abffaef6d4c13dd04b12a0d337237d84776b528cb91834082f5cab177cd221e2d8d17c6f04cdc6b00c5a344a9716c7725f6e02e720d9c29047f8b2e6526b6d7233ca79d1a3104bbf470bd3cd0a05b4d2b5a1915aaef2a6e003aa60a2ec6e3655d580edaaee235b8c64ae3610c58e6d28c67b29f72f839ebb3a352f64b6e0ac45826754f1d60084fcef6b2c214410b350ad9a18dbffc4b3dade13ecbb52bd48d60c1ed7a54be0d65004dc6fb9436dc00121098784b756d988cf31c62046d896b3cb5f41334d274a9c1858785620fd1852fb837717c0ea64ddbf9b7afd5720ff65cdb81fc001e59a6d7286c5a32a18cb6bc7115e88840259115023f4bf86e674f4f7e906385f0807ca8357eeaf842844bda6dd0ad66a5b6a84df0b258faef3564002c74d184ad523f539bf95316eb16db6fb1a6928e8481f6618e65e4589f5a4948e32f123312308b2e1721c261f592ef2b679f328a3714b4f9dfa3098dced88449682d80b2927b22590706e71528c55f46f2358476a3fd0a78e718edd5590b9f124217069b8563b6830153e24f05e66691f8c35f888b51bab0a37ddf8ccb15f32b3292432c5bbf8f8c99d542821552da8cba1951da5b167e9ac10d12e25f371373eabf3293a390b77b078f43aea9782916eb16afa93a7632e7c85a1db957f2a94bb3176258f8f6c8767397ee9dbaeed990dd2f737d9331d247a3e04c6cbb3fce0457f46c007b1f0ad7009d4148090e0bbd65ff165c3a01ba95e54a8d580c29701b0ffee477f4c320a794094db672cbbdc3f98fa1b25e87d3231758e34e47b860607e06375174c534dee32f50df76bdd593cd94d60db0b0078d20955d19e1963818d58ccd32e1d47889e14a1af682c0b92fa4671b089e9719c6ae7134801806483c13bea74c71561904ca519d23e62c1b02bda61e14fc2d40cc0568de89672a0227fea652be6094d0da8e1c376210227b3fdfdd2a7c3b3940175626b86451e5151f69c6f2529f6f3a294a82a1490c421d652264909e69fc9a5fde247769ef9eef237b321c84c347a50a462c4ca01b1c5c9c0251489a97b4cb6b66ef459da4a3b7034a0681aece35dcd2643ec2ff14c7a25b7ce0716d11ef282ad42416ba897c1f6609642cac37278d244bc5df7322d83c1094a50e46669a72734a3bde99c7da7c503a38ff396c51c0dca60535f326de4e68df3d3df5c8c037eacb2beb006a07d459e481dd56f6ccd00470d9b2485745a624fe1836e87c8f40db65d6613b56855937f78dcf4963d89c146ddf6b11ee7f80c6c70ab79eb591db173a7cc8268b08261c62e2cfc8e7db9e32860ee9a35d57e36ab849a44db932acde49a382a69a26bc19ba70daaf73b7c9583a826f37c422c9b7f83b11bf88cb196921142cf9308ef0436705051ea5591973cf1f055d622c28c299b087c5c8f538cf5be3d53315143432b366ffa04e56f33357986d65e186e783b69c992a6e4a0ee916afa5068472b347fbbc45219411dee0be9718c21a731322d6bfbaef8b42133d5dd2ff15e22b8839c62ed42bd8337a38004173d8860327d1ba49e1640d40b167e61849c71f537e670945f3674be35cf01f7f7a78fcb44682be902249518c5da3aebff5084c26ce5bbea5e0b2e3d320be90f57368b24cdeb8f6a9bd71281e94b7bcea3c1bca18535824c012c67f639b52da0ba1490948a9f5b5447019fff926494a202485a131045ef45b3b4b2e7811bb077167eec72bc9ba85d1dc4566b0b5d89165d1cea080550581440d7e0c391c625419566bc1b1fe9b2e8849107d9b2cd9fe41b9384825665538635373f559ee35bdecf6cd0d0c629ebd3d2918a883345b87070367b5ac00267edeeaaf668b447a4f3d01a08c315c039c099c62329c02c866f3015493f56a16656dd0d9e81350c852440488543045c6db69fb307f62abab12e226d3c82f6763c26d2480adb8486baf1a4093e2450783ec495c66b7ca20f349ca003cc312ad19c6badc1f988da26b01b993237d58f2cb646bd19dcb454fc3f86abdaf1b4d5b3fc6054b56d287a2c7ebe717b3ab0c800b1d2621f5c5f1b70c41a6b264ef0ead2bd0e3130cf20ec0b8cc46fc21f4828747e3215a188a3477813c27266c1a18ce06ee4095bf2b8952f189a2fc2fd602bc53bf3bc78bdf3727bc7512a6cb421be30425e7f111a94bd0e7d9132a2ccf7c6b363ea27ff4f915aeee304f137fd2c54a0348eabf0a53230a16251f4cb423390cb379e62b7d38ebc198010d68c4c45f69108db2a80a335be3266897157154ffbbe770f6c5ec851d6575524bf86678032b0317c55519bedf838a463fe2f9397cb2103f1d9a5414f5f183f0b088c84f84cf624a4f36c29258bad67e3d45c5f16149fb09ec2fbb3cd9fd0a609aafb84f8d5412b8e5381d0c99a30fd1b46fb241ded1565ae3e4151ff692b7bd5347fd77ba1514adc266b26ed720bfda737d31cc9240cac4b0d3c2ee65a930b84542c76784af094feec4bc1f1b511f9d13581b4cc46cbe2cffd160b6c8fd7876b10ffad8237601e450009f0cf7095ee29661748bc4240072c5a05e9eb85a1c4685adec4541e919ab1d685a10e02dd200b7576d85d1c3148a9254d2b93b0515d95ac8f27daed312a95759d5bee95a7f318e5471dbdc481926ccd27885eae229de81344dfcbbc7201ca531be42600ad6355ba00d15728d4640c37fb46dff05b9ad83679e3c16e40f701feb661b8551d231ea5538987cd0c2ddf4392c4390a30464b9dfc7c91af75d31250042552e01cd0f40b4705bbcfd1caf9cc20f924f8c989d338df4ec283d61c35e15305f2562314d50195dc5ef63c48066ef77e5393b5e8103d1b109909e0800565b4db6b086590feb8e42d8c06f9b86765709ce63fe54da22341bb881c136b434a23a66b311b66637e2926330acb41f5502ac554752a46705e0fc9a61d1574a2bfba39e6784f50484dcf9b8b593bde37dd9817034c74d9382d50d8496a62eebf068b2261b19c4d266d78c41acb9d3b2a33b251587fb1a3203ffcd3388596fc721dc86ce29c11c4933cb05bfc91ff8c423d929efa0acb143ea6012d0d945112155f103030ab8ced71b40affa791c7d491a24e75ba57dd977a0da57dd19b62cdae87246374ab0f3335cb14f1a10a318a488c7f477d144a759245e0aeaeb5f6dc8a08367202dc1d9e2bac35c56b4d0ce02b85ac77c4595d23ab823b1b1df535e04b75f31e84058823433244a99c9732290673689a8ae6f7517dd53386de38c69e62f83fe53b0a7e368689341524873510d2c4d7508d01c29dd8be1fada7ce101a8d3665be6ecf127e89388ecc9d4efc879d46c0c1c18fb0bf57b3ce98bbc4134b4540c4f58bf6fdb4704375f3dfe21d72cde6c3cd7b29ef2c3ed15bdcb09a05921a01284c6b21db6170a1954e6e16da3ae944f2663845e2ee765d9c01c3c2f23d3a9e41f432f263bab12286a6ae7eb643d9b17885b92c98ed857ac819b8e4660b3d068f213c45a18138bb16f091a08607446ec3d9c90ee5e7574b3668c74006871624fcbc5ddf21c3c1e4d18185530885d96ea05ee7d7c09ec7e22098fc656344edf9fcf02721c236d33c320a8275fd7b5dc71bb373d26d2c0663f32af1aa24c99599bbad234d38de8dd8669abf217421004773ec351d013ab628d8c0fd1d820d9536033061a6ec0e883cd4a9281110c53284ba1208b091ebb36af1fa82b123d77b2fe982e893a72c20918c52efb70271993ec773bb710c21432fecd288b193b4615f168a5156cfe7b73517c64e1a619a991364507826a37d4514571251e6d2b0a36979a1775ca7cbf73f8386f173adc133401535ccd3276946d3a4e7c4c1e1fd371e186838c7d8e0b802d90df8c23582f54669e901f10fd33aa6cf82951f53a7ea0695c82ed9da6addc81013e0f84b9d6dc5bbc74f8adf904ef0acd85eaaa4b4a0847844f032b9cd1a894e6de15d685620e9798a6965d11e9a6c77a77286c6031975cf3e82414d93c36020d7238f4efcc1fed64d1714be43a4b4d511fd2ae077ed0b537b50b587e4df2db6f97a7906b32e4f6781023b40d985fb5937381fc22bbbcd9b77d4c001fa1ecceab6db8f0bd77e84ece8e4f22d56238e73f9287042761e01c770afdcc0e0aee87314544131c3dcb429c6f7075534ee3516cba47122468c1519d928d3ec7e0870170c03be9f881fd7235a1c0b22d2102a230710cd65831d601c93dde90f2a3508baf5a870ff92f66da89d14228571bdf245aa40c4a1d802b35db270972d18735d172b8f051d9d70b96e95fa3bc6389d6fcf7e2e2c73a223a81cdf0ec43e589dcea3bafa099ea02a13e4b9e6a92214696d20c8a7f862a508d1741c96043457e70a9b9ff417559fa3aa299a9443bc4b62f8ec4f40ad66ca067d27a5826d1554931c465a3c8d2441390ecb9f1bc0596dbc65149d419a023df5ece97152733f19997696497a9079d7c2f82739b19966d82f490caa12c7d52e5d35726d3f47bfb24291b243730c44d9ddeebffc3e66c662800109b6379b54eab0cf9dc1689918ceb52956aebebd8ee017685bc9c9981f4e7305b7ed1859619630e39b4600ce69a05c50403e26c48e5fb9ad75c74215ad85ddab1d6f2839132f42a359f1af2942bd27e74779b090207544b5c2f5feabba258f3d9c131f6235ddb922a1cac0e4cb65d3690012bc1fb35bf20f06b20ee2cef7c3057b0848e6a2ccc1da2bf0c0fa262d1c88014a95f01012c17e44630579e27fd45d0aa059afb4e162a6f7087b7c1e9e1bb0c6733ed16a3e0a94a2c199116f3c04bb6e14e36d65c679a9c80f6a467014b7180d5aa6ce72dc6bbb95c5b1a165724461b9b3429bd60befe38436100a0e91722d6794c3d9a72e4567e21132b3b0c58b7d48f31e7722717b48694433c7f3d4cf2827869db0eafab410b0dca0df5cceac768aed4665e4290a2739f4b94d12e8741de6e51edaed282e059be1bb9fcc6538d876e3a08fb26486ee16048edef010cc37b127bc5666f325ba809ce26eb6752d38daa8b57d146c850686159ee1371d41d9812453e5cb5f3cda240159977585ccba38f289e8b0a0e823fa9b3ea6aac867325388c935e9bf53e3b32f2944cac02ac1e314d12751e4669fe12bf1616afdb092b5670f101a315671bccdac4b9068d5f0dc9d8fd5b1471b77f76e37c68b5c3492ed2be1d804dc3ac29325e0e3b99cb093ef1f594f63310f9f0d5bd81daa2022f12447cd00246f4639ccb9ca7980d00301d43436b5718f6fc9cea62b77bdbfcd5db0be6eed3aa5f52a726c55574907c0d022620755038c1c8374715ba0b183ce4f80b01321df42a1e72d649319ed409afce5181630c62c9cfc1068918d40845ecaff441eb5b3d83850c41ac8f014c633d5300e2a8cb6b7f784f0b905d5ef613cfebd2014f384b7a9722f48a686a43c446c3edc5564c020607dc278c964946caa2fc07fe37544b457b3930859298f20dc9f4d036cc8225a8898e574d393662b33442e0d97b3ec1a00a915cd24c783d7b7de5206113be67e7aa54c648073c1db4329a093efe4836ade7292b6fbfa880f14e3d680c23c05a353ecabc5bb96215193c2aeaf5315c7bc3833092e9877eb2e6ba21410ad0330ba863e36be6d1446c61afddba0dc1e40812eca9d60675e728500320fb938e4d19e229b8a446bada9807f2700bb1156f19f9cc27e495f28cadb0d6f53da7b0f62037790c11674306b74e713ed626473089dcede6f11371f53f7a61c5c97b3b7a7079c8255ac571a4dc1b3b8e8ca7beffdba8f164014e863aeba4fd4051fb09eb06a2a673033943981e8247b2374ac7764b063817dfd3c427bf770b3fafd252e04575369cc7877490411007dfee3fe5179cc848e67b98de1083bc87dcaa29442b20359bb310c0964d53d092d26cec7543f5fe016c9471a4bde9954efbbe9b13c93dcda39ecfb54e2612eccdfffa3656eece0a2577a8dbf0691f2a16e70a62c0a7613f5448241376a8bf48dfee1a8d2a108933944ddaed281a4d2cd907fa30394109fd8a5e2fa9a4a97289e6d121cf028140371d28b6b64c89eeb22d7c402eb8b81e8595f92a6f31b5eb17411aa2fcf0e5f3010a6c7e757918daece5a929ee31dc65e80391b17aadc08efba9f2c85cc3938191e5a11a027b9ada3a533929bee671426586c97e2f5022d94b5ceba7b796201c67b956cd9b5651e423a1b4ad105f2922d3a2dd7fd4f8572748b80e9a4cd786496ccd027ea0dedbd0c67016a99a5ab2209bda9d1ea9a8867ad512c109fb36578a24385fca28e395bd1d596d05ceef8f4265975b702564adc79936c5fc3dbde8bb922ca94f583151e4feddc98d2684b63b3204d67fc3d7ff232e41c65ea4455c31851d1506782777bff59e5f83ff56783e1ef22eec1349e8491e632a79f00c31f16979afd4f3c224bdde7d247a58bea441d78ba92a1348834cd10a3fc3e3487a4357a0b1aa5ce371359b1f003e9663082f1aa3d522e4fb2e4dbc9bd112922d50ecc2a643f33236cf19e4e02d6b5a91304d6d55e7476e452f44a01af31f8c8888e0063964491d0bace0cbeacee5c6bf384949bd7b1cc21a94d2d7c6bf98f2aa931629ff874f1b33e18a02b6c713162ffd35ed7b559118ff19583991bc2c0d0fa067f4547643c84d8d3a1be04fa91ceb8c3d51c03363677b12946f23439c3a21e93292df6f5e95c8a73c4ec0100d7f47ce1e75b6eae4a53443e04799728766b2bfa651c01b7250160c94361b7dd203c454205ce78c594573ad32b4045d5778aef051a630c0ff1987c59054b1a7ec6fe68615e049fc6d55c90e1163a0e1a5a5e94858dacfa814462c6e3d757c13cdb5c37b111a8798a29fed2090e7af3ebce9818a2087dc3207f14a234b96656251c13a7f608469599a56640f9ef5c6ea9f7793d2d01873a07235e7fccc9de7aa6d52d96f5738ae3b775f9a8031a2be2a0371176f6bd91d8f2595b9b3227c774d22e05b3073838283fb9536531b4ee242659477fe2060d743eed14763835fec2f48857cf869687b82ea64e6831e23d309e5656db31506e8c84b2e37f733e4b66e51a6f3c226e9bd517fc100035c56f6c82b109a444d4e51f560d00cf4a15d6b8ce64b6c8e02f1ad45c5a5c7ff785ba23322de67b22feb3ec97cf6461127fece4d869ea2953470fd4d0a88114d8c5075ae9bb95ea2ac8b24c0d67113f7654dc5a09902026c1e628501787d4ee4113cca5eff1d5db0c282ce23d181c1edd1f1b34ab1e3e7f71c2325d77e26fc3051fe97e23744c97ac2d3a9cbaee688ebdcf3743ec90b844c5246084040b77b70e5178a46b874e85567b85a700b624d9ef70392d5b2e8504e63a3f17a21c7602a47707d31bf8b3572b1d7c2553d3ecab1a17f5461dd76f0b07396b36733f5086b82c730bcaaa122756f4a8abf6c1e993ce18634c4df869149074a19a92a141c5d087c72eab58fd29b1c302680b2b9cfbdc47fcba3d1052f64706aef16936b5d1c544937bee602467d227b42eb08103496c84c705d7ebdf56504913375db6fc44a7c245ee847b371c5f339ce6f700bfed94abc90cc3c3fb5d26ac548171db72a0b7456cf3fe2ac12a2fd66faf24bdbb7a056ae4c626e6dcec8716136596f02cb3e5ca11c52cb630a68203be1ed89a8cc549b654d86c450428e40f835856fd62e039e6890ea275b56e7f11eeee41e04fa8660e6d676eea4cd13405e0fed4abac0dfe8a2da1f023e3ea09fba7d9e07ddf3f24699f12a9de5ba9416796c3785c5dd3bfe41e3cb775a7c5ef32ea341a6260a7caf55e45dc06b49335656e0f2fcacf04a985b01c8fd517abdcac87f410c28e1c8c08cc717f0436cdf2737051eaab42e8c0d979e17ef66544e8fd8cb020c81dff6fdf8f9e0cb6d246571ee6068cfe5f89b3c9bab83fc73fd0674d4e1553e26d306e6d391c71832416c425afbe495c510c5ff394a895a522c875a0c7b10522f9c425d6eef967e55935a62f3ecb1e7cd5a8e0dfad57f6fcc51e68eb27ad1919af692dbc7688b1e0010506105ef76f6ba1238bef1372e28ecc945dbb45136ca7453d5bb8fbf32bfb94cfc3ec61152fad062d6f269317a742577ef185d46c8de548a2fc080a56c874d8f636bb17d98b4a48e73e9ada78fdc109704fa4a9e3e19ce59b33fa8776feae5c8622c8413815968a804c9b88e0b254690a5837bf3453b07eb1dda43d42d326c31cb5f3cd709c1b3b8172cd7bbf47890789fa260e77d8b40865d00103ce844a66f765aff2193bb17523d8dbc3f0a6019e6595530eaca06c17817d7572020ff234e621185d6d7f5d34de53e8ce18522e75a2042315464cc8bd158e98b1460c6f9150c3280a168e5bde844c8c7501dcca450c497ac171e5c071f4bc970b54724699e583833031a0023e35ef704cf52985b1081c1c8583f5bb4205cfc3aca72bbdc5c2f717c307b98672f21737f8e20cecbd4831f4111dfaf971e68db26f94b56407fd82438eab3f4cb27703f33150f93e9f9b2142146094b80da356a25870911420ebf0d15545c0b0f21792e0997a3f97f7f79b138399987a83c116a35ddb5a0ea30be18a86254e92ae96a4375629b18aa1f544394ad45232f9f1d0bde77f9799905536d12c25c96df8da38cf72f44a700b3df376f5b63511fa9b2e840bb34c34d6fbd0beb282c9c7cb63c18dc09908da62319544fd53e57d236c11ac09624121efe972043e4e525133d92bd160be00fe1d093eeedd80a54f84d4abfa749288f2b8a5c52d71e5ebfe37ffb9e5c9a01ac60ce22e3ee7ebaa0d3ad3e631346e26b65761c64c9abcb0f00c2b820d3eb2a3d5971d725ef36dcaf3c61a0dfa82a097eb9e18d377c2f566d01c884f806baf525a477c023fedb365a428ef66308c8a533eda551617d3049bf67f12a48c1160e92eae1856153d3c1fc49baf87435e12b52ab2ae940980dcc41ed239ca7054c308563fb2769926f35aa8e942fb97aabd1bce02ea16d4638faf3f73751798e46a2aab91a7dc90c1a8aed75028a4dcb0f144044a76370e6f308d832bc30495175730a22a485ab5f0098de5a224672180e08d802fd931103cdbbecfb99b94a8afd04ebf249e0f1823001a8fbb919812eb6b1e51f40fd1d5b79ea392c2682484b09f6602236c60a27149d6b7b51122de751827d4f98be5d11a6222ca91991529ae8d537fb1972eb0a50506f74e401a37c214151f5e0d517cf92ca0a17c9647624f1784581a0b3d72b4edb399558872048633e8b1ffbc3030237e9dea7469236776ad5b3a7a35a7d2eddbd66392abb7e53b95528a195bb205d20932702e130386d558e3bf7980f1badb9635411b45882dc6a326bbd8d65411bd6d85b8065975f34f0ba05c220d78dbdf1b4a1b21592a93c696e78057b401e532153bf3145b4665011a76e886e97cf18b588b869f3c48aecdc9c99a38f0c20b04bd1c2ab4cd3970f7c18711896c0f57c84fafaee685f367187c4872cef9f5dd9e143a071eca828b69d1dc03180037bc9d625b45222a87c9f28e48dee2f225300129f06df96e658cc5c16f47621c024c3c20762431a6f4fed5751e2dca6441dd0d94f6f8b6b7e10c182a6c0a644ec11e6285ddabb3e74019e80968aa875f92cb7be66709d976617f959f00ed405e736716129a458d25583091391ab0e593b0b60076c8bfb5f5cfc8753c455f5b643e430577bc69e4739519baad4310b8af349f15473e792adbca2e9b59d4a8f0eef95adf9422390b9aa69bc18480de1320832329abd4dcc349c981eee42a4e135688cb4907523ba6fabc9fd1702ac4e23c65d4648d884ed0edb2fe3f821454f187d7d64c22533810840471e7364ee0210275a8ac50b3eb86bd588d1d6b56ca43ed3131f402969708d69688fce31e2dc1e175bc3ecd3042815b772074e641a631e41d9b375cb101c89aa3e2c764a2902b06e4f33aa2c90fde98198ab22fd8c8c47224a6ad8bc199952ea098ee144d97c3acc65a2f9de38ca450d2f1aa2d36ae8bcb9df419de0ac0a7b9628bcc383f3f7f7363ceadadfab82029824a36d825923c7ae69108eab1abb8b015123684a2b34eb7049e615b7c71b9becc2b652a88403005bc5cb106770be7a6072acadb4cdcd51e554c2445eb423e0de491b76c1f538f906bb37bd6275340360821568d0a8896b9e552006f63494f3ea2d9053636c1b5511acea588ff0cca24573ee797aa68116616f9a55a546a8550e6db494f96298e3bcdaac2007b85970120809ecf363fe09aa55a2a27635620dc30054dfffd5fa63f8339204b8b089112ff13059ac249df42232d9338423404796467ad7f7559017cbbd4f5540314ef2cc924f78b4f0531d042980b495eb6a30c7016eec4107c54790245e0f86277ce10f0f0225d178e8e7605671ce743a359898d3e8189984f689da62a57e4207285d0019690cb802e51a4a0a44e407c93f793c671fd57add267d91538dc4883fcce37f62b4a26e02e3bdfa2d8005f9213e911e05b880c2e390bf012063678b19baf25b6e0161c7732345302013c285d71d7e9192a0c57686557d02ccdfe5eb27572a4fa08da00d9c040a3f5a98a603d82592f801f10d37dc1ef26d6dc0741a43a9340ae637abdf261a0df26f6236a4b33486f20c3d9814ad66a24b8e168cba9230e2a49ef49d3140942edc0d7f7640e23079146056e7917102a8723ac509e44b4f22598a058561b8805f632535e537f1b89a7c366e13645246b2a75dfa4ad81ed7603e7e7e93d495a89ffd41c171ba545be9071d0541ce4cdd56e42117107a6c986dcb347ca6b59008764f2ae848a7a217312e6e514627fb83d27259584dd64c36a38e30da1d9456c0c35505801001bfbd531e92953cfd2ee183dd3eddb0c0a74b3078380f78b177078a3847c89c13bd23c75546175beb43caec9869de947eb073449f4315849ee8442a4548ab6910d4335cdd1d34551fa3f95c4120b2e4592c8de0be9b7cd586688e7c5a42c15eca6a2f1afda4bd066b3498165601195b035e938be2ce34c469bcc0e67172aae27c985b5ff7feae56251fb2586504c2d1bfbcb2c8641724d3b8af2431ad69db78a397b6df40f355da8276be2a27bcfb767077b3cb6cbb3503234f2937ac28ab3f3a97fc7cebab5845e80a0d4b0a1cec80cf6ca0cfdb67510fe049fe0930443151c67014a34ebe36bf89e752d31f5584752fa9e236334f6b7c0c5e953e8c457b6d1c8a0482267a6af27a174c8079599532cd2f425652cd1104c710dbbcd045d0750f549e0b00e9b6e6d2a1a58ab55e40465d7f26f796e233630496cee8cc28ce1f63ecbadacebe05851697fdffd246bdbd743347d975fd37552a67172fd3472ff5bcd47611c7c85ccfcba4cc88c85c95ff28ceefbd3c27882e8eb0b2397800b0e2e7c01ebefe2629bbbd091420e506ed2e1afcd29e43e13442fc14721c4e176bfb57372bd93827da58d2aa0e3de7abb32cd39eb81acc4eac680c823017432aba491b5b7152e74666dce7f83f53e00b23031065c3bc57ba9ec584596a671e65c2496635bdacb61a9ddbf94a2d340ace0417c55592a3dc292e6fa78c12972e5b6d7fea6945918b235e7225c2cdce43d331cd95142352246ef9ba3c40db803e554e17da161cedc09744965c512a06d9b0a09635e02e5d6b3c341b80c26d9a2b68c2f64040049c9d389fe911caf414ff129b3545eff88eef43842a4f17cc4bf71caa3d4ecac89e24f91537a289736fe70345bbe6e281763bf245e89677a87ca769ca54d5b0c12a364496203f5de0c1fd9c9af6d1cac34428dd478980c697795e3e41fdcb9621a8788260badf4a0efbc47dca3e25fa7a2872301a703a41afa16b69e9d0c59994bf4e233dff844b6061d275671330a7e856867d2842b23001140f4222ed97ee90f63234477d1b33834fe413128c772aae3fa7fe86b7730376c26b519b307c09193300fb3cfc606807262d7e9751dedd10f76da7a27f78126ba970586d0ab31a6b8fcd54b4980606bae2b9ce11755c1041f4897c5dc4d0d24c2071345db38395e83634767a2d08ad65988717172717c38afffa14028b4a2391e9b2064c4a087f738303b907aa4f4784bce46eae30a5769ece0ace7377862d48026d244b33798cf4e5a4a44abd7c467c7141a732024529530ae0bc287737403e1aaf0028108c9f74dea62d082806b8e7f5e00d07481b0b290af34ede3216ff2966cf1173d37e7c55fcdde9e5688e6e4be14f8d62108ff85b99b09a648232b383ccd92de3e546abe1b6fa5879d7ff24e874c810327972c1001450f170ed1db08007081c1080a659ad48a09508c73b29ac5b6aef9c6b99e6dd94b088aed409b462c439267a827c2cf90c2b98796f7691501a02bbe59d81e018e716605f4524a988b3dc0e92813f6a1564f8c83c3b7e6616f109db7d3bd64fe759013c8ba7f6489806e612a7ceff30e890b0410132587ab66ce4d6efd4cf2916a01623fc70e5734598c871c73c9d623d646d53a39c1807699645c63a9ba807663c2062c1c245b706de2b3d614c8fc1c207a262e79d6c96d8005abb4e14acfc0fe5bf1e1bfb2c5478c7d42c5068c4a5e17ef54146fa89cbe71b1b66f392c894b8dbfaeaf9f5645e939317097f626ac40fa1ed16a434e879293c02420db0af049a4f163e49b8f432bb03d171f430e247dbd7a082f2989f296f00abd746dac233e27a6568ef0339cfffedf9054b23dd7c6b41359442da815454a7c3b1386f39d30ff139c6e481bb2ab5bc8e0e181d709de86778efc2a7b360b9849d942c10c0661dce04b1978c747c5f419e3d3e05c8ac51b846631e82f7bbe441b40f9e30b7353c689f26ee87514a6e15e60739908035a8d6508d372b21ba713d6b82a64c29efe898df5638c9e5f676feb646528b48ea48f2b6263b9c57d294b7984fde061d19622c54906f53f10a9a6393642ca00d0c9c2949859d475f4a5c793c551ebd52d16e1c0083e6d98576ad709567b8b81218d4fa87723a6671d2397e8e84342ab0a4bf3516cbb412be9ef72b7a1f2f6e1bcd8b749dd1585ed4a679a682585ba5e5c88e7537d6e28a3ecd92805973a90a24d7bef482a03dd8f7272f6224f7e8adf3d668fe5a3a8588c8bcbf176770b037b20c810e8b43cd2be536681e0b05981d8b0803618ef113ed2a589cd13d443f5e8d55db4e7f328101f12996ac64fac0734c0568130111355aaec6767608265a804af340e4aa9e0ad893b82ab012d21fe8c66865e794ce0e037205fbd3de0716033d4f896f62871b6cf45e07fafdffa4619cc81fbb5376ba535e64c4bc7006f6fabadb2b7f33bab78b3d1d4de58b2158ed0010123c8b2b8a100e6162f21328b1f547dc8382113df93d67bb90ed79492b1b254baa9f5bed54598d033e7af322019c2bdd4e7419a1ab5503c78d5fa5c7677546ed61c58aa58e4d5c5009d729638668668dd242cf3646eacab7a2c81d8e0b54a3fcf2685e684e0aea239ed0831cfb921c45d72b2277c6658bb3fb64b1c2fafac61db765a4c6dffa48871cf0322d76f09b2f4c5cbf5c557675cd05da6fe37332be1ad0e204d7f2f1d2a39f5db2095e965e98ccbe723a196038ccbfe44832a48fbd12a4fb88baebed5be536c2cd09eb0fe9187dbd129b1b50242944c524afd170239b6cf4a660fdbbc1bc3ab87c4820c7abd0341a25c9ae52fd8051477193e11e519ee093e39207cc15dc31dbcf620fb7cf5e26b19e2a1a5f47640d08fd7ca5d04ac05e0d365ca71ebe42b0122f2e9db65f874c692be04e6335b4fc06c9666a29450da96daeede2a040228b4b2e188511011b02bee0f0c3917aba1292b24ce911ef967a6cacdbe569bc472d3a41490a9df19580d19d9d45875d28f155a91341c61f4bef1ab0706791240d91587e1b287cab15606c02cdd7f5389f4d93f2bbcf4f4f876ab10bac088be34fb0a1795140bf060b387c6a24dac3cdadc4851b46371221bc3674ed1854165544a89de04a141ddc9255c6c210517b02b0deae5e4502498886db4ad41e35040e314053501dcb19736f81989f7e7f2c8cfffb1a453f4874c9a74e1dbb543626d817ba71e449441fd763aea9591ad44cc182aae247c831c711624f746fd2595e748bcb1edf6717880bb69bc04d3d3afcb36fc3b874ad26a95b733937c40bf0c70b6a2a5d18502ad102285c68399008fc508e0292fa447799e56c4b8393ac70a2d470c764af277a72e16b42fd72ebdb87ecfe180be3de28a60f3ed29d82f8b29a675fa7cab1126ed4f7f4930f44fd591c1160c00d003b625576ee988fa888a416fbf8ef41555497182b29458cfbbf87d2e62d1c847107bf7f60ca8f16c0993d3891f16e01d21d5630184b6874d2bfa3ad911fc9109cf02c4d60cc234d24846c14cc166a2a0930670ae22896576423313fdb5285fd153d2ebe685bb020444857620452e855f055e75ae5f370479f5eda137c54ec357ab0582c399433a226a946ef1cf029d2ff1cf67048eff9e78d1820f13fbf10a56bc8238f548073772ac6b916ac6832e4a313652c611c954325cb4d32343b74a540b9a1a8bd08aae270cf97d50cdecba3941c6b05ecc05146e45b088269a473a4678f25055671bdd9ef91424b3e9ba9b4ee29401db5287c416df85495ec0a45a3111121e62c9c925bd7d283b66c6094f02b437dd87bd04bef895ede7078cb657b582b65cda57377464eea2692fdbf6831ec2e7ed2b0c6e337a52afb0417a3877f2e8305a3c0c70f2323e7f5fb1a06b9a3ec1e1561620a61994431ab6b72e9ba58aa2be6b801f1705f8f3f5df91d6c59b5a156487faba1d22d17d0fa968414a535819bd6d5affe7fce72062c049be79cd664238ca6ff97b95cd0a6c68bd321bc24d42c09a6d3bfac6227670fbe0418bebd723a13a0fa897385c8825bb2b1c21c26e88f62b01b16fc2de008fc06169dac3bc967d712c7001aa2e536f8870d518d32e1fd518c67d6325cad4ed014406487f0821b18639b1f6c45543a3eb7b79c21cf872baafab81cf15d94fbbfd6fa89d33c7138714258ff07f678bc7f80d53df2af1df188fca978f5ba564769f7c6a22350325781f6b129e17fd8f7739fb1300ffddf878d0388113bf5904cd4e444f51edbb361ec38f56830ade3aa6cbc184482aa37962443a585e6a2984ed8abe3f54daa7d258ccc3d1b0f0dadbed3b3a5f77123fc64180771ac5e4bd3507ea369640c4dbd2c8dacfa8ae990d698d09980f961bf711b2936f73c449c45217a9765125a86e0571a5c380373693074a28cdd883907d3efadd3c7d567a69862b70ecde87831593de64ea4104eddcaf5fc439e3763376b4a24a14c9dff9a02af09a01bc783a4d810e37fcfc21633b083ad047be5ad84358cbe0efaa283893453cd3c1bdf6f21a56e8f1179bd755ca58f6d0ac9bf6afef537c4154cfcabf219d75b316f3e4c67e54041607e037352ad292c4a47d8e6ca1b004bb0b8b8554842cca34bc20f3ddf9657096cb8c64a5b98983fdda93777b6de909c27a8333f4742c972ac315ca464a44aa45cabcbb961106c6c9194134f0e92de5c9efeb003a4da55808bc74a1b555c5d9d10af45507c8fe34a47b5d05e9fa99b6b0a8842b12cbfb33497e3999b7bfb633484bfcc901ed50669200d765331d745c188eddb2f3a31bc2eccc69efa53034b36eddb06f7422429d3b5108bfc127a1390832fed9cb8906e5dc885645aa13306551ade853e27e12a4868fe5d9a367d5f823d45de3df02a448d282874cece7c38e5ab4839ad2d39f44c81d0fe110f021ebcbf80a5dd335ad07736cfdde52e5f3cfb6e4d24b2b1cbdca85cc6b8c803d9a6c812f1f0f2b5af95a7c782feb123051048e8545dce0a57c22e90849be3683147f3d434345306dca0c90cc4880eb8070700ad0273089f41ba095abc10193b294116082909597eabd5ed94c6a4e8c005520cc9c08ae6cec69c64f566463af6dc47dca6e56e1aac4c2fd37207d37269cb49da0f0a759ca442197a9b0d7822ffc725d243dd7e19dcf76512fb24c8df339d3f41735ae04aacc4474adff158a831c201f1e745192042e6774630124d2b99b8729403ed644af37f2b1c7386ec2c76764239fb9111c8c32ab97dfa83d2f2226f06f1827dfe0ba9519e86ca66c3fb40a17f6cea7bfdd968a1555512f6ae914624277c640b83888e605d14107acc4ab0b783a044e265db2d6b108897be6cb012c632ba19d496d0d0f9846129309a14fef58118400a19fdbc5cce1a9017144020a7231bba913ca187430c9a27c38d8a49f250f68e528451de98601490a92dca3b8b3f6c786c10184488e7e260df1708fb602a29606a6fffcde158067c200f967ba06b94458a48c352628c450e78e3f58f337dd752db3e0d783207e810ac369619db72863cae12e3611ae5ed3cc1f9d40194f2519a3926678ad7b8f2bd12c02f4dd824410b03afc35d395cc3d206057325e60eb09cdcf930bc3aee64f5796f202eb33b29549916e99de2edc54d34fc9b26a83784bc938967e120d0cc570bdaaf02cd3e3a69c76c720193354b55ac09d43539de1ddab5e0ce0036e9faf81118245e5c60eeeafa8dfd3825f627dfb14722aa3b6a872464fdcdbfda0476bf7db573b0943af002aefb5dadcde9b912c843fbb8ba5238159c3a8583a320be9c592b3883ad5a12f193c4857f7f549e6bdc54e628d420a9a7391302e725d939dd564b2be21f2acf71ac62c43d8f1f053b2dcf540edfb015b8556c70f83b433dfc906dbb7496597c16473e2d18523887354cd397a21cc3205d056b2f00c3ec84e98d2202d0de15618abc28de37a0c32c83f7b4294e4db6f5212eccbe4bd0280b3f70b1797fcc72f4bc8062441def99550f53f100e26867f64aa1a9d4a476eb463e9ab80b533b28f71180e172952a9eaa6bcf0c039dd9e59b45217f29521e52e4f6c9ebebf13815a2302f33e688612ceb1ffb18b9e3242ea7ad855518c12a25846a757f2dc74206615f2869173ebbe40ad98593ba2ff803ccbecbd50bb62d8311789b9a9a43dd36043d9a4a44e5ff841aac2cdc6b273b2118e435045e0f5ea0fbd99896e03e0759b5a0c3243c973163093e2014fdca8eb66b34c67dd1743e2572ba9b411191570a94c58fd45aaf47249049f74601c6b22319913debec8c8742b71b639d52d06030c8e9577d840c6821e7a79db5c972f79486afa9b76640dcf9dda53b91632dc113f012ba72bafd7c4c91055d73e73f2675e4088a777917947a1a75ffad642bee6adffc7d815d45093229bc0df9f44e932a40452d00edf99f8bc4351bb684a8bd5937c8d0f9262d91ff783146269da67679c3b267f6065c7cebb7b90e8818e3df5c58da903022469ce2b4202ccc3820c8d67419befd41376d4d2f3c16cde401f308a60dc09aa05efe14afaa034806130e3c1f40453bc97afdb1711f647f9adccf3883207a9e6b7b2fad2acfea04d74ca95eada346c3186ed2f76a0428a11c5d1f3023159e7aad302a1af490300420328c69c767befbfc3137a19802b8166ec992459d2c6fce33501a6251dd32a067a297acb86a99bd65f608b9f3c5960c3958ca11536ee7a38bb1dc7285f5ad327afb0d78812e513ad956bf5af6416c240abaf73933cc99dedc634ab31d0dfe86892c68b51f588e18add058b0b08a5ab18db03a19c5e1d0f351183be3e69b7a1bede7defe2d9c92d9e7789be53e728016f12ea365435b05dae267f91a4babffaec68eeba2ff2ec03c695e30e7206c7de390bb5f09445feea2598e6f7bbf79cba2c3082af82a13f10b081dcca473234f2c1a22080b89177584f1e56aa174925fe68c414c1af80db76a42ed6b067fd3ca4c9b546d14333a4f01fc92ac5732320a2c532cb98cdf0ec8e5531c8741e6cc273e96cef533119ebc01a3ef0547c6ee61d5cb6422ffd64e280d7dee2febae805132edb7b1274e61b987904567334c10e9316d5413eeeb18523b4edde15432e66553616c98224598f384eeb86cce94d5f804305455d9e26ec684f915ad93803041a970cc050e2992961948c2ddb924049068150ef52e4d00fd58512d9fafcda67c4d31b45e282e62318537ce54a1b85d7ba447978611aad0a49ba5cf5e903245857df482b6017615c2f328e7d588b2597cc68ebd304c7b18036fbe0b700f14978d123aea127045e9e26ad3870eea11e9c029d4c65a7931bcde5ceb27a6725b80d715290db3229cff8140f78acebb013826e794ea33604e30b0a973449dfc9b580c7ff318552696e848041d3cd63a7f469fa046b4b9ba67ca4083d851f5d235dcdadda401bc51026a670f208c7fd83226d04130e8b68ce34839b49eec0a848da4d74d2ef08661d6b7e6058f087e983d50e46c81e9119785eaa753e7c55530248330414400753c74de32db699397dfd0aef80426a494eca8b0c7dffb379743092bceed03fc1622523e4b695b8237c8af8d7ed3a6371baa9c823049f3a2c56cdb99aeb897ff4743cd4c54086d2dadedb6efa60762a5fbfd926ba2866580374b0439d1ba36f1510fba20a9036d6bf5400d7de0d1aeb3afb16877d213189bc255e17869ce4eecb349ac89688dd60f16a79024abb9db07f840e8b4cd30d8bdf71a74aba3a65b929a1a4c0eadb8e4ce80bb14630bd3ed78e6496d1071a72241b04c3e66fa9489e45c59cebe319973bb5bc1a6f9ee6c2daeaf2c775dedd3aa8d3aafa186aaebb1e59d26173863f20490182e9d75a4f5b63eabf2192e8de744e46a7459f8fd81a8958306bf4b75243772e2c1ad9f0d3ef17246a66b2a40c9081f4650a7c434a8981a7c6c44f5ed4f5b17de1fdab4720292c32a8d83e6c62543e6b73543020e3214625d4b61b0a1bbc4496dacb35a393ff0f00c6655f4cf5705fb42cd155fc678fbec235bd9deb3f4ab9e13d723845cfe3ff1bdd2566afd2e2213649a6e6e52cfec28c85194ee9263b068e56479d62d9e1fccd551f1b95eb86095ca8eabaf8b1ee62ff341061b815df184723723ba4fe5c9fc0c58ff5c33e067736ee22ad24389e880170c000f3f14a213ba63a1fbb5d4777825decc870361ecb9a99f8525efaf9a75ea597583ebe2f4631fad9e85cc740c03a78cae455dc3d460b9a7df94b3a997b17934044bac6b7834bb7e817adf56cac3a9dd55b6eafd99f08b389e389f560f9c9e06140358aa8cbb887f3d23f0c3e3d93aba19df3acb3df546362d4f8078d013be1f8ec592a21adf5bb9f7f32945a7d08e64ddc3f9f574d18b6bf4cfbad6c8498f185e7c171d9f294811eb2481d8e62def0190150d442c6c38057e34348cbacd2712a1ae2f316f2bd405b0f64087fe3286e4eaa1878a2a1177728ea5fe4d70e0da155bce5a6a9e18776091def9a7c4faed6b13809c863a95e67a9e30d4ad65b4371b6a1648938a8a7812a80eb798c58e6a11310ee94b2688d8799d80aea30ffe905c61ad897bd3aafa8ceafe82d9cd60b36389e6aad728eba9ccd3b977afd84e145f04c8c73cc3c9b75432c2c5ba4ec118bade22899392f83e417a6205c55188741dadc0fb483628ec3b584fb33ff1d6cb23be9028082edb4928f3b3ac7299cee43411cf7cada1db5e2fb2df21d16921b3e82004fcc9111f66a68d77cc6c4aae4b2b7d521a8d842fecd6b6bec2b61deca2d07159ccafb188edfa1c21c5c52b899d50e97159b274bb64c966704074fbda926b4f8c6be9036ffcde89232bd31735b5163dc8c6dc760c5a080311b8736d03acb40500b1dada97d60c5e56d0bd30075b642cf07efcfe843950913dab9730bd95a7723491e81428916f90947cb3cd2b221162c032dc31b25c4a101d363c9726fa254234e6e247c938a8d3f361f93b70073c6ca1728da8588cb88419a2569a4f4ae19671a17e6f9d4590926d5a89fad75630354fce662d1c09ae8c52324a82ca56e94d239f7d6ecf54e99f7d2a096fddf842a496ad5ac2e7032c7e537514bdb27de271ed8e3dbed99d30be8e96010617941794b94b7bc0a4328bbe4694d73ee9d328beaeeb9043680ab48105fbc00fa8563df7282ee609d0a284ee58a560a3a472c3f78d27bea716c677e7512417dbfcf06e55244a43d10998134aca90592452a48b861d88ab7d0dd1c2a08672ab2abc7041a30e433a896f5257d312d24ef1caa23ab647da3794a2e9d5b6ed0768f03afb616dc9fb3c357574d930b1d0cd454f4d15ffe39509d70f4dd3ba2c3e58aa35c33077ae7ec443f87243513f83da6a255253b2882db24af601c52b18e1496977a15d670c215f686577cb56cf574d0b2950935c96b02048098bb926c5f053712159037acb68843055007a0b56cb0cf048d43eccc7b82416aba1b46e870c9222f59d5f9816bbf3699b8c17b454302295acd54f608e1f013de2a7edf91d87dc3b94a46b4a440eb97e171c0e2b7c68116b1c816fd21e76db85600567cd45c8dee8d5c43872fdc5017514f1ff0a0fe0b6bf4f89dda4d82e77cb9563c3ace424c4371cc21eff12a0f6f9095d125be5388d2cfd67df1a120bb7ccdece0f02bdfcd47388ef275e44758eed30e39dbd13db8ddc0e985f41aefe4bf0aad3200ed99affcdfe261ed7b26e3cd1ba68059c5d0adff0541f6b65cb1b405ee7d7fc02d63b8c78014b619da9b60361d3a2f4213e9a57d44048e3a6b3efb9104a754010128808f6e36073c25180055af1756019534b7bdf139a341bfc2d35a752c0c2860fd6f9368f0026b271535733e3ab0c5e80a224c2f827a7aa345fe456c5c8ed8495d2edd71e271be1cac626b741198ad227a2e50646107bbec7e85b9d564f7bb201a6044a14c50b51d41f0ff34093b3ef6ebaf21fca4edc7ba827210b60d4fce45570fe7d266e3dfebe4f9e61f47fd4844318bd8735de44418e433548b28ea3aa331050bff4761fdf221ad606e466bc807a9e4797f872c78ad1f2b2b6d596413f1fd089dff5d15380b319f410b749833f4b25ef632a9e5595d62f747b98d6072e73c2fdfed8bc5ffa5ee7a6bfa23ce6898f0d53b3f6a25333a570f99eb956940506964843466e185c0961e2765a6be95fe39e7d0118e3998ec0e2256058692038fd246c89f1f10be92542f5bcfc3a2eea57f3e10245b743e95718c2856bcb69d00748356c80574d10617638ed345f6291f57bad9e88a27308a6711f74754527574f31f3b21fe60d385d9a21fe1c9839a4d7133eaf068bbad7f8c4c3af398ace66999366bdd1df0699ee83a781eb0447611f1f49cf78deaf519c9d63c1ca5208acf11f5acbc4625ae303f283f1af65716e4cf10e590e2313928692a9b941f9707951010172a2cc2c04201d3645814959109245483e0c02fb6ee76af2ecf3006a05d7147d4a86c543aa63cdcd21b5d4a908864e5ae919d9079c773765f33f49981e85e577a6198d1664e5d9b70a010656a6c44d81dc9772ec57831ca1772fc9148bc2ffb270246b5f19f98288a318ad7af857c61d36b9a084619ab70545d81d32eda21324e47cdf1c7352671d143f2dc223090183766aa6fa1e8037ede00c0276b2ae81a16f0cea569418a6f35bf89ca6ab0dfb75ec5bd2c5c68385b2e9e7387111a94e00287b7f70bb8a480c7b1873836363c5160d78974006e256026e55b7ef8914fc900b5bd85c1f98935d3e8b624bc74caf26733438019afaadb3fb641da3bc14cf91cff10a4e862bdc2a4cba7e5d7b75982b1b06da0f7fa20e789728abe4fd10f1b9df59b35129e99afebe9fdfc18c9154ae6bae6f94b1b96fdf5eb1c1bada281cfea8f013199c2e7aa4e7e0df1ca066f27220e563af386a166156ffd3920df3ff480ac9926aa1a8359dd6fdbcc34cb2c1ee8d48bab7de3a1d582db371217f09af5835e4973880850f894b768f127c688fe12a2619326f2309ca1e7fd98ea527fbde7b1d0a62388db8ea1c0ffb72c29372043d9a829153548ee172861c72ac60d40d7dead415e6d84db2846eb3a87c0e272ce3f14e29656c6e8a2d96e8d583efe584be0abe0194bd5a2e3bee513736779d3a6ffae7ae17b656660241c2f45e4ac6fb71dc7a569900bcb8f0d9a12925b36d44ce2bebb949a2d620bbb59a7cdc8c6883156ed855017143ab20fadbbe44257fe00abfcce7c36f110c14ebbfbc85661abc35ccf52b5bf24c995fbd7027dd0be8485de4f1e72af2eea71cd67d8a4548e2dd9718930bd65954bc2aa7004c0f99dc8ad915d1acb4aff9dd8b039a00799121d1a67dbd6f3742c91b6f0049c6e8a16a02ead3e52d1835ba7bcf5ad5c6d5ee177436fb55263961504cd32032b84104b4862075e3d62cdb1af23633a83f04164993dd7fa05f1aac87d7dba6af2632ff3a982e48b28be68f90d2cd54ac8836067f40de17a9301cdea04f98bd3da785ad6959ee311c7cc029e115033744ab44315e445a04cb20772019cf83865393e8214cd14f0da1ca89d235a1edb5583409a92eca36690544e90bb0682ffb1eaf596f66c3f77e83102645122628e4f88d33a2699e5810436b1aa135d571fab6f9182f4f98d55449173084640c5fdb400b0c4ab97d56a611396f8612d9073df0d920e8e8406fc54d85a64274e522331bb603b975b868fb9b1a68ef817f6c4f5f51262d9b455648d2962f54ed3d7c60dfdbaad94d027bdf2e11e5f3408510c0cd1e75bd462f8906f972f9d7dd72275bd5e469e791d0aaf5876fa5cc5a089ceef315afb527b4859315fd8daae46cab7f567113686a3e37a72170006614033e81e3a646cbbe9ef255c683ce1bff2711ea8292c8d60b9cd7c840074129f58ea0de8e565d697ef09c13e5aa5e86e51440c9f1e046eac7b360b7d94162c1e1df12e86973c1569c0d75dd83e4cb2eeca58769dbca30ffefafcde0a14f3094aa194d2ffe56866fe29650356e68d548936d08ba8b4fdbf9269c890d230400b0fe2279f7d709dc228785b25a4841b36e1807f773b9a8c08afb8ad63444292d7d1981894b8dd6c49e737929d0b6e4bba084dfeecc90b2ada613bb94d0954de4b220225a3924524cfc2166679648b13e8acbaa66a8441ba91bc09a201f4556da7debde3d486f1b480b47836704794f388e1e475798b0909d471a34c6d79e3a7db8c37603ac18f6ce15137185969352bcf4e1d0d41a766113f1036e5bc8d91aa1cff619eb9f1e00285fca5760f973091bd19ef8f7ada0298980d5fcdada691398c4ee8f9c4d8fa321ad735197af5335b7f0cdcdfa0b6cc8b4ef43772b0aa920f9dd2ba253286f44a7f9435065b82eb289f7f2d81065538c45ce0fde85c2794de270956a3cf3353f4f4fa9b7a0639c6004ac5fd0f320a806145c085ea40e03425f145caea44d44c3024791a877f051fffbb04b2ca42d334a17386f205d732d2078993c49e5f77c523eb86f7b1b8c8683b5bb6a08327f94302c0d87c5546c3e05a029514698b88c9acf0f99bd0511a2daa073fa1df19dfee729497628e0ff9d2de7ba1928b227faf3fb2096556244d90b6103566eedb0ceeba28ea81f0522130681796e1de81681b6fdc72adc6f5fba026d76be1d838adeabd7b7d4083c21cb0b9c611bb8125af19ea8d94602667aad4f1e27726f0210274f65bbb148942ec1538fbc82c0fb86f7d4184d083540b6d6568b6089a6c0b31cc8ed7fb9325ca4a80ef8b0c8495d0d32f1657a862ca369668bea0b7e9e9afa3118343c7bb07d7ec601ee1dd079d40af52906a56f99b54d1259e9df8b12df8ed6b2b39c54e6fc5b151f9aed4dfbeb503eaae265a72e4b0703683ff505a2850b68a818507819226da8289b047e2fde272c2583b5224d62580e86607654bdefbbc080524b10b6abec665e7412b58052f9eb1aa6697ebc6503c8638d539512d1ba80a6b9692a3e3e09263e0f1beca3a4e3951a80e09447a31f06a5ed46c0ebedd4bac538e39d92a5a8c91a4ecb363c3d46f5c1aecc4434d4bc2bfbbf3a8218c1afe323b8a15046c1067811e6526d2c250350fdea337b26492e44197932cdfc7305919d23f6a3f3404cd7341c25a1907d650feb64079e4413dbf0ba9efb6bc58cbe4cd0eab821fd8585d6503d497fc05e400606d8c5fd6601d6f4c117e8e2887d48c520a97affded0b5aa40100c04841166cc52f4ac98d6085bbab40db454d65c6bf305f6a5b6f1ee2d5462681c431f1b1d51dba6366d587d4b64d480a703b677ad09fafaef4f5bc09ca947f28f9677b550cb589d4a3441f9249ed4c00f56f89f3f499f734be79f6819212f8f8b9e2ce615bd74aae1bcde2cdb3f7c6ef95f0f47196105d651dfde230b0111e7a8cfdec242d0a8cf39988d97a3f547095125ed8d8a6d1a7a0c401c220588734c4c5427f772091049ff7259892e3b5df310f04d22359e1474c87977ff1838260f25cb3ac43608ea69f5e89c0ebe43c84b75965a208a17ab6a7fa06fcb5d9b119879d67099783e1e5f29dc1afad6525bbc017168a2f9fce52103b28b4f429643c7da168a0e4d68147e29d9440cd49341567c8aff3aa978531059652a66c01c6ba724697e2fb995a5c526994dc7e6c9614aa2324d0e8829d386ba0fea71031a2f65aeec35c6c50650d136a63763ac9ac560e05ea074cd6a1b196a7acf6695b7659a98687b882726c29ea3d06c4f5e33a1d609adfa7da4a8fb1cf39a615eea6a3542c3df208874f57fbee8a2790c1aee93db027a7b9305d765acf7460ce89e2d30ecc19962bb9ebc2fc22e9e930342df2d7f38635778ff4e0480535708fa667c1124c102ff34d96d15d6ad66769fcea531a6fbef8ea3bdb0154ae57505e815e90ea80feb136821836effdf3f93779650e10d1b2bb054f0aa99b8f11967871ec151dfed784e2d8ac7c6f5b8623d8a54d5b4b1065a8dcaad4fe7077e67cd020b3671dedef0ffd1caaa96c1ed94d59226bb2c560689a9324101cd3da9d09081c1e80398aacae42e259e1b613d42f91cbaab951b2166407bdb59f38206fb8075c801175df4fcd1fca0f36554dd4ccf1c88b63bc4811cceb257809e3f646f07640c89306a15ba97ee9c18f6f617c1d58909b8a7b712ef7438302bae9ae9dc88026c621de845a649703833c8ed8c13950ea8f3b52f331d3b24a9edec9c4a8bef788f7c391683b93c7e949b643608731263c0f4fe4b6a84674044224200254f2fe245bb4f5265214c08182da8561a87c000638b1aa40203ff867f40e6807256bab82efb41aa2d7b13c934341cf4cc5ac2092dabe31b1560db755a6266afaf119e7a7a394364e80d2975524675840146f017a787fd731b9376dfe9d876658c2d717bdac561e25b119bfb43da8c90286bb0688e33f8558a0ef3f463b26e42c5aff5053ac1602fed037f0859dddacabe4803a5fd04d196ef4532f458771350f99315740df806ceeabd98b2d5e9ba119c04635a9e3a9116439418049b91c49004a2893910051e0badd32884bbfefc99490b1b76858a46f83075fc740569c453dc685caa780a47a68ac457c83af7ec5fa9dcc8f98bb8c0005eaff4f9de4586d454e397ab680b170d7937d9969ea2824b5cd7cc51f93e37ed2203033af7666a1fac49e55a015112ae379818aeb177eb7cd2cf5c984babf2a83a332e40518ab829095e977eba531a3aa1deced93b82aec3713ec1ed3317b6437f49768e0773bf039696c6a3b92e28c1d74b3d0fdef1519c3ea0152e4b7eff88c831d205353f495e031a55e6b4562afb84d2faa15ccdc21496ecbaf72cb57baf2578b67471dc87e146a584a6a55b16682a74ed4e4451787b5ce93f13b97f46f029c6ac458d527a252e481c22eb6e662283ca52116b41bde0f0494364db4db80a1033cced79774ccd53acf4d9828d09c73698334efa8dcc837ed584f5f0d765cc2d85c1d235f9e3a0c00d53522ec66b764cf70b8cdcfc37212cf08df6f9fdc8101b39168ce6cbd397a8f335ce4b89619f23540697642ee61314a7b5fd7f1e17275a1713f97537526be9fb318342a76535b4185c23da37af5602e9361218adfff0886222efc500ab1386347d5c94731c65e2854939b322972800dd4c0fda6262062cfb62c63d11912a9eed7402db81024eac9856c82abdad92bb956a9afc967ffe8cd407eabc9e771af2cf5cdedc3b3a67b0459b280fedf0db2d528226b52c21b1aacb57e5090f4cf7be0fb2d7322c5c16f25ac4fa3badb6a564aa800f7c89c4d0cb24b76501b053e639d607cec2a968005574d7aabec1c0a3ab8530958b50f84cd9ccb1a9a06f5cc29d4f4ec578ef1b75d6bbaf7ee11507609e47700442b67d38c6ab57be4c73734283d1c9f4ce3d64a233cedd53a9a918bee78cfac484b9ecff40ea31967f505816b59e7d845e6426f0650724bf140a2e2da97be8a0333f35ed88c89adf98fadf692f2edf0281a734e909b2f5414981f771e2023a160238b3669b72a79160d97b341d06f5dfcf4c3146b782e3a9dab37eb7b900120efef4abd0bb7ae25738af29375eada44f1d904b855a83721ba4f648af328ab3b79153ad605ce8b7e184d5e427e5f915fa45d4321c08f17175ff932fd424c1e59c2bf42ac9dbc2eebe1837e3f0d3289e3ae2193b9760748b1105058948c528dd6975eaedc04b1b2ab1c2c8227ba9315714e60045dfc2e1fb37bc7ed0ebd6044322f9c0be91d3937bcd1e3cf0c3745f123d4eb901613019266ffbb217c1dd385bf7703b006b4f39fdc83ab751cf5233ce78da630bbe09ade45fa918af041b4f417595e3bfaf497ed44fd6f31a800d49570cbbd6527f25d847954e7be9f578c95796bb91c877344a26b4225ca6a65d2ba5d33c155f78337344d7b3c89d15e637b97c1db80a1c8db416d81755d8d329597157134c11f783d581dfe327c17f9b75af85c2dda5b0d0697390ddc41601c84edc54bac2717d46bc06e7681b67c026c402999ed45b5ee691e83553034b516457bca774421a44386477829ee38a6cb8eff8e7451f9f28d43e6d8e4e153758b50e76ef659424b857a4b70e869d228fc664583265fcb04c9767291c1ef733ea2003567230ee07f6d5cad946655caf954ed9c2f384252a227dc320809b629f436d602f65f7ad08e3743601f427581e11d1e85bd3089191f04bec73974bf8f5cc32c5aa6af83e50cfdbbebc862e21e42552437ad0b0e16f637175fb257d339f7d7f822b0aa9af0f4f2bf8e19c9a069a9e0a7fb6a820db0fc60ed1acfbf8081dba79014ff99eca6f1f42e4c29dcea2a726f34ab7e9cb85dfc704774adf6fa15aa7c6790650a44b01a6da1d79ca4da4f3678e9209e595f5710feee112de4513addd9dd3e81431cf3bc98e9ce373db78c2e9f92d81a1c053b3ff65ea2d884a93af2e9c0c6988cb9e5563a207c52498e0216f0caaf639afda98bcf22bfcd9911bbdfdf0904af1b5c92930fbbd045ca6b0b9b25d975adfa1a343ec994ca1402b4c45cbdb732ca9c86a0d01a7abfef0a252107db215d5081d3144d8191a1e4f611ba473a320b82fc8ea1fd4cb0f8f3b81932fdf96d6d2a6b83609d56d62c634cf1b1fde364b47a299695541d639ff8a01865a35d0de3b6c5e4ac91113961c4f8a3a915c9eaacabda5a7602fe046990032872b0c88ebe7c0284cb59ef402c1ed2edccba15c14c2257a25092cff2881ab96032c5d966fcc7804c94eee40547fc1ba4f0ef08caab4e02fac4b5c1e4b2d01fa4ad507d51278dd3516bd223920fb00f8dc72bb08a2f8815025570b97040997be0ae4b78772460b7b065f43ef11a82bae9ef0df63f9f876cb77218f0533006bce3238ab014505cbc05fa11195d58a1ef743048b0c7bb9203ea55370a3514447d2b7a6f68245031acaf5ec6fabbdc16cbe647713ff4c4f503fe208794cbd7d638d3c2bc0d18ba3512f676e62f78f1c886128cc7c63bc5c2be5ba6178001b388b9f093d6ba5b6a4664836e0d27b3611a9a35cbc4c8998ce91bb824406608d7227b45970f52dca6a7b56eff2af5a7e5cfc971aaa039df32a5820821fa0669474f3bef3002be0821e06cb94a74407adc4d784f0c3b74e0f4b672d6e125ba62ecbf9841bd0c3d191342b07fd5bdb6b1d45ceba3d3ce46d9ac607d9cc45840616fededb83aaaf1195286fc2f8aa1866aaded01cb48a86c23bfab744c73a33bad616c141e9e47f8615854dc0ab5a5e8fab78f493c2a332fd17291a36be6d4c5c3ea4c24527454112f87c2427e0c922494f812228d374cd62d444bbe36d3ac62ed463dc1d1ec437851dfbf2bfa22c8b8315af6b9871051d6199d58a4f2432b758396455fcd415d276af1fdddaa8b22d658a942add3a68e410a2f76b7fb44d46ba7f621991f36e900d3e93e61cbf45ce4cfbbfff8fa9f9d1eb383f0d4c6453482562b037979076cf0ca76650d1db7299fd6d7af83c053bc2ed7482a2d159306101f520aa2982611f068923450544f290a2e193031e504e22ee7daa5b7cc51acedae463e219504ceabaa3793c8208c97943d43a444171c6f9428a3aaad68d465552517cdff71904f730e42728d07c9e006b8566c368b9dbb1d25a92750ff95f8befca5a932eb18fb2d4b239832cea85fd6f5f71a2ad9387d043e61e50b70a28c1778bcfaf6b4f7c82bc0e1fc8a224400f454fb7da8d3fb3955738735e0f173d7c6891020ed828a79a18e9bdba69cdc1ecc838aa0b6a0bf16261597a460f506fdf870e6dbca3b1903804f91197f0007e10ecc1cdb01fd749055a1f5aa74d842eae78303d35d817ffbcb18ed119f49f72cf85a360899ffbc8c5d5da26a4b11e17c4e0dcd8e11e90d3244cd232e0a0dac130107baa122b8afd8b2302115ba1c7184791fec6f6c565a0c5048bd04fe1784f8e7c5374e4e1688999587375407f4a14c4e0a135577579d50dbba906b66149c5fdeb7ac7b952b6115cc4c9496171035a5a63456292c456e41d5d8a245e565cff858df2a667ddf57d9f116d3ef3d5f326a56af933110a8fb0ab1dd50216a529ad5c54facbadf115bb089f34faf3f5da6657c4c63ced57adde653b3f424b3be0248189a171166bbe7fff45eae3602b1b4790d66b5ecdd85f7e009caef1f0cedde75015ca3a8d6993e71963e4388a964a21997dd8702f717b5d907801a9788a728aaf112edf1e7a5b874a110a6c77aa336512773b67fe2d596fc6b9fd10e4f5299e8d61fd2bb2f745c5b21c58ca32068170161912084453d9330b61a1d0056192fd64f1949f6822c9e62e79cf5e45faf354cf5baf4714ce317f0fa34fb8623bc6b4692fb71586f5a4b4bdb4d6c4107e1d618bc232a38f3b92454e24c66ad0ac820619e270c65e49ca26b37d22142f88934bd8b851e84945e537cf86fe3522cab2472251ed1ccdefb97c1a6356f466d05b26509d5aede68b230a8dae19d7295de450ad84c99fcb48c639c1be9e2eccb5be5624d0bcd42ab3012cab191f378e74cbd5d89c8b942b06f6f8344910f21d4fce34d6d4be53b453ab01a93683fbbe10ac5258a777c8719cb6ef67e59de6690df3097e2eaac7b82c492254218084f252f81ce40920fcbd204bc1008ed06b23a21629788e8b86295a62c1737a6123d2467cc54a0650b922e27d74ee8303129e1ec70630bdd9eaf9b1a6a7fef97330b7c51c75cda8d8b3d839513fce4c483d1ac58c0c3f4c49edb551108cb6572169941c1f1de75e22b4852faf58e75f6642fbcdfa642842e7af7eb15e81df57d1a151cd1173e5ae6dee62f5a41caaffef806625b843afb36d099a865e3f5da0e48e3444c82c6cec94f22f44b551ac0280454ab61d4561853096bd37b4738a62cb5c5a40f43f8cbd0797bc3142301fe51a4c59969a4740053be07ad29268644ddb357d9fbda87334d110d37e1841a95d613fd8c7c439d9f50e412f384afeb0bd120372074449dbb43a585ea41490783a24cb47dadf0b4230043f6460b73a9276595e85a9c7f0619d383e31277b6b9498e584492fb16bc0d226c5a4f1dfdecfcdf756325aa91d9ce33993ee471a194da95fa1d5a30a2a86be3d96213cc444a453f2c886f6e2a9e59fedd840f111bd656284c6a5cc1e1270d3a27d3be3e85b65c69cb1523ac39e5977d931cda9ab2f426ab36fee822a26f20cfc52b3d3318f4c46eba479d9d271bc0414aef045322c84b76626ff34cc298197952b88e43e7e22d61a79a69a0b57fa972bb5893fc6a85029bed695557249fd8185b59540a6a60f7371b81c1348de147397e4608f5ff010e9457712e3f834f6b1735bc9322d9b0c83d67ee176a90d1d2c706fabc908e96328f75fdba313562aaca57a3dfbba9690a9ddd65e9f1e9caada7e26128994f50474c26c3fed1b06cde8ae11b31186faae65ef483be7518c29a5fe993b12545688a93b15daf77438b8531d47e46216978de6de505221ad5c75bb8f9aff40461b9b5088b9be8c87222527796656246f53954c84f267b61c8614f0723bca4c64715f89b8a7c2112d6ae8db006304b8df1df2fc825a08c2af923e2ce18140ffc0424763bc19f275286961f1610d198b5f8a4bc1dbd1392ba17bb722ec1a127b25aef1cc044b999bce29acfaba2b22a433df436e366fddaa1683587c78ab683c389bbf6fc93cbe97a904df2859472cb86577a57f5881804b9d46682686717b03a2a73d25cf6d8e151a4c8aad31c9da94b0b931f2fb51276bf3b061cc54c8cbbaa710c241f3a93e60841ee7f2d0bb3bc9ff4e6d18f2a030d647f9fa5374d66561ca3c2df9782194111811fc0bfe548f857260524dda35af466ea87d24ca1fcd07e480cf016151746ac24edd8ed27b47228b66c336f6d30f473ad85ad5ae7d11b76e6874c8d7bad329032437fd4a593fef33a416995f672e78ab14b2a3fe4fbf709e9edefe4cd26122e40d450fa3a6aaaa8931ece3032862249d3425970f61b1b1c31fad55a30421eb2911a1b1dad8da1e29bb98ecf8088fb37aae15c324168b8fbd04d9e75ad0c9f4fe6b997e3f510bb7947cd68c8e4b8e62d6d50fa7d6cf198fa6c36138ddbd22ccfb590c2d9e9e90030951eca5fd4872a5b8a78f4271f1514e4ac48f5dab4204a3da2177dedabf5c7707f01aca7b6231d1f3b60191a8c6c2f3cb993336411c6a30696f449dabbefec28492928b3201a751e483454cfb51e7298edc19b0bf9a78828e61d5896a91bad2bb83f251d5d3afd2546364a21561e0dd674ff5837d5628d3210e1d828e2d6f6ecd7c7a62df254059e696c0c5349b7ad49d786e930cd29468c6674cf7ca8771458eda93c68aa6b6c9128c266dbaff6e0b58a79c77f9b8936b930847433eeb88988cba65ff00b2be968de115e41dcb7d51b9ae94c215b7b937562303bc51e911ec96d56658a8037e7fb35a33735e8cd0fcd458925ab1479efbbd11b60f2d3185e958e37fb7e7b4acaab84aa4b209fd9aab545b88195581a10a9544e277e9b924e3725686e39210484c1a9116b72c3fb497784dd716b32b52f2d546b947c0d45cd3ba70ff4504b33bb99f10fc5b3d230a0ef98b63f5a516ee716435b1527c4eb9b46cc4aeb0be3274e54c26f5917dfdededb43f6b21a81c43f1581846b2a0245da251ed3e8ab4ee4e363be911472e650a248c8612bd555c65c11547ba75c4137df6de7cbf7a42a2e1fc621226adf31fc5b099fc80de63bd118ace5be4fd9b09ceda362a0b5cac8d43426db545573ca06ec910734b0933e470eb6d68757d2decd9a658d0fcf8f16c8474460dafd920ea224de4b5802310de5ece57461e4dc353406f6363338a71d472df11f7bcdd453f6ea02504f257faff19287e2b5436c6933b2c86f5e4ea591f635f4515850b7018fdf8af07dfd49dfcb7a6ad5f408f1b93fc68487d8dbc1dbc02deee8baa1f867c05957461849bd06cd3579870442c7ea0d58fe6b9de23b43a13ffa40b9e008969528887d4d96609da3a50ca51947a04936ea2d80b9c33214d80f1d3a9915d7e2c5c179733f6e39bb4282d1d60f533a2e892271fce2b93d8c860d56b74f6de04186bd76fe76ce2126454f15a54631cffac2dd2748412962d2a3d75a67d679cf984e1a1eac4231bd5cf7017295383f1ed78c603aa720ba9770b0e451089281ff0085937058cd5cc9bac2251b820806923d35509455583a34e4b564cd123c8538d4d8597c56b84d3e5e6271fbb0d17f9e60b9d97029b3e8f248186ca1b049631b927067cd8a3c75e92ce4389cc6b6c0b46101093ce73a0c24fc096e4ba1a29c3febf193c743328c55831e0ba2a3aeb211c914303bfa901cc2faf2e25646de8390f557671032a93d81c416c76c0428357698ba09c6ad74c8ca2c0c64a08a7815deb3f38af8fb5cc712f4092b6b60dd64feed603cbc5815c0a92c9c5d5fdb4b9f5e11845dc4152685ffab1f576b54ddaab5367869fa0a67322522e72979ba934329d11a86b32648d9b5d36a2ef2a0c922c23df0c611b460310a70a8cb76b459d8cac8bf93cc5715cdfeb1f0898c371f5b88c8d4bae33c8b3fb54b4b39445f899aff276aa5c765aaa7864f4c396395fd9cbb856eaf5d9ab9887d6b43b8a11e150b94e768ff71578052ba2e5d09a7f4d30224f4287f01f6437a36d2864b2f5e338cd4bc55bb3aae8a1f9728f9bc4ee0fb03a0dd7d4683ade283542dbaafa57ae91ab7497913f59daa4b5d784233b9c478f471fb10b6f2dc912affa0ad814005e8ebdd7bd08d7e2eb2fb6e8111e1ebf4c918ce8aca4e7f7954e3990f39080c3523f49560a5c0d9b3df79112572256d4006eafb55436845fad2cb52ed23bccca239e34762c6eeb2007f473dcea584e8e20a48d8b98b502eec650059e211cd6c66edd29dece3259e309c76c5eb7eae8616cdfe6a6dc13c72002fc16055c5cc2871f5e59b81be9539b7a7c12d431f249033d11d1a1ed645880fbe2b678ef08b3ad93731d658280479b2c62d5d0792dff5a686afc374ae82c5f0cf5ae3dc67c948ceaaff9f7e8a5e324c6b92b0da3e0e5c85273f028d857d42e2fe501ce1412d5c47d9d6bd936e238d1656f7a97772c343748fe261afd989bc12a19964cfd4724ac0b139db0b5f28b41883c21aef69dd99a2b9da21dd7a74a696cf8ec53f06ac334dfd97a60ae07250839b2247c4f3b91763fa79bd7358657a839a89ce046355bc781396cbc8b33451ba6257794973dcf6a614b3192c4cbf91362d56e5dbb4cefc86e45b8d121936d323f4df02ab041ab092bc19093cecaf31372004d463258f74541267fadfabf4c3e3bb8c902b4f27d7a2d5e118894e415231fa4ea150c8b9aaf56a89220b6ba86badb21fbc0b64d2b8514853f6995ae1c9e97ef296f9d7c996f0c8a6d53e70103f2a88117c8164e987327921277b0bde33da67222851ec6ff898c0662651518d22aedcfc0b8a40157231a3bf0e4f2365fa2bd2c3680ece103fcd320fd98d41aa284cee6fb155a38cf9b37c75f91944c03a183de5c4a857bd77945027d82667c5f1a3a407c2fb22f1a783c45a90376b95fbf80a8944874d9bb741e7e27063cf0b6dea4d2c94a4b68a3136a4ba17097c2211aa87f8a10d0b27b842214387f75c9409ebc0d6f0c471f3f5b71854c049a475771ca224875798599a9672f84ebe0ecb06cce49bd3b95b2c24b01af573f7c43e4c1ca4e629b19a1e8a7fa27245dab9f5c55fbc269d463b77e2c5c7687ef28439db6a9689482fb26241879d6f402d7ff3c5ba1f10adfb35c4b9050ad39d12e8d62efd803e27b21ce137de9d6607d9e7f6ed671cfdf544ce3029a528fb33786731e9990db4206a309f112e0bf70a6e936f9648b0e14e111f1a01a5cf903aa20a6261f382840073c62d2b8ba2ff4db616535c35cb2a4c3f310cc75534e6d23cc6da0b9cacc89113a73b4300d32f2c0340feddbab84988eba89b45a5ae87a1170cf3d8baeb6d76334614784ab358b611cde313ad1c378e8fefe64af054a105b828dc6ab8787781da43932194cd89c9c3a219c0b035e604645a58dcb4238f2412e6a4e3eb47818d5866fd69b4ea40b59a831de648f3a7befe08fbeb41cf0a2dedf2077f59822fc96d4b8d6e0e961f8e9ab449748004a6278bbec5d7c56102eb6e9e6b1feb8ec731d13cfa318eae62cb81ba075d591585a514a786b6c357ed1d4cefb02001fb36370708477b608a3b5116ee7cfdb2bb883189c8d35121d0915c4f51fd681ecef9131e7b139d8f5fee0b8c38b0e5a2c13b03a94f6b69866aea4fb41c2c6442390f46255155a8ea04d79dfb4e6f56393fb9100356aa0d72c9a7b444f1af46561dccb380b8c180fd3d9c1c478b29f2469d88862d6d48fd908da762786771eefa4410855db0349b933510c3b1dbf783cb466dd4f2736b1ff6924cea55da8bec4e4ab8646fa0157bf2db2c3a1bb3d959f561308b986eb7d2400f79675d91c1cacb2d8be136542a3cd4526fda1737486a9804ea9a1cc0660494d25f804a9cc10c1e8b05ce4f68576353f83405b3a5491401b8f399dfd5d89765d6df5fb7a4ad4fea21ced8634974d43865b5b5132b858110b58e4a29c7fd8107287645f8bf2024d2d671e536a2b3acba2f13058c7ec51e4bf50281439d399773453d68d267021ab66c28719f6a1bb3f5820e9044b0d278c6ea2c1e9526661b73e916662999448069e5a1ea2711ab51bb98113f44dccebbc89c42a35d1bea2a4587fe337a6ac3a12f0dd47be2eb38dc6d4d65f18f7b3d4e535428aabc2fe20cd233778301b333ece703696deb2726b8f64ab212df758fc2ee2da4b358852466b6602b4cf105e36d9131603be84027f5490886316e025dd30920b8473c46bc8a108522c24bb13f739c062121f80833e7668665b8bb792ed19512606fb2b6a86156b25f70279ad1d75b7a4deeb8d348627493bbd38088745c75234ea0547417b964c4601b65a0790816625e834f9fce46793f0db86bd07a26bf5f7f9a11377cc242ec650a72caade7c788932d37853717046559da5175b1777fe9da830451e76190a72f0844656f5b9178e227136d16e014011323589438e5cc894c4167570e9dc125a8c437dfb4d4607d98a83793867af8634509989a9c2a6825ceab42a24c08c3afca3659abddbce108cac638f93d667b02d296aa2261f4497148f2bef2d9d2b58c33bf5ffdab395ec1c56465346365dc37ee2b989b5ff89c9a6f05cdae4f59154cd8efe75f8a363fa59dec73f6c83b8a994b857b6102fdf5ed88867cf26fdfb058e85d04e76eabbc1de8eab3ef6d8f87445c593de4967ecf7dd60827528238673d8ee0abf16f65502fb1f63216f5941d685617729adc81ae8c5bf94663f863e3ab140b39fefca6b2a52e412829e0343858850f9325b5f17e498a5e3678a5d5d2c4c7740d8dcddf47563cac5da1c5d307482789c8d7ad92082190c8d5fecfd821d38247a37407162d37397c673e1843db1b7019b5c936301b3852d0059815aec6b58e5a388a1a38507b0393fa40450f5a4aa4015b71252f0caff419ac659609d6d4e90f9ba97ccaa66051b3179e348e00271bd93f11ad7c6073b3f5d5b6d35ed12ac90b01282f3fee119098cf8a42590512a63ab4ebcb8d4ef9b5144f322eb40267ef1bf903d053b1348cd3b90a30733651c9a2f4023a79a14b9b19a13bd138207b71e8544fa4ee6e7e1c6117b43d712f5b8a541c29d8f6cc288542770f8309f34c93c6557baf638cb1ddfa698ff5ad0a64bfdedf503970baccdcb3f2878387e3c722858ea6c5f4a11f4644a0f1e28e455f48549c418596671b23856f60363f840ff89bd20da44e65300ad8dc71ec3cbeeeb90d292d4adaf56cc5332d8c8ddc2022e917633b02c07193369f5fcd2c080e3106d51392a78e17c65ffb9384eacdb5c70318c5f62f78ba8c277ca690fa865958f7c28409a63647931f776a4a2349519b26779fcffa254d559c5eb16cc06cb499b5c4ddd842156161c30a41594aad84c84d8b6d018def8169cecc4624f03749ea5cb682bb4a177d837ea2a59b66b6e4f2a5ec752384e1f520f97c59351f305a5b549aeaf3769e9ac12662e8715daf51f07dcd21521aa62613edc44877f9073ea2d93b8b6405f689d0d18de9c3890f13d0707ca0f550669ac15cd0fca856c1d7cd9d5d693fc25444172a65717b9f3c6488f7f6760c7677c58b57208783cba8ad00360a4955b34cbaf07bcfe554b3ccb340dd588e90bd2313eda76b83f1bd9ee4f63c7099356ab0859d9a6e2354ca10c3a800413d350e858ada90465f8c310fc42e311b3796f099d919e51e9df20a4161cf55aa0244a30f6f4e2a1d34a218538b97a1bb66324a7b824c2e6ebb2723fc630a1910b9df50dfec381c536a320d186a5b38d2184638202434ef7e2fd296058273f3041df2ad44a8c886fbe661fa74535be2fd46183eb1564ad83328e82e1ee56c1a52d2565f1cc8a4855a3b0572645e18f60b9dc94f5a0004054b06d4e8d4632fe68655216ab94dcd66a0d2ded7a95f530f960c1fca2afdfdeaae1ae368aa92074ce9e12339f0bbf0aac93c5f92ea90c6c8eba4cf872b04aa0a8a20fc292d701b4ebea5301ba72984932688fa947fcdfecf1c9fdb466689fc894f14d5da9241a2e7019b9788bbb86aaefaee494acfb9e0b86dce210c4e1eb8ba3eb25e46bde55467ee4b29bc2a4a6e813229fd0d9396724e27e70fbf3ac6d91a230256dbc3e6a449853ae13f952edbe4bba916de5bbe955529bef4c89b83686c0d47278d52708fad4e26f9547eb8b5ca80e87d2a39133346517621732ad364fb2d4415b2ceb21903f013a237289faaded1d62bc0053d7c57242e9873bf3ed429fe4498a93b669282b1ab146180d688e88462057f9533f1fd42cdb38bee5209a95d2e0c08a673b4903cd87f84ce86857780e83501c1c17e5dcb538862cfae999d529867f97ba3ea0c3ad600b1478886c98183741e96ef94cb29ae70e1104f0571a504daf82784bfac43bbbc13f8429b9db625bf18d5cfcbbe93b44b47ff5d360ba66457a7ca00726d72ad01a4a41e16c51c296294219d29bfc9a08cbc0808695f5fac74cbc8b4993f49d7fa91c80a97528d42429dffdf2a96abfa945f2389b1e28fe16bcbafe2a7a9c68830a291d1ae753b780ed056ad35d6958f78e6c42b2ff5e1b59fbedf77180c4ff1c366b195e85aedcca602aa3753b8226fc0e4c3ef0bde2da3d7fee4f6ca0ca4a9c99c4d1a6fce178d15a382ef0ff0f2431fa4b8bb5ddba5fda517b4c127992b10f5fa07a027e356219538d222db4777155763e10ed3f302f23d08d9a631982d9fbcde2fe78f325e20a22a0b3d4524ee22a5b12c3cdfdd770fa8ed30e1734fd92198018e1b9e884997024034d2dec4c497a850106f3916e9f193fc0674d3e5c715936ad1103fd3a86f05f587cd6e52e6c79c4d71a63add3c0424b10080b745d47447da5308b5bf09f1cb40661f15598affe36e3ecefba38e06b59aca2617ac2dbe14c6665fdd6e4dcaf70d956739c50e505a0aee47032eb1284e2422d19e8af5dc56816b9694a3e71144c2901e14454ad20c9fd24b7d8f3570fc9bb06721e4f6aeae35339eab5ad69a3a5ad06769c2a830e2822c6f9b1ebc774323fb76a14ba26284df2952a068eed74e290ed9b7d49b3cf44e4f406179ae455ce19a31c3b180ceba594b98dc0210fe8d10d5a84f073bdc3b38a6d1e4a4263f2f0519221bd34aae0134803a2db8ba0765accdf34a27bd1b3db9bab1a952d8e300d293b0336956608f10e66e2482356cb4f21fc064de764a3370b844473d0b675ecc62c278f520b05be1b23a50bed68729576cfd3b8d838af5e430c03ab83d1ae223362192a8d0f0bad3354f8c1fd5bdc1d6a5fe2067fc093bc8d5ab25500b56a7edf8155a9c74332489c3cdf79d2737781c6f290fb5f281ae632851784e934d324feb65afaf16348893becd617fc2afae26cdc678319f48ef8f4f857b2f69c5004be291c46e5a7bb20cbbbf0a04e9960a22665819f188448c79dbe5a64a0057918ad3e55b1b4b780393053feabc8032cd2b5ad3caa540c806106a9a43c83388a50485f5a4ad5885eded22aea07895082bbd172af3e50066b082fcc30097138f897a5b571d5c3f8bea1a8591bcecd79bb53af7a1485c6f92ec99d7ddc9731dc2324246a5fb98c9fc68af60a8d91fabca4b143888992532ea921b940558a8564b1001eb501a63dcb272430a74eb4e9246fabd1804222c35e9dd0f5d17b3cf3e5e2a555b10293deea1ee45f8fc2ab65b7804e6eb869e8fffb23520474b89790844b5861392788842107673013ddd901c7b98e80ef2c227f27c2949cfe3b1e2280193967e623bf1d2873ddc54afe9c0bfdbccf966d2548d6218f7ddfa2447f34bc16f9f1d02cb28676d98efc2039c42982d37b801462a766ab2695c91e596cdfd81faf9fb32ad75cfad6a8a7ba71e858278439a1af36d072fd4ab07860a775202ea7e441311c10004208d934f5bab1048961b410a414da0fdead14d34d3ade9d4edb1186b341dccfd8c87bf142ec24d20086a7cf04d97ebd40b6676cdf92b023e18ee5968a4bc940a5651f303f5f41795e81d188407e33bb0c34a8a48657751fb7fc52c33c0407cec7e15e041c99f59c7d3e47fc29c29245d57c091d4610183f97593a0b643bb76d26c175ee8c6041ac2f9507077ccbb63947bada883ddf827e5b23585c2b2f62f62dd75f7548d64be1ea94bc6877594980d3c1913133693d67cb8ffc0ac121d82da8ebd6a2049938ab968535934172c00a56bd6a7d5b73e01dc8d8d45c7305d3f3e1f53dd1e1e96e4e222ab2448e92b6e3804ea9282d6a75fd580754301b0f243e9cadf08fe694f92a9e19e2aa1489d46d0543256ba2549acfa8020417225372215750d3e1645680f6f34e56aa85bd2b1a734ddf161b138fd2703a22e7ab0c98fd7bcc5ba4352fd8871379119873f45077baa67fe2670b2a2dc86c7cc08038a1fc0aefda9be1a4da3c1ea627553604786b06d96ab959d95ccad4e0dfb3286d1301df32cb82ce5de0410a9aeaacdae69f36d6f62ef8685e46347b0c519b2906a833897a595fac2f4e2bc2a9e3805f3b3c5ce2359f708867934228b96ca3511adc8aaa455f70696456325f381b3438d89506a95cbd6cd33fd4d0295e66035a4c07e04341b5f423ca4a97fe5558dca9188db8613ef2c9a0d9a5b89905c8b8db71df43f99c371644d21c81d3511c9de7b5bd558fca8dd94d4b985c3ba0f0a03a61c43104023d9c1a44433e385a7dfcaa60fd0e69727531ffa29dbb58d2c32fd50f7a542d448a1ee69bedd9cbc9a1b27905425d46cd517233898ba55b2ba69acd44885bee8b22f2aecab179b7df459c9b88fc754bfc17f4c35090d83c9a3b15550fe988e2a7d3d5dc58c74910c46c93df30726800fc00a418d7bc18af7b759eb45a6666605c85d798524226af3a19be9ac9639a72ea52fa1f9a8ef40a3e8ebffa38a7b42741efb7ff58182a0c832382b62be20cb79d790e2c290d32dc5f999d2d560332a57bf3cf8ef0d8f21b6da886e55bf04e966e16abe2bb7c7766f25c66e24b64befd372ff7cbc1018c144d286ed899f192d13c41ff60937cc327ae6632bd5edee9d3eac90a84ce4f2bbbe08c765a42a8af5656a89acb0f356b90f9dd026d5d6986efd9ba26334608355dba0ec1919c82738b0f16e6d6efc87eef7f213b582d8e0cd75d66ab187aa01566a150f67b24f70059e6ca995dc1e9ccf49289ade44d1001121c193ca9bef6ef6a056154e9640135556e34c181ba81b24f2d73745b0d6c3926994d354a42aa97a29b9c8bb063b20085e438de697d3c81e5bb7a315b3246af67d8d3d07d48509d00717250fb0529ab571dc04ee22acb0c8244f798f810fe0547bd3e662dc8784adc917b7dab2733d5aa4dded070df295eefe6bb92350c5b14ecd275eb3955a8363790aafaf4ecddd96e069f32e7e92fcaa41165e86b6ed19ab246389e5ad5b95224fe02a62735dd82bbd386be201d5b60d89b0d04e92dc2ad82d95a06e07a38fe1103cc7c09582360ca22dcd1c950b8a2c6c8f4f50768488d974813634987a9138e7faff7d1eeaeb16a3bcde794a01fcf23a4619e0e173e33fce061b2c47d65d6cdc5669b35cc5bef4c974c83e785a2618811ab01420c8a352c7abbeb81542ed0e0382bd291ae175d21ea4eecb3b220b7397644be445d3017eb0ea1fc8dc4e8ee48c81cc548bd44b8c0aaaa9276dca932a6a55d31fa47e6f1bcd070c849403957c1a7c0c1b0727a18808cd5febf2c3eb412eacad3e73dd7fda13dc9370d97cf67a903f71f4914591cceb7d6cb1e829d89682453ef8812bb7481bccf2362f2e69489a2720da120471c79ea2768854c0496b91fffbe160c8c14bd4dd504355ee6e965ba0561b17ecea4fede5663014ded32021a5a370d0ec43e6e76fe3d11e6a46d28fe94ad0194940c1e906e0157f9a935a0ff477b355f41dcb6f25dd041f9c3404de640cde5e6add2e1981e0351fdbb8d9489dda4d56d9b89af73a3c19e346d65c84579ba6d8dd5d596ad25d7f6e1f153b326c049af3f9524d4fca72c82623ad5bd5fefde708610734e3313c24401b9e327c67396d2224f011976546f683ab61c5a8e77ad50193d80103e80dc9683a5de3ef9c89899687d6c73f5b09d86773c80ccee9ab9acd0847e31db66f9b0e1a48db8f00f25ce393205f68f9e3dcdb9735ac28165818f0d07d0ae0ddde6719c9adef889e7c3a128bec99bcaf53f25c1002606b15094a858cf0a8a1eb04448c1aeeb63a5f97b7b7343a67b6f3fd4cc145ab3058a566889dcdd00d76149b941a80dc2fd38188cc72bb3c77775dcbb9e8ddc3418a3710088c9a4c1f99c02f6bc372bb2ac0fd4e1d556e4b31ac1f520362dbec86d53a81a44712b178e803c816b43001bfbc2ee2af8614243dbbc5d202677cee1e37f442dc973dd4a07560e30e6bace3e8b1f14fdd7298e3f92a312ffb78ab0b8f3c74cb06f73435451cac37145a73be5fe6f2ccefb470ad655bc284152254c5dd12519f9d451f68983a333cade397bfbb4467afa876ff4e1d1bbb40943061a25c58ae7285ff377d56850602e2e6f926cc9cbf15db42f9181afc492ae3157b572e3075c201f267f88c33d610309eab4fc240aaca41904ad4af4d127799732885a612f4c65ac023e961f239f2516ce7cc2a89016c896416fe07667d1570b06ed11932b6a0f3ddef7e6b91a3a727bccc5cce44c4ee4a1024eb03222149ee34c42124b0194027a51895e24c7d2bd3c35b3f485de2f76be621ab52ac02e54c438c3ca8c462fd4422824f894bbf74d6f1a3558c70b68ab4271e6b63bc69c650d95c4aeed04528a2deb54b9e36859c9c23c6bb31a1f19596647d7e87333164fdbac7abcc5c1268af8e9a82d2c0e62281aa8cb4a34c307c7f7698c7f5164ca4a0ca4fae031b917b6a25938818981264fe981ac8a3a04df5838219f33c076be79f2b337c14096746d31b7fc5096a1c13490b80254258e99b47c5ef24321e1c62c3d6405720b0f1106fa06b16599b8d4de53c1ca2a9f6d4a9f1740b02a17d2f07a18063a1abe7cd027d25b81702c7dfeae38a741339756252c0c63eaf0377ed839f359f0929029ae817b291168b9acd53e27a73e4239cbed47db29eb65f5a6028e879fe9b80e63dc7bc609be06107b794606544d9fe8542434a70e48f455ee691da8d5d59f1fa0d5aa99fd17321021ac9729f8a12e59ced54dae3ccd9ad45464a3fa1a661317718ef0d8ae4e5b652c6c3faba7bf3c7711f5d1740d5a9c27ed2844b045c2b9fc4cfab697360c86f1f4f7282f5f1ef72a1bc1b522567d59b6df1610018b8f7e2e31ffc282dcfad3aba4a53710ca2bbd90ff43b45239f932cdc806be65349e10f929fcf225da8439ae76449ae7aa4a97e522c80e66383efca2f808cc770a24e17cfe78dbe5b0a04fc120cf1992cb47c3f572f8db1f3ecc52196dca279d6d5e2f076ee986e97a4fd020abc0d70f26f39bd5f90e31fb325bed5992c62da430006a43571b6443232dc088538c08134abe4ed19730a76e6b75b46593704c418fae1c19b24e476c699fcf6a7f135802aeb2d700f1a0bedb3e324905cf9a3ae66b08250f1fad1853c9b2fe741a7463e0bf06eb8bb98eef56257aa6af43d2050f61502872f1623d18c996a72bf41fe26e8c31a6634e922320405afd0149af634466b49f433d01a1ac5074ea34142c020ac06e4fcc93b3e1176844f67937a2b482873fb5b47c00efbe8d84561d5ad06a7c769aea18d5b27bce66d39eabc20ab33f838c4ef57e76c09ef45a01f8bdbbc2089f54f522c12e60331213cbd740ad9d2d1115d8928446f8eec3cf289e8b6b7f4d58df95930c3c34b00c669fd28c1f88296fb9d285fbe470228c98b1d2d0f08bb123edcb8bbe8f81aa2f25360fdc3f12d8500d4bce967c9b19dcd1dace77f393675fbf240ab30b43fa1bcc620c79a07cb388ce2fa78cac891d89368d1deabc3d5e70fbea2747104f68712e262dd04aa5c56fc9e35e1ccecba48e8f28681dfea0caf195b7736fe2773656989109e310dede872e617e4a4f66d4e8034346c379a47f8b17d4361e12a6a747108e2f3de43f0b60bfd64be3dcdc79dd4098f0605937aff4d88f5acffc17bf54eec64e4fc7ab886df697843830680e0fe24d1aaff11dd04e7a29d3c29798236917be7c046e02bcc73c317d53d5ab5f3f9e7653f44929ea765db8a8fb48ac2359426414c1bb3642ac7244e0998de69d97a72a788684ce175ef6ebb10ddc6b3628f92cc1fded026cc204dfda7e659855ef35345cca7a2b9f85b3054cd548e1d824b8f9768a4bd24711adbc3446cf50d14711617bf9b7676b225981ca2be3596562a81fd597140cc278bbbfec9a3805ea4ecf97e59f38e092f9be6e383ac208a81380653d65c6b03dc8d058e4f80105d7f7a93be1d03c2bf9b711b53f8aebb33b2b0b08ed8629aa46a255e51057eb9e55d65fc5850c8901e1f2329e62818614192fc0d4b22210d3b43a95a98aaee2cfe60cbfa93d1bb0544941c0a7b4a290924c3fa8b2b10292905269d7b8a89f728ccb10f6a71f29f1cf0889a2fe87c3a810da21c79dad155e23416391e3183e9cf63bac4e0f70cd223e248e1cbcd4ee2c4955659fbdd5deb8a88612a2ed00f8333b688a0ce4fa5adcc8ad8bc691b1413477986d141f3453cc8746288ee3e53d8c16ff4ca3c1deecce76c8421d31f25cf4a9c400960c52b1536d78842da9898789498326e5732d847192c4381b4ec7ed2495db25c09f36353345a47e623a67c77669b905b9c1d4e85dfc66ab10b450b58330b8270079d6bf31c902d0e7edb7d1f5a2b2b42e4351e626b965f266047eb0bb1cf81273bc15d07a95466ed906b2dcbcf472a1faec332240d40c0b7e82b7ab2129961329ebf48c1193646c8408ed372c0e9913425d6328ca02ed142ccf083909e7df7366a35b97093b21067a33d73cfb2d70212a6215f407216f8e864886531e8942233955bab359c62c1f0c554eb2ee648d5283eb04540770a8425f6fb1153385e406fbb1adbb202807a226b5c0edf44a35e1860f21bf94fc4a0bc0abad12b0e9d2427452d6f2d5ae4f4e245a2102498f61ba980ac25b3db5a98af98ec00650ed596da637d6b004aa8d32558faa6eca76eef32f7b79b3b044d82dd3dfc7ef8b30f217a3bc06bbe3cf9c8e8b8ac968e4ffc7cadeb8decd2c04279ceab687bf3c204b30fc76c6a848acca2d8f3f8d3bf08f78e0b824f52bfc46e5f738a7c874bae26164348f7b22498e341fe786271640f9b3b37d29085fe58a9d6aa648a3c2d2281c6f0a008531b68dd1c283703483ef028469e528aad4c4a3488818f1d44b58591a1df4a77be74d04fe813d91d10456bf224a955447e093f9908a885deaaeac8a02473f16a17b91f78043c6a95cb7bdf3ea6afbf358fbebeb2ec320c8d2b10dadec097f199bab7d1bd2f321e05c2557b917c6cd10c1c0e22327a3b419c95cd501693e4399994def8ec43507cdbb9d60d713391257002e0c9ba43d51647246387a48651298fd3412dcb5439938bd491f60c56c1b1aab44adc9d4ac22b6d20fdc2dfa118d7a4abc9fcca61048d436bf2e97542e83ee3c18e1684fcd1e0ca14e85f898151511a2191f794082c867b973d630f2fb637b22f518e03ab9aafe333f203bb11b26951e221d02217cbecf98c5f5a77d3e1e223f81582f31f0b717cc3e3f4701100472febd3ec0f8347811aec08acbcb1134b49e38f6e172430a5938e5aec9711cce2e6adeeeb0ab2c13ef243b08238fb0e75e71d459453de1cb20ebec70601922a6b8057f35033512db2567432f7f481a5d7c218e001d3a56f239617966a3df720696d7c7353c8166c0f9775c5e6ceb51d72b22e6da0ee80d964645bc80db203a33c93966e8ec1cb0eee08f13acbfb7d0667282da33dd2a1ca0f1ecc49439db0c112c7da8fe38d1cdff2aee6b4bac5d1e554b180a1cc034dac3070c643784d81446c4231b7510c6324b6e4084c6732d9c1c472a26dff693e9ec5e62c7beb96771611dc61a46f96abd4cebc20be2467b3f5ea6035391359df52f0b76ea55cb37464dfb629524bf20ae15f37c9fed85d36e02d6c132628f7b35d822107e3e12e0583ce05ce660823d5ae303ed0f3d252d0e060cbcf7d1c7fc90225365aedd282402d0c306a8122c6173805a45d265660912f8c6bb5c38f37dfaf544063cd9c79a579283ce72c00147a226e10441c36f92f0ac4398a8139c8668e73ebbe99b711f198fa94b65b92ba66ce04c9760839421c70ad4af56ae3fa0b43e20a6dcb4f12845212e62db734a8e17f8ca496c52e94e42982e7d5fa59557add231ccf16dbf0f43334c3b4a85b21357832d36acbcf3a374de03d553166d6bc6a3093e2e557d5035ca18baa754eb23dea35369cd096bcdeda94df4a949a6bf9942326f057c525a388ef5496290abc0fd95153d0d7ef77fdffb719ca1ac94f7b2832937633e348505acc33672159345b4c875e37dc9f3bf886a7d2e04b4abb85a3e7199aab0eb2064750433c120ce11332c07474f98f90da32d2c314e6e2ad749c456aae73f2a43666a044b7530d9c9c4f777ef8330925d88e7210bb8b7320d51e806f400c0f6116b1329d68aa5f417d80330e90f58586555e82a2d4d90c1577cdbe7ffda79fe853033d24cd68b758864d09feee0256293dfd8f022a81757ae469d81e27f3c4cc363d8eaa51780a90559836de0bbe0e1f53828f21c92cd2bb3d0b75b5b3969492968b26327a86ed7193c5cfb48d2048dbc06fab504ee9aff7b6061fa590361b5f81243ae9bc358bf8aac6e276464e502a87bbc4e21f435d6fb59976dffc134027d4b483cd4e03ec88bbb19d6130d285658b6db0fcaa69d0c793d294ac2cc88b207441134a099bdd82f650a3fe5415f99c7d7a48af14803405d3dfce41c50a4d8ee5ca3cf4ef52342d674f22bac42fe45a082257961cd18fd2a9cfc696f0b698a916e74f0aa8a22b780427a366e82f2643e62794c31c44d023dd79983274423b82e64d44d42d11369f64350bb1f142b0504c9c8e1a75bb8111666bef67535a1b11b2d6502fbc21df01196fa5375ae7b204c8c04d7a6bfca592e959f46d5f0889f8161ce896d7c89be76051c1b3e6dcc9e6e7f4de4801f99d3f576fcc53c246606c44da7d4610f8b89d3e601be0bfa761cbb5f0113ebef4dbb2f5382d077d275d22c0af302ea6d8da77e190c62a77c410a99321a76ecd820d8f7aa076988cd6e12371b14835a3fb32e0adf25e598a2a22462864b26c08e4c43e81fece89a4bc215393ba39497a08b9391e5a2c909894c4295c0507554577ef9f66dce070f0748b8fc4690ca639a47797ddb6ac4dcffc332c66249bdb6ab7188a8a41ab189d03fc5952c3b141f77c3ae3a7a48fdceb8f971015cd1013ac159daba25bdc0e31dcbc5bf146d9e9a542ee61cfe457e175bc678ae8a5c3d6d35f8ec606eb15bc3a7b46d72035db97d44bf0a38a187798048e432a985cd99e51f3e103bbb66335059bea8c23115548fbe8782b8f5a55bee20f59f5fa57f0b9a8144e2c6beb0dee378dd268b28aaa4691809e7a8d0940e754310b886474c11eca050542c9ff534a47d004a151b8a8f4f6216560d91c6115e7d30fa65c7c51c1d5ad5962f8473707402b335a1166eee84250e9129e7e268c0dd999e561f461d1d2f099b7a43cc586c7a5f77dd6addcba26204b174c31bb70f45883f40384a35ae5edc951b53b24743b1b01ca14cb4d702e467031d6d3fc28b629d688b1e1d757b02b5832f60a875133b7a93805be5e44fce3375cf93fa2a64e3c7069bf30794f044862d6def0a5d29efbde1e0514e754084629859777a50507b1b79f43d29bf0d211b5cb5bea1a77a93995b3f3c3ac84fbe7c6b6c5dfc578ee4ed834796542b56f309d47e92c5b797797727466268a3c024fe7f998e69eaabd2bd0ad081162c65313e2ce426e42c37578453b95017ba258bad34fd0dc7206158a68cf22581b2b45b89941180d8bfc8e92ca48055268b238becb5341168935041e66d0792433c4cd0bb4887c278e76e0560f28c4fe60760ec67790a3f72f77d60181921293f7caa3141c6be2c21ed2aca492d223121bfba558a75f3965a83308330fd2e0f5ccc4eccb9b41acde7da8df8a3917e0aa6b608cec0630ca4ed3c501c589a98647b8ef36a1610e08e03726f175126286a809cd93c41d0a53155fabadfebd08082be1ffb1f066d698732ca78afd71017418a26eebaacb57d4e2e86f9eede6becf3afe25502b3353728ba7459c834b8562329c4715d211e2dc9d5bb011efb9c4028e1a5d26500548cc81b31185b632a770f183a053e1ecbe1760f3b8360f2cf0727f37d096f00ae2b4268917468af6e1f2d48b9f5ac6c3946d35cb168518fe1336d410e1329fe402a836415ba4b9ea1751af2ab0e1ef4f30fd2599b991349583bbf8dfe60d1ac0e44ac222502a17f16fd28ac9855a7cfb7f8d35de6373b4078e4bb2ca527104b21a948e377e88c1df7974bc80f6d2de9d73262588268f3e7d276c01a4722c505fb566426314755eb92a273b344c33f6dfe19a27d0f0e4d3f7de3723355b003981191d1c11db6eb43d1f9004ad0342ba23da460437214c329a74756b33ac3e2e1f934b6e108363d85f1630d846f61b2a8860cb9f6b47f7d5bfb99d3ac51d6e86ba3a0eb882ffd079163e037b1adf14158f327d8806a04c3bc6a369fbbf9467b3c549cbeebef4c42e4ad98631d976c2383d472c9f6452648f5b0031e73d3ba54bfd3b22cd433e5c26f0e9e20cf61aa91916c62e118920bb88dc2d7ffb79c9fe9fb519d637f314f276101f7015eaae1a02c41eb5f535eba84b113e0aa751de2ed05ebca20e7ba2cd24405992ab4d941d957c2dc456dcecb1c0b8501b0e90672575c2660498c3097b36cb87e50aa02b51a09e1a47d001dc014b7f14a6b6c94825dd573e44a6098a16be44f6d34b470433080bb8a3277adf07baa738c0eb723cf07528eee7625018b845896b149343f7845ed5c4c5a0e5a3f7aa60cdb8f3948899d667c449cda86d6c653629f2aa49faf8d925dd2a304e01ef65c7a5f6a0f66f625829f6cb4076dd6d564fb5d25fd515f23ade9b46f85d173dad0d6a915336ad95375b6a75c812e6e325af6456860afd3cdc7f16cda30cb2a8fc011efe750a761ba2cfd87166464ee3c19c61853b403f2cfa9e569f4704fd68c41c8dc5ce5f224b0ade6a8509bfe33b2e466b51ece164553ccfdf7ec5bedaf05ca39c81fc0d4e41eb5ab5cc72de3f456c1e0e73f42d69b31da084fd4398270717934454a2f08705ace7300bc74f7901672867e0ec884e2adfc03b9054b4d96e36da1f74951f3382615ba9f3bbd115ccf7c188d616abe915cb3c5eccf778586bee349f4770db013446cd045ba8acdec7fd713346f200af1c31ca2149501f4210a48cd22c0c97e492a82ca21b62cf8d88e70bafb47d14d0a5a010bb5c8ebd4fc710f08decae90b14bc3de4d862e60064cb96961519373aa70dc61bfda00917b765bb185190a59f2eec8f30b622d7debade0a9c6350c2edaa2b2bd5dbd67aa1abdde44cb868510def86ccac2dfd18837ef5828adf3b4d40e19152497eab77fcaf2362b12fc055a24e82e9251d45b7ea3c7f2842401fc6786b81af1a1aadcd3e9d0751d371baf4a36401cb411ddd0be29992376b743cde20e19e7d7061df63bdb1ca0b5911659e70a0658ede8d668c9ea5d0703ad00b7b10172cc80dd870c2099f6b1e44134327fb9804887d177f91db17d94c2ae834b5723bea10572ebd7e65f7b574b4a36efc53cecda2bf933a9784261594c22f1a21c1530999aaff0b6a40a569031fe36523e89538fd0fe61e3658e7041f53a1643d55abc5286c755d7a7456affbccc2e5927351328cec8883120fc1ae1331c555faa6a02cc05fbe46d58166ddbd3a152e719c23092e049c68d4dd2bc9c706327155bcdae3f6174e1c059a3b3240ce877b33a65e2bdfda110b9792739532075f62178f74582b5b5608bd49d2959cbbfe0572423988d38c4a9837e64752723102379433bc8989819760aeec8d8ffd10e5ca4770cd6e8dbeafeca28adc0a7144c938f2e69f92fe8b58cadff0dcf0e833645b3454b3a9d35fb109118ca8b971353e25c911728403eb419625411e2775c21d1b130c6563193acd51e975e8346a3b201163dac1e587a4142cf0799c7b2e0313761e03e0c63380bcaa1a32630d9c5cdf2c4a1fb517d48c02c09e75ee20c502dfeaa981dcf315c6e40c274d8daf5c747c48337070a98af13c7480d80490be9b5b1afbf58a03dc0ca583f951e4f992bae16d49e2ac36585cfa71f16748577ae2cf3a7028b3a75b2c1f2b97429141b2fb351188b23e01a76cdcde3c7648236aa8ba432605238258016a8e175bd56e8d275a40ad8e633ffcd92890c9e4b1755a3160c8548975004fcabee088e5b33f0740d15eba558ee3975f0faa2ce4c83e9165e1d2b7684b2c6f624b5c0990c65e69072f588a87349ed67d8e4d5e0c2d6426e3642e5e5a7b6cb56e74e9796ff000a1dded4e3816edb07fb8b738d4fd882ffe9228b341acddc2747235fe77eadf26f4944619194c20ba9185c378e0d16d59c403686ddd17107dd38ac77d339133198012486d88f6d6c5bb6860b865ab94216b81abea5efde272f908c9accd3599e14411875e8a283e4e415c55da19663ccfa2aca6c3228386fc10adf51d0ccd9d02e3edd46675ac09185a80d675a4057e450a420e9967fba756bc25d2dbe795f85f7c311a172f3848370ce4fcd1c1234a527bba03546e2d3d88ca2045ba14b1f9966b92c9182ec4f059b4c44fc197d3e4cda901358bf8293aab338dc1543e89cebd81bae01e1e2ada93d1c47042a49970397a95c52953d3702279435ba08172db74657f2414a8463d8e8909c23b45f791e12ab631389c7321d2cdfb9ebeb06b12e0399f7d1976d3557dfc9696a53ebcf6f845ad535b6be7cf1914ba14f817343a3e02548d3300d8078da9853616fad6453622df72a5949815983abb9fcfc61d7436c4dae112fbd77a67561908f50c321dd3636428efb76bfcf735a4eac9be026d6df10aa5548438081e922cffba852775db4168183acb9a44f2da4e053760d2c78ca883aa4b22547a2da3d19c847e35230bb9c3442074b5ec9385d5be213492d9432ec7fc2f8a9aa0386c549038dbfb86d420d135995491b859e6e0af3880210b91146c8b2659a2785480e6305c88c90d32f5f84530f43d8eea61e2ae05b13277aede916965bf00a94dbc16ea62a56426c22dd2709f7b5b9bea642eb6d90cb62d146d5d694aa11f74179f5991e8d6f5a1e78b3657176c23653372575d984c7c28409945f45a5cc8a2d27785594cbb8fd2f82cfdd42455e998011792e204f0670867a3d1a61fe7ccaa1469038e953d99ecc30a2287c871fdebefffa01bd4315242ab5e6ddf48a213d4d2cdcea5b3506c6a104cabb4238d49cf3d5de94ef138bd3b01b2e88c54ce1c55183fffec887d0a593c20a74cf4773e7a685f791719cb6a020069178728e7e8cb286563bf1c0beac54f335fd72816b7cf9b0cfaece5954d41bf080c060bd5bf8b0da299e4aa85494a5eb540f560291c449d32f32a2626a04879b67d6f0f9c7920c823138e6cbcd9d6dd3a7ab8f476697664ab4db6f5e67ac38d10197c00c6e06186dfb2e5b2502fc365da175f9e0cd454ef907bcee714d987a0e06e814b2da9b3f891dde9a795796cb7c5d8f87985552fdd1921d640c87b0d3c2c1bfb4431129fc96c55414a991cbeb07eedb40bdcfc4e0cfa8abc23848ce88476f67f17a4c3c281023c8bb38e9646defcb5864a204c2648cdcf45c73d92644b4a805e09392d6b151872d32017779773418e77235049c7b9070e3ba5982fa12df7c7a221afc37068f60d3632fa03f731e8132b35af88c9aec50b06ff6a6070697074b1073bcb8c4f2bd93a059b176cb8f89ab9d928677930f09b537b3d3536061909ba08c2c5cd7c7c4ebe0f9708447a0d472833e283bcd9477d2a542b6d2c6815cf0255d3bd00669f5eb2bfb9691dfd7c481f5e8e5bba03a8744ffc43fc023e2554ed09395547fe81cde70bb45d7e654bab361703e20f28188ab11bf02619dcf7c5c8640a6f03e996f967acb053558350cc236115e4bc20efb937fd6ceab004c2ad010fdfd47fdee2df6a1fb4e5614a22d1bc557aa70c85d5acad8c827245690b5ab70f33502b748fbbbca511143dcf487345b5502704ec426bf339097c1326eefb98117700416a1da6beaae8327d1ed1a9ca0542889e73b4d15f95461e695247bcbc3d97dfa26837a0f2e8b4a68e1aafd4a99cf914ab25a39779f76b22c1cdf7d28e22001cd2e43e36f072437841b1c20536ce35fadafa61219149dab3a8e975077a50411972ad6c1a2f6a0e56c9ae8fe3e55a4b49e09851ee8d791d2157f5e98ac33af7e96cd3c3666dd4a8ef35414756e40cb4042209ba6bcff9659d380216924d3190873bf18f65c025ec5bb00443fe53f5a1d79089937a2705529c3e53c2059036a32bcdeb4bce694dcaa9352575f70ed43b35b7b904e773a036b21b904f8dfe5b0ba5d0182fc04d6d70ff0adc42f40a5ba4407a47c475aeaf88bbdc85bcc66d4cc61ced20ea52c31365f4d4791dc426ef418a170dab825ee5400b8d559857e2648f6f5068c1d46c86fd100a3125905ebcd09590c5969d2137173afb0f8c57ca12f00274af376c964dcfd3627d0fd84909a0a3e442e61ee84a595ad400d8f67269bf75a4fcb9227074da269a65488af01eb83faf1865489e61c161683c0c1dba4d0f4cc68de59494a3d6e5d32aab841ca7f4a39976aee1b5f6a4be002c40ee5e25813218c24c96d0a4b0827cbcb0bca8b0be22540958b3e2e99d3a1141d39ff5310c79aec6029409e6e5f5acbe42198f7c1fcca350e30147a8bcfa45e075210b43681562a58af8b32eb838c395f3ec5d79e1a82bea5ea9ecc8e80c248de72a2b538d929e0f31d369e4a478ad2c3cbe9895112cc0d86a698e5903623b713adb430f816a55fbca984938ad806abcdc98c2beed3d12d990af04e487ae656edde6034aa290076b0247e279d9cd3c933d7ee0ebfa4e9204b1a5194fc1c00a696706b15512a2ba420c3364bcd7467a4fe105d2a7e2020e560106de4d57fbb38a247acf520339f6a19e22ad562c75ffb4892cc1dd59d51422e246f37f35491bda0250080b4ef2b577101eec4effbbd56bdb6011f6db3436558d47e07d9f8bcf25fd241c5755febd968157fa335bbc1d41d6185b2614861ad90fe5cec66d132b4ad89cc80cb1ea9ee4ed3ad0cd5facceea33d2377536a38668a38a2f4016e4d294ae9a3e0f167133f920ce542ba14b7742cde532ffc0f460d8568aa45719ce710a3fd3743514c85aa02fe96b6645659f714a9499099def7907f09de00df148759098023a71cd9ef70f425a7251c04524329fd4482bb5d25af3dd73d35810ca489624492f7230cca6978a65497f153f574a8376639ae880375a9c36284cbea1613c5b47032b41f880306c2275f527e9c616b9738b023af1d9c67f34973f0425cdc813467e735744c9bcf193428322849e3459314c5d718c61e98ce07f76ec4b9d735c288319650525681d5af051eaf5d28f0c9399044d6cc7dae94a34a9110aeae055a7ad679d9b72aee70ea48ca18ea7348014f99c514b104dbecc500803dd4504868a6922bc7c27e2f8e1ca0306df5684cd1583b2303fd870e28bc33876ac18912c357364ffb26ea9fa1da94f4f0016943ecb9b5992f5f2a7865087d2a5439df38f4afc3354b3dec6007786dc29a580fac1f09feef39b16e49e1437fc607397e9e51e370755b46dc401cb3444e9a7a03589e3d6620db9d7b474cb5bceca24f9814a36324ab638f5a18d4022e30bd1c0694435fe5bfb556accd2ab0829f2b1f78a225d1552bed2bab1a476b88b57807d9a659423bc7514562a4a9d62bbe1e6f38b0b3e2e3bc6adbe0220da35272e2dae5a920eb6c7c1ad04b50f3c9ae2cea2b2f54b865f4301c5aee3d708ca193687f0784a67bc62af0a96611ce0e6f682e42381be1864650c26153f9d601d07baa6af332f34aec6a627dc493ce00f619519a7f7f5842a57ee00ffe5b7bf7f4a55a88810c66895254a2f1959f8b1b29c9dbdbee079ad04485bb574001366f6a3ad1a8ff78080b9c9fde1f5fdf85790796ea925df41b1e4198a7caf5d3b773a1579c9cad628ee0b61cece5c0eeb32f0be8c33cc268ca2d73fffa75f7932f4f43346d2d5309b50e4674173423546e7bbe28dff4ad83c4834481c3e58f1dc88c427869dc2b4ec070fe396b60874e2e855989bb4d39793273f73669318e1bbe3182e9a0142f945f395ccbe58154b0caeb17793c74d2b1c39382a98cfdf78750f365c55a696650e756431a673f8fd3cc78d679cf06dae2bc3d549131297fd75f14dc504adedda93679357e539ab756ab68503533f81b0de9c496fd6588bfa47812c2576739083b7818de4e24af41e6d99aed129369b22d5806b459b9239b5cc3806bd0c6dfb08087c65ff0e977f91798611721ebf002e139fce24d9e5fc42d0888e8649a76f822dee43b1902943e57a4496f6affa53aadba2fa2d76edd431eb894f8f5556dc1b4ef68e59dd08f05564d8a5624c55b427edee8e05eb49697137b0053d998e922873cdea552d09d5e18797dfed6ff6e4198cf12a4036f957da73b04dd390ff61783072bfc1cc9398ab1e55f2983ec6ccb5f9dea30a488c49e0b095b0d74b8afc2e845484064c2b0304225fe0d30fda87385f45df313f49af165e73d746e0314c652c8eebbdad882bc59082cf90f48c9dcc49cc3009c60dcd748bb260f24ea2320139a940d5f65e7b6b405a0f6ed1b9e2f19744ee3488985b3f6e3296eba870bfd51c90c9e888b3a34641b9dea8a00b8baf9f5fdc4502d9587e727b3c217bbe62ff5c5aa73614af9f205a9088ea5dd521bee49b6838012ec3ffc4bdec6c523341d2036c54adbb3657220bb8e6b6d3fb513650f78e1f348c8d01a3f424b33615446d72da271728057f108701b376d55f7af4c60f4102c8243e8c36383162602cbb2340e2f46e80f1d325c3284c22be4f0cd4eb8952193f0139b5b66a21f3ce9832d049f02993ac6019762311dc6ae22c0afa14c6945f1f6f1d31f7b4d395ec1e37d08aaa0b97deec1ab87009948a66421568e544b857c2780200a90eb12ded57f37a67831a4bea9f20cd2e622cb93d0382edb92aec68e7c809033ad2a09b113b0632363dd264593b026c4c05dd3568b3b4e57d8a871ea105f402d0d605e2c39b143e3f9c1b07ecdfe182d01fe9374871baefdc53846980417c9befde7225a4e6bde295a7c5026d76ece681bf96ef0cf50304ba4c722235c17f284f979dc23258b376aaa1a5047f38917bebd2938831a38f5a29f0b731590fa0487b57561b197000929298908dc0b928f09f38cca47b11da4e493dd045d1622c12c6731e3867eda522cb986139f01115074aafab577c4d6167e5cdb808c94be211ea7cd59511b4b83f11b8befdaa9c995267098643c748b4ad3596860836fba29fd3a1f6f9af2e1c8d13bd95117f0c1b85e17d53bfa2fd7cb30df9de25e5035fc2510ddbbc4f823878bbbaf8265b8702d3c76bf0f2abc3086035a16048ff2991ce7b626e8f8d916b25588d8b88ea750e03cd8d59633eca5eab280fcb578bbc2d27b8b1b9c3f699724a58a370499071c852a3cbf32db07182f8a6f52e4717d3df89364617fe741ee4387020c9e6be573e4793fdb307cf0260d02ff8822b5e29c53d56cb3afadeb7f0903ac2737cbcb4ed7a8eb0a46066b151f796789b0cb035ed2fce03bf2475128bfb61d5761c27cec3fe09809c79637e6ff8f5dc2c540968b1be8d2941910b9e3391130497434d190f26a26bb1c0bdfdd45e74a8c7052b5de2728426c99af40ee30ae6f74f86c2d60b45859373f403bddf1970844a0771979b4eda28e47a6ea2a358823ebd3b732bb6356a053bd1159ffa5073f2f56aa604e0dac437cb31a5964099658027d567f4acc31ae57006c024373e4b5ff24d88bfe07e21962032349fcb8f014a5755c5eb4e6b647b6371b209ff0116e1fd60fe88a74680dfd6cc17a155c64a44235c87603a335120f05c62c2678b116c884a884007c90c1f3bc1234d1534c32dd6f59677893b0a811017d705f44c18b2ee08b8aeb0e72904ec90c9cd281f9908128c77962aeba7abe80c052bdcec179f4964ecd3359cc5c7acc2c8502eb4d1d828856f504769ab7eb662b655b3fb1c7081212015f3df703ceacd1ef8a066bb0884c4278042b4f27f40844d653a03342c302fa0045001411a3618ef4d123c91927851b2a05b49ca0388e35fb6ce3f6aa1ea3899d3a9daccb78c5dcced02d20f9519e38e2151773ed63cf988c7d0ee4fb8ba41849e7495416c8818838118259db70fddca157d30a2bcb379318840944811396f71daf768b0820a7a22f9a9f9a68d8bc343d8dc56e242d28ef57544e05437090db1c61fe0714dd9f2d9d8189cf85d07aa0ba5b1eeee724b4fcf5aa0e7c6168d64a63367ad00cfbd1d8b297087994a10046fdb3e7fad3f8d8812964490a2fbf264d45fccafd2e7caf41ca0d0ae049abbf59ed55ae9b30d39de9a9974647022435065cad7e3a0d354df565294312777e9d90ac48b483aad77439360d4ddd228e747350a4c173697f995ee6b573b250b0103330d25eb890baa977fcbd3337c450420afc7ed043d07964f25af660276c1ba8b3ee400c1e13fbeb7d42b0dc47e157561bc7b232942b632f17e52f444bf2e98e8557a0dcbadcceb9b2512ad383cc1e10131d765a4c0e6bebea4429d1e3520d65c290fc4d64680af668a8ada35b263b32aaca2f23f8e23c7db87f733ec3ff74ad4236ac574887985fa1c53bf3cf8621f3c7eac807f28ad1be953588b0aa940914d316674fbd4eac2e401cfccb4f8705717ac13a2569fec829215b10124219a8876d8d8c3c5cab4a0aad7af92920091e0026eb8d5626c79dd0f9e605c4cbd8801f38e806cedd4411b81de3657df5bc60963aa20348cf2488636cfd09de12c35a5884cd60dda03bd38c708e48f3723a6253785864c38eea79cbc3b4eac47dc442b99dec05bb7ee3d63bd139fb835f4a5e32ce5d71280d043d5a602aab79441b00e62550bc3e05fb45d4c85cb0db7a5302b722bbf8c95498783011f1a4f921283dd2c50859e3e34203d42366a0f5a3505b64110c0c554880cb9fcbd689768c723f54046754683ebedc568a61d82be44a0b54735eeb2d536ac0c03b1e74089e7a1cad1b6b5379ecbc5015e0fd745792b151e242bd2131b38e1c92b987e1f703b80328c152e17d7f47e7f5a63c418ea56e99e5b3a318ba0ac31344179c354c7f151187060a917a3769ae8eb08e93af9dfc1532c694f096d5ca10f3b90432fe1cff55eb65c408c46a7cadd6493b954888840d16f4e2b09e30c1773a3bd4ca0c3355a6a505c761abb7c130aad33ceeb2b8d9d3536406ec83a0e8ef6a20be21ac0452caabb3febbebeb76b95a187dad6652f27230af2e0c0cb9d514f6fb89c21a602d250bcc8983719de7d5e5283470c9c3ae34f3434086ee1fbf3e5f4341e75843c399fbedca44fa8dbe29e4f6b92467ed1cb132271ba5a11c3f54e7ede3c1cba76cfeac50bfd09194013f9a37a4a709e86c32721e6fe5038f5e4e5163366eefbff12591a73c058f847c7b6d86289281ef3cf7233278330c282f83124f2088823c6e5a3f2444baf11a69b0b0f69c33d646faf006eeb48e0751eb6bdfa89e8df7bbea94650f285d36652765a5323e58422972856471d10559eba7380536b3b12f3fb878558b2165d66e7af7f345d0aaa4997f4af01d3e4c4953030a353d2bb6dd7a720f52ba06209337510ef5104e23a42c66f364b5ae8a41ecde1ff2485fc8167f6c996b1d2002cb2865f59c2b0bfe49499e20f50121dc47e77098cbfc01a4caf99f80136f65bc2d979b4b6f5542c869d8cae8823d8d1d7dc450c2f89139aa9b41d23ba2b005a097e0b408d110696660b658fe83b8c7e76774245d7997afbce949dbc4013a5f749b2a1ebbd0fdd6a7d6347cb1f699c729f19856809a60d30afe49198653e3b257c6f6ba23050c2a8c9a7a17f6f1d17dc23babd24fe8ef373fe961fcfc9d7a9e46bc19fbefeae98f32155dfe34327ac9eb3450f757f4083a70d28dec281483f9da443dc69f3b93d2db62183c294035f046bfe2dbab0989019ad0fc4735d3bdadaf24be177c45e947544c95414ea190e887eb6e1d7655aae7a0c4c0b3ca51dc561b296bcde364b4addbe075e659d0b25314176f8bb59229f20803be28988f8c55d522d226430ca71035883e1704c211aeb870646eeb21b1c325efb283b4029171e65dfadf1ea85c2addd4830d81024486d32992454435c4b6db58f2a8c22f7dda95573fb75e64648f792d54a23662ddccd6021a872a10f5fb54713ee34b6eff15e1b1e6926b785409ae823c913d22b587f100ff08b8c5ef8f1cf8a31c521d17746794a305641313153b986f247194d345f40c5602dcb482ca03dcfb0da1418a96d261ad9bea2547b0fb5502781226cd40cf3169b2df1286bc1e5d1a6843fed3c5a8cb43071592f2e23821e9a494d1de4a31a1b9dc6c116a780e0413b1fc0ffb68543b2ba133019c25b6fab930b7523d094785bd943fc2be11e0af4ce237ef87c9296df5ca32a2fb66c17b85b9ed24149209974ee78688cf53751dbd60abfe511e8a8c3ba7e238f4f6d9d7c9141ee6fd80c3459a2665a48e39badf9ce535a9acc32f56e84f9758f680f52b2da0d9c701dabb636a95a51253c69c79809eb938908a9d438f1848326fea2fb00b68c6e5ddc357738f8a40904adee5dfdd74117d6daf964215cc0e78b2e7d72a33855cf66eaa2495427c4ebeb679458799802f35404ed1a44250b28b5662451c4664b9a385495c1169b09e3ae9526518756b128d6762decbcd65750b251c5f3f0e267ab6a77cd7ebea2fc1298166876c27addc54476a96a237e91d7fa3d57c48973499d62d98bfc819ae85949ffea4ebd60a78225178a128d260b91dc80bc074bac2c540b8e62920ff7322bf1dbdc1eab5b35cf86e3741fb471db08197727184e5355b671a3bcb4de596e4655c816a936faad8ae4826649a5b1466ae6d2c63928d38db73700adb8dea671476edb86ecd1e70fcb4296e375b76e57368b0280c5054cdc4b4c8a10fa07c85a443620aefd1043e81ee1ca61347f6e668b11e0a38da09cec0d27337eacd74b9804884d993f164c01e32418ccdb749c257be4dd8611fa16cfef1232470d4281348cce9f93d792d0603738900093aa462dbc912a3850549c3da40a335eef9e1a8d0dbde8c729e371516aa7da96bce36d65e765d7304554b128f01c4d62f4c7622d6c8391b75d5c3cd5172574cf4ae9412eb33973760e77b8d02a13308fc76e3d004cdf17762aa020bb4a19ec05dc1f814d380355c5f36b668e3919c42866514e54375483c2d306008592217f55cc4606f0814cf356424366c56754c4d80844ac67e93ab72eabc400b336e4039db2eb6443f2e4be1dcb7e977bb30ad10b23c980679d9f4c8e23ad43d174997f40fbd8ad211d6241ab50a7c118746c609387ff5447cbf789e090226adb99a69e5990e2036ede43db5fea5033fa454785cb591549f9f5604a9675b098d5c1d1fe351a11a93b5b62544039a3f8adec6564ad1a02292f7d56e21c959a9b4df7563208740208d13775161fb96328da82489e669762afd26e2eac74876ca53ba3cfdbb43d5830f50d4f086ace85be9a7a1b22ebc226b5b42a115db292f7e71df83bf5c7132308623cc5627c19797532de03fdd2ab5732aebad92f7d8f743d49a8ee2fbfe7258fef80ca4cbb4ab036f6e665ffde474404589f63457151876074a08a47415e8a4c747de6d039ae5e15e84f3e15c8039aa6fecbdaf2b7fcbf9c6dee874d51cc2f7cc2b6120514f3eab78f0e3512faa3246be5df38dcfb279f873995a58fa3ec691799b5626c57abc812e2191475b1e9caf8001644f634bfa2f8bd61951a2ef5898302cd1e4ef22f891814ea3375ccf1e20a0d412c78762d58babe00f5839253a8ddeffccbdab2bd295cb00243ff71a41bc27b54ce06dc2af5a89e916811644b843c59ff86932809aa3283ae1138484e17c032a04cbb5a63940901c961cc55569e27ffd9e9c0299161bf7b504f02e67ad33991e451062ebabc41712df3a651a4edaeb3a74da88c6c54c84599071ee721074eb7a153344d13f85d6d2f6dc5d19a4a5da64ac6fd2fe384be2050085250a5dc3aea5d9be1ae56a1fe57d9146b953339d14cde93df0a1781257aa3221da5b4498ce4c9e43a88da784f342223ca4068ef1e5cb1ce728375888be62830369f6ceffcc8eb693b5c20b73694889e70d8c22534985cdbf83f28975391fe4c24aaff0347c9b790925368fc39bdf498e5348270720bb3328bc98bf62b80270b5e00f99942568d31f51efa24fe333b5ded11bac5e7864a1ac884d9d82ea0093eae8b8322eb8c61e4de20671413161ad1e4b57649ec280f2e03ff3647aa58d062d00efdaaa8a4ee10671406cacb82df20a56423c91c0b626c4d5ff6f0fa03761ad6f902339243aa9e20e6da0bf8ee639e06a957eadd7a86aad868617187758166594f610f0654d2bd8a3f03d55e21c47318f71279a0b7fa532ea9381b27985039267ddf8d7c4498547bf962482c48f1ed8293e9f9f3ba0a124cec66e7d36f030b458806a67a08ca5265cbc6f9a14c3357e34bb0317ddcdff3daa603892e225862a9b5376c093323ff6185b8593d740d300e65c00a7bffa50667d398bfd0217453f46ab55f0c13cb2e8975a57fda0c05ab38517f77da7ad9e97192e16d20830644f921faea624041ed026798cc8fe6ef2a9da067917d84c1293b139b9e1298e73a9de903d7739441c36bc32cc693e5a04f116c82722c4c62d736057bb4cce8781cef44ed79db09a615597113b47ba5ef33ef3b9e2bbef6533341bf802350e6e61058f452227cee2a90fbe49bcaa5318a4ae0efdd36fa89a8ffcda4556c59886342976671aa6fa9e67ccf170f030140e666b7e08e4f49aa1c7b7f55664dbe4c691adbe0e52deb3c6157930093c8d21ae4a28dac788caa2fc73fba382c54163b472bc358172fa2ce2eb72e8b41708fc51e297effd708142edf0b01330e2ff21ac02019fe2aa5e06aff0b7a154a1c54dc845a3b981d9a1b92338877b3e24464cb5b3e08ab987f969226bc2289da02fb6649aa90e2461158962dcaed842f38ff09b36509c54379fcbd0ebe9c192ec2126c8365408fd09e7dc497d49936d3099ce08873a0a8d575c87c3cb415f6e483d385e7cf6ce3b187a384f8a6276795a1a81d462ddff9195483f1f6be1fc535330aebe56aa636903a294fd845cb938d9a6901dd4bb579af1554d00abba097b1d03d3d2918bb54e128c7e91cf1174046da81cd5748083454f256a65dd4f4e5e60df150c6f64f5a384763177ad9a001ec646237836833274c84a887138d458c72f258b07f05ffa2c5a2cf14c3962203c21100dc8c2d90c1fc954453bcdf632434ab3d859300c71df15f85f79032d32173d162dda060d22aab4cb3a92c079a4116d50ff5176125b6502a94df6a8f9418094ce6f3626e2719c07aec751d825996550b3bca07a65c8444c3cbcd4e0be36e16a338678d328eee5618fa60da25722625150f39a39736f5d4369c01cdb4cc8584d23b92a77148c0be557ead70c612d5c1fe98aa57293e0a29a6f1ec9ec31b2afd29fe817e60e72ef06836a0cb62303f5298f7ce778c70867a18d3991baf99d90385b45b034b17d104629df829557af0c7039e712ae602e751b69bdaae794e4f10f0609dda6cb622484c2fa9612c1b07ad91577550f5d37187428e598c008bb0639dc2a6aa2dabe75b1372d7b77001ae733b3171f3d2964c26a1c8d644ff1977db6b37e867506acce2455164288542ce777d0e69309b1afa702a6d9936cbf29b3f4f31620e5728d2cc74e77bec8b5a276341dbe15fbc3fbe1fd7476f8f7905fc2646175ea4101d0dce4497a803db1130c1ce68f6cffb571ea3c6a50c85a87724b4064b26b369e82f92a6998e2464db0fd637fc71a7567bcf7d0136a67258aa09894d37595f6c64cdc6e753468fb7a544af151e2644e49ce44157df8b147fe5e55e161133ed031fa23666d824bf6d093852c42517d785a0c6b117d4c6c11e047f8c97673e530fd4c976159bac7cc412825a3779a81cadfc0712946741acce4f876ca2b9d43d04f93760d79201f077b78763e7e72748960229e749116e69f58a72b72a43509a53e401f587d6fed071e7e44954bbde2c236a08f23d7838549a3bae76331b7ec64e304d81c9cdcb8bd09b41fb8f22d3b57c3111f73b50baed0fb7c98a8e3b8ddc7223a988c04c6d5f878f8ab600f336b58ec054184107dbf1c6f3eab92a6d205a0bc0ac9fb497ace6e0dc8e6adae74746b6bf18741579767594e4d3b3b295c1d031df4f380c78921f62c60151c643239cb9a271b45014c2f26f2b7641db6e6d0809e879ff5dc6d889bd3bc66b7697723c9aa317787b2892b61ab2258e36360e3149593784ced7438d58fa90eec43ce24ad9a45ca75ab8f8b5191327924d298787225c5288b297598b2bad1c2a02fa777d98530b770db0ad36f5db6b34c02df9505917d98c623bf7cafece857de342872a3cfc3464214a71dcc29ce975b8da0e273b5c3a02b7b7a7a6278d19bb698a7f895b0d244eaf89788deec0252862e1845f296fe3c468d32aa0c875cb14be8bc5a59a7d68bc1b6416e76ed51c7801612b323637eb73602ec9deffb6c1f31e60517b514017fcad6e82eec60292327ee165c84ab609ec6ba599f0430f6212e5d26ec9009db08a8c448ae39e5792d700e5063a478be1121a567d0a2807bdc48ea92a4d7a17e11a63b56c8af2984068603ce11e2609509cf68b89bd96f0c326c2c468fd91107ea10d25f57887198ceba52764e13420d97ddfc196666efcdf09e28f954243abb4b2cfeb7ce2a825ab3aa7dd06282f4267ffd4395d911c7a89b1dad7d1df6a61286b4f6bc52413880b75b6ed7cad7095587e469a3f7ea261f55504ea18e0a04d34dbab0a4acc111bf41bc6d778ae62844bba8df2f42e25bd97b97c6c0dffc3a7d9d13c6afa7fa9fde70dd7a73a7c4e05ad0f178c2c581f9be27f74671e2d1f74ab05e3074cc0c60c2873ba35a2115ec690f39b7c7148782be8e3ad9840685b4115a8854b7df4d6e404cf41aef2934f41e7adc9c397198be160fd907a0bf854c5c8c05476f387ce7424c2ee7a0ac81b81a8e05e6491e892da7f510b72b179545bfdc7e7407a1d165717e4d240388f6ee306b21d7cd3c9aaba24beb9eec469c1267b332ae731777ce7a72220a3b03f71d6fb4309b9dee6ef4d6ac0d28887dbd7b109e260472e26fe297a41909e4c5d61e862446942ef0db7a3562bc7b07a17b3f2ae0c5eb9e2db129d2bfb07f8bd9f576c97062e5ab7a632eb43b7eab3aa9d5253675191fa039e8cad21b88587bbc7206c18b96ce1d56a97810eacc6ab38e286f0f437763787c5be5a08dc1c4b1fe13b88e6d98442b51bb0b62ff20d7ae0013c3e789d43cb5be23eded090489333c5653a0e0f18011094731267eeefce73fb7b80b962f4a8b9fa68ff6f21b1e80af51f785c0ccd43c387403e1d1db966ddf47d750ffbd8e9a037ed71320d769ace6943ea8f5d1fb8c5fcec2118ba01a64d2eb71a785dcaf3b6a117f6daff23d40f17176325d5fef7e95bbdc82751cf030317631d3e6f33fb9a92ab3f874bda47dde06772e8cd6ccc0d5b5ef3aec169a9e4f20e27d3504ed6bba95057cf4b22ab3cfb0313dfda0749b96749bc13547fcb95bcc7ae455cd58fd0463848380d695579e43e03bf5d6aa50fef4dc6eb37bf38ee662399b8586bf42ce78546501d9def36c471261904b5063ae747a44dc67bdffb9403fe6e2e53c5729e8bd0aadf669f2a6e18e2982f2d8e96faa500d06eab2da160d413bddfe19236b89f054a68d271d2c16a23e33bafddeb4f386c80eaeee4c2b3e0a2a443777ec9b4aae24d4dd2cba74c6a4ff5e0730e3ba45ffa6abd3981ca59144d6e8a7a55ef0be4ff328684f16cbb061a95d2f1b41c2224054578446ba818dcab7a413bdb4ba472098ee937b3a1a223ee9268bf71df83736a6b1df68839ce838b7fb68600cdbf8555d71d9dae12b567908118381655eea86f7677fee2b9fd994116dfb332215d879f7f179733a6cc22e53b8b34bd904177d9ff50e4c0481e06dce4a7319a1907a7ea2368d5ba26c76e7f9a9df1a3224f4170561bb3fbad1ac86d86743548c1ef343d03cd4880c4b1125e66ae052070a05966ffe71dad79fa547e91c5afb739964ab09f31c40fb1c339e57ceb7353c0eee21a3ade989becafc46e74273acefd192b45f2fc6142a3a425f31cbb7d72bf4984a33f0cef6ce14fd3090790b3c9106f9c006c7b13ad9639634f31e51cea1dd08850dc799312f4308eea5fdbfdd25c272e227958b7efbedf465a080104c8307948c512f398f5ff5e0a1b6bf1268d47e3e08a973ae86da53f196163bd58a076101bcd8369de8911450de98faad0b58dc591f03f6e1199103000b66ab130a94c6f2542545d3997f7dc2179d52e4bc2e8b76da474b69d94449c28fbd5b8a79792deba73ea903f158abfded2475e312fedc9f9eeb8b6a864075046f3ab1682e47e203b7918fa069d199829773423ca32c78352d71c5496ebbb5741b855adb19dca606a9dcd60b3e6947e00cd0c0b84ae54f103c656759e2b5e6246f39cda8976b24cedaead01d127123651046b3ffa51a7c236d7b9d5a5b9c7ab5b31c10b36bed482ff0a27da1ea79d555185a68b2f77f38e5809c1c53291039356726b330f3fc81abb803833b1b259d2244355cdcdedff2e97ad7af574a82d064bdcba2f8b39058985a7b9b047779ab77ca75a6c29732e83653b709525d11a8428d1ab3438e803dbb9de9ca5ad342c2a4ce9591ed0e43a1965bb2a00ea93bdd12c126e74a304f1b683c3197e44a11db4e41fa71ef680c87f3f734a40014474af19843d9e890eabb2123f05abb8db96409243d2fddf814c025d3236673dc3d3e9472fbd87d2dcd164706bc99fd5ba42df4a709c65e48fe16bbd55cc96c9cc516a2b2931cd75a8f33386eb47d191c7a3380c6544c0df99be6715ad63cc8821924c72dc7d2e6914264ed82c6e5bff8fdbe4cd4ad5c00ba1445d674770d4fb4e3bf072dbe740fa5a51db0848c24cc2922e98da3220c8ed1cc86cc002a6ea6561f878234716f2a237cf2ce2d3106c19f77c83c2885bcb87b764084136b2a3ba5c8ed411d02030e3680176844f140ac1563113efa12f9e81e1af5682e891fd1b2cea814032a99f673af359817bd532562192cdc058e1c24fe9bd01bd06a00a592989b424f82479dba52b16c9ae56ae1a4e8415bcfedd6af65c42437df779f8cc6b5e9a3e50ac6865b1ec2ef5281554141e2cf584bdc421c9b23968b545d1c4c005c782674b09b351542e5ebd4704d2d2e13e104f1e0646da734370c8d27d5aa074d34c3b7dfbe9d6946bc97c243da508b8e73e4ddbc21cb05105a8e87339d5cf8b4b43348deccc6be3a2a94a78b16cb953a37ce46a70e81c25d8bc071588332f5f05c5424a307a237300fad0298440eae8e8790e2786d90314bc44ef303a061742d46b1170241af9a9e5d7df2a82cc0be829c157a1fbd66dec5687ba2f0fc9ca7c54732adcd87dc4db35ca5d72bafc55ac6035ac5c0fd35669658f5216aa4a928435724cb3cda22731989e547844ef2084b47afc2f3ae54585875d79071fe1cd3920756aebc9f0452fb180ac432b7a45ec629a18363c5707945729c932a1cc93b6792d6e3248bbd076141d1cf865e6651705066b779384f588864e998482cc1d8e5a2923ba2d51b17b1a7eca37d13440b6e498ecdff1e9b2153d33b07c84618f1afc4a05911702f2f90f4d2fa89fa4976fd46ff37023b0ca42d3e90d220f19ef395c2d0de3363bf1370e577ff17967f53d480414d9bf66220d545c4fba89c0dfc53caf1b920ed527bd5b8e71ffa15410fdd823061e4bbda167113c89dc532cbc53c8d53d52a4ac459c253ff67d4c984a4626b3f7e66551e28e69855c1794b88ac6368138537373c99cc1d836f45c5df91c8e261b05e6f6017b6bbbd67511438825b9bf5cf9060e7a5778eb936ef089a5083abe5a7bbe7649fb6f53ea0d398441cb70063b33ae53555a37308bfeac2c7ec078269871697b3dcded174538b7c1e9990dd0550c48549c01c3a866726b467d27ecc6502e4391939adb0bf51332e47a86f2ae5d917c6b4129e68b827fd2f7397d4a9dbcc163e469648abd25aa347c6d2fd79866b9111f86cc4cf5f6f3ab62c6cf43be3b5abcaba6c74713402d7de772dbdfd737c01c06bb74e5d9d6512bb43f243ac67e6061428b349927469fe557cf0d878561d0f41b6ce47934e7079b0036b848c75c3ec3788f17e4b225e5dd267d928b5514c21123b88d71dffc102684ce3bf70f1a5dcb21f50b57dbca39296b01fe55db2a65515a9f0dc63a0d83ca980e83a15f329d959b7ec7c0220a39612748ebc3ad0975158d7a51ebe1e6f762cce8f8d00d3fa539ffa2a8575fc529a163ac86b97a6f551e7c6550cfc8768b78cd1adab8f901a7832cfc96fd1b5707fa0da38e0e4b7322b500cfcd2827aa1fd81a6b53ae621e9fd96e6741e294d9ce4ab8105f6da15390d4d53389413ee7883c9ce04d506de5528e923fcc106432f6df1924516d7555566c087bebee67e569a0c406e664d79fb566b9ce73f77ca394d18f5cca1ab8543e47e55d1d95e33613b3dde712570d542bdb47ff139c41df20657dd6e4fad01ce0a3b519057b05020503c8d64c4bf17ae82053a5f093f7cc55b92ee66b22ee19e706886bfd89d82e20874723df4d31f2c4639a25ea6689d1f9ff48bcf2cf842baac53184ba03101c6577ced3a11ba29c38d01df852e990b82c35944fa1635d1b28ea3258effe24a6c564296243f2742e589d7cc1be6b3c8157931d5728123f043c0f93438d0ef29fb6acbd0c27674919642196afa129cb9eabb654cffca5331443a3c2520eb4427948dedd3dbde262ae30133e53adf5cef92e322b9a60dcf504b36e463974c858488ebab2156f313d690eab56d89017f0028a7d8e75b131ce370dd6644642d4124b9a8705dad257a810dc801c59327c75e7f4f2726bb2b9270bf4a71a1319ec4962e13c0bf7757280078403b93162739b275f916330533e3520842b444c9c41da03e3571a8b5e0a4e3b51fee2f01330beacd7900e52ff9dcb5f59b7ef900b96c355448cc120f58c86ed2ec72fee7355fb74f5f80faaacf3273d18b164264d510aab9410ae840fccd0331ae57b92a74b4f25d6d30e2923b87750631d3397d825e4778dfde3e8a4e864ed9570b8e60240b1b4102e78bb8abd3909bb1cb202a75e0db4f7a63890348078b3a227ab94148ab7590602b22eff55cb407801d0b71b710294c25924eaa9e8b507063d329fbc6eb2e194f591e9cd158b538abdace523888eeb72d7a8cb6f989c8dff609cd6f4d572550b4b6e418e1d70643d906a0c7bd13d322a67dd272c8bda47ed90aed8a69010d144569c920c820028807f23117fc918070f73f3bae8e4d70ddb367cd2f60bfe0640adc4f8da1e8441af55981dffb019866f313e77e879df750d0ea0b0ea0408d2433ffac37a3634147290461fd87099715a30889295e656c3aa1c471e2d0c4284a15667572d1fb31c7375d64df8fbd00899ebebbdc27d4345ff589e05b4e9695089e721883154b66fb930328aec28c87a7f5d3b180719898fc6bff03cf5a63d0790cd19102661591f8044ccb3e5fe036a51c9368572263cad5f2c2c6d00a562c1dbf463ecead22b11872f46b126dedcf9e891840f6782b5a572a92b83c3d5c5d31baa37505672d17039c4e663160e8bf1d48eaacfffde2c6239e19b253ea51e6850bd85ea6e85380576d0c2004350595e0475300c489800101fed18df38ac5dd7966683d820a1d670c3c5d69caed400acb90ae13219fdb697484f1c92f0dbdbeb43998f4644767e03f3ce9c0e09436f136e1f3c7e6af0e5e6f9c9e553f44ddd1b34f5a7d90742f1344c59a059c2231a176e7cf0fb02b2daac8a30c16cdf92c3a589e5a8e2bce05363640fe980c779d0a0ae3e86e0398c8e3f8f2dbe6255ebfe9ce8d91ace1a5c5d0384aac3d402052c117a38e7befa4f985c5b873ead215104536fa62eda307e4b1c99c40b74d8b99f215c8428fd7feb8e04445a0c8a2cfaeaab586010b7e7f20a08660f56184d7d2922ec0519d5d5b50e4d372ec6fb3bf6551253a8eec2856812591c3c96a4eb84b29b04a2ab14ce3b4abc6ead952c02d68e0d1f27c6d140dc832de37e54853b74c789fa3b8d27b271fd464ee3a93700898e10b2b9c135ae0a840d8d165db21da3b4c1a20e2c2a52af1b7f58018e40aab5b4ede45ae05ef843344afac091ff73875e9d56351c7ede30838ccaeee0a95d07d0c00bb3b6c1237bbc5a6895bb7a773a121bb8586ad880f0fa46da01ff501e1d3d73ee77781a713b173a219b74ee9c7f26b09d3642c29c338ad34780e4b0031d5470cc1f5bc4820ae07220771a7e8bf00ed88af4a4be69f4a70de505593b1bbf8b01aaace5c54cef7907ffdef14c228ce5bc672f54265c2746944621025e248d6e05f277b0533ccc7521e9711a4dab13876f8627ef6d0eadc20a750d2f62674819d7a2dd65e51a85cd1616c029b1af17f0a63aee0f3c70a069646fc6f7577cf6bd174ed970341636860db9647c23a786a5594f76d3c8e20c883a5a20f295b5b86536bfb9721873b698245f83c18a8aad40aa69c74d65fadc912c34162b8dd90e43fe1e7b792155bae301748e1ba103fecb79b885ad56e0c2c58290229cd12405ee11f1a323eb281c545eccb9dbe256975aa0c3b53c69590d1fb9c1207ea4a545f8cd023922a73607341ddf26ce314c5d11a1261a4c9eeb060fde6e928d40d0cede6e2b9379caaf48694ff2be7cffaf5a2ee986b0ba3f260e0fa89541f8b91126996e29744b7ef950262fcbc0237ab332e4190df8c5804503f996e2fc131cb21e7a9a77e2e77935afe8487bb99860ac20d81f46f5937dddaf658a167e064b7e306ff123dc539febb02c31d67ef71e689fc4471fa0f2565a88427427175f6fa0d6892dbc49f448adfd9e6eb372319f9a6208157a56d4f7c9f7e67da478250ae050da67115c88c9abf4d367cb73cd5e4a1b7d491a0ec99690c3002e2ad2020918951fd2c791c684a573b212a7e653b4db364ddd8f00853546bba1c9a831d380a3853d7a1c4b52b5942c1b430833a63634e16afd902ed5dca37029bf2258c5f14d9c1b321e0a7684feaee95b8d6ce857319095487dbbadced18b98c2ee2e08fb349cdafeb35313ea07da8a32c51fcdb4e2db0dee7bbd5a0d01459cd916247170510ad6ab809b711e8901b9132473f9ae8fb2880858a9bb0cdead43bc68b50f2ffb4ff33f5687da31c678a819baf367efb4d1d36b79968c8b5049604796c4834d8b5971e259bdaaffecef8867f649a6f20d3f975a8aa7752e463b83f77785674c279e2df8bf0f359ecb9eee0798703a8720dea905ecf624171a06a5815ac687dba114abd44008409ab5b70a1d31cdccc7fca906b8d35705920394b89265f5352ee17071db6a60431c8a415316da9340405653c3fc16b93da888cfdd9653aa18fff2d9c331914957c70941b90ee72dba9dba672aea9188186bbe510613dd181c3716d3fce654b7894256d47c0f5ab333439237bbfb48c02dccb06a542d4027bd7099b31645e5cdd1842bafe960f11a79e760745c85ee904073a753f8d572e47fb7d0fb1ce465f007f0bb692c38e0c94abe81ba1db9248405935064e0bb9dc67de2d36e5861b374f4e24a54885f5216e0af56839809b752d8b2cd4f644e968b3a32442bf2729adb9bae03b1074be95179c6dd784c136128bdccdbf285d2938463fd0f77053e0c20823b354daa392082bfc82d02ba2e516bb89557ec717eb753b4e42b395b8e3cc772fd3feb2e58a34d060a2711d73a4864fd3156c40dcbf359a304daee2af9aa8b2430eecf0671adc3d014962b8777523262c2aea0b8dda645b3d89958035b9f947333c22e0a07852fca20732594ff9602e5d600b8609601cc3a214554e3c893426efd8ce9326654610049b2d1655943e7b4c0b8b768052e15eda7fd63d7951e574aa1b547c0295370713b273c554cac13a23a64e04d5301afe1207b29402624e11a1ff4f0f74073409f7d7b8015a0049fb19741ea1862ff4fb4315d58a42a1b5a25041825a3724ae4ad99adddd5f2ce4034d62742488cdb95f7287a08d27ad9b3e678af5e921a3b86eb75fc7f46a2c153245396c510cec4fb74aca6e0542918113c58ce00bb4e33fa38c15deb9543bf3410c450b7e6f853d4ca0d1f4469e0443c05d7973d3c66d45054f068faffc37f3a467b520f3ae361ae7e58870f89d686d1edcb04243b22d81ec0ce754c75d05e8b2f94852b1bc3548cafe3d19ca5e74c45a06c8d99d2042bd34da0fc2d3fc323ab6176925fb35fc50487cf73804ade79d41d5d761f3b4ae3e1fb63896e576f1a984a0cb01f01da2bc3ba49934b01d6da75f55a2516ea2bc8e22439a370ea9281b0cb6bfaabd52cf09b2e359e016189669b3de8a3e0dd72b27ddc6ef75ab17e61a3a95dc08a70349328dd525f1a046de08a1195dd1da00a455749eefdd27871b28f623b34673f8c8192ec33237c8c279e75b82bad38e92dcf13c6c504e4f8a9b699659d0f299d10a0c216ea1fe5d2343732d92344c0f422e2c56dd47fcce699adb99fdfab0e613072a7846db2df0283d648101e4bc39e46914085760751a49b23ceaeac496bde3811a87b3619691bcb26a3ab4d7451a6694541a6e6a7093d7ddf0c6aba6ba5d702989d6b3bec2e88404810f79eb209c11fb0adc144eb0a266a40c74b09b4fbee5ec80377f189067b33923524a1351c1507268893d5b2ec99386585d3fee530491dbb84325e0cf4363f71fc33a564a08e5ba80190170a299a6acd95580159a40f96edd2125513ea387d5603cb142892b0073ba595c8f8fcce924597cc3c87a688870da4b494d36b2018df6332a41dfba2114bbfd8466b67f8cfeda09a5e12ccb5dc40df8c864ffac4d179c5f051af0bb052c00fd59703a066b778a011afd736787475a8a22ff0549d3ae9c7d04b5c21294fe80ffdd33feb8c7a1a6a4a8c68f715c6019356fe5fc418c03378b56177003e3d057dece93f2d96a8efa853f71f942a23e8916d325468aea2402011df9221e70c1ee285348505a6d8695797f63fad883ce1b769e751f36a39129bf70511e3434d6dae0bbe51919df42504830dae373f350f47b9dc7ed92bc729588dffe5d52e38e445b067663cc5fede1b811ef8ac03898d647aba43d3c21e96df5aaa8279ba0854a3921dabea0f901e792479013f6c716fcc7b01e2cecead6c9aa94a34fa5b184b5c101e2885d3095e3d78113f88dfbda69dc6dba2cd94133c3aefca95a3650ccaa7d181769f9e80623163593feaeb98b08b4955243131971709def3cee5c170b21f784e00d272482cb1c1cc1d08c960dc475a3fe342e11457555dad3d3e6565812e0c963d3e0c5e30a358f5d6ff71e1e84386acad0fcf22f2d8decc5dce485f4ca1a61c027fc171612775e083bf6f8481bd7ba1799fa8eaecbaca6bf892c02821f915f5e19c53bab7a163a96c960a426e3b499c874470ea416d64de370b936def2ab28adbcc34eb721968ae037e889a0ef905be0a1a0a433aac98866b5adf2cd2ce0a26220c4fac56580b90c749b0d5d8a9b7e48548f184720f3bf1b484716861316fc608f809b9c2014874ec05c57c4fab003dafbd75c6ae30f4151395c10e677491629996ff247e058e303468e372eb05b0bf4243a5b0109903a000715f0e92e558637b289e2d1ea3898bafb0ed33dad34bdb9068acd7b30874d70803b12ae3b6c2cdb42819f6c75feb1be0a10098c1c226dfd4a06da1d4343ea087f1365315c9311b3f7467471b2e09382571cc01d12974f8aa70c4b2304bf8443c4cbb5fe47d4aa673ff8c4d87350c9ff984ca827dfe49d30be61a00302919ff6a0dee62f041bc87f6abcf603153627fcb4b225a3c0172d08b499dd080565928fa7212552f98c65a7016efeb5a04073e56670b00843978a1ac9c53f2d6c70cf912234d1b48d73a2076d40d17ea277d29c7d6cecb2f7d095d4b5d48a4a2be0ed18d04462bc9e9b80c34f45bca7257ea34db0bd518ded2fc2909d4e1e0c3e383028970c864439761bcc1ccbedbf50d24e016f3b8985fe262144e1874cb03e2fdaaa0749e34e30b539a5820ddca57c2154d756e3bae8c83e7b5c2bef2dbd50c799921690963d0430d4a809be59b5859c8c36270599d4132ce2d3d3fcd32043cd453da857529d04dcdbb08590d7f892a5beec8b5bdfe08e72e0109b54179dfbe99fa469c6c2ec5c4359351a3fb942b49ba4c4ddeb3b11db2044c6fa48ec79981f83b9d1474580be17f6a49a176a37759d5e193a6207a36dc0dbf68eda4266a6825ec1a0e9d031715fa092aba05b8b9dfcb4c0a454ab84cea732bf7853b461ba9fbe8037555501be6a13e16bcbcacd08a08fcd3f7fbc115a913789ddc01f1513fc4a3dc13a77022d7baca1d812c66355588cd97774090722f2f062dd97aedf882a260c1f656517713eee9e5b6316c220ceb554c77c5920d62dc84627b0b0469d94ea1cace2b50971e07768e26ff8c19612e53cdae993b78dc04f7f9a01466d61088b7c04d453816c78dabd3cb34d04cbc774037bb7cb7782358a4590efe347516dbf8f4ba1d541bcd35dbe8c6749cd47d7f20ac48470f4beae3bdba4714e62cd086c98d79f84acd918d7ba703b8ee8b5d9f7bc44e435de992591d3ca342bd93b0b0a995d2154e9d34513cb72362d6c1bd629e670f6f090819e717367b7cb0a01896b96c7d255390b37c4c1223cca0bf816287d60c05d710966b1314fb12cfe1870884e576ab6ff038eddb473d34d1aa9973c5ca57c054fd1bb30a5ffdd742f041e28d0b69e425678ee4d83075d0d69720884bec2a3a6a654f1da5bcfb3d67d39d01621ccbdb0f83fd0dd3bb48d8e91516caf4d4e1ada11688801537a7811e9e800a276981a42ce0703f5344081e32d8eaf519132ae3c09274a84dcde9717536349c10896d700b06dc2726b8197c97de73b2c55ffe93fc502b5ff56960c01257511df3df9fdb47cec4a63fc9c84d83c4b6d026bafa4cbb81ca624c77baa85a0e34679d33b9666766327b94bf698604ea3745fd8705186a15fb763dc7c3578c131ab6ca0716c71ccc0bccf316ca40e5d0a0aa39b55f1426d5074cfa1da02b2f3bb49f0bb258ec6397e27b98f49193b620b34e31dd4819ab1007a7b844b147bedd5c2a3d73b03863afe1608c0cbecc1ae503ef893d8acbb5e71e325c1a923c719fdf9139625b721b0467892c29140b1c106ce60dc86533938acfc93929996992593b400232848253d4a418aadf847e36fc18a553917ff30d9665fb485520eb4e46c2b39cf3738d49e925ddbbe26636e203e79ccdd56e2c8de3a02068370cbd1632adf6db82d0694c8f3d20f7ab56d87e975fab89ee136164b352c4c8a9b5630c11124cbef1749e52afdde283fececbd5f0ed80d3a6e0f27ccd4c018ddf48038a44a02c818323330dc38660a200001a5bf8f54e4447ce277cf14f5552f3ed5a283b2374239cee1b132c7e89c0c8d26e6530958979eae5f223009ac66f45980c66fa43338ec40a1460481076080ba38cafb29252348ba52563e6ea1db650ede4aadbc09bc4f67cbf616a02d9d7f3772220c2aed107d7cb5f0d1ef611e0ebbcefd57143535ad0234c3e3d9ab8fd4486045f27acc74b264e3be3479497d6f16dff3038f57cd1ff6262339924a14bc52e9c22a7d3c61045f8c5790fe6d7f2140ee293d7b5fb8509e99f491251aca3b07b5f2b4ab8788b8f84a9397cc6db988c26a7d62bee8f2530e5d501afb421b8459c166e59e68941751ae2fe12b4a5f249ff1647152c2a11ab3a140dda0a2fba687939b527786b327830e4aeb6894c21360713bec2f9f68c98b39d509b6a2310407786eb74113a1da5239564fdd080ccae5f21d181fcf77ecf7881037b8da1551b46f792876c25cbbf4091368cbdb0a904cba848ef3d7c85a605ca0600f8ff91888ccad247af0fa57f557ed27d9fcadbd1ffac4ea74d02f0d666c15324e234021b0d4f695ccf555d4791dc0edbb05a3b65aeb22cc5b3135e3e3cad58e2b2bd8b7cfe7f15ce1fa973ee1258381e5751ead7d9b8407ef2b1b86923b1429af6ff49cb4e652e580a77b79cf56ee32446b13e7cb622b50ddb1e40c1f4cd0f934f91de086a1bdce1d1ba804d7002cdd6a4052cb28877f3457fbfea1b173026d51720d8bcbfc11881efd7c138af78e9e0a3c9890f75c0d871366d70efec2928c6235374421c6535094dc8a30488834471bc23a075c536efd5b7f215ee2cf61b4b35a880a88f653e9111c9d4ee85eaf9d4fe157bfbd36c3ecab02ebc45ce4924ee733dea089a44e8a7ae1dae51253ab5d0829448f7879b9c67ae04b2a2ca36410bb06b6b5d3425ae345b0e5d4038c729199de10d3cf2d65651e97fa7d3497358fd7e6e8d7ce8c9a1a3de3fc5cc5cff30ea69b59eeb9a85ebb8ad1852e953b60de58857733d8923ae53836b96482cb0672b06ea57576185034d45a8d85be78858aad0965bd4dcbf9e75c4ea2993209dc2e3510d97b16e1b2a267e56c2b012695012b1ebc00d3cddc9f2f34ac42e39ba9801e807ce6f26fb53d1143aef8d31e62a8e82b95e2e2a54558442ca25afcdbac320d727827e34a89e022cd8a009a59802cdf656709e57a0220ec36d3841162efc73be02c35c99859b6bce0d3ea2be3d709dbb3ceea24b19548291b6d19940597289798759a5d1db0e735b1dfe33131f4a36bce060d2612d77ceb50a01ce700a1cf5121284e7128564b762f45103d42248f2e0bf097040bc6355d8ee593131cd6cfa4915ad9fe0798f14355435f3363713e8bfba2cd7fc996240987614836538e03922ca56e1b1dbe96a3c7c22581c14372317985ba6fba05f54430b0cba6fb21b6b70d333aad7201fb82021ec3441016ee1c37ffad39905958fa3b836529a9d4bd6a5ec6bc2ac8cb41a5793de99a9d4142b5ef2143f53022b3e6afa9a3b4bd4060e274466b1dad4e578f7fa25d3b82212fb99c117a6fe43428214c442b49531d3d61d779f05d9d963543f00388281452a63055d053c6f6339629f438ebc554f554c0e25dd1c60f34fb4bde8b664024f1669af2a7cf1e6c3f0af9273740240963f928090c4744028fbc88dcd555bbb8c1ee186eecb5b04316026c7a4e6d5f31ee846c714b6d766a14addb5085816c7d021e541ddaa23e56c70ae8a185dbc7b83a5d5cfc30dc3c104152e17adbf0a14954a055df33da5474d2c4cfdc60f5e51e1b1a1b2da0593dcf93bfd7c14de5672813008627ef4c4f56b6f0a53aabe199ce725f53ffa6c6d7da92d9063e4598211781404720cbb12db5aec3fb0640cda60086dbb8459c584c3a5055a4ea50ea836707127b2215fa824d8d7390d8c03669daa4dd1052ddc04688360f5155bac6a353c312574751104d8a92454236c3a5221754b4e48bf2adab0b2686d29ee6208490526a92eee52786e7995997e4d11730c0e40179a984e7a21ca3b3860205be7a8805e7688bfdb5db7a6c62a98771b145cf2b5d7c577aa348b71d6eb089ab38dfc9227a04af0d865b6dc58539789d6b33848502f5249e7e660fe4c520a961707205014cec2ef1a354941dcb180bbb1d77b1d93917c626dae148223c4235acc469f26316e6c78ab1ce8a53216cdb40bffc63a6f83214c440c030dfabe0d996afce2285e0a1128d9ce0fd52daa8d2d7caf183a6efff75292bc79cbe8c6173458901c450018555222157e5f2e91e7a2255a9d30da0915a01a35caa1f17ed2b0d279c27332dcfc627e82c648c891d45f20f60548514c26a64fbe11adcce128833280968f21cea1205d3944514f553fbd17a842eb9aed704f5cdf3c888045868ed4a0c24b5928ee024fd868f68f7f7a8c033cea4bb79c59c5872a4af7d519f48b887670cf34281b204e52106b35b467e53e89d36d9f178a1be6a1f90aa0792d3eed15506e62644067d68b266d1091505a1e04afd14e6e26467f6e2039a47ad8d9ab778a4e70c343527aa2eedd209133cc4f868db2874832e038752fcac349f3dc82ad6c2d55f39729b710d52ce2ef05ceb84974a1ba945452fbd6bb345c949f9120254dfe130643c13aba451c409f9a9e5a2d7c08122ab12927ff29885912e2991a73cc282ab84a7da22afb95da0ddcd503426c3fc6bdd2c4420ee39768239d397f9b96345dcac6bccb22092cf2ca90f97a1787108b308bea50b7166e38169b36b0b46a112ff5bfe66ea4f95abea76c13fcce201ac771a70fcb2f7d70025e4ac51711ced41a001203af95996849a872580a1e3a722b20abda04285a05f67e54153085a1f20fee88652949143035ba2beb06023abe6a337636ee4a42f82a945e0e13a128c956a7eb85354f25aac7c5c2fcb1a2c87046ad36b398e10ecb8b1022c8ccf547b5183570fc7e3765a41649978c37d8194c13694db00aa873a1e8603d1c721d49273a41d22ad67be1a72480aefb67aac93859203d4eaad2e0e98d1770814e4c3cf14eb19947a253dd8c8052e04201ab780a5f2be74d0a28b87d30802bbbd746ca0a19f98e47ffc19b921d7abfbe0bc4a56021c285271867e9ab42324c68dba643560c4e9e916c43b7811f7c3fa110d44b664e9a1f3ae1561f7653373bcd7575591a40797afdfaaa1e959ad53c6e7fd408d29ba016d513a2a322244799904e447b446802f65f0dc96ae5e125c1091936573dce0dc58ff872aad476d345cca83dba965df977a01e141d19ee467f5ae95534e38df983170a6a48c2f9f4ed40753154694ec7d7b0581207fa813242cdbd935e9297e42312e7490e589f00f42e5b95ca6c37dfc69ce6172ef09052f162b6203b33caf5a0bec1164992452f68f8e96a09701dab3c2c1298418d508ea7c39345a56b0947b7b29f301085762b2ff7574ccd4951aaed888b88c459d3929bfd0df125ed3ce0d8c316989d063f2da39dacb2248f5b0f1079a215731396d8ba4d618b806df31f1e86429bd91443de52fa1b1a41f465412e6596375d1ac2c29c61fd154a5f2982e35ed1205a892add73d9cfa49c461191bc7dc36c537b47c719deb11db5f9ba2251bad3ca769693dce9275e9fbd40286d7fa3055f126f10fd9140c231b7496798b04d59a587e7ad104097e47d0fca39296c37e1a16dadac3b35d3bf0330e8fd10d6f38e23f6141d61047f633afa8c3cef77a9909a8d3c4a389f9a6b8c83cba78956e481ac4c76b2979dee92c6e33415dcf4f331c8dc323f1993f0e8dc1c926d357a4313f47feff3e252e3f0c981c904e621c7e9fb64dd4e9901e53837b17da57d67affc29ba070d4ba293af4e091760d5544337cf8db436beebeacdefd2cb2044c069400bded8d050ff0c61e505d04c9de6523ef80c720cdf993ceb18c30d75919eaa053c35e5f983362d76c154ad26e3df4b8519ff8fa91186f1297b9ee29eba086e895bf09108dac1d3183ab26d014eb005db608ec1e8fc3f718ba8e6f0937a8e170b813f73f620216eefba8c256ee1e4402d1a4c005406d150651cafc86c0339c536edd3f6369146dbc6a3b6f0219494555f443939a252c8bc4d7f16894d280603932efe6e659bdde098e12b660773febfced4fe100a0c61db25d96b9adf3df0ffcf8d3f3f7a59fbe706ad80ab427e9a0eef6314e49ceae3c35e8d72bde7ee4b5b384ce0608a2b8e8693aceeb32c0588469b3335fb3d9bff548bb931520a2c726e96675c127d5aa97471481c0764d5083ba7fcfcd4ea18cd7334fcff784e09ea6cc2c9549a3f1477ef1af416132c781fce41e0c3721be91bdff4eecc840727f2a5fec536e66c81416aae1f9c512f4475cbbf0718961b06ebba0c560d5c79f20926714c9c8c978e880dff212910474aef60c38a8d5062cfb3c8cc85dea3868f6dea76628b51c2cb47636144c3446fdb68ab0580c748a6cdf70ed1e22b9d289f0199e3b86f210a1752f11d0cfdcf665ab197a8ec36ad15bf68b64f47a825a57d2d901e7c7db666fc515e4d3228321dbeeb5848c6584fbe4e941f058738567fd3be0fa6bdff04be0e6202c40c9fb46dfde01914c41c7b6229360e2fab320b0f114493ad2180e78562bca3a2a3ac7d336f41d28c645d1af6dd6fc2b7c7159b24e9c6ce44abdd8c2e5cb2515dc9f82d6dcc0e43bd60811ecb1130a141690a55b9c47677d189d67432719871f46d21f82c425729c5409ff89027cbd913680da50ba36149539310216b5e00e4139a34856140d03785a6cd847c86d7953b660c0af0ac41313d51b3fd18524c70aab5e0af3fd147aa7beef6538ddaf016e6058841b439a1908e3419e9f125d78a66a5706335609b17f152a84c5bc3b467df5ead9808ef7fe186aac18c69e6c169efb459a8551561903dd741b061677cc1a81c9670e17eb55c89b51f2d6fae47bef4f72631355e5c53c1be070c1cd3228bf5d4c3dd00ed88c6b36161bd2092ee06f6d8fca22e786ea8d96641b481f0c4d5fcafe02545715b686ca9f41de13c51f1b4bc576e11fd2dffbb46a87f28d80ab34cba5b7700d29d28dbb36edb25f92e733fdfbd683805eca56910c82518e5b5a05539d41b72b81accd09b87e7c506574b9bd817f76feb40411c1920f62ac930e3830aba1eee7a1e6c495d57dd7a415feeccdb1bdd4c3fa7bb0bcc401f4a14c2fa45509bd3bf77514f60ed6d010c4f1c2dc5f3cdb96a769e336750ed2af1156dbd2316ec9c0066d5d0bd3e164087c78897000e0bcd01a3dd71921f4dc61889d02f457de91689241ea0fe5aae76025ea1c755874d6766a37a2fea32540399bb3d0f8f0f1585970e35869bef6550860fcca948e7c26e1c3c6c8f43089b07bfbcf7249abb7c85e5c7c3a2ea8566604d1307614e94d4192a355e9bf98011e3eac1519010d55a66ad13a31ada2c30fa7158eb0f50c0a43f241c74da20b52594d63d82dae9247d247e4cbc461a3e4950dce372d6302b52dd2d98d1d00667160abeab02e1ecd650c2beaf17077d51eea3e975c9eec44dfa2d612549fec06ee86bd8703c0e71db61b4d03b10a723a71425a0e7097553bd78b57117b8701528ab6348529756f7c5cec864849997c1b9b222e646ad6829d2affd04176e22a2de7c2395fcb83d0e6970d98efd1f1afeb116ca0cc368946715e2496ceb0fb3b4afc414160dd902c40c1981a254281c0a92e0b8cbcb9cb87d36e59a01ef7940bb76b27c101b734d318a932bea37ed091e9613273c2831d4dc6075ed2618da5a587d8eadc5f9421f423bc2afae820fed6a381f0d7efb3494898d587f0b8161a95526369a891cdc35ebdea86c243b53195c37b15e636943c74af002b105353494f7874f7896d4847ede6fb29eb5c1ac0256781a98fffb17cecd0ec46e5a6ba065eacd6dfee8ebc0c76804adcf7cb6ff3b310f2348f766d9700cf6790b472feeed02436dd5a8fad5f3da8448c2cf24cc23c64e740686ecd19025ff6958676941883cab50122f90c25a75b5fad309069469dff0fc25a34e7bbf6fdf516c0da9b46d35d7cd32de1a8155930c15359621e6156f308d1749eb6c73d62a9fe716c7c5b8b37041bb7d66a0a5f10a884ed8e106f1d3507718ae417e9a283ff27a3f1f971f90d1f2cbebb4d470c301252e916f73f20402d32ea39e8da495d5f3ad5102f07c24319f93716c95b25bfbb9137b74780f779fc9cb2c5ab21f3bdc9abf646803d71960ff44ffef9c5fddd6d0ab7313b43c285cccd3dcb4396e590c628852e6d21c0bb8988450b690eaedcfed1fa995fd2089833564c55e2cd26a8b5eff1d29f07375239a6374ddb97b89498199688a43cd1315b678b6d2925d0f3f08d80104cc5b9b71a8fe1de77c15920d299001b18fa4c96e620adf49a738ff7389d16a127da2af57eea9f34a7c6d56913b06cd3f21e791f9de89d227e1c3ed3d2e4e3a67744a80fc34e0f09d2de27b3d5fb1f0a1214c9dfd6dbfaf389719aaeb1f9912743393fae4fa9911fc40e8d7772287fe76533ea412e6a989b3085553b8dc7e1ec1380e1d24c0974bf61a93bacb4dd57460adc14372a65b24f372c13cfd3ff52e5ae67bd79e2dc5da60f30577ae8660c2c8501f856073d810619e0ea0fa64e15e05b3ed7dc5b1d5fa401918236fc5019280b0a446a83ee07040a6923b5c0aa84179a58300d950df95536cd592a310e94c74054c5921e990d107f9e93fd815884cf7207670ddeecdf8469f5ef9ccb7c78d9f586fde2ad7f3f32e6f4e9f214d5510b11294a55d53974fbb7c26089ca35c4fc2ca4801281ee20e92666ad760ddba07db3cef60328b0d715bfd5af94145904f69b87b899bd53eeb1b8ae1877ea9f149655c6b3d49baeb376a165ed475ebc28e8485bcd80a93424f73d9fa478b08b61fdd96b6fd267a63f2d642347771754049bd11f51159ba46cc181458ea4866116b657dcda856e875a61f574b9e42bcfe2666f328da28132b29fc65e75b620d0e128485f4fe0d3716513f63fa1687b426c75025db85ca384390f12a0701d3b24e36bb184ed560ad548ca4bc19e9a9342f1fc0934ecd3e82bb3d6e65fe7e555c0c39cc8628c4882e90efb38e2132e20b7779522641a27307fa0b3f3ad126d55dc76b878e1d1ebbf37d016e1022f6ee76ea3c22c1e1b0951a319568cbc50a24da2f1e19915d0bc3680a442dcd854dbaa26db44685fda4db26be17a16adcadff03b2251dac69a642fc7a037e460dcc65c822b667839892699372c08233bae958cc2318fc6d72f9ff00f42506d05ebf4db8cf876555b4911c7934d105d2a42ebb727737e705ce3ca3399765843bee62aee17977874d9185b66b30bd360465506196bf2740efece08de4d55f48400b216ef649d7062ccf77b06f1aa8982161cba7c7ef12112b8f667d6724de134357924aa4ba9c9d1b4ea7999e226ad305a6dfca5ab6167d70656ce2be02a1e4f3e8f23a154807a45e002557814cb41495ce019c4c6f56da2e3abe13569d3d2ea2345343cd72ca41179bb1c60174f64c8fed36d7e2863d21eca439ed49319fb0642221348bc99c4e5c25465665ec2aeafd9a87ab613f716a5bde582156b013138f43fdbbabd4e2bbf55dcaee0e77fdb928dd2234937e5fc2483bedea53aefd1d6c749bb724a4c3d9678bb6b636b8a22c835781a7eacf532fc9e7150547e0ef36f2e563f4d2e87410aaaf0ef8b29602d8548fba6c5668491275909bc8576125af63f64fb1d1a808d0074047d5944298dff45b0027f97243f8aac51a3350133bceed91b199d4e6bb9ccf280bd5ef3fc49f95d52e4e279e20fa40f067d705be09ccdc445fe3ba48f1ce9f48ee5af18371367f0d582a8b6f71837e2d69e39f59344cf7e4416fe26419a1800c8f3c08fb6ee3dcf13abe499639cd89cdec2bdf53fdff88dc3f014371b73f9fa5241672407da8fa40fe98c0de4a258245356306674b4efec759f0a7cc050d1d5739e53cd729e34877478045c9384ec4fef4c2dfd73b36e665c798b17b63c1d8e4c1fc4f2122266e7b9552f3d463f5bbc0ce6626a1f3be24fe09ab38ed5c4178b0d7346ce0370e960b8721ac916969793ffc7c47e2797358fa868dd68f9b121bc1b261c13c85e911c734a9252b0178d5f11cf94a4ea1a05270659efbd110130668ffaf6236c4e1666fcfba42763f8bfa309044cbb5995a22ccb63d0661f0fa15d80728ac693633d149d632d17f5bc1a70a8136382a63519576b112cf0c9eff2baec9db7ff24c8718865205feb600d55d20a00e8425e0f2f5790b26da5bfa917d2b498f21d8e163509491e8aabb20da833ff2e6375157226b0477ef18c1e40e0d747b85a3008680c5154c328a95144c3a153a9d66b0abb06edd219c6f0b7fae20ee83bd17e75821b163e3c5e7bb37b6c8776330c5afe9923becca5801abbe46ed5c3c0aad6498c3e10e34d4b9545d3ba32f39262513b50d5e3116749fcf3c0ba922be4aeb497de89d10fae27f86081d9c18f228adfb6d2368df3cad18facbb3ac3268db87b896fa0817f9653a7f3ff14c135035c6a927be9a7ffcc90a9bd095b9b6c80d0952d4fecc2bc57d4daf2ecb0eb62b5630245109f7679fbfeca1993f37720f4bc70a72358e335b5594c3257d69d1d2672c7a99eb8d46409c52d5e1cb17877d86e40546fa2c2d8233eb606795f3bb724fed8f1e2dbf0fe0e19e65905bbc953c947adb00ff82b6ebfffe03292171520818eabba536c26dae829ef0aadb3b8bb2ee2f2cf98cc1cf478b5bc145398ebbdcc248bd7a089005c745c51250e0f147aa35471a0606a813eb865a524b2dd0c4a5b0f14d737d801e2c8b96b6fb2bd09342753ab0da4a039d0e5c55d54d333ce2adbd852f19eb1e88d6f89926efb6c3bec8da31dbacf75fa1d281d52a51a3002eb0a3d81818ba922e7ec68bd5acee8c8b1bf6fc2b5fc982a93cb794a03cfb37296077a40d7aa029b35a22edf3c512bfd251729f6b2fa04c70d54f00093dadbbd3b645d8daa930150c16274fb55b345f751ab7a02f1c9e9eacbdbfb1ee50a87cbf0f284d6a9eb39021732cb5db510a70beb6021407863ac60e3633242459da89bf5cc4daa7ab5540d9151b31b5c91ea75e70d984fd64d68cc56f7a94a345be75190faf7d958ea3b7df06584a8b2a5bfcac8c37cc918802a3b5922112bb5edd3446e8750d1e2a591c27324cb57c43cb8aa7a069c5dcb8aba8d170cc7fc93ec1db3aee953ea504e2711eb54beb71d3dc19cea1c6e213a5182e2fe0c32fa318124b53547ec57ef5905208952ce81fcc0e991a7dcd4b10f6127364be76b4175996812153a25f76ba2dcc81b78cef22e9f484a840fdeb655ed70d29d6c03dc34cb24b39c2e9083ba4b8b627c282b2e66f4c7b17cf9da21bf15cc8fc47f1238c643bf5f8525b5460003fa8c26af7d4e3a0773995381008886d8c64303a4fcfba1e3b19f18b3d142375ebbf70ea5ca079c9077515ad891b22a724854fe7e1053961da0a061b31efdbd922b4804c422cd3b57fda15243599940cf4c3271005bf8d2e09239bc3731feabc3411408569d5e6b99e165fb8c09a9b80a9e1627d5999985ce32cb46958edecf7ac007485ca3540acdc50d1d79df2faf6ef22de8f4f356b2bbf07c695fd59fafec79eb124adcad81b3b4d1da8f0f7fdd6be85df924a99901694b67107c3e8864abc0166dbcc64f046216225cc94b45a38781a406388493c34c5d58c41c45a87367c1e6056ef7ce6ac5b95b25db6105a407e910af66d9ef75153cd9af28d771ff9c93b632cbcbc243e5cf51ebad4485af3d8ed45e3f08fba3fb089f461758eedde1e4d4bb69723cdbcb9e0193c17139f05b144d81699819e6fd4e2cc12fb9de65945908fc5ca8835785ba39eeb1e834caf7edbb3125924794289b68c5837f03e888bc59b7502134733424a6c65c088d6c137e326e0cfcfdd4e58c1229835dde712979769efee39873c893b6adb7570c5bf6b9825dabecd4c2fd7ccf5a62a61561da72a880cf0fceb0975c5ae03287cefa0f240f169e282783550ab48e881bd4bf69f08d10744d2d9cf342fe52e694df498edbf9d1a7afb446859aaa1859b726f3f97fe35c34810cccb82cb1084f68bf3702162cefc92e1036c60f079201d9537d1df212ed3cdb3b1e2c7dc9fdd47b39eb3dcd60d1833b9050d5b9d2f1f63cafdbb487f8f21fb7a5466f8b2349275ad81a1318825b153c291701f0270544d0bb6e10f60f1598cbd612a5177b969cbac28a8202141cfd7cc25122493fcbe3bc19c15d0635b6eaccfa1338d434a0bdc48ca2b1d66be49bd71a824c64679ed363f7d2e2f1e332f0f0e3c2d14bcabdc8c54084954772736baa03d118e54fcb5f22d5a44b0fb75b4681bcd821a63febea61f733ebf7e1e9aff0edc594170660430c43cdeeee66287b587d9074fb359a8d6513e9cfa3e3e68c175964c0dfd6ef501c13b603ff251f8277a7e3a041f7f6758ff66ccd39d20a23f25ef08a551400b872641b8e78290fb0d638c6d3c3a4f6719c8287eada0d48a76e69921411811079be986f9c6131508357864835d6b3764a266cf20af5718565d673761644691c57d595a97f977b98a648a371cedb5601008acb7ee67724a961f4592238ab0cefad706581aa63bc3c7eb9f6649b55db7188fb51b3e8ee2cd73f4a6cc2b5b7dd6898cac1170e00e4dcd4cb80447ac594e65d586f65fef85aaec96031857f958866f248b9d3a98b6736a6d82205c4397c1debbbc488cfb40db2b721b0b7031d1f6b9af187b3bd3e8201a7f85bbf97fa7f08695570d27f440eb1331856e60fe9c48e97c9c2dd0aa52d3c2b0ce49e76e5c4b7640efc088f770058db8d1046b89c8727652d3b09f5090413ba3feefc3018482e11175b81c5cf1e81de690f521516b426f8a309c5f8fdcb27c6198d695f14fba7413e640167b6694ad22a7900c6c2b28ae33363f8717b9ccb548f625d6ad4252a028c288460ed503e2a9601748c95909b79944c2c17b61d3a7c6b1137bd07bbf828c08c1ada095854afdf3e4311b9d1a3f3fda23e90e0aa37c89187fa5e96ec93bc0188c06e9fd69647701c14fd6b66ed0dd3dcf744e3c64aeba12650ebf85734584035cc5a8a2b18720ad9f2d932171bc20f9811ced9ef0c677c373e52348140c3b15ed879b4af4b123b85b35343e51f6e44514455fbc4280d961650e2e54be18ad0d6a586922eeecbe4bb11293e20d8cd8ce275072a892f26d067a9b4ff8e2ea79fa31e883dcd9e5c769115bc7903b3ad404556c150362eada2e1962d7542e4591959e0bb8812c9e8e8908238f0009148718a8adc42d3781dfda3000f66643993aae8dcc0cc66ba478796539c7034cc442675e4527ef9cbad828a7cd0ce9af411bbed30b127a5b9fef859423559b64651e7a4421e7ebc13324a663dcf62dd23b608990374b7fb75814e84c40d8713c97b9ac2dbf18a48854374cf7c8ef2bce5a155f043d4129946fa2ddb37363e7be3753fca4a59c0505ec05b3bef50f42a6c92de5560737627fb55cc9745501a887d1c7dc700c0ca0075f900c380928ae4c744d5a74e5ae1171b192ecf412c3d5a0065d8438aa02856a011b04c01bb5db85ed2e63b51ae8b3673cfb90a74f6e529223937f3e6a43f917184ad31e34feabefb966a14314ab5969a51c90e92a7509386b3fb49b02df7a5f1537edc286681d9ba5bd903f5ebb76587b32cb1d224287b69d8c830f21fb129fb455c1bd5f188e80ffce83809b7d6005149710e17182264213d625b6a57d527ecdf9f8af418f34cb8878f792db49b9a1f9813fe22145a36d78e2b97da767a8cef53eb51cde60677af9597003dc647f64e6e9a8b673d2f7d71c960d35c826797f10ccdd25951163d4650b1d10f17f1362a2e855e817692c42f3f2579f5d19aaa931de8fcf465a8b3801069a84c461f56a67a174481f3d50a4deb3011cd76550a3546dba4335b0c7537ac5c64dd2152443a6d6876d6579d8086662eaee89437700b2cbdb8e6e343b75f46ec2026bcbcd71ab054c7d3b11159125821669a1311d537ad6f3193392c854f7c69795e33ae384e5e24abd669b8a8249d2e070c6205019d46787a543158f3eee473318a92bef3225be45be52307f2479b7760790f4cda5df99c16a1e1f4b0d27ada78f77d0e2c99e2a48640fcb72f114ff979c770ee801ee35839343f7e29b9e9f13650c46879e19f4d3f32232e6cf712a406d60cbe93a664ac12dd697660593ae3f367f431f1bd32ce6ee5bb9b137e17f073627a8f3a2007c24950142bfbf09a997e73b44b36bc99ab3733ffb971f8585b2f942f610b7f82c123922ce259c9655a218bdd674cc59fcb5932606f05259e2d3b972fb224abbd050fa6665ebef92bc54fb84f7dae7dcf30e9d30d1cfd624203725535175b1d9f3728061cafbf7237392f81c1488fdd50b5aa1016261ef6cd251fe24a958e9bc0d415a4c80bc6a1977d57d577c6a913942c5eb1d2abf475a5264c024b9009d03a42b8424a7b69990c07806b0174a7c354b212d40d20e9cae09e58fba8b18618b993ac747f195869ad0371f85e979328b16454e1bf85a459512aa5bfcf9aee81173e6e96dec5fe471cb662ef7d36828acc38cf53ce0959a8db2302b8e8c7e5cba144307aad33c6b10d6df9f4f238f3c582ecf624e639b8305297860163632bde10bca927833a7e0c9db8b4d6cd7f42840cd5b0207c5c5abe5a2b3324946649a21edf6f84f1b755bec5a471825abd3efb88b92513a333cd14c976ee9507a84c60c50427965b166c83a5f67e9bde2b172c345331b4b9b3090bdf1b6dbf535d9bcd9ceda7688b1ac508db7ffe53d2977370ab5f515152143ef9cb83b122ad138de262cde6ad2fd81f2820b7ee47495340a2ff7a3ce62e9cf7d6ff22898289e4131d5c85ad53167c85919a3a9b70a5ee456cf50fdca626bdd77fd479c345f32511ed1d0bfa8f480c9c2ce50d753059eee4dccd5d1b90d06510c437c775910d8110c31224c9d7eceaa2a8874a50a33166b868588cfcd6e1e020a10718d09567e49233356b5ab3d1c089bbff1f8cfc24de0f4177e455d5325f5500e3ab1654d3cb50b296fad7e0bb1ded47a73278f00599aedb394aced6acb1e7f90b122a212d91cbc6fc26b5e18ed5f8f516af5ea7d59468669d7651c3bfcc38ff8f37c77f83d070b88d50182e11f68c6355e74fd80baf87ef866d9655c593e4bfe3037e718e44a00d193c0b4bfbfd13e57db7358e3893d8950fe2585425db0a018088d8c338345b1ef81fccc3c5c329fecdd8dab6d4f58d8239ee8bf09838e199a1bdb0a1ba95182945e6bf57498cb74ead17811922b597b9519748517be9a750aebcfab7e6cbb3ba04d8d4748a093b62689831148359168cc704d7a0377df7495bd4e22ce8594af64158293a09ce88879b7ea3bae7190a024ed252238216b310463a49ae4de1d7819bda8ce63e73abfdc1a07529011f8315021ec5608833fb3c07013cb5d01bf335b504ba9dd87be4264c7359f11fca2e921617f1812f4808d52801f5c2ac17a0c645ac7460d7c7b46f9cea28b9d5397288c2339f75f96aecf196a21c032df666c703de247d16f07516a56fe977ef047bf1872404f3e9b436e73fcc44935ae676c27ebf058e717938c6adcea712b1251245d52d58d0d5e2ae36a700f2bd095c040e98ce17dc74731e6d6b199a523e77a0788dd5e125c31fad6e0943e0dacc7e358bcd8c71026238cfb4555c1bf963d3f5836ed847031bb6ae3568f9ccb98e191302cddcd24024224ec54d11c471764733f5fbfd43026e63fac0737a42b81bf131d5972ed6cd9d2b8dbf805a8cbc16e4befba18d75225c03927441630174b0f9cf6063be7464e1c2d08ebcc78bd643d5578b8adcf4750c5dc4247c917ec3981b5381309033584e338e804a1c32effc90092ac9accab4524f9d71457e52e7c47bac1a4ab94784ee22c527cd231a3d604e35dd944fb3c53b810b40bfb792c8ec5a53e27a87e8a46bfdba4cd1417e152ccd77a1b34bd710767d56edb7b06041b0b95ad5d188b1717c90c932fa776786b0792f59400965e3c96147b6571f21f6ca37e27bb399046b6c02e0f8a717bf5ae1449c67d65cc0361dd3279ef855f5184fc1ebb824e1eb8a66f1b9a56de5f272f71c100e903fb1c2441f737f2281bf5ee59397e7a7f410438bae73dbd0754c86e24bea70814d4123a02d8beb8cd350b1fa0997c25895e589b4c00b390045d3f040391017242f5a32b994f14787af1dd4a45fe7d95885aa8c75f513c2d15e8b4a68dc9b56539d1560dece93fca010a0f4794bf66bbb3a38305f7766885717d7abb35c7ea3ebdd8b623c44a0722ef84a9bf316434dabeec7775c5ecf0ef61e04cfb46f105303dffcf6f090bb96b5ce9f80347f266a2ffaeddc11fe4970a5842582f55f2d2e9403e7a4255a765b638a7ebe23c25eff593465a50a09d84306030126ed876169a4b440518a4c80668df08c95d348b5c647cbe6e080af3d898e0902bc7ed18bb606e4fd917ba661b7815cbeb8c11a6d1fe0fa9d1a37e7fd3a8ef3297476f03b3160604383e086102a27b6cc750377e2b47a127a1b696828eef52bd3c4eaacf20e2df159f5436daabf0abbff44c44b743d29ea92c65379c980cf3d4fabc1a8d8f1ef5fd654cb4d2f19d8e853df96382766cdecf7bc4438589a8333c658467f916c385ee4c3ff175bd604b7809dd2a0bf9c8f45ed396a718e7fddb5cd4b93743feb1ea9a894b577f5f177baa03544e64277264410fabc47ed38abb89a37aa368da7eaa375e1a140ef7e30cc4294225d0d9a8adbd962e801f2e2285a49cf248b6bbb1c56d402c6918965706a963eef2195cd72639176840de963933bcd274b0a262af47b9b14d3ca907ea58d07a1f44823556d35a8c115a7cdb6b69b8ae6f959e28c2dfddfa2deb9d8f23ac5724fd6ee7fd21c70747c9bc49d804c07f604fcf60de307c351b39595a0c8a37c7025332ee1851be0aa45cb8a319517d5300d0996e1af913014142588324449753d5d390d3a7cf86a912dfe2e5d03daddd366f45138ceef4105002754a9c9832bc0875f2443fa39d9b2fc27bef2586e6ba9ea27e4c5f614fdfeb59c68e5de798fea682aa45c5ccff076c9d7379b89ed05714d06c2eb78bc247680ab4bcf4c29fe05709f3b3d22c13894f23de85ed78e87d2fe00c09f258e01aed1ecc9bf3cb575d9051d49a79d5247bc171b98c182d61c67c777ece36ecdb25c807f85ae9a50c8b7d002b4961193c2ba74376aae5e84496ae4673b3cdead6e26467d278595cf4bb86db0434e0d5d12a85718c8ebbfb616fe5dec19ed99e9e537b03ee56b50e39a2938637b114bec7989b0c4d7465cdfc088a7c0643d80f7bbfe70a48e5a19bfa4551e47881813c8ea1ddd7bf765b764be4ecaa1f41a12543ddf72957bebe20ffb803eb0bb3c2228d544eff2b5fac86e4c54f11fec1023dbe36b45aa2b5887f80a7f318b839062cc3bf381d58efa287637f32387d0475c84a14cf65fc631bd8b16c7f96e1fb4821187f4c10bdbde501d4000ad5c738d21f0d9f065be56930eab3851458410002817ab4bca7eac5a62ff765985cfffaeb2544f99f39ab98707dc1f63eea877b8d2acc5dd1eea3018f8b99369c1071281760520bb412c40a436b9c75007a58d605f73dc43b9ee68dc58c5243aa58ed8099b4667f061c88437c379dbf2d9d270e8c5f93e86b6a388af6d316d53d71935239bba2e44f2f6451b79f6ea2599b6c6186b8f2c512bad1b5689e78bb3bf52f8303201c31e718ad55f078cd3e5c105deff3a298fd26e2ab04f173661bc952870833d0f7be3e2d640639fb0bf47cba9054067e48774dc29c158e5746c1731e21e970406805d741a23817121aa2da24dbfad59c829cb8f9b77961d62b4205f8116ef3a9c606aa6aeff7d07861e466fce99f5ec6df43690f3462cc310d86e21fc8a33b8cd76dee02aa6a3b9620c6d701371aabab94be1969d3b3882a947a919b37a261b001e8786bedb7f23dca7a4271033bdad21984360c0e78981f59a2ad8823ca7a7822ff5842b314220ab321ecf6de7179f49270c667c8215652e339418204aca4208750cc5a2d88aded2c1866b66c45c7ad55e89ec8d282d09a51b091bae2ce6818ec7a8f6c373148746ba68935566c21396285be78e298f4c0bb0b12a56648063d8a5ef4230d37fc614f224cef2b5791b3307ec4cb8472d3c6d3da149083c24350c45b2d611d5aeff1dbdfe3221f665c2e1581bbdec1c44a19c9d2dd65dfb84e63a247961eb277137508118e8ed6fb8c8a61d789ffa0bc5025d5a537d0192cc2b6e262af10084299332c4c900847dec6dfe5e5364a3dd66ba16df48b76bf4a6af05325fb247475d09bd3c227e5e43d76f77ab14da0725a8f0795a35ee59715e9adc333343e88e229b2fe653dee71ed210def84f99d5b98d1fbd2b312a0abff49695fe6707028d66a4928a50514c256758f5f01287293b4c7f3203740526fb8081bc2358451cef99c0955cb3e5c9b1c3bd4207800e8d19df1ee6d29e9181dd4f9021b107f72ee07b2231809fac0f7c4d4a72bb8d53e00f5a75a8c7dbf13286fef394a43a85bd0bd699205b6ccec8d225b04dbbab515b8418b0487637fa8795ef82ad9c9aa0b658683ed8f3b56a91d45e8e7d5571f21a1d0484949c02658f5520289c6ab3c28fb1e07bd0955f2d4e214b8093cfd34de108f11f699fb4b9d149c7ab403798e3214c94fac9fde3653d0a40fb956a60778250cf60ac9b3b25c7b8382fded806f239d283415817ca5becb19bb94f26b0b273692a1b87d43aebc24184519d609667108e07f7ed04fd6261e596b143bec21db11c5f9b9eabdf7946fb593f3494de5700206b180af416effa7f7567d1a899e5eb7ca965a4cd0c870ff4772e2ffedba25114f0db0c1166366931912a6b0d4b73e1f4c4cf57ab2378fff8fb3ee3fe7db613ff6c6f545d32946cc0efee4679c8d2ea5a3dc2489e8ea488a19560cc8f4fc3b79d06d443328276eb4a763774194014fc94e103a6e29f87ae792fa1ec2936e3ef668ce77be9147cce71d274545d0e9191fc0ade0e642a22d23e05501265fd50b6d82896573dd895448595cbc033d7c428f00fc4593721431cd19cf4ae9c9b543b24717f1d5c05e14c7fceffe40a7af528f826d7fc4527ce58db0ff819c6c7b44b82293dfb17d31f0222d8dd115fa9be9ecb4517af19a75ecc50bb1bd4ac9c73ef9e3514d0366c8a37a9e5bb7af2811e6207d1153c8c981f96e24d03dce38c61f1f3c7a518e96dffbceeb1baacac30631c4f6c3df897e533f09369a2dba674f3bf3d88992bb55b59708a86dddc2d6c5b6ad7022a4c622e93189a9eef4ecefef6952ce8759297765c4e7f1339d77915a899e31c0ea8cc40cb138e6f84819b69d017ba8da824a621f4f5fa21d5fd5329e3079122b595d097231dc258f49c0cdd519aa6a0f7a5b837448339b2c72866f7de9154299804fd89c1033778eccf625b760c09f837f962dfe8580690f19caba7a09d867172d1d6fb8c747d66ef31dd1b955b8375b70d1bbc5b3ec5ccf6f7903527c510b806cded4aea31d7ccc844218fc0a1d46b8c254cddcee034d6c3c81ff62a366e377291b0108f6ffdcc1953a95525f68a74857f5c58ff598b5a262db4ff6cbbcc8c02bffddbcb104b77ab4de244122c1c49dbe46ecb7e6876423142fe280b5167b65feb2606ca5be411e97c26b714e24989992e005f308037446058747c7b4a701dbb4947f36a343ab587049091c43ece7477a78b5210140dd16d87d9e845e7473f939c665f2fef763241b44977f56879753a27262b1dfad9fa48436e29edbf290ee73e780bd7053ea627b9d35d66371d794e24ab60ec8c8b827befb8df8085f7229b64aa3a7d0c5e27a08b8828a126a631e8de7d3f4b95d4beb563e7a3a49cc34d9bddd3519b6d7263e2fb663ca45a9afda11d73adf339435a1e7949030a6ea188c6a0c8c71c2c7fa916c450f662b0ca23321ae2a3da49cd8cdc75c70cf95a3727aa45f97c0254c7997f43f9ee2726984c4a8d4e0ef6c90b60586af3247da754048e1f39abccd46ff346dc138545bc3bb64fb625db98aed7f30726c22872c3c56058cef87b2e2399bc64bef61b21f1ef56c3dc60747ae8e339c89da44de47bc1a28897b1da5a69da261fc92eec71b9a556036237af0ad65db185c557a77038bce46d0b86ffc101794641e930f102f9926ebcb9f9273913723c8f374d45a87235039e253507b2d6e3159fd8df9866cf5fa9e7cd87ed0bfb631230fd5cd37ea6d435f5f6f1163d9e27d18a1c4eda1711d0b078af4c6fab06a518224f0fb3e568153939abe49cff623ac3f1324a2af2f97f7b01cfd5a78ce8a20391cd960c6bd1a0c4bf4ee1bb5aaf567b660eff0645e9db03b3d1171ad667421c367e1984cec54596f90f66d0d9e3504d33ad7c25f0f1efef5a1f7f53ea63ebb7a609568b6c7224ad33cbb76e2526c7a95bd394cfa5b67ec30fd1945857f6acc55bf758a423b35c0410f635436f2028f328ad7f305290041c658026d7bf7797bbb06c41904f83cbd4e6531b3c1a95957a859dea72c7018d45c8632f93fbb1b2ad79161a473fefefcf946800a0d7460581d62cd236771802fca543c212ab937b5cf63a4207dbf9ccc14974f73a204d5b7481fceb2ff4667c1a1fb4752d2ac8355540c47527f468348362a22ace7244fa1d6b379b7170ebaf15a893bd9fc70e9af55a5b5573e5ccdea73b2404e1d245cac15a93e1cd21dfbfa446a41ecae7a1282c31f81a242879b0bf4274395f02dd6d406139af5bd3e9d7b7504b552e1d09efe31dfcb27e47d630001ece6ec06d3850e2df3ba4712298a3ead2255205c47c404dbc6e583093e1a5fc3ee48035602c9a1bc1d0efec14f7fb6d48bc07e26149698ce996123722ddb08957ee380a3a01dc75d4430bddc25808f9b72d41bca14e642e977d886843e5681882077a527d1f58dbf6a3a798e59e902bcd5f3667de599bbdfbd34dbac087e1785f769c778785246f0b7b402a66cd45778dfc6ac6fe2aaf39106445bf69f8a961de350b95d45fd9e93928886f12bd8559072173112bb42c96df46e1f20cfdcbbbc87008beb107c7531208ec6dd588bf002b7bd81fdc45d51976c55bb769d7c6e9c25fe973787d277a60fa4c27e4285f486132c73de560c006073e917d90dd4e1c077da8d6f41c3fa387d394b355fb5546a06b6ffe678cbed1d08dbdbd6a31e9d1d41761589c4a9fc4ada9566ba2b1abb7b4f2cc2c5fc5f5a8eb0d13a1157857842147b0f44d06e22fb56e8eb4039b3cc1e6010a5c8e304ec71ac6a55d2937dcf1340e1b2d1df5745e1124c5d907310483763339709df6aa297de520c140d72962de9bf9e3a1ae9750cd3500a3e3ddc7e27c834be035304554075997a25b7c14825f16c2bb4cc964654e3a6b8836d7adacf357c9ba04aeecdd7ed301b81d0b0034d4905a9b5f6332c5f08be7ecd229eaa5d675bf9b5df6e45e7d079db455cfd651180a5a04efcd65f8fb20e962a5f9cdae151d7c2e1a85ff5289663fac3d5ee64437c85fbef884db5486882adb90369118364841c48f47671c668215471f19f4499621db201d07959cdebceef6072e4aec7b0ee9b8e8584a56dd68b306958458364d57002c325e2590cc5e033ce43843faf345562fa1b114665efe79b166199be146bb51b0c7e2504836722fb17538fbb15f4f7708d91859d2655bd98fb041efd6d83da58bf8e8633c94d83d1563fdc29a9900c68b99717280eb01b3972c30f2745d3b50f4a60170d88d9c9d39b061cea044ad9dcc399a9ce430fb70f662c573c13a3407f89c91f0051f621c122328d55c495a14da7dadaf8b1e7d0c88786febca32f7f0d842d60a061e0c3547456fc592daa8c7ff48379ce779e358c860e108e401ca1bcfedf19c31c4c31261d635d6bf1d2a69b5b2eb7ba219d97cfe2ff8061de9b153b387912aca634e9b8fa04dc3fa276272cbaa556181f48c3bc8398061521e3d305cda6886ecbbcec8f89365e775296a7757321af46a053f7ac212c54ee00e588b32175970984005b19f91140bd98dd8fa05f62f2f10a9577681aefb2eff354cccaabfd4354a235eb741805192fb2fa7fbfe53dc6bb70278eb61461a4cee26906daf95ecf1b91985c80610feaa1b2bc71c9b1b3c5dcdca6f81835145dcfd514fbcbca70df31522f7e69f325665407eb18f8ff0950294c6bb9dab43bdd5fac0e9d8222a35355c30a72881c3ae18808c9b380916f318d69a576744d23550e71a5d3738f77a03da9707f8856693d0d30a65b94897eec0fc46530346d6bd43de6d5a960d522c5dbbf4daff9cc4434f982df76187c149e175412d89bb2c8ac2c67c12c841f225916c5ac2f9db840440de95f6cee15eabb3c3dc26dcc5b7dd3fe135e98ecc08437ba6654ed3ddf432b4c1974c13545c0d29a0c9d6931f99a94ab9279035bf964afd85a24a6f6ec5bb72140691aa10834d833b3c884790f47b2ecea1e4d2c910676a38a17e3e6b62626cd94135d003bfc345c1caa6d5a46aef55f8e5cea089e0ce2a6ac2d1d0d101f90359cff9fc5f4f462d20ca48df46790fd7e043aa10de5233133e4464339cb4095b381ce0086c7a7917144b5d250eb4132fb611bfc15878565e9ce5add0caf26978564e2b54ca35812711356f26fb0f1f87cca06dbdc8f0a59bfc2d6c217aa6c478ce1a5e0d3c1967782e5548ca75d193d58b85ee2a8656396e7dc1c1b2c465f02ae93fd1b386cd581bb6f9ee4c139aea7618e76d53169562c640d5b09c8f91229055fd5a65760bc6fccb77aaece98538796a719b98c76025f079f2466eafc04d47d607d582ddfec56695065333e4fafa581a1150a5f2885b6a39dfd52b8370b193d3135313d74733053646c25fdf9b954016ee1aa64a6af548aaaad3545a368f5df4f9ac41a89bfc1c0e06e7aae4bfac414fa6660d469897cf0a3540782f80d95229513ab890fbb3f5deaf6a83d6c6cf4ca2bab3d0e2eccd5e12874c5406e163a409f6d228a670e3a8ac2a4ae622f646def8742c58388a595e0c17909d01867ef8d9664bc43a1af7762c5b64251a1305633e097d2dad8b3a65a7c458863865e1b788365da5de22216cb0da33b971fe37f7dd9f877aac0f66c8ed5ad34a0c245e3b30efde26bfecf533da196e69ea2ce6b6a87236f007ff0543282c24e9fb23aa2a294c00b2439b71eff88dbf5c8666194694c2eec76aba98b3630151083b7262b0dff7ce42186f723da3007f55195fccafeb258939e20d62a623ef2d2849062d58b54feb6e1e2dff2af4699ec0cd10c3a65a78721db2b3324a0cc48cf65636854476d4e9eceed31d59402afd197adc16d098824bf74986e95eb4726e4916f11b78166976678962d9c54ba5b5cf0291cd0f93b9459ce1394f87e2ee80acd8626152b5ca9748f77b04633ac6014aaa4db0665e6aa483ac94b62a7b11ea9ea9a4e4d611012f02d6f0c73119d188275720ccf4c7e3a009c83fe797825b63af5d902b5b730aa18b48f6de2c290f9e07443746dc2001d125f5a56c2a6bdcac4c6c135f06f3a1fcd98baaa7743db9e42b830b08e419f74802d6987b88a3b7b2fa76f09368e2922ede5517c863ab5189bbda869c5973f5cff2b7a9aa1bbc003175b1772a5959080669ffd4bd077a03d258b64838d59ca63c3d607c565665873e2efc901f9381b3a6baadb83021fe2e2afd216983e63a922e74cfed993f447e3e83d1c026651d681a64b5a17fdbf490c13d15eedff9a1efd3c04f4a785759622782c67576f5aff21d2c4eeb8c11ead6a8f87baa0d9287241ac73fd7c1e1ca6db3593856b84003a9dfcbd87f5aef85f1ef4a41b352eeea4b6f924e14b04707f4ede74625795da93db98db1a16001fa937a8db201bd0e56447daf406ca6ff8cff8b1c280224c6ed33927e4793fccabcd34bd74cc605427c639c960e604f30490a84dbeaf5b219174d2a05f363c340756fc42a9774b5dfe71d5d4c0a87a191fd55d21d91560054d7a3ff0ffe00fdc2ecc97859b941229a92d5a68a4f67d454203a6f73c1a6efe72790b4e338ca1d7c8ecb4598c5965d48c9ae1749da1cf55bcff8c5bc8ca5f05f911fb81b08923ef07066f18bf70d5fd331241aa4f66d11dc76a67424a7826e2f8b21ef62d4c3417af1894dc84a5df8f375c293ac5968748abfe43e6bd8600cfae6830b328ada630831a7fc1b49af885841ad1f2997aa0ed79e01e9a7ead3afe9f20aa4f0bb32c77984fbee790589a2bfac7e29d8c459fd6cccf94730f2e2f3d103f812a513a1c468c40fbab87215f63fb6a9343beadf011f06e63c643ff15fa1efc91cdcd9bac97c320cce3e17d9595ec87da416f21b87817c7f2f6aacc0794c0b7c07b185aab19668c208d6a3a60316a2a854c4d0f8678b507f7f0725032dd1843baf4fee81f6b438997651b83e40e523d0886c3247c8fc4af3a14f5b0347cf8fd552df67a965751adb385e6e7385e6fd48615110c33d2ecb348a14a342246726c6a77d0dc439f61a26d266ddef1f73a3c18c38e8887777dc7747a644a2d2c119c8f3dadcdaa8944b70b0fcbb45256c5f47ad9e2372ec4da81c931fd2a2a36ec374a18fa2c12370bf316caf02e9279c4492c82c95b6e0e6a2c95e2265d663f4c94e20f4a78b850214722dfcca594ef5c5cee062c7a8550a16edf99d5414e9edb95b6f5bb7ee84e084c4b57d04a059ffa85350f52cc79c8d7d7ea5dbbda510c1eefe5a8590e06a921200add8f6615f57423591878ccfa51faa757425b7249b5fafb4a71ea3025b000b6e23083f00eaa3383cf9defe0fb393121be3342e1739da8cac067880d4edfcc069624fb3a35f35d7201cdc9fc66de7b96609e20fa32ef5048da3926d15191c703e2fb8d06b5b40528f0c76654414294008b961c483eb8225cd520047c92b3b6470d648a25fca423fd341e83acc7c268d3db3ee29d45199ce45db396afaf9ce2629b9dab6cdbf6d4eeec9310ac154970b1bf03ea77543cee7dfef92077d0e7a8c24768534117eac69fedb70885d701ab988f72d43f24f62a085a36c77f8043fb11805f19c5ad4be39bafc498b83c56344169078cc83d439c7fe6eab8fa9764c993cfee6b3cd724ffc13160b85dc5b2bc70152ac1f648b6eb64e1ea4d2030bc2302ac2db08c486398a01d746e06e03b052039739f343dde42149a80533c0199a07a5a7b0eca4ccecbb8ad9d57b58d3ceccda9dcdba80c50bae0782986217ac9021245c01d269cdb66c439578ab36babdc9a9fb03fd602dc263a5fc4c81c5bfdf6f6104babcfbd790530590589251472163ef330d8995fc854a65939be931f5183a2ecb03e071500f87c74ad1c4a79ec306b95fd4f7a6ec296fcbcd4ac263f358099683ccad26fe5d2ec17c43cb3c74a3cbc13a1c18f0c07462c6f923331f8c286b0177273eac2fd69d14cae111cc50321d474410b401217b8d955a2ac78a59a4c6efa29c1f88161c44c8f5d839ee981ba9d1b73d67901f98c6deb8a902c43ed1805100b163d956dd824905d55c004f4a11fdd0736bc5f505826d10ef3019c1a66033fb43e81e32bde7323c5979b7a6b9adb46a27ac807c04ad121f368f2d216ee1e0134789f5765fd034db2810f759d868a6d55b92d2c2a690218e7732e666be295782211a12443db97d27d3fb7e04b3c550b79aa165fcd0f1ce12042b0351861543e0e51f9437ec4e6f8629ea40dbf4f9fde619ae8328fa2ac4f1851c36599f9997a107cc2bcc0e75bd8ba3d1286063cf21b5072c94829c536305beec1695eb9486e933d26398d4ad8c1eab5e8644a591fa7e789321e65aa993fd538045ff0acaf8878879ed32772a7d12296396a4eeefacc5c782b09c2070149e013bc8f073a1dae14ee03fef73dfacc0ca315071bb7b6f9c7eb4114ee7e1ef0a4444ff68d594c084c30cae8e0e2e779c97b5a1300f681bef044625b4c2c0102bfd5792ceebe5479dfd11493c461683751d13ca6e2e5ab4eb670c7179a47b618e10ffdb5e2945c2b6ddd8bdd6f359fd4d985a53e5aefe283bfcd39411f00d3de44243bac3c3079607eb7a55068ac0ba0d5e3572e8ceec2b93aee706093a37445c65dc0c33457d1aca1035b47a45aea9653f96db18497de220ad51f27fd87e34f49704eed7d81db437ec014ae9f61cc57693101b2e62fc29a661eff2df1b513914f6dd93d75a5083c004b24aaecb08bfe07c28ed27dbe560df9fd6215fe7449d0cbbd9a855f372f9bffc83eec0a43d59bd83cfdf60d49ea4e6a19514b3c70e50d3da80dd7b97acfefcf4e2c8baaa0fb9743e461784a9e02f7eda65a26aec3c13977296ffeac72310bef2ce60350f6d1108480a8047b1d052162e81c46b9f5177748ce0785987b2587548225941e5c69975999da4ec6cb0be3ec80b00bcc8a2b4d55f908980f46957d17825dfc1cda9e3f28e4d4081d1dfa2029c76657f191a759a5813149dddefee4737e3c951a5291252c1b5907ffa1a20cb615230b4b52146e623c3ad8ecd614dd2ca9607beb5f501a4c1bd30d21e7911b8d618448ef5b94f313d995501b81945a29407931b8535c2c4992e647775852f610178d3f654b6d45446a4407107d534cbbacc44643b7ea01237fd2515aaf420f6e71c16c15e1f005ad70dca7f97b9076774b7c9b0faf186aae082295f323c78e00458d11edc85216e5f331f9f5486cf4f78e0230fd923e987d033eb8fd042bdd2daaf03871f3fc8c333c931909e27fbd390d63e738a6dc13f61fb255e5a89878fb6cb25b2a58987a0085d7155af912c7c4bc968c74ea4c35b14409fea72e19580fa3881f3b3fb386962badf90ba21c2a0c05748f9fd6235104198f0f9a14006437805143ee41d21e361ef7f09d81c7fd5e2b8038863fd8e2c73df15fac8ddf51e0d993650e98ca298b4d034edd17b4aa6b04ea70462844c69df5f9e5f7a762ac94d0b908061de79612c1e82563dd2f36ad6da522a67905198e65b5bf418bf4f3ab13b728a8c3341a5d40264d9eb61b10afedbbfb8f41724d7417e994077f0fca2ed684128acf6df08b48669bcfd29c9eadb6b810e5c64d79a8a037866f4013a56299de578263b883b8b8dea24eb8317552b72e6b13bd5ecc47f6bfca5a94b3ae0cb6e53f25b8e2b8e3dd23267fd948767ed977621a4f7024e324b7e0e2edf9a5b2e2dc24342c872a12cf6eab78821c2fe6165c2d9a6b8fb27f4ded164ea6e66e53c3f91919410ae0e72d2dcf8fe280058703b5f941d834dc415c7b4d4db3fff7c08f3671c87610fed629ac215319b73e5caa7ec562b708419db2f42954b3b0c7f8d2b20ba84d35a8c5d2aadcffbd75100c4b2758f22483a8bf9db25393170ce1c996a45b55007e8b3cb9c0b45f1b7aefd99fccc73495b59966d7d15c007d892504cab74c039129ca301ecce2e4371c60779a5edf5d24aa830df52f5d17422d488239a90cf81ca21974780cddc9745afcb151f51ebeeb8413d87a80fe76d5dc4d4f728a15bf7765ffbe562e5c85d6c17b296817ca32a8d1af2d3c8f77012fb9b02ce4e92a46721f982d56235bebb12684dc5829149de1505e692c054db1303817ca71ab730c2ce864000d1f1c9b9800f394c8fb71debf35a259c9507e45b6f891f2954420362ea42e57f7f2db0dd8f439aa59d3f358e4be06ccc3f554f767763ef986ca5a06243daf6b294d1004dce2380e9a2412a50207d01016337b31395332c781db42e219b365274d54b123b238822cb864b1196f67c168e7f1bd3d8ec571e69b7211eba9091a174fedcffd341aa85404232cf95ad76b8ef3bf8005458b8590d0f01b2ce00cace53a984871bc61b6fa5d33b90efb28dc257a2d82091e8572ec2ff96a3e9764df219ba5fa83475646bc68a20662a57704931be69a0858b46e5f424b5c46e899a4cbe6528d5ff1e18df2bc05b6fae2db8335875bb5aa3b9ede8825a4311244b22fd73f9fdb80f488aecfc967950319c323ce8b9e9c45c27f7fd6e05c045b5b2e97d0b4af498724db51bdcceea70c799783e8ca4e69a506541d59fda332ecd9c973548666fb855ee15552fe6dcc36ef26055662bb0e11e15dcaaf7613183cd963e2e16aebbdcca4eb5150c3d030a8e6555ed20a4b02405e843524e81d6c9c80e0cc591bb40e33bfa174ab5cfd8c3e352dacc9014d190ec32bf4d48bda54d4d6ea0a51bc3f3eaa5af49100297d4a74c365c7fe2a0b1389e1e89676b9bd12b2de1d3b4876d6f92d6b4b42ab343c93e45a2234137bf39fd4a73f0993b41d67d67725bfe2bfb85688d26e6d7ad29a74d487981a3709ad82198343b56a93c618c6e8730121e80437ebb64151106bc132f6b8054a86237b76b8d78356ba5b0f4ca48353e72eb6483bd135c8a53eb7447b02886eee21f5d4038c56cdb66b61a4617bf7a6f7a9346ecd3df04d40395d10db2395547c74635b83e600e104a30e953078e0785dd6e62b4de577b48388ad94616d870c52fb0fdd2562ab63fc58c274291d58cc2c3bc9e6a59ccaadc7ec734bcff73e8acc2dd8b5bab4c0ffc20b58af369705053810de0c425fe6cd0de765bacf63553a0c083f13ff817bc73a990f3f2a83a8ddbd5dfbca6f74f6a42e878d98dfd21d82bf580ea67fee7ac0eccb6b752c417caf488bd523caba2274a9329579dabe4b02963795547fa0a5853ea807a1336eae302e768317263a7906957db4b16595a77f7aa8641618a21092274efad31c3f9cce966244fec680be7b1964ca840e19f74ab624a533af762439dcfd90ac6d5a4be58c7b0f0cf25b698a943b687917e56a486f1c5b3b356ec4f7f0d9aa6915a2e5ca23ce6a09952be3b61a94735e21324fcac6b43ff20e75a0a93838db172f97f0c6d603407be47d075e65680adf5d0896127fa5d49d4eb8c57a77505cd922da159552591d34797941b4f6a188b71c4867a28ca44284505003ee1ab6860a5194f80deccf73ba4291760666af68d8de056dd66a605be1a9872e60c492545106c73c415b82ef8cc30e267a23379f93c9e9e7fe2ef5a5dfd86bd8f5b5dd967811e1c25eacb68422b2589fe80cd5470502a4b02752b45b8d20ca80d635bc860459c50775b1c8350a1d07983316206bf710d6bfb5d21c1c4bea29a1ffd5d3494119e91bc21a85bb98bc5f1004b9e218e45a6fd7444c18aedc4edc5fdd0f93c84b12d9636e6df8016356a703b2eeadab6e77d93086ccc1f032aa073129333e10f75793d9b11d519460093255dc4ed8f6f3eb1deee3a01ddbc0a16f17674ee6adec351f316526cc1fa10c4d59f20569ca16739e497903fa2d5d83c31572e4a2b5e82926ae370a306938de4c3d127f5db94fa982eeac5da713b0215732ea196ceb5b4b8c7a27749c0e1d47b92b116087f8f7a7c1a8afb90b3c5c8dd3e3f7599118f237764293c9bc1ea39b0dd751da01b7fecb2b24017debf16928cae94cf6e5de8054a39c96499af217b1b8fe83e952461b5aa1f1cb7711427aa3dbe2bfaeb2a79c53f96f8e7e5c3892806cac43f9c77e56116b44243d692c75f89a86e73253a3235a7482f88eed085614dc0a80c2611fb0830af98cffd5e3938618975d152a7c3e3f6da4c137f9e0eeb035bbe0ed22513cb55af5651389c53ee0e2353ecf58b8d91093c5fc6dbdbb1dd7f60593e4bbadb18b3b50315ad5b97c30b2eaf6a9f6a7aa2995266084a164617dc507882b4977fff6a59c2e28525989269a7bcfba6efaba45b175003fbd44c615a52d4e2bd2b5c582fce2cf1e4c986d717ee47dcbdff40336cce6f759d6252d4062b0383c52dbda33ff3a7e4fc4d02bd84e73192c16e2b0093b379d6b3d52424be21b6f13539f197a2ddbad6147818efe736b25a010114d19fef5afddc79edac36630bb90d6c174830be92ae287ba0570d8522f05d538e225d9f4362655b1fada4a760600fd304fc593d523fea589c02a3123672eec88225214f911d0dc2446ce5c1b2f3d1dce32b76cd814603721cba5372cea6189b0a30302b59622db77e403bfe665e80b4e848ee3c115339598e066aa91d0d6933a722051e2cfff0e8116138cec502bde7c393ee91d2f42f7e10a397cbf0bfe07890e6544c59b758c8f639a95cf136d25395a817bf1e80c6f3a3ef1882bac15a9ad6f6e58d623b38424680866e25b3643d85501567eda8c718bc0e89fdb3c8d3ad71039f3fc8e45d3391dff54070adbf21e86d58e0e9b72d6759c9008b4c7601fa32908b7ed380ea03ab3ae3a749da946ebb7e82b43e8b312c1e616a8c721e34172b51028c977b0de620610e7a8eab2f73a47cd90a2e7e76a4a97831e34b3b3b1366d296e8274cc09726ad57904689c455b77485704144fe63d70e8f6a96d8063899f5c63b52d147bd73229a4256417ee12986c865320498e58b148436dff332c09a51df4852d000d41be1981507a2b80c865147cffce4486f7bc689b90d05a4d68f50a9526de1d5a44cb6d4f15251d4d8cd4b3068022cacb0fced8e9091d2b49fcec7346c54b6ca6b4c6282c6bbaf1d66e6bba1be362dc4f5252178968df682a6bfd65191cbdf5cd8c9957531d8634b91e357ec71592994215e97d9c6c412f3872e92c3771b95be12ff39227330ccd9d9c87912c3b123162ed55e77eefba2bc0b8b02f941403ccd2445fcf0008d6f6e2bff7a21f542475b2a2ec4f7375f627379d2e2dbeadca86969ee38d0a03e06cbc9f6605b5f6ef56dcb831560a53e1717000371257756db78faef19f8739aa0c76962c80b7b53778e86b07d82fcf46d36bdf736acbc1fcb4abb130c64fed345ba9a48b02ab789b22a03573ad8dd4059476b4304ea307c4567182872caaa062f64e2ea5bcab7b6b220baaa532368916f2d915b012f90abc301e84b473b358ef396b36f2033900d7f0327705004358a74985f7b2564616c5b14eb397dde468a514b5f2b7eaf83888a130dda9a0b1660363b255dd0900aa77f725db1e30b81720fc8aaa52d22c641f75b12a91e3c3e6161ec0612573869a40df9d7c25ebca947d29b1f2e460749199c12f64376fe9aa5d4608aee36127bd6bf5e89e6734a44c3b24c043d574f6333a8aca76e84d41e443841440b9348af1ca5e6d720786c4aa91a91c85df7370bf2028d49d1b479a5313484196bd622f7c1af7ac5350363454d4c0e8d90cd7b90845df441d185607baafed3d17ae18a53a4638a423b648900d2c78db9ff4152629aa6fcb0cf9f369190015b57bd7546611303bddb6836a3bde379f201e7a447dabef5faea4c27a8dbbc65e15f9ff135b84f1a9fca0553cf29191f9a4646d191be0e1f7541cdf2d74d5685970c21d2f58a344837a3dec18fad55618fba94f8144faada37e8f24ef46b1c28a5ced0e0cbb9d6ba7d5fa6c5db0edcacc6d807d16b19aa0985f2ba0132fa89dbe563d6b1d8d44fc8cb2ad85e5852ba05e27cb936189416aeb16d8a8d09321e4ea81d06b567e8f9bfa520a494bb6e1478620536ecfe920c8f1c8dd5bb408c09d58066a25732fbfe036a4c60300c6e45642db3b028be700dcf724a1b57ab323532400e4d24507a484487800e9e1b9b8154f2afd695136263a2cf50bd10d0ae871aa5a535304bb92d3a1f51e033c0295d7c4d82c4e4294ad9b0f57516b18be0b267c32896742db6cb9679f6740030f56d36e3e8c437fe51388f9a640e86f77cc43d3a1d00a346a8320141b74f60e9e855367a05c8b9eb149840b8d4d4962db4eb6ab1b73b7689f4b2c3c47ed4364676035fb4d03db156762c06b88ff65ff4f5ead6d833d0f7281135419856e8037f29fe0bfeffc5f7667c0710cd4c92c5028c254af40100020605e70a7f9abab10ef5fb5acce5fb4abd2dd5b8ee45e9905483c4bfab9ccd44d5aed8bb9ac22f1a889fc273da112faae48829425fb172ebd03f1fc787c25854f2042ab6c5bf1e73c07055340607e42e1f7ef96062fcf131022b5c83b601bca5f152fcd95dc775e23c45a4b19ac9c3c0e28a3eb834e1dfe4aa88fac874e3b9547c98b065fd0f50b4e7acbdc1c7529ef1fe8a002a967bea49aa916c5d31ccd566ea0972a8fa518ffe6f923c99e728dc97ca4769a21b333dff08018ab2c3f38b2502e38516810ff8a0bf09cdd282651188475f15ffbfea3b672316ec4f76e26e13703c05f9a53c4cf2431204ee3dff53ad904dd8d44c9d5d02279d95591cd3e58246d11e282fb6649d7eedf6aef580eb77e1feeb85d73a344e3bf46c8d927d3bd522f5249d26657827649d624f2d60d3645ba4f8a3d950cd68e1845655def4cf3383592b90f45ad0992c3000aa2b5b70458ac960e94335fcc62f82d889ccde9ca59db61863cda09a157f50c655cb3cf075af3f6995e631c9615ab32332b3f4601242602accb244ac7aad3a79a6ed86abff57f6a206623b97f568e7ca55f84ac6761fdbec16f5a0a434a1592c994c5f86300f1b9961b9a50fb89809847bd3fc3640ec933172c03e46cbff7ebf451854baeb481ece6c2dc3405277d6598f0cca01b34f66af7ebe3d472c8c4295e05f812cd94cc999b9f48ec91dde292c020726840348363aeb10b3ce137ae50cd1845f9ee4c76c9c720e640792c1796e897e590071c448838274f77b58bcb2bd67bf97f755bafd70e75c4dabc75d0a9597f70f0c60f5bbc9679883ac5b476ee073af18e6be2b1555a609ad15bf6ab2c046e8b334d0f006dea349bb66c7d8b70423e39d5c41a7844ba62f468ae277af049c252f0d04fe0082b43844595b6b41bb8f06efc23c7412b685f3d7bb879342145badd4c2e26347ed88e9a50f750dbc74fb2d4f6bb8f6ec2bb87e2e7cb6c615740dbd579ba12e87b7e23d8794ef0a33339358696f69684bc5c61c0edd574457a5235f5c28253235217c585ac413bdac5d95eacde70584dca3fe07fe95118496332ca3ab1ae436a6443a7532072a4d586cc7855f9f6c024d6f3321a86aa42c75f83fe68b7ac5a075f3ec1570fe94b8db21b6a3a57010e4994a490c50b16fe0a0acc67bb95f0423f250c6a6137b967264be4675d41d4a65f0dd454819cad9b7b243794b1cd1626cabb69183ef15c993422b69db244b05b3f56684f67aeb404ae9e39631afd8a5955a3a600a32172e2abd993468ec27c6112e9f1e9adc887f063c8d8b2922135014e6a264e8802bffc4f1879c634964b08d76fbaac7c8593ea2782e0aafeb9bf47df9f9f572c900815d01749bb53b52142d3918692c23d1896b5ec0a48906ae26b440d181fb6c651ebbae314952af67d250662631ff36d21cc1ba2ce6f3f352c4b93df3b64c03562df234a91c1602d9083c5b7056dac674108b14348509af6560246526b70686dbcf4f83cd8d15b7470af7fa1a2985280e158e0e4172758fcd74e37cf73f6e05dfe2ee60627b7c1e04447934a6ed1eb014aa9c469407f7c97465f9601efa2aabb9336e4ad61a87ee324799ad61ace54db7315470347be0de7f818c28736d9180e5c3cc11821d0a477253099123919a321283c0835c61185f80c0622396856059223a4bea15a630ada38b0f9d9cfe77332f4ddc519d5542bee24551a2c4d20891052203039eddd4bcbef1c8f33186b1555a3dbd24931f5e32f542c8eb1ed29dfa59adc4b004070d914965a0debe057f90ef292bf68cea267e6575e8ae3f08d9a7da5301778225d2b689c12c962fc91242c55262287b4e2c0eba573a0672ddccb672c5edfa318df767f76a58e1b571098b7d45bbced0355ff8219221c8b2c4b8dc0228703cc24f0e0d911e840482476e1976fe02740c4a6eb2ad72946a559b98b64c5d8c8b61e9255a98a3d4c1d91fe73a8fbb4011f5b78cbcfa529e4df532b6617cb3ef5ddde894a0cc676045fe827dfe424ebb7a080e46a9dad73027ac3ae8e23f05839996dfe3c82c90eca16c5d1f654afad9736989aa9267c7109cc33eefc116d8a0fc3e58389ec1670c5ed896364d39c265e21bccecf0f3842d5ef594f8b01b9a69e10a14429cc6e3ce8c7c5e155380cc38586acba8864993f30c3906cab9ea390878c99b51aad98c798f987482535e22b9ef6f7c4a50a6825ebd28f49aa3d855d6a8fc829590f6dd3808763f5d1ab1e4da0586348569f4e35b2298c8ec933d600d133c9daab42abb9a3b5498a312786e6a1c98927b2b75c058c67c9b717073d75f4552547089b845304888aff844b2fb23c014795f267aa5f4f9fce1e14502c9c9214d62793943a85309722664306e5bbc768ad12775c0216986c508677c6fabcb3054c8cf0b7f7c0ef7bed90cabde140eb8e5abb2e9e5e1df8ebe2f2d4d1ec12f59487b2477c0bbde9a545d79b71a46bef1b82f130462d6414a0b4262596e264b76065a19e19ae6eb53541f03ccf372867761c005812d117572e9c5aa3b25c15ef35d588ce8576080f9da933c38619162ff559c1dd0e9563785c6aa3e8c067d9f281dd1d343d361f5ef6258be763cdc4139c6fd271d85b025de04fb7b3d5500d0833a269f9377dc03f4d23ec29426881852565987a70317288bff294591f427dde12ceebd5a506d892c080cb39f5cee4e4f0b0b22a202c6f88e9b34cf287d69201076272fdf3ac1099a2d193e6db6bd34302da1af9e568711df6b27064fbb1f34edf043a581e75f5ba3f8e7d30b0fe37b11a31598970b832d079f76141ef9e65e54df87553ea7f8cb67cfdda315fee6279f3c1d21e0a961427610fd24a71b92609d3773b8e15660de5d48bacca6746066186ff06f746e6228d9a8138b6e7a120325d1ddbaa1a6e0a6ea71d1abbff368b1c78b5f5194ea5604ec0374840bb5acdd2b5d1edd57a8b837a0b49b8bcc8aa3ccc2e65d35ec4884f4aca1f6d1bc10e4f4a6c351a7b18b99640615f2b1d25e1fc83f53aa49908c84096da86a6a633895958b428aad4c7e95d2cd235f965d8ef394098e195846d5c6730a4947238aab4fd20a014926b0d9a646fd88f47f85230539e7f1660a5194950553b3c66a6cdc09239a0fc587ed80823630b3bfbde7defa29151b10deb0b78340aaa2aed589c2425a055753e4a657ee8f73978589fb3e57d0bb1b67076163b19ab69edbcbc9b9460c9581fbcdb841aecf14b27b61a4fe894de590f4370dbd028b8f6c92c690e1c1673fbdfda97f7f967e40c70c87ac4ac7dc1e990fa5c5276698e41b9e6d028cbb0b304b9995a3ebc7085102f405e60c351e836f2b3df841e00cd38facc5ccb1b671bd8acbcc43668b3e48c287357d57412f936d2c49fae351095bbb6efb991bc1c02515016b5819cedba05e54388099325b450f0555db54651558b2a1f68b8c34e1746104e88af4793d8889d65781a6d0eee4d92154bd4d22db8023a131f8d533616847cdf852205efc0efe1234a667eed2d922e2914a54320a2ad3aa5d56922863e185f8189453664648da5e14c393932862eaf003bc83766280a5e56027c047f58c55e38decff8937c20c00a061099415986c8099e16bc31ec8888d01bb016ecd21ad6b034b8142b5e9f6aa86a31995cf074faf7ef40ee48c596b41dfea1562e6f32bce554e3f28e09185892a2e31b0fa4d1cc135ca0280961c2348c3dab9231f3bbb93369acad2d7f214058a426de57df5e5c38794bdd6103b07643572f1e0e1a76a939b07be47fd61351644fa97a93b64b8e0932f577677829508312bc0b64a7d2a1cf8f5d063b709c036d901756a5d6353828a7244748fcdcdf5c0f836ef544c0e26ce5972f9d011d7379c3578bd004d44a3975ae5c0588e771fd50acc1a126f22a34d0e8f211a47e0e4631a5b84d73132765accf893a821c4f468b674dd45c93e8e1bb41235b6f6d47ebc31e79076cfb32fa2b4b726dabf0fc5d3490aa6656925b58190d8a5a4b4d91d0f07a4b547ba4e9bc9dbbcc447422595521593a54ec5ca63cb82f1efcedb8eaae7bd328ba28fd63f6b137a0309df26f3890c213d60ad52397fb3da4531a8561287cceddbd793a1aec7f2bd06e57acf035a42eb71e8d60a8be34e6e1ac53dc3dfc7a0f160b29907855e836c8153e761634bd94312cd0b5aa5cd7146642222ae369fb23e49766d2532c02dd7233a440f72845dba1f712690bd7e32c61783d8f4d726025ec406f9b08fb1e8f4e0f7b5e26c70e93fea1e08c681f9b28cc4e0630199bd8bec9d4c0965fad9a807b4390403b7de9543c312693fbf0fd0ecae18ca9bb4edd3ffb3fcc1342621bfaab0ad4cc043056ea051aa86146d1bdad5b5d5c53ace68d4536b7454d2c7b1e730268d0d4e8d4e8db551c805b65c302caea200a6f91d596c8f9c4263f9c6dd118a17161ad29705ada7c793b344525b2ce6fb9bd2152baa6f31e2ce50ce3a7d38963365dfc41f8c743765f1ad3b09ed279680fcfb34b2a4cf6b487978b4960840c523a6a852b2d0dc219621ef60106fb7827f4514a86c762603b6ad5a52b5846ae90467ca0a61251af8bdbb34a52de941d033c802b8efdf0ea987ef0ca9061448f2a534a6935c9b4ec51ba5676b185f9daaaed47f864610661feb6814feb7eaee1060846777167417e975575360f8cc6252e6de403528bfdcd99798ea2e46288f39239f166027314636a6ff37b439e588669c383b3c36a95ff33f45c7867d01ab44c57044eac93db874d25f3df095d6467c4ced1c1ac3364b8c179c1d039cf783ff04c2bc24e495c4d757d9594da1831bd8ef541c60865a223362a5380073524559e29296b72f4466f37a6d2f9a318aa40a75fda7a91b12803690a603520ed45143f6458e3f638c2feeae864faca5172653796907928c72bfbb1138c3c11e734dfc84631cfcc27e678cd1a96162a229eeea5d5ba539f9473b2cd4065dc41de3c453f67a8355092347e70738c8a5bfdb26366956a6d1cff29c0cfbcbee2b50d7bd4f1055aa09d66cab277f2da8466f35642e5abc8a01715807a84eb093985600500c22c21e353d489fd1ee6551f8e845c1ddbd17c9d117dcadb48f4c6000a10e0e0dd3d3d376a855392adc59e04d37caf9946ccb5a397cfee55970fedd72a905cb0055a8e9207d18520a8c2e1d9cc6b6752aef0030d8a4e223963b2c80820577201d666e698b9f33cb76d574bc6103ef3b797288b6f7d6406de567c5f0ff1b4d05f9d66af6881b2abfbd0508f7ee6a3f0118aa302cfa911a3e4e2ebce8e94a8b6929672c8581f175ceae58a8b7beea8e5d47274e0e9d4b15db65ccd9ff5efa8a677600a7a73b56b19f6119a35cec2a9349ff85b5b2b5e274d763256602bfa5134a0f463df559ed93d7b1442c379ffa40a5c9233e9b319bf6499cf959efeeb7cec557f4efa6ee5af403b11d8927e31a366ecc58dce48ab09a3a20ee2df75edc9bd4b03337f1936062a0a1d508ba4be789f48431df5c03cb6cc875aa180ab175f10bea7082c5b32f0c7613dd958da79cf68958634c53bcd4f9c72b7cd754ac5d313eebb5b7a7623290aeba4b1d5db2a154fc3ef77fbbc135f68b41ad513c842c37ac52c5d81df005c95505bc42796883c83adb3682702e66a57e15cba25fe82b4701d167397e76e88568b6151f7b7cd103c1b3fe4911f0e94dcfc9c2ced86ded6049c865800f5c943da53c4b9aee0bf505a671513c82db2e83fbebd0fb3735dce0f86290ec4ac43afb6ba49feb148c2e173525168cf12a2e54abd9a7bdd5688c12ecaa126d6725ae46c21428576a44e111d402c6b0987a9134509c828839da6016a8843005832d350fa068d524da695fddb7bbfa72e68f902f7a9ab91eb6a4e10278fe16fceceb62b44625dc43b93056657ec9c5288d863407eabe26585ef37a6b6ef2a7088f4b65095d19a035794ef10dc6e6d29ebaa8dcecf6bc3d1cd7d3abc8cac7c4647c0af0ab5b0040f493914f5f6858a99588ad2e797ba96f4f2e46415912316620a100e02676ff77c95316313da915e77a4a9deed9b85b8397b9e1f134fa076025175a00ce345ee021a058f7ff0ce0055c950bbbba78f1c93c97c6c6a2dab7d075f73d9c6b5cef174d5af4c08d738c9a42197c4b9d7d0c2e216778b99650d330d1481fa4a02458ad9be6e655d8c1053193d52362a626290fd2d6a906302bef90558592ac28623a7f97216e40e26c8f68877e060eb54db6dbbe2c3fe420757cf607391c8f6f1052be519b5610407436d8714b6ea50e7f1eb684a5054a211864121ce38dffca46e66fcca038db85ed342b1d7b1a5b21029e0be01244851489e99069a188ad31659078f02a650a3ee3e7b174231811f9b0bee6065c20af1ca41c30dd5ed207f4e54e28e096d6a08991cb7b56bce44693aff18e8035a01ea9ea1285283be79af9a9ec3ebfabfd50f04f59320e39bf07930c0f10dc6df71023a418914d2f0fedd590cacddf85116af9a7379c9a3207364fed93bd7a343be09454e371d9d5d4d7e1808227ba75eef406d4fc7e2386508ea60c4513304b2a00540f219615726176ec16418d8276271b988f9327d33fb60e00851b75918f0fb7ba830822ddf204955bfc20e38f216a517c25ae3f83e8fd9e5a4f7318713b48e31d265044be64bea23aa7a77b70b8155b589acb1a3bbeb130c9b1d593e189c264eafbc053b68c058f77a2496f9331132261c54446d7ef63ed65cd6d99bd68adbdf57b7ec3b6d208e786ece6eb6180230cf9538f9ba6a7c1b535c4f52b1841231f95a13b0718759286612814055419415483128dee5fae748b206820e91a415745a7555005953d2f85a5ee756154b7a2cc9f452fe16d3eab1ddb49770d4a960acefa6bb3167619f54bce25faff2d323be2e1616b5183f0943038c0354fcb02735ca3f6e8c1ae4e461e607b18a0edeac94621661e0cc7cc0d0a2d120acab568b48ba312aa36e1b5ef7c5a1a4e239cd28078bd48a2af3c85a9dac16d09983f391b0ee6870bc2a4c8564bb8a74366c94d5c5bf7ff128ac7f3bd567774e4c85fa0e8a33063cab5170f90bb0cf9172acc04913e567d30f8955c0f71468c554b4c72f8c89fd51be33f894b6cdc05a805338a89573bb8a2a972e22f2718b37a14fd30405ab6aee5d0a2b2aea238c70b5d2605c5b56faa897b39074504c05d3bf4e6460e64d299c1b176fffa062f76f89e8132a4d5c9eec233ebc6475ead8ec5967757419d23c8dd91ffcf278530ae7532422c7889685ce83a40ed5a92f339237ef5e19c75ae72d5f30d8513bdff4addd4c027e61d7ce4c94e58de9ae51e5fe31a1a449ebae90108b3b235f1e6742e35650d770b0a2d915b20265f01787f6f6edc4dd808bbd06b1e74c2106eac7bf35d4ec4b49ad3dedfcd29caae1b32a1d753ec29ed26a2554cb67378b41a3e979ca1e7c9f661a5d3df739f565b48c9520f3f3f072270743d887c548b754665bc10a4a62ad127d3749b84d333f01d81208d9824dc97a5aa3ef3a846ffb625dddaac3288a9d750ff546dba554848e15ed0e265213b6a8f0408768811df310ef5eb688e91990b40ec9b2fd864c12ddffca5a7bad8d5efe4f3aa70455144fd74bd2e699762c78c40992dc4cb41b24982947d262e360ef5ffa71c96e5b0d8e8fad7fa448d2233a8ff78ab54cf3624f15dc9d30077724a5faed827e4b7f24043906c83e4ef3ae746025166eac8a99a996d7f2fc94724ae173abefcce1974f5bacc318f7b4945a1362d4320e59e319af8779d8b2248f5d1d9d091f9c93e072a838513718f14f4e3dc38fdffe3aabd4702ce5b5a2530612fa31d2e70339506535c661007dda0b9a948edfff86e609b6acfba6dd53bed8238d3ab3a3b50eb03f2372e6e2f11153f1dc159d4f86995ca08e15ca841dfbef1ad39b26c73518622dbaeab3298532afcd7d3af53df8206cb50c6bffa741db8c9b98923c9dda62c60eb4f0176c9f581eaf0b78e832eea35d6041bbef7caa84e3f4d740fa3ca620c60dc85a159c5867e37389ac3410c7f07968f07599a8fec73f07c79a58256f974737205dee746de4b9b82ebe263ac372253fcb7cda8a5195afbab92662d3da0f83621fe6ee0adc40074efab176e304af95d5190cbe6a39472598f61661daec67ec2293e78910aa8487ce1e280d3d6b57ffc8c3c94907a0600a82a0a7ec680769e60b13ed7f80019ef01d5c8e10efeaf6eea78bdb91aa78c5cb7813100065e53ebf57c4653800dba0ba7af031c6a225ad26b8afb1503008e9859a3dc27422b523953f1da5590b50da7d843deb7faf5e1ca7b9a4a0045265b318a4e32a2c0fffcfda716e3428e4a8f3785c99970a47cddf22e7e00065f8e3720c2d34565922a590e60307e8ff6ddbf4ee48c358aa3da814a6f5365f7f876e45cfe965d01447507c3039a7ece3f71b0bc15f31071128b2a1989ca77fa6267e72194dc0f414e06979010b9c55057fa48ecabbbf190d90fde1808986dc61ab187e49ea12a58e1815f8121ff4f1893ad39376fecd5b24a3c1b700e92b7d0b3074dfa956aa480e17dcb2224ed5de5604ecdcb15e6ca9cf1f4f3215b9caaeab0ca57770dc1e12315de1b71f4baf391efcaba478dfcfc784a6b99f831a2045c523a85ca8f31ef9b9b34118a7730b8869b305712c444cc477493a122534553a6409cb48dc6ac587b411e2a9711af51b3510f81262976b2c040b5d04d05f64899a38d0731801743fc80c6d932d498533bef4ca6400c3f4e4f2b166dd4d3afb7c130a775e6f477d1c5030cc213c5f58c79430fe0edc6f4eaf1a9bd8b03a96654e8195845d515fa7764e930dea9121eff0afe518ea101854d359cf50d94cd9ca426be09905f83a3798134056dc7c28ff2d975838a39fda88af11770d66b9cf7149de29cf9fc75440f3b0897b3f7249be24c8709bf1b582f87acccdaaa1860b097668ff4aa02f3e2ec7648bc7fb453f007ec0f31409df6f60a5b76c1aa26818280d97cbf9e1f14abce862295760080294ef2d1bcf29233e42b57686c33434177c52cc9f2ce1335cbc7a08108e5b01438c2ed695657cb90c6761000edf2913eb190c88ebe8e78a74657f257dcb523a631019632ede727c5418e14f3238f1e26a478b6792a00d5958041cd69f7dff2b0265c418853eb4d7c138c6b1a616596342c4911e132f5d27ed8bbad9c6ead2f42bd179a39e7e16c153d76c5e8ed8562aae2332069fcc87dc2238956bf50aaddd5d5dfdfa741521ea2e3ca45bf12368647a7b0269741b89bbe824da1c5c951d4b3e9f18ddcfe1ea6e476e3bc0f3880bf1e007c0cee7ee2294d61fbac9be1bf8fa5e23493188ec070be9c67785704aeba176e7ecb901c72e27aabbc06a746844af21977df4d8fa0efd4428651fdfef814058e729c72e8bde8fa84fab0b8eaa78e72264310263d298d3b8115bc5c7f344e9d39d523718763967a61c4bc38581f6f81d6126880a168605cfbaa9a5020097f5932d4989770d7052836febaf8e08154c4d456165d3486de6a2f66e69e034de0fe695ec90760b77530ed8347d229fcdbc6722f6f04996aa4ea211d9da99320076d26b76f8c7a775474bd424cc0a814fb7673e13fe76c9826ea41cea701654cdd71ddf800b535bdc9845935e80b824436c649b5636685b4f3b67d327810126cf93b7333e60729d14e9cd2adca6b964726106753662e149523086ce0ef4d3896a3e9773c49fb4966b76e6e5e969ccb7976438f5127ad7e658ecd5bc043499b46bbe95888a92c9322a0e978ae2d8563dc2806317e65bf227beb16976f3397047f31a6c028c1c64341cc574ea7cc1d5b4c776614675a8b4f842b23be518d6bfd5b09cc9abc934c7637ad1841c5ce8b1be11444b675ea9b2db69227285482e83b2dc69a24c7d6931ca1ae0891acdb60d55f472036a73bcd69c6e6f3b6111038af2c98ec25d952c24e495f06c0665abc30ac8fc6244850b05664bb5eb5c6231d7ecfce8dacf1a29f17a49f88aa5a70c17ad55200876fb0a5736b63ac658b34957fcde7d83e4cff2a80c46e1a4f19686f61ccacd3cf6c14d636806547a769c9a416fc5029913e48e506ed993860c5f828ca9564b27fcb1eb9aa0a022a8fd134674b5eaab8a2fc8d125bb81d6f3748c50c2a49235552e2ffa7fda510df1bcbcdaca34ddb33480040f303e7c693e231db1a33fae4f28f13ef2c8359c4961ed76b509c14b41ec1052b91be5e737f7df123f9ea384411f13255771ac02eae2f03c8530043efb395cc66bd6f771ff6856694c2542ef8c641cd1f70137773099681665704342cfe8b23cab427e216669cd31535b6e0802725e5d01336a4618256f07ac374e4e5e4e144542d4e8dc800cf06cf8d31983c3261e804d1f49215779d4c58bca3c747ee5a07ac250bdb752d4b8bb37c9fb62f7086b25cc0232434af3b5e0e8c1b5ce5b60a6bcecc20f44e497476024c84b58c4598a1458b3886a0b8bf9d97da4796917102851ac5b7e9a72bd037c6803ef1a4801874c4132d8f5c6ead19117f15b0e7105e7f87cd00851588c5ed2df7881b7622eb94dd834a1d46c65639e5e49dd23528e1dc998eaaf3711217f2009ac23af095c26a31dd825263af025487ed5ca633ff60c7aff1424f6ea5e43ca78017ec1991a9ccc56c0915e41880abc65e3f3251af3da3b1f9e52d757896a86e03551affb6c70605730e01ea33b9f1d26fd6c004c285a9cd81e2ac1daada140327be2f9e263a9b8d336a285aa9ee18887bab189138a567dce4cfa69689b92e7a862d6fa51308126bdd6c409aeaaace8be48cc135ea7c6fbc969fc593bc48c08ae16cede71445e136a3267b0e20abe31f86e37da5f18da12176146a3b6e5355ffee408a33227b909dbab61d4433f312c2a339950d406af836270d8ab530437029063716273496761ccd3890a0baedb42376a85e9cacacffeb9444ee6af683fed93da9586a227a4ec6e964894e8a0016cbea36629efcdc10ee46c8cbdd39df3e3ddb8e282d6518aae470c588bc2556b2a23926d7a5058db14ad3f70dab92156ce6cd465f0913f2a39679a36ffd7e506c4d23ca888ce3bebcb11c1f7aaace73ebc7e33f4441a2fa2fb97ece2cec9398738e4128aaed319649748e8c97a72138e5fe7ff84432e66f8191265e9eb0a0d4dfe800de3ce64840d016e47c73a764f739982bda282bc69759c6c7d01a73925d284701cff68ba193a5a24ade27f687689dc9f3561e38d07b5cfc33a04298ef18e7b9b61d23d161583e18a6ce194126b08e6ff7167f3aa467bc797d6d2cb67104858ed2f3b2dcd7cf2d5425153f7a2db610ec265a07b0152691e5e47e1563646272e87dd515660af301760aef2ae6db604c920f5cb61cd31c0a07e3360b148372d66222423ed9a6f717e4e281c8ea1f821db7f4c5f2ea6660c48638bba1db0966a4809c02c5c41a3d213742b0d65757958169db753f4e02fbd541d029810dfc47e821ff706da65517177dd22a91e66ffce8122b936e1d12eccf650928e2b492b3fc5971ecab07c696f87005e2ebfbb69a1ab59e448fa635646743acc9d5ff944732585e2bc0a1dea03c8b90c2f1f2bb190ec2517620b994565dbb777eebaf2e6fd079aaf06781459aa742a5c75799d42f8edd2a130cca6060954225d6ea560c9cfcbe90f970f32022f6eadf6f927cbe7403616cfcd88275579cc12d1d59e830c537dddc2dec717958789565974b610440d4710fbd0b31a5a94e441837c7a8df5bf91e3dfe45296e87ef9c5a9629efeb6e1643bbdc0ea312d07d463c3712b9beffcc2d0b5a701b9755e823c61647ef9a4cd87149e0995c46c58ce63a88b2ab2cd531ed635664ffd86aeb38438b93ba4984fa9e93f8575744f0d2c26c59ec3f767d4f0f2f278b8069f3d971b79cb3faf225b3308e8cbadad337793a789a14bc0657cb30003d89a18371ca565229d8efac8eeedf421cbbafb48f371723c1245530835be5c1279218bfdb4bc2eab126fa31a88b0fb1bc40fc9253965d4875afac633bf426725634a1a77dad6d797d8c7de0bc355ed1071d0f666e39de95a5f740a1ca783ad809357c23020df019db4a08bf957475ee94ab46541c777fd91200c66e458241f6ceb8b2467df603d5ed7ad28b2dc738c3e2f2005153b6c4e64a1dd25c349dd97264bba907d77a90a20bad7056d786f0e93735955188cf807607a718923d6f28e4462357bb24a8ec65d6ad576473bf4bc6f69cc8c6014ba0f180dbed8e32a7a8ca929ddfb66565190f8010f577bba216c18f292a46494b8c7006c257489a609373c0c689f211a56ffb418b6c69e16899511b0be7d44730e10188e109e2fd326b9603eb3f795737375dfe753afb95f73839de34e3a6733a463ee44c865c28d5d12d26f4b93c1d963af96e4c4d37d04cb351e0a10cd46b1b926f937fdfca2290e45aaf7a6a97905bec396a23c5ab38eb34e7d60a2de5face30c11f1969692acceaa116cdf12379cdfc6b1ccd315846241c9bbf6945e5d00a95427e8f3771bd1b6b2504205c2302d52ce7885aacaa75aebedaa01eec06b7184edeec2601d9f4d03fbf742eefd613cde8f16b5dd26a155489a28232c68532b863177553ed77b6f9fa8e58e9b119ca4ce9768b95aef39de9ec3ed2b6c815fc006aaaaa8d904082fb0460e657e4eded8188736314b4011ef4bc2994551dc1e719516be41706158d8733a763c22a15e8447ac2c07a62e72398125704d5a352af1c629481d6020d8a80039aaeebe7e9c0b2cea8ee0d5154c06f3a9418c1d2f0238d58ec013c6fad2b0298f8469d179e35f4847848b9d59fd1887c636a0e9db24d6640abcb5de64b6d983925f3ec7ce62584fa78ab0432ca4b66e9f74a43d1111b35a9c4876f5a9da968479a7392017795ec1a98e76f9164d93713060118bb11d0f91966ecc75b8b59489aa7614de71c386c4ad3f8b3ce81283645c9ad5950f70cad9dc20edd3a2bd065a2693c34a0a4536cf04409f138b2542e856e12bdaa767c05f75e35425d243ffc0297b0eb316cabb695d9210300fec22b92f6feefa24220d2416be0e5ce41d3e2b4a1e66a8b08a97f80aa218d7ce7b02b17c2b4268a01119e697898ce2d30dca8bb3b69eba1ec9dd808250c5d7ff0cfc2bd06d8789331c576cea41e6b62ca586ed9dda3ee89e3715d3433bf40adbd971a2b2e54c318a283faa21abea02ac4abbfe19c41c2a6b3fc9473e12299b2e92e2316b4699704e4a55ab66c61afb690ff0d077dbb67c7ed33a3b7418b0dbcdf1234346039a692f60f09f1af45bee1850da4370a4530419e659d57e010c49c222191219e7c7e9a25b7a8d9c1f805f9af4178f123b79a46415f23edfd8f11b893c9f45678741629862c0a7d26315b1c3c6f9823c0a3193f1b1ed6d10fd2ab3d7d29d8b080c1293143e50b3f77c2fb53353f30f63c508694367f0f95a948fd34b560b7565d206e21934070d7e60280a865c138a71abbe503af32cb7d83d88be3bed8d9cdfa9f4eab232f5679c94172213795a73b222c7c0adf0e8c76ed673ec2e1ffe55c15f5977092628429c4b3e9c8d7c8f1f1468c163fd56bac4ac3e39fdf326e5cb1dce68363d14ffead26b56c1360f0b801853fc56c8bda7fe0f72871032a1bcaba7ef9b94e03329bb03c713d77432e0c302179d02e6b91ed35cfdadc4ccaa4471e3cc83cfd209f980015168e7b8405575f9837fc5e1449a813dbd18e9d806ed436dbd9e881d5d1ddc413d596c89a7243c8f0859ddce2e98acd8e5744d37095a6483b57edd8817736178eda0af6e3ed32d033cb47f017d2f18258b9d84ef3ae48fd4a8f81f9062d53e2f4206e37efa7412df1c6c46b8864a1cd1ff54a3876dbe75d2a11622052178f228a775bffa5bf01a0981e0874515b78c75111a29af067e369462a9c7116c12691671fdb1e8053747dd26ca89560eb4a4b08432793d42408906d1a305991993f773d1acbfd639b2be0b7018d3eccb7090770c69a0c2d6d579a6bfcbf1fe44854c5148c98f8837d0d82ff8734f68fcb8dd3f9882a6e932bae73996e83f1427c1baa4723f7da6d11032197f4f6f5cb712dbd49f5766aeb1134e3e81a4b2b56ce0aba9cff3dba5f2f5a283107181777aed0d0dc0ad5da92c4d00b3de327eed3e6e3f9f2809b9f8ddce055ec8f9dc57b69f5d57c375df486a799aeeedbbc3b1350c517398cd9d83ccdebd8e2d478dbc50d8769b96470844df776a45dfc686a54b708e047338b064fc95e3d0b741ceb928d6ae5228a05b0751574a3826f85d003cd18215027448194cee070ee84729b3fa1686fe55339000be137f585c299dea3b437296380afef174a565385dab84e8a415afbefbf9ae3bc27f4e715fafda5f56ca22b12fb25aa22ee239523bd130722598f2a97e5e4d45e2e69f1ab5e7f401346ef24f2ec93f9b3f96e581fae7f723d17e6b0899a6e652d5eab9f266488885249e957890c21b5b1a2588ee1e40d2b629227786ef8a4b37233948e3b8823bbd39daac95302b6cac66bf05f8ec935366e5270cf6bffa187e72038fb83042d3c31311fab962d5fbf7db988366244178b71c03d4e3b0b2a56ef183ae2862ec2adf5036bfecee738b44105c088284861f8ac61acfde4ea3d5de837863fe3fd814606b5992f6200f7fc3e76515ddf9999103c5c9a3ae86f23703b19f888b9441a2f12a8c0a9dec1c4b81f8b9341372260d7b9996e616b9e8909b22e64889d15aa1e04166ed2464f80ed49c8620ee4ef34523738f94c311233ede76ce9fa52d78cb380b52f72f731f349ede79e07fb2ed446d9f1ae8207490b34d7af20c5b420ba65a1052c734f3e519411562dead7281857279589cabd889b43da6bb9931a3c9c8fe29a6e04af711f8b4b73a27726a844c000883db099439dc77f3eb5df85018f9e415211d9a02f86ffe9fa972d0715974c0309e4965162d3d3d29eefaac9e37f3440028b97f9f051a3c2c1881b414c07bb380890eb1a2142b2f939ca9e5a503e4816bc926fb7d44327abd58304b324753558ab6a7d6d20099dba73f63516bd24a443cc4b1cfb0993110fa2ceba9fe81ebe83cbee2069c0066f0ef03210a67cca987275d384c6600bcfdee1ff31836d8dd5e18d726ab0c12aef96b7278574659a934003cbcca164c8c149618569ee9a31d84f95feb01c52b1ed9c1bbd02fd9aad12f0331db0967b835723b9c1200cd509e5fb7368974df64af78fa956a8236b97c2d54e008d197fc516b9dc16912aadfa2c2ffbb954e53ceb32320ef77e1914ceb9515feb4d2d86fe7e899067ac6b3ed3929710521e2e59a504e4296e8c6966d4c7d267e8fb1096bcd74f3accec399248c1b965f068f1b34b5c29e02d76062c28f022ce41f211025e0574f59602adf610956de7eb755ccdf08b99e31ced9f922f39d3475ad6c6e5e1d5b616518d5ac349ba7e2768f03463e2976feea04d4d9a0c34d704f372b80ab3afcbc4c0a6864885407c6842d88903b6d13137e2b1a0aedf4e922603eb7f5533c43391f30e430bc3d16f5597dc9d4d74d3418ef99e4f24930d70e9aebff4b05961c987ef3b8b02d7ef6e92210c254e5a13f57bb83b685e6488762157e0d610a3bcaea7a1000bd5ed3ca398c818df8bda226077a5a21f0a3f4bf1c0e9ba3da388a1d0d2b36d3e2c294bce8b7f443b135e34b42c08ad4d8ac9f6d3cb1208a0f7143da4b222855635734f44e02620ceca5805d676914062659b7c5309ea32e7dc892863c612559cca7c53228391e4ff1841e760ab0099c5489843321ae2b2d5ed170c11efb6953c9c242173937a0023d3cf231e0865baccf5c90fe2b0e09dbdc9251d56c274463e0525ed6d0813bcfa21893d6325e32a3e884703e34fbd42b005940bcf3219154826c1af2c7ba72ee20570b62d50fda17bbafcb3571d64b3e05681da9091790be92fa0b1f925d201d9ce3936944cb51ce12e07a960d465ce50021d1f3187204f7b6c36578c464ac8ab5effb02e3ff9f4e1172736e0f3dca594006d06b7b9c9b1e6346c58b197f1957a013b47fd3f18f01aa4e28c12ada1c6ebd4011c6eabe02b9ed4d444375c4d63dd6f3fa27b6243214cfc19b0152a3a7d6248481f57484eec9bd21b8f70a0e3857bc20e7b1bd06288c80e7f5a753324c7ec95449dd9b7a44b5fbf4ac687c4bff5d3bbafb99da31d69d840c1360707cf9bdb234d3caabf94bad3f153e28100f59b73b9dd3e0b9031af183da4fab617860932bc1800336a4adfe7c9c394f8ce2fb32cbeb497ab09350a2055a08024cc8bc63f1f8ef50ec45e08c0f9b2afb198c00ab234aae70e194c1b899437f842cf6930e76a0dd7d80f5e8b2d023ccb9f8c5c019b2d09f5c844e964d60c83d6f3ce2327c80ace25c8308b9e333cdf3aa0bf88ca0d76fc3533f272f8c0aa811df2484291893eed29bca9ba7000cb02829db24a2e73aad8462142de6397487d6d03323b3f4e71bb4e494f3fb6c3e4763038f6164412c84ec762f901e2e52fa64c324f58975340e63da8d216b8e5ee65ee9bb0bdb91b094c464e32780e7babd768a73b61f12b2bb717d819aaabbebc6e631d9cabc9ae265b1e11226fb8aef23c2b1377c1011d8e1336a463463f3b73c7349e7aee05b3ca089cb5e5d35511007747f01a850c5b19ff35ced7d0711de1668578561f49191bd35b3056620caea0ed0ff7301c09f50023bdb3ca22a3f067c9f8c81f25e957e87a752c40e7f88851391860118425e1d4abcf29c41634c4dde531492586357d8cb0c8796b28b12f1192ead6ea910ed38817612084603117c6b88ac357cf88aac64d2357cc7b64b9e19c2244dced0bb00d26ac7e59fa008cbdaa13d32a5fe93eda6fe36f5fd0e3a7308f57c14495e6513e3a645e28c505265c92de80e3c36eaf270f0072f80453bf8dbf7ad0f58f87ab11046ccc0e4062fdf5fe7b2bf887d6eb1f96894edf0c26bb69f2aed301af97d6b9baa6a3b4ca7791795bbba5a70174d6ab18cd02f8f78726f664caf2fbfc83198c17569844beca00d966be64c13c7849d945000b3989bbcc7d20fb814fe3da3f8da8db700bd43080b502ea0e848de964560fd11fad142028316ee2329431bfa8584289b81d9178cfbcad7c7be8f8a689237ee9d1bcf40514d8c241f10740f9001dcb148defb250879d80447c4b414e2837837add06c11742af4d50836af1ca1b2703b4b513c9d475fa6db77845b49aac18e7bf28639f58b49548b661159ae03c38d0e18da7a5e738bdeb8027196e26526f5e976325142f1b67626286e0ab48c8579524be1d782beb5c83bbc851a500cff7398eccca2cc1db5f64b4a0c6d3dca462afb6562bc0226122d2cd40070dd69704d00eb202ff685abc52c9f7339e3c6ff50f8e8c9a28db1b7a89ef9df2ab5c415391fe96b13c0c6bb080aed6df7d158047bf4f03c38cb548115782ab0beaf908665f494590203884e75763355f499db2ae6c9338de6c45c0be23a012967a2506e4a45715ac767d08b3f6f5800a618eff38c12270086095a46be7b57728f18d7cf3f57ab7ac1dc11452a1ca006ff7172efe650d6ec9a5d4e51293a36ec03dc737abf00f76d618436ca958e6932ece947454646795860fed67b39da2329b67c992307a994636779ebf01bb22d37be9b6cac64761234823e3114835bb83c0723d84c6800e7bfde1f94ccfa3a4a254d2331f08308dc9c1d6272719258272391e37094ae576b03470011cd54493e70ca75ff9d550d6c71d41d826a9e77b8c1dc42358fcf2965237a61d9ed3e396900638ef3d2df6a647031206a42912e46fb8c006717be98bfeb7e4e759c5e2348505b521bb7c7c557d9eaaa3820ec9ab2b068652be99b8debe65ead62a2a7453b7355e10491720736708c856c86ac3818852f00f210f7c5504562da06514286751c5c7182088dd716225815181d5c8022decd0507f57bf25d88c1b848cf46ede14bf658806df424c3e769cf31a5f74b7dbdccfe9dfb3d25846ab9076f55c996873f6ea659bf3c10d81de8fb5dd7d787abba884aca2ffcb484b0c69f02031de1b83ad2b9c3d8257b840e3d5e8ffd9209a5da6bb80f49ab762405b97f207deb19d34004bba39102d8f4f2d069a31d07321912b919180e9c96b7aec3b4d03aae710e4cc30344031c1f5e0d2a50cb9878f440fe3f425a8a12ad674eb80a09bfa80ee01ab63cffda94185479e0a5aa3905734cbacbf867b41247a443e78b31c8667fa813d2d0e0e70ff1753d5a496414e55cdb7b2ce86a366c11fbd3c2d683881a025e20f9bfc528a4d5995f2789274e829ad45ff96b2c66a9386af3be017b224970fc5b423d34294cda7d2adc1b003c5bc43e4e33163ec24de49311b3260ac24023072fe6666e501af84f58bcde521973b7ed79b6b41d5be010a2b522dc3d7740ea7d1658743b256b0554d4ca83f0ee56434c48ee017f0b79bede1cb8d263816ec74963eca5b3031e802d008e2e93a84eb28e6ddc42b0d372dd27d87a6b9941d0ab101829ffee948d45d8c4d5ed59a75a75ab124e453c3e8b9d490e8a7d97f27c6eae6184988d97939d88db6503d13c6aa9dae1071481a2af944a3afcca6995b0539b3d6dae22d43da9172fc26d18cfd765a436032a4e1017421acba15d997878c3392d64eac1dd5d2c987a283e292a8864420551d90157d54f5d80583112d3637fde03fadcb514e16cc4ce897fddf270bd74ca6fb7721a4dafb824cb2b244c86b9ee592b7a20feb6c95912a2a30e1d65f7543ba689ed1650c377e801a77012d99c450f597e7ef7a0fa5767c9b63faf4cbd257ae33e5bf9797e8e9026326b79ff09122b0723b5deb277d65f086e00a56dcb8d3c920d16fbcc4b46e7768cf26f66f7c95f4f7e5c2c48fe29da1d67692048795cd1bee3c999295225af8adab136577b4c5571903acae87c704c44af9f4f6d61efa5e26ecedce01263deba288275f6d9654e8852c008c48ab0e2d39a3acdbd499bcde132a688bef1236e9786708e647e51587219428c28fb146e14fa1def2ba7684bd19e08641d22271fa3881e5e8bf9b4538e5c9fcc49652deaa24ad26828876d6e8f9102a850cc0f7b25b78e8065cef32c700892e023e0288b40de2f7edcebec3e6db13aafb9efce6ff237888941d73927631e743dcb2874bb8e523052022aa29bdf8206632c324f9c2df243328d9a7a210a0299f0ba5ea785bee8192e932e01b1a979687814c0bce22e4e743ee017be5e2c41b3c0495574ff8088208ac9948e9d9f933d9ee78d704bb1af78989dbb7f5f787ef2749ea49efea6bd6c6f719f730098a5a45e88b9ac145b501ea523001c579190384c0cf547dfa8ed6dab851de9e33ef96664ca75363726b066eedb112d4eea03203f3effff39fc9ffe2fb354625ab54ba1e115f4137ab758aa2f5246b132bb5aa1451abf44b51eb943c3890dbefa0777cca13e97f63d51362660cc1dcc40c2255493b1e709a13f18b796f5a770103ae69bc279e038d161f471509c48e55556cb386b090b52f211c2f0d848586d6fa14a8973e52f2cbcf7bf7638ab37a105bcee7db2e80bb0f818525f947fa8e08c131130c41d5f39234a67b27942714052075c993f1da6f98975bbe220f88acbece5ae9c9317078a2b67391355f450f4665f4136c0b797f7fb87fc81e8b622ebbddd6a240a286475b2800d8fb9c5d81e6482c32cf15c354725fa036f7f29719740e00911bc7097b539d18d34d4c5daa90d43b7fb0d9b49ba2a66bcb2887bcbb53e61ce237dbd582bab7c878840e3e1801f7e54d815ea176ab67c1396a1ea31db84dec921a083c17e44670c774ea8f02c35f9bbb6a687b0bfc176ddae036497f7201315a4e73de4e6d35a4c7f19a354ae3f8f31a54dc8b1332834243262247c70f882ed22722c5b22461ef3c127e34d9c6cbfe1b0e026ebb0f5c32e3db1fe1c91e6cc43b7062203810cd264226e42131947158cfefbd0ed0bbcd641085d4726e8d732b4ceeffb7e2c857f3144e796c7d831bb88ec72b3a27de4278df7b67fd9d7ff55134678ec7c73d0cdfed8d3454c867047ab0f6a1881a1be85e850165041165b47071e2415d9032c921c6e4a0877895e559d0332c2c7bcb26ea32d30affcabd7aa3c827889eec7bd17c41a9a15591f37910a555a4861b5de8d53e2c21ef7f9d126242fff0f7acac7260322513bc3c13a9e4dce49ab6f6434464668471259f06b946dcb301cde16a5b0fd4b65bc9f09668180b760f574061728132fe17a85478f9aee86fb5872148d0004bbb52942203d72a572b5bb91ba97cb6619ef832a0ad0d501554a6b986629d56e21329439646b7ce3eaa81124e6dbd9c988a373dc7ff1ad99d80c459a2866d8869863702c3164c8c16a16629fd8309995f13ddcbcead11605a4e256ec8e4c91a8fadefffa5643641659ae5581ffcd4444c4fa7f351c33662d4dce59a97981f96eefc73d13e12fcabfb17dc4de91c9a48176fb80760447157ab31c9c57856193f9ed268557a76a14ae82df070d65076eacc8e6da5cb7b6bffa9949ecae93bfde931e8699a1b04cced93310ccf375f7b9e9cb296528456386820170ba63e6a09f6be1ebe3ca20190e91fce65bf2c1ef3ef9ad53c0d12b4dca3c7ddea738f1d5f8c9a73e22d6c94596e266fa20b6898adcb68928bbafab8bec3660de6decdbee2640c8977a2bb623753ca9a749743cdfa639995b577f40efaf78a8b2776502c7086b0c36f37f7029f204677f2523376cc9610a775d3d5b4ca382eb4d18612267880d2001f0a58762a987b305995771043bec67f320ed533ca5d5049420bc901690538f24b0f741606c689e64042864ed2191b5a5029d9daa3f9f957863583be09a4a16dc2143b042123a3ea61f9ca2d836b79a1a9f5ce6c44dc794ebb0a4ade81c0b9ae52e5d78456081892a8c9da826a5f6d10b2e9b06d4132248a2bd99dc6bd3f817f15dd11c5f8a27cd5bac88542a942292489276f2daf0ab011933dbbb2e1300721a0d228b72878fe506650bba3d923d9a19d36c6d7c91bdc25dd24250cd3353c7157836850958d2020617a32611ac90306112c06a726f631b7c7f17b3da42e7aa0ae3e01a565ff3d53b2fe0b23063bdf1330f1649532e3a1f058dc47722e5bd95765c3a8241fe52c18b4fa5224962a56b32813f659d1c6aa840da556c1b99a72f104236b92987d62d901309f919a638eacb999515b801e8a7715407b5563e2cb03072bf011fba7feb1ff1647a7a3fc453f9ed1aa2600acfa678a41623ec7a87982f0d6f6b60ca468bdf4505198fd8768fdadcc9b9c0a56b9741a7edaa14334579b6594a72367216be2da5858e398d7b6781c919982ede2acab586e21a445210ea8317f7da601fe935361a24f3e7c0327a3b832c54f6fe0260ab50aa411156588578844e8e1037a9d4457b7a406ea4abf1bb2210fc6cebb51cfd4abc0ddc13d4d933ff45b510bd65e17a1b746c2319b3d25bcd59c04689cdd98c9640c4a13d86f16b976d1d4b5b15898293b30b1ff4de9a193c6864099ed3f49b46bdf2e82500f0a943cda318b6b837c9bc2a30f06b3ff5638f77452189bb49c1275d150ff2deeb3857d6d3697a74f396cd74a09712ed9155da395eb2256cb3e0925a9c2c9f5fe2101e46ea5897d97201c10e832f12cd31611457f6eebc8b45ec4c0017c943637cf8f30b331e8e1b2b045b25b55398f26d57ed5632cb2411edf8da967716538410747f5ec400cba6db6c0ae837ab2f704ac102f1b669198bf2d57f9acaf4e09fe820906ca870884d8602533bef77bd341db8e50c1a472d8c237e4e070ce56f954ac854caae0ab66c0a02a9881fc405c7feb715e5365de929abab7673206202d5135693206d4e08ee1281478e5fbe16173be08579e840477ccc29f7120b33e82e14b5305b6e2a510d8c85cb523ac5b344cfdd85aa6a193c4dbc7e03b3e5417ac76861be159067bd83bcebc402bfafbe1378b3aec35b8f13094dc5e2b938fa49876ded228a4818aae845ae5cd11428b3a82116af9fee3efa276eebce5e64a79fb72138464bc1682d9e1793dc38b729f1b6d3758ffde1362c49cde5ad610e36692588210dae904402da40a5d06e9af425d670bb2afae80b27f6133d00b7416b8c68058a92f9592642101fcef556fdf10b0460c8c207be80339d68a7fda8e8fb1e141e493f06c137f579f1c53a442c27608dd0e22cf59b737032720027e3088dfcf240371cc6c73a98c59ae1e1ef8eeae59b90d6505303dd164e2a0502c7b157bc14b3c5c28f5456707a5090bd718a6eb5975228cf93cafdd81164f557bdaec5f0f397f698c6d820406f52e99cae4b8c74facbe430943bde64722d9b50aa6d264504098abc71af3ad9a5a8bcddfbc940332aecbfe34523adba4a9b6a7c4d2761404164a68b802b2abdef3918ad99c1dc6a4d6c053d7fd8a962d963e32cfd776f83e82bb8435bb06436f774580c1be68dbe796cd9bb8924bc24b84c8d0d1d88ef3a1daaeb155f93476777b2acacdc04cd3544e8c6a7a7278b91373b706d26a8b237d88e6804a9a341c4cf5660a86d90b681a61efcd42db57042811d27477aada734f3bee49b08cc30d72ee754b27990abf9ba4bfe6b238ac91f4f24102143cc7d60ec031a1c02eb5130a27d81c6e04fde7f5fcc53b14b951c6217ee76508f3a320b623ac191fd834b818b74a91cf01b9e46731f5c56e445583ae19a75805f450bf74b83b50b610d26ee69062036023f0f7b2f38b963da3a64972a32ea022bcd1012767406784398250c23d5ebd0adce8a0853b2f606ef2ba7f190f2940cba5054d992cf9db016cd4a8fb052518d55ee3f9d144c052a0e2ff4142528e5d37a00d0c1bd113208e71e0ef4cba1029ff8a7c9471d53fda3016d43bf0b98bf7ad34cb788c05fb51c25f60cb5de35e838fa8bc142d0adbc763a0172750445e20001e9445a611a78c6ec0a049f391db48ace85c22191bc05f1c8c1fb70b20ee3d9f841c5668de19437534247fac8da13760ed3031d5ab4f4c86930a1137c81206d26bb4582b1a9f32b02795eab5ee69396d93b5c9163c978e5afb3f4a5baa86702841d863d3105684e419628d5493b7dba21562851ce29e0a72cecee322d7aec088cfe1537c0f16cbdffd43aaa34dc4484187915dad0de875641922cedf25020bc05b48ed9d8c474a3a8502680e67695d842b436b2d87fd0f350a7e491c4e8c2946b2d2364e9583ae441ed57822c51c24481b75d33f8a85db5524c7d76e984ea1c8e9f565acf80510b4f94297f0a1c4954b70e4be8d1fb51996525d7df4c569a4e88eada649d6a007d8fb71497f679bd9335e30a1bf9df4b7a902b6ce2693006cbf7fb7d94c736c56347c82ced92684f1a4c3e1dc6a5aa28b188354042b234107cb09f093a312fc174b7542a21317db096c6b664fbdfbd5e4149dc2968f33194834a58d075ed7afaea937b3c3d6c69a2230f3c9ddcfb069f9670419b3f8c11e65071f76172c52477bda79c0f2d8f5c1d007ad367e09b6a59b104c73b6ffb1c3e886320eeff3a33ee7e53e90cc593da6734bd2fdd6fa6a406bf18a716db78231e1d00562f302ff52c488b16649b83cd08cd487dfaed52b44914ae4d448b132dbf3de33c6f61fd87e7b43b1456d6e5ca1a712b20822333d130c42da6391e62bd2a1af34ad420a033629ea4bf139cf70f5f08b018a8d25b3defa48a01bcbbc55bf4cf3cb42d79f3e4ec8f0556340a8c74d15d1896f633fa83ddf301ba2f5010ab625dbc3b3f9d727a9a0d79e24de363b97759f7959ac6656de748ef0770197c24ded4864652d4899192b805e022b7282dab95edc79b927d68331cc9b76dff6b34f3dfb7d4145725b273fbe5540e8927101b7abbe5aedb97ad3ad7283f9397347923d0c3a8103744929820697d2018684b9a51e82c8a4c2921c8b1c9ba72c268e60f84398093226cefbb3ea3295cbfe314d3ab8ca54fd714002050e136d90d1e80bec96672cf003143c4e858580489cdb270cc82fbe8118b063687712a96f089db1c7224d1a29b7259734a410b5b6ea7e4b3564792e877c5892ebbd6a97bcdc41c127d95e104c02c6422d336eb127039687f24095d7618755292ce95b54fbcd89fce925989671d266f70404dd23d6caaa9e48bd640c9709f9984c1b8e471eaaa3261209e0afb536ee6d1af1c2423ef44c49f4b60133c8da52386dc15c62cbe40bff74414ed87f1e81ddc18698a35c6718f7a27f14a553208ad8f6de1551da3034455a617e16a91b9bf4588b7552e8d261e740b5c64c86b1be1fd62a3391b4e43ad109af85f3dd946493dbfe69610cd56e24abaccbd54f2e3bbedc97603651729972294ab7c9e547a040efa0ab24c4a73551cddd7747adc6b8d0151c239c739d013bab3c03ef376416de537280f18fa75e4e3002fb247b8e8eeac372c877af0fb4beac508a130a3350c9c983eac709654cc741897834295783c2e474937deb2dbe0d426ca0491c3792ac128a2891adb2942949ce3d114dafa9939ecab66745298d548d193fe4c545d6e90cba60a0ae3667a5b01455c564070097d80b7cb0c128d7f963b1cb7a14f043432323ae000f61a4e7f4071db6ddd0928d5d9aefa7fe6de98299e791a402eead171b71eea0cde049e47dbc8f15909f3c697e779d7ff19e66079cadb5e9f0651c16ba028125f3c7374d29eebef8bf8fe3cead952dc91bf70827e96edc2fd7a4f7dfbb7e5d623e83522052261d9a5a0278e83dbf5d56a6bab0004dc6ab54f482ccf3da6b9845082ac5c1ca57abf78d96b31559b2031b31ee1e48b1be9143c96f8fa0aecd7ef20f75aeb67e7da69b5e00b02a4d53f6486480326676997ccfb177bf64f96f1d13d4b86819c935070234a83446dfbedac88453d701e7b2d42a6eeca379064e5aa6c74a06f6a4b584359b7b33d1c7060117368f7b101b1c5e6841104377715d924724cd1d3c8b105078d4af7727b5e2422ece081bc32a7ae515510304643aff9bd5bc49f2d3efe5cf3e983d80e8e995a0cb7c607244b269ff9f9ec1ec9f31bb0cd533925af3332d96442b636f41d5635add1ddead727bfc78d67d3d0abae8eda2553e1dd8ae9da774d702784c495a8984be3662a653076c010a1c4468d56e74d8e1a27cc3e223a572f8590538411f145bcb44bf5b7fce0fa4bf86b25c17037c59a1618fb11ceb4715ca415f1d87986de1fc811d2f508c2a3809f9334540913c26f6bdbab77f1fb195172d9a7dc474c03956d0d86a920941cde518b57cbf67de41817c60be5ca98df3fe250eb79caea860bfdcbd9db347520aa4b06cc5f174732916089b8672bfc46320e3002d72613b475ccb12d4dd55f4678ee09908b52491b493257ea46f57038f4fcee89f516d554b0cf0aab7e7ebf833734cf0110577c7abe3cada9a24ef6af7b376c8985b1d0223532e697f7cb124ee19f8eee1fd4b5fc192c4f7b5d061d0c131020e9f53670031aa942abeac96fe6f2edbaa7c8bb2ab82060f4da1e4118e0a66cd6e5417f3d039104444497d17038a687987e2445a87699456d37654dfdcd979d0d59793f2d1bca71ef856650dddfc7ea39a97b84139d361e8da0849468c627a78b51deb3dc77c06c0eac7dc29a9b7fc4690f3940003743533fcb49b67e2a7a60e89689a3ad3a9a6fdd5fbcb38fff0bd9cf1ece3955e5345327c93dcfbd9ddafbe7724c5303655e893e1052778900b6e17af867daa8025a2c630394ac0aded020a2372367d6e6f8b44fe8ff8f45b1b88662d9e55e7c7fe9283d6f8a5aa6dc4bbd5267e46266342be65ef1398f40a7e580c107bbf9b9cdbf1a4cc20bd828b854a380ab9a55dc7abebd300c5529b883ccfec8ebabbcab3a804f3bf886e15e58264c83f33e448a3808c09a976bf073bedfca9119a6ae5b01543395425d6bb462804a8e6fe485bab44331b0369a2ca22a4e7de5e21bcbb96ff7143e5ca193e063b8dbffcd48ad22a882f54288c45232d6120101599b3d2a5af542f7e0c20f25925205201d64c2b9f03da0d20024201b78141d7fe70d6de6316f04d19fffd80718fa3761e26605e459cf0aab3408e560816c6fa7bb756bb8d85a3a18e0a2bfff85f2bcd0f1e29d1c30dd6e33397cbfd9e5f756f2a10a07a334a00e92d6b1d5f0506bc157d9495d407677749a12a8aa0e00d84f0e419c942ef5e066a918f2ffcdf0129f02967cab75cc34c7d477a41d104547553c6f693ddb64d5339d446062b4ba0cd1fac8ae7f0b568b564b9192a1224989a91c31dc69561c4403548ffcd167648ab4ca143079d26379af14c6b45a21616239bc6c919548fdd66ffd24bf7de3c47d6e6f6c00f1e8440f4d87bd3e7a6ac4c222b4db12515bb3205277c9af9c850ddef7e4ba58e93c457b504e5b6d0c76f7694239cffd38e8c32b232c574966e0df32ca41b3a623e2f2f928644f9bc685e364e32a35122411667a251bf84a3616e4ea94d125cb7dcb8b3dfebe1b23f4e5123ff27943a42cee4e880d1baaf02d349d18ae8575bf06b95e2da3d8b0830e36f33a6b81344a9a1e4d221b662b73216e3dc17a0e2811f3be254b5e1e01bfc8897df0dc43e95fa543c3b75b17e5a6a35a49e423478f6c2393b410834b59c614d009e3a248ad0ce8acf34d6275a7c81fc9cb34619a78fedf8aa93e3390d020c1d51b2d76e3ec768de33779458c8b462018e2f29e9178cee3eb668ad81011c41a340afc1f486528ecbd703b60dbcad14ec57f406ff1bf9f0fa05c89d52eae9d98c6dd9cfd2e37219f3c2cb65f410c20f391e22e2760a58ae4e894b489dd5bc39966e1a08037a6332553c02f0a3924d9cbdc7190e307e5fb6d117179d2097127b15f1a745a82c8793c7a59853a116aee5f39170b74679c65d687bfeee507d3ca679ea146e680f701d4b3a4a119f73e0b9fc0a89da6ac9d88e39f8b3cf5cf49c2ad6a160e43b2b92a1b3870792f69fc6a94ecb137106f8ce293b807920550acb8bc3c83e0518701a821be8f336efdd5d5e84dfb0bf4b8aedbbd041e4490a61f3ba1832d362519ec04fb05eb312dcf2782d682cc355883fe540f1d8b5f5b0a74ad6fedd8ba097b048f2d26b38b0d590842c389bffea8bb5699f453f46e15a7d350b04806ed789ab7c3bf19a0e017a71fdd5f16b37072c2b8163253029ca2e3552d272067f3102eb317625ec7b63ff5537a886ee4272b65d2d7859238639a28daf857637c3328261b41018c3f6e0c636429a8e1e5fbd886134dd6a8068eab87bf0ac3e01bab29a2cb8e9f8382ea324b7b85817bde9b39a4a327cd43fdabee5dd735ba4fb783fff366535e1a017739b2f91d20c7d0562e294244f6bbf0a1dabb7b0f5ce5b710df3217ebc46dbd68502414a15c0a1424b6553eb5a9191151215ad5edeb82180402de75289145d78848117f12fb50d0af0b61e6b158c11d3535a40a15de5d02f000f2217c155435c36995981a982f32178acb20be85e00d46f85c874881c32cacda6b103e0035a57637cf5eded1561685c28775f18c0a9c71a642aa3bdb33fc47b102c385747f0b146879ad090838841256244a514f9c68cd6b79476832d0e77b5408f5b78489f18c011722c80e802b10fb74218bd5b6e6f6871c506fb9ce0396a553c040472506a557d31d3d4ef7d1622c85ec9a7df9ba7febab9a2dba3947bd45c3b4a3130ee86e136f5d6f22f98c0ed58b7b6406340071c6f0e412d0bc0c62957c4ec8b654439462f2b9e844da40864c45e4c23a66166dfeff5ee0ba2e58b0830217a9bf6f080206b48c244ac8b3a4277ea5cc18deedfd884509cbdefc31c09ce05c27b98223572dec5f6a1445c18536fa24f8f94a5a47af237d588c474b755105082c30420d7d67a356bdaedf053274a3661242761d10921651f36a2768656dc4bfae6dd8afac443d100ca2bfeaff9bed26cfffc6f53acfdf72d04f6d027dd65d587f8989d4f71b3cbddf23ba31ee799574b2695e8d2c5e53a3067b5cbba1387ce5f50123434932ba17996c23adb346ea687024787498fb2516b519b1b8f4f43000e6e761c7a02fe29fe17ef2e0a40c833d87dccfa2d638333bcdb55636237b4a36693572e4891e9acd371b7811d730520544c6289d1ece1cc1f8bc7b7ee3a1ccb8d52f31af7a64ea566dd89d8376f6419150891c488bb67c353152f0423a7c3b4ee9b80691bf2c31ca090c469e09adf5e94e3194518da992d08e0c40f45ea7caaaa8951624660179337a2f2838651232908168ae6b3c4a3d6266334a009035c995235c287f3445102d258af5d7995c4aa5573ca2c49f0f11e56ec304ed57fd5a18d87b16ae8b0555454e17e6364d02cad1caa8582c5fefb4eb80c4fe6826a5d21af82bd8785b460d9c6841985ecc980b1a1d023e2173fc0da6c1d7082981a8e22f9cfcc17f3d688fa28ff6160c3c735485196a8190986f4dc5c51e7bf4ef3b9c09bf59969674666407d4f90d2f2a2a7688ee6153a6db528456f2ae0efd6de3685d28b3f40f803d255a3f51529dd90e136d111a2907733a0186c93a55cc682205312fefd4e36d206423825bba0288a3404a886bdf145ec4f50c288da61400c1064857c88d52754eb37c3dd0b742748ca410b1e2641bd7d69a3729c6d7baea7483743ed47af4b069a260126ebc5f0853e6a39ac3f745b8df1f3ba84e72481b027ef3f734f27ae86f3eb43d9e20397dc131c4505cab8e20d2b16b2e5cd8466b9ccedeb0188929c70a428f1910ee4bc2532ddc3be186ca64d84d6fef255963f50e6e6d5c74ca5689545d07d8cadd35f7472bcc9b021a634d1dce20553b5cb0811247e18c8b8a821616cc0aac2ec3ad3bc9d8aa578dee26e8d2a7b713f069278f12fa73e658f816601ed34e6b62ed5a05b7a1892fd33181e181e8c62ef2c053406877ee145be4d2dc00884ff32f41875059b48ac3f0ea1c7b9e2e04e3224579401c4bebb260c83db9271e6a47f7498addb9725147a810d422817e61572acb71827265ffe1eecb24b64213d32b5ceb59200d0fc8240e39537bb6b29bb330c56c0fcc46c23df38e82f703763f37e8bab6350491bfc6f278ae16e928cd8e8e8a6b58c2c26c6b3285da8f1b60ecb903e470a602f7b640e3a285a9ed8fbf79dc70afc6a16d43523727c5c1150b9f9b0e0789a15152d644bfe3d4800ce7d4f60a0047ed662bc0e5b11493f60f5f3003c74b16ac4d613061c7c5f225a62d7f0e14716626d2fb272e1fcef1e34cf97196e33561694e6141e3c0a076ce535b5dc41372e436d05d9e6690c196596841d6d11bc6ace36516dee9e49c4179388038c56ccf09f2ad40179f6d9fb13e4ccd76157955e96f0cf6864b6b20b6269950efc6d807f2c7feda5fed2147b752546e3fec0ac02eb6bd8a7884e3588f0c0e34fc2fddd0aecfbe9f2d5663bd33cc0c217a9f64db692a6b0204b0e3eacee15372e978477f6f5a25a4c97096bcfca92bfaf54c5a81e06797992d16362348e2997c5cdb38bffa1e9d334a00737b63c764c1441d76e3ba2b2efce182710783a172293271bde8b0f7e898e033f6fff61f14fd1ad81cdcbc7fe6345a77060230513ea139510996f79ae3d70a30ddca5d430c0d2c3101d99cc780d95bc3f982d79a19c80e752198021a16f62ce5c2f225a1435cf750dd3fc068f1ab371fc85c88ce9d44f38cb4281d1173a818f88ac8418e06737b01f50513a36f60148bcf8b844a1c79cbfbd613561bd1833308773fa3341b46b73d0cac6dcb549ca57138ba4150fe25a80b458a22edb07df53ddd1b136538d87c4417fd85a4022965480bf8eb58842a0ec9b4126f11240a088a0d0e348b6d0d002a45b867faf49612ae81c0750292cc610fe2bb6ebd1dc8f9dc2cee554d652502e12717fe344a06c3ff51395c80bea508121215a5612a53bc501dcbfebc4b5053036a7198bd0068e2d798dd910948c19ad5dc06f85dd7b9e17bf9bd439e6ec28c5f48264862af9ff3242b322c22878f3d3549259c3aec3d540726f3ede703d63136f32da973dc34602bead0f5703be695d4afc2eabba292601d189c03975280a47836d1695a9b49b7fe895b8d4de0d0c728bb8c9a08f190b04b8401348f0ee312674b14318f5a6c68dedffafe8e89552dbde918eec2c8c1a70b8be191471656bc841930d442171479f562da1c2f9088b1af614bc1a3b4b38efcc4cb7a36452723a4dab4196b4080f6dce77b7da81e04250d736a9fc54b02dd75fd1cf19a0d55cefa918e95c1b81b3619848d64f20099c7df4b283ef4e406464e0ac201de11f311ab2836d9a4cded7ef50bdb7c2890f0aa9b177733862f41969fa08f2047119623488ef350dd3aa8ff39f61f7e6ba46c19d4ec7130b7b7e619021c59620b1bfb162c7c1fd552d0cdff1c32f414773ccbcbdede4433c1f58c465c257c50ff3bdc759bae79316915a548bc1dd66607b9572edc8682515fedb06a1eb2db57495580117bea3740605780eae2f40815ead4f82ef23df39a297c2d0ed1044088083a48fa3a0592337e69d420207f4f4ec53f598f017cc4dc99af42e2162652df701f219444c2a414906bd73be97ea629477c88a00d39420da6159366cfdc9b38d5690c0007d6f9e8496182d7edda53bd60668262fecd425126b47799f8765227a90d4867ac661b8ecb095fd26c7f42e3c516f0589c48691393785a11139f4df1cc3078400602bb5e584bc61aefb99a7a1afdff4273dad07ac631a77deb1782107e21c980c90b1196c93e0dcab25f1a829d9511b00aa2c27b9e4cb0a6e0a25d992c38595be62fbf6e74658e1ba5f04c34281093d93bbed4d83945ed12eda23a4ef061626a4786ba15b60d16c44120d4decb8eca0e406ca4422a4995699dc36aa3a436c5a98fd86ab9f014c02e84f9c19a49acdb0b2d7f5a641a37d6ecc3b36f65681f38f101b52cdc8ce4baed0fc6d0eb98c7b6e31158b5eeeda261ae5093dd8a0504dc7f267bb60fb4a3b95c08f93829480dad8b70bca2c6404ee189eb30ffcc515fc6272e3ec8753f47f48578867c89825bcc916e9b5cdf3e8779fbd1d61d33d75ae2bcd14a4a5b7c25438660571a49dbbb26aff261466c994bbdccece3eb196c439b23deb5c77d369dc19c2ab6d5ed3e0ae644215e3f20af722705cc5bc1a9391b3e1cc12cbac1352a262ce58723cba5cca12c0f65ea5b3c85d573680e96269431897afc53f949afe6cd9f731a4768ad47ae7b9e42fd84d22d0257afd6bf7ae070bfc40ad2f014e30c91aa4705581c1b5b918f8fcbdfdb7a205a44bafa6c43af1db191477d7cc1a2f23199e6d419f9ed0217e0ece69d090bd36fd1c6515f991535bf42b7a2fca98d5bbea4c22d5f38489d7f2fe14b5f54df486c001f3a48670118b47babee9c050d932511db337092b64aaf781cbab4e3c291d758f8d1d92bbb3e733a810e7e21b9d00869c08c48b2466a297e464ff4997697ba21aee5952c730e40e7e01d8e71fe19525dc4f53652b5054454fc70b236b790f9e892e6b38337007f5ecb2f667d81884aa97c519d513f7e6f6493570a72401498465f853f889d4895b950fd00d5703f3dac7ce8722f60c3c74247f5d2b1b33acf775f624418f91e50f7e19000f7d1ee57e795fa6035ec0228be4dc95e69a02a9b5d43a0ad9b99455ee17f83cea10de80d5e935f1b81110039df09eb17548d9416f37a53e839d96250baa254e769459134f368d012021cc4bd84a239cbd66297390ed4812df7b24d27b509585c742cd7fb11fe9b33c8d4eaa185ef6e498a811d90bb235218d8e961e27dff4bc298016f6b435a13a8c3f8cadbd1fb76e5124c8ed8711184589c6830918d3e5357498d04ba7f6c7b7e0cbf0778f6e8f862761a480b8636332df3d85ad1f1c2311d37561e9c03b3d1eb68aa16d5625bdb85eb1b9a11051bd9657bda3f4eee2881b3c92eb40216154f99ee5bdba42d840fe4e1b318c698610902c132535bba78bfc765b5d537a6ca068f82292d46df0437ff5c7fce10012bd48f1338040756b3cfdda755cb431de15f83113a6f1e5c78f459de84dc63d7139697274a640c1e5890a23cbc10d10abd1087ffbca8817221dc537e40caf7e573715768100c4ee065c1bec1c1ed75df71273cb7b20c01ba54e8b9fe5ed953c4eccf60ded00c9815976f4edebbeddad89709c30ad980dd7309e0291df2551397a5774a119e00fde39cc24746f007db7ac18e219fbe698c31cafe674e5a833a0c21a664e9c851b6a23e769e80dba4578e7783096ec2c813e8b1c5ec2507ecbf1acacf4e08f90adcbe6f6fe1e241a0ee9cd223ce74e6c15d97be867d0ea824d8d6bf6206d32e5904f9689a4d5ea1a22f50d8c01cc85301a65ac5298fe3784c6c82ae67fcf39c6bc64fb13cc9b5df87f9e2aa3ee0dd80d4728592c0da8a378a958da9aa435613093f6ab937d212d6952934ce1f838f6c33fd3768720f093869c4398a039868ee0cbdc4b9dd41c43a4a886aec5a84209027f364fee6610318bef24d8877776ce55b8208f1e34f0baed0f11699cf299be47fd7bc71c2f201568036e9a520faf84b10b467e5137f49772ee1c9350b1993f562dd7aa14b71951b60f2720dc321adcd1c10f1fc695714f21d26be1923e828d12fb4ccb2d747cc4139433387d2aea7656484541518fc504c0db2a4c374634bd1cc0184d2c2363f83af316e997c026beb111bdae92563cf61f65bde9babe35c3ec45c770d5e42bb86e7453be422cf50af45486606d989cf573e4969f20ad2b62b73eb050ed195a16ae63038e90a2137c70eb9100d6fcb34d4bc1190a965238c9ec1b35868827fc2a8ddd333074d02e7d62f04d180733697d2ae0dcdf9b53a64dcdb4d414763f45cc02a613540469e64096cd4e3fb05d0130bb2fbdb786083957449beea6317480446c05abfa72be784c772769b5f7f406e33ebf047c71f1f7325c3213cdf07e11b1fd3fe15a6ce73344621a0f4ce1b91bab939db0e1684a027e5f9d87ea2bffea3cc1c020d7763886b3741f6c9f7d785fc80d19f47443ed1a5271c9ef97358bc6ee576bbd22bfeffa4283fb6b8bc91201aea6b09774062414dce15061f02b9558324053b697ee814da26133b7df2e05a62d63771f58f423458daafec1e444007f58d367529ccf5b066bc4ba040e5983c39383675e9af9e92d856717e510b03ab9864a262994eed4b6d343acfeaa6af1b334e6b1d797468bb1322142f75dd97c4593b7818660f35fdaee76560c93f24927961d8227e5f6098039ae60cb59b9a28f7e1ec3ad6894111bf4301007e4dae9d017339d4abe373cd888ea7567fd20a65ba4af05c637f1573f6f54e4e5ca59c11e42d8dd4662f3ee856782113850bf93c3a008d0d4fb1157e328d4f81416e325a4bb91f1d19111af2c19b7a384c9357cc62f41dc0b7d27a4142c54041759f6f07bf577493afbd8cab10fb49045cc852c362a5f36b6eda323b571e1f4e826fb32f385e41555339202e1a0aa48f3fba44abc6c09b1825ae79e18ed24550736fa4d9652b53b4d69f5f92fb807d75461010511c1f21770b168f64a15d0b88587dcab8bdbd94c5e40bc5bcfab3119daed042a120a433d91e70a12281465eeb01c92ba4f69ee1f64f5f43b25f836fa6544a172ed2edaa0f2568e93ac1416324ea27405a582cb5303b7a4958e5b21f26fd8ce569795ae1cb709c65eb4e1b25b9bcaaaa83df5588539babf9ac20b9a242634bdb93696bd4409fe265375b6a5b8b2e647561d4f727ad71a184fde07aec989c0f7e191088ed4384a62c9ee3dd55088e1df5dc4e2608b3348ae6fec483a9bacd9349a066db9eb871815ba19f5e63e49d49029f16484927cd43e0453edd42109af5431f93ddd26662bf533bf55204254042a71b4473cd028487b2243b60489c426aedc4f3d27eee70b842b657d80078061c82fc44981a3f37bc3b6bd4c81130873c9f75caa8ad2b3b8f828732d40611f114a634123768dc212e7b49d54ffd3f6a03bfafd8884413ef320116b103149f6cc9ef796c043706bed1b29f7d58a6317d462729601bba6b1a46a3ac7aa02b48812cf1acf53a12d0a91901e2d3b4ebdbde4270b20a56f9f8a3f6872ce97a6f9597d1098804ec24b1f238ff4f18238e470a66d8369ce980ced4e6625a30c41ff04c41182fdefe8690268e79695152efe14e818d63a7645289a70e4e9b1095261cf7a06232df91647f42ebd617578e51b6e9ce1c86a84aa954a19aa2baf8ab33d9618bd8f2a9e00f62e2dca88931a9e0051a773ac698335eb7187dadf78bba633089c4bd011eee774f0e3e953e4fdeed741f435f254baa60012627266170f72aadbbf0bee60c53db0ef85d872ed7c5415eb1f6969275cd9f0f0b13fefacb40469c6bdc85cac778b7678f9b1e07bcbdb25db1832a75bba00d7966665b9f6664025c02b3359b740f9c5fe824edeefd9ed1ad639903dee085005a651c2776426a23c774faffebfc0e5a7bb3ff33e71ffe3eb9811d55fab68a236f7f925ce8cdaf6fc97061a9f2e481e361d5abc29e3671a6ad16e8d16358928fcea8e1cd3ee3606c884de589caea84dae6d7f88103ac99aa966e98b270f8e2ef99ac9d801bce564682e41fd933aaf475531bf12f70128f08f1ea2ce486d89a4324371ea1bb99911ee357f8b269d5a3ae4dd3867aa46f79e9940cbfbb6b38951721826e33ff0b9208fe6911746fdef55f90c1f1352ef38d66a010f440b5f37e75810299b032d211176aa17269ae68172752979859cccb4374da843080bc86aecc9bacc24e9782a1408783aaaa3bc5ecceb0373fbbc70c37c3c3444bfa84db9836be68a4894bc42b224372bb86405eec8b7f9f614cd5f539c9b0a117bfd634aeb337cdaf73e35ccf03b9594aa15ba9cadab8cbe9a6a648da3dab8c4d9e55f2e8d86e2824091f46324aaf2145e8d7b00a1db161b87adb15369f9be3532658cc381999e503702084d61c218069bbb683160d420717d028c3dbb3413b360963c70f607014a947ee9e3c1336a6776d98fbfb671c2b1dc00f6377736ef3d308c455a5ebcceff8a6fe7cb661de0888a90caac1d97b7da09906885d200bb0a0d89a914a155941b5dd49618d0ff77e56b32d77fd3539334f68b6946dd155300665ddbbb7c16a66bd5741322615e290a3e36f81bf8d8c70ab58c57e800ac6cf417f292925852241c490ad4fc35b65eb031edbb208005cfd5f29bc984f145a3e6379c16b3f36c790b667e6389a0995214f6faea9812f3cbbf92dde31c32b5675cf0c07d7df3d0c7d79befb4dc10f51c0680ce0891caf5e041086705cef08909b57c8d8cdad3368d3328f02b9f50f6266bc12690398113c9e397bc8f400cd12af51bf51f54ad819015f43d9d66637dee1fef80f52f7d5f7393263bd69235483fe3c4f0c58332ef7cc377db836430490e4b148839e5b77c69576085fe64a13d20e0b23f9b5ae9885f74281dd44910448c4a07c009a1fd1e2ab9211b1030b0ff04d8065e0b612ca03dd4270f74c9f0bbc5c17c89761f8c7fef9ed17fb250456417ccdc4c40f4e92caa9d9f1bf32ca3c9e0323a246d2b4d833126023cd2aff0c6a4ba4fec92957f41cfb6128efc0351f1de48b6c4c010ab6399192bc7c051d4f95ff739e7bc6bc880ca0913762169b6e27b39787152942f2439e1a8e863b86135778a689532c780f2531b4aead383c50fbb82506eaad7aeaced51f75a887d588e8c086a0bcbdb1f5bf94da40e016f76d95dd65036aa27c850445c027048881beca747df33b8a642938c932d59ab5d70f1f97aed7ac5051b4bab0d8e4d4dae0bba5238c2e9d76e1f8e5d3988b2e5ca8115f7c56fcf48b748e1bff0e0f01c2ec0503285440be18250f7c9381758e56063fb6842b2b27ef09e02f444e19f3f028a701a35318d4362aca68fabf8e6e9cbe3195b278c10b2726942f751c797e83060db964d8d01c2737b5e8fab47940ab7011ba1e672231156accc8b450f33bdc444e8b2d9a0e6283a93f8852468b9ba90c67e96968e27ea0cef47fba32b5cc1971bae0a6344ee495699067ff4fcd5650dc07d77483fb7d028309e75884da9c767ab5745031c0ac9e5830a7f6d2ae5d9d127161a2c20255a0d060ca71052340589fd4dc1e6ac775f2b558186f114b520fc30dc5d3f7fd16f305705fefea4aee817859f69e6b2cf6f19703c7f0ed6ca7ca5f338ed80f2e76c3cb04ee834cf7da24273cda9bd675f923cf931c8b0fcc62af0052e78df2a971d439fe88da3857a35b949f9c34aace0825941c271e1a5ba5e0094183b1a9e068e8dc6bf16de0b0e882fb013c670b2f1f3f6fb3b9faab020d51fa177f1c60fe527e9bd3180dd7c4e702393d01cc68a397e91a3822df6e3867b20d60817b70f94c2553b30f7350bc68759bf7db850527362a648bc268faa122b4ae2747fd40ae09f4c7af94c32d0f6f3d7a275a6b81f085a37ad8e3f72a11913536604145309021b1fa068c113518b7f0182bb34459803cd8a904d8bbee6fb53e7f5d7aba898b9bdd1548ab650587ba888b34c6549a045ce53de84cd62d43df6c4e316a65ea6b643fdb435b4b73495751e66a2cc5c8b180cac2824ec9361f5307c32ea1ca22f42c69e2549906becf466e70e8a65e245d7c0f5df7cbb4d97a244f0952f9f96f0786981545d5dc37ef870426e000c49f673580c4e3a33fa2e50a645528aa0978e615a952d6ace74ec572845be4a3a3e8a44b380f5c05bf00d800b4e238901b0a0941ae58ecf47926d88afab22f251afe8c162dad4e9dd521da1687112a3319195a5b8cfe120c2faab51cc011697a6b7cf6eb96cb72e22b8ccc26a1732aa97b5644686b6fed80ab7aae9c53e1b5148f5b10ec6bec86b0c47a10323e130ddf5ac9e9f1d0fcafa24264a8c3a665e87479b8fa5b12b4282d156f67a34ba12772f0da9d2a62d1b64d46d0073efa0b884d858cf93433e859766529fdd962173851f75092b9e8d9caef29472b993dfea34e1083fc36a6430e7b85d7bda9fddc553b078f126fc7ada6722bea752e5e675a2af34f81f9bb9fe723c710d88ac8406b8a0fc19255173586e76ab39144eafa7bca2066ef5f71167ab5374a51811c945e29227dc9eb327179ad25856df1ffa93ae5da64b05d08aa46f21046198c8a2f57458328a30b5726d4153477ef0c5898f785608e63c140afb91b54dd169aa6cc6feb4d818a77a44ec9997b4e320f41691e475aa683851e424a63e0684aa16c0404ccfe02d85db51766f65c834f86d0856fdd7ac1b5258a024cb5973963858a7222f170fbd6d911f1cdf7f1987eb99be83cba47440002014310785d2b9f84219a37fa8ef334042917b39b577d5621b0afa1153d1d8f42722f625e02dbe6ee973f5bd8790d2508befe11219e67288dc3a39a6bebd2b459a99674d92682417370386163a22e0587eb55e959ad6480efd5b948e666446687185a10b8751a8b52caf769db9df08b67df49230f021b7464461612d8e0b8089a318f4a1f4de209fec9c44796f5bfe3ebd74764972228a488ea46e2bb62a41ec6a38f7c72228480ffe228203349817db77ee6f74d2e7d781edb51a537f948ec4a36a089d3d608144f6949480d14a40252f673dea02f7c8a7064af7a7fef06672adba41c482d9bba364ec92b3b44caa8d5d90fad51de1365bcd8007275a8b46ee8849468db46ee2427e22e4ad5aade3d2ab31e2ea8fbf527d0a63904e85850c4a574286f958890a90838cf434df6de4c82b9c5db6fd9318cc0d4c9d17e758b8a8cacdc539c3b10bbdae51800485e9b2ccbb2980e6df8a117649538a5063918a8be0d58bb4a054d27a61a344427798202c443a76faa3b42109a5254afc9cbcfaa94f94acd7e8a99b649205a2036b7b16f6772fb5d5601e6f4b67cff4338866992fa8d873ef9e2bf954622ef2cf9eecd38baf0a46c22e23900a006e6dc807548d242ef48ac147635d309a12106a8746333c13d3e624a536da2cf51b79c8d93c35b18643a134256a584ee7d293b579b53a9b726afaf9b71ac3b4c741096f5b9e2994565c15df321bd18d5a52e5413e9f71a5d06fbb67978dd0262cb36f51251bc54dd6ca62a23a24df2ea57fc1a6375c6e6d64dc3127487026bb243add2204214fb6758571dba5d48140e127c4424ceb6a77aeb1c82227b1afd20512cb25640b1218c5af87cc293241b00877f199717f66ba0de6f23f8b9d308765b9df21336b7e7fe101f6a1e44e1ab0096c556942c008343ea537fd1731572ad72c938bcb5e4e21b0f4a42a32f157084d4975321e81e9b1d3df4d0405c7651e492577cff61514e42acf13f17d48f5fe7e415658ef4c24f10be730f7dc049f187764f90fac6202fad6e03c2bf6e63325512a653bfd075a4fe0c0293a7050fc46b52bbd843474424769a30638cb3aaa641353349d0e549a37907d56aa50de7fd633c843ec8cffc9441f70df1536c648f4c1efd3834d797fa99f9f1419710b398d09895fdb9b9c5fbf2e939d5f2a0de2eda500253c7c5e279101fe1cc397bca41998f5f9dacc6866d41f77966e156eb3ef1e54b4d142e173537ce16cdce9fbb313504cb45b8f344ac61de19e95f95aeb1ba3e3649a2aa3c1a5fae830d802cc660427581b206264e14ead2126673ddb91b2de1f362b4336ffa77ce649b3bc91d3798f60e39146c5b927ba7a16e8211956adad4285069a77883b9297a80f1b5567d336e8182582edb75a98a919b1cef780f4727bb58e4d68ef1044f51055691796fc5ba58d98e0eac157482ce5775d495f0dff76e022e867e77755aebcc63467dcee396e0c6e801aed97253abcf417fdbc0fca9f64f364abc52d2e08ad0c81c9b268855f7a4770ff68a4778692cb5c9400cf11fa54b57e764533dabc7c614f60f657b2317517f2993ad184c1e1e325167437e61b708a294a07ffdf415f9ad2088a0b91ab44dfe7b4bb7724ba5fde489d9cd490fbb479046120d66c0299b1fc04cef36b660371de804c5cc26af060b9b128381fa6061c7562cb4ac99cc9284ec8514feeaff470062f1c421fc4febd2bb80d4c0aa301b9b8d63769cb84db5cb4af04d81f45bae8361b3f0b0505d7fb4399b44cf739e3c1dcc6088389b1485d4a3b430dfc08aedf3eef32d81518189785748e62ef7d93062f083ab1374a4c069df23ea2338ac70f391284dfec7dea39154b295a709361ea9526bf89d9da203148c42d9b8dad31e6f479173c1335f4c67463efd3d56743afad904d567b8e6d73384f31f2a75b80922e3fed28c48bbc20d0c3e9e4b1b2d1ee335edba506d1723204c73c92475ba99010fd30a0f9161e0be508dd9f84aa131454c27e8d28ecfbf0c329557b870721ec53549609e040d2f8c876cbed53a2f0ad8507b8bdd8a063d9f125a0aa821d83a72fafa82ad4ee6e1b6ce1aae7a63ee0cacced4e6d7e2b22e7e2fcc8d0b629fc3d861593a396f7cd04a988b17107fc71d1311b3ea5ef89b5723f7eceebf6cd0cc998e629837ee47130af27e9fdd128703e6640926e32c05a1ab1e7bdf99aacaa87eb141aa80af45c480a58f162c091a09b3d425aa9747b5cbe4463a29ad1488d0616947c4ab2be0912b3e4777ab73c66cae9a28a83a511015d355296d308631dc17de25f98dbb41db822dd5d5ffb28255593905acdb773799b035323f6ab70f85140b0a47feb16b3d6af88139c94df5057c86ca1ce0d0ee8d0724aa6756f60bdd16f19dd7c2f8ddd6c1a4376d67c3563c036a2aa4d86222560d27a423b2278c7761b66af4d6df2df7108860b27dd4c421ffa84a3b7546bf01eb91aaa7675c373ab47f33736513088c2e19c977f7d438041181199941fc63ca44e3cdd3ef6fc91171034d2a63f8721bb15aa2c04fc8146f4d6be9e53ccdceed424d11812fb47144e48d67eeb4855f91ce9d171b5be4340cf6d8ae1017677de0b68898faf113cc1fb7ec20d053bd300fb329867aa178b404429ef5dd803930b5ceb852d3445d291f705690a325f0a5d5cf1acd82eccb27357458ad6f56ac356449f0ecbf2d7fb79ce44fd6836b7a7ebb641cc7cdbfdec522a5921345e1146f8bfc87ab802baccc96c67d865b2f1c0e9078991c197cd87b446410a13e876fc1a621ea9a04e58807be0e1d4bc16cb0906b0394d2406d313a5fbf04ecd601ae3d8788930d7b55efa28f5b0f6929432b8625688fc8afe5c7d9069055f67c8321bd157d2ecc256bb2f18471ddbdadcdf9101ed97d259de9cb37370796ebb7dabd1f0e17a0a9cce619467d36b7506f3aaaf25f795d465fd4f1eb72ee475a02b9efce5f529b51ec693e82356c910cb5c5da4da60b76202ec5ebf053e0579e720acfeb79d51e02ba91ccba782defc560f5cfb29b5edcddbeeabe1969fa3fcb262c2a5b0bcf58e464aa1ab5f2d14d02f6663cf9adcfe94ea2ee52955cb6bbfecb859514466bc88ca42fbe249270881aff7197616a2f5c48f095c7ba58aed2187be0419766a77ec18deaff93e6cc241179b24a1cb00030297dcf712d1cc41fa3e4491f0133fa33ee198333c1603ce0eea935d7c917fa340ae0685a470308ec1bf3842111adcabda4b3b6a2e4ff24afbd44b9a2d175ae8f89c25b8d7e4a142fc42d1cef2bcaae008ebbbf5366068d3ddda64de8e5d53682350c2bddaa09019d5e51cfa589585517c50a40de5840c17f9147493c01143a46677b6ef1bd578242ecb49209d44b503eaa18162fa343104730859f96c3169d1d914cd9314433b2fd8f4ded3f7d488296bc922d63e108c76d3246241f3c99515e5bc26f7f8c2a183ce5c95b11e196e0d4e988ddfe142453a56ba415c9fdf16c345f4b57af2e2ebfec6d466dc542465f5549d22e915f2635eee2ecd7ce4df87c2e2af2bdc8a5178a29017d7ead1cb61b4d3d165f3c5b77fc85c2d7bf80548b7a84c8b4ca518c59e82a3f9a6efdd7438b31fc098ff5bc7ce385381ddb0acfb01eaebd528f0f036a3825ae5616419c22e3170e146a8d25b1d15ff91039cbbe539c494dabd0d40c20e407c185bf45e7e5c760059516343d18dcaa953790b4adf2c9ef53ba766c7b6ecf5b70dd2a21d645da703136aefb1bfa8d52d68871893d9d691ec51be3d9651acebd1181fea7e8e18451dc72c7363357b755c92ace7b021f2168c24e08c744432a018e86a06794f50eb8845cb5eba1952e88c3812c750c7854e0d9992097ab04aee23641747decb7adb5f4e09caee9dcece900d024936b6b93284d5d37b2975109de776b38582821663dcb100f1fc0b7a36f1a3fbe51fb4a3665f877458f5438a7c919fb4bd32ffc54a8f042878bc78d2ec5541dac8644db61abf72f6b98603c0f6490e3dc01c26c0a0e88195fa2bcc821875c3ccf7ed2d74ee900094bf50a414c1b1ee3f38c7aa4e961bc0775b8f1ef26e06ccd8b2739cd66ff974c798fce3f74b611870219786fa0200bb0ed6b0a8fb346dba25700447e7ad310af54678d2bfdd551df83da0cb5ac2b9da6e2bc718f382d5fae6c6768e35fa66284ff71030d52732fd4551061fd7e634bd7d0ba99e7517bd3a539efbce069df5a94cd85a027f69acc39f097bc839bd494c3ffbf637e71439c71f018684a774d3dd2ba7c214d8d41d63ce3b568cfb6ec81ccbd6e7f5db5b2163231e9bd4272e6909657927e6d16c23ce0812c3e2325d3915a4c5a057f9b857672445aa6c76bcf40c5d98664356d3e2f3964eadcfe8062be66b4b8b1208e33bb8cdbc060a81a58d677504ad3474e89f8d2acb9f9956a89780fe010f98b2432e73ff14241318c9aa2a352bd9d049499c67fa8ca67dc4ac7b9d5708032265cce6435b1b74e5022d7269edaf6f15e59be220d34c553409a8c14cb6086aa264fd27ca9f9408584641ac81c2990d2123713cfc27a95523afb48fa53ba5439f4b81573c4be169b802fa39b8059580853f3558e8a0c231c5a048b559fdc93be10726ccaebf08c3e74bd75efefcd74f330309bdc4d08a0863cee44231a5b79adab67235a167caa353c0d0726e9da9d5a0461cfaa1a2347c619acd71758c510fd27e39c372a29abd8ed6ed6c1de8fe2772b0639a495f7a5e65c30bc4d8cc3f9c925c02235eb6fe29f8111108a2ebe9fed4fc34825fd5b135b920fac96c0d4013eba37ca1332b54c3579c5ded9adcba0fd37985930ba227c889524b6fc4de38db2abf74d6170fa2751ce10c0bd67d1796372a60fac7afd2ecda30df44905e72afb7ff7c3adeb4b0a1820482fe650bb0c5821b92ded44fe6688b29f1d7af936f055f2e35de9d153f2078385103141c7ba825f61a981bfe58de8e652f47388729c146042dbc346a0824b3671468b802f267a6035a73d0dfae2e1fbb7e791d3e07d18bc77e001084c6acddeb25d0303ced7fc480455d2566866a22108a4597449a72dd7bcd2575f5919ba404dca70c430bc340ee43bb9166e355d19666261c79625feeb78d217945f6b4cffe3bc5fe02e2dcf67aa437fc19a4582f42683bc78b05480f30ab1dbb4be6468ad49409045d2f51e52f05f1dd95640b8ff9f1d3e5de0b6cf25d69211c2689edf1e090c07e573c46c0e6d836668a0ca837248ef7a1bdf934e8e0382456b3a9da892f93d0e879571b65cfe1cecddd7f7ff1ea17de3cfac38cc75272fccd553e8750be202a4cab5089660a329e18cdce0769c3aa4581e3505dbe37d5de327d7bc203c7e71da3888385a369bf1255bbeb4ebd0bdaaa368ea57b056197957685e3f4187255f61a79c81d86d03db44539f2fc307c07da06f079e356e5c150822fb3e2334d053d144b07b2f6ca48e0b84d173ea96b35e541c41c9bbcb0be5f690a190ac61ae44e02b6eb77b642060a5e973c7c2dd4e9fdc680c8b5c78072f74e5de3c1bd3e8a4a337e7c7ae4bf8738822c9fa115d41030d3df2422a11f3eb015ab091e43c85db551df84db35993d5ad11c9e90547e3e97f26fc27f8c97401a4fcb05a76ed7e1954458d13d828870d61517eeaef2fc71eacf4d17182ac3b66a7549b9b0fabd3bb9ec8e7b16e34c82275540d8d062dabd90fac9437d1085a3b991484be50af1365ae5dc81e156119b335cc4e61aceedf1743be00c8f6336b3b57858b4494f3d77812f3dabbbe3dc7e30ac41307ab5f052045a5a4160b0eb3e93c79e3a7173ca96e64ece287256d80dfe9d16510f33e73ad4e565fc60841181b785b8625adec5595fd48c9d24300de24d628cf16419c0e645558c9e795295b91c80b4e9a6e1c91001787e6f6c85e53bef3cd6729146609830a4f305b5e4df1ef7cc140cafc7f60ac26963938cc20ec5c488ec1f2d0159e2048b440668d2cc85575503400fadb7c03bd37fa88d85860ae680d4bf424a547a1289ac16c9a048e611ff0559c5ba1bb8c78200fe32b1a24f28f9532d4d05375fe5e63fcc3e92a7a3f930889b8352dc511e23ab34bda439251f267e1b5ce81baa8009f5a28aff9ae68b15fb9d6a9adfa96408ecdfc49332f5bb17fcb491c59d829cc96ca62b0100758855634c8f44961a18c3be13adc159c32bfcd7ce038ddda2de6dcbac27c0332c2331c553ad03789ffd56ed0500705d9e9e2988fa5ab88869ee16de15fd6297117072b742a73c982b623cacda7ef57bf2fcf3e0e1c59107687a6ec98b18fb9f9ced1e9319d4bec8a3c92b377761651deb3567075685d59dec3ddf563bc98b6dff22c432c8436496b5ee5ce035db75923148d57e363e8006b86c6d382049370f15a241804409e4d325fabc1d98a96435ce9cd9bb757d7d15a1ae6668a8c9bfee47778c3f5a35a6d578e46642e3a951bb774bfba5643743f1844ec33fce6b354fe6068111d9e1aebaf63c9dc7de1103303f2adabfcda7320864c5c9e7bdfed5533a551f2b17cd31d83edba19f8a8a872d7deb27d2b1185a1586c194c16015e755870e452d48159ac21d676e5a86e210b26ffb0d9d04908cdbad110d0d7a2c2294f702ba28ab00a7436f913eb47dc291a41d75f9684166325e33f2ea481eba71b96c1d05a0aee3349eabc52c48acd43083b19926a267f10cf4efefd6562d45219b5a71f3c93ee08682026c3384ad7f738e22cf27334dbc2482c548b25f3fd99b367ac23d2cc97258f8e9b4a01ae8a055011a04720662e839604bc5bf648ac39c07365eee1faf44373bf847671e58ef041fb1fb4742e748532eb1e1beb08008a9e179bbc43950720f53aa6e0101ff9270df9be02cdc02d8c8bec8a7b20843957d9582fec28752d3ea3d6dc42840a0b2d5a3dd79d6a81b97c424ae574d12ee3dcfe6b3c9c086622749ac4cf495cdd40610a295a64cf0614f097ce9548e244e7612ec76cc16c0ec84c2de6e0770e2461605dd9b4e86800a86ba5db7e719b5eeb79067ad665a3bf6b0a31f24b3a9dd73ea347c88b1b2850550a45ff6f507f9f2a4db7aacd08a6ecbf6e985a14fb80108f8147d3a3c9c708f3b42f3c5c2095107ab64f0f430b3275b5d0a150b9cb434ab0ec22fad820d9a7a33dbda5c552f7de0afc986e22db5f7662161e0de86009b5a5d11d9b17a0d476155ff6799d3882d337b0973fec11a92d99e3c2cace618a822e4f1b11cb46ab6cd563c373c767647a8191e5f46026e41fc05bd358a653c80098813f704122007d72b840a2fdc415029c53b3c086961cd69290bd8fd836b5689f2a46b15a67ad54d574cf9ccf6b2f18e174166e7b7dcda1ee28eb5cc0e0ca3c39d36621fbe4e3733bd22c648be03b3c78345916b742bbc7287295adaf6faee592bf656f675070201cc7b8edb607df8f19d99d104c2d51e093a5ddbb7281c9cd44d8111ec81fbf3da8739e37a38e37f5945e09e8772cf921d2cca4cf4bb3216b1d7144d39db432846389371b0352ec6e888748883488e4e5a89477f514d77361a1fc26101c4803650e441a86020d349683d8bea470ff4407b098647ca0986bedf2d61db6c3f6e9f59750fc6c099e0016e0476b11df0b6d3f092da0b931f22854e0ce235763e1251b684af89926c6bf92a3fd2911027de12e251b74ea3c53a4c06cd715190170bba66c20ced8b03e821e1cc5a97e08839015f46c8f196a64ec5df367435634b0d73b0e0acfc072706a48c5f46d1fd032ad90e6e145331c2685847f790ba1da5513728e98f45bc7a0d98b21d9ca6d7d234b76587d4dd70a6f1f27fd323e277af0df01966bc3a8631c3f8a6a79265d91297cc56b2e2a302f6468aa20750ee81cd010873f128e8002a81f70a4d7833b016f6ab5cbca959096f93f973cbd1c68757b4f5b4b256e2b4ffbc13772b293ca84f064917049bf2f1540ef7b05fa06f742419983957cdabb3f06ecc727a4c912251b043c988e4c5c0adbd5201d0340926fed48402e1374ecb792304fa99d9016ea838b8460dda465dbac6f5963602c515d196674ca4ceb3b466418011fb9cc3435452c8eadaefcc30778dc888ff95b78c72f46ce741fe6d2431d93c0f7a71c4e3281c75bacf80df762761ef302e71eddb6b41fe0fb682ef79820ba84e948c134501097fd8cf5f5ec78cc613bcedd1bd1268b29f060cd4ac3f75dc2b3e34a0c17ad5041c58656daae5f0e3a15343d1e51e286f9813b1b1f5c64f9ecf83135fd9f79de9172c2b1dfade6b8a4fabf9c2ce2161db8e8d83720464144dcb929fc21835d98c2be76c3d7ec896e833d1b440f6e755f3d90bfc22364c88a443c14bef18d34eb31c841646776083a3754bbec605d2711d0f29b7293d93aa4b353fe4169b1d0c6e92228847f200461167ef1582bd0e98ce4ec57c69e65375ca9845745548f244b1aafc9c121c8258ef9f5afce6876ac745cc00139093b8caa9188d25b47a3bb930b8f76f85bf63e4c0570b4f727d662f93cb4cf754200b7afddb35d178c70dc7cf019126f755986c8ce9906c3657dba0baeef085938ee95d4da4d1906e7e2df983691e6fe45d99c418a68f43b4cd8e3a74ef162e2d7a0ddf5f23e804e3ef8e570135c81711897c212c7a7f099644bd68494e9f4dd83acbbd6e2bcfd4babb3c966c1ee34b2a323ddc332e862aa4763d63a68b10fcdea554ce56923eb96f6c5d084e7f7b5c8995233ed37a20f201d32ce830e7be118dd6539773e9fffb124705cca8a493d072a888e1528c9418062996021f1ae22f7b48228868aa6adf6cf98af050b4382fdcb42933056ebd2010d52f072f069d3b628efc36fb86af607bc933cc782a6e635928f9692b0b28a58460f8881b1f288b7c688b18d2b6a273222b0d7401e64a2cd8e733d6f27e2f674064493560729affbb31777c27541e72ddfbb6561500d1bf5f99ed8eb3042bcdf22fd543697c8377134196ac2c64086939b68e1f6fc70c56243f4072a2bf27cb01e8b5b2087d53907b2389a4a9782a194429e5346fd910b41517677a47a43576773b08fc939ade78342fa6df10c2b858812db1674f23186c6da07ebd623f2f8d62d49238cb9bf8d71bfac5f1a4a15ab83bbf81cc4f0d6d5a1cc884ec0c7957c5411ba55f240e4449dfe6210b11a14f45f61f291d5b4e3728689c395002cefad5f463c2539a55340d6be7d2776f5cdd96898530bead090a2a79425f3460a1e429047e5a5374c2b5e1313aededc0c844e6016e116d93b236e08b51a04580d80f73648873e18b5b09bd8145c079873d8cc1ff833ba4b44399af366edf7b432beb29e6afe0fa808901220249b2011935801df84e622958ac347246192cc09d48511094bd8713f0e16a54562a44c2c74e734210ec969ad9c0badbe8210f8df667067ef21ddbd08107a6aa902ccb41e343b076d7f64d84ebeae3ac627f7ba5dce03ab87667a01a52ce62d74d5f78432c48e816bc717215b478587dacb39d904be1bd1ee183dd17257bedaba04fb450855b8578357345da2c2ac9bfaad7bc8ff2b64d6485ee50a6129932627dfaf515bffb043565c30faa48fc58901cb04b029c60b83324264fa2458f1c0c7b25750dfbb41c445cb20b2dbd4b9935552e5d3c6c8334cac271324d175ab9645411a7fc72057e69894e328306e16ffef1bbda59554541d813800791d13acc41134743f463432c2ec251dc9aef17a03ad319d9897fec7c59d07e972939e1e7291a27756b51e32f375f9d8c235688f5568f1bd76948f1f5e681ec9af1481f1f45a35759b700ff112af663fe752e0f70505bc8bc2fe37bc1391426db6d4df58e09c3636695977353d4ee04e780882b8e7a28659cf6a4612621327eb59539152fd6336f37706092a75b652d90984a4cfacd0905b5cfbfc85b7326769f3241794eaffe19cb19c38fd257fd19dc8d61cd111277d9d23fa61cbd8216a17a6a17988829bde8e18ab107cc7a0e67d2ab3d51d4636025d907e85415bd81f71d173880b65853af431d98596f57acac46486490aaec638ecddf9da9b0b15718354da6c629c47b7955ceaafd5df090475a3a2917dd9cc04982b81c48971dc1412b1c6bded17685dcdc3b1beb8393b16f87a54932613e7a9c0eabf915ea44607a51924eb59355192002b045514f5a14ea2017683a87538de0e9186c7e5f2015cc161b2ffd0404a03bb963d56c98f0fadc08789f6f49ea65d87e78b5a47af3e6fc39f527b422a2f767a34a81c296b78548211bd563832a43fa1a0e5d36f4e7a4593a5ff9d38846e9015d075fafa4932f3d91a5d5cc01e4e0274812d761ad7ad3abace965d85bd2e80864c7beaf4b05a0fcc7a4a0d004786dead10f725781f96454d053eaa434596b5e09e8f8cfd2986242620984b5962f539c11cef2f51fc7c10eaeea2541cab7109a2d4fe6cadf19fae1daba2271137b2144ba6d3ca9a980304867476762994b779370c4141c8403245c3deed6d43b360e9559376f87e5c6040e6b7d4fda1ff11c4ce679cf1be4e9e2f94004db988f86bcfa21b8f9124a7d46ec30eadcd59244bd12920ad07e5e2ef5d817f1170ce9c6ab1bfb1db249f885733db4ee68634d46dde311174bf91d2e1e93f123f9e51164d7dc2aaa443044da662aa40e0af952fe4b4f4c56b3df9eebd31fcfb56194aa398451620db9451c2d3161d950d2f968f07a141ce3a760f714764ca3c233549aacd39dc396794da7a761efb7742438b2f434935fb37e1a16db5c3347629bb348eb6668819659f8dc3c24459b3cdca15e76c7ae6515c20df7b261641bc6ad8211561e8b6088d22166f95037a768d4bd7addd6ff53e69b35f7cc3ab98fb386e2edb58faa2f8958bc35cfd0451db2a614d623402c3e3f79f0d6f836e6f4161ee9bcac636aa14b302602f1c45df774a09b7e604ad76308b8b4e4c84d002007244e83d6237973da0f3ad13365235ceb5af4f22b7b9d89ae8efa2c8a00425d79841858ca0bfe411d2838f778129f7b2ad22c071788449089f90152151938d84dc95556f701f5bd6ee007337c66858a9cd835e7dc785d0374fb3fc83062a99fad4978385fc5989e41230427d1126e1d7f7587401f55c03b40094258bfeefc9b22d76963c40cb4b2f4183c19d3434c26ab42dba393a7fe434debc7d004fee064fee2442bc9aaa37ff9b14c454670d57174af46d7213b10ce572d4d47a2e8624ffa48bbdeb55289f7059ccd6353303e461c09f14bb18c135f542496a8ef2836ca74d106caf7261c6abbaa166ad661aa434796329044d2d03e511eff52a943c7004fa3402284715615243ca51503e34eb46130b9d0ac48fa46fdd6ce74e29757b03f3b68d3512d692248b33b7e94d5736639d0ee002e12e7011475ba54a5098f64a9432a2aeac611221c6fe6db2824e7bae758e38bd1d2fe2b07180f45db3719ce0976d33be7dc488bbafecd08bfe077613fbeead51e87c1a0a7628c00165256539de8dd1a3483e5fb90e53ca6dc908d53e1a93412b67ebdfe85d75f24844ac7a4d6d33d46fe4b098997a46bf3e1f68485f23d3b595cc9e2bc6e3cc889ae8be6c6367753a4be8d340ceb16e82086569e6d5f513b23e3f4e88a4e5919aeba8be8f3cd07f8dbbe46e7832877335f04d14bb2059b21f02e683c993eb39fdc1139e032363b45da6d6c98bb9b0560f09ef6a628ca9b308a5ceb65c576deae671b4dcde32193280e5f668f2333bb8203c4605986921d5a872b8a1b9e6d9c2ec08b2b2daa413fedd4136620a224bde03a8ca28658473882119625b1a7cf29540ee0d3e5181fcfc97f80e62c9a6ff340bf73924810541b7a1c0e8df033dd9656cf973ba3d9854bec31d77d2903a2b4bc949c6376e92c8feb1de73735bdc5cbafa0014433c8a51acf8517ffcd67e7ee235001f6b7ba22d6949e12d780a4396c25e39e5b1a718eb8bda9958426ecee7d64a259f5b849e05293865db68bc579a7c2fbedf7990e47a5adf83fbb707f7f28ade12b42acfc22427ebafaec7ffe7a49ef290ab9af8250718fe2c21ca80626586939b9c18fadaebdc4826df9cc18f6f74a24b6ebdd860875916f129e26c7b95f64f952c1c9cdd71796da71ecc8000c228b0c17f14be2d1e78eb79ae2ee0fdababfab154049572abfd0bef2280c570c2d0c6851d3db7be956558fb6b2975045964a4ca173fe8682deecc517e7d1396993b4d7eee0f0edb854e89bce645459d16aecbd0200c9a8ffa0db0ce6d9ad88cca7ad91256c018e9ec027943df273d122901da5f250dbafed105963d0cf8738a3b8bd90c6d35c280255c1d7ace477d9f65bf1b56043d18717d276ea96eba26b42ef3393ee8c8395b335e4cbf5390e2d8f6c9a18d335523f2871925401f17025dc77585d307d2806447b10242c886a2d2122cbf7a272a2f90056b6e51263c1ed2383037ce3d4e0a359f165f8ed4f234e05df83ea7ea4a32ce3688af750e3fea423c4928b7dc2d7c953c5a92894826401431ac65643512bacbb402b8528721caaa15f643f02e5cf8e21571bad976c4c5d0105b84b75f0001cc6d122167c39a81d3917536624c63d9a4cc17e3f3d3aca61f1b18bfee5009e67a54ff4e1e51908fed62898b892a1304e6c6aaf9e7f6b70873594193e4e41901eb476253c7782942f385163dd431d0c6ee4db29cec39b707f59c7fa014432d9359a10c55e746173a350d17751e65a033ae6efd89cfe441167c1da596e5f151909de0a2a680319f99db0c39ce321789f7a2460a76827eafb396196472f8eb56ac871c4256ac0988ec0893cc6de0f5dce19f4c330005389d3037c9a457494d6b9dbc814431e69b0e4f6d63a93021951ac9a44c63f269cf1f352a6e1a13ba4d160bd23e8f242bbcf20699f9ac9071d423748ec23c8bc5dd3199b309ca5b60bd279d8108c4dc3b4427ac6ef0f4e93ae41841f99e3dc9e404bdc72e5b9f3d1b8c2c6dc4b6a5e58eaec2128acc1c53a4dca93b4a933370cddd7b33da42cf0c64da5711397cf30881f917be2d69991341871ae945655bd60b96e31f956a11eb0e3e1107272dd29b43f86a896753b61ccab7f9b0ac7b60835a1f78ca2988430dac66629150211b45b33817818733e8a15a6333fd169e655d7c7759d90acc1586bc910496e6ce168987a71ba3b71a8b80c8f445f6da573164aa095709accf97202e5d4e2d2926e6f2390074eccc0c0befa5d9277c0f4e9746171e53ad3174ddf4887c523381795a2a2d7c7fea30eb33914014d4330147708ba0ca62b73a003c81385e51bceacddcf0f047e6fc3e5cd995b8956bc0eb2bcc1564e127fcf6928ff10557126ce9b2bdc577277d664435e4ce914eb3b46d9c61c2992ca13f24a9337af1513e00fa163f1fe48c7e8d420c5147f8c5626c12d8d40820f5766c58a51c8526371ee8f475c7b92bccdf407ab4e97f92ea30caa37d38f8fdab73bbf883009279070d77b8819ded0601436e2fc0bc27fa16b6aa11b57ac9938cee46cc62f74d64ea35e08906318f32397c94dd0484ea236291f84cffd82d7fdb8004e5b197a804060cac867fd6c3a9bb2dc4cff3907bb12385752ba81727a11f4b91550d10b00fb349c6e278c0309e20130780f98eed002b8f0503378ff34ad8f2ed848321c10e2614efc8959123fdfc5c12aa2191da95e3e8871ca7284456b28ecf1653154302474776e17484dccb29c631a8bf10f2d55e6b1ab59290e8ea331c205db200d460282b7077e4672ad0bb73f49f16122a50cdef7a9055f68b85e7c0a54b21e536650628de32444f0028e97571d3a74daf9129e87853231a94c900065fa0fd3057fe33243f5b6e6dd5d86e689ea15c25e3a48ab82c395a4b6e08dfc0b295803504c4525d8fa926531619695c782cd9e7eaec8da5de145413e607bbfc260cd8fd08fc0f0db26e537c5afcda961bec34b9125586c269e594017b1b6436be4660ff86e0ef108e3b94130705dc9a350685116f7a50d1f1e03bbfe50d7c5699776a98c0dbd825dab83ff10b782c4c8402c2ff29815be92837d8bc3b5c7648c29d464d37dc226242ff7b3e4cfc47de57dec835a95458bb1c5cbf6f0373ee9d8862c07dfca2f306916289321be857baec255077f4dfbea07053261103ec9c1128ff5e05b13211277d3ab649b74cf769ce803ad0127d3fc4cce7f58877e54cb05c09198a2538ae70171a2a4c8218acf75787f1dd7680de8a267809ef77c8899e759f83e567ee3267b196af7386f94ac75e77e59ee296066c6dbbd0c8bc654d409c908623164b550e5aa80f40853a5ed4d68998565d45996db69b65c15b3f6d637027000f23fbbc2f31f712340a6128ecb366e31bcb2052b4e63f1ad98a7260d540b69d8b8753f42a6672235c5d02daf03d2529d1073abcf30011dbbb9c86df7a0957c21d650f4614f39b6e4c62b3a18f7fa7f4f563250eb0a27d07e3c96a627342d154c621756733d9ae1610aa3f84ac6dfbb8102e57b858d6e3fcdf2d69fa7955b9d84167d9f6328468b7525cc094e6d4a2b06fad38a77b5772236efd7af03f80e467486c29506bfc0c7b1758afc2d14ec3cc1dbab16ab4fa4fc70e3ac86f92b4de07379ac5050b7f9821759b737e610d0ab86a2683188bcfc4bb9da9adabda5e634833084cdc11e7398b68d8607f44ea3ebb7508925c8937124af6ca6118e8b1205b2de6fde810adade9f0bddb173ba79f02943b1b59db3e02a204a50f7fb1e8fb579b3dd3a608fbc59e088f2e833df117495921c94ef562a66981f87d8f0eee867a7aa9199822c3650275c6c6cefb02018d9c8d600710e21a98f4c095ee86e9b2c44a5cae20346404a263c98b3738804a851d1b56baef977516385a44bb7930848a5afc5a6e0b6574d520d4f899138ff076fba0d1504c98a518135aecb7f87ed0d371c056114b8c8e7f5ab3cc143db8d79e395b69df77598d067275119919baf553ea67975a6c0e33ddcd9995927abc38645323fc439204c778dd37860b56340397427718aa3072ac483bb2bdb09c30b700bed2ce1bf0cb3b48604f927f707ce09b4ce7f9c26b62aeede1c7620996725014a18c649c1544c941fd673c3b67750835d56ba3d7499f670530cffa4dd5a9b12908243587f08e6cf1af2cb49cd4983b26be3c89545d05ca478217d7a18efff1c6f6689e05c8d2b4d89e162e6fb8ecf2b62d5a37053b2d963ff55f036977fd0764a5ab8bd5eac3d803f48f13d51d8f2d8088435af670f889beb905916d54f48b646b1213ad101521cf5c736ea6c894f4b4e5fc911e22f472d4f809409bfcec12700c72f8d3086583ad4af7112c4d86fb192784f33c0a1fc770bbd0137d4de6905746f4f44d2943585d685ea8720c3962d2273e81f16a51eea2d80bcb707ecab29dee150e80eb1b9c1c752b54a7516680b35ff22b901be6dbc9d5b953c82aeca889608ae6ce7fa68cb18348389fc1cfdd0b0aeb304f361fb7bdb834dc2a1a3dc603130e15ac78cd802897a69cdedb66094bbe6d6e1f6256acd498fc72559df5250acbb7df616ec413f37a8be8a359416d30d67137e65977c863ebd2c1d570535988c821f126f6f0737d45cfd5c18a8c8827c0c8ddc705a7bb828ba3d2f6500ae8f263a0d5b793cb1fe55802e3adad896d9559b27a364c544a1ee2292c802d5be1abb632f9831674f93192c8741e4a7f5cf446c1ff571e19f848b381b821108958009face1b2abd74e5548a2c2b90d1d156db3012369269f570a8ed878e0f8d2060ce59dba416923896333e9305d9fe1c096deb7f3a9648bdc790416ab2db37d4b8d331914346c661ad00e49708887eccf2b3b8576731bd9762f7bbf38ecf616dec63e6c9e31394fc9d34048d335b0058107a9c7b9246eb8d4d82be14d8b1147d92a91f0a72b7e0d528ce927cc38bf0424a551479b7035b6221edd987e560f4fadd4581a1d5eea873cf48027b2e4bc8ca7d9f7bb6dde051d5054377c1ed78a30ed411a51da9711f65236bb97e7dc6490cd7893fd58766387f8367ff3d81ae9f996974f120f216fe42676570756adaa38000abb85003d23bf1f8157aab2acdfd0b528ff55ffbe9e46ff31f2c07ebae6ec362dd39b4d2c63eb96772108a49bf2f78e9be71db20d3c042ca9339306ef417d75d63e51bfd724cb5f551db3e8338eb33cdff9ef2d07b2a376f94db18d01bf08a4b6d38e88912a575226f8d1dca92a316cdd4ccba8544b7b98691ffe7d7310cc2acd98525725452a92bd369f71eda4fc5f214cb0edaf4c000efa9f16722bfb55d52fef42395a2861305d0988d9099b6124081130f081b99140cde7210c5d932d7578186c7b1d66babfb0bb0873f35f137322fa34a01bf5e65fa72da6e8e573646cf5da31c3cc381d00eead84534281d6f2df363f5ec872d17220ffcc8cd1ccee74650e3bc72c5d1137c79cbb16e1013a7c6fd2a486ba3f1ff248f573fa13ebcb2e10546bce0c34a6ac27e6cf6915001500d6d242ca079655f2477bc543a9b1aaaee64eac55112ece6654e0c686d93fa163c786bce70ebf667a45cd342954ddc573cb388ebfce09469d42eeaf98a2fd52833efd9bfd3e96e9ab7dc6ece818d6f70ae3b6774d783098f49daee81ac2570da26009cad5f5b4ed44348cd078f2dce7fbd40b87873c40a20494bc1b0e97d0faf300b7db33c213d240c072194944d78a91550d429a2735ac150ca82050b038a4b630d38c6e76bf023744e0179e4f6bf7b1f01af82ecf380948d6a10b8725eefba93049d9ea9389a083d2ba440dcd5d3f32ae1d91684c6632e9d05634f7319b14443f194bb867f1eb2535d9b4c8cea5050ae27d75ace5 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/640644.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/640644.txt new file mode 100644 index 000000000..6eb557255 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/640644.txt @@ -0,0 +1 @@ +573cee23461654a925a631bfd9fa1f28b80608e4e67502df0b18f5a6af4111d12d02da03fe26ce7176d159bfe9ce67158e8641017b51ccb31442ae01470c3800368614c3c252ca7ac390c327b4a618cbee3d2684cfa566f4be6c12353e6e8f6b23817f528bb89b4ffb0839d9a229ec0a21755fdad2620af0516abd0e97e7960c164ff851364de8a813907a267f518d9aa0628aeb29c249fce140682e13901df307dec442094231963373127f490b53bc27ffbb688adf850e900b907df7e843024155a72d23b684a4f80b71145c424b60712ca2e326be7476033660c61810ec6d400d6a1f7faf4b3a07c0beb8401200ae05d5a3cbbe6377dce10b9c0f87333a9d6ed23751080fabbf22a63cdd058435e874561efd5dfbe97743773f1241c28236285f5b1c92fc11391ec80b83ba3d953be3e22393296f7fbe717b205b01073616660708376f63d9f1f40c7f888b61cb8e90c2c9fefdde06f0c449973ec74d6fad55dd8210e338bd90d23f82e05366b68e349ec3dafdf576617d9a81893a0ff5ab49f3505b0b8b3acf1019981c8afb1087d312be82d1ba53c39a9f36ef9064c41e5d42e271c8d9e5db8bd1bf57455a5069014dc0145af0c875a1b7dc3a30e921e43526e2e92cba5f1b50c909e62a41e6c730e2b0097dad29e73dc2444ebce6cacb16f0eb85419a8d13e9b486e21bf6a6e051830427ff0512345f7cf50d93c8dd2d23594c7b296ec7c0b90c85860aedd96e9101c6c7d7fa3a98e95b59bf30dbf2e147dd096aa81e828a23f05745d235d08f89e479f62277a9d0623216a9e46cab7f40398d494daf29b1d068a6bdaf843583a53739d843a311c215e2c8706a5c272e123dc64549c64b589ff83600cd5760154b724f70c91f2d7deead1832d87dffa314b8cb9cd1053bb1e82a72fb0c32e6b88ee4599cac85c7c033e763f83fadac941c20fea6ee5cefdef68a86ccdcff568c6bb56c5ab65b006156d752ae1c6e14f9171ed08f620522c574f538abb9f4661ddf006552ef1c97bc24a32f7fd688ed260bfdb44c976e919a47938e46feebd1cf6b921661eeb4b7cccf56b4e9b80d671d539ad19772125effaf71e319d98b458c77089147de3e497838de758983343f50389ce8915c8542ab7415b42fe562746055469ca0dacb525f8050203d72b538066b5cbcf9a1a0dfef2457fb55f61c7f5aaf4c91ace815403f5a8c094ea3f07b9a214f910c5f09aa51cecb58497958d260628b479a6ef643616e79ada1e480505d6c5ee5a59c8587cbd6a386da4fdd17b356ee47c463b8df79d6275b3392ebe5d7497cccc817d1c2f06d5a63d26f6789a178ce63e907299b1553f5d9e726e9743732a44d391733a2c855a97845956434d725b732ee8336de6f678a02edd87d1506224f5029af677c85443df197121a8fb2be116926d3cb374597dfe084b91bb7362ae52d6874f42436074bada9a1c05d8390317a477d8c27728eb9d6f32aee132d5b353ec042b996f9b41509cf7cd93dbb5106610dc76a93654ba75847e8997a0f0fac0895b4efb421cae070e5f7d549df9d18c0d1931b577716aa26f3b9cbc31552152d0bb4bf83448ddbbd2e515667db4e283dec68064e6e1334f3cf65c60601182a7e2da1dd124eed217456727cfb2fd0068fb29331684ed1c4d35440251f4766a841ee1dd20ead54b6aac593ba0bfd647f4a708eae99eaa217839b23014b22254c9a31d3fc4eed797454d8829543ccc474fe9b7fffc35ce28edd5420db8ec92f8365b9b7980a2267f44e09183625f64095b1087ff3f79ba807c1fea06379a520e07948b8052f147d666feddf0b689297292c63f1838cfde3e9812fc350bc7a2d84f5f54968b67b8c0767184322bc1613df19e256db7c3019f6b18087dcd8af6b92913c3268a36909f306d88b8cb0ba4ec8f63ce7299b252301f24b490ab21f11c86e32407748d6aa5b94f5b9d05648537daf741471d7e4394c1e553ae5657e6d632f26042d614d2047d3fb88617d63558afcaba2caf1d38009b9dc0f81ab831ba6b807789d8f6afc24b9bd7ed9e5c21512bafe162455c11fc209556a09ae8c127b2e8bfeaa1b86eeecee117254557b364797a04f9085fda20bed62e21aa8ac0911bc11680eda0d1b7264a1aaba0d881babf9a002a82b3cc6e490d4197d6f4d04ea7b02babcc226a280e48d8463ddcafc26904e91cc261810945cc00df5406259019cc9b5a56a7080caf7756cf97a188525e04998c40f0149bc14549cf89ee92737fbe9f81e9c05790da4524d9907d895287eaebdbeaefd304969573e88299d61fd0e6fd28c089a91fb664ff139cda7dccff8de187e8db309a72dce8d420e3173a7b04d49ff972404fbfe8714a1eab9cc23c8c175f4efe4e9f955e20405fac25747a3ef09da4c4c5544585c31fbc8a6ae8e600d104bc4a73225ab304e170bdd08cd70dda8678b1701ecbcd34578ecef3d32357f520d519097a76b21a250e1a029e9fa0985222f0541f9b6fefdcc6489f501174549584b9510053549374079d071da67e5737a20c194b01fd6a09019cd748e15d1cbbb1dcf238e088ff4136c0d45456ade8bacd77dce063ff468b2cae4f62b054eb475e1f3df20917daf8f073e25e128bec929f47ee95689e18f3e2aa073a156dcd62413e85afe731e7423c4b83c7c6241c84bc11979afb05d8fe6fd02b566aa966318c5a9d54c490fa8fd13856dbaf2f6777e48109f325da05885c9e75c5a73427d87d8e5650baacc30473e70733cb5d87b5158e145b60e83f6cda95890b94750fc53d60697ca647d1c1244366f829341f167d6a1f46e120f2f0b204f116a19c49c1ccc44679229c9b5c01fd25ffe05d53857fe0964f4d6c435e973a15a1937e89c7f8ac65749b8aed5fd01b256d5504871623386a50c87768e50285737d091154bca6fc2b0648d0c7d314d444d56750606aa81b000e01c16e1f8a00670086a489c5b15fb89f07db9fc95b36c033a3cc5704c2e1c430699285be6c01b035562bf5352afab5e37f78e478e929b61bb6ee8c5d20ba02ade53d30cc0ac59305230441aa53533c35e036cf36985c026370adf67586c5d2628c02cd4801defc63ac4efbcbbfa945c24934eca2b68be53d7a5363e96756d9503d1c94c0af96b46b1ed36a1e5cb71e2bac21bddbfd24562ae08df80fc7517e8ea85d91eeac61879874f1a67ddec0cd5d157fb1310913753b04a1b76dc30430d54a94e6498b48838211f494647331132c279ba2b1ec1b94e3f272c0006c061cf91dd90c605ffccbd2e59b275fc54a0c77baad03b21fc2b057e79aec1218c149764ffd3d6310f89b5050d8d4470b5f66480f5a590a189e14caaaaa44faa5605a7318004e8dd0633c16cec6ace177424bb3dee114d82611152aa3e3cc348dc6fce91098edf0e9119680c56e34d2b7bc5f6bd612670ba56690301fdc05f1ef24a37d46dc0699986aef399f94a6cfe8b55593e0d3c5b09b62559f32914043a000087054ba1b20748d1a7fcb115038a182918a6772b48830bed0148671ad2a5151d115261580fd5d51fc773b2b187ec49291c0838c8b720630f19ef294fae332ca77c306c2825253ff72ce6aa9f73ded2a51c173248f77917796854ec6d7f1a821f1472e03c6b56f23000a1892c60d3fa11128575ecbf737aed2b4a63123cfe4ff1990998fff332a6ef5906662c18804c067e3f154a6fb1c6274a4f9406a6b4996748b6f6ba133642077e6e1a4fbdee509c336c038a1c098cc62627c26d58e8943f827a82552209f3b1165164604d3403bd048fbda4d6d034e8532c6bdbfd82dbdb96858a22fa95fed38c5230ace98947d5fbb9449a320a691c2010600bab576c8af77f160ec080f6f812314a5a076615b31c60c02f6cc6cc6f142f51f3d1a2a411f43b86beab45fe35833f2d8748d43648a3516091ad7c3d9b513e3aa61cf74fc362a4f1a0a156d8e7580c63cfcb39c3595d7efe6929bc725045bce1a6b9fd0cc4a8a2a3598d4bb840d4a24db241f4886baabebdb6beabf6250ce7c009613faf4e635641e3f9be255aac82dd45f42c422d471d821d90d22b3808e5817525a1c7d14f99db34e7f9cd33eb514bae1ddce2c099864905870475132e3bdfcfcc7f7656e4c8e59f3612c8ca0b069f0d487c6f4ef8e37f95cc32f1432046f3cfee87291c0762ec6ff9393d0e89943255adb6848e790571d40b7fa11f42ad0a766217a6a4724bf582b987b051cfafa55fff232009acc8cbf3fbbf716a44fc09f9af8c3da34e78fc96ed6765741e980108d7226f36cd467e4a1211260d0537132f826b924b2f7bb40b1ea8cc2230930594cef03898f7ae315a5b20e8e93ef3a6cf536438ddd7f1510fdcc78ba56bc2a55296a43170ba1e6623265b577613b5a382980d2768f907b18f5f620aaae1d805bbe521fbc9afc7c5c04176550b09b128bd37d30742420282f026786e806ebe473748bcbf4fd9445686fe5e6e5237af2bab8c13deaf85a580de442c8171ad6b68f7cf97b4b9d185085a13985dda6961f93288c08f5af9123078372ad4959530a9706a76596ec5600484a12d57a251a162b59dff6d755346fe71e6c3bdfb325821829c5cf272b00bf5bb51e2f3214c385366e398967eaa5ffa9b968294bdcfdf9bc157bb834943745404173ad7f85d918d385120777b682fc567aeaf1fc9d80de6ad21db1810f1226f35d42894640fc3ff421e61fffe9cd2e1aaef73c29dd4a82a133a13122e9730de52868a0bb537008ea3267199fd561e18ddb886af4bfe7ecde70255ded2d036282844e9d85a009a3f8c6db3144b121ac3727d67b426d8ce29158ab487800ad52c0f9d9c87d44f24020fce1d06541c7b1691ad249fb371cbeec2914976fc7ac0d0af4cbbea80604a05fc042557c586c5535e0c13319f5dbd3ca7689315b8565fb62ddf2dfb031b2e4573f7538cf61ade853955e256cda7214fcfe9139a64e9ec8460daf74d2f2c8938db7507f3aa4583781ee63497aa6150586776669b298bed8302632e95b16bf3798476f9bb9de082145aae4ed161e0224f94f97aa8d0f5a087b73551c49f0360621b873c980ca3158186dc0d8dbd3cf829d1ecacb36b330fb682e88f033c6161d6369932beee860bc1ec214eddc79e96a25b5c436536e72d5668544ca8f46f440d2fd3831538ace76b75b0161348bebd5867d6670b339cf37d59fafb9ac920321c755599af83cb9f40377242c8f0a0a76cef08732104d1dd51052b35fd236ff843d002199c7e5a7a5648cfee90edbc1164f819bd9c1c862535d03248121901433e674779e21eb972c87b916445790d4a149759377be31692a115aa0f31fc2a9b221bd800ae15721e0626209c87ec2d9c13d3a13f59734e24dafce091a8247066ed4e40924427a7a7e746528ef321242044ef311f063dc22aaaee1ef830103210c94621e1094a2231bdf8cd1307871d7deb175691501acdbd545f24d47b153f54d690b335713b662f2eda19f852279a352041d0e3a50e84b7162fb78b44712a958ef8b2c07ebbf265d92f13fbb9f99a0ad64e67fd51e1d222b82b67ec5f451d91ac9ac4542de9feeb0027186d09b720dbc3113dee52c2208e7cedb801686c5645e602c900e5df6ada409d75b0970a2368baa5eac8734c06935066783f89f32f35147db9103e28002c15b96d7d772478bc0289fb23c800b4ebaa5620fd92271d3ff751e5f10bef4c1c2c0855ed9d3ed5d9376bec0765ae88cd01cd922baa8c40e1a96f93bff1a633c5a4230aa265a7d34eb7302d8eca8fbc9bf18ae969fda55425c670a1efba109ea3b86e7d0516e8e743156fa1a1f5e530d6f02868c3982e0450e0d53d2b0a9d9f0fa66b2027e8d738ce13365dffb1fac0ea15fb25667d7b10222eceb6ef2c60192a4929ae778b7b08cf0dcd55a9abb897ed77b4a991b9d34805bee6e424e9eaff31630291b2be91db300e3460b9de91a9701d6425537e4134cc93d242b574deeac6ca9f3c27a97d9191c1e681e13131b50ed7787b8410e03624c2009b5829d35b99fb94a518064eebcb977d3336a8ab2e534375305bf839548839df9e1a1d052fddb81d9dbcf568e7ad7eba46a6fa78e75fba20006dcb146503adc967e6c712b00e13886821ebca2bf8147346742e6a38382f0cfa2e99f6373d232e27fa7f5534d5854a135eb3f7baf9b14f0e9360a08aabd9c0043193fd12f57b9dafe8eb962255cff7724cb3cd8ca10137b91369dc1125a97451870690127e93453212da3997765263f1e59c2d4a7d18323851b2ffe6cc21b4a97d04482f1c13ce0dd9b7086673905c9e7bdace4da6b6dea937c49ff663daa9805d5bf55de467ba4720ff4bf3220d59207a54c71cf0c1e69c59d2f5b8022d37540c9a53417f4a5ed66980595eb0888c6d02cc218860a50111a5ac93b385be42d19682db2c84b44131097f04edfafa97c566aad7799dd66410afd28c2e2aad69921bd3a0484c53e1ab1a1e64c782fe44b4faccc7466b5a0d41902bd429c7a70c006ba0c7387527d0ae98027756063b4cd5d5c2650c65128658a1e67cedb8cffa354766ca42c5170c5aa2892b65e9090cc6b425eeb421ff28bb4f4cfbe2ef97dbd3122f17379cf36f3fc6bc1c247b6831e0d656c01ebf5628992775e6f377cdd4bc89cc2772b7ad0356bcb7315627373026fdcf4bd097159af45ca7fe60d9a3722ef9ec2a4331090460d40cd6d67b95015b203288d7c1044cf48ead506d266f8a38f7c8ca63596726d10e7b15c721226c2be3fef0b8df55cfa59a3d6ed01ca62ca24aeb9d53e8b4fe36b75bcf427558d379397fb8f4ecf099c238d2119c6c7f04bdc0c82c671d44998a1b0880cda6ee684f363bd56a4c67ac8589026e35b6facf6dafacc638062e48c205707b0593ed0808797213c68b0b77669f898d01f5ef8c080030ac0b561137e31d93c3290fabfcbde11934be447a530f598f28c8248ea345516f7b254e43addc1256a9b1e0aec3885bf32b5f4a34ac8c33ac22162d898b970e8e7e6ffaf22b4adeae2c21e1e4eeb04f0d399637f1edc3aeaf7a1dc5ec83d5b71c6e0bdfc5aa879e1a1960f3be4e701a2a7b1cbf67531a98a9340b974c58d20708a767ee9491e96b8e50ed88a18d86008a4aa75387c3d258e1cdf240c8b2a2549b1c229928e6188c16e6d836d62c0eed50a81b94f2582ff0d914ab50bef20ed076520dc8e8c7b1e3087ce6ae0ecdf660bbdd09853acc9cd07ec98133eccf35abe9a8071ae9d152cb7376f0d339cf06a9b089b95d34b2972b53111b3bbd8f93976ae01f7a81785cc74b695485a71003879e23cf6a8f3f3ceedee4d12ed0997434116f4b9b6740ad70711d200c0176b4046e303355822f59d942bc1b45a6ea42fb8e554eecf6e615b25d8087483bd0149ac2ab1d901c1b7001b7ebd5add1f5a9ca1aa41164a9107eef29ce0e176f16972a658952e8aa5e271463ca07372b89b099163c2d125e6556190161db845dd82f40ab82fb87ca3baa78d1099f22984b290772252959afdb7620af0d3e5d24ed6490a580c733a8565875a332ebadeef6851e84440c8774ed8f2e62a18bb7212b55c8124c42a9e95befbd46b51c820a37324b515808d2547be924ef684b530d820f0106de561d95bc90f71369d00fd914560232944110eec2efe26782a83d530a983c4aaf38e9bdeaca09835a67e3409fdb181b4349aa0a5a2453354577a8efa3bc68c34c1298c599599d9a1677ff8c56c8957ae303c49580ad85a6bd95d9426c9f210c53ad248d085a16fb60cddcab07de4fe8ce2ee1fd987435c648199a2500404438baacb46427c2bffb8f6562a4cc1fce6645566ef8948b167440bb77e6683796d62a69ab955ad3becbcccb3d2a2e4eb3cd5031b06706ce29d0615006375d439d87a8a389ea0e04aec85916a368fd0469fcc7397328896088c2923be1be8fce764c82c360d45f43d33523935b950ec5dcc4f74b7a096712dd86abc6933c392ca8e73fd3b552e133348c6d0320bd5d4163850d419af2dbeab0102ca35de129bf37ff7bd047b11cc7d44707e01ce331729dcd3e1949faba2050f58c139032aebd8f9dc1742a11e82088224b1de75d77727b104e35ab04daf64352c39c93d40ed6bed6c37ec6110312dcfc97bedd8cf4caec8af06eeb6aa7688f3e6ff5e0ccd768e73dbfc8dda154a9547863152f967947da794d672aa68dee03622ceaec4c4f1eac73d6acd0dbdc150bdfa64dccd0fea070d98d38d5e7ce4b8a4197dd6e86988250ad0f01b902d09130f715c188115a7d11411d2b647bf0dbea89b1fb582af3c559ee6382af8255646b78b572e960c9900498922902264622b049ed987394e86afbb367bfa7a2c296ddac309d60b6ef08591ee849f3d31c8b7bf9de4b78fb2c6ac258f9d86323f3f04e193bb8fc2a3de3c9d7ee2573dd702819217ad7eaa1ad7318df46448fdb0778b7dc234589765a66ebaa0103e9afaa9dedeea4edf09877d14922baa0ff1bafc54cee54fd488fb094ec17e52982c77d2909f7edc493dc44c1ba5bee3cb60324631ee223ac57f527e7be014a6d1d98b631d497d681ca65a62110af08a9cd209ea355e354c227ccfb71cd484068cc9b953b5288b69e79583d4b3aef98f1707c10773bb1491f23616743996f2914aa8380c4b5f2e40e800ccff88fe943bba0a1e27206bdb0c94792a2cdfcbb8d570fa313e8c6b9c3732b49d5ed29cbc8fa7e1173aca26b6ffd8ec53908e34b2a6909cb1b152d2cc12c1e878d667c40e84ce09d4a9be84dcceea8a9aa02a45b58569f7968ef12bd5b681e750676dfe6ce792b7ad69f583c61069c52ec08f212343e5a3ad7deb00be54034a41c11c80728781994caf75f98ba60bf4e0a1cc64797287d21963f3896a6efd8ec55aed4198906dc7f801148723429856ee1ead07eb54894630b674e3060037f0e9369783d19e6d0c76d86d82ef154dbcb2175b90c951e9d1a73ef5358f028ecca6f6ea25949542bcb77f841c40a8b3a6aa1beb6e43a219ca16c71a3d7f1f6299f215e6e1780e870fc3958bca22f96f91c24c087ee9b18f210d25e26613ea1d17e4d029ca2288ef34af7d8e7c783b8f15ac9ae6454423c43906981ac095dd14551645048a13855282593e877f657eebafae614039dea4c1ce9a7341bc65cf354d4abeaa21fb412485a8c0a2580faa4fd1ea4ccb43a054c3b316ee87855db400995cd9a2501a9d8368b7ed0fd447932941652491aac40008661903d72bcbbaca769818dc8c8499aecd2e5a35eb927661e5e2bfb8a1524671a159fec90c573048e539a845b093d0d78349eac080b3ec5ef19c4ec7ed3bb62131e8472a58fb1ebf949a2720ae67443c7bb4f1558c721597954be757d9542602f7edfb272ba5886191084f856b478514afa0213740b21d759a89aff7d836469cde34f7b0b13b885f9bd0c2fbe20283763e01d02cb87a3d68a5ec63c07f8386b27e8b7810ea8f0546dffc67ac7e9343af56931224836c8c203637d1d4a7b8c477126365924f44c659c122ba05e8b36f9fcb242b794ec96c706fc80290d77324ad45716b7d0f31137158ff5c05e951abb1e71b5c30b547b37c3dfc68949ee7d4a84b3b0c206e754b7e5844a56f263a02bc6fe7a3b1096efda234b75413289cf144d61b4ed654ac369cc0a7707f95c91c45afe5695cf72971597a86a5ad9bb3d5b3a436838eac6c1e7a710ad922c5fda321886bd566d73a50f33eb59e842b9105a1b4cbef97a1aa0f169fd632f1451c21b991d3991a6d890b53afca18e192c46211971a5452bfbe0a368dfcccd154d094e862317c879d314d23f618ce81a29fe691f726de6cc7741bdce2e2b50ed35f63338ce4dbf8e2f7df3fe46926c4861995f87391ca11b997fc01e1341146999fda35dd4698989ef0ef6a94e3048353d4c61cb175811559962038d57e2e83c5db0e0f0a2d1e34f0cf6e57e536c7964ae1b382ef409791b2a860262ae962d5b8e55f49e489af4e0e392d6a95845065e55424d0d4cd4d7aad2eaf635a0e18e90897aca7621227ed4b092bb52d483f552b0640a151d73a2e9d1342ef341a642b0f1df5a6fa1e0236ed0f368b4bc1dcc6ce8c2076b2aead2b824cbec7f497d96d38fa5ab2e02cdf8dfa9e8c9a71bbffcd6b85d2a6436ecafda9a87771167b95825690e9fae1dc41ce58474c2bff677ad8174781bc8acaea13a58f481f8dc3c66b34002d80b03562e2e5c18a8e978a99f2337440d98687ed9ffc1e559336987ad1e68c2d390d62c2cd510aab60ac7eb5b4c8b405b9017611a60bada9c3e4641aed95f928994d3662dd701b0ca1bf4056cb097c7652ebd67cdfbed67e75d47489a57f9cf89843d4614ff877ed5161cc63b817f67290de9df285fd308f7ba4603fa8d2d876874537f94decff530bc51719ba4fd172b115b3d0a96a0de2196fc6691ba78644ff79b817733058bb091fde1b0faab0a356bcfeb10f0333c78d29098e2d21940e576d4ebd2b6075c9510d44be74adb4d1314f1600390a2a1bd479b81e9c88ceb60847f1939fee5317ae15d20f9e8dd974806425058ce915f9cce75d339320c847cdd85b72acdc6673b3479ca496617196e66512110027a271759f60f2038ff1da3e9589f62c581c2be710a172375a49929fc52123d4d83a182ea088a80de1e715089da534b8334e45f1bab59105e11ab604d26070df1a34d2924ad2fb7c303c2ed2fcd402bfda2d5356a49a0158e403f5fcd748fad9efd11671c7c61dd326b6d44fd85190c6fdb91b1624ada3eff444816667f1bcc1ec7030d6cb13e63a98131d69f0a703f1209a2037329a9a0a96d9f3a636b02930c0bcb4fd4c1759272676cc4447d9e6bf263eda9fbb53c6cd506416bd4adaa1b58af2f31494177de08eff1f902f08130aae3202baf0d019d019c1f5c574130cbf5c36c9fa7a5e6e63a232c9a57e1d5d7f8eae9733efc9e7787ff901d9769cb07656852420ac4ce4307af48aec812723834942553fdeb226d21d5dc15f8644ac1f4d30d5a0e22b61fb87f86a02ec77bd3ff0ad7dbf2dc3d3bf277571fb3583f5bcd1f8590b47116ff07609c26e54bd7e6d038dd7164490180dd24aa611e3986c391a9a5114577ee691747188d06179a8eb5a8d9ba4940dccb92391e1e755ce40fb2cde028e26fe71c94a7b3e5d218af92032a90c6f3ca85172611ea2c44b1e2326bbf494f018c82c4b0fd3e8b1c64427586e2d51018e463488d6ed60a222dca2b20f4bb95a5aace2b6f9aa1c050366df5d50c04da82efcff0cdc66c45133862b11f8cf28d35730a8577a4708cdd77352aebafa3543852d94418bde75d7f91dd34dd25a0b072f2d33354143f7cc5d055a746191c1abb2a4ba46a434e3fe4d463edf45288b054db954827323cd8ce650164587139131a92f88f0558e553f8ebd662740cbebe6970edb2899db19fe81f268f997fa87a18b1a8ea299dfa0b2a80e50d2ffac3e94c7a90489b650d606b41d41be86c46d63ad23e1ad3b8b03e867ad44b5c4d46b022677ac802be7e90bb0f0f3d976fc8091b98e143982eaf40283a089bd85a8aa31f3677192809d0a283f6f7a797c4fce5653d16c80c2fb85f396ba84fdbbf4f4ed515ff643ab1c2fdec4e33ff1ccea2a4c89766f0d9c1b32dca582fdd1646fb7451df0a3b37efab1a26541aec83b84a5ad9193c993aac935055b5ce0dd64daf69477fcd640a1aad3897c173394f6f942aaddb4044ac88a91a593980cdb9acbfdd723a4038056881dfeb7eba244192816e0327a99d030ebe47a06c1464b2dbc5feb6c6584aa4d3187abb57f7e47fd8b2040d4299ea77b8942edd6a8d6e2bdd186c6c22d57f8171c669817766d56749e4c8f552c646debea71579ad3187193f1a7e8667b01fd9b47cab0540393f11eac445439ef474e7389238ee7112ce0f43d06d3393fbf61571217d497cd19a3229fae2839e96b102d1d64ec850e5cd1863fdec0087b4842c07947c6ade509515fe01c84fdeda9089dcaa3d7f37e4732f12ca055ac05f301d7fabb5f150895c733e522aa47f311b0a4789453104dd741775f883a19def6656f4321f98aa9e5965317d108e6d854a4ad60668f8cad8822a8a5785b90e3088cfd70eaca44795bc327192d7bbbca87216710f22de2d68507717fdeb3a55b6974a142d2008655c536f521af92807267134ad115f18482c5c2f0aa813d75a456825ce855fee567157c36e24333bfd16424dc6f529f3a5d6cee5c9e40257ec826dddf00ce358f5a32faa4396de5fa45830be33fa379795a137f3d5ee43090671d99670617bc7e46672a16ee27c779c352c4340e4178d3040e9274c1f2b23a918f9cb771be7e0b5ee5fc6788e548ef32135c0789a479b7f05f7bdf93d525e78700f153993e3bd6bff9458eda07deecc0361ba58ed277a120d7a69812683e9eecefbc9206bb639bdfffacee190deff06513c7e85006a9bd9e0ea09480ce87fa5f9a0ce1beccc09fa036f57fa3470ef548b4088747a66e17da26e84200cff85f24dbdbf2111460c932bdb4dc89be0c40cd8dbb84dfc2df601446975f5a3472425a340d97f29afbd20984a8d11470e614ba934447f48336bb7d9bc6d3dbc65225c8f025450d9e5d13f4b0e20533d605b62e10a756eca07dbecdd1fc49203d91d5f1c40703890b5dd1de5a4157db7afd41b6b063d98454d2812f86a9cb87502ad5673f58dfdcab0c7660c9b42a41f3077909178eb0fb72710b77dcc12f3b4c9d90cd810250fe1deb4eb7fe9f9f398c660dee2879edf8d186e829997150d9bf4c38a8d133f046818dd7b5bc93a313f300c3c195d6cd415707b1db2f7c6cfa52c37f52b7559371223bb7efe00719f0112a9487c2e66a9466db17eb087afb0371b1cc4dc78da39e457d8a0874e13391c9ed71bbf246da01113aef65f14ccdc540dee3bb157e4dad5975c18b8921e743aaeb11fb380b4684f5b927194e398d719dcf22013c9d77f0a275f7cc6925590c26d44c45f7c69097d55e4565279eda263cb5518b7ee826058cc7874a4a329f87a8be7c4e7da288c3861a30b129066b14997d48ddf892e8b807141035ae9c85945d44f75ad4085c890619aa729cd028a4eb263eb0d66e220e0252fea0befb1adaeb6a9f642d52c64b872f152d031e44810010a71a7115f9a246d933dee9d937bcbd035e09dfc0601745f023121d26f38ceeb5c4f1439bc63d991e607aaa86e0018ab6ffe90154368563364404fa76171a4642b2ee625b98e833b8c8980fb180af85a36207bf680f89b6f113b93c7ac00364ae6eb24c778dab92e92940580cb84659af5d0ff1f28ee8a61dfa13c1fdadc84b5270019150fe5a023f00fca028a2cf0bde3f5380775d3253785dafcff6cae58e7205663eec1aaf413af1c7ecf5e4055fcc10ed275d3ae7a6b73d45393c8812284f717c1fec37abafe009dfbfb47b7452d972cf07a4c9e551b27cc6c7758adc60740462460d6cdd0af3b1adc19bf142d9822451d5e5e238e04623ce008060d3a596e7c15085618e76eebc3e7458462fc7f40c6143f511d067348a44b48e2be79e4b8565cd6cbde8a73ed07b7bad58e91866daf614d417165403b00e84d6176f1131a922344bdd6b5a2d865fc4dff14b7dba1273d87c492bd232a9cc07dc09f0d2f7a14a838d34608bc988215da35021d61032a5d019a8a8d194c368370dc22f821e5308d4809a33dde73eb6419278be535b2b73263b241d51bd3666db55129e5bfa13a7fe485c9bf3a0a4520cd7a5d3012335423f4eab6ee66893fad6918876334209e7138f8029e8ef682f709ce6016e846f15395ca72bd032dc59d6e7807da37e3fd8f9142bc09c268df0d99487f493a70e896891f1b0c62fbc3553884bfd4ffedb6add2970fec474288ba50b4a04b035fdcb7a5c5d8eb2709aac89aee1ab03d63bbd4bb629ffe2178355555c57cb613fd33aedc9a5262622b04e20829b91244b7f9c76c2e7719a0099dec3c4adcecbbfa39b230d733b950b2978acd502d35c9ae5b1f517f246d5c6c2fa32268954a99978ba60f9fb44b3af1aaf8ec245eab0b2ecb61934a3dc8d30ac63d239bb1669a37b306520adbe011d8b78cac7fb56741b8c17bbdfcc23ddcde7091be12c7169bd95d545ca56f703b6f035ac2a7c6934aec59caab796b53306b5b66c86a8c8f24e6380fcfd376fd0a68c344cfeed14ad2541f19b83a5570f799ea18d780115e7d0377c995760c98589105277ed9990d7eea1510e82dd92b04ca6819afb764196b1b86aeeda603a44b4a6bd5a4d58fc9fa48c793476002cf9eb7125f6baa84d46e3511b64fbaf4e73226434e555d4016b46e8fc78f8adc27072cf7a750d5d9b8c13e9ef4da55b3d0040db1fe593c6862d0a67645c232ff581f73d1ad06e522c7791c8230b7198c813b1c000b0aaa69c8424d062d5520d3776392cdf0f507af61c7f68c98868ebdc612b04e901ad6051e215d1125957edfe9550ed7a44f5581173954f2f1851e78851c4b22338ed1665bca670e75ef7a1a842192dad41c63cf2d8e1627652dbf54435ccf0731eea7febb6375086212ad51b4d6f8a629be8d656cf05b902c62e1a1aa52a9501f3ee7032f19e4cc28132a640244244afe01444c69986344bc17c853a0479164632a0bebd6b563609f9616fa94324705258d5c6b043d05720084451293239000410f97cb5a840dcefa71b43da3f4fa9722876a55505bfa84f6c04192b944d6f10a083cfddf14e96b48b50d003c0b6d586c7f1facb46408711c4cd143064119d3b638db31e0546ef3f0c781a4dee847a8b1d7b94c4027119e0a928589f46bfccb065c7eade54eb00f910b7e01acb78fd3e06f2cd3dea7107d1295dd2cdc039a8b0231f3d9c1f1fc53b64858c00f9ca8578ae580d53e0562826a7fee0a1b53595a7c7b5d5e330dd32982345106385c90e220d6ab508c1e6d8b8a044944d36367ffa605153042c4931805d88013fa651873f1aebf6e1eabfbdbd6cbb7a85a1d05f6885d57dd8ee4bdd2c56204e9fd3bb9491ab5fce59b9f705507c94706465c1d784a0feb4741fbfec50e173a7155acc8a01b90978b35daf82a4198300b222b873bc1f0f1d7875b7fd68c1dddce555c05d7173e767e7622e1b19cf56029b413f1d4130efd6edc8afc1b8c01abfa7ab48c36fe54c4b859978065683327527a1ccd55f966f8bccbca8b3fc537e7fd73f2f9942bc8a41216dd965b81ab3a2a2c691c09f58395200a3c63962e34cd89aa4cbe8bea7df78d793b1ce57cf6e8967c68ce508791504532c0179a35d5307f3609b462c392fe8ce3d410308c953924ea621f7ca1fb0a609cd3f336313c3a480b099aa60a0ced408f3484be6433571bd424a49e346bd7212feeb2bd31e50ef096e473028b083167c0492965cadb245103036933fd32a1c7d86081b69c7b5e1ebfa6af0d9eece5c1497878cd9c2518aad92302c3e8d202d88ea048e0558c6ea2b49ded50de9f29d82641f67fabcfb1f99e44dc7a05c9678a6727c0234d051f81557f5203d1065882d1e9fbd9492d8e8ff01e282ab254373fc7ba26f85a1ae1930faa4ebcfc4d55b364c352b96862d6e8f127bb7029c9d82108658a259f470f23a82779ee8e8119380adbb759eb75d11662204beb460d2d3893c41e55740839ebd61294a4816bad580d7f4cc658033744012a7841bd1630cc3b780335b6279c86c69ae51317577093a3c086ab2921dd030b269bfb1ffb73ef613a758f2959b3fb3c376971a9d9d340c8494cda40d05625bc4f9b28b9834ebcd4ee3d374df32383eff03fd6836841796511955686900895fa5ee4adbebfbe1f47fdfa7aca9a6073b7f762fc58f1b6da36b139a80c30c3365431da544594b8edc0102d616b52d9393cce8b5fe483ced62327ee5b0cd28194e773e6c12c8ad10f70d68d2c5213fe32a3af812c4cdccb2e35b61c5f5c37f998b009de911cdb8d65ad3667223ad8df4b78cdff85f73102521108cb032603a0bab03d53cc347bac19da7b215b899860e773761adbc2ccd96932ffccfdcf0e90c7701b57133571913856333210ea38a930c2a11226b1353574a66d4680f3d74c6abf43fecf3ba1c17b0691635f7cee56007d9c735d0a844dc929dccd8b20041c3e1e673d7f185f912e729e0abecc5f3b8e8b32a67db1a05295074b57215d4915164f512f54b8c82c1709da3639eacbbd23f870e756a15399416c4ebe3d042aab891d42c52b0a2d7bc55675a2bf18b1c480c156daaab578c51cb9ce8d0a3cd122674f365a05575e2fb675e1f6003626960cd9ac8ebc072d2ae997406578f0708bc984444fbc542dd28ee65cef7467ecd2690c04359cb23dc5a9331f5c4f5e8538e10a309a2bdff1125066060f00a6fb442664f75bc00ba85a078802d22c4dbf84cff50ff205f9cdcde4819653a980b1e9e4daf7d3e3a45987a6aa3a45108d6e61e4e648151a258585491606e1155e8a58abffbafffd32feffc35c3c05ccef08e8b196491cb0f78b5fdb1a944e61d2ab108ffcd4f3987bb4274eac1ef7ccb5f43eb8b514d282426bf9b85e685122268efd414d8b8e07f379859a8c0044728af96c62c12abc284b20c78889a85085fb3b2aa8e5ddbec430c58315c0d262867d4b88082854ac04c30bf286ec959627adf44cd05b8dfe6d1c9d671eeb507a15d152407a841cf77d52ca2d1f853bae94b46c73846f3d925273c67b20569fa49083a4860c940c676053f256138d25cbeb4efcace0129cc09c063803c8ec532d29ed25dc73b74e6875805792053459913f2ce463f469cfcbe3e813409a6109e34a2307d817254e45d816997e14bedf974efb1bd647b58b63277538bdaf86af0639881152879329a05422bb29a6c620ca9813350acb99bedb17d5e92485d1dce3f5c3c186af8d5c6bd4e16002b3c680938ad3d50b7296c262f717d744e4f46719916c3065c4e86db3d521b2c8a6431957c2ee88f47ac40cefc86eaa85a08c6554baa4491c7be31f8d278e86079b60cb996913bafcb418611b9b3671dcf191a7507409ed47c3f20c662ccd070edc00992ff82112f4a0156c970e052fc4903ff6de86719187fd0f00d0c8bc8fc2a6976ac126bf06faf8f00631ade1e392857cf8b4f89f0ce606d240c3c58274993752470afb8bd8ec574551727837adf7b4f9bdb9a1ebfa72ad5f63d656a340d0fdacdcad79e212cf2c24dcaf54a5825fc172a2069fdb56a4299e45a246bc6af449424706117189be5d7c40aa333deef16ce1f82cba9e0e9c356b45c173ce0e9090695d6686ca30a7e0db69789537acd890080194ffdec069f06e03593048d936d239d9c9965f59863a9da411032ba431345caf36c723ef76fa504d843a5515e99f2adef193c9437268ea961afed909a85cb4b5230289cf47ce23538690cc4a5386ab4dc8e7de289886617d198d92cf2e60665c859313344293b832a0bfa8662f57dd949d29710171452e33f50920973668667f10bb7f1c288644539653c59fcbdf3bd897cffd02d3c9e548a784d76867c6c881b049fe37605d8847feb0ad075a6d8f03711a126907890ca0ef9bdbf949d959a011edf31554b8db5b1ea6f762d3d1f0e9980ac6eb4405bbfc1147007fc17c2be67886a8fde35c521adcd0f66342a721da0bfa02700c843a4f0fa7dd6e181b4a63cfc3bfca3f77af05e0f70079ebf62168c4b9a698503a431503b17056bb2db2acf22350450211801f5541dbe94a7c66509840a4f60dd0bde1bb069b82584838372b6c3736ffd3a32eb32f92d260e56e5ac2ea0ae82adfbf3619c65e7b7930e56dafa6bfdb60e1c64cc314a55d58cbe7d9c69adc118d791ec43b96dcb9e4946b6cae74bc608e3ccc44f7de6f2997ba2621f55769d760329c2727a8e44257ab9bdcb4831b77fed8cd232b0fdc2c58f25dbbe37527167446db0d3cfd736b767088429186c2b9e8abed38ae125fd3e78da922a250062eb50a20d4227aebe3e5e98ceab276c06e4e0fe93b227a3db2ece98a9fd5e817d3bb7e332af9b50c79dbf838e6919b2aee7e85b4058cdcfd9b304ff17ad97fcf3b4cdc6ec622d2df027264876ca1c91e82c4bf720c312b2f846204a3b7426b18bf5a1864bd1d74d7101d76be28d203a35e25f7674c79f5e677bf961fd6f85e696f43ce4130184ab2a64dbaf4804919a617a9dc206c7e235a6705843b98e4277f0eb3513c3204f5a1fd444923b5f081d2b9e4a92a6b776f3c3c21578327ec0dbdd7ef867c349773712e37d0764a6735c99bd1afc34e58b1666fb60c688b18a660878bd5717d054d94c106dceceabace0520bc9a1c106248ab3f9a30f3dc95404f6a996124bb9c3a55a7f0504451e3ff69e2d0676c13073e1937e808ec3a2adb3fbac804c875107c16a92fb32174c16b707f67143f683c8073c408b688807163eaff19acc689fd67b9dec30e25a0ba57cd46c685f42909b9bec5906881debed88c3f1242d850a37ba858d74dc1d695f247fa4b6ef64174442de9bda5e35773bb5b28d72eaa1f97785fee669115742ecd3b8ec760ba5763479a069069bf6fc9e386ce3a319fde3eefa4c3fc0e69d8a9ba9af792798d60ff1f5e8a71d1bcd9b169a7ccd657c5ad8cba2e31ca23e68e4fccd4dedb5ff714d6b8189c5e6645a34b4203e1e9c360d2d74597a4fe98e4c3987fa22dfa29171393a6f17bf8d70487a06938f7c6e0e1a7ea21976b507b875eab2e72ba431fed0e8608183b89f6fe40b0e789f4fe1abb8db76159e401671e9014b9ce95840eb721690637abf3369afb234dc59dfc2501c3f0208f9817ad1c6395ce4907dda7d437b1d18adedde0180e8e7de8e36c3b699c404b6c032f576b1baa4443b6721cb16bb6eb58325e7d51d80de4d9719063bc11ec1c8f1c8af6863a676f0aad4c96031a4c61f15f10f0833d80550126975760a46a378ea743a0c7093f830d2bcadb8f33e8134bdd42a36c6f751a92e44c76e11030dd2afa17fde1dc3e90fc446f26096ed42574e89cc3e8b1221f0479bb35226f1906c10beec2be73df6be5ce77f9f171ae4ad0d150a38fabead3e93d0bfc5d7ab08620319b2dcb9ec2f623e6922d7841d326cc2e85213cbb0efc161c6862fbdbe22808338c2104050beba9b6f7b19148b5bbad30b7eb45b93e0365dee1c7bc84ff9636b965b447bc929f9488c304290c540f6619b3e6ffdcdb715177bfacc359e80e614836aac3e697a04445c3fbc937890b6021562fb6fe184e0abb614b7399d7c9e90d77114356013ff4a5dd8b151fa804acd234b9fcd7622672c8a4e82b9f37c97a346868ab2951534b9dbe50b0380d14e5a7349e48b29032212c9f0b9113d1c64a7d7714d7d8e28491ae9fa5db6fecfe5f49adebd5f8f5c4d797d60ded63f1066b533471b1f5b455095788f7826580d3ccf0af1a36f35c888829450d8169e109f9bc640fabb323e84feb1925432a762848bc6a8e9354b4ff38fc88247af8d85227cc8ebe6c3d182272cf1e5def185941491080346039bfaae043ae81931782afc7aea58c9a0a63a075dfb6ddc6377e2f598a40b3e7284a050eacec128dc2d96c8668bedd3b1af1cd86b207b57c2600ee9f4e2ccf776fc6395b06be0a0e543dd3b9bd4c1f2f9d94ebb27b2a2d8935dceba83ed76fc9d8986ba1113977d94a781e5305590afc1c14d1f366214ceb22d7f0949a28d06c78c5a35b44883474674c81a6bf730de1ee8dcc64c7fa7c3235933200490ac0aec9b55171c69cf2680465b9e0d64052f5e1897cc3d9bbe18216c1cc1701476cb8933216b5824d620b4e7c37164452b989b13685dab777427008cbaf9ab9f0a1124bbe4d46f35541bf1b32a8a89b77b1b6df9330261dfa0d2f141e33620ab414f1e75784c08425f1abd829a040e39e70de76baafc8106e98ae6cb744789b1c53e0b5a45191aef1dafbf6e8efd06a03ea0c89a003659a2ce5f25a0cea680f294f14aa89d26517acf3a0fca57f5aa95956fd0c5fea4b349603aa4092f93452a73c6d0e9706753ad370a59badac34c326fa25ba38c5d8eca8fe354129bdb47e686d4d29d43903ad38dceb03e7f8de2f0f0b9c5984578d4827571203a228b884d0b747e3e26d762ed0b24b6c257add017828e1894939e15dc189e55442d90d8d916cabad34dd25336c96097e7d7551d16f4de0aa1cb640bff0110c7335afd68134befcdff1df181ceb6ebbf8322d62c3d93b297a387b35f15058c13d69ef56f4944b10afb4598681b56595012cc4b5852ae9cf79db68646972af2b51dc4897d89ea904e3e725173f9e6edfa11fe4ff98cbed207aa9e4f101cc17f23cc4caac9e719c28065cc4b25e26b3510a0c2ef109b84ae7a3c390dc9cf714dd13206ba373eca5ca3876b67d1356289e6a611fa847662caac5225d4b6d7fc62d1313494b73a95b067ba0413b3993e558b7d112b734b670fab4f7c738431c6a0741f2b9be3d321e171e104afefb20c62e6e6f07afa85b4d558cfe848e2a2061776b14e2425df8bf5eebf5e938fc29343e1ffd7597580064236c10d5fc1485351e4ebcea8ea01a77c527dd55c52980fb9a18e6027a5ef63e1c62cd789bf5913f9339a4e61562864566d292922ca25973006de03ed0349a07bb0e0c1e16d55f84e61ba5d40dc36e81b3066d4e67e09008b79b9b7331f22e08fa6200084322a6f1af657c9274be6365aa7d0e11801213ef710a38173895fd30dc22aa3ed3e63662e15a99adb53bf5b3dd2915f62f4601d98293fddb9a546748728d5e06fc80444d633138d6701c4574777bdf5398026d36dcb469183238cde9dbeb4a3f612146d89b6c9dfbdf605e45655d5741b3e995ed2defb3f03ce248c1d54f1b94890aad1fcf3a59236f4ca7aab09bc0fdc97245d30a6534ad2674f7c5b2592d512a119645fa43fdd18a02dc1863e55d82b2fc8e9d4e851194a272b80e7a0d0440cff2e7a7c00714ce4057e989f16dcd4fbf99140772ce1fe873b75f5725d4df44c9678ac216634d1cdff48e140fb2fe5863469a5e95ae7f625359d3cc5dbdbfb7ee7a5736481c76b4dde1723255ac09765c6307779e0d78e51af56cc0324b14109750690bf559e715711fe1d22ceca55b01952c502d8ae8b32cc20bd7bed2f4b910d70656334ca9274afdd0a576472d968979d75b739886e8bca16faf8568c22df12d031d3b43c2242525f5f66a0f38c6475ec78faec7713c0fc5d0aa40b63abf80f03b5b593d320dce0cb87ca9c5ea60c5625a52e9de2587af2d80cb46bcf5984f2a1c77b318bee685b2e61b925c1f8be26a9b5b440bf872bd29dd3469d6f39a9a1651476f0ff84c1a1738d29c13658ffdb51dd1cf81fccfe1897883400c55c4bad22fceda03eaf944afd75f7e9c14988a6a099caa8c5db704eae4ea42a667093ecbe618ed6f94aada32b325e34f7b65b8fd64357ece36a83aa2874a4224f723c79f2d6caf0652edbb1c6e132f80dbf61aeda7ac61fa399bb8dd640384454a8f456585de6147975ff01187904925453b1cf13e985347f58ea1a25d9395c3020176da059c5d70ea41abcb85128365395a58fe8f565ed98881fc82c27d8cc6d907094e8d05de034dc05235c9fad1b6ebf50851201181ef54359b00a3d2e4beca2b064642c0d422f72a0658c02c82ba4920617671ee77d79a75544d46736fb13e42325d57e4472f816e541678d17f74f2b43b2456e24e72a6545c0fbd17c74b8530e19a6bebdb60369349f6a8874413f7e17708a1e314bda099a48cc3e315d89d145a2de23cbd2edb95dd12198a724b6f458056763b02f51f04d9521748341052d0b6a32515b5077accfe4d1a44e7fac362667b4faeee93fbe5ae655fe9351f546f79d8ec3658553d05b36a9e50d9e832ca109b1163912eaaa0f49ac9aef5981af30e31c116852784b0684360a1c395b3e6d0141ad13d8baf8cd696a98cade0afa95651ed71172b4d1d5dc97586a813b0f082638449c830779ba011737718672a7a686315e00101673ad7bbcc56a3aa023e2dacb9c171a8b0d66253f11ff4c9cb24fc97253d7f159b8ab3f8a38c8c8310fcdcbbd502cd84a408c98ac74524ecbf5aaa6d3034a31593a09d91beb0ed45dc960a8c665e9cf761c0c2c23463b33d7fe9c8530999453d96c04c1a31bee559c82ee126d6181965e62cf6731628b6b02b89b8c612c2f06e182bb523edb58afc62bbd487e43668d274c45365f9ca28aac9a090d8fd9f502f3024620410b1a24d8cfd5f79d38fafa68c53fc14850769a4b3e6072b1019bc5bcbfe9241e1f8c323bf1944ac47f8b9f9d80be2f9273fef702196f441a5eaf716bd01ac6bfc0867c98f3cd8c7bdf06fbd59b28d2e5c05cc10c082fc433080b3321f5ac9cd7fa49599e836d39e0193df56424fceb6cd9be12bea489fbc41aa7634410378bbe131cafd7fdc1299250058bf09897f8c43c307b85a0b0f8aef52ec1b8183425213ad31c9b62c81cd0284cd5e44decf0c70af88219fbce13653e1f91ac2fcbdd8ce011d966dace6a2bf083636d1fcae8b3c6a6287497e9ec67a844e09a22be8ea7f6a03dd5de56b484f8d97135cfdab253c46c11bb4f950f7ba2cbe5658bc50ac82d2299139186bf7e0af406dbc7c73e2efe381c5062a04b8b1cb495c17a9feb3a0770c292a6b85f3591440968b943b9ec81bb6dc96c962fd90949c306a8c7bbf51f906a4447b4676fbdf5269af3f44ad74566dd990727f15430076105d4cadd10ba0e011de59df203e1faa2e63c00de62a2b82d327af72d63e20ec0929389dc392ec2147bce667563dde8c299be7a3cf65133d37321cbcfe44660a5e93ad967d834d003e4507383ab5cb979fa394ecc9ca6e0b8c81689c74dc69736b2039695806a9d1624568a31a01124fc66a943a85b28ad1983b99e2774cc36f3388a5e5d743bf698719ef5e3ab40f059a9c16f27246bffcde5798d091f387e6366536d371bb632edd6fc4f90a7b47f2481e55cf5cdcad944b3efa7d18441aac38638affdc86dfd869a76090d2afff1fdf7c5aa26c89a46db05edae606c324861f03d14756f1fda4b18afc4b0264c77e9a1a9edd3905136e6e6af2b6dac1932e5939013fb1c365d4d9e55afcb040bb8c12301d02b5237b631186f7d09bc1903409743803c1423419ff54b6196520e5364213850b5b6f1426c90bf502e767f9c1624e4d6aa8d6d8c7736eaf3cca745aabb08e62e96ee0f55302a397656d9e5a716512a1445deb7f461a54655a2e8f16ca41d17a0db0de354734f5d276682477c76039cb1f7573ddc99aa55c1fbf3f545041af9808499b05f738abeaa70e05838431ac8d3775b26d2a164d3c21d0c9db9e82c8c3e5b9ee8008862abd911fa41e04532407a08e483f5e12e93865cfe50e9a35f26f806054bdcc9edd2cfec67282dc391d4491f15ba1df9694c86299d9764eff221165505a8995938e902066ae9d3b689a35f8d8e09786775a15ddd62c051a222f8403df6e9588380aa231886e9916236c3cab6553199b7c328f3e0383c5140eee6ddee1d261f525572d89d38b420c325c790b815564783621786238104029a63be7f6ec9704c2a7963b4e6b4068c06ed46725b24ca9b850f2cce5e6d41f49b91db97bf9c8ed9c40a3257ec7bc84cc6dffa7be5913255e646b109faa5361b6ce094df0ea1ae901e5570cebb897f7a83493025169538c3c8db3d11b3f943efe842cd8299c385b0769488366d94bedcd4baa82efbb21a1fa2a68cd9abf32716a0284c1a0324cb8bab1b93b5dc0feef9b664981e6a24c351ad8a9ef24c9815baac10f256ac50f03bb44bcd18061cee9f34146f027c2189c371a3c795ea5fb3100c33015ee673f528adbddff95df181be648fb4b8439861689f73d756a4ff7cfd88910fbd9ff42541af20b61f7178f7ada2d561aad8b5eafa3e7df0e66bd93e9af1317ae0bf3a27e2a0dd64d24f847305906a003fe83b05cb2b8f3aa9c15dccd0a5d1f6bc8acc43b8a1d05762f3b5fabe04c50715638dca3a3130fd8dfef7e086ce17e58a95843132056203fefa6aeba7e33892a550055f2affc1aa7f4574a7efcce7ea40d0b66520fdf5498ae0cf4253e2edee733e9391413392208194fb32ab5ce70a5c9042dd08ac54513fb13154c0731fab12f8496b810b5f4f67f5acb85f76b526bec710fc5b308322b656e34482821c2ddf64fd135a65916a321e6b9641b8c6ffcc3fc1e0e064158b7309d83f0cb40e347b4408aaee2bde49b81d31d9addd86314aa74fede829476fa1013a3515a5855deeb24ad9bafb6719c59cc1ad5a81ea95f33f83acd5902c260ffa3c41eee385423179445d6a993b53d322f0c84048e8c110730a9caea36c359b56da6e964735c667c3b0d1a5a3058d04bc44ddeae68d243ff10070252be6caf15827b6b7857da5c6c94bcde9f6c1c62b76940cc1a74489b455b215cc4d3e54c3c8178fce432fe97da8d331e0f64331c49cbed4d5706b9f2521cbfd2a06f73b710f5768f43272a61888e2d261f1ef5761174c504d5d776dedfba76cdab137af562fa4d0a484db1f227e3fe3d4efb0f8091680155c750afa6e6f5b66c453dcca7ede552b3a158d6fc65c2286ed15e3b9e8cd4fb0d67fc6a300d293a0a68e92e2bd25b8ee36e665acebd34174be2afa51fc802a68abab7f5269ad264ce6313fa8f05c319fc386e47d1947ea7e3e6237a9f1d4a556679cb57e19bd3fdc1a8d0ce1d0f7af96ab173c1a38323190269bd06aba1c7095ef92b3094468182464fdd1d295ca3bfe95b1fc5235daf8daf84158e7895e6a00ba9c526b2cbeaf1e3172644416f904ac167432bf5a6a759e9eece3161b42ac49b5dd3b493fdccd36bddf719b37b774283a5243743b7e9bcef28376eeb850a167d50e188875fcc94904f4f864254f6f50e07330b431de8d3b67c4f1db389416290318282c4285447e214f99d5857392aa11a4963cf30814845adbe5600575c64d88f93f7176e3a7d3668efa7608dc78c2615128829811ae280dbfc8b5bf2a0cc52d98438d490d3169294266e7a00497c46c504a27e725ee7de0505bc7c166beaa87ab8a4271b4fc28bdebdf547cccfae80ae2dfb19fea125a99b965047752d09ad1f40876d1623a9e74786fc0f387f1ed12a2875a5ec6708c70872155929e68f4cf967efa042aff3858ef3599af47f5618f83bf0f2019bedaa9e89f52036f1184cd9f6a4728f643883dc3136ad30ea72308970bd1671d6a8c4a7f91370d58ed362eec50cc4c55246d802c46e163b07314ff258ec021dc0744dbf68e478767d322217f941f9fc5f8a5d2416c338cf2219271221bb30dabe33bc777926af75ee4d87ee6d01120563b93e0acd96271c5cc1ce2e0e5eb29a8e44ce509d6cf0f460186293023d6a7dfccaac8ef6b132e23dfc914326d34971cafcd052d81f68a45d09d28328eab6ba44e78d2381a7440237cb03e2519e59e49e9e3e9184f1306adb865a6f3e0e012e5ced32413ece4d262314da863374c24095e215e9cc9148288047f3d89354b39f68081465856f83066cb9a628194baa323063220c51327acabf83e6aad74e32d257426e03c9b53133f87cdfa813fb0dbc77069d950acb122b76a2592182f9ab9039497635d39c6d2da99792202384c57922e0756d3b407e6809e9a4d25454c89a880491cc027aab720cbabfb04c41e9f60b406fe49086eacc1af37d1ab627885a267f01499961f96234cefe512aa65351b4d91ae1b68328f4a1c276a9671e5dc1f58cf951d4adbe754e44f31b3cc1e59cc52fa1fd4c04bd4970160ce53146674d06b7989a2516ffa475f041e0641fa836f0b51b264d2f278c5cf4d25dbc8be43e4c90c6d8673924188cde52325a51fcb2b807bd4d6a43c9e847ab65dd591493197b57c491d5afa96165360e5f34120b5a5d7a2d77073a6ecac2262024d1ad81649ca066fd96452731be10f17441eb0e3043cdaca4b0786e027613318832766596a61a7089b64348fbe2f969e3690131b4c113dcd2994ae2bd9ee1b064452792ccebc8d93edc1f63f805a089f51570a1654be2e7bb22a758962dfdc5b5671caa7e0f4400b1c7d156216f8a317122a703c9e315eebfc0aebe6c836ef9a0749a3de2dab34b2c71f244e1d2aed69e4d0d6627588b5fe415135a516dfaefc46913d8f12bf9a48ede541b14c71531085b7e39230b5d24715c9190240ceb84a2afcd8c65853bd867731d798f09b8538c6cbcdb42cff444d0038fb8f42c08f5383fd3053e3a54542574f1bb1d80fab75b667a10c3faae86497558f2b915675c29ed3429b00009b5ce0ababe01b23d15260a935818dd3793f924cabd4d88c0785f1f5713eb8744c7f7cf76d34e2faa4ad63c5b78df66c2a2e9e52250bd44bf3e4e0fc9eeb8c53702b401a1a07eb4edc2ea5b213ac6ca97b9aea9fbf394b77077b54380606ae587cf5cc07c2bfa62010d77528b9d52559d15d39ce967a128ed2f9a925d4ac4af7e83b348a657c595ce741a4b594884f6e0792ebdf6bb687c4187a3d952021db087532a8fd11e53cc3434a94656ba11fda9ef7e4e6d630f157d8807b02098241d6f3074dcd17e0c0e0606f50f91f38e3f01be12db45dc8ef476f52a3f3ac05b715af0bec8f43634f2138aca0d1e38f9541e57f9b1c4ad8bdc3057612d1443b96d068dc4dece51487635608a3d66749c5782b017434b117de896e2e3e3b80b9bdfb092cf512d0dee5447da693f0f6ef0341630c1a6b01884ba8f057f0b66a6a317a3918086f57239f85e5904122b5ba04713589d1771c851e8d1236563c9196c7793e4b3a78c4adb6b1e206c1c2c38c8f6884b655e266f82e817a526d3cfe3f22815deb89a5c1c4a09eb776b442f9703a68e91f0c5cb5b7fc378bdc04f4a8e49ed0706d6414e8221997eec1f650894002e1311c86019895031f90109d400fcb056ef7476913f7d55fe893876612e08256b657d885871c252f418e5216f10bc251559381367e8b6f66d0bba857136f9c6247c33516191b0984cf7850a78301c79c2b497c4cf015a9e29abc5276cec374ad680673b8045030ef821e86de66a7936d34b597da7fa26e83959e80a50670a976675a9daab0713fb6a35ac90690a85427a98117bb3c66ca779c4ac30603eef71e78e150bdabfc42175ef901d99873ab0227d9caf731c8f756f0cd2cd57d95c2b21b5022ab075dcf314d2c4088dbb603c0a2e86a352709e36829f48c16ee189dd435930c60ccf327aadc2154fd3864c90f8937f9710958dbcd91980f90121324cf4393d75ed54d7b56365059f0f46df3776ff8c118034a85f9a03745f3b85db02d8e4b31a4f0c7e997466ffaede634d1efc77ee218805b7052e76e07d0d528850623bfba08574cb9de69f3352ee4b5e30f36e09c8f0e04186272f962c5284ae75cec1715cf2450b8feefc4a527cbbc635bc3971c6570a1c7463c408da71b7999e98d40c3352826bffd96fa2f1a56a1222fc8046451d283f5ac22b222d0365547dfde589efe958e9852b444b6378c5687455df970900a24747deb341e6174c699899f5868abe4576f56533043be0db09e63c174110ac625e39f0605e6e360cb84fd2a3a91027edaac1a52985b3795b25fd7a991903253abdea6e140bd04ae978978756de6520539588f4016d2319e42f0713f12d12c533fdf8b89e8c100dbe6038948f1b76d35efebdc7a0e51816d1cac36ce6f5c48fa2265759d1bc672552aa2a0c50a858d7fab9ed1d56cc39171fef2d487134a8d689622749851b7911f13ed2ffeb8d32c4e808ecd4c6a3d8a81c759d174add27801c4138b08902051eb06735f90b1bfd1a862441f3c0b17c6465241274c76f8b50b665162dbbdf943cedec38e2ee073c757bdc484b77a57fa2ff042daebf9b48b57adff311eab09a47d34e7a1e0d325f770d7be300618a43c695aad3cb37de9c1e6ca50527fdcb1c4feaf12c27033cc319449a07982e94bf84b5bb3d2dc0aaaeb70aa81d0b98a6f25df94ea42365ce655204337c709f14b1d5e3bb2fd11baf5a8c7471478163178073ce3dbd6c0d8845be7a671192b07b612dd7bbcf731a3718d665d2922120ce73283e2c7e58a287070d53add0e13e1c0e2af0ab70cbe606446b5ca2932437946c06ec1d840cace8f567dc539df84e46df8523cdd2c2537e40823b7877e2667a8256957e613b92e33a065322c157c6b056e20fb664896fff426dd44d03680114c0688e3ac2043fe014a01c32a6e21ebb537f15fdf318937237e6fbef118f287b3e524f6a58073fc166d0bdc55139e7ef09142128340e84a30e78d56d11d204f33c20a8388973de7bbab662e721f56c59b723ae0e6fa2f059c15d21b129c5c79d0f1e1525d304a3dcc88d902297ff5877821c3dfbe2ab5a2c75cba6ff21d6b637c2356400fe3f9b591e0075276cfedd0f7beb0a92e58d99980e084ee4e814938b1a415ed9401b82144855ad51b50474cace7172c4f5c077573bdf26e5d80ca63f3103775c45bed69be8436974418daae987a1cbaf65d0dc5a753a7550ef568e570e1eef2d98003ca5bf789d08540701c2a1866b7f244319e41da4b7b5a71c977124452af7f6b4432637ee9c712730fa35ad917e59f3794627e178902e82cdd0f4b90e942e373f356444e16e6c2d4fbce7231b336f4bb2047c9ea240f535f78d9b89202cd987b83d823e93f41c496124de365ca9d0c28edbf4c569d72c687fcebfbc1710672052cfac34644b7ddc1a76f040dd26c9c69b1fa23cbe0af0773ade23524bdd6fd91c0040e44afab23c7cc3d18be3d63a4a20e2d311423ed0d0d28285df3a3419e7b16a90767e685d46bdc64c195607cdc9ad227792151a1845ec2c02f9158d4018e695ca23aec24b63c7e75119bf7e96d681d560e141f6bed293c844901f7457e1291bfef50162c9fa1d067faf3bb74e9abbd93772845dcb6645766d40636949591fb81e31d668108d0e403e5eaa2f8cae630ebbb37b1192282e3ea1c8022578c34b2bc6fccc2ae393eea606fb66ce9e74f0255d04ab6a73c4dd34d7ad53994652eab1c73b289ba149dbe08c558329b4bb30a8eaae003d34e1d1649375470664480decfa81a00986abfef82b415e21254d01ad0a45f8a650f81d2bf45a09fe8655856175029f8f884377b47f7f872728b0791ea3c53bc8796b98255f30349a209c291f69a97eaaca1c23edd81191a174a50e357245e45149b4496cce205c9e565b38fe4d5b1926182bacf8dd5599e7317b7b36bbb63c672b871aa9a342496594a1f74178e40289847542483e0ab506562ec2152013ac86ea72d08687881bcdcf557866f5b032ea237f80b2df922553fadb2f87aada393ed63824839e817110e83c94e91da4ffb4f1c1183679ee420ff84e2b5270c28ca88a4b85a011544784310e9d75c3b5c20626dbb552b7128135e91fc83be177712c81cdf3079f4f346755b1cdd754d723fb10efa44c6053e95506d8dad45d9343c9dee0d2e1fff93d0f5d46010cb30a11aadccb26c4a87015d9868d918babe4a60f446ed3e6e1ef02cec64f09d321555209fe2d549afbc6ff52a968add77a8f0ec32a1e49b2e4c7630697e326dd0475a06417ab3bbaabbaffde0be4636f17c63e6c38213b0d0ad1231437be550ed6eb07b2aec29d3462920af6686029998d5454aee128b4f00d63121fd3d2b1b91e54e1bb37bebad98f0086e71d9eaf52f2c67a0c1122e97bf7c455e16cd609913900a8c0f69bb261eec6b4fa1c61ccee566b7014b3154aa3e16355a2479a3e1406afc648bc01fab42be16b20eae008e162a07f87ffa3e446c2aa70b7ac8667478f3ed69db60b8ed9c5da76db3e98cdef76066a1cf0416a5cbff95fcfb9afe397ab92170e1cd0ef25b79b763a41faa9a52498fe29ad6d7dfa8b626d666bf8a50e33b2e8b0f2d5d0f62ba2f9558d60e460fca6bdd1ca84826efc175037b3050f3b0200aff05fafa5ba0b4e08e2e097bcd83212244ebfc81e5d68792c2d836649915ec847ae164f936f42492f165dca49ac66f2d7b3d6b9d1ec7994605db52012149f4e84f12a038feef4fa9b28f08ba2770068c9be67ce0fcbe8647042226506d936048d68993b48a709b866f00bf79eaac37186b5e5417693a5630d5bc18758643ab0146d0e9c602f4de873b75eb57e759b0efdba048d41fdc46156c0630c99b4671ec12ad359bd556ff25ee43d027c677fd51d84b8e24a6f93bd26258ccfb24c10c1e92ff9ebbeb50651563953e4544ef11c3048f051ee587c7962b0c228761801ac981c85ee5c9fe6115d0a2725d239b19468a61a194f5d827d1d25e9fb04710c82cc29a4680f7a2be1ace73236ca5cca3748267675669ada15209dcce1e2afbb3772605050235806d5194e5a4557a359435a52bbb1f14709332424c3fea631e8b859e96c9dc1932d99d28fc46ab56255458985db3ebcb8b90d0ec7f8b6b299d8bc7fafd3e0526e824f9ab9a401324b1707cc26652b890da6622751f891a60df8b5bb93b87b49ffc182efc9714ccca17a0f45601a9b1cc1ee055605276638d22f521356f79c648b20d8689a7ee1bf510097072dbc67357a2fba49de1c227625dea6e6165e90efcd83b4943119f52b148789c71cc5adb1304d47528ad95d71bf962b115c3347b707e227642b2860b48bf7a714e563254cc73a580eb1da7766828f5cf5275c5e45492f7fd422ce6e0186550fa7c0e881e682a06d5e61ce2b56dabd109dfbbcab6ddfd4fdecab13493b29beeb889c4342739705d30cb33e1b02db14fe4227b1c81e94832a7586d0bbea6a4857e309d67b14d9f30d00406a335e518042b2d12926dcb35fa909e2ade4b0d73e01b9c94f753b88c1675fa9142f5d2f5da60f94d5f9222ade0855f6ed0affd6cbec6a519c2fe0e23b6a0ee474ebe8caaf12da32de0482fa10f694c876dd88875fd3ee60223ecf85cf571155f729078f66658b9df06ff1185344b3707de189e62015f54b94a59da5e97b3d6a446537533714324a7f962ef63c48185918ed0aad4c95ec83f6dae5c3178e0d79fbde0b290f8b41a465be857dec07d222bc5276ca11a2b6f20b93ca1706a6614da0f8c235b93601bab8cdd804eee499eb1937bd5ac3d3d1da97ab6b86f474097817ee914dd50c4ba6dbf03cb85fee6753d0f4411176fdac7a9593bd1821bd57aebdcff2f79662305ca69a1bb75e15292110f0a2cd57fffd94625b444a524e63bf813f88a6bceb64939d2c7910113552709be697557a9c639344a98b1cce420b378b3fee77a5351cd7344e4f36a28c8c1af9ed08c130e3133d7fa50231442264941c72f5a4def1e032351e88977a0eee1233c806172b4633f246a5a9dc1f8149350925ec049b9d1f147e47babea06aec49d09bd65bfbbfe7280dd029038b54103e3ee59498b31f75fdbd1e3fd40d1f9a3e2aeecfe2773411d817f82cf5169a4db37a20b4479d6bb33af551be1ea8869badf133d4ce4bb9d382c391b8fe36e63e69373c6f732a5c2ab296ff6c520a59b9c2df893fe206cb1d56fedef00110601515a091271cc72f2fa7557850b577a73e41c4cf445b58f080f50d415ee59a8249fba434f5d993d5516148319849e12b31043161139eca781b69511048b550275fa8334d05d5c44a15219b703ab5541f5c20560bfce24f3bcd8319061049544960f40399b39c6c6db90773e4c409338a76b6714bbc08e2984470c5087fae367473c929929e50c6b0c1d04f24167a289fcef84a6ba2e270617133dc15b0a1b6d251182d332bf94681a2eecbe4dfcf2fede4d461060dd5299738182011973ddca35c1d6559ea0446b04e3daac53b9372d77d419801a1dd774c2d4ee4a5f99951f800a08ee2ec224c04ab005db1cd498b88e6eb919c5a0f0bc45df987fa4a314ca75ac12ea9f48cdfc152909841b5d8fa466ec303d37a733fe6e3ad8ae3e78a64bd2b59cf6f118b10bb308ee2c295d3c79f0387f7d8ec96cabdc7d96f24279ed2ca252d101c5d33ceb096d3befd5997f8a6bb1bc871c4e4d39ad2e0ea4282f6a14571d63747f5946870417b0a5a09dc633c52236e8707755d0b70262b2795ad87e403e3cfe16230fb53a615b581f0cbdd2b82100952561df185c7cc548300396c052ab6d9539462ffb6a4ea195ee7be797e3c53b09d0b9dfb231322afb1c37febbc02f0cbf673566cd19ac64665b515ab4ec8ab8a774152c381a55e27aad37877204a33b173aba65afd9632541eca7a5f92eff466a10ef2d29078ce555839ec317820b62842f5f343e5b1cd697f4a8c21510d9450d4081a30d60fef9b13b771e925696fdb6d58c87b07015bbc9a69067d8b16e3df17a1a520978a66eeef5fc2118d07e05a2f8a3c85818aaaca1adb39799d6161cb3cc4e3927f235f5eed32df82864bb81c3dbcdefbca486ed9ea5d9937cf7da07e900c10bd7b0fd71cd6ce6356531b9726208179ae8da6e5f567941b73ceb9b2288dd98882890aded78a2e8d688a47a1dca97b60952a0759fbf3dd84572bb6f846b2bcb2691ae85e48a96c3c871047c29f20e8ca863767307db72a95326c669cd998344f9f10cb2f04c75707910817585c62229a742cd712720907a870ee648ee64b0f9ca502904d63bb31cbd4b60156fed056b1554dcdf677cfa7e6b6506ca4c1ee109221caf8f2a2b4e6e4a2b81a0ea3dab9c1dde68d108c838c7a32d8f8080919e788faadcd2fcab9efecacf918f15e2eddbfb20823d093f9bb3253e7fb1b41300bb977d2c16a126f5a1f9f6f326e7e4bdd71ac0db1422fe4d77611791fed05f9ac6353d29cf4f8a4f846e5a80408e4369dc386847d2f97079b2f36282a49a11a1a4991b0cf87386bfff3564911cdea0d9259f2c36eb544caae24fa0419ef9409341f9d4a42039cd30280a27367eb1780736892ee7a37622f30290f72dccbb4ce794e526e2c8ce2e24fe348fa6846adfa11945f1e5922281f88d96a6d36966389c004bc68aeda44bc29c3cf833538b23ae364f9389cb89fc7313d4cfb99307829526c2a51ac3ceca9846c89a42ee4d1c9e978327e4a73854fd84e1b0b7f3e80efcfaabc37d524effea5bb667622fcd0f7bdbce74652bc6e818d445c8189556f4c1636d00e025b9b285f837b6b1b7056c745a343bd39f3a62a2be6f8b4cc7688733fa140624616a6973d9c9bfa01acee1e9335983f55b6a9b31884d606bd8f9e9fe2e3392d3a49968247807e1f6ec97e2eee959931ec9855ba26edd4919736bec52ff1980a2f016f20af51385044ff2129ab5c2a8c22590b765679efc9b11c26f64f07864e8e2f007f530ce34a6e45609a537e7e81b699357e517a2b7d14deca5794babeb8c5f3fbcc33e46a240872076b79cead62ee08b0ea46e5f782bccb2f5e17cc69615289af174046ec7f265196a9aade1058c6c2a9ead9ba2115f3d79ac8a687efe732ff13cf55192c0b07aa4315adf809afd18ed4dde1d621824719d6f3258349b08e695edcb80e09aa06cd6581cd141633d5893197849f3cd2cc5cbe5fd991f4241ff9a7af37730b220588f78f16aa5218fbf640f1237569f27c3310253f30b25ab430fe5bbc813f7e06373191d746410e59a28b04cc531d3b27533ddf69f20446615eab6f8ddc0aa03f5a737fa40458d082aeed0188416c57c95babb6c7d22215b6ce85cd418d2d410393707b59a6a96e8ad4fce8b7e8a4f52a9b98af59f7881924ecad426c8445b756c4ab1986f6908a5e784c6eb7d795311d9385543fa2fde42fbb683b83f419113410b001f25c6f3d7ea02e0e935a77c6d5b31cd0258d9adf2c878ad6efdfb2a71dab8fbbbf31ab3fbb887f1b9be3dc68a5c51e98f34fa18ec1d5add9e391dbfd6e9da60fb31e89fcd547b789d38dbbfd7bdf4134935bcb7789612ec13d808a1d0784d5b76792a9248a976718fb88c1e38dde69faaae93ba9632df21ff202e67758ee7bf9b17079bd60fb3b5cc7a64efa44db8afcc32cdd80ff53eeefa34777e62610d2dcaa4778f7d4c108b25e7944d57cc6623f1b679a5072f2e9f7b845a9da043524a97d012a6367e47386a0ebda3f6201e4581f74173940efca8470efa4686a3fda229d67b33ba85aa25af4b703f5f0f2597eea151c3fab02977e6d186d486937e15bd72755d68a59b83d3720a2e977dbf32746905c718c00499df4e3f6d0111cd2128d8b259a14b27227a63df136f5d5a71518ffec383e5506584e07f3c75ce4e0f23df219d55c4b2a072363d4705500adae1c1e09a1364c98e3b272b0673a39aef37f7ee79cb4cfe5d10a3ebfc556f57ed94b7a0cb90d62b0ca0487e6ae4f9b47917592c49c86c0308d251542c850aed7333028eb42581c2143cad4def1722593d77e1afb9e0c0e5c91e17ce64857a8dd47e4ed3bde185d19f56b9c32550b6c915422c98bb45e728a5eb4675302efec6cc94d1d1581581964a5e42a0e7e284f9c22e34e11c83137b5c4005f751290e81a5ec148151b7033f925ea13af9665f5d7789c4d5f215ce46b87902fbecaa0f31fd838f25c7f84b11cd558cc1f90043c35eacad91853ec60b0ed5acb8a1c8616126adba7b1ae7f3c4c00e01135690dc5940d1a822c49c1e803e3478dc819b785a9b9fa41e328e8df4c3e9122201906a56c001657ef28c23b68df754fefa57d104b559e198480e845390884ebf9a9151d3105d245aba68db288c3232fc490b37b976107dcd04698fac51a66b3b98b692df47621b3eee10105cdcaac938cb5cdcddcc26ac5efce41124bee1b9196c172071d0a7b9c3c01ac1cab275dcfeff456bfe1bff37dbc706e2801a11b69c2916e62b18186bc165146895e1817ee40f80759527f11f7d1e9e9117b471b66bcdc69042f26f603b869786147eebd4506c041647e823f680c99bb524bfb75a8faab66fe7b1d4dfeae22e9229ad7fe22fdc4e23ef8149647d2fbf5c53c05ed3a2b526ca35448c4a84884d39d7e81219addd129fb029fedb9c4af5f41b3abb3aa197d4675e2f3a968e66b98eb6e672c18e7d5e5d14800a0d8e3324ab00d9b0f79d5296e5e06cbc88e8ae2eaf230c1699596b9afac03dbf183d35160d9650c215ef1aa142358a0caea39ce0a2743b82403ea4a0734f7e7fd59f859b07811cbf48786d5515aaa13b1b1153f89906ca1a869bc12e1a8b3b6894f4c3f9c67151bde25b8de632047be50ad92a17d1bdbd6f66c2ca70f0fb48bc8f6e9579aac11c840789be72e1f16a1d3a733d5e0e1cf081a541a7788903890abb4a9ce6cde9ea083ae4b364a86cd77e4fcd4dd4b5e2643ac93de8ba1891255b97dc9f3c051a1044133af5d2f8c06594fc02b5f8ec662783d10dd5054a9b93a3de53585d80f205b8f2f81f826ba8ca7da1f3ef97bc410ad5f68d05a964f279689dc42f0138f83e5231ef68f0f2f098e93b3259b2d39b6e25cf8f4437bc9af75da436c868ce85fc1dbf0705b3a036700cd85a6fb3ca5d871c5614c29ff097c739c8dff29500b796329b1622210727c47d162f0079bc9d18b1675f30d79617291d84c32433d90b12f736dd1b32e754c6c7d5e0990b5ca4625ce2b05cb02383eaf48fe6a242308f70b3f8a3d6267d80ac687d5fcaf5ff18f838c2fa233a16fff5dc2418aaba33bcc6c622850935cbd903705aecfb323142845407dcc91761037583b93cfa9d9e4b84f9c9e76c9078b6c72fa081b623508d9d0c3d02c76e365b829a1ab201494cbadf7672c53a9615ba4ae63eb2c4a0f2db399eb3f8e67638e230cff135ed2e09e90fc1f04c09d614a8869ddaad773dde2ed99438b70775b896fd2964c8b50b11169db561284ec3da51d09d49e72cccc2c792844036239e1dcfcd86174dc73cbcb1a858992b94e0ae2f9e5d9d0ff163aa34ad5162df44ee9c488b7ba47f13fdb3928a0c5ddd69834469804471905ea093d5e063ad0c5cf81cc205b3c2faea44329bd44deec9c9054a9736c2d56a13ae027c760923a0c3a5f78eb94fac1a96226aaff3942f720912635cf9a48d734e1341633f09efcd94038a6d4b1351317e1fee6ac74bd8b87f44e4c6c7049aaa25dd1c0b5fcf4845efb88e18f11bd91195c3bf6204254e7ca2f3ade4fb98b94efae49e9a374095212ad850492f9e866825ccb0f1ae8fadd18001b6f0bf035f8382a7a7b85e69a11da3b735e103021feb931941444e1e1f7cf6135d99712057f1c04a76a7bbfb8add75dd731d11ed4236255df1fcbef0cd7486d28f3f0e742311b60ca9bb74c9aec0dd5b6789169b2e6171a95dcfd73f3f9449e15a55de14304af5fe55417d41c20c5483867e04b8a3a5a806679238c15d872591d47cf653c15caaa353bb47e21f180b51a667dbbee13e76cbdaca89b7c1dbdab693cad3bdbe06432dd8f27f288440cc9764082bf4978235f5fe1dfcc3278c13a4ace395ac388357918d72294194c3727f9d42521186be516b9baa57cf3e2ecdb39092c2d17bf195c133b7d14f768df52bbb61b633c1616e9d2b13465bf4dd0066ef7e2f063be37de6943d313362052d395dceadcdbcf52fa736da28c70e9ecf929790c34ec55acb66491d7fd8090a4269edc35aaff8950c9666a2826c463c55e2df56da610ab285e558f5a348b9a5285ceda0851cfa4a4d26d57db467ee2db9120a5424aefb81a949dcb8ddb074398eb5d1eb2527c23060902c29f684bf65fcc2d8ee2d5651071a5970dfe67ce2a47df0e1c9565a759a91d74110157ef2b710c71c78bb7d06cd332f71af9cf83c0d8ce31c36b666dc286812482c24a3af4b67a71de0ca7aaa67c8a8d30e60242f93b997ba0ed513ef3b4b1e9dbef3cae5742cf534b7b4ebccb0782fe2bc866aabda9c7172e8f812a42d0554dd8628861cfd0ec0bfe61faa3da2d578086a608c93b001c3dbeece5d41baf53ede3aadbab6ba595096c4326bc6955c51de276cdba9b140de0931b23ad4b923c612c9f2beac1c92f5bcc58333b696532842947a8cbccbec071bf3ecb6edea5101d85374aecb4a5893c28a3fd5792a426fc859de38956e333f6dc8f630a284dace03a0ca2d863b3da2414c35fd5ec6612e27c2753a29f5fbb42c43cb477a5708ce2f6c86fe3507d472aa13e7f238baa30cceaa778bad3f390fe8040d8993c6f4284ad9208354cc3660ffd0d2fb6da12615e80facdbc553a59e9b7375e91336d894e384ce711b77b3846a6d628d3f34c2d22500bd4b4218bfa5c7a680933e9330f95d0e02ef8cc636639a5fed6b1ae7ea29b86c57058f90a7fa5d498616d8a223aad3bd5239d7def2f3bf5471bfdc0c6e06189642623ebb854d1e572f0a22aef87b0cbff1d2af6663426fbde706a7caaf93e42cb5f7e6d0fcfe3a6de58bb2a139559de276f674ae3fc0c7eb65acf5d83fb9f1d6e417d2810aa2be353fa692b90313cee69906db98441320ebac068c8ec175f18aa96e2cbe279837f22bf04fabc6f150765ea053cd75a3134428a35b0788fa8a4364ece8e7c35ccef929b9efabfbf22fcbb58d0d6b6394dc211e6306691a30b9d396d9a9f897356d99e413f3e7fc6ab44cceca0bbe73b43a9642c64b5d0d78f0864cad49dba79acc93d1b8a02d449097599cc9db6f7a6733a33e9cae9fda29a22b87dfb7687426c974d0dfef20660d22a8b6354ea4ab0298b91e7bdb7fd6b06dbce2a706fcccc570e7a6d32ccc20b83c08cb32c70b87a191444dd6cdc267c5d56b725052b91d6988197fc3971efbafc1381b3753604f75623eb5f1f70ed3c3e11b6acbec11a5490098c2fa391915cd89ea28f0d716b1e4592626db15c254170cb57287442ac26eb6ac02f06683f950c5db2b2566c5d8e090e1b9119ba7031be70c7da49afd45d0d0b2e31d3efffce1c649e688086af445a5b0c95793e0dfde96664ef7f0f02e742ba9209ee9d817b61a3692ce93b2fc7265d37f2ea61b3c9c8e87e566909f33e4b9542acff270a5e11509e69722cbda34fe4dab7bbbefc9aaee03bbbdf3aaf6ef8e6ad8f2f6758b2344f23a748eeeb37696f4c2587c156c0a29cc94bdde00f18f2aae21cac49f5e9e75da7e468bd71925fa13a1cf4df77cd7fd88ecf6e178c767eb3c0d72293c393fd2126069998e9971025aa2de15f007509d16b4b92583ddba6c717b0a69af8ef60c9d023f3f9fe721f14fa639afe631464f02237f232547d27e45e30949547eb34833a4116dbb7ac4ff3d8d225eb038b0c7a580226864f5f1b380442d0c3e8612b3db4a7cae5c7eb4a75f05ddff4febb2d09ddf0bf8a74f61c3b331aeeaa18cf805c615fcb137a290de6a206014c75b32959be50f1e932e42f729ae67f28fa8d5ca2fca27f545b862bef0cc643b2a7b3e83928ac3cc60cd68dc5991847b295ad515e054269a760d965144fe5a210b5aebc9939a648ecbad03478b524c216bbc0a1703014dc8a71b928b135568ec45967e7595360cf19aba26d5a7e9c1aae289fa7426500aa0e853b08e91c0d8ae6a50fea56096f86d5e3148c302cf2fa61d4a5c46040cfc9b21cb34f95abc99ff13309f76bca4caeee81c815cc35eb0504c0b86578698ab473d1ec5a480eb2c328f976f987a9fb23b07ec2ba74cc49f15c5bcbbde37d5fdc66c6c6530a6242c1f1750dcc38d7271f271ebe6b8a8179c7a8f765d3307abaa2306edb17b310362283f067b122e369cdcbd2eb516626eecd0ef14d3cabf6af983ab2690d827fcc4cd0f70ab4dc225ad1caeff88eb778db8d699cdd9b7f29d6cbb156694e611741c6d661ff73e141fb966229c6af59d3eec05d8141b33351f648f781885ac4c1dc3e05f02296b37aba5b87c8527f57b0477c5ce35ae1e18765fc4e66cb42d8742f867fe0dd0abf9de004183208a843b78bd9c669b285f1be125aa463db20031565570fa0a0a3052752beeb74f1c377c25c3fa38ae0e40a94091193bd434ec4286f259241c5a58b25ec8f8d6d251d3ef378412841eda495797ec166fb667386c3fbc4edc08e1558268d7a6b583c189225edb693e11c693a89a872d1d20d36b7a3ec23dfce6c02d372b2b74a092b2b558c1528332f4a51ed082b1b5f392f5e96621e7e9bef2c952686d54e0f68fa2f67ce41df38cf347a4f80ec438e000030fb209e8d5ca9e48511e3615e12a801f04857b691b1cd9714e5beb7dd8f85f71d57bd79c0e9619d1104159508c3dc11116b8d03723c273affb1b81dfd368c726186aa9cc6548247d8f173d0df1250b24349282c2e970b0ba1925fe7e979f3d2073e41bfc96498c9941b14c4209ca528f5708cd49a531d7f24703525e86c6dda1d898d124bc91a7e18e8ccd53d4652a026a45b131d47ca6f2ce2809f508e16b25b594a7183eea4580ced9e9120db033895aeaafc0bca7f88eb929326b76e07f45dc733ace3221590ec2d0d8814b4b19988d06904c52989e38c21825df0e87174099d29235b5b3fdb7e59fd1c6e89530082737b80cd42c63619d006b60f944df56f6b4c065f360ca81d5779517dc1c82b2a2e40a9d9b582aecbfdef01be5a306217aacb2cb14e39f1d5cc7ba639ab3f5fc08fbcc64f50c7454816a555cf96e9066384a728f593a5129a80548a372669adcd9ff9ef97e2471bf7cfb296ea1925716fb6032f58df1548d23f53329d3a7ec3d5936be3a691de254fb4e7608ec111b765c936f7a9489baf75197219c61d43b12d1020c73c8678931da489fcd72b33a013c9142f31740e280ec1fc68ab9396a5ab30c2acef13afa2accea980ca1c95d450b7e42896c4190418bbf580ac6d5c54986072e9d466a395bce30076b3629d02285848e1c3be85481bc57b5b9cade319c7cc191832151235d8f20e9c20f8e72718c3d6930eeb55f880ca4360c2797ed80b49819345b4c6cc23fa14e0b009a71f1e7f70496476b58d48eaaf36059bbbc548b4d276e6a22be4609f28e24514cfc607349b13f52265bdc2713321584096ad8b605a66b1e89097738009b59afe7d820d524d8d7b65d73d3199e152083b24f91f13a1342249711fc98bc426c49a0eaf269caea2d1175bd59f1128aa2355362b5d1be6b5ade229d53c4125b2a56a5dc9206c51886c14ad9b0050294d8fef1c31c077a29797b691eb1f7529c4848345b1647e9a1a10895c8eb9c951f63738df4f60f1a060c32351079906828d43edaeb9098726e8b8383d7b4ad04b628553af21241ecee10d51738c0b3333d7a0aa90bd09bd87e76e8b27db479046ef802eacb274b88dca5bdb0d250e0fdd7ccb5ccd2014cac0ed5f14701b287a71ad284299d0b03a76174df408d3d3e496af2c3a63201a10e09a71850effcb17512d3871788073a61927f65d180f7b275800ebb6114d2d86902cfa097229dd4dc1fa46571d261cc13ae926876d402269830e9af96eb93683ffc1006e21051551f5810a07a31294409d644e0f540a795c28a541b8b4df5f4e05b3724ead4ba465e26e2349891f1e60f32adffaf9b610ca6e58dbf10955337b8e4844d7232b8297035b9ead363eacb0573db3baa3fbc8ff6ffca4a7aeef5713047c93b9ea6cf39a7cf5715c13a710bb3a489f2512e70d4f0e8a5cf2a5b410f259ba8016478f48bae7bc7a0dc4f7835969cab7aea6dacabfbeb924924be83a4df4be9bd171a3de03a949df0b9e41f3e9e08dcf9d5743be0dd1b8c719c91c2847f66b3d51c98ff5c2a263f0e2060df1193bc20ec9ac798881f579137b7b0a4ec42d54761f7dd56f711803a14a15cbbf523498ee4bcef65e6ca09c97e97361035ff65138c85b1c9eccd398e88563262110aa5364e475a955088dc0df8f9a006797290db0281ef7d85e7e344f9ad4ba9e54e19813ff8d4b6400bf11061d88a15b0f9621e1dac49306d85e7dbc223b79a6578ba17551d5bff3dc94d7820415873e6fdd9366b0e2fd938cd0c0eea8a88e18a1a32ea112090060101138e9a984025d0edaffbb925d2c069bb52e8e7a2c041c28dfd2d9b08863fbccf96c98f4132b0182c80ffba47212f05ea25398b5ab2b271e50dc1c59575ca658b9214b9bf316489803fa03b910cd0c2b556335fe9840bb089f9b66485f9e30c3a10aa5add3b069a2df0cbf1b3e1f7dcd06c2a3249bd78a5f2e63221f5a6ec6b92083ea0b63171f05c1bb389e83783dc089d793b93af19662b5ed9d8ff604e1ccff7bef2407cd30d3f642d468384ff5f1b713c026520a11fa2041d2e75010b333fbf1724a3aea65752cd6ed05114b4ed0400e27cda97ba00bb918e06b4d4e6706083a625a1e3f30f328309059dd118242124de1f25ab50e924fc2ef9d5cb805dda0b72d0f4fa516e1d1cb836f38a0a67ea72a91d90098e581b3d52a1b1cbe053ebf85f3b52bf82dda8d512a0bcba3857864f55513491b899d25e2eb2d366a6e6b6b975b927bff56d5f387207c1456aad77e27f28b41d779dab3c605fa48347200420f7a39a60b2dfc11ed42730a5f3bea8bf1fd52a69f909ce9ee9c14054a10c5b869377a51d94c70ea545b099a5e3112f175cffb9c97082113165dc2395d7b20a1228509e2db31c83c490f6938f184693a48366f27ff7fd44bcd427c06d341911cfb6fd942c6711cb7876b6d334e3d490d5c19c378e9f1c29246814c1244784a4fc8360df6d711b763c21af92cfcf2da2312959ddf95fed64c9ac19130cf50c411f57902db0901dc9657bf5f06e8bffb2ac777ebae7f8afbd6499cf6829cbfb34da5dd8690263c6914a6e0788a0a666c7c598199f2ac6ed85ae3f431dcd13f91447fbe9ae510438216f30becde9723f4a49e724a7f6ceee3a3bfba701a6ecad1b9c5bf1d9303326ee44cb988672247ef6920cf340b2715a225822be85bd6151d68bc3adbaa860e18e39277300a7fbe165094f2240e37e116257e4cc3cf048f218821516d1f1761eebaf7b0c9513963bcaeea3b385b653ad536aaf3e2890a4ea5439fb30af7fc2c1e00b97136aaa6c4b8583d3598d475b3544525abe9b42f055d16141bb812dc48049a49900259d6f70528c1baf2020ecb56131b8561d79b558f40d86c4b858a484ba353091a800869bba9e9b4373af51f33e060551d8b32528cddc2a723573d448f71bf13626e2f948d870fa26298e29893adb3abdf3f3be50f52305c5b9d875bd9c5ac3e507d220c8a98e0b466a85722b2e81430b666045ccbb88c4a1b6bca485d56753884da881bfebf4fcac0e7487381f5474544036a717d79dc7d0fad3c2c9ed307b42a19dd6f553f07f1b2d3f6cd26e6a751e87e1162a9925e5b3b956a6a8be5566042349d30f80f2b7c1aac75954e7e98d389b79cd439c55e3eac270204ff5356fd04524846d5f5acdbd728911ba470890a8608ab6d03f3f5ebd6f01260c71ee3e066c215eea2cae307b4fa317bb3194725648a88fc25bd88590f617d507d09e646337821960a71649346313e938e17edeba75ce2d211ca36ea6b5f5c508a8835f83fe22801d10f383281934d07f473a2adc26db9193a80c99c4b279f49b245f8d1dcef4fa0fcadcac88ed1018b160e16ce3e9e1277d9c1967878aa360f0a5db349b82805648860c77e80c039661c1b1be1f5bed0e092028e344d646f3767432a0d120b7daf5b8f50b6c68ebcf1763458af094fa723a53182ed7f902f574e50e92068788f0caa6d5135b0fc602f18ecba6fd691834e6cacd8aae44fd26bb741d55e5a1cc0eff02061c4f4684ccab7498ff76f462aba34cf04110c0cdc4905ae210f6e3e88ba481457976673546d2c1bdba87d09150590896d097ae744211b815fc0bf467f5fc972491bfc10f74348a24c157d44696e52904ed3331a5903d307c6ad6c51a35556d1e4bc6ac9e959ae104dfff9665e26879c95c885e3ce5005920c407a8d4b93512422a603653636c0f40d7095a1f9c972665ead8ab7161b5e7a842b6d5f98256737c047109e836f043c393d20bf46146089718a6fc0171c859d005cd121e39ca88a9f26664edfb8e9c1a44265e307ee5e0349c8a894b648d23388a563de8e89ada540bbcedaf7dbe08a74bd1fa653f4b05da77141b4343e9fffec73d1947370ecb30641923583e8e0f9fc0aa1b25e49c4628fd17c1d1c0d2fbd3953c73328a2f047b740af6b3bae24ff4cd67e23fd3fbf0f0ccbb1859a2c14114b89f40cf8c1ce9e255a5b846af2409d886b0698976983f4b5261188423c19d4364a9c2757a097a79b349f6047c436651ccba2a528b7d22c9be173aded0aee648caa8cc10532b8dfb67b7d0267259068b8e5cd663d35a30f4687fa5d1d5abd3f00e60af7210e37309892901ed29cdf29d3ad7f300ca6404e6b009af9a71e56b5ecc10e91018861c1b7d80f0f60ffe67f7896d9d4c9c4e484ddd338126d2327c2591159474113366fe47f59e95622dd7052920a574ac5bc1752651c343a656cb6059cf1f42fbed19295129d20cc28858a31dda1d87d72a04e909ee94b5d01401d6792a09179731487bdce72dcbb0b48176d44ccb5038401c038d0bbe76612136368e262c1a225be9a3c8d55ccea2040ee802af0640c1433aa4f721bda3306b0428c40e740b366ff54acb6a6a97a60f2f958eb0277e3b3af5fd64df797486d6d09c27aa2b985f998cbdabe45d086758ccbd50d2494f4cf01a0573b4f16fb4a70b841a44ce855cc01fffda949365ffa87aafd92bb578ee138427c5f8183853cf60ea58fb2b361626be42a73f86fa1e8200d70e8770b1583699b24e2395a4a3fbf8ac41637660b7e21cbd4ef6571736fa54e39a5666142f674359a3ae1dfce462664f49f8c17e68c414e4b1ec1dafd00cd04a9a6aa9d6828f70f4f8316f8dd13f5a65a772ade0ebafe68f54e9af79c95d2e671e587f1b4b0f0fe49bdcd571a55b01962662241f6c64c337f388d93ac8437b7e897b0be38219d5753295d995365c7232d4c4dbc53180a471464a6799b60f7096fc2356cec835d4f6360d04c4b3e3fcd8906981088ecafae58e66ff291d3a72cdc386572c353ef13aa8d5aeeec5d101915c9a5830f91a279ed0aef6bfb4b9bc7714668f6f31f00fd315893063809c0d107dd5db4de865bfe6437372328c009f9242a7cc7c625639304befeb6e371b94d14b5798bcb289cb17a64b41c0549f234524f84a52d9ff20b16036c480617bacb3e004ed312cb862338ded9647939afa6f8f36f85a410ca6d094679011f13f7424c74ac78abaa87ac7762bb80d8f3eda6bb9068049a99ca3275391e18096906b8d5d24828745242d2f19acdc50c06cb82084a7ae6998094aa463ee682d4291beb64e257e4c2f887dfdbb9fa10de35dab62fec7f48c009bf0ba2bc763adc2a452e2e210eff3171a58899207894ad3f5fe1fb24ed7c366583722c9ad7c6073be1c4308544c55b6aba25324417fde1a13b725d83b1667bb7c663a7a2ac88b015ec0c08c3b1efc25ac37b4de8c7e9301ff01f875392ebbc8a843461bffd96ac656779018acfddf1ecf826d3179fee9c418b57d0b41c55294bf380f0def2ffeb53b1eaefc53300de05be6952dae6c163a21bd170fa8c9a1f8d146299960ffbdb111da043094856ae7277d3238ed72ec0d0e635405ef6b4ceffa4b32b719c94236eee53e4de45101450b90e4b53f50dd9ed5e1a0816d54493ba226fcee043834c52d9dbc4c40db659e3d8e665a2fae90bdf1c86665dc1d0a1e07b72d75a7b4d980303115db39a9f13c493f003fed7b6a48041db1c1db720316c099c5768e9877a498ee34f23a88199999d53222f13013de41efb52cd9578a809164a6832959d8820e40d7cc7e7162f186f230ac1589f346433d3a6bc7212529cdb67edc5f2cd225aa85db72281bd863fa2be4ea3e4b1b3ab63cd16983d60946518f309ff31897a3a2ef5745f42c8d622b18550a17ee4ba5b7d8a8b7ca9b0589912d8808514bd6c41967674b8ff74c6baf86fbc9fceeb1f1dd996eccbcc3871bb4f9ef5e89afc3553576d7104603027d2638f972a5f51ec1db94622e989fdce521206b53f38e2fc3996305584558b090df745075dfa06ac6fc739c9f852603eba73f30829e342fd4087ea80e3a855f72630f98db1dccabdcdded8bf74e84bb493bb20878ba012636faa7132996df9d281ed290c40e349105d905f983fe9a645640f161ee4343a2533fed923565860849a96069f297a3717156846516be61cc173d23ed994cad85a282a97840044741973a85ce028a28b4e1a6d98f12f8c957553d9e1fc3d2b305b5cca5856fe62962bcac37cabc8553fb178010c5231de78e995913da9213d100758f28cf6bd4b157c208b8882739670e8f2c9cd0532b3f82f7f365631ead4a3b36820b3538313c26700ff7282d912469590f9c6fcacd7d6cbd2680d1b042b38aa674d9ad4e0a8c56c730221b72c9f268ee566dd16eacc7aa504a40e01ceafc0ed0ff5f0b0dd2093c6a9a5ebf96ec9dbed88f9cf43e3cd9a7c7b4f73917e6ab6d441ff9f94ef117a34275b72f7d9405be94ff4b3aa78c23aa89bcd58e48629b7be6c8f13c5756bff7138e8821df955f888519e73b8487700a73e15d156420e53a26ab1d9697f68f88336df6f2a0f8798a40b0251b25ce9695fc6a6358ded29ec2531e7b3b92159b285889323e46e1966d0c07fe37047ad6ffc0508dbe0e1ad3ed627d1e703d60e492caf7c16f61bcdda3c7246f2689bed9765195d47cc05bbafdf28c48f018f8fa0799544273d53093afe1bcff993bac8fc49df681d164c1db0846fe15139ddad4f52a1412b1e5afdbc3d1a2b7209a8130c2ee9df9806fcedae002a1ab668a4e4419db66671e5ccdbf89a2cb01256476c996babe716e381a0468816545d5d2873c9a9df122e86e82f568990976948ef9eadda43bc2e92dfff8a4c08ded87777cc31e66ae6095bdc239d459b905e087d09447cf80872e899280eaa29ceb375b5c4026f9afb71b7aace4aaec49d4eef87c3384b817af4ed7febb4565967fe7826c1524ee8e23f27abc7d137c60e3028aeebd3aa6642391e0bf5da6f4cc483293f4b40722d39e5267fa99b92cd7acaac5fc94656df0bb4ec01fbebe104c80addf1c5ea3173ebaf60d419841fca8a42c50add2605f711cde7ee5a10c22f278fb97069bb8339866877b8cbb1d2c7eee97374666c414c2058bac9ed64585d92a3c66d4e4696dbd2a1aec8120db34de4d6583a76b55db72542c2e2e1358247c3f8549bf8f5b92fd86bcc2a93ab70cc21d4d13145a03c1c2cff3667102e3972d4fb2288814d735c2502471580f56401264084be69dbdf57b5315e1b928c2c707c8b4a6144d397944d50b099079be9c782d9aa38dd81bf0720a0d552872d333749d0cc74558b0ad89336b4456695074cc11bc01d47154cee81b3d17496fecc15118a72b3abfb4fcc0a966a683646cef0273c1ee996df148f0c690ec1086269105eb6eb31405039775f0cf52f66f2c6339cac331b994a53c58438c2b289eeea17bfa88a786df60fb9373db360157621c113181ce042a109fad14924965ddcc343c95cbc05c77920498036a05199ad8c27dae6e261c426e612302272f6077ae46779c908d4e1fde4113594000e27c92239b4ea2f5a31ca7940ce9d208fde70d031010713ac6205ca57808316488eb82ed506df45a6c582c66eda36ff824662f740344b444be46c204e069ad024ec01587bb6b26f14eb023c9cd102f082cd4d4236a0d167f85aaec75829156d755345414984cde340e800eb010cc1b25d59dbab08f25a2795e9825c293f528ddd2e1a20ee41b730009f4d457e0a8c2308281bc50388f76173400ab8670a2142a8cda52b89244632bf1c9c344d0fba5e4a034a2b26b5132d83e95d9af19298b8305479571882ee55d757b41420129e214772634f0e4fbad791368186e47d99ae46e7db2f5a4368fddd41e5f0e912546f5a54b987576ded35c30a0b0829056d8da3001667b65aa8b326f842240e4b20cd0347dd2753c82b8fed31fa738253a0b89b1a55965a63100c97cdcb463714bc039c79eb855ee7505b609c0cd9d86f6f8ae92ca773a98d2901dbcb0c9cb96194b784c665bc6b19a6491e21253425739004d106045ee6cb1736ad752ae548de1cf4ee7b72db6b027beda195e0d2b51ff1847fdcb9dfa3392b5f0caada07544db910010b856158735d72e484e8115dd03dd54af03fa6883d70d9758ef810ddf3c7960941efa84b21c767b8c984a0bc29a72e42995729c947c251db01e0379a7a4f741da2e2124cd90fa07fe2a7a4a8ce8f1b9dc696a16baf1e951053bba2f6b869e80b97f1cf3e874d2550e6fa771321bdae82b7316c96f430f562b90dab5efbe517849c444641ee79cfe3537dc7dbf7d853adc4cb7076364b65a1e4cddadb7d01665f12864c41fdad7c02dcceb73794aee526412425e8a1fa868cd2cfb8c3f37aa3c01372d93a665dc9df6cb897b6177bc7d9b5a844e2d687d0765bdbd00898970dc9258d7118796a73f23f968a4206b19f8aa733819204f385714cbd5150e906a1cf77ea634ceb9d8d011c171361af70647edd5de98c2890c3b5a480ce3b8b85fab406eaa83881a0b474415e78d1d8220accd336b1fff39249bc15cb62d649ff34018b88f64579f8ffe39ee5ea3bcff763de8d6dea56beeafda07c267652bd23e11dc496fb4202cadfdac25ab8ee67410df5b917e0921e87b2d6e045e3cc8c8d52c9c55cfe3d8ff7e2c5152cac8cf41cfc9db370bd7b3682d59d3410c8c4dff005518b09dd5ce30e55f782bf033082fa3e4e64cf4ad872a00e02e266143009ab7b2fcd5ed04f9b46dab249a1a2e817fbfb0cac3ce7a9b54783b037317ce480705d26427a3e34614d85e544935635b838a310b553d326896c3ba248d102de6f0a8df845d8e84547735902834eba5126ded13f66a7992c7ccc73917f0911abfbd8fe2c7e1d0212bba7110687732fbcfc093ce72b2538b1969c9f09340d4b7621358a441806ca2c8c5968f9645db925e60d774334198414edfe2e28293db42dd60d90098ea5ff341d1c22170f5363ae0e33b8b06512cacf3aa01c0163634fe27ff12ca727088667b33124d47dcd21107062583b16131a42925789e8b296898bf59aa1d4ea9c980086f834f771c121b7164a896fd6592a353c03458f6daa1ae0a9f3dee8f6f02d4ad761e0783cdd5a9dc880c8d5f92813125f9366c6f44d984e006c8482e5ba4a4da1afd1cc2ff3a71c39d00ecf3649b15b9913e4757bd101e9c85ac3c08e1a5e330017d45a1b4dbddcffb1b5b72d3d8af8ee511afe252a61420ca9abb5c597a8476811ada9bf9e5a86241472d755940e0bd8da321f4f68031d7288f27c7e26512394bbdb9992adb884a71611d3ac95300c8cf15e291156b1c3f14c2116627b6c417842d2d64ff2ddbe01d8525ab07232fff313304b3dfd8c1a8e15162024652d43642178e43f94f61ed34428632a397ab338b30121d56c3b2d57031b23e39c7d28a3655276ce380548bf3225ace660883dc6c13dc32e223d0906409916531fe5063b0b887b1389c42c51c39bb57044472d7a7f8649f5e8719bdc121c8eb043b436099048992e9d6bc9b0e1b853be2f9ec87a7a165cce7f196184e8a42c8ceb6723abf80acf487e6cf5447b6cf35f6c917ebcc2b022f0a07ec76bd4b7ff870fbc11aa553f1c71e86562d0e63503c647b9728fb6edfe6e82b3cc2234f45e48daa21ef57fd78e1ee27601223f2f8bfecabb8d39bfff57c7145429d6d9ef8d5472cc044f11801a3722b68c0767dffe35a17dcfce68c81c3f482cf13d796bf314d0e5614534af4eaeafbfb98942f9527813373ba55cb1a428729e30fccd52d8532da008c1d87e1b1a6a0172f8174a53889c8ac2068df9214a83bf6ee283b452c1fe872c04162619b57e47b9f0834564cd1438369beed37e1d98d569d49cd0bacc7b6563f3d9e01aa5e76fef5f7b57c6da3f1757d3fb48592004019827d331b2c5bd6e2d632e0bb097e404233f43cf49f4b53161e529dfd4cdd35d1319a65c0e7b8f5f700c065717703609d243e5c5b011f75ebdd2269e3e4027b0e58b833658ea837c3ede07f9e7d6026e3a1cf7ceeb3f7bab0cd766c65708d1a5703dd9d22245a0ab2e499f5fb34f71a1ab813abd4e6973dd3ce8b2238273358d6dab35a9df0a82b019eec62591c746dfcbc4edea0f9f759148e7ca0d78e94a2facd914d688dc117f0d906b135ca4707dc121d765f1f4974940a41fe0efe24a1e0b70ad3da3d24003373ff512e9b278438697d3aebdb46a877674f2906c4c46ba79341de25ef4afc5047bc2224545d61352d61de6e30b52ff791f8946129da458d86a1d9febf4502065480ecf7dbd208fee27524899f5579a3610ed06f9decf0d11c1809ef443c6af1beaef7a6cce9d93984f8775f7014a3880abeadf23097d6e4c504fff92cfb00564f34bc7f69b2f01740da843994ae81c877fcd495a0366b5d2d88f38c1f3a9211eecc8f87d5429c448800d45f2e66d15168cb84e16b16611b8a4c32b345219c25c038fd49ad1aee22e6929ce6b7c457b72c391c8e95d8f79f9586288b6a726b84b13f4f86f4b8bee051f8ebadbffac147adf6fb69ace758828517242172946a31cb060f10209c4a4416a578cc18cc09b142c6f986435779552bcba414a0df16a2296c1a2d3eb38db8b8a94dd787b4e9d04a1f24364545be587fe0dfb43ec1a52392e39c618bf45aee6da7f00455971ab1b01a302acb144c5398985854e5d79fe1039b861106cf9f46519d29495f3c697408ec5f43f6b9e33f296bd27b2224f8001fab8b2c1b8d76ca1d5038116bb2ec0550585d566cb825f39dec42b36155f0f5677f75a2bddd90955a6e56d1728da90458baf9a0fc0919a332e94f807f67561220bfee49165156b2f8eed0165254c0633f8ac13d51cbd22c8428a32cf7314065717c96da9b28a88983de22765f9cf7dbc849792c1fd8307dac68788b273b5fb147d282326fad072a5e3a777fe62e522c76422a7a729aa1906604605834b596e52b79c7963cbd528b46b926377761098391e95cdc83ddada60949188235987063ddac2323424a02a6817e146f33b8b08307264ee88ad38bb08bdd8e39dbbacee669d17694560ef16d1b4f1f6ab86cb3f79b9130ab9007b1788d4d272f62fe36c1502ef54507ced2d5fe9a2650e226155793549ea03defa0f1171b6252fc0dbb95a9a41e81e6520b35b3da3590be0551032591964de2821464898e01125a513da1b737ff72eed19192df0d6558d2cb8586d38bab82c9fa707ba416395bce22ef96d91283b9d73894b32f1fae41bfc10f31111216ad7f8e17ff7d533c4da226bd229f4904c4f3271c5147e0978391ec233750db2c63f97235565ddf561c3266f79279467529090cd7c9b14e0760b0376487ec49add4353057c90cb60d8bc4d7cdf1203e9f1f0432da4ae129a1c1d51594a8834ecd15e03725b3ac792a3ab0f17cd24fa0a6649c62194433be86e4850f6b2d80de498f76014e628a904c2768335e44cd7d3be1303beada279ac5c18844a1dfe04ac8987296d014bd6cd65eb7177dc432c029133767ae7d8374e1b71c89f370c083d2888d2278b2c05eb35e7d116ad45e748cb4e4cda85f16c29df07f35f2d6379ce1271ac02b1da43881de7b3593d5aa81096484485f38788510e89c923b051781aa073e50ee90d2f8925de09984723f20ffd1f093799d30fcef28039f55d038e0110f24585ced26d111a20e9b0b118a6c6e8ae2376d010e1371eed165ff1b51708542cfbe98cfa17a3463eab59bc6a251178a8c62c8e6fca0f6fe5f97d6f09744fcdd539e462c4e43b4fe380833d06cc3874c5b822a7f34c38d7225d130aac5dcf3990961486413f7eb6766777882ec69b94600df302b106c16e7eb2c0b0b5b0971c51dd12ba9944f49d7e3dce9b68c072ecc6066efc4437a8da5dea11139a8ebe798856e6229f14757f2890bfb03a0b151677f4d5ed03badbff0f6c5b9fea7377e9cb326ecb6f7af68559aa31d672c2d8fa2bf313904946aecb6ce30a96ce713a2f240021f470b9e1a6b7b635a73f27157305011f9518a5893006c135c0faa1ce856eb24f6e86ac7844d444538d5fff03afa70b9b21f40684867f2d33dbaf3501a2895ba2b167471f47da9c8b691d6d30afe4aa009e33f055cb5d40ab9783fb292529fc48bf7ce9e10dda3af1d8593f9a7f094684a25a83cd6937fc7dc09fa0c6c72c5284ec4449cce7066f64861b49f10eb2b7e3b3ec99254e93e83bbe92a4e0b84f9de0dd4ac930d6472d191913ceca757711f0c1af64d7e3a805150b3c91c1936caae64aada4de0d88dee59f10fd0f7bf7e6c52f41abd8f14b67b59301c662fd08099b2183292a28bb6dfd1d013f5362804d59595fd092759a2adf6fb0ed61e90dfeb9908707ce7223868a5e05347df8db79d9da6ae36bc2823099c4ed68091f85f3d03fea57858067fa1dfa5a8d181a3e6f06f34f2b7333b52ed8a6fec34a4685927d145f36ccad7eb011a70ac6b4c3387a2e7a0fe03317bb4f9a33c85c3161245bf8059bc64c784a415bd1712bec5686d6f0f92d35a76f841cf2c493d0a34584e76db37a2fe92807b59f1d3a8b987bbfc974c0587602426acbd7afd8bd1712e466e69e1260f12ae5fbc63d5762612cd6e203fc72b0965e58023bf6263c2a66c71b1e78a8ce4d265062771318574b013610df36e59b9adb3d8f0c8c9ed6de45d038fa171849babb6947b53644704939adbf4bf090cd75b32a678d6f8b8f2598c5b5f31e8a85ced25f26e8a05e4c44a0a5e2f9749f84c297fadcc4b5908b2cfb526fb386d1cda2486e91d0164e2c174b71cbc5e3e206bcc4abae66c56a92f6ed7f312601b79eef5e852be64a285ed13c0c1c83f3598f38a64f1511a4c6225e5c230343b77c4e16bd04e129543094c0c1577a1cd716708748894b9381f794937e5ad49c4843a4723fd7bf6ac303d1debf28f5e5a09bd562d8cebfedefece89e3c2ad7080d20f4cd91983b3b091d45b228749f048c635a0f912131c53827611b4c03013834b56c838eff1d4d0029422e28c5d7f401edb5d2842e32b2a3865b21c0ec6e0583f02d76774b5f60ca293638a820995ba6405d36e73b2506a86ea0803e5d58f8228373194e6ac85f7e676610a5ec8bed59ee512752f945f83ae951b2745e2397d97b12270cc6dd7ebe6709d859702ccf194aaf4891b992e1754131c9d2857bdb6272aa7f2782d54b885daae73e330c79a6104756513c7f75af767971314915b7a5ad09536ee9744c022beaf68d5a5d7c80e6175c8f6342fd104ff084923697d703fa5199fc1b96631d5ed65c08e0271f9a912ed53531d03f3dc6fe9f4b958f159381fb19abe35583ad5fe58c5e47eab5a926d2f1e9368693bf727cb89c7a006e5fbfe55d715761bd201d982cdceff42dc54d44dc7f4c396160b89c5e041e5b7c6e4ea8fa473b92a86e1c0c7f33dd8bb9fdd4e8d162f037dc45af34cc4fc1e880be0ac271cfab10763416d36209589a2976f951df4424e3b8527bea0355572415aca3b7943ca98e721630c8538c8eb1b392c605ee14712b707b714f8baf64a89f652bc5458c122b7548564fab8c6decb6cac6a92610c0d57499887a16f3f5a3c616116fde0a1305fd7f597c899971774c5c2bf104ede4e90a0f5f54387fc0e4729d049f82593ba2ff7164e7cb4f5693fe6939bf31a0ae8403a65a4826e422a9a59fecdd50e1900773cf1d8db7db55889b17d942438fb47fbcdfc261c635d8ae08311c23ca40a5a18d946365a39c25483d5448cb4a2b7727b99d14b9a2b156262e8396a620002f8041a941fcd801214ac7c15d5afaae9a89bb86a29bdde0a7d871a5feb7d9e9d5eca5a94f8fdcfbfc1a406a4ba70bac4549cf691526df734a012b214eeb3dbb5b45337716f48ee1b32a8dea50f947e272028f581e11790bb253bf095846020cc53a918b3f84ee4da9e9b92c3ae936840a0e874303d8866da4d3ba6b91a2f5768439b98c4e6062e7a67b4d1f76582fba89076ebb2623c97d612bfc50ccecd56f4360fbfe3c569059c3c041eeabf1de156aa81839b0bb435800b78570c59ed85e5d0a5a28072ae80e1e4ebfab472253f877d90a1fe9cddd70755740cf1c9f505c327a4c336ee116179e3e419dffd114c1cdbb57a29ca7557cfef2da49c163fbbde0e3557427fbb48ab4498cc188b56fb638168be7e8d7df759700207043c6cecd73cd597862c3b93a38d1cea309fbcb424d63f88c2c0be6cee8f5b7e97578513f4b59118430ae0d9843bbbabeb5d39d6033e6c6ca5b8b9ab60a20e8ece74def4d8fae067a1281bab9af68f6339fa275bd2206f50a5f7ba74d0cebdb1485f668ae2964f3414b9b0e3c625eea40a2fdfef3a98f37ce2a8b226b183b2fabd28df14892545a3917ac24be3282ea39ad9ab06be6b2c36eed1b0bf226ca666d7ff34f81281ae21704ca71c559786be81368e1cee4cc353fbeaa6d368e417073963392254e8d88e517399b78dbefa41274cdddc69778753c19ba0de9f91b6fef487a8b3256dfa56705252ca3915441f3a0919c7def96e56a29b489b57c4c75bf6e4957f7135470285a5805c2e2a12d773bc7e18c3d99b6c85bcbcfd854c5bb5f5b1092cae7d6b527472b3a40660343880d8d0fe0d3e668c3cdcc8257b93f2b8fa7245c9ebbcdbaa505de37859cdb95fc27e292aab3f275c1a5489fa6aa0a89b2599f163da5c971a14c6d56854c1793060a92f01c19555038cedfc042373a2280abcfd6a0ce44bef43255f4e9e6837379ffcae9a942a6d385bddabdacad2a973ac4641a9b8238e55f06773089bcf0c85cefeeca385f0fd585a6b69ced8d5781ea2149fb3951c082c50cd57501fc010eac01a07fbff597175843147378ca8966e856fb8c1150dc383e115b203418ed767198d5e6f72029bce3bd28931c057e4f1bc19b4325a319dc97545cbefd15c4b73953bf345333f80c875a8a77f0aca4b44f55d17ad1d1e9bd3e38f8d50490cf0278378afdbcbf3a2ffa3b791f822870e96342c3688642a2c9b450a9df03fe0bfe220abd86a7d23e249929e433a5d0f26e1fbd26ebb550201d165f29829b8b81021a333da0a52de3bdaadf62fa03d6d7955979d19de8a1537e3a2e5732756b3046cd618ca48099af7b4214db4e82a454372b364670c584e885b0503d9046071973f1bd51a8a7453c104a86ecb409895581dee946980536c06eb128b98bffe0e11d682fb09d08c4726bfaf024a8e24a4bee29b2583b27f8a8a2c145d6c0914c1609998590ed50b67736ded8704f238468beceaf820e184001df6d6af2a232a20fd2e19741cec84d3dba1301dd64c3803f7751638e3e6ba4b3a8c33254e1e711bb8587f6798a1d1f84408b29c08f44979fa26c863e772ba4e530e35a7c2aac7dfca1e2db0a2be891f62c480ac4d7462769c802661abd196233fd056622baa48094918d3e541cfac26b1c9d18be78074fe72e06b2f1096c83ca337473bdee0d53eef8c6496ac47f84d6080e54cf815d4fd6ebd4985ffda86eb0d10b60d033126283a799ad7dffed9e3c61b499acba016f4f731d31098840d6bd4ecf2134b68c37fa0b4d45eeec231e245935c621fc5d96487d5a51c87b8ced96e18c4ce9bb510912e54b59d739a91754fdc2067e2d39989422a9764429db90eca42b1ea5e5a852b923a5e5c4c9bbcfd945eb4eea7146a3683020a496dce08e7f0e0d68a5766e5336d2f586951c4a03c0a2ab47c073a651c279aed0244981c8a022d45611cbc657546154e2b2f8d45060f78b5c08d521a15104c2134d2bafcd2929ac551f136f6c0c29bc6ca464b1faca2639ddb63e89afe1a4b1b81b9eda1b06f1b04b251d075d1fcbf7a8610cf12e62819ae97e14e982f5b99226698969186e0fa023bb1e107c3bb9f8b66d7681fb5f88bbf140a677222fedb01e04806da38ab603275736fd8ef373938d46bed78c6de08f12d41c27bd049d874786972280c536211de283581f00463a062624d8cf564ee8f70ebfc77283659bbaa7fd550d1a26ba304cc5059737a512fb1a4d3d39d14a51e50aeed54a042aec9dcf11c9936a78f52a4a2dccba570ee4b54a7732b0f3d1f3a5c29d92ab4b1b9f84213d95922b26010c0a50162b2b7ceaca1c21fdeda6e0bc4ec4535c3560e252d1c917f0bb09eb1314e69d83a8eef0118874873c96dc6a99d9f9f627af0b57cdd556c15c4dcc0c5c6624a8467215cd6ee0d31c6b65ffe98e1fc1bc28c855e496ea6ef41c21c89ba5097463f61e7ba88f583832d7978d832235b25ae4364a7b87701e78b349f796a522f201039f52d900b8f9495296b79aca19fcf170fdb8f2280686e43d09ce82281ab088b67064d0a89b5ba7ab81fbefb5fa2da3914a3020ee99d851d59fcff4217055e2c2776363d9065d69b9c9f58d4f897336103b417af3605773e5bad47f3309ecdccc909090c764b01ff33824f125bb74d1c87df9f98fc9dae1aaaf8fa41b3b4464ecd7c6c7795d866004c858784464e6cb6c8016be2686d5d0e700be032d55cf17cca2c96f00fcc9027a3de9b5b141abe48cd207db722385e8859519180e02d8bb9f00a02407bea7160df0311c7bd1b5dfdef63bb4b5c08b46a50d63bd275a80acfc7a8d6b89b57d52bbbadb70f1eaf8161eea69607d3228a36d69cf94250f11d3ea4127bdf6cc2e4bdef067a25c4a589de54c0317c6db37b9cd8ca4706568f0a86621036b663d6b39408f25438c8945427a31e14a2d75aae30f7b2235901f88922e5a314f93884a2d9360b44854975e8318244bc4f7b0d6273bca6b9f7c0c35e3794ffc2bdc9e97e13b28b866afb0921a9e5a61bb6b45fb18909859d08e69c1e4d6129cdb232ce3ede350a3e79e91782f473bf9334722ba7df2bb432dd90c9660f69529238918faeaa6a14c2e84cdeafdfd84cbf8a41e3b972e69b83cc70c4d6a8d5b88d6f458a20db7f2ce1e3a79fe666c878c1378afbf9610fc2c5f7b04d10bfe6c387e8ce4b8ac169ef326a5a2d2fd2b4207804053c7c11e1f06c4656b46454d480c9992aa26fcaf2a9c6a74fcac077aaf399485d7a703433c7e50c70d680bbc9d4b28611b1c07426941cc62e6acdecd4868cc390a5388f87d9a21d326cc9369c75e835424e0cdf270e635ba5c353c8df7f06243361d723bcfa332eb360c2d4d96c77130629e32406fe116b1527a5b0c7d5892e86be889ab0eaecbe82f2d2481ed9124732da245c1d8a932c6986e8826384881dd1657009c786c31fe1b1c8d2bdba0ccbeecc9286b3487fd50761b2041daa249c80040fa0c52b56fae5d93d47c27c07ea5abe24e28569fccc51a3a7c0e1819a26629196ec365fbd8d438a7275fbcd3dabdba007ffa715114ca8435712a29bf312493e4d4c88a29d0ba6423fd93cd793dc3a7d00aa1395020ef6b1f8fa4361dedafbe9e6e5d8b509e9a1012b920014935d7dfad8981c3fad8a7c0d6cbe69a580e5dce0a6a333d67f17112df30439698f3b7da20500a3e7db72bbc34308f2f1e586590a43cc203e95a146a2f539c3ee7ad75d0d35b9e810cd907fec46457905b88220ac2f2122bba27362270b5850a6bd41496e1f2df31d68a5ab3076f557413d776afc054e2c77b9ec3205f21c5782e51a1a36037f8c37c48106c41d3cb8b8dd6a23c659faa97fe948d5ed672907a28fd20b3ca65814baeec9e76471982e23365acd728a44494b8425364eecc37655cfa7dc98fa438f89d153c25af8969b77239a588b323288c6f787027af4cbf882d644dead8ef06c8cc2f7b792fd5053a50203afb64216c58cf393e019142b0e46f4518513074097ea9ef45cf13476fe09cf9c1022585ad1a02e673272b23b59639392be89948cf0023c4830578b06e8e96a4e48d7362dad8cea85313b8fc12ff42b9879b9697286e63b8c9a6889e09da2122830945c3b12b9289f1107c18b49869ee73c46637d199be1d2b41081833e25071015cd3418f8a3a17e46ea68922c795e8adcb5b92ac826481c8a68644d2917db0d1d0d6efeac3a4694f4be91d5bed86bd82b97b8d1df19f2cefb3086193877dc7454afe44ef158d42890b78126480bb17344797fa470d7c45a2c6dfe14fe4e8462e15eb91f11b7990d1290347a30cdf9430d5bcafd796c5a8b4c58090f1820b7e5b80b7b5df845974096dee79a70f2306d22ff2008327d722844be1579e8682da2dc57f765704cd562934938b3202e16a3724f4d5f6d2a0002476950c086d60cc592b98511c3201a74f1bf1a72a3e66068ab4310fe03bd119f380aad356a65b737cad89700cd878ef5304fe9ea136c36c9da810cab0772b41c7650fb73df5e4e925f725f71d155042b610c66a7159decb1023745a4486d517c2fd0070abe3b2ad76107dce3015a3df8037047aab12aee84ac53e8bec23145461c01cfd84cc0a120e62c8287942614a741094eb95dfcf20539e8d4651ecf50f7e5b9458272b347d699ce3a3decc5fae8938f2fbfbab2c0c8c1d94f1aaf42fecca4d6b3b8cc2686cc540bd008f926e8e2320ebb83322783dd105131bc66a1538bf831494fc2c920d2b3ab9d0e835dbcab0167a2849030d87da544b037bd8f0588161ea0fc2b45dcc9fae5c6e55d679103e348ed2bd2b317e99ec8caccae9eb426cf73f0947220b4dc80b4dc8474aa99c02221abd79e6b06a2f0769b5ddf7de15832beabba9a617be77a93d51d0fd77642767abaacda225456d5fe156303f683fcc42cd15e7f280947bfbc32e3e75757dc16d31f4c6df5f5499a2140407f125b0db838abd07995306d2ad02e276e79bb3695103b033eb3743cbc4c5063254890f68464101f5aba7698d912aeec5726fdd180c727c2a455391fd9abc7e90ed14a0a5f19aae0c0c9b9d949df420d8ef174f2d25049a8c7a3efb0fdc4f8475451052daea8b59abe84e1341bb167be83ba0e4e0641ec23ef26d0c86bd9972fc96a11d24a3a2c85f861dc05be09ccca1d973993c7297c743a19c89033333890eb4603a3cbd68c7c09fc4f3cf4c10b6a9f41168244d0e962b1e0aacf3ebad6a45ec10ea55d4b8c669075dae095877e883848a389169767d323558c8de3d11d7f4f8f86348b2392756e9139752a3c8991c34c7c7626b6a2dee4dd4417837cbc30213662ae11084c931ee5f1460a398ee2220248d000e1b0968ccdd7f8598f166da5d640e08d58a0db98273ae2aa54ffb19404bacd31ae5cd2b380bd3e11f02171ffb8ceb0c166e597520ff47ff69cba073f2e6541d2eee44477ea9c410c8c37f8ef6ca90466dc186812e81cd8a79c6ed644486fd3f4a8bc9d4505287d92f29c3b659f2df9051f29451114996a244727b7831d26e3726f41a0b54bebaba4d4de5b0a6dac33d7aa03d1725b1d6e79cea84130b2023fb2bf3138fd8af5638b4ad527329f8092f9cc4ef8c848088a2df99f5578fb35222600f85c28ae3d605288528074a92f290ed6584419bcf07622ab762ebecd49fd23f7b170eb8278c9c3a6a1ed7af3b96576e18cb43db753bf0c0e3812569c5a23655ce768ed9347e6e9ee76a7f7a8bf51e50f2174c37d20ec3c6925158911b3f1429c13e2476b2d76477a2d4daddbc67c36a38af64a8c60ee1ea1f299c000d1a783c6f949a9a6907c890e67686732926feae0ada73eba17d9f226ae5213aaa4756009dd3ef9def39c6d30aeee3302a279ec608dcf7023f9b70d32e43d70a98b00e1ffc0460ce6dcdaa8de023ab512bde4469d53709b604347744701af158b9fa9034f21e09b22821063833931f0543053fc7c71e64636b9a9ac2d0bc613c904f520ff282ff3d11a48e633c044955dff8fd5317d3d2abcb862a3a8bb80addac1c5e25cdb3e976cd316f5e7d0bffc1f9b0291f2c40459bf10856694396bedc87e2ee47671ebeb12255f118c3da4d2fb5982f38fe54c28f8d474553300a00a4cd4e033eb0bb63013393656fb0d50808296bcaba870886ecac939a081e1c45844d3338231e1993e3a3d2c9b0b4df187619768d59d11917dbd741249d11e789097535b217d8e58dd6f8ba5b7e1728ba59709e68b329a250dd46e6b6ab65cf8d3839b54847dcebb1e9a15235c4708b5ab49d218c326e186caf248a3e4033fadcca89652419a980e276e5a20a10447b87a8a70b7ac121f5d5a95828ab4f130dfd410246c17015b48408cf45402c56b4663bba960ffeadcb3dc99f5c689039d6490af92671521d6f0ad79c1f539bd38eaf82206eedd7ae81889e8a14ca8829e90c8ce4a02c6e7d3dae9c7d5f56faadeb0d13ff47470a626e08f29acffbbbd0cc600437ceaf6938cdc241319704a8d1cc28ba6a748daa65602b3f089680451fb0326d240081137a58768baf7d42ba7d3a1ade8fb0fcbf49157a2cd9231c97bec2dbb87b986f37546d6da739de81ea18a373c2dd79cf207366b618f0864bee081e5ccdc5fa696f767458d64cbd0f38be34f9f8d3b429e65126de544df2974a846ca401cbb9b73238d4e7a4d6cc023d545ce0df054502c65bafbec57ce74a85352df31652fdb363baa34a6862d5de962474c1e82b5de6de14090fdd562af6029aa6940a0630eb1efd00d06b6ff7365c6a0e204894a779eaa2901815d238c9dc072301c2abaa4a22e8d080fb2e4025365c50fb3506998ef367dd2df752a3afc43da642b4dad1d9041c46ede6a198a4306b30ca2f319cf38e7de56872c8f0a329369283f2186dad7311b20b31a1f3910fc781bfa0173df9e127a179d8d9f39583b66ee3228b17916247f186f81693f17913aef6ebfa51d5f8255ef741cb2a6c17c9f8f3f0f435924fadcfe58c916bc57260ca8dde1ff3fc51ba869a716ee381e300498fb065f03e3a1d40293a04c548fac5312e3be1c7f3ef47fb99ccdaf676bfc30574bc6dc52e5c4de5b050bc203ac41ef114b8241a4ec8444c8e655f015bb9e93b096880f34f6d6ea1a3e6e73b9e74bcf290776e4d9d512cda453e1aaf62e1501315d874e066651a2af740e103d8a2396a2e23dbcf1b1efe433f4fdc305cf3c9aa31761dd28f59afecf5d67155e1663686e5327cac1332c5e00f1a80623db37d179523cef2ad25895b846c7d6d71bfa9f46926d2a23c9c227dda3030ec7d6e597e93220342eb58eef3831c6c193d027909b56e0c70728e1a88e9a47492e12ab782b55472215e2601519b186d062c8932e0c95d8162798bd34a40fa18bcf767763e7d431a62b86fe097796b914a7be7fcda6c44561b3e79c308f124f54c6025865e480392858b163b0413c1e9b0823791a5d4b51f4778cdc0efb3e74a2805097bf7b9f590f1635bff3460e13108cd36527a0f583de1965f2b02fc6223690ed099c40358f11ecc5ab606ee011826e3edb2846f8cad8254d9e4ad5b1863ac419895220bfbbf1c5a5aba83ebe87affb96da46bdde28b9056dc14bea594d4e65e1a30ac01b3bd3fea6ff29d6cd0c1a52748beefbbebcbff70b34bf60b3402c6f724bca097b9138ecf0177f1939f28b1fab81acb98c80b20cd9da06541f1d449e37bb01978db530ffe0c08cf5ec5e49504e4cb28d456809a36e12121a651240418e0f3ca165e7ee178156dd008a5439721ba2420f4a9ab3c364678e691e94ef9d9e155f4997f89ffe35fce7ba241e1aad4309872c442fb4236d7e8d5e18ce112dee1dfe841b53fbd1e2bff618c67320b2455fb0efdbc35d6196628bec6790408600041f08d8a9072b46b703c7f10aff60bb7c4031ed817cad5f9eaaa45eb153be7acdc174f1e77433b21940599db6064836f00ba17cbccd186197d67eafb964c71dda65a98c65a564e053fe23ccadfc5bf69ab0f348515a6e81f8684ac1f1ccc1d32033de1bc5ddfb25c5b7f3e09e21f5123befdf0fd9e578a43c918b80ca49c9e7877b67762f9e02f67aa69215c26b64c13f24dcde5d0321259c7b0e9f81a782ac346b123f45c04e770c069a3a4134e155d5155a06af9ea8325453d521d48a2c93c784f1dba6b451c2f85bbe6f36131bf86fcdf36dd17ce7af2654bc80b9b2429a2249be5ccbb5d2c4fb718d87f94b0681156b56966fddff7a95056b78a47fd3ef344d66beb5190f73bfcfd22bc096708b2ef73990c9295ac004476bd9ca0cfbfb33ec83c5c4cd292336802805661f9a9854e8bc4f83f1e8acf1091b93efd89d845604ce509224ca80894d2dee99aab1d47820e9696538108ad19f9e50251e9073fbd7f3521565a725dd42699098b3f2829cfc35f21410cbbc24ed7aac8845d5665c113fe59f63d9f1ffee484edf0e2262dbc9c7c962be760baf65df91de4a22f729037f670baebc411a18e8cbccbc0316c0c07fcd9cb69673b3860a470f3ed0766649f23dc960fb02237071ee32e1238e47c4bc09823ab1c0e8dc726073b194c262103526f6ac24969ca83a0741b687e461b382f023b879746f17c946212ae2bdc3403452803e6fc51187bf923e7fcb7f4037a4eb2fdf8a53884a6052f54b0e34f53f5bd3f1b35ea3d37b01a1ab273ed5d7961bf463b08bee8f85077b184ffdddd2f70c0b8273e8268c1375d2ee1a3431e7122f7015615e7d949a15f3e497fd805e54c24752dfa4e44310a796cf97b6010efbca21ceb558804618c8412f10e0175a2a81a5bc91ed63775fcac495e6ed5c43ed76fc2d598c92943810f21dff893dfa568794cc7540730912e824079e1261286556dedea6c3e90023d38c9cb7e8370b7bdb9048053761e7c9a33415bb6a7363450d65d6e9b68e48f364e5e330a2fc43bd51388c04b354d821785cd16a66bf236b98dc9e0ccadd9e6b648b2ba710510e57216283c005f05bb1aa394224f0c23adbeecd201b489ab921dec3c57f90f43f41d13c01d4c54448444332f1ba14705c5e87ffdd44b2a2f480174e1865f4c8acccf114316bc031d6b52c986a8ee9084996d8f6182097a17e89c7b22821c86cf9f04f26e36e2d01758e87d67a37e5e2e2390107aee9820b1433d88d7132d7e5521878735602c6543facc5a7207d820395ee0ecf380c6cbb43626816942996795f775008debec0155d4fcc0bd6947a9a5a5b1dc597d2c5a8bcd4738cd72a53acf4bac140334341002700413626cb77914bea7a32e5f2410355b207a7f3bb89821b3e1e054f38a030c180912fbea654209c7ed172fd8b4b285c353257b38a981ba52fa765ee8902f2eea1e06604471ebf31c45c62ae3256e6e538f8692369b79f16e37856887c5334cd44087cd857c1255139f46b00cc6455615ab9a673fada3344b59c6cb3a4870491e9f7f2d5fde6a9516caf4f9655451bff0cc2fd2bf7e455ddc710baa7c986e371af0fe6072fab7d0bf00cc85936033c2bea43d6bc7cb6019400b1ea78de6df07b400770a9422d0485afdda3d2450c93c377674c3bbb82745c367dc5d4fa04c5b27973f84e48351784b9d1353313da793218dc8f5bb8c985620168286d7d0a71af4db20b18c2e2ba5bac060d24e06f3c27804a7f0af61bd8e867539067aa5ea520cfff5548eb63ae40791b139585147720d407351b208f6879425d57059d4e106f775b0d07252723b7dd9c95ee256114671642dfa3bcb2b18e5b370a838d7513abe9b87f1c8e9f874e26020d0268b42f3d9ad1752b4d1a9a3ea16b6a6cfc4a671e4741a84b892789571f00a4e8a6115b4f1a993835ddee5d2ebbeb660c2f3862f58e3270ad86b97771df5f7783d98f9d76be27d0d114373c2a5792982e7886f710553bbd05fa3c6044e734c8f8645336014e79dc79b58ed6ada0a25bdb731ef591430be82a63f1c8b95b36ac9be8c3aa92d48995a9dfcfca87508c12ee0d58c62902b9228a122e0cef1b1823f82e54ae29b8c5fd5756709a6af2cf25155c68420e270a73dc2e57811bb9c86aa6ee8deb1ea76443f3e7bb7497ea707abaadefe53839ba40df7e8dd408c63d2062e00fa010b8b427cc3810254c3586fe76c2d00274a28e0f6f5ba3fb5b7c777186658e209edd646957c3071efde7593de0173b87305b861a110d3689bee0fcb14323cde9f4eed584b9d2b66e371ec288eb7043c11e82edffc83a9ea15bbdcddb5054cb5666369294e437315537b2884070c64a6435589dfebfc6a743df26e6b38c7c2e0b9905d0c2f1c176cc13c559b0e091fe50068317dae7915c23c9556209cf23aacf6c1d437e77bbed546b96887521d4f0935b38f61b82c604b2a8b1e613c745285f60329aefd96b06dbb0915b9cd51a68a462368cbab2a64d4ee6b15740565c95f34cdc9367b4a247fa069d9ee97cf8f38036be5cf7d95f56cb90d3221ec1162a068fa283132f1ed9eba564f04650e81d1611d5429fe6b783687ae2cfaa8faf6c50d80ea611eeff6d2c176fc729472def51b4e1b7c5d7bdf73bae5e7d5d2dbb5ec3cb56e394e42fb8d0b8b7500a247903e1c0a9b1218c37bfe6bdaf6a456fb18b7c55edf83a7a172b69077ce39018012861699e24eab51da29c88891e154852cbeb5f952716fb28fc8b60d377f8633427765324ece2d7b65abcdb2406fb44334d502cd137aa6e656940461f1c06240eb30235b3cc32c35358308eff18cd5e468fff5cec2987085d1e95ce972a89fd5086537393d1c4274167da83fe79235f3c3d494a64323354f51476b4d78ac7a8aead0131ea5d489d98410f87130704a4a37c3529de3262024a1b5bbd6de9b4bb758c03a438441fa26de73b7b22225d55d24795e7ab41cd26fa1744c20bdb7ddbe72b24c831df94fb4502048b3f07b70ae7c700e9cce3fd5f1507a06dbc908cee21af43d6febab8bc357e581b2a2986b32d768b666e09434db2e98de660b6a4d7dca2064522754cabc4e2eea0cffa90389f550160def0987f48c2958f0caed10564cb605afa856edb06d58a2fc8b22b759ca86500b2d95e888c6078e2a53f3de2a25145d31e55177196f59dd6ac1c7b495fe06770bbe1f10b5ef9f937ca166ce25d0a91a1f77b7ac9aa8b2118198b83c916d1052e188949545e9e71b42ce9d1365e3b52a397d1fdb8ae25937373d1ed19b2a92c432fb87217aba8d68c98e4646b387f63a6ebcd0e33d9403e3a9d80760c2116c4d135999166ae5e582575b29b0d155862d37e71827139b546cbc8a036113e22c85cd2283da4ea0b4c3d451780c19202246120944970f9090f4a2c5f663a9699f71467b43c1184a8c0d7341ea71e0372a2dc9c1382a2a4289da2d38bb94ea84a98bef1ac8b4a267645842e5ac1e65ce392acd7011af3c1dc20cb11d5e6ccb40ec81611a1cc30b44cab9802020e41668cb51e8b9abe87ed05dc6981ff589231ad58edb056c6c9b4fdcbdbcb0dd101415e619cb2d62375951c88e7407452b9ac852cb15a9cd0944d02eca42ed2ac8e6ce670c4b0a300bed5b4e496a70af3e81bab90d665146555a5bf998765fc9e1536a6a6072519274dbcf862768f868a5ee582f0caa8630a6f87f2cf8c593dc431ceda832a665b80650ecbd8af619eef97620fbf8560fe2e8ceb9e142c41570cd8e626b088b8c5f73a8c89fcb002a771a3e04a808fe5cf19b96e854ba553fdf953364466c1711f2779162a6b4e55dcdd972be66c390379fd37533b5486c787f5045fbaf54a26b27860a9d37ae4cbd91c48b147c1f91970986df09e9e999f892ca4182e118bc9049e29c8b4e0222ca8c52de0f890189c552e183cb060a97f5d50dc231d869a75e2d9276e1d5fe9e7f42d878a4a9efd2ed85b87d870da0cf1dbc6d1b772b12dc2c5250535f97ae178d7e364783da870e7db8e1fde68a2d419ed16fa3074a1bd58afbed4998f6a00a7bcb12426fb0f0afedfc5478c752358a7f3bd553e7f003f5c3ca21a72bb7fc79216db32dd40b5d2221177c1386dcaa24e422676f03e841d242fe78cbf8663c5b145e2af492741b2cb3d13d8f74bcc76fdfa9c197820f02c81884f723cc11381441213e6611fb6bca548fc78da0f660c094ba7c1d6c5e1f88821c1a13376b5e3881a59aa1f1ee587c6bd4149649c469e062efe24aadd056c28824cd02c502e36fffad525fcfed617f5d15469536e846810588e5b129b7244f2932959e44fb0f4ff947e47c8b0b144242a177deadb8f0b9679856d468a969c88877a2c3b0386f255da85414d3750c86228a8f40412d4eff645b95f1ce1744ecb6b567a319b7c001e1cb6a206a28056b2ccb655aede843fd5f0059f26193636443ff9a23a951218ebdcb53436ec4b35c3dbcb7331ad194096293aaa364d3356f7167feae8518ce83c29fbc04b5919541fb00e914e48c63663df7841a9eb73ae93baa077f94de7c69f8cf11d3226c943a44d9f91bd4d133b1619996a9c5dd70ef91436145793fbbd3c20d24864dfe39ed94efd0ec9adfe182f9579a2accc16d5acfc3524b42a816df31c3944b30bf89c9994d123dd85360193dac7844ee3d10ff725b7de76ae289055c0e65108815dfab829ed1257021e493c57365ac6cf409b1762af50c705180f01eca60cba45870b8846087b75567894f20ced053f2f4348c7843a4fdcdda44dcad384b9378e99b3367a8251967b3292ded2899dc6c914455cc0aedfd9fd8f0ad8c6cf9ba59c5bbfb06a12782d0291f928a8ce2432b10368c9ddea4a3a9cf3ebfaa7ff0f908c31f0712440e90523f34e5a64513bc8c113f952cca1b3d921d080b367639f801d435ce1d34f878b3dbbcd0e7935307142d38ee7b6d8fd070b4bb7c8a6ee41c7048fbf5d3cb308a684afc73cf74a33e9e9e6c0887811757285dcf7ad36f470cb2361ba135063de9f7b8723938705f874ee81cb5af960f6840c4c77df439a0132b9aa80d900b66133a689915e9be3c5b79852837d7993c4dcaef2f053b8869aa8f8d0d01c5449ecf32496f1e3cc4f879c0711333d1b5238497008377f8360b70cb6b068726dbcc194fa3660f1aa83240aec818df7ea24fa3580e3c9c99ec7283b6dbb9a52283e27500ae73b1bc3ddc3423162bc873cb87cde5318b6d65149a354cc408d1ae32fd2e5cf44d295b9aee6c380773adbbf9f10ea4969a9cdb40f1f93f65429c9bb0ba0ff49c85e3be9edd3045800a36cc4d00b33bbede273826ec65e1a359e01537ac7281fb2c9a8ea9db8d107f0bcbfa7038946452f604f7194bcc9aea3bb7d03137a5e1fdc3ccaa98d468deef6f6615f3bcf6c2a7df7cf1663861b5d1e432ef74bcf5c446f6eec2ad5bed13d9651f209217ffa4c2df1c16c6fbc4d6355efceed8ad248279567bd6876877c3dd3c0787748686bb7f47d23e5f32e95fe9cb57b179511bbddc563b60360322524c2ef4570fbc7012486413caa296066a357d939517e86ef31264023307baddbe713b10b4b33980c3b1879e7befa21aad1bfe5994c22869d1ceb4b578cfaf5eecaa0b1825240ba739d907865ac6c47a1813c6cb83a2b7a7e4a1e08f6967b49c02df67a9fcbea0ca888e1a62de29f7b9d3e637ae29b2cc685aaf598e128f462a604b3c10a3c8e83f379a67a15d1517db629785223302e7b79572c794baa39993dc5154b2dc52401dea72f3a9a45816b77a94effacd6f6297cefd92e03dd157909b234028eb0b9143465f5f05d31ce8871e0820fa3b3d6062dfa36163f1d91b5941724455c57497415bc983415a4bbb0bb3c3985d08810698c490ca6032cbe7d253b917954c001f40465c182b2aba874a60d144db71a343130238e58edf57c78aeae75698a2b24a47b4f502b77f6d034e2f0b624bd4e57d63c2e13be8bd26c29d32d155f0e0557e93102b2d993e9559d27fb05d318b78410602746879b81f2894856904b83f0a72d2f752bea89c3c4c8857f85628abb1a01f54ec7950a1d598821762646fc8cb302d60175845b6d318b3ffcbcf28192686e609093d7883dbc4f825c31156734bfedf39635315f97302ed217183f51161ae79f17b6875b4e083e65e893d14bc868b9e44691f39d88647aa27b8dd5cfe41d351edd6924a0aa642e47a1d16ace7f6a09a92c04f93304e5150c9164024b02774a53b3612de600feddb5af54fb91793eff73f0b486e729aa2ab44e15c80bed57ba7a68f9c8bdc083a58c48d3a9ba9df1c0f9f65ef57765b244cd584cb4cf65d4eea8f03ea0d3ef38e534f822b110b1ae6e4315298a2f9a0cbf15b9922126c4e380c6b544b01fda89693699012ba734a153f6f57859ce186182203c7c6ec2deaa95e07fdda0dfb6da85198211dfb828b9fb76fe0a20ea7df4f347fb3f19b2a2aea4b3650ae224af8a4c4ba8602eb022e89aed67fd3a09f218483e7d5ab18c065159f8b85284f64cc19332fcf3ce86d3a8e70806c57c40ad5c9c2ed8680102d68e25f7311e9f3526c540ec15f40942223d6090e9b7334a44ced6f97f94b7124af3fc35f2cdc3605def58525656fb5f4a2fdb3f2d243fc7054779b7dbe3e5f62e34439183f8e5af673bfcb425757be6c953577616e2f159099cdb51933db3448f2261540d11867ae02e595bcf737b5d1f1b4306dc6509d6d4e6c86032a25d1117d082c6d71dce1c7ff2a647187532d0c4eb2a2d498b8110c80da6e6f48fec73aeaa48697701e21cd653f25acb13b3f660630505bcb6087b8dc69f1ac725c6b11053c502d74577bfb04c7276fbf612140b523a5af193aa80abd82cf1daef721ab6fcd093ce30effc41c6e8f378518e94fc6da4769efc26f5fd7c2732c72db45ed1430e2062ede42e0cdc731e895514948e9678ef72ffefeb9a497a9342720edbc0027e71ca630afc1ba39cae5011f76847236310a56daf6b21f1d789b1fcc0e5fb73c50b2d317288306dd5251f967e950de2fb30f0fd1d904b82c016810ef2152cfcf0d2d13136e536bd0aeb61443225ecd59562797490e7d62d1035368e7dc5f806895309393bd6b6da3a1db031f57ae4e767dbc2f5a1cfd319614ec2a084840e1654f9e0179f06cd910228a1416e11da5c400eb4f55df9aa21d7cccb138e4e0ba4e64440775474735baf2a4a01bdaf18c22487f3ae2562f54238b9dbeffef342946afca73eb931f6c1803fa0c68220cf6c132eaa1becabd93e413b71fdb3f16d35ce87a22d03fbe86f7d45de72fbfbedd3b2dcd2ef4ad59356c235ba3f15346a1377693a6f2dfc501ad5936a33d6c1bffdd62f21b580f3a96c937a87e50f72009d7e5debeb05d3bbceaf45de12f3755a212cfa3dbfcf5a5ac118d61208c8e6664998906d2763c82b671abb7144bf6cefd0b96dc47a695a229415606bb54bcde1a912a2afb1d336571ef87b3de4a95f89e44da514b09177f26cee063e44e94bef79f1f69e123a7f48e222358f7334aae26fe7e559e33ea9d65f1e28ea5aae6387511668a5e99156bf4760cb167322b3c29c5b3fb595e5b4192867a7aef596add522c7163c026022208ecd14206593d2e97f4d76937ce5f01752cc93171d38558376d2a0044bf6cdb3d418776c83f93f59c5c0e111fe164141727b8ead86388978686e63b40b58c99474cf897871178257403c9628ffba9cf9a9a1898e88f29b6336c7fb6a68c5eb1fbb11d8458119c383bc964a8f938e914eeae502bd6b1b1e79d0761adbc205bb8b0647f9a0c17d814bd3efb922e359a11671779da9a207c0d175f3d22d48bfe37387f32d0a72b2d78f7dd32ff115b29d38a14e1436505aa3b755487c9915a493721cc7b865d16d84ac3163637dca4e86b73dc16bf2b444477b40a3db2642a1aa24e181b81990202bb9efc8c1a4fd8155c4be2428b5b51b7cf985ab2cbcdc45f23f301e6119c4f8ab67a641007b7f6916554579a6d71e91987c5543e07cd1120d373716583d75a35901d69c53ddff578383c20642c22c10eec717b6b15cda3869f3bd8a0dbed02d42e83869fc0ae8e6f4af2aa5db250e4840a1275e49871833f12e603444dfe6aa28efe6a8cbfac651f44b51e15270ec4ba6dcc5007fe42f574f5ee36021fc812dd7b10303df1ca8a2ae8724f08d7e710157a92cc259bc6810d5b1c523b613c35f3969161aa109222c7bed0cf2374f881e5cb0433b5f4e9bb9b8d1d574bf9dd2bbc28fa5a10f5c1a636dc8e313ba302f5a1b0faf00a23ff679475a69d29084d4beb71d982f649f0698eb2ccee02e4af5f8940a96717df49c024c65f26623270191c73f088b8f763a9f37d6784add99dfa991991e2e4df08c1a3663df0231bb25f2405cc4abf5786dc01adf95b72885f54d09cf3f3ef851ae76565b4d03aab64429feda6aa2e8c522a586937a3bd960c4fc6e3b3463e1c857747a63e6f980b8d120195a57d735a3e8c6038bf2e39f27c598a5a9ddb8bdde2301e8f82030475995edda633a4d20f0e12490d52cd0a25d03521bed0ac6f5cc2d18b934e5a190cb04f1d3f247403935f1412510ccebf36f426ff1c46b9bbc14aeab4e75184dd4d212522d80311c2e299ab540d41f4e5dcbad8e419e6ebfff4582cacdc341ef0b38a34ffd2f1c1df2ec6a68c245fb1f97a7b4b1240f2b9574c8eacf8846a4152dd491798b9101dc0ecd50bcb87f09040d6a0e7654960739cb062e1ae7d29dff2f10f298256e08e9aa8ba803e127ae87fc1653a2c0f039d2962abd8ac5ed10bef6a79229829cbb5bb7e5aaca396034562734ff7999541a461345f90e1778671d9f02904c229e6e7e45084f12522ff378459324f7893739cd6389191d72028c6510f6e1a6327e33f3b5eedfa55b7a1de4179503ccd7f7d7924a8b116cb99cb9b16aef10c35cb14e2e5b9f8df5c12339e9f93870728834201cc980d5466206bff344ce21a56fa82b89bf4cce663f0713b304d37b727c21f9d98d17abab25fcb89a4e08f3287ee4af693e0e30234c68f960afc7d81e2fb6b4881584574eec8fdae157c2119d541a30e73e312e3bf10e136e28839cdbf33a4449cf04fbb9438bc5ac7b401738a978a68d14f80acacc0bba8df2228c73201d2b82248051eb02e1acd88985d11845ffc04c27f8144327a12b42226a22962eb89b72d1529f6a1737bf31cd20a02c791b880b75b9204193e0742892b48c7c74d4b0b8b049d54b85468f5d5738848f6c04a9faf995da9e2218bf505342809cdae59065d4838d5a16cc06322364e0953d168f35713704372f61839b1e728b75ed40aa8e953f42ce22162ed9e252c079d712197ed10a6d10be188c8dbeb9e757de7e300859207e758491bb7a8bcc71cda77a4c4e332bf99f9872c3a2742a20bd6481d5e7ae18125146495549ac5fe59e9ed99c8ab5d1a4bbc07fbaa3f8037cf4403780a1de9f3de2fc1d5f80c9ad61ee9fc90869e953023e885facea536a8785e9a3122c12fd9392d5716b74660ca5ad8929655dbf18f510f7a9fac2a8475db6e4a6689d1dc8a4c17c162ef75c7af3dd5ad064f342e9c573a7c16c5f127a9b73ac311a6f1bbebb6d398ceddb0f240399b9276ec248a6baea078610d44649a86818bf6b9ee01ad6ee9a3752569d404582d8f8d66947715b0496d59949f34a91d98fada47aafea9d3f7b96597d4d8646eb66a27f0953ae568c5a2d9b7357d2d4261c01207866945baa53e3f7e1148cb2f8eb5f18416c1d3278cd8d2a6a81796468c5bc0d4c2c573ce1be869807098ff327359b2b78aa5c98edaef6577f84e7974e58fcc00a27f4102f854f9480c2f771eabb53e0d18565ddde92e5f78dba3de2ddcf5d1cb7c5ff4bfbb1476c2a521a6311dab655c5cf40f20d91fca96a57fa91fb48388fae300b21f1ce06534a90c764633377f167b11f92895e0005344bacccc7fa4be34fb987d870173d225b5ccad2e81c238756773abce3ddb1e290bdc8cf59eaa339d7f814e494af21a1338dbf94182d99522ec55f5b8c8fe5c8f005b0611510477841f06a3af2ec74ac1a664a96e04504c6c42286d75a549c94bf9d54e547059c7f0e04918d6287c9577f3594641feab2009dbaa529d12e69fc2f1a20344d4ba58adbdf95525a3aaf88996c7bb27afa48c31e58aa6045fb133bb3ef87aa0659c60339be76e1d2e42c59532b3a80d0a93c7576f450eec1772a5dfcd1bfe1e0b6f922a985f5d86da3fd74a0339312499e89b51f1ca079abeaf548dcbb8d7d70b061b1178c0928d986b3f1ea0d4482e02bd3985b751bfb832e74d7a117a6c776adfb85d54248caa1d9d1f898bbda5008b025c05f80c094a69b7141c4cc23991b37b79afc63285c61a505d1aa5b89f4ff9c8a62c7c81fa6e9de85322d495d59788569d829e6d3c7ffaa288760e686701940e6dd62a0119bad79df09e68fcf7c3dce8fa3d9990365aab0c374698f04c0b99d2e036390f0d7de5890ad8e82c334c730e36c733d5f07d60b03ed35f6d8f4a44780376b221005d65326ec2c649f60d962ccdeade89f979e32c5f055475414911eff892e01ad28e92032b56f21765b7cc5de3f235b47b5514098803ff574f585adbe202b2dbac5570ce04a5d9cb5a2dd8dcde490b986d3444678394a666c34a8433f432cb7efa9fc0432ba013782a8e4ab098d372bd495a72cd154621120201aa2ed4c31ea42467a4aff17ec9ef32d4d553c34e701300cd5863d7c72845a451f7523768f2d79c9d24f681bc9857d2c5abde4f77b15707488e4ddb3915470f4af58a471d230b312b7b2864929362b49733f81a8ac7aa920c0edccb320141b31e00a432168d146cb7d96b0eda059a38fb6303edb8d242f2ad04402d760d17a450ba567eb97341f70cd2db17d17be461d51e4e4d700becbfb2dad2660a4b577012048d4ab9f9c9e7132d5e4a7bd726f8f38878238496edb59d8db82eb93741625fcac84ef316100a942cfd97bb20b84828fc0191ffa9bcd31c8b6155e0af71c708cafdc284fa3c32d695c1bea878cab57333542922f2803709c4ce687bf746b46ecc2f2f1c6eb0b2de126da9bc45e08fae07dc59efff7bc50dae3810ee47ec7709cc5a34a4c8bdb3c29e8f1b66afc0812e8b8044dd1b214eed60b63b94bce7b747802bd3f4365356ccea8f61fa1ee3725d5df418172d65a09e12b5aaaaec8cb86f5df8d8bd1c12efc089b51afc55d08c8d3b1aa4836af3a52f1865a8b647cd4745ee59068dfca765095ac0ffa6d096c8b0a9004bd8f1a41f7e7ee53e9033ca002ececaa1656ee214f77878ecab0c3e0e5396be002fb2c4a962c861fbeee6b7c800cb39e3c69219732d8095bfec151b9b14a5c9934a7d4d8760ddb2a3efb8d44009eb7e2010c33164c3223ae0a59dea562d534d20749a0a168040275d1d9b23b6257d3004f51829d707821f905e02940ac36731f43af63f650fa29b692441c10165cb0f60525519840426bf00c0dda5a359b236bef8d73038f62100ef260f0e903d365e93926e238c946f42423b8bddb622501dc372414e5036b4e266f4ced6316b444488bcce947f1fe0be595602a711174d76c063fabdbb324013ef4b044f063b25dfe054f0b9f20adc2284e0d5e28beea1838c73a199bb0250a1fc77ae2a4b58eca543bcaa9b6c0d7ab4d853f914e3886161bf882e9bc24925b97fc53ef30a6e700700d360f296d7957d3f30608ded88b90c001f6c0fe5b4b72a8e3c8ba9dc583f218f3c62ec05e0e0610cf14629b48e9bd2daf8092a9333127691dbb107202e943f3dde34b587245d931cb868d946dddf3b7e8aa205ac3501c28bc15c4af35ea57fdf16ffae79fd78f9ced3575495f25fec81c2207bd4aa78d2cd1b47b550154e007ad73911be8913dcfd0ba3b3b1ff0645b2ea7f71798d4d709dabeaf62d4b4d4a31663636d63c42e660c7d29428b88b54f44d34ff3caf7dbf9cca6f89fc4684fa2f7a5565d74f93a75a6dd357e905fc24c54b2017f5ae282e9d7ff3468169a9a50080283430ed1d01dd0dfbd2b4379c2f7a4d7733e2aa324022c39e17b31e7535bbc3c97d71f58a3dc49cd52b09242b5e3db91de254192353c9b3486778555c9f9dcdc370fbd5095cb5b90db0ac399fb7509d1aedd046500f43e77495c90910bced247970d1811f24320901299d8ca20033399a89bfced29ffb349e640f221f98b24d64d7f3c2be2e1efcaca5deef7ab015695497ae1fc6ee733270985f718773770bd279200a1afcba6e5aa134f71b1f8cef6c49878869b05042c22b1313894227b40dcab1570321b9d0ce92a5827735db657ded2fdfb8c1e5ed8212d05527a6c88ae3ee7f1e776ffa0b447ac6088297d81afbcd8167c10069ef23f9c70803f8ee03abd81e9cc3e162b3adaefa41f0829e94b4d005de5a50b2756274f0283d1785a849cbfc49e106af1db4695dd5d2cb8031cf47ce9075ccd93f7bef4d2a721367702110275ffa3870f863d4b17e7784aa1dccf8548312b25d2fa89613646165c4e700f7d9ed95eb6acb5837f825595b7273615b0f1c06a18166e4779d14cddc165cfa187bc9d944fe272e398839fe12335a465e795566618a9f7226f84a4c81d490a7a4d51543cbe86d3bfb0aef5a6e524fcd155e98ea03f81993a78d2873891fdd7132d9a7cc0ce90de1a407ee1b493ed8d907a32cb35405e8a4c48d3cbd9c970a1286dae6d4c5f3b3ca74063d9cf11d4ef5d17307cddca091182db45a11504e91081d3e95aca769f8a988c513433daea9dcc21e12d63c690cc5e6274dfb6f063a724b3fe385b53983a90df2177b3425bf418598c7a01b13d60606874f67e26301855cfdd5c950ee70602454a51292b676bc282670e73855de061c525a022ce8374c5891fe85508bad21212b9cb2134cf9af3cfdadabf9596a9019c63298dadbf91ffd822f24e05f06a38d2b319ee71df5ba5ed836d54b6163056246339bf217c4e19b73cfb1f3012ad791dc7ae6e075d01a7207b01018daaf2e0ffc52e2c17479377264dacfde733b86b60bd8b5c327be7f70274c957442903d33034dc5a2b797c11b87c93443239db676f342f92bda78b99ebfba617b19c0858e89434d46703aa684634329a793e6fb8f086518f7613f1d7299ade4497621ed04fe150aa73e4ebe43188afa5dcfd01f6a4de41c2dd6e2e012474adf96f4794d8f9b0a28eaa962196d50f61b1e1330dc2ca417f5d5025a4d2a5fb12ebe85e4b80dec3bbcca3da6089f312bb3a25148e11c0a18ed860eb6979a0bac8fcc5ace9f984152bd1566145a3b5c3ed1e311cebe675fe9b989f640ddd834afa66f9dba5759271abbc05c250d1e32cdbb6053e522234aa98e6056680c6dcd7100e60c620b912c3001ff2c36c65c1a049b382732c22d741734359283cfe6ff9f96d2eeee73064036178e886b421e490c08ab3928753a2c96387318b06131e235287d170584757d059190303a258fc20a60c97101818b680f66030dcc099896ee0cc1ba156b8fe71deecd980bc863fc37c0d777b16d91d04fa7d1651d7c7702c22a8c875a2b008705154c4e33f22c1e6358ac8f117f4b3a0acc7f3e63b84b922775378591a562462dba659ba4a1076ba682c86954abb27f953106406aafb5a4a6c55044acbda9874dbc7c7dffb0e466012af3aaf45132f715ee51ba36ea03ccc751216f2ca7ec326b3b419c4731a7b9b50ed1df8e2e075ad46a4e5f9a84eab3d4721b804b4513052c8536d961e8a82215b61e699f13a2644669f9f63ec64b8f3b523e6101d3f273503e096c8d76eb1fa3d26332e75f1a6c5f12df24b03507160b726b54613f969e2a4cf2bdc7e590e6efb71060e80a49a64ae02e3f04fbccd28b0ef2ad92cc69b80408518a9771203a659b9b961e6a33172d8c1696c293a2840b5275131e2ddcb20e2029a4bf1d7877db38770fadf912f47e3a0fbd67c64f3b98045125a37fa35043d26e93e7a954e9fb6ee31a01f740625076fdc59be8717fd6f5b77c386f019868ab733871d57440153ae438f6d61f0d4665d0a46bfbdca34bbce5cdaae2299c5274ca73e958868d9b530d8c4f3b3e4308eb06dd9097f9b9505199db5fb89e4157989d91ae96b830f9167f2e6f143f79ee8a63ce4508c9a3af701999b941e703702dd99d00b1b7b5deeb7eb2b11e829994ff7e76cda40616f5f07d8205b7dd6c0c55f0fc367b1b4b31ec47def4e25524d627c6611ae64e8f59b0d64b8804369d713b77c3cfada6cc7549c17628574e097c697bdd67dc762e7885e9f09ae0e158221a1f03469b096a354c81c698a9f79d42816e3c586cbe86ef20a59fb173397216ceb542396696cc8f89ab7c5dd20c7fe3249aef59409b516eccec4b0b10418e32296576ed83cd3abd4f7bf5b6987d21862f7f72cc6f86b39ba33b50f9b071656c99f3005c7f1e0dd252ac1ce199d579dee5714723e5ad18a6886e287eaa70c3669c1ddede249255effb07c16a5537724f87400023466d359d5ab1e66a6791050c3847feda2c515f58151401190737932c2c5b18498e55547af5fa8427ed10ab395c3b951a6b5178ed58eafd5d6e5aafbff1e5348bc7a642b24d231d8d22220749527f94447069a413559a4c73b345a2e64a78df67812573e402cfb1d7187aec11fb0bad04f4f5ce990a1f2663dd85d284f7b09f33d5208547c3b794d72eaa751f653dcba6eadee28b429aa923f8647cc2618061ba788a70d71ef0677f7ba1492f567f4a2a797a0f09b46688c5e34566d301132724d58533be86f1dd256e8cde71392a8fd3350a1cd7f32cde35abce5cd695ba50b7588323a6d4ed9f441a478c19e639446d54e6894ded91979e949c8a71c4fac8496bc05ad8667f8447a2edf71af3ea525eab2b81d8809957a3d9167cdd5c4e59e0ad7378f0470cf51253db0319c869cffb1063e08aa942213a753cd4ca5c59cf0840df6302b3726bddf46d7467d1b78fcdbd202124f22e5e169830f6e007be4f86b6a96e51ea2934fcef33d51d31df51ddbd144c74f3c24eae99bba870313a2e9b1a86c06530ba45cfce26ea451dda2db0b10670de6bb710c04d1bd68020575dab80a70ec03bb7e1032f75202228281e0f14afbbb97c1ae1422725bc393c1fe2f0ae4cc7253f887d8207fec64f83417c0ffda4e29c43641dbcac350d84c64bb09576c4bfb0c0e1cb2c96198911a1d12b7c8e802a8220d6a808a7006976dbf3312281c1ccfd57ab35f90efc97573b874580dc10eca611e8762dc0a7499364ccbc9ac5b4a9659516dda1fdb7c4411a8ec7febf571cc2301191c11bd6845ace8bb39bfd543bbf0ef6727e5bdb840913ffbd073dec9e5923b755513c8ed5d0b14cc3d25a9f049136d48a7d0020741f06b33d6fa8721e72c12dce32e22e97013513272cf62f93e48fde061074aefe243340bf08d4c4262c61cdc7a6ec8d3e1ac4b2948f5a6d92feb517a0adaa3a0301740eb0a4e529389dcf71c2ca4c8976a4c68d892aa2dfeaa78f61b310b1bbe634205742e8b85762f59323053e9d6e47906b8f7d0be2875a34ac122c2c339b717349f1b3f26314938751264c259395f7f63bf7f82e3d2f97321aab18d91e490112d2473c531093373c58121a44f23f149a0a1e7b0dc17443a5d1abd05be6acdb01ac820fdabfea58dd699c20f05c031d6c5ab11ba615f4815978691bcc6fc1704860baad89e3f0dcd3dc0eeeadb3ec3e36c36b213fcf55a6e5da4a93f0d52738213e0d738c323d1a873177d2bd96cd50869c710af90c576c1f61283a1f179692249c8fdc06ad98f71dfb64c4479e2520eff7749b5b8bb9df06e683a46268f49743a17a09e4863a666c18239b7d0397ebaabd7019fdee3788bca5c2a47c324cd8494f6578d0edd3257d234ed6818d91e963757dd5a5fa6ee8980718abf83a328b67d3d7754a1afc070936b32fa417e902ef30fbf9c228a4215a6aff4c5c5abd96307e9464f62b98d31c5417ff2cf7c0d2a4202ecf12431d5ddc1c493e1b3129ec3967d8cd8a2ad5c1f1c319094e5c8ca009bee429010bb032ae08bcd675fa9b74615bb9946415416595fdc9199202f17679cb1eb0e51051731729b7606af73d770361ce44bc3aaa260b630a9843685a75fd835da73ff89ea1f8dd78a81966af646e2dede8765f4e03ffde510888b1669ffeb4f34b14df590957fa987379412bc120bb9726956043040be4db1a227376ad0c8c3c127455ada7be101bb2cdb6fc9e2230bca76268e96515d3a4b4e0624375663c95b61ee59f8cb7c4aa2fb90ebaf10147ee9263b8cf90dd2bd4c2d5c526651ec055f01e6dce8ba7cf71b053c70e4a687a2c62f54641643d00affa049174b24866eb25ed9167e6e9818d7557a194f16d9cc46ab9a446d2cb4f22a5edcb3a112e394a62d84ad73c029c79e8ec56dfab64a0e7dbb3642026ed836e21be13243dd30d73c2b3f36ab1401a1f906232e299229e27e730216bdf9a9c6a920aa123add6e58d877b9c8f957acf0add464cd7141debdf7aa7273467a32da78dd44c9f6bda6b6f342fcf9d47d9ae3ff2e04cc24e173191d82a4ccb3b62ef6e1a87177f1940099c3290b065c6304eb0547eba653f70178f8462a48d92f71af4d5763d873993c8aabf8c59086e470e5f0ef770da374cd6bff1cf882b7bb8106ada1d5ee7f3bffe51f66831ef9db2cd6bf501316b3d1b629041eaa92ee2912fcc2059ea0a97c661676f4b4493d1f48404cedad8cd6c6babe9e329ab433c241896dde82f96824301947c63587d3be9ed2b3e9f0028ba5e991775f425521e46964c91ec21181cedf41da46ca02dc611aca3b0a32e619205924e0c383de0872aff768ffb67809eb75882d046868b56e2f76990617ac52f4d043f850d21fb3a94ecd84259c22696466073726e7db686d9f2e904d74ac3301eb4df99ec226cb6b02443f068a68d497921e299f831b27b10c977ecdd3e9d2406561ecf0af28f1eaf49a83d59994c3d4d47b6bb36bc18057190463797646eb329a4aa434992d9c9fbe9c74affe46330550391a726b8134b32c53c6059f412fc33f8ab68b39c6437c5dc9be69b5d4640d4ba4d402b2ab0b08060684583006d8d6e73c0603072ec9e4db47cf1c4d943a860505d729c6f626ca5584367c6147f6a6a58cf79389a27598b81d43ad457b01decbc934a95cb5ef6e19b843408a174834531867e495961bd5c201716b910d5172cc4826799098cad560b6795e425f75c1e2e9f928e896fd072f60955a384991a1282413cc8f3a28722f520e9b7b627233bb215ecf1a8adc0c5b2726f3feac03e4e7620a45d2dc5299d8407f17f8e32a56ef7d119f0b081d7c63d496528d8305013abdc01c67d8f3fcc38869959a40a2d1ab34207f874d8655fbe054e3c8520830f00e560704181b74dac9a0f6a4d9a14483ddf24824d2b66ac1b8fe321dc3b1ff77f9bf05c7fed94387a6beff91d6f6d0d78f9dff39d7258529fc9d9b594783b42d2e11ad0d0c04422630bf377579c74449d16acee2ac0b8d91d1ab014e0336eba595d11e3af7c99d153e2529293276b68d8a3a75ee644131da0192e124f71bed05983a0e79b51be312a02fa5e616f062ceb5dbb349c66d86f28a4981a86bdef98443eae0e8b70e161fbd8dd83e95c6870f2ee7ff88571373391da2c00352ca4a06c5767d932fe3876ae9ed975d6a35273699f7566be7f075ea4c9930509b1d95e69e07d2b65fa9610ca26f8039a14bc6f48df7873b1b5cb7806a5cb17613e1e687175f0bf738e8a2e82f91c9672f36746895df224df16c782a2f59554546d19310ad77a4a55fb6262013a46264cdc9c696d2cf5d9cf7271eb371428016a9d53a4fe1b0f66fa974ff6817b28028531ce736cabb88d78851eb0aad020c829e402273e9617bd644df7e816d1f5b7ae55f13e42efc811eeaaa3113a4d9575cd19437567e15e235e1b7e6cc72f50319e5add63d7bd67742611e51e4bce36cd2b93e65b6ec42bd3393f9219fe36dd56f4c9ff5bf0396b6592c6f74f38fc27b6477de2e21110eae99965eec96bfb169ae7a26757bd8d4c4a4415460dda6669facab29028eb55de0053aa531df0a71b9c8e6d2626b633d75cca46d6ff7c507c7bb1086d8f0d76c4d3d03eb8f76f8f8eacb1c173607ca813aaf1be8ef106e4f3179b422f7c53c0a1ba396495ba8cf3fac228ab7d477dbe2d7fe473c246f61e14e5610c64c84addb78c79e814e56db3d1970c9ec60c638dd6ba610af433fbc83c14f20e572ef417fc14d4dd0e9eaca7d869f828321975e4a26d6a8c792c30668e8a2d6a9aba5f3e0a675459b7e125ef64ea798419321eaaa3abdcae91f0db671bffcc727da2c6b48124a8c5d4f77ee2df254b5ec90238afe8e6ed3b205bb10384627d5c0030b8f79fd94a771da3e636bca6553ba370aff2a4df2e0c4ccdeec9376c99de7031d0f8efa1f39d540161608a14cf67795a739d3d98dc86f6b0092ec72d91e27af1a2a3c152a69fa8ea204e5bd034edb65cadbbec752b1e5659c0ee735405c576bb3189df09deddaa555c85ffa978d7832611fbcba3bc0d78253ef43ec53bbaaafa111a89cf5bd2c22a994747097f66d426ce6156fd89b7a2ca9644be50c9ad9445be43adb9dd1d7d4a95d5dd5f8c04bb0cda553eda79b86949575c1bb6d71488794c111f8517e15e26a337ba18989ec00753a1ef6ddeb9fe8706a959c9ae93bec609f68e9a079a1bdad11e1e2f5e05e8667e6ed2d656714bacd337ba1576da23677d558d0cd3824b045af30a91ae602a0f6f5a641a6bfafc11e0f60d30062539a9ba3cb4f280a3ce25a11a714f41f76505836e90d1ee3cda4d001d65826f39b4f4617991b5622356e1189392c02699c11553240985f8ea9d4e762027b9700b314a23abcbc0f5d5636211ccac96e64e734d32ba38c6359a4a716210829e560e9ac908e6dd8a8284d9eae6a5ca6a41d9e1506ffc227e085ad40f176ab8b21ed6f8f17588ee3f524b0fd3dc2205ccc3f42715b42bca5d76ee478eed84b33e72fbc2b73e843a54e39a64f127cb15faec99e000083698935cf12e0e31976ee742301012a87699cbc755f7d51fd1875faf1463665b78a3d29bc8e68a2479091694ff2a926e73e6924dd5cf7518bb1c22049422096dd92b9416ba42b80e02876c83b2e66a9c44e14243038227c8102000cc663246e9940551bf9370039e7de0dd5beb34e5b158189b6215825336a54af5b348654e5c278f7f42e4c72f7a9a373de4520af16479e10ef68591ba6b5c73c79c68aa131b9aa003d9e6cd29ca43da8affba6c03aa713ac5035609ea2531ca75665a9864a72a650c5fdf428dd07149eec610190639e502114afa4795a3760ea445fdfa147a93ed13fe744c3f18522b5d40600e2e0982ed99972195052aec16b962b698385dfbd146d18d879b64a5375b98fcc74ac1e580eeadf5f651ad8a0028ceb4993555da0c3ec532e16300297c0c8e949dcb76bc913d99eb5a55d182004a48d6a26db23faa913c71b223c36de3856667daad25216e4ff0b1e3ac2f28ff9e15196946a3e50ecc7ef3305becae9ffee4e4ef7f00f87555fb0d00d24ab38970c2bab10d55f245bbb8adb4272b38857f1521d0ef075b219996aa0f52dd98a47ca757b31bced8443d10d03a89a1d2bff5315ae6ac49ff87a2645e1c0f72abcc5c387bf81e25c7b63d44644b13781f6c919724e19fee84ddb4682905c8b4aee5ddd6945544f6e57a30af69f3d0504556f9cb1a00dc4ba7752be2b5bbd8fed2281774322f2bc8608918ebb6bd274deea0c33793f02724b1d7f43055327e7af3e2603e7cb87148a954415cf6c7338b6b814d43c3ae247d0d2adf85dd7b44439550e0712cf5681455bd96051727803a17973d09a3f01adfea7bad13a0ed8951cca122f31f4b056cf41f106ca0b3041b6302bcd091382f6bbc608e1fd4bd112672bf72332c67353782a400e150056d15d9f2046d9ad030b9411df31e5a4de9bd502f896b988069bcf2b384859ba9d17b8fbee3f176880f1cd8d680ba3c4bb2928de2be54c35b25ba86628ed0a28fdc9ff207361f8f02b064f8387c25bfcf075f585711b45a6233b5ed59cacf3e498e94e7a8d2745ee56570dbbb06d1f582306456b490cbefc524cd8a5c58615186fec2803c513caff210b2c0a9b38bc4d55f2071281d4153a12e6b377595c4ceb685de789f7d4fd571e5fb43ac6bc2018f1b382ee8aa0d429f1a74d658108052411e2b9325f3869ead9444f1f3fc80863075b4643060c6673c37788bd67253dfb3f715dff462d4ae9588097f5784af30c021faa64aaf253bc9627cd700311804dfd22bb91a5c29e38d1674dcc1a096462d9144073f020bea9e69d5edbb1ba59a4c71711fe760f13185ec9904dd2bf7298d6f4086a7660827c00f1feac5ba13c7061d9fb2c20aed4234892bba26a709cb9e411a0a0f27fd03612bbd8d85487d809c54c7d8248acf5e06973c1187c28f73698fa90d17e622c242601312cade6c54454d6260e81d0c5421fc5bc50f97a31f05a72b99baf715cfce0607f0983f29a7866bd5cd01479112a29d8873669c7c62512b0a0787c06a4d7d67809b4ce0a3404b9174d0e969cdceff6c913c320489081bd04239925e9de963389db79464728fe2a62bf9714459e6301781464e92d5856e2d0a6cf8697085fa3e7ceaeb2491a305e3371390dd59c9ef4c44cfad91dbb88a37bdde209ec28657501165c3d7430b5da828ec54b229c76f953180defb9f405ac02e9f4168e1ecea4458e054df267cd5ab4c8642ef17494179f56a19ff03aae71a1a3401a7f69d2a3993514f1353639f872edf82b1705deb3db546a8aa941d9151c7a49783d34f15653c66019738494a2eceeb86780978c403067f5886bf8b26b21c43adfe95f56d5730fd8af8b2e7615c2797994eb3b7b7faf9686a86c620b3e5eef1c329ecc036019015da37a5e4de426c8fa2154b84ac3921648c681d7182f75594bbc38205014666578001842da085df0850bf1f3520eaca69171cd42401ef5d8a5d4318b78b290e61489c9889db9652d1a76c9018de6ef634d4e2e9195252a19bf930e14eed10ec9ae0dad4ab4295763c57f3458f035c50fcf7af380a91c562e2332cca4c656e142a4e025b2731950892846d54d7fb67435772255315d7481dae52867617fb247c681ea3f1ea8c5e99f9e4ba9b8d3726b7c06a741897f31f3e2568ff748b574942f737aa3738c789e2faf3bad421684ae2f0c8cf2da893c70429e6d52bef623414f8d6425566e6d62635c212b05aa95f0bd74183499992d239918b636ee5033a8652ef240e0c4a4a1bc5246d710547d7253683f63773c23a8044226a14f0e61279c69be0698e769f80a38040ed1b2d7232f1ba52f9d4f9dc9e0c6d2fc89cd65f55f8c9b7d2c57d1363a6ce036c6ab98a5333e1c24dead6b51fdea8b97f4413461e981aa62876d565524e165a7241ce89ed3da3729d186ee3e570f36cccc7a80a4e8ad9277db1028b116ebc9f8002787e7e0b9ec4e09b832adf771c94aa72004dfede0f4fba96405fde96c1abf63419ffa100541074fc194b8220f0fe638be729e6e400344bd20cc4b5191a448bdbf082d112b32295f48dfa11bc06094b7a0a326bdc038b7097a32bc31de97320bb27f7daec4c18f63174cda7748720e4fb2b52ae8f5a4e5d6d9783f796059024fcb34a5196ebdda40962cb8f587c0f04e5b737da7a03d127a7268d83b70255cc8c82fabc2b92544455e38168c6ba535da45e1e0db43b65004a2b72ba87b3b5ea07210364141300249650a79071888903a4e814d41803f53d795e6e2f41fcca4f3a7fe197ed6be2d3ee76ac37f9c3125a76b82704715217db21d5028096baadd9fc8511402a645b8f14c4a59341bf18df354a5f532ca680f2a905915c9fff247fc1962509b09d26917d2ffeb694d384335de13df5c59b021f0ce2e4f3345b51b44e0430d189ba5e5988f8ecf12dedcd9a18f2281be119ac72d6b9212dff5b754a5c9185181c2ae36b0a50fb87a84fb0fc726725ec7bbefa2c3aa62a4d0f83ef98a3140f3952db875aa72d3db3d354faef44c1476abca15a5478e5a03acd30416a24f11f581f362d9dae3271ae450d2aa53fd3649332c047291bea7b0bf5691cc834796d1159a9d97a93c62a21a24d8c2478c90a72609d1068f2d5fa3e494ce5181b7162d2aec47318aa85dfea5f06d6b7cc2d71279e212c032a849b372bce3513f69cbcff4170a5df02c4e03ecf2471728d3e68004b0d595204dabc2cae9019e34ecd52d254c927a682f1cfe07da7cc1dfe1404cd98ff01637c903898370976c4a0606d6746943d0b17404f4b740179bdabe3264145a7a22c67c704b749c5b81bba49056baa2fc7c7d76b994f65b74938c72a65009c86744ceb85faf21ae18fb6a8ec48904d322470ad019d6c49fbb8972cc6254b87d6f89237178bdcdd9d52a06e70d25ec07dc29cf998935db96e1245ccba2025aba88d06fb7a6efc7cf9000162249ae377a259284e02eb87a21e37427a2709de7ab671d9f5b6ea798fba74618fed10603ef499396e6b663dd6b7678d276e2f431e81a5afee18d46912fee69c062162a6bbaee3552df4eefe981bc92f53dc4e3e65e0833963b522ba3287be9e0fbedb50f142cceecb9e7b166dc6819a7ce00af382956e090b4b56bb1da9d231c119f102335f1e76fa38bc40550fc04408b72e2363685cffdabe02a7fe4d17883aaa3c93ec420d7dc097ed4dcc9f13b7a8be0d0c0a9b84bae47525b40b807ee5231096d0d9c6c17357b3024895fbee07c3aa07a3b6d64f447edaae051da400dba28f869a56c8b82530f4fe2131873c843a732ce49e85f93342d5ec55f12499d1c3bc028be90b224742828dd0b5044e61ced115161808ce68a462a24c2be55fd285b1525ebe9435fc0e6e7a8776088de14ef2671d165643276a72db633c7679377d100ffeacc54f7aa9836eccea46b0254fb0041b167b16522e07adeffc69a6f0fda4f205a95ca0534da1592162bdf26d6bf928ca751e89ce87748dd76fd2caa274c718fbd4168aaf10c0f33e92e2aae7fbc8240ecb40c93ada412f7568bff01493fef62a0954971f92ae07ae145b5bc7957f1d6c5a2ebbf00eac7e831994a6392c698d4d5b24668e9d109ea33ac798c81f7c5e6b0661c7d42e42ff96912b713d7fe2ed027534a28fa047d83c81a0fd2e0963277b3aa3f1313a32ec321f73a385bf9fc2869ede3bf9586d4d72a4096098027e0971b303d10a335d3b746385147e115fb2c6d6f7136adfc39af66756dd01aefe2cba8bd30e30a0daf7bde921b64ece14bff2fbb7500ad3f994065ce7b19a3d0a5b7d4b3c0ff13b2d9d517a4024da5e55a0ea615284180040168d89b5c2d50abb154caa0949a1313727424522538432f6a1098094bc92f02367eb1e0d784bd6c54ec22aa5ba56b711e9104e4dd9e9cfbce5c2edcfe6911a78dd654f65a768ab8a205bf7b0abf6d53f915b677163c75faeff090692d1204f70d502e844d163096e17edf4913c4deff22f9736de91e411cafd1c9dde1c2df0f4b9bddab24af80efa03b93abb81eea214019f52237a89d02c5d15e1db599198bac5e5cfd5ffcb14d65b2f20e95b3a1a18106482198575a0fb872351f7527891a3708b0592f0574ad43be560087c26ba46a8ad7444b13ba11ee753f44318d74221650ede51ba3f7136199afb1ae0d7c56dcf64e8657d62fee1cf0dd8de8d0be0b59d26bdfcfc96a8b172d5d22df3ace6c91f84e9c17caccebf7276747876a6021c3ce243c18a447caa28bfd40525036752b7224708d9216a3f8c7fc58ccb02e51848e65801a5d92cd227e497bf0e0ebff709bc795de8ed2326718fe2e3f193bc229ff62132f7fab1c259a899997e423751d36aea849a06b54b0ab2e622dd7632c595a395a066a884691f3ed230dbad32884ce7ab37690423116687e5fe36b7a0c2a17fc0c99e2ee3503d1427460b7748b778ca4ff3ab91201fdca2a70178831efa2fbe4cd59ddb321b56c74cc8a6237db231b4547ef8a11f96df3729ed239e1ae8044cc08b877868aa566a3a39cd3f393dbb4de66d7822bf72fb5c2ef69a0e8d57907ac52816003df32a17717b40a03a242dde2a5b15a99e17664e6520b2ac3082083f88ea54affed45f6a034817c3db463f3decea277dea94de6032cbd74e7fe6803c40943cfbb4f27173ff9582f17486c56a2333af7c8baff30023e91a0816ad77d4f4b875977e663b7133b42ac0d1fed0064e181ac178138663273bbaa44917568e0d7a1e5813b02256df9b99721ad4c8e43613f66f0e268af6080e1effb9917a49a9be49823be35cbcd82478693ba10c02e6f0cce1f1c42e580f0869ae5563d4283c56e99ce09337b78ac26da592a2ba75919c26b1b833e487aa2be6b2441c07dc670655d0ded4279652ef509b2f5c43b208f8c375bde1abc4740b81e8f9ca649d3b65b2e4753654f87dfcb6e57c16be52985320089032f8b856afa313aec2e4cd9e4e725d97ce4dcdd2ed2077b0da14211558d44b0a8389d444478edebb8e641b5047e9357afc712f2e23f808bd60b7d748e35d6671e7d407b9e475d7c7826977d443519b7cf3210b6715f7c9882a73dec2970bb687d8668f82445baff8eb84f827dcb4136d7137c28b0dd21005dae4bad0f52c7ede9a2df5b4099817ade413a0ece44a66fe4f71d186daf3c38e1553821f0e5587ecb798edf34eba1cde910233dc65346c004b47f509b66191d22a3531de3ddb812ed18014b46e35dd8ac435cf4d8b0bb76dba3009338d843443b52ba70b709f4eb6fe8708c12baefb59d93e2efad5a6350551260a63c01bac090dfa379f518e191bfd228ac133c501453882d56e833ad586b741bca2a71319743b2716bbd128271c118a5b2c617855745f57db9aba53eb09a860bb1801ff4626ffdac10a742836b89131d0ef98c9bd0958330397e5f18f17f55c5c0169464ebaa737bc881b3a916971ded0b403a7e4b63724a6af71835438d813fabeb6659bc49918475942d9d1902ce52a3927fe05535a8de27e13ea4ade112af415dbfec9b5147002c09a2e3538a579f33637a6dbf7768174020f9f0c199e287e7a4ccba9ac7e27d8660d1daea05c22be11aa34c67fa29d8e1b662d63cb2808d82c787fcef2535de77570afba715d6d011e94a1284ccee04fbac36ab9ac4c1559950a876d2a55e6ae95e3b42a8ff646cf0d20be9e1583c7d39e4ad66d183814de7a526138799f3d24dd2d793ae8191380f1c4debfde1a2d257a7aa5ff97d720a95247ad7cd3d34d8cdb742056c32844d63e3a5153a1605f643b88de7243a059dc3dbdaafd991649479e5bb63103f3b5fc4416986cffc925d28f5314e87c1636cece660524547dbb7ca6b7c78ebe17803b6bb1faea2525310eb19f105743c16e043e114a6ec064fde9ac28457975f4c45769df40a6a06ede7131a22e0914eb1e13787902192806468f7385d71d491149b9ec365c203032a6fdc1a48e98bf932b7632747153447edafc6ce99b16198948ebbe1c00ac3afbe73ecd076f718e4b63bf4dd5a17c4257b98d5e6a5d0071e7dbfbb04bfa7ff80074b6687ba79d21fe0fbff8aeab3159eeb38ef648303781d41f5f77a47992ad4362cfdbed26be71a72ec0269d1e0d251ad00e239ac6316128ef26e4fd947ec6aa624b362d9285de9a22f41bc6ae917d61ad17e51a271f27829eac92ce93153fba626594960a81cc4542d46c2106bfea996ada6594087bbc865ab99fafeb7a0b1686c4d6a6ddcfdd76366c2da0ad835f080f028ffcc009262ff93913e2b201f9ff39e772ca84abcc2c6b932d1402f189b79e446d144f1ba541814f734838b5fb1369bf3b03147d845261084fba3ea7dd72da9372bd916fcc2c0ed677b2689bafee03068c1b91c87d155ec594a5ff5aabc9edf6948c4878525651a9dc35029f2b68d9bb6b11c130229f47462c0063eebcafca8923cc67cc3761c0b2bf0af81667ef91a5b3d68bfaff17475a088aea10ac6bf8ced80a357a214ccdbf7fdf1e2af375ad260be516508db46e57295b67a57f65cd90496d6f6f710bbfaff9b970263ec53378d4ace71d3b0f41296fce4e59b8b5d336e00e0e2872016e65f6dec2b24e0fe99044706bf3e6125f5e881d24e0f8f199c0376878fd415de2b60bf4f72a5c94ebb60c5e2970631a2f6404cdadbf04b4aa8ba4f9dbf02c6e302a8335720dfedb247b04e1e173e1906775818d44cc9e5e05e341c9a3567e5f66273526be9eac14b6da766d0d403dbb00bbb396de42b00f17638b687c19484bba1889c57a7e1e0e0667106250c1c03e262ff88e7e54a4de78da96ef1a1365a4e73d501c2400963298b6dc0bbaa4b836451fd999de7f4aa677d3b9b7a62d56bd2c807e6491efdbbbc9b7b7fe7501ea581ddc71de136943dacfa12bb1de22bbbea27d8bde7b16519806feab6fcba5e5030c1e09fd82bab7ca0ab3866de4cb7413f110f8bb156d8d5ce0734eb9c4f80bc74787e19c5cba6acdf6a37e9f6511eae29b053c4c140e0146896df2abc69e5612196935e615431a2869b72367eec055f8c7a135f64993ea11c57de74f46db9a9b72f23e7a5876e82521cf9c2ab8988aaa5c61878ec8ea4e15e788a81d6560c29c1b81cc1c3f4f33185bfd46be39f6a6df5c4ddc4c82caa5c31828e38e96a690725cc36290f20bdd383c1719260464234736ebbe2c0b12905046a6d2541be80af60c7258c74427a63fa625b93dffab8485bc35b8e7f9e444f12550b15b7b3ebbbf54de61493c7c954a1aa38b5506db118cf664e1f58fcbec80bdf5edb3ab59aa035f3412077770e5d1bbe47772eb0495a452b698c5e07cdb924e53cd0e2bb3e063663a5eaf85344f3c3336338c0e74707543e5607d2536e0c527f42006eedbdf59049f1547e39c675ba571631e2eb3408d14b126d7f594406ae4b56e410224308e57504dc93b2405706241359c682b33c51d58a58cd2d1ffc23495b05f58a53b091e075aa5f169e8ceb70b72d06d3a9a306fd6be8af78a71e9e69341e8b974580a0b4f61ecde9d4e00dc782882c47b779a3a2d8a878aa0053d67c09d4a48e078e470a557a2dad0a91daeb5f2b30553a30ba1d271e4c28c67e856a7911af29b3a1b731f52ee4d5f08d92975373c5b25dfa3f4e3d5e0b6c166ac4ff03a62f384d204676d434d3eec1f7bbd8091fd27af06aa4d9b30780ec7faddc89bafa3abca9e4844b30b8946340b9f1ef2a71a59317825bf0e114b8d16dde67af2aa682c992aaf5305daeabef5bf25f9ac7427fe9bfe520312d532d561b0326ae1af82d427da2938606e44aa7e1dcae997c7e2d37e9e8ae552f3199d92f7b7bf2595576cce92d4260e7d425f1a7dbbdcda430b36bd1c81d3f26768613333501060b80ee2bc28d2302ce810f2794a19e7f8f89ad175f0918caddfb5fcaa0fa56bcca1be2684df024df9efa1539203016c264dd17b06ecd90d9a336c6d3c639137d6da753ec7a2c405def526e75da1287a5112d2ed0ac4a7f7eb98a4836b2dfe141af0c38d51058102c1d9882ab4e1dc1919a199921c2143d86642c6f0c2860f60824a7d198751472135e235c28addd5aae4fb5b85b083a9614040ef5510173b33293c8191da303c73a072a6e2783ecf9fe491c76f737a78374f61ff0dd2db6e72d2b61169e4f7b13c6bdeb77b5579a0b290e455576e2bc333cc9d2e9eac03bf58e8187bfe2cdb70384734619aaaa983352e035be811551a2c36ebe2fb517c716dedb955f37aefdb1739fcf1a29fdef62e035ffc0d7c7be411fbc8b3657d450113bc1bfdd83264b84b805aef27eef5abfb1eeabec32abf79b97ea11f272a4287d5402c02a14cb7d30aa24bf2438ef5b9d3e47c461e45d926c95966cdc095cf90a05b10f778ef38492975ccc72b2b94b67b0609415b627b563957d825666c18c5d429288020d55ea830ce5cc022db81c9a1d73b7f8ced3b1226ed1c5f86752f0f0bf0638f02186806374e862b67f016f9c775bc26e84af8e3f590a01d334e883e977a9cd09bc1f8482d8c7ecc8c4f99e0b73697318113cd4da669c12bf6d1daf58060bb4221f8254c34d1b2a75ec324f2f84c9059a20647dfc9c6613720b0ae087b286640478ec2ac0f0d4bf13b51116fbaa4402d0729c719741dba417ce17c652eb337b9926940245272f91f435ef484a87cda7d7823bf1278b39232885b815c8cfd1ce6d4418ef33caf73cd5e55642ede39b56a7e4006213712dcf39a1a3991e123e413b9266092672477fdb3d72475a9ce937e4728e6686f51f307ceb4e6293daf7e938ca97c3938eb6965e30b9f080bcde33ba9306598feff165f6984a91e777cb6cf936e785f2fe9b2ce0ef4f8f211dbad81face0f201ae20e32dacd1f0b30ba43ab4709a58935336aed0bbd76f6741f9ababcfa6c3c3b2d043fafeb588ea43cc05ac591b9ec230da7d78d2db911ac0125ea082e2eab8bd040daa37b434cfee713896ec7f3b240592e665bf83a1a1edef84f2bcad46a42f13951dfe77b91c598f089230271cb5f0af2685a2c4526224b8a486bc8157831d9fb973b16274d84a6ed44bccc0417666307cddca6d1c5217bea26eee361dbb8c22ca86612dd497119a988ae7aeafd6c139e75580834c329c38d1e96288b9cec28967c34d5cbff00fcfc99108d15051d8a1de9e674dc321b67bd3add2cb1b3a92401dbfe94f65b9e2a0137122685315a5b96b60efde24fa7300a9cbfd235ebc6dc443a25a081d59dc8ef035ead1b9511da1735816a8280b334adfa5c8585e6da76e56b4db6419f24ae9ed2f6c1dbdc6bea44142a1d8223ca8f92d10aa0a410a8b028610dc119908e174ed06d93ae1d2c285784f733ea859b4787a81e2d71553ddc53c1002dbba88b81dbcdb2a2842b0f23e2deb401880fe4a9e75a5fe6f932b05d063dc35a964e8ba02485a50a52085e4fcd5d3cc197733b721e36041e9a7f767a788525c608cf95451b0efeb4eb2262d73c099a6f2446ca5777c133d19d9c7c9a27ceaa9a085a319ac93603d575bf40ea01899f79e60b2ce170ce155708f45651f6bae3500c6c51bba81d5e5fbbe573b5e591e12f50a317c206c7768510aa57b0857b41e7ac4b3057d1598fa94d082c6bd04c8bea7aec0ec37b5ca3885e6f5b82bef72df4472b365aa7287d49246e6a73b3cc46661e524738a7a96ab916505436a0b7cf57401c53b2248eae8b5fb760c4d37224e3770f00e2105d8c20c3428e28a119e4d7e363a74dd473510de4ff53e9f0b87aa29343fc6cd892d826cc9a1902e2bf3bcdf75a140f3737bfa9062847815b152ae6268018ec0fae0f491734527d60b00af1a9f5ff78ca377c13f9db2b441c05713cf78da8c19b74cc5b0d4ba63eecc661aabd70e68c9f65bd902fad3e0a43de7887a16179cf76104f76eb18f5b100a584387e87ba89439d8d0ea86552742402d4796a715ef2dce7fe788ca15a3cff6d586852531758bc45f94acd552bd63d777a55cb380cf7f5b063c6207265300f1e49226e692f05078f793eee05152a0fc06fc68bece64b719e6184290c1c3378525bbf1dbbb65fa2d7e81c02110f739f2df851d98075cba37426aa92fedf4a2ddf50ad8a705a79efe00f77e6420a11db9cb238658e2f67b7cc77e4781837acabe3ef40c54cba823c5559311a1b4276deeb0fb59ab74df71b322b5bd92d1cf8f645230ff813713f6b8f85c5ea511ab64a163cd25c1e43594b224cfb10e0541ed34a8945336eccb7cbd09061a242356343503f41e38a966f33961c9a99ee254f8044cd1e4f23580f8fb4e117ae9c5a61cc619c7a72504251d02bd06d1d7ce9e61b048a2cb0c026958933bb49cf921ef8b460b2e1961eb3a80ed47ce691bcf1eabda8a2cb6c9d898ce0e1787008491ac1bc885bea8a7ae766989757ce1239e7e66ba9f1dc639854a9354b07a1b0220792517352ad3c681ec848f8f8aaac6eb771697571e2765ec98c004acc2b66946d8b4cd8dd1f952eb1dfff04c2d000a08aef277f31ffd8af5ab0a859497626ed3196f855df0750f9f76520d186d3650931e2ee0214b15590a77b2217de414fcc350bbe2ddc20c7dbb47ba8407a40a80b3ee53607a2f9932db4da7007312511772a78a72e60b7cd0cde65e0a293e0546ce1d6006100cbfd64e2d294c76493071d318c7e9ce9b87e8cc579775ef2de9a211efb2a95aa36baa55a47fa428a65f64912cc31076fdfe46c060e7dd51657216168f96c5ce6c0e7ed85ba9e086f5fd63e1235a27e85becf5ffc11d4825c3f25efffa7eff6c75a0f71129d286c2313ae240ea22c0d5601df6870f7d24bcac87cd1ae2e2b2693d2d479e77397be1f1fa27018d993fc102518945e0f63003b7199c9cf085d01ecf1b6aa168974c64475626a7040f5cb5ae5d988637237b189ade56d95c8b56cdf828be5e3d822342e6ab26f01ff9494bc043abc43972aa80cd9dc43aec7ca356357974805f7d088d21b73503004e5904cde0307cd93156ebf7186b82b09dea4edc9961bb418db00c127d5bd1f6ebec8553613087f911c184cc1a6bb990377a7500eee5f36db85f19d927b63058043988d00cfd7de87686a5cb6a81a2349805a93953f53010a579a3217fcd13eb1ed3f632b5b13bbbcfef1d0f7d445dd9ed7d57f2304c26b352facb8141cca1d91b095357bd915ecd8cec2033f99ee255ac4d3c262c72bd9f4caa5c89e41ef502dfc36d82bfddb8f4179d2a62e4534caff845ca1ea378f24bfb9d2872f97920c114b5dccedb18e2ff5497fb9636ba65637bf0fcd567b1cc484f08996b307b60ad4ad7336e0fe53c9a7df9cbf6d240d93e353f1fddc34698e919ec33b3cde89525844a5f7edbabb0e21d7aca90e69d7b1b50c68f2914cd5a9a3235f0e22b31b1cfb7481e8b25ded0ee28f2bbe87448e253cd466c8e223c72460b42560ed377b48b5060083563f2694d4551eacb978075cf14ab9f93019dc46e47507b3f13c14265e7bedb745031e478ff3eda9e3c88e4784848b09c9a557e376ed91a9f7814b068665a794ad22d844935644420a3b9e0251e26a6ee23cd81fb9d7af4561d040172a79869835e8571d5c5a6bec7f20c77de4144d088d58708521334126f5a66225dc02cebf115695ab302a4af0fc1d9cd851dc16d46e7c0c45306d574b001fff2703350b6e6f4fd3f42162a50cadbcad89ff93d6cf7f0b6666002b7c1d6d9d9418a278e0312cf3f5dcd2b89469b501b44423ef8c281badf319fbf5d69293ec4f5a3305445740ec587ebe1f2d7c1fe06661dcaffb0f26ac7f69c27f4c2c61c1da526b3846e13b6b8a5121d3b5f023aab2886d3da874218c0e381a6f0bdb0909572b53ccdeae553bb723c928910d7dd9f4fbb8eddeb60030f6c7bd0d9cf0a07677544d9e28a29f44fa7daedbe22b0bba1c5a97874bee1cf1374150c7e9872079cf0cfd4f60a2a33f94d5cd321efdf2e7dd7511f99b364b6a0fe8c76d306cc0e3b15a4de52a83af616259dd2cb5aaf835d2ece98bf8d19803dee09ec7381a183c4e1f973c507a07f204803c0550ab909c3cfa11cf7ba3448914c337cd4bc61d102407a49b19105b11f3d32c04cea3341572b0a04e33ab926464ef5275b29caf090104a2ed9bdfd7123351de8eb583dbf481d375a7f35a74352df49e3e8adeb8ef9e02533f9f5c9c4584ef74a5a95da7ec8b35c4a27331fd717076dcffedae5c5a2d02c3877d10b1230defe6e95b43b70206d61daf1dd9cc002c9818e28d3f4ed2a04534f1a689e60ad640c9d9a2efd450fc2beca030488f7617a46a65196ec94633107cf522fe3784d8e10a999f5646e6f08e5a55c0d156706dd6ed840006f7b7132d80d90093a43e8f1385cd5954aaa6f5d92c0f9ac04f99dc084decb181ab317f2f5d2bf569f241870cb650f9c811e4beeb7cf6648daaffee46b416b9a4ba2fb10269f04c578bbcd2076b618d1b8cfb6f114486cf32abb63a145dfc446f34312303de2492cc972945b1d38fd82280cced7a40fd860395cf6d00f474ecdf822d1e6f754ead9158008d92746777e3c17f6b772a2f8d2b9f9333df0685209897f09e1ebe8687c9c7cbfba6d63779800e02c57dfd65bdfc156f7f95d66d69505a7e014344aaed8cd0db3bbd568b3557f85ac221d3e09ec499d740026a383d20dc3229077c1fdba8fe38477751aafcc4df95153a1e8168d62748d7843ff782e2670bfc73086d394895b332167fa61714910d44623ccd12f80c8bfe8f0f34fdf57cf34a03c215d7bc47f1143b8ca31b5cba22d11c229cbf706be651ff23e4927e60afd151360ae5c0b886a83de2a0e3e972cf665d15f9f073219906e83b9844208b3a8e68863bf2977eba69a435948ea11a4fdd92e76213e158898d30bf86aae7b988f865f8df06aed01d66329d9afc47b60a3d2540f304524580e8e23498075d3358376a4cd77b28c4e77300c1bd3de015e12bff667d2380f7361dbad11a52f3f6474619a56cfb133f7ec6f03cad67b2efd2afd05d3130cff42085cd620ad28e1e73a92826c2e0586a15b7304451d5b2178e37cc433e9c9664d2b769ad6547c354484731ece85283e1b5304715022d46a8f5934575a0fbf407297d6d04d5dbb92f64160423dd6da0630ef28822d42658372cb63b650ea4ad98973b36678a695ed9bbab4cf0dbe4b6ba7a769b2fb92c0745212df5ca7e75819557554a4beee21506f1b154fca7d81a3f21004804df47ce697c176f3ebca53c0e7eb991031f4c14955b921486ce4a973de17a3e3aac17f60f7f08b88b1aadebc8170b35a477fbbcf2efcd0053c9711deaa94d33d25c90e531f9efe39997d25d9a50d54c5d349753dd35966d6070bda18b3af050d8933d37c46530e9720dd6815340c402982b8904702fda3cc4eb8dc3ba5a6c5dd35f3aa808cfb708cf6fb239e51b5318ba588b2aba894b22468394e478f609ac9f28c30a2738e8761e2022a2eea39a4f99850fe8c9987871816b797177432db504902c587b8cdc3664a2a5e59539e95e2df0b0c22f423d61871689b8dd26660d7530feab7caedf0e38d01b57fbf524d611888bd12df344301013008d49f64e509a394df330dfc2ebe3e9abe0adc44fe977846e901dca09719ad7362354f094d457a3d6cd360c282eff6cfcccfbd598bd7dce6f196473706e50781e5e6a223e2458df9a28df5afceab3b4ecb7cee552579c9037d8bf36964dfa0f74c6807d1c75d49e2ea7345161e028466ac37213697b60cacae5ada3d912335c9a8b8cdf1e3b176933ab87c11e3f3dae55bde533beb8bf674fb0f34ee46c90805ea59c4255bc6664242beeb3e2b44470854a93fa5a0697b67682ea8d920827ca5348c1b9704f1111801273921d816853bdadb3d7dee82f25adb42d2ccd3abf9ba7ce0754527b8b696f5b42fd4d77531e35c3462482d5d6545009b86cb234b133878da22bcd2292ebb48960d51017bdee4b00ca64dce0b721349e8cdee13e72581a438a0cf3dfc33f61f07dc11f1a8e2ea306f519fd3ea108892daddb185399c42e139f2116c0779b910d355ee81a9bce236b63aabff30f5213e47cc49b36d7b6e917a84c2d7dac32a3d4d6582fec8ff5639487fa8f0c33eefd54706dec1f442e38a47ed7d4acc0cf2bb7d74aab8342619e366f77094f5a90fed04e5e4b30f9c93a098c5f0a89385a5b7cf1fd653f335f65796be6bef86639ab9f4f1a7d13d8f533bd1f21101d45876c30d477f7ac00408426e22df308a8e544066f89cf64ef82256c03bbe67b19364cf9da2a26ba75196be4cf0d41cdfb4ab4c5c50d296c04675ab72ef4fffa8eaa8a24e4d76841e5a899962e49d9c9273fd149868d3166565d670ecf504ce13609648149e290e95aaf9a501015e80ea1e13e90565aeb4b34e13bf45000c85906147bc38eef0da307eb000209578585265406e67625643792000ef37a6603d5d39e46d4cd1a49617a8c862e3c5eec8d31ba7aee4bc38d13da2a88fdde7299be101069373ecf8c50949a23acf39f522271a960cbab3eff32820494f91b293b906a12b72afba5c2a631296b2eb64fbcd79d3b262aeb017d47e2ed1355b08cf2515bf2d7f0975e65ffc91be1b6ec4016d73d39264590edcf6e50e7722a6ffbd06054d538ece9fdc00fb747715316d358513b45e990b2d79837857e282efc348fbcbd7969f3221ef8651c70512d3e72e39db884c6b5bc1f830a6c13d3c19caa8d76e87038e5872f1fd9d8bbd16c4a2801b1f641ef840b60a25ab7763a5eab6a92a6415a29588ca703277f61b947abc5640609c789222839dd409513ad9e1c773266ca1050ca6a22c078e8fe2286ee756af499040b1ecfdb5f70c17947883d7a1195ab787ab91813000d06384b3023cec7574b3f1891b9639d55d84221766881d00ab59a01220db3e13dbb44ce62a07c6a8dbeb1533ab851935f7e3fdaca6f27f5920bb11a9065c38c703fe7e742df2218c5de4908801e44944fd0f49f944e16fc49461206823413848932974d0de67a18d608b590f75b143a230b0e449112a5a963179c3ca8a3b233cd348c3b55da52d9c5417082ac4df26f1f458c076800b381ecaa27e21f5880ca3d9e980d7fec5db8f24b4007f0173ed92a4bdf416fd875a6254f638ef4387c9e5182cbbb8963ee55a4351c5038167f0170f1f9f2f026babc8dccc82a922b0e2df120138a12370c36ec54688d2f7bb2455ae4f5932db845a0916216d7ae6c244cc24644da3f13ae2e8a447fa9d933de295a528005ef102a90e4e3893058c7b955d7677fa9614dc9cec340c6238cb98fd76f9a63ca1464ce623ec79eb657a9de7449021ba1e5361e6417479a1481e7d95d0e952513b02b5229fe2fd31e1917634f0ac8e8ac655fd16e5668e07bfea66d553295e4ac11694543a3e9ff61e34a29f0501ce6530b71b4bb25853437a4dc258c18f73325d151c9feb1de8c00afa189d49f8277057f80c8f4b7d9c11c6db5e91b1f06d6643fd01ff9c1dedf65b5e53f946f6b669dafb95ebbb12bd7e146a637e718281921d313bfb83e36f5349832cfd21d30372ac4258ded57691b6cbc5c73b4710a49f53b15d18012546ac0846d01c1655f64c34941797dd49d2b8495b396db66f2df5c8a960a8e520139ebce8cc078c2d9af7bc60909b4ffc3a2ceb6899bbc0fa898339dc85b8062c7044490f2ab210f00deb3a5ea16494859b0dff003a3d57337c6039a3f83711c0dbb481696dd71e168d0955751d2381d864f3c0a4a2ce4307ba41eea13b74e6de2918c9426d782b12c90e4491837550b65f40896efa1c054ede65acd1ba3bb06f54dbf2c1c9a066b48aa130feff35a2e6263def3a00e5e3ae17de02d01e5bb011d5001f9d4c4536a489d9325d7bdeb9945eff0e1d9d4fd34534e0c29777831015f9f5e768205b441e57a16ceed5b5a4d335c34775b2dbd1deabfd8536cc1aa341eee0bb8eaccc5644659e8fbf47db833f23ecc8fa3326203da1eee1b2567208ad68fb31d4168ddcdc45ea88efa50c368d7630574c60d474a1505fccaed597d9d3382de49e81a6e3917a8ff133eb08dc1d2beac594d4ece52290a217f17783c03c850d0e0a5d97ac31702984fd5a6b829c5031fa5122b06271b3ea56c4ed03d3aa7f04069f4e0ffcb4cfe79d83fd9dfb15717b1719821bd446fecfdbf1c2220f378862131c281ee1298d58f9c7999b66b0dc1cdb8b51d652578763081ceba4b74f9c9316fa346e218845f87a16dac865c7a21c20826ee161ecff2053751818c93f59337dfdae3d3860a5289665bdf33c96d62811ab24e55349f2a5b25910c56486621e942aba8ffa07805a252534ef20eb25e838fc75615685a1279919e3edb2313c7eade85c93c309b34ff70aae2e2fe9fbd2f594f155b62f96a7814d72f9284ea9b6ab45e99900202c753582c25ebaaee46cfd673f6fd1e3d389b3212575e844a9df368458e9dc9e84e10a99f2f077842667a765ee44246349db7bbbdfd3a89c0d33e508f16d322a81385d6a8554592a65ab660b7ed0515f15a632414e2ec9b0f2b92991e4331043e355f3dca968df2e9c3acdad42c77340edb2268701e520bbb62039875c8e049d6948d919b562e65e696e003af516f72ff904fb154c951f1846dee2fd271c07c4cda08ed694d993eee592cab25370728755385ae6e2c07bb649efdd0b013e20cf8847d995a23a480bf525d63b555f209b7c9bb9b269e7436a8902a4a8ddaef35ffa5a6ac6dcbe7711f3a6448a2860c006ece7ad18f9de5fabdc2fdff05c95e4c16928b4c93d76ed0de2a5344c627a2666c22cdc2422f92b16b205bd07fdb42291eb75b506d6b16d1733a8faacb5d033f0ea7d23668c7254e1a695fcbf17fb7f33f5627d6fa6924539411fc49ba5e9532025c9bcb11c145f3d1926032343587675739c94427248f460f0129f4d6eb084d2cd673dc09c9b8d26f8e656dfb74699c8d7ae294a827b4ccb829b2aab0c76c01c023f7ac95d4c65a0feb70f0645994f1ab8d8bb25b10adb22a4737426474b3380fa868905c9560c70e6075978f7e064db1f1b1dd0486e16b704dfc610c084f4862719bd22999bc883eeffa48750b79ceef141a356a53b41e8d60bc5918139263812c5c9b90639170b4190a0119203057a1271a30095caa9d62b3301c2f0fb2431b787d85592f8c20819a5554e9f8f9f54aaee87972b0b4cc48db583c04bdcf71d198323adee5b414da84aad5d4a106a4429cc4c34226137a5aa312bb4f18cf37622b89688b08e06359728d861b76376283a7692817c7473d7873384a87a3550e51a1dcc4a4cd97c64261efea01cb0d1cab20f77e4e80dd6280f0d0786337f72d6988edf9c5b74db04e71f7b09b27ac78d654236fd68d440f595330428f8ab12f72f9dc44b37ce46f06e1997a2b003b94d3c8cb6a0a84417cf037ebcde5b7733fd9ff9b238e6912f26262d8c2ceb24e67bd75aff93980fcd35d500ad4707da470f5fa9868c7e62354a04fc9c89318ecba24542ced4aff724513e264c1bdc10b6502341ee581271547f56f1debcff47c7ccb7dda2ba8ac6052f40bc55aa2ac5f174a0a7a6dd09747a13a731d8907190fa8e49d9487f7d8ee8c0399eb0c74fdea38fb6c9f393a932074a68ef0cfa885e0824de103d9eef9c08a4fde06da897f525cd85724b7a17d43fd3054b31cea5344e24fda3f868196adc696c3ebf715dbf36392cddf5770ca9a86912b31812b26e61495697a97b601556b07b5eee248dad8504f1e7137a8069383a290a4c7a64360d2f8ddb3497875c5f45e2fcb7f1942d41ee4a449f93bbfc47f155c20db7ca37ee555c74b89181b979f33ff7f4aff03ef390a21758dfc4909b4bd76fa723b728b724caee7c34516faf43a7d061b87f0cd3d25629e002388798ba6f1dcd7508b90da598c32531db27435b9ec237dd68fa7611691158f7e20b032d35990120399d8c87d4382aa7cbfea4863d0645b146b066dfeb06f25c39aec62fad4446df69cb9ab4b4f6132b3390dab3e497f77c7255a6b94fb8cb3db988bd3fc4bb197fe816e2e41f3285a24c53ff226b6e359f4d40f494f6a3b405e3d70554436723dad0dc537a67a9c7c8bcbb2c02b2e6a8fc6337758c4b29d33efdbcab7d9841219f7d240c125476a8077ad2e3c0b8873835fcdec2156f149402d7115c5b381ea125a25d4682f219a3031ca5a5cd912de0ff2e82418f32e594a95faf3092dbaaee2718e61e716046053d99c4b0f0654a63cdd5aa64be5d7d125effb190229e5b7d2978a40f6d1df5866dfa4d519e866dbf627c19b214f329221d9ef24c45ab579c62d99c21473468ac130f9c79d3f42e7fb141d9d498a23f1163bd2d2c026e7946506dfaa7710996a0981555bb29a894a596ccadb0bbc4d6ebd6b3d8cf2110b6b75b397b7bddbf5dffa8409493078d625516ad30c2f5291ce7b4b257de705d12a0e5f8c8584d7e7ba416b547287e5a8e7b406cec67398db47bb9699bae52d0b86b2704e0436e4cbdee573e6761561223f5c17f5b0253085e08211a9fee67b6aecd6eef09062649ffd4c85036a5265da9848e1adbf18bc3154b76119c0047b92ba58411b33f4e7cbfc859dd7c134eee216328f74d43fbb67b1703f20db503e9c7932a0d215d34be138e3ac94056098c80821c7cea2207cf6f44d199200d3940667844e8a4736a0ab963de8126d83bfe0e26067079370015b7f7ec18183ba8b1102ffb885ad939fdef6f52e232d5192fca6a1f48f6b4686c3b30195ac347ace1712e97a869609c7a17cb9526750257c8df7ef3aa7c9574b8b35a976bea5e946d6bb69ed570fe28ed86c81d350ba15f653c25d9b22c20722d27969ba96eef3fed476ccbb5c9eece503d7689ab4944f60fed6a52c306071db29740b3458669b04bd6592b23789b7f37aafe7b123606fc2dadd9140868759b024e630905686dc221d5e2ec113b9f6841521c8854e9da22686b92931e3084697786344b33252278d6af63a601ff5c0b10b3321f0dced8339157b786086f765e2eef43b4ccc3fad4c1a664cbeb6871e7aab6ceacf2534d9e8cd3a8c5cc1ed28f4b3d7d201ff770751d9ff2525aa566d3756781a2e10602a82c32f44bbc9526361595d60ea79c305d07663dbbb132ea7b2f995470f8887222a1e73d95dafc40574e16e929c4c132108689a9d56add70dd5a238873c2e03e033eb1880bde0d2325aea757aa7c7d05cc1a218ad3a308624884e970881c89aa69494f61937b9570bd51a5dd4270ddc717c5b6ed19df4163ca0ff3d808618571be4e27436ed577d1947aa9ca36436e5ed434e9e19fd8e5f20a6a6e2be5a0ba02917aa0dea4823e06be514c2ff6fb6c6aa1697277a33ac103ea9904e2bcf6e2c184b57dd838757df724b9867f1cb7d7511f1387eb7d74b2f8e02be7efee906ad4bd00c3f895b35b04b86a75f5ab5dec6a98afd675432e461bea8d9ef89066fdf8cc9f4b8fbc66d1a0c639713a197ab2e54f7ed638515fd638dbec50602f3b3088cb31da2b558a5580a1d1c88dc2d2e42f74adb5067c241ef64be6f208e8cd4a090666440dd69ac7f0b9471b832e4879d056bd1487a7c085013f6ae3492aa690420a464df0dd168c41b304afe18eca48e131edb254f4a0ef13ed5cd05fe516a54a78f4ca6f673eb94662a47cbde0870e955485096c3e90b5ee5193484949a8e34489f1c175bb541f0432e5286d692b4603aaf336e69d35ea795c5cfe9fd0f3151309be3427468859e1d36f2703001cb6b77804abaee6c81f05f0f86242b2a24c67c8d6fef0bba91252509d1d03f96251dfb07751512cdcec84d59fca82b42bbd60074fbd543d451d022b6003545e00815fc9d1e03cb948d705e9acc497eabf88d80a7790346c8ee4970d4c94853e8764b6026c7c37947076baa33cad5696be19e17ba1f457b5a45f330b3c2a1d34d8302571ab1296a45ef095b6109399d92cb2f2b16cb5b6bf210cd6639fbd5f1a88d6b7ce6ac7916f1cc015de7bfd1c55b15a141fd776aecbd1c0e50d8ecfd14662cc74314b8674e4b8966dd3eaf4b9a46e4a03d74f054d700d34e106e044be1e767b984e61ad7eb88df510e8495566759b69e1a36ea5aaaef927b49729e9ac6d3629c6b5972a19cf1f7f30e5279f8589db643569bd6462d82851f43e76780e7d2ef37272f6ccffb039ac95487fa540a28d6ff4c2b3eb2786b41a74c90aed1375fb28b976442f73507495c8b5ecd295e3d1df0c2da127aaec7381b40d16261f3becdf81d8426dc5c7a950181904cec30153afd2d3692f6f58d58fe6d388573ba274c24a7e2ab41b71491b15be070ac25bf64936aaef774f9f2d6b804315e2e376392a8224b57e932b6594d8d2d37cfa7a3e3fc665942e95371961567789cff36967274ec82332f87fe53283c8ad6ef7c2d20e72f326d933cebbe0c03152f5b547eaa663c438650e418ca8859036385ef79e4219837b184d98d3d3e6441f80c599cc5ebfe4421d5a35f8cc21c1f8e69a59a62afa0ff6dd499adf8095a47353b3043c74c0069bfc7bead9343f5214db9c10a04e10bb819340808c9b714d57a9407e20a9f711387b4684846bba2a0cb99846dd789e57d5705aa7bdeec45cf8d9adc9b55620e39d20943c2f55e4e4f9df13f103228ce2ab5723086158742fc9f78e256de5e838930d7cd3635a333f80f9877d4e56761990f7fd30df2353a20b395ec7e9ffb3f20c63071948042b225373ca155f8ae81d5e650275e386f2a8128011ebdbc65f42274d1825bccd56289a37152207623e478f7975446e5fb21bcf7fc629b8a244c8d75bbbbd79ce8e18216aa7b70932e735c82aa0e361d8545a6382bbbb2b7bdcbcc2e1be651bc34885cc93c5b855b807e5c2e71f3814f310b21c9485567f53efac43ce10c45a8fe62f0da90d980e0b8c9948d5845ea79b614bb4e6ffbdeeaf0890c16e4b595d4d948b1ea65d12ddbc82add849f4d2bea490bce47a65cb16651c6331e6a19d84efd8eb0d1064d53d7189832b688561ef4e8142fd20d608e79e78b0129dc95b96e8062f38e0fadae7882e2933ec6b60486e71e729e8e8de64f8d28502743c85d067582fed3ed06e25269897aee2be11965341c4ef63c42b05072ce4368c13382b964ea1cc05bdef0b026f6bd960f14c3d8dc68a9949c597e7df40a29fd1c84fad22c845affa837439abff69202da0b14c2423791bce325b502ac4675889e88a085dbb1e2bfff3727c1752341ddc896df5ce04e45d97d555e28135c4528fc7fc00a53bb6deb1b6fe227864754fb0dfcbed3382c6af3588666b4b7ee8fbd7b5a94621d0a4a61b43dfbf39f7fdbddf413fd7d6d13119002eb8db708ac81d5b7fd733252650327610ec3e7ce3dc689d67e81432521090147f354f66e76f61c457193893d881fec9ac19d688dd64e29b36371772a6406d6e8e75e0b0520dc1dab4223ea392a48985e5bea3c9d7e2cd88f0e1f62776fae05affe9e7f21f1432c41549561256ced7ef4365346fcf036db9f908dbb2062e907445e660affb619355f3649e5db950e22a4162c3dcbc780be74a6bebc2a24a198aea4dcc296a189d6e3b3aba1a4bb4159c3182c219786dd1b8fcf9728bd2f2e1f6c54458e5244010adcfc7cb1308d9be36e9c99a31c63287f9d6ecfb5732eeb9bed71ec48b35b6410067b628b5780b8b1643e610cd1d4e86c356a0ce9925b169f75a1c54d0e1b1d9a51c1633c4c4c5bcce5cf2f3e7a08f7121b212984d06eb3bfd26d5442d2d17019f64b08a3b8ee0c7c579973e25a4aaaf9849c30a8a417affafaf50a2d46f5c3f06e923406c657ac449477f74d17e88e02ff363d11f52c4f5c3bf62a39f4db1a28a533e1f6fe0efd4f38b465d9b3fe294c3cf5aa583d33cbf98d8eae1a5a11e4f02d349afba7cc2d3577c6fb329ae3000705e172c3b549b4df9009b4c8292f8bce7f459eeabf92fc3c09fd58ec964ae40cea361b251b5e7294051600c2781f4edc97a8b7cf27b637593235f39bb3e406f66ac4e02e032ac76f8ff65f3d2993c7752d09a31b8fd9b5c430d1c50a8992a21ea00fb921c068c23c2526a1b1c13d4aeea84d664e97d81ac222ba1c75e829b7228d2a1f545b4038f82dc21850f313d377b1e3ea95c0d67d4d08f27f403ebf9da60dcf593cb12e86deba651b08f4cb678b7075cf4d442df29e86f4d139c49db96eedcfd7e36f52971f27bf9b961e36975168f57fb84426d8b65a970758927a0cfc4b4c021dc56eeaf5fd0ed44fe9a12b177de98af16314c84cf17c84e210db855993d968734b556e21d799a955bd151d62d9989373f77ebd8399fbd06277bfc8f6cfccfa73e571e5dd49123da69aa2c973187b443186aaf36f7842f8cc2e7bd2fbeac97991651c02f31bde95f892066516a80be68da3c221d82132ef62f2153f65d78e1f3363508ae045261fa78bd4e29b8e1a0156dd018e2a43f5f8cba82cf68ba3077f4def09bffd717d23b4c0915d3505accd1d243c6ca97e8b044bc47541e6a21f896e523143bbb50d9940a8cf65720fbb5b1a580794eb3faf74b8185a08905dc1a21dc93876e95aa8d2514835e2fe0bfc1d5859f98f013bd59797be0839444f4a38d44d161209b2143d9b9d8260bbaa41043491853e1760e89aa5472a1c1c0e09956bae189091b0dee2f53ca65a0da3eb4f2e116ae9274e93abb6a870b31c6f62c141c462d80320c89cc334435b3771909747470d9f90a1968b31bc15b7e08101fbdf8730ccbe00b9c0c887fbbf51bb68a3e26999e96fcb1d3b182bbac17f3c292965203243a782d49b0bdec95121d1face119032be51f93269a82ea44216bcf32b3d5e5d3bfdba7f4a4fd69f2f75d558234f11c0dc8eadb85e86e9b84854fa0b52b640659ece99870fcdbd0c5b773390d300dfdf8d41dba3ed93d381ef4bf8cbda4cf51b043bffb81a75d67292707064ee56ba25872087e72e484e26d5c489b5ef9a9e15a3ee4b250303ab20c983e8e4d2001b8b0ba1ca2a1448878e715982a069320066b3ed17fe6e12956b7685d812e90713c4199c197f7c0e6e421269345e168146624babe2b29b007302073ef46793724caefec8a869430f4c309db358b2ed9d68462d4bb71904325641fb579d349a97df5acb15e8efc1ff6210ddeabccd1db4371aa83f344f869ff7c3565468bd646156f3e8be6b1d312f36a7c050ee3f06b51634613a97b64bda733b6d275e79e9f8e4671ac37b90e54e68027649421565b996172f005ed1e6f29a08bf3e61c23a3ff7979135a6a03b86baeb08f33bbd0b7e1d3c5152fd2882a6cec88ee6a220821d002ed38999f7aa149aff79da93e1767ad256a4984dee0721feca54dacf85e021592cdb49a03b63a50ebae9088c83e0af521fdf4f857c0f124d89b1f02b64582b37a0bfc1410007d8480a0a2a7363b32f325dc87f193e3014eb60adbee9752b9075fe57caf68e7f490638495687ff28e5ad5e18f16ea35ed631904cba5880584458eb0b9816a7e33cf1a3adffc1286a294f0daee4d6fc637938e4c65f3eabb8d2a270b22d1fa12d49e91af9915ef08a96af1c6de5a74b8303e621625a9827d3336653e68c50aec447025daac311ef7dd41f54f1230a400d29954ef19df7d1301e97c3c589f3a1c71c4c53b5c18f5c0d0a9127051d2bd00eda76adf676b1bbeb95f84fad3183663ba944662941ec5412c7e0283b53a4f8617da8e2746cdd0f3b90127b56263eaa743efba68fb5ea8240d50c3b6798fc02ef51f38046fe3ad18a066b3d56c2ef5604726a1edc2d97d673d97d289097124c0adf69e07cbbfb1bfe42503d2a837841ae5bc08e28a5a7f31e952467515681cc5fb93ed067cb10f6d436017b0d88c0cafbc71f67df5c25795d7c68409c731f9c3eeb481bcd46abcceab04c39c3411f1516080d641550054c511be80bcca13f69be0d053210363c466265ece5ceddc901bc05edba5c8290bca32dfd021376f5b2d2a0ed0145048e20f0a783b1c43c85c0cccf1517ecc8a6c828f9f211828a4cb7ce3b1e2bca39bad230944d9d8b62cc90dcc3b9dce41ede666e6b5013b4b5766305ec476a982366403131b65b0d751c32a658dcc2d51a676f89c68f20cdabc4b738060545d6117098f3e34cb95aa31498630d1cd7c0f8bef40b78b709522c403e57f21b68c141ef33b27dba142196aa6204aa26854b513a2f7953f653b259e187e72147399d25b0ad42f5e630acdfa7ecca6f7aee4d0d7b4d1052bd07d74f639ff34ff9e59a6464a5c26e12d2fd4bb0af7cbd1911d48655b2b9830056179242cb72487222f798178f925301f5960a54f5ab0267079847b14533d2e722319885b38ddff26d60feaf658f04317eec00c51fbe5ef64d2d8129d6c8dea23e6d47a52607be5a82b17ee968ca9846f6e14d150dd6c406509fb8812b22b2c42ed0cae9b5d907430296e50d7960d217162b813c253dc829d50226580220be207057c8bf6d15047bb28548fe74065715db967aaf31fc36e9481f9ae2515073d25e4e2175be2480c2a0832fa9f7938cd3092a4fa1055b81076e264db9b2360c8b1831c331ba65b5ee7fb0fef2b31c0be3080105f05d9aa33ab59304791eb4c66058992a9d9152fcb3db200208a16b336d959421d9a0f3e7fc0c372a36e7a8d8020207307c5619ee45e16638645366a48af3855bf4d75046dff73db13f778e3d4e6d3f0f93a70acf93312a9fe8522edaa971f639484e435d8324978f5624e15ac9558c10fe9509e78f8875f94a3d7b7f45d3c205a262e033d50c8402f67146f0fa5b93995a2ffbbeb0c5cedaf16eb54bf57db5691b09b9c4e05b802cb40997763a17c0ac0b487d66cd3183ab46c5901b38a88b4fae09dbce4c428426b5c41367304313bf3014778ae2c390a60b005dbddc92b3a813447cf7f325f2ff6fac30e4ca2490240509beb62edfe1947012ad3106d964b1f2e8b415a7d192a19165a8ac5905a9055e9236d1c8c12cd9ed79095071c252b257dc5245b5029d1bbfa4962bd22c8a49c647c3d8702409ba24e4efc9c53bba13655772036abab95e8a55f5209e6f4721f398af707622a5ae698eaeb246a31f7364d93c59c6e790ea14b3587f9b58bc98ee1be17f04a9fb4e59de111755eabf4576674e909821bfc715da62cd9825c6dff0157fa5c70f02030b86912339dcfbbf2b26b68bc896291ec678d62f66216820cf3992fcd9e44a176c19007aeab153142838a18f5d5e932d956bedf2ac34dc23d58990b03c40fc986f8d8013aeb89837a885aec083be8f144b30d480773e893db13aadbfd09e2fc0c6af32094a7652d916757b1bcaef3225200da1e17e59596a0ac5e6bedcb40f446392c1863770f65fe6f9fd80ccb90b5e6fbb22d8851276be674333b407a53e6a5343090bdcd464dd76dfc5b475d050e1c2a51072be0252a6ee444b6091d4046163e7def29178cdafb5f66e16b7862ec7c1a6e81a433d71728aa446c913939fff2b95ddef55272cb040511316363da8ee89de23d60e6b2b69182bbc915aee068e1854f97cb07d39cb0645129f8f7e2ba7ca71fec0385dca9cac7d901e541b939d3f42f56efa0a500eee5d2c2609bffeceedde65d81c169b85a7658dc17a209856e36aaf8fa6f6a19987bbd3fcbe9c43f78a589cc5a423706549cbf8afd80d7e1a56a9f45b7540b1e45228e1297d6670982297f2200d37a971776e075d2b1f25f61787821a6d91d55ed97aa9da0fad61661dd14fa3ea2521523284671db9a92e27429830c190ddc878212481cc8d1f0bc4d27c1eb418324b696ec9c9d352b47454ac7970b2aa607e2b40253554d49ae49e427d5f26ae479b1ffb82e20ed4f4a17fa8a6c38ee1f137990e47dc0ec0563366d8ac0c2c4715b31cf97ceabfba5aa2ca030a976ae13e78e504abc02bcf0598f6a6c7b616d607bbc1e728546ecc2429e8bd4f67eb197946e357962b642f27d3c7d3a7b159f709d7aa71fc8d07b93daf86fbac5119a5477741840086b14918a95bf7127c6f2b26250e06a2ff0d0d0b93a098eb6fe324ec730ad8adf179eaa38dd9f9700cca062c5dff1175eb0cb07697d167a423fca9daa33df8a56d22ac1ec5110b52519c7b15e67b9f9adfe32eee7c7a5899a6edc9077f5cbee261c41d38a31111d04196040de528a8aeb878f56677ea65f6a46e2884dce38654262a5ceecdec5a7220e5ce24eb5c67c06f0b13329fe3494895b2c5acb9ae63eef2c0d37fb9f7afe097ef22603cdb85112d67f6b17909a7c27affcb77c6789f551187e497ccf1c3d948f42c19c1182da0cad968a7255a50790cf88d0201238fc67ba2bcfb6706e5a379634671728607c35bc7a60d3116234a8137c7a12156a660d82eab680156758b8f8cc4618639c54811d9e8aa2536fe33f95975b60d4ead0610595af0efb74d1008b3956c4d1586de00365997325a3c5291500cb36a6765bc601e2500a2074952faa9d151c17f5ee859b1b6c6c8889f8abacf9715d1b0f4990142f2c1f9eb9aaea93f870b2f3ca7648c010c8b12c2ce2f6b6b8ab27ce4631cfef7274ca820089289668746da31b0c8debbf2073d3e22aabfbb8028d392545d3c49d8c7914717472993740f9e20a84a6829ed451663061c0d0a9b8087393446688b989c7162b501d8fa4b1559d2d8a8bf1bdfa1e08d4c44bde7a1669014f38b36811aa44aea1ed2b01ad52811e7c3b3f36a3ff9a8e33dfaf665f861e9f2a7ce8864f378a6b09315d668a619faf9cd074b9728d10c1e50c5b346a036b427f8c240f1507c98ba0d137d95bd6a329f41cb8ac73bf8aa92aa922cac94b9670f0e5df98cc62d9e20724cc341052c8e893830aaca397a54e5ef97a5f985c804e39c1dd44cfaa3ed720e2d6b49535d3477452687357d6c1db07984ca3c8eb194c58f12986c11cb0a8fd8da22526e3ebbccfeedb9e65ceb3ebedb43dc5fa42769acc4269b304d5c7b83971d4302ef1eebbc9959daf964fa373ce35acd8f03e76ffb880284eb8ca78e27a5e5e7415f1922d05d61286832488fa13bd6208becf9dffa32557cc7bca94b6d94bb77e2b041aff046a4a735cdeca1a586b89611b98644db60e56ac3023f044ea4bfcb55bc38b590fd1a8a178c8a352d6dd5aa2d0e15d82bd8e681acaa95cc3f04250f19a62e41dcbd360e9d49105f928074bc149f497964dae1065bb9ec67ea009ac548c01470c001090cb8db5516c18f8f74d2472698dd4d42e4666349175834a403e66a70317588231150adbfd19d622523fe419f2799e44506567d6c9b2de80ae8413f5167a15861339620f63b989fef32be6f5933471f4def9404fa20687b2c73288c018d486f6621dca256518fda4340e813715c2329ce8f4df3bac2de30e17d6aac49a6ba2e3b83a35d33a0f909cb173645e51124e051029fd8f344d738167dc4f86374d231aac820db95155b92192bb9816c05f7894c40d05981d3181b4ad59c4b5463b9168e5bd8ec0e2c324eb52fc8708c619715617d0eaa3473adfe03c83d563fdb6aae9e41e880b41cee94996217e0d0b04bf92d963fffe2e2b1dcd9f923e604b1239924485f826f634fb50d8d79a58c28d6088d50e85d2d9958ca4061e6330ff47b23b2951f88b38f259c9b6517760925048e99f0a7430126ec8551152d020b44c1750b8c5795f7b911a0f5e954cdd6574397ec321f77a6d2f5b2e7ef54d32cb380f2843713f403f578f7fb6e439f0507e6bac7ece4bc8fdb72568c6d4e232fb9743310c5b0c08f05dc74ddf48f1730d674561089b8e78a350414a7f8a4bc58403b6b536ef227196ffbbe75bb1c16f2c8ebdfb9c77693410a6b94766ef52956ef142744b5340698beec1607d898b81fec17ac4e263ab0e4933a44b8d91a555b92eba3b47825f4105cc17b3ec3bf4689b78a079312afebca9fd09834471ee0254c83a4636d5b4273107c3549511674d248db32ca3d335fe96b4a1c78536c5a5ed03dbbf2a028d01978493fda1bf6c71c04ea2dee4f8014603283ce4759bfeb39214f17130e9653f870b744250b073e1e3df274d0d59c17049f3af1dc911e774fac8ae9d54095b1ab6cf4ed7c8478bc0c7891cb148beaad32057249c89090286e959941a910d3caa933d9f35790fa325240fad403807219222c000efa57926d6811d5e0cc40b68eb304e03a0d886fbb699e733f040f7d83b5a5294b1e97ca6a4b49e54ce3d991b427a99c85cf5d6f3ee9f56ff7c60c35898481576513c39ab610cedfe2b8988d49ea4bb48b8aca19b7b7baf6d151f84049a03c45e8d6c2bb7e5d0e098eda4ea3e4765758e11ec3d2fb97fc2e572efd66a0e1df6b2972a0460b2f37300b7b9c8c9d55b085477a5ca8fbd51312d69e4b7f6fe9a0a78f4b15eaff2254a317a3e33cf85dca50b7a80cff0af2fa48425795849adadda3b19222c2e8711d85350aeb3ce277138a179153b5ffe6c31d621bc7587b82f036b3379a6dcf1b128712ac0cae7596b2b8c20f53bf3536b47ee8703e62c961da83408a96927d6a28443e078ba298cf5876cb1d35c928fd0ddb2b3c0f3ef5a13c4582f834ec9406ac8cd8d2f769303dbcca7da73776c12d40e1446ff518388213d4055c45b74f72e0b856a29155f07deb44a92fcb74594d117219b6e4131d23f9d0448d2054411084420728d4d698b0610f82dd4e15d87fe6b8e35acfe9ff4354d99e9e17ca835ab42ef0bcb35a5021f0d024cdb6f9184558cb961ef7a395a4a861c547a15dd4006e44b42bea315fceb43ebd5c110dd5494ff9234e98e84056c60e2e978c988442d41320e55e4493fbf8399b7f295a316e548b8e9a7e71057d587ad376af46fe53fd690cfb5839f5f220aa87d794664d95a325dce5488bb9d9163bdf60a069d93698f874eb5f2c96cf49336ae91754d82454b6daca045d854f06926bba4b9b6938770bdd091e69d6be0ad14ef72a84256bebca246e525d9d0c20983429b3025c323885d8936cafdf8cca110d6c9e8f2861d7cb35aac3c6c55eb2149996d5ae6a705a9d82a8bd710b471e5da7538025433948d5dad49d8c2b55540a435ebf832a07118e39657ce15ada7995dffd3760b4ef5f195bcb5d53027669531f021c2fc74eed2b16022508feb7a7ed749275a2cd4ff2e7fe0ae124b2bf674aba501e6da1566b2b8f57f632b48a4205abcfcc39e81dd5e47cba5243f1e25c90256634f83a2baa073ee1c80eb2bf8380d89cd39c561e0f64f79919ba5062f0c0462ebcff913139ee08e06862a4335af87e5df3349369bf938e38225471878e0ff30949aa5369103dd6817127661abb2c9534915fd0d4f698cb5b07265d59f7f12d60bbfea573af13d2e31670ab354136c7ea5909fb9cb641c02234ab6fe784f5e0176b45a06051275701ba41bb7ce0eab630ea4c412906396d8c26fb1417299fe16cbfe801485e262cee3332cf3864d7d20fe4f1195d26cc814f5d3bae8cdb1f0714c42a5753e8ad419f4481f49d3669f0998b741a654fedaa7a0cebba814cd43e2e09cf3d645d678de252b588ce4ddd5dc3ee5d13dd6074248b815680cc8b2eca12549f75041db7934d7ea038ac97e0f01fa999ed03b1df87afb4a51d00f5a9dda83bf1736f60881575d4f3fd21e565366e032ef4caf6455556cde62f1f240c8753c0ccba26c316525bbedd9f4afcc34c49d91cda207263a8c9ba7b486210caf05376a7c5728ecc212a40451dddf645a7e6c796cddcaf23d741b8c37b8b340671eeceb1063b680e39f8ff05750036e3163226a41925b2697fc6d6faf85e1172206cc0519230838a683ff5992675c79dd82cb50b223195cb97aed5edf78ce48647db5dcbbc72f8628e00eafe0680063bf574de12fbc505f86397251eb4ad14d6beb4b9b819561cde9cc05b7a84d34cbe673274604c78f85fe593b6cb9f8c33b4612ab419e764c39bbcfe9b54059d5200b55682793d3cfbf62ebff87b820949a78be7e5108a54f4c61288e32886f3fc52e270505bcfb338455df2fa2e87f869c3c856bb6e7e187ac22c93571b5817f6a06f1d3e6d06ffadd8b756cc7aed28c8f1b819d9c8be337fd613e64ad2e49eccdb10a3762875b27e6bf150649a08b180a60c15088ac661e6e2e2938fc02bdd32a48e9e61de539afd09eaf4971566cdc94e275876611f38414f0b731266238c807bfe98f4f9d1153e0cb95cad9e0604f12cc1e740bad371d0af68f3356823184874e7651610af894d21dc2a78daa87176d650c1dc0f946754bf9c11b421967fa55c309859ea4c8f52c7ef3551795a8b0c6450cf8c7b8948cc161318fd5f820ef6720730b7b28f9954d0d55187c88683ef6fbd9262748870d09a78cc86fdcd590473159723ca5887f50170af5115307310f885136f8bc5303742768a36bb9d0ccf52172c90de5db66ac4bf9ed8a5e5e048202daf8401173b74a602254c58ad13613ddc0c3435d6d7949443eb459740211b60e64442f21c6c902545a80f7963e1703cf3433a993c18d9190cdb8b7243923917c97010867209d139312ea045d09b171bd0abfaf575e109da88c5e020fcf785afbbc2ad3a7b3fab13511dad5b36ffaa47f01569a49e30096d201767b163fb0662b6a94de1663c34c1edb96618fe43abdc373bfdd465d8269fb7c40fd6824b35df7e733ff77e6c079fb71973404801250c2a7b596389173eb989cd083ff2a452578e93c2299842ccb9d78d21e4bffc6dfd486c51cffdbfc8a7a29a46eae08d35779234736bf06a26f11b7ac885e0c9c74187c4387541456658e6e661ddff38890df8af92148e182c8f8a11f52290d2c3157ce42574b3c8740744ce9a27132d8ee425e1a08a9c09f3eff17ccc6b083dd419824118cead67369fe774bb0605594d62cc03d77163668971ae995456a3f30b56ea186cdd012b06c733afe3700d72d57c5e1a0c5db12c100d1adafd881731eaf3dc31855fb60ff9ca511407ca881f76aa76d6702110041583934970bf4f46591d13a4c8c7878c286b9acc550d91058dd5376f39515e720ea2da5eb565948a1f9e2b64fd9ed206df1bdf1c0ed0579e7ce4b640d8c86c1e41086560527093eed54206eb1d839c5b5985eea79ccc548fbfe2398a7421750d166fb6b66cb4033d697d3fd2957a12ade90e59a2c4cdfe2dc61672c3a6e93e5dff2697ecbe82dd608d7f4018fe3b16b57c23e6a87eca4941f648ce101476571a12ba41473ce5e17f8fe870a4f6c265987c7f923d5591becaa6664a58e24e612c3cfa12e799c958ada7e44b399d572d568b25ea6fe8ef01889119295dae3d926126e5a42bb327acfe808ad9c30c02ca0814bffda925c086b81e336ce746339f222f6e4136a6168d4ef03de16e29d9253e2de7eb317ccd78a2eee44281b08763528f4832cf077ba159a7dfa0262057edf29fc26b4cc3e74174b9baca20550f696869a8702349c50025124cbd2e29b14c0203f0419680a80f3ac048156dc803b84f9cd496245c9350c3b1d50a5e71c5749522ab82dc623e1c403acc3b7901acb44c674a9885afef7bc07db9715073bab8a94c1ba69809bb04037e592107ff166c70c57773325f8f00aa6b3b35856a8fda4b6d37c2a5917219da4e4935f1ebbabc112f709f187b3507b922bec5e5ca150e0e7c81c078203d4208580af32d5fa0d04db85c59f0cfc9a7ebaf80ccc5fad3ccc34f3e191894b76c7177834c4a30df866b6b6a7f60b79a37d42218895cc724f6bf7a148356e453981a4764cb7c5e26513ef58230a2e6c3cf2c1362d227421b89cb3b3616c6446969acfa0e7132d1811543ae2a09a2d3764d14689b8b0ca58b065133cd70f1c6b35f76339105cdc28e5330450d16f16c19189006baf4beac9a897babc6dd8a2e6f7b89165d4321c4157f33e3b723b66985611e931d317867bb70c775bcd35a0814fad3cde8c2661c022c1b98cf5bade52b6a15b2e3eb8a7ce4a77966e72f6731fb7e98dcff46211954ba3d5f92029b10d5b0b491f31fcdc3b4af384ef5413197535fa4bebdc78f99bca11eee1d4f3546375dc180df987d709ecc6548f760c38edb9fe86ba9ed79c8b2681a8885b11371237deb636a23449ad0590238bc57379e6c8f827d11b2b1a4cd08324ddb3b9bb8768f572ec5a6bf07af6c662f8cd1c228046882db0ffe7cfd5c2f693008a4fc81e35ff5b3b92836549dd9d8d8636a50dc86b7646323ee83ef10c43ca4df1d115826fc563229e12e3ea9e18a04eeda40bdecb49fa3cafd924b8b6d0dbed7a9d1f20676fc4a231be1d88a07317b86d5672355783058abeac823015e73d4e2680fec5a8762fda232fd1f8847e43f4a36bb8f8d7f471701297e55ba47349b95db036ce738602766a41849874b91216fb2a0362eb1cdaf3c0daa4f355922cb9e22055ca0e198fe593b41c234d5bd5f50eb805bb0868413a0549d830f1d5f2a7bd583273ae2f5b5d99e289f0b3c23fd2502457a75cfbd65ed0ca23220ec07defdf2be4f4a7e8e347ac503936a718be8b90ba8dfe8351663295976e7d765615269498c0fb1b24a1da0e0b10a60357b66629b7c1138fceffba8a8727aebea230b8cb7954894781a2d642f587464bcd7134b4b216fe27346135cda8364130810c3301e006ed395300d3773d4079d49f45612195843812fd7b327bb678402610dc8095ae10ea58557c14e9e15590ec82260f2ade25322aa50feb6c0324f3d0348606d8af4d692e5f98becaf577347c4e6a91b30486aa4452ef173d69f149b396b1f68ab35be013c73a11816f0865575f1a17f13cc9f4f6be4cd64180f9c563a57bbbeafb892cdc2711ca2a0106c8288fdbfdce1fc7bbd96ee1f451ab74a91dd5d9fffcc127a8f9bc175adb48cec3ce1566736b849e0ce8143497743125598a4684db27376ec1a49da9b4bc41b66677c1b78185cfb1d31ac9ea73df4c290629f3f96d76a58ec92cb6ab984f42e96db80ac80b39f2975eea535127f83094cfcf75d9bbc631df84a7c4ab9f7490e2d11ef2d194c073f387c77d0258e2945e714394eba2e55846ebe52de679d6a8d83b7e290c2f1f1a63e4bd50f2ad6b6f530929e47f98ede7d53e9ead30c183f9663b3db1cd8f5c85e66f7ecdf32227cda8576ca51f2a1ab825c5ae5f58f9b3d312a2710847d8d3ee52afd8021c18e232509ea070fba24a14827534a2f8cb1302f5e19e76336d24340070a82b88c815b94531e075001ff1507f1cb06c2efe0431bbb5c4e609caea671b656c95e31a6b38de66f726beeefe6984b6ef22d8a7506d772533e0cda6c53910994cf5b323304b99ce9a1204893a12e378ca9297742d9b85ca389c452e5cc885780012b7fade78469983359a38436a3ece8da7179e44699c1e09038866843b7b60e9a62f18f4762c4ec3e553a4db5fc268f82967942470f70088c5cd8b8f1e4c47a31c93e687e0b8ef80d37dddf010ac9f447f1541df18c4800cee9072b929cea723edbce3c5926bfb08c72aa43fb86890a37c085ec65c93e19ac317d69cfef82b0058add65df642b31836a270be8198333b2e82b31b46d5413a760328a7c991c96f7a04e5f4d3599cd93682c43d4b7a1dbb86e5715cda112014422e228283d030bc00930661d0b37ed656dd5e3be72f668a743e6f1ccdf9ffddd3051d6b258bd421c42c36100d2ac2da00c063c15be453fbe71a4bfcfb0e19f1f9e0f52348c9c1dd3463b4a5035e981695d1d8a792f4172a5462480a3ecba3089a6a339816a743e53b9b02177208f5fd747cc115d3d2729c0f2f3480ddf41059991c5eab0c7e3f1061aac37c66c1c460a15d70c862b01a6dfe56831d7cacd5893ce9a8f56098399b3fff4ecba4030621f18a5fde6ff6b6f6598b152f4cb2d07ac9341e9def7a0c1ba2516f7fb217b0d004d42a62e83a0280c1b3978b99c0a2c741c8839de7466b696925c7c55f719fb226c9ab56507ff0f718626f60d105816d6cdbdf7d46c16f5fcef97df7bcccda737492ccfe6683294d5f3706cb0270c76b39cc6e716e80b6303f716ecd111f161234db1ee125309dcc38fe33db9c5c3f7cffb279f99ef6d3007cfd7e6861c927a304307f4a3433ddf16584230bcac5a64a7b21199611b2a3861844f1b87c221239417bf0e9b5b6b66f4dcd87410ddf0da07f985a757679987e123e148384259d39e206c1394fbb722fb1655077dac33b9c350bcd4432b9bde265239cac1991e144745a9d33f0d636d35aa869ae9c7ad39ddddfb1aed7e1de184a28d80867999351354e31e60dc3899ec5e24d8a5fe30b4b0a3809d4073a0704787e4294460bfa949654a636a78f2ea3ccdcd63e36290b7e4afebfc01494f0eaef594438ae33850ea244fd163fd601c97f6138466cda993891cfc90cdcfb7ccfed86219d9bc35e5585ace1dc20ae446060429d6926ddcbf1d8257f4be7042cb72190f9abcf71bf8b102b7297ba8a2f10342976e582fdcf7e50f6951a74511ca119e8781102310952200331fb74bede74210413727db06f942982f1177e8e617c017587ac6df3a0256274a84820a5a069e04ff09606475475b02632c5fe49305df1daabe9930cfcc9932ae2a6c70565583f43767acde235ec3de41b3a32ba12977977a8d11062d0499619f6005ed33c9c58dd7456a61c51c044371e69bc3c2d5b9b823251f9684bb995863287e27654d2a3c1fd4a46aeab26343942534c447a04b5978456b9ca1ceea54e6ef23548adb346fd73db97b90376e4980a459a70ce64e0bf5d8016a3f17ff06b8c4eecf5a6c510afd1abf4ad46feb79010b7d89253562233fc7c89d5ce283470decf3572637e867f8c72f4cf77eb578be6f9ca342975c1b4b69e37d32f48f3ed9bae363f87dddd3cf203713f2d577b5e257301cd067ed4810457d05089e8166686b4e03a1b3402651eb950a4f8f94bb05c79bccf70244378450dae64c42126894a20928ef7f0120d0106ace349250d1badf6f8c01ba10f1be26df7a153fa4340e8e62553ce5d777e938348e8f2825d4b7225c64d0efe3a1d947002d95acfb045bc4dba4df91f35e2a1a17211b2cb0a525a08e4ffe7da06c6611f92c75e7932f12fd229125f53826cedbab30326a60d1c47d80123efddf7dbed2a757d2a0dc084f1b58d54ad5624aac7d8f6db7739a4a77599bec91974f5d97289486c00bc050c2c302ffacf5737eb8e4a64a3bdb54647cd20a278bf262c89a02acde6078bb6d4ce91ae1924e4b276048e79a8c81b82a343512405c4caf04f64427bcde7b2957bc37d96a9797eeb72fe6ede46a0f6495cb6a48bcf8669f4ff76178ecf364be2be80a598d3c901817e657430d8871f72e6e4bbce6081189e9c81bf7f3772bdc3c84738e6118d8d9167a24a9b86087bd13f02ace454eea8a4dc360947d41b9705efa389f482d54cb2735257227a3c617bd356850d6985b2bf8d2de32817919624404d084e109b57c309dfcf476bf9ddef06bf27dab4072226f1ace1b559816a64fa3e2c0ee7ff68095196ae5f5c406220ac61ba989b2eb62d24fcba922cb7d5962f3288c86ad183a1aa86441bffe4fe005cdb8dcae373faccb4f01e1c437279b5e54e7c72e8c70463cc3f0cb649cf2de9d5a67e38932c3fef4abc7e9f5d09e10705ba4a933af837a1ff65d29c693ec928bf448f46dd0b1838fba3ac9124175d36409373667731e96ea60a0290746935bf0ba44926b156a1e01533f14116764993e54d08bfce31882e9d2e7149f045acd14f9735d8466ff945e0c9942cc121d5a4f65bfe5a790ff7b2991e78bbbd200c11aec42e86177a415436a9d8f3dca4c151c3f69323bd9533fe2ffdec2303978bbb507a7731e5d1b6368bc9d277b7e132e49749fecb3107ed65a2ec74572528cba4c2e8d253929fdfd3d08296e254b2a3a27c4d8d1f2ceae586b2f22424efc663428a104a4aea521f447f1320fb09bfd403920a9ac6f30ddba9668380ee59c6e2527a059446dc46b8336d9d3a9ba510f611982dc17bbd68ed1024eb118270bfe8cd8bf0ae29c23181a7348e3875bb9ebda662842bf9fa0f650415c26a1ff3af5d1e059c65300bc18b73a063faa70759f504041b1db411b4af60eb5d02b7c01743d0716542d28c5208f9fda57046adc20c6673516e6d123964b7dfa03c8bc3b6621584d28b3454cea0f4d4797859940f18356f912070ec5fc4fa5c65218d5b641b44816fced240273d8ce18ea6f70ba659535c0f1a178e5a04a611e166e9f871dcd4ba95295eb749bd7b20659ac80fd52381ddb69533a84ba68265d6d91bfc60b1b993c5c2da429b4c8beaf650cd1da64d021c79bb84823b791a65f6ff047880072aabc2d81159c350dd0f1a3c95de9dbfe10640d938ddcd8298e340faed8bf40fe154bcb6b2c26762271399c040ce7c4d5588acc7be8c9b6512d324857c0288d99fd267db08f5355a6ba8ab362d20ebc4e40e01b7a576c37f322f7b4b2697ad963dc17aa235aa53834f825389edfd6378d0f4fe7e8a37c27dc1f4e162f1fae638387ef64bfe6653a44460c76413e6f47dd3df90c0c086228b581e8ef1ef5a55871451ca4e164afcc102b2b82b624b2fbc43c30b7ed12ae57a88911db643424b57ac578fdea7299b0f19f1e433734fd281e6485dce4d1544dadd3f62b5266dd3f3d48df18d53cbe9ccf06bcf2dd3f9537dc3a7ce37c007cacfab839e0ec95c864efbea0acf87336b70b441b13da00b3dcb857fdaf52dd45857e785403f628739b22a38ef2f81f8c2d70e0109ebce212e3e55200fc401eaa9e980640bd1794e776a8340e70c8df778bb41545735fe7d21a7a40ca5929aa34bfaa67561482a781168f34a9fe91be29540010d89d23af6d2dd61741f5caa12074a959ad48a55042719f6f8476822b0db7e5d0cdbfdcfee97d0a73038db27d30df29c47dd30f99d4b0ea756d5d6d99c4d26b800fa3d9d6e5de561466e40c1c787a4c6b23923c85c7cd3ad9f2af255c71e03434ddff9d0a7a8900568524710694a9aa9482ee51326f83053a5aa24848aeb10ead9a069e0f0b884a68a48a32f22e65a4ee9455f56bc5d630f89a92da6f33f1bbaf84dc0f7c471dd152c6ec0e4b3d88362557d03c0b16ae12adf4a06abecdedf16ff2f4e4963e01c6595c293e196f0b42c83686ba98775ce391ee0f516506be504e59ce9bb85690cf0703b0f5e996d38c1dfc77e5659d508042444fa27b72146fafb7d4e35d3936f56cfbfa78a3edd038865bdb3464fcc0af6c4ee2d02d1896215dfe9bfaa044f35a150deb2688c660e608bad9a2b380f408ab6363866b7480bd6fb830d7446bf39b67bd01821ccde759f56f13dcec04f0dad087f30675efc9e005719bcf04a73ee92c2cb61762f50da18df748118e403fb58cc243d891ad79bc306ce2b7159b185821482f4527236ef20a2a2f1835a4d52659862657a5ffd03b9eea809bd81dfa9a03f49f7eba72b3ce9cb4b360f5cf31b12c9e0632f57d0c34cfeb45ad3e862e4415b0952e6c4f200d02bb307ba514b78bc5e1956373825f0f2207b0a0cc3a73c63d087ce128710a6b1df519b64c8dc854d94aa31d3041c193252060d85791a2b229b721837d00ee11036bff0741f6f397adca4cc408a6ec34b34f47655d274fb7444f12af0f418726adf3a376f5ca8ac2a31628d38ec64931178d6cc6fa702919004e0c3d38c98782e033834197ab27940576b29e1a01e525b2487fce0a0d338c0ada21d95bd8ac7339fb9ec2653f78e8cf867d533002e038ea783f81b0ff17893d803b08e881b710bec7a4d01e4d2ea9553a41235360986731cbdc98bdbdb15d46f2d98beed68819a6f19f8a7140ce25517e8c24675a9e2b845a96350214173d4a075806700114c9db1ef3186553107bc1c109e4682eb4ec6e6393b22bc7c67c33d3435be651156ae7bbe8bcfe3c2b0d1b3cebb7dce19b196e74aac04ecc434014a68c61281e461b16ba268199bd865be88a5184ee0c6d80a2bfa7468992cdb34dfb45a807927b85acfba482e0640ea133d094fb143d38be7505df77c460370058b0d1890b6f7595b2f68cb4b786587baac6710d1adc4d08a54f585cbefb6036037f003f69b1a3590da4ea6435914a51c4147d4d00e7f8f7f5e43c3dbb31fee3001f55a37e07b26ec9b2521d99e4c56f0dc778c285b3554b53015822bfb63eaf642ce6a3515341895ca42ccf207034529cf936e484569d8677d3a86577d49582624475a4daf7a25c82d65c600f8c432a01932b377dbedf2c25bd22d7d4c4190366c175d09cc743bb8c7fe6b6d5598cd4d1a5fac4c365704c5396e5304e3afd6a182aff3bd1e6b8516d962add75a80ad309baab5f468257620a64b7f49e5cc58b39fea2eb4df510ebb80705527a62840cbe4c377bd038b9b1a2567c720f41cdcc4ae16d07de6b0bf5ead15007b5ff3047999f8ba6a63c064dae3c3d3408d0f38d1886c0da357e64a0902a106aa389a9b152bd53c2c1c61c5cd0b3902e22fcac7531993b5285c6bd5b47e31e4fa701d3312ad9aac188f081da787ec4e2f0b31fe50b3a89136f15e327b8977995bc8ebe5b570042830a64c36f89172a6eb61aaba010d4f899f7ec570d9adc82bbe104049ce55eddd620695680d9915cf964da2a5e640814acbbc0fa9d49a98e75fa9738e8f295da1305ea65a8fc51795b7368fea16ed8a6189fe928593f99485013404730b279180e2e1b19912eb047fa6badd24c303a65293dd2f2c900a193d3c1ec3a866e9b7b1eb433bc55936b75a365b9fc7421f86f6f1147540042e9b325996fd82427c19946227d44e3dab25f3e40c48da611e967b38e16d7c4f15ec8a767b68e4aa6b4a46cd40265fcc473b24480cd653e5b50e1b5de3ba11908cf35d16ff21c06d1b03237412c0e26f18a079d657366a70d3e2da3359c8aceb4ef34332667a7ed12c0120ac2f9594ebd05b92d49e3f74934b8c86d2ef83b69d02e3daef2716220ff06871564c2b6a3aad9011efd4f718e4fef9bb7a168038800e0b2a83eb97a13223012e3bf169614110b271183ec327e101d3b075b2a990cad64a03116f76d9ad315f755133d33a1f573375eb95c9c2508ea2fbe91669b32ce444b0e75e5cc503b66a139be2aabfdfd898564f8c41a8b2eaa43c7dfe628058fd3af7b1b96ebdd0351a657909bc81576f74fd2786dd2f0113cf6f357e1810bcd320e955fc5cd86937fcd8bf9129f3a95961fd5b6058c064bf694ba20e77160cee91257edb8d418fd62230781dc87f044e8240da32b53ed6c3445b467ecc3864c26431009b97c258dedd8a29a980db85332645e9733e5453a44e3aacac379c44c91ff6a449d244010959a5cae6c66aec19bcd3fc7b6357f0309eb69f0f14c4e6ac10959057d7ba77134cc1571fb315f148fd15cec8b126b674aa47db1c3eb126a447725de6fc58729b6fdedc14f42f74b4fe3c352faa68a1ac6bc695e9bb122111207d83b084e475a0242d90d0f428f07dd285602abd78037922f184362a07ea243e729b20e3c4ae0b11f003c7a938b1ceff9b80b21b9011482355f1f0664be58e57ab7e0d3a8bc63fd77a16c1f85a67fa35f9ac96c86f2113fbbbb448b0b25a4db6f013576d8651a3ee42b3671259797d56d7096e44ca21d0d481c05f0f317ae332b86599fe5ee420be7074a5cfba4bf6b16ab6ff1bc7416041d41c2542caacaa71444d99f1adb66930df6b16eea75c3eb72ed975242d318246558d13707ea7494b39a8dcaa91c0e084761b9b7ff884cd2ced9997b9ba503ad2a8734a1096da8915667fc2e3d5609ff95d572a139e599d204e4828e4269044e3b28e527486b274b64ed32e42f42971426ba490e286b067c5b0df5804cc70e53cf5be6472ece5ff80e5d3d1aa5b6db79d6b40b715c6e10017f20b19a04c66ee9c317d0033b44cce2a9af8bf74b55a838f34f2eaa73020e7251530591d1a5245c7e2c62eeda3cab6073e39da5154e72edd291cf35497882f87f92d0e5bc036c5907abeff0e34930acd9876e80e53dc3b16486aa08df4020682c8490800f136b6c5d967a0950122ac65fc338ec3ac24a975283b7318511eabce2e2393ea74d49cf4bb530954d8533b9f68bc41ed0cd64ed99df44a42d879dcfb7ac3a81348d629e9ca07819730085d99242bec0aaea7397eeadff7b884bcb2d8d4046075f773e48d98010382dcc3b5c13f164a1082f7e428721740a538b736a93bc631cda6f5a7bea781bd12df123d4d0f810437453676ef98ec563ffc7eb5f97b82c21b03572b215ad022d15c1b45a53f8ce22058af3dd569405376a64ed8f945496f9fe1a73e3cc4ce34df7a4c5f70c91fc29ea42b10f20e649dd432ef7d0e89057547cbe3441a87ad96b08cd4731a06aaa83d29fb2f799967ac49fd3f955e27e277b6d7727e23c9b2f89f357790cd975541e225c6ca0a7473c8561145670a12772db98c56b0adf507ccd817215e42578ca6cfa48dd5e204ca947146a56faaeb4a4d55aa45fac72a0ddb5a8317f17b50e4ede35ac78c44cc5d3087dc66665e5c4e6e396f5223b07378d94aef35dcf101b35beed7b178cc1489144b2037a7b2d58b092d94826027d96f4b3a15af3d60afb5d748152b2266fa14a9db2b819e5761942ab68ee23bbf99b4a2bd12c35912a4a7423f3537008043b26952fedf44e79113cede9154f56c15de3ada730a527c196ec83cd46c7464282104f5df00bfaff39cbf4e9b612f330bdf3384b44602515f6854d64bc59060a21682b692bdfdbd665e57a05cd730f994f82a9bf4ffbf1a8f2fc0b560257b43bb8d6d932f5654b8554b3b171756dd922b193f0689456ba48d941cfb68bddb78a793cba925719b2fbdcd74b53c74cea49b2b48c21271d7cc66257552799418a7c5a1e057774bd53777014f4eb6e3e08e6bcde9c7b717e9e3bb2568989929423a6482af188d67efac598e49d6b1f498c03f7d328e21cc60519cb1ae0f5efc35fa285f081cf3038f2e626c612133e398e2078571908a2268c05b6ba41df97e199cffef90cde1f57ed887b6648fe981d5dffba53c1838ed810a76975392dce8ddec09ff735f87dd21ecdd804608dc054102152eef52d2a2e9adcd77d5c82cdf1d01c4a1478a7b1e3788b31b513b92638967c156de3914bf63cccfae66388e2dce06f5d020fb54b607cf3150fa2ceab32492723c688c1408f3cb0a88876027aef5ddaa358c3a9c5aafde0a54d68055569cf1975ddebfb9d368755a8150138d58b053d10f344f469bbc10dec3c8db13f65280da6d129e1a2c1d01ed95e7dbba67626529c06381197aeec900f26faa8fa018cc29cef2765961bc06ad3e489618c6e96fc57ef99a66348ebe13155d64da32232f54f19087c9877d480fd7e4ebd186b59ef5a2a1e0c4687934c3021bd80c8670882fb3a769dc79a426da3e7ccf08167af91b34ffbfbcdbd3d8c53757959a7440b7a34602a408c466b502db43000acb1ad32671537e47150537860a6e3b04e67c12f3d4bbcbfea1c462dee621cc27f221fd1d183b6117708a23aa3eb1cad54529bcbe1e32f19d5b781a53ac9ba75301c024767f9cd062d8b294fa9ccd79c6a0fa429a796fa2ee0a4a8127cfaf185d26e66deab2c28030a42331571096c49095c5d79927730c399cd863c388925f1b34ce8b3f6b0e6e812ec4bdd6ddfe98f8662577b208fd352a29de5fc987aa15a741d38bc4cf4214a4916f910209c1bfe220332c6522e9986d17e7dbb9b5944b43eb44ac7ad791ff1de16c2a133954776e56e0e79a47baa9966348d201b5fbf5b402ce11fcef71d2132fa8f9607185a378a37d5aacfcbff1f3bb6082a147eed6b1e7086930c7d70ee5da532b4e510f58d433351892b7360151668b4abb8805a700ce9e88566e024b00d1b82da3eff0fc97e665ea34f11f8ee7d248daee122545776b0891e90aed1ca5a25083ecaca2c80863d824bf40876d58313e72e7eed7257a776aca8d222579da7022549c019c116984edeaec3d96b1c6cf26a75c21b77633ff3b2fcfa29f3bf120b9fe0835532582c332b4fe1e2e39fdb5b2167b914b206ced0097404650ee09ff1c985d3fddd0e62626dff68524000a2a12192fb372d4fcdb23ebfde0b061c5c1563ab9decfd61da062cbe1c206bc5194bb941fcf9d749f42d5f5a20f9fcda29dd593584a10df5d52818cac05b26f88fb4db408fc06089ece14a7d075a97a3e7ba5a83dc6ea2caa035a505b58a6016d3b39a46afc23029185fccfcbefb0bb1ef299ff409afed088060d4ef2863784526be2a06eda4a6875fb96f84f7320bb25724ce1a27371ef0843911b3af5fabe64f6e6a5d35674d835447ab6188273bec2c34d7783230892d2b37a57a24fbecdb43b924775daa09759e2d09988067fc1e2a3c8657beb59924ba1f243852252a7a4d31c112503e64dfa217c2001d6a4edb511b6253143999a32471ab37f88122ffa188a3bc8d5b4d8726b0c1bf309ed87a0dd7dab4f6e72ff8013857dd956871168a82a1dd8bc867e97ce92bbca493c3c25b5f5b289f09f0798532fbb843994d565a66a08d770aad5a084b24ff9a3c9e513cf6b3184311170ffd290e1ac2eb8b9a7d393d74e2432124cce10f6a080106897818d6a18de5629f5430b33988b46eaba0910de92aa588332dbf5894d7c725a950cae19e047b06e2e0394ffb3197e8d079f32a938a05727a1adc29bdac9ddc7fe89959c1770b6e31521d705b46e6dcad0f68a34e3416ea9109c2851561adb07464e7b52b3d1bebd69e18f29cadca25860c54fda8cb7e92faf3b80263500b604bc777b778fdec5fcdbc36e9a82548bda2560986d7c1ce9b8923e7e1453e0d17ea9047480cd5a85267f34bee03c9c1dcec142ad2d4aa04810c9866d4b8cb6703bc288415e0c0b95d49111551666f968618ce33fe5ee691e9ee8e0b036b55881434cb46fcf3ceeb26acc63cb19d9208ace414f087c3b23fc28af1a44bab12bedc2456342c2fc1aaeede87006255f008aeafd4368a51a91d7b402239bf7cdab5cdd21e212bba9b94b538eb3f0c24baed198e422b05748178386c88b96b112a6e936358b5b3c328eaed857073318de2fe74bcf2378c3a32dd27d9c862059cd5ebc631e35b156a156a3e8d7706cd258bd075bd1a70d357a97a7a79564354af83a9b77b40d64d49e3699be0d353ba5702e8dff5d98fc9638a3bbfcbdbba1860b3cad6996fa4aaa9803b4371026939cba6117a7d10e1ee8781acebb6099b93a907f0787b4fce94c7324161caec3263809f8514ee06c5905bd9f99911d3c7cc1bb7ed203a5a06cc7088549cce2513923c89e220f49f06f99b183b37987614a094a55de694e9e1bcce5437cda50e2e69c2dbd943415ed0fe27450b22f91463d823cd664d2165104ba0504db1b1a81ce6abf95eceb8ee2790b78ec1175b91bca55c347e2e639b977322c4a9773a8241539c88012185721b689a646d0d62176dea8475ef03b1846805fe7d5496b2514860128df435e9ce1ea421f345e268b20d3b44fa6b309cca272bc8e82802ed8b4c65693e4e2ad816b0f1cf23afe681885bec4618041f6811a32d728b63a1cd9158d9e078846ab43a281e694965b47b4a8d56eabd0a03278cbe13cc45391577ba6898425477c44e0b3d90a8c4377b634a8a5f742f3230c100f299b298c2f855b0210af1455ae18b7a05634a752303158b176d630d51c02fbab14d3ebf58a2c3866200aa70b4ac8d8dff38158fb211cc4d8c0a78c45bc33ed27c289c42cd5529ff680fcc095b9aff55362e20fe44968b0bc8974502ed2980a0f6fc3d09f44348ce5eae2f3845c68452d402b57d4322d4ef4126f70fb74e735d4178141e8fa2b35a4819983bfda969c044c054a1470cf4fd40212c77106e8a1826630470c2d4c3b25c9497da7f7858c36c58f892a6484ecca9127b09e27bfd692c7bf738c27eee29571c952db052fcc350c1b9254c962588c09054cfc607798bc7b868bc40ef0b074f0724922d85562965adc9327736073eab309b93cf5148f2a8caf2d56b2cf53b3254a57df35cf86780c574e509a2f1e6d93cae87aabf7441f4c3f836eeadd73917cdcce29182118c0058b837d449cec60cae44ad072ed3deb0128b9d78b874931a837938df482f1f367d5c602577ddd587d8c69b584f734a08ab37d6c0ca57370ca6658a17cbec05f0ca34b8ac3995a891e4e7483e4fa911a6d8b7ecdc6938c2029283197ceb6114a961d4ea5ae6f9dece0f423865949077feb630b493ed944c2b7cfed983ca5da1a8e8696ba881595522457d4bcb068deb8864ed9f63985c0b1cf03890ffbc4eafdb76d0c6cbc74b56bd76585d31a9a2afcc10e03a49ed7805020f7cf0a3f9535c56d2ed5d8f590654e7b045627429e7c71ee99515b67e74415463c69a836939b2490f93dc59413487cc5daa41fc040b3119629b0bccb99ed72473efceb52161a3d0b8e582012a4f84ac58a32a755d23c47d7ad2dc789e308571e3c182eb03b7ce84d516c2b407ae7d243aff790431716403f972092004845b4d1079d4325b0fea2487ca75fb8b797c7ab1d6f3ca74eb5222f66fbba4936d523cd64a128834732b0fd09f991a6bac37a481c5d070f163008a2ab14dd6a10df349a70cb6ccb0fbe3d1c8e83939a803be857748e7b65bc47ad8a55f6f658e46a4574c3a1a983ab4f5e001acfc3a338f9ae9d756aa53c1f32755aeba07bc916ddf5d39d336a83c6356954197d3f740813bc9e6690259d6cf6de1b2528924c609bd4df3438038bfc1e1c47c1afe25dc8ae51b992018b81bcdbec4f3756a8fe087b962d77bd14bfbc3cf518e1a6c1637dbcdd279687e07ddc1e8f99fa67729646e676045fa58600b51b4f080852bc3cb42863971b2d51ae26ec6325a10a522cc75ab22f8aca6748a20de78f4d190e4c5ee2f966fed6964102d625578371087db98b66b4c68565edf2299afac2195651148566a9a0afd0ed22239f6e896499637833567b4cb5a7ed207695abd8e9f86f64edb56b22dd2e86725cc7ba49e8b43ae0808725376e3b8300063907f1e7c810f3135ba8dc99aaf16cb0d1bc4037cf44315391b7a8b3ff7f5c551d7c41b0952fa64a15881d321a6d97d6f01649e5b0b3ba3c809c143bde458b1797ae4ad49fad44f59552b483e6be7738944f8d74c950225651a57acd72c50b8ddfd909e0891d4f5a276014bef12cabfb211659b758bfa4a8d60e535a03cab02cf13bbe6e73700081daf69532e284f078ec2eb537e725680a3075d2b4de4bfc6e1eb11175cf9a7df0d85ab0c5f90839ba289d439e0969ad6ac5d379fd33b7909f2e5bbb633bfdcdcba85c7279d8a48f2662a25e7f3d982edfb73ab0d8b8122cdae8f4949a1610d9d430b92295682929ac0783ad65215f901042556230263f49c62eefef47b815e16467abf9e7088d80a36822d7ab0920991b656bf98d685a6fcb3399d1e60ce253549ae23d06461f2a0a96105d70b5d79dc1e05dcfd937d7e1c7215cbaef7a7384df2625d7dae7977641125aa4dcfaac96f0a05dca541b3db81429b0136a4aa5af0756a52943f15e6ae4a39b8989cf4311e1154111293501360bf96d802013928c71aa8f5429e6a9927cda80e99b854eb724a7160dc049f92f1c784b56533d416e54eea54154d6268067f09296e2572d0bc2766dd0c22033fff274f74c42ed0912822ef57cb6303f786801178155ed462df8c042ba0bdbe73aabe54fc81cd73990d6ea980cb358d7d5a2bcc274acfe2799c5f3feab9e29c4f44c8e3c304d0a80fce6b1ae389a9d5f05fa45e45559eac0f228b116b9a2f7f65a0e0bbd86c61f5ac160a2a5136a5c932ca93194b293a3fda03765617972998a0591f5c187539382c4c852c3c3fd974341628ca87368105757854121a8eebdfd830f619f3edaa3be493b56a8d7b66c317067d180c9e25a10ffdbb633f57b7582345ef916c41244b735b97dda7f1ba539e469f0b75ccbe43188b581743493ff072783197f5da9ba2b7ac3dd037212f86bad8916b5dfb06576445c85f276e911201f3a89be9ac02f085eedd871f1f468fa5f8f2d758db3c6b2b39f913b586174b08e74a892efef5641ef0aa8ad8d0536c4dbcbbc9b21cb3f8b92fd362e60675b00a5fe1337c1e0733acb2570aec4797aa6c6c0cb154c045ec0f12ea0e8021bde3ccd03eba86770688d0a19732f2c7b56ac862289308d117afa785af66a409e955d6c632fe59fe10e5a1cf26ec636ee39ed631f596ce0c506fc83c8449703788554b2cb6b6bc615f73db00acedc1e54315a1362a26ae13a695897ee068faf001c25651675ff06cf9e8ea48f9905139a50542e6c5a1c280a1df8a900c519ebc2edb7f9748b05d73300cb74f2c5ada70ad10174e72923689939079338c40353c541b53643dcdd565f32797d3814aa63c34747fd17de53920b7656886d30ce016f807dc05de443286c8809507844035740ffa78c127f6e6f0b862217bb770741ad4212e76e32740e9ac654ae0ce01a9a625b229f04245e68418ec58ddfd10fa4b122adbe1eb534075212260136dd1d2aa9c767085f428b7c99d61adbd5d03ee77f1bc90cd2568c15fcac5c1fe4aa9c1137f203143549fca22c4a68789e37337d3b6cac372448269cf1c9430f4390510e1e8035a8e1bd5980f877e44bf9d70bbb11575e437f96d7f35893989540f34d91c51d7ab586443ee4a4476b5968d5a119d9789b156620611b8230f37a3fa7ef8aa16461272c8f7679ab87c31e36b118c8e18f41deae33d7fa07e49320612ae2f0de888c2eb30cb9731fe1545e3c2255b8d48dc2e4fbc733695606c4488041ede6e8b44b263aecc3cad3e88bb1a766e4e9b80c24b20bc64aa9ccc577f0a42f4bd2fecaf886c6d6d54e9d347c240966e84691405ac47f9bf92b10db2b1a8f2f9be94d472b39255cbf3d202593be7f40fa3b84bd3a25160e74ba00fbd0eb7360137cefb24ec4b1edfbeb33f4509a60068f4836ab729050d388b8b50beabede49d33243dbf6ad0cf81a4c854134b273f0c91a73908f08bed0dd08504e6100d267ba148b18454c7406030d66b30ad8e9b22402c3b8e53f341d3626fd24da63ad8eb0ac7d0c3c9a3edcb54d66b35e3b8b56369d7ae0440adaead8c5ec54a57452c1cbfe2573a12fb08d41204bbdd867a86217dea077b3ab0e5de56e1dfd6df7f9e88f28a9096a65f44f3875b7a0a3ba7214a501bdab4fde81ed75897eef769f24bc86720a537151650adcb521be48b6b9427b682ace3152547ce643f7d4647764894879ef67313db8d271d5c58fc36c29d6af0e337005ec77dfe5927a89abddaeb3ce57b3ed35128d6fd301fcc6d693047700ea37aeee4cd7a47339015327f4e57960633b6c333376430cbde457711ba4150c211da14fdaa81b28fb0b0d5bf7e6d7c09357cf52d1150ff343aecc90c455e66b08a25e52f834f0e56bc19c8cc0ca270447870f750d9400ae73db93530ac250945cdfc600927f443172aaf8ba9ea071c3f4da68dbe56d8263d8d8dae4d9c504857a18bf9b1f7c0dc799dfd2faadba28c4cc591960ac73d0b579bcdcd14845b572d8c22caf5c7949772fc4a83cb90b450516d1d609a5e4cd7dd2706f15e2edc61e843ba6ab3738855cb60b2d7ecbded3542c06f9e9db6354137b33c037abdb6708816de4fc7b1a3fb86feb0254c34b8ca5571fc0a61bdb7830c5766743420560e24f4ec50e4f23152f2fe2f424b8444727187e5f47b68b3d8ca528e0a3feca33a03e7bba607be3fd2a533fd60b85c92544e7d88856617cb62e45b940624c7a648b9aac47c6c780af65c35e6b4754846f416317c70363a75627a592eac80cfef678f4afa3aaf405f00854ea0a2aa4678582dbfa3bfeecc69e059b46c1e47c0ac3d93172621e957bb3918f3c11b6084e48130e467a74eceaa818e18f7e4338be3201c67ca465ab01fa2f5dbe114fc6dc0ec5df3cfac241c5527a4974f81568a101d097d160cd521a9c9af77820e657c8734cd4480a045afa359a60dd30206b0130350f325daa011561e00c181afb16d287162dd8990c9a7da1949f5ba8cffbb174714fcbc0fb2008340f017ec6db9204ad87ecbb61f5babb46f4979c5958d38234cef7320d5b3fc97a8b3d55caa48e22777e59cc413c9cbf03ec0d7b7157eb5303cad5e596c4b6c11b9e9df7d52c311f789338275fda02fc8b2224807a00c2a346cdc8b72c74bc7aa7b0ac4c5b5baa2300274277700c9c25c6fcb05978b2b46b91974f255a2aa756cd2dd350688423767bccb3bf746a7e118a4c7fbc36ee7d67c6d19938ba00f764024927091463bcf022e0c3f1ba5d00c77a209a30cd0d7bee444bb2d78ea38ab2f269dffd921643ba9f00d7f30812315b74a99473516123a3466e1dc02a5d7aa79978231f97c81eb5efcbdcdae98fc381d13e50fadd61f123f5386aecb2de777a9fd28972f6acb199c8f4a32e8cd9d3d8d4c9de3acf20c749b595938109b6ed23cc152576b09b9309fd018e253195e848432385d6ec391bb066b5480f32a5bf91782c1344ca59b3408395e731cf24388817ebce052cf1888a0102c4f59b4784b1855af92d47ca41c2dc2eb5da2cef6fd4c728f8b67cd2e9a7d5c5fd2718097ceb7bee97ebe75e75963afd2cc6a23ff783244c68cfc8f2dc3710b1ebb5119222d3521a3f65ce2983db5b17fec15ec50f1d79f814367771936842124b19b4498b934b49c01ea227c2fac7618d23f116f973ad426e49062e00ca74cd237bca3c8a51e16488ec6cf8c1791a250c7dcec48f2e14a17e07deee29fb80cc2bbee62d45b03b4be01bae99197d97baaacfd2c9709c1c13bed2420eb59010c7d75c0da9b47d96e1766a77549616c964f8f9b1f7f904e8cf4aab0a8198a0c5591321dba39637a30eba4e4d0f85e490ed9a59dcc2b303ef5ea2bc3cf0cf8dc6930e96c234c1f57ec820620d9a61bac9b7e5127156a02f4f1a0bb927d7241670332a6e62610a63abb2faf5fd7c3d9bd63fcd0c2292f85397544f6dcb81253e4566091aa8ea13fceab824bab5ea2a5eabbaac026ce67fd67653070a62b7deabc0538a266e3c62f47ef3c4d2149b0b729080d3bdc471d5d52a21810f96877b7251351da6deed0edf193f65cacebf105de27d4d78c567e1170143045b0da899f5a5ab7d9edfe421595dfc7f75672962b1ee488ce56c6a743ea66c4124b43101f8b48fc73f8945cda11a1ac7ffe091644acd3a3229355f249a6c9dcaf1ac773c2160bfe211b554d89a71bbb581fd6d1b584c1e58bd7b0c684862c645185df769e2440a86a01a84323099f6ca72228e79559868bd7c7dfc76b6c3305b34261ad3ea24c2ca3eacc1d82f39ebbb9c47d1b3eaf38382f61467e2227fe582f77a2e4dc802d8c08ac2f7730ff04601d9bbb56970cc83fd60587e8c9ae44ba8a3f37e3182f0ed699783156f8c64d416d61b088995cc18ff0d73b25333c5270ed24a7b9c2f93aed332eb474c147b40b89acfcd138f7630cf5c0b4c1579bcb15d2de2a001f944e1cb85943fb2369f5f31b9a79b50c22528fa72d12907cee64cb06e1e18262320992f3ee50495ccb1c8b91eeefba010d1d022defc53c168265598bbe3e0398ef1fdd9f204370cb613a01f2bdc0c3dbcf717ab210857af85ecc272ff0ee63ddd31b86287f528a7f9c299c614c2e560fdecfa6d10f103bae9af98e06227d0393bc39b9daadb8cfedb9897e435337c3f5c47401cc96373f5864127f072ccd40fa406c12185938b8faf71e214f6ce6b021dd4bc5be49a18dc5eb7d31f0a492d4b86d1c8cabf13c54abf54bd02eb7d9851d20641ed8fc8cb43ce025a8e0599ad5140b7008a4e88e7351a113894eb73fabbd99532adbbf87825a412158ebd410eac699484effe0cbe235099f63692e7125004faf6cd31e314ed3a51b0a983ece84d43b48f7dae095b42f3f60c2823c5e0538766f6ba50d1b006acb272ce997d289f1ba00ff883f5ef47a6072c37e6a3ea17023294f1f38e4c1a2295c5ca9ec7aa2a8b367d0ce15cf6375aff46eec351698cdc83c90f0f4aeb1f3b7fff62f34c3d81fce5d0c83d92d6c42b7841d957702c8d0f8b3cc79a391d0af9399b7a9e4b0f125916817c888c07c699a6b1519f0b9d7382471ce41dd8026bcea699d632668ab8d3933fe93b047983deba9979988242d1f1bfd1e56793a52e93c5f285748ee61987b624ceb178b35952453442769d1dca409d4766aad4ea05c197eebd327c8eabc946fc5f506c347b9ba587791431109cf667d11f9f7ff2d0f5251b9f7fc4b2eb8b206a59491e7977964270f1f26792a36a34217b4d2afce18a520c08a8cfa992693500121886608466ce41e03463cfe4ad38a3dc1adb7f83808804831cd1c79549462c689639262c40bb0967c68d4d406448e4cedae77f021803fa5cb223b4fa6ff12582565a5947ec4ea6356759832bee4c44c7fe3b3421a4dd6ac14d1b2c1ed01400c737d5a7da657a9a38bb1cd063058988cc258553c3598948093a42a5cce86203050fb8b1cafd579df9e7524c0db2585df7b193bc32ab08afee5ba8abd3b1368ce73eaa475e275a8ad29fb4aea024b14db8924ee5ce5d9a452e25235fb73da4bcf865c352678fef1d7594739020198d322a660d04ef961f1cb2ebc3988d9654052f14bc1022b08c5482ce147b7cb56eee2bccfe6cf65fe0817156d4f4b16ef163f22faa8a2f1c497cb95c89c9e175f02eb201c5774a95307cb3ef0ab4b42731d63c1bf0202a78e73af51f9767e1244020f6171093f873bd2c4477aebafd6096517eca1cd823985842402836e1a5ad690063dec87bd2df09b5d5e2874cd6db516aca035017701e185dc7c24f65c6627f7028f5c9b892816672cc62e0fca19b616c0109267a5793ac0d71c3989f232b45039e9d524672c5f9ce161c1e8c1cad017e09e7bea672ecbb34bd393600462028eabcad902b8cdbbf52251b7d7365bc94480bf3f47c8bf7a51da040ec3c31a437c3047d0f3f420926a12f3382174efcd38fa04173462b9fd900e69b8c21c3f95148c6d83cba14dd2d00275b22270abe74e4ddef88de5e4b62710016f64bb49fb4a8bbfdca3d94d3e4c61187efca78bd21fbeaafff1f6276496f5bf082f7cdfdacf95e488c0a0f5df18e4b5de17c454f0078b672d8ec5e5856f1e246de05708355e4ff4da710e0df0e00c738117038cca6ed0cf59ce75b15ab2c790f15433d9329084e65138479506a04991bea15dc2cc2ce5560d09b50f690aa89c305049cc3b90b93903a9ae874eac7d9b15b6bf07ba1f894567ec8052f1a4ab0866df16ade60f9865937ba2fe5ab2681be5e529972b0044540b375013633a54bc98de29c353f7c7fd35b3bccd81f888d370c8ece97f198a4ec499daac2cac46ca1d270b1f41c9e1bf46b0bbbe4f4c1685ed5fc9e988063c6e98e6fd24dbaf3de931839e20859f8957b4955b279766aeb58d61a529545f6339a62d3074b333ff43a84952d79f34dde284f8a84fec6f3d2c43c08655131692ff0d2a3b9990f6a32d093de3ee7072d1495ccf7fa3a704f0b3ad43006ba130624586e31e65787d14af766e461b3d10182f8c47ad4e1cccdd6054ca7ed5ed366246fe93718cc8aed62e5ccd36ed96c83bc8622902de2c91565420aab08fc512667f2b1a8ef65978f3bd0135765749ff16d406861587c696198f935c57e904228a231b4a8bcfb22f760efc0ad24eb8d84b43e95256ee8661575613235a5e480ebb0e93c9412c021197a675931b68314bf61b71f8c244607752a33645099d3a58a090b3fd68619e3450248189b14073443c8b1cb0aff38d8de9574ec9b232502e3d1a56a739068aea933ace4e0e8ae4f531971574a1b0d980e78f59c024b25b1fadcaaf6a8795cf299daf76175bafcc4e1476f597f0a3cdd04e08ad1e1a130f6a5d22abb272d9259a6313c1f35313a22b6d76751adfeb80c61657f1a5a426af4f19104f7f39255c8b758a6bfecf03c75b36f5fa19a129cbcc296f468d288b003e48c98cec978c1747fc09e0a79a9eb2d9aaee6c9a6e12daf5bc0ec53ff2637713522385d9f889026645279ccc9e9a085f521ec9e33d9c1e00dc70b2b28768290e114bc90a38496670f370cc9644c629b26eaca9bfbb8eeb6cf3ddf24d6132005a2e8506bcb766be9fb6b9dbfe129b06afcd8e3f45657fc87f36194cfb87585453e8555f93b53d6a56e6121c8387f29eb413b690ab7beea023ef8ae6e8c8c57831a29febb2366029abf5c5c9031a0d7fee1762867fe112a8520ee8d13fa35bb45d3a94da3f8b2d81cae9c7166f1b22c9fcf15dae8727040f6fcb1024fb6d81bd61d5f48a1a8dfe5f82884072d0f27feebea29e662b81d6f58896d4ca821121e54961ae40b67a9219f37a08caa9cc37234d67440e5d9043da22c54c04648935dc47e698427f6c6b5755a9bbc7246cfed7c77356e00831554b7a6c5c03b2ab3ab865e534cbbed08fbe5b55259bf0300dfa6003bdcb7e73cbefa6aaa916fe912c80316eb1da4efea22d4483ada150c4022e6f6263fdc3bb2d59d542a3c1b6125b442acf6d24823c5351f722be4433ed57c6f1d22c89f1fef1c900740df17183e4fd5e1ce25e3a81a63b1a15df5f7ccc382921d0d4e9940a456c46f2ada9dd02f1c056026e62ed430ace408da4e100df76d4a0a18b3c0a7110f96da1ca06f01747bd4bd299ea8bcf16abe3d7e60716f29cdf047d980efd476d49057fff7dc3ed003e678a73a7b96570438ee3a4b4ab135531a52ef2eb9bbb2d2ecd91a5db2f5cd9d44d604a268e605b516629bdf9341a547d54ba8fa961ace9f2ac00636f802a94434a4ca67bbc95706182b0629b3d561734fcee3ee0176b0dae557ff95317176d100e132c604b83853c03ad6f9500a869403cef60616cf7e97dca56afba4efbb6e11baf6869650a5a82f0ea683e2d14778ea1a40dd22e6fa5cbdf1376134109f9e51b8f20d579ed93b830fa6f22594ace05b3875e5f2426629ae710112790443e9d5a015463b36ea4dbc7a51ea7d4d4960a3796176d48098870681d12494e1023b050397e293b795567b3e5e9059a3a4df532d6805512bb79a0093ab0414607bf89150eebfd79374d543d7bcadc551bca96671c546337b264b58276692b9e2f1412429ad4e27217e5d47af0aef6f8806224e569ead283f826490f125e0b55ea389d4e26c6609235ba5ba4e5e085f5cb027c845af9a74ee5698aca59a409a946c48d14b021f0dbad91cf7ea2a916867e74bea60162914ec577d25115286a328fcc86516655942c8a2c26e69029d0ae754e8a82cb6ded991be7e6dfe15766a7db39214b5b1bc4aad01c12e941cc04628b46b4d2eeb650a89ebd0f9080229ce6114a9a374c4c93bd1cadc56e7a43c6af202d0c7581c37963c088a56e0a8fdaa13c0c925b09579a50a32c1e36af6ffdb7e0d89e111ded0dcec8df21c096fadb5d8f7ef90cc8da274ebad550b5e6efbbaec220e5ea2008e7f1158a1396314de42ef7b7d43caeb6301b0a3ac2e5a55883460627631cc83c2bb7377ca71b0f0ace65e0568b4a80eeec2f981290b93d73eb9a1b2bfcd980b0d0e22f6edae34104d05208edc136401f8ab199d638e3c154c94874cd73a3d60542260f9842819fffc5962095a400e676794d115b5cf6bca8f1ffd24ace7c9f719ad57c6ac5b84843584a9585ab42cf202bc8b1715e0d9dd0dd4e53e5cd9a9310c013930ca9c33f74b23ad158e627bd71676a35a4eef006ada86aca330d804716f797fa5f52fafd73adaf0fb8eb5e579e5ac99faf67f54a4f856a1def62a56a1213cbbb79312862dd657960351507c3fcf35d984836dd05f72b649a43c1d0bc1227003732ab07288714ba139c8a4ae2570d1eb19539e2e9331ebc67f8d5974b69e7899f32f1d06747cab3996b8d1d50d66f848f581ca54f7639ce99e1f321d25448cf6f8aad28bddc1c6b8dd6d63e808af61b39ff0e87049d727783030ef3cb89c264e0a39e1bc3d840b31cb7c01a909e137fb476d44aa1c850f8bd49ff51418d164aa48250a32276626dd3b7723f56b5e0e506d42464003d5ccbc4479e481d48e975c65ae1c2fafdb1b9657a0f3dc783c57f72f2d5a5b0f7d47bad3a2528c698ee52b8c3df22425116ee2906e21b5ced3896671e5db16f1079211f10b5a64b536b18f59bad84e09090755884a60d41a623410124da3bb554481f2cc53c50c261fef31c30d7956a0a0a5c64456e2c02c9509e25b2bd26c96660d7dec5cee27679a615fe4e1b4e72371a29a4dc7e492b13c334d76824e1324499073dc66c8d522b4dc7016070856a2e28a5d96701605d31604321e155cf0127b253ea75eaed5aa4872af24f7d64f2bd969fd2d2e75de71f713b8345f973944bc58171013f7474989f1afae156916cc676c83979db1bde6139428fc5d5f30f0051ac2f3a78ab6cdf83eb48d7ea0ee3872841ed5c06220c7b9e595cba483412789ba75a5f278f6e31ae939107c40e5bd6c44173098a6c692fb74e9ece4d6532a3a3c2deaf4d539ce854ab23acd8c29939a729c832950e60231db13c136f124a08b66c43c713c3974108c221dcf165bee065a414cc2605a677f57098ca170b56901acb25ffced2890410d348f19a4f6f5d30bb95613f2f17f4e782d572e31e0ec3d2860a583a211c1b2df060913e2252f18c9a7d8ae107e604003231099496a938660c40b7c16127a3e4e10e0a6750236fca7c53b44d40239f2d66d12f4f3aca4715f682bea9519986903fb86282eb8b24ebde609ec23db99b28c3bdcf2bbc3d859812c8eed2ae6365b6edb00159d53af89da7555bdc541777d1ba04b61f353d7566976e5759919c7657857159c4784b34c82686a8603d133abc62229d8e70b0c3910074bda5f2edc86fccca682c5dc5d33b75e4be6e38006f5a12df2da9a752ca4b50b0822d78c2e92b2478d426f157045686638a194d0cc7f1c3d41742bb8d83dd4e5c8cedc33fdb18465bc15844e3b35d050f73ba637f66483e8852a094ae2fca5fcb67951e1c048fb16b785ca67f5e671c8d335e2ed8ce616b4e2338d35a08d96c2f213fca57a24783356b0f27fa0c7a7c6bdaf516357a04b4b89361b160af5b2a9cfdede9088a54d5961f29365f44bee28ad11f0ac928bf187a554574c2a4ac0fecec5ef81e593c3fa6c1663251db03d489ae68436997952493ba714903d6bc78d2f8714c7aee6aaa0395cb869c1be311fccb1a716441503a9eb7ff20831fcb87f1c0a6f1fe87cb3a623c977a94d0dca59988f2715f9a52ead65614642f0e25d6d000858225a78859edb754a9eacf986bfd3f4b2ca6fb374db1cdedfbc4075dc542e7cfbf0a34e6cb9a983a92f5ff929eafc6c718d8f70d079995380aa55cef8896a95da5868dc9c113711bd3db84eaee8d00756517810745bffcb39902e98d171e5adfcd82f0b0d0d1425b3ce2c602a0249cdd206e8d5b6d6efe1054af56d48f93c37eb2dfeaa7eb9448f3702394211a2dc86667860e089d74e204cf07bb447e0228638b12c2cfdea71c46371ae44c9423d30b1b4eb1f3ee53f23cfc375d14e8acdc6b619a3f931dab1135ebc8d32abcd874fe6a7e80f81ed20ff933bfe47979382c79a6fd4d2e04de2d137f146aae445264fc6e4c20927e8402f724dd378320f94dca822303457917d1d4c4852704199ed8450080a740cc7d18035023768dfba80b1e9e006e04da6787f50655a2c9c6593f48353d908dcb0344e7172f716c5155e6ce3f404a489f530a3916814946feddf6d5690702ef3a62f7f3816056856d12f4d1716fbb4860c46120ade7f7ce37a1130752b03a3c43e91f024f3c78877c8addf6fe48fea365f0b636847a9e6588f526c652881c4337ad3e01ad0e50fbd94af0dd1707a3bbbf2f5c27838fcbc0170e40752d8d19a360998f0b71fb4e2cd7a64a013e3f3c3fc9358cc26e3a127a0837624a0f73b54813fbbde9183c12f39b71bf158275d4733b34a620df3ccf6f6e3f399325b659260c09a0a2671eafac32549064970743d4436beadffe7812c8eb906a0c61817b7c2b45410b5aec16895fb241102d9691e36b654aab7ed7ea3ba674495e46677513c5f9162e559c4c2c695da1b58c638d7ec1b9ff0549112009c7daff596000e2c0bace296afc25c521a12252786fbf4f6ef6fcadf61be52000f980e40442699f568edb6432f3f68938041d7e6578167bcd123fefb1efdd62e3cdf21305347ea5e197268bcb78a6eb023dcefcda978b7e586fa6777b4cbf31df5d6ff7936753c73fee0f7a1a1845bc56b58e21ae1ac9b3880ca2b465f441cf6e6340f05c037c71c548e7bc7430be697f4647fd572fa74757af3beffdb32ebcad556a4bb60c7b5ae60a5253cf7af93efa18577b86b18131f615e2804761f97070af4b39c83e5e6239a816269cd86781ff5ae83b34c482a580f405d082f93fcaf2b73b0cf13310ec8e1d67b175fac49e300a8be28b8a1f7a00909569982f7b1214eed2368c51a0adf326989607815357fcbd4239b68194a5dc21e223ee8cf27ca255c43dab44169e5febfd966040b0bbdcdfda4603f46c7b49817b27eb6ee699857bed8eda6a1d211e206f6deb0dedd3f94f9fe385102452eb95a242f4ad8df0f91d007fad58aac99e19cd42fa773339edb4e6ee4db23599f6783e34198673819eede24ef6469e1a447bc4e8392db2afce918bb6dce59963feca9addc3c803c3fb46a4d5b00f078dbd60aed6405dc8a31df5657b0474dfeb159e00687b1579518597c587165211dbb7a4cf6e66385bc373269094bff7c36b7893573045ef36040d9af8a3ee712223c89978ff0435c8e1313dba8e8dfd73a5cc46a957dcece0aabe20b51a900a83bca5377ab74e1a2dc6719f6684e23e14ed7fef5655d0dbb7aa3d87bba5541a6f1baa24eaf0e15156a6bc029a60df376fd0c4bcb15113b837bbc42c8737d948fd073a5dbcf6db1a8f22657aeb8bbea6fdbd7591ff2234948de604072aa00c2093e2cc308b0110716920836ce7edab280b011f7965d7a74f9ae86df8d109e56a272791203fdcab9f87034b782a20aa3e931d84845acd15a1e618d70a727a3e46e687d91d60a53bd583a24c09f24036e3a3318665ed57e9b3629933916e32210014042cbb5074b3a5e2f23fe23af3d67f16bdd67faa4b9b0bd719ba2de24dd623236df7f5cf556a472d388aa3da87307f8e279a801d4702b9a2cd6c7ce6727d42744f0aeee6d040df65243bd0fc1e276ce6e98b4737f1280d8f24d3be4a74fc71ac9944f2d9cf3d84d34e6a9952718c448e9815f95a5db5b0e892eeb78d5c57236c73000269c5bb13f0cf8d03a47b21354d3e6ea8ae54a3e1655cf916459dc824f85528dd25b170071116d88bf3468bd53fdc2acc13e58642877e271190377211eede1e9586210da0a3b4652794502c96336791dbda45cee0c9f69884f872d538d81c886489f7eafe093a908ade3b18789fb6cb7cd259e4d3066fb7a9b01083678a89437af2e9328fbedc90dd50e3c9d696e0270b856ca637d52793ff2dc0c35943a1c2230e033bc9c95176574993766f2e75b25dca639a5b16b98ef982e3640311d271fed168462bea424eb589b52f26761dcba4c1ac9e0fbe62ba2efe51666ad81c25ea2666dd0784d7428979e8f977dbd7ac7df8138a0d60b63c2788bac742aed5408b55ac858164bc0431f2698deffb3ec2c8251c8b101a5ab413a199f900c7160066737f790367bf0987c48947fa1f268370b73db0b2914f5e0802807613d239c71901aa0368ea9c252f286482ac4bae3202490648b3c9b4306ffd995a3cd42abf06bb629f57a448a4eeeb0e48dee2b97a622c7b445a1deea0ec0860043ee1e3545f55f45ac03ee59c4f2da28ec3220072b609eaa2af280e1eb478f08f70b475c19b9dad8c3f99a02e9fd0b3ae61eeb72fd7ebb27197712b0c880b0a322562b8dd49bc5d26dc1d7a4cdc9ce589bf7ea48247051390a680b831b71e98b75ec4f46820874dfed8c29ccf1a0387a03edcb01378c25a604f5072c79d722b095ffca95f455a8cc646e08ce204a2c54dbde077107d31294a6525a15aebc5c542374884d93f3a0989c20ffc6a7e7645f1d9aca317f2270bbb27e44838f82991d4726ff72205291fca35e9a361e158df45deb16c5446c078877e6d55fef74d06f96be0c0be92253c552d2b85e65b9065c423dc3e16f3318afcadc96490fa641ba414eeae5daa189fe113652eaa38d90b993d7afdd80628766f3d2a2e4197170e6f4ca9300a3cc482aa7e8bd4a804e7d49d5abb5a2e4e93ddcae2dfa31bf6b7f64b49fb51b0a5686984ba2990cc2c35b5cb4befd367bc5cbf77daa80e9d37b97acb4ac740a527979650364c26efcc09ed218f02478fb0dfd7f0d7e9f02c577b1ba64d56e259f645611eb9e843600f14de47387c6a546c3b89d24e34e244203335196d6fc6dd50d5940c141f7cb9fbb808a35add31fef72b59741f17f0d91a05f8746063bbc62daeb8ce48b80d82d7a0ef31c2cdb2bc03cee98a7de2e8f8a53a50a10a88be3cb6535b22aabfa6c7dbc0da38478f08f94d62db5c99196dae14514c056432f74630241e643b8fc3fa5686967cf1cd945f8ae4728a4ed3fb12e06c56e2314ebcbc7ad0f997ffbb3a0c12680dc107a5f74809ab64ca8aeed17177a87bf8516ad73bcd575345c4b564022a816ff96b1cb3ccaf91c1cb61b4ef46941d2a4d5d0ab1d0d64c77f4987c72a66bc1fa28069a9ee910e89a63a1058aec0f1aaee77145863390d6da98964300556633fa4a60a5af524ba7a34e6d73fc01a6b745ff01b75403faac7be5dcbbdcc509984c27da1536862f2f2efbf6ccc6991d8b6f5642273d498dac1fa14899f97a08705fe3bbfabf624892e29d3dad17f834b3b7362261a4072956a20f2d0dd28d5c9ad7ba75a08b3d9d191f44c9a4c41aaeef0f2c65fbc7a7be7b4bcc63666dadab7c5b1af3a4213f3467adab99c053adcdce55bb62493e2ad877b61022fc9baf88e8c6a2f0fa7ec9c84f7b05365d38061bde37c654f6c4344ce54d3d90e6724710a0e3db49242f9c5cc3b41fc17cfca0dfe6bc280f53abbea66f361e1bd9ca71c32a2b901e3a9c3e1bab118b68b9a1c1d04b60db06bec026ddf13fa1e498a6d6c323de36a3e8b9775b946fd8f51c334b14b5b84c0ca0e07b95a96f2f42f0979ba14132e79af7c1317dd59a2af0c3c9e93d95a9633569102661b28257993a66324044c940218ee6817894f53c7111bdf3df627ed2517585092126a2df2f8827862b1e8461a693835b5a03deabe5b2ad78b1f621055c3fd3d4cbf59d28098c72a90922f22be62ca0538496607b7de0a8d9fe431ff42e17bbaf4a77b1e39795044c73c86bba319f0a097b0a78c7b95452f7a5f514504fc557aeb0ec7fb59724cd0c8369050634e0db83211be1169edde46ed532dc022debe05fa644fd4fa255540876c1de436edcf60bae90c1516c8d39e3eef25e093d190ab4467d30de147e0127169836eaad1af76621e7e9c46d909005c832863039af67fc49ddab2e65005e9b11b1f492a9c0ee237569b3db665e178fe10f04cb0241801f0fa10dd047e3bfd3179996bbe7deead3107f9ad8e7b5dbfb5b68f8c31d6020f8f15bf36e4df8409052d2a7196a443a17b2431001695fc16caa1685e21ea7c60bbc86e238fa752c17d314ad288caf13d7296d4e9fe73ebaeb71353236191b037f1c2903536d22084845ccd63358023c16a812b460af6b8db91f961b4966e2509f9f29898001039343cb02f966cb8e2772178ba82b983e03e4aa8c5bcf520c9f7407c786f638b0f53b4507b25667b59e5982ace4a6073fa0b5adc7cda11a8c623e38f7c51f148a92523e37bda988499a1865afcff467d97906a4af55523edd9244df9d179ea608740405610c3fda4f728b98b33c4bbc890eab680adb325fdefb956b355c5ad3710bccbaa44f36c5b55193b43441a672e5c196460fb14941c25018fe3ee6069b05cc46eb77e80bcd221ebb4346b55421da5f678caf1cc1105d39d188fdf87b25d79b362ab1a44711bea8332edb5e20c3679283789f960407e9c92416a05cbe6e61b2a26c0515b4799263e335f0cf2a9d2b8d08137d5cac178002d89088e95cd80a2562285a1399c82b6b721320a8e32ac62960e2b91eda18986a303ba1098be5041bfd5d8380b7015ff38537ba739a56462076bc9645be354ee91e8ac6e73c417a41760d88f811bc0a432858189650bbe4ba5dd2a259f82c3dcf475ea603eeec7a546768cd483c36aa565429c65b27fe35acadd221005b3436669cd61e79369263974d9b0af4f34238dcbd1fdfde25557f816009141bee637d3238e8be8784bc84ecaa0532dcb6bff0a77701a6002d969bdcc6c439aa8351b11cda49eb9983da5dbafa7648ac71d091f902ceef1975415bcdb132aac1641f99b246b73d74cafb6d04e469cf1c5ac0e766f9996d7503e667b6dd921287382efadee6cee71643e787f5f88fd7e7dbfab26e5ab2be54e42ae38465a68f51dd15694e098cfb1cc0059ff188ddce100b0f63ec75793895a760cbb9f7f1d1079f407db12b61e3758ba0463f6984c44beed7698eb12cb00fb3bca347fe771b61544bc46ec833472357fd1bf2559c51443ec5740c3867fbd5085ccfa9cc12a4719a37e898b24cfeb4f431e2e0dd9e0f5bef4c5d95d9a0a6c32b9bc698cae142d21f17638c45051c57caf827b0d32a8950cded9c1f5e7df4a839fb179fda576c2a731add5554e3006624840047ae278f5c89eecae4aa5028c1ca16dc06dbca1b91ec00211eb3b196b81758fbf1ea1186be265d65562500407bffcee9c71f0a4ceaaa5e57852df12e2ce99dd53db55c4e859b6558beaf3e550f935b1f36eab8183f715aa0be58a37ae7200c70d2fdb0bc6cd0ddfe0a8ad43da5cd36d3fd8c0d0192630fa7c845429a413ccf74b5a103fb2b0572346bbb11fb3de530ba6e1ef004ec9d340b18fa12047d4f06746e8bf890a503e3bbbdfc9840ad03d436b208580c1ca44e51031974975c9706c3e660968a5d7070e36c4dd86b69b77a5e4d8d20bf0d3f7057f04250f9e14002ba1b8e16ae9a638cb539d110c2f54bf4a6842a47f8069b5f557615d630251c1ca623c3719c0a50365b75de56226b20354428077d5675476bd40efa250b162b33d1800ab7d715f4533142f931e7bd7b0166d8e965f98fdd458c0333cd975fb3de2c72fa987f8a168664e0c8ae4bbe3065d9a766028c55b8072a22983f9b95579dd282f4dff2bc59516b32addacfa721546ab0c0be40d95f42105f44d0d4169f1f5b41cfd09aa189a1ca9fff225fb2c68fabbe1c13460bbe1057fab9ba0cb64ccd5ada3c2c168ef0e6c56743a92ce0f5a07f7af736cad62428ecb5e3af9784e246a2aff5902f52bd32a5d550f77b8ba28cfe80cb173bb1c068d8f68c9398dbbb0c3cb0a885afd4e08499d907fe66f73d273e4beb8b722fed366b45facf308068c844e7983fdfa6d2629e96f0f86503ae92a5a40f57a510fd1c274a8acb04806ce6cc7f99edfc5ccd14f51552a697a54d4a46a2305db8aefd4797b563d4b72ce3a5e0bb6f3a8c7ad5376927d8b2a172677389378bc46b2ca65c095651c20fcffcd82d22c072a48ec63ef0f304e21928be9fab8aa79f8f454744822f417c0530e6c283a855c4e62d78e88380eb74bbcbdac30bcd149f9466a542e1edd7ec58d845a324333878f47dd2c90a74222bdbf7fe6f6693195be0defc1c5e01e2c004ab835d67e80b2da853affab497969063e98ea5ce3185433f18e962f362a2b51c9d53ec2ad021f4108cfb6007650e1d3ab95287825d0a3ddc37c327e275878938ed5b2743351615e18ac474a85279fe9d408eb22d6a2e180e2f7d15d80d617a6295649c9535189736de19aba23a2165b1caef686a84dfdb60bdbd42db664464d2cedf666dc211f2c8c0b3df3b1a7cd31da3b84af7956c34c6dcc534a33beaaa1ca7cfb037a25cdf3f1ae14a29c86f2283decb6aea2459c90471db6d73a995a1dd4d0347fd45cf9b9f5245099a6c87522fd405ec66fa1431c14b1e6ef85bed89ac1cef8c49b0fe4ee8c3d78bfc5ad3b6e0043fc39adc6d1a99e620233668447a2ce39ed887522c98b9ecad2ea02fe31b0365ca763e2d8f15c992d55b82cf25f399e39b0ec3c9a5ccb016c7cdeb83c51c479ac86ed8d0f802b5bd985a6874bef0fb6647526e9325f6c69692ab08c41321679b19393ee0ff455ef88769fb2b30458f6ea0d0b9bdbd0b7d9b7c1362b555c17432b95431e0226694d17e131bed2439c2553fdab24b39ac341bb4d4af6194f2a2858365cb639ce620b12e0d169dfbd91bebd5b94c72c50e3ec3981ace61353090eeac1e07fee049984abe097529f40c82840145d6b66b7270e0a8f14da945cf2213aee404a7d45d69503610ec41fd76bc6304f965177452cc1db94a84610bece719436e8d4da92c6651aa41fdbda1466351216beda7469f4bf750b1839aff479faf8443421d302bf1cf9961d146a668a6fd785eaf7a2a6aefad57a5330b975f55f5c8fe9be7340dc70f433e322cc657843b95708fbfa4177b2cc1b090db2f712813775fbf6ff942729e2b1763077f39927cd323755488d426733cc7bdd9bfd50fb2473d63fbe45058bc082308f703059bc959c41cae4e3e67ae20ff54cd05947316ffc1445a751cf84f356f230655c83292eaad448b197b1f4339aceabe98c01b2ba7df0e1418f06eca4336b395ce459f85eb63325f7bb044f48dfceec4947c8b3ef22c432db52800732723be48c3be31810174681a2962c8d54aa0c8cf15e1eedda4e5aa46535f6d8e132418a295db24e135206403638d7e30f652e0520de5cfd75ae2fa1f219cca1f546385ea55d3f2a1a32594054bcef73e2bac30ca41065f9fbd9a9ba9e0213c7af544427b41a471225a5c0de6e7a4ae86ae1abf4bfee9f4d656a64a81a261aab9d908cd9fc3a3280aba562db511e33ce06c13f7f80e2600f78e36ca3b901884a353683b0c2a1032c802c75299ca02241c39713bb5470b9c9655161edffc82eccd8e36376cb35b97864c2c1bbb31c252c9ab61e01d36d10eab3c168908a9d114d77c11255941030cd037ad81fd6f52608c2a6c844d38ce6c816708962d3084993c8b581317cad3467d759069773c717a6a39c1e877879c7096b4c31096d1328d13015c1e0bf0dc0b4c50045ce642f5569525ff84b5cfe06016ebcabee6c3d0557e0d2dfe22cc3be14eca311d4fa0df0e3e84a4150c9ca884bde032005113c6976fc1249bbe97616dc9f4a3ab83b037b0c6e9c2bdcacfa71be46bc4e31712fa2d45c85fd9541e7a2f9e225c030219253907aa4fe28164f369b11401e20bc77a279a1e41e02dcce92796f7d66222a5706a0df0d72aaead66b56199cfbe904a99f6549c1d29df64cd07180ce5b5bf19913341bfc0b9315c1f81ddf6f9a0c94cc1f322bc1669c5ef2397149c70f81551ceb74d0494dd8e5de2745571261e77021f9e5803120a2585e88496561301eacd8ec847bf4478c63eb111121e58eaf812801316524f95a0ebe10b630807c5363bc8e87ef4ba95aa33f4d5836e9083c9f4bd0ba2122d0890744972391c00c03272f49dfd602eb906883856c4ca2ead7d04703dc8875425aa30c20bc8275204b96b37ca8c8dca317aff791510960698dbcc0b78fa8c6ad7b33d2493ce9a403676b1fb17c122ec5f02df962d76739a3a37e1db951f8d573c901a0429b14f71aa4e84d42cc3dd0cfeaba3101747931a08be81d7e7b63b60313aa14df5e932d4c8104a4c1893fd6e8b3e09c1f11ce301ebaaa8bc82e4d925369971e7c060e4ac94836fbadea6822466cef49be682fc47621fddccde7d19453f5e8f438e31a5a2c50f900816e6a10374d443f206d99f4821f0008ccb594172320b39d0a3992659fdf2ef227bf3c5c503bcbe8b3576b8d881149870b00105129c83455aceb0288f75279d1296e3bd7e7701733ee38b9fb9af1f6f47bc2d492f61ed24aeefaae00f64441820958adaeebfb41bfdf0891c38bb096603f3c4b13f55800c225a5740abb6a769a9d0a9e06daef4030c4cf14af2e5ca9d85805625526733ca29b182139e78786d29b38120afcc3460267e3aa1a0a82aa148f009d3200b001d393432f531f474725bf6c253975bd668c669a9e3c24ffb4e985129943a3ac86c90eb688b2f85ccd3eacf65fe0c967e5c7a9c6c9618241a78db867070457d3e45a30ca230846f55b979db45e00ffe84009dbf9a4533a4645817d0e462631326132905f32581b7fd7bd2741b7c670a944d3487865d44d6fb3a7e916802389d9a53577fee1f6e98373f312216397b22739f7347e5e5b1faf9a9fd095d613cbaed8c50f1abb5751167ab17b1374856a21392af58ff171ccba3382a267b69460629ceef572af60c335a896f35a4c708c206c655bcd96a8b276ae6d46c2ad426da4c3ec7689b5a517238c3232338bc1c263c99f51ef673f3928acf0e0c8e27638c7e9aa51b9931c5bcfa4df7981bbd6c9c6f94dd7848e494cfef5246bef7275dcb4f1eb83363f934c406a8a3732a44ddfd0cf0bb00d28255956d4ff8aaf20d698d03381bfc729651ca06d23582ac2283e5e74ba0628060ce6ef1a9c583d4420968fe29266549b992a6ab6db6aef6aabea1efae3fa475d7cabcc6ad04bb02d02fd6a17fb8ef4ec649ce7fe72b521bef562cf16a11c3d4ac9362445b31db6cf331b76c1890c30c325cefde63955ce76d96b91a27ca2df04faccf4bee897fa5e91a51e27129831355af3358b0952a8f649178596dce09fcf48f4e02841c36974f3bae1e16fb3222ead8d4d5a56cf4959e9d5bb27b72cf0042c37c3aade688ce6c37791aa4bf46b9406781ec8cf0a0006e8e0800fd0e61011c0dd9bf9e1328e743316b3dc296594f5e5e461d0dd1174a59ecf350735e161818e0f330256b608f6709b3fcbe354321abfb0e85089c777f6906e6145affd8bf5c1604ec10dd9c11074b1d729d6acf6cc2c884a0217cefe88c9023b38c4996559f442d0aa6a755ac24699a5c1239aab5d181c98cfdacdf106de556fc40a354e87e10b28049925d795f005211f2098d2c221dea37eb3b89b8f118971e85b190fb8cc8c56332821b51e30266c6e993e08290bc29f52a7b3ade72644df5a4846fb20741e2795e71be9c0239b803b74b3a7ffacbf9f9358c258ceb80d642b5626790dcc452238bce0be389676abbaaafbd0d7965cb20af40889e4ad205fa65ea5e7bdd3aea5be2272a960b5a720bb68c3a8f447f49f24fd86186680d240e4b25034cf9a6d5cefc7f30b1c9593b8aebf929d0fa5849c7286de44422226d34addc319b0d5876ab8cb4bfb2e24dfc5d9dd09956d18dbdd72f8c2ed19236caf8863c5f066963497d8b6f46bf413b935c8fbd5ca8a52ac62828ed2516265b9da9b76a69dfa80ec20eba1ce033dd2c23efdea0ff80a671f52ebec49e017aa212666676f354a4f830208443fbd7705864af442bafde3dfcbe9bdfac383535d9f183712c56b72069d94bce9b4e4ffe0c4891d257b970bd20c5c5df3a58592fab2ab1e5197c2f28d1c5908b657ac05c07cccd6ad83aa1c68eb92dd79505345e89ff81af5840285c05998bf9321f1fe00658debce3b79149513e39a3c35362cd5d9420a216ab8dad38d92a699f461c170c9180f31b2b6dbce2945444bc3044b41799df8305106c27dc52c617e10fada76a651ab8c394979cfc61dfe00b4a72900880f20f9a9d9869010375cd577b4b4b3e638aa2a8cba90c2043e690a724e4bc03f6795f76072fc37cf74148ae948517287924cd0c14c931f012978d7f4992ca131c2e35be1aa8364ab482b51d7a8a9e39399a8a09404c3a8822b985748a97fc26698c1b8a09123000398baeafd186e1160828cae072749a1d84ece961f2e969c09c4e79e117936808dc98935937d3461189c4d15ca2caddc7a8a040d01f8928d0d9582fd35ac4499899f294ff77f4db647cb758b170dbf751587bcce21355b2a63c252b4accb396355d53cd3b6348f94f7fa30f2a41d5706c24d11d0047d16fa525a2ff92f5dc8583a6d21aa209bd7344995fbbd907634221d13130512b2234360c107ff14a517cb514906b4b484efc0048c7f1e66f1fef08f9f181486acbc365cc37c05c8aeb9942f89ee862b50ff0035bf11fdd9a5f7350fb2c0d6564bf560d68d1f3116bf5b24fd514f3e1396ca00b2a375c14ded5ade8f9f3a744bac471162b2c3b8d3d9b792d2ff4da0a29bc710549a8341ece7223a02c8b23660eff251eb5cbe03b6aef709193de7c9466b3536389d7ae8369c271ff19b046cc0d98e3ae6a1d288e2cd9c8a99dc60a29d483f1341a0354cc4aed398e4ef49332a493e3c26b1227dcee9e77c23e11c942d2dfff4447313529ac901f63b1e3db95f6d18ccd9cb1eae9264fb5d3b2183f2793d5db426529cb90c457040ee7432d2d1caeef06d7610cc1af239da02482214ce41c243a4b7d672898e84c43e27e169f30909ee70639fca629bf12ca2abb699034eaf8412eeaa9af82cbe899c2fc26309bbee447741ceeda2f088259bd01277a6d36d53615995b47b939bdf0dbd4088d94077abeb3909b876e9c4cf86bbcfa3affd6f01df490f51cc05951c222d64fead1e8ec3a63b8ca2f1ac26e5e4c9eca9c60aa9047560f4b2c617ff8a3052955b0c08707d9f313323cf40de4a25c34134b61223803d5961cd2bfc67d0f64522838fda0ad03bbc764a895a063864f2f2d66961753663c4f0a7e5f1e148ee5dd85bb1bbdace9a28e4733e168aae6a710a529b1260a722074749a79b61725a9104d0e3fb55685a3979803983e4391f74a051cbde1926665e08a4bee387addc0ee76c61a17bd5e6d16e34975155cff1ca5ec8704ed7f18e7ed038d20fb25fb3f245cdb432fd0845f10a40e1ec3131f5491065adf64e31372f9a2483d32267000d895e984209796673ecd2450119d8a45bf994f393f3e3a6a6603f2f1e8421cca9e35d49e6a679d6a54263a32a0a9f7728e640d3c18ba1e9efc70e7990ea7f87866c9f30e5cd85693798080f25c0118935ac0003449d94b616b49e9e6945b585dfcf0e9af84cfff3da7e2618cb25794071170a4dccbc7275a0dd395de148a2d627f15993985d4dbb00f8eb18721be4e207b9e7c6d75b33e94cc8b569280d3a09961d5bf3cbd4565c910dd2b9b3272102b5f6364d496b83a47210fd70006917ce09e0da28bbf5c72097b778b5d4470840d17c58ff0da9f1e01b2fdef1b638a79277f584563060fede817210df989e92b40a5ab8978c1a85faa4128880706b164005b4bab607261dee1a6bd14aa705605a22e0a18a4d5bd5a34b9bed8a681adb6e193c844e9b75a0e20c0220d97cbe526ecf2528b2b14b95d6d7c62c13002f9ee152151ac79e9a8e099ceeba9a69b388845ffc6a97f456920467c6fbd89153246ca9c9af0aff5fec0724b61ea2104e1219f4234f7f5d67c30eae57a04f75c6b7e05d760cd925ec45d153354bb4e3fd63c6973ce899910ca37c1133fee4fe31c6a78b63ba3edd6c309757dc0fee3d8e6e9648686a0c274e06624f74306bb3cad605626571afc4e4e64857ed88b385044a593b8355e767bea666b61f2cecec3db91feffd0de9dd84e604bb6f8233f77d6680bc4e431e42729424d60a15859bdfdcb994842bf626167b91d3aa23de684bdd8ab1e4b6d59390f1655738f21ac51cc8d78c2ad41c41d33f0312986a79666b0d31679e7512e7ff50cf587317d076117fe53e9332f8a11a799fcc53a23d1618b06b45e36491f7dbf42e0d94b6f454d4ccdde15db44506cea630efe56f74dabf28c33fe09f324385135902e71bd4ea8f9dcd2b3eb84497744982229a87f92691e49246cc7cc52da805990152c3ed877e0042bd259b5eced46701c8af5b37434963ce49ef1e55cbba36268cf3b98abf99e8efbd93ce0671c98c2caa29cb93f601c939eeebb57558a0c3b4ad5db34c55062225f74ff1dec24c891f7a67ca8c8ddb02486e373184a71fd65c39f930c456421da1890b3eeee52e97480ac9c13c883be48f0d0183a719f1f1cd7212f62adbd1c6989f262933f6ab0210cccac1760dba49c24f2f660c3d11f31aa0d02e30bc316713ed2ca51a255da29e664dc15a2a77558d19fc5a88f14e508bedecc96c5c7dc9789a2c3825bb442b6adaa5d93a51a6ca6f2089bbf724d3e4ae88ef5be8ee87067a2c5fd753aacde565966ef518fdd10c189b21b260fbc182adc0014bb214f582c5809a671673b92a78e72ea67bc9951eecb2a7c3e0c5a87201341e9618429e16cf777871e446632ca84eed4aa1e5293e23f19a2a09ee791729f39e2156385a4fe52841637bc594256e73939b1091cb880d940f57134ac8819ebea0093f6257dd59a4e069f4a0ef43f9cca79200a534f26658535abe97aa030ad15bccce343f28093f030413f5de6901675706c6be6ba1ca1fc8a4450ac3b20899a2a3981b918b6230c7d53d1906416d5dbf1b6f4596b8c5136a082d328e75ff28d6b024008ac598d2d0c4ada8fd646aec848201d3d55c9ca775b115390103bb006186d52d1696ccf506d91b3c40511a12329da74f30733578295cf859c705b28ee98e2ba6a43135455d88f78525224446b01fdff1ca86e23f1294963f87d01451f4a7fd8092e622e3aef1c82b17fbef77f18e16e7bb2029672cf0e8061014edda1eb975984c52bd6aab04e416d1c599b7f520dcac397aa5d6af02dd012fd02a3604903a0af50e2a6dc749a73cf90a7f3ea1256f8a162fe7b184de18e518e58b1dc328116114b7282973e7eca4dd21541e4beec78bd2e4745341e0a37d3cd2be2c8cfc01f091bb9eda0c5b9a9fc08906f519e651cd274c5a9bc381c6bbccd3845f1649e96bd0c0ce211fd27be9486e86862d765eef0a2d713945d8eef52164a7bf5d75a66497ee61d18219c015b009b69dace3177fc9a7468cf84a08f17a83623d8e4d44476557d911184c1a3f98319f00d1a0a71b81563a351a29cef590a07cd3b29656b1c799e90a23249803df3cd28e2fefa2e6a8c066eee53dfcaf5a75f7da6ddfff7f4cd461e8dcfb935cdd3c586d853b38c1490b9f7789dad44566a594d1daa723fcfa1fbf7a032aa7d1d052767fee653848bc666810c4933dc05f71b4750dfb8aa090196a85edd1847834ddcb7b279960acf842eb903895caaeb2b42bf6530a9a07709404e5b4e4c5e5b0d9e84c3d234e7958329db3098a3fbce53424a137b3fd1a27511a1000d99d17757cb5507b38612fdc073ded38de1d656322a3298e2ce51283d43d61d2aa5ab5d65b215b1eda07b8481e7a01eb9da6b63c426a8f0133a409b5c4701de7c8a3bb9316c7444bc3fcf7d738c6ed5dee2be17281203aeca08467de54ca2fa9ce64072cfef6ed39e3c5cb457785e84fe61deb42a59a01711882ed0635f6fd61b1614e8e5fd127752f205c0a071332ab012a0c53e15c2feae5d3e47ad109d0e5e0a940c51959893ce89ca84ab65532377d332524e6a67ee85224496b2d245e55a638f434142065bfeb2198d7b23a076e343b0eed94f62998c6a9d6689c037723111a9ba5c95dea342a7d28d437cf4ee4c46de79ea5f0378674fa9f8290850ec20b06e1245da7a3b4af039c7fd2dd2679cc8fc39b524b5d028739a1bcc1fce3b06c4ef6b9866d4d89c0d408bec09a5dcabff5a77b73eb70aa7d2d88cfb03d29fef056ac36ad54bda5aaa87da2433a32ee898196ed973614a840d543a28c05ab9d9fbd5dc0f4f8e004caf676f1ee1e533d9632845ac29d26f0b4d9273506fe8f8f8c99f61e632f92654dcfa2c0d80bee80bf55843962eb6eb041ed0e3d9e025fb291894fc379f37e5c8e1ff9cc48374326370e506345799671ceb5110a996db7be3b0b21e5105d823d04733f2d33be941f4d0cd49204a406106443dd73728677ce2570dd90886db4a4a31e7fbdbfc7f231af7ca2c936027fba3056e432af587aa1e320973a10ff22cd6aad739dfde517e0438c8e47a3a571df3f0c3eb58afe286197ea7e747a289248bae4a1e77510569f3e03167373dafe936dd88eaca4f828358a2a88e6c29ca88c672d877f50746fde32bf192233b284a1a8cd69d50b30603617d82af39835b648429d6311ac52ece729443d99629ce94fcacc79218a5d6a6d4534030f600b4502e9232d3d2a4c6a0fb8c5aeddd5321af715077a56de18dc54a6b9f40ce05b815e08a48ef62039d4d908d89affe72a329489f2ed5caaede4aa3ea558f8d456e93212c77e131d871fb944a6c7a0346e9ebf852d0c576b792ad2a30a6af4e5f8b4e65ac441bb6b6ff16b241fa825e37dbfb69d660b06fc3b6d44387202a10f1bb6f9df9e5d1ce17fbb1e5cb793ca958750ff34516dc41743577c45388cfb49426f894fe27ee20417c63ca6b846ce612aa4d5a4760868c411b4837de1407b65a06f2540285ab341b45ea9e28870cd2440f7278caf28bfc3afe1e0af29cb241af82205953fac08820923c97f5272dc5628609dbe0a7e5722a1609adb5904236c7f2aab832a5b084c9999534e161f7e74e23f33972c29e61cc51b253df66689763843abb8fe84393e823c74bd75ce470336c7879c0e5f0fd166055c74c5e7865e586f2202721849a6bff25f1bfbe448a29ef775483205b357325401231bdc7144969309e5b9aa2350b40dae210f969e20c34854195a391a4db4309ce6188506d719c21dea6f5864f25eda5ba19a923ae3f5f9885b3289bfe56ab5d918adcc9c5ae429bf55dbc86e6c4327770cffcdad912c235fe53901c80aa1d046e38de59a06052ad41a4097913e750d85fe15840f8453844cd20683f8baf2c2af7df85507a4c9e1304100ddfde14b0384bbb0861b70875964b0ec2fb41a240b749782b75ac0b39fc4e148202d7d1c601c911476dc242c5875e0ab66df6332509db0de18e09996c8783dbdcc6878026cb067433c0451feaf768af193c8beb3f4c30704df083d78b66a4838e93e822c066bace76a6cd48553fd391f5214cb6a3d64c8082c3fd9c49bd5f4ce0b0c7975ee92a42010fc446a23adcdecf1dd9ab5d0a98acac370439582954b515f050c9149b09c86cc2fa72a3d0d6fc65a73dde485b6b05bea3300efcfc58432acfff563e7b8694cde98b3d11b6e4de56e0c58c6881f7054ae4541f84b698b3f927ebb9419a8cf071f47f61ceffe3f89adecaa1a2e5d6a7415ce886737bab1986604966b10d774a455f794eb6518d5a72fd6bfa79a98c8c6eb82cc7e212dbb707957996d2477bd13e720d2978f3fae2c5ffab3eecba09a272254e77c063d8a4940e6349deb3951571fe6e4ee6d473e6b802e305ea4ecc30c0eb4bcd3fa2e452f4430bfffec686a89cbee450434ce9d20774e0c39f636f781786dc295ada29a2df9d856bddedaea842ff221a6b5002439306011a3bb44e9845acdfb92fe3c0fe7a60a30a413098c524731e5b29703f8a2a6a1f76e5d394bd93f6a593963695bdfcc140a71bee8721001f3f52b7ad57050d6c4781f392cc0a4af755ac35d7ff4d5a49b3a93f861ab4529c745d27502ea29e9e1648da625e19aaf9596aebd4215d5bd9a4f7d7e1ef033654ee389445c1dfbe5aa6b0a2cd877485b0e46399e495bf52d677a682ab1da9c30b93099cecc339254a921390c2023709368e15f3c814c40de7a19ed00d58a978da474310f490fb9a9d1bbd89432cad2cf41b02601e4026e3d6314651ca3e57897b3a66af84790fbe9897939319b3c4dc0e3e9b461aafb09b0871a4cc6ad537b44f2a6aea5611aef1c67d920b39faf744aece30aa275aa4664951b9ef3504edc4f4c53f4043858eeb3a32c0663ff8e48557bcd2081dc3add9891620edf11428dff983460817079f4c53f1e837634e7df4a5a955a69de453f0901218b8b2aa2387bd770deb6a38cf55f5c366b8c153b2ef35d05bb516566ba766ca818ba07242db6c0f09fe761842a2348ccc558d4067c66dbf025629b932c18bf8fe31c6e6a1384a0c1b64a9763b33d78794e57e7c6bbd48095d4ad92f4b2c5281332fbd06e4c2921c45fe2f209b12a377c1989045d6ebe80468d251ebea771780a7c84ebc475aedf232afd1abaf40ad903ff77be3752a745f5e8ddbff46cf737ca6a9b3c249eea8c65106bb15291281aad718ec7159a60b9cb778928e5316a50ec007d1837188f1dd306b3e61300b3681426e5b9fc1aeb83ed2568cb39dec0d0e7e01a9ae03fc21414f30a0fc035de08d92523e14532f6fb1abfa2c60bae27584fd1eb8e0c30135142b228a6dedf8bde14bf85298bbd9eff892f67360a8bbe79c9f76b0d1537e69856bb70c8da851c93c8903daa0150ddabd3bec7b7ea6ecab82d8f05580c79a0769489510798b24a83182073e01ca82235102487c33f0110c0356818ff5926f52616fbfb4c162479ec2d8f49329249f4512388d2997a8f33c558d608ebda3ea090a6518728571f25a355de02b087468f8dec070fe435b17776488db0359039e85c71c5e88e51216665cda1d58f3d531b071a8bba8c6528194e1b51eb1f7f431a34c4b4fd6fef14564e117da16e8817b2102a2bebc65a76a547e6d84813aed36c0042859a5c386880dc00ddfbd9e7b586ea2a20487bf88008634c629404031a10d0a1417f2af4532aaf5dfd65a11276cfc5067f1a0786eb863b7c3e945ee03b514cd3d2c915b99501509aa5e387cd5f4041af69a6e58ad4815c6e5be4204b6b1f6a95161103694e819ed0443787752b9ad2c1956b62bdad6f3c13ac61622ed0d67a214abbc98e385ca186406b6cb7946972bdec26e9a2fdc3afadc29fc38fa75cf671fdde1069005adc7ea18205ac71119d9b492e7b25ec5995e649e254c2ae3d989603dac8d5938a044ef9fa2ae32503354522d01f34b0b1923b84536f92774ef7060bfc5c8291497f5d4b96df471990db2d6244876999b19a4af86023a2076a0101ade6136b4ceb8ce4433ceeb3806395ac56d20826c0d8a3275ec2fc2d1402746569c82b2ac74f4b374db3e6f1daf8d62eea8b4d1bec21557812031248152abcb2b8c831e93efb02c8779df281091cdb5af67029a9a63e34152708f6a94b9d0fc5f2ee4943e64a4cc5d044ff5d61daf709a722f5613bf62648708f8650b2b49ca0ffd1833ec16870aa778267726287b9cd544e6fa8c4129e2d1dfb50cdccec62e5830f98064b3f95fdce5dc10eef01566af8421d36dd8f026ce354b105a5693c354817aca7352e2139c7256ef7f769359bb577e9779abf127d3bca08023ce2398010110a4ca09fba9979e072bb4ebfcc3fca3a9a9e25e184733f203b48b059048348dd69bb57096bbe1748613b166042e7d9897d13b1db76c8d57522dc595696d3a1f94b174de3ea4ecb63af13ba74de16fc6763e6419cdc6c85c68b3b222fc3f27a32e7587b0d482f7a4c9bfa42e7e0b39cf2491b0e37dc5db74756539509d0463fd36a228dfc5f9434e9cbbf5e930cde5f1fdd45fa688285b86c842e983eef32d30c8f8b2357cf60f4bdd242cc4b6071b87828875a533f53b2dfaf017827cbb122d16a895f1cd201dbe694ece806d8a023f325efde84255e2976d5662aa16a347078d240e0318a49fab96e0f8e8e4b92a97c47deac5c0fcf5acd0719908b17421a71fa85018cb96912ef9c86d261a167cf6f90eda2c732b19bf052e3fd330b72e3d8288393da1369a4f84df139fc0a1949f33400af6db56e93ea64cb700387150c13a7d40b70bc38773920b9d8d1db9352226c6def96c8a6982c66059f79a6d4770a070dc243319092d16f528d65a3c7605a2b90ef66c9f4ed48a332816441e19df047c39c802d996c2c220f59e8175d125be34b6fb4931b273edf4e9079b735194f18dbdbf6a66b20943e4c55c274085c11cd6e7a495bc1ed86116fb32840a51883598ca51e839936a3ae30a8cc3789e0e4e885e7f15bb6473f06d25ea247b3ffd3cbfef5608aa804b88230c3f8de40b630f6ce1e98b80654f8a3ec9db32915c7e394561c25e76e5b44b5eb1836840eb29fd1a98be27f2824ed97745df94a868a8012737e5834767c220a3dbdbc7a9d6e974520950dee53be0ebf52164cd352db730d3ad9d69471e8a67897b92cb0dc7366fe0bc739ff05584c0db59a4e8e638f500b673f95ae2d67b8056cb5112cb12477f0d5ad231ede1334d8f326ad942438fea72ede24b0d1abd12ba690543717a579e7870f7a6f19a9fa32f800cfdaf15c81cb7795395d276d1c60fa819b43e6f132650336d7165fc48ab20642f3b685f6b9f7a8803e1bba2592475fdbca4236f7b7597ca3607915838c0375cf94c2b290c1aa1385ffbbbb13d1612e03511f4f72b84f8181a5fb81da9a892b10da63b3d36b006259e35653e5844b334b4d1499cd4f3785ef8d7fe94ba8ff7a09b901d205ce39037055998be88aef277f3c89f6e8c2aecfa393ac78cac0e5310f434cb4a10743f0d9501f10b25b4651544796c7f011b1a60af11cf104b7eda4d7f3b845ab8c0b0ffb7aebab174d60a511142feb7af31fbfe137aa12e6ce3c35aaf54f92097f4718194cd6c7273f47f8545bb7f668dcc4b5941b5501116f4488db5360441c790873608719510df72bff7a4ec3d67d1d392bcdb03a40a60d0ad5d28069c0b57e970799a684de631fd112ace05cf6e83a2abd49d572b57d0c0d59e0adf0240d5a42f94336740a27ec079f166fb9240e0d0bc3219a86b15c291e5b28fa4771e0858cdb273d720027fc75e74e5363e9766acb07dc968ebe288ba70476500fd6a00e208ce62b881f32dfe6ad0d40b530eccf49da9317b5b54f9660dd1062afe4caf5c75f2ff29ad262de566e5164beef274cd68d95ba43a7eea74510e52af206f53e36e2882718dd8b85f3070e9bdef0bf8bcc18c180b4d670115e1b06ff06962cce0515c277609d6ddf9500f9b94855aea529008d1190b608b81b164e90b5534ae58551de782c364c843e9ba92b1852b48846f10715ece0ec2664bcca1bc92064ca5949ec7342c32c6b482a5883032f63d314e250618732ea3a545cf291868159c39eda0ad0ba5f0943bd85496d168c17e27e7770db2b7b9a0c70bfd9cb6b30f3d7fb62c6051a4d56e10697368d1d10c9d176a2c17a8d2d6118c1393df37db69ab2d8c1321e16358dfad9049ac28023ebd3b00e40fe0a583606006e804dd0223e4f47ed3cdd822c8dc9ef4539b8ec1423c7995faad252552cfe20c1fe6ce600b8261fe6d2d45aaa5b01a0bc948567870578e8072cb0e3f24dd2b5b1958ea44406b43e7ba2d45fd0bb7ae04dfb561d650875121464542009aa5ba6d44f1c9ef6d30f77acdc6f84643e0d1f28463e58a60624ab07a026c3bbb4c09254a7ccee245f7e074b82ca45ddff73d0bbedb97a61c588def5853e360a248882141573b9c04e746f169cef438ee0b5f3c06fd7a0fad344275a10ef67f289943ef2d883e400658f412d6bf6de34f392a2e8a4128b7d4ca766c1b35acda631665d4d93d8e9f19396ebb37b032e9708143b27782a0720d042e8a20f92f2c9a5b908ce229a3024d2a1d8c73aa5516f80a11023b392e97d5b8887ea25e309925c3cf28c5999be76ca788a2541ec1e7611a106cfd90a22b0e9f1babfb7eb2e5a825c6ea472b3a8025e0741731a72b9a46d4079a1ccc9bd0056caf0fbb680b00322a0a6668cf251556314b3d624326f7292ee62cea9226c7f0d1d2778b5f6530d027e398bcf185db5de275e51b1be3a7b3ea94194d38c2f8980e7ea27340f1c7b08eb226fd362e6d0157072187cc8ed10bd8e958b1411b2ae6a285f5a399fdf56d4403bfd282092b10b567c1c6a3506fb12743c737f3d053fdc66d0208b9f1b394ab7f3ab1e4d5311e12618c84cb5e7aeee1bef3c58c9c40b8420f0932a2bedccb3e5104dc9a26840fb52bd652fe9d5b607a76091b3471a64b80813a02103257cacfb3a3eb9164ae33ddd8e09ce205f1ae422ad9140a4b9662fc047b915c3450a02bae912ffe5f623935d042ac402b070215a511cd1309bd05ece88317a0bbc9a761e46ab6cc9f321b06badb99e9b46cd350d7f6f77ea5618ae7d8533ae5525241d35bdc857de3ea5147ea111376321bc850928aec781a0dfe979a4e0e48b1a2e08b4fb36f4390df1fe9b0ea6d5986a13f0dc675c5136a02266de80d452cb5ee0eecad526323a3df2bedf59cf3d0bff7d6f76b7bbcfc390d8f8cfb81eb4ea4eb0f5e8c504a5e786817906da7a19bf0bf6e9d22faee199e1489538ae85fd90e32d80f7579e15e196b729782a48bfe325c6fdd274d5b29d90bbf854ed526eb062e00500c83d140688728f05a9b485eda3d49903d2ec8fd5620b14eb1fb1afbc2f4731b9f3ab2cd0be56ced40ea389ad2709d11147af486cfe004d879dc352ccf0a986d323d2f24ab1e459b602ac37c6b0862a1731337ecf7a0034b5bbe1d4d1d9a687d3bc537d21b3504218ce249c492d98b80947252defaf2eac8fbdfd7a3a288a8ec8518402f96525552f1e0c038a9670f21a186aebe47b36e1e8009a143aad67ca90f6abc45c433103a4e5f7dfb4fff4a057554b4a71e4c5938a29f2f46c8cdcd48a4c469eb9b354ecfa8cad620f7029f620ef9f6b4d9d056acc9583e7557e7074a9a05de4fa42a380af7a0624eab0e24886c4e08feaed8ef38c5f4f9258946841c46bb03437cc838599642daf70ba42a4198453ea242c093c51f540a6176092f8a436962cd28ba48151ea5fd5b46c1cf8761be862ae6d6c0524fa14840d4dd4d1d9e1262068c9f2c76ae9779f1eb1342876a0ccd2aa8e161151eca62435725d13a31f234c1f03c2eac117c33c2a7fcf26c3fd92591f134da4d9e6e9ec5abad3a6922953d46189066f058c0121e917edcbb6cda91ddca662205d6d7b9ed93a67931ffd9192745c745ef410a048b9bd193131a23338ce77322032a11726dfc23756b953bd4f0e7cb1ce0a7c98d95691787cd7020dec8ae96977ba8cfe285dbedf4c85f68787621ef40797eb7554e353367c7ddb817bd2699924e66327cf1ce833e7eea1baf842e095d1e60fe1f8bf0830e1d1a41b613f2f7816030cb17625d9eb44a1bd414b0634753cdcfc97e4e387f2f140325672c9245de0f92f07a4d185ecebda233374f531e6963f2c2590b7ebbcd4c0b1063895e75f858d45561ff8dae389854a37da17624442bf019f49372862614f539b436f9b82de54f62f9fdfd96b6332104ea2de4196a4852e3ecd741b0ba4f8aa085dafbf177bab3aa30c2ac49da3e1c6ae32e398a32cac5ed772de54b981812312c0b3eff619d537e52acb4b390e8a83f0d8fb1d50642aa87c372ca0435b4f7eabc5819b3054ebaad2d7fc4495ee6c1deaf479e7953725d6a03421d7217660a06a235883306b20388209367b750376f999c91f69c15a359f52008d97d099c106b84d8d301fec97fc9c1095cf29f975a350e36817a44bcd2b82a3a1d457f1d427be4455db4479134faccb5dbee7133691bbf142792038c09cec46fb9bf3003507d369b36b516fab6fb79f93726742224238ec1892e386709650e576d9f978486865fa64cf5322801149a42f021ea7436e8775de1a36dfb80dffc24ecf017457e0ada075481659e8ac2ebf87dd3fd1da096042ba9a027a7b65356915d576db33c704f699de266db89f4bba470085057154417cb60ea417020f0d475b612cfbd1fdda7e420013da0dfdb4a8d8a648674d3410543d8da510a54a1cfaa14b91a8d07c9eb95587e608c1c46e3cc887bb427aa4669de5ec56edf3bce61c149e8b0a55f9aa65aab86d349f7fb0cd886c091ec8dd0cf34ff464f8fa10c9f236379f9d8b2888377e536420a81849df6f0362792503cd12b752b036ec0cf738b76df616e1848ba581c89a169522b57d09f86dc029663c35fcc6f3168a74d11d0ba942a98468430bd10085a10dfc29df6e6075cab90d537a2cbca1a81508b7c0eeff7ccf7a08e229b1b129d31295e1a7b84a20d449822a1919e25657202893e2ab0ff9ab7d08918fb858d1741c028d9faa4358aa616293c625ee4678a4085d58187bed8b9d03a2c8946aa90f2589574d4d360a245e43ef1558d375a11dbb9710ec54cfd845327a81f24e2c661fab7b75f633bf01843538ef7d3ca00661b16cdc12c02014863032196c2e6251e83a4937e0e575f9425dfde44d8e812e6e1bc7bb24258febfae50f0de6d205465d666b7f73ae95568aaa46af7622558f5d3e8ca26a131b22b20e76d3084378db489f64b6c28dba6a3136d77b00b6c33b033bead75a7d00dcce43aa0aec9c583d55840d2a75be961f8424ec05e34fc49d7143f1d02296d5d2292201e7c96c0236071074498f309025dc58b925d7bf34a129b39e4d44b55e6b278731a809103ddb11d7dc034a2876ea4f393b97b9435519db5f864c452ec30b88673f160b93617fed6bb1e007f46d0375a4fcae850403b3df8e48601717da1ee1ed3ed2173ffd01525034a58e2c46184d908239bd14b6c625c7a08d909977731ef6951299ae2ca39c012cba7514843258151700e78901b6a522bab9352c7ac702b33f8e0a684eeefa5c56a98c216e372ce890666c20a4433f9b457d5deb7b5bd3d5eeb8ff6133218b323c65eb781002517bdf9dca8e04ebe03183bd271018635b1c6024303a55ee6fba33edfc88ad086b350b675e9ec4ead97e1564e2acd9421e3237bb68dd6c5601fefdebe5af0f816cf2ed0eded7f4b4ad24f937722978f75e08a751b466f68402c903e8899fe6e8f493ee71f992b156da628a3b97c56a97eaf9fc2d0d6050563aa1b8322dd26eb533650134b85b2572837aaf692d46e78e18d25f009f6843033f0e5b2d97e104a3216078352536e49de9796ec6bb65ff96c96dcdc14ce88105f3f0279cf7d6e64150819125379281e61829ff448cecbf9ae648702777bf7fc8b0416f7d7021b6197337178e9a98e100186b0c745279a6b1e4ba8e40c66d59c205cd512eeae96e4b89637ef464ee351fc489c1ce0d1a68d35f82b9182a1f63ec5ca04e2cb49c9b6a0add19127c0901c3667309d2fff8213bde3ffc798885e174d0bd9a6be17e9335e27330628c0005d6795385dd601f27b2b4831c1ff0341ca0aa98e06578012bdafc0108f37c5aa2a33867ec2b9460ab33ae8767d1a1a6be923cc8ec5843a7df4553988cca23da753221c6de484ff886d786099515fb65de469684cf3918bd64a3329ba25f54a784fa61bc96fe5a580eec573cce8bcc2bf28db5c8068e004cfa8e2015de0419488141cef5009db54e61b6150a841917faa434e1dba1f4c3bbb7ffc6eca0d36653a62b78a45dacb3ae576eebe3d34252000bf120f3d14fafdd3c66cd3007476d1d32a29c33f05064f17f7a5f70f937a0ebb3f3a3f509d7dfd80611404343aa38bc8470683cf71dce169c0f1e90bb3f7bdc8b0b41fb2a451894382415ba26489a7fd3a4de692968b57accb038d13bb2ad2009f865e9433a8158ec235c5ae2d0a61065e6e5ba295c567e76602eaad8b171ccfa6e6476edfebfa49901c3300fb45f065340c38321be8fd3a0941c8a96536b1165dfa31a901e23c099b6e5d62260b73b5382bbe1e031e465c0af450c87d285422c71d86f5f9201b33e2e8f18e25793bcf1ebe7203fa916a65297fc3c492d712bfb488a11f2f01c406c99f74919ab9fa375b5d8eff0e070c3c935ca5281c53c346a60d48b6e7214d0d7fe52da93992511e07d45008160095bc13a84b5b71e67a3be94e0514f19e4fc455ae94fc8369b4735698262204e45994e464d8ce11dd37b1992c2708fb33ca3cdcd916d74f8f838b28a09ad898f419457297bd5fb527e2904f24aa228fcd4a2fec2fdcb65359364c04d6b69d6cbc2b7559b3901062b705232fd0bad1fab934b02b1107169a85a5a61c16093cb058010534ffdab201c68b517a339c2bb392766facdd250c237e4a4417301e9fc2d1f667975026f50a4eea869955fb60f6769fc0ec3c1af169d0aa001f2be0e8fae6e096eb0a54d028f3dcb432ab02980ad3dc644debafdc99ec5d371348ae66101fa1b612f93c5ab3fcee23ceca959061f131fbf01d4435782cdec35f4bb57e2f72700687068b674cb661ebf74086b9f7744bfd8d1bf5791a8c07ba502af186966b5974d0ac81b588735ad266f7861665158db5b5e7982e78d7c1d45bf7709882382d6abd843ddad0bd7cf023b095c1de8ec6b8d9a0b9d57b60aed23fce7434bd24626e71cd448292b758edbb8c155b8b1170212b6a203aac5f1aa21862deacee4329840ff94c03873c37db08c633f9dc9579ec97ca13d51d4e542d11afbfd4bb0f05ad03841765525ed597c2d7504aa890f2f5f7db11355511e6d741443bae13af195d4f642db36e3807e85ba13ebe6a530e366567697d652f357f517566a660d742446258a9b63ae3f404f7e22109d623e2f5bef2795d4fb689ff5ac00fca568f79530a3cd7562b60a060b70529279351f8cff54978a3fd7fe97e72176ca5baae01a185e9455e2cc96e88f826f93e7ba75bd8f8efc31bd2cb313562d4a0d03a46cc766d71d2b1ec913da57ebc33325bc86ca03aaaae5f6295420c18458d3d7f9e60ebe8140c2820d907ebb817908913c16a537b029cb2ad29172435afde6bfa45d2908f973a4fa23ee23bfa121d3f3f5b1f144978fd5609c5f3286e35bdf640dc2b724c653c2a9d9b816cbbf6e5961a124c0ce27a2b833cd13ab319215a59b28fcbe3ce9c035be800ff2e78e507db8baee3f826318248cf9987091750aed4de47b13f0fefbe906b06e61e9f59785a2055cdff788099400a28ae4814288a543f51c6e4c676d8199c6efa990c51158342026b8bfacc705062a7aa191ba6c595297b43958ca452e1b3fcfb3691c4da0e68fea3b4bda81f37c1f1479a3ac6656f776c1b8765a1918633fa50f6e9d534c69e0aebe0447d296b9101de9a5cca99fe3171b647ffcf1ca70a7637906dacdf6854f2674e018914c22269b4e75a39275a9cc9063f952a12c594ca804e6975a7432e9b37e2669f944c7cd9bf5663e231668bf232e51bd933060fd129b807a6993c253308cf73738bd5bb9188593d2f178173015844e02f35dfd2a4964deeed6c7234dfcde55bad6b1e869dcf4e6abebddb9645b14f4f64b9aa78fd8d89b06f30471bfac42abffcbcf4c3e314363e9aa8763da0808d25ba0e8d09b168428432846ea386d6cef010f91fb0ed4dab5ca6af56a75276b54b614f15270db97ead9cd592895c831dd6eb14883d5a00365005a4b822fac1bf5ec70d8558a234ea474f82ad815bad9bb8d1dd5df267d8fc62f3faa05eba68e16becf1508af5fc47f537aef89dd71dda19d99b945214be563c7920993eff873c3fff96c3a78aeac841618077f54cac6864183a0966541edd346bbb0de67da49ff12dc3e3b15532211f7b2792af9dd53600ebf09cf86dab50219e0ffe890e2baa11f2bfd3d051b91c452f87d0da0c5b43daba15844fbe117663bbbb0e814d6f7084033b64b328706b48ff84646ca0c53e6172484cf2fa495d1fac0dc65623be8cf6e8dfa590107ed3b90dfafa94594c4e3480df4d3a512fe370a9a69353f12b1338f1cbbc44c10518798dfef16cfe276cc99f6e8811bb2a56371d16455abbec1202ef8a3c449d5335f038828a9e767251f6f1d7f2a6f037413a645dac5c944f97be12357d72fd5156cc0bd70bcc486289cc9658d8057f76006b2cb4d2616e23bdc42cf0f352654544ee25e532f6fee11a0808e02eb898dc993d8cb1f34adc19e3350b582652b9f6268726502aaa7cd70547572555afb9157c67ce3a31bce54860c9d3ba8a7cbb5a81ff264e6fc394caabfdb2982d629191de0ac6c34d2c8cd22398c8c31d44d9ccab9bf7dafa4bca4d455de0b31cc6b20ef61ed042dcc78b9d36720cd29080d805dd59c9f8e602aaf7086d47cc5b8cce07ad3c0e09fc785563f05d97d2e0386c984a00506dfc84d11cf0af9240860578a80c44a159dbadc2225fca731c622d03b3b94c39140264c890cdb1e0cae474b5125f6e40f1278def253ce519c6b21a6bb0940a286e2f6ec3e18db07b291f1ef35ee43f803ac5b8f2fe03b74f521eb44c2f24757291b7a445d708cbcf06ed7543372c5f21d0701c8456e8e9ea23cdb9184369339a384149bc6041819b3f0faf9a31953dda4829f791c8255de18f442318cb642110c08133d1bed921f3fb109c0d85f03b513221025bd257e3d2238f1810eb3227d988babac8475d5e62232c0bac3d02522583c0ff525cffc450b6f8430292f33fa9c12bce67ddb39ad7d5ee4ed057264c529cef28cd342c3ea44fdcadb249c8cfc23ac3af8740343546e9bd39b7ff0250f230b4e6a2a8d1e6c4e7ace400b5f6a0f9fd1907c8465cf1354075e022886847912e5726af54034f5f51a6ffef5084201c6574efeb99e813dac7a7ee0429161d77cb2d60c00971027fe99bb451362ef7bc68465c17d6c48451cb9502f0f72062642a77593e45b6a78f6cafdd4d05824789521575a9baa47467fddb032e08406feb2bc10d1375f97409f3d4d9ec631fc2032d3436f16320d57f7e53f96b08871a4a8b34d7316b76821c84d4f4a1aab347e4e8214f6b69a6de5bc5bd39697c336fd76200f03db9be7b16cfcbc19c47423eeb99c6d38038e1dab3f7c02e61c17707e347b45de40a79696b1619e54e4edee1965def355ab9c1da32534497a9154a2892480e452c8106bc1dba777479f7bf8e2f79231afcf72c6eb2d57bd2eac1110945fadc54b3654e98298061a956ad3049d4a6d2dfd0bfb60b63981f462f61ea36e03cd337078b67fe7654d1bc9348d1c0bd01ef0cddfec364ba05642a0a0056736495cc917f227d2257bcfeff5e476412a71f9e539f7c79fde52603afa9db1334fe2072deaf0fd3da0cabd6b50e95cb77e16508db538de8a2825c6432626530067d3a788ad6124cc630ca1029cf9b24c0a183a259f9f9926c2cd7dc6d5374d515f6de411d116f4bd3869b70668a5f8ba9069037a8c7311c026aec220fade5320c73a1f9ac9ea0d5cab930d43e762970020765deb2768ec1bb439ccc083b1e3c3b2d7948026607ba8eb912dd7ed2bb28952619d97c35cccb61025c26907f136d705e7967c6d66c2045a9325e7362ec8b80324014720f2607c3a2a00e36e1b53b0eadb9c72cd93dc4ed320cbd184bd90825fcaf38d1e5ec63f349ab9c844cd70d355da7eda757dbe989630476d6056cd68c833ea6164d2205e6536e0972332dfb4d29c48fae327202205ee78139dec1a28747f54a81d975f94222bebdaf33b528050abe0226bc264b3493cab15d3cdbaf979d45e6286903fa960db0bdb48d9e0822756b454eb948fcb5c9b56cdad354c9309f378952769965f5a6366d01326c1f61bea39c228b800960bd42df5b9286e91af782283b92af59c70b905f4e5f1bd362bcf34f6e61f3ae8c9448dea531163182643850514aca82e283a71e4d44e6436d1a49b8cbdecde297183cf0b18a5182815bf9e8eb34c9f20e7a04ceb4b3913d6e1b660ef8c179ea6cd9c9f037aaae9292ca25f28963e6656bd6814057e5167e144c3aa2bc7addf3f5264eefef8c9412770995e41d2814c12ed7bb24fc8526560e343d2f59ad30e651c3aced23650a767429e72fa9d59406ca5fb53d967e441b700735f648debb9f8a80357ec8428d0bb11815bf3c356baa9c744b728bef63c239883f3c8a0d93799c0c33cf0582b75e69a560062760f028e7a645e6b7ff45a202223be92efdd7ae7d178b417ddd4279bf346ce653c56b0e5e55fc19977a1e8e311ee9118625af3c18b81ab3bfe38bc0be4b348af5ad34cfcb19fac36ac50e234c947e8293b776ab6d3b3f7bee1654224bc990a19c2b7f42536bf8473ed0b5050b4d37dcc0770e2cd873ad60b714775b1ea40ba73a91e3c4f71b0e33304561132b7aa93670d31330406d42bf37938156754f9d35dd9a5650fbdb9e4833d3ad5c5dee2627b71eff496e634ac100f0521df7b9adeb276f8dc82c93afd83faa032f6adf4d319b91d9e90902a48e276603cb18eb60ef2f854c93266e64a0ef3459e14b66087e6321ba29af0465532ad54b237c3371e65ce26b689d8b58c7842b575309b97b53432084f39bfc79a8f8faa1f31079dc0f355744b5ae2c8f9496675b68473439777b46edd8423b8397e62de798069b236b2557b8900f8a075afe9fcce31aec02ad00358fbaf02fbb8137ac2c34377c86655ec7a8036f9d9615faa2a8ad634147f5f37731b3975824c05740cf2f9c6347ec22b4375d4d02c9f89e63a2b11c75aea4e799579e270f2d2b5f14d9f6ef11437746b9624828f675a3ca81cb0b38e999faceedfc90e68c625131b94036031cd4d2b7779a9b76e638d8802ddf3b30699cf44b791f4fa0305c8435bc16d8a2b39c90862e961ce7116a1a7021810a20b1f8bfe7c619a0465f75ffd21cf9fcf2141b57701085a95febec7d0d85137d0ac87463365316e2ad4c63cafbd5ef92e05da2eb01b8d293313bff1e6a7ca9d468f44b7947b5372013bc6924aed8425daa7fbcf2f74b12740d66a945dec0e8871ed7f5a0094689b6a6a1181313c0eae4df4accf714b76b5244f3e919ca167b7633b5ba2092df9959bf1aea3d1b493003fc221cadce812802a8cac6a6c753c0b143deea470e85ff474482061a2db005cf1a589ebf915ad52c19c9c7e9c81fd7a25293fd968741129129491e5a7c15d04e01ec9abbfc7903827eb168836d59d96a4fcbc4274d1e6e259718f29dcde736bc394cc9108a9cb3c16fcd45e8e30cb285563f10aed0a051196e8af9d2b0a88273b580258a2e62adf20aebe867c46ca2d3008e0de29fbb15a9d2324a358e94db2ec58f5f15472b40a0f2954ef8515cd7fc4ea3da813a8e67b72ea058da818f07ccc94f6a69d34f013af5fdac59e9f4d24f51c831cbe38696ffaca9865fb0417b0135443a9d3b520a19a438e0437c830dfc206e572d20823ec64e90f0ed5aeeb4ea9c0560b1d6ebacf79a765fdeffe6e5be4d8922d0724c9605202c15e69515683c51ec01ffe9f681bb68db0b2cbaf73a71555d859b6c804d09a63dce41523f087ff2995ffecada258669bfd545f5f4e6662a7d112341a4b22ebd43aee181a6bbf8ef85a0acfc2edb79a8b752520129bdcc3ceac307e36086adc113c5e3c5ac43eaff9ac266069c041ffeb9b5c312d16f446a8af1e067687673b53f0271b7d73d360679df8bd75dac80f3e96ee3b5cd5da11929000294c8670e8c924586d0504bbb192630de29b39ee31d76f0f5b40b802445f1a4e7c6c0f99c1eb0f6fe895ffc63d44ecf7162c83447d4ea491965160e066be2c5a3efde3667f91dc928529d9212392d56189a619420e18be105e7a4ec051fd814ab966328983ccc7968d94c078bae011458eb8d8fbcfccaf3597f016f872371368795de8f9c8959a34771ada7af93a81f6c8a3131102b9edb40871058b622ba862a4614caa369eeab09ee3b5fd9542fe4e62106479f5ae689709d3df1fe1493b56d71ab3c4db00321df1cf7b102e2f1093725e115e34fbb9f2d3b9fc2ca6220b220c622cc8dc91b06b414157cc16e22b4e14c66a749e89b7723f9c8e27949a8e9cbdfd122e01c97147a50cc5742b5efe6fa576874d8e5b69d63421b59e95b31e7c5a20332bba93e2ec2672b668067cf04b8a03bac664c0b5918ef4368e61c6517583ea92ac389eb704ffcd1c62668f9a71da7ad811da0995155dbc657a90970564a8e09a5e14f46cb56c549e75ec37b8c14ff06229998a219f0ce3489b75ced43321a631c155f3bc9d5ad400c4a544edb03534b10e6cec4ec5e2e02b01603a38f1bc00b051c23401d25436493ba3cb1443f5ee2536179301aa505638c35582a8251de1500b8b1e10835fa690b7f74ce26eb1b76ebf076d5f6519577a5a8095bfa9ca1d2951a532bf02f9742e639fd978a22d5a357973b740a1518b7de406fbda0e16af3aa59d8a43123dd2587efdbd7c99356a8129bf63d8dfa7c98d7c434ddbf003abb646417229c621723a2302f309e01602bd6997435dcb9974a26cd4bc1eaab1a9919caf4f06052a9aa9ef5510950cbd0eacab9411e9d6fe7fb88d13b5e67fa89de1ac6f8ef96c99a6e2486180f9c6e2eb8ab17441e5faad1d87fdd3bcae9a5965b966f107e483f7e675221dd2db876506351ff8b28c9eaf1786d596d08a5cd741d5def112d530593c8619197e57a5aed64b113696bf66dbfe1c037420a1f9aedd246b25326489cc632e8afbf31e8c570157b39e742d6b8d219412c0906c4519494c7a0ee7938d76dbeef2ccc8a4840df9a856d34775d9833633adb086916df2e3b8def101f088fd860a1f35a0890bd73f8610cb35ff785ac6a852b6b41f7462c4316bbb72f29c9773e5127eac1055d42f9c05b29b37d4a4aa861fc69b037d12acaf0546499840172e4ad75fc7c663f10fb6829171763e23c2286075b199fbedfd68ab3866c85ea5fa5f512aa4f1593320ef5bf09f33b696492340660eb0f2794463116666e54dedb68da7e66c8f3290da9fcbbb843f8d8397a7d9167bb148c4455d7f17ae1e2ced35dbfef82a2aedf30ce1e66bbc8e615f61b3f6063043249295e75c29baae75c994cd147bb57ab94d0919636496968a31cc2b3766adc1ec8c4a0bfc32241479ecafee41b5f6de8184a06deef100679707f8b7d5a060e44eafc24b89163fd5fb387bc2a420b70f5a90b7f9102795d43b453a8b2f0084f6873e2fabf9b2893b8afee6488fd0d168fb16d4a243f6eb48f496df982ee1c7cf9131e7e8fd3f8a124ee9a041aecd89bedc587a98e3244690973037d39173f274ee9c505c759d7478c83009642f625b7a411092794f9f0c91379d85515002753415568a526e07368fd9bebb108d09e452256f323f50f2561b5aa03d4cdf0174df50818e68beb465013c374da069bf8f1d8acc5aa4058894f59f6503abb4134fa1ead782d20ff10c91bea91dcda83e44b7ae88590b9920b8d6120db248ec664ee2069696e4b002e18938329e13224375c9382789666904374fdf81a3505c70007361ed009628b42dc3ab5f7dfc64316ebe1792c8ff36ee1d9a0f25ac0d7fb5b515cdb384f54a689d1dfe17ecf218ae2313e8a4fc6b755f06c5e1474d8289f170545dc6acae5f14bb4a942cb75000bf8f3f900287e1935f7074caf06ae7aed5b0be7f986056dc8d6d4660fba432fc83e564f0b4cfec78872ca219e8185c0c900c46052a7167390a10a0f59aa367a413cc3cbe18bf88c6a86b1e9a521b377273e3f96c37ea262b3564f7d7d6cb53e6875c978217499c7c69758b928e659f40e1ceefd96131c8cff43e559d3908ae07bdcf81dfbdf4207c2711ba40f7c48e4362d145a31ab130bcbe47b6e7ac4933c9f8465b73c190a9baa22b1c69b77138a871344cf7eb207a8dba76456cca3a201502d2d27be3e527f148f50c1ed40bce8354c9b5425bf6de12c75b8a1cff3190c83e118572786f05817ed22afdd0fffb047557184df0ca533715dd9523ce8187e6c0b4594e3fe711a075fbbd24b56ec3e191261094aaea0c0f62ff1b3fc1cfb5d567df0dce0d63ebe34a61717d77fd12f682e50b247f368a45bca4e2311c9fff787c227083828cf65053a43138e19cfa99147df83ad352e4adbd655e7669cf33b9431140767af53db69561f45367f26f1362de20f443ad66f4d3fbefad5a74aaec2650680f1bff689bd925f595468f18b4253675d9f534ba00fca3c3ec756377b75c4680fd4b9c71fe291e3b88f72be3eea228e7430b08817dfd41c6c2926e6711f075a368736f112457dc95ba3c5af1fbf5049c10f31ad09dbd2ae25384f0dc9bbfd385a189cb03ce327f4c0645e3d5d0007d823656a32c62763916925a125fceee890ba62bfcb9520103cc30e05ac0b816e3301033efda1926ebe132579090e0460a2de811bb255c2ec757155c7282a3a598a84b1f6c6868d332ab343dc56c8ca716853153696ae3b1971baea2e841bba5c5dd60a13a9a110585a7e1ee0bd51ad4eea4567250f4fedd61ce34dcee2894e4180e2105944d20e5bebe251fbd8fbad22f1e13a3fdae866ddd67121efbb8274063d52fc66dc866dbb49f6e33c92bdea9e2b21bfa35156a8b998e01f8573cd464ee2c5da2d41744900154a65cb3c82a4f512b531cfdee737898f550634d2a3e763b67e2af22562fee9463da1d008057dc7bc616c8f9c4211cc67e98a37d0bba508ea60a66c8ec818c1e50df7c39674440894e7defac18bdbef5ab95bc9e879e45c22c27d65483291eb3e93ba0d712deea76cd635e55ece92e2c888bc2bc8dec91ca794d29596c690e50b485904dd4ad6829793d269e6d2b24c8efff1308a6bd8730694cc455f3e2741074bf7adb56e9f199ad4df1614835320f99d3cdb2a2187599dc6a44c675f901045621164bc564d9240c0d980e6f1b944daf5f5baab5a2e04d4da30bd2b596f9c8ca97f0ddca43aabc4719ca0335e275a37e590b33ad7be606e71b90e6e9403bb083f400bea7238f41e0e2dfcf3ed1f6ef9aefaeb40580113af899db1b070c1fa14f0c65600c951c1df679c6a3e5f1fd6b500a66454757a545d83e753c5a9ba309abc3df0b5dbf6cadc9553102da6548bc3d48a51a33a994a61bc899f92176c99654d61b08b76dae7b518f9667f94d9504b01e36381c58d4670e89875b5ff5308f5905e5d6c70226d5593e3a27868ec9e82ef2b0f68e7994f1f3784920346ffc1240d844c38fa904e751ba9ec1ea237eb751987f5c1dc01592e6c75827aa70672972c346c9f71ab861b476841df405b6de03665e9885011456575b99f30feb158db2832f7ec42877e3aefe73b2557f1b91a6beb93a330b2348eb5adea8f795715a652e078ac00ec193b1320f6ff9df5cf4fe896feb9f1f036a96053badbbff0d43115948f0d8b9a7fc3c8c51d4540dfb363a1a3567e7b0c1b7adc442dc2fe88a592acafec8b5372808f8841003eea439febfc64539227eb66d5e044e7aea65e04a43a9390d2db2c43b9535978e69f69d278e58ea3d7791b2ded081e833112ff770974a82e9e6483b98b08197470f967fdb0907bfaf61f751f7ee2f82b6a8d059efc9d29ddcb4d9020a1e14bacec815d1dfbdd40a7a6bb5f0a2984324b5f957522b43bab652b57fc4179fcdf0d2ffb895ff6a7e73035cace6c29d1e2571e8b7ec5a1a73e20539c739b64e09c0c3eff221b83a658771470f50c50c903269d2ba8ebc2999ff664050d320d3f82eaaba5234fe28776a0ba1af2346a72a21e57c044e2aa2cfeb7a2fd85d604219e2000f0459275aad0a861962638a7314dda3d6aa2ee219e839355ac67158053bdb6a6b17c766dc55e28a8fe543959ab4f8ec21c4bd07180f00b5c710a1b54dfd02eb2c8166b82a0388d903e8d681724e984ae7af1a4c5e0a3f715778dfcea8e849c0153ba6382dcfe0fbbd56c6a84c68dbd62cf69648ce7d4b19a794a1cdb132e3b38381e76ce4c4df68c7b5f3150d62dbe33c4f367b21ed74a46071f42955d3d599c3665c86e9afa61871db2059064804ea39512c29d29a0aaf9d63ac4070fdf9a0e9e83c96edcbb5e5370d8733338ea442d683f3e115cd7d404b94b6ffcbb259abfb715039c6358e4c8ea0f02fcee15c3b298457478a78ba86a8b5e8f1e05e619e589c8d40fbd0276c6736a66226f396ecb867e9cc30bcefccaceb52e152f42b5ae3b3bea787d93917fcb8265db0f44148a69a8ec348afc6a9d55dada7494a1373314e2d2dfd246037a71d45f649bc625928ecaec202e05141a241fe27c3a13f1112292b5cedb0c7a5b8f021d8bb7ec3c732faa77706bf87aa04b53c2c8235af24ffe2e5098fd20f4a0e60d22d6a02e6b3703b9a625fa6b81e5a0b47ebf7377c2fce8d122221896c12bb74704d0cafe8a24f8dbae6350622f4c3ffb97c64101e44a9a0e60d99ec55d8267fd40b84bde8ac701b23f8fb61abbd3112b8198d585ad951578fb4eab2c4d6108cf2a6156b9519a7d947ff0e8f9e93ccf16c6378591d878affb7a50fdb52efc549903c4828222cdd1f4f3d70703cc1b2f05827682a5796be7287228b84529da34800bb3b540380b7fd1d557756c976f9cfb2dd084b6419c26a47de80f894da7ee5009a3e67abbba415058465413314485d059ed398ba9d274889077640acb79461e3e7d27a91192aa33f43919cc0514a31ee413b8eb235a8c7a5219467de5208aac66ba00dc925f43dca89e5a49e13cd3db1a69d3a24b3a8eb53d7755738253d6c64dd97f98a2dad92a04daafe963f241e08807476aad53d4fa618a59922e4e06760f8c5e3acf66b679781cbc376c0fc9d6c5c3f0e1f403c026a9bab9cfc3433a1e0822af42871f5854acbc280af506f5c01dbd7ef53650d4af512f50603fba1f722349ed6b7abf94b73efe1f68ffb8a03a706d01eeaeb53ab129abf7aab7ed2bb715047e4fe9ac93932bfc1a0ea1266cfc4d15124d245d8868ba4bd4929e31731e1613db64555a644c67ff3f59c3e425455f7e7c2e26755c4231901094ecf59b8f2a7097eafbddd05629d50bdccf0fdbac0bd1e3caeeabfe5b267f61ede9f8b4ec17e85e395a5a044ac66a9420d54ef3247f6874af0c9f94a502efa72b3acfab261cc8cc6e1f9efab488af762e13656352390e4262deeb221a162d548936abc89b5112f36856c61b35f3a3f667ad550e07aee8e52189fee02236e14c3a9d9f068f6fba45817682ec525def124319b791a0f04e25c0e8f8a37529a45af02ed0ddc70c28dd769eec289bd87029ca53350a8d44aaa19509c0607434e573fb82d7350b0d4716b059b6e7a50e2633d700fc081c95a6d79a58bb8d1b740b910030dfb3212919748660f9e47690c0b1a0c680e1e2a46d732be33d2076df6a70dc0f1f76b8083601eb074c23b7093f32c9ada85eda4fc2535b27e9dac531b39f7825c2d1be436008c64ce1afe6811ff1a29a41fb36f5ce086050ac8efb93386333db1cfe225be24527cfd81f77b17d8f9a0e48ccb12dc27231ad5f466a8418fa2b9f652dc1516fa620ae5e804c62c6107be12c50b3c42cba2380f6f9fb5f5dbf0e0bbe0b3440649f38fc2a149ff7bf731bfe75eb40e85b2c97b4618da82bf23b1f58a06e1908ead5b692abf43e14723240bfe3e867be2579716179edc6207c5ae714b483de13c2b086673d9270a3a870c157a6fadefcc2535f178906f171fae7e51b40519a01f7d06c2803102082ad0b8c1e970402f511357ca2340ac5df03118335db92720abee84c45c8bbf1413dcb622d01413caca1a361c5fc5c5d0ab180fa330cd3c726fd67729bc8d7d267660c278d8ac1d6e5c60ae261d498765c70f02712d91ee905f86cd8d40bf195c370e0ad24310b7734b47b5f8567daf96a2e13e4def1b83c45dfc4806f1dbd959d651c3137c6fd3ddf5bc23d65bb96d84ed55dbf6a7788842968b46d5a72c1643a218e919c83c755b0829995cd78841ab8d342231ff1e97a38f36cd1d59025d36c6966e6cbc9c8dde1fa418abb596fb0330a7ea7d5978f1a3141bdf669bb7c49b9d459ae19bba96478602998a3a68289791dcf6c3e1c61231816ea1b536bb12bbe72ef8f933527af6593e8db8cd330d94af2c9d4f686ac876f4578d347b595dea25414de59a2ecab3ddd6fb04356277ecabf0e91627d61a63963b2e07fa673df061827e7286d27374ffdb2aa43103e2cb6326b2a42c08b2a48fb2e6f50f01ebb0b693abf27217be8805018e07c5a3778773b3d17a9e65cf51b9dd0b5b6640b2aa20a1e40f2c7ece8e067873b7999080f62d44bca4ad6ea3f11047ecc30480eb5e37e94f8b9e78e0ebcf7767bad10e0461a373d14deeeedb71118a2ea9a891776eff512fd2e7be8a71b6bcd19c3dc52ddb514d73137c17d9837cb86769234112bdd9932979d12c6182fa21873ba3881940660c66626ba8c413da62f7b5cc559548cfb09565f987e969fa8c518ea3964fe774b283c1cffa6f447f34f2455165f7bd1f238e838ad29c0b72fa16fb48f7a2972da719d36328438379a1a3c4526509e136fe6dd586dd780b02aabd93be36827ab112898feea10271bbe9a0a9d4a382c5f7ec932da732d0ca73c456acb54c60afc31447caf78f323476634ce36b973ee56a6da677b0c13c51ae6aeaa9802f6c7c2652855805af51943ecd518acaeaddb0fab1b31ebb49ab1e2863961128223acf9b3563db590722a2eac3f66a2f2dd36aea97fe4ee6afe7cceb738faf7e8ff344762e571efe6a2b4106698c6a51e4d1df2c186eea33308c452d1bb430df5836b6072d9445574b6e00ac0078f3dc6b6b527e029e98a9ca0163f0b2c2d1b0099b6eebc165b245fe96d4d9835e3a7bda6767802b3309515a9911dbb118ca99bcc84c4b018a20f57181267953cdbaa4474c40bfd9571a06b0ca1ef59e15e786bcdd565fe28ab055f26a14d41497f23317a07800ba223acedbfb02756b53a32873bfd14833b1eb70ab39d17c2b48f3ef2f0959fbcf4de21464cfaad0aeb5fc8d680503ad6106d5247fb8f6f54d412c4e3d5d10cb57c729e761f70758036e20d7d54a3ea808fad0c24fb022409f2703f62ed8140081bf4bbc97d1a121a0711c92628cf14e74af30baefd673eccf83e1fb48f425eae19983b962ab2fbe51ab9d5010d505e8d9230355a151e116f76382c2f5acbd9739d4faa9a4a989d996cc341bc4d3821498902e93e82f3350070098833bc00b47113bf1faad8e27d2e29e6f984ec44572fb887010ec58f70b69a04ba8d480356b20676b392b002157b684039b85a7f6699e93eb13290281f75c9aa6950ce9304dddd372f3b5e2dddcd8913a7864893e060c5c0810e89650508bfc4248a132662074443219e1534402d5a984e1367b5e25d8a124f4729a20e261e06714582b168d05ec48adc8643dd970791915c02b574de6bbf82460ac92110c75948a56bcd00df3692681101fa8203a44929fa66d71ebabb22c7a950c32e9af4dc7f864c350237124dbd2ea141cc1b76b95b7c8c7a9e79af8f664262b0379cbb66658af0baf24aaa87cef0c9d15b45b327e669e905ed278837a5da0545702c526571587dd809cc16b8ad5c3a3b6626779c9e3b471e26de35597da76be8275c45493d16249897b1b6c4bab6f38d2303122741590ce3e447f4cef49f11e935db0f46b82f26c46bf4fb7755a5289f5bb417fc59dfee47f67de6be018afa900b2757889ad161eebc1841f1e94c72ac5d20cb4e7390a906cb43dca4933f2f686c8b93d7fce539f2b281a0efe5f968fdc9e020d0f7ae8be8d43ac90d3cc7d6d25958e03313fdc6adf3a03bcecb7362d95c35916c7886400c3cb0face19354ae6535275fee10bde7454bfd43487da5101f12a4e716bd0e35bc594608b82657c3a03d95a2e1cfc5d7dcf538f15a22af7b9b32f594a3624819c5648ba01b1b46fa970f927c3379789261957e47ff16a0adfe7ca11bf5c6cfebe37a799a14fefd1782bfb00e330fbffbb3ec7d4c9c2e8b8dc0fb28440d0ad33ea0a5723dea1096abd5f4279c2ed17ee961e11eb90db2a0f6be62e606bffae1ef14687d50adf4a37a5108ef372f80dd84cf7628229f3f9363c0566d5352171311c71b797fa6ed81c385033a9d2354238b9f2e513d453ff21c25589532c1cbbc50ae3369dcfa943689327b0437c86fcd2748e493fd3179e2a3b2cae1f8cd3528a81ffdfab40be63ab175b264a9c7ef8399824ec8884b4f7dc6f07723fe14a69c596db1a23be151a0d7d1d093548cf6d2d26d711f098972552e8445385db9249c7590a9329e843f5e2ce50c32a549727c987fc9c88e5a23aa1c59752405a3e0dca733769a4e411236aaa3f37f3bed121863c0064e1815f883d87dc721bb92088c3bb9594550e4586332e282aa8539e6e41a9c9b11ccb3d07d6774d02f771c2d32b14f001b67d3c3037dd015b153927d5b0f2caca8d4f4802135812930dba5aa17023a460c59c4e37c4093930fac0c59f967e2a945d4e96f7933fc9faeddf31320d9e8d3ee6c6175c929603b270b0fb7fe8973aed989233fadc0361dc8b746b7d7a8f63988caa13c7f6d168bd21a87079d5b3355f7b449801a1ffe33a4b1f5240019d60187e2a4643a56b5687a52ab3c3972258e69c3bc509e35c2e39a5cf80dc3a40b4232e606936d3f269c92c9ef5d0990520888a33900b0969a2628966f671ffec3427a5642ea71ae904a4444a0b155309594122c405ad457ffe65dd009f906ce0d307b2245abd0ad423549e2f0ecdfdff8c84da8aa1efd09c0782b36cd6dcf8436df25d3591fea84a4d302916cdaa88e0b8022f1e2d99729cb2435d41f3449bb68ec139fec586d5ea0fe1aca4026a74b9e3ccf2ad756dc86cdf40b64e973b82ef15fc3a6ece77a95d04200acf9ab721239c5e51b440c21e14e3024542f79d489b10b0fc5068df13d62d385b384a36830e1e81c1f6712fdf67a5a2cce38cfa0e5f1f4be2269fbb38451150e2e9cc0c07e5e2154518dd6c8ee9911253694c6e90a4c6d8a0aa4404c8e94587e5f52d487eba8b904a29e39c8a9d13af1926459442203adbe80a13c90f01416dfdfcc9025b8c6fc74bf1e8043bdd5c6e6d6340a66f0fe92a852622a2c3d0255642cf307bd0ff69a610db5d06b42bf0fb0b884a481c16f0e04cedf071e0106e567f23145274e205a7cf695a06859fbe57bccc1968c43862a96fa11dab3512159067855a8280a1e959278adce9f17b917ea4e0ce162ef75f7843641b569cf6400635b718992c81b22df48928dcb85f98590c71a090f1dcfa8b24f9401119d610bdce87f89a1920cc4480f3c27c7801ef1c42887ed1f485d51c81e0afadcf050b8d1144426abe3b200c384aada40e57cdd2d246a7f9a5e6cb54eff3b314dc5f5fa8077a3da2e8d524c7008121673e1cbf9f992515555a6a4a2ec1317532e1bd4ff1ce07007fff6dcac67c98eed9d45f0dc37bb88626bca7b135c0afbabf68185fb3679c87fc152dd6df17bcd215af5d6653bb5ca929242b43562bdae48bc058511c855f002989f37368f4f394099ff740e958e041844a5ae1e23d8ac6fa260f2d9f3b3d77430781cdb81dde73948f81ad8564a9f1d1eb825bc5f7cb70313890414cc46aacd390a1d8e6e0165c6f1eb71de5c0e0d233c452bd54d281acebcfe05d38253c3aa47999f88812e41c5853d743cf652a2e788fdf45996ed9ccdfb2985c30d7482372e14971e24294d6d7505139d611d8f0723ab9b4c84e80867891412641f6318a29ed3417735059c09c04e787c73113cf7c59f94c1c76e4c9e5c2f57174e3613e4d77e16c1e4632b05b250f12f224ec26cb4a7d196783241a78b30609e2dd7a14fee2aaf901ecb63842e29dc3dcc613ef453e9fd80e2e82e9440142331ab0e483899b239f4d2d716bdbb4afbc31fac2f64b27991db3f1b173363ec62ac58cd183bac9ca611028e9efe25000fa32bac7eb6ce3fe317711f50a2440da1d7a5a1d98dafaec27d2a95f0c011e340c2cc80789085f92e369e6a63e4abc554e76171fc370aeb18c79ff6652842c686ca9e00d64bd2285895b3359cffe76a96716b456186b19368deddb157e65f916223c2fdc947c031d35cdf5703c428d2c4c2375ee93ee10d18758eb4aa1854a6683370165ebac9f97d53fbd96bdd217e63b34c6ffcbe0cd60eb6df5af1b53af3cabaed6ca3e9aa98d71cd719ae551ba8213b745bb1f7d68204f746a5c94ac7ebac3df6a569b62bc6a918d4c81ebbeff92575c2d57c29675f826629afb287025759a137699f796a8375145397b0658b5dc0b316535f064881f24b21b3a61a3b7c6a45303d75a4ce02d509d6a9f82c614401af6e0ea847f5a6733725389c1db96150404077d6c095772c6e58c001f03a5ea195667030b23d1fcc19aba8cdc3506965984554a45637ac960359d1caa4381cd46a8f95cc2082512d6c2b936894eff3740e59d6269357838931a6f2ad8348e0702fc98bd8f354b6f489233e1869179229d1ea2f6ea779cb6797136147daaee6e3fa748bc5d1d4bb960612411203c7677f8e3aa470c166dc7530d4c9f494f8e2b3cb1c656e2e2e987acef79cdb5d85ed5495b5354174dbf1623af49deab4e45fd576a763c2e0c1b270d5e4f281ad93641f63a1d66e33080f08f2e3a7f631181cc154f3dba9ff168a536c32e590a4b2ea7487affa23b9e419e665c5931823e72fd3284968358cbed7ac36a114cd6f371133e66eeec8e8e998fdf8fadbbbbd17c2c730383981b57a859339ae21932d1e6988dba7b0fa889dd3080f40f14deb4a2611a0b672c639b14c578aab4dfa04dc6f4d49ae9628eaebeebfbd2aa784aac714b2e6767fb82989cd43c1f23dc25ef09d0dae6c9864aadf7131d1d1a17bd7de49b68c2e036288b0dd3a37b19102c492e3500f6f16d4ce1405a7613e158d203ed87242bf82372a2f71b5531deb243f2357ca39f4e91e43837811aff2a3e4f2295782e2d3dce57820e8770f13f1ffad9462f941ad342418f7f60a12c3e75525b2e1b45909fa24c8edcb877701eed5f2749842c37f974272e62eb278e771421e5aa3f3f8fddf27518ab0047150e7cbbf5080514905c94194d2f074a6bffc6cd5bf24b710698449d1a3e5f74b51345689de8dbf8998981acd5bf0e82623150e7a3499f240c25ec89794b99fceb5eec7daeb348f1020b666f31dc35a7752a6f52be972142b08764a38a7f90d997d1a6fa7157033d01aec647b2800fb24aeef9d86fe1f170c7768d0c0e3f82cdb1beeeedf1ccdab467646e8cd67fba69f2fc508a4823150ce860fb007efa1043d186bc836960a8647da769295d78d4389a885ad6c3f86c6950ef1eee4370e3fc223e6b97deca4f17b666690a95a848adcb2409a30f687f182afa372d60dac06fbee8879dadcb79b4780d0765be9dcec1c734d1ef7f59f80de49eefcb86b9c9164163130a023ef55e3d8f0d52f851c04c74a0cd00a1c1eb547554cc96aece2f4e4d5e6fdc3e10b9d76c19f117462236af859d12f00bd6c130cd95d202461c58865c184d8c5f68c52a84f7bb321096e19d3c030a4a91922d48ab6f97d8e57841114ab387273f28195c846f37936db1777f6df663a23e0e653793faed68a12df478d93685888d0bc2f75ed70c33419f646f314029b87b741735111a08cf7a5b287e8887f576f2f8ca095927d010ec369bcd8158abd3352f0e59ae56e54a5f9731720cad29a17f36345b25aa5690a6bb4e20cc5fb639ccbfb26c08493c7712406b7f9a04de6fe236b65e3242b808c4ed0afe6ea6e3eb55242a41008b997ef60c75720a092dfa6749c801ee2dc322265b84d9cbfaf6d26a3af95d5e9aaaf5ba8cc3b38d777f35275c458f32c7a1c618c7d5950380eab18fd3133a19593dfd71077381dca159418e039eee1e912614215f36d3c77c4677e5433634eb572c72a08d3b806d7111c27bfd0921ccff952c7909f1e4a236518255eebd69472a38a257ad38142e85beff053478b284a3504fbb0ad76a83432d955be63a681fd187c15b483afed1efba3a9df5cee7771cbf818538cf8b0375dd76ead8eb1993483de1dd7f0fde35dd77b9f5dcde0d36741056c0589d5535feb4cddfb13a1d2b6f93fab54e03a60a605b9bf1ae6f702ad7d8fd5a8fa806155c456ec8ee2948edf59c04b1b7fda0dbb5ed50b018369c9810bd040fc017a9f8cfe18c2cf2da29dc3db8ae83fbb88a24e3c7f674ed22b95f3d0b23917d3ecc645dde797d9daa126edd0b0504f62a032b5ba1a545644d54d6b6f8697cb3a870c476b8710c5d476648770d677acbd04700667b8467ec9ab0276645bee043f4e5a01df680893ced0372936bb229b87d094e039952866c3a1fa0448414d13ea0313f617608b52e5847f490d698eaff9e8cb37946fd2c77549bfcb4f61b19e45d27a05b66d705aa3e5b8278e81f6659582409a236f6525c06903d27438f8ab3a78bc1445a19a63e1b2422d81c47c0a0784aff3b119616cec2557576d4949239e56231efca48f1d3fc6f9f162bbeace6aadb843430356c97bb9836e60d2e6192f16ef1dad1564db4cf11d41d259e7044d32c106d9d0be74c95f8e21cea783327cac63ad5fb19e9212e66afa12a473b16b86e27a7413aaad2591a1ec78f3cf4bb687aa90a93a14fce344c099704bf0524bd5c315902c299787c372d172c29d3a50e186ef7aeaf039cde0fc82040b10ecdd1877579e926a88aed2cfe3a56d74583d9c16eca4e130da2f01700f429d8992055527ecab56f7f99e4ac2977a724467e32425038663e8614863ab2dc393b843bcccd6849bf79c84110be249fb669064d4926d5213a2055e61f3696c45d6b99c02eba79f81ff3b082ea2af290ef95e7f9ae37aa164c6bc9ef89693af779857fd11501bd0a7a117deddd9931229b56a85a3e49930bc6c422e4fa3052b612b9b38c8df194c88c023e64f3385cdcc052b92b9b20cce4c24b5a5c68116e9a16a4ae3305098e2c5050edd944402bbc717d9c93f6a290e8f5d2e6647f370355567d0401c58a270638ad6865a2ad5a971aeb1085a24b382ddffb7d963a388d77dee4f89b76dd98977696bb52ac76cdb8329fc50cf99e2d07f62d1a073c37ffc2d7bea76b8022ee09cd20b33736e8128970c7e833abf5d17e131b35ed830daa0479cddd3661ac1942ee99dc9cc9170c296127e587c787fcdf5b45de742e66f02955c60dc2f3299e8087752a61c8f4841c90ca2b575a211ab7e9d0e9f4681631dd349c439203cc911111f35f239769287563134cae97df623a5eaa74e92921d5cb6773a79629e739e476403357112ec3844499551f10707235e601287e851c4bdf65bd20a0844e72bac36decfb1866642e24733a8e57f69a91bd9d933e74080f83d89376f9b8876aac92531e767a3e6f0064071d4b6bfd3897aeea12db706485c90bb0ecbab1727e7b8c96ad5e81a6bdfaf2c9e3ef831c973ea4a0941d8111572dae218ad9a4f0d13c8cbe65dad2e6356e96543dfb8175f479abe7ca79411e9c2e5b9ca5e9aad2cf0143194c7d2007fc9b186be523a188f2e2fb94fb69e51f5641242e8e59fe954308cbdf1662296380c7bbde5f9a7e3ce8d4e940d0d0ab2418850d57dd05e2215eb09f030fe03bb77aa5678034428af6477307f9d1ed6c33b712c060f6ad7ca4ad02c7e51e68bec1f4d2ee779f4a4c1c004336a624938a02ed7fffdf68a83256a23bb3ec88742d0091d9cb4c5704e342d216a9b923a5b54f93bfd747697298efe66d6634e0086f227c47eb632e379f7dea0e866e33af2504f7ea91e787a92d2e73dbcf3887d33c5381f3f352cf3013e0f848973c70a62a2738d5fa3b91d42b7fb68d1485421dd6d023013e6f2be8d284bf5d6c7f52b8f04b4bf0d6a828deaa1797a5be57f0214ded2bd72465077b93eabfb7ea9207282d393fe1302902fcefaea118f59b3d1221e15c4747508cf5c826887345ca0323e63b452f7e76e63b72ecf420de2b27b571391743cedd685b7bd1107429bfb72afe493c7d4664b8bfd147f5ace5db731d7d31f999049a8755e2b7759486bf551ff411592e7c97879067df2e3a26ab1464f36e0b19c02f9d79b1fe8c864a14e6adae2a23895ac84fbca19d872b31f9f21ea81e4afb107b6d368bb0007ba0b3b9f3f762944dd0887b5b667378c045c6411404dc7ba7e42cd97b4b121a388988cf32be4ad3cd7f78294615646446ee95fe27f714600b9d565479a8ae50ace655da420a1d289d28ee0c4490c56016f3f6064ccd109cc85358aa7619088dc162273ee37a418547990c36062471d4c34756a9bea06af51b299369941145e918db4c5ce4ea3bc129b3c3845eb2a97ef3f646973e06b3985002d0372b175fcfd0bab47fa18e2f65b9cd7b9ffff5d62e6638a5f21cd813cadf7d1d634a329c3635e4312ce2b84f2dcead5c7196310274fcccda1245697c4c1138e3c640acce5aeac17fb9d4b11ae10bfa60f825a8eb3fe1987f43ffdf6c1809212cd36a99e78c85f13f104c900bb641fa588f7b33d5bd1a38f6ca2e912d83479148e8ae4f89bee2a62f4b39ac2517de8def650401e148c0e71d0af99f1bc6d063157159d8593de9f3598d478e25ca70d24f8e4934a783a3d4dc5ce85633bff6532e2cb05c352948d6aba400a47019a2434e63b1190e2f7e5bacfc935b74258d04e25f8f75608209f0c21fa11b29158a1d0f41c4cca103c21ea37a18d0d86f67a87f6254e80a1d67ae2e05eea22696fadc8127cff768c0b0a62cc8ca62241fab053d75ad9fe8f85f1e9aaae42170c9062ec49dfe2b22e921f144ee34053e30fb2e9fd24b0892b3ffaa54e0588014eb77bf791702ccb0f284d5b30f3493456c809b0f8abc914f2c2e6b43afa6220b7d1159b105c867fea244b5f5a8a8d22c1e3368d58a57993d6ab90177b48efe2cbff632c431b4b07d327f66288fae76fb75c12324400b2bc4c0216764953eea685c28bc2d9ec45c1276237ea90c7fc03afde17ee15930b15f49ca4c679f5da51de808f9f37f26f30605a1806f65d6503c6e301d70a13e6fda8cbb56acaa7c6b37139e05850cb692a6d2ce868efbb53eba6165b03495fb22e23f5f7193dc853c3633159870ed8c89a2d21ff9c427bc26807ab354f4e2abb1cdfa332044c139376b4c8ab20fb32a300a96992bd0a28fd87ed37a51708b71d9366be1654f262b161f1fbb67a6511913ed69f5d7462ae953d825f22b846c6f2a8c81be9ae5187ccb40d7d279272456fd6eabaa451117f70b811cfa9ba5287f666c1e71d186f6d46f5866a6809de24b1f474c1d7427cf14cecfb6cd7ab422a57a44cb25d6375919f1616c63f459537cc2c6bc09ed74381bfbc1993a1b63be04d186e66edd5af6225926bf0f437bf3b38d523a53333a0654603527b1ce4c2891eb71d97c2fe2079e725fef1874ae0463605834d852879c47f458345677fe62301715c7672c2230d2c72abf69811acd0883a3666d656a15d5d71465aa5b1186e5acbcd1aedfe0eefcc00c0fdc5b76d6100e06419e0ebba9afd890eef124543d96206090d1487845ec861441d1eed83142d38ffa2a16f9c47fc12003e7367ce361f2d839d32a74b048ab64f504d878f0add9aae8848e59b68e140134044cf79f29c610e90b28eb0bd2da17d6110264705cb9bcf5753cd11210d1576acb6733f94bc6e8b85bf3163f424f0837f4c2751764292af7fd536bd0d8c5b056d9aaef714abbdabebe30f6c5a9da61af2e8dca7cb36b68ac11f5f173a3ce72b82ed9ea8edf268c5e13f8a30a843e587a6a8fdba4650b952df7a2b9b3a45e15f8c9e7e1b6460043a20e7d8600542126c436d5bfaa09a1612301cfdcb060c2465770e5976883a17f90e7340e49075d19d3e34f6dbef6910db27a8bcbb2766f1b8c0993692442d1e49de4759084de8f6e8c8ee2e9703103f30d07c3ee65f82a418bf89021c00f94c2d80e97c0fb432b3222adfa7b4d98acf7529675fcf6e0db7b6f98562e65fd282681963cf20cd7c645b09cf3b8b7d78dddb0dc5a007263ef730bb2619713dc11cd141d875c3034317382137cf88ee33b8cd8d9947fe5780a4b05570d995002350f962267e5bbbe4a1118202f74367053e6b1c79f7a4e2091d964e3188abe411e5a389968c249856903f6d3e20661d7e3929060cda14a60e0edc059e426f3c8cd7f15b1b8356b2aba6ebe59c2a8045ea9b4b7064a0766147ba1d1c2f59f368a3441834614581db2b40e410c3a8c738a85713e7f8ee6e25668f649ca7187d873a49a882c2a9f5abea83c6a34452e4a6458abc77be85b56ed7275fc9a9e5133f840027bb06f3093f88d53e71635255851cc6ae6263d668ab559ffab7bd5884d282ba051fb52feec2a756e7663814c75c6bc0387068b5f98df8ef9d6ebafe16bc7213924e6eccd574e3166e5144a038fc846ee58de6c0fa991fc5c2d1392c3d069610db41e5997856fd534f64bdf5fd60a091028a9933a00cd6c0ad5c367f6dafd1b3e35046c76440e35517d269a4ea191498ac31c01df260cdbe262803d9b5aabdcbc3fc89e6b980161076681c6b0a5f7f594a0ad9c13e4c475970bb64a1dc058869b752cd4d624ae081fdb6735af665cf9d88d8b8300284f9c7c6a7341df17e93af0549acd7e5e203f31a899ed98d410472c22d0ee6bc877b6086ab198fdcff210dd5a0dcbed5373066a701db3243b74459b8921852101947bcdc3e92eba6195ebc039082786ac7c0a15a84444a1694957e762004d218cc8df9184a8edde4276faf4db530bd0c907a1683626ff2ae8b608e6306efab3502d58517cf6a20f7613b53941f9cc525de03d5e6688a91a1b0d736dce1f97b344665c15a6023fd775ae99737fd2b9228741ad3cdf8b4fc5c9076bd48d62921da5f29d65fa5cebb16303e14a539e13e5392ce539f48d865f4fb1b3bbf6db4dba852314b1bc6cfd8e79a37808273b5d19de18e40241b047b0e0af22d01dd08b6e5b4a291d87d5de3d252931fd2fe5287cd7d78933f383c08b316d26195eb75a9acdf105558e5a2fa7136fc15d409681fa73528a073718a454593d5e6e6d74e17eb933b4037b0d8bdc579c6cbfb4f676492eadd552d387560b4ed19b6235dffd091791dfb1f69c4dd31f0126218329b86fde8cd642823266e3b6a4590cc99a37ce761afa43b14bcf3015d04d0ec21a4cea7320c631b0a31f5c63c1ce9a155ab696d23ab7ea9f36de1302feeab85ea4f581205a41167c92ec2baf7c68f384391ba04c9decc52e49ed89bcf8b827e0d5489ed07dc92c18e24da324f3e598053bb920a8488692ba968b70ae9e41a51e22200345d08948dab2042496c9046625685a496aa741baed2d1b94d5f593fc000645f78f0f2b309d38aa3354b14fa2440d08ca2c6f4a8ac6b50d6cad04bf59199f45a2315ff870aeee1917c4d1676a34901b799c27ffc4e2280ba1974d076342e2253375f0f667bd1ae4af36507113de61d80e2fca9bdd64bfbbaca55bf177c5ae9fefce09fa3602f00805d4cc2e2ae8fbb7188ac44e425f4883bd92bec21e44c96c97746f87566a311254798acf5bb6a5030c19c74ae5cab1771178808b428471905e98a6490187c59230c7e86ca5b02037cb44f25dbb9310209e9083996c1ebe2d63875ae22a3f0d03066d8becbe4ab74b5e091aeef022ae81effc94e43a3ca9f46754d2b863cdf2c41f5b13f5a95e91dcb530c4381cd170a5a23b4545a5ef41c3cc1a609f4cf546814725c1951ad3169fab9fb76c39c66c9b6d2c4451c891502e773c6b2d3962c722d46b438e839daaab80792bc1517b0ff1eb4b88765751ca0d3c7e393b70f3377d44b67c455cdd52b667deedf1ff115d6ae62638755015f74d3e9db8b3561cfa522200a69aaf3e258ed9747fe6a9d89b13bac94df1b8ef07c0f0b7dba668c1cd5074055a6ba58a803813682dde3583ccb01ea5aa9c560e0ac85724aefd2cb5f72be79fb686f4d4b22f930af7d1e2c2cf4ba41f96f867ba8f4501c782d1358ff2dabe7cae819c2b993582e264e9b841edd101256dff35d26068a57278336f3107904e33f9c733ad1f5c4c21cfe415afa173497db7f3311dcb2b085a6e9d27a4d40abed70bfc084fbbaebc5fc1eb74bb5626db23f680171c36536ae7986b71c641855b1c78af9dee80be0aed7ebe9bc7c7f1575b19c5ba49ca53ee5e8f1810e110bc9a5f4fc6ef7ff6739f3048c0355b6efe322adcb85586c2234e7ee9404740d6ea9be9532d0dba4dd2c14655259e3d53d9dd1b678fc1c4e77fe0f3148e0be9a6350fa0c9aa300ebe01c60396ab57daec4fb5598c98f2fab6874202dd92565e317b57454f20a9a1a69cff7f6986037ce781612ff1fb7a17c54c75fbafeb3d72a5d49ea5783f56ae6d32bc7a0b94eeb4ed30f1b5754deb8a5df7fde1cf76311e6dae80bbd2193645139c8f532769157cc2e6e0d64a8ac96fa8966954b5f705bb4db0d93c15af479b4e4e4a20b643b85d55bc075c62c56c15206be039647758066fe5c276a10da0c879b6e90c685fecfc7edd5fcff230e6d5972c883756f05ccec5f6799eafa3f611bcfe7b75915a27712c139016d5f6ad109206ab93aea2118bcdd5440f8c8a755425cd16f3ae1607165b1518c54830653201e29233f0515c5720c6a3e16c0583009d90a1f1a74f012f033132e2e998695dab37dd131d065882b0ca7ba7f95b1a5c83c3c67640836cc1f3092d1bb7b551f0437f7507dc4e695495f58aa45f3b3a728a9cc3f017cc045ff84baaa5a1a182cafb8ec54ffb6742993e21486074268c81c6e3901671cf939097052eb72f9e30aefa6cef72297c2392c3debe6597961b531657a81bbfb2b9833b3e8544372ebbd55b8a7ae48a5a2edbd364b1e70e90db797cb36d2238ee5aa377dc97b5512e1f854c360b6ba4fe49c8347c68be51908ef6288b22e3678216196aec177d79f4b267b51926f35c7e3c9272c679b6785bd6a00cbcebbe700b8e442cd9b019aa48e85a3c77ce7e3e067274167016afeb75c24224bab57cbfce5a6603fcc914c70ca8b6cba754252c2a4ec88a914f1a2daa5445e059a3ada79f074d8485181ddece8cd9e778efd46a6f005c803d4039cd1428a02135fcf27c56150639da7ad40109670ad0ad188eea3d364f026550e14de7c14a8a1568342a2bd5ad3434bb825cdec2c61949320d39e1000fab9c3285327cc21f1d282a13c569a11dea8b89ca8175c14fdc6ef062175f284ff2c1ae689ad4cb0c12e78208f35fb68f94492dc2383fd8d4d7199496be142fa6e6a16e2807e926bf72b17fff031669b876ec1355bcee1ca7c2f8c263df3109ef5f3321a11643b9ea910117a8ce1015054237f25593cf06f6ca5a80d556b03ae3a57f025b9331edd2c577a9b0001b481d66370c2da3a1e8d362fba0d5d1c801b28f9a2379bcad39361589d4cc1b1a46427e43e7d8dd22225ac420fbc66c9a5d3094ad6d69c70ba1efdfcf6981f2276bda6bd458dc7e96b0d1cf62fd4206e55b0cce6943edcc32149797016a22a99e0065676a28c697b3250ff6df8efc58444fb78e0cedf3a230bd10f7ae70bea3212cc18c96dd0a3bfb47507c77455bcc6065918f803ad3c75cc0dcb71c38e1062e7898dfa1f6ab8ebc85e76c6d77b3e1e508e339cb6d3cf728d50dd041d0be0721b0256de076670acc4de0568b5e6e7f7506cfa46c2d942d3d9293c8ab670f8be2a6dba5c6c7602b875b67a2d78ece4604357da12404ad4ea30b9b67d91af9bea40c76b14777bd19d33281f05f4c74530754de83c9058c325415cf87fc15bdf9f1bde3d23044e6d890432788c43b1f4f7043abed4dd00d87c60a77702523a4a8edb8c927a3d99fdcc931e131ece20de4c1604e71bc99c3cf63dfcc75882a6dfcc0c7845e149387081f383e89059ba6502a348d1326d1a1b4068daa19785502923a9d06c140194e422cb57c6bd55375be8140f5cb86e0c2ae2649c5e8ac10dbde1752761c6525762cbb08ec76c192b86fec3f1d814b258327ca72dae74def79e701e9c39e300f30ddd9ae80c4caa48c69d002d49dada860da7e671d60145f8f060bbb197eadf504f6c6a005e85c9a52bb516e3296d13679428976b175296872129ac578712eb1eb931a11a032afa0c1d8e6 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/640646.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/640646.txt new file mode 100644 index 000000000..a25c81fa7 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/640646.txt @@ -0,0 +1 @@ +072355b139c269145ac28ec03542aaa42bc09b278e9224265c5e226e7fd3257853fb406e1134809356fff58e10e5ff9798eacb1efb2db3165c04a3f44c65d8724359bb88be15a7d4b817fffba66cba5d8eb88138b87817f3f71c9c7a7c8a87e869ab3ea343b54f7e3c86d3576c18f7b160786be239e1b3eee27fcec7f1b44352580f2808db0aaf54e8a522512f9bc42b7c396a697a6effb2c018cd8e2c0ef7a070286ee1ae2dca30351130589c543469cc81438915cf729646fd6763fe23f1291f92762486b17fb509b761bd9cb7716144e92292a26f0c3eb967cde02839344f4c0f0c1915309c69a4aada13fa7c53cf2849afb9003ef63f6ee8edc60a705f5071fd313e3c5bb5c6b574d436033955ee8e86573b0ba04e6ad7a0fcbc9419a1f246913f82ea64602b99a0493be100a886078058343b09842b29e06d846ea51fc73f9adaefae542da2f2c4baa992e5aa7f4ed169de5715a234e308cb79c35af44e62ae09c0a5cc4795c5d24400fc4a4dc7c332f839e6fd1c65cf265fc54e175b9d6593a23acde961f9a2df43390d58e31fb2f33d7d6c0ec47737fcff23d03bc2614facdcd959a4e9522b09203d3eb8c899a52932e2d2a89773f665534bca83701c1df1f70c607af4a849c4a60809439a9bc3db53c42c0f8ba938fb6058b6cf32bd073feb71e944b08122b5a13a254d3e03f9b93c04b47f7b6e5e7f31406bbef4772f2a36127200ddfe4eae4133746df5037624575ada02a2482b11d26d293746126459deff64e5c23577bd86102dca9dcef1ca6d1843e77407788efdcac6edc57728e4a77d155a30ccb34f36cb633de66b77dcdf7ed3e753d92e0949de551fe30b2f9ed3a719e277142a37068c19f9b030425c6b24ba24b8a307608ee0801e557847b7aa402218025d845ca425316fb1bc53350b0d8bc5193c1cfc9daab90948ad28baf558acb428d0178dfe4c9df5784b851d34caa6f9773f972c4544b8a7f78734ad6157014396c16204897ed6b566d7ab38a107153d32ddfd8af9c511348e0703e4e9873d41aac0e4fb60ab9bf8af23c325b71fb97ad651ba6f49d63ca86d5864ebe11fcceed2302c13fcb24c8070816a1fb929a248b422ebe35449a1641f5a10e15316cc0efcfdcf4072f986d19ac201d5bd2bb08cd7ae9863a21c9128693a27acf2f69eb00a74d287f3487f241a41e8a774087b2df865bba730d22a99d08f34fd471a49ee198517121531974bf85abb3c10c4b01e746d58aeea5c88ceb95a6ff65c9bb3eb142ffdbd9c951cdba031c0e1e8cb39071d42c74dc676a36269fc36b8ad7b648191adf74e8fd43dd5c2b519dfcfd0f08f54dd1389e9e004a6b4ac268fb818ca0b68706295f36adb5e8802e4e1fbe53a8c636928612742128df64f15a47cf82b25fa5592028f6dad7d809c4a7cc99ed6d12f58c7bf8c4dc47ad9c36b8f9fdbb778f2d9b3c50f9cd6cf9228e65d99a6f33194b7da54f12f3f70f1d054f20d6e0b7b7fdf03a247cd398fa078360b2a7c30c5aab8252f01fe7946b5002eeeffd480675fe697bd9524b7ad7f964c42118ef0a91ac7b75d3f6f7e3b4d75253db371793b7bc345d4ca4f72cd75c7a91de7a7c914a48e66e858854a8982a85e8aa56f8b1983b00d392b1c580d5197b35de75c04296e996f19f99df2f108e31dc3e4b27ffd13cbe450cf09c1188d7b4840049c58c86dc18c4f552c4cc5b44d4e09a258417c6b2d8d92965e41a9c6892b96a171632dea2812a7f1e4e65b18056043e52d8abe4a0b822fc87a484b150db0e3f51df3a5572211fe5e41677f40b85c22afd4bedd147275aacbba93205dd4ec406454a91dc396addf11c4c8e64fc7634f06c3da08d62c9913dfa88512dd07ad4d849b2ce909c637dd6274ab36726a1ad5c3d01ed963ad4cbd4e5ac410b07e6bd0f269caf78590055a31a68c037de1625b4e93a3e659615778b0df4075bab2e5b74a1ffe7f6b59a91c48174d8f2f723fa737e52a2015d48bfb48f9e66a4d5270587a659aee5bcf1d89e94ceba0a0bf6790577814d0573253c26c338e69fb378c18d076720db37cee23c90deaa0b1671eacb219412f933a710ef018124845c1499bb9a35e314dffddbc7528af662695202260122bcde6b8c986a8436c566d1f17aea4fa96a10dce1cd2c3fbefeee95b5180bcb94f87dd301dd0cfe2c1888afc45171b8e1a0b960b74727f2c2ab1d48549e24d9660e22ce0611f2f557c6edca3f68bac949e47ed31a56c752562bd4f716c0036dc01199b43e818e0a41a9efef86b4b5c42f1d0d7cf67faab4f3dc6ba7424ba387f33326af5ceac62374c81380ec5be85fe28bf0e690c8937c03fbdc81f2462c711418684fc881acef7e455702c0c1a0c2d82fbb87bbefba02b8e65dc2e002cc2c190c6beeff453004e4cba6d5f5568cd1f9156582f1483983180c1814a1b748c99ebb4d673d603dbdc0a894c60358a6928a36b31af45feee927870a1104be0c8474816acaa6168a1d1f54f8bc561ee30e706423c11f4f6a680db87018658e67bcef4be647175b3da7d3b6e79c3bb6e3f5d5aa64ab97cf9869b85ccecac0e259ec9c523f90da4de6773a91abe372286b850457d94e7ba432fd210455d6d251f3ab7c9853aaa74aac3b2f165e7156f971b653b6a6a9c592ab3bef7d4e189676b4e61afa12ecc11a2d8e89d5efe84371880aef4e15293c2ab791b425db9902d65c3b6db2843b5c8e94d4fcadfa37dcb93f8d9640c5f87993413707dc496720567ab1e7b8f0045428ea8735c0a7d21484dde2b7bed7443acb586201d2682db296184096c360907a307720e1d73dd61ddbed2ec215b0c69f1cb8524284c820d40ecc52da53fe31c4f90e11c3c573282d8198e722fa13dd4c15f6c3437286c7d68cf9370ef1c9e2eb37e42f7a99dcee1b2616faacfcb3aea9f20baf0c8e2c1cd6bdb4741d976f360da6ce26987fe0be7fda22884d2e51cff8d6137a0850935973611ce8ecec73326ea828d42f293351b135bbd041cde017964441ef95d695b25274b1b1248f1793305555b294ab83c5c84b6cca2c0d6d98cbd4b0153da387bea5e41b210da8d2041464a40380d20be341f24ef1c9f9aa6f37d99101f0f5fd88002d85375b10955651fae70daab72acd1663d1e83d3d42617aeca01b0093eb68723ccbfca438dfa6c0d9e7b41cfbdb0113d2062b40044777fac97ce246303ee38535092b13ba9eb08be0c460904de5a324fff188792b30a7deec0890c26e7d3cd1bf532241037a6ac31ac88a20008818a6484ff3b165f2257c51952a09c874c47197a44a444dc8e682982baf2d49cfcff1daefc87722756b1d6be18500392dff21e9c621ad5669ed9b4f239f608117d9bf5ff60ba9bcdc48454bd55cf650b06f91e302190ad9802e08d5e557f6f0dc15affdc38b8478d35624ca810c1bbcf468c2f15fd0425cf78e837ceb1e8d1d283430b38ebfbe49c0443a66e4bb9f9f2877d03b64661d9069618f64f2866220cf79a78ec6a578046c2337bb069b3896ca6ed0a9b771ba89b9d6dfea57626883e9e99302e0125895a8454ebf92c697fd87c3f06f2330c1a841c4aaeb52bca0f1644e3ac87947bc6c81ff497108f4a01821515455595b452886fd0c1c266b17ef9f031c3e4f681d040c35af78971c92219bc2f5e80718bea336e44a01fdabb4d6bcb748445912f2d15aff200db2fcc1531d962469830e16ab5825e05ab778b3875ceaef3c3ce2ececb76fa86efbc36c71696454796626a3da7033497a902d4f14df435f93744a965cf24e7d25d06147222cb674de9cc5cb9bcfdf5a05816eb790c297b207941458444092eef8c05bbd9fe8a6503306ef36a3ab05722a702356d39f7f27e0669ea30dbe1155ddc42a8593343ee7170c0269902347c0f4b70d84822a536671254012ac4fa987a9896b7b9be8f2c2f46eb4f37a00d70fefafa24414e5139ae687bb2e15254c197d2706f7240f45c2444764078085f36be1dc91079d0bb852a7718b78d5143f5b95d86ee6fa128c224e3cd2b06f04996272fe9ae24e4503393efc4f3e46c0ef7d7cc5fae32e6bbb638f3777d771e6fa0816907f1b2e73b2fef7931d857a62035c4f3567251806b2a4e81694deedd279d4e30092b0e25bb595a82f0671b90753559c5815cdc4ba34f576ee8e4101c4bdf7f97476b2bb6e407166ec4946ec63464902203cd8ca6e96b3168800f3935e145683c2ef39bdd69c1a47fb23e9133c64940c92dfacc42dcc04f660817aa11e8ebf97137bbfe10e063b6b54c14471aac3751402ceaed2e8d6d4ed657f1525c0dcbd7bf4f127183e710b2083c3220ac5a364f18379ec6c18ac213f9e55bcc9782a84f2a701765a1460a783aa4373eab9cc9da335409bd0f0c55724c3309006d876dfc978e4f8b4c8dfef0e029ad51279934861adeed6c466f0d0dabfc361def2f236f58e12425d682628f1ee416f6e2b14d78c55ad922b6950945915631f569117fa26117755ac7bbd6099bbca4113f3b8ec6ad9cbc9591952c54359f6aba1981b17a1fe9a9a7cb8922f8cfbf372eba6fb666fa80ceba010b683ced44b17c4772dd599f488a753e2667f7dec09c28aa516de447bf2a04c63cfb1a88c52c0e8cdea15399e5da54a49962d29c2606a68fcff71b472c1bdc9859732e1ed090aa6e5725e187196873f84fb0f9b40e86ac266a4411b807741f60ce4c415e1b54f9b1ce0d337cdfc617138e2640c6b37d1c915ec1dcff3d96381a5caf13f4b3b28bb0410f5ff2ae815260582a78d76c7507fb6b52b19bf71581bf91494a29f979566b192135acfef81c36c405f3d1bf8eaadd55a93b3c09e962c55af95d31f155943ff84928d426c44f051aa43b965b08b932d2b947c872b68ba885396756f699a429321b550b20256b15e930d17ca6f0e1fd4f10f63ea1cb5f65dbeb5e7d47ea80bc43e649bfd0e696d7debe9f27e6bb4cfab56e85860240303fcf4439efd17e73b6cc510d6f6d19cc13316e7c3c3c3c1d30dd8dc20ff958cf86fc950093a7d4a218aa662233914e5696ef3d404a6ab07cc211a1cd2048e567bc18b72da900cfeedd65adef56463c38ffa00e542f5352929f76c94ebaef25dc820f0e588ced63e5a60703a2e72b0c8872b56f5c2ae2eda40f6005c23eb8136c1f380417766d4a4cf7e9a4075738fb563a4e47b10e539cd6efb3c98865ed0bdbaee68e18cd072d435f0b62c1ec0d35c3c7cb16be7f45fb19cffa8a075fee5376ea851901f5b56f3abceb0786a4828379d46ca8624728805dbbd24d5ce803ba15f2dfa87173599d5da5f579abf1627ed8df13dc7d10010cc4f16fd4e6f393733a41ff5011cff162fcb7e9b2e5de84efd530b417e951395c85f317cff6be23c549d9bcd05ddcbb0a463356ffb3b5c82061c55cedf6c9e9d39da3883f0357395dc3078fc322188c5b581fbe6a702799c380a538ec22a0135dfbd4d23b324aca6d8bd87d3050df12177bdbcf78e3c04aecf83b3b76d1b2359b62ff6142f333ca758c483d812d8b1932664bdef718f7a749b70de0fb4bece3ecbdfc5e264ba0bc49be77adc60c128b7f093447937866bec4452ec2a327ced75f7e90ccb6ad8c31ff3718e35a2298c992897e4a81debbb8da4b5e3d55fd894320076dbbee8eccec15398c9a725ae52fcfeefe4c6f6d16e8e701200be7f08e8614df37a0f5b1a1ef687c4b517c0b95068ab4abae8dbb3f672b67b2748b155cbcb41a8b9a3e41ed4c73137fafa15596b92d3f25f77ad7d1777ba3a0d8b3030d88cdb02eea46304fbac28561d5fa70b5f4c85453c9fb6e1f35840a86e03caff971ad04a7d2163ef14ff344e4d7ca3ec741071d48c6213372114993c25427d0bfab8e375f5aec25d467c9bfdc81a34d4abcf8c5eb5a57d71aebdaf6dd13d87a7825e2fcdea727f0306a93a9aa616f52f6b0d790468d195d81a413b4094264742f9d6fcd7cf3e109ee6b512087cae5076fce8a87a7a41eeb20aeaf9f8dbbe6a70d68641f86c64208026ad7c28e32a1261a2a18f4b5bf42f7882cba80bf2847a52dc74016343ad2e3e4a10951176578191a18489acd3c05f436dac583193afbfd14ba7a35605fa444a4b9d6917cd2030cd49ca4d5ab17d9e102a2501ddcc4fac9c27e604d3993535470c5d6b0b40d593b48c49d78c46c5d215e1b33ed9cc24ea9e2d5b01d99d9811b177489e3e745c61b33e6e4e3ec8d421dbef558283ce4e20ba826e569ff858e0761daca77f466d1737d2d275829203accac6dd38c3d60a9de3be1b7b86841abe824793e8771402c70635920c3bdfdfee8b19049ba53363a4353a9784287f502c594b5479a0f9888193e1f76e34d700255d76d904d028e7081bfe6cd9eb082dd170fac3e71d80bb31cb712487754fb36ed20348ab3bbbc2b8c555aac54736244a88d78ae08e8075a15d09cdf86e8d52d25fabeceee38bb4e976d3c9d2f0565873b00737a4e69c6850ccc11a7d4f03bc09af83743074107b7d973ccef1b0600eb98e229ada4f42e111bb41b8820678162c0dc613224de7800d3eddabda94ec11ba04824be8e174fdb119d83b31904e3c177e3ba3dd37aac6e3cde1b8cc7d83bfd652375cc092de59f682e3a9fde19ebe4e6fffbf02f0412ae2f8e1ae6dbea63c1276ffed6ef2839e43b2bb53beb404ba855292ccee5de1c6d5ca9df44b55c217bb7756e6be2dd4a565cc169be2aea6d499d1a114aabafb6a2adbd2b7b6e20394a6f679420c7edc00355ca4e9d970b01d2367436ae03ca870f1758a941f38a3561f52dd35472f2f2564186cb24f80b3f574d939c6f40217a66f98cbed85ea24bf016add4f5a18e5ada60c5124234489eaf04160cba39824e8b2aa736ec368e99933c761c32664b5a32226b995ec494184939c054b276c74eda1edf0e40169d49d608242b0d9dc891b36866ac47e98401d47c3259d61e7c68d6db31f1073fc9dd2a5d23b21985bcbf7e654daa72e1c537c509ab929187cf3d0ff795b21421b9a7b498bf1357aaed861c63c6c46824067d8b54ff94f51fef26481c4e566805ac76d71a1316b6908efb320874586e00cf7ff799012a926f5d94c813c65f5637dc1bdb20bf950282ce02f045a4465f2f31524930621e7063208c97fc95d72390c4a4e42a5ffa8afacfe7f250a094ea366df0e0e0677763a9b34bee16c35d3cd5e633265b13c6d24463a8b50314ebddb5dc2ac3ca3cefa809ee49a34917256682556b809179cc43be0229a75cfe4acad578fabd1d3511152710bc3be7ef2abcd1e5fdef5b22178a5045ae8566114b76ea22d181f0ae52f81af03e9b477de76bbb2d0d882a92f54d5905b6ef1c2287c0fadaab061c65a689d0fbef5123b70c0bfbb16bf0106ef61f14944ccc26b14dac74cf9d0797fd123923290960da126c211af23d824bc6c3077e8946ae6cc05659b8702cc0d94fa78a5571228cfd275dbb25697762dd52a6e8f06563f063dd81659eb9d68b099582122524fbf15b97a397d3d795f0572c15d1d07a2de25af017e9156eca30c8a4746367035dffa8b607983bcff1ff9cf73e377abc86d72e2ae9b67a8e5a0ff972b12c08ca5c9d38413678e3e2e5df3c0fbb8afc178d2d1648b298bbcdbe85556655ee533c6330238667e9f1a098d84002eae2b78c432553b19db5e88d15d8f0085c536e814d8ef4a7ee18e6c7522f8529fafe4cd177e72cf68c11ebe82ee0669ab7e045152c74b683dc3681b6247945d4048d53b5be673cd79070e0880b1aa450441f84aadaca48b6d35340a1eb3c71b4bc9adbe9944c5932d16c72022014c111c7ff52bb7ff33912b06d64f1d894367a1f64ceced8f073de1471319cbb09c4344e6ee8a9498181f66ce5aa0cc3720132b99e423f463c2c03b009701279d86fe7e51c7667e0bf9fcf283efffb227feb315307b9234d294c41b58df71702d86ca9dbb11880c4f8e8cf45f2e7f4cab4ddaeda2f83ef30be7007457f2535a46d51cee54cb278c3622c778cb51a1afe83ab88fab4deb2d6261377f4ecc7ac3323c82363ac7d4eefb50709319e9efe310fc38680f007e03152106815ef8503c54e15d1a904e3f98fb1586ca10be119f266e4f3bbca9da69ada3142e90fc7c1e0e09cbdd96609b0b08588471444a4936edfc3145a125bcf795434be0bbe9533f023519984e77d0f2ec815aa8a8228908f74f579eb754f0a704b33013beaf48620aeaf63f4fdbaae413da7af9bb02b999c9ee9cb3e1f56e1e86173ac8b6119907606ff893bf8b823c009dcca323288bf137357aa4b9419fb80be25ec79e1cbb7a8b31d796bd68b18c4f95202e0095a42a9a2acf49820b58be29f2513e845b785b66714f934a1348bdc9963fb3da0a880b5b2ac8f7ac6590fd2651bf6952ce5afdc40823d8036cac06d8d2d5e9749581bd1092c34034add93c1fd5478884309c6a5678ec6c1d144abec7055ae67465ca08e4ebbc405066ecfaa0026508634e5fa2092f1f2ba6d0cdb7d70bd999dbf1f343e4d1303053d1c9d688328350a3f4fe86a62719013b12ba95321e6aa49b8436931d15afbc1a865e76ba104e9e1bebdae72322497377476f7e7fae3d3b9196ea155ea0f3890d799ed90c01972f93231527028c4a3f5d5647786bf01acfca87a9bc4ad195b6c98ad30b83e66228e737c41e2b6e278504710b6cee312a6ef9472343465f9b674a1d238ef191ffa005a21dffb26efdfc28d18da24d19e3821c216a15870e1d48f1c02e23ded1def83edaf3087de02691c1e6115ea64cc0f44138adc8935b5b02f7ea4e3307d104f7d8179602c92fecb98eada8a54bf02a8f72f8618d4ca1aadb995e84f18a82663a0d77c0d5d8d58f715b68329ce7666cda7c1854bfbe94c2667bff0c8f8770e81c3642486458a85a25ecdcc45c1fddb8d014944c2f8ef3bf1b6f26c3075fa54c8016a20a1470756e8022c2d8e81394fb22c46830b35b8ae732b9fc4d77c16543a7a90b59f8342eac14874a0fdcced4bd7d3a8f7139a9b0fe3acf8cbe4c44725b2386fbd68fa922c0a891434a564169a47fc3ed2222eb7e0131d23916b069b3d4add38abdbbd0abf0748ea22abdda3d37dc698482a33d7e37d1ea5674aea800a741158d21fe9bfab9b4d6d9c7bc1a649ed5630163d26284dc92d1b819821a15c4f76e28cda3b40f551223816fd7277c0371af007d068379119de35526eaab605cdba40fa28227095f31893f370679a12240e13cb579bf2483f689b89facf8b0571b8e9b4387088e54b458391596806f86c2aa08f35396ed052047b5db2acff3f672cda1b8a16686bb4f18db9d76c1b7845a92eda924b70eed1b8a0741ee92a1618856d5ba0057d7e860a807239f2443437905ca48ade52372939674449d9cb11ae7c9d4942c19b7f65ef2ab3222f6e054eb8b6268d8b401f46dffd055d438d3bf09c1df51dc2677c0d68f96a533ea87251b09d26d55269004de215db73e1c97178fea52d6f123c6afa389ee47b94256dc98e9f73dddb01a369d3792f330e5b716d87f4a4f5af1cb1af15ed8df946b9ec86814a15b560a5e26cd96402c6bbf55c501f0bbc6745cb98980ae3bc32d889a0eaa2ce3a419fad37a172cd368f1a1460a9307b3b3655bb53a5e50cf6e345532c7380fb36e6c8530bd41dd23eef2d375a431e95abda62fca8ef7b5e0b4bee24653ce592b3f49fd7c605c4326f156266177cac5fbc65782cf4ba58943c5998d81d98ae575c125ba275e2cbf3e509a2423b717f1a273cdd471c64c3a7fed464b12edaa93063f2e0c0f383db7cc256cc1242e191d03e3464319645118b26178f1563027c2838bf28df724409659fbb81005dd7b45c24d37cec5a543b33044b2558dd5ba962b309c4f0156a32188b09bfde5c5eaab6a4d512e61b9da3c3dc1ec36ba57e5c0d16d83db06f58e04708e9f6373f10e0fb6c00ca817b48a1ec5fa5035308298d1a4a45f02beb9a26dff923bc6a28073802409994a49e14a7e25f747095b6cdfcdea282fd5a4468fcc536814010648b789ffbf90ca5ec388f4229660af77cb8c0bcce49273f957ac11a75230ab75d712c57c8185e92bfaf18a4f00f667440bae3fe51dea884db6413d9ce4acbf3133687581dde7bae8edc01a7a5f06e4631a9c677ac7cf2d422dfd82deb50f79415e8392e27d36d9e0fd9c1c93dbee05183be476166f10d30016f9b99d39bae6c43017c67ef8af42aef432d58df0e6a8522b30be3f104d103009a459bfe2998965412b620b12cd59ea427fae16daea17d024e287d7e3dcde9a46694729942af30191d62fe730e91ba832dae6326dd9a9808ff3d050cc9b635babba6b137485ac651256f669799b24ba62a9826301272ae1c6a09a6f670a311efa3db3640a4c0582af828068cf3ede6b62b423ba7a71b834031013d204747625263b9417603abea6dfc1149ff1526159eca8e93336600bb7aca18b2ccc38f7d0a7f16ad0c5d657e21c3d36aeea5d25b098c5f6619e564dc04a767cb0ea986e4ca5d381bdbb848866faf9cb3f579386ab052aaf2444eaba10f72447abaedfb3f14449a2b27f9792b253c5a6d200872710e9953f6590b47b860744f9748b3346f5d2dca2b1574c9ae1890c78c49cb2fa16ccd25eb13396790bbc1965c2b9311ec7fc29eb1d7b92f02668a1e3365c98dc1a465e301a7807ce68cc235a6be81a939a95d14ba7104a80e08ecb862a95d6149dc432bcb887c03c8402dc7e63f9dd60232be753c77df3aeb13ad50548352ac53870e70139aad0a5b32a2aadcdc878a6c7cbf7930c1ae93421a9d9bcc02e25266200eb4f2a77b1038f656de3ba1e3e10619b551ba384e55eb5aba92da09f870dcaaa5290231b5c25ea4336e25d26badf40370669bdd76fd710e65944eabb484caa09ba58f49ed90d5d77bcfae9834ad36e1b8f3cb3ed8ad493fe2950f85c9afcb1d34e9cc1a220ba938c093d5f078ff91c822b96c391919b65bddc9359e33025d0dcd22f2f4d22c3235f5175239e87d727df2a8ddc2d60d044dc559c3d424f29f929714a972b5d7a073d8929e5b2cb99a10cf3bafc99ce1231c32781566fad10404d137015a35590c19c9285ced55b8c66bf343db128a44ab420da69d90533f0d310a34babf95c4832ad8be6f7a6263767c8b314fe43b22650778dd0e6e61ffc3a1b01662cbc17edc4ae84c70e6128ef3201cc049a3812cad4108725be13a09edb8d7007e84ca9cdee959862f5b0085f18c635b01733302ac06e7924f9e121d482ba360077a2d5943fa7337d5247b4ba4754a77679973718960d1181ffea33d7e3bb03946911ad52954b168e31cb49dda61ca60fbbb9826cc6c89c19d718ff2c4d2ad7359c9b46b8613cfa3f926f502d80f189836ac27427a6236eb5c6e76441f26687e129afe3b0455e33d39b17118411b11eb7a51029c0129e47afd2052e8519c8ce7536d1efcd08665736847c969dcae092715d314a36b6715991e3c8b36f5c6dd8441f5ccb77455fff749be3de03637db3fd107ab87d61ae34ecee414d5a109e18d32bf758bf3c21a38191df63dd081aa223b044d60c8000b2d8a092a2b111b7f2b6f5e38be0b2b4c3d402a7dd119ef151feefcf2110a399a0c145f3b1c9e22c7b5b7acafce96a2376c0454fd10bb6988adabbe7c40c725e576923cfca417d1cc140ce6402a7ca24454081281ea984dc3b1888e6934ba58729f39428c59d8121d1f1fedd650479832b21aa58b3c5eccaee9a0df492b121ee3b815fc23ac44a761b41f1d8e6a40c34b435a1148742bf658164f56d940865a3da4bb91e5ccfc46a772c5b0194f0968b6dc9d23a9758216a0b8de73a42c092e8d58d4876c39406666c6d94b77e0d4ff62ac4f21cc2e91594bc21ea1ef164e2d55b8b1a8642aadd927630d89d663916e6108b47bbb5762cc7cc80fdd8023fc4d6fda9a73993d72949f829d9894f583e5421dd4720910b89983656042ec414300e4b3c8dec64699ceec895e2df61d5a467bf3cbe95d13763523f8e47eec96b3568a83edec5b7c0ac5681e4faa9b17bfd9b27c463207ecddc2021cdadbdd994739b177f5072c3cd5fd7f660a72c8dbe590869d215b70a229775ed721c627ec9f32284028ae805fcb1e3e0087e4766d4c3ae8d003dad04e0bbb0c21bbd891e74a03c836f18555426f41ebd6e77a7752fc3ae250d58b92cf77290f55eeb345d6286657e6ffb9cbe8cf912caab983ea9e2bbccd3888cd3ce8a1178d792940d5b6835533b2bb29f5564ef393d6f2bafeda7e64b420b463aada95c205072aadbbba264c54227be3d827ecb45c412ac79c8a6ed445ffb0bd805f0865739f9d937cb08c02470a08b5da19f4a119230a42d0243ae512c6b0a8e5d5644d7350c4e625e920046220a4a39062592f4aefcdc6f32cf42866219e56d17bc0d0aedfe1bde2127815c4534d40a03c81733e714aacc1d9e9229a1e82a8f2ce4cf35ff7e9fc896a37651bfae71ad9a46cad5e9968cb19e9d5c159550bb748a5ba663c4602e442e3ca074eee5e26b0f64b9eda65c14f263332f020f9b438e9f98d9f526257bcafbb1750e3531858f2b8152f9a9a2081b5b57e6b466662ee6477bdfc7e20d91873c01869d6f98844e3db84350d588c1cffab2de8f892111dbcc3755b440066c978efc3106ad0c549ddbb77012b85545ea11ba069de363ecb2b8580a02ef5db0b6994db440bc07cdb93912bda2a079043fd9e6406adecfa230107765e6c270ed0216ad350d0deb4158607af2d97ad66d2a6332f2eb14063930caf55f037e9d0ff6c6f500cccd0835b1fbb1a1b7f7ecd3721f20612e3ce5715b8204a38e7f635c6570fea5688f7c3aeb7e0c13b0865ba97d66fd49bd1dc6260c6eaf230cbc107a97a20262feddb233249dc078937c95f546eb41e102686078e28fd40b9ca51ad053ff23218bca0e7af7461dd5068b651eb4d246e48ac05aa9d4034b48c1282c9362b9b184a980a2300ea2e5232a74d0431aaf265bbc1d2d1585aa296b64d6f29b2f6582546846384367e82f75b091cb421e9a8619b092b7874f7918c998547dd7a63eec527866d52fdf769b726d3cadfba639a59c53fcb3f982e0a3cd6a01f061a99d29e4a9edc061bd03036f93ea7e1762a9dd7bcc42949c38b3f0101babdc41c8cc7e04b8381b400b227f78a678abeec4d0334b045e1a47a799eccf7d8eebfed38d62112228de7261ca250a225d236876d2e2f6d54e95eca6b7493f2ef4f2191c7d0a40de558f62e5cb7a21046918eb7f108278945e5c3248b275ce2a73245c3f8b751241f7a150312a3a8c2ac3da2a3995b70d6c165d65bdb2170995b93c21bcbcf4542f52ae981d41fb0fed601bd7359ac5486eff1c6a98ec3ee3595ecd751f0a69771d74a1407f663d01096c33afa962b1b1826fe5d5bd43c6638ed262c57af7b9803484e7c05684be504af8767879611ee76ae0e1eb50b95d666c7199d645102f03c84a8099db53c84d67aa93dd2e146f11d607b38a1d30bd2485e39ef80e63c0340b3f17a073a9f7eb964cf9b3dc2400730e8f27648ff29f133f06f32e798ec8168670b813f7c6795afcb56eb7b88f4e4f0c151f46bab58733ed02ffa0787a976725d743bde38259c9f5fce23b0bf7ad36af2f3e01211005dc26d2a722a1f2f8c24ee3314b04a1e01ae574afac60c59e94094578ff9d14f14418040300fa1be376d11cbe6fa63d9fae90f70b2f47165cc38faaf6ccbe68fda63c1f29ce46ccf0c0ec48e7a66ebad4f6da511146d5aa1394f56cdaddafdaa364277186973d4b4bd4bf6956802f664e18e7d13d2ca05c68cce2ae1a7bc70bc11a4fec3544b7c59ac355dcdbb4cbcb18ab290d3e65e439d11c0e678535a64af6b8adea10919a049ec1c58346f540457bf9d38b1624aafeecb32b15ad8612edee04c48c764227d48c302a294ca594820475345c5a5e6cdd8f94c374cb9bdf561e9b829cb61392c56d233b5e518d1889c0ca138ec0b709f87a7612b3a5284eaaa47c97ad80eafea26d013b71d2e56d80469cb613acafe3944ee6d0d2a7eaafb1e7b58d685b5fb9ed3f2108b3a5ec3b6ff7cdb7288c5308396ca8eaebd8f9532b2d4f315773e051709bf1fc59baa1abef7c5471c4b3acd4109874ff203d47ceaa1043b904bbc3d5524c80ecfaa4844d2a2a4614e5114cf79fd6860ab8caf6ab761f99252bf0887fa11a06ba24bacc1db8d86edece93f077c8bb0ccf7dcedaf997e50ab2597c35f77d1b16309bfef87a994cd988beed7e6feda4605c5b7c62321dffcb7e1953ae3a912d968293e6a7ef8a4a67262465139b04081f786789b95bd3e3c80af94fa9241a3b557c2739306b6647235388b899bd88277eb2c6d477a8891cc069990577ba1e3c20b9f21640cea1b4430ac06247cd2bd66381f4a59e48e4e9ea78609d5905321c85913e009fb6db9dc1b2ead2c3749f2417209a550d88889d36c56c12d63f776d20cc2411f7f0416fb8eb4d6aa33cfd11d9bead259afb8596ec7bb5f02ddab68c262787df8d0f3f3fdd1326352908ff09ab5d8faf9f31ba92394c05eb34137390b341883c6b544d7889b5d72e1ab272ac8fc29275869109e3ba35efb900ed912524674feac45eeb73a567cda172fe48d4fb391aa758aff939cc5ef6efaba39b30f6af4cbcf3c03d1df8f3bd36e7c22ac1c1cbd084caef3847ac72e9dc1d86bc1ea4e311b931cb8fd5fe02e42b018fac5395abd5e31ed549f638b9d4988af8aa3b50990ec55d0d3211c9e567c1f79b3e71ea61bc894957c8c17877a14b9c181aaa04fa09a244b30b92776630055e73db8148e0f4aab99cc420ded83910ed7efdebb08290afaf17e133c6dbc36592d7f3116027da528666940668911e54a66da4b2713581d3c18c545ace8ae87378a611f9f056ce61ba79ea32b5a5397816bc60e8c2ba46a06fbd6ec8a37f68fa01cb1dcf3458f3f1b8cd4375192e83d522c3fb0002d464d1694ee37e0753cf1363db4ad66d0c44cbec3e2ac58a185fd9f08ff52d769157ff4030cd352a40ff741e0539d0230124c782f2fa9fc88d0220ab4ca8b64119bad30c8aa5724498c8f7097b58b318d94b361c2e299a8fe0ed17672a002031c9ee6569a84ece9433ce938a6ddbd0d2d36935213a1134aa525423c0202a29170ae008cac0bddadebe913116955bd7f57dabe3cbce49dd34cf30818d77457244eeb833a4fbf4f94a09929af4e9cb2a7f807bb41e144e0e8bae7e9ec0cc7af374411a5558b91fb94da05f1dd4aea98928e44c9ae02dc46f8d319bdf5c4f4a6ad22c3bab768936834bc2fe44f856af63dbd980ae67694086a71ad4db6d997a17a118ce9e8af5a5330bcb7c94e2f0ee8d6925883ce0e80005dc62b41b82dc9ef9657fffe69bb48f8c6804ff27046ca94e5bf23e2f46d75ad17f0cdd7c62c5850ca3c9eb1304dd3e9d07d617dbe91e8a569ca200a3ea26570c071ec193d1103e67945aaab736bf371c211ada0d4765aeef437cbd556f1a13b5fc03573868a43676e526b5f1a30d06f9b7f13d2bed1a795fa61d602e965ab27b5077890dd1bf9eb541b62dddc4f38e6e89e91e118345e618cb7bf9d37bf240fc24e54d57cdbabd3b9394bbe3cd5ff100214acf124a08c48287c7c790c2d93428a96945b34e55066ca30cf201a93acd2c0f2335859e14d20b4ff29e4725fa47f805ff699e734dfffb24798bb96a27f2a6587460277114d90adf3eaeea5d6702d600bbc7499e8dd7388474fba3ba0d5c71ec0d86dd592cb37a53cb8187bcf5e54f64d7b25379d7c0814076f637f1832d5201c142748c65a3e75358535801848ea9c6188aa3b7254123c69398c9dc9823ad59dadd749be7a0d32b04b0bb647d5bee46ac14bffe186b95c065cfbf6008ddf96b02052a27ba1c08bed50813e18cb3015977e32e2ff898b6f14f6c30b359fa3cdadc33daaddf2d1e800c6e20a40add5b28c1544b733f32148668a877eaf2ef22699f13d3f723c7240eb62ae0af08dd41b77e811db9df407d6658dabebc09acac70151f36bc3016e0cea70657c32bd640d3089f2e2f7e9fdae1b16cd1d217dac8f00b5497078af7b8d7aec04a3f3d1b49f0d161f3c1d96ef1a2ebeb5a55e0e6190e844b74b15ad6cb87769c54b3d7db21948baaf76911131c1646fc9ceefab653638f5c62b2f4bff4bf07080a93fdd79be602c671569cf53f15a2d18e0e846fe19e12a936fb382f6d60dfc07fb0f4bf49b6526fb32c7808670666fdad6b6b49844ea6e8b8db2e72e39481f5095322aba18c98de950a60084bc19add0b41009fa25a220a1cb706906fcc0601bd8e493e4df45d54f4841c76d02557a5e73e545bba702f25dd74758de75cc8daef024440ba31b9fcefceaee13541cc15debbc352a9e75d229ce04bce1b68447c2f8f2ce51ffcd17f8530462cf68188d1b796466fecb93fc237d95297ab754449cff9f786c9d9e0685392230d89601773146c0d8dbb14b212acc25446441bcebe96820036cb537838c6346982311590cf48ac8036ac470a435c4fc42a1da4df3551ce052cd447ad99673b6515e7637cde43d57ff53d3ac57496bfc4f388bcf773e3dede0085be50711dbec3a5e760b983d8089890a4e16fa5464e3214169e13e8a27bc14480618787f8669904a544b8f9676162d9421d8eef118854cf95fe9a11a2cafe572d93b4847708cb7ad05662c74c2bee5073609d70f27692903960618b9e1a4403e8cf4baf0b41844bbcc52e19df7e570f2094762d3c348151cb4c6bdd1b852d208dc0162f4e7d02502fe54adec738e970dd6f07ce5cfe3fd659bac710bf89b8adc4627433cc82e220f2c3a0c68c05f7546dbb9bac5744718fe9f3670f6c10453933ba0cd83f244e2d6b14b361a9f6c60c7eef7d13e5c01e7a6b68b86e5becffc90cf320ae0a46a4a97620344323ed6f2630cd7cbebc65f7f178426a557394a94dc207e487e3ce3981ea618b51705dad2a0851a48293817d68bf307564f0bb2d268aed816ad701266b29049a70a1395aceec5b34fae4a941b4921770f4007c32565d8c6c8f5dfade8e15b495b0ea71014a2ad1501ba43f5688dfa93d5c738d0270968233f9cd6f49b4b402d7655e01b720cc8670a3df63e3159d82637c87b3b9f645af7e89494c6ade7d8511321fba51cc1ca6613015075d257df0fda1184577b5b57763f8ce5b80ead4f01ee2a2fea30f83e93f4d29eb7f40c161605ca49c558373ef2b6e2a4eb3027f26b0d5ab5d90069d918c5cfd71d0a88d0ed5560b5d409c4bfe49004664cee9b345fc16ce0cc33bef3d64489349edf2be4d0ca62c51f613850b4bb274f232651bf392d819f832826c806014d457e6c5a924568aecfccc4eeab69cd5a1381f4dec5215a4edf096671fea8bf251453bf0ed35595d97236761e1fec064bbe008e20da13208c474dc9bb8747cb34f33fe2e20229b4edfa01c7c140bee3d569d5af91146662ea746eb550f001ea9cf98d92f4298ad489db0d4dbbefa65d22a507e5c9df0c8d35682f9cbca0723fe7babb6cde2d143a048a457d72bee64fe4ef784da67641a9eed5e1e5d7bb12de33dfeabd76edf5b5387f8a9a5a6a03541750e9db5452459652ce3874d35efa38236d06d247466dd8ae5a7dc570ccce91db8742b588a63d7920c3d7198f82085a73c695d24bb79512c0c71a85e85da6dec42173265bb70a1815a31341803234d499245467e37f22f7a152d2c573cce22ff3b41efbd2cf01ec7ed9a8378f4b21a6f32b82c2e28b1f8633ffcf23888a5fc329c1c1a078e43731b6f6a2694718aab048a21105b13d9e39acca35bdb9074a9e35322a6365293830f05e5f40a6f30aac3141e17d3202e0ce76863e9919826ec2a5a9a5f2671a48118dd5cce47c7a1df440ca763d60121514df09b3390f0106f0506a59bd400560ff0121df5f0519eea862f5aaf9fb9bafb210c7ec36d6e3bae0bdbea57cde71379c11f7b4566e51b744a0bebfb60998de953c9184c166c10184b5c617f060e702df119824d1c51a91b94f7848cb39248ff585d63ff047375411cce65e7444ad5d076b5d220174c190f3b6716ed65e110c8b4adaef27c0ef5151e0ef4f343e906d2965cbfd6d57bbe8c1f3c9a6c447337855958633c194b672b787f381113b863eb6a5f61dfeee7729384a55fb7f3620248223a2cda670e75c599a277a5656992493f6d8262aaac6b1a804731a23c1fd2e31348528a7825fa42c6f9e217dfc8827483b266f1fc336de0f7490d6ba08985dde3b90b259b9e4c137484922632e8d1174305e8afd439015e3c95469e367cdd4e148ac8ab12e433111a817d55f20125b834d0e937cfc2e1be5cb1dc314c88b233d4bb136ae405eb7e98c08c6b7760f5bb2ab437b4ea99ab93587424c9d6ee384022c077fcc27ebab742cec5a2e63bb0c3e0863f9ce546f49b9f06698cd24aa117823c5bb7ffff56cfd4682217d2b3c4aa41773fd5f9e68d9f04da7c23d1515ea54215de59a6e6bd99ee52f23d3d4b949fcac53ffcbf21317967041d9f71e23dc82b0d11f73e8059bef0b6135aa5b3572674beccb65d1ddd05931291fe62314f0b737b86b2dcc4172061d0b7f4bf8c649399a98604ecd0e255a763f242594f9ce1cdb95268fbe5b415d87f7b8c374550ed1e6cb8abace4f9fffb120e839a8211aafeb760c6834e7381e10a7bcb020eb454503a8402de172e615378a7f070f2c91f355197d94583b3bf3db7523680b697259abe24253123c3caaf5ff6948a30c0c05c05a4586fc88e4a2e0330e6f6b305183e21d24180cf27a4b80a4fb4d098d103faf6be7a7979d06b92e6f2d7661760ee15264854d99f3e7234aa04bf5d28f5925e1459e40336cb4f9b042551983083c3a623d216708d19fcf145d80bcf8a32869b444570f3af0b2d550e980aad64b32c39e2555efd4d014515445a79538d57dcf7382615d0183a9fcc30aa484e1594727512418c71fdae351588f6b6828f261e77f86467b74a91831e24b14f1dcfd05cb4e2078942e37565b551f12a6ce434cf798f2683fb81e07e969b331e801d16feb473585a06bab72578fcf50a8c45fe2e37d962ee1e292147c3bfa6f5c914f4ab0b84d0d115d28cc09b6c38ba7f9c1d1b0a41574aa935afacce0c70823500f12645b70d4311165a577ce2625fd51fcb0e8a89f033530a4db299411b3a781102f376db8bd318323b64a0952ad53979e0e88a5ff38bd5ce5d9235efd26887609213b17e43df8a405be2ddabed4942e91b260ae23f3c76d793a07bddec18cb3566c46930d15e9d52553caedfebc9e2325792e757e070057462a72d898dbe85af341aed0ab66b219ecc8ab1170a97b2d3c7ad22d2e207bb32704921a04681178ea025b247c30ad706a446c1f42355513b23167a92914e00138777910c52d19a038736d52d26d1ba37d5da95677ac3209187764183c7d52f2f6b42da1982a2785a45247126e9a52b3d407378cf09bf664948e14a299c527e70b9e264d207268525471898546b18f445c5bf691b54dda1bb14c2fe40e63eedbde623580255a6f995f5ed0e9c76da7f15b4f98a3d75d5838436344531f8c6e93575175c24748cc79b248fab3208b1fd359177146eae26ee259da46e48adde985f8734ae20390f42030519b81bc6d3d848973cfba5298a2344f45cb995544b6d5db07d43c837f51af762a506dca24f7c0703858baeaf77732fc5f1348d6f6407b7a9924d61a4263e96f707e9ba9801068764df5905c9782711ad98a27d8cd6175ec900f10a0ef0268c3149d0da80cfea1f10a6f1d423cc8c03f07607ed5ad38035a325f97bfa2346d452cc0fd95e228802b554b8a2597c8d2e619b71abd69dfa98f06352679fc5506eb13d3b1766a3f24253e2656a1f5f20c9d89c023bab56b54701668bb0db84e6a385ba5da441e9454d1ce5c50c1fddff6e8581ba11d95f2fed5f4088085b3148d5259f05e883e99680b880bd749e37a666ac15015396c42802d2f94a4902813d12026aa31d7fa8c33da84ad7b345ec2d36c42c28443686316f077f038969f68619f132f514eb83a73caaeeb89651ad6b3583d6b94edbb4237bf217b055a9abcc79d38619c507b2d90b28475a85bb735ee254b7d1d25a74faa0134b18524a14a933326f70873fdfe84533973752f0f0ddc287dc0336d84e6d7e87a75bae4d34043c63a133a56fe4296b6a8527f015870f101602d008a92c5b976d81ee4599849553023b4217cf69b558a9c42ccf66fb555e8118b45e4aabb83f84e7967f06a99c63c298903446e086f02aebb2c93d7b693a8f97a59b384358d8104c02a545a7020e858e30e3b67e624c11a085833e03de57d4c4cb2f3c6e8a1daf3c3124b38783b273ac023d7e6814ac769ed2415eaac5d856aa01f3cb42212408a7e02b8ae6b7b05232cd5812a510e3572c04520d604512d63647f1b636f972adfb19ed11cefb5330870642bd2267aed9f9c819f3dcb4c97345077668bd3f68594fb2a8e89586916659ba2ecf5b6365acfa0c88d705bfd7d95693bdc62df5fcc705fa6b7e7c066b91b45203c1371866f097c6e68e5f8882f9acfd16df3b9c345e0c8b3a486c198c1132853117ed2be4c0c4e814ef85edfaf0ab2cdb8d93f424a472307b4f5e485ed012ba3de4397102da565882c449e4dc732331734f1f45a9a9be3e4ad2ba66995296a4efc366fd2fd3e67cb353dafcaaebb87db44350c6bbb5f8f1db88349705b586bf914671310e1f64652bdb4eb179fd39cd698a241db3274ee09a9a70013f91ab256dc3f5321a2ff5602765e56243dc994e64e5afaa8319fda6f572ea300250481d30f34b921149b84e7817e1d9786cdcf77b436f908cfd96225432345b29d6f71f597c77cecfdf5b62e2a886dfbb26a0857c6b66f45e7e2c186bf0189e1d42a49ed5b34f4a4f92a4fbd4f82f4ffa2c66328e3aa75859fb82fbaefbcd0fb5f69e444ac22a7e355806f7a255ba4081c022d828da8b978deb6d6a37020e96ff72154113e2c7737873434001b526b8bb9fe393c761cb13eb9c73ce66d321ddf61258a34ff7a71942d332ecc56c687caa70ae51a7a57241f56f139f0443544d68e4d03231184ac13ef516e2c9ca3a8c78472bd6a35599db3a3576935a9a9f1d9f62ed147dc51a371bca7fc43463fa1fc3d682d259e670cd630d96166e303488eae60ddd33026a496e7bef77eef71a82dc57f0f9dd350cf84c9adc515e8e10310f04d119b8d9c975028931d56e1fb98c78349940194f9effbfd786d64eedca2755e66f061c8558e1db35144ce49a1ce61dee5483f9ccbd0eaf21e291fd8d0084c8b1ab63170368b76c9b7d813d3d6ca8f09f38edc3487b266081aeb1de1f8c42aaf0c6ace7ee4cefe315d5ffdc10bf46f73b87869a87db630a65d2d55aa505cdea82a5a9158fe7b607b22ccbf1f62e57de697b3937d6832febe6861669c084b3fcb6cb85d2d2cb5935f7b348ac62d807162045300e1c08c64f112f6dd9ad3ead626427750fc9ae29b59c44e74fc23ab99feed9bbf852389f34c54ad7ad024bd6faa038e7b983ef8d8534639226aa1fc8f806ccb5c21f92cec871b38c780b33e06ce3309cffdf41bb725220b70fb0968834f0e9e3cefdbec9190318be3847cbc8a31461ca4dcf45579ba5ca2520cd92b83b846096df99c2e593447e1d4e7516a7ad02ec6c0d4e68de4faee65ce3730d1aca0eb09c01ee2b714d1bee86b5dfd0121af06231077a62bf00d4118f9443bb264f2490facb822714408a28cd7e81c6f088b113b171736d3cd7816ee143af141ecb4d343b552f5c0312e54de49219c536bc73116d331e20c2cf473566f5026c2f4f54df76be8bb66e09a6ad136d9a08521e917942cf639cdd4f01b3e73155dc1a2e95ffc9cf3014a178e7450ed5a23d957a518e881258e0bb7d4ad06cf2e614886fc6fb0360381f68c226cd20983f188b21d1778038c59b14be27b2407b6751a9083d14a61f3d67bef0e282990d450d3d29e4318219c83bd412e83e74d0209fb20c69f3521bbba0d70f48b81e50c3aaa951c691494da2ada6421a7d1cfcd70e161999cb67c0af3ef9b766b5fcfc932435d0e5780da0d5bc73922f40e345cf5c4fff0a8d86b26d5547b86c58afeeba7df28713d34acb531efe068f9055956d44b5853ee3094560d8dc47d0225327bd5bc08f224979f60f3bb7575ab6c01e95dcb7e694fbef33703d4669063f196b2b323838d2b850f3b3c900a7c2ff67580afcb3e4a4dcf8deae3d1a6e90fffc15db91c4d8c04b51b17476d580793d01d62e2397f67a970b2cd00d846ccfcfe86272705e9870f0b21f5adbca619129ba33b364368c33ed69c96fe37b86fb9c0017e4d0e657d1eecb80086b764dd43a89f35ac819c27e6b0edcaa0be28dd0b7dbec794f2eba8598cbb73521b1a0226f3d4e305a0ebd17de1f4589cb1cb63ce3c6f04ffeaa4484350ec3553ffb79e858a9d2f105ec73cf6e3a579af40ba09be56c5544dc5ee743a2d6c509e11841396421a1ddc1bd3247ab6a8b87510f8c6b8ea11954a55763767be7062bc85264487be84d76e8534a67b6264640bc52306fd1549ba4158deb81fe69ec5942e02d468fa52553c5fe6e073ef03bab2e4d663a0c79360112465d96e02ca713628632a29e18013483a775b890a5319c5d1f70d4cbbcdf060ea575f6ee3aa5e76a2e9e0e44ac74a1791245d3685d5b2129b3596461aa6cfd4580df24a311af7a38caab0785d790cd3eb3b6d43bbd3153d27797d65e2ae690c0c3bdd7024bd67d0fbbcdced7ab618efe3dd197d2e97aa55616e9c4d53f3e8f56d6a1d0961aacfe991fa1de2469c60620e7590d09e865b991492fede6b100144a2973d04352d0a65015002adf5211dd633d7a3790ed2e4d781e45893a3e89615742eb3331af958d15f3dfe57459363527518c6a8e71f78e27cfab71391680615b8d7390dbe67dea1bd87e390aea03ce70bf3b7419acefd45dca487904d78fe579807113b59d1a6471224d513f5954902daa0205092326e0d5c56e9ca6d7957aab023b2625687a6bf057448342352b8ce264298081d885f326dddbe124f5d18154503093b47780864f9adf0b31cddbb00d20f8f4e2fd6ee37bc9bd38ec66c2798e5dfde61a40de4959673f042907dcb556e383b435b0c7a0669ae46a98d8b157dff214604b525d17517c2f69ab8f2490ef596ce8739a3926b4b8a10d20e0e2efb94f6fd4464b3bef002694f5d961bf3b27fc91737ba3c4c6c8d2ba8fdc8fc8c46bfd0742a3016b1ab8da9e1f49ef77d42f064391a6be8c0d9e57bc7e3ac901136d9ed2b42621c41fa89958254c0f6b6387bb52cb9042e748dde157f97a684e6523ac8545beb6483a6b64ed62eb22ace61db2ad96a0229b3e2f60202286008757298789b3e939524bd08bcde786b6e1940be11c993f7c786f5d01a9085862242b8a942850d28dce2e7c93b3d54658365e6df9c08a8ee758ccb08526f67468aefea3d144e6dbe54947f61c198dbb29026901db57e567953117b939f9eaa26dd8ff332e4e310a6ff955bf6a29e3786f12667a5c70b3e9b8997c83ae9ca7f2bfccc4989c8801e2fbbd6ccddcbeb0c065221769b1529cff606288e819e58227bd4949dd8a29302d8f6334fbd2d2d05e785e4b5c04325be50feb0dd9ea22f7988583ec09f0d0d0a6e474a9fb86c45c40459542148b4eefccde1629ac32aa6b4a3023468889d61206f7615111aadc6c2799eecd8f9d376fb1b5f452dc9644cebdf164ca8b8f2d804e7d37341bd3f8e67314c659dd8807525bbda0e028cc4995b7a1c0d0edcf3af21aeae96f5b5811c78b26a3e92ed4967d830a1a21af23656ac8ec628c98f1a8809c5ab55367383387f723337a86080e3dc9679126a3817faf8d989411257b4095c22ff3fca3029dcf8b7638ae3305849019a91cb8b049f0d8b34a7b38d1d8dff6e5fdbf46d22b1cd547fd633d406820c950059d309bac1ef26666a0a611ad0ec25c9282600f2143a43fab33624666e7300eafeea2ac106ca0b9f9dfd8a57e9c84de91eb084b499b178ceb04f6e2b3993d921cc3bbde72818126df933ec25dd092107a19868d5b9f2a414540ba0d8fc05debb0202c08385432253428a4de060dd047b85d77fad1331167f1a626823c3e2016e2419b000129573476d92c664db8c22e2500ccd83ca31405c184271d04a1414b5f6a5b5301120d667c0a0219c90031f34e6073b69af9209afbfb51d93b28b5d0bc0f385cb1c9a7f12a7157cdcf2203a4c1b59fbfbd59b514653cbfec7464b135f4c494242cdb26908e04d5d4a9138236aab1d13acac01eab066d143c3bf23c1cb7af7b6e1b866b493b827255c6cd472e479f87491db3c5be4f175e7cc1726720f42aaf685dc19e9c88c5df1842aba5378bedadf0b4162637f2f93fbde70d02a2fd6a7f1fcdf3076b76731b334e7aa1efa683b4f861ce72c5032cf650c08d7af945de816de3e469f13ab456c1b7e1b0d9ceb7bce7697880234272c2f0652b483a2b930c9f4f3ea5913dc89cbbb5a8640b8d5d5416661b213f36708fad0e629501b26affbd24fdf9b2295ef65b7e6be15108563e9aa82d36fdd166f3c29c3a3d49110b36a7a1710e242899b0c722d410f6dfde5d341fef0d0a69a405c9ce0e708d47523c09811a7c0fddce9eaf7d21d5edf05f561af7883e6816ae917a5cb7fb58e34e0a4c96c05656716667bf4fd8a27d0c40fbcb89a58e0cd8ea946905c0442e090e457fdd0ac7db51bdf94b4f7681545e5d676cc00e4e20d83b43a94a618e62114046008fd3ef9ae5d1a15fc11aa260a4bd55566a2c09a2c3610117aaddf646760b5ccd3d286095025261b38440c32c727e97d7da10dfa4c8128976ea671815e74ae50498a133987eee1887cfaf23811dd1279a5391afe574cf930fe04567e294ddf9388a7da5f284f4134c05090407e02ca7d1f362fa1ddb8685bf3e679b4c4ff322d5df7134926470f118106d8406468c2cd8c1d7ac7c1cf5b603dbbc8efd63ddb4f95876ffbb87bc0a5aa07835f315a24ac11ec000570fc780045739a4ecac109eb01c0efcb557378bea279f15dd3569e58501147ce111b7a8b6b0df34fe7c78168e5fb2662630d4912ee716c35a559949e7d8154f37452e39172057879e322444787c3393532b58b08e9bdc252ef8f156256fe5a934e32525c1361de06b8e6472a83a602987dd63aae2e122d039171f2e78ecbb41f01da32c99dca304d1b91a9ed4b50fb67f8d9f1bb869ad51da150dfe6a6e81a36ee9e0ad598b2ddddc0a657daf0e3ca4198775efad6e6aa2a57062b1b086a77b3a6eb5be8798c49aec38b765640646ca1ea02e83d6597674f775e261bc89bf15001b144f79076c7e39a212e91cce27c5f8729b2c74d257c4650ba128f970392f0704fe79789efff8cc5227a7aa95620dea7ad9fce9920c61c9ab9967641467433238a324662695bf7ca2563c7f1bac9e3b4f9c5d72d77281a89dd022a8b2221a31334618ccaeae251298e158b5b665c0bbb7fae3bd340ef1201e0dfc5cd142580bbd6ac153f2e142141238a32c2c5de02b6900f80be216c2d7ae9b0880dd4b5638f6e939870bbe5a9c18904d11b8d6da1d678c70c38570533e564762d330dd378bad149fe39081def8f7cf0df3d19d4e27cc58e26319dc45a361eaf3fae973c1a14185992c7c05a5a6d601fa9fdfaa2ad15bfe29f02eb4e13ce6aeee92136dce0d7ba6691f93860f1276f419c93bfdc5fc949265ff862942be9e569729312ee9f232bcc18b038561ce61a4874b207057a7dde8031db491a13c28f03d8e08b420e1cc1d0b1e7977f848a90a9071a2369408cf9a1794156b20c4779654271596822d87ad9db286ab920a99994a78f1776f2cd17f24c48719a58cc9104f795e02e1363b50ee79d656059b43e23ad17e385dafeeedd8863a8d8075588837d1a8b5c669f6da07850210769695051a57553ad8ab58f323b67cbe901cec02cd84cac59dda6e422a25669043a29140d239b6e862b1db2bf9151d9e30fd88dd5e646fda4c92a0633a662dad1f801798c7f3106d72dfd01223d8e41710e4b82f1190906ebbca369b6ef09710c5568d6cdb43bc4b0589482474982d54b52c206cf593cd96e4fdf43d0ed89ed088fceb1777354b67279150729147e94a943178c8f68f3226946e7add99d971826d00e239f6bd1b21620f16a68fe16805a224842e66ba6a47f95310e408db08f2b01fa9d1b33ed75d41772fae11d9cc9026e2a12d28304c5f9d4366c9ddde3976f69da9d2762082bc272118bcedff3ca7361773e9683bd4dcc7522d43988e54fb9673e59cf2a6d169a110e3f4757fd709f669f8f35b6e791b7dffa48890614875d8d14ead8f9d4fe2f3495476838479d110d40aac940125984c3fe6f21a56282ff7a32c339504d2243f61d43ac38c988be6ff8b839f5e5c8bdd3e399cc12b41688ca18f8f7dd78937520320adaad5ceba048cd003d90558d3d6d36100802f169819e9f7f310492071acd4b99a9e471b22a60044221747c50ab2f436af9e80848cbf51e0330b408a2cfbf988e1de30e8ab86ff3d482f5f58968e2f54d1cecc081294cf4eb4efed3770118401628113643502462d1a499cb997e6fc95dbecf0131d394cfd8f3118796524562eb8069690a6040ff18c3911110728af32591fa49d26520614dd9c3364003bceae4fa73badd854b4e0dabfc420ec72eb3acbf9e9f4bf2ef9620ef6181ba3f874011718dd1ed0942d0edc9e6603722f03b34c3db59f5edc7366dc7e615f0f72ab10469c068f5a424ccb38a6f19b1ea1c61b3e39eb0e2a758b3f746eb811b60807cd733df64134840787c4753bccf01295b59488d54d4ac339ad6837c19de82d903c95fa24fb13f7344fb86e2a0410ee8508b7fc32a0748d6d9d029e4cd891cf6ca9e5386feca555c4ec8648323eb2d44e245b27a18ded5710c59cecc7998284244946df26455164f3a2d5675d6443270213a93b04ac5264681908a83453289e461e71090333c3c1bb5da13de6f08910457631f7faf3167c712220ed2ba46b4b787a940f1fabe1b23ac67ef082b12a84313b8069d97147419c646173f63c78406aa35d1af6dbc3d190ca499a3850712c08908f7e4083ecd9be95f7f03198ac8416ff9c315921cef15697917ff5b28250f094d7efba52aeca81ae17c2859c10bb91f62a1f80dbf6131faea1e7c1b776a46b7dc3b91993d05de390672998bcea8bf82c4e1bd4c49a26f48dc5babd4049816cbc294362ee3fe60fa26be730a194bf9d923fa0e24518f2556e5e786b986ec8863129f45d9a64ff8728326d1ae76c2f7a7b778a4db5f7e5144dee0027bd7e91fe75d96be8a217a5bc7d7e7b8b5db31cf386e3d6575f2a02424f5033a849fc4d209c007a399217768dac42e731bdd1787c93dbb95f980e8068c46b9731ee27d0e89253b09777cb464e86c848dae240cea4cbf892ee8708941a42b8715af7ea2708684e18abd38b47d3625dc98ae340586b135cff604bc7f2ecb918994b27c6ee7a53684a331207b5bb639af8fabc40ce9ecb16ba56039c24594c392fdecd366a522b0cad7d4844d6f3870e7cc94e07d9762e590fca74eea2ea922e0e41b7112bf643b4d472cf6e0702cfdc5f69d95658c406e6ae82d9b771f6663ed51745cc34f5da77fda18f11c41164491f995af1d7a415950b81a9c2b3e543aaf9a0ac308ef953afcad7063fcbb8024e77107903051d2284bd886164e7137d7dec0e6b21dcae2934fc59f0caf11004aaf4ec5def59caeeb6784364c37621a2ee920d5d75c42b7d69a9741c2385cb695cfbc72ff8b2009a4acce4043d12fefcb5d050899823afde6ccc89508a5c561c2799f2c74acc377d10273349f640864d557de5aecb0437efe8dc0e60952c9779780323a2260c92a5f46b80f35490165d95a1848af399c3075ddf0e558738a7e12993582005319104f827f100f7c0a72ed501037e5540d9940a729a88afc8db445841756ca5e835d1227d8f6a56b0bad507542e2c868ed927e3be9878bbf3144d547bfe214b58396677d3cd4607c1675f6afc78058bbcf44c68ade97b3b6f777b5b673e73b4b3cf584a0c7485d7960bad1b31ff658a2095964fa438b5d33bef559753a6f36a0c652c9487c06ea73602a80b25425798990c0823921723f39878cd4015072f51231ae39ba7fcd2e4b372700bde70d2cd004f9c9370f129fac61876c4bd040b9776d6e4c74c2b8b6294fcb8b352d6938fcb50b86e68702273b2e8d92d623de3d5b7713df69fe3aeb81034a06d98723e9938f51a5129cb5237c8af2c71c8c297e046179ba44bccba4f34e7e25c913f2d007ff6a3217f63dc0eb15c9a4fb8571b9714762b8d19497c590012f4683333288a8e380d322389a11d951d204f31f1f98eb55197d48264e02e820146858b49e9c330ced3a02e5d2b24b6612a1026fdd593ec9f0f3ecb2f045d94319ce102107be87f5e337397699cb5a248d672893f8f71914ca0000f1f5be0570142b370c47907bf7bb82e0abd2639d908d138bcd41ef0d6b29fab801d23d4f33ad38685471e43db1b49ccca78fd03577f88035477e0161fe74a2c802ac4b022ae1a9f795f5d02683ed1e21bfe07ae3bab69df8e40850d58d3bf07951f6dc4e00c699e69d239304ef50fe0b36b91b0bfd5f6b6b9bd195a0e15b957085d8143a6f9fef02c8e2d7967f5b49735061fbebdbb4904a1b0397f6bc5653d1f77438cd12e89b30713b3c4e64bac6bf52f68f418e95004c0f495358132ebc59bdb539984d2db10a0b1de34038447d55e31d60a73736eb0e65468e1bd3b1e7bdf4ae0bf371a976b1f77dd6d207b7326edb3d45cd8fe0c6888157483ada95b11f6de3a46b3e735647a6f77c776671515d19c3363ae05235085ca713b7bd9025bc112f493072024facd8778fadd600a806d219cf680d1c08363802dd916c053eb480da0ad51a138ec0552b96750231638c12d8289f35cc84f7d47e11f90a14dcfac80ad0600ada04bf4bfc14d219746f4b7f642b4d5254c363a3f91e3297d9b535ad55f66c3af9aea211dad2909e5119110d7cbd7c742304ecc03f0c4bc55c2aa83a1f6db12a61a12816b22da2ad2057ba51d784c30496860c68f2588bd7600540979fd3371c7474ff2b3f9afbe39dac98f271fe527ab7b1402fc985d14b8754222bab3e1b700625ebc8082a0ece22997c5ee0670ba0a19d036a3b33139affe63747d735dd5af240d9d5a5b7d8156804bd1847ce0839f472fcd9f925e656b3dcecd08cff4b61a1ba4f31f5f3e7a8bd01ebce5253edd1ff20bbfc86e0e9140e59003c9d62dc49d698c20a86b6a3fc9e4e3efb10facbe65d8b2abe441394c81ee79894659a1152ffd4a3a8e486c1eb42d8298cc751b05f2106bcc4ed14241a6c8e00738202d15e66f90747f4b2ab47ca0c5f2f1cc6800203a36272a8f7635c0cf8778137d08f4b8fd1c0b814fb4bf6169460e8b501247af39c8b1c47dedd340f11e3f34edcce687c8f0b5f9aa3a8b844c15b96f5f9a0559ba0cc8fd07b1180caae179ec923e7448926cad781aa413f7cc1dc0950731a635b90e087fdd0c6ebc69bb125ed72791d4b0606da26b7afdfff5c7b7978b5152b11a2d2b3a9fa15a9a3ab26d6ac5aa31d3ead9b8eea50cd1d281cb554b27751ad721eb21fc946e60934efe51eda719622b2619643bb85c08b0b57d2604741d383e64a745088f3aca201065a8f1c0c34604ce45038fddd9aa57bcec11fde545fa77256cc944197c6f3bd3646b4820c3e5fadf7acf760a62185f805f9ef46850c040c4f848239803206edde0b50eaa30853c16afbd40da7bf68b1577e0bd0eb47826bce9c767f81c8c7fa40c4433725e44733f25aceefc20077230eb891ee2e8b2e86f6aab6ee54d2bf598196fb4279274a90aaab62e9d28ac0072183b77c26dcf2330e67f93537c7a03d9a3c0423a4bd011b36f7e09150c3e742ef2e93cbf1561b62b17c4a0998420154e103524ccb805254f62f3ff5b4127604629424cc3860859aa2881888deb4a646f2a556cc7e6a2bd2b07ff7c590263f88dff4ffaf848e69844e2da4d5afdb768c304fb8b4b3eb6a4950492f1c84c9a0ebb243dcd45fbf222f3378cb2cabbb00a247b15cacf4aa5d76b64e9697fe078cdb791197d68f5cd4f9605083a18665653a0657a34113796d647cbe62b393dfad661ce50cdad53dded5df35e774eea1aed53bff69b3dad8480bd6061ffd0e375aa90f37c246bf717fb4051e0f55f38dd29759195d81ab7f6498312217138e7eab69f0a1c27ceb2883da45b765e47c38e4fe84d91f86698d5bc7b09e5939e9aae29f528f9bfe07127e1253f67847c1587e24969ce3f0ea196af9b55e7255d30b7bc12aa1661f022170224e793e21b9150f27aea748f9bcef71de26687b8c1cd959a92140643f310eae864709affd7021874439c7fc1c0cba0765bbfdddef20007a5b772a891f62ce4817259095bc2c81a2b18e3b2a01a9673e317a3763bb9a2da2faaf2aab309f449f6c6a4f8262981f3938883037aa9b2e133fb3f7b8ad55ad98f6fbe2bf3e4bdfe253107d9b6f9282da6c71c9be4fdf0f0e320427b03b90fa6a2a7829301141a75ae866744c7c9d6aaefca8b905d1fbfc0148440d678fa201a717171135b7ea79cb6f9475e27a12a15d1a766d9fd109116cad2ec64d058dd438a0074fd99831f9b82668ce3979104dd90babd3833cc8372154b78d130d8dd770d9fa6f87319cdcfbb90719a6da359296af16ec7502953a293db93c968bb7a7ada710adeee5655796973cfe06e084b30fc4e38a9c8a721e1bae28ba9658c44abfd90901a50c465a7922fa1fb31745cea9aec7b2feb1a711415e2f6951b0732a10ccecee20af0fbdcd975621066630d932628cc7fe760cb1260b7c9de8e05c19d9602efa33301c27153850a96dee63bf726746b90a315fb743a2a6cf4b1a3b066a4b2b422c38f74384f77e431d4b2c014207505ffd6c03125645cb2a9232d4c868dddd984a19a8e9313b570f88a4bdb897de79107d0c7a88635e6520e903a9b59b66b6b0b9d9f88d7daa93a8bb1bf8c4abe9c6a7b743455e63e1450312530b9b73638d490349c241bd9fa641502dfc16c7dceb752ca0c29642a8aa2a81a59b63f138ed08bb7863ff68775950ca88d2f03e51b97646a70a6150728ec6836e68f3adf6bd38718740521d13ce1c078ce9183363a206db4bf2f6588604f9cf3a20ce4f99331dc75195df137df3acb36250ff7f539a21269703e2638759266e5cd443a22129b2980fcebb2dba5e6ab83afa25e29e1e7a77ea53da14306872d63cba9da0e7d70839319ea58ac580e7a2f0c623b744b2a32d3551923f82c92f5df8ce00227ed2ad568b807f2d8be608663c0c329d88f549b7d0cee95e26f5eb7c2d2942c760640e206c9a2fa68939975ade09ac194825e4b1aa1edf115e6781b7ca9d5f0a4243d45a62aa7483f29e3e62e706a41036b59ba2cf6ced542f3c5a8526daec16325828e3c29dd0ee8577857943eba6a31c0710e5a019af079a18681d16b6e1c8c33cb825eaa753a619467d2832220fdebcbba248d7b9013071aba3af0a4f8c3b582fd9cba10883ce3dd845cd97528087771626681f913233550181b3d8046274db078ae1fd6b356dc624fe8a867c9563b209d49688313e25f086c707bf62f6613ae42ab00c263fd9b5625805f5899e8551cd9eb8160b8c1472b37e2ecb687486f946c5fcb5bc622f6c9587fa4fcc509227c16990c6d68a2912b8b52380a877de8554c936fe629dd76b68561fb12157354ac413d347d73a570b7f1f4a0f646ccd6426752253acb23ee220305bbc93d55558d4621d3009d2542e1ae6066b5a80f6a074adbd0875451d1882e515bbf898499b4e7fbbb22a742bd1f5e4a55a7d494e6cd62260be30ae5463582303ddfc583f3f61cd0b7279c362ecf4424f713f5765c3d0680f4d52c23cf902e8d0e1effcf7e9a56141e239624b26f78edddaab806856ca7e3262f0a36b884a71959e15aa5cd5269c08b84b340eb977706861bc823e7cfdd56f6c973e402128102d06bad3a7fcf032abeb3f964a0ad7263b585e40f789e2ff3ca7f9844bff1a8852d0d861fbc5dd991c9d6eed4368c867cdfd684a94c7c4784c9715d855876ae6b371f90b274eea53dbff2dd12681f8ed4775bf5276697f7687135515aa800390d2defe9cb1ba1a7082c52d2b145afc56dc7828f121d1afa41eddafcc4cb1cbc9e2ab788c3e17be3d7a1ab9126edb2dc4eb4d4479d668b94d87abeb25d4d7646da488c1cd74735270fa47c52a3440727edebef48a950851e603a2e1f58ed3d5ae7856e60196c1176dbfcd515a26869e9401292783c4275938d6960aa064fc4488fb4024b1682f37a1a5ad5c5138e6224ca0ceb2b4902f5c1d7e63c50e6636b52f2d6c2b9558137bcbdcf9c451343073cfabcb0905bbf3046fcb3874560348c585a138d49f1b163b34a5b791582ba885e2e1d76d18c2e04860d911621673e1d7f40cc2651bd3ea0ccfaf28d86b336578a92e0f14d6e316c9718b07b1234f1a3ab57fad979cdd471e96e26afeb56e025e5b4c95fa284543341bbb75164381af0e97f1ca76aa074e29b059671d904aa68b1d6d853ce53c243f75288624190922428d1eacfafefbd4e00053cf38d44ae6c7e0024a266bf1259e964afa07e1e85ca5acd16a4baa851e58849e6de07f4f3c2d66766aadc885f24deb64399963b66b625b0aa3c909f0f03aa7783a90f25a0f13c1b51336b934ac75eae6ec9177331dceeb3aa3390b5785ff8347faa99616aa935304e78d9dfbbdda3f2269baf59e6a0e92a2d3afbf652425949ba8b1de436b3d430add29b4e5658c005502f402d05beccd4e5207317ed53ce28ceeba991093cb145e82eedc2527a023a6be59eed0665c5534294c2ab747590d9eeea42b2c8cefcf1371eabcc016d35404db78bdbacc1839eaf4f093de5a038d4dd8c1a74c2a73d9bce68884fe9bc4d1cd4baeac2638b80f2a92052586d949882f836a2b5363a923f77a8ada47d3c7610892aa9c374507e50496468fbbe7dbbdc7fcbde069cd867ae0263524b4bb916b2ba0d95dc0ea4b69d61cd84c4f0df2c2569af6df53e610544c27de8c0f618ffe9afa1d44191e7cf9952d0fb9e58fba813720718d18345ea154d46d173da2e28d5a67822bc1484599c4abea90c1882cd970d7fa9d42fa40d876571cd4e822595295e4b68028eeded6f2340b3c597c5701700522242e1c8924266077dd0a9efde3250e28b8a4501b1d9267c5aeaa1b97e7052df95d4e4b9017580392ae003ea942ec38a7e55772cdefacfca717e86d16f493a4942c12378eccce208c499c2e50f263b840698f76c1521a80e2a25e509f189846deb624d0c003466fa25e767916491d916166ffbdf9260a7925e7c602b9a667135570319120fed8b0cc11b75b12fbac2ebb1d0118fdfa628acfdcb99760f65fd173297152faf0eecc8fc444c671892677da2178d4303fbeba08470b60c2eddb47f61d6a25e00f68bbafdd028d83e5847f11f43a0d5c20185614d87e5e7a70d9e88fde5576822c8ebd9c9118ddcaf740d5747e8e7388f11305de275234371c4fe540f22865433dfe585b241846627a21bdada7de7160abc5701a3fa5904309e3f5140d5a9516f112ee5fd366d2b162c8eabadd97c379b496d1ce13ce099224c43c21fe5d19227dc6ed896440588f8b6b5ce9575ff037d99245b31a6dfebcd50786e7a85933734eadd578dd38c56d6abc10c84c05f51d9226f109bee5a83ce9cfb239a545fd8e54fd47f73e09aabcb6a4c5d487f7186a6f9b2005d1cff28d5b20f23eff71dee8df44cd238ef4f6ca71518395a1a3ffbefeae83c52293e43ce22a1063a96d73011635b37b166360c2ddfea11daea441d4a18436e05095f14129c8181c28389ea1036d73ef4e96d58b3927ac8cb5c892e163eac9deb702969a7f3a5efbd02ec54c955be248da38707568ee9351e9850f1bae034dada3ea2d003e68a865a65eeb10d865ba877a5d36c7a2e29e3948810e5bef57eff892ae75ddc12beb1133379e73be2b1cebdf32369a74896ccadb3dfd4299946bb60f2368bb1e9934f00666cb31e77892052c8d3772f81af8d777d0f88f1d61a10bc4b51bf1b1e89ae5fb2bcf29d62d55182e2ac94828a20f73bfb5a19e82b18ce8ee463ffc67c3db9b5921b8eb4721a30a6831fba2d7e182b9fd96a85f726060d9612717ea67b49b25276ea031c8bf6da2ae6ddb946a955ad3bd19e39bd6a532edf8cbbfa59c313bd9af22aab80dba766652cda826e5e5ccc8eea0dc01a5c4a20b4ebb2a496e2fd1a03a41ae167855d72cac272fc82fb57cb0a87c1ff9e613eacb514147143c1c690cbc2a2f48bc831577a17a69f7d1b1e1ad533ac8ee0fdaddb34ca314b9bee05f460c57b8955c72d8b8605b21e3d301c76ab771bfb4224a03e40753be471e3b41f36659fc1e359731e5cc29d8a5e057d43c98499309c2852cddd0becd5b7d1861fdb60327bd3a853aaf95b321fed7096a61cc54951e3f0aacf1cd5c8a5ade86982f2733afed5c5aa9d112b1d5fd52a7cf0d7423c73a07e18c7f532f9a9119d79e900d07d52425943a3c8b54454b0b350cf92c3e622a562eac5bad6c67e2600d1118d3229816d881ae424332887337e8ad435093bc9a7c2b8b44c6ed7595e4dcec1cd15f0a11f2cf13172dc5100eab11def507255d82ca8c7f0cd07bc621a575ad78fa47ed13e7dcca58338d0d7e76261b8e502631ad999fb71cfd48a1ec95bd2f4bdd0b99255f38ff62e6772b8c2bccf66bdf89f71bc53c8110f06b3e0ce23be02f2d45c02e8c657e8b0315c1e966833013f3443ba0d26c0532a68876ea452b971c2f402149bfb914a75d900355bcc9f80ed486a5d4b3bdeb905a8af603f6eb1c470d34fb83db2c5625370bd971ac291908200484e2a173c9576cc22c88000d1c97fe38ea6799b7e28f11f70e72cb4b0899328bc60d371ef0bd0a00b555db0007fe45126468a4c3bb1c0c5d4da220d41ee3e4c6b00974fc2728acaf0c2134df74a5050debee4e65f9d859d5d987d2781c3b01610adb9058503cbccfc76f64c007062c364b14b6929a0ce1063e761975ae610d69541934871e3343500b1c20596b93c22e5e05691932728f966b060a2c19a046220d2415305327e4a1e5c56b5043b2b36c05aca7b055ece1516963d97a678687fb95d4839fd0395e321c1b8d7492b85f20a4227bf573307c1085461b36057f447836be07ddc6bc54baf8a2e9eec6389751a48da6349db5a889ac72d6e25066953420280ec4fb118a324def49b78455a525a5dad35a93cb0cf1304aebad3d7334298e1afe075799941707238dfd0fabe916183df76e917076eb96cfa2e6087bb4dc09e6431da5b16daa96d4f09aa19a1824378f61e92294efcb14f8ef7eedac91f592df82964510daae52e9bf95dc30f166729ce164fac40c159fda2012151c97d9526f7311a0f2b2ffd2d931a477d9a300ba608fc71d2c541339dd271b2cb36b4f4f072fdf55268381b07267bb0074f55419ff382a3e031195449a28273a6e4513324fdc975db0a3dd760153d78c16653c887bc3e6db72053e8db8e0f2e467f09230b7a39ac85e5a09f5447af5c2a5ff0f95ca6ff8050e65705825cd0df132f6f4d4c42c33eb7bb764e40161c5065ab545f26cf5a083f158385b1ae3e61503ec62d01981939511d212fedebbb211d845258fbfceabe3afa370bc5225e9088ec29ba0f1d8cd7ea602b47deedd93b1783472eb005f80db1a88ed194f45c2d0219175328f83df99f5872f9bd549814faf8269f4eac92edf5023db63a48dccbf64c9b797a849f945bf7fae4a7e656863a5142f358cc547bd128a9ae00d5dd30b0c84e343a674f44b9859e863a8c32365dd1654c4354a0ce4dffa63303cc17bf12c902e6d6451e4b2b915235fe84c55f62c3e21f2431c9ef5ec46ae00e82f776073b9a57a6c544d1a0c5c0cd55213ac71cc0b0c4a8e645fac41cb4cf628f2477e38286a87b9f7e2c74bd9e42bdb0d2e9aef6a3f3cc1400c093ec33b7ec5dddbdcc536dffd5870d4c079c965b63a8522a09bf70e228f0417a5bad42a54c7910aef3c8cef4de3fc6ce7deb081ed657f8bca03503840eec5012f18539b59ff00ca952be641895c80130fe927c74088341ad7d6416e8e0c8f83a0c393cb94056adeae8f493ecc60027de799cc5cad806ac6fc59220e2118f217199dc91871dfac008232f6f7876388db58a49649d10499e0c1724c62eeca0df4fff57e795265ef4cc594105755997790869bfbc9cd2281693cfc646b17867fe95eef86cabe83884499e790c81287fc3a25d27f5d35ec567d2c1aaf3d34758a311c3aa3ff86f5e104b7538f2d00b47a9afd2703d0cf5b0a402aaff722d2c2da120606471f1856afcf092a691315508a152748bde007a889f6e25c2e18a38fdc10431b305d30947c24e1170a7c3fff3bdafe789169b2bf930a50cf3d4572c9d9a113ce14c682c58ed88523aa0eabe6b4074e627bf193223150aca21c06609aed28ef7e5234112dbfdc13f5b4634eab44f0d17d46a0e32b1fc8f0d82e5a77846347c74f5eca6e6c7d323e00b9f7ef360fcbfa691521bea328dbc211261b02041f682ffe118e8d46388924adf9d0d7e5d79cc204c07b8fad0beea1301e31b72297133aa52d0b3e3c7689ee8ba4d9f5e6779d4343bb42a621dc4c7c513407d8379629d536bb3fff302735ed98d6079d4e9ff6d6f946a7e6c673e01e601b6221d9d75d3870cd959a33ccf4da24e928e06e50ee10fedb437f28dbe7d1652406f3d6eecf029c27368e2c1b7c2255d3e2d13bfe7c3a175cc32656e558ed4fb42abaa829f88d2601ca2aeceb855ce3cce06aec0fb3367852a794fb3e6bdb08aa2952179ca8c0245b851468f96d9468baf2fc9512546170cb5f4e50794e4d9d7826c7d9a8ab29ae69664e20e918329aaf8729ffc0fc404c19946934ddf5616b00503c7b5029084b3501c5f31cb0a86099f8916b2b083babf1be9026583a314da418ebba39b2592276ba481e5c590d902ddebc372b8fb1d84c02df8163bcfacb26432f5f493e752ed987d763c67b5c998a0f6f594b18d8dbffe68d693215de97b26d99225afff605a2e0c19ee70c69383885d7c49374f06a5d687d9093acb290df45cb9b3bd633b345ebdb29f1bb1ea51af0cd744882e15ee5fbdb10a5861c4c6526e5f56aac04d858a27ca12285627d912c84d20a0e4e6a144568a7704858820f27ad1b4a24535c4d7a4815fa243335202b05dca6a969a2c3fce8c9badedc13ef341fedfc0952ed05a0145608565efa310cbb680754310fc89c7b55b27bdfb0fd47071e17eeddfe873ccf10749897681c4f1404eead60095f35e09159506927d4175f5a6b7bee1d20a68c21915e1df87804f64a84abba361f560274f07f176d2604c3265963c5986099f45af489f1c8d002ef3a1dff1721818a74e22e2549cb9c6640af5a6ff55daeaaaa13995bbb0726ad00878aa4087058046fcf6487af423627ada36eca0d0df84bf23b7f59aaf13d96134df125d346e769a7d51f5f2a96dd18ce97f9b6da35d6149c8a98219e41e18c9bf460c59a59e31743c35ed7d65a4163b728e8df7f3d91cfd910b13b5ef736a46d6469dcd128e3c7c96d50064c867743953217e17c15a152c3f1c51fa9bd06dca0705e70ac3ff895989f78041c97022173e47fc58211a0401ea232e1fe36f7d6f6c1825e69fc7aa67c54afbab3c1a3608a0cc5562c8de96b6f0f2f150e99cb43dd0bacfa89f38b59ea801c8ed464854ce5f4a426afa2cbab1ecfc4a49ebd6009dcc61c0a2c26864d74798d59a4cc531e2c719b8b6dab51a49c3899bcf4243b8c3e6db11ebd2d838b45f2d8724c929c1cbbac12f776e8e4ca9a76da38711610ad267de564114373c82271bb4308e70e4e16aebb8e27bc1562b20331cacdad3878e21b3587f11d7ff785126168465c072bf4b7c90400094147946254c33680276c6b0f6cfcd43eb049ba692e7c7e89e04364ac6a38097d64caa25504bb0a6dbc497157979300dc203d35cd55eb92a908597e7f7d9c25715a89d08190c94d38aca177ad83a61d2388a644d85527b23d61551175d9fd3e4dad80b9cefe0151175118f685a321b8a6f9ae57f27b6cec9c070e87d687f2aaded9c09b3c64166969e259d6ce2399669a0b1cd5838006e813246005104ed4340ee47144b01fd66345def45ae457e929685ce7f54f67dd5a61c80cf35c0fbbdfd0dc406ba582dd1fa64898660bcc0cfd78d52c759012585202ad51b4d3917fe4328c0c6f89f5ab4a45a4bf1fec364d3160c14b3d1e5aad36cc112ab533db08269178a2d0e29426e6bd9db9ecf9af0b1d69b7cbc4d49373fdd693233f47c3ccc05cabe36a87a1ddb6f36b128253f032491f72a056051f443ff59c139e41a6c16d118b96138550829e81d967f33e340876958a116aa566ad63056704525e1b5fd2994157c572e613580227adafcc7b13f2ac3cc62e41a34760038749b18a102919eec7d7e5240cb0e6af8242f24c7e027f6215a83071318fc895932246ee80419c037aa26cf083b7c9f848992cc0c8fd654d7ede6ebc04a3a4df65582e3bd80d7ce816c415a2200629b015c04ff7b9a9de4e5d7c18771d4be399074c4e39cb4ad0c2c4a38c4b52eb86313e90cbd0e0a24c6b82a60519890c7eea31725ec85584973de1a4e63024353ef097f361d7961303a52088209667edab2bd067244067395d4768cfd1be5a3e7184ad03197d0182a2410792b89dee2c08c4c73ea8c8adcbff5c297b318d6d4266ac433c41451e0091d2803635fe292db5714421e94346221f30a6520dc34e54a7c2c133039076e76189e34e123e0f1ef562763c3d0cb83047fa6514c92dcb8691a8320049da168219dde7ac5af2d46f83b7536a44a5d54685e967e48363b7a97a9a224a5eacec7c70e7965de79719395b2a9a2a07b937f806bc463f32615a876937b702cc11d33a230194edade3f1b4dfe23c6f8e00f9a9f2f5983e40547b84aa2f38a76c28d928963ce4df64b43cd07d84f940f3cf08f5df59858ae8f4ea4ae9f87dbf59e1558b170de9f673ed4d25fa8e4402a83079885d67281f456db772e7e29ae399c485412621b4e78d23829adbe0771d0b6c459bbac01ad99cdd02dc96ca1664aa0a3dc891f5c4284d7c90bc773f346a5c19d477db0799571fbac2c19b83d0a03d401bd4d6f049f05bf3f8a59bbd014c256ca3f03b4f78e537abc5b944a428d58f3165eaffb207c12dd6f81bb8d45420b8364f34e3775f193c3a5e730a0dc50607975e56be11caa6a8ffd0c431d27061b628a323cffd7618b9bb9add9fa2a715faaeeac7f838d36f8688fcc75a6fa06dda6e91982e05cdb54ee39683f10d52cfd735ee57a6c183dce043cd1ab7945f27a906ff554361674e548379e718322969a0d8cf900bd8212dec26ab6c103c8249b1c7f7bd8caea93111828624f6ab4dbf877224b82608430de4a092278feb8331cf282cced0b786cd0cda77419c81e2a110ad8f9d805a3f850e4cca546b582c0a658af83a4544ee12d4bd72a8afd6feb2af949aaaa77f1a55c8874b6449cffd5d991bad01266209a65c676a87c981bee77d1366666b01f9bf85cac7ae37746e527da41c1bbfd0e72ec1624cb272f0a1ee1740039a641a987de613f7f189a1ea25b71bfc1cfc847bade7baf2e7b8ee18853f019ee5f0258918aa7c72be4ea4843c1bd759f5c59c77f86f24886fc4f940a0c82dc39398f40b3baa4f444e2714974ecd46dc7836fe7080d3c3b1eb16985518e90ccdba480df83b859a5d1849d4ba445a3bc897f70252039d28e55e83964fbb2b8edbdd711051f727540727b520415a2b7127a272ee17c4dbbba1d20d203eab67e6601774ca61fadd2d5850f8c7ee0899c9fc120e5b78223a260641e3e940ff6d49ac50a9f7723ff42e9d824b0d9e1e7f393ebd229ff65305e863568ab8f2bcd06d9231011090996f2a8e1cfcd64f027e5c6bda18f2ac3171f7f4a6f898e81c203c1f6fa02048c9895b9c616166401c0a8b9c044d34567a3115b398d384b40535e645cc57575e1a02207d3bc58615106424cd90d1360178a1828f8df7cbeeade752f67df91948eb74e2c9b45f1f995eab14b08372db5d70a3e2aaab48e9a932e13dbbc73acbccde005f1cf2f92ad60a4556ed21b81f33d951c43dae3aa309d57b8e4b16c63e4dbeade5384d98d10322d81854bd3f6ec4974fc7bc7db6df01ec2948a0d65650e2a92a4d805d6c48f8694cd3786c81742fdcb9b9fca6800216c97b6b1d0beea3757364a05cea1aa4c83cb00b219fe9ad51ffa928bb719244acc57bfdcda5239ef3cddbf0ab4a8617b737807eec8f0a14fd5ccfad011ec5a1f7dcb9d28bff424b03a1cf826654c28ee26239108b53c67f1fbc802adadeb67a7efc26bfddedd84a7a7176589c2b1a68e37075ecc2ba0c9dcc10c86aa86ac3327f40737f309bf1798448df0a8151b87d820596df2774854ac91ae459eb35a686e3678480433f7fdab610df8f8b1552616f4a9dfc4cb9f67b027414e40f84ed016c910a689414b60430716db4c05cff7c2b72415da753c381d0ca977df567a698ad33820e562a698df697fbe618692ff825006f983be5358cc88871fe85dfb76ab0d349459a724dd51be114035dd15c73150e270dbff02c819001647f579db77261e64124a740d510a0bc00d1958b05c42116935ca42a54de57928d92f4f768601c85a220d5d7f10ab308c027783f71781406859e8985f6de99d8b7d0358d3a1acec47258966509fb344d5338f21859a2a53944bff2d01ac7b000e7192f743d659c1cc1adbe10fda189ee783061b3d5a34a6b72924e6614ab54c909ce417d238a96199c697b7c850c9d0e3da3893f5ca2f273747e2d9467c9198e2d08324657477037908c87ea094a5545529812b5476ac51c1dff846af335da8162a506b64fd4cd18b56f5946d65ae09baea999c88214762403fcfb065dc5ad7a0da46dd402d50e9fb30d85243449fa5525257f6fde590040aa3fe4e0d976e156183176a72989142f30ca0890a6090b8328c673a60bfbc66411bf974e89479a843567fdc38e767e36c5ede31ca2b3c59f705894bd3fe55c05171a8e7f20d7d2afe675f77f352f344e9e3d70fc1fd4d2196946d18d68ce8d1a391597e3a9ccbd856544b8fe2605cda334bc74dfac6600cbdeed59602612b40421d430819c22f51f21b717d8c7bcf738a6e9bea2c0b0ba892979cebfcbd0a5577e7e0e33781171ef8cb59cd2b977f3fa14131b5d2705e5e61bc4dbb14747f955db1580ccf13c6564f0677c3b3c6efc9120eae5f192eef8d8064b9d576e4f96314ef4126bc3c742162f53bcf22eea8cedd4fbfa31ead863713eedf10706f27350f5e558a42990e89320bdd55854b856338255e123ca7349902e47c8466ce62068e50ce98864245945cede3da438371974690aa8f6ec4eff3658d74a929253d7227999a5dd58df20ac286467806adbea6da9ab55ab9857401153347279a65de1373d055a9cbc806d7e034c9ab4fe17389272c7c6ac4a9c789dc0d61461ec4a6226bcfefa620e398788a0a3ff492e5977680bf9e1335e6a9a196f008a9e14b2da330d0470f61ff5939457fd33c11a071f5d8a315d5a19ac5e9c5e82b33cdc794319ebd394d79b974cecef7ea5b3e1cabc7b085330e6ca7d5e69bd64ecce15a6436cf412272fe8b1f31c784166eb7d987213adfb064b454d66515a1a25793df8f9344a9ec8434a6a4c4c6b57db223cca3a16c3b8d2067b399d452393d080efbf37058974b5431de052386577a5afadd5d64a441383c7b6bf39122284fb9f0c18c93a30563e0283ece8e4837680736ae8791edcfa43aafd02ed26f442ed6921c19a5230b0e0b21a8f10d8c6bec72c572bba8dd785bc3bf565c3220ebf82f5c3c404377f49de6322f344c715aaa3089e77a177d0fe4009cd7861edd287b45b0110b66c9533694a5584a6ea3d2c619ec8c1de471a31eeafbcbd2f23c73a4c86ca7be664c1056a4fb5a7233771c57c138e0cd857988d6bd110047e9c9b1a3f104ff5546b401655d996f29869c344a8118dc59979cf2fa03752b6866c56926be5d24cc556ed0195a966a4bd1dd63d2ba4db15f7878af1a5d3380646389ce9f635c18fba451315fc2a5de8068cb69f47e80748e704dd415454c1865848f80432924999a9520212d5f0c0fd4a06472e6d7f7b1f1c23251fd2a7a88c54a7398b0e68cbb94f521ada1ced1dd6f5c92f27781eb8182f2633d880bf3792cc557515f7a0ad3faa5b5ab8f633862d2898d86a1c4bc19973d2ce0415b82d5d58e510b422b74cc3492425518d71d643821246c7f1342f655fee14196a5f2a27cd04c635080b228e0249742e3b5df5828490acb983d77e9e854f85ba727d5e7cce0035322f159e0bc2246e0bd5c6b2ac701f580ba2f57cadef79ed28ccae9a60014b9e9cad59426c772bab2499e1bd236b4bf8e97b4856fa16576776f9fd1a7491d2e57e0bf4c263ca1b84b0fb4d7cd2ef68bc33ada4650c649c4716d92b25f31e3aac66e8e0af3b674577f2fa3786561b21ca1e512f6085aa8ac9b46f89e91ce432fdc80f7a0a52ab3ebc39820c737951c1031a95ba00e731c3d2acc8d4b0bd617f75cc7db38be3680742a3a4df2e4cccc585b6ed70ac33757783a60a961da7cb358388055797836e1ec9b512cf9d31ca7b82b3551e4d42c4639f06fb08a002e14edc39f393e6b689224af2a9c10faa77378f5f8a5159b796acc9cc453644ca118c361228bf944db269042de429a156f5584b14c34fe3ce3b227b6a9327bf5eee2dd03c4de084d3fe735c60e76b8bf2175377c6601cc1e7a72a99dd166a5177c2bafee93186e917206703402ea71b228bb04d2746748db3fcfefbc2d79d9f1ef23200a9c78b75d2320399a054c6e6a75ad4be15a93ad377e38c08db5e870951da73ccb38e7c2a4f1f2c6330e9a40b2f3c921c2b08b5497cc9950a710d73d38cd4f0f4e5ea0d7c0ecc03d982119e497ad85026128fa47aa6a9812f3102758a1d58ee49ffa7a6e7251510917a614eb50e7f3a9c6f4296ce9b02f2ba2af6ffd5b954c59e272a00f035c64b223ab96d943d5ea48119354a8c0f5dd7c44fad9986a993f077dba0751c71506cf8b795207ade074dc4e167cced103863326229e1f15178938536c373b0e7e40bb154dc43c66d097e988cda540d28493c9be75b882c4b661e69d9deb79e0395425b542f1c852b5590f75f93693c549416b710a564119495e444ba2363bd0aeb211e18e3f8834d93abacb6c3e3cf572e939a758e4314d5ceb6cd0c2c8793d55d2271ab8f39dbdb8c85a4a57cf488d6898c23a0ffd64cac23c8e32f7e9ffe95841ae3c6f0e1f685797ca7170157c90a0f0b8943641195c350a3b6e2be2aab7fdf519acf4c39874bf9d6c6f1ce6445ae9947b1de8b5d3174381d32c90bbcbd84b659623808a969ea5d5b230fa44dec3f40e716863ccedcab357541d76653cbeff772dab31f45811aeeb6822229ffd51d2ea6952f7c2a819219b92716499b7292931d04ce3d6fce9ad63fc6b14046216b45de6dbc4c341fb6b95bcb6b277ecd146469227f6227c9a055f0d02afda4fa5e2d7f40bfab36c53cdef9042ab9116d52413efab2eef247567e7af2a1e3434ac4bc6f98cb17cd6b97aea57adcffaf04a13d11065be35cb4aa8a2e50a9ff7a004c970be4060a2f9e6f0c7a26e59af24029c84d99b4225f31bc5fb4c124585c6ff6b5eb30835440056bfd8f66e8f7bd7088263206d76ea6231926ef6f14214246f241f33148a49e248083cdb21a2ad66c865a65d85f5099744c7ec76248766b2e0436d67810568bc880cb1512da2436f1d75659ffb413115896d78b7ff6de7bc2de36d51d5adc06ea372e79e1490370ea39052df99a8d454f506d1a778d057e82f67ee8d70bed00ffb55482f8b2ca1276ae1371d658b04c772c765113bf1a05a537ff604eb60cca6c358d2bd7478e1b5634593c491590ba0f2af3d558ca6e4eeef8ce653185d321d0fce9f9d2b1e7653b64d76fdfebc63c13d9c67f8b67edacad844118c6f5a0a061f4ad927b817b5998471c34c134975811443c2fdf3ae07c040688cd8c54f8d370cf1286da4150e99ee11a2046004719a456f80033687b9e39525174dc4dffd069025b1c5e47ece29570ef22c3eb42d9113806c665c44a82e42b50046233f6afb8f7df62e05c7329b5de62063deff25029fa2631c82bff1107eae88edd8872f226853b33d28ffd161b695d72346fd1bb8399b7732bc39bc8dae194d31d192bb9f34f9c5804f51f2865595967c26435a68c2c2328f081d6cdea83510145324aac3af3d820b44d8c0cbb83736c1b2dedeb58c9a56b67cf5554bb84270546c93e0dae40b5ee208f1987af249d687db24db384a0fb5bed879b4d9388aca573bd1cea540b8b2e18026f85a6eb3f713bc77e07bd0ccc8b0190f4fb5f0bf0808e74a836d2ca7c7f5e28cffeb85dbd360ba952bd0a89590e956fed59e83f337ef51afce27ee5e87006de296f138d7e61918892965cdacbaaec2153b1210055ec0dc565275f6b57ee8563d50ffc480d6ece965987d433c01dfce9674f767a5f54d308b41664cd453d9c21bc92926c8d3de650ff2d6a026f6ae8f77bc55ce02affa912b1ae8a51e7fb2879e73ade3c25418c98656f68ca2d541ff537aaa1702ebf828b0f95128d7767f66298edd17a1f3b9044adc3ac0bca43f7933aad6554f6f88156ca4ed99440b8d49b260519aaea6633186b647cbac40b1c2db2ad7d2d9cb2c6532601d37471823c8daa5acc6d3c3a165dd9af1a4c0ecef366e0d816c9ebedb9c1a031cf21604a6d5212efb62f9257bd100908e1f8e6a3af993d774b964ca316f0fa4c1875929d1773e28182f943249b4c918d3ad769cf0a9c9178f9f76f502d9a41caaaf90e9acc6f15fc82cfbd5aa5fee864879d769b6dfdba5b0ed30c5598d3dfc9c2b47f67a2d1a8424fb8a703d45e259cd4d4da0c55a9bd66d8226dae76059acdd9c5c718a9cfea1b7d4a37036d6f5f20638c90973fa221468ba924145202ec5e380d0f33cc212c3652f0936194d2102f59c3c3ac168800b0bfe830ba589e28315a3c6d1419d9bcfcee24b124d974422840d0565ae86b59917ec88aa0a30fcad70371f7bbe63baddeef8a3d5eecea76b9d37f18cb0fbacd6de0aa15d410ae648af9ce31ce8387082e1978dd275c7f1fcc6454bcb20b19e0bc787f48e303ae946b2bd47cceaab7052414150111c2ea4be6aa151f8ffb63c9f505e20c80478d54bc7185f96e8ac512f22bea1f6cc7e7c013a01a1a151fe913dc148b383e4c3c3b0266627dfa2fd496817d09c23d63991b4a5153c7f0b3c4420eebf18bdfee6a1384f1803e56e79124144dae1a3d5296ba9888eb6c9493bff572b3319514ec5248ad893bfcbe7162412ab361ac5cb7d639ffad674bbdcb5782cd1541736bca16e1617725d41773bda0e34644cd35691041ce02ecfdf93632231011b37c4ea8511e3dbc5b13252b67f777a4f8d43d6b5e88d66810f1fa9910cab1f0c466c2267cca8d5a24319a63b007017f1a111b87845ae8ee3a5b4f0bdd1bf76198009ae512b2ca48f68d7b09a69576d02174246e8e933287b24f83685a62de74d98d498c32b039567366df95d80e9dd6b6670b0f67439975f9b1fef5ba9511a49476890fa92e07f65ab2f42a9845fe294c3b5e6ca780a9eb74dbc472f05e0950791788debd0eb53cf915b3c34f96b871893547fa1ff4c7ae95d5197144bc256cd01a029005eb156935de95d42fce44e8a3cf5825f3f08afac85537cb74290baf6fec3b8284155186e92b2b1263333b8afd8373aa5ff90e923e8c7203222ed382ed5acf9b78a277d88d1449dcd15af839fb562eb13967ab81c96e20f1381e3a1f664b033b3f7b3a4b69e5a46c04a92e9200d55760108e66cf4f9235e3bd6311a0a2ae80c1ae1f992601f8f53ac6ca3cfc5ac22d43c3f883d747b2f3fda86fefb117694d155e1da52aaf691d8404e626c40a1d30e3bd74829f5041b98ec103d784e7c7861c0df95f4c021f8d49cb948a31afcb00baa73d6d886014563f83f44c6c6b372ad7719550b88e7988671cb2958df94d1217b72d87b1e28ea1cd8eee52f5b9646b104e52182f26f3243eb94faf5cbf5d03e5a0afb6b0f53d96fa9ac121b140b5c5382cbc730df318d62e9a6a9cb522cb3ebb963c0471e75ef7df00d0920d6fe6ec99970f6466c77814bc8d002962e2783fb01bd370ae6c575ff5d9f8d8465dd3c1018d002b06f822fb372612c48fdabc1a98075e020c086a1c18066424f4255700b63c12d1898d7d0a59734a462915ee4db29ece2d1bc478570d824439efbb3e0afd08e00cdd6d4289e34f8e06f070fa6feb986bc73997b4c6a7ffc8b0ae734c15ab6823a68dc105acfc446afb205e553ef40c6d1f24071cc8e91d38e29595ea9fa7272222a33cadd1bf4289cbc605100d2205bb91aadb47977c9dde56494a3ed70896430b3c39dd07ab12c4a9e514ad0f9ebb6c37964f089198712f1c4f7d05c2ee3915190c5057d0132df0c911bb933a4d25b7113117e6096a3f09e2a51fad94be92179da80690cc083eba1d422daf3660ec51fa7107f85aac925e99be774543f90fe5e80d51f602209c3c2de136e8109216f5bcb4f38af2ffcbb7d4224e66b515439c46b9b9bd15cba2368027295c058de2ebfb6fad76ba23feb5a8ee20d4d87a261000ee191dd9a56d1fc4b20c29509f16c65a8e6982e0a3350ab4ac43032505d1b7688c7a619d2c95939403e4d005edf8e3494bfd4f7cd81a11688aaa20c32eb738b50ff4f9521fa8ac35e7054d58f351dff4e2bd374d9475921591d19e0eb24a17ffc49187390cd65034f05f6029f55d16eb5ddd825a26a28d7cf9bf9b8ab9eac5e72f832e0b5acf7e9b9209a95234313ad05eb24f0be15bf247a0f5a27370a5ac0ce3c9e34164e069db9ad27d1620f19ba4c46c45c29e63db0ae58df9c2f0475da0a1f209f19e5465ee70098660c5c1e51e65e8a447e5e21c4c689a1242f158cd8e1a97097f2a3e47b84440d4241272763b959918155502da556c96393ce63b2d825201e4389961091e14dee058d563eff6610c5927cae451c5bfd652011392a23bf4dd1ec7da6d18740748745679282332e324ece98465459d4000ac527f576648386062aa4230a154b01d94250153475b8d0b8a3eebef5852886603c78c47f576189119d5ed09f069a54df761ce0a39df8345a84287d20139f791d57334b052db63adb866abb66f0e6f631d4bdf9c50de566cff354eb44f34d0dd2f84ddc7ee05b0729b366cde173f8e8c2c043446b03943e74238329df6b880d1624bc5e07d1d7c1bacff238d0494f69f8b0773475450fc56ca4919e70949864c55b1ac347bc95a9e7164fe86d2d6e2f4c022f76a565e4766231165b2368f23141624db02ce8f32c51c0679a51967068d794b63ef4aa4d7f7ea89f4bb4b0ee407b871f8e89f307a2d4d31b8b1a9457e15ae5a7df73dcf34d58d703dfe98aefe6ff1b1f498afcec02aa9ac5a73bfd47c3cff199d01cd3af0b58dcfeb195bbe9111538592d3e5386167a788a0c1d6bd0d900215d3c47ce4856858db6917b87843c37704366efed0ffe838fd1b0ec3ee067f9d1d4e2062d766cd8c7dc8b4de10f999e59c8abef674961bc8917b0a86a1ed92ca1ecda966f2c5bf943d6e7bab1217e730a81ea3c5a595b045e9e10a76fb800ba60ca94a5b92cf868efaa593ff91664e4ad137ba96c5450c215c1d47277b1fa57d1dca8659d401bd33e6b7c43187f1ea72f30ca405424e1d7f23a58753fc0455b3225989e0cfc6115bb959caeeee9432a2ae84e0c67423f16ba9ed5f72f85fba941d8d1402da8c69a1ff932250cf653cd95d205ff0c704ace77f1de6f8419d947c2b9a2ea6915f87277ae70c837e22485802d72f4923068e198eba4373197e6db710864832f10752e178345c3f296c6a36d0615b7f30215b1403d160c0ec5149021e9656bfa7eddb7b4b22231c5cbf84edae410600fd6c2394c0ad9876562e93ab0c0111e0bb4da8802bdc552e383ce1bbf6284404a44aea1beb881402f96cc68e4f1328a61f998d173dd72d495605d8d365b7455d3affb6dbd10c4315e9bc98a23bd83abbf88c84ab5dee29ae582658aabbf7190a9021bca53702b26e46846a454e60e08f0f706690cea39f3c11aba7dc7e1ce2f6ff1144e457c2cdaa8aede3284421b1ac16ceb47d15b010de55890e68f0a0f0a6b277416c43d0bb88e380894109c6c3e8d2f339d81059780d24291ca6aebc5703c5f49cc105610e07a771ed1757a81b52fdc92be5ae5bdaa813522553aecc87f9ed7f454830b7a1912574804803c17655ea7e9eac797b1d8163e43bc871715509616a7b930faa8c5551f3d30b19221421abdd7f65d9f1c71fef9dbd8e99805cc9310ae70e6b20a8cd1a2b8cba66e612155e8497f20a2b26ffb8637ac5010f00de29c3dbd1d4e4fa4809d944cd665c410b4a7f2c6002067339c1fb243d94b724d24cc48f94d4a062ca165870c02384117c31240f0d27eb16c50d124d2e162ce28a7adaa4c5b6bbf91f3cc57f9637b6be7db67197d316854407f224208a181de905168a59b3185843ee6b30b620034b66982f764e3aa943a8dbbf1cf22b5d0205540e0f50969a42f6550c657c8028068690806aff47e4afb6408c8a8ebbb41db11d6782507eefb6252aee048478498e702cfd6f4aee1c2b0ea030d240f6ce0c65d7da534f99a3e9ec54ff1ae4f43449b4902a4e711f49191103956a970616c7ec84ae2dce93ddd7a697c2b66175226252c3a134244c8a513ac28bd280fb460f400f9079a7a3ba1b11164b3f9eab52587d0a2a1de1801400b226b12dd5f71fcfdc2b153be108dfa7ef4c89c2859d4e6e7b516fba3857140d43570038f7fd8c3da5d32f84592fe2de5072f484bf58264780f33e10fa8ea8b398b33773678308330d1747083d7995957bfd56a729205179a921f531129f062b19b6ccfc0ba8d42a0b2f1fb2d26135b78768412148c358de18efa430b27e6c9eb7b8b11118cf99bb3582fe4db523aad826467a02bdf2721a6e8169b58200f908e8e66867f982be6391786047176c3458b4b643bfa7cd4a1afe0a33c5385d8b26de4efb8c818729308e323be6d8ba9ff6c4b8e71862d460bc6d4f920ccc27205197c30f73001fc61ab4a7ce3cc7bcaf667c8f5fe90b7b4999109285365be3ce348dcda2f322ba3006a57ca6b7a1ec908f19aa3114b3650e5adb4a8ed56afdecbf16eda777d31ef052f424e9a12c930a9a9415cd1c3e1e1ddef4bdcbe839a959dd875ec306771ea7a42d8c3054b92875bd862e95f48b9a0d9b96d6d42614353cb57712e34af2b89c859e792e4376e3f4e3115de43e837d02e8a13f63fe90443ffc19bb723345a54d0b1e94d117fc1f3585a5e5eecb049f0c4cc2f6c1649420958106f27e7e1da37270e680f8fdd1b5493bbca23035d7e967e0b9a907e40c2a1ded6ad9ae25504eb340a8cedfd1b7c10c00edf3711f00883cc736908b8fb64156abc3d5f7e428c85436ca6bc59ab20992726cec586faec260b2940ddc4c79fda1cce9c422af60d33dcea0f75202b0070b04a63614d5bb0a227782d3e8425bce777e9d1a84a667a127ccdd2522efd6fa3dc8c816a02a1ce40b64e09fbf7c0197020d421bfe8c5120966a961512a04920d95fdc23a4bb0d8a2a55e688df3563c43e03ec8c3d8d9ce3cb45c726902d0c051089dc0a46111c651d35ab96454bee5f7ee1992f86611ed2296649fbb017c8b9db80f3d4b6b965df632233a2ae24754174d54c8468e00b403c798fe8cf8de5b12c80bf7798819f1a3f609731c4d3233e031a09c5f929e28f7d82892dec6f75f68eda291b35b042c5353af8b6defc74e393323a142efb28dfe9e4480f9143924ec3f6c185b14b3683544b673f344305bade0fe276a9898e51b1ce2c719ee251349afc9dbb95933c60466db957c8e1d9b425682fa4bec84bf4f4aa01b52021c21b35b6edba9443287c1fd45728dc9d9d331344af01b9a0e2485632596e381bab7db10284272289991824793e893fa4fad13ebad20ae9e7bd76c88184b8b15abaca1369f88a243c610923c84ea1b60bf1e9483911ff7f3226cc0effe5262c3f7e2b47b4c699507e9a762ff2bc2bab2908c33380c2c06704c799614e646b01dc1c4d7ead87a17872e6e4684bde29de61ffeacef177c92c7a8ad5227c37df7ee875c79d4c3afb856e9b1c652167f1e117d47827313583f6a951f409ffbca40f05bff6542530d1f7039df05c716d53cbe581fd7c8c1bb0690f7fd6397e52b08f405d1744a8119af35d85be67e8888e9028613bb67b27cd18d2e447d978939c41acbf962a6c1c0ae772fb1e18d1f3b340d361e438740419869f14cfec2ab44eebcc54efc41248c974a461366c74ffeac7a20ebab2ba216201035ada1dd1dd0018153fc5e03ad36775860d890fe2cce91e16a8699d35369aa931011dc78e402dfbfbc1136e6c23fcabab82a10f177f6106699cb60687196641a441c5fc0d44df061a7b48a8de7b5572a59f4e6d75a20a9e0ef504c40b5efdd54e9e12b326be206cf84ac9dd6ccb43071706326e5273de2471ab2b89c551c87cc57c437195893cc5d86fabca71b2cdccd0100d37b8fbf87338088b0a28a8555cab480fbf966b1ab3c469660a74d451fff2a017262d0ab014a5e8b516974fbd68ced4ed142d7a8df4a708678c6cc004cb6cc1cf1a3a89c6a6455fe0c693d31f677e2d14a1c8166ae50e9c8c6d7dea6fb71c8611166d18ac9c19e28f5a4ad0623e04e80181b51ff2f36e4772454d4c1cd716b8ea6c2d2dcccf6b1134599e46c9b4dc4cb0bc904d2ba24db607b9e8d88ce206699a355f540040542e90813abe81128117ced2df49dc38ec8a01a7b346861b2c769b1b0d00ff209119ac26b2c55ebebbd2c67e1e483b11ad6375704a5e5700a6ef4f592c7d48ec72fa55205a645da6b1438030e62d199c8556696d58d23d5e416e7417b40ffc94beed0dd4bb3fed52fceaf5fc645d19a678d896b8f8da2b06a52d9c3f8dd79fb7c6c7da2b27847d9db0518c7c1c5b6184cb515fa7df19c0c567abce2babdf01aed70f34bc03e130d7eb5e9d3ba3b19fc8893886de3fed564778f5b12054905d5995f6a685e9471dcf0d45bfb1f5e79ae1790e94d5b07f2448604e8961c3fa25b3c1a32225a1b7fa5d2614e3623c30c52ca2ef1a5edf7a102d0281a11cca5fd6c20ed42bdf2699f533e46af191576dd7db1cce08029094e8ae450fbd32e7ec66f0bab506274a8cd32099d0b9d022b7bf37236c6dc8f7f30e4d0a9ab8665c1a676e2c95db7adad4de3433bff65cb5c2ba9ed9c195057d68896e7cde321ce477d4c195551e4aa51cf7561fecb3b28ba9ff03de2c367a67d329388f2a325e19094b761b1da06c2affa53b8522d6460294105a1ba55b180deec781340ff5651d754e81bd2d9c9b75fb2f1ff9f644f338ed2abfd5deccf1e02a43ffa24ff8567dbbab6ec1d5817236c40171d537bbb3ddc7f98fe8908662f40d377c7d0a7c6e62b45d2b6ac3786a5d3277f124a58568d9f534e409e664b5a77cdfaea588e35ccc00c3f4b68e6ab1d3a2c4b202b1f724fe202b9186ee57832e9948fca29c8b008bca413f6f3cacedd58e194c53b589a0335d39c8c59154789cbb9334579ff9433c520a2030419f5c954315215003c729fabaca58f93e059a3069798e2440e1630a11de8ead15e3faa9c0c4ac86a60a42ce0add321087afda14c568eebfdf2b71421cb9568dc361c69f0fc895cf72e5841384dcb2a886897c565426a04a87583b68515759d295018b9c2ce8f60c2ff0c6aa1d3d9d096c4edf8070395990332f3d51c4c15c042ff62ff3b395aa77b1ceac0afbb95cb8a85c0ad67e46a602f7a56d3a980a2605b020ef2b64424750f8e7af1a3d232f348ce2f6431a359a4f2d8a5bdcdc68f7e8a3f85ee986438a55429d5ad97c1814e37a565078e2e8169646335d355f61c2b0a75ee29da17136b3b298c38f8b17be2ceaeaaf9a24ced3f921235d63bae0c1fdbfd20256753f3e0d9330e21914c5a66d5c6e1e295a59eac3744a0db4fbc47f90a8f45d266098d72a6cd1fffb5ae98423941c19e13ab9a931c02143bb355a279188da7b86ae3fe680431d8d738a6a7433cad9f1fb53787c73c507188d963710b9f2a1e5ae25ebadefde636e882b71c6385eb38010ca9317c29df2391327232ce7ceb7c87612c3b505c99f18a2a3b14eff78749b881450a5412af431d9c8e883632fee2ff9584073f07e0c671aa5dd344f9baeaa315202c45f01934b6c1256e71510b91842bef26af9ffbc689d7ae4e64a76260ba0399be86e8a08054428ec2a568294ed00e4a9fcda97a8ebdf1d586ee40488d75ad213c05e4e0f59e6ec3070eb3b7fc43e07fc599404d7efdd893679764318881d120dbb3649231595b79556b74434743f275a2f22272a550fe7a72de0a54890bc818b4222e9812c07cb03d21544c20710e48300245551843f75db1c2380fb9ccd26ec0bbef8b34d4670daf4115110caf10e7c4159d19cb8f4ef53d35c34ff44f12dd9a973dd8b01e42568564e5442c045cf8bc1a7b2015249abe409d2617eff98a5daf9d20f304ae0c514f708f269f2723f1371774879679daf4dd7615fe2f2cc9aa60cc8606524c4845d777e589c3845c7b6d1a82759275bbe4b09c09a6ffd7f22b5730bf73b06a76b8ad7848774321f8b1570054a3f44a580bfbfefb9fec026002d40b181566d6dd7eb80ba56da7020a59113ba9a201ba00999f93fc8b3f6dbb87228a3e4784333a335acdb59a80d6378e39680a59a502753e7042e4164a104abaeb170196c1997b3aadbf91b84ae9b3bd1a0086db22bad074cf5e03d21b22e88b3a07353162d76a887804f516991806361e7c35ca436dbe85d01441ebb7bd0a9964162b71d3823d9445814f91c4bc4fda99187a1e85606c22bd4e9635877678a6e3b889b3a12e87e1eafbd979d9bbab456e29dec351bca1b2e15402cc99d27bdd0fb1cb00e568f0f592131723d6e8c522933aaa721263a8f12cf9eb3dfd23d24a13e2feb5013aaf24b7008635065fa33018a91de410a0bd4aa7950915c9cda79af14578f212ce2dd200222887de9b9ebf0a3615b6b8d2a1f4a0fb1dbb4afbf89114870ab6625ddea8015be7ec3ea5568cfe32bb44f033dfdc2137d47a948183b28057b396462bc9881e77663dd381a61d229813cdb76f79df1a494f9686b6f3ec5282f1e001073bdbd2ffe150563c5a874d311fe7ab849c0b76da2cf1be8b1454b2fec6334241e29e5d8619d8d3d98c2d85bd754d16bd2ec4d837592c91603a8bb1a2307bc201f830e0b5c50ba9569ecd37da5f8f6e41f880e0f332b5ddcf2eb5edb6a8cf94a9f11d2248395aa2d878f8c8e03fad7a95ffe09fe1aa72afe39b2bf1f7009f8227dd4b7f1b50ea33e1b84a88c7bd76307526d84ab9effff2f1787a5041fa6dd3328e884990272466b0d7caa754b342cd9225b8bcc3f87cbda24e4efd4167f910ff52ab2b6ac24194f7a3c582e6568857ec7e413977c3fde9ffb0e7611c38010224f1c312c630238b22eebbd232266f21ffa8eff469bb34da8ffba65541383171f8b5f2600f6e1644d02c36064cf35022ae5e09243d56684dddfb73b60188f252d2f2ea1f58ce16ea9870bef47871e666c6791a9144a830b6bdee5a615da6566382120578f01a250719b396eac95c09cd199906c566f3af17405c13a94bd97f74e7b7d6503ba8678a0fc376bfc46cd70b654850189c9018a17e8095af11cf8725a990a32a62808e280112e57256a811d95b675cc4ee4a785b79ae68782afecff0531a47cc9b7bea80cbfd650124128c97e77215022a7952c66d567301efdc2b9584f2dc4eb5ceec5728d5d706fd4d628954569485fae3407716316805bbbdadc11dcd92cb4e1c78219b58075a66beff156e3a7b94bf10d5ab1f1332d815b53ff439cde276c01939cc70de1c18ac7ef584ce0288a658e6829eca910f365932775739d3bce0383874e75d359aadeedc0a6f1110bd91c73b0abe27edbf00df9eb512784ccf33d99c15bd31af8bc234850edc28d770ea6b09aef50d0866ffc840c1a2f1578965c0105d16c45492f5686a1cb6754d42babf7e0070aa5769b2339ad315c0b8f39cbfb1eedc9fe48bf1e7b82ec5451817b0ee448cda4e920ef181b78b31bb63f343d961801a2215db9c249a0c4838a0e1d8c2294ca937ea2978aa2198b29f5a32e44207c51aae1b7bb653ddf0217d105d45bb23c61f8ade055f947deef33e8a39044881c55beee31d3f95ab37a143b260b8cba6580fbc20d5d83f3c10b097a910a7b5844911888709e9c057f4ddcfb76b8fb55f64a9e71c6332705ef1e49723e8431836c31f57dd20b49b8b8889c87e33bb1f57b2142eeb21a360d39ae37a41418b8d1f654f8c645849e8f8677b724392a9e191f50e65be0d418bad252405c1775a99d441595319d5afd9e907881cafba1adf4b1b2baa41f11826fb4e84b844d21eb9ce976574e324d488eb5c42e79d3c10f5dc338ce07bfe64fec8f645afc5c47e79067591e0fe1937d54fda05d2c260441b7971a5d107d74dde839324b6ebf5a9936868a804456651c30334f7f20543b1d753d3e24f01b191fdcc3ee0f3a905e4175c6126b67b0865e339bc7c4f785a6756dfb04475a4cc4f96f443620f8b2c8e47e58bbd8ea41a36ade4cbae45ba71ba1c9782cdaf01f7374f95f184decfa10475579111550a6d6ff2dbdf470846d64f73fec0df3116204e818445029ee3e4ba703cd9f3dfe600c496dd88dd9c9cc40e2d78b22df9a422429b537f829ca7a19ecbf28ca86d9c6960bebf737dfd3efbc91725b955810aa77a52bba27178774106fd58b0ac33bc085fd9c1cd5fbdc00c4ebd60f3d495810b4d99890ef2b6bd5e1825976770d1a9570381bac3c2ee5531412ddc4a89aa8771ba2e9f60c18c9c1056a3efafdc87cfc7e18db2029d056ba841d55a361d76b107e6778ee437208c3026adc03ca9c70b1779d6a2575b3c032c8da7eef23598e294cc512d1f161e156cfbbc1f7c787ec7a203f40c4e11e50a204b4636a41b29bb4a5bb6d78af72f574a02ce91475d6677371decabfd8826a05b8bbb606a4491ae1d6855ca8f70e55d8e7b15367718702aa86974a525ce9e66a3a371673c5c1daf5df9a803fb0497a51658ed6497520f5c5106fd65d0425c9cbafa6657559fdcd1592cd1a357d54d20f24c0d50d2e448f72e7ced4a7f3b2bd7c8cd536f1c2355acdfded41aaa90782e511ad77d26dbcfe387bdd095821263001361c8922bd242f5f0b4c944acd1f73cdef3cdb6bad7acb42b1568f324bc3237f67796eae5f48238a1e5064caad5a12ff83b5a1d6aa26bb713f5a0393f578df3d0b14f50ace2cf013781b9857054578da6c9260e118c4e210289db065e796f72accdd332575a820dd2dd5145c5d072ce9783a1617e9c85310df8da6b3b69c294c98df0aad6966a27695ae8db4062b857af23a00d4322f7dc0abc68bc0e9a6578250c79f2bc1a6ef5de2456e868d0060c252c0de5053a1e75de4545434650403a884cd3d6ca3261b520748875aba0a642777f9f59cbd4c3a6fe5abef58fa1c0fcf05cf4a71b6918362515460802c5a539e1656549dd75a1ddf02b7ecc529ed2676401163ef6cbb1db334a15987c107d615257ad9b7006cfe2352423c1996843b1c8f1a0ad6adf621bab1854ff13821ca2927d29753060fc4dddc188c47efe649292bebf365d144636930f209cfea4a6532c28111b81a0ead972903fd9eb143f0a54bef2a43cfd12be30d5e8867d71a79daea3aef1c989067db487f6dacd52464bfc06931b4a5159913345c4c0f893b817f1320170dab563c3bb695b422a223a3518caaaffcaa4fe32ee6a706308057c81a47fb9a8ae6677c555942878b6f411522efe7df99018bc3d9f586fe9cd04d88fd403857375d43cf8e76f3c3ab0f7f7c6f2903e1542509dd57280baa68135dae0b740292a3e4cf6c513d9f5603c4fafc1817111a0b1064e1f9ca5d043e6c6690f3ae1b8a474b6f254d1c3c5484ae9a0d1d0a042b5eef23cd196a56013dd612774beb262573bfe9a8cf9a91ac4890a046b99034c2c84a2fd3b6199847769c08947afbd7547b753dad9eb71a6adbf4344f390e78d53e33d50b8447a953814105873cc01dccf1d6b5e30e4193a65cb47a471260f546e7a7bd301e16c78ccb9e420fa2110b8ee80e5e0fe5a2e0891822bdd7b6ba5263b2c76d77dea2f1a54819735c6fd3be2f115c09fa320d51c30aa12722a50865b6400c95dc4ca674e658200af69e96169e39c6e6732e2acdb43800b7d9cf40942c07ba6d849f1e76c134142d733e3b475cc4bfdc45e5352ca04eaea1bf06e07a673c1de7f715cc6562b18e0b50bf1abdb8dd20c60ff2ee0d5b72f89faf9a87474080c8eb855edac6540ef760df636ccb8d616b992acd162d53b9b06f4188647b95d294f209943e1beaf09128a638a68fc8b5b6e2b52dbd5e83f9614beb427b78904e8e323381f4318345c120ba4bb916535362ce5dedc435771c3e1ccff08a2f4ce37ee8876d952e4a28e3362bcda6abe60281e61004c897d051383a77927b6b8e896d2fff51d38bbbcf6549bd3f84c64ccceb28b5900b95f3aa7ebc0b18a1c1d15a6fc717a0f4efaab73b4e52ac82e905ed0d0ec20c958808cf974dcd66572a6c97f68b5dfeb0e9c3fc921e4253bd44f0b390a2fe7485b0e3cdac24922accef5b3352847e64e6333fb6735567aa35f82e4ee335a20acfd6501c96d3cd120885ce0f8ddb7339c55194eac537f1c1866d4c726a768317774d05d68c0edc70137191093746cb871cf6cdfa86407127a954432b5137fffdeaac89e1328d02a57c860d2b06646b44b84fbd094b4ca8741519a72207a2a9047ee65e5d80afaad428fc909527cce9bcabae1bc2716c2418b2f1e64008b711c1dc646d5bcba5588896557edd83ac2c098dc703a9a06dedf2cdf2d8150818ea0196d58a9c03d84d417084bfd3fa970edfa6fe74e9a45a00fcc1ab071552fb08c88d4c91ba6eb8ce52ee27f70d3034dae1d083936c8a22640856fb4ac1ea85db3ab9f4007f95a49911717a45f4a4075c6b5e6cfd5ef804ff9d90fa30e190499fb3c58bdda08687959c451fb38d428d4955fc2f89af8c0512f61b9aae9e9ab33e2c9b1a62c85e973d91235171098e0f887934f1cf6e221abfd0f40be62a4aca1504d2cf0c623fbcfb30153e14776ab4f6a34febaf8a796200ffcc962abbeed93a68239950179188c41a03b7d26f51bca19e9a2b204cd35c59460d6912e942b0d25d2095480c18a6e389ba1e33643897205b3e209946ff071c3ec563f0c10fccff261ee5c85535f6b6f9cfcb04f04995d1734ebd7123764cc5caa7120b0d15079d2cc053faec7c05f322d321005a36f02c4e838026ebec062c4ee92eedddf2e80925706dce1c69dfacfdac33053b0d22e3120d1de3ac09614e1a8d1841f6685e5305f3b2bb2b900293c3dd2c22edc93c16cb5eacff724847fc0d777118928216e3bd4bb59a5fb387952e1e86c3671b7a5a683c8452265b204eaddd32dd97855e7ca7acaf6c72aef3a5874c1bcfcf7622971a157194d4033f5541ddb42c9682cc9ba53844e81ef26c7c845f7c2d27a9ec70f49a866820ff11bccb3db8ef467f53d43a4dfee87d1b69ecf0e788d137ad207ad292bd68a38a4717bdb2c8e8db0b93eb80762e777814a567a7be8e6a7382fc873a7d9569f5c20a673fe3379d59260c4e296bc94da3d178a15bb3df59b0b19256c119f606f24d1304005c8a20812b5e57ebc9bc07302a81921d9279ebc7c1e31bb01de9ed93133847738bf91d2c4a6606a7cb8b4cb68e126f6123cfcc3b8f81d9240a19f667eb6c921b6022222491682a817fd8f1bb0eaf8b424432dac5ada7ec4321463810d10850d5daed69a16248d58ba0343ceab6166a46d81304dbb07768b0e4801e070641e1906e13b4bac25d9a87d66876b1fc7bacf059196efd942ffbe8604fbb24192d7f1f64efda9a14c45929bb2bfe5e8a86e93dc27e0201c1388cc27a1bb2e18217b0abbfdcc218bddf94efa3eacf605fe789765cc9aff2717324574eab091fe06e6324cdce190cc21ce70fd47aef8042cc4f6517a7284adb456ae45d0218afd032b2cd70e73ca9aaf89b341b01ad1ac63df26fb2c5e1873f7ccdc5389b543567461c9b62c3281b47e0f3a32d261d7993fc1126516f36c48bd8ed82569d0468e40f34d437996adf676c98ea0127180f88da8e684b5085926bc88b6c2762118a791b55b687d47ae79df5acaf973debf353caded98c2176e4d1a1a8267518659b9e0b4379183905d693c69298095585b927b70b3fbd5e7993c0fd8f391b69ce2dad0de020d40be867564d55ddcab84b54d2a16db8a31280112223d6af9e2386c2555cedbbcfb7faac6ebd2c466949d8aa24278e98a2a53251e8e5a3565b032f54c20874771bb00bf7e3616e9355f0368c83183a645c298f865f459385fd0ed0e1f15f9b8c67405abc63f1f7a1e525c5717395907d79153ed9ad8a245787fe052e8f2a820dddfe4b8b64d6669c34bfdacbe7c7c4e13281f0b5ebadbed96234322c5414eed557aeed0049303bc73c356ad6dc901be84babc19c0c88314d577b5d9b92153c9dfdeb4880f63edef728ecf1e4457cd8ab36c4ffa94f6d9ef0a19f975a170e6b8a001a13f9ecab71fecdd22ec8731294e65b4cc9507f78a68fcc3cc1d4112b413ba15988839551ee1608e9fb06440aa57e3f394720ad4d13b69123f64bd454e1dc804d680005fe97df250b863fdd3561fa67d83a7e61023d4f8fe1bac0fa6a4c31f28c4950f09e530e0483c4149fb1981f80894a1046733556ae26b2f7cc51a254a58dcfeb4a5a091704041438c4b4faebb043373a8b70f8087b5d3c887d069ca021079afbf1974cdc42269c031e5ec8a351c89af861c89abbc7bdeb1c2c26f71a32c60232320d564cc25ba460ff37a04892e3b8d8d48412bc34c3a3005735f6715440ad2929e245acb2119a8b35e738dbd9b9f13a5a02321516c1c4deb74cea270d815fc90cb23ee059fc0daae96928fc17c6972a0cce21aeb6dad1971a441db0308031e6de86d77d92fde09c27c7ce3500fc0fcbc700b7d7a81ca69e0f306b83ed99d804574c978b868c8816b0d880a34631d5ec717ef151b5430af81350c7d1b7d2af21f09adf51e9a4a31fc0a81c5084871acf77d9278384c1a0ecf1547ddf569c1387e9a8246ee6b5136a4e08455c379c875b025a885351195de9e10939ab4f14b3a80d917af409bc10ce26fb54db91dff1054ab0fd5d189c422c9b2ec513fa53341ece0e2711c68c53a6a30db1adaa7b88a84635cb2cbf8b2a6ddf0e2c33ce878909d35868436c0736d420d7a1d02c8be1ba473a60af47d99a0f203c474c609a80e3900fec50f0e8fa96f5b0ae26ae4e5ca155c724bd155a19a0b2414816fb211f6aaec1e0c907ebe028f97085b341159ccce07c909eff3d28460e3e40fb0db718e953f1fbf14711cd1c16460bc9591f2b5d86fe73c8891c77fc3273b55069cd239d58fbb5f358a1d4e7cbbdbdd0d497984c35e0a9351f9bfb72fb215f1740d8e7e22c8f76bf9977b274ff598ac841f952f7caa8af1f8ef8ad5d8030324fe3e2a515735d469b4aeb7e3fd33fbe660acf35bfeb8bfe69a5ba1a108226c1cd89dfe76ce03e119603a52fd1a193fbec8a951c1c1b4a4fee435ffe468a073ac821259e270dae446dd937338862dcd0352dff3e7ba4cc2979e1f04ad6bb5bf4e7c851a3e0a967df0cfa0b15212ccb24d7657519d5c1ae4032dfe54908374cc9202a9e687a9210dbba55af2c54cd04a2d7071d74f966810cbb9e5be2d6ad314240d98d2d6c55cce06cbb5878f9ffb2055f456fdd728e734bbe97a49395034774a0e937194ec4eae17c18e99aff2086f1703ef535f85cecd228a91a85f9833fa5c02df15caf040a3117394b52f7af2e4363f2f416c8607119ccb3dd3940090ec0d8a9d7e52f115ef244554498b59a643638beaee8d6b9f2dd8ed218d48fdc2f4a438c427ff0513db1f239e3e6e8b68f5a82e3cb68db56bf97a97347d461f32dab5793af900ef50b64514e551d8772b491a45f4eeb6c4f8ab76c6b876def966744c1fc012354f047b9b5479701a6fff22bf4e11e97dd23a80c454eca3d2b6e3e25c35c492455ad8aee1fc8288c95a3c50f6ad215644217e772acda7e4666b62617fbf72194d616398233fbc443f3b01b6a70fe894dadd2e3ee5e16de88ddd25b991d21bdb407c3cf9d665a8300c654e663317c892fa46e5feea2da9de4aed652ea30376a6ea5e297f6c4762b202024b1778bd87a065a2cb7639656dacf3ec94743949d841ffbd1791a7ecaf7f2b826ae81d4cbbf58e72d7a52e52ccd9ab5866487bd20b144d376995b9a2f9148ae37e51662d51581822b9343b3e2a40ee2670552ad1c05e5ed997413a830e7116769b8f275f3811ecd104541877759195b822a6dc8d2525a07e845ca59a629bb658ccc5ab25299ce5b0e7e3f45c23b3ed1e3009643ba85d354a4f39d0694225be77af748841588523ebcdd0781ec79de29ee4b803a5bcc61465c88168c8b4d909ca7fc47511673747a2f376df1eb36dca3fd20380b216b8f51959cc1584a674f2e57379de3e65652476d76f96b9c8263e3f0239d9dde151a0417a5216138656795be40d2f5a2a3bfcffa808366e2f79a0c3d0eede59771741d718525c58665e98ffbde2c94e337244685d33e19888f2f4f746dd1c42974bb697a5d4804904482ac2334bf94af3237c00f40c706f0546f3841551867ff26a49f2152d59039a1a80f87421926769487d549beca90c76e7d1b930e9e2aab49ae48968f4f42dac862245f884da3a156060b1ac4330d0db4a106ae0fc3f8d5f9d76e5825d48b422fe298b1ca000aab765358f89e446b33373c35ba466b2bef10d98e4844340bbea1f83136034f046ba75a94183b7812ea5cdc4d2b576f3ba1e7ee3f2afbaaf7cc31158d2f37f04678c39c761d5907d23e3f03e1a1530c86de75da63565ac01f843d0eb7fc66447d350133b32215e9ecc54971ea396542bf37c890ba8f781144aa6a48ea28550d8d985ea02036cb2d6263293648650a1b41c40501d3a0626811cfbdbddcb986c33905bffa742cdfd0d9d56f93f8f251c72eb75a8d069149c395cc98f12a7d6869abb464287f18e0ed6e77dd766b5a353ed3f4170b800b0e9b6427d5d2091e783ae5b14fbb10ac38e5abb3235364ef07647f8664c43e49e6a3228e80e9cce6ed00d5a5e41bcfd6f69b89fa84af8f2344154373a65ad5b48bec9594dc2b7d910fb92a12850834ed534c8b981853d00f2bd91a389428a9dbe9587514a560606ce38bf1cd6b8d28f48fb68355e7c6549f266878b6225fd63baa4453cabc6b6a7330333ddfdf61d995a400fd84b69d93f0558f24844abdd8dec4d7325b85a0361302e8f7debb8782c9ceafc6da7eec06fe091e2caf3dee3a48a58d60cd85b74e2cfef6334001908cef1df82008e626195a3594a989d2b11dbd62cc864c92b7cfd18192a836e7fe7c28b0043ea13ce08a63451c07248c28a929e7f67710b46cb330070a0b60e17f95a0ec519365ba7434774319d6923c0bf6967d6aff1d3c869822682966851cb423ad2a13a5805c7ab3291337c945f749e558f82f1558707c5fa0397d94620609955e1ea3205029d85e3d69d2663ac37c3ed6fbf48e1d3cf2dfb016402f105f63cc35fb13f58f6844d1c72eb01a23eac809bbca01fa1023905d137419cf340580b02e3b1c167bcc26b6d51342609f43b34c59df3ceaabaa2757cc3e63224074eb421b0f9a3dc9d785ca3812142c9ea835a2434e1a6114ea3dd71e698568c756629c4b87b6df3a0293c3375ab15a7a2b717db6365210baf47ee8740026da776ce864ee0b9a722d93c09025716524d74164d6461c771d2171822b57679199d9ef527508ed33cca95a76cb3550134bd9f45a8268e38b031957463af6791e63442d0796f7cd505ab41bbd840d4503d18fc41153a2101261a7d1a1921c711b0cbc85f479c9767832cbd04acd3558ee3c185ca3473ef29e2de01d7dfb649cee8662dad0a4349191317a9a9a7b6e557fbbbf741a43ec729489c3e7a2f68698ac5f81533c8f8dea1265d0f6c4d37007fa1d59bc09d9e7a5f55affa2c7b616ec4a2fbe44f806dd378c1fe3f7058fc91f8d62cf0f4322b0525a3d4712afbfcf03c21891786c499ce9dd24aa6460e19b491c07870553adf679605be6cc5f4385ee7c0fec91fcabcf577783660d1048b74ddb6c46c8ab712abec9e5e856dc8ac54c51bdff2cc0a2f4e1b25ea17fc9acbe5c4797a2dcfac29ee8114c8fd6e0a0bc1ff97a82abfaf72e00545fd71ddda93b15188934898495203560b4607b867171e06bf794a20d8e85593667a94c902b1d4c1925d216301a7d031ffdedb323f9a04d4dfc771fc581aceca8b714c1d70bf434d95c375e92857cd938085e304c2bbfd39688f050668e9ad453b3db418ec6c50c0e4616cdc483a2d3b91d4dd624f65ce4b42fbb36da7498fdf5009a537c88652ad68189137fe74dced93015ce095470407232a60139e2d7bd5b3f99688847563990ccca969932f30f98ec85d6a7c55524c27876879f5c77e59eaa90ef484743695d668a4ccdc72de2181d424de7fd13d6316fb3a7abec95c91f62cda84d57fe534bbfbf37df4fd8d32217b02fc3e9a2c4ac1cb8319fef91de2335631165793166be165c2c8d46a22bc2340b32eba6db71fb01f70e203ded8ae38fb9cba8d1395213da6e6e40110e54b63a16ea50d58dd5758c69a637b369f99aa372eb7f591d282f29e1d9663a6913e343afdae4374606c92ed4d469264382eaa7b41e2dc4c31a6c568b6f0c2d6346a836e5b6698c537f12cb0e7dcfd12e5e696556c556c6f356ec5114a316ca36f3f26b88ee8cca06a1771be8a836f3f92d6a554ae49a6d4147270fcbf80f2a4e4ff32a4d769f1fa9c77582142fca65c99f036b334f51387661af8ddf513c3688c428502b05ea7624c508fa7c29c69fbd1cf9b89b803c09581043be106b51d7280d33f4d3d29845340b0b78456757810e07591d812abe810555f44685ba6323e0fcd0b3b20af0185ff2b4f566b305f4cb91711c7a65fe904a34504213c5942a12fc8a563c8fcf29a9d3bebd6dfce62bdcb9e0a3184bb743a909446d37bb8e065b87cb47fb27b02ac3744ef7cf1ca4d65731850c322d296cd87279f5544751a414a969bbd0fd5151a5d048ff91797496ae970e437a7afa9a930687c7ab0baf80d83fdc0f4e6db9e6a956745c41b7bcea1b67256f38483c07ad50b2cb1a4433efbdc46c886d2cec3c78831da44c1cdde60776ed7a53b2917b8a444d5ef302845492f466d8ffcc160baa925259c66e03935d7dcf37e9d8cca49c5fae0e7a00d0884bb052d5373f9a14dbac89e81db29b5453bff893c6682f69dd33f9beb6935e49dd15c4fe5de76f3e6faa917fc45c7902e08beadede222526d572cc64e61a408bf05e72fcce8c9f89a7b6c84edce9fb43d1befca4ff8484f8fc7249ae47388d678249e1054f4d459884f9ca9ed908e63f54ff3401bc93a9b70213f0704bb3f31245abe73978b650674e5d16013dd8fa6dcffa98aaded1136a4e3bb173e83e6352916a46f937c536fb6f671872dd1087b00ab88ad269d19f84ee060dd08ab23b3dc6eff8601d4e89774b83b4a55b84290c89f7e5354295f15bef14045b6c494be04a6bbf9a68e6bdbadc615ef27179617850962e886c9a4561e80df00d216a8d128cd63ee1fcb3ebffd078e68ed6b39fcb03940c19495aa3d83e1854da4eaedcfafdc8e0f5d4eda70efeaa39b3af242d056fda6596539a5070ca4154bd7d6b76a9757735a3600ce7e06dfe6b561edce0533402560ec9ded505661fdf8137ace00bdcffe57ec7b4bf4ea7378d13f15dd31a79d3313eb9393469b312b190d1e53bafd6f1b8756b13e90cbcc41282e2345362befb975619e0f9c02b0f626f6f3460679601eb54011fe2f59ff8e15b64c63bc34e5181c464623bd01e6b16b07e4d33e6dedf013d16c04bf618dc917ef3154f49d1d44c68acc163dc615691b4a35f4bf3c34cdc42ed7648ce3b8e95ed446e60923b6a7e780a9ddaa4b83efa4bd0d4fb6ffc942ba41397e097dfcf62515efb23c9a8f1301374310fdc0a18f173e33294457f949e29bd9e51f08d9f6089764b5c22b68fe2d5af802cd395022ba6785a434f43cd8ac6a6c9b742c22368a538ab97b98d45d86da2c57a83335135162be850b62e6139fbeadcf2fabc866441f49f0944d1497f43a648e85d8e6ac4a5a50601ed6713728b57a6fef587cc4c839f0d8197fbdd606b5934c7cc3830a57c144729018ca2f4199191cf07ccc7f0f70fba1d526d3f1bb93b0e8d843f295956d837db10f440b26fa1644113b757e59ca335341386ae93b03b4eaf0b48518825e3d341f72555065388fd8be89cfd0ce01267ae4b9850ed57140938486f44f68eb792ba19bf654c95f7117cdceacfbc462fa63840c2f9c934f398acf6e750fa69031736a4523431f13eaa1670e87f37fb3acb1d078e267128f9b2409dff11f0e03b3a1842858ea8b7db653b1622559ed0f9068a6b600b29b994c31dda011de34ab39c3e388b3c8f1fcd498eb3f6c843efe67e2f5aa0ebfc4372f831045f2c40a7dcfbda663128230721982c9bfc018f2726a99536c89b7177c89ca2791431cd1d09a0c4c7bea163036bdfb03790e07d29b8b32a11c1c4d6a9097ff223790d12a4e24e30d2bb1339ce2c5879ed4d42c2c5ef7a77cfc23f09e98a0706567255778d8deb77264266902ed2ca2c1d92b04e8674eedfbbd404be886bebce57df241e187148254e7440e8bd468862446fbb1b289b05fc421d060c8e4a632e90725b91bbc6c04e5bb3fd22c076aca8ded5f9575de8167a9bd71a090bb30e1d536568737309496439823bceb905841c69ce1aadf0f922b7469f555f423c97a986c703b530149fb2653beb9b0501c258065db25af3325f3c147b717b1f501a832c5a1704406cc48e1cf1b06581776814f7f0a957df9d5fcbe2dbce83bb3db92227a130081bbfe32c238faa45370a127789fa06554958b4d8dd3e252af046b79ed52b388d715cb1b5d1b97d7bbf061830f490ceac4dee340dd6805dc8037762f46aa848265c0774e5974884d5e5404c997b16f7d60787ccccbf66c3a546e95fb6e20b1f022639eb0951b5aa94366c993e3bb73f43d1bb41de0a7bcbd3ec5a0fca0c1d2a62cf34fe140feac8757430328eef47ef4f6ef1bbb7fb1ea8f6a8ab890f997227a1b1471d9fd5d61b204c2f2751c2fbecab51241344aea68b812ac77e5f4829487a5e56886d0f5408812d451dbbadd6d9bbf4b0e6e810e45eb43f881cfaf7a4506da4d4fe566d948f7fd308fd036c438be5fd2c49e5876b8cc53776f25ea963618e985cbe05fecb3aaf150e18c9ee4bfc05fa48719277fb456d186b6fd182c55cd953ec1ce3aa920d9ed9caff55a680592ce4664452851dd8b1801d0998289f63fc273642969baa66a61eb9dc68059ab3612974b6c15c38081eb2093d33569649cd3c407910185577098bd8b3a2e40a33bce33e89e47599b7a9973eac5ab8a92dfe804cc34a556ce9534050cc5cc112a5d3bb18bcd84116823b33b5911bda75581d66efef8d81c76ee021e32f8c52a62d618d0d1787dcc79a709a0ffa6f556e16e9609206ec9afc73082fe65c735e16f4e6e5e3ad7d7b2f0b146562e5b461dd612098f0beaf006124e8bc55947fe7bbd81a4158458c2ce56e4dac75092769ec3fc407d8d9b7fda373b2b4079f29a3a0b450541eb4de0a415c78704614d7c2e7648300b946e045a314c52465cf0a28a54f9ccfd923355adba841a5741ec0158836b5ee28415cde36b64d42b6e6d5dabdfca9f9b02e944fc8c50e47a0bd5d44b35308f582058de00f8144dd1e8819f6ba31d08c2580614c53586a3d617c7114d2215802a988192329c8b0a2aa6ef77278a8b8edb7ae93b3ae14fbfc981cce66d42561e368c580c4d61de5aa1c2762af8ae411d54978db594e5e4398587790ab7f09175480b17477927dbb8616b05dd619e442b20a99350dc215f9c9959c9f62855910aee3d5c1e050c016e5638f83fff680f8a4c801ebb90355909e24f74d5e8754532d2d8c0e27a03424fb19642783b3a1bd47150d4aa637389545bbdcca57d6203561fa973821aa31fbe3f4a5e4ab87299554307e23139847b79649c7426738671d010d174b94d40a58e4ae39600a620d1e8d01a36a159ebbd39a569d714fca200e4791ae3de9a262558b578fc0465dd342733f0f5b5c4ceace3eb71205f9bc22180bea7f0b004ffd010c714854ecdcc60922c70f2d0640586b44d52da281406c25fd5e2bae48e8bb27810ef5b84d697d4203945e8c02c0463225455d77b9130b10978c3dd2020eec44be1aa2adb43568a5dd57a2088cab37f3ad1c364bc3c071755f2f1ec1f478ae090fd23bd912618b6c285b9d502eee8f157a8c28fee6573ce05efce141657b86366be7dfb4b6b1e1ebad9f39205149e54f2a77bb345bf214afbb06ee1173888b4eda2cc6058e2868302797d18ebe32ab4dc3c5f09000b6050f524a14e63a15e6a616d34f1bde4eb672413a8c314408b38d9765ba1df74d5ccffcee8afb92cc7e55a34071406d037fb60e1f71e4dd5f84b47797c0c0abbd6698d9ecf1934aaaf20de45d6ee900f628d59ff1831e1fe1c0e5084464ff501d60fe7874dd4164541b781df769c7a6e2c4c6485b2a9b16c71905634553959ebc64f8c0db4264a5461aa64dda97e4335483fbfc62fd4c70de252ef9f0d30f537d325406098042349a0e7cf93d53396cf76d929ef7b04e4ac3b7387b279d7c28c01f696fe63789b5861468fbac4413f2e12834ef4d61be5e29b2b9cae6adb1089c26af0876feb72a4e3210b7f8969750d96d1ec8cb5aa844375ae8d43b917b6d6f3f96dbf27195e41f68f87584accfdc69afe6c5ea133a65ea33b81a504b4b74e116de1121827c9df1365fbcbb00c93d23a4e5195f444606f88e1a68c596d6be0120bb2b013df09c7a1dccd2214d2ab228d9b069a89667d14e187ef82b66362a402a4f9b06cd0cfae8e6f7187f1ce80aab591bfb71c250fb541dfa6edea3aef4713434be87fe6ccdaaff1238355d4d85b82f933b0267dcef2e0b36c5e6aa68b40c2eca4a7b2a73a6380abfdbe837f65666b508d5cb85c5545570df3093a5141152688dab8bb9d19482e929683cd5fbeb3e26885f110ef4e37432398e8ff6ff45e610af3e8f488b8547c300ed7e66286a79d70627c114344ac889173e4c16781d0351bd938a8b9893b5a38d8f913c5f4ca217966ec33369501a0c708dc4967474211e88cb81d7ff40a2be59c847b502214aa21e1cca80ea3f8c2c14abaf3deda7921b07c6fb8d6de9e96dee5e32fc98a1df9176f620e6bbcd8108820070b04254da60c823f6753730641143fdeab715f480f680b0591d1bfe36f2b7e709ad126f02193ac9ab8e00d34aa7bb2808961c446c88d81a4f4fd8901016573fc7db729e1e2f8b423db5d81f968e0f236c4142009809cd763864b037b66b4e65a2e518b40f58d87081adb3862341d533abeeab759c9e7713c7e8ea477eebf1425a2452c1df6ca54c3559f1857f01d00b3f5951d10291eb7187b9112658152e5af6a7c65b365a5ae18c720b556ce7731e2797335dfa225320018939dec4ffacb1e506f766f7211a2c8a03769f4c10d4ce9a3d358d199deee57d37d306432a6e1c1b5341563e218d26060ea20438f7c22701674c6ed83d1ebcfbc28172f94e557113e1acb5503afb10835a7096e12a16e77bc0d7e3d9bf984facdcfcd0e26c9e7be1d410de092ee03ab8d1eebe1ac4912e7a96237a925f846bacb92a7ee50242e89ea50856c814aadb443e74fdbed8e21ecc170e676450652e90e3d7ccfcd5ba0dca7f45d7e56c01ebfbe212c10cf8fe43f21b5ba0962cb7fa3eff3a769f5e9afa45e9f197a93217c48fdfa099ca31fbc0da4de31d02a534592dc2ef6e371f0844411aec24c513faa60482aea8264465eaca431f660c9b9c05b9014c768de61df570c2be76310b0367b874f5c8bb2cc07b14361048eec4f8409dbfb6031231d956e2ec1e5b8c4b34636f3ba59b29400776c010543f196cc68e5435c18721ff63890dadd55ee468eba0412a27caee58d68e5625ddd5804e6761052020b0f356823ee5057f4217111c7aea33bfabf396487a73d19537b958b684e58aeb7aa6ccb0a1dc0508075622cba517b934ab7b195f1647850e846cf7738fa658d01c797fb643fc3851c4310432c32e2e03d4f5510630a53f94ef6b93325689abbc9d97a9ce8081083e84c1302503361ec772ccf9c868f42b20657e3429a601d359339a1c5000998ad202fb632e75f4407c71f138edbd7b7e723a2436c78bb0f020c798cbf1dbf8c010eb2268cbcbd153ec2a7a32850f05df1be061400e22bccdf89fe1139a3d772224862a2a344c8094e00d03911f0cf8a83b3fc2ffafafe3719982d1eb2009231e62763968a08b1e21d9c71e9323d0efb9ce7a68c73207a829c9502d43228a56e1bfe32f229561af957221bd3b8dac30182b3b3149737017f05571f42fb278528794f1434f448f32b5f18ce6af6da917d8f41978683438447f9aa6b3409c86faa4c02cb268464f9f6449f643e6778fc001be22bda4433106060bad724fa484bf816446b71f28d6f05998d69a4cd495e8c197320cb326f90605556598122faf46da8352f551858bc2f9cf3980612a03b1a6001e8f7266975564e7a8d6506f8aab2d1c2ef00eeb722d5e1a7d327cd60a1765926b1e1624c13454ef3535072df5363d8230000593968f2de894832c6fa0cf1422e0428c9e0f96c161fbe2b51287f75d9a59153b0513a1637f82de5d0fc4180a8bef951d823e1c5d7da0a495973295823fef9018b8430b12cd0b11532b3e864a3e4b522ff85810ad7941829000c5017fa0c5895cb2498901874f5ac47f21ce124113e62ff44633465100227cd8be7c4eff6d7228c5ee86433d25a41b1277a8df1b2bbdfe0306d2cc426611b371587cec3ad1db29c93c118397b8991f0e6125eca1b6d2a92abed09768a1a16779b7a20031b5aa2eb98595145c8d1a61ca04ba020eba3de64f13fa98b7517a2db867789195a9d535222f94807098127d04ea6c97d22bd5fa18cee91c4ed5957960dd72de9c78d545eba0c723c70ee4c61897f85cfa863c400d3727eefef385e0f2fe80343c87a82c9f35d98020790543228a34da04ea9e7517c667c1b1f541d297e7e82e534ec760ec0f45cdb160f2f6e436ad8f51a9299fa6b74b04507221f4a72c0c7bdb088a0aaa774e0e9323febdf8159ca4e728ab5a6577731ecd1fb3a06983e2a754687f71be4da2913728de722dd6c56abf15e1a92b2666ba2873c72c69ce968c294a3c5612de39a20189b34cada41519e181dcbe7f04dff40e9940367f9dce0514b3462cb62be4086d443bc335d6991d95b209cb46a0b88e6df466e9c00a82c71974b941c5ec24c8ef516bda8b527e609b485f596e88fdd0193aee32cc2bbbce87a0e70af2cd69d037aca955024afce7d736b9db4211f3b0e76485864738f4bd8f85fc5ee387d899bd20d864de585dc05f69aca36d452e551a824ba8d086ae0c9420bd5055f520b4c06c7506f77fb8f8a637562ad5acf1e8d430bea5440ed068bb10b82d239098145c76211acdb6fb9d6b014f4b50789271c9ebafb6db59c0cc5f9bdb01a990e34aa0c09c8d84810088da5717e16b27788df002c78481584f541bef4a6ca633d32a0334d9154ab9e3c17788fe252b5a4b173dd124bdc0b9d83816210800c73d822cca4fa2d446addeee9b4a461f498806c74c2d22a5810eec957eabd706b42cba6db876a0c6a54ef5602d4e9a5b8ce1b5cd85c362e79fd2b7574949fa02d61c7ccc29103a654c2356dbaac36487482c04de5c5d797eb8ee3d60a450513aecaec27651f21b624862eee950b7e49c5577e79f799f17b68fd5a76367053246fbedc1961e5a85f98c56092d15677472cd67fc42debba1f1092caa9e7c36e96442445569c49dead638761b18e3b4f2c26c0c05b4c4d6ace4a30321534c6f27068bb4d5bd77c1481ac8edd05f2433066e3aa904a7fbc03b8a5787b275763d2209e063de13f99c6fa30abf5f00d4c558c07298fef1258ec88800df35c302be0b0b3d1f74c44fea86f3cb5e75f825939e17c4645939c3324bf2c081148a052cb02b427835a8c6df96610c94b6cbf06f652c463fb842b5d53a0f1eb9b88279324e5661d5dafa54fc2230ce1d798c6f4f0798cdca20aba5183d48783a8f8bbd8bd92a9b0af25709836b7aed0de0416d5121e9ce4700f6900008ffc7bb904ad1aa3702a1642646b6ded053993f249af848ca56e33fe8c75641699063bb442fb7b07631e5efe0044f4e87388b7af6cfca14b4616e1c6c12bcfcdbe56555517c93157427c2ef081c76674046c9a9b78156eb872f9d234dbf608a08645c453f9bcd52515a0f6129312a7afc15bbfded63b7083e7622b52a58fd00b9dbf6c6768ef82c9a5c5d7243d4e88ea430b5418b775e148d87aa26316e8a5e7b9a2ad9c1defbc15c3f8076de686ac4795badea40238c36801e708303a3de7abe09b7404791f642ca38cb7aa701eb2cd9217b823d79ac95fc10443c83afb5d95c1d56f9aa273ca87c5041cc85ec9fe4cdde0aacedb320c8b245a2269a72f3e1c99e119928e2bb25ad04e870235d057e21f07cd553584c7772e51d4bc3a8fffe5c98cc7b86282029ca4b1e96b2e7d9934f4ad8c9a3c5a03835d62324a939a9d66c9b01073ad93b66ad5dd5765e2874c319c75a02e23e93312594b3a08211a4a29c550171dcacf88d58395e341cb38ad6a45517e34389a221c328e8560d639786cc8a65f53e90e5d1c507fd3a16137c6d348cc6f539f940506813389895c43a4d722c966265e431eb3c39fa455cfdbe934b6b308b160e8bd45ff44385870ced9b2d898ab86b9b65837238c4133a224aa5d5f2f289fe5446affdd53abf7557832b1704f304dd0a9477266eb7815dd2ca4be3d9fe43333e3a13c997c7ec7ab3bd184306c60ba8e8a04c664e426cd35976a8190fcce35bccd74cf84a392f852bdd3b5840e7572b64e4804d0d3f3f41177bb46b2befa01b4fae340e9f47866ff1ee7c3c37ed9f07d0c2e07743400e19c94b139cafa12cd3757be7579ae238ba4579461c85fed9bae8833cef697f1e697cbfd09e60dd9e5ce01ff4a414ff40b36d2ea572827c02fc3e6f32303342f8e10fbe0db210d008281d6f07e371bdb11c8c6e618538d9b608ed1f76e707421800c7b0054368bee5fa8f9b30d89c7b44ed8c41744b3459dd87375eabb826afe38e7584a65005aa4b16f6f58551349e02eea13d628e21d39746942156a25d3a7a4c1a0aff7bfacb90cf6989b5251793386eea892aaa92b7ca5b31af39a741d5b5c5d053c7ba95c4c91f15c3b10f830223eb2d8b113687e80c80b25330b3539e6d6ed5d9d0f06f5967843d263c7e6420723cfacf44c7cfd68b1c0c7581883ae91c7a8a2cca7305b58faabe561dbaed991913fe2e1930f5f1e884f025b5af2930775232344e1aec6164a991b1dcb58c41c32e74350fef938369ae074218e45b0084252e7c867b9aaa9f2c899d085c9d8b6ee35d5233ccb8c346fef5915836593a7aebe1bdb1aeb4fd8f2ca76904dd3899a4bc5e72040ec599a7ca2775a8da197766e3760ba0531f3019643558371d132d977ac8477e4f57def487647d3e302f87600a28d6d349b8b7fffc1a4a48b5dcc42e0b5f8d5ae7ec41b9883d7a2fd468f8d9245f1ffd20fb559a33fdad2e5f19fa52071b8c13826870a3bfa829727867ebfd41306e3a7db631398c7bd9c4702d2188a9f75964cf4099416d0530d617445a456b85fa620f2623086e117b3a3c7dda20d75b9e4c2146815e4e198cb01911e7899acbb42fcb888de8e1439ce07c0e938f2e4c34e16f59f6036659e3fd82389792792846cb756e8654a3bf0115fc954e4de1d5d2092692e8a8306bb3de0c687396db893fc1f73e12c9bf857770726d2a4b28ef1e91c50bd2a59f9e4016120961c56be6fe0323c8f1dfac4a7f5a35d3b765b2734ebc2c136c76f09d79722e592bf0ab3808955dad6e5567b748221678a1b2233f26e9793195f7da668c632c35e604a5fa5400c194b1743d910008feb9a6c7b0f8b146120089fd9fb6add0ae68080620ff97ee06df62198466e1496889da6f5be96c66a0e8c39b4a16ac1f56376ad24f976f6798e9231c1c225b4c6191f17daa6d91108ae7eaeeb9598b76832ff9dbba83b3e2fbbd4b7b698bbc2b28a060097ec37e1badaf1f89e0da848af233067a5183506f610383d66ab1c64217aa67ea1ef9416ec7f71121f6c6620ce96d20adfd53372f8fb7231dbe8ac568b5946faea4f339c3df1184fe67c75ed4b716753b8393af55da14ee7757dfa118240791bff2fd1cf695ed4bed2d4b9947eb3e7af6add74f876b0bc93addde565f2b3d4d77cc86d2b89d8ebff5d4f35a4ef34b8e0be45fc6d06fcb03c15a25ed70fdcaffcc9bc535e7f371ad1c7377a96ef85b4ec0ac20c2b05544ee710aa9940756bdf7da9b06dd077c8f63b0c0f35a04e12ddb011ab512ed0050395449dbd6d5b6e72658fd3b81782c43784dcc4003cad20b3b0538423bf0e54d4841dd96a6006a4da22abc110afc5590c78f03012a032630f99c7edb9bcef353cbfec5eb629cf9212258d506ba16d5a976c5a2a26086df10e42ec80e34e05e5c8fae0b58ab7460f3dc0e0c13ca60a97318002f6242773573d2f4f4ae451e0aaa090b3c1c2011062cf757bb73039b60b9ab3f4b6c95c62d306316fcfbc658418de42a5905199a427299527468043c18dc62d89c6c7130215c804c96d691c9dd2130a03c214abd8f736119d0d091760102640b81515e33e91eb6816de2a06a4c134f68f0099950812fce5db983fdc93b541fe4cbc64745e649ccaa5dc449dda58b4098273d3803f3f278b00bd74524a6979d5f0ba76b136735dd2898b0e3ec02dca262f4c5b5160e9047db38b62c84bfdeeab1e3a7176eee1ade768ac4df4c9824b0108c66376b2d713f6c14fe2a94c2e9a6d675da6e7b9619849ae86438e33dae0a22e77e1b24bab5db3345bcb4e4a861e1d23478fe92571f54a150f227e2117c2524ff3a38b7432148b995b9287f4e894bf22f7f0fd1bf25888c75fa2f794f0b0b13ade01308c8139912f269b5d7f33f52d75f91394d650ccbf49d8bb76c6652716a5d54797c192b2e1f629f9870d7d19cafa5bd151c71426c918217024c34f1ff21c3922623d831287be6167e6f65fe0f331ed4d880971c56dbf07151b28f81380a3f2568bcbb1b5b91018b85ebc5b2b2a513baa445f90c589e329dc12a8d4ab5a043de1b4144c2577ebd4e13969da4329412707b89ad58d3a9943ead261d438c2fc6a2a1fcc22042a10264e9729950412485bea296593aeb4fafc00ed41db4cf0911a341f5e231503772159c74d22d997a729a7e58df448a5dca85c8628b35fb84a600ce05c21fd1f4efdb9104322810da3fd8f2406b6d9b6cff9c9d53bf779b457cffa5c4c0bb8d294944991af53c605e91b2f41a696a9fb098b99c84cf05bf9551e2413273036b869cc60968f8ca3f8a02eb1473711950b2a0384c981ecf1ff39071e86fb4175a561fb61752e4dbf2b8a42571aaf8168f15de17c5dc04b400c0a92df8fc06586c24526e0fceb4b25eb44b65e9f0b8615cbee6688e7679715f972471b60df725ceb048e8d47f8f003e14c2636d488c562335ced1cc73f26722538de20909abf08af6c36282267cd0365be75b82533b303d18067f0d77ff4595fd980d3ab4e2534d67ec151bcf494cd1d0e1aa3d96b91dfc0568c2adfce738a8355442777e7eaf56a6fb38175b2a9b1519e6d520eb043471fde296166dc53711f6cfd9d09c41c7aa776eedfe366db7face99354aa76d40c41fe449a596449909a944d91b7fb8284958079bb9c2cf1924cf03b2a90c0a0675117e42097d3dc20a773329c4924b5001e10c949ab9ecc97028e6534b0f900070cff7827fd97b0856751b04d2bf3644ac4faaebebbd2c61b228c26fb0c51e338db61d5c9f15e56bbefa33006a6a5790a376bc4c0cfa770481e405e2b49b2953691ae3f614d8fd4fd4a607839bdf3798445121dc067da0b794fa312ffc539c4e096165a0b3b6d6b90503e1f1bcb9d2dbafb5e2451156d6dfff06dc3898df7b20d85eec33694996362eba3403ba83b5781d0c5d7eabc0464442a208a4ec22fa6d92ef9ae0fe07e61f4759f444ad0f0717e2d5b80679a76136b937cf06b30a2413416eff417113a333a5f1a58a1f1d28c2478f15b93a70f0a85f31268be377e32cd14cd7a3b0ae26bac0c9980b3eb88a2a2665637787da94b289024efe5a21b26c3026f2bd04a0c77bd334e0626fd4a4d2dbf6c9fd0fa5991759e7f0fafd085a61838f84ff705ede8b4bb56756623b413544e84525a7ee1662210982393a926e011b214e88fd40dcefd78444b4275be10b79971a229c364664a241ee367b05a64cdef1b86d4934887d566f1b8bf7249a365b86c04a98c8f8ee73b482be3d52015c4842195ae7029511a320700ea12d16a4161296e9df317bc8bd1f11af55c0e452e89e15b4b62db03fb308b7ed24e44e962a019e8b56f69ff0be63e366e55e120061e1dbb4f9e3f2c29335996c369f4f2530f2b961fd1433d8d2f7b0265f1d9c1c8a017ef295e26b341703f8b5728170c96d82991ea0b8ba278b0f38b63181df1efb1e86608cb3ab4ee1b86fb48ea3fa9f3822bca9763f922153966cffbb232a50829a339c39ebd95c711d1d20c4e13cd585291880d2bda65d8754df71a5418f245b9573f8865ad44e8148b1c69f948bf3892c0a5391f6ddd966aabf92cf506a000bc95f5e820c8b0f50dfba26e554fcc833a21605acc63f3888528420179efd2672f375f4091d21b3838ff2035217314939061d27ed8fd2c147fb8552b38acb1447b9ed5aa1ae0b7bcc3ae6f028a5cd4524e76972d1b7f9ab570bcc165902d6284e063a0a43ed44de7696cd4bcd14d00fede8ba82fdc3853155eff83c5679834fc29a7564e0f92bae9ac01d2096607ebb6bf5470f8a4d3483b209342231972a5e4780b6a53ad59d2ec69b5080f3d49cced82fb344218385c7af59a12eda427f464574bb21528a3979483df6f1eeb6831ee8744bed7d73dd0e83d4ade917992b428685d96d49617a76be4e0c42150bc4bf7112ff55e5e39a45ff7496b7cf610039a00677fe9ff543af71bef21404853d016442e9b4bb03559bfe04e252c4002103fa2f791cd6b1cb82b36f3079fc6c686c949148d9af3da482b6dca634f15d24487e0245abc7df4efc490ea6a92fde769d3a8359cf4a16456a2d4fcb3f73e2dc408b9d1f82938104e9b5830e72a1c00e65d9a8cb5ebcd64fd2c8f064839bad4f06b0fcddf026c1611f73c4c79990715f70a1994fd07290d58500dae2f45e0b5a438c61fad794b88679d7242cb472076aea101d913cf633c393450e23126c545f155b3d223e9d259dfbc2548db83387440b97806f8378deb55f4f41e1f1bc6fa26d24ec188d202f00f5557a80a9f551be485b25a835459c63ed48da9ddbb9a5bc047887a666fe404eb4382b23f46cffbacc0350556129ead7fd34f00273afd297502a87e0cc77803cfa8b8205582c0c47e38cb061b1862d8ac3d67a13ceffec9347f7219d28beb5d78076ad78e7753473e2ebd5d150fa8ba46c8f0e10de2dd8cd73c9b4bc948c57a6e5fa1ccbd2e8e8ce8385aea1365d8aa31531e1167d15a12a4589b31031c12e695659dcf3eeb5f82489441ffeca5bc4a14c8f64e42aff6d704f14df41f0c4418b23fc09102005d7a9f875fa0f399fa6bd5c21ad0488d664a26dc44d97d310f7e0ef83a5507872df19a382d116b1b2f050b91f4ca44a151983417b854be0e560f090a4b702396338195efcb22239ffc39ee3777f9d876ce74f36fd17b3dd557d02b47d814487790c58b01ce6a32661cac7839bb9d4b7dd8e3c3807b913c554fa60f2f9ad5806507c2b2c6ef28e5b238c71e3f984ca0c8b2d8333ea9eaab23650a9ece65581be1903280ee067d2ced293ef8bfe346fd78977175dd7bbda652d2afc33d3457bbfa9e3f34153bb7d648345bb88c8ec6c69f07c7d4535eedb33fa1f519fa713ea7d34d4531aec1ee32fbd5611088d1e6e3946d1a56640cf83b941640ff6a1638566b7b9c9ffe840ecbabc4d650da55bae786d78aa1947f78aea3909f3746b7f18d27d662a87394012870af3b63159b196f54a9ae07339f04057ad9189bc7a1aeff8afaa33c8b1acf8d4dbda8342fe4fc4e732125e2d4fd5f97841a04d800f5fc9a948c6ec1ed0fc00e1bb3f0128a4dbbb68f641ed184a6bd397fccfb16129e9da30ee96b2a2948c8e07c05d66df0a72d1be5fb0203b5725d94a01dad8e715656a8f80dec72236279f8d6695bb69cdeab07122bf613ae865c489532ab036fc611e77ba7d6ee402db798c2ff9a27f01b0491a0caa0b33f3a722ee9bff8e41b18f34cabcf3ee1a3c070ea8839fcb627c4e8d1c6190390b461eac1b8b7570306c00a4ddbdf2367639fe8f9dfde6b16d970c0b0fe305396d17c655d07e53a9ee3e9243e12b896b7f6fa9247670607e7c8a5ad9005a5ee25e6e203497ef152ad7a4c924e199bfadc964e21b322429b83a5a9b698917990a5f8ea09d34a8e2787da5f3fef6ade7ffbfe845a8b7a4ce155fed6c67189e44f639d422c4984cfed24e1ff36cce0fc9554d7a32c681aec0bc77567d36af51f92965b8dff8020e21a238e736c49ebf5a5e4b11460587561efb91c9b78a285c7933329cd2d3ed42ddecfdd8b4b13cdb36b570935d3cbcabf1af12f73545cece2a915c1c329441926f4829d1b7ad297ae57f47edd16d880b6c347ad5d92cf286dab54c853416d77c7dc0802c2a59bf9226bfacd6635ee0d561a08bee08b14ae702384b24a7ed78bed7004bbd58460369ecd06cd0b312977a4756292767f7c42ccb6d64e672439f2f66b95e51826b5ca9877010829213a6a97a6d1f0a4831095e2f612572673b4b9bd05f782bcbd00131e6d2b4b7ca30302cc4f724108d0b30321d0c5e1cfee742b4509b8e37b433c7b5f27a11aba0929a4bbd875a74dbf8347cb2ce35e76e5f3d43b6c5672c804283eb91467c15fb5a14698f8e4471c982b93100b96cd058f08609c2f6f9c6865d0d07e07f09b766b7ef94d021952eac83fc2e1483597aa6bc174822e048927f7b2bf89957364827521d086c27ceb5c105a9d48753350b8c187acbecf06911d81a7900f35fb8b0bf2f96983618a7392036173408583364525dbd4704e71e9b48e6bb4a2789d6b7a70e71895d37d7b8326421c179fd6998acb7b6b29c152ed60d2959b3d93e6513e691e7d1a928fcc70b3011840bda6ce0cb526398b5eb5b8c1442ba98ca535fc1de4c88a40474cf8a8daaaf2e63fc0db551f4a592c7114a000b148f876a9a14ced7de80e769e80fefd686ddbbe6ff01f313b42acaa5c5afcc8c1c969d85d7f26e079b6227388f8ebff9d470f75ab95c89ce6ea56bc29d91adb75512ad1cfc88277ebff99aa2089a609de8fdb2263149705fc63ba8a96aedcd3fa2b03f1033c401d0807d22bda6d46c7e0d0273b9b06734e56a6aecc64157292180ea3cb3d6e3a855feb8664a17459f9758f6c6a569138d21c8ca96559e5f9be35d19b9058cb834bb4f5ef51abbde73824774c4d8ca6dab1a6a5050f378906d22675dbaea204ef20f5ba1e7405db74c34e8b044231b2392cdbef8b7217b6055df1f79771e7975f3f0365895c34673ff7d3a7d7753f1395d090d2a92784a5762326e1608fbef11f9ce7248cff8c7c19b45d02d922a1654a632928f8509c55f7a96b40b0cea3acfdfccf916a88db48b75a3b715babd072c2d17177b9e9d4ffe1dc7cd022833f26fededc70ba587c9b4a31b8190f1bca156d31bb06ea810397a558e22aa5f3be5eda9d149b566502427392afc98bb8bc05a4ab311db4fc2cc5e3c5c1e06ba9bf16b5a6ff19095c51e03b68fe1e7a9f1271812937da0e1fed15221567420e605621d028dc8ad8858a0b2ad18f89e672b943538fab6482e29f57c652ffb11bc02cb0f41fdc37ead38f8f86584808717d30164bce50762ac48764cecd714dfd2627bdff025900d3f1d9d2224ebea5e7ba38946bd0194ce0469f9390561b09630b1041fb125faea7b111f1a292362140a5ca14b8087dad1c79e72985abf7381d632c22ed186f7503035989ce5de70bead87991a04fcd97d841bb049af1ce56d34ba71cd55c50ef1821563c044b7ab75b3713c20b93ff10139bc27446cb01885fab549a04bc2a58e01ea2726f342558483007130988979eeb54f27973391ee5dfd270d32cf9a5721d7e044e24bf1418116793471b7e3b0f716c7994c780a25f3a4b349abebef47d1fbdd9e8cf31c38a21524865cafe345b1178b06f01940d4585ddc9c327f029e0b5a40f0f2a55d73bc4b969815ef7cce0e2078d2682056803bfb0d98ff334459afa2b358acb803c5d2cdeaab2f3ef70356f6e1dfa5dcf7178f7c72820c911eff7cd51ea95ef39915a02a1f7d3f75abf71db7ad0303f4973babe93085341d099ac46d6a7ddf656e70188d514f0214b6e550016a0a16cf9612ba35fc8efba1bb19dc9e87a504dc3d37c225f6d5531aa5fcbbd06188225254bb9e8d036d01c2420031016c9ec222b773044dea2e3d0371c665bc41a2ed5d8272c3795a6460b69d83996d0d00dc97c7c861afb9ff27f2e78b21d762dd62b0dd14d6cbda59c2d1d5b0d98ce2e371f3a2428a32c2a92927b0578a6e744983ff38cca76088dc9492845149202dd0187dc56b4b82fb8d2f7509f2cd293b20377cdf019e2990b3e2de2e7c83a2c2b2efd88dd0cf2a507d4cd6a64b87fdfb780df848871302215c32787b7c813cd52614a1387cb265612d2da5e82bdae81d3227dde1541eb4d5d07e9747f1e1598cf92ce6cc83fa2759335e4bc5a54570b1a42cb6ae439dbb8a581e345ae3162d6fd729a45df97a830f4165ce4bf46e124c846a265ea8cb933a830641770a82dc3638cc634cbc6c16bba36295c53086359ab7eeca666a485c9c0ab770500c612cc3b2c15924262d20e17c680d57411934a7bd6e92e35875a03729bc4992f5df393185f60fd37a90d9a5032d83d8aa6681976d44e713dfe4414bec930ca0fe1a22385fbc03570ef5bb85286a34af99d7f0d83be3ddc16728b115ce72499d342f598b09b7682d00ccae07d103d61d59710b6606bf336ac50fffca5beca9430c136beed38f9917f35b0cab3c32dfb35d0b516293fa538662246d394de0afc7b4677c637b8e2b1f3977500a4215fbccdcab003c84d70b6a965f7c2e9466a3524bf9fc9b0c27b39d6c4c278f52384ab946f0035a2763e6fc569d9fe59a3d94aa589fdb82e210862b7de1a762df24908d8da62d4eeb7642669dc438a8cccd529b0889580e01b527d656e3a8cf105c3a6b4976883f53465f9a1ef11074a493bc9432e9e0b768e9125a8889123f9803f0166018271fac36d40b51549c753a0447909291fc16b10f844c6dc47e64934c17549f215d7597cf21c6fa8ffb99a05eafa397d61f84e5c2e1d6db57fd1dbb1a708017f9e58bb39e75e355fbf122d1435ca907d848f13628595d821ab03bba126f3504ebabec1b4f2d67aed06ec5f7b60c1a180e4728d36498115ea2d74faa2eedaf8741ac2a84b4af70fadf844e75dc1a5fe0fd3747cb1883fe5d3ed4747e13b374395af0045c7c423743e7648e6e6fc84a8309219b68d68c4b4eb84688201e50f25354da0241c9562295ac1d22a1e0cdf23fb29e186c6ed14a6fd2b7751f351d4a5654f2dedd94907b491aaeac1cb674aea7cc06d2b7efad35b3221d27e822e376f681b39ced83bd57b9bd44927b700c0e5e0f9c2984f6ca41aaf23152203a0a61f38d9c642d0b8368d9096570115e71aaac847d5d10137d7196d1518e995f2ac97be475ee493932ec76c66c009b625c41ff821d87c7efb02d93e1c172332cbccac2e4c4070580b1b694522b63caea735e82729674c573493cb6371f61cd0ca93babc81288b945619ca35c061e8624b5f56a56a776e6d1e0fa45f43dbb2053b8bc3dafa2fcc0efdd4ce74da0ff9104ec0e10671b6cd531d852ece80b11453ba7ac40a9f2ddb819095ed99a0e99685cae93eaef2883409ddc29fd1146aeb74c1344820f48a34ec49078bb95684fee6c5afed984220d418b0ab983032459080548f333f443b9181a2e14225388ce2467edd315370c7f34140c6850fba32ab665aec0eed060c17622bc43580c535868b89d15a587470f4fb636b7b875c4cc755f28b80f745e15dc0a745e42895319147fec2713ed101ef37496a509be0b6cf40cd47cf883dc64a54400f893d8ffa4f468101c290ab020342bd69a06a1c67632646464eb9c8161fe421b49af70173f37f33a83483926ced8be40121d80b9394652087c8a3b484e2f45f67b55e14ed01ee8c53525eaf0085cd2608be81e2b01ab267040a09e52d41ccd90db2fe77f7054386940960d3b644795d3be809b0342524cdb29a09cb3e9725c864d8dbeb048fb4bcad75576b135fa2be1893826b5ec686a9aaa6b87aa1cb5dfcce89b4282464f940ea77f509fc7b43c9e894ef3ef4dd06787ca46933986ab18adb4a2e9b8d93967a81d3ac38164997c8a23ee54eea9cd1b3fa8b1b85e7665bb125e66146b40c08e057621bf4ff66cff20b3ae81893bdb4fd6bdb72e3625047154b2c4dcd58294a809be1cebd8adece2206d09485e8c0950712738cee95ca2509275bec3d6460211a673c27f72d3ed265375cb470ae258477e24c35c5a4308cf6546582a69321f900920fbd3ab4b9f54367931b44f8f60418bd33229f1a4f3af042c524a54cd3413356a5e5c3d120f7351eac5d02b375458b8138b105b9fa84f0165d58665ef2116024a599f2d854f2ff0d8a15b68e1783103ebe21762909804d19cc00ba6bea84266c548ebbf430269a462205b01390812586083c092a8a3a7eb4b0d2ca8a5b639736b701a135f28dc4c346332c305b44f9d6d0ec4395b319c0864204e2ce3e698ec9858fac31587c5cca6fd8bdc85d316f1b5ec37bdcc2c14b0fd9fbcdd152e977865c586d0f56bbaf1660a5b8e1aef3f4cf061dcf20b57e3765fa7c5ab779fba5faa9a0170049926ce4adedb7bb5c33d0b7001739e73d62e2663878e607b991eebdd3146e5c9777b9543ecd4c9ebab5f2ca0e8a1397431525ee81c401aff182e4c8c76cf71f52fed3993133f43eb92639743720ccbe680c1d070c51f0ef5948f6474468615c39d0c9eb26895f8a7e319d8a1d46d69ab358ee31f68885c7b23339029878d6c89243e476f50e378943b2ade49a313f0a03e7244912539297bd074156b807ae39d0856a7fa2fd48c60b33c65d22dd9c9c449ce9010e5056460ed3c3d10bd63bee867eca3badb9278c0f81a992bf947e78166452a960d442d188843b6991987f0475e88e48aa0f00e37dd0c76faeb47bdb31b5bdadf1f11d60694ede98602ea0d66c83b9f91492c040afb456a32489cc6795284175462d8d5a5f9c732e6a069bc29b4438705d7477259b6052b49a541f144eacee5b64ebe39e39b9df023f1d7fa84403a3d6efc600c106531e1726d43e80b96d0cbf8f65d70900933dac1571bb8100e459db984d6d0f6896402bef954278f011d7819246fd338911e391d64134d3fc85873f6008fa475c2464e88c59971dafe3086c310a4310db8eddaf5addafe4ec13bb9f9d433b616273cdaeb016f55506e995171772971c442fdb02df82f95266be69e70dbf543b7ab389291f1243c842aaa90c526eb858e578236acbe588b43080e4170e30f403c0f4562a92ad6e42e4cee029fbd8f1ea40b603cd3393b71fa5183519d5e959656d85112b03b8ef11d7167be3f55b7177c3d0117b3887c08004d72b9d7b73e090b872f1d8e40de04a0804767f56e3ef065b15ba4ee845626adcbed8eeb9f40c8fefc6f3bc3e54497943ee8c72655a6e28b246f69a00b0bed5d5f636160b6d6b9d0e86eea9156af6f54911b7c979e48cc50d74030e9b108b43fd30b56a85b181c6f231d1978f6efdff35b9ad91f4ef9dbad82213d238352ddad3f4a776178383f4077274cbc93f48a58ad03fbe61be35040b8849d9093f0c0ab42bd9d0b1c1c6c6d190a7d16b7275327fea7b12563504c7a12079d66be480246170adf0e3aa78991b6146d3d89b236851b34bb0db4cc064f438543b62694a816569cc83e846b20f1813f836de39286429df38d0954e968c48b7c65c13bc209fd14685b1f650e46fab028771a9dfe106f249ddbea1a118f902a273a1654aefab0a5e52cdc08c90dbb453f2795c03459184ba4467c9deeec56a92031e23ffb2adba92dd3a88f10f10b680e2cc3f37a3a0eb04db7a4e11bf4f9d550609e57f9c4f96ad177718cfb74ced84f7214eed270c6cf6db41291661a8594855809524abb74d8eaf6e2c00caf6a715072e62512c6e44f0e00160658cb5dc7032dcb5e8c9ee31a5460f94efad5bd3b1269cb49b7317c6497335fbe23d22ac9892167d142e809f6154fe62725f977df45b64a25f309ddcf31b5005179f39d2cf43ba4a960afd638cddda9d986cf9fed6878ccae244b9d9d85f14dc0e01b42fd7f9ab3f44ac4db01811f84013031662351831ca7b012fe388cd455f7b3254ad372268d8b40f674ce7d981b1a8e3b499216211e02d7aca47c064a38799505b9b980c035bdf0bfbb33ddef3510ce49420319caaf5cfceda8de42d67f8419165672b440649fb8c247313e6b9a3fe63fdac81a756f772ce333e7b17231fe23eb50acc0922ad69e38179aa2d1b0810aa7e835053f1f871df532bce61bc64b32519b5332232ace73bb6d43175f05728300560529d2d6a4e10dd39962cc7681fef56221f8558556adc9fa4715e9396773687a0f0ee904e839cecc8b1f5babb8fb275849245cc580116ea1c32776de1bab61246c3aeb370f0a9761c7ab97c0ba636d306b18b1a33f2ff88f75a08679ae613915880ebe3f8ca597eeac896f79f0f79ac23f764b3607e67ec19340cff1fc5adf8d4b53f61e3439acb86373c96aaacc3149fee88ae68c0f646d6d29847bfab8693b1220d112da7e71fa4b1c7cd26c5b6cdf0f0949ba3bf14f4fadf65570c18d84f49f3387c49c07136f6da6d488eaf97fc66f8bc69f69d4ba99dbe48d6ebf790e92e0177379cb314e50b0613aac2221c892a005fca161e5f8bf34565a91790362d96b6b4870a42f7259c52bc9f956de6315fd46264ceb35978f20d15af83d534a8ee5026ad082311990eff7e2cc640d53867f4da9bf7ff9b394615c881d327dafc3231342b7e120bddb19ad5e69bd852a5ea705927f9e3344a6c74ecc5e2f20da539c310061df8068969ce9a7c044f1dffcddd05628119c0c10fb37aa1aa55429e0666a9be335e190fdbfdf84a269035c0f1ec9892882a015e9d4a0a97e62287d5644141388fe7fa4dbfc9e0cb655f8bee497f7d7f808be33c4bf9135e43f1b1b0ce723b6bff32e5e84ed1227cd6583e07393d573f4919cc56890430c5e855eb6b59d60a4627c45db0188382f78c14d3a4a4cac57dad11b6233fa7e12c8042a54adcd431333635a003d94412b7c7dc3d7c50c6b359612f0633b528073a391dcac53e032f8fcf8fe283c1ef45aa413b3ebceeeb6629ba4cdcb84de47d22926071cb58341899dd79de28e28c701b7f8843d500f3c95347ab5bb4523f2371b506c85699437a8c8f629e73fddc9569643246987ee84d0f366a04414a2982e3beacb4c3fe32b9b7a20262423a4de1d9db52b37ac326459e904e2a4464261e314a2aca341d71997c93558e4777bacbbc62dd6549b13aa3092bdff98ceeb3c081d1162e3c81c43c91f4ffa58f6d7798cb74c7130b4d17f08240a30e76c83ac7b89dd1d6f71071fef14ef321e0115e1c6e047cc6ba30e4086cf0f283143efde60007a61bc9ccf6bc0859c7fd50c94934d6c2bd5b2272eef504a562434feda517d84db840c7d51230500753629f40c497632105b5e4b6666b6157ca0e9f6b42d05264b6ced73b74c6480617d664894ae266398f889ddc494bb3391f10b63d25af2c6744c2f00720644fa59b778a6eef5cb43b0bcae8f901ce6f2470959cde0718b77b8e7c814ff2ea6f1728e977e12c1b77bde968148be56814e0963cbe664eefdb78df3440bf53d86eaf92694ee24e319a254da91aa2211a28afd9fbb92c9747438f3c37b3fc7416ac169458044fbd78a267f2896314b09b3b2e401f2a3b991a8aa181a36d9793f59c8b83fa4d2d2b2347209816e94e5134650936d5befac04123dd0d1c96123609433cf0ae9272c7b4ed9ac3713cb1f0aedc50b204e8f98fc89a86f09eb39e141647c98deed9dccc1d1f6985662179e3896b5937ad52c0be7ca1e17c4919b9c301960e3f984ad50c9d5a0f129bbb29e7aed146fadf6040ccadf544709e03f051badaef775ba853f26048814bd08cd36577808f965d796cb0e8ec1fb5ad96cd602f87c2a867a4b2dcc739890e0e1c93e0ee376ab12bd2786f9d19b7e1bb315dc2af7f2aad18bb1499bc36a89e18ac3db0ec68b190c3bdc19753a155ab27fea0214dda8c752edfd184fedf150a2bd510f3460c943661a940914f52ccfbf58d1c613858867f4f687325f3f2525280a74a6a5133f32e72b94f01824669047a965dc6663aef0395c526d609810700b744aa3c25ecddf5a1d5c88e3e390e8562455a630812e213f0de4ea52bb5e4bb20e37cd1a570c6378904371469603b913c7d5e67178b8b7a71f3d9c9a833f38a48cb610f0a466a38485a186dcc5abaf4bb724f23fa04e5fa73b850d92aceab6d933185ce261e6f75a698c47801384dbd0b79a8c60dbaeed4d8cd35b45eb4f9b116e6c239e3892208c42b6fe21e07ff2476990141cd5a449bbe74917dd10cc401e23adca642e4171ec262374820d18390c7426c25a8eef3b50c724e99e86e602ebbfdf5a7123aeb345685bc25871fd4048bd1b90733eed4a36623660d65524cafa57c3e6d655ba69f58505fac4a6797d9bede8f01cb84aa83d9eb1fcff5d988856acb85528e248c50f365594900b77b39c53b1d13d696ad03acb8c8226e205f258aa15ebda3d107ff43df29825546e579414f9b51167fc565bb5f55e6624a17b15e2c2c4b9500a66dd852b4d193014139b53a46e4759a980e983285bdc0a9bd5bd740985848076acff0c60801ee17ef583f193fd40d3fb41dd2c3abadccd17b2e501e8b8df8646d414fbca745fcaa86f04210e005ad00b2481a847f318bfe6565b778366d6da260baec86d43a3131961fbfbb73c49ea51de8933d613b1cf803bf077d91067dcc8ab094294d48149e8d5073112fc529476db85a9137da1dd34de7c071738025006b4b2940a4bd2b5aeded9081125683dc11b89082d0d6c4487be5c7b0ef7de8b7d53cf3536007a65b6efb981b6f673c89ea0d3c4005b5e580d73edc08dd1baa478e7fa85f5bcb9770acc78dbaef06f93b3fa744c857ddf901b95040a8d709bf9faf8dd8a17f559c0116d43a6e29b258c1a396ad372e5386414b325b8b6344845c25e96a33cad2905e5d8d3eba69153343fd8a3a30c0c5c62ff8fa05d3347a48fcb4611dc5f965e03d76a2e9685503bafb7ebec64c80f353ce14d840b4dfeb2fb5131e714213f17e73b67b93a26f007662c7b18be4e2a7c480aa16d21cf97be2ec7d8acc7c195313069eb32093fa4692480f146f4cdba86a68e9a20e4555972674fe875b412c688ee933f628bc43e50b1f26df1061a451fd975812bb726cfbef3e1d998e380f45cd3fb13633b32526e5494e7fbbf0bed2ad61a2af31f5bb29e16a15abb9e1855c6080b1643934d770128fd87230b58608a0fc09994f74bd723c3379b57ea894b0bd85723f24a6e063ef839595ece32a8d0287f26922e179eb4301c7a3df71394687eb33be6cb36744325d2301d7a31318193b6ab2fb5f76e5b82af52670a556197ab40ba20afbc14681a30e3d5497408fc4561fcc1f44929a29a35205b3b6e73f5cf316ea3cd9ca8165eee2a2f1ecfd7cdb180fc4ba48097172dc70d862249665218449c510556966fa867d8c4cbc503c57e708df6146959f288169c74dc2cbc02aa065d048387f02e1f05dcfa28fec2d438e57bbce3531bea9860ac16db94cc33e030633fa18fd70ff3c6fab18f3cf6652aa8e577e4e2c661e818d9483d210b33775dd57fda741b10198e8211d8b62d2b2ea5668d0e02fe8cab12489b71bb6971fa4ea8056169821815c56d0aeaf84dc415bc8d85311abd76ef782b344efbf48f094a5f5b289b605dae58177a1763d7beeadd6b70bab69dd318f8c88bdcdd0d915b344c6a0b7db4160b4a8ada9fa31a89e72c9440b205de19c2aae0c027bac2195161b0129491fe2097f39e7f2494d810e612a352b50ace74968a9feed51175b5770abbe6b17e323b67a14b85c2613b6bee44c99ddd64a86fedf2825f57618547ba1a206986ece665c14431b012adefef9ceac929452714d4fce4194ba97cd93438403c190e619a5f4b2d58c2a23a157ec9f08d72d4ad5baad1153e03f448cd18af94c3070a3f2e5264a6e19b34efcdbfa3b0add28295b14a2a6c71e30f1bf87e3b3eeba67f5b82411cdff01ca942b90873e6f7091b1c712f2ff3b1bef1638478010bdab62609fd5efacf88fd7ccc59a6f253b627b072836ce62cf958a40598642b1c7d71b28574546dc20d0e8217795dadbb9b22caf7d0aa58d9dec3858097038be252cbf3514423037b620c8d713714d7743396d658b77a7857a7c52bad7fc534e33b0e3aac6705f96c05907d8b863d171db1e8f574332223d27ace3ed40731eca1c8d02ce4aa6929bcc78e7b39207b9e3c5e38e6684a4076d0583b8d4e491bf6ad7d1501f2401a7fe75ca346724b96b8e063bfbee4e014fe908538d21679c3654ff9289744cc0adc30cb242115b85312db3bdf1e8f925dc6803a9ddf8520a64dd0f74528fb340168e62f672f3f24135b7584071af28a14455127e349e9970593000a98b5466132c6533858691dd0ec7efb0f03f97ea682078e750e95f60c65a89359bb0797ab3f3f6c13cf3636a0f5baf8e31c4c68a9c5c9e1e9f6c1dcf5f3d03b53cb570f8f5fb303a12aff4202bba761ed47ff286e84c76174efba4830e3bb8a209c1079ea4afce8ef272a8a24dedfa88f50fc8e856e73d2b71c1a5d3233a8d47b01a129271fb77fb061788689efc69a89d73c5cc9b87109b962bac1bbc7dc663c47b44be338f584713417039cc1bd2045d59e257c2ee0dd1db9a71338aa52e85e86b07bcd3db1500ade34cf14b1787fd4cecbc5994a764710f58a620b3ea2bb0f6abe7b6f00083f5b66ffecb089e0f6c8ce143527d2563f351e72b8dc293d1932c74a4c66099e8fcb9bdc31cccb76b94ef7d744676cc01191b78acc281217162403eee8192536df66789613a4c880a35556649a212ec474d9d00560380a28fc9983cf99ce64b15b206e844e39263d8fbd0b53d0b57783546c19ba79a6c8dbf6577c946d9128871d8aafb976cb7ba399b5f8eecaf8328078b04dcd41d4a51ce3c26b4e23640ead4299c17d551acc279f2c298b9505e9b1db4f34b74be89c2d0aa5a1de6eb433182d1507fae0434ba860424331475d5a571c179861a3f68487b51498f6ebd32cdf0d860c7a408035f9d09671090528e161fa64c38044c142ff6e6577b5de9e1f28b35fffae3c258db8751ee4b56be0971ef5fc665b843ddd8244f9bf07e6f50bf9f83518f068a03b8c8406aec314cff48ae3273d7be4d2f65301a130e12f2032591a48e8700c95d7ec252c4fb276fb6646d5aeb707501e8dbfc9ca8d15fd4b53e4523197e8508a1452ff784d7e242644f83f6df0f0a1a71d3f950610a6d0e02db7ab17d954c8b5c8ea3ffc123e2bee94945443856d726d2125e6efad7f1d2b6e590dae66d9f6cf1bbc1a5e342282015fea4c8cd4a922e7aa052388a881ccb1037691b64f40f5065aa49f9991107e1314ca92af64bbf13592ef42911203d3b46efec4b3935b67afb58367d7efd2a59cb4a2a23b49af9a86c24f1d5a15a1b3b535077ec1d9c2965a44fb3eae7343da3b4e103a47c2eb52c4f9fa6642baae75a84f49fde017ee78558022c9c233434b6cdc0cbef99b7b0b1ce4dba4c84bed7a8b72d9af3a81bf76ac0fa8dc47b3826e1eed86fd88943e74b2ef164abc1b870de82966ee34779b6b71d2862048e090621d2d21f740fe4c54371b86adbdfec3f6a65538e032ed8a25fb39171b119105231d1b22bfa25cd10a4fb22375f0b130bc9711427c75b396a4a9fc9727bd51e5d50f99ee1a81454207f9008d71f5ebcd19d64f40a0b558ede40c289828ebaba2c50a191e87c44d98e32ea6b1564bf2eb8f440ff02911cff7aee6795d89a311010eadf757baa95366ff7e4d72ee52c156307414878d5b332a6e89141ac326de7c67460db3ec908aca67caea5bc7bb9be4311d4f0c6e61a9996b502f424fcf8cb72f2ccb40f5b6b5a762c6a0d317d7d9a867416976f2a37ab43385a26210c395867dd34b63b984be5465acaa44a35235cc6bd54ece1ff7e2e263d0aea36f487f52cc25d41a4563d2d21b58e576cf6c015ac2501daebb02895460521e45edc453588a9e4e586a05a9bb3205fc70a55571168c7d30083aadc8e30c8a7f24a641e6ed5a424b987ec543aac8f11965866b927e52132d18a2665e5642e234bf46698d9a414fb165e4d3fdf3c2ffab716896b3c7002e0c14bf31351bf479551467c0eb25adc2dda8d275e77e8fc92ec3dc452e6da39123d245cfa164db6381fcc8a125853ee2f38f5bb9c8c11854d4e31d7935e0602c5a5b99a07e3a3f7bab9dd466f945fb7775b7c512dce9a91ddd76dc1812dcf28d36ab9729361540f922fd9f43eb927b513043262076db6ae7cd761329482920d470abd20efb8b8dc584d1a3584c81b33a4ff3643e28373c5166de1b7b0d231a06090f2c4671ab00bfd835c6949d2969e3d1702e82acb85c0b931f0ebd6412b2c63e7a3a0f406a99738e16ab9b44fe9a4e69d9fc86702dd83f3b829bda9cb2450064a70707373e9ab25054aa30e449c0bc43d832f2d8fb9d27f057f002616b60770e206b8ff4ba63fba18c886caedd8f66a5ae067bac3be5b81e8a3f7bbbdc700965217aa48323761f6cb334e7f8840031a865f0e3ee156282522ccf829ce9d4b3149377dae71ac8ab697ccdb20654ecce1743fa1501cd46d21ef66c5c71d59c5720f768bf42f545866efedd903bca80d098079e5498aabdfb8ee578d50e156a0515669653ed3518d972fe81ca08144862f6c73eff000ec5b3ab96994b4815f8f704d6873104b038fd4784f382d2bd69dc2870aad8b47ed1406db95083bf1c13c02b106e6f3c96b7f31d5c189875d456a4614993c49123d220ecdbccde638fa9cc27c623213dafdf3ffa51f0b2ecc4c60e5dad1ed8c3895434ec9ad9b170a54e34232e6e33b4cd169f5d0f9b2f443b0059da7d4c9799233946daa1d3ff79fb875753a343a9ec618a481af03432864377a2fb02eff8281ead6caf5787d2daad7fbf0b6e66a3ca995134a6e1687e872592b20cc65b4b1fe0ba6b37d35ce8edae27444f06544ae0a5b3012796375cbc72a6b61d991107aa4696a7a1dd29b0034ecc1659bd1f79494a68352aafc321c9f4d16cbae2263ea87622ee9ce5e26e42314eea38a5c4f59f69f0f14fa75bbaff875fec1ca9001b33b00bc0f6620f2e190556f30e8052bc8c69e14dac9d33e0e44019b302009a77780d1c3b4b8df686ebde8f775efbe6db205cb3093ce2a59cdd46b2c0bd54c8a5eaec8b815860e3dd9de8f5224f8be36937c82294a5b89e9ed759a62f59e91a3d0a687a10625e4b6974c8c146166678fb012614deca5d40b6cd0e01feed38ee494ff6d57f158a2914357ad02b00373323e23c2f8d4eb41c190192a22bbcd1b6f6cd6330afee6c0dbe2a7887a6398248f6b6e92ad415b4177c99a4bf8a296a334aa8c2a8d6c991ff7ba068282d445d86c63e96ddfca5a4c71fb1dd8eccb96d4aea18e73d7d31d2f6eb086bfb7926a417968e1b2db498b83f16da6788dab06641f9971e39371e3477335c27bf604e26c7f0a676df275d18d375b4d16f3b94dc428d0f8a49d2e52f7e13e164c27b6d6583791448a95402cf856f1bedf3ab1a550803444cf14446e62e6af112b7be3e87508387f0f4aa247cf6780858d4963eabe7690a56a1af18cf66f84b8090d914156b7b51d54eb624b2216a0ec00d7319007358f4b5c620bd17a95d584a88ea2e2341dfc85e49bbabd099fb555be79c4faea3b001a011be395f3a4e3a3d77a6081851180e9b49ddfb225110f4845320142d016ebed1867d79c372878b5b0c48331b798b077b661058ede62aa62066f1228ea19f29b99bbdffa4107c639b3a0f09db2fa04c8eb30aced874b27fb11b78430af5b99c363382eac436f49ec1464c2a2d751da94094e934cc6b3a28b945aa257efb8078db05d9458f790936eac0a50ca47cf0965c9a584cbcc9e0ef849acc470b5b7eb3da2fb0e79dbb287b1a12ae6f4459312543b94425b42b8df3885c1ac70ddbc675d88c9e2bc2f432bf9718de4c0a4d9c765af2a0333971fccc87fcba6a36c9d584d1bc5a6b7ba1301d1691083e17aaff9c383f4140b50521dbec8024105470a03505b49c25902d64ddbe9ce23a4102ad45495fbf3dbc68bb0a8212415ac1afafd1109796bdcfe6399e096636061df50107798d7a01eafb020db78309b826889f6d7806d9a3d104d9945435da5b552e1eb879497313199b33bb981b73e1346149ceadedba720300174afaa94915646a85312dc29c2b8bee6393dde47e19df7aa24af890f1aa5c7a8d2533f2243fa60b65e7736b8906aa9f1c79283c2bdd761b654cd40394f5f1b22ba10e250e16fd5eb869ae67c9a833d78678a5b547abdfb7552136d0e74bf60eddb09bc2ab6ecf28382c9def8f352255711c37354ce932eeb5317b1733ca0191df1ec6656345441a6d4eb8df98bd9f94ae3faf923af921c596e4baaad1d34e246dad3fd1dd6c0a153e3c0ba69180a914e53c8e3809fab01cb6342da75a347973a96db5803e6474670bba8161bfe5be417afd92e12068ddd608fb860ee6e9d10ec43e93e9b567d2639aa3a55418e4d199c38375a9e2a9c2ca928c2a4f8e159aad2315355f805cd4c64e65576995aa1bd6e1ac86673cce2e38648d2406cf5b7676bc121d6af22b379aa9bf343152550536a7ffd1f44c984167d8c4014739289fb1cecfb57a502aa8ac1df62dbbbce22f70bf6f53af8da435fb66e23f1593be9f2425eac8ccb80555d3be4cb07c99df76e99db80e45c33286ec0199ee5650e10c80f069eec7fe60a044b5a5648aeb22c988ecb1a02ab2547540feebc5648c7ca271bb90c455695537b488deedd88ec05476a9e8751b42064d3cee602e6a5624e7b6dad54bc1d83277bef922b8f28906583adf0c43fafcc53ef77099ccaa9b687ab8897877bddb67fbe7895a48991964d932fb682477166cf3be51aef45d42b9edce98a3717db7221ce2ffd59c8840fdc131e3ef9047f0da9116c98f4358b6d89001dfc481dd7a61b5f8f86227988ab26d9be8233044be47759126e9643ae50d77c37f2db74fed5c7274bae9487f0b27dd9bde96d1dee73ed2028d39d57478fec4d61222c12adb1e032e5eca3c1814b6731423b580a435cfb26755acaee711eb732214470be5404e0824d71c004a7717ca17d813c2f614dce9ec5863981d3cf0fa81126c8ad4fc2b4a01ab332bd81d690b21ee4b77b27e7b3fc16cb6fa7530b7f53e513ded753b1839699e705c403aba26d2b6da25b3022afac94b52097ef89f6b85eeebfe253245afd0d95b0ba2663f27a27f48e98a0ca11b08ffc6a3693f5f38dadb0635ddb54e1f089f2ade7297a97c1cabdb1b6961289a750474ae49aebcd764afdb0bae5c1437ab2c154af2b343c293d47a92f21706ee6ac228de5d92c9d71b90e641a4a8367459ec9b83b73f965b303d45094d29c61e8bffe3850c4d9e2c2e49237a19a45c78cc4d8647562a2ebdea4a1e1dda699ca3b956ef547135bf229a9486399c7f2ef38a155c808e3a6d87d1ac3f0b57d055d1778e436c44db91b56ed86ea7adce7153ce4ce7fe4a764a247bd32e1e84730f99755eb22ef5cb27ed7c194cdd2b034b8d09583fae61a59ae73ed1d464b1dd84cf2b22509bd4a922b885ea834da57510999ac52a8e122870a49750578a6c433de35d49bd32b0408799581b5e30c5ca4d13a6f1e6b10cb95744ed909f565896ffb5fa2561a4f2fb32957a6340912e2a63404d9eaabdc614645f191cee61d87ed2493dc4fb593a08b24f300c4068058834974525a121550a71adbb7884fa9b40caa6395192f848eec2bfe634d918877b277ae494b0f69eeffbca1715f626526d15953f5bebb71e724fae655f99b0d8212940fd2f895386cbf5462db07647b38bfb3e92a6abe90c4a1c2e818cc020af3211f441c39555915c1f7ee5be19aaa37f5e0e641cf2f6ef90062e50635c0bd75c4df7e99da1b4d0926c0a237a103518d528588557b8c73612479fed929654121f437b4d71ae546fc6dfb99fed10ea31d76da4ec32be4831ac84ad03853155848f4138b125c4ad501ef1734c63a13ff746dc7c88769cac1fe207da5605b1098e3802634c7c69f08c1d0399b889ce7c20ce63bfd9a911c94140bb388cd8a1b2c7e84259a9bff24092afbaf340008a3ff3b04181d506b95b28c88583162879d9d5d502ffe689215ec3b6b8c04ce2b1d11bdabb61e93557cba05d1524e32106d8a0394e86785d4e9b6592cc0fe57b87554230cff1a3d206d38d62d8966375a279eca032149fc359d903ed6960287cd70cd02613d196e92c48a20b63142a339db8591d06ac3c86e10eac1f96052a174ce44b54f3853574d4a03352df9d2c939999a4a90814eedd4fb47286a1b1c048e6acdb4418955ce0879cc4ec7652c9c4cf88596421bb1a503f05f4dd403d625fabe451e876f8ade9a18592212ab8fd04327295ba4249e00470261130de2c8c145196c98fa3a5af381e878d249867f08be53fabd900e6340893d0c4edb11922a75a37a7da81a79fa6d9078ca945220fb730bc18072b2ca653a75a5c0f2649bf190668da495aa8c3872ec0fc4691c5c2ca708334801d8411b62fc8433c9c2f0c13910fc30fe1b8f479f895cd6cd10ff0bc77bf0044000af883dcf9b3cb3892de05387ad13b63e1da78b1495c92e348930e31f9372e00d5f77ef188dccdb170ddb1e8d3a1d48e7a7daace99d79865a3974f20a46ff9310de3f417745424ae3f55772476e87cdac02fc6cb22c033f888393e97128a205f19c0f86aeb1a026ed36fd9f3eb7d4d5434aea8824266436f0fbc09bd584b7667861aeb381c70a47eaa82c30a28bf850ba66728c78c44281cfa5704fd28e6d71902ca929dfe5fa760f2df9407d1ed1588e252f69b90424d9b20bcc8f32ac80114ec909f574a4b0cd4881a99726fcabb2fbcd7c2f75b44cc4fe80740a4b85d8616ab63e5e6aadce5a01313a3677c40b9ea2165a2106668261ecbbe38e829309c49891699a91bdb5c65afbdd54768d131d76558143988361b398d377bc91141a704b2a9a9c48bcadbb78fe85501a33860510ee7f022fba1c531e4411142a5da1c1bc02ce5b817fa3664cafbe25c2d1fc922762325e8b5a53cbf95aedcb84e3294153156695c05d6025d1089d71c5fa0720df97909381c64f36e8b9d2c40c398856ed1b93496be81c3f515c748377f0684c787575a91eedc6114167db4cc4037ac38661dbefe51a4835a752396b57bd244a6245e89aec65f5d3864d716191c53f614c766b3848b89f741a32eb5a59ed421d07fa1bff1168ae3612cf269bbe6cf4d4038b69c3f9eea4cf3efe9b3eef1719891b4057d40463781734ad9f617bff28d6d2f7b135e8fd2618ef62021406bc0f46de9d493c5be382348aee0978434c345658f238e5a9859a806d889a82df38c6f1b6f5107f39378037f90ea3155c06573196d9b187e18cfad30412dceae899273ea55e5c23b6cd85c47d32361bb86af9a689152e8884bd32e17061abbc16e5355767ba1aa49a589229eeda2cec67676ec6957f484127f750f38061e92fe0aec74346c1caac6e7eb58096dce659d0e52022a259e0b9880466cbe246f1d7a325dc7631d2f47e66066384bf6a3f84f409d4b257721743683415f85b9c2bc6c8d277c68af5db4784bc18d550dfffddf7a0b7a26f1f3c65e0a3d9e69a0cc08873ee28cccdf6c140733a352713c1622a57273ac5b7dadccd68b2c167065d96113b2eea673602ddbac4cdb01f18c6b7ed4543fd41698d88a8372f0f7e1cbdcdea513d2ca967aeaf852af6ac1c82ffbf6c1c213115b8a14b256bbac1ebf57b0953476b46e8ae59218a1687352b3ac639db1cf4ed02ed064f504794ae90e5658104b5cfd2333ca62c99a587ad5bf011d691ceefb3a0500e536c3caab942f0eba1a84b5dfc9ef6173043b20895c5e6de5496ae5059a0ccd165cdad0d4878a365d4947355bad5262f1ba87771b54a967ccc51f1d14073042da5a9fa23ae04ed9561239c5a808b8c2bc8d24072173337c40f03f5e97e1612cec177d83fac657690e5424eca892f89f3ef510eaed2d5d2db51a896aa00b722a2c3ecefd70df7d416d4ea532a6635ca8c8f51a6283d8bdeae245b4b50ebb0d28a879e9433f4e0fc596df00777f69b33bcf1282134288114e836aa5169958007dbb5710781ea9efa89018ade3d45f822605e0396d99e51febc96ad208f4f62d3abb6e02427c41ed722f594b70467b761a8755e2c7440d91d99efa804cb06626717efcfa8e3e4a5925606c0bcd93dc2ec2e0f2b1447a2f60d1efb8625f698468a22897d0053a52cbe2713c27cab7acf827bec43761c820e6d4609bc32671462db588f2fba09e73ad85a0628124c8aad82f25f91f7a80689cb8d178f554b8770f0da327f90a633b1a484ea7b9007f83a7ac02b610f3552f59a5b0f08a00d4d962c6dfaa66b090ea960f3803eefbdfbbb5b3ad4dd3a1c10c3eb255d2385f2f6d728cbcd7dba72f92cf84166fdfd24f49e63e226c7f3eeee5b8ac8638ade64095156a15841c54ad7148015a2fc31e551873dcc4d282f35d35587e5f82cd23a9454f1ba17ef680c62b3431f9086193b5e4f912e2c6b2c299a3b580652905a879c33eef84d5aa59b166bb29a3d9c993749fcf861525845e116c8101c197942a2c53247c6ff6955c92268e0599ad7a7b5d479a3e2a8a3629e1ade4072065af830b096f645cf943d99c9e252dc473d9b89540b3224a487d31dedb087c1ebd0d18d62934f9562e57144932ff0fb05215664cc6a68eaf3a336a9ebd1749154bfc0028fd2bee35e325b78f975224640038df40672f8c4b23b91a3f98e3ef1550428758d43fe964a1e1177b3638acf2d49eea101f4ed3ac76b54e245b4d84ab4fa351a84a12f9405785582aaa584ff40aa4102ee008aa895c0151057b60aafa4975cffae22a7344e6e6cf9ce3fd51a240bc99c60e66bdf5f63c3cc093b49d3d916c4b906a620207be489f51f8745639848d9be980866c9c3ef37a501e50be1e70a20af4c1621148b6fc7eb7f58b3d2a2afe118823d54127aa368e6720bf591e15e25d2c5871f989a8122deb2fce120acfe82ce4a35606f7e2602560879381cce8d48bd31350e55fa3443593ca34d2c80c32bbacef2373dbce7130909a4864f731853b81d516a353fbb375d168754431486e374b4f4e50e5efbfe6d0b8930d72a72ba217110ed9efc6cc12198cd903b5979327e4ea11329218a563c0d5b244af3a9ea639652df41155a19e9c995bce7a7ca90d433d5f44e1fb6a18259aa8da24763ae738a92d155a030d77096aad72592dae3bcea4f7dbe5783252f6875c7045946d0935790a6728cba9b4ad28e0066d6532047b6d5ec86a927ada311b6422afe02d504de93fb352d52d6d723e54de15409e224dee445305b0f303c0daccf1a8bae599818a13cf4f8d7e2377f5e32f63ff85262318e61b6ab35fcdb1efb731efe47bbed26304949c22874b12049c5c8cad02ac79f5f7314ba6e3cc61d1c198212433f144163ea0c808c841276346ce3ef3beec20b81c24cd01248afe8e38015c4573a6af0927d1a09d507c2d370e7231bc237e0bdd211496641aa7f4fd16619cfa6966ee7746554ceaf3db6f879b4b33b74892244252df4364cdd0423f78199db7391969a43d7b0b17a6bd3f3ebcd09aa258e74b8817f607322c87a65a5db5785ad111d6f566dc11e694075a45558e982a270a35e69f03641d69b79bee834434b6f10a16d30fcdc34a5be0df01ab0bfc25f47768b1e66e000b95079b17385bce21218c8bcf1f10899b5276802d11c7e5dafff2510221943eace5d5aa43c38a08fbd73eb3192c24c03432fae90584cefd1519c5117a233c59b54f72d81e17bf770468c757893903ba80af7427b4f42ec5afbfe0de79721ae1e17f419a28b3d76b6b038319a75c8f893c73657b7ec01f123d7f00fade4e0ac67f8f0ee34063005a976975a77f3f78e30f58ff0d337e5a9524b5442a8c8f24c25d03530d99eb45f17fee37723814d160c260383dfb912fd7bbc67d69212714b031616c6423a7ee5e28d1f7cdda466f577c6c05ed9962a4ce1288df6e27d0fd0bf5d4e988ecf76fe9cad07c1b4c2d0538d73e9bb5319dd6de1ec1b8f1d423312debf20115223fa78c2dbf8877ca6ad152a8cfc463067509c1457c3ce307fbaff43612b71cef376b801791f131de31c52afe2f90b3d22f20502e304b0baa3ec599ebe4118125ff347261365dc17b5ddaa71f2c8b2f05e16bb020739152730dafb4cbae37c6ac5194d2083fab611c0b0673cc9818e807a585d72568c2d9467790eb3e221603475dde9ad55553d6c430043a6f273a4d47594f99aa2803cafa8ce2615c9bf311fc148982ff0549169425a177a79e7867cab531889958e9854ee0226538fc525d648d1e0c2deacb82ff11e91828d2335d73f7ec84077de5a9b4b40c61205a984ab9cea3cf206c2eda180dd29d699edc055bcb8a444c4de142e5f9d6fdbb97a3e621f055bf8bc0e4c9c7364596cc621ae2205ff17f8c03ab2797e7f760b788eef181c430bc983b87fd0f34f557126f589aa2e88d497b5eea806bfaeadfb6feddf8651a1ea018e43dd2925e264c228faed97a10adebd52a6516503e24a128e0d7db495b04b99c024f7027618c8e71687dda2c0f91f4a0652b23d934d6d0f682ee0d102b787e221cd031c15d76a83e11cf86f3279dfae7b087e672e9ba28816ea5d132894a5c6f10a49c110222d66448e1e3dc2ff8fa0da9bf408cf5141fe6b8acac68465b5f24fba7f8f66195dde0bf219e94e8a477c710a7837492607600108a447443adf800023dc11c46bcad3af32da17404d32d47d93f742c31ac2574b66e4253ef8471610ecac8111fe0ea45cd806f7f21c45761643eca23ae162e2c2e08b3dcccefdbeceb806e2b63e1611b9430333dde6b52932970747ec16867eebd69a6eadfda22dbe6b1df6a38ccc3f9126939e518bc8d7aae46f8ee678da39b61d5d8bac585fa404f0341880606c1360400d1c1e1db48987c8a7b98b1557caee10de424bd027a1f0294065d47e47c22281903d799377ee99fdba76ad9ecf01ac3adadff9afc7b93ad3222cf1b9da30776ff1c9654f5b1eff0be187a77112ee0a3a9c892e5eb64e72c5eeda9016fcbc476241c86e3281454f120bff6e94f2dac83b98d445861a9d509d412425c4d9b398d90750f3ddbfc17d681252cc64575dfc6147d99f5b8a2e7d9d6aaa5234c30238cb1f0d7c44e7a46b4bdea4e215b0da237b2208288bf6dbb27a9296b009f97461a90f848653de1e545811c18ea26ac668b2eae58d1b266253638ee8c2e036fe9888b10d052e1fabf2eeabb7e2b7a1e80f4ecb13594c37da3ab3941f85ba05f89f1812e23b0963db5847ed603a4ccdff1744e0f4bd1e2df515e498e7e0ee03caa4a6f9a3ec1f3b50eaae7de11ab1783ed695e2672285e41c5383456f028e30f4c7dc997230df1c5b0b4975affda79e8d04381db464afe8f99c9e2cafd667f73b6ef6d0081ef4ff39bb04e410bfa5c64e224c05070c4278e64f53acac15f84a0b440ddfcfb1709a806aaa70b52cf140aa0dd1440a38952ebc899a86ec73359d11bbce5c763228c6a78a690a2190d70c9ede43872571f75015a48d716a12d7616cba76d7acdd68db15ac0f89c0afdf500ddc5435e03ea71bb89afb49d04288034c2193f08b8341e94c98122438a57def7c0b204d672a4b029f2e44c88451aa5b157a28f465b269c8a32969c8c6797aab263701513ed5c3ac727616ee3af24376bf3353075ad091f4bd9c0faf27a83ea9d47b47a6c3c08c5d73dfbfec4244d5792d103ef698124c6a9e5c1b5dc45b4b0fbfbd22ec792463a435c6baff65c3679c4aead425f7bc15dd3907e35e5ae52f4d79d64f8dc868565386e597e59ae6412e1dd1c091611cebfad9dfc570bf4fe51d598c1dc874a1e6f6378eced17281dad7a2bb551dbbc9b935a4499f4a18fa19317800ab3f1cf0a036f74828114c6452ccf443bd7531746859aa265d11f80c2217fd8e49ee3b72afb5cdca54e68be065833551a7abc03e823bc769385448e03cf70e941c04cd4fb2f26c94567763b222ae69b481e793ef9e70852bcf1e896a73daa8b2b69cef7db25baa00c1ff1bc4c26800beed8db379b8068153303015da65f21a0d35bb8b27195e3acdbd4422744f3f6ec889285e5bfe3c79cf1a9b19c677c100caf34de550e8d5d4ad7bb5f6424d24fa77f4c8af7ae513e57359524abb9616a9d62b3ab3ab9f38fc6e3be0e5e38f73ac671b00cfc7c90feebc4021081cdaa1bdec32bf41dd660b042df5a28444876590cf32c1a854b5057b65facbd79884c9bc65d3112efd7d1c5e4c578fc634870524b85ac373b78bc2d05f7ea28b1f74338a93dcd8f0a143ea1e414cc7df85978944ec7df9bae09c24ca7bc6582ee604c662abd401815de364a93f9ffc5c372646fc2501697e79a96f856f800fc671938f66c069c3014ac9ae566fa414c900d5ed0e679f3791058fdce642f21070319c69b7b385f0cdaf13065ec1d0db32b7058f9312a37bd73e150391f38f197fe60f7fde149686e8e452610e5fe54d4192d92227e34d0e30de6c80bc68c9add140e6e08fc2b776126d4f406d57e9ca22d126e81d293319fec7c1cab09122d671956a685b97313021b60b9eb6b98b2c6e804bf1ddc595c5ea70a4b05b8c4d390a7a2d31a54197e52ee950f6ddd5b1fb7456e8d0d3818fadd7ce7ad4d5ba6e9600d43362461c92f9cc023fbeb79a4391eae2066c070fac2c8134d960dc221bd8c77265c8df82d9929ede4d6bb6a0fccaf522c50576ffd0f250bb5d8b7107bd745df7c85adbb6583ca93eab60dd6323c96f405dcf53151561c36bf182d8371a07fecbca56efc2e147ccd5b5be84589c40b733feabfc9fd0297219a36ad6ac8f2d373a3f890e7f1f7e346e2907503fe977a3202398143c8a3715ac62d69a5d346b8f80856588bb050985317c4e05a8cfcab6836df8af3373bd17637e0f6bc8865fca730256e2773f3fd60885bc2a466ac483544ee5e5ee5c7d643a8057e15a2850f006d1e84b223cc004bfc42613e04d5821867dcf80cf711ad98e003f40d260c6dd4794f54ef0d02cec28ef3c5942b1df2f00285fba4168851e21ad7d5140472081e20652f794deb36d88348f96fa328a4df5a8835044cec6c75059716cade27c044e3536dc2914f45ba071125a53e1b440c69e0f3911b2affd5c91e309c8384b0bb4953b8ba0b981b1b96f9d0cc562e213e00694aaa5af9fb87ad5303861a35ae55dd28f71b42d41d2475487b67e22e413256c0e3ad254736c10723b088199a57b06ccbea5c1632b7647d767ff61863235b46733d59d89e538756ea77af1bdaaedb3c6169c429af6d3b2751b2618a3b7fd968bbcd38f4e588a88c2d88e462e3ab5c371fc992d5e1aa387881730dbf68c67b6e82fce0af4f7f6f53e68e17937c07f7a09ea91fd8085c157a206468004f02256854d6a5bf15b0b468431a790323c491c1440c4eed6dcfbe18ce08da9e8bb12148b89ddfceb4c7f480c278698ad46804d5c0ce0068a23cc8b1661b87c7de77d0323d32847acc48cf48c5d4dd527eac64eb2f8cc586fac8a6950979401a8c2b6b1b796dfc2ce7231f7e68e5e497b26faa361337828ea51ed0011a1283c458018b0f55dfb2009d297f82807c9a39a8a798a2cd49e4c7181012cfd4b84b6ae1d1224321aeac544b15ba82a58515521c0fbbd89d3c91c884dde27339d1f3530cea465680021e37396a4293e5638ec706931789ff23f6fac01fabbc5322ec0be56d2b2064836bff13db390edaf6286b0152a46f534152babe047492fe4642c5b82dc116b6f7aae7265ecffd672eb58e6a57e210953017168f9fc38a268ff516a1f39a2d629772969168b3b4bab1fb5e91d59162cf1c87ba54b1f530b1309a782f9276000fa8a1dc8c2e2793633f55a7d9763e11b244d7b492dc65a59a95a8b736273557939f85ee7eca3f67228ae6cba0f283e8f51d554165b7b8d0591b47524e42b148f5436c62daca5b0ad7d4e694aee5760bde12914f03ae8641042c29b8a73ea7238955f9e68b243d28d602d832c213dec4e3a60a188df304f44e045e745ccc9b314e5a82f1f9df96e12cb237b91e7c8a911b06d0d2d5770569634d67dc122973319371f782511119ba86397c7dfb257ef1203810e63eedf3171cfd4b3c74b349094b4361394c3dc90b384aff90203599e2cc465cf8bbc81a96f92f66b9b77f654c8b9bfeecd3d0904482f5cc40ae199ed75adc4f06858e5bac7b94e65f1a2b655823fa3376cbe0c13bfa99e38345fadb72d85613e1c0bbe5e6124e932dc457070a69348c0249d163f08e4a7946d2527cc75a57b5ccd374411334b55b6bbfe44f3ea4cf6e803f10280eb9d1bbecbacda725fd6771797b334e3430df2701c0861f0a1d3ec09f7f736fa1bdebdddac888037c6ae9bdc3f1fcef71d35254f172fdfa5f5a0c94f39a902d901c2d412d310c6fd25f272969a88b5d9c7cca4896e4c6e80f6c6807ebd00ed3326e11b63b42aa755ceb6a57ca8b1090bf019b98f29b866c2f70cd8bbae0dfef74727e76c78e986af99163d0153c05d0e01cdbc9c5007dca11f6ed04297feb471bac2126801bc2f58d029aa04b2ea3a5b418a18eb9c57d9202f8e0bc0f08e08418e8935834db45e88e2c25e517ab688fd409af2061f8f78e4e871e5121bb1cc6a551da96fd07cfbe12de4aae8c67d0653f40475beb93f2f74beabf4c2d73ca71602a604d46a5c3e4271a00b89698db94b9853b150f77eebd0ea7cc66602415c695fdbdc48615207352a5d2f39748a811941869111b2df79542f9be165b48f7152a331a09458413e16d573d9f156f98941e0e8eacadaf4e230de94f89b73cdac3987a5396353934ed300d9cae30ebbab4313da36193bfc0f16dd68507d8c0ed762ec289a543d2ddfd1b0975ec5649f87ecf3a9af37d7040562a2e289a8268711b3cefabbe9eb1361a535d24b7b550d731cf31a2d156f146a8428791c47942116d9c04a850da420233fdeaeb86c53c9947d0b4b97360b0017254c7ab2a4618c9e8b5ab7d55941156d1f4e9269f9632abe991e4b2defb7236c15dc1cf4e8199a85b364b093f694482905566599841b7ef736240f4d7d7192662014cac85b9ca6c808964eefc17f0336c7962cdf0782dd0b56bc56899b87fee98046fcef9f23aee0cdf8d3f78903a45e3bddd1631df2b0db5a453d47afc506a8e300553107d465184fb55a4fbed2772b3248df4f7b62aa40fc463d9ca5e42fb5b44d912232946521203b126c5243e392df9c1291a865090c8c239f3c2c784c09734eba37c95754f5f286d04e09062a36752e1a1aecb6786f42aa38d87290d78bb47fcdbbd80f28f5373ce615dad872c17eb317c0947e1ac587c5ef2f937c1b5772a23481b66906af85797595e477700cee3215019acac4c79d70cfcf1c92b75e36ffdd970fb038deb3e4486460eb3eb90617b485d635714d157cb66ae474ca6671da776b7b74a3f126ec6a3baf813cafb13fb5b44b0a59fae194e4f992378443c3a421c777eb868a67753d76dbdb7756e6c4ec7165a8b4b23e3c872864dde83386e937e1db66949eeafec01a687f7ccc327358c33fbd36b4d30e869b3155149604c284a86ac7a72adac2c38edd3661bcb527210866a59bc89dbdcd925e4533a7930bd8278f6ba01112fae37c4db2e0f4b977de0602842f9301c841497acdc012324d5d11c71c91609b23cace538a491093ab16511b0e6681a3f248b9a7fd63c2b3d7cfce8313a351fb9f458b6a6ea929d50c12bea44d7e0856062e21cfe1601f43083aebdb7000d624e3896d99f6eb53cd85d91498521ef229bc3d843de3f9abd3991b7b8136b846bb1f6d425c16d60816b515af38a64d80c804b7fcbb148263e26628e1fd168b0d35f110753f1f93c5323b0a57363f53735390dcc87f08941aa1459a99780bbe7df192daa96f5a7bb2f58eace3d74ea24dd351a019b335d3ddb521f69587a37bb91fe5a1705b0873f8542c288202dd1f8e2456620042316ca4c28f0733a149f17adf486ba10cbfd23d8b0dfd126621b0370b556085243efb5b171d1eeb02fc72fce3e8b873a622dbd5cea9af69074561e40c9757dce593c3b475cc7ff760db3e1083d82342cadc93d9c1ab34662706eff04b97a0c1c26915a986f2ded204ce4a519be83ae1983c4fad041096d255c6601662b11884cdd210b796fdb3bb32844d2c0f24c7a750eb7aa81004263aba65a8e9c517b79eb5dcb8d9f0914e155cb7aeeb886ca1e7b7a167344f7e4f3c8646c53d4ce4c53d3cb297d8e498047e9069cf8b98e91b4d6e39ade75c5b74dc31f23f9a8f1aae00df39beef25f4978a08c4e851f1aca42f7d0837418f9c77c48fae2cc552c217d8a51edbd2e6cf0cad8b75f11796c32ec59e0168ceb8387b1b90a65596d083371675a2ad2cd4c44c0072bb1cc4f455abc28f867182e81a9198d8ebce50226edc3d4e363abb506b0c7567883bc06d4cda0b08c95d570584df0de4939cfe995721683101ab46a574e8b0c87f7f1448de59d9399d5ba422d688226783392add39fc75de8a41af338fc6039acd0d697879e69b7cea63b1e531204a879e692541e3c52aa336962132077d9c3e93ed39c67cb3d977ac5e7e696b0ef60e55da8a414a8e5ada9816526429c36bb0240164d0b8981055ca207b6f93d08ba917e7a880d5b16c20a52c47b4942c0944a6aa8b42847ab3d0da715398de79bd7acf64ed3fd197e284202ff562afb59f8af7127b13fe3ab01eb0d5dd623c4747b4592f75fd9e8d588e7bd897066ddd61874f5cc34c4b81f304709d875be3f9d28ccc73489f27514a8dcdff8ab4f58196d2fd35b1cfccce43a94aca50e59b85bc7b5af99bccd4a62f347ecae596449219f292bff6c5966f64d3307a3f4589297b9c7a55d704f1a3a1bc70f135b070329d45ae5f1b0971b9fbf8f8b399213bfc3a222219dc908dd9d50c6fb305f65ae7790604a86ca80ef9c88be6cf0f78758eb39bf088a48d51b91ae06eb5ced5fe3dd3a8ac8efe02e60c2994a153dd85e44a2a774ec1a9766ba3201a48934f7034222a720e3fcf0479e76e8780e7a96f4e4cfdc5513d42818c01fbe58eeb11003b6aa90404f56a8c7426db04b235a51e71bdd595f214a9651e6d978a98830982499caccd4138e9d28fc0288dbbc88ebe250b524b510ac26f5269c472c0b14cb69d75df7a4b8e1baff9b934f38db8ad5ec24c05636cb37e734af7764e0d234560f047f73844e86c15217c932f7edb130d48df0968956cbc2e1017e02116d0a5620e7f043ece2ad885658c62a93f27de282d70684a11c30e7e192c42e42245e2423654d1f26931cce6b5336c38031a4edd311973640982a0de2564a881a1aae0531b213d48b3d270a0c04b3ae6b67299b4a62e283fcbe2a419685eb5567f64e9827f22f6ebfcf957a28e76e3c0860df25dfbdfdad2cee4d087c66bc449c6e0bc22d07452badc7876b2c6027be61765d258dec2e92964bf39747771befdcbde2c32f249f08f5f3f95442fe3d6d679b01b9e8615736036080b491f694151b63799f5cb53b2064159691c6a5e79d0a25b62fa1716a9830e9500f6ee351569eb2dc27016cd06ac7724e57a155843c2258da533a345af481c02e3fa2a79b8064a7603449f6316b008e33806df2d6be6da70d81a474f3a6c25e686fe754cb1dacc60d22039665026934985ba88fdd1b9040a423c2ff037513b4d5f52b43f2461863d9793bb7592405353b6c45383f10eaba07001dd4b64714efe233288792e6a82827a460db32f8b6271736af85b7e576a996c5dc9ce4e24f0de568918f2de65b7bee156b4d8f7f73968b4a9cffc50b9d7bbad0fbd831a10032e2c50ee4f0dfa22c7817710ecde01df8aa24e23fdb63e6758698498c2239f8540c46d29c7c16901f29d667829c7895806ab6956f32feaaa91c305ddaa74579790c53c339599bc1311b1f422873dc4012c3ba1e5851e52cec8a10d40fa69b5336659298439f1bf007ca353e5750aa1d4d0b11f19e5681b477e45cc0aeb040ad7ec00afcd2b8af7e60528c315124068e0e3faa54ef9b9270c0d0b45242bf606d15b372abfbdf4fe76fcd926d531a6ea9117026e684ffd978aa5a044ab810e3e57790a685808462988aeb1869a5a1eff6363d0294525def63d31574598b48e228f7b654603d5ae9ed5d4fa571d8848202b41378fac02cacc925fdd8caa61200f7b3310ccb86d8f6f85c58b31fc4dcdc23421239a60fa6fca18c9a0b96df0eb6755443d173fff8abda6a9a2d5705b75ee7447561d426ffedcaa796d586a71ed40647992511d39bf8c0342afd3aac84bd535392019a18c8ff6ed149a77af2cfef97958b0b74091aa77360612b4e1370e63702ec251805b303f7259ee0b1bd249dfe8ea8b4a972d8d18a4bc56b019968f9b364a6e3730f18e7cae244876f7af236441289c36e591a8023f3d4d20087c4e5e439f63028ede66632e8ebcc1cba49ec3c200cada88a68a9e99d375e1ac2f97c297de53659a7c1694201d4646cba65b2bdcd594cdacbef1ed30d7bc438d1db52b278e547ebcc245a8095f4f3e0441dc8a22f33dacc45d5eae0e2a09f64f983f42344548c72a0d0553e69d166120a0aeb2626ed8dfc9dbc9856259c5851fcd1c9d58b2f621fc6ab7ec7340efbb1fab7531df2d74275b94cfb91703b813178dfab34e26354e23757b3961e344327f21c2c4967ccdb18b46057461b6cb65550b701b13180711dbe8e2b7e89c6fb2e3f433acf50e284ade3a5ec9579a71f62d19d0886211fd2c6595a87b4f4b5bafca919eda763ba61da862e5453d0a31028041e7088910606aa30bfba1f5f796214cf7b9e7e5c2405ee3ccfb146fd98fb4a17dc1cc66ba7d654c1ba3034db504d83e06e0a65cedea3b6d1e50fcbc23caa697c26eb82b72b7f202a53b94490725b93a71696d6e498f7da83b38b3cc65e9004a17207be4def064b54c890d2368b006a6958a7ae871e9c2fff5fff1277d4a21a734c34bf7ec94a6dfd0df6ffe7d766f52480144423a83d799e50fa1aae21854c8d51f22893ec579629ddb032550c5a22fac44521331d870a493c9027363e8f61739383572b9c9a147775e77d36706e172a6141767eec8c2113de5f22e837753baf01cd34a9ce6b766b7f4b8ac0fe47e0bf6a6e2a2a97cbd03af2a8c5301bc847e0a133011ca78062d171caf8dbae8f6cfc2d315186ab788605834db49ca96d1ccb9f66ff7ece543e7f54df31be584a64b32be9dacf43e183469c3ce7efcc3f4673409dd24626032e449b37b2542bc4f7bbeabcd1c8213b38236850e52a6d771f7ebbd01eea6bd11673a6d8f67333b014693e39c830ca3c09b66047552f8b4239e7bab78ed388195e3d908e482bc69e602a65a73913208f7d8a51c81db7b2e828e5c058f606bae0d31b9f3363cd0403b4c94f0a40a55a0f3e817d7289836aa70b0162a834a6587e8418defd550ee3eaa7abbf7beb36c530f599772fbfd44b876ca3d88bedf11469887fc7e0d5a99dbcc35e7ca54524ec21d292450e8f341ce30d53be5494902a41e3484c6245ac1eadb99e7e33a2dd63625cf3e0f1360176ff160e56ca7767dec5a4396628a2b64ebfe3fbe4dd4a38872f3b0bdda610de3ccd54911403b66f37ce635e30dd920fab4d0721dc1a6b3debe798245033c4ea58fd0fb2e451cdfce90fa89881a2e8e400ec0dc593bbba091c8ff5bb4fa41d32702148af9f454b7d19b767e254fcf912135a09fdcaab4c372e81f489d57ddef4f32a07297fdb2b1b7d466669fbee73327f40e7eac2544b954c64debcc5502351ef4c4d1bddeb37de90289ccc96f3476b334b2219b1710b8d91745cb5a5ec5c4bfebb1f98cf50227d42429138b538e24ebf08681be3995ca5b95ad7628fadb4717ffe2fe53f5cfa03cce1c455afbdf9f1aee19b579a16f4282593feab580039b92a9a43a30fb4f878aeb05db2022137cc5f0d6c0eca7fedc9640a104033b0ac72030d0855681fd7e7ca4a4f85d66a22322acad302e8b9aca4ed9718603cfcca40863339c25d93f418814503d7e94ad15129a14690674d664aa0060d1942c30506d9542e553c4a2b7497a46db06f41cabb70ec283b38b7c5b904af0a2eafd28f02990e2d91830dd1f547323ea6bab2f5bf7f38017d313528aa07f36fc3ad2a6d8cad68288e8d3cb72d92a2d05fe80663e305e4e7ea0fbebf743726df41425004c5e79d41b115baa7afe8d1ffb76553b689bb69d15276f0506dc9ada37fd3dd0c3728b428f0fbc52959ec8779ad641ec2b8306c268ffefef19cd8937fac908c0b7b92eb33da95e8b16ede3f086c90003de96d379b19e25872e8384e2d506963eacdcdb33557b1777e99d709ba5b2be3cc3138c348f9a859cda5176a32b03aa0ec380bc5535794a5aced653d083828b72ec9b9b75b414ef24cadd02db325933d2b321f8d5ddf4fe6298ca014adeea31cada7d3aa3f7c5fab9a3c20adf45ca07c380ec3a1391f438de9d8631035400ad30af8c43f43a69dd1c0af0702bee5d02ffe93105050d7a1b7d9e6f65cdb454515dbbc65d01fc8b6d7a861f5edf328f65673d43c2d13a03d44194864f9df0cbb502952df5457c84d011a9fb54081f5dff4a3d446fa050a28308593c49b0911a3c357344f8fe969d74087d49e6b72e4acb87b43e85b51ace7daf77e7128e1ebabc056dc0137a72f9e1965090ab64f7752d6db0022cf3ebb13c888f50cb18518978a6a9049e8865d87aaa5c308f456aa14eabed2563240f863a364eac956a00d882046594507b520ea6af1c2ccd475bd41888e32cdcb3a58f595a09870a8a6699250a891b7f88a90eaee636e2e0f523a2f283d243d154b08772029d251c4c02046f143cf8c698b4b4bc641a23ddc0faffc7a2a2e869300f80fc36d9b609379e6447ae15c3c143d0399c9205fdba2ba814e72018117e306bdcf60d442e4458af6e125e429255def9d150d6f866dc703714b878a9b5f1614d1caf7796c4595e2ba7afd7c298b160603248f0f04d728e8b462c9f5b77a5732b0618ca0db999d4c792790948ef378c17f50d49e2ff5a261ac99010b7bb159080bac1ada1990207c32bcaef9d055aa93c5dbc6f0adaaeba68e6aac25a9e3086c030f1806259f907c5f78abf7c4d828c76d6c2960fed40357fcbfb564230eca72b8a41ad85a87a3120f4c81fd51e32f907de0cedf6a5c551862e7d3173bb5105b950b76245bf9001fbaa758e88b1f767c71188311bf19beddc09b343ab2df302b9a2a93d6c29ed9a324242e14ffde55a094b984b623838a5c03f2f6172eb98423c9e82ab3c5b8b7a42fb916a296d2d761533509420a58fc9e3ee8782748b9bf4d6172ec5f33d5451f803b2597d0cc06247f452b119b81ece7ae65f5001d52176579ce26b6f1c554d4b25ef939803077f8a72c6dd87aab2d17806cf61969ca8370a92982099377a5b225688c9d6d192e0c179d581649120fb1e01ec00b6a8cfe3c253f478c6d03362c45428b5804385769b02ed7119563c7dcacd46811cef2c9107c4eae636f903440b42cc71fd78592c2a3648279041e529cd3333b3490cd95069f73182ee8812a5a63752f9ce02e07a1f2772dc7cc5396258a6454c926b0a6222a51a4e1b7600ced44b2969ac6cb3018e460c3c4dda3070d9d95dfa08f3ce6369a0d0cfbd471eb5a1081ca424162504d88f58b1656419b0c0be92aa3279f1a1df32738fb8915485f5e31926520e21643f762c8776be0dd8780df64836b241248d8a75627c66ccdcc5ba669619c7d5a3c4b1aa18c77cf0fb251ee1fe1b7539b3a13eb663f5c1c092f109fc661c25dbc788dfeda92a97dba4fbd65b195ede0c809e3d9d23d98fbad2890c7dcf2a2685598fc1e0b8dfd6b326f4afb40ed1ee7b71f5177fa6789b0d6f5478e10598e10388860ca641972f10b370ed806cbaaf9b466528673eaa3838048da6d7b8af7e36d8d14dfbb82b8e1486ba1ca258dad1e344271084f564d9b3865c567477202295e67490fdc1ce5f7d8a6f6af380b67873b54e51cb9462957e3c257375441392872e5aff4762b6882f33155f7ab068be49c6c8cea7bd4f0bcef85a2156709792cea8e0fec6c7c69f2f5cad95c29fbb29c765ce0cba2c65ac4ac43f823affc99cadbac500d12e2850c0807969a947569f0cf1ecbad934eb2683dc9e726f02f9312cd5abc7eaa96e9fe598900fa3c46dbe0eb541f79198ebb3ac1807ca34ec65e5b97c033662558e5f814428e90622dd5a7465dbb8b5659be3622e12cd706c0a67c49e631812983b56e7b9627cc4f4f95cc6126dc352807de606263bcd898e4d60b6d806a376fdd3210ae3d18ba3a25317fa31dc40c303467da9819394c69b786abc09aa6f69990f31ec7134bea14054e09f3282e7bbf5c91db9a32a65f13e64a9b0388af05fd4e1c9a78e62cc723c71f220a40379b1eba6978cd47df17e43429665c5e625743d0a93c120143757b14caa1a53cdd59ce0b5521cb7cd904243854ae49e23af3859657ece45aa664b61e843e4b725281b4c09e5f75a7642a8e5daa72f928036bc3ae6637150e4946cc6462f8fd4f3602081397decdde1917aced6f8f73999b3fb3e52e729446c98db933e101633dd6e66da4f11e4c63e978aa3a61842800e1c153e66fada600324b3b32e5e356406ff76003491684763e1f94e14be0dec759febfde960b8be77c647b0d8db379282cdd392f785a1c77912fdee9080d656809060dfdd7919c2786ecf10da69a0d1bf031dd61d482a50fac8beda6e359da410389b16efa11101efc8769ad2b638209046745dc6e4f23f46062684de3b4d1d535d17d918fd8c7bb83b71626e3f6f264283e0986c4bb94cf8407fba4224296cd578cdb0f0e289ea813dff3f731bc590702d3a9a53dcd94c502ccf050b668989d9c652beaa39058976d1500b4a2143954e4ce9fd5083837e2d7689096dab199ec82e37bb39b5cf1377884ef5d086c485fe2eed0c68c8f8f2ed7c130cd257c0c30e600e5cd87c168316298c16da768785f1d39b28972dce2202f6232f594cf3a93674b741d2fa919266e6363a27770fc1fdc36b35744b60d61c3585777bac7e094e0b7cd2c8b73fea098aaf2756f055e07c08ca9a944266d92e67573c9ede7921db7bc73222d413e0904b73d5012537e27f29cb3cc59a2d0869bc388e596e55000c906ee39abf04b373683071b30cca70a8ce5147813ffe2f97d6d739dc4bd1a8d1b7ef3cfeffddfa574b1d006714995642fdae550b86e4f0ab297799c513eeacc8ae2668ae1a5c3f5492e49b088d1232e9c4def65035445ddd11ccb2be91cc388a54ca3b1424481d1e0a46f6c74b96f5174df8b034af3258ec2d4391c622336926df7ffeba750f0391505a93158f9371f1216fa8ff6155fc4562cd7eaa5102d49a2f668e46422d0fc3b757616aa0fa36a8368bdb2bfccd2f7cf75bdb568190c248db77e2bd5ccbfb5a05d6ee393c29e4ce5e21b096941821d690e75f3afd26e0aa57a00ff87438801da8ac72774eb1a5f186eb5982677ca517a7299787ef74b2f9eb880b2fdc5cb40acb742926cab3420200ec86b2215ae9eff66233ebccad00a30c8c71f2fb75c8da7d00eb13c06af40b99222366a46b0c613cc3ac30dc40d86a8390d2390eece14ff27c2b0140c6831b02e5a9eeae1c1f276c6f3e76063d15b4952ac938e359fd0ec5cc4f11d83442625906fe9a682bd83378327ae5b60e9fbfbd668a653dfb56289a0f3c408647a50c8d26f2150bd6b630683da1b9358f1dbcd3864d56fc661cc92b91c675da32a6fc0c60fc1602b4703b748ff1a2d8ff135840e2d74994f6536ef9116a2dacd1343e194448216a90450459955c878f3b5d14458a3984e8e750c7315e0de4e0a2215f183e556d5a8374ecdc07e31b5adcdba75b07a9565a0c718ebbf04096f8f5a69f4003cc51eafaaa6d824a782d5a7c51898bf1a2c6e46985be30e0049a2d9932acf6292c8b9655429e9ff4958942d5d89e40ba065b7e3540020f3e0d1360a212b2c63387a8b78fe11404f50e1d9d990ab7745f1b6d5541356401f7eba9e67d50d20fe798c4239c20939d256e530130d23e1a68a320e3c2d02ad76dc1ded55a132161c0761f40897a774235e3350efb34597cec9cc87f93e7e563ea72e0b90de25e6aeae203c059f8ccc7fa181e68797029804056acdb1afca72d6dc5bb95dd4515957478f56cfd023e88392bafb84720a5df71f585d0288ad46e31552eb62621b71f2b1c2e038a3d630ace1c75a728b82934d74a78543680435dcd65ea8e48f5cfd240f9b3dd5d9524163cb53e0668a4c702d0659c09c86016c64f8b898aff952b64a427a9397bd2de8c63d4393fef4398398beb85a3bb6f9550501d5487db41dacf7fd269a0676f409fd1d33481497b0d589f751666dcce3a77cdc2b5eb5e400dad2fe74f0a79364c4afb7f026f0113aaff7b7c2a3dab054cabc2e44f980226b3084ec9753b320210cbbfb29583268eb807c94807de2bd9d8b734af6a620a7690c7107fbc68c017db59f3556b47adfd18f63903e39e33fff7a5b9dd813bf7f2bf5b779e858748256bd9a7b7752b8e17513361b14d05c9c4df9ce5d13b8eef06a0c899b84fdb67521bdf4c2ad01f289920187cd9ea31d4e3ea09348975fdb8507a614ffa26067767bceba49324d067096896bb4cf968c4c85b0dffde3e2142953e6393d050adf3e91fa9c15ba512caddcec9127da2b0864420df6122085db7945a59c8c45bb0b0e81a0cee58f0e14accfd32c3ae82cd62796dfc4ec002c43d05113c0050766ca7a3793aed475ab759d9405fe55c92bb19989be5e66ae9a24f75282644500691923e419117c3fb4e6dd7ee208c0d0b2019fdd886b1f756f4a7632dc751a4121d074cf0171d924a12eb8693922d010c0385636f2e404966eedee11884ca58d1f196e7b44f015d34e7285280865ee6c3217019da83e28481b570e6ea960f3a034fd531cbebdc3a6d246aa6ea4fd247809447c2c47d975c60eda6a57c229907d1d3114b23aa2280e2c2f6da3af125fd1e6d3ee0910e09f9e6c78f50f572178e10cce5718b915e59eeb78d004473f4d3f84b792a835e9100de7b426313bd1f0d12743da0c692182050ad13759603629f96ca24a62a9a8e3eeddd82630964b5b781eec25b7c0de46b42993e8400ec8b954f5e9790884046fd2d51b7143ada13d178350e094aef953e0cfc6c87f3a0d2a589dcb73aa877f1d2262a72428c66ff6226ba10e00b7374e14cdc5314f8b23013f19daf5e53ab989fee1cf910218ad73f3efa2eade7fb8b2df33ff5b76f530c247313d291c55ce9279d5d2eb1d160b5164bfc4d7c6ad63c69c0cef7ee57b9c249bedeac24bd51348a96307053c43d1c3b7d37e489c167d30807249e4c664c2c90fc011d48fb41991537c1d9d5f4e5619bcc9a893bcace329b43b94db65dc0b60b1ce9725e33ddbba74e38c5b60318c5462b30980f39c715bf8bf34dfec91b723c8a4db8e6fde06175d8edc78696b8223d4e3e294850d1baecfb13decac4280a10de27d9dfd9ee34ee497cf1d39dbab522c1ca8f54cea90591680750d62b0aa38209a3e759d0f9c0cb1b36bec43ad9819187483b05fabfdfe51fe07fbeabe162eef0337619d7a0e766d27704c4a7367b92175687641c788f9b46e6e3c82ab828f04e0d07efa81019034f039e937564d71632e03f772ba0c88741c721bd935838ae5674ac36f8f56a8ffbb2b1d5e4e4b4dfeb5a24abf477f1ccfa8874bfbf7a0b5c43e3436a0a850fc9af56a4351a2b350c4ab06f1574acdea110c30dc060d2ee9fd7664cef3e4f379a58161f85b8ebd245627568deaed25a9b53f8665013cb523ea64abf4cd7ee37cec405ac8113cebe82c2c26002b94a8aaaa948c58e7ce9c082c4b25a6da85780c07705e70067c6b6c7fad659b7e9cffce91e31782037b4bb5788e2ecb18572fc6dc954bb12171f6605d68da881ebe335862417bab549a7cfa689d46088aee4e22aa027b571d890c3328ad2dfd2495bebb7a2931fc1cd658c3b2461aff74e8b4aff9b3a9fd52bf1bab45f84e8bd4033160c601f6c799504470bc27fe9b0e3724e050fd7f6c14460838210f03005f37c618ac62a124f233213769367422d2bd87c99ff57d7a5527e82956427bbde25fd7efaf9a1d88ed63706ba7d966cbef50d9862624f3b13ffe1d2cd578cfc902fbab7a7bd2188e005ff9e2e227fcd05e82c92613da5a3f02265a666178da73b3db84fc6017c39dd68c98cd0c83d8ad22a3336cedf23cf56bbc9833a22eec3dcd85b22d3a2c4652f774b1d0d29a886ec7fdcb32f26cad08103614b726d9b90eb7c39c4294682ad017e80c37046309240b1c576ffa65ad8e1f23525459fe658fc8fd8aefcef40041fbb00c465fd02b12998e5c247f9ef14a63961619df4bdaee19b97e297313bfbe8dff5b4eb543e871286658ab18ab9d434bafc18b589606c030141dc083b257f806e65891c4618e54c28972ee8497c6af35f1439fff06944e7abf48882e7e4a09792921a3562648d76bf50aabb8d7a2845b4d423f85a67f79a5820053f327eed96da43dc4b0dc30ecffa953cded7d2461648ab298ae92fbd0041eb8e01bbfb86b715d88ee35f577ce469182423049853630ad4f4d2bab32c364bbc639500f0e89f48f2e2b51212e55953820f21269e2262990456c30b3e9c48e12f11e1faf5592dc7b0cb61300b7030ea2b2b5bb06ec314ac919d0b41a3b08722dccadf0921a7ca0b9565654b5712a5258a873ebd3cff1653505ad3d52ac7feba4f9283d20d596d3f36d31f0ab8711869fec123a28f2db185a3a4fa977510c4f3d2a1dbeef6db6f85aec8b8c75a62064e516edec8f0a8a0ddc9221aa531a0201dfc05902197d4f3c8be96249e853f126bfb9075dfacdd54ea089428e71ceb16a01916e34b14843cdd91dde98a594c023b6369ee5ae98e4594c7b35c79e44fd6477054dda5c430daa8f15e5abb922d89e3446dd533d33c2347de3864e44c6b8f522964c24eb1f92ee9d81a544c31d766d34d5c03e3fd1d255a1279c1ec548b80bc92c3162ec1b7ffd7dabc19363703d55509d385fd5b9ca2269b376c1923e097b82e985b7f839aaa6c06bd802703b4a2b7fc2c3daef42293559199d3d2dff3fc8253d49155a183646daf44ff359cdb39f0b01d0a6533e455b7cc63a2f05107cbda791eba9a4086743398be611adb8a48e8a013c171e23224077512c3fcb07ffc03296e1e2e12a7c33485c639761f4078c8cb13d4ec116f50cceaafdc41e9145777565c22ef2946a8185bb006d598487b35094c2db74cd8e13a4985a0713aef61accae5c80b6aada9e3814e3c9c34ac0d520ffa569491ddb4830f22adde200606b136f49ab25d248e00c2f375ff4863206f4c1b27c6b216f439aeea1c55d2740020d7faa1774cf782e921c266043fca1d81924c6efce049901cb657d7b35e3041d17455cc1f46bc1b7d8ec45267de4d683b253a81b1d5fda6e3cfeb2e7c68b11caabfac18671609d82d220762f2717a2c0cdef32c5992c795a7bddbe797f499cfeebcdf77da1dda537266d6280879797453d0c7ae41342f550cbc754b726dcd4ecc45dbe172b91f860cccece35afc820150f49a663acacc95254c0d45e9f0994f702a7cb00c5a215cee7190aca1c609e0b0930122983a74e006b533f5061ee48ccc84e9b0eb7c5827620e1d33a4c558fee9a05d73839911845626376d4c54e8f68ffd322ecf2daa13fdb43a0a549514418bad0495840d1f43c92061938756d0f239d6672a64795d14ce55f9f62a9bc7dd0e9adf9a9e4c45f4eb378a888b9c1320eed881df2633642460300a456d322cbaae49ce92b277c334357482e05d01054af6bf9e03d9237337404d3d821ccd2b87b24af04b7749ab82038e9eb39f597ad31d6503ecf58e3176296f7b2dae329ede17384b39d0a7dc44a50ec33bd2175590032999f8a2d1a087202a1e9abc04e4b5516edad4b77889e4564e5c5960b936c2d307df9f1b3b5d09eb945246f744eff67e32bcd28cfa6583025b88b93211257f774dd6a052814ef7e6d5368ebed4f4f5ab8a8393e433be931c3b73fbd39c1b749f2d89b9d1f7409fe04770c1063de80a9d0a72e11ff67b3693e72df2ad5fc2fed2a22dd149c0575ea91af07af4c74eb9c20ab9555af3ddc695c496aeac91ac59130a59dc03abf8eeaadb5c31cea56e3d41e96dd5ad4b6ac416a9a17986a64ab557eaaeaf38023907584e62fbd58087e1e2bd14b3a8dbace0a2d9343fcfb3e1c892bc1f3c432f1ea667f2848950a9c8638bf144722dd483c252ca9f4522f0676f3a8651c21a3b9bd0f646a6c06e811c77db50b67ab133e0e2eacbd9aecebd2c0d72f3e732df7ca11a7c399064ca64f92cd0dccd953eabd1b6a714c1935774c2169efa7c5a2a0291bcd5a160b1985dd09d791a10de06e70773a4b3adcc492342f5af9ef775a4ccbe3fd16863199cc054ec6d1f607889945b636cc34d17390ca4ed5abe12000adcb3aefe357f7dc8fa48df0f732f97b2a4db904c222193cdc5e9ef04cb3c9fb032e8c7b75afc93edf5ad6a1ce5469a6a4f0926e725c0d2869c9a78ff49899163b39572f9fe4cd0f4fa9e2c6176dc6489d225f63fe8e8a519dce09b361815406a143d338ab4a7d5e6525356ae80b24c8aa400d2fcb8a0963419cf94862c736c9d4fe64864beb4d884e7dd5f05d05e3e611d46142e082ee85cf1db7fbd86f62ff9a6b8d57054bb55d7ff13fcee34a6cbc03de08001a96d664c030bf6b30fed701250996ae36fb8ce178535a821ed6ce7b05190d706ce73f905781d76ce69ca615c54c91a8abd03f23b3260d216ece93a3c474a614804c565713bd9bea5177e86742ddc7c9e30efbdeb37bb218a062f0533b28de5f95934e23ff5402a2706deea69934fefc10dc61eb0e1f4377b3ca598215e21429f7285febcc9d589f5f50484ca09a343698a89a9cecf9d48686873c15ef3a7e04aa3bf431a6850f5fd83c102c52845b2f31f18ddc86de0076784e1ce54685fc6bcc17da0153eecd9eb72a4beea4b28263a062fe4346c6012e3383ff22f2cc4d01f9461731d2b00d06c486522e8350a31409ea001ac097a5c3a27b8501a46db672c05e547e5cddc4d43ba4c6b40a59ec616d840a7539593f0155453e9a96126a430aa7f0ff02e2e6c75c5175b3d682fb940f4cc0de5495f08c31e4744333121563ef917e217492f8440af033e87c800c4727f7c77c52207c2e12965594fcb2a51425186443807f3751fad0408c05cd2b2471677485e21125b9048a87fecc132f1701a5636455998f8573464d5ac15aab6805919510123e435b833a6d7ae165132c1e8441b06024157a9df074c7db62411b6afb08e8981bd5d2d74495d704f1285a599c410f00b43308cc88c4b941512720ca5e32c68193b607a6e8513e22928338e195c172df2ad0a6341d3f32fd4cabd228137c3e0ca6e5a87139225d9b2edd05ae5842125930590e359f19d101eca239e3b7d8b12d4d3c861c51e87e48a9c82e26039f57f0366e1ea3e65f37dd091d0cd945944b17d9b8d9ece0fcaa82b6354de09f9362c28c033bed532c65dd7628f1d08f392b4497e96f64fd901e5a48ad0e1b45f36850f77f18424ca702dcc00049d4e37e10202f90d3e4321b8dac8a5601e2101736edb1244d4ad05e9c7707eda06fe0e47f4cf8ab195d9e29d0967a406c6a2f9aa9f47fcf042ac858da5175c11aabf2c7baaf2969786cd9bda9b3e8c83df27e4bc421c19ee5c002f39563bd3c3abb4135399509e5dceba689a8a0df163d508160aa55096c7ef274b391e0a8695a73c8f7eb45109ba0378317cea51a612ad2e6ec1503d964e87f8f1f8e086c415161db8309ffd25d9cd85854fe98f3ee580e07cb2418c358f67f8b8d338deb6b76a6eaac22384d42706bf6fabfff2e3335c224137b670980a072021d748ee3529b44a21ecb922708c2b1c7321c9f46295b81df991980fec0ea6a96a1e51363656a5d79a8601b7a6eb8277a923163449847e10f9fce87a124e20bf4f02020ed5bd0065e97f677d4a384fe2f107fec6af925974df7062fc53db902fad0e0a4593d9e37e8782827f048960edb30d61d16af534b26ee597802010071cc5082ba93c1a8c215bc4ce553d1e5efb35b14c7c6516f38de593ae71209451b03c11a47274f03d8f93639b0a646078f90e59f767ffb249164dd894371b8ffe51363562852ac707ffcd7e611309657877d614c35d9372f8da6f08578877b5a7cbca3bbac19b0c1dc0a0f10c944d739fca3eac7ed23d56642c89a666d074c1797f9e9dfada0cb96dee948a28938845a3950b65998b29b05ec8c12c89808e833997ee7605680b7d0e5f34700343cfba704cf3f9f33c7344b7713f8f2087ac17047517e1f828a6175776d79eb0cd04a8da6cba7a14bb74d0c074f520db6deaa679bd72c9cffb8cf8b7b3cfe5cc7859f78bb3b05fc3bf40349bda44be8a7190b3155d1c4b327d00380a1cb31e637ba866a7c08a4914db89e5309ae367d07df840c08dd5c3bbba6a56e9661cbf66549b77bb0f6cfc6638998660bddaef9309fa4ae7940b7f4ea41458396cd19c8a460d24be53097b874321940a505c1689321ceb930d3b4b6cf92c24925929a608f7f95faa791318ddcbe86010a3a4de34d2d4bb35b79777aa305c139aa4a37a00f16c76cf4ea64235f9dcb161a76a404ad673030baef4ea80c54ba018988a0bd8a16dbbc494657a88c98fc1553590f6589947e01022219002c8d41cd26bee9f7f60737e0bbf5a60c5a0f641dce9cec1bb4fba3d6dc948b06fcd26d540168612578e2f57297eb1383254464694bfb5882fe41dff712243e70e03565a85bddb7d54a0994960eda546bfe24843199c40156dd9932845563c2d9daa7f35190c34aefc4665731210344cec1aca8227bc833b472a1a69ef62e9541a72c23d62ee7543e6cfd1cff7cfd47884c4953448cff7ebbbcdd842a0ed55002fbc306d230ec67546d5f44230d07cd13b477a828b682cfb376eb7e286e1418854544994f2870d7ccd301756e0c8f2f9d5638b21eb2b5709973277ac619eec4c30ecd4a22075ed98e53665fab960d681539f1e516e83a31d92ca0433e8bf6ecbc97fa1cadbbab7fb23e156ac1aa008ecbe0f772204c0be5a0734b9b40663dcbdcc8598e3f04eb8775cf11f664ed8a261d6eba47522c395d2574998cef05913363225fc25cfff3202568231c8ce826cea44ddb40523612f9f16376636db55efc92a6a18c6b472da594520ee0046ea7d24494a600530ae65619d3ca82e01c9337f96cbc4a50d868878479c8d370b5c8ad5481c9c11f4ae8a99c37d8fe0e477b0b6f3757e89d7f9978f630c645a35ce3e67734838c08f7619642ebbfaacde64145d8efb71fa58ffc04e608c1c6a97d71f25029c3e9062f38a7c088368608a8a692c2c002f600a53ef5240b241e71eef98cac1db02f147ae6ae3d94fef079820eea1b3eed1e0d0c016cf24340f9c12910c10b6fca66037cab3d6f98d1449b39e728fe98a04af38766aa2c3ea076aaa81701d0a1d3e6266c7b50a32bc3f4001cefe523ddbd75526015d4310200cd90d3afd6ae04a2cd35dbe2e6e9b5f17ce15e780d55c023c4007ab7e578d13ce308c3e5d73998e0fd2b3c10b736c35641c6274c2a0fd152d479b3ae0a7acd973347a208c448d19fb45858320c6c371d45aec2ba7966ed5e2c2cd8bdae37effcf0abf1ef795741a7b329484e551852481f1191ac6f8c28f87d162b217f14604f4087a5495b8891f9d40debfcd476aabd49db6394511d8205d1a2bbd0f0ae4e9e7a8907f7197824359c042c7f37730ae661a5bcc8686763340dfa847afb22304b8331395e26cc5aae2c36c07f938c48836c765d38bc566db75bee43b12e25412e2ce51a2a30e04c9bc243dd6937357dd3ecfe5eb6f390bc1d6e960305c7b22033f992ed40814143ac2127fb7799d7207d3c53462e2984ea99313d53df089bb7fa0dd3ce2ffb97e09a2604a2e3e1382d6c273890ab84a8feb8cadde41d7f307a4450d3f823bd7da51eec3446de900faaffec69576b9a9599fab5bfcd91ea1cec1a1793f9ea17092c7f7c22ce3bd2e9f3ef5478bf407be4ea891378dc7c152b400d1dd5a2e3cbc33ffa273ead968b66e0bc0098ae7d456ab3f531073e139f9c532423ff49797e3b49e5ae65d87c2246404cca27ef7ed7cd6893a5154018a9c80f482eff21f7f1d211737501aedaec5aaf26ed12e87933c5bd00d5983e317380751301d64e3a803d7b8c0c59172854a03314c60e2172d5b998cc59c8dc89aac556003666332d17459d8f091667cddcdacc2a08294a70ff7111a99e1f33769e567c382a431269a21c342f5a60b6093c9ec350e82f9f0466781e5173146c0ef49de7e0f157511a28902b796e37ce9ec884e0d52fd2d8839058817b983c7e13154eb84a43f4506f2f8c582b5c324419b1dc55a125ff7b071d905511f2ed87660bbcca8dddc9d660b6ef7938330057ea1eae42c449df05847e1b8b7f8cb66de602f7173b4bd84e775ab7e955a063340d900a10fbfaf7c856b1831f57f186a5523f3b365a85a5d2ef37202ee5390d5fac85f3633dd932c394e197f565cc8f485a6fbb22252767bd7676947e36202adcf1cf050edcd66c6a44c9a21e7deeafe9c6bed96816ebf633c64ffe29cde1301aa10cf76d9e6e9bb447ecb2fe9013067e37fb07a6a13b4e288d501894eb221724405f181ce92a1af10d85ed5f61792b07452938405fe756b0e1d23efa9b2c0548694527c7a71901990db5b83ccca460755c5f8079f67bdfc196a87b35f7c44b483525d3ba637a86db2a49bed62d4b2fccfe97adf5bfe9403166ed0aa0c0e40bb7e75b5fd1b6139650438f7eecf8a13f6a583baacd7957b44a91773b5529c1006fe89e702073fd21d6b83fe31e85a16815245ba1157bbc71b658423546c1082526d3230bac07fdfa6159689e4a5183241595ee5fba8e670d3759ddcec143e1165d0efcc1ffcbd4e321e3dad397d5eae6b26a4ba9bebb7835b562a851783b7725572d2a4d0a5b54bc50f0f863740d475d72d0f17bd3ad7f414b424a0386a86240b627d2c479c108675b562afc46ced81e606a5c80859bbdce9243eaa9cbd1871cfb129f342fa36dfc71a68dc9b012a432bedffaa5572ca4ce9d71760ba4576630c067ab90c1d2b1dbdd6e482a6983c5ba6d50f7b06a625384ac459c2166774327b330e19e48c692474d0b48f5b94b53b272e5ca1d0f0dc572df1f4db043dd597154d34de7c1f753bb1521d4c3d1d95d2bf1a8f431504e126b967c04b6aba82755a4a8b5c215f46a6a95f08da5bdf6ce7d23231e5ed856977157e78fa0e950c2111c695de09e52658cddcf60e732228f2619c11ec38d2c775400eafbb3f62ebb6694b80cf8250d67ffee45422fd4a21e9e7e5ce226e5b1e85ddaf4fa69459a2f102896111d25f20c9f3024f9046be41f9bc7b43a45974a2f51b1504df01c0f5d24e76e3d44335f5b714fa3fa7c1308ac2b54c592febea2bbdb4ff8b32460fd2a5e920dbeb066cf50b51f2b49d6622768805f343b7fd45856c288c2a8782d5bf10246009db455a1f8947f4ab3dd2df7b82ba2bf683dbf3c5cc1fe93db97a3e00a0899c59fe8436a22eb03730cd85d80c1fd1403105de4a3ee6eb15ff5f12fb6703e3e169d146a42271409819e8590505f12c1e5a7499ab342b18db1b4a411223b0d7ad86b5535415fd10555cd3034779c313d67acd4605c0c706459dc9f0fb92a3b9835b2469044a841d1110995e7b0b6fa5166fef735a0f3098ae5154d130ed455a66dafb09c29835036855c32cab2ce0f16ae6d936a1294588741db2bb1b9656276e3a12dd93f218c3ca99573cfb78933d89e033d864c3704cfbedab289408508ad3cdfa2a4e02bb5e9370ed9d5d6f7136a84a0a9d1c58347461be3b59a6ed61a4d9042457f6355217bac34571f03c946e71e784540a78ce50e8c73838b3b6811fea3f5c8548efa15d79dc1db0e859887023105c272a263a9ec81fd2e47ca9953439e78491f1ac39f7d419c9bee5af532ff5d7fbe0ef5d3613fb3f4c8d7f3a96e7b8f6259782fe33e532e7c5cbd00f36ccf27946a52f5c04762261df2f2769937d52df6d6d9945824b9d06abb524764bca8f52d49d0d59ed0bce4b4439ddff63b75ac22c23146db2859d4410d3633be73d3762ecf18f78ea6c911f70b7879dd19decffaf3a5d2ad13b388a524114f2b56622a172f9d1c2c36bca1d26efc48e91cf237caec9d83a2c1842847bb9020d8a13f5a3c848722f294ac80e616b402fa3777653c9c353351cc9d7e149b005a1708ee2a5909efacf77f10b882c6623dd0210ea11faf2d28dd9d627040854f495a9bf35b6bcbbdcab76e0cbfe7aa7948f35e98582d01a62c26c6998ab1a7e9a5bdae694f9cf134295b60bdef5d54f78d2829ad37dab87675ad881b458de5b592c01c6fb8326e10f01e78fd2ab16b1dcb8e6c309156b82a2d60fe1a168c2ebd6928b3f0ff4cd8f3243c435b56d6d001f41d631dec3c0b3b84721e8a9fdd530d087d7e05ea6b282ad010e1028d60f7a0e15620adea2d3d7b9a385a12db6ccc9c11a59ba4a3cb1df14e29624a94f417cc86cd2429305b65ceba4f8b7f5b506a56a5649a4e846c34e6339e017cefbfdd5fa6812b8067b1383c6716661f1e76ffd75389d84f7222ec911ba8da042232a662166507338d81c64c56159c1a8a9ff41802c522e3e7cd9b497a0f254736862aecff9749598a88d051535a5c4d464d99974fa99b7397fa7ce2cd66fd9ad654bd885bb81febdae632a929fe3932d0959f5520fd142798114f6031a82fc773b4c3e3cfc22ec3643876b532f6078c04c328818d6f2f04b1e1905c8a4bddbeb7a785cfb9a20c3773e4694c41c05659652f7c236062c92c26c27cbcec33bdd599365373753b2734cb65965f520ab8a6751b940de3b15baa9a0a4ae2cb4511796a7b840fbd5b5a8eec9b2aabf71c8fde4dae5b52f7154c73bad46b56b370a6fd2ba0c4d9b62a5c964a77c4a01f7c1af50f71e59fb09609083b035b66a91f889d0bbb6304e11e04c427f5e662f489cdd1717b122b97d2cb847c26c664f706ea100405fc61c278186fda9b496b23dac5851627d5b93dccde2f4a05bde7ed41d92f73014a04f1551e78a3769fab807f008843074b69a242299b4480e55e16e75621214852858dac45a9c69bd2c50da1e8897f276d3c09bfe7f104154f9daec857a8ac1e2c7f5bef14da710f04557dcac02b3c4763783b272c9bc28c60093c6f4dddded9bf6c892e4baa7e05c3a85dd0339d5b463a83a295dbac20589455a388146f81a7808c43fa4c02b61eff74b20255df2079388879ce3104fcfe59066ea6b994ac9bda6ba5dd43bb7e26b78c9e19ffdd8197d40a7e8fbbb77716ae70fa8b53002064ac858d5e3d791817be3a72cb907bf38719b034d590df50e1c7cc9fc0fffd3158f404c9cf73873f0ea2b0db545608e288ccc52a5a50ff57eedffc40b91e1473b2fab7940b018a0e6db5ff190cdbd0d91580a11b89bfc9d7f31ca5138f8c8fee91671c98ce566d7ea3cb6c905f058614120f52d838128fb903d2dd27a4f0213ac14644c96666bd19b5e8749abb2e07ae97da006e8fb47e5e984fdc7663bbc2272ab91b8b536a08bbe7b61c66ad7c8a8b1c6fb4246d9bf74de06248281b0b91b23193a116580992a525bb4a4040b55efcaada057287e1b3112616cd0f3822503992c5fa68fb63c667fb0d7d516b91077f1be9bcf70e33a08a8e704d91e0b8b3a8bc903c48ae30a971bb1e4935effc8e1b7706458738da6e8286acddf3cbe2aa6be0620d5add51b6607a913fcb782cd98c556a6ea21036522b7db4064cfb06c0860017c9e4340248b3d5f92482b68b81bf79c43762e5f09f3eeec4007cadcaaf8db0c57476be702c918e028452fe87a0ff3b151cd657ac1a657808cff9d6250508eb7d21c37b71955c44445c2d07b0e523d546e4735935cc6272a3f70bee5cde040a1300afe8125dcb9579e250dd7c8260fa85e4285cf9a8e9d2fc9044992e3e8cc3c5d3d11a279301e387d60bfa42fb9f2498d2adb2c31692f7d291831df2e75f6a19fa064a3d8cccaf540840923fc1c9aefcc813b6d60414a8e90923d3decec4b8b18198b73eef5282a83d3c748b4a7bc1ff20e3d6aa8a48ae5481ae723d8959d8c16ab59009d7a5a8462dabf3e76e69a957113f524201f3f0944cb84abd78580fccde7c8f59c91941fe7ea3cebf9ea58a78a9a4b76229e94b2cf4d01eaed71e0be52eee9f126d49537d40276a9f39c982855e04c4ad34a1f60b0bbce810e86727e31511584a391328461860c9b7b65f8f3557b38967c76b84f30cd9b62c5b496d60c223003963b6d8843770f9f341a708cdaa21d89ecfbf9ed17007d7e74c59e67801f7f572f3e7f3147c3b3ebe629dea567a7f9532c66df8389ecc7dd93fcabdd9bb2ad31068102ed5f0dfb83e50df9e5af53f45f19e4ff23686ebfe71c36d8d5b511aae050b612794d4f48973d3de5021f7354aea121097ee61a5c27852dc14a598e5445421dc2dad35e3c5867378026de3c8278471bfb75224ac2c3c854ba859b2ffb42988259a7aca7f69c3f119aedd6568d36144e26337d73c5274068b607f7b155d1f9c8226c6aafde930e9751a241cb60ce8999eaa43b99751ab5a104c8f6c2d0133bee5072d188db790361eb7f103b5f305baefddbfb3099cd8fd279e8487b13c4777b04b7024eaa3340e3443e16a71bdde78b21856d027968efaef6e34b9e9dc726e45827bfcd386057ac18455b16ec4fe5d4cd9c33264930b417e4a5ed53e7e4659201a217fb8f9ad31a70b7320934990626e5ec5bcab4bd7f1659d434ba98e2f503f0928bbbf17aa1a64b830170d780c6328adb999f46e94944c160f38cdb04abfe69b10d41b873506483a1dd1aad7d493cd4db5290d62cac017919e647eeb160f6d9093c9cac5f0d07d5b7286cf68a392b497827d1af7cad97cfd7ef2ca7a1e4eebb49ada3ac2efff76666239d4e2a9d65bb8528c30280f0117c4eb2e3c3529453193ad5d34204f1173a45d7f180332193499517046243b928525c64cdbab6d7406192640ffc2bf37442b70cf3da696e78e527202f6b81bd58e4d46c891a615f404abbc0ea11151a78f7c3686c8d0797057ad9e19a7e9e729792cd17443e731d6794dc2bbd618973d8a0da3195b5329666c5775f3337fdc193c1c719e15e12354b41605342af3965205d1fca7af3645fef0428c5311d805ea812e9c00f81072e8eed06b3c0c681ed58f64d33a2578914e66da36b8d6a9fa942dc88a22033b6bc97e420cc9799a34efe7d3cd24953f024da7eb06b6c09db1c71d14bc44d59a4c76760c8650b3996e37f4c354cdc95b1f9b52618e8eb6210e62e7d6128c04780556ff5b833184e4a32c68d57888c656b7532541f47c9c08f9270c6950143b5e0d2daa831e00a17487bd36edd427fd9e6e33fc023bb12302b539f9efe4b120f53a728b810825bc1c50b78d7f4517b04bff1e921b7f95c1c7ebc1923d9d4ca2e229b61d08b21b6fc0c29abb1d224ef65c551fa8083c7ad2ed04a8c9d0dc08b40055ffdab280b539e45f00d7571bb6d5bae3135332a0f617f06e4f4c0ce70548bc3f7bd40a273e127cb6f89444558dd592a3ef47878a9f04762e105b0daa89518a44bbbccf59a49a269b0fd08629f40ba8665813701384bbdbd370589a5150a15168dce0092a1173932c0191cabef38c9b695ef888630ee0c07ca21de7a5c2779135cfeabd12b5189cc2f7be4d7d76f4d8c9cd1533509e834f6e7d26571851810b37c1acabce4856b2873bb4bbc0df5ee57219ddb0b8ab8d365060caff4025d2515183ea4003f556af32f70ab802ec34bb4b1b4a9f47624a4646bf8ea3216de87440338dc94536cfefc847317567beae47ad394c28735231a58821edb2773e00d60fab0d55ae364529891e81e16ca08e7c41dbe1ea39e3b5c35e073abb9c62bc1207d5906669e3e0d7c8362941fa411fc8ef27569034992f13e1b3358f581d305e0db65e5f4072a9f84065f054a58483a71ccdfa972317dc7604efbcc9d99acb4f32297c2416ac5351d349f8374607c2ed5c5a6cfd36ee79386b7ec537a64c9fb855dbd921eedebc7563fc7b19cb2c01fd1f253faac03de80fc71374c1ad531367495bbe3dea177e14d6cc29f2eadfb49ec3b072f5e3c704e0ce8ca6916283ad31433a4d9414a9373572657abad36705d574d6e52d339b3dcb00922593fd999f540ceb5de746c1a101d98e6c1f8bec3a24bcb3239e518eab05dea657a1e0364e5636a7d213613577bbff8e3203e959cf2b70bb5fc6858af03803e8ba6cf08dd6ba5a2b7b95ac0883704fa9c54166f4ee7792e9219e77b181862657dc227d1477c4139207ba9bb3a41d00b80a98ffb45a9363083d359347ea3539ad6df98e36b2512dfd9eeefa5cb26bdfa099b6c6b13917ecf3596f645ae3de01359c4297dd0c194999a0e92077664d098d543cbc9da1efbbc5349fb372d03ccff5d8c21c3412b613ec6284d1eb76ed5c0fb3f9185fd7c4c50145b9e01017de5288add27999fa7445af44b31fe0eb0c8222e76de9c57d46191c0d326a726c464c97e214ec1031796f0d648cdcdfb8aa77d0bf4f3257c8af9ec704a0fae5e0f758da39983e2c213f2e14d95dfddf075bd19e4e9f7929440294261411477859311cf1f00efef9f19354bf8ed4eb908be2cd6f0a981ca0e331f1477bfe035434a45b973608aaabb75d1547881b7c4a09e60ae0578df2e9fb9a8a39469e6661ef041bd624653d7e426042fa0d98b65770499a980dbc50fa02896fb943e0d8e4f09b1d7ff6b7f399103907d34c49d92d2ee8558704e1b35e753d45bde0fd976dcc0942124ee95d7516d46ec0a244534daee8740af92e7b95320016abb0208e1d8b17054c18670bfd7d2a29c9ae7c62c2e1a75dacbf1974d10101bb46ecd6972e2ba64254443c17231a313710dd20104f24f34a6c6cacc9d5d5d6419bc567d3cedd51962ea28b68b329030d48d4e2159d54429762ca8222c3155e7b66d3f835f2cbe02b75d6e8276ec4de19720ddeb45a58b5724b6cff3d7954a641b518a95f59d51e88b241019f53b6f2626cf1eedf4d0abfb02694c3d5880b8212a67c38f376085bffad3af9cf40fcfb6afce18938887a42faaa343d3d6be88353309015ddd61fef7666b45a277cfc685f05203fd4483361869d0f3a29f256c386fa63d9eaf46417f2c2f6f3b67062ec65d3ece0f80ea03dc12f610d82d031177b47bdf8a8b7ac40e76a52286bf9689b0892b11be419f323ff1edeffff5d6148d9ed57d38b177389dfcb265ace86ff810596ab08eab5479ef4ef7be3c92fddd899be90218ad58e336297b5f9cfee8c121f9083f63312a664ee0af577b69beecb696c2ab2e4870d89c8c84e6ed480571022736ef2894a2b2892c62e2f2b0674a1f5a01982f3446b303fda328c28332c90126b381fd5948e6c9e2c53d71a31b5497dae38e6b01c9467898dc52cebeaa4c826df05d7160f26aca22284576dca262c1d86b1e7fb4624c64bf7b4212c029b2e2f7ac8607cf0bc57528d8a9b9a1034cfb8881d6db57afa36e68212da7e6e02c530261987b40ff6852c74661d02634fa359191fab608c5cbf1b8ce07d054a8e3e21621c5fc2bba69a62db3e12dc531f480d5c78d31acf9512cf5d323617abf97f69bb14f8914724d5ddd3b17463f4733bf1d26f3e9d54ecf188a1f4c5bd17f07501d46dc519a1e0de117cf77e99f87e99e3bd093b08483dadf5bea49c7ee38b9407627f7d3ed1847b97b5857562cc2c07372e2b607315b2c8eb95871f12ec9d6f1b62fabdc6c3fcd2a366131ab57f19a8a2c62e509e25fa42d49265a373884dca4a44400e2b9fca8851ae994f594aef8dc5ac39860911bc37ea429d1c979dc7c211449b2bde5c967ac3d31d27474130f2b99508c4df5cd131dc04d8c3010f3f2c25f65a28a8d99a2abda08f542d53303a7478a8f78d50385d16d94e80811ed0e454d6b98a748566ff0585290274e68b14abb0b893320cb53e63a8dbfc7f1ca3a7473e92d59c265d210c7d77e3172d9215047a955dd265afcdea7b4edd2565cc502f580cbd9ab8823b5e512d2939d240f62afb5be94854a95e0c2e59d517dc16780940b676d25a22d7d08903b30cc7d62899353ea6a78f1d0af57334c9ba27f99a274f611df73ebf7f43ee38392a7759984c397e02198c01b37b8dfb0646fa718b67109c77234e4854cbfe37bcd27986948cdc74636a88e7162340cfcef6d9cc46281157770c5981e98b9c46420867a70b865b4fd181e3802d77fbf7c406e603f43b05abd5efc4371b922e526cfd9abfb9c2adba4dedc2365f7b615f0a375ab1d23e53ad3429b2cba3841f2bd8be10f28cd249947c84a067d3e6a71d95d3ca646b67289f56f3fd9fb60cf643bc382f098335105e09cef43059aa85876c3388bdf2219c23b7a7e7da800912fda03cd125b694c4a6c58da1bc1aaacdcb985b54bf8d71128c6969bd01ac078b01247c762911532ee01507aafbdb31deacab7232425d6cb0977817e7e05b38ed85ac947aaabaaa6224992d670724702367431db3fd98445c04793cfbc7f802c02371fb3b59e0b9b105089821a769799a9cd6c4df150a5095ce23b65d87c34def5100418929fc2f9d7fd42d343a140f3b2a8226feb031144abafcc4b60d4928f0572c541dacb4729d6bd78c8ce2da7497a04b6d9145382efa56fc30a82b2f03c5cb27e91694a54bfbe352755ab1df86a381cec4d72f39610a472229f8eef0211a4f418bf3c7347d600ac5c6cecf5dcd1ad8668a09c7404bacd13052c40a8847ae1e7873473f01ed2a63d52fe9dbb36d574a659dc33ada41e4af8b2a0d2f776d1a4592d6524d0cd6444be45a11a7e320837352775e53bc2e9aa27e5419d04aef16838691ca1cd7072b6a2589d88af8221916c2d40d93b415f27dfcf765b746b7b1a79f162feda2dc4e743dab12ef3f551767e04861011f0c06ec195b9135b5a724b26c09e0bdc142aa2fdff80c36f4666ed158f7bcc4316475a5dfbbc3d7f31dca712f87870802cdb780f853b99c946f2cf90f1256701500b282340b7d8f43fc257011dfb81eb0778395d52dc454f0c7f24c273f49b9e4627245894e5c8bc87b257fe801fb6a516c66ce6645cde5b2cccb8e454527f38e272e8db8685cecfd755b61055f5b0b31ca5f9bb8256ff1409649de3b330c344c2e4d5ebad80d04ef071f5639d3a3537a5c41ff2fe3ba89749f296540dc305ad01668fe7c35a7661ead75d4def18ee27cfc7d390ec94ea4a1d2ff331228410b17197b06ee121252ba35103dca5cb47717b622033cf67cb9bb59299b398a9a0ada2095ad59255ae98a16945b273c47cf9276de146790d959f844f986a1e015d47e09cfcb29805e558bc26e17c78b83f3554040db6d16003b2de595bacfc5754f63680e7228b6c92f7d661dfde1ae31e55a5b1b300f49046bcbf2b4612cd845a8dd23d0f39c59667ea63ede8cd0ae8b9b2d38351788f9fde78e822d1ffdcb3b125e6cac2852527fd83c36df2142e7294108ba2331bd55c896182a4f846688dd254d26a5ee24fcfdc71da14ceaf065bf50085b41597587397fe6cbf35d8c973d80324fb381faa6930ea512b58db1a80a193bdd026eceaf3b1801713a24b10c11f07b27b6803d702f43aec65be55b05020ba2c391221ea57e3e0c4b019accc02341d2461cb5171d75a51d5f4aafcd73555301974110b97494fe22215053ee9f6d0cdd14acf12ff6080ec7d6422b2adba6b6c98de344928a300a8e25c2ee926e05ee8f24108ece88ba5500b5faa2a57255d89ebd89fa323a6b69a74e4d15de37896503499b245530e31f823867e98707b3e48611de09845a121d152d9767a11249eca7052db583a50251bccbe3ade8c6ebf74e667209d1db4f560b81d4045454eccb0437e74e9f46e545ee2477f3258001820362eee1fa9f79e4fb636280775115f9c6364671ac175b9e7e23e449b8fe28a156d482fbc149e3b535d2675ddae82053664738fb6a4eb3e0c2d49d80796d89427a94b99e3c9484cccdf5a5902a441468772875cbf724cbc4c9a9a267115187ba7f08b7ddb68c7af796d9926a8ebff6b4250ec21ad68e6266ae983260628b92fb636f70a71ca3ad71d4f11873ef5ec603133906fa3c5ffee4de4402ee026262ab7d518762ad022c53ee3c8a5c1e00dad0be53c0f60c5fee0a9703f41e2550a73bfbfe79c8c1439cf55f8883008772ba18f046773edd68e02b6cef6b96960f641f84a3de6c86fae0fbe465937ae07f33406d0d526a2b54e452ceca32a64337c722245ac90609077a70e9b447cf3223b1760f07814fa7567d67a7234278a579ad4feb5ba9f8a645c312eba602ecbb52f607bb4e1ae1f207446148b9b1b2efb571fa49c8e1c068c534beb8ed4ee3bc3f07bd8867e4fee32aa00929a04bc26ce822007f86173def2a2fe9b35f84dba6182db1683f13af06dfea02d4d1e36ae6f3a961a042b9e9703b86672e45a7b30ce4849cbe0bb024e23968706b44cbb7b05da6875ffb2cb7afebf7be512841ceb3cab926810b5b6b0880b8feebef68ef8835c290ac824a47248c6655d27f2d1cf73367761c6e91bd9ed7a4bbbbd9a874424c28e8444863bb640aa2bde5188be462d21878ee218b69fae69dd9b68c5a356124bfec895b7dc16d32022cee7f4ed55d903cca5773920ffb38a58cacdc30e44799b20e69ed18039dc2ba471823591bec589e44fa13411e486b358b53233830576424c22fc815cc70b3f91aab61a2cf62a06ab6ba627a7686b5908a8cd69e0d3615336f0e591de110e5b4f79cb31cae03f2daf2e6656515065dd771a8bbebaa730da4a6948724dec4992f977aa2ca1dc2dea9e923240896b47cdb6fd6082fbf33f7b40da9682f9d0205609776a9c9695a2e597c230948e03958cc49257cdbb28bdb8085fa13f9fc47be0733b427ff8a4b00f79b271d3fa9ce4dda079cf2a714a056777e07aee41bb372d4ef7c926b8b523d40b60c273c6f186721b7155f10ba3ea6738b21361cd1f1164035a2f830096b04ed29722af825365b46652c565200819b795d65a6e8ddcc2c95f8d54eeb3705b7dc90a35e9a8d4840c9bb41b26e8074673d763e26aeab95f34932171f782915976ca27a467c7952f0d43a9a41ae817fe8aabe705a39bfe3aa7b1046522dbc4d34dec8fa49e77ab1a4d891e353fd872e0b3bec9ecc9a9f89aadb410d06457211e5ffc8f65c39cc321d22e82a57120d8c41742b0eccaca9530427b92a5ddcd6be2e4b7a701c731313c7d49b1dc4b6d800628ad38e192f570326a814bd9a39fb2204cf666738160d891d9923170244516a924ff9030f4aae7e9764f329260e8c7661cdbd830da138155435fa01816909b00f5b7162b935096f22adb2979d2c29fbd591b85e7271de24caf57a59f03ba4c1ad306463d1fed3ef597659e6f59728ef5b68dc51438f627fa74877babe7022910490e62697cd4be2df353f60dca5fa142ac3a37c22df70b013c63e299b38c010a9d7d75c5bcf63a04ef004dc24cc2f9318b1b6481bfb069bdabb52b0aa44aa949904fd7adbd82641fd45a43d98a8a77f61f69c891e7301e62aea3749abde0aba85d21324c4f1bfa816b9c3a1ac401af44403304367753229068f3a434a4ec8c4f29273953b7891f5a7a86cbdee06ba4ec8f83fad3bc30dcfa2eea94fe1239773ee1a329277038cc425248075b2d021175154cacb5b11a9aa7f61862f2b527180bdf14119124b85c0673f9080a6cbd7c95428d6fb31dabb50528485e536eceb8543468fa4504b9f4fa2dfe70a6493a048c21f25c970d5cdfb2b87f8c4a55fc2af3f74d1eacb4def63e9cd8759099e9cc877aa9f12348c1e41145f09e941217ea3c92b5977a7690cf86ed24c586c362411de8ce713330cad433fd82c1dfddb4944c90a32f16045c60f372bf5ed82039486be36943946bd56d7c74d60b32aa2f8662d3d1d22febd529b3b0aa78913686f837652ada76556cde5c95e6a7d8e93eb3f7f987800b43f92737140168841b5f0fcb6c21447714ec64e59b95663eeadd44bacf97a997e488b1a1f29b558d876f14ed1333e84379bc84c67d8385a1cc78b279e1956ecbe1ca7c4c2188235bc30b4d044d6e40a13ca2b3877e7290da2ef93c3d85dde572e34444a2576b107231f82e593c507980ddfef5dada468e9f949b9320c238571eefa4313360d98ba4b0a3b3c5f3076e96a1c8887815f6a2b52d00d03ab1215874521b58f748b2283e3fa023939b8756d6e6aed41d75ca917e2f8a53a650040f3ec80e45036f54cc1027858e0c16c7df76ff3fefe257c36b4d948ec65f38ba98cb5e2b9e5d8dd23c02e92c24315c00e1a35ebfedabc51ad92bc195b6b9512d130b5fabc1936f12221d7342f084b89d09565f6b9a98549416a799af8382919f1ea9cfee1f2f321faae334467b098e4d18b644a713aaf063c608b20409c2628451f9992c7428af77e0ae9ec8c43afd8af762e4f7f1cd5b2a37dca952d0804c4e1f29038b5756466901f59905db9f13e509852bf7b92e6e79fd98a3b04c2c707a3201112616184648f7ef7026a6dcdefc47436705921ec73b3a228a0faa14ad81b3bca6faaf497a41c2f46ddd655b743a4e21dc9685124c38bee2ef66b98842837cb5e7573962981bbe87311bf046cdd3e04633cabdcdefec89127142c41d07e7bfb98e1325ee26f19014f2082984e9c1421502acd4d07e14d67472d5b725b0250fda67a8e0e8400dffc9df0da0d0a39fbca47bca7a2f427e51e1c2f79714cf6fbd7df2532d61e9f926e7340ac21aac245206ee8ce297e840090a9f7e7a9d3114318cd35be4488ea62720d9f8139606b173037879f4d331b2ca8c05d1c7a0a7ff79c8e28428f8eac2ade99f934fa3a7dd31d5ba4238a22a08ed1c9b2d6e62e135d075960b0733fff6c26bc25abd188f77d200d7e3ccb71d0e62e1ef3226de87d065d4787cb0bafc6f0d6ec923c0e3255452f210d4c1cbb19199dc7a4f6e53f3469d847a15c4239b2d8e2fc54ff6b3e0ea1b321095a10017548dc02bbddb3450732ea79182e8ad38873b41d867081277d2ec834c65157ba7615f46706e3c876685641250d4b5d9b16d92e360d6a2648f5055342a6f71e7a4bf9369cf6b52f2d65bebe432bf3fd7d1775a36fdabd921f267f9319cbe0f841ca40f8349737c2b8e37b00855163584a68cb72d14557ebb1bd78052d406838ecb3179c8aadb6b6bbc6d551ebd4d00456c18002f0fcdd713e8b8ad3451c4044ad5086e95f1b489e487f026b2bd6f2ec5dc905576ae28ae4485a634211e663f548250e88b086777707e81c7fe729ca33bedd7e352a387cf9bc478c6a69fa74d31ae6d72cd28804f471b68f4cb98e520c3892c957deb2d90ac10e5b90224b2133634dffbac0ee86bf2c64192e02bbd796c335bfdc483f3dcba10efa363af628764336e627820799585c23d82663f9843b707cb1a10565a7cf2e9ccc916e488b7b509330f932f39531720353d1dfadf03ddc74ab6eaf365e70b7c513f015986e4003e56dc569809fdcef44cdb5f5c54cc54bd17b4167ece5084b64071e40201a57540e6f6dd405dc45f3275a365dea7ed6da8a5c2f3388fd887a083b800a0ea694d6a7163d50bded4ae2b005e5e8b9272aaff250c9dc5966b1602e7792219fd0791df70e027d229d3d3d229c8a4c7c407afe68b098d3384bb6aae3326b6c06a16241decd8bf4172ad70951826ac1b7b568799024491d7577874f9bac32013b5d5e81a4e4a1e7b0e841d39843a399faab38b9b59125de93919f70a1aeb33a6e35a3c8e53782f8aba0a11215bb23885eaf9814829029bafcec6f159279630fa09d424d19638ed9b3f4f99dec625c19813091b20c58874f5b27710f5eccf142be349faabfef116f643b6158aeb7710aefc306a9b5d70100eb208e7fb3bf0e04d9408363a5caa773528d9b1aab0bc0f65b34e8e45b41583b7e2c2d1e06af4970f2ead6a261507012741b2bc8beeacaf9c59d947d7855a429665464ea2c587744394145d1df7105635939e4d4fc59f5920c9c7751c07471556735b6a9a17ba16c718c9d217676caf3270d1de80b4419064f5fdd811422fb2bf439358a1e9d1b46026a68bd099225ec86f727ea8085050e3833166602ffe77a11995f935e1b346e9c3496f4d288feff0e034acbdea06e2e3522c05a78595cecd30d217fddab7523e2f0965d6ab1a15bd888f2278de8d2be5ff469a89a002259a7d23e7b1760c235d4ca1fa546b08a229666062910e3a1879665f706725619ab71b44d77ac170d039e1b4e0487e64e8517a85c4fad1dee5a60741e3e95d523830579e863a0ad72227db99971e9dad9fe9b7f332c109125b646d27f09d578546ef77f56ee3ac0007152cff4caba9acc63e1a6a77316005ae123ff6c9c6e5189874b690fa05549f93b4569bd233e7d9de2f1b5471aa5a9501a79eb8fe226bcccc127589ddcdc907a2e9fa2d5c2e7db03efd6b6ea8e8027c0a33b4e633a88c1177e7af3b23572e03330862b9b49418699a27e701500e8881f6cd141f0c9bf2b8d9e7d5f60f636ee1f04701886f72da4bb5bd4795a184564b5c4707991cf6667b1d67eb71fad69ff3112bfa727679a3239b9529f8362ff87fd5599fa6182f86b6b34b6d6275c2a7cd139cfb68de65053405a9816d37bbade3d72d2c01fbe692be85de3bb9dd7a5e1733bd639a630e87aea2bca53c9eee1c6c68cf1f6099ba7c664940ea13790248a0210ae30b3dee1dcd11570e32373e7e40cc11b67908652856a2b039958a1d5793369960cfc6654f2c48793e2e1a080eddb9c862fbb7b9cf0256843ab44e6e2179a4ff2a79f898aa57462d115ef4dd9c7fc7788619d43e6faa5c8270b40d1ae9e7a19642917f621b4b8cc758556bd8bd1d149451c9ff74b64cb593c48bdd45b2b281d0442a0a60b68fdec6a44e5b77328463798c2b6097dd7a9d8bbbec85b32009b72fca9654292f01791f73d24f0e6a0520e974415a2a8e4b0265b2cdfae494b883a7fff83d910ca3b27afdc3c395f88581896f9a9d155e3aa054ea55b9bb4ae534d343cea0d92c60b8a1e37c80f349524237c9d35767741658a2df29df41069010a47c938b17ae1cb77cb87cbde465d782ba1e225ffe7a60cf265d57e7fd4a93b54bd84f7371c4adc0f930f59f90916b19cc3c7f11d6283970adfcfa7710c630a38781d8373efdb14b618ca7c5903c07804b1ea08f29722a8778e0af05841464f15e9aedebefd1dbafcade6b04564962fa9bb90de9e87513731a0ab4a78e2e439615e5bd3c0c1265653dec2b9348504d0fcda659b881b66c9f1322ae50f4448035128343eb215d6803d29333d4d8bea3f100000f54a8f6b25da8eba5fa8b09368348cd84527aa16d8d9162fb8488f94cf10978caeebca818a95220b03c0cdd327183c0f248afcde193a418ce7eabbc4959dd386885537ebdf53179a91967c6bb92412df3f57297c154ba08d20393025f27fe832017db8efabc5613dcc9c82b8ad02be2fc77ded6ecf71700942d2f22f126e78c986c5cff48dd511d8e6a2d2a4d77318958ea06f86c71d71eca9bc358570c0faec851f55cc3c5626e9fad03fe885410565cebc506a5788455f42a4fbae6b5ca5e78c42799f541ce09f2fb939c3ee16414afabb3777313d73853d9150f11628e69b4d77a99169caf03c4edd92bb31398df8e820069e11a3e3ddc1ec5f96918e92ad64dee2a6cfc0a66958e9cbc08412f8a927fed9109b4411ce55c64f870bdd37e7805055957f7883833877c0bd8a37a9967f9c4a97c4a5a6ab4a8df86ead2434d637a42d6bab2eb834bb3ab8a89840ca70bee792976c040ea7593ccdc9202393b7f45a809d6b5045c5e09f618be80fe855d59ebfb77a91fee849a84e21654d8f49df6c37df656cfb7bc4aefc8cca13d9f615d57c4d4c74ca4b49468d8121972d7a7481c0dfd06810d1e9662871f71dd2a21333049e5be20bb2b1edbaf9871b51bef13d89334388fe2016be65594d1d68f8af9cbee3c20ea135603664559f60d25c76827b212486319ba8e2de7b1d0ee7278e90c75ee846d6ee848f678510ed85e40c60ba134dfbf153b94fa8626a336381b1ba57839cee14a567b91100d1d811a5237965f3b7e266417d140b323751e03a22de8b9951d13956b990027bf8a3636bd00867dfdda86666702639ceac504fa5389f3c2f3c69c3656934d58e7df40ab94aecb33865d93c8a3c30aae9115396f5ae063938b5c3767e0bfc792fbaf1bd3e2268bdeeb8a04ff8ce2a9507fd194e8eba231e308874ad6d99ddf8011fc04017006eb932bd5f9f49e18808bcfd26788515451ae173a9e1deafee69834ced69fe5967a00e689ca2a985a8c56b0e2baf21fc193fd9085bb8af48dcf75125e80daae865767a51da16661b3dbec04458ad2e76622d087d2b17f291eb06517907fca9dec6314fe7110846b4641581956f05848c83735dc79156556bcc32176ab8f1b3c57c8b30f3f4792d58fa42041205afa300ade78266c8b4138fe2ff2df51f3d75d28e5e825ff170b27e722e06a1150173199d59b9fb4896176237a3e6a69b55cad0ddc74bca8c2f1fe7924a531d148b0f366f5e3467224cf4ff49b68ca656ab02f812286d8c9cc81345f704183f5cc27d576724c937f2bf08468c891d77c0e4bd2aab0ba467ad7fb233e18c63b225df175a54242a93a972464bdf14a21192db558961d01e4c7820ffe4ac8285bc3eefdfeb3660f34ff3a8782c04b9b8680b6100f9718835a4de63c12bfb8b2d0c62805680318212f992662b0fef832da755829bcff35618106d4d23f862f90db04630f6149aeb52030482c7468ac60149d190fcf2eabb2cfaa8d9702a0044ef4703c2d7221bc8b0766726ecc421c86fb1d88fb007877986f61a5f85b8b68e7d41136340439483def25b1854f0ed0d76ef74bfea1deba0e58bbd8160488d5ddf3c13b292e19de928577d7400aa2c6c74ec25c461b807cd36fd6c2a31f16b1d7a4649645c824485718001caa2a2ef2b506fb89884149674c7b883e8285eb8a27380102eca0874fd930871cb45e3fb7517c7eb9b64790c0bd675189ad2a643a544690ea100988ddd7180b05f9ec68753041b280860bbbafade573bd29303ce8b31e311eba78e996f3a55a48d797f2644059fb5a2c6124a4d9439a9466747652bfe505a400d7d1863fab5e193b435e5a6f7f18a4d9efc5c9f73b9cac898227274bea8447d8f56469d8e9b1f4bcec3d0c1999a8389c4ca4096e758144a4882ba281d591915d039f8490f9ca295710443e9bdbe83dd76401e8e811c7b2cd71ac6e41bae5229a815aa0a08f2789ff4ab8e4ef4726b1fee2fbe21cf8fc37efcbf7a24c6b705cf5609010bd6df4dbbec78966621d9dccbf7fdf7e253fb6a1b59f7fd0256996cf73f22c722318af57ddce2d4425bd3eade2ddaf7623b6d6ce0c4acff0795e6455b29c5ee5d63285402d75ea4022da431650a125012d4fe87209dda1d0a7aa11659406c9cadf2e5da08434c25775f650a867acdb32aaace56d3ac62f2cc3df20af424133bd0ddfb56a9563fefc9cb8b0dc12222aa860e193d00a4fd668eed580fe8fad3b20e5fe1504edcb62d0459191896449ffc19a9514975691b4c4f98b061be8c1d86100922be7e53a447fb81336cfe06cad2c6dd7294894c840db2b03d6486eb215a9d3aa30136204306d31e11462235f5b28c110e838d47e338e6c2841a98615891d99ce775039170009b6eac0edb6f596b21d4f60e0ac4200e974106068a924e36af98fd084876d5e5867e0bef99f4d9e8793c1332f3bfe80458a07e15b41ff1f16988112c0638eda40c34c7519de6abc22962516741beca5d4f75602710fdb31c905e6b99505999011c0aebf7e58614a124b5a217111807e8c3f93e1284c74451356ca844e4bdead005fe7fa1577f1a885612597f71b4601c3b0a7d28a20515179f0b6308377f2878371613b9142173ffb2b108ef2f538a2646876a132d51d84942c3755ac1ae82b6eec5ba004c3e827729b87aca80ea90766c0a9b6404f2e7f48a73de457f206c3f12894f49105f30be4d28508e93bdf4f7725a8306596c1265e102434ae64d0089a22803207deca2a007e63003974c858422a99d14fb2cb6f0e706e177471ba33936350b706e6bb15f935dce44c35d946b71756527d658a1443b800c8d16de99f051baa7b0455ba3eeb94b70a7088c1545b8dac2133e7762f40e15b35ae4f4b8f5123fec40d3d56bb28ea831bc95367e63ca0d3d5aafdf60933e5dd5e6512ea0b1159be366182cf008f8e56d8f6d4ebcc940a73f227b1ee5b3a5fdf445e5e1739d191874196c0fdbf6e4c475ef5da9a4901032ef3f4a8edcafc538e032850350377c98efe02d75fd55bdfd317f7f007ab0552d043eecee1eac53d87d79443dab51136ec199c6804939b88559aaab8bf6f8f4eaf2022bde83ff40ba0a785448930434bb01ea07a0eea507df5cb66c6852600a173139c353a8c3f0ed76598cfd19b9c3d9b3c88967560e24d9f053be3c7c8d59bb591d7b9d5effebf5775abe1ffb2c15101ac39c95718c6ba506b5c9bbf613da7a156ec5eb911b2be00bc601f0f39d2ebfb6d1274b72621300eea92fac802e639a51522452d3c3b7081b8a5a48bbe597d2bd8234943d9bd6697922c704e6724dfed81d32b0617883a7fd92835d76fc412e0c24ce3c9c3e0bad073ee7a5b1ba03205249eb194175ed08aa0f743965c360a0dce6d651d2408dbd97bf9c2d20896417e85cf8c9448b24446943d16742608df72128f44f02e560d399500a64cf6919d3872e395696818f1b8f1ad668b03d51d801d81e4b32644a4b144bc402255984e376118e62523a2ca4c803e29010961ad1d2a00bd592776cb182f8a76e5c019531cc06ba74799dacb25b7f24295e247724cea2441bec10007470058bd98dc6ac6c843781d62df165f6d9ce93be1bcf6665061a7a1e8a938489451953bffb1c0817210c558582cb7865518e233721f84cb0786f35d33c6bcc2686eda54db16e19f54d2c83d966a995cb34cc477b1d942c656172d450b70225ac9687fa7e9b815092840c924cad46ca59cfb262aa1fa4d968b67443c3cc33b11ee63346e618ae4950e468f6aedaac04c2203d55c5b9f1581b699faa12ef57cec4cb05779334e0d1ae372f2759ae683e2c9f2c5f2356f3ef02d3400f6b799745734da31239ba194c46031917458e0ef8cfc7bb6fc74ac7bf645624181b0aff975f0a782370d036f7347f581d935ca10fa323057a4eca0702d60853416acdfded57c14c82c3d43bb0c7062e0e77a3a33a42db51f3dc95bce6ba28ce5890d4ab5bc6711f56e077d16c9b5c22e747b74a315783e46179d544516f2fc861d28b618694c7fcc9b65fa8090ac6684e02b1e059b4277dac73fec68cb1e7d41572348e41cc5885058840d0bf4f8d2396173bc7addc73944ecca569539da84979b17e75cf96527b215046d69fb63f61b53c7a268152acc077fa87490b9f2b2023f0437926865ab031c5e6a7bab2872761bbc8ea9e74aeae1d92285a8b2ef20e4d331f6597539d77855e52921461c969408d6af441c8e523c9a2812c1ec07dc5598f929c9a2a6e2ce84df6facdf3060d6eddcdb3c745da4117dea336d5186841e989406267e7dc337503c8f8acc14d37f9be98371a5bd7ded8bbddf5a579e548d4ea91cd00a6e2a5645e6f908eb18a1e564b9d6b0191e10ec0cedd822c6ce1e483420fd14a21390f03c8716de97de40fb013d023de76b0bce97ea8c9e602618b2d828435f482483a2791f00ca08898598889717544d002cd4d4db1282eff4900d8969106bd4bb0f77ed5f9c9ae81e02b2d03196be525172924d71f0fbfe105312ba9ca38982644ac9b04a039493ce95ee7c19665944c8f30f6d28cdc0bcc8f8b644b573ca8b9da494f514fda4e7ac96638a00a96e6997f9e9ca9dc92adda69b89fe5058866e0fceb6156ed92fff3ae40067af1e133a8ab9fce4601c744e638d8c5683f27f22f4d0378e436f21ef7cb53cc1c8d85e7f8b73530017a5dc06f9e5975599fa7f38201932950dc53d9cf9b063dc2ad33a208e379bcdb2f5760ee3859945a1d8270ddfb4f736987e3922bf15f9fe07faf806774052947514919f9aea17ee29ca38a24b0d20ef42f8e90e70108a1e34332e4fe7ed417c743e77124d5782325b59903c3905ac865f391e6091244609abd4b4ebd7e42cf9005fcaca22f75ffd13023d7f9d3408f37ae9b636a0355a8f1493d18f9ea2e1c89bd2def7048390ad8c81c8dc94991dd985b684eaf90334b82f59d410293a0b06fbb4ff579d2a69e446cfe7eb047756094d215aa67781cc7bd4d1b75e16c426282c961ad8c4b5139c9633309c56185c57dee6598718f5ff99dff85ca5da4fdfc59cd1f445511c483500b53b694b384ec9536864187a40861c30114b62e9c7e43bd46efd138b3040b952c3589c9a7054f8956615935a65aca71b851807f0426bd69fab0b65efd2f2998ef543713a08754f1c90355b6ba24be5d9d6517015630a9ad42172d8eead7d4902ae22e908e4389259c35f95a2a6c2eeddeb41907813feab5fdab34c619da0e472455c6c2a93a511ce043978ce1637982165193b01b4c2af130129b259daf8a81e04cdf5e0136f638d79cd316332d05030f7347dfe4fb274b182fc743e90325dd582d9b4ccfb1b7efeb8536f6a3260393cdd5355fbf0ec5e268d30304a3e1560486fae30524ece7cba5bf74140e4707b591a6cc6dc45adb08971c1ae098da346cb6eaf213b24e79cdd34784ae5a6ef343f36844b283cc09b2234b86c8c16ecbea1786d8c6b75d8e727fa9f25f183892233b270b15ce4f7dfd03cc87fb3ac823e7db531e3dfee924dcc58d693e1c0f8218010111d0463a44dcf0f55cc8de89c80dc658cfed897f49bce92ac816627263afa730159c237d92dcd5657a8e5e638ee6b182b7db718dfdaddde4647b7822cd215c601ce6d84998844f80a862b4cfefab350587ed74491b8fc80b8f42252073bdd82741be3552cf35d4fb2d682ba2afc661a0d2621d204a08a8cefd75b14631877b8246a9e0db2ec7a68c77d0a4f530679045c85b3c6cfa9b927a12e4f3298bbefbbbd7b2f786ce774207017430efe998c1e24abf6e0b599f9bcf52797a3355caca2c810b464eea7f9e53cb273cc2e70471e2cd6190ba3c818c24062c441891612f1d57f7d86cbbcc89f56254de19b56314dfc4b6ed0dc2aa73a5b3567a39fdf6c51a5197b8505a65d4be997fd71d45facbdb877e86ec31e29add61aa306b3ecf61a8bbedcda21991e179fa8236f993ec6c5d41a8c5254b6bfb1ff1c80872f4eda40017835b463e24b8da25c0cdd59f45c12179beedc47eeb75d1ab380f6175982436547a618628816e38d29be786a3558a9c45235d84c4183afab0ffc81712440146ae0e38ff658e2cee585ed95f7e470afd63a66d4560114f014477e42381b4c72d5ad9e417d7a7a3236a7bf28314e02a2ef485ee4566bbde522041b960ac2b138676f1ff9331945471bb515d919787069cfa8acdc9d4c2f1b0ab113d445198668adaa047b8d045ce227c68927e339c729d2d9eab8c31f1ad7ec92c203418dbc46e6c90e7b1d90b654dfffbbb2202b0e0166e69a5b3a105ed45af72b36ffcdf9d3c6eae9b7ae758e9bd6796ee90c334d5a47f8aa3113113db6a181f4b39b049c5c09930630100cf97c5e0033f605928f1440261b6cc1670290c7cb5bc172519bc8488690f52ae96b3bab41521dda73b593702f608634af4db6a287809561c486ec2c1be0bdbc7b8d50b9a2f5a7aae58f45c6147c90a3a6f8db45e89655196e717d26636f895b97cfa96c9477def04486e558b85512248ed9a8e16c3b855ad90eee7b092d8d2bdb50bbddc17ba18a8406e2a0df42629eceab69b626933379fe06b47f575a5d81c93ff3994c1676eee8da77f2c437eab8729d91ea3c03629b33fc70b2c8354c1bbb090e49b8763833ac5174a1fbb0f51871717cba470745a032107ee0c8cd59eab23e16e5974fc00953e32f0b99d6c8de72d21d1a3fe051551db9ef5174e4716510495c7c834b59f07cecaaa517d93055c11aba82833f72a6b43feb5bd9d8e83af76cfb520780c0c92779ed29283deb05a894547f1a54b3130a9769b754f9f6889ed0084d693e41165f64f508e89a454210d9d5e8dd4ce509e1378d8475d1ca49862fd6b0f16c1fae1ae7c7fde67acdd888d34d8d90c4a2880e9f155ece9982afe373b945cecd9c70bf7a19bbbc4865f19ba90399409b611582c7f251a953451f753bcaa2b7cd0bdb7cf878e2b9ab17ec0bce2c54ec1f822ee37222d6779392fae9c468855702dd33274e53b036a4c2457186446a49cc62c03b4b6362fbc2649aa281bdcd559e34955b7b6b2e907cfa2e5d79bef93516f001bf01882c34906b805cba176b67afcc8694d3569466286f5c6a93ceb8ea9b6678ab09a771423d64ea2b6826af49872be6c893a31e5b458bd34021d8aa47e3155308f7a7abe2423460652b54370fb952b4200201993833f6a385315b0bde681697c404dbc97d1a6f1035304ee286719aaecb2ca933a2c82d73c47e3f5673d650f0f97bf58ff27c808188ff48b08cfb5084b8c32718a4a40146f6623211860d764a323c40493121e44d7dfce66583be22417beacc2d1d0de7494e5a1ceab0b0f08fa911160ce23616bf00e985210b89d3c950f142ecf3f4493cb3a1305703f433092989aa26ae0587f1b8741cacc58dbae099e775d365ac6f6653fb63aef2dfb16b2a73a557d5b653337cee3a0ae83fc66e2a041bfa57525f049bf7c6acc998215d3800f583b67ec50db2697b01f1fcb6fc5fdb47e347b52be1ff01bb627f80e70157bb0c045d2b71c460e17082103d316c320e3cedd0e5b4a902e254d5c15183424c6b9741b89ae74b2564ec2da20946a4525f2e0ed26a072a91f76a251b95d25dc6dd66bf3c8a1476294dbdb0e9314ac60ae0312cf18a6f5996911eb3a9b29070159242d5486925d36dabbacd0f7705c1699d823a170934b8d3a4ab997396d41fba32c545f39110418fa814a9c8d2cc3e758964a85100771b277b94b09c9e92c2f83864fa981911f8ed5e0c837ce061dc3f30d7bedb6a0eec189c53c82a52b4e2344c238ac5b80c40b732373bd9bc10f81ff2355ffd99ec47735f02c9eb35b4f50a18f351f28eb3887f93969c9f97bfdcadf82d80cf8a9085a7c0d61c584a4364685c8f1e29f093a34f9550c04d7ac5da8c0fd656c5062cd585892454d98c11443614af1bb96f02d8f7455e43c6e0105e1abf241a2d1bbc5affede8fa3995a2ce461ad78eea3d0a21b640725a4c13cedb215b3673537c69bf71bc4c06ac7c73177bbb41ed098e6031be189aaffdae67c61bd27cdaf6b1851489a332e17dca36b3f0fcdfd9a30fd4ee38509dc0852b38e08a3b1534749c264528aac5ec1e14a4c8985464eb61c7b9c07bd4306282eb34ec95ebd7abf5ee75a7b06dd4e85cc4c3cf25012be9de1e9b817adc74cbcfc7cdaef53042f039157b0ded6cc578ef7d614806b10a0a7a218a4aa60523958771ff797697fe1903c598003fe3762dd3b825221d28c3a00f08bdc1e69dd35ee215c003c16d77e3ea237a69b4b11f24278716078186ad4db372eb1e199656460e22747039e986e111df01c785e3a8e06848b5d3ba6fc44b6fb8c9452eb91b74cf9565358679d6aed096f368795edb49cfff416d07bfd41843378b8d6f315f0325050df496955e80f5f30ed283e73f7718c465b8ce2f58b446528a0acb243cc15cc60c1320489d7941ee8810ebbe2ef5b02d7312105610823dddc02243f630db5d90e12e1ab0d785765f23c318bd8c205edf106ca662c16a1b7b4347be7d4c52a3e14f8ebb4754ab7dd52fe66d7cb981e1114380b282950b93a3e4b87f2630167d5c0388cfe2693af741889c9e05148256619322ce7de8a9efd33e088db5d2bd4f1f59e488421d7c5adf3635e45d126c6f6e03c4cb1c2981c693e1edc8fbdb260104c19d021163fb52c8249a4f04e370a02911f5df2fff100e8cf86f1264334bc6e59d3b43b1db4b3d849cebe47449c82b4f04748aa1f4067b77c5ff6ce69dfdc73ad09120e58e645f83603798a478e249349591282ac50e3f64f9818970e61674ea282b6a6953a8d09946196eb1f6fb4e8d617d7e8d47a5732d154f9ece07c676c360f2c6a41dcfff0f872ad95128bf86ac6134720c44c05f7fa32e390caf526b891769c2ab150dc6cd521d39d2e43cf5abb613244781d44c36532e2f95fc908f807fe363e78532812902951adb8262ada12559948954d2b12baea5725cfe529ff858a3541528940019dc1c133f43bfde64d302bbed95953fdefeefa873febb11756bc27f854d1319ac66abd374cbe8e6fd3130e4285680f3e820cb7a40b21764d90e5d3bebe3b4a1ead69d487e8dbb47ecd4bd357fa05ebcc745ba4c343eca4eacebbb79e3560d6e275124ac9343a8e09d53eb82f65b2d51e455f5a000ba80063ad2e56fffc48becb02c40f5487fa15fe9030e2f604cf629e607eefeeb598968859f69022fccb733a5223c90c1172f267c71eda8cfe9775ab58bb802a78a78203941ae6786d090b075c4ab586a6bd549c705f8d6e002f1beeefdec8b9b668d24b241692ce050d20c35c1384119c62a88ceb2684904746087bf8774f91d355a9dc64e683e9d2871f7b085fe088459d24375962dbefd5fbb9f1e4095333121be54d781cf30cf5e0681f24ce58ef62e4ffeb236399a8fb3d2032930b1009c0b0d2f913cb220fb6e7bdbaf16f9d100b1e31d2526230f24057cde757c34bf23531728abdd95c14c4984578b9d004a204c03a6e560ed8cf31cfaa2bc2c8b4dfe54bee9ec3e0555545f6da47259aaecdfa17c8bf6b0b0c65e4c6fbc3e4cd48cb951ca1caa625d2b54a441bfb9a47fddfff4937c9fc06cdea35d5f0bfc8c1bc2f02fdceb3aaa84253ebe9847811fb05921cde482f5521a82cbf0480d15c7d3193f0e81e5d9b04f9a72e4968da78b14b4a72f6496c3e1d0c37c7d1f0e1a81273aead574a449359e1f86c331c3588917d2ffaeaea4bab42abe795adc1b4f2481ff662f59cc87b84e3163029393c1fd0e467a50e37bcea411e9f0e61275862f542522b2028486e8b2d0ade294a5ec62f001b0d03be77e23c43f22fc2caad2b62a9756ef3dbf7190a2ac0505e4068ca4ffd7187d08d6078310b10b0c44adb684a7990106ea3c244dbddfc0cd26d992da6704c0b462b0eb5338e4c1fa4d4bcef9fde36980a60cb2a929dfd2a89c677078f35a646eea1516f674ab49e865c0da8dda2a69ff9f37f8797f8534c2cf59553e3ea9440b86443dc20932e3da5b0d82e5c74b4df950eba1264677a9b80f4070316258bc0369575790b1bdfc1d73eac6c5e6cf21ae077e463fce21e0c7f90602aca454698d81240020fa6ef0e8e1f18303e30f552d6a1d6a01f4fb0720ec3448fc41b125bd632f5cc4b691cab7287d68d488ba0d766ab0906f95b6a2d5f876d6758a8e2fa658fc2f214cad5e822b2824e3c276ad6a64f63f208b833ec41cd987e1dede6c69927a48c10bd05bd84a6821b775a4281e66704d595bf7b5e79186ef2dd542e4a47f6086370f10c6a7fd2b4e26122a4518e3a2247e8973fe5f0f2deff62d3285ef9c2f48837bfa606c151498fcc99bc68fb3e45f735205c54a6c14c856fdf976b3b4aa378009143ac289106167dc1e535f4a9b45489eb0ab9e05e4d4128cca3ee9d068b48524055376b73ddeb50d840757d911166cc917b3a6e507e0292847735003dcf7e080ad868c2152278f637b7d8f0e0261b84da9d4230a5d3ba63a52ab0d13e4ac72de2744c6f18eb91df77495dff36eb75ed726856851ec626adadc3754d70c572368e94ed58c2793c934653cc22cde706364bbe60458058276fb8567f7e2b42f94469d55489fb4dd8cba6f9e9412d360bc2baa4b29db28e8b65988086684b51946e65f789a90096191b5d566beffc38d33703f05aeef17757669a56438f8e31d86c86094148c4b901a23e17f56fe0a52bfe623598b4196c6910f189f76129452b34f1aa0148f4452612c376833bc932147ec1290932e9bba4a866bcf9ef2c8332489a52bb86837d4a237ea2ae65972dbc87b6bb7a5dc1dfee1b0fa9e77e0bddb26d3a632f7d2dfa6b3b7959c9e151e0d18986de29369e4c616fecd778134498b54e07d16f92605b5109fdee221ed2d285d6d1c633825b5eef1f716d3bac8dd529562d72dae0171bfe6992cd3144b3a8061217f57bdd64749ae508a301fce2fb2417e41577df8713c069286d057b785120d0d4489f1107968177cc850bf32ab1312e0d4f6ffb953324e35c67701e1f69a5441882d3eceab955dac280edb86c7ff7450dbca20cb5c38941425820a4960ca45d95c6cced23a76bc236a0feceaf5bb45d9e22a4f2f0b7de49c3023e58916c725c60755f535bf84db3a7f33336e6e11e135befef067ab71ce87366990bfa88fd1268a71809e6ff98ded7a67329669ca441dca59cfb03a9efd00522bc7dc283dd2fb00bebac1a6063fae59ccd009f96861d9aeffd801b9939d0324274aac517c9d60dfd9d39e30e50557606680a76024c5b09ff343dd23e70b763af9d1fa8de328782aa8f190d5214fa21f5dbc5e92a2026d31116055243803c932ae4f72e1e1c9be644a62dca5d5a0ad8844d7557a9d43d6287df6976dd4eaa694bb55077b1334821db94d54af08921b2280d8b21e20410db488e64fc21abe27ee767e804fb4ab8091b9c500189a3fae3229a295d60170e079e5613c55d2e7c9f97345cb24f349bfd128f327b54faf16a0680ce5cb97c702a2308077b8fbc750a78368d41c25390ca943adbee208d8cdf1fbc3bbddd6372a81d9abb99ab4c513f0d3e8b7b15bde108551d1bbd760eb99161b0115829443dc2624fd1b386e8fb5a8af42c9a018e51fafa99b6a96fa4523310402f17df9b5fd871b27382d5b112dfbde68d643dcf061128debc68a4d916fb306048e35ca967596661e8d08dc54cdb3b0f4f54d058eebb07d9babc620e6840b40b3528f5775ced239af2a7042474a13850ab1d195f0461887a2c73f06181c20a713ad2954b0ff30ec3d76c7838dbdc20cd4629686b508eb1722d1b95dae1c9f2cfbfe0ebe0657237226e7b0780062415b44e69cdae92328df683c6105832abbb76b448bd7d0074fa92aa27b61eb49a395311cf86a02b76108173adebf2d2cb7055b6bf621a0def0766eda5f4e5f32c89d490a07f53552a0b8a69398e05d4767e42f809d47269588a321cc704c0c50c9c7bdfc86b0781670f9637f6dd8f27d9e9a7ccfc42323eec328167c04fd7eea912c55b49999a250a71a7c0c049d8498f4069d20f8b1e5d8050fed8fab9f18969f154e8b4ad6429f4575e9b6bff0e7e3499e5c8b7b9c3411143c05444c2076909b2210048e3cc529c26cc7d24e3e5616cb68b6c02db2d370f33265e10eb783d4141d8c7ffe30c021f17d19004de862ff8cc640c6e31702a458ccbe401959fb987765d055b7973cb2fb1c46b7063c384e37bd9951e9c16385e5a9d55373f081e9c7ded0062eefecd6f0e71be12d1c15e6369bdd4e903af2f617ed8e07fd178e1c0ad7b0743bed83def3422f26e1608a9483f0041309b8f72dc537c81dcf22722b4b4051a1cd864e51c4daf85b17dfb53b3703c35653d443d0c9de57f26c5efca0bb3621b0493cff5f327f2d357e14b6a0df53d8ae02e4c5cd9edc8d394173cdddb8d42d618edfcd981b10bda77682996e59475184115ef252d3be3ea6e2541a2ab53f68757b0bf14237eca6b783accf0fd9de4e1c26f4714bfb65398b1bc10c9388379795beacfdf9eb3eba65cd18ee5b20f70a4fa1adb4963c26ee7403cefe795bcfc3c5f594a432bb88d3bed8cc609589d12130eed672ad7373a4424f0854a2464aaacf3e7f16f670f8f6217fcbddfc6502ae3e33610087960b083193386d77fd67a95359c3598dc6df971e8523abf522f68566dde135d66756cb96efb8d70a3f3711bff2cae75a0aca690d824a3b0ac35bdb46cb7116144d5d2677ce9ffeb105c894e5bd482a47fa9ecee89050b3f84452c7ec4492613441ca06ad7ba45a89219e1312218efc1be69da76dd61245da83812d28351456698a242d0797c4614deed26779c4f62599748d6b489a672134fe216ebe05fe626ec42566282756b8a144fefa17997afb4ae4a7668e0af0ee9477a00db9fa6c704e2b4637a165e4726a53b9d664056b37dc04ac19c0fcf5c4480db83d4093c9c2ca1e7d6280bfdf9ec1fb4967f24e7006de70009c8039d57a8cc808f7ee487720ccf95b1cd9a503b2f1909bf49e29433c4a5f4185ab176a42e61367b1ff608471e0a83eb61423020b2dc3caef90a65ba9c39b1838d36256f144e12d19def1f2c6d1389aa331e2ab6777f937a9ed02501a6d5fba7c4ad1793b97927a7c8ee84261c0701140e7326323ae5f4fa1e970ccda5337d3872eb847fe550a5910e34c8014526d4ecd35d9859c9a561f95b95e8814c3c31c547a625073f64258d2e08c9eb6b116546e787f015af587e3f6cba06210fe64c3e5be3032551fa490ae3b8dc825d897279a7b4b79ddb1a8d0d33643e33184f79dc391c8dbabb1ad5bd5f9df6dd10db286b3d80a59ec45dc4049b831d417a20ece68cbc9cb5499e4b9f88c3362f54fbc1710e3500aeb06bc85c559fee8840e7fbb9da29585f3385f9bd54e3fcca245c91ce2e9ce991e213d1d4323af37938a4af6e3603a0bb7cd4051bce910d066579e307105d5b8b99e19be6f5fb58fa7cd06934c553b8a680b4b92a9bec78f4065ef8c0e08c15faf5049c780547d943fb9f093730b6587534c4550136c1c7500e9735801f4c33a297ca8660e4b25c68e35736403270e1eabcae893904a28b685090d37297aef48cbcb492fd5556ad3e52afcd6638c210ec0eaf7df66cc5d81313b54c07b3795ba31378baefe2bfbb464de685a2660223f9b5e881ae27ca1f3152e14a7ca3fd060c6d92a2962af9b104a20aec43fe9f361db46d451bb143755811cbe53bdd0f3ccccb6fa272492032f27b3c0c592144a2c126cabe64cae4c0144120e548c1905e50761aa09add191d9d889e99e859cccee6712ba2283476ade052f18ee0854aa73a3ae5c257bd9da661d5fdfeda4f525dc0901470b78d115a52345a9cd0bab2e2e822ac49f110c383897464eea1eeb132d9f4ef04138e639e20166e890b7e8a6400f7df42b75237f1ca42a66d43830020f02b9a8017a8775dc6590d952a962fb648806aedf4edb967cfbb614d7ff48822bc0bbc521b8f71f4c00e95af4b7c4364d1ee028e727abee6147bc759d898a3e8d6322e4e1601da9bec0884b1dabcc7fd5163f8f84150e82d48ab340c0df110d92b5d6898e4ab1cab5f6145d23f79e51651183b1a69b15b35f75f18da6802f875046722ded1b8c9b3ff69608bd6dd4940bcdf8c312f66b75c01f56effab29ea54aea82f7619d20bb72a65b0bfdc86e78c9189e7c07376a9b82bbd4c7db8b8bfe845ef9df6c6f33f9ffd0702b407dec5862f383c91aac4b9ca54c30441a7081a8e5b3e74cdf6ef0c7b7b08c467cd289ae29618236a76e3ab604a1853eee33ffeaa85bfb068005d03583d15fb1a5cb71aa2ff2bb85046023b29c67fd6bdb88f7a30a7cac57ee99d0c4fe9447983f4acae1db097476170cee1468898c2c7ae1aaf5600e6b4957e7e11a8971a0dce00dbc20b5d39bc0f4b941da926b91d4bae4a409500f8206ff15ad3dceb447ed2cede015a42ca87d3b44a1103db0639fed4e104306fd208e2acd28bb4f72f39f79d3d583a024d77e662745596b89c578fdd1362315c45d63290d2876efa474e5e7424a9d00adb4034dd900a85be5b226fb412022440934f079cedc5bfa0435871c3e93b3a033046bfa8b2acc1375bda6e9a20ec990702e9665c71e2d5144e17893d7ce17f57db98d50932b50b92430dd429cd083cbb3ccd9eb70250ddf60421f07a27cec43641065b9bee887e5c5bc653c6b58526b0010960746bd881473f163dd4934b9342af66eb0509982c8d4401fa34c3ab682be18cbf2762a5ba6d0e76fdfe086d76c9610da490888ed8b4f7ba9b62c332316d4398a0468ead3c355b118a7eed9e5a8c1a7e443b56a32f631102f4ebfa34abdb24a59003728fc2fb244193ede0c5b259990205661b954822bfffcff909597749727368ac94d1c8ef186d042b7c2e6967868a45ff261de181097934cfd668048a6d9ee8c6509a65f55bc2a1bc606735b80f060ccf9391cc75767b22d7ca6bccc11867e02eb76f0c554a464221450ebf9415afa9c62d47765fcf72c1fad84fbe2f754b2459b26d11d93e5ba33f144c5043aef24b7dfa51641edff971930f38c5dfecf47d585d959ef4587cc0f05031f0b68cff83e6c1adeaf292ecc5bc2d1fbfe9e7f029916e5b340167fd8b5178201d887e36b39b6a6901db0c2edf3b60c8f1f76db176ca170b121c285f931897b06f239521cd34b90e849993bad1111cdd6864e38a7529babf90da24f85caf30e9d54e33c522dd43e779c62cf8f3b907aa61cbfe01a405500a75a05e768ff7e446646478a55bf910ab88a0f81425f6cd2c7fbf34bcedde7b78ad400cabc4c170bbe5a639d266205cf8d54aa5449f6dfbf4a84d51127919d55f11982ec375b9e68d2f446faab9cea01fdf5c645f45c3c32e76f41ef62a24dd16afdc27d3df372b4ab3e7df2052c7a2241071b11408362e1d9bbabefb0260657820e31737c84a03030266fa87d49d8183155098910c954fe1fa2ac9315a6f4c1de4fd1a24c6875bc16b6bb6ef935b9455fdc4f342bfb131a32fe57fd7848ababa208154f9e1ec23ec185e4865b130f7a1c718caf36a80b005f7b4e7576f59492fb6722c53d442bfadeb27c93abe6e89e8ed1faebe70a2c4d7f9fe34aa3feb6e7a998b54a0860f7e004131c8df5d036c2d8af544e2061cd4e3de9a6951c265f8fbe6a435a52034f23bcd971fefe5b10450ac3060516046e59dc5c0be5798d5450b1727416ae7431434a1fd5eea1ab1dd619d64dc2936b4e1c28fadba624dd4f294965c1dceaab7c681101f65c7a42bdff6796399717b49ee74779396a27a6574b58367114df6d5554170d934b7c5e751e78f51ee7134eb9c16efd565c11052ed3a301752293123b08d9873e58c152d8f444387c516b7ec05149adf988f02759e5ddde3301081679606d17bb7134bfa736076189ad167397eaded24cd0cf74c048cc254714fc12274a29251f636d03335e9089bbb007882f0845ab40968fb4e1f40ee2c2d26b3d3d25af6e6f5bf217121c99b06711bc962411295f996c9fabf38f06b4d55b7002064c0af5de006dbd459811abb44498789117947b4aa075f6ec5a37c0f128f4f7bbe0fa8b73faf004abceccd7a00fe8d5448aaa2c2bfb92f1571a6c3991eb856605acc64203275ef271183bdf916a2d8160ecada20692cdfdd6204dfba3a6edecc08ac497a509092ad7f37b39505806e7d1db72c1cdbe15db3c0cf47d334df71924b836a1e6ea21f1410116f3735f0b7da434b11267b9a82280e43bba336f76dd4828cbf499298a9025edbad2c0b2f5cc018c645bb13547cb9e5d3dcab5ea3fc5eba8bcf66b607fd3a4e2af0c2bd4bbebf29df5e49484cfe0cd0ec47f10ae6eb255f85f1586de3615acbd0d230c1d1303600f246114446bc351fc3aaa115a03a6943e43d5469d229f39d40865ac5c79431c3b5083c2414d6e18d4c9f9f23eb714ce7f694c1e141a0a63d41f10c1801c035d2f4751a5ebf2adc066c9d9366771af251503cb8148287a4929dcc744401893bf9b7feb5d560006f631b83800ae9e1b276dc39c3d7d5ea4d584c54515b7b8e7dce35bd09250d2063770e34ee1ac89c47c1f00d13a0432a32b01a25efa9b3b2b84ddc2a6bfa99220297d36fb355673b2d9281e2b88422e36cae656bb1fd69040ba6ef684f0689cc68a0c4b0341f5e05a1b49cd28750a57336472a830e7e6c9def5899110115a591c3c74c4c7f6952e6207d06200d37a6617ca9cda4c4b7445a0512f7bbf45022672e061ba62e50d438eea82a13f8c73a2fb46c32f8ef50ccc99efdbb410ce560a1ec91e0b6273cbc391148d1b53dcb51086e1f1901b7707dc56ad3b7bd382c346cef0ec3512068d1511b346484afc7420e29d8dfe8b74babfece2675ba57fd84c4a77cca680973bc5b5901cd5dc46353668947f960146fd75f921e13ddec9686a9913c440aeb59be3e21912e8994c32011c6bb404449a3ab6a64a8b4e527f856e8b38a16065209e98cef48b5ff24974ae324ae8405a5941b46ca85c311e43d3247ece8d5c72a53af3ab55fa20c2b20fa495f5eab71f7dff016f0506333fece4315f9a517c5c926835dc14916e817707fd2d93a0529e1cb7025f614b15d7182daa034458b874a27c525a7638b7942a6b44eceb12533f3c2f3674b4b891e145a13ec99c8dd8e62043b1d049bb929bccf614e2eef86d981d0bf83a88b0813e6e0e2bf89b0b60a0c282fb57e2ebb989fb075f170e9804bff07632d0b531323c633bd7eb3d35ad9196873c3548ad5f2779c269632aa2e1312a4360c64c10c616a711e78aa10ed98386a53a66350c464634c5eb664fad1fae9527762fbf8c976cb1c94df359dfdb0bf5cf9b3a4004c483c2de7be1a4524239049ca28341f33d8f4ba3b41b8bd97764937dbdaea71c1cba2a9ef74458b526059141d7134ddd66204d00b4cc92729e0112b67945e050efb6360938f488674337074e351e836923dbaf9f90d7b3cb49284638d20909583760f4bfb09f66cc40f9d2890e520f178a5823023732b4c9930d8338a715c19dfc04ccc727c2864a95b258ad71ea4c7c4c5d3eb7e3d1df0dc606e3313a4782aacffb4eeb4f36c266397a27a7bb4027fa6c6ec7293c2b2f82072f631f4e44091e2e9559d7e12effd7d75f85f0417b86e061a97c47527628ca262c04be5d0d8b343410b92a9a2cf206d5c7b88720b79a472f3b76a5719c32cfb21a550f1cd4e2e6cde6ad27530503855d4a2df4fd89edf048a2f0f54fed9d603e2ca54a451e4dd86dd5be47bc6e31ffbacabdc5a767b16aeeb8237b5415bff7829356ee498969b2c880f8c72e399a1b2fb24ce0731b2fc8fe3e9e1f33900b98aedd34df032796f039185a28d6f802022bd7fb036dcc463aad7afe7c204a4895737da4cf5a920dede937af3f70e16a5d0b547b63c8c95456566c5d96f993cb17c38a52af4ffc7ec000dd86e8f9f825d1019e673a7e565ce6e153635edb3fa967ff3052871745c4c335cd86150c028f7d4cda6cd47ea5b447e2360a8b789c8e00c765a5c19eca2747d6fbcfa2e0cba96c8c1c649044284214f59fd4f072aabaf7d7bae35184b57fbb543753d04c3f648b08ea6ac53a46b2221d97b78fc7b4878f7bf582f7efa5dd2aba85109760121be4cb8f93748d3e9671202324f4083aec3aa1c4c56a27a1258166cbf54f6084984d74cd779f5b83770facec45673ec085bf939c91bd7f1e804d4da2733f73f6a73e834571d61e3177b5f3c7f354e9a32759aaf5f3f7f26d630bf6278a2172f5002df7bcafc6e27599d3286c94df4916a57866c2a4f2fe6cb302bd897bb9278ee128dd5fc0fd38cbbda050f3516cfb9803b412572415d901e8068d8bbcd14877826e24e8bd928b35e474d71e9c8bf71163a29f56a63ec8c43f20ba1844714283b21f6dbc6b37f36a21300fc0ca361d569833309831b2574bf0b839a81e6793c51205c6bf65d2183d3000ea560664315fee659774154ebdcbb21d69cd1a58ff01e207bfbb742fe967cc7e4de30c1557d83efb89865503486e0b9ec6c026cf0f5db91fd875334ab35c318e5cf53ed182556e5a38257303e753b83f5737be7c21fc91355eadfe49e829650ad3e748a96138b0e7cc4ad2f780e154c7b5c400b12909436112ad32fcfbe693e3f9ca5c114beb734f4c63573bed75f72e1ff68bb05bdcfea686f21f57d102457693ce9b47fffd8946303d3040b7b1c8fa2fc5353558d17da7608ba783c6ebc17fdb717f838def32349f6c46ab2988a5e02737e926e0c45f5952953bc419cc9aeac3636a410199e3324e0c640910e8ad471dcdd02a31439567b339479db86a76de27c591d25f4707af4ad06177e10bfab6aa79877f86ac109cfa532d8aea3cd2740880f3ef80cea67bd37c45898ef50da21c11033bb4f9fe329f11326c46d17e1ac04ef0c859fee78048c066335165a6148433c8490c125947fd80183af394b27eb1a29266a75fb289db8b020231a1c1c7419c553d97cf117244d64e8c656306c44953bad04c4408253147f2c6f51fb457af0c2ec3326a891e9d6ac16050a9f4fd075a7c0f9ec3799d8195b096bc12cee9a6e7fa8e5ea42e0006bcfce920a75e5c5ce6ae6aedd742d6ce8c810c8c09ae24d885080ef46cfa4e88a61984d22d0a3d8b2a07932f3d610b0ca0459f5235452a565275dd9918b11d7c0d73947e98b6e543725f5997cb13bdfa1b0165fc8e874752523e4b9d36999bf3cec4828434c46fe1f2b2713c7ee164bf5550c1e4529a0908e4f57ad964f2adb834cdebea822dfcb011e473ab0f1f564ce2a63a9aa3f7a5c78a75105ca6a38b796164951f1f753f61b235379bf0c3b0b50992f17958de4b336cafb188d72b0865d77525dda40b08c15649fd2faadac732b7e7076926e17ec9f88536cfae50f8ef70e6bca19386b2dde0a74f931e3358377ab0496caa63a81392c89514132e3ddc5274761cecf8a3585815ee83daaa9422aad5b026533ade382188d0c77ef554902f95ec5eeb09a80532a3e373431b1a5f58e61e6d36d530fb13ca4ee7055ac96a2c8d258340e3e6f8a7bc9e5394ebffb8a175d42f3639776e35e93529aaf58437767170b6ce964ba98effe20f3c89516688e28fcde42abe58a6d7300fb02a22840060a454deb28998ca48dc7803717307f6510955698d0d6ddda4598676bed09b4b23cf7a6e3cffd90719ecc4af8b02d9f2809ccbcfc02a50d4fc0bb01ef1ecb3c9edca2621007eb560873f81e884e08ca14173c18f623f724d94dc1101c8524e9b4818ef2abfae2eaec086d5de7130c85a23805140dcf394a760e39abba6f0a6ca6dd41628374bad197d627dfe4ccad91b028b5dbecf24a97a6529dbe36f0b5386bc347a0a446a76d03dd2b025193a7c25e09bdcf9bc4bb7a64054cb715e7b4936d9bb7cfecd1d2417827eb040f7153f87142de3995a5d03d6461f5005d926a776bdeca533cd1765a5b76da34723b9bec0e59a616ec8b9e1a9cbe47de02b9b7fcc17b91ac67cb18cf3a23c83b90b4d269be5ac7c8b5960b008e938f4517b1a5f8a05457b0eefa1e7f93fe2c123421dc445d3979f32a049c08f7c9c1c05c875b55c02c368e381a52e85862d422ba215b53040bde8f070f8e509555335be8f226c15298e6d3afb2b834c630131e594f81c8db6932d6c7f98cb61aab85ffec4029aa09d73f6dfa671c93b3f3622f6d7faed7a738245e8879c55d3d76b39db0154de46b87b129e7c246dfd4c7e57de059e4a05b50d474b351993f1da44f32ca30b8f953f102741343e7ebd7217338514c527c3c4d380bb8f5e1d82ce7f762b9e9b117906a325b074e04f5a6e1e552ed78a31d2857ebe5ed763fe1f22991731bf4cff351c3d2b9c1579d19d5dd1a88206ebf17dd7126374f54825f3cddd4b66a8024d86d0c25a5f73d76703daa0db7566bf458cf581553fd1f95bc1884661fc72b28349a791d3c3039cc8ee58cc3ef237d01b1a564822b8c634bf826036e7b7017f3d5ee7a61a6781b40785614fd636fe402f8497274fe29fa83ba22eed812dce2a15e2ce478eca9b16827003e12f4b357112fbc22dfe3fe72d09dec3f630a9fcd2042170c8bc5f115164cf4d30d300bad58a505393ffdedc0fea64ad76f7f9f1cb0f1c8017c9b06ffc0eb3c12f1c23789df3cfe337d53a1fa749273e1515bff0302fa3445b114da5264fd28be7347ce5179b63964252edc1ada776a7505f5a68b35534936dda9823b56c553969fc3b33f1525f91092bf84e7512a721ad32d4c109a1c0761d035b1d26f6d76aa86ba1549c1f2403b09db5e9fbeafd260060830066f6f405b4c7d989b0b46057aacf999deeddb891d93e7c8d8dc146607a6cb5c00fa56b9648ed1b7d3d9905070f0d9d6771308ec23f22deeaa1ceb4697c1ae0cc0ff38b5f482b64707fe367deec7487a0fa2470503e45d732856af63d7a034bbccfdd6a52c75080f86b59a5f17b4ee714aef4fa6687a17508bcef4d752e5776fdd86f7c1d63c21721c307a21deb0a7116da207cc118feb26a74d2ae3e37f90fcfec613bd18bd4aba45e85a1ae9d13dea2a167d611c83312126b70080d7c0cff954e371f616a18a3d29aa597baa292c00200e50b707bc946b935c7169af4e5f5ba21807f7ee3202f1bf751592be5b8c6c89677de9061b051f3d241b6717cfd810296617b3e898fe981c1635769ca227af8ab773b261a0e08c3e5630d13dbd442a551961b1a3c96957e9d1e403ac2d2d892a7349be39fede45390973487ab389bbd6526c3f1c6eb7001cfbbff955bc1a4de07cd33e19e4b5b906d0b75c6b633658a75921a800aff8634bb7b4a5a83c3f4a563cf2a325944b9e3707a1826c37adb1488c31f0265b2003e1ae23318a1f5801dad957e72d1d81c4fcd55c9c5c288f4ef9629fee95b084bd145bf0f7a176d1e56ee22fdf51fa19e2f49b8073f7253ca1f3afb4c5632e83936918b8b7e965b57af1f2dd2a6006114843127897c29550139bce521aa1314b3b65ba627e551d48bd1553cdbb4141f51c1013062dd629b604b6cd0c6c9a232bfbc7ee96167925e2ebde38301e32cbb28772405abab8cdcb094b06fa671ab0c888d7490db2e6fc4f244d4458e768358bc6d407d1eea9bf3b748c36431c38f4c62f06b862ee554ac2f4be2fc29857798bd2e92846c38a557af6594420b6e2e63ee45bc62d0420c7de7476fd33f357d95d138586aaff292a0eea302c91b1fd3b525d787d2a9a980987491465b8a73ef7ae6bcebf16471739b12bdf1d0befc3e2bc45462cd16e131a2ca31913681037b2ef46e37a2e4d07299978d3d760ac70898f9c2f25b7cb157f4a7e730e011f5d381202cfc13637244ec42b0e3aa73b9117dfa3ebbc49d77afb92fef7fcbcb111831f381e800f107b7fd7c577a520e305302b25d763a34ed215dd9f6042bf9c41c82c63dfaf572b48ed7619453538ba5eb7996e429f1c2372214b4e4e06369b39c0716524779bc5f58839b4c665a47f753c1fdf093c0035fba2fb56213de6cc2f4562f433b532781d8c8459acabe06b934717588cc7cf1f8a475199e89a5e0011b00780282cd6fbac56e0a608d3c817c92aa8501a07e567b773aefbccc7062e4183d3058fa588525aa160ada501fa44ca6a18b12e3c39beebf4c903ec42f82556e7c488854888e1c6620a28f778dc758fa1457a3d268370e4319092df886b524d4bea72850d9ae2d2f38aed34015da139be4eb4229bb321d90546566bfa2f870abd1ab1634346ca7b4bc46bb4f7d7c3eb85a68865c91097ce69b91bd4cc4bb506dce2e1e359432767a1a6cf5f1d2bbd98515353468b7e27f0c6a44a0b544dd50a76dcc41c80a71cb536b1e921847fb5dcdb1092b101059042987a316b2c8c2230d9a5cbf9f0a8b527bd5c77ebf24a6f4d6aff76f34438e4950fe58e502b402c72f00d11c559032eea84a0145272bf30c67f62b465b772aaaea382276648b1bd5b66ec9abcf78153e2c62da22b815d36528a25fd6940cc2e6e331478b11617fd284b8e57c1441319c95422788b437703f38480dd1230874b53c46db0525fc44145efff2aba9c6e4436b8ac5a7928bd143ee9f381e87fde9da22f332520bac6a623bbec28f012e7b66b7ae9808a3b6036a00799710b597f7ddf90feb0cac8a95d04990fcdbab1185fac750f8236cd8023dab7eb7570baa695d6d2f67ec29e894526e799286db244bda81161f2d0896b1c11f3164c38d0444538d44338f03cc88c6ce2f5215f735e714bc50b5976bd51f67b7e1f1e4eb83e410d241d79189afb4e62958d9f53f1f8339cfe5d809c36455e3b5fcf1322cf1df46a738643dd6f5bb56a99b7c5eb44fb1b4a91430e819510c04f586d722cfee3893f0130208e2ac72b167bd932b736637b986f26483fb60963edd21df6ce9a19d50ae07ed8e739201c6341cd697b0dcd0d1253b1c89de5500ac64018d6cc1b898a34c5960f9cac59666c1fccf2ce94857fbb5611541f3244afd5526c4e35fa06d4493c71f6a4e08a0f110875e85a37a7e3869e2192c40a85a68ac0336cb953f55df5d854f48e79f77624800084f0cb4b6ae0e0c5391bad70a0a7ffd7183a189763d6f68f4a14d73ec9475c8da71df8195ec1aedabff0e30cedbe3c0f7a3a7eadea7f91159ee52931b0040c82217be0755d6ac91e02b6e7c0c7c1514b9df62d126959b3b9880484f4930a0a175e9f2a8b5d68e674bd7e4b1e8188c4ffc614959097b86301a484772f960e2c7d7f2f3ba26d5a2c8172114e314d22b8ccd0f3ab653401c01d4b5e5f3ee51a2041074641c57e1305ce6440b6ec3eb723a1ef4cc55e345b0abac77b1898fd3fa76b9b6fa9ec265c30e1a11c25b5109e6197194c28d0748390bb3f1e1712296f8f234a2f229fed52a640d9c27489d3bd52988f9d39c6ca61dc42b3f59fcaca1942a38469322e360e720b3ef060094758fa297c3e109feff937b32107fb89ab521ec71dd2bada56fba695c08fe8cabc6320432aa625923f15e5cd904d07ce1e1bc11f8acb0e754a48fe97e9bfd4731031b5f8e508dc3ee567ea0150a25b05644594866deffa1e4fbc2e60f37b6e7f51bd445af5a9827423e1c1949d7ca176ec1c1f44d00cee8aad4d5820f2990b8f1b65675503d65bb73ecd8c3448afc3c7b353f9e8592021fbc72378e6a0c1e0593865bbe310dc4d41d708232fb0d897d06c51d7bd3cde9cad78a7380192ba5351e090d9a2405339c738e3c755825d5d18cb2c051a84ed0ad06684c555d7c4d35efd620d3456217010888fa699bca2269a0164bbd7ed46fe354458278f3b95ead6ad8a46c8359e66b37130cb71f28e1952f009d58495cf82619463fe29014f9ba22d469c8d349e27a6a78b26dc8973038d7a44bdc0864ddd46364a74d8e49b3f4a5e5d0b81b03fe57d7a813b47f6eb2e5ca0352f55d2b5936e60674383cdb002285a3033d5bcf26af296e9de5671500d29ea08b130d5925b7542782772b438b544f296725589daef471ad9d80c1fd49bcf6f55f923753666ec516f88c993887040a71d145248965a761f6bdc07bc3a2a209f4ad36ffdb207718242ab959dbe83824fd24dc4e88f17c53beef0a768651a865a2824583bbd766813ed8e0ab8590ecc1de15e1b3bc2518c3b2dfb18e454a7e4d53cb5451ee46ac6639e4fe64339e037bb754e419c119a02b5f1b40dab08d6282a2f44ca678018b61beb0e32083efd51bf9fca993ad162a66515d5462c5368d5bb464c269b82cebb9d04c2a1acf2cfe639c947f6862f2db7cf131b961002d294dd07434e96d69371c104fa03d4329077e19e449dd7cbe2d1bb9173cfb72bd65cf85a8b18f166a3c8c399f1e998529abceefe66966771aeea897fa5548740d706702d512ce7cc1977998829c2a16942ce2ba356782d751a9e2326558488ddd717904d4990b0d63b7a2d4a9078f7409e7369cdd8f6f169db8a4a0690a4cca99d054262e87067f289f40b7197a27197afd911b125c0e02192127a6ce2fae7875049ec08c934872de76fe95db2549ff631c3409e87718560fb428190db714d8500e27f11e2c95a6928589acb1c9138f3862c9f3d1ea8fc3676eacb1253c32e4551e5fc009bafa62784b10481e9cee5a428076e43750fa64fd15147d6a68f03a1a3d1913ad2bf9e142e9339004e4d4833f130b7424fe9a7586d36c4d717362a4af9e2952360ffd6a2014c30c5a5d2e80d169aa67cf86281979ab59fe4fe7dd0d1489d4950e6d2e012e530f975df308fc237c5296f22dd34513512e2a8a85d434600090a0bc59b946100c0ffb6bce74d95426382eb235d93c1967e1f2b4ca5c3fd7d1088171ac235f80b3b4508815acdd55d9dd0adb0cf6629fc6e6db7070310def873ff531ababa2ff19ce19c6c0d964cde3ea7247571de956c9decec2a49486a54ee1b598d2356113fe26f907c06111752c8d7b1024d498fd9ac9109682330b8e151562f6c86230447cd8d3c13d8d0e44b1bb169bdaa5c7494465184fadfe29b997da96f40c5edc322bf534e34b56963ea790382e047056ae3dea2ad47656671acef5411169de101f9e2a8a7b420e2b4c50e7b7dc953ad358369c5e6e6d480715152703658cbbcb2b7ca80f74c4aca12f5d1dc8033d629f850b9ed4495ab44b1ea7a1c63bf89bba5046c522f39e7327a222853cbd5835918e9fa8fbb832097cfdc14510051f61ab9bf3880ceb2e213e155e3abc73ff3afd3c2fe932dbbaa4a74252ff16f3a8f6386786f0df5fccd50428ba83c9fecd746bf02ce69d191e8a754160f6305a222f5131ce1590a33b38f1bdde81151ca93aa0bd76cd2762bd0f36a9a7fe9032a68580cbf32b1b97e535bb6de02de7fa1e0142d12e0e73e88a2b3ce38015e44fcb15e49ae1decbacfaea22eeaa880294b77dbba87c1d4ad857e0ea4682de33b32e33b7694c0f701d196672f498202b0f119507ed6bb7cbbf24331b4162c664d790fc4d17246a217d5ae2f2409955f6e208b0ece6ad0c664d0a3563814543f61e190706a6f9fb905d9e4b4c5506ebdb993a1b3d01ab655cdc8d15c9fec4dbf1fdbe3009aaca4454a3ccc825d7891b9ab01f77518fc3c9e7c455f2c6b5aae2f0342f3792a56ab8c9619410b847bbc4fbd9874d5fe3b803286bf427a32a546292e39aa8f21d536e97c406048d6321a1d7852ac8e4a9a896ef64ed03b17ca97af576aef80c232844bec4e4b0edce443211f65caca0eb04a5d163f3db5b9ea24b01d2710c4db86bd62a910e2242fe23b41444187de72ef97b5f949bebdc5c2a1246741c939a3ffe8293c0d881e7b24149b20bc81d890c423edab9c3bb86d6b1a2538c67b1b47ae9f0f9c4723c8bc35c39b1fcc4ffbf3010f218826e58655d924ee02677901af37c55476eedd70792338c7130d3bfb217d3b933a6852c5615bdf0c6629d5f2d29c3e740d714a9b45b051cfb11c084137e40033a73f928dff3a6db41cf7b849df1b0cdcc2da6da707b6b0ebd1a497f18d2292a5e85c32234fef12af6b26ef32c44b7c1b8283d9cf516a4434628b51d0cdf099e721182a56b639891c043a0586df278a816373af02bedb61a21d5753320413c2fbc091809bc68e8eab60d0aa9ff964a12cb40235b00950aa3446d2b41d71fd5b224d21a21540653c916e28232e1d791629e2073f72c322931d5dfec1657e006db36e672d58e4fee6f06eecfaf279a65b390ea30d1d900a2b5cb086839a35412dda0c777c402f05a9d42f69571e16594e62d9a18789b167f6710c69cda1ff715a3ebb64e633f63f9c744c558914c797e2798794ca7d01126496c860abb45e0ef68e5e7807c7b45a41f7204ab4909e80c95a6c66d43cbeb19b108846548935b139a0f4e19cc1e1e055125aaf00b0a8d863f994fec2f6bafb9a44d5e458d15bb72dc6362b02fca8a5ae2c3e84399589c9c9495c5fe123cbe77689ffeffdbe101f0b7b564e35b08a1e22d2122f9afc4798d0fd68491817807328132435c947b98d65363341d48ba297ebd337e2f498e2a9c94e6c765c2e3e87bddf32a15449f5c0fc7698a07102e4e7d58711a707e1e3334ebaaee2bb75c66478ee1177ff25c616d28ed50f850b79a9cd9f62fd324b8bf9a25dff1450095a775c9b82d938567718643d9799e64b465217483d57af4878f35061669e4c3733010bbe74d55bebf9f7ace16f4dbb49ec0e1d2a6ea87921ae63ca0149c7879be0fb1d4c9b7c1bffec018d1c1a40cb763c811d373626c234ba33277b34ab950a1e42922081e54531aab73556b3bb660ac80f87c6117472dcaca5424f4004a5852a4f2c8f4bd4d97c5e227943b39dd032c7a4101c65b601440c08322cece32ecfcf1db4238b399dcac6502c706bca763227aa00725088aaa18f7704abe9c38d972da3aeff7b802254a74739548f86c67141a8d5d82b6a69589a0e892a6d0409c547ee95c64fa8b37773016a2db7f13dab706397645e45bf75ef606b009ebb98e4bd1bc1c3fa19ea782143f667f2dd13ae7ab80804379750a0b73e1d9b727830c4f0df9ea86db55225963d2d92657d3b00c18e3e4c080269c76071dc37ededfadb1fbfc51e9d52985d079cb47ea86dc63c909745390327d449dc6ce8f4e4573f6247cbe175bd1f4206f7525e2d17929748efe7f7d818a4deaf6b7da42d0c8622005552367359ebf3c6a0cc47eb40073f64c06db39220cf8355c548a890bd52084acf584e29e25221aeb2db24c560ff9e00b154dfec56e7e2d01ab765b629f73a08dbb794cc896a19df81e3190a72178a5e79969d050eb7e8f2031a1be680b414097a759d48d879997a61b703c10ed6e1f3c823080d0f5f693cf18c94cbe6b63d5b48f1c9fd372cdc3f5b0802918f44d5d8a8ea824d0402ed4b09e8539551361f0e90a058a9cb804534fb348223a992fce90d06abd0137e038bbdacaf5a7dcc9eeaf139c2b0abf7983d12da2bea9a6690df17991f0261e749691dcaadb9ea6a565cb5649d84295be9e54b534e3ef589d2c24ede7ff211bdd7aeffe26c0709aa2cb1ec909c6242b86c38d4e88c23b4e50beccb50228637d9db373e53aff59a03a97db6b31600214cb0c8cd4b48cfdaecb03ccbd153e731ca994080f405eedfdb395487608225273aa10bc06095a455f694e733d17f684201973fb5592df4da807d567089f26e0efcb9c323e70408d5262e264c787eff56dc5592e04baeb9907dde8034a0ba46db47419ace373ea17119c65f212bab276e28227e2d71216b32dc017eac0fcbb978ed0ebf1e983cb9058dd2d1ba67529064d385c992da004e54914d07628a689cd007c51679e7bd4197c2d9fd5024c3e01ef7100e6e10a984ecbadb2dc1cb630cf9353f0f1df41389dbd534d578d8f531504144a56e1c0bc57e7286f6a20818b523269ddcb50c0ea14a12620c5e988478599f2b29b1f1ee8e20a32bd7d6c3b980ae48c17f33502100d866f1441dc3a5b64f52a9fd7682063c95dd39de627f5e1560c49a0674f71c03ec8bf04331ec32123c15e04cefae45512a54fddd0108413a4c2d0e8b06f247f0b14f104f6b30333800294919d79ee45becdd90541d5ddf618d15b909aae84f4f7a7ba9cbd103f3442fd78737c107432eee1c8b226937fdf30c10bea394cf23ba8e1a15ee088c70a14129fcd48029ae74d2f02a0e71d65e66e75d7e487526d8a5f0cc057802e876c2120e51090bdaa4d2f8d3860b2ab6ec3be22c5d05ff90623ab85d8c39866421da2df1b4938acd68e7ccf0679b68d30c09eac22e9738732c97bd587bd7ce7a5496458942b2ec38b54ab5e59886f26484fd5489631da7b928934d7373dfc06ca54707020ae887f771682a2bdcc50adeac496e39ca5d2cffd19255b5cfed37d3a74c181b607f4959b5264846a7cddbc10c1caaca0d5cac0225a3eba400100751225a2b01d43915e5e71db8e57b1a9949ff781fee72b44a860004f34de3bbc5fb45a10b433db09e8f0398bed1b1e3226f6fca18515125b0a850a5396d1d877e2c43532237623d7120479c8e8b803501dcb727b15503c33eac3949f02786dab65cd3940cbcfa3840a6b2b8548a6d760bf373366f507e6087df81f7ae70985d08cebb6e5622e62dbd247954d865ef616a7dfa2248568eb88e5bb84c327997d8929bf33e408eb4028c4364a01d3dc770b0ded4c6d78103ac0dd56699e207a0116d6539b033c4be58157d64eeebed616435b6543092997c0c7a16c5281aed45364eff6ef1287b081818a0a1437d738871b41cf2710a7bcabac24a2a955425a38792b80934045fb281f800e4a20a3f9bbb273e902c60f5529ee6663a959fd1d5b71885c4017182f15d06d621da47a91b2d9d7f083f60edd4eb0c79db3487b8814e3b8d30652f3043fb0d8477999a7403f8b2efd6a3956a2e4d0526f962aff11236b961bf373c0df9f8021af5603b2016cd56edcd8bf8f04175b314cd277dbdb7d8f72737c55fa8c70dcaaf5b0f59f7dfc204d5ca2f12753f975181b06872dacbb5c0a6ccee051be0f0a8e61fe6d2ab1266b5f71a05d8570814b1b7589487032dce7eef521268b821adc2819e7e3b5eeba6ef820c8f427852b9aaa638e5f756f598e911e41539cc40360bca480d65abf53f09d925fccb7cc3b9e4658ab5cc0102714fbe118b556a9dae5ea1a067c9920f4adacd1c7cd2b3e6b82752c4a8f4d334fb53da77730013d1129a68cf5f00b235060cfd2f1af36f2a7ccc0d7cf8ebaadd5e22833ad6439843848edc1b0ac726e082ac36c94943f7978c60f032a12a721832803b00bd4d93dfce8bcb2582d3af1b71f142352560df45415f27ab449911fd3bc217b7d2687212c1c47631f0145d973b45a402f213f931363d52d297dd266f4835fad7b317987cf17196c74d320064a5ca3d7c06c30adf480f07da2b4103618b0fb4a1e42fea347f7e0c07754f26479e12bd8ee6bba10eb076febfef082ab605e60bb6cd04b7ca93748a326e0ce1cd8f81e974d70da62d0acf0f56d0be8e8191beb373342bc868568a9fc53460fb22550da44c3f9fe2f5f8606c2c88a0f9eb174e4eab8f69bb8a2c7a74fc24fca79dc951d540bfc3f3126141950f34d3cc4df02977473764b06675e648084dd40d9124cb8ac93b1416c6e3da91c2b277e7fb0b234812d4446449619cf3acd89bf204aed40a3e5b8aa094f0deb73446ac65c523291f136a497771dcafc8cb12419b6b8570b25e85dbdfec3d5b8462b52a6cd3f070d7ce596feeb4cdff9cba836640c06e725b50c32df8398ce3a26b2fdce1a8865cd410fb2d9b5ef5b375eafa28c6b43fdd18ea64af55654fbd99942790ba276b794891864304c528e4de736e0b6283b98226801f4360c4468b88850c74b069e6dd5905a86328dc74dbe72f02a767e4624ae2bb829f704d1781430abdcaba7e547aa7f9ea1aac7a882292c1fac6c63087a7fcd0196ff18f12906b609845aa9c4b85001eab42928edac1b037dcbe91db4fb806e700acb4cba30eb0d662aa18f71d22d989bd29e586695f1635480778f12d86987fda3cbd4fba15cc40ee6367d533af778c1453b3df622e21c86af2d9c91beb3835017f288a9d170fa845208a291e16457b1150407b7439f918e037d5ee04c3ff960243f05797edb616830ebf695d832aa14750320797d0042a04fa47877cba55fb3aea4fcbdb3ad3a7696cc74ac3bccb2e4f6bd1f7aeb3ac364be94bbcaaa8ecfd7e003f90727dab1f9cefc9824d45e7ab291310f49ea9dd8fdb7b5b30d57162c52bf9e1ea0c8b883f8030cad8bfcbebe22122b50933fc4e00411487ea0d7d114cd6dbfcc8ac7a0c43dce4f3ed71855c5d2c3be1b40dde3c20bfda905721a994b062dfc072021f91695d58df73911abf97426bf68fbd917db74eed49a6463956bfbdfb77af685c1e52b30278db7c3b142b8a3198b1391f0b0b81f1a36c6d00ec8eae09f25794ccfa702f7fbd8a9c4e03f52f689478036a8f232fbae466d66f8c5201241f3ee2f34b749de2bf985f43ea8e4955a841517da664d7caf819912980157857d306e2cb37eb28cba5cf2b6458bef80f5b54806c1c3311e56bad937da341eb4f9e0d2aabcbd4ea8f1e5c28a12dfcc753716992ce55a389b2516a48487a2ae2043bd9a1cb248fffc33c5c1eb6b4be8962f78c436ed132b33d1334a83db734be4fd905f0eb31c5771a0e0a86c5d2ae385bed026862f565b20ec2cd1fb7642a0ccf301297fefb8ee2f520e2bc9c2a08f81dc08abb3f109c0aa4851c41c84e00e588e6c1554204fdcec4e12edfc196d40a479e05fd44d84259c9fee4a476614172e2439d1f43d15a69b8753268f43949fc509cc0182041c8a8a5810cddc3c94be700fcb52c67b023e2db37548bf6fac8532ac84c8c9863b66837db38f06810dd1483b9532d8170ee4d0b9816a2023e5f4547e8933451d9526db3f7864aa83b21ac48007b1c1e46d88b64eeaa3629cff02e2969eb952ca568e9d1f6e00c9353c3032ec7dd5400aa609f9ee7878d39e2e81f2e377aa1421242d7aa88ea62a3abb57009e53502cdf3773cf81201447df04f5469e145e28c06a15a2d5eeab9a71e6a6fa582353ccbc11585b6aa39c9addfd8c84a5479201e456fc4a105b569077852deb17168c563bc0b22382b84814e2c442f37006ce8bfddde81f384031e342003b3154122ba6d2ddf7d273121aae3e2d38309055cdae5eb5567d9d359c0b100273d351df08ca5feaec3c976b0fd517089b56c8df57100d44eeec8c92af537e6f9c64098a6554d706b5f8820dda68b04e5b12c5efa30a44c181d22a38f3cf134cc7d176be27f8aa065681724c033abf9bc53237e9b500afbb5d6f3ee088467f7baaf37fde2b22ae699e60a16234e2c4ff4e950e12dc45de1d1dfa7dff4572104a62292f16ea2e859c81590c9deeef3711ce15e16f5950c85b4dfcc55d936be4e1d1f9c500eeadbc5bd44f904743543a68c0553e2ea12d4226118f05b77070fdd30dd60f4f1968a9468abab8ad2e5d202426a5d9659ec15c0533c73e39a6d1231568267bff1a29a9f602d49582e6eb8b5bbaa1485a00b0831e59a6aa3d8b25f03b1d663c7a1de2d2726092970feff657147370a221c3abb7a721faa8429b116e1169f3c1e9544132e20f93b072b3da1e485f40d5645ecf5d8a77546a8ea0f775244120f91cb081028264522e03bfc85bb4ec45e084a9cd63e7eaa945c4d2e2786677b4e340a487eb180cd675dea8cdce7ac834267b33b930d58cce280222bf7e08e71278c522126a46d20920bd055db2aeb796699efdc003b0ae10294e07f91e3364cd56e0e1118bc4570bc19682dbf3f976f163fbb8b89de53e48a2b7cfba2be50d3d4417ec126754344349f411fbb93fa640fdc3e4961a6e684e11d84f4d0b9c3852f56682315bd32237a794ef5f1b4cb29092a3fb4288679db4e7a01464adcd146e7a275e1042fe1fdb70caa0b6bb3d849651faf70b1c57827fdbf8cfb3f7b73d14a3d1e872e497c10a51d8367b536b95b2e9109a1d96b00ddebeebcc08e898027ece8af88d73caffaf24fa9aac7dd8b3f720c2e5a3f645f8223c72ae638e2a2fa4fd5e285fbffeb31d8f76d6633a661a62d87c4b6084ed26f7d36b5797442631c602bf11ffaadd6ff848215ae7f3399eb3e4da56b7c1ab675107298f3660fa3feeb7f3b50a286a603cfa5fe65745c4d5b377735f8fbe5bd24b76902fbc2121c2c79da04bf77c81e967893aa237de9ad2b0eeb42b08fbc8465218636c70d02ffbfba0f0cce426697c1e9ce9766ce53240c1af5bbb794779323417310ed112033edea4c71853b92a76d0575d7d29137e6100fa4bcd857fb46160ac1cbbb5ee731b77967222587b8973e5eb10dd63b128415636e8d87527301efe9cb8b0fa27bde7181e2351e43ea4738629fd9f083e1e6e41bdc021ffcb9d7afca60ece10222cdb52ff26c666f5a3b7b93c521d58a39f82c47762f406f680d9d5cb535ec5fe7246a0e2415ab1fb53a095cbb1490763b702561c05fa3d7e2a9d5746991ae478af989a9d4bf54babf52038b764f32b1809bd64c4eed0f6cdeab9a77e413b34ab3a934e3a42d183f76733b857d9683b52d5c725d528ff5f953e9eb4b7096b2e974f164bae9877f83f4699ff2f5c961740f81ed6b803b6349726714088d03ab19a6940dfec0c3a93f12ec829054dbc9334801d668d6a59a0a537890a5ca13c7594ca0308f7a518b80d71078664d35bdff25982d1cdffa895b48c7be0ced68d62dd6798d571b1578813d044c3ccecc041d1ebf3a481f451482aa25aebe252e90e94f961d54ad6505a1405a07df9a1a75209f977568e86a03306de454b4a86afeb6299e18e6c93c65b4ebd605cdcd8c007923b3312dd57b88481d87f833c204c828b53b82712535abe3c8bceb35fcf863532015e920a5916150dade909a2ca35d4abbcf6ecb26ddb65488decfed8f416349132904379b7f917df1734788688f5afdc1dfb119b52fb15b5fae07e3f9b0129bfeb4cc6c5d0ebb80c336ec1b072751a8886d84fb9491f908cfe56f58baeedd9a5a001e24db02db4041e12352c5fa8e52104ee838878fe45d795f789602462b8b390f15167adf335da46d0dc22737c9a77a3448d0dc6408474784548bb510d82bd43cfb3ca21e9d1cb086fabc69ba5b2920ebc1f7357f6841949ce3d24e4949e215eabd323f36aeb1d34d6a6be383161d5abe5eb928b7dbe54ff01b0a63929a55f85cd117a2f98fae08fa1c99ead5c83d7d7bf004990e7e95b177d397792458d4bb1da64e44acdd2cf7882dcd293ed50aaba1de0e7654d90665f6968843efbdb9c5a00c61c55b8d4ecbe6462d471d81a71f2a2eed2dac22e71d395d9dc15bd2e1b46add2fecba905b28dc05981e03bea490da6d5dec46499f2d77ff8cf58229104d67b262c327fd770a7817121c4feff491a567a50662c175b234e6f6f2298caaa04c150e5a01b8f9baa033423679a06b23cc41fe01019338a15cd1d9dae650c2e9ebda171920e9bc2ac1dad5f010eb2271c0eec982db90924ef835b33287e447f64b632a10a81f05ee8c711af46a354aeee8850265c5e1419b6253ab653a0742bf515a0e8c01538a21284e70b74e08931c3bbcc4858ec34194a608198969ebc3da606f0a003601390c58c96e5f0ab8ac8cf48b033632503022fa30bdc3d7b65cdeddcd05cdec29815d0a4cdd0fb3ae7a55ee17a93d6057c00d289341535d072b1fb66969b18f53bf8e72e86d347ce0683f2072bfb9de046498c36af03cde2c1c305d572e1ecb341fa5352961aa3e84a13c03910507b6db4f82e80f2f61a6df6cca3c272b77568e9fc3c2682f259f213a18a10d2aeed13753f8f1d50899559be0d437b6498ad14b8603de3a26b081c17c7963f91b09547dad2724ae4d23baf1371a0e9171f7e23fc3ad1d47c5028e1a466518bc8318d64975b0da2c80d535680558cc8b66380f321c8559c4ca7217fd3c6561769e8402e91f3823ffdfd569294241f1c75b9a7884325e8b2aeb1f7e289482fa139bded6467f62f97e3095eeabf62141992b268070c661006c44c56cddcdbf12039e9310b883e772408126f125eead511846fd220105f5129e18f792bed5084fa706c8a08cecfae83c09471642e627c60f407f062ad02d60a57aa507b55be901dfaa4b51ed52ffe9dd83de66b063a48b093a2cdf085262ae85e2b9be66d47157536cb4a3ae9dc7a3431cdf1df855b2c16532735802f5b63ab0590e0eb34b24daa6ef7817cf6bc5efe1f56c021ff71836ba377e09f24f90b498c12bae83afa86aaeff7a7ebd82965eca152900e23ac5d7ef41cdc3e67bb8e185041943e1da27c9e0bd9cc4ec51ae8dd56ec6f2e4274a4c9757053bb00ecd0d771cab27c85af30f67c1b68c20a686e1d9fb1285080c1d00bf57a08931e694184a786da061906ef47708dcb396742847e12e42f0a84b93646c0fab3a65061aa1a9fcbfd54a0ea68a735dd7bcfe69af13a1da31fe70c54091946b0ea059a9dec959296c5cb4c5c438db761ce56c08b8b6d21ee09e8fc3c5300e6f20a207453cdb5a42e73fef5d91bf0172ec03951ae67c30c2ee63711793dd0505147c49a8419a24f7c64b15c175c374e5a39889979912dc3a2eea09662335be6a90d82824b2444d80a52e44edbc3649e7291acb03f0364df96be9588abe303a041147ceb174292d81e956f8936d130a1d856d6875178b13a92b2a5b6732189518dac4f9be21c33a480824efbfa42614a2cd61605fbe729398b0b8857d67cbb54491fc9d25d35eaeaf06964b4fcd9aed0937575bdbdb1e56e9b786c8d2e0ecf10d40c3183818584ce201af2c7c11fd2487e234503e64c3bd3335719d564fbab75deebd17df83a3daeb5094edf940cee47187c4b2bc5cc38e748e1bf6c614581524692286f8da467df07fdcf6bfe9a248c3fb0e4c218e33fe531150c91e1afff66778d1ba3f478cd56c0042de7455a197666f1410da0ceff240cd54893e870ed03b98b80de951fd6e867c1fe4f92b3c223e0b5108d7e0d88cfe0e64a008c760375ea81682e7cbcd63e5fc6e8c5c932077a3f7020b38cecc375c88936dad0e15bf692af1b6b57821320096447904e103be247768b4c8768f49821d3ddff97bcd9f05e3a649c470e4b0c55b16e7bad1a3e6ee4aaebd586573ecc96e7010c10e619862299ffbafb1ded4003d7adb472ac44be9e0a5342c28adc81758894af86257ea4c3d899bd792db7b8b14356a71fb1388e129c5983c2bf27753d8bd057489464452d082dec745356561f640c2a18d0f7e6e085db0f0137607996388a22497dc056a3e5188d2b271621660d42f09a4d5de73a00f408ede1edf6b4ce464d785325b05e3f606b80499d4a00d3a4d8a0d14f6d980c200d9f066f13401b3a60dd91bee44a7653e46d16c7b4100b34bf9ce888f2981ea48296fdc99dcff643fd4b710610c9df6fe9f179b40e20e13b7f2b8b018c1a549648e69a989fb3f680e8ba611e41a1d0e7d4d8f246a62aba6ca228fe724a782d86a734549f2a35598f366a3f0ab36a14543d827c12fce6a2a9e1ae78e40af3c0d6deeedc3b8cfc8f68bf04a180f524daab44c3652525d35b0dfc777570c5eb60bfbd0f638782a3957787f30b7a76f7ce0f8033db46f97e7c470468c8421ee849d012b53d0f0f846efda9788ce7a51dca2fe6d1503bd3edf44cecdff1752d4b90b9d00bc5b03a0ccae05d0fbb8a101e767f79f9720e3abcb7aa1aab9c0ce0af4821cfec8eb4e67db19592c0018076dedfe767c83d1a85437173f5f4aa79230c8b616e4b9768745aae1a98d90f1b531bbb8a3778a6c5610f187a98441bc69b546b09809c4de897db045d6d9d051c22381f574bfdd387157e797f501cb8c6d791831482df4c998b34c663b00f468b03eb4d84b931b85264b1059a99a5b6e9848fef3d34b9b89e9c17c6739b799e7632a02a5187ac35f0bde8a2ef6903e9a07d29c92fb51f1a97e8b8565d401078e231c83ec5d151782edf190e85f01d270de10c3178929d5b8ab65c10e77e624d3bc1f459faa632db37ff46f8bbb3b0db72e0b1fb087c7e36a3179fbe48a3b6388560b3234f61bda3a50a5f9f2559203dd36a78ab5cbb96958b75768ba91b9187c4f03a2c5cfa2c31c9debf1cf75da266ba95c168fc7d74a696de3454c4928604d9c3804b0ef74e3d96b12692a9a1bc08e6e4e4319ff7097a29a9403f7bce5cf12c708dc2fca76303781041e23765202f8a231e2cbab8ab50a2f997f88e84c5bc1d54d82da001601ee01b34a490ef34317b11826071e7145152b7d6d937ec69b3fb32ff607bed51d94a30878a829a6f6bf5333a5cef9d119e5a3a97aefad948da1da0c8c4c0829f7234616bc92586e11d94dd1dfab1306691e5d0aeecd986270537e58f0a9100355c9a19bfd4d0a94cb51ded8e524ca2b29333a69853758dad268c470a6bc6df5f26fdd4c81be1533e1559f4608586a037d2cf9eb275af0b305e1232e5d02a28874d8b75126ae17f132c71c52a4f76df82dff756bbfb15dc21f35910bad60a4f3bd4f40fc3e2aace88f453579b401af92828e402f6b66ca108708062129a96e6d7ce91e0ecfb0d3769b90326aa122c0ae1b3d196c88a9b979cabd9f28ab854dccf28d6e11882e8246322a79633e9af8d9883bd5b47b2ff983aaaac91af5c01065cac9adef6e0473cbe498656fa1e1dc79dd6d59df4e1dc3f34097470e9268d9fbd042c04de1684c6e1a89fa61e83b5f27bb906ab1b22024fb8f50f43fcbf770ba15ddd2f7b050e775c3e429a3993eff55e9b1aad6aec4868493fc02304e0b30be0034278fe4e22a49e080e01dd7309f12d875d79cb594f963a9eab0544436f0bb717382e23ff05b43902d4b42e5f39ddf0bb8392c36ac26352862ed3afaf2152bb50ff7dbdc77d055b37c2bb4646c5f9a30d5795e51080d4e6ecab6534c827e58fb571ca06d9851ebbc6d25b08a3d1a0f8bf71c9b6eb36e713125f05c2585491d7aca400c34bd6a90571972f8d1a3ac64282c08e13bdf116465c67e2a709ae23057c94c06250bacf3a08de93f2748ae0f6cbac0f4e9c6d5e0f1501b0df25e363c0bd5eb9a042bcdb24a2d44976cc8210678349287e890c6e50ee9bd331d03edf25a7a8e2bd4496172fee6bd909404780ab91cc6e46c976620b9e0146b800a2158084d75a6c3ba7b08fa1f48172ffd153361bccbe8a5ac999de198434747332b439a0cfdabf8565a3e7d783a4c355494e20e35d8d100b7a9205775c059776880545fd5708c12e0ee5d3a9e3679ec4cc3ca4946b04596f62cf71b451b727d5247e9ef6c2902859d2ec3a7a26af168b53fa1f646d2a60671863b316d824de74e309045fac0f99c55bcb33055aa832d90de331c584a0f30252790dd3a811be93632fa7e2fad385c3d7bd9bfe385b521c5c584967fc49e3899fe99b453d771f25f4b38356de4744b57a7e2308c0efdee1cc6d199c2a6fcbab349ba7e0e471eddece87faeca19d4ef4452265165459e090713d7a1024c2268fb575400840a6be99aa108d75bfbb8f4fa63cd372e709a31eab4f082bfdc5acb7036fe27ee5f60d3d9ca724f9393eed0554bfbf99655bc3c398875319c160ac08578a106011c2ae5b3298ff066c7d97034abc3d0636cb9df62632a7ae361585e2a3124c13c356f219ef2014c255b4a97d8f16691056dd523e87124593bd8fdfef349d7c8697332886bc4c97d733cc075d082e004c1d10b6f95440f2353798c14cf2c62d6b9eb0fd84b73554652e97fb265e6b09adfd58b32bdbafe11fe988b73b47f0d02e5e36fcd21f57a9a33296c3869fb4488f33d4b9138b2cb3def22aab499ae45e6d18e4d377f987bf1b6252df46311f689439f4b35100f1988ea3dc5d70480d24db2fd5c1db1fbd48612aa5c45ae84ae164442addc785c027a49bfba0f34d1fd42012f169fa8cb988ce2faef009ee9cdb215a72cc8eefa3fef424281a361a7ee7e00d60c1ec8b84637e2f9c1e7019da50ae34ff72d7eaf7f73dc49b5ebd0f2ee1bfb1d5afad3aa1acba276a3e943a5144d920d703a5e7b26f084fc73330596a1fc61e46bdbd10c321fa80b415dcec3e8ff05381c9e3cf4d0e3a5a6ad435daafb4329874da747950156a0aca3ca9ec28c7f4dfc744b7dcfd5b8af65d0860f18774caa6a41d916eaa019abc66cd437a69409ab12f47c2eb6a140811bd438f32b2185e68322142f6c11707a40b41fb750fcd45c31d9f022394aae773e2213b374656b1d8e45abd17bff7f880bb8a7a2c43fbcbac6b6a0627bd9fe9ba142a4c009d8d8dcb3015affe88c1b5fac68f96ad6844fd7cc2d3841b40d1f55d6e3611aee0dd5379303811b9fd078525cd8d26ed025b289fe1149d23d58a47b936591ad580b4359466347ae08363128aaedcdecb75e0aa80fbad6a7d1ff5d21dd730b2e7713d380e863b3733896fbfd2408c016bf91e60195afef85bebc16b221640f6a94cd19b69239445352088704c975b25944f8955120ea37e2cecc85795016e5e9d04087925d29cb53bdbafd4bebf25723a2733d63dc352ae63b4325475c38cdb42db22e9ed55ea228a11775f2504886593d06dcad2991d25884838baf2c1476314237e198f82a5ff20aae50a06dfe45e0d8f62333fd00288f59915c8b8b6feac02576b748871555853cbdab8e3eee9413b2e72943195550fd4e1198eca028e26bcb9ebe8d002037267cfb04e46e20081f5b1e799034a46ce2f7ccccc032aacf406dce7f339a36f5427ac1e962479494fdb478524c30a152f2eeed807e0ec452c27eed07158a0617ded299289413d03f7e67db95fc28bd85fba177ba8df908f942ce9aecdded1f87050673b3c17c4ba0c55d1cfe805b1f4485e3277b8c32f0d13089a88a5e7c06be6c436601c49588d5f2a1450a8e6a4c49782228cb4acadef6df3dc95ce7614de0caff4ac6af5a92f337c5ecd83a64a20baf3a0ce62647d9d2dded0a51d9ef183680ba8aed58b2dd66615700f909fe95c9359993e62781f2aefef5c1829c13687d89a68edc59859b69f80bb2a38ebf85ec407d3c29d0ec26f8a59dc4eb5b8413c7b53ed80610d9bac4f5020234cafb5791a8131bbc96b4ef35c3189eaaed08628a0842057ec76aa19b43fefda4d4a5e401d4e59c3361e9009395762a84108e399898896db9bc767812fc9b067db04e6ad57734cb8175ed0568fc49feea1ca20867c271af6ebf5827a4626e67beeb83fa8ffe5eac39a5d94ce2acdc5decce43567337363d9fa7d5b8918c7f8d5c3c2ab7998ee3f0ed603845bdf8f71d89a52a0f476bf76d7f14460b22293cf25d97c4729dd9812c989594ea7d09668691edf95104b230f8c696131f13369d0a286e42815407c12c2125530b8543ed8435c13e24993ed48602a74ddfcdbfb2b8409ff5a1fbfbf13fbb8d93438db726adc6a93706d2d3d150c2f1f990defcb6638286fad50ba8827368c72564b0e06629de365d57922212df6851215286e89894d62867c68d3d86758ece6517bcd54ebdd888eb1579ce622b174f376b0923e90c5eb1454d8279fe4cc5ca1df4430ef7ece0146150485a54e774060a2dd0dcacdced10661e89ed7f5ec9204f8ad7d562c1ab421105d6d356d966a9bddf8b672beffbdb8e80542c4c95be21a0b72cadf277d8c6b92d776f4777385b9aee9fcdfc76a8fa8dda7f2bb0f37d7a23c9fcb9b5b1f6354035a2fa47f4037ffb6cc8cca65835f9423420f8e7916ee2af381c99570a09ab072f6f9da4bbf184e16067479004ef2a62205b9be223557e5cbf93db3c985b69ea07babf20e2112f6b6485dba3167d16c3179423621f968f69a4be769aeca09c635514764b3b4957b7865f59d2a9830389d5df10e46c6ef80aae2d8f9717f79c792005ec597b65c96010f135092c7d614ed4252f2282b3e18da10d65fe15479450638f7dd89ba2ef613720ff1c7daab145a8845092d7df2e22e62294c059bcbb7c632beed424a43866a1fc669ab6f0249b02f8f1dab1d5a1f7f2f913cae84cef335f05ae02eb75fad07480fba8f3697511c4f7fbfef7f744dc94d7d3fd49ab5ad418400f09daab5d73e85e2755cff508ac2f4e5b4ee5ef9255ea9660f68d96c7986df6adb53e0237c7dfdf78b578224f9a98161c10c0a62ef15a4ab980504584f46f5a9bc8f25346729854fd33201241cfa261c16e9373f71719afc2a3c1efcf0c22feab42c51d2d1ae265bf9d9083a73b5149934f24fc3dd37da232287b1696c120dcd03d4b33806c2e4f9039d2f6f126a79f55d299ee6ecdcbaa362d832a8ccb09a13fdeca655193a085fe6f80b00eb7e2dfc645999e9e99072c560702dd0fd051bbc221a46417e2d5318eb7c4a30a881e1afc5939984cfc1220be1dd993bef250c2a2f8b850fcef54bf79d9d0abb60f260a491cd75abd9f810eb5e4f1b68c0e002b79874776161217501f31fe154cf1b6c0c511fdc91d94339bc1827a3d42425e97c617c20b8e121e34404209103beee14bc2ab3483212b9a45b6315b9ed35e2cd3b9fb4952ecf20d2d05f99d0f1794add4f456ea80577dc0e7b3e61c81506f4b2957a7eeed0cbf06d782e334bf3ee227dff8219b808378c2404f98996d24d71b8f3d92c68df308d1131a90da96230bd0185091da9b1844086e4f67789861282b44451f9308588b463f62eb93eb7c672be4dd478e764bac16a7054f8427b52f4045aa957023f0afea9a54e83127cba084b4ca4a469295dda76599af108ff95a51e399a9fd77322174a230b6b69a7597cc12f6a16e4b88dc845d6150e258a49a3063813de23999062f52cbc15b81e19c73aaca5ad74781fb86177cf28e8d3697078ff49985bfc6c2472e96f9802db1588a14381743f4e10483ed671c41c61cb91962d88b62dbf522fa54d3f49d46d6c6abd9d8dee5dda4d6e23e8dd756e5b12c4536e6051d707862b9c59cbb3c7ac57b3092b7871837e56436584ecf09d8a21626f679ad84c5560352b0b2649510a7ade9ec41599aec05a1ec1692abd58147662858d287dc50438687165170b7f2f5f518a8869552b7b0ceba8765a889210be321daed3563f3a9cf606fdcf561ca93a5aaeed192b80e2c1c4cb5f3c797cce3af324cb47bd1ce37a294469a08ede432e91b22486cf832ff295baf500a6cf216e02f023f6bcf05ea5268f228f7d7fb7bdb8001fc3895518b3cc07f005113242b2929f7432c3026e697de0912148107d3716394f9891e8890ff1f49cf905c4949543fcaacd5a9ca15dd9d51609d483fbbb591731ab613fd383c945cb958bcdb2e1616740efbbee82a8dddbec2ce29100993f63ec77ff0a2d3a89d35549662146e2a68fdffe631c9dddeb4029984a9a774fed908a0b0837d99e835d76aa507d9369b1e79982fb29f19d95a149ba76c85bd0e0ac9d9c33aed1f74483e6c80b37e89f84f71bd4e7130e63a157b23eed04a605b23e7ebd8029d84df024c685954cee6696d71987d98a5742bc27df0f8ccaf9e427173bce6222321b9f2792d29e48384af1184341505bb2664a68dd17c64d6fb01c895ddc8883213d61e9b488c541724a50d9785105b53358372b32865819b9d96bf1e4c1d2a439b8ff25a43c11d9129ac479e5b50fc355ec32b9ffda3b6a3c71bba44406c7451d972e93e68a2446239177192fe41eb160ed9e238262717e3567495c5ee2db1962da511ef135425116625232d7e3f9c0d962dfa8cd6cb8f8ec0c2bca9ce07245ba0a3a6364fb0a0d68fe10e12a2019090532dcef54020cac9b7f1e4f74ce57be20faa3b66c62013a0b24865a230482714e26165f27b6c931ceea0322c55ccc31bc2ccaec67a9f10549700391ee647be6925ef3aa08d6ed09173e4539c993e2c9dd37269c2ea573694f09d455394cc015e5f6e071c539b2fa5aadb05e3f3744f639e945dca7c8a79a1e75203a6ade4a2569c4e5fad717059022cb5b584fb4c9664f86efd9abaddfc3018c5624cbfeaa511f0222c97a71d13d1567ebf391389e29b1f55d810794f95a6bedf00365cbcd144c2985c6a1f2563d1d30046b75229f9e9cf825011d0bed3d674f02c2dacdc10adf783b1660ca8d7ecdc51cd4d8d5419efd9be8be2f60a3408260650c9d7b0d2c901ba8144486a1b8a588fba2e8244bd35d92fa806fc2c15bf567f3d144e071aef8e02d78564160f4f8757258df8f629fc79f5f3188ed23d6fe99327494f50e44a129dc4fd404b871185ddf71bf6c2df494cde1821ebb7851fc4f4275b49c9cb362f22e249bb1579d73a7a88716b8476f2208fabab0bea2269233804b8ad50caed8c05986fdbaa1a39bc651c226e61aa08fe6419f77919fdb1688c4d9432ff11c5c6bf22162ce1a0241d4fa26f90f70613788496e3c111ad86916b2d07beaf4b19992d9e9a68455c801d9e403bd8255803b3f6be31d197612ea2902dc5a65a77adceb2cfc2a75b8bb1f10c3b35b7753b73a376c8b68fe919dae549365ae51d70491d8cd90198f9704d1dd063eb5b34f021967809710ae5ffa069ec5f21bfb4040098fb51c114429c32d7f4360dc7f0d82438e2b6a793117a19981d58d8cef4711e15d1a72adc40132c0e8e71c18d4d195dcafbbf75f92e3644ea376aaaf86264ce1dc50d96a6f23f04ee2ee75581280f53da882298ef2f16dede0c5d5178d8e5164c560207e3c3a069a6246ff91d6c9a5a3c36a97ed4a1f652f47b1d5d0296a0a5fe6f8ccebab20c998e46227b733911a090510c8df139de3f2ee52f5f59fea6e80b78e46e5f493141a2589c17b84284366f82879713d893e0796020d8ccf12a59e053d82149597fefb4f1e7235fb75debc4d9aebd6682bb5ca652172923bf2ee54592598ef04f8b9f3dc28fcdb31251e605a296c452c18dfbc48a66395fe42cf6cc03ed67bf45cc10daf9fe357037a21360c90d3c053410885506457ef9b267c8653564afef9b4bea0d9778ae94624d9cd61941b0175c51af03b75fd8a5d8eb8fd09249c0d6fee646aafde0607fc2fb8c4a114648828367bbd5b428350c063ab5eb0acb441beccdc845ab3128caca80f9b53d3df3efaa6af1e2d66ce9d1d737e2b75ce9a25c7390f7aef5791a0ddb1f716288393534fb8477570604dd5a7edab76add54a5a68af777248ccd4a89028cccdfe5f8094acdef6fa37a4100b51445a0a57604816a7524b0268f23375c716754a339070acb1898c176696a197ff0eac216fef3bf015fe091e2d3044d1c61254c1f6a94cd9c6baaffe951125d8ea53a43cd40bb6dfb4f87d1ccfc3eaced66ddc6737f9f38a0284544bc104e19d113673e3c4c3528d5575c617d83c3713bd76d70eb649e3a589d2690f5836988584610441675e55051f029ed0b141560ac3ef585e4e52470d3ccfb1cec6c288d3d4088c6dc6a04b182e37c6e183a502c3952bcc276bfab578f56799fe2a2542170216aaf43fc9b6c6464341946998bad494fb7d834676c01831d8924c917480d5c90e0f5cb3d96eafccc72f3d099772d18b29d882d7f09dbae3d3a6b27655d4a6bf3574a4ec4368e911670c97accfb0b479603a94ecfe7ae2a10f8d0b0fa5cb1b99d3c668b5e3e8879d9e226ce7e1ce4ed8edaf41ed52cd2943b30ee7cb51b856090056c92f6f8800ab79e9f16c281b3498d443a6901112ca86799aae8a05b4ef48ef8bdfb8124b8317e37945ebc143c801f3f44e3c23480920d151244ac3fe1317905b07069628a9308e80429add4f5ef13caa843d7467627628cbdce4c3e6216b219f6cfa5ec30a22a1a53c6d286ad0e8112fb5f26536b708f2a44947128c7877f633f480da34d4948ba3e3a6eecc1f519129c9708fe2bcb7e9b2b8c962653187fca5d5b6fb6ad96eb6615159a4e9dcd136eb232ce8e9ee8f8680418fe4414d3e8ccfe5e0d945035ec31168e095e4f3487ed36278f34a37f2ccbd77da7018d57470e6b165ca34231867649e6a92ee3f6f5228c874b22bb689a87b15db42dea5a70a3771bc39e62b4327d7f58fd9be8005621a8d55c0f82ca368889c1c64e078a04eb255583c93f93e67d39f0df03be3142ad338493f79ad9b1ce4d0bf952467032c893d54bdd3c8ac71949c92ab1e92427a077f42dcbcf265bc98d83b2437b9da5cda37a8d5b94e330f804c5a0799c9b44adfb7a8c029456f3af7c904d1e91551491a2a886649e996050afa162339056898d9e118b395cee26a53553343222290d85df2655eb7e836788a7e7099038cd4cbec6fe02bdf6734401def8554f11ffd945c6646900ed3c6ceaa86b481dffa69783dd98f98bc78c5272d862b77244a7a66889d4b83aeef1af5fb1f6bb5fb4af4824ac909c9d8ff876045954c208ae509bf5b0b9262fdb7b4f4179d6beffb3df6dbfeea5dcf6828a975c88beac0109b3cc9b1acd437bfe4d71a09230e5ad71f23c2f7b59f6da3361ccbd2435b315ee2f88963b3de64e65604afbf2baefdb57d671629bb53c9dc3b4a4252016b02ecc50e3decba660f246abea3a1430528a93033c6b1242fe403ee914243ee2c55efa08624936ba3ec627db218f193055e3f48fa7e632dca822b9076aa3edc22b50de03e9e5c3f770bbc3e90bd676b1efa9e32930cd98ee930ed0c09bf0e1ea2f5f4f52152eed6718647b701458862ad3a4d36f41e2e73b878cc21035ab4d7311036c6f4367e29639a96c2ca2a9a28303deb44e073c8a329c4220afde21ab3a3b0fbcc59925fafe76ffec182952c38c6d0df73bd1020355fc479292191d0a35202b62ae5f6b50531995bfb95284dba7fa7074ca7f2d552d7b2d8bb603a05728bb4623e834e08e0a8edeb5a353e1d6e26ebde499d7f2e2d2513ec25fe0de4a2b9f0b845f96f2993a381bc53f03d25eeaf7a58391509d2ac77ca83142fe17a52d9132a62b3c616630a58c5c9f91180045ac6f43a70210df89844c6a08a37b95836f611ac0fc4fbaeb1d671be287df78e6fbef02c35528e8d1408700a733e8a409b7521075ff4d6105c1bfcd3901da9cfce95da14993570b167b76966ea7d171d33a36d25b413a995cf13fb426f18d71b46a7fed24dca1430681b8c2caf4bbc9c65c0e126a3ae0ac96b8ac1cae23290c93934f82a43420c8e9016c816305ee633af75b586f5bc7a0948dfe1ada006af0739a8d02f830d3c662af7b7ce0b1b125672f2d8cbc22c4a161eca5a7c480e99bbfe53b126bc310bcd2e2bbf16fb713eab6be6a997adeac8f5a631a902173f64571ceb789fdb020c3d200842266d834b9f3901e042b851db625c5c1b88a0e41f2a3e1d49c8fc9e53e888a7fff2814cfbc8a240849a173f7ad1be0cd245d4865ebec3e6da01e4e7dfd9adf9a7cccc85c06adae6aa095deec37bcf64983e63911cc3b55629c6b3c179b7813d34643e983cf4e237086d6a1a1da21857fcf8fb6bebb045099053aed983ea778d3664105c58c148756850b4855a274671b96da0ffcdf09a8e79d1714ebabdea4a1a0c1bf696455c44fa77e2e21da47b9d93dbd662582210fbe6c6022aec157713b821c847fd765ab25e949e8693a74a18449e2bfaf0b5f1ebd3b1cd80f048887e059cfe5f30ff54e70aeb23559426486fba51bf8cf2bc3a206c4f310970da1f83f91a952437137c80ea1ebee071c0e4dc34962249cfb32050e1dd8cb02a8e6af4141250f49a9080943ff45d5b4b4c3c80418089aa18b228bc09fc59f6a1cc5c3e9e05b6ec1f397052f9ff82c81336db1de2cf6111b0fc9b5a9f6a53ae2fc2ff1ad9c6be77fe2412922b5e73a68878256d768ac1bb983a93250b46685afec3337b6cc2cc037e052f20107b80182205331dd5a95a0343c80ebd0332dd2b210d7ad3b2f131ba55ed5e364f0a5003b595c8e4e22879c3dc4e6f668b95478a03c7cbfae7931f9fd7d191e2e346c94eab34314e6a092be736cfa0129f3f84d30f4368042d8030c85209def5de9925f2c69c25f8680748afaff5fe9a6dd390d8f6da74867217aad49f4ca3d4159810e5239f563eda218b133283ecabf6dcb71f6d8da06f3480806ad5288fa6333f3dc0966ee9fd5227479bbb3875e136285cd73048d93bb31f8c19e833fc86e813af83896666c970d657199f5205995f2ae2491eb0aed7d987567c8ae194763aa269d91b295fef5aceb465e9c7e8f46dde8718410c422a5abecc0c48ccfa14631936d029fe63d6707ce87320648e843a89e4c202c8ad463761a1763cdd1602663807c4ee2c4ac5df17940657060fd9a2dfc5f09dc49be11818e5e3852652b43b76b8943141d11fd58aaf55a6fcdb097675349f112312b8ca9bfd8b5e9c6960a2469fb55448db11b3ab4fc0b64ffb1fc34876402932055c757de9cdf70008e13e73025baaa2cd19e2ab9c1d7e8ad4dd396c0ce53a5c9cfb658811d3eebc3b45a3c12f047865353009b0bbdcddd2307ff95dc5269cde1b9993b577c38e05bcc5b98ffd2f67933c89d08d16b792b6e1d44f5005ceb7769825ecc01e688651de113595ec69114e3d46349f19c124da68f722dadc5b8c61dfd725bc52470f3bc0e02995e29a4660abac2ded58854fcc092459244f7b5c0d7e01108ded45de7b6d84f2e8573cd92b8d94a984d5f0047ce2f8f170b0791989c38a92d418ad30184ce46ef8135f1176804c5c46b747bca274266aa0bc13afd8abb2c933b5609fefe545f9106dd5dc8bc7b646dd8475e5a845f70d53ee7363bedba957c0626e9ff4fae5350e7bb6f196d4abfdcb35e3c261abfc85e8ebe2aac30b8ddc752bb51badb2c2dcd14f4c7dc4aa5d06d1e6c1fc4a3b3cbbf51283a635d15c05f9f7783929c9d3dd5d835f517750978d15dd13a9a3655d2be882a2d425d45c4692f07179135df46f4db761367c2316e0d63b74013755996e15c7804ba6e3ffd2ff22a7beadf102396aab9d2115b718e070a2454d7afa640ae89b5aa5783f2970259313ce1f5ab585acfb0f4d39dd08442203ae26bd2c8d328d6665b1de1261dfbabed66030a71248ad331e1e67ee8d1fdb711920c408965509048349d262bc29ec611fc3ede77151f8f1d56bc6a8cf14cd34a44403626467dc8b7c4b57526e927d4e11c9215d239658faf7e6e9b0da81cc92ba6687aeffd7e7effcdc3b552de5ed83b55c8f7c60150a25a6df9728f27a77b15a74a84642a2eac101146e43f434dceb5695eb3c21a1593892a695a7788f69fe952a86c4e36b799489748db4403f05256fa5310cc1ea29be06e3df201942dc4b383fafe5877adfba0bf4d50d0b2060e4396ee996165dc0862b66d3df483f3198ff9e76a9279d04292c29b78e1f2e27680ff0f108466141e0857fece58bcf4fa7745223f0a77f228184abf289f56c74f1dad1eb7976f732883f0e1ce8995cd17029a1516859d710a1fbfdd141f754fdc1132d6c7522b4c84b0082f4b3247c4f0265d78d5085f7770c5170db074edf5973a1e11f9625612a723b4ea12f0a0ba845d7b0f54801ce5032e7b96fb28b93d5d5de4a426ad691fea69f73c4029042a0d3f09671da0ff3d1f4f834359d8ecd951c788ac336248571d970061c14cd3bb352f3efa994cf36b47529e295cc7e227036ee6a27a24650060c864f307f9fdf0b19f61444c5be290f81b9313e8263d2cda2725cbec881c2254e3b71d9467218d0c0cfaf2bce231d219e06fe2daf2895ed023469d51cb080e88854ec6ed26287316c8b8547fa7b1facee3f1bcd40359192bc0b46dd27d3c4305d7a8b0dab4089c4e9173d1a358f4568923fd72f5d7ed29cd842eb91c534ea4651c5641f8e4ec85e73ac7edac070132004c309cad41109e619dafac727a721f26073a7e3e1ec9754ed96c70931b90d2416db9f242d320df6ae85ee08bca049c4296e28a7d0d2f63c98ee5aca3eaa0e34efec099f77e0d441872bd68dfdd4197d0e72f8119b624201fed743e7dfc0150c2e7393e9432987fe3d76a83c3ab320195a4330a5b9ba2b9c71175f07f317b35fbc6aee769d3628b27e6863129c8550accb031c67ef116f3ef2155c8843d29b10e347334bfcbfc715450a5df7a7a5f07e8bf468a6c1660cf828ef2bb342e12c96c564760be9524fd8a663ddebb2b6c79a13094375dc14e83ee35fc005511be9a5f6c887f3f77d65f85e1da2965ee6abec7088f112b1af00eea18be82d04aea6338ec0664eb769a0bd1e040741d7510b57a1882479da2ce640d276cd4f5fdab7224b3a0d9506a7891f87ecf954d1d0a5b6c37b2f36b0bf1f4c88e95fe76599fe5b88bc4e15c8567bcfc24b4f11e563420592fd726851ec5683d6f1fab59cd0675ca4fc2941b556934e1806f42d18360a8fe29878f31369a024dceb17b0adc170334fa5cacee8582a745bf807edb8e153fa2e4bde828c4e8e528395ecfb89c5f9c8577e507e25cdd9da54e3ee4c8c86472893fd060ba42bfe30a146b1fe35991425d3d5215af5f365af89019fc189141033a822c78887f920edfe79920b0bbc3b277e34ea7910c504110bbeb4d555556a17bc0a93518c5e0c9c686ded50e1b5c8dca0a74fe7dd76ab7ba72a2ac284e15c88b034f73b0bc587307c55b19ea871346c20614ad8f0847e2d08225b37e7e20927aee2ce562b7857feb5dc8ae88bdee82fc03f3bd8faf7ae1f69867a81334297266707f9f2036b69b6481ed8c28a7b82d1aab3e68d775d18c0777b0a94fd3306084f7c8ee005c4ad34adad64ac3c9bbeb452fa32ab7d082cbabe0f3d9db59212e5e8e78973ea0fdb0e18f2e0f70647d31eb8b331d8ea4a7c08acacb84631a619af4568c6030599d879d740cfad85cb99bea450f9ecb6360e9fd2679b63407594e0adcfa1b6059d711babec789394348e604b8c56bf83851db093ec6d6c5dc11a9f53ec380dbef2d060da4d1f5dba8eae2f618ca0aaef9df7aff665b1e189313eb92721387630530c9d8b1d0d313f173ff207721030e4b4c7cef2f6aa3d3f1381794a2dc49c8584a2436e3c6a03b961fa07e05623fa2a8734299ac3d6ff1412f3d8f4b2a22b11b850539410647c352e675cc441076a2ac80f0210e1a1c919b28ee5ed7181e0a4a12cc07daa4b14365eda2413eedfc8d96dc00ad02c9b427622e5477299faee61e429323afbb040c8ebad69032dadd5fb52c02c2ed734735754a263c514299b1f12ba1bd0ea4c32796158d3aee45d4427fd5286b7fc577fe4c0e482735264e317c6ed2e5ab11f3225a817965995cf1a48011852b8e4f7fef172cb48744bd0a6d2ab09973ad6ff476bde0d3782c49fbcad3d3dbfc7eba32c1200ed8a4cf2666796c0a057d31ce255c1066e256ceb717e575867a2f7eeffa980d18503c032c5e93d40fd25a22716482a8dfd7028ba2c31f2c0096375b450b22ff6593a0b8c793a1a5ea6db30a2bd2bb3adfb4036be0f208b39367e35a2fc11f776d997334a2793e78a1cd528b313550d8f54cecfed83f8726446fba867a938bbe210bdffd9345fd02b66c0452fe6049262caab3122d8bbfebb898dbc23ddd515a2e9a16bfe586b1eaed0bfb701da94fc2f600a75d98212a695ebe44cc1a328b093c8e05bb93320b326b47005bd8a4395ceb13b26ae13ae251bc8e48a82379fcb63fdc861776cf4c855356995ffba1ae9b14f59e2e7d0e0ef2ac0c161adfc2ab941e9e6a9efa1d07da502f758b4a629f60b4597bdda164fb6f6da947855d80ed1e2b4f6bb969f04ea7a9d9c0c84773500a1a550963471f41249c3b6244b996f9ef39989da32789607448211163997b146e38f084262a9277e58e0ee290f51283ec5e922cfeec531a86320c07176673f1da6cb3fdb97989fef93bab4ab84d2b8b5b6c0df73a78d8118566db287912f3fcd18ca5e0a730b934ab03abf33364a52ac21677cf777f74f6edf3ff1d525c4a034081d96d1fcb04b196505d3a7a4eb97a090fea2703192e1a27d0adb5e862f3bde4eac5110bd190505b9b06f32cc382cb7e257090513633729325f930c811c454ec494a39f1aabf7a4113643016caea8d2f682992c1441cfb523cd5c9bd69a1990038b34f24f3fdc54df9e8d31e5d2d0c8e1a1beda612e4ddacc649633eb4157eb470492fc2276e804ca5d4c054bd2cdd4936f904a60f61508ef35cdbabc4012354052123fd30a4684045fea39220fc7f395d21cca1a8d9f7b8f7d9cbbe4eff572dbeac2db6697fbfaf101e6636a93cc3266416e1a0310d119182a20c59350cae7dbd095df329fe92e01a66b226239a29836efc3cecc785c58b900fd62935a87056c29ffd52fee8acdefa6d038d78cad608545919a4ac0c0460cd30d417e6df25fe09dd324221dc692d9beab45877e87360335fda66766221df565cab828f0cba3eeb8c1f7a79eb5dbaa3ed89d8a158c74a657d830439aa8b8bbfc965f26aba6f80a6dace4031c0e1a1091071a7ce42e5375f06263b5cd39f60c66cb62ee555f7324fd8a717568c317c3664ea0fda351815263f89b3a14b3988c9e57f4c7e28000092e9948b1e34daf131ee73b0e17d0cac48c0c2159d50dc3572b1d9f6d54e6d52d469ec6d242a8a26beec7577027751d70cf8ed2448b46b5009699232c571b40ece25e13b8489052d879b5b0e25277317097c88e2069b4697ed29a1717a460ba3897d81cb2fd2305e8ddf69a18d7683363a39c4ce567ec3438e7f985fc0ef45aeebb116308614574ecf471b94c00c15c86877cf76c976c59686faf45dacabe52c4728932bd160c8df53a39e78da3e8f654220a86fb007d85082a077d60721cc0c8480f5b543dbdc4ff2edf3671a295b035e5ac4090e0bec7df4aab6f9c94d1a4e3b392d81be1b3d4dbcb5a6af8a750fa60557ccba77a57427820da78893550c8e47f76c040edae6e9b58add5cb856c05229674479331976cb3c930b2db2450b945071422b57774a9be4543fa389727c9363102d27e271b0c137802cf7575faddb73f97ef0b0c3f50cc4b99c00cbd30df2 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/640647.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/640647.txt new file mode 100644 index 000000000..bb3402d22 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/640647.txt @@ -0,0 +1 @@ +604efeafafe102bdcae2de7b85a8b952f38bf1637a37e762984cd3651755c2b0604f3a285cd944898abecff46012c201704f3965c18b68c86fc394ee00469f7873b77249cb41a3bf95bf44eac5ab1fb73542196e0d40c8ede956695a14f891642432bd2b2b13689bcc5ecdd8d103a9c8065788d62f27a992b61bfecfa3c138046766b89f00e1c6ced457ba500cd966b8212f8968e8ba211fae2641f115694f885d74eb7d8f20c7d3ad20dcc572d30b15c44ee91bad704750f7f23e04196732e72215df92521149111e244d7a801cc363046cc63954edfb334db31ef89d27714911b576dcb6160f281eebd1735c1e3fa1830b040b0f48a4a2769fa5a014d11dcd23c63032595d4de060d0782f841631fcfb2b97c3af8585fea60d3b9a94567302341e8e1fba724bfbeca644ce22fac0b8d5570684c6133676124df0a769f3fc5e2036cd2762e3abf34129b95546469249e46f26bb2804ab7818777c70e703759a6f1f70bb63c7eb7aac1a255a32c309e12b1a85246b9a69230621768d6983e0866ae5fdc3acd82cf5922e1a96f63f45be1aa499789bef8e784fd66c14f298d9e8186f85c254df1387e325a3c36396ce42f0c317bad638d7e32ca9b01d1b8f066710af94430cb820a770a35d802e63cc92a863bffcb3e43a2b797f16e5cfde0ff13666e9d7c9794efbede3cbb51b3e3ed9f6e7a07dde08994936f10b9f4e60dd631692a8ba551047fc1a98ff41b1c5384324fddb7ea37d7499b3db394b77e813992ccd2767bec423faa7937997375e8f2d9a6876109989335e44813965b688f6c036a4bbe3481fefe0f16ebeb9c2430d27189faf9bcbd07d3a9aec9bd6bb4eea41636c13fcb4b65a09baa307e33051c57962705cde4f80ca65176ee808dad015272c088d5ac7f2708887c4392a1a974dbb42f8754944eb8fdf989c3e7dc69d38ac051426955a0d11775073d90599b0c020238e30ceccae1977469a91b4e398001606b01e0743b5a3c731e3f9f84eec6854e0667c10052a0fe00b273cda745652433364a52a4d80325286d912007fc2fab8a689e7701e879155e3b5ccb7da361a7c26a9870a0ebd6719768559d4ff38dd7322ef8566567719b53f37aff15fcef0031f3c0ad58da6fadd00e895eb33851b0964f7eefc0ef187f0c1de1c316172ce91544c1b1ff3c017db3ca65ecf47a0c0c4068f667ef4550516f5aa76e9b836960f0bb0afbb84803cd41843d334f7741c784065aa770e17412db23808db12563ddd4679b808a4c291a2d03ccc8cb1f8660ec87877303016ce6ec6dbb138dee060e6450d37131b3d2262567ee813f8fa4e877bdf1ab79013d93755e18fab4f766a67048b8a1641e74f9a749f63e957a71a146044ede528b2c45aba82ec8b21f866830c5224094696d865300a3614ee97227eb68cf11a565db72c26268beb6fd0fb854b5d629776b61b12c8caedfcb5899f00f46afc11ffeb576e07046f0b219cf4c07346ee29f96b6c18b1144be34d5dbc4abcb4ec6612e52b586bb25ac138b7ae0959a34e386cf67eb8b931750dff4c8aeb9af37f9460c7ec4574e58656348c483013b6483844d51da81e22c4348bb0b5f5d20cf9e7f80c94e0aab965c409696eb36e2ccf525a13bed683c4f207bd05a561ff3e2a72f1cb65d754aaff06afe89ef6094478d9bf73e397e5d4db9d0c93ce20441826d17b5b05f96d25e521f35373db48bb89134e4fcac98e4cd574175892ed43b0315220785c4c4332045d4863a3682ba750eff9a1fd83649fddc6ada3c7c323f731ee96af8a8268d30286b25145735cef8aa6ce9384e756e8eea4791b54d27c7c0047c744432ccb8bc91d6bca71d9526e71b832592501d67b4db277f09b1ff55e86abe92d96b3435548cbdd3728966122186eab50d96206ae8c4d6dcacff69c97101eaeaa38653900f6175aa7f81c521a69eebb2c693a5a5639e0c4242c8a529e2edefe73633d33e4d48ecd3309861f9498816ee9d1809e942190a4f3e6c19b6516fd729ac0a4b7b331d6f06c32a82d7bbd1639a5c86e921faa6fb3a8be6c46fbbda8de887ed708a0dedc8ce1682a402cff38500506708d0192c43f762f6a1dd82a5a2525eff0f2e33e8b386fc2ec43d4e7f37380e6814a320aadc3ad9a1a3514fb2d513dfbb559bba4382fb2f23e01d3d7f122601f69d253532b8630de6503841de12130bf8ceb8c3173cf3472bb135a1a08884fb748fd837cff4b9c9569d2e5047ed8c6b9f2c1c5af11026330166e754482f0906ce441a08229c80d9aa491708fd1e37cdee02b50d7e667e7515b65bd166f37b51a4dc42ed9e7b34e1da7b5e70c7c0af37acabf814594494f57a3052d56fab1da388c16c78e3b3e9b40f5d7d3a18fb37a3bd7e64089eb5d78ad820f476d1c629182f7f41b833cfb26e2e5b93d4c5dc0cb7c34333e4bc5304de69651ffc8e72a25a34916dd9e4e74219df067c53f134e037f6b1337df57c7c29bc7311b71f4a4deb4b05e618bca8a9d9c6d018c0d772d0ed60afbe049590c723a9570d854e66596d656e9247e038e5afb1c3c1bd36979537c0dd3633e16273661f438b38f4d1ca56c3dd7761b997d3f0b833a1f87aeb499ddd1ae1f85e39ded5851292452faa15fbb27ad307f342373f004dc5c46528b6274e4f8eaf32d67cd5bd93dae8c38bb2d18fe04ec410de35ccf8a6b63fb71be3c95f2442d0cf464ff77505b74ac50890a9507684aa64c7bd9d875dbae8201cbd75f5e294fd3c83e972672119bdbe996abcc841e1d6b0d97e695d1f08ba070ff4dc75f4b19ffcdf5588a62348c718963c00331698038f906acfca411f00eda36372dab1d82256b5a72b9a664508b32ebf7d8b1a7bb058433eb73341215e40eac25548bdd50f197165eaae53fe71abe7bf2120ceec6dd3dc7c8548cdc25745f3cb5201ee23791c0ba7a70e200870fbbbc9b84ea0ba459a10e3490b07e96f666e5cc8e35978fa2e4f2d91600401b9c0254d79c83121872ab937e3b7cb7022d98b6f933dd88b630533f18ae3430d5069aff4c5d65353bbec5187c0a5debb23255e733beb0041d9d01dcf083a604227713f8e4fe3e81c2f2f0ff4ef379dd31be0076c77ac99c28af59bfea4c2f30c6f4582a1d0de61eb937fd267f0f77a69d5c411d4afa4c721c88e18f4417a433b2a5f3a075be4dcfc6c14e55dd1a3bb9162aef65d63c13dae4c70d969ee0d61097b06db3836557c98a0117a55805f003c611941a14c3db6154bbc4a668637668e562cc071cc554c8deac5e6d3ac1ea050def067836f3a11d6fe4c4dad8f143725c389cac8bc3accf4cc476257c1e76d2111a5a72637beb0e8f8c7748cb9d942902c57a8df14d8772fcefd33bd95eff2becfe44f156e2a9f27d292740ae80b259ad8c14a064039080f675ab08ce2c91fd1bf7b49d5cd5668f46f70431fa58ab3ab7a2f51ac07a11e681f38c8e0fbec7b320d97bf8326cb99d28120dc48621045767e30f7dea8e2b48799c74fb25200eb77fbab8a5d44667d4310eda83571e4349d95193910b0429099c7a88eb1505db84951be4ecb0cfddaeab325de16fa0560aaf8d06342afedf4dcd72dc72450dd386a4a7cbc8291aa99a201424239b778c1a29696b3e9721937c37e34bdd8648750851cf0cd16c9ffb3d732420645e6a323672455cff6b86849e30b6e3694919423698982c5a2e2397753601f0e0d9a1bc29ef43deab59c1625df135f35290caa5b9ae8be38e8f6fc1f59efe08bba6974d30c07d520f00e8808669134297552d81ced6ad56a7d962ea39542076944f2d1f424962c87295ec7c83af736e6b1ce282f0401a5fab6cfd219bcdb5cde518509f553c5ed112ffed041e4743c6c53380a56af35f706a0740a61a9736b76bdec5ec4fb7bd96763b5b0660b60aa9878b986096862413e686bc6d1a349436c75f73e25f04891ee33808e7d0a506c4c5a0cf767af11be3df191e9a84acdc789ab7364810577faf63964f81e80d496a45fc6ce83006434dff58d3c141d2ffa9ae056dfa3fa79749306044c0c67c1824d13767dd175d633c612f48f3d9cfc4579dec561d3f6b2d67d7832a68ee9a2fb420df572d3ee25e38ce8b207adabe468302a3fb222259afd377909d59b5862498e7b77abc1eb685b39eac54b826fd6fa86d87a55339fe5183f7b34c87e40f9c53dce08757ebee90ab0c0aa97d447a4de332c5401929007e63ec61d963c994bd7f834b8bf8b0dd4d073e4378b5bb9fac7f0f5f658428b277cafe5f91cc8f99146bb9de21e5b2d57fb6c3d44d18bd8d63c3616b994940635279e032f203848ba28c7305f6608a1d08a6aebec2f1e74fcebfba159b5949384324b98bbc08915202d05c977bff2cf51dbd1fda0b2bc994f0e8faf436bd4f7fb4176e7211e67a8a24d41554880960b6b7b88397305c3224b3eb10e7a1a407c5fe49b27ca4059396f93ffa95f123411673146616531b424391fbdfc6389b20ed5c8453422e3a0808845b9f10068db9faa339f6df782e53bcd82b7423423924ed7eb03ad3e2ed9e6cf356358631e43049ab34d785161b4361191c87baf65239473abe68ffa6d9e476adafa571d1f16be6c3db37b257b00c67474f17647cdb71bca98fed7846876f2b42170871a421d893666786884a852752d2201058ba165f8f97731c77663f10870fe255b6892b3e84c588e793457f4c2dd1ec0ed86ff82c9b38a84e45e7e42e3c77210b66a50a7e2275da5bf9f62345b5c4cb7df311476a428736c426d0786ce7f02c09ec51e953e3b3dd07cada96201a1cec325fa2544fd8f2b6d9d2e7aabd75ed5f91f36ab9bc19456c72d89792a0e9f203ef911e3e161dfa38f7a69fc874d3269e9deaa95332f18cd9141edbd49ef69ca8f122abb540450f0062d5898f7f419361fe8bb98058ccb7b5cdc521b159e46f4f970c37ac5777b0ae6aaf39d27159a24f48badf9fe03ff0625868e993fb827fb18e6a497530c52179b41d1c5c7d151277f477991ed7bb6e63caac76703ca483cee1581c2b48b62e9f170a0ab7353e29734c9c29830f99f2cdddbfbef6e0bab4496279451b5cb95a0bd761c5e771808b14e405cfc5afe38844f282454ea739508d01c6078105dc9e54856a9c0392b28a08b667bd94ad60a83562ac3c3f330e72ca3d36e0ae4beef6b2e771d0421cae56a25912481247a1c3bc9bb84e352d756106aeedcce869b3a211df99afa7ba106256bfc202352b009ee496231f71c4f165ff7ebe8f7b2bd5d0523f354ecc373c61abc751c900f7aa6eb5ec6c71b5163b4e1ce20694f73ce5989cc26db7887854454e988dafc742a494a6830431a84e89305a2eb512111a7c39242520acacfe16322f6f26abda25ae1a928b558b36afefc660725f6f8231278cf893bea701b90f781181562d0027755d9198d6eeb9bbc61ecce58783723d467bdd9c3349f04ab0eab59bb9ce550fc7c0eb242099f3456cf148442949a43bbbc4ac07fb21baeb907298d04cd0f4fab2c9eb550cb70bbd62e9d0abb4ca816a76f74d3bd499939a26626b92c51692d2443c5eb329cbc29211ab9efa8228a7114eb37eeff4a6e5d8141e5ef610aba3df34d7c7791df72172d1653cf252f99806ade9ffa5f7fb0d758c895f084b2e9e37eb192d57a8cdf075e05d21d01707083a252703f7ed7b11cd639430aedd67b23019b173195838c3b073a62841ed87427134f209fc5b7610bea06203d393d5be8adf8b19b1c0eb7c56b09bd7685e7d6b2ab2044b48bc96ee0c87c9586e8391f4384ce8654ad1d469941968fc36365fc9417a77c8cd0f3e977967147d2d932540d9adf21f413ed174b2717435f2e2d97f25e9cf3d5e525a41e945941e5f2d89d5e06a698bb71e92095fa8f154ae8c701564d35b4ecc71afc76117b433e7d846c366d239a3d086a72fe087df618c387a961aa045e12eac67170da79194d9444e0cf4c75b49982c9d5f2318963770a92f701e24e21c116d998869456781823cfd8632d9c49dc0d1a5c32679b8bde6c4b7be0fb714356b9fa5104100e86f8a4b5d59c5f61a1f1e834d242143593fdac98bdf39b5a7fd4b0101552ae8751f68c7f3746d3d9f2fda0a9d38c119f3e794e60f6a64fad2eb2e2366089fc242951518fe9ba30ede3aff82fedc5e65a79f6325eee3580bbf241d0f715b982760dae2f22769fd3c1e52467d86050a75053d4c6249760a9dff8f898f567c8dcbb88d712f0c24e5fd893d0e25ce852e10aea2827f4f86603c90c9d43e7bbcf7ef49393bac9aa9ce910ca20541e9850307c0d199e271965244fc4c2762f1ab44235fc7e2e3bf6afbad93d6f50e8b973531f8034976cce358b45e4996f9ce7619a9153cbfa1b7a5ca3eb90d22c12f2b52c92ee3aadb2ff635206711dc6fb405b09aec48e7526f88666f874861673736d4b9a348950fe9b362074ccbf56702b4807c0c8b3da24f40f129daca82ab11c991a13e2576c98f1933846fb71c59e964d958372217e5d1ba97ca40eac0db6bfd9c1c7a0f01781dab6852adf92a429d11d5f59ec5db8daa78cedbccc2502001461c9ce8fb27ef0f2a1c0e83adbc931b0dafe303022fa37ea10de15ca5ea72f1fcef78565802a3c99a30bcfc3008ee849b73d69faab9611ed3625ef7b08f08b14879032c8735da779e2442437b0392a2e1fae1626486e2c3e43f4226255f96cb683ab9e9c4da444aac362048a20a74d03b03b1d9d09769eaa6370ff411bd66f8c8718655f5bb30df4f158998a241f66d1cb66a17827369292028dee435ee539022b9457ac73b8395ea057cc3359e69c7f1d3489a67e09359036436aed83202e1d5b6af43bb8681bd0c3fa66df077c8e006e13076ea8091ed7658b16e99f6d834ce1d6b06810d6d3a071964237523a25a5b90cf69125a689732247e484c02e9021f468fbb4285ad6881446a77523e753eb0de16e58e776d8335f040584fe8451ebb1f6a934f89ae913a1a57a0259ada848be2800d30effb725a4b1e88154a14ecacb71d13402246c5563b4cfd0acf42f062244ed11a3b9d43f3ac242add9c146bb11f4f1d113093021929bdde506826c4fb6736de00aa138de315024e36dcf660053f49c8249bfd248e41e037e48c26ca694ac3253978bf4e6a390651fd5e4df7d9a8766d7f7d85481f1351196781195f340267487413ac31d2e03cdac8496b75178368f91fcf3c3bb71b16c6898b9cef51f074bcacbd13c1f67e4ddec71e346fc8da26859fef85be52029de99b57785de4c9cd9e8c74d6d34b3608bf02667db114cff2af1c5517196d057d5a3e113150e8b7d930348a55fba25446a75c9ced0b8e6a289ce4b4054d2268d32061a9722b81cce5b4c22d2aa1133ef9e414827f5e9410f3aa51ee3e550c113e6a1e3221dfb9dc68ed8d38052c4d293128093f2d6d95b68063f9f8229f14469d094e570b53faccdfa18e8364013b62023cb2beccfa73088c977a87ecf79f47e32e25feb558a2fba08589ecc5292eb216f427592b09c16f3bfcd1697b4a7541a5ddc323288069788324d5123fc8f4c4eb34de00c06c960311fb496a46a7dd3bd54304fda850ab9bf742ea16d32f0f4e102bf81947116e193581ecae23dce3031ec7dd57830dbd712560078962abbdd0e2adc2f8e08b9f8884f44add251b4c1e874bcfbddfc0bd30969707634b0b1cf519724a9f44f98184c82e60f910a2092df7ef39dc4027c8e462ecf12de379f26d820bfec55fada31eedc1a0ebddd56d5e3802fbb50c18e4a9f1001d7b7faa6c3057ad866b21e7a2c99354ae7961c365466ed67d38a03d51f868fda5a7b5fb25481e5667624fc41cb7173dba9fcc88e52de07232574b1860c987ce04ec483053b10821a32b27487cbc26b2c72b6b35b430ccd47734efedf447c86ea4ec690bb12e9d618e0b8915b186916bfa11be9fd350e5410621ad5e4bc0c05648bcce9f9b7d0e008bcf8635c10013a72993e5803e0fd36b7505a54a17b1dac2cc92bf71143110aafacd2dafb4d40e735e70cbfa4e64d7b8c889b8c894f453f18fa4024f57e1ae20898fa79ceedaa13d86dfd1825660fd706cb55fa534efffd01b4b1ed6d97ee9626773650569879b17e7951a38fd137e755d7244b4142a72c27553c32169799b47f831d502908921801acf71eefb0af0e590886a6a05ad47b388db0a833b6d5e66b97823ca5a8a14b561e41a68b467452eae849f6e05c9fa5dbf40ddb8a6c794a09f09d174c5fb23fc8c171725c15ecedbb4bc0889d51904ba40b6df78a639854ca98d68c784dec1db97c4c75dd2031ffda2adebcd2cbed77ac0979a610e24d4ae2f9229a099df13eed953ead2aa6fd5c8ae4440e9129712b2831fe13953d27d77d01782083f376a1f3302d826e12d19366188c09abeec58794a22c8eefe0301b1baaaf099124980b10de0e1f4f15e2a471829a222b08d5c6d4a96e5afde40311ddf8abae4984c1b72cb7573af486a771248bcd0a40e8c508d71a58d2cfdb0dc202caf6e6fd0cbe6809e6f05e7d26f42bbda41329f22c69ae3e428802fe252d744a58cfa2258f31c85e57a38868059e0be456fe98e6b9aec2794122fcc12b4cb93346b80b3bd340e771ecaf4045c4cc02a83c7f68b9075969307cb7ff665b1d4b9f3b8048f4736dd53b46d0e1f174a9b53338449db7f118eccbcc3cdc4e0de06547b1137799e9b9b09f90795caf526020b6b2a780b574b93f3ca57a2e3c47aec86336c06429e5e330c1937d443072484b963c5ae6c5266dccd2c9fdbc4d587f9cc8b3be3ee65d62b0e7d2ac7e5eb4356de94cdb3e31e4929a804a18e88b5e57907022a5fc7c90b116469c66a0c095f4d8ed85ba9ebf2196b821a0f3a9d8e044e8ab1ed3c1efab9fb1046c0c06f85030fc153f18f3071e241ead91a50aef66ce91ce77aa5c618c770d7a8db7e058b24ed0f920a0718a9db5f80c4c3ef11e1eb8e70dd826fc26bdcae462799e0399e042167c381ca546934e2694b414a3a772d1ada8b39df8ece848519a2aa4bcedf0261488804d578bcbaf997578f3555b3d3de13ccd0e29d2209db8a034fd772b750e99107c1e274ca1020d01d9aad6c2537a5f35f3895ca5e7371e3c7a665ec005d2ac5268af29b92153d4b7bb430eb96355ca2ce18d17218c6e8512f0ac6104b6f34ec5cdc05e6ce2dc24c770e4c9e789e9f6854124533c6e3b956229830c24c244962f85b8e971824e362d680d00efd9fbe3c63e104d51dc13865660d905dbb06153f72b7747963994d4a3ac2f7cb5190caa920980692722b0513d274383b6b4c7f46f49c544d6871889cab57dc85d892cac49c1a304c1c080c2151c99ec1c53d88aa4bdaadcf538ce597b5c97e1a59105b003f68550aa0aed9bbf3cb76e0230e629128dc370a65904f122eb6da66bf90fa4d7fab449a761c8a154171fef9493e3ff305a65555f8b5974982f351d4af72b52711de557b2a9ffc6b798eec593757baabd9d4cac8b31b898057960f97b277d3f2e93a2720d24d76f85cf40270cf649a51d30d5b80492ea5f9db0fb412805ff3798e703e1882092774af5fde78e60b6b41c6f2ba062a1bd1a24c6008cdba716af72d5bf67922e5acc63e714e59c501c26c87c4d0b33be187470dc6d736fdc54e68e30a7fc1ebcd2eec49e9f62c272e09dfbbf53097680c597f46c9423a1f4ab7d0ecaeffefba3f1b2bc7126583ab60dec4181bf84ddbefc8054aafdf315489b1d538f1a55deb0d4c5dbe10a754ec4dd350a937f8343ae4c0797ae9639674d210e2acde2a25440106c0ee983c28265d384862ddb545671d44df765ccabdae910689e32d846d93626fe7ca255548070ab4ad0f1a6da7767da4d2cad60cb299e7ad3ecf8a09924df3dba97101f088f76a25c41d033e382e098a3ce15d42fb4f5dd8e2bd919366cfde6ec01fc456c16b0baba4d360a537450eaa2d0cb6949ee2cc733100bfe4d0b06c06ddb21a6fa3b15cfa1c46bd0637e4c79a9abe285f4d0912a642d64f7f82a182875840ec5f020a3ddad5cb0dbe1d778b1c5b1b230fe91de4729d4c31d8d40096b71e5db3e34ee812822625fafd39acfc02fa00d6cae9ca817d43a2dbafc9437aa58158d41c19063dd0a1d306f84cd338f729afc235495b89daa98a1deae913388bf579d0c8dd096f386e1fe3e14fef6a625d347abf1720d614ee3df8bf7e0232d86d434bcf36117044dd01c02864710d4c0d107a56626ae64bb184be4a752c7e5a7f84e677280641eb090f4ea538fe54103e9c6eb04eb0e67d94d4e740eb182eca4fa4c666f19d474eb08911ec4a511c7bf0161779d57626f05296d8030a287f167011e9a873675af0cd384e656dacf5db33ada694bce60f4f50f1c695901930e7e25eabb6ba536c178226c04cc203c642ff74014f9abfd078febe82aff3e51b47b0d757fb91e910ab95ed266b1af6c4d423369050b2d63b57261a42cdff5661be9e2d5274e61763a96f524a64804b7e8d8bb3bb4e7eed125b9bfd5f0b3ff173514e79b53cc32b22ca4227e6d4b2f5e8465168b31b57b759fdec4e71d208f287bf648ec2a28d0f36d7712e1efee01c3841b61d4c86ecca298c87e2c2a9107baab46ed0a7ee3a362fd9940720c17a1282dec54422b196d133556d2dec6144423d8f004833e340625a4d19d4cf5b661d840774e84226aad0d63f97e29fdc01583ea1747ed7c436733fb40509006d3741f6d74492caa36b370678fcc748efcc9df908e19a613fb60b653608e66b8ae63878ce406bf5b420322a93db512f0bf8b02545bb0e1ca228845314da2f34fc0d132704c8b92a7b06ad8053d1e2dae1daa81df7c024895247051a6dd9867fcf81590deb70980ebe7471f2969c79b47079998d1652a8dde12d6a4e9b182e801e5a09212f47ad4dd3d8ec7a3a107d4073955ab5df71a027158c2f4ca3b8a1a4b1fe9c17616ebbfc9fe95d4e846c49d1e14b4f69c7efd034b9c7d21401195d84f6240fd264c0e080ab47021ad4636be4ce05fc49268e52d6460061355e858e002cda240fbdfd97b334b3a07539bd82c3ff21efa9c24041c7e07b5a1a3d408d374f539433c55105b09fc3a7e3fa58be6eeea0571dc804575ce990f61c665517e981af4aa26c6efce817548f7bc232d88968a33d8db174939b76d59259dd60d29925108e2ce24f9dde73a837719c9d3515b4460b261352b2514b20e02b4fd7aed7e148f3c0d90d8110fcf79ed091d19cf5b22b237dfd5d6ec680de7a3bba02cbd19b20dcf6a0e68f79a7d42e9fcb6cc71431104792562963bd5eed32345b5cd429b1e0bcd95ff91a1818c23ea2fd51c91d5ee629d289cf2655495de936d30a501deb06653d6cc7fb293af49e0954f199ab9cabe77d21c4185067d038373835d39163f5fe7f21984e0f31a29196cadd2eb1985a1b000055f719b1dc4403ffaca33ab1db3e817b70074055c10e9c726f538a5bb7067cc136106f51f4362aaab085a61f070e2d770c47f244818cb3091649112aabe96ab0733facbdb2e94186fea753ac2a5d4e21ad52b726cdc86a2dafcf4ef6126c1d3a62fb57e5c5296fcd60407ebc0eb9d3a3ffb5519b2a75b0a976f7c7cd43bf5611dc4d5afa376417e6ecb15e3ba8a050f32a2ab34bba9e3336e40128861e4ef08bc1f024031508407a6269814fad81d74a277e3904da318f512eb0f197c1a2d737c6d01dc5b73e5f6f68d6eb0a988302fd7fb61af09c782a213d1fedd9c31f21702d4be7237fc6663aa9044e878490db30b7b06a90796e00c0b84dbb080063319568770b07c3df6442095b57d06dc139d982de69707614ca6cbbaf9b888a04880220eba68a66ba17a7d93c724d17103de6d1db2f0b824892c245cfd6bdd537066b8f2b0ffb52071050cf385af7721aae9daae75b8aff1c64a2987f0167581fb24f5fe1f035ec5f400c48cb924af79aa30ec2533fc0dd3b31497baaeb1b391ba306fc2d7cf50b8939d93b2e083167ee6815c7f9eaca3ef2bd37fae59370ab9e35b117764c10f2356631dad030f8137158e43a310498034befee33da5b9a4106f326a020d550153a15e9e5d37ccb81ac4c2261f67bef10c8f66cebc268f78423dc36041ecd0d56fc70a0465475c642f42cbc7e710f76c53ae359c482d7b60ff1e952beec2d17a1442ac6f0b217b52bc00787400645b3e53b3f572b6c4faf70cd4ca5e7b354a3e5d673487ad2bcabab5f0730cf6d003862ee447e16e5660915597ae920cc29c237161b2462a571afa8f861dc7a34c263826c7ba7ac42535e8a1d833013c2efd90ef34070e478724e5ca10c953f6d856b40f96e743fa12def14073d8eecdc03165097262f6eee0e6fd60d55e7e30970718c4910601d81cff1d585170f711101911c7e59560a706283c5b360ec0defd0e10629ba8bc6d3992df36d2991ac25255ebf04595dc1fb61abe689b3927ede05a9dd3feb856b0a50f1a7352e584a886b82b7ad162e51c5b40e435bf9744138aee3bd941b1e94e1c54b5a73844a3930315455251812e0ca23dd87357b7d82574bc5eb6cd33bcac3c4829a953808d0ca28e7bc335159d3507376fa4de115ffff0fabfaeb0cf496b62379b1c34e5a3d4ebdea197c2aca197a5a3877a280288a335e79ff1b9da27035c86d80c5f480252cc5dfb48a6fa128a64765cd57175c30b232f2555393ba67c4a2c3619652f0b42a8ce304732f5d47503ab8ab889c22ecd0e1b63920c03e8cd211a726bddb4b03509c60ab55650f50ec8d75007431fabc6650928a58352647358d019f00d29884127bda8674084425e0e7f94fe0565258941199761cd1931256c622eec0ceaa4817e06a5232247dbb013ee0b3f4c5e43988b222cc726ebcad5906c4f6ac3be1c3ca46fa83635c9345d50648a27c9dc17f360d0be2d50c7f06051310bc7ecc237b09e427c5b44e153bf69979199568c4adb45ffe0d73a6716ca77faa7109a0e27bba9f713a8917eeb12c37946d481ebfbc43525de4a16d868f15e1ec639c3e81600f0a1b8d324d633c6c617770705f949523496654c85d8ce95be616134d91d43cf2a690401c366c81de03542f09f5ee5d275d92c0e39428dcc2800eafbdfacb055f74b54287694d75bc39de4a8db2abb2102e6b4d5465f986af0db1b70318f332f563b50bd850e84f6fae117e5723a04e480daf7ffd36c41a0b2e1e5cfededa3bc4ec37a3c133ca76839abe88b06b975bf2958b686c6c823e0f644bb322b3a6d6b2b88052896fd577b5bac1fd93ed550e4efe74a72f026da7521826ded64f3ea8ab7a21a6456187bf488c3561e2b1ca1fc0a158670bd4bbd08172c043a2de1203a0a29bc9fb6ec5643b01a97a76a784bc3a7a12b0a5d994d61f386f5e8c8c067b8b36eef6b644f56d949847f55530cb673eac336f5011baff40de8774dfd6a352f8aa29a3986ca674b7b02c3c530d06c68f046dc3b7ceb009413775b7e20a50a3857db547d0475faffd438f4d4452658e47ae58b2ec13c349044dce263f58da99d0abf522a328c360d9c2776bdc3970157fe03888ece16afd42382f8087edd079e6ca4225151f9aaee131b215b6e9bf56f0f71ae6f12046305d482f7bc326579f33e6017289002d4ba7bc3a0aedebd7f1bc9ca9a1a5316ff606a1b771d7fa18e63860adf58d38e223fb29f5dfb8674d648fb930b9f6e96a961fa610c1747ac3553c83cf62a3666cddf9c4a354c449c9b96e97da53afc8e2579c8a50cdb0806caad833e571c7002a7b705493decda9e06669913f4a143ef28d06f587d7a8677ca9e5b5a1dcf60f65b5c0b24f8b62fce57d0e83def76667b8cae81111daadd14fe8607a1c50c418b275457d518b1c8a8c87dcc12cfd607aca24b2507ed29b09abae056fe3e7f41d0f8773a0a3bf3603f59dfdd01dbe94e27b5ac7da794c6196ceeacab00f9fee6ec55e610abf03c4aba3921b1a72f0173866468849ac332af5ccc1e44df94d514a66448ae165ca20a39076fb5e89eb41f10c318fc34d965e2dbdf5cfde11acb06aac7f34a0f6182e7b9b7684c41dcf685bd586bb2ade794e7b4756ba5126546d5e52bafe78ba178f03621700749ccbc830dd0f1d830f348b76b8f4e25e551cf15583dc359b8d6dbfefe1a870abf39f309e7e43299a1bd42be093ed63f069ef9d5644126e6dec47208abe71c378129d86c1ac84cc1359ab4f955497d99ab6c61f3cbb8a7930f0905e847d9133ca528108934a722e929ce116b981454974a3a8f925f35a0b012a3c5b56c83a02cced77011c5f90de62d58ff5a0078db4a29d383c1c2765bfe57dea229366cf616545b086aef5e19146f7c8235c7d748973e07a3c035d31efaf5d3a2ea902b8a6a9502d7773adedcec36e3c78f8c46db1776cdd7b220a9aca5ee5bf1a45a5ec4ade4b774553b3bef9248394822e67d53046d967a960a699a3a4e5ac2aad6a933ca220bf7caee27dac04380d136d817e490ab8b08703727d8620d20b19b1a862204eca16ee57d8f03d416b87d816029d2b867045f0223b7ba170eebfaf2bb936fa13382547fcf3a1b63448f12847144fc16ba17c8337db1f0cbf0d552d7f8a713032ae04f86f5302053f40e09cdd178b1bdde9d9283e9168436894e1c493d06b87bb503395296e99ce46de77065e5139be226b765512091898de7da42dacd9c656c77786788d310eebddb33cd9b34c17a5eb31705b5124761c9e0aedae906446bed769658d7da0abc111a52e70170dd20002f7b67b5fd916d81e2935eb43b1cbb5e631575b5794a7bc8a4cb7c5b04a677bb43794793bb97084ad17683319cea380c676368c35fe506285232129fe9b306e9d05fda32ccfabbb3137bb91276ca8ba850106cf08875a262e009c8f3d5b78334ceebf1d1483a1e79631423acded0ab417e83305c8787b9c48ba0b0324558b3d2afa65eb649285257674f82fe604e764831194b8f1706a673c7c8f0b1c72d16e0a538d986cf77fbd7b0fee41a3e279ee04c09ba8249e256074c25a22a6e67199111e262c38d26da757cb92fe00494d56f33078a24023c9551848e244743e310f7920144b4e149ae831e86d8a4755a9a4b1ac5599483821fd8f12feb3623a6055da6b91ce323b6de6ad8ce30f72f2a51043b7e29bde8c5030ed43687f69def9200f51e537454d150263de0b4b5a816318dffe99d1cd8a9d02629b02587df1ce8ead5489dd5f7792d61a134b6476e0e232fd8dba3a0253bc30751283b9d9b7691d132dd7f0200cc33bf0263d60de1e0db2a234d833c5542c2a6a727450873fd60b2237b14e7398723aaae7530a6756acc1f56127f29d22436220c4c259a1d54277d9d3e489337eff0a16e38089c6a9ba480c6a3d60c3cf5c9f1b9c9ef765572e3d07584fe86dba10866740b137f4407b837c285b5facc8b4e761a2397da187588357d3b0de70cc68ccd93c40c30eefd0c8cf2c4f749ef0d4323482fd36cbffe2c405b8c3ff4c89aa8edf9c4ffe683a0cec5f7e642187e7a1fdcf422098a6c4a77496e14fe70a4ec24a8985e1ed45d150395af690c5766f7e274a1aa7b62215b7f658493c710e04d869043d36b9839d12daaa3af5b11584c5972d4e536aa7d297c70057a39a56420f8b526f12b48a96f64acea58c2c4cf15a9b4d3596739b80e403faf6ac0743f948f960c27088400ad2bad10a44e695f0029d0d69b6092ebffb8f38ba6eba178461044958e9fd38568534b4cea1de9048a73b380b370c71fbe58ffddf43712e61e6342c62f67b679bf41ac144d59993280bd4d904cebf116084b39343989c5dbcb747098dbce23934aaf869ecf1fd4248db4b1a08381f1ceb1211889cff5313590c2e56d9710357367c9dd3c9820765a900b93ee50b9de201856d64044f7a1127e17bc350ec841da6043a1681c1dace1019e843d3db1c552522115a2c841a73c6c4d4ca97695fa4c432505c7a59dff2850c7cb74b6dccb44155bb6923cff766bdfb1444ba9502c3597304f1ba1e91a364b05eaefe3dea1b59ae1a22667e9019df016f62b7656ffb6f8e252c1db87d47d23c6815d8a87478d4a0a33c2449450694cd380c45b9b628403d5293860d7d1232ba99e3963149d91090e8f587fb8110581a1f2a24737886ba8fc6115efa34703eab3354f8d2dcd6167819aa12c9984a5b48dcae7ca194ddb2d7b0c037b7ec48340ba4e093fb9469c70be7d29037c76be6f146a18d7fa3d61e64ee16bb090c489a16217ab56160b882c2f4b315612a69b91b51801f722b3076b49dd0ff0507dbba1eefcd4757b3540f7555daefdf0a01a86b6da7ebfd58c18b9a36b10378001e733e59bbdc69b2e43c9b3cd463beb016b51ecf150e9e3ed025e70ea886d94daef018157c5adced8bdb87fea41b7b9c232fe7098660849729b990dd27dcfaa61d18a5ed03a50a469e2952344b3b00fe0b251e4a8e84e59049851e0ecd63dc23cc0b9fda8d3b47d99aa2e0c42256ca240d394d18aa88529e37b83f547d3000aaa9fc41b232942c1b9b3b2f5b18f31e98567ebcaca88e9e6ce70d3402d6560858c1eb3b383ba6add2242f50e4e557d5c56b2019e9081ff2603763a9b4af07b853aac287f48bf24433c29459ec5cd42d1c5813e151783d2dfa39ce351196db581fa6f934d36945b00920b07c4cbc7a53b050ac60df5637e429285c43cd59195367c16a750a285f2ba0bd7784c5871c6bda48d699ba4d7a65e0b4b87bd0ac657965aafb794312f295cf5f370fb223e477f533ca07079a6d5d4367e82ccdaab1f4f388b6621aec65ba375d0005619e7f019c3c9736820c984c4411f4242d571e6ddbdb66b47507b10a6f903f94e7094503d9628b76682b2828432d07d19a47d22824d6d83a7ec49d83c3d64c79ae0863bdaa1b91cc32929f69d70049808cb4d8ce8bf0975608112510d34c0395c8d9d0ad086662638c3ebf35dc457b9e92e3dc75bcaa093834eb33edceb1af63d06168a3016e71b6072f088fb53c43d420966d3933f99e734b2ef660eeba899c606b9b84a21ef8cc32825040fdd6f3fe5f682ea3405eaaa0809977d7c7dd79098ff9446189287470f3e93598a1f7b6b47287f59e0a71f461211ddd2cb8d5831cf724a5c2f86b96a0b235e153393f5165f7e3261afd9ef2b77983e0cfc2886cd58334fd3a8e1a8d7426107d75124c4268f4c978d79241eb5ee1a9c6d92fe0193238a949dacb60008f9db129b37f2e0581a55b05155f384d7f4a698c0b666b57310abe16120536a2efba0d8d04cd8dc36b07a3edfcdac1d4534ddf9e34fc3901ba0409c8621922d86ec66e709c22dd7054593e9e67dabc46752f275b789434aa8409c36c0e9e68062e13e685936d739838cc38f705657ea18da31966be4af73ee141bc6fbe946ab75a8cc67ef8268aee6aac57f42d08ce49855c13b887c253a3929dbebdeadd6793f248df21b96c3da287a045acda9ac2fa19930478fcfd31fdf932431b72261862f1984788ca8e1f3ad7fe1bad33766142c68c8701d63af4d7cc729bcd736a447775356aa110d65b9c8823c3062e194700003d10aceeda2f416d6723caea7052e5b8f35c20763830c72a01dc91f3a81c18adeacc2036d48d5c0281daf728d21cf263a3c3a364e523210ac3fa97717cda983af7c484f7add78b9ccc0be8d9e4005e9f9b222213da8a4140f66cbe9cf329db5b843f204e77e86d786c039186704e01cf6cd8994b5203a95182352cf5964ce022b95e8458634041691945b7217906adc1a54bc65b516b1851ded791b9e61c9f6902c0d49189a7aea1c8114d64600137352eea2a77d3654987cc9b5be6874cb4d6864e772d20ed348a01573d2d854cd30f5136cc91895223880df4595ce63d3b8a65d2b1db7945ff16fd62a381db0a6a24614faa51a041d9c360b8a74c7ef2aed0be59444241df2e3b3dbe778c0a25801a435d016cb9bdc0f2f22a1c62d8d5de09be004edb2fc5a39c264dde34dd01ad2680944a5ea3adccae4a7438ed9beba4922ef248f5b06a714f028f4a34f8489026c9736d51895f84a53a854b46e7e3e019647e6fbd2572e09acbb50003f0070227cf35714afec73180f9adfda674c1863aabacb7bf0b8e4e6b56f8f0480605753ee36918a7ca2e0a59243813ae8f6b0aaf602a6d74c36ce51abf9ccb3af931e5ac64352b191ae174d8df4c5292c09804f4672efab901eff8ff5d6926108e079963d7874594b072dbd437426175a0037d66b8164deace635115d6dfed3c3a5ec37356c16c7390857434b864509538f76da1b3fc7ddea0885557878d192c3a72a0d31cbb0cdb00e203935ef436527747dcd48c82ab96061e67d8e6e0f72b0e51b2fe130f8fc63f6923df59c328fa9c53bcd0b03ae89bfdbfc4547b4168158732f4ad9dc8bd561466251f0568ada33e296f17fb3fde23b98d2524f4ac0f510b5350b435b630324003241f0993c70f4ffb247506e3e60e19de552c5a084df39159e68ee7dddba06f425655f09fcd1886d801ef4a9b50ab0c152a4869cf586e97626aa0b22d6553606d01d8dee50f0f418aae1d4f74d80b88ed0cbdaf52e5842a293f1973c24eed0bf3993c4c589c24c819f5b831bca2b683fbe5901d2ce8128565c17b787a8c222b92b8aeb667e8f5c1f19d9631fe40cf993a7b666bcabbe79822a54a47a08f5b8dd9ba23f946fbfc8a3d91304a9df5f70b76b813ce2d32326c2e3d84083a3eadb4a13873903ae4079fdc8636181044decea25287f15bde36ee291929918c8ea3e7e90e13f4e978324af3cb5fd86664653b7cdf5f6cfbf2bad52d37b6e14e73cc28391847443c02dd83c192448b8c2ff7da1906db3c2b40456329bed3d34c91378229e57d59aabb30bfccf9da1a3235f8d4b1031992897e04d35d902b16b379d1dad077d34a711e00a71b5bae27389a805d1126806fba1c01050cc070eaf55ea3edb30bda5bdc5fb8b4cc767b7347aac01193211ec7efdec2300bac4485289eda6c2b78bd96a023f50580f8f9806fe758552a0137d98c06a48b33d9951625a8ba4a64af3b7d52b5748b0e74dedb91e170f32f4c008ee5ed43023a7b25e74460e0435832b03a7b4fa65c09fa16ed14773a2f7101f4cd7c732ea162bdc0adab0f3bbb4d5c23fdceffce63df5727859ea8e8810f95c877808b73c32f131a55f8cf7167cd2fab7b105067327dc09ddc63ad04318a39bc00bcfef3521d3d7091d96877750efc93f6fb2706c08c855f02fd37406491424708d07c211d69580f3748e6caf64a482add4eb5e2b7ac0384745b22fc9cc0444070eb386c212e806ee0ba7aa02b68305dbc2e9ac4753241a92d5677ec177ff73c9d289d9a3b5d5736a0cfd7079cb0316b94b2dff2c6a63e849a760caa08401af09422cbc58d2caff1d5bdcca0bbb14a14fc0d4d064577a9ab398a7eddec6bcd6e2ebe24bc71735e9d731175b5f6c79f0d06cf24b531ebdd6289e16ca68da3008b894f42bd3b25411c3be4565ee98721d61592bb04793c718e657a13576d12f40497206338700f8b88aa8036f29de93030f8c1c1eb33586839635de455d8d365271ece62c66b5ffdc04908540c19710aef2b6973680119da5f1ecb13c56fe4d3589a9491f48e6e0bd4a5b9084b2061f16067b35826aac609b525b785918bbe6dec22b12f740a1d1a67d2c34ebddcd75ec945cc913761e7bc2cdd3deb2acbc34f09cdd3c879126101731d2ef0a28c34b8cde3fbaa6ebab740e4ad089273d4d26f479fca38ac8b544ca3411ae731920fd966116491ae0f7cac24eca4b542eb9c7a82943ac77a04634f1dc81ad5531a2b0a73bc9354da1d03c688d1eb0931817cdd2e2f696a8717712bc540b34d2f4788a554375d335de6a7f2f93c65fb270df88808e8e77c515060105023b59ed440cd2192dde41431c41d40da7019783287dad1879668bd758c5d1bfd113edcf1d35660ee497049b4e4709eba198881c2c335f513e5ad0861e7619dc4d05a9d57646556a5e971a345bf450f72ca303bfe5e7fa926b5ff1bbc3d21cf76a20132b13d01029682978da7b33d3b1862c72d55ec2d54a0dfee5022dc69b1651bbc9ffc15b5ccf8f978c070c469a77628f01aa0fa05138ff476d54000704ccf4af9eeee6b34b155c8ea1c7e1b78120065e000d12d5d17b075685cb7ef4d567909d42b74b56537bc8c4207883e46f0fee42972907e4c320203a366ac2907210a81ac8082d32cc450574c803140d8bb2efdd2cd794f22e61d4d100ed2e17375a6d2b75d7654a1c71b8c290528d10e6a018cd220474029116b47d140b07802a5308a4da01873faa70b15bff3b9fea6c715adf1d8fb05bf843352264fc77a113775c0b874bff7cd20baf2707c7669e47f35b930d335ea44410a3b2caeae2f3b1ee132ee385edf4e55a189e2fe2c3f5308444bfaa12691bd383fbf2c6659c52281d190113a70442b45c2b9358a81208cc22f04f0dd0ca3f65c32fa5992f1472c96abc09ac5a043a5a572c858c84e93fc206d38209fcaa77faf779db8d4ad676df9ce0cb387e58ca0f06963a4454de86379ed4bf85bcbd8b8db2bc08e7c62b71fd5fe6896fa89c9272012a396aa94ec371d215dd68d9ba7de8f654f27f506c047123dca5d88aac3bd44d55fd6aa3e5631033dc0d3944e67ca7e6dea574c9b154e36d09ab39a5d2d14a95713c0b8f58c179cdc2347af831e4c3bb13aad4dd1532cdb05a71a131c7e53e2e91e911d4779f00c9d14eaa51daeabfcf75c849e7c541d8c0806f9f4eb879922b3223e8f3bbeb1babcd8dc7d9bee0d2e3046a7dc255056ba4c46cd15c425a8c9f8d29d2f08bdfbf4b5febe582ef95b1e9552ceafd4bc3c537f4120023bece4ebac3d4dba89249cf343502e63478e5f42aa20e73833de04d34b61c340896d311b9ecb8fd5a2dc5e81ab968906115ef015be7925e0251e5a6528ce1f6bc31eba2eeae4d148e05bc2635fc54006c02d973b2fce2f5657e95c81ea966e51234c055968fecb49731e82427c1dc68716e726c7937f795c9a4d1c192fba1746f072a1e1c7be3de76533e16b313d92c22b3e93cd72c5010371b628a64a7ee7a56b204f01bcac82a4b260788ae48188fe255322ea8bd247baefd340526cbb8e3333b5d3ced9261571f2e917bc097d1dd9044011eda64120d0c178323e33c81b05e8ee81269f57cff0070ea07d74a27274295f0ea370cb6e7c72dc50671f88f3871c2156a61816dd4458482f8a999fe65dd9d4a5f88686bd32492a163efa0246c92d24266fb47eaefa84b96f037e74a065d3da56d94d62c008b2f17393a729f59245cd2bbed6b358243d27ccc4eb2e7df59746ca69604da123e96e2e17b7caed6dbb6ffe726b7be13515eb961a145fc5631653ebf7e2ee092f461d05e8207c000943e0835dcaa2179f3fccf70817e4953ace54812de188e62098a811b8df51daa52d2e27e96d046998f5f86422ee4381a05a83616b8a47a0fb29050ef3a6b1415e0b1ab98fd19bf23f072e15faff5b3fa7b46d34d9f29faccb9deb5254a1e765068fcb79eb6e84ebea7a38977b71b5db7e7b88b3aba2321b1a4c61541a6d17d60bdbbfee6cf59796c4c842a641679454055e7e0729d57b1f965fd831935ff4706d1604dd10998ed45bde62b226fc26887224db76b94084632b3e6d1bbf2f328a89ba316d5a3a8c8c51996169226b1b7e4ad795e8b464e9080839fd49d3e13f31c296267dead0097d3639852bf0102b1b236f334a3b8467a4858888479a49cbe4958830edb07011eacaac5c128d58be3680d3fb306fb9fedf507b444dbbc6c9225b6c5669b79c8b35b2df6c15ea9d1b5e3642d97a729d0fe379a03a26e605982acd4dcb19afae5e5a414ec76be985a31b05d12e088ed289d6190b662e38cd9cd292a7c81ad943b882fa3c6fadc49e64c0de92899facdc918166e9520c2183096eba0ba0ccdd5542dedc3464b56722d83393e5e24bc903a0b8b7673064c7d0a7977e603eef442e4f70bd6e686f4a778073e4e52ba16e8621c18f66183b7ece0c6d7601a9f1bdedee957f43f201701e76d0ab114e62c7395a51013bb25ef1108b356e273bfd56a9b84a028b46e2f8e0841254fdf52d8fe7e6a965d82b16d4a9ff3c54ebdc64251f2893d9279cc295cebc31413bf6a3e559a14bc2d3d42f36fd1d2f5e36757742fb9d2e5586e571944aa0060907ffb29ab620bf78020817f56dd1f99cf66f74b08f3b3da51b85052026d519d7cc064bb5821403caeea6402185541cbe19a536892b9943caa2afd6614e3ff7ecc6162527b942eee25838606fa27eeaedc386537456c9bb388efd830eafae71157328c21c042a8a622b264184ad849f00868e3ce4368914acd4c4b610d39448cb50d52f5f707a4e22782f145fcb7d67724579618c052074e8527365f6b74f0673477f531baa91808ae4b00038d4809318021756675c1dd4d99a3e4df57dcbcd635de057a26a6334832b435cb7abac75aad14bde7d4717618db953ee040c26c345410ae027f4b6e750feb06d819591e796de00c836a0affd8770864f4a7ff1ab01bd177ba2a83dbc84689115846c2134a26c45f773c990c521efb9984711b620d5abc9866cc395cfd15850676b4b7d4aade2ef0de3d32f8ad4b398295f8e40e6c964d6b2277cd9a4b9f25142cdb7d85fc285b392e3429799801471a9c42f40a53f4868ba2fa3566918d1ac614c13f7df24cc6b1e44fe568f55f6cd9176f97fca61542bc82693625c121aa461fe9097534ee069b5e93a2bd8d8a893c3399300e4ef60e14fad3c603485ce0c0db26d4db2b73e6dbae830afb70e07a2c889434cd63701ca981086d9f93686883d220833094c75908b983250235b7e367f47e9218b06b7f6b4f30c4e7a9ff6eb50ff987247104628b8056f066428d6e3801724f46003f76aa1df397143b0049217d2ea86e9a87778672371194bc49ad6f1c5ddf34485750a63dd04d043ee51fe15c2733583a56946a014b25c6f0032d2f11be92e5f3368bd746501f4db0de6d20c33f9b0f7ba23d83aea3cb5bc2e5443cc3c7c15dd52aaf048afbba54b2dec9232929666aaa4f1f32d372c0798fc03bcb3c0638947d47eee090ae698506178014146aa08710af92c80826663a5112d686ec12ffaef747fdba8c45bc86f1f02b954ea941b4b8980c1bc9f28deeda99428ae772c8ab6b14c338b165e195ad9a1cd0036a2b37688f194859cfe45453115250865e827d0d555b629f32bc4005bfa090392db5dde8e918c1f3748e63188655ed6e2998dc5e9e4eb5c8677c3c5defee5479dcbd9a9863129ecd2aca54c08cd6c248a2f5695ac521a4c6bd6351227e8ef1822878a2c3ba9671d125017b8817d3c5c69d92febb84839c7965fe958f6c7c73c9e6c046364e122076903be4d5bdc9d678350887893b46a09aca0a187e82b1444b01e0ed7edf1798e8f155afcb0f8e8b9a57b4fb4cbb40c781081db69ae779166502ba6dbea4eadbe6138a442d4f9d19012794fa19616e44b0e79bca6342e35450c64081809e39b38ff14c863fc636082ff643e5ea5a2ce8b5b8ab8f47e996a49588cf451f0104f3d1f14d68d63e77f589de19a429e18a5bb79f0aef450cf4c1eb7a806d86107c75b004cd0d686ebc3255da0288ba7641eda95bc8ccf9c4f380a48a20a6f9c1d6986216e7011c1c1b4fda4fd16c7b496c3d2ac17e7298be2b62aa5292962430fa5bf1d5d64d788fec68a853a079d3b52c3cbb60326873ad0493cbf7e095d5f79eda78d763028824170b243632ea5dea6fd37983096edf08c65733c8724dcae08d4878fa7e4262f0b5bac09c0c85823af3d23f88b6843368698145a28ab5758c6f6ead2f7cadd4e041d5c927923f5dc8ac4de4684c32a00dfc96bbe65f75e882a4c695aa8deca5f9e9cd20bea586e3fa84771ac967df4eaf1f146b1a6771bcb0b08c7712185cfb1367b449a5a35bd59a54e4f012ec76cd3ce823b98d8ac30500f32db99cd91bfe2047c050cf1d085349c66752294ebc74080a6492348705656f9e4d957baa0abed53a63143862f0bc368576be15fcf2e954f9f2da1ab2bf1eade3f74f7c8ac8dc16d0c50ba5dd56651877aee3a975731653d29052e5382a3268254500e502a48547fae96bdd465a356e2ce6239fecccb680c144bc0c2371883f898c39e93c6ae7e1fcb4509264190cfd799093018a2b1b18b082863ca040d7df7d7cc318fb5160d545d046f47a2a387bce61646ced2dcaffd3613b9ee5ac1a2af3c556dcf0ac14853ea89c6d5c3b40f3f965507e218e75804765161689bf764768db214f143250e1e2b76cf29d1475e3c2b5b9bbe26175cfe30272279c290b84c5bb3b598bdbdf939ec2c95999326d3acffdc6d97d0c91bdbef43cbfa82dfb0c13807a98a763c801f24e67dc3cc672679086fcb277979610bcf41e06deeb4be07ae3d6a90b8022d2793b162646d20fbddd358a6a074b9de32e66b78460bffed2eff0c5a678a902fd932020e0d9459614155469192b730092840072f96c3c399912ab1c6b0a2d037c3f189fd41f4a1365a6a88cc5193318e225b07dcbf8e5febb749f7622d95e11b29a6c5f675331abf4fe8069022be086c554133cfd02ec2ef3551d9e021210801c94486b2b7d3cb05e085d9918c855e7d069f461fbc11b155a80bebea54c8a791438cf43df03fdbb8b4f15e3cab8f47eb48a23f8bfdbfd4295dc32e2d06cb8f550a5be030d1204d7f1f60983b610f9efdad8a10a8c9f1b9f8821caa45738eeac2078cfd5b88e33572f7b932f2c483c6e6f2700b7c19cdde22d3a729bc6c1e82fc34977557ac2e371e8f372dc9cc06f4e546fa414dc916cbca9e4b3f24520f7e7f6ec6df83f54da072fa2e68a7c68eacdf88506cf45815cbe0e177cb6cca4d65a43678cfbfab189d84857d8a3b377e77107efd41794f6d5c230016baea17a93cc19ea0c8ffc13f604793bfc085e285375c98a572f4c72666485c5377a7307b02a8950dd80b137195825a9e6476acae7d513a9b47175c22ee383db1494eef7fe5ae31053cd0ba5a47dbf4831f7726ef6af291a7099513292c51f904349e0a8d268ae9351bee46029a4040f52d546a76fc6a158e5cce20369a294bbf5174452e5b87813c5ae37249ce5165c1573bc28598461d396f2eec1fd57a0ddb45f248c98d0182b9d318a9d9782e029e5ca2b98502ec7920613c1e4f4ff73f685443116b805d7047ed8207b4157d1c32fa7819d1a8b28ad80f2410a7d09398524dea9b0bed34301dc39a0964cbb1cebb2071d0916796741a5203e77929c97b9d16b2daf34a82c1f17bbec3b960f6cc305748588755a9732d64af89ce9bdf2687f9706360f2d738fb691cc9a6dbe5fd7939a75e2fdfd761ce6b464e8f360d6310cc78ed7309e160ab73d9a673248afe3a31a9ee15e85f727e0a13999c3f4878ea10a5597f5fe7cc59454d81b7e22efc3f02b6359f6f265b7a3321a2fbca326c0b07c833d571a9ef8956b505a413db044d2f46e2445e62c880526a55a1087b6a9b193c2d3433acc603b6cced843108f5057728df3c51bfe479686f15b175aa52803e5ac390563b735fbee557f309b1d0c778f01210d0e41f50557e288c47d6775b470e06d8c8e5611d3863ed9bdd59807f5eaf65f58d0e936a41df133ba63b19550dba0cd850adee9bd70588075b069d27e3f49eb7e8098c0f46400c37737fdddac651667a380df1c1cbe32c1e1360727e4c0d873616a24dfd1d20a8e4920d429bc28fbcf90fca4531e16e0e015a605672efb0e2f0614315f90c8d0651018ab5a6b56446ae566d18e538b5062819224afc7ea8e1217b68eb2e2a13f2db94412381679a3019339f6727214e5309245237a589ee3e681bc4540c5b7a99b8d170989eefbfb277ca8b272406af3a4f0f34b2de1ceccdae47995dc611ebcdb7c7b230351e682abc272dc4fe4bdd88acd5cf458a707e1954291b865264b839f9472b56ae3eec6c51452eac7928203dd0a50aad13db54e4c73e7940165c28e6e0ae0b0078f04771f038e96f8d62f6020a8a223157be87e43e28ac3fd636dff8ecc75f9eeb3ec7afd4661f6ad21001e4170f21947619406a7de86f507b318328b4a6238f9fb414c7ddc55e08cc99135f1e3e3a03e8b07b73d35952748510c035ee1786d4ac4196875c34db0eb1d0aede5d29e03cf91f6b56f618fe8e671abf61a286c9c82492bdf26b6a7a2a9822ec104647883d130578909a6ff0be7f6c79825f6c64ec1db38fba88ca6742981ec4078073891fd4d83389e49088b9b8211b6b44d32df79f3ee949f1c83f92a06a4c8a8c17f331c2272a5f862d2e06f642892658db7893cb215ca7d55af76671d6ebc908d1d2f57e457313f103b5975f09051147b26d7922ae88d6228b27e658e8890ceaad8397700b64e6db25f96cd243788d565d7d22f49c41e257e63be491c20c27ac600e6b6039680570dabc0fd709304429956296aaf3060c611b219cb3746446758440d8c9042ded9fc2026178480b40985792de220cb87132fa7c3c7f24d811c9b8331506973cf816f4ec901723229eb4f5a5efdf99c1e5eb70c4f3814c230c04d1efb5d8f8ce60e9883b963e635a5ab68963f670706cc02fcf5a4cc78f16601219faeec57dd6eaa02bcb83524b91f33b5d4b8bb2266c13353cfdb5bdf03f2ba2ed432b83b919886774715a1d6e8888f5367313714ca823cc4e97c1e7b4b1f540e35799a29cc2bb7f343237cb084b94a20f5fb50ee4b92c6689cd188266354644ac157fe348f75c65289a90225e363efeb60dfadeea43806f1563e88eee330fe6af42fb3e9371902cc0650b9e7284709e6746605f0b8b68b4aa9be61ab3f497044136883efc04b210e53157bc61780e4819e887a6c7001c2daacb96cd9b27e3a49b00ebbc6a0467d0112d05b73d3f850d59b952ffbdc11d90275b7e4a82687cc4754cb0c7e49e0fd11e53dcab23382aaba898343c894e8bf3392bbf68677e1aa99c3b86d6353c2c7b61110be7265f59f6fd7bb8d99952c47b6493a1145b7b406a16139cda444e884788ff51a05c011cb997263e014d320e0ea4b9f1f0af69f52f2673a75b6f7eb0f2865d67ff1279f9ba3da9123094dde66e9166b1640f86f6c79a213ffa61bcede7d9995cb50ff9c9d6c4b42a8563163ee251f54948544d373401b31b4ddc20f10f067a92e00868ec23b3b7c18bf24fc4a065cbf887b2dbbb28f6e94c10f384636bce8c6f6602a7a8f37dc1b238b1ff35cf810606c0ff64223ab80c942d700789e4911224a964ffe621874b93db0cbee2a0178e463ccc90b5f98bbbe1c4ff5ef0c47c6d70fb39bf4e1c8090e086add439b6b4d15a0af52f817d094c6107c8147224e43854795c61827e367902a36021fbd26f930f5640364090557e6682c1368cc9ed3ccc7720333c47d729d014c6813ec7dc85650f45e2bfc306de19b3522bc0fea5e67bec28741b0ee65146b0badd56c42a56f22ffe643d1dd003a850c6a2fa8a48c3e48f69d94b7dadf474125393ecea7e4f52899c5338a31e49dc4f0bbf70b0943235ec1422ff582a338ac56f9c0cec3e6cc8d126b82c6ee9a5e6ef48c417d609d4805c648506344eae0c6c2800ae3ce38068ab604d68ee8e27a897ba36f8169eda24d86daefc7d185c239f4c08d1450f7ca65ed9e97e1e2e3c60a0e0d38a61d88e0235626df5596d6d8014cbce49c951e1f1764b30bbccc790f28d5de2d3e3cdfd2a1f0a42477055aaf4c3cfb35a27eaef767f9e05d551f2803d4cc3a79cf9d67ee4b00dae0f4a8e3d2dfb3a885eff436dd4d5593d0447d294a2bc2da4e1179d8365986a2bd0892570f39d38d1218a90aa0125702607a09a43e152cca7e5016d7919a0437f9edab04545daf8c00da08ccfe5c39b8bc93f081505c7593d5cbc8d71556f71209d70174e320465b693586cd500dbb101e8ab991e01b714f61095e9e443f500b18eb04dd53e48267fb7e0fd9bd834b1d3a8c8b8e26b87376c0f479f7dde3f1baa45634f5582156ec3f35bdd1b1490a7f884d2b07d66a18fa468fcdc00cd250e3747e1df4e74f7a8e79fd8a0b0579ee79a6d2b83c5617970df8041b23e6ec76caabd1b7d31a59a804d5c383d758f3265861f7b09b93db794855bdb68eb89db24b11828074f756ab36cf5cd55606404f370a244aba68cc76ebc66aee5ee120726ed1deec9614969579ff1499e8b0619d0b64f611573d2be58412c1206c5724830a91a1b3b7f2f8076cb03283065355a6d3d8f6166383b0443d3bdd8cdd2a43a147144c67f1c9f6374cea1c177902367cb182f441e973cdc68b836b702ec4e651f512ccc5d3b9fd520f7f7fb58fcc47bcf87555ba7caefcf00d3db60f6be91870eb5155660c427071cfefaa16d7a68f88d693bedf6eb95675d0fda2b2bdb111d0410e8c15b38d628e865def66e6c6a8f979df4ca17ded45065e96747f2782a78338dd3081578aac0dcbc8ea012961163beffaec542c76bf9174e5e813bc44e435309b7467cdf2088893647ca5da15b6fe0d3f7dc381566dc196e45066695643b148f568227b87a5f00d93a05c97a1bf622557c3ab9627afd7dac6f6fe325f9c20a9620bad2d105c99776c748a5f5a510e09c888b8a743bfa7624b774ac3959b464e931b1630c994d7399a9df0b5e90f860473fba0d7d011e3abe6bdaa7a032912e72a1f2038aaaf8ab9797873ce618d9b43209a45a861db26254fe7f508e0c245eb4bf9fc88e1ab32985ac57e2f4cb258c9b90e40065fd13c2396274511373e8577ae55f6acb26e0b673a2b1cdb627de4b3e1bf3aa0e69f1083c7e258b617d371be5923238e5b379b58837913463e7b2dc0be6a7741c76acba8ceb6007bafb9a18ab165f673e689e9e81c339098cf321c0d663d9afb76b9e463aed9ea76581a215587b1d1e316f183f827b08887dc351afd44e7c07e1e802c903aa286890db5a5d49129cf675b183d51beb88b07798f4965edb41ddcfc8c97ea47cfa8dca9b275a844fc4f963a14cfbc7c7b2a739104cf7a68559e5fa6b059c677a43fd092bf622e3ba31d64ed9188cb27b08b6c97f72e38e343934c07e9642a35d45cb94c98a6a1db9a18e53d91a9a2693d4c497238202800c98803404101292cb6f6432025a50dd1eb7ecd414b0c3767e00dd846dc6d5efefc952bb3d51f15f04db15d861f02e308b11c549b9a3a18fae2663cef926c28fbbe567558fa17829ddf76a458fdf169bedd15c201c6efb36b22736197f8a178cf183955cafde8d30f9da552e4ce03e8c29796eb27b37089227865c98142bd05ce3fac188a25e3e176d3c058ebabc2744d7cb9df3d570d43d2d91ec2c3393d4866c808c459d8e15c28ada5641b53252bdc316389e8e32e8e980f8a1e9683e711bd82897cd12f0c90a0d2c358018362f25e1d43ed37ec75b550e7bba9a1115832652d7edb5a521a983b5a2058a784f2d94e57509a9b408a1f419aae61e74f60e6d21369d386e5f45a16df7a83cdb5b6494ce9e4cd7e690210dfa28a065883165ba03886e3c6409c91e37390029b44a07ea0da5973c53484dc69ce5835507ce2708ab42debc6bb2e42767102a1e3477295968fde43a2b0f0a5564fe12a9fb3bc3fa28a63d5db4b5ca0e016c5ae0253a28c4a973623243b9c413bacbddc143e94b0b9a7ede82e6edb31a29f208d975702e40d4ddb7a173510b2aaf978fbb147bcc5da6f82aa1a197a7e1213a714ff2dc3816f1d80b472eabe278dedcaedc35a5c9de45d8fb93dd18ef250a98b57513180ba265a4d7c2fa7c61b18a88e1c189ff93220368ae4bf1696a83175d6f805137345507abcd18f5ed3c1b5dcd38c37ec5e6850adb522c0caee9cf02c124bb788f368eb44e5d9949a8c9f7db440025dd3b20c62f282b657dfe8ca9ea97e0cb406d20d47b125d243b1408c97dabeccc08419438461a290c60d94cea7fb75e50885d14b36fa43f10a109473ac00d137119b02b5544480153b9e0ab3410e7770372d834074e2047d527e353e1303fbe92d77735ef1b66670249cd7ae5beac7621fd27331c682f76200b2ce48fffc0b229fc3c07412063279daeccbbf2ddaeb87395e4565e9026f5d484ce063735016e464acad37ded0b7c5cb087e42b723379f2a6ba596e3ca6a513a0a5da25b6df5666caf1a70f7db2443904aaaa21a70c6c679f1a5b03922027b53fc2271727ba665b13a3a1bb673a444dc8b87c10913531390c7900425845e7e19e35b347a14563c5c6a89a151a6074dc9a51953ea263aa24ca321c4df028840d546ad554fa09cddd2a718a4b9509ac223427c73e6c54e0593cc05e79a52f1d8609e8e78509a902e91c7364e4a214f70281ffa17c51ed56cecb7910a8a9bd47edc601759208eac987676af4361e4fd80c3f89cda585d1b35b949c18574de163d818aa6e5c4d9d5b8f0c2f9f8b9a1a60da943871729dbd39ddd13c217e15818acb2a924489ac1303d03e6f7a0122dd7f7a7bde45b85906634655d20e5d450ab5c40b58bc5df1395193f8cd97e0b2e7bd1ff0c65752445c5440ce336eee39a5b4754f534e646839069cbbebaefb4ff3a491a9df79fe7cec26f9fa86265b927d447245dd77d9dbdadc7024eb20caf772cdc7966217b16e26c8da9a4e709dd14a946d0b4eacecbabdece36ff34131676b17055e6c9f8aae0611415b440f6377a2788ab1159470b356c3faf123bc284cdc5bcfc40fb54c81e58af85c855a23278c21109013f2e2cd430668b11dc5658beeedbb444132fe96ac3b72f2984891bda7e069f93cc34194f8f36149699983ec7d9860478153ea580107c429315a775983684c90ab7f5988631b825d40e432d211a8ad3b33179b2273ef30096f58ddf6e205e09ebce3c567c356bf76b27abeb8ef803b11e5be0c5eaefe312cbe19e07593fffc1d4c9be27d43d87000bfba657699b9c10fe7ec0cef7446ca71d51563a2863e7b37d21ec81151a688e6e71a22d342412e01d8e321c42b195e539151accd631b4b7ad06c9a62fad7f07bd5b19e0975cd4b646600e2ac5d24a89ce82fe2e799e32a09a20426e25a23d6a9fb56b18eb0d34ba3402f0dfcec7efec4710cb9d94f333f6e1500693aa60b2ff4108d5a7be49688576eb49f184d59f145516cdde0ad45820a821a82109c9d2232786c061827f982930d786399da3205d155060e0ce037ddf9058a7ab38f1c36c7e234ebfd3dc75905a10d1540be4d2f88ef2819e9037de61451a4a19b60f5d23301846def3d946ff3668d80559251d2b1db1ad610ffa30d8a515baf12f318b138ea3c4031094c6830e754b20d2d678fd2d52b799d117fa0ff7ebc94f5604da162e7efb3d3c928f77dfeb369d9fdf748e27d2bad2b12b40db1a477eb16eff55c229a0517070bdf8161e46b9c4e164d8c44ee150246a65f08a6d7f1f7c1de998c7e2d926bfc574135957809bda0a552c437762b72e4bccadb84e62810bb800db237bddf4b1327965874da7cb1aef9c9e0e23940c75f60fcdfb302d57b5a8a17c276a82336b15e6ec923c79688bd0476f0b4da52453188ca2af838e108a1f6c99d44a1759a38f068630d5194fb1736fdd7a0666ff7f97a7c5709ad1107f1dff3ee21f03def03a92acad654a6a698fabf7d6bd94d5c3cf34bb7eb6bb1ac8fb3e03e6cf319c0143da035f767cdfdfde8c2e55f034fe705fae31b73b2f5c02374c130a224df56d56f6f534c89a201c24ce5b377690ebf8df716910350d2f358c09d2554603790daab5290f78f0da4037c534252dc636f53aecf0a6688e2d47d3acec3637d755105c26f85056dd3dab1e2634fc297389b05700bb3249f8df9a14e3e31de80369fb32c38d3f62c842490b5ec23921d15d6a96b04483c0eb720417bee5b42aeac22406d4d9fa80d39277afca43fa4040a9ac4b8749b911ab55c338957b3dc363aa636bafb5aefa78af78ff13873cfe122da0ba057a5a93e4b4a1dc6cbbdbeb8071058facc43ec6ec24087e1b9f923a32b9c972479cb12873a897bd36c2077dba4baec83532b6964d095e64b64bfea044785f6432da689521ac4b30ee1351062679dd7d997410dc50a970a8a2167dd525d1308da3aa9db9d991514f8362ef7dfb84360b58e33a62434712fdb3f4c4b706ffb4428546399746f67a37fc51318553d5801a9c1525f3daa25900cd5f34553655ecaf1111c64e394c69e38ab64e4a90cbf01293a20120cdd63cda0481d497e2b4c69fb1de613a219e22dd576bab4de2d0e347b0c30b017cceb6305bff766794f50bbb9681f090a8e6767b5c95693b843d220a253cb304ea346dfd0751fdeb63d52788d5e67119cfd443d7b6de8cb21f3c40ea8002e2226e33c2b4de6c7f94b54208886c03d2f818cf1f5b6d77d737a4d3ac9e8873cff489bc741a494a4fd22478d1284680f0bd26c369a1b74cd6ebce0b09a7f5ab9da188dea150033b73e4c171912b55a27a7243b73d2c6a9aeab523ff450b34d16cf9394e46adcf8093acc4c1670fa652cc7a081ee2df95eb54323eccfd003b355c073d5d166ef7570379f43366fcd311043a565b422eeda2fa05aceff712df72819dacee4221cc92e97555ce767375410eb73c247f3e5ca1021f39bffd0d09c9f30cf0680b88704dceaf01d6a199c9e9c345e096ad41cbd5c40f0c3121169aaab1957fbc8bb25241689c03e38e80d5697835274bd61c7e1a93f4f7f2c1659060dbf26902c62c93d0729821b5c4d640aee8ef1647b74d51957b6c35715886408c6611b34c5952785f3a98d24fb9952aade1ffd49645a966b55055435dbd16d44ad64978f2dc979038123e368c33528da5bc6a70d774bf0246422aa00f65588430e78825e89228207916de709cac0fa9a790856901d4ab2f694167d5d2a13d0baea3d9f72e2d2e3505e57de24b7cc4e8e0a442f2ad27a417f7f58625382a35b027e32b7733c21ef09895d2a5872d84a4578dff9f771c8cdde79d9c468f11889cf88ccee183322153fdcb331044df295f513885f9815fb49efefc44e3e23fe680426503feb6d88af0239d1900ca8850fb7827d25156e011bfecedcc5bc3a952258903eea69d56dfcc235e1234e6eb28c39bba3ff96b39dbd6c8134d83a19513dfaf8ece010938cf4464ba55527ec75fcec155fcd6c3be5597211e1ed38e8e5748979f5ba0fe927de5d4062ff64ce3f661b2071ff619bc15af6471e7a7c7afada31c5ec9912d93a2e88ca76bc04d411f9b5a1b007dd48c0d65763b03fd583532dfa09ec31d9c5d99bfa44050216f1a16e5bfba742ed1e93f3d98526f31353184837f4ddcb4a8637556ff183ca5b4ab3df1fb4919344c904e7740fcfae7bf3e82341a06f32e99d9a119b47345f0b47e56c1826bd06965f84bcbfffe209d7146b2d0fc0f2b73b41ee50849bac3f2f93a4ec9ca675bd2f34b73655279e38b712c73caaac810274b98f4d71ef94e5526cd80615d1a99f44b72d874a446b9aedf021a31b1d1b4975c256dcd612d0ce078c041987a545db5c9dc0c781414f1a646188d34587d14fb674a9d67502fb045a470431bab529dca3671023520f69370cec00b8afed8b20321d68220c43360209feb2e826caeee62ff39c6cc9196a173c0adaf04ce214055f291858c9429b20171b7cb8bd2632f81635b41b8e590dee575fc942de9572c050c7ecc615c35a1a6f3f43d48ad7c8c784b6f4e00afbc45ea381138583cbd15cd17908597e60c8501416dca73cb5119b0d8fb39ad40d0228961c28d67c1c74cc224a6051157fe54948956cfccdc5b0b4747204e8c6b8041fdd9f5bb3a155408146de677eab97bb684c57689539c55467265301c2c8fbec8ae2d6f3e1064aaecbb94084e6e924379b2236b11a41c7d163e4b01bd54ba3b727dfe17cfbb848a3da7683d171d70968b63e7fd85b95ced99ab3cc4ffa12c6faf0f5e1a7b74a2f6d2c3de884084f6275f63ee5ffa2d102a6d3c66493da8853124590d9b3e58edf2b336b6fca6f8a1d1b746e13a6980bcc0dfc22d519994db18ecd8475682cadcc2aa0cf9c65afb102373f4f7fe74d20e0b8aad18e24e0b470937d807c124b237310ba26af4492756867635e5c53e3fe7224888cae64a4ab9e447be5648435807c08d30ef756533485d3a611fef095bce67bc19b7df1740e4b7680848a85181e24351c1e02565e4d81c33270c041ee415ce9443f9d74f7006eafb81c9045aa794690e197a59c092821abe95d37cbb717594159c4256f18a18debca7697e1b99189343c58210d6fdc8d6b190ddabd12940be3075375051a132abf127301374fef55631efc927974ae9c80d732af5769607e79a2248c6d60b09c824820d563c2039c37ca08c25814c2da1910327d4bb5eaa5717e7f8eb9b0c3f5846f829f3f5fe8ec23da62166ea369ad1bf9029c21f927e352da6c807890e5d24974fb072cb5c319aaabae0f986650d2170402a2e1c3f31bab78f11b4641f5ce99998eb8e7da037f0f533013239f0a0b19b8103d20f7bdd2879d7dd96df25d1b77ad0b29d782e6cfb23a6c84cf98f79459c40c514461e345865cbb073dbcd86ab5ac34b4cf6990eb989096ca83a73d2ddc3836b40c450085a12c9df0232a47f2520f2f9b066d3e09dd7b00a1635f11f4595e16eed6b3bd137a88aee3fe3449a4ddd5d7b82b56f6287a6f152112ddebb6c8593f7c8390d5e6962f6412762c88632c06f32218a98ab901fa49fcc0d685f7c6475cb355d157c626c1f81cfe030c90bc91ccf97bdb85914155c7f5739b3916e85f074ddd52a552c7bbec69de022dca97bc43128fc5b1ee95013de1f4a199e4444b6281d1f3aae6283e5dc619acdd6b9ff8956228f29a74de81fd9d65526f21f6f72463419209030bfb3db43867f96de7e09fc2c46a2556015dfab0b6c6720cf04c02c34b4044700e578b7c4c5dc8c7a500b5a17e41da0f6956099e32d2ac4115bd6e28b3b0642dccd0ae1034d173f90c14a2bc3e40c4d68f9b875caa31d94dd0e71a821ca084ab41476f2d0366d12c70096e19d521f76d479a163ac0921bfa4db30e6a6c402e27c12d6d71684895c9ba517b05dc8bf7ecaaf923cdb71a5f38133753b0daccc782634df9ca850e2ca8aed81ee195f17a8e6a3e3bfa6440f44fe6865edde83d61d266e9044ee8c4287c5c6ccf74e371736bce796a18b7b86a8a1c392e1516bbff6b98e3a9b3db1369e97777c0eb10d373c39f0014243e12ca7fb497484b3af448437fbfa26a3dce8b7699b1bd517c0cafa75e880cbbccd2fdafca7a57332c2256367146320cc4036f8728afecb675df57925375a1c861d6127e61761c2c2ad652c02ce365d0eadc2da8ef799fc16b085bc6f44a3fab85441cf5e20503cf2a96a594d27d21a948120cefbab50492f492120d1080de9281c2562aee1c1a13df8ba8e2d6faa82b11491e3c97cc146c9114369e5d4dc3a55bdade2235a2438d4853e78fc029e3634046cd868493f43aae2dde01597471fca4551c787da23d25b8aca4f036f47801d5a62f2e77370cca6b420314c9032953233179191bf018629fab053d810c4014bc87fca2791cc058b4949851534e742ee890fdb4f5581b5d539bf7d5ca74bc54d4bdbc338851bb4e72c8e6d5bcd198e6c573978ac1472dba87603b73c459a3c522dd515114f102229408044118ba95135c11637650be0712e0553df8e73adc932c346ebdf7ebc5fae3b8547af8108f5b11146b86eadc008db30f4177ec6dc804697458a50ea46ac5e82c717a06573273bee4eafd9ab763329b0bb2fedb09b91f18b01a8a921d9a710e4368665ad258de3962dbb7ba1f34178685401075dbf87ff7b7a832355c7b1b6cd2a980fcc4861bbd173a90665920edaa92fe2721521589d5f3e522d2b5a0fe673d060623f956b6443846ea2b6b06807d4cb9a4e9674412a81d4517833a998cea7c734ebd687ed355e19399410f2ca2e656c2cae731cec76e584d21b918106482ed590d1677a493d2c70fd06d86294b919b88c2ff76d546a8acf8de342d53760a252eaf8413e6e51cff5e5bf11b507658363fb2231ad2798c42951956bca38b3cb75f7c515106b0acc195879d4353db685b765ac6f6865418a6ea6aeca911d3ad3b9cee79f9f99ea35466bbee9f12000c4fe5deb85636bd72ba8bc9f5fd3376e1ee031f20ee6c62dc417cda3a635dbfdb5296c829602aeb16f98e98b7415939e9aeb380434c87b4f98d7f58b01948228b20937f2cae20a4c190e01716a94ad1b041e439b707b99465cb4c09b0b74e32f7e2f876008f4f7957fcb481268de3c63715633e0a0e36373cc947fb78765a09cb422ebf82ed109fd7b28a9df68c8f91b70b95dd128e5538ee885af493d850fc902642ba9abb0c70da4f66f9ced8c4df893f7ce6568d326725751e5fb00738d63c49158c7e5e02f045a57f2cdeb05b96c2ee25220fa03815f67b37a08e99217b60b2f1dd3445d34bf737964d16004ccb404a7ed97bb5197b39426bf9ec72733224f6d11902137622b3cff80bdbb3ed4fe0ac8be90e4afd85a693603b0f72456e9cc41f396101846d1bb26da7d8cbcea7998e5f4238f905a6eaad80eb22fd316c394934c2bf4742c8b2def7d60c0ed5a7b8c84d89ef43d67461e7a00c200c690eb512ef626c654375562cd61e49ff3a13abfcdcb701b1caf5863714c9410348dd11949b39fbeb326e900bae729a4c9a816d9e7095fc175b5180aa9066ab3932649291810d1f3a1c2fae4ab7f883e8d2ff42ff87e9f94cd9226607c459f0943352708afe733b46e495ed482322393fc8a41552a9c8587b01d4f556089d5435116ed0c42b07076ca5b28abb07da2beee9bd0ee105de879870d95187c486228315e029a967a2e5c2b0d31c5be22bcb2ba5d0354767974c9e535a72b5f7667ae62e1a46bbcfb1ba10393c988be1396d7288b1a6000ff2abe04c2cdb7eb1edaff429d017eb65e938c8a05db2332d2fabafd116b3d6a59030e900d62937da44c4d53bcd97b0ccd51e75ad75b03bd5098710b31642010ab3984a067e78f38b764e980980e27f308b2817ffc62e4d71c5838fc40e4d4c787f53f65eac95548a4da5e43148acf61a99c037ecefbf819fa18464ca770f90f9ae87360a7900d527bcd5fd32471f25133041ba3ad061ab5e207466584292b6a3cdefd950b4652389b165894a3f9ac99049f95f4fd37ee6294e4488987e5dcac5b38246fc60e17583ae76745e744191d206ddf7c3e1d87886354cc300ffbe18689eed59a1f15a69980bf848507dc8aea564f83b355013156efaff74515eb57e4db8c67953b4172cebc860f56a6ecc13d6c4618d59aa3d29725f6a66a9add435f17b2729bc2ee219b802a51f56e5a6466952e260a7c6c1abffa49fa24da58b1bc1dc91ff7b6868620489f8a409313be454193633133281319b75611ca2561383ae15c5a1a77cc0023b37f5b74707b6ae18f9eac38b4ff211c2775cfb4488cad398aefe0aa4522500f0d4ef2e6e1ee42f8e3361f3470e4fc8e536423aae3d7bebf025d0f493aef4c0bc94fa5621eceb628b2b819425bc415a60b85f87fd86a585c8a3e61973f5fdcd8c59b4895fbe75b6b8fdb80030cea7fa027a07c64c68eacd7488aca8f379c2ff25a010e1278158afee9ce8d4a74beeeea8ee42b2e0e2723508a1748ae3afb9defdbc674a03a6389dbefedd4abc5bfa145ffbf1bb662159ec892b3c6aa998f74b8516a1023d547ef01a6781391258a4df99617f4f70f65ded297182ebcb25280d7cd05b3c3f053dec3ec3a9bc29ad8cf980ae5d46bc918af572311a3da3a4f2c455d2ba7b0b52e40dc1f67aaebb9110644d607e5451cf349f54c668fc4a93ac5797295986675a7971b9fb3601529449fb141915ef8a861fc39cde259e139ef50098ca3e9e48f66d02afe74998159e0ec74862a27838b2e474b05507858586c1834d5f07e7378c48ac64d34f087919ecbdfe11e4f496b50b0afed9b751476d9c8fe0141a8e2c4c97f9b977ebcbb6386f9dc2743dc2966012004bc9e8b0d55aeba4f55ed84155e06e79392c7c354891cf6391d42872cca82dee56107d73a89234f49a3d2fe4038687b7cc8c9b91d3ac3c24c1dce0d4d5e0d150ee00657d94a76f16a1c161c930b25d12ae1e7088e5504fc33659728a452daa7176a5651f9da64640c6ec5b4466ee901c9342bb9254a36024c006d99a0bd973773231ef4a7f271f5817b042e03c1c74f6d17d682c7d4ace567150a01277dead6463abd8b3a255c279dd3e8ad0099d431f8cd112ed38d2999fa042d3bb8487e968a341c93abf9d36c0a161011f03a89e16151ddc5f2da89bb0d9d375dc4ed2c9ddcf65445e47ae224a048ce0ab09ac4eeb826e6ddbe3f1a3cde3b8c60cfd9807b3d4773116569e311f6b0a1616667acf423b211eec0f2de65e4c70594b19972bde7354093cfab2dbf2a2ebf8a712ce423a753c6bec96d2bd55e16774514a77a5c500aa60afe3e41579fd094ff44b324c31284639c58d807cbb1acc18cd1592ff44a50c899d38ef592e90c4541331d757ff9b749c95fe1f13996500780ba7e3eb7b19b4c0ea295136a5cd19b2c31def216cf6df86d8a0ee7fd47e7b661ec6fb2f3386b2e2bd5b2dad9910201e7b07bba851d8c98252937fc9f51ed7d726a290dc9a7a198c8de0e3182d7ef6e3a70d6f5c2dd478b767131333f59ba26e8cab845049fe6a2bf3476b78f106425e8d6fbcc9869422e9f35637c42e85aa60cb5be127ce8ea40a15996c42af4c16a33749a258bb3ffc40493e944f4bca3bd53c1b9b17453ca7842326f0062fdf5513ac08b0943f87b8cd5085af4b9fd61437a8c5bc61a5291b06fab11b9af5898c3ac71137d381b0964201cbf04b182c28fbbfdf5a1528f696e534787adc498b42609e087e3f834810325041d9314503a96d180efa5242b39bd31e46b3bdecbdbc52254f5f4345aaa06dfffbe96fcfe5d51f162cf029bb40f8a7c2bd8052431a8a9fa5182e3ff4af3aa9f3a1ceb4f893008bf1f361b34642bd883c4125a99662083d51153c60227919ae359f72358c73f34a036e96a58f2b81892040d904085ef037003608d683e171b3a1436c807ab2589cb3c3fbf387125ac09641105f916a4473b65e1431e17e86d259606a70891cc6603ae044f93c7cfc2166a15960c93fc1eb1905db8973a772db40522789bc0a73fed60c00deb082d1393a209362f1e8153ded57bedb5da09e6ed6b3e0856ed7d82f46841be5b012803372b30368d81a9b34c6224d7f6acd1449a8184b4c6b87b487a0a1800dcd96ca10db0947362d183b03133d5d6a9ca6df4608a020dee690cdf830765116081093da3fc04a38fd3d34fb266c0066f36ff1523ff0ffbf0a04efec5674c5f08290823ce6072f378316f2c87742dc262b51a0610271efe4c8cfd78edb6f64e0fdf67742bb9bb833c90d274f541401c3fb5d11ebda4543e99fa2cb1c9f86e53fb22a7c7e746db3e90e28c0aa94473ad7480445f3b70dbd9b2b64036634451d0d0d38bf3456c128cedff1c13f5c1c5498cb9c05fd3543a741f1c8a3ae41e417d0439c10408667aef98037f081f2588ac3a046a6417bc5feb802e2af8652c257f778aade55c2899e67bc34dc14db58547775f07f20740aefe7ddf26b5f5916425ebdc1ccf610112a81f0cdfcdd590a3fd796804fad9f32832dcc292b12b65d4ed202f0f3ab33a355accf1fdf99225966f9f4bb6682312c84224b555dc3e39263c677f08e1320e5dad1efd027407657fa7d407a389d00198a7bf298297c76d2ccedc1a2b6b96df133194afca96614679bc0413170d43f6851c80dcdf0c21c276a0d01d847c991e549c53cf04480800f975300737ab379ac90fe434bc4cf4ec12cbdeb67dc0e0847c86f2381c0a51740ab2692d44c59e8a8df1ef4478e0722826b6a3239c50f62a125bade6e4226d726a4c3a89a483b0cc122cf9566a0b57e85713a95ff0c046cc85e9ba7572c379a461b290f919d4853f219f41c36ddafdb4b23caa196ece0fa3073d4f74bc433a01de9afe4984e18264c11793728c26e0f58458207867534257a6b27a326f5f5f3578ef028a15b4c783826825635ce41fb07c5dbdcce35c97b43185df837dd8751108c934898507191b0d553e1dad2aed4156d6468fa5c6a1c9c698cbd7cc4c9c80c9647bb08c0668f627ec1672e748594c3b5d406828580633504f2468c7f2e232f6c89922e3edc2ecbf560e8325f54cfae0cdbc480dfd02a06904107b14f50a96c26fdb62c580c5e4b2aa1a151a33379aa5ed1fd407640ee0b835d02f3295cde5984542227425311e1c43547a43d7099ddea27cf8869bfbdde9048116abd9ed4332dca6a7fe87c4b187f19ae823ef15943c4ddfe26f7e5155257db68206279320e9c20fcae53535f5f64c0d05ed309963e7155667ca58234a74f56114ed459e05b2d5e30d5ebdf69c8cf3ed2491bd52bd9ad940600b89d679a04aa1122363efd6561e2107d80f080c43a06e7b96fa65c263cb9467dc4a76aa36ff3f26df134d225751572e89c078e33da0a67925f482a940969aea69e58b023c6f16af6a8a016149efcb1313b27efbe3c3722ad05f19c54bf53f551a143cbb2793c8898e3d0240620f4043b5438064e631d3b2f0227117a1cb0e7b01f5bac52ac9da4c8e4d8b324bd072dbe05a905c1d08f1e448f8d007eeac55f8061189aba70446acf35b5de05265fdfe3714aec9755cfd288dd4046d77397bb164a083dafbef494006438f2496c396cc8f2b7d36a91b8a59f3207f3df70cb29abe9ec5759b9bc61ed4e5efa489aa43a34de9cb37c139172862884fc5e5f54a4427dba7f0924306aec85b0244ad45749f5b6704891d3bc1f0c6dbcaac53b9df47c04df1b6f6ba39af3a19a382323184569716633e0eb0921cc113a3cd29074c7754e9660b2a6da484d97493621f4545c25e31b954fb1363503c41f2b119a6c66df40e771edb3e5a4836ca5d3332ac67c4e4124958f398c8401f5bf11b058bede25f792cf5ee854122e860da703a966ba2a15e7e6f9b42763680291cb981d5d23b2793df26041c84e0059ca376a7284df3bed5d57ff26ffd28a5aa2c4679c82561b31f7184d382a6cba82eb4f217b823cc68df444ca92834e8e3de83f702f3e7ae1676845decf2964c2f5646703b9fbb802c561444cfa5d5bacdef6e63b1b1e615d6dafd7d9a5ccf6bfdd6c285b0006763a2230b92345430cf44db716529096d15a2f6a28efc31c533e86e299165285689637a49350a6926cbfca9594a92150af7fbb9987a8877f3239fbeefa22a1af48b30a3e72574046285d5689f8a10570374900d4a67a579ae3c4d177ae70717633d39f8ee39ff2495dbc3de655bbc9cf31a4df0bec2aa459bd8d5647482d68b5ace5c56934686d83020547505805e98e4679f9043a8e28db4b41b0bbe832976a8b88276e5accb31e7058c8653205cfde44ee26734320dea08deca3d41e36ad3ab2d70706488b550e28f62fa98ba441127d3856b5fa868aafe331ab79e167a885c01707d51d5474b860993355fab94e1f6d1417c7bb80aa28ae49fe4250350b5d162f622af464bd309efb493fb5c85759122c15778f2590de424ecf89da25240d469ddd7b7c3401099bfafe314e80d9c6819b703202bfb1fdd9eacb14de2e717500490406f00dfd72ba85707327bcbab995f0c18b3b89ed30908eca3cfc0192d5c9189fec3cc914441fe4beffcf1404174ec0745ba0e21758ce5076006057eeea4592fa695c7b92b4785d3b59768c3a050e012059788aa4196330b4d1214c5e81f34df557f36c9c8a8619edd307f143f6fea1c051a763f7eb92bfc86aef30fa896e675d2a03b6fcc6e8272b77868306daa7df78ecc304631b65328903e23e545b3d2354edd0f2576bb07749095ed88e347df411d5bea15a9847b72e7b32497dd3d9fb33b7b01abab331c7e1f80b57e37b669c90f369dd862c5703d309b9118b408b4174a459a0c46f243625b02b8c69808c954af68aef849a846461f3e24ef72c6a51790f124515e0689a2921afcc0c221089aaa4c83730a162099d1af03b1e4707265bb6d1d023a19116a2bcf5cc443767fbd5a74db56049da6f1735501bae2f7a523bd8df4a000c51ebfd0aef4faabb6962efe9e9bc570f691b7b226f596090cf537a6a5a43774184c166a479cdda7d93a96d2d49d7eaacb779ea435034dc75a7d4d50ed814b1c6b281a93a132e73fa0541605b5b945a3768507a641a3ed57fe5bb7d665baa18abeb47088d6b3b44a5f57a9939d99b213c10a460249c5ae009c5ccea2081b66a4d32e21158e1a54ecc1801767b9c9c0969b3f95b1be32a53262f155bb6fda2082abeb39074a29c81c9726b315f68c02f0c4ecdbe469c49bc4b6063defa1faf4d3bd14c508d4862895ffa2181da74c92778c5e7b2e50441217e1e72c1f33fd471b101df2c26453f1f5a80eaec4ccf567af7277229499466e33d2bdbf27b45fdfd1b538a45882ac7454be2efa104f5115fad4895038aa464bafb4e67012580642c64530714944f364456ed12e324cdec1106eec6a2f6084e4696fce4243a45ae436c22ee98f79f593aec97c88a5b028349a31b657a805872a86ae9488dd23ee0242432722f58cac055a726a7e130e0181ed620c547282124684dbec78e1aa8ebcafe338cefd8ce9944a2af5a45b590930b25481553bf1c497ea965c8e530419ac7526d1cbe7ea2eef639b60a6a622e684717f1f8ce6dbd49bb6c0ed72bab98c3dbe2ddfad1a3f95a38ead3af83c5f5fd7339e67a903185578451fc438ff6368cc46c3888e25999daa3a364363009c7aeca76070a318088014b3d22ae907078a7e979c89b80a1a0785c6e5d2bc2b794d8472e168285d0650617587c2b51b92d057d7a2534fe77720d83227ccddd325d0f810a156e22c2ad1b581a6b3faf2126228607fbf9b61e341f3edc53ae14d4c9eb58468022e9736c36051b068ec912de58c9d0911dccf5059e262aa164cac350d7d012b987271bb935258cbef5d4ef5a029008b828baf5cdbd70a2e33556d7d8a22a7275a13d7211030551e1588a2319979a19eed2c350a76dedd1683114a05ccca479bcbcbc62cf5a3a2e4eb7cd5b7757380d601907881f1d4d82b5673df06055f3afc8d4a422181cd017946172c90adf27bf0f07378df2df07aa8f0ed8e22aace4bb964ab49c94327a36ddf31cd4ca361f401c72758b60ca0ccacc025df33d6f62c70b424c1a804a7d9db05bd5273cd7134469f8b44c9b1ceee2b1cc8eba6cb8e4010cfe796a07353d44dd8dc048ac29f1b3e286b5d9808f84771ef14e5ce6a196cdbc2a6dbaf83b506d68e213ed5dbc02a38db224def9d60f20f701fb1ba9e0a6a9afc144d3aa0f9acab15b9914efff8146cc2bf6d3c0a86e1f58fcfc1b3893f885d7e52dafc61288f63b1f8a683485e0f6ffe62ef69e782eb060885e72e05b081ca1d7cb0d311a99e54d621fa4a5bd26ab51f20e6eb3323e4f801f88f848a836c055f4f125066cd57123001d78b82fe683e67e988a6dd184f0ae59c5ef183384b89e9b5db49625bf5381a516977bd220803c3518f6012bc065d838eade07e2e637a1abe31ccb53215311995f78b7498b5f050534ffff8af1497e2f6a7a970a027669cf0a6ede1b3f694f4761a698e91d43c8cdfb4f8c88ef95d8ad95edeab33d107c3bfc6a6c6074903d76aa19fa23b97af960e33d6ce5e73cc8b414c6764e6fa17e0cc862254e60dfacfcd93b8cb38f4e0b430f2664308172a9e18d9d7535aeebf83f74a6fb523b04c1e2cf56815cd3b9e1dc690cefaa3147da409c00f7263fe23cac6daef42563b45482c02257fa2cb833ae67cf6266241a92c2a500bfc657cb7fc6b9fc6b3934aee47893c13ca3de429a75f9846a0152a524b4ab8a560106568dc4c358de35a83633aca15167b443cab003ba95e598737c4639c8fa6a5f925ca645220284140f9b57297869d222406c183c31b4dfeae01185e7e673c396b00bd7a3cb8881172bb5c7f9adff6bba0bdab8cb67ee06fada579dd8f90903d33641471482beca639141084f0dcfdbaae29571942690cffe1895237cc938233b111ccf7a97bead4f8055ed2878c93ae5fb56901766517ca330327f3fd76773cc82b9b07e2fd3403800f28d69a28e0c94f6c0ff461cc56dbe840a9710515afbb2ee132fc1d99f072ba5fed751bc37e830abaa54c04eda1a2ce39d8fbac8af11f3ca2cd4c676659c52e8242b850c8332770a14908f34a39b2ec18805e30f1f41405502d7f5a4f7da4f317df4a3d5280a16586f9a9d5a34b87db5c1e8bc38f4b1199836a0e818d26412697b34400d62158628582f2dd21e0713cc4e1142d4740e19b006c4f08758374a04f81f187b047ece7b2e57d882f6051e39e6f45d2ec936d32b2b0e35fd054329386f65c42f2482bf023685057a8d8c7a1152e774a69fef0b59641946cb1c5e2312c82982e83595d92531c384df1686e0548a6847c23c4033d9ffbfd184efb95ca24408c903ed7a720ad4bc8db630a4bfc36aedd206de9ec73cbf5c4628506a0cc531fc1127410a0473c76f0102ea89c3c9ba0666ae1801a36725e68b0a88c5494198a596be2e78b8d08e2706c135cff8effa5801e77d0b7e7b748b9eb8b9fa4520347bc04a97bfb6eedf2308b916851e01244d18d113552277ae50f3c7f1c90426027622e33450a54db335caf6e5882dcd95786933580da190f7af38e3584124ee4f5704334d3283117bcb692fa8fb0b6051f24e7059e7f74612cbe6397cd32677a025842ee52b36daf19d3e2e29ea9dc8cfbc3e2da6f1326e490e94642eac2c30fb575d25e671d73c0e8f7ee864071cc85670e0ba995a47bdd9089d68ad903b9975eca116b137eaae65ff92904f9e54983b1424b4ccb815280ae1f59376483c251ab66c3b094d7608529cbad2743e6669592fe1b653ba1276f891d1b4f1b81e53c6ba83dde6e90cd95f276e4a52fe3efc68bf772d4af1d63a4403c9984de859a2915914f09918470243d228706a852ac6c341b942e91f41535e0ea302970b10d1ff3854dd1fb9989c5d371bf8ff6fa840609a3a16be4d6a847e0f460e7b3d41eb5ce12ee2b3955ed082c05448a2c2a0aaa8854431bc6a9897beab9dd465450d344fc221384a739f341ec3e9fce703842c29f051c764826b40a01ae8056b545e6b5d2383e847bd7ac5cef37d71b6aedd6cb75a3b0b039ebb6d0ad71dfed2465bab6a84383a0fd05f19e6c5e5760c333fa59b566c8064c162d6e3d75cb7a4356b275ef060b760582082210ea47dac1ec90361a160deba440b67277628ce701767381d8eae9e702702f86ece2bc74508c80a71fd3ace58dfa9ba7318033ce23216bb369590d5f048ad9c32719c80b8bd09543e92fdf8a0f2cc5ae90d4c3ec6e703353b77a7c0acc8c06725b22ff4bed808c160b82ca63bd2d621948d82f5ecea4a20582631cc7c4cf648aa6f163e4d422780d1eb36ce6fb349adfa9b8428d55d278a750ff11f45bdd46c534df6e84364e7932321ddcad9ea6e660011abf581eb6823e761722791eda996319acf318143c6e36b2a03e4eda55dd39c96092a72c350c9faf93e41c803cd7c2d955c102ce4eed4370351d159ef024acb61f72b1da20111b428dd87a31361e005f2cb01e9a223cdaf0c104ac0f9f5a1ad95ff22a9351dde4b32125a4ff333585611ca75f2f59e70484711d47fe63b9b41596907f8b368a4cd1f55b9b5f973475ce546c614e730e7de9d5548d08b42f1b1c1a15e2b4b5710a14b3d9d155e727668f18e31b3be3d3ff8836907c5037391e2de21d891744eb2f9b5d6916fe7b62bacf88f67945b49f98accb37b06332fba7bfea35fc96759166db9ac8cf7282e9614b10693947fc3d91ea00582948764b67bbc94b3e8646d2adc53a724deace0d5b12fc0a54ccf7bea5fdf1840c4a25b7835f320dbb8b05895c8afbf14d5f346060d978d4f0ce8a4b18e5e3f09f41a70fd2fae06c47b5a61a2ade4e4e316e9d9c633a959cefc904675cb4ea743a991817d4b5ff9a2af483a96daa8070d98a8ec070a25b84b9c571b46a02b5a30be6e5f7c67ced280f8d16c2cb68e8ae818a747913dcb835df3c6691a976fbea5f86b7e92b6251cc16be94036c0b2d12917fb7158514b3a91e1bf0ee8cd41a33a861a9b88825e43db5e774fd3f76d56f5b0e6229e361fcb6e7013220d9f3d835b148f9a9eb8e3b2e9e49039a8f63e284ced1d58876f35c67deaac6b857afca3105606ffb8f6a6d32344fb08461b20a2f077fb35c0e69b3deb6151d273c109ae736d158df25b47516fe46e443a0d34505944d9ba6188221a23f437f23818f39a91624427951dec8e6cce5b0657e4c0dcf773f7319e4379c5dc609f25430f5edc9c296649930d15653b509b62025a19f755dc956e7dff6c6d0410c7ae8d0bd1e8969c072906ae59458f6f481881f507fed5af2c3f7b7dd3f3eae0f2c00a57548f7f2b353721309a95ba549d29309e7158dee20438b848935286aafe4662e9f7e46996cde5bbf81b50425dd85a62b9fa07b7f00c264c950b480ef4da5daeddd390b7679d195bb94dc8bd5fc609cbe8b532c4833f4d728551a10d27cb4e38e09d4a480db92d0ee0902c1d3a206ea7a5ae386e9eaec02eec28469a5735e7657a6179f0119205f62eba9b7271615cf8662e5fde0ec8fcc8d42403a0c77d232b1422da33d3754a7e09f17e8759400da6a9cca219a03e4044f586154e874c157551c69a2a59cf3b2bfa4b9cab53fc47ac07858b6d05fcd96e7ca99443e83731b716d64a49d150ac063b1e5c19777148b72d0cbf44e72ea680eb1c4ce2ec497155686d867a84680e4c74410ae9867e7295f06fb1031167a8ca1aac65ea267adf7fac8e427d6b6964125a2bd87a01f92642e9d6f7b63406c3a342a0fa1e97e921b22a27c69ce200e36d626640038b400460d0b92a1f1d7eaa6bbe17199907a271a2fecb710038e7f4cff2c01c22486b1b4e6fbb7594b33c5986a0ef0e52c8749e813ff434a0ec20b12d679dac26f36230e9b7812e802cfb66af0f0956dd79061162fc431c73ebd73397cd9d9d77c4bd270f9c92c8eeaaacfe83913ba9696d9d0bc7f75017f2bf30a9ce30bf4dc4602a12f7ba84792a107a1de7df82475f8967c62925f672f141959329b39cccfb0f9449b555bd4ac85a552b3b2865e4daf03482d383f7e306a0fa2df398ea5931ffa74d049d5c08ef99191ed595de4ef550940f47bc43ea675155141e48d92c3d754813f600269ee807132b4e2b2a171a861753e099f8af2c2c9ee5cff217f917dfc90ef77abeff245b6dfd6e6d6c7641a8b9d624a9ea015663a142f529337b344989383df684ee48c0f19295033b1a770cfe68f39594680f34016d5452ed801e9b56549129f000987741a97272f7aeac7b816a0fab113680fb18b9b6b0946a3a7d014180d998ab12a39b56458c67b5c723d04a79eacce0479269a011a0221602f3304369e771ed08e31a5f60f49af63970e880cbbd1c2a02ccd1e057f95ab90bc549064090d600c32a7525b8f6a1b4e81e4f7e5235f1952b425266272911ec77615e49966e71bbc0ca8c8cf97a3da7b97b2ba50b12ede31de264686b11ef51708500217d7a40b835da19f25c4d5b740b7366348d751015f045751c4704240c9f76134ae5ee33bafb59cb2344fbf06ba4681a13232a6aaefff9dbadd82fc14d9e71d541fd5668b88c1d3d3ca6195e845403bf2db2e372d380af7964bd2940d3430fd638ccd008a72f9e0c2d72eb85c53a19795100473967580061b96b438fdbc42b0672fb0a3bdc3dc48685c853f46dbf75b89b16a7c6e24a9f6f3381e855aa9a0f1472e828787f976844b0d48ccd3a4f36b6d5669dfa7f7d35e081821e6f4450a0751c1ca5189a32857ef9c882a054f84dc9b2363852647f47bc94104287bdd5d4a3192366270fa9c767ee7c21f5255da3826a5f2ddd2ccffbd2806ae54d2ae62ba31ff3e160a135bba7f8f233608c0c58044c258f100271a570bc69d12a23d372d437e0a074027b80f2c468f13961d5d3d23ad76a4655f2f9dea0d7022b8a32924d0f23813cbaf5ea26ce394004f7dad4f2da9b5762d9da8fd636782c6298d5db791a06d66228e1c5874161367bb37da80e21611fa353da6b8dc77495fc4adfec515fbbb7077aeaa0a21d7ef8c69e37ca3b90a0b403cb8a391fff02ec68c3d56d433611f9d02dab25401d1213f1c5b412b0970a8900b29ba5d9148cffac76a2d90d3f448594ada10695b9ee8f0f790eb1afb579bea0fae98888da3f9cb9e94bfbc63a6db7c3410d732e0a1e85133a54734b841ffc404e5d08da4df68da0307561b10ad3e5a948eb538968afbc9c2570bd2838651519eee6ee824ddd852d80eb72e506a83be5114d8c8f437420d4dc0d98353d7e5f1ae213ec82a3a2819589571b061c7b95b08bb781d4bac3a670e110038037de1ffa009954f4ebf7fe492e79f591162538f86be44625745e2533ef2afb548a46dbb8032d368a0df62d06ea16177d493daafb12aca5bb25337da8ee7258adf4c0c5de9da8ef55df0ef08a4215067f3d04356bf009e2d5daffc9144ea8007f1230753f6f9c4d5e14a18c7cf92b10b50a8304efa22d433e34ec9f0082d7eef5cbc721c8a18c2b75291624801d968baa634cc11a29b8a2b1ab36b3aa0dd52b658b2ed2818d1d30d05b8778bcb00b7344729ecc84da3c1e3cb4b10d386e6d610866087b2b9d5a018f4afebe333483dd53322738b75d74064546b71a3ffb5627dea0294f4bf9fd01fd99a0323b55852b1b4579394e88c12f8a9724a4c1c68447171289de1da7bc99259398ee210957223b5c5a98c0a36303a0a18ff676102aa405eaa30a0b391b6eb1a4021ffa537a9fec599a7ba3dfc0fc7b693c00e0b3538de87d65712f98ab2b158438342ce3fb0012632cde890bb3ba831f9ac5b7804d147a8df159735bba8dbc9649213a734707fb02f3bfae32f15b990f0c3b67bda864ffd2cd0a18e007c7f91063d78bee1583b125d1369a5294d7754ed4cbed77d0f8a8e9331b722274ee3c75b3124d9cf7e54538f9d419082d4c5c8360231eeab8039a8cb5ccb60c8eba58f6317fc32ba5771b427db047ef65103cb08c5c82729bd6dc75238618f785266c13e984cf6d6f7ff90165d3d8221d70542093013de57a0cd0d34def55369c0d78354f7daa7b7fc2132c7ccca371b1498256deddc915033f7e281096edf4b23a10ab54af71ed92244155b4acc90a320f6e716e795d108c8cccc61476ceaa10825489dcf550b1eadc3e3aa09ace8e798571a7b7af41cd60480474a682fa744bdf748bae2e99df34da10265fe971de35a925789e516d3b2374f192184d02002552e3f586823dc0b0779b1d6e8b5cf0d84b620677d08bf39dcbbb2bc03d93e99ec446a6e6d8f7236062d023620123a6b90bb563167d988cee307a34fbf64a893362c88812f989b4d4515f5f3695cf9d2debe60a755bcedc9ddbf6e32504f8b2cfad01601e46ab17a311272c487fa4f25d240f540b099da597bbed9e31ad6df17949b16dad96c9bec55e1a1ae0774e1e9f92ea62c563df54dae26402f40f0b82b70d6ad951e92d463b9265670ece4cceb36d78ab35ed7c71fb8c13ba2ccf7d47a23b81325e6181b19c40296d74076afed515d457a5acede835aed74f5a6bba1ed4264ec85ba69b7c0f45145db9578e9bf9de6ed99fe350ca861a39b79207d90970b179affc7646ad1d2ebc14e135b2b1824f98a547e1f2a45b23af52dd11766b9f002bec8df696b9048c375b2618ed41869f41545ec77002a891449e71e61ca9045cfe486f936319eeea3723b4e686ef613cc7cfabd333329ed30c80faef74d849c2e18485db2bf64a65da24fcaaff20782ecae2fb20dd7ebb797bcf8815218ba40de8aee08dbe8174b92b23fc82abf3f5404cf0f4d8e4e79dcf53de09b94a03e570a895ae9fa0132c854f0b32585d02dd1a9dcb3e32a78bfd0fd5765a540f8b6b54570b8652fc4035ab2863843f55ad40a8ffdd5ce320e77b90a8bc861bd96247956c541f66dda42066074d369c5479e892aefde4bcd0833d8c8ba0c00801cd3ce523f4545c280ee742762dd927db9372f7bdf7c918d00c9fdf6ce609476323087894a48b6655f7b4993339fd4aa510fe83163039cf858b03867ff4ba35a85a2f468222b3208f21651bfe3c88fc476e8a88ea5041b33650139c25b6984105d30603e03b6bcfd87b363d1241bb78263cae49e5e2b9f158330e98e18b3a583a2d3f9f92e7814e8bb24a9ba26a6996e5e94786c810709cd1ede79dfdeb4e8f6c36193bfa150bf7609d0b341a6f47aea4177cab10ac17c1973f9ccdf1c91422f4d831cd3e231c54ecfb7a1ff75edc97068ed078604559c364d4e86907398ff8ca1f5beb88e94da519aabffe882256e15ad97de9e481d314cadbbd8d481f839ff9522cd9b3af4a2831b35f1e1a5d944c5ed1130bff5ee78cb5102215b95b53710935f90653cd2664537918b1b735d40ae440ccb462482492fb06ddd358571e7f303aafef9db6adb087d707c8a50c684bb3139a2ff61b4e3283fa4bbc09ce5758abc0f263347529b8feee3e91e008175bd8f37d7b254f49286d7061fab87afd517b495037f393488a40820e2c560a4e8a3d66f50fdfd3bc1a1648d326d4e76b0a8889c2784f039dcabf0e06b4b90cdb30892d5cc630ad7922cfd19a60543b208271aee315b5c2bff5e37cba5de82a87de1a66b7da7af39b0d30e992aeb010238264f696ba362924f782ab2bbc3d0f43718d986b1d07e8092cc4d2f223c2728dfd386a2522b7b86ed25dbfc4ccd0536139a78f14c388e169aa9f2ed1b52c938c1338a05db31340950d4cfdf5bb5d673a7ec0f9d0ec1fa571c1f9a530d6406f60e9755a559e3a2c5706401a2406196b7a18247bd7e53be52207f5a6b6dffa4cf0eca9833d8bc5ad0db82938c78d9b4f1a933ba2fbe8110fd78454afbfdd93159381012aeb76f4f3fa119c45e4bc9c6d06e5facb06563c2afc77cc1607c46d6c1bb608c017dc48d848f64960119170734671b91ab1e33273e55cda7bb673332efa665cb96f20395bbaffcd042b60f365d189fe419fd4d4e6d4bd9c9c7a8810247523ecccd997303546e7b3ebcee12207719ed2eda94c20065203dd9af02823eecee4c97bf67055142f3d65b9d34ed0406a76e182f94f11c1026a9f66dda82cd108d0addcb57c8d9a365463da4d8795252abd73ec161f6a487ffadb736bd8804ca941cbed1fd20bc838a66eace5438f1c9dc380b923babd251a698d11ac5e9e585807b8dde8d1758d90df586a7c87dc05007ba2d2196beb491d1b15ef3acfd6135e8349ef93cd087a5dcffc92e5358f5ad632014fe59b0bd770855537d647494632832d73fbf4e32fd7c1dfec2b04db5479aa02d09709f2943a20f47329fd9ac07b666b5ce07cb97f01f50867da77775dd08ca77c15b0044b6e1e4a8ff5725b23d71f2aa9bcf64104a263dffc1c50ee323ba32b142a485dd526fd9b64b6b57649592e533371e9b422e52a03b1605a123dfa916ad5a050c7cd1be7b4bd0a5a409c2cabd48f54b9c2098e7ae39e1898fa5c350b293327b3a2fec6fa3dd630321bba7a9fc3711ba107a35c56f1f54c4447058f5542f08dbd271b4d52e315e7bea3ddcab560823eef1c8dd64405612d00ac2c3870d0566d732a0dbb2ce17e91364e9527d88bd1ce5a98be25ea7f205968b227ac56edf64ddd8ea64a4a30431e746a1c8e7446d620dd785cc2341441a891e74d5b66a8694bd0659f5f0bffac2f73c503b04e66e0983c07219ca889f187aae52af1f811df3c765af6e8273e9f8de44c2370855059e6e82ac0a13741f90e6efb3e4682ebba2dfa8d41590008964510815e531707f6686fc714b181e643e6f8bd183e699a3108e6b68303939d96c5cc053792b53aa902882ec5fe0ea45b65570d3b690548f86148aa7b42bf176794355db2fff49359beb61f828d872a4ba0aabc362e2582189d2ac7276e3d67d0f3fceebe0f844c640581c0c50716e9adfeabb014852ed40754775433ed0277894f5f248b28af741e365908bb33b39d1a18448024f62be7b552aaad7789a34957d336701696ec93c5f37125ddf1006512103be271c317052e1e838137cef2cfbde73ab9056c9357907edb75d630156ee2b0bf5e0e323f94913a59c3496c220e17bac1958d0037d8084bd80408a62a41127341d40290ce0056b57b92e0e28e77d4175a14c2eae55c03bad00a2d3f3dd1aaa7e37571b7f60dd87260161f569a7bda72263689534928072bb86d3ade4f77bd1419e936f6e271be3c2bd74dac784b402bdc7173ca8cdc3299d7a66045fcf85e516f150c48ba93c185a7431e3ba3055979c66750c81ba0816ce43e7369b9b390dfb85148420ad4d10204d9b2f6ce73bb3cf26dc2d3946dd0bca5996d1d4274c07570be463ce7b182493b64d54a43a3cf6a06248cca2225996746721b6b0ad5d0e602f42e658e9a7d2709249d0777d1a7e698c4dd32ef08f421447304e29282d8c52a141a50c4caa27a84018f563a97fe7fec6139e1ced83c1a0911934f1a39b8ef4bcf54babdc8d3fe6303c8b2ecc356b8850f3438b96ecbf52a813942cba0bfee5bb214ae3a80b7ea2eb7012daf993b056e77f0fe0fad9475a76d3eb5ccf7ec99508934e81f0b98e733c1565f9827ca1bf7de7e2ecec9e4672f749511e5d88f4419d64c2f6fceb18e18635011157fc7996b1267eb9d2935afe5f2467d481a1803819c5dbcb3fc4bf433c9cc1414165cfb3c99354058ba20bc4e26a91df8f0dc43815e712eb42d6b796d63c26dc37f33995bd7aa695703135bf0cfacea239bda6ae454625a72d0625ef5fa20456565f5c0de6d7d84eb3130487a78de196d1719a7d8352a511e797da9bb502f5baf3d5c29b869d31e5b185053d5fcb8a74d40ede38cf705779addc2f222b84abad5df82721cf3f0ed9a904f027dc0fdef59cd9548e07960b19fc47b19d1a4e4aa19de8ba1edd7da337c8284e8d3501298e70ebd4b0a624f9120d1d238b67db3f488da88463a13e208477186fc907d3612a0672ee3f845733d99b65a1ae055699bb1ee76e463ac6337bc07f90d94e6797b71f2be4242e95832c072c21de31266424b2a0e0f2a104e4ef444918abf5be2e41b89ddb5408324de0caa904ebd26a3e32c1e6d20770d78dc0559cf14b0b8bc8c6fdc217492bc289a6fd8e77c4a3d686ab78b842968f80370fc3cd47623de85206da40c74ee376fea08c0a8b3834d1bbe05946f7d600bb87e1ee9f0324570dbbd331cbb62b2964c897d83f1f17ad2f6266e5d3628812b8d469b13bf19aaba55ab90a9d2725ada21fdcfc36e7156c3b107f83929b1daa6005fb8db8703cd7ea376bdc01ad9ce3507ee524df048286fb56ec71cff50de82aa2424984f6b1d0bc14e58656097e8492cdc4063eb1fa3629af2ca2b42b4ee9720983478eb5bf88babd20401b012906a3939415fd7a49c087eece2bdd68e1a5dc6f7e7edcc8497b6b0ae70a248dee3986d821dcde73337bad508dbf8fec096841940732df95d40bdb0fc231d73a155ab67bc860f6d3ae6a2ab4c252b0399abd6ffd11767bce2a9a9f368382ed2d6752d210b5a245a9c460663070ec876997f52bcd202c2f1dc7c017e97287cecdc238a4ba01a23aa5316e9f30bc09db810740f8e51953cd70fd0fb980b7a85b63a79a14ddd7cc4fd0204ec204e49c777f11b62cd4d1a862e0fef7a19cf45e0b2d564c24507bd5d88fc667a39e2e6e786966c619c3aa7e5e5f3891cf7d3ccd7d4b1fc642811af0f6636387b88b3967808f53d71b64012c1c103350b26e574a1ab3c20b554185c30edb4e680c0751e767c4c97dd6b5e5a43ea3f7ff95d61e8084ccb79476e5b52f88de18b553032f9978a3596f1a94d832c696e2552d732eb5fd83d539504530a6aef3fc943dea8f3ee351f65661c9c30f45fc743003444248f2c1eecdc3ff00e849ef51c251cac06f1af2c71b962a58b5705c4c35d7d6682eb2dd2bd44377c10cbbfd24afe0303768642243c8ae67bd39b89ede7f2282ee435a3ecb2292e659e7fd3e23b72212954ae59fbbff2d26d8b568801746e8ef06f1d00c2abfc06d06a7df767d4eba6201ce616d70e53faa38b8c2ae8aec484aa00b2a4e585d1144ecc9f04b5424204cb6086aa91790a106988a59517edcdd8ca4d87dbce412f66970a14b3e9bd80c6a67564bdcfc51f6848a959761dd6acd16bd6574461de784288999ca0ec12ee9b20df796327d33b20345f3ae760639a73ec22a151ff79395eb9a34e46e3aa5c271432c4e6826cdbdd38c316a41d80a189e07bf3508e751754e621d288dfcc547d6a8581439e1a2916bc2f85460a3b5b3df91cfcdd7229cd3ea044d44a56d9789743ad6a6dc2a9f1a28f749080c762773fc768c0fc831b61458cf55297be116fcccf24e969985405dc93f6f49b1561a920149f3c14d0100631e47d0b3ea8972a208f34881668d7c7bc84ab079c81a42d4caf2c1185e8f4172ac01dbc95d3e574ef405b4a221a471deae06be2999da5a7b9dc950ab198c222721dac4d517452731b0259109eaceee755f000a6059556eb5cc69c437d0a2d175a8048c0cd395072e8e1a6bd02eb506171ce30f4604478bc958a5496d25e5246346e53ba184641e980c11fc97445beb4f16053a84219f18ccc20d4b5d7dcadde01908cec7415b4755dc8bae8191628c0132b38fa23ec583bcd592cc46841d0e22462a3bfa28ccbbfcd57f32a1d314c61bdd473927107ffabd08e436e9b33022401aba6762cc23e5b2a6f8ae68fd70a243897edd1d7cb0d8c2e79f779a11406e44ae3448d76718b806d9db3ca2d7fce699cf02677ba1079db6104c7ce014a4e08413d4ec60c059800e86c17e9ce31445613005d6be549a16d913b75b5825ba6ad126855e466d10afd2920220454da05897cab066c9b959aa275f36a9704c4e32a40f1c65d09bcfddf32f8f97d67a2ccc928ca525abfdc1e7fbc0af3a9dc2c99df705cfceb62fe19198d93168d3a3766396568b992d13181deecc656e956f11de544afd375bf39cfa03f7563d1ad1fc14b1530fccd14cbfc4f73a5013226283d970311ccba791cd4c3b55d4577109306975b466691aced319a5696367902760cac01aa1717bb50567c4c32f4ddd6bf24222f1fa3a3202b58485ad26ef0a8674e924d5ff5e46bef13b9fa6e6d4da1b0ed11ca72e640a9309b653fde454e6cb0da7e3813a199015f7706728c9765cb6806328924ed24783cef5f7f628bb43412054608eff73bcc8ccb2ca88945ad2162cd0ca78ff611248a0c0b27bb86f00efedca15c80537759706c383e4b75b0f108d55e226cb7f02e6b3b7351ed3e64066b33770a1aae765b0bd143092debfebf5af9db28f1bbda68480b9cb186be997066f42f4cd5d4c6e52b9781997633cb9bdbb3f043dc3462ef26ed00249720f77dd6c6683b346abaa78af091af002d181f5d8a3e5a701d430ffdc51b397cff6eabfe3c8808c17e8624e799caab855ebc2c7aef06faadd73dce4d2725d154bfe426c084a53805a00a711c1e11ff5b6f6b419add4c9f6396878d9688113bb79b16a48d8e70563cc2bcc182b7242ec96dd9cf98c3054912a9b7cd27f7b5ced116c6c7591e6f737cd0124e5c81fc5027470835be66410997603eda40bfa9a3cff82a1996dc904c4d1eb7af1d8fcdcfbadaf2fe5c2a8a6f0fd138a44e392b3bbd434701a0a9e713077cf3c007418f03b7f9597a0c5d76d2a372caefea43976385a76c910469fa3a6ff5a8f3184b176086b291b0ed0bab8c75bec9e3b6b94842cae63df30e3cf819c8cbfe8d17ddc561fb195dca621218f2e4cc0653b8cedda24b60d21bd303f30d9c9c97b982844ffdef16f394267fd1afe0718c3d9f5fce5668fdf0402d3137698e7088e1aa9b82547f370249da0e4f6d881b879cdb6206a7e008e8d53ce45a5a6da3ef65ee5eca2405924c5ec67e0aa4be0e1a76f4f0bb594d12e907023b404de295785ff087ecdc0700da17d1c138248283bac3fb20f18dd1ab3eae90eb405ddf158b616326637e8a9bca631faa48ba25972ac6ec30261cafb90a63ff5e5c46cf04d0db3b6c243d3bfb2be4fa8677c9c57d03534a6c642e5801d8f6ed88c048121532f31d6cbbb1a094a862fd80988e700033e6ce59a06d5860ae236f560d09b651a47b05440ba4554633eede5af076ee31c441e95d77034ef44c0dfaa30c4b4fecacbf04671357afe17776b230974490dcbc7887edc13988da45e67956c50716e7b59ee250d0c357b6892c85ee1fd52e087f563b882dd5d92801f07039ea2a9517cda8d518f84839aba15795f5cea35c2eaa2c0fba09f2582065a1bc529609128e2672af3353e01d7907132297be629aa9787f2684bb0f0a5c6b59c15b6d32c29c329a7ca91c44a8f36d87e7f4e34379b0e857ea3ceb662c13a622623e4224303ae045ce60c317933ffdfdd1dc18b0fc70aafc38acc1ea91f18af4d8fe4b3975c9162a0440c130f3073dcace1a99b5692a2bbcade88654853b46c5ebb934481af5be8f6517d5584e7bccc418f7414bb09c37a5d4d71c2ba09e53f24bac4157caac6b718c3b9b4b30eeaeb860889c7f5cb692c2a90ead7da24f253caf8b1a4b8f4983073901d2731166d3110f87b24fb9df8f66568d8a14ab29e9a5bdcac321a32efcd68d9149b1ae663e62cb6d7145f8c8a4c98be2120d4013c22c69f8da6a5533c4f0c1052344b4864e711ff0047ab71235b20d7310cb2689edbd9d8fb069737e34590b0a2051f1caf31d0c89a9adadfd07a8ceee29a3f4479bf4c765f7718998c8e343ec1bf03663d2b8687ebacbb7b9a2097f437da7407d1b094566f967822ae266b642ca19727960e516e289c4ac9a494e3043dc06d1910d25c3d7e25edce1767614c1f08ef92ad67125617c41b97ec3fe2503d9d4614728f9681c841c18ddc6a5cccacfd78ec9666170b9fa5c24622b7077386dd63e98f346a938902f96b0708511691e15584cc069854ed0ab3f9cdbcab9e53ff570a0495fd7079847721430950cd5ffa375547231471fe337c5467e8fe14ffbe77667fa27346b5b46f18524d700b05bbb2657046802268193e23d784575096c7e193929d628d9857399a7089f83027ecb2203fd5582ad5c892c763099d9cc54f937372ff72f5cf001d4224f860f874c33b76532d596272b1c0aa14c75838e58414a75e58935840f5c0a03f6ba103a283b4f5c55f2827017bbb0139f2471b6a48386509db2f4244d1f8feb68ffe492377585f824eedc53d01f0c798002597e544d04ca698ba447270e028ec871ff81589f566d333d98143650faf60dee9066d2219194485c2e799637c9987e5da8fcd62531530642cfe2b38fb275732f7824138ad69e921db6d06e064fd2cfc2d41169df85b4d33b980a863251e9ceba4287e051a62d243462b0e229a449383dc6d558eb491184966f0f9c1a5be7e921f323babd2df458e93868051d0594371a367a02ad569bba06dba3813d4791b3c7481a716e08834386871e9135d42fd75a33d84feaa30ae59e329bd5d989214c97e881deef2cd65ec24a8c2c5cf8d1384e3e87eef67bf66df615df082ef61ea0555059f31a00b496028763fd149f9c6a1c9f728bee91f2dc2446931ad75e038bc51d880a121050aae13d90762719892da315a7b3da8516043fd0c34c20fc96f47b45e45a5e04a5e49d22a46400ddad8a76a6c9213f46cdd9e383b486bacfd926da8321f224483d5fbbd8ae581108447efdd07a07c45af7efcebfc11c7c0dfc8c08a6dffdc74c82d855d15e3065c3bfe112e77a96b3f3546b9a5cf772a3cfaa9de58efbbf699cc882728401ef272286ade3224fa870b7e0f272fdeb1b7f9587e685fefdef2fa9022dc423cb3e48544b76694a1c699cf5509ac3998a049216c00f68b864ba6a373fddf3b42dcf70acdff301f9e7962daa57528c7a2f7ff0ad2122541f5d8f5491d36e9e621fdb14b6d5c15e56c75eced1391becb3b4b0409632f1136de98eb6c46f6476e77d6e0dad5be8f16d9ea65fffa69d73e4ef5ca77e4054d194d4b63288b05fcbb58e7242d8007d19da55183577662a0cac51ccae6f2dcaae7c22580d39b1a6c99c546f39341a4badedca2989e74a6e74637472d3df917f495f390508edb0c6330be22f3e1170c8163db0e20fbc7e0d2da69bafa3f5ea2220417d2ea3eae03a1d89f76c7026b4ad3a37d2a808052aa939df5973bf7459d1d3d53396f8febea79bebacdf482f917b0dbd72c5ae5236c391cef3a67697153c7f7bf76ae6be3cc6e9d749310076a37ddb39dc9512450b1d330dcea6bad84e4503968372679204296730fe2a49421a2a7a8acd2dd154e8f5c4b5f6b5115ee75dd01a1decac9e81e57b8331620558af2cc1eddd9ecc06977cf96ba37a99bf25a475d9fde3ef6a0e74b1cad5ae66ad9947503a049b8613d5be5dabdf9bed3917ff38c46e9aad1eede46d74a3d02ec6fd3fbd4d02508dd4efbf27a8fd81f36d137c5761fdbe262b758230d61354594f316c716fb70be97a545a7b98e2099f57fdd5e61a1798f96d765249d0e1581334eda1803567010606b007acc6b09c68fccb493e0b7b84abe23d55571ab1e860176863a7d54d7e8b81493988ec7bccbdc5ddf110e1b06cff826bd0bbff450c48cea3bcd713c6920265d056d7d5287f96842da2cb3c6aeee15eadf1ff0428ad5417e0e8bc5ac4c2f4e84992328965dbe883b4435b5614a376323feebbb25bca017550c0e84f362d1a183ba1e81cffcce4fd15e4eeb4a6b9958ff918a9bbfb141713d42900f16359ee28aa7c7f8c8592c9c0b72ab7411ace28357396150327c02bad246b4e5906d8fa755caf8c627b390b9cf4134fa332c7b0d5d2edc10bd3e0415b04ed97dccab42fcb19f1551517b380e8b89f6236696355d1b1df7c3324432aed4de52886ad039f0dab3e43cf0507f87cf9e5a93cbf38a24e0a727a6383305972db6be0e4e3561d3bc0f5e3130ae9a6b585fab538008d88abc19fe73615505930aeb0fbfb388e192fd1e18ec8af909de9f6c02338c017e4900571d5df4fcc6ab86560bdfb3b73ef755b846a29781fc19ae6b17722bfd68f1f83df92fd072a4614c5679d4dc12781a98b35fc6bfe89b7d9b682e1246f4f21034cf7997b396521f89ed07951f6b47f3a711c93ea1c3ed1cb0600ce05b47fe6b7a7a5717bc8c3413db2b10769f0b920b2537ba038591bdb59595b05819edd513d45e08707b4132b274486197f4ca9620253e8954291f70da21b7a5028a288d202b7a8e93dacf44fa31939dee8338d232e2775b1ce0601712dd6ce9e15dcae8924d88f2ba43cbd126e80ade292ae9d2dd290115c7d7bcd4d5cc06bfb578818ce36c0cb18784bee4232b52d640045dfbcd63dd0aa5b972b37f3ca2c7bb657a5fc2eff9f2ab557c06e9e456c7136f6aa417f75b66a15529b0b817dedc384f2c32227e6f7875f2af70e953bf5f3501d4a64026d47dd3412c3df67adce8e4db83939f7e7316ff951906d9f726a648116319856e70419123f8dc6ad3b1568227f0b7daac7e4d449f4ef2319d9c776aae045f9a4e573df3defa0c8f8a89ec88c66e58c012d55e8a213d06ad7e002e9e74ecf1bc9569a16669ce39a9231a1883b64df18eadfc7da79a3a76a92fcc911e1ad6c1611e4cbcaff5ae09ca23d9a5696c4567733d80b213ca3f246f2c4b04196e3e4696d49a4feade7d29a8c2605fd102ac2083df7766dc3de8816e7d8ee5fed3da2d589957a401b355bbc9512e299ec59da993e3022f05b2a1a53141ab6dc8cb0883167fcac8a1a446c3ce814854c8c35eb144b2523dc3e639e4e0f0adc5879f3c1e8740ed3b81014b311a6843054ebed112444df6473b7820a5000990032310734470cd7013681dc37ae48213e6eae3420908353d4f0092ce047387ff1400ea95dddea8169aadb81a19c7d997e4aeb2d180c15dd544b09626b44d077b5fb8f39abfc0ebbbcbd6e790e8b05a4c88bcb9bfc6ffb164d2f306113336aea65d0d168ff40bdb0ac77c93f8771ef1cfa1876190ad52d95a85bf72b2536ece682705d215939680877b4cafb598cec6b458cc15144c6bfe74aaae08605577ebd38e9aa00dd884d255fa3daf589e60dfbe1217bcfc72403dafd0a85d0650738e80a62ec6b6dfd4e75ac3092cb02fd7aa73604a6b6d9964638cacfd952176ad14fe4050c48765687051b89ea1871223b55c65902b8e4c1c29d57113727132976bc1970345e1c03779ba800331a8d2153ff9e7d1d049c55a9eadcdb3a656659e11ccd7f81da0b430431f019d3a91fa1675e8d274cf817b5b644a2d19323805375034490a8e13826fe4e3c9ba2003c64457549997b222defb84f1ce0f5c22213cc9c0434a95f817357f02fe5d187496e29c1ec13d3b1c0fcf510c7c545f34d5093c7e2ea3a41cfeccda3e12babc2c12b9bd7cdfb6d9597712ec13c17007c6747fec47894b1150971141557d0e249c9923f4228ea8fff804df89832d8589a673e72c9fef265c23c048aa509ec41707e28fb75d1f049290540a366e2642ea0235c1f75e5d5b5de11f80cdf506533d92ed09e34ee0f163df57fcf442d1f0da9ca200558ad1984295850f27637d6bcc83b4c118dd25495dde88045680deb1d88d15f3ec534f50e6d3193414c2b937bd804c14bbcfa72524d8c663cc85545723e1f2fb7fcb195b8ccf3c78055a16353300b1df8df6aaf8bc2e3e4544847a3cdf0d702e5da6d5d46699e69280dfec6aaba79b2953c3eb0f28f32c6f101f47515ec7318af0ed2e6bd45d5315a0336c8c75a2d5b2b033f72c2a5067c23112703aadf3a6466816919b965f2bd6d9a5d1c8998a6d1217790fe599f14de3a1c5bc57ea4d34c377102430b9dfd1f558f4f8eddd0e0d8cca9d6f834039e5d8d4d69e1246d7838f65586cc74a6b098095f598f7a544516217818acd9f7006ea71ffc22eb6a8e5075c08091e835f6cd26bf3e3344a6fe8d3001ff4112b438138971d7b5b16d3802a74f389e80a96db8028c207ec9444b9cbe13f81b7621b5e4cddd4b96f6c0b21cc6255892bbdb6806c2578330d849b41ab96812714cd2d038014e368382fea409253ebe33b68052d20ff1caf98530ea363b2ccc51e6eb434aac60e4b740105727962729267d47f626701cb6107f18a3cb75564f769886ed6e83753bfad469e011149eb66d5fdcfd733e769c93034204344af3463bf75fd1175c0a73dc0062f45d46a26b8dbf51ae5b537958039ffcf96e31334fcf126e96201b45cf02ec6c4f43b3754f1f207dc429a8193dc819ce4a34fbae686eb7bc3c66dcfedf3ba68ce966af737b1d2ba1a07e341eed4270b0339e7166b9c2b26bcd9eb14b332cbfa6df4731a3a844c2390da1656b452e501b87f51b6b705136d408d40109f243cda47162a24f64eb520af470e4ea9d71941b37ea524703d2ab4fd2a989b2c7925a2ccd46503dddf0a907a9f279fdcbbf60d3c9ccabb41a56ba425266e5321865f68ced183be39429ca07f3d0f958d1ff2978af2c8cd0c37ecea5ab5e41062967f0f8ec2bcc635c9f1587d229203c6245202e16de948741893336cc501aea51d2d3928f1f981ea802050814ab894a2e4dd2a5ce7b40724d42178459cb96fdd138941a7d331bc7a481365764bde1218795c74c263f0c377a75e24be8f9e2d762b022e9c9637edb96d39ae75cbf0b843529fca5340be5704ba09c3427e4eb204fe97a7cf3739edb40e397ed2e4860c7ae7e4618017dc4d0d37152f5747492d9c43844ac6d6d157d8ac069314be9f544c1ffe398e686236bb80c434dbeb2f79511084844eb0245d89ffc025ab8754cfb7e6fc71a586eb103bc52a675b01647beb001ee9c3b6cc3e2f00a203da29350d47e28c2815242758ae92830b5af6c14ab47114827ba033d1729ba0a9dc0ac7589eff346d58636f8b8a03d2760dd2b4aa920c273002236524d4e41ec88f49d357322a1450650c407eb6f597fdbbe862ff9b7d97a62e24fa56e5c23a01865c2a8518393e49a6068df35737de6a763b672f2b70698f6f201a90b2beae98f0dc9747dd2f97be20373a4a2f37aee3d0d415f54294a962644436cf3bbfa2dedf8e363e80e6d498de9f2076cfa3d075451f9b6bc8c4fbd806e5d5e011eff7b9101b6547183791e144decebdb5243d1e32b9b3956ec4d52070e5c91871c33ed76f7abfe3a6519eda2d6de6304cd6360cfc0c7d02d7c8c3db97c5071bda1e4aaefc2e159481629192ce0eaa10ca9e3487d3d0385ab894cc3f0d5545bed298de2f3339d6f1d9d1be101821233fa3b72d4068a1722dc17bbe7655e389bebe01c04bfb39d7e1c725610b6c0650f434a251c186d464a2e40fb57a5485a60b9e8b0db0b8d71cc57076fec7cff9e26ac153a36f59cdebdb0a2d1882a25318db0da8dffe82c79612a4b6de6f9665e26af87f3fd5b5b7506d85ffc86c63c5f6515e50cda824a9c06b05cfa7bb3434b9c67b2b2daeb6d912bbe02f357d1d510f4d311463d721e3f51a19f70cad14c5b295e47e30bb2b0b17a3774cfe524020f18a9cbdc0b3e74d6697e9db7f80680952f3f6ee041ce4171c8ee1029472ea53a8bcd5a87bbd6e99988125639f41c79aae4bc02c73c16013564f7cf2e7756f2518d655ad7e4e9f0e2c59222e30adfc649a6a87704da32b728c24604ceb5f5964e0494d8c7e9f30ce420da6bb63f9fa3a89fecde0279d26685475fd02bf86dd964fdd2ffc3d3fa60bf45f722e0255d7b69417df5fac0eb64fe801f1f9786e3f41e830b377501402e0db1c156259f2b1dbd09e235c8a813de1f5b7d0791fdd08373252ebe4672d431d202f8f8f01a1a9410a1671b6b27c9b2f1eccbba41224e255652738d7b31441f5b69139d323fa3e342d4af648281c50e8e4539c941181ab83c2b4b89591859253981b6ab2f1919d8138be156f6656bfda8aea33817a7d8e04764bff0f45ed2167a9a21e3b30abfc8c0b0e4c1329f30e3d69ce5842afb5e17002b53f7470ee46c7e2a23a53cc72b3041b735aa2e73b1ac641b83b9466753a91ed4d544af6a49feab99974ceb2b58ed7c86a10e8066c64f0515cdf3757bfa7e09ea3b5a4c11bcbf300ff69def24e154a6843f56bfd7696e4aefc5be2e3e0d996dda456fdf851e468d3ae8fc774353f70e5e7c838731cde2376bc9ef6e2d0524053056395c00717466b5095a7492ef051d6e4c824202fcb02dac786e830e13593c9ac642c48d7fdd3995d2305428c2d4109668cf4e4e275dd3241d9a7b4c85b23e0929a457777805191613c1762a36d27e2f7da8ffd059d187c684f6a805e7e53d592ca028ce2606f24ca1841ea0063290188fe1861ad328f115982a551a45d04f6a431e8202770d692b98054bc96e8566f8446a188ef191c5e47910fc8a574f35d5c2de1fc95195b02a6f38d4f9ccf92c9fdeb2f31ff52c3c6b32fe80d9da7f0e00a868e4d36e067503198b33bf5c71db3cb0ca85dc2d8ce4dcaa402059666c554750762d26bba005cb8ff1c162798d5ab4ab1b9d300aa4a5089b2ea4b1eed161bfa4822a5e16c132a6f1853c5728902bcc1724391630a918e998dbe25be3a6224e074cd70fc6002c3fc9933fa5f639fb1e68916fca078f07479656e5e94349055f6f9369884be600bcb22e73c9c4358efd965018120df4a444db0992bd8b034d5ea01ca26b6a766173ec2a180e1fce74a8e07c9cbd7a79a89594cf4d0a990d056b0f670209a82c39d98c43661355e3f0a006eb416a3e138019f9fce7ef4f8030069dbcd609182702e0988b55eec46428c6c3b95257c17ecf413b5ebce4ec8251478df9bedc43fefa52176f6a22cad40b3157a04c7eb81881e43912321836f82f73b78cda41190535b1a9e0aed79adce3ba34ba9d5eb54217677c740d9424f56148d0239bacc2f462a394d48b5670fb2b59fc4e027b6606f90fef06b7b3b2f2028d535517608bf799c8abaa96a79b084458d0c6bd07d5eb15e564bec48eca733f463958520086ef2225dc2b7cc58fa32e53338432e89dab20f2720b39f1fd63572a316154ef454b6878ea52f575643393cfb735e3052a230cced66d1e8a6853408d8e096b0f607597177f102a104db1316181a2a8c502afc4127122581c2c7939eacdba76b01d9a60e5368fbb0b53da04e9e0b28b6e2402c5021549339c5d8b491fc0d988856893ce0c4a9ac313e1bc40e9c8979f6dd3303dede09c5aa09dfc1fcede0ab5be0f4f5fb46a7e127708d1ff000b01a0212fc8c9ebb48868f61f135429c980d3f6f8c4c34978ef142e146a5ae73a45bcb2b2a21aebe0fa95e2bb3c14fea932e901696b6a675b186905968d5cac0a8772bf5fb9ba2913d62156436838cea6ee11151896343456d5f2083b3faa87dcc682774fac9dc9c31554c744bf0b0cc317747c6f9ebcb8eccac49a5e9ecb114e84b90b2cd465cad047407d0606117fe99f8d1e7de75bc45566c9d3ac4e583e30c5e90696ff57ded5584901ef284aca52e867482e0df6050156f5e7e946498b086b9d5bf58ede94d59fdd36b9d66ebb0a63ea2c3cda13cc53bb9a789993c3009dd1273ce10106eca48a507dcd75180cf9f2b5e8e1a72f26917040b126951f0bd51c3465ad497116d3fd2776502317ff527d8364147cd64809e9de6639b621ca91fbdb143b979adee8f9ad096dfd4c0f197646bfe09f3ac3b2587140a7759fb88d74564c9aa5127ca5192e8737c7324031943ea649a7dc08e68b2345cb833f271bc265a45a8d6358fb79a2cea4db37bbd1b03a8aee617bb82abe36acf802f50f320cdfcdde0a01772914b190b9b0127db19020f8063b8647cd7707bd3e996e4b10da0f043bf841fc6722d7c153e05be2f4d3f90089bc0a7a72d6e8e9d0883b95c6bd0fafd6fd0fd7dc64ff8d05ea6f6932aab9a2ead9028b9543ed07284d473bb0d8f68e845f1c511e6f93d6027e3a4991e3bb476ee7f8087e7a43411e2741920cd76f4aafd757cb368bc4300b951bf3e9961c11478722c62d476e2c76e37f704e90d26fd00100db6e7cdb298b8c0f1548603d4e1d8b8a406a9332c500effced86dd3991b728d032b46fa8f50f4d7237fb74c198fcf99f2f5fb9416c436c53f7d6c1b44ac86f012bcc6e526a3a41388881da69599dff676a9c3414cceba7d575041749b5b5d531620e9ddcaa2764708090e8281082c3b825c384fc4e54dc2121b3b74e71728eaf1dbf7237385ff5230ff756332c8878a641c453f5f2728adf4acb6ce40784057cccfbc7d66852054024a21540c9e57fe27b64d6b9748304ba23d4ceeea036b775b67d55f89a8bb6300df9467c91b1f77723da10154fa840e22a1be7da31145412e3823775f6ab4006b932c007f0df5ff4f893c00eda9296db3214aff7f11fd6251c66181c6926106442bb3db32967df39cca46585c8b2751b10e6ad7d8197e13eef924ea4c562d330fc51aa2f368bd826caa9654d6485e22c272e626cef266106bbb254f3dd414562fd3f0f736567725d658ab60a13d19bca508854484775c5dda52da06523da134843dadcca5366477ed19495b00a9d6a7aaf12bb2a4031f5eb9f47b0256dfa0c134b0069e33e9018611e5a03333cea27bef71d35121f17f13a993b1d10d87cf40b05e35394172f7b9d18abb1242e27566f719cdda52e2269cd4aa8b445309c6c30646c1caf56f727da5ec7d2bbebe5876279b189e58a4c5daa980f5ebead93e9383d8cc4d717c2feafc2eabe2760871a027fc42b8e8239ed5bb419a2e38c6fd1048e5a6079c60336223a246a9fb3d050addc4780914a01d5413a507e07253fd15dd07f55c0e0dd6263ab674da2527728576335a03069e6a190df2f20454a659701ae6ecb085a8a0e56192e61865d50a21ebb9d78b0779db1dcbb9dbbe1ea584260ac5a7986457e83ac49eabc4e3c7915241250588e64558773b4348361c1945911d1e0a8efdb32ca392d7ea7a953457b98ce89d1eb49105b41cfbd65eeb816210220e90b064b9cda2d2205dec307642d60d278cfc4e6ec0f9dbba2432fec21cd41e37e413f5114ef721997ecc380c54b51585a09fafcc3fb4b7661cb37043c0b57a81a52b9459dac59c4924cff407eb90ae6893b8499bc3c3516ed7c3ebb4a5f153279cda041685a408cfcd5f304863ee03bb2016afa848caec81b83e3a0776e0600f7f08800d73d125efaab3f73016b86abcabdc2c5237ca8fb834d8c321536055e62456822e380bea6c524f016f2440817789a5155660e67783f9568eb687e0236c7592b9e9540837bfa9a855778875a17271b769439029308150934fabde93d54bb79b63ad4786d2be6dd0fbcf8e924a981cbcfc1213d347841cf28885b1a2f4a80eedeed5e87e91fa19a607a6231e5b5bbb9507956748b9ff4e90d2990ae360a03e25e71c3f528536aa00ad5622d85652b4e7f50ef715841c95a6078af5b22c1f8a1eafeab85e40e01d07d9b643423cea8b4b5301ab95367972544d2f6151f80cb491deece7d588c3ae20c7825c3de727ba3174993cdf109b39d42c2d240171b5418dd7dd42b7f1277a5c05e81580d1c8ea25c2f43bfe1cba8fe624f6d574d4d1801ba049e0a551ebae9f8d3d47f2f03bede3215234f614a7f062209d1036b910c0b70b655c0cb1ed780466ad13fec4b08c2114f96d397fa15f7c97bb01616c1c1adb55f7aef73ccf0907a30a7c6974e9eb1da3fdd46f8616eafc142d4d21656108684c99a1b61fce4b6ffec7767e96069c0cdf546fdc986233288ba34356e9f86b7caafbba592d89d8d9b851334e271b31bf5d46d6916b35cc5cb2db826082de974cd0285fa958e112bf0e8586881cf1ab1c675d06d9927a516741d7fef3bd2212cffa0888ced77fb10749a062e6ee6a30d47f07759df7a708de9ccc9bb70e917631730d66dff0870854507c35bb5369b60a022741092d4920bdaa40da9470d59cda0c04541091770adb46c8013b33397edc62feb0cb7ee9b74d8cd2d61465eabb0120aaff9d42f2d3cbe84a500f58c95361c206231a77806f02154fe8840b3e9ae99f2c33037939e79cefd1ef6338ec0558f48de30f4982d91d249b39108c764199514268ef3f358e425188e37b9061767a41b67446a780af4c4933f0c022e0ec6428a4cb4ab1ad91543ffbbb6e3dc6849d0ef15f00209c08ea2b6dc60678a5600e53f1d882c91099c1297d65251a00305ac753c659db2938250389ddb058eaa76718d09a12f0e080261431a6218b2091baac102769031a9ce12ac66a728c839e4952d23d46c713721283329d6d065a90446482e93129c3dfd1257237539c09a33c9cc961bca0e59369b7b8053fcac93bd8774f7358e009517d0fed729454b196315fc51ad88ad3d50d7a61d8f4c4f83e0cce2a295486f0385f635ecbe35bd8b990155b96505d17201cd481f3ab9ee6fa9338ff6e8a5c97f738830002044dcfe1c6524cfedfd5f33bab434e0223642965158b3352772ad65752e03b53154dc2fd1411f4b322d9031763bc7aaac5597d716391b45bf2c07afb565a78e1e359462d8e0972d557a02e7088736505274ea9c647cf6355f034e6a3e121f318636ab63294b2b143e75e9306bce7b2deee62c57163f40be213401ba9877aa649c4f9455e6e10a7c9b991a5ea36a6f7911c00d929a20dc6233403531b48ee8f2056f148fa0a0283e003fb5ccd9fdc86297ebabf468eb5185a9dd318469ff85483c715f9286978c230fa84af2b5b8ab92500c823db44427011c892b720e8e958c555e276f668207aee56d7715bb21c8120c327d83c4452f18bc359bc73a1d124de10b220e678fd011cd0cd253f6cd32fb3a8b1c5639d05f8ea5a3b5bd3ff65004fc21ef04de6445c361a807c185c821b8c92c3a7d2487f8275ca9c8f40e4faa4ec739bb51e2baeaee569ad371d1b8e53ce00515a6a14a23dd6ee5ae163b2a17cb9253766e022f32188eb3b56ea99954dc55145fc13176a14b5079ae0e266081ddd659afd21ac69223b7b1df2df4b4f34c08a1b1b1b19dea8b2543fea3fbd820fddd1e779c760d8fcdcb5acfef460d51a9cb1b75c94cbefabd18db93384b9a40311b0465286989e8983c75fcaa44c8bfb2aa5f0608e5baa435657d8b915b093a2cb427ec6d67f3ed6d9f3910f2fb380dfba7f7dc2ebfee6033b9037aa52fec4b195d08fb49848489b6d5fe50ed8e68dae8826efd94827bc50b135491321c1095ffb24c8e4c5068ac80b97fc55a7e2a42df7cf8023237bec930c0d599c02acea653200ef2cbcabb22b9fac76e1b0700490d564c9e41a0a8b24465ecffda64102391b31ece7c46c35cb7f0eb40401314f99ff1a66c2ba57f67a80a4d5b5f90fea60ace25fde6151a4b273f08e7d118072567b61339c5caf64748a3896f08d5f5df20ef3b00f67bf148891c2afd904f34f7a2e27c3c23a101db2c24672ba992c8efd06208367fec93d90397bd36d82f44eb2c3c29f19141b9608d3f91fcd76439acf78944036675b32024bdd750fbfac61eca24104909e27cfd4631e2b84d1334d26cf01f9b3a0db4e2217768c703bdad61b7d0459c48209d0e07ade93d7d89af61ef883f47b52e48482259976c243399a376336ce9c4ae936d73a56ffa77b1190cddf6160940cfee6c9cf49e8fd8954b5d5beecac2e3285da3a9290c7e612c6fb4c6201ef48b9eac92a9d3714007019193dc4435322cb4bc964427091a0b9c315a08e06a22ddaacf57ddd0ea9cfb00156c9e9040700eeee4df97785dfdeb26e5d82f18517c4e4a14ecffec65a447ebc3647341a1e18ce29c63d14805de90515cfa7f8c69a6feb54903809023e72da99c0719cc5c222a74844469c9a22371c74f2d4b1e1079ad4275e52562e23f8ee9dd5096369fad88b3b02a88add4992884352c86592d9b9ffdf92501d83d41361b253fc9d1d3e509e66c6cb5262583351bf455de4c5f90a3d81b42d62d76f63b2b9213d06d52b17523e81106a510821e18aa422c803a10d6f54516554142a3e7ba9ec72afcba8c20415a238e2792053c0abcfe60a753d07f44fdedd45d14e650c6e8641754f703e454edb711f58fc4545fe0a29c566a9e66e9963ab4ae4aab5aa20acf44e99640890bb930ef63e05ac38fd299ad083cae3c5530ecd770d1f6bfed275bc3cb21bbead4daf8a4ba5c7588fda9b114f356232fb424849f09ae8854b2a4cdcb0cf98d266d0c23ed032b9351768fb050085403963b39efc39cb45befcf81e7db087e76812649f44ee3b4d18c4bdd24b2da15d98c9e1bb78451caec5d5cd0f20671c43c2807b55b0e83414442a5dbfcb0416a2dd3723318f39075af2fe2a03265c92eea5f1fd4d535706f9552f462b2a860162c5e6a2e60234aef84cd5fe085dd5d1f7bce317f0a988693d3d0598ec06f303540142ff2e9b4815b2434833fa3074df0f0b5e07a4230031cb4522452c00df545a559fac560ceb32f72020156ee2817dd32ea2650814b5e12379c40719a2e9e0e4b2c052c5a69ccbd82ef16901c2b0f15667414e9ea69b8869a9fd20983ed8342c07845daec4e0add7f1c67c000a61fae813a0395eb9710709a203ef3c58869326e0e5a1da1e859f2a0830f132643b56ade0a414b95683fde89643c2771b9dd4610bab26206bb80a62405e356b4225b68793ec5e4060860019397c251123c6c3fd1e6527622d24d8c40dbe4b825bf29926a5115c9b07a5f57133fa8efff43046d7bcba751aa262a889bfff190bf9e414b536b0709c313242bfcc013b04d8612385c40cbbf067de4b5d63d4c5e10ee78f92e95b2562fe6ab0f99b4acc68051f267f9e499c019fc46952ba96a63c7c4589db2ad3932a58a879d21d77c4e364528401dcfec07b8d8c72d7f89d6ee06c9cf7dfc076b6b09057c427eefc93654f637203991961a6478a3c203206dfc1b1763ed9cc2c2083a0f433b5f1aa1360568a117588493c88ebddf3417045c3a0951cabe1deddfbcd8c459d99f252693237823204199a253b3be25b5721d976816d7fae64b46bd785265e8033295341d21e68343534d7c04b18a44da2320ac2530ab4d0454bf9fee5905354ad009e2143e6c806a9ea18822e4e819d2a752db2ac227e15ec4130682b8064a03997e98de1ad04a09606491ace48a358d77623dc5bddaba21652d85611c46882c62428b6093a15e0d0c009e4075bacd068a963253755e54bfb91c94c3d8731ffa6861f86e8b2e8449d5b1206f958d954282184d8189ab6d30a7fa004f34d717398c97e7c4ebe0d25cf5bf539eea89f240fbf369521f78b466ada0384248355e12562638b425df643f8e7738b425a2d91491f0a817f927bb1d0d7cb4bc8dcf7d88ec8104e4c5fe1024977d2e38676ef98a3dba555764ff81e5916ed5f1c36c714e0d4967d179ef2f5144990b185879541ca3d1041e3db53ba7444a0d551533da33231b0ba3f2afd637c4d2ce41609e0f6af51a49945119137bab640284b2a23a4296dba2afad04b11821a684e73cd033f29e3e552112cf1b4abf7a78fa62eaa14f1ac6b1aae01c5f5fb859b37ec6ae43a98ee08718046d475e163a921b96a57c4f4ff3de4f48999701088df63acc5979fa671720b78fd05f765bdcfab407002924d0723d360dc18a65133bed9f7edcbaf9a16ba8f8479b28ad6b667a8306166f490916a27e5e524c35fadb7146ec6dd014c8b17a055cbec4e28e8844e900dfde07119f801e250c4404f35cb031cc4ef66ae8fcca9ef7e8d20ea6dcda84993c730ab7085c6decf646320f9925d4aece9bd2f64f68b1fe83b5637f1bf0c64e4e06c408a3fd615c6c4c6ff64495339fbd367c234ef768f19ec448f8253cd7a51a7d8e6eac3a46c009aa36c1210ac08637602f7a296f1cd1bb588083443e1f3e7f8b34b650121cf011545abace4336430c5bce14b8c4d11f4e3ec990a7c52cd5d0cc566853e799a4c241012630093365687c2cd7bbe44dac6e61c1e807cdd90722853eefbeb90c18aee5631a16caf6e48a72ffc3269f83e090f35a8d768b1280fc519abefd8fdd9248226443ce5fe6e6b5325ee5e5abb1b3468e25a0591dcec6f12054e86efa155b71fc262c28b697fdb907b83d119c666b17a8a6029612649980430584c9efa8edec6822f3861afebc10aa0aa5328c5a41f49384762d200aa462fbaa4ab7250d832fba668091a689fac7310be6ad4f67eb8c3ce44b6adf73800add513ee3bc61f383953b4d8ebbc2506b10093aba6727d6302ab303e4f717fd67f4872ebeb7ede0c5be2701587471e64ccf79c2f97257ab88a1c42ad641fa8decb6c7a5d624bc8c8f2418f1cb76df57a4dee2d44b1f49a2cc4bb0660b9ba4a728a08c94768ecab0b89e2cde94d93ca9ec882ccb421ae31b8f679be0743646ef1dba0e6993fe2efeb9141dd9955a245d4893a32ebaad8fd1ebab1c67a5c424a15e1bfa8e52be01eac3552fc5e948884500b71245f5368c62ef325ed1c9e118b737f77609c2a34480bc721d661807a8e86b4068c03e44f088e12c0a687704a4fcdbd3f954e91be6be2522322cf72f19e5bb256f4c54c034d55c8ea48cd275ddb8d065f6bf5486bae81c746e178800db925ccd1f1f12289d1429b78e1ceea0613cf173616559ea7093de8b500d42afbe9f1d4fa02e23fbf6ac4cca07f86b3db33f987130757e35e2963d7f25a47684c5f85ab67c529294682a9bb7ab16d125a9ad93f5a1a17bbafd360d58672adf22cf1bb4f154c3d4670765be4648019619eff0fd534d3f5420d566bf7e05fa13c5341b98da17234842450cdeec4f7daf6b8deb8ad43b4ccc568ab177fd5d18f395f6c25b620b108c411f772a9da03e86135cf81f8122dfe653fc24182c03026c1756e7b2717bf60df007efd1c4beaee8c3178dab4063484e23870feac4173cbeb156f1f979420371feec2a785d0bec3825367a19f7acdb44ddc3be99c9188c64511581794a5138fb918153ba8b639489fd0ebdaa16045030bfac3ab38028528fb40666fcd756be3bc73a85bc9edf8e689fe6ab8fbd053e063c73f59d276fc4702c71ef57ed11ff6fb38c12186b292cac022cd6f8b985b96d6f614938262d2d77c297e1e934fb3bb661fad20432e8387d1596deedfe050add2ae6bb51db729042702cfe5c903b3e6b65ac9cb8f86525561829a1e29607ac898173ea04de73ebbb47414176f4ff415bdc1f8fd015c8860d6ef067d157ec0e4e0e34de640c22d54b552632c9208882f71df40530c9d1eac8ed6ef8604a61a18848b4b5b9081137ab730d347b4752315f945062a1f6ba547ed4aa9100915a6d970de20e3aa66d22994c0036ed601546325ff186dd76b9e8ed4df1a7af5e02d5602d55f4c6a34b37f62e6c7741ba6da498ae7e9e2e1410eb9bd9e64a486c24721b572a802ed00544b815dcc682ddb8e493fd68537b83fe7ca7f280406a49268cd7535645d7ba6f3b1316acb8da83e21b86b2bd1ffda6283357c684ffd41cafb8a6958a27196209a1d6fa45889ede52d3f522ffe87e538067ff942b92d3854cd29266f1a50abb71579278410844363e632106ffb242399aab5d1a7d7d8ec579a62f86aa9447f02b97669496a8b3f4ce4bf7c4b2bf75dda8ebadae89308061a23ff9fb818207bc64d6033b5db04c7fa255334a8f1e9e3e3c72489f130ac840bf45ee3374707b120de11d43c493227eac705d399bb0b1fa5aa23eb4f54135155eb59bf2a53d2d813365f9c636b1ea46e3c24dd11adbe7b660287aa5138a036fbf9afb844e9545390a870f1464bfcdb3121a68112294f2ae620650b7d9e6cb1f77c3991650a3d7192f5b6268c1662b723d0a95459a396b2ed878e26e8694a89bc3ff3a626783fd98291c2a797cfd8ed93a3ee77fbb85e004a9db1292dccb37545999fa72b59516fc187ccda3a72d201deebbd4330a895374ec0d18bc18093b9f5510ce76ac0ca4a8562a4473b47e594e8a43d852908dc0fb9861ca44f11526bd9f60a0d39e5513fa1c0e2228be10fbc537968a42625ec2698b6c55ca668cb50543673e29089fe91032f7dc74e9ff3b901d19269a69094203c115a8edcc559810f1fc1a6601b859bb1ecaf748fc1ff79b7396dc564687264870b1ddfbfe4085a707de215cf7a3a90d3aa90da5206bedbab5f21c35671a8447ccc73c8b8950324d25289d689d993bc503b49ff30f75f5053694daaf5c0f43585d716fe99074cb918697d737c65439e934c459ded4b23afa97f4cce4b9a0780c094b732d9406c43cce847aa3cde4dff44dd53f3a2a519729ffc6f66ad2b31697469b549fb3f6a52604617bc5f7f52c2571fecd7f2c05cefce6742dc892ed69e8e8ae1115b1db6c6e4dcbf9fad0fd7d5f707743d5082742b08398903242953f3be02df0c3aed67fafabbc15752eaa135d643dcedbd959fc72e8cfdc756e5e16ae5170d0135640a1ee21d50b394df853101961cb6e5fd4a1005194f45994964df0b012185b803ad99e5ba50bb288e0a80161a6f94949ad4b9f189dfc2b789d26ca143db2b3928fda35db688d56a2e36f7c39bf3dbdb9cf1ae1a5d2f327cb4c0e163272451e554ba35d3199ab8c6dbd822f111c04e94b5783bb7e76ab09430592e6389ce0614f06625bd7d85dc45393842a4366d1363671cd51533ea2d61725d8bf9e12327bd8109a6d849373599200680b40510d271dd348d54ad307ebf74633abffcb395980125876139a10e87c89680b4ba0bea3c2ae28a2e076ff9e53f595ae49eefdcac479e618d955e4a2815d3eba55c15c93d06bcc0beae86c1e68c957f623393b6f9781c4a7c658a52586ff14285091b8afef80a458e0a66e1bf784dd378d16c54989fdfa9702bd9554b4a312a42f0c022a91ec800463c9347a06f14e8a0cf9224cb66be2466d06ca38b3adf33c116c2da7553759b8420b5629b4b3f26c1bb05bfae3008eceaebe74f71ba47b1a214236dbed199cb5f3dfaeb8d945031263727d7a9603177eb6448a7007fe0a1400f485c49b9e6f1d14d7ebe4bd54d2dcb2571b03ebb7c88bc2e66a7a72688d220fb1641b25523ca209229c5b93e0809a09f4050dc6c18d00d59ba3ce8bce7e5432a31103afbb6d59be97411fb256c7d2f238888e5179307eb545df9c27ada2ae1e41667f113af74adb9c76cd9778e30da93fcd78825204e6ad9ebdeae5c5b5505a36e4050780e25ea5eda270ae9025cea37638c5affb2469ead186bfc2ca341127f3f765ecd119cb9a17a76e3a76ce754c31799420eb3a61034aa3f26e561c2b31bbf19cc46834740d94ac4087e47405cc20c3a85ce8dc846282da181cfb1a864dbb93afc7a66e1c0cf52178fd650986e7d2afddddf7689af91023a80b8c0fbd2c499df69a752ba7a79baf5e7dcd2c1a8bfc7b88b92a83f59a681d53930ea6fb0fed7089a9927ff757352869e2fad2abc29107050f841d1ca5a9c968115763be21b1792227707b1c2b2b0799bc2d4798dd378a08da354f441a465b76251ae26f1266b8809856b887a4e083f229d289f92bdf70e565a80274c0db35941be725070fb5fad3bef02d6e887ec0aacb14331da51b4f19c5c53d894a54f330a99400533f2dbb30e579567dec4a0c5114861d7abc814ad78fdd4bde945c18b0c25cbf46252e97221af731ab5bf74b2491eace6750087cdea44ad93c94c3e7e4449d0811149123083191f8f460871141db46f606e20812a64c9d72fa67da712fd47eacda4061e1059294f77d8da2c183f2f996f783c217f7c6b6af958ca6b80e8e806f3d441c2c64e3cbdeaf02f3064c18bdf376c4a9a70e8ce9e90acacd0886de331cd3611a7b62105e8e879131c1f2998a07b82aa7cb67ab2829a838690c3c8c8cbed264424e30b8f9c01ae2da08bd0f62b776ce9b362461037454ea77fa45f93324b4138a8725efd6c8c383949cb8b1bf3f5b6b02dd9c4ee75a7742c2af7f5843acae3958752362efcf44322f8507c7452e44d8c07c5facf82ff486662037d65aa1e04cb7cc8c660148b290c9a5229aec08d7fafc0491ee9290f279b1321bc66b3fa94beb619a44249a7d5dbe72b67055205ed9b14835b6370049f6e79faa1ddc48de42bc285e45590a4fdbaea083f040fe9c7dab6d09a73ca65067f71e0071505e1649f73cd4702bd7161002eb8c7470a8a86237b032ff0e53e22c7ac5c90f337e6c1b57f13d8c86d99d0e63b8ac9929aa95410de8dc71757e845ea48881028f3da131856524a551a8dab5de4ec7ff6f52db19b6077a83973f3bd6442f296d4e52644a314c2ccfa06b6fad470be9a0c1c6ec89a8ab0dae5340b764d8aa9eb4fc9f2d4d7fa780ac6ca567fc800d1f9e1bb363dc140c2fa1c1ef6c3a0b8d8a05356ffd6b31d2b8b59ad543f424ebb00271f38876bdb84e57fca9f30c45dbf54310126048ecdd90fdb19990c2d180d1c7bb05e8ebcaf3004c3825bd408311f7d27bc1525e5413ffcfb895fc5492b3e680e6c35f92e9a03cb484f432ae9cafc165327d6c17d8f847fab10102e13e7dfcb1b08a53c02fe2b83f145d0870eb3e868e500d61501113f3650c0af9326bd9b40d0ef97c817c71efbc7a49c49a283fd904663e9153ae8e323258d74623744c09025be46e3b02ff0ee2ae98fcdac611828fd4234e56f6fd66bc33a2b750e3847177a94b51488ec2bae356263e888efe0fa308c6cd0472efa09b24a9f84ce064c922a07b64f4693a8fa95ac7119018ca8d11de6362424bd10b78cd7f7d9802a6bf1f865a659be46075279012189e4d6a8df9c19d696b0551b57c00ae280eaa617b4a1ac733a89d7dc063e63f4acdbc9e8b521987a835d2bbbebcab6cd5867215ec41159c5a39110ffba3ea1233571a3c3f2f09ac365b2dd2dca6e5877b9816ca653fe77861f46af4e477c1cb333ab1f5aba8a9bdee56ea287a203a7ba7e1bbe7abcea00220ccbb31632f546129d86fc39c44660a29490d303ab6a6b2cc589013f92801f59854686da4939debac42fec856dfc9ccf250d80fcef41d986bcf05cbdeabaa4f0c6061d5932086f79a6ec07e8bf933acff4fac4cd9df581fd1b72f08699aa4a5df70e49823572bbadbc16c25de7e43030d4d31dc99049d69080322e6460ac8f1a2e1a038d0bcdca2bffb7c1b09552c7a8b0c1d8688914e6d880efd6888c85486e275674fbd03fe34b5980f58865027eaa7127108c02fe80f7fc042c822f1e8829fda4af96033f83ed1b747be6d3f91802f4abf720ccf001921d1994d87ca7b4c48613d950f4a5fba1485cc77571764f8b635e9d36d9e7d030e457f9c5f4fe4e368e57e15de81f0d53aeee50db863a579ec5141d6cf737ce9303efcaf16a13436e23151cd1734ee14f6fb87363c171e9733729bb04cbc061fbc3f57b634a1b04d2874ef6f1f7d0589922d3d5b0a13b37da35d2e0109caecc6b0ebc01518103fb83eb71894dfb7d135acc7dde4d7730fe4714e9117de4ba0dd4e406e90901b797c174ba63e86924a876f8bf5daa81c2bdea2654d33a758650afc4deed0954be26c612f9c45f2327236d4b7ad89dd2dbc464c19ef5467eb6f1dd433f00aa7d0f27f72d3c79236238d1c996d17b0c5adf720755630d1ff1e5f7d0bb207c4aaabc7b159e31ff42f51ec49f9e329d0c4b6a4bf8c43672a2eaf64fab192247425ff9a40b42b324861ea32c7b8d216209ad979c3504d587f321c7e843cd5de18b2c4632ee90f0ed1e98eeeb5dc68d240bcd35d7f2d19f553441ed5f87e0c2d44988dcef90fbe3d471432af3639e5eef7b1a974de0f20b7176ad1610cdccdce3ef3ca4bb69119c9081746a7294b64b75280a30dd38132e5e13aaf8d5b74082cd58d8b47f5860977e20f6f27df10bd621a3e489a2a037034cc8af12e8fe4807f5b8cfbf40538de84bd70839a5e9ddb83834cf85a50b21fbb95875b9aedf1567f0e6124266156697cc92780de268493c1019d9aaf45824cc56f16edf9e1043524f47d590011d120283bb09b7e9194316165e1cbabe62d280736e328beaf13bb8d37e67ee048aaae5991ac2897453404ef2477a582ba075172cab6d2b1606e166410eb223540bfa2a3cc5335cc096d389963a760bf10072fc31567d59706cba47d1ea7499404194111013e1ddcbe82cf613fb3aaa0aa645a7e96877ab126816ce481781e2de148f8292043f2dc31e04793b726ff04d10a280b556ad3ad93768246d69442fbd7e765faf33a33ea5fe008f0be3eb4a3ec0d20936b8a1afa26ae1019c40adb54d4a9a2248d225257ce3b6af37c995e51dbc239186e3307cf417fac6c5ae83721b3944fd2304715f45cf2b20cf4cfa08374df182e4da7d35f80001fd472d117f05be7df5d8e78781a46976a3888a341b10cdc3c719241d00a843474855ce4bf1485c64a2502a05a04009c9ce8681bb0e73fc4707dd1a29d722ee06a6d9f1ef4e20784fc71c39d01e9fbed6d9e0b2210d656a01463ab5442584d74bafa8d0ce6ed82f290f92efaa639bf547c8fa674d3f826765e151aa208d63816077a676993f9ff90b87afb8c082f649c8bb525f70536aa390f0dc2aa91eb4b1edf8567963e64b2d5d14222ed77b9d2a0769a7e512159cecb3dfcdafecd0db9311f3539c3682c7c5d323d36d493384c6242eac466b72b24cd4ec64577187a1c11a1641de621868947d098709764ec22cb3df03964e1de7c003b46fbfab7b011d8413f45587fbf2d36bdceee2f2087ea940d14d72817e391c435773c7100617936ca25ba9438939fd7a07711f4f44ede896ab536a7424c50bb19f115fb3a8cf837f639fe4729ef83ec67a45f540ccafde0c9a2d4f9995573d0676e02cc3c3cf81458c01d3f4c6fe42d3950e10a52da1911605c66007c24d7243645054b525f44ad97b6e03c0e5a522abdd6860d8ccd8d19c2b268e0ac4cf98c6966677abcdf61edb031bb6c4285540a3f76ec1404880f8de32be4aab8fca80229bc9182abdb1eb82158ca35c58de28843f0ae4055f2fd0390e32f801d712bfd66974536df57608245f7ce949da310213d4c61ed46cafb1c08fe6bcdc627e3974b312da97ed9ecb861ed8c97a8c28ddc36dfe3dab2c1d8500e0aa8dec265231a24705c2028ff33e332e31f75c917dc9ad736b535c79f9c78551debb9ade174b86e4b3698693ee33df307895edb60c5344b2644683ec0328dddb9cbeb600ad4891497484e20e348a2b0bb7c1a809a4e9c2b7cc2b0df45db785f2161449add73b9110dc6fcf7fbb9b49725e9806dd23acdddbc36396f9fe1f60d3343cb6b7ef8e255feb04ff302b9dd43237df9fecf161e7e1abcbf146858a3e99968f69d32d0075472edc5f4c5bd063ef0c64159a20152396726114e1228c1b90c5d710ae5ca3f47cffb00693dea7757e7c4b68721ea0afd592336b8cca53b7be1fd6cb725c76b3730c9615d5451d67a2b765226292112e6f933673f9306a0e99edd06ea25cc6461b5d8fdd736326ff22ab1170429b92520209a8fce7a23a7bf0d0012edc9175710ee10fb47a4490dfa40b3090d42c059bb7e46b6d8f5ca5ca0698a31bb9a118c2483122b4bd35b88af8b4136eed7fe726532cc0ccea2a5cbde1f22fa25e9d12065c545638f1adb6f75a03a4c583aaa244e1c3e098ba8bca238ecbe48f914638f0aa84d3b16eecde01e738da7b3e93d03b87badf851597bb1bce22cb6e7028b2d15287ae870c73a4735661b873addd8a1fbfbad8b650d9d7f0f36c5683a54f0784368312a52a44925979d6f4dd7edac5944a7f32db61849b0a925c9b9f8e9999b2311d22c80c5e3f2da6bfd1129692711eeef235a52fc7b367a7346412f6345656faeb9b03422903c19ba148edf856d7d6ce20cfa97826a200e08a8cc616ef82800cff9984f66e205bac7ab0ecc6693af6d3acfe6030ac3c5b3dbd8f1a01027dc2fd20d39f5a7ca7ce793f5de853e955b324aa5eb5c15d4d5fad885ea8971f26462ca8dfd68e6c16d1e43382f172057f5a78bd1b39aaf014a80248c16cf21166c09c7acd12d2a6b4c745b198f190a39ad26eb76b1b6bb93b26503772e2c7a7fdc347b62ec91ba7473f57d98d030c6b9d7ee0ea15e9bd78e690e88b82ba223ba3e1541170d3a361ab9d9b7c788ffb0d7b98b155918b9233b7764565018a23e58515603bf48cfe36afbc537dfaac149932600885c04bfcb654d84b9929b66da94714688e7c5341810180bee112830b109b9328db229d5e5d1d6ea7d4abffb2eac4a48a80644f96b70086dc66703837ca7253c114c18213bd6d8b9524ac8b1ba4b7012d98855d9cbb2d7e7eb45cc867940d95f3b82fb8f401e9f7bb5b9f1c95beb0b50e9585dad11e112872ddda3347886afb3e62e4140d8c519999c0d9f68f812d4014ad33be66ffb43ab44769ee831cf437e49d7a61204e463ec481eba9aa49a611a37d5b1375d2b6a4be123b066dc2ae7d2dbddede2ab1e5a6393f6e23f2b44d92a4893eb8e153ea200d7eae47dd745db183127c3ec96f8dbe6cd2927d99a0dd658b03266edeb65121af38e8e2cd0f1d654087081de7c4ce13c5e389b953c0b604332b4b53515f8af3154d6c85fef0a94a4a29e9cf5b7fb714cb0ebc546a7342731512ef23e41b9a0472337cd94ef29954bedf822869804c9197a75f344d5f62a15a9e1f80e4e409a818a4f2846afc07aa6edd023610f0e55e7c099ee51fb184036ea1f8e13a45e81010eb83f4ad9a44741bdd5f3b4ef5c00f3f808d581ca362829f922b149a909593a0e4a182096a63204a3cd642e162ed9634ad8c4ed3a42c36e10a4bd22cdf33337f08e3a487c8ce61ac25263adfa404263c031c14042708d4df6ede26ed1ce61349029ac6526df4e8e9e5e138972ec66deb67c3f543873321c5bf0cd596825d3f60dbdf0475f3d58a18e54bf6c11237765150c7f1b1aa4065d8a8153822f06ec18a71dc4860e05140a4d5e90ffdea0223f83510dcee62a834c4a0e05863b3d914e9c67e382fe1419f5b44b0a68402a49919c573525fbd1a1206b73cb1d0eede0a7f1f4481bf65036cb5b8f2be1b66fc02fd776715d41dfde075101e68b83ac7ec5851e989508af56671769ac8c033e487956310742ee22d03694c892f1bcbed826ecaae5a62cf42846b0dfb305c62b8e701fed23ce97700d2c21c2b0d6b8bee73ccd7e9e7c7294fd69a764a074b069c6d01e743af4197f7d5b8c4e5cda9beea276c676f40d7bdbc91147839d1e25d297623c308a302cba3b1efaa5707703914bb190b64c98e1292ea21dec327d821ccdadf95c96b212967e2ffee66977e1c5488968b2e593d6bf91e40be38d5322452a2f29a0e76a23d06c23e2f4a554aea5d1922e65484d47e2869c0603dfec8b6273226563fb74c93a1e2c816f71719805db2b4bec5f6446b57ce12a3054e42debcaf5905734eb54a2a23dc7b41ba0c2f5e8b27e7fa9ab4066908835d2cfd7b7cf6d2feff5df54ece44b1351458f5beeb9b8fdabe376f970458794a727041fc15332c28940b71a9b29822fe014fbc3726fb900ac1727769d60cddfddd683be8f3ed6aafe3fdb2133f9fb418642c4f0c754d2f6ed17aeafe31bcb852f976bc847f50da6535f2d696049820c1323fef04ade3af9e65ad588c73a9e349a56bcbe7ba073856da8e85d1fd8a5331d7692fd27792dd9fd465af5825d13fac47e7c309135c2c5c1f60080bad6435a76a4a6d65c428fa62196e890c108795d38fd67ef4106b55e5c60dadeccaf92685c5db551a06556a7ccff4a12d588f6b6f05644434ba351b1ad23df9cc5cb2c07dd5ff5dcd4088ae16c366d4ed582d29a58d7e49a58fd4c8d1a85b4ccd1d1a002780a66cb10b82f499520d7e50eecadc4c77633e0c934547fa8f4cfc2f90e421efc31a92b0893f91e9e977bbbad6f0b730e228a07eb7abb6d4d058e195efd794b9208e49263cc99f9e294b7612a87432eb22155c3c108a1b4a1212fc843912a00a6e8e4937cccafb8b9084f8fcdc426a47fa688479ff85ce07b169b0f5a4bf02e1c5310e8dd18353b699949d509acbce3c21265d864bc0babc3df3662f3078240fef56c98c906f49aa637f58dca6232e26f10b8a8db6e8ee846868e536a2a644cd37879a17bdd1455736da022f6c57aec4d2cf9c214418adf4c92367212a5035b22d9708c2bd618444ab28c4d7d055610f3d5a150efe61d1284014cf6909dce1c423cb8d42c074ca170b0531a280744821ce739ad3c50dc21a223a0db73c1ad082a29e8a35e22ee9d4213e813617151223050075e79c115734ec225d35996b157846084869338d246ca33038ad96404ccf70501eeb4a7ea2f099acbde0d1e1949241aae70b0ee3cd20e2db0705fe5a183204e3857f69ad39703281a1b964b0d1425e4f89375fb1d713e997ee8a1216b227c44eaab04be91f342f951ba3316fd316b2ae5a9a8aa6eefea05d2236c3b650114c7dcb31dbd677d2e8e6ad1c793170b95e7e74466b1d0a118ce07c0a5dba67a68bdc5f87c45b9e9a1950dab79e9365206b507e75d7fdc5de23e58c74c3b0e10311e591d8b60254fa64abefc0ae518502a00da78dcdd357d699de7f11932fa6ba999aef06a45d4ce1153ace2aafb6a1a5c748956153aba7eeb628f0ab560b71f0fc011cda75e07b33fede5bdc6150b008de5fb74f705ba4146538f9d44ab257c6f0805196cba7d38763e1853c9e4aa5ff313e3d1e4ad0f2e6738726873924df5abd195ef40cb803086885fd6a295bd56373af2d2d4c2306d34e8d044c8ba9b2153f7330c899c72a9b042359196f76a0e856c217df6dc831a5ab2e25eea195e070048533ab2298a51926fa71cf3384437f093dc7fd5918e340ad27dce26c561402cd84c7d00ee730db4baccbd583f266f6eaf9e2453351a53979576a2c9562e865c670bb3bd77dfcd0e40e33f411c0e60cc12a8699a2917ae3f39cc9867eff8f428917b372b0962a68b4db2ab2e419a50bb561fd16fd386bbae46a34a14f46f1e51ad75290846fa5a07894ca101748b5117ff161f584d4a16caab8a44f96314371d2752b3a368ffe699b8c54a74578b2a368fb4c56ceb3b256f5a1a9cbc22a109911cc9969c633b0cb91ed7be6f9e000559ac791ab37705b76466f2efec651010031e61b6bf35693d845f44b2bd3ae9087f5b15eb3b484d90ae0298368c208bfd5c30a1c7238d681803d91081345ddd39960c6b0acc7b0e91439b5a9cf9d8a77804a7f4e8274ee8643f2684e971fe2e465003714f2f03276fd102db4908bcbc7afd8359e68da72ed20d85657e7978c748f57c227248b7d21be42254d2e2a6580cac4b239da8b57c2219afe250c3db0c50f578b571f8253544e110add4170351d24fae34839fb1f017dcb26d75b147383721e0a9695af1dab1a85d3440740a9826995e62b05f2aef7779906a3dade5ea159c78b951487312a9a883129591eebbf10554f65a264684a4bb235cd6a7928e0c1d1c6d0ee6b07faa8fc3162140f2481b8fde6cff02a125ae176e05fdceb48a1b06e3f0088d61d15f0fa9ad8a4c019123a66b10da06f43ed93f0c2c95093aae50f4d5d11ccace08ebebc175d255da30cc680c9bdb487d9b22c5febbcde7d7d46302d560cf2f6eb52802a07baa6a810fdd5766feee4bd1b7ad2d9831e0dd521962c4bc11244438978510bd557d633681f402041a316fdc457a70e2356bd59f2063b616ea89ab6ce93681947f9bf3b28a134704ffafb08e2fe9b5e9ed0936fc985f1984480106501020e1fadf1a7aa3f569ceb81d794bbbeb7a212929a3b400ad21b952b1683edbda480c33a14d273b5e2558b0553fa4fd14298b8de45216aca50f2deff30a675444b720ce4701edcca76ab2d0549b952cf1542a74428666123d35450af6e45066e3ef53ca1f868c7445b9ec10b4b8a41c52a221e3764c6a9e9c6efde8235005054164b19b617dbf7afea8a752b551a2b17e9196d8af6d4d8efb09a1d31336b8d25395c6408cdc035774f7ac5d51debc07c2be272cedeada00e85ede8b56b01d58e96cc7644752df0df6f4c27132b757590a1a288615c466471c50480ac423eff7f627b3782a4c699ebb01d396e80531672fe51d1ba84b3b13e53ee39f61f6ceb5ac0e8d44988e4b3cb3ac1c12c788c07bae2d0b657008728aee3660824931ef0a0e90d3f9bcf1a518afa55d095ae5ec1f6a7b5a5d53c0c851b7504a0cd16ed09d766ffeb1d33df3ee92d3b2b5a37d06540a899bedc41a91b7394cdd612eb052967e66164efd638c16d7e39effbd2f27b10f246beeb011f13d1a58c6b996353e5be567211caa459148f11463fda50fcd9f7e9b4fcaa3af2b79940b4af1ac83ce5d65d33e6c43fdac870b9169a95f4f246d9aade8667c923122391e99bdddfd83fcffe265f7ead222f3dc3d905503db7df1ac845c17350ca219e3364946ecbe8a49ded8458310734f5a637cd542f5d92ffa957e05469c261b77e661c734b6f45850cab6611651aacb111b73dfc868b99dbe7a56f0518150d926183e6d71407785e691e9df2f4c9ce6d35712c22f3158425ccffd8e523ae377c7d317980b2ce56e0bb664e3a84f6e808411f86e61e472da12f638d6cded68cbef8040432eb904ed7688aef4d149fa0b28d123cfcb185d20ab23f022c3eeca00b03b2e5c8f39bb48a6d67082c2aafb9e04ec7d62f9f1aadca0e5c93e55872979e13c4a1d385d02e260d6eccf19707a501d2d19f21fa247046240f92e5895be2b809b6a5a9e0d36367eec4cd7ecb84aba597e4a2b6df96722fe06e2bdb42bdafecc1e24b6a58b2b0cb2728edb47523ea34d80abe186420e78200ec0be8d26ebf01c01612c72915219a9e85e51a82f32ce79d3f85887224c798a2a1298d72dc4a6bdec19e3384497f3f1d5d94f20fbd4a6d62b4f203a58773855fe131275c4ed8721aa25153089a8899ff48b8c436b24f3b4203c218b20062acd11cdacc259a921fd8c2f96fbdf5590f7689b69cfaf25026c4c65845e4c9db1f2e6844fbffda7093b3b57709dbe619d55239f86b35a7ce1276b92c4f33ed3ca6364ac45c79c71a5a4dd23d96628e7b01ae34c171c14a5e8157769099bfd659880f219733ecb8a32912a10b6c3848ee57a9bad567afb4891be7825cf5870b3e2359718f4fc3c0da27fdf21c95e2cc228e117d0867176e065fec0dbab9612aa65396c57766ec4a9d7a5ab222160d6a29119890ca47c753cfc344a775caaea3179d62a3cd76d368874179b14e038c82fb07d9691ac4bcddaa340c2946b34047a606495409c8e4ec916ff8b3725e7fad912ea4b862de1277c2a5007ebd7ab1c4463b2ec50400b43582f07f6566bb845cf99b3fadb50f34a0553e399965189a6d1f5728e1c03bfd5ba60c40d3d2baaaa89ad34357ecf97b3c84c77e039987bfcadd4b41d65ec9f7245c2b37703c2da68d208ad221f809122d3b2cddc4f3952a5ee77b2cdb15f74b91454aa972ac277083e8817bce43e9c0c7ec1f9866e766520013e528a4511bc24910a866158ee700838c4458cd54673138520a8fe8c80b4a868c6fe479efd70f4115c90d72ac3241c2601ca4fafb7b8490f28a885621682db397796ffdaedfcef5979eaa366664b441b82509ca8fef0ae507a748d9d337c18be9474ff2069989e9cc3b1601eac9364a56e2c15e866718a4f51c01dfed73b794c90d898d70e3c6ed3f1a60a2b4391fa75f1b70abc2fba9ad986cab06693f690f9a78cd369276dc8265a2df027576f6f8d5c79be1544df26951ee260062a714ada428f4b7b78b3f0eeb0e75b47127600cc4147d36b4f6b1229d2090f0b80d2d73331502b98303df2e901cad5571d39a88a1b37b2bbe9d45fe667ad39d6f463c6050fa42f5f43840ae94c61e164396cfb8626e055193cd24576600764b06c8fa64574548b9a15e6e6fd28037464c928baa05fe22e6d3f01688e6bf55841f0aff1a82c18e5da76c072a875897200ff9ef6f90300e2cb2a895bbc458c53aa47f0731d9072fa410234854f032f132f3dea78c00a373b8101c4134532cdb4353a1cbe3e5e747ac38d3a316959c30a28fb538833617537f1890f9b9fd28cf71c8939920e6b922af324c146bdee1ea821d0d016c8eb09a71ed89fb26d740cabe8060ea34d8e8eeb5ce70202a4d9e6004d68df3ab3ca2af4874e8288f7ec20a6f6eef6e7cfb13638acb29bd373c198a02d6db6ce47cd4df3bf4202468d0631c786e95a6d15a5e80cd5e29eb45c02b68a646ccc781b1f13b1eea012198e23b8256256095464d01cf2f8682bec8380c23f0ed55a663f63484a3e69e26cc0682eb3919ef0af48b0dc5adf72381be5c7500c414bb58fc25a0412209b9e2e27dc697ec9c6f7d71ec32815ed33693ee7776a383ed076b530359a5ee689cbfd344ee396a3afdf9ea9a7783adcbe13226633c8146bc4e730fd734755eb1baecc86e2ac2871ddafa2ece42ff4a3868624803704a24bed833639014c147c717cfda9459b7d4311e67817257df96359a0f1954b8b4e0727cc7138e123103ce2fa901c19ec3109c976efd7fab099869e849343b2ce086454ee1e188f45bc027d654c18925cfd38cdfea95e9c657926e2862d2964b2724500d3eb10fe3e2eea3d7a35694e1bfe9d103d3c495f5c2eed621877ed62bea21190cc93ef4eeb198c8f1a7874ef28abbc2e5c113a036da0ab1f2f4d153c5134478f48d543a1ba4aef17f3febb6f48eb4890f58f4212e1fa00ff929be31eea782794a87fd6117b4b62d79d33d1229a760c27b0e9507ca80e94a67dc96bd9b72b3aa2aef77beec74a6a29971813f6272449394a7411400b512e70cb6cb91223dc05d591e7e9d26c218bef712e5cbd6d5173c39ffba37a116488a8eeda8546a922567423f777d52d95150e93c048d60c8e160aa210b11c8324d51c0f63af080db214ccdaaf7e26637a0e717ff53d65f5e0eaa6698fe00b73a6816c10d606721e391d27c2cb0cce950f526f2c96997bb13a9a43f0115f5e7c945da9d9deb72b036f41804bffa0ceddc67d20dbc4c7a89f2b9a0d6daa07aa8fe4d6a252a884dd8e4b30ef0dad9a1f481ebbda192f6efca16c847d848e38d439baf4700251fe2a80f85a55d4b7936ddb0a2b17edae4bbe03e8169b9f980b3d5456835a4964bb94cdb64a36e6145c0211182315818eb35883c2a3b10b5a8d45f4b46188337b9d5aab356a61e51c6974c638b878a0c74a8d933cb0651570cc20db52c84a538a35e8f9e32baeb2c8df3aad86545805ef2a235d88c5750071c34f10460ee56182d7f3c02e0d8f30d2924b2ff71f88e1a05a81b3190b8a2d21a21665333b959bf9c8f3657f44351b16e44cdea926ab583a25f7c971e3860284dc0b00af07937087069a130255e1d2bc874c291d1021555532c69afe77b9142bbca7413789f8d1ea4fe213646f69baa8f6e30bdbeea36a524f8e81d1e2518fd0b9547cbbceb5b137f2207e8308dcd181b03fb859a5406bcd24c42184b6e1f0a199b1429f00f46c97cb0e98da15c9546636d4a476320d9b0e3ed16fd426003a422ad4140d84c294668546fb556d2cab4bbaa440d818ddf9c8a3097e0247c91a6d0d3af5a229430f8f5fe87e3f00099cb1f1d0810160abe38d101b8563a27dc94d5643dbd9dfe76f05f23620950d662120d423fe240f5cc676378094e254aa7e38c1b7218d1a8158cd2d324a355b35d3fe9bbeffd0de3e326eb775ec6c5b101800681dc6182bc715ff6e856c531e0ee75915f9c2e9661300e0c5dd910974ce4aca6d9f07eb6435eb59ba4e3fbc2b38d2949f93a0322b6e85eb95d2c452109a9b1fa4487871e0c175a7778eaf486de2e8c562d2019a757859d394ade3fd03c5ea83ffdbfa2e80defb5b2616d647481306dec78a48b3159863e577498a1ad396e63736df32daa73a385814d3b95b3c4c9477a0aa600c316654ad3eeb0467337a3ccec626ae3a5800dffb843c6c02535162e11e79c2c4d0e93e71bcddf61af4aa7cab4c91aa1a8a90f47ac21d98683e9ad15c29f3e021690fc1a567d8e213bdf6b521428a6cb1f4336e77caf601da32b0b1e88403b2adcd2f775d5e274d08d50061ea941f2d644ed7b7a31b3a9f2753aa60ac0150d6931c116e92c52e5f44731bf45ed951a12170c602e117fa9af271e340c23d89515fbaef80800527726a7bac0b844a35dcb03ff4b1226628fa775dff2f172cdabc91280adf62b6dd6869c156327918fb8d70ed6fe7f5f6175eb50afc0c3b50c1ee74758a3ee95eba2d2d59ee031e91b71705cc62292bc08123ba43e317c658963a86f60b597162a1df33845d4972e29ddbe012255e77e275c63d287495bbbf468c26103a266b47d66b8024e4eae9156da984899d820cb790e9104f93310600210962ae18f30796c72c28a80772f155fd2a5dd89f2f9941683e7b33cb8e3186e429c6c08d68022f33de654a175377e7f5f9be495539451073622539e914e2693803845376eff37358b52b2b2f9472e33f5e1f112745f49cdfe55b2211b4d7af895bf1e0f045edeea073a173e91ab6ca20082858adcdac31c963a1582962ff6552bdf6075f88ccc5e3590ed149fdccded325d0fb7dc45826864e212853d35632ee85970cddeef46b7488151e7f3f8a29aa28ca9ae79b4bfefe42e312474e083903d88bd23a69fcc086c80f48f95b047f8252e0546816020abca64430a37e584938c64ba301a4781c9556f8187f482be530e88826125c0a1cc3bf0e57a0449aac955c9e6f5ffddb558adff46ea70697ebd6123ca36fcb6e24682a29673c32cf4859a2771471768a5571c3046d3f627cbc9b7cd187a271876ca48be166e9bad8efad1f4080059740935bea49e6a9eae7c858cc6655d702783590a51e3e350464f706a005f242a1c420052ac280fdd33ba46d07c2571d03826d2db9bd2d69d34aa0dda31fe7e39c914ba74c2a60cc305598e4cc82119c22d92572dabf506b82a1b19987c9357363e97375238cd85ae7e07a0aa1a401133ab18eaadbce037d5e6a72d653b72ffe027de12015c52e9668ff551297369453a89ee1c5259f2331d8ca2bd4655a517df61342f45927551c091b2415573bfb257bc9aa22b63d53dc2594de9d49f50c25732a69501c5fd2894744f0b35d5a41da37429eba9b261fb5ae5bb1d9d2890a061bbd472e3054f7d0f007dd07b0b40313f0f7ebe8e9843d12b960c44c8cff68f5c5823b614221e5f270f83d094e012cb1aa3fcef2b04758a71564210217040dbfd299ebd3e38dbf018d170c9f21636652184e26161f4a4ae9aa3d286dc6ac0f60f3a02395086c1b86ac2182529beabbd2ef882bee54d61bf6ff2ddf6904d4a3f7df173044c6e523e192ab05d58777b89a79eb1538baf03e685fe88a46b44ad2714acd86cc23477c5b3b1d8db2e76fbe981c31bf2d950e077d72f1cf5c5cf796b421c52f1be5019859028e5838056d1fd61ba61b0470e8324487958df82c7384ce7f6fb5810e9bcd947e3686a05463a4a82ebe3400588622b09b4f6e9084845535d89fec5b058bf9c0907ed5dfd28aa564428661fdd889599b026697c7aa419e968a2f002bc05b3dabeeaa43a4052960ce9558de572de713c49f13b3db168aee7c05886a312168923b185adc7b8872f82a6e0f3fa31fe22ca3dc082bf4f35a1517fd8d5455c6c8dba02f568be8221f4de4f3484acff1ff546d70e7e17a286d756d2aa9ef70e5bfe36f0454ecd6df4815dc56b9fa2d409e2ad61ab5cfe0044853833ce685b97dfce44cb8dd7d9aaba868ce918edf24a6ee2a6ab36a1506aaff34aa03a15036361ab398aa411adeceb019368fbca0aef7af20f13703f3f69801c2e90afba28071181e07021417c63c05795f1ba878f0d9ca16d0caa85231e6b3bdd4cced443bedc342850b9c80576a3f358a09c79ff17e585d97e0354814d67fbfb37fd33d55e887a9d48c7ef149a4654f18ab436a4735cf5e2ab889e1c7645ac599333662d9f6fd2c491c01cf3a4b7f0275783b8ceddb734a920ee229731e31872fa5eda58820c0d965e22f139a81d66a2ba9e2c05160454bd929eda6a2d08338bc2ce737de4a9676aaf5b55670fe0e699c6ae0227bba0b364f372621b7b7aa602c629234c28078e9661c31722c06db6de2ced8c8f3ebd35d963625f34052a62e41edb88ad8c834982d55290f758176d65f3a7df90baabf208c8123c8cb0f53b5eaf3fc2c7048fad14ca3a6db4eecc17e21b6de99d0840061cc59e3b6731c4ba42f16508567f4481317e19e1ec287c37cbc64ef22f83ec848733a8f831bf3abd9b3cfd63c97240ab4407bd555d4f3630b700247a032db2826c3c04fc2dd088aeb31923e6c6119f38b178b6d3b66872bf5ab06a60d104a306a5845d15d515c3e6c6efa83aef0e390a68da9f6617a868a3523f3b755e6c2d213f7a7caf642ccc63160c822d84fd905caa50318787e84e5e13485b2a327fc8d688cf417e5a36910c6d80c03ff87e275f2958a2afeb9c6a8fba749ad75dbf79701ce7eb57748d5e884c9dbaba11065ca966c0708cfa00dfd638a826558570f12077d025c60cbd8986eeb41e5356a99617303480895bdbaa400a12659508c3cda290ab875b2cd8e3046903e23c393ce77e7c8ec5af37561dc725ebd88eb8bf9130e542ce47fc2ec1d35eaaf398f82f6dbefeb3dc6a788e24cb06d0b19405f463734c3fd348d22e2682a555806db519110989a8dde869e370abd01bb0146e5198f61bed43af533286126be9b61e41cd933a8c5c39f46d589b06e3414b4dec2920617f3c721cd6904bc90be5a3041bc614a9804da9869a18938a2105826bbce74cd1a46ed5eeb6688dceba10fdc8167f3879b0427538b1fd3bb07c803dcc48063250099bdd9dd966a512dc485d5ebf16d0e673a2ccadd800639b9f1d0f79898e76d6d13aa9662f99da48b7f835ce0ab4a94a9ede9d8d7519fa1d5b27ae5657b27e3296d4445987d783c9ed5be5c08d1b6bceb48d2e4c9c38ebcdbfdf82cc0d1df924169c52d2e24b4f797672c18abb47d7180beb228046caac813783205f5605a376288f9b70d4a63e5f79298888f78af73e5655cde980321deca4b3342369b08357297f00e203a135bbc816085f39211d8e83414ddc5cbca1a0b55feed8eed1c4d2820f3168b05bebfaefb711ae54ccf0e26455f5dfb6e07aa6f2398875fceae3067b29037eeb6b751fadb764f87ece2bc8f0e3ec931b905b3a590b2ecb09c236945366a877769384b20729ca825e20e4610ad58f98691e6926135a7b67079c02c3dc9c5015f76dffb4a8dcd37b798bbed29ebb9d33f474d061a253418197356055dee237763a51c4400534695bbdfaa8784786e1b3564b0c1abb042ed5f2f468154599f878e88ea43587d2bae63f5b863512004f4ec4aec8fb8ecebb19c6c6e814639f6d877d8da9eac601499c2f52792d7f2b8e7dd548506fb9149e7459075e821dd24fc551943f1843d9fb938f54b44cfd3617d31b31099e0b866fc0386cc0751146127b5e2fe926d3601d9e410e6f25b42fb74882645e71dc3e4622532470833c78b68ec2c3f180566590d850386779b146e5f90dec2db94fdd16a06b1860d27f93e427f61875f623d50cdfd1f15e516f1bc08628f0fd59d4526c27c302b4a5618a4ef1c48baf3a43dabfa23efceb811257568dfbed50eeed5a710a32ff9405008e7f26b3ddaaf838b795cfd7f762e558ad338850964e5dff9da53406d028c1f013881e5ca73b65b1d7723bcd656890db9319c5cd1b6cc3c6d2b7e04b92d3249be2195a21997a65165b60e8537d5de48b43f1eb0981b0d4a2963c7af4fcc4a181c7ec639e6d7106639ddf795db02fdcf953c74bc1592488727ecfaba3982c36a2063d8863e4736643eff8edf4621320080f5a1122dd8060b9aeb8a8d241f0d30f7ccd8ebd7d48509681ba541ae0b9fa7b98d9f9703eec92bfb441e9bcb170e09873c18afca61f41e54f517ecb7ae89e763b30a7d9c5fc84223e25e5e32622d49edd6844baf54d2938de2d7c8d81bbce4b16031e97f813a28a423898d1cdd682b427c1bac645e41d6b20bfe8deca91adf71c59e129344529657f05e889373fa01335742c8649d31f9b8349d4d245859492246c361912967f3b9e419523b20e00d686c1d0c2ccacae2b3a8ff02fa65fd86a39492fd22f8f26bc482dffcbb977c66807accf8aa5a265147b092a4e6e16a5773139548fdd05e5f6fe630818bd313310dfcd02fd6d98ca00562a1b105ef7a09fce0d055e17465acf51624dc47279123440d1cf5c835e3687762e358eeca972c08cc53acfd157ff4cd43450add909459e834b6d9b2520efa8f9e8aea4cd51f10280ad6aff87283689f725902383c631c0aaa643b0994f99b2da6210c6f2554a7849183d519bc44b9f6d7c91602501c6d5736642090733b884208d75c7702e6031824c564f105ebe8732e57392a6d26601695f0ee8bb5cb66bd6355a67758be359440da113c3b63aabb64e50cdc9cfe4529ada0d9e4bdaea2ef2c980ef8e9d25285ecdc9fafc09724985d00a56c79550a87459480f68b660e3e7cd347bbcfc34bb02f31cac194c5bb8056b34d475c7c6c20a054ba1f7d3a68cfb6deb8db93afbb332a4b4670878da75e2739fcd8600d065888b6a17d5789da756b0d970f5763ac5b5a45ab3b9ed704ddc2f20e579444403e8531bd929fc506bd5f86aa3e683a08ed58771883c69beb886ae8c177cdb43df8d790665c46887d34d3299ecafa75b292b735201b2067cecea118f121820c6c5901d7dbf5431e0d217c2070342dd0689ad1dbb22357d7ae18ee73f09bd37244873a9eb455966bc571d1e0f3381c5d7e93083a0265bcd98d10ebb36b1322624b902102384430bffe04814856330f3f1669107f075713b85129758633c39848239a3687e1e94a00886977109ecbd2ca5132f46b7ad77903fbb0a36a7a82083c303064566bb0fd29c2a155e83da2a507ea3e81453da6c649d5e0da95a0547f262528c1dd1037f7f4234b6cbefc62b8fbe2764b05635ab16991fd9c70ecddf76b37a9fe1eb2e2e5f9b3b08e3c98b9860ebe72878ff89be9de12613fc860bf0c7f5eb2e282f181363a08b38e9c4212741abc634fd82cf485dfbe2a9991f2061b6444c2ecf698d60abe334d115179c7e73d6ffd5ff9b2e3168b93b441f9263538fb725be8285d9039ffe05670ca57c043637249b9fae586d806fd30142dea61aa302c38875744d3926acfaeccf99b298a6e56c8804986453193284e7cb5c3c2db2f15f48d0d3ff6888a364e9a610e9bacb95d203976b9c5190f32b8d70bc22830626c37f7c5fb12a71e9fb65544a66d115b33152bb44ab1da0bacbcb249661d625f6d5f4c5acaf17de744df27bab4f5e5dd633217bb85da08f33c67edb97c00f5626d44c59921d5d9fd499529f6820d808dc1d6883b4db4528dbb457c9af60b46b321740db6faa85b2d3a6cc8908073ddae8ad3504dfb3d5ed585793348da27f30e6a7e3e664b8009fc4879ebdc5950b7aee3529f058f2ee50da409034443ded7605df646b5a609fa24b3fc56055dffa244d5bbeadbdf49e77eb2b528ae5131900413fe0afb451ec1a2f76de363ec5540d34f0aefa199304fd1f7ab55f92cfb65fa2014e67892325236d1e43686d82d740a85215071411b3c6e8782071feb6290dd61c4ac16ec63e047ebd41ec879b677ab8fd5dd697a32565a2f9e70fbbf0537cb0abbdd7aa54f031276bbbd05862091f3258a1f08261ac7581763fa1726dd5f2c38f1a70ca3197f0ab6895a693de9bbf0620cffc2acc8bda50e6cea4feba2a4223fb073a68a7ffd20ba90af9d48fa01a4e46f42a5bcc03d03dcdc7a09062c5d0a1725ad37a51c26bf4556506c510cbd362ba798d61f1987689564a19dd077b495426941f36b026fec4d0b06044e1b20d84fd4b7891f3a0e0fc9cbf32baa4ddd7a3353ec44535b018b922127214aa351a472161e8e3c94d9dc9470c90889271b1619440b1844ae55b2815f0172877f6d25b3d2a396144411c7995cef98a437590e336ec26c9495a95718011184f90627464a2f23ea2d8c478be9b352139c06d6f911a68f498284a8de9632d2ce487b0d71c301571514355e4e26918db9d0bdf40951acc532ee5c02e5de3573be61f6414ae4676c4d1c9322b75ffb3592018055825b8e4b9623bf45a9c50f36abc64c1b1ba1f059b4f3b76c0fc3909167d31f7421677da864415f2314c7bb124b156784bb1d338804f28f50387a13a3cce99af3436ef26b4e94d12f3ee7218aec5ef658f6b598e66bdc1a6e584c29808074ed1eb531211a8c76207e53cb12b73f8e87854b5f079a3696a0fac286f7f0bc6deed6d148aeba8b6f11d7cc7507b81554f41bb05993c27f7db2304de5c485a210ca30400463333e8c02c16bcb658f8402c960a5fc3fb41971fcccededdf5ce32e4635db51fee2e401c65cd383f75677b368441da70847d3a4052da7ebb6854d2af56be444332e47091d48bc84f772c07c8b2504efdf465448b0e768a8303a3ec1d663325114b583ee80b123f96e059620c673ee897ddb9bcccbeecca3f916731fbceb95013e9f4a2834c68ccf3bad348529c21ec896ab68c9d1da842d9c57f5a32bc7a7505934cd70bcc4e4dc7c259fe50b57aa17e01d15206b405c1a4536e56305759c2913b50c5197ccd4d019765aef9eb29c1ad9421eb478723431d4a8e54162eec857f4b4a6c11194fd9684aea903170babd113b8c40528fe07a5015aa4b73e96ef4777888ae7c3ada3168140d6c6450e18b0f7c70c8aa203f038aed7d70f504b4d16722de4690bbe85539d304dd0675ab98655b6150ac9b9dd4228b82f6ea2ce3d4413a978c3336e7e859eb09337507744d0994dbfc8d01818cd980c562a96653915e404ee44da6f791493f018c7b7e4e50c1040fb0167e0f0cd8131c38ad87a413609afcb481d3858dabd7ff2e5345714b1d4560f412cbe3848dcbfc8e28f248a27ec73497db1f96686fca52e899bc78e4e059e87ff9bfc08d68267963193bdfc6be3bb4703c910acd82aa6cad4b55a1f6b622da58e212fc0ea6ffe8af9faf60e5c097940a1ccac8e73e6f011bb9789944ee5c851a3c5a25d12a228ec77e4f4dd418d4935ac772ded3aa0cdc4a58ee2a3533cb300d1d81a3b6b2a1061c22c4ad74b112bc9e2b154f00a9406b0d5f84252b05466b181d70e15fed39b19fbd69704057f55020eba7cdcacc5625928271ae2165c9b868d9b6e75839e7b2bc1c4a0b05bb1daf1a09bbac48aa6e4f02b638cd23d5be802a29fcb07fbecc812fec6b71d0614ee4a899d97fc48186b627aaf8ce9ae9ea4c1eb51425afb3dd075e1f51d754d9e84064037f88d6b5fc46ffa81ddbc42e8b20dfd030ba885085f8ae1d3f33212510257fb8e93469d3ed0639f06b2212e36c0d2de45512ecca8050e8276fbef6de2a0bfa5aa37f8761ae905ef7eb84d1d3513d51c0e3ccb1a6a2c24a10a7c59006f3626cdda8d4b424e1aedc4d50d46950c1bbd096c4a4250ebff47a94231044fe14c0ca349977ad341f433c6684b8075dac11aaebad808ef90bfe2d0d6568c61bc94fcfdb4772691d7573992991d4a701c5735dd0c6af0916a6b6fbbe1135c598e75869625719da21dbe483708d645819d2f510207b65c157b434ad428c51462a968931011504448268b8f53f3da6ffe1d958856c78c3db9b3bd8c54ab3137124c80d87268f7f83b65ce896d8541f81b64f6b034f9a8f4a70ef9785c4f43895547319f0885bef4edf26ccd629cc75527f05c4abde6af76f9b44fb51b8e5c194b23ecef05fbcdbfd0115a5d6bddbfd6e78ffc6aff67b84327eea001e964b3762879099d3be4377a148795377eb62652703e5c89c4801ff9893c3f88be1bb96605077fd2055787718bfbe3d00b664f7256758891a5ba335670c6050bb7c5363b691341256d9e3c8701b286b6d93f04ff47400bf2839df518939ba5ce2e1b8c946ff5f1de8b48d3370809e387d2a876aea42635cd86e1e0f588611cbd4c0bcd9635e70d127e47335f173f781d49db6799d09d8af8c9cfe6db1092e8a4fda16a4067d77530d9964993cc9b0eb1bc99e73a85a12e87b9937574d51391255ee67a89181442ec2762afa24e20232f9cbff50de3f29626d94b27f5078d0e389b496303451fe5190f18a8edef8a7304fb01284f802ae80f9161c112d59b3718e4e39b28256e8253dfe9ce6a61955413f99f0de16b5aa22097a1f4270fbc0a99d1f9aba6406248de7d177332fc13061eac23ae676d34cfffa65658ca9be09e478e12556525c28f6b973c605759be33b2518407fe650ab780cbd5f13c4118479b9fedec9766ecb78d071c45a48b4613b7af08ccbe9b846dade4ada24c37af0c6573c3ce6020d4929bf21ae5664e80af8b7ddf9d29bddd9b7ccf759e51c674a36b19b9f0ef0493a90e887b897fa6c99905b69263ac9cf1c5b9cb4b37780608be151a4aa6355ed485a980874dee4ab895b63ab722e28cc2b847ed53f8fca0e08050e842bfbc5df2dc06240b946c5f7daa6fa767bcad98d71a5df9c728afb39b541c853c92d62c62a04b1b9c7b9bc76c3096d787584479b3eed14aa06f97f84e795c590a963a0ee0429b2c124f70008deac1946c818bdbc023b8ad60a7cccb1a9a4ea0f9cce127694629e505a334e8cbe19909ad9a7cb4253a6fd146cf58526e1abf34c2fa7802ef3f411e20bb47327b69164dfc374207dc1e9ac71287f7a55efc82243381c46c960d9f96d8ad5cb6a7a9579303a3cb838205c5f8c677802325d9d45fd6e9f83e575a595df58490b9ecf1fde5662ecb3e1db5a4e00ae330dcd290bd1ed0d3d9614700e4bd97c7a79c488d4cc8202f8f6c5eb6801a4557834366a581a974188a0ff20a03080132eacb432f2ea2d53bc1c79ee073040f7d45ce23205dbac995e402f224d99e2309f4e4bbe5a7d82afbb0e95b734f852237a2a50edb82b15a945e30765348011c5cf7791e433f48bd5517dd9de81704153d694add024005b285a408b04161c60d28780bd4b258281cd9aaad13e7f0f1afda7d15c2f15fc998715411cb157adabfa675993a63f0da3cd3240abb5a66f9c07517ac4660acdf76fb8d21dff1bff6a290cdf29b5a9b7239e93b2e7eb11421af978104a6ab8e23c8c30f0dc31cd00bf004498cda01e2ec522e904f8292ffdd80d5c8c3b7140028d45d262d08184a38c9728c410235e6aea3e4dc28c451b4af06236fce5859d533fd103b518c99bc3b0cc9ad595624bd6f5fa902f3f64cc6eb3f8c218d3ddef1d0240d23711faae674e7db2b575ac6324f077f5485ee68b3eed8fc8ac35b3a9df3911683583c6375d5e4847c4770c0903a980688cda15408a0e129b78fd20d363a309a2534eab15f078dbb559d7affaf476a25cb70ec999960fb3ed3e0b14fa3cbde803960be7166393647eda1f4bedef2a22b5b0e2d702bd9a4111ade1c922814ca4c5949e59d25ede63bf5b639e2411adaba88fb09ab6b231fe6cb2442b0efdae454a365b594043aec1aeaeae32390a56b134b295d3019652415c5b1979fef87eb12351a61011bd0af4a84302f5db96f7bd6508374dfef072765e3a834676b614348d519b7888af2fdbf123ffb0ea74d46e897346fc373032fac16ff044dbe1c811e2a6fc2225d95a9666c588f97b33037b5708406f6648a518219d6baaec3b8e9cc0e17a848b7a7390968db54297360c1a0fb83c694544c57cde9c636b34a19665e0930bd05a2a4959a8477e428d13db61bf47045744f5fa71de19e641470e88f334b3781f188293946be8bd51caf3a252319b1df9feef134f5a3833861bd0c53dcbb65f2fe32b517935a7458ac6202ccf09d75842b6cde17c55a4a3535af39859ad44cdc751fdec28df3e9a86fc72ff22b29d853337701699dac8ca973f5ae16549932401d6ef99e2f4b1628701cfbe4396459a790d547351d1f627f5052648d1bd82ebafead6afd37a25bef9f0f57bb85a53de8387e91a40135464cd22e727e729020443f244095973995a5b741a92cd9ecd33b21f65e4ae9870f946e7ce31b18b91c12b11556927dfadff36ce0287ce4d95541046ff32a827b93a99ec024cb9dbe39df1688f6e857cf12c61895a5f133907d2bed787ad6b757c0338aa544eda9851199b6720f18b4f631bf2f9d22ec6ab23619edc01b2b9a462393d9f2e843f3fa430c9b2486f51b5f57369a1247294a9ee7fde65e65487cb28552b823e2bd56f508525e7599a9862deaab1f62cbf4694dd1cdbd598f0b356b54e48fd3971093964800438532989703c574b284c81c5314bc9b74d90053b33449edc287f6f38b4649ea3175db4f465da57f8b9925ebb28c7cdb2dab0e4354204e17c71f743ed28604f3bdf4f30c1de8fe0b39f55040802ee17f0b53eee3d0a0820236c51ece2db433ea554d2ebc4610e9c7e82b86d1b837a36d14f20dfb9974715c4b7bc54cb21440d39bcfc6f21e3aca09767f53b39c3fabde6e5f90e7d67c06dfde5cb829a74403a7e62715799fb8175b8341745040779b3aca8a988d2e423742c2542dee2fd1639821226c4fb93c1d60a4d2a3f9f7b4d8788f4e9a80897c6a43f71edcee495d4e5027b62fd2ca6a7a8f659f5c45d191613a86282953f526777e9e86d9f522261075ace88ecc4928dd19412986ce6a8b36251923414b6faaddeec3451d388967453e4509e049c80ffbb8d3abf62385baeee25b70b77ba1d6d2c6103f543897ad077ba24297c67f56e2989b7bb0265e503041913efa77b6c729c40adbaeeeaef537b8e427f7f5a7e55a77bafd74b2c7e4244526d9e09d5ef6dd85a22f5440087e188c3728bf3c29226e885ce0cad08983f4590bb519862af208859beaf3a5e25e265e455ce2aa525484e19b1dd96bdc550b78384c407cce4aac8b6d4aabc630eb517f062b8208ed41f487ddf6dacbb174ab530337466cfbc3918d46b9a23f6b61334c799bf12b2d09b1206dd32eb28de6855aed97f08043ca45ad84fd3fa3a48b5bacdd76834672f4a8a5cb259a8ed151b148b27c4a43689d446a193fe48cbf29657dd670798450a8bf13164d9fc16fd061e97f2858fa310b4852e152c0d390e15cea27a76dfba570c76139f9261fd22b2d45adadfd7a73c0fed986f1ae5fa67e4c33c3b73bbb368e0c79e5bfeefffd3acedd9cfe42df9b32da5ab237938efe5757612c3d9b9393a59167456e8ee5fb6f5db58252081f244ce113006583fe274f6511fc394bcafada028c1ade94bd036e7bb1e7852e5b5b426033c060a3af4a954a965853616f086e7c3c4ce5c5a3253ed3a26173419e6bf5ea48013aaa3ff0166cdb34694ce1ab6b6acf2d6f8aa763b5357d1aec4f590cef99280ccd4222a7b373ec029d4f76f100d65944c669b6a24b0c6ce93c175ee9efcb066f6fa6cf6be462fa889624aa3525c39b17c4a57fb74efdd3c42988d1170800f9233fef12c84f71124a3ec6b014778fd50ab326c4c3cc7f7a0b5b6d84882631b2ce057b7164894f2b5f29592f6b47317b59b6ad6dd23df68c3500012ea0905abaaec3721c077b5698293fafb03e008b4645eac0fe2c14987a61b858e5be4515708712bb9e2d30419b1db29537bba4f6c89c41c76f04b04d6f851a735780afc28b02f2f61d9a58240878186df7a571667964be13b56f23b98433c0e58a2ac004b66f5a2ad5a3385782ef1b016b1e1fef0991308fba0a9314bba64a42c1aa05ac428596399520f004da3246b2954e7c2e2a324f614f818ac8c57d88d4165f48d568f0f62f1833984c0e6fc4091df930e754e6f98432b2d4b70a43342567cf88a6e8141aa044ed3c12a2abbab283fbd3034d9aaee37a529ce58b66c032149121277154d37cefb4a549291c5d8ba008393b5ea842e024e8409a51c42f6d155937dca10ec99c67db7433eb031ededc22739970c484769527e83f3fe26ba564b88481bfb9cb14b3239933572cc0e77fc6d46a17abbcf0cc471da40ae877f72085a23ef12d1827d80e15315726ed41ff83ab2a96c8c24a72b06c9efd3da5f41a77b9ca92b4b88daad585568190fd7f5fbad16b1b6dd323a1a4aefde4fa86068b614e3ab1af8f582c6afd247a6e4c228add7e81d1fe21ed61d3f7e9775661155a2e27e5285e0892f4a27a34bfa53b28da60ebdbbfef4114bd67eeece0b582252513015cefc7baae92edd428fff0424fbb5fb82539d95f8a8edfb391ab25be30805b9ee7c798af61de15681d87566f1881c9d7651b0a0135ff8be06d348d23c455beb9fd5434a2033e03aa56ce56f6a53ff0b9e7099de1e80938edcb895d383fd4073f45f85deb7ff4b91109baf04f2b8d261cf58a7e89190a050736c7770d4eb28e696ec13844dea69e2a6814d7d7aab259b911f228e2ba892c60d60a1a4539ac9701cd13a4d1213f95e834e84dde70df0b82ad84df98e79f59c8afbf4e3e323454b2a9dee3420fcbdb8e313f1fbf6968c8581cb48a870a4422d0d01f3a8beda3d7ba17fcfdc05aeb7775186e8c8b5b8f0ebe48369da64cb4d4535ff17012d0beb67b416f2ff6f1f7d666269ccc896a5ba7ce00e22b58413c27b598623818602617876ca221454ee985d03e7542b48f23e14d9cbe1d561debe236f863b4dfb9e74437c303f56e326549f166b119c9c2e3c88267967c4a020a00ec29c30988572611ea43ca2018a99e4b0133101fe637b9e0d5c174c2cb974fb890074a8aa1f58351f6f5f0b38600968c4b51194c6959f79b756f30aff41950f1ef8a04969b157bbf47e77f4ca7981de2681bc0afe8d0eda1cb209e31eaf62d8224bf56abdba12d577964d4eba82eb4f5fe09437da02b446535f6fa4389731748965781963a6ac45f31e83c56f3792ee8753ecf308c6f0aab5b81a770cfa02af69c93f9287984957677d5fad8e6a8630aac46a81cf52000bf1fce38752c95e861bc2f6a0ae01875c79eb9a20b2d930df94170ab10090c81eec76f08765185d79982668ac40b1071b85baea2be7b1c821be65418b9355476758949e9f46eaf1d5860736772fa30cae154d1bdbf635d3617b248dee06df105e2b7941c55209278a3fef6b962f74d799222589e4e1bd7b132916765f5d0dad5a8c07f813f69130ae24d56050d2ecf9cf0b6b6385486b9e9f854403c38ff6c2f4b19dbc27446ed818920c32ec55e9242cbde3dfa166ca9a630fa698b98f3296b66a40d4052319364ea3b46c435f9583a9b14307888eafdeed4875d2da6f2ab60e8c6b662fbc45a0bde0184e66510573b9ead4fa94fef8d50e93b08fd740c4a8fd9d8f1150f2e0f3d868c802baaafeab60d6a12505141a95bd8a030d3d35b136ad3f9bcd42d6e1c57c920f16fbca66d8903295305c4d88fe993f719c1d98871978406f52570ec87abbbe5b771111bacc2588ceafecb9628b4b3de03974a73a07967295887bf8ec1b2d8d63ce741fb820d49d08adeccc6868490131b4648971fe7b53da2c27744611520b6ba0d90c39a87ee7ea61b415d53b6a25d0d48c18372624891550458268b05a4d24c2f46e6d835f0d87c9e16646c026cd4383d2d683832401753d0e007bb54c751f6776b68eb2e9c6f5344ffefefe31ad70a8d47be3e1fd0cdcaff532117012e0400e314d83cff54634d0f5cb3ccec6119638eecf9d396203a16498434ec9181e8f508c78d4d9c0bb577f61377ed570bbe187c8fc6e289d8b98dcb5329dc24a02140b9553d0aa6b4aa2e58615afcaee9190dccec01e1ff5ce3e10eeb71fe22dee2aa0b1e818f4c47b98251e03778a967ef72777c67a480f1ee5aa07cb99182f33f46773502251a776695e536d36cbf0c3351da300fed4eaffb1bef32b12f5bd1ad2451476cb67f05a0f9da9b97d1ed756760757ea7b78e6b8c0b775208ca663beb36291f4c599d7dc96b13501903d2ad0c58951916b01b8a483e59d3b0ed095f31b22904217a77f81355098613ba7344990095611752f0844022542643552a1cee271b807394ee9a47a77c99edd66b061a6c5ce22fcf3a1cd6812668f10f39e6490683f23cb2dd1b6cb506d347eadf5a1a399d5abaf8fcb0ea8911e64652e032d11cbd5dc87faf387d817a97305e2e80e00533ee0b62ec76158f8e55d6a45cc46d6f302fb8646c2ac8d1db2cb5b086961d02a62a1e702784901df7e0fcfa319ce3b42d3f94f5ded5611bb400c250a54c4012ee5624e66cd6cb92e6ca5121fb7ea880b999351ac38aa171171d5e7ac1f099251214d1096a7bc92fdf4047fc350732a15b0092f5066071e179215c498af521026449f2d99a0b2dda69c7b148dd4e5fc441feb88ce007847d7d7ef8d169412c5005b98c0694bc5697833d8042f58a960d89a519ee509b27c4f1d612acbaf2c55d04fd671a09ad139a6aaaf94000d92cc08489b357a6344710fd76b7190f8f6c3c81e0c675da1b3ec47ae37313922e1576d0281f8ee303d6821208d26e42eea44afc034a2d58fcb0133c68666af0d7ccf95a91603546410ccf5a19a8070231863b92c321c6793f1f92388339424b87cab116ee605b21fb9546ec964eb7b32db74955e1ce927546bb0205c381ba175595a056fd2035f94ddbd4bdd6850458234d4c6851654510b77edfc2385fffcccc4f1231a6fe0b56a99514867f27865016ec4393b4e508bb0407ad61adb8d516b7d7576da05d378cf119b45e4278a515f32668d9ecdc11e36b1cf1128ec23b8c53de1f1a2ef814905203cd03ec9b5f56a5fb45a279967e2f1318144e1e6558cb2d879033072f5e6431894b440fe0e2e06421349d68b4902c06e041e22eb2453dea58278e042207423622a0ef615e63c1e9504fc59380a6f08a627d3c4761d8746634205025f261bb8dca7ad56e4fdaa56f3b4bafb0118bda49d500000a7c5cca3d411a96be64867f14c32e052aa8326106412f342b1a0eae82ce36d795470196e53a10a68ff0b6120bda761472bc2bebc9023c65a6703ae5b98e77e7bec8cf8ea7045c4ecce4550e52de8033837858833e344b67573016540a8967985d5ec1a3db3d423dfb3ff4ed3182d71f6f4c503cc50a0a4744b44b2e691eef238539de5b2e184ee7b08375ceb4a5766675e1777a9144644fef79f4c2ca495c4700d638051dc3beb7ab36afbd5a3bb62a537c5a3893733e3d2cb005235a4f906fe21566e6dd452e0c00c3df98b308f5f6b8cd352700843639090268d1485c3bc15c09f8d364eaa3e6e81d798ba2d6bd97d45e87795b0e1ef84c37ad70b63e96866663b623c9af1494df9000c72420a6356574d0598cee31159aebc638e010360941e0c7d8af3468c6da2aaa0a2eabfeb29e9708f414d500c40c9e4508191262a20dce3db4f32102e9748fc08ba328ff994adef7025841601482727b6be2737ef356db000d117ac4b247c97b0b370ffcaba8de7cb0955271b166fe1307ea0e104ed95f6db4098f4f410958103817c8a5c7c13639a0d30260add1c8a4ed2dd5f0509869a22f5633a0d824d4042a509d07b893d6505f5a562947112ece2578ac8161dce5bf9d456e9bec1d86015b0ae19a84ecee3b1ff5f167e86a0ca23f3dd9d30c5a8f4d2b041dcc0c33cfdfd2c24c9edddb1a1ba1ee2954398ec59b418f313f231d530e0016a26e54c488765ced7cedbc8adde15562f640a1657c46b2122bfd6c7c88eafec3b8fa9515cd7bbc6d20371e4c530d0500823a63ce8f5378805bb36cd2ef2f9c20bb446415f3ba85cc5f959147fe71b1d997195aa042b49d343c73ac2399f326bf22bae6d15f22b0816b0d67394e7ee0aaf86b639d739b54b69ed380b458fa36186890925ea49fe0f60acf137194135719e81034fd08f23181bcc0748993057095cb4aa00d530526b361d9a23dd14c29e52918fa89635a9a0ec37c44f12e853d9b62d398017e9073935f7335739aae5ce8d741bf151214b86ef669625421b506d4f6a24df5445db9302ccdf0e487fd03eacc72573b94b85b01920fd6ba23353167d1f37cb99070f2229aa2bfe07a2be5c37c4d8cd8efa32f4ef1a0ab8bbf94ffaac90fb84af7ad929ffebdb0407e0d7776fb6a8f0704b380f00bb79eac834a241e3682dca04eb1b514d9a4d2330e97e90855739e25cdcb60234de64b93159bf7f047f82cd97e6ebe09e1f4e1615d6eb9d2d163c38b126483b6d08123f4c68d91aaf7446a8b6c8061e9cd2a9ff14da0e5df334474247c7ab7aa4568718dbba2c8947825b8b4acfaf98a8df0c97ff2703832850b676baa9aa7cd52a7b0b511a061558ee3f0216cc020dc8df01133a97ddd5f4726d26d63d7dbc9491f8ab22e859e953db58f5bdc0aa3cd1c4987c6b5155a2a233752e24617709791e02c4521f0faec528d2fdd8108e14b19711996266874986b6dd44f8a08883a0bd96ba1690d5c0a8258d6dd9b2773b31d4933585065198ac70769c175eb121e15f047421101f063f8433d40314d4d09400db3f99e1157fd9d285df3d5da6f13c215f67c5a8fcf200d003b7a9cc990083b10a160923a15efe84d004f284359a2a08da914eccfa0685567533d9e83d718a14ac07a6fe6362d1963867fe45e53901a95a1e93f5de690799c7add6f3186aee2daaca6064379987c40cd9a5366db2e215fba80e93185637d76a8bd4fdc21a80bc9ab626df5c7924f3eef1e31ec7343b15e9e2f77dac8dd19cd2e5d68cafe34b1cae77f12df7f21e1201556e11cb0bf4de842dd46d23e342b77a677e7062063b29f0b09ba449fcd2d51777035fd5823e4f59ce407b731f56b99876d8b8292140b6c1ad5ac120a8c18725560f9795c55b6ac5df831042e91d4b0645634a3ca3d51bff3b95cb35222df0f24c06a8d648fb8729c4ae04ef4b23a6f3f5893c7fc3d5990dd3654ea2f458f6be490a421ff91b51aac30bfd59a654b4e5528c4ad2f7e3b99c38f853cb384b872f1bf48ff157646d6fc400550ff2a29621f842e29991ed9b6b5510d4a26be1a57422e3241ddc87fc0218e044433e9e8d6112ed3861142ffbd52bcc71e3ae0bc151daec3855f015f0902d9ebf8f5b1a543d0d3f78dceb438795cd0ec783dda104d359813564a571ddf151b243d09b226a988b4bb943e9bbdbcf0e6da1b16569146018368c3d1e3d104faa19c7e212d1a6021ff12d6259800c02bb465ee1d8f0806dfe3bf8ac82e17aaf84faf2c9d2c8aa04c2cf9591cb03c3ec08de0ad1170eb2780b5d311f42daf2c8c9704a2cfd40627583417c537eab059bcf9d3dd0642316a3c41b05d7b1bcf7706f36d094ca346fce44c1d8ea8f08ee2409b049cf2dcf31c28660a901be99515b343af6b3bae0935132da600e66836de87ad84f974bdce5395a7083c1a6853b834c9e8f78476bb9f50c2c134ce505f506b6adb05f5c5f35b5b52a26ace1ec7939c24a9c23c62dcc0fcb49d7296e1d1214c16584c66f8df2995189f928d1b5d19f8dd6ecdf92708245ef921df5fd1a6835a100e4ade896e655bd87badcfe94fe84be0d180f86d3ddc411232dc9ce1cd8e84316db946af0e0f72acb2667085b1b53d4669d479c8ebe2f95f9f13125c43d56e7d3ba13f61506a3c283155d10eed5e2a50874a98892a2e0b09904fa117a7216c9a4a3730cbde60e0b16c7425abf60562e3747085389da1167b6f075ec0007e54a3f502952ca01c88a4ff780652aca3debaa3d5d5801a393c7c480b3a1d2381843af8249133ae17eab30f05357235e09aa5fae271817ad84ddce33f432a283fc0752d18982a6b69f7df88ae7ee23046107982c207aa854f3eeb6df7a3b1438b7caf3f97d7e08a295cc6a5c1b83d20f06cdfae601820eb0124d5c1650640855ac509ee6dda41cc44cc9688ec40c5caf5b76dbceebc514a97123a975cee4df29693d80a68d5f08c0f2fdb3efc969434d2e4f21dcdd1203dfa05a5a87997dbf9e6afeba5bfd0065442598716f177c39f814e23a6faf5e238dcdf10cd8ed81076148509b1e21b54e803c11929837dae97c646d11491691a1c8841af23207a623b2d6673e63d73a0564beb12b5f17c738e973f50f2d8818e8ed6d1368dbacd65856558beae73a6f4256e5ece8f19aac089d13a20396396e977541024bb0e7f10ed05ba5ef5c7ab965d0b854ac011b6b40275bd559942fe0f76883a58c676af36a16445a2b5750e997d6b1517c6828da2b339ba4c51389904bbe5f10363436cfeee2b6252518201ea7e0070694e3b222a02b54ed6a4511a378a0922e9a6233623eb53c8088c6b82debc612b8798735bdeadfddea152e1d886b4193981323415abf66cabfbf923ca2f3400e98e5d04e733f4bc70a43913b04ea1e6f9eb11d04c0e8155be0d5f1e4ac0ab5f7baee003d69ddd749ae82cf3f359459cca6cf2fa31f60835f23dcc1ffe53383195e3672c99fbdc136eaad4bb03871ea0abd134465f182fc28426fd8299e9342ac410347f693ad6e3f86468fea650fab1e6b5f7b096e265582ac848d5a241ef3961a778f1b3c4ff826f860b4ba3919f21950366b2d3cb71a600a9d1838daa9b70439d6598e51a50bcd9320d3b9a80df81921cb6587afa0a984a95c0f6da80fe377db9033b61a4456e5fcc5bad2a1a883ae42064740959000f2e80f8b45ee0936aedb55069c706d0be2749983e609e3e5b666d217dacc39cec66936d8d28f9781810ce444c6727dad6b8cb44caa12a75f2ed57ac9ba83fe7dfc980657e5bd99856a9da522a1a83b2bb9c34d662949c5e53b4d814ce1c2ff56fa850cbb124408762165e7cf8c7022555a7a18f98d65ed0b2fccecf7de2d47cec0e09f88e4d0d591b17bfee8740995534e35ab153c4477b5f5402bf3329668bc04f50546151eb6e18c8b177e38b4709f58a74e3574b0c12be5c1abaa42a1bf56f8a4707c71ebbe169aca06c4a993a9ac919e33ec9272482629b0b8e13f46928cee3744813f3fd521334f96d7e14a4e1865d061e944fcc708122239c6caefb2bb0664fff1115b2de14c135ab254e243209eba1c1ad14e63bc07aacc6021e1715afbea7d19cc71c500de6d8b1e66ad9e39c1e8ec57f709afb72317de1202f4a2f9f3004a950af875402457580d125ad52a089ede8e2ad13af5279b31c7feb7b71f86ef71e330fe3944f0f05afec68b6a442eb86a2f71d06213bec08a5ca22c18b65f7203d18ddeea95e122b6822370e87e2aa0afb8c5563a75e0d7881f7034c6374053e8e243da92533f5069830231f0d61ff208b443508c2db13ff4fecb6216cd471dd0406d271584956b364893d662a1c7c3051957023a078a4992134b4b599d5c71ad59b8132a36912dadbe3593a461c016869d65ccd2ac97e743966fe85f42b456234966a67e33b126d8abec8c6b762dec6adebbc7e7a0a2425d3b5b751a5fd35ffca23e86f8d304074dad431df60ac440a777800744906f67f119178ba510f74ed002a7d62bf4155c818530ff217f4557cefe91e38d67b209fd99512844834c91a4b04ff226e1ef60942e50e6b2a2a6ab2aaa7f6b108c4424c1780a542337ee2315f3dc365b3306062b5e3c96ce7fca6ee15a7af8d4b73e00f0b1934ee8ebba1f4db1a860eb51ab32e62043c170d4662799da18beeffcefc8c22e4b98b22a431e5752f17936a430d1a8c3fb61d5ce5a3a125e35f205d41551b06981e3e67e907d3115997a5086c17a715010c162367f8fe2ef50a5f39696fbc64e9be5dc3533fe54706373a8a538cff4d85e1e6afd8b79fdba4a83d02533d9f7154dacf2b6b3172f54614ebbb4c5c30034c31a05607353df2841c19927478b09e35a641e0fedf96b82d2057b826a8dcd382ed6d33c291e42b69afcfbbc82991dea2e839f28a21188b15cb9e6b218c156257c2ae1944a9cd8c65e749e947c10e7658934f76313ea8b81d118c0147a36fddd5d6eab47c4bd8e74bb6fb3f951a9862624f7b946e0b56be65333d95551bf6f2e6b0e771944dc488d63518453854380515f35442e62ff58bf1da769f467e8d2857d9ecf35fb0be6a5b24de743d2f7eedf39470c9d55d338562d6ab083e801839656b98347b95bd47af2ba1ea5cac1438c53fe6d5fda4e594d0e3cb5c00e7625ede457bb5bb4c9cf1049aec49ef0a86f601ceccc272be21d9895a76e94c946e986c7f3202c1a334772102d9f949c02187f8d7ef3b514e0eeb2c6a73c7367c17c2c6690ac3ffc9edb88a9f831b8b598e21adbca32f9ffe8fb6881b0a0962de167be54df3644d011569c9c8fb967d6d49138f7e9e777351cf1f480c187c62936d96aceb118a919e0e2cc5ac2ce08c71ff05698297fdebf78904b2d4bfb00f8897bff5272f77507dde3ce958d52af6c7de1f3ccaa22b328fbc12a5f395da1a650a4a5f58da1975272c34afda9dc2396aba671cf3bc0ba9d6e0d8e1dccbad2eb4ceed78e0b4e30e1a08121d2d57d9924422235f6184cc09958ec20967a4b03ae276d7ed696be8a17951eccf70422b17b17af395efd4a592188f2b90b02daf449cb6d71459a57c14b5aec053bca8647a964ae8331c13711f0e61acbb1b21a42a0529ed5b194d64b10a56cdaa6dc47ff1a136c1adaffbee93fb2d649a8df79d36d8d7c05352239c609abd3f69b0996c71876038bb1ceed4cfda0292cf3ad5fd02792c2cf5ad149eb2d7f2df321b5829e142406dbcfb9b028e83a0cb33f271fc31fdcf9a1df0344618ba91c905edaf36a78bceeb3aa8ae74cb6edfca81d5d3381202b220e14f75ad52597c0fe355aa19ac29bd2abad3771bb32c6b019174c0043b76ca4b49a24f24bd2ca09c7ae4b342920a807b3e56d76d1a76e401479d01ae1201099ff3b65a82c2e1519b3749133e8273ddc357b11db04797ad58e9dd5e7a656a47796ac648d1fbec8dbdd91c63439b04efd7597a6a8d4a1d3456422cab503bb1a0277035c574332ae669a2d754994fcddc38bd3fc086866c8123a6e9bb732171a94e2fc09897a56dd3b8720a9649d58a608613c0bb05f3cc6992a3cd134618710dd3a99659ece629cfc61463363b78b5a435338d24d6bbd4ae49a2c81a4d5cf5c498b6bc40e366858210b7a36d9e83a9e11f718fc2cb3cb2ca0decd583f66286208faee73395819dfc49d0d85f66826d2d7ed6fe096fa5fccf31ea8ab9600dbc87747ffb1656efbc7c304609cf247d73a9e086003ca41de61e56a2f2417272e3535f7a74c4cf972c4db207ae5ebb668194e7f0db5617af0de3fe5feaba321dc445b1c90ed1bde6abf2647428bc718297f3d33be3d1869834348e7aa7102f6001a284a10dc1711210cde834f39237b06e46c546ffc10499707cb065f989d3633b29ea637500c141494e387350ff4efce71dc5905e51d58c83fdeb6fd11e3713e4bdc3bb343e8f3e84336721f255f70f2ae81913d93403cf6bf03fad0025d438dfca25e2847d12a1f08c8f70431e4d0421d45fef63b5bfee1ea6d609caef632230a067af64b2dbd932aa1838e1d2f71bdfbcd31bcafba284ddf1ce41d971cc6d96926da5bfbf9629b3c50a0c94df8637e2ad92b831ed9ced2648a6b9983f5b0282b486a2708feb24f4bc7f2dfdcc899adb135e99ae38d850e52e5f74e5233d3812a5af387daf16edb287e064d9bda7860f0732390485f0259dc7ca7a92620c20b79b6096e770aacd6ab2741b2cb72419726aa2dcc95ed4bf0845ddab010a305dca3143d306f2c9e75aaac1d4ef2361f13bf8151ce1a8020c90806c95d526123833ee57dfb461a31422f4b3d673890d63ec3f45f7cc3ef3f53be57ef3e67b8a5e2c72e7a7af0858a5acfe588dabc88cf84c3a11b5476318be2dd2a8afb2f3a94bb128c076534c170256779b13467babc8108e4512b453302531bea46e568e1459d40126a2ea4d829dfa2bc60b59a962edb163815e1b811cec1921b4615d65535b334f7d1265f0d4d3d739a823b1dc11fabc33d0c3d8f64a0e050dd82a3beb3121ebcfac30c22860bd706e3b33843c2e4a829a1753baf330f876f4c1cc3189c62482fc750ce8d9c0c06d09ff65d1f858eee0c7c9f3015be6561179260f79a898400973234345c99ef4e2c152d2a0a10d80ba484c1fce5fcbdec67b6afef4809529178a1feac457969233bc16bf0b64698aa83931bcbc4b1d2d9d92db580c02e90021fd8abff25ab92ce34bebdfcff929929fe7d31a76a6f912cb2827b22361ee3dde1e11344487309c1cb652e9542e34507f4aed7806b0b27aeb0b14fd0577eb1efbe5aa4e6dbb4bcb6ce93fdb011ce91f9d8cff016f162e5d0da97b83dca92c25ef6c98c0d951f280cba6dacd405703a126a2cfb71275b6c7d2175a3de433d76e3f066b045e4b1ceef7056fe273414d92a75ad55db305de1032a92ffd5bb2af17cef3526e7d04a89491586a92e28fc70ec7f3430d27c47aa96ba45e06a7fddc5b4388d0bbc1b39527ccb1cc957d18761307fd489adc269be91a275ea5f26a7263392099971b3befb95096b815394eae908a5dc07dcb73b8b5f8a72ee0019454239e0f4c60a685430efcbb75fd390c6c224d85e0c5a157a8d7ada3df783fd370129760b9c7eee69948ee192f2be265ffaca3cdfc6a6efe1c158cb634565151e565fce33e777b3fab596eef59e9de89dee4335869be568dda5a14256894b2590025dd74dd21a998e1821967ad7bb6a1850075de29901c9e2239bfb7da0c4b0e1334b841faec7ca827f1e399411d53720e8191428be662deb40d253afaceea289259d8d621636aae8347b1a8c04b45e59c70e4103e3ea52ad9ef450d26e46230c1618678597f7b2b1ef92f02d47f999ff118ab01995d384691f51a07a2e3c4e46d1c4b36d23a5bed9185aabbc34c90218d689769cef5c10c7beb5150587fb92cf01ca8a8413c3223d1c09e0dd4b605680d9fadbedc1632ca29510decf37c29103936ec874cb0fd6a83995c996369549aa7ace18d10c5812f002f3bf0fd213e7a850ae8d9fe347ec84eff39620b336c97047e85437ff4d4f2fd80d44e92d1927ece67841efb5b07b6ddd4541e5a771b020b27e4970c6ab2ca5901edd1d66a3913112c09e5db896a0d65caa70b79b206a99a251a88822d25d4ad346708bef0d57cc66e2e69b393aa46c0ad7b4454df821f1d4306670caf51a635f001dcdae84f91ee55f28477643e18a4e978215b5bd56f8b5a05d70a5bc071f946577668943b12512b44460de1739b24ffab52d692cdf6ba463636f301a0aa89064f569efaba073419ff0fd52382f495d13b583a738bdeb24f42b1806e787f0e930ba2ebdd151e5a273ce02c056e0553cd2542e52dcb9cce15dcdf51b3adf9994cb14a7456a691bb439c797fa772f696797ca76152dca0321cfd864f065cb0d1ac65aae2b08cc748678b352a6660ec0f39e73a9557d28c6f1426061f70c345f21389cf0d0e8ad5a64a5cec17f66e768d46fce827210ca387d6bf257a5bf8266f4b56728b9ea4d5a466758a295a194b5ce050a9e08d52d9bbf326a9174649244de31598ae36a32b9230a95883e7443a9ef184a078037e99094b0ba568341c4b5c600cd5806187a4a404f616ab1b3d88cd66f24658f4c024a6352c0f4d19eda280840700714fa9a86b4e0b0c340929f73640954c4b7adac9e2a99af1a3dcd0793b351ab0401364ad7f0bed9655732b47b60d705c0c70fb57b262bf4c6dca09b7c4348ad238ee69a65164b19b70eaf3cbf63956192a9ab3f1c5c1afdba807ddd04b7848894f0c3e020308fbddc179de6b59c2c70e51bf8cf5bcd35718ddcccad074378247a6ca36f59902a9cdab93e7d2eaff87e84f490702a1ad129c7ec477eab5b6f0099bdc57dfb76c3ebacc5d318cda77d52c6be6c351403faaaf7c1172b086f869065980a8d6a469f18abba8d4d6cf5b7aa5c2bec5139bf934e9e07df468325497b0075b88898034135e41713d09d3b91e81bd5988d56d3a378f280623740f3ee90edd3c4e4c3613c7d4cea8b4de01ffbec03f4958778ffc7fbfbb4d1da99f794b0d307a0ee0b26626dcf32adf7c7f0cd00b3565df5c6ebdee7e2a1a555782da7ba5231307d24b6143017ef2e9eb9bf33f4830497812263b18750a8c8c7210899759a634c5bbc65a954305a7e18d26bad0b7179fcf0ac6fa0cef36c8f8bcc3fa153f1be4b5a61c54b9e9b270be89e5cb0276b4bedc18cc126dd01815e4bcecbe9fbb8b56d0d5dc0bc9b15666b6382eae3b17607451591ae50a87d4cb75a07c899dd5fc34a128d74af2e2cc6d5b681373ef33fae986cfdbad674bb3bfa70bc1bd9646ba456c9ccf690b111c242388dfa3e301e3d4dd50ad605058166b7416f0bcb2dc940eef689011868002297e7f1c917bdd80eeefcde5ee48b5410c679899dd5afcac529e9cf6395dfee8350444148bf0f9e69721d084a879e71d07f53c7dd7e2bdc7fef317bd1ac650c7612fe2453e4111c525eb8b074e2fcac02b86667beff4ec505cb9ac734446b093a0e953d299cf7c7b195ece83ce9f40992130a78901d1cfaa9cc7ff4e0a5720e3f0b3db12d3d2c7e68e93d241db88515faa49209a481fad27f17f239605d51fb4d237fa69db346383fd58498de116d193ec99b5896829942003f93d7339e434931e888cbc75c2ec76249c8b0191b0cadc330b64502ff949ba1fc793c0564859d2c5ad508f7f2aec9c0faa0959709e6c6b55ac5bb18c0397950f2fea8454872b17fc66636b41a1e9a9d13983aa051936ef9b4b6f153d139bc7c8fe5a8f1352216ed7598b3d6d2b81df29afd15f5525dc29038eb59de149d87bfefc9f6d6279723f021d0128451fe31b23cb0bc7adac40442304750fcd36c55724ee36a5134433a8dd7b6c61e95b7245d4488e49c097bcee5d2c6c5af1bdb6377ef8cebe5fe4d70b1934a525700eb84222f6b02f06641698a9898a46cd1ed67809164ab61374f6e6e8146168deec245f2265ece59e52d0bc3b053c6516e9635afa23244f478423cf352d52c7d796ee286124ab723ef263f9bdfb07daecdf63ec661e56833cf41b76c07633f4c986878c79dbe0facc91d0927cb5ea907a39bbeca9d786aa302b8a7aa936bb6f9c7382f39e7d8d7eab844042a6e7dbf5e3d86b6686735fba110a10aebe8e307f2a9cd52f70c43c8ef7ebd02c2089acd673bd69e810b6ba7c1dc5135160fbf0de8637fa8ccd6e82294c4e51dc1e28cd23e8d504bbe8bd2b922f6358a8c6924a9dc047a251257a51ebfc26459d00d8641a74be793c7f2831145b41d8687f0ad40abb957729bb77a7faf375be174afdbb332d52fce523cdb5d415eae55acdc8db7f44e3e0923e2eacde224acf245c69ab1e8c62c1d527491a8b05824311be5d78d36b7124ef9f38cfb32dd2d8ab8419c6989b38de0f470e9cd46f215d2470065b9b94770fe1fdcee5a4a5f0db1178b6a974f836fd1f8da1ba1c12cf5f33507fe98f14c1f8d54f7bef98a962fee91a90c58019ea474d0e93c0246ea68a2b1dc02aac3b4e5c5e75c139bae88276f18b716b6ef3d972d608100a225caf5d72d607071f1513b4a02b9b90b4aab681de617eb5a24d59483803eb19970a21f689bbfc021e589f5d7b2c08328998d610b1eaf92f75984353d157465e7e110bf6c24684f0c2f6f2da3e0639976311a8843465930af9ff3ec44b9456e5c0292e4d4802dafa78f2b3601def6e610fd85127d042b0108e09449c6195f4838769d652511e29ab56c5521a5f9218b39ea50062a76820acf78faa25c0eec1e15c4725761694c1da12776be48f80b96e63e8dbd39ffed90193cddb02f412cee35b2b515cf22c6ddda9a0ce43daea3bdb17dd085e9909417d5c4ec8e09aaef9460f014913b7cdddfa9597230ebbf5c10bf274ddb5b321f927a567bb2b3b40d405510a0b24f84b5ac2e7d46b2c3e86ecd09ebc74beca2f97d290c8f49bcbb0bc14fc2858a258bd3c0ce509f9e3fb0299559ff8a1ab0b7ab59ec668b3d0456481d56f0a50e6e8339761395514d837e787fd2cf8df9c857fb4110433186a38be31eae628584cd4d962415add7318cb984fade7802e98d2dec7ae3f94d03389b31b060c0178e0cae11453439ee211446c1e72e837bc8d3b37b887f93e30b6d37bbe4bf01aa99f51e6b468daf07508a1e2f647a9be820f190ce7009be522fbaf2b9a8fb60793a164afa3fae8f69d4c6e039b59dc53dc2645babf149189b20e3c24fe5526424e6b4926b2f73a9ec2c5fa8ad2b50c2ce3d991d9ed3913b24c3cd3ed58720f02f9bebbcc6891c15df17d5f5228df6e9c399428d8f19cbbfa36a1d36f7226f74bca48479cdca0355823299157977d7de644e2f302315f9fcfb67e21385efb6247d1e35433f7225d9a3fdfd09d95dc4bf95d4c3eec5f207cb55dcc4a004256b9041e6c19cc3358bc083573328a7088663fc1313c4d8672797e5f7278fbfdbc343d8dfe5c78afe2d67ee197eaeeabab5ed8b42d3532b9d591a038282dceff769d2aec62d594022f31d95c8b06745d7366701d482e8b7d6fbc160a612456040b9e36e0e7973cbcbc04e253d70b559d7ffbcd212c6eeb4f09bb1b45cb2c1b364ade241d8042d8b1854981a8b1df823b4b3cbb7bb2aca280e5d869d8c199ea46436012a07eb9dfb6194032049ec35f72d9b0b719ecf4a1e979a6a23a0d552b89d04709f6602911e224be00a35c5f94517e642024318346796ce5d82b2319804a0b6b4e889fa3449317684baa3eecdca6fdc178f59aa6fceb7f14af765816dc9c874a198fd5067e9b551065cdb9a10db830b9022978bd1d8a2e6cb40cede11a1dff203e73b32d4cc99aec51b49d8ddcc5ec1a1a3d5d2bd85d694e8cada05f9d44fef46f7fc54c01cf0f3af14a32d2d0985157b860d91499bd92a173ceb13bffe79f4f6b798ac6c505460693ddff257b73e92d5ca9ddf185c0ad3a6a9a5ca03d3ad7871fc19b09f46e080762c70c0d2bb4b3e1b2b7694117327b273025555f449ceaf8509f616872a8981519a20de42aa6231c3eabf01cc83eb6b6c79828b91464d53f70e6a0c22da7129b7a6a5483c123d56cd29d0e795fc3ee0cc169e6adc30c88650228e2730fd4da9d69680b7a328bc1b7c5de1b76adf9ad73c35298e7a3069bab53fbfa0746a25eb82b3b31bfaab17461c0fdc58173f0168310e1e723654375324b113c15cf13c76cf13782055b6efb2b6b2e09e577fb0840f995f8d4dc226c181018e9a0d8de0af9bcc48741d13bd01c7e3025c89de1ddbe63bf9db69b6b29f83ec32714d9216f2222c9961e666e54891de8ace786ba198098a51c891a3fa45b2774a2976b20730071f7075ba202c75017a8f40fe505dca371e4ac05aa1c935626e670d0c11d4b3e3464aece635d0cda682929b69a598c6cad1f8414506eebf800ce093557ebc423c2c7e1c7f11d89d7208220ac682cf80a5239de7d71bcd1ac44bb1174e6fab1cc4473efa5f38d029e1e6c79cb111faa4b2aa61067ac5cec2b43f7f3c3026b730925c121708c2d30cc8f52f65daa64f2bf1304470f17e3b4fa6544e19604b6f85ed868996bb48822fe8f348ac59f2952afb9c78dd0b476091639c1a42ad3379ed276435ef6709a3dad7e011fd959613978e9c22b27b867a905169f63b0ca65134eefe293d71d68bb9f607d552ecd9f9eb605edcb6c20d013b557a218a4f1168e6e435099eda15eba0dacde0531530b53036075f03d484d2247103380cd43409b44f089d50a6c7e3920531b707a8dbd8430c0dfb621e6447ffb4c2f3d5cac5903e3771a7de5fbff6256d7fefc148ecd6c2fecfdf5fb6b08583d3e1828e5c7d2555744c836364262b525b6dce8c5adbfd63bc9e8756d3d0b1ebf596bceaa715a0912bbc523138eab2729c90c57e35b6c9e7f3c99967e2610d9f2316d7a35d9c422ef73d1b1c8bf44b4fe8e11d727aad9825b24065a07872835de182ff514e92c0c7a0c0d47cac02b6d1014308139400a30adb96328cefdd0f4c81d5dfc529f3a5afd3005ac73b3d1f665bf56e9da479bb94c38f5c3d7e859e76b08953a91f3cbe9bd7e9a81aaa4f079dbde79f39afc34fe35df6f4cc740b206214c0a4575a2aa647efda067064e9d3c30cade398eebf83630d6f67d1a71acfdb040761b3ecfe2381477ce53a61fe221935cd89a1327792f70962bdbe8dca6478128e77ab8905dfb0c9a0cb622d6f4466029016248db7e2fe68f7d125958ba40481a42e259c881a65ddcbc3d94de2923ad8c7b8e9914bba768bd5ee4223d2146c73e59bf7d76e34cffc977dc11a85d5f79391ddedb59f30cd76967e4a7584ef5274f6469fe28b4c9f132ac2e07ac406779899dbf44e1e09b8a0797678743d6f9cf6c4de78625ebd9bae959658a575ae669210fe02dd14652b08499702cde54b4593a0495a15794a056d4cf8b3df5cf4ba8b0901741db74527c01a0e12f388792572bbb6993cfbb2b2e29568fdb38df2d8079fb84b8c4f638c55c7463cba18736985eaad4c575a4702765c5d8a171d8b5ae8784bafc541ad8bd8980598f9fd2af6b0fac1cbd9cb8a78fc758e7fbb82aee68e58c719459fa9252deea6d8ae02ee8f024a81c3daa6414d929bb453c304fcc30838987ffa651d534361d53f1403b87c82af1dbaaa07b284a2c93062c1585bc02c3ca77eecfd4bba38bcfd7471e60f43e2c9cd89e70bfa709bb589f00ad82f724372899651dc38eab20c883a833f258a9712c46816a1e25bf758b758c1b6bbd1b3bc684393552cdb8a2ea601c137d3ee35c3b19fe251602324a56053394723a7c80fe825cf2eacf83598bc37647a22f5d09d58af53fa4f228eea5ae1c25f53a525369d6fc6e4db7208df6fd67a67342594595e877010f66f2bb8daa08d0b7a4b5b3ff26fe235c3258ee37a5db875170b972de239f2707dff63fac1630a39fd675bacfff18592b9804635eab807cf40f7d2efdc5aa2b0adb10272ad72d6a87adfc7c02225197e386dbdf8ed099056e415f41f4d1922d910ee813300eb2dff64d94bb01c5c9af58fd349d048b00a318b2602c8745101595f7f139542f91968f4c63197e8f590e84e42f11fea9b8809fa4511fad7ee4b0339d9f23d7cc01c7159f94a0063b2bed08f19e1b86520758e97afd29d6ef4d30d900fcabfbc02a5394a1f2f451eabfadf4dcf661da5a9ff5cafbf83ff9371650a517deead0abc68009baec1e925035935940cc032f3b7934b4fa9a159904d5cb93aca43533d94b20d78fc39bef9f74df4220888c4f289df04a6b395bd9ba7004bf2841691ce895e013a17e53e23a0f9e5199edc7e19add84a9651f318c9a9bd38a2aa4e4a547ad35fb0a539153719b34d8d7a656558012a1a07e142ae82f3da8f627667906d3c3dd001d1add5ae118be4586b877ff44b07363ec736d6bbb114ef904e89507ff188a3c535465d4e012cd7a1702ea1569e42f5b14f8523ae1b322bbd325aad62e87e53d2e6ad186b6f76ef101a43780504ad52dec5a24816b28205da01daa203589f8e0792bf5412ac29393dae243b9160a2489c391256d2ba92c570f5618b35bb3aa40133fec726f077d2cf9ddfa5236ad90d255546b64766c62e5dc0d9add0d3fc380714b1eb3ce8c6d593f859be13155f3fc69d5074799ccf0a774f335e486166c86c6274251f995a3642aeda933d8ed3f8ddb0a14cc69b75fe52f2df00b93bfaffbeb7347570a6819e70eed20cb0c5e14e3408d0192901e4cabf66526598737380efc1b09d678edcf20f8c52c9d0c2c319f931b33b3fc9f87cda309080ed8e76c87944e5f5954249426b57cfc9fc11e0e9af69b4b88b95a9176da7f28cca0086b88860d105a52d37490bfb09010a7347ad3fd7372f9cef571dfc176097e35b9be568ee2347708f4e8903774636d729f9dcc18323dd64063661c79f11ee9a4b47d33ebe5248d93e6acb2aeba023b625ae89fbeb0103d98ea67e893826dbce0dd5ad9a5c55432cbfdb077f34ab1f5422b815e76cd0962aecb5eb2eaabd7fcbc8543504950a463132841f3d3a86f2c0bf68d7c77a43c5d9cd783d63e986872248d98a3f0a886e4fb7aa2168be452e7e8138860f62c413873eca45e2722fd6553d2b1ddb0437ceb93940f8858d31b483db0c7c5792454aa7303da9508e94e28722c086ce6aac7ff46cfc51ca4e1c9023d2edb75a9b669acaf43dbf695ddd7cf9b9bcd1609c8caa47052b68af8c0891bc608f4d3cd105747ec44e0a7cba62867dd7131f3eb47a348b8dc5e2ed92c26233790235d063709970caa797be3f43e5c9e583052baa543932248ad52f965d3a9bed3d4d814de2d40acd79ffaa75fcd41a74fe795fa7d41fe533cab6334b2b077f60140abbbfb23aeae64a858733f7264c8aa23578fac45ddf1b002cb0a25709898541d8509c371d39f892ee1eeecca3a2720775f648f7a66bcdd0df7333a17d8f6982b6b5adf4def95fffbf38c4cba16ce7dc3df4e8aab1b2236c367d91e505a1bfb39a454de1a8efc9c925ad8619742f9cb72e0ade2abc00d31c204712c357fac3f4c619cd85415f7b71c814b6680fac6d51691465ee1bcf7364486fbe626fb92a663d8193c173e1f8830cfa2457fd6eceb0a1dbba2925b0af93576e09ba7965e2e794ed8bc3240be54078f9f2f429630bae79a7d01d0bc8b4dd09df4983f3f0202e935e6c220d9b0412ef2ad033d8929656642e2c5a5eb2ccb9110aa5ca417c1d0c639e30064fd00e3c71acf8dab963112e5e899227241dd2c7d5c6f8fb6c7ad57edd45c3a26dc9bf79eb6e62442e278229ab1a9ef8a57e63ec5a86e2126c18b3509abf68f318a5a4f27345903f246cf7227de6a4f26255fdba2ab68e61bb760e80bfd49a8014d3f1d592e4b005403cf6210d0f38b67dd31e0c934541ef74a39db77e62f8c29c0c1d9fdd16e8a4f81d25df5e6971d522ddbed1d3b433eff825a36c76c5fb912a0f85576825e43030ba2408038a6ed1f2e95ea15d169496eccad67de2e64021d449f81f9efcfa1052c732fa81320c4f23bdfd5ddac67128d02d5ea9eabb06d02e39dc02276beb022b59e92d820d78a5787a8bddcf69183f022595fb350729255f78bc7336425b0d750134d7aa280ad85a2f6c41ed3082bde43035d999f65ba3b85ae676b00208ec28852efede9d6aee046843388a18f9c9ec065cb1d784e3b08a1985f145a33defdc0268ed91ec6bdc690c8d67278e919260af31b430b74bc2c72e6e9972631d45ad8b5c5023e4b9a1578e037a01b83366ada2566ae640d972157d82968dd1311c06cad99e6a7b306173c66bf8f71c17fd3b45e733717802e0282bf914a6eb3704ba39cd99747c89056399c1f86050eb2fec7c096e0a0509c603404c5a1620ea3942db5138a13f8b0e9713ac6665e4ed1c0fadf4caa46400743f52f81d37b4e4db5b62551ebb90de1bebdd4ee457690275460166b2e0c2c4251a4e15040cbe4063433a9011fa611e8cbd14f99abe8b445ecf54da390cb8a424654422ff22e8420129319a9705c4feccbd7d42e0fdae9dcfbf705ce58ae6bf252531c670440e7d9defd09032f8a3c30d2435b57f59d83a879cc6ed418be8a4145b4b6ddedb8097b364a6ebd450f64f5d7c3b67442dd3df1b674ce7c030c90d352cf808a1ec6102b3839d92f4ec5c79ebbf3ec5b6d068395a5d4722b9715583513c95dc4c94e295a180feead9515b8175be3e466f5416118accd5784c26090350a7d35480cb9c8e633251d7187654078518f6661765cc582f8d47d245dcb18051fa5a2a90cf012d171cc76bf4084b8bf316c1e115ce1d7542c6f296986a0c7fb105ed00f871795a27a4022a6ee195b27c3e7b0655590be2169b9463c5514f2b1405282b83f35c348777810257aa2bdfe3ace37085f8a08c523824be24b5b9b865f987c6c58622eb39198105c82d041e4efdb34be52994f1e92a00198477d52595864db7dde65e3b25865e867c192371001446bebbefe2c72a88b1562c8d6375c5dc641652f0746633902b48aa06852f6314c24e680f3f7f80384d64dc15f70973562a494cccdcc4d9b6258eb104ae5a3ef43811bbf8c538e9b6d337da8e0fb955bfbd1ac1480c614a92e0e7529a0840d72a0c17a4fc82a048a9f8c46e4c6556556958ea8ab24fc8d6490e41158ad8b4b5e878867e24ea193a040b81d6b5e7110175f569cc6ff11dccc249bbc36cc2659a8d72e77fdba8a56a36a02c0bbe968d96d5be6cefad77febcee513dbcf87fd9c7cc1be0b4214da0bc9a4b123a89e74d942fd3bac895d552172c0a76fe86606c2914e949cacbbbe1cd92f33dadbe1c1806c4f7b08ee63ac4be0a8959ec73d1b4b57c1783be55ddd5c4a89f6a84c3eb30129d7e6b2002758365a7302e28862f0a6c25c0811a2d015f64d1be88fecac29094c3a21bc5a48a4a086a736ed235364c0b626cf4018b5b32b232fa3a8cc65121929632b62a4c1ded87bf5d7a0a7b6e63364208fb1731cfe703ffb36346974fcc043555ac63f3d3f44f7f83461509ad2c7283499307458dad11a7fabe181f913e6433ec64a1bbe834e8809fa0ad21b26300811fd9277f45f5c10dcd95732d248e13ed3a92be1204182cfaa169c0bfc9ac6bd20aae1bd5356119834b45c0a4ab4e20cd1ef4fbe1a6f5d4686947dbc2e077d8399bc8db5b3d8aae356fa5c1ab847ee361beee8e6a4f9afda154cb2f91170f002cba0eb2b0b9fbf7c5b8c4694a695a65a25435869bf904f97b4c689e1bedd8c5a5b36a895664003a5814981d44b1ef06ce7e5e9502d28f8abf3c52919b9e7e2494fa1f252858ab812fe99d60e3fba3b6498cc98a11f283c91daf804bf31e61a10a01879d06ed0c50d9cbdeb7d2c86aa3b824aec85b55490ea9945cc27ba85c53ad8aa51350ef7d73720d89754131c4c0c9ae799661f21e1ee1dd560a4728de0774b701dd126d68a8d83bdee21febc41701e23f87fcc5a216fc4b4cb0d59e83c5b827c8a699d97a29f0990a69d5334676cbd86eb723fe5aaeb33cfcdddd93aca3cac17a656f74cab56bc038437acf17a3b30017bfc5a2b9ce2194404457f69cedd2d4c41b396927848a7068d86910e4a1981e8712b9ec737a2730c6f50e9c689c05b92e86d2f8a5cf4cacaaf14b3f9bf36962a5b7efc7bdbc9348705763255ccd4b0a3cf75ba7343df101a5a77bbeb2e71b360788ebedc35eefbb18938a062cd8e292d330f1f1e70322fbd121699789c078ac7ae20f7977e95c5d7bb3933451b537097c989994369739a8884d68870d00178ef2de99169af0a48778b7f0961fb61be22229128b1275830bd2129a922275f0a567e6d2e88421475bcfe06f7318ece70c69d63f0f572d0f26b4f89a92b5850b33c54d996ce45ff1d6e1bc920724dd9b478300f3fed476628c068f5920361435ceb2bbaa16e70c3215b655a55cc131053d20ccc6142a432a4cbfe55c559254c46a097979870b1cd1666bb45fb67c916b4b25d40c9b51bee348d92b5ba2cce3b63f7aa16b5bc00cfa9abda139f9c6e2f6abf710d8fb93868db904f054183391a346628b0a9fb707a9fae19e36b74a2bd5c687563d2a213654e25cbded2036e5bfdf056145c686760502885984993622bc0f7850e1c361a62d11b98f8a29e5053b607009cb4c9c829032a829f3f7639f45bd3b9a607a6b75c56b547ed2ff9c832ef8dbbada720c78b3c85882dfffa9b2b17659400c70386cf8f8c2548f86b4b64bcad617fde9b8fb1d55a13022c6c681530148c76c15c83f9698afd077688fa70452d8574437eb79c83e2a94fcd838f717e03850147d08a28653ec8817b989d0c43071b01ab26f61b57ed1e2b62273bab24881347ad2000114b69546577fd363ecde3c69f58ca2ff792cb711e9f8b6ec416eade596ddfaf904d89b3c3ca13c6536f33634cc1dab09ec8588466afd686a81e6145769d4c3d0e9b3357dfa32b7f1d69b281bdc344d0b4316c72c4a00781fd251de9d43c2fb5e963296252f870dd690991bc85285c79e0fe985c677447422b5ba1323a4b771f6e42420e56a40b5b27a42857d0c5bd14d6f2a517fc7fd9506f01d69dc85cb43bf7dff4131d92925e262f9122ba700cad89c52d888da05bc4ef8d6566bb7f3a560d6944be6ca07d7d1c99f9f96d939d2d69da48efc75d2223af1e804ee6642226366fbb5f0b2d91c00b54ba812caabbb61fa27f485207ac4697358291fa7d405d5c28ac9bcfeb62be658c9ebb032b2879eff175b9424ce4e7afa91a6db2b8ecfae12cd5b29215024937f54d8590a76b28940d757bae5f934fe9f4928cf83366af70c88cb6df891c6d3ab3f17b5410d34585a3dc16ce4af6b1d0a3c2510478ed302c937177430b11b007ed31644616f778eae28b8d1f12de0b132705959e4b74b972dab958de3c5a75260f53c90c410cc2363f5943b4f05b2ff708c70c8aa5b7730af81ccc18fd40ab2c7f2ee33eee0a01f1dcfd7f8320c12a0bd39d6c140413508c0e624b639ebf6b2dfa159b51e32a0a9dca6a6cdabc8cd9eada1526aecf07f74ba7b4ed3348759e0b7c55dc9015e02885b6540903de3d9261e1f617034f87e08c2953310d673c4f4ac7ab1b59fe4e34941707a7811240a1124414a7fa77221600c9b6bb425c3e2800faa6ff4a478bc876500a9f1eb9a01d7fcf681d6507491ed083edc0b898800f37427a8695971af84d304280b3e666c94f5f1233590683e9b279884dddef08ab5dad6766bdcc54b78039812403c04495ffbb3e1dab64ecd8db8611af248a53210ba0630320e08cee1e19890326718ca8ac342057c65d874061a09f0c12888f99155cce28ab2776e86392879c30b0c06ccbd321b377f0e6f81340d7c1a8dfe1494881b5c3fa6f215340b2b227c4314bb176e7c2f66c6868356e20115ff676114f43b9fa57a79e872204e426c22bfc4de31780eac1cbed62457280df8e8c4113f76e16641b62e85862347929825a2bd3fe7bb6d0e8f4e5c4a9d9cd3f37ac47b967594fc9f626aff75ef49d6e84f5a8db8be8d963d8b86d3a4b3138fed206451b082d3b40f1b03a5a16d595d0f9f74108b5075b8e0156ce7e7852cc312e9db48d307052cf4437e9d8c2ba7b7b48e8a6b0c0f0086b121cdf9584e0a4c03ac31872c5003494260fcd8870076e966ecc3eb9949c25302fbf08ff3eb00fa78a04a761182ae9cfa156a7c3ee3501e2a037677099af16a61643ce56ba78078904ece8bff129698f72b6d3d58f33dba7849a9e5d5882283e63826a17a53d100272508b16f71c619fdf4569bbc879899978860410d53310f98ebc3109d9c6f4c87a0ef5238166ed8fdcdc5887c2388d580e1aa83035fe76544f3497138529df7ed7500be32b4901a752fc83eb83e8b7b074798f5de79f927b5d98609d9aa14b8dcc5aa786ae71ff933640811bff64d8810e4ca2f742a47cbc85d18871fd86261909a83a8120352ac60a45d2c766b1eaf876870a28ef3ecd31c0784dc9efd8b524d1f01010c1731013de0608e5da17b4330b20738a8a826fcfd7f41fac2c8d5159143d8ae569128ad1b961b1c0beaf7db8393049b6a094405a16d403549ac02efb87018e5bb618995e3a5dc0ff578b76a600fa67434e3a0d8321ae2c729024bbd0d82c27fced14e60ffece4fa13fdfe753638b44715b62b57043be93db95c7cccf6fa8aa14a1330a00842a18a6a59ae7cbce909dca7f1e1151e225a3e85551670f5524a6288548a47286fa0f73dcbd7c06d6f609274a886932353ce096642ee0d6b73c8545be23e341d74d686ee14c33062eaadb35028b5e2d22ec09e32e3351eea684bc954b6a4604b402ca89656bb27ffd20e9d1574f2603873ffa12ff8f1dead67232e11b23912f5984374fc9b3065af21fe5f3c7fe1b2c08f86e9dac7e4fa119593e1a291c109527907c886548ac1a40f877a07ea28de22dc4d1d3892aac33fd85b6d64f6a3901097dd892a914ecf02350d73387088601ec275fd4766199eb1ff7686df6464f05b50dd5ec4c83d7980b9c44a9ef28dbd63571d1ad94a25d939f137689cc27431d9d13ffeded3795f22b054a3b11e3b61270f2d703775a4fa94321df8c384d734d2175ff204d97bd3c290377870c89d82fed8c1bae0b5d6aebafd014e4ba49237cac56c157e149f991119af2dcc3b5b8298b6781fc7c846049e50ec3087250f1037f637c3263eeb236dc8c897075e248397ac68bc6c9a7490f73092a4563013352add6083786ecf8c2261ec2a670bbc503007bb00cf791987cd112bf560e54da6a828a23a8278d75dd7d8c4a62d9b93c4d2136155cedb96016adbc6159d65c18e420d84fd0de3b99c85619a2eb789316265a697473d05d7504e40d3f8e710482dbd54584f48447710c2d4c66d8cdc78c9f0cdcd2f73cfa582cf505d46049187a4d08bad7094daef5df2752932dbe6de50c0465945533bba1c65dcba2f14650cfaa30c1102096d87a7836a07eea274eb8554ff6281b1b96fed68f8cd9772e5c0db2ce4a4ed92fa63e90ff34cf13d80109e310654e104d9f9e2e49dc8ddcf124579715027aa5f1215e119876bb8127e4afdc0c3c988af44a4487b5d93737922970961d22db30fe49709b844ac12af280e4b780e102634aac38fb3bad8aa90e6d2d2f5c0de83ef30d3f93f87e3c8cf53c090975a3489d1061e7d7e0e1d617e84cf9bb7435742d0f1fd414d308c4332c0d563a7f2c1937d54fdd6637cbb6a17768a22ec2f09c3183e0864a1f0798c7fd99161f70aa097daf7e3beea1ef28dcc739c358a15e07ba95911d26ed736820ce28a9c26d06e6b7a271fd3fdafc78359270ff98f139af5b8702a54be567b3ad1b04067aee8f405f9209c3813cfbfe351a011bcabc4d825963affb673e45ff44fc1eed154d67494eb9cb14432d392b4343265683b2ab1c3d47fbfbc675ead582ea6045bb7dc7d2ca4a3427f5367af660a56572090d33cc2b416b25ed88b4b67074b4b151e5386d7b6f20549d77521a07500e00652797678981d6239a688bfd700a5046ffa62c23fa58f0e02b6199d5804f564b818b010a8ee240930a48417a9dec209e25419fe62089f34fc1484cc96cb3192d922ba51665d84b1e9b3b1985cf78f4c2298a65cdf15c92f55d5675705de925aa6c8807eebf6a84ae2d8f4bb4724dcdea6d361f50adf8f2e509b05e5400a1522c5f9202891fa173c076facf8dc66d33fbc3a0ae12909ced3e9c040cba964127495628825477a187dcd47b3d5cdc342249837f93eecf69ac55011c070c6f4c5b0ee0d4cee7279c3f26c9c0c38d370301334261fa40112d29fe338b56f365d0561bfb4c67f25c0ef47bc0aa9f639608f4a12faea69a959cb807c199b44d67102d8deab3736f58881a0765fa4a4f022589127ec5905d18d0cedf0f70b71f059c2b91781540d3ab39100a4b685b72b06fda0b33d1e6a1450348ec7147dae45bf22078a8afdf8f2c5592295fb6964fb99cbe410be5e60f0f5a82a03ae11bc18184432e5d252eae863b7435ab4d32cc74ab9bb16b8f7553b228a9061a21337a80d22c97a9df3f265129b12052313276276868a68a140dd00e08a9ef8cf9e067b42b12de19e89748db21a6fdb556ed1b583daedec777479706c3d45d81a99cfbe2a45385eb5e7769845ed2c5e046efa3e157171b909088ad16f5c4d1f989909292b821fc3005e2aebdab2cc0a18a3c84bcb061cc8e8de8037af29836375816ce1e9b67303e1128cabd6c3e61f018d439816d775329422b7a855fe659c659458ae757254f5debd975455513a1175da92adebd3b270c0a58153680e8cd8bb3170665596e5f273eb3520c1b15227a2f633b5780f1c55f73492a30ede39be12e8f32f5780cf7758dc9d1193a6c6999ef439ceed155594123d743b918f47f96e00717460469d042869eba905bc3d1ed71a802292ce8404a181a4b34f4dbec1c15f6cd947a3b071775f6614cbc11eb968cb39cd368bd87f2fd8075af699b4811102975a51c547036b5c4f3bf25f311081d0c422dd4064522eca8a290f970e7cbe3ca2419c738dcb4d9db6e85f0cd80b3070359c14682188b3ccf4ca7a46ec73430eae1cc100e05601618b6325db8cae03711b4a8eb85ef511eca64f6e61aaee0a7bb73caf31a021b33bb4466cb43d08483b6e554b3300da5fa2cbb418f3e86364d5b489bb92370f9a83aabf27938870e24d41f2ef7bc7ed8d5be9766d8e781e139a8cd287e5d3119a7f9698c5bb7ebff0917e2804819ac68698e807e8509083c34377062a5522c2dfbdd71965e22fe76089355ddab55c690d33c29b9e787e39d1ccb1af41c0f51bb83569f20099ffd2a72076b61c664961a0ced3527cf890069a9522fcfe92ee95fb9c004c9ee24b2fbdfd1c54c0b8842f4df248a9ccf416d8cb7a7c45fb83902f06d6bd049e0123ea2b95f4c35746dbd339e2562dc120363c835cb9b5d85417366e8d43dd8cfb846ae965f0cf5d52c5f35ac1b6626c9921d76a64335eb71254fbba3b07130904749d539fddd96c87cad5ad18d955b56926b2f77b924ef90135cb251a671138d16b4894d4ca21adf651e70104331ecc33c384246e3df8bad2d624ea8576266e9f72032a57c5ade8d10eb0cea5337934184e90dfad662795271d31406e7a9616743ccf6f8f1717c740835c95eda4bad6db5d6c81f54e6fb0b0990eef61a33a3ef85991a423a8b19772c1981cd7de83b1f5cc25f360910bdc11894e69fca0962be7f8469aa56410bb2e0df5b590d2be9f1a0a198bbbd2fa9a8022859a4f79a3ff5ffaf90aefb4cf060c22a66c946039a65c2d9120a964886314733b2d66b143c8010cbe1bd88296b3d3a4ef8b04f2e8e027ea74a162bf1c5470b0548e542a4fd93a6bd0e061879bf60036c0b5837ad0004d39f8eba5e022f0e41bd93817185e9d364801a71be9f9c6ede5817d7fc0178087060852566a1854d1d879e0677fa015341398494a4052765d61e687f191c563888ba552bcc68d7a808dca7dea221ed134150111a45a32fbb97d8a0f05d80a72d089c02782b7b95a473047803f9701e4c2c8661135c2bc0f1ae19ff1e05ea9d51456d7405026698270baa8745031e1644137205f0e37a5dbbad5972f7881b1a4df66cda8bbef385e968e2689e763b8efab06ff08f3418323a48adab2fa1fc10ff871b643406c24c14372c7b0c236987d817f88adf01d4b3f46f8ecf07be0f575914c0cb5d5572078334f847538687afaf01c8683c3eea4ec2258956019eeb29cbafabd31d1b928b2051588288ca3cecfb4c6cdec0dff025248dbe32d15550339133310a43169ff7b900f2cfb997bd82f6f6cbdeaa8ebdea8582dbcac9ccecc69afb862313aa72b73347723af55716de7fade9339cfc025606f1539f1479f584e3e7255fe3cfc169a01a1fc2e43101f0aa73a8586cf03e5576420dc493beb428b65c6b15a9dad38b061291d20c66805ac79ad08ac8f2cbf50fcb9ac991d3e2c5b0b71472b3302d77514ab5fd1f174fffca05fac3a415f07df169959111ff74848a432fd929ac04f77247ceb471c316e598a5ede0d1289934d3cd303b671f71e4a4985cfd0725493d3a05c66c6ff3b985ca8bc275c97453b3fb457a7e39c0fb3f075892953d6ec91a3716e01fec0b477189f1b157aca470c184bab3d769b847dbed5d8eca552874dfed26e10c12e6f6ff21d355d52c6f33a749c755bb42ea63d623e14cbe4d0c640e0c6ca4ff25e825a5bd8d04005d742bf8346f0c7c0c245568a29c690e47cae2af866ce2ae6957d7b8f7f0ce6092fe097220e726afc25bbc15e5bdab15cce7d68721169e46246896af52aaad48503620d3cc64525f907bce3d728954f5e87e0e30bc3c3f340007c9d251a964972f425a4c085d95481bc80488ead97265893c7e2bd5274b1017b7b65c08437b5a6a970ad8539c0b8f0758ebe1f30a1fc677dd164a6551e67270706fe57e7332e7416dbdfc9a53e687c7855743b8683f3fd7ca3c4eb003291805a6eb597641c7e2a5ccd24f3fd80fffc19df7066938c88ff24689577145b9c608c243ee6e9d77704d43369719cd1dcecbdb8240a8b69a2acc4b4873a3530a2883a32df8f47b3789ce0d85ff07a1673d846a0967dce9018e4e8bf3eadf31c695791fedeedbb568c8d4a7a4e8cc6c7ccea7587f1a2740e5e3c368e110ec1dc3d2744cf8ec8c8b4daaf1cb52e190e76c0996a1965fcf61f843fb6e5d12bb277f04961fd1d0118d0411645d2377a9ff010482458fbf171de2c16aa9b9f60b15a97a86de31947b69b3ac816de931581b074483405070fe8e49f91a5033306c349e849dd3f82e945277f2ed9384f840e04477c5158303b1bdc6626694773b6a463fcf282fec2d4d784ceafd06e8ad65313feea2548e3d781aff8d96fb30b5654f1103379b27ad47332cc4cce75efa59a0d16855de4739594c2e30f51341167e37eee72f75aecf86c58ce811692163b4c1f42094054705c201a146b3f8e7d75e2db18807154aa734dd3828ec3d72b150307d1f397db01b0d15b0045468d6fdb45fb611d748eb3ef87a91c56ca554f3c43209f9ba9fab430d235a8ec9738f249a02a299e499c39e3d4a9ab1f4d18940c02d4fa4bad292e95a319c45b80596c2582dd125fff7d5c7b0418e2ccb71979e784b11aa9831a2f4036af90d7864a4af31416cd2a69d101e131d8e3d9c02f512cead8a7478505933e1430c228f100efdc0208ddc478d7eefa921a3ef11b786a1864d849844fb3128a59ebd434e682e37f3130a33a18b916262d043913a81cdc102d3a1d5bef0a5b40af8c6f72a08ec1e25153fe06719f8825f9faf07471a4fff89486f95c5ba2548dc3bfabcb31d18a5ff3b1efe5b02839431acd436b5d34b19e86a30242d74c00022d5f4aebe7f3d252f1dc360e1dcb110e17a6af8e6c81c969774d77cba3f14fab8576515dfb4ad170d12517b377130d1315ed0bfc4366f9df9812fbe983ee9d85ff7ea8168cfa115455a42c6d5bc6f2f787e45cd094376b93a101c610f60eab61bf83f473df6aac95d34e9b1bcfa973e9cd7ff3be0611267cadd66602cd198e8cd9e67879abe16024f5208a9731ce1ef5427ddce92cf20afbeec5babbeb1e555ec34055273d950d4e7696bb9b9fad41fffcb89a87f30e7852945a57ca508577b88672a7282fe94099f1554d20a1394762470af520b3e0f9d6a170cacff888eb9b1976c014b715211831289b25244812345c640fc18be6653e33122a4fea29a720ad423208b1488bfcd3e5fae3c5385e6ac0f18c06d0793f81ab53428cd151ce3dd17d19b4b012c48602b2936fcc26e5c32962289ce77569c1a249be35992f822cb5393676643e0c3194ec967ce31d8311c259d485df7b4c44161cb0edc5d17893b5ff248a3331c80b603bb6d766d341de708770ee7d1c75ea8aab79bc9644c9ab8e76a7e701b32070e68d281019fe75e71b0c70eef728a9b6d495eb71a890e10b3c4faaf504974f78c2596ea019f180a8aabe5fd2b2f0de203dca7cc5f6fa8184299904dac33ed73e565841584a8544e32cab8eef1d540d8abc24db8c062c67431f0a9f7e106904f7d37b6e0ea8de9d9bc9b09e5c568c59a7b974ae69cf256d3668a453474d9b465dd0476dc45fc60fbda0c7452b53df205a443d61b5f120cdc212f69e4f41e82a7452626f4d4fe3c2171217c10237b17469d038d9696b1742c90744ab7d89ba043dd1a752004874b32af9256853c6ce98e73a5227ceb119ad8f98fbebb3c923cad636ea0e4b75cc5db67f4d041e37edd88574f2420e504338ff666038c30a73397a6619b645fd95e6a0198b5838ce644f93d46c6e688bbb456ba9bbb793537c1af3100436c9305b40ebd59624de311692a243ffd1db63489a5e09c46a8c855b3ae7a02219e70a13f6ed7278410f152755f5da69656a68ea3deec90df848d12a6c9e3569ae76c914be3f70d7171701357dde3ae9e2b72eecdd83a771222a3c823fffc4907eb90f275b2b6774a51bb9b7045c7dad303a97aadcbe93c53ebc856dabce12355a57e98d958f95e6ed495766156f7c58317427faa872f22177587b7ad494d2ab94925b732b3fa3c411060497d1f7dad336ba634eb480fecf78cdb126da013733c35665fcbaf9606532f031aa4bad2feb7833d4903d190d0ef9f64b4d97df921997526a4fee006e43d9139a951ef5be0154444b49ca4af5abc8d809512aebf440cf75d0607cd7f518eb48759d1fe5043b7d70d81491941ee1ff47ac6cdc5484bf28a2e1a985232c516b161e39363f6c855fdee99c455f7cfd225976028b6c9302a0ac65efd163972784cdc4d2dd114a6187f99a2fa0d45b1994e37e6a65f2c0c2775815e5c6a5709a75bad37ca57bef3700b7f6aca397eebc01d2bf1a456235cc2f15424506ad3c65f1206128c2c14aab57664a94863ade2f5fe9230f7e44867949fc8911e4e65580f150f39d3c4c6fe09f0ba30aedd8703d3106fd7e46d1929397a964f76f522dccffab2ce6d963f59d3f882ae5cf55941efda4106b2563040d10bf8628a2a24e2995da7b108e11b49e7f78330788f31ed934b298a87a02769df42e2c3984068417169b035e8621325c0ecbac48589e8eb637c9f1c5df3593e9e894e9fc4f0595e61c871906bd81ad7dc69e41abb13e9d1a158a86c350a65019867c3b58a8349ee112d1af51df7a77c266c85c6e7160583863402e0338c3661ac7f18e28e000342c275fb86155132f3b13b8235e00b6b4080952ec70e589063e6c09638a0ef3c0eb7d0a8f3aaedc80c3e858443e5e20943226e633551031f6a26cab1669b2e55a2c78033f4b9e9a24f4bd76cd68a4a957b2037a8d266d20760389310b4f8084ffa4ee778da47a6ed3e380a70fabf8b1fa49ea0b55f5b09cf6b11979c1813485dab03278d20a67261758623ba7f22729eb55386c93deb73e647575d3e2a9d9c14a168db8fd24eeaafb9558790998e9b1770c3487d6d1380d04a30fee1858ff432edc3d5de4959675b4c47c4096610079eefa4f00548f493e43aea29e7064512f15ed5c9771e852103aee67f350ade205716b7f2d95e64bd4c294ed777f3039aeae54eeeace4fe8ac27b2ee82861c4e2c9cc81a67afca622d157f4d503cbe2319bb51afd0cb675ec43d76e14b6d5f56fb7626188d391141fe161907089a448f09fef276ddd5f9a72b74f260cbda07d9d74ec36a3194c80d22004096d903d7aeaaff9df2cab2f11c9488a4bb4bd093345ea99a62539a304d51033f733fba920e68a6c1c916da200987d44db93cd1b47204e0569bc7dbbbf0b5f10d2860db763ab6b6ba6c189b456e5a0fd1b210fc3bdebc5e9bc24064a721eba485dc0c9535e387a4c259ac26ddaf205c164c4ed73c6f11d4bbae1b696bedfbe180f6bab1b76d5b70c78f3e5f202b135c754d6aced8ad2a26785262c69dbdcfe63effa4fac1be6f322453aeebc253b12410c12721b5e81f30c6dacd99add2b366030544a169be07f45ac548becc6a181eb20d02e6c5ad24e8361d24ad8a5844b4bde4d95e830dba964c0e92675618b09f4cd6f0873267132d51a1a728742ed8d0c94dd06c89942fcde434aa4612222116e99778b3ad69f5030d4550d9cc1b577400c43be6a2f5176ef49aa781b01ac2aded5cf530feb9a1a0084667a8a0afe905ec559892633aa2b45eb58fbe6c707ca76b367076cd2d15f5ed60a4f3b71ff2f3ddb171c8831a9d5c85ec9f1146502992eb35f115b3ebe12ac31a19c9dacba592b4b12745865b7af5a4879d2243c561bf7ed69c3388602801751c57e7d539ceb6817fb86465be1b78caad0232513231c18ad5723de1bf85f12d9b8e5f7150ca72797791a2fddc4e0b060f159f51451d6e9040be8b713241f48a4562522265f05359f747ed4609c2b55f301b4da95108b50a5414fb7787a8cd73c94b286be675e6501cedbdb457259838bb61b5f3f6d966afe4204847492e4e394d59580d47c1832ec9739b2f15406417c85be741e647d226cf59ffbc4142d600c24c53eeeed644271cd5fd14aaf73add4a78ccec055b8ec7bad928136ff255e2c529259e4e5b4660d8771d01ac92fd22d22da4028f69083901026756c57a97ceda087d7bbec0f1c503961f0aceb56ea7c21789ccc93c47de764006896aeeffd9ba5479ed377c1738854b2b3d8566c54d2a72f89dfb969ec89a5f1da86ee96bf21cca8336adfe3212e65f4de9cd1c50be6f6cd3e3411a42eb5f2613f9e3bd90f4d1b38f74c0c735ef5ca4bbaa53339bd513574e750e87c272c67685cae6ad5faea1342238107894889252ada9266b8d437d3a06e1d92063e3d4527767222c475566e4b9f9962f200b9bd1fbe8efd0f391005dd80d3be5170fcb65ada24b6f92cf115e816eca76a3fa373b19288a40a5be5a9929fa50312e72ec987f232da3343f612c90250b53440a58544bdbeb8232a6bfa3b6577df12fd209c3663ba38761bf8ec1370f9ee0749f2c19165f7d0eadd315a0dda53ff291d4497d0b885b44202cc58ba83d587c5588d2d1cffbbbcc5e41fb0c0d7bf986627e23eb882dd9dacf8caaa034a7d4f4b7073b148e02719d76fa6b41c6fd625e220a28bdf388f70496447e06f843f5c051ebc861f111115e06df21bfce64078baa448cde0802dde528d4e70207d339a532a65f00b3c6ac3f1603e03ccb04fa43c5f38a538e227630e228715252fef4c0661fa4f04f399f8346919dff5347f3959fc87dab2907979af922dabea55a21e4f23b4c798ca29ae24a08dfa0f86ecfa1561c4bbf98da4f150dcb977ef10dcb6160cc8d65b07fdaeb53ffe3522d2b623578dbe3a049975d3b864e0a431091ced261f337dc92c9117cfe77a4110e707ae5f4ee2869782a9470485416c13493a33d66c1c6b0aadad5061fc7bf89afc8b79ee34f83f6daca69669ec9ddde28a64fc88075a7c2c1f244e78d33223fc3737ee148fca8d7a86af8e10720750a7846fcc6a1fe9c7c92fb7366164895d059315bf800a1b6e42585f95964f7507daa01c6e406c9b5c386727ff9c7cba12d39aa8a0a4d3555a44d02abe01d6b7f68277e63fdd4ce7284c6d7e92572f9116ef745b7c5ae6e6f43b2f4ebace372a01400bd290520e057107c430c8dcff559365da80f70f8f8f4df591f73a3928807027bdc954353e3f10fa19f00a24acb9e69ed1e3a3303fdaf137a082548dc175673fb389f3e44139e9b82d3e236d6a0bf79bdedbd83a6573158392d09f33d80268667070b32062ece474afa0a54b52269b5478179e62ecb5a1f3be28780cf8c2c1665cefa1ef0cc414f561cb60be8965ebe7ba98ee92068aaa04bbbf8e728aca820815245342058576dd71f596cb195823e9c4272a115ec7bd86930ecc629d4720d475a8cfc41755ddf268c2c1780fc23a9fac73b1047b8619744a04a2ef77e31038a573506a44a4f0ead88cf0db98c8f3ce7211843a87dea79cb57e2724d19a8749c1da79341118f7f390f7f1f88948ea13735187d6df6d2ab1c6b236dc51d7fa4c0fdf320a37bcdde0cc85f56540887f7ca96061d9592e5627ad5445f1509d7c86651c379a5ed363a11610fdb903ce1b766b0e01a2f5d0ac827a3c68e584bbd8e6add4494e5dbe1e89dea43e3ebf425738b91ca9a00606903f45d345ac5e443b38cd4fe207190165cac71db82e4f588c445e940fcad3ed8165daac89f7431467f438ac70be45d56a717b48b562f91be417297a887d1102d19610204429a2d3fb9fbe424a475de7b3268527c4662b286e07cb68c6bb7ec2b645f41261b1df852c97db23bdaa0486e168566ee915d30ea9fdb6dcb9ed277347abe3daf1e00168abada97efa5851f345376a145dcf243d5a352478b1c613c90ea3a3dd5bd4c20c4fe46fcc063465e835df6ecaa2aa7312e51d33411f113b4f94bb38e940db67cdacad9c49f53b3f9996578f6a3b3dab60cf405dfa21bc3b6ac386ee8e37f74014ff3c14ac97b91f11f8930538fccf308d71d0c05c8785ec40f26a612c9dc3ccf01f2294e8fe531255a1576e07b286567c923e6a8c46baa54ca8bf6d83b7ddde75b8dd569429cd3f4277b6b0946ce9c137b36929e7cae1b0035eca6ed823ad8d60652c9dae065f1737ad7c4d4259de6c2f7e5b3fad996f84aaa44fdf948dd72189a7613c6f5b9d2b7f30585ad49a5ceb8752530a89b5e717ad7a6f6eb462db9840dbbc664dd793065622380d37049f016b9e2659ef02bf0272265ef6aac439f94800b1599298f345972f707e04a46523ff5eee8f56f5819344bd95ed701b769de8bb0aa2b14e7039c70232272efb4235f0d0701b81ec7e1b4dadcab028930b822e3bb378138eb969ff5f31145396893c5359796ba09e5985f8e6f2ba4da127da14291a0e96fecc0cc8554c5369d9dbe2f6b9bca352d6ad92da1f6a2ab0eca97686efbc3b09d6643f35e35dcfa9e6538beac90436fd2efd4da86b23c5a3c91757afbc309f791c2050ada271d7546abec9856fda0ea9d0fe41660f00a8a8c240fcedf950efccf7df4501d38b864098fa7163b1e0ede9bc641dcfef79237ce8f357d894c300e24799468baaf1a77564fe0fe0be1594f0ea864b60ba25415e307f21a72656c61481c25c08d1ff2ef60b2b23d1677ab532b47ae06328b87a6069558f818d2428ae18ac203509b7792c52e2b1e86d22e00eb1c6124c49b21b4a00da5aac2ce6a149a0d64039141ed2597d1f1687a112dc948e1eba3fff6e176d0b7ce665ee3e8abaab1c5b516cc95ea9b45eb2bb237ee45a03579c8a853b21a235b468e130c71c0b192e59cd68872bae0ee44c1a90ae4abffc66f52bddd501eb101e1fc1ba4d597d1d242b5027ec742e9ea8866e8ac0b819333406d2392c2ca74c1a2baf0aa5357a251b55f576c1acd2d28ce17e4adddca463ab6c576188e78f9b96d64f84055d673e5f658ff2801fe4164a5eaaaa8065b49883601f230c9202674d25da3b6122e25cc83401b31abcc3edb181fc61cffbcef82358d62942b4a241c84a907fe186dad5f15297e600c49ee771adda77b8047a684fdcae9789e2aa43754183e8f36eff41e70b7d22a8c6ff8407660e67bf287949aa4ec18deeb902c5e2a430eade423d8f8c67eb61cf9413b9365b0bb24da94920b490b071e7b64dbefd6cce9bd43278a72625ae310f891b97b92145e9d8ee8b6c9ddffa2b917a539f137f3b230cebac2914226b0c14a336bbc4b0654f551864fa77c68d664a87fb48035ea777be0138fd1909ade123fe0d936a0fafb0ee530baf315fddbba966b51a1129691e30b6274e7470ba30985b4d895ed0089ebdfecef8a0d7b7afef3a405cf98886ca016b0d68e258a279c61db0eb79da87e26289cc1c33ef40d5338413e466805c4ddbfd830d82490fdb7f26d34a0dafbf03aac718ece9c1f058f2b502108fa4ac8692f460f24e6c306a2c39104a35c5c944a11cc849fadeebed0c4d15d6fac5d4f5d21488c2dd049b8482e131de62d13562c9c6bfe29164dce49910d375bbce08f16a8b11c07858fabab240a175059c42aa56f139459cdb3bc5bd0eb188617d106624fc73d9dc44d7f1ba3227dfdd22eccc158d281db0b667311b7a03eee0ca3c701377e22e1365ed0ac5a2a59467337c73a23f7f3e9ce5e019a0d3c4aec4f360d82915a6bf7d70eddaa9b70796bf4e43ede29b9931478ce73ff84ac3edc9efe26c42ee2516b3568827e4303c7192caefad25ba818e37e84227d7bea5492b0721ec623dcb379f0153f62f8b33211f5eb5c48ea195ef296237afa8c8db6d0d9e8cd585dd256b604209d6a34baed654476470938cfb353bf24532e17dd7b4353d3daf4fcd55348267837b0370e8b4690646dc948b224a08f9f54a89827740658941a0b60653e1a80e3e815af395d57f89eb3e15afe42cde7d6ef174d4b8891fbac30fffc27fb3913f88134bd11ce0014dd3cd7394ca2ef2dfeb9431a017b94e70a054c781d7b6ed30d86c7617264ed4182ee1c97bee267d6d7d3a42756ca51fe08e887456558b0e62a14983c19e490b13778c12f1313273faa6a40c9b8852f112f8957f60c183f272dd8157fbb3ccb19166977df823ede9a62647a40f9071d7028f8617d41c1983565209ff4d4324b46fb61d23c0f855ed8138fcf5198b2b51a6ecc3948a2da57571c16f582b9f0663f1a2d45539d71670c97bdf86c7c5df6e5dfb250ff23af4ba6016cca1ce32fb292ee980c54a999d7acad180a2887ec05e3bc228828151686948e1718402ac4f09f2a4afc885c677c98c412849641d2bc2181769bcb15afa4355c6ef12641fc3cd4b43128b4f1d19fd182e7f4113a889c793ece8dca88d595127b2ba1be6cdaaa055b3d09494e6a4328fe4a3aa2c05594ea9445b12065cd7f96219f90559ee2a35eb67012fa6d0edf73cf896ce2bb1c8f3462ccd18b879e2a450a2024dd47e330f6bd6094848bbc57ce2c945c4dfecca8717e288363868efea08f3093be84ccb31c5de0df74974677b6ce3a20a7d624b351c561bdac70068a74de435da37008daa92d7c5bd25963f8297f1b40cfde0fa6f8b387b230b9b99e92696b3a3ac64fe755e25318eb53337d72ff391bb51d00dabb7956b733fe61fc00e03ae6d9573283c2a8103f7062cfc0ad38e2a1f6ab5bb424cc2169c16cf1ca82c1c5139e96e601e069144f6f3251936b1e834a01ea1ed6d48c61138a9861ff54b7034071d423f4b6e91fcfcd1e7c5805f9a93e255d071a8e7e236f21061195303184caa523085050a9227abc6897f30b3b87e33834867e23f2f150cfce4fbd24354ac8c580aa9c9f6f2000520a7251f611e524e3ac9a0c277d355081680e49a5f4a1c9295095852f472c17d48c0d8e7de5511426c6782014bc7eb409ca3539740f92448d718530319b53348f9b679b66d47593c1e3c2c4f2a0bb520d2f8afaa5e9f86ed481e2d20e9d72ec0bcaebbffee23a3b3244857e3ff836470eeda9f7c4180d644c9ec190f7d0104eac49de27c04c70e813f35f3256ee852eb4c35f1f40484dd15330767edd1699ba83e7db06e29ffad13cc789105f2e6ec27eead80fb32f79356d559c95cd400e236ca33d90e0c61c17e46dc560388a1e864e8fc42d71e96783f2550e31717498a0a9a6945310fd63b031fbe9cc007a411c5e014a5ce70555168a28be7615e695daf9fda342fa8ad259c927e1f9bb57a73c4752b20705642b5d81567d350376f186d5861e0c5fdeba6a8d888b8e269316e47ea030e154f680e0bb6eebb9342359f575b583dcdf543d2a1cb8719d3534c05aa0ffdb43831c41d812d13c28e0dd169ae1daf6c8154130724cf577cfad078b1d31e2f72ed701a3507b9d1ccb11ce994af72baa416902df2a1bd64810d16791d73dec3e08d33a655bd73805d573ac89f04eb5bda70f1ceffc9fafb8b388b1df9b330f4b18f153d3fd74d6ec97607096453377a9b497c352d48c51c1a6880f530208c9145c54aab37aa59bde196b1d36d9a5845e604ceeeba2c95ceab12067c70d2adad7d7e09d94058c6790871edbbb15c1553172004578db01a9a6e6490a57cfb385000a7701f43675aa23d790499875c08622b215b8496366a812253db57f7430b857f9962789fe6a9a01cdcde36ebe20742b56e8628d29ba623daedbd10569570b29fea721f442e5508cead094c346b97288f981720864a61f0a907068bb0502e6b76da6016d1028f026b6e7f41b3763eaaea7ffa8e0a4d3fc39934ae48f6d3fb0579f806f638ec7839800caaee60ec64489910b8657b101bb8a594df1090180a4f4d99265950fcecb19b582538f61b122717e98322f12da6e6b31ebc7890d7b4fee9004d5480b617fac816e45becdb94c1d7f7989fb46c42b133b87cb39c318ebf02f356b10d118f08e74755dd95298d1fe1ecadab201435cf3e64103749ba00bd1780439854cf0a65046e6c4973cd5c54c47878003bb705b3b919f2038be4905aacff71b56b6a0c438eb3cfffbb1a703eb85aed57c6b35e64bc112b8ad5156cf6a4d443a3807f0e38586511ba418bbfc2d39cec958843df9c7319e26abdfaa63bc69021d6de8c1703223d7b64894592b2b27531350d617928aea9fe77b663c2bfbb95715d247102bee18fa60f45b89d6e7208a425014d3299612581cd594714d00ff65b056161adf4b73b934ba6ef79e1aa2503b1cda30671bc3c357cff6fbacad28a3171c3d22bb137c25c567a69829cfc2a3fc15c2052e6e20e85996f32957b29e73e5352afe252f5665ac31e1de931f10d1e8185cd9f4483d6c6d4309877a0f07629fbce17ff26b666395d7a3501c562d5bb8fb2401d17dcdb3f2db3f8a2fc024954501d8b5b79b2b4c6f9c48d00b9495c2268d85a2e87af71c2c0050efd6d564057a38dd39e128800fe4e41807a798887d18d6fc7ace9d2dcaeffec4997b1811f364d787cac77581642dc78566a77855099d15208bdb12657f3398366f6b455ee3b41c6db3b77a82e119dc5e5e1707e9d241c3e75ecd5d230e1f0a111153a68450b0aa7b098c48d50ee083c4540710c05aba57c11f413dfee460bb6f75fd1cfc34e7389762a0c3b1cf00d0a5200dd3f489c821529f2ec04b4144ad86a0dc4df3a20b82be1e9f5398146cc9151ae53bc3fcee8ef3c50ef2ca1199f89715e8e87eb2ae3289ecb210171f047e697564f9b03bc2824efc2dc96c466ba7af50f2fc3ed2d28569c5f68edba391a02a0f856dd57ca77be81ddce546e35769abbe34be51759486cb0c135a20b9206e5566d38542c1fbb4c95e43198361d82682a4bba68b530c8e2715b86103d276cdde7d4d6fbcc0c3beb05e8bdf57f2483252d16959a2a4a1174d811f716acdd46aeeb63b615fe4481b0daf3b47cb977e5f93e2bddd44c7192b412816597f6ba7cc38fe383785258c51b31feb31ba276abf5f8a09601ee0ca7d516df05e5b2efefc1331ccbed39f073ea29169e240392edc6efe9dd93f51a06a8628a0caa7e8bc6baeee15a311fe2c453e75f49c5ea48c79ddfc6aa1a183cde663f0278a5e010b27a26526b92deb701f0e02dc49f5bc527d9c5ace4d14a1c1c10688b65e8b0ef610afc17c98dbf606a9080149b448dbb4c6e75a88859d55ca2e6ff82eb8edec961f1068884234ef69329debb3c7cb1bf5a2fb38d8e2cf97006d99cb5c2fc38a4abbab977a140d0ed43f24b9d709166a5436da568d36f5938acb7295e818375e4828561350fc961aa9b292c053964da86e834db4d57e831161ec6317bdc5bca7d5c81dcd4cfa799fb2ed8cf1389a1d454f2f45b02eaaf4f31d5daeaccbae1d9cb63dc7741df1209e6ef5ca514e759f866f490c4c6f05007515e1eb0088afb3cd93fbc27369bce4c3bb693c2beab593998250d8d0e843bc064e1c1775f5786e577faf41f6972f385e063159b932eea026f26f1d1933e68b001a9ea679c08266062793b6816b9a6e05a878f42d2b635d0b7f827c4303f8a630562e4f28771c358074d7603e300d4f49f645f05c2cc4430222907bd3c28bd343127b0ccdb3abadd1f259b4d632a394c0fd23262844ffbc9ffe2c8e341abb09f3d0bbbe1d1d902efdc77336b62d7d3b168259ba0a7462f0ea9420035084f126b67c6fc129a354789d34ca0b5822e01d9b89fb952177a55df8fddcd78b3c87cad4b0042be0d6172534a70d31039a712029a1a5bd379786c005560b5d6ec3c1aa12cc49d3127b9c74f4d4cd488eaac0f3447df943e1432149a9d8849cb17dcc1e86138b305bc97b495982ae9f08318d095ffc6b033e03c1584dac8177d27974ebe4777ca6bdeb2b088790748e10ff5024ce715f0e3b5e547957affbcb931b05b8e420b694342d50f2501741b3f907b86db756feccbc6844ac946d11021da55ee2b5eac1061288835040f6ac43c41f34d7fc38e2fe3c12143c8e35c1391f55e368d64aec505823f648bd61df87b9a5199aa6acedaf158408bdc3ebc375877e0b50436afa802bebb2888de2b4ca14515a8ba1e499844275e3657d4a135dac1524de71ef3076cf2dfd654d56b0e451182b51391476759bd8ded4f3f0e12039447162c523b1e74e324cbd2ba1b026e190e13b6f4bf06048007024b5a7beb12560dcf9c3fe705730c09946e77efdcff403f48eff55d0c851b3d71127fc64a982891e14b58c03862026c7dde5d7f3f18ea73cd94cc3a5e40db2eb9a0203f67e4623c4d6f26112f2a8ca4f3642cb9d8dab990c33cf4df8679e640162a433a8a4b62e2df33485e7ccac1701afb0642a6f09eac2d76e4c802fd586f83d854bd793f970997680b92aa30f0ebb6ff5c87abf572bb96dcd9085b55cd6b3f1e7316dcfe628b3f8a1800caf692c83f078d2da9b6e0cbc45edec897c4af0844de472bd93d59102ec467d3e5bc06aeaa41f08fe4acd66a9edd1e855b55d3fed4d22e68588f49bc5c3369ac71d0eb18f7b8e264ba8f0fb018277bbdbe240df55dcb1dcfa400e1cda9ea302df596ac8abdc4ace5055d2de3a6c308897963a351a82d21c79ae15771cafe4b4d1e18f9f995c10bf46eb5870c2700d7fdb638c35544d7717bb2473af63c265950b8966d6cf4a1f5e42433d075cae44f819de659ab0094270979a7d8735f9739c53b15d2d7e124b9b29c9c66775d000af4ea01baa229c9cb2cea6a6dbbb7c32e75a9d5bd488ab7b9c679d483d2913fbacc626b6550e420f12d69add6b95a0309b5528a2262c49294dd83fe6a1dff580029a7178db1442f76473873366fa92517d3998d2f9962ce24f3e2130237e5b355bd0bce1771a05842b1ee824407388073835d45081c7d64661ec15bec7f8a8382a2204777d7e40180acbf653c16d5b962f75b2204d2f1f63c8cccc30b3260bd20000c412c7da3a7ad588781e8de298a053a9981e6cb503eb5666e1f21eeb68df800614c075de6560fb0d20aef2d829a5c1c253c93adf474de02c767ff4923af94003c7e7db634ad783358ded324326b304f41024e93efd31c1ab7ac7745925e1bfae88bd27347a7e02b3365ad044d9d25e3d2c6517dac1916cc8701fe2581f6b42b12aa4fc67b14aef8b1f09cc8020a5127b562d370cb19c397159b8bda96eb56bed4a69e406e8cd48a74e1376bb5504fed0b7f1387f7a3f7f06e375edd6d5d868fbabd58e91a1c1f3138f17c537ed425bef03bd6457bfb5e53b64b6de4e3403ece345ba1ee3e0dd9f2dc6b98fcf4425eb103a630578feb4fb56186bd5ad5a7908eabe6cdfbbb306d661a1768b07323287eb37917609665a67a2a8242bf8e13804bf689d8dc1e6d9b4adff00d92a15c5742961deb8854d994dde4604f3fdca9837cbe2c57f8bfa0ff2c308ede9dba0c00a76888bc2c8bcd678f823e8d5df7727e8137ecb20608c8ecc255bba9c17106547ff067f7817c595cf99eb7c4a1b7bac0382b4ed8aa5fe8edbce4e89400e83a4aed8d0a2f69a4149533b2839794ba0f5d7d6ecc706f162e3aea56c5abc5c9b2612e1557737f2dc9196621b696ccd2105b822aadbd01661fdb779f9206dba9d719730f00b61d10db55645088f5b8ba3af00268741347e98dbcd0e6a834c994c95cdf8daa1a133d924bddeee3255edc8d67e7dbdfce22d6200f546d2b78c7487e64984330bb14a2905fce2bab3946e0a3aa4657230977872b14af9ae73664c3864b18905fc700773980d4c3ace615972608dfe6cc5884e96d78ecc214dec1515c1930290354f49c23acb8e571daae6b2c4739832c56e8334f8b2bf5831840e10218e8bcfd6b6021dfe695bd1da57e5a2f49f6d6eb184a1c948e986fb56ec470d7150044ec18fbfa61dadd23c0a3dcb77d68b98d21ddee7178badac0468779cdfe73c23b025d845e6c5773c69609ce00a8b260173203dbd9bda932a4d8a7962794444750d773e5de8bad4ec19c8af19a6be30dd054b7516034f87ecb35d2034e0b2aa9abe8f9b73d9df1453dd76178b55ad4e543e5e406176b38207a5c009740b3586111ece5ad1b5cf5cf8e478d504907a4fc316a33438a60f97d7161ce891ff462b2c7b9f485c89b07e724bfbf9fdf6abd506d5752d5604667e93044c7e2c2990c6b48a8e27cf81de0589fc032fdb669d554dbed3541befa43ccbc69e2ce88571e472acd59061014e2bb22351524d87ad6ded016a71c144a3278426f2a5e62e52f5405b0e9407e66176c8871afe0703188098d6c548cc81c8d79e4ad21e2a75a4ea1d18ec34577d645e5b345d845afcb3599a646e33037bb10a14074a931e2ea41db44d4589f3869389f2a01b40b7ead63c19147c1a6fd24141513d20b9f1fed6a64aa2780625f88b8d0b9e68a65b311526b73165ef5501e175f6513376afd562877d0107459606c60ad232058fa4e5b4bd2a00b5ed5e7babfa6148162b3a96b3b1c0c06bbec4048126fa61d5529129f4748912c58b4dec5dfedfcbaa4526d3f0bdcdd8a88ca1116d5a589e94eff40b85bc35a80ec1fb699d88b3e76c54c683c3c5e3130e036604cfd20bd664f91d974add8c924e0a7367f54606fdd2f4ac7b247b1ceacc1c385cf3e681b0e839bf11efef822973847a3d2f9c3851bf259fa6b246e06dde0f89e47c89fb497918c9aa691cc6ab8b7fe38d1a74a1931e782f998006a4437e1f1ba317859cbeaab6bbd0d29245121f0981deab90989deaac9eedd46855464e0cf16298df4aff13b80b17f6cd07e4b6f66578693d44fd404e157f04d626a3efec4a72802aeddd2895fbca713fd45a079397f30671e815978d62da35b3af56bc3b0ced2a2d94114683606bb5dc811d5f23df679e281443ddf56d81b4aa9286ab306180a3678e795dd039224d9da7768388d120d0aae883c620e294c6914788492506e3b8fb89958c10da24ed036c564c40870f4d69750e69a1774ab400e27be1a341bd80b4bc4f8fb45d9314f32e536ebdd0082a4281c276513c3c9442f65595942507e16dda27466c098b95b5283e599008ebabc0f7aef243ffda1705b8ed3aa87079a350a15b102ad0735d5ccc268fa0dc2feaa905f945bad598a4d6f928fa2fab0df19cbb924999f9962e854ce730b59060447585df7dd69502c3785f6a6224b0962442eaed301898096988b3063441bbe92b636d5611453830d0fa5b72dd56d1dbd123b81296dea88819874d5fc28ac42a8b469c8fca783b2ca607bb194afc161a47265e7721a4b9626f62713ea114e5f306d2a839ee632373e09504b48cac69b9e23473e63146598077b2c3133ea97d89d007f6917bd81fa9f30b7f1cdc264b15f6ac4e736cbc3a4d5dd892f3ae0af88cec737458cce82ba83301fac72893371db667c381b5e25ac20071855a31f1b69ad0250aa9c2f6912310a3ba6f356aadb4a300e3397d527a3980678683047af25ac828db517db9579c11767844912978608eb14f58d6d480d18751c57e191e87e33c154780d81c3991020a314fec6de0ff36d8e2df711857410c8cf96fc6cef00c8b09874733240616d5933fa813a0f88cbfc44447b13ac8b6be1fa21c501051c956c260dea1284b91a2b08ebb559d7042ed08bbb9e69cfab85b79aa858d8bfde53927c516ae07fb9de178c1a48f1c5ac17ba49c15dca1981e6ab4e2d9c065924ae8b1447fb399c307332284686f53afdbe076b4dd099cc660bd8bc82bd35c16188e4d256da37f4fe153615bff324e3e18c94b8f50590f26407c46166f66e84cabb928fb9155550501c2d9f7abf9d4e45b50cd055e77a835f8ac35caf935b1cdbcbb883763a7ab022db0043fd58a8ff09b21cdc3a3c07bd352a8d4a14f00cc608b32f322db0a163763765d1031a8f12314fcf79673f359b7eb1e3a05a13f1fd72ff87d4dd8bbb1c1fe001ec6c3b0734ad88d8ea7e74d3fda3b3aed2c9cefab1469cae71daa5da396585502f953760132946fff87d669583b56b4ef13e77832d8f2bbbd69c083f4b09201ff241abfea9d8ce5e04717080c314e9a59abeccb56e9cd42bed40b728150bcb0770577d180b609766592e6252a8a49d6f0e8115b46a0ad58ba704a28440276768aaf9679cfd650e95100b6266bcb907e1ddd52ff57898c0dbe63856b1873d1a2d45c36a930180497258772027f7b30426ccdbc485047d12c22fae437fb060de61969331539ef26c4eafde7c692cfdc8855c2253556a0f318e01e72a4daae49b06af865ae59f35ce3556cafc4ff2ae09dfa1182757bc5d5002dcd8564ac7b77e1f843183f115983a0200a6e18385325187e3096c6ca74dd6cae1488a0ee03eed64c20f3c551a7bdeb72f4d5a02fc0507cc4537fd5efaedfd5070917d54ca29ef3909d80224946122a681cb1bffd2d67a63fc50c9ab6314446c51a296bf324f26493d3ffe51fd602b6e01340c98e646c0b2601e7f942c32792902a458ce1b21fe3d2529ffe4c8324d77a43f4bbd7ae0b76ae7e790234fd992b1dd54985959aa5a1dbdeb660fae171affc76212c7d96bf225e3624b3fc1fc219b151832a61541266ca5f7b06fbd81b080f2682e252f2e45328a23dfe131fb2d3ab64b21093f37635736c6aac32cbc5508debe324550724ea2e3e3784f0105228bb101c6b645cb7a2a212822f83fa5bdec74580213748e7dd581c053daee216bf1fb2a1267ff107831396b73ef3f373017346e1b628a4dc27025ac9cbf9565a4f9904caeea75f4060979a3ad66cc5695fdfd4321317e0079ddbc675d1a980350888c4c9990fe7188638227c2b5251361499db8a06efe3d214267fe03b402874ddaa568210977337117ab2f2b39e519ff95400082c9c630afb5e77e5d23b41df8dcb695adb61fe11528f4a0827ae96d00f2d9228b5a079910d009cf23b1235f0a37d0adee2b8c95184c6b8331e0caead9e281b59d7829d91fda575db437cc76a6512cc5013b002dd11e7a45d9c3532699c0500d57212e8f4a7d870e6776aba59285aa6435d7ab5aa11bc5dd514beda61f6c14d1d820421462d235b1b547e61ca58c646b0f6c3594b806d60a970c450b65cc487eef79a3fc103af9b30ea33f4b6de891e135124153c32c2a4b74193504a94bed35b76d9c1d321a901180e0a517fc2216f2fd807fb0ae3e4b96b47196bb621a0ce7fd477994e70aef3a39f75e436bc1422516670c46bf3a9bdd744d3f4e0657dee12ccdd57b2f903f1bf5bc4a94ccac87ca318189f16a4dc78068abd9ce183ae844ee0fe15de657c5ef1435505596a56947a917fdf66232c740ec6030e2746f64133da52ba42876644b75c03f1bea5f43ccd6ca608bf82097561221ca4cb3d280a7eaa85734b1e1f8f78247237b407e5e22f13654cf4d02b5c9492787873cff2aec91f6a65dfbe4035eb7f4e37de5acc87b8fc17b636f0ca460d180ad2930892dd3baec5c8e96887047f2a3da0bb327c8fddb34cc5e282294b3969890577b25dbf97e781f23771e8a32d10e26770aa159aa72161ccdbd0b2943d803bd45432f62d76f69e02270bdc88770fc3ef9f5d07d1d4e62a341e70fe8412d8e8cf190157c32dde4bbffe574b152a001acb5adf77b30ac65fc13ae6c6dc414962b5d6102b0ad4d6d75fc8a62c7a6f300cc59d7212de2c30e75f3711209fb1da1af236fc18b0d7a0b1f8cacc2f4ae45a2b688d77cba890b62c3bd0f34a29254261a27cb51476e5cd1b89b488a077e9081d00b1b4a3bd9c8c776960035c622e7a6af0ce3b6bde355f0a5a49d3a20e022a07030ad402432949cd69809472b9349544f75b21ceaa38fcd9e56bef74ed74d7af7f52afe0de9059b1989566e2d29ad33ef613fa3e1c00d2a63c82835077bb02e59abfd27a23b7a2c42300f1ae25fe6df68461468541603def2c88dab43d8eeffbb3b9389e6d3bf48e17fbc1d529908f490d206db5fa3c800eb07924334fc6ab44975c4236620a3f5726c7604b4a52ea1bef2c9b1866abd4dc4586cb5c31dbbab5e9c3f79048cf6b97330b6111c0fcb1c9a58be86180c45894ba27ad737416d23ac1b757caf2458c255c1fb4dc7c9d7292e32ecb454b2ad9d761276fc650b939eb7170bbe4782a6cc2a16324b353879f9bf2a86a871f6f8732c27f62094b67e12e122c772aeaeb664614efe556de9f6921aa535b136accde66e6873c6a042dbac95b184cd7b08bba1cd39392e8d4f670e988d6e88c2974b5ca249277cbdbf3e9117ab205136adc2a898806b39244e8a8d4b13f337d6b01357b4f5c856f550cc591dfa4141059b6fb9b9358f2fddf86f3d478a095c1476394207f88fda49e5fda0b596b47704e650f3fa9072168faae2315b85a32bfec2d5f9d0a1d92a69086e25bc8f778b48a645f7e34c8e2d2955e968b6a2d3b3d6fe24218bada94258e7600dd3cbe00f069a96e5f8a0845c23ba684d1ecf700cb6808cb8bc96b2c12a86350f036250bbc54b016ab495785d655e30351c373469c2f9f992f7efc4988f25df5cb51f498829361c6de3cd0d48337e527a18d560990f0628c0869df8ecc2e221a6fa8484c6ecf6bc802ed40564441d4fdbb8d93b5ec3dcbb1fd6edf457490dd047661300a1f81b08ee42976b0b456408fe22dbc7b5d7d97050bc69d2f5df7c05b29a80ad57450596b4c557784e7ebd361caf26ebad38852530834d1db0150a379887f9f0809a6eb7a870051b1ea01e3002eef8a82f4d733fe7039a72952cfbcfd41dd7922e00439c5c7324fe545d73b801d9ddcbe9e15611979ff97bfc25a7e0fafa481776c0b3e5f11c716c2e1f0e2c0ff217de1b957a8db238eb5e063ff7988be13a03161b668a33ca84803bcf124595a6aaf9e958a97cd7ec52a2ea1f4ae6996a69f50b81b982ac99c2864aa642c3148817927311d477792d5d4cf92e6d58c29d5d6f910669eea744d6d15823fc63c1cd1afa6a9bca2e025c9dd788069d3207aedfb674e3e1746b327036576cc4e6f97b428a385ec13cb5e516e078854365797723ac84bbcea2f84496c55b2c302fa122a87d811940adf312f46606f233e0e51cbfb9514c3e71d86ad19914234dfbd1c75eca6530e1ef51406799242eec81ec67e832389eb77bc23099df6e466300e1b86bec42812057740895ea9a82a036b3a746a188193a1b39a830f412800caac348d5b73b0a755c939767939ecd88a36fbf26b2ce89e56fd9a681e46277a51337aae9819c462945aba65b6017ab501f592228540bd365bbc1e99d9639113c9327ca1bc3ecc9f0de7e7ea290e5c12816975d456228cdc2ac6c15438c6ece4f7a75c0092634ca1fc48999cf2eafd969b3f15be3504dfc1b4e88657ab559279d129aa638e37f4afeb9e6b4866b4b147a8cd9782f8f02b006c956ab759b5d9126f7253e6a1c949624220dff09ca9b19f3e0fcae52b475b80125497500ab2427f74ccebe817a6b9b8ac959e1b4fe56f582c582716c5ca0811b0cbb22b60a0d927703f05d54184f32eb33477547b0347ef8ec8e6dd8d1e632b0cc78a82a8e2ce357c7eb3c6d7f8e877c7f7e001cf09e98689a4ecf0e938a7e8a36e3a92b2e5a5dbecb531908804a7d9b74c055357edf23c1c4b5a6738d639db30fc7b69b99172b5ed19120c4e2f791f0f4fd976e8436b7b3a60fed5b4c6cff2d8f341ddf162b7e3845405e1b5babd07e418d1093da5764de01cc9ba943731910b090f96e0332b7f26564c39cda642cc0defcd03706dcf6ac8542c20a1d98ffb57875707961361d35562f7e8eeae7b95e565d21f240d04ed3a378f1a14cd648632a3e11ae7e2b07330d369a1901edce30a1c0db8336638f4b7c0c9ea79256566ca0a1d4aac70636b4f00781a992f68cd79c24cb3f5940671d8f702402e3957ed0f9f64162ab55e12cb1bba9f982d32e18c89608783f1db8c47980b0ec743fe0ff89ba0004cc602a4053f4e800ca2e037b1b133dfc83e4b7d25011c9e536bfb639668d61722e58d1ce8c15d26498909b7b146418ee895f81ac747934262e568d8a7ceb2354466b00efcc521ecf8fc9e5e4c7aa701ea3b5beae0ace999f9899de8c02a6c5eb3c39f2201ad01d020f74011be51916cf1120c7787a3194fd6eb5bb6203596bc6043dac34ce511a60a904ae11f6b0b6427e04b3086e06431814ebb3d70b8c90531a056a61b48d76f524e4fe11b0e2f08f8a14162694a2a17c89d00d8b3aa5784694575d8397e4290823b219d013739e14de99d86781f6a68e1656dceeb8df0ea711215e192b18c363f58231c0536bd1667ec02038cc754363d0f6881c233d55a08d46a63898f97c9c8ca3693b492dfb6698e147b39920aa3bebf02d43086124de2772f87511df8e181a7fbdc72fc7781d9d5fa7b7f9a5761ca4552e5b18edfca10113b0738b4a051cbf2dfa62c18e113bc2d12ad9de7adea87a02860547e7c944e336a23ffc9f1a1bf6034eefef909399e318e1fed2c616083ab063a2485161c9015b2e271e8ea0e1d4da03384410f48b76d69b9902776f7c5782348ff23cfe4db156e0269e4a2f529359b53dd0f94e4ffedc3ad0d01cc1340b34624b191f394c3848d945204df45d82484d3d06c2627af03286272f5869ce77191eb0e342c055bb726c8a024cd9e0aac05f551dfb9e46b3c71fb7872fa16c83c1a9f79ea5f82de83b6dac31bb6b005333d44338e4a1ca37e43cc48e55a38e9e9f7d7312b2b708676d737a52a437443d062ae63cdf1d96278db7ac894e1319b3059edd7bae01b4a1460d47b3c29cecc2328527b0d9416580fd6ac35def6826f3efd6699025e7de13093ca5ba8773c91b92df417fa972a6040f85289b9840e880eff27fada522643758fa484f095c7898d9c1ca5b6f2e8c8ba742b0ecb0837c2b680b7018d90d44a75d0b81f0c688e81310aebac5e5995a09aa390edd115c7568abf6e0fe361ca912655fb7788defb3df5766e641c751be14b6c719c8f6b297f1efd0c0c4b53cd2d621c2160c8d3ee108dda909f9477f8fd659be3df204944e76cd28fa35c7052c672cf0bdd9686922551fc138e1bf8f163b5a90d44490d523ea37c708fb8819b4dd0eecf680e9a8ee0419484bdd3d9e1aa75bf6d74b430225a176b872091c0d6c4c56e5e65608bcddb7a2e3f6c0508173287921749a24c07f7665130ec840ce7f9838139c8ae309d42eeb2980ab9686304db95c8266bd33895129b1ef54e099b7e303d50dc6368a4cc8a480b7408ca7753018fed06ce217ce109bb6ab8edf6b7eac179919f8d50bd05c08830aca83c3dcd284a3131fb4d70f4facce02be04dea76029ae4ff57c957386f497f0b7d57bdabbe04ec433dc601f60d70cf3e8e1733434494394b1969600a192f39ef7d16708407edf9cff87b299c3860cec5841b8d76a4e6cdfebab4380709a94c4c7359273180e92bc92c57a7be5a0a2764d39e2f27f28a5fecd8f6bc42dee474c0d1a2a6cfc9069a7c40bff3e42d49a791ed8dc73b8161a24f12a2e661fca053ed975e8edb3f5bcfea8836e1e8b013c11e49a46b344167b3548f9be186323d83375c3ab6a9c55feca5eb804a5942ac6163f7420b3be116570aa2b009f1466dd4649d55f18d402f5718e26d61e9d99a797b3594c90f1403ba7be7cd2ec823c9cf4b76ef7dc04aa71f1184e0812ae310c95334de238a42b1385b90055eb590b85994b2491617c952cfc06ddc3f8228d19a0d4132aedde42a7e744d39f61f3f12df3c7986a028012fcb0578ae67fbc7d788ec2630ab0473f3b37a0f6fe098504fb62923d831aa1f44f5d2aed35473198c8198626ed6acc050522a497541cb748de6910f1cda0e5904921c29f60c79e112a31134a3a43d95d0113ef7488a92c1e2f1aa15cf066b6bee1fed35ac82e322aeb7d47242b790960742c2a93e19b51c0f08439f780a88968687d5bbf6019ed15084d468ff2ac480940ab7e9cc7b0f30740b1ede52d9e7a954b8864d8668833215bd284c7a65ef5044eea2d182aaa7766f3c3d86ea2af1d3e1e374ad0c8ade73719d1238546db2248b360cec09b15c783e4e64e77f5bf3aaad1c8326522e98134b8394bd1c644cd581492d1b604b634c9212911e5acf4f25c06b48013fa8ecf313482cc83df86fa6fbded3b1449b23b1bff21d72b9ba1032966513a76c63814b8160fb36badf9390bb185c69bd965cd4140341e74aee8506ea05e137544f0cc28269f3b7f36a0ea10c332765ee4b77675749a896b1539e9c1d7d50dce20156ac9aadc2176ed46814d7780b74d5b6aff16cf817225ebd577496ed9924225537a1f2a4a6b04ea5559093c17d7773c21fda8186b3407374221d4fe7f34066e5f749919bc4e0db2d2ed1deb8fc3496f99878d3cc4a2ff64b258dcb4b7590c9a005dea6edf8e16eab4cf40cbc362386c2d971c1586bc448ee26dfa5ec2282a93c817d8b1eb78c38bd3f737242510b61edb70a1813109d6fbba6c941f9695330825d763d18c380dc3e47732dcb3feb03dc614e553e2a57b3f064ad8c75c226839fe551f4308a92d0195574a8f5125fab495459f6f8726942184dfef8ac61b4df3712a60c923cf8dbe5ce1254ec5a18c82d6ef151c63ae5dbfb6b96a0bb27e493adb78b12ca4eb682465db2129d311fdefcdaf7099e0700b538d43ed71a2fd60402aa33605970184318f7611260f905b3e36bc9fd8d8a6a11cf511f26ad99b21937871b6ef191f1101e65d04a20a887fa194f9ea64ba411cb604a98ae5f2cd153e373bec484d7f0edbb0834008a1e9036fccf0568b6b6f4a9d74f9619b820332d73f40b4e7e4164107abb60d0bce05aa36b794f4e2065ce3d98373776c33041a90b21e700f34c16edab6731c250f6271d4010395163bfab2175941ad67972f754027d861f497b32d427e97066bccdb9638737853287b6b202ec68da22a9d29b7f42a4d73b20188be8c18b46064ad59204935cdec1aac0b181b98a0538dd6546377bd06847e52d8f10e8f751da6d88a7b8418d84ffde2d7bf0e714c33ff896e5d67e6e9e0ffe2cf511ed7404b01dd62308f47420c22005c17cf3e2f61ce766ca6503f64fd00c5981bdde69301e4eccdc1240241cd73201fa20c2657bbdf16d2f352bdfd6d6525254050c1a2269b7623c14811377184f2f2030cc76f20e5f8d85e2bfd1f68d4c46356a55d7029c9677881970394139a7438940ca1f6cbffcb241ff5c2edd2ce90bdcaa7feaf6d983b34385b4599201e2c86e052e40d2725cf5eb08a97285f1d5836c26da4822cb1ecda748699c1f44b39d20807afddbee295b687481df2aa47e52ae682ce6f6ed7058da855ad2839fd4bbcf8c5154a4d33764a8950f2a1139121d6409601a73e4ef693c81f39f28d9fe0201e7b1639f08ae8d39e4eecb55c1b9ec376deded80aeb0bdd5d1654975a602035ccc6a1f6d04540b882a42d0f5823138886f05e5e604d24a72cfc1f36fd6220c05319474db6bc3f77edf5efbe117b0ec9bc61efdc2b6850da4c26a79b31a860e91839ebcec9709a00c801734faf98083700733d440fb2def4e58aba56f99a3167c65c5395ece9ca509fc96dd656d7206bbbcf01010395ca7ffa4e30725f64be7c5997853a7e62592143424d1a7bc1d35e45101d2f6c1b5bd90d0baeae5c52a97ecbe79891a58dcd0184c6f3c3e4b7ab1bc30965d3595053b05d788de3b4e7d52b341819f12f07dee899049da67df2eef7f9bc4f403481efe954c978cdafa22e27d25ba0704e70e4aff99fb588fbeab9fad9fd25b550e6a9c3559dd453f5a0278b5deb9186d87e5ddfc5ebc8ca4c3575d3f42fcc0b269abfa65b203d7465a5f729620b906a197ba5b21bc7eea50f93c07bad6f564f547b913d5723dce32e90588a93fdafc5c2da76078df7d289ecd3ae9660f61fc028028d7474d4f39bd52022fd88aaa9f64eb65602d1602469fea9a6db61ddede869b9cada817efabc9e0ed96c6ea0b9da877a31922549da8dd2012cbb393a3f4232bc4c8e212ad541f5b043abcf60e3490c5424ad81d21ac8eb66401fcf8fc4d5692d8b70f252aefa075d7236cc50d90bc248df1490669b501241cb25722866db21d7503ac3e7ecd27ea9adc4b0c8be6a052bb135848e34e9dde19474a173a8e0281c1e628d558477651333ba8dee2bd0702cbdd4035dd8d9761755db8e6bfe0c4381d2b0b11b83c3e2ed5597e16536a4b292dfb2158e1ebdbf700fc05f8f1a004bd9c51a332e89ba22bf87621a203573f8e9997cb36e57267a8caedb45de330c3d28725e8022c9df08d2e087b1a10ebd219b7b912ad759eef2446822e820e37809f77755388fb2a95984a578c8aa02b8333c12cb30b158a6504f8b3f8ee4ddb4134a0b894ff7713c6344ccf0f9a5c143b583e378e3dd7ea1a1b511d26e251f201b57670e30a55537f32d0b69470e798346f31a3ecd26748cff6f9af2d056f8b92fce9b7b265f02ea1a863ae4d3e57bbc70f8d77a8789c6503a2b5d7991a2ddc7500a132861348244e0e3d859d52ca1ef4f995d531593e35f735b4c8b74958c9d205e9b3dc93cb9f017222f4c5a405cbd5d7b5d5096ab447906c05589a09e248b63c55426c49d665906fbe830da7118d9e7262a3f97eeb67baed200afc35320c33db0af7809c3e6eee1308bb53126e89461e5e2247bd14a338c9bc6e6b36d025013e2621181621a983d61b4f3f62d3dc75f565ca8c840de01c8b77870807b380a60f38da649ba818b556866410bc089ac08e986a914326e13f6685793b11a71b62f4894d94191779f1c8496e8ac97bb5d36a4ad807ab48df26232fc8e454b84ad478bdbd4498b9dff14e241c35a1b7651ab2212e6a6b2d4121d4b2ce49bf68d2521c3141eca1747267006009bc6bd5ed57350936a941e8a80fb8f5125dc80264e6d7a306911e9f848010b66d94a6a0d87740ffa52de00cb56be9c7a96a647bd9b0e41f8a01f49befe32f20fc9c7dd4230c2601761c2560831616f144fce38da812e5570ac2734ec37736f70c1a162d8408b4773f7b47bc230b0f527ceec25ef405ec9e82700e10566c0699f7f7b8948a769ef71c695b76cfd048fb76e4e48dcb932a6c6046a46691059a245183fe606d812284e729d6f36dc2a70d699d79d9e700a7a42343edf9807035404f3397fa4cbf931b68ef71238560f65581de1651fd92079eb30f08f3605b6176086c99d35dd315290c0b43afda1969d286af0d117fc442b6e18f91cbfb270a187d8715e2a6092ecb7632fc95638b0e134ce5f9bcde6269723cc16a6de59e99b9be5df67714a5e05676e7c5d777ad748c76c43b3b1d760b25646aa6a53e66d8df4727312e69f407a1f2a1fc43e1c20f5836b7bb3132704077ba5761dcdab8758df696ff730730840e445f62eec0f81a22ebe1ab045e6426dc4d17af99bba408cd34783078c235c927d3ad731edb039a1f7a7cee351192ed1331d0b7128db4d7411694a1ec6d7f27e078ae147d57c536efcb100ddb0d26674e61e3101d2d89c0a563c535937a244d0bd73589f3e6e0b48b31c4fca8092138afcd9830aae28affe4354c6545d55123c8b06425118999f54712d7157b2a364684730412766491afabfa434fdc39d10a052f87a285608b53c8407c98bf7512bb975d15862642ea674d5f57cf7455a6f4827f300582f27647778c3e9c6f58f6138cc8200d8bbc70a0d24ba507b3b60e8cfb0ad7626734a4f870669262a31f62c5d922b5668c6a32d7fb6c1b939c50788c3b5ff09e982ad108b89a74ffc2ae24078505dc4525ae429a151876da918275e9ef693c0fc78cfff7fabe852946c03168096a69fd2357fdd42afdb9de82cdc78c9ef9dd621fb530d90126cbbd1f1ce57d35cf4c9a18c3826be719dea64a0015d848c8aacfdefdc896f589514396777135802abf6a88d4ecdce76f6a3b30526474f7bb66ff02530d833b904220a8db970402cf88c81933f08b20cfb5dc65b108e036f0e3f68530efc6029494a0720522121abeda1836948d4bb93b97b8688e1fe25c2fbc32502a1a25b349eba4d23444b66b7d1dcb9a063ed75ff9701bcff8504705d06ec4d90f3089b323f13b26fde3237d3a2a6d5a77bb2ef55e11abf3e604c646ddadd57a8fdb7c0e0367f3888cd58acdce6b4a466dfe6466121ebd68d8a9923c410137c2de18056343b5241cee00ec67d1315d962463eb538ce84965fc4343ceb8539d2fe940d58959b0be95c4734674d2dba42fd57d5f6b3c02443bae7b807d3daa3ae9eb6bc19a16ce03836a738038135b4ea2a88955941d68be218ed91e1ea20a6ecde1c79ca635d2aa9796535cb4ced95eebe31101abf59e5698d0264555ea23d2320ac2179ee2d29ca1bdf6e505e2d084423714151b7dfbede86dd4fea5837de201cc572fc428a5e5f4c731e6b2dd1d7121352bf70602dab13a36ae3c26c2e8c2c81309d9b004d235a9400488a340346797e1638fe92baca38846024eeb1e6edc92a1cf749420f2f99dbf66c17a61c8c76ca37ba8633d675aa6e2dfe67895e76c6fdb959727c1615b0a3061dc22a1d218de9d0181f96f7e4b3d3cd7353a395fb2e295aad0c08abf17cd9410566ac2f9eb197821116f8fddc88a679bb11a91addf8500be534dee2a57ce1363c5f7b7aecd2c6b9057c1c7c1535035513948d07f8b4f9725e1aeecc9e5d0ece0b538ec4b4d9a69e7c12c69bc66d948eeb1f84b0c9055e6d9f3dee9a63394cd7164e0fb4abdb346fdf4bc3d0307c31213fd1a2494295214b5ec25c12960d029535eb741f28f7514664081543c2aa1f866f94635ac2108bf08f7b18e6c2f4af083dbbd96212a0bc1354568583a8be416b124ba4334215634dcbd38664256b8f120c6f12e2cf2b7b2c350fc9c87521793d33dae86b5be7461e3127a79f719318063458323b6f2cf5c8b1d38153f4c31a6eabd088215e751a3adf2c6ac06dd19fec234327a631ba8f97bf5a88eefdcd09460fe819a7128d19c281dab8ecb9a979d672204b110838625e844e3f4a416d7bbde2c78d7c70b3e64b78179f5e29138a076c0caca02bdc722d3c28ccc229d31ea5551e381d983987211a7fed7be478ef1950f40440e5415821d41037fa7155adc2d7f401524fbb9a891f58773ec837ec8223a13ed6c5f8569deae5b22afcec48a2dcb816af6b810f8584229c144276c4dd50a7d1643fb07b25aaf0badfc7737e4df2a8836d83ed7829a6a5f1e8c69eceb635c70ecd220d5b4f1b6782dcce989bf924d04e896593d87f71fb33813f01026d72c0e01f0dc630f8ac790db55ca1743c12a9f87c26c897379dc1d09b196aa6220a0a5e70c18adc5729d0bea9e2f8d0f44ae5aec9371e092bee2884c4217c0817711f04ec133c3f022c7bb4e00a76ebf4d8d92ec422d43abf8fe7c84e10b833430aa66b9c7edd5b56937e4ea635b571a9e83f0a65cc71baa049d8dcdd990ea0c129ec48d7eb457e6989194e0adc35668d2a50476e3b167ebdd70729f3ea77aef63d3ba10d936d124c67517f0932cea61822978684e1b913d304071bd538205f21594660b14a506d2bae0c0581bba38700fbea2243f5ffd2fe0cdbb1f4f7679d6a697ac680b021f93c7c76a20b956ea7c1211712cad6010b924f3a28ed83e406ca3a3af991611e26aecba8f35e91609d0f0ebcb733f9b00ae8c3ce62abfeb228306437198bc67e0022eda706d8032f0d0f4b24170d44e4973b3187c2e0edba1b3b47a9262f7fe376c2295dde60d1c4995b9491d5dda714bd158f46ee03d1f781472f40aa3a40df5d2c73c40d2e42f3355063b7f1cdc9651ee59e9413c3e21923332fb669085362273585d8e0a8e6932545ee83753a03692562a8f2572e1847f6b42ae25e40a9710c66f5741411be364cf3269728a5ba662c5f64889695cea552d31ff3dd41fb91d9dd080d7e41f89c5f9d1bc33f1def1e2abd6721cbb4a2dfa990163efd7592957101666533df3b8de8775ba565629bc7aca6c8d4bf6c743a2fd570d8389002a705aec7961a9029513ac57ac5d75f1da2ced02acfa93671af59b92af8f8646138ca152122fa6deb4f2b56f992be44fba6a1f60dc0e64f1cfeecaa5d73aea97027e4486454d8354596cb461b75fb58391c6ac3034245e8fc7ce57336f812496b3b24aac3bd0dbb063ab9a078379f620b33c1941cb8e308deba7e065d604ec47e4a40e955bc4d1267dd2fdda43efef2fa0446d01c0825ad21e47fe839f22fccb929c2d340bd4286287593b0dc1fbbe86010ce0cabdd3f4e376bcb651f6cf8a04f8aa641853f26d5b6255d91a781e4e0a1f9700963aff81af2ae328a3dbaf637713fff0ed9636e185901aa12a08584a8b8e14ae0533a84618f1d399e042c57bfa16c3081d89d86b83aa113bdd6795e9c9f553aa80cc0ddea2389362d0fd61e588487bfbf094e882062be33e8deb3555569de4fce8ec18aa837d8e86504b80570d880f7cb55187bfb1b5f7737078e15793e2cac110f1850605b6e999a115f57f3ee214f5f8b3dc32b93bf2c9b0699a6ed9913e7e41a7d60b9fd7168763ac1eefc7983f410e7bec728d5f79c80f14d2bf7b53c9cd7f1308eedaca58c4c05e8319c4f41abc5774017745826b54f4f888dd821485986d19cf78f3908afc3285fed852aaaf18e81d32dd54c264051bc0c2d6c37ac7359c262d5c30bb15b4e06d22a9b918c24bd7cd2a2aa11395ecc24a2c19d7616e93efb2f11a9394e4c54354ec5b9a8f7808c463823969a97cf2e9585d4847e301c8c938ac4331818b8c01753f4e96fcdad4ecceca32535468bf8ec55161325ebf77286d403ade04b2ca14012e7258368b18dedd935fc3c4737cde8f96db0a9b254aa83a609e017a185a129e2dbb27814ea4dcaa2b2aba6a78efbc361de66f863e828a877933b7a905bf069e7cca0fa5a821d304118ccfae58be976d9330d484942d93065613e6d753d4114803867b24eb38b928babf5399af6aa20b4a150249654ab9ba999af1ef28f990abfc220a9ae6acc4545e5a5a56e237374229867867a73dbbdfade67d0a3bbba24897b05f902222005c18547a5a88c0ab07216f729124af2ca4df7625e98efe35be4cfa3f417ccc00d55450561a9576e501477d32d8a61e76e91a0a9b1b8ac5d2af374c7412920924cbeb2acc28a6fd6f6c32a2d44e7daf67843eff2ffce5dc82bbb6cd7f50d7dcab237ca739ee3b525ceed8ea8d5671a8998b14c9188882d822c1c41aea3100a9e7feac9bc6cf02794ff600f32fb3ad2513617ada11c6aee94357e27b8dae95a0b30d3176776d0f31463bbfbb9433311bb21c7f518603eb68467bf89fdd78a44f81095be884a5b819e986f7cea5ed46e22ebf1bed251939b7f71d5bc81fe0470b8a2bd2afa3b6d16100020de9fceab2c6e33613ae7f631bd1d155981c2078c145d04c2a02a6b48bae71773fbb4b3e69a3c761f7b1959fc74d50601d9ccb274d43303e4b40c9d12fe786f5d9120e47d0471357c4b6173924d43483249e72abc9bfab9a1e2641694f0aaaccfe363c1600182b150e0b040dafb3035e86c0eb37640b0e0882471a3b06b496700dbaaa91453f99f294c97a0868823419635e76ba4cadefb3458243c05f89356426fc05ed00e556b642f3ea467512938baa0ae93d31018355581f1a1443fd78ac64f431cd48c930c2234f13247d9e5511497f4411a8e9e6ef2692a035b757bdf5d3c5f0229a18840ba812fe6d77221664766943356907a71e2e232a4f80a6496f2f7d8ae29fcecf5392a48eb42cd9005a200357d0051702f3b74c4a6b78c1ab3117128d1934c57adda5daab9ec79446d301d49cb18202508b1e0bdd64cbd4e9679b764153eda84194938c22ac9fea80398f76a64f7ca2280ae28e5df0cb36a00b2b2318ac6a988350db371d571de0138f596ff9de5b75ac22b33aaa916a9a8d4a06a7c5878edc93734d8698dae6843603a21819361af66853daf891ccbd31044fe45cf046c1189bf32d06820d6f18628f1ac2cce5cee8668dfc41458fd3eaaa9a4df570bf5cfc2f5c31442f848653f2d0caa6d64690fcb6d3084eade9c3c1be04492b0fa01259dd43a86246fe6b7f9696ab27f5ad6ec0af05ba55366ee57eaf6a916b03478e8a28a5be1d455d221a94720239d1999f7c0c304b714ff96a4c5776115b6dcf5870f097edcc83b9ba46f3a0f517831c8db7d55c48ddda59706a9ac06c3b57a1d58fab2d36213783ad18720bbcf9d7547da9678dcdb52c032c7ca2c2f2471d5849617988cee095f93a49a72ccf83c5c995daddfed7b3d8c06cd32174733ef09d847a99b25213ffb77b1145507fc629d95abd605c399488b00e36b214e4e2186b6b1fefb845585f162c8bd6f1abcb37283a2111bbbd1d3f1465d268a91ea6ed5fb20109ac6a277c3cf63b3549b21e4037bd595524b3bf6d478553966631dae1933ccbbee78d8afd6702fa7734904ebecfaa84a35cfe31061eee6ffe8a1c678bb61e01a342cab045019791915532c6172856e5b22fee806dd7e713977f008128280e91010bb946f2e031f930ac15d135a3b306370edfa9947d96dd161b405b4e0bc1d906803bf715bd0d54f24f7bc5b8573128a92b1bdb02bdbdd11af30269dc91e33dee798bf4828eb884a00d2666fdecedd9d9aaf0eb394df97843a0cef7e39a1b9fdf239da172f0ef2230e4e4b7a331cca04513c55f7d956e7e089efd8ac7d2aa69ec05dd9a4dd999ed33f2e9a1580d90cbdce131975224f72858a24b040cf877b77288c75ed47ee3de327e7835eda611b018532d407991d1c81ae02c63f0b8adaafd214187beeb2cd5f26ffda3731ac6caba436d1f74f898f1a3f6ddc81cd2eb3fecc697dafbff358c30178fb578ec51ec6ca24de849a65d71c1bb56ecbc198f9b3ba5dbf4ef3a3936070bc744fc39a18e361c0acc0c8f0aa87c922d3b32f40d668890d012afc9126832a64668bedb0929041021f6a917c985d9d3c08cf9ebec092ca958df1786304d963a16a0b11455d39f175a3b579b3f745cc708d0b3cf784843d032162e9918f4468fd435d4e16890d4153e2185a30a93134a0b7d368a11e392e7e37da1428a7dc1d88693210244b66a745e172329ba23daa9d466e1f52cabc7c79df63b77e98615fbb2dd38328ae797ce08d2f9ca8eb8397a9fa0203f013bb2a62ddd5ab01648142f84d19c6c8683a2933e1f64048dd5d097070d9771445b2acceb0c2fb2df4a468c3cce64f79f6cf83e86ff217626dc6c21394809c83fd56e5bc287b4881c6421add8d49960452550047de6372e0da1118ef1b721fc7094b19afade77a4c57c50185b8d2ce67319440e734c94776fc57fb6c1630bb3f3dcbf44679c8bd936f0812e3230ae1c4663b8e3cef6cd1df1cf002e1aab9be20345dabca01b811ea088c5dd24c96ffff78a0fe79573d225c83895cd70f4d5a53f2ada2cd5bf3130436ee4c2d02ad2cdb3aba00e533fd4beadf0db099304866a0b461af0034913c32c16d11f8a6d8a64d1eb96051d5e0bca752036ad594bb0f51962bdeae82976488eae3605274fe8838de64510c0275f0a712d99f04646677cd924ad7707557f85a7a3b4e33b7722da36e79e8e437cf82317954c2055b9d8b950ccee451b919fa8623814f007ede67c898310e2c2e514408543b6f1a9b2a0948db4b86343f5dc6dd3f38661f75a6011dafadf32d7a8de3dda726a5aaab2fee2582dd42f08afba68c9e565a3c78850e72f38de83bc670f2083664d1b14e22c102f6439580b637fc50995219ba52b85d2af725b7c60c6916367bef9a70ee1e36c748364bd526c3e9e513eb4930740d751fb5128d01d6eaea386f08dc90224e1ae992a939f207e8ef79b83338ba94278df131079d6e4a6277ff7a592a93a1345d776288f2e3774381663835347dd7ba73d8e3efd288ce74a3de4aa250bbfee3c1293b0763de128f7b94a1b4604313f2b291e8b11b3cf3616f7916ce6c1830ada755071907f1e64c1a0e9ea93a1f9d233896e1f61550c1683dadf113b5aa12e41df0ff03692c3f2d8cef254b10ec9f4e3fefd9277b75333832d136932075aef524f8ea638b8d2233873740844ea74927426bec85f24c08868caeb67a3ab7c47a8c5bcfdab42508acca030000375578dba81df686a43f1eb02df1328d9b21626c1176a9b0e202aca0f5e5c6ea20ef4067dd3baa56d2412331beb1a2b54411775a6baaff6defa02e74010e1f2255afcc5552f1f0f4b36fb758ad3a402c460232af0122405640572ec428a8108a4628b8b45b22cc69ff151b0126ba06c49851a33f2d7e773363a7688be27fc75744562b954e559191963ddd98402ad2e694b8005cf9dd4556b3b692886b2cee8c5efd7f63e1f35e065b6e377bd647706940ab5ac831a7a2eb20ac1d73307cbead0b58b3e5ddb7a415b08405f8911c8cc17a475da221ca77fd09f0ce4edf266a074b0930aba3c9cec668d2dabfdc3959367259213509da9253d7cb25246e2193cb174b4ead4de51197e54789648e08ff25664db7b439e65b42ae91bb2bef0abeb03f7576f335b17e32532a3c79e0d829f50fc8b284ce7d1d13c23aca43e6181bd5100c0f00285bbd4f3d180c9348159d44e99752c3da6e0f882e760e056012cbd1198418d71f4cc6290c3a5dccfbaa94ae697a8c3e4d7f0d2784a2c4e331d8c9526896d06840104cda355ec6b3905dac80dae892b7d9b84a62726337f2ba00f93f6299fe17f31cc1ad31a1bddb131a0ac190d075b5063544c0c090e004855030452fd84291bb6f06addae927e9767d19dc189478f4d52913a1da959ed4d3d5b09357d0d7a08f0a36b4c1e5be10bdf714a5dbc9a41f0ddf9f8a4f68ebd429f736265050434864818ffb6209e087f2fb9db34f9080f47b1dfe256ef647e6bd14365354859f288228abcae86eb831637b622bd293677e6100449f5dba12092f7bac394007dfbab160bae181a1b40a93d83f3817dbd43a4a90015182d059bedd56b4e45dc459a3e564ad1e2650a7db215a9da9fc10cbddd46d9fb4668352e34d24a16325361600ea82c17c8ee5e8a152f11ae0480936caa991c39e76becf594cf546802d3a17250618493feba86cf92f85fbf89b703dcd9270664feb83378b772fe4a067e96eb9d942d71d9e486785569da1863c2033d50e100e10469d338c54fc8ec169ad8e7372c4c8041f4cb2d82bc2fd0c4d9bf62dbd910c6f4aebf21aef9579d467bba13afa9035d2125fd9adefc7b3d73cc0a952c7a8e876a4f296d2ae823c1e2d320267631f4cf1423b25b95cd4e4164ed639d0ad92cb672350780f0420b5fa1807bf7f041b4cb4a42e17701907f8a4d0a5eb82d26547d5bbc13f5c957166533f86228cb8375068cc0c7740aefb16c1277ed945c4781cc94040fd81a2a2e9590fcc464b4d4642bfa462968aa0e63fe3193c78a8abd0f21b04737abcd1b290d11333ba4fdf04d057e475b1b06bd6daa083f74d40bd34f15772c9b69257e032c0439694ebd22f01d813c74cbb272d17e37dd20631b3718961f52a9e9be44932463d1ee8baeebd98656a2da112dd0ad849f3b690746c96d41d425c1d09dd4331354e1c1e89d1670335580f08792726c151c741cd7bd5cf1cc097c1f49778532e414aee45afcf65a16243d0113539a85150f2005b5555fa8bffbb945968c699363a60fe9cce04c52dc3f6fecfd9985b6c007fff03d1c59524e4ee71bcc0d81977c53e936a066af694fa7e1bc9279ff5e7950b94111c01e7f63b04029fe15fcc4e3712f99410db5d139e0df19f3866863a78125201ff702919e593a4c1adb4e57fa75c5005df797fd7dd45d6797295b13aef4e856a7fc6952c8ac9cd0e139fcfa4ec5fcafa9b1963018d2bbbf721e005aad72bebd47eaa57ddc1bf7abcd62058265014677de6822014e2341e103b14ff0eb7ce82063a44d6d44194443d9de247d11e103e73af846e3a56d1951b4749aa95aae3ae4c4ea44cfef4fb6968d8853ea43120c897132a1384ca6452e7708735141dc8b31cc5ce61205e8bbb8ed2731624115b4bce04d6b96916d530970cd1ad75dc0d4fdbc3a30054903760699b80e497cd5a334d1e9bc516dacfabb15c4a303808b09d0362119bd6b92fe8901828e2ffdd72b062705a3c4e3407f4c07554158b8a42c228524e54c66cb6c406f70262d51b1af67a785604ebe69299c297c56b5e0e975b3164cf277d87f630a6cc5bf0beb52b169f7cd5d372cc2d28cf11937ab1f3abdb36cd69f85d660e10f57da6f38a7409681b292ff226f6183ac475e262c461a1bb2954882b8f2b5db2b3b9b9b74e006da24d3bcfb65e39083a9ad0c0688788bfa850c26b56fbb35d97d30fb1310e1a14e6d579434a1b814ec14f89e7323698a5361551e5d32132b7f47ca3c397f42e6b7166eac5887e0d3ab43687dea83e3a4d140e32e5c29bdcef267a79b45a5c0b50b36f3aa1546d8910a95ba0fa1cbb4aa65f865ca2c880106d5b57b581e6aacb401e52b3881344601410d19ee0172f003bfe5e8962c953fdec5a38ea11e874f72e58d416f7260fc7e087b78e55460ac13b383428570898e7569f7cd4bdc1d24618917118e27d20e1e0d5fad890d5cdd5c8a7dd0cf320d2709a889c73ec7cb8ef11e90ef5f775d6cac4a03ededf8c78150c7143e68900db3dc065b0c67421a7924fab587a268afabfb75470e17efcc58426a8e4c98c867d23e3cdcc5d6e0475e132f91af81ec3666312c01d7ed7821ad6e9dd318e99af11789ae092815d97aff04ced17aab01c2e3be98ce6fd9c20bf0f9bccde316cabe9ed2a49d41591c5e1ed5446c885b10c681482053849a407cb2e19f4df8e67215199fc13ae8eaf6b7bcd36ca051e847bfc7703b3546b4deaa0bb35966f87b80f1d1b89659f82e7b000826f55955e35f5d13133d56f8a095829bb76ae567335e374cf20e217f7aa6c97156c4ff24a7519d0c58f36be9a70d55b45eeb212e871c3183842ea9554f0a9fd445f8adbb7155d88b86ddb79cc984f5b53c99e5680d49dd4075b82ee5c45ba800700048085ac75fef93330da0b1ea066fbd70314f3afe57442b8693cd5d65dbef61f2469ccdd9b1ffd18f00a362289ac94e373fca814d8faf7732fde05ca6ed463306ca11efeba518daeb56bdea6526f0f89785dd368738c064f79fd6f69aaa4b90c1cd8cf36fd2c5ab6d9b27fad72e2e55462b8fa5c279572d641763a7d4ded3744436425fc96d37e072a69c4adf4df2bcf503b99a360132e0feb4e469e00fc5b495531e8fff649e69d64046c74256ee4d41c4225c203cf6759750b8262fdc39d1a37801f1a45cd678355c86281fb18a694846a847ece9ea002f3bad848086a83329e28dac5cfe7e5e1338af304f00f9445531c76e3953850a4931f5ffb2ca74725d6be9a0c73c5617cf99310a72c591da1d6bb73cc8f5a269c40778fd41041963fd34ddbb8e58448f7d81dff772f7070aeb9fb9ea7b8ba47f1ca5044e0e6a6d314c51e34db62edeba8855875ff94b365de41ffa3ab42f44f00ebba8c05eb98821e0093625a3df1ed666cbb88cf59b896b93a27d9ebcb6c4c912a8d3e9b1d81ff4286dbc41bec4cc2ea1a5b349da02b1dcf2ef5c5cb52288f4824f6a20496ca7f5533b0a766eef1c0ca2e2d1f078e0ba5f373269d81a106816cdcf92a566ad20a441f86b0fba80ea5c81e9aea9761bb743baa86c5446aafc5faaf2e6cb09566ed6c7c92f332cb442807821eeb7fdf14ada98aee8b2ff2d4903231911570f61b4f5a44818cf6eadb208c9674ce5d7eca28c6b1f3ad04f46845526711631fc1302e522c8a90e13dfe5b3b21f7e748afe3a55e5ffbfbe9801b74b6b1b5c2b5d8254040b52da8c0bd9c378b9cf182947ab2c48ae14b6996865dfb5f0de22277956b230baeecbc032c09f0f4b116f64db3288f662fd383cc126983fab0e30e699049df0c81844eb5960f4a8fd4122f75eb9c107dd72ae0ec9747c3994e711f85f1e9216178ce4dff4d4553b5b0a32c160aa098d66e8b10f654590f053dc7132c436e430641d229fc5e0ce8359123de98a098ba7036464aa52b2ff683dd1209f67dc8351a8d8a8b7d34b4b5d2f4e869b3e6ee2a30323252c863ff4b4a59fb948a76b046057a615f2c675972a1a410df8ef9f49f2a13d5ab0c9b46a84a3417a17b2582b91ac183f1ab11fa01c11ad1c2d7272ba1f693e7ac3c3b6a1cba39c42652af79f553d937604112611650fb0715f378548e4fa318de3ecd908fe397d630da3f55d103bce76e43e01fd98448391ffe0846480a31df97ca40ed0af64c5765faca8fe74df248702364607ce008da2022bf31a2f58e4aed20d0405f9455689149d465356a1d5da8d95896be2b7e7f132711dfd9e7f8dfca06f7a24bf695ee264bc69d583ee4f03938ff492838ba9f47ea311c837c62ffbc264bc62caab6c82f7c7f23cd23ee72b290bf725331e32e1851485bd1a00bb9118407bfe03b35b5816f27b55a47e8cee40c1fda628248d1b0e49ee74da6b79edcfe7741dc85731cb99c4bc3702d9c1babdfcd220a10a2a4b5a9859a12be2b2a0f59c7a7cfe7e706b6e6d4b0d81dc2aff3699ab41ccce8132f3ff3c18fe39aa304067909afaf2c7442b03bc1bb5ef6d79e847bd7d25900548629b125891bc05b6f2e0ec89160c4937920873a470ab6ad4c57059e5ced5e431fedb06394db87a042886747aa1bdb508c3ecb8d294c73091b01ad0c786c4e83c196fe938b000b0322292a4ecc336a4ab42838b6963bc9ff87e58befcb16c88783bf54be64072139f0547d704edded3686543a9fac1cea543011331c5fd26f1922159b4a0cf3e9d70c32435b1e5d684cbbecb098282af752b4cc0237bae9e43b44c73a867507362a83712bed21db52b539179f030b5aeb831fd94b72f9193cdbecdb9b8f8c1e0d219c4cc4e24d3f4fb69c769a57280c8ce5671be9c1e421d2a08bae786371cdab823d9b11150e8edeeb767e8564d24683a6cc4c8ab3f3fb489dcc8d734755f915a78e7707a09f4ac746716c67d7872a6053ce09dac12b3d47090055a339a0af6d021fd74e9c49a7f9481528542e831e4de0f6a9765cb8b262fd8180673f6ec7acf306bdbaa16542a7254647fc1466310b0a14f5269d076b7c00e1e8434ee7d9c542121a12a8a5990ed28759f724683f508b896f1b8a9cd637cd831b460ff806f3405fc8f5fc3b6f63aed684c63e3d4da21f8982f20e902f95298fba80e671129784bf86c321e0b76f7def31824b2e1933c5053f793687cfa0bea7759e03f3b7d5d1e39bb74426c068ab1bd2a3c7fd68c5db2be1709a01cb9e01b69713138c4e7d7918b1f5a050fef4fcaaba3755ed0cacd2684dcb38a20784c5f905e44c443e97e5c5781492b59cbe806b9200885619a63f5cd834d0e53a89b6abf2a24a1c3e04fc4ca9bdb462db49f2f306b2ed0d5b1eebd9327870f5355d2202282aa882b051c8966f90cb8c91223f96568608bb5cf403c4805225354c99d2f17ce498785ce67fc5d9beedc1f9e0f2a110d6901b3a8c604b7fde39c06708d0ad9ed608c3897bc291f59a5cdff32f12908419e96228e74eeea7213d3f8e70d4dac88395545697a9d8a118135e60a9b9ef9fc3caaa4ebbf83106f0bb1aedf6afe1de1ee9d59b27543b23de76b8e51501015d62d1da2f1b938949720a4ed5aad69c5d4827997ea94c5255346cf6888ac32436f5e312509ec9c9455ede0c57d33fb5d6a0a73010a0f696399beee07976bd039d52a2951e0dc97d8b3d4294a1d61ffd17dee46db7ca42243f16caab3c78853b926af0a20f020bf7937499b1ace0ba2abe3e5b90804e28fdd77f4f2ae75b32c5932e1b43230e588d150eddf6544ebd668dfe9ea16bb738c2e88dba170ecbc88e446359c449136f6ca31ad9dcc5d7f0f40120077b88cbb59e5e9fbf8d13f87976f50d59602100f88fec74e45e8f0c42a00d197f953530e653ba1a95009eb4a37ad73f97617028095db5467f893127e625f0dc245a0fc6a2d6213da7e416eaf9eaa36b973364332a2b1ab600bea439b1e6f9d786244e12e9c9898923a81564b83f06214d110517912bceb496e8945d9c426a175deb99092f7e9548cb85ab4d61aefc8f66da0c3601234173c1f82cd1666a8790c143ff8f30c7f11675a6e06861b8fca25c38245290fcd3508aba0139171031cdd629d0ca763d4bde35ad0100baee663940ec11fceda41c053ed1c79be34470f2741d5ae2ea52ab88cbbfecbb17c444c294be13cbc99baf6a2be6900dd46f3e13b4b485f05e8aecb904f2fbeb7b129b0cf36c39603d2b3612f65cf789be9094795b0e529c22a4a01b6bf1a170aa15b351bfc4255ba807f88193cacb85f27b8bd8acbe1aadf2ad56c3760b06fc727cb3bc89860b5de79e07373aae9550b93422a3fdfced09e0e2e20a5e473bb796ecf6d11827709d6765a810df04535e407e8be37ea1b6de6693101d220fd1b38c1c409db19918aa77a4be63e483ab5efadd90f75bae75b93406fca957fa2900ed42b7ac951520b3be3150b294cea0f3b5d7f4b40089966408a1b4ac6bd9f27977f4c9df05d6465fec02edf2fb6d5c7941eee2d57bfa1845b02154bdb3ba122d076a343de41a0c3371be26cc97c0735a371ad0eb942daf8fd12ba9ee9e9c0c569e56092e08812fee086709c5002ff5f97e40e0180bd2afb1ad823f05bf008e4f52f89d42de5b317777b3460585b1f02ef39896aa6ef83dd0a32e4af65997cca54d13f15b265b1e2e39e3190528b9126cef66b177eee0c1166aa012d9190bb1ee1cf63266f6206dfdf62db2c42030bb81ec1cfa8456a5bf7eaafa6c06b61d3fcfa1dd92518b3f19ced4b1a43377dceb0381a032ff944c01804081826374b464cb28edf6ff7f8d4d95d8673e97ee38e0431b8dc1d6614ebbff3be38d4c06e195f5adfdfe5bc50f24eda01c3239ebbb7b2e0e7e3c9cd893be3599369a5f85db00ec5aff475d0b0535b12424b659cfe6d2f037a0a9a2e095d77cf989325d41d26b7ab15b2a51042f6a4b98dfc33cce66c8c64474d3990fbc74a1b119643c6fd024ab628ea628721a44f45476acf16a484d0ad5d0a240762590d4e0d62e38223c3206ba0ddc53c946215c018e6a8f48592ca9d724d07cac1c25308b10bf2e6d7d600dc573090713c117abf56419bbf83f1475e6fd744fcf83dc51663a1c51b77ae08abd9f9c3e9c6d220f06c8ff4caa4cebb1d283e55d97f3e683be504bc7db705e103b1b6a7d84dc18e474db1634caf1f429d1ced3414e139d759927778377f7393fe5bc8b23c26d690e5dc471e9c35d410c87767726ddad466072f3317e388c83937feb61b66ad61af0d2094b9c7e750bbbd28bc8c814c6d8c660f404ac07bf360e1ecf1de704164a2096c2f8f52f983f3544448fa19c256174d8516f79b04d09386b72acaea5df671008522f9348bd0fd1cd6bfee9c9d7c9c9bea0c7b02a779aae1644014d2c2e6261f3198fadfd79643721c72c831fcb3fdbec08c0b59a5164263a1a46bbff1a08ad476c78ee857dc31d181937b94e61a227d50098d3ac14afc09b58c6ce61ca2bf1bb755eda864b5b9822ae0248c57ead8db28ac6d804074791e411043b96824dc9878a9eaa509454e1fbde4c1deafd7311d89120500764a7c31dcb55880dff1b9ddb707bd6c74b75a066e88db3914291f8501526e9254584ffd937a62b14ed366442d172856d924a34c21f3561a62d39bac1ae3108e8b5b0a82146e0ab84860857d31271b50ca17c7e16cf0d8c4fa48006b157af718e75de15806c98cbea6d5105f9091a22ef22c5d97b07f5cf7c54065c6efeef02cb96178a4b06d91d7da65c3ab2343f1c1ac73d34b198e3b22de6d0dcc6727aafa4b54e2185b368580dc560359c4a5bdda580bd34410854dffbe6d09b529b7cace6a53766f9dfda85dd7a70942aea3f1e302f52814dd0f6dd3c683858fac250d9ac686bcf539f668788fa58695858ebcf92117a398e58ff10f224039c75ac7edf4997a34d6e416eea353c4e4788b2a7202882c6e5b79c874c59660a907c877e99c8829aa0e7d535b9793b61932bc712085b239040d8c66f57d0e33184ca88748341a1928cef62e70a875a3ab1c9c67ad5e2f306ab1c3c804773639225d7efa057f1880fe05dc0dcde1a882938d274465d7e0708e3206be285a6d998a7fe1c48da51fd70df5ff708da55a13f4aa4d4565e647d6fbd3eac0b4684d5c98efafdb0146e95808e40238a1a01bd67668b6f3400b3e10ffef5db661f1569b77ace4521f052db8a6da66d83042dca441113ad49a2fa95ab3e09cae7b14092bdfe216d321d8804049fca719d589a0e65cc87ef7293f6c5969082cbaa131be05ff76566a4fd3fe31c8183570bfb883d6b562f762bcbcdfd0d832bcef0527fabf43d192a6e46b7061dd5f840800678d829e7ce8edae8d7e6043f2960b15dc17b1e6d707a45be9d7d3aa4466f3a9962d86ef7b162dbbe37b05506f451280c42caf5b7f4a7e4c8cd0a650c17ffb004a30b1c545301eb6607edff409c788e3b8a805e0d57bc30ffc137c7ae7c53c397fe652d04a05da53b5656963f0a7b4d41b3fe3a7df339f8391fd1cfe36feba9faa7ca2fdc51a299555398ed916b449e1db06c009ccb4d10b77ffdf94dbddfe57ecd6a27cd7f8a0e780a9bde4edfd374fb0c1a56d9dd8bb136fdc8306c6605194df0175b34202e4e152f5367f406bcbbb78a1b6b693914b96febcda60c7778deb877a44080853b40e356a44c5c6328bb9d06bf64a8799bb603989d3b280016ce9b06783de465c54b499f68dccfa73e5bf4cb2e2a95af265c91b8e879357a068b730f712056fa57b1e126f2747fe96126a07a8f93b5436cdf3dac709a1395c8959b1f30716e44251ebca8a2537b517bf82317b69165be432d09927db2db4e6e6e28ee444dfcf18c6389e412cc4413be77abea703487895a548bd75890eb124c5b9c00e70cbe3fe5095f1955dc6c8efccc7bdfc24b431c70b7d98f1668916d3acb9b1ca549fdd49f36fa3dba9df05a8fade2ac608e7a75f5fc03aeba3cef0f395fcce9315f358bb2b150d1ae0b231e2f3a96d26fcbb79fe444c75a62d9fd83097a8dd6bb4f859198854fa28f7ed48bae928ef9f36b36a114ab8c216dc64fdae8a253fd5606abb8d10b33d75a4da5516e0e6040abfa23de9de557852ba5b226cfde2f5e1e456ac185d1300a6390a7a3d97f99a79928aa5d4517cb41458752bf08cb3be7ce65c2daa32f842bedda4e6a28def0d0a1165c782ad7d26ef551116c604355d71a618c167abb9365699fffd17f7ac9dfd22eab6b9a14560aaaceebdb549ab98e500cf22529c8b5ea6f99e439b1abdb343e4dd295fc7a9a326828e694ff5f82deaa562fff92482687512b9ad80c0d1663af32f4a728eb50901e271d96ca9f20334f43c735ed4f56c1088d89b064dd621d6c3cd8661deaf8f69cf49761b17f3f5c596bd2b93fc4d5bab28862359a5968918a996f7421c87ee515c7dc03584242b17b0a5740a2a8369ea0554f4b4ac6028077ed8b39e01fb25228ba51938ee3650af708ac6024e288716f88ededda1907477de1e76804542a365146f1386893fe903c388ab0686d24a8d67932867aaa5cc701414875669c4e45513a2d1e08c81ad6fb3c20eabe547a414ab641fe559b740f22950262b70f684aba8622bdc19c2a7cfa2d0dcfcfe15a53faefb9c1e141634b471c739a3f962729a1cbc41f0b05c21c2e59c54904928fa9628ddbf5b03d9387da4974e31590eea11b9e01d7012e151c453035ecea9fdb778d38d91c7715b03ff828fe7edb580df677f616e0ce6bb60be43d2ab14c63af005f258061c62408f93348d815d08fb582178f60347f114a8b5a2b12269be6c5f2378df4737c891234aaec103f47ce6e18a5d1eb128a6c739518126d11064d3c96bc5243dc5a75285f9f3523216fe885b1179728643e554fe9ec1897d37f77e925327a5ea91ef014e6b263b5a621a43c8f1c37a6d4ea981ccdcf0a51494553e5cfc23afdc15382aa86a28e3f13ce529d038000c95d7be3c4bc7a2ab145bc3fab4a0048a5f04abfdf6adc740f1e17a185b58641e290ab742e710e6532c23cc53b1178731df39103c5359e86720007e89f8229574ff65ea6bac0682c6db78323cb8e2f39c85621500c13d15f5bf292d478b06f50cc1cdf2c4e38ee5ff5e89e13325fd041759d4ef22d494415a97c6fb9801e21d51e9f833894fcaa0dd557b2ec6fdb66309221287dd89a915486b6e5f6265c5d808e6bf85dd239c41795bc93740f39a2d280e1a3183e2e2312c156a2770d6210f083b88a3583ce1a36988a633a4fd879b5b05ef79357e3f2508a85a7e1cd51d138f1678956cdc33562387b0a72622f689bedc3755bd76436c1b2fa8bb3d30f688c28d7b1cccfe74449804e0a3cff1ad1e380b4166aae95a49fbdfff4e6770462b211b194f33bd05736e47ca63fbfaa0b2e95cf38aa3c18c6c4618e640ccebf3c6ce98604b0f586176c7de838fbc35dd5a8a1adb7cbbcedbeedc7e265ed1382051754ddbf7dbfd4814238f5107c30053928ef5bb5803cab6c6efa480d7c3ea62a0df5ee6a436322734de6ae570280b6b434d77cfe95fc1ce5214415e48de2f3f6bf6a3586fcd8e1ee07115f2f7cda814310dee97a5c33854881f78303113b6475c00dcf8e43f5ed162dba2b4ed04d286672c59e107020ee2eb4937950b999aafbf5da09b78cb88fd93aae80fc4e4552d64e3ac590e9884848b87abdaf68de2ff1f8d323ea9fd4c85e106f1acc3bbc2a5dc56347241fd240207937e299df4f4323571e18d6b15b78a73f69378e2e9d05c9db4d4fb32283a7e0c08d519819d09bbc3a302d0aebd52bd837178ba54583d1a01d42e1dc89924fde1f9b60f04966799cc32265ab1c6448b92675cc045fa6b814f37c872f1dc344e8e4252b931a4b32f020fedd84b8ecf2cf040dd3bcd6223cb00b926b8b7fe6ecd84380b51c6c9f15cb241c5dd83f50bd895076bb0b8c07aab308864e81b53c18e0f8aa6da4d639b638cba57a0113900d286f66be69da2266456b5fd7eb0199f0d27fb96326d03368d5cdcb8434f271a69f0ac88cf1bdd16eb0ddc82e65258d09f73a01e39cc5efed3c3b664ec68b0fb10123950228a3a84aa71b44c5fdc9bd9ec3eb7d38b714158d67f144803227fa77a04822fccc6e9d616ff6cda0600cfd0d08a8372a40aaa185b49b0da1de4cccd4fa24a9ad70db2d8e1115b8174ed45a70f6ef0f8c9a693c3e88379be1010950c75a2632727859021ecfc637f13fbe1fea2ee558dc83a3f5b75a6b802490253d46e0039a1e0aa816558243190a9659eb4e270f7729a71b70491d1bc91be15aec8cfa26f2d7980a4f86c8c2cce6246785e75cb7a4357b83e1cf88819cd892c4abd3fe6362a23ac98706e384cadf529a6c440d8ad745ec8dc16b0006cb9adfce3ab6c92428e8a3ae51132f705ae6bab98e0e16eb491a383f2091b1a3df6cf13b4929a21ec5a54e994b5aa5b6022e381a6baf4df56a165094968e697481e3ddfe93c5c040d6b8740fdd71c3a79a4a30a71d867cf1b1901948ae017885133c72c384bcb86b98f09e044509b7d789b732c70b633394f8582ae230a95c5fa1a88bd655d34e4a40d07c7ae00db283b5ce0e260d019c06aa7ba78dd92c900f7743dc1544ec32344c618326e4d269bea3f32e861a15dd3a75a229aefd9a215ff31c0b59d4cc385beace86031791f9444e70925cc07ba38aaa865e386a8745d8eb9a80af9251f664c1bfdb6510fea23fca2cda1ec7b889a594c2c94761776ed3d7b7485237b36b5090f1bb5a43f283484b599be452226b96303aa092f482e8fa054e5d09604f6c69a0210a1f50ad5c41f217a5d56c796f470b172f3e590573bb4a34a05172720257d86d7c9cc2d043e8ee24fa0cabdc5e2ff37c6fa7e08b9c0430d3956a0976e032d820380bc89e5d98c93a218dfbe4557419141f697c9db361d7ffe43f78e83648a0b6f53c1de85912287583810d33a3e583b6276fd5e84774e4b5bf47454e9f56b67f73d1e2f243f47ef14b7108a3d8880a010331ad145fcf84d05142795f7e6aa0de49f84246821894511d567e5781137ecb3809aab922a48fa5dcb862b9af6a7fa7117ddce71bb92504eb6dcee000be6a578343fcd9174e0c35a55c2ee9f718878472235e369980141143a5374f6e9b78c899f9cac48fa0a264e261f9f0a4734b92302d2c6b1f6f60cffef0fa24469c95a1043ace5394372cbc6a0b0873e5299940b777e4196e0d0ffa8a44d1a1eabc9cb9612f9a84cd32a462495bdf810c35e0818208b43ca41e17e94cd71f6239457bbb21aaa6647e7b4a2d545b5291150eca8aa97be85329bed4f7b0234692ec5abd5bb2f9423581e273adf9bb0a8ad66e0d18047fd41c2ab550ec90d8be9781a833df7bac020121d209077c0bea1b75591dafa71ef965ca90c303ad7bc8cf031eb6537c69592846bbc912b97d85bb724d18d4d5f71600c448a7cb62b7ce0d249a4da8a5ad3a3c2eeb4d89943a3618c9043ebbd1590747af0a737ce058e3755128f1b4436f592cea809d86300bae3fed4a35a55894758fc17e000e1e58c0728dab7f9ce45f3333cf81219e9cb572c2da41ed81e1d1180eea1ac1c4a92c0dec24152215b76da960b16555d1e1f23fe5701a4c3b24eb38ffdc137850cdde1f94d55e10bdedcda9773fdf9c8498f626a15e31e4b12a9ce4dadae66c8db4d32b0b13ecf3f3596cfb6eb09942eef4f83c45973b4b58e0d991fd43a4db8423113fd5fb00d23b92f6fc9cae4f053f6398fa50ce3fae18162a63649a320abaa0f1adbfe4fb7eb61418d8e50a255ee5277c6aa3342666dde463a32c9e79c7d0344f56a47aaeb66bda638bbabd3b5ad7cfd079b2392c7e3d87978dbf768abb0ef186b684ff4dbfff27aa8bd4183580e560734076af5126e256f5d263ae7408d98c458d734a9be9dea5c864fe5c4e042527fe5639bf5dca939cc33aa4b2506bf84e48052d8e2d9f4ded6b44d7202c21ef6c9aa198d01fb0c37ee57fe30dc9acc823aa63de23c261603c17418fb4be27fc25da9c472a623bf0c228b5b7c52c22bd587a808523340c92c1e5b662aa9bcadfe54a29dfd70a9b044a2a4a19e3affaf85ae4a318b4fc212cd2d431532ded4f49e25ce817bf0c0572986edeb05b2dd93f4adb82e2bdce9db4003e1e6fcb1ea9013ea517c50e439d33ad6e9a8a6ea86b2ae1857021543adea1667a8960653d0bf873d02d6acf51d80385075d525c5dc19e1d9d4e73667c5e6f715392c62ae0f4462343a822f14a5e329f22f99abec4758e0ff2fbf800b1e0ba383c8576f7786ad34d4d0728571662be290f29bd318c6cc51bacc5e87f116a81055af87c2f0228bcda824029f326aaa4a8f5671d6daf8efab5d78240652c5bbc5227cd5aa79ee8f29a34b08cef11acfe3636aa1032e4616e5b1ef2632b1505059cb09729e6be23a183b6b115591aeb6a77ca20f039eeeaa7bef7cdca4da9075593999c78d73186fd5c5b34ae7817146ac4dd90a778d64de02220d1ae1eb489bb6b33fbdccc7b6334634d028ea105358d94e3894507cc20009bba1fea91d41164e290a3ac92c8c891b6550d8bb5289840e2b12680a1f59eed7d9a2dff641133a1e64da10e5bdd742f21fbe1aa67001d8116ca69923ae468336e36ec4df8829dc3876507f645a0e5c63e0c72e17035824f824302971df45de8d6e256d4e2357b6ebe0a1d12e1649b44905ff70e1847f98868047916c6548a9b1231f02532ee60c718aae83cc80fc67e78ffa88ac33d620c7885ffe8adfcef5df33a86ebdef7180e65569d00446b88f38e43488f8146d4fbf4b3be45c8e6f274e61b6f20c102750858a4c8b0005aea21b968971b00722eb690fca7af34b9243b76c50b9c2dd60c1ed3799e196bee5e9a1b089175c72b70e916d36b34986adcedfb953be720db331f22f9dc6e65dbfd3ed2ae428f341e5e2cb36dc4b8fabe95489c9440566c4186995a3851636fbc28e0999e330d8e4205fcfa80836533bc8c4cbbf6598cf910ed03683f7192d677b9419d161a901e352247da05cf610cc90cf67f8f12beb1639ab8dc45feb4102a9466d84e02bcea5671fefc987a81465486b9cdbb8e0a98530345b7679ed44e2e9ac8e3145da38b0480448307414c1997a5eaaf14f5516e6531eb411aacbc0f12239099d606cbfd6827a962cd31e4c1b49f3c17898463e0227ef47d0f6060bab5912d9a92c574e401b76e41758c638fe480e85c5dd6fdeaf6c076d385c723136a7b25c70e865b8e5d556573e041a91c792654b1ad850fd84663705f0b234c06a0a6ce81fc2ddc5c2c48c6057b6845e6df60d1dc5a7aacfbb48248c50486b069fcae75d0bb85170a69b86cd8b8bc1cb3bfba04bb4078879f0fb81e6bb4f4461e0db661878767eac14022a93a7e3f1e13c7621a84ff1e97be2f4dba31c24d0b0f9a2e1c7f0432d88e022f243b72ffc6eea2fe52e0fa50f253d174365e0ec78705f369a0f7903c908a4c3b4c3e51867d68e3c49e57c2860d57e143ba0ac468df4c2c114b9ca30618624f2392a09cc12793052c5ff60a383d3519fd7ed5c6a2e6e296434dedf0b90b5b6f8433ec45fce08b699f18522791593bebe719b29cd3e9211c2452e3736a5820074935658ee5a4251ea1498d5d9aefbb7a25ce5e68d2eea35ac31e9cb3eb474d0b24d4ec7a4e92b0dc3626d13f4b0772eb16f47a55b8b90f746b9315da196b805e85145aabd44c8908304acd489a802224fdf1828f6e4452efd6f03716c604bd259a565535f4bfe4f6786ca05aa66e670b37635bf3848dc6ee89bf1885e717943b25a52b6b4774ab3e6d62a45e4b2b13c4f935e8f61020dac3659c0455c8e72d585b02ea96a88ff5e5dd75830b923fc030dc7d374efcff8cbb99def86aa2cb0526eaa386da7bed8b0f5ff4661ddc5e3207ccbad0c729b2549e994d3ffc0508394cb1ed8104fe444da7519f6d9fde761f0e8695880b7e09c3fc9a8907d65756d50a396f14ac914010b251011c37d8e017e74798d8cd7f77a272da168697ba798e6adca98cd945ba8847382676d440f0ac6d62ced335cde18d8e1c394aa16ea6621516e1e37b1ab16facc91d80a9f6a408e41c730e620455207b579a12a24ebbe95e8a858e0b37bd38623c09f39cc12aaa615ee7118c5a95b850c723b47069d22a09b96b31d8f0fa903454e1cf17e3a4b65434cc512c45dfed20cba1a790a56d461b7f36814eb74bab201981150f94e6318e8c46765ad15c277339a51bd830d67068f5cb43ee9fb5915f4b7c00fe06ed28801d347f235cfdd30e6619d4fbcc988f422de4a8cf85947e2c6f3ad936e8bf01876a2a88363edcb4bd995eea8a9aa81a2f74031ca4b079fb031c8b92d6b7ac62ebceca8f4bbe1a9dc5c81c6fed6766031981b0c05d4f414db764b2f96e8fce670d0f5af06a74264dafd2ce7937bad356017e73a2f8612063a184790aafbb236d87fcf49ba0dbdb29dadeda47c78ed36c37733deda845821cb5ab304e07d04cc22ac8ee7fa8d19aa226d1e0633042ef565235c53b81a803f768e14dffd16ab04c672cf8687e852df0c9a7540a847e26af0428890e7ed75378dc5085010a84ab5376f9b8586bebe8e6c40b77ee49a418c63b99f0d41a2c80b74775569140ded91f56e7fcee6b2d5ad61787fe0f1839fc121e1ce3468071875cdf53d1ce508ba078065098e7b9760db3a1cebec3319e775331a7d1d0ace2700b399470a509c05e972381eb7f97729ab472fda5cd78604af765d3e1716486b073d48af548e3080535c3ee9f4be782e1826ea400433cf64c8c60ca00086a8ef09242382d0edaf92412e141ab334c4ac615d185778a711a32cb4d1ca454fdceacb5e4e72a021dbf4000ee7c044577ead0eaa4b707eef2427ecd227a371c09fd1c2a8d19f09b05e3e6dbdbc0dfb69bca4fa3302b970af03a7cdd1b7227fb7474f9ce98ecc36b7d418cd25ebdbdbaed92f2372791c23d17dde875042b274ac3eb06d5ccc027fbc69ba5906a26409ae415e3bbbf8e4ac8a37a59931642aef1c1bfee2f768ef37218b9927e04d54218e8fd55a2ce953ac0168c2a1e043e08780416d70b8fdacfdf29b39d6984fbac51798157c4342d24170e392e9c00e678630eead81d9ae02dc9c5a1e62f7fc62b6ad84a22c5aaeeb9bbf5a120a03d115f362f6ce4ce19d407280145e2703a200c21f674d16091023b623757055916735214884bca6d4e6fd7a9d8381ae5daf2056a0aaf01068e14161983d9e53c4169777a166a73eef75826ebb94b2f614d114eac76726c3accf5de4acafa5b7f3cc54f015e89a61929967076ca7c0b82917e57dba03fac15c3216079015db44a08b8c077f01393f11a75997486ede20f8e0c965f9beb896617a7f0627a2eafa140fbe40859f2d9d435b9a608445f3a6c869be9adbe6dcc00bad9705a1ca89c2f6fe6b6cb3a7d8fd3a8f657610e80f8e3cb41203fa2080dd5690efca7ec982fc90f6d463fb5f5fc3abd99e992bf32d1402f50acc0278499096b425523ebccb4562046125e2cd4bb70708afef11247bfc78e74c7e456dfe277848a92b2c6489e3a1854f5be3d2e89dc8b665b7fa8c790af4852a670f9f0228b014ab66d3e015a971f3191426c0eb05e3326c487101ceee2202aada4fb06f906cd6fed4569afa95350f5c5a4e142f04b5832aa0a628aeeb93fbc971bea09687e77131c1467be760a5afdf57b741adfb5a4b3d815f5f8e665cc5984a4eecfa4eea2e3c3188865c5071502962abc29bb8ade236adb93b6ae8c64249717a442733d9887700ce6a24f8257846dc42b791f0c53a6e289cf06c738d0d127c1b17786116eb2ef5e45e7826c0b37fa85ca344308b80148c14e1dc504b75f58fd556bad94d441505bce493e704c0835166352d41f72853190edf50f0d2d1fd6a6ea3c13a0b60c699fcbb9b20c0609fadd3d0e480353540089b42250fc4ff9a81b6a5bd3ff05f9861e9cde1f8e37641daa9f7282ac7ecc0cee5de3e1d28789e193b4a7907368caa0a611b4cac6094d590f2f32bceb9330a5299d9c259e69832580e77ca90751e89e794f09736828d05f78e0904b3da1b66c1ee81df0666fbd4064a354162e0a0f073cbe3f4ce2327b7f83d024e9b0a13c200498ac5cd1d69edf18a287757d45441ecaba7c8e100b67ff4c1036ef4dc5cb9be45b7bcffb7ab5dddcf435e3da338dbc1169a9efb832a8ba32e9346696d3b5686524bed61389b07a5f058f8b48a579f7554613a7903d5b23c7e09aba52944d3a9df9eb01d83fbc614ac86262823c3c89d8bffd0dd268db4ab0ddda709e91ec7e501e27ecf51324ece25f5e2d066bd4f21f44467bd92b973b73efb9af0a786e1eec73122741e3e66a516a138553d1a157694620b89f6ddf76d20232b3324fafcb10fadf4ec21b0f2dc8f2feb759573789cfca7f321b20009cefdf9ae69b485cca8d8c214d7b0b1e0ef9f4411e3434b54d9209e84e3b25bc92a5d971a7048e7ac9e9b2bab57b9e399131f5220333539fe45fe77c0053503c2f5d43b8721fa1f32f6e554dc874112f6e67a5fecc4de459e5401860d04b4f8b1fc2afab1307825099bff49034505c8438c85964373ee1050b66066504b55afa0f7247a30efc13d2a648124554d0a9a25148cbfc820f7c96f5ce02e02c550c2c7ca3b542c07517141143b31018570426a6b3f38ce80dd91903612ef3816d698e2a36eaef6f9cf8a86530fcc46f4853444e8d6c73e396d444e67f818b764634f6446f16ab9bbe92d95fa728dd6a963dacb2240ac501dec98f08efeb80bf7d4d94a3d1e8e929ee2f936295dbcdc40ab9348491dc84bb2df3449ef7ad3b2eb52ab58ea46773a5e39d8092adc6cae3256a1ea01e3d5c3b28232932fa2f685a15312de8f5e2b9eb5f1e188d6a421a716db4bbbb370b96ae925aa069595c2f420205c7ef0c8d3e1bea29818ba1ab5179ba0af49bf6a7b51dd55df6b84e9047e61908b80307cebca2d0e5aa7972f278a52f40628ae0ddc97a06b8443a819e15197a41f9da8ad97aac5479cb4b854fc0f84f8c4e6101462ed03b998e54b4c0c9036b5727e5464737befce62354e8daa9fcb9608c7ffc242331846fc69a6a8c1cb8f314f143c98fd042bfb5fa7d819e4106b4ce1214b854a3184b029c9f1f402384c128486b0581de6aa7630f73f39aa42fe1e0ade4cbf2ea3ba67e11d1760f76f79530ecc4a31ae85728173fef0cb5cce229e4b585c8b392b3c0b0cbdc5856d87db604034fa579952c2675df6da54e5065dacf357243104ba36279ee2d890d3ad7734d5c3e35a6b1d4dfc56761d91ec4e77dc38fd286f2157c9bb05a85328d6c322e5a00be4f71ee3da9d0b38ca28faac974b408f8b16f9a8fae4dbc177597590f175aa9fa5301bb2577e1e1d53f28dc543f44722280472f0e359bae4d4380830c2e2b87d511cc0d89dff90fcb2db3cb40fb5fb5dfea1440da242e1a9661f19e0c7807ac9e515b861ca66bdd63bb9667b2715e825d8593e8068197043921b25912fd63c801d05fa2145d084d967d3ef68562a39a93615c54321ec1615658b56af54e57d240898e9db4a5a7b52d3cbb6a95edb023970fb798b45114174da7c113c989427eead1cef6f3e7dd3cc32e75e18ded3901d246de2318fda1de558eeeed55bc68c9db73e038c49a1dcd95308a4d3ec712bad640220098eea61610cd19cd1a6a1191ddef5aa8a3289886153b6deaa4a5738ae7ac8898cca9d9789be490484b2f450dd0f63f44720ae11d761884f5893f16f2db5a472b70e0ae13021edc0c093d01741bdda2a3e1d5bd1d24a9d69130f5ed12346b20a6a9a6ebf2f8a6b61ed0bd29e2da155b7bc17a9595cf64403149de3ca966ad7851fdc4394ad874c3c77b285e83783f57dc1e6a68ac05246ae63393f781410d9f3c2106ef951b35de251d0740856073d46c0b705753a810c2ebc7f664b072150571772baed85d65de9fc57d44e07315eb08597dd7829405226bac04a32a3bc1f76709424c2818bcef8141a770870c287630513d49098065aa23b34e7fa92b735339f1e61724e6505d19b9036c62b36d43ae743722981188719cc5a770a3f54c19dd1a3003611f56e193190d6acbd5c0438d885288758858f13d6d188c369e204a4f0f17714a865fdebd40c55291392a84ddb4b5e81c2d1e1fffbd9aab9c385fa12b9ab46c2c787dcc7c94fa2a7f5cfe20574412301a93a416fd041906642aa8472c34b3e37e7b07b93f1188227c398b52e775d5dae0c4db7adc65196c4e7bc428b834280f697bec78097bca3775b2962bc9bca1ede31276ed64d687259a1161178674069e488d6b02bfde423b1c61ad91b9b5ad1bc4ddb7c27208e3142b8f53c6f81e7c8ddbce11f575afb22aed1295ccdc592fe522cfa8e9b31fafd2124eb10dcb3637ea49cbbc6838d1955e1cdde226115e5559b47fb974501049e255d7414cdfd24275ea8d291ca773131c95b937e7a830ef24e60cd223a5cfc0975500556e82427b35f18d74765a5c2e4cb6afc4b354650fb3b90398c31b17463472972add5b1277246fa370f99a7dd16f9b2085aadf3f7945cfa43afbdb7a50aa4c5dca3a9509066a9db3c99ddb7fa75964c22d2d330c16eb49cc5f5264a00e335b73f27ba6655612670bb897c890c715d99642f3fa8ce129bafab027346f5bb4b4428ee95487767bd744fb4c5f65bd03aaf004255a9ca4d70a855b140a4457b837d520ce03e319475c1c095b493a57716d2c504687b612d05485566da6dfd18846a3988d022852679b1cfc2759f0766a8b4dcb2e156c855cda9c72d673bd4e9027b4c500ada90eb1f2f956f04e346f11d67cc40c3b4855007d3c455181102c992dfd38cca0b2866c65223deaf5ed1a313b31b17cb0f02c85259f69543ec404a8168915d1c8f8221332078d542c69b024de2add54644bf0680f79e938bd8373b534bf8ab309062490f0176cc4552aaf01b2520b055704b5ddf1dbbbc960f3f6bd46c83abc7b2ac06b8e920eecc9658e0120d56ab3c009f54b1a6c4d8c44eb6ee7342c63124d04a2f8f1bba378cc2ff6172c4c52464ef767110a55b05f625bc2254fdb3c98aa9fafee9204522783acb2168e97086bc07a9e7bdab879616ddf1c66fd7ed7eb305fc6beeabe49fbc2ed54328ffb5e07b28a0a3d53844c1a2a359803ca9c4b3925f6afc567555f7b6d36be33e97153e7e8662044d87eed4faa9189e490cd20ce1c0ff78edcba8465698748674c0ddb2d1ee4e5fc0000841c6c69366c9cb26e20663b193641994e2161830d486509fb4aceefb7fe1322f114db7a929fc46c6b101514563320cc6ebc657fb04005790f19a2d45a64d45ad2562f12929ee217d7a3e5f2713c2cb5a60d2029f33e8d2462a2edbdf1e80a46f16c4003522aa5a6e90ec0d91ebe1cf8fb17e8dd940026327afbb907a8e361320016b94439e89769c1960017968fb54f76bb4d2cb05e1fc109a8fda5b5ba53d31dc457acbb7ba0d899b25fc1354e38c1b150a2b2af5ab1b2cfa73db38813a9d1caceca881acf3b71ba1bb95f30c89f6bb4db434d720f8ff26f781ff14574a97f2527b18cfdbe614a621e890fa59a24a1a941206c24614d2006f5dbcf099488b1c03b22eaec75588607fd3a2977250825fe6674dd7b564fbbad8d42bc22dc36a5936f9d4c47d956bbae85cccd8494c7c8ff645708d73f94ea7108cdaad54cb6690c4324dc9b81dfdb5f1ef781ad254dbb55de3a879e65fe9b8bd02166485256f0b9f76451c9c03bc2719f3f3f5879a0ea901b91955054d67bc5966566fb7728ff91e46134e555d6d28fd7410650a5fa66da9339cc9643e11dc04698538fb34ec9bf361fe8610244fa16c5515fde3ebe5369f784ac2735cf0fa4c062b7b6409876923b22dbe51af686ec4c7b406f6ec7c36aa1d75d225a03c9addfda207c062ede3bc2b47962d1de35de682e26ce3b0e069c500ca85f6e0718eb6e28dc933fbf6bfd6c8c7b9269f8b6508acfc10939c3e24f47dc9b0b33a73ae525805d1960e587a79d75dcbf47e9cf9b927c42961d0cbdd30c4e203e68a51b89a9da3e6ac2dc5bfc88f357f5b87cc8cfde8c9aceaf8e55a7d4256b8e188f4ed8b0c6f398484a06bbd5c0955b99f91030e1c49563cd6e27c07bf9b13c0bd7321e1a8746c89eb238473f2e9cf6be1e00e39aa49777b3d26dccbd822d00638553cba264c235eb37de276a7d7fed97672eb4f0fe6ed180c8581c3e774af01c37cf2d52cb8d6c1342ec61192f1bcf3f3ddf72c9c6867cf7b6cc7fb4b8d73b138b529f53f4158fd4f6ba75d9f440443a4a3f6036ba06111e74a16a630f27b96390095edb2af6d27a149e0e882e6182bab464311416af08c437a85a5b82c3f056deabf3980b5d9bb99e9473ae85f70e9cb41aa48baeb686e0fae4ef1de958771dd01f031ed6502596a62c648cb748d99a78f8fecfedf5ebc575d381832423ef3d274f1caac67c912c8fed5c37281db3761c9454109b633b417cb3bc450385817390540ad87cba0be2531f0172104f937dc4d8e28e8ce9e5a40cc1a64aaf8a9d31ee5ded0d40a290c29b46d19268c20d8e5b9f66e69ff1ce00c9d48483fa4ffb6cbbf32fd27d7ecc2e5e0f407ba914abd8d9f109707f61497b1117ddc66adea7163f960263ffa24bf510dd86419ca9d89f0309c503b07c6811e8c4d38e0d802c675aa7b4d1fbe6684cc20516c4d0aba35a51bc087fd91f878716de05e7cb749a2c9c848baae41fd6a7a7a2d3f3a57ee856841efab19eb7f143dd73093d1a4cce434318a6aab20b5911707d69bc477413b4dea22895ccfc813ecf87702b6f56c8673c1db5e50bcb242703c4e849b6f3c771f1df56e09a6651a8c5e50f6ee394910d287a0142ee1af232834232b34fc41ca1d7c3db354bae30043e3cb5d7135e005582374835dab0f8b498c3f95676a7d57d7d7e018a8064e05934587c307af9be69ad920f202c87871946115951d15254050f59fd984bd5000bd64a2f599ff2745bffcf4a9f52312d9cd71b2c068a765d2199c0ade3d8a6c666be3aa743aa76de38c79e6ca6741fe3b1d44eb6d0fb2136a9ef58d7823ccdd07890c677858f11361c0325b9a8cdcc748ed2b705a9d49100712f71588697b0b1c6f0274232250bdf2f4a7f42c5540c0bffe1da3eb635357ac366da005287ef67c1f1315b2792adc25d5c1a1e015c3928397a234cb093251cfb78a79f9c65e319ac2dbca51f9008413068f6619e51144f7cc1a09df057bc3786c04f8524da8b6d0c2f8d76a3234674040567b0f0d7bc9e9086a7aefe3724938638f4ebe0ea599dc16f9490bc00f9575f5ac5214d19e54d67d456fd5ea4f0bdc82851c3ec8c3e53d5200d0829873be16ecb8473eba0da8db6079f1f6a576e8b2ff5c885a2c9d5ce53ac1eca2d3d87c7523b08de1dbfa206ae86687d1fe3feff65242f7448ffe4f2663b9ae8e92ed86f43f8678ed3ea15cd5dc9f698463b4e682d46056c18b1666e42b040310ba49ded3a1763c6bb9aa7e702be1f53098bf2b504d9333424f02d6e5aa889bd1ac1df010e84d51a7e4fc6b45c79f22a00f46b57ca9b4e485267b5710e595ed025d88b7f701ce8e9646daa65091e3904a72c30aa7e6fc73db827893c4e294c10de9fd4f155cb87cb4352dff4736de5b9ed79eb03ca98f7057817155e5073d9b1eda66d8714c6e5bfa85f9c7b3cd9e3dd9de9f97d9bd478cc0fc66fc1e1216ddb105238363737d1a2a3ce4613a342e622510d47052ba4b6915c5b098abc41ed759bf499c33a671540a548f0a95cb68d9f67cf195dc72e162cf807443a450073695e2e313e4a775b9ecbb24d40cbe10bac0c506e7e912fa77e2b2f5487d04284b78dc5aedf451b9f6eb896c5c4a078abc7925bcf5ca9e3735f0ec28bcf30e4426e87cbd72529e5dc638e91c9ecf33b76edb0add0d5df84fcef72afe806b35c324d20c49cf811ae78416db5d2110166be2458bd9cfd48de86f842dbbd075f044f91158246501c23b73cc6a42710ca3d9ffbc3e6252ea8934b024153fa76afe440ecda8ce9fe230c20690d1bcc2302b2c9638d59ee1471538a0d6904126bc44c8db62ab43a196dca23fc4ea4dab89eb93b163fd380708bde253cccb12fa718405f7dae1ec395117ccd9e13abb740e7ca97156352ddc28eed955c053fa6fba872a550bce551ed3ed718d3d019df2a87df688225709cb35c4d55e7f98a0b086711ea74134f42962257c97d2089e32ee275b66210316b004384cf6c7117aeec2a64dc4f6077b28d495f7f3617827c4e6494bec3647140c2e3d370c535e1f58f3db8bf5df86d38ec192b0dc92e566ed6ddbb598fcf82322636bf05bdd09650633a3e60bf8aff0c8a331fe690232c4ea5efd752084081494fcbdd2507dade248d3e20204ef7ccfe766fa8760b1167c0aca07168881fdeaad151bb0110b866c10001577f17c0434b423dff49b6a3916e0d56d267c1dc6bd06378234e43e539e72014bbe38a6be9437a54503af4756d1b6b40a93e7b846f2c641ff6d18f3535c9aec34d4acbb2cfd2f81f2eea9beb5c16903978dc1dee1d9de00bf7600ff2cb18d7708b1d6508abd018126dd42a1301dca5f7c0f9605bf911484b3a5d7ac920a1a80f6e4973a49ba78e2730567532bfd26824af5bf571c4fc078ea02c9a530821adb77f7d7f494d4cbe6a20ec9df1cb29f39bc68b99cbe003f5a85072c1d355040c7858088726261c8d73db025492f215a560faae0d0b19eac688289772dea0505b158be3e50797bf35175220d981eb07d0c248563b4a2cb0b98287a047f00ef0db3eb61713d0268b71514d74bf65b60cc64e3b302d9633704e88673dca0871ebb91c1a11c8eaac6651420204556b84739e6f69b24232b2c81960e331a7185505e4ec44de6298a9f0a0549c4595ed04f17ce093cfa4b96b5d6b6b77023f46a8d57ed4c1686af508b5c600dff319772920cb431ac6ff0193b00ceb2a13637a7a3a05bc1b34555039402d0c328b7f297fc4b68daeb57fa4da99ec407c37221bb3ebaad09f096a862a704e64b4ad0f50965ce0fd956874efb760f00fd2c68c8d67b2a9fcf0d66e99bb25eb1ffbe14431a67556289322f83c7f1af853829e3a3efc471740adb01d5f502fdb271fd538f8aa2a84ace0630fda0172b56f372a495abe161e47b14d0ff5ad7aaf3b2995f1e62b810d880a030ab529b74fca595a1ff07a44f07865f1cf348e6be634d34422e31e380410d6dbd6a0acde48be915d81522b36942d06897e8f346c0e524a5457bd94ab468f784fb870990f5f59eaaaaa901614e3384a5cd1395e79c82c96c506b3075a88fb1e16695b253515d1de5c57546b3bde52ee91652b6fcf5367ab1a0fd3dfed5bb14e3f0abb2e3ee9f0981a40970c6b1baf9f03d39c01298c053c45c1aed09de1bf967a7539854215e2dd02ca8b976bdf550e112e099eb9d125e60ef3cbe6ab0a583a8e6ff05136b2da5ff1391a138fcc85cc32eaca6ae997336fa418a3ac4f7cb32fc6133cebc0335810a37aa6af1b1580aeb48694e2f04d5aaacfafee9a9f8eeab61861e64a3985ff67886a90cd9d2e5d6bb01337362251116f03ba1f8b63542a39915d2e4dc9ccf412ccafd8d6cccfb42a5ee8f08e164b6417023fd2b83ed700bf8ad586e4eb8d23b713d32e851437dd59202aa88346942ed77181454727e3c883aecd5a6a0123e3139c7f54ddd9321362eeab3dbc49230fd95bc106853179b5d41e674d0e9e2df6e68908ae36d8ee912d9db50b3b6fd75b57670c244dcdbc182e7f9e9b1664112415e4735540b92999a212f7034eca2c4ca75519e36994f519e0257c4303741461636d53ce3750dec85828d49283e6a16b5e4e10c9454a28897d89fe66c391c94bc0408f455a39de12a30abe20faacde66656edf80e3c803a95108b482df767a69023aefac8f1801c0e70e1336b9aa24260d6ce8b8fe98772a8a99ba2baddcaf7470fa8de6d09d8ac5586ba84715502b602ffb115ec27576ce0ada334d3cc9536b6c48c1d4e00a65c21289ee265e13fc445992d9bd321f11d5748f69dc6f922086bd88cb283566efa3e2c662e7db5eca5397d5d72a0b6080179d7fb54a0ce1945fcfddfa0ae509caeaff4059ced3df0a6d1a6e9b3c0ba085cc4501fbeb4c78c9f4b1cac50d5dc55752bab7b8fb378dde57bc57c53c3612d8e622077877a272dbe58724d39c2b63abb385a0205638add10d859c33d63596bd6495c3edc64c3785fbd07b8d7faf922077a3f404efc39da15aa8858034681b432c62df43e4dfcaf3ffef7300aacefe7253c4224d35d05d9945e09a0d21f710542761218cb202bdb52dc262561ff316978b667f881e07b63e087aa16959d940a3bf8263474dee4f80106ce1683e0ead47d1b8af16fc81e6d82c66be858ea8997f6f64721dac667bf6dad8b2583f7644fc0d4cf065376a6a78542b637017fb57c2d0d2215edc4fa4d92b00e2d16239e1219d1bb523218fceb137357078b89b0be4834d72f94ed99e6c6a22fbb9a51f53936ed4ed0edab19cf36abddcdf8a4fa379e89db0cc1bba4f108dc3e7c083f57ca8ccfb2946c44c343f00a1ac71d934ce88bcd17b6575b037e9c5f9be079cd034a4413c01d3a084303e4e483f52808660c5802303ece3d5a38ffff986b91c100390b67fefa9f995d7ab49d29b353877cfbe6ad2feb2ca392f5b2a573bc177957fad79e7303873fdbcbe0ea33d945e1a317260b61fb5c7e0b342f65ccb8b06c588857e678b14ebab194b1d8f5e3d3bc6aade42c37a6d4a3614fdc6f34a2eb4dd4c70e9ca4a2acc439a125c465bf87cee91b89eab3d590c1c183056d2421c3be98f555b519c8c12aca88a6dd7182dea59f8f88fe5861bcd3632ab61d2034ae6524b5727c975b04396e192258d3d93f1657cfb393be28e9614814ee2efe2100995fe3550d06eb6fbd6c320291a6cf23becfffda23ad0de73e1accf8d1b790873d82c3d8dd9135a6098e38262ba863c9fe55da860a48700442eda6ab5e1711b9a792009d41ecd5e1cbb9f32066b51fdd8f84ea77491eaf443dfa0fe0bceee6dd01bd3c3cadbdf9f3693343c4fe0c264acba0b524285b67de74765799c665dcb736d44b601c73ab8c24dfc8d5de7c613603bfa044da280a0f092d421968dfe2d587b9ad04ab84863d13d0f4a13ec908870b4d01f08ce77d93fcc337874ad556734d405b3a85255fa09b7a6fb02df1833ec0dc16ab1fb39a19cc0dcaeb5442541e8c66d82f80695f30d65aff4264373df9c2acdfe048523f54f0231eb774a1f66248bfcba0090e898258e88b109916f4b4a228c9f57d35be818a7916d74cdca04438b53da93c5e90872427d0f5931bfad45d394601b3bffe6b8eb6e5e90046b681724760562e63ca533e1ee0946313497f1534069bb004259604fb7d3103bc81c94a9f2909196819da465c7174e4e3f7ed837abbd2996f6c88e14ef69e49ab91fb64a230c9b2ba24105ddefbf05ed396c237cbd2f65e73e1d49f82bbb27b497ff639f11c3f307806eaf40dd11414b012e335abdf01b18d6991d1f20df754015fa45052ab526019e1b93371ebe4c96cf4725c8b201e8c2a34ce76f169bbe204d6fb4e63476e3377612c4e90e8a4c304b6ffd1adb1d34d26c948bb0da92b31f793677818ce13ece56a4b128a1b8340ad664b55f5bb3c487650d0c12d64faa7d8e1d366c2fe1d8bf8d62020f692f5113cc35b482abe91bb65a6aa0300ba967aeeb16b02bead74b890fd75b812a4223fd77f07a6ad974707e3ab108adef1cd8a985b468e66e3e0172e2559e93576035ba1114feb8bb6ba8b34b66ef31b5191a48c0580b3d404ebde34b40438268d70c13c77091b4c354fd9fe22f96d5745c5d34c9ac7947c4592d2f0ff6a87e39b508b8f47401209a6aa4ae05a81c6c1595a3eba23f2d3cdc7ec91626ea140be29d \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/671070.txt b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/671070.txt new file mode 100644 index 000000000..ede22db6e --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/da_job/test_data/test_blob/671070.txt @@ -0,0 +1 @@ +47003c5739f8d1f0f9bf1b3cf991b8b6b8d53dea5b1fe80959cae479f06419c0100c0e5d4376e5b6b5db936b81789f927265d4c74fd283f6d6792c29d78ab6886b039836548eac23c4b9eaddeca8fe38a0e2c4207cc0f743588188f672c0233b613c1537e44b98a1c9c4ac17e9c22a51425601b18db85db6a3909df106ccf821411b21503a2a25247baee481e1639bbee3fea250468298f0fd0e99fdc170bf0a3c066d5b72fa2e7f46caac0c38427fa7acb4516b684fbf48887ebd013c5c612e56865be57fd18c7c3fb9bba83683ae4ed6dee10472f38275ff087c1901ceb0aa0d7677d0ea1254afc5a690c4f6a5743f66e5563063e61776e9865207ab54c4a934f9d7b506202341ae9b0c5ee9a89f14e956c26559e11b022d7460ff7f88e9656b0ba8bf3b6aad58f2fe637305b161785013e316c9328c4dc47a8b55ac46227b0bebb81096e5cad21b1cb18a04cea4e608d6fe949ce7f2ff711e5068c7f89900677bd33aa3e1932a33ad241d228b3a56b1f3e7b710b3fbddb688411ae89474ea3abb252bcd23acc6b04a1b32257109f6480bfa06b812bfde7171d3c5d1894bfa0e3f007bd186b6394203dffd0922ca3fcb675af5db97e6258a6e3ac4de4458d571c94c3a0379dbb491e9cefccd93a7afd5158d24275aa5e8c632ae8a8af8d4f66787b49b88d2580d47938db21367cbd38b1991fd2510338903c6462c318a351e0b24a3920aed4b33efd9444f41055f0ced8f999d1c696e9b0f6be060c6eaa40d02796e4341b3b691020e12dadc31dea124be776c28bcb632b958a55c50be9480204119df2dbbd2bc217a8f847bd9cbff7b336055bd600977e616ab2224a3a92936f7f30a2be767d49fd50b18fbee940d806b7fd7381a95c288e979155dcccab44aa9ddac0aff2d2c3f59dac0c094990e72e789085478f87bd84d9d5cf1603b6865001d7befc1535e3af7a2b7ec391a9eb1fb0700ae43368160caafef97c6f132502bb642ecac46f93d72faa1c6b2a611fa5232b006a2db8de822c9c20606c3bf522228bb9885c8642a5593e94fcce67320a8cb2dfee79cd727048d160463c9301803f668e36b0dabe09e1eb22dbdbd01fc29ea9bcef6d9dc6404847cb553d16848d337e202239aeed1c962bdb90af66005f15c7a22312cfbd636124b73396f9a4a512a5645f38f6ba8c7cdc69ea131483b445debe37f5c26c122f63e9bd746c75fbc03750c5e0f749d21a2b55e7842f51a0e801135773ebb009d9facc8f95c2e2a8e1cb2230992969e169ff5ca9954748c86633323e35a41a3e73fc1ae72e22222a37eac91171cee60fc09b093ebdb046fabfa72ca960fe7af5597c6bc4464df0c1fe061cc8ebd6526e3bbee4cb8cb815ab4b7b55cd6923350df8386c72c4a7c5d24e4d1dcc926e48439749256f567a2b7ff379414a23abae1f254c22e326da25d558621d759cbeb8debbd036f5f1fcd41370d41248c2536fc296ff1db7a4d3719514b31aa5d8abd217aeee0cb98f85e4d1c395b8206a4e36a2388d67b945826621be3dd2a9683abe4caef50ccaf76759bc84a80609a7754035e96cbd372ceca520b050be9f2fa662a027caeda6a3e84eaf8e6a7563dc4512f9e3f87335a44d16cd25f2bd285aff5d7cae1062e503ec837911fbb3b7d5706e9343c57ca1ea26f50fbcfa3c4fe8eb2ba54e1d34d5a11387e79ab26054a7bc848d58619017bad784adfe2bc78f66d95b60e1ac605c4f14584d509214c094aa30b2ab2ea2763cc1c67dbf098398d3666dcd3ac4c6119106dc36247f163fbb3b4c5e7e23a5f788c6103dbaa22d5ed53fdaf3624774cc86242f3f4d17b2c6e8016ad939969cba6bb2c6ac822ded499b110bcb8f28286fdb1264415c6a5473048817c2429e9e26396764d705c377a121066a89e3838e2d476e21efe2f152d046cf45084e06f0110b2e938cf0e77dceb4db05b4d88c436ccabe2c71707a66a0b39992753f3f34e085ec23675fda11c03e9d03d633a521d04bdc7a52415a1c2f4c5942f751cc7e8437cec1a7e78203bd20843a66d42150c72591b2a6e28831ee2fbef06775db9213dfc4466fe2dac3aac75d30ce80ae5d6111f3ab1a627b874b2722633978eb175b669733c2e676c89d91e78ba1b4c792b5e3b1a2390f200bc52dc83eac15c949f1158c851ff8b50805426985d5964e12ee3ffd00a4ed04faa1dd2bef7fbe9c7eac97ef63905c3280ef910fb25bf3be5b8411faaeac928bb4bb26e1623c842188ad5924f0fb7a18ddd02d38cf583aa0b81c71419a7873893a049d3b7f36d2c7aa2665c4268cc9edd91f2122299a47162c393a54f4c29ca3640b16cbcc2d41946ca0bee9c1899fe5b0930cb2764dae9cbde79bee93827fb1c030de59a91b34c39e68584723861eeb3091637d06d46156ea0404ec83a3dddd6c99ba23f29c826daa2fe241329f0506515fbfb77f3aa4a4ef5cbfb63dfe765d5d59a34424f2fd8002ba8733740d7a158df26f010ae599a407ea207f5fef1dc8820c31a1a93b9091f46f3e90d29b8259400d23928e5a8b9b8b59db76562f899fee4578c69d03a8c39d8341d6a4f6647d41f496bea24ec1e01271c27d090480edb261c49cf05b577c1723f371967a728564f2574dc29974b14597378c4b7cd1865d9d5cff46c0524df9f9cbd591e8785c0aa2638985577174f7867f85ba0ecdbb3cdcf686ce03d6c6752ed96bf1c826ce01b4d57561254b2a1ca6d0ef3b11f56f2162228ce6b72488bc042b79256ac31c9590e89842dbd619e0cc21e71fddaeac68621f0b6fc1d33d6700b05f55be99516f9698ff91156048a264a83a73b250a681ad9763b7153a08030c61dd5114eee24a1ae4267d3378bbbaa846931f16bbd8f6df25fd02785cbbca4fa9e3b12ac2fb5e8bbf7f33483a187cd469e8c2e4e39f09e7d5733d8aa128548e3338632b9f15ce18f5efbcdd2861c9f875475f3aa665abca38ff2a6ae713459ecccfd3976ccee781eac62f69e5ece22006bde958adee6eee0c5aa7ecbf6daa1215d85626e6f1f9e009f7117e486e6c45ad93feb535553c0bae00e8cf8ad6a7207395261ef97ad16382b49a20331c7b7e85fe691129ace6ed2522d8ad623bd91ef409e5c2db6ac45decccd49a610f20d261edcad6930e7a59c05cdd26de89c7f7f4bd455bf0aad2fa6bbe26443e6dd9255a1ba624683e810e649714b1e16786cbb0d693d9aaf46d670ceb6971d4fa50a6a332f994f1d75f3335f84fcda360c5514637b472011202caf7fb2a0733cf5cdfb5591df9e0759d9e8c81ea12f676856b6e924329e92b290c7fca4d89ef704b100b14e9f58b6f2e076bee74a1dbb5e7410066d70e8eab9cc7466cfb95cb5ad55d1a55697fe69846a629a4bb1d2b7f616c4090a226d0da6007318cea5aaa6854bdbed71d3269b60f3427b3d8b5a15fc9717228d58a079af6f72f38e6e430e86e1f79ea6e7467d9e8d1ee75653aa20f357b16d1d1376f400facd61f57a73e43413c34ab28b3b065bfdad8dc4b189c63778dcbb6342b72830b68c6d19edf5d553bb19188164bb80c3e2827ecd45328a870320bc9d08f22966f8e3e4872efafc759178a6165e4e0f18613ebc4344189b608f5b8c044a777c97e34aec24aa75175510301bf8ba5576f7360e7801e6729485bc43e2e85e9b4ec611314b56164c16b71ced71923215296aeef204c91fccf4e4f9eec5803354f1990bf8cf1ec29500332daee89d94a877243165484fb4a30b25b065a7f039d138510a2cf00358e895c253e53c92bc5acfc6bf1ea6a7880f743bbc4f46de4fd30b1bd4dce948df91e0482ac968dcef7a437a7cf31ecfc3afbd35656f81b8366367144116266209aa5e9a92e60c0f6eb14acdd48a8381a074219c2b2a300e4a9063ab46eb993a7fe31a58c6d23950ed47b9aedc979bb7b4c098e40b4601587325b3098017f0a9fc4aa993b0e9ee4b077bc3a01d1b0f61028b8dd3b2256ff015e2beab567178060c5cc928fa00b4afaf57b849b4a8adf98f05713f9cc8e2641ae93f4fbb4067b1c4d4692dd1260542248776832b8f2e7943d929f4c2b3bbec3ad39882ee973c0881f4549ff0d40284d17b6eeabe9895c31721da973a7b46bd351897b2789d7eeaf17386e29dae165a0f94c6dbadd09aac0f28e98cf778d726543fd758fc5957b85f7769cc4b568332a37a22ab9d383f39ad57cecc0d8669164b35396f32902e54023a58b3ddab809b1f4bed04bc2021a38b076ad3f76bb1551c5f5388f6403f4a8960f472c2b30e40584f0b6a74a08e46ba0e247dac41d0520f9abfbe33674e517463f4d0dbc1f66f9bfad5b75766bc68192898edfdb8096e3389ed0918da90de4fce7164f4eee8a60319a52ad791432179a125c72b6d836b0875b44a929ede89993712ff3d953b40e381e1dace87dc6cec553b2f4c74d68f7338a778ccfdb969b857dfc041df824246c9fed5cb604d396221f1e41997ce1f48d6874f7bfea568038689999450caeae86e36e8102553ff776ce5e058b6a28b61b656501b6d1be975ae5d1001d4f01bf881b6cc50c46eace840f14cf60a7007485279e818f111d3a484322893d0d64b063f79acb22f16eb5d7852ad64aa32cd2c1c6f5182e60f41156cd9d703c373e7d87c8a81b01fd69f42813c595a763b005015a52ec4dd8738baea53dbff2e9b00829de2fdf26339242a4b9a0b2626e3b664637cfb8d3988735d804c19a88f0d943bc8dd6f3b52cdb0b64db812b11262dc2337775b09774c02783817e5ca7e07ac9296922a96e8e23569cc0ab30d234f9e6241ee1e1283df5032df6998c5bee6bddfb4c5fa6447a7b1aa64d9846b362e8926419b7b07b259c94466d1f5f7ba3449bd67b7d52adaade05a268671eead82d34cc681309a1e6f8791f517a1f021c3ba842fb5d15f50bfbd90f72d50709f4e3900e4a04cc823ef5d14ad0baa617918abe2bfc842e5ab59bb3757b48954d9b66742146abb43e88ae979b68ac1c9dfd8fc4f212c8fef8f7b10ee300236940e07e5561e11cc6906063e29ee9fad00660c77a7c78b16a59eb162342c4115d9296044334e79fb364743f4cecd29aa7545d367a8d7eb127002179126095b18f9039ffd515976ce756449ef5f9402ce95347ffc78eec43681dcbb9e23955e6000a233c1707a34f15bb0561b844c8104148298c4d977bea6fcb499187858170babf2d87f01194eb95f70b10036c503a9f5566795b2eec639bfdd2f70e709d9bf1e93d6e8227f5a6cddcd8777f92a544db8c09f2b3bd9afe7dbdaf6bfa4e24f8c70faea043a00febb18c2312101fc9faca7155d1f2514f60a598b13498ee0c86ef5cd6a235d6fdb5ffcb8991620eee3121a2c3e93290762f2f4e25db9bd46a8946faad5ad719dffc05610236d633817adf54b4eb422be5db1f8440e1c427918b78869cd050715506c78f7147948f39d265954834fa46e0882ad2c9fede213e8bba8b8901550f7304671ff68a4b3c81a473a59af5a357d196141f0c612ec608d7236eefad805804ad9ad72edbce537016916a76ed2adcb01e3235f5061012c6fb26c0e1b9233c28445c7746a2c4cee2c7bf667c66487b2f46321a901b996b1bd5bd9011b74603c29639e7bb2a196d50052b43ff360f76de264bc1a2d438acc2cc36ccd7e3c4c7bfccfd884f36cbdc7f923ab56d1598fee403be5045ea9c08acf424bf20cef6b35765e87fc5c13cb0d8f68532043da343bfae7f9f932b293df770ed43b5d330ac990a7376dded164108a6b9f3ea79c9ca2d7515a30aa7e485140555771ab6e54c2a62ec8277c1891f71792ada5637f79bd5492002cb0fbbe6a3bfd29edcf730f5d9d0074db1892ab5023cde00ee7ad0813151b18dafcdd478e2e048c057b911c46944b28d29a2d856ba6b93c9c4e207f224181a97559915cdf64efab18819d5f1bdfba147f48fb662aa3aa233a60d9b56d1b4296be806d7de7b73a2172e8f73da3702b75459a0544f70a7fa503108eb2d64c3f57a482833962b1b7f48667c60631602101c09352dc5e8305608f50d1c1216912b109d662949370eb40c9f88e635806919f4ed94e8e67debcd494db1b8490e605257d4f82345c780a395e102427fd42fe5643fe246ac670010523716b5c135b9bafca08911fc4ccc03a9d847f08f00bba9fba1558f8b0cbc849ff0ff46b84e5aeaf8bcec55f4194e85379c5884125d73a0f1a17b539fc1dddf2041c2b9e1d3fe4a885f196d6d03c53f1af8b265917e37d4f8476a21666c891c68f0447631869e59b14296e5e255438b387c8515c0f34304fd22d685dfb3d564845829d10802ce8deb69bd12afe73e3fb4f687a2b3c2ee0329441d3073c90b12b5f0603c9f793e33e9db7b4e1d45f158e89e1c37208a93553811c7b628181ee44901f4e964e3286d3cd1409bb0fa055ed8bb4fa57f76b12ec1bf447d863f047f326458a2d394662dec288bee20a0af4a04342a65319b258c9e3112683ab90ce39fdb945706b53d77f234b010eeb14dc5474029735612de88ca506b84b8eac15a7e815bc2852b1555470428ef7b8d19e0462cc7941c8fd6123b7dc44b75896069bd9d739c73466d96727a5c85fb53679902a26026ce319a9b306d81b8c12cc6c1b9bf45b48f47aa504f32eb147d519ccad1dc8263ea5e709a06e9f4c432b5440d78728d04ef9981bcd17dd3f54e6a15a0bf7562547e091baed46d0b95cbce89557338dbe070218156360705085049752a27f040c3bfebf297afa918004e32410db8dc9cc7276da67c89914a5c2654e0637b7b354197eb1840cbf2cd4c64a616c62f6ca76122caba2d0c8c765f7ecefc9519fcf740c7a8af0709a5d0f053eb94b5c37fac40ed50851e799c72f7e003eea28c76a2d151515edb1409b8cec0fb549747a087abde43d69737a2278c41261f7d8cc2ce033a5dba376b3cc9d7c1787dff7ef6c676a0aeba6dc0aa363369d60f3859bf5cc564312dc0db92c27df77de5620ffe2444cf3c93d069311a1e88f37fa29f875622f3b696ee5573d03785c68946171ab09ffaa027ce22aee96fa5002efd8a1ed7f451eaa528ba4cd647d9a4c0d56d4b5b8c4f8cac71454073a7232229572f1d15d6bf54ffd68fb41b55b2058b8ef5f6fb688180336842e12a7b6abcb90dcdd19212aa6ca514569f34c8f068e95c357a6a89a57373ac82d366d85aebaaeb23c68ed520f4013c6644f5d65277516bce67fe736af5bc8691767a9d4ad16fadd9eb3ff2fc548ecd876d850509e02ea213832fa31fb2d0d5abd18616b6a8222b00c71d0456d248ef3cd7d31801fa14f4bcae2c62e76cf6586ff80f5097c67959f98049928de0829a3e1b65b66b824734427ba7b2c0868b0398db27d6f927bb56e16b91136ed4cac354e8d90e9520feb2ee91f3d6e95e11ccce71ee6e57715a20934156a15e053773f1c4ac36c60e8ba362965b62c740b2a82f52979ac78231b1229ed5d63c7a2fb4b874531a3220d9394b33ce29784d57881326499c75286e8171f89f65452d892da2af3108411d940d59a1711527beee6b8caac014bf86132b5939a7854d35a7e82c4587237f1f2c871fa29b99105dc682c66a68245f676d360834a4f2c90d15f55331687e31ea687bd733540d4887b9aca5c68f6fab114ec90e2bb0166a47b8e8c9ce5c5667271c57093a9daa36508a804d3c02b20657a19d7be801a226d503833f6e31dfc2e3b3515d5ba2311f635cf6a6973142d6955ad1366166566e94fdf494e7ffd3eea1777ee28ce541feb00ed377c87502942eaa1b7bd10a1720f1642e99c38646937069ffa89e790e1b897672ae2af1e6ebf8233b059e9ae20fb5cad638c56f2e7d2653db9e1abfd07d457e43e00de15212825c9fae4b2e806e2cf7ea98efc674d4e0c21bffb0f9bab78aeef714a5911152a4114f68796654d4782710f4c117d9e065faa444010307548be042d14975b64ae38f31e41d65926f21c81a59ed1db0dbaebee4fee2cb279d737d1e8b8e1b9e3974fbe53574781089f0d68b3d07d93bf99002bf9a3a9cc29f4c4efd560c888a3351e6751243e8e6350f92a4de71c50b90e0a0d6bc8751932a53561169bad02175d8e23835c80030a89ff3ffbc107f2c65aeced7ef997e58e90542d3fa0b251cee20708b80c19dd354ddd6dba12f944ea51be6be967b2e0c195776d02b88704e411280822dde2391ab6251840f96db797e58c59d0fdb36c9d14333b42cc8ea0d575c39868e6dc4844b4b9e0dea5f54bd101981cf12b56128ee750e04690d9ee75f152953bf6c9261a28c15d081eed86019e0a8922fc4c4cbf9eee60caa7d72f8074aa2541ed2611302946e4d0dfb788202d52010f1aa91254d885a86b1311e607f0218f153bb94e723f961e6e42975e9de6615232f4859e6732db81594bbfe7c26e5939b459e78559b15b1064a4f00bcd4e09914775c34301713478d470bd4255d7e028d161c5c90c0990cbb29adb8e4bb118025d4106488017b0ea5e6025a7fadf3f2d3c4b3ff95c27a4d13bb42b9afd68257d41e331ed6f45399b96a835f3fa8a45aec0ad5ff91d7b6771ef8e3f847ecc9ff27715df20277268f983d9189bc5b62dc0dd3ce2893bf3b3bc81a65163fbfdb9522b02683d575c052bc6d723a7ed55b993641a1eff25a2241060a1807f0250e4bb35e69ef0e5ec1de201c771c43db3c7a2a1d2a832236708ee7b3e21771e0e986aef9563cd2e51b192cb5437776a4a9bc6b479e5bf3e78a0dd4c2abde4d8ba3cab86b76487075e0e3c0149922d4f20ab172b897e30504d6bf0a0057724bbc447a2b2537e7de3e632b6a02f04a05cf6e50d8fc3a20a1511d91b08ee69e34af3208125bd3fca7dc0caad92c47ad53e4998141d8ba13e0b970a44093bfd2971158cfe3b277ab97e1a07129ffe3361f33656bce3e7e5e162a5b9583d9d84ad1e6a00aebfbbd6cede7e36afe8419cda6f129582631bbd6115b4f46e9a71945b4e7ae22b2af6e82f59924878b16c78f212b7c130fc1f895450ca7303208554ee89e9506ba386d74dd706948d393f6b959860a30825a1204f112b9f55629c5b44b7a8282a947678e354f1e49ce7ddea67129e13242f23847e38c66c9407cd6d7a8160fc1443c2b3237fa709dde299205846e04d0d50aedfa63a2a1ad3446a178c9f2517a760259b8c87eb0da43adbe77b3d61b99bf9b2005c4b01f504b574903c57d0fd3c2ad2dc0b29555a6e047c5bea4b223f1f8d3e06360be02e2404530cb281e8113b5cd87e3084a42ebb4064e379f9301e655c8a40f32fd5b7f8113a38292fa485e0cf6a7ebb1c0b341a8df5c5d988314dc44c6be45419404e4ae8d44f71271acc2a6fef39b0edae8b297d14477d1bb420709960e2f40f77af8361fdd73d3d7c00825b90624f7f53b01db072fbcf95914db422fe082f63bef5ae46d5faf7c2d2e06fcaa48bf689ba0bf9c0228b6b8b303b48a1a4a4a8688235638a2fdb0abde631539c31125510b682524fef369a78d5d4217f3d34395aae88e8715d385eafa56bdf853021c9ddf0518ccdf4e215cf5ccd3bb34219663d9f2d7b6e3ceaa117c0d1e82f59a35c22d719e47876dc707b5d7390944ca0553427530dd537deffb6d514d89572e4808aefd19d5fab3ba6165fdfca66ee55c1564e0ac37070f3ef47cfbdb71b84c280c3ba8466a52da2b6fd17d00039377e31719108805cc2fd01be8f71b9e449711cd37f156d2c922b93cbf2a43386fa5fab6ded741383d0b7ed1bd4327f5f1460f9c0f93eef3aebde5d1fb63dac6f4e027e2b956a2d60ef9101b17f64ec02026cb1963fc983cfb468ea9e97659d65c856aa68285495e9122ce943c8a750a163051c1c135020a7df83f30b7c9118ade7274426cc2d42e9e6cab01cfb804616fed10af755495271bebd9dd9a41405b00e15180f752ddf42c3e0d044d3cb8db87294a486ac1877f6c044cf219caee8df1abd27309d60fa19043a58fb49a0739a41a9cb78f1fccbe0078d9953418029ac74aa1d24a77c7329e0abfb38e3e5fa64badf5463feda483cc6ca5fa1f173f9258a8a636b15a432ad1d46ff9eb8f26a74b0a826ed547972d109904e426e0dc4ca02030f0a32de30abd16b234f1558610a37e9e04152a93dfc02b6599e11b84f02ae65820d762c312c0e687131ad51099ce5b85e07aef3f372f022d92251ed55cf604a3b358e7fcdf8e84795f8c38861243ca0bb4fdfa96d473372834b1dc9279098faf5328df7944face29e0b49e725bef457bdd2e668deed09010a022ff962a8d22a121706ee4c54fb011842ddab1ae3f4127cbe10b35c436ad5645b277ae607fb5a114f1e390cca8dd1a25a1d6da9b526bd79ec22acbc8bd4f74a54b41d838ccd4db91f1b28a5724b357418e587e78ddd1b338268d6b3b2dd631f2d0253f9d38dfab8565ac73ff5278f48e7f9fd06c033b86f55f815453eb5167f75e40645fcb740764211c0f20bd8db400b93896ebcf2d2392b0bb36ad7e9187745200da37dcd1a593bd549d488c62475af9dccf86b641e8160d5782b02ee2109e0148a111c02a16c29bf7a778be842d18cabaad987ff6e7c1ced214780972f55014a51ed0bf71f3d1e519a7a842b20247f371cd9a0d5849952e9b40dd144cb52bf482f754ab69344266a150fae81cc3d8cd176a80fdf3c7d4efcb3757ce3dec7af3d1b525804c2e33de4f20d457a3d07dd16279086c86df6b93ec1715967de51e4585494c3bf428f3882381192fb42b53025e2b2496381f6b997e071bbc55f39002e7355efb0091a420a597dac61f4f2106be2e2b5d47f65a34b921b4ccf303e440b4c1a980eb5786c6fa8884d418ae8a47b70add916046f40d14abe92515b4aa8d0117a6ea67cfc26a2e472f19b937aa1be87c984f9692103dc7d50ff3841def9fc8840b19e3f024731f26a31b21b3ae4d87b0a3ae0745d42dfef791bc741f3d2fdbffbdb5e50ee1e2897cc0eafc1f66d49c3d76746d125ad35a962133341096e8e9b1aead9217d5d7f8e53443c7cdfdefce81de0efb6fa715530386e2190cefe3fd8125cf1f0831cced6493060e08c10db3be97b69fd17e7edbee71f4fb495fdedb7d0e79db03e1307983c014e42a1bfda14a8c9f6d90d935c55d6d7b3a99f9f6944d43bf917fb46b821d5da52405f18488cd551db308bb262cea64dba211f8a169095b9677cd03d945ecfe835e54c79064efd786e73387ed7124eae03d924c82dc04f6d26919211bc0da4f4336c3e7074382fe49ea66f6fe31f2f189fd262415d01ff434cf8d7080e6c8620673dc6d11b94eb223131f59ecf5c50c30e5d902a79ad0dcdbe972362a38cbda4cc1850f5ac5342cf82e7292a02ffa0b604278ad5d32192e0bc1654406f657aba9600cfcfe00fb77347fc90baa41927035137ac0b84234a0e4d45700ad5c600252c0e5defde907b051d7f2f157d93b14d97fd2dd212e8a092ab361a03aaad1a133d4309e4ee64b0be3d24b10a57021bbf3374aa8a967037cb62fb66651b6adc280bcafc4b804fab0bd43ea12f0b591fe323a3530bba9c6f8939ab6659b9ad0f23f00c2c928962e2d3b29c5daf573cdbe5704d9106c38655180ca441217a3979effd5279cc1c5ee2409afa5df7c1fa67fc4771423fa1851f18540fd65af55f5df26c0f353e5afff8d398388158fb8cecb6ec6bd6c6d40f42814417682e2532aac24aa8ac35d77d680b7e9a8e9c04401c34f72a26ae7bdace5b10ce3e2448cd5c84557c3608af4eb64f66c57d82b26ef6a0c9c7277be70869f428f50e57f85520fad70ed037be0bfebf914c61f2206a6fbb9ec0578b285122bad24f042cacac9301674ec940ac460962b24ecad3b720769685d8f6f2ead4c9f2690d8e60f8060e84fb55ec7e127129fbae23e3de88d2a3b6fd8863d15f6f4752db386573090bbd85b095a05acc5d27eae9881c94bbf9c15edd8da509dcd395f6331d132d58cc6f94b03db14d436272614acca6c1d83c58d20b01c1b92cf76683ad91890ee4cf5ebc3cf248512d8cf6f9136b654f8d6179bcb0c4972752843220b3afa943039b033f54f9bb6e7bcaea3e4781563e7255fd46cd545bd88ce323aa3d542b4140156deb2585f0ffd3f8f28ed9a6f0d1969dd7e0803b7f1ab41314d95dc6d3208a53b149603890794986e195ca0988bbec9b17dea8b511e3a46ecb9bc9ea462203a08c84def7b63c9680c91104823a580cffd7e70c040cfcf6ef25884c45c31bd84a5f758f7837ed9ea586bc035dd9da404fb349376c121e6484638ed57a32635a3474a0856f6a02f3631ce6fb54b375dfa45ef71ed0e1e1108b0243bc6a3b30ab25f1f4fbbbbcdc70fc209ac3a250747ec7b411805d7ecf28eb2053a23cf649e37ef894e96e4a9287c659659431344f5406e00641033641efddb1a2b8792b21137f0596d5fc7c9396603d7511c2572f2e7e3f5d0e761dbba7778fd215e9b21733d078ee458b242368099df1d4804823cba50ee98e0a89968c5e4cb7d52373497ebc829179b175db79dcdb92bb4d6f561c2de7e9601044d54a4ef08bf53d2842c6c0ed8d7d8de9ded7ae8fc70ea77036fe19fb77dd38dd7850a8ccff60969e295494d0f388fd20194acb23e819e9735a1bdd853b3dd0711ee0c064a7009c361ddfe5dc6744c2e7c56431cf634840f0c7161994dc802fbbefe1c59cb8f8ea121a00de81ab064e8a6d8478756e69207c787934f4d85d5ad07eeed5aa3f20cae0633940935460d31d1d60dde62a3f5fec4ed9df50dba1ffc022df082f8e1600515d5e807b1d6ae7aa9138aad40a710c17fadd6d6dd4b8b4c865a621b09bde63fa19c7d7de9f364bc5614e1a82a02c27e43a7ae031fa6b12e6af06d28ce4d94eae0be6ff92c554cd513386cb15641646ac3a1e4489eca569a4ed8e5ba0bb076e594ed2124e8a42d7bfd41df5b80a539d9b341a45a6e326a041690116e644484ce971f4480b8045513c7919edc43690ae9898d83fb86466158a2465f3cac366687d6544e6fbf1f3a829ade21bb9422e284c6423ac9adfc6c51c95b373b5695af60334a6ba4748201d46c95d91c7fbe3582b2d1bc27dc48cccb32b22cac6110cc1d748734f7f26f1e5df53d1e2cbcf1f20105e6e1baed995cc2d574248c2e25f3b891707803dce9a5fb6867c9eb483ba24f202fd3c35e235c13ca9a4eb1fffda56691962b64d8ef80387abddee7fb429e0725f5bc1dd5e6474c1184585a7bf86a786086edd37aba8d63eb37a0d0d4696c16b69507a2f16d095dddd6976ab527d88114239b5b4254583b37ca5fb1ec62812d773ad1fe9df3bf056b5d5f3a067548cc13e271100211cf8a8fb4eb69671ecde4c6ff340944fc91e18c78956e0d6a669372effb963d80ee499cb24db8c559af744307dd4fcbe53e0e2ce29be8a5ca446895f63ab5c1788768873a4a7a6b469953f4669b80fa79c5bca8e5377f061c492145ebc3be19f3f17be13b0699f84a894ac9dc9fc083f96a13e000fad7fc78cfb674335b93ceffb1cbdf093ac46887ffdd212d85ed1e925ad307fb19572a658c6b938db782fd2de2f4d64fc98b0eb4cf5cbc20499e6765a3042ffc6e1694fa2747620de8775074509ca47442951984ae18990c557bb7cfb5d3091b58d1112e5ea696021ea52bf75778cf12f2fbcd2eb8deb3b2a48b26d36d5edddb8a64de777e154057cb9f23fcf32846d091d30ee81dc6336ccd949669084e3c56081f7ce8e22862be1912e213df9e03b89a1c0f45d8e3e1e75d69b28e179d9a76bde3120cd94073e2395f6952e7823f12ca02fdc4c438c1c2af1e58f52b9b324c5f90097de37e727c77cc21dcfff0ccb28f51eab2afcd2269f667e6584290a80999f94fd9b31906a5983971ac4713b82f6eaa9ee80b7f90b29180d129db3befb28c22f71646a533e0fda0b0413c84cf636b592a33c01280031371073689ca268d213245ed398f51f280604e50d5088234df67261fdcd26ced3f4911b88a0488947ce0825a1254732ff56bedeb19d5467d14588e60d0fbdde3cf6c9a70d6394eb12ebbc5207e16c6fbcf745b518f170e34e29e482c2ad6b30cbccdbe450c381e19834b3f69c55c50ca4e3996d2889280ba5870f54951468115a5ad3112969d678ca5eb92060447b00b6c73adf0656075c0c1f74f94778661e1271f39d3a803812439f8b4656348f35782ee46e29787a3bba13326d3cdb9c4c7662321e986c1234140a141f15aec6583b509215cfecc9d3b6490c724f1c8226fc88326b7c386e8777f83c04fe3fed4f963c9551c2fbb9f4a8c5ddeae17a2a40644b3bcccac21753faa4faecd91fd5423b073355f5b1d61610fdb77977ed40c694af8cd2cd07c04e2fe261e506260d3f61d2237b27f1a47b61b72a07ad3daabb0f70d9d61119938857a8d16cc65e992a79d3ab17f5b07f2925e2e47a4793fe8bfc3a760d08c21543b41241b01ed7a824b95f76b7fb359522421783081055847c34b943fe54949e21cc257a43e33cbe4566c04578861f7fc74e8da3a971be95086d9294aa880b426ad3e7e40b54bc1e316570826bc08ed8ba196b5622a20d9b458e77652410fbc8cd8b0530d6b94efe2e70eb027fe447764345ac8521739e70b3197bf34d68e3d12c79b4a962ec98c36cbb661ae6384326ab117c769c42030b0df6551fb99a1dc3a73cdd5df320be630dd507b6fdab528fbc50623fd61e6b27c5f8dbf72186648fc91c83596faf5fc03b466cc9abc8ca34db978434782d0bd01d3e3a4371db3035a84a0f175ace46d068a1f4158e99d6917ea6d744a61167886528a06bb9cad94731f647d57ba7e4736cd57e64b20d35a279ce0d593d6c841ba1f0f24a434c00f24a9e36ba5fcec5fc0a0a3ee85d09cd9d2e34756fc36873c406bd38422b3e140785b5a85c4b9d421370a427066d416f0683fd4454f1987ec1e85eaab9ac080af8d92a90a58b29260009013f167a0d1049a307d2a95e4b34a7360817c2325bb0b401b83186d5d89eec335f6c6545ca604bae57a3e8aad157be06e096874e02694cc91ff6d28a6569b33a8a4fd656d943fb389f1b04272d4f88ca8ea83907ea63452947c1b5b92a86f207ad8776f25e721a527974d7325eade1144998161eb8be1481990020b0ff04fe4c0feb2f65295dfee40a57daa5b7f8627c10e6748e6a76cd2ba72f0a02399559457fc88be8b095ff9a915d1fb07c0154529e72e18b2f3ab771fcc9839ea1beb61fcbb76884d4049180981c8c2e875cc1edf24895c68da98fc210d728d1a2a0144082fdc2fc04c4f7248a813a8faa62bb82483e5a894807fd57133d86e730f63f1fc73de6f122ed8601ff88a9f3be7451c358789dcb25091261ef4c0c902ed88d4a1ed7b085ba455fd3c0b8178eda5b2596be4f9800095d5177518b7f7e39e8af3f99ab975ad7b9c7f4332c94d023c76babccbfb0ffc0b091e3624e0fa8570e8d7353d098e8e9edbb82e969644f733b0244165caec13e56323f085b89cc79a48a066dc774fd810faa4213ef1ba2ac538e8d069ecf56a11e0b4274fe8e9e0d3a206252db4fe09c2a96652c1a708e6083517535fefb1e537fcf8aabbf3f907471481b8eb954e64dbc0d230e3958bbf3cd3d70c7d4ba4547d00ffefcb6aa36c62bf81a18f86bc8b9a1a0e670795830810d79388ce76a0e0a827da865412c925ca2d7673e3177a4307399266e2bfd255de1dd687c42cf3db3a72300b1512b8771e7fe73e4bf9476565215e3f06df92b0fcf476690a3d1c565fbd9a3da360d0374f1fb51767cfc46edfbdf662b0f31d5150e94427ecd1c2b1ce0d0de122d14b47f8f1e0ed74bacc99bd029cde1f735f5f2414ce779358a0137723faebadd36daeb9b6a5493e0a41644b88b4192f606e822ac305834cbcef29fc89b03747fba81a3846e6b33ef4003b93f328993b452d37ec635f4929cb02b0e543c6911e7bcdc8333df4eb83fea92189f235362b2a7ca05b5c0b70a52a204c1bd343815682f968e8d8707580551682a6e7661784887184427e44431ddec45464cab494424aa5bbf7ef53b5bce3069faf819ea9d0b05946be4ada70116542fa9bb3feca1b09fe9857f110eaf6e525907076054ed06e748691933ba6b2cba228491b5577c022a934396cd1b7c76d501a083dfca4743a5615b2aea4ad8ecf99e126b03511b876952ed48006df5deacb018a93c96e7f94c9b3f3c5158b30eab6d325864b3fdb94bc1e2fd56052e038134845e176ad503b5d985c875666a0fd15d2411d0672a511a0a3e3f1f01157bfb1bd3f5cf4763127231daf931f45ad8b29d4c29f0b9717e7d4d4a64236f2ba0b4193aaf8e77835fc9769c3d6096a41e52fcebc4315011fdd8497ec9d43b77e67f68a801ef7d2df676cb79e9c4c87a683becb29d0c0316c91597fd2eac2b2c2917d70ee49439177de62668fc30d2c97e6eab5d4d66b6804ab4a0cdf53a6a869ed917f3a9a91a75b4e97c23c79dbbe85c2366af678a44ffff948d665aaa0837a21d270ca2ff2fbf695707f5afb9d86e6007c9f8b50fa6945ed30ece6ba44b5d03a511e79a18247fe9100f8c078eeae3eec92d7819144cd4833c64ee708d6c9da216c9b2b23bccd965b80b85c74af41eaee8c24a0b433dbe55213f49f4da5e5d1d95078b415b5acfe834584da8f0fed6ea175e2e28c567c23fee27e53f8d6c1032e14a0eeed588e589681a227adc1678f667ce12b15d3085d425cfcaeb0d05089aba90f744c228933127c407f7732482677386dc6571e1dccd579126233e08a352409760a6c0cc47f94f6ea951992dae3e0e251ada8b46c9c92086bb4a9b68409fe18db02b87af48127b0b1c12f4f314bd3919a95cfe469f37087e55a2314c5365e0ac373558af448d47c9cbed6b765867bf986a958fd3cffdb27386d696370df9096fde0d0174d5acff4e3219e66d64b5b99c6c0f4a28189de05df892231bfde16ebc8315a25a9f8937073b222097a0948973fee5ee95676b5cf4a90862724bf2632d19a86f887112190cf6e985cb8f3ae483da8801c4e94e188d367bfd10a2b7def164cef25ef67342783a49bc4aaeb0154240821ad95142528568407b1987c784d5cb28793998ae433c8205676e4d47bdaba630dbd934e53216520c081888947c69a0970c8552226a16e823707f441660c51954ec6569d29a27de67fc443753090ee70d4db68144e53267d22cccaed0a01faa1143123ea4adcc465f2e29671b555b066f04253616f97461e0dfb3850961dd87c2b8bfab5d3a1728abb52872d9a73ce19ba250bcf090018f43ae45739c4e8eb60e5e1a0bafe86a79df58477f4b6ae615cb134ea16ac2917da59a54445668b4a53887ce22fd68ab1e61762aaa3e82fbf81c276f2a21545297da0846974d2547da309569693b06dec542041631ef956bf72b917869f4426e554e9cfffa961c73e592d208c6cd39bb8d68666cdc00ff66f40ca55638892ab3d6e05c182af5436cccaf8e78207a88fbbb97f3002b7eeaeb4c406eff718efbfc2befd8d9b7cd8e7f1c3eb2e8fc0e09a94773b4702a28c08e46f89cf0dd4ee07a95004783e4a1c51adaa68935cf876587fc5ee165ff0257818a2efa29bf36064cdb77b3340e5abb7cbdda5cd7fd2f0ae4cd89213710b4f984ef1b61bb0c13a00878bec9dbf2bae8f67a9020456b3854198c4a9649934290a8c1bcbf7cfda019bbba128ab9735aa7b541a13975fde2f4c024946d285f4c7c710d324115aa0471639370aacdf6efb5966b1f14fc20c47aaad976522c51b07988c7bb5573afb86c80696e3b3b7d3a9143830705c4c736cd37dd2c474b0990c9fbbfc7737aa0297361c0cd20cc619e2e2696e5fed251bfa32f54a30c5ec40e0d35442b5b19ccccb426996bef33c374b3ae164a9fcc491056b35e19983833469c3a92edc531bd3ecb86d2e1c2f63d866d3c803fd8814c4e8e3e29dfde2775a66f68360011061144546764467016b08caa9ea43b7b04b335647aa713946471ba1aa2c399feb0b9f47d887882cd0a5e507523f19b91e434f0a3cd09a95f3c183df7b96ee10808a73d3f1f54729a46e912b682f6f70d2601708fa63db26d2029219a66d03a48971e1cc030988240f87939f5b1f21b7eb802d501f7da22d36aeeed7d59ee0c9f53802abc0e7fc4102c330efbf18de8ffadfe56e672147bbc57291a5fd02aa23dea2feb713a07d07f3a5264fb425940044fe55fa537c34cf32c3ddadfdd36659d94f4e050cd03e97c46ec11a9b0a71187f536d33b83fad156646df5d531e8c6cd7a4d341b35e7210a19683e5c31cb091d7eb3939bdd4569d459af1daea51def82bf7c7fda1d37a890fb407676e4a3057318beffd80a05da971d289a6d1be01f10ec87000b0ff547d44ca2c922441cd29c68b5fcc25239ae023674ede0ea33a100f358f4e15a59ee5fc2f72f7cec9d9fb8c74e10fa7f036f2c5154f775a25ab56893d908f5df676e47cc7fc7fe94a2b5f35f8672426d3a994824d1aa281b5c9de915214d63c658843f12e86607ebaf78f8d68ff08a16af769b00b4b8ad5d4c11c8dc05b90a24c67b9d98f1bb17182e57adc039c03def9915f06138612eedd7de5b978198919e6319015e69ae54cdc1eca736b1e5cc7aafb0386221e76f71235dac50ddc0938aa593b16b93074e80fbb9886348f0f0994813c02e0efdb14b81317e1228a2a5de1e295843ba036f765c7e084cea68c7c3d51ea86626306658301d3bc773145e87c29b722faef42ad633d78bc167aa5abc3cfd80354af03af27b770704fba6d68d129ee1acac403c8001deda83178ad8321f2541608ba10909441590cc5fb68961631bb59e7e849432cde49c1250a40a1c4b7cff070f04c0e4a76b9cccac9af2ccc2d7bbbfa5bff3bd7ba0c00278f5783d334a3153c6581ee3ff0db53a7b7a19b1486abf8f0d266c0f96fa7516acfb475a1233653cff5674e01b2d1c7df9ef8e318a4a86e67bdaf9f77553370d9031ed8ce06dbb6b1ee00043e285aa5cd94c6a3bfe2047ac6355800a3f57c8f74cd86f857ce8251545fbc90b4e166480e748f03e3c5ee009e01235588c9c7624fa295e1a1405d4268185a2393e19fb3f7eca3c86e7684ae416e3768a7525d15f62ef7fcd1d24035343ad19fb7fa7b05d66ded7ebb6fa81bc8fc562f96eaeccd7a8c3a37063bbdd6e3acd165ddfe7c1f14a31a10a47ae4d95aac84628fb10d05a91586e0ebe317345f729414391925df593edd2c421658782de085802d97fa9283dd47fb0836618385bacf6b47aa0a4f2a1985cc9d2aefaf77c61fbd0a93546652700d64ae31dc54c83f6837d12eeb765d72423dbd0eb0bcafb91a8ae561325cc4a7f2045a23e252901cbcc4aab144c83ba4e9c54078eefa06f8281cd0a2bc5956980dc77281e9349e9dd5e3c968e803f74aba7dbe4af05be0856c98f223e6a46a05f82cded44352d53ce6975e6e6dc7cae8401ce46af19a5b715735b31913bfc53e689528734772772a39b9b300a080c0649403e08667f020ec55a70e3fcb6604a5e873267293d11dc07456242378360d16b6e302147eff8a53809734cc2fe63c8ab32d8094e6230504276e470eca6ea8badaa2a1adb6e221cd02f095548f55fdd446c0a033efc556e4b607fae5e867b9516ccbeb8d77613775c9a9a88317730b097c610f26ea44bf2a71e1b19f066bc1b25bbc12510169381838d53d11769a43108674d365c3315d7069524be3173092a4e4102679b2f7a8f17a2f876b0393c39f2342632aef8305f0d96c837cdb931e92caa7278b7d468324bc00c5af4a0d39586fbff1a2f3c70fc29699abd5269675d3b5445d9302f70803146c2b5595892c1d8b2164b52696a9e44c5441191fd087ed8686e850b4eefa2c3ab5fbe5558c98dc6eaed5663e21779a56e6046e2b335818d42c6aa561421d0606e78a065e7a9a4bc678b46839a2fb858d669518eb4cf8e2add95467b49ca336ab42da495f09208368b785e35c670149329c3518496b0877aa6ecc634961ac6eee09ebe117c19b47536341cab2d6005f6b9773d74535675ebd1e13236d9be31156ed6e3af4cb27bfadbbc0a151d7124b45b1922712452422baaf52ab008e4cebbe3c7a73459d502d8a9922dca730f2b7f30993b1fe117c79eb213a4c1f987fd787cff20753fa97888321e6e36ce69b96833f5ba2e91525d502b44f1c923e3af925958e7391a92df820b8136945307aeda907a7c614cd52a64c2a19cf7bd0f7d49eff7efe2d8956767e4c7d1f48222bff17b6c903943b6afe028e47201f54301b65720a86fee33e05d0ba35f4b355ac630c2854233cedb140f2a4960ea2aafa5fe8882b67ad4e053663be1f9165709a7930682649ffa1ba29d25c907ff387178446a3ea7ef43385983ff99e7153e31d580979707f2fba6f6a03a0476dc5994495c2f9b0f2ab2815d3f9e96e2346c0f09ab2125bbc69f7e6fc16b87f5deab5ff161155c85b12d4a89aed78ea61d5462c25e0e74570c1101ca4306154cd8c3740dc4622bc4e1f9cf6d09d1662dc83257230f46a7cf8e7229de632709f283c0e0541281229f9050a2fec84c0782d09533bd5251c63be20ee385314f51da1a5660e05157794cb355bb1c132934c6ae990c2ecf091fab58dee73cb9e27356c6972c0b967c3e523e0355b8d1e6dd8a3b454a871448725e2673decfa3d7ba0180b5e0bbd8a4ff19e5dba2e93a5b727f24ad37690b3aeef515078c1fc153801fb19eb121b1f6041ce38c353c4f4a3823d7e11c1e33908b2590d4b66d792aa133904a620ce49c2c2e50bfbf38f125331fdec30c9dcee12dbd85cd8573a21c92f3799b02a37542074f97037ca2806c4e7f7bfc676784e090de493f4336281e8557d9af3d45980154b3005ee96a9e230b53a2ee2352605c8aa4cd5bec7e5c4099907465794f2a09fd9685276acc95aa5b746d6b5511e4ea849874456f8e679dc2777f531e63193d84e8f5459f44f6c69da5886c0d3404bf61a6631c27d8ad69eae31825a9d8109b08cd310ef911835b2bbbd1146636628e883259275d283f003ce42ebcadf76ba68eb7eecfea974e9888863f316a37784de612de6361e8b918c9cf34157a5b3a0d51261fc5c60971b88314467906ca918e6a81d0cae6e26049bd276049e9105711f5ef62c8ab5550eb4ae0921e619e46baf8a9a8bc62d9f988302b481ec140efeef4b1460f959a1649574c2daa0a15de1162dd65d2c8317cabdf10ef2178214a50860683b33fbe08c8e9663482117d05af5854071da3ad56a9190bb01b0701f1888ecb12dc253779ff4ec60c8662ebcb7a1df371c1c496a6e27a37f09f553159e25c16e38eaf03df5e703f6d7a3d30ad14869f4e531277d29a5d4a38ba528c2faec966c23123d76135a4d256bc42c136b645b28e6d1253cdb3375b1b1474de32857bfe788f5f5a55b93f39d9224164c214351097adb3022fe0b1e6924c5e477394f7ed876e3172519700c30557031abe9c2901fcbe3a521e19632ce6d302d5cfe00afbff45167af5305005b81842d1dc62328cc02c764aaeff8b5c163fe25b6dfac4d41382f2cbf7a2d02fb4986f47375544eaf5729a48adc27675e321c7f767f36a4592f2ee6f6c205dd89dae3d9106b01759709c6ab1ebe2c442512182f30aec90dc805bcd5806c99a9011b9526058c56857bfc291425299537247e40caceb20b9fc0e419912709ea2b8c2b15f0bb1e2b7066a84375c3ecd692c6c3cf9c383cdf086943efbd0f6984410e1e5148e633896900e44637fbebc01f028fe3d40a7f42bf8b015137a8e20645f256b272ec7f1fbbaf09f8dedd8834cc366a265c8dd30dea520206cb2fb03da6e1cbe1dfca78aed5b69dcab008a38c9711e0a16af38dcb3778d03c026972d4687e3c55da9f99ccf2b68b6b76faac91943453c21f516d6e652499a8f6e7b6808a363121cac5cdf99e1adfddf76d57911c11f2d2ad2c58666efe9ee6ac21a13a4ce6c292da90005c962a85f3f2088f94eefa7a0670ecf591e65ad548af29c349ddd9b5f4e67ee8fc4dca35447b7a36e526434accc7c77e675e5dbb9047aa2e34daf798a08fa18bd7baf4acfc3cc578af95536cf5dad8896a16283a875f6cdf0854a039d6b96f2c6ed8d05a5d96fef9086df72ff8d733b76e3358676bb1592650e729331712051534121771d34408e3de183a39aaf945f257f00ba4f4aeb94361153e95f0714aa6b1e49d3a5a47f2a590cb6623c195694de92025afa82a734ed333dada01a53926655819d69ce4e466e0f6f4e9a382b9f486449e84b2aa0496c07c0fb8d0fdcd08c50d04309c543bff1e2aa9b75f6a71d21f4c012dfb457cb7efa6288a9695a2d1057b54c1509fcd68aee163e7881673f5e46d9e8d69bb58e406ea587876734d5be2f437f938f5a94daeb8646000e8963e835ce8d0386cc2dcab83f318323fecf0cf0e56769c62c3f0109eb4aa1ddf29aad7295ba998f5f4d078f272a7f58f1b0069145a9f9481a2ae5ccbae117657ab9fe62cb9b219a87d2f912cb15d70f5f814d9ddc4acbce83b4df15824c63c7dc747d394120d8eea72ddf7c78e17322f56fa003295fb65ebf175b1232b3064895e2ee8d626d9996efa52bde3af63f4db5cdd049e09265503d6c0558f22644379b2e2bae1671b2b9566a4c6646bf951f637501b268e45c05d8cc9840a7054ccd85f6dfa9ea5d38c2715868fd8cde7520a98069aa0e2ba5630fe85201048be47ce0cb55e1beabb3f33227506315da8103877c63c8eeb2dee728bdc5fde797fba6acbbd919dd67fd7f45f40215a956af22fec3fba9bb178c13f621758f495c48b60d3d84c88de3cb238a0546327716b24f2fe382b6b632df0f97e2453b272d40edcff8f13ad3fa08d7a45371f3eb4f0631f2c6a5b495e6a74b5dc6dfe9dc8ac13b76a99260668a5f7815af1843798d03483993a2f1c64d2daf81fb55ce537a5a163c89b2ab6bc4543b3f69d6feae1ebb4bcdf5a7cc408c1b75c6407308970da71743bfc8243413170ed3da15944a27a11be4684ff6c18a18a7ed8ea163a391278f84177617c81d9557698972f28d6495320c20e66d75c3f9cde7357f842b33f40b9e500bdd90f870da1760c3a7a1050a7094d429abffa91f55e425ba3535440a67a236147e260a7f45d6bbeb914fe0c06b9c8ea997596a2721cdee68b4345877a299010a7f14e970afa6e6e3dce94cfb08423da3e93d5bbe5978ae82fff2bbd91ee0510bfd92281b098cf4e919237efd6a6305a6ad0b038b7e471f6bb72218e815eab0da5789441aa056fe29014049e462fdf8e52a58a8bf01f1ed070900323236b32c1026a3a9b326c9afe02cba3783594e0d488e0e76a5da12f851ad1179045d7ddb8eb22d37e6dad155a85e97e19e70b01d748149fc60cdc602ae6b53a836a276d030fad6d67bf081c8869b0c0ffb1d12da94633b57017af2875e2724f4c32ab7fa6d9b1fa8a115d3b368dc1cdcc869e1768daffd8da7e4203d4edbe3e8fc7b7d05eb6ceab745c63bf13e98d6ada22c2696868dbe2bbefcc5d556d0cbff52fb62854a1e3760594a84950d5803f2275d66933cf8f96e102b5519ebcfb2c5a620805fa1cb7987040cc36594b3120a064269fb2ee20632fc038b1d4b8fec3663dd782690e91fa3c693508df31c08b83b20ec68ff0fe91cd696eae413055d65a8a05fb5e5aa9f8bd0e9085d10bc8504d1030b2ba97898788032b10c14451ede41f538902afa24e43b3ae27d4cdedb58c07233eefafc960529bf50904db0816a8743bf55220cd27d66d26a1bbeb142195d3bc3f98458d578f15a9dfd769aafd63f0f8032e7159be4cf037ea434df64a05c16229fd5adf8c598cec454391100fbc6b75418ad47a89c1fba325068b572dd631eca9f8335e7ea8698b6001eceb5dede8507167e930462b45b04643870308c197364c1f384c60554896c1f4657a6124e71564d5ef88c899ca190a2651d07b67570f640daebbea0fbc12b4405e1735a5b7bad537327deca7eb26855cfcecfd8c1272bb1ab19fc89a52761151f86071903f64fc9838dc264b8912386b722b1475045632922656311d243c6f3e96355084fb5ab978ff766f6f491e4a3cde0a4747b09032422440c4886204603e3d7831a6bcac47335eda09452dc0ce6eb88baf04d2c3c059766fafb58d178d08c4cc3bb83df953be7fd1031ec8f865a317271a93724b91cc08f4ee98c882b539ed1dde9caa5c648011e0c285a4d64b79d6616b7ee47a1538e7f868d9e0b72ab535ce6a6a262d41df9281caa7a589a5bf227513bd137fdc50b03061f0c82a126625da268bfc7142a81dcc44f32b408685ea423231c71d157faae52de9fd4f3bafc85e6fad47d8aa4bc171766a8e21b79ad773959ea4c4d0634f1935e40b4672c1c92a8ecf339e5100516b5036a63014e12610ec57528469ac44792977f9c2510ed25ac1b66a25088bdf9d3aace20a7d2715e68464f51851e647816e347a9b099bf9bf6a410cdecccd13d5b821cb8e75f5f5bce21775f774ba995fc2206645efe7c328673a93b26265a1833ab21f1131f605a4bbd1c1b4483b1f4d150c70d91bf9618346de169e35b4fb191154e9cd9f41b4b59b6c35b981501f7869fe3e5173829d9d1029271145a1e14b8a6cbbf1b81f0222b27ec65c4c34b4c00a3ef276c51d339812199b13be0dbdc1db03892789dbfb72755740347b75020a3499a9a094fac96c406daa1b690ceb69738c1d8699a55e1a225482d6ce243f5c4532114241a2132235e86a53c7abf3ad077065eb63ca4076b4a7b339bbb57250d4a44c20992ff3295869e09cedf4d670af82e696463369bc2a2eb395676f426fd159aee22e0d279de532cc3a5ea6a2349fa1b613655649d5fc97d0d1afdb14b3219cfd3d0e6ec4d97bf6bbd9eb263d287e92e5a232d4b61a86f1c152b14235101af2ba8c95c18bbb35915873eb94cd755ce173c1a4f73fd8b099265368f6866c0ed1d15d05d01d61de720227ebb75153d61a34cdcce1fd7a41bfd48bce0e67807d6b2774140dc97d4054a4835b3d4e7e56d0147f5c66150f5cf993218caa2f6536e1bec1d2861d03e20bd866cef35bc20bf7eaebf9cb79b3c82f14b55dd9329f9e08cdaabdc812b44e06ea8c2eae7366dbebf9e8dd6bc7bcc635e5e875415d4fd271f7b4bcb182c3f09374454c1bc9bf245608c10be3a0d7f9cd61455a44de16bdb46d8a2fe405544fb3a89ebca8a45412ab014ad0882f65b9e2e532c5be5975094f81c1570281f922b63eaa108a18174122b55dc8bc2590d299b1b0359e30c04ed54951a206ea512a35b7fd1fe251fa568aebcc0431749fc864e327bf291ffc3670d9a5fdc0193bba39475fdbb883c91316d1c4ac519e20dc72321f813b237f8c18d471f80c16d0eff06c5249782c725d0b16cfd630fd05ea93d141f11b7a9af74762afd3fb584b750bac15dde47df0184500fb9510efd309fdc4e3a7d548a3e48fb541646258a370c307fcead3bb2a36fcaf196f848f4e45ba41fcaae717b984e2c75dd81d8a470823b561470075cfd9bc0e3eeb5dbfc281b366376e70506c052a12b622279196e3412d45f2ea83a8de178a344de96e175e4720e4c6e6d624c558861e910785f4a149fbbaab809900e19e97c5b7c0ad723b1f325a9c3e6159602bd9933bb1d8add1118758bdf19a5d60ff6908de62b8b2e1e933958cfba9d8200627e8f08b9c5261b632458f0ce487af50cf7a8a74ce7de02526c1a8d880557ae0219aa3deb32a755e917e70ace44c743e2c7c64512a92645124c81e1964c198ff3058b3c1ff5c4259783b78e738512d64652b386907facfcfe0d2245e3739891846a5e11d61585a48dd35a276e7addabd604ce304c6776fc11054b88be3f126a7ccbb188691a9fb96c68be5eb162d21ad64c333921fd045bf517c29cd8f36c74739e5a078ba6c7e1e9a47a1a2e904ba71371228e55a041c7fa722f1efd2ee7708f20bde020783226fa02041e0ba809c116bf97bb5e950409a81dba94398fdb7cea388878e83d17b9ddd12f4898fa2e006c677a8a5743e94bff728a5ffccad99761268b57441abe6b52469c5605ec41f3f27014b5af36ce91d85f0de5ddbc799a191ee3331c6382b5deebb0e45f03056ca45ed820ddbb1225e9046395d6590214b1ac5f990a47bc5d3e10a2ef831b37d52a1b5c6931ecdb08d52657584e477b4ee6f5a01b192ac3c8b1e52688a2ffbc5dd8462ef1c0cad58489452e0150aab7d04be745a6a0955103e0f1cf5361e664b91297f829bb72092ba45692deaba4c2e705f8ae53499dcff7a3586e2f1f3e1a143f083e41c6a9749c34686ad12c5ce544faac62e0332f9f801326215a0331b17fb1e54a61828ae6c8f02073bb1f60f97730e07f69d7a6ca52bcb066c6f72fb4de2ae5089f05c145ce7231c52c5c0640a196bb8b7f085afac4719578916af6e91a91163bb2d721a29d402134b27d07909bdca14e797bcdabd0db627a6cebcc180aa15ca953012149eb221e0f32c407ebca24eaf4a79b04af51a63ef3357a8ac93647de46ae79474faf462b4a2a7ce86e5d43ab12706ed779ecc28cc7ba8f8dbfa3555b28b563620706f82194ea7b65bbc99f8c348c3b4bd6d0b78ca31f5779a67a416f9b40d995ba1179078ee6db7b94ce60e3d7a896195e7e380dfa4af03753bc18fdbef7e5e78c0db00587c2b04889e297a83c8daa3b17bfad9d13368e7d4a4a4664c08e0c11a385c60964a66e3da0dde1cf0b8f2d954014266e9081b8943791faa06f564ab59f304824a4caeba721a5b64979af4b41b9d44121db627fe988e59871efe872eac0c6173160241076f2c09ef42394501cf45bd4c3ecbd2543e30a95bacff76d58c2af690fe549f53b2d7c2f45b32982bf2a4eae5c5e5b3dfb74aaf5cd1aaf2095cf776914f4d934bd68b6be20df5158c8753de03d2829d9c995147509fe8ca744483c422494cf274fa1850523f094641bc31df1fe322f4d6734ba6975de655677216f4c2033db6901e31316fee1c23d07f0835bd3182d9dee43bca72f5b0b6f1358cf2130aa2e5ce0c0a0f6a442451ff4765e7b962a9a800123f992f5ca7b75bfd050c571833fd4ec1000b81eb703b9324841a77818927e30b9957751bb523de3a7886e498b8485f7db6ae4c6009162207b5a2dfd63491017378d89427a307bc3f84ee518e95117e47fbc56ca97e7c4f44bdc7e76847b094ffb9f9ed942fc86bf303c4a4b435ba5c48a5088a08bf6bcbd2a81dc2defa7f23fd11822f1ecf9ff22fee208502036fda275b9886068ca5751bc83d82073b7852df98fbc09802dc1bce139993672daf69c16c29434648dc668949bf6d5aefb3bb4745dbd41ced2875d9ade933af50d7c8cece29201fc97feb0017084ac4aa7600d0671fbe41976c6e7fe60c4596dae2e6070270a6c06bb748f5aba52ca54168f3daf16b937facc75c0431e9e295a20f9e79d82d2dcaaa9c645c348b83debef20edc7ebb8d3ce886e2284965b1e368fa8cfcc59614f4b08cd65b0bbde5b529ffb9eb439b15ab1863ef7d0c4272f4c40317f14070d509667667a6290c2bda97a838520bdbd89a7869a26d13a77680237043c466cf3167c324b4b0efbb97b5f3d700be14e95e6879c8c237a716626f9329a8e30194e5254f6cb8f7a249d83fe9bf379a0c0a5798b99c110b261c81fd5bfcf51a355ad59328dd734e2eee13e3e2496f7524675a203712a7efe661b15f587018d50391c22b4cd48878ac077ba33b31cc375786f1f4f8c4552ffc5613091a86415b9f81cb8cf4076adbdd25f733a300e004a52491721c6b19e0d4d686d740a69ab148673bdf06eac386fde32dc4fcb907392950d2fe8a5640992d87316cb694da810d65bf8a72ec4b9e66baa270e6869cd23801283b9e2005716259711356f2e958046ff33abfa0fab39fc289999163eaf9fb435abd39a685202570a506fc05a23cf666f62eeda68c9394b98ef1ed682810714a3088bed412f57afa31acc161ae1a8d8eb122a87bba0203d9889a084bdb4042c87c31f029cc7a9e7350c577480715e9f863a0f026ecbda89e9cf7b745a821db5a571ea426aa4b6a2e6354b0f45e4f34171f51df7fbba90e79e37ff6fbd44b2ebc3e562598eca0510826d27ac99672c7d907d6cc3fe271a99a441104338eb96d66b25c4d81dd5631d8805a5421b5aef3fcb1f07293d5d4ffa9f36473dae6532ed2b4dd097d586d94284035e0247beb59494fdb102ca7887676ae9523f7bd195b5e635550cbdf4ff1778286e2f8f746aa30fe2a674a512a48a0f9fddbae6025a67e78b229a9f76cb720f5a0516caab6a1fbaa996084b2d0a8946f79071bb48b95bbdc08b7f9134f60e362a96ed3b6b4a963dedaa1dbdb0f58dd95df79e9beb0bfc4ee46bf4ffef2e73896e330773011fb3a8fdddfc28ad74ae31fd51a767bd8e78ec5b4f5a2762920bef32322e7ab03bbd0a28ad8417456adc6ca80726b33a5bb8d3d65e1a1be94862b4280c7d306cf16d3ea227381677e3917fdf30017169fc69fdfbf295ca95379d0c39cf136aeaa9e42a8ff039b98bd6ff68bbb7d99ba697cc14774e1654409df291536698bb88a612423a997738e509a5a0b416136ca1b070c6f249064de6229cd21b052d93918b1d6e57d04dbab599b3e84f56ec0384dc0fed642367ce56831522121fd41e0ec68328e9eda9257318c23e5b58c4e81cde697c7e45735347fc611e0d334fbac6c7837775343d05a5f490ba81f42ac841229440374e7d5a0d18638f11a4962c4af16421ec66a85fc888edeb6baa238e8c0f4a4f7cd2589f64a6b4d02d423773e8a2bbe128f854bc6106dd22d43a78eeb8610258b8da91958494bedd536d58e97a8f97d47644f6c354d30613c4c50e37738551e32df87a1b4ff4ab721f41887b0342235d63c44c68acc632a8d65b1f1ad8f1aafb14e608be90573f222ae3518b555e7787d3fb64b7666e5479c5fe071814797936cc102a50a7c968b83a912c898149de9d7b24be756d53781846eeebaccd52d105a2a7481e4dc735fa4a3a243c1ebae8eb96acee014b595e76845b62c45e8cc948b5b95a1627f496e751b9c2e3b9c10ea85625e2e476ee65ca152123d6590da58d29c02bf7bfc303050bb0d4b973cabbe780c96947f93a5a4691b1680a2a9d553306c9dc819c23f6cb495380d482c150ea6487013b9e6806a18d45fedcd0810ee73f932cd7c531c9605ddb68b5ba1b1b9a22eab817840d0a272034eb40316aee532931ea245d0ffcdf0b3475f1f16414275e10ed12f626faa96a7a173b52813898b7922255640e7f693286f2f67247161e1271ab0bdf97d92a006b05406702819eee2c2ad1d65932f35333d4136fa00661bd76e85f0368cb3d49628a1c40d72b2ea8de7b578405a96e72f6eed65d3d0bba45459fba07ff27423a4cd1dab8c8865c90442e375ea150e1609468c51cde1bf5b58887387a48ba5a608bb51cdb5d5a377c929848105a4fb927fd316508ec3b92ded79c0cae2f1961b324c5dd125969ea30ea707fae23cb273291e6954ef10f6dc313bef8971df04cd2cc5b8ed913779470d25a77a3ebf2cb5f728b6fc9852ff4bf1c9ab8f868d7becf77a1f46fb47071781914751cb0436c1aced43a5c396f16620e2d5a28dac3a984024c47b5f735e0be34fc4c1c42d31d493722d07ae5ec5efc7abc37208a573f2f1cf293b04e00ae8c5d870ccefe0ea30409d71a108b4918c3921d8ecffc9ddecbbc4b405592a7b087802e4a61d0e3ec42c00e94efda98f80565140deea252ab5c7681b3fd61e976de4e7696bd1a71ef4d556802ce3be9b79ab34fe33c47e40e1dea3dbcc65e20c4028eae15f01a16d0380fd7506286486f6edafac44b71872e18caeadb36be72210296d5038318d9cb275f276409594cc009f3781634f4379e16b9cfca12190b721987b38ca164388e4241ea8bd730e4146960c325ade2bdccae189f238ef15690300279a07b107158616f0dbe3d72360fe26848d2313c5e9e953f492adfc678a48148a2166098a2523701bb57129f96e88dbca68cb4f390a6ef152b30b59e92150fd88759c1070b51150b92acc18f6bc8a8bbb4b9981912647ef4ca933402eb1e6228a0a6092d7c2a1b18835c8c58c26d14321d1adec5079875c91f6a832f56c80303958c1e4ccf4d0f1b5b3db1bba2756ccaa45b6e5a12a1502c00b573c4e311c3b329c811e22f49388de74689e3bd80658a1a8bdbf246f6389816845846a11ff677d505434152e75451d68d1e1b5b3d9371fc6a2216cdd25d53b608a61107e0c09f379efc1a920a5b6a1a4df5474151954af6a196dce372ec87c2357a4967868b92aa433731d81a2694a3ddf18b52eabc0caa395385fd83ffde9eee20625ef2465a85dc839300495e1773a36aad0fe69cc2cd0c72d2be97d83d6b965238e10d12eb72acdf07e1c123e7100253463b2ddcb8204548ebe196cc66ce18f074432f677ce52e86af369d40137913a8519f965bc2ac6c49b5cd1824e118c1fc0ed5f644c8ec53eddd958001be75f62d27b604a6c7cca314976e1dd3d53a39c0d75701ecce22738dcfcae2661a1626386f3ad856991dca364fd27cd7b2cdb6c3ed9bacabfcf5d45f920d366552ed91e728f0a7a66710f60043dd3a3c82edb9c31e9bbbf3974ea0dee6cd7754b633dcca1f1e6b13ba007eed4015163543f445a6ab543fc9ffbb352ca47cb859b7040730c96d2383da51dac4aebe4ce98a24bee7fd215318873ca8c992c002019f2cd71bbc2b77b2ca9cc49fbd9423586d2d2d2c8f14aaafa88d327d87637739985fbb9bd8717d5ba607b2c52dbb5fdb50f726f099dc70b5b895ab0339d11e0e993e1c50d0ed8b4d8c9713166a7ecb9caf9ea89174302a6592897aff9a0fe346ae80cb53b22dc7c9164bcdc1d12805b2a58e142edb7e42a8268b6aabe1bd1a706c0abd02a0ac11d82c9699303eae49844bd7b53fa00bffb7ae4707ed1dbe616e3d5594ade8ae6068b5eb234dbf85d77e4e6450d4b182344d06c7305ac93b0916738b91af34ac723fe348fe15b3149dd39a02119ef9f31d716909c5c4898d7f6b8002c3da20a62a315e810ecd7b7139b1bc9cf8ddd852693e82b9a8ead53a9d0338d15f1f95e524040bda4c917bdeb82361fc72763f13be9358ab15ffbdceb443627ad50505baf561d9b759edf26ace71bb8aa14f3eb5e722ccaee179f017db3a44960e41239bb8bb7fbaa28c023f65622f6171fa8e53933b65c272b425ae3d59a452a27d4803fd3aed65aaeb29061b0bcd4dc6164947123a9ad80af071ecb63b5ae6664b9166cf1c2f2802f2556a33d05e687b3d049356b1e01e1eb3db46e60eb2ca2b8217a4be5739a7a48b326b1758c18953267aeaddaddb9fefd5afd3ce2baa986c7b097fd76900d0abf83ab16770722d43dd17a2769c5509775d2471f45d196c07eb7d9cf2cd54125fe9d1c9793ced417feae491dc1be3461a542223ba47e51758a6f9a8311069121217670f7e498f32923970ed32fb7db38a0fd0b4dd352bce9830d8def36538a212c2cb6caa4c031c8b2674d25b4b130b134bc71bb619aa2bcbd5719f883289e1036ceabcd1316ba2fe69aee8a77b28292a3570d4046faddd639ab58d468fcd3a2c8b2970a721c57c6e62c1d70191d2f54dc06664362d83e25ac98f6d0f9e1be0fa902fef4cb005643f6eb3c0dac864baee7020e92633d1bfc891717afbf1b390719b0b50d41064388db69047747f5eb3e2493ae9bc5dbc0e89412e36f78f3e75fa88f75341dc930922d89193b1157b5463bb8a073105a04aca4a9bdac750bac354392ec9d033091cde90eeba0def24456c1fb166ad278585f64c26149bd6487d6b6be0f77a309dcd2606f3b40601e0c7f66db6549405e466eae4861c9c00d9945ec31f745fcc086abeea2fc762b11589137671ebd93f643f3d4c3d882f406d0c11db3274731c9fd9cf910b787c8ca2e0bb3b94625940a9df363b581aa028d91e6ff6839276010aa022575f8778fd12932051adc1571a2038fcae0c2d168be0826c6099b1d8755f1fbab9a1e8cf5b5b244f72b7499f5c7e7f8bf5e630f8f5eef9ff740b411050ac8734b87f3017cb7c3bb60c5b986a5155e3a731f1b0ef7827bfade1594095f307f04c33560b63192b3850bfdda9770a88037f91949bdb1b5f82c295bcc9cef00e5d7bc6e8423ed90e6dd8ec4cc7e06745bf878c3230c3790aba8873b94086e6030855ca03abf87d00eb33105a200c2e66bd6dc9455d4e815cdbeb4f02de642c6dc9d510fb753dc8a447dfe075a55113ea816561e1a3bc94e3f05725a1e8d7ed4623128aac4e63fb1defe9423c18565bb4c238c18591045bf1a2180b50bd95a977d66a9c641e6271e701eb54dad6445ab13899e218017f2db7cc78183da10bb2b572eb726e16a1a90e62c11cfd4c385bf0f59ab3d45131170040beb0719e984e9cf82f224997ebe32979f48577aa400c37d936be02f6e5eefd0589211f65d7e0536ab5407938274d2b6826b4c0845e3e143c18d6ec18893a204c1e284b868fb6a2a55e31c63990e385488660c705bd635bcf2f2e48eabd55dcb2510d4364ee7d1652df7c198f5c5d034cafb2d1dc24416615202999fe12ecad683ef8f5cebedebf9cd9f6dc9338d505a0b8ee992ecf5c4140abe578be0e58be61a267842400231485445c9822097c7d42a4fa64e3ee7389810dc50f2a19f167911ed191948a092d243b581f5ba9e10a2e32bf2b08e83ce84fb7ba5df3267587a5f6c4c471b3d010b74266ca1f570dd486317ad3017b150d8c3b4498bf34a43373e2d5f34094dfe1bd8652215955ebfb7b02e57b4b1c4eb508f25e8e82faee3d0a8732a408092917d7ed0d849328ae0fcd9c25735d47097f8f74e8f53c43bb6b9abf51480acb39375723bbba0107aac26a7a66d7048045309832fe149a1223f9674a702715304772cfae7609a8ef5c08f4cf99a52b1b711783f2ef60b14b9c48d5a70d0fd88350b866e9e8f75441de18f79628f063dd525aa8f0587bf5a920157e2fb47f777456bd9450244c051f1bbb6644f97c5aad4e44304cc9dcf283183eb95766d727a20faa52561df8734dde7043b542efcde14164afbb82b916b4429f16946c6ee03eb8bb6d067b16fe307dce93dac81c092a0feca13c4a8feece3bd6dcdacfe3185a65029e08d65cf644a4a5d7e94d584eb31ef83c56ee2423e79dfae7d7e5d33b6ae6c35bbba4704d1bb472261cfd5a4e7b4b30b1c283f55c779c3ce8ab1107591714139f16be05f2a29e933de83b63989a297363ccca63170b1f6e0095de098282e3d75db63c7b67ac342f11fe7ff5c3f553470d3029640b767f2517d6d2e750957d020c0b2effdff1493b4209684820551b276b7ed6e519ae343fc247895657f9433f77f65d3c6ba6d8278f489f5b37d93c2668031a4aa08f666d59a2e82303b5610d59d0780b23c12e929104c45333da1f9a1eba3eb42cd71e1a76ada507ff33cc733c99f25d9b9f68d0e9d569331e927318956afe4b57bdba178f5db394bea4cb13675a9f30a48f681768fd88ec4b644a9553b355e14e6ed016e7dbe830025f914eb9c42ed9d7d7998f317f5ef1b81e6f61a6c466424423903ddf695206727c676321c0650cbe4ea0ff18369f563a6215748f4f537826e5a27071291f7f40b39cd22a45379cb861e337c1e8cc272c6233880b34d20bc53c3738302332f28e1d4940afb719e60980d55a9fed1d299b8f0de86570f2e638d5193f85b939c13e5008786ba83431192fb362524370ee46e35b000f8c715452a8257bedceb27e394de5380dce631f161f6871d15ee72e36860c871c632d7df8474980c299db1cfc6b16be650660db5d249f84cc1c2a466baf210c08bce9a49ba18d62d1078e7b36c374f353236b720b3388e9ccbb91a32feb11d793755e6d2d503ba17275d156b2d5fb7fbf043086667e65355996699ce24c4fa378318b608c370defe3e68d9cb066a9f225c0f011d801d7b6eec6c6f559e53ffb2be2073dd3531e84e539ce454b93670a48bd0ba675ccf48ef50739fc22943af3769c3a961d0b3569aea0964fe327d2a72d6fe4b57e5251a0e05e8936672b59c45235ea66fdb56ff410b54d2116699732f84051370a8a16e2372abb1909ca24523ca6f5e0631eb497692c21b90d462c217f281c5c56aaa062226a5888628940b3a21fbb3ae16678b7cd2ea33cb471707939ee69ddff16e6839ffc1502e7d856c43b076b977524257a7d9ee778a1e1c4b4255a03876c7eab272908177885704980d738b065e80583e2f603c576df1f948fc068de7f6722037946a554885a8b36c6c6ebfe2e0abb5c30fbe4e420f62bc2d5472d7b1301836c17dc3b9fd9fa2713040dae248424c2d93531e0a78e97d80fa63380c1b4b413f28d5558cafbf52a255dfc9a05e07dbadf8784839b1ed3cc05e22206b36f84f6fc32bfa5cd9d242c3b4ba6326b8d03153326fd64c9ef5045b85c059c59a4eebe29abd9ec92a333d7573da5e38da734fd83d63787470b21d136666c3dcb049a31700cbb6cacbfae6c09302365b20b1143129ec9c645db05cff544ebc4e4fe5aa6f98f1426b936050635c90707dffb2da99c611455ace09cf549935663e423a1ab4df7167a97271d00552f8e5503f8e898428dee6e1dc87538a90676a205002a6f1044f667624784075b03f9032e13195d0edb2b2f478e1471d5831b5f9c6bfb3aa516cab8fcce86de0bacedc51a80b12a6f0dcb9544be3cee6f9f2c0d01279076ebf0be583fcf7a824f73c7bffc7f0e2f0ae02146dec0a57348d5bcbd0b43dc2e1987135b48b433c54672eb47e65a72f89212701a3bde064b7bce0eea0bfbe43b924e8516e4b0715630115793c09baf7824cca8f798f6b17e17b416f419f02f0a6752a5034cf7c5016386892182a2b1d245dadf794c0e0f668cef41a1baa1febe14096a462215121d54217fcf7cbdbbe89d7df1e6a318434e150b8247b4892c399837268459ee91462623fa0a19563a4143db1e4242d2f71ff6e4b511ffe15aea6f6f3e502e313a153dcd5b38f9e55cb1c36149d512e3a78c441893a6fd53d8bf5858f803712078ef0f8367ac0c4399ac1d7e7d960acd423edaf62bb11561b87e9da174eb8f94b02c0d3328161cec7ea76d5c07db8f17154cf1cc6dbbc5bb57858bc34484c84a36a409847b0379a66ba1e977bf78f4ba4188af4146ea7566b33e511f075c4719e06543f9998323d141635955225338538b2ff564548d616c8944008147bfc67018a71ae2e4309d292ca3e3af5742b7c5ddd67bbd1027cea5c25a8bc18710c95a806f2d1d30a43eebb1e175a63dda02bfad797621ecb0a3f63a8c190a0153237b197d265736db6ddf573fe20eeee67f5b73d6012b12db535191a088355345f2a05a2440ef96e4d8111642d90b710c3d945472bf35d672b7243954c2186c9800955a375d892dd4121516abd1c5aee613ec447c93f141140489ef57ace1f64dfd5a83ca0c001847e5336eebd9d4f13f878fb9f752a03b9125fe2602cba353116ab388ee322e21819c35c20093ae1f6fd464c7a83d10b227a6846d4536d896f626db6ec56128e5e3f440f54db71d06b298ee5b04c7aa44e3f8558b33c706f8ba389961e75ed5d949a872d4ba9658a41a8e93e1c985cb933d51c5aeb6b1f1c0a7fbd3457a327b907678d88820d3e81cef9af028791eb9f4a995e48f397c0740f67118376334bcda54bc900f9acdb34b36e471d2b3a12ee47e9ab9aa7bf30e81b03af7d677118037db31fa2c34acd22b94ab46e4b783f35c5ce5a2d975f14754212be3c5474d5feba3fe155dc28c16715b6686475be231cf398a1a79423c51a487391be3a228df713ca2004edb64122d200123d35fd75027c27f222867ace2efd60213e5ef627076c5de4379edef3718ba7f48b7d461a72f36ea4e588cf8c1da655daafa503f349bff3db3a37c94158119405f2e10f1b1c84276b15dab26381fb38cba708c321c346afa8448af614a72f84e8d3329af658d8ae7bb6f0f5c12764ebd55e15009603d83ca12c860720a0d73b728ae1ca241f640bffefe3208b95ec457da9e795a6793022230acadb223ad2c2ce22fc78b3687b815db90dc7a1e7d731c845b491a53c66ea23b7ec88a04fd8ee2b292510891492cfda86f46c92da0dde89007460b83a49de87f8e93f98dee40dacbf185435ed87f82d4abe2c505bc0f4da3b2b225cc85b45fc31f3887d9dcb604d001da41e35d19132a3fcae859f1542a18939634bc46e391774ef1ec25d21e6322826d3a7599d4ef25b20b4619b57cdf0b73751f4da8288b1022d71d00d59a51d072a44b1eb6a9ce7bb09943c7c00adfc28b7249814a7a33d69473000b972972827fe8dd95d78487ec24c80382271602560e033b4096ae074e9af6b8645eb8a05a47836e2f79d75326e1969b8f655b3332a63241391e8b5b9f33c2f7b690ea4657803f1e9ff2ce8bfbcab29610834df30db38d65e5bc831f2b7fdfa108eb4b83e1d027a3d845705205b52b6d08224c9b8aa23813c3fb9db9cd4df9523dd1832b5356ecbf42e799b4e1f89355c00dd828d120250448c9ff84397041012c15c546930ceac39508f6de812f5c101ce38429ac37e726e90941c016b250565ce083ae256117a22c756f1e6ddbe316e34ce2b8e50592399ebfe325ee2c8e767f86894bdfc639f0a21a728044ab458bc3e8d7bc8e9bf927174d1dabe325e900f79506e54c59dead298b318db02fd0a8c49624076837af6e2bf1e6ac2e974d589ed02c94fb5bb066bd0a8cd9f39419a39f33f9b2460f7959341750f051cc8672e38726e7cab56d55ff84aeab600ecd214fb343e3ac83cd0c29e07017ac973ad91b0e5a4e6a873c41767c639fa452d1e2350a8aaced0d265bcb1f4f7866ba5607fa88b1b004e9b7d8981efd542c606262b9bb3d337bfd5032e68237c7f14db5308534992fa512f09555f2a70adfbf459dc6d08000102d45403157e6d1f409f23abe8bbf1d50e2f2e651794abbeabac11230184807cb064e06712201c383017c5dba32353c6a89487164342b767d6df1b3664f6bb71767b85401bf261abe7dcb94e701e1883c3c23298a49d100764c753d1cf7dda1605e696be1a700626eb283213fc2debbbf06134876741afca81960559d120a505e1ad54cb9086e79e5b5cb6a21d0f0938b8efc84729a2442bbf1fd5f751f986549de120371a3324570710301772f95e63dfde48e44ff8d4c83e8050a49a636424f32a311f70ed21becad3e5e7c2cd05b98e2e39ad121c32e589e7433b39c51ba9289ec2d79a5480705469f02577e4a176b46ce0e4a6429a82db2cae740acc143300d6350ab58d709115e11b9d7bd8d5256d323db3c311aef738a32b2f7be8d0eaedd3b3b038f75b802c8e74c7c055d3a1384d45b909ac4f62b25a805ffdcdd0d859f7c3034f1300065e26e589ab1b3060e81c2911a1319776f8557f7db3362afe0207f67259ac5dbde9cd10225b6603e4e5a58e694013a21505c54b10366b6556fc9af72b6cde26fcab53e53754f498e4d1f207147323e313495844826cda3a21e18f82318a2f1b07ed8e451a6ac6adf422368fe7078d609b2ec0cf73175cd3f8ae5b7003d147022f9cc4400938bf4f245552490f31028fbd49e95b269a566e3ced8b91cb4bc8c121b5753490089613299d42aa97363f5f9667461feb3d10a0b2bf531142130d04cea50bc09c4898a189893800b9bbfb49d0c666c2d9bc9d018157aaa481cd598ebaa14698d7f7c94a44bf1c9479c5285adb428881d5a66ccb70f79034d5dcebc3f1a8570e133959a5ab6de54280827492617d3dfae3e0e80d554cd0d5a6c251a322def2f321820ef64fe8f26e0df0e6805863b5cd82f0759450ac86e2a1ba931422fb500e7fdff86fcf10c4f15a3126828e1da6028e2d4434c0e70dc3d170db83f64451190b113d39368e2e10458f059e0a40b093d795536ba2eed943ca0cc34f1c0f2f31a2a31a6b9a48d78f4ace91bcf3a0307ee72ab13415f670725b28c0852bd131e7d369f5111f0350b2d9bb4073e1e1f56d56bf5ab7ba36e0f21af718991efc39bebff0e2ec527ba6d2a65d9a75c912f91768f60dd471635b266673f6844eadae152686c40b815ce4dd293387037a13cf363abb983181732372949c15810ff9a605c9f6bb1426d42e615bebf42925f789ba51e1eeb7638d0710c8a87dc60fc812a96c94ccdb977f89cb9beff0d80bbe969f95e20e50a5ef7c53bdd0d2d2264bb52535c5fdf36b822b316dd7a0cdd82b1e8f8da4a998cf09c470006a8623b444492cc4c351c7989a8879e4b3ebc03ffe9ebaec708e3f72205fa0d7745b0143d8c57bb03f8b076f486da920d516bf66c0e52a69c5f086d2236804fd545e5e5a4f77dea8c770354882ad62b5e8170b9cd96f38e8dc892fa5913e1324fe42418374c8adb53edfa86337b4b36da846a591c695aadbd627d23ae4158370398092a7a7c19858bf228d7d9f086859db7259142389fbd341ca95d085fa64a6a62b069720d6e899c8fe28717ae4e6ca40e6cdadc8271ed0e3a8de4560d7b0c6ddc9fb2ade330c4f918d8c5f5c57f332cd5fd734ce3c0d5fdadf46cb6ba8d5484042f492d38ee3d4211acccb08938243c374794953b8b95b1bf7b58b70ce74158f84de5c6b23a0966b22d4af3fa3143d6c8dc442ffc95c9c787edafc45a5801c7d0bcf332cbc3e962b1e5792af2a4a841c955395f27776df9771e38314ec55c1f6d752eea2a7469bbf50892f68b66d3c4426afb2517d378afe6fd6e990b613c7db0c4da9fd66ca454d60e15d34eca6ac5810eac85ea889353644cd9623af26910c89405c2fd6555a0916bf7312a6375b7a1c61c050c760bd364803d1f1f016053dfa64649ec28e3a2e4fb89acba85fe0079053233a758f90ae9cabf4685893a607bf5ce737dd065855e99dc4a55ad30c14490bb09a278d7ec30b61614e5c019da2ee3da409a97411530e0f6dc22b7083b81df4358079db27a7d0b445f3d6d5525101ef0a9ef7946bd205ee8472f02bf9798157f3ad05bf329e80459ef5fe05f38361f001e15646d9e0101faa6148c830389bb8c7a055e6ddd73d26b960b030f97bd4b2b97689e0992684995ca566ecc7b3f3022617f824b3f55bf78f932356e6b672777407c8d2925be5ae869805c2433e91a0b02863788e551a6bc6bb98656f92c594fac48840d8b4437a98c7b7ae50fe572f57ee2b9e54e1bc35eabf55d147698beed92e630e516c5b347ac85e0d4c7ce09ec60b16ebe1ef0024626138651f6b12fc71d40c857e8bcb07ecfe94d1341c7ed17dfb068786fba5a04d3e27a3394127c4e9445771a679512595fb08c7060fa76a3e424a7e520907aa66ba741693e629df9eb0b130750f01593cf549098a08586d2bfb214ba672c6918fe099f0201288f466989bcff3c5d8c1e918c0d570597cb23b27e52f03b9604fad6dce65a68751d3ac310b0dd2c0df0f979b040f83e1c3fa7a975282d993001d6c609bb3545e41b2daa5a792a3e5cc8dbd0bf7543a743d542625bf15980f9a4743e0f9760212720f4705d673cfb22eb1d76cce0fe0f3b3e06df15aab641e8c2b6fd6ad673167ac3a632a0ab3094e7d63f616cbb6c23e4c994db05fa58d2744100345e4941a34659253691d73f9840c3c7061d8eb9e8026e8f4df95d6bb11d2e931d229b1b7afa34f4096bb98fd111f0bb3bca481841b486daf57c6c4c0bc88df7c8a9a645bc82935d454f19ba2284085b5b92f244b9bc775e3f5e57afee2cb58c4d88d81628e2482cdd3f55952cd4228c69b8f8b5ce0bc182e98fcfcf073e271865748007bd3e2beb6a995a989fd71b02af2f4a0cc2f0210cea801c2ae2ab1e96eb6bd72ebfd9e8df1b1ac8a58466d2f4b48c9d1970ab1cd69e3bef672d62c3d9c2bfd3201b83d7f14db8ca7afbbbec226080ab477f2e209c295d72f11c98412f463e4e2f9d60cde490344e2372d2ef137a73c5da44ae53cfb432838d1eca06c23dd63d6943f751368f2648a90d0de175ac935f2b10ff0226295051edbc5cf2be97e2160740b686c795f07101dda9166044f09bcfdcc7c48a317eff9116599bb7eea73d264eef9d75fe6fdae79e581db6e99043b97a9ddf039b77bd2b9eb533966883d54ec29b36474aa142e8aa73e1de38ffac94e9a0fa400489d6d51a924151997020540fdb6961a9366e37cc2e6f816b2c3f911f236b342e8e92e91f9e50b75fa7064bfa6fa2a82d966adc363e7fa58b99f78e5bd38ad165ec1981b9401e2b88c07222733bd07ad17c18e51f6e270f7a63a2128138c046663280370d4c4b9c7fef37498ce16f69127d9f1a9b8fc7575d79a0313610aa0e656fb5fb6033b37b0915d400d6030dc30b7066c27d693d92673661b4b9284e26f4ad57ee93a9d970742ee93bd5f9b3009fa5a50d9a918056095dd6c8f9e4ba50f19a72844bd901a535b984653cec57c3210370d2356df952dbeb686b068fe230fc0c9e8295d4bf36153d373bfd7b7657e4938abc220ae55a608015fb496f8aecf51c6d1e54c2b4e11f041b0086461e0d99c0f64dbc50906a33f16499254120e387c840bd3bf39e52727775711c2c0e57023cf961d9b6225055f8c24f41bb7ad354eef248a8833b4697a2f307ea7aa681f3b060e812886858758157d589aef933d947ffdf9989642d5e57b036d5412428c4b224099768544bad02144f6a5c0967e77757eafb9a7787f83ce5472a1b743c69440c2b6dcb998f61307ee5013333b8b02d5e5fad4038bcc1b4931e518a084816be0e7379c1eca01a36893e343da7082d3a9a3026d71e4cff3dd946b73b0b046b31af751b7e920219d0a34d56c6a40d6b03dc4cd79feedcdab1660a2f661239dbba85b5f56cbe28912ce93437e12bf7c321c25c32896a0259e5026963d37f8c70c035e5e6b09a340a56eff0c6bc9b2ed882bd0d7c730e6f9ab77d14003761747b16a604efd37cf60d55e0bcc343a748a889b58520951194b82fc054d458c7c8a6782f69bb703b83a5b6e5a3362d1f36320976325ec7d89e178033255791e1a3b3d414d8850e7209e2c787dde045b09125b32594474383e80fe2ff59946cc5a1411e7ad3cd7ea69c0288d7fc9d0db4c9327ec1cec673792eeacf0456bfedff87e00ff0a1d76f854ddbd552e97f37cef52660626f953b1603c8a2206bf45cdf6804bc5203af2d65a7a96f0d1895c080ebef3e8ad66b31cef39843dd6260a4bdfa95049fffacd1016cd7f5503edbbc994416007f5ce2f1e5719ef8ac3e950ccc35e4effc22e7f19aff0c6ac56213a737bdb7d880cc793d570f809220580b49ad5693dc34225a26b2639fc5ffb4fe38163ee40b4ce1d82d6f2ef79d9f2836d3026eb7546898d88b73659d7d2ba859558bbb1a1aeae877fd2fbca8300b25ec5de537da9d7095ff9be86e9fec05aafe190cb81ea96236dc2e9fd6c6346314b4af06b6cfef9037808c7ca87e3f012b9e6e14a69408f909fe7bec05a29c2f3620da6865dcac33fcbe27c55cca23e5ab9b6ca70e9c039a55de3cf501c234965d2230950417bde6a7fa394712d51569b6e696147806e2d44de2b671986403d34e59e77a6a29f8f5b8207e167b8e0fc874165bc16a019d3e764dddd83068931d1dd29e1f1372bb774d905e6d25e37e81119bcadb14591eb0df8fe6340f2c762c4be785204ad6ff869af6e575383e9f9c77099a048aa2cf5e521de026e7185a1e07f04b07187f9fedb8256de0f038e334249efaaf94e46f682588419d43b3d75e67c90a785a4afd44fe3f80e750e85a8b87ddc5c3acd695e3bbb2e9bd60a8e8ac03e71c7f3370aec9df2d6bd76664b786c63d341a7e64ce1bd296632a4c4a51f926b510c855638ae645ec32b9836f289ca83c9cfbb6640043a1388de4e78dbb2a1000f58852b60e757107abd45d7cd1a5026fa08ac6a8aab2dff6cdfc68bff6bb60788a72d677dd7ee89d19b163e0c2ef3336916bf1c0edac33f54d2b2e2c9a272e1dc80c4c84a6800ecef96adbc336d3e44d8c3c43a96f9c744500dbe95ac94710f710420ab58987a7c6916574daaf6434306a81c2b9ecadb65d9ad701f76f7558e6093bb53755f0f5f4f2429bed0f2428223653f94e74f61de451072b93b5a66815387a903516dc655074270e3e3ed45c88692fec7fa09c529efe1712e0cabe675d8ea46f8be4316a6f155702ed374c848218c18b3363edd1f255174d956a2f54ee876c8eb9bc7e2707b93befad2301c949876a81d41ca375cd2d5bf2723ea533d784c8c686f2086ac03299ad8de7e8b7390f7bd3d7e2c8e408d2723787dce038c11184f7556fdbf033bb6fa2872b5a39a1f678f1317669dc88bba1dc83ccb85932a4cd8e261bd1952106cc98712ab7e990097dcceadd1d7ea38bfbe7da240e0040b26b95d993ad2cb06d280e9abf92a23a58af4d5b6fb84d6ba4565775c7f959915bf5ec82bf32600b3b1a86996f1ff3b285dd1564e1b4d7e2bf6390709e2e15b924d4c536b11ea5e0e503eae9aa9d7575068dadff2b3d6a3a757fbaab5c167194b4e20968f77f4ef380dc9ddbc4c368d44a4e40f650bfa8bfa9755be7509c005c77233df24192a551062ed1bc8dce80dd4a7d13e3d94a9668134bafe9280f69266b192dc3e558dab9e10ddde657b3f5bc4a958ab0561062206b7bc44c165d5af31103b410c3f04b26423a22b026885a56b8bc12824c196aa8a478eda13c1b27b778b28a31a534b8a71b256e38c1e549947595b0138dbf5f39772fb3febf172e06c3d7c022dc0d21d448fa8d8836be97a7205225b12233ed93f2ed721ff530096057831c24986470ba6dfb954acd4b910b1c318876822c52956ccbe1f8525171c91f84bdaea15c8feb542ceac84f93c6e85556963b790f9be652ca74a0a58f543ea73f83a51396978a5cb02d8c77de3ec78d8a16838c2753b9813d26b0f35553f9e39d676d8ea6372795db91fa273b24d4bc6ba54f4f350955d1827eaae40e0e5c97b2d579c9b907b9a67c5d85d478939227e8c5df68521e6344c9ebdf32253223133dc0a3d19746f6afd7fba30519967d87380b5e76f494c7bb160d3321f2513094d096da35075aeb3d6f5bd163916de45a938ac5612ce33766c95fb59d6502b3a41acf543bea2bca086d830dbcbf9108d24f80b81938fa986f566407b2a638b224e5770456ffbad2a0a49448ad974d5d86c466272f74a1bdd90e79c18104330ee142eb57de213b2c818f9ca1c12bf34005cd565476714fd0ec94f99138b6439dfcf18951b9c1620af19f1ed9783e0ca3ab2d1a9d8fd9637847d3869e092b4b6f906f844d558f09cf4a8b47463287cf7355747179ad10cdd0d0111aff1f664ad4b677382d37ba2f46b302f9af33e325fb06885afa509db0675d84c3af803931a12b11962db91dfd318738b6d26d087d81be908054efb2d8073b35a2f0831f184bd8da401b4874a1267dbb065466d9adef98aa5d8d13005b40de9193b098bc2d692a3531353b4e2d63d04dfbd8ccca190110c23e9e76cc9145f2ceb2de14ef65b56295c7a1ebaf23cffbae445e56b9856634166181509e20e3d4c9b989d0db42f01e7d7df49f9f93337272218a268bfeb730d75b10efa11c22bf228eaf8d251bfb7f83bd4bf9af9cb0f1072be95b506ae3159e8b0866ee4bdbb0f98bed93bc2eb00420c6551848c370e09809d11b23032371b7d236f94fb07b42ca39da55745c6925f8708dd3ea5191912122792fb1c7c24f8afaca9d67b3e4f8c748b0ba6a2cd1574f73de324b7bfcee6d2ef9eabe1412d67c447187a69a5c48aa999d4f315e70374c704617ab96052c0cadebf20afddb3609325a20674ab16c8e9ec45a876481a45bbd4210e58694cc5f8f3087ae56ae318f609c75193f777c35330c40cc252fec6d831565c4cb29d7dbe4ba2f1d91d3533ed406d5339391504cfb13cf4b17b23977577ea8347c9b2c3a26998dfc506ea3ab63fcfe87a743d8f02b3884b544e195312782c3035a7d078eeb31735c3bbfdaca9a89344ee11b00d4a37003202a9e79a6c8c2ad7815e58e33cf08f57fb6a2581c842b66411371f54764137c7e345f46fffb6ff96197ae7f87b0f0854e457714b0ea9f8cf7cc1034dd5dc008a173b68d9931dd2115e450aa6a11e3ff85f19d147ff9a3f23d0b80c29fde3860492239286064cbb788b1e3f6b43286944bdc3a5a1aa4f6bda084469192c82e13aa5cabb1324cea13126b2d581491c36ddead4a2caf5f8f4efba85f8b58e713f8f64df3245cddef99362ffe545cae626fcacd933ec82c61aadb3d9f03dd80bfa911163d660f3ee323311d72b4c1370c6cea663cfc840b5837ca33b6f482fe9bf75f40adf22654f9f86af0d5ceb2e03559148fe90e530aa04c1ee550e5b91e2fecde56ead104910e173d4a5611b420b0cb31e9a7d1dac623c5a2da344d41039458174ff8dd45dada107f81ce5b1d2e1c41441e430aa45b862ee07ea424498d6a6d774ffc1aa8b4f0f0c36709399f499d9cc826d7fc70729f9e3dbcd7fe7da23a134d0ef33632ef0c12a02537704d56482780dbc2fe660baf29a467d76daf901ed3c44b5129aaca8356da791b9c6400f15e186196337e0168007ec058d6fd09539c995648df23186dad82354164a8ba27e0ba29c049314be4af2ac9cc128d0fd905193d20451338b06c8d6ca2ad602e16c1f64eb8f7eebe93a33be15c9da87cbca2fa2d9d3a24a022d3b3cba593e9642493ee38f325626735c3abccbb94a95bf682b31dd96aac92786c19245fcc3dd5fce3620b3d771e7575880ab5f4a5c620f346342cc903ad4ed0d219d5ad07efcae8afd53a0b304d779e7f8b4be02aae37711efc04013e24e82f50dca19326f61174418a0783bc83055c9249b5d16e9d1bed32926abbf4e34360d5f3fa47bf0a94a35a85f44621120488bb4e5020eeebb7c038464d2e591d4c07a8164a7845cd809f7f6083bd4ae6ccbb36ed69f491e3162a4ecb23150e5210c333043363fe180c878f3642a6968d9a8c1f6312c8f29c38350c8073414c7eb46705445d143aa4eb82409c3f1d13da1d967992328137aa596fcc47713ebf43202a4950e365716980326e1525fe960c3fb1c4833dd1568eecbd648c6b2cc8c4327dedd7007486570999b85d515caac87c14e9caf8b353ddb3193d475cd5c74c254008f37b699e1d24cbc361c9409e44b2ed433afba87818b126bdd53aea7d4c5b04e1e7f4d4ffc613671d908827412ee251457ddffabd39111300956f5a9f5827be93553615c8657ce093dd1728ea00451ea0ead37c1cd3c783c0643f5acf03870059b63716cb333abd8b742f944e927248b11fceffcc67e690cfa12301295d8226c8e2f712af5e781d12d34948be5c10225cbf271adbcc217b60f01ca7f56bf8b78f01ecc873413a99c3f38b1610f00f83194318f206d0e8daa3fa0ed63f3e012d4d6634e0f7bce382e7cea5f81664409339639969b59cadd927251cbe67ab732b0bbd4695ca5c02d00dbd5542a82408b454e8214fb4f5869bc4061f0a67f90bd3d579fb3a0621ba282d4430128a572c1d05c1563f653d095fd1ee73768ab6083d1857ad7531b5e04c56e87440fdab812e345674cb2f834768102e0b1a605f4faa49a1c9827c241447c85768293e00a6787b66952f84a6c7843a6c56564aed1cd5f608a0bed94aa32f26d0a1ba3d02707ba3daf18134999d0100360a77a99d2bed99534cad11c400b8e5423edc6cd55bb19a70eff23656d9540ea92e5ddc2cda2f0384e8be4ce34bd59281b5cbfc42f62d7d12628d968cc9d9361c010c6cfaba270c4ea04dc4c9e418e49dc1ff30fff646b7493bae21880f035c12273b88448272e80998e7b253a42b7402894c0bcd7b82ab4fb827350dca546f5f48c553e9301522519b806fb70917310091aa173eae10c84f684a3d079e13e89c5ddada0c0558004a66551982e7e34d828925b3885d543fdeea237d04bff25e1625e4bcb59890c2b9157e1d815da183c7ccd8799c933724f98d455520043af47f6834136a742548a873c0fb07e9506b8ee2d6f9e9b3c7a85fa6abe403024a5720073f7ef91d9acb5e61b9b29ee159f3809979cb42e76489e49a8765a5003e78c5196d7f3334424678cd011397e6d1546bc0de8bc7d942c58f9a921ba3fb832e231ef20005b88c4f4ee970d926035e31eb3a9f1eb4adfc9fbfedfa94ca1700818b47ffac0c406ba353fa980bd77aff791446e4949d2d508d3700ba317ede3e3b773ee62287266a14093f1fc9c66c0366cb49db69e8ffa202f2a0c1cab1a1eaee1a06dd7ea3c0ce29a5673b0e0190e74f6c4efc6b672c3f6c7e684b63e919449c860b12efd73ca1574629a71340abe2c2e51b208477c9c23d0f9d5778bf73bf3eb95fcadbe15e6f1a5d0abd6b7205705394728c9f7d79750dada10bf135d349a0b83e6de32de40d46cdadf44f52f48ae4116fb14ab0280b17c199fd7c8f14da63304f432ee89cae59d08f618d59e8ef34028308a62da0766b9fc7dc4d46116973ae62ce78a40784565772158a409dc46c05f9d3387c4ea488324511e18c040522fa3cf1bef3e17040d65451b28867d504ff1fd2907c27a44d2abd1dbf9b299edd611ff90f799032d89a1864e7e956c6007327b41b0f3e1b70528886c6b929b972404843dba368d41c807dc672410f14a416979e1166c12465485c2193c5c8b8f0ba0f56479208e56d639452db6ea54a69674380fdfb4a5b21ffb421f8ad5b088a295505e9f5e21cb4c1c2aa371faca1c703e8bc7f0b5d48f24dc3125335782d025808e717640926792397a7a446f29e593c6ebc16610401d0489185378604c251e8659f1889ebcf852d48f7aaa37258df7c6985531c2a1896b4cc6d90063830631231b862263399817c7382ed9e4b6f55c1c226607d762a3634fb4d78d81b301f003ed3904b612ff65279e9e4a03df6db855f8457c759cf0e24a9287b0ec746686227f789adca2296337968117acff6dbb3569bf988f13642dea96977c43c780dcd435347e075bf10dc5886b0becf3f34346fdf705bd1f36d2a32077f7dc79a768c5b9e1c1a8a0c3cec4e265eea9895d5fa51cec5b5fd7ff88d4e64ac2755d2b8110306425283f22711c1cd4bbe45511d489ed70b3bb339c5c19e5b5a3a784605992be9447b490544c33a2a582a0c419df94a8abe1829dabc183a563fee1e3f3d363aae2c284d029674318f940d5b74850fb7b1bd8a200f67224e42c344debd58112c0a6cc1817dedb2076fe38c0e7eeced8ca947c0a7358b56cb63ab6363f90ff53ed5f3666d60ae64d15d63360cde223f0553660ca3c13d82d24a19a174909ca3256094e88426826235b8f5149d168dd6b7d452367ba5547017f608b575df0ef8487b0bceb18dd6ef2177a2293062f51922277c81db8cfdda22f684d1b12f557348d37e8673a6d13c9e243c184b8d5318aa4fb07c07439bb529eb3533a4ba6e0d1b01b2c17236b1045cfd77c3e07cd066768c68c0e99586ea318e485ace3d09ea5285308902f4aa4267c1a93e88006d799d7cd7e14845b0595fd725ac6e4dde4936bfad05ca54ca6559e4b0f900935dd0a35a3672d07038bc922110c793de3d0c47badc7108223569ed7e74380e135573a396ac54ff42bfd20dd2c2a82a086d1f4b14ec10c3475baa2fec1c2662c4d28c9cd0a44e78421abfed38170ad91f568a4bfad47841e4769719679a244861f757a2da02bfd8e346003a3da95200385ba81173fc759e909044f644a371063e6d15a2acd1ab2b2fdbad762f0e24546e071035ae8a36c3b7ed62d83317c0bb4122f5db66166357e2a5dfd6114d5f2bae6fdd26be86fdbbb21e04a99dce32205d041d918610dad266ec19c07ace5b1836d74f025f4abd5e809e3807d14e0284c4f4c834c54d97b5f4c0ca9ba01d5af00ec6e1686ef005b9070a4f44bd8fceb96346528b63ca20c655813791c1a7ed57a22fcc3983ca0e5639f01bc5c3b02cb5b05d4f8319f1f142192155d2f8968f2e3c86c552f3a81b8151a918cbf5e1375dfc843e4d61176abaa5c8f4a06fb5ce6d9ca71b28955a11fed242a3467fb501874ea9965c31a1237f1962c5d68da15aa2ad6a9212c85359b429435bbcc7c449f08abd8cb9b32609a175fa2298eef6c984b7c73121de3727a4e066f74587723f75db1cfbf54d416bac6dfc203ef23abe05d2b1fd0fcdc6056e6d252c5537700c3c9fc455abbe165e94381d710e1573a74c8bf4de4ca82284a3ff495137c3ff3192eca0e98f4ccb05667afc2d89fe70213535373b30f6edae631bd29c4d77bce3b4a985a6431c8be6aaa865dd7e3e9120580ef1640a3f7a4d14a8d36b8bcb8e44ae9ff3c62eb6e9b1d979e629bc5293281f3a40c85aa54f8b5281be407096b4f2a39a1e64ed798e4299069c3966e2ea87b8d7875262f0717a377fa8b402efeb20df4deea1aa4b58e9e1ea053292fb5258b3a504786d3b27471704457a67de5329d927292e5492b6cf9234f990e6fcba048cc3faf15b9ec06ef58b44fdb45e0313380967fbfba7c3c3efba3b67df703a888295824e698336c6479a370385e4a6fbdd075add993554d017d3efc8cc14f58dea8bb78055dede2c4999b85efa514f3ce57c51f92ea7f08122eb609ec8dd19e15594c5f972b017ee9909c739113ca95be247d4b477e480f00a9e386d021accd8bb5ac4161d6bba388febec198dd8af9fa6a75a8ee777b7e4167a45e57a369b6283e0b59a6b4bd05f1e41910d342392953793d860037c240c61d90f6d34f934645d8b760326872ad60fb80593e9bd83d9c4b930dbcdb599fb1a6167d9e1247f199e5434205f15a4a6db0f07f4948f0c7b85bebf133082e28f158fa0e66c8d95d54f51949e3230f69c9ca70dce9e1ebe2c23009e1c1f741c7860f32c665cd75c45767dd62167b160fd6540e5ee04515d3c55d34df3a1345a3fa40ae94707ed920fb441e8245f9b73be21551d564269551cb5d246e79420c2e74bb16fc4463bdf0d9dddb8c05f8f947d59dd7bdb62a165d0fd6ae26525a9b1c2d7126eadd83f0a62e4c2b5500a8c48ac2c16c87fa5c5d0a301f5b8e11d06375147c494e144bcd4d8b0ee7f7020a4ce251f8c1bea35ff41238fb0700083ee644bd999bb44f0aaf0af874a84a6191e511abccab3927796edcb37fec7ab85b0e0d5bf61389cbfcdec64ff23803529c5c669278b91ed0924045ef058bd03000e87fc30e935425e428049194e460114d8b9cd3e0ad370f9e6c57f9d0c4c56a231c55dd2442e75804efcb99384c56668c64980e6f3d1fe31f28379eb872015ea0576808e762e405ef85eb44ff7a53c1025c0e854320b556a3f6b4dab636258fb56951d59b4abbb4e90eba15e6b4fdf2f064232df8f61fd52e16822c688072ad28eacf8209c596385ed27a969caf11806211b16790d0784fc213b880585464b862433f7b50b3a80991d2753b221aaed6c604b3f5708574d9c9f9da5f004c26da980c8c753d24fd2f1d2af1165f073391ef0a5df7905986aec4b47381a005ea447a967d09598fefacf020fb6b37d627b3191b4bdcc765ef28e6ec145dd49a437ce9ce441f93b4e4b300643027d3b85466fee50d3370d7d1ee8ad12bdaf8a787770f8753978bc860a62e0f77616531a8505f209e495bea0ecd9bcf842f279005eae94971f7f3e6ae94389c3de7974d3cd08831626ec8ab7d1d4129d79456158c9630274ce4724429207b56dca6f38d1ab39ed3011ff85d455b610f679fa386f883d21f069ade59ad2c770ca6648e359fd6f5b804b2cd22a8eb818dd3d7848c7bc5daba19c5cc52a78a71a7d5e942e8d1a11902a6b4b7dc76ea8ca08df4a419bca067d95e8bd97818168be8689caef85dd5f7fbc20ccca92fc2a0f8bb55aa0b26d272df31f2faea896b8aff4d5b2e316bb54fd409fb06bed986448bc64aed4de98aa0b6cffc22c237ed5424333809d3dd256e12d0797db3b33d6ac8325b3704fcfe1520fc4836267d267e31277e4049596581ac68e533c97cc70db185de7cf7c74fad3e2712f591f26ee8d35966a2a94450c6605367e7269e9c7850e286efe02036b2c50f10f458cac39c1b6fb267f3de45e1f833793c38f58d69627dc565543b09bc32313d133ca63cf3c45ada55848fb2b1bc8feaaab99c69275e90c1bf9d0b7f38aee3b72ce0b6c4c9eaf416c29cee325a20ce10c9cccbfe0ad367f6af52dc71b46ea1004db136eb73dc46ca075a6252250cea1ba8ccd6148c14d180cc7b2f1c6960a00cd3dc0581121d928133da43e5cc61d4c038350a023ad875031a7fdc299c9a098cb4fbb8b00f008c43dea88c34068fefd178a98e364b6a7c5a70eb0f64eb76aac3e653c9ba9e059c546bd27c22d885b95cd26a1fa28b48477706ffa8f911846287c2d77ec1e3f43ff3a0adb7f1221e3ffdef74a5812d5cd478712b32d60b35df1801947d1894e3ed66dbc9a2d2be48c6be1f14f51e37af8a2add86f15c1f42f850e51ba1f7c4db77f0368aee067333d8eb8e605806262b950b76f5bb920f7f3be42c80c908016a60fc8346d023f4bd0a256714d9a395ac9e0448ee8fbe5a4205cb0b01ecc3c2e1d06cb770821063b1ef246445e672dd6df6e4c4156961f0af7e42f4513328e41db9827c5e2f73b90ac839747003df808f4f5b2dca62cb8f2ef46ec941a9e3a0f498a12c3b8061af41619f819a651a743213cd34d62efd5332f2e7cddad1ae06b29ef5d399e3d18599c20028e1fec0aaf184e186da09ddaa36650018392463f49d71562541324366ef7a609090f856c88d07e8ff4cac253ec73c3653eb630bee2728842ede0a83dc996b6d3538209bf2966f5fa5aef07aca524ea6c6729537d0cdd9431571dc22baa50fa12e3621496be37771bdd0b17fef9314b676766a167f3f9c1ef2c850711ecd45145771a34bb0a8b5c7fa578414519073706277bb69e1a29709c97b07e5ad817cc8d072a8f25ee4d8bb2f86e67ed6817c0282966b42af4e0632f5ac80f09a7b967d353f69747ef934387e72f7f7c917fec617c99b4814606613eee1776705166382b1767034cb1adf967df1206e07d3aec529790d21b4fa325a77a46ce24ffb13208bdd178f3683b44e4d874c5dec730e54f864073111e37dd0fa00ad53804ec3737a9e6245e24df1409b6ec432f720cacff48cc385ea72dd76f5828b56bff30e2d1b1fab8d2cc4c0f885dde3dfbb137380fe3073005b5d0ba90a32b375b91e92c55e67d51e3fcef7d67f271b31213709099744c1231d9654b5b75eab100ad5303c9563874b1a4ed296ea5e40dc0dcabb200b45718e729eb07813d563954e38585d0893eb8901b558876e17f98dab37849d14d046d1a842c7e1d358782058495ebe20929f97b770f76b23677071fc881e42a4d6f2504a3de82b266aa473dfe1b6a883c0f4e36073dacaf213b80ab5aeee907f7f826afa0631768970a07321998348820694feb7a32b92414c0d711c95de312d8a9f95c2e119ecf035e493d327a5b4524f85658d1119a112cce2e8f3d027f03d83759e63a7c81ccfa6305733a1e2b486f1c4c2de21aa7b78a69014b47180ba198f68dce631acd9c4daeab389853b3c32e9f7712b16a7c009b567ac7e5de1a556642f992822802e0406dc44748179ddde315c1b839235df186fa48f8907c06167498252c4ce94de8fd591912e17f46f5f72632fb35c90c842ef3826db46314ef1c3a3156a2747b001cba8e32d661e07d91eabfebcaa156fc7eb307bdad9a3ac24c34d1e3eb10c3979536c266ce8c603cc1dead35fc35f8593bb6e0c898d1e39224eef2eae1f234cbe45e661a387a445ac2194dd305ba5e63c3dc1fde950fafee6b0c09766dd1ac2e148420435c8a665c5499bd37b1a8f1371f7d2f0d38e711d8e8438e206cf8b431a49d050a966eb2a65aba6ab959c59c1a486890f24a98358d21e4cd790c657a7b14ea742b5eb25e056bea7160ddf5ada3f1e2c91aa2612dcb1fcecfc77c417e9b2aef8049030c70a9206e22a4c767c51b34ccd5d7cba6293564b325dcc3fff41584f8fd312f792d291fdce987bec25c3af893ad3e256ef15599115aaafc44d6b3ca346e1fb68b488afd2e3a2dd90f514e1051ecca3391b2422cd8e2802f1717116370424b47f5d3e4798d930ab5ae55ddaf429fe89321cbb938976d71ea9573a78f619672c9b9f3e80c4f2a27c76d94b34592a760cb49596f82ea57875fcdd4c72b7b863bf47d2bb3f5d64f99371f91b82903003aa2ca481cd9e10e65888eb62347d35c0579d076148e8667e7ad6ef3c7b5962b5d914edf7764ff3b95bb0ec7f74c455d38bd9fd7451a987af91e961f481219382a8062abb405b7b0fc3341011857ec7373e06671c35df57739bff40f1f2f59d061bb1328f40c325d222e84bb6effe32e31b59aab72d4b25988394409128cb8164da491d2c7fe457825b1dfee283aacc15ee0b550fc9738662b5054b60d81eb54ac7f5d73b723cf860f1ac263e04c676c605b5366bddaf3b3ed8939667f8faa8c7e9ddc551fc4dfa04d004309ff7564fd4818409e98ae79a3a56c5573a48c64be1b43b3101707ad6f98f0c7a5937de82739e5fd4026bc04bee3eb87e9b6b1bfab67a0e0c903d7488293216d327c26cd321d3d6b15a45324091ec34e1137ab23f90a9e3ea72916533543eebb4fe785e83622d4ae8322826cbc057359fa4f6709ccb7e3aff23674ec6f37cdebe0f2a8521d46d14ff6297233fcc4443a379c7bffc9a5638d5c2879627b9e33d461b56bfede72815999a644b2d51c5f27ad628adf84f873c5f0dd732afc2d4d001778e3da480f62ba3c3cc083105693693642b3f251ebce93d3527d6d777f84149454c33baf1a011943df71f298beae16002d6477a764cbaa9f86e5c01748d81ae090ae776e6dec14a82ed02a18e390f71ab62e022faa1f09094d4fd45e1dd652b753a945fc738c66781184e221e086b19eb2412c51e625fd6b400a3265a74f2e98f3ddeb3c512ac1b769a644b710cf2e0da5ff802e951c3f70e13b9aeb16a574b103fed93f129b7bea776a4dbb5e7e326b9cde89a6b4c1b416f5e6ba470a90f0881f2249cf22cd86a499b57ee81ea5d4276faa5a8e4868c46661842d64ebe3e165b9c7a2dc69fa7ec9f250f06d7fc4bf76fdc3e8fdf1c4c5a8466686f5ed34d7029c5a150b4d3a2ce9a688589a80ee29a24d197b635ab5ba30d2ffe53e84e80c0190abd15c269e80b74abdab6a2a661718a0a3c82580264816f69a06c602b10f6dffc410074edb9f5ca5b037fee18555b9741aee287f3afd666054e40e06e2553b4af870834320bbc0929bc64ce5518983b39ee5ae31d374a55d99fbb40f60f241921d9e4956ea9d718059abcdd44866616f5f47519c8646328e563ba19cd6a1c99610ee354b7a6677ae5008483e7a7235c618835ae1d374e3f8e7080fe694556ce19976ae105d2ebb1de3df8df88b850bf889d560576a0dda3d28e02356d56e8b65d81dca1807287ec9264e8de025761f2f6029c2efebeb3b5b57158df0ad849e3906b07e1276ad7302d6a2293e9bf97c49ca30f4ad126b6f1bc55c1f3d8229a39a448e594046f7c83bda582a7335ea21aff19a58b11697b1f77cceae7d021f6ef543df47431fbbb00fdcc55768f0020a3a5a667e5efb7dfefeda21ef2923caeeb14cca8411852f6cd7d8a7d7f4643c81cfa29dfa7a30a0bab23918f33dfabff697cbd1906a44754e37cdde4176ad365697f909a1f67bbaafeaabd55964da6be9fb99f45b083af35939dcfc20fb32f7cc1525c0c8d692a042aa041695ea529227592997662bc2674f3ae46715e17204982ee32dafee4b92118bec54a42134bc8d840104c05f4825e6b898b1b1fc98db5864d3eddc91b438299f599e74243f34ddfbe78ea35e521759783bf89901735587810e5c6721b9ad3730da1a39645cfdb577b3201571f861cd2a4350b743b3fae61949b7552126d2989aa4e274c93a2fa7a6051f742a9bdf9c8e90c3ee09bc3b5a4cbf61e20e5a0f2c991a05dfd66cec8a1d125d285c323ba51e49a347b59ca4ef7afce3e15b8d5dac3ab1f88fe6054df08d1f21b3461c3e62995a590f5e6c21ea1809202bb47e89949b17719bf0b792fc0757e5b53c15a994cd2502575add91872216a462959c29f696c1d5e0a6ca988f0e104ae446af7eb1ef9a76e44dc5c9ef02d918467d627263e6bbb2e9a38e9db9ebf9b4f2550655456ff0cc5a4a6c6a6428b5d3055374836b4f1ee1d20883a4f3a5e3ba0b28d9deb4769363a726566df9dd1dfd81ebf467ff33eb568aa43dffa5887544964a1e3aec8c36b1fee7b3b41c5d3e1803c162cb1bcc86fe98be237c3018df54ee07dd59271f35382eab10c205068015a2ee0c1b27ed85d031d2714d8f29016f584e4730e1824caa1cde6cbc28661d80879617c14be63fa1a476d4d6175f2833994382684ba5fc16e1ce51c0d89fa18530ff7a88c301b8835c057ffefc09e338ff5cc36deb5f9c623735c99a9576f7bc967a39eecb0b9038ce762dfb056fdb15d32b1f1014fa0f472e51081a49203e4cadb6fea6692f33a388bbc19458fdccc77e3ebfbde9613ca9852fe7802f5defb44223006280be5d8856c36cd526aec0b0371f8bfbf070bf5acc523079b59177df304ff0ed82e5af0ff43af1cc1aa1a5e46614eee5ae0bb682649c76a382cd57c4ac22caef06e4a6f806436f4abbaa744b5c3dd17abe004004cbc370ec21f607c403fa3f76f100480a59225a88863ac47d5e30dd98b8507c2232aa54779bc0b680e59c0513fec39ba1aa798984537a4298204f2384e4133ba947dd3559a5bf3410f72d7077145ae6998eeeeb57e749c52cf968f4c7a29d0f14006d37c4b8a799ed1ae61eb4b999d913b56c2550fdf457c07126e7c819c8014a8e89acac77e80ea4c87f5f38c93f46f221a311d330fa73eaf62e8b18c0ea2a9d3426b02e09d4363064aeaafe26adbc23ffa315a4114c378ab90c7ba6e00857f7d2f8a25e524c86280733bde965befe36dbdedc5b4227a36d802eee1e692366e6138aad69938e3f0a8d3d41f941fa74e329902e8f7e19d25f7650adb6ca98f6b772a9e8c6973d317c547154e304e6ae5073c309f05f59aa8039419a722f824b8552f7ec5728c80163e7cb508cafc9d161f92f3df93e5dbd7aef565430742be45871325701da2c03bca055a5219e6cd8172a42ddcc39afc1e21340c22fd027131ecb4bc6e2b9ba78480cf0ca59ba655c187ab87eb4e6fe20bcd862d2d9c47e0e9d99d4281e5db26b9224cca184ea5809be441379a0259ee8d81706e4d7b738e05424e19f46578f04ce27f5b17353e58d56582fad4e10d8d8d0a305b9f09f472f8dd072be5cd1f84e7cc20dfdb8ee92cbfc816b3f54469943f6ce0d33ece7bb831d4f8269fdcef2e8cd437357366e4e16c6b98bffd7186cdba4e9405c608ad97501def809a6056ac2d28084390b7610c91636a5f7736969bc17973465ec228acbae75d9f72a1a67d5232f061fcea3277694d57a7d89336e923e235ea054fb757eae2960f4e15895accde0a24b22296013da31f92c74bf1b93cab807eb3d4635306787d7d3fa94b64abbd65ceef8064849cd87d23f1bc833022b6473e4db1d7b95a09f20f13cb1ecfd3c4a2bcf78bc4078711ba57728ede5efac6c630b53ed5f7c67ea94dcc3da29a1d11dc4d5856b3281d86a95b12ab9907d5065387de573ed8975f837d8a5fecb5151d5eae7291949bc7cf0594ca1e3cd66c13c15dfb56645e2fb0f4d49ac3c0c56c1f37987401ae91f15c53b5c9d4a08f60cb21076aeeb7e3bde1384ef61aa94e984ef8984a02b28b3bf792414e708042aed6f2b3cc726217560aa7741bb0e7d29c575f0d019da7ef4a338895eab93815f1e475582b6dca6176b5d549e14d899e08b5807cde9523d5a92f5803e93247039a06136d6702434ef4793b46876fc1a22abba3cd73f0f1e1b91674d90cccf397dd4660a4b722366bd07d9a798432f45d5afbf30f55aa81c150c99e2fdf37970007a3713e9c97b9e0432f357daa7ef74ed59e8bad7c2a20536b5d3a8d8421a3e46ec1f4b77c0287572df9df9279dab604b39f3800c5623583f07c4eda423bad8ed0e4806cada5c0133e80b6cbd9d35ab719e7b26030781ac01060382e67702d05c9ceb08b0b30319c70a1530a43307a5d7474e45effc57948f1afaba0833100ee71de90a24973553bae0c7b2070d77fd5fa4439045e0d455054bf31ec209c110a152095ad271e9a45ac248e5cc4f10678003884681d89e6cf93848d3489f5fa87f81d432f729fe7ba599c02b03c6bc27e359ca02d6005d483a072c7d5727ef31524e4a49fcafb1c9233c333a3237e10116de0a223f6d161baea73c8f86a13f022cefba01a81553cb188c248899ffb0ae4b5747cf2ffefd288aed41680096601af5a084502ffe5573223bdde2de41f42ae1cf43fc716188f443fb260ffe9cef580c0e655b4009829a421ade953b6f0194ece116cc157f58eed259da7412f6d9e30d4ca44f521925413d5cd8555b5a69b9fe7413f9fe68c9c932d239ee846bc277d872bb12fdd3f88f8987e98b6130153a87ad9b94714fc103d8900aab4fc73f051631766b04f744002024efbdb84569c565eed186a4a449f09e6890552d824d1a2f74f20a7f615ffa2f5f5e2acf2417d04f32b6f92fb33bb577cfb6d5c83c9d854a42c86d069c1c5c8a5a30a0ccab7ceb4e52e73c6cbf7a0365b10c3adf248ae890e00617517287c53d7369a5807715bc961d2a1e5199156f71c2c96f09d44ec55486fc2f69bfc26ee3d6db571da6fdff8641b70e75330ab9273668e66d32751a43d51b401515d3fb358c0651f15b1bfe042fd9fb24c009eab5b48910350d32d71abc2b29b7de9585bf54409bdcec4e204fd9c9092cd26e3c103ea223e0d3a2f015d3ca4f22c6694d636faa011b510487abeb49cb676baf86a604cbb6a424286900fc7440dcb2ecf563afdb9b77567e00896e88de137ccc6e17f016be927890c2fe4f7d2465f72d982bc7c41fe7c3071fc6f0ae64fdf21b1f33d38733e0df3daa47c6230e9898b7640438045508eeb92a3f00908840eb3da6d7102f7449a44b63c1e4f84207f9e7a3558b0bfc99c2e8f85ac8cc1ab7f7c44b054b549a9006b911f090495f07a57dd8fefca0266c9acff4e548feb52ecc2f456bacca1755ddc88c25a6a541b78ecfd22bf0665a3e312a3c7e4e83418759e6da5d7bb101565f6d7b41afeb6dc68269116cd9201e510c10c3477e9976bc7c4ca05aaffcf703c77adf5775e23a3e5f3f8f6a4b945e5633ceb63ed0c73d649119b5c9410e3f93275ae9972412430fc8f3cfc8cf523a9b93a1eb29d2b71363a799bfd62dde8272523075c032871216553040687f831c9cf9e3745b0dc366212bdf43ee3a7976ce19d6effbe01039105f174c48f1cf5e3057e916aee04a736a6489325091c133d2f4771d5e40be11e49a3eb8c18e2c11f027def9fd03f0b8bec5c06fae4eff0e6f1271bc8e34f972cccfea60cc838e298268890b56a12eefd9e91b4eecac9850e4996c630f8f3840b66f936a1be40403fc716449155428bca7b3450e98bafaffaceddd5e0bb80e1bbf84737b1205cced5cb69295bbca0af7a53a3eccf29e1204996075747d95fb58404629d41198023d3982564f115f73cdd5b7a8a4ddaff06011062567d77c9b046b4421223ef4cdb4bf0d98638d189f809482868ceb769f899df78af949043e5b52dedac892ca0cd1ed41150037edbd8ff052a04a13c78bddd1b380f335866d3f894b0b9f0b99aaa9553ad421b3a5c6860ccc0ab54c1804cb553c518a6c519c24d67f359afcc3df2f7573ed032e8a3e6a05096397aa136e46fc3193b29d64ae2ccc04f04989b777cf123dc9bb0050c332550fc57e9a66fbfd728b53c9087a1f4db31e619a14024ead8a777b0c0e2d9284d5e1747845e0f0320f9d09444998b5668ed1b216dc4f15f5926c8c5cc9ce469530f570f5a5755918fbf55286ac2683167a82ba97c1a5a6622fab85c4d6d3072692c5da0b3f2148b05a3bfaa1694d3a66f26f893511a67f08c25e952d53b024f2ff5830e12e9498d8646b7bd2ecb0ef5952663dc07159196a5c158ec47deb98733c5cda5c973fe4797967bcce8eabea2207a4c2d90c5db061c58701235f71f71780ab4b95b3c6d6c65ffdc05d77d0856b37ec7127c8d79ffc1a8d106dc3dd51ad3c9e772d0b941889cb8fe314c3548a68df7c1ae7beb411626f78128a18d76e5540bcd36c2dd360f3ea2e19286afcf11d865cdf61b61a4b86eceb3b6fa1823f7fe5594577b0cbd856b2ad016c830fd061daaf96f7cfab306de7e786454e87d7d45407225f2641621d457a8603ad28e16760a212678f6f934a0eeed04db95e450d26c168424a937f799222e32df5fc2f3a4e074b517293275e0076fbb607510789ef4906cc4bcab2fb95e8fdbc34e1cb0c889da7723f0a13fdd522d52c8c7425569c96cd3e03ee5735f44cb50cc6b2e65cac2614097f5bfbe68af38fb84589d1bffc749c59d75281e3468ccc740c554b47b26e160423a8dd078223ab1f12e9090a1d789243c94c23f55d816cdda6eace0a91118f39cf63c19963aa9a41131bd203f16e6a2da977817cfbba42937c5f8c08111a028b26d88602567c779272a5deb00807fcbce3ab751651c9a9840a42690eb90950af6e77022c46bd287cf053da1cae571c16f0c653fad3bdf7ad429142720c17afce0e5b04409c21af48468fd21ff1b86d82e2472ed7669ace818718a437760fa9ef31143f9d9245f06cf61181603af0f603c1912826c96d8b3dbd5a313f596af259212b34222ba860f0c488f70a6116439e65eeb4952293a740a5c3560679b8cc339b5a56b2ecd0cb2e6638319b0546b9b107d3703cb1ae15661a07294776da85850e23b5ace83a007a632ddccdefbbc479a06f346ca50aa92941225f0ec64b2e55d561677ded202a5ae55aebe06f5f70024ac900c59ab5e3502380a062d56142f9514d8212be22aede57355ba63a90ad8628658b0da98c46e09e8bf81c9f9dd78690e148717b09332711e34aab640bceba2e9a689b78b9946594c24612f74dfec2b468deb5aa95e0accc45bfec4224bf9a2f0a7f4025c07b4b8805fe692a1aab67eb059b7d04bfffcdf840b7c712829c5b90e1db54343ba4a31f1deb4dc5e49f9e2a9ae2d590d03cd7c264e60428636fcbca7d33016c573ef21ff1e53d006275d5488c66a87edeb03f0111f4bdd739e58cb3254c7baeca3e1b5f73c63f67a8ce11a001a1f22cef6e65026b79bbe66d852288929f57697be63eaca007390a8150a87368106a8d0f9a81a24e7551763038a546e44771d749807dcef5070b02d4eb2a354aa70f9e403ac1ce4425d2c97e58e43685bd660355b2ed10aea3491d559d105dc87a8d30afaea3b3d5cc9d9804111939a26401b2d8f844e675782e64820b58b7f6d22c3bb8add67b6fe27cadd515ea92dac913f1d9e24f9c728300d4cba2fe33784b84fe062478558a145e5194064e37c0286f25fdbc87d4c7fe5546648e4897eda258d710287fc9b8dea5e6771bf11a8749d7958f5d70d539823c409e95ee1dbbcfdddbae3476292f8c6293b9eaa51005e09f3413f6f6e45b780facc78e55169422d04d91acbd8259d6985836492d54c9af8cffe41439aecc1d15ef9ddf79fc840ca0d4f3385dfa82abd9f4864cf8f94036f65c6b1bf96f03b948346917bf3b8ffe35a6670b74874566d96ec38929e88d2974fa9e9b8950b75a1945aa776bcc04651ac66290f1fa4a2fc618b2278755e575591fe7168843fd3931aee632fbe8274d9b654ce5b854add5cf4fe2b37be53705409396d4a33fe3f15916c14e66721d673ce6c3aceb1992407d40d3f35062c796941ea8667d9856d126416c2013d8f873647907b77f4ad542cb2c15e1536be2bca2c4a20476a19f781ea6bd829313a41fd8204bc9c511f9ba570597989cb4b609f061b5e6be92639633517585f8368abc94f6fead470621fecca12fea9bb287a9ee1f6d9fdb115e5264c44c3c2fd2212d05902bf22b72fcfa45281ae1a3e709f25fa1f4a84c5d3a62303a66cd90687df9472013684c9d322994b3b100f391993f7fb9d1de10cfe74062b6d2921716417ffa29afa3e95a96943f606d02b574505e0b99ab228e2ecf9c5c3d1009cbd13f6337a7ed0eb0536fe7ec07fa72403cc4c6b2ec4de84cef995d6d7ecc54c8ed0f2bc687b20d73a9f0a1d8d63bf6ade51c605766c2ead1512f5e3fa90dc8114a0fd68c77dc4c60063f6d0ff68dade133cc097ddc3e57e956355a28ee55ef0f55e9c4d7f03818f617b745e2fe39c846d9237a8acacf7be4918cdc6de36001797bbf0706983bfaaae282b49f25ffb86587cb8c0b1b862c00bfa62245497a744d4ba080c38edf75309bdc677c2a8a925d054dd62bdf9d6b851dc3351768a0cfe98b7db820dcc97ecb0654671cf93b4a7e38680463f77b834fadfa2b2a13aed877a060e1c441acf6d574e2a06988577939637a85949467580ca7acc80ee266edd1913d3bde78cc105490603d678146d15fe6f1f03ec162edaaf2394900d5f4aeacd77607ec09a96c3a956f8e878425da99c1eee2b191e53ce0a28e222248af3ba0d9116e0f58cea3364d555325e87f334dce47f6a6d877454dd7780942dddaf04973f57ac2e4bd800998b9d201fe120d46a659b2169d17bfa94603753b12e6f10453399b754cf1b7753b03d2e61d28acfadb3facafea5ab0824a880d645dfcae84520298836bd0941cbe719591e5689b40f2c80becf3637447cef5681a5e90f8f008d84fc7164a2f3a83ee06689e7b2d91d3226861310679f6caf3de347ff1fb471683c0a3a604d2c7362574e929bee6619dd306f05a69f90b2619104b16e9b858c33dd4da161610303b12e0e1f408c2c94cc23659d3032cff1c027442ecee6ff03a10779603edac8817ebf743283e59d68137a2f861ead5cc5d5fc2565961662baa7a71f7abf8f6f5265a55e42de212bf7a90e02e0066483a5f3f213db5a8f5fa4d6bc265eb56afe6ba7d8afb36a33902df1c5e1a96412806d50460698cd9962cfa86920574f4af89c9caea6f9cdbe1dfe7393f6d7e4203210d8df6063ef9da110b3c8277df686ddd6058971e237e83cf6af32f959ae9c547c23a4272b0f7818461592323242b6fa60e5be1ec635813b0901e8b7a1f0ba1c6b519055117b9a47c1b7824528d37b27a4b92df54eb4ad3ea6a896207aa6dd297d9f71068b2161013c1b0dc5cd39e0a9c369e8c0c629c40163169ba345db23cc513132d49a32f3ed286ef0f01d782694f220a0333eb494d1cf6a319c45e5b489fb4739738717c477debe2c83903e1d65ab6141b72c413f901f75f97e5926aa90b4cb9546cb76959dc6fe68fff2186e2e9a90b0808c0544eb74e802be7eb9397ef0939bd2a101177ce9fa1250c50f130448aab74a43ec51cc0b97cee70d03052f70d244921410ea9df8d88c7cebf199443397ec083e074b5b1aa9f8e102b0a59a6d20b721727e40b41d6e56cd17a297806c3d4aa1ed3604724c4fb56a2584da65c0d1c683c39b8e1f42d1d1ae1ef1ada302cbd73a15f6295f89783ffea5b87450b74e4d13d6a7b4d746155202d4fdd91585a07f582b4078c38a619b6181d128b4b080f0f4ac98e5ca10dfa4752854ef28c109a1a76e804c0720ba1904dc54a0c994fa5db720b6c3b5ba324c7576c467446d612cd99386a0a834dbb5cf0d593ff255428a65a35d1cedebff0699876ebde7bc31f3a3a04863472ec79b8447b77a1ccc6dd811872e1ee49e1fa41c7695613b56f5af5644ae48fd7775e66386c7cf3d72a085e1192d2c639f9eb8104c61d76114808be14e40450860470b1b5ce5cbb550f09d233ed47a08f7456b54e6a269c15849328780c881e29823978b96a906b81a2658043f0ec8c17b733748501a74f70c3e038c6c48c0e9ab053a7f896c6bd429820754bc17867873bf93de72332a4180c8259afd7b5c17db95c9f10100b350f0bb105471268d5bf1321d9e6fca48e788d38dae74a788f090ef4ecdff273cfd3d14f9d62557231fe16d1352ddb8e9c9c6bde6a371abc5adb322d1715b3b994cd6cf55b4b6461143bd4036377a46240b7e225446509e6c9155164574eab54cd4bb3e7e149540a11a544f9f562d9ef8aa557f9ee1c058bbcdcd03ad667bf847eb76c299f4c7294d15520ed45ecc2d1506d4786456039b0671550af6b22b57f05ca850f344ba0957988ddd877c189ec2b1cf3126a3dd0f42091273e5f04ea276413c9d75730c03708cf6bf8586fc78a0388e73474949a77c0b0dbd5f174b7c913bf577abd58fa51accb48931f2b571c70b8e677c8c1d35e8e99e33bad987b139fa13e7c574ead3be72b0873df9aaa98d04896e73404ce500736efb3d4c009cff42be516b54034065de20affdd3d8aecc1cfaac4a0592a140623d6a121619f5900422145a51a9129a4a6f840de480f26e53643ff3d3b46eea214a4be81851b10ffc20c9b813bcbb13ff47623952ad7247f0de0e2b384cc9c75a9e78364e6d217b47beffa830d139847bd6ec0c1c908f94946a6e49c9b882b482c63ea18e9fe79a9d30141113d51f98a1dac6210577e0d8bda85b7225152574fe2a73ffc41e69997b97207d45f41d53ff4a07e5914f7a77788c64bd23e23312cb0780142ba07412a35bab09c1353763e8d070118d96f4025ff8be0dadc4db601d063cd7850a1e6e6345c1b5e36cb41d4deb1801bc02fcd30b9e6257ea74c123c51bb288244bc9a74462ced6540bf5919bfa45411237bdde755ac8acd98ccff3fec55e8a69c517f2da1265517667738f50a5b29c99142e9cccd6e9ec77ca0686accea2db7746ba479c349b50657c6909fba0a62f783d693d2cc4757ed70b94505dc2ebb757f6499953ccb5a2610e3d2ae64a5c7df6a48142f0a1a0004fe304db63a53678c9bb196687bce73ab6de598094fd6dc9056831362f9da2bb0dd2cf2a99810630ca32b0d0bcd69ffb039d0a0e36f231d3e6bdd7b8960ccad635fdff6e025c0bc63fad8efa987e9a3a054ce0491ce9373bc7431e087855845e7d99184cc2118d22943f3e19ce00ec5de24b7891cb47a37fa22a6d873a0f06b28581d2e2a493bed55816a3abf72e1f36b0c94348399f5c34005806545037cfe27f805e931f9ee56765d6159f43a7496b462a4d128e167e7816d1e19e7f8142119ad8b397c4f8447466ba8177efd135f8b1e59667c016d953eb69e74d0617996414572e7c005013bd6b77f3826d922b59a69467bb8386573c0f64f44d914831ed88698e82f5a10975c01437162b67eb0c854f86f893f37688a1212c9360345d81755936c0bf337d69bda3f10fe988416e064294cd3594d6de9dcfd84fced2d6e8e859bcf7b10fab99867de4b403547b1532e3ea385bd45d131bf5febc09ffbd43010a950af101f83db896d20c8d92639cd4d24477f662dcc0a969240f6c524c2f805ad8822ed2f5132de2c87b18901e4294d483af51a3408b5831bbd01cb607c98e4443188631edf1538611d7183dd31d543f67872aaddf0d1280b4562e410eebfb6d3f1e30c143324895d8e64d2e1485a3edc8566dbafae82318656c33bfc2e89a02b38ea9ef8035ca985b82de26c5b9b09f07ec63b8fa80014e6d1906cd2df9aeff32af2518b256bee8d6a313552649d6367d8bc8a1f84ec3acd93262efdce00594d5dd6a4e95b36fe01c7faf8f5c47a02e64c55936fad210ff0c1b2caa341cca875b4d991ea465d25a051b0387157a56b9f4677b8743ebda8f5ecfd8e6ec3e9b4a8b95c47038b93db1e4caaa9abbb6a6cec68fc465a43e1a883c09f96c2cd6f27d1b7e5a7b69bf17e103410223ad0893e3e6eef4cbf4630b0cce13b90ff761cb8471519e920ff6d65492b49a2cc0e785273f0aeb34e93b5b2cc3ea3582da745c9ef816549150d44f32862b55225c074524b4842a9e880b1bec526f3c3cde2f829dd973f28dde84ee62512112d871c4517fac749ec161300c3a2bbb745ab8ad2b819a0865cfbd8b9cf1f85cc0cbd7c8e08fe1c9c20c16c001aa0b278d7758ad086320fe880ff3c428f5a98c5d7aba66863fc67458b1968c848eac35bc37c4e887758d4c564838f2ef3f2b0cbb007c1b25298718e1373c09d54835d354c06c5f2e433fcb1a9a00934d790ec04af8263ba569e5995541b5837ef44c44b6aeeea4205dc041c9a8601734d6aac603b85e3052b77e42b5b00c401d7daeb4d527e630f7f5efc05193d9273c29bf7bce0b10f3f080a875939de18caf8368d604db5fab4937664fcb3cf8d38db2799f84fcb16f1657b35bf6e536366c00873c3d88d5f7da1578f1a2a47807b54bfd278cef9482f5eb24ef97a40b4401e4cbd9217d6363a3c7da3e21eee44b725359f55b557aafa253ad337bfc0a1df498f8e240d0d72032242f368d177a559d396911c87477fed1f391dc3833c0eaa9d67fd78e6ac4a7983ba54bd12c82331b6291f0ab5cd32e60fbaa28001ab4e52fd47b2fc8dc6ccaa48aea16422cb0826d6d2b23ee4bd39a947305b9e0205d8a43306f049fd6c5f478e56f26d48a60d10826662a94dc327531657c22787263dee9a641c0738ab48d6da67b11d1893ff6762318f74ca6183261644fd681f898fd62e2232134b97ba9c5b4160637d83350b2915bfedc289afe44757e53c769a9eefb2b07eb3963c425f018ea72e74e56c778d3232c066ced8584f8694a0bec98c7b3a7613a91f27558b16cc1157a4283e98c2d58a0264b63cef22964b217c7e02df8b3d344021928242dad2288976f4eb615f439d42d3f956170821c17db57df02c82eacb46e82d237116dc911f29bd65002980c9751376ee1208535aa9cd47324ec161412d56930bbe6fed704ff215eb28c7ec11e98f11684f32fe57e3f8ff32bc658575d6c935315fcd3908e1684fcebc784e6bf4464dd03d3e88c972ec2c6743f3b1d4c5e277536bc4cce387ff0aa42f659b9f9638a719045ac0fdad1512d30cb8c06f6e1167314b9f17ba8bd264179f629d7f282352158d00c239790d696b79ecd6490c7f2cd7299fc3cf29653e8947d6a09d07887043de0de95185be55ba3405df8ef0c42548cbfec83e3da145e5c1ab1a82e315d8e97209adbc15fd399644c4b12e839b76d0720d990e4dbb925a32b5b33266a3f8d8dc4ca76aac0104ae3be98f9907cccf6700d9b27d3f735dbd78629f045d469ed8a4113f2397e6abbe17ee7d4250fd67e2e0d611f70bd4579dd6fc7cbcb5741c7a5737f05511d959a9ead91f38500a084954656ed5ad6aae67ff0c18f7c1e348da06395cccc65524e610779ecd126ddb2f35276c096089bc2a7f5de29793f2b962320c8969d6047057c7483df201c267afe4f2ba68b8f0c161cc7321b878999185170533015c2c1dd83497f4d6670b28cd3c775844c9341338bb5476925c0a40da56459441df519f009d98062f8699886021af65de1c67a45a6b91c9aea6b74a4b1a71f6559f9eb06aa31206c45cebf0b893c1514e31430691fdf3d1d856770521a30b4951a7d0a5666b7498e53bc404f9a1d663f1541769fbbbe195e6cb1bb607bb5e6f2adeb304a23a3dcd8586d9d97d4b6b5a05d12c7c86b812b2ea46f6c64e78080ebed139d36b0d14fca2e1b8b540d1887cd7d4ed3add7a78a601aae324257e6f0ce716f13995be5493b415a492990bf257fcf0da4c85e63f442b342ca94a8910a9a3ba27a01fab27f2f7c769ef7acbb67b2ac616182eb2ed408ff087dfbbe3543e971b11eb19fa26107ef88f96d30474fdce4364350c88b5f7c524d5b04ec113b817838661cdbb9ce08b45db2bd27b72869903ab3ea43f58391826eac778dc0718ff8c7bff7449d8cd72fc2a260ebf8b26fd0d603cc1c17c926bd5021fcb6869be039db9c51f1283eda0223a16dcecf22fddd420331e3596c8ae5f17a18503090b3c0c63264a3eec4bbcf01f153948b97b15d44d359de0a25b29633b283caa3f0f2bf6ea226c9ba13300f5e3ff0158c3394ac034fcf1d7e406b1b8f1b557162f367385f81c3d9c741c1fffdfb0889e2ee8e6d088ab915613065126c69c23f23fe06b8a01d94ab0ed69254f987815b5dab64037119ff870274130c2e19c7c6b66d465c1214002fd2de31caee0258e75f53822b71cf34bc23ca1a2f1bff1f83f323e681a75c8e998c331bc1085508d903ad726ff71dbe47bf2a6cdd36783963d1d1c39d1d5a1391a27c1a07ab4cf7ff812be4537ee7b8d0feecb36c2213f0cc12e8ea893ca7981fb2350747b1707db3270f978ce0be3cb445ee451cb9c27bdac1d066f50abc1bf78c13c127f664351207f6da26dffb2441c80c149d1bcc3448915a311591aa8b7892637eb33a98b5c741774bf191e6f22a47c68023b71163af100a4e45b19d4f235544acef02e1c19880f3ff805cda65a37a9ef4f47774bec0e642db5fb94c0ed5d7943bb6acea76b798e8fd6e1f841484b2ea26e70faa6294d71df8d7f0163d151ab1d9e2ffdafce8dfbf3d4199927756b5262607b187ba5bf4a48970c2a17e33fd990e47a6bca7eb9586ce0bafbb853de006e07225becc3cc3c2513096d9b4698cb6eee3c5f321922db904767369d3029140059298c518586427842e6d2600a848e0d9c80b938bfcc1d3184d1cda644b68a779c639b45d9d16d122e861b16ed4635a6ab545ddd1b703d8c6b42514a36e5d6a48bf9b2a941fc102b98d5838ae11cf51bf31ecdd64f394757c6fc406bfe18cdf54e56139f0dc41bc871f39a7222c65500649df39243ffdcd13aead05ea5bb1deea54c3b994e1d248fb66f7fbe07ee315f74074ed6b76ff48b7c85d3d6ba1c2d3d2849b201992f028c4c950464546ee87e07297e4a1be8ac1da1a673127298af0909404290ebe068cc01873b5332c97930335c40147e461a59ef737c700c1edc322edb9fe219ad4a1adc47d972f8dbc36fab78e343c04f01a80a79d5a89532d0d477c892fcaad24aa6381b4f68a79d799ecd816c877abbd92cd30f1b39d4a11df589ddddb7cb0231e777d47f1fdc288dc504e79e2cb0f83f238a366d661d03cb3c12e8f2b091044710018798dd9892a6a0ebfa89076e084d2a8942883202b1da55ddc77a16ce332ad5b1e9474c471cf5e742b98cf58df0e431f11c0d322f182f3dd761be45929b3912cbe462eb0253cd277c18f131a09052ed1e68b43afb47856deaec8112acfe63a7d38ddb3ef2e902b0c65eccb0ff08cf2e02d2a83a61c0804ee1ce5b585d8a62d9f75500150e694f0fd074075cbeea2265061b33cafef161c6aa2a5c3f9c541999520b6000ce9af8472707640862b2566a53bdf6de3ce6a0cbfae6fd3d8cce0b2f51313e0307a553300a93ed88f389517becb6cbbca08a38b73a9962c51320539f1e570c70f73a181e410042719d581b742a5fe28fc43dd6ae76d3d103064701d5153e3f8722d301d665fc5f7e419ab5e07e7a62706e0fe73fc769b3c9ca763da76682cd71933afa759bff42fecc880ec94a1ab8fcc0d842ea3ae63c75fa626b2e8a200056687c6c81c68b28b1002d997196417fda8fae60b3633c759bebb81b27ade24e3cfcef1522cb860ac52f5727db2ff71079376b30494befd5e104b3379521c9068a430fb9253bc8e69e2ec820b70e3536295a6b982faaef3318cacd291482385fedec2dff2e1cd57095397c9fc6d809d63856651a7531a9c1580ebb02eacf4cfa222aadaf8e1bc1ba88265b6c03c94fea35f2eaf57c64a823f9b8d355a15bd34e030989f96f530d0b89f362f6aac13d8d2cb026f045fd7df293e96f6523c0284d3a50315e9f9802d1ccd0519e0d40086081ebf1cfea587b416e2a904491d25f07532017c8d62c35cdcaaea7eba4c18e4fcb45c5cddc904aa6bb6bca1335630fe0ee62652974c90693e33f91126830b791afcfa1eae47f9034465f851c7b21dc43106828d13ebf62a6ee164b3f62f281743d5584f023b9ea882b63381651daa987d6130564fb1f381621e8289a8651b6020859a2d8613cffbe06019f496b083cb0caf1e9d73d5914ab289639f9832a2d747fd01c0653ee92a961cc95409587ad192b573c5ee77c05ab5897f62fca770e039976be55861cbc969a76912e56d83e00fcda07f04a31de4be910b069baa6e82091a8ef5564617538e3a66624adeefa7968721041bd2c507142b2ead7ef851ea978a8edbc89007d0688dd9f2295a13e21bf54edc03459265581af36a7be06d407321e5dae9c8cecb7b08ecd5caa753e2d412ab132b013e05f89f29dfd080fed829cc7181d95d0341d5e22954ebb7db9201085d1eb5f23961824ab3a410fa5add3d8f949e05deaea50c5cab54db128d70461aa9fd0f26194de258cb2461747e3685c89e1ee92eb1f822edf6744a57fc03c1e230e94ddc3f4afe08c2027e714438a4e6ae0d1d15a79a34e753773de10d23fdca7bdd4758ac0211e471084c4ab147dac1699bfc422fcf19f820e581a350e82841727d75a2d65c31cc7cc90f2def30ed74d99195adb9b1c4ff01c3c18ad33305fb69062f73f4a7fac37216e776f58372f396f1a0b0f5bc272156c2c4bfd5e176410b62f399e503e6505c69f65636b377ea910b6ee95b94e6b15a249471171572abc60a48780746cfe92a554b81c162b7f4d13252cea6652f8047c41965ce6834529824e7a75e113a1d6caa204314fd7294765771d64ef9d22ec945401a6608236a63fd2cb9c427d7eaffa78367eed094b7bdd3f5a90bbf5e040453529afc7b6e438b56f8f30190d160bcff42b59a2eb968bb92e5e0f8be911b9ae2a80a1d255614ce992aa30bb40592fe7a319d4fa09384ffbb7920f1d27cc2a4c5a010e38516303cfc8edc59f72e94e991de06c6803edaee98a3538f34e9b13e315d591aa2e9372fe2c2c98eb82fecb4759b28494d024588bfd5e014434e79ef33507b01a9054f118dc6745be217c7b1fae941b54962bf05bebace14ba62045df12ba4c47378c4d50b3eb0ade695c12f07696baa6b4a668a253a2314445e63c211c3c218e4c6c17b1a5bf5a3d0b3b0c5a10cd80a7c2d2861561de0ff54f6e62af62daffd89f262ecbd94da9fb4d66263aac8f97c433135f7380baca6a636ada562dc02c215346ff1a83e51ae3022f0928a402c5d89f5fc747e4f7da68d0fb49f26bdf433a1455e3e7747d6210e31fab1419e808bac705ef98b570f9dae7b224bc4cfecc5f4e1df7f4c41a528fcd7ca197eab7b56017a9d578afcbe953b923c1e245e67011eb58ab02b8f258737f9ad6bcd634abd94555f422565314c517f8854733605652f8c810f0541617c369f458b1d863453fb17442bc2fbd93abb4c8ee2f4a40191a1097ea58fba16962421fe3d76a02651fa97edf24327ff56feff238cf62053d3630be763ed785dd86e11743333745e701ce249f94b8f5361327a4ac5348d8e0009f225875e9a9f193e9df91adf5accb921ecfb2d3b817680886c2d621733efead80734063e76aaa2130a151a733e08f9e82eab2d8c3f65e94a3e95a7f0e98f801a960f41add01303703668096ab9ef702cf1fff86881aa48674ece2fe411ad19859e6790b431a8c5e122ef1b80611345f1bba8a73002064d01951884e19283444e92c7f4eb72ca93ebcf7985d5ef4a968b274c0f5803b4798dc8c03f6165888545717bf773d9adf600efb85b703fe16b14ae144d6564057d0a489c1fd3eaaf11d3a73b78d077336f60e2f6feaf96dceda60c8fa2dd24e4147dc5031352c3a2fca1f9552c2c6710eb5e67792270f6f19a848b798f34307b2848743f59e1feefa823764a6185f72e93b7d8df5e53c2541b716eca4e0de31ea414b6fee75152567a40e21c963f68668f65c118c306c01a0f95d04d14224b033de4aa6130e1e15b2115299e2cb0d556a1facda344baac6dc47c047a0e1975d5bbcefebfc335ee78c6a4180faac0143fe1368e7e692e0300ee8a25506aad04966fe39398f4907c20ecfcf4296827b08901e31301205eccdea845fa8af77c9befc0d063d967561e5cd1f16277dce36afab7d0d15a8b3bc5a934f7d5e437a8a49cc651fbf34734a34326a91d3841c3eb041e36c73af8c332d71ca63ed684d8f8e87d31026340916ac619219d189f4490931cebbe6f64e60c4fac2bb59955ea2f99d96122cd944333f0f5486509e037e17743e394eacdeff700621ef0f642d4350f4d3e57200086bc8fd1c6776c7ffbb637c8b2b155a880dce0ea4af7abc1e3d2e52d68b068ad241d70319698f46a0e922984026f0b03cd62791bdf1688f0f768446fa12426dda445d2f55382c0708ad683e94473ff4958a41532a53d1740e6e81672511eb258327180be9383437f5477a1018ed41caac39eaf08d4c8833ce2571d9261ae52e817208e8d45d7c27aafa4a02ba9ff6245e8ad2a11d813eceffb9195b34ef4d34e2191214eed6b8db8164eee1324b9f21175f6d160bd6ef83427557f58ad0d28bc61542c8cfbdc2c8581c9380f0b51f06ec64b6436d7b3afbd86d3dee9a28b2592319123a400be3b35eca104e2b77be94fe183c2fa8cc66c846cd48791cc68fcca63ff0adc8fc4065cf5c3bc4cccaafdddb83b3df0286ec485b308cf1fc932c9a6b710201f51fdb1a06687b57a70a9ca8fa00ddef8fe87fbecb213c8b8719864d5905f80003a3e668a4b300870039bb4510b413cfb166f4430bfbcc7a75d22e68bf55f764322114931cf6ecb160aa119d7a5aa4de5bd7e068259120fbc2e1c3105f4c6cb0153c7ec6b2dcf092398d5f61db57a0304fd58da8886dd0172e08d7e6666eec4523eba1827bca9d849568bb74a630375240354db064a1536647d9926cf758706fa5cfe1d374c569b4f05697806a5c7d485c3c53fcb246a5a6b38ebae9a3148ad0f24e1e34952182f6b70f0826f4f144938e4c7385ca93bf8ecce01d2571471d626256a1ab75f123db42aa95a6201c83607dff30555c9bc48fda359814fe3c383096b707593b3305828118621a00fb86d55b96f1820e376fe001872f62645905a59ade4ccaa4ffcb1b537a1e815dda90c4dd95d8a131e2fc19d4e05f2b8e5302136728b2a18520c2887799c37c23c1e1445b7467a3e8150be3bc4b57472e5f2d7b322bc4b2d2fd6d3418eb89295d5794edad8b62601c5a8e8f960bce7f9100e70533029ed99db54020276baa897d5fc795b71e001b148287ab7a355d6d4636a5c5fce8b369fc34490490f8a9cd12fd1b3d29a6a1e7aec5d8927b63229a7d064c38a380da4dfbc583e23596d733e72abb1084f0ada978a96b105b1c1121b006a225a22c137cd105d12a160e0b7f986297359dcd8fae65d22dddbd5e3538933170739df49e74cd5dee4ce94e974509158547198dbf0c037656fb21da6268032193109be3064b75fcc1c1dda4c7d8dcc85a47823f3384b450c467e7d6c88bf05ad8252f738f6deec4b8279a8543ff83a39e6abe47388aea16c8f396aa3f36cb5df0eee282a9664eb7d58699e59ce696929baf30c8db7df0efa5db1c798abd7c5328673d222681294e4caee9fb66ed0e1e33153fc5e6f35a838bef835e20f49544d674c96f0ef1f772c1fba0ddcbafb0557561b167e60d79b758bb01e33606f254ada9e560613d0e664538a909fbbc789a40c7891ca83c665970bb00af81ed82649af8c6d62abdb4a89688f8ebcc4ef96144b6dbc465c25168c8ec33313265c75e8b1c8b6e696a58b5b37064c15b1e9fc3d8ae413000366872f0422c35ad0e534effac0aa7ce8e71e394d72c8bb8979a1f87453e7a88351e649097a8ac20f29e1d78545f511bce55a2606dd4657bc17221145e439ff2bf2f558bd3f275824ae449a1caf2bd663d8d49dfdb054794dc00c6e7202f34bd4768bffa00152b34e60820cbc402e7d7f865880c48afb3bcf797612062d7d3bf918b3d34cd8c8ea3602e513ce6bb221b823a19ca0c711e3e979cc3f899fd7e9aab043881b48db7e186d84eb492c8e469cbc5e789028bce374381ea25fecfc34380d7bfc74aac74cd812d2e2237bdd9aff11885403b272c2152f92a62f307e61069695218c8eec454bf383b25bf2fff35378cf6aa6bb3b14f89fe052148bae1ce08a4748d8667cfc918e413ab1ffdb40cba9e1a55b8cb949dd2cb636304850941f0560eec680df9334d1543cdc09402995f41a5ef6e9bc37c56360856c9010d26b267bffcd7027e4762a33bcd4ff10ac0555ad389dd2919051c02abcc1c0194813dc25ba693e95fe91ad6215e0a8c4709646922fa3f2ada220eb5bf47c4bc9b724afebd743f0aa1c3635d2839c3a10175e5dc8653a14c53c304c219014941f9a63e97c5720452aa412f8b5b18049d087ff7ca67a5af29d8d0acadc7c93a861cb4aecd87372be67970e05a06a8378cea812024dd745aa0b272a89553a85a403e1f63051ff9640cb5591a8d29026fbfb01bb0d573b60cf2f7d1db27ab7e1ac0cc38deb4569adc62d2f6bb2612d6c9b392add169108a0b3f8a36e4230b07b44d06f15fc425fa0df0b2427e3952da817a34d344e5ed47e10ef9f18d6eb1a934bbc719da8b1573e283e2c4169d43fd9d5240624fd91ad5a25a25300c197a54ee1468b03a1ffb186c36c84fc8e553ab205c3904df15c353811f14f1bcc1b188f13a4e332526291464599ea6a7703d3b8df45c7576bbf9587ab019e0e7b49298d51bd0a3919f1d84e2b102c8994740fec8e07a9ae3f3bb234394fc4130e63f3f84636bc45114026bda293e15de63051ffd06840331e19a7e66044cbc1c1f2f39ed015ae0e4ed3f7127b87f115baf65481dc57ca95d2489e0000ee8bde406b7ac55519f70244aa08d18503eadc35a5f2135a9e53a3ebe2fdda00532a4969f23e867c513a1b080e565ef34c521ebfa51f550c2484dad2dcd90d52f53b2e11bb01450ced785dd17f40583a7d647943a327bbb744ccfde2ec1a38f7c7bcf0e3a104c65fac8c037f95cb9e642928e5d25168d38aaeb93183af0cdc51fbab2417ccf8c5de4a9688cba68f9d89c7b2718fa067dd1926ba790b917db593470b810f50fc027fe2d2ca79196d332a0458be56d5dc6f3de63167d155ae7ccde99bc3871d6a61f634d00ceb612e103f59f94fb9d0bcdba65502df09f5624e70deb3b82f1fb421cfa3d781d3bc718e2f07cabb8e20867bb98c9f235f6e1b2f8b43bdd2584a557ae029287e67bc876af4e664e151800ba946b250963f5d50e5117f9550563d1ec0b598a04a523c230d1f107de30e605c63545497fb55ecf767f0a04c0a35939e56a49be26c00080378d364ae905cf15fa1353a7a6eb5eabdc4db41b8781e4208ea64d550a131c7a2131ec4816b4e46256dfa11f9e115d23a5b4caf6e6c50c214243cfa2cd4f4eb67e060a4befd82430c998ac636caa7f4ed0dd1aaf57c504519b64543f9d159e0084c807289f2a2662df0f2b163da5de0faf808a51e6ae42997460d8cd10886e12547dfbc6cb53946790ae6c0a4b90fbef42920226fe3978ed67d0ec966b1c418b41bc8421906a770f6c38c6bd0f33254b9800559ed5e242ec40f1d4368a6992dd1a1e4f2a46ce6463edb410b1773d30e31848446891ca5983701b57fc4f7706040c76b2b7a7833f6feff3b2ee91ca9ede8f3d6beeab7e92ad69c0bf4531bc32b714d20024131fb506445572adc06af475ce7bd766b6a529fc6356ed55869685d84dfa2ded7557d009872e2345a10bf74e2b8a7dc0e326885204c11f07fdc18adb162093e51c81095895d5c51a5999d24830068e2847d4a3b309de51c3cc5add8abb9a66987efa5a3a2b76c5e8c4694861bc64f4f31ecfe245ce6dddd3e9bbef03d9bbc8309ef7f937e3d6098a7868513c701f36ca42e0b551daea5f4a60ae2ac72bfecbd206e5dc6a0d4153392ea18b4502ed61d0050f8e9df045a12c14600bf3562b460007eef85cf7f8a180cace28d4424b4ca2f9dbc81924acf55b5f9e4f33bff39a062316fb6257318cdbdd19650c3136b4413d329154d4a05174ad6f2265a5f31ef400d63514f8020e9cef393709a988a0fc8e27248ca8ea4dc6146ef7bb0513bfda549d5a5ba308e27c65e4064deff0ff8638ef1643389bd376210d2d3000639c41ff622e02c9f55f7b7ca8f0912056418a4b4ddcf44463f726378e9f731ac7cd1d62f0770f0cf3eb983ddbc34206898a24d64a80c1d824be8d67a0877018cd6c2b60e58e407c03bc76f085d9e7e6025ee9a5d1e247d83536d6cc29ffa604f9126269f91c53c4a6fa1d86c877d63da3a42f6ace9067f38f37b99e387e3a2ace44245f6a9c37befeec1750b8ba3e82b2956049b71eaaff875ff7ebeaaefe66e02e2b5a6f5f6c3143d3c76867b76d3b321d1149ca050463a7232c554fa1a3f8ba2f925dd052295743b6c756a8f68f9ef609c0a57aa74d2a0d7b60d70a0e058c1f923f86ee192d1b9b912e56b2a5ad9dc443613b9740ab163966ccb5397e386de36d0025b29e1f9bde54247b37fd3fb478187710e39158a0974be06667f46afc07b374529ca73b7c041ee58566c5979e1fd7990403b60b138f385968d749a31175a70577bd4d0cd23e37b5bdb44ab9b89df0af21673246347767243742de58b948f9757854123f99a9563f7b43e32a5b1679b953eaaf645ee662b19aad084d1936785b2678ab04d5bd62525c1d37d6bf444379d6a2925175458be8fc1e476807a631de2e55c94643ab3b57127aa676e3c6b9ddfaf2f32a6fff8d3c998ccd7797d6f7863d33c9016dfe6e30bcff2f64a9dea0c08147fbb180fcee098d1bacce8712387350fa97417da3334153531d2ccd8ec9e57bd045c936cb5dee4a6f0be62bc04e1fa9a7f9484671e6b7e744685ea1d3021140bf5ae4eb57b949258c4cfaf676c72281896917a1079c2f57f2ea42d1a82ddc1927f569fc2800af28a01e524ab538bcae1d893ff8bf068102086f2a368b08157eb4b6ef71759bbbcf510e6cba881db777fa22553bcb3146bb573ba139bc98b2dc54dcbcdd0d88975e8debfabdf783d60b2230042ff7e7a90dbda7fda97afc72731ac1ccab2158f2d03793e98290b35ec42e814d8fb4f1e84b4bf30db2df3554801b6eab46d7886bcf16ae9d6bf8f1de542fbd45fac50b481974e7bea420b9be6099cd362e77bb809a45a3c8d8e4b01331eb250bbca1ab69dbbc1c3e56ecf78cbf6e62e2cf9ef5016072d792ecac51066aef02246f2d952bea194742ab04df6bc15a2df22f4c9b423fa09127215f21c5efd37f68aa1153bd8bf10dca21b59e6dad75a7fbe8df6e9aff03f8dad0a5f6b297b2095016bbf7703fa012950e90f665784959c0999f3aa1c801a944c1c91aea95958a1f231f7b68b334e4b3895a44d3903518bee2bdab0fdc9d93ff5bbf3784fe422060f5ba3159aa2b43c4387497327b81f5cff2869abf1d57ad2967377c3915cb7437beffe98e39d7c501740b583edbb87d62a2a71a13bfa4446dfbe2545643803648e8e5e598d40f803eb5bb8c253773b2c5ec18f53cc82ef3c8744477c1989dab06461a501a5fd29c9107ab425e06534ef5eb10aa6f91e6d927f9ab6eebbdf4e70a239520923b80cc60cb24e7505bc9850193089360881f68c7b2c8d169b3121f2b565d02d1debec8300ae898dab83d5b65256c34efe752937f67807867df59b11bbd8fae117d8005db19fed0427000ad80492c081e01a52ed7c7f5e85df2452b1f782e9efc4b8577117e45f4fec8acdeffdc33e3365b9edbfe8156a2e82cb7ad549ac4473aacbafea3e96952694ef7b144e29d411fbf5797c6500343a50f0d0029e28a13b7e865d320460226a42544615d1120d6603f200529de7e84e2c8e7b541e7e6d6fb985f16de703ebbcedbdb5f639bc6a25933812fbc9326f37a9274e2685eca05218b78628477da4790686ed3a22b17a65dbf34657380c6dea7d5b26539792e893af924a1df4e7899c20b3376bd3a8573bc6ecc08bb1b76035ffc5a2d388a156d7716af859f84d5a5c3d97eddd5c99f89353656e74c8d50556c1ea466481c78c5fa079594f41b8c3f459ce096cc0a3aa55444ff7f60dcdfc4ab17145e07aed79ff5fb6cc97c85a6e47a0cafda3cc80dbd1ff9bea82a0a193d4e212963379d6300a08a65c8836e7ea0810c581ec471d85b34f27f6024b2b5a7f466ab7f3eb45e893abc7d92033a169d70849e5df2b9ff7db88583ec2281b21f839f4a5163af249d99940d8b19d63d50c9f2829eae3c72c92b06a4e6d0da446c1954304b2478ee6430f60042dc71c2d4fa854c76a55b8b75af7aaade32cc31af805e28624d471bdaa0bd04d21127aa77a5d0d68c28eab232ab57869b87958412548390e257975d20b4e2ad1489882fee80f994d50e504efce80fa2558f5394fd6573b1f0383d4e8f0a1ae28406fdcca43f5744af1acadadfc0f9b1ddd062a65566545eb26a6245b71754d6f2c8d149ff26f519101205876616cc11dbc519a20df15d0a9f0c13a96eb019ffc9f30a842d8cccc4a957c39f1e0610855379f46dc3db5b4176130837972f80fa288909eb029557b6b6bb2567cd16073d00559ab1ade02841de54a3c120a65f06d04e58d1ffc914ed37973375034cb2691fc1cccd060bd31eec460a080b8194f49cad8954cd923f479fe112402b104fd8f0a8d16630d328c4c152511cb3fb6283d8b09acd95eaae6000efea3de01e4e8dc6ce932cf5fc650a1c3f2ce4818f0f7ff7c7b4932a7f2d8bafdf8e99920c9afb5b364301b94d3f8a5b29e4ba6eb46dbf9a13a0b209050ffe706bedfb09f62dcee1ef265e0a95dc6e504f22d966055bfd11daaae1a9d4cc9e532fa75cc460d09c862c044a7f20f2ad26571d29f851029bf6d247cffa6d9c8dcb9a285dd455f92ed1473abc11d735909d1e0dcd3b42087f77197df90673ef0ec2179fac7d600d4fc771e5cbd46ef935c44716cafdeaaf232140b28743fcf9647d17d2854b0065c98613bcf1a9d54f1ff852683de9f8656d12a37a27ad928d72524314a24575f259b19063b019ce2f405e4e015755e6dcc9d3eddfe3f0273fdd0285d0c94ada53af4ce49a002c6ce54a4963a589dac6172473d717e1f0ffca30542a539ee9998ceff6afa4cd5d6cf03f1c0df4cf4f62ca0ae3c422f247d9c69b26f181834e574f1c4ccf670e8934b501a033403d36703ad0fa9758393b37aad3b86a7933a46a3d35e127a8802aec295a776d56da7f8b9011c89cddacf91efee0f9fb4df80538bb1fbdbb63ed2961e7b6fb277c279e79a0fa6730fa9ab16072573a4a24e5ef96d2693e1633df442cc64e973bf0e5875914e5094dd11366b05742d5d79878410d7e8116737bf6fc62cc6b6b628b13de711d048d2502753ff387ba09efef568ddaca55f456c7566ddcf91b144ba383170ac552cff003189b99dd203ad32a2e5fef861ccc29cc60190669482d0056c7e7583b23952aa28dc61d4c1cc698e9f05292db70d899e9736260685e714e5bb353dabbf0631ba7806d40be0a1205c76ead55334c1b7a460abd19805957410cf3d25e78939dca54127878c9cb22340726d0c42e470ae3d424ee11903c422f2bb22fe03dba95e8981ff36ce8dee77c98a25334938cf28859aa22f2ecd0e83e8d99efe615663bf1a1c3565f165d5ec2e2791bcc9da89d03734cc1f216f63c5cdbe132c71ae7655d8fb26bfd5941cde4dfc8ba254c3a78fec0777729ca67f54f2d1303e32f09e08d2dd383a09c6cbbb5993fa7e09825af056f714a006a221a21c28d84a4c4fd2e697461cfe2e9713062705c37bed5a78dc3a464f4080ef9ed6cfadc2f56e02c9524fafed1fa4ace931c777374c97effc92c32337cb8f3ec964c1e470606d3ef93499b769a803b6e058525fced12ac7361c4b03367b45a2b9343b3c3c81bfefc5cb637784f5bba89d5feb94013891caf7e20acc6ff5d2b0b67320d03c8b582f1069e875fface5ea8625ba0aa6bce13fee968c1f73ba0bb07002096ef7c1b915c3c2043cc2c6562b84ac1d80b514dceeacd892522b6bade331b53d0488083fb140003cd84cbae87a67226e3c478d3bd9b168d14b9cbe513826034cf27607785ffa4932eed171eb1e1c5d57690cd9cf7e7bab71a2c83e246f7030e884984099833558ed61b724cbb6b38a9949924eec67fd381ce0ffd485d93790a765ef3243c38aa7aa146a09250e30cae584b6431904ac68b9f8e2f05bc0b745f8e4382481dffcc9f673926235798a3294737d909888eaa1ba1cc4946325d465185106a568a2e018127cbca07af7ec5db889a6527c6856e5430399a35a5f0ea3e672452fe388e405051a6406f2461ffd145d554fc8de384dee639ec01207a912603e0492924cdbc167053bbe3c071d0923ff8ebecdb0380428e85d25c439c251e6fbd3c374147878c481ea60528b8f0e955cc171ac268f961c21da17c75548b366edd50488ab4e5e65f8a8fd48268356299efa9a230877e2a0499b745c48ddc28999db17231749d14f3d672a6a300dbf75fd9f904d7d0086b56290e1e95073568ac52db07a227a0d93d3f1a2e7f2a85d0f98e9d68a80023c296fa6d80ce2cc5648e6a8afdc1a15cf166deeb1b77d92a4223deb64cc9be644182e315f6a3dd4169967b2963abfbc2802a27939ff9c82ad4cd515bde4baac89fc44af62ebc130d5e1c8e9620dcd69080fe83db62327227b02147060d1f550aa427f1a42537f7fb16c5ca4d71b23dec4e686d4a041119d073a6dd74bacdacd132ecd1040ce17c6c6351459cc6501e764df0f835d1ba38fc8f01d59b5328b2fc6a1d0eaa8e2dfa0a6a99da7803c2e6367909d512c04300021b1751490bb3d632b2368877ffe6ba19180cddef35bbddb1bde100df7871dce72df5a6961bc80654db01d1e3c2a6d2ec20263aff004578416824bc864910cc77a8b6ad66935b3730e45a9f34411ca67406c2a2eefd220f089f34605583c2e820b41476a47547c56b8db84a1fbdbaec1237e34e24c3e40f81784464faeb65cbd6f45b0e2b81ed1a3cb5bafce570815f2c403859a2e1945dc835d1057fd44798d28958ce7ccc258a6aaeea71282a1c61d4542adc9d9dd8c026c62c4a79d6c0499d7893ca31f31aa748b93c83f616b2cf2c4689905eb2658f6e541d7b247867316f51bc064490f162015768a8dce0ca4c162236010ac09cd1890aedb159e5cecbe36a7925fbb05376b4005d4e5eaefa99d72e44d9aca8ece8e8554d47100e6a351cdfb612b7d391481ac15d8c0ce96010f41b2b16b89653c3185de7f632223df8caaa141c00e7dbbdcf92b2e013de980d9a2a06dd4b72a611ba4cc8258847bfcc6f7001dbaf1715811936516d1bf5b140a840cb00fce419691e91dcb60cfe95ced6a57fa193464b43b1b7a2d1dad3f53fe809d0394c0131489865768151125bad62e417dc28b9fef4629de1e10396fc019a197341d377507e1ccbc6d51a80befddf954379229fb08bcafc22f53834f5f2fb0527485af2d6ab9eb1e1c14f0644333ea4d767f44b3cbf22da4cf40f95013ea35fbd96815e53faffc286e2766d6eff65f584437d024be568a4b625213149f4f66b196246386298c0b2656efbb569657726287e239a5ae5059f45506c27745d934746feb8c65cbb28db6280013bc63ed646e1e560c8c0ff42dc014310b9d75f3728bd6be76b7571d099e20c1b94aaf7a956edbc5e131aa244cbd2208e7e9ab7523aa289ea1916463f1e3e8d4e890adc07ae95dcb7598ed7d9da9a28105b629a1240a3f94e909282562bd8b2c37e377000e3baea5e50235f2b08a646d0d12871ce3bb25c2a45d25760b99cc3dfb9b16575ded51f1ba2d011f1f2428377ae7e2c7c4fa15a8b6980427f2b5cca95f6861ffb7024999c7c979207c56b52ab1651af8f665013cb64f4cb44a4a082f536a67e0f60e626ef1609e430b56370e7f5d8a638160092a9ece74b2c4d54ee14a09bbbd4b909cd7a38dd11bade2922eb8c7882444ca0c0a2f84ffdc5a322a55e767a5587a5f2bdd2df7ce9af439ab954d8bb17c6343a566c6151b9e640f3dcd60599239cef6801fea609af4cd452299fd3fdc061363d778e6366675ac0315c436d45217f280f650b40f9ec27708546ae538218d109390645e7959b83fb39c0b908af2dc9ce61e1ef3c95812102741c0220b124305493e4c5f12c0e40c509c4b02f02bb098e59d8c091f85c6ad1c442cdb0f0cb1f4b0b00ee30dcb1a16ec47cb02ef72522ac89c9c01005b29e2b1f1426364b7ba5221de29bb7be387f623bacb528c157e5b330e7081192ae7b81774de2aeb0aafa0129c47c2ce5c6ee517e587a95ae28d7826be3892ff8cca49e61064a78850ab16439f2ed3173851d42070555f0b3fa36c6bdb7b2a40026aed53e64a9c7d03183488c4c029fb399fb5d215364fd9f4c353e59936d08cbb6d10b489086e7197f0405b479ec6acad48e5caeca97b6aa17fe05d2bd6d1079bf51a080ffca41d84a1d4220ef76f0af516a27b1eb85f18ef73474dc1a0404ad9d8226302781ce66b77d161af387591083cbc96e9988e2fbbf23afeafd5f979d9278332836e4d93c819f3f9fd86b87985435888eb93cc484a28c0a1dbe057951218094eaa0acbf7c57573379fb9ca8b551224e2c0288bbd00cb3e5c70b2119b2297efd8df20e1da34fc61dc9f116b5615a5837d34a1c65d2f097d87e22aeefab4394db8322e52edc617706e3a993734ee9b8934055b088a0e24746198f76e27d48b2786dafbaa9d6882725b4e7d1f2d44e7a3346c32c75edbcf575778f56df5571923d5d814a0ebed9e6046980f052ea6fbfbb8ae856d4ebac557c988556d54f219989f46e86ed652c5c5586945f49f20575708acbc1e0c1565aafdbd0b9f3c2d4b4f3624f5fc19f97b845126cea83acaaa66e218d139fd0723135482b77e7152d51b73944d3ea537dfb21b23ad298aa6c5e0a2a889fea5b85119832c9ab762f199e097e77cc883883156264e52ad09680f4b500dea9007a7b98082a49ae5d513a73f66c1b4d6edc39796d32522dbf111b483204b16e5ecdbfb10ca572c98087e2f470db86eb81f5e09e4d2c8dd4d06ec428278082d8bf84d3a8ef610086dc12f3e5120f632d751fbea8325ef12acdeb8d6fbd4e27d1355ad58a5ddcab9f47410a430919a193c4e7592e577e12b4040ae28117d28bc9c12a113db76c89bd635f60348f34f99e08846526387730bfcd8d5dfc4509b13b68a6c1163e0e40200a23122e6d948bf9da660b6d6971b3c5c3fa2b5ad5b3a01af23d9bb5c185be0083367fb74c344c213d4f2d34148933ed033bb8759ee0943af91a06fb6c3c29e29cab305ac7bea0b42812fdc34de4fe86b20393e7342e9760caaa4dbfed6a10738bd7ffd09a50b18550e75f836b36811ad6af3327179892901cb244e1bee7e84bb1b27b63bbb34b8fdcdb9773316c53e99019b015180df82264a0e381897da022cc0478472babe94d711e82a31b2ac3bbaf460694174066bbae3dd9d728a584b49e05dc0422ec2dec8ac520ae44a80b6dc8788e63cbef348fbb378f5a262fe6c7cd57b049896242e5c66ac55a68225775938405d37af0b47dfa8186f4faefa64a88c9b76653b003d2bf5b833c50f06315517ec0df8c6fe9e9c1d2badcccd6024ec756ac24a6f1c97a7a6d678b1bbddd2ffa531478aee44a7440f17744100d65829df6e8a0af346791959a674448f9249774168bc7ada1d9e8c8ae0d57afe41a19866fea7ef71dca236b6cfe67389e1eb4ab058a0ad2b9654082d6b6fac721c6b5021fb7a552cf013d8639dfb8089cc8f9a5ed8a3f5e7bcac91e15374ab4ec40c30f0b5e1aee6cfd43ab613845407abadab95790f8b35c3e0581accb69b4666d228f4242748dc493e0c33ae4126b0f7b7c896467a9df8514c1f1ee99b76b7b9cf8bc33d90c904287dc266f276c0a0d5a0dba51ee6cd02bf99a54504a82974e140a3e1ffb5ddaf78fab7238207a195a4a270e1ce655290cb3687518af7bf824abf7db91f5c6b93b0ca87c31119a4b8be69d9d796cac50b084ff9541f03c254070c1c13db200e2e0fe58fb9c29b33bc4d3e78f924ed2ea0a04b0626b3dacccc082c0338bc4e70b6ec64280c0755c2eb2333488a711c98bba90743e1bdc28400f690d995500498199583d65c0e2e640ad0c7dfc36b74c5e9ac6c37aaae7f1b4e33bc957cb2dea47a52151e959c3986dbb07b2e6dfe36dacbfce572091381ab7ac3c8828d23004fb1a8edc24bb8e443cbac2348d3358d082bd2957768c1b7d8bc7206b6b887aa8e538e2a618f404716ab7cf8ed3a49a148fe7ca64d59b80a513797b543e16aa7f506d1e82513f3acc6a91120c7644ebdeace8f52a649b46eb19957f61b9b4fea2b9941957c826f32c2e559ef116542f98c995a4cd6935dcb30a4e74125d3f385df9d42049d5cf9bfd1f2497bd616ed1d60e386f60a06c96cda73ca19a3a31ef54a7c090240f657127346e6d6a51230d394ace8a295fffc9ab4d7ca98f41a7552aef216c7a1530e5ef2a867d64db5b5e89d0056b725032725d95804e04525eaf7ec2579ce92fe35a454bc867732e0349cb43328c79851611a0511ba10331e3fb67952ce688feb8f17142efb55d2e55aa7b71053db956fa935417ce234846ce1349c698b65f57c6579c627d621d55f73cf653b4d851769327e9326c0f1dd286c17785de4389f193abe12743d1e0cdcfa0fef7862f2a722c6fc27e853685f76fa91d2b80c56f1818c30128cc976093c40f8fab8160365cae18081e59e8b878232f9cde757ea0f7d3a7bf31bfb5987e1075bcb384a5458449e79aa245f730d26eeaf88a627971f9e9ca31575f564431beedac90c02af7ee78f1616ae4048ee986001a3216e9f4f8c0724801b1670de96576954960186660bf6ad6aea68367f12373308f6a171b1fa999e415f0fea706c417d25df983a2541a75635069a0b782308630bcfe5771b0fcea192f14547173d12cdeef501d6ad3764b2a8c33ca946f3d9f47d89dc7b46c822fa8185166812af59a2371987c8b2d6ef369e6d26b63e5192cf960e2fb7026f931ab6f694150ceb25d44cd37afe604232779024b0c63295d058885222ece49bbb086612995f0fc3c2438a7f83c94d47ec4550cef8b0808dd9898591142d052b1979b662865f822903db8e48f5310bb4767610f87307bf79ec15a4815ca014ccfeee358509b46b3736e32bb7a2c1fb8b8d8ad1aa7e05a00e4147bbb506f8906330bcc227bf2835562fbd3a487577303f4bbbc3bf88723c557c0d56b0d871ceccf8bf0130bde209cf3610bf307eafd6eadd34e6b39fe27fb5e45863a54c0df8d3e44a030d789467c8706a90bcea0ed149210c1ecc3de83744730e751e8ade30cd8b4b569d2582f160f00e7b32fd3d8c44d8eae65efc647346dedfeb8661fe1bce68d1a5dcf791add14bacf5a409dcf9222c15b4dc262a5ba09f030fa5cdd95e34672fc5dded71db8c5a85fbe3571d2ef9ef353ceffaa239c8d599396e830a18ef2cf10587e91bede5388ee209cdcc3a4b759dc99c3592142e443139726c67bf29f24280f06f5ae62cf96f09bb3cc49764eb5a88a22dadb65bb9b363b33b3f8e9e5e5d73dbdf8573b33d658b6359592ed3cc06e0c7f23c858688108ea5f1bcfd9d23e2a106c28e976f8863d2ff59483da119659e12b1a515799398fe61fc6646a356ac35ee0551369113bd91303c08e49ad2f58d28b262565fb749334139e3d1e0650db27d7f7ed00fc514c603fc58fccc451985897020fe5f650e7d09cedddadb4c86943ee653df03e521492ce7053bcb9814cd186820ad8e1d4bacc47f0ad5ede5f2c66262eee9bada67a3735ab60e4ca985808949abad604ba356fc1d79f079878371e83ef953cd464a484e563b973951f10f7fe54f67c6521c7231eea599ca7097a28e54712f0f3839b63f9c9f9cfd95d943d0d6a32d91a551252c7f9f916b037120375a11f640a13646297d2660c06627dd4525d8dfd920e2f283a9e01ddd3f4bc0a7a554235e29b328f2d7ca01fc2bd13556fdf1566cff0bc5fcdcd6084e04e685dcafb300b73f94c5f41e4dd97ea3059a48626c3295a3fc1830d4654b0afe134149884f916aa068ee790d667d6305a527d158c569c16da47a917caf8ddbe904e3e4438c8471dcc93330c8b1aaf08b0caac27ea403e9a618405fb684d4408da3f362b33e554503f19c646cc6129c1cf6b64133fba4fac38ae66f4e77adf51658a2ab85a010268f29a69e5614b724d152927cd5eebd9e4770a9ead8c25608dc44534b57588ae357c624f57db39745c7b22c751326b49b6e4d75d1689876e7eae18436fd18904418ba052061d4842acff7e392d9458db0e89a7134f727f8bd5a81758c7c98dc029451abbcb5a28fc41a9e7e6390b13656a397e082c6036735c0c371fe7645ea2f60940652dead4934163d1491462df34f4fe6a21fa2f5b608fc10334b9a3e387380921ed71899d60bd5b322ea41e4fbbf35f19f36ee9c56338371e346824b02f0915765726ccf1e3adaa15191d8cbe6a2e674808a33327843f6d9671211ab31b2eb4881abfb5fb09266b4f805b70cd43783e41e7a196a2a06aa5e31fb6faabb07b3afd2a907417f7a2803e7111309bd747a3bea3bf143c85bb20ff336a1123fe13c9bd60dd99d11d6b38029b4959cf4566de1ab875b40c3074e96038afd7560226457d0b5bdca93af9cb4292302c5a1ed2a0a42b7c7fdc889a20a7005e42d3d3660b5534003812168731a2565bbbd092326d1905013b99679d09b146b98c68c380966e9dbd4bdaadf2a0274641d27e4d19f92652e3c6b4817bb60e5218e3bcb1dab40e8f34d3ef854832d75a6959015f61e631212ca77eefd89027365235336d4aa2fe329cd2d79829943f54eafa2abd0a8a409955c9200ab6eaf33a13d1a0f39938e3c3887d49610b9da6021927dc49c4ba561b3ef1f3e475d4e31774014525b49d16bfc3e7b37f4cfb1ca8b0b8f5a9188f2fe28d5ff2be68d9e06e79e4381f9397e8e55de8eb3ef080091d4cc8b79a4016bf9ff19e13d8b8abad56c058a43f6207749467f6118a69faf85567f5e76c21686c69597571b533b1fd4b690f7b45d0ff70bcdc76e1a5aacfb3b84811812ddc560a72e07dd5e7a36d0b0cf28b2dd4f2b28a2dd235a3df25340dcc3cbbd41b47bbb2c0a57faa76e4ef8d5eacb551ee4b04717d81ddf7fb9b0bf745704883b08789507328b80f8d6fdb572cb53c1b5f9046efe5de1613a973d7bd2114a69dc7a8cdecca97f6d4c38945642f05a93bb256defa0e51d6a9a108a12dbe62169842185672d674c4ad913117fc191c61088c0d12dfb9a4297bcd3c0f9c8d03e9cc965a0407382b7e680d0df1e23ebe7ba2dc6bdeb25c7cfb84babfb0bb95cf7998aa385890d1e411861cc2d25862eab7c0b021ab3a9b74ed305da9fdd5200f5cd4963dff636d0c207f183636491a00fdbd85e6592cd28fb27626b555ce53392d0ce6f77ab00d64a389c06b9ba105d26da386971d68e216cbd4bd27c4e98a054cd53bc4e563780eda5e136de0074ceda57627177f67c955f60a4b6a86cb23b1abd0809fd5e861b6590c6896a25c6e54e02dbe85dd9e0afc034954c056bdac73c2355f38ceee63c83f2b6b4ae6353f5bab0297bda45db113e7a275e16b913ecde2de30a9e26a7116640bf11952376e7a6992dceb8ef95267954acbf7abdda9f10b05652b6ef7198b53b1a683288724239020b4ce4e6310dbe24c40b44309fdfe53cddddd47d21c656fda9152fc4d696426d77705847ee88892240fd576e269a348ceb4cf798e577c6d3d7c2187656eb9c53343dc22507e1418f6ab89761dab1178c48bed2de3e99c416937a254ab3179c2a36a0ccfd5b6ca82deab8f4725d5d480daeeab426fbfd2ef457e7974f36f6a66c4dcc2ec2926923bac10794a9a035dc7d5158d3d0d4080b8da25a0cced474411693d89b5bc068cbaf99f698ae6ae3dfd14402caaa87feae6d54a4167ee43b01eac879dbd674770ae54a6bd1697a1936c43daac3e528bb12341ba4bed3848c08bbca5164780488a6005ad4a687a7ffaccc4c28146faa01e33a2cc6ceb0312fea80e443fedd1c682abe476e0926fc2fe13cc858355a5ee3ce0b7a4bfb5f12ce1ae5ba82b60af6d5480a49da496a838f297844472a72451627a5671e01c8647b4293dea338f923e6905127f9b71f1ffcf85317c3384408630bd2847b12bde3aaea5d705811e245feaa776e5cfe4b77e3a044ae98a43589980463d2694691718416ca45da0f2388ed0bd04e6001d7c05c7590933362a5c91b0412e90749a3267e76837bbd4fb55ea8c67047fca39c0c5b81eb93000ee93561357f58cca347e6493b388cf3614bc5037cebf6078c8f449eb2659aef1463452b6708e84d89c8f4e17212ec3596bc59d744074d9a93145f433c4c89e7d27b3a4ca07d1985ed1936aa011a00c803bbeb20dd585e14986308aa99603f37869d101730281fe4b0650548c64a78fffd56fca5caa6361568cebfab8f9a2444dc887a542a3fb20b6da9c292a986bd116c8b63e9188c1ff6d9a527f4437129ccf1c6523a3f46f0141ae574212266b157cf006a4835e8782b25d81da9db4ede6aa254139912049a44800c92cf680df393fc77bc90810213cd7fe53a09f4eb3a3544815e2fd089ef87702ee255e9b213c999360009c445112acec1891f92cdb6403d670826b218184384c7448128e98e7f5acd0c9caee774a846bf9bf56f9091cd12f56a279efd1331e639837c404e79eead58076e4499d48f060b33ae88530b071a45132286ae2230079eb613c0a0e8da8a1a5ca640d456a802d0dfb15333b17f8dee4afa6b25e6f176abd71ff3cf91857caaae3e8ee78ea8938677f78f7f041d10562c9c3797fff2e582837cf7dd6b2945624f8d17659ed15432c08765f183f196e16b88b971bba39ba7a3750f727a8767b2a1592749af9babe49250ab381ec41911cfef21490018311ef14b38632aaa37e1b5c280dec016f21276e5b52b7bd716a8e8c220f5bf9c59ab750f92b07cf65f781d5b3720f6a1487ef5eec53aadce21954bea638d8b93af9e17338d4ecbaba8bf7de1cc0cd3d2f522b312d8b2c23e5ea104a3694ef2397988d6e94bb19bc6430951f3fe32e26abf138c02f5307a45b0f7a53420f295bb6eeca3240a957cdf17a84d38d1473189040f6455d64f0738a6ed433a72c516eb0786c3bee161908ed7ed4022f6580d280e5ec9c32907c5b7412b04e731190dd98c92e5d037310b78fd73756742d7d515d19b4aa8ebf4adb01fe4144fb3a7132c3a4e75d229fd76c43a2b7a7ae789b5bddb8ba2dac8dd40f9c850b1e139aa1a9191b155ba97a9bb3be9c5bbeefb90383f7d42acf8da85ba668dcbb07433c804ae5ad852f8027d9934fc6897267b2bbca501b6dd6873a3b48aedbf21df6b9e251a6eef56c63f45dbb5892b69d1c5c3843c7855bfdc551318db40f4100a78bb51dde110227877f7ff85673015e5ae7ef6c58b579e015a8fb15f1da066faebf725f387fbd63441200be43e9d263be16dcf19e430b4db7ea22dabf756735d3d225f6575af0687a29872e0c2157091668f3c83f9ec49ca7506034091a934b5c4f0a3e6330041bca50a62cb3911651bfde80c04923e887342fba45fa25af79cf44381224bd801273de31a4780670f400645097a22a4d82b4763b7e928ea158d39a1760e613261285cd17d65c003be6f011a4d56a85c6e06f6a1bf111c716203151839bf44a812b88bae1a41813b61326345ddd0d131afb3ef9f315a024682a6be544945cbf905e45942ca16aa958616044f1b45793397190e2351655ceb694ad07ef1060ba7858fc18d814c80771bdd7576af58aaa9e6721fd1e761c8e1d16dd408d7c0db32601878f3aa23fc9e4d14bc7772af05b71265365e9767fd43988e76732e3ab52a067b984dffa99d60d61a9c7adcd0b9b6cc693d727b731d0761a0ed98629ea6b1f60d6cc0fbeccc5a882aa44a0704ac8e25bd00e8078a322948607d048709d4ea50557555cee707e7ff349c483fbcc3ec5d625dd8d2b0c92860e4caf0e9e29d1fb3760b07a2b63e40a2fb756481279609576c34559f7e978f380f0c5b6801626b314039850af8d74b10fea07a6372c66d5d6dc619673007e9fcfe09c47fc95e99311043963345b47a395d3cf02191ae8f812a68dab3bf0f3cee911873e915cd9c705547c50e05bafc9ab960dbe2313379af422c9e672718634036cd99094f58ca23b7c65a6af0e4faae051a30eee936ec0d9ae1a11340059a2df8d89df507de26f55e50461919f4d4a202adb204c75056283b7f1be59c552e6f7e09546cfc49bff59278a2a91871863bf12da7d0fbcbb40c72b8a23de3b3f95445c94ef400084c747812c55adc894ff05641a2e7e54560df2986b2ad3d24ce2d593658d01cabb0f066046cf8032e2ba8fa3e260e39f355001d2c4c3eee50d59e472e7dc8fe48f2201f896866cd96ddf01af49d71ca43f40ee5133d7cd8d6fc6785e2565a6c78e792e7c3820edcff13db6c12ed897073eb89060274fa55920da69cd7e7ce1d6e87f379ca688483d6978bc07c60e6eef88c23fc67610f861e937563389abdb0db7de2173cd071381af54c9dd5acc1f795da4a4b4e7f480e1aeab1ca336e23bd1d87b17b76fd767a4d0092182a16e721f14f8b88b06be6f9b3067435cd3c409d2cf04002b3f41d1c1976655790f2e0aeb3aa1dc55446a70ae1b5c2c76b9cabf4d24d41ae18c90a5f599abf6a566b5a9f34e9988858dc06b66a10541ffbb6f30177c79697ca8d808f705370386ae06baa5bdca26bad644a45b935e1775de1349334cff4afaebd490119330000a8121638cb14b1555a8e79dd8ed5d67766d296d19dede3d4050f67116607261ee9747dcc016e68de4eef82574a71d207a87fed5c12a096ce2f03d7e8015bc834411b84178a95b614cb4f9e27139e42fcd2365a81d17724951dfcfe0515c8667f4d4911c84dc2165f6d5dff29aed74bd0c6fc6142103be3b7d2f10dc65a97769150138c9606578f6c1a5b882d649f206e9d6c88b4d5bf924d8f77a18f7cc2e8608373e26eeed60efcf2c0ee9949e002771e14b7928a38b345ec60fc83b036298eacb74edf42174d82b9486b8067292dbffb56be2f95ebf39f13171c38b2950feb1ce180c172a5fc2f0347da8d8639ad3e3f974014036360c2c219268a12e1517db50e7c47db65214d965bf53f3a987ba1c90235c5c86386dde75de952322b68a04fb8b9c97e53b4d99387b4ed63135026f41f6f390b52e25d289c90f0976b2a0d4c8815ea2e97c7b582455fcadf3a822832112f7bedbf328df7ab36d025f1513ffb109f936e9a6dea25f5ac641b8927caad302b4e28792215fc158e774c65bf8d27768d8cf0f5faf3a8e8aaadb9a0af53f9b8913e38cd8103fba778614dcc197c8a5300e0b9d10da80df7569ae0bd47797457115dae48a13193fd65074f194de1525a6349fbde80b161ffb6843ba6478a7f44676a1d89e3dd3d5b5e098063d3391e46d34568d84128a1a6f552c7e30e9e6495c3e51dda5025f5aaeca9dad54cb228e03ea3b7c5daced95eb04b94a639b99bfaadaeaa86b453ef879489282e1926052ce7dfa22665190f3108a11a2e61b729ec9c25ab25a5579b8dc5512d6e09fd2a5ec8e0379c28b7af64d5064e063bb80a15fbd4df38c193f91b1cce0591572cd4fa6ae5a9eabf05bc373a91f8d828b4cbcc5019b868650f061942b9fb5ef07c6dc5f386472ddfe2d89ac16701cdc5fb0cbc04ec18e8619ac92e0b0bc8dd4f332ca819df9ed2cf93613adb7dc298fcb6d4d5794e100191bd5251b849f40ceb1dc1c73c843ec3b99c2f947305ed5be2c85888d6a51b4960e2dc534e1cb2db910527c2880706101a63c686c72a75ae40b1a28520c1bfb6a3d34a5980d018356d853646896ec5dee29b4ff22a17bfe7fd580efc6e8faafbe4748bc009c84849cf0ddbd8122f0421bba69ac14fbc914e4cc53c5a25ecce48559b4807593332fac23070226d485163a8c2b3df0161ae00b19d56e73382c580903132e612522bc963b690ee938bb37a7746ae6d7520e2365d19d22fd0b6cff7c55ca022cb5ee5119b879f5e9c136d3974e93052102d57fb7dc33e83df126fc3849215a02e0f8d7fe2c8e9a1d66f0a02dbc404b732baaad8a8fbdbfe09434d54312fdaef31fdd1f5e8e96aaba82e2f2f1a726e90ace55bea3d0344e194d7db6fd18751d1deb1f2fd4e74f915e5b316e550ccf639e698286d8d80ff4a1aa1683f1603fc2dc48db9184ea79408f9de13cc454984fb6c66350cd62a85365f2e3763c23e75d9d9c802e6c81489386d3e579085fc331a60b96742f58be369923c215f72e5e114f16c9183c3873342f081005c9fc5896064e08a8ae045ac43ed539ec4216beb0bee9556422d97d6ccbd2632d410a1dc2bc75f2681e09d9bd93dbe684cf68a88e744b7226c7241b8e85076a5d5ccf60766550818fefe2784e6784c4406f31bdba3e91892582e10c3936afc975c4db3066a200c1a74214b384ed8e0fc9351ba1d4709c8e60d8b7d06ec28b67df55ce1cb68d2ffd928fc9b910e62d81b559585d6b00c45a529b962413802d924930ebab9e779781f906480780c9e6f449401674b7b55d3d0f9252b8526f797e287f30c5b5d7927980e2e14e28d7caa882721fbbc95c81a10fdec2a4277877bf1efc3f09ec2845d0dda6db3793b8ad9722355536c89f8ed061d50f78428b00a81bc442ffc8e13a2fd00b55f9b49074ddf2fb5a1fc6c171f02ecdd569619b394e27fa34f06ab976fe42a1d83ed048267fc93333ea2c85dc3af4a5bf55338b633ac63c432739c00af3058074fa0aa4452b3f0025474bc348c11a6f90b5f5977c5f0f26ba72c57baa51496184f8a1967627e203222bb79ee7ed77c2dba17b5196ffe2d8160f9014f44cc727c0add7ee7d94cd6b01f312fe2433c458cd1600574e70dce447e8777e2ef1a6cdce9af1d2ceb6b44821e44d1e00260882a62744862ff1ac4c6b559be0e1f7659fe12fa0ea41c222d30b224510033fce6bd1b6ecc022dcfe7b378b0424f476393e8ac29f23d5aea55a60392f2253b9e16f56fd52152d99e8368bb60447402c3a1f2782c01c733d0bd05ee96ecfcd1a53e6ffce1bcfee689b083f17dd8e168e4905bbe65aa14bf87f510ab2aa89b0cb186cf2ded31392224202a15151cfb8aa722e242475a7cf69e63e66e6bd13822dc9d4d911e0010c77badf1bdaa1f5148a347e7f93451ea379d87b20b35b3d7ce5d1ba231dd52b1ee924076c6b9d2af5debd31d03ee5eb9f2b2ce164ecd60f8a92708f0d18c19bea1c548c1f3e05d5423152f5b2aedcf645b88acb47dc084396aff7530341dcc719858110951bf03b32d2879fe55a261ef20bcd7c1a114019874f0f9ebfa8b38f7d25d07f68308ec9ea737dbf0a68ad3bd0427bce6711ec8f8dbb92ef8882ad4ce08b612ee88b654a04f83c0079a597929cb4c0f4032469b1c9d18d992396c398b2b81abd5cc29fd05451f0a409d39965fc37d67a041a9bfe31ccecdbcb194cf160c09c6a89d57f71ce3698c1b8c13dd557f0568667826c293701c920e1275bc8f7858f77e07407004840d678ad9ab25df133c4f028c457810f6000a5ef70b9c3c33c9dc3e769d080934459c56f1fc080cc2c1aeb4973e4a7668b523a8e6280a709409bdd5e452ed315ed0b061c8003fc0278fd7c6080c9f43902bee843c4490f9f4ba9590439288c1b244ce6b874b15dd91cf561127f4ca8bb6f9148690703d6dc5dbd6a9e4f6fc18b6b9847e7feecfdd5fc80fa5710e2c3bc94944b3fcfbb69147276f1b5a8bf6706695855c4e889d4448ad42d632611a2268d30a1c46eb67ffe42ccdb46a7a99001678d47ec1fcda4c0239b0225923de977fb6137d04a05a04e9cc681e6270dc5b814b7e8a5924c4d15fec3374bc29b0b78c41d61b29230b2652f6e7afec8d549ed286a864269503732d44f895d80bca911f269308ed8d8871ca7c923b2b02318f2f053066126eec2adea0c9d111bad8465eb0f5bc5be2056576c52c9e57f5dd12d8eb553fb4e9684b23316623b84e52623cfc60ea99ce6396c66c90c22a5f853de59390c56784a02f96b12f9725db17b24841609f04a28b271e97eb339211c3ec0f31538f4f85a66edea97694a1e1410d0a90250e9fec8f811db458f93417a6b9b1cfc1648ae312095b654e015d269dba60ce8a98955d3c69df47216c4e8aef459f82a5c959cfc0c7998f67c15bc20c9426bc3d474371e9beaf0b2c57772f2670202223b8a6f12e4f7f5069c661898b50392bebe24f159f6094b60c6d66374b0e6cc7f99c4581f64a265d2423ed49fa2137e88433765bfd29a5728354b7b8c226b704f9dc325a23446927d1f4a15edbb90ab4d44a35012a121436bab9a6c4f9cf6b34ac5c45b78070dc3b2542cb66a251172ad0a3bab6363b996625953293086f1e6d82e5b3a45b9941e789e3053483d24e12bb7c39c599f7db5bfe891101140ece5ec99402edae2a2171421410d944f1cce1a2ee97e4011e3e48ec1c1330f9aaaec5ee8be832d2b238bf7234924a541898d21d4ad0140f200accfe21786695a2f80c9e5423b255f9438d7585c490b1c49adfcd130d83b407cb71e1d7fec7e5efd3cdf50f21bc8d157029b1709352ee97b98a431cd07674e8cebff7308f11f8b2d4fd826e54738dabf57c903007f03cd1cbea544d19874d3ed94c09ae24bcebffd84d755d0979ef8f6de927657aa760d7ebf0803152fb82d0959709dfac31bf30e26ac66aa2d76e1733bca3a25826df3257c2e3023b8745cccf3669e57f4b9fdfb91e1650319abdd85b3a2251a10785d75a24b376d1f3edb5f81df71e052d371c79bf42a5fe9d0242c4d71ba65da90da73465caccbfd4d954859478fe65f124f7d854d34c810aa00a5d762cf601897893a86983b538a87fb43cf78e937ebbcabe3562cdd826021aee98738171e9e8cd4620a5522e3f14c5040547b17dd94317d40cb226817f6c4870b4915ad19311b8c5fd307a2af698c3e0b4c22fab2ad3127679a9505bf120fe5944ce2483920035dc9829b6eacf5c1ecb100e7cf7e607267f1b74e089b7bf1af3f68d9913c8cab11353c79dc2fdb2914ca94ce45ffd319fa2cbc0dc88dd986af647e06177129ef521a34d9b57dc86456eaa8ae07a0a94c6ccfb4e1b98a633c61c42ec46e693ce21b90f358dd882dd873671df210383ff90312ba11b46604501dafd7baa32b09e8438165f34d08983970582357d3f785cfa6aa22f4bead30b69d5d21c91c22e4fbf64545db1dea042dbb5e635a6b8ad8200fdcca184c572b3f24043cb053684dc8535c16d25e1d5bbdbe1a409e722762d41ec0036e62b81af55215da061417972faba5cd5afe6128867a16abac0a681872b1802ce135a95431f15cc982146da52b37e7f78119075a0504ee2baffe35f1fe2bf784e276cab2ea184d660ee30683318571871e1d6f20f91bf28db84933f5f6e5df515ae464bd98769a6d9452010522938a974f676c8c41cccf71c488f4bdef623059b3259ab3674dc6e0627b32f702730432701ad733bd088d6ffa8d2ffea4e4bebb7501c7c8550d1075ff7c541a3927cc9015e1c94426fda49849f1f1d9430c102a4dedd85bc3aad652f063542da306301d257b2a81e44783b7cbd32f9ea6862f4af55a502b2024c251c7360bc4962f8d6ff89e04ac45666e52d157924c72f862fd29daeb279a799590f2145b13e645250d8c24ceef5cc26c06886d0513f00a950fe23a0bb9f2c0334e7ce53090ad06f555247cf28255cb386878c3c0bccb51f08b6cd68468cd14d8c5989f27d63fdd3f8d3984921cd5586c0c22469d2ba06171b4f275a0db4d6aa0b1ec333d42ed78f1c29ed09d693d3b9689afc49b8b4e7683f3dba8b53963350b59a03435b7525686754da71dfa49057d9ab5366668f96cf4d64fffc4a8e320dea9217b1950b0089e030563b48b7b3c870492779edc132abcfbb5df360ba694bdaeedfa493dc48d7f04ef805bb16068f1a724d6d88ed54d0e877d76ff2c9b310df99793334d97b266384116bb08540a71392082ac6cb8466bd5ad32e99d1aeb8a74cc7c4d187e0606d0ca53d3bf6724e1cd1f29d3a8c51bae43d07d83968b798d651af24376962917f009ebbdb8a3d1f75fcba54aa71d440b09f1057ee383733ccc620b40f4a0c0e9c0efa1da1c02c32a8ac7c6e6af4f86c7b64e0637e9c66c94758c1066300c7f8744e34ba0e7b46cdeeb1a769d4aa6fa3338ce0d1b3310f2e31232a006ab97aa4b82de4d3ffd914e912aa60659e9a7f386204e036428dfeb26af67ee35bc618a5cd4cec4ca060144ba383f1b67608d259cbf1441951aa5c938aa774e42b7a686ce1ac6d16325b26795779590de0067fd41808789ec48e9884855e2831a8068ce3630d9e478f4d86165df4e05fbb7d7498e017cda15bea472a6eebeb5684d824aad17749cf26a2a55e2913bf633ffe410d963b5e7615e971e71a333370cdc0476389b3e547f96676460966c3029c76c81b2912970e164143aa8a69edf0b9abd70773406134193d9efc82984a34b38e3cc00872d526e4c8467bd53d1a200c8efba35cb7abd9a59b698b8043a419e72f2b0c3728e1518d6465e368e486a5ed034cfc6cc2fe91a04d1a43457e45751627db9ac8047d007c996972b64db9b24bf5ea9e258026f1b5613e7fb803e67660b0f7e31b1c54633cb5df33a4416666967d885c1dab26fc256bf356e7d73bce6897fa562ea4382cf48a093fa7d5c862a79e5774ab81412f2d166850f11542b6b537f68b91ef93ab43159929ee16cac626b4d4c509f96ff8fd18cd91422cdf552c8e67e4ca509c38118a7bd0e2e27d06dc92bf3d850e48e71b6e3cdf29a61cd0d6178c681173bd63d92c13d53a09f94453f1a18af3d69ff9d1851a80568f82cf097fdf04996928c4776307d7ff8732e662ba80e7414bc60ace7de2ddae130528db2b4358a516c01c32748cd0744f3e773cf9fa07b07c3000777210ffcf26b4d2f3312321b15367ed81f8d40c8849dca146f4be949100076b4fd28f2f4ff3423bf48a74110f307b1aa630a3e80bde9fc405c6537cdcd5b96aa3f024fe9fa18cd466505eb12d2e6295f4829e815370c602a990e398494d308c7abc9fecc73ea603226eccae2aa3d9d16e1d3acc14efdbf46bbdb743751740e10c8d3ff7b54541218b1c700f866b426116f212cb95d640e442e90e46b7e40659e2d205058f981953f9aa3bb58500ab4f566ca8ccc9855080fafe2f0f0657991ece94ebedec251092ed0a50241b8022902dedd0a7e3c87006cde0963bafbf611bf3c41824f80836a9bfa2e001fb0840b07e183947f1f967032be1a70f800347d928f1e445890213c0b63c783ce995aa963475391103928081386c0bf73fefb63d63317d6c11e22ddf7ccacaa547f5d9153540b5214d048030e6d39bfbc05cd73c164a264af70aa9b07a1ce482b48d5bac2911b1601970719051b0b9b6cc315e0b52bd0906328640647206fa1d5219167f41018e63dcb2a09645f35556ccbc0b78af09a598a7e5e73fe423b1276cba7653b88cd4b2fd034fa58d58aba476cbbe1a4f3fa7928c90bbefa14f7114b3c52e845da94cff3f672a0058ea78047c35cd4eb2b20aca7a39699aa5dae3bcd5b417c74ffe72dd2fde593339e35084b05f21a996591aa933fde402496194aaf184eeb015f01870c5be36e3625871d565f996fd77953ab31a460f2f0d9c9c3bd7b95822080d9ad6f7b858821f08119a5d1f8ae6806c84187a6f9d03e7abc842f3c5b97f50f27ccd56ff225604b6f7f9bc729baf3adc6619cf4e39745bff12f4134f97a0f6a54720e9edbf325348ddc12c8bb103c2b6bbb3af957b08e8abf6e890543fc1f594e21ca75b0084aa5efb9442cd3279b440db7ba76df08c5e35195c256d693742b3f456e1a4f7b3217090b9017822e5cec27db4d4fc9f730969925a46e9cce55f02fef9466a22f058524620e8e8f36cff925b3e260796b6c8c06823ca12157a0e273891849490c5fd8100320e01e2258a2f6ac97e108892fa04dff08ca4ddd039add6b52cbbf3056635064f71a5a0ba891b618b3ee89a8b6d33dae9e32f342d7967882c6b1d7cb08d07ee65e7db4c50b223b776936a7e7972a7a8d7e8d59f0348f0f734f3eb72e3c3c518e41a8693e556cf887a74bbb67bc7b5fd6a8580c25507ed83ce84349705e360ae331ec0b1efb34eab27063d6ef854e2c3156d76e839be5c4ca557069b22d0037e3f55cb40629a3e9a124fe93495aaf9b034e82b4f4720bc006ed744b7118b6b70cb4d94d4f6b8c99b10326733bee4c5b053b772cc39c5e27f3608fda76184d061844ffa6ec6e11e83788edb57d45009b7d36a94084e30a3d44bb17c05a0515caa39286176ee1f705f96b625d0760d59e444da8c6bb707717400d61fbce28212cc7da5f632ff07c73ae8fb0849aa88cd9c309303abdff2843b2d8763a322cf003ae6e966673ac8cd18b83217dfe15738f8b3a6d84c50ba214087a487b801afc2ad4c11033c9d3ea5d707303a3f76a1f0dc2177e221710e2d7cd94929ba556f07ca39cebe4021e84d43e9908ef8e1298b12fc6f02c26acf0a21e5232b05c0858e3d6d1ce362fc98d12f7af73338e46d1a5168e93591214f4c4b09263fddf02c12162a03b33a516075b6c987805795c5bf755c55704389f87b32ca18582ea0689c91a014e5f82cb8109829515260df79ed97bffde0a0f6a86885dd242131f51110a5b4d12ad361e42c8a302d1ceacb03ae53f513e23bed89dd0923eeb69170e243f1c703ee075695673ba76afefe31961397d50921c7090909fe2c4ccb3fa099af49024a82ca6e7fb5f96b2cab2f6fe3cecbcc98d1bdef785860298feddb102c283faf11b54c7e828d9cad5c8b39814b0d832734b895a2a62ade99fb594b64ac5c5172105e101298e27c461eef0c449aae6f3205b4cc1edc06df89a89b43323e0613844287d004f307cfe9d8e96413ce55e9f1baf2b95409776b9d00ac3d92352ebed0318e62908f747a302fea354755eb22fe19d4975d89fafcb570454f52fa2ea2093bc39683f79a744fd1698c58990f180bb851455ff1b23cac7d331636e66a3c4a7cb3b76f2c5aef18a943f06c15ba2d920bce4e0af7d293caae224fb4e00c92ee0650d754daaf616ec97eeee4226a93768e438d6380724e66eaae70e2cbd3f7a03361b5bcadd80fc5629acc7b5909644b94260e56eea1665b1eae13a57071323069734020ef682b83c9dc6a859adf1a858b24000c2b822bfc48239432e6c139f069791e04e9e20526c3b1b0008f4224d0083f0a1e3167dfbbc0b6ebc60cc714db84abda6e30166e54e36b6168ab1a7a4c0d894b992b65532ce2cb08f1a1ca62d40801c0f17ac195310369baca16ee6e688b9adc3c8f955c60515e3b135bd04d7722597930c79a9004b3427c0fb5e0a400cca499f3c4e64f7b70ce1681cd8eac86613f61120020d65ca0ec55b022988355e62ce29be8a1da96eee1a742b274e4c338180b5395876af860a7aee9c02a989c7083e0957dc240f2a8a9b7421e864188ebbdb2de0a8cba58fdf85bf61f66079386717ee31d8c8eef3639cd210206e317ba1af3c1cd934fff6961eed77bce4ed7acdd0582bbf655c9f2fb7303ccaed82262363a9fb0776e9a97085c5e77928d07e7235adf73e2a78cdaa64e61fb208686442da2fa364de2501f29a562eb301d6fab235eca3b1aef7d5c9f7395422ea27007e0b0453626b326b2a07616fb075e1ab1419ac4f7a7ebb3a0af20973a5edbbb82b6ed39e0866d7673e0e77dfe14a6180ab618951548e130906f57418df343af81a47d3082d6b31f9c9195c9dcbbab27032eb71a4c99c5d98cc115835fbb7766729581224306b09ec4ca344f9d33218accc3fb50f916f24a57dc23c13a3aa04fc4665da516edb98014ebbe528d61e20187752ac5e4f550b5fcde0f53b95b844f238b9d2c44672b862adf891289fbca3d5a039d8dfd3578495e80f456b4e934d6ccb633738d64eaf8898af555b0db81e4b5a3fc2a9ac781d6070056f115148a9f13e96f965578a32f4da7cc39f44428305f09475cbedc1bb5328d138687a354048aafb0c3445c4c039bfa21394c2c89787fc1a923e33198760d60aed6f11d8892bb2aa4634cc1737dbf6f4817dea77327364f1dfdbb917c6de25dda634729b7fa9b5b83a1ad4556f6a71eab9a0f5280e80ce9caade07f9465e1a29146992369435b7491e03259c80531b9d6d2915c9030659399c8923ed606e52fae0652fc942f4fc45a5a0aba949786fef29256aa0cd753639deb2e95bfa0016cc9f700d83912cd51164d65c6b6d32b67887ec37bf73d1e8a6c8681b969fddaacbca289586eb15352f8ada0cfc85bba0a9b7dc67c34bc2e0f9461f669437c1fe6d2703d57a4ca209495ae38775292cbfc82ac23d657893fc1d019dc75cbe00b03955469703e3da235d5179c32a177b35db7dc2a4c8acd8dc9d82297b93325a51a51d592a7020958eb2c271d1ac3aad6fe4334c5c26c7307f549cb0b90b084c8ac22517c8715d078a9139bf10630d762a23d6d35c37ff6eecef7084d0965d2c5e7df510f43af1e1a8f65646ea919db11dc5c3937a24d727e16d9952e0367684d4ac3b72d894f9b5a8fcab5c630e8ebdd82543dd14fad42f68a1de991112bdd91e4c942dd6dc0c783c80b4f5a6f466adacf4b216369cc9dc565676cb2118161a90dac06aeaa248eeefe9524c525a0b3f594f1409bb0e17a57873422d3fb26f186f2d0e3d7f2b3471306d00224fe346eca1c335d638d6d14af73f83568e299f57c46b001ff9ef909a3c23552136b411ab0489d1a701aa27314ded1d806b8d60b3f8d3ce08262e78adc1ac67162b363b0efda2ad14cf0e9cccaf629b7d4193a56bdbc05718a5d3aeda5a62d5128702ed3298bdaababdde48f37860883b14dfe0677649b860ed29df8fd0c4af30df489c4a6c829f247e547828d45c2895a7a82e5905619b4d8cfcd47e48742d2908c1d6b98ce3042a2a01cfc7896cd35d4f55524492c8cf57b70d47808fef35bbad3efa81246a9f5b715227a48cd099fdb75e6677abae6537911fbe13e482018573e7149b9733d1cdc9a6e6b1187f480ef43c76cb43ff0056fb13f16d2b24c15282347d57c4d7dad8b2507060629e7dfcfdb6c92c22a74136013b45af91ec8f7c9964b57ec259fbeb80c42e9fd70c2a44f16217ef6fd5b4631aeaca7dc4eef088f4df7673537657ce06f6d4e20aa70fc9fa2d552a256b0f04fd25612f1e162dfac632dab04656ab3562ba393414dd76af3ebc8cb8c5e3d3227bbd182cb39d8d61d206d182e5e329f155a105d423eba4c54f296cb5876ddc441282c6bf4d54ce0beb18893b615806e4bce39fe20953081f8c742849dce1210a628baebe4b40c21561f71b2d3caed4868fc74ed794e6b3ec2fec853cc22e391bb973ee8b5051e3e0ac87d82f4e55bfcb95cd5e57db947f1f34f1b8b429cda42724e3aed86b833af2a34ea14a79f642be2b260e11c749c2e2bab3a69698c802561f43c2ac40145c1ec8c90889dc48d6b39bb299fc69a646d01eca1512d28ce9296b63e7ec91c97e8b879e631f9634c703314c0cf3cdab52cfc9de4971ff2e7e117f4608ac84415c799367b4d182f73e453f330fab87d3d6749f8b6b505b8f84340e520898d3998bf3f3708f6434712b331102d9211825fd043176c3d99e3f215896fa35c4849de4aef20b69eaab1a3caefd11d25e0bef9dff4d2dfcc14627da444c9e5241b388a146e8c004a4ed3be8a90c815738d5bc201fb7508fc118dbed7387924dcb8afefea2f6d2eb5c99b16baea3a7f90cef08fc9c6a8f2760a166f82cfe2663869948cabdb5ea4c95f7d5e99cbff1f9e83df0217769c3a0e0ea883751e1b735e16bfedb1d21731fe3df9b783df69af9e43d5369fc2d5c05d20be48e6d829712e2425cbd4ee2d763eb4f2ab2f93551cfda9f4397689a9ca8f6bffe98037308aadb1cd64f42f68dbe82f902ee74eff17baafdde498b8092382bfed7fc496285942d71319215f8dcb7406e55413fc73dd9ec48ec5108ab3f19da87f1562a43a82978ac72bd2c030f21d78adabdb40c9886ae5cda53a55e6e68e00a95ad5b78f610e0638b7e448f47afd544b7cf9ffb4333497c8d802b6eae81c0f586f22c3a63a13300cde0ed10d2bacc7f2136e32685e955e23fd9aad87f1bcfd50131059c62844d30a96e9eaabf779b1c41fa2948a1967459e265b305a6db5037e86c4b2846c65c446aa58b01fd241359dd9d4b463c54d804a024da3536283aee5c90010b5fb00fbf2621cfeef25c2c47f33fd6375e32ac6731883e9a1d792e89026b69f10a9b0830d186753d34085ecb67b36d1a1bc0e7a989c77b2f831d228302e4731df6aa1065c8ab9b18734ee07101e0fa49b5f04c25b5915c1d9f6aaf65eb6022c4e352aaa6994c49e3df864ab48517d9ec5b7dfb2c55f63a72198ecbec5b9a17238850c70dbd688b04623ec23d063d99f537256084fcfa12e557b0eb78807469a6c0b702f57e31cefc1021415eb2ebd057182cb9ad8b7b43ea7666a2df31c01c448b53809f816f8d430a0da129ce576f867ad92ce8b758d68f1c2b23e908086f33ca1fa51b7ceaa02bbc6d524996b00c7dd2e0cc053765d04ca77e9cba95dd5d88800efb16ab37f26a430e522eab2b25b967bb3df135ab5d493de4d5f7475a675c98e3085b23a48c14a8ca930dc3f09247f1019e1b0057c408af8424436c8966ad1e8b416294fdc748ffefef3faed4b68bd21faa19ec717ec258f328de6d044cb8cc0937f32bbafaa4c67f101d9f3ce984b886f3271f208ccec596424d7fd901f77f53faa7066bb4be67134a1a909b8498aa373eb4763df61a4ae39e4a592632b55921c650f1064609d01e012dab317a05fceb17f73761ab92cb8f7e806c016f2776fd2dc45fa5d1a32575fc38956e6e59d7da48aff3a2af9d66f902ca4ba16425a9abbd25a336b218c29d2fa573240fabd7010ffcc7784f8e76ceadde454a2a015f971a56c057c3ca0da90178021b7a4d3efb479cc1fd5349a0e1f33702533a5232755b92021fd751f8b43c420791dd57f5cd85d6e499b4e638acbd7333013ca9d78a47a9ce42b2966f460a1d26000788dfc5f64904dd7c7b3039914cdb9c3907549bcc1412ef782919b24cd7a7d148ccb9b3712048ac0f23bdd3ee62d4fd650be67ef11925a88cfa93da21b0a64ed26b33eb66513f49dc5b8ff0457425946025964bc3119648000e8ddcc2bb2464a6f546eaf39753ec74763e5479565d204578e0644da6b1dadcaedeb2ca767a0c7bd920526391f52a0368f74ef56a814930c2f8930e88a8fb245ab10f982d3b090a2595e94ee9e3ceb21903c2ba20221754fd56bd0079eef582ac1f93bc6f5774054ef7427a551a4da57a6f8c56eeeee36e68a41fa3dd73652b25f37a748033b10d06c3ea2fb7a92fc3b771d06678f0f53729d8e498392d78510b95e8fe67817ad188785aef764bf3c2e288a834e479f04d582a959126f4cc17d5e08a09caa519e07558378e6cbe165f8a97e587510383678fb3ef2d3c4b674e0505bd69ea0bdca1015c6f760730fdd0063a0fec20f45d0a0ef594e43befebec2e55e7ce9ef467428f5f49d30e5d880e659df584f59d0b67072e3c02fde4ec86cbbdf7dd96fc3c273477d4479614b04b3ff53561aa87073c03c01c1b885175363ed872e3047773aa8c949bd1b165ec7d0cf55a998aabc51765a53a0ef96ac9e79fbd597c91b504b9da0b695afb89455b4d38019a2057634ca1e644f6e4a4564ffc17d362f15efd502609241799455a53b2e5b4d759bf1622f78697d561d46fe7ea00fd6c5d1d9de14887baeba33aa96ea3190fa2477bfd732c04a7a75e876d0cc107feb3aaa12ae13aa979f8b9836f39bdd6e6fd41fbbc450b11e397df8c2e5052c0d9233d9f12d7149259f63b9a75aaaf15f8c731981017fd53ceab288bbb0ea0c9b1829fc3ccbc0db26e613c202f73c5e87e4b3ebfed27f8a7a0ef7ce97a9314e9544ada00503639275a49f9681791c7050abde2c473001822fef144256a0c5afc9bdf73c325bb0954ec4455254750ae47e3074f989c4cd6438bbf8db218cfbe8768466efa157caacbadc6a422bb904311b8de932bdb0e415f7dafc6820f88c9f30c8bab21d5d28bc4119a0214d77625542af882ffd9550f9132262aca61f4c225231c99ac08911361587ef005f0d7505e44d20002854763d45369eafa5e9405ac15a0bfae02c97eeb1493de859d97684948b51f709a0aaefc0f8e3134a116102435c09ca1a4c6e3e30386b636b7df00915fc1f9f3ea3aca9744cc838801a53c28fff93ebbd78b498b11c7ae682129d479b0dace513e16cb81a56ee49030ee857d5ecef4cf5a9c4dc48c7b6640d7b743f881392f9bd51324c4fcd5161a7827926a21592c3d97451e0dff12ff410f482a83c682ee622d463f52e06f3b7113aa8ce0d2cc547d394ba3e70feac32c6b51794f611b4ee27a6ec84393ab25a1cf007ec855822be496d7bf517e17e85bb5514bfeebbc9504cf6bdefab7395bea657bc580eeadb73bef99bd71bc60dbb281ae26032a2ef00dd1007668f7c29474bd7cdec8c7c61bc262eb22817883ffad548ffe9290ed84020e3be01f9e509eae7e29a86e6a2d820f46fa5a8a52c3a75ff8994be828f09b1767235883a779863267a07a8a85681fa4d310042a8beee1397b478cb5a2d8a6b4310216c80ffdbf98677d52bc849f15e9042954d35c87e3c485c2d859fcefba91ad0265791f28d60826d9f6658bafc5eae61b1fc42a515eee5a9aff20fddcaac4c261334242bdbc5cdcabceb2a7167cc26ea6a5534e8fcb2d1a8636ddc656c4b6b0107c267d7af311aa458faceb20aca1bd36895c19f2d36698ee3aa0c9630c87f03ddb212a4b0410ab1892ff29b3f3924b5ca3fed384b13dd3d2d8300a236baab664f558acdc33d1b6dc35178a8128270936e36217a117c918e5084fff890ba7af5a0572a503334fdfe231e092d382fc4c2c3c3f5ee54722f34520f161d9d8d182260466f515e7fff7267db905b9b109e642f5dfba7635ee081e508d575a9a62ae5315524c7bec600246c59c2e19f1b3f5524ea477aa62b5622f16f2a9fe43e2ce3e4585a09f6a81d6ad3a0a5c3919f7553b88e966766d0e602649aea78179a2806f76229a3ca01eba41dd811d760cf8ee60c49e2fc541ee78f87b7b54c8fcadfe2e92fb1f4a69ca976ea5e446d2e9a0e91e804ca42963cc8679b894463ffd36a348ca675b47a6b29f5fc1e6d208ef0b3cc71cff99a15110b61acb9d21fa46c7103b9fc303942fa0c3b49a0b21d399ad8b84a2ed0a0287b822b04fcc6519376aaa59adf9aa12ed7250215547817f4c222c49b3c0cbcbd3b6e3a7c7c199f5f11f1372d04ead9c217b7ca90e0a72a2054af29724bf973ce06f1e16660a9b81f5215d05ed153ac450fb0fa4116ceb8ec67a661742fa2fbeed5746bf88f8e5e09280376961837c643031b5cc6cea591ec3ebe1f8e20f34df6b351298963d0d20554a2e6f32d1b6bbbd555890a9d82e622d02b5216e3c10ed39c6a092c05263e315d5025f3d831bcfe96f913f7e5a5e52e5fc85ed6e95de9469b16f63985950548d18fe1cd3112c25b746e57b16bd31fb0c4d0d2cf91e9f54a939e5bbaff0e9c8b4303c5cb909c938e6c8cc78bf7a14b4b14e25b7cfd08483ad937060ad7c3f2669f49b3981d0509328d44c8ce1fdc5c2d8337ed2eb0a58d8d66725a3217c3bc7bb97da13b53d419c37894b5ddd670e9bb001a5501c1f489ea2555a57f9bd20c9ad746f21f73fc9df0c4ea3f52ae9f9376188485e551d538a3aa20bc67b5e3705b26dc226e01945e7ad8447a1b665973942bd07a83978a66573d4b180556c7781f2be3768573cf119d258b9c8d130cf36c9c2a74722552cb74098d1b4d683a245420b2157456ac3855c2385693c9df1f89b276acd1635f6b25da00f5f80ab1e6ea796d31007c02344572edc59a1b1b33dcd2f1323de554d4dc67032a98af90acd6226a6602a62294bc438f2410b568a37335f38648fcc9e1a798f25724dda1509dbb9151362661127099ed1120ead5d452008dd1c341063c9333995785c792740295bb452d06c952057bf0a13b05f354e509f47e649950ac47f7536ba929fffc93d2fbd311abf97e70535355d5cca3a2d0f5a27450a462f4b4daf0c542879625b5c39a32bb5c352826c73aca5e70e4b1b9770eac59fa8df4f50905a36e2acb901c13baa49b4a723fc8d09abf4f34810744c91d09e77247a8e9e3b60f9b1e7e3b34367312c911449e22e2b569c10e81afe328a54c77b25f86f977d1a6d9b01822d203f2d3eba944fb3918e264f59dcd00d7b654419f7a8854f6f236535fbd4c303276f7a11e39234a3b7114cba1b2845535d0ff111bca01ca9f7d074addb28e18031fdf345cb7e18ce3d5dc1199e4e8d16f2b4ecbeb140b06b37f8bdf130b23b66a0c4dd3b7478f29d0d898d82de68a94dc0e9a8110ee8fc5930a33147f7854a0bdf80cc10b49b7cfc826d51ccd2b5fa03229a68141edb946b7b37cc83b762d086fa712b04ff61aa249205fac96146c2d96078b967d293768150fec4add78b2a9ca7301525c08cc6d2d3b7bef6bb9248e34fbc799a8e6b9ae924f3a5ba00132a015a24b4289f2a73a3db0bc5ffc974a8be71cf3809b752b6e95096a96b8ab927c66f6c5b47ee5f723ebcde990fdccc6c46ba193660f8e394c8cd3ee8723027c2cbacff37599b694ed19d46173b94e38f77704c46988551b66262c2afc6292b253b5b9e402da8d8789dcf532f7a304458d20847448691f78ce754fd04947377ab76cc474134f02eb2dc8911d558cf1c1ea7517d52f5a447b5077f04a339adcdf0dad472254ba35780f6df6ada58b5a092ff9a3b0cc479d27cbf1e282e93b25a9a18d523a16b49ad1b93e2449c42ab8bfd56f4f2107c3946ef75a9b306a45bfe5ec625c07c038ed33d20d767e46be2368903e9118de5b25842e7cdc1b4321f8f4c7e0daeac62722d7cae1e957911a80207438f4ba8ab5569542e7010fba9984fc018f10098660cafbfa06c3dbbddc69409b4f972d539346be627fc57e6b9d3655445e283360d01fa192673c7abc0ba0db56d635e5aa93f338ffa8f3469d77c1559221fc1572b635dd3c1a7754da7b0b848ab6d57d96e873ed4995b6377bc0faaa962e733271b0d78f50ba6508c68d74b2bb9a8072ed307836148c5138d47adb6abc47b8d560d42e52f9be24884a752c4de33eefa22545f8d91551dc87aa753e7cc60ae974858ceadeca58e4985096a01b46ae0ec26bab47dd998dc3d5c6dece7773bd3443a1b5131c6ab7e7eef42d7c99f7f597578f05c431925f42964478fceeb0e3bdc155665a392c9db655a1ccc3e84c7a9d7c703ecf0bc23f92cedfe62afb424eaa51d6618f5fbd0369c839d8c6d691fc8d2015fca278699d7cd2f92592c42ef92ca592ce7a753fb2d61281b15406c1a3f17409513780e81cd71cc5e7e93c78914b2c863b6fb77c09cdc66357a26efc688bcebf1386a378754d837461e0ac24daa9ca66ceee8deac0540bd3445ced6f02463947e85b6813bea630451e2e4a8c2340af74cbc55f1847068fafd539007d28d8f00e5db246e8b5381d76ecdf8cb4f0ca73641b6af90fb9ee7f4a189d33f135c2a3573086456bc42c3f8e881061853208824431509433ce0dfd7b093f739f17b615b03b40dc2f71fa3b0460b54fe76c9f21f61f7a50cdf5085951f59301b4ab1624b7f279a963078b9c21466be5da10330bb17ae3e00c097270873b250fc82123ba4938fc2ddd789090a9c57ee64081b005367018c2ad360224bae92ee0f534dbf8bfd565af566eb3e71cb76ddce597fbfb1484f2f41e13761da70a81ef2390ad7611aea30f01601f5e49dee9a05855bbabe1ec951a187a78a4d1a918bcb71fb15b7bc0fe160e5708b1b0d2da341858e21fa24d8d1e381b9860b8f4c6709a6d201299e41d2fef67f4af184f81f9b59da24a92a1892254ab34c190d5b2ea03a46e9fa66b0b106e5a7720b31fe5186c7286508321267ea72c4e2ce18782c13dbdb00ee7af736dc6631135eddce4e5206319ec33cd7337e654508ce647361c814d238916fc352ca7604cf9e13f7987c1bc39186152bafdbb5d9602dbddf84ba404a408cd67e499cdd4c268ea56d9854d554c8c20fc8c3b8fe0589fd2c6c789db4e0cc208a61aaf2a1b31281e5996c50698365c85995749336e7d401b9f6b6051b9039ce04cd9ff37972a12db1b996987be9f945571aa16671d064c4dc413298e88de016af4195b4fd24ad180166be09bbf51883096469f5bba4ed4e2e5b0e4a9c2bfbb51ac385ad1f51908ae761a04e4fb0de7f54dce3a9eeac60a24657bf6a83c555b396fbada4eeb62b087c94590de254f518585193932885386d450378659f8395ef52e8833bed5e0c6c6b9dac3ab362183d6de983b8eeb562a62865bc29a45cf9ec91b3ce6ae6b7008255624795e428626828fa58ae13cbb0d07bab8199564edd8ac0e9a3cc855694ba2f6772e0226fa1a45d3d2558016d728a886d0d6dd9f4f2d944bc2dd301daf37ac9e850cd3594378c1e8d9a56335385bafbef67af85e7c6cd64d93f64720db2aa8f624d5a9492bebd48463642b7ef26c3cc311abe0da1de8332f3be093c348f4603146566f561bac5525317466dce28893f32e15a3aa4421791f994bb0867e057fa37bbd693733f78150c6ceb001301f5d7a62d40ece469fc7ae71d053f93480232b6c9e2be31772c17943d3c675b6a6b7ed9a23131171cb8736508d66e59a23d13637ff78e48bd7259103aa00694953aa970b84b171db3a427bce80a40943ef8fb4b61f334c19a991529c5f5e2a9a872d78fa1bf429ded36878c6d036d0e6f2627dcbf90c96c30d243d44ee823cbce48fbd065fd641e239b481bd419a6646bb373a0498786dc0a025fb2384137e3a4087ca414839baacb99c59ecce8bef44bc628b332ee2878149e06faf42f4d63ac9c7f08f03742ad1e91b3aef7932cce32a6dee48f7a2477007924ef5b83d226104aa3677762aeeaff9832d0583c5c987b06e712b4de8207ab141de4a3f40dea9fafa9c5084a9cd563ef5d9c85dc325baf694cc880d49e4acbd548731a956f7d94ffe94e6f94e45c13e9bb8dedf6b8264a4eb4e651939b4c22dd65dbbf0d57e00ec43dbe3f98c88bc34501432dc08f1a48b6d8d4bc6cb43afc210f158538ddddb81546a6ef63c8ccf0032d0acd543e87201208a04f8ec59aac131a205863e35c1b80394fcfc19c2751a5e619d8f48902901444be5b20efec07f8070424a132864e4405ef40cfa224e71a9f169b277347fa76e97625f35531506d5b5032414a85d65b6db0295e5dee95878f7db5d38f0abf525737ac055ab6c6f7694c6121f4784f47ccbff42cc63ddfe6bf2a2468d605a66f921d000a6c5eeff1317a9a163fdf59d4e4bc292831fa47efa96b167dd5070f647b267e7b603d5f17117cb909351eefb481556c10b1ffdbeb1c0dc9502fa851ecf3dbebc26bd2ba4367419500fe4d886459cc52618812d245cd3de580457c429b938dae24e8fb0e8e6e91f45b441ed63bd2f352cb41aa63c77534b8e01b80b5caeb44275a5f107ffb67715be8747199ffce24082550c1db3ccc2b42ec17e75b30eaa6f0248f702971029b450222e02b2fbe9f14ab5f2e95463074788c027380ac5e1dee52b50356fd3fd0f041a45d2bdc1baad394dd00a58f711acb98ffa200bb37bb8ebf7edb15b2423284eafbbf13c116156811987a392345981dcaf34409d56f9a07e9b64bcc58475063cdf35d94caac54dffe17caa2de74b8b3834b64305802fe5aaadc3ad2614bcb90a2a54e65d7298867f1d56ef0829d3f146dfe0b278d9d72106cc9239ce744c88dabd99ae641cf9d17c9b9a89c7a7dab23ee8f6163e90c24452edf33726c05584787ca85e65cee05a7b9db9dc66bc0ffcdd4d18422a25275bd083b89049f6a612707786b856e04264478d84cf729d2926667478fc108a99bda9bb2f36bfc358a883745bc3586b89adc8132145ffb427697d0956a058d2e6dcae3de629b98323675d436801bca882f88ca2aa1a0e4d016f636fc464c4aa79fc07d15b6f17b40e7afb404b3486107938f44fc3a39a924c8119d43fd4617d259f1ff39653e815c32d44fa197604ee1952929cc1aa3881a25a97491a7c1a214289cfba9213497521579e43c5986f3863b307e22402cbd3c0555ba9a658b419843d5d1512c34de2a4d5b3e6b0e00ce53c246f6fb1501268195c41ba175f7454944266ea1885238243e302d997899ae0432799563c99347485727e6d27dcbdef017e10acfb30d9d2667916620a5b93b597609f18d857ab78018e9ae5bc2203e5b0806d98770b8641c1c67f2614d6f7cbc917ed6103fef7cfd5f19990f308793efdad3e7b2d0e227251bcdeda9774095b21feb1a8c3f7ffdcc80658d49d56f941ea1ef0394cd04114a96aa8e38dd99592c2de73d76cd3eb53ff6172921001233cf2461de32d4e97d07a5b31bdda13e275a33b5314263617ad810e7ef930cba255fde677a3f04c39a1c8f0038bb01b8fe82c191c798b7803d5b446168401662cdbe39dc38ab27ba073b1bf4e157fa75fbc84d2884d0d4f09fe1caa6a449f8c0ddaef415daa086d1640f796aac224075dc1a14cc986fe53976113acdab88ce85453e18c1e4ac487e6e1151f76188212dab0f3e728c0cf2d0163b8d27cb4f048b84914f6b0e3350d9950e9df1e83184555794737f832c26779000dc65f1353f79252bff0a16bf5b63b572c9efd54f445b4e3f8faa16547e5a5c1a54c4e18b643a58eaa4ed268de8eb1a538841df117e7b9f4b0adf568983aa58a5a77d20e083f93693e15ce37d801caa2505381d682b37ba539aaafecc72d35d9a6c373fd24592d5f277a424b01cb00865d0fe2ddfd97adb275e957fd14826ebc4e505172fd351e0d7c62c43100e3d324df47a9bb09d185c5e493dfae7866f683e49b065271249fc9c6a66ce5ddab665545961332f9845dcc49d9bd08c3b10a0ca3051fb8e5da650b35469ab183b00e839022c8994abcbde96e40c19494327cf2fc466096c48e6047e567b7fb8d55d780d20e14d08bf8f58898343e4b4cf29cedbf8faab4b3cae68d232af60659073e56c2aa5b76709746ff09c99012bf5896139d956b671f674dbb660a56bd0d95be711f85321b41346d00391581d73e0e7fe3c8d1f2e0d511b5599704012c629f0941b2d8981b83dc217c2b251725e2fddcc96a7fa2682ceed792af03fed422f9bee7068ee7535a16f8eeb9a32a0828d4f6a01191afb5896afa8846b10bd965f68173c8dfbb44d28c0385721b9d54b263198d71668d4c20cb31cac3fc1ca1bbb44c36377e4641dae4cf2597ba0aa4fd739a309431a8cd9f3118a9c3c97b41de5935b181036cb14e9958e902fcb62ad1bddab90b76f65d82eb1a25b1d0eba2352a7964ae8f471b90437c582ca79686de7e1fb08be3bfadaf44bdf6e939c105a7c443d3f358412e9261cc129fe4915b7e537c73fea3d0b64b7c53ebecac4cf47267cf609cc870f427756f61904a49055ec9cae300a4dcd9538dd2b0628633452be5e663f098680870451fb7ae8844894132996641c39a29d3071508de5b35b700c87312bdd8c1b2b5035112e50a379e79cb9481d7610754d9d3be0ca69898273cddf40445f482350ec83be4e61c76083c75377b5778cc0282d57aa7b025008108fe1e50231705307618f73add408d2f712e3e804a5250c2dad662cc68b5b3c78cfcc0d042d96669b30832e473f74562010d851755e80b1d3fa6f5824f253fb42047d4d59f002a83b94415ee7189d7f0f246869f42c74328deb1813eb27539b2ba3bdaa09a0f58fd041078ec214920474f1c1ec92830c27d51305b93e2726a0e607a855549d01e0272f40909c9aa3e489d050215702f214ac0f1d2e3e2b67300b9cd530372e535a0ad406ddae2318935e4f2983c105f9a5b1c9a0d28dffef9842fa1b824b9d9dfd9e90a722f653129ff9cc42666e0c38c801015e18590abec5bd30d06c54c69846a9c4c61c6f4f93cb4e0247d4434441bab5f54d620a7239385648799a2351694e49ab5ab796fcf1d8aab4c4fba34071a22f0e4ce12068994c6ed58e272cff4a8970951e65dbcadd04a898ee4497646d7d8b92792d27834055371075b23db3dde57518f8b4a2baa0efebb5fce284a8214a49760d7e28dfbb5491210b3463f70c2d0e0670e71ea69031ca2a448638dd9155b8aef8bbeadab7099e1095556a58ff231eae3bb756002e85c7fe783df68a4dab2b7600c2761d6b6f4dd19dee12bfafb7535f07fdadad07054dc0ac2bc1d33082488fbe10f98e151f4c62fe02573f56650dbc26ec19dcc2a737ff411d967b8e27b893c43ee0ecd85e175c0054529a34ae43542c4d615f89e870534afb0e3fe63d095275cdae0298caf1fdabbb2a287cf01b0fbb3e79ac5ad6fe744ab97225ed72bbbf98839798917af77fa1e3338e2bffccf5c175f9edbdaeb43ed0baa4fee702a32d5697dde9017c8b92d0ee25251b090bb66b25f4a3de59047437046d41d63af52d81e0abadac2d704d859133623eae841a7a263add0286adc3ba44ccdce55fdd366eb786ae8fc753ea0cd56ee3cdb6661d43d90559bb723a81e424438799450c9c0936d37736649508b6c63ad6d988604f55019e23ad59274deac054925b20cd19bc21db5cc76f569b92a6208eecd22a016c3e6cfa08ad6ebd4d732763dcb6341d601caa90ce3857fb891e4fddc0fa6a3195611fb514bcf65cd0efb6a94f2913ec6f8c36d46854b2ed94651d6937ad883c9bc8a383e13e182a6bd9545cf3f4717c22c4d27ece8d4035fdb34c2d26c565fe824bb68896edd7b9662ce715b23bfab1d0298dd5f1c1bf87d68e1da0183416e0b9af291f7e3ba03e26d4fd13d807ea4759c9317700e19ea0f1a55783ee8db8fde922b21b7934878b667b93fc3cdf15c814c81f4f3d053b1e951c724ea7a359ca51bce8ce074bb9f79ebf3ecdbeb58cdb76fad3fac192171b1769696dadd14ef669ecb048fcfec5358a8060e32a49eff8b001fb2dbbefcb92c62d61cfc35352614b4130e90cf334dad54e9d0009e030231beaeb5af51d13071aa63a12417c3c251e7400e8a33ce2e3ee4c72f0c9e0d09f5ca20d3d41ed90f78fb85282b2023abbef2230d8459e70e28036a93137513ea1dce63456da494752c0532dcc2ac359db47ce75f6660d0987aad15f8ef08ad2c41df0c2578219d9061d5a6c6f448acd64822e85c9f060777f1cb1efc9a178f64f8c5ba95ce89c2cbf58b86291b83103e3c59e291d398c18680564d0262ffcced1d5bffe68317523222ef269b4872c8fc2e30817c7d268c7c686ab063e7b7c5948150a72ec4acf46efaf0b5ac707fd4137c07826e4a8e6b629a4d5f0bca857c59614b5fd2f8225a5337e681446583f27c26cff8bd4ee328e03f79be3cbe20e8528985907e18a44a88735f65a13f045bc897fda45b4992dcadbc612d703d90d50b2cdd8848f957ac34ed378096b71611894c12c2b2cdf8ad793609aeef5295f27e73be05cf89a399cb3100314cb343d1ec213c1f5d9d1ba4a33b5c1f63eb4e6af2275e49cd7be121b2e3b635562dbf43d5252b9a134ee821266cb66c830583a4c7576c4a54e2839144a0e3f38903c449c75c3110cc69ac74fcd6b363ff00618127a1ba90361abee685a895e1ea8a2fc98c377afe91666be01b468a061f97fe440d2454c8f386922569beb900812361f26dce8d7289ca8336d8c54fdfea892a700fb4bf0163e55a13017fe3a0a51edab949adcd3443e89498eed9c774e274f6c5df2cda21f143a95e4b3b44e38a947898bda3ffae3de15a3624366556c386a3ae08541124547552d437d99ee56e34d78bfa1fcc146fbf02c61a155d75fa1178b9e0a62c73cfd9f54493eaed6078736d8aeafa607efada3e4ef8b629c8d835dbb6cf3ebedb8cb8d0d9c6e5bfe57aed6857f801d2020155cc0b698862f30e99b7b9b6a6e199cf1e4902a4b4f1f70376a065cb9a2f74dc917d7ed88eec8f9292c404675893027a243882d3d4fac44607a977f7467a3e85644f3f6e62fb8de952597498cc1326ccd42e5f8054c2d68cdc4bfdbec33f29677096b12a86beb802535ab17f27995513a61208d20e02860e36a8570bb38ec875ed84ae1e860d4aaf0da0f1412b27351ef5a2e7ca0303a41afc64e8039ed42f340f274ad90d1a25b6409291adb289c7f2abc5b23bdb15a63b5da94835ea6c1936ccc6627aefb907b56f602605b5a69530792894d3e42384cb132c72fdf9b676804ad61f300713cfdd33d8dc21fa055f09de942dd7dfc8e56722f09df88da9ef0e22fa3f5f7e2c075847a528a73d9b6e79e5591fb9f19c90ab165a934435a4a6fb8436309d440b02c5d5d4f9070363635abbe33a4f8cc071a1d4983c0a1b8ba137b142850c6f5978e4664d9cfa11515a951e280ef3261284b2a903ff7e4997a6e093211ceb2b8bfc2aedcd56a97ccf029b74ba01daa5bff0646e322ec39a30a427f8601cbda55982edac8821f6fd9d22e5a8d4dec39304c260ef2af8554b56a888a96b39a0aebb8bd62a141de99854e9c3ccea9ed48a5f5633da0325e0586d76ded9baba35699608600f5e11c6da174a42ac634d6c7448729b9c44cab5e894b8107f56c0e117155677a1dfee3f206327f339cb7f90a457c0dece1fad6bf1ba18764a10a2845e2777c5cf4d9c1930a50f3c00d6307892ccb547a539f79b5702b10cb73231ca0bb9d1785dd34586b1dfcf8245a1be40b2e84050096c7c4a19fc580878c5913bf31e32ef7d33c9d57efacb6669aa963530e27153110702adf6d781cd25681565d26689d1c5967c3361dd24bf9e400f59cbce607a87223ac1582c24fca874137141c6d8cfb10cbe1f55335feada36d6fc995ce0c004b4ad9faf66ec8db52369039a5305008d958d4ba6c883cdd12dadf20d1e24f6717e2b32ccec4a4609df5dfa7ee1de673784cf9fa8b7f1bfdd61b010ee5b007ac47b40e71a12a3cff195f27938d8208b9f176fb7e0668ac3a40285047ba341af7aed699cbdcadc8a0c6640879b4c14c0c06bc4abf671dd3f03379e8bfdcb322eda00c47857089ae3f5b035de349d8f9f50c2a54199367c3a5fc4c45aa71e761677f5c35093882e1542dd0460c2cf57e096144af27f40905f77e429c862ea14e36bba90d148de0bc7707a35b4a55f12c70c6f8172f9eed3470a45fe84b3c850877e7fbd32597355a8790dfc82081fc9ff5e2fe7d80e3dd9e3a884d01e2be2b6fdd46b1cc2d0cec9205eee2f39b3835753d564fc2ece7839e45318027484fb7382d91626daed001772f18d2a7856305474700b94d0d226e1a53175c57b341e524ed3fe723ffb17a475df4b4b4e83581e1d39d0ccb5a6c805af32691fabd88b7274beb4aadde80b97c42cc42c4a73c91f6c89db88e8da02944b8b06f7609592c0270cc08f3da0791a1538a8638805978d0713ee723090859fab46d420e90cefc3f82ae3c6c2415e72343763bb0d821fa99ad18e180c8fba04c7c3df7fdcb31931b8d5b4fc906b56e114a7b204077fa475f961a0e1c7ad10f1a6cb2e8271486844f53593472f7338ea6504404f2db470de32e50b06879ac502b632f581ed9a845473f3f1d41652871e7807a2218bad60a17e65a2bd4b6721aac1cc8b217eefdcf1cb7f8352b51dedd03989bf47d7f81297c595ed03875efc4725973a3c1b48bd836233e8682b5f972d2c7db2d8b87136affb54b48cdc53976d6eaf03a6c43eac3094d483435db07225dfb335226e528292c4a7ae647434ccc6088632e1d9da8002b75b9ff73cc82d943104285a3e91c00f488a23efbae8da48fa7a0674c1ec14d583ee08783a594f921b2f7a97fbae2bca995060612e69bd79d82fccf2a4e51b6400c824e3044de00174620634b44998efc695289e4cdeab7729bb29fcfeea6b74ef8b61603920ca96ff642deb36ec656532fe7421f33542ef938f6b5389248f0441a961b8efc0c8c63393d7490ac8b0e01a150235715185f1f802457c7bbab94307c54a9e3aad65cc2fcd74a6ba999a44be066865428661412168cc070b27d4f02439b2b0264f6b423902f491a6fb21b7212f10aa25fa2efa5be98097f3608b0710fadf5dff4583638ed539f98373a88c6e70a8a19c1d242ebdb370e550411964ac78caa052bc053f6db2df17fff4c5a1a794774897c76f179d9e54399eaf8a3221f3e4b81da2f23cb098c2ab23dea85bbbba56666e5721fd05d8857c6e22b5d6e16cefd470361af8e418c1b4c523b33e2469058e2df689a52f8c3266579bfdb43e9376bf174234abe41ba7920eba45f68baf62b412491e9510f0e11807472d259f678d7d62528ea824e5e0eb78972317c5342dc5d8c94c0daa6e211572a23e0252aed04958a56f3300d51faf35bc707c35542e457cf561742fdb4d7200cdaf548007d240069da6485e59615ac35b652831fe4300beb7c00be7b276c8e2a60b411fc2a0ba6f3ac47063f6281b4c459a583967abcb67b38a92e7994ea3bc003b95bf45cb0e549abb2355b90b882c561d3e4cb06a5c907c90062d8906fa31f7ca465b35d8d079860eb4cc2027d5aac67f8342597c5e076443fb0154a02d258f22c3e8df3d159285b0efaf571dace2549ab280f3e06275d56e7b170ace9163b9f1338b5169c7a256342ff692080ff3a12ab7f51f25597a77f43ca1f59876d4c82033a0f9074bf5b0e6149a2dd2ac50d86f662737c0c5258bc14b40fc280f1960516191be9f3529293a0dad89749fe34a565fbd45bcd57dbbed93b8e9c0edfacdf675718c4c43a63f5282a5dccdbe004cd96e9c58319dbce0c1fa4db484513ec20ae3f929ceadc16d0fb4f4a439b3c6aa107a94eb65386df6c5aabf519f5df6b63526d06563e8691759f2474c7b85c73def7786bc44f91e5fbf7390773a159e182cf2d12402233c4a709a090738cdb3b15599422299a5a82428d9084b93e63b9f9164315dec450005e7bd310f6ca88692a38a9c50b380320a376d3180b16eabef02032ebc9ee31cfb7f9f136c4211680aa0bff86b2f9be030872792779704c105b5822e373b0b66c23cf09af6741b08ab228da080173a10af36639d315a6bf15969a7152523adf5c9c50c9de4104461ddde0368990287422d417d59124f463bdd66444a1793d2f9d5be5a7e17d79113900d565f602f4d98db92f741d53944b9272bf69874dc5146903141687ce0b9accaba90a6896758547e26b6cd385f43d1a36970c350b46089b8bf695405d90319cb9f337dcd5ee7cb1213fff10cd6b38813211654e1363736f5161adc7c89559584059c27e50404fbd28d82a88bdafe1ec5a470e09d8869631be006af909e71ec74a00c543e77b8fede425535e6e20904437e90a0426c06d5938a129e753d23ed7f563ca6a1831d49327d9a6a52a6e3b345318615810ddc6b8736486cbfde8fd597052576970f4bd7f3e8490a391c4aeacf68701dc2ae73a4eb065e480af9d64c7102fd1d958ea868e43d9d902f574f55d4ab009406097d7f156e3b6a6f8431a1d229c1f60bfbd45e366b0323b517f875d78df28a78352d29b4cdd4984f881e6386fe9fa164d582f6f89e85c1efaf0636e225c48094e0e17e3f054b57ae84f1fdbed6c4fb12b796fc7cafa54bed50671a44f1c1d6c5fb588bcac3bdcf9b286cdeec6376532d961350302f875364003640c3f7061aa810cca30447b47ead9234699cf9146fde5cc2edb6da6300203a73379eda950de3b95e21c043cfb4eb4e0db2976285a72b8288fb096bb46ff07ce7726f5b912096b599b62d7c347cb65be35f1fa9239d421246777cf1982a9aa57a9c561ed6bd10ccf0a541b4652d6473a845432490aac90111f2fb20573e11d091eddb95a02784e51f525bee77af34943f20c1da6488efc3928bb924e7f107d5f6db64a98336c13bf5da8aa2d62b04e38a027911da30a4636b2ea70e4c78c3ed78fdc667e5e513fed0e96ba6033ae0b835373ee979a1fe602ef62fbaa48d4bb9082bc30da695e32b3bf58335586bb119d032cdf1862796c531063ced353c275502928d5e14f242f3f64fe4299097686fff5d1f209862f75c8f95b342315aff7946c5bb8d8546cb77e5b1e2d260212cb70e377be03d0e6f3ec5fc4e4d309c81d7e11c2530a704d2bd07e2d2533eabefb15861b5fb9caa95ecea0139e3445e60eace8913dfd30ff200b63a41fea571d85251c4e454fc17b1364cc77308d52cb6a95c539d3b112be4e471d5e4fe733a06105b7b4976b1ff79e6e6f7f3b1c9e83aba8369efbb9504127a08a0627d5532e6160239de06faa893be5f1dbb0aa27a40cb7796bb76f59f7971c170a195acf31f303ecf8a3c2c756963d07e748fbd282744862ad21ac41804f09e092318e240ab0e9bd2e92858320d7c374b2250e27dc86f1d7d84bef31355b3e554ed295bd43b5f344402e9aa51e2a69137be0d7c3749ae42b6dff8f5b39c83ff6a72f7a40ad348cae3fa3b190f7a2650559e72d5040cfe4d90173ab29885aaa801120a1e22750f5f1d2bfb0ec9c3bdf2b388d431c6e77cd25fa691330acafe0d51583ace0094155088997ecf444c22f983fde4390c1de9f71bc5c8003f87575a84dbd8b64ed7f279fe032efaf5602794a05dbb15a50a1834fd4b0e170dfc89d99419a2f2a6d4250c8d3e9ad26853ac6e688295cc7e769b6d4d61e45130d244b7b18ada51adbc51e8ba34d92a10591dcff78bff463c0ad8342738acc470430f2bb7ab9a94c9efccc85c9d986db417ad6d08c793d3370b247f78304733a5ac08e1562a6aa104245ed14adebbe68c9688c20f18795570c649b08853396350b5ae6f0df8709b908b81ee308de93c20f3b8bd1fcb87d04c88c9097eac29c6e73c2997a5d5b56325ec79702e836ecbc483009e0b85d161e9317b3e1edd7f713ea02f8ee37ec8272ea4bf75ce0a6ac3e272b4d94ed5bd13826f25cb27fee46147cb85778c0e4c5c27ae9bf97817e40728869112ab8ffaabb3b25a91332800f0dc190aaa52c9f87bcbc3bead2c06bf57ed6404632a4f7fa793b5ac0e565fa1e3a4e68bd9d35f7a41d8825266db5f52190562e3b0da0b257a869ad312c993e201129dee8b10a8c4d1967afeacec407e1245eb845ee809bcafb31fd81c1f6fcc16ba00a76c71d8db585ea5b70f20c5c0aa4caee00e11c3139b0e87df8d5e6534d1f213a1489edaa4770c900a79676b200ceeb7d9941f77487c6b2297d5e408397102aa8306e5c3387f4d5686c3502dbdc7b01fd7f2bce82623d84cbeb28d65b15401726fc81b6ec3b7a22c7f92da1bed62e5d906de18d107ee6ac9ff3ade64f8622b35c0234ab8105673afeb8fd0a207a88f14c30e9bab1c8bc12dbd1cbe8d4a94ce2df9e36c1445b07f4e1efb577c9dc46c25a9dcce94d1b360e77428b591f952ae2d9ee82eed33c5095207b6ebad7787c8ef494b5e4cdb474c6da8d47c5bba6262a91d4a24b40e30ac8830b64d10d9a3f30fb385c689db7c0509c670699997d35570ef65813ffef3789410121cedf04894b67650d5e8a9a3acdc12a7cb28fa13e1506f32a0fe0b69dbc21deb505c68cd5c13ce0eaf554f17886e77aedf83e0e4bf01fc209954e4507262c47351b5f5d49f7db36d2a9f8d709ea9fa584a88231544364cb7487a6cea93f699d8ff1a5840a75d77fe8cdeec00a86aded028db3904b42f07f4fd8eecf69b58d24fd20846b3400e975b14be872a013ac4b301cb30e63bb4c219639b3b843e11bcf3c4eb421eef95b4a588e77f9d771419461eade6571431888b4788a42b15f4f19ef51fbf7941023ca3007c2e71763c960b311677b5b7b6965baf1b379be0de995de2ada9c4b4ee6c04352f89343b5d92f2af8d5f915389885ab8037d02301b246a82bea256d4c36e6b4f54b568ca4df970840123a489d2bfd0a68f6122e85c31426053ca588f36ffaf78d0a5db497c4482f8c192a56427872411a524f73b87e18805fed0a01a9912106094c7bf8b6920aaf504c2c39b08a7afb4472ae77a96b050c552ace02ee0f799bb979978abb62b86372c54842525f76446b242a5edc578ac177ca86578cca0c543cd4fc2dff35eaea9c16cf49eae29f51d7f5b107e3d8a5247a3676fb1272b1a572f5d967ed55ecb76f5533183c98ca48ba21c36161398b086a7e446dc9922f3782fbc9a6e5f0a9de5627f20f12467b784ae911160aceaeaa59e28a588cd5ddf9c5069a01e8070e2096d57d078a58034a78d58bb3ae1b6f2704287aa803877609a862a35045f7f039b534941e7b7e905f0f93a39530ecc42d33faaa5365eddcf27783803817dd9f678ab6c7277112ca5bc13881244d408317d9e5fc4f8c67f7030bfc9db84eaf1b01d6901b4b1cb9ebb510be3859217a707f1e2f36d79a98556fffc0cab88363fcd6264d0c360af806ddd46dee693494d73d5af42e82265e47621620230de0b73ca3095650682753eab85ece05e79cbac203417285253e971d395f589af6ed366102fa5fd766972bad0380dac6ad806115bdaee55bba074f492c6696f6c3d739e7e9bc92ef4946a4c45c736316ae2c069ff18fa9f2f0451d2fe25c7580b148875c96ffeee32446def7b8da385d585b45b1d1dd14eb671f7c00984ab39903b3d6f68520c5940755e52d9065cb72d09a09ebfc5f5b4e4ea09323978793702e0d9802e8a92eec66806a357f98823ce5a083ad93e518452706a7eee1090bf951e8085b587072f1681fa32dde82619376b961d54b96c6fec6312a5568f2d1b5ad453e1e4074aeca6aa4a92eb9d428767bc6c80b40d7e16078511fba3206bd39fdc108280d3ed76c33beaebf248a7d9162d2574c88fb5e2c8c93a96f379354f183e3da9dfc2220fc54a3d75772278b8c10cc0a8cd2f08f1584365967d0a6a4612a4a1fb0584c72fe47ef00f172e75380f3345ac4dacdeda834a28f3ee21c600aa882c3986985d51a529235a9526733255f5045f045f920812a1ce286a1d2eab0208bce09604764580019cb5214b9efd0eb778078b9e38705ae3e7484274c576b7bd56f4cb4886a20623da02226c97d59d286927a32034f194a66c3ee3c8e340161d9b798a3e7865e17ed1a1230a7e12ca367d0fe4adbf1364ecb50be2e0500cb691cf83f20740c19283bc4430f0fa30419de1fdacf5277ebf6be9c47699de163601cc3b0c103cece3eb8061ce0193897850d6293d627cc9bad9f2518c04ded52670cc91b49815c57577af2431d767427ecd6f226e8af8ab5f2c3c414439c21a5cce60c7d87322871366960e051cb1bc2a0f91f1d0cea69fe8ce28c87eb309ca045d827caa1f83f976ce6e88a65544745366500a251db087d2d0880744218f501f98ed794da3f88f31e8595f8c89b66a8e0423ecc4c987c0812ef8bebadc13032617473ceb7d8b1bf10bd447ebf36260d4a82dab5690c864c2b468e758b33f544a277042b72157b552aca923386c36557d11b08ec8b4de6eb480734cd67f568e364e9892a43c342fa6fffaa0a96d9abe2bbfb54a5b7d47ad140dc401afdab91ef6449eeab713366dc6ef3ba788c59f5e6ed179edb9d5c0060aafa6b7f15f19ca3173d2c28469ea3370cfc03d92adef959297b2aad71830d320e67cdbb7a259ae9f5b4871d677c9ac6116e53b4a671119da80786f075d4a88f43d689e3e1dd295afd753c7466a37f740f017b5b00c5ac3e0b9fd55f23995e92b70395f14f831023c3a681e3023fbbea51ddfc09834ed833ecf98b3f030fbb50ae231530d030bcee911c5682f529e02362d28f10639f08a12f95ee77e70bcf7d941b8ecc06fefcf420e2ac1a7de368b73501d1266f9f05e251cd05dcdb2938bc148af764255f43d772f0f0c03f98de0e37ccc15a16ecb4d0deaea85436fc79c46ecc57f9f64887889628b46deac1282d50bf0c4cf1786f4e8da6a05c70484d0db7015cf737231afa03fd451fdda75b5a637ccfb729c17abe6c31bd7797a741629fc064997abf37a7eb7d030465dfd2a5637411f578858c0f01bcd94bf09cbd691600e938f7ffb9a82e91d4eb457097a42d217e3e2e27fc44790599a709a2a8beb1c15e68409fc7b470df1962b90f08ef5a9be9381c75dd86319e421e34b45558ceae9f92359ae47d8ba99248e03f87a330b89e493531829db8cfff7812053938a24c5a722635548c8e4faaf9ad93967519cb932eb4d8caf0a6c1788b970658cdb4877c3cb5c7cfbdd2cdfd793a65d9bc3c961c1c28f053fd3c68ddb9ae08e3f9297c44a842d3c7708ffab5b662c0d03d72a19195ce2c251a6c84f4c5b6cd4fee665498f2445ffd8b8f3be629e56237a05b0f88e3f09f0773966b0c94b15274cc220e4bf1115cc37775577a6e83d3bf690193812075b5fcc3bebe5bcb54d441fe3081bd6f6ba5744e5014151bfdd077081ebb4f04148acf496533efc8e9257d7dbcf578de7039152d77fb3e2c0558b05070eb58179255c3480adde8731bcfc08d4e341d77956597862b1dd0b5baf08797062d0aaaf48371aab66994019a11637ecd83e593c8a6836bbc02298dea03cfb76ff4dcd230abc4c861bbd6c486fc6201db5637f20e6c7384632598f0a25774646e26ca8f1c8111be0e599b7e5c455b683fc74c323edbb9f89d1b3742dd7822fb3da9cf7644bcb50249cdf6b8c6813137db68400574b0a5d08d9c4a84406a46975e8718eccc1f0a75aed0bc9be0af1a0313259a5a404a1db9f9aca99cc6229bb003655ded5ab0011565ca9cb16e003f345c51b7bd0975a3fdacae854c2b621a7b67b3e84482c48aefdfa1646c2d69e482944fb6837c6b8d38e5aefb5b83c8132d1ad306443bc98d4bb25dd505272e6c805cb04bc798d0ad28e0709c9ddfb588ea32f45e6a30863468bc48da3970d0e82f5dad81e9b3c7be4c486c11ff3216f3856ad66bd4352c1aa06d74aceb2a0d5417f7fb90a61c2d65751d633444c0f704df67b235779f164a0323fac132c607cc091da6b2cfd99c7b454ef28479f6a72f2b6dbfe19217ce68e968ea69d31f77c79864dc1b5db49bf4a4845a1df5c79e9f48097355d0f8b037be88feae9d82ec8026dff821d695089be3e9d75bd2a974bca02f78e0c35aeb26eaffd307a419b6944fa03967616cce25664b4e4e39c2c0d28f19f758dc45903dfbcaf84621c68c1ae77ef80f6b9121c6286707a2e1f2ed7bd970ccf7a5c393367e2e16ddafa00f24302570ac327374f546f69d7a323f96bad2160b9aa1b9c5ea64255a678f8880a2e4d8dd85d2c98e4603bb2ff68eefcd8ae336fee769e3ee9b1191b0e31c3a7d83f2b3ecbdf7b940e572df99f1c4988d2f0263f36c84e2d31fb696e5551c73c06cdd9f26b21ed8f86e494ae4a08e940ed5095b99bd97a1d79e66e3a24e22a9cbcb3d7568c04f3b1e2dd3e5bd3674eca2f65b3e9e1c4bf43e51d949f512e72804e0c3ba3dbd0fc88d106774f9bc73bd239390012e955f8587a639c3e7d8a0b16b5c6cebb2199202650393f035b2ab78ff50b83716aa8ec4fa493e50c3490f5edaf9c5cd3a2dc0b8fca552880d03b780e9155f28a3b5abe6323bf0168daa87480cc739653953f0bd5fe6cebb29343d3e4aadfd1a582f640d13e67aa061e3ab3148bc6f672e32bd016c8fc03fcae28ccf56637e63f5da2456df28727e303a66c60c64f858d911352ec564838a4e379933ac889b2b6a3b2ce36a8264bbd81ce697ec156d8fab891c99a4aa5737c5dc49b857346955ba5dbf0681eb0b320e8a6c1b71770d5f6fd74f3e38cd16e718b58368fb4896346c06817b3e0c0188a0145231bb2f6be1a8c4d8255e9892f5acd8171f8b153340bb6b0c462b2f19d608bf6df80e914914a6827ae6a1defb18b802dd7c06b8f10f3e709252aca89a1b1b11f395d184809b3c14846bc64f29f929c5e8bd27d41f26d018a9fec9e5b311c8ac531a34a2ad77276c598066f6a841141d5d8cb5b8b36cac4931e1d345cd73cba683803737d6137b4027b374d015a22f5ff6883f51ee084927d954b27e0c67fff9fa549913fba5186fac2681e7f51bb6d61868be398819ea73f8a754a480c9c31b3d74e1a5c3e3cb7bdd62588a488c23223e724bfcb32f7e212fc782618656f4a885062bcca72b6413f422e861ab94e32e17db80aae400f7eaa0ddd75dbb64d07196d1aa54ebc622e5db1ed717c2aeeda55bc851a28548958bd8de5a71bf08790f9ee15862f22f00a8fac321fd3fd8e888949cb24a202a23d3a94ac5a7b5cfc634e93c18c77b82f6e0cb44b0be94034b94aa1b9531f605b73717fe078379c28e84f1db6b8564fb905aaa30e8de0427dd7075f885d96f48a45880e9e85e694b7980ad3f2b8de879adcc48fbbbe715fddd2e26f4d4251873b3e2a0f023456ee1eb0ae4b694fb6e9e3c1a30a7d8dd51d918973e281440606e28bfc62b84961d58304ea5780512253e26934ce11d7cb1307d4e675eda25a12ed51e71e05202e9540e671f261c0275c2b92ea2e0314dbb7d9ae0de651e827704af5a12302da591b4a33a2ff49f9327b7ea7178ed864607826fdbd54b0125d63d92f6a3a6090d5949a0fd55a6a97c32d893bc0b0c9de2ea9e3651d40aa2cac4689ab1161601952bb18b354ed6ceff6f7aa4d4a00ae65d3dd78a73f27a8d0bb84ce888ed8f38aa357b5fd5e53e398eb356f117e57dbf47c749c7cf82282e54602e58bc8a0409489a5810807a9e0e698684ad5f3f1920f54a9d8afa698456608218b268efaa43fd44d933f92622eaee72801fea8b475106b2be3f8cd9761d71e22ec0985f39c03d3dd13f07d9de8de3ddc6a4b75da218578487177bbce99826116d99260015c74251dd7dde071638c2ffa57c7fc7a16e788fede7791b3c9dc0fc484c1b94947577b2aaeaf166e4c3d74568874b3b2cff3b24b1dd72f41259b8b8033f805f1a76bd254bed5375962adbbacc32dd44ddd543185c0f4c65f33f26d958cb772a0aa73b6aa43380a1e457480601f5703b5468d87fcdcc95a64fa1bf201b739b1835cfd7311e8346cc2b1aac69e780883f480e871cb16adb1307624f0425519e31594c4d699d7133f9a3359874af6da0240c2d2335fc3a55f2ffbe6adb5404d4b4575acecbb23a095b11436dbd70770c16f7c51823b7a8c646049d1f68035752e5e00ac0150803ddbd0c18d10809b665cc3ec109dfac36912d5b59270e01240862279cda942c754dba701c9ad73354d0a2f5217da4b73de332d87fe97a0e918f9d4e3bb4e095753d702e640e1b1f7784569bd9abb0253e93ebf13cfc622028053d0e65f3e5e44c8b523941d72649e07b63c319faab07db23062236d4e33ca8ab82dfb9ffb836ef7bbbf400e103ddcee163d12903896cfd5f396b78bc2039426399b614f1c993bcecb196c7bafd23384f8f5e149174da4e7525e2d61d0939df36c07dfd582b6182b4154ed55601fe1fab642bada8643906534f28157b48177c4a910c3892437fdb86a4e758a4c080acc4c58c17f2a94e874547a529b4055cc35bf3f51cdcc4f40e8a0309a02e8b96f25d0b3b7a2ccfe85c38bcce0e5b56390c950ce231fe00595bcde76a8b6dff4dd8d594f08ab8b306fa365c38e22220117d71b0bd2d5e25b78063d55c43b40f6b69fa7bc44e6d59eff09af8f60f4a386feaf50cd00a735ea3928846527a26129635ec377d9dbd6c6e20c734ea030d0b1aad36b2bd4c00e0a5b04d927c9bcee1ca44417cf2430b27853a0549605450a234b9e49cdc747d8d31a19f751459772684ac7ef4b99d73cbe86f0648e94818213fa6c330a35a6aa16be522ce0451bc87e44b787b7c9aa1034f2e4651a11ff50c11237b9f83c53a122ae2bf453ae48191b756574f8aec1ac80bf0930de58e61b94195cab501bf999a9b73e21aa6f5886c459d6815d36f15b3d05ad47fca44453166a9665df59069ffcb6acba4e9b2423f59a21e43a49daf2b5f56e34f1496cc5928b87395945a09eaf87a61bd8b0e5975c195642382beb0fec47a73194dfb8d8343e607b5331dc3056e0bfb2ce54a8f407c5f24b42eacf77e5a04d3af2c4e25852cb519c94577a807d6b251f18f23709a8e507d93b6c7832807d9e86017af2e4f216315022b368b644d2ce26729b940a77c85b36de57117d828c5d98ea475001f5fbbf0dadff0de053f47d9771c46be1499af3758cd922689e9e5e84bb9a0dc5c311fa53c5710b7ec1c5d01699b696b2c12bfe7e0de932524f4061ca1953347242723d820ac0305a649cf07eb1e22083301e74344febca87133a5e3e32f30a27a164a5c7c679d5148afe85ba85ca8d1d507ffa9f694428904d062919e70c25acf6b92e4f6bcf6839a4b6b5d8035ee3bd283387cdae4f73ebd2c8b520370334a3d0dc9a5934a85fd0a9c6d16948795f0ebb85f349983762cd58e2809e23023663400fb467407f7b9f34fd7d60c10ade4bb245e29ce3aa36abf3943b623c3da0485466bc2aecbaecff69c619521919c71295c865b273cf2d0546a6d76d87068252709a0bd4a4b050d553a08d8f22eab56e063c517a6a5ccbb83a1892dd42520ff474e57a4cd57786c4ba8dbece9b2468b79d40113f07351322c3881739240f1dc052659886b638ee7777191ce1862145546901a7492a4d1b640c49e14a5c6b695110ba9abe32c40f6d31ad20a7e45af16be0ccc48f2e3d421c00d6436fb972bc361192c005d9b65c3f4d8434cc6e101a4e5c456f81b334182e528ffaa5c62c07c556a4c1237a17c41f8523b297f7cf919f383518bfdc19ec3f3222decefb75b0b64017547a616818fe972f3e915cd10aa202fab3b59fa50ffdc918d70423249834f66b03199e4a2067d2811911c495d8721bd6635ff559f046dd3fa47980ac1ff8e19b4131d191aed8ff313489d282802b4a26668af648cd72319c5399584569560724b9a944c559f991e9614e4c4307d49c5773b8a30513cef4f1447e6270464731b6c1affe5bfa8d39e54cb879c1fea49006c7f9121682eee4100660cb767ac875161d7fd322dac181d2ff6ae589b9778424df9a8bb695c0ba4cba02e360276c020582a20ae8371d36402d976aa48b48257f0e8644090d05b0b7f6b230ea2346e6f5fed7d542522b6b335aeb30b2c49aa0bc29728fb9fa48440577c3d4f5ab026325ea14a990e9b70e00d11b3c055fb52c546e25bd70834f2eaf882cd352cc5532ea1d2d19d2ce23d82581dfaa02a44134c522f739e64000ce3dc71aa208370a54ddedc60fe4530132cbab1f0543b37d6ab996dd23e7d4298c82fe36e124661a7710d43f2b659357ac8ebc17cb8358fd0ab3086cf554ae8b47e2aad37fcc2237661ff753aa9993ebabbcb0466de6e6d6ba3eb3ec98d0f3f36c11a756958f608fa67efe72c04bd36c0a7a964f65d5c95624723f18bcde88f34474768229a5a4b9b337f40f3fcaaa41d6b1af42064222a6593b9360a9daf81bf79f463fc7a6ebfbd24e863bacb0123364f0058e5715bf5873b9cef1d56e48557023058df430aad87260d2950a3061a8f88b493ba4800ffc110ba77d81258404bb3319d80d7924c082110d32bf01ac565702825a61a0b33e0dbff44a6926cc26f6936d822634e095f5ffa07d78d918726048ba19c35c624d7eef54b22545b02bb82d837bf441dc36440fc54b7e6b5a9cb4e5ab205fdf5a951b96bbe79f1f96b4042b33822372f85c8023e79cce9596367096e005c412626f3df2616131a902aec9c514487c64d16b829c0cc7490d15ddaf7866cf6a9f5470544b0605f857d598a8e81b92fee72aec6413812fe5d632d53b6b941a2296a5cfde4652b44a9355abf4af67c47f1bd29d25d8268cfdf98d67c36f3e7b6b6ca070cc1b99d5e844602a4470e8eff8da80fbf512d1c08880e9c0f8e2a83f207b9a60dfcf128d1137622af47d4f9523cabd76b33b08179bc507618c395a4fa30638b8ac506497654f1bca165eee86319ea457e27c6a2593915596814f883d5e25390820ba6089616d8ef411e5f14667eb94c47397a83ebb987800063e2b88dc85db8357c0dba8e23f3dc0375fef3183447f8df199232661dfc1c2e028dc90c6b9c9c064c9798a87617631f3ce0aae0fc195b316c73277698f2bbaeacd2dcfcb8e9252aba3efae52cfa087ad9345313530a20d23e3a75bde1b4da009cfb1020f907a313390af654f6e3f97b31a0b0e060d81a7c1ef6fa8dd1703e7d7a61f7e05d492b76e4860266194f5e5fffd075705169ea651e4717909537b0a37c04c67ab2795c5518918873c62063c42e35cd17910704026911a68ddfc497e478c99b7c3a25db1381f98950b9952b740b2eb142613b53811627fc9e40e03cba6712e89fa49353e71a6de0d15e0b33cb6de676097c35b6ac2e6b5a8ae2dac0e448ba5581f7a0ad6aedae7987efda760695a3af8913c4a5b00f3cc0d21b0f0c25cce4388d8dcfcfbe3696b0d987291bb7bcf4bad7c36be28e6d5790ae7345ae74f1bed00cd7ef132ef39940460702dea160f8110dad878edf43c1c8c7ce82c9012aa6b120f503bc0bbe72dd7762dd64290c248acba2b7a04f1ec3f451ca206f510c5c1062cfc5146be4b9b51fd2f722a6aaf7b74dd272459172d7e4fb8f7e607cc9f740889e75a864ca8e17a2d73aa3f0f87ef2ae20a166c125f3a6d191465e1a0de615c9e3283f17c727846ac21e9cfe775d4703dae7d8be6e5bb56c5f570c70ff92fd9821e05769f3e8495ff7241305e6c0540d1b928f3f1db602a2784b367d5082bb261455656ebcc9ed22a35b981f49c31d315e4502d23ffff04372bc2f0db835b9ee2ef191cdfc57d95fe397e04b0e5208078f736e5f493f285ea100b2007a72402e26bd079ad161d6498fd9cbcc7acde11b52de45932885694c02e0024b5e5fb2df3b099f7f585cbc0845a6594937a3b9056b6bdb420af0ca9a6af061178d8d20db02f46c8c7d461b9bc7e2d302ff7aac2fd4a989814af673e9dd7b954110bb451dd2c33d735fedb2f757187860b16dc24fdb2fed856e67a4ad961fdff10f71be2449921e7f07721bbad5012ef9050f73c7417588422ae8fc055447cae2f3eac41f3c010edb019b8c493b0fe5fd65725261bee359c65b05171265908558a80d3f341838def0e211b0769a283a64bc589f4167ac3abd3d414bde88a7dae8101ed7c4bfae37f14a6b068022a91bf770d9b2fb8959445105b64cc2f79d593062cca4065bb3893bf54958eb196970cfd22c3a628c2dd7533d449f3ee71ea9c0a7a6b8809acac14b3095da9efb65cd2f18640d24013cda943d4c9d8279d81c377405b2fb33cf86a3b2879eda23d7358038f6c5caa5d4d2865a0ec8017ece86d912dc242c0a336cfb5db66d7bf2cc3cf640a16427dc0f952e1329e38de6f4434e3fb56ed7e08534285df58928d7d5fa53f53c14bb9794385a6b3995b12d6c5b3cae59cd3295d75fe096132c101b5b19a66de631d448acd1eb70e4b1394b51decda6fdc946fb8b1a7a23cdd3e795fd0d41cae08d37ec10eae700caac016729e5d0a7e594e21fe1199b9cc96884c247a3fe34c50d2cdf3ee9791c509fe1943453f8ece7e46e11b8e47a032f5185fb10b1d0787439a7fac153451ae464d81b403840eb2ed1ae6ec3af8ba3040362c66409c28e6078488c0144c5078d8223a947edb19ebc351d6cea6018c9a1389cc753e79ffb899f8b5eacf6da1fbdfc224c34d8dbd2eaff52b1b0ca71f2c9555d5d9b3d010dacf1147eed84ab5a12c0bec83ff08c28f808c9db1185dc62f3ac262eef6ed85fdcdcf4265db103680f175d38a708e2974008eb076e84bb616906df04b4fe9a69c8005643e3872a47c5c51674220ab689ca641c2bbca80d9fa9e8ca2292467383ae8ce88a74ac2b36ab512ba600fb06c426a7df073ba158333441d990d817d24a4a365f9535ff6100b8005f767b0c442a01e1a7662cc82dc7488222cc19feb49d9eb69749f0fb4e04c25e19ffc71fcccfdb32d350b350e2281fcddd06bb2cdcaa7872c3863200f81e568e35824754edbe8ee66124ce681ed8e2db75628e3d0f4a54d3f721dc9ecc73855b06d7fcab33885f5a472381f794bc4c1024353b4b1dba5f8fd516f2d8f422f345da586a8fa476b51d70f2673b0671fa9ca4612eaff1cd847dceaee779d704986d6069f72158077a6587ef3e9e4a3b4dbcd8473d6ac1811a286cdb4f632d05066b1c4a11b7731aaa7bc12426d09bbd5c70b68f709a0ac60b07ea08b783d10877404fba8a76f3b72cfbe0fd14e2a7676e63b8238b64163efe1df71a3d49ef29e7081a1b20e527b9af439ec824328785d1c624b672ccdf7e6c285d20fe4a5a29bfdcee08b6aff6c180dab95e2e9e6e4f9c0d6bee65b648cff5117863a07aae6bb63b1bbcede1aca6f25d1deb18e8776dac48b3ac5b98927393ee4f57a744343c2adf7ee73d9f596cfa5cfcc4d8175d0b2c7c00c8c9a2179c9985b6109e945c6fd2fc364441d441fb093b83d6e0ae11e1fc74e7d19b338c8ce80c2d252039b426f08403fe9e8a6d1a0fc36f05e184ece04d10b8b75b6214b4ff4a882e467d5d6e443f1c23275bd22784b227103abf81b687b512795e55b5c979041683e416446c4db852e3455826f8a0fca5c7a8a92c5de41c6f00e50b7357c4c33c0ed448ba19393d218810bb7b66802c5f808f2f76be6a4feb1b7a5d3e2d534195c7a13df515cac94db7a5c64e565813d6de8882962d9e5573c4a1b659183ce190022992344c1664381348097c54257178273c869d224fa11450736ccc5c58a243b21813b26d0f441f627bc543a1dbbe8fb421176e5ba75e8af814c215c7d7176c5f2d65254542291f252e4b11752dc566269ea23fd69fd9f453665dc868b2a4aafa0116cb2d9a506eda19b9b8399f5a1cc8738610db99d6e91c76ab4c6e840d6c19980ef73eef147e316b8855c8bdcdfbec5cf62b3c479210517a03f5689dc68cf7336eee0b3d709be6ddf11b323da5c725b3d95873f422e886b9f66ed5ee2d20706e905b0d224d135fdd4ffb0c16e3c17474931b1594bba66244a4007ccce9c5bba0c31633b6a78401699db2a8d2a32693e8b00a6d06c57301468a196b985411530a236624c13d85a2427eba9a474ec1f90cade53a71b469175b06e627ec7fe681b50c380834071c4122d8cd03498dc07368cbffed9f5eaded9a3a58dc6ea354d09771180595da5e2de45e898c0ab7a37fa04c0ced3a3a67fc258f49c0e5b01b4195190d10baaf07bfd6b56ea19f54f966f09fa0d06a41e243381640fd0ca912efcf136b0f52cc404b0a63ff43465ae6028fd2c51c9b0706b9dea733132fb6f7fc5e862b1eaa67d2c249fb52ef301fe27f2759d87bf5393fcf087591edbdc43e0c1ea7af30596b975f8fb626fd7b2c91d50440ad7d776924c7dd1317c775ff2703bb89db570ccda59b1f0739a27ec2aff4153b9ca14e8e2b3aaf41b7b2e784c8ceb8749053911eb057aa5510f6aaf05a8f92d8be63763b803cc6b7245e9b3497138e52296f5c00c68c4c4f5bc1076af46f4c98ea389501b9eca49b4b04997cfe6b76dffa06bba935b2b34860c90511a4324c2d54a1f8e81024e38e07e124895f87bd322e2fc08a5e4e0e4d2dd0204eb943d934a401b1c1f06b587e663bc00f9ad70b810a1b081a91d059ca88cce2ed4376b71d45362ed1cbc4023a8b3f45bbd3ffa27152633fdc81769b36f5fd879c43928686a43fd9629d40d657b9aa0bb9d163f01fec4673822f2142073b8d86623185242f368057e8c55c9a47e660bd89dc61516eea03d574f162ef674b127810634c51a2802a27874a06e1f2ff11679b16d11ee1122a28bcde48db63e40087f29507c9dff733587ab6046012a82bf05dd2b0f902f515414fb2fea1d4361c32865f9d22deb71b469466802c1ae6792bfff14522255967875786207eb581335dbc360b28ddd4553282b8512f64a3271d2aaa5b7dec32597b2d52a22765af199ffde191ad5cac00c7a15655f6a576d1f9a0b03caf90a02e34e22daafed507d05b3d6855f7eab706036654816613d3e031532bc33747e74ffd401132c90152a868f6689f034a4b8af54ac54327978ebe3ed7af6e2861b162ca46f272780ba1c6097be998f585a65063b95b13406ee7b020145b99b1e89c01628ffcfbdeabd39c2aa6a0b10c1bcf5b458375741357fac410fbfbd45f65d97132d22e379b18723b891bee63b4d7f498d4d091d4125e55cc81427f1c9286c05729923f3438b3d7726464fd4c036c5ea2fd1c6361570b141de3e2ae0abd952008af00fc0706d42fb5d57c1446c97ea20d57b6b3114430edc6619dba77654ae127100a5fca3c2f6a58a80e446c4d03ecb75037a3a22a3eac954eb5bc29b55ea309feaa7a68abb5ce8cea068943474ca7a347609bdf4f3e0e3cb62815fdafc7aa073bd352ad637d0a8325e8e9ff718da153240d0869d871e3c4668ae971ec972e2f59324fabee8aa56c3816ed99d17b85db2b066c3617bec85dc5c38d173ea63f0283830b04c4c8f74a5844fca63dff452d3eecd6e1a85bb4153a2d445bd7c37e1ea0fdee23490a44cba5809ef07e370c49fcabd9a37cbc5e7dccb869179315872737aa031f17891f48aa7f32fbd8c05295672209018372fcda9b3eafddad39f550e5f087853f4ddb59e303a61914cd3a747f7b18f87cc8e9fae68777b5db923909a2ccd163dea88075a8d625fc6069b2d9f468705dadb95d2b3a5879ebb9df9619ce5437812d4bf2ec0ee19736e367ef3a7e99854c6d1a72c87ecfb3d21e100b12c01aab86b93dae67c1c15756c39aba7e0d1467a5753b915bc2dd839ac6ccc92d7690bd20bacf1b4f1f06510a31af7814523807052fc68fef8e171de3688c7045897bf234fb1657b3ce6ac3605cc4c8d695bfa41ca3aa81eb3b4f3f72f9539904f905ce5baa86c72c8c2e289c98e7380e62b9ed8ca5922ae20805e01dbf08bd48e0423006af76a727051eadc28d28a7ed909f300f7dfdf0e00f6f0a16d6d04c5fd1115434bf5416966213a756d42c488f0db124e1f3e2c79a088b6c6f2d00f371f3e0ab249d2a9bcdc2426ab52d362c07d0b096176c9abd5d8337a44bb0458c5eee8d559dd4212ef28696d886c6a534f1dec5f8669733f28574d53d54637d132291417dbb4a96da02e0d8a4d37e355e56068bd9436ba4d556e73fbe86b4a18931996d942c00cd844a0c85b0d665358bd1470b738551e657acd6e68dd7dd633c311b2cd14d528b19d3311aab4cd11b742df1dc796211f7a42224e4231d22e4b75a65edd1934ebe64eff91a6eacb46172fedafe335805b360af8451e4982d49a04db5ec76dc087d98982ef0ccf5ee89808ae9302a6ae7a4ca6f067c844dfdccbd1b3935facb26b6e1d78404e0656260ac01cdcab970c45cb6fbc0f980dc48b2b5546309434eb8146e98462a3c8df9ecee26c34055c023ba7342140f26e7ddf9872ba76d4e6b10387af8453e106be0c9e0dccb2548655c47644cc4043a791602265619760a6b2dd38370c801f002e15fb127ed346e37936736ad148cc4b5ec049663973dae5e3ceef6fc4da31b07e0f8919dc1706a2ee73c920ae96e8a32376eda33ce6fd51c9985853048aa0374579b7f2affa520acf37616aa10277da8082ae9403342a296e05ec79dbd1e160146812a64d15b0d24b6e9fd42689795c706e4a35704eb54411996ed35339f79bf17742a7ab0c099227014e7f0fed251b55003fa2045b2daaeb4507e777b248f1179d35c1503d71fa48fe4e31a800d72e12081d24ef6f72d02b20a9108dcd7a7ab9f147dc53d2ae0243db3b1a208eb74f44550a7672d5529ecb292600d27865eae75286c42ebd923bbcc86aed559f5a899803a7d03b5f094579b287a181f39b4b351a164a39e5946a897978ec365c788648db3a04bb78fa223c91c154aef74be7660a26ca029cdc753c772813dc87513cef3044520b1499f39fd956f2cbce5cf0fb011846a4bfefca8a059fb91f40ab712d187db1cd9cca8ddcd6ce6391e85761ef5c04073ba51b6c3b7e2787795f5a71999440f237bb9fc971e33f223e33a3f9f6106144bfbe045e9ee9da5ce3a257300cc47ba588b3438a57ed072d1b0a8d8c4f3ba7ea8abb25dd47390b1add25bc78d94e4893216aa118dbd5e1b7c559849f3cfed2413d5ccc943cd2ec96db66b3d06bc348c53dd253938b6b0be3434d0edde1394d76c3cd2e83d7f263512d0699736bcc50264de2e001ec965c78b46f386bef7a6a768088fcfbc4445f278eeb10bd84ecf2925d078d4a8207831fbe8024ace30f9dfbfed9a2511619b032746274c706b420720657e6204fa50d234d093385221e24a6a7f8a82f5145d2c66c6c7075aba89757146d071dd6eb3088549c4f0a50a1bb89faa1571c23c45b787da1b806fc082393230eeee4e8b5546d04433fe7a99471f743e4df676b0dea23c5b0d4596b02a4f4ca1b264b79b1c1039f641b99a27370963a3d04502cf4445c6670ae052597b9e5a36faf2a6636024628e49379503f87ef3eb563338aebb089dfd0f997ea818a735a5dce9914185b7183445ed336342d2f292990833ee15878b0eb20fff0b876714f77665babbbf4fb9eee228ed5ca9bc76c38dba2eb833258dc31b7014c706eb6a71dabffc5a3ca0c108dc81c6358bcf7a685390ae0bc8a58b86413f40adf38e4457db2407a8507b0b493c8b0489c3ad098d7bb4888d64facf7e466206ad07ba0709d95f9caadbd2118cc6aec8f1b120f85f60eda15f2c3889e3dac9773402a832463a2d89db8f78a228c08da689c283d1c210100b48b8bfc99e71be52b5012b0d79778bf593d660806b6290b0aaf08fd26dc3adc4e945df016a39bef0e2d8052b8df89cd40464a4dc51196d283dd591a2dafcfde067d79a35c332bfc37de40430199753849e52757fdc5fcaa05964c0ad32d0003daf5a8a5b481646de8735c152dd288422b2aba1f86c76a074bce3e9c190fc5a4e095f103a82c98b9e2184283d73388e319e8ae5ab89bb1a1819fc8d1f28c85a49caace5d737e97f7a2162cc49a6058f60d04fe21407b085bef900689a42f2f3b9fec7803f17a7e9e51730f72f41246ad1cf36fe9030e8db0388ac272192e3cda58b17dac269a33b78955584383d8fc7d8dbc188884e98a0382ff58add12e6a43fc605570135e88d3518d64d49b84dc9eafce5e5337e29b1cd72e52d425f654ead363a12faa68d82a5f41a8034af6d50cc95eefac4f6c30e54a4d5152829437470cf53665bdcab50dbc34530534d383bba135bdf23e9ba9e421c0a12aaaffeff2b2e9360a7335cf639f9012806195467c6bb8753fa52320fe425c6e0f036c274a02c7665fc1f6a270dd4ad115c9899794dc7b244ed20ce00200e665417d607cdef8d2cadb0a265607282098208d966e6a9576578f941b3dd8a277f807a6891a445999ae62e150795837296280d819c3a6b1e8784697ca754bdb354502108070649591289f386e934f8f16e0a5e020afd7ffdae3a2a6cc8da45de00e075da067357919a99f4924f9964d5d9f85fce1d87c1f551677411b493d63f00b324388638a387d36e8e9928cab40902ee42dbd22729569e77a5cea4f3e67ff9eef10ceeed79db971ea005eef871fa72c259c3e4d4142655c0ad4d882ff8d118f0331b324d442fd5d8dede9dc98e376c7060253122d8d8c0c57328429979952096eb41690a99ec22d8bd9bd054ee259d8c4282db17945ad6c0bff0a9cadf45505496752e9ea5af5adb161fc86e87b5a86743308deb09a6376222ed8de7093e6b03760ea65691f30ac6b19d0970f8f71e4e5f3ca8ae11eb1ab716c2dadbd08e74ef14a11a0b84c15fd0ed19fdd9ec85859644c43d9881dd1320e44da1c7df33cc0101626f2789a5bf5546ea5b0271dcd9535e053e980e59ba783c88156f14e38ddf703fc93522ca63b499a1e13b733458a513e9a37da6023363ebbbbbfff0e1dac55602ffd0eea8622f362158bbaa5c33e70da0bc0f1a973db6d941bd4efddc60f56e3a0e69a0d222fe51ada261848eb664358475626976646cae3d1763a1881a8b640ab8d94ee6aa6bae1ce681770d110c44f1bd3e5ca77ba6c72fdd6ee8c287b520d3b9336c7480959fa572f0d59e36320539c0cbd1f7efb8e39719b68a9abd5ee1e93ede32be6125900c853b075dd5035b25295b7e3b110601cb6bfdbb8ccc87410c7d998a003982164458b5bb9a80d443a018dc3bbaeea12669d047192b458bd8afc1cfa4a344dbf7295cb61e57074d3f7f3a77b2e4c34fd1a6f34c49dba1053587b90f6e8f77e0fa65cd53b6f8d3d71fa9f5a8ce837bc06db501876070a50ff7c0376f5e6a457e8f1d3abede4002bd31b23d1b09c54be0feef9e9ddbfa0865b27587eb94810285975caadbd44e4d0429421fa490962fdf0add0ebc8c9433eae36455aeae31af37c5e0c45760207cba15bc5b70d7f34ca741a1df89babf973250b768941e977a6617e0beae8761c759401c373498a110f2cbba70b037c6fde7ba672f631eb33639c41ce48a18f19a0721cc93c698c02f6e15542070def5170636a7ac8b88fbe144e42a025198fc7b4445d811a4229fd8497e34788bb6e0df247a4d093b8baf18596e32f34a85dbcc1a2b1804a1566534491526c8bd07d38d3940a63208e9aaf49b3af24d7d6db98b0d0921cc27e963dfa1ad60241499d20101ca476263ca752c3197cd787b61870c666a65a05cdde00571f9467aa9536ae6592a742233998dba882f331a0df883d83323dcae36ce6be2d18413a7de0ca94c2fe7c1f52ea8c42e85f2022dca43f468211b77d9ef6004f14dfdb7f02884eb3a2290d315f2d175341606c617fd6b5b83d05ea6b8a3c854cc6a03f97975007dc1b33f2453c6c7cb9daa01f99cb4e5dd9e4515df3984bfbdcb2ee6935c50b1a9121a6ef5710ab11c9dbb114c30984e6377c244223d86b8b6e34bf21efe0ea9de247afcc1a2b797b520a3b950f335a6966355135c7b84f22d18c33a676223c63a0eccd9f83e2ac1c273f1759a2baf8c936fe20213742947cda112ebe1f749fb066d4ebdae4c300bd002131dabf5e99be26f6c59ebf3e12c76db5e0c02064a3f11e1ac6784a92cdd1c3e1f4c6fbd974c2e11f24e64e2b4cdf5fbeecac9675eb853514d9b6a4b80e7cfd9b25686576c0f6285a472423184996b2caefda20b7db6d20bb6963dcbde4e88b7b268716609913290d7535745d6167aedeac7981194d43e29ce145bcd27d19aec9b06cb81986f7e4b063a7a1847e852151dffb35b76e8ed0567bc2c912e8325f88c725a19aff0a7fd9b37046c7fcb81dcaee5cb0297a1290328515016b220bab2686fbeb10f920c984c614f38ac59c743cc97e60c866c9dc499fae97beea3965eaf1d02bf5634402b4f035767acce79420b379387fd3e6471dce99afa678ea0e7e163c7a8cbdd3ac8c213500c50ce7894f636ab66655f733bf4cf9b6a89dd7b71451985a6d331167d610a191c8683d5616f949b110b1c5616029108e4fdb927dfbeedf5b9556aa7890c0130dd564a19eb429f7bbee6d485c7738279bb47b46b390b1c2ed61045a4941c59c60b603f6465a84426fe7914d06835a0d24471bd0ffbd4e3b063a6611032f929f09b926f229f0a9e61ed52c6448c655e5802b2dd5f299a53459344f349c7a40c216733db1fdff2529ebee77deb6f6f35367d59470c21e65ec0402a26af32681fda6c1565b543317708820d48a255952ea425c81099dee1beb8cad261c218cd4db80893a83ae37011ab343e4340d36b6f6644bd53412c6b22f79d8a22bb6c0703884eb7b18a8e29d237dc596861a150285d19ecebc42642e2c78a3f6cdc2de646f6b2cf13364220b35aa8c79f2702ac1aa69df3efe0d104c85a470f6e58d96765b4dc7f35ce473430ffdd374acf7b16e4eec35c2209586c2ef39c870448b9260b31c722e7f830df4d252eeebdc9025ecec6c2126613e1a3ea10ae60f46202c013b01d8fb341a00feaced5de1d8b348239d011ee8857dcd1700a511cf630c5fa54c54d8ab03ec84c48b0b0c9625071be300341a0548e06525ef1fadc549de32761bb63fa7a88aeca256ce9777468eccca9b4dbffc50045f9e2af8253baab68221b95787ac790947e0ec7b8e41e8bb42562198f161e03075a1091fa3c844857273cf9e348af7eafdf07a4a3c5d8c0575b892b1813d36614ff918e87874bf2eb900397f55f3d1728729b6ca962839cd5e27b9429291f96095f8c99377b5e78b1a471fdf0cd5834ae12f2dedaeec9b41145a3a9cf41b6e1a975bad46944136c38e357e6906b67c23aaba3009e959a0cbdb9960d2b05c1c2c82f716883f33c995514345aa6d2f0bd24d4a3e2d93db0c95877a17ff83748a62d5eab328cdfa6f964b532936b72c30b6453d72e990db7746c06a90162d8780ca10332a7abc7be457dad2a88d8336bf445047dbc0070e5530ce0a541210166ecd5722c59ac9d322f433872a7623e6617a3d07d2ff293ed018655432c6766ea27c911b1284f225c8f0f721cb4ff80d1589fbf2661c5b01e07b7775ee92c0d8c7ced5861675fe96e1ac29f295309172ca416ac051a87d73e0267423010dcb4aabd886b21d4e1a48740408a41654a5df83a822b729b984ddf317b1c5c914732c8f11987f6dfcfb5705cc2713cdd259c0350ae2ec3fe9138265fddd8d6a2d0e5c3559b8e87128cf54163eda15a64eb6a4b6c8702dff3646c64e4f6a3ef50abc14413933540dc385668fb9fd7703be89c1620ceeced35c28fbae1f79cfb514cc10dd00cdb404db1447c19bf0016421f4882b901ca4ac4bb2e174b151b7d080b7ed6625be4aeb337a68b82e7b05b56fa6f2274b7416bd9a1c2faec34ad944c5037c24da26e7d5de82f510893d03017f664a31f73cfc322590ca2b6602d7d661f70e41da1fd6ddc716c87c883b2595dd61dfc7aa904fb455635bfb2c50c61d230b31a11eafdd52e714f64edf90905c1f8bc553ef0df49eebee7cdbcf5803f838b2edfb4315c4c77637b081372a84b095541e4572f985fa6c24c4f5dd188e5c05138952c2703c665c4c1324c21200e5e6416e998a82aaba691b3d05c22bd863c236398bb785bd6c491bd90fc4d79718d3cf1588cbe1d2311e3a89ed78d8f7cab734cd299eff18865aba60a35a9d4409b3ac127d3660e12e2a39935e1a433e203e3bf2a9e182b9851d0fad541206b1bee6ada827e6b56884351a8cfb549a0fee3cb30a4a317faf1b80950497e975f123b2d174b36535b0de3ea52c526bb44fea5bb8e0fea9d5beb0c211e258502115262c42bef93f640be4585cdb4eb5e47daf41199383b5c501dce21e5a7b3333f3e59021506b1fd7c43c9c89544fa95fbeeea893d590ee91eac23824a87f9d57e0ad39d3a03260b6bc1fa88b17046a6f2334c6184d5bdf9a31106b2472e52862c60604299918258e18dc6754dbb8fa65403d0bc7073ba84aaf350833339fc02cc128be73f2accc03092d69447479a7fdc1f083b466a7b70d53193daaec9a661ca6dd035c9c7c43e9115dfbc0c3eb78b155ac3641bba61af2719a464f07ea2537a02af5abad93b27585c0a3b505066c91892d88770b62babf43f9a1493e79fb9e3150d370070dd945558501c26be05787e3ab24df55254ca3df6678d2a08712cfb100a7e2e469e16b549d921185b501becd65124b267e337d83c30dbfa5f219581491cb8f36f93e96a62d7783b012f77111e8ac1aa42e065db1a4dfff54e9a3c7d3e0051fa7cc022d2c1ff9c683d645600978a0037edefef320c3a7704295747d4296a7ed583c1afc55231845b588daebb8549f31dee34d8f53d6d7a22203738913daab09979c0ee7d00088686990d2b1d36301f2601f2786ccbb9645e8cef3f2451cdeededee4fbae0622c072d91b59b118b53c19ec6177e50cf8eb95e94d320c2a038b4a2fd7b1a3686bd22533b90ed3ffc8ecbf266c3207cca480c0202f2a29192dfcc2b16b138bc6f0abc6ee5b1950ab3a351974a1585874a0f0a9fb9353ab314287c0fc544298cfaa1519f4298d1803c1f96a16d9b72894df955697753d9435609a424239169c374287a7caea3d27777b5532bc6395eb8f8659ccd8fa02fd58b6cce6f0a5f7ea69e6638d9951924fb26eb3e79119c47d165fdb9b3921147244d12be84ea25b5ff74ee0c223958e335d7be010ffeba7759a1d9f228abb984a3ed010588d5ed41de8b553747173002a7c2b60db3c722c76b3d455f3227d9ea03f624e8747984eb0202389069842499bdd63e75b6256abe5612c9b99fb47e7c02aadd8088cbf2ab15ebc95d33ec0fb86fbfc364cf5cc0e7b3e0e4959d476ecde1039d5fbec862de5b776e5fd4fb74a9a5ca1fee72b90eb3d6a98408dd7dc972f53d83fa3a84457b96a11037d4dffa6a4a8c72ee5c93174259ab9c7d3fed0266224d12e40e8ff1ec3f1801d8ebdf33ea99a7db6960912d8b203584ee4909f74d403207b65ad4ca24749db33949fbf4bca31a716b44501ffea9b80ff76b2452f8a4036cc828b76c8f875a9a97ec6c846ae5d1692d83b577b0bb7f3bb1c4781d65f2c01a7fcd731f7164b6e3c43ed767934f4ecc253b2e457eebd645ac56ff4e7fd56f5022fb0fcd3a2b13eef6b7f554e8b54d20c77902922b5cf2c253f9b71bb041b81ca0040f7cc40b5f6a809150880d182c74be3ff1890b9d01b11a77c7c93d541252a74c2d44f5ebf28d4ede6d06d28f9975bf60162c1f714cd22ac5db1aab10cf2bde5863ae1be56eb9fa0f8082a48806bf8bcee0d597d01f7dcfd3977bc183a958d55c591c98d49a28e3462cdc9e4110110a30036f6a2df971286f8fd8b6413515a93485a06a814765f0d397453cb5563dbf8b40483441951b3dc929b50ae3a42d013a4cee0de0607eba18aa9920be13f70de860063b4f6b05368a6e7e50614282f1b62f34a991d20a343d73f0340a8e32f466c17d463aa8f7c52c5ba256a62b31f6e306cc6a8c49cd6f8b5650e19a47f3045175f23b4a54ba985def984021edfe4aac88b37665e8e3e1fd5b346703be4715eea914a889d3ed4602db7ef202f30823fd07783d3bf218d04e9bfdf96e321ec10d8fff34e97f766ff318d984229183d9d89b40de85a5f653f37dec0e97620de316e684f16fde5f7998ec2df292b0b430fa2b20ad45c8f451f38a3069f4d326326c5bc6033cd594fd177bdc0c83acdf800b378a3015bd5bb6b5ea6728f1759ce33d81db3bfa60fed01a7bcde1322ec877888c75b3464c98dd33882ef82f9b5ace004d47815373f611b0bfeda215534b31e02df40aa2c1333b1e824faac963017db7898cc4d06b1ec584f867a73729448c9703033c3e81f8543f73b6f713cca1d5afb3ca6c996521978ea5394a30acaed93ae8d65c4762f1a8d3e4a86241bbecde311640a7e8637d088e69dd8b027e4d2721e9aae4c3d0323e55d3f1cee897466c6a990ab655d6c8565693753e14442dc5f4e76b89a42378baceaeab53b59b7e7bcd99ebb0c6ba6c7dd4ecbcbdd01fbe84c904777d72dedc25bda28b889eec39e3def81a5b83d1b4b06a47a082e2cbfa57420db71fc482cc238b5c9f4ead5a6de76edff97f0268e6846cb68482966f3e4060815829dded1268d805cced619eeba6b6393f6052101fdcdb657237d5b359ab8fb2d6f1822f6c62e05d45b57116ad9d705cedfc113a71522543f35202b1c987340bbff01bd122a3d9d80ca3e5d634ef419177a4fd9b58efb7a401fd832b2c86ec5b6ab4850f933e5303b2d946be2263a2042fce7f9defd8c816226983473dc215b24c3eb49f126d630192edcad8299d1c5bd71fd2e3c6eedf60cfec62c0f7bd7db9f4b0e2f0ac48ba178623ca04f4b0b675cc5ede62844d9053f52322d17a9e65e0defc12939bb54979d56a9630fa29a92346104b03ffbd51e0ef02222486d0f1da554d43218679741e557212ac01e5ea0646c0b428329d2aeb7ee961c862082e492593715172dc46a299a743cbcf79650854ebe0c3585f52f752eef2c29452e70916bc37a3afb1968bbc452b5bd66aebb4f667405ff5a271fe41319229f8d411d1186a2cf78129662415c36ce579826efdf78fafd3fb6ddbc4c56175a97c3afacdd071728447072817ea93fd1e81fcc1bc715252127f36c7886677b6639cbb58c50dd6aba406e2e68f7990eebc4f687e8a209082fb9498eab98e9f768b09c988b32023d73ef26757f49e20ceb698466cfb8cd6dedbac86be3828d3b01c54a143fc5eb8cc54172000d7d3af65a4c8a844ab26f162d0b16c42f4cc3a73dce9b8c7cf1a8e55772c78f045a27ea84d48ac38a664c6f9177fc2738291ef35137cf17cc05ef0785da818a60ffd480f8e8be2e1b978687a2a3ee0e02f702b916adda491d4b82531e49ca18c5a53a7648e1e39079cd0537dd17680b67bb92b102606acc0f5ac2b8a55c3c1f3648cc6070572861d0e67bd1a5ab96cdd8f5ab0c6c85812eb60294c6401ed2d30aab5c09638fe656ae0799313571559bd767c317324d5d3cf54d1c9cc90a39b139480f49505718c9bacddc571c5b847e9006e0274889dd4905356217c9b2357de12863256990eb29147769cf70a67519d0ccfb47738c092e28ed59448b0afbecf2dd125fa7348107f0994bb3619da2ebd27703cb420255b56cc9b68fb142a0560471f0cf3cd51c5241b7d11315f4b1299923032c575b8b4a75070d2efde6183903803f9e42264b67d8ff50867ebb2fb00b21aaab034d93c6583ecab7e271452f237be2ef618450b4c07b2e3695cc19c30b513c4c238501e9d780470a14e6fa2407b280d31f1942718b1f1a784e14e2a1a84d3bbe2d7b5def1127d3170e24da382f632f2929603d202d0f749e4978abec582e54141b85ec9ca85bd4b73df814675401174707f186fb92e2c6cfaae9c4b4a5c8ab152e9403a892b9c13b5a4b04fbd9df86f9c481ca2ff97d52c292f24a65f1bd916c4b1bf56fc35cca284d65532dc030cf1f770a7a73f0e415923d4df79d27eefa1b6a05d5affe03fae9e81a884b8a8ebf235645bf1df50b322c4032908f81c4054c10454e85482603132134a2af2a623063d734b245df82100bb872488b285b4d8b2936b0333c1a4a13a308433018fa5c776c7afd4b126bdc0c088a19204f8100c81ea7e4b6943b84ee8cf25d38d6b0f2567a2d70399cf9b8ad0a44f9dd43cb37185ca59b16506f164dae1b6e563ad935ebcc6a07ee1a8dedc33cac11b108be4b12428acd08e0282e08097aabf183f8bdc9a62b1bfb177d79ff6d205b099da609a773daaf4636fd6a673ec52cf8182678ae36f28a2f198b71aba1f0f235585d0bb93a2a9dd16dd946962f2c0a7b9600c48b250db4e5f1a01ccf9d3def26168414ad299ed8e246060a4c8272c3d57bfe7e0dbd133bb3010d00ebe8e84d83642f0a3410237a5387d5b06208547a012b8e8541fd4ed55132062c115fb7af13f2edadce34644cffcf2e17e0aa0212f4f2554e594c35ff0874cb91e7c858fa5aea0bad834aacd4b4f30e3854f9d4206e1846b4d371162a6ac122dd60c13fa297688a279500f94b352dc370371bcc03b0f702a5778125a9ec9349e66b00edc3b835c33ebe0ed50f5844e0ffee66b10784886a63ddc580bc7a13573f153b2d1592d5ac22cf6cecb7962f769b20877ebfc5fc4e1bbc0b6ec68fc65279eb39e1da05edf296d4567e1aee3f565e3d2830245a9bff9f8f6279e7c0b90977e6a152c99f4151e2f9681767866d801ad3c145f6de3a6af2dd7c3b49d2ba889202fe855e455344f7db0887c3c6cbbde395d39100dcf80d450485482e5d4ff115c790efebb0df40f05e3a37431802d16ba702adb5e239a11b723bc04f0ccaf524f52f1fac1e308603036bd8c2be25ccb9132841b35b315b3097e84fef01f219dbfd453fb657e17efad9386178eeabf1fafea9f994503b583fc39b51d3541701b136b37254f2e65fdc1d3be9ef5bea84c5d7dda7a3f947a310ac2df94e88e64262a1331f6381a203baa03995c8235cc64bf9337e1df6cb61151fdfe20f374e60892de11d6d6f805dc9935d1bc682376da083f475f7eaf870d0210d0926877d8e3af6f991c33bf06792f660d965092c26965ea38997c0a86386e9c9ebc8d61a2f1d637548eff2a3391b8508d9f230027a54172b6bf66cecd6c471f8e13f7668356ea33361cd61d566b7f95ed4245040b9cddee6d44029fba65dcd50ebb9a92107444a6823745e4449332850cc2d287e506f101aae9d0d2d6afbc002c50daa3ca19102023d7bea00f52a9f1c3b99b532bc1f88774fd800476c5abf218958bc634c7fdbb246ce3000b1060e1b787b7a6718d488666c65b4119d446d4a23827ab27684cd2f925eeaf0cc1681115f92f6dd797afe33ae2ce858902eb54f2d353c6cca565f829a42e002496e314bcae04546a83ad604b3caf31b6d59ed74ea4336e8fa40bf28527e3c81868206300ea72045a74a897c0c4574d0af6158cd15beb99542f8b7d56dce425308788a17871eb56f3a3d1047b97216d158b4bb9b1bffb194da4b98610acb87a68e5f5540410d30005c8ef6ca5c52b884559c4f886187f8e406ffc018409bc718b49bde66ab937b39db628d337c54526ab97e7e6136acdd218f42bb12805f72d5db64ab0a282ee082f724fe3b161455d4ae0d09348a0a731a4ba7d82fd5e54e583a682b3bb9d26a9071845ea99f35b62bdee05e40d98d9b8d721a5f48a446f144f2dba6056a82b8f3bb1be1dafa6b7f2295b1e36a24cd39a3a9a8b1fec35187921c22bd4672b581acba9af817c6601802da6aec59c13022961dfa9480b18cc916a22b9122aa190c5ecb8eddd904ebbf1ddaa498577cb22358d4ef6cb94f1e2eac43ef30730875821855715204b53a48833f8c680ed614a8b443c868f9adc6a943c0fa951b9e77f3679f40b61fa164fd7935c52bf8e61e16c40f08bad0ac9e5cb99dee6c09cf134970f963c345102fcab882cc88734dcab228763b0708a38eb29fd07db867a5b5ca3abbb914a69da41c8781cb6fd9e100d69b850e07d001a64ca0baa1b7162e97bebe02d94ee55fab1f05454d88921183448d51fc1ed524cb52d8ba901a506e1fa1e89f450b59a3866398e9f1a46a94f5f2584bc4051a068ae4a324dc9e6dee5b0fcb2e1dd60cd3a6848a3d4d930041c05957902c4fe6e35011197d9c9f1d4e5b9332ffc39dcf493b17c5666048951dd7b06ad7b0666fa2f9112c4300dc42c3b566189f656d7efffeb602f16b0d329b5b2e91939ceb8496e1257aa780c6546932a6273bf44ec9d5156b7cb161edfc18465061753c529028eb4a178bd61545fac36737ab565bdd7790c7f283217f5571eea65f367aa4718a2d11b50382351e5b3a60646efba6dd3c25a78955d1036fe053a73db5fed104dab69fc5dc11923547e85a97e4a5bcc5c0a23c68aac8d3128e562776bcf727170563c72b417e030a361a1428f97fae49aea674c91d74ce7779a9c28e914e73a91a39ce44866c06566410e99eb9140be83e26b68efbb92829ea0cbb44f083a31d87c228e9c4429f04a82cf9da06cf51d5455c9bb808d4a0e3100371a4f0cb8827ee50f6db304b15347d18453639a6795ffc816ee483e4d9218f882998f42feef2aa595f67efd25a60b872b882d3216ad9c183c8ad2a5389b1d306e9c488b35c3045321a7382972d3986e131ab421c5ac7d7e410c58b0a5fc1e1257bf349d193ec6e46e04b58247c65478ec26b7b4991c7aa789bc48bc186bc972d3ebf56a74bd2a91074ec3517c12e5e6c9968979bbc47b48f64d5b773580a630574901e771d52e1c6d920c558c0476cf48c1f3bb0b705ebb109ea87977bee5082183bfbe2e282f9c8ea60ac3b2369dbb908f2b5c2c903763820cdaf0f74aba1cfe1b383bcaf3da566936588f40a0c5e3b8d57f10fe76e4525c888fb4792420769cd9b6fb8458886e28037f343c82fd6a368ca26bb801f6236952801aaef532cd984cd63bbaa9914b6a4249818e91f14ff6ea1bce4325e3101d9ad075f76479a5c6e077bfca961c3cad25b4eb2331a4a86e7f66f24bc0f50363cc52cb9ec9c6d4ab49bac35229e2bc94343af9b332242c0c3649add9cc140fb5282f44cc0a435c1b54abef42cddb002c7623c194d4291c7a4598087155c394c10e97716c5d67af63853b2217298f5458b4f22695d214f349be9d16393e77c9bbbe7f1ef832f89e288f37ff3f42db824d47471a0a1296157d7da93934801016c3731931d58441b306f86bbc2e02282b162f12fe18710fa4f9ac553574939dad7e586f424cd7a38d8a827bd0399dc0be24d8c01bb9c1005a71f68431e2d31f2822805211259e45d6d719b647b235468418b98ff145b45d6e8b036e6bdc4805e875134f9490216b2da065af341a85ece8f1eafb038670d6d85f86efb03fee0aaf30630edca8bfa4093a4f1d8015c81908e11efbece783da826e138490d3a004a20809877e323d0b6b1976c3ff7187bd80200c2e06bff26c52d5ace55d883a744c8b7b92a1e02834805afbbdbfe9656c597108fef988402fe004bb34d5dc2e9daf5f4406c5000e4d78bd8fa78c890b415c6f158cc32fb6f3eeabfbc2e1eb8ceefde186ca07956db9b45f11a7e986ed009c5f78d0b8dba1c3db40379a2813a83c6bc40606f49747085e5125359bcd34c8e4bcc2714b0db18efe7616d958435c6e4bd05dac442eeece7d4c9b7b6855586b3972e10fcadb41b3d53f239b16bed31d82f427c51e190984f16578a0374d80f21393c863127392d6f49c574b1412c423a59d091969a6c21c8aa1fdac6db57ed1210ef3f57f71456922e2fbe02e1fdc26305d1c59aa332dc1b820604f34cb2a67301fc96eea7a959ce739d4f8db9333a64f6bf8c2a39b58418f2a3595759fddea8648490ea47e526792f13a36d7912786942ca9b79bc33a5b66ceee5de0474cd54caee1bdfc8006f42f163d6ad3b764b63f7f7a08023addc6c33f75f941db70b680fc46d5a35a5705ec2c7f480f8c0cda11e9e7542cf157ed1e7a5e9180140efbebc5bdf82336321f7289748c75d170b80de9ce670d7a83b3254aa563bfa254e1d29abf64046795d934bc77f27d4c1a38d8b8a27fb3a9e1f848b7bfd59096bd612b168b3eca6e641c94ff7820700a4961200b54a37f91cc850ee019dd94004e957b9bc3a89e84445b2e1c726057760611a584dabc397198a87eb990973d3f6aed280278c08f0a621e34da45a9185b6478359db8512cf8c45a51ddea75e566743cb260c431deab761e9ff02563eaac454205e2ff860cec3f88b6104c5e3192d05c35e9bff7ad46a31d3602cc8895ed7272abaf0dfcb779a8d2125d8586af123c54fc5dcaeb738b10240ba2a7aafbd02e97ed0f938273c521a5b8fb0944b555ec1968c639c688c3905e0d3af7078954d269205b24c24740179dbaefc21e841fa41e5d01473a21d0565d254dff910e421431a13ee62540d550071cfecba7fe309b41bdc28aab2668014dd1fbd6981341b2466200f124c28c6a5ac7faa341b1ccc369fdf3a2ed1b6c34ef3eb8760e949ef6a8cb231ba6b756753d149fddb423d8028ac66e416a8008f3f2f873f51b94683048686151fddafdbdf24011215755544b5cac79be276ba460ec32a85961aa7e4645132bf262110040409893ff3b4e089d870f2a9db2bc5391dcc425dd93c3c47cd01afa61dbf077b0777eb0dcdc0fe1f9976a382e4552f266167ed2daf59c88502fa6ad60448302af4e73310d621390e03dc6baf2efc7c741d661e7abe92b88f23a7e18e7b9bab1106bd02ffe671d41e7378a01e7cafe41c3498363d5c266f231ceb9f259b8790fc3573227d733c7c2c7d32c4f80f4c0e26049503d2fd870f42c34cd9af99c893ad61062e98fb6f71a27bb66b6fa856cb405a988baf1343c6b997edbc8fd7fd2bd64aa9a89d8487ef5cf96dc0ef1dbb3c0e4e0e265c7eae2745f7ab741345f7367f9369ddf6612b19cda7178c91d79f77cb1f63f30be1052268fea5c6ec4ad7a7ed9a86b5ccbf59b6f0f742a70be46fc738687c3bf61b2287114ddf4afe6077f1b3751bfe2c4c71fec667cb6bb8451405510e7f3218c425dbb1ac51556ba6b177b563b462cad05fd682cf0668fdeba2c7fc4c2210eb7008d1ef80e880e4f99f6b47573a62e1a65708f1f4ffb31b34cbd0da6dddbe2c6eca23982675689e158311a0a33dc5d7177fe1ac3311457c6090f1565b8a8419584e1c542cc3214f08724136ae017795b3b48072f38a7e30f3e8c4495bf251c8541970f3251a4490df2ee8e1742bb3286378cf006be41a1bed26aaa1226c8385cc3837f69023c3d86b4dc1d4e27d75ffacf4260dc786673a3a7471a34d0403f633f8c30cf154a94a58613a1f05fe556a0d8f1ed8836cd8261922adf4191cb979f9722b84404e25fcf6d666b1fa38d82a19da12d2a78b4993744b7d4c42e1f0aa6715b1bb83b428da59f83a3834b1dc355dacab6dce5f769df58905c244d778a4555e88e02f4cfb0d6ddee7c7ecb378e35430b7625f7a4f25967371453fc5a7604dd89064a93a02ee6a871386863239c44e956d46b597d7e89ce448ef0144c37a62da3870d8b400efb36728011f68842ad05d188ca6524ccd7ce88fdc014626f0c29d8d6509a0eb8431ad57514c92a040b45923009c2c162064c1cb4861b3ca0df16c9812dde665b741c5cf24e6bef5af5c0c3c8a887de28bacef7bad61a7af95cedaf375d25361da5275255d1657d9d2cc0628d27fe12405179f29d352f2e1c41712617d67bd27d84494d05788eb8f4a543229ce79160c11a31e10082c8464eed9161d16c22dc011a1f0aa9488a306eacc3728aa4b1bb7ff2064a1994e6dceb06d38e23ac5bcfccb1c61d97e7c3f91b741f01880e9c5323be60071fa223a00c9b183b3c8cd472283a3f81ffd69204df287051ed78b390581da9c046d48f4f11753efa30b21c205fe717a6842986a654ac30eb3614dcdefcaf2fd5be56f23a1514f9ed08b529bad8332b79c2d2d2a66b40513509c05660ee0868baee056f29a56068078d7ec0bea08b067f132a8cffa9737679c5d02678d5afe99d8653e6a0911102403f23bf66e8296be5f996658032094715a2d5b9771dec2e7895b69457d44189da3b278d6cc242e65477d6a15a0efdf4905b4bf3b7fa202cb0fcc2e93806b933e123f97c535e3a905303210c645df3f759a245acedcdc810527832e5d1ee78eb58a9656e240d265828789b9ad5d73145901a9209fa5507d31c6053ed340c7ebaf8d56f073df933f9ac535ae7c3ec4e1f0e48f51687bbc63478d1f504bb9695093818a178911eaf902eb0e10222991feb4fc299fa4f30a89fd213623106926a11e5f7a9c8538464a8a34a2fd15d7b12c2777034361fbb43b019f81543ea49827a66c630af1d13237fe3cf4534494448241399505d4dc29ca507d532b93082bfbf988ae70d8d1a5f1b3634fc8c40531d1b97d75dac85e9e3ed4ce2470ff8206bff83ed4a9cfd8b5eef3090837b9ea6789fbcf94d33df4c0bb202af35e12dd64086ef9d5478c26fe657315773b2b79e48f82d83beab33da76ebbf0931da03f81ec248cee44a4723f5b681353e0185c5610f170095e622e906e6202640860fc951f46591fb4e9ef4b9cdf2d10ffda1b7f8cd7d5edc81f491a33b224c2187be11f236a93bfdcec6c7276cec7973d4a64d3266133264720adf27b8e372d7207cdcbf93517c8638bcc9a6036b574aaa2fea7c63771bb3a75e9a0407b41d716006e532944b35897e77e58806589d3974dae6c40d69eb9c2fd2ffbdc39d70801cddee3abf139aacfbf1a5110acbe25777f1834d0210b8b12e5f444dd0dd9b51606afb1881733b891be55499e2365856ca0c4b00602ee384471b9920699eef5546f5c686c495376a300f67a6343539bbe048cb48b8a24a0d62b09443ce829296fd2c970cf2a913b694b46d566661fd8e9ba35ad0a750694f44eee87420db83a6a80cfd285b24f7fd6c639b655dd5a408f87e8a0d9ea909eebb56d41fd931c350c33499d908e2bd421958f491239776e24cda1ae3fa9eb6502392c3c6138e3fa73b8153e204480b0a615a8ea4c45399fd1665f6f867a292f57cb2a90faccc13b5a62466a8318efd0595403020a2ed03f801f30659fe1f89b0e3cafbae52a409044d0fe027940d77b9dce87809d4a41da7c6c45915115dcaaad75fa78abadd863305e8493390cb596758cfeee37d0ee28285b20057ca93b7d8f105ad6685b63ca670a4b31b92c829df76acf56b294ac5e3a42583dcfb514e09fe362463f0ed9202b092db4fb303964e57e586286ff60398be1da7c88f87d225f0154cb86761b206be093b53b696b2fd4f53073382e980dc313f4c0313eaa79380d680d0bf730aa6a599c74cb62eca34de35915beb3d00a0d0e35a48b6c09ebe60fd7880439195268597f38564059a8f553f57d02112829f67433bdcbe7503e759b31b2fce262d06072c0d495f2748515bd360977959894a4490d54b71dad16cfc9270f23f7e66e3a0994c58ee1faeaae094e9b1e8b52ec7ad5ef590f7b6dba23f47999a3d777b820520723bb5b81baf8d6a63f714591693470a6b3fdbc8f1f3140ab14cd1384921f870cdcc0368fa5e23e1dac09cd6ecf58a9f117e64ae49f5431414f6ca7a2ef41c977ac16f7d184745940592efa4ada1da05813d1c1bc032fdbb82006a52ce55cf806b675e4ecfebdf81d55aaaa2911e0c727e28a41945c3d4830082ab117a1133786d9f690d93818578da5eebbd2601c25bc0f46a545cc00a03b358dc3db7f31ee205c975ee5973999214f48831cb948343e71014e41001525bc30f0f6ad9708676f4afc6913867bc2c76c2353f45adb17a1b1ccaa1ab40b1d72f68bc07a30553c3ec01bdd187296176d285eb6315fb18c58e39d97a514b14a73cede2875d9142dec3628e5ace837da8e8403d39dc0b6c4593166e75d22e1c5073f9d4b0589333f5dc11b27eca0178b6e1a89ec07745306b56bc852db3814c55c5a6f68549e62f15b92d4c8587a5c167955502e5aa928e976014d1d43e6efe026f9e1becf68375195b3b0ccc1b1cb9d91e9f316884afb0e6e331056036ff15d5e418daa9d914465054bef2aec0c82d5b4315f38e73b74c1499c09d2ed35394bbf023105d8e43395410a9448f65327596a43cc79d68c331c3d66565f8e982a5b06b841d491066a8e95fed765302c28296103027374793d53d78369bb847e5686adca2952c60550108d31dd26299299d0f844cf8c81bc27b1987e512468d20d39cd6ab8b1ec2170e5e724f4bd1ed8c5574a6a14eb807a22a76abd05c695a40e9a144af3a2fd5740574b5d3d93c98165f67dcbe9cd9b1d744966c2959d0af2d49f8f4876e7e1274da5b2399e3efc637b008208f67fc61f88ff532b0ddc8b8c264967f1d87baba018d05f659c2379b8a1226e247dceb15680d07101cb337a3748877384153cdca56ae9b04d2782e73ab94aba229f5e650f8776b30bb25d67bd312f8b0bb41bc5b53f0abc8ff7183de13d9231a9e14fff34889dc5bda1189704a246faa632dc3230115f1f20db9382f83565570a5f8e0b1d1499e6834cbde11a2dd10255b94b75b743a9ff054c2eed261ddebf2a0e3b64c088dcc2d66d6d613f99f636881fc299502cefa1d4a92a5572e70f0fcfb01b9f9831cfe3ee1280244c24de3e309e0254b14cabaa2744dc3b86e50692862e6c49b9ce97f79bd7bb6761f868bb677a576a7528f906b1e2d5abf52477e51dc4e26cc446d581ebfa21d0fe51122d028796febd6d31debcfd95f66bfebc6c50fa48ba832c9884c160751f5743ec8e44cc4aa89a3e21e4ac5fe938078c6fa4ee5a55f7b683e281a8b244be46c80ec9a60176881c40cb177a0b0414d97b52fceb98567e8f31dbeaf46cea0672aa1a3ee75f512b4d42c532ca0baaaaab433cc0e4e75b8f592b1021988c0dd784f2f768fd8a5ef47f0dd996b1237371325aafd528f8cc2743af40e9f5dbcb7372d82dc723fe5908045a0c03b87034cba424cb84395475d29aafc6fa8812211583f2d59f33d022b78a1941e3b4ff55728626529d048b25645acc95aa7248bcbbe045a0ea86e1ee8ef213931c4b45b42c2083294a3ee076dd2128c4479a3dc3c16571359ec87c3b6c0770da0505cc35027ed98dd57c58086e6b5a82db5e2b33b2d50458b4773956c9d22dcb7101378e3509c50d7dc3b6959ae2c8e02b1f4c3a397d59cbec8c19fcfbfc527474b40eb1c38aad59395dd3a9fe0aa14cedec58c84f42be2c0f1fdeaf1b455c690d7eb1a532e2a997426f9f884cd8c47d2e8733b9edc81ff63ce76fd344f24455d52fcf9e60eaefc6d3e3a458a30ba5160e9f7749b49c0d2467a38a0769c96467e1ea71535a216fda6ed35b6c2fb1729839a6fa716296a878e5d4299516380fd6c06e7e6b4c7098b66ebfba38b44ef8050be18ee6e3aedfb249fb90ab167000f800fdbd8c5a1a51f1871c537ec341d044f764c1d4c1ad21466c0d8466c3492e54e4bb6ed88cb77a7d983c11a99a3d21c69ef9b2303a31cdaa252ec8df64c634d56f56c6d05b1fec873133b85224dfe63d6e088429def306c99baa591bc714601c884cf43a311be4bb5d15d1d1e5875d396323f5371ec2a9c640af98e0381c0a0eaae4f92ac4a4d48d5422f92f0fd1a82aef44c8f7075419a1dc70c5f907503213891cb57822f9c8f819b0dd43878b1ca16bb78adc904e09ee57c40de518c04cd5267abb491bc5014b2f80cf534e290bbb7fdb3fd4ed53a9216722eed4cf1f47fb920f2698f9bcbfbf20878eb04d5d2462f6311b48e197e236f5f54faa453445c2ea63b67e9264579b4472036803484e413ec800defe43c763c28fa9c2823167daa1503248424acb74c457706038b54f53fe4ba8c9ab93b8b8cb190342aeb86d3012f4b31b7088b9c4ba5672d5a62339040d30b23474f118de6cf39c21ee9813808010ff5827a1ac68a230ec006caebd25ff6d2fc58ed7b0d4fbb9c6b89d2403c774fbf17f4747ae622db2948cc988956a341168b80116c64901a74f40c1b32ae91b161517d1a36448325ad40ec9c2cd71f31a98cf923a7633914668d880cf072ff9b25c2a47a4631cca5c2131ec8e3cf95e7a3e9140b3a9fd78fbcd6cce774fa28c5009199890c8a03f86f9d066634f229e17ce5ad5e372ad1ed460dffd8c04eb400ba5ad77b6e39dfa15413b742639c98a527a8d77dd728851f1a9b9f596645ffdcd57657ed780d89662c2c2ba16e0bbda1f2f0f2248de9edbfa75fa1cf25872da95260b70d2fe39c2085c4caf67c1dc75be986160737722c797ca66c51f2c2b9c217a9a17036af1677c781d4c9c8e3d4dabba1bbbd361b7ed86153e33046ca608097aa29aaaf273c1107c56d224456e77eeb23cbc9fdbd0a486fb91d1375993409361762830b05dd454ca83d633dad5c269f452b52375150660a37c1198669e4896b769abfe9ccb26bb8a2d49f7816c98a22f1ae21ff23b8fbcb6164ae63eb93bdda615638286a93e447be668de8c4e103e61761b9048850819150f48c04412c60f66d5ab7e0d9152c4d5e8436c070b76ffb21918763c6207c443bd649d1d82fe77237cb0be7cdf122f424c5c537a37ab97eeef1acb4185bbdd38d266c2486b87caf081aa8dcf2c6422e6f6438803da0ad569bac1527083aaddd34bd244181b38b803c24cec941b3f162220d8223679508e9f168c014567246599f6c78723fc433f4f99965cea3de80173bc633beab46f23aefb09fd337f112575f24bea35245cbc835303c4b0e2a69e12269246ef510d700ef6f6374bc7cfc315cb43be406ece9b24df663b0feb34b37b835ae5dbcae1ed3e3ecbc5f9bbe63641d3d0e904ea5a01404a78a4b6749e2529413e60f9631048c733ab86bdb776e4ac2ec0cd03c19fd7c73795b364304e02ef4e844d7dd2abd75ae121a43c9341f0b8d2a44d3ef42583476b987272a6a5ebf32f06a95a2fc6fc4534a5e4cace06f7f82df9e0193d7bcf4e8ffdce110da9ee12728bc4799f2ff3c77cdde297f1c12ef6a0eb8d6978d0165bd35e2d9fd37a3c38b6c7c005b82935f6e64939c23fe8295a8c937612e33390a48db66ec9fab38b68e7d800479e54f9ac7d879e805e3c0a92fd98110b6a9a2bb033085f0f0c9ce2ab2bf965950c5484ea720e549f23fc4fcec75f293b25b7c0ffc70945b872213b8d07807228da6e5d75f83bbf55dd55df84aca8dc4d75e66510fbe68ae8ad2de31d4ea77175cf522217fcec73624390abeaa8abe3223598fc89f98cbc9e36eed9d661295f2727085510603ae00d9f8f6a1acbe0e15be3a333c08c41146922a91441e50eeb662e9808140b64321126e8a4cd88e6f9621ec3185a10412ed341c3a0a480676d3de034772c5116c63440560955d696075c135a7ace92702b48c062d9ad0adfae0af9a0453e9298b9e3948519776c593e21aca03feb700400ccfbe0c7d8eca9be4f04731753d4958c0b22d1fc5126b91f302fa7dc1fbddad6bed56f53cf894379f5a9138b06a99d8c631e8c4023bfab5357c98d08f8603909b30cb66149cfa706ca6f0495af98722f295ef05e7a60c06a6887af218a912ab8b4a27ecc821cb2d6912f6d78773c8291795eea666e22090b28b00355a20c5e0ea7497a361c564f4008beb70e8bf3b019b657272a97ed654369f53f1d62c4dd852715c68c486132b72689110a677c7773233947a49ef7b1d515aeb76d8209853265927151317aaf770ed48da39fe71296fc7404d5600c95be210dbac3a0fbf996597c9be1f651b637b0c127d496eea43264e656774d2aa3ad2fd1d19371e300aa4acee85f0bdfc60cb6ea5371382c0b1760d692f1b171e7373087841f29de1efd929ba6cb048c51a4d9031629b1d64fff3c983fabb40dd3ed1ea624c2cf63107e25c6bdf74c32db55d60bc8968125504cb77e90f66ba8c38b6d67f4746cc91b08d643e32dcf0d397979d3c9a08019336af735376236e8280b5fb7e866f4349faae6ac1373fcfe4846216644f46965d3b2a2703844914b0490649c7a74044790f94b73b48495129538d62c8fcb3eb656417ddd129435abf6993f477545b19f85fac08cdd94ab8ca5d9c17edab9277ce37a862ae6fe0d83ab0b149557d11fe5ac3a698269fd60c0acb766a3656d7e940ef9b06dd857ed24225b4fb5cfa84dc9b9164621b04d3132ec068b85044fb23a213d26c45414734f216c210e89209edfe42c6dab01e2eb0843ee116f15eee7ed9494256386631ab4189b36a5066d4a6d152bff6bd46abbfac8177223b58e4a72a9465eb3c7d79e8314b83f0987e3231e1d456cfda9e74c09d0ef516c5559e0772cdf2239fb8c9bfaf1b74430bdb40dd12d1aa6b2af7801341ad5429e57fb146499d7d5d60d2551f528017296a9149585335cfa42e4eb4da381b4e9f7dd2058905e997e8581bbb6f8b8986d2a8e94d72bf293080723fbcf9eab4d8e55e4bd6c0b24b2077ebda9e629f494235bdb5f7fe192513c20d6c4ffe3ebbcfddb0731ae545570804a96612ae33e8e311441517de7122ef7a8ca7f7f23c36530fc45a2d69356e59d308714a23cc72b36883ca0f9f218d0dc150f64f548d7162660eea98cfd8cd748ff2ea4417b0c47383f19a0cfdc462e6589e41a085f750cd57b06be055bbf2b8b110c7b44305db4083d224e4ee72e6fcc06e90fe2a35e2e003ddda0a6aa4e4389e7153fb12268e719c505f08145e0b440e52d43b8e6d0cb1ccf1e8d300f22dbdfee696be4b7c5ce2133577715096410b7a56366909240301a947186eae7cfe847674a372ab22a6f1166068cb2665fc46c0e6f9323dabbb017f87e4c09d0f121af9cf8ac684efd520663ab8a454a12868a713a7861ca3c5566244ae6b43d0214e47d9c47b6ef11011bf19fc0fdece479417fed9a96a086294d457c78aacb0a7af39172d5f23f438e2bb1604b394a774b3eae1b2935bab144a527d14d5d5a929d6abf2d5061eaa25c170b9718417cd9958f8374abd84a9d35c72fcd8e8776b73b0b18749d3239cdba5190423b6db55a27b7abc97e3477eb9c4fc9ecb0f5079dff48832d040c7f4d6c6ddaedac72717e2b15dc5752ab7dad7cc084a427f7c0174a98f6f395963be76d3c794f5db508efeb808cd3dc305c6f89021ece38e3404b47006a2272a73cedae06e58a190704a5c6c9aa0d9c0fae38f8cdaee7d617ba0871bfa60bc4b487e7fc1c5366b02d4dd18252baf3e4d9fea0194938617fb0934a4730c820e0042cea380f42b58e8b1282e4f403653264f72895bcc757918f17f8fff6dad1a669347a571896b3c69abcf81a6ea3c6f5f97cd762857176c5ffb4ace1e7e3d5fe7f36464d0e4ab4da50bb8ae0d7b92489d0afc798bff5d1471661821dafdfe2c89f0ee40f35707fd26d60d0a5edb50c36c859740b8d24bd76b79919e3431e5c02b5ebac6b1c7c0d5b3aa3aadc1a381d52a4170985336638085d63dc3deb48ec7fb874829a58b788d3c826b7b1d4a96dd274208e8bd600a80020a9fcaea2c2c21f860d85fc1b121f4766489cb0398eccadc8f02efc5f7bb84e43181decefb80e066fb37a02265c5834b79fa2146e8d87d43290b8c0985d23f9f155d5dd681651d17471faf837751c5efdacdebd008bab898c99c5060994270cc806b12ce1707e74791b5d07650dec01ef73df74c0ac959f259c738d80e6f813cd94bb04ac3d2bccfb6f5c7e2b350322f1aad83338142110a105d437082099c82f74c3b3980c87a59dfc6d3448486bb3e255757d937207acf030594785ef1e11d848e19226a246e040bee69b1819bfbdf7aace5b27335a4ba8b82ccbf90e537dcbeeb372361620b76672a2576af99b9e26db6ed74d8309d3bbddf09effc35bcb41f497c0753eb4ade474ebcb4573d9b443d542749d78b702e62fafa90d36cd333fcb6c3bf9345cf5994d30df44bb88f2c464eea175441d31826681915405abb438e32ddf7d91e916515c2847045e18a021a6c05c9b04ebbbb1bf2055a2d674789a860c3e557d3fafca9dd382643c52a30b08382eaaff00f5e60eeeb5009431c2f7f6c68796f96c725f97b3f82f85d2ff0c00c32e9f6362bfcc61f0636e78b9f1f55c1a1e35f6f5b7a289b3be35761ddcfac772f6637c9d2f0324d677fe8fe00165fc2b201aa978c982c3c00b2720fb48c7a5c0b1b20080c945f01cbaba4d711cad9e53175c14d152a8fe3b37725914244d9dabdffe9203f5bc0f85e2c998eb9aee43d0b52bb52122dc7f9c0d3ffe29f3fda9be5bc8b38585fb848c4600e52bb9199758170132e8c9cfd927a002eae11a1a8a1546df33e758ad0ad7c09726240b98f81bc3db3ed97d5570634c30d220d365cae17874fca460514e64b0e2b74c199b83186f1ab52e6bf88a0da036132386d6e6c839fd1170d04129c3d0b43931ce67419265045484d92f46721b4098d84ba01c21f51baf71b922a9ae7918d45437b17ebf71aa771239748a389a126245ca20ccbda205326ca00fd614b21597ee9d29170e3d880155bd9ff9ac5039211e3049092e03727ecf761f2d9b2e6be7058c7b75e1b4a8dce17643e782fd735afef3382ac0e00d1b8e24f1b6c12101263da583e6bc8c839e54b51d352a65337e353f6e2fe9762ca23ee9dacb54882723378a5aa9e4cf1d86db6b5fe1f5ba32cd51ded695c2f2aced81cfc5ae6a6cc4750b9b3f408fef268fd292e07333e34a54d100857aadafc16d3cc0fbe04d3c3fe17a148ff534baff7be7dbe63c72b664faf10e1814ee31f0e55002171cebfbd5ef13cb2f55702a04da29796cbb843e259dbdd9d8e6dffcd07dcbb697132d58b289e857b5976a3d1e52aaeb6d2182bd060be52bb043b08f08a1af214ad0eca1c7311655957999483fce895f9cdd3e75156b8ebde92ee8c732f7d98ee4225e0eccab9af702610ff3ade0392649ae563d52b32c387ea998caec012992d9f4181e6043980bfeaaef73a6b53d12ef12cda910720a7ec70d22432426ed4ef33fd71bf308912d310744f874d1da31bbb92c53674d79a9277057a178f286a9c9b0eededa5d5c0046e738d41c80810121ce1f1b4e164e24e3d71192cfdc1c870e1326435a560503f957e09491f3ed3b7791c84b0414fe7648fbd5bf1d429c68928fd6cc5b4183caaf226d716cdf93630577fbc16e0621570c23d2015f886f677f09ca58a7efb249f2a52743f80cee616b330ebd6c656f706ebaa53ccf659e1e39c0b7e8d6485bbc7b18d4c358195ec52cea1ebe3c547e474716d8a2f30edaccca533b14971e765c131cfd82b7aebc82e1f062874697af484ed381504e3322b771d2e01edbbd6d18ef03081b0af584a7836cb8fc5fa5950dc3423bd269a964b9549ec4a57260ee8f22e7050ff3ca94a1e2848b234364f1b310a519d8549e176cb79792616c8356968ad7c17ca86ae8afb89f61b9490b0def21272a7babf998d4161d036a25d558159c157834eef15854809fdc821d34bd2907c62aecf58106cf886185a3a9e59dd252eae406f088a4e7bab6da635142dda5c295705c1a1c7fbcf2c525b786883c3cd6810cd07f9e1002887f8e3d2e54b1f3921960f00fe3f42796013c9ee532258ce698fb162ba6d26057a3587b30d2d09118c8f8f132947a7676bcb07c3df10c5ec81b1736379bd1a7b06dc3d346b03567e7a0a5a592e6cafa5d6bc994fa70a3ab6feb8452b4682c6ffd8c8d48136323fc33078668e8c8f7de38f1210612dce2695e6b8c1dc0f183e311db8b3715c70af0419619cf284197738c72a8debd98a2a05b73cd3f7ee6e5610f4c95e26b8d30d18113b81fabcbf8ecf3ee63ecc7c488b7146c68f84166cf8766d1f0c76f7223bb64d8e49ac87dc66ac3b5476bb3258e71b4b32deddd1556c225b66d1c4e76d31705076f6c5964512487f0534911403a960f77ffe8cfb101e89a96e62a5ff6b2c3642b4e5e9d76daa1de44a42711ef45a1d82979faf9c4bc0e7fefcef12168d928ae7d14a19c6183da0af907911b0318896bca2288456342db7dab0ead5f77beb47a350d1090cf1136f051d38a4ccefa0ff05618dc011046942dfddcef2ff89a87b476de1de5b0a1d14047772f5bb01b0af0d1484ec4889cd0f1e30b183c05386692db392d3e2870aa72e6c7a23772dbcc5eccc69afe44a79662af8f682fc3d71d5245534d62ecb1a82a197bbbcf2f67be301f756716a3a0cfef4983ff3f95bb3a484221c52e27a08e1c68a0aecfe0a75b16d3c9f721ec80f12456fb1002ec8604218b71ef7ee1db9821fdd30189452701f308e911c4dec85b07123bde1b2627aa57370bb38b0cbe450a0726adb2fe2a07bc3ec7d0d6c5e6b74d62fb94174211963763cb249b819c02b73c1ef2f7099950b88164ed725f404846acce467171aee448c5b9759b4b416a430e7c974daf43b21e133f0e448a66d8f32a11ef0a2a204ae31763f856ccd85cc35cd211dc72cd016812891a1d59a8f38dda3c5b406862a2e9338c30dec93718776ee9e5e96a3bb4ef8394d0c973456fa22bb42c69e8a22ceb3b6b82cd9d7e912eb53987217c60da4e450b6f59bc3818697430e6635c65317042d685bcc90ac646dd6813416f2dd3f9370ceeaf66c34ab2b4012b56a9943fa72df6284de9b5d76ceb1e5dccdfc6a06fff6d469e4ebfbf4199698d3cada3d707c7efd2816410e1b04c65b832999c1d94310cbf59acb89b048eb5c03e2782e6bb3c3cac0a13f986c8926c97fc35a876300ac5318dc38be5b47f69954c8f520acb965c8a0dff17d1efc6dfae810e8b03264950ecb8e681a42342b65c25ebeab578da58382638136358fcc380762f5a49f21dee1af6e04bac87d69af82fe02f09481ca6d9c4dce015250a87255fce782d9331804191ec5249ac542b313b678305fdb26142b9ff3388d89c9c083f4cf4f78bf2682f38127805be11255155eef29e17e7d81a808cebf31b63e5dfaa15cf149c328ae57e43c2b620b15be0308e826a08423716f34d18ed8b6531f1e0e28f61ef11c944bf880f35cef9e42a3959745ac1c91b435aac8d9b82864a57958bd58863b2551f19fb1f53d7b64f6b3c9b35aeb7030aced0edc97c434e49ee660fe85d73bfec0fc690404331d931c569e9a86b91e543028840b201a612d3cf59a125eca15bab18e4f43e85c861c93f5f9da3bb7daf3987d71d74821cc4bcae0285230ead3f8246f6ca6881c9300186070477b1c4514e64e964a1dcad1158b34033703583bf66aa436eb4f4d2ea253b11ebd51051ac742634ad240571bf9bdb4ccd56defeca24a1e2796af7838ef0ed6e0e864f5c4a67e73d761022acfd45d8544d1d5a82613eb10166d9b4b82f62642ed9d886781e3f07ce4f483792594c3829b454451e999b3a1b4c4f0fc49bbc651366b3573b6ba45491ca88cb0704474b1aefcccba00d027c0a0e5131518be4202fcd85dc9908eb5bbfe307de0af5f6694cecc5c9f66d7c8ae4182b03de439167183e6b29c7bc31d514b8a6385b3309ac9ffe58b4255b281a59baf54f2a91a91c106f98b4d5e92cf87adfd6b23426d0ef4e56b3b6d0138607cdf2cb02fd23b08e5df59aa9de04792e67bb85382cae97b0dd87a19aed7bae5e12bc1bd5b4f8071b0ba9b3343a4236747c019ae0fec3ea331a8ec2780ab211ca0475b7d8049509974e63bd5cb70a6433cbf0d41ae375ce08d190dbf1a3568582dd54c63c90b009ed3d428fa364488ea9dad7890f7a2a93cbcf1f60807ff3e392591bb72d312b304836812195f2a2221bcf653f9a044b4c83e66c29ebef8b5fb9f9eef86d422bbf224956bfdcb770112f5e1701f5c15d0c504042f6194adf3694898f877067ba1c8b0e8a80a1b7accf38b43a688e838cfc8d5a1cf7c16aabeff5a56d5f3a86c06a020c88eb7cbef07e4f9e3cf3189f22da15a402776ede04e6f68516669deea5a6684566e904ea896b778240dc4d3d039ee48a7ddc6c4141125d27fd018b4c2994781fb25cc5404b1d3761a46678b67de21afbf885b1d6f3ea752595884fb64859f270eb974cafb92ae21c49f1213b19c2038231fe523b2d17d1ba3dba6da0480c691468860daad4c780865f81f9ffb212d5a50716b77e2833c4441cb3e6161171a25de4e4cedf76ed0af7008bd1d366941823b3d93a97298e8a7f14d12c20f0c48d45aacfdb053a3acf7b2810d791f58dc8decac44952c5b1a13c86303004f678e9122ad1a11ec5c070f08130d647af130e817ea6d0c98130f8bf8113feb62a39185f12cbc1063d0440e1235420caa32ee798285609a43586ff2dad3aecb2ab738a01eccb100153b3e943130292bb5caf622dcffd5ad0c311240d0e5533349f27eb54f11008ba320e0739461d00771db5b96fda848d971972200374eeb66a5a91115d5d7c5ec676f371e3838ebcd12ac82a26ff6227afae6d53cf5fe3b322e36e5a24977b3202d08e7108c41fb7c870fe3d8952140795f43dd8ec8f1174eaf203763c1aa01fe4f519ea8a57cc30a9e5e486c37c99c75ad88d0d6d868953c58c6c130c49a1081297a0034773fac2331dcc2c5dfc5f0bf02ca105b07e40e91b71eaf92a5df014e786499b49b9180e3f924cef9d4fa0aa0522f1a317682694a016b790308efe290e62a914c3c7fa0868716f4f910ae0ea07058ab089e7ae18b16ef52e411ae66af10252533c70b5779a5bbd41d0ff14bfbdf376ea01125426d652166663894a88177c62c71cb4943d2ca2ce9b037e50fba3aa486f135e29a0c13bc1f42f7fb999eda98e146be0487d5827006982f8685a9420c3598eca225e9a0c46443c2bde52b051a83cec269a98968e665174068e007cc606050dc055df14caf0bf5bd727d74cffd0b6453f2b119aae24a221b019aade7907410c065c5d54165eea376c825dfd2e8e97d2c051a41324c45ea0e02555b01c8ae863a9b55a303c88682f25fe56835b92511f2d10f7bc33b306d76a2c8d70109ddc0f138daf44dde58c180ddc58723e22010875a36161523074ac12423d320b00b50216e207867bc0fb495bfe9c33921e9df00964060d508cd709ec50fb5a3ddd5bdcd3d094c5e090274cef0c210df0686fa9f8c1493e9a2df2d56983072ecfcea938cd1381b72737b437a363a7a4034a4a8d777157dae29b0d28f990cad19e342135a9d78f49ea98dc72ed03621389eda90ecade0a97a74acd24a65a4438ae2fea6cc473ec205b1b843fb1c2d026aff2fc825fec383b3bf0185b9d8c32afa37b1143788894b10dbb1b2eea09b32c7433fea524b697dc6acb4b6bd198825a48642caecae73de31c54bc102c0284e4c567b1b21bdde6ff8b289ceb487840d27b201354ef07df43fe07a4055024a0a1567224bbd9109e858d8ddd80b29900b27db9d71cecec7d754e30e84518e513592f9a149012a7f7e6af2713bc96cbf60649e548e9febecd6cf23ae85194c716257b949d5daa70b5a375c07e5bec27455f2979ebe91e6f0fa444d8c55a6dce24f2e64c577e76bd8db094462337391475e07bfed9bdbad9ec3a00cd966f89f61248ecd8a07fd6c501688f9c40f4c401fb4e434351a857398e6aab2825660d0e527a8f6a8eef67c3d1324b9086c48fcddabf65d965a75098a7f53fb36a5267da210f1d6857f168557dd609777088ee36049bf673778b92af659fe56aa42535756f24ccead9824d2f54607dfc9bf885d485c7d0a20631071f5dab5c4e5f3ec69519ee63e4ef64cc116155b60a74e3d364cf9c95050cc44fa6c9627fbbf6626ac0c895b6512e8ac052d29f7a67fd7b5db6d7ae14c912749590fed4c499b2527beefd7dcc6f51cf056d9506e372fdf5c5bec3a93632dc98278011171294623646a5ec9658a551ee9c3fa06b71a06055b9324d415cff73c3c59e94b9cada290d028fc7c16f9a90b3ecbb14c70ca75a35ca7640c364320692699fe097b9335534bea1ddf0faf8da911b34995d308161f1463dc0300f13fdc5cc6db1c5ae8c421a1032910645c664cac6e07e42f8fa147c4dd437f30922eb1d92b6ec248964fc32d6c5af2a3c5f9a3b7f472423c1d92831f07d157cbd4e3e7775bdcaa2149d66532d53aa2311d0cfaeba79e146ae27d3aaddc785f48d8b9db232a06207d08c263b083e74dd921863abe8da6a8576fa7c86bae953c54f314005124d1affa2950612c115ef99e6e6a1bdc43a6cdc55982985f217a497d4ef3432711feee4bfad1f31795809d70a7b773f23f874c3fec1a0c3d0f319803a6bdf936ab022bf14d6d133e640ee3f5cba1d20c41f2328146e80b58b380b1f9f071e7b0ad46d3cf3d7a92e6f1d8130b278593a15207e224d2498198f3167128a7008b446fe0d205b6899179aae068bc22e178f99e88f1345c30123e781b718009b90e55a185cdfe3b8e808b0880f904ff3a72ec8afde16dc5c0c2e30b5bf6d859cf0b9eaf799e1fc1368447526e56c848e8088a4482da701dc20186f19cfce6ebf824736ffca286ba966212f845a65f7d2186bdda4aca2f414ab996f12b8b12f3532f4e43dc7a790d5671cea94c3ec5ea84407213250558a60fef079261f608a9101248304453704385f4bcb147fca88d02e5121b7efa5ebd21b8bc999f0909c1d28055fb77ff1e4526a51da7bbc4f2bb7c0214ce8381a2767a400c3bbecbb1f314bca93376b7ecda6153c332c296f13a467881289b98c744700836b1a64cb1e3781b85a1e3bf759d2e52dbf375353187e0faac84aff69f73b9f7a41f7d9576c66237e5853fca5449e103217eb5265d4fb907a2da7186ba0e83466dc4e8e4ebc6e0bbf2d0624b57085343f7d0f27948dd34b471a2fa52f5e948941d80a117c75e5dc60cf51f2ad2f3bac7308679bbd89ad47453a9d487933abde5b51c0262de5a9499340af435ae476f203a7bf48d96ca56fa083a73e279a07be30d790493b5b4c23831dc35c49f06fbe0eb06f54080e0193ef69b12d157af026ca7d793e0264eba7c06575bb12b056050a083fff661b389b5bf3b38930a50db65365f3a7490653aba5015204ae6f921952dbc2f8dabfe05ce83f04530320fd9ef2e0ea7fdc0103c66469fd3c4fbf48db24b2ace68902b7054418ee7b233597f1519af8d3e3d1a61b14d942b01f94a6252c59360273be485c1d2123fead155fb64aa7a583b39ff58217d8d7f3ebebf9765941f2d6f7419e2ddfa4305eebf5033ebed588610b303f21678a8a76aa22be97144b46c1e38dc7878f8a1181d00f1a903d82ce0d6eac948da662af3b05752e1d6fed04aedced132ba55d4d1c9056c1e04d0adfa5f4a0d25ba8f690bbdee9d98209d5947341d133d7a93b29eba6022020d918fd41fd781bfc1349213994225eb24336118df70ed236193cbff2252455ba76a8fd4b2d76498d66c1d92ac00a550328849be9dfa23bde77028ad671730064346c13a9a57bd6753532713e7f6a4742542d1b9541adbcd4ff3cc376f6ce1395a5dab7832ef7ad0f13047ccfad41c19c242252befb2f681ff591348c9370d5664a452b39dbe74d21c77f87005f7941331fc12d46d2a5cc2b8730a34d6aef9d6c9c8d52afed3b1d829042e164a3ccf16953d105a94ad370ccdb9cd6d60a670a964785c4426f6eb9ab94ddcf398f8940ba4ff18dc4aa95e7091ab02635bd91e169fb27c25487e07134f564a79e311123a6362536bde15d77647f2e6f75a5871855efc5fe835c57e6494c836811f744d28e1b0e37a32e11347b5b9ae99a06375c6502ffa895f074fa485c8dd3437ac2814e6cbfdb559ce19e3cb3df5ec37fb0e12dbcb6b4149ee33b4d79cca8df5f9d4dee332b90b475a57f7c6e77096a1d30a1000fcd993098c5ed58ab527c5e50b679d163393b04afd531a6a6501c050ad088368f8ab3cbcf817cb9a6dbf04fcbbc1005216f2b2f1bc004a7d506cd8ebde0e269d743f0ce9d8ba46be844eda474bb3f6566cea89dce00ac3d65d62fed19885a0ca4c080ef010663384ad972d0b8f49db64ed892c523a869be42ad7bb8244fd9117f05730c8ddc8d0374848b7d939e3f183acbefd272eba6036f33d09fbc8cf998352d0ae3a8e0cbb36fab68c373a0c26733b062ebfc3b87d51543f67ce20422c3294d44578cff9f9d391bb73e15107bca2046f46b2ddc5e1a95ff48024d36efe8f65605ee43060249bf8bf9de876ca8092a3da4f3dcfa1461c7b5162071f8cc4d333fcf322f71b12c35e25718d3bb33f02864f08262ebed0a4932e721d32325ed0e22c32cdf0760845e706c203fd261da5131e1e0ac3184fe04f7910682a10368757d699e44ecb1b74f0d662f3bd98d061b2ac545109ec351eda00e43e4b70da92510414116d14073852f94dd862783fa60254c5e073c328e6c1747254da3825978f463815364590f5f307ec3097bf5f96b7e6fcffc12350823643794607ff1d8adb1c6ff136ffcdbb6916fe966c1e4ce45ec10488ba4e44c0ced4338e148802b3421d7327fadcb1871f9ed84a3b0dce9632f708f197978f27c10f719407f78604ad1769b2ea8d0ab13455676d7ae8bb273648ec0fa4a5f243451db67ace7d166415ce76b3496ff3a5235187b49245dfa389812a57198273821df0295122d4c88fe5ac1fb7aa8cec643afb426d76161d50ce1bfbf1059d7a37feb8f8dde7f18ef5fda10ab17ae6879b0ba93e7b1e6f3721a62bf8e11945b04a9c81e40d2b53080a8d60ff00eba99b777309954e202fab75b05598a83e3bde8e0a7474281b2aef960bac9763844205aac938a51732ae6bd22b41fc86747ffea3b76fb059f4e1f15ee56e4dd3478edaae515cc86f69261852647e22b98f2d411c202e007ab586bde361c0738be9bfb6403cbd092944d0c7e2e22e64eb23e9526a6519b3d4e4b8b4397a38d46b9dbac38262486f6fe8c34504d1c5f43dbc37f38f90991e420ad419f52e785e3625e6891ac4b10ab96e0d79f003a488ab20282464a507f96b428742444b990ca013b775b025cfe218bc5419836352cec24055fcba338b92e938f948c3a09c79b89f71eb6413b602a7d5b06ee2e56ae0a0059ad4b2d380a6cb133ab62bc54f179fd2895cd27c1218865486dcc315aa35f3536ce6f88d8463d55de0de4209f6cfef491c0796be325e75de22ba63cbdb5689452c272093d7650f8fb1049042292c9e14997b1643a93b3fe173d8a0d706375d97c4a0464a069d2a8f87595a7b1d66e94048dc44b67e749e3149d333f0afdbd47d0bd3166e184df0984c7968c50b62a2f7e62fb23dd36d18728d40f0c3f1a21d186de25eba87bae7669bfa81937b99a57b0296aa97369dd88cd8e2945ed4e8a4805790374fce72789b25835b108bf72d10dcafc511cb3e42b37c58d533a8f56640a98e86bc3cf2a6c4dba496db4597d7df87343f27363d1764ef2e654e883d12e5b74361e94bbdbce3d7660c4c250a7286322ec057bf7081bca18ad5a410d454a1798e217d0a718da26db1930804aed7ee4b0e79743c7338ea815706ab5444a581bdd60a532a6df439fd35f8dea68b42b7e5cd6a4a118a4d5b36a366454611808a6fc7755a6773c78ff5111e6ceccafcd9793b2a19dec8149d37eb012b6db53693674a6e37e15687b1c3f7607aab8b94d857cb3b0b4112f079cdf160cbefd3b7c7902e4e600bcce69826c5854acf576636e27813d7bbae0d8ad6e120ce4a4d0259f570395ea1e0cd8b5efbefbf4c63211b9921c19b7678114a5f28a6933353ab31e3ad90214f0fd2debc785832668e336c8bb79b3f6db5d734452c040f8f3ad5e7f72f41fe2917b7d58941b6f1bdce6d8cf6b9c1ebbf60f76eee57548059782797fe59e6501134967e97440e27443aa02d44dbb37a90df44970cc393e8bc559d652d09ba3103c1d852a9bb7aff34fb387fca0b8b740c9eb3e57a1df2c87249dea2a740d3a089ff8eee3e3e9a8d1bb50edbc0b6d335239eef9a2c6286ff08fc1b56bfe11ca93b11e9f4f2a5cc49d2a56c9823e76ad254cd8e0c2b18666be613b70383eb098e7bdea018924030f76c03fc9d3fea975de9c6914d72189655d3794ad1224b5407c07563d2131a945f0c97587e952106090273f6497a56a1e7294f8e8dda9a25379894052018b463fcc9478221cc83fb3264ec20a354df517592af770deffe080c148bb629f6eafcd7e70b34289ae504e84ffc4dc5d3f3029ff515c80c7bc3eaf2a7c0930be22bb408b453e6fb308f27a11d40819c8624f4840dbafb44ba381e200b815489b5841e12f846ec2a83d4b8c0e2b61a8c04e1511aaf6f197a1301c8be7fd55a35336c0afdd764832b21e2ca00c7f8185021fde12ef2d5272ee0364534c428806486c35513ef81c1283860dc2e8a8fc6b78609b04a082cab20d15cad4e79f97df2d8da65fbed8b9a7e66949c8509f8a99e5f0285c40d7aed03ec7ec1e77a9bdffdc295f2ad2b3ea90479bfde3c494277f09ffa92aff76855da95d308dc1f8582242fd453da6c760a408575fccdac0b37812921b6c7250c96e974cd18593a31b3884f38337110cd8e2c850be6dd184e9ede4358c46047739d3747872b09ccb6faa46e5a65afccf251e21c6e558b2b10386b5f1ce351eafbc76b1652848b95a3ecd11dce9c85265138eabe54317309f62e669a4f86a56151fe68fa5ac91836c9949b196b512c44febbf7dabde8bf7e7ee3afc924837497f49ba951df66a94c1a9e7344a11062d4a9ec30bd41a2e3b469fdc5626e12f41305885ad836b571b2e161f828a3bf8cbde3562971d698d0d9e94409981313e7c76c1ae754a3c0cd50b5156554e09e5c80f2e37053d316e1086a2e40eacfb14420a962314728f84e7db0fc04717d17774c3808f89dbf6e716b2bd487f34d85aa94cf35e4c248c26ee7834a2b9dde2366bb8cc8d710c10ffa4a11ab78b00be235b15e811075bf3790e4dddeb15555489bfb484f009ed12cd2314d6282288c346b9de241a05a083a7cd971cdadfcec81f2be918974231290a5f71dcf87b973d65e97063fdcb0b6b8e9fb14f8f52322f9f89d7ae10c6b78d94bc614f11dd504015090a8ae2e9e9a3b1ed967d39f7e0ee84c1c6f8a8186b57de592bf6cc158aef42a9cd4a66df65be68926db6b7a324cdecf43087eaaebb0e948fe3b4c361e8561f0aa2447f102c729840dc4f19579b5bcccbbaf71d988e75fe32e73f1ff9e05a1774a98396f34e69019ce547385a1ddd2a477fb7d06facf31c57da49eaf33ebb17e05d5ec95f90156114a2daa160b1d0e6313b4f15a3c6020097f8e2444b56b53f0810acb0136313c6104f2ab7fbe0af81e1556dbc106023dcff9d925f78218755c2c0d62ee77bbad1c70ceec07e3dc699b0461dff95e2946b437dbb38800de348b0ec6ada529b712ea7003ff6ef5e292ac5fadddf835adc76865b16714c2ecc6d75c97813b556e799157c986478d992d43824623809364b8b026922cad17df22d215785f5058b53318fcd6bc149a0c8e33582255b9a13b2e937f50da60d80022fad630932a18c41ca35c89986f35aca1eeda8e8bd6589afd05356c646e9a24326a5183eba0f0f355745214abd900b4f0110c4ccedca7c2e3e340b92e75175387348cd292ab650900d0ff97ad86acdab8a9e92e0135d57db5c9a9da829c05cc001587c4382ef08c03c6d71de15325dda3cf7b8d87dbaea74361ab20f20a090270298815a1531f753555460f1355feb88e5e932ad58118deb5ae2c3fc797c5d5c50e9fb218f46b082a9b10e1f5d8ae5d81ee5a97d8a21762ea84c2879194a2b7638292c83c3c54466581f42d5e44565497a2eec660680f11b5752d55dcb62ea6f3a6cfa922b0d68370325c0dc2ca26f19c2afac3a3b6459feb6c6718171d9022a149d8c7116a36785248c40e0bfb2e438ac157113bdbd602a7172f3a9cca2c77c0c821eae1372e9b477c252403e07174526441c9cbf8d80f23fbe95268a1e5e2b17ff8143bf09a6c9d92146a17651e1a53ff9ea3338f472012876cee2109b58b264ee8bea4f4d0ee37be49cfbac16bab1d0db409dca126c6e02aa385f1d642cef63852c2bb1687befa83563d066a020273336ab22f4061df296b1019728230c3e1e2467ea1c515b4a9218ce5106e64982c7e9135c357f6b2d4427e3ecd4474f0c451c6841869c479264e57082f0d527522e761e7003fb4b0b0771b640fe5d6fed5af97511a07dc3d07d11b3936fdcfae7862346f38708628fa2d774f8694c214142c5dc486ddae2d3419d498b2d91ceffcab63c9ed98bffaa207aedd88e648f4952c86aed555ad01d63e83382756e7d39d768c423c83f8b19ae4f78dc4702cb9c6a0ae64ffdb9108a56418d0587a896b970a15afb464bbd865a463b9fe3d34da72a15c04408d2a5f85d4c103d1c0d539fd13bb7e3dd8589cc0c957ae8e6bef3ab0b68e2fae7aa07877b5d8ec2ef2c98cb703bdb916534f830aad4562788787f4f17d6da1c069cf7e25dbbea7e1120d2c5e4e6142d3638a20ea4549437511c1c3d28d77b0d89c487b7e6e85489fff7ef36f991db7555aae171a18bf0f096489acc433c3cec9dcb2166bb511b8601291a6c6ae3b998aa81d14dd8f342e090bae9e41e8c6e411d913a161442f68064cbc0a0afb684d47b8ce8045389a95553b5bddb31de83ef53588527873eff09ada02d0f0b7ca8ff5e78fba473a1e462c20ca9fa5f0ecb799a65c2da258d530fe559279149c1be6784b82f2e8e0e855fcc6985fc264947e9718464f20ab233591fbc625863d1da53c7f51c3e5708870a4054594115564a22de63d0b7dcffdc989a6dfdf5c50e2e0feb98ec4ce8b1e26b7e1e139e3bf3e6b7562f339e289add479e4258ab67327c6b5f00686b7787d3aa43533c641ab1568f01bb1b2c3a40171fd4e4afea3609adede8f9a22bff20b535f0d492e54e97272e10e5c35b20f75c44da66f1964bc3b86aa56e186d4284090eff36cdc625ea7410805b958fdc297c2e0b6582616eeba4ea95f5bcaa9d6755cb601962ee0844e6e5d8cb270ce59b6b961559d1e978b55637079a24aa6b2595ba6220a8931769ced417a891964d2fbdbce5d1627eaa03e49a86394e39092299e6f18ed66855854e0aabaecb3c3ca93271d99be5c455ec0782be382c21084b9adaa9a409fb5a0dad4552e9c9bd7bb1a995fba9894402c2be2e6843f5fe40b59414b2851da36383de257f539c023faa25c1199b3c11310ac4d691d1f223130682d61d164f29459444f01228794fe8422275fb0a6a2f5a8b745eeb0411d8d8704cd5ac12add44c79eed04e28683c26548cc78b80659c0765f396c30c1d51124c12708826cade232ef30b2b7158ad55a2a731d0f4f3cc5c036ff021a35afaef8e4105adfada8a25a146d8dd664c67005cfa228b2f13c5c53dd71390de086a0592d24043e376152249770d25a33c34511dbba66273958fa6d890a30b925cb8bb44c8e19c9840cb72f5fc93e81db419101dc945a12e5e6568bdf222e00ca857777da86fb0efbaed6456a83859fed1e97a6923e8a87d7d5fa32cf676e1f8e9695f5d5178834301c527d59a257d4dec6383e978a69f5b88fcb9e91d558bf5ca024f78fd5710abe500179efe7bc742983d853a9e1e4f9d620793b499f9d56341fde688f679598d3ebe42c2667eb4ca797d8352ace080c42879984f95cfe40352702fe6346f4dc6ec0f4a9d14f3f3d2bad74a15368f8de4c661dabebd3028ac87d2e14d25c858e83b18691aa7d0ad6f7253842d69058d659b7c69f717d4ef1f2c15e971978ab0ae58e124054449db23e90546141bce8cb40d0a2355a5421ed035e7590dca517cb60d2a50e87c692b361e2e7c95d2ce22fa89d5aee2b40099eea7812720b4833d9a853644d04c4e648a86ea778aef107aa8dfe41551044fe89138f3975bb150b73ef3a02a9a58366f4be75787b478887419f308bf32b4a9bcb8612db94da7c0c216aac512f57cbf6ad8e63f51c63508b4807622ebcf2b37322fe5cda0f702a5117341a7280c483a659ddf1011e1fffebe8cbccdb7dcc341c7a58efd4f2c281d1e3c63680ad9d61b8819964f364ebd2c38ee5e7b0d9d0390ace19628efcd1a083742945b69fb676c3a9bcd720c74c8b635fb622f1a5ac9f931447569538ff62e284547815a970f62b97a3442e577c7c4b14817f847c71893cd7ea3d289e01ce4347a95f357b1e01f435bfaf20296f3db059a72b9edca2d9a3280202b31c7e216a79c99333d73eae3b97f3004ee652ce4c1764fc57a7a9d041935d08736118670954481ea4477e4f9ab8a6bde96a23ea256eb9ecb0ee8567a02542d7a27107e96e6ae84ef5853f485ca48ddac8fee13245a5bec4ebe7e9445707dc2b7d621fd08cd83d0a5339014a6940ce3485417c3f17076802a1601a20401f440ddc7578a83443371f464538a227833024e714cddecdf3a414be999d911197db0a8422d7ab1d2af4cff666afa96567e20e489a58f57652ef13029f1716cb0ad636fdad5a78b91635f5962ca692aa02ff715f227609643b2f4484d9f0480538c164463e33ec069b062724e780db23df49a987a1fd4479e54ff3b837579f80ee365865372664a5afb3cb36d6dfe6b22883d2a7c3873f1e2a95a05463d7d8b556dade68b7ece278bd63fb159b08dfaa136c2345f9e5e45fb24504b6f7ba3231d74958a999a6f8d4fd4c2c9582a25d27bc930a96b252f6100c26794ba8810752d8f09f2fb493241953cfa9420856fa379788469f59d43e0e71bdc42044da825fc6bcea9363f1c63e7c478bb3e69af5107d09989f2c62fad6fef3705b5eb26d31e9ed7637ed9805a26b5109637a00064a5365e37e6825a590b92373eb4dffe3e3d1f0edf7570b328eee4d96970e07b5445763bb3ddf843b091b6a495f8652d677b392607d1f2013f8a9a41f630be5b072a2ae555606799998385abed306c103c8c27c12f2f7551ec49f09c712683353c60faed4bd5328d44146e485a1508fb81ef2353e6702eb84002799e7767a032b3794b316389573625aa7c7b9f42b87a6711a59b9e68f193526d506d175a4cc1dd974d51e78568b656d3643a316dfd265920cb9c313f59393bef1c785555edff2984abfba8540eeb496b4a08e7fb3c4051b0359ab2c54908edafa0bbbd32568f00dc184d78df39ca0307e26d7508ad772c5e3dbaee758176740144648c389810789cc86769e450ca047bb5c9fdc992ed0ff42caf15ce9169bb100801ad520aa62da1879d105580212b387e9871da11f45a5d717d1de8840ad1d168443567af0784617b90fd932dce46195634e0167fe5bb94ebde3343ddc823d154a45d4735f8a9b260ba1fc7d5a0b8b09da7335005460ea6fbbadd27d12f0f861e68f73f1c0494f96aae672f917d6eee7c4706282ff89a0279be665448b2df0433abd32f317a732addabb588c6fd72e4e4960ef034b0b84be58a8d87438240117ff12b3d2b1f5416b314fe4ed9135b6d6ccb92159d836b0f6f426ce98f3584fad34af66e30b761f0121a3d78c31d9b348f211acef6283bc75b61310ad8210fe5b75f023a005e10be1014a9eef46ef31b3950791a6e7ffc52df8ec865f8bbc8d39f48483935131ce9df7e41a98f0607d182d3e9c5367fffc93084b80919d724b66baed11fcc65f4bb0a423a67c8f2adac4b4faf1c76bc4912c95867f9bfac96a1c0512e263905da9629f1b62d20d4d28481c356a007ad3dad97e01f44bb28851bac88773238288c50014db13ca7c9fbda5b014770744e732851884849d04e0b88fb58be32e6b957d07eab7463938497b42bf3e56a658285cdc4a8e255f7bf8606fb200415aa4b0c65b4bd4be9d4254a9c8d94963c92f70b6ed8859314edd44665def41a6e972fc54c8346eac36b499a2ff1d157d91d98909fa74cbf9bb076587bed9306516bec3e1b7685cb960b328fba7435cf035497ae296f9f965488b385d543492569db407aec2c1751d21e20d59eb07adba6d8445df4d21f7c62b61c6f9ab804463a1ef4bedb8c4d4de63d18d67d5fb398f6c42bb8970c4d9e72b2ce33d3bd6c980299da165f72dd755e620677f560505c969a8a38c649ff775a28ecb93cc409c555471f179bf7776f5ce65d2350ac55b546d22964e93fded545fc5ff82a4236ea5166508d4c5719cd19b3528b145948323ec3a1611113dd1a689387065abf90b9612fc39f1839c1c10bb64fd18b376ff68bfd1be88ac02ecc7a790569b579664435bfc3781f8d33072b3e86bce3e2f66b229f951986674c91c2e91db710ed51ff6374bb6a775f16f71f7bb18cc2cb8a82b59b82297437418b106d3cda4e15fe392acee258ec1ff356803e159a07c027552bd173e392d494634359f0288fbad1bd02e1a2032192cfda8fbc6791f9cd76fb3a5625790218543fe289741bf9a739124e4c9e52a94c6fc119c40b09b5f17fb0ef97de54c193f1b7cd4ed6a98a6f55aa1a3ebf5b581501af2798836df961ba4424fd1cb0a0e397bf6f81720aab12278504f03f626a7baa00df3325008385f8b97fefe10a02cd1c837aab901cb7829801627e22e006f8b16702a3742ec4b3320701a93d43e4593ad382ba93e6623131da0267e2ddfaa0bdfa4926c9943dcc31c3f4e70873227cfab2a1ea4733ec8d85806c0cb55ebe798c5f95a463556415f0097c4d07f2d0088e6d44eea51b901ed730269d57aa1a667a39a5b7f6eba4a596f491c5236f94f6229f3326f33d917b42fd0c0391f225442935e12b0a148a9a384a5255b859726bcef378f7f8965bbdda763c5d55074a58c56c2b1eeba37a05a702be8dfc763b9886eea8a54c01141df4205b838590bb535a389b4fc12221e2638d091f762f84b39caa6a9420f545096a1b5d5b7a35172befaa5a25bb9cd680a52aa4cee1f4c84644f1899cef6555fba9b2435da9cea07056b047c3f5727f0ada976f5220e9048856150d516d436b152dbb441e7fdf860cb3826b02dfe4fad2782ed393eab5abfbe81cc86d53e6010d36d70cd86cfef62f8f04e0c287e75403447d8eacbe8d5436162476da0e92f30bae0b0360e5dff29a1704dcff1c5e3fde05cc0a3efd138312aad81f82172009336f07355cae9ca8052352120f798ce289381de126197aaa1f26ca6e2e5b2aee96135d60ddcaf3c426934d336200e9d00fc9709167dcf5d5fff1215dabb81d8593f97159fb06c8169336ba08bd971ae2975265af081a367a91b332cc3b69900d4a2e12514ae5aecdd7cf47c5b005a5efd96272aba08ff722fb60ca1d4d9c77c3e973925da692091ac2efff1134e4ab774c3e5a24b65cbeed0dbee5d091585364d3adfe3f5e21156bb0ec122fe3cd09b04351e06fb901a5f0a948594aeb8a6801079fc3358d101be5dcae92cbbbcaa31b79f472ba9172937ae88bec41e0bdc468168b2172f9b06201e50d348b18046359b2daf396d7e3c988112892206b9e3385d0ef3269480e19e76d3d625b400c70c6cd988bc2ae0eb0ed0f363c39b2eef582af0f8c4679a0f36031da0adc6a0a5fcd5188aa7c451b5a392f41cb87aaf1c2bf93b7180a5342502b99e13795cff1cec87b2ce7b0a9665c21d71e01f2fb9acc998388143608f2ba7fbc0e2d1d34432c7a1399d9c50206d35435ca78f8dbd7ae9a2fcd6a216ebc9bb479ab99a2bac6a1207bec96c077e55e6542abc3f68048d7ce7a9ba500aced7df0ae1a0e09993889ae830ea23574c7c160ebe81e1f9e191cfb9358f46123dae57eccdc49701668921bd14efab98f29d70ed86716aed4b0afef0a6aa53b631a2625a7d700ff07109d5d7222a473f620f8854dd9e6172919510e091165719b1bc4bd05dae3e81e30b77a776b402ec57ba9b9248d5b6f0b505da340f9fa67a35837315cf35c9dc4e6e05219f02b3f10aab5b3d17320ffe524628d09dc5a709d15d95b98dfb07f4a2151227b38c8e3089ab7472b34db46f8cd6a033f4fe00c75db0858837155b87690cf5be13ce00fb04cc20fc9a1ef469e70dbb1b5e9125b54db99f0100b9744d84852a8c529e697949e825c0b0047aeb6c73386b544074cc596ce752dece736d200c27d258dd23e783e5b019046234419064552e00d7f2fa3f19bd55420aa2f1ede5b45e145cd5f0613d15139cc60f5bb10da73a61f0c1a82662ee9dcf072ac0b7a5f1b562871965bc8b1ac819f6b8c2f81be4b41f821532073b06b6af11bd25dd60bbfab945d943743a5d72a7cc86e61ebdcf1fb5caf36a6b6274c55602cb015f49cb5a7a21a3a55727250759c79baaa3618d414a98440af2b286c9ee8945eb9991e4e8a70d9ef96650c742de97a02d0911852e199f35f9d164e760c9c5e78e8e75b5b4fe225119d33da1bd8fa9ddd67ed0da19103fe6da28e2c4038395b2b09cff21db7a4efb549d176a359664c7ffd3257ed1426e52f79245c924c4f56a3e6904d83122a9cc51e59cb45c1fe3af1e223b30d3e9bfb597df53c3d946e9ec6e4d78f456133448ea2d42eaf955803b8302b99e01382eb111afd2f534a830c41df86369d82e59404caaa67f1fca9afd5bffbb09c8b4823428be71ffae4fd49513db63466272ae84cc3388dd25a17da405c60a1e157fc7b1242ac5daa1277eaa377bc2b98877221f507c6dcb0cbf1b2acbd423a679f53c353423e76c5feda82085ef92380a36c3e487576f4b7993f160ed5cee37fc762570ed41d4aa594178e81d8569770511d5183f3583ec3cfbdda174548397cd5e4526c5c943c5477e76d382308ab335422d39a6635258280147ce42654e9ec48e7b645e72a630c35150058dc7458ca43776f366d7886129c0399c488872f63f2d81857fa53602189029b2cdefd2aad0e2464fd37ae7bed9132c8eaed5b367ec3a368693df06b08ccefc1cdce930112d60057809b13572aa4e245bd71e8332eca9307271a9f7eb642678712e309b42e35d058670099c7d9f40767bf6b90116ffce53006fbe9733d2582a3134344839d11d913e4fe4a85adfeacb839e2f2e06617120e6b51e073f72fc47d49543503008c7e36382ba61f02eca91239e606457ed7632845d5d1603d649cb3a8d02b4dff3d520d1acd994f0f8b12cac041ec0aa2a4a392384bfea5dca3dc6c0c202c26e2814d2e870d86c93a35e8ae00621b6f70359916074736dab6ea3424014441be7dde22220a96759d1d3210eddd59f5a8a9fd786a2ddcf9b4464bab2a380ae3000190c633b7cda2fa70c2664d29b123702698419c6b65db169fa7156526ae68389b42a2e3d98a21d7908e74b10f5ff17f97fd79da353bcb7d190c23c431d1d46bd04e2c45f59d4d79553b1ab16089740703af37f5141cb4c35fa13fe058c3c1b2a1f45c8310c37ac856e2567c4c83a521a3c96397536e3acfb71d35df8cda5b9aab47059468da1079c6e382eb9abef6ee29cda7b32c58d25fbf936505397a474a1a214782abd5852fed94411c31e51107a1b8cc3c3c1192d0b2a6bc997c3b44818f6c95abcd7a9b83d38283a546fe65f665b6f1f946a2bd5ae73890ad539d66d4dd85b9863c6c3f6f724fc7cbc43470c35a7907744a4f20f761102f9277cd05d2cb26b95cd1142ddd89e35fba57b92a9db569cd194ca0bc517d11b2b43ba9a31f2651f8bea6897cd321c6ab0decf1cd0653df45f35c291167a866e45886625c492bb2c50cd9a56f2831ed7777403759a3182eab8e69508c85ecee9c4b25e1ea5115c7ae04ff38666de25f919dec0137fddb52fcb74b0a532617af96a05507a68cc02aa64da0e51094d6fb46eda23338f401db20a7201d505eabfed406044c016cc76f879dd3b9f1b1268330c09279e15dab46a7760830aeb207d1fa4ce480dc853eea401b09115639414ef6c1865e5e307d0a43b7623b08bcd0695aa9a29e95101fac2615e0c8abf5adc9e07b396088da57e5ed5757a5d5510654be31de6f239a461d3638cf506519c2a47eaaa9bf6cfbe3c5a98f3d544e05a0fe9935ff2fd0f80c80fae62c1fcf629de7faf8e5912d2c2b24a2cd2bda2219e703bf74744f823abbbaa75af88a651533a4f181692393271b27fd8d49e8c3b9e3bb5919ce3359b853f5ab71ec9ca469c3826ac985090a0cb499654314a9e02ed2c35d676915dd3edc5313f6bdc8d92a7b42ff9a79bc452b6ec637ad6e3c33e11bf0863736e11f1fc1437716a4a8b63042a865bfd8328d0f4eb4d1ef27661f47d8db5b4c1cc0146353930ff07cab5af6894d781f4f87b3960e8cb7270a8daaeb476b46282ca651ac2e03efcff1ea8bb539997b6292a07abefb6a5e026797b2da0b5483f10210799f66d44fc67b58a93201c449b998fcf6c52085df625818259241134f905bbdabd76287f710db40fbf06518852ea7809bdb2fb9ded308fe842a9672ed34e6fbaacd26b80f520310d882d768222fb4c220e55ea894102a68ab65b141588c0a845f2350816c66ab9703283d492e423d3ccc70900d9c375d99667997b04977b4957793fcb659775b87c68099be8cd8e6bdd90092014cbe1384d0c0b34c4a3b49f29dfe0cfd0617144749991b7355ad319bf616c506b7b159136d41615c28192d0b53903f254b9f6a9c22db42024506e161c94ab41052781907ff6ed5e55f725b5b13c7ac016c8d4e4f206bf8628f2b66eadbf7d01e7dc85d9ba0d3f5d9b95f8b00135d7b36ba7828f276e845700910a227e79b123f189e335b303664931031273722e499d452f14d3d96229392c91a87c5166aff8620e1055a5886c3a9df6ed08c9dfb2565a9b00989af7bf074294b6e7215d4b29b5ab155c12bbc329ab85574d139c2b41287d7ee39988b49ddbf48ddd34ef9688666b7398ceefc45a9b9a54f177f33f4720087b3e122102aff1ec6f776b2071d308df219ab899324de92a7e4f06d06ad0b729bd1a20cbcaaeda90f2f9f8ddf5b8a1e2833b22a1978f8704d0d184b95e9c951000f0535cdaee2cb58bcae92e672a1001e50e211179e52ff0c5e91b869a2b562d591dedfbaeb865a5742afe4844f89dc866ea84952b45d834a16d12f93eab73517cb18b63b595cfb543c69a2387de0d5e64db39f240bd1e3fe25cc666fc5052c74ade803b38447d1f668b39198ed199c7656035835eab18843c336953977fb54b14173f04dcafecb4673056fb33c0e64c61a520ce76cfef5b4aaeeca39520b8ecd834dbb1b264c31503ce9193aedca0edd398d43f6514d05d9a406b98704558c8ed5856be064d69c028843fdbfd98f44b560ccbe2241579aca1cf75a5dd9c042510b4c6b7fb02caf24ce70359e69cba18c48b39beed2c3f0b9d64179a376a6ee1467f6622fd5d04b8fd0276ea4437df6110dd21c3d6d3225e32567b7f7c9d05ee91310f92b540d880ed7a0b187adaca1d326e6665855ae08940820fb774a1b39c95ccbde4a3d26e5a1956c62bcf4b32f7b5e6aeb94fb439faf19693c143b8b468bb3a6f5e2ba80b82823406c19782a89682d904fee32903fc6ae2393bd4b5bf724e13a28d5ca134e4bc24ad62523e5694740355b3d107181af8f28a86fd021c93eeafb9fe15c793b29941e9063d7e21396414a956d6c9c71170657319ba69e63c0503269989d93581de58bfc5946d5d250545b10b1f79778a30dc43fa82ea061c711060fdc19b94132c93bc5ad943e537e5b80dbdad905532b1310235c5ff5e0e2736fc63b3e9847ea3ab66f3e8156a1ca02c717944df78a84839c6565e13229b1fadef375004c676a1ad0ff43facc0e5847cbe2a31874728710038b6118df362ddd527b4467b9e1a522e554aba6c16a165ffa3eadd350a057b625e096030bd525eba0a477f15c339f64ebb10aea500a49041315df0841229d53fc50e5a9b80aafa82e711b769248dc3d28bf3a010c124661b0b764e5092edf00d233c78e2c945c24599533105aa6605be31b43d4b0065205e020fe2697a55346f493d211ede32d35213e819f75e8ff87d1a3ac03a054530dddcc72aa20d4dcac2dd3e4789531666e2f7a5bb0e6e7dc2e147b300cf4d23a133c04005f6c0b102d0324b6e721ed69bc454ddd87c5336c6f15f97bf8bb94ba06a984b3ff9b4836d6a7f209c8a7431aeff65da015a5f86e3fabb8cd4e5e677a66b639b92313baceaf783147c79139f53ff0bb78b16ec34ee463aa525f64f3f265622788aa904c1def53279573a2202761d81fcfcf1b5314faeca4cdb8edb5e61242436f84afff216f67bd5ce2df3f3044ab78c3d34a89965cceddc77f82faca61c744834b4d687e934054f5915b720b50c8b83db360dbdaa45cdc80a6057937010fedcd783cd8419bf38b75a824ac6ca38669c236c83ca034a112e3315832985f91344c8199f7ac5783cf53e26492208139ae2bf9abc19e965befe55e788238532259c5c65a7ab21caa4ca1889435db8f063302dd32f20be7f2029cf2200a533af492626a6039c6479487736314d3ec20ef9c14600cbf6b9b4b941b909b30726af5e9b81ea3044758a376feda7342e31d99e78580d51cc4b52979ccd612f1b5642e0988797ed5a55a823fcd0218209e9ea119ba935e33b8656c705d975e03cc036ad75910701e3f3a52070d0ffbaa8acc47ebf9ba770ab535c2db562daf0e4149677cb01d0d3b2cc5cf5a6b13a32b8b6d70da6116c26ea4fc72e013aa36efbb35ca191f1bd6597e2ba25ef9dd5897f73185c36a0b3edc279e88a4c8b01609f6627c50bd7deaa4b2d291e78252fed465be0513af0feefaf356a9b2dcdcf1c2833ff255bca7217aa3ca0529661281f0a52525e2db3f901abc02f5f5402147dc401ec323048816a01667db525cb2d9ef46eadb4548b3d6a5aa09437a0f22eeb798250bd9445edc38b8d0217370da02ec2870d9f8ec66e92ae1cc9f0c712e3d28191354e8288944602ee6a82717b0c7b636943750ccdb554746794a4198fd7f9c1d04d9e1fa44badfcc94d0db00c5ec87ab7852d4d1b4375883c8d32b0370f609bf71d5fce79dfed708178aa7808ebc6a5b40b73353fd741b63e252c704757da72c4762bf2685b5f69bb0e674efa5656d420b18b6eef019fd337a033d1def3b7a390f146c61446bab756eaf70d8afa5f83eabf4fc565ef326169f836020c969f7d7206579eca30243246bcd5df4868a18e82c89493af7430f330514627219551aac3fcbeb642f47b4be5b8abab3c99a5954fd5ca36c08fdd361595b621244fb2b2a0e038b8093b262a06ac99bff4005ce5cdb444ade98ebe03b1a5f80b7e1659f3162f28b747fe0501fbba81b6d587b861218a8cd059c4b1afa8b784fb79e35242571131c4b2f3f5f25a55fa8236560d613933917613c9ebd09e1328777d94f522a6e4b0ee6206bf42a2f5a9ff4392aa84c766413cc8437bb140f79d187b14d18f51aa280a7019e1750db5ac3242441ea5c1d59a6905b606502eb48643314cb6e153e8edc0b4dac2ae47f7992655477cf6235b60d8a535a65417a52e366fa864c556330a5cc585a96e633c344f399e087f620dda0abf81ca7abcd755541f5dbe3de3c44543da666357ffc0953e13dd0ce21b89ceb099da1812469f7d8f882936cdb22c46055d4b6bd3363363a81cb3e836d623d3ccace70e2dc6fbe0162f705ded7384fd6032fdb4130d1cad489ed6b3dfd89d1c9ee99637a68d23010bde202e121535d8a8c81b3f217d79dbc36a8da5d74556e3fa2bdb51d657654c922a7f18d5f3a10c111b357c0a1f9c70e96c62c6b7f88f4e2a4c9eb8d88fb5d7a68652d75be24cd59a1b4ee515f529b1bfd7a97e5eeb798cabaa25b1e20be27522f6eda51051e1a89a0205e7b2e606c88d11de77e6a5d462d11843c6af808a8968b3dcab29f51ad96157ff25fe3953e8f35fe992eda1b95ea64feb228c5567c6aec42318fc623921b31c766c2832bb4e806596e01023feef986631c122eded52bbda7019f701cbc135392965146b75a3797f38eb30bd8b460f88f28511e043a992db4ad3efd58a37ab9186c3e1476bb1493f0a94e10606a7fdea1a3d2ea4c5c98ba7764a5e53739f4a8a50ce5bd4821d7d652cfe54ac790c972a623c4e62bd0c018bc6fa4910805629fae4415c76688934b6fac51056cb0b0ff6b8a8f702918a872114e8ca2310604bc2ca9e6560658b2541bda134572fcab804122b3b48a06cfa2f11a26c90e18f508fb28963b6b5a2beece3406e3c1e6e91947af3f2cbcf1a81ac211ba2b5c039cb16bae0a2740c5ae29c85d87594ba5eb6f7033b22b5b93b3b0405c6aa22d06b5d88764cf45f0c456f64a97a452b6d06318c0b5092352506e0921312ab302d351b4cef390e4d92b182528fdf46166189ff9941c581ae9cacfda4279dec83d5345bfacd99c4b58642b1c84ee426bea85ac3600704dd5feec22f30aa440d73b34f33f9630534f9789a00ab52cc5f66be2fe7f1d326de2ce666cbac09c292f14de9ed33f76ec7b035b7d1e0ab05507c0b2433b1874b4fbeb1c95f55be45e4a62c2f13a94abf00c762d906ee5748204d783d7063d1ca7e6f84b074f30e1b37f4cbda94f10a3735c20b9877acafd79c2d4798ef34490d92a5351b6e1a50c0d325908cac7c7553f2eefc46008d78fcb1d5825729e51a583afb25adc98877c518827f70984853f02021f649c9a399df3662ee1a16a2f09f8abf7ef36c86db5b2876335d9f411bae907a3a9716c2cd2b0b152df1142a047490afaccbc667c7c836c2b2164e4bbb16e2eb2420246673ec314f60b6d508f2df69edac071e0c14fce4169e003fddd24d19f88350aa74cd4b83407a65259cce2180f8abe102b576a97180000f55522e7886de6ac5068f3c69a2e1011a2e82a207af1a7e7291971d6289e16679a6f95632fff7554b6cd3730229778390df836903f2bed47378c375a09ad10d82739938cd591d7555b6af88426fd2f97e65b5b68429e0d0e1f904b1fb6e76fd99f0763e8726e1de65da3ad8a8fdbfd86527149bfd7d03ccea00a567fc5af5fda32efb9312ab54c2645eef9794a5cc8d785ebd362b98087e86f6ab6b308c9084b861db16d5fce1a8286aed2902ce3e0aa11392795c115ef200d9339a27c78025c5931cf4c5245fb8bb6784b37bc96a535304209e8049ba96ed1efb6fbf8705777d3e2fbc5eff1e1820c3a291fd066f0837cdb124171ba99c46b6f030afb671c049c2b8bad41ae31943d6591dbd6993641dce1eecd1ccc254e92f37c6357dd73113832f8da138ca696cae8d591c359959879ad43b42a233250f5dbd8c95afb3f0f263957bdb60cf3ee72ff9cb08f525980dadd804b20ee3b62f69c0939e1c05df6ad66b44a337d151fc2ee066eea07cb0abb9800c1627258eedaf07e047d435f8160ac4aeb9832531d7ad0ab47b1b49a5e39736d4f710f6dcfd8bfa9be97f026c975fcd9620c48d0c5afef5639c335eba5dc10ae3f1d9f00047e00d92d6f06068fcfffd3a4b3a04b4ac4beeacdb009f4bbacc7fa238a0face7a0341ec11c56141edd584471e14374c623a113aa2ca8b66d9fcfe46235a4ca6f9f2762b09a373d9c34dd9f6410708ecdc27f5e3d2008900f0cd1112b4795d09dc55ec8f4042203444329c3bfc347a8072b843a6dc9f10ee7155efbfbcbae5fe8fe74af4a3c335a6ceff6a8b2d6cad321d50d57485d8b34100a1bfe7adde925c84581eb7d0b45250ed521ecec124c456361a6869d60a56f4b4d27b4653ab9eec78a11377c760c287e966c1f62af137658ae5710f784922b7b584210255c91dcd60919c88765e06dc0a71f4ea149b978802f670c842bb8714507c4527feb8e8c6d04e211258a3f3169fd4c9d494927a870f426497a7c35864a756035d18907ddff5ba21b28304749c6dd97c7d2ddffd16a104dfcc2be28989e4828b7855f5d28de4d422640a17b1b1110931d69f9a89eb49192ae09186fa5f4c4e9a606e8cbbcf89a637c67bde33d5b617184ade0717c86ec5822d5a921316147b02f1de57769da90b5758f365f1f9ee178a7b12c6a7ec7d20b96df46c5286c2d3ca6cdc71e7ca8d242e38d946419a5d70e40c11fd001005360cb488b6a627b11b961ad6de92f9ed95c9adcc85064f356aaf7d88edeb6c5b828ed330a67039ee0c2ddada83779bc691f95b4c1b12319192a1c0bf912dec74a16706d814a22eb52d89e0793f624a5794100084f9911ae10caf0c236a9097def4c35d7d247adf097c8534b84945ded29f0cad2dd4a6c64f6ead0ff4e63329276dca622a33e24f36b2854383e3ad4bb592ea2037b260ef5fb8bf44be57260fbdbcdf8ea042620c3ba8a9bdf5de2f26e978a7e38f75356e0ac763e0ac7cfc47b08d54e566b39777851460f98950aeed1327068c37b4a3bb14bbb722801e425ef41ae1359e3acf4b085ae95dc1875e180d9d6a64a1403321a2b410e89af86fdfc6d48859d9d887b4211af5ca2b3f21dcf8a41372de7812ac1b17599b2b9313a087daae2abda0fa02019f8442b65eb47c1b211f41ac04d157e5e284ba2628baefe816b3352592005df40167423b808a5ad37d6843b11f915ac7cb1cddfb22555b01da8eff485be8dc07efb3df7788defa1ead6d3956eaa60a04594ee86e97ee9b417bea7827a2fe0daadb71b64f136725d2b6dd145b35514c8fd1f7dbc8b91db226f0d6fa5bd25a827b07b077b6f616eacac70fd6dbdc95a08aa30c0e8c42b07bd79c51200b655ec0080eeb910669a6509cd9e128cda8943cc3b595e031be0976264ebebd8b42df8ba1e7c64663757f9569f6b9ceedd5e26deec207540bfbef9a9d71ab4cdc60b99b651fda468e0c317ceb579db7b1dff32e2f5278450b119742832c2ee3e270037675704451ad67c093ccb21079baad32d6f7d83e7eec00e6a31e7735fd1ca9229f315b72f47c522f3b86c02c111d79740236aee0710bb37ec7cd23fd46e2491712ca71b528c6c0488998f8a959011ed428a009a93b3df2c5e39874c5f6909feb523daf549e078f08dfb2fb9d2a4acc70dbfab0bb4c18aeab317e0ce84858782431266dd6c5fe0a49120c17a35afdcbf372615580e843decded8dbfd1a9fe84b54a7518ea225e3567e4e0602e28130845bf855ed5c02432df831d675a31cd9b76d16e19b4c9274825907c68a2df0c5f658478f83c8607ec3e3fede46c8841f7cd315df29240671bde0e792cf15e5172036c39953c738189e0501d8400b4643dd75db7e01af2428512b8f8fd47da8fbf36c0da34342f6d21308404bfa4a87c6ff37cc57ffbd7c2aa715e5d5fb08caa0a04699ab1df37839961ff4660cd6421471622c6538c35b66560099ee00e42ea99e2f5cee1a9de2eeb5d74a6d524c48001c498c1b27a103e1ef82a469e383e09df841066907dae497df064e54a623ee6ba505de9df5fb2453bb75b0451942363eed0397fb650b4319e6b529791fd65f39ebdd7369e9a06f63fad65f531d1dd5e68d2c2638de7b52fcbf0ee2ed252a6caae3a10cb1b12abc9b13ebfd7cb59cc18eca2fe029ff393254880641f093a4341f27e83c1585f54859ab0ecaadcc0e0e9ad603d0d1d63c1be3d236b2790132e1231f815f7656fbd1527420a9d63adb9ac53237cc8f7ec01fd7aed697fa5564c09cd7d48427e4d7fd1930f09139e6439860b71cd05e6613c9af931d1363a8b13988afdd690ada9f6cdd769d9b58b2185752a84273c8c4a62a3de95fc99d655296636ff603b5317b1598204f4498668cc4ec036835cd8135994f31ad5bf74b299f2799498d3b334a6799e21061839f47b049fb33aad7f5b0e03ffe5e96575a41471b74dbe95bb9398e867d602c7edf448c7a013dc6fdac16d6b6456883a31939ad1c140b9716794287f5983797031c8c9979994a631673a1f9e9ae1505e9f9b592fa6f87479d1a5370f541eab4ff11694ba9390311a51d43aa7c7a07a77134ecc7bcfeb507ed4874600e11ef64843c044608b572ba6cf39fb1af8671bfd4e8473fc27241313793767a375270fafdcfadec918e1e587456b5a6323159da716ed058d5d393e89ec58469bc6bd5975ab3006410a724aa7cf58604de8b6f5f79d3a32ea714cdb4ff6df717317ddf4ebc18fee296d131e3e15f4aafa4fa9c28e3c283451501f1ee54fa2c577b9b0be908c68252495155d0ad4d8d730b35ab24b4f95735570d186480644c21ea43e7224d2a8c2348ef3f3f30071b225105b810bdf9e7e8041311d31822a55140ff1b140aa3a877582f47c60841d8e685f474a410cd32051eaae30b4e40308ba53a930f37343e9d4607633614c9174a02f813e344d6e4fd965327de252a4fc4414e5fbd0e23095cf7b523ac7453d7099d254efcb61b778fd469b06ddaee366e0453eac104ef03cda52236283b65e2f82e644071108feec9736789c401c2bc1f034f8dba411502dd95504a074274d0ddfcc7f528234b9f302b749f5987fccdce2f1cd855f28e6399ce964ce6a42cff7b6f9fcf4be91ab87402ecbb88fa21cdeb9780e30fa9dafef916d55db6bbb09d784adfa1d28e8e8a80d653eb8fa8f8b61d0c02a22abf1912718cba389f36911625df76ac346d6d4b531512f386d088bac01bfb5dc6d112a6885f895d0fc09fd34207c0a17c572287032d0ef4d7f65230fc7eab3e911e60cd15602f0277a3d290b4b389ee1d5cb824fb38ce0d4fd50f472300679a3c744f50808eb714def74a52839baf99883da05342ffffc0cf66d0c032eac98f9db7bccb84d2052c5f319d0fb87dcb36a370ced451f5ae867c36d37b685936e27fe63a5780f3ce1a1cdde40753b54dd29f25fc0bafebfeb0410394afceedec0d74de46bc2c24fa591557756365609fb5e4143028d1091d038fcb3b8baa6e44359e4104ca011cfd648839ee6c44abe89226ea463796a3958cd8618c24f3d1c7ef8f656ddfaaed1c3b6d572bb8ca126426c13a6a3926848c64a8702f532958bfc06bc3e673a46f6c5d3445487f8d37a4f0d2c774cc2c5e987ed7e66c7c6893b59ed4084b58981d1f51ac38254b3db20ad952dd16989423fdb6c2f1f2938a5aa0c737d841f5e8227925779148675eb14a50f670481b71d5adfdc445b93e891642a3d55c78f41f1ba1211deca2cd33c5b61e10c91b2da57b2648073f30e54a8b175f740377230aaf275776d5c2f1e9c083c7b1efb591d1fa103c4ab3403f07134980e6bcccb3fd78a331a93d8dc2fc174bfc59ab0ee85222fb760e3579d76f3dc63ec13e29b55562e502006f00c4cabb655dafb760d443145be4e5f0b2da6e5ac8451fa13c88ef206b1ef96e749350239a173f45c0541f56e2af8b8c00f4df497e7f88a3a257017a4e27bd39ecb7397225a8119976b65f8a32d082193732cc2283cfcb58d012688e7324e7611bc00fb535f459843987ec5ee7e023d2560649b5904a1406a9a6ca4cb41ae5e8f921a638430953a15032970b8d410e013f2b13e930e58460b7dc9ad8812aa59b3ca91fec743ffca032107f6d73049352014860798f74f27e035c6a227032d0c29455de4b0736c17308e255786803242d472f0fbc1af3bc64d5761c404e010eeb92914006ead2c22b3da3293e39caf87bc7a100901c9de914fdaba2426e2f9ebc0b5b8f15bf2a8d1a7788269d52195dab98513801bd3ae5d71bf179948a4233de8d29b87ba0a29e8d71b853f2e9cd1179b793ad6338e448e86db4aea2f76aeeadbcb7027609d6e7cb1c517af2afc0a5ac9f326af4ce39dfc3605721af9438f54e8e67e903085e502a2f4594622418b7f692c3ff6f17073616073561b9430cf19801b5026549340d6bbf46da234c8ea7e2f6bd59b3166135f56871cda70d570a7efb3741e566d219233ae6a85cb2591646356da9c748908bb1805dc97b1641331285bdabac4860ad262f4b7112db9e8821971bd34a66dc239ea6f4ad98a26e1869aa3e5874752ed0f0c7152172e9c4fbca0b1b138efe746c5dbb382133fb1999e6b50a8fbdbd0df3389993c897f1437d639aec63906d53a3d9c086c3cfb62d7cdb16034b6043a7dd82e34454f4ee861e95d1d0affd92c44f4d26acf5d2fb3756bb4aed69bac61535865476247e1d8de5e5dc94560aaf1bb2b53c430278a735e178355438f734fcf8433c70cba025fb05ad473826298ff37034c9c36286c625db81ade2e8c417570742cece5463f90d5021fa74da99fdff2e01c2743dd9573137737f54f75787c66c1bd435f0f9eceb534c805f3f4712b138ace81c993a56220d1c55f7ae1b5cdba94e04afb19f9fa8fc49d3826d92d9bcfa34945902e97f107a3e833c872e97b2fa4724cfbecd176d6930a6f7e2d89f5bf40ef04511ac1e4bcd82d16c6ec99a13a4796de3957428de1f914284651de5b1483dba6bd877385f22b77e3e586facc9f113c89eb89c4d05d68e6754cb46bde11e2deb709b627a \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/mod.rs b/orchestrator/crates/orchestrator/src/tests/jobs/mod.rs new file mode 100644 index 000000000..c34fe0ffa --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/mod.rs @@ -0,0 +1,761 @@ +use std::collections::HashMap; +use std::sync::Arc; +use std::time::Duration; + +use mockall::predicate::eq; +use mongodb::bson::doc; +use omniqueue::QueueError; +use rstest::rstest; +use tokio::time::sleep; +use uuid::Uuid; + +use super::database::build_job_item; +use crate::jobs::constants::{ + JOB_METADATA_FAILURE_REASON, JOB_PROCESS_ATTEMPT_METADATA_KEY, JOB_VERIFICATION_ATTEMPT_METADATA_KEY, +}; +use crate::jobs::job_handler_factory::mock_factory; +use crate::jobs::types::{ExternalId, JobItem, JobStatus, JobType, JobVerificationStatus}; +use crate::jobs::{ + create_job, handle_job_failure, increment_key_in_metadata, process_job, verify_job, Job, JobError, MockJob, +}; +use crate::queue::job_queue::QueueNameForJobType; +use crate::queue::QueueType; +use crate::tests::common::MessagePayloadType; +use crate::tests::config::{ConfigType, TestConfigBuilder}; + +#[cfg(test)] +pub mod da_job; + +#[cfg(test)] +pub mod proving_job; + +#[cfg(test)] +pub mod state_update_job; + +#[cfg(test)] +pub mod snos_job; + +use assert_matches::assert_matches; +use chrono::{SubsecRound, Utc}; + +/// Tests `create_job` function when job is not existing in the db. +#[rstest] +#[tokio::test] +async fn create_job_job_does_not_exists_in_db_works() { + let job_item = build_job_item_by_type_and_status(JobType::SnosRun, JobStatus::Created, "0".to_string()); + let mut job_handler = MockJob::new(); + + // Adding expectation for creation of new job. + let job_item_clone = job_item.clone(); + job_handler.expect_create_job().times(1).returning(move |_, _, _| Ok(job_item_clone.clone())); + + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + // Mocking the `get_job_handler` call in create_job function. + let job_handler: Arc> = Arc::new(Box::new(job_handler)); + let ctx = mock_factory::get_job_handler_context(); + ctx.expect().times(1).with(eq(JobType::SnosRun)).return_once(move |_| Arc::clone(&job_handler)); + + assert!(create_job(JobType::SnosRun, "0".to_string(), HashMap::new(), services.config.clone()).await.is_ok()); + + let mut hashmap: HashMap = HashMap::new(); + hashmap.insert(JOB_PROCESS_ATTEMPT_METADATA_KEY.to_string(), "0".to_string()); + hashmap.insert(JOB_VERIFICATION_ATTEMPT_METADATA_KEY.to_string(), "0".to_string()); + + // Db checks. + let job_in_db = services.config.database().get_job_by_id(job_item.id).await.unwrap().unwrap(); + assert_eq!(job_in_db.id, job_item.id); + assert_eq!(job_in_db.internal_id, job_item.internal_id); + assert_eq!(job_in_db.metadata, hashmap); + + // Waiting for 5 secs for message to be passed into the queue + sleep(Duration::from_secs(5)).await; + + // Queue checks. + let consumed_messages = + services.config.queue().consume_message_from_queue(job_item.job_type.process_queue_name()).await.unwrap(); + let consumed_message_payload: MessagePayloadType = consumed_messages.payload_serde_json().unwrap().unwrap(); + assert_eq!(consumed_message_payload.id, job_item.id); +} + +/// Tests `create_job` function when job is already existing in the db. +#[rstest] +#[tokio::test] +async fn create_job_job_exists_in_db_works() { + let job_item = build_job_item_by_type_and_status(JobType::ProofCreation, JobStatus::Created, "0".to_string()); + + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + let database_client = services.config.database(); + database_client.create_job(job_item.clone()).await.unwrap(); + + assert!(create_job(JobType::ProofCreation, "0".to_string(), HashMap::new(), services.config.clone()).await.is_ok()); + // There should be only 1 job in the db + let jobs_in_db = database_client.get_jobs_by_statuses(vec![JobStatus::Created], None).await.unwrap(); + assert_eq!(jobs_in_db.len(), 1); + + // Waiting for 5 secs for message to be passed into the queue + sleep(Duration::from_secs(5)).await; + + // Queue checks. + let consumed_messages = + services.config.queue().consume_message_from_queue(job_item.job_type.process_queue_name()).await.unwrap_err(); + assert_matches!(consumed_messages, QueueError::NoData); +} + +/// Tests `create_job` function when job handler is not implemented in the `get_job_handler` +/// This test should fail as job handler is not implemented in the `factory.rs` +#[rstest] +#[should_panic(expected = "Job type not implemented yet.")] +#[tokio::test] +async fn create_job_job_handler_is_not_implemented_panics() { + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + // Mocking the `get_job_handler` call in create_job function. + let ctx = mock_factory::get_job_handler_context(); + ctx.expect().times(1).returning(|_| panic!("Job type not implemented yet.")); + + let job_type = JobType::ProofCreation; + + assert!(create_job(job_type.clone(), "0".to_string(), HashMap::new(), services.config.clone()).await.is_err()); + + // Waiting for 5 secs for message to be passed into the queue + sleep(Duration::from_secs(5)).await; + + // Queue checks. + let consumed_messages = + services.config.queue().consume_message_from_queue(job_type.process_queue_name()).await.unwrap_err(); + assert_matches!(consumed_messages, QueueError::NoData); +} + +/// Tests `process_job` function when job is already existing in the db and job status is either +/// `Created` or `VerificationFailed`. +#[rstest] +#[case(JobType::SnosRun, JobStatus::Created)] +#[case(JobType::DataSubmission, JobStatus::VerificationFailed)] +#[tokio::test] +async fn process_job_with_job_exists_in_db_and_valid_job_processing_status_works( + #[case] job_type: JobType, + #[case] job_status: JobStatus, +) { + let job_item = build_job_item_by_type_and_status(job_type.clone(), job_status.clone(), "1".to_string()); + + // Building config + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + let database_client = services.config.database(); + + let mut job_handler = MockJob::new(); + + // Creating job in database + database_client.create_job(job_item.clone()).await.unwrap(); + // Expecting process job function in job processor to return the external ID. + job_handler.expect_process_job().times(1).returning(move |_, _| Ok("0xbeef".to_string())); + job_handler.expect_verification_polling_delay_seconds().return_const(1u64); + + // Mocking the `get_job_handler` call in create_job function. + let job_handler: Arc> = Arc::new(Box::new(job_handler)); + let ctx = mock_factory::get_job_handler_context(); + ctx.expect().times(1).with(eq(job_type.clone())).returning(move |_| Arc::clone(&job_handler)); + + assert!(process_job(job_item.id, services.config.clone()).await.is_ok()); + // Getting the updated job. + let updated_job = database_client.get_job_by_id(job_item.id).await.unwrap().unwrap(); + // checking if job_status is updated in db + assert_eq!(updated_job.status, JobStatus::PendingVerification); + assert_eq!(updated_job.external_id, ExternalId::String(Box::from("0xbeef"))); + assert_eq!(updated_job.metadata.get(JOB_PROCESS_ATTEMPT_METADATA_KEY).unwrap(), "1"); + + // Waiting for 5 secs for message to be passed into the queue + sleep(Duration::from_secs(5)).await; + + // Queue checks + let consumed_messages = + services.config.queue().consume_message_from_queue(job_type.verify_queue_name()).await.unwrap(); + let consumed_message_payload: MessagePayloadType = consumed_messages.payload_serde_json().unwrap().unwrap(); + assert_eq!(consumed_message_payload.id, job_item.id); +} + +/// Tests `process_job` function when job handler panics during execution. +/// This test verifies that: +/// 1. The panic is properly caught and handled +/// 2. The job is moved to failed state +/// 3. Appropriate error message is set in the job metadata +#[rstest] +#[tokio::test] +async fn process_job_handles_panic() { + let job_item = build_job_item_by_type_and_status(JobType::SnosRun, JobStatus::Created, "1".to_string()); + + // Building config + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + let database_client = services.config.database(); + // Creating job in database + database_client.create_job(job_item.clone()).await.unwrap(); + + let mut job_handler = MockJob::new(); + // Setting up mock to panic when process_job is called + job_handler + .expect_process_job() + .times(1) + .returning(|_, _| -> Result { panic!("Simulated panic in process_job") }); + + // Mocking the `get_job_handler` call in process_job function + let job_handler: Arc> = Arc::new(Box::new(job_handler)); + let ctx = mock_factory::get_job_handler_context(); + ctx.expect().times(1).with(eq(JobType::SnosRun)).return_once(move |_| Arc::clone(&job_handler)); + + assert!(process_job(job_item.id, services.config.clone()).await.is_ok()); + + // DB checks - verify the job was moved to failed state + let job_in_db = database_client.get_job_by_id(job_item.id).await.unwrap().unwrap(); + assert_eq!(job_in_db.status, JobStatus::Failed); + assert!( + job_in_db + .metadata + .get(JOB_METADATA_FAILURE_REASON) + .unwrap() + .contains("Job handler panicked with message: Simulated panic in process_job") + ); +} + +/// Tests `process_job` function when job is already existing in the db and job status is not +/// `Created` or `VerificationFailed`. +#[rstest] +#[tokio::test] +async fn process_job_with_job_exists_in_db_with_invalid_job_processing_status_errors() { + // Creating a job with Completed status which is invalid processing. + let job_item = build_job_item_by_type_and_status(JobType::SnosRun, JobStatus::Completed, "1".to_string()); + + // building config + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + let database_client = services.config.database(); + + // creating job in database + database_client.create_job(job_item.clone()).await.unwrap(); + + assert!(process_job(job_item.id, services.config.clone()).await.is_err()); + + let job_in_db = database_client.get_job_by_id(job_item.id).await.unwrap().unwrap(); + // Job should be untouched in db. + assert_eq!(job_in_db, job_item); + + // Waiting for 5 secs for message to be passed into the queue + sleep(Duration::from_secs(5)).await; + + // Queue checks. + let consumed_messages = + services.config.queue().consume_message_from_queue(job_item.job_type.verify_queue_name()).await.unwrap_err(); + assert_matches!(consumed_messages, QueueError::NoData); +} + +/// Tests `process_job` function when job is not in the db +/// This test should fail +#[rstest] +#[tokio::test] +async fn process_job_job_does_not_exists_in_db_works() { + // Creating a valid job which is not existing in the db. + let job_item = build_job_item_by_type_and_status(JobType::SnosRun, JobStatus::Created, "1".to_string()); + + // building config + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + assert!(process_job(job_item.id, services.config.clone()).await.is_err()); + + // Waiting for 5 secs for message to be passed into the queue + sleep(Duration::from_secs(5)).await; + + // Queue checks. + let consumed_messages = + services.config.queue().consume_message_from_queue(job_item.job_type.verify_queue_name()).await.unwrap_err(); + assert_matches!(consumed_messages, QueueError::NoData); +} + +/// Tests `process_job` function when 2 workers try to process the same job. +/// This test should fail because once the job is locked for processing on one +/// worker it should not be accessed by another worker and should throw an error +/// when updating the job status. +#[rstest] +#[tokio::test] +async fn process_job_two_workers_process_same_job_works() { + let mut job_handler = MockJob::new(); + // Expecting process job function in job processor to return the external ID. + job_handler.expect_process_job().times(1).returning(move |_, _| Ok("0xbeef".to_string())); + job_handler.expect_verification_polling_delay_seconds().return_const(1u64); + + // Mocking the `get_job_handler` call in create_job function. + let job_handler: Arc> = Arc::new(Box::new(job_handler)); + let ctx = mock_factory::get_job_handler_context(); + ctx.expect().times(1).with(eq(JobType::SnosRun)).returning(move |_| Arc::clone(&job_handler)); + + // building config + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + let db_client = services.config.database(); + + let job_item = build_job_item_by_type_and_status(JobType::SnosRun, JobStatus::Created, "1".to_string()); + + // Creating the job in the db + db_client.create_job(job_item.clone()).await.unwrap(); + + let config_1 = services.config.clone(); + let config_2 = services.config.clone(); + + // Simulating the two workers, Uuid has in-built copy trait + let worker_1 = tokio::spawn(async move { process_job(job_item.id, config_1).await }); + let worker_2 = tokio::spawn(async move { process_job(job_item.id, config_2).await }); + + // waiting for workers to complete the processing + let (result_1, result_2) = tokio::join!(worker_1, worker_2); + + assert_ne!( + result_1.unwrap().is_ok(), + result_2.unwrap().is_ok(), + "One worker should succeed and the other should fail" + ); + + // Waiting for 5 secs for job to be updated in the db + sleep(Duration::from_secs(5)).await; + + let final_job_in_db = db_client.get_job_by_id(job_item.id).await.unwrap().unwrap(); + assert_eq!(final_job_in_db.status, JobStatus::PendingVerification); +} + +/// Tests `process_job` function when the job handler returns an error. +/// The job should be moved to the failed status. +#[rstest] +#[tokio::test] +async fn process_job_job_handler_returns_error_works() { + let mut job_handler = MockJob::new(); + // Expecting process job function in job processor to return the external ID. + let failure_reason = "Failed to process job"; + job_handler + .expect_process_job() + .times(1) + .returning(move |_, _| Err(JobError::Other(failure_reason.to_string().into()))); + job_handler.expect_verification_polling_delay_seconds().return_const(1u64); + + // Mocking the `get_job_handler` call in create_job function. + let job_handler: Arc> = Arc::new(Box::new(job_handler)); + let ctx = mock_factory::get_job_handler_context(); + ctx.expect().times(1).with(eq(JobType::SnosRun)).returning(move |_| Arc::clone(&job_handler)); + + // building config + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + let db_client = services.config.database(); + + let job_item = build_job_item_by_type_and_status(JobType::SnosRun, JobStatus::Created, "1".to_string()); + + // Creating the job in the db + db_client.create_job(job_item.clone()).await.unwrap(); + + assert!(process_job(job_item.id, services.config.clone()).await.is_ok()); + + let final_job_in_db = db_client.get_job_by_id(job_item.id).await.unwrap().unwrap(); + assert_eq!(final_job_in_db.status, JobStatus::Failed); + assert!(final_job_in_db.metadata.get(JOB_METADATA_FAILURE_REASON).unwrap().to_string().contains(failure_reason)); +} + +/// Tests `verify_job` function when job is having expected status +/// and returns a `Verified` verification status. +#[rstest] +#[tokio::test] +async fn verify_job_with_verified_status_works() { + let job_item = + build_job_item_by_type_and_status(JobType::DataSubmission, JobStatus::PendingVerification, "1".to_string()); + + // building config + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + let database_client = services.config.database(); + let mut job_handler = MockJob::new(); + + // creating job in database + database_client.create_job(job_item.clone()).await.unwrap(); + // expecting process job function in job processor to return the external ID + job_handler.expect_verify_job().times(1).returning(move |_, _| Ok(JobVerificationStatus::Verified)); + job_handler.expect_max_process_attempts().returning(move || 2u64); + + let job_handler: Arc> = Arc::new(Box::new(job_handler)); + let ctx = mock_factory::get_job_handler_context(); + // Mocking the `get_job_handler` call in create_job function. + ctx.expect().times(1).with(eq(JobType::DataSubmission)).returning(move |_| Arc::clone(&job_handler)); + + assert!(verify_job(job_item.id, services.config.clone()).await.is_ok()); + + // DB checks. + let updated_job = database_client.get_job_by_id(job_item.id).await.unwrap().unwrap(); + assert_eq!(updated_job.status, JobStatus::Completed); + + // Waiting for 5 secs for message to be passed into the queue + sleep(Duration::from_secs(5)).await; + + // Queue checks. + let consumed_messages_verification_queue = + services.config.queue().consume_message_from_queue(QueueType::DataSubmissionJobVerification).await.unwrap_err(); + assert_matches!(consumed_messages_verification_queue, QueueError::NoData); + let consumed_messages_processing_queue = + services.config.queue().consume_message_from_queue(QueueType::DataSubmissionJobProcessing).await.unwrap_err(); + assert_matches!(consumed_messages_processing_queue, QueueError::NoData); +} + +/// Tests `verify_job` function when job is having expected status +/// and returns a `Rejected` verification status. +#[rstest] +#[tokio::test] +async fn verify_job_with_rejected_status_adds_to_queue_works() { + let job_item = + build_job_item_by_type_and_status(JobType::DataSubmission, JobStatus::PendingVerification, "1".to_string()); + + // building config + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + let database_client = services.config.database(); + let mut job_handler = MockJob::new(); + + // creating job in database + database_client.create_job(job_item.clone()).await.unwrap(); + job_handler.expect_verify_job().times(1).returning(move |_, _| Ok(JobVerificationStatus::Rejected("".to_string()))); + job_handler.expect_max_process_attempts().returning(move || 2u64); + + let job_handler: Arc> = Arc::new(Box::new(job_handler)); + let ctx = mock_factory::get_job_handler_context(); + // Mocking the `get_job_handler` call in create_job function. + ctx.expect().times(1).with(eq(JobType::DataSubmission)).returning(move |_| Arc::clone(&job_handler)); + + assert!(verify_job(job_item.id, services.config.clone()).await.is_ok()); + + // DB checks. + let updated_job = database_client.get_job_by_id(job_item.id).await.unwrap().unwrap(); + assert_eq!(updated_job.status, JobStatus::VerificationFailed); + + // Waiting for 5 secs for message to be passed into the queue + sleep(Duration::from_secs(5)).await; + + // Queue checks. + let consumed_messages = + services.config.queue().consume_message_from_queue(QueueType::DataSubmissionJobProcessing).await.unwrap(); + let consumed_message_payload: MessagePayloadType = consumed_messages.payload_serde_json().unwrap().unwrap(); + assert_eq!(consumed_message_payload.id, job_item.id); +} + +/// Tests `verify_job` function when job is having expected status +/// and returns a `Rejected` verification status but doesn't add +/// the job to process queue because of maximum attempts reached. +#[rstest] +#[tokio::test] +async fn verify_job_with_rejected_status_works() { + let mut job_item = + build_job_item_by_type_and_status(JobType::DataSubmission, JobStatus::PendingVerification, "1".to_string()); + + // increasing JOB_VERIFICATION_ATTEMPT_METADATA_KEY to simulate max. attempts reached. + let metadata = increment_key_in_metadata(&job_item.metadata, JOB_PROCESS_ATTEMPT_METADATA_KEY).unwrap(); + job_item.metadata = metadata; + + // building config + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + let database_client = services.config.database(); + let mut job_handler = MockJob::new(); + + // creating job in database + database_client.create_job(job_item.clone()).await.unwrap(); + // expecting process job function in job processor to return the external ID + job_handler.expect_verify_job().times(1).returning(move |_, _| Ok(JobVerificationStatus::Rejected("".to_string()))); + job_handler.expect_max_process_attempts().returning(move || 1u64); + + let job_handler: Arc> = Arc::new(Box::new(job_handler)); + let ctx = mock_factory::get_job_handler_context(); + // Mocking the `get_job_handler` call in create_job function. + ctx.expect().times(1).with(eq(JobType::DataSubmission)).returning(move |_| Arc::clone(&job_handler)); + + assert!(verify_job(job_item.id, services.config.clone()).await.is_ok()); + + // DB checks. + let updated_job = database_client.get_job_by_id(job_item.id).await.unwrap().unwrap(); + assert_eq!(updated_job.status, JobStatus::Failed); + assert_eq!(updated_job.metadata.get(JOB_PROCESS_ATTEMPT_METADATA_KEY).unwrap(), "1"); + + // Waiting for 5 secs for message to be passed into the queue + sleep(Duration::from_secs(5)).await; + + // Queue checks. + let consumed_messages_processing_queue = + services.config.queue().consume_message_from_queue(job_item.job_type.process_queue_name()).await.unwrap_err(); + assert_matches!(consumed_messages_processing_queue, QueueError::NoData); +} + +/// Tests `verify_job` function when job is having expected status +/// and returns a `Pending` verification status. +#[rstest] +#[tokio::test] +async fn verify_job_with_pending_status_adds_to_queue_works() { + let job_item = + build_job_item_by_type_and_status(JobType::DataSubmission, JobStatus::PendingVerification, "1".to_string()); + + // building config + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + let database_client = services.config.database(); + let mut job_handler = MockJob::new(); + + // creating job in database + database_client.create_job(job_item.clone()).await.unwrap(); + // expecting process job function in job processor to return the external ID + job_handler.expect_verify_job().times(1).returning(move |_, _| Ok(JobVerificationStatus::Pending)); + job_handler.expect_max_verification_attempts().returning(move || 2u64); + job_handler.expect_verification_polling_delay_seconds().returning(move || 2u64); + + let job_handler: Arc> = Arc::new(Box::new(job_handler)); + let ctx = mock_factory::get_job_handler_context(); + // Mocking the `get_job_handler` call in create_job function. + ctx.expect().times(1).with(eq(JobType::DataSubmission)).returning(move |_| Arc::clone(&job_handler)); + + assert!(verify_job(job_item.id, services.config.clone()).await.is_ok()); + + // DB checks. + let updated_job = database_client.get_job_by_id(job_item.id).await.unwrap().unwrap(); + assert_eq!(updated_job.metadata.get(JOB_VERIFICATION_ATTEMPT_METADATA_KEY).unwrap(), "1"); + assert_eq!(updated_job.status, JobStatus::PendingVerification); + + // Waiting for 5 secs for message to be passed into the queue + sleep(Duration::from_secs(5)).await; + + // Queue checks + let consumed_messages = + services.config.queue().consume_message_from_queue(job_item.job_type.verify_queue_name()).await.unwrap(); + let consumed_message_payload: MessagePayloadType = consumed_messages.payload_serde_json().unwrap().unwrap(); + assert_eq!(consumed_message_payload.id, job_item.id); +} + +/// Tests `verify_job` function when job is having expected status +/// and returns a `Pending` verification status but doesn't add +/// the job to process queue because of maximum attempts reached. +#[rstest] +#[tokio::test] +async fn verify_job_with_pending_status_works() { + let mut job_item = + build_job_item_by_type_and_status(JobType::DataSubmission, JobStatus::PendingVerification, "1".to_string()); + + // increasing JOB_VERIFICATION_ATTEMPT_METADATA_KEY to simulate max. attempts reached. + let metadata = increment_key_in_metadata(&job_item.metadata, JOB_VERIFICATION_ATTEMPT_METADATA_KEY).unwrap(); + job_item.metadata = metadata; + + // building config + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + let database_client = services.config.database(); + let mut job_handler = MockJob::new(); + + // creating job in database + database_client.create_job(job_item.clone()).await.unwrap(); + // expecting process job function in job processor to return the external ID + job_handler.expect_verify_job().times(1).returning(move |_, _| Ok(JobVerificationStatus::Pending)); + job_handler.expect_max_verification_attempts().returning(move || 1u64); + job_handler.expect_verification_polling_delay_seconds().returning(move || 2u64); + + let job_handler: Arc> = Arc::new(Box::new(job_handler)); + let ctx = mock_factory::get_job_handler_context(); + // Mocking the `get_job_handler` call in create_job function. + ctx.expect().times(1).with(eq(JobType::DataSubmission)).returning(move |_| Arc::clone(&job_handler)); + + assert!(verify_job(job_item.id, services.config.clone()).await.is_ok()); + + // DB checks. + let updated_job = database_client.get_job_by_id(job_item.id).await.unwrap().unwrap(); + assert_eq!(updated_job.status, JobStatus::VerificationTimeout); + assert_eq!(updated_job.metadata.get(JOB_VERIFICATION_ATTEMPT_METADATA_KEY).unwrap(), "1"); + + // Waiting for 5 secs for message to be passed into the queue + sleep(Duration::from_secs(5)).await; + + // Queue checks. + let consumed_messages_verification_queue = + services.config.queue().consume_message_from_queue(job_item.job_type.verify_queue_name()).await.unwrap_err(); + assert_matches!(consumed_messages_verification_queue, QueueError::NoData); +} + +fn build_job_item_by_type_and_status(job_type: JobType, job_status: JobStatus, internal_id: String) -> JobItem { + let mut hashmap: HashMap = HashMap::new(); + hashmap.insert(JOB_PROCESS_ATTEMPT_METADATA_KEY.to_string(), "0".to_string()); + hashmap.insert(JOB_VERIFICATION_ATTEMPT_METADATA_KEY.to_string(), "0".to_string()); + JobItem { + id: Uuid::new_v4(), + internal_id, + job_type, + status: job_status, + external_id: ExternalId::Number(0), + metadata: hashmap, + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + } +} + +#[rstest] +#[case(JobType::DataSubmission, JobStatus::Completed)] // code should panic here, how can completed move to dl queue ? +#[case(JobType::SnosRun, JobStatus::PendingVerification)] +#[case(JobType::ProofCreation, JobStatus::LockedForProcessing)] +#[case(JobType::ProofRegistration, JobStatus::Created)] +#[case(JobType::StateTransition, JobStatus::Completed)] +#[case(JobType::ProofCreation, JobStatus::VerificationTimeout)] +#[case(JobType::DataSubmission, JobStatus::VerificationFailed)] +#[tokio::test] +async fn handle_job_failure_with_failed_job_status_works(#[case] job_type: JobType, #[case] job_status: JobStatus) { + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + let database_client = services.config.database(); + let internal_id = 1; + + // create a job, with already available "last_job_status" + let mut job_expected = build_job_item(job_type.clone(), JobStatus::Failed, internal_id); + let mut job_metadata = job_expected.metadata.clone(); + job_metadata.insert("last_job_status".to_string(), job_status.to_string()); + job_expected.metadata.clone_from(&job_metadata); + + let job_id = job_expected.id; + + // feeding the job to DB + database_client.create_job(job_expected.clone()).await.unwrap(); + + // calling handle_job_failure + handle_job_failure(job_id, services.config.clone()).await.expect("handle_job_failure failed to run"); + + let job_fetched = + services.config.database().get_job_by_id(job_id).await.expect("Unable to fetch Job Data").unwrap(); + + assert_eq!(job_fetched, job_expected); +} + +#[rstest] +#[case::pending_verification(JobType::SnosRun, JobStatus::PendingVerification)] +#[case::verification_timeout(JobType::SnosRun, JobStatus::VerificationTimeout)] +#[tokio::test] +async fn handle_job_failure_with_correct_job_status_works(#[case] job_type: JobType, #[case] job_status: JobStatus) { + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + let database_client = services.config.database(); + let internal_id = 1; + + // create a job + let job = build_job_item(job_type.clone(), job_status.clone(), internal_id); + let job_id = job.id; + + // feeding the job to DB + database_client.create_job(job.clone()).await.unwrap(); + + // calling handle_job_failure + handle_job_failure(job_id, services.config.clone()).await.expect("handle_job_failure failed to run"); + + let job_fetched = + services.config.database().get_job_by_id(job_id).await.expect("Unable to fetch Job Data").unwrap(); + + // creating expected output + let mut job_expected = job.clone(); + let mut job_metadata = job_expected.metadata.clone(); + job_metadata.insert( + JOB_METADATA_FAILURE_REASON.to_string(), + format!("Received failure queue message for job with status: {}", job_status), + ); + job_expected.metadata.clone_from(&job_metadata); + job_expected.status = JobStatus::Failed; + job_expected.version = 1; + + assert_eq!(job_fetched, job_expected); +} + +#[rstest] +#[case(JobType::DataSubmission)] +#[tokio::test] +async fn handle_job_failure_job_status_completed_works(#[case] job_type: JobType) { + let job_status = JobStatus::Completed; + + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + let database_client = services.config.database(); + let internal_id = 1; + + // create a job + let job_expected = build_job_item(job_type.clone(), job_status.clone(), internal_id); + let job_id = job_expected.id; + + // feeding the job to DB + database_client.create_job(job_expected.clone()).await.unwrap(); + + // calling handle_job_failure + handle_job_failure(job_id, services.config.clone()) + .await + .expect("Test call to handle_job_failure should have passed."); + + // The completed job status on db is untouched. + let job_fetched = + services.config.database().get_job_by_id(job_id).await.expect("Unable to fetch Job Data").unwrap(); + + assert_eq!(job_fetched, job_expected); +} diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/proving_job/mod.rs b/orchestrator/crates/orchestrator/src/tests/jobs/proving_job/mod.rs new file mode 100644 index 000000000..162a0af3a --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/proving_job/mod.rs @@ -0,0 +1,106 @@ +use std::collections::HashMap; +use std::fs::File; +use std::io::Read; +use std::path::Path; + +use bytes::Bytes; +use chrono::{SubsecRound, Utc}; +use httpmock::prelude::*; +use mockall::predicate::eq; +use prover_client_interface::{MockProverClient, TaskStatus}; +use rstest::*; +use starknet::providers::jsonrpc::HttpTransport; +use starknet::providers::JsonRpcClient; +use url::Url; +use uuid::Uuid; + +use super::super::common::default_job_item; +use crate::constants::CAIRO_PIE_FILE_NAME; +use crate::data_storage::MockDataStorage; +use crate::jobs::constants::JOB_METADATA_SNOS_FACT; +use crate::jobs::proving_job::ProvingJob; +use crate::jobs::types::{JobItem, JobStatus, JobType}; +use crate::jobs::Job; +use crate::tests::config::TestConfigBuilder; + +#[rstest] +#[tokio::test] +async fn test_create_job() { + let services = TestConfigBuilder::new().build().await; + + let job = ProvingJob.create_job(services.config.clone(), String::from("0"), HashMap::new()).await; + assert!(job.is_ok()); + + let job = job.unwrap(); + + let job_type = job.job_type; + assert_eq!(job_type, JobType::ProofCreation, "job_type should be ProofCreation"); + assert!(!(job.id.is_nil()), "id should not be nil"); + assert_eq!(job.status, JobStatus::Created, "status should be Created"); + assert_eq!(job.version, 0_i32, "version should be 0"); + assert_eq!(job.external_id.unwrap_string().unwrap(), String::new(), "external_id should be empty string"); +} + +#[rstest] +#[tokio::test] +async fn test_verify_job(#[from(default_job_item)] mut job_item: JobItem) { + let mut prover_client = MockProverClient::new(); + prover_client.expect_get_task_status().times(1).returning(|_, _| Ok(TaskStatus::Succeeded)); + + let services = TestConfigBuilder::new().configure_prover_client(prover_client.into()).build().await; + + job_item.metadata.insert(JOB_METADATA_SNOS_FACT.into(), "fact".to_string()); + assert!(ProvingJob.verify_job(services.config, &mut job_item).await.is_ok()); +} + +#[rstest] +#[tokio::test] +async fn test_process_job() { + let server = MockServer::start(); + let mut prover_client = MockProverClient::new(); + + prover_client.expect_submit_task().times(1).returning(|_, _| Ok("task_id".to_string())); + let provider = JsonRpcClient::new(HttpTransport::new( + Url::parse(format!("http://localhost:{}", server.port()).as_str()).expect("Failed to parse URL"), + )); + + let mut file = + File::open(Path::new(&format!("{}/src/tests/artifacts/fibonacci.zip", env!("CARGO_MANIFEST_DIR")))).unwrap(); + let mut buffer = Vec::new(); + file.read_to_end(&mut buffer).unwrap(); + + let mut storage = MockDataStorage::new(); + let buffer_bytes = Bytes::from(buffer); + storage + .expect_get_data() + .with(eq(format!("{}/{}", "0", CAIRO_PIE_FILE_NAME))) + .return_once(move |_| Ok(buffer_bytes)); + + let services = TestConfigBuilder::new() + .configure_starknet_client(provider.into()) + .configure_prover_client(prover_client.into()) + .configure_storage_client(storage.into()) + .build() + .await; + + assert_eq!( + ProvingJob + .process_job( + services.config, + &mut JobItem { + id: Uuid::default(), + internal_id: "0".into(), + job_type: JobType::ProofCreation, + status: JobStatus::Created, + external_id: String::new().into(), + metadata: HashMap::new(), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0) + } + ) + .await + .unwrap(), + "task_id".to_string() + ); +} diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/snos_job/mod.rs b/orchestrator/crates/orchestrator/src/tests/jobs/snos_job/mod.rs new file mode 100644 index 000000000..8a48f86ec --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/snos_job/mod.rs @@ -0,0 +1,99 @@ +use std::collections::HashMap; +use std::sync::Arc; + +use cairo_vm::vm::runners::cairo_pie::CairoPie; +use chrono::{SubsecRound, Utc}; +use rstest::*; +use starknet_os::io::output::StarknetOsOutput; +use url::Url; +use uuid::Uuid; + +use crate::constants::{CAIRO_PIE_FILE_NAME, SNOS_OUTPUT_FILE_NAME}; +use crate::jobs::constants::JOB_METADATA_SNOS_BLOCK; +use crate::jobs::snos_job::SnosJob; +use crate::jobs::types::{JobItem, JobStatus, JobType, JobVerificationStatus}; +use crate::jobs::Job; +use crate::tests::common::default_job_item; +use crate::tests::config::{MockType, TestConfigBuilder}; +use crate::tests::jobs::ConfigType; + +#[rstest] +#[tokio::test] +async fn test_create_job() { + let services = TestConfigBuilder::new().build().await; + + let job = SnosJob.create_job(services.config.clone(), String::from("0"), HashMap::new()).await; + + assert!(job.is_ok()); + let job = job.unwrap(); + + let job_type = job.job_type; + assert_eq!(job_type, JobType::SnosRun, "job_type should be SnosRun"); + assert!(!(job.id.is_nil()), "id should not be nil"); + assert_eq!(job.status, JobStatus::Created, "status should be Created"); + assert_eq!(job.version, 0_i32, "version should be 0"); + assert_eq!(job.external_id.unwrap_string().unwrap(), String::new(), "external_id should be empty string"); +} + +#[rstest] +#[tokio::test] +async fn test_verify_job(#[from(default_job_item)] mut job_item: JobItem) { + let services = TestConfigBuilder::new().build().await; + let job_status = SnosJob.verify_job(services.config.clone(), &mut job_item).await; + + // Should always be [Verified] for the moment. + assert_eq!(job_status, Ok(JobVerificationStatus::Verified)); +} + +/// We have a private pathfinder node used to run the Snos [prove_block] function. +/// It must be set or the test below will be ignored, since the Snos cannot run +/// without a Pathinder node for the moment. +const SNOS_PATHFINDER_RPC_URL_ENV: &str = "MADARA_ORCHESTRATOR_RPC_FOR_SNOS"; + +#[rstest] +#[tokio::test(flavor = "multi_thread")] +async fn test_process_job() -> color_eyre::Result<()> { + let pathfinder_url: Url = match std::env::var(SNOS_PATHFINDER_RPC_URL_ENV) { + Ok(url) => url.parse()?, + Err(_) => { + println!("Ignoring test: {} environment variable is not set", SNOS_PATHFINDER_RPC_URL_ENV); + return Ok(()); + } + }; + + let services = TestConfigBuilder::new() + .configure_rpc_url(ConfigType::Mock(MockType::RpcUrl(pathfinder_url))) + .configure_storage_client(ConfigType::Actual) + .build() + .await; + + let storage_client = services.config.storage(); + + let mut job_item = JobItem { + id: Uuid::new_v4(), + internal_id: "1".into(), + job_type: JobType::SnosRun, + status: JobStatus::Created, + external_id: String::new().into(), + metadata: HashMap::from([(JOB_METADATA_SNOS_BLOCK.to_string(), "76793".to_string())]), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + }; + + let result = SnosJob.process_job(Arc::clone(&services.config), &mut job_item).await?; + + assert_eq!(result, "76793"); + + let cairo_pie_key = format!("76793/{}", CAIRO_PIE_FILE_NAME); + let snos_output_key = format!("76793/{}", SNOS_OUTPUT_FILE_NAME); + + let cairo_pie_data = storage_client.get_data(&cairo_pie_key).await?; + let snos_output_data = storage_client.get_data(&snos_output_key).await?; + + // assert that we can build back the Pie & the Snos output + let _ = CairoPie::from_bytes(&cairo_pie_data)?; + let _: StarknetOsOutput = serde_json::from_slice(&snos_output_data)?; + + Ok(()) +} diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/mod.rs b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/mod.rs new file mode 100644 index 000000000..1c0acf01d --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/mod.rs @@ -0,0 +1,379 @@ +use std::collections::HashMap; +use std::fs; +use std::fs::read_to_string; +use std::path::PathBuf; + +use assert_matches::assert_matches; +use bytes::Bytes; +use color_eyre::eyre::eyre; +use httpmock::prelude::*; +use lazy_static::lazy_static; +use mockall::predicate::{always, eq}; +use num_bigint::BigUint; +use rstest::*; +use settlement_client_interface::MockSettlementClient; +use starknet::providers::jsonrpc::HttpTransport; +use starknet::providers::JsonRpcClient; +use url::Url; + +use crate::constants::{BLOB_DATA_FILE_NAME, PROGRAM_OUTPUT_FILE_NAME, SNOS_OUTPUT_FILE_NAME}; +use crate::data_storage::MockDataStorage; +use crate::jobs::constants::{ + JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY, JOB_METADATA_STATE_UPDATE_FETCH_FROM_TESTS, + JOB_METADATA_STATE_UPDATE_LAST_FAILED_BLOCK_NO, JOB_PROCESS_ATTEMPT_METADATA_KEY, +}; +use crate::jobs::state_update_job::utils::hex_string_to_u8_vec; +use crate::jobs::state_update_job::{StateUpdateError, StateUpdateJob}; +use crate::jobs::types::{JobStatus, JobType}; +use crate::jobs::{Job, JobError}; +use crate::tests::common::default_job_item; +use crate::tests::config::{ConfigType, TestConfigBuilder}; + +lazy_static! { + pub static ref CURRENT_PATH: PathBuf = std::env::current_dir().expect("Failed to get Current Path"); +} + +pub const X_0_FILE_NAME: &str = "x_0.txt"; + +// ================= Exhaustive tests (with minimum mock) ================= + +#[rstest] +#[tokio::test] +async fn test_process_job_attempt_not_present_fails() { + let services = TestConfigBuilder::new().build().await; + + let mut job = default_job_item(); + + let state_update_job = StateUpdateJob {}; + let res = state_update_job.process_job(services.config, &mut job).await.unwrap_err(); + assert_eq!(res, JobError::StateUpdateJobError(StateUpdateError::AttemptNumberNotFound)); +} + +// TODO : make this test work +#[rstest] +#[case(None, String::from("651053,651054,651055"), 0)] +#[case(Some(651054), String::from("651053,651054,651055"), 1)] +#[tokio::test] +// #[ignore] +async fn test_process_job_works( + #[case] failed_block_number: Option, + #[case] blocks_to_process: String, + #[case] processing_start_index: u8, +) { + dotenvy::from_filename("../.env.test").expect("Failed to load the .env file"); + + // Mocking the settlement client. + let mut settlement_client = MockSettlementClient::new(); + + let block_numbers: Vec = parse_block_numbers(&blocks_to_process).unwrap(); + + // This must be the last block number and should be returned as an output from the process job. + let last_block_number = block_numbers[block_numbers.len() - 1]; + + // Adding expectations for each block number to be called by settlement client. + for block in block_numbers.iter().skip(processing_start_index as usize) { + // Getting the blob data from file. + let blob_data = fs::read_to_string( + CURRENT_PATH.join(format!("src/tests/jobs/state_update_job/test_data/{}/{}", block, BLOB_DATA_FILE_NAME)), + ) + .unwrap(); + + let blob_data_vec = vec![hex_string_to_u8_vec(&blob_data).unwrap()]; + + // Getting the program output data from file. + let program_output_data_vec = read_file_to_vec_u8_32( + CURRENT_PATH + .join(format!("src/tests/jobs/state_update_job/test_data/{}/{}", block, PROGRAM_OUTPUT_FILE_NAME)) + .to_str() + .unwrap(), + ) + .unwrap(); + + settlement_client + .expect_update_state_with_blobs() + .with(eq(program_output_data_vec), eq(blob_data_vec), always()) + .times(1) + .returning(|_, _, _| Ok("0xbeef".to_string())); + } + settlement_client.expect_get_last_settled_block().with().returning(move || Ok(651052)); + // Setting random nonce + settlement_client.expect_get_nonce().with().returning(move || Ok(2)); + + // Building a temp config that will be used by `fetch_blob_data_for_block` and + // `fetch_snos_for_block` functions while fetching the blob data from storage client. + let services = TestConfigBuilder::new() + .configure_storage_client(ConfigType::Actual) + .configure_settlement_client(settlement_client.into()) + .build() + .await; + + let storage_client = services.config.storage(); + + for block in block_numbers { + // Getting the blob data from file. + let blob_data_key = block.to_owned().to_string() + "/" + BLOB_DATA_FILE_NAME; + let blob_data = fs::read_to_string( + CURRENT_PATH.join(format!("src/tests/jobs/state_update_job/test_data/{}/{}", block, BLOB_DATA_FILE_NAME)), + ) + .unwrap(); + let blob_data_vec = hex_string_to_u8_vec(&blob_data).unwrap(); + + // Getting the snos data from file. + let snos_output_key = block.to_owned().to_string() + "/" + SNOS_OUTPUT_FILE_NAME; + let snos_output_data = fs::read_to_string( + CURRENT_PATH.join(format!("src/tests/jobs/state_update_job/test_data/{}/{}", block, SNOS_OUTPUT_FILE_NAME)), + ) + .unwrap(); + + // Getting the program output data from file. + let program_output_key = block.to_owned().to_string() + "/" + PROGRAM_OUTPUT_FILE_NAME; + let program_output_data = read_file_to_vec_u8_32( + CURRENT_PATH + .join(format!("src/tests/jobs/state_update_job/test_data/{}/{}", block, PROGRAM_OUTPUT_FILE_NAME)) + .to_str() + .unwrap(), + ) + .unwrap(); + let program_output_data_serialized = bincode::serialize(&program_output_data).unwrap(); + + storage_client.put_data(Bytes::from(snos_output_data), &snos_output_key).await.unwrap(); + storage_client.put_data(Bytes::from(blob_data_vec), &blob_data_key).await.unwrap(); + storage_client.put_data(Bytes::from(program_output_data_serialized), &program_output_key).await.unwrap(); + } + + // setting last failed block number as 651053. + // setting blocks yet to process as 651054 and 651055. + // here total blocks to process will be 3. + let mut metadata: HashMap = HashMap::new(); + metadata.insert(JOB_PROCESS_ATTEMPT_METADATA_KEY.to_string(), "0".to_string()); + if let Some(block_number) = failed_block_number { + metadata.insert(JOB_METADATA_STATE_UPDATE_LAST_FAILED_BLOCK_NO.to_string(), block_number.to_string()); + } + metadata.insert(JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY.to_string(), blocks_to_process); + + // creating a `JobItem` + let mut job = default_job_item(); + job.job_type = JobType::StateTransition; + job.metadata = metadata; + + let state_update_job = StateUpdateJob {}; + let res = state_update_job.process_job(services.config, &mut job).await.unwrap(); + assert_eq!(res, last_block_number.to_string()); +} + +// ==================== Mock Tests (Unit tests) =========================== + +#[rstest] +#[tokio::test] +async fn create_job_works() { + let services = TestConfigBuilder::new().build().await; + + let job = StateUpdateJob.create_job(services.config, String::from("0"), HashMap::default()).await; + assert!(job.is_ok()); + + let job = job.unwrap(); + let job_type = job.job_type; + + assert_eq!(job_type, JobType::StateTransition, "job_type should be StateTransition"); + assert!(!job.id.is_nil(), "id should not be nil"); + assert_eq!(job.status, JobStatus::Created, "status should be Created"); + assert_eq!(job.version, 0_i32, "version should be 0"); + assert_eq!(job.external_id.unwrap_string().unwrap(), String::new(), "external_id should be empty string"); +} + +#[rstest] +#[tokio::test] +async fn process_job_works_unit_test() { + let mut settlement_client = MockSettlementClient::new(); + let mut storage_client = MockDataStorage::new(); + + // Mock the latest block settled + settlement_client.expect_get_last_settled_block().returning(|| Ok(651052_u64)); + + // TODO: have tests for update_state_calldata, only kzg for now + let block_numbers = ["651053", "651054", "651055", "651056"]; + for block_no in block_numbers { + let _state_diff: Vec = load_state_diff_file(block_no.parse::().unwrap()).await; + + let snos_output_key = block_no.to_owned() + "/" + SNOS_OUTPUT_FILE_NAME; + let snos_output_data = fs::read_to_string( + CURRENT_PATH + .join(format!("src/tests/jobs/state_update_job/test_data/{}/{}", block_no, SNOS_OUTPUT_FILE_NAME)), + ) + .expect("Failed to read the snos output data json file"); + storage_client + .expect_get_data() + .with(eq(snos_output_key)) + .returning(move |_| Ok(Bytes::from(snos_output_data.clone()))); + + let blob_data_key = block_no.to_owned() + "/" + BLOB_DATA_FILE_NAME; + let blob_data = fs::read_to_string( + CURRENT_PATH + .join(format!("src/tests/jobs/state_update_job/test_data/{}/{}", block_no, BLOB_DATA_FILE_NAME)), + ) + .expect("Failed to read the blob data txt file"); + let blob_data_vec = hex_string_to_u8_vec(&blob_data).unwrap(); + let blob_data_vec_clone = blob_data_vec.clone(); + storage_client + .expect_get_data() + .with(eq(blob_data_key)) + .returning(move |_| Ok(Bytes::from(blob_data_vec.clone()))); + + let x_0_key = block_no.to_owned() + "/" + X_0_FILE_NAME; + let x_0 = fs::read_to_string( + CURRENT_PATH.join(format!("src/tests/jobs/state_update_job/test_data/{}/{}", block_no, X_0_FILE_NAME)), + ) + .expect("Failed to read the blob data txt file"); + storage_client.expect_get_data().with(eq(x_0_key)).returning(move |_| Ok(Bytes::from(x_0.clone()))); + + let program_output_key = block_no.to_owned() + "/" + PROGRAM_OUTPUT_FILE_NAME; + let program_output = read_file_to_vec_u8_32( + CURRENT_PATH + .join(format!("src/tests/jobs/state_update_job/test_data/{}/{}", block_no, PROGRAM_OUTPUT_FILE_NAME)) + .to_str() + .unwrap(), + ) + .unwrap(); + let program_output_clone = program_output.clone(); + storage_client + .expect_get_data() + .with(eq(program_output_key)) + .returning(move |_| Ok(Bytes::from(bincode::serialize(&program_output).unwrap()))); + + // let nonce = settlement_client.get_nonce().await.expect("Unable to fetch nonce for settlement + // client."); + settlement_client.expect_get_nonce().returning(|| Ok(1)); + + let deserialized_program_output: Vec<[u8; 32]> = + bincode::deserialize(&bincode::serialize(&program_output_clone).unwrap()).unwrap(); + + settlement_client + .expect_update_state_with_blobs() + .with(eq(deserialized_program_output), eq(vec![blob_data_vec_clone]), always()) + .returning(|_, _, _| Ok(String::from("0x5d17fac98d9454030426606019364f6e68d915b91f6210ef1e2628cd6987442"))); + } + + let services = TestConfigBuilder::new() + .configure_settlement_client(settlement_client.into()) + .configure_storage_client(storage_client.into()) + .build() + .await; + + let mut metadata: HashMap = HashMap::new(); + metadata.insert(String::from(JOB_METADATA_STATE_UPDATE_FETCH_FROM_TESTS), String::from("TRUE")); + metadata.insert(String::from(JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY), block_numbers.join(",")); + metadata.insert(String::from(JOB_PROCESS_ATTEMPT_METADATA_KEY), String::from("0")); + + let mut job = + StateUpdateJob.create_job(services.config.clone(), String::from("internal_id"), metadata).await.unwrap(); + assert_eq!(StateUpdateJob.process_job(services.config, &mut job).await.unwrap(), "651056".to_string()) +} + +#[rstest] +#[case(String::from("651052, 651054, 651051, 651056"), "numbers aren't sorted in increasing order")] +#[case(String::from("651052, 651052, 651052, 651052"), "Duplicated block numbers")] +#[case(String::from("a, 651054, b, 651056"), "settle list is not correctly formatted")] +#[case(String::from("651052, 651052, 651053, 651053"), "Duplicated block numbers")] +#[case(String::from(""), "settle list is not correctly formatted")] +#[tokio::test] +async fn process_job_invalid_inputs_errors(#[case] block_numbers_to_settle: String, #[case] expected_error: &str) { + let server = MockServer::start(); + let settlement_client = MockSettlementClient::new(); + + let provider = JsonRpcClient::new(HttpTransport::new( + Url::parse(format!("http://localhost:{}", server.port()).as_str()).expect("Failed to parse URL"), + )); + + let services = TestConfigBuilder::new() + .configure_settlement_client(settlement_client.into()) + .configure_starknet_client(provider.into()) + .build() + .await; + + let mut metadata: HashMap = HashMap::new(); + metadata.insert(String::from(JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY), block_numbers_to_settle); + metadata.insert(String::from(JOB_PROCESS_ATTEMPT_METADATA_KEY), String::from("0")); + + let mut job = + StateUpdateJob.create_job(services.config.clone(), String::from("internal_id"), metadata).await.unwrap(); + let status = StateUpdateJob.process_job(services.config, &mut job).await; + assert!(status.is_err()); + + if let Err(error) = status { + let error_message = format!("{}", error); + assert!( + error_message.contains(expected_error), + "Error message did not contain expected substring: {}", + expected_error + ); + } +} + +#[rstest] +#[tokio::test] +async fn process_job_invalid_input_gap_panics() { + let server = MockServer::start(); + let mut settlement_client = MockSettlementClient::new(); + + settlement_client.expect_get_last_settled_block().returning(|| Ok(4_u64)); + + let provider = JsonRpcClient::new(HttpTransport::new( + Url::parse(format!("http://localhost:{}", server.port()).as_str()).expect("Failed to parse URL"), + )); + + let services = TestConfigBuilder::new() + .configure_starknet_client(provider.into()) + .configure_settlement_client(settlement_client.into()) + .build() + .await; + + let mut metadata: HashMap = HashMap::new(); + metadata.insert(String::from(JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY), String::from("6, 7, 8")); + metadata.insert(String::from(JOB_PROCESS_ATTEMPT_METADATA_KEY), String::from("0")); + + let mut job = + StateUpdateJob.create_job(services.config.clone(), String::from("internal_id"), metadata).await.unwrap(); + let response = StateUpdateJob.process_job(services.config, &mut job).await; + + assert_matches!(response, + Err(e) => { + let err = StateUpdateError::GapBetweenFirstAndLastBlock; + let expected_error = JobError::StateUpdateJobError(err); + assert_eq!(e.to_string(), expected_error.to_string()); + } + ); +} + +// ==================== Utility functions =========================== + +async fn load_state_diff_file(block_no: u64) -> Vec { + let file_path = format!("src/tests/jobs/state_update_job/test_data/{}/{}", block_no, BLOB_DATA_FILE_NAME); + let file_data = fs::read_to_string(file_path).expect("Unable to read blob_data.txt").replace("0x", ""); + hex_string_to_u8_vec(&file_data).unwrap() +} + +fn parse_block_numbers(blocks_to_settle: &str) -> color_eyre::Result> { + let sanitized_blocks = blocks_to_settle.replace(' ', ""); + let block_numbers: Vec = sanitized_blocks + .split(',') + .map(|block_no| block_no.parse::()) + .collect::, _>>() + .map_err(|e| eyre!("Block numbers to settle list is not correctly formatted: {e}"))?; + Ok(block_numbers) +} + +fn read_file_to_vec_u8_32(filename: &str) -> std::io::Result> { + let content = read_to_string(filename)?; + let numbers: Vec = content.lines().filter_map(|line| line.parse().ok()).collect(); + + Ok(numbers + .into_iter() + .map(|num| { + let bytes = num.to_bytes_be(); + let mut array = [0u8; 32]; + let start = 32usize.saturating_sub(bytes.len()); + array[start..].copy_from_slice(&bytes); + array + }) + .collect()) +} diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/630872/blob_data.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/630872/blob_data.txt new file mode 100644 index 000000000..4cc833e74 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/630872/blob_data.txt @@ -0,0 +1 @@ +70a7f8fbac93666b6af18890f8cfbf659b7815948d27a6631d55e6920f43c6ae41ea84bd6df091e1d87cb357974e8ab1980abb3ad04ea751148709b6e10d84e14ba82298a6924aec387b1534d46c83b00480f3e5b260c0e8741a9c81f0c723bf1099801096dd7ef49faffaca915d18bff674fe04edab90ead0b7d3a25e5fa32269d47c2c5f9a749e9d39011405687fd5ddb05511863959baa6436cefc107b6ab51e7c79d8060ed5ddafafe19643fe0793fb31340dfd0e6ca716cf4228cb72943328907be4f824ffa6c65b0933f1a19c5b47408bca3b8d02b8f150e4f8e7fb7560484b488732d0e2c4cd8437d1d024e6f812417e83f0db959d4d0c688e4cf811a6a54adc9ce10049ec3afe788f55206949ecd64247b2ac724a8ba29cc588e2cd4714f128a5c9e2ae66ca645bebe72d1df7103387186d0cc2b417cbca5e277578d1a060c69bf0019da98be23ec01d77340507f8f31a18fae5a8231674616c686a72836aa40004e5553e3942aaed35f872643096e3ff392fc1a4393bc6053782bf0472004e924bd7074e069437d9ae35740406f56ffdd909b4354d4b8d7a5246e3f71796307b732497b34af9bc91d9c484d61a168cce2f896af3c7d831eb346075e699fd9edf5260e29deb4175b7f4227af4f874fc864a2cc27a1815852d837dc9e507469cc5327b2488f6fc33e659ce97b322d506b9a567262f73e6232a883e2701b3346a5db4d7872c01f3ac90021ec2b24a1fe53e45a6e2f8c612c6a88e764b30b42c7026df60c15ca042d813fbe671aedce864e6d78ca1d82f5b58fd5b8ca9d66d83c0484751c970ba7bf9d80313703f610957e561d8727d097a9f4f706365913686c9b9ef0543c2db745e9123ca3a6f9568c4a57b63ea932d58be0bdbe759e6c480af1ae3526b51b4e872ca23bc3e3482b6b070b1b055ecb744dccec277d4a06994117ab604e7e7699ae655e9680dde9c343c503db6bdd1dd0eebadae7db9920f79f831fad0aab22881ff70392b4436a57689b1aa3bb0b225e1859bc4bbeb1605274d49b670de57fc3be35ddf84f4cc5cc146743d9d3d46d76c124f8cccd026495872b55d3631110018ff810e68851fff88addbc4667f3d0537a98d0012b5942d8e3de1aeaf8e18642bedeece687ff946aa8f9a80f5631739b5426ee02291b706126c870c5a9b00ea6cbdc8d8bcc39763c8105a1b54246e94bd8797f9542c936d2a0bf3a589c82f74439ab6d5a0dced8b0ca0f6e90bea314f311395869e6d472a0e05f8e26408a5a7fe04bdfdd7041cd0d0e200e029de1452683a71cb930300e0b8b4ea7929100f555350f86181d5ea8a277b861aa0ce8bf2b6d025ca4dde11b3c6b9cdaacd8447104c689f072ccd3a8520e7119bc3a168f59cce0809e90f2506ad3940ec65ece052e90a873b4ed196208bdc71e898b70de49e6959f0f22384fd49ca2e351666f4bdba6a2d2dec12ad602a7a143643df701aed364a9ae6bd603dc80932edc2e1db64adf00b8ec9f3026779a1828674d879eedfb875ef734745209401ff54fa61e5876693c76f4bdd9cba146ac77fc7abf7dd37cd5d758d60b0f5ba42995b3eb98c88c21993ef6c1f6d2608f2ebbbb6e4450c6c46e18fff3a410cd928d4b187ce689ebf9699a85b3c7f1496364196288695151b6bc98b29b9631eda8a6e6520f628b6b17f37d1a3c4354bcc6c31a9ff1c3bce10ea46eabe5df1bb386bf98fff42ab413aac7cda13b4ebd35d9a8cf497f3479dbff00ce3401156f68e6fb5bf1da565bc6865fbf6ebcc42055378ad3716a3c405e137acee435da06f93e3195026a973ec5e8d20969fbc4e9e07ace02828fd362ad9647a0d1c2e5720cb99c5148dab43cae3cb6c4362a98a86c8d07d2704e3bdb8bb66334b8bc4412bb4dc9809898e4c435aa8f1694e1c7dc08d5393f81931fc4c0e8923c5a0c837133fa9224c652b586da11c84c44450e2065d579cc879c44bae83c9855a7ab8e3d61cb773f45074f2324d4cec1443488bb338ef78f55c06ea351cc63a2ea6a330675255661ed43c15b60168a2d0fe63415fa970de9cd3677579346f1a6eb5d144ffeeda8a5a3380d729f27bd0de6718ac9fe4a010fbdb1f6aa554b88309c543c5e3ad51e852f2b8a9c3a1751cc5b923859348751a0364f1b9a54da9615ee10e51aab58d737efbc6812042921e319e19b1267123985dcbf8a99436f1c7301b1d55cea2d13bba342bc31d713d1430e59d86c1bf930a48bfeff3b5069d504edc3036011c9091acaf8377f7e94c7dc99836459ba15aa8573a46fc6234fac0545d3f14a5de1d4d5d3085740747a141176be33cb0fbf6f03dd40edd0f80a1be207a1ce2a1c1f40d616d26d557e14f5e3285ebebdace18707189b2eb835491758f01d1a1863bcee25922d5622e224a18630ff0c7317c33a63adf9d7344edd28447b8dee565a871ead5201654be76dbfe42c142f2508f337dc9a5633c115941e5e80506701de33b61f2b601fd56c8fe88d7802d6eb3d37887313b7aae48bb8f5943a34a46bc4a3c42382850eb272a8e90ba4cec279f9d5edf4a0b329753e246fed3328ea0af26a601a39b2656dfc7652b845866293d0d1014a5d6b2f9b775ee4369a8fc21aee405e008b6bdd6742a776e0eb224aa2017634f56ce127745680f60c07778d452dbb9ecbb9757fe8e752ce74567a31593fbc921aac528587e165d0ce44458754b7b85da92e11034838a0d439d7f9b86f7587ffd97e947652d340f4587dcc485464e8d1af046b32b6d856492900109f93594be9d1c02c039152bfbab5d19ce64ac63be26019c5cc9894c9d42dfedeb63cb6eb138a6055c36b4d989dada73b6c18a0f5599c1b17dbd4f4c31e629f58036c22ab9ab7c6d26123e780646373eceb5969f583da7c3195fc0a7649b97f022bfa4720218f72f1ff71044caa3e984ecc2faaeffb953817ee1ec57ea326fa219926a59ae558c4a07165b20f8364939dd901e4fcd9804e6c3a5285db16a302d12bc3efc1e97462fb5031894ec69e24ee2c1af287483528eb3fc7c01ec4d31bb0a9b67670d39a4fa9e58d115160690f636935740099ceed7c7e0172b77a6983e6ebb204761f24ececfc1dd25cd6a401c0b80d7936d765e2e0c4b0f6b738808afb7ad447ed8af73a991ac65c0825e37f037c71a81c0d2b4b97e5b4e69cb359214e49006d06ec30844ce9de777f1e2bad30fe6ab333ddd3b1055aaff770f6ece2ada573ba2a40f3137d51f036a428539c92eb3b622b2ea8aa7aadf5754906729debae0a483ce2ac52454134ff23408890fc1e1e5f47f76b93f2250879f6a8e2cf12b7e88f0c047969aa774d72891f00d10965604044d0c854586e95ec09e15597b7c43c1d51a524f3da45ccf1ccc9a020527c04f2457deaf9a3d177a7c51cbad7c52fb61661977781a0bb043ac5e2b7258e81504f155565159578ec23a136657ab89848b9af3a7cbd9c4fd1c85d61a06a875d065055b079e4232d53e6120aab6825adc6dcd43082540d0ea9c695cd3ea08d1747658c4650af0a3eaf433b1f0fb25fa5b9f9b00ad16e1e992f9151e85c4e43de173ea294c2042ee2dfb520bfacd08061e4380c77412b7ab559f42b6a352f91d717260dcad4a232f1707b12e3b68bf7dc3d0ee418aceee09dff273690481f57b562c087436a665437f06a6c92c1a47f6f0aaa37774e8c59c4914dda2adcb87250399b4c7e90a27df214da1fa49d74ec9e7f9da5c8044074483f0a212cecc903541681abb06d77be03e8c0e58d29b40b5151b406a22f0b40ea197296d087473d4c0722d2939b64be3a80f002befdd886f8829d52aef6a41e6c11f658ade3798a0b1f6b4eeac71dca636659b90a35ed060de1209daad45521a56296e01a869638f66dff84e9d6c31b955c1941fbd494a634b1fe794f93236d1716b428dfb0b0e2770d9106ab434ede2293a2beb4cfc858ec1b61ed0ea695dcca3448f35b9f26dfba1dce7a59939ebcf81cd10c6c812074385af1e0862a85144e1c723480a0f222b44ec2c09a5c0c199ea98b5c381017bc8ceaba608216131abfe36c58aade1766b3724541f8a4722c4fc6dcc4b220b6417c963ca6662386baaa2b3b07ba72e01c8123bee6c1b049075a2786d7dcdc5fb5d7e803006e5648e2f1cf26de224bfe78ab2603bddcebfb3e98a8730d75afc30af5d54bdf25f4812e8840df1f0695eb6929478321b2885546b4360f1bf08f283dc9cac93324fb2b35d0ed92851f8ee4bb47556d831f1e7bb6d01dd69afeaa5dce6db323daee273101926cab3c37da8af7904a3398b55af9abfbdba0832f6c83bdc03559a65f5174fc9e9bdcea6dbcc60c576cd5b3e88311b413f12eee606580b332b84693415d69979a87eed1e9b19cd77f355800f52a3c4e2e0e5cea63bab250ff05dfd0559f75f6eb67ada2bea42a471f20faa8778b1a8b6e8880f1e7a759f1a49585106c509f4ffe4485ad99978b9b783378aab8a68630cb239963a5f9bcec1a0f1a823036554c90594878e792b3640833786958cc6a775c1bad5d87ab8a69f77ba456ca921ff533c4b5a2dfb027e4fc37752e72d93445dece40e4503b85762a4d0f930115c76be67f6c3650099994d73b31be3cc2b542d1ca9525f61b2c87a08824e522002663993f375ea01de6f33d2814086ee22cdc1d12c5471947b73b1b131264625dc93cb844c207892fc2dd4846a77b62976ffeae116e59469a8da75c7798aa7e6c66955a5b071df977fd31e15b56a6ea5661070d41075373ee2161cf7d7e0ef7cd51b7047acec831357a9a62047766bec8c4c103418d7bbbd767e96ce0c9c79dcf9558e61c56a051e55307a20cf2edc36fd9cde676bbd6318bf6f06d4684973d7b67829b8a9fe5c0e249a0ff301c43e27225d8a7020215c390b400700c8db47b34bbaf09e74460085ed98e301ab5dc9ee3c5002828aaf62d6f3ee56955f7e9cfeaf07ae9b42f894c2078b17e25010af7a4d153fcf659d8da89cd33f06cd17349ab0b27bb475bd0905da2edb92d5f53f38a21c5d36c21730598a3d57b89d3df6c5a44b1e8e77b8829adfd25c6202a7d0e4bce490720905aa77d697bd064cbc8354bf8ec01d846bcf586afabcb0ec95373df626221e6904aaa5a560c0670dbcac230dd8b36ae50844e23395b465a828027ed4595dd9554b67a67c14e278379fd450b7dc538b1974ec857bbe6be1d774765b9e6b970dec02c463a182206b70a6acbb6bb41826ed1f0fa3e078aa014d0ac696f4bff305e71b07660a0a0ebf171d0f41a55dfbf1747a7904935bbd0585b394d8a3ea36bd32cbb5729d025b9767fcb534834b5cba4374b563372c5084e515579a8b1aaa8f90bdd269403b7ad5a8947ecb7f75198c15a780086db76513d75c42de4cc173e092183134b51c14432f07ab3f86ad1795fcddc616585118a326859438a1cd7fac28457d4f4c54093b128a1a24b28eaab90ec284994e6e5eb6e2468a2893b7185dca1408d6c343355e338b3b8626b46e67bb2fc592f9dd53757e3d056d593a121e0141c54f3f91dab93889b6f2af6e82bee0c16674a1e1215295b2b212cb5f6e0cb0522efaced1a92f0cc43a53c36b6c2b9bfb7ed887ee0d959b8fc9f7e175e786dbad2a5fcf2e4c3822adc361aa7a5ce1f854890358e2aa100ee3636e02363cc5dc2f1cc83fc73ee9bbcefaff6be54eff32afb92f379f25421913e4800352040f1775a317f476e40279f84791359f563f95293799dbadea463ddf0547d931e9537df02603f706a137503bfe7fc96e9320e6bcc527920478e4bffb11791c896818bd68ce4e728d5d4ec06f34dd1ffa29c970620f6613a47cd3ad3221b5e9b843f03127399683f9a2a6a88689a54500e8817852efc95d9b36a39fb8cb4c11133b863e6cdd096d78b295259e4050648adfd8572580b5b04b7a3345f5bbee76ec09bd77cf69b87f58ab1fa639edab9aa3cc3f9622c43302d90a723c8c1a76210a77e832b669b8cadf7586a1dcca8b679d7fd429c8f77b985a7961ea5b2800955f7994e35c34a6de12ecdce9ec543ae7abb77ab571a5aee484f09142847cf1deaeb589358441fe41ff94ca8dded31e308a856c33fac51120bb6911a6763cb7c5d6d45b61ef57b8f9e5d89c882012eb7183b3ab98d27a30a156785111615d0b9ca6d66859cfe8e75d97ee837efff02b16cc7e02870975d7eff7bbd6578e1064b4cd8ffd926e6218f22eb3d70e9922a631edbd289bd37176ca29cd7526ece27942ed6d8c686234c03e56df0a9dff2c9b2697a1c4391648d360e54b921de4adfbff979b9857ca8b5ce38c9bf4794a9cedf74c835c9caebe1826cec7d5314365bd1b1a42f88593b6024aeaf03d26de995f2793a6c1b4aed92610032305c420d9aa56fc1c3bbba628d28ee5b21105eba9679ce05822c09e39d68beed37220ff1c4b6cd36f5ec8ce9438212d0e4ff711c1fd44c38814ca8ec1ddeb4f87b45adcf48d50b9e8be9ef5ddce8ed60d6569b0e4efeeb8095516b16351513765641e91b6e73f705cbc72be218b21079f9095987f2a3effb9325f5a0648d44293a438fde973dec69f184de07886b2240cace4fdb1f18d47bf0b44be24fdad8fe7f40679aefc8c371b27c4dd655d9f6413feb0c7ff4c8d6ea03f722e097f995552113a51d771e56bd74f8545e7d26069bfca20f0a335e0f9b3f8235818131363b8a02dbf9bcf735295990ff176a38c92e1ac0e7efcd5bfe1db261d9d47b0652fd761e3eefff4d0895ac2a48d5aa9b0bee62605693b8c913b11e6dcb12efe622d8f630a9df5938516c8ffcf0730dcc64a8561d0e1f4aa1f1993695529636df45ca803f3cec2be9fd74499cb4eeef746703ea373e33c4dcb4149221b5e6ccf8eec4a01921174bffd216da8b91848f298492ea53e14ac804c1652c9eebaaee5f2fe14710072c3e626b3c89100544f4a82ecfb80155e92502ef5778707b3475bbfec5750624f6c23afaedeea0c5133c5311905f7e758b18c392bf63c9623f5db089fd4b37f94185c01ac4dbab1054c9e7c90f9efbbbe028016b667491c653e19a744db26133ad748d1417b2278725d892c5342306f8be2c295cb6d5cbe7536d4b6806454f10bf978883a9e69e86d0bf8e9874eaf75808b10625ebfdcadc8f7d43aec465099101e1d752a8fafeb45274a8f059491f44c2be428f84a299f2877b77aec83a6834a6fe09c531ee857514578f9a8afeacc5fbcd39798019ef55eca31208045f5a719a3e0a0e46e9d23cc9944cf0ac178cec31363af4f72780af50b73148c99f60ab37cf0516075dc28a7a32e0a546a79a768d64359b277d385ab4f03344f5b0674ea807cba63956cc2529448e9a2447921d5742208aeed9ff898d6bd7ce52a85c83479c4f7a15ec6a7f5cc6e8c6331f01ca3a110127f1219a280ea78420587b197df12923cac2da404bb018929c083288e0efb95fd2acce652d8a369dd4dbaf59a257fbcb08a9f5c32635ad8239149b187bac79bf9268079a103a66b95f993156986a1bd5ffb76b44d7d6dce142d5c50aef135ce551ce4d2aaf10a788a57a513bd0be7464576eaea2fa750c86e89e7fe1b88c9520be914c7fb7c20210205e3e14fe02daf0a8cae04009741b7ca2441e9e450ef9d2f1e70ecdc237323371d1de1b97feeded5b47cc88da4283bffa4eddddeeaa01790f0a2cabab37f5957999bf0bb42c547c12f2bcb650131136185105533b756365af9b4f9e3487ad7bcdbb481c0a63c09b53b85c5ac401c2c2437a775499121d673e3e6f8897a399e99f994d42403a5e990d0d0804ae42c77379cab5c4ac7e1432e902985ad5e1ad865a63575075a2fb804b027627abf5db27596839f4fd05068fa6bfef24e57b37e203825711a4eec7b334f835cae642189821d134c6759cca224cec9d5538bf1ad028cc190a4b0f5ac689037864243cf7d60481f2f226a6b30f72f593878586c5cd10be6d5fb6b6120ef0e69a652b6bcc8074d34bf287db16f6b19b38841d2ee1e33656683d504bcd77795ece217dabbf7e1a62c955b55fdb650bbe3516245c2eea33f896678f722f23530c9e263e1b9345a3462ebe38114669f345dd5e310bcecb00193d10e54a38944cf14d1eec532b459976a7764c7bfbf8730572948545a4edd0c2f052c5e49b68b962e44654c966b4b3f56268fd9deacaac7197a099bb0c6737c6a85e307ed31b6899fcca15c5fad36457a9c42742426e9e58570efd04868138cbf54ac9fdfe2b690e8919857dfd602ad985c5c69a3383ad17aae2efa255eb686c5d213e34cbe4976afadc6d6784eb511da4e7c7da4ea174a9427d718bc9dacfe4a739b5fa00df26fdc18534f5c8095674812cf20ea7d2055964e1c96ea6c5345ca813ab28a89d53ffb763ea919c442d9801a63f8bd6159d20f9045b51808d6c61c545959e1f40432ac43d5c0e744b50b578f8d0144c48feda3437369bb75c44739b5785273a99cfc1f38d04f1cfde62e971861761bb6e54fd1275a6aa14c550e9bb195ea49cb95191e680ae772488d0ff94c5ac8fb584dda728a4b8275d8b762c550c9b6e647aee73d0a62d9f8bea08062be84d57513ef20cf56459930d6d8bd75e26cf129b4720f7dcc7b4c520f9e6f2d3e402e6657a8bdea41fb0d1f438274c256ea9922889c673ac3366dedc3ac4ccbf24737484b1130ae0eb5c91ed5dc67298096aea52c5e34b2bb291fd479ee2957fe33d75dd78eeac6b51dfe47b542666801edf93b676d161d5682d9a83784381f9120cf9a1175093009051eb8f5fe5a7ef3b4edafd08f4f9119855b5d92b20686211dd52c898a661cabf8015144fae7f1718f5587920d204fedbe9b58cb17d11964afac56100298612b377289a3f50ce9d5ab80c57ffaccc67032baf412e3d8075f1eb63d3db7fcfa54d99ec0247a34aa914fd18af373842753f8b34f3d5ba0dd28385a1abce60ed8150a98b1bad65d02a491f53f72630d7d631feb817cebed2279c9b5564f0dfaf1283e62c7abf18a1114d99d58da2917043ce6b9988f1f34b1639a99ca2492827ee24edf999e15203925734a80cf13779a04d3f0f3425a8cbf73c76c43d929179d4628b317984e3de8f0a4bc673f7fa90e8453d30f11c0ce71952f10aa6a94a10da0f98f7c7a404f3fa67f5605457cf6caf6c21a72ae9d588ea23009829d111f182b8498f962812defa07050bc20de9fa400c2230db399508677999e7ab7d55ff3db34ce331a6d63eba6d1c1265e876f498a40f5a1904054c6b48328a020ce5b31f363eeac498262dc669fe365b2f45cd7040bdf2eabf5c23a86535d826c32ff1bbde28ec884956d6c6444b94aa624728a3062a7616e30699153deb5cfe4abbfb463c121582f74398b833a1e6028206733266aa3765269b46a197226cec5204b9270dfae419ee8c38b968f0ce81b40cd41782cdd8d85c0836eebceef1a433a81e0b6830ca9af693bfb42e2d279c1d537c28495c6320a24e9a34fb5960f381f7478ed1e071ab9ab248760e6fbb6e710e8df7d6975913219301f9035b8e13a1bcd48e86e2bed1a76e10363e2c39c8f714f6b4401ae4fc069301201db4c65e7ea3eefb2188f8e9bbabd6e00c42235d1d77f6549fe24de93041fa89bc957feb0f1d779cf2055040deccab6603a7ca30a809246d802a8c0ed40c1849a2b2ab13040e12e6a702758f4e3be04e60f2e28c11779775a24a9a88ce2fb757eda6f4eb1ae87a3b02bb557a9b2dc9b2335384bc5b0569c90e9a618669896eb018777f34dad24f97d8b3f89542dabce51d292c4663f1d524b6a1b9f08f0a3701274489d1e2dfb93db66ac6c497cfe9585399b16c2d6a077dde7072c0678f9e18981bdc428a0d8d88d12443e4d02ce29a18e6bc6bb05da86349b4d611bfa59941e2f3f3a9c7c21f8c60ba7bacaaaab21f2f0690214fbeb42813efb735dfb65b1755290d0945f2ef8094aa4e80e585e66747f22db061ad185409e638dd935e0bcfccab8f7c2570b0b5e19e192d1c7947935ea8a8d14a0e07e5e1ec31ebe97a7f253f86fbe559c93b32eba64cd51607ac194c480453a83b8e333883654246a2699b81553e16d0ff4c9515b570a7e814e9e2288627b324468492908430ef909af865cf47b76bbbbce8edc2735858986680cf3862332b311d315204bdd82924ef30e38c75f9ee3cfcb91f89dcb2815997086e0d0fa5f9f908916efc8dce49feac2b1f49f3ff16155cf0a8327415c021bbdd633397984386caf961f6ab9f16eb81941e5b08d3530ae85e58213ff006842e206530a39569c08f03839578abe085573cccf4e5c3683277e85b711978c769e162ef54248286ae4039b810288c9c38cd597ffcf4d37b7da3fcbb534ff2591dea16c432be38b8cf2d836f5bd94e8692776156942869e34dd018d0a14af111ace79c3710428556b6b6d0e0616c5ba05bfe335550208926c2e0c65b68cb02aadb9d2eae3fe9df987a3e333c83ff1b1111bd813b7791fa6316beacd6d49a2dc0e62bb4654c80d6dbf6367b5918a157a1e1d672d17a3922cce1c945e1b8d8dfbb22000d6f32521b08fe99027e460e58888cdc039198fac5cea66423d141bb2d74d94c3e7d19168484f6ce8458f278e045dfdfadec6f040fb975a9bad22914dbd1072fcaf04da049cb1e63b9975c3f8d67e86c5cb99c97778633becfbd972c01ac4ffb8e2e214fb17f2a26b6939d231674cbc867f289954d7fdf5d3024f639ec406bb10bd92bdf2db2df7545b5dfb4e8614757536b9dbe3a0ba4e2f6a5dec71ef396e411884eaf98f27c33b857ca6c257bdedd880cae3c130e04db933ade316d59f349059551e7ac23a7ec0ef9f5c5d0405a9565fc74d46890933bd607276fb6edb9c62d8c4621f1f54d7599c33c350d3575e89dda95347e3a53f69d3475cfb31dc385adcc671a5145ef2c4389783ac059123263a6a36d3dfb350a3342cd9fb92a6f61bb045b213c2d14379200fc49b8e19937b40b0c820f0f64c3d85af0ec2ab28fdfa6f3663656d57fc5ee6eb9c19723faba8055517a85445a5defb4c62e96a8c6d2892e6ab7d0033acac275ea9eca6a09d1ad8636490fa3862d67d7de2d590a51e8100c38d0416895b645bd328278633912cba982b0c70dbec8a8c6e9dc1c2279e0a818206a1649410b873da615296fabd7531f300239a23f462b57f9c90360bbf252f51cf325e953123196e1f29b80202bc455c84c36bcb030f5b9ad58d8758c459d5216061f3d50dc915881a1ae09ea5fbf9e72feb5d164ea9fc423ddcc38771ce625227752356b44fc70b9827463c0ea80b49f50218d738fe18acb79fbbd7328184063257fde2020d7f86a7e44a57c7217b642317bbdf172c17725ecf16d362d662f4633dc057180baf96ec85ee06cc0bfb56b4c3664d535f0601dbb44b3e60c43391ce71b8c5b74e6da12df8b74aa9968449d9ac46c813891af3a9dae2462a0174831ad2e7831394994783a7a8158b2469eb4060c4c800e8aabcfeacbd33bd35bef02b7f5b2219b4bddac04f73067506855dce1e24352b82c7d127f7d2585c40f1b23e3e9850431239fa696b7326fe59930172992f07dc849df1e853650e95fc06b31ce417cf9b81aefb690bf47c60ee6c947f431179416b31efeae80e750de0ecc3c34cc835a612449bf02b22a113b59ca6cb3f30e8aae4a55430196e0e2a5436203e28ed42d87ad36b6a016254c4e4c013ca5e9322bb83232fc6dc706f9f91ab75afd4217f97194040214ad0f987e21bb759be822cce4fbdc94c6ac8b8420b4dd192f77ddff7b60af26ed52722c714a005a39843879eb16878878cee2be64b0d35fb6981e1274a9ec402466abece73b6e92c64e0dc5d173394189e3ed72c40ff8266f0d4f5bf1045e60c21b3f93f25a4f9255d99cd6994f0dee3974ff3bc5681b20cc452ba31a132cb53fb070ee19de54ef70759c0da3ee416ea71bf43937d670567ba1af780dc6be734fd5d0bb7cfab505143409a957994f8e0e6111eb90a19271330604035584d624c34c369e398ace49a76322be8f18cab23b52bffe6b79d65cf64bf7bc2012bbf8e8017884b18cfe2903c7c68d2f2eadc7f09162ea29674b25288040c636cca2c7cb0f7d890198db4d727753fcc5ca41f09ae25441bcbf92212adc386bfa4db1a18230edc70e4c9016c6994c1a02e7a73e4db67a619cd5cb1a1759c15c327016f844ca816bc3e90345246fad36755ed89f39f895cfe417f25d455a66b649972fc178793d64709a482ccff435640d91a3a3f2a8e27a2c8a145430990f2aa0fb20fc56668a558aeec62edb146a62b8e624fd5de1712b7312416dceb3814e3dbe23b9a92314f8fe7c2c54fb7d74231d7fdf0cd105a90dfa7d090f7085afefd1a62861b346d64e1f025809a9fd2b3d99d8f867023a01702bfe9b6266baf0683bf5ac82d60643826a3e0271765748583a3995283e67df6af03b492cd9e57e1a83ec9199d5307fabab9e3ea1e5419df26a892f906c546cdf733205091670f8c33c1505285b6759cd8bcf16f0997c07b511252c9a08552b3fb24d8648875bf062adbdc66e283d07cff58dc29ed3c03de5ee6252fe3f61afd6d42eae203a3eab4599db64dac9f831fbc37688277f624a3b9ccc9fa5f9dd2f7be557ba0d392cf6657a40136bb175ee56119039a8e98602a71fcded8f5f74fbe8c75f461027b8d2bd09a9e33f371a9a55894463a08e7d3d90208f489f83ebca830a8c9f245cfa5eb08d148535d5f6410a72d0cfb4d6cfc8c481bf4ce1fadffa0cf8782313c283506164312d3136e003099d4afebc7fa790ab29a0c6b00f3f0387b7c29616c8fb67b5668622b06f188c6543f068f0b13eae618dbdf6f1f9084ebe6c22990121237bb6b091b629a2e52fadc327a3f767b0e0af3cf21a994b63203cec66f745c7d32bccf8f98a1ddc96903e484361f59f3b676f2bf470b3231f63d4ef097504b2b15fde96fb828688ad69e7a0bf7e4aa8b6184488a9ac9d3947d7a83e03a56f135d9a223a91f141929534232054a644272ae4d97b73cd40525b8fb01e11fc6e07812dd9e8823807840f12afbd3200741522dd34f23148990abb11055239293decd26d20bd3ddb5608a0800647232d66bbb9fe8b8afd7d1dd984c5ca2f06741b84ac06ca9f3e03579bb0c36e3d2e9386d9ec6fa0a5b7a11d9d81f9721ca2683d22d9b9f383f15eef7c730e8607b86f8e34d93c77edadf2b27dbc34ef7e25032548b68030f38fec950b6c4e18b22e0b8875fc1052952f2a52e884fa75551a87190d7e2439a50acfa8c22b0c105a2c250bcc3503264696325664d40acf9786b25adc32265e41e08f6856b2e7e7f46ec5ba53585dcd166ce3d2b117d811920bf047c282148ce2a9ab69622160fed4491ee5ca84b8aaa19d678a5b90681a9a625534d4e62f605b8db1bc1c6e4efb6db16c5a018940b2218fe85ba8d97b14771d9c052c03d1cd885ae1a1943cc2f801c289e1168da4f39e6044a474c398f2dae3790d58415fefc268594be5ffded09ce9783416d6522fa99a2b942502425d568d3b194ee10b3144e639bc522dd3b5381ebc17dc7f5c1a468edcd891c4ee588b14ab5f8a2bf49780f4a407943157434b5db16a464e6c33dfe6c22c03d5769b6e01eb16604b06f314c2cb87ddeeb22c22e7f8f0ce324afa52ab2e5b6a508cdacdc9e9510c113e82f008b19d1db40b79afd8d37a7c3c3a293da2f642799d55d9efa35624abf4611b931fa166f628eaec4c655c26e21f7f103eabbe33652559cdd2cff002bc5190a71e575fd1e37c1924d7b980bc68dff286354e6d9241c67c2192de72197cd72f57f12a404898f623ffcd0bcf773cdd54810abc7260928f3ff57e71425986bc944ffb3621e16dc616b57553c55f8053ce918bc546b6260990ffa872b22a3f230a0cde5a61d26151770e3ff7a8a80f046746b0e72847e6755521fcc61455738a6bed8893fb6b4b988f765e300593e6367383a5c5b9a8469912cd96d89d6004a7919944a21086f79beaea5d242995224c2b5145920d1aa0600a5728a4ac4adfd1019dae21b07922126e94e301b5e1b3e3ecb7c21053318998c4cf56506549ebaf7f762d54db3417efd1ecdd20500a80f1840652f023f5bbfe784e99dbfd60c9ead997257573eee36d0794a29a3d6eb114bb02709128416cf3f49de29ca11b709a1f9ea468aa6f42cbc465dc8e8ffee6a5fad808e11f364873eff872b76232996afff431374bc07155929f67291f192c2fbde6fb1f0a3dea49873cfa14c6503690cd1087c8b9701df85562ccef3811bb09d773eeee213a3d9ff46c43515427fd3c6edb492790ccbafdd2f919eeb23f589abece8d688660fbd744e2dfd3b943f1e1a4173578b27871568d209e79a3ff4d0832f941b86d30ba47f62d80d55524f2a8369cbc53747c37a77597dc9f9f928e9b3e782b5a94bde100458e3d368c449a873cc9d74e84c8d636d5a47879c3544cdc7b95e78df1fa9a6b0136ca1f0039853983e2ef99ba81adc60e4ce57f58876aaed17258ab18df17f6421e6af7c75a9ba7c4bb6def94a9422a0a8d72de174caf4b572f2ab48cc8ece4846d1abd2a361c7a1376f0becadc2c4a15cdee6155c04e47cbdd402a5a8fbba18525d9162d48f97be90466eb1576fec39b820dea5c331eca29888ddae23f0793a73c09beaf3b23a4be52c55055441dc82ae9295e1b764d7add679e74776f73a5c9e2dd3d49717342ed798f3a12bf5cf96c3d0bf5b61110f9549906cd8aaa451a69b4108ec14c3d224af40ddbd51667e139bbecbe0d1fb06d2f574bf8a95596706eeb769e280dce9d1fcc123f87d08935d5fdeb5ee903536eec7eb26ce6755ca2364f67061c3772599ef23a759e59f33d31f347266b0123f9b68cc2ca6e17b303f068549aad5fc2028058c175d848c65fc55402d8fac4ad472dafa51b2fbe89c3ce6d096a6421349c50a1c8d0e9782e78ef5b7819151964d9dd8e720887df893098b8b7042f469eb5924db2bda5f70b14f619d16f4b4a6c705810f4c9d6b2a31560569fd6c24b606cd07dbe889e7aed7cc9e2465fc44551871cc2e232a18c80136cb4d96a0b0bf0e8b106e96f939aa1fea450c3ca21d6b93a7b03f028a7ed336a631b7182e527701592a021f71cca3b8136c35471662adb20acd383d4d8f178d85900a67c2551858035ba9615e5b0ba0a0ff402f635b6a8a0245f9726e0277ee52b2f11f5d759796bcbc6ebbcb6cc07a846224f8e3c7889bbee62bce6b0f68732b8ea59db5e154f4b89933e6a69d326fbadebcbb986156e72e96d59f85bf3e09c7a50de0bd1141472292adc36681779ecf899a0a6677476748cd42609b91f886b7bb549ba033bcddeda4707778024b5c93dd85c273ee11887cb9d5bec37877e0110280146d9654cda8ab9cf7cfbacaead58129623ce264723aa7cfddae5596f36f54ca33389137f23281e62e4efc340fea3fe576a445ad7d4fb06527abe9d0a638d1dc9a5c90bd46aa6b152a02a84935f012135c6b60ba3bd778f5f48de7f631d95e114a8e7285af0b8038095fdf059311ef983261d6398cf0dde449e8994a7115e4ed493bc695f8e4ac6670148377700259b8acea44718ad634fa3b0351bd6dcbc825e2f5b3f40b960817694b16d33b19c49396bc3d1ab94034e9ae4027365cb3125932aac0b0e6958aa7cf0a54884ed281a104a2fed12422bfcd13cf0f7eee1e91b5d3a2c60260bdadf103e515c44afde5645dfb75b00f778498e11a804c56c076f41b31a31d2ddeb2f767e8c513ddcd43d1976b305c7c5cb1fbd95f9df1d1842ff23bdc46cf62b1b73f43f682312d67da17045aa610f70eb647cdd1b51f51b1d86baef3707bb0f4b6a378f248409a41bcee7660b4fb3fc7067aa66ae86375df7620564e60cee51669d783fc66dbf108594951dea6c06bed025a06f5d9b60d3126c838fa71ee82c67eb54af23e16bb09d1820802a40015fb163642fe19d56871c976467e64e5013146ff3200191946669e9bc085616e411dba9b94abec8a696e933fc09d465b7601f5b35391321d719cbac375a51d0b1d6f4c7aba6ad4a3160743868de3b738f2d8deb902e359ff71b373deed4f353e0de2e4e8a52c174e04c2cab58a638483b46b978e4011e9c2a3be22b5badafaf8e5530676f2ce7d2a962decaea475e4d72f72d77fcba695343778af59ffb8a0b4c199a379027a3a983b0b1674afae56fde989d7ee76655621245611e330d12efcd0c937c589491608326fa35c990a017f3420fd90348312f51bd9704a1966223826a7bd43e21933b08f8172a3b8b3811fcf88af5a45bcb6da0a2a0209b8ed3d615b5536d389af12daa1215e7fe196d5ba3445cb48e8f9b1cc6ce6761e5a30240ba32b3dbf62359a27ba54182f577436de72839fb4dd6573a64a1debd419442f9031014251472a7dde31f0fed14b58756501149f0192380710bd65925730ef5d7fd0c68159bb2502de42637be76b5622b6f0d14934375f49c50201178d336137511e3a5d7582cedbff1b42340fa147e48485ad8c6dbe6650e3f153dce20554f328410223128bd85301bd0d1b921be263948239fb72d96116f8949e2d815627ced2fdee680bb11bf8c4541afa71533f0651c3d684c809e75ef7c6da8eda5b3a0e68b72cfc4dcd50248bb5ae1866c9a972e3d2c75abc8dd75ada9740264b46daafcbbe7bbe11c4713abdfcb9d7d5bdd84733850a1f0b0caa3e9b8ddbe6d5ee4762b495c993f6db088ea474df76ea1574306ec4d099edf69e120783adb5818684678153558c3efc89569c0bbf792b692e41f42925320278aab2fff9c7380d2fcfd95720a4537829bacb6b09b622e9c135906ba80e62844d2dd163be2c1e84dbc19a915bea14d821eefa0f15e4fb9459a7f09a541f27c3e4b65e51b7fe2e56e3b6968b59fd21397fdcaf0a9e2e096c6d73b5cc9bffe66cdcecd03a22538655123f271811e607d2ee492a75fc6253a0c5f423ef64040ff172b8c010f0fcc06e5eecdad764e896da7b17567f94bfb4cd304005be44a37a88d3f18b7d6ad12ddbbd7fc290b9d976e02566a07c022bc78ab8396278ee6d90c434c849dfde9a0de70fc3fc0e854a209066486901a187d6b9df5ad4ac62a019fb9110dc6379b54c9b8837b978d73d103d8f878a97aa1528839a0200e8189d6e570828787bb18e5bc16713b7bc783810380b426bb2423f5dededda64cf5639137e016309007478fd936d00e7049d7c9767c8c960ebbbe615f4f215a154c609b502340daedf09df0ac0d37d3fabef7fd7f8110af679521632975e7e64da2364db88e3ca58e1a484d59c6a8f47d51708329a0f6c09549e3d0cc0a4948139d4960e6a3aa4112eab3552fbc11088dc2a7c3ccb90f9e2b414eaa6f08d8164d4d5838790c48cf5e54d1bf4b2c3c16fb70bd5ff6789c49a26ecd946c06bb880e42157572aa6cf00c00e818f75b7c48633a5e337cbc891b7aa7e4ee66815f660a7abdf2e81681a49a2d27e77c284d7a1440f36819364cd45cfc4b81c7046b263954c6afd61ecdf001cc7a98fa6dfb523790725b6990b4bc6a17677607c10d9f6966d8908edc42b39b1f5f99bbf71af920c0ac358d60f9f9a3a2454c9e8c5d643931a1a0efcc62af635cffae171eb807ff5cf19bfa7e896eb48d18fda683ee5d4f756e307ad3e987182a45eb248e4878bcfd90c93b6ad326537054c98813065162a9fb92b17736ed634c1eb39e94ed35b0c516badaf20ee100fba5ad2d3c079a425adf470b199ebb3ac4d2b3bc389d81a6a8ac35a99cbd8ef7c89c8b9b37209315ee953f11c9453ff2e6a7cb02c11c48d53ece940c9d627b7478b1c5684ce2ed5cd900592d2104d91dece0402485ff0511be5e5b6c9801d80830b64112b8b50d18ad584e846cd1bd845d6c13930e16f9c4d965fcb79542ebcabbf5f679d0168b213e0a2507df03d0d8af14609932e33f38f8f725c305fe7432c0d5e6dc97aa714437ef0f421d7ee07b62b5756c77722087887eeca15d2f780ed528682bbde1bb5ce8d71eb291edd55ece7b9f2f12723ba507bbc960dff7be0d85079b5d00c94128d403f57fb3031e6b3fbaeee14a378d94bf606a74580940ac8b8d64d4aff7c54e033843e713a0a2ce22ed0f82c5dcd13d1041db0970cb60c93ea6ca8785a3f05dbc9c451ab4832d17ac7573eaccdf763de92db6fa1fe47a7b294ba8969798b322e71cb2ed1325178ff5e7b9b45bbbef57e5208afe0bba0f7a47ee3dd4a9a0ce5e7c8345fda5f4d8929d2b6b78bcc578fc8adc2edacff53393ca7cf93e9781d0101b0ffafcf6890dda3c5d1a44134f749a69f38176a1c9d1d9ec400b65f5f3106baedd1d77c3f83db3bcd35bfeeea7e55564bb00986b76ca79d604abde8c41955aec2b6f4e7237c5bf999a88a11c41e004a3ee36c7ad0f12225731298e6d344268b0fd122b60fd737b866543774783c996fe1144081f164a91efcd0c73e558b251075eb1e2109773cada408c4872d03dd9039c2d6504c48c3685376340c2c6aa57801c71d44fc224b191799360c1d4691e6d5faf3ad90ea2b3e4f7fd0865518f50f5edb5ef7db99ad69e06e3250a4c922f720cea2549b68e7627efa12fa8a6ca024842a554717e3b49c7b94352e12c78e81a2274cb47e361fd9e5b0661f46a3d65f2a009545a1b8169a0431e27cc26ff9b6ff7aac9dba4183b4590c9ca62f89d342f4af9412c9a1055c00fdcaacc2513fd0f5160e629bfebc4a5a4fc6af630e301e29457c85d17142b728ba1229cfe22e7cbbe1673e4b733e74b7de8bfb12f400586922a00cd19a04e11a8a3e976a452b6c6a7c849ff6a889eaf334f231867d75c0c70df41ff08ea201849bc6109b5e5816552f14f04883a0205b802c7f6bf942b1a9291cc12b3a2f2ebcd1c06e73b18433e5bc2f33e19886b7a60d9d408cc5817d07134d64bcc633ddec9d2f5e6e59358d0da662ba616417a68010dc479fe73466decd0b68bcd21954caa0ff0e98ca5b2ce88cdc6854ecb111c36fe9e823f8457ae7bfb133b0a83fe0d89f1277817d63d68facc5564d21696084c216c1f7a1b59a5e8474076ce8eab02bf5e7458924fa2c37f7168b63bfe015f7867a749657c4453417041c3249261799c00ac47c9a4da47098a3a1ba62754499b27dd73da911a6daaf6084fa49e5b271cd2f85f2e1e573377acea4d6c9c29d007c600284c8c0c9ebacb8fdb08d4016d0ea73ff2a9f407864a213c377d4347ddf3f390959f3c038446662ede3d80f2b3a75f2ce8e3cf2980881fe10d9d01d40b4cc05143befa3c71ad4f52e171019335a1a52aa7af3c2357d4018db3e583bfb66758fcec62c600d553ac73017ab560179e136cd4771f4e7cfa61003f80c0a3181cc04b867bf455d1fc7444bdc663480b4149e327bb6ebcb3b41701161eb4efa623746c11191c2a3c2d713d5940de53e416a13415536d43ddc9ddb499a99f3d6d6b44081381c70fc5bd8e3408d003a745dcb5ba4af09403fdd7653293606604e7794cd0edf00f114fc7636f2018ba0dea12ea8e3a51f5205ff00d83f79fbdcc25d3cae27c3c5206c82cd7e4a50cb910b8c5e548cac9e05ceecfbf78a045ea52e44cdf6f772ceb15b1bcbec443699c70fce4fcf484db6baf0858194924cfc3db75aa874b9f48f9053b865f6c68e501f76dcf7da4fa1138c4481a4a6e61f2a02e2361b0274e8d26351de08ff6612c8b27d2bd21d19f34c298503baf68d85487271c1872afb514fa046003a172992270e6be6802e5a69cb0bd1133f799a808e6b4fa842ab284963b4eafff197230c92b3fe44accbb11cb909d059446f0caf7f3500a53eedcc5f37f6c5998391675eba62eada12afc4c99a818e8f060306e0ea4e4b7a891aeec70c507f438685c8b470171717a0be375eabc22e0567fd760768b22f70dc750a99e10077cbb109c8e04832e6c4b0b6f5ff6434817e0bb562a02426c8da5e217779e9603ccaca6f1d6628f89b0764fa7646449c9ae3c0a05a52b86e2b1c505f73e92d727e25611062db9f100fd2c25e3465df6e49b0fecfa53c464d3a054a204b501be4435d9f5ff05038a27ce9aa0d468d4349fed5c4b1374c5fc25e3b8bd8fea4d4f1b5a858d757a0c6f4e71183188d6e532904e1033819e8ab5a8f83f396dc49f7b6ac3607fc306067b5fd362dc636292b3b7322471b6cdb8589eab7eaa9fb5da6133d6800a242c483206b9f6415cf157119e9da8567badea096b4f1076e8f58049234e46b017e6bc3cd6a13e1d6070d3f3376b79c6bc78e22d18567ebb8d574d323d0a4524e4ccac9eec08329b014fc58a66c9adf83df072259bde28b053affcdd47a7b4b01dcc2d189b6f8f46839fedf752d22c6ce33669f7deb14ee35b2a009b55eb9f775dd0c241a79b3103de5983fe0f0f34e7acf1e34deef4839c42d6d8844dc42795efcdd3c0e88d201bd3ff95f7fe0eb599a50ef0c97053af4a9c02ee3c6ff5b5460c973d873095b39a63cfe3f0fb437aedd13d16972e43a4877b3849263045b927b95da8a1fef19a84a9816b7e4fcf28d48c665f25d68690bb7d40e5ef13a7088ac2622640a5c30b5c3c05fc5f9646c68f0160af87d46025abc13f503e663ed68d40a54e0c9dc744f559f1f4b30ff6e002e4baa2d7fb9724ea4da296f30fd2fd1228a4eaac7183740209902b294a85b979c9fc4ebd7b59a4b45a58c550456e126a2fff4e5293a1480f1731654d441b54826bb801e9203806dafc72671131d32307b89c4d9db870620c2208849cd62d86d1d7d3a6ea067a550cdaf53d033a19a2ffa1e40ed2d157bad602ee339f7c3d024d5a1e34064edcce64b142d42b2f4a5bd94da243b6657e3ee7dab7991285d77e269ed7e44ea63c3c06daaa3d861e26f89498bce52a080377eeb447ce341f7480e83e6ceace35a4fa088b4653392aa643a9d518a179a8b45a89ef607aa70e12397309f3b378cbca91c2a208979733f6c731c651ff530963b49a9395174995fe64a49a4d440f705ef278e0bafe2b447840cf17cfb7eaf9d258c0564f5c7269e2894ff82d56ef5efcf6c2fcbabead5a1b70c25cbb43e021b5d3c606178895973ecb7a1f5ae5f20979297bdd7f27c25ec161296703819f00d8a4c1ec6cd8d26bc2673397de33f1c7c5c492033d60cc5c128e78beacc0fc3eb82fa67dc99f8aa42ae81fc811a61e4c0de6d32a2fa4ee20bd299d0f7079142bc12ffd965cad5380ad60bfa1e8d33c47d4ac050d964e19278ad7af213cd6bdfded81660a14d50633d865436a221d60232d314c2fed1523315e0b6febb4782dfd9f3b82dbc02280937c7daa88533bb105b9035d91c14b373c024d0f624401c4dc69e75644033c3a7d4cd36a219fe036a3b472887c87449a14d81381d582df13a90d0a4b219943e7cbb55bfb5f97d1c97b244d3e40cf163416d1bb83ce4b6138e0e20edcb66cb78a01b65534c02ce6bda018f9402266716e44605b9fdd8d9e14939f5f149c820f6eb8594edc79a8fc603bbd7b9681dd7cb516ca32cb849c7eb415b897269fcbcfdbf1bcc0b64466fe2f3f20dd0585ad750e62b6af6282de3d90d7e278562d588aab714d0f3b65ec4fb24a777c7613ae75b2478d0a619bf0bb8e8b2aa081e4743ea3f3ab6ccde18705e0e001f8f209f396643a0ae5b284abaaada4d0bb199440a9f7b5ce8ad47eb381e548e08a26a3f4f22b029adfe4c043a52ec76236e67db4fe7aed9261d4ee1fac79e736f04d42f7c37e5437c7d60ca91ec2989c9cf5de09ace269af368a1bc6331a3093d5a23bed34ad6a3ee457ec39d737a630fd31d3730707abaaef1faf069568fbce50dede6b4eed165e2cf5b09f66b65fc467d6b9951c0bdcae185ea349375af5ed4067211f07f96cc715912f7d6866a7fbdb42d8ee7669017473fb485abe655f4b4834de8cba596bac3e96bc6bc5c2485304f00e537d6a4b4556aded01942e0f8a86aa6d4fec7e1887704fbf3a9ab594888b00d07946568a7e539e9d98d42632df506890672cf24fd23b67bca8ef8649df12935cf706fb6d6dfd49ed73219fbaafc310ee00ab983941779a13e0f1c5c6b606427f88f008a9b44905f9d2289cecda58f5567098ef53deb89becf4766ca1ce5cdd9df37266adf5a5f8915dbfb09179233b26a397c83bf8e03c338921bb183f2f81d7927edfa682d092f5ca4c4b29db5f038c038ae001cf0bbba988fdd2bba1ff95bad6f4f12aac6ec7acfbfd349f50e3615ba1a5aa223ba697512f829d2729e610e4a989f8f015036690bf0905fe1e8f252aae2a9c6cd567086c408244002cc5b83e32b24f44903e14d8c8864d9850bc8ea36c63eb704e0e502a821c5942c0a7c75fa80444a16ee08e975c18bb3f66e75543506ab232c615602016be423a09c0c3ad08623c065d7bce894677c25de77ec67c19d911392f0f54ef12728c759ee3c616403eeeed41784d3bec45be798f01fe5606fdd31c77ddc6ff8312f60dfb77278e5495d2161768b1789deeb1e183a8b7aa969d5029cba272607e1607580ae250d57d79d32f70294f7aa7ffcfc5f2f508177044fa1bb17383b7488609e45c38092ee25941d9ff1b4182b9b61911e75f09eff9ec3b2fe3907b465697885bda99f9f42fee13ca815222f7200d837f6e11d9f77f3c8e5f6ada5b197cc873945fe4bad9968e09996cafce4b05bdc86354d88f5d1b8de85d9fd55971bcf8d8a30e4fb469bd787f80da626f3528d3b5ef822bd04253de64660461bb49844a8debad33f5407fd892936d3042d3af52a7be2f62189af3fc292df355e4d39d0bf227f4a711375aec7c4352df8a0cf2a6fedd997f0ef27266232d663523f0c06917e1eef959f2ce5cd1cde0e52cb9a6c89e0393361a70b1ec4d5aa65938aa9fd4fdece9b23eee2c46d5a47d755f537a7c012de199ad28f91f375f5f7657c90f079a8305cfdbccf50a290aa20750d7d30446a24056504841e54d6c3bc2446774ac89fc55bc445329b5723ed4d6d764e40f87e9d4d9dfc0439113178d89cb4bd1b859565cdbeb1afc9220f5aa9a87b643dc9830ecc036995e5af30a28bc7f119257e8802c444c145ab51d95a4af2b03c5f1a356e3d54280a791262735a607c33134a724f0e0dee48087851f8fedb898bc873b3168d90939111d5c59024b639383ca65438282c6c36c23543290aec26e403916d4ff7b4a14ede6136fb6fcf329a2dae08653ab3a6498784f7f3af7ad60537339f74d8e8ae1fd530724720ce99095e048a851f0d9e2c6866aaea0dc7f81b6793ecf2a9b1f318b057a495bb56614cf64bd001bcb1f7e2b5785eae7829809d5d8050c92a24462ab066f395b92d22ba3bd630e1fe6867a007606387181271c36b06372acea05298ce55162b738738f68f8a7a5822f818ec885657609a5713ffd814a7e3cc967da56566e07e36486ef9ed55faab7d178d22b0c5af33da67ae2494ccb8aae7970fa8c0fc81087bef975fe313b374c08978fd8876074afaa01446bf0bad454cefe9f57478e3115543c5a6209210b79bca1b231e21e3b90bc9ef77becdfeae10f640d4fb7471ac17c1e11611148dd0d257ec53859e9fde15aa805600cfab8ac74c9898c6fb519c9d31bbd5e1902f2e108199258dba2ffcda21c5924ece63d7db1a0e185578b63e3d8c38b2a49b07172e9a5e29baf7867b2ddba7581defdda5e6df85887f805488c8f677176d3d5f5e6c16d3be4133563448cd2b5bb2b2ad9bfebfa4e39847848a4f2cf960bd324ecb9159268d4f6539a88fd0d214c79e790cfc90790eef7461b8d7edbcedecf6dbd811d62812237235f621c290bbb18d47806387ec31f347d3e80fdd59b3ca3f554338a5dce4c9983a7b45cae5f71ff310ac554e4e30e3f40015fb5440d5da12e8a6d42f041322d7d11fdf1b7825a76846affecb2cee1da964e61246e19cff78761aca7a7df98ea4bd790249bddbd3e81f96c7d995e73f9ad4b6f137af33788687ad6f8b86cdf3310c4ffceccd14b8f171b0bf7143093c3000a544ab2e847057e3236b7f1cfd4a8f1e6814c79c8651e13a1340aedd5f95a650ef2ccb40660061dc89ba1f5882402ca080c58337bc9b432d171b6e4877f76eb732ff36695edbabb30688ce56083c073eeead73d476735a5a3449667a1a75dce2ad27202596555ebb4251cf3e7212aececf7a3500ac388cefbef0082660238941737c5c15b9c578e5d9e9998652ee2ca1e92f87eb075293e98d67afab949b0581cf234fe0c68697e3e94cfafc82566f9b4392832c0c07839ea9ab3b2a88cdfa41454765ffc52d80b2bc7c8a68b147814dd36370e55c7ef898022de5b7ea078b8290d2f4100b101ce344e8c324027213b6e133f8c9f533e7b9495dae12a762a1924e7e73fa3fa3b6e3ab427df58af1003e5c30f19c19f7fafd73deea1619ce5573c7748a412b69f20fd39de2c0ef0e9443ba848a0817315a225308788f4cfe2756f9d0c3bf729e96ae979852a059e44e820778901d702c0818e6633bfe52f267c3813874c762355c2276be64c142b76300ba9e5cb71b1aebb10dde9a36562db510f1b2ab607b91239f45e05334a6474b5db612b029542365e34c6cdf011d63c5b168288d1f311ba13977f5b04d6b41c84bb7ae96ff53466c8f6133fac6ad525d86af100db35a18a8a8462388c75a0d39befa4553145761cef7259d5e1b06746f85d43de25a37c7379c35dfd4944e475a26453d87328c0a79fe772a23e3b2b08480a8bfe0313d41579718c843d8aae6f4c994c9977b3b6f030016daae3e0b957d22ad96399f776f8ea18b8abf442e618e1dc0b24284462c5d06e687022176af8c726834a9945652676a0d705b5d7559a45dfcc81d2852bfba18d87caeaa822f8c21c5207a467724d34c03540c1c733857bd032814e5a22a431f981339a129237ce623d7daade61fff4e4501207dd540030f6653ee783df04ec3bbcedc5caff1ef3258769c971ae4d09df97cfd20090bfb400121c3f59ba56ef8ce1a596fec64a8868cc2d8f08ae39b5617a45d2b0cbf40635d29359a90c5089484dcd4571dff5f959fb82dd313bd3b9ece0f7f6d789aceda26158cdac6ea06c6df0faf4d641fe4b28e2edab2839eb0e457b12aaf71a69567c3a2fc4d79fa1d8e1fef4619070fd833e44d4e90253738f71aa7c89a098f4d504a8857d537d7c1a1fffea7983218ea71adcc03559a50d9c35b3f6d9e52ef48a896e79327669be78d8132cfda94e360869aee110a0491279005aa79a56f36833e18273fccf9de825f0914f9333692a3650c62302d34cbcea79d8a12e787dc9f2fdd350bcee9cb46ab3377217ab7ab05f4495af5bc53ca556c6792273fbeb2af506b936c6905c9c0abe4aa0f71525b6995bcff203e7d1364446bd4228e1b12b036cf665467059028ac9aeabe010bbcc351d9c6f10e689b6aca5fc68370d7308078cbe15ca22278549d16910b5a1081e7e2213bb0c92aad2ae989dc7b67daa8a33d814de63b06a75c39de57e212bf9620d06412b9f4b4ba8fc05d9d04d91ea261e41b30d2bd81fc33c4a78279049421aa53b5a5837f347afba782ae3709b0b18d88b882aa2e5d2a94a32b7fbb940b126893481d81b8ad45a3f8e511a202be4ff69bdfc39350e4db84d42cf8e57b323eee8486d053346d65d1899c11590bef0c1888547b16b12b0e737dc85502c0ea44c561129bc8a144769cdd971ac8b0cf82f07112a1e939dcafc36d7bb3f228d204f304a6527bb0ab7210be8f11b0359258bd9286d4611904c3a5acb21157f9dfb30032982edd94b269113a5ef8febab4497aead23a0b08d8885637ceb8c5225fc04d50b2b9c559a57607b813b548782582c611505a2781824812adb0afa9f47463be122f140bf73d1d143ae9ced7489dd050b39f5708004b5951558cf55bdc012775107b972120614715e2729da3be62cc171238812e8f0792890c1b83a6cce2dc269529ad3c54b4bf8e30175174475842e9104b2b3dcdf4533c354118a59699119bd63e889ed05e9aab8676df771623aed222c665c50474ab2ccccc693727383b2df6e5c9fdd67d842828afd5521a0163e616020078a408159f9dfdef5ceebb1030405141b0d2d7954a41de28ebfca9d8beac818a4bafb4c8c0b195d04e9676fd27638a1036ad66e444bf839599eb366286a40648149db735a4ce2b7a5f6fc8c2934183230f99f31f4e50739bba0cf15187f8750160c383f0e1ad7cdabe1c5b44aa311ec2b17605926c989eff008b6328c40538871d6264e5a8c374024f43c5bd301569f2a27f09b175c0892e7795f55f6d9f74f566a01dd85031f6ed9cb4a9358bd3f402ca494b6e2cd33ef64ffca272e92f230637fc70645e73cff50ddb2431d0d04267b455acd50e7d694d5c51f0a3e03e4abd9a536686ccfcae522daefd6a71f374008e3e3f510c9e631300ab7c26a6a14a2e5a2a2342185a4784ec17dd4fb26204b4119ddfb7ece73bab54c80236f10565a40616a7dba762beb1663fb7e81b44ceab939f5f3f1aefa5ad9a7d227e1e1305c99a3eebdbde4d363f1f53a596baa42a3f1c7ee2d45254793685e752918665286cc71fcc037a6471078100bdc5a7d0626c83f3b2f2eaff683f1083575a023caa1debc86cb8a863651f3f2d693ee12448f89e7f75e8dd2cd2353c980561f4540d04689dd72e85c14f9bb97dba3a9a52a7f30d7752cf298f929af486aa5e17df63ed54012b2412c40a4232a28df728f32a11a5622096170db8c72143ed5c2246d2390f088649b039f4afa5d1f4192044e63107f0c6d9e3fed720ed087a6684f951a5054e8956240c7be3a1cc78da6001b975e709e70e72467c79a99795c2c0d1587b0f0ee970c7966b323c4d7c1baef6924bc7685e0cafd15fe11adba2b04247e2d40e6ddcb743c057c2a4278017e07547d9ed012f18ad06737a94927dfb27da10ea1d2a3f90be7cbe17dcca9c85b0c63222109ee1984a58fabd5848348f9ed23d2212472a3b69134d576f7e0b263560a5232aae88eabe5621a5d010d54e0050a3cf590fc22cc32515894c1629571953058bf5bd910ce12e8e6143e48970d4234af83a1c1e8aec0e4a4453a1f5b67fe441cfe5c488e5c8bc2d2efbe113e98e3456dd3603f3f78a0fe7050ec17d9923e0d29e34d4b84bc5a21c3e939aea75274221bab86bfef828fff494303bb6741a3157ee15a639306e0643e3ad6fee6536da4a7eeae22b6a36e9de17ac33a3b39e2366a063ac14aba2c9fd27e3179e91df06375addf76b01ae8c47bc07680a4d3416d4f0ad9fdef285dcbc1d26c49e2bceb1f00d9dd1916dac7aae0e5afbb14cdd15930fc3b28aeda2a13cac284ce39a0508828e5e377bd9f0b1b0d3208d9b0bd2934f1541155e1e03be825aeebd988f45d26280d10714e641045b7ee1f80f5023f0daba2850f142ee3e67e50272ff6b67d9cec62a0b7f8162dd9cc4c4869b8096e2b26c1eab60813ad467dc2b70b02e62be9748f46ddf2e9e030454d18ec1d6afc01cb90fb1c1832329b15c6b12b48660d29e7ab0ee63f2238780731af491c06a250fac22fc105c4bf44f78f2507d1aa79ac0b9a816d98ac7e04c7ee68a13406de709952c307e75f3dec102c259a1c2a1be8d5198642b0204c38a6e563d2b2c85f1c304a02fbd000e169bc283de523d1206804698ebd563dc6c14927dce4bded491bc9a8b0f6bdf9993ea5d738d456c717a98e28ab0c82d52adc04e0f268207377721edb141d1f3e8a9d15d6c022c5444e0dfb1968a2298fcb01a941be9469876219cd317ce444e7e11cd2437545032827063fab511b26365ddffd84bb0ee20db61b3e8bf589f193ebcfa57d31c11cd69b0abe2ef6d3ab5bb4e956eb8b0102753b0956a2f502089fca26fbde4737210e188a833391dcf47650e173ba84e77ceee924e0e9bb6449236f00f4844ebfc2477f2da7a59045dbed668c73e7286e42c7e630e7b68ab5b7a685234dd2a323dd2512bfdc54f4b7b76cb347697220bfb726e9033bf918722444a016df3e84ec593cb25aa1673453660c4cabf6eb8449c7c3e43c325535997e17c40f9e2d662b5404c604887f19435784d588a1f2a81dc510212646a3f36be57e5abbe8facdbc0147ea0ebed9eeab005f0f8dc0163e013fa152088a55c7044d6e0719bc77ddc5294751d2e38f1475e80d3f77f664307422ef3242f780ac399aabcfbf1fa2d5bd7d9e703974eea61ef9c2ce23c656edcb1b4ab700ae02bec07b3ad3b19f98e06edd2cba5584ae427f6068d6521fd529fbaac74b27985711fb992d8be19490317ec5477bfde92d2572f7ad836a485e0bdc50e94873dcc998f138874783563f917dbdd65defa669433ea34740f5394163a0e5a9511913d8755b9ce3da8e2e1495faf162d2a4db979dd53e4bd71cf2df66bf0a660041165e1a7ee166d842ca4c11a3573ee79d7c3696897d10d7226fdf499b3fa6702b5f513021bc100d47af22fa967dc305cc181b30401eb5587246186c3b40227720231f2a14025b994a7dfa5e853eb073b636172db71f05879adf1dca652a0ad71ae492db7a14b0f948fd43f811d62c316acccebf3ef5abbefe8deb317cae098e5bbe0178fe6da339f51c812688f60d3d2ee632d950b4bd13ba106505e8ecee164657234e19ff636b17d2112b0af9c6ddc6727c8d16385c5418b5ac1e8e7eeef453dac496cab1dbfc9d40b3869f328d3d0a29cc191a58e31eba05779aec2216b4259d3843cf8db56b24b6e9553d48a5f6f32aae77c10fca01bffa2509543156d64bc1a7771ea46a67a3a189f326094fd7c9199d06b3967ffc6656ae1fb3a8af5d2f637179fd93cb725590f6ef66d3d8a308c6adb04b37fe1612a5ccf90b8be4456ac5490c7b1a8a2f04b857ff7b5f729bfbf8fc394b171fa7cf192f3ebccae60009589860c188c3b3e989b18cfd845c1cf97fba0896d265952eac1a4692d9fad60b9a854e393c192a7392f0accfb38ebe397563a7d72d893cc106fb98b0a64d624b118217da9867abe5743b8309978ef5193b185fe4c22027eadf493c6c429ff1142f40bc6fcda07f777c4a4ea8c7559bc6af3af5385948282aaa1b577f1754bc180a0be4e6f8d45d851afc181a7693a3f8ba6e9ec43f3db9f6fba2281e99d9652a33ae47488e11f8342aba3eb244f610c1cd5f1fe4a8aa7db8b41224999b37f44a488971ea44b2bf18466f962b3a0a7c8b1acee48620f1fc3b39dfb4f80f59ad07fbabee76fc0bf3de0538f78d5d89f7b3790fae4643c43a725d9ea4225fe2f66459f10c3237d663b5a093e0f40f857dc9f4bd0eb8285b4124ff4960dfb20e6d696a925cee3e443afd45a6f9cd372a30b69e4cfdee27ce0bbbee1ba456eb98440a84b376e6bba6223ed8f267e391b85ac5f7ed8b464faae631ad4e9eb7ca75346c06a6c25501781609c5dc400e3c52e53eaceaa971648237adafefe2fde63f3f2fae0104e1938fa3830a6f50036699cae8798ed1dd90cc078fc6801f21ad4b297034a7cf7506125e614c5889a1d67600df372562d0e9d27bede14da8238ea7965f7491f3fb06159e191c290d115faee9e2e70b9bec22de4c2bc40cfb9388531417b327ef244be503aaee7d7c173e204db6e18e89a96bdef1ce2a4d36a21e4591008569e09467b3bd4e0fe3b51379c996fc5100b71fe645f4bdb37ed9ec0284392b47540dd9a9a3d305e3734fa27be182475ae36ff4b1e88a3c6dbf45b8104d6008f969b48980d832d2a948f76fb811fafb8a2ece347f2421418726d1cec95c774c6f0728dabca7725500ae08d816f5d914ae361154fc88d56a665065cb8b4af3013580004c82ce2e41357a0e8f886f72170796a270211c7172ab378bb6132a03577a0dabca053a537bc2d3f0f8805d2fb4dce583a5874ed6335ff43db6a631be180d529acd69359a237ae48be8e88e276c910478ad5858c6d28281ae867e8cdc6a98d7967062889288e4f446eb72235ec14bc2f206420eda55fe8b092d2931e55846a30a42d8a1612a36d5c606f52cb39d4e10cf2f9079412203c558ec204a982beb0aaa1705850da16b2ab79a698b44929d9c05c581c03f1cbb9f0a9235a66465c77ddbc9256b259b7749446c6c11e0fd3dcc118e797b20ca3b96f408bde366587476ee7197680c08c190b6ee2b595574464e9149e77b6d7181bde39249d24825509f0d2625db2ecc4b81b1bf5a5b73678975561eef5bb4ec408c3ef6148bb24cf3495862da2ef5abe5989e3479c42187353dc8a31100ea60b670cf32001a1332dafda0570c84454c7d3c20f0ca2da1692c7bd6f83d4a4d2000210360a83e89010db8189001f15b551584c408008990bcbf3ac8669c696aebd0df9fcc6977f83bac642872815d046fb12ed0bb54fbff36b5def0f5da2b1f88577eab27653e18459cf7d951d2b740bca2813e6925ca83fa088433b1629eec644cd5734ed60c5a0fa3891f0d7a60fd6ca552f95867ca4df50a9538e6c7946cfd2acfc6047bd27c34f721bbbe9319267b94f45670c753ddb210c68fe6d7dc219f34c5ccd49becb7404e1e504177829e49e8dfb90409eecf46de250bb8460c67e415f9677a4e482452c565fa4dbfb4901c00f472d902386ae1d1fa6a53fa3fb5941f37ee69d7c7dc437d8a06a5df2f45294e13f8e903c4b2d36202bcc4f043091c447fe9430d70bd0d8f3c5532181c168f898df5d89f5ac2bdd7c1c055cd2e9cc4cc7009c8539afa3843135f90f8413440f81d788934a50af4f17aefeba7f37a3d8066842c08ffc36179f733a2abc8accd5ee2f6f9bc904de6d879a43338b2aec69c143f9fea17303efd4a2bdc0595eed92d3464b0d50108d250b34b44aa395654dcf5c2bdc566e64bcdb3547b965a87e9e3a91885a2d8b739d033df4555e21712f44853c23bb2f3320457b80569422883a81177fd6959dc6bf3c255fc497e8b91222a00432efd9871dab910e31e0a5f66d6753d1784e621693d4dc01bdcd7058555516524d3f6af3da4795b9863db4efde77071e7fa5d395c8c6892b1292e6589b0db04146486cc332a66ce39aa6f2a9c9bee77f2b3752af7463c1c9b984394a73bf53c574ce34b722a504680eed9fed810334c278fee8dc0fa3a5a8c718cee516eb3212408fc5e1368c2d2f0381a184ef20f3c8f3727bf6fa39ece04a1cc839a51102e9a96d247518cbcc92d68cd55285d24fe3e950cd052d2f152d98428f399df0fd8060ce5ce6aa85d695f5ae94cd5267af3ac59386119e9d346114fc9f3f82940ae893cda72539a62eba5ea7dbe999e1c69b9a4a6af82cc4b517701b4986d3611abaf207380170b08c011baebc8de8c3f0b1c0a9ae396a63bc9a7945275b6212e16178e26ad17df0bb2f52d833552b41bd0072bd607b5e91d3787d79788cce820e51b7fb77b3f285526f7ffcadd6b1d810baf5cc61860d7dbea37a93cdd5c738b3734bd980c50067fb6d7ecdbe0c46215360a6aad7c03904e79928a1a2bb05039088e1b2b73680ab5e04a39a707c881e099cb5cabf873cf78941024fa27dfcd234474600d5f2297a802a2a5e24bfb122d4da3204ccfb5a0b1debc728187a1d16682e23eebde4def1f2ea9f3f4b50bd35311569799d8e1d02700fa235c25b1d27d6dc3090a8f71c3f077b037a6a2935f5b92a493e5ad741321b1477b23c6f0c15d448a02c34424d41259ecc82907b0cb241ac76b619294c30b0ccb495b524295398d6db929c473d92ce9645912de5874f8e8047c16e584d046a07358881b6473b7bd8c5de35c3f6a2bf6fc2145d80c29b9e53892fa8a6a2ebbf50aa514ea7ce7ba0e3f45cc9a3ca98295d311cb8a6bc3e49daa2c52b425c52c4285b0e6897adf26b5eaf744aa1a5e5ed23b855bbd331f9a2d51dd6cf9373b22bbd2a1028b4cbee8815421bf110ae9c5be4a9649abf0c1d583b4d90a25bef15d1f968f05cc51bc459c13ac7bda2ccdd472e4a6bdeb3a1497342bee97574c986f9666e90ab81d917518201f7c6b2e1c1d366ca2c08f51df318f2aa00b121356ed658d6a98ea517bd4dfa0af01fa6e3faa0d4d22da505e83dc8ceca232caa796f67a2a9ba190f7144a1b892320a115a6d74d1221ea15e34cb1957b8771ec1d3c686766cd819944cbc1f23dfeeb0e7092ca8d4b23c575c8f81fdc008301a48e7e3c9661ed3dc54f02eb208d159746009aae5e4bf1ee7f746bc357a9f530b9305ee4b2aa95130d7221ef15d5b14c34485555063a605eddc904953c14d6cca5f74d46867264ab9239d4898c306d141d68dbe414e741bbf40cf37cb5499ed95e6e67638892685c68cc54d22fb2adc25e4dab71b0ad5238a4117628afaca9cf993e1e2de5a84b462467fa706327d496f33f43c4e5347619d1f4dc32393fb86e09369af5b8c9e25950fbe2ec69ad69981d01794b9d41b34412bc30fb5153725cbf074dd3876680989ddfb220818713fd361a7852c8f6310a9f3118fa614fd2a446aeb0177e503abd5f51ad4bdd5cf2adfa4d7cd1057613936fc2e9704a8bfb0a8b1e78c5117793a15fb7fc52e5eb18d6d10538642b7eca7b8170c7e773e3c026d61c732645f839258350de99c079ecb0a5094bacf87fec3b1f79a27bceaac56fa4e88a7bd67ad63fac55f6f65fb5cd8f3e4b07f25fc7049754af9fb3955c3b8eeaa6535ab392d65c87e59b10d77147a7c508636650a5d659ed579f1732077360f3f0c31b36aaf22d380a2056d6912a90c521b4d72992d76c4e74ef57955cca8fe856becc60b08a8fbd99d1268d71be5fc150e8e9a29f3a64c87b248c3b7a5701e3e08b930340fc35415a0ec6a8f662a0876cc27a453968e421ffe22013aabf143943f2c941af925792dc0335b7f316ca961f3b4aa1fea631455df3748272baec158fe4c67d3753a16f29a45f0f5ffcbc7344ecd48741e58c32a93d2d368b854c5065b2b3d8d1cb02e45ad3daaa76e5fdca2f2ff3c9a1e3f783cbd68c05efb8777feac30a98d4f73ca552aa07e8da216aa91c6aaeddead2d91d70a0d9c90a2f17bad9c57c932029c2892eea2792d8352541728fd880bdec3a49afb0b4a6f2067b0429c78264cc19baa467dde95619f0cf380a06f02b868f31ca08b0bb5cdcad102c4f6988f75845ec46aff0e86080ee06a161015e63479162b254dbf74b4136255014b6ca88872e328fe46acc9a6e9a92a108de36c7c3aa94d32f00e2fb7c7f2376c8239a94f0dc18666852dd885a7a03fc5281c99319c897bcdad4b41210e9eccd4235804497f2fe24b34790ee169e5272475849f2def9e4204174fc4fe7685fd28296f693abaa1b624d6a2497ad1d676961a26d32f060efd0e507e4189d119a3c76cb44d479389db54b9bac71439e935729d803f494f65fa67677fdd582fa6430f066f07cb2d8da30b8175e0a21064acf07539b5e54bfe9bcda23298df12f258fa1e07b1567aed723dfd2dcb6ba71df1a5b5b83986749d5b0bf1edd1840a6cfc70b38d6cf60c702cb9bc87caf54804d5a3fc3560ca2802225ebe731f2f2baeb468729dfbe68c2e9a1350162cdd8153aba299f83c0e60d8cce77d77dde6bcb86e8f13690adc4299f6c152b490e9123932719623b4913e7c7873799a3dbb4963466db4d59e8c9381c31105d37da6473a4d2477b3d7e8821c70bac5149400f994c2f4d7b114b3e145da9b3e8cb7e15d5640727c2f925bb9f1da2f43598b1599081dade3aa9559cd1d476eb816e5a61f339f105e829a4213ee9bc8fd2633250f679e9a4591125ee3b6806de103470fabc2a810febe05ac050dc10e9428ca881109fd799a64b9a2a8ed835c9a20fe5666c784b5d5fe45fa850d4eec51c9259a38b5e462d9905da42d7066df69048868fda33c367ebfbcd8d31df8aec08e378e2108448e53e3584b375730d3f8c7a5d9e740a0503d65c348172b7844e8a83575dd7223a9bc8d1f60bd305e993e2e3b7cbed37ba3a1041f3909428815518dd9f49a2b375bc13c030303470346b9fd56d78b3979c23b37683249ba8094b79a6d57597059e04201eeaecc0af475e2c76b6316ebb21601357a0ca9b585aa3a1157e7f75b87ed55ec10260da13f400c880ea3f08a8fb72eb94aca23066fa492b9915215aa8f21ee0d01275cd59d3a67e3cbcf0257cc55b9addb16cf11e1b52b1b6b36cbaed23a96a34c880b45b780dc62f9f1d26145c215e2fb5095f4661ac0f113e51aee84a5ebb8dd87dc3c5201cd5bb3475b50e671b1217d502cffc750f338e03a30fec39d101aaf46b38004938d3bde8c5eafd182186b80050babdc5789b4fa164473a4f087bc32ff34fc73486861f9f038160bd339327e6b5ad83db8d22c8559c1d7517c0b6d12d95891d5c8d4d7afb3b9f016f5524dcab84ef539292476628fb485976fc39aaec03cede215c17d00b79fd44c9130d0542b1116886232cae4e142211a5b285322a4ca19ea709c0d177146c93e72ae57407e0af989f16d1f12b26544aeda378ea7d244d5de39eac76b7641ae3273510f0384cef672ab38f893083a870eb5a751750f8b97222ae1de9b095833eff649828a38c98954edb7eb589a9da7f82c92ee572434f47b5e83e826aeda2a0552c3068742f8ca06fbe743c17bf3b053e774c6bb6e2681afaec19543194c95988527bce4a2af11cff4f26b2f6ab4cfcbfe29f9145c06e3dc60630c64b9e53309e0fd67ead79e647583b868ac0643278124b708a7987f12c0e09d62c84c2533a432203ee7c0fb51e635a4421df61a054e2969d9e2fd6793fb89ce77f7a08a640974c333f2b4a310b4e1b337489cf2b24fbe2ec3410f5ba0b3630b9abf08fcc296e336beea1f9d91b80c61cf4cc05ed8cfc1f70e9cfe3243e3176bee69edc7888a910fa11285d1a8c9b45e67fde4c6a3c65c44d63b2c323812301858e2468597c960176f9094a0ba0420890d0a62725dec4d0aa666350b111d128bc98b8147778f15f487427f2898d4de33a1eaa3f610c1da8bac4849e53c90808fa91b814b4cd2c5bd5527797ee85bb101571234fd90875e0a80a8da41f7be3e660ad37ccdc8200608a48cb878de7ab021f1cf9d07113f9764ec97a43da0dea149eb3219d40acc614e460135e46c79fabb9e63e91d0782235e2c2d251557fe9aa2a6ca7e305d3c64ccf19c3d3a93698116ca8f44f1e899c80da2fac2ad82c5701c682482d57a4646442bb7cf1237f59c9925fd0d205c319a29c7428ffd893de8f275cb6ad780f400c4918eb2061893054046461ea61021502bcb3387edd942fc37e4f2579b37d4b6eb8ec2c95bae56f44d8526467dcf8d8818cbe4c0c87f036455badcf19d3027d485c0f9015681fe401dfc824b93001ba11a3f8987d8b73ab20f8d8066034f4b5130e7fdee98ca14c8fcf31045b17ba296c051bca39fc74aa32eccccdeb01d300286d584c1fe7299dfd95f738e15e136d860abd3b734610f65ca539254fe7d0fd26089c0ff7b7f750f801260272f166d3282ab439e81ba7bdf46994a7e48f6e4d62af0b99e7537f3c4e2778148dc3478a684c556521d576731078602cba2b1dca6651ab921b870e157fe13928732e6eb95c6488885174173c1243170c538b03253e89c0fad62a5f3a0d486ce5962e91342c0c8c530e39a5fa9312debefe920df358b81e49907163fc205f5b2b445c51c2a0fa21619f320a0ec0466ac3da2c38f8271ed99377874673585ff40956b7d797ee71e4e3adca1d7f662069e4be26249861f4ac2815f9b2587b968fee46a21f0aacb7b91c3c36058e8d37d395cf2c37c4303b48210e7f1c60039489c892b7b735b7acbf376659c849642807887b4f6e6367688b7302fe435785d6ec44d33348c7239ee38d4c70bf68abbccab6a4bbbe1e2cdb46960191605527e84308c270a8b6bf1e2d09e7a69fcdfab6c4071cf9f52828a5974f07b16b146592d33537f9a9b70d41d43b225349cacdfd1d5106f1fb5d2eafdde8869b65baa532b92f3cce7bbf43394ed559f96353f0417f9dea44c515696192ff755163db243fd6ae53a0f22f37401508395daa59dfe5f8fef8cc66c0467814130b7e34ef65242de74d3851579fe30cab5455750281ddbb7b9e8e65f018194a2be90e571e5983f7d67d15fc69b418599bd1d639bc6a609b0c49034352715537daea81257ace8ec2eac82de375a47c27edcbd4b7b04504772e04debfca1c91fa1d1586b7c735bcadfc0cef6fdb900e7ced467614a3f00929a3f0f308c053917394c55734df98678291125b8cd0b58e46c46568624e21e1d57613033519626b5bc2a020e71f98b004e228c2e8d6c5e31f5e740f281084fb1e1bc02ae7b85b39b0c5640b6734e34a9d4432d7848e8a5a478451f524368cb8c75faa09b8b119e15b2d2f1a3d584951d030dba5d2eb4d5f399609c934e1b0f86ed73cbb925b3e1df843ea496ab80d9ee1d245ef0fe21e1f71781ccddd0cceb60cfa80ebf0175c42889fa4d8f063e15c6ab6333d95d11c5418d0241c20815c44789e286a0d952677c8c25c5a2040aed89e6d83837d96dd0d91ebc5d1bf5fe5a0dcda219d78266e2d176423d4f34778f18fe40568d8154dcd5f4999d41b594579e0618263ea45688aa1d06b802c84ba13ada5fca4fa295d1c2e348328e3a9564ca431003ff4bf43664d8999aabd1560c8e49dbd95f5db23606dfe23e98e8a0b4b21cab01764fa3f31a952172c1313b84566490ab1cb74bf6801d24c7bba2a2c7fd647449a62785e844f5cf4c45ec1179a99e9958f74a2ac8713c2d6285e481304b93542821a3638c29bc5f480409fbf553134db5e680221e723bf67bb601755d7f1f8be320f3302fecf13118fdd9f9a5734b9ae38b0601b59f07cee7a2bbb2781626c2306736259516ac1d2e551416db81b5d6ec14a6b2bdcee1aecdcd9bfac2933fb8c06ebfa6f9b030ad010abcf77b3cb4615d9d8d45654da72d0e49a015af01f4b65684efd442b8eb63751d0364ffde5aea04b0110224608bfdcf1c44ec073e88a5e8587316f79fc665778ef108748a2e4bfc4a4bedf10745d1e60588a8e1408897cbcec7b41d10911230031df07463918b0b3591bfb7329973ba532d0e3f68421ce2fcbf24ebe81e37846d540988d19d0503d98469c31065ade4a41699d7c489cf290895b39f5f4cf39fabe6ff0697c137e184683d037b5405d9f372f7c6b3f0b464a7f5a0b6be9f78afe82e8cbd7728f45fbf217c415df2d8c4b37940bcb6e2679776e6e4546a38320c8b897bef97f2c76a024eedfd1dad3bef816b6e20ddecbc50a99ef0bd0c9a5aa1891d5b28186ed8b649e317f043d7851a2bb3eabe42f79685ad6bf1549e2ccb414c219a3a0f5bf938f385dc633b56f70e2209688eed9dd7225d84f0ca43478f762aec0252215f3f1dd7ad50e9a9863ddcfaf4b125d3cff3275fa3b0bed56519ba2ab664c4bcefce4f2142309a5394ffaba3dc06d6df14243d5105737cc9b4e45f19dfbed0d6c0240221d225a8f2654697b57205bbff483cb3fcd3933cfc8197dab2668e8d61f9d934ef6b7c86655c686b9d67ede1be4c93acc42fd58b19768b12fe9bd4defa2d36b05ecd7cc6d1c88848e16f93b6caefae24ef258636fe68e9191873cc2f20aae0387dbc30601709ddaf5491882b6c5554ccd3d93176f2e6e73a90f0e5b9145c18706bdc70f79040b753247b4a971bafbe8e38aa0290892aff8740be6e812cdc440fec6ce3ba65486d2adddf25b7946ba96f9fcb7239f8d814694fde459271250a62f28901ec670acc04e0efe2f8c52ffe057420b4e5ef3d437b4a7b63a45ed489222ae67bd7f608db1c64a5dc209e809fbfef961136a18f5922dfe980ef90a2a1bd2dc7d36784e082ae6f95b72546cfec59ad34e57b5e9f34d182df0c48268490f7ddfcbb00d02b1d7fc1b4da3b2b0c1571ef1b41f77b585c8e0ef3310235cf4047a6b4a3a45ab4b846906e978daac46f888f04e641b54da1c4ed0c376c4efaf6034f90e3dd2ad8fd55071e9d53bd0ba620c998a420b3aa4cace69f14b157a9bb15db36c83d782d3d72f4111c0a509c513ec76230d749751b4995e539e5f6891ad57d8a1bdc4f3a49c9b484e146ea992839b886e05ab1916af2ee2f69774e53dc270afed43b038c349d263d32168880c2074beee4117e47711387d9879548459efbd26739e5c4153137c126c4954c22b5a9be498421d9f17a514ac92ef6d467a3dfb60e47eac912f85eaac91cbb77d14c2452a51473fbff6faf22dc906bf45dfbeec8eca663979a05e803582bd553279a2d383516bbc0ec8a5eca528b96af794a6f21561bf34ad87865074f51a5752247a0c781a1f158bbad314c9ee38983f7446ed3a16967e6e603ba1fb0e804b3cade9bf68db43b61fd0eaf1b673fb25049d30df46b5900273bf448f0e63b1506bd20f25bb70402390a46c6903c76f42165916d21a939eff81bd64eaf3fea7f9a313f532d38244acc739bf18b522dc348055044282ab1c80b32988fc361868678f16128eb80e48b7e5dd8bbc1276d64c96ebdacd23c8940830e117cae41244ac1a5c87c2ad70280fa36fd519a293373eb65d1a5d073508df9ba29c8e64665731fe79ecf5c4996d4d1424fe85f28a39a24bb41313cf4bf74ded53c2acaaa8746d097f7f242e96303f206fb5582376674541caf9aca663b26325047472d4f5dba8c68c78c29adb62229c7ad2cca11fe57cfeb6d97e783279a7a5ed99addbfd07a336f24a375ca634fe4ad17c6bf8bde97a318d24e75ea145acf1865514ecafd910e451f7fe80ac277899ddf6fa68218a341b9213b44bfab8ed29a59e90a3fa33d008fc2fb7d76a07b9676e50b2cf3c58bc27febd24d430244e9b2a9f8c7a9f7cffcd863a3429342d4916d2da7ac76ba65cc75049f48c7e42fc5c907c87a0d001f1270896fff6e24c3fb92d2919b0a56ac4d218864d972197656ebaee592e90ecae053a31035ae9538a0811456aedc715a041604668964a60761f8e4d935ca629e14aaa85a9697e5d443bc9937a5549eb142e5a4f8f8e1b721d155cedb28541510798f6941ecc100fc3ea7ef10e64616ed84e55f13473644b487e034dd5a60962d0fa74719facfc505c502e303d54d2c09d510275876473dbc8fa3f2c262459012a808b15e37d9c53773f7f8abfae2dce4f791f392f98049c2889cbd842a66e1ce9a4b9d94306e4261ea20dc4129a2d734cfe2b1a6522e084c4579b8f50a1af7a9515d5c23d107a5d341b68e64e630b366d23641eef4eff92bd910332b8a6821a62a7110e98caba250153c7d48831bd73c4eb17ed0da7c7cfb7ce3baae83c1f1a79f1295cc4f9be1489462201aeb565a68776758fd3583b4ea918c094f7abed4848ab0f4c3db4541bd0cc3a435838901f4b683d54033a00786f047792799b10d624900ae1a533c16568534ee196bf01c2ebb79f73b899e5b937fe892fd34be5639e022cdc5aa90a633e43d4e4fdd3fee9de34e89a90e79196a64e490958b6e9430d66094a86a8e840882cc1e675bec0c96959fc8b39c0ae372bb982375c7c75f8d0a6a1a8adb768386f222b91ddfae5ee0ffa0de7fb58e10ac6f4b32914f94fec85fd21f3ca1a546824a090f3f1e156db461fa49e1ad9d16cd27f19506883620a8bca0a227fbe00290eccae5a9bd6ceaa0797087dca7aae4c8625f8c9e9a52241eb5e7c2d883ac30e3fe8e083046accb83405be8dce81861a925770456b9370bf3d79a1109a54f138ae4f9dbff42be7c339d06f51e1eeb53229b81132940f61c45e0d465166e2952b1b2c35807fd824fe7cf644542d3156ad117379027f8a1747f3a9e4b444571342d0021acc90a568a7d7db53c146fe57978e19ef3b4620c49f78c5078b51e52b01fb5ee37af93759f4bf0671c77c557bf05c6d569746d35b1f37ff38ac6ba9e4033087a140759b6beafe54cc38baa05dfe6028b80c4fb66df7df7c41e8bb3e7a3d1ae37b37c1d8c22a7bb72cb9839802ebe3c5b1bfa5abfed1c6361f712da8321340b9282b3205360cb0f5626161f90b5bc487d62f05feefdc395c48351f904946ccd62c189e6ce28fff87f52af807243588f69a404e334ebc4d4ec692a5743651529af69974da9a1cb174248cb2d81bd7acda2fd606132ff45e7f7bff8c993f122bd4c8d4f812eb8adea143942162e3111e74eaebd8bd3d970ee831a4ce4d626d2d847886f3de7a3215bf8179791eaf93e03ec852a0e7d385ea9b20da5996d360ca5dda5f98289478372edc21ec2891440c785cb598c4df6e0899b8bec9aa2f668a8ab286f01a20d5355678ea0b7a8341abacfc1e3de9c3496d04128fab9ac25e637adf2393fc42dd83b33acf3510e4d6363e949f10f65deb048895798959a364674d3de64f6a42e11282bcdd144504716c3b141dd28cb56a42c7610571bdf41a1d8d1a542381a33103f1135af73e6a6bd46e2b52379047e89f8f53c6b98d9b3e3a7d56107c2be087a59f48e5d847a4d5c8d8f8185e0a3580723aab31780050536f2571bdd9548247ea1fa9336428f4c7245f3a5ea9d42b41e834de8c7a6d253058f871e22b89d4015af08c764f201a8144d153015e5786edd5130002f12f3b65416d028a9b974b5bbbfb9853eb6508de6ce424b40ce615c76c4d4180c3bd854b59a005feefc850395f2dc281b17398e4fca8535eb32eca47ccca703650fcf548a44ae0bda2e5e8780cec4324e3095eb837467c8cc72fac8d851a8a9303c6400563266cd21af62402a483f62df1958fd1ff02463374a4311f3a20588b5205d83edd42b99ff17b4bf1bd0816e122618c19ad98d47dfa132fc78a922892a371d46bcd122f8d4527f2cc5589e97840b79fec2953264dd8313e74207d22ace7506857568aa5193fcbd209638e17441708ff9c80b22809ef65d7fbd7b1dd7a314d426cda17039e0caa97fd1e1d4386f9b85c038784242e8531640680ad81e82606710559af229dd02fcfe29e6e0cc86108b35c61f3e637402f3e30bfc33e8cb1dbcf4361bdc3b06b93c765441df9c56c316ccfacd51f1c0c20cc023aa785567628f9219a0672e0c33b5830ae7ae51e7bc7a7bf79ead82694bea1b17e91732b945b8f6c00778b73609aa01e403c945c25de79f9c8f31eada785425714fb4cacb6e2f66edef6d16fb1fb674a1d75e1a3c1585e0d154f6750a055fc39065d9a5895ec7a4135db399135eb66b34f84202406b254174f70ddf29dcc895f8319d40c1658d76defc93d14c374e7164f615f3e1760f30c1bf3dfbf9241cf12b3476faaa6aa9f719540b37f6f8ab49d5e503600c70a7b5c1d44b9f73350c74e114faf133a39192749c74f17e39e9a825a96a07f15c500ee5f6d4ffa3ca4717d3f5157dadd398a1bbc73f30533ff09bfb3b6e645a43e8a1e2f86d12b8408ff5c8399dc934150e815fa56837f79b4d8dad894bef35fe5e99f6dcf24e98c59021d5aa147e4bb12766d651a0ef5f8b70636cf46b358404e869dd1eb85a32579651e944cbddab998d44edb5daf49491770fad85e94651b371c84e24255caa117166284881bed75e1dc55794296940d04417769ffdbd9d5e416d1fb2cb90eff938091cf9a5cb163b0be5f90131d537a65d06f75e73cbb381d950173a1f8ba9387448d193c0f2edcc990493ee7a623d6589ef2be4531e808e39de029996d453fb8cc308f8282a965f8f12a7a9bd3f87dec431b6e3ed8e55bc266fc5390a5fcfcb4c42faf8fc407498dd1239bd59a09e490dcb68cc07305c88e29ed192ee91f82abee075dc6d5e9772724368da99f0c6b44ef4762aaee1b58ff524260f0207acdc4002f58b5ad32018d6c3eee30780b4497c651ac896153ed7441e89c1082b1cce977ae2a7b81bd6442e72a72ad0bb36cc997bc611882c0e04d07403abbc1c64046d397c8bc1e4da5ad46028a28d6d47938ff55aab75f5331d0244443fcd36e5ebe5cd75b88706c8274410feced4d82b780984f6b1974a5b40fef27ec9ba30adab04a43b783e0f78e178c383ecc9abfdd0bc60bfe49424c0f23cab955c57fc5a68b5506ba1663d28d803219bc58cbd983f52047f561bc4e4a388e0ffb43d99a6d59e39a3db82ad1fc5ee64702a3dd79c0bad6c74ae4a63127fa241b9d6fe7541db57e9f6866cfe48af87d04168a8aabf04ecabeb0ffcc1ced0acf7cdd81d98d82f1da55a50f2be1371a7459921379ab4bb7ee61114226a6e1f8717cbf5575fbb6320daf51cd564e4850f212d546597fe4ba15bd524aa48ea60d02e1de081db1d09d655bdf81662f229fc37135985d156e63f78cdb81b94f7ae4b49ccb4a4f8e24256b59f64c9ffcf6c8c7592dd8f1c76356106e798c31abcdcb1bfeff8248653e3299ea5c22faed6beaad2ed0fe90db97a5b833f00800262445d167b05f5ce3300635be0dd0cfc1ea0ca7486cc5a0eef90abdc8aa197fdcb850c3d348cf2f3f2aeb975cf878fa7dc1b73237a05bf43db590fbdf7c859a38ad6867fa0ae59484a3db01480a8a2b32c9b977667ab9cfc17414f59b3b22d02316fbec5ee17e06f3eace61a15c506ebf30263b3a8fef05f6c0529fa61f14754f611fa4ab48e10fd88b50d536b225c31ab070802d7c49977a9f7f7d43dca468db9ef2c32dac8d6a369546c351b071b9429c4e461314cd36bd2e61dbd08e28cee21028feabc84f0bdd5cb7f56d804010954111213d93a6c7295e6f42c6d5e6f2bfe889f59dfe1fe39d3896e6c2c7be52b50adec2626844ff8326aab7f7c39f1a2c6730f8760180089f50651faabc28de7a270a2e22f7e9573cf8a8ccca9b652e1cb76e9f752126ae44968412159b86e056b7bc2734113ddb09decc1652110199830a7fb8464e7710c0e4329b0e9cb46fb68a1695065c84fd4601d41948dbfea05839f97304370560f7926eaa08e6a3a4f9bc001e18a5a81a0ae343c010fce65bb1a76f91f2555014e5a9bf986d6af98a6568c2b94c84c2fd4ff45047af4d08bc2b95719ff25966e8f5e9a08aced5de5de2552e9a23adbf7b9ef9ea49193d5788d5b29ed2457fd0e48e0f99087db9329d1831e688727e18b5ffdf0ba9338372674dfd73c595cb39e0d02ee6bebae632e3f0bbb6172e10b1c574bbc974743a74381e1d825c57b62d30ce4d30cf775f7d4a0e11338d5d5eaefaa34f0906d0b53951dfe0d56238a9c0de346ba75b4299aeba08766fde2f391d4456c345b2b7e1e5cd549eb36d2395d4ae94282b8a5161f7fa1de74e16454f8079c8b90cdc454cbf382b62bf1b3b420a9a4316bce9ba7f3cfffab5bb4c57101806e5543ca52cff200b8937f4d2c8e773f6faad782497c2a7fb11329b1b085a400c089f0910d95b2d82d06adb8a0b1e5b1b401607c95f29549cebf0b2bf3efe539c3025f9bd3545da5d4acb0d19a69ad9a29c79132c3aa5ea801539008c3e8d4ff5f2a15fcdf8f55b77002054f0068bcb5446fc095d1972602e007f99d301ff6f708869f17353d3e400c06d8f1529050fbb75fff3f6c8bd3e9fa393f4de5584d827972a721bfd17f052449dea5817ae07930f36027c82d56f6d0bce5648014a0be58763b603d33bd459bb0c62262c36cade76ac08c0feb038896ae6e9f4657925ee40975326b2e786522546e5b23631da6921044571d33405c2d4f2f6374c5741c4a9ba970aca43bca06cf2914c0629722413b894d0f1ebe8ede7581792163f8db151737dd7ae1df577c090f50d1321885cfe5a3eb051343c298f89a7ff406acc11a723db4094702ebddbc00c5306839f7da3dff8f98651df904b128bcb02fa6c967bd351803955ff833cfa2317e0d69a6b969b2a7077c1b21756b513de0e112f6e114d17cf2a9293025c9ba271984f619902c3f7d4b6a8a532b05aea0e420fc09b00e4f7bb0686c18a0508954ff03a7658d239d44b70c2e7382128b557733fce620e8cc130535384064f673c671e54474d13713f34b1488a741013302f08cfff643436983b0dbc2e770c1616eb8358b69a2aa6474250b37171dc59876a07f9dd35870d9a302f033cfd96ab24e83c7f146f8e69d7fb729b8f370fa5ecc8628ec13832c2cc9220924deefa7e9e0602b049439d5b60f22664c487285a6fd167eb29ae21a090df4917e280391a8772c73153784cef02db4e831cc3b9b00e7241dab9fb0d067f9715d9e2f145c921070bb82d1c621c2c73dc0835c25177a9ca10cb5f81491519676925193bd7d02aec783f582784228e226aa10ca25fdc230c01116ecb19e3f129bc35ea06de82a69ad6efd570efd1e48aca333d1afdc9c73a363651611b7b119accb2a2ea28a1b16b35c6283eaa6453c7dc59b995ae0b53390f93671c7d3902733e0c9702448e13045001b73126b336f3ecafde09ab546bb804526423555aa1b3eba77ec50c85f6cbef8e272853ff5f334baf9802b012ef902c7585503044bbe412f48adc9d1dda317db7061e6a1ac63f80f2aa5a9c4dabb7163be09ecb36634f8abfb8de8e34d6988e89ed1404ce1d396f5b8508bf70d20d42050a89ed054b61ded629f4293d29a1324f2d36fe630491fbc091bd62fc898738659caafe0d036cae0a9b4f7c2bbaf64766b2bd25e478f1a427d31d022fb7ad12b973b82d04f5569a519468c63c6794ba4595a20524a4df1d84f2f33184d52d4e4725118199b1e26f3c9aa3ea196755ad3109576af1b6fb845167e94cda0e8b117bd6d4968c35ab143c29d27637ee4607e87602578b81c4ceacbdecfd57d1ae6eb9c18971543b46b637656197328c2c7db7d31879b90551573b1ec2b5a649c30ad1715272139c24d64c44385952d8beb688a373c054389df7481908ac23dcc70d620bc95fbbe843450dbd1c050be680f198fc63f3706d32543b122fa9290147646f3b4015d427eaf3c6c941ca80ace7db6411a4e4d82f9715c80bfd5969c85e39ead29b9400bc578965129bc9b424684b29fdfa09603395e80dfe60f7b8d0b63510b1e9b1770dfa64f5ab4d501dac28efe68bfcfeefd16079f831837fbcf48464764cb6a20263b657ab8948a420973d5b0d1f3f65c4cf337f16e4689cf7e72d1cbc0de6b6466f24d5f571b319806431b12ea6f16e391d7f3325155243cf28ab203fcc372fcc3bb6423b011339d2cc880876fa53423ac2460549af473a8a7f611b52fa267012caa06ed0f4e9c8752076d0e6a91e9f24761894a0125b3fd98f006127e33481958dd3dc6e666c85ca015eed8268e1b2fd92c63555dd2c7e765d36202ad4dadcfb393149029be57b6248cf1a29186b36a0db51a907459a75d32d36654bdf5d8517c3da0f490f9a301ecbad77eb2785bda514c7b2d53e848b55b86618c309098c3bee8549eeb917e7ca42cece7401278aea1e2bf98174c717be5eab1b99bd3709fc57d3ceb22b6af49aeaa8f0a3286ed901043da7b281624d39f50003c16838d3ba097f01809a985cf5cee3a8bdb44e8c65388b5f6c27755dbc2fc838b4294895b4ec4d23ad97446fbb53db606fa76b35d9d141fc429fdea6d69b274a2d37b0ca83dc4608348daf5566b5a53ea113f519587f473c8a1920654bfa8009bf2c8e9d43c24191ab106191bd1d41eb23f012f2f67e83ded3b04ba7745c954a88e7ad81e1496a2fb9e12a38ec66f52062540c925ef6c5299867a10cb44bb614398d46bade8b777c025dd46bee1a799d8d0e1bf6beb3a3b6a4d5d424a372da2360866149d2fd8b64a181184cf926dd297dcf56893e22a417ac75097e06e32f1324ad3b60380185404fad5a0172174b2e0a22ee304b22adfea27b74da72fc1128c1ed50997957df49c2cafba30a2278096a23e52fd56402329699504993068c6a66ea746d4dc893dd01f9b4747cfc8e3a440705ec0a8447d351a785e761e4523a50e83ff3c4e0dc02d8f02af21a9cf96134b7d8e95c45042f42a74e30b8a42c2c4c8b22cae1a6f95dbd63a04c107a310a638e52fb28f1d83f742cdba2287c124db82f710945cb845fba583d2a3e40a8857c66d3e42d05863f4d76d581f59d9b29260e1888053de68231d2c8c4bd5b0c29b06695915519c74eb09e61c3a13bbe26ed218ec8284284051f4a64f3dee5961550f63d4140041cd1dd3b0632bdc26f7071c4bff4801ff5ca3e0c6523ce38b89d136f9eca3a1e48c52df4cc416200e94ba689c6e2f0926b108951886eca4b48dd991c1871d6adc5e8bb3edde425ddbf6bcb99cda165e28bee055e0ccd8a160b07ff5dfaf6e987042d1ecb4eef3ab0680ff3ae26cbbeb2ec3dd6a5961336113bb3ea3f29c8f66d12a6dcf63a0080b6536c6c1826eb6d27b717aa6214efdf4dffd630bbd66ed40504cd1098f089f32f8023c3951d41ecf28bc065b78c5e729deb1dc862324a5e14dddba04624dbc6b8b84601c370729d3242524115fa16c52be7091d3e4b142f2e35e90a40d01c517355344d7e5cde718e141f5997343311bf954045f7c67b323b8c6269ca6dfa9e82323e9c2a75c85aca7dbc4381da510421398a69e874d13f13b7371f3f5aac64a7076a82a3c6b10d9af887101e21f3239f46b7d001f537c676cecb4c52ebf6b811a60023afab7cca97e29e29c1fabcf3f550d98dd89ecd1bff229086e0b8d53eb6a471618429acabb8ab36cb2c162061aa1c65c35e9e9de8a180a3e5b3bb17a822384ced3210ff0bb35888b04bd7c913a8d239189f00408b28ebb9812626aa10287135c09d15eccce419f0571005db63c6d2ab445b918bf57b81031a9b89c6e8955811b4ca42628ba76a2ad1a054a449646c8e64d1384d03bf3c24e6841ace64281a61e2cde5284594e5a0c6e6ec829879b8b04127d7068e16233ed48b1bdeecccb61688bc7ff7cbdfc7c2bbfab3748ff5d991458db21f98744b9b3ccef0e72531cb5d7ded1277530796bef091ed2ac840da5240501afe6d5c38040b6bfb7afc64574e62c22bfaa7ad52384588a6f157a29e17f07a5c277efa1a5929d500c93d4abc31e735b598d364f7c2b66fff04aa90985b6bef952b3282c479c57ad862e6dbf33348f91ebe5c6f265a9e8b64afee8550c54644271047608bc19ef68ed88e023c153a126ee75070e74a9f6facb5f55e868d22291e026dc4c4cac20c9e012a3fa01c83b684098af2b65a531364cb157401859bd2fbc9e1ffa95ade9f9f288654330cb76043a13abbc4585ae5e02141ff4f2eae561882980801bd434b427561158f71adc88e9d2a7378a0c0d2c66c8611f894d80d7db926ae210d39295cf40e4fc719281447e1da490bfc949b87837f4b50df0c525737abddd396bfb0155c5dd04152325ddb63610868f4c2a3162ea116114420ce8fb050ab88703504f934b2158034a19e99d5e108c5477ca964d2465a8c3dfcd1355b7082646840c61b2a11f6f72f1647d08b6e7dee0713cf460837d8f84cd897b71019bf3d7cb64b93053d1dae0e9fa45a64fcb5e02860334012491f88cfa93b9110face5114254394c4fcdbc20c43d7fc3bf1f699375a0af968c500d0285da29642e09e0b049dd16456be31ea0938212b0e2a55af04fec0e05cba88642c2b2f156e578d18beb5ef343b61a2970d58bd077c2fd19ae32f503203a5bc15788300e63c3d4b644c85eccb6e19d8b1369ac9ce812a75e53d6eb1319554db973b26914fc0b681f5fcb28ab1e7445cf8227fd5ac1b6e865288b2037138c2cb5d3c2e6be3f7080a10c19e46acb3b6dd253158b27606f7d6daf2d03f7055cf3486b12f0dcca444fd14d0aa8087c02fe6b4331117c20a995f18b3bf7f4caaa1ec098d66fe23a7072b3a076017bf81bab0d718e10dd7e0d212e2d2e570c3327c78b88d5104ef8bb4c717e3b08c5397cafeab63ede8a3af05ebfbbb223fb7964e688d9822afd93c7feda88acd074ec1cb48bf49ea61a9ea838b88195e0b4a0a33bf10fd52a4943ee9533d3833f8e1bcea71a75620f831b04af06ad22ab48a9fb8db6e8a1bd0e85f3d0c43a9a2e7db6eb8eb9640217f0bdafd767882233b14a360fa1f05cf5b7c94944d84d85a537cf9449a0429821734398605c21174521a74fa36be96f9c6152507cc089a83e64e734a163306681c678b3828959c755ff4c06aa627871c4c30aa32b8cdfeaf1e3f42de5d4806cba9bc50a593e74db3956d014b65b74388c84e6d65617a1c99750c41c0458a37cf5e9efdc0b4c363134a21b2b655164229dc1489dd6af02658d0721e1b5a2401bc301110fc78cb69bc8d78792a8ffc82c76e6aa7b50e8e84d75d81681e54705820929cc06aef1963dfa292adcf781c212f2037a7c3605655076ab0524b29d83c480a3a5cb1543a4a512067ef17271de24e49d28d8868b26b8a0d6aefd2f08c01a88499afe84b46eb8ee7b89ec00067f7a088679f36d4c076d57d0c93b924bf4aeaf7927031f769ad9670dace0b2234ddb2eb9bc9a1139fbb1b52fdc8356e7d4710bce50e71b165f8b529203f8724a549f8011fbf809deb4cdc7521b8284836282a5841774d7fc5b5bcb1a40a564922c810452fb3fd8fd259d754d242ede376657c1a84001c3b83f41ec3d34f0abbdf8b7a00a6ffab9c2337efaf31d10b507e37a6db0908478236eba5353d5420d71df5d1485c0dd3d5cf0f213c7c61fd53681869f81d6ccc233ae12862d2f916a0c69cb175b03f65a7b9fd86e559ef7afd5b6758668be3da159b778b69a1d3943f983f78b3ec9a4fe976439a93a28d428f51044edf11a514be0fbbf4719e1ebd9107d284054914aa896467c9466e463295c10e788e4df61b94c5b6ea81682c3f6ce4419c99f1fdd0986297f27e65637946ab645d01f66c7637580d028905ddedbb4946bc667d78f84e8d3cd7321373178c7b49b6484e612a3ff6f50ea745099e9ba9d72ba4febe5488ff301084df0ad1ca2066143cc009fae03503264223aab715497226cadcfbcaba9b184a3ecd486071d821883c4816a976705598525d15b5affd0c764c75c3e0dd708fdf1b1d0a69c0893c1062b042e2942aecf8c90a8191b132656f57d56bc3c8885380296bdf08cf7b2c16c26a45a406f177544b99a774e3e8d17ff7377528da7366dd433ada41045f103e6392f942f6ce2d39bf080ed9ba6a508672a5c01e68deab01250b4a008a1f6672919bddd1e8031e0ba6b3a632458cf15429f7404acf68f8ff3df5f1a2869b2aa10394c6c6728f985b88ac294c9dd4f2ebcf20da9bc12e02025a98012b10c909bd125ee85aa506e551edbeecd70be0fe7aa501440584446efa0dc100a0da5232312d5e073b96e34f876a6ab0328cb60ee1f9d5d7e78ccf83e4c3cff81737be330e0db4c341b43d2440e846073192f5a544af410c749f7d688999032c13682432809c857a3c960e7d8fc6ce8f87513f4118670658590428d81f117af67fbe715c59f6ce1927ee22352fb9d457586ddc7d5e0d7e37b0f60ae7492f5093ba22835a3e2bb5f7546cb3e37291586178abfcee616c635ebb782eb7590dee9e516ee504b71cd18288264d1f09041e57f159d09e5a63118527dfe671bc79350e21b1dd415827760b828da380b074cdef280a7372c3518f361f6700e2a7bed01757be040cd161e0e948e950d8de7afc3289dde5584a7c6e1d936305634ddc301d8c762066b1af2e5512ff7b226b82feb2474ccc983b9b4d003789a40e5ece511abc35582b998e6d6a5583e818a92dc79095d20b4f402677ec1d014f78c3ba82825987bd3b91b0bfe1f34dbe3e80d06d8b0e7b4ec6dbc61b17e33c039fec0f75fd0893113c65fa22fb3c1e371c3b566b88fbca2a94bf4247a4da218b399682e3427df8f6185c77b3421d4af363126d3ad7c254d8a4b2e84134389575cb74634216867d0462bf2fbb268c3537b67b0704977b89b8b5cf0d8e4e6fe869fe145d30fc13665d3262d4c270254cbaf98a631e7713c76f4096289c2ac8807b2167ea31822b0a68145f88c788961b5ed8528cb7f6d16e545182df757452ca4d4892cbae38bb05c95772bb5a614112c774f73ed53e2871a721884a474e38bd395b8212697b900cdd0e686c782cd0edf9b24ac6ee12ce73f4e87a26dd859670642f27ca2f460224a5654dd3d364f28427a0383b2cde2b33308d307fd457fe44297a863f4878177c646250a5966b5a35f792732f3035806109b67d15c497e3515f6caf5c5e0c5f84813e8899f9c60043cb7a962ecc5cc0512e8ef05cdbe5aa023fb07c9fc7d47205bc1c6e46db9db4f7bfcc6573a3a4ea32747e3b34df4e53259e97719936906d99e72f70194a11367f5d677121365397d9e36fda1d2dace0a28ba84c1b43f9d349d8527f1add83ad9faa395163cd14e3ffe25c280a654667f85eed9b3dc51c85288564791038d008a4a044a5ea0339dd277a522808de14e6c705156dfb1feff7140342d528e53d40ca9d035d25081d8a825e03d397abae1aac737bc6e90b4f5cc6d44d65bdb62691f795d0a82f41dd7c77458ed48009bb41d045106cb3a398ed27c6487b1bf3ea2acbd2c0ffc6cf3c95454a7ac96cf65f292467e7a5d44328ab293b1a7e13cdd68ba088c074941b2e63d6f47d3791c21421ddd9e10d72c03ff23d200c493c66b6e4a778d3b2e98c59a742548b2aedc0d06e6a60bec6946eee52ce4b728cf7a3f35a46b5220d4143949695b711d0056efed5fe516e1df63d7fc00c443f1f9700fd28d970c34e28c39f9943a38eb1caeda54be9fa64365be964c182c71943592d1275099777b7b6115c5197abe9e05506e1d5332b631a8e0031c6a5db159aacbcd60993d37f3d51c4508289c8f8341dff88fb45ecbb302cf934f098725cde38e70ce7ad5cfaefe94b27640e99e9d1b4a744560bc8c50b3790b83ba13468c35653fe1823401a60a124043f94af186a446f1f24fd19fdc228c9d1b9a695185cb097e4d36b635dfb830ba650931c7b707dad0ef2325bf442693f377f2af3070be4e8f36031a18669bc01cdadbc107cf1f96125b9d541a98ee0f2b933d8f0686e31cd9c7f197fd0fed82d45d29fd8ee78d2276b8d63cd1cd7fe98a4390646148ccd1d0d92f32ef2148c777d68b2b3c1184fa4a5068ad3d8d003137250cf3c6822a71ef9d1ec734c8132efbfcda5593d641062a970bff00da17db0092e36eb4ab98bab11ce21223cccc08b3b7e2ff325d223110745772ee2d04d8b79010da421fcd5d72793688bf5ffca31dce1ebdae2dcfb61adb8c66a8b77f1aa432f0a6402f1a8032c0e7a646ed86ab0d8fdbf8e286f93d53fe186050e18c9dbb5e1418a6ce33893cd457f7010c8d74999cb5cc213387e9b9feab4b61ac22944f9a713755ac6141de8df28c4b10dadf635a0303d15657b3cb9de8c884b3b187cec699b1704a404fc504fcbad323da4c038367b7b61972e3c8107f102a1da996cb6bece17512589da3e82dd9e9e79d7840fe59b3ee83a536a0320f46ac719898593b2c9dc011b5bbc891a7c7fe46b1c4a04d02050c4424f76fdc330c947de47a1b8bd950f06cc716bc08d8754e36bfe93cfe35a3182ef036c6a1dc544d1ceb7b4f34bbb393ef9ab6454a301124e51b9385aacd58481b8b8ec6eea3bfbbf6724e8f8b37b6b5d42d125a1505b049556669cbabc1a78fe144e3b65e999d55ebd06337069745f0fb728b79ff9c037ac4ac3491382c861a655ff2161f5cb08b11d7179badc595b39be1d93e76e8c260a0bc8a9910014f5e19a1f506726bc11e6fd07dba53d6e9d5e1e518d5c2e9edd6e6c76b72d1e24ac9d95858d545dc19ad77df0a60e3932985f94c8ad92b180b603f3d487d5fd61d39a5a342da9d54a208b4733c09a3c06fb364a7b26e64ba4030514e72b240ee6343bea79af482a5ad5d040a3af2bcdcc312224d4d1c593095cd6a99586564dbd0d1ebec1b04a3e657c24b58095e59db0123f38bf27f4fa6782549426a6c8f554a29c449a7af1521e9a29fddc9b2a46ce5212f6604291907d2e3ccfa3351c7e7125f83c1974508f0673245ad8f39ade5f8c689fa16abac6d95635bf0aaceef284890800a33e37cb3ce8d499ae282af51a8637282db61cf4a8f89669dd2bf09ca85c7d6190d8fc53b830301e3576f9a26f4c33a08f29f648556d2a932e8c9bf37cd299b1ce7a9bc0fbb8d8efac6acd879dad1d0a163d3db41a18058fdcab7a537fb388ea227f6f69af6bd9f349ee8f5c6dd05b1fcc2b2990677219368bd2417cc2490ed043a2a3890fc612e7042d39d1c3be038c733f95491ae4a00535976de05e66feb33ce6941eefb38a438291aeec999c733a91c4506d202d651864e179d0c8eb3e27b3abe5635b2d97747631c8f0d4c356bce840dffbae93073471746ac0f4d97a841c699a270d06120564c472de768631a0bab28c4f5df13b38774f4442794c93d1bafed36fe32fe876221263b96cb227290710477f42c5804503587c6e99dd123d418c585348fdeaede7564b9604e6171b039c6bedb6bc5ae98fd1f0ae579465327a745a0ebcf91828ff7f147200692b2c0e432b13b16522623dcaacef9953b26c48e9ecfda545fb24055b403d79c703c8bf81190daa584eea98084395da1aaebad056145490183f76cb23ea9f1f300156d28f96fabd275d92b2b3aef6f010d7a8a8e591e776a0964dea5b3736ab401f98e1da0290a94d64bd36b940c805d0c512c6ddd8f5edcbdfff6b1d82c6d15d610aeca16c9dc9f4b0a2e3fc2f7f0dfbbda1544186323984247e3048b20d9a9a589090f19a92c0b0b593693a508de0d34496a98c508bb72e10f62207db9aa5e51769ca8442a99d539ba0320f5049bb2e4e88f0b60a746116c6937be1ce8b6ed96d0ee03ecfce6e6d09c5a568ac6d82490e84f0f0f4b059ef51edd286285dc5fd5b2243b3d969e3c0eadf32f88d3de5302444d904d2b42c6b66c7fc69236a2c0f17a4f022ab0ee5583c13bcb5096c3ace12f0727003753c59e89e3e99640fb6a33d7645e347f1f13dee658c85db3418af78099a342d05ad52d5fcb7ceac551133407be2e7c5cc39f31346618df4cff4caf51516da4b7841d5469c9c2a0b20b2685e15212c3de6ffff9f93ac70de5de58481760fd1f5d2ece6249e536cf95aea066ad0c845aa315c545df538cce28bc7bc30a455fdd2c309795a1041efe779e262200d098389621877d577d79192e1978d830afefa9af0b9718e3e2eb9a4df26a622152d38aa263e7cb51603d9fa8c6e4eac48ccca19dcf6ffdf2666ded08d85603cdf57b3cf74bbe7b3e6705c1431ca8055ccf3f71115a8829c7bbf007c8fd0f06e3d7d61c7fffe72b1d611936429664c4d10e3edabc2429847556dc6bac53ec463f107f0bddb97ca51331dcef5cc9d0b9a9dd4140aa77b66135ecf013f2a50255fe794a89b20d700c53e51ebc7a5dc5236d91a93839368868884a8bd076c9d23102de2762f1b4f811a1674c8facf63bff6ae4650dcfce26dba0c818d332d5f9d610b2c8712d3726803302c05dcdb917a147a5a0ebca0495d331777881ed255220dd5d8db85a9a659175d506b26005daba7ddd1107433d9cd179d565f39fe6383208806db250f1dc675a52eb3dd75d9ade0b7a4378d6d8a0ae9e0ab71812866f2129b367a5011cb25464783e92a84b864d56fe194d8a6f76a3577ceadf0808032444e406bf6169a2d51a262add777c7d12d54e7a503010d8f497f4db97046fbfb06c871dc92f6f6f53ad94d9cdcd7b89e36002d1697b22d01bb5d1e06a49698c93d7651abe58e3af0dbc1266f3cbb4f190bcb5d63768b44b61e424e04a46f30686c075693077bd27a36d78823beeff895cd26732a944f05d2b0f705d38ecc854a01588430d941c55fce7f11fc47ce0817381056c10fe548a09136bfeef6ad65512df595b69d29361e5586038d941e9673d46ef8cb03e0e5355c0900c7c70966bd3a781b7979684c122468d8125d25a4d7668eec8222ee549cd9f3c8a55210f3b6486da4fedcf64e40071301375896c2dd336d34991c5874417db3bb5cb22ba88616a9dc1ddf569faf3e717dd903b02df5ddb5e79d06263d62ced5abe832a57ee366970b2573eeded3b667f20d8a27fe7414dbd1c68f877d4db85250d1ff378ca2155768de38eb705c177c67df29ebe0baf06d07bb06dbfc2d326144a385b61e960b9f5a0748d01a73700076e488417dcc6efe978e9fcb38719e1cd7380e5ff5495654255674118aa974fb919233734b30848df5575e233ae82dbf993e809b9ddb65efd411e82122cc1e0a76da07d83b011630b148cdbf5485b3eac49f06776a03082ca4ea23f9b6c449ee0085f0bc472c1c7bae0e284e8478b4b0a1749940274f11d1266695907cb0650ca8b7a4d4a032b7b0efc45b97f84956dea19b469da6f0723e61063df63db249c337c9706d18a149b2751ef66a9ad30bb6d5a651872a135caabd00eb27cabdd8506969d327183dbb5c1c934ab236ebf52c93715fd1e9fb0d8b51afe447567635425280deb9f9faa39ebfadde8c01ce78c46c7826c6af3e7082e2fb98719791668506b4a9496ec7e24dd54709c7125676708bad65ef70ca68c1d823f86b05467f4ad1dbc8616944233aba77ce197ab34df649a3dd68fcd93f76329fe560496846cc6a8140262c3e8c7191443f87f4dc1af750debcc28c9c3d39acdeb2266e6279175f043ac5d61896e3212686eeb60d21d3457501a702c9550da6958b6aa131fe8124f1b4960b8955e81955f7ca0b880abf86d6ccce8e172179973d595ff4147988843b570dc85ec507edb99732a601a5a8b03e3258ad013d00d591e189090f9d20598444b0dd1ff6a3e07215b5c187cc2062a294377fbc30ff1b3b265d3c59ef793a2b21d46c804055b4197c2653837583287288712cbc47079a76e0a8d7668d5e2d498874c5f674a5e8c3049361461cb3c3c054ed57d71db5159fa6a738f002817ab35169cb316843e2d8be351ffbea539d715bd3a8ed41bc980e502c1f318a9b8fd2dee2c6bad671d33242d3f71cb791b9d124b2b4223bd45434746533b88c8a664d90cee3d8ada4700cff8c61b9e454cdc11b95b2b2214cb9fa5307ae54fca3d429300e290144cbf7e096fa0ad5ec4fd0238dca475a6540571384d27271d5c5690bec21043b28eb4c8b4a2969e7e9c37c335722d1905a914cd19b16263eaec623a40c9d47db3d6ea8c995aaa046c064e6decdedb58c42603e6d971c71f6bf0e08ba338041a9477d54cb035e5695da8991d31191b0126f775faf7fd6cc9a2bc42b2024892e90b4ac341fbcc99362f76da548c608716a355443ead57af75cd3515ef6cc60ad6e6956ccf5d249405dde52bcb0537fef2326f1c808be7595f973bb08f6e5e0b66907c9ca963d08aa2b08cfdc5f4dd364f00faf0fd7363078e4ec0bcc070bcffd9cdb8d5821fc10dd663db8d67a9f7f7ee465981631d8646f5422a864c6b15b3227af81643e3431e6613a71d938a417b59216a4b599c07bdb367a17aef3d8b41b2f214f32af90d84d4a2dcfd865a69b9e470512deca244257ed2f042262bb470f7884916ed63162a3149cbd6c20adcc73296e9433752230a29a069f876e26ee3eeddcbcde722957334be828898aaff49456588c35c55ad4a526d3f8d464472994acf8ac21bd61b1defeae2fd9378d5f82e4344aade96c973d0102f5f0fa35316d6479eebf7b847a6280bc34b359b6e6026765f84d368f92541ac508376887fc034c125b0f09058588a983b6d4ca622a441a2588fd7a1a9f8967366c74a38d787b883f68b13297f9b71adac18a3de1ed906866dc7dce2c85e621731ef09c327df0ba2ce496dfe47d1cfeae5101b9f5e5358d5fe6d8a8ad1982d352a55e727df3c457bb8b311144b60ef82276e9ebcb639f3b6d33da7e18a5016c40f6dbdff73a3580b1f6b4ce4bfd72e2c80cad2cfec654e125d100536ca8bc051bb63852788b6ea963a97a74ef4f9d19c599661cda43cc2b1207e2f1d48072f29c0e41eb5fb84a9be19011e4ce8ba421fbafae66eb4cff6514b900e02493af543f938ff661965491f0e0a2a0fe1e91da346af64c1da5a67c247a676fcd435688abb033c88c508ce34238dbf41aafd4c03c851352f28be6193922ef7c47eb46e1c38b534a0a32ef939f5978127be43505a8577ece67b712a622c6c95fd5af152f9d434be4d525a78f233c0eee5351d1401a79f151382a694527f088021c96b2785988dde7c5d3a811e3d58cbae96df5bef1168c0c75b4446d67c19156a4f4d7e955271da44ca424d2514a8a1929a7d0b2de4f88b7f67d1e8d2f03dcfd75a8b4f21e2a130bd9cf5a885e3ed5a66eb09190fb941ce55d0b11556ddcd1e43c6d571ca8e5e535029f3da4ba5c9f447a1fc849b99d530c2744ac250153a0bc429de6bb20bd64f3e54324bb3220e31c1ac77a72f938f45e511c309e5905c05981cbe132de40646fad87378de4a0ee250896eefa7c6ac1759b1ff69e48643c9dad31232dce6623bb7fc9ac762d55faf311418a3d413f61124596d1d82c9e84e5c8679c5273529157a04a6a04871fe75c39c75b2ca1a1d88100c8ff7454fa4fcbce95c97f01c4e956a0b950908bf8cdd991f3d95e1bea1613ec7ebee31847409c648a2131864733e812d331e13695f0ebd6e3a4084205b1dbf09913271254541d4b6bdf5d2e171bf6ebc61108f07fa28e48fb8f73a6751a0b27d5d74b5374e12a24c81b721894fdd24f07fe06e3ddd7d03fce2cc29e3fe866e17f48d15370039a3b568ba0796ab09dc04059d1adcc46fcbd34e064df8e069719542d5d328cb7ef936052a94fdc665525c93c4ddb07986b2faafcda1a4022389eb37b1d031f087d915fffb794a5381ae56f53a27867a72064db49b181c0806bce4f992351fce0f1cc9b3b459e8baf0a1a753436686e93ffc33789d57f77e0a543daedce46b61bd848577f7081d6914d1c313c35f14f4fecb0edf1a8141d5119424f896f4e92a693c02f503cf33796d5d7de4c4769c4f14af5813a695957a05fa71d87b130425dcd8a88d5d2e7694f36fde8f1a9304c0321c7f492bd941d833b64d7a01c6c82cf9c614ef9efbe597a5f0c6a966a848ba011b2e877c146241c62d8d889a62c47d3c4351235aa242dfd6d3dc073d70ba7e87838a0aef21c5b1a12fe1404110370868292f6dfb1cbed2cf5ac214501b6dcd0515d6a9c4b86f944ad6046b3cc6b6de796205ee89c881a8b6424f00d551153476c34a8740dad718912308c41bc045f3265e596bc7169b5b62934f58c16b7f3ed46b9201ebaf145bcae31c272a3554477f4d18489bc2eadd2b429d9533b27701da6b1c952db577f9afbe7a593180d795ccc8d92d6cd237d95295c9d7eaef5b02c3c3b551ea73beff7d841baa65a72afde513529b172fe2b24a211162cfea870c8f0a6be953727cbb2fb5bd1e0843cbe15d414bb1afeb5ace9d053e726f68c5eaa0b4f5df203a4ba3fcf3217f330685ca949c10046a0cf20fcb62b147f94c32f3ef75328fa7fd6031a6b7c79aa2d4101307728d3b1e7c74c380677ed04110356c47b01f61fc1a45ab4bb055ac58d5dcd5a80dd884d1420772618d173ee195ede36fc9fee42b9f695e97a077f75fc1966491db4800b7d49597bde2eb1c0609c4185e4ec0e3c5a85f112421f1064df297f674ea5598fdcb26e6b8153040a8fcd0c67a1aa4c0d79c07425bbb16f03603b82eefc1fcf1b97909fec4ea351ac7545ba9e21b095b8744765fb6bc915968748e6e80db596738aab1171dc49fefd8eadb54ce4eccbc1797e0ab45fdd06eb40214043e82772e07eb8abf626e2695cf8529ed237db16d2fef02586f4c6334f8c3d177ff84b634979a148335aedb8b2d48734fd44cd723f145518f12e5ef545243c708253471655fd3bb9e62c92e1736e052fd0457259aca12d450574734777d91221261e542ff775466cf2238ee5fc491e60adb67e6e9c921b2efdc509edcbdc17c71c43c24d0c5c2018d7337191317ac4023de0b53f961e4210dbb1982ebbdc0e905d0935f03187d48a5c4950834d2de11875a5fbbff5564610c55925878e5d1bbcbfe8678cc99a67272d87f6e827da59d5dfbb20d3a7e0249c39862e6c56cd357945669fc58749b66d67b521cab06be3d2ec54c21638cb50ad30fa0211adcb3abfa290993baf662fb9e33affbb85b7cbf39eeb1744c3c67a99f6a7355df7e126c73e244dd0d530b60dd6549a810d98fd5f7da193073a19de38c338fd2ffffe34f4d32c0dd2e18808581a34d805d8200a2cb3682e5644803b518819977f554b3d1753c30ee79c19b49e702625a0463ebfa3253012c9fd06fdfc1f8f7804e83532887cf184a3178b5a2329ca4b6fdd5adcb973ed9e4cf78b2227e76c6797f5fc275330122212c057641256bd8dc2f230b8ebd5bf021e443bf4d8d5efa81dbb7027c05b69deaa124a49fe471066b4b8f8e7458962d93b52d1c49d60cb01e942a35e0feceb440f537bf64f55f9e86f3c03977a7dc0a08c5c4a463abcf0fa79b1fc5db346296343b34647b563862e7abf707118ee9608a22073b80958b25dc0add2658888fc4bf811dc8f442701fc60204567830cc5fa69c5c260cbd96fad94fe8a287796488fb2638c7344d6efbe636f03757d2940d80051012e0d69dd934887ae3e4f8fffaa5c2a507ea53f4e53780ddc4ca9250035426f1486bb818a129949386005c1f0ea53013e37dbb48783c846a757e642b4f066edfad6a30a4c992a92131346db8ba1308fcdf72a61444bb9fbe5f9fe23ad1716cc38c11049581d2bee560e63db161e98c68e5b780fbfd800f1afcb2ca14e83a7dc3bf81f8c4b475fc28f6a36961ada1089b1e0f2b5d54c20f99ceabf99df873cf21ac901c68991ddf7aa2671697fc420cf6188cb87171f2bc1241982a0afec78e53443c0baa6cdaa42be6775a91c841381dbd22d7ca9af595dc518a66eeee1f6845999406c83a154e53e64e3970c11f122a9eb7d74db12597f1d0ddf3aeaa2ef11b81117a7232620aac66d1c4b1c8c012446b76f123d33c60f4e0ee9819ba2d7e5a56496790e4b45fd70207b5ec9967900880d63e76c0adc74b7d2f63e7eaad84604c6d2a8171575fae0221a7dc8942c7ab52233e6785cdbf27a8fd5d7f8f3b1a9df1588859357120bf129a000b56db4219c81b81a0a02b1aae4c084da3911e6d6df37d5566cc89ac665383113605a5df9770ccbfb79a2baa14035613b393fda86e23a4cb491d385868369fdf61714f978477283565b15ab2f81e9bf412054322b83d9b9d639dbc84a882f3c97a1d0f771038b881d957749e394a2942fec87e33a0252ab880a65f9d9bd66687164cafd042c5dc5186973f051ed6e0687f82fff12210f0733c6030582d444c41f90d456e07ce29cfa376f34cf1bd46f3b8614b2b891af29dd4489c535af4734bcdd3dbe506a86d719f580aae92b2e69cc0164b83647c7b49aca98e3f37154308e4ba4deafa053ff1e2e3fa6e58dd1699d469bb3b975a108bfb99387faf33e7f3ed38c5e75f9390a3bede5a8a5f7cc614ba0351ad23a1428723ca8dda2330b1a07e6853aef79a942bea2ab94d3204877e82936b89917c27c395248f75ec151c08b9865acc955deca77c5ddfc97e4106a54d2d6428fd20d116cec14d559ba3191456d8e672b59a7e68e29605692a6a17c92517a5156f164ffb3a2bce36c96122f7d8d2999cb6087a8e2eea32ac68b043a8ced5090e78ae6411d739e1f9c6f1b5599833e5ff37ecbd281beaf4ace39ad8bae3934423f69e6c6c300e48295d242b868978af916d2c09fc464b55bef49cc890ede783a8ad47878868076c9b60e65a8abc4b7668e092707ddcdca8a728bde27c617d1067bbc2caf365da6e813074950f835a2307407121c2fe43a54cfb170937997b74850f6027d388ba5ac50185783f7d1b3cb35591dfdc6991dd1b8af667f44d31dd0fc07d47ca90c744e9f7c34d060d6842f4c253abcbd2a757177b817bd4a09c001bbf0fcb46daf94f5aa6e0cdeb0a16589bd91f3edbe29056b1622dd7509eb17e96b35655f1cac3872914263922dbef6aa62b7ba1525c47a15c9a24d19812b35eef456d3b10b126e95d35e433d03dfe02ce47444256421508a0e7adc79a43196639538cbfd81e7c94e1a25139d6d11110a5a55b7d10d6ac4d38a33c19830cf0f366ada77bdebd71ce50239614043b59654e9a09c45fa9b70d302dd16beb3d07cd867ffbea305facca07d223a29ff922dfec3ff62f5d360d5dd4bc82080c2a4fade8f465ff0126209980bac0590b73a9471e8ad5da959cf15f0f4918c4ef81fdfa2709895bf883ffa3f90f8634c34b220a17fa8ed2a9014a103b62db3a2954d1339f065f2f1d316dbb4ad4b231766f8f6f56b330e7e48dc59ecc4658e4da0bb5ffe9b349b686bae8fb3cc57413171c9ea729e265b5691c2395540ee040c1f2473f69c15ce26f3c912f14c83244e4c2c1e9f7a045d3cbff894fe51f50a8f34f302d233b4871e20807676d51d213f70d85ced8bde36de444102aaa15553d2c70d04ce87a9c43188d3450d3e80388ffad1b4357b7ab7bf7348e418f483ee115d2148a7a0ab1a07dc86de59300d3c21e9840bf47952a9e6c49097f72675e901d4fb4ea122d5e6aab2391d0dafbd63a99140ed6ae23b2973dafff3bfb0182bd96a41b19115b35ddb0be3373aa1f63eb6405c87a2e1fda2885616a2438717d3778e33d4f01bf584fdccf66efc2c075c1da3251e04137dda264ac80aeff82b54c84195028e855db2e604df822202ca42d76049ce7eac4864288a2eedcf315b5477d53fb5ba9969026dcbcd69af35dc3caa8008a508afd186c6808ae03de8dd4e8cacd0caacc1e9f14f295d83302d952b4fb84083d8240256e700141d3c368dd4425d56b2c6fb011d1191560c3dce65066aa90b2840b38e555c2dc5fe322ed2b04fa9215b7ed9ccc7bcb9569f34b5b157cba7dafa21bbd4f3c52920552f2ee05773aa31816f81356ec00ee3dcd6d3e462d0b14360b1144935d9b4857e15478aa43baaa2961fe1b97a838e7a13cd2a9f28407d14c63b5c2f7434fcc1cf42a8265a26f6f8558f71f5768aac3c0ba30eb42f269d93338c36b55bca66591c53662a292bb5bd807c094e1931cf790f1be3790244b588c5f82ff7d31618e48d450ffe74a026f91eef314edaa3626b07e1b0c946f23eca0676a89dd54b57f491020f602c5d45577b11481cb8630e3fd9266c1a6e69f5f26a256937e4701db44cd9d4cbf6119fb57dac920ec5726dee7e683433115d4412c6daaf268a46edf0aed945469141eff42d4fd3e5e0706618cf5048253f2236a352115f898c57193e01217bcac16046bea434a92a956c27f2a4432aec58d5335568b7e0929bd8b2f258e0fb62fa47b6a3c4275aab3c34fc585c5af03371758b7296cfc5a8fe3c249ee76672a3a61a2db576a75ea8b9fd55b13e71dcf95a4c98b844178b5c60631c5c924d037bcf0ef9028e4bb628d54c0f1630188b6f64ca779070d909b2c79cdff2e70b5635f3d75a3e89287d362533aea35ab8a0051d91e94bb5d963171c5c953333ca0a2cfc2f9da34757b2515ac369790b6912dd2b628ac71441d1d2a2e31839e7aaa8782ff227b19c92bddf0635576fff6f34b91229535b6e6f59b56b25028760d85e13dba40be9364c7b0dbf3f3676f83f1a010e42710566c0071bf46cb1d8d1399df203aeff21feb80bf22ba22b337247a8b915cd0519cc0617fed644848a4686c4494cc8e0cb499c14de8b9e647399a246022edc2f376e9dd7f4dea844bca6fdd6a186ef2b77e05a951f92d5ebe0c1add9632655a4206c2f879f139f21548a60919b7f7d942a1165a51377eb3854d41e43a54967a4b31d216eebd3df35a1f0525f0d46762678c9f6779c4bca0849c9d0e52d7294e04a0426b616aa76de3d9a2ffe94c87a036b07a2e7f5bac446ededaea79b2cce36b7d52f611a72d940fb654fd3aff596630b3b94cfabf91f80ba50ddf9563ecad996f42ba6725e3d1fe4d59b93c582be50e06c96f990fc0f9860db22d3174c146a44d3a077e41a92eb9aa0dc91b991f4f0e160129d462525b5b35f0a44614e896f4e507edeb777813e0602a24ba054953a12ae857cc5669281bf824e0ad52a7725d436d38d5a810ca96f8555a3df55a0308f4a4644e70e11a571560d5d67603505788500146787cb84d3405a30db4cd6b3c31bfb6e96c9fd1ad8231d9e103a5df0b95abe1391d8353f13c335ba05d9aa1527a30df9a5ded2f09d64ae27ca1f2cffd13cf965264295fbb0a26781a17c9216745d29598e3cd174013d67476c252eecb3a069b94b00a5b26a1e3931299ebaaf7d3f892a8985d2e7d37f1388cd37d8d26daee837feb462c23a335c31497459ca2968da3e2fc660f94f40991cb92118e33acd4b1bb7a401595a776b0116bff5afeb264d75c5006882470e94037140bd0d3e43882398d13ef08b21f9ad717c53859ec17c4a7b54c805a89c30cb7c3cb7667e9557d733c065f27104fff30f98d76553616a16f25c876ffa202cc20b2542df3178176003e0ec5f42fe3966287ea7538cb34373e981d4ed8c546c2e3231616f1b0518825ede5cc374297e4bc0b1d2122f5d84352004500e7a2773af8324f0a932988ca7d56a242e540d786dc807e40b9133793efcf969f619a5b0724131438d5440d157fb855beaeaa429d3672496f8979256182299b3cef3192e0e413b095de62a39dfae2f68f934ed82c522bdcda21be89dbd747f39be038920ebd7209d84b6a214921805501efd058322db038b0f57e325f7eb4fdcd6237df904e45f6619b0520fb8011b53e1918cb7bd48420f844e3b190eb41cc1717049ee1eab35b4abac22c5c3b47b48e886aa5ecddff51c64d711d6e2d7580a559a30a3d35a0892a344286aade9fb80aa71e613c6207e6e5662d9dc2904a11201bf90f48bc54826dbd3d903bd7dd878a51a561acc931cdcbe5fd98d9c29e0dfd05ebbbcb8800846e401ad3f2ca939c5936ff8240eb5cd802fe145629debfed7a034df4b02930128b41a58c42371ab6c4d21477adf4a69d54038f521b5eebe8a9f3299cd1e892b0718553adb96474534d0618682f15e1aee1dbc1bbaa4acb1a22559cf36f2dd2b6e30672c1961b4662150abd0beb9458fb5e3fc0fc4c5782ce3c9609231e4692a1830d0ee383befcff740bb6bba804c5b1cced652bc9d773888d9f4c03a101d70b4fff64019e551ed6b25f71b27098d1d86ecb2773f85c6af6ac0dddc7ef4b56b044dfda85b41558fb711a336277bb27004adedd4fc467996d7268c3a7f954241b9c7e35f02a69701f7640e47ba0ab279a0d861d4e820c49e02b6ce047d73aa6d2ff9ce4f7eebd24daf6f1c9cb10f4d2200a8a80c096a8715f1233cafc6a2363d780f455011efacb35d5c03e2fcbe1393e645af7b123ac9c1e0ab2209ce9a6f63a2a3986a23b4227e93c3ec3913b9cb96861d56814dc8798235b5d4cc37421728095d1a6d4c7a05797aa185be036d731f6e7ce7393c743cc8c08cfd026efe3721dfacc52af2f921b0ac4f458377f445b0d1ac4da18ea0e1f21251d0b71efc731dda88b1c4fc55dfdc12428b77c29879766878e11b09dc50073aadba896833792c141e47300352a09398e10fea607522f103eafaac8634308cd738121e79aff1290ca4f7542327b5e8e6d94734e622724f908322fcb8d1ac747af510861c036a234233b211b81a0a107b3a69810bbb7b0e076998c4c4766bde9609ed9f72eac464a8bad61039b414c32cbe1d0468e727076c5c3a023e1be2425cc59a69484c52413d6f61bf6178e4276b6dc56197a4c32f8d7d89a6f3997848e9036e6233b9d970110c29099da86c055ab6c7f97555edcb9f3c607d74fb9d844f15c3343290274dd1156d20baaf92f511582c43206b898047c8105fa6d0fcbbc283a8bc747ab63fdd2c646a6e480b0f7e464484a05855d7cca68e0ae1d56870bc914a0c65c406588596c3962a7a9ba96918aa635fc46cb343da974a544f5d2a470356e9f06af160de56978136f05fb24f434c1f12e9dc19c2569d8200201f3389ad2c55375bef447a3a77a5475f6d9952faffd5baa0c0164701cfa6f4a72fab54b0bb543f51d453eeb5bde148d90ac296cccb315c1070781aff1fd48bb79fcfb113ba9f0189fa23435aa3b92c429e3d388b6f4d9ce005ee0e61683de45f7f34e37abbc490cb0839f4b121431271cb5c3046c71c824dc549f9fe8582096979031956e954f8094205f1525721f2ff8ae9276e9f24f098471e2789b878d7def692fb0952d3244739105dc08afe3a116a4cf2c0e99a6eef1f2dbdb03c34237880e28ffdced3c2dd1e5abc1931353517ae8acbd7c8feda48611291f5b6b53283c87a063081810b91bf4369a6f115b106c5d57d9cdd2ae2d80b274467e5c5f11afca441652c4820d56e3f1d45cc8df671d236f41799514da6ca7c25589c344a30d8aa86ca8a0e8a31bf24a5b6feed14b16fe8490db71641d212c56c9addfe99db5a1fa6d9c927b6b928433af71e7f19a75f85555faab290d5920263ddc74ab986347143168852d9b51e44b71ec184486b1c59df39c01f83cc8ab780e9599502540a9776551c0ea87a1234d7ddff46c5e949310c33fb49dea88019e9456f7e33574dd3b85c5a81cd22ab4d6aa6cd82796fcdae61a56203a766325c2adf79f8e9bfe0f21159703ff842c61696e07f0b1206375110e9bfe4962d65716ad8c5df6e383aea5c4f906d0c6a7c4be1305549967e2a02b8c16c12484795d00001643e795abc7ef5ee49ea36d7796d8286e779bc1b1ec69b980d2a109d63cd46cef097f76744e2646fab5788336b32fab5d7b32c9000e58a8c1b49fa0b9a0f584182880a623d3a8025f6de3b53b66f40b94f160716403247c6c623bc03edbdfcadc7d311830aeffa4e683c9f0f1448585b5c41c520a945776672139c6fcb897a6748da1676cec5579ad919f3e697654afd119dc37eae3c910e9687227e4798c8c54738fd2e28fc40b8f19aded6523dfb75e919ed88eb17308f556dbb33e11bf1bc84096a01fdf80600a6eae1ab161414cbd3d492ce74da5cb6c854010d09892e182c65a165ebe8fde196132cd8154a0caf1e28535032e931b2081f0bdcaa1b2918f5fa6d207eaf11c5097e8a86730a3b8eaf6e6fbbecf96bd4f03c4961194d4b7830e04652dcf2e0ea1ccc1b724454bd60b2b6fe8d154c20dd8960fe24370026c6e7c4076e62d48ad0a0ef78ac5714fedaba3f6684c3afa2ca516d28cd4e51b28813c6118ee734fb8ca025ddc7fb590be853b3446392a8161b145abf4aee5d90e3c32389816598a071b57448a8c06d6b7314c15e909f9b260ea458ff62d1f39df2b6b45fe9aa4dd722742c97459c269f0efb948faf51a0575b24784fcfbeba864b804f5710d180f900c68cc9b6da71f96a215449e2b6a4379cdd7f8cfb05bd49b2f119f2da46c49f16f6d0ddd08d521ae474fd86e9f9c9feca2b122a6847a63118fa84f17e3feb8f7e8144c466c71d19dc71ed32bc26f4b1feb3f1aa38689982c7474fee9923c663148326fa49ad1d00e63e6f9fa10b225e8d8098ecea4b0f60f66f825ff56886e52ca23c99987402f44c67dba2eee89ee407a553ccb9a19d2865f71b7a81a53081f256239f96a935fc16839c87da9b3f566c0db9779ed7a1a4430386204700aeaee28d1f154dd040c868ffda0f24831b653a8b4ed45b9ada20fcde6556f8185acbd9ef3e48bc3c2f4d088cb0619f9b6c287b551aa626970544864321cc99b089d742a3c600eeb91f6989b107b7a5229a78720c8479ce5644d3bca262d15f2a192e80bbdfa7fcdf444cf8abe7ec7a45548aa9d8a3fa56cb39cff86334b46ef0e9fa44c4223f916634780f52e6e155d3653285f2e34e98fa0ff951ec6de022999b56db495af6819015f414d29d2441618769922bc2f71a42ebefaada4e4b6394bd02bcaafdf181bb050e3470051dcb015cbc71f94e063067d4eeb47e741b993e75fc720d1a70b216149963ea5a29c1b4d814c4e654e22ae31b00d9ab3944c4c25aaa7abf62ce6aad7219841aeb1fb200508be755a4866025194566e2d0635a8a80056efd1fd9abd533b610e85a986d55e8c6fca51bce06be7e1ad4bc7442f527aeb75b8cf572b4313fcaeb637dc3a19fdca08dee8564417ddfc031e805825418bfcaed7b42fa5c49255c05e977988b1d46a2960e2a91cacb6649370e73d8f5255f0811358980520a4b45b5f7b9c27629f61ab7177e994c1036c132cc77661824f6836f6572fdfd0b4fd6e03a28b9fee983d9bfe7051aabb78aca5a2532861113082e184f7b53d6a66185b87b5e852074d5f396f952c3c2c63706419d7eebc583ddb646968b550f144a4e71243ec9b6ea491534f643934953117f0c4ecb81be7c401a8017819da8e81dbf86400484a22d8a5bf8e98c81142380a2e2e126d30ff6ebd0278a54c8a7bb2206c21ee623217d4a4e8aeec50ea325b961be5d3abdbcffd5c5a55170dae4842bc63773ff90751a35a8f77bd5432b605e73230a0b64e2ee916ac1c724bb0eb459b9f8f8fc9de259a413749e05af5b1a5f2760e8ed526c214f79ff1da3634d846580982cabe678c4d59f7f94ffddb6453e1d0a1f1a1cca51e88eb42bb5a7384908edbbf5d802b94f5a629c251fc0a91fa13e931708d431a20a09bf3775ad49c245bce48b7af8591ba99dd2d873e39705c8e89e35ed3d411757443842836017066cf11d93e5a1e0a62a5c74be16256b74f6461c235bdab925fdec4dc3660de6ff6f03e1d5ceb4595ca5289a199c3c60b2bf0f0bc3bab1749d195cb355f9aaac6c17fe463cd29f60d8688215a7b84d3d1277d668bb834b480ce90248aabb42b963188c4b3ec931ab0e19042f50a527d955e731ca8b7cdaca4a039b4b9528ecc0d12de463fe869e2646827ae27a71438b2da7dd6d4bff65eb2d975393799f45e92f2af6957a4c93d97d27270ea3661e7845fdc4854350eae43794d2d09fea5b0fe26373945884a09d9867c9a5bf24359408f8232712159104e791cea4a707ba515f7346a46727b55de5baafafad97e5219113358c0bc070bdb23041cad17d20c0a016e1e1ba3c3dd8d3cae63973afaf0ee4cdc3cf4068abb0b4e1101c7c3857ff57134c0415a4134c228e82160799058bf73620a576bfc782324fd195e2aad8c984077e0f8bc247659f5f1aaa256836db08f086c3940226f7f264107f3d40aede012484a88f6da42c514aaa3b7759db6f028ac1db428a73e138e8047a0045b9699605b2ab9f1c0c786d934a90727f8744d63173d81753fa1b42562273690c5d890e01c0ff9a31629dc60944fd4d67f7d91afbd43ab9d53f1bce5ff42f17d6700aa716a14ff7787237fe216a170a7b050757ae35c699bfd280cd4fb1d474c5c98f2e6ee026e16e1cc34cb6322b07227b974dbf7510f04c606494d133d7768ede9af16c1c7c643cbce22f671d4ccc08b17cef868271da3e17ca55d6771031a6db50272c054d279dbedf74baa0ce8f79b651d7d45b0596e3e44440b75e9d7d06332ffa1c7744c6856212cd2c6500cda18c2c916335fce0a7f4f8be7d3a2fca7cebda3567e511a524e2c61d70217b64fd956f034002816b3823a0ac36316e02ab3f1ee403799f48b532f86e3d0a09db1c930a3c9c0ee4df90848d38b69fc0ee7c94535708e9e5a5259ef0c07040a3903a072dfb6fae26683144c3dbcc7dcd584690aaa452b202ac4eb73003cb26961807522f543615e9b5aef3d6f61cbc1aa9b5264d0d1a8146aaaf204fc871284f8d7e9d4a1778958c07398d738e0d7acb7cd24279953cdaed3207bf629bc091e62c762926e27a3771decb13541486b4a165692f2dc20c5cd0e83934439f68ed110670c1e45fc7ab74236680f97b71ecfeac715de2c120994a6450bd3a4b3bc69a781f146d121130222d7ed4412fe26b982391bd54063840fb5ce48a899c4b4f4b8fca8a7ee7546ed5a179e60d352ae8b3f9cde386dd1ac98dad17a3d0c3fd195e9b365c2720fd6fa12f1e4fe9832decf6d00cd24a7854a0eb76e442ad5eaee69cc0c731a7782b8ba3f3fcf189af8590d06d733b218f48d85ed3a90fb4dc0766251ec5f4c8c91c791ed33ac220f70bd655fafe67335e1a48c6be57ead3228ac03e1e50998f5de6b4a5aa48dc8447d15f45354568022e44e3a4c481225dd9ca582801b0604c357e47cdb2dcdf4aff236722b13fac05e768b055659ac0b39acb806e6e14a84c7e1344f8ae646410d8c57869a159488c4a43a9919f6cdcdfb607d96f6797648f23eabbb3b34cab8aa475d5c2c7bffc0b3b0467349d43e02765f7909578ca521746408beca5257f2b857e0f112a1c36964c62c55fe5f3b21433c336c1b251f867a1239a8aa1a0eb6f69bca83271ada2458542130e810bdac52e5eb976e98f48c5d06f5b5aab569c470abc1fc7216689fd83258f1f29d7f96cc3bd0607dc8801a24939f634e77b04f481ed39d00e698a3d9a65e842bf842150cef411f924f1713c113b98e0d3fb373a822cd6e69ab0843ab52f3b83e8799eedac6f25ec5fc3b2716d48bd11c24cb582c7b624f3a138422d9b3a7a18e53ed60ccd72cc2ff478307dda0c18e2509d243ab35504cc022ca02f525e9844f635c5a83628fbde6113ddcb4b15c8d3227f97d12d22be10d98946141d1985075db7a5f66a4a362dad7b7f35fc69a56600ea9de116f3e01902fc1a0b19114869c516ca42589010530fea3cd08be52062b8d8fc650e194e5b06cb6dd7f25c474f4590c14ef31e0f39e128d03459f297efb4f128c9bdf7dafc8c4a9d71815d9093ba589f83827250481c2f2e107a73dc37e6cff33a35b08c06f30cbabffe23e1ba7a7807b0372ae6fd23fd10e1845af2e6eb20c9a93f4ffeb42a6ee73e6a135735a6a7076098cc2d1f40c6913beba53c27b14447f22d28a074326dc02c5f5fc38e7434d19418706e3338b263ca7908caaefadc1fff329284fd30060b80e81d8568b364e1dda342a77aa0cfce18d0a226802ae75d560342eb6a777671c05b298b8584b77e37fee5e0b70f69f0e4a017b34eba38c47c18f7651a3f580d26c017300a616fd793253de0b59f5555bc127b1eaabb0e8cb37170661e107f64b723639f29b408c3ce57fa2a7a4448116795b8c95eef8c4eaf34af93501a6cddc50643e6361e866c956b358fab6d27e4ec3e52caead2a57e9b596079537242f7a0ec5b2eca04c01105720167e475f3562b98031c3b36b8e29846323bd7dcfa9b640e54be9cf08cda1250a80ca79a911411d2cf0f2ef1aae062d676dc06cd76f1b293528d1f8bb7a451773cfda8a2ecbc592ccf069b2ba4ac697c0e82f8689113c28c3ddf9b1872ea7fa93104264eaa4e6905baa382f39aef7b7cd70f1e8d267e3486398758556dcd13827e344529bcf0ad9db70273c7d9cb03f1dc8b80cfb579a0d02ada2dd09f0be0cb05054f7059d04a75c4f8422b1013f3eb0dc796f2d67b8cf665ba0f8e303b70188f02842fbbfe76bfff4b58804ca7cbc0e7d9f26fea60490329a06e34e95624c67d1c488f385eac0053d58ba63692ffc6c94e963c1c3b8ba6416bed99032e93a51abca5f1a51d83e3c5347ac0fc535ec6a74b9f6f947a109c3edbc629310095fda37d9e47b106c9b748fb0cdadb785d906bcf1f7a5189d69714ccb3a618310daaba3c12f78418711712e7e08984afcd8e6d6675b3a14a6d8f360ada253a3838eb093d469e375ead6cb07642bb09954c0b881ae6918aa027014327ad3e49e4d1cf1fa1b55c1bbdbef7b55447c1dcd8638c611adf4b44a0de3860ae71d4774941ec50f1a2f89da4855fa4343bdd0c8c4e11b1fc0134685cc54a638d2b1f6355b668fada6ff1099f9b84ff63444a7794de5a8fd699e28082fd9e31a89be7bf4cb66974861391f978d5cc5839d00e6d4fa6862e1e1fcd7d3b7a0020aad276e75f55f450bdf7618221260ee9e0a1edaf36da2ca6628cb63218a04060a7c014e0012b6dc0906cee5e3322743976ab3889d1f19b3bcabcf8664e2e3345610e34dc78c54d9631326bed055c1ccc2ad4e62f57d263d49a64e8c46aaf337144110d84cc84db1c1a245f6ec5b6e5616e3218c50641cb76e9dcfbb504164a240c8949f774a2fcef093ba14bd686bec7ef9802af9a53ca73502f7b34a4071900307bdcc126f93db523fe55d9bb3c43cfd2603c93e4e61709a49854d95d5ede525d73c915f95e1622e2d3da7b5fce04d31c76d851ecfbc30109d17f211f693914f2c5b3a141291e70ba2d5681dc5d524ad9fd2323028fa965e07bb86d7130fc65db8ebe08caa57fc99851d9b61562c9b3601b150e6d9529d20c92ba8bb8b9bc52436a7eb3e4a5bfe4b28a88c9a09a992d06b65c5e37df7917532d5f5c8a02f154e91efbb8af22d69fa118ab582234e8f7b3892c9b227ca4f20c096a15d6078a061547b7ec3fa37baf1844eb78e7e5b928c529a2987a25a9570c8fcc250c2d060eea3ced7fe02372e2fafa96dc7bb9acf3907aaa0f9ba36120301da11c98325163fe005840996db7681a30e97ed51abd17a3c77bf8c348ad25b44a4a94599fe6400acb660d3b7cf1b92bc1e481d2e3739d38256602b61d13f46b4bf9dab6969a53f6d580e245f8e4d87d1d778004643fc9a53f84502f9f45e692832d10d3964306c9cdac74ccef79da0c182220e86129f599912e6d178d69ea067666f3079f3d1ce9efe53ce0160b6d66be2e7401359aca0d3d6eccd518561fa56eacd18a20233701c3899d1eae21ab08b5afc725aecabd68fd5fe8ccd4943c8b21a8f1a5b1a460ea2b4d2b97f75f4c87290130877179e616e66a577a76195ca388a340a5c27631b8bea768c9d79fb74ebe26cf674a402c3ac614ab2cbc87062ac3b0893419ad64e8240c30546d815cc00b2038641b90afb10d88540ed3de634d14b15a705ba00f95593c75f21308afab1a611602f74b51fd8ad98e62bb9651b24b1eb307433b577da81671f28b1936feb0aab67a71af9f30137f31f748c3797f414b794ba02c18b8c5fb9b391c5bdf76db4aae630e40956e6d76206d9d62dbbcc4ae2014eb55131985159c4dc5c9ec3f9b65bd3a59ad019434ce89e44925c05645a58a5bab5f384516db412a8cbea80cafbab4c1f752e414a0eeed6444e8c3c0b30e20d2912a2e3acf6fb4c9e90baa83aed0fae14110db1b93ebaddd5dd4b6dea9b8179ec64432fb6f3415631bce40fd8b7df4c71e638290f48994ba6646aa98866bec7c94484c86c18fb033c6608c543d51f5fe2bd7ac9b6f2a151eac57c7ca8bc073a6c3dd4c351c756d516a8ec09ffda6b02d04eb8cf35e56d2d1c903ee2e5c07aaa1e82e0c6e6d949805548f8f9fb62362e917a7a2a330f2d2d643ca11eca1f6576334f83fe059b84a802ef9df96852c1994878bbd99c9320ffe5bd52160f6126ee86ee61d7e8035122af02a4b169712549d7cca4ec2cd1cec917099322fea6f82068e152c2398995bc7500921e98b24db954968e543d391a6605b8521c1a10ae97ccf6d0e09fd758a5978195e8de119f1d78f95ec441889a5e4ae09a58b12c1cd5be35902900c1d58c55344ad1d363ef230d059cd8597729a3d3538579115567065263729d517c80092942207548cd50c5ae89cb97352de1663c45cfd63c748b1b60861493facc0a5c7c6a437dbc62043b6d05619c67d8b601dbd5b3a2408f105686be26c70919d15d34c97a61cc2d48d9847ebd52f310d8bf42869b4a19590906b09ce0453f85dc342726dedd1ca774e9c663ebb48e391624a0cb86526ea2a9dc94d305265c6a421cccebe6be77404d3963832a3dab32448769158a278ecbf31205d822804a48b86bd4ac5cf28bf0b5a20cd363c3b2667180d6def3600036442e2c00e408481df711994c261115e91489989500cf772428ad1683ca37f5b32fe40db3d21d14acc4475c43cfc1b6622336f4129bcb3417771985ddf4beba609d73475543d769357b50803e985bfecd2fe62cfe778574e28805a59b688384106118d570162b4f3314a3af30ed66da3e01194ed77a5a8765a466b092e64f517c3e75c3bf35ed6d450cc355513e716200a848a858a3fab9ea40375053e2005b11e8a876b67212c0dfb489be6a4277ff0d6989bad100a2225c45c11bd4b6a51fe06f3fb19d4679fe8b965dc84cca9d3745bbaa1725cd34c6f67892698e49d2317bad493f35207b85bfa092a38626f394c5026bc5625583a4e68b3d012a97807089ed56c36be0f592e5a85bd0e543637c67d0bdf0e2380ab30041d29d2e28aace11f21eabb436282fccda1afe3aedd5a696ca55fb45b19e6cbb570a762932c1dc8017e2b159a2d76e01fc153fcf844e06c032389b17731d3b14ffa01685dd666913f0319c91972dc9c7244f3c092acf90eb316252e08698ebd208e1812b987e6dbc1673b6b9247f6bf4b1571db9298a3fed3d8ebff8464496f37b519145df11d5e283e968827455f167414dd7a180deb23767ba7353638c5f4f04ae072decbb19b9fac55e64805d1ee6f2182ebfe97dfd8bee0186c8a9d537c402050b618c053563ccffb66b61acb55d413ab03e0297162b781b5eea35843b76ffaeba4e685a1d1dc37930c4e3cfc126b82587907216b59b004da1efae033084c9ca7611f0b36af2c434b88f857848eaa375289a8cfb408acc1ec6e85d4e8548edb1d09e16bdc6c85752b704e6c0e23c533247c241420238e927aecfb19cf9702b43a26b5647cee32c962cb2a0d8f8697684dba3d1d29d45b2110017a85a79b464648fb6c1add1f5275d29126165a5f12e38551d81edf01407fb56f4db4ea7f136399d18d31f9f786965476595972bea030e9c6a80a69c5995c2cd2a80b974ef40c695a7a3fb1ae7488072cce165e6b5589372623903ffe0f799c2ea673bf2232918516a6668944ff900366e24f102b2c711b9ac317ced338c891ca8517a3f0e2f838de411698c9d46b8517d83e0d983af56bf4de347831ef24ea002d1eb2353ad6ac3edeb7f4e056c95f855b505d0704f9b9637ff2c818043bc90247d05b52bd93c3034ad312baab082380e5245dc4a231c35f1bd42814bae2e1e8d69aa24e30a76ccd52082e20002a0a4e7a216df93df40537da6ec01b75b640d039fb31e4d3517726d03bfeb1d2976e7c8153c5edf81b995db896a023958e0ee44576497009362dfdac398cb1ac335ef5f12bfa7aa87402d70dcaabf4738ce237366c925398c5f3323d19652a2991c48bba35896266fa9c92b0251ec099f2bc76d6b6426b05fbed0b5a353db9b27b12d3b056d0983b7998a1fa0ca0ab3fb9d0cd708a201142aecde818c9372ff6932fb01b5c3064981f97e3beb6c95ec34cb64790d2f3e3f7b1f52f8f328aeaaa725d17ff588142686b529f61e28a584afc062771ec35e0e46a1d26faeff6c8e2211ec51c4bcf96668a19b923a745010e9f42789034b4963b3c855073eae6ac94d0e58b610a519f073ac1f6e22fa07379accd3c8492940b0fbd856e2b2117427fffad6c32580cbbc2d7bc468b296c6a49efd47cd20426f78b7863bb35805723c90f610c6b0017e3a314b4ada082041dbf44c1b27cf11cf6e15e9398a07569372829e9ab78004491c713545d40473ddae248966d0eb39dfd35493366b1bfba8ccd46198a142cad019fe7c2a1ac0573288d16b8635e6a6f70b249630f6d256b1c48cbb28ef76225556d635f7642ccdb78b7f914e104951212d02e2e96954b3d2c57c3971a8923e37697fbd22f0db57af894ce2e86231072ede042c4e7484984d052f63b0a8b24cd6e33f5ce0ac9d741f4ac29736166254188d236f7eb1fd5c9d6f11a57295e29cd4a0e591430a2f60b44e3a0e0e796205fc14b6c7b1081e604741f5f44af4a6ce0e4b049e76718544d3e223cdc6821bda53865304ba506f3d022399715a478611e0b0540a910a42f840bf70786935540536ebf6ed323c2c332f899b6f891712b5099bc3f6fe6898c2d861d94bf004788a1fe519c130b8635049c398101c19f324ca28d59cd141676f77defc4693379da6c05e00fa5ecaf12094398e2be120428754600ca9e091e0d5be0adf46af9b3bd83f44cda3542051437603f6f42c9a947a16fd23c547ef8f01f9b09c661fe310ee72605e036ab188727dbd7cbad70e13c006fb0b5bb4652d01cc83403dc2d4040dee183cd5297f710f08e4fe38bb3b3244441479cbe36103cbb7c6d65fc60190b2f460f44a1bf0ebf61c9d6d8614d295a3d951a06b5335f69a64447ce38d5b9b9d23c8e50f59ef52ba2390e3ab4ebcc556bce4fc2c6e1804559b625b4287c2503f37591dcfebeab04469fde4fa7f8c266042ccfee50a7ab778567a477cb6dea818f14e4d4c641c22ca77d644eb77af54b0de480267e9c689b0c13d15fa73671d62a9ffa62dcc60d2463cf7e6dee28c32f5dd00e5312f94f51a19a7d07454ae2fee018de1be684d00a3f8e2171f48445187bce9b519923ca55c297589ea3d8c1a523732176ca081985dac7569d2c17ca0f8171f3159c29de625752bfd747a6e5ce53e3b798165d4f710df3eb892954cc32a994930a5d0d558aaceede6ab80f0e7172f17cf939876d9f38d18acdfd01993ffa043925c187dbf9f25ba153df19d6f0ce90d267693ebcd2077a862d63652d37f449297277e047fae785c9f6faaac0d14e84cdf7547fc4f407672faf7757794cf01cfb7e8998aff86347b343b735e1f4c55f01f9e975130d6906ad395c1d14608a81243e13089bd79ab6b3ddbc28585db3ab6738ca81949887909aa53eb74d480ade84e7d989f664d28362556e27f0fcf09d9fee558fb9f11fa6d5c996a07a0b8fe80dea07c411229588ba1595849a734af7cc879d1ec095b2bdc99a12b57e6288ced9c7394700ab6273ae0b044b0eee338fad338dd3a6eb7bd867b6191e950916e3fa0e84ab06c35785d2b02e2356c9a561184d6b802003163f05b09f413e7102f321551ba257d8ace2653aeaf597099cd75af99bc1d1ddfbcb4af1d3adf12b7490d569e133e92ed675672934fc0f885b1c9859d802d699f46b2eefb2c6b7696d96f6531fcdebbb4a536461af63eec031641068b4bdc4f20a74015f3b098a58f7ef7aefda378a3476c19123d45f9beeec571cafd2720c30bcf793ec461b1b084dd493abf4b39fd9d065475b9032f661f9d62e89a14940163fa9d4627c3ff34a518699ba6a093565abe681ab5f28d648405966df334b1794501a58ab4d4ae73a392bcd23bbbf363bb4d313a9cdf04645ab77bdd29fc83be70bb364b50e0e9857049d93c829c05c18cd6746eff6f787d2742c50a1542bec62528efadd3d74bf2e8dfbde2349b2e197b3abbd36a639f26d003770d590cad5bce819193863c12d7350a119de973577f4364865c658134856753f9ccb16750d0bd61dd64e193ae60108b43fb9079eac89383a4ff88159301990f076fc5c13ba9230b453f5cc9b0a5d9b37423db65437a760ff3648111dc859a722b1f90f0ff71d41f28a087ec14031c11513897f262c6cc0f357278c087150ed95f76ff7ef821bbd09251bd02840135b710876544b9d7e3f987f0e2f2ca21300015ff00fade5a409e72c48fb4de013c663b4ee2ce57a5289d347379fdd580f6060b5d8b3c7243c61088851b16adf2bf397233cd5b20471120373477187244fcada891298798b02212fa02819c2594914ae5bd894f859bc4d6a8299c153e1e1c8bdd709bf1666b204e36d3a06a2b902cd0092d57d6d76c892256b3530a708ab8b012a1194ff73082b642c41b60d1c05fb91ec8908bcf3f6df72d03095178291445dbee226e1943cc5c3cfb6f0b8916994287f1b8ce2b049fabc919a7773e79d5372c288b9147e8a94777557745b2b0e7dbde4685345881755ce17e093665be5652cdd8a3d97356ab298cb9dffd3c81a8658807427abbd0fe65e59762c990e64cc8062f304600452808dce2c8d43af6160df0a645b57a3aa9debf17dcda5311a225de04ddeb37b47c2e55499e802073887142053fc6cb1e4e7630b73408dac8d42dd40cab2aa20a2089588fa6d288a3a2af8807dee81637f4b8148f05ed6280cfef8701286ce1a4d3fddb228add62c0eb005023323d80cf47f63ec0b700776c329ec5a0c9fa7a522a3e4c533cce8fe54ab7a92054718b332fdb0b792ed00af3d2b6e4fe7de92d432da13f7bd54a32b275cb0dd4d6be31951e15d3191df19d3744c523a03ba4a1d48ca537a66ed056d237faab81240063b34063e4ded6452483ead1d1830a322059fb127a37857f86457cf1fccea69c8456949257714d18dad0ad529b058cf7d838b7f9263efcb20bf13c79ae32d71455fff73207b71908794e8eb9dc9115d566721809c198507470648fe759a1bffc55efe8594e8f78803a83dda361979fb10ad3860fadfa7d75839457c7a7cbd1b0991e6cb34a739a55224ce01f248e8ef23dc15ac5f0824e1cf1c3cce6108259b419b931ee5581cc7b1db34a0251e6e401c39144b812410e9e0fb718e396fda23eb50da42a8af8c80d96b9d5faa49d6122c97358b9254019c3e6d1f844e9af76edb724c3698b8bf57696315f5cfe9ab9d33869ee7eb04ce808ae966472c182d47c4883b9358a8e7cf75155a6872c94d83f3adc4e86288e9b4a18c4bb38c5388098a83f9631e14770642b96efc305eff4265faf9c5e6a6360c83ec581a06ba2f72ad5578ebdb27b24a62d5fad04f61d31047ae1e6ef247db39dffe467399657f135a6bdee801644c494310b192f0ba8d35402b7b208070bc5b2f88696f312cccd0e2415c994f23ed4f55e27b6bacd152f14f3f51a00cee135a84f34f5ccf92400be34a5d7f70fa2d1959e9055cf434bcd4b2c1c0ba32421f1fce19384221dd43cdd19f99b32ed7da47e11e7b5b2871f9fd1db6c7f3f2b9e454dd6263906d8589264a3e97dfb4fd05c63c6b153c1d25d41e33e4c1add80de81f8f0729b91ca8a093f7bd9d25e6b0c63622ac49d041a3e539cafc763669e8514f186363f51d54528bc5ef63fe38702c00cd8ef63c83f8aae45f4db2bde122820b5a122c9f810c85b4613f3034cdd3b6764cb8b92204c5859ab2c8befba034667986493de2c845b6d5fa2d6a36e8ef60684c170b899f9d370805336db0697224158ada4231815a391700bc7be0318e613de57df18b6b01aab45afac88701abeaa9c310719edaa598ecec96861d331bbd7b7ce14dd1b4915816a37c3e4cb972a59890781d9c29a18a18d2734c5f84bd1f580ebdc7930adb062e0576c82c2d1168d92dd117e3dae63e6a13ff2dd7c60a16a9c995c7275102464b1a7182b9bc5e14a5b02b33054d358b9a900d27dfdf714e3e7f21a2c0c00be8cbdc860abd3498ee96efbf5067317fe985410c88152c4f154d96b3d51b8084492f99a3c9057011cafa8bd22587948c0ea7258b1363262950a07c39138cd4eaedfedb42b5879325387dd1524e71e86a5021084f6ecdbc98227409ea57d406da5d3c9d933570df5e9a17bdb726f1f892807651ef8a407a60dc4d17e4e1d780fb65f6950546cc8232fa49eb083323ba71687c445f94a3b6967605a033120d9273aa96657fb3197b979fccc54c6b9882a131e87fdb86647bbe9e8912b8c31038990dcc0b433949b88a50568b6e4dbccbf17ddbde216314a893fb539f4359cc2a63c69ff1b4aa0727315392065f496c1daa709591b0ac428fb619b833765657d93e621dffe80b12b3a7a649b916149a79e97a8e25a98850cf10cea289d6b007e301084a828bce1dbb5375558e8169d73b6a2b13a2787ceef9bfea9b0119ecfef40b2011be77c3e38575bdebd5dc0790dbde1d9466bb82839950b44ff5e692a92614ed7f2784544338cd67dda0de399634f30501be4fe54a3adc7de8a507af1179bcb9f2a8fafca969800c30d0a302e9977b2f4405c1f91acc5f9e9fa6dd7e59f5cb85916db51ad8b4defb8c4b1b63f8322bd10490a5e59fe16473fd524f3ec4325a00c4b20632305de6f923b8422eb50831aa9813874836f02fd4c251c3b829bf482b3323fb077491b4ac232e8a6c75f24b9836d337fe83c76f17cdd7505f74213bd84faceb32cf7965824922ff69262ff4aa42f48b7aa97e2d2921a1ca9ab8ddfb8c97ae80283ba5a00cb6bc3567899a8892f7c1f537c6655bb4d5d877a7c960d678168d6da5de8eb4288c3cd92c600793fbe021fdc86d720774018d702a5584ecee3cfcf2458d148504026d3d202294df0829f529be843caf0fe9927afb2b9d83a5acefe19af3dca13904f7a0316018a780b22dad713b2e321d91b0d866eb5d11a26062a5520945d76cb089ab3a3e28586e3d6dbd44dbee40b453ab375d32302519603d94c44978193fd238fd4d4faf303381276fe44ec3175bc74991c69f4e8a8dcc1260a1602c10baa3a4a373ab522c2dba616511feedbd8530e5fe6ba1deab6a267fb829911bf54b96f73e3ad2c0798e23427fd15834e6e2e3dc310c8716441b6cddbf81f6913be583f8295b8d31a368382a8e68a31f35e5856e31eb3836cdf9d19f3f10ab89d44aca338206814304579123e41c61977a398d46e60810103b018af0934ea73bbd1bb4a21958afb3798818482da1ad4dfb1a945b6990edbc4f3a8d95b536dd7019557345de191564ff60979c68ba5a4a59314904f49d8fcdeb57a4c6c0757a1e36c5a83f956aa7d3d18d8086c16fb26aab927287fe6911dcbcc06eab0ccd9b1a45ef772cbf023372133506446122e009b1b68bb7412f2e156f51d7e81078d116ad8d21a4a7670960eaced647c06540193d0587219d23a600264fe9ebfc53076b1b2441df14272b1740b93cc75f351aca7b77bff5a6f7f1162e526a31cc2e32b4e9a5d7933f5129e1c51433e45936219c15e6e7e0940baf4f2d4b364f47fd00c4e12a9146d95ac574918f127786ac0f8ef5c4feb93b9d3995fdb3281ce70e175fc976fe8f0a4f91cfbbffaadcd95d3e371057cf00987df354b7a6755b67dade6a11f3f9491c3edaba13310163fa84cc6e4819f90c4e9b9c18af02cbd02b332fee7ba78288d75633f05d417ea7402861f65de44d0a94c5fcd810e4255c0552bc61edbe2c69a429c2491b5c2985351e07b53bf5869c71bb2214cd53a733f1a584d4cc0d0b15ad6180eb5ac68e602e821017e25f2dabc083c4460d2c437d251d3e85749580c1642efd61d4ed1a2b0e9d6bd0ee8a0ae729e593d051e9c3777e949f9f8ffbcdd84d467b29062ff15cb7b13853409cf0fa702447bd480e7a8e9289818ad5b5c897571d155cd594b36ef4761527b829e78c1fe28ceff51addb2a48b15fc3f9227b3bb2b8ebea9be403b9ca2c553497800eb58f6c34f3671324c4dc139ef26a9492137439598ddc06fcc61a6b205cd232d542541927381351c099d9831d7baabfcf8ae675bec216ab2a9ecaeac65b729be15c20bce47bfe249980bf0e046f56cb6e34a071bd9a39f4660c1b7fb5e046289f310f3031cd0e904f8df0fa4e46e55e7231439f357634b196d650fb3daf217630698567b2caec0ac7105c4a06f4a190eb75d5295d71ac1d57aa2759c08144dd6da86cdc774954a80fedb0aa2347dfa389b595c2e79938497813cc7dd75834fd9b2105e6d45cbd2e80940682bedbbbe3240805b59289e96d129789a31074ce1c5280c6f62b29a6d9ca17b9851a6fc836c446e6477137855f214412507ca2cf07bc3aacd66da3cd8475b3cbe950dbae407d4416e0aa66f2b7445afb9d33b76738375c7dfce6c3a8bc602ead02d4750021aff511f56c9e9af464ffa0325672759d1aaa39dffa3da234df615d82e106c98c188a2683049e968f87e0b823902c9822ca323e847d3e1caeae1da3355f22d29d57fde604f6e9a23d21e59f26402bc47ddfa4b1682a54cf97148ce54f77bb7387df4114fa3025f42a3e6b6b292c8abb6f6b987602b833b579bd2e1b1e832f1371d96e11da19e1ef9ea6350fccee3189f65c081b6102561e50280873d24441d9bebe1601e223e377d378d5ace661bfdebbae4090c709e0139418e15e249ecf5d318ec2635ac371d32a846b2a1140168321320e3b17e3c20bcc6578c8a52ab2138ce242b00d5d5cb2ce90222a3c7a5aced53a034dbfa0e0111be93dcfa142fc55869a411650648d46e783aa652835ebf98eaba5ac77088dff6da0a790a6af611681f0ff914df5f37a592e9a3b3a4217b650026edcc932b181624e452f4c079cac5c7fa6926cf8e4129b014cdac921850246da47f055048937e0ddd3ec9684eae91b390051f5fec5f2d8b7daedf4e26cf6992310808b06cd9a1e374dda286e1c7d9407c9809ef8f5de30ff3ed027c73df9f6cee2c085c76ac28be3d4abdd0723572f7a57d642eb365e05a14615741e6207e6bda2242b6ff7fcdddce2361bc5519733f29b1032790eb8f1d3e3fb82b8f6094e3cf61032b3f78fbd6772481a295433793972f24c2dacf11d01f52d1c07b704b880b61eb8e4e6469939b0b5093d192b3f42d7a37fc6117f6dda103c6941d6d0b5b044d8fbe039db204a54780820f5582f303e74dedede42a5721dab42bf25475a0ff56aecfffa02ab54dcafa495c9a5d4202a25cb5b71ea5083295055f7bc4c8435e658c68975ed96072b3ee8e1c73109780d009cf665b7c5e182e4ffc633b357e09de4c05c6c38dab015b4906748f1b41ee530f8d2db93e450ee98bfd27e6048d0dfbc3cbd4043e17c61f1a7d80892cad8cf803d5795a70feacf45b72b92ccca9286b155d4dd2b277a00912df00a30d620737285d7a6cf9d83922bdaa8184b5af06683e70255c100f13ddeb135d4a5bef38d35564df3e60e0629ac54751a65eacc3948e3bac06e5290169a95a230a4e80d15670e7fd522263985d678034d947e8161ef27e301d5145036e5bdefd97341715822b359119cfd0c821b410d7dc499f2d29acdbfeae5e46127a2a86572b9f237ec25850a84de877233332825adcc448b3de289ae779c513944ee4f3150618f0900947e18c29cb5465126f7e4556ae5eb75c323a8435aff1f5eb5ae1ec5f3d20e0b96db747d8ccc8db7bb929cfee9992f4c8e499a86fa4899cf95629aafef1ac32d8385c2cb1a6683e2484b0d9ed7f98319e3777eab8defd7f5852460f1627827bf747fded3f48f315cbbfc21db964c8d8a14521ed13e1cecb2c3e5e0ac6df36eec5608fe12bf919a56f4b55c33011bfea441523554157dff79256361125b87672b9268192e37be38acbf3a95e3828789786727b46b263ba006c054eef61495d303c1fc9b69cf433c2f26868cff565947c5e046481444d7a673b53ba75f6ee7de0fc39a3c7b44df0df03459ac4fa8326a552092dbcdb775a4ce738ce759d94a1f74f2a9de5aac5e944415bdfd17b7ca0d2853c2f3fc39a81266ce95b4821ae30412167cdaf1ce6835c7f5f9e80f4f59044ab6ff27a90380cdddb269704647f9f905321472e9ece818fe887888da3286bb6627dc55b39f6d3d63fcc74669301c63e973806d496f4b15ba71178aaf323256226c47243a1de88608fe1cbf4464530f76c132e6475a7e176b38c40133b7e502efc3c9b5443e6e0db3a63ceccc461324f4a2a13721340002b0b3948b339dde9a1e9eef07efc525a5b33e1288fc4e074d3574d22b9b56ade7eefadc39d0064fe3f0e942b1d10a6bbc2e35b9c3d2afb8da1c768c8c7c06ca4b883a6bd44b80eb6d6d90650e0b2de213c5a02a21931272c0b2246a62d9662d07c73349168cc19c0f85a095a205ae9dc12d4a8c1b52bd98903a96e76ca101a8ee40296dacbab41a5bfe5d9517cecd9a239e281334b814e594f87601d489dcc8da738fa93dd672b37859173da1566f24f14f1b7cdf6cf4c4744366f727c861fbaf4a271f6c1e6457d4d7f124f9d5ff0f0632c894c78f3bed1dc116f9686ba18813b496f7016ed7ae6d8f95f18debf6f37fa6ac37d150a0fe97b5621f70db14cb91e5de0a04a02f1002b57eef24e7377787b3fa3f3541bb3d37b2b11b0eb685c22eccb8b76e2143f0f0f69782b625c5b456ec0c482d275e3f285490f9ae10129134069fe8487cda996d1e6ccb8157ce7a8b1d6080849a92328fcbf02b615fd9d29bd103e4eea88f0b3bb851d92690e9c25bb18b31c12443d8f38a11e162b690f36746888c25bd8550fad268ef5b6abbbc7821be20e10fdf78c8add27d6fcbe4bcc550b510d1d1615a7ef5d7a986ab920a87d71ae1406f0cf166bfa55426e4415f8ae34f36bde3afb2850a1028a78fe4a0b4043e33f57938f78bfa316a95d09d9cc5c370d38bb098260e5c635fdad7556d9c1c6c82e12d17e87276f538d15e11f0df218a01a2447a20af409286bbae63bf6ca097df31b702e2413c620dbaf6000ef1cc0fc3b262b47af560cdd1d30c13ad1720ff4dec7b1d5b2b7bf58ef72a8d5fe81975023c8eb1647764830db2a7bc2462f92eb8421cc23ed62a95e76530a9a605d2d7afc43b384cc46812ed81cc477d0c03be869c365c32b0bfc317c2f2a908b4451946c46543c84aa490d065acf1ca837f03ba3a4fef3ee95ad67cccd5b2b8e63830cae6dd2c8fcf0ad7c450ff6ccb5897c2a2525427d7b310c544b838679cb440e96b377b355e48f7ff63a41033c0f24c754ef17f9d3871e96400e95b810ec9aedcbae74cdaae97a57ad5c119df64439c7816686f0b0008233292aa6d5bd0fe2633f1f6f042455280994ca56733fb0437e5f341e57d1d1e067181d02821c5fadb30a50683a677c81d37e982f38f17244befe9cf7af7ed1cbd432188154a128f86b6dff088ffdafec90acf8f9851b05f7d8d3d81b933d282b3845dbe9122e9f4f8ccfc54b1313762d059d63b657382dfc164070cbf046cab43c37a9334345cdf0d6d0da6a896fc36a6a2731dd9e911537f0353e89abe8977e535367a4ab7c8a9f5d379b7dd77d70a7b9576e7010030a01cf7f39075d4b03b3a3331ede39ace3fd737b4801e3058055bedc7add485e8bec0ad906f71fa5a183ea372bec665db589d053d64756f20a2c5f0d74d7737205ad6c6e8aebf8d712d30249cb839a3caa67f9471268acde031dfb77fcadf59cd8d35b291345063fa3c14d49b09a2a21e70e2b1b219330cf117c1f9a8495de4be6d0f112f983fb12d8bfe13f76e964f28f9442ad8a2eb3783c0dd04bc3538c2688316f1e95146a998da23c34a06ea2927f0992ba1ffb2ebfc00228a32613d23e11f5915838432a327e063e495b9454d9519b3281243bb582bdc36da4a4e5533783375716a5193356801e81711778ab594693ebd71e702b99cc61ee3b36b45f88868dfb385befdc679e09bf3a1ee640f13a30e4128bc40b835c1d7dfdbdb18e021b9b71fad0313c2f843d9703138fd8112ee841320f587d59fc6369e519be81966eca37cdf6db113672eb875751642a1a95d2b6251bb0d70c0c105169cdfb8baccad138be13dadd511eb80a47a6d6abc44949bbcd7c697d0fb43705a41563c1ea10d15e85e4a4241cb2aa7744a44222960f256b8948ee459b5b21a8c554aec2d172a79e159534f084770f09724e0abf478397cde182b0bb66a12297ab839b68eb77f88c23ce0e69a8398948675a9c2b7921cb422c2970e8e9fb9949e25e32d2d50cace54caca16403fb1c4b108a50d73a4a94f68d9a1f28cd86b637b9ec4abd89dcf0aac3d0e21da4ce70d13fb91c1023686398e4c778dd3626c5dcfffe02ab400931bf5e5eca156a0a368a07ba6f65571a726cdc93d631577cd04450426febd5ce2b462adbbfc3aa6b95a751eac65f17392f7f1baabb3af4cc2d39a38d2aaddacf25b12af3e38b84e3da392ac974d38c77471e6444072293d509012a2afd5c811d0172706b20960e103c1f5fdab581f0e2ddf76ebafaaa9c0041807c3d0ac99f4a1343cab2a797a492b85648023f5d2a35badd1f3d1733e4e878c03eaa9f95656e788b3164ac703dbd09591f6b85bd137d96f8639a923d10cc161a7e881aaddd7d91589446f63d6a2a6b0a2e37413a3b1af32697e25e56a7ac0b79d49d400ab6d01f15dc7dc8573326c5043ffec2a9ecf8bfcb1ed3e9cb485c5bf993046f61239ac9945d983d37c76646614308f59d257721bb126c008807fde4f9c6c8adf95c3549189a4698cc747b96d75bde5f0f6381fe7267b7ed1517c38c49aa8ccfeb05c6068d75ad15b559810f184578a2c8d6edd32a6a57ab3ad6b6488d99fddd2324366323aacf651aa14971a722621230d1db7c9d291025c7b56b6c2882fba026276f3ca3b579cf67638498d0041b6f95ab3a63bd83aa7c50e45102578ec233213b6eb9f0529d670803ad9fd356f58c8e794b60593350646a2b37225be3a7644c548fdfb0d8d6bcffb9df6a2c057508c08e7e7e5b98d3d55acc891472011c359ca9343761ad265e67925108be3ca05ecffba0fdda7eb13b7f8ca291ae4723a3c5210a27b7d4e79f915dcf39a4271852729d800fe103f77e8b095fcc745272547b1c73803a04e4d500ec6929f045d16a2ec09a6472951205f561c13eb09daa37beab9a450f1fadc4e261b13eaa71a93ec3faab989a59378c3b04fd050a74084287a4a02d72cdc306b94f412833369edf9b60cdb6dc40482354309dc3a35b904c29dc20e983c7215fb810ddf3b90567a2cd82dde8e77828f2a7f1c44277fdd44ac54ba5169e4a2d76a9d2d96c3b1d94758477af1942f1cda0074f1b2ae60558ef215e630e8eb277bd004b8744fe39c7acdb211dcd642f6838407271f10d75721df5b8b792c32a02442955b15d6a61f819935aebb1864061e696f63314b637e89d5129422bca1a23fa60062d040e174df2d823a5c4b6322f731e1eb78607fe37509056c1046b1364ccf95af9fc3a68ea718a04435e6226e8279634ba72140497dfcf7a6eaf1a679f303ac1042b805b1ace5dbe152d9990adab5bb92f6f5aff6882de772112e948069e6d5fd765a21bc5d3a79b24557657b2f57447ed1d6a8102fa625fe2ca7deece35b6e60ff94f0c465b8865ed100b2c1a80510ea3f2bdec508b8f5c1304d25bf8df7c891a7de911b392e72cbd4478e101e0f700f6326ce86bbda8edfaf307195414b1650450587007f8993b2b7f9f5658ae57b49f39fbcb441c183968ff99e4f16a0f1fb52ece2ae6d2aacee4fb48c6f278f1ec874d99954dade73dbb654a9f2f1341bff16a5523245b94507ca99c4a44762629b07753ec1aa9bd2508dee453f990a5f0e0dd741c382abe189b733121f097014fdaa3e82a6aea06b1535f534498f52e8da407886dc47ab18e9fbac66700401967e909d8cf045ead11383dbba9826ee1bda8e42c70312e72a891e9cb9b85d9b4b1a3a5653ab396b1100550fb32f566a119e1a3da416bd3a0c18f747d14e405c83f6ca948770d7f2a5f2007cb0704e1bca872eeaf1363f3d9b3efedda54912eac3cab337acc16200143333721210c15a7501590cc171681b3af9910442474f746cfbb1b0e6b379f6cc6428282f9e71b679ce3de5637ed2578bf9fa707026a1c3775f84e9427d10cdf2b54a1cafa49866be23d4e7b0cbe9b91716edc2a59b988872a193fb570671179a85cf55e35a8f4f9187864d8489ac962548d4519a3f67f1e4480d597f068cd62c8784fa2a15250c900b28b7f190642980b595971b54e31175c55e30ced78dedb0ecf92a741394f0c483d06155270841d60e2471e28e1c2d81b68ae15433047142c126a921344974583538acd6338d19a504db94437294aee8ec84f2d378e8c124d478dce51a010879f0b2ba30d1382327ec911071d7414b0f4aedbdf0461b433bd04a1d0e0bdce4b2d15836c573e255d6cf4c8c5e50be9fa739e3c79aadf9c0327f91541fa237e7699e49c5220c6d5e9dd74303c090eb615f29618b937eeda5a1fc570f6790747bbe934ccc75ea0ad3b6d5ae1fff29a6af215552aafc7c6f4f722949fdebec1c66773d985e5289ddc9ed0c4479c109c576e32d4682faa3f9503edafc9f27d8f0476fa9ee9dd1c8103f05b1a316364b6f0307819d3dba683fccb6d41a8fac5f9606387426eb5457eabb29fc935d6be6068de71991a4c3ea15b40ec4f8d9ffef0e375cbb232505840a29090d25193ca89947f51029343883d06e0da3653b071c407051d0af00245dbed06cd570388974652b073cecd33dfbe4224917fa9f4751d3e43f64114162766330a297700d12f646e907e9d6f51f6a98649055bbfb2d986a375db39f4256129dcfdaa77e27d0bee35665c6aa5de6988fb424d9f4bab57d21f1a85093074483c2d4004e0569b9d53b210fbf6f6f3dcd1f7aef7d72cec6479e63995b7116a4a3eeecdafef692790673dd1f0690ae38e1a30746c7851acb294156b1b1b3dcb22823f356e074fe07a77a92732707a05309365cb404343e3c3f1859d1f00671035c0a918cb93d0e74f82c695982405e4771c0f102933324bf5c06e027ebb6b3e09d65bcc48ae5032185ccb52b0e06677860b7ab568e3a6982c9bbb59645ae28b0475c3f4cb297158735d705fe09a64a13abd82612757f178f4fc229ca5587e6427486cdc257d8a4623d7af95219c0a61d17e770bc0fbd7e070e7b19872d9855c53e9341daf21527a27f18f364aff0620de50ec8ae6286813b18f5584fbb1f32a2d004b00c39cd2985220f950d70cdb6afe1acd68c87389ad70118db27ad8f4265292978eaf2848764fc172834c8cbb62cea8ced3e6b3ff53e9d94c86982c15200cc33cbec19a4e576006b3c522169657d7d1f7c983a3c3b2ce73897b2363a1d926920e1239cea7bb059b8fac9142f0643c05edba91b6268ff50efcbc646d30aa466aae7ff19744ce849f88ef012e8ad0ed9080f26f84a87b519595f5f363f1a3390b89d0306f4ce4aed255807c026237e03bfe0b831609d857f27a96114e6ed731fe063ea972911bbbf4be30c52ed0bfd8ee4deb25470e29a5c9115e10c8414d2dfe0d85517b4c67d092355dd7a300784f277d021d6b721975f0a567fdf5b59253845d4548dff347fdfcc7da715dea38b1137dc5958d8448a3927d47c0dee4416affe1ee2b01f5ee225c82ea77654d832fd9b3c900e24b038acae1d3a184f06f5f02737f739c9860b3319b9aa804d0b9b094a213878418cec77cffd0e56860801b241460906e6b966ba42d0ca5c2172e191ea6af1faff597c6b616a6a834187658aa833fbdc24c4dc81251e9b64cdd181b56a0841266a58a820392c3c42212a14634b9d144e6e972d624f0d326422a5ca1d3be8d6cc22b98098ea8956e1372454c68e5397b7caeb5ef25ba4fcd3c704bfaca204920b70350319bd575558da46f71ebe0caf9d1c185858140d3ad87e246aa56ce6d096b6b30587e472fba3755cc0efd40f2ce3b8f8b8da7954a00a1a8f4154e9be1f42321fa5fe7546a3e13bb691ccba590637028c6006f7c610f3bfba8f8d5daabfb0fa1a9dc7fbc847fe7b9a5162e4729beff9895828940541dad192ccf3adfed90ae18f602afa87d5d5d256620c2901711c3b681c94a0861c0baf5dcb9c92d9688969c4606ab0bf935dedcf90bc350e5d61711476adf4e2a408c806998548eaeaed699311e07589cbcddabdc6b11761cadb6908a9848351e6690a40c77f763adb754dfa6cf4273fcd0720f806636b237ff2506766c962e6e59fb13205027af03642b7f90c4748eda80e09d364ebab8161b28070da533dff450c81953d7af09acb886c9761307761aa52dbc94356f5bc3b380305ca5b2c32d8b8389cb0c2d06908604f6825d96d3b5ad0429a44d1e4ebeffffdc821146c74568fd3c6dcff0ab67a441bdee3fd0b801b1b7e04463dab6715c24734f39f6c7d56d7f32196a871cdbea5e59b35def2c3f0fa3f7096446fe1d017925d8064b8afaf76da024731139cde3895e469e475dbecaece9f015d31939a09d9824fee53aae1e37d3383e70e4e3a6b0444446a6bf5b78ce34ab51b4f7b0df55e04c84410cbed04e5891b7a181a72e853498fee29dc0cd0e046016ba6f0f58bd8c68c91a6db1dc78d25351f1194854aec21b9da85c2cefa1110d5cd42831adf5ba1b1ad0588f69cfdb10005f25927702bb3dfdaec382d6fbec356d5882fa5f0d1a2fc58761322e6029db5d31ae62059ffd9886094ee218645ba302cd8d206e01dc303b96efc719229b2e641bc5129d65d9f18567fcbf3196995e6a30ab8b20d65981e7c8642bdadfaee32cb894b864988892576f9e0a627ebbdf2949810858488bac0360365b478d805dbfce9f5e8597802208f605e8183f25090052653fa8896299d63bba136d12ba088f63e53d2383654e16f9ce8768ab5a733400e6c0b9caa8e2b48b1a08536f7950830a6d1b79fe75fd2b220955210aca5b1f4ba1a7a23c296ea9b72fc667ae8ec9e00d6a74a97f233202512be12ed5ff49400f2038b750dff42f2dee45215d5ec7e8adf5352bc376a3ceed81a2634712322ba3c57a792417a3022736376e845e447b77fa514c32c4615a09765d6e2d79dc6fe319f7f75be573a6886f026ca9726a4f75a20f8d20858d24254dec2c59410e6f0b0314c45c854d2fcd08e115ac8808b750ed41778787f001d33f0e71e1e07121bd701adf97988794b4913554c5f038cb72f6b1c0975cd30a05ef01865fe13c1da162e2c9ad8ed4b1ddd3038303ea6114cae49bd453b16d80748b937621d5043579f13dd07aa2f8122a69d73aaaa169a4e07b2dbf3c6222f3446bee2d0b80ea1d047fa7b4171aa379c02b9fa76b1aa70c32d04f2cc1540db6d2cd96bfe86dd473779e69908e5246507ec14211cb6974d04a66d107614ac17dfed4335a6900e50b23fb722b7988047afa4b5eef48c4cd7a2a8045c05742aa83aa406a342a2b094349f6dd35a8502e7f021d373ceacec3254eb9a49d15e5c11e865c178c4d7cda33848c37f30610a1250ac0d21bfd73fcfeb4c3eb38d01d005f195d333c014fcc708b754b34bfb2ab0e767fbcca68d237006a17470000eabd3cfc0d8ba2da1ef2408111483c8bc7dc7fe2f0f8b0654bacaa8862b4eed93a23fc6be57c395406ee34853c15665e64a2e91d712c96c6e483152a0cbc91dc973f5b15c366952184ea17ccd353043291f31b3eaed44b26fcc96504f77ef0b516b6b2d1a88355993fdf0888b586eb8d436c600a2db44cbee030f60f94fdb96f751464b001e6c141f06e12463ce30a6a55c7373001b07de5db9d29d2a15da5a04b6a0271b5a44fe96abd5a8d0ded19b38284648b2dfaffe42c9f65ec61b23aba1970962c93b14ef99ce648de399699cbb8ec218320f07b300ad9479d0161c4efc4281c6fa895be302e1963082ed7260e4e0f1cb6296d91d7ae7a6c18c764317d705d9826ab7c4acecde06f27e8778eccab9cad2fca28c89d2f196df94288bde5260a699eb4c23c773e3e261d44ebdda0b7b372c2e976b60e23a6a0fedd63656ea1088fe431c66903c4296af750935f4897c3fac8c2415d7bd0e2e0d9bfb748e954b30bc072973e4d65860dcc1c2fe810778b69967f54e830a9e3cd2d9381bb0cb2634c956cb6b6424b0d3d95502efca02f6de5a23930fff3312caafdb604ae54d5554054b781320c8e96327b8d45ada43d02aa44601f00bc779c10dc4bb546244ed90d1e8fdfeb242943351063d5fd9dab7ba767361f4961eda31306acfbc814861434ed0ddcec530bf72b764e5a56f13f327968dfab775cccabd2acc479b4005f4b4dc5297ec69b8b7140de51b8177c31aee58d10085888e54f2dd21f5c60f3535abedfe5eacc7c384973305c15536d900ba0e432885e6cbe63c5da08f9c94653029d9ce73d53725926279854fa4cf683aecf8f03eb2936e655748d4c3c469e57f37eeffc7d69294e4b277822a9ed56b04148895c7995417e4e35912e60761d868337cbedc21775445205c754af40e130359231e57f1483eeb72bd9caf29ee90ab67d4b3c2fc53a454b31f61a78447d706a061a266b3686023f34dc72db84633eb3db4a9ed1a3b7e82f38373c60434b382a66459132938966e012e11737f0b2d8f0f421fa426393d6c85ed3011db6b3d95752b732ab337df914be59142f64b753c6bac9266fffa3dab03f51287b69e612889f627309e17955b4eb83d62dd7cd21f5c1cc7670210076f421ab8fbb47142da65112c0e8db8550419c3b052be375bf420424e0fa55297d9807a7196d888daa83c9a9533c62e9a60e02e4072428224dab8a0bff17a255d1951933f683268661026a2bf9d446783978b3f780e304c802ef62366f87f19d7df520f0d1ee0aadca53e28847729f69bdc686522980abebfcda6b80aad139e24ebe0deea205ac0e936d7d565421638536da10c0b4a5f2d0dec618c33939ce2595943a3ee1802014766738743fb720baa0046635e8135f1ea8df323c93ad95b26c451e048a0432fc79dc56dde45d272b84beca99907de45571e247c1088d3ae4cefa378cb4c7e6d4c985bba3712f2e4bb0d3e12559b502953526cf98719161dc1c94698c49e42a0d782a6bb4ee6e81b48306f0d30af01700667267cafbc9ba40c6b810c080e1d1b783a9f03a586a1eb7cf36aac1319ae27a93c6a37a8a927c27260606ba476d56dad71fa1e328172016cb75c09f9b797d657875ef67d3619e7495641a2b2602ec9c4f9226dc16f8a8c626b0b3f7ddbf69bc8df0cfd80abd6b82f9de0825472f29767d5265e7eabdc92d23af2c09ec9aecfb365c9d777eb46256cdb43c733da0060c834f0c26cc3005b9f9ba74ba24adbb7241d9e092bbe91950093936f9ca0dce0727b91286109cf4928dd17886fe8c2659c76ce08efc10c82e187c23866e9451ef1dff55b9964407493342fb809dd55e321cfb3fcfdb562bb8cded28d1adca0d0801c2d8fc030db4e51377d73192631a1d4b58e9cd31427bae74320652342923046bf28ea55e748feb7d942544ffeb631c7bd3d84768a998e4997d6a9a9b433548c4f9c85699c213dfe1c618fce15aabe7e1fcbe8ac1f8f0e9ac226eaba3a2bdb3486fbfb7645fd8639670c0c81147b482231e4547b95856500b691ea12b27e57e09197a14aae3c4c80024d9e242f4bc69b5829839cc64244b928e2c771cc2f8f526fb920d5faf3c89db5ad7f5e598b447110496e2569fdb618fe24b82f79bf424242d3ef0a1a30706e85087b3beaa5863c637ba73318c39fc0e08584d5fcb4734760676782bd038eb4ebc0c906cbd93a632d7347feaa4fd1b959c517bbbae5a9b7d68100e0d68960f5eb933d41196ed21c38ecb79875c685f743a736e9a189561c142b9c40fa3e87c33aacd126123ac5eb96545d08e44b6dbf0cd3981571062a3f765b9693106a68c5c3f6f6797fcf45b10cb21c897560f92089f5254db31ace82b001a680e0013fe9f23a47a2004ca023439481159d7744f2016283c527f445d6c9838061e35c70cba3aed2a348fb9e6140ff2c05c4ab320eaee5dfb6069e0a42244ff19398b36ea0a53adc956cd541efea1bb9dc6fbc7c79fc15b7aadf498733a1d0d0450b5a496d93ce1410290d226b7e79981f4ff65fa10fe51f86838bffd81470e86ec15e2b16520ef4c2cdddb00416bc911c2597dc907781205c45de3812231d74ce38beae8cb5c1afc884214da0a6faeed90fca7b963290d45620d751105f63ab7e4bcf23d9b76d8cd484b2dd6f3b29303215f0267a0f511c071560c1dd2d738de5680190ccdfae08580b763a7b534001f360a79cd97e01b9c350928d1542547956262147dd3b9cf3f79c63454a542ed8ecb4d3e9332507208c32022e710565ffdf94b44cb078ef8d80036cc59ed09f3baa26842cf13f100223ef06365a765ddeffa27ec056e4f6a97be68be0e517ba17bde08c3e9821a21e32f4af2a09958874ff04ec149e15118d4d1475c00a0c4283bd05debb7fae06128c9222dd8ef09dad0c28063cb78a7ffd2ef218a8799962f9b0c4d5a373aae3e3236c00d4b5e77bb5597c210551ecd48d7f01b7f4b862028fe6f3809bf149d250a95e563ca5b23242f9574a0d50f07716a49b1283b8ee604618acceb7c2e9555445271f7d6e2ddb38da4f726f90f3e5a674bb20729c1997b616aec3675ca333b4dfc6fd18a077614ae51976cc3376e3278f11589ad8c83d2fee847b01843ae12ead18f53b7ec7eca638c662dd8a4ca29f99b0ccb60cb13d5f429d9182f5c015bb1ad5649ae974d33c5200ed6101f8e4eeb7cec8bd4442f23688fe0ef584cb624958099c0c02412a4d168c989081501b0253fd2d1336ffdfeb12bba239c259e6f986d31bbd5e42c07b6ce21d2a987d3d4ff928b732afeebcb69d2b2fa57c5285e996aa4d386073ad79b6e8ae649e5c08246abbadaa59c5b7af5aee510cfb9494bd833426cf7e71691e468f9276d3a17ce2f33cdc92aa9427cdbee081bef5c5358ec233cff9ecc8f27ccb142c590165ab799cc67845a1fb2490557710f545c6c17f2be84881e915343997063ea20e3ef1470b23bbbe8f6b4af026503981055ac1f3877cd13692e6972d1612df3306235fe75cafc62286bee04262b6781e22c4c45183f84e9f4958339c8eb7c4e4f01635e8515297fdf33801d46870652ffe17c2abb4be1b0193de95c616137866d93c1a5a2b9a5aae4ab58346ef27a486a12ed61b21470477d900c925f99588b3d2154552da22d507dca320bd8dc0fe37eeebb3bee2c75e243b2188d382a7de8979194795ead792b28ee5d269d892ed55db2b823f1deaa65424d84d75c4a6d89458234ae45bb729137506e0a6a17b4bbb7eb19133b16920818d6434e9a970c991dfcf9fc2cf2b1d2595b64244cc8b034be7dd205bc4781c67891f061d3574061214dd31c8245a7b3886f3595304aa98f15c19535c744158dc5ca047021f55b5578e239e3f2842592f0044f707f6e8861eab2631779af714bd0ae57a419544a0986d7643e7ab3eb577301ebcb8885ecc321e4a22213ea44b0ce71835fc0e124dc8c3c395af6aacb4db1cb8cc18b47d4e02ab5eb0009b33b97719de2244cfffe9d3bcbf12d4e106593e1c2e8efcd11209ffc41002ba653df0564d49bd0830a56619845ec69bf07620d802d125a78be0b1f4e2cbb2cd2badd543906135b87c7a5064f4dc9a9f223f15d469f0976662ca7fcb8ba2f66d98df1501ed921bd0264db2f622be9ff98d56660a80effa5c1264880b629ae42cab006bba125c60c6d36555575391256e9f3f733f15a8a6f046b5e140aa82b360ed661f5eed755bb1d898d011ec645ec9b0ceaf12dcbf962f5fe4f484d4068701cb25bdd1c483c3595002a340a960edc7449cc558b53f986998da5a8e5faaa309d5c2e8b2ac7593b6d268b11832711ed5c4d925a2920f08658e691ecb7fc56243ea4fc826b0ea288bf5078eaea5217cb3519b1978c36ab1b4091128c2b84db50a618521be12a9127d70b20df2480357d60cc6b11c6bd91345c71835a195160545f9dc712912f7933d75a64d779ed2841ae3fb0b5c58e0738ac2f28e7046bf827d416fd3fefe172b4dcecc1a96bcb588783d4ea631d88131f29b1ac48ef40284e8f36d1fb927590aeac54cb3814549bc190c30ed15c43142b52f483f61848b809ebb828bf9b5c8a89c18dc7226d2d93f9d7c34932b265a364e4a70688947ad441a8f0a63366c923ab75ef0b3af25200674da6f2f023c31783ad3f7ec91e651c0d26ac19665975554bf06b4b6ca3e9381a78466b193f968e4e64c8016b218ac8567e8264f54c2eb2a0f651f222406dd1e9b72b8c0ff3e0c8e902cb267abaea4f158114ec7404791097b967777fe7b603ca8779479998ff265c02327496d9392844acea2f558b149b1a0ba3a85f5764774faf5428cc577271037f21899121226340b1980cd5e9a95b6a4fad203c4d067994a65d922511fb276aebfaba4e2258453bcdff95dd59108c39645c19fcd0a45e8c22e33460727b2b477668885f9980e51aafcd711f0400e1da49a9a4858c054fc162154459969d4f74d8160f7d039eef5d8678c141b4c93f5cf7435348c279df77250df860eaa5c830b702b143aebbca0b9385725e24f8b00e4c0d03288d216378beb4b48938af3279229edad6e2014c2648a8aee3290c22a47b78664188e01884b3d92f8e66cebb4226713bc57e03b640abe9fd1982b222d7d4f527d860117b29ddacf18770104088b38cc8affc2d590fe46caedabdb8f32a1c9d97889e629d575e9e60c25eed26c499b4a21e5fe6763a056b6cd25ff62f2d9c6332594a76b377bec5da562bccbcdfa768b38fa519810adb0f1163f8d1efa70c978c0b191f5df64c6a477fa5b3323690aa82796d6b443c1234368bfc4d5181a56ad1b222dd893f3f4e457d13e3096a96de3d3d5c560b329dc40f232e3be654aca6c87c56800c20f496bfe5c155a74d05fd7e9b8c104405b9aefe2c95f05dd61d4b167b39489feabe58671e059ee720828069fd1197ee196543ee8a6dfcf5caa60756bc70e8d7c186dd7248729ca455ae67a18887466f40c590c0f92285c614c92b52b334561e38cf7da31725b34e04e0ee2e04be08d65dc63885cb010a0417c6e4243b68a2136d47e48501ac598ec346f4a6f1a7f3d26c17bff232f6cbd76d4582cfa0edde95785c6e0c25974bf794c38c116809a2d67077d505774bea602a7fb1acd0c34f93c5c993c3b3830fc49e8393af2d97bf195dff9622369f66769610c5b4df112fb284a57e5ce1e45f7a8c0bc2b7e557011e1c3ca4528ea4249e508416751e33ae1a61ed5f121768b075b16ead4b6915798012296986894c6f163578235e48933408100228f34bb0edd651b5a42e42f4b3d44effca6706878a86efef4e0417812d8080785d48d51d1b13c82ad2d9e92391e1720de234ad1a4415fa123c260462733a10c80bb212049c23ef148653c06f52a625769e0d052aca0c546277a691b84f730584a9b8997624ec890e97e0eadb59e33edae45cb3209ee43446e934f1d92ddbea283c55e67faa6bde5d48208b78ddd91fbfb9f143eb6df7cc54998f7540875368b2b84b38c59fe82da3f0477fcb60ce01083126cdaa7d8f9346bdb0ad97fe53f561087c4e3d9124006c456c7337679b21aaca5c82be61073de4b23aaae1664eea4c8faddf047c88f22a72e0318d8999296decf3529a71067079d48a1ea838c8eda1e7093ce50e2e09006c62a2b7f0ad55487d7dd461ef28b7fc674a98fce17fe55d3327c4d9f25c935064a20cd7ce593018ff26b07f9cd6758c1f517bb534b356acc97164e030d5875dd43c5957d9ef5dc0193154d03694fd44cd26911a639e8ff09b141c767ac3e954325002c8753866e655e5111e8e886150e85988dc8165f08119126858bdf5ee3231b165206508308c2964a13b9c005d192c9e0e8d75333aaf147c2ee4ca7ebd757d69a30d750925c3d7263771567ab6a5134810af9f613c5eda82b1bc739cdb68cd0968dcdfa25c55ab3f0c95b3c64fe02b1b15d89b0c1750270712a070ec3d319e233b18f81a2b00418ce7f899d009f3f88827373871d814b9affa08a13b7ab80818cc50f3441cab4ba375d0c2ed022625128bae272ce9f0b3bdad70b11795b6bd55a26a927426631946dd472cafcdc661a33ba3e22c3166b1f5d0baa4dcd12ced89a2a8ea01304b460161518932e8653dad110bd863baf262b9dd579b31aebed8e2edf03849167774754dbcfff8ed39322aa115d5eb9e2d1cffdecc11667b4a85c47cd26e466efa36d24aa843f0b27ee9372ed8a17a58447e87583e34a9e6f6314a85cd262028225c18c776b1b0376f62c350ada130a17000aafa9d5c1d3fd1de115b5e619f7346e9ddd9710cc8fe3cbe0b6de33d927e06141622051ab08992b1c900493e3b25360748c8a32b6825ae58300f1438bdf3db782d62fae2334eb0f0d2e4c61ae95abc577013ba851661b5d73bf15f2a3316be5aae9292219b81cfdf41f6364d1c26473f188792c2ea8fa24dfce807b4c9fd4fada7d8bf59dafd9d15a4b3e6141622079e1490f46cc21ce00f4a5d9b6ddef0cb57f54f1d525aeec5447f579b85b21b1911e2015d12915ad26a701ecf4c975046ec294f08005d75568f364cb3f2b34d70d8e52d4315f6e6e81880c3df1d8890433cb93802ef01c3920bd54a5b440a123941694b3dd089367910f31255525fe909e31604ecea033898a39c9326c19e49c408434dcc62cbbcfce1e33d2d87893992d6b49c943dc3a34e37549b8e777f70adf4ca6a6544d0a9cb007f946e842994715418bfa5e297d01eff32046896b4693e494878fdf9af1a18b03673c29504f7247c448af42fbec2051417aa22c4fb38749bb72881066f9231edbf29f1bf94988fab8c897b461edfe31644654bde8c62737b28abc9ab206b6a130c2ee8ba85fb6aa1a97cc881cdc91248643ba05c2b4d79005afeaef559aed1366c842caee9a66673e5a7702936a4ee58d9ff57a34e4c09d802d1ca8ba03f2a5dfe6780f8453c71367848f6146a66ee77c51532be57502689717944ea90eff01624b294a96e4ce484a7976325fa78700717964e08454d8f45948c1bab3d7f776ff84337d55ac067b399b456d90418cf5ab5d9a938836db372d5888ca654e4d35f036ce700a42a7c69d379b4fa12a36f9df4a281ed0503f3381e1d61a2090d455633cd0dc57ef2cde0e9724091fd8e20bad00cd29961146215439d7d34161cece2388baef2cd7b295e2cb747c521d5564e2f2c4fd47922cd38c99aaa92ffd2f20adc588b0254bd2a8a41563549ce9c11b6ad5dc7e395671706634cd5e35c9dad1af6dfbf76f8a3a351031636c9e52a6cffc4ebf064ca10d40087343947293f21879abac539fd394d36d56a5e37233e2a33f5af086c570fc5a10ec54724f312c84e367c775b52dd85286cebd7107abdd13202e1568c6e48292587162214bff084fd5209a39aaefb4c9bda2c0053a853544e80d02bbd18227dfe57034264615d155b5167dddde701f43313db5a7c45d279f605b102cac9270075529740d410121ab15844bf3c6d5f64b5ffef91e39c155aeea7db2523900e7e89f8618348203055b721a6bbb43a9a0ffe0452b2306e8c5f73f13618f5490f207b0e782c05a0b970763d5b9b2b01b7592fde7654abe15400d49d466996ae17d90470da05c30c7e98d5ab42639a096674ab42b0222470940a8f222775788301cd23c2cff77bee1fdb9bedce65cf7cbfa2418176648a1650ccd7a00934ff2569e7939daccea68155759f41050d7b1b36267f5f7f4b80d591d126d8fe3e048b3d90dfc3821f488850480922aa3117725117c31fc10c94fba2df0bcdffe7a41b24158fa298fd6d0d1ad65a3c3f69a10b116af51c361920bbe66c3ba7e43dd9d1139eda76805bea2531696acfb0f742b1a6cc3ddbb02bdc95a3e2a85d0bf27127633e2e5c009428adf515849102395bac088955cafce31148251abd56cdd7694646325857f62f79f069489c0538fe06b21af975bef01064af8d45ce17ed3e6501279f1e2d8548ee036bb7475b1491e0a2c9b779639b0054f3c3498f5fb9bcc5046f2142058d623a56e8eac124687866fa1c7d5a6850ba6b731e317fabc43f1c885b1fbfe4437609799d92c5b810b77bb93cf01fcc4594e7a5c5713ae91e08ed6f29f31775213cd778fbff120d5197f3f1c31073c9e03d492b61b75b585e9c66355feb378758f4ccae2bec18753bc7437b62a999ed4b400b16f6170372e350ed1269e0079f2cee5854249cfabfdb71ae3fe0be41068124ccf457d1c42af02f7c3a2b4cb199d82d457df5e9d514bf737a62a97c7d9e41d2f934792a2d9e83864b28648a67d824b928b03c83a667cc58a665c15c9ba2ac7ef9267caf2b207065cd09425e15582ce0a3def7e9c1fa7aa223e0b988a3eabbc0e7c983e597d619fa68a433a937e03e6104c7a803c91c3fb7248e5fc14ecf886ffed4d36f6346eaa5df8803971c808019372758ff8668bc5bebbb3e9c691843c38e5e0e7be58e495c70c30a40e13d71d46a26a3a3348d27b978a3a46cd1ace09a9405119e5730800feb8c36994153b1c914a8a86b16d075e5ddc72d90af224cf84f9aa4aac89fd99431a16d9c9c079adc68787da1dec936907837de9826cfb6be841791413364ecd092d03d2816e367b225f3dd1279a9f37ab3a722600df6edc1351755a75c8897b4146850a0a804c96af8db37c52adc0e0415053547f0e252bc89aa08261b0aa045737639e59a7895d6f8150bb70f5f558a120aa61c62692bf42337d03aee7e365fc9491d2f02cc7fb16e5ce744ac8ae4dc120a45f55abff16ba57e6c4f56108648494d3586e08793a055ac782b0a004d1cac9c77f19c2cc9cf0f2faf9f96f5ea8464eb6dd04d24d175329b3ca03671ae601e488a895735cd5a2d4945e4f90f2151e78106dd6bb0207123c44dec00a19e36b5cb8d86e84a2a3bda5372ac21c135faff6a44b9cd32573646e59d41c88c92c1a2b653b6cecaf1dd132c061acbfb45104429416cab4ff0faae565f77ed59a823abe96d474afb9235eccf4f72daee74b1d0bf182d7c5fb80352106ec3f282d45a648a2330263731a47b88e79f8737c500d8b8308c5603df18efcf51a5831552e37e9ae43043bb051202e5e29c76dfb5c1148e6bcfe107ac6130d30b2ba66f2158d67ef8acf53f8f9db2278743b281be42427e0d128b7a76011d139487580fdde733d847216b543c5e6feacdb12a7a4759bffd508545e0ca311c7bf8820ebb0ccd0be606f567f261645d4324cd30b23f65a1894190499ef8346f6e6203de13e2fc2192435f6846a66e1cc8d333d3ee6c190e0e72a916883c7ff2eb2f75292e6f3a5152bb9bea66fb017ae0a3a73e15194cc34a0f3ea7dc60827abbad3081a83f44fa95abb274d42fb4c48c7ed24571b714af661f5398a031d7e6d926a69dcd159ef195d9f87543283b3e09786b8239640eeb671c96bf1e58b0a08196f51c8c006d33e261e7e13535caf3f5be5248f03f0129a16663074b36082644c493e8f98ca6fe9833ca18b26aad84803a49f00d5c93f86969cd8d9b475da674952b8fc1f438e87a389876d74ff31e21d56c94d4fff1bf2659b8b5f74563f2840bddae7bc8025e984242a15c119b7b72393e3beca49cda7a4094be897259c3eaf32d57ae6718a84b10d788709a94970252ddbd7b108ede6a28ca73ad9c16a1d44a2e21cf2419360bce5c3da2c567c0c45589dfb1ce1a663330bbb780181f16b09542ca4fb6401cffb2cbfa41120f1224f3ed6c0197f1764142d85c6418222f39a3d58f74f993d78057a7b4be9874293ca4785f4be67abf9f71026f4aab253e512608b1dcd11b842d3613e1130dec6c2662e43a340526ed0c3afac1100f145bc30819cda9e0b0fb721522cd6ccb5a98146664ae82887b866a418922b78ef4ba2246c5cf21ad0d708c20cc0e32a9872d8ca4a0d651bbbdc1702c31db9b5f73f8c83442897f605fbdaf8ac0946e05fa80296a17f873f65049862aa3e31d4ffc2ecc40854182b9f8b0e55b07fbc27f0c4a84a0f93cad39ab8b6c0c46d2b5ae795ddd1643f8916727f645e1817314ebeaf87f20eb5e63efa4125315005b2aabcf5871b073bde55236e946b599973c5c5720481212d9d8f2ba8e804f54d7971e4ff79ac85d4129aed820d024b58cbdf565628c5e294b554b9fcc9e227460160590c31642d5af48372bda657507364669e76f9d3ffd4c6da5b616b93c1cbc89ce6b18259cefd7915144ddfa8b3a01bb5e6ebb1b21ad72103e32b31160b9287f3d69267ffb95ab65537dec7c1b97db0b4eb1a6d5bbe234a0ad63342009d4c12bb7964e64734d62f71161a622e5111ebcaa9de9bd9519df1d04469ad22053ca32100f2c47b7872658468ccc99e3188cc7a17386965200ca2f876375a15b59567d8f5fb856d8654f9e0480dd365c5d186fb9c7adbfa713502332f479b8608b3928a69264c5aa52139c5ea48607330ee8fd6ee352a6d9151de3603533322ba14348a22fe1ba8cde23eb498f792cb30d2b8cfa886e70bf078cf47c9b1e1439f715b1e764b69d72727f8577a7a6169585e96b23079348cb2091aba3a9519f6996095f7fe12f72b172c20a4deff9efa99e30561e5df26248f7b01b280097e103403bc128accddb8acddb300630923896d67f23743509d638456dbd9d05efca407c8c8c9e6d80dcb1119c03602580dc801d70e308cc5b2c2799e1d35197fed63513e8ed0d133addad544a1fddbe45fbf0632e8d241c3caf508bfb5b845e35394999884499dc05b829b715c51349aa736876a514659ade86881eda775e05a4bf52d238f4b11a11d032bed4774088447718fe20f66dd4dfb88eb96e36e15fe5891cf0f1fe3e5272690035812072418effacd92718f9c3252762502fc2377c3c8a13bd6fd5f4827e8b2b90f28604853fd719e829b7896317c37f0cbbe19ad5f7371afeaebf3605f50713cd2ad165dca4dca85c7540e3ecfd94c56890c68c6820bd70db65d01199fae5b53184e1e1a56c67e546717451808ed15363cda3bdf7b7b35adcb6cc817d06d7d2a3014eb835d829b8ba4de19536b062b7068f0527e56b255a0fe34a5cdaf7667931368ff0f65be4138546d9c67d43cc4f13c8489b77d819674a506948f10c492b3f6ebbf8257ad50d598d859ee35d2d844638dc7fd4a08d35cff1c07921a6b3d64066446bbc1021a53da91c4497f0e85febf3d5ad0f19370a34e951c1e8fe98963bf11b5d5294f346834c5855d76c1221768731c0dbcb2f03c99439e8590910e43108f44ad1cd4f7f6ac1a9b23451038644bce74d065233137fd350f7b7667a88eb271aed05bae999d15d2b76ed0138a275bba25af92e220f0300a610fa8b4f43100f1f4e05daca064fc984a7c065f66336256e954c3dc42e6ba909f2ebe4a8ae63d57dc7ce7b88a44c373d394289717152694a1128ee3b117f6fa3d897e5c090edcdb58139dfb51f7a8ec661e0a4bfbd5e2179974899fe49aac4f5c1d2d06766b7d2b9e18aa946964d9acd60a5854745f18b7f5559dfdf4cafeda718940d0a7d34baced609ecbcb0b20a375e97e2b3e4a486d6abff70d82ae706682fe6b46d8fa0eab9afdee133464076e64e1a405871eed6b4c8033f791654668817a4b251765c2fcbc00d8d79a1f6b01f9433cb2d0de5e207e00d04c95c546d5ef41bd1929fec5a4a17d2c9e3313d7f12b19dfdf393fd0979be69076408f14f78e1c7a7f57207220b3d38d672d06fdf3a9873eb5ba4cde0fa65de19794b9d3eb8847625e57b84f17c3fab32091622e88faef42bc87a5f437d43c5255510d9f413330613688f63c25471beb57ac61927a925acba99730ca6b23e4ce27666084208e07f24128b0f633881aae6c0c8baeb1a52ebc2bc17671a2f636bcf7962b0cb4d6266ddb0245ca26a570553a62971e7684cd03af347809fb792bf3c2f4ccf23590c51762fc0b7e5ee0c99bf099db4a77d24e20e766bce4f656e46da3642038d457dd83cf621cbf8a084872cc955b61fe03c5cdd78fde6b257633ee03d3e614a8f8ef93aa7133f578aefe97b76992a69b61b7e8ef7cd00712a68cef5f254f7c1d6a087d9702c6b88d9fa9f6e75db52b600d3344c67ead205da749b94a14eb364f7b4710adca8d104c5479ee81935f3d4231bd157193051742e617ab1d10e979f9ddf50735d370c2d426596b9b56deb683de4245579a70359dc955f91b5506278dbfe7062de06afcd8f3bc628ea112918d84bca48506c4de615ff9319f447b5e9df5c056d5a573c651d57dec8750217c6f78d9affe5b00b7b0d24f371d242346787460ea993177f713cada79d5922767311757fa6529bfecc3f0789e9d8265d8363e4f19518c34fcbbd1ea0bb1eaaec0a60a933ae61fba45ebb288e8afa62e3bfad09ba9ebb444ea86e81047ffe9647c79f9c50267a43e12ab482319c906c012e23df1fdb61caedc950a2abcba9eba03953a7f2aebb7e083ae2190f3cfc53279f2ea4a272cb71b566e25d2c212362b23fbab0d33a3e6f24fe88f8de093128ca26a7d450ec0b247ec092f0975551da60c7bccd308bfec57d648f7a0e2f6228b8a403b8cbec1e72a17cce271cf58c5616ae58191de6a7f213092f14bf8d590d25cbfb27f12a124ec17c0836b8eb975fd4051062d858ada8a7c7547d2c96f1405b44300be630434bc05d3da1db86e437b9a93eee5eff6c87bf65f68945f3933d828ee2972f8c5719f7040786b51bdf42b8db7b9be3f31da766295ec872c4e83ff5a07e64cb26be48d0c5f986b66630567ea56521265e392478ecdaadcdcbe10fe7b28d81ddfa91109ca6ace2467983c38b402649229e460fb0c253a0284a86118641b683b58ee74091bf44915575df0c78991742b4eb60b8418bc7c843a1b603556136119f33e4e007d91a1404a44c6ab7a4fb20029a770bb59233b87674bb0abba8ca044f99bb706702bf69298eb79a2ad70ab52c1cbb3370669d80613de6372b4a630aa4e34f55808aa8d7417698211cf7936684bc3c9778c531bedeecf715c1e0503b341998a55723bff8f1880a0af7e3262981d249b32aa36035669d2a2c04010fc61ef59468c8711517f31efa1daf36aa86a74018a3b42a3c44d6188e49c1d0b87903e4c491fd304227ee65b7653a2a98c78a5e2bbddd95ccaec426644e70ccaac5d9224a634fc7713aa16556f44fcfcc97dca52edaf778a75812c7b6701e5ec97cacebf0adeb2710c369452cb4c454af79187f4cbc40b6c836fc9eee4120140e6d93eeccfeefbc230bdd9b5db8a0edeab42a944895a2a8467bdd9d9e684c3aeb79fd1a581ccd7ab2a0046b7e51d00f97d433a462b0905e3bbd708e486d0c8242c51b145c52b1610502157e8a39320d818136ad242e75d7de761d0dd63cc45d39e2f8f5ddecbb36d7faa789d8037ce28a452809378483cd8aa1238225046c598a5645ed029cd223215830733839437d87755a61a07176ca14d55d91264b90e22fbe6e6674a16e4f70ee01a4611cf5febf0056413da484876fec1da2893c3c147092432c38270308d2f67386b7551736cfec4f3753396a8605ae8ea38d726b2bdbdb13a5997b0baacef1b8b6bf0a7e1a78574a910810cfa8e09930b976398a8ebabb3d6f746e82418dac4980096898f1d3f0db4755a9486f5e312b17bf5cabd695e521fcda3b8c44a0d824aeaf6504e63675ed68d8d8ba8983f0e74eda199255dce9bf7db5a441fdaa3be103e4131291036fb091901bfbea875a04baf00c71481f27c4c7010679a5150ddd00d867f70036d248aa1e458c6991ecabf14f65ce294c6bd507930448e3162fe3523249afa0ff09f8a5a061509a8b12ca55203c1094d97bb690189e5195c064659ee8ce1c69a8c9b101e5a53305ad7b52ef0136cd568a9ebf05b49bba64a186e06702b4da7583ae63a6566cd39492c92ffa100e1fa38a19071e7e0c942f818703fa99f57999df996d0123a420101c11d641f61588a3c931c6ba13d3d7ccfa00cf9436289cdaded49e54c600a2aeec0224dcb76903f72c88a4e2f5ab798e211acf6fd24962b2fbc2fdc2675c5a02f6fd6d68f70cd081e4194c365aa68a83a0a1893f1b646b225fba7467eeade3f12ce868d51834b1cb2a6a952556cd9041c002b52fd5335ee822c4fb1e6c1cb3254c82003a67721c66a7d86fbae339a20a772788a9d15d0aef8fb22a74af2ba11ed9531cc98e067b956efc942f1738f9569b96bd3c3df75bbbd982f87872df139e7926926bc910b7cc43c1110559562abde35829ca83da15a47737938d9bd96429544924a69d0e4012cfe1bc3336c7fb31a7fea698e80bf7a4964c7523f0075003454223b7760402c66917293297170be9b8b6cf862ca37109cf90c16bc24297515540a83c3b6e6a551bd35195862ef301eeba8a1d5f121763b0dda85f5c42c9b412cf261a1f5954f8665af6337483c98b0ff2d84a6cfcdc9e82e623deaace382e79d4e248a859e85e81898c99c97fbd30f34a4e0c58f6e84e85524bfed359978cd56fe697392e23a7736f3073501ccfe0ad82fcb7ac85fa54a916750c2631143e3db184ef4226ddaf36884ecc9a7918943a33403b283c976ab57d17dc372672c821f17292a04855d25ef8301c34e8206f541587ac6f7ae9ae73f4c13771ddef610ee099e27a12eaf87cfdb99be30d86087ff12dede7b835307b02034d46eabcaa2f4fca012645a06412f02517ec9318b0f3a05f61d70878849a05a549b014483119083f85630b1a03aec6961bfde1e0d207235e9663749cfa16dafd1bab28ecb55bd553871b70ad53f3cb7f6607675ce50fa93418bc4e908135dd367e49c81ac389262e1f36028fe27037db86cd2078347dcfa93dbb2b87c31d610db0d9e1766bcbd64966bc69172398f2dff77663b351cd1e86376e88feb03b275616abdc58f33d0cc394cf31d9e2c140837f7b6c4cc9ee36175fac5d4fcea01de09fd32b599e0288a1b4820f74a54dc7ee09b5798aa014f1a443e629c38a3f43f1f329b9ba32bb5ea2c0106233814d044ac4051fc60fd91108e058307d7feb7ee027a45b85189fa327c767712cd6732d582b5af5203c08874049a99dcd2831e34b9b8a2bea775a0a8c3acd1381ad5c837a2007a0dff3f6e0a59a176a38914766002bfa656289f83bae382730066cf7d74f0a5bb0dad54a29ce3457f46272777d79761487af725b2be1f5de3a541e751a660ac14787df4adc4dd38fbf4d4447e387e47a02271e9510440cac6df27a3bd877d4e06a2fa634d89fb7e01569016d62df3acc602442a7fbfc94673794cc1bb63e3be970501259c80a31e5df548184945108828e24f5fe87501e553718bb458f360b572b9390d3b599391b8b6a3e010420d35e4992bca0116a228a24165bead4f08821ab9874c5a45751d48befd074275250671a6fe66fc72af7e06913fd978e6ba7a202bcd30057392cf39dbb7b83615deb0cfc41651d5a55c00f6fe9caa435edadd482a9be04bf3ef11c9476c30eb4a0bd3a4b8f224dd9180f074857dec6b72a31eccba15fae49ddfdb031ba2f949c75f572e5b5fe61f8d83d533420da3ab34d25d9ce3571e5eff6328ac18a925bb20ecb72bdfe1ed26846e5212e355f361861cb9359c487b7c74be45d417b7f432c5bc9fe7d74817a0833270f1d082828d193506d3f08042a776e6e8763c728ee39ae3ba223f55660ae708c8f1d41acc0139a1df3eed87814e2b7e63aef921408f1a554bf6780c2aae789649b0fc2cfc052bd8c55f95e84a75b31210a354567d221e5c17353c8fb3f577d08475d8aab2397585e886e3a4a03d9d88970a9ba89628b946ace6c371b49e3b174f06f46d9fb41ffc03397f5479a56b339b12cc6476c4957b907dbc6d380286172e760eff6c7dd4277c3d524006e7284bfe0e328ab36e69270c7082a32c155f4a9965861359e1e56cf4e2b960416218b0963e66b55128c39842c89ed2dd004f7527873d205bf8399b8e3d746dda90ee0c83f7214431110d34e902153a708bf81f8615fae1b216b1cb695a01021daaf246e91af7771420edf8c64ce22d4d8a8b07969669b12aaf1ef6f08cfc0400cc8c102242ba39896c5e075f54077ff3de78c88d14cf8ccd9a54694acb36d04da64c31edec7a47f0c0ffcc3df7d5000cc294ff5d56f3eb8425d05904529d7226f69e2ba205b22b7bf9fb4ead2304a13a7f8b4b4e72632ce92d699f5900d64205ce5154d52933c8d5531931869d159cb956ed05b5e55d3728d2e39bd0d799e08d9c372bd40a087b8f0c5c45a0bd0fdf537a662bf042bd4f76e41feaa1788afbe67c995e93de7c29747c422a5399fd2214c8e605139659144c0242be71209a4941995649bc6ed8dca508b84a8b9d6cff02354e3d1224f182f2d821fad681d79c5eec9a8f4d6f341c0b731a9faa5cf36ba7ecdf1129e3fa68920d9ab9e9a71d096210097c88db4dc87d73227ea2997f89d8514421c9c33d7f9c172d58cb7d84cb67e214fbba70a34a6e90ccb4f811c56d4bbda533b73195281e004b9d3380ac839195395b35adec89675019de4f940a57dc20d03fb2a07421679c6c90cf747d30707c00b723630442ef78b457a9746496ab7c8cee63261dbf2183ff64cee83f20ac0520e1c3e78b5034772473bae8f639bd28052af0613323867ea065d188aea43fb7a85e477dcd0119b0772dc4ff8facf9cf71fa87d40ad51a4bd2a41a8bb3118339b1be21dda7be27d4bbf7d870b26e623fca075da66627f8700d45430f20afd3d8c863ac80e8391564215dab8285613b416824b926ef9f833fe8ed87d6c4ecd434f270963f6f7d9cdd72b5cdbd1c06b9277cd8ff71fe7d420c244442becf2369bbac44d52cd718bafbcf1f74e1c61100a80766b7017d7dbe686da24df3be888e797598892435ed57589e2c2f3a7c41e7306e7624537d340276725aa72865c4fcda61daeffade22986a7df1d3466b0218992f0de112c8a7e1044a563747c330a7ebb69f1202be34ae7ff5add210574da09459de61e6fd226b54d73381a08c15aad4fd6642782e5d8ef488e114da8bd047c126307842978787835c690117e906986fd6a6950d24854496525a97b38359ba86013ea225f7714704b4a33c380918c43a1909e470ce76a8883ebeee4ca16dd7fc35992b364255479983305c6cc036c844819f8b3f8f30c0ab4e60caea3d34fd884dc8a343625d732c295831753cb3300099b243fa4fe79929275d019c3f49cac2eb82c8548afa05fef8f8dd70910bd982b5d5a137b87920569b23fc07035769eb22988bd4f8063f85f26506ec135b5e69aee64f49cebe709604b3f884c335dac9f37ee6d3c2e2c8f9d9f3a0bd5863463613a43fdec211ffaa61d5e0189e5eeb63dc929354fd4fafd3c8054db0205adcee28ae3c1c73fbdaa24aa62d026ce481a3c1dd90f3d911461d986a97b20ebed5521b2383dcb1bc917ab8018f66b798621a1520f5166ae694d7c2b54629c254a4be908096a60a0f3f5b1863a99a8b4185e87786d905e27b0f10878212faea64cf9b27e397e922c825173e415533ce9bcd3ed0578e1068160d089981a50b47e8c684f9b61342bebff7227be431a2f068f987c3615306ef1e6fa6703b03484d3b5b1e4d35fcfebc2f5cdd9cd237d2c5b1598c6fbd16e5ca7b4f2e623c1adac280be2418b58e8f1321239e2674ffdd6bd8929fe49cc4662642de3879142e66ac9c092375cf03ba8e1de186ecc6022a119a43dc8ad97e91fcacc6b7b66cb5f0c9778b7e63e8d81fdcf3abd2d0e06a7c6bc9fca476847e410047a477a4f2a99398c60e8ef1b086915807291a0ccffe8bd29caf94de83f042d3d9a3699ef5d35b206cb3e6753f5bb90d594b53d400d1b165c9d54d5ba4bfb68acea6833d3e9176ba9cff1bfef00ccbe6cda00b590040297e6a8e58fa5cb1627e725f3b37fbae932ceff2d672b6f5624e28cc8fac19931d328d93bbcbab8f01844be812f1d6692441cf975d20160250b5c5f6cdd86b318084c7277b2b18c373210c841d17414e8ff6aeca5e33e99e9065190374cb3e4b21ac8956706b6b9bd70f3668cd0f3371b62835a70bab146e77bcede42a02937dd0694af3ce48ca2256e6e011ad38ff398310c9c502c25c94448e4c9fb89604ecd0b481a2d797d93fc2f27f8514c8fb7352ec78fcf9a0c38a5a3d6cf41b696f7bf719b7e077e7d527b539a6da4d79ec45d539b3f193dfb6a691e7f68729167b2cc6dfb8e8eb0bb917a636e46ebd86958461d2cd76be51059e513f173bfd5d61266b3996803f1b3382b2158792561ae7ba1cec321749358e6237455cd1bde84bc74e8a02f1bbe1ee41a5657a55efad2857779d3c584cf2fbb18745482d6a86443e7f3274ee056c607ea0a56d2aebeaf379029d657428d3fd0c0b4cdb03f52c23ac105a1b02458d75def59c2513132df74079dc6a7bb6f151ead089883104acb9630341272979a2421166f71f99a59481b824d4eaf0f3f9165aecb4a562f282105c45bdbd1cc535cc745689308df6ae3bbaaa8ea78cfad62ff9b7d34fbabb99321f5044b5707191c06d62a70558f70c94068a39e7873e85100c01f4e2c689da313ce5196db909cbabf0a05ca40f3256b540260f6eb58b86a09168067168e2a98fe0a4c3cc44d46252b443890e4b2768660a7dc9c4fc2002503806b6287212418f02fde819240542c86d435cc6a335a4e5dc07c12c18c92097f5ccc9ed27f773c19dfa3ad99166570cd9a5c82a84dc1a56e77c695d756d16f038b1bc763df6cd8d2fb456ed58ed2f3da570fe374dbafa813434eaa0a20137ce843a3d5b3c93458585b20dfbaac22d5ff9106dafd9be6d44f0baa0b875268dd30f7c7af80333a3c23bf8346f930e1b33aeb4a58aac7a8c227b5c47038de5fd8603c84b910feae52512843f1bfbfffb154e6442d2f95902e4868028b55121aaddf88a9d4664abced2099e9d02cd1d98ca190653039a246708a6aaf3d804769b4753e2fcc4c1fa595d2d89929160bd88e15e31424cb8b714ca54bf0c9f939b7c79066f2972d0c04f6a1ec484c1293948bc31b3bd760759c2e8b8751c3390cd3099ed9c3678c921390ce5d284412ba5569f21653840e70069dd3d59796fb487354a3be51864bea2f0d277e34e3c32b159c12131b75f71d8c01e1486635af2041f7fe2d62446c7db1275ad1f7f39daf54303c0e6003498fac5c6310d987b8e31f348ffe2f2a8b24bde22ada373a53dd8fb4556070945d6ca7d2cf1ef097cdb00fe9d60e0e7d3c99c235f0e25e7df995ec375a7d54ae97dac7040d7708d590cf2da511a82710ee668ba194266f597445bbada9c03954532dd992b22db493c73ec62de60a0a201cdaa71442e010d189ccabdfbdc22f1065535e9aba6dfb1904d3c9cdce9188faad65a7c5ae9c8b9690c2ec00b2e121b7c9e0092a23759063c25400602ccbf4cd92cf30c80102e7a85892668d6bd54ba06031bab6d333d58a4452037d0c1e2778cabafd3aa26e344d71150ee805c805f8b58fcc960bed736b93f70798cf6da3b65b35e1739870e92cdebaa86fe7d745d798e8d8ae2336d93dd807d3482e5f9e90b803ce0966c264a0a849aaf1b5425a23f73ea6f46425c6ef6ed32a156598bc1aa4fc432aad8968a488ea64f9fc2406aad5a3686ef9213bc315cf32c816f321009b5e6333295d638b45688255d1b506b5a80703b704f6da248665178cacd2720d9647bb306fded3956c6a37489d5902ffa1fd0028a7b052e615f9da4db8c3464ee4f24594dd3e66d6b8e032ea12bd2c874190fc6edc3952201048ea0a921920af57bc786961ad55bbd376dbb1e30c3b79f931d4868e26235065450b3432537ee19ea5a395b84f437f41a22e54a4fc10118d3c8e703a8912474855e262dd95ac9f1cd5761057c5034a7cbd742e1767203579cae9ea5792fc3c4b32b6d97033eab2d3c1feb498bf3ebf9489510163fb2a34d629048cb8a0b7b11b193b03643ddfd06986f18ea502e0d7fc7b40dfb6e10bc805ab72c89e00404ec1acc556011035c77f4d35989b955c18b3c8f7d0417829a7e4f3a95b64b68d41c25a536c798b27455de01e36a8bd0f17db06431390353e75c567b44f9071c1d2eccbdd8a95db997d07051dcbcdcf9b2d2a98b65430e60b71cca9ee3461dc748c0a845b6ad0d02bf2868404456391451d4b9db678a772339905d1f32b2b3f6d3acca63405c1c5994b37906f545f3548d525fb118be83334310e6910a5f24d2e9ed2e0aeb961a8c3db885fab62fb3b6d711af8b9acb6146841a2c3392c10c77d8b474441d4542e3aefb1d3811252b906b45673d230b1f63b094ded8705df8639788c2f8d893e288b4899abb11f15f0669fef77ce3164860d90ec3a851aa21843ce8e4dfb3609e8eb0ff8145faa25b41fd2f0916776abf922e59566a9e2338de7d80579e8d4e0083483ed8a59b2eb14f1c26b93ea304fb65b3d734362e27480be25ee348e2a7f0d61d4fa2ee1bf907a6990edd7e44f46621bc6f08d3bcf60f3fad3f838e18b8e11694ec3219ac458fb5a567473d9ba81755755f7ca131b1a929896fd02abf6456c645b499d0a368d92be2a0bfb497431d5055a4a4c85dd6f936ee5a99bcb1454d11674b2a9eb5006f5cd1dd45d5e3530ab23bcddb0505494bb18ae352576810da70d4093c096a23ff48fb90db15622c5d555d38e6a8a308bb19e1aa623b6896cf6ea0a57b6a0f8d035b9df7312e3ee2e1e30ef52f8274836fd9547d122e3d3426c5ac3b369b72176d22dffcba1a46feedd202ea7662a4ed4632e48a642885780e08f2ad7f3f1e49cac924ccec60e9f9fb01aa5bc797325b81398991add24ee2824d62a31a1b2cfa21731cd207347339ea20d2d7a7169cafd7862506f14ed38ea0a1dcec6e8c948b7e2219386576b4c07fe107d0bed2229ca76e123fcdb21eea6281b98d303728b88426547ea8808bafb061b25599f129bdb4c01abb81167c4038b0080d187f913a4479910f9e18ffc76aa12f83ba6424ebf446403672f7f7756dcf1c459978d4e73c4fa733381572fb4553a907ed2dbb88ce8757812d1bc90485ea42a03a6f3f0f46551290329ec8811dd607df9b3ac7926a8393b3d68b72cc9d5fe052e4be2146dae1051e48ded9cbdd05740bf85c974d1a2469a8dd1980da5aa0fd42f2b6e5d7e9bbe128f65d81519f0310ed74b7f160d0c73e59ebd88b8d7ef1fe59276599427cd32fa64a97e98d2005fdf94591e036d68a3e91e7e1dbe16a5ef49b86389203372f34060d5be9ad6d91fcfeeb29cdcecea07a7129ce35dfab5a6010e5974b25f724b689011aaeeb0cc0af20f4c833abcae35e885836c1e8890a92aecdd59dab980aca65482aa6582da4d823d22dcd02cd41f848d2cfce7ddf058be50e5f4021c5c04eb43ed864def1061fa9b91a4544b8c4e9c9dd85eb90504afecb85a9661febda8a5d972129376360d01eb5f92cc350ae8125d165ebbaa998f8cbb1cf53b901dca69f2f61d15d9406fbd8c35ce496176a3e90686dc06efb907fa5264e16a5aa8396d470839134a63141295ad8268eb39ecdca094ef9a22b48a477697dc341b289d8ebc215090887c26a0e24015b66512aec35c98a81ee94ddc2677bef8802000ab759c26e59c373636a9e054de89e0f4747969f2418e1cc79059817c600baa4993c1d029733008cf548a859df153cbd00b10c6935a9864fd4832bab76ad6318cc50a9e2540bbc7c7615898bf66e0cdf3fc8a66cdfe0363116dde9f1a857a398d08dfd7d7bd2982514289845ff9ca490b619e00fcf69e101f19962c8e164bca0be11436b9feaeb5741084eabf770237b0c97e034c9de512a7eef3ebc6f0c93e53a5452cc072d9034b091f0263106ed73c1723382bc0e7a1366f865b63215d2e6d818c43a1b5149e7142f10a56533de23160fc7807409856d359b1d1c5a1607a8765c201e211c379912eede0b91cf5fd653067a70c486ec444f4e23a6a85e11bd66ee436e3f57341a80e2ca7a926a23b5629c25c9138b5e528232aaff705358be005cad73b1b3d799811ece8d9564929e69170318a038cb012def678501d72d7fe6e546c2277faa7736c8afcc5f1746eacbdb88199ab75fe249b327e5c58b2239c9e01236baed224ee2170925c40f4040794f9562137286179958deea186c04b278361d20ef915c8f247f9ffa8f98039e34485a8bf6109fa097d29a35b50195130652978955595636e4f8950aa664a4e8bc062f12fde6764014420a1131b2551d31fa2815021110cc0022b1df40847ce597c6af4bff91a55712cfe5e394a25d5fd134aebb1414c3cfe15fa5a577791465ef21e7b48c9b52e9d06f4349d2b896d78fe633ea2f3350a5119d124d59321819bef2d47d1ee8929b1c0dd7b3ca03f037b5628dd03ce0b4fcc275105eb17cb598c22e0360f2f1a0964cd8f837706d4e1ad583faba8893c8f2d503891831daa5aaa02c351a8febfcdede5ff56f0ee85eb5bd895cb03e87c297d363a907756754d66280fdff35da82a28791b842ced6c4867464a7017063721283d8f40525924c3d415339d4ea14916a60812bdd5a6ac008a141a2220295550ff11a6f2f8a623d8a54610628ceb854d14cb01b6e497c0f5b790d16d0ce9434f58318d981488d13a5145f939c81d14faa1ff9b175affc32a4881d118b6b1b1888772f6b9dc6e24b3daa53b1097a5ae0071f4571d1e75fbff37a148a056a8c1126a69534f60798300e79a6bd64fcc5f9fbb14cdd7d2d973c272cf0ef852d668a3583381fdd5e58b751aed505bd480030bc1605c269d82c7af60258636fcef7c86e63098d1c37966cefedec3fa8315faf313b6479af67fd19eaf3796cd83bcc77e90260b0b13ac6548cd274c1c49f06aa2483c7dade4d097f2a224de217a4a3568ef2980acdd3be17852ffb5fbf6f8e72c8f27901056c48287e7b610506885ebaf464b16f97ead4be3e9bd02e9bac6d13a0a156093b5b70c9d49f3004c8127a99a47506aaa92d68b50c752aca1f5f3632e74d4633f15e4871f9bba1aa574ad11f8d46dae9b53bd2b3826a555799b7c6ee787de8f81da7f37165398d2b65e7aaade4c6c860dac5c478c2cf1ce02d4cf4b650cfa9ecc6ec68b9f2ce5be97a570b95e163f427c92db3752da59bfa09a028bcd98cd5f7f6ca23b5871c362281560881f595f827c3690011c9dea688a90dfa50281a5f6395b35eb585d3b621bdd6a428f534bb5c9d1f0e982ca7b7a0b5f871fe64b12f7fdfe2dbb98d2cb4edd3625eef233634de519d6a54b59536955ad156b098c8116d3438c41a446c9b439dc361010bb48c649780ef6a652337ba2f94e317aee448a7db4a514e5aefd63c5a86345551b5a0c0543d3edee1e4bba30a70401b9757ead823626312d781ef6ef75ab666f7836a4d5eea1064a7db67a8d4bc7386eccc81f13cdca64519fad7e1644b5141336721fd15633ca2a54bdfb62f24d373c3f99f144fb226f19104b44183e096500eb3b017f54ca08045076a67b3b4a60dd26a31741855d08afe2a1403790131500116039901d55c50e1195dc9e4ceea7d955957e65bd4a11935371691d0a08d50e7c40bcc9a1c6f488edc8490520bec43c51baeb94b4bdf61a8c82ac8e29c416baa44238006b9ec17b4ec6a8e65c6df2e193cd17c52084c2ed52c1ccdab7b4b76eff00e0ecbb09d7804207772e24cd11b85af40c9e792e151365722e93284948b3b924b578f86d65359d57fd7f3151d362f637b4f837d3ede1c0d4645ffa7f3d6b183e8b5f19d8a542dd587252e5c45f5adc943baa3e6b3e9452b1040582da5d58be16951103f69d08bd37f8de30efb6c35a534e5d917dbe3c97402a7ccac97d0e5e1da689d4134ab01de08961aa0b7c777d22bcefa23696d82d3c08a37fbf767db52472de513f51571f4747844687a8ece75a777547d51e4285136dbb07b98ddc821d5d750594e31822c5d89399b024a496f88fb2815126c53869140b1bc1b10ad666289b131a7018b926771419ac1e49f85e0c22ef63a1f343968c67625e99c4e801a6377097880184895784fa27609cac479fdd9adf8abbf16197a4879f94c4cf5c91a4f743fb41c0602420e4f16c14867d17bc681f05babfe3376868bb954016654a0cf932d9a2f5fa62c76ae88028ad31efcddb2e6e784a20e31f4c22aef43f4420c2e0d662c11a1c01a6f02a17a894acc1ace92e8c2ae559363d4628c943993b517c4fb7406b3dd85e25e6fe03809e374511e95d93f98e224465dbf4b3ebaa49e2e23c8f4775c9498e195f511bf5c07d6d5bc29c4f783c8770cf4d6a6dcc46406d6605df68357a35fd45d8f85588d045a9fe1938d42f791792ec04df425c771d2fba1ade81697de1411a4608b812e5493a250b0ba8773b0cc18864165784f10584e1ddd14ca8b15e98277e0a91d1a34ed73657929c465d5e45b1bee2f0aaa654bcf06356c1f82327c0c8991c4e86d623a9a94f223387caa67b935d789b506d548dcfc07950b73c518be52cca8ae684ad49a110be05cbb7adfa2b555fbd813924c00c9be80d4b4d70705cf7e2d4a3c3c8b4ce02e5e41e843dfd9cd3239cb8dd4470ad872016eb17ab8cb7131cab9a1aa82f75ef395aff59f7892e04186c0a04181d1511ce0f45ef6abcb494721f5d37976074912890fa05a9f8f739284d7e1936879394f18521e9ed54ec7babbfe77a9fd6b9fb6b057aab3c906808c98c68bf4ebec7e032421829d5e0fffc99efb9ed814e51ff7ac09db0372ceabc3440e30e2aec674a444fb4a3fca490ae625c71b470fadc163094cd86d9dba407ed61ad243f6435a7cbc291f5cfade425cc0b9637b44f0a985b5d98c36e647a553b445d5c0b98abd37605073cfd887a34524856539c6fd8a1f90eb68ab002d95e97a04b07067526d1927fc7b29c3e64c6872e50f97ffebe431c5c642dc49808492108a30665b5a30c9ce46594804399b385f6377c92fd2091a18552d33444fa4d212a9bb3653a5c1925048648bab1fdb4c2f0a31b460a74a876531fe415be6a7ba1581b5125caf36f5835f2050a84ebef81bbeedeba5adc1d4392122cc9c3d22b10cd73966674119ee35ee55a4952669a0529d9a4e5da5f0120e0ce0262f8c8fa7b2c765071e5cb5f7ffa7bd87454d6e28c0d743162d7ffb966dc60746239deef31e9d5913c145214249b887849b82ec59a30f3a38d4ac0408f1a2d1b2e2eb65f034680945a7e955f55c91741bb5dc011c6dfd21e2a607e07417b5530ad09c1d69cab5ac75214731ed3a0bcd98cceac3ede0ca0ec1e57973ceefd4d414a429c50e45864cc133ae75cbbf59415c5af997771292bd60fe1af5111c3e4bc042d15d3dc3b242a06f945782415b3705012c37152a3115d9cd6008cc918888997686bf74183b28d37ee97e70513a463b56f26123b35d8d2b841caefe82fe4d0f34099091479f60a643f267df325e7ac985c59cebdb07a4e81ed4e11e373b9133acfaae3de62f8924bf15bcbae65a809127f32a59a48545a06e30717b4fa8a5372d64716be1f46a044ba4fdb3082d5accf78df7db6e0b94888dd32dd01b153051e8b68bef17e42e16c2cdc330e93ce39cd4499e90b4abe641c7389039b4c60ca813530fb147340db1e1c09121a254c214e45a9201351cc9d48cabad5b4662d7eaf656bd78717a18c1ea09ef2c67308a632f5b5c735447a5409eab75aeb9c193646dbd0637b4038a7231f093659a52f4dafacaa5292f883ab0560295f8825f44dc135fd0c2da37ddf23a4f414481b8758715f493862a62d888935813f5b34eee8b55cc73b4a4fa3c6132a0d3666310ad847e9ff0efbc57e325bc446ba40b5e8cf5d91725e5900504a22038f3061936c7e4de697dd4109693037f8af0e9f3207f94dde6b3d431774551c1a030cb1b79dc22a395bef178c9bc03349bb09e84b1777c2741a8604f738d4122c52617ba1d0545c3b938dab56c1a9b579d7088bff269a4b8cafe3c733eb4568a8808013761929d93090b1115ba1ba72b520fd9f95caa8330a9ce5646017482b84c27b76b46a34d77491b234d754d9b620f78c123627ffbb5f2c24db97c4145d172b63d3a5de171d10a8d969804b5957ec3765834d103043e71e3b96077d406ce17086cb65b3f0d7c702a7f36aafbf4236f6fdbfbe45fb17b36ba5d6519c2123de7b27511a90bf0d3e99e8e9f671d3239a532f994a328def4ac0b419676af2486d9e74a88439030c7b3b87d75cdeda21055390fcb48200a18931913af965a3536d1cd95fb9d35d34a9b88af4f16abd2cfbc16394e37006f1efe5bca30e061466d6ce3d6fb3aa837fa02ce19cd649184e34017a9464eadc9830bb3ac431d42f053973fd07869571fad00cdbb9f1e7966c2e627b1bb10aa58600f2351e4699ac577347ec4f3770bfdde3780fd22101c64472f15eecda035ae149b5d2e9d02d4956ce728998b662d960f5fb90d65969b39028307e4ef896c7d88cf9abf0a58a5b59921eba94bec0a2aa814f319c6c6f77614c4c4862ceb2ba88834456f633181d3cbb5fdbc6b57ed68a5cf3b88d07b2fb0e96d854a2d5f32f86585665f3f2b7731e940c8721b2ab7f557fb503798d98601c718f5bf426c8bc4ab4fc2619e61f175f1c2f8a56193f0bd297bd50093fe09275609fb8c7e5cedcc7afc1ade9af19f944a4600a03a3fe817be19afafb732ed3ab372a85e194a4f8537bd1c7c876b9a32c6c36231468ba7868c1ed7ac12ad247756c65614fad6a4432ba1056b8b428ae42b785b810e57db43ee7d0bfde07bc158b95fb5c0832d009ad452e913c1b3f4d4b01abf43a98c32f1ab8c6eea841c9beb3a4358906a735ef5a74b435e4ee5dc840e5f56c1ac0ecced546c2abe4b1fd996c8cb36d83aba37a68990b1cb3fb6adb6de7de5aba9a0b2e400565021b858a4438a7ed5872ba1d1e152071307ae3f5200a17ee3e0948425f80666bb3cf714f45ae32d36c03e3f165713f094bc7c39dcf149b1dee9e124d752059a6ff53d555fd560b0b4c65caf9b358596569652547cc16b3c2da1ec5aca4e7d45da3ac1192c6dbe9c732f573c664c412544ae23907256408f993e0f2011cf3cc333faa8ddb84c095ecc7206a4caa76fe8728d1a4d56d33a1787f7164b501af84e9bb788e6e1c5f2a366be00cb576978fe42c5cb0f3de65863e30d5e5b3960e150d7eeda0d11e828f0968d002f0b8566db39e496c0e5a599d3c83df6b4a5474e64c9e84ee588c01cc7ec1bf2c7ad5b176ca4959ba45985666e5194046c47083997c12ca3b0e417dd860af12e6fcf280eb010bd15d06705fc461ff9daf4fcc01ccc60de6276ebd59887d7fac652ae8629c1b9fe6fe9d8956092d412819de2353d10d649e2d3d5f8e506cfadd5f7d9b81045b2d1892e44d585232159b576c9e3f7b866999f29ca31b5d9661bc66c509c8ab211c224fa978240f8e49bcf9a3873f1be6ab78d6144fd46dcc4912413d60e3caabf656ea915e2a4e5916e746b3d31d9d9a60b298640abc76dcb0dd5583bf83d5b76dcc15add969b6a60bd8c91d86dd201b1118d3ff31ea19a5179091472c0e463e5609e57f1331a006f393565c1c45172b4ed7a928005caaa4bd33dfd84e12b7576bb85d46f9476dddb1fb4882ebb50e06a9411281bb3a839d3dc1d6775a1884419793be581c6b42e32c8de7028fd6d56e643f669cbae2b66de9bdafa1e832b0faf852e3c70170ed1d0389c0366713bd15ddb81a4da6bf67eb0b7d3074654541cc967c74f1813f3f0229c8b22d20865661cfdde4f98ea25a2cd51319f7de1de1e7b404c345e14ef5501a73cf48ae55602c058108e18d15f5c7eab3a309359f5816f1307895bc04ea17cd5eaeca56be3d062203b7f613920c39287f4b0e0c2e13ce01b226cd3e59d5b367b616a4debbcba9235ac5ba20bce4253b77543248a7124283c1969578546b2aba6162c59aef71b8307293439537eed6a4756da16cf892f504998f6af21741d33ccfee9edb9611904df3986bc181b0713c217372b451bc83e2ec7bd4082ff246e0f3cc7873b302027f58c0340f047c87d8a69e599489e7a9f11dc730940a796c22e0fc0b07be600014ea85518b1621b082d32b7a013256d35545b4d6e564eba1072b747ca32e3edf778cadfd65c61eee28d6c71b2f5d1a58e191ab6c652b6ec24f95bf42d571ec73d7c6d6dfc054c38d42428f1c98272f5bb18977d3cf6ee1902cd7599f09ba5f5d61028c1dca1ecdc057b28a5d02a94d170490dfa4ec49ca769b45765c2e6c2f1cf861cc3b9a578e4a7b9dc6306ff66f75e834c8d57234812e67ec7f411c463dd6323f9c52fb67f0b6d662ded5dd03704714324850092dae5460f1c76818f32cf119422642e962650f2ac156ca486ed011532068f3e927f5046f895b27026b373e7c665019b978240a532a0d94837c121d3d47c53a792ecdc131f835f4910e20b177ba540001e600d584540c6fb90126b2ec2c7945404cf5f8ff9f3040d52acfa826c91ea6583e8d4076375aa3f216c5e6f71ab9101a62225344fe712c7818178e79ac9a3c589883681d8bcf0c6e456c65f2cab12f621987c9af5c2c53501da563ebaf9518cac635c140c71ff230c77bdf38103165860e0bbc56407f02b7ba9ad8da7002e507efbec91961f647ec475288714f9710e33026f6fb9d16c96c3a1cacb742918ed4d05d6e1f03a0c378391e983f24f7f9f501d36dbb14d52ad1a7f3c36d98f596955637b9d2b7c9de491e74156ca3e2f1950b6f597a202aa4e63afffa9da82453c417542100c466496c316dbeda036540373fef5dbed4ba5ba1a8d9de253597776f259ed6394d82404ad49c4b861e75e0e11ef0352b38c38cb6a5454271f1888caaa6b9849d308ea432b748ab9cf8e1f20b5fd3755c9ba30ae60668b8e06f5c59e30dac411e42ac71fc06f70f2931f526ea22d6b499c9a94e34e8be40ed3a8bfa304c95993e86cdabb9ef26a8abcfc5c2491797daf7d8b781c308d2b1daa61980693498b5c3dda0309e7be8df6f286514e42f64fcd85a5c4fd8bfbd106621b403f2186cc5b6fd8249162890ec0353995bb85ca6981b2c5ff9d5f53671a74a31dbd55e77079a047c4ce34df47cc7f655154607010acdc2d44f53d01ebf89764b8271224f06ebaa4d25bf399188e6f1778523626b34aaf85516367616071f32d9d9a87f6696ff722b79db08bb93c45a95ce90735b32d404e4cbf70b2cfb25f5b9c0f89395c6131f60148a6d9135c771043cd22449b66ec22ab851d508682e7c8d043ff9d737b2c6aa3d5368552cdd176370145fc466c8065e548a364f349ae36a8576eb2027e2e39c83b8c4fbcd00ef3589f202e4ccad366f3b02262bd30f8d512c48d2496456aa283d32bcd22a68b59ca6933f6860883c1a375c55d8489d243f2cbec68bb89ddd5a2a357bfc35ca6cf2daf22ac947a2fb4e1d6b2a18d5bb771c4fe4b89dc5139188d6e11a21e8c3c9472fb11b803a788f53d710addc3883d04b316f9f4182feb9c98aba42a3f94e9fec380e081e842ccec18c49475b44468439ab7bf38e43a0eb3f3bf86b3766f775957eac13d40abfad1f02ea2424ed0aeb78b98a024025a55ce79525dc3c4607706b7ef83b9e981d128d1594911d8111dd6fb74aa76807350c52211cab59b0dc83c677c6593c87a65770fa0f4286e6b30c54a54c13ea1a96f1d11ec37bd7e46679412f35666feb44af8fc8c29cc8923eae9913fe4305bc5a3b874ddaa86adba4e31b6bd62ee70f5d10b1fb094dc965e59c1700ba4a7c6a07245935d1d8550f819faf43ba33cbf121b4a317c86b01934adc398f885354923078c2278624115c558bd2853e71524db4729e66510b130f0a07a07712dd29f82f8e6cb7ea199fe7180329805e1aef7d293382b0747e4e2947df6e693aa1046f939d52f82bc476b3e9d2316a7c2d7904c868496a568463a21d4de82b2aa8c2fa1eb19373da6840c373eb59175e0fc8969aa8ce37b2662b94489f4729bf6e804dead25add1ea8339e22f6ccbcef2e2dd7de5bb47e60f08def5a70b57f73f9ebc3570ab87b87a070db11b6ad3e3f66c547edcdf05388c1be61ddd0ceecd5fb24c7e7618d5d40f1304356ebc984402b70a69269c67ef37f1bfad0ad60e767fbfd52580f2c59772b768bc6854258fd5ece13373eb059bcc9d77f2bfeb4a50b541688296ce3c4ecae07bd9567168bd31c0d4fdbb26717a96ce2354cea14b258d38cb779c6618b6be52b5ff9dfa5dca2253c76ed465124c6f988dd4d9ccbbbd9eb429ce59e05da8f82656a99121c86511ca716e353a87a64b45512316ed8e2b96894beb8dbea8fdce108beaf1fc108b53486908b0a394b38790e62874405586da23f4cabedcc0c019a96029712cc8aa846bb0cf9e60388a049dfd2bd3ee5e5421dcf33fd9790d70d0937f9378c0d12180113ffaa0382b0414cce367605105ace3fee6c931ac31d8bd609d38e60f4badd5ff145e337d4911d186e437cf1dbddec81693eeabea7b5c303556f53ac0a18e45611ce43fad24ac05ca06604e02e2a01557bcdd2574c2adc098cb295cb1195ad285257a845e38d9382712050d6b2b68faef8b78d310a96d395b39140b12ac11f59adb3ee016f18869e8d4ca194395f2c172af3b31f72a55c8c634dd670f07ee51594a133257a718b6236dfdf523634d231fff4b19a25f9bdc6c5d46b7fb257ac063b9997fa01481eb0321e835486137f4e96669afa6d2e08d6a6d1dda241ac444d128d33dbc2e6c8323897c1e92eab202cde5885b390b436f1d8ad21de78a3105eed21027e5b366b0f49c36add29763e6f2a4538ae0e66dfbbc8f4fc4986f8b9039ee30824de33989294926d96e32207e5427c8ca21d9a01dbd45b9ff7169bb0600eaf3a5b6f981a7a6a99ec0566a5809ce12317ebc698aaa2dab1b42fc5d2681c81a956c3cbf67c71bdfaef8cd5e09ea7d6c58e8466a2a65076602901fec8056a27a2d49d8569effeeb9a36140c3884f2d638a5072b8f1e4174079ab7b95aab01189b21cac9e4898b0ad2015640510d4e7b2a645800555cabd665d48ec8019e43d517a63a5d604608356b582e6d4fba4777ad5801da9062ca2149fe2d23e1b7275e9b2aa15140553bf277a8d8666f4555a3fd161cbefb849fd9042509ea9b6750c1565a32b6781177ed66b9d6187c18e42b80a168ccedca22917ff8cc2333eb25da08aa4465079a1d1b5cdeb26927c7ca9839e4476e3df29b2220f1f438a33a16d751e97e4bad9e4aa47dd5ca4e129f7fac8f221311d15d669b5e112219346c53c128c15b1720c085b7267f6bdd26af1e1275e8f8c43ffacb24991505cc04a52bcbaeca58a5f840cd00c9483f82f379282a894082e407ac26a5f673e8026d082a0b127e767605b5ec6ef5189fab599787662b948da141b0a1c67a63ee929f1e30ccfdf9636d5fb88676f6fae479d0db1b7ae5e6c9fd611310ca12973f7eb9360b39537cb61f10f23a885a4df8295d3198fa1db3e579847ae50fd0afd4f969ab5ea7c82b2aa1951ffed2ce4bd6e8ba998001aa4addd2e223580df2b469f896975ac5332b1f4f553bb8db21b24c08a75948a6e0d56c4388a4e590e1264c38f166027ed1fe7f60746b4e4aa014889e1a54541c043994d800c6f0691e4244bddfc6020c1218b9f2632ffae7acd0f725d7f3102c4442664d828e51bc00dcfce840f42c0f10f945041c491e02342966242acb4a64fccd7d4588922e6e32c86822380e3185775260a99657f4c6bbb8a4745f667cbf5979ba32956cadc8df4790b7f8795a5b788004ccae79ffd39aad4d7ea1d4d9b485cd1edc2bd8b39b3d40df91b44648b32e732f3dfdbd9e4ba3127a92e89de477e4424821cdbae9e3a0c14268c40f2f27903078177d32acc6e944e2ee677cf61ebbe2b92004d556f2d97a9545eba93fd8c059628cc83e64d0f706c58e957b7fad741e4cf1e998b32d85185228b5612a9af54e4785bc0d1f9686021303d94fc65db8c9e512d6415ab5523eaa18dce8517a904a9c4c4c74697f88c6a39c457722bd704c7e2286e29e3dab057d596ee42cdfb9554b97417dfb132cecb1277d5cda9c3b1edf6776c4a209a5418c9a956c0250986f08661b945af09e3091b0c87b9f5106e9c25b18641a98bb1a0e32e33e61c38389f723bd76e3d14d301bf450b33dfa16cdfc6ce6bff6c400fea9a2d21802cf17743540d59281224256fd80d4292220d181c471693f83eefe54a813c36b3b173df87079c3d5e25c18923d02a78844801ff3bf62730d31c5148e532c043413a2650201a70c729ab03d9707fe978db45e26e06159e4d2376b083a6e3fb94000a2ab4db4452efb13509fe3f589ce59943eb4cfec41cc8a1eafa1a5589b8fb42a036448590f578be229023cab527969c8c28515fdab4b18bba4ff93948085d14056adc277c24cd383a0657c96ee98d9cd6e45b7432195f5dda63bb1aab996602c656a599428d8f319a7cbe318fa8423fade07c9c3e59477756c379c9f65670c4dbd51bd8976e7ab81428346e6b2aa08b412391ae932201e5f8d87bd246fa80c003aefa0de747c9de7363005a93639ae5c34534c989791466b9189f1f7ea973055734d3fc781464590c3d30a275c16a2b1be122742a1b203f3a629b4ccdb59031f636d1648d9ff2d8729a8b6eb1441969f49889627dbbd8b0038c65e45da19ad4bcbd9101a1f3ab16fe116c316c65459068fd0aec638b3f65d9b461fb3d5dcc704d973cd5ae96ed389d33e0cee9a26a33e28699e486da80b56e74ee3fc1b7a39361d4c60a64928ca8f041e88d206cf93fc97d764d58aa83322ada2c3f3e08a102eaf26d25e714ea2fb34d4804a6c91f58f08d22f55492cec4982a00268c202a95da988b41232512ee780b4162a84548b9bbc389096afb384086e8a578c1e57d44938d66fe6d4f5555ed9b9e9bf05b64ed8f482654cbaba26db686fc47a0473265d6e5b7f309ea368a20236a1fdc6854a0b89777398a299cf1cc638747af64e6f2284487609a8e02f2925244afe1cb50f29571e415b324219d358f4e1b6f27bc638c182a23bcd3ef1d92b26596fef600d40c4f27338193e03c6510f97ba5c67d510c0ae36ec1bd3897b690d8e6b9b26b93a74a707332e0f966fc7d6b04d898e063687c9e2441abfb38957bcc4592b778e3fda4c8f3932bf38edeb6ec32642b34218fa85742729e8d8be0f515c9bee51d55f743dac76819686aee66ab1c72828a4463b11f95fbeb83a1323ca1f952009ef8561a5bbcfeb37c919ce19b44a808eff2ecd14c86772dea3cfb6730be202aa34925657c412fe99c40d9a57c916bf54ef14f5c96e2c297243c8fed47a15b12bf19cb377b060db99b13ce69497d9dfca8157d3e476d405af82590cf0f2fae6b7d027a09b26a9b38434b28a085c747339515641f1cde15ef24aab86b88b67f7e89d8e157c6362c507dc6d8ce1c9d2ef0c7c6e7ed6615c4f92e123514afbc16cac105307b79d82941d476e016e4f31d2e3216d12eecfb09ccfa8a7ae0399d39a495c14c356720f349fddf8887a11b137772a51bccff2dee692099ed652f7688abc9a68c9e8e3cbcf6fe0f5870317bbbe204f531e9bae703bdd8d4667775a61a9b93dcf0df19f2bde61de7e26bce7c2f5da6537d5605d3d14a378b83ce25c5d90dbf0f55455bec8a01551e8568b17ab4ddcbd0a9d4aa20861e089feacbee631c755dc72c1c174a1a6fb50b515cb325fc1010f251ca3ef29a3d511b9a85a71d184deb094d2ffa55b5c6e2927d6af5369f34d8a6351b7c1592fc255972eccedade439bb0daa731065c4a9250fe82048fe9af1513e184ca259ca53599ffa9b67cd2fae5f9f6650bda235dd770deded203ea003255f17e051a47fd6ee7819ccab6a16c0a182ff7bb5ea6087a3338d7af32a79dfc20a46b54bd9774283f629b86e76f4530d2957875e629fe67335fbd8bcaef565510eb23b76fa6c256f768327f1e08dbabd0df1d2e8b861a560db4241a705b95e4d597dcc92c1a6acf1feda017738de96c378b6ca9e7c9b200fa19ce56a879b6fae64d77e6afc4e1ec1d0b5ce6e5c3777507ea8fe945cad5c1c117670fb8c1590f46e217bb6b0edbe948f83614d8d7d284ef6b1988052c446fbf203f9ab70a6285735622a09cdbb34c5fd4fed82ea134ea2715612188328d398a78d46d7561b320a6b0b0197f625df6faca543d191602bc0877fd2f26ce5add4bb5bfdb6cc3e0e435baf1c2741b50641686cc5182235351801ec775c88ecff537dbcc17d6a40cd196ff9ff3901ef2857e2f15e76812cd64ba081b6cff17b8ec3f83c5ae9e7255d8d5085b63af3ae56577f55aa87dc5107b32f56828af63bcc576a2bee9b55294e7c12e3e1392dcbdbf3a6cbe0e5e640d96c6fd6846f563a9751924f6d8b2d09f92414f936a850a6616943c0d53201f27f9927c84fbfe13d4d90b20c75089e8cba3131094b801252d337b54fba220b297368ace019a41d095e8ac95b8f5f3a93a78b6fa2dcddd38362f46648b865c677802e5ff9b77c81f4ecc70427a8ddf805e8611cb8ffe2eff1ed4fdda2eccf6d7d34cac0551b6729f1fdf3ae39bf0018ee75cb58018d72089e5664522ef7bd71adc1f36e8ec1ed093947359a6b1dc1538f64042c814ab17d46501be10c4cf117502182d662dcc43358ad88c7a231e9833e02b319d53e8265a802a1e9554d00c37486861d097905ff893a0e3f5a0b49f40aadf764d04324f041fcba6bb1e833a8b671a7e4a1ac0d94cbc1e0d450f0a4acadbab1334b3c476bac0ce54e098c940be5d6e41d0c09788948dc071acda8535b13f10c451c7f2d903147604186f9cffcc947d1e0064671f1db9607b40ead5e12e30f03359981c084877140b8a86382df1fdfe4c1a17866f224b897ce8f80ae4ec3c288333deb45d4313ea9e29fb4de69882158bc2d8a80a597df6a9c39b66af696373b11e52b29656b274fa3d23fde92505d3216893107cff5ea5be841f6068a702cf26b3926d9529846341f88dd5e297e86aa336487cc67cad9b360df8a8ca394290105ed1749ec9496d1cf44945eca341b9b77ec88fa48bd590b86472bcd3d80e6fa65afa1ac801a3658f6e125ffcc4ce4d9fa0565cf25041cc3a126da72aa12aa8a4ea78cbc9926ec3bf64ccddaf9766330a5199a1316939b53ec09beecc03c2fc54e91c49e3dd4a7ea6ead171ba1520d3e32fcea8081884f9301a02571e21057ea368da9aac28e8151ecb1d51c8dd3512dc5a6b8939e916eb65a6d5c4a88b7f4ee5d0fa352bc38086d0c39e0db549278449fc41953eebfd97270b5e20be9e6b3a55b6e6044f0e51c083d6765805053956731a4d6a602c9737a76c03bec0dcf08350ee04687a4f26e7eb4bef4287b5910904dbad3c9ab313ddf1a724269547eaedb226da524a717f2fbd840e232035c6dad5d0c5ab239fb34be2d708dc309e859490aee074ce68661db771c764acdbbc258256417cfd11b4ea3c6550e368869b56b6704310bf19493e584d3443c7d40ae49f223ff2205a4ddebbc357ff92bab98c4700e9fd258202366fc7bc68e6f10a12084fefa71ca406713c45c2068638f3bb758fdaeea02714771458456d5893cbd7676a4eb0ca63de0fceddad989fc85155166bf175443dccc884ef37b16e3c9c8a97d8a33a2b2272a3ead3a1cb814ae166d2c92aaaddaf107f0ef3a6d7370bc89d94a66f444a4a06e0ef793bf93b9cf2d8d70e3e5679fbf80b8e404c1984b2a3ff9c7ca2766f836549c0d814f587224ecf104aec2f3f1aedbb6e88f257d3c0596a49bc93622c4bbdc6430f5fbb9399e2f084113c440df86aeff81cea9423e392762f34046ddcb4de9980ea3dd215cb42ef6486ae3ce85badda737f26203d387c602ca93c77221ad9de70bdad45d461ef4f80b2652e993f9c117aaafd9528d714d47fb6ddd5054328692174fbbfc3fabfe0f4414ecafb5a3a5369f827259c5a2d5f8276a3ce9d53c538a8b36d9686bc326bc5e5fc202884566f71d5d97df5a6ce644ea7c75ff272d4ee41de918110a1a142107054d1bf72d8343f56dee7d5f147da69871fe5e807b17db659558d5ed5f78d35e3d71043021efb2f6c9471bd57bd2e458a7a38a9076b69eea30d22df66707fa123a71d263dff1a09f53cbc5eacc55b52f1811827c26c82966d5d6172476ba36389983908bc3d0e32c1728600bb3038dcc8b8641e281ba9ec1ba605e9f98c2043dd2b3e4f0d2ac3a4d7ba5a29d40cc0f200ba253898130f1f2d2cf66ff07dcce01a0a61097b9026ca579e3ff55523f03eadfe2de288e6a3ed184825ca755a3b65412a24d7d08deb023b7642181403b72399d03835bd72c97be89d9a44df29eeb62c33fba1365c93e6e1627459a4b8b63a80da411a8dac555974ec6ec79945ab859f5722680bd0bff92c1df25c0d52c23bbbfb75c594e433579e47ce6bc3b740e71af95f75bae58753951fc63935cfa76c1791f90ea16457c39448c1862d602e410dd0d6311d5c090ef046f97b2da867030a310feb68e44f1e7bf182c2c09c0aa37a63d5fc3752498a8fe29edb9a3050b2e38bd8c0a47bb739573bf110131bd626e2845f93b534286802ec2d305891856305b2dae68035e771d424604df23a9e01c8faf71ea018ae31344d1c0dff05bfa29fffab32a86cd5ebff5e2cc0bc5b43a6e4f9161fc09da8290746dc94ac038274be36410dadb773d3e309d82822c269116710f8c7a0bc9326681f17bc4f7080e701445e1850100f44f42736374db9aa31b2bf369500c797466265a5f14de43d03f61a798562491cfc19d03b9a58e61ba4756dafc0c712cd4450cb2ff3aa7dd79337b2c7531e6ce40953f8304a5f962b8680306804aec94588a51241e22323922871c2368cb127e5efbbe7643622d362e1367418f095064cc35dfc13656366856c98c63f801ded3b79436bfaaaa3c7dd633114c5221b1595d8c7790efc4cb91b81e0bd523336539fbe892d3156345a3d65951cea7ceaddebd41cc088896a011924ed55eea7d2fcd5409b7600df0ce5361003b7ac5283aac9d710589ac6b67a52b147c29460eb815fa4e7caecc109066df5f11d4710e3688a6f6c96943fe35603b38e023ba324ecca87af80a318c1cff7b0dcd071af9f4397944e18b66a67da7b85ceba2c1344c092bf3cce4aa3331b1083d96ab8c6ccb17b9174eed0ff06b1d1f99fa720466631cd057d8e7a19b4ffab073594f91f33ec7bd407a535425f3885700f7fb9fc38d26e1f7f3d7d7bfd9cb9d2ecd6f7ae73cc285024c3919f54d40550dd066eaa0bed944c28efee1b5a0db084b4a1c7c8747c464ff7d502629a1beb23ac4daa16c6a76deede8f0d5c406624e07e70884dfc56cae844cf754cb1fa05c45943c30f6bc6f19c850ddcc70d557a22147bcc447e0891e028bb5f15c8a1dc9e9ad446d64d027db24b3ea7b70a2ba294abbbd1b9f9884b73ade3181480d989cc2c325804d7a5fbd08f9a3c42b3dbed6069923dd16e0626eca6a8f19031ae40462c7431e23eead6ce5fe7aa9c111aa4a4c532884116ab80e2e9a6193dad85abdb36373ea0ff60e0200bbd341372d276b681e0d9732345641e8225ab4c8d8203700694c7c203b8530ecc8c945b75a463d2f4eeffa22551cb204e251cd26910157292edde49533659c5d6cc03a2e7cd32f374e0b3bc5569e5d4af551a179f8d50e2ce407bab7f3b07405ca5abd48f816e13b35fce2c128459a9a456249fe32b35a0e0d5d11041a988c9e18b7dc9ccc657667b8e1f438f934798e9fbf9e0323fa8264f0c121000545ef8a01e4ff9de73bb54f87d49e0727da2fe3626b930dc11e8a0df0756bd0c68ba4e390aa883b826df55023de71b0d7218fb9f9c56043def1ea7e3fe816f85a14f263c4ead93bf06a9870a49420e6f098e69c88bfa02d40aded08ddc07632e17c9b25e6df8bb7df89e804f38ee52613366fa3925e7ce3ef65624363e34deada7bc029189124013eba213007754886b11f45c3780ede5f4786efbedf632e19632a4786ebf2c208a05ae340db56eda1defd800ba1317114bd1b8c601374559357e62bde7e833f1faad05572bbbd165ac29126966c0345bb4adc95d62c588d070c4c3d5bcb06ab6922c78e0248cd9b5c04bd214ae52675de9f38b0b24d3559fdbe0621c3b9ed72d37ac17c0056a333063237112bfebf736b1253fcc181fd122530d5213172c4909a0d62222a4859282deb37efe43b074d21b3fbb01b49b3b9115aa249a6b932885124887b3c405ebfb6f3d4ffeebb64dbc1aca6613762f2dbaec98010a97d177b6258ee3d4b1d4787b1aba2990582d5debc216a0fbcc23966bb8c65568d7a6b8aea2c92302c8e25df3c15eb32ee0186b9db02551423ce8c9cdd84e4aaf2c360bb324099c431d598079bc14b84dbd5dffa40f011d89967171e338eac09795852fd8079488a0aebf48e54f01552b5d6cdb5b53ecdc775289e63820565a8dcc46351a28f53a63773d45833e5d69be42f879c88b03b3aa24e3a9308e3fa90fe2c9cb7a03de7c36c6e2e3fcbd4924d6c452428d0ddb48cd4eaa32b34fd6592b4482ef8a918671470960a904f0f21f07792295e0560563edf56848c091066d121b9690bd5d5d8cb6cbeab17220b0051406ea27c9a58762a2fd379b245d05d5e26d83daca08b6e775fd368b592e7110d05a9ada634efa3162f0fc17b8a189846364675d0da7043971e262d8840fff7704166f06df83d31dae32b5ad3d54616e792c69b8b46663f5218a1cd99c40698f168238e31ce2d52799a9ceb7aea4a71ccb44cbc53a52bb4f300b3ed6bd6b860c42882cdc4d02c00197604c0773b394ec811f0e3051df91c0c316b9c6f8bb75b8a1f9eb67015d92e46f0dc75e12ac3ea4e89edfda94774a1c1371d3b12f3d68f5f065b9a75095238c36852a9d4571600948fa4bf04bc2aa358340e3729dc36372fa0171e1c0a2a71a339ca68f09b8f9d20764876bc03b6ccfe175fcdb25a72ff6b8134ca1b9635be5c7cd0b89d47ed83798fd7f97b015356c715b22bb9af5657eb364ed72e82676db999f652bbe928641a3e0c6eca91f330ff1c2ebf71d433369ec16d5235ee99f898caa32b98369204d71846edad0ecebe555f10fdee40e69c2da92da33da3499df41b3b00d01d9927de868b8e9d779083d31e18800d7e4d15a5eeee343aa5612b4eb19ca4fd0e822ddcf04e7044af96afcf4e57c74238a300d50bc3f5429e5cd429ce0e4a122a9a24c22902328d88a4621026fac85a217dc34031e6f2256a436c51babb1201374c33f1a8b3cf5c8d9d48c461b45cf625c9099df0e2477c012250498c0c774fedb107988a748166cf39211601ead0005c6ae21a4a3ee769e80654da47342b062f6da3ad142b1cdc6d3bc79652834a40cb9b449bd8fd5ef6c1aededb910306818f59fa71a97de2178f3446810db5b8a037e926a262c1c7ca30b9f3984c708f38159e0b2b4cf8f2811e9ed225380f31edb0631b5b95c9c5ae64096e5be06c66a477b381259862272b6cc5002c3cc94bcef3f07a725208d52087d9fe852321f1602896fcd0d74f5a147769a46b5e87486bdb9693f3dd972d5c4c5f1355bd79f5017665b44d615d428efc42df341dec94b218662e7504d56d08ebecf147c8d49e0c9f9df98c643fb9bcf8dec4f506ecfdef74017359a047355d7c55c6a145c0ecd7440e815cea7e8a0d4a395ac44c25d0b0950ff2b4163e4f664d5107828042607b0bd15b606fd34595df93910718eda84e5d670bef25ca1c4185b94f9199293add07c6d03bc114ffe0a732471925c00b55b308f9c37bbd1f159eddf86595aa9da0285e150bafa895c1ca9c90c74596611b921b3f51f88f6dc3168818cef05f0f259f161c17a7965241c846956b22cb289faf0641cea7395a80b87895844ea09500e59b9afee32b9afca6b4e3fc6552c35c2feeab1d8100f2d67bf7cec43d31c1e7ec8799bd25079d4549ac148d203a99f9a06f937933a2a9070223345607f04187f9d203c2937dc42dfdefda710dcd5fa8127143cefd9cc9886ef85a41d190aa29fdc0ae8c21c27d0145be387c16212036e6e3e96fb805a787ed3a7f20ae225a598f73e8e48e93bfa3b5fcbd560af0966b83084bce657ba5d698106dd57b23b3b7c746322d4a05eb7bcae30a7e34e1b93ccf3f95b16c1ab9834c76c1fc577fb2ed6a7f415d69e0c30e240ee2e76e47a0161738eff21d4c8eb6183e8bbfa69387c6266478c0558048d91f7c92112c7d7d581eb74b217b4c99d328383c612acb5dc6b4cb7a8c433f256f3cccd71d18acfdaed6c813d1a213a132b7633e0d403414844992d76b8c6f068febd6748e406debdca6f3e799aece74dcbefd599385dacd626fd4b48492971740908bef6f3a8bf9075d40157a6e14d1953432a204f3ce7f56fadf3d0c9d5805ffafee623e52f72ac291ed63abeafc0fde3293ae01105f8f28770951284313a10e425ab7e53d1167fde3c135f22479dbf72d9f9ea8c1c56e8963c094c20ba221206eca2c920cde7f00eed4e4d2472767a269c5b8ef0c212b95b90ad3f07880c5f58f03a20a61ba8d4c11874f0ea94a507eb76cc4d1230968c41a5301a7574a616159b4c20b55d3d961eb6620c055446d418a0f1441117d25ed8243dde9c13248ce440909f44f80a827491114962f4b8e2d3e0000ec79f9bf118e01eaa40a3188452a045291189075104efed35f70f6045bb4b41a632bccf2fee1741b5d8f983dffb5e8a2b30146f06d4419bd182fa379a498db3bbf98fca49cc02df7af81ea8e5789b30718084df52d4625163e074153741d04dc3a454a339306bf10c29b1e9f30e6ae22fe1eb171e6c8364b75a6e8a8eff814915afbc3103bd658b84ae06e362e11c7922b5e212f2e54c64fff445dd35d1541d9a20f9ed5dccbd2db5b3c73934709a2583744d3cdb64528a710cc2d39de447132547263f8545a9a20d6369de401ed3a0d235321d9858a95de9df35bf0d58e0392998d413c9dcc8105a00f7b64d7046d786935ae4e0423c128c6a7daf47e00c76b631a701553e50dace7d8cb885d95c75fa436176f272c32058560ba7b43879a45b602120d66986eb6aee88f70ed477803346fb44da48bd8bfc0a6cd7fcfe923a98b5f179f29578ff0157f1eee658924e4bf3cb52601e5fc9d7fcf7f1f362cca209993401e6c3b4389b1ba0dda56df262f6d59f3a5cbeac32159535b20d4152193e89daee82f63f5ec8605305743acd63cd54e002f83c0140fdd858aa44e8b2053c4f8966ef24e16fb3f6ef1fafdaad12c715709c7d63de51f7ab660f05946c46a19faefa899e33bb7448bd4743013773ea039cb45db1d9109c8a1d6f9cd9319cd87935c83d7d0bb1056253de591664a1b753307b3c4ed3c9d4e781331fba50db7ea4936a171b938c20a2b867bfb9e81ce8531841fb0e53d3a7e7383b8be007d57c4e65daf1bed2acfedc214b679bf88ac49087bc8a76c7c3990d86b333a0d749539634773c690ef1136b968f3ae2de82b31175f88ab8fdcea8626dea808418e203b8efcae66b9ead0a237fb776178a59f4a2f8aaf5825ccc0acc6308047e255b9e50b496713da02864eae7089118fbae6dc6f1addd9dbac4359f63e6dd1c32f60188b61a2c7c2ab632ff8c8d805cc3b851417d2fbbc5cb4e04c45b931090714a5a709f5243826f2577c339a37e5e3ad466962c35b6c90d6061cab294106c2e1e78e53b5e346607387264fbecfb095c303dd523ca1da38838fb5cec2dfd1e61c5c7ae31bbbda8d2ff1c8ee345205518bc54a0dfeeebb96e40ad85b6136da68f538449a86b597eeff23f87e9787ed8649ba4d013f2e2d88af50db73b732263df4c85c74266a5b4d8fc770b7f7ac025d2899466568dac3f9eccee3f1d6c31aef7912e59276efb3d913377a3b17e9aa840309ea560324dadc216b2c25dd1180a1dfff2706e44e6235f199551a8bb8ca1cb1086804a4de9eaae7ac55b8d5c8560a4abc5f9af92de93ea50b9b86b50405558c47d60d146407eb87cce33e19e02f256ffa696396b500c88d18a93be9bafd3c3bbf583baadcf6c5a6dd3dce99ca7b516e43c5b494765849bb6c798156e471764ae6dc33d8b23ead7747c06959ccc276f2dd2a685e40021fdf78a56ca01f0255c200c43d3c71159ff99e51042f755622883f6f571a68c8542da6e68f51fcbe6155cc262e5912f29a63762a69ab6051300d54e7f49eb34166c739cd52590f9953e16797565fe3f4d57a1eb32574f8e59d7b3f541d113b91b828bda65627e8991cf06df7576c4b6393649cad46438b793a24017f541436b0dc2dfd26e320d90ea7389083011b7bbca9dc348277e054e7a3a9eb107103a84a681838f53511f48bf3aeca7c71556fbd127261dff5c0c2e527992028bc40ae11cdd720546e1b9478756e7829700f87f1fcafbdc8289e2aa5d7df6e2434d35193e56de9cec9cf194a556dd2625766946847cda64df1fbafeffc52e6f3ef17d007f0bdfdb99749913733877c8d6f233c55fe8a18c9c144284b4e8e08e7e4e29cdc5fd4b3bb35f5fec7aacd0c524722b72f71439bc26c69832015fa09a3fd6317660c74bdfe902ff7176c1875110663154020798209e0f744c28b14636be2bede31621e2d0be690ebe5bd618f143ed18c8448875609382445eaee05de53bb956c734696c9b063ea123b043587426e4e3d768d657f1f6f3261976717780af14f55b1432e154099a6eca45cf21e5d4dbbb66ef7e186371176d93067eb13cc7bfa34196c9905d2c1d1beb22242d097119b14ed00c6f74af49c6d4da52f35b38f2cdbcdf92ef7b8680b44acf5e01742298d6099d3fa0a25ec1dd0b98390ab07f75a658fea6f2a5fb3b2006e2f37795e2025d748161fe173c98da05bb24f2ab9c10939e2506b6e4009309486a00e5cfa39ba3f0f4a94110e99961f127b7ea2eb485bd83be6d9e00796cb7a07231cea5f11c1987aee0138f930c33899500e7dd8260ac34d4783fd029296be757a1178640402ac1b8eade1f558a0dc62b2ae99e6d28b27102d3717a4d1de38998506c11d495f1259171871e2c5e1039913a58366497d7b5e5d9595d85ccdd0e8944db361123f2e3009b51a4d7c159efe0beb2a765691ea92686a4e287ed96153accb84e62991fb04c25aba634af00bbf70820b57522c4f857f1f00eb7902fb4898fcb9c80c27da0a383ded25821e87beac5aded5d19a779961919101fdf0aeaf27ce255544cdfc779d23eeb1e44803e25b8ebd892aac8193d7dddc859d8248c81b7311d90ef2aaf9d8bb02baed8ee4b876240bce94fb82a31a42a324ec0a99923b922be054a8a4fc9a4c806574ec80d786073a891bd45a0c9721e5c1d508d2a39322d63c1e191b0df8e3ce01c3b806ca66eaeac562ffda965839a24fca5ddea92028748d0b8f802e384ac5ee4c6ee91358867f0ad1042e1a05b9e0fc8cfa43b07b0491ea6ee329cccbf09da7ba0d52c96bb46ff2af8180bed1b8df14db0a324d8d43e5a324b4157b1e1509f1014b2d3f479f1b673dcbbd5600e4bf3582bae8420b2402d861a418d702e9b22146fc68a8d9bbee23b48df733ecb41c83abba814c2961de51532485ca766584affe479a55a9256cca1bf6a0aa25dfec940558140a10bf143c6f628ebd654377055c96d262032ad54a4e59c4123def75bd39034e7992a1ed0e036e6bc95c4a896a186dabfe43033bdd6f378cb2f861a0ab431726fb8cdc511f1a4edec7bcf37da21285b6949a3ca60be492bde9c84d5ad3642d18df6a1ccd356a0c025af16c8db9920aed27ff07d4a14811e776858a9dcb4ee2ec98a9592b0a127de232a478ac65ed8c7faef58a4ea8fd33c242442e820dec46766bb3397ce51f3660252aa7311e7a7359e783a9d60635ab44497d0985cddc327ee8e38aa6c61e33fda6017895230e2d85b9beec85bd0f6e55a870eb3bafed0ccd4e71a79f44141ab6ed13bbe98bf5d00740ad8876a465f0a37358f4d39df9712c49c5a8729e2607858b05238e41e3dfa8e9ea9f23d2921138121af441d23bb990dae55dcfa0670fc6d074af7bfe4ef3c61913a0e729a9921d4e361b85e2d204643f0e3b1e236d3780f6085fb3e3d7cd909d351891dd3506ea2845dc2d730eb7602e3bab1f262179b406a8cb683f2c83fed26cd5b23c724e9a2849334250e63395211b306a9f5e0b0412a08d8b5e7e24cd92e0d98918c9b0c04ab7372a048f7225a216b0b0540eed10eb20d7487fd15e96c2b41f116b4b07e60652674ebdae320b8eb33d440d3ccbd86ff541ff634f07272b4af98731d34c82c40b64bb3e89b574942cbb11054105032ef36ba3506c9a7387d654c19efd2cd5300eacf41e710050a0cb267d7f5cd10305de63f7937a13c2b5f78441d297f3714921381e4b69da9792d394562006b4c1db6b611443eecdbe94173a6694987c53cbb322ff3ca2cba3793ce7bd11214c8dfd22959c290ab151630a19a754b8867611573c4e23f4665eb97c78baf44bc4cde861894665668bf8a9d55ae5b40e76414f3659de4032fabdd9cd92af1f117487e04f3cf60c512f4afd4e343d806cf52214fe6b548b51a1b16208baf9004bcd7b020c25d14ab291816f621a89dd0f61d6d37fff6d1ca09e0f508f069b6b28b1c999a54162f6793371682470c62ab37e856d17c5073fee0c4d41a1eb2b043f2be38c2c72457cb9f355ae3fce4e6ab803f2e578f95bb810af5cc2abf3af7c19c55915b9bbb072e4c1ee6b52ef3c6ad8cd812dfaffe1479467d6d5a1ec9bec4d4e33686ce64f835a9b01baa6407b9d0ca166883466e6febd29d98a1dd87ff35e2f3a8967356b4d1711b4ccc076282676a5f0246415f6d462a7a777072f4b40697adcdff73f83170309211dc9012f102ffe1703bbafe6c981ef97227dcaa413240677fc2bc8cc6f24cd6b0297117e0fe6ec8432835fdb2f88d9340381b4319d31474ca48ada2f627bbf38c7aeca854eb5ff3b9b2ed24f6f36414965be5bb86d623ef05d4c991377c34b99ca5e097a4d7e4177a717685ebafdd4456fa04ac32e112fb3e998e7902deca16494090e805a2db7e1de63bf26989a64f60a16644c78195d787005e09b44fd29f00f876c650269c92f88ce4468f555e83e708d4c86ae2a08a3df45f98e201f74d81d6787dfa02a3cd862aed744f9a83d072d29b2c0a94b7051f24e9b2bc66ba3eeca4645eca5a702ec175c2589851d3f39158447cc2d496cefdc21dcd30e73223592f90e7e22794744572f4078f971547c0e0a02e2016fa5345343288df4fced6afd3e1da0ee439fef56dcac1cb0703f1ba1c09b1b6e68156737882b4ffd61740ac940964e9a896d9424ec3201605cc1c256d71b9b555e566f027a4dc50843da6c99bb12c5040401de64f06669f722c7a174f98e650401d952b6fde6e4e16880e80ef07bab953d723defa7034f97db60cf75478554331c31abaa3bcc057ad85e7ae45c9e86433d1a0640ef195b3e40aabcb154e0b36714256b8fdf2e89786b7f8e675045f445edceda0af2aca904d71ad99505ac6a5345f90094ca61ec9a979b03a792ba2945cdb59d7a48ad7a907308691ecb435753104a549742c5d523b068c73ef43e408b644fd51a4986a76ab8896af4371b7106333b778d03a5e0112728ee19ca998bc461cc6b7106ac1d961a8454df3fa8f5e65cea82219c5a26becf022dfc1d809b85ba1d2b2fb2299e27114369b81768f5e5430a37549fa27d83a0f689726d46411894b9637938e794b89ecbe672cd714f5d4660a5678c15589901fb0e3ac34e2c1880503ec4b25f3875e3b1dbff43cd1a4a3b78ff31258520744f8e304e1e992d88c7a5f1c7ce91342fa434a77bb6f4e07c0e7f82454ccb9158e7daef72356e9b27050874fd486e5e1fbc550a21deac8f57488e483742bd3248cea7c74add203c9983a75282646450f6eb5fad27fc89a76a1fc0e59904e33a4df14da163bc57eccd55f60202563091a00c92b49acac9a3f54c724d2524f8e9845ca3e9ce28b3376efd601c5f5d9bc3ffae5b8ab48f9982611b3e7263b6e743107781dd5c2c167165013e33f9310e7597ed1b7136fd95c57b72ee418d8d8efd05fb07a9f79ec07cc6606d992c4b6631e49f08ba5d09fc7d0d54feebc47ab553175357f94a3853055f768c437b5d9b559ee982172a3e4d9a1e36756e5ff8ac06c7d730f95c8e2d440682912dc7c0c19d0db92008accd5a482619089412343b17d9862eb4a4c02929091a0def2120e43fe9f84e22e25fa731e126d129f7c27a54f6d4bac06edcf4ff7a676f9a12c95cfc8b9123bc7da1e7aeb1443b50abf752ef983f2ec8d1da78d4cf3fa076329488809635de267f810d3b285cfc222e12d822d590a46f24132e0fa082cb0802f2803b6412a34bb7b70d52983f45ed1608a514853a8a4249375c955543da6deb722c870b4ee9c483630256bd44be5025063712cc9588bdf3f674c24a457b84a4b21a9d1a9d8ff4bafb9e09981ab133aa8db2805b59e09976455a54639632ecb85724cf7d0dff68b5b040e2a26690a130607ddf2828697af4af677e12ec131fa955dbe2c9c1e74e8c9da057d51dd5d7e7a61dd4b1066e909f1c219ecb0d80fca4696e91d011ffc688c9aea13452ec34488e44ecd6ab5413581fe678b080c27fe1ce3767b0cdbbbbe95d319be204e8c47a0db85e5062e0358de43af7c3d27b581828c932a4227f3dfb6eccea0b63a94ae02b582a025a0378f1efdbf6b8c49021f8ca95ece709f966e9e50237fa10ee8dce1ac6e529a9aade1b022cb53b815d63dda2a8562e9d4aeaabff07da2b4f034ce004780dd86e407a62ce30df1668e725b84c5f2133f888351329b9ec0b588b55759c4d824290a801e9e8a6844f52dd67a47fe64b935aa398b34848cd1a6c50a847e64956dae9eaeb5c702589e8141f4f2e1981e9c11769125f5e09253c1596c402edbd4da148ad85d1d760345aea3fa433e1c86fa0a84110252fa9453e0137c963937ac182d86d91d66f1b2af28669fd99436d0c8ab067f3da59ba0d5839650885b9d92226726bfffe825c9050d969f125a3124c3c5ec441faaa8e5d8015951a802355144e2db13904f29689fa55d569b57b91a5f07346af6dab1a15ad6243a14d3265a8690f7dd75e325f12c64cc61ade147b79e107f84402b4980afa3fa17e254c051063346ffff8d36d366db885013fab0f12a21e02c3d6eb9107bf62acc7f56cf210a0637a8611f13034ad79c8750a3eb2363b1968096554674a1b351d8ae3de281cfac627d65ffc29bc18b318423b00a2ed0680dbed47d96d7ef0185dad5acec42a7e74b13a3e4e6d8d17aefcf59ebba72453b216c0174ef947852cac865e7e45d6bbde78764573b3b611fa6d29efc91dcdb232a68017cb71ea741d673bdf5a80907d960e446207c4d64f432990f564595fa791f06c193b0cf4f54e3bb685cd6428c385d1d3e13f7bca4ed273e4a9eb981773c6fecd20c061ac751471cafc216c6ab323d75fafc6791a364c2119df2c513d86e653bd2e5e47a44f5253627002c7da9f8109866cd9234e322ad7324b1cabf18f11108e1b8d461a35146292a290598d0de876f4e5acb19163db2ec41a2770abc08f2f9db2c46de2a86618285cb00664f69cafd19c831aec10569fe90e66ba1ca344852c15dc0b651a537a83072d8c1c5522ff2423dc1305f3508ef60f07b734322ebbc001bd58ab4d4df5dc43342b5ce4309a8949edc33b831960aa4a55414fdb56d2b06b3dde28825e317e74e95c499e1f362205b30909edfe3f24b22f57a6af98296255a13c01ee248d7c34aecd18f6ebc8f8bb9d0cc10dccd445523c698492c751addc9e8915fa0782a24022289a4e9006265920947f402a9c780ca7c756ac7701623a8040d22d5d2e63a07b80d0046eff8a1e6010a894012fa61c9211477cc5253df7c840c9ff6ea437b6510cecdbc0565586b997ed22a83b628944b55f5d78b370ee53c007b7174ae6ad3178b23dde2bf7a711452d6614121f7ee64ce7105221c2d0e4b1a70761ade8039a78980446e4deefbc27383ebffe228776d574728d36f9ff41a2c25b682b970a31724e2543f24c70c3b208e788068088dcb71c42bcf3cf9da4a75b4257c162817293792761ac584ed4e803230f8c2a05a596c50a6fc55ce2b02944141de8a309264619caeb2429f5ba2ca079ebc2b124475e510e6f0844da8a8953eb22d970bf62176a0484d52b1da803a37af69f92bd61888432e5849ebc25fd4ac70264bf7965ef6e5d5e5b408cde24fbded060c26a3e7bb3a5d80ce1c6df3d74b7400fd6700047cf65153ba38b3a7f11233e5a77e329499630648a6d69960b78fb5bea50a9b4456d307ac1e12839680ff9d41b0034041857baead9f5a7f51920723d5fd9d4ef479a7553a4278f684644e06183599e2d37633317b3fc39dd39a26f3cb214e69e83cd15e76070daa57f7b67cf57b8b0094bd316ab947ec09228ee593fade019c7d723617a528c3aaf5dbe22a9956e6a7d7b1459286656da16e67ace3e2d43983f2521be80271f3a82f97d67129f9d672af4b7f09ddc839689c4429609eacfe810de77b5b130872db1839bf4fa793b1f06e16b313a43e0da5014a0536fb6677fabe4a55319a27db3a908cf6cd081049a7adc55a68f04231e19c2e92657c389dd82a1a687dd5c999624ad9adb265ea69cc144f41585328f42274f44c263d00da1b261d14e5aac63fac80cf970764dd5e942f910263027ea49ab49fc9e229c17663c88c3d3504e1014ab1c1dcdb9aff7ba8576abf7278f734137c53ff912441db7404857d7fc136e1c9007142148e4b9c3e93e63e4cb3938fb6c4bf2b85be3f9e333d3aef0df3999d2a32da718efccc7d4f2f63d78317d5056d6914f6a4aee5ef3aeae2d8094bb1c5ebbfad55cd16003728fbc007e2d15219f935829aa0e92f0e77ec92eb12df9c791f511650a0f1cc01554ceb663665c0e4e6263108d30e9bf57553a292cbe91c44f61df47a089e9c56b5eaa7e41d7f32ea6a4bafaf80883999e056ab72426a9789773be531631402d995a7766865c48235110e3d3ca49389a06fa5fe64103b0e4844febefc1e9e0f3a5a36613ab3493484aacaa3b55453ac83c7f09f9f5c432d6d8b8e0b61f4dded3cc6f165814d3cf724e4b8556aa6e9620c9c65f24acabf5073df677c6b2c8865a2bf6b715c0b4d5d2a50e76ad090ba05dc6d75f5aefffe7bfee7755ee30093b6c9dcf0b395d6447ee99dbea24b649a80bf6e5cd062fe459e5c34185d37d9d5cd820ce97fc78eac352c16854b4872c51973f0ba10840db63c74a8c2fc7f5ee3490a6013db0185796e21304ca15dc034efc2a3a981c428834e4858180d95c7d9931a14404d2eebabd637d24f94b6659691dacd4002c95e609e28e899acc5df6e57d8a657950006144f03ca0c342033390c783ee9ada5782bc74e3dd117322cf0867bf38396287d484dfa6fbaae9d65bb743e623f2351bb687ea4453ed5460fcd188a7d5cdc4372973f104023023bd12dc47436044843770218e4b23a244637d066a4c8f139c2d60ae833a5cd604a750312939390dc04fdec3b86e5f70c7cb0b5b36af49e6aa94b345a554928188526aca2bc65cdf173e3e9d96fd7f67421cc5cb863450ad1159a51aaec670a8c7cb4c1cf4542a97884fd28ab909f5601d1540520933c6d27b1e325720a52c9114be4c1ce435c53441f22401596aa6e4eebca9adbbd525135b7935d9baf48a93d5e166dd8436634f431553b3666391dc43bcf007476cf5fa91d9c1ea8e2e76d29108696f8cc99d016a10cfc9c17034043b919a1c1f6b912f019c0a37931bda7a6ceb270f750324b08495ce3aea26c059ad14816f9f1f70ed8cca46e5ecfede532daf260c1d3e3bd3ee5ba73f034f24864dfb48eaa2d7ec3bc1ba9b96eeafe86953821b52438b29c4a2751b9e950bbc1da34cda1240cc06f9c55125cf91c26b0b37324ac2e9e90438b9d17a175565debda71b331fe773839d998bf735047204b9aafd363a5933f8d855cc434addfe744f8aefb956602ec268f4283a0d449088f90ebb42289cf5281785af8f6b7262c8cbf89ca63fe7d6c99409bce3a3f816fb401b1a259328354103c7e4065019c5df93d7a190a1b604ad00707b22ca39e1b6fa45c369d6e6f5e12e3adf55874a2fc4559c9757f6ebde5e462c3e177b5ab006f996632050e590073328c711beb7621a9abb418848970c2620df68dd699708e253b79f0b384e3d65cc46b7d6cd0bbb851e2fd63c09e9e66b025f5c00e6afefe3e678bb27a9ae3773d5718e497e49c0ce5bf95dfc184ccf2ec953c18a3bfe8b4d225699306da73f55a297b6e8bc32c30100c71f067f2610e8731739a5cd91c99be3b40234bcc79600629791bf3d981e230c7ec598fe03bb3f71e87d9c06073b153b3e5e48d85ebc15ba3a90018939cdb513607bf7d7b2eac398e8dcacc4dac99134e2e46cad5719c926682c6ace889078d82c5b74193397f6f003db82e3ee6bfbdcb86372dfd24a231ceca4bb6482456cfa6af02896e96b75cc51cba837450ffd187c762dc895b0dac43df5b680900cd3dac740f2dcf4071ab752ceb41072ddf7bcce422484e0622148e3e4276119300986cad326ee0c887a187f43fcff1c9f03d985b662727a75f4137d6a3d4e3a8664ed5c80b20009ebf5c726314e89473a88757a3d0974eb678cc3efad51db5938605ace920164ba07a6cf760259f00b7479f4010f73cd7858de6fa1a47a218fd6bc20827147b731f67cc3445eb9cf1fbbaa6a6b953146c4c742541eea74f673189bc4fb97ffec97ab9f32cb306ebc51a5f964738e63fa50cac5ff1fcb5abc1b9f8b82390ae72e308bf550a9a2c43e6c406c243b621258bc2b562a341928298b9bc0de2292e25b9cdfa482b5d4b5877ce1b056e4a76fe18b46368d0b2ea047880dc3606326e7e23c53df8c824603d58249f11f0984177effd21904432a490027fedb745c20656471fe6ddf1c2a99a23b345a67a1462e580efd83b16d3777d03c10ff7745ec2fccdae3818fc8d8c6357049fcdbe25c71e8718d0259d19104344270d2c97b44c8817427df1cc10362f9f81c4e6383e60438a5215ca837f9dee1cb492fb662ff527d9e7abe3cb49e624963fa5ef169d75610f44030d1e532639433bbfde87766e27072b480f682fea347fec969554ed73b5c389d0cec760c83cc7011d8a3089a0436b4dac90d5d33a36b5acdbf5c86f45785de969e01bec69afd3ed40d5bd006f65abee655f698511acddb8dedc08e42006893b75824120893ff41f8754e0d265f6b84ae3920a4b3e654598f12acff8223740f48d2acfa701e6bc81313a4543b75f8801552dfd81f02e364b5fc345da463ea19d10307fe0baf3b483d72afc0252a3fd4a7f6cd83d20c462ca6703fb44e22482e9de5885a6c2eb0e6e47d8ac4a370c07fa2f34570744e477c3189b495bc3f9fcb5c43c47c781668070427630109da90326ab57aff6855188a980b7f1b1033872a03f7a61bac30f981acc6a6e777ffba04e5c595419c6227047102de3fc83cbf2940f4d7177ac8f1bdbd8524c2caa68ff60f8527cb484c8ccb344aabd38e289badd09e44dd9c1c6e8f97584921e68c24d1d6bc6424df521fcd156c9c7b945beb875ab720ffb5344b414e8a42e361f3ba172bf0c258215cd1f98fd37c099514f945a0dab5d30a81012f738c88947add4263f590f0a55a922a31da16d82c3b4917d1fe19e90daac8fdc13c9245474ebab73f5fe7e2ece25e0287b36979ba0b2157cfa353413078afd3f5c8dd1366507e0df8cda8aff826e059641807e6ecd24f982a8aef04128e8c2591bc94d4033faf24d5aafa817adf82639d0111ac824458413c40566e72d76419328573eee47e85dc55f58dd01729b677c39244eb150e55233f575c8d03777acf5ed72103db3efcc55b548c667ffb1f3d64d3d794c90606e42841ecf739b5f843ed015fb4c7b4bb6b836641ddd7b4d85a59d08d88ce0622ad568f9d6172f53e50a9089c02e6afdf3d7d21f311ebd0040251d642d538735dba15a603fc178e0ad2c1b64d5a9de2bb9eb6958482bfdc6f78a230eaa0940f0ac235b9ea367a65fcffc7e4927a107a02c43cb87961e0ef79c0a4cec44dda1c03495dc055210a7cef0a7c6f35155473a7626c734921791837147e60f3c1ba7f0c538b278e17f422c95fa908dff74e67579eef85b279bb34e296d1de28323d076bef3559e0bf63ae2ebbcc0a03ff25286e73945e4990e4ab1d7e62b051245b393ac9908d64ee1165a015aec8bf555426c36699cbf3e55cc15b48a3a64a08011c3305154f4f2f5ca8fe17bf146131adf4106ae535d065b559f7dbf67a94a4e6141e265a9ca42f7e7f71669a5c7444d02110286282b1432fe3b3e97801bf0f52dc43aa99046cbaaac87c6fae1435982a001d40e1a759b9733f3c4d383c84e6f7623752cc5b0398274ab0ca9c26caf5d3337f6194f90fe3d76d623ffff609358eca66e1128ad9719975ba9c1b6cddd87f8798b94b69bf8de4d7b21385abc422622220e622f97e5f9f54fd38a4e0b949de69a02bfd2d438cea52730fcf875e62f951578e1fc7de0526924532002bc5516342245e3c4c388abd7fe6513af450ab130235d23eaf2b7e6e118ecd5a11a73d0f57cff327ffb488973b77f266e5d39a06c962c327d980358575cbac5b2cce2a37c678acee12e8f62b7376a3e32e2ab08e713be894608675002bbc47d80dbc79980707c236f366e179c91695b2e23fcfab0400c30f79e3fba0708823fe982145c4915f12956bb8ec93d9e1ff24577483376122d19f6982580bc7d9ca96d308da79dd665787a319ee1bc70a1cda29bf7390785c1eca69e3e679c9e0b3d377fd777df19e9762a745f1de91b4eeab8298bba1f531092648188571d7612b14d4b10b079925f09509a5941c5bdad2bac2d6e60ede6800b2747f2f6605a7c5d419d2868c9e16d70985abbee9d4705fea1340fa9b191136b581928c522e6804b6742812dbf150b002a7198e80084494c888db320b965e9c90aca524bf6c67a56667096897edabe959d1d0641b3c1183003e214abe901169c697cf88211f7e1660e94e41ce0209487c4a40bddf9c96783f1b14c2098111ab4e12d0e9bb01b1f3c29d67000571fc52713ff7860c51f794ed42973ac7596c25d83568bb408a27dc27e51857c7990e44ac98af037bfcdc73972734d0d6371a14bbf84026654baebeae98737a71aa5160f5b399ff24b38426a2b2004b77996346abe7fd280049ea8c5df964abec17ca23d919f88aad7163b91b41a8365be80fd47d43579ebc74aa06d213d0d9b4788d230fe89874b014ba874bc2b9cf87da0e1de5e0e32fa471f81121b172a8bb8df6d3717191db9b721358b25cb99d945e4829649406214692c5502ee705098cf1e641cfe012ffd280d6faa5c56abf41756aaafb61a0624738d0ff8813df70730b0e3f1098dff35b9492bf59e12ad754c721e910fda6d9558f26261f6bc184019dd11cf83fd6289415319a15e684d3d1803e6ad90824a899ed4edd44db341cbba002091a36d31601352bfd565637ae08d7256bf877a2a211c4ac6e0ffcdde724e7c68d8d7b1f41f3db5a0df86052342e6f3bf1c5509d4303c503b1e6a94ffa2c43fd9720f2887b6ba12fa76d41d4fe62ea603417361fc22685c5a6376f3b94a321c918f2ba8a92711fa15032b0a97b15cf568c4a5bee0f4a973ec4b8136772d67642c0d0cd7a3f8937b5fb60a236bd29a400251d6cb805e6f0dd2a0bf6d2a5b96499dcf01358b4b769a54c42bc48fe3eee2f6c6f4217662a60ce9e43a7eb61fe6adcb3b691a78150d558e92bda493445231c065621d0003afe777e1625ee7f11bd3ba40840eb98e10ed04a34c36b7bcbe74e4a353feb834a56f5149d753bba53701c82d811747545062dfe9f2c3955d5764a94fb56f82e464ce03139b38277ff37f01f4a87c170d62ca4d99b0cffc15f6317e1a15a0931bb63a10225b9bb44166f4e65f01de518f8db4806a474c898749f131b7377c251183c14b7d3b4cab9e6971ae99472111690fa0486d8043016ee842d8e5aff256bf18249049e4ccb891c143e4132b5a6b9921029f35e4a7fbec13d6dd117a546d3a4380e778237eb6ec7620b82d0d88ee701997615702fbc0aec501447345b5c09965b2cf425a8b9c2d4d4144eeb4abda5f981d2a4705bfa16eab1138dbda5b5fa9f10bb2cc35fb77f208e5e21900a7b0e8098dde2171f70ea7e6f3c6a62d416d4f794a20cbdc0d7c2b17aa73ed3f0db3c64a955ffa5dd343e1d7324ecfffb86c26bb98228c85b7e12e4b412382255ad16ec58995ec2a97e9ca4cb379097985538496cd787a10317cbac8994d2e339bca958633001901cc2ea69ad1c012ae69fc2665720f029ce90b959890058d2a12e08b033c8deb694e83241d81f9c33eca6ec27374aa12865f9816bacbc16a753de13dd1c6cafd24a58073e536ca2948d27376142d2baa8ea946899ff8a999262ce2fbf960a3715e9f49b1c0f41aa9b4e4bc298745fd9a8e54492e237a28225d01ffacbe34e1737abb94bc1544dd916d762e90cc7961b384dc296b2e4e3887d1969cae1fa57ae95689b15df095968a764812b44f201792cd7296659cf47740f96c7160a05d7426cf42044387a05870f70b979723ac835e3ea4e1c8ac1b9b0021ca0384ad08d305b0ea03523b80b5cf8d82075dee14cff10f58233c377776bbe4cd5b6ee79c5472a8d4ebe679630afc72385749b9ea08b4cbdec418a2c744ac39bb01ac957cd1279e8cad4408a5400cacc81df385ff71bd05dbcabfa024ca920c0f3ea91ea394869c457d7d9d418a0bf9512c0276af04cb0f9f8ffe86f247fdaaea7a8bb87bc903d231f0283af689f2b5ab8c40beab09d528de72f9f6260940d1ad762808d961d77ebe7213ca10307c46619a039e9f6033475b5ecbfde02cd35bff8c53e6e179566bc5524d96e42dcc3251e8237e124a9dbd630dd5c03e3e6d5506340d3beadafb31401b0526a57295235f8b7d4637b18d338436ae24f00ac0cd7104d20a01676717c2ddac24461bf2d1163de300ce3c43a072351371929d7cf719fcf41a74097e77a95116be64e4ddbc8284a975afc3a4f4efcea66fba4a102083cf4ae43e6a313b2de227c02063516d9984686b99288fdb5f5d4d8a618b7247f5ad7b3ddaf33411111adb5054da4b1694d4f792a33c3ff1b50e6627cb23db57cd7bf87e5b5cf474b82d5eb6d4421650f6e74419330e5ee160ca819042644808c0c59d80bac30e9f2020a5efb1d29b27eb5acb81389be78ac0b012523e3dbcd2543a301a0f85aef6d4c3f98f11687ceb12740439cee0124a5866cd5335d7fc6e18b045ae5b23761efca47d2121b99c49afbd541c4e4fec3dc848e087cfc804930e1e6c7f7d7078abf33f8582d65c779d96ed53cf282384e74ebcc6cef425de185bcd79ee77f5cb195e663be484832034c0e89d1586d307620e86d590c57ad442d3d2cace38f5d74ebb7cd1c050481def1bfa6435f2d355eb901519b093e22fcb43e5c17cd26fc4e381dc5656558be98180fff5a0ca7dff326ca3d4efdc3d50762457714302b00d72f15704294545d53f0cc8fc62b69bebc4400d76b60273d70d47ddf77d6f83a07a6b192acb4146c46b8e7faaadadc670b6e2a859c789ddc3f969dc9241a1812516864c216865a24837c2f08b646da156289a0d5772a487fc980bdeac7be93e9f77b251dc17d5477c46de67703adfe92ded27ca74ea7475b07c9d0ab564c51eb6ee2abe687861fe97a2224675f72d0ed53017d897b4291795941be228f241d79d2a68861e2243fa18369bc4eccf5f6bf018e71d5549986a86a943916d3b22a1d9285b156ed4a3ecfe75d8ab972d8a1da47662c6cce0a8cc6d846b3bf8792a725d619a74ac51b641ff55938054ca9b0b1c0745805fc9c74a5dd21a6fcab4dbc1b052dfbb72eee17f76268af2389660cf62412ccd35db4ccb2f9eff45920c6342ff9bf611a548b1888bd8661e56f4f7cbcd7b420459568ea5c80f501365d36a65ec3585c446ef56ce0baf3738544e712de6e76e47a05961a9dfe10f54769c242c2add7c9aa4f604766b9140db570c0562bcc5527639029580348ded04f0d2cab12936d6d53d50b231db6909ed76db55232c9293bcb26f4bc8b9a5dd7987e7b5afc0628133d45a9082e23ca6b42d9dc9ebba5a185b3ad3cad458c06d1534b1816c0d9d83a8428694b3aed4db2ff99200cc274079ced2b989f18a6e23c00c18eefd652440dfbb4e72980fbdec7dea8516e3898dcc5c9f92f59fd35999c5eea589b08bef2c004dd5d1313bffd2d11730995383a4c918f67f8e088d8b66807727e54165fd066f6b7766a359c00315edd70c70206cd463d46372d09fe8e051e4121b199a78667fa87fd2eff86079d76572520f473e2f2f7cb51f850c971f88f55cf3bcdc25889fee6e03f31c6bdb317d16bd83a5ca318720187556aa53ce2d64a57e06975d9f1b8e1094f2dd041a052e86efc3282002fef905e3312c8dd5d78c95f3df968144541a38b57f1c813b4203f6913c0b7bb31a33240cf1fbe2995d0103aceb661b19fb545c35ebc5f60ca929565f5d8b6a31ec686804ab2ad5782588d043df2f9aeb46ad80007aa7844e7fee755d448ab114887cf7958bce92dcf9115cb48979d2b63d5c2b0729fea8d14c44f299d5287f460758d6e4bb50789ea4142842b0f0d2abda16eea2326869c12a6c75cb46ee2e21d670146c90acf004c212052687961b48a5ffe1c60ce1f8f380c961571fb20b314c002bd9d453b52b1cb7b3eccdf08a9f309a14b4d68580f649777749e839317d7622e111f561c096f4e8c15c3bb5adf9f2384912c4cb38adac29ed64d2ce364ca4710218c9f948a8bc5d50b82770ff667be15cd31c413ceef07ff3c8b28fe28177cfc399d877b8cfdf72722b0cf77d86df79d61127cee7290c585987744cf8aa26fdf7fc61c6fc31a3bc8f8ab2ddc0aef9b9baa075c066809c5dabee98bf447fdce5e269664747161d8c7cefefff2d1df261d6e700fc5cf21ab5c2def2dd6b018887548faae3babc35ab0739c5f687063f61ae2671557c9e9433f8a6a6bd7eb35a589c24b3334d32c6d2175fda3f93db95df1dc142aea26e66f7609222aae9136479b28fcab4f34adfcac1c5f5e05deb5f5e4b866bb017de2e307c11109ad54bc300481369b10607ac3e6a3dbb67c3f3f60765f07923aaff8465828215f005255483d1fc2dc853c14b682ec244c173263f9539267fd0864e8167e690e75fc0769f8bc96581d724e3f433eab147bc3c349d3668535946084127b855cb354c1737f1c4a36d864097a9094fd704df93cdc8907a1146765af5180e5436ce01c7a443733eec38c86aaa4b8a47c405a093bb3c346616a147f1c38f3ba58d28188665d58ac5bc3b6cc834b7507ce435a99acc9fced3cfb07d844b2b0f1c356059ffcb990d35a9e409b1c7a6b8168ed43d67bb9a9b50f8f71344a11ab5a6b853556ffa3e8979cd64cf28ff1e5f44c0109bc26e5283f83306a71eaa5441bda53de6e57fea39380c1f65e0bac47bc7d2bb6a525b29de98feb439f7c0c91beba48dea2e9adf9ab9d8d894955dd004f71cb2ffd002db0f4db916db3b0ac38ed744b0035a46706321c4b166906055960fa144a1143de2075f037173139e898f8bc360aada24c13dcd8ef211d76949ad7ca6357c8123d1b733a0e624fcdcafd148d39f084bf5800cc72d2a1b4ca38a7231f50fd2516176aaf7898110735d53aa759802894b8f19d04a40055c75ea619583bdf3dcd575176f45b074fecfe98d90dcdb1e0f11eb146221e0595d88e79e536ba83694a69e66a25dfac6e455aaede8057f8b20b4a7e47c67a5941aab8a0f8cb9bf2fd47c01c87030040031043792c989ef44370650ab3c884e72c0c04bc87d2e49580a177c53a465a276de72ea6ccbeb5934cf0cbc38f93d2fc7e9271cb3ec7eddda87ac192d17dd5292eb2745fa109eaeccbafe0693c0116e434372f179d1ece24b41d439143bda88b610e86582abe74e504eaee52c8fb6abf19b8e896a0bb2ab2e2d99dc844ef86cf726825f049189961695b5dedca1b7509f4b5f10dcb36403a62e6e1fdae6ffd6d108fd4bc2b296a81c07dc9d1997fe6fb3c8e1a651ef9a864d0f08f1e73f3dc301ebe3b4eeaa5cde1a14277aadc5eff2eaab147821114b82700b97aebef79870f3e4d22549588cc536798551d8f7dc0160d716514458ba824501e5e599b7fe95466a6e7a33ba4f27b9e513013dba14b41b592df1a62a928e3e36bccd4802376fe0c205bdc866cb1fdf38f7cfca17963559d60e4ebb43cc8319e7983f33bb3c7be1a2d6a0c9f8f95e15ed8f3172699885ab857657aac2dbf1ce15535360f5b936c48adb3f84ae966ba0ac4a86685ee324537159df2c5ddadd50ed8107c80c93aca220f29991d008f63f5032a1407c6fe416980492ba3c2c25438962f390f11cf8558d8c32b7587a0e8e535982f94e63d5735905499d28a6bd27b00da0c5b77302d43fe24c10d4250753cf61438b8adaa563d368d8dea9452d865c07c25fb800c086628d3fc859071119d9674e25471a5200ff16c0a54740a8d876fe223a6b329ad457cab5ac643ed53d46698027d4e6e674a4a179dd61f6f9cf890c5560a313d75141f5786ade10070ec43a0f54e4b6eee6a7363afec8e767f4c0a0c278ea1c7d31ac640161ef8317800fd4d9f2c790c0febaa8cced82dbc48f7f149f9e2c7a7782a67c324862d1a6f835fd088384f3d9680dea43b1de7cc1632d151eda6678be66d86aa7dc7aab55e0058d3ce0f1f2c1a452d907000db371f911e67de61c973ff57bfa538b6749d9f0b59a607955017e69e7c56fd62b20a3a36483bbdc80a3d5531f33518adb5a477cda84546a461514469618ec11b69af31dbecac2174abd24d6b23b6883ffd234f9d88c5a0f255b28b9215dffc34c9138674e7fe167b955f8a71da746f76d6a93add15255d5e7047fd6dc8c1634a51633eda8d18ad9fd4ea1d173af943caa9fee4b98cce3481a0e5d87479e423443eba618b7b9421e5a2797b654e1cb9ca1c5d114c9c70d81d3abbd5c4fac536866b70fb24b2110562b53d5b2d2476417cabbd95e1e2c5263a1e121b456576808f27f2e24f78706b9b962ec10930e35ac76565b147b4415fc2d278d01faec4e7cee48e108435cb831d48e35c122c29fffe14c06f460d9345238c0703a863df47984de27a4dc5003f89d1c78a03aafa8d6668f7fc6684366e2d2f29a64476204541e3067bf47c9210ef10400132e08f49feeb7142d6e4dce8bc43c87e0342faee8ddacb34974a152f33dc697a328dba6302f821f6f27f5e6d20a84fe5c29540218165e7abd3b31ef40c0f7d6925e8247af5fdff22b3cd938a35cf16355f0c4290f0ce5fe9e224b8f8fab1434637ea8c5ef5dcb746a5c19206dee66f5ab8edba85c7236dd0e4df42c7698db057226d4afe7bedb81977ca16b8a564d0d43b2dcb2f42f6878c3152b030a2ee3eb7413e054484463b8d1375ff52458220c28f14378fc02154f6b8688fb6b616304b117e9a5fadac3651720dc7db5f74d1708f323c8d48485cb9e92961b83bd07b9919f56ff6352fe0761bde679ed15ab8353a5d0be0d42ac2ab04cf793df0b3943b30efbc7da6ae77aa7545745ad855052ae4b15dab47143fbd865f92f57d12afd41a9581ad96bc5264c9dd12d3fa8f3c43b28d12f800b891bd8c60356d952bfacb3b311fae167e6fd2db760f32942e293f2ad734a1fda9994ed3911ab05d3180011f55a60516870ae418bbd07ed6e6b6fee4b4f623f7d6e4adf7a577fae808bc1b307780e25242582f97ee4df1c6fdd27eddd7d6f0400f529efa1b6d5b80bf8c3d21ecc74df3a5ab3fe005ee3fb3fb8246b7d684af7584bb9eb10ee26c5a9bf4c217be55cc86a53c254579c3c692ec18d983e71f4e5ecad506c62319f3492fb86405eeb38f91c6bf84a40283f05c81e1780f78a053c49d47fd9e618f166d890e6472f179aa3b762c8202aa64ab91d42c271e2b7fdfd38c639abde33b6f0a4c7442638884a3fbc8915fff957f719ef09fa046b43cfde0491e99f2fcf9e171a670504fc7199c382073860bbe703eb38331b54443ad446947729014394a381496005b02cb50e42c6e25b8ecb0838e673fca11529bf6e3e2e2fd756f6422a6d48a49022987659239cda541e295faafee3863c6e71cde6c1248902900ed1ed712a7270301522cd118d699c1b92f6db23228eed442635f8745f90b3adfd491bd98a31c8e34a2cd9213696bfc7239a7d806f32347bc0f52d5105b58ce12a2f5dfccb9582766d28ec03045196b13dc888d8e0aa791dcd19fe30403ad7ccf5e1d8a44598e4948ec15e94a4992ac07957d2fbec67b8df58ef7b67429c949a940886ad4ccf7d736b2a016bed507a66e5e9ca9c9385d3ebeb6e0fe866a6a7c2ace5de64e16a17b2cae9d567085fed669a86a378181ed44bd1875a3c8cab222c3cd18061e3e091205c6031d1adbba085285c32ea6d8ca5a90a00cc6f8516ccaa4b48adc44985c08638b26041ffb1d1888ee4f10a54a45f28ee0ae1661c919e354b300c55c90a73b7143a54da97757ac15d28edf0ad6e4c4333f3d5fcc9a02ccbff06dce975bca3735841e3cf88c92bd4d8092bc341f787ee627af1cb289c673a2651b76110e779d5853ff4143561b60b19320858e90b3366d0478393a1794209113f56b1995811b30fd7c90517db110ca0b97343d6db6cbf0122a0ab664f49d366c147b65f70a5c3fd3683e3a3442ea7cf4a0a96eb93dbebb7f6e3d09e4e83e7fdb7eb0202219942f40bbcfa549f627bd0bcbef85d78b73fa0402e118f7cf463fc53aa71d90ae0d24d9bbfdd7b911ccefbf34ef60bce0433e02565f6e6ba5a6bd87062614c522d06a875a214c6420a49011ee624511db479eda8c40b1dc8ed201333305cf64a856317f4701f62c92c22ca7763dcb6c856078842baef8e84b9fef3795397244da423ee812eebaa26b84ef6581b4f322bd9b8e187d45aa2e37da1c4b8b18d3779aa84e797e2b670ab74eda9e856b56f302897ecdc45055abb9232f9e3930fdbbaac13f27a03600f1eac7ff91af2e9f72e675e7865e051e305ffe69a23812a77aa7311b9b976b4d19bbfc051d930bebf1fa05ab5941485dc4eca81222976cd48a538d10667b9d8a25c130649c01e99b01c1a1880c7f4509d3c3e4b7fc455c75df6a24671b3f5f0cdf99bbc12a3ffa27ef3a4928074af06cd938c2f522c56d206d1fea4229fa3c0adab526f116429be2e287869078c1f2819a9d70eff9d9ceffc48d312a1875793c30b45cf448ed374016c8f7c8af0aba48a1fce77a11db45d0c3c7357306eb3dbb0b1b4d6bc1d6a77bb1ff4ec4d29daec00a14088840f195ffdd18ad1987a04c295836fa690544e6a78b45d809a921c7c8aca444859da52937308af43c9e76b9c32c81b5dde978f41609f978883aedd3751a88762e5e6f3324c369623823b5ce51ab55f062aec94d0b375526f1600b6d1e64a3a00495975d906663f670ddb2e9cebd6d9936fb02e4d5fe520acc7bd365da9527871aad0be1cb5ce61c5ab9047a1228f38d1930c45dcab97e14464a62996a8da098a702cf574925680624c1f8e5490d28134c201edf9ce48158ceb08bb5acf15d61c14ff5cbff9996921d9d30c1e00e63dc8b238130d120a848966a0630ec5da2593afae9fcf2697d566d52eb7d8c0a8c9e9c8494684b32da7dd7bb77e0c58709bba9228b67cf108a6a5a119fd71118ffcc20bfa69b45f4bf004efee075720b3799839a2391bc9123043769aa48a563943795791ae9d5b11e726d1246ce57987d5e613307351e8544e244b24dfc32892baba0c6020a0621960ef744d6565d598d84278282a46bec8b9b1cfeb0ec99e617fa7647292d366ca75145ac312695cf90e580295467f8359ab66892c0e9623d394b2d8e9766ef4c644fc7befc3da0bab9f0ba4fbcf61bcfad655c2a5eda337cbde22f2fbf1b7c3e8fccb1d70823e4ecc8c623ef116f0b40fd6007ded7f547caae4c819a6984d4f7d2c70a475ec7d8c0768ddf2c3be7fa535e03164127afb5c774121396a81996102924af35ea5f350e22036af28705b9c6c20704d98e942fde83b6703505e149ef393cdce49c12e95a11d38752959f7d82810632d0265210066be67dc65246f1cf0189dc1e676ce4671546c64b55f03adbd5f7240ec7ec6cd52907ed21ba6199db381a4baffd763b6674d28b947b67edce612b21e7628c3fe9d748f616dc9e65141a88af35bddb4427d686e5420d0195a87ea710e9d642411d33c2642918fe7a4e82ae5678d7d1759f9f00b44747df3bcf657b0b716d7f50f2a1cea422b2009bddef879a226f63f438d0c6b5f29b830dabc35d4506ddde5d3cea74457dd00ad6796f8466d7457546d0b0c7845d07d4a50c310e1776d6cd48661a92f77276092c0ec6a67fd4e0f48b06b258a9e64191c96b3d6a5574040dcd740c7ad9598827f89a0b25f4cecbf508408dee7b3a70e08e5546b31c63921f5c5f4c1bb29a93a38a8ad3510dc90c1e938e4f374c369ebfb781f56b5769f32a1908aa3b0955e2d84f660dd60db12086a5b82d725f856e64b41c0c502ac90f71384dd1212a13957b887ba51ba275904aca7de6df21afc4b9948cc2f047abdae6bb93a817300629765b4d55bf7af9cac10d3b40b36f8a6d8b1264f8be5620c66881b3cd86676132efabd556dd2a97fcd66ce89e6f1b17af7ef56e01e41af2c1cd28bab6167d6f744e0c9660d83fc0719f6276435322434715bc3e7bd824704edeaf0d52b2254c6d268899bcc9b65a74239ac985d6f432f7a1151fd7c535a29a352bc6c910f07aab70e722e5e4d523b3f04a1890bdfa71c456b442e7f52048d4e5a035e3fab8710d0f4500614b6f9a5bcbe48a05c57b7dd1cc6719549a5164dcc82327ed05c907ca5b26d343c326048cbfc1a6ca02bb9e90b16a6f5b5e600c7447f346acba60c3aa5ce32d8717e98034ddcebb6200c9d9bbaf694c5586662b8eb43434c32d2ec3fe028f8a672aa092f73a1cac41608eeef3c4309776da6fc73e1c559535c8ea3b2787fd4fa4353f1484bb466c7cdcab39f0f90411b2d0358ed9f54d84cdfdc0f59706aed5bd9e098f8d88fed643ff5a9b064a80c53ab4167b9b2f4171d2be96e08c499b8c0970c8d5a5d46979766d8f22d95f8e827ee96475d00336e86db07506f9092f04bc7bb773411de1f489bbdf43e533cdece3726119eeaae7f48d1ed39b14df3078fc342cb59bf1504669f285316f7e59621a7c4221d5f8adfcf80f1581a7eec0a8a9f9bee1840c463f446c948f14d68cd35d8642718230353f82f285e9bee6239a2d9810edeae978148bcecc70dd04197632dd0ad6774675e3f5914e7eaa0203c9c4d21c204a48b402d0b5519356961c24e96673b8d5093e266b76633d128f4bbcc71b5abbb3e77fafbb85de267fa4f2340ef712036c81dd7a3a2a395ae46005d7962cc75e07819fdde6fef55a04b87e71b90325d9d55c449172eedbf892c8a7f18eb9900835ae4553fafbeb2bcd347cf31aaa73c1ed52c0fbffe944b2d8c4371347f8be4d01915d91ca254c009abbd1a84d151007be29d8cd186fc80774d83b6fe0eb5676f5fa800bc2d89797fe3a56a7f8bb1008c61c93aff87317c7946000fde5fc243b22efb6d60bf92f78ba5f86adbc1f1deaab76c45478f73d0b72fb851cfb4c539878ff0da91179991d021b6ea28b1e1053942666fbbeaba73a8acc6afc9dbee32ba06c4cbdb192549bdbc55989a1be03214a68415e3b147cec53202a805130b5d9a65214ca59fa648ec3165af114b66b0d36b2780fa283aa3b2ce975e848cc7ebfc4e4c3a87cdcb993aab4808ab003210c57756d8967f44f52591337e17e3750e8566e540bea7398ade38f1e8d10ff13e7719dbb929a1897e7599378ddc6cadb23a18814d7d523a9b50672b1aedd0738c9dfed046ba3f2da4cd8e7d53033eb78bcac4dbc6fe2e52a3565f6efd9b2ac4f478ef58753a483448a47d5f5d1cf87128610a0d1a3988b4f9ca5be5d57b41326bc370e57c6cf1dd19abb923fa3b0738760c9ee7db333dbf32b2d4591eb0a8c16dbff18b1eed7d544a467734ab0ba916d112a400b6b7685c896040b18b056e1482c1a4249e83746d1a768ed1359b74a51dffeb29aeadae28449726e08a79fca072eb9407523ada1ee9493113a64fe382746b19c74fe2d01063244237b51f4f517126b5d8f60aa600d35a311d60250c3e5b7ac979ab62a82b0eed244fdc058f522d233b00f7ca9ca47e9ef98bfd7bedafdf5b8df328366ac1fb215d678c345fa2b2b942db3f54c708d3f457c62188799bba6143ad4e8a884ab2c63ec11a5e3100787f4901808c05e7d6b8cf27356b08a16eebb6e8be4e232f6d93a99b75213ef367b9da5b82c20c36ee66c4538f7ba97ee483bb8c37aff115abe92603bffb40a6bd18fa7134e7cc7e0b58af77038a138acba043227664ed4bec343239edf81f4679799a0bce504bf01373e31bd2316ab2f9529be979204bf8d51a99ab67c2fce17970673ddf41f3f104730fefc0cec0cd1be3a656b5a1811eec131dfee45a3b32139ac2eb14c7a3dede1e1b68bff2c097569875bb0e46c6b08198d7da7ace76709d919b18d39c3b4844eac3ebfd01f3d1c60d25fe8a3fbc89b61c19cad7db7a0514d41a40a165cd0bbf328716dd61fb1aef1136e73542279427bad5a9145f55d48539cb77c4a3a77cf35f82710fc7c5d5ea8a6d396c9f1f2c427640132bad81105c7e5ee8398086329bb980d26fe3f86b6dba6eebdb3d774c7ad7b7b62635c6714da33273c38d034b3d9adc62cf2fde4a878e05dc92637cd34e5a0db1eb481f143a3e8259cf9a35950ed8d4d7abef816353a1174beb2112fb15ed3584fa22a2b13dc7b92afc5aaf823ff25d4bb9b11d4dbe8f2040b01345eac64f5f18a40a33a0474ace38f28ed8fa79f91fe78b3e1a8cdaef8af6ee424a5d53c8fe6e6655ff109f91c7ba31d81522c87afcda7641f1b769bec652b4d99a09b696e6f2fdebe774160a4d6c3b66cef1ad2ee901f8661e1de22f2b21f2338efd73bfb8f31d3e3821b9d3d6d7a917b5395e8dea048b47c3f5d04636f95012bb6d79ec709c597d58f282a3c037263394d0259b7949db95732a0a47a383517abbc9db954a2675772de4295fd1e17e8302fba6afcf22042a11685adafa33fa5dc86a2c830ad70026bf702d5ba558079a811ad35996bb3fad0bd459c2404b07c9d3bfc7849f03a58f2f5088a545b8ca384e16ac5ff42ce9d4d37ab8becd6fdd64f195e2022340fea04bb5c2f9178347e7ad7d7856adba45ac9e1d7a84c9aaa436599012e7d2fee02d0dc6cc26e23fb9647a859d8bd8c67fe541eb80b7f88efd0792c31358a7e21607ebe13cdb49c6a0427d290bc52c7a93f02d6e428060d091b521efbca25d7cade513b597602922f997910d1b3c963287fe02a87cfa77ad4f37c39f332baf0fa61ecbc2220e4cfdd79ea3813d53b9ba82c1e593e609d3b653628738baeaa617d681677193e63f6a4d1aa50c35d60d3bf41c91f6acf8d72512ad112a33c96cb773e59970c3293e748e4b0cf8f96e9ebff5cb7b72ba9755a21dcd635181f98f72791e5be04871b3b11d3366ec22e052453e60176deea038403f099b3d8431bff71e2534719107178018812d458f025d513dd310cb02d93f24c60253124738e1a504f410b5e18c9bf453e67dfb62acff0bdac867b89fc7cb063f51a14592db7609c82b3265b24167829f0e14f6ddafc4f1eda1018f965e82a19d1281f50cf84f024a50f4208611fba29a3b8ebb11afabafa65408192d333cf18778b52c149178e0588cf974aaa60768de4554d7e06e0f7a6011c93c174e041445c7ac55ba64e80067b5a6a49ad08577fa5201afc92dd3f11addc4c49f2c609c57d2405fefe0ef13d49d9191414965f4dedd6522d2560ac4398d48f89616b3fe3e38e28a2ac4016f1f8a4436119b86104aa614efd47fd556ede2139d99ed31bef4faafa5cfb8697fa68e58247069bc2d9ae101173f287dc9defa3b1eb1f21aa9cfea3b1d638a1fd87c23691073aa9b9c32aed85ae8daab96eaeacba40864dad3d55a76250e94638d035c4cb5a013e4049707d64894cbcc06981babc3fcf1ac74b1a91bb8c219eba6669274002096440ac9b1fe52d8bcb8e00b52337310ae7d3374f54162aba6dc57a53104171d39587e722274d2b29cf21bc1f376514d091e60ef7920c0df52c902f87a9480c568b175278c01af391d688f56887a6f5f524c65aa61d07938e790a66aaf99660df7269aa8a77dbdafc3b47bc6fe2bffe681a782ab2a8df3cfc8b8027e256ac1a1977cad392693dd67a968f9e3611ab3f93ac5092a668228c76a3f372047ffa597fc193fd23bf34092fbb37dc8bcd3b56a93445aad8184b289a24ed158a651753c2df5f465440b23f60eaa102ef5c4ac28fd5d869902677d01dbd92d5cac42f183623003de2ab61cb581eb60d38bf421cb2e5100f41a46ecb24eb6b42f323c2516ebc15fecc86aad5605896ba2edc39774d29e50f32be331a8e72bdb6f97d0671140deec417017d54662c385f575facd71270660eb17998e2e173e40b8fec1123adc760a56f2938add73c1fc86c8c9ef7ba80163dac8224c19b3dcbba697da1298dbb0d7a0a3130af25010f52978f9d77b4b8cc89a5c52f1db535c459fdbebd41533baa064dddc347ad33b181d021e6c20a403f45338839bc10e8ddeb4074462f6249009497324dbced0c1bd68ce6a6e1582192c5dd33c693e2bb20dfd7b5e635c13c31da76e98c800515c0b03836a68b94a62864825b43cb73ce4250d86b9e4dfdc75b17f4453f33d673a79430560fd3e2ca9bb033be9a680bd7016e3c67d13ffd2292162c6eb87b69c71352f25c4880cc4ffc4887b84f6ef2df1a50c99dcf1390e3941212d34fd80abd1c5131e11287c3608299b178b0f8c174eb13db6b9e5620b2c810717b2d357fcdf280ceed8f7155534474a7440d09d55b814f0b96d42151facddc5851ebaaef8f37eb53dc66b3bc74801cf71f6f142dbbc8ed87f9002c3ece807c2399339134f9b1d7b7a4933753b7fae5f967d9da65308faae299b35c1fb7eefb01d1f1c2b8351d1db9765010867fcbccf41443b01f9b19c696139b330a0d5ae8edce5a5ee8071c7e8fd4ceed21d952fbe841765bf7964347a6bb540dc9ea2a3e7d55245f60a7ba13aceb74f1b3900851ace13e7673d5adb438298e62b5c40321ae1178308067c0db7e24aad166d07ecfc2eb8438d2e2624d9610ee5570c48e57b6b5699cf072403a8edfa4fc475888dced4cc021aae161ff78cdfd00d7cea8e452f73e690bee479201dedb7f66ff814e0b8f4023478de4125c8ef333c3f73e33cd6e62fe4353eaceca3fc5411217c347e27b3aedd5452348353d2f55aebdec4a6dd24e56f085328add23ea6e3b8fea992eeccc62134a13275d495a15f220c9318b8578365cdcc1f7f0af797fd580094607260e8175d2e64a61d5932973ac31d851856158b590a1732732f6a8a092278945e4d014da32bc21d962f6151c2f5ae89007cdbd082b42c52544ef919cc5ff88bb025cb8ad117f250e051804f086cce196bce8b782d93bc614e410415cfec0ffac93433851f92edeaf4ab56bfd8755232b81488035b9cc9b9ba611557511498a20899b9d60e31b81b86d192ad043a7fa073fe4418e56bfe2bdea55e8b8f01ed712697bba55953204b36d4b49bd7047648cfdb13cd1dd28a36de6eaaf8943716fb53f5300c99b62bda96fd9334de6161d39e1b168bb9f29ea12eb452d3ed3b7d4bfe5f27d6b5eba1b7bbe5612a1496d872326e4609cd44850cc960ec2639909257ae74742a8ccb26121d9372709454e0dca66dd382c7e9ef97080aebd89dec37a966ca1bb14fb1060de6c1716636579b68ec35eefc1f03113a97e4fcdfee7261ae1eff9b106f818e191876a3d102c3ee100d9febaea77cf16478688ea84e54bc8a81109748e1f8c11a9ec624de49c3fb7ec4547d97a0502992b70d596290e88c9b4774234e89562dd68a401648928b842abdfcb89e72e3941a86a59597e41df00790fed6a43f84e2d23965508a6db97c75409abe15ba17497ddd44e0f4500cd567e4333ec962344780ea9384a5bba4c2549b8e9ac9d4a99f08fb500ab34f38da35a7e81e9ff08b9ccab526e727c2a28862a3bc6944adefa93aa28c4fd3f75aea75635ff6aaf27020f98e8292d79bc5b654e5dcd2818a71cf7d5998259c2fdd19d58c112fef77757db2f9cb153828e7e744c5742900aa3aa3b5ea0f480884699d6d48f5b3ca072f2c69c984b271d2d7fec28e98b8e9818294f3df9516c9dc2afca11406bcca0207bc6e237963dbb257c7bb2d6f6d08a1adc0860c6d1ab1e96d3b05cc6920f0888e7fd52e6e44e2dfadb636307cd6d28fba0ab14a4ef416a46422e87a7bba934411e0d676b881ba4b2c5427b2e3973bee7c2dc66f380dd24d5cba67c6d2af699764975533d125c3e1a4c7e1a2b20a6b9fcdafde2cbc79c8f78cb6717dabc204fc31bcb40fed52f5788f1205570b5149100ad9cdac08f1cecb0bd7bd864511537feae1dc01c04516fce5da2d3bd93ac22505ba7cc668e66fc89f2e02672f651494ddcc1863ad43175c1fca2d5054589dff8833c73723b6a3e3d67c44d9f5f732954d5074345fc06ac9dba7774e3874c93f1eb1b54c29325f3af6ed6bf93cc0100e87aea21cf642ef01c954d32b0659bd2fb67f91636df4d7361e3183ce744af6750addf1821a817476814bb186342277c3e30fd64b45a7d02c8921603de2fa1b93f78dad58ed86aaa61e76f742d91e68ba8bf2b59433d23cf52bdbdbf5142000a528bcb1b73c63b6104ee9d5acd0e155b445583f62ab83ec7a03fa1743b5aa26a8a5de9c078613e043a8324f1b9d979c8cc2c14330aa77d02d65a08e15f025cdf1c3a54ce5e935473615f09243ff8f7e4ef090ceb22be60a0322ae3d46112ce7caeaceffa4d2712a3fe80875fcd0c447305c4b028773a54a14a97f7a3edaefd0ccff704d8862c59195de2d438793265523d2c035219b83d66acd36a36ed2fa31186e051cd35be6064f801f59bc33988be51ec2429921ea857dddf7a021fd5a866559311c1029c5f90e614f46a3c5ef1e0d3e3ad4b23b8060f688b4c7a300bce94cc432f8c23b50dcad2138464316c1e3f6d64edde2d55e1b7105749716203726b9a7dc65ea88d0276dff7058b76dba68a0f26507427e08ea976fe447bdc1471a54b3fe85e78fd66ca2cd268aa2a391023163636837db0fe90d5bb4f219f80d9e771e833dfc4a700b83b0562a3b7e70bf8c70dbc9d3335fdb810c610edabe7d908f844db644a65697dd4987417cacbdfb4ab81030034cdd9aa5cab0366e7a10cee1a8158bb55cd60deaa4ee71199eb88f276b75b24d349f4816b6e47467d9a85ac6bd3b908f204148478d172492056db1af7e56e9221eee4bbeac3a43106391bc83652c6a144d91b7d78029023651148a4e132b99bc9d0e985c6b7dd85a4e2f92eefe04495356031c80f05363b7b5e17e2eabad12ee50b6a362fd6811a3067111aa867fea9b714453a2de8c8e73bc836fe1111d04aeaf4b9ce57e8f7abf1d1d5c0ea3adda4ae630938f07354ea19294c0a26bb6648cafad62ddd74574fb327ef67bfac4b8ce74b2981a53e5ff4f37ea7fe33748b2494cb32310dc4f0c0bd4290c69a1f7f936b9502aef83e01a67f6f597cd8a5ba1c5671b7bd8225aef42fbb6fde6ef1d6558f5c426e1ec7b29de105423de9a8150e4c4509dac62452bff079a64805e7103525004de1b56529436d37a2a07f4d2d8156093fad57b7b8c6d39e7d46cc4579cffedc48a907d96407c448f437bba9eea55ac83665beb6cf1cb39baaa8290355e751470a9c9095afa1fb0999a7f31a0b4a92a188352026c848364067b21f33966cdb0b24955f28e5ed6d6d32c80a038450a6907ad5fdbe85409f1cb5393985e483f51771e8f006961f3240c6bdd133c7173d337fce8c8447c71317e6b00d77aca6d5c32cbbac85b58c5d8a329409e4873544904bebce549d871cd57762e24e4bcae22c0e41558a8671a49e59bbd709eea486e55ee32f060d602be35f171ab97fcd20dc013ffde683ce48fede4d65cbfec95b7201fd00de145de9865f2007af9bb5a7e17049597f81a142d40b5fe9d3a48c3575563ced5c53afb85c012809c0f6b7b2b8364f6c639d59f2f2973fcab2a1f6f663ee54fec0327038804b285a5e19c7ef101998173f083cf57e24e00bee81ab5c8e31f313b2d5f670b409c55e73bc6fce540635dff3e3432ce287151dfaf52f8d76c6a7fb30a5d9f12b3ab86285c32214e60317866a808350aa12a72f3cc93d1b91e4c3bd4ac3783e0263a4524b22c246a10682dfdfab42f21602af68b78f3f71abb1b447d4860d5897ded58099942f280626594a342a9fd018112fe68890b67aebe665c44f60a630638bdb716ba7f5daac53387ec230a864d7da4d57a0211ca6a7f706dce6ea46310f8753fefb0d630cd2212fd6f16074177753d6521673689d1027e9b7be308d8d04736c4b373bb5e75f3802b2be63d9ed2d01f4eacd3926a8dbba2fa53b080b1cf41ce11f99e3897f1d3f079c058d1e155f69ab7a8f90635446c770208e974fdd1f26dfde7b8f6828b126a3277a6d24045a7ef5877b9a98032b56b816339e146ff069d7c4705ab6de9d19385af7c11dae13d0098d24b8208796a89ecbb6fd56643c49b98d4fa815c15f26322a2d7e5b8bf487119a5b6d21c3bf475427d6d31d9972b53d3804aacc1d2f6d291d8c03715e21ad50268e144f6b1ab4111f4cdcf0bca971d96034e6ecd2dd66f904c3cb36517fcf506aab522f66443f6a89ab664b48f3531e386586e8c4d8651daa5d0a20425c5160b85c196229239557b3f0a800c5bd0740a7027c0366c240ae1caa43e2df0485e428cbd4326a02d9b16f8030965f51cda1b74febf0e8fb6481ec355674e02d2683bc8b2d3b932c06946026b7025997710f1c517bed029f6532b2cb2990f40b44ae800c5991f5fc6673059129f5f9a7ed368d1a00f1a9a6078f3b790cbfe900a01e35ff40f0979add36d937a397ca5e80d17b34a4331bd231512ecf064525e64984c8fdb6353713c3d06d13103411f0e74b567c69497ec85ec0b1828bc47ca60468e7b4f230047c12685b466d1de31ef04dfb148de4d7c31f47cf23a4bba02f0b3d277ddf8385520a8b044811731c221bab4d964ded9bf62be598c6aa78352991353baa5bdb2c3bfe9ea94c43684d7f186cfd2e55b62079025fbfd59403dc356791731760038e4e78691b6d5d328f20b129376a6cfa5eae3eff27d24e9ec505bb217ccfe6580427895da2f2d5ffb5cd88c22cc678fed16b3dc720c1aeaeac188c727a68f24e4dd316141ee93bc5eb426e16c271811d4057400ba881e3d8e65a6966d69b386bd6659f3a90fe6e553eb7b51aeef507349c3823e91264c9334f8f0e08842af562096228210bdbe1487ff70f7a82e7370a2024533ad936fb6c4bd36a60eb9b41279416ee9ab9ed09b162ce4c0f870fcfe4b2606ac23562f0794b3410ca8f19c9c0e38186f85e7cb60fa83b581b795e90eca3875cac1ed8b73ab89542a320f36ae46dd1ae4658287f08160fbd02ee06f7144e4b03dc00431d0ce0fda5838fd9f6a185780c36948b96415cf582dd7e66afbf56546ca0deae971f17812f8f76ced34ad6e77eeef0bb1bd0882077c83f1a016298ed432ec874eefd51a68188533f543b7336fd90144f7fff5880febd22a2e1b8e83304017127f401811f4cf7f6a10d427edcc86619f9990be470a008a586f995d63e729e8ae4c806dccf968a971c7650f600ffc270fee039de3b8ef86d5e0dee2f273cbc0ae02f269bc2691a7daae5f4cc8dda27d90d06d972965cb7e279cf34360207dfc146d3d0ffb015597c84ce4ed91350e53245c01538151a7f3c9ae239495a14bd821237941572f190412b29648aa464e2bba641e82c9a58c84990055cc4be037a84312f0e8e21a4a1d82398af46503467a2628aa8f3d2d1e258917c04f6c560152c529f72a3f38b2d0ab71b924d4819ebcd1aca2459844c7701de8bb643e04aeafa09a6467636574c0e2d116e8141ae539e9a1743575ff4443bc0a120f3016e0d1b15c613991878734ac3552f01345818d8be586b2c0781830cf94d15da1f71cd94fbd9973b5094fbee90b30c5d27f877597e78e4c5f0b0a11f4abcd3680908872250a1ac5f0532f8c3aa07dfcc15ad117ff0efd8c2db65e1eb1219964d3f174bad52648d55c36bf38a966fa2187b757e5a64c698583eb84248c161f96fb766177566965de869a7d10abe6e25ce2b1046971d4cad020788d81470be92e6136576f75f46641caf2c68d6133fd39c249174f9eb98b85af0a6fdb5bde004c33f5b4a996f5c9f168749f2a4b988daaf996688aa2c338f7f328d1e827d9e55d36814c9d11a6aa8825ac4dea4e7b978fbb221022f1eecb567f4962d1054fad8f1971e390b36bcb2eab18eefa4b56c5f649e84b4e3978c53b4f7611fefb97b15ce0553a9f2bcb5992b87b276b4d04a79c09abb8f5f1c5a99630bed44ac8ca9c0bad52176cde170af5a4dc821fa105c4076387b6bd78c8e18a70f460718e37ddd23c017730075d737f98662c56e512b08291b1d6ba7948b50252ada2a792d6c31ade36919c12b7d2ff250f51c18757daa532a6e031605fd6e5de9829c523bf12bd4f72efc8411dbf44f4f1c7c65606ccf44d006c26edb6221cd386b7d3c8200d14bc95ee4d492a70910e3cb9b6da27289293f574c01fa9a9f82f655d52b631be4c36229afcdb0219e32d774ca54b946891c24003392dcfc396f43545ddbb9a3263dc414f0eea1694f7b56bfc58ca4cc74ba0f3ba1b85a36e62d7f97f2112269ce679c517990d591df814739b944f49eaafaeb3655f7987fe33c6811375a66a6133d815ac14d22731223b598182265aadae396f57d485de769a4f18ee6de962bf8f92a0665bb971f33345c7add830d3a37901cc9d08dd32c0bddcb66b69bb223c9195607ddb3ba34c7c3b90f411267fb900e382c70cc49aea4ad48485ac699401a66925f78ccd58289c2213800ce0e81e66f6198131330148205002e19b96f8e48040625991bcd70ea5b5157e8813e65317fa85fe92ac861bec90d85f424f65a6bcb912a1c800d599120670ebfbff5d4a57d1556e5d6d325dc7d0bd51f70622359da4f1764603046142d426a93161f055fd7c29056f678cb0310f4c3c21e3a1b6edaa257be0f86e7720659d9f55065cbfe50f43952cc98c64f48b857a28529a2624b23647ad1805524e54985e23b832cfcd9a07d20df9bc17b2f80167ce7a7032e50dd3ec2bb16c9c8cabdebc892d4256e80b9d7ca6b058dedbb65501ea2f07432c24a0638eb434d68d12abdcb8ab35f175080b4e228a3de0b78f7426cb1478aa36c44240023b67cd6eb627a18d4a4666e28217d1dba855ed737980f0932580cd0c85e395f74a9ffd0cf0771e55ce123754206bd31925fcea72ce2b579add44c9b89060ab31d4a468b9b32cbe5487134c6a3ede56b9e5a837b72a2b8590617d6dc1b6b54243abc02450b716b94f802e141aeb9cebd655d48d1772c7b959500e0b8cac41ec48fbfeb07e9d10fab2ecdc1843ebf60f50151d030021d2afae4c11eaa814f279825c059ad94b9f341fe0fb08125f0b3e6bba8e2c96c2305c9f32666173399482f79c998027497ae649e237728cee6ec70922230269bcd853894229f2368be5e7ab7b45c321e6c4c50722c188fc65e73edd9a3ed64a71e67ec3caa51b7a8b32124f59d2ae12ccb059ca2ce7bb83eb327f1110cc4ffb3c96749589cbf96507e3a9c6cefc911f07dcf2476784a5eda06dd2d38b8f7c80289c6365f46e9667a466b6f3068920f28ecc37b9d28817f2bd40303174f72cc285c40f95d5deffa3b682946450ec8d8591d69ca780cea80f2ea3cc08b7a5cab34e21ef3c66ea2b025f349a20261650d18fa98c6a9c3e42a2b4c63df8be18b7c7937ab5459f402ec95e615e8dfab3732ac73a5f5519d98b4e71b5613f77c26a81edd30e64f89f3f9fc0c083c32cbfd74a7b6821a19b95a356facf0d2417f8df3bc52b33138737ed2d9033356f59eaa3a013e6e059022e3f34c2119b63c7b288253eba857f1c8b7ab41091a11b48eda49a33aab88f3a4ff3a70ca7553c9f08601a46e4a78a018aa7dc598540e91cd4dd4ac5a643cfd790e6990512708e8d61daec9fde23b9b276a237a4f52dcdeb3a8a35f4b3f759ab087e7c0d7170ecb0e57abff6fb052520b107a674b1fc38af063acfeb9dfbe7f8beaefa3ea75205ce7b2f69eee6775846f3eb2a18329b33a47b0c9cfc3f22fe895013a2b88afa6de6bfb980be92a23fe25d636dcd82a9ec64442ab82be5c3bffcbb7efa1c85b1823de0a0d620e5b9a5763e46a29de15197230ea43ea044137ede8d4b93d1146c2937c0d4a82570847040407824b8059457946dc4def501422d1c4270ddd96c8e03879adef1e0b2567db3b3c1e486135e42685b4dcc58c6e1869cc39d3758ce591c6067439ff33808d964673d37c024159a913bae42f835d97178a41e5c9c78cb48e6336c6797aa19a443389ce276701eaeba19e2ca8067aa534d5d9ba2d2c778efd7965a171286fa7b65ffdd95bfe5c7d737118d2ea1b161ec6f00ab57e72034f0dc1fe200b4d411d57d6e896c78814751127adb453ec0f59c0a4d92f7882e1984d2e1da17be3bb834afa145f377e68e8a03f94f4c979b1e1a2f0a4f3771767c2b1c0e5f5c03b9e979ba1bac920b22eb844090c040118da9a581eef3ac3212ed3440b65af57796fe9e2153de2003523e595cd67ffb2ac10384af7cb963f8046a88b1bc45fe6563f84eb5dbaa092cc6cd39fb52eedc03513b861d36d019866eb16c209e37f6769b944a872aad5f3bc591c559a1a5a96d5c128c305d7aeadb56428bba11738c2ebe28952955c907118628e5105f92ae208a393593901a28b536b7ed3cf66a0d28446f65e648033da6d5a0419538ddb847e6d9d6e742a41ab459f0f6a88d29575cf2d3e5df017a6881866983cf3c750e0a3d062dbb5da925ea0e44f69fc9cbe94015b34c70a4ddf3c0c02ababf78cbd0b01747108feaaaac3a0557c0f7215f0da97bd846d40af5dfa2453c24c5fc77d73f7fee9997501b4c7087c4a24c0a91212475d0c0fd18fdf000c28c3b8b0175c3ee12bead90c7ce41112f6b366b99f5126a081bc37e7e06c7e2145cd5345b2b83a62332f21d8559081301d98e95663a75bb6d3ed796ffb47dd980c35ea3d2a5be1232876c0c0bd2b4d12bd4d3a6a5beb477c4255c57a9d14427e2b4aa298955da65e4fa757119933c0a1f79d8fb2fcbb57509bb77c98d2c2af5c2273b486c051c9a623df325238f96b9bee5bb0b103faab72f51690f3b7efe7d53f1b5f4851066cccc9f6e8b43e8b0339149748b1875362182a0407e65b1563be720692f84a9430214fc5e49454e92d9c67e664b81842147032e893b016333d673ee293ed2a59a1b51b9beb76e6074241873e577ae7f26400b8d94597be495c4f251d7ddff18d9225d19c048c7e65c0453574c3b817fa8e173f729bd2480e873b2a91f4f9d298655be8da2c3edf5e2844541ae744f1e56fd6c1973c21150f0ad93de83feb1e5f59955bb8e90cbc4ab7de5fdf55a2673bba9bf00f17ce26029629437760730709fcbf73aa4292916c187c4995969e56d1edb9760332688ab0db2c1bd21b9eef48f1a16cfbf205b4ccb27452baf1b841c912fc8de6833dde2e1da14a6839570ede5966655bb17123156bd8f95ed0e146f6361ecefa022c650f061b174b637b2d3f328398f761e128a6e121e0221decebe2b25432491b4afba458c55afbd15817506d8f3055b60fe9ca0fa3b7cee48a6467f0cda20e9c2777d2eb76330e9ed8d9dab5596bfeca3e2d49f3dd8c36f542da029bbf4a13b114c2d485a65a8f53da6ebca50ede4f8af1587422d78bc63de7f10b040989644ad814f8357e41958d027847837e615266c34cc89db1164ff742e068a9072a5c08d3602607b760fbfe34d74e87c69f43bfd222472a707da8f33ca459a4c08d9a1cb1870bb14605b40381d3444ef1dee9437aabe57a3464b6dffb58dbe1b5abd6e35fe70976363ccb5122e632de5721ed1709c5c8ae98ff488ec234b9d4c9015c1ab758be4a78596cf58a3d631a2afbf67381dffa363682038ccd3c3008f2eb9c36a955442a2347ebee980811c14529db840dfd8b2d0948b7044b6181b7305592845134e950664f1226d96edc5aa58211fd9fb1cb364fce27c1748965f40dbe9243dec8d7f3f95419e2d81270804996edc5c226b52989ac98011d9998c5815bf1775b87f6419853798b1f1e71c7f25e75d315fa682bcc832ac42adb4e91f04689f393ea30265b6de9e5f0432745983f40a418a42aed0867dae3a61a6ef394da8080f17371ce486dc64b0858427b241a922344a8c9ef9e9da2a6ad868bc8a911dc5b1c0981f4bb151d80d2f051c20468601cb523c75c72aaac40c25ba11635b679c609c6a0068963bcaa5bf2173a4b04c7ec4fe011d231cbd9336aa8d407644db39c04ef179e4222a0ec202a7350a2343d019ed1ce1a27c04bf98d1f223fffcbffef712ca888ce606b56417c760f990a2dc7652e9107cb1328b59bd2344213a08a3b3b001d7d21316cbbe7b1e834a87d75943f35e33e4865aaba80a35c218c1d62100d9d3ccee85441e550e32d3c543ab21c78ca382cb8ee776cefa632184765fe2bfbd87079c96c2dd97a4524d1527758e2794001b028357c5eaeb921d91de00217e2573e47751e28ed85c33540ca20328d010f5fcef2e12f606120bcee2f995f839b6ee61ace319318fad78addb5f6c3846a71bdd590df03c682397512757c03a48e6d276014437fbab93a37e416894dc58ddc0dc2b37a241b5c798fef52419f893a1929616255dc75578e554cbf9ad4cfa94e045fd323a0bfdc12f7ebcd72d8beb7623fe6812211a8c6a504efee8dbc75292a262bd752a738dc7e5f82d73780247782b5b9d5382af43f881a2f3f66a4daf25ef4eefb5c3c210062af0f385224a353f3bf31e13ff337c714837e7849a8459a819093d5fe93b2bcb533cdb921fc91fa9dd625344967b0fd320db4a4428b4679e4c7f3925150f093108282bde68b945045fd47d60bc64dbcf4ccc64461a330aa3cea7b37d480c9e384a9c3d862e47fa04e6098901842922384dfa22de236db3b20e5f29c2192970520923eebcb88b3122f613b803a08177daa1e09b6032c5eb72464f6cc699e7334cf3db706f1be43fc6e4f731f43031b830a630118cca8d7f53dbfc3e1fd5a12c3cf822bedd3d1f4f7e019e9774ce7be46daf80994bf7a055da298420491d1bec2aac584fba6b7627345548d5a34e73b54d7321e72f2b7d8603f760c365d5ee2a52910d57d1780e36625d69a57442421607462c48ce5cf81cb0e950dae9a7e6a4e4b643535d65b19eda267d74c281845a8b8d657a807fad9e7426d58709abc266ff665d073d2beb4e06aae5ca45fddd3e74d5c6c6f1d3d14353475ac9f0d7cfd695851893ffacd129a4369a24021e672c0df44a03daa2e776964b257a6a7412d0e6fa9a89c66a0becffa9031a5022b48ebca217088a09909b4263e604decfd0dd5296a7275983a1ca15611edb06ad11a79615bb003d47fdf729e0dc7efde3225dab8276c4a11a53afd84f5eb613eae20710e9dcf2d4e6fb6365087821d11171dd88059010b2c392f9b44a60a79133c2f7efba59cae3dd64871545f7a48bb8b36f093c549f5c5a52d09f037c367543ebb999f9f93e2ceff3929802a5eb0053bcc4c1b219c4cbcb1b161ba5bb7af5d6b4d9352f21ed06aa7733aa26e287813163c2b813e55bd4ba50746ff143b696e396fd82d72d229c0236bccdf78b6f1d7d9afed18b011a840c8a284462bdd2a22ac502c6f3621b497bae76bec6c12fdc393d2c18edaf2173e64434cb95bc56501411d0475a8e8754a56ebf7f55c0166a71a964df3f6d504c78b266c106686a01d03f0c97561f201105a3f1afc7c7b1472c58ecc2a5aa3c5349b3376b34c2d485589961166f02df16d9022581e865f21f3fad9c722b1d586318e5372bb9028c86b209d1d2a90f18fed0ea112409c799362a8b8bb33bfc44a0ccc1192b409011f6373e0cbefe75da5da3aec4668c2237d7d151f85049a08770375af4abfbb6bba017ec25bff1dd342cc68801c41eaeb9e19807c6e1fd8ca4c904770450b2d19d74b6813969cded9071a00833f44da12616d647aac9c8f97d60fe9692c12eca0821af10ea8058fa41ad91d0f0c276d88671eeda61d3c788d460e5b76c2b7c248d05418c5f39f6a8158a698260083316a9b25bfce271ffd16443f3c547a69ed497824cd976747cee1106ad0fad6a20467ce14d881bb2a146390fc59fc84ffdc5cc750ebe590994dd362760d060f5a050d0f43b90774810c9ecca40e6be3e19412cc1b44c3b97198bf5e46e095c2f913b2bec70f1c8cfcf5bf74a9594b052118c4e60c9002b250ea2f9e458f6502088d987ed21d47d27b5880b175cfefe924af8dc146d86dc668ddd104beb5e4291de152f8d97707b7bc2cbbbd295cd12700fdc54632cee7adb1adb7bb980cf1adf85b46201da7a7d4c66de593ab0df1555722b8575199e81e0cc450bbc0549422c1d84ad6bab98d5c1224f3fd75ab31911a2c7eb45f916fa231a687b13ac855b3872cb8b3ed8837916a124381c499c960dabef65a16f51059ddea9cb65bd509d9f9048b7af09d5b04d449eff287f02579ccee92a9704ae7ce78432139ca7b1ec98b42a5addcab61dc02e527be2d43fa736e0959203150a17b95ffd03d851f99ba915b18b6a85e32b3a2fd500b81615bc149ad301a03fd70eb8b3cb33bb799e01a1493e36facd0cc60fffbf23d487e6f5d2012437964ff94720f94e23a7807a361489c90e855e29adf1db971c8abd4e2781121a00206dd4996c38f130845e7a4b57db0095329fdcd3972d581ddcf62e7c12c0ef55a20cd0bcbc4df8270892eb5b1cbfc84c8170bd2a86bda896a06f3466a7394268f4f694d0ad31eb200fb10d6725600e74a8126cf692819118838bb1fa2b0fb8f8a53b89b41497e669921568f667d1ebf8a2c46bae348e2db95b4d2c2c8b0ed86c65ce46323f32fb126f72d1c571777dcbb935db4d59d993c50fe8c408453a465f058e6810a353029b6ea085c0ffd0a4b831c5aa52cc0ef071367b7f7799afc7c402d36ffad84d99f037df200d596316d152b16ef986dd0700ccc23d11e8bc3835c0b3447c3f8471e97edeb42c5dec0722f2c65d9974a01233654ee2cee40a8511c440439fd70e7838d57702cd543bc40f5f808213e29c7da7d0a9cc031db8bde3601114167d8c23fcc631b5bc18eda877acd4ff9bfb5031994f2c30b3c6aa13a122d17122798e93ba11d1563aff6d7d831f28363e96940cdfdb720617cf6e023ad027573ec7f3a537b9ce03b4f15a22af452b20cd63876486c40e94b01d67799483fb5e74280657570c4c821da0f5ae7db68416d7df88259db8e5d037e1b749b0c6c90174edf00030a5086844bf25257b522accf5cdd1bd45f82ba10001e716f734ceb72b2ec2b557cc71e30814498e796b4ecb3e7599f13f832b4a5266c477b203877946ec6dc192a4a8ed2da1fb2985c056f083cba063a5b95de2269a97ff9ef6b97bba42b95e8c34b34ada39ef2904e9a5defe9728932d489e66c56e89c629b159f6405d620d2cce1c5c865c3b97331d34a952777c22ae7b7cc023bc52ac108433ba099a703381a3e252264436960f35350244336e0f7af919d59c688f321ef656311d30822f2994a48de0adfbd7a2cd3af8dce7339c2fd41c464bfce575817612db5c656ba85c34c02cac162ae4be43a3daba8ea1920b99632800c1279154b108d9f1f93f2192555d3902cd3901f0891f7fb5911010507a6034bf073325bc969dc5accd96b046c63b04ace017ab9fe79ea384f15233d7947e0ab4e4c707a162da07fef614a3b70fc0349b96ff3d056d089dbed713dc85137682cff98333c221458b74f3a4f9365445fc110f1bf917c69379eaf9ed4aecd1d7a1a85bbf10fc411380aff31f68a446b287fa068334d0b98afd7c05c5c278edb9990e486e413f819879480fbc6f4191054083863fc2ea003b4d277c55b8a86a124e0fd7981dcd913a8047d06e81ac9df19bb6feaf5fbcb80ae8c5b1d98858e2643f07665d9ccb61dda46d2afcb907d8e359c409cff0d6bd710a2c59bf0ee07fd81e0dc8cef64b3500fc1759fc9cb05eb9033a39821149b9a0e7c61fc1f7e9035d09749ca456a781a3bded4f07a8990279ae9d1ada72efcef4e75cd7301d7bfdb17e106f8c6c9d1160a3b075de0c6dd95de8aa61da085c23e4f3889b7a9ce33d66a7c3dc498b31d5ef9c4160c6edbb9e8bf35021a3ad5c694b31f2f4cf452909e78de87082225350d77d0860f1289213a4d4244a78fe778b769e75c92263cc0b3fa2cf90cc47bcb082842ec9afe745dab1a3d9e16fa57472590c5daaa9835c1a51b8f0beb3c78b807391fbeaeb21fefe3c31e194df5b0d4781d0ffd49dc163ba531ea01f8dbb6203ad6211539ae45b355d215ada8c77c6e83fec10895717400817f3a8d2163c90e4a13711941116eddb20db71d23ee7363f389aa1b85162705bccdc8d0f60c31741f189341dfa66a2362b20c21ecfd23eb2f204e378ed26bcb733824342f636f7f096845934c07fe1e414b98dafb9dec2625ca2b652a2480f7ac22e4992d77cfc55b0ab7c8ce08c4d2ba986bd9a57da5003f9e11ba038aa974a92aad81a142620b10f768ca50b56f8774dfb43c313d02ef6bef1e11d0ab895bebaa88cf38a7864b4312538c7885f0f07736cea72c9be760d8b3e6a8f56b4115cf393dcaeb305cbf118d556c94e26d0e66cb23d1c8b4b51cc7b914f294ff4dc2b9118fac20c0453815586795f164332295fbdf969b15706fe1e34a03ffecb529335f3bfb922f635817684312d076e9e6e4eec5893277c9e72d0e289533999538cdcb6256b3986cec4349d90b6461a0943a82685ea4ed43171340a149ceaeeedc26f57372a0d3a5171793a03f15def36c510e7dc7f91ebe1f2bb3cbf12e79320d52311936dfae6d6216d341d9abefd92dd78b9e8271a0e93ed246b129a3da4a96dde82602f84024f34b3a8b65e52deef32387612c3b157df9e1df484fa1b6b8f8c7491592578262645f5f1dd0ab31f099688260cd654da290de13833d15b79db82a47c5798197caec1f0bc4dfed1774185e400489a7692c619adc08e00f5b08e45f90637f15026880494c5d9dfc7879e2236b6e53ffea0685065ce7585f9f174e3feb68f65ca99c443807f02e2c2d380d44e6eaa63dbb22ca3cfc51adb24ceb61e3b6ee548118804c4f7dd01d2c83b1d9d1b1ec45aff88397233a14a374c0a52d8d130f8c8652421661d1b1e6fc5c04025c1ead36eeec5af9a873a3b421a4eab094390cf8fc10ea04595985702a3f56615c9ac245e6f49cdd6a64de69564218ee582050c494b0361e099ea4b35bd4e3d5c088f385a27c80d0e7bb483dbbc9d7f1ecab60c79d3882b13f5311e5767c0bef856ac07cb0e931ee1f523000111a9f0b976daa6486ca302f2022a964f6cd32ce7e4a9e9034f31d22fc3298aa1e7b27972e8c97d3349174e6337c8397d613874147dcbba0c350fdf8271624a7b0b791cfba22509c13eb7e183059f2108c7d066222144c9d6f3f31d641e96f8d6198a223f3f5558f562feb8c6aea94f1883fd7b523147b40e3b759b92e21867777ff4fd9dc58177893e6a43c55b6e508ec4592a1dd27b7e9d9dcbc10e8d1d1318d8ded64362d454f698a41e822bf570885f428100f0a9497783890932bb2d6ed389824ea8dc226e003e982fd08f5800cfb08cb92cf937a3140730cf2bc4a15f8481a75f7134805553dd878a54817e282e7f6e7d4d74d8bc01cf65611bbe6c4eb9835e7803b5abf56df8bd6b33cbaf7913c2c95ef6f525997e882c758beb5bb7136c6384d7c1bc9c7cd29c39149b15224c979c32cd1c000a753400a0867c0a372979d9b36675359c10a2937190c832043357db409113f65d4a7909b35aec5c28aaef7ade5c4b2d15462a924756f1440c1d4f62e8c4ed1d9ab859864bdc321ea2b0aaaa5efd3dc5862c4cd05cd3d3b4df5b765fd13339578f35a1876009aa6ce7a1591869739ea26582ffee55c53506e2928141894da3a56e88ea1b42257ff9009075ed15719ead1dc818d09fa5e9bd36874ab1bfd57899796a21e32bed00cd72dbb408c9cb597ecc8553434492c448808d28a77147d22227ac30485cf2b48f9b74d92508157ab7a8fc430f1de06136b8a1f968607e911a5ff32e9dff1dc49d5aa4ce2eac5c4c859e22d5bce7171aa2d43e3bc78b82999888aed22592f6283eca93e89ce03933a935d132405ae4be35fe003c0364ec7752374bae31821bd5959fb7e7f47e8f1a5acd73b2360f73bb29c390e6aecbd8d0f5e339b7deb6166e0b3f75b3c05ef5538b023eb273fdd3ceb52612848e61acf89ecc535c7ed3a5b0c7cd950de152265ae80571250953e55b1f61edebc0121f4fa14662eddfa66d8ff9138441cdccb598c9d7adee0137e1a98941d772e99dfa02f620770e16a9bb9859d992b576e6304c61ce521abf0a31dff4301ec643154b78cea9f4255d8e437d5036953d739bc19f72b34804b0b15502b56104bccea9d4f1858b3df1bd8342dbbe4030c7cb7f481780ee31e81646b51c19108a8b4fb06737d98a5fda2663ae0d4302f85062fa3e762d493ca35b55e3e4708e6eea15a3f4e1b83c4a1005fedece4fe3b774de89ac13ccb4e1151fc30444ca134d0a27824a10d6a2c6685d2556af427d994b918a68566595b997687166f5d3eaf66f8e1b9b2830eb22680fdcf7980c2e7d50ef16e13ef55a932fbd62d200d6920016fef9822e70710cd9675d539c7744ecbec8faddc11e6657e7d12781ef7810be731e5bd3d8ecfb162c0098718587500f5f6c52cd43a3aacc2d924a466a2133968a93627761906ee39659804a1892de9711bcb9580e8fe8364b211f6309d535e036ed2333f5a544ff05b9a5eb57e1a7a96b7eccf616832d81bd9a9c6602260f6a989b35a8516676875534a3e64f2f640cc6a5bf694871f5b2e4869271b2c29bf8dab02890a16f65619aa517a4a67af595f7d20565770443e235e15376ee653ca0992fd9d739fbad6b996592b1215ad01356d3157aa5812cb5563a8da13b6ab83e4ee8159bf986ddb5649ac6fc1d5cf28976afbd9e286b96c5b994d7a54a6b36fbb480090875f6f98a7a2c378d0fd7de51c3a86005de79cc72107947718410349cefca81a44c7508fe9be4c1551ff13938fafd94726d24a36ea2eab1029461f7ef1d59de7296af133ef43ef80ed449907523946a541bfa8d69e7584af53de0d87df48d46ab98a442316ce61d9915246d07d15e2f5d1912a615704d11e12705deb4789fa738c0010630eaac23ab2fa6b1f07edc8cead815ad4c90fc93103267fbd4e5596a0a5b33a7784d2a562d8841c7335778825153e2d070c6b686f27128dff1cab1fdbf2bd6c7cf6480de2123d0a7410d6e791fa040f2845e5c66438015313c09cc50db7e8777d480d65f3e209d5c75d8c4add3920e2d680a6d2270aedc6eca9dab71ea3612920851fa009397c744f6a051965ca3883b7e29307c95d33e0448908237e82d61af266158064f26f622b6973487ee9a115c0949b8b5606ee86f58766ea71d069677ee17b1d4a19d5c49560b47c99fce234894ef678991adfc130b3b0729b35bacd2d80e395c0b7eed056e2fd90551c835710d118d03c3cb09f6946d462fe88adf10bfbd9b11198e3469df724a23889cce0c057d7329a047645af856b63448cb0fbf2884c014985924a770fdc4bf5537ddffdb59e46f553591ade6a3478d875627b6cc997eb22c5073c9a01707d6536875b199c15d6460ca125a808c927d47fd5fad7836c63ade46bf55061117fab636e6fb8bccbeb8f34a2b152651da912204596f5dbb10086a54f7b63e56766b32cdd21dbc653f20608d28713824acf3178366baf3ee07dd99f0f4079e15fa296fc875366b96298d21919858f960cd77f1299ecbf565ec4569eb677da7f4e81b0e49ac81c843202d2142bd9c8433e8d327168f5b1b2aa66dcc3d630ce61c3a74b496dad7f1f982810563b1ac765c30999bda31d7d99633ecc9072c5ddbc42a01f123584dc9344f91f042563c165c3974e2f00d09bfa79c9037a9855e81a08ee1aca57000e52e5d5f84f88ca494ce527bedeb21c443e3c3bd4319d7bcc072a2f4b624035d3ffcc658c3fd67d77ab82a7f77897fcc05294213b951868d90e0a3253ff948ee3a23dcad5515f0fac76512f3649b4472ac3a52ab84eb5044077e2661e1cfe326c3579b0af684c1ada90e31d1062b9db2c9fa036d9502d3c7f7be6a49e39b8145ed787e2c34075336e6c3414d6595fc42c5c31eec3a7571aca215f1f4069f09d94c350300c57c5d48bdac8a9a664f2cd87f7681023f52da84f8b283c0410caf94be6a1768149925ba4388e13edda384550fd4aa3c6b32888110a42a022774948f2be75f36801a0d4abbcdabfec0e3aff19321d4cd1b9940a2331989c5e111a61f2eb20d1e46e5b861605b10a88d150119f9e99062bd7f5afbd4e617ac7730da68bb006e27c46e1a6c57749ca14beb1f4872f31dbb19ae568e12d427bff204455398146c181288f686a102cefa45072c7096e6ff0d298841e2c834c370245132543c89e8505482a39982c65edeeb11721b16c1d3914a17b233128fcca75be2f7e47447da20725344d6647b3eff2087688d4bdd4f127f8e4c57177ca1472d25494512d55180339b2567454e5b7a5b67066694d4bf298a21edf1d05b5a120353a66c00f701a9e43fe8a05b77e0888515e9fa5b25e81e21395ae7117cb5e9c8524dfe387b24203727f7eec6220afa296b53787f1a9fb310806da4a757327c089a62abd603188154c192995ec866514d6eb76fd5db96cc6083df8f7d36f72dc3940addc96e2cbe858e099eb00b7e2a6d429799fcf3f6e656a0dfc033d42fd43ff7c66b5a67b219a651524f24a85b4515e056f3a343ce6a8547ed24573d3b9abcd354ff30d725bb74fc365feb490d9c0b2390dd3f2a96fd3824d7e06e0d000aa20e00f77898f861b1eccba285dfe33d65d7d8c2f29a56d666cb943dfc60547dbf0140eb941673fff0a2936fb2112f19361314b56047087112fe244ad8e8a120cbaf6fd3397b663f217547ce9c6102f36c99b7d2c3107536897ca0e199836e9560e2ca1856d8b791e301576e45948817786c15b9156f639166e992ef3109eda28f2c29abe4e937b4f10a85d7c6770ed2af85dceacd097e73cbe902e368f36dfed210f93394ad3201b04d22580464baa075d68557ee66e50bb154b2ad25ceff5feaae902d507b8834c0785d14af01ade4505244a02a842215c81c23ccbfeca76a8c4d8eced2133302b60bd6702e9f8e19b2adaa2a4e54007e4e0608f9ceff15a1125db0f44491b29a362eb1c5cf0e52e28e885310b56f0b461a3d15f61870d740269c719a098ec9e3748a1f9c1c91b07150847692ce006382df0d5afecba6d80f496c997cb8785246758d2606a697086f607da42e6116d6660b62abc3a927a803a3ec96c0514ba7caf6a3f9ff6c7a0697c7f742d4d59f0e793a01dea4958f6b0ba6563939c67bd639d355ce2d71ed1b4619bc81e5351fdbafa3d0a5b8cdb39c4cbd5e9069e2e8255504d9f6eb288fb868d033c02357632f1a6a809e097912f1ef8fcda85b44364f12252c19379f6abe52285be9c77a07678702930e9bdbf975269765f87b6f8dc425319d632cce2e4b7279a5a88d62eccfadd09bc0ee634aeb56336a59bfab4f800772c3fad7d0aa8f9e3a7a7e3cbebc61be0416696ff72fc69fb97be47ba129362f6265a199a057c5b68a4aa58b95e9b8fe9ecd59bfed013e98074cf0d673a7afcac0054801be3ebfe23862dca74397503773e7103718b34aff2772d5fc4a3458fe114ced375470ae6de01961e99e589c2da39c2a9f03cf9eaf403ec9b4d57f80cdf08ad0844949246d4f9b9f76c5fd877c7b07146615837dd6c7ba1d29c5b492bda45b4f56442cfda27590c7f4e9d431086abc2e49834a403edaf88449fb31975f82e143afed46a9bd0f4e6f0b0c088a2bf800b207addf40bec27315f21de0f4e9b008a4ad019006f617830f7a84b3857abc2346341230dcb815711d18e7d1deaf34956bad665beb404b0b3b371e388a741e8609892d3ca3c12c048981543bc78bb3f73a4dee79ab7b686a994c6807d5d3c192004815313b584093870c04a3b48c55a3c5e4d1c4e4cfe9a195f873586ee8bd6690241174d9693e0dcb307af8fec1f5ab13fe161369787973227c643fe5321611edd0fb08ee4899964694ffae60d716bc9c5ec3156399ef4bf3df5fd6c73d66b2f986dcbb37439f47166db10829685625b4f4144f63479523b4a2cb0339f9f93e50d19e6c13e235bb5e2ca05ab0150029e8c232a747e1ee24773f5abdd0c6890b2e6e574874c7237659f166c6bb3b816eaaafc5f235c0eaad1c773994a7a4e1e1b83c3dc4e14852398395eb25c6e0c5e3be5cf535ace36ac236eac518021806b7a9b9ed07ff18f70727fcba217a2d70349c58fa990e5aab6d18b0ba52ffc7a4785777cb6204475811ed16d7d7cfd92619c8ea91ca285070e95be12849b59272ac413701f620c1e66983d1e1bdea3bb655507babc391ce95cfa35cd247a7e32c5d7a954c44a794c691b5d37a75fe678710a4960512d12e5683140929209b5e2a9a9571268531a4eb8afb761d1f4c9131c5c3092af9fedbf57e8d5ca3f94d1bb712d66ba989c4485a7d9fb29d28244da1472b0181889e81de10bb8c567d8ca22bd1a8f39a4a29ca463019716cf97c9c81a8e596cb3deaaa6855d37ed74e8463cae2272f0536050847d448dbc4de261b7311303f89d36883927cafbff36f794ca9a6fa8fa0a208e6000109496a1a2d31f221d18c0b6fdbffe7800bd9448bcc9831a4a4347d0411b16f70da15195913f5f72c162cbf987a47c8fc3c83e1e3b016d50c49527b61a5306fac3d1178283ad6f63d480e72cd696b267b84aa21ead68395deb1352e9ec2e831dc7e75b66c0b00d0d7d9c3a4abcafaeedb0b27fa03fa62abd673eb042091c92968c4ce2259057f12e2bef54ed0c986a16c51495ba6a578a2474ebfa24b7907ed1d08d395ea4467d0097c585171aa013a8d2d24477dbca3b893d41fe65a8858bdd893c01a53336a847bc819633f3ba0ee51ed5f346dda7bd9e7f3aa57424f9ff93260dd057520fd73a24c1acf5be21d87f783edd1f3f639851c0bfb3e2bdd6c91928e07c13c3ca331d0d87a94de1fc247d97b33cab9b979e114ee31fc86b1270a45bc91479f2c9eb0f3af1ccf2e39365e1c434ead07c7b74e069d12adbfcc2536485f5fe3b12a9b661da56dd66fb3f702584cecd82dfb9332b8fb7b4955baed493095a50612fda973b2cee2275d89beb3946d578932ca367f08b5e05910a2766b36cc3e43658cf1a1b5dc8abb484ed8709765b854e25345930f974e28cbfd8151c5df6159d23ee940da170b4e377f23105da5c4642627f26e588d815c12a3370ea9719ff1c67a3681e5a877fd6c06f8b70d139bb064431ff58afb07d7809071906f5b8b877f01fe91098b995f6e58685afae9e40f190c4f3127e7d8caa111db49d362f4e19e8fdee5f9d0619b42f2c9d278e692b8bdba6950c52bfde636a3526ffa4b3a30f243dc817c846a5b58a83cab372d9e646c7c8436a2e52bdeed5d162df92ee0fb09008be239b4cdbdf1d1009ecaca4935e32b9e1913df1d546f88ce3e09b076c837adb4e1367f3eace90baaf88a70b21e3b369af602de9cf5e36ce056aea8118a70307ac396bd88ece6650420628ae70902b54b2244907bc2705ba2deb80141eff9417006b5cad86210ad79e7b29ef68753f34365bfa5a2b0dc57e984900dadb819f68f61bfa19d715cd1b29ebfe43192ff52dd85520a3a76b5f996addc37c55dcfbf9975123d6240a167d05e218d0e6e57d04ca51bfda27b479cc9c7aea3f03562aa1f1078d3543e75eaad10acd99efd7ee72a75a0cc2444cb0ba0a9039b254e54aff9a27a06fa9c5c182b942f8cdd70e7a12f34e4da779c9aae93e8cc6c3fdcf69d67b02a0158ded2a8e6623559dd1f5f8b7bc22624ad661f8d3d730e692b90f84822201991fc9766f6af52a09cdb34c54bd990eaf20b392c25d2ae5e9e4d8f6c326ff213b2a14440c473020cbebc119c128e5030ed76da1c3eb95fd0dc27f875774d05ed2751e7b645b0803e5506164f17f2b1ee8d7749f0c0abbd2811ef32397f06e0e5f6386aec3042db63847ec45891e0fd65b19fcdade8fa7d50c89ab97f864813efef433c4b210ead5825dbe966338be571d27f493c121cb2dd0f46c65e657143455963b57042e89365687ef87f837a00384a8d1afed7d5099c6781834f0909d5073fce66725238c9b215496a1578f2ff369c9f57709618b82d022aa78fe39465c4153a6e265edd2598c9991ea91f5670dec79a5569c96a25049b08bbe42ef8e6688a3ac09fc4ee472845aa515a8395590fedbe9fc2ced9d3856b286b3a8857312bd074a2a714133c6478bd3968a2925fad7ef92e9dafd149177e40224ebb90d63ea86034a385fe137150c730ff394526c06842127bc3e71fe7a8afc8cb771f324372b54ece8b6bbc12a36ec04b14f1e090052e1ea9057868705d17f39d32c0b5c819b9bce0892cb352dfb594129a4a07e57406280cb3722879c3bcbf9acd6d86c37836b7aeee5cfb3e6974d12e7d4eff243cc2e42324f28063d5426c84091c753c3c2afe9653bc60cf1388c8da1c29d6a838e9f794b1199e8faa8229ce2be963a8fa60080023ee1e9e5d9042c99d393c884bfee7da88cafa174a35964b6a793241cbafc6293fb0a466e9fd9a115306184295ec6f28831c89a5524240c2320e74f878609db641e4b386c2e60920fee5e2fdb5166fd2445360754b8ad5098e9f3530ac17b433d50f8e93fdf506e2f50622ab9d5cebe9b55d3ffafbed2abe795b428de7d1eacc48a14edf1ccac46ca03d757d1719cce812340ac4071f98e6770f73cc8406d7752f07fb0fcd9331df17cb437724922f39a19255afcd76f6898d00235fbc5d5c0ef8e86ad1cc0b43a5efe4765fae1a72d985ca2162b32738f3e13d4562b624a33484f6e7b58aadee0f473f753b31c3d5b249c1b98049af19a1cf1356c5f45fa514646a6f54efda864fa6633801097d58a782447990b4dc23a0e187a66c45c733f1e5bfbf6403abf518751ca7b13d5872374778869edf1dce00b778f12e861e3935e123c4191640ecfbfa8e3107dcbab2fe9dd606e9942108284f8155792131ffe23bb90a5576df790650300fe925e8d347cbd46de3874e0744ec4f83337c462e6b33ac73323a488778e7e1c95f60f5ee5803d486837e05a7306d99c216a2120c54f656f29f2636814c858a8ab237319958640eecc93aeea0e2fe3ba51f205b25419ccada06c16abf1b2bd8624895ece1b6bcf9c5e0bff15051990aa1926f6d4e7b65ac0523aa87e93d8475e335344bf4855cbc848cf9b3ffe03c33d068355afae91a5632aea4db3fed9a25971472245efdaa5e7e89dc9d9d7aaf82b06fcf4d270df981646c84d3a52aaf07fd1fa35dc60c141bee5b8a5d6b837994c0ef9a93c89d40d48db1a92991b37855bef0ebddad40d9edf4c0fcb9e393aa7b628ecafa72b7237b6c0f91d63fed083282129638f84d5ffea376e3a6b60a7a2432c3a82fcf5c118473f1bef98bbedf2d972ec7b92b9495149751937c60544d66f2ed1d486cfd4c40719049f7bd8c69f6d49e56d06cfc4583b673473e1bde5615822f8251746e01fd6b0845ac4249de20c87e272bc19a34bd74517d640b537af6a6cb33b3b6e6fbba46b4a01cc0a03f2a494254c94d8a8b4ea17a871beda3343de5d2005cafcee41c57b5a802c57a3f30ef9f06ce1ba39645e4a177fc347f1b3402f888bb0541ba33bb4886346e43835bba5fc8ea2c76c7948678b7d9c5e6d50941b81ca5052c6fc1185a8cb809bd4be207a8ff426b5b37d7dcec51f32bb977e361bdd7353774c2da70eb9e259e1b3d64480cf655f38c41a6e8799dc8eb16dd27f40deda0ba7a93e777b57856e4c623787d092df4e207ac00b621508f4e247a8255f425e54c2bf94606b71936313578de106d0aa5dc6cdc049b326a2f03b8f600345ec2d0be53d109ecbd346675b51643fe66755ba2603020b2c9fc961bb963def2a9fe2749a867605be5ef36b20592164fd2be2b2df12b549e07e39a6e40fee330b99b0b42faef35a8c602da01a1e7c62915a0bc2f58128e6a0656680e5ed0c38235741aa8fcdcbf40bbf8f4447b9f05d0a212262c5a97dd0ccd3f995457e0dec03749c50e9ac4f59c952db9b7de40f1c5fdbd578b43c77fc21d163e86a94d20d48c4c8bfe309d4c5cbc5482c411f3e58a7f9a6cb5f10b184dffc9ee790bc1c163bb3114b81dd5201defa43ec0948b091e93f5bc68c83c30548a8a5aaac461e4c3573485b6d2a3142481e13ecc1be00f8b612037304028e04e674f0d9476167a16de8387e51b780bea737f6dfbe0f00a294114da2d546417ed939487ed585813823c3528cbff04795e8687bab3bc229ba22aa35369caa76993b8a7d14bd5bbdad1cee62c99773ad3535e09e84280ff0ee0894941d3c3b0103570235040b6b560820dcb579e41df2b3ecf59e7a1ae3919a36169370cdc46d2406be8d57262409e463a6ed4b28b79c899bd3cb486842921fb24f739e4563445fbf9231830c55e7f850357d7ab18a078047e8fbe210c3dc2932369d2c512d6ee528e0c4e23734063e1895027f9ef1fa838adf2e42f5cd9653ee57fabb5bad126f4bfcd78ae030dfbc4693ca4c2d2818b53e572a5eee7bf34466a844a6ff7ffbd7b25624ba68a44eda3d995a86e53c9bbeec0ccc061791fa3dd2c0dd36bcd8fe9ea7ef0ee75e8cc2a10059c7764deee3168a9ae8fd13d6fdef66889ac1aa03aab9d16ff4c3d3eefb0a0d845bd0d2cff0756e76a9c346fc5865a08e386de3badd7f7ead553b264c2c027066f15ac51b7830fdbe598cb8f6ea1738174d27ceec3363492d63658c669b8d6601c72df3d37819c020ed58a0e621c4f3366f6eb01b09055474a0f9e71b16051e994a26384e077b081d47c008b31e7764937a8a55655b7d1a9d7e0a8eefdd49463c7a7532fec5e735c0adcc52fe8c1c21664336ea26c7ccce77f04d57ef51422592415777c33578cbb7770c0df65e5b78a2239fa3abdd2e7591efecdc822a110eeff1baf33b1d272622673be713cb6d73c14577387c482596dc9e46e743b9d517f56e595f90a6c3456a01253f5f657fad07684b27d8d790814267c9e426ce232582062134c4a68ead543ab16a26cb592f89af86865ec407817037dc13b3584e24f112f985a2138a7772cd0f4fec1fee585b6df496eb846838056b73125aea9958a8385de829eecb134c1e504a34dd0dfa4ec1fa32b62434329aeaf8488350652e6c81a8b70db6afab511c1266c3773aa4de64dffb8d1f32085f30882857498e20bb8f7f043f82943848ea5a344930110a802b3a229a7ead58de24ea5c8764e020008d93b12198a8b377ac2348f4ba78d76abcf637b15e38fb11d9fc255a31312d1224597980beac081f066772b6363c122032b00b68a6e2bd21c0989fc21b6e2902d0f793ab2e00eb4ec901d7664872c924d2d61d39c3419927110a1f8b11eb5cfd1ed0c33d88128f91f3172cbbd69d326fa000abd40d2843e2fa2882b8377a3f8f55b4d6454f0d68b2896757c7d8cdf91d66b1b43d0254a7232da088186e472f3f11fea67ff0c70a5a410736b496ac4139a653ef4242a8ab4311daa4320d3d0e0ad1468680253fc5444f38e2427f3842308dbf78dd26d90923c4408851ac2c6495958e1aabe0183484f1bb2ed5a99e3fc7375dc4dbca4b0e7065a07849158f582a8de5a4af367e544195d4202a192d71c55dfa63b5dd41a8ea0e135ceeee4a0b11d77d4fda7b1a487af23b62cbf13c1a0ddaf6f1868a224286cc5f811a2cf30c6670609efafb64d1eebd1ea99f1cad20000c00c17432b3e49b81674cd3bd663a2d02d1a0ffb3bd2b65cc7001812017809d488186e2476b7c09b7f734d3ce64308af4542b044257b837caac5fb5e2df38e36dbd4a1d47e006ccb2c877d090f209617118afe43dfbd42d12ec3f7f47629726f03a5cef31d124f33bb988cb40f07022decdd9e7174f4e5496d1be74087f9f73946df40dd4464056879728712d4e4f959df60f6eeab99c04b9c0e282df1ac314f19968a330956f71b86bf27c2551680d27a874edea3948eba7ed6dade6b354e045cdcaf1bde0781d239f8bb2187831a6495e039c1c4200bcabc0410e888e0553a6f6549fe5203b544b5bf65a64b94ce758975d344740477fff2cf82dd29cda8de4c7f00057f20f2f1db37168d2990a99d8dfd18abc598fbb0f6da869a3e36f188bad0c5e66a2dbd8d39e59a4f0b562a9333309021e8b03074065cce92ee31bf52dfa57cf73c749d7fae17dabd68030149f642d04f1ac0ce171b6a914724cef9bb72725a03c04e4fba2068172ca65294d7581444392c0992534c8ee4d824f3ff610d4f8aa93f5bd92d37a5261698f01d3482aa7bf1c19a34559a2bddee423b2f1b481edc0fd1995acad7399f0ec6c5eed7b53bdc29a77609816d943eb591beb298ba5085b58ab8bc13ccac5e2b9a8060c5aeb4b606f3ba490936baacd12f5b773a20f6064ffdf70e59f68450a35232adf7a00f88f51fe7ee15f546ddd6145c096d0e588e8308c71d0e0357ef63ac46e7e9c88dfb5557af13eb56586f9f4f8c0efeda861827b30ab15a799f013289648dbe9ebca0eedde60539449b26157b68a9e35aceb2a4636954fcdc51ee5309a42a77313fd854f245ecb9ac3c716a8e9cfd74eeb2d71e24720d0fc62946c319034c4e27ea39185edd44f25dceb69891526ca2c395f44f101a075b69ae1b9e76c0a0fb7f72b62f700387eeb6246719c54940e66ee44de3a7dfcabf1d8742524d04faabec0aa6446b8f6ddbf6135f54fbc3dc26600bef2a3145dd15d386aa6a3651b26353a86200a9e51d55eafdf8cc48248b6b09a3ea7925ae2e4f901cafae6f641e7248a2186aad25f684fa8e8d5abe5c94a971462d85e65d6c5f2b2d664163326da27ae719c75053df5631de5ee3aa9c7044976b00b4693798fe1976b3b98e019b9b1242a416f2663c4ad2573a6e292fe4a60cd77ba34588d66e7af353dfb0940d5c590024a46b78fc4aa01752bccfc30aa45a43b6f15ee1414be8efd4d9b4c2c33d7a617543e17afcfd3f87fd454864410455e73471bcab827a8440daf4fc6362a4a65eef0cc174c0950a220ffd0f496f5478871ae6d945bccdc851ef7e61c187b9b7aee5272b5e77b81eb84ca4df1531e5680481d31676da9b498fa24ecf32d1471f3bc662fe696650d2fb1604b24605630304784a26a1b302eca01d9f5596e9fb3ad15e70d7734c05ca7515c26f419c74bb0611ff1d9395a981f724ce3a75775e05622892e67eb420057c91a0d4e8b5659130a70464ca80be1e8dc154e436b78ffff03df7492fdc5161823e109f515a28c791e63de87a009d8f6843c862f2b07364fcdad41a54481289477904c8b96de603feedb1cc2986b9e941c282701020e0c8641a175041a8e16e3edfc402b1718350de103618697a96389e29076b02c98df522f6ee8da66c50da48a11c3873644041aa18dbe32ace1fd59f60050760e5bebcad69e2092d07428eac38a4841356bf0b228a0fa8a3943403794d344685c72449bb70827a36834cbacd868e6cfdb81acacbc4bf18c8ceb08a7f1980f3c404d2433d9d40c071ac69565806a1063b0cd863c31135f6d79898b74d02e2cba713a715abaf02e3ef40422e438a2dae88a50e212452ad7e9c5907e9442fa08104d97f9f2d3a4f3c2793d28c0a27be035cca1dde1031e4f2b67b4c49fcd9ae56539e7151034109a8b28acde2c71074d3036ea0f39fafdc1e27c2bb1f16dd056613fdf17fb4d3306f610cfd45fcbcd2190249eb9eadaca55615db6749189a5ccc501ba1c0ad6446aae9f47a024b82d7f627253895834f6e27449167dcdf51fec2061ceabf9e02de80b71382709eea4c678c5f4d662cbc02899e3dd06c67d8234bc3cd9808037403b3949a550215e03cadd3507db3d381d49c89450ffffcbd8b003276551d9fe76c147200827bdb7ed5b74d1c04374aad295a7129ed842bb6f659768b04d774c8e1b76c200f2e2761239d2104a442c9433aa50f8c0e5999ca06b784eaa500b7351cdbd47e5abae3648f4e4c263200244367b34075817f728c05ee17338b6710e4a39014af9659f33fd9197923eac78398f333f80b9878d26fae2c52c8d68e75e7a7f1925f6216d7d18ad023cae7a9a2a47f0a637ab146d345acbed6557942470188e9a1f74a0dc1187405f457bf5b10c803274eeecceef8e8dbcd6403ab6f6c312814dc74b5627fbb2aca5d5f79b473c1c0415f0201004074bea2c4a01693ca1c286266e6d166f71d934b270abad9938d234f59e6312deeddda27f67b63e764de8f6ef65bc3f52221a2456c2adc45ebf29a5647b2e439b630bf381593221c71ad2066e38f1601d892189dd869c4daba1275ca8177bc11242b8ec4814a9b9e5f2ed1dd1cd28747397ffcef485945e67f33d414cfdd213c89052274956553ad6fa8857675c0e2d5441445022d3d4c1302affa70897c5a1c6175becf730bd96b70cdbbef67fe9c90ce79e6b66d92416f7898ac1dea885a7c05e0662f72ecd106e9b57cac95cdfdd2d1de1207f5324bba492bcfe03dbf9ab18a79f96ca3d64cc36ff972f24cc29c77c1e57e7fd4f18591ad4289565255d1b431a84d9495e6d09ab52dbbe397e0ab9f2b0d5f894a4f7e9b51943b7977802e94ff255cc0e6b2e8aa147eb2dc2370b6e5bf83624033338bd91094f96057e0aed3c6ee7a9d31705167c8c5542b79f4cb2cdd59e065147426b60fd353c21b151906f701af9be11c7726b99d4f077d4fee401d5e068de6a721814b19a99de10b54ba6e7c21820119677bac41aa6f1452a83806fdc985603d88887fcf311c2837ced50949475d01b827600ad1c2d8f0a4912c68bdf9258237ad01f4576495617102a4b7fc6c91235c9bc133140656737c84045c7c62f5296d8f790f32d2a177cb3129ed30c64d00e5f730428c2f225b74ed7a34aa5ea181f572277c8f079c3e66f513b5941838c6e8f93a5f09a39b305a6344874c078d4a1d5b04405a4bc963faa1e7bfe5079fb05ae904f0d9f1c029d702ab2529b02d4c099f14bab2f3c8e036eaaa3890d02c2441bfb0ee34aba33c83ec8e6dcf1cb2fd63c49772b3583d89676dafacd8d9a3b1bdc6619454f18c50f50fe070dddd356bfb895317ed9a74e948a62cd0b9477a43a2b1ab28e405aa1a6bfc7cd9fcda562683e7fcaab99ffe6b4e8e65cdf9937b273e99d06a306dd069df258136828ba2bcbacbaf5b98d7d7754cbc5a88004db6665d4acf8a4efaf021903ac72bb27da104aaf3eb9d7ab2792fa48496f8485feb070574bbee6a7186ca14876d61fac50af28cf6380454510f932ada13af756b97d3089ebe7f2bd57dc71addc50bdc0355d92fdfdceb6e1cee5079293843a8b48223f599fec816a2b6777f287d62dbb415126cb743bfe7e94a6405f2d0e895d8269384aac60fa43a66fc96d08e5b1129dc6498766058ccea771adc2d8937dbbd9a32f13d106e2a58648afd85e3b470918e2e36ce4cf4c5928fb27949fa19f500b873ac9f4b0ca4b17316f2a801a468a4ad8ab5bbd5e9a499c7d4827f71bd65287b8 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/630872/program_output.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/630872/program_output.txt new file mode 100644 index 000000000..fd6260ac9 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/630872/program_output.txt @@ -0,0 +1,13 @@ +2690652950887981092105487857662255296011626012752189016494932422592792782612 +318375726713628396893264960521216506727972386704433219654697727306535670624 +671070 +1721464161421942823712299887410666239101540954911342952807203342687235872339 +2590421891839256512113614983194993186457498815986333310670788206383913888162 +1 +4333048458755315272052456218951806007811933151167279260738 +4500201590935370788298697053067752428216731915353881504674 +1780270321746081097970276934354344672724838367048896540266648412014106432240 +267674272179767811046066001318052491587 +89018504356014354452939512097715104575 +0 +0 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/630872/x_0.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/630872/x_0.txt new file mode 100644 index 000000000..c04f94dec --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/630872/x_0.txt @@ -0,0 +1 @@ +0x01cab333ee4c0b03ba79bb51bc537545e3aef820434c0c06e00235dd9ccdafdf \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/blob_data.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/blob_data.txt new file mode 100644 index 000000000..d99de08f9 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/blob_data.txt @@ -0,0 +1 @@ +45776989b8aa8f7837995c3bd762696da04aceb4c8021c8877ab0d42f02fe772001f5c8927d6cd8c828aa1729431c59455f49600062892a23727610a53b85fc7307cc678cf7bf183b8b6b6953859f5061867947e4445da75e7e53d423bc775a110bc1fb6c3f0b1c553e0a32ca5ebf81c93e5bcfedd1c70c05975d125a4ca17dc2404dfddfc2df02d6e971bb095c4dc6d93d1dfe75620298cb2ea43dd9bb805c725c7bfd1ad9043ebe4c847aa88df4c4a0082b2bc4fa6d2a09a2280f7171e6e71466910d1c321450b9dcfdc0851bafb9ea013b8c82a974fb73e552077c085b614205ae46ffa14919b8da4d952eaf7a913ee54f330a06adc5bbdd89936a705062211c0d72e301206181595fdcfd2dc9962887e274eeb94040e3c31d0f39330996471bc91d3d62c49c523f43bfd04c06c5f42fdb9870447f034307519ace50cb10025dfd40736bd45671b86d916903b42f33f6fb509b841820146bcfe4532f5013142f443394a77d2c0471b52b8963c02fa77715234f6874d90c51a0bf7dcdc069361782356d338a6c0c04cfa2677c0c18e93d763eb7dca54b63063e450b330d5dd56e3589a847139622b7b24dafb3775dec71b6e4d6cd60f306063621af941f41810a06c4ccb93b94762d3ee26022a321a49ab5c5894546b69918d67a2cde0f8930fcf2cd1f046842f2ec6bd077c3139d04f6ab4eb3aadb21a6379b73d9e3420ee1021dd2c3311ab3c0849e389227ef79287826d82d7520a5e323dfe9d486a63ba35b6c1bdba02f7269c7e3753bf18516df9314d703b80075bd976c1dd094ce67c212c716b5a90c6c33d8679090ca2b12a9715810cb871cc1438647c35afa947216777177973f9d5698e6761db122803afaa71d6247c50cc3f9117830fe9dcec026ef9e66dc8743aa3c3569dfcdb11fc9f7c676305004183eb1051347b146d77e872034a89d9d2231e5a71b2721a7c03414296edb2a766d43c9fbf02874f0787260af5b36375711c700227b43fed00f2dc72f73b463fc01d233cb98f8dd842d07a6c9558484c33853d16cc6cd4428db94547919fefe8e9dc29a79730a5c00b04c1127af92af243dcd896b1ec8d546517e461012350ada38e8f789c908a3e268d0753ec085b7f9589f82ed39cc060fee6918d83b2928c608c014c57aed045176a1313b120704f4711595213c5b949e3ef000861738f4e6e497b7759c4d0175d5e48405c435400fb62f1291fbd110435f52178d8c2fd132fd99e22e553ab24a68b71332e36571029a21c29ec0d5f0ce4ccc1cec26a19901904701f066767854fc5e11a77465c4f0406d01b6ba0e644da9b3580e2c61e17fa672e23bfc10dff87298a722a779125445782047d5738df8a6d30c49f3a73e109a72d55e7f0ce40e3ddc5412b9f5b351965280d64f8aa167b388aec397e7d47774f6cd982e9b2056e7d5469739d89a04859de0840ac4d1a0cf361dd386a80359795839a81e54599ed918b184c86879e6b884a9ade4952bcb926fb5a3c9bdcc8e3b016200aed56e3d110f82b760fc4e36d0dabe2656d0d40d4040973d10225deb1e6cf2aa0553c14f61bf94b88347506be888fd4d8c87e89961aefceaafb2f66c25ef4fb36d9787a816bf92bafbb2627fd6bf6bbe61558c9300c27f91056027ba12bb4ac0586d7d4aea0bd1c3ed655f83c563eafb1eb7ac808e3825b44e40228d12901107b581852b16557597ad0a0a61fadccccea61a60c636ed85f5ac42bbaa04ac35eed9d5e854a3cc202884e63d2b4e7c4aa3e6b845a7ae3726ee86530f4dd37652f006e582a26d7fb26283595c7e1c12d81404ebd7aed52123a94e30c74acae21ab59d899b4f18b143128134d121e6ba7c255f3690e4ef2c9850fdf05c62f15a02aeade29eafac31369b9053a12dabb13fc3e1a60d2b8f5e0603e897e555b85e4625483c152fb065f4aa847f496ad3ec43bb46f3579e831147bcb03beea6a7860c1d332ddd722a29312fd460d3d3851d2f88932d70895e8c0487c0c37f5ddbcd463a4975792a041a66cf5cfa49f52f89cc0193b6766baf278bb92d594640f59295c538523b90feee75b3839fc17e5649af86b8bc2e7678df7e79bc11600333e780500f1ecf16f297772586d83d019488f169e0e47d596e1850baa8decc6cdff844f4c48a445c68f4f0a6ed06a742f62887cc368b17e6e4c93b0db35213eb775f5e985189d3d7ef33b0fc2d45de644b266d28c504fd3964d17741763912fd35e46c66a6bac52bd1c1d3bd0bccfff7df0d14986a30d9e16be30977d90f3dc132f2d4493e8629904cddc5e141266b29074b2a17bc5d3d86223eb4f77a48cf7fa403435e5e18c78e09678064d59e1895c80a7fc8a4aeabe504890dd6b1f15002197726cbcd51f451db8e31030b47c08d0fd944e5aa86e0c5b92dfbcc9df72667e6d9a1eb81490a3faa7a1702cc091668e36dcb465b67da0f8099df10e4d0f1181d0984fe70b92ba6fa80a0bc946953ce45256c32ba983c16b9d30ba94a4678458aaa2919b1bfc0ce878324eb9d339a1fbef3ca8ce6dfc6887a39569eb15437d00b0f8d3f84094de2c83153dfa0e08886132460565dcb60b0da8ab9300ca8bfc4a39cc6cdc8434e81ad7214208c4e6548144a666c7827a67015ec1058cf68643232ad504a4105914404c113cbe6b6fd743c2f7992961d85433c47e81a1cd1e86b6952d255f45a6f7592c6b3c010b9a32aea61f7912ec631329d3b6efcf1b50b5cca1911f571040a78ee76a31c3da71b4f30862a4a409dba01074c38ae5cc16f99626856681b0c8c6cfe911306ec9b98c14df2a1f1551eca6b774a00a85482ae109772948a3b5e7d910f0073c970ac50766750381170606191edd353b3fa798f45436064d797e0716c2a59a26fee110832d2d68470d15b88bb4e8afd92bdd50f0ac597eeccfb013b3a283b73a7f91d905d40bfde4a3aaa30485fb285b415d25a310caee52f1c04bec2099ae5c677f648a2b9cd5628640f0c2be0a94889d6a46da144a2a8e698a8a05cb8ed816b78b25020fdb4690c6845c68c35a29ff47ed21b26cdc6f074fa5c706d290e93200e21d14ff985a938e5dec2b5d93149d0aabcd23975598bdffed9428366c756dcc1593792329fdd8ceb8372359893e4de3347d1ec41ede29c7e4983939fb4060e99aaa1c61805b09a9b7562df0d950e229ae2236109bc1fbab2acc82b45d496d60c883d3dda87b1783ba8715f407aacf94aad79f1bec39e2df072fe08aed125cc346593c5c348f5329551ebb0d3a5e945f44f7e7d6528c1c24c85a6a4a23715cf5f4a8266f301bbeda73de1331b13b547ec2baee331f60271361d76cc4d4e666b428351e624e37446f97566d0bfcf86e9c2af1126534f9a9b7e84b547ef9645b74aa3029e4efe2a3110b6b3e34862857084db8a3a1eebcfddbc5efa8516481398e7401fe7907d1ac434d207c56c509455879999c956fd3222b340c3072c94b1de099471e6f583e1171c7ee6f12082e87f7c030846bc19dd4b4eb3aa36bbd7c3ba7fe373fbcee2868687096c5a558f901f13e0266740225e92d7895648bf9da715ed0831973831a0d0b08c22ce7c94b70522ed34bebc5b76c94dfdbef1918f332dec0b34b557ca38bbe98804505e6b77602cfba6742ea1c087bec83418f576318140511f6224d577dfb10177dbb66cfb11dbfc9551ced7bf01ee7fa634328dd5de52d1ebe5e4da4eb9ea9d6c52568c902fc0abc04de55b6124ec03dc7d3970d26b6e4d94ec0028a0d126126753482dd856f8de27609e5301998e7367a30892412fda09b4071c0e55e3f3f41ebf7c32d3b22d2bd20c403a62577b1e9db765a67713d79ea8b90bb81b648425a220d004c6852048875ec9c5eac8e689e8aa64b3f02ec22d6cf9433db442e71532c1bfa81352d0a9a0c7422622cd93fd1a1fa1ba1492e8fc1db40cdc719e4d57695d17a33fc3571127f890b827d51f435919c514b58df54dbc1438ed6683b694f469b1e7bb8db3161606523b2938886b2d5a25f4a059839f261d7069e067a63e27ca07ed83c9cc50733a6ac1194897679985fa7081bf303ab22acf346eaac60658469317742782e958e96dc146c1bd2e8fd044b5a1a7d6d3857849f94a72f52a35a2db89590a6ac0fb834729cc65e524087a886d15ddbc9eeea52ebda6a8547b42b9d459cecad56329cab183d6793ad5241c6de390464c14a47c3ee69df7081e6bd1a8a19e3ca386468bad36ef824bc80e143f5933fae9b6e5262941395852f4181e73ce6e7a0b3b693d836dca90fa25cfd2d66503d28855c0338d7b9559827aea16c1f67914753ff6b9f511ab4f59d8cd3ecc7b069172f9b59be24950c6922ec45024a883c691c8cc9aa59e33df45dda78f9000e3e7d2e93db1d4eb50c675951a32ae94f63ab310927eb810690b39bbcc78c60485661e0e6bd7627903d7adc184bc23a4e3b0da81d6940bbc9a1b49d084d4a256a52777ccd44f52f0aeb2169197445bd23daf60a9a258edfe916df808fcf27a13420e901dfcab2a7a66800ff5354fb3897511cfa0fc8775b6b85a00ab70021952f678b00f7a85bfa973a27e4f02df7efe945300882dca03549a4a8f2417c05c5103d819cfa4a41af26c33193eb15b9d8b4eba27b82094663975f1737ed90ee007c105a5ccc2cc15a92f93a3888851ca88b10f033b75b9860b0687822ca52ac408d33041f778e225f1258b188aeb56c85c7d86c7bada4a2d65b433d9ecf04df93e75f206c6d6c062230b37ce0631d98c518906616ad55b7188a717e87c0b8ef37cd2588f6084acde8d99b65c2912a55c3771a98a2dd921526c07b697e817d1e4d602dbcc8cf76fbefe8aa04a625bcb7a17815aebcf0cb0bd5714ebbdaf508b6a2461628397a1f1a5b32db4702a271d02506edeac24234c54e63bf3d0a82581a1cf42eb73cd425e4bdc2ca9022892a43abc0a44e390e48f0337bf11dc95a32e7687a565117f06f5c797c9d28052d577740b462dc68fde780b3337912de00e4a5e0c137714f7a9d9220aad06f80df1a84c6cd761acc7cd28caad1fe70cb6ed07e1d86350a1b2168427dba4782c5103d50ee9f4f060914063b7bdf2ff35a7f32c3d07d0fa52131cabbb86c2c0fd2b288751af13373e9dde7e09dc411d57d3094f375cb0bb99ef1b70660333efadcb1d745df4c29a4306f504c757aa7abb55b7b051f2455593076389f3c0ff68c40ecccdd0d94b48ff6fa9e0b71b91e9e55d736789f194718ced83d7f63998dee1609ed24fe094630282be3c5726424a0065d18f7a6610ddc69e85b9b85da91d88355c95ed8c2ef2634681fc4fdcab892f06a7772cb7737752e71c0627bc0f0c4620b998ed7d1251bc2f505b13521b5583ca98adfca774dd573917f4f3cd7bc13dab48772614581a0f7b1ce8c40b50f307b9a833dbe983ad9f36ced3e0e5a6c256861c0d94354ec49941426d246eb662d88d9ae6ee600644543cd9ca1c645d9746d5c54f9bed249be25b4a2b0e36ceb78a7f3a44f4529234b197e341186d6fc78c2a81cd656fde1d42f0a64e7739d0686193ae32dd7f1535b9cf311d40c53c64fa028fc72ff095b97dcbb1e3a508032afe4f21d538c474f0f24c74a16bfc9a8dd0708812ff58c3fca4a05711c87877aefc55f1ecc45b87319de158c5628b9f500cf160dd0ff42d9af8070edd047112d2e0cf64f4ad6da6c88686b6cffa81c093e68279dfce9fb94265e71794a2ca5786ddff55f70497b4bed47bdd36ec87ffc2198ea7b5bccb39d2c26b43bc23642b44def1b79fa7ded3318ff074bb75ee6dd4180d58b5196e488c502366895f607c82eb5897be185e2330ab73c23c080f90f9e0123bb6a60ad2f5b7437b67d41ee28869950042c7389706be27447382f6e8a8b108d5c87a2dce1a5b417d24e749bff7789fa14b92465072592bc9f7e65f5def06099e940dfd167c589d2ef62a12d400bbc079bd8119f559162cbaf3a57ef20ae424d626d049b6e68c4ee9173fced7a2af594a31f82c95a5b0fd57af111b65bc783d55c63865e72d76b6cd0ed5fc25dfaf2321bcadb7d169ca1fcef6569afbbdc7856e6357b0ef4bf4906457858eb2327690fc5e373521566956a3793ccb7d9275b684cd5061f08cdf4dee8c2b1160db52c0fb9c5736b62dd2a1f93b4bab1349db8cd42f9655111ab78b60009b5e60f3e1a1a0a1427d92f940ac9057064a5cbdf55ac6e246eb24f3bff8ca03a37658ee1d910687417d10d952e308eae90439b78567d6e251707f9ea5f6a76145538b522e141f2cee67b2e78467db76853e452f67440d8e3212665ba67c43af9b49dc955921395b80e412b25294589046d63e90229782274c81f1bd7cbba38f3f01b0c6676dc2023a5811b36c62f762fbce38dfaccaf058be41abc6ebe7a4b6072127cb30850675e6e0e05bc0b1e0072a3995fbc57dcba295a34be4a6fe7e83b32e78b76ac81eafad88153ec6fb8f96c3d9ceeddf908ebe3f04ad619b0df0e0128a2c8194cb049dfba7d387d642a5f42123eebb510c569f78c4866957693f35e6cd4def3ee7a714cc40d4972d32f646268bf7517bef4d521675bf7171f7623711bbeb41e6dad1a749f0d517e5fec738cbf2e856fa0b57c231f91e3dd758d0b7bb19dc8399203c0fe9c8524c8e2e495e45f5e9097ff9c7b345721bf6a80c3441edc6819423d6980266d85471ea47310c8b401adeb4e7942b993b267544938025cf2a3cdd35a6851721b3f434325889b6701921f34aeaa5f7bff9f86a47c841a34b3ec26522aa9c48cd9585a634fc3b2ba874a1f9ab0de32799973360a2773410b60c36104cdb8591f80f13e90c65f69baa61a098fc384fe2d24c0a01f16cd4aef78f54562b3b6c97339ea643965e8cfa2b2def54f7a1a502b6d75db97039080143565f42f922309ad43bb6d2ed40f9c9e8010117704bdec7efa6bf47db41682b457994a64356ddb77d2ef1f789da2d6c4aa9225de0d95608d64b29b2b76816f408d551ee239589295dc7041cc703bffc5c6e7aeea919c56e7e70036f895be7cb5ec47414c456d42ccf647732fc7940a6bb753c033e1507dc0d61a25fb812ac622facc9af19575a365a8dd34a768e0fdfbbe57ed8781d1189f65c7f80f94117d5031fc1db4c218aaa94dd02077dfb17453aee43813dfa5d9428f083674b4237bc0427b27c27864f48363195ece52a0fc8505369686982f2c78bb857aa9c17301c8f0521ed1d71b3e60b2d61ff26b8fc8eafe72083b6921652a4b8a23aa7131bd5af5867047f4205e8bd5e527a7fe02eb53629fa3f1d9ed8d569c5bba26e51effb9038824f19c769a73985e14a3d185299d1a7bfc5f4d42c2e2ab4a0b550c7871afea68cd5b02ad1e2114c72b9cb3f2b2f52a4f15dd22fa77dda7cc9f7a6317b1c90d5e32cfa64e66a6a24c667a8bcbc9a320bcf167956120a5a96ddeee52c50bf7a7a34ff84df81d46711964a7e468fd0e695ac8ddc3bca604353b75142bf50e1d4eb90d1fc9af0fa21a390ecce0b64f964379aa341f36090ee872c97a87028a00fbe638744f351440233e6e11095d2b8f03a1fed41477a3b421711cb112ca72982c20ff7ba9313846b09469e24e0cdc25bd4826604eca4f3d1620dc86d8ce0022e72c6ba06b9956b6ddfc403541b3940233ceca1b82641d2bf8b1d1083007ad66ddf645beeac24a2e2dfe2e27bd05bc3cea6fff26c57fcfafca243367e07be1f8dc5732d980a6f627be9145643da2625871edaf4143f45238d5105325cdcd58aba23e8c83fa2216bb1f1271461009bb32a766b60c90a60e4de8f41da31b0b7d9c457216506936bc8c4b0c1d184cdaea3ad7ebc856ccbb1f54a255d4373d43ba64759bff6250783a9628a80f8e9c4b12ba4e3c3f689b94397d3900a49f7372e13a4cca18804012e9afb9c14f74c1009c9189de92604a1257f7a3714008cf270a63be46d390fc1490eb246643ab2c01593bd9c1431e9c333e4fc75e2a64d93985f074f2dbbbb3bf6eafdc200390e3f4af65e1c6d854ed8999b9ef0e819a4d78ef12bd09e02e8c950a8f51885f6f5d3fe77fca46a4b24d4987735a65f4b00207d5a6389bee358f050545ae7a16205016b75cb1abe2858016a8bf07d66d88958c26c88f5921f97ec0d12f1ed94f15e5347958fe6125f19cd5482108f859e6255dd3605510395a7124ec97cd3c4733bac69b0c0157b82222336f02107c759e72976574c7eb6d80513b234a08203633a38d67398a95703320ca22b892b439aa8602281154170757008583a5d61111077231de828a9ca68faf035f3e3235a71005221056c61ca47c089f4e21765f7315efbbc4d4716ee6ea29d2dcd0a2f6e0c7b5966df4dd48a3165558fca147df41339ad142dfb2f4218da95ae6d4f56d586384b34e55bd9fcbf4b47aa8b55151358a42bd8a56d81e45097f19717b60faac030c8dfcb5dc530c9c6228fd4880e1504241c895289a66b586d6b42375ab4e9e1c0f2e08c4630c631015a34d9eb648364cdcc9d27a2727eabda8d42050b2e2fb8668f5b6e2f8cc1b5d757368e9b4ea0d8b895f9e6d1ffb3d7b038a0fb531e7c71e7f7e2beee6e78f4ff7d2e2a235706dd4e7e10ec0b5407a35fa378468c317fdb320ce3b72312dec0399b2142d90025d951f66f6e8767150cc0a1c04643ef7fd493dcf7e33b917f70f4485d1d4c2be21efb3793855b615cec55d0f447c067428c0523d4f7817aebbdb9b9d253c06d9378c4c6ef3040040f8b8421f180beef7c4d772033ea50ec7508c02bbec6f6e9963ebdd9e34b6aca3b255c465a1387edb8e4f032301c3788b552043e4ad9ed81d6d2f466188b7a65a59d155aa6418bd92c1f90fdcbb5f303dd67e100562fa71ff4673d3c0f874e6e5807b8c6dfaf8bd5e974af72eb0b6f6041bc4eb23b557f6613c245cbf486276f05ffde4ff3f21d6380ceb30814687746380a5a574027f2722552a613e6507b0a2937c206f8735dea2864169b9b73586e8e941c74ae6bd02010d05c31cc4e03de876bb74965ebf8c752b914140162d09ae7f195ee6eef8095c318eb06079c936e9b6c3167037ebc1ac93b050b66b9238685f3cb0e1f3464fa26b9bdbc6748a6da45ea0e7ac17c4289f19eebea4f2fb50bbda71d227b015b9da1ea22d582d9686b4a5f301f51bafd24a8069b91b1cd8d3e912b05eef98fdcd80459eb9ef71d42d1654995c0b1051b8719daacaff01259bd105a8d313bfbfb93002019700c4e93d26dcbd2c01aca5f2eff5ba8d5cdd6d7d632e581654779354814cc59c63565d2ebe6804631fa5955518d27bbf8a9997897403a8d355d4cdf7b9256612e802d8839dcf34772bc5853e83706006d2f5e83347332a0f75bc44305a0d898ea4a08d53a031f3ab6f8b3a5409af1ab2f0fb40f707855061ec4d3a76e8261cef2ac3566a3cae501d0bb6242a75742866b65564021d79cc462e8fcf395603431bed0882091ac86f8408f4d7981d808207fcba899e4def445307556fdb3c399a179c56f07be0d9e925e49befdfb2c0086fcd45a40cf7db6d3da746b0d2d03ff57324ab6eb8b012604de267c97662d416a85744e50a6d1b322c73d6524e0a71d4bc2cbbdedef3f4d63afda53ae6851d4cbbb30acc16b95cc9ac2da0359eab34ab68cdbceff0b7d52f67de95bb825de9b8a3e75e4bb9e12eb335a662a67ea0472e53d31684877fab22c39a639053772406f75fe96226e736c2d543c572b8b55a5508c789965b648862baeac33905c4c7b2ae84ad6afad1fe85b6b056bc05010a7908546af0dcaac969a7768f38c09456df1db422932197de3c843d5242ae506460642ece70c87e70e7b177f845a20ce74c3a6b05574ea46037b0d3612453e355895cfb7e004fb956dc06e6b6641ae2296342eaaacb489fa63ce654f6e3da3e1fb3ee5cf76112435cd27522989d162203cfc786230b691c1c00422ebbd1860570873f850ccf9e983ac29678cb9bc7ff84e21d7f817b73727e5fa96cecd4538e2a6b3e16fec9554727937cdcb2f37d9a23890c7c3b8e279e955d33ce1ace0cb24ff718921d8cda010bc9ece0df33c1b4738d0efa73fd2293220611a3e24a97c27355cd661d218a52a5aff3b4c2c5782331406a42bdcea797862ba19982faf9b55e2604bac779d9193b33b85948ab3bf2c51da5ef9e4968d4157fc8f3bd5953f64adc6f862bb5581e3dc0e1ca9b1e24ac6ed69d142b65147aad14a1cce8bd71a1599a4deab618edcdb49afc38edb18869e4b6c8b22b70f2e9ab7f7dfd200cb4f971da9ac05be9bf537d8fde14c6dde8393362147c2f086d99510db7d31356ed1f3bc9686a099d4f1a87fddb045bdb2ada3fd79654549d454e25037dc582103af06ec4ba648c92a4df0abcc88d452add92b32bc213018afe0616235fa67862276821dffe9b47b100a671d7ce7f28eddf1d7134417fa3cb3f412e1cba74574c09e940c1787e3850cee3823d51075e62455f6a145a90ec2065525e2a707a825cf79d4debac8582d9c3ef48d8020c948038feb512b89f28bfa4ff731494351dd497cf06eed9a5bf12904a819256d82b703c2ef9622fb387a2c2bf18635e91f67387ca5e511d51ab84a669a73443b129dd04c8b4499f900bb71ba5ccf2eb767715a7e4470ccbe8df7d3ed21397910538fe463d4d2d4344b13fd47e57a90cac2f0cc6c24ecfc36b865d9568cca99c1b373d5b32cc3db9abf4d0bc1f212f96f06a07bd632702dc5adf8892b0e126cbb574aa7acac7827629cc6380647e5e1c450df7485715f92e67fce41d6d587ebdd1323f7fa55f8b98069286829b633399995698f8b1187255d73c8cfe98ff794d22361e66c97fe963d0f6633844da461efc18387f472a0e7d1cdcd713cf6643c4586c8ef6caee92680a6ab696cfc253f4437e904def0e710fc92a7e404431e94cb77256a602e135ada2903b767def82c87359656c8f1b9d08b2b9f6a2421732de37f225f8f461112d19055f2f38b551f144464289645ff0d7431b99dfba48f685153b1a2e17570c1b968dae0281e6f684a642a6315755fa77871074d05b0db33389f0d8715a0dbbb07d7177a6fa3b2ffb9788e492805779c06caebd378a74d15fffe86d5f7927aeaa660d125f7909c6a21ebdfec1412f291c119fa261cd49bedadae74c75ef13aff2615d1a92dac182eca7221cb14f57f64048daca0be6e7af6758f6f61a4290891bec9131623842d682ff9c48a4db0f8f6f904dd14d023ea5535437113325cc8e77f8c1631c23280165beecdeb3123d591a396152c06c1c97095336134717343a88fea10b903601f469537f722edb6bfd4bd2000a42b050c90cbbc6242e0f9779523740962b3e0308e7fe5ad242f941809a0c2092712922c6af373dc451938ff469370666b6fb426fc5231a37d28a1f174a98e1c4647e7f22a69a5d10764dcb29aa3b5315c993d44da1cc138d8eff64d2aacc268c5742343edabbc72968979d680d51f51040125605c06ae6d6ec9a57055801a2faca878c24345e0cb7467478a9d1e2684c874ba9445a58d1d7db6d5bf0b6ab2081d37766b9d0053ecac300dcec1d68e1285e18bf493556c3a94454725ed373a8b50f175c6eee8bcc03b83efdf465a4d984f70c7320dd325b4142161f58efb9acb031c3fbd9e234cb87fef672bb53e82c5639dd40724b3c2618121018757932bb96ceb087e819dce2aa09499a32f4686ec848e1efa5e1ccdd420d4e1fdbade63d7572ec8cd259d1b8021a6af4d011eacbdf4df2a5f169d3b65b1960459a933cfa70ab40d4f2957e7ed9f5d30337903ab6e712ec2f9988e193ec655b6675cec1525c0b603c074358720f452ec3142bcc79cae88d27def4117f89ecf872189a9525ab763598131623cb44dd6fa479eaa22102b49999bb85f3867e0596662ec5df4e50379d6b4b8965260b8fd5a25806c17ce5ed602a4ce2261e15505e4296d66a3ea218ca7d1c1420dffa7c07c86376b35bd57bc20fe2fd136acb1e0772d965a787dad13b820873d4c010676038514daaf8255e0387b2434488f9d82e27ed9e48308013cfdca548e9d925af57cf46a55cdb9d1a78f2ee33046f99a18f3a4415b351a2749bc03eb3d44f8e19c65ceadb1e8abddf959ed9b016562f0e3e041c0cbe518935ca2301cc9e9adea95972c593b0ddc23d65ccf271206a62f520006f47206b1054116c07f84f614a0ac9c04d2b0e388ee3f82141b097819612130b8beaa40594e307bfec8b9f2c03e239498406f0226a379bc41887757bd2f47c5493fe3302844f2d1ada366f06da8d982df7803fa4a62b749cc8fae669126eb0712099d34adfd6ca61e5e5ce81b240719fefbbd9a9f6cbd6777bdf6308b35e50115336ebd05339700c125fab0e8780e5398475c9c76a937c056c530f36d4fe8252cabe19e2168b0a558980ca2c37413c1bbdfc89f9e87357a6f42f58e5542bcc4eaf5520247aef71633811cac0a794944a9e51580daa1836146a0d78037dbc1d3a9cd7ea9336fecd70eea143e40062fdaeba78dec2733ba81903cab677ad21b36c2f484b9e6f459cb1d535d73461b204030466bf3d150a779e4b5b950f20e1834af46c7175c30e517babd7613d0ba504b73918f6042a96964560a6711dafc15e474bf446a411195a700ad13637c39b0246f43bdfddb6e0b2a02fbff0741c5df21798b1b3b108f4076561e227872ff883e35a1f358316cbad8f11334275852e45526187ce01d689e5d53f3645609e4b536c4b7e28aa8296242d0beec37a247b54061349714e7949150fda22e665d5d16f70c20081a6a687609687647e9c8a3c60270587eecde15113b00747fbfd28dc1ea6771e476a8e4063626f2c5b0770af8e41f8f660edc65ec8b267516d0f145d97f861e5f99209b9f4941e2c0b5e6e235241acb20a945f737eecd0a06db59385941997a3366d25ebf940c42087b5b7fd2c4dcbc824c6daf585c848f3da72997554d278ca550c6a31b8f7b7622f1f4cbb2e51e47a83bbbd1eacfab1eb6b69a19579d6edf4a173beba036a6186495610c9e33ee58ee28a62fd16f574bd2b0d89d7b7871ff71ee7400f3b7752f39cb5d0a50523ef923f984dfadaefd6978e7b17205d9914e0ee48698286f02ff75d186f458510139f1660b1c7b9b2ad7c00c2b56e248ccd1473a3fb7b9461f9124eb0090fe02a62e7c9254015eed8952449e91299e8147e1a6570737917bf239e1d7a55d85770e38c3e2eca28036a6a64a9b3904468ad69666ba4f572213c46b01857961bcf17040b943fb58118aee24380ac5208e2169906867914d162fb56be5dcf3c14c7123d98f71998d1667719132ae64e55700765fd828d518da49abf4417d3f8eec8354e75b6263aefae5ecb02d0e031ff542d8bdcdff040afe570acb114c70e63993dcf7289f5ac68454b128d9bdb6a567bfc9df9912ad8dc0bf7a472f77bbbe16750b6a40b135b23248bf91089d441732d362d62345d5c034b54bc36ada4bc46ee23ed4ce6cb2d186160e386db268b845667ea3e9f9ea2f211b9a3cf4fed3bdeff5c3ca4119ab19522ce3f071399fbf869bf8aa0fc2eb12cd068255b233fa6378f2c81afce3811f3136fe9929dc9e7bee950ffd18bf5aba2228a0aa7c5d805086e0b7e9c2c1453ece2cd1b4d5962a8554e5f573cd527fb2736c192242b748661be2884f9f924ca027d04b5d809d4e68c4b0ee9a990f304be46209d87bcbcbf3c1670717979ffa28f3354a5f80bbfaba231dc5dac8936f66be88e543b3419b2e42c2c9fec78d5030a76a64489260789406940785a10f7fd643219073a92ff27ccca6ceadf78d75ac787c50a860641db7f172543f40299f83079bf9f001638cde6655652dd5c7bd8f54e07356916bcba5f3382bb5ba6131482d99729ceda5497e0323dedc38c4dbb90abcff02adf3266d72b46254e3be94d2bb36facb17bffeceda128bb9b7149621612e13ac167b0bfbf974996f7f5bf4f955a095d0ce12ee44d335b887b3d012c9cbc1a76e8e1f50e28bba48a6bec0df42b7166f7019907f147ae4d782eacd2ef8d0a7304126be77dbc390120f673ee19c1e98b8a65e614817741634bb8f02401846f0df40a6d7eed6cfd05dc1c9f3301b26d1cd722e19de8b15b2b042863bb11065ca75040ae62914dec9decbf73c133b06e097d097befb9b6ec431b9bf35223a1f1ced565473582186ffb09f2da456484e1d289f29aad588ea671dbeb1212fb8b3a3bd1374db5b5fbcccff5bcaab7de9d7f8e8ec0436d4b3dba38d458844c8893d2c3c33f414fe3235033d33c21b0373a464c209501e8b0f9fa56568eddbdbe14efac0fb8e46e87d916f8a7846e71f5bc8cbb4a5a2b5790513e19fb4376c9072fd008513bac6500a74683929daeee7a7774bdb33aed891c29d630e8ea2bd317eea1240a41b4f56a1ef86678b11866e48e578b68bc29fb5a136b4d571799bccec31ea22628134b3f7c92c9b4675641bf0172e113854d51c0fa620c73f04a538de2b54e50d816c94243dc45b4acea3bd4c5e71fdcd8c4b34eb16a61339a769beff83bbc2bd516942ae1f806053a9f9600140d95a0f3d60830604d2f886c9625f3bfa0f6b2c583d3e124e673b9f2c962cb9a9b084a2575e45e236945ca8edc60cd32e6011e45f3e5652f73087edc3ad5eab0da5e57054c8e60b62c3a70d4dd8fc438021640f2e50dd72cab9cc08f8f50ec417ea7af5d2fbc7843196b1878127d6310275a6ded14c21c0f1bf4d625b57247e1cebd0d185e4efaeb5144dfdbecd44c692e6c96a7e2e36dda73c97177d62e3220b6c01383fa1a2e133e6e58551133e97c6b104f797961d502a1281186ebf5a7c996de90472017f5f7896bbf02b690fe7cdb2a50ca8269044094127ea2c3913bf1b8be89b583ee331c58653e7d683c1eca71ddcb183b10d10be81052a21120d955f34fe74f59435d9d9354e87f192e1dd6365066eacaa223a90f96a232b702f6aeb62c68599b34b2c5df724d071865a4dfe827b3e96e17da849818af655bfd524726879f11b9837519a848eda3880723bc9b46bf0ecb5a5e0d29e1b267449a12e487d07702119d35e3c948f96123d256c0c7d1bd0a5f4570454e47ded565973be54f9f0f7f18b8fefa5732363ed84c69af19fd394928c4f258b1d36d981d71781b93622dd15959680c3d5888fbaeb1d22ff1748605704b8a94668e255e25bf5022d66dfa63d234ed675b52caf4c48ed57c03f2798178a154c1bcb6b7f7f3a120417d493c8172137bc57a0c7f3f4d868c22e9e5630c92ec3d3b63c78a2aff3fdaf3ba06acb0c36dd14cb30893ddf3e9ddcf9e56a48d65c76cc9bb750635f124cfa570f13fbab51afa50b029a399e2b103074d2760ca0a7ab031920408802b2a8433ef20af18a426c67c282fc4336bbe0504cc515f564e2a79d725c43b4452defb9a7eb4d1d17d4a43d893065c7780842b982a5adf4b517057a6f491bd2abb4fa5a23e0a34a7746ab0a2964a893d3df8aa04847dd2d69f85a9864471bfcdb614bc6a819fd8d93e87e6e9ae08c55d1f3a75cdb1ab7c0197e9e73ec8d8b9b303b9b2244a74acdec0170c90f146b4a57de8af9c6e1daa11f95de44cc14e1cdba788a9824f6215bccedb6c979f027f9723baf7fc9ba9a7c2ff4e920bd8a61daa43a8b94519cd5d1da9b7eedc0502ad78e6527c8f23ef553b5a45a481e3cc8b93317a4f29ddc523eea09012ff8f5989e31c96f7c7ec2d880ee4a7aec9f86f851af4f55c69edb435488cf00ae582166cfa745a5fa4c45fab10c9aae615145428af7aad96b8b6965cc6d33e3e823f06bc09eaf56d5ab2ef16bef17c02d98364bfb28e4231245fe82797dcca29cc821a7487747dd8c524ac3f4e8075a5ebb839d116dfa792a6e8ad4d1a138402743a08650b447f2cd7293c21130e9b51b4cdb7e4d46c64f494974f35a0e2d42abfd8162ef1d2bc5943e518f6bbc84f8654dcd61ff8be1b23d1d46ca3ef702a2639d824ce8d057202d10f95e1061ad1dfd71577835bb811083f30dc15a75e730fd48c5cab399859f29050b57b254a59b8ded22e81889877507f24225162199cc1864f3c7ba67ea8e9baeb36e388917d93d4613c3de55d24c08d7babea7f6ebde587f224ee246dcc71ff426f50c0f5310b4d762b2be28ff7d852458cb4c83bb26c2d0b121fbd4212ec2078d7a8a3967a421aa7f3db23d23facc7e8678b423226ebea653ca94d0444dd800a4358e0b0abb9884ed32c037cfdd36f9a9ef4ca534fcbe63b57931a2cd3fb6edbb38b215db62f33c1888e30b3613c2f6598ee5503283eee39718242c784793bf566126c8837848ed03a405e516e8fa006888f7e389581c1533de5278b36322f962fe1ad984d3b579bd483638829d4009dc9dbcffad5943b73415f29f03569dffc921581b7000cba452c6ad83da2c8ae2385bb1a2bdd40d3c265c07d9af30bce457cebf8aaed4d3b265dcc68f4f70e596a0f079d6e39c499b010994a149e59e6aaa2d31cdb96dd50c7cde7591db01e5e2f418dc3c857b238f25e8dbf908df1b0c7fcab12130844cdd17a41bef3d054fff51a24f050cbc6cea7296125f6c45341af62fed97d4f6b3788583bd192d3d14b48eec89f65a05eba8c05ec5833d2b39a41a3305613ef30791d07cff2a60bb194f8a3e9536c778081023024f6f562982a72b346e79dfacd01d3be39568a6b8ac681d6b6c04be2e9e2e3203ee1dc0683fed2986e2dcae938311f9c0361b1570b1a1e8c0fa2e3e0c2542967946c50ad87099c4723af823c8b3d9feea756e7109a4a06fc90dc0d59fb939d206521e48ead7823d98abf569532f9cce105f7e633bef3635a3c36e5cf8b41ee73429de94cfa4e5d3064ae3f1fbc8e8d30e11a9dbb81be16401bbdbad65096cc49caea83d5527a159e1592a6f1aaacb460d63d228193b3a68e36bf77236adcc0490d53c9446cbe91741191abe197b397a4c365dedbc1c748f951bfdb73ce85c504296dc6fd6e996fc43305feef39dfa3ebf337f13274fc2b60f1f533fe89f0ad4fca34811acead91f5c8c889e43c9686b55594e7c82d6d51b8b0b043d24f6d38061e4b67976f9a1c07c7d318599efde9efc45ac10918e55f4739b13b7a525b903764c567f76c75a76ddc228f277bf0b5d72e5fcbddb73ae9095441b83cd9ff5a6c35e8dbdf618cf942cf3c14f3a8be58e522a7f7fe7c16f765cb1bed8c5547b91741f180ce683fad76b1139b4dd53261196234afc0d072a4a884a7db1023bfd60bc20daf6edd710f9a84400646e076319cf67919933c055886e6cf00d724bc146f1f04329f83e958d97dab6c098b273aa1fee9815457785477bd2c9f677e39292aa81fb67244ae81b15e82e1323ebef44a88fa593c5649637eaa411e0b0228e1621c24f283bd9c247ca40a89ac7d34eb62ce99920ddd36c8cfcf893346e04d885602343b6effd63a1fa5a8d28491db7327ebf42211bbf1e2540cb34576f5ce7717f816313f7f66f0c6171bf0cc1a7fff713e2b7c8e780db046be79642ee4049f594f7760460a5cc57c2977671204cae6f6cfd6201c3970752e050a95e16e64b212378506ecad17d321da4afaecb3c85f7af2f73fb013b74fc228760bb29cba79477b571b4166d1cd11466c603c3ee6743987b7f735c71907eabd0c003d382d854393d70db09e46d8aa5cdea6eb7c7ad32729da0ab32f968ba8aef31fb8b2fb1540bc3bc26ac4bc91fdda49a9b84dc8f6a599eda9d25f71f914f9056be8a4a2606206f7167af0336e8fc012ac3df8423798286d77e2b062784f78c4d1c43ecaec5f4486913d7b051313f99f25df17fc194c36980d8a1446ec26221d60d54862f95b0a26546ec70be775dc9ce2bddfad70337ee3635fb5320dd360a209bbdad3e1631f5ee3f653e2d16340694e8ef3cc3fc8c04baeeba7ac79f1b29504ffb345570e5b630fe846f60da303d3ae971399da41cb0ff5d5b2eb34ea319b2933824959418f9919f4ae385ca5000179a595d3c32417988e80dc583442a9dcdf7db29c1020cb088abbfc8b63e455c00e4b81d211a4cd815d4756faf79029e51c37e6767613f223f3e429bf170cc82d80f04912acd832d6ff13e94211f5e1fa2e22d1ffab2e554a6f94a763ed99a306005a3c1dd30a159277e1be440767446c788f03dcfe359d6ee38a4ab5aa70a7952d52bb0d2de04820db176e2c6351ed65ee6f3f909e5d5c9f38ea430707cca0b3d30e2085b18298381641bff2c87b67558cb868c7b551637afd11a1372f1ac06aa7f5711592572e1739873a4d44db61cf7c7d017268561feda66bc7aae265114ce9ee8549ed948ea105b4bd984c3d5ac00a1536ed1f3d527b62fe82000ac11f98df84217fded3301e9d65d67840c99edb9f29f2d95925d09d6c6b469af05d74c050cd0b768e148de22c949d6ea0bd39a3651ded38034dc67b14dbf3141f49b7f5975f43b3ae9c7c3638287ed50d54efa7986558497f4a04a52fc2686e9fac502adb1bbdad6515e2a3de5123e2ee3706eb77cc0d57253a2ad5a74fc6c0a53197e1c5a0287b319c0d353528d3e945814e2cfd4e41832650cd58b4669e44e6e34ae75e702fc3070b3486327332146de75039a5b89bbe2973a3e1e01a01acb46c12961b3be1d1dafdaa9e674d69b02587062d06d5f0a3550be34a095a94e4c08d12cf2f3e76f6d6b49a5983c4f5a6e1708a30a817f6469318c9002b4b29d1bbe2b4955f18b33d7712bcbe9f8110329917e5369d341e25e03bcaacf9f750689cdd4cab8d10b0c3fdf3e81f5b46440955479341646da4154763865bc1aa93bce3488cca53736a320246ee790fe99d7a175501fd71c2569a7810d44fb042e066584bc6f8bf8b2da7be5841c63597e05dfca4811e9374f72a0b66e470aa237c330a165b2ff419e33db57c608bc6d09699cb0c726135f7789185311d78eacceb77097ced06e5c51e7dfa969ae271cb6f5fdf44e2572b7f0551860fdd29e6de328527c4dcbf588304b6dd2c7dddc3c6057d47c3b4d300f172263456f55b8327074e4c8a03fcad3c2ebc7e1b930cde8516ed5fda42076ed63e801631c8294c459eff8de888bf4270343e19161d092a2554291fa8ee5bfdd1b1a7d730af41e141be507ca328faf4244caae832180a9077f8dc77df502f280e42b540528f89c7603c2596e39e969d19e284200cd542ccecd91b1c432309219644b35d1da3ead3f93419b2037108d675064237451d43435073531abb1a3bcce3e14428085dd63d2473fe4db77eb5a7b4e87e7ec12ce7a6573c76d30d2ed0d2e8217b1a2267b47029eef951c93c8e329cffaa8f1dbdf07baf75af0b61f78afc12ae352e21c503c90a2294a5d0f43e1cdfef9fb6ed11b0deaf5cba38133c988c8ca0322e314d96e1c711b74e0d845628b5057d46e5c2b96f34364b79174821cbd33a9f2f50588d0efe7966fc7581da537ad0f209e3e67ab87f38c9e242969cf63391a5e553393f3e3222bcf1e65c7409da6f042c735e0d0123a1ee0d8ac9e09bd4cf62c659bba6d20d1208e402c2f1868794161ea7ad2bc139e1fed871023707e3f35c515c200d83efb8fabcf54f1cf7130f01b8c8a1b6c4c7944f83f62541bb97ae43743549556d178e22fb30a219b809b57c85b8d80737fdbc950689860c4fcf7215511b18db5b6642e5abff86052ba650e6ed04ddc2836aba04608f76c188f4396ebc6f5161eb5c58d22c3f97faa7d8623333a633fabf30b7dcecfcad22e7607ff5f9092681245c278725cb3c3bf87c1dd93f8b540c49bbccd69f0180320ebb3c04156b48d54533460e6fec362c3fb36179cfa6372710d5f181447c0877cf9f92420c2134aa74664fd35ad35f538781415ad775575e97552f5d61b43445978750dc2c42707705842d1555e1fc63136abc387128128e13831ab78865ca00c79efe32aa0a44dffa15639268c69df6ed8d6149cd3c128f1631c6514805a8544d3572c5145eaf9a677dce6f83ed04b07017541ceab1b15f286bfefb03b84c0e9c1ee531f1584b5cc5aa564c6b8bf63e1feeeb6071a31b69e5ec7a9168de574dae106a693141eac9970c91a1a79a3db9ed74d96d0fe22d51dddd2988934427f43dd23d4fac03cf67ed6047c5fe900cb19177e3dd83177d71d472af48583262d0786b0399fa4fa30b3b2f6140d1da7d06e577d562a53385f41d5240728e2a162035178d2d6d140d39b9692557a25855d80836e73e3ef921e9179b77392ef0168f7dc6a15c0d189a592f582c05a847b5e5d2c9bfd3ea124a6a0c3274ea65f46a52e0808b11be175cbc1ca20f7bd7f59c1f2483073956f0d7c96904a98405bc791a8c9f6e66f451b4c5a5efc51c410199488235135f9b23c48395abb2e39a4494da54c526cd3815f9301dd5e8ea1587cf3ac447a98945ba185f500ad082be15b0de9f78b212b200d09c01dc0a840ffa8d1c26543618c222bb34ce2364795a87d1945835dbed1a4d27e1b18d42726bcfd93ded7017ec1bb1fba7bb443a7ba941692a52454a2e6649c40d18dab9d88bf07209eb8f3c4845118ab56083718a2965acba80a7fd03d9247bcc3a2cee2b9db9d7e5faec7b74f48f75d8f98087b8d748689c6c5615edcf430f219a7c260e4de49111a12a103b409739ab3f2c1d6f92821946fd7a3840410399738fefbf42780024b471e2652ffdd8007563a5be0e790b9d691f0cbb707d582691a1dfb369d08293b1c299a78fde1e2d7dfd0e38bc95ace8413cd9508dbf26831a300524b3b566ab9af94d436c879825d901e8d013b1d20acdf788d93665577066b9f6ef148826bc32503100cf6fe43b7c55563ead9cbd3423759daeb7a01b80286033604f62b5303a5f1d98af53a7e0114187cd7cd5396c33ea12571de52fc16c9f93954e1a8e34726e306a421883cbe27c9c5d398929ccd0ad648a12ab4cca6105d92fd56a8edf68a8527ddae81de00ab86670f7cde4f54524731007626be52a07037976bc32c598eda70679769cb61ba5b3fe034a7c60f1812b71837e62707f74178bed46b7eeeaa54bb58a900569e32cc66747d3f05228b8852f60b919e528db5bc77a65e68da4da3917a7902a121eff9a7f7ee55b85deb55e813c3c0f1e8c8582c496c97739fa667c81f4085223d723f402032432476563ede9221231e4e43a409dad1fee3b8ad3001055ee7c8162d9b1dbfb78e34d96539e90541f442e3064867501b04b8023b6fd3778c8b1447478d49dc7875282d0b19136eb13559dbfb60dcf4621bd83bc35ad166cbe404206d3695549ef8e472300bca6a5b966f3731672d1b91e3a89cc63127bd19b91d0d316e7c8b1984603a43c05ea69c541813dfea552c8b78dbd698c538f2d74769d0d24a6c1e33a74f1562679e5d3d0585d064f1aa1da56c8e052091d2b1506376a54eff2da58711bc940db74e022603e5be81b36c4c930d90d698a16e76c1f0889680d4db970ef2f5a28487710d7fb1e8ba0f65e8b83ed4b25f06956e98752e5f6c6aac9abe62c46987247c46e57402092e1ee66a06fcf303b1b228d549e77eeceabe4821ea2f6dadd29d7bf0034c01b81b2d8c4951ce81a9e5136df9072123cb4f35f5dc56bac07ed62fa1eedc85e518440cc114cf9404f0eb48b05b753bf040e1997637090d0b67df6a9cbe9a6783264312247a337ee0bc34003f45fde5c585b141d30f14d15b87acbec7755db235996c660883bc78e50d1629ea6e45f847db52bfb18d77a8c0a056466e25210996109d9abd3c321f9eb4609fd4de20e406e25c3b2f7c13e6a65771fdd61af80e259849e6a015466a46a34b38123ca7e4938f89eec8d3fe01c992b727cf0f2a9da1ff1ab765c27cc3cffe6ef33d761d61f9332e51a247723306443e70f446b929c4d89e14671401ed6bb12497e8747a670f25e2139498789b19daa74336cf191c30e69002e7ac1777830b9e153478cc67544bced2ab474378b6df835672b0e9e5a2946e66c1481384cb580582183af2adfdf037277e92add685955a84cc2b29b543f3c8d93c8fdb42a993d312e2de33fafabe76c7fcadaaf51b3d17f92a205c54e5e48698cd4b231a870d306686234e29da604b419ca0741d3c21e780a05b7276a4e618cc9ec9d7f015decced9c9098b420d022eb4fed793c7612abc4db72a66a8147771e6ec13ecc19082d9a2a9d0f572153d6c464232e16cd07f9951963330fb685f9f6c9a07f149aba6dd5603a58c5fc1cd1acff4c753e89ed86c4cc8d19570058d180c5a8522a2c8bd5380735fa928436533d95fcb63a77c4b3c984400701f3b75ccf0de68740dbe6e0d4405fea6f1d6dd9fe5119e174d7594616f03f074880a2ff6830cc11187ecf7b994ae8368ec160ee1c5bc440a5d2b138a67f4f626f353976479fe49ba1752ce13acdee6e42bcd8b397ce787c0c527cb1b10466b5d6d529fae06ba6b6b680d6375c5e6500b4304aa670ec8eb8c0131e6c37b47fa94f14c03e688ee54c7ad81e2610f2f94714e64a091da8587159557145bae2485f3c959062753b6992aae9146afe7edf3c239e84b3070eb7b0dbdcd5ef5a04310f74413a58bc9f162dbdc56eab7557545b85804113f1cb28682b75bbcbe0c15f3f2a44a88a89318a626767fdbf8a48c6f78c7ada40f1dd0bf932859bc58662b372a7b257a192661ba00deef902d129dccc82fb7208fd1c39cf2428d556ae07758c19b336855c0f9565584466cdd9885f520bca951e151a080220dbc6f0842176e0e3305d265b0b20891145d850879fd98749b4e673bd824c396e310a3ab42d5a326d830ca57314e31a4dd5f93504f37ddf972b05ce6103a85bffb2b9ba31361dbc51d2ab6040c45c9ebb7481cd801739638adf887e97fe499a22649f6b3a968d03a3b33fbee845e8482c59678656d175f3633c226b6190879a1caba60036f789639ed48bb3f23f3de2f53cb50afc24e26d6f6f3f43ac52364fe1040f481110208f081005a04edf4ccc5082162c29be4bb9f552f732d4832e11edf8c902f81922a74811e2b33ba8c11696e7c30174cfa403c63323a2590306dec168b490ef37e0bbb3547ea0ff1321edf6e863b226ce17c4af607ec9e736622f1ed82a3b77eb1c9c76f1aecf6b9ce919a2c276eeee3f000b72cb6f6109852032facf40daa1412f7dca56e36345cf46f43369e8cdc4c3be92eb18800342260f067bef9dac70564eab718647bd75f5d6872bcb2ff99fd6047cda5e5d05a7d5cf69c506d8e8ebedd64e54f3003544c54dc79d5349ad3737459521f8a2750cae305a3efe3004530ba43bb6b5cfdcc8ecb6c1a7fb382800c3a391a4cb6eb1584da5f7b12c9edb9e85da68d873b2a27c57e0256baebb0ab480183273b69ecd1b04bc962d62bd599072584d6982dd3ccd0d1bf1b809f92fdc399b34001a1f7753ad86abde713d5016baf36addb513ca30eae651faa74b3eef01c4de48280616ca3ab2dcb05e2868866bd7176935982807e02d9b0cfd0c01bb2a22cdfe0a23d977c8e932791cfbf1b61d6099d065e0c10c04ad6cef657ea6c8d3257b8b9f647d5334537e9bcc7cc7bbedd3b4b9f2e377b3fa9b8a313a79f80af405aacfe167a440e076260536cd4aa76e4702e734acb24c6b5ad04e0a64641d3efaeabf59ef7b4fe166a89d38cc669053383f95e3fb3eba1d116a2713da66948b99ba8cdfae758a8445f3a64758b251ebdc2b06d5c18185648b420b34db13186f87b7aecb0b0390aa3025b2c2620cb2769cb2fb204d855bfcb51442e0e94630352646b6249f89f81748ac42e1c77816c993267ce1467fbcd0042699014b14ab96e466aa1c9963b4e403672688a0716999f7ab722573b9beea0334a9197eb09809abdc771ae317f35e3c654e584bf6df1cbfe6c7d0a6ec00a54ff12e6e0938ab964b392f581b12a49639940d8a5ac3f79cf06269c24ee27b78529f1bba135449190ac5fa373019116c96c25a4a1c15bdb23337a8167f4a70f2d602e3258a3442f38e5552a645fc0d98baa194235264951b93f8a112f56a11de1e5ca6a1767757762ffba620a160ba1f1410bce01ae3d59becb101e30a725d244efe1664747c6b94705af2dc70c8012a2c5802c58487bdc51343b5c52bdfcce26e6a441043448a1988fbc07ee5baeed12535dfeb897098939f9d41710ea3c54d1ffd588481949934f0676d67050b71aa3d2464e0216a637170faf435f37c06f6b59c98c019ccca94a933e8b9c65246daa02a5898dc06f7467a265cd00788c1e12b491bf7108e07e65b78961e57d07c65563da9c4b1a3b8b11e8c8db1c0d90e5d558b1fe19a1a57eeb08d5003037f0195a30f7d2528c6ce077d556484b8000353567e49ef3842603669f45d39d1e01118aafa348792ae258d8efb6cf2f16c6559287b3f096b4dc95810e32cea082e134f7cd1c23f843ad4c0be4cd7861241cb7cc25178becfb1c7a143a5fdaa4dbf12fc6d8ef7da83fe19f8c15c87b02853e9bf25adb5ca3f9ed88d9f3deb44ab2ee51b45122670aa85ceb72a59a411cc8c701adf4e2a7b378263722785591df88a3ee40549c4b5442c0a3ac02b4ab665e0b80b0340d9719f36557652c8d537fecd4096c5525c25d86e5440feead7821110d5bb3f0d96fe2a96292e9a1667e3201280f30fbddc6b824c22f81b50df332b4464e727abfc9626031e5543a38e4ea9cf3e864645fdd54cbf009e93675e93053e5efda4b4bc7b8061990ebffd5013364f5053387f875be9d75c6b6d64852307a69bd35919807eb60823893d3c7e2351b7c7c061339719b3f1849f45fb42a04b522034a557f4a29646f2a34ff7727fecb8195d7962da531a91b16a60e862c1283f436264951581d17b7335e48c61d72d9ba056daa4da5275755083af1578e52fe8a8a4fe3b8b648f1a5afe6d8c2f54da6bb65c4c4bc862f849e5441ab55a95753a0132fec7d34cdbcb4b7bb6e3d6fd874198cb9b92cff6436098814b238b74b4df135849eff439e0efdf85cf484b049963188e78051f4388168ebaf24b26f42def485ab213c67135de5c4eee20b157a7d91caed7e6715ff591e162602af9611abe2bec34dddff8c4e0cf307f3cdb1df465d6408a0fe8f708fdcbebe9f0497028f29f45754a6827ce25deb87892caa54fafc4dd4351f1c6c0ae320bb69f704094f9306c282c5e3cfafcd14d772eecae14836e44cb686016e9c73976ba3b5ff3eb8a9f48e40af2dbcc8e143703f7fdec2d0140cb66f163342b7cd836d0caacb312ee5f5d5fb6ba75d21e514c5b3210494a05ce6f953f81a2e968244993c6675543d437ff150ce1f3ec932492f088010aa20ecb8699858bdd57a3fb30e8245035fc68648696391dbc97fd39227d061b5c403b28c8011a94f258c904fc584c9f901f29b76ad2ccff752ba88d2b842a286804c46332e8d5df2ac8f95894342dc1357e565e8192e8993127d4cfc5e790b777c3a667c19d86bc4d9dc7b2b7aecc7a10b8af2920102c96f00943b9e6a14c4129720b957c3b1f9addd210493f656920d33024d9b2a602de625a25aff6d773b5a3f06907f710c267048857fea87c43d083e1a3ba95e25cf67884c4aae96f52f484f6fd6a2a34bf77d64fbd2c862f2b7cf114f32b09746fc06f3d9b615c3108f530bee3537b080b5cd833ce7b50faab3eb1dd4e87132ca849e82a462b02fa65c8558f7aab749d9765bca53e3d13f79c6be437502f13dd385b0eaf1f9be3b4324997897a72722daa1d49106776a2be009696435ec3ff9b231eeb4f46b076c3cc2ef5044cf82df2c181214462f5b942bd1700f2233589d7aa88f42eb25afeba56bed26499f498cf3215737ed95e8f7b8fe6925902bebdfb18e3fae384818661f115fd60e3a460bd9c27c26d95e0224a5431f4a6d414d68ba43370362aa1649a0d70058976c8192cb43089d2ebe1da5d2fe53347858b329c004f070d6a7ce05d2121d52b591a2d1315cbbdc1e9bc89b2bffae569110357facabc93ec9742bbc0bee6309b5438854fbf22c8ae920be858880e96c4e26fe7b8eb639fa48098982866e2cd1b8154d8c62ea839ee469e46de731534e17816a8a655099c7261f0ef8370f3190631bb2d8afd31b1d76a6dceb2886a321b179d81ad5fe62b4c92f25ba399092550f82bb117a8b47fb580f460e8203bb132c609aec10cc8690255e87263286b4d3d8e7e73feaadb9c15421e446d1776b641661b3d39ab32c7b6a9eedf5e7286ed000e1af5f6f26b332beb607b488378502b785385d00e307d07e8494693ada18577049fe57cf605949900662b97561ac31b18bbec7d795364f2aaf302e56716837d3751348c7af004688846001e7f240529a87b64ed9949c75ac791f7fc7f6bfec732fb840d7053e84748dfdbbbaafbb257e5be2909e78b929e5c807dc2e174a0e7fee64bf740d9cc2ea4af8591982de0a585365f97ee7c8621866576b10717035a0ef31c1d12f0a4d81bacf60862e280f707e66e2eff97d9e5642380ab7c3e6252f366715b333fe25395ef10a9a58bc271231a8467aba7b8434f429aa7a23da8b91df14c2024c5dcb6c451a00a5ab97355d83156ee2c9494deb53c4f722d2fe2cc1d2101995d3e013cc54bc292d252329975de06d08b811b83e4d6dad9e53f3a99ca1739e1bc92362d968684ebaad2d583c72f2778237420ed9ce3f64293300324a80d4f64b406842f05e64c683a9eb4cb83485b84a6657b68f976b77b62fc3bc2ba9b5e4fbc2725e0cf6dfd8404a62521cfbcd1e2972160a29210dd88b93b223fa669141535397167a7a3794ace59216a2b5fc8a4d7792134f154d46c83f1b808a5b4c95aea08bf77bb56fd76caae7377f11ae27540ca1b555aa9016d242eb4f1ad9d976821ff4f1d8849d7ae4d86f2ac1b376a1503bb21efff5acf03506b2dded24466a6fd2eff93cd67813f7a16e02d86f96832cc6ea663ad2a59b89d33c7714364a65085702594e33fc1760a858448a485e7076b335425c4a09d0c8d5edaa87039b377e55cb84a84bd9ffe274234f920fadbd8431469b60ddbb7ae65afe82a7c198e1fcd5c5d1dad2c953644929730e09c9b488657fbe9cc6cc9708589df4677dad2a720e53038dd9b4ec17c895073324f19c8ed3836c8770869b4cda5fd6427ba2a748182c4ac4e0b12b3ede4549421922d6bbde54e7407a2efdbe17b3ecfe371a1699f9c3cce095cb10961f083aacd6a0cd2f61e8495174d78c70752ec73e3246e269acf1333b525d1fba53c553572bed08b5f63941b995bf3650d371a79e2d5f27ed4282df53840990241fe633cb4dc42eb5f4c70ed7579d0ec54d52a421e56cf5755fa99309342274b8e4224180de8d0a3ae783fc6f2f0c5e6c50b2116cf3e200d74cb4383648f8dceb35441547cb5ac9e635211dc147df07cd8e796cf5f233af16481b0dd195d165fc411c648565045f1ebe8b9f185db98e5a8d849c7b4fdbfc90785eb6be7278bc62a7d965fbc8a984c2691f3e3378ec52144cbe472c5d55171d34264d0dc4a5079839cf606788d91a6191f529af957ec0b36ca5c58a0411fb212466dc05845e701f4adf36d919edac149eabc3965a0c71413d206260f12457d852856a6d7b9b079c70a25ce4c00bec641145c1757e89b3f69d263fa3721f16b650977d8adcb321d067a81f619c238278aac63bd0f2de4278dfc28ecdd9cbab0f51e1a0326db735edd1516b40162bc6a451ece7a31729d80e2c0bf1fa0ddacc4a17b7e113e805c2457f274a01ded1a77483376f2128e2481bc349bd02c8a92a517b3751cbc0b13686077413ffa042a6112832cd0df7a707b5bd364d75c20e1b648cf3202dc2cb0700c33c2815b6df3e5978c91da27a850ff5d87f35ca13e31f476d5ba86a453cfe98573f54eccd67dcf31f9cd545e92896bd00dca7b4ed817b22ba91c523f4213ec472c971fa0baf0c4f5aa91514f46ac2379ccb9a8dc65b0adec5ec4128a7d95ebdbaec1bd0214a30f642821a47347d758ce7e8a0cd6dd9745a6522f4ed32b44c82d9522bedb5de0d4efc955fc860a357f2d4debae9df9a366a6790f121a9382e9982571689927524d6fdd394276f5a1ea16c0cf8aaef38ab45d0464a222e8a0a94af36267f087265b719b03bd34c909a670ea2cf4995c101c06715f90ac9126418e025520baa8d8df5b42e10f8e6f109b1179bc52be237b117dc5aa312284f982d33bc435a53bb9931e1e69d4913c570aa96194263c45b73caae2c4b5902bce81fcc7b2dec0a68f3e8cfe40edf114f0479ce34f6fb25a972e7c4be3537841b99854f212bb50b238c8d20be4239e04aab48d68cf7b1e03ffb13f817d39ee51aaf89fd8765f2fcad0eed3f226e0a4e66a3e49a53213f11909b5366774c190900a046398442617e129be7231e5810dd51cc412f865e2c77db7ee81f0211f56134cda9ae2443311e0eb6bac7274d4dd2ae2026979eb4de5d19144f3268f1e09c7384030ff8303a27af1e346074dd5adbe81a3502145bcd54b88120f24c0f29ec68b303ed485eeaee13073ec4c894af90907150c37dde417b1fe064320eabffee558c197188702b1c376a5fc25186892a6e2c69960292e31c3450bfe5771923919a03493d004197cffaed21c57a0ac1626a6b87ddec6f318ff13f48e68fe765691fe5227f0d2f3836fb5eaabddf50713b8ed5a6241066cb9db1983b35599008e79fa838b39e23661d88cadedde730efbca81ab966ac5ad914335860a662b476aa2bd554c7031ef9199ad36501736055112141eafae67f5743940762fb8b3cc6f429a1d107300a413835cc4a9956d8081a7aabe3ecd6c2749d5c6b30e55b916a75c9dc0f20584bc525460e45f56af67c30be2c820a7d763f5d48b6800f3c5ca6ea158007c9733a49384764d1ce29ada32285a5525a992b203da65fa1f6c873ef6db39b500ad64975fdf2b31aba9b44679dea6cbd4c5039d0ec384d4c4d4de1cc69b430aac4e16486455bfbad6db2ed8d46fc5f7ed686368fb8fc30f8c1167036361ad95b0de4255f6999c3b03cc8d5b075a7241c2656f537ac646d611194844f4ac7708bb6d26d9aff7e65baf718311a9cf669963220ea00f9fe35b4a4300a21496dffd44ffc594ccd5df12fae6d19de190b212c027187de5de42f5bc59f3ddc9ef2a8c215a7468aa0ee043c86ee2ca0421861a873ee002ec1592769d7b3a56ddad548ae868333617d648f1c60b7a64aeb6fbabe65d419e43ac36780069238566d6322a59c9d22d943576dacdf591622efca4a41ee8a2c9cad547bbc5ebee9c91fd44b84f0970d997e6773c8decc1e581bc2c4da750066a87af777fd44c9a5469f6085485eb75f680513c74caa51b39b846c5ac1fbe5ce2e7e43a0bf960b1edf317093709cda25938efdd1ce83d4885718443e40518fb52cac4172e3a79bb1e51a5336dcd38806a9a47d4f2e076bd651b82e87f5cea0e0345f548bd81ccefe98bebd2f29b72902c8f60b814f709c7045f8240767aac8f5b133d6135b3d137ac5f2098a56a5871ee942d3ce0c9b282b9e5748708034f7b6049f2539ea093f2bd1bbfa659d28ff298798ede532ba0394bcb9d27f785d0ad6aa4a8e606efe94d87614181af69a351bc6e1757117571682128ead21933ff4e6a38679299e094f85607b11c5d471c30e12ce5ded251d37f9f5ef39371e6d9c4171d34e5a1311ac682818e3405daf1c184856386543ede4f924e8dc573848e392d5a256f525958a380235b09d7076bd5eb7aed591262746b607cc7de3670630bfa93032a9ca28199af781d58cdc2030439f78f9fed78fa5ab69ff34d32cc46b9114730a1cca4b131d1ce146ce19b1bc2b227bb98959430543e5aa238cd3ad6f127766ab1b0d7c7625da3ad789daf5cb6f4f8cb919bb32cba8432475c0768e68bb2babf435b8b3c60d3425d35bc36d3f4f6ab6e7c8148edb9b22e8764b6caaa9ed116923e236d1badac5712dd38b9c013399a6b18c9e3330410ec97d83387a29dcd0584500284c1df1d406a41e5ed18d339849967864400deb99217934d0b4aef9b983278f4a4435a1a3335a16d75d7f287fe6285ffd2b581dcc4ce7b0aec115ea24d67f173757221d043c8322d1ff2a676174ecd0cbfccd0149d658f31db531f4ce738a5f0f8bd97f3b5e3417468b29255534d45e5a127f03c14f094d1d9208772858fbc93b5a15c33686ebb162250f0bf6bf907df0966d756c9ad8b33e7d3f3dcf1fe3410f6c9dc95da554f70dc21d2ec16f80b70864b0ece538fdb436c6a1cf0780074b044b71fd906ad54ef4f7f921617eacd0f1e9fb3f2996e6d959818d84c90c5537ae2d6b2ab9da5075c2f5822e8db57501e76f15158fd2b6505598b030387965dc6fd40dc8944388e7bb44b31721e37af191a203d494fb3c48c6a86c378386aed813718d5e6770f5037603b219f8555cacfa314d4baac4f2d7ee2ee6c2a22a020ebae977581aed07f27234956b2b0a92dff2ced4553e955c5e2cb0f00fa381b7adb23c6969d5c177a9bf4cbc69cc58894b226a00afbe14fe8a333ab8bc6f3abb20eed7101a752335c86900be2e365bc737d469dd7cfee3f498897216ce6bfa67f9113a36c235bbc0157303be3ee3f17184111d4524ec182bc1eaf8b3d120d2ab1b6c7726277280e973240f6563b5285fa52fb7d527a4904b17923eb6b965fb4f226b51668259c683d1ac7bd266afe1d1a1fb0b0c80a76f436285cca7b5946863e913b42878ae49b8b712f8b94ff29c7072f07b2f6002a1960c229a34129a3e2be72d18d1af7793fba24537f26c0444ddc5596133ebe948878f2267be3d6e6a8f8f67992c56f02ec8cf26b0c222c423f9d5a8db922fe82ea82554c83e63bcb8d76ebbbabbbff9574ba51a440626138f31411b6fd99ecf0572671b0b2195c73e2299d4ffedb50092466cd966310a592d08ca9657630d3cf73956d8a273a5cc691e9f88a715a299203aad4f71df72def88f8d08efb36a54728b1192a79c86675cb4c84bdea5d8b1d5a3077ebed506c1c668f2b374ff643b78c1de3a8fe25699d11e7d6275156157a72b4cdab2191b67ded1780a41ccf7feca3cc19963ccb285a5a7753204f0c80f2a2ac74ed2a231624316a447399f740b1427a5761a21e4ab35b1bde9145bbd9ad9d291c3c6a837054575182e4ac94be2281ed3b70faa08c37166cc5622f888f734b39cfdbbb36890fcc84f41860e8ae41400d57e8b5d9ee374605999a6b296d451ca85af6ec562939afad2c8983dcb8ac01a10c0ae6589ca634db4abd9a8fd5cbf8bec672d3d384420375dd92ec9a8f54bac5dd6459141b9a7aebe295aa0c86e110abf13baef4f4acd329d1af0272bcdffce1063e9ef28359c3298e794824843d763698b7e2e13ddbf92ba89a44ecbc74d198dae2f34d82f88c144356d8beb93ec20c2b7c2543ceb4a6d06b268374f2badbed94ba6527be4fc9e110cdbd513a4757bdb8eafdf3267255b83960bb11ee4288a2f8b8c472c419f7f871c676fdc25421d54aaada84c665a421348381bd472936436865774b0d079297e40c92c42d54f997496c5ee39438933b5b5807db721ed00ff6aa7ec604636c1f7cc1c369d37d2956209e35024856372f06210aa0a2ba52017906bd71fd5c5f3fb228f818dd5d3862d353e79136e485557c1a7fd0985bce9e01310389773cd1d1ddb177ff8f3b060bd494f6d1f5df211a5bbbedc3b5f851967a5371977fcd7af812a7521595feeef9981f00252395ec4841425ff7f1296b26f45bdfbae958ddde57ecd497cf2f032e47e850617ab7b0d5350eac029ac21b277fec25b5872ed09469bda23de76cff0285e25c2591fce13c7eb7451dc8f5e60d437845ae65c617d9f0fd167db8bd73419df3cbe03245d78b1b589ef5117b291536c2704d2fd2e7c4a15007b3fcdb09e3daa085c216e16f4cfb0f84c05d774207b0f4d185e90197b83b13dc61e7d4e1b7b1311cc55f383e3fb4b107b82cd02dc8210b75f1932d9ee230a7e692a812750d7ee31435f7604157da1159018a9ff924833f1dedd660782f9ce201a564a957f424c80221cd0b82f46a6032765e43eef4e07832bf13425d10fb0769e4c00f05a0aa98660180f62f48b023aac506763a07c5c9737726bbe71b602de96de8dc649fa9444cb4c160a0f7a94ab5841e443de014e82043e2486cb2ccbe7f216d4e9a4a6ab3f55250b099a6862be724a6e20c7220d7b9583347d44ae0d2e8a1bd6ca97d147b84a0337c1c8e4edbbb49cb2c13dbb872610b9e9a6559c0fabbd665d08f150acef102fbc90100aa04ed1d29cd08d3d6db050a81672e70ba0026e6006fe6e8f0361a360b16998efeaffe44411b74f67402b650419b364d8f8c0b9e9c9de19d666e7536738d08838219d110e1d49dd17a276984681e5b8baee150527631e969dcab63902f57e6da520721d0163ea5de928f94668a1bba3398bff10644e007356f041e80cf500f658bb32a666bae6eccbb64bf4de1505c94dd7d8fcd647bcbdd10cbecd0dce767d52e12a25d7efa383ad840ad0c35960505e902663ee24c7ebbf5046f1019e9ea37c8511187b5d3fa55e183c098fd324152355c19c81254e9b00f9d0650d30f1d17d22c35e32c7a2a68460f5dba030d43706b4c738b68b072a91bd3ce557a534c6597e49e298947f603ea8484b69cfbd06c76bfeea5ef3da42cadaee7b5d6081fc872e2968ab584249b4ae614e5f428b08cb1d93e9f2b52cebb2dda4381e3a5fe2482f3e97b42fa57013ea3f474390148137d857a35f34624931ec93781207b2c51d844c8e35776de413d66e93da8afc76401a9a4cd9d22aef74dc1ac35b67d54d5b699040f11002ecd13b1b80bbbcb3367472c6498e8f9725295e81d6096140b50dfe88ad8b4fac21cdeb43ac8f9c48e027b504ea8d0a35abfe96b1ed0961dbeeeed2873780b4aa14b10ca0d81bc1903d88db290448d0b1365716e07e58e9e64a04bb0b3f5fe95459b7773cfe0d33d04b7c243a87d4024adbc45deb7c0e5c815221ecb72936a1b2bef5de25b80ffeee550e4bca3a8215ca68278d4b9432d27066941afe5d94ae7fbef5893fb5b292bbf4e74eccff091991377e89ec6b5223cad3ccc16e24cc453bd8e484b41406d917dd32da3c246e01877469f27c10611a157f578cebbebae1a5e3d8ab6ffadc67519eec2b27e760537f811e0b7abb61e44302f3b8cb603d78013c5f5930e7ed48940a28526adb8e034aaf6be4698d3aefc25985d8cabcf44bb8e629f6a2341402cd4414fd6ecb7c86568db0d3a4ab3152cce57741f7f730a0755f1f78d542ad1425c2bec7896c5d1ee9e7b32579ec3677da44ec568471c5936c9f33b85cd90a3dd8e7b880de4ebc0271c84ad7cfff668fc50d99c92e8189688d92dffc1f38c9370bda0e1e34a3269be45ab8652cc241653fed1d8913ee873a3f7de5267f5b036c8f2cb0b58af7e0be1fa213dd9ad7712033f7189dc916b887e991682c7b182f6380bae5877bf1270e586fb79d9ab80be87021c2646671a36f785f60fb1c48e8a0cb5bb64b89021dddac57abcc7caf38345b79b69cbd9ff43851e49c74a4725fab613b96c1567d796182174cde48340e2698c3e3ef60e702a609a3e86452743a1cc10c38a2c1164ab6d5afbc3134e133b2e400dc9260dee32a7f3519ee2645b81c613b6d495f5cd8d7de52407f6e056e41389664b924595f873ec7beb305d49de503a97f4bc8ac131e26a9ff60316e2b895a36ac5f079d548d38c11474073f0472b61c04b7d042e3ea91eee734348e3996ebf72f375a7a7b24a4babb7bd43206e8b613a3dc432f3c40b655efc326a31faacae151993c6dae6edc934e6938a740203003f7e7a89893f69b79dc8ff288014072825309cc4f9271b2057d3fe341bb895f2fdad2623feb440a4fd1f340da59fa9208ff84a6295f708ddbf1038c586d960834db40805ef103340acb6050424a1ea90b07ddfc59266dc201b48f0b34348413cd44edf29b0fa4bbfe5e2ded564e5ac045d3714c7e7a3cc28adceabffdd3e8294284d876f8c241db499060883456850a92dace7cbc9184d46a9da91023b4c4fefcefd4a1ab2b5a1e249a2988d306bd419e57a0e076a012f2732f3584772a1644e8decf7638c94fcbcdca21b5c20b5a02f556afa71d5f120f2ea1068bb3c294c7c1544b9fc0528369c365df3a99481418655314c9ffba32636bda22b79bbe4d25d176d77de2be4fe2a16a1b47f24460186167fe1f882ad649beffe719fc70b0832c9b93c7765adeefd51c19fa94450dc8e9f544117c46693b1c6cc6f33224f21a429fdd3d367c7076e4c71d6fa673aeb14065fccf67ce33f8c749199141a6fb8071834f806b8dfe6f6b4143c9c6571ae82c92e35b5557e9dc3c7256c3e7d522708c1dd8fef8fa5f273f20bc1aa72cfec53cbff2363a2a1deba0d8920c731053b742c17a1c22136858c7406fe83c0f4f283e795b8074c9c6183e7382c99eaa5280ed0ee144a6ef835c1170fe6c535e1ccded057e892ab2c8935aade15ed0829ef3b59c921c90f0d7ac04625bf1e820ed2f1290f3283a3e968db7c2f9c317519f952ad2f99bdffe09e46b41ecafcb0db72881bd29c33a6bdd2e5f301f7c1da3f23ece12cc2031cdb8fa92ec5a403400996327b3c9118cc494331ee3924346da7f7d19736a1a698d4e8b67f14af24f502c8eae7600d0d8affc72e863ac316960a0d2be5d5b5a367ca1743eb31d282254ba97df5d8cc48e027aded6fc5b6359c0c1206c2c2c8f94339f3485c4e2722e65326396722ef6a2268a8ce5c8eadb9813770c242888a009e8239579b475d67404e645b3fbd6377f99522676804e38472b53dd0031d0871e8566c83b0548b4593eeee64d2ffb0c04fc9596cbeb09130cb68bb718cf4c20a3722a29fb436236cf0b327199b95aea63cf37b772cf78c06d760b24276908d3691128f48b31a0b451368330e0d30e17fe043fc67fea3bd775780db15f5f7a2286956939afb523a6b1010aaf77da4345a39b404c91167e4dc5567105d0ca074f5eca0d6b49503558e849406477aec1c48c1ed02f733da5928913a2b66c15df60df35f72db49dd6ea6113014564a4fc1a56ff2f0af61123dc12d82bf0a220d5d95273ade19f9acf0c3007cbc2882ce20d294ba6c07a9c02328944ec6662f7c208cdf6afe1bbdf7b384c4288495321f742f5433c263e597c75936c953288f1a21c4e36df4ae8b26b6e0441e31121783d611e2dc49245ca5958cb10531616ccf9f89554391aacc70a86744e414f3dfe777f10a6f32dfe0f0fb5f401dcf3f71411526830eaadd1e441fbdf1dc08e1fd36eef7216a01942c43475d8b8c54cdb2f33abace7f3f9b577f7fe6c5c7819406e32872dbd9229ff37d1700e43b601f0ce70105031f3667ec15e8c004afd4a23a03783acc7bdc30d743fb07d60f6b9e3ac38906becf02c8d197b8be73ecc80fc78869d50ea2062ef387952a79f1c3906c5984f99cd324107e8dd1edb04caa071b619f011d6bb7e8182cf0f1cffd9fdd8792cec37c19c86155a1c25446850b9623d24b7acc392b4d4b692eab74135c1751bc68d04cbcf4f7f887cb85b19b53f3a8ef60f528279e08a08ae077befa83600dfc30e5df65b6b56028c9ff24ba279293945b79d55f9513d2d3e50b41c2685272f0548a5e874e08b55a00ff46771f0f5fefe4469ddf9b052b35a61d5d46f090a77246f9611c2677b5096e74f34e71ab9a16f6dd3d65987b60ba9f69b379c949dde7bbf97788df9e59ce10b4000914e1d0ffe06ade63e9d973550b2431fae2f273713fe46df6a0b0e1337a6d66064167bf7cd483b3539ee2995b10c004c08e6147775d7ef6ddc0863c28ab735013151e8c4af815606ce0e8ad8541f96c05e78f1233ffe1cae16ad864c8c51da4ffeb39e7a6e13f931f9b07d85c3d5edbd60bda492dd2e574299bf543d3e3200413b7230923cc63de8fc6f031e4cc0adcd1013239008d1fc15eb2a39e300dcd60ccb2afddb90227ee0907a6b38480788c7065eae1237a3735f15523c72ebe9b0645232ee4a1a3523d349eefbb3afd026ddeba4198c455e446184208e5a4b32f0366b1a004e6b810f99c856b1c50073d3715cbd4b950edc30d21c06479ac884380753e1a5101bbc821c4dd442bd80a7e3defed86cab48c4b352cbb0e1c29da9550ca846dcbcc7e8d5f1a6f2bed809eb3f20ee5efcc4a5894526e7a9a222b1f01b393e153f362e72273be338230428b6cd4b122f80766e908e09a2e5bb3b41b68041535da2f76ed9d8404a293149c619788bc1d941bc029f4e77bc104a8ebb8ce839bf38e4aa631413fc14a5b8e1b88ede1735d77c9239fdb97073417c2a0c97ce1c685270a8c2c87c80a213268e95eb4a01051738cf05256db36c74f03815881e2114f635ee108e00527f8a7d839f0d89e11e75ab27c36917f5b36d70418868c901d71d370536cd32fe08e2eee7eccbe7d7c24ecb5508674d6df814e73cfc507043db592f24f4427b5442ad93d1d86b02fda7cb71308813935c1adfa5416f6c9c34efa7654c1bab3ddbb28a38b7b2d3b61b634dbde81f4cf3ab6e86bbb9ad2c462ecdc554f83cf0df01e159124a2fc292ed7171c7711e96bc506327ec44f7014839a9f38534b1584c2385cbcfc009ddc44e18cd7092d26359167b1c03d3d057bc54e7bf797edc9d24bfcb8d74a6f8c5685dfccb65d7eb61d240fc5af4f030f55a4c4e99bad6da6e615a18f600b78a71ab502d16b2d570cfe69a811963bd57f6110184a2c566c9727a348119d7c67b6e515a9913828d56654897f4235085d962fc128546db490001e8edf0cb21afe8e6867d6942f937bbec6e8be182bbb7cf764e6bf4435ce87c2bf93e0710906b0b783c3ac2e58a231715b3bd9c1ef738ba391154c19ebd1eb62c1d74eb32ca4dc9a853a1164788ae62e0b43f2395823bc49e627085c6b8ce65cab55ae04037f7a04633ad1dcca88afe1e2f1c6ccf184210057c53dfb0a735123734db3d73a0dc6769c5ee94e591ee5299545dd6cb0377f12dba021c01865e7bbb4674e39507dfe8d86beef2fd74536db4b8d1de747eb02383f3347ec3b617b82e5caf7746fd6432632dc0b9f9c851a599cf2c87e2d479d283435a11e6c376e59d4e0d5b32204dec881731ce27bea1a61a2e98243815c8242b6d146e0d22e609cdb5bbc6b56b382d2d6dda4434f2990a6cc9a16c89823171eeee59984dbb09e781068f327d40d131eafe195a8e0bab08fb80277f6d72e136bb546ab59be8a73d61b3ce02aa7cec5e839698171881c06e667813a4348a17d7774c0aa43c0a671edc35cf3b4597e51f6bb581181ec8c51c980b24af4a466aac8d9147263491fc41a46e812186841671604e0ddd4b07b555f4cf3e713426b38fae036e7745114da42792df47b503b8f797203a33d03f64f00026b43c180421e98e451c6a04e4d1c99fdbaa1c3d79a9394501e083f5aff6a5b42ddd936c24182a80050255c687194f20117889073c023fc42b8c5defdf0b8f2700141e609aa0a1d8491dd4d7135286532df4f16d6904d269a005343849b7d343e58e9c4637234f10832cfc506205d1f7289366b2eb7af355284e4fb05c12e052efd381ccd37d354a275921245c35130e8421cc7dd0dafc953eb65758610c0ff1a127c59b26a724ce0e2793624821141b396ade85b03fd2c52929eee44abe411222881eddaed73d48a52b2706166699b6736c19cf03837eb1e812f522233c4bbdc4636dd4719ea8780d6ec208d2b60c9394754b6f4255e01698bc797737e6f6a5a0e2bb10f8d39303c00cf06ce64901efb06a244966afddc973089198676f1f0d4239d8cf21c9ec5af213492b54e386127adcec3a20bc7e8f695278c47899f17bebd983b291c9f28222677640f17ef6c7711a8bcbf8228ea13b8184fbb00d859e78192213570a82136332da54cc2ffbfc90e9c69dacd8da1cac0a16f04e13405a77c7f4af646bf7fe2767af9daebba9d89f342b040e8017b84d97e6a1f7c59e27c73b2409f89e2e9b1c1b5f1fd9284e8a21caa3ca755b0337fcdbea35f1fd7f6cb41371de152167b06f0ea457fe6f7c57bc22d62a0861f176833d72ac912dc3642e5982f2e0c61d18bd3bc285a64d527f1ecfc840a358a4ddf3a7f3eefba64abba3a5e3165dd2f489824552887d1867e60798361e8410c12415f18238d22ee38a28e9b3880a6621950c5bf41c2e20ad763101b90017a567bae2e3ff035db2b692f7a9747052042d96da36bd0e76e9b6d8a6f3b632a1151e521e5d2e6a9ecb157bc347e1dd8f2f968bf527c42719a0d2fa9f491c174a74d067aa5279169550326abc1ca1d56f7fa4035f34e852db0bf53d4119ffa2a940e8b9de983342e5853e9b8f76bb634108de3c4314d7e2a2eeef9a6b5ba06f0509d75a10c491cba4c946a4e2689c1377b5f2b91b23abcf25bab1ca1cbd85fa4d0878dd2a81f09a9a66a621ac44474981662ad71a6e902fb01aa8fa0342cfb114920ae392a5bc8443e12b2e3f953ed4ad727f22344ca4f7222468b17ff4096fdd959126f95c2e7183a8029a292680031ff6b2667d5b082fe68ba633bd0bd2811b3673e29cbb9bb3e3a21abff794432ea1f6253ea2537fd3481b1f4bb0de45d1acdea36a6b9669e098b5829c8fa03da4709c7cb7c00d1f3e4128832d35b942a90451df4008f01fc9da6b39688f06f3d376d33404831b4bed6422315b98a689c1f77c94253ba68a7add352959bbf8466a3dafa522a404b6df4eecfbdf30bd6219c9436b130b86747a0a347a015ae1af17129aaa79082b949958b48dfb15aa75bbf7e6b4755f100761284ca8eaed15ff1c45ef8ce42828ade26a749180a226ca51ac6ed4c7d3fc7acfe3f3af868547955355257e55fa1dd65fa072d574d85f1fefb14f8e1889080c588c64af2c2db22b4da92ef6b9da08d53b46279fdc9907610b0c08febd90bf7a519c4b80992a6f23fda9717be8bc06264aa68705b1696fb2011ca16b057a11a6abb061b8576d26a4adec9a4561295e0a39e2df0bf98ef409e73c50f4a207f38c41d220acb9783210f57e733ff0f34b17c79ae2e35eaba5a998634c4d5a62d842c1d8cd0e4816b5fb0c45755fd4dd28203e916ffe28fc938d22f94f03244123ce90bf54a81254e655009c548cba212b6d7d138b935ca7a9466f36ae8761a28bd5480894bfb133556bb45be243ce923f85f17ef9b56652f65695f1c1bf0f58692ecaab89d664429ac1eaa2d0e37b4f51211feec71b48dbb8881d7d7440799e50a8a5e466ecb786db1280aecf1f815b1829adde6657d216121c3284357b5bd43e91c22b511d4be3631169c2d86fbb663868cefdbe197ce0040c87431059841ce5c1137035425f61cd14f3a443d34d7906628c6b93bc763b179a0a67982dde37549ce804d4ffb6ba240b3b1e810b66b95b37b7230be20d8bf2fc078f5c4feae0a8f611a1d7fcf5adcb1acfb3a4ede675166edf8bffdcb0efd3f1be4cecb8776c1a02490b6cdecd7d70af1158534e40e9260368448c2677357a671c8d2558234ce9092270025b5d1d71e540ed37fd63f80a7af56ef860c71c6479ddd8d90ff238e9d96bed667bc553aaba9e63e64cb6c230d7687f7f35fddfd9cceeff203944607b6e2bbf16614036675b78d30754f6593a38bc7c55d33db7e51bc9ac5dbdb82260ffc78636ad29005b35a1489e1b58036c5f80c4ee8a004980c260122fe8cec5cc63320d6ae136347d11f3bd0a5e417b6a3afce46502e037962987c5ec0e6a606d0e210b949ef36f0046a9644cd5e7ed58b6c51af8a862998761e7649b6ea6f992e2d44114cc5c0bb6e5a51daae216b22b073bd0007fb0998c4656933b9e36082ee62237ae1488ea56b14265e2e7cea5271e96c7f09342e2143432c94cf1006b8de0ed4e606d64c8e168f2b55db3b473642904c215e1a7f65edbf5a787c60ce3fa8d80626bf333f21953d269002b1e702fa26d7a7ff811b51b6c3022417e49d445bc7ebf50ea975cfc4b63f03167223a5aefbb978e788bdb7abc8866a9f0ac1d28d68f0b51c8a1604381d159bf3e115b0fa6bf9f436c34519430416f9d13d049420e00eca6135e39105c6906338b822d587381991cc0cc9043e8367463295c31a096f98e58c757bd495d2492b9bc123c35060eb95ba6cfb2946fb8c270f7459cd1a2aba2111039bac8688a2cbf5995a331962cd1ac8769797d2350432e1d986459c8c8ccde859dab7c46d227d0738f13650498311d6ae8ac510b2479b193e9de5e5449dbcb1735ec0cf3206d9f37684433ee0e84abf835f102e32fcd8c26aa1a697ba81c8342e4862af8fc09c59faeb342f108c0027c52212149e1448e530729c593401c974d9888a13ac067fa98f35b11d7a16486d864a710b5df6834021b837131ab32693c75f31c1befc7fc87675220fa0d9db76de3376260baf38dfa5fe750b531a0e391d569246bab11afa342782d4cdb212b4b45c228a0ed677ac6aa04bfcc64e8c63b44316b61ba99ffc2b78a4cb79ffda42f40582c62aa06645d1821aac24ed692ec4c4e8dcb2d97ef738d6503144107a736dfd22b460dc96533285ce5671010dec685d3ccb021123e4ff107525ff95616b0642470cb1e71366a9c5695ee5683a69d5ae48b66fff7f121de2a30d53a227138d7205a6a6edd1ac67463c8316eca263127e14f336d09369371b26665c4984806f9d9cfcd7cb546a91399cfebe52c2620493d8fcd8d8bb4ec004f5aed6dd0a7dc4853261ef0d4ed49dd8fa6808b7c9fa1e3303c8a191f381c8e884cf679e3d638e93c89e521de39380a05f9e4331b06ee0d16e59c9750129fba7b13e0d0ca025c65b4b93b53ba3d2accb51546400754ea29619d1b5356438f9887667b6c176a206ab12cc63b631d84bff5a08809c03027907a0a1d8c1113fe61c42711ff132378432851ff8a49f3b6fd998a759afd81034198a29ad16ad5be3730574b696d955399d2bcf8fc85ac9ca95ca6e27f90ac550346168eabb8d221db0e54cb7c68351c044d4bf8b64c3a57eb7c6a9e63fd24d61c2be52ad3d179e67aa804c1fe74612420ef68185ccb50da53c0cd19f044e5eba47a29c904a12274b6cb7374da3be6483fc10a2fc2fb954f5d8790d9d05813df2cc07e616f1a7a57dd2f2299f262a0f0ab6fa228b4f7ed4edd726990fae8091b5a3c97fbdd16cefb3b0213469327e905c8ec2bb163d7dd9d23b0fe08f7bdbf5b7f543531d77fecd421b208edd3a80db84b20ffe6eedb91b94394db1f5341e5ee015d032edcc9a8f1b01b666beea2891b07a6122fd8432401ce8dfd6a9eba24ae5bb30ea11a5ac0430a32088ebf9280e65597fd8c68e950b9cb5ff8e2d7717e5ac5a0b9ea303917c7a03d6a9411e42865c308a06ebffcdaa8f3163c87fb65dfd3f7208ac41c09cad51dd7689400468cd40859fb1d2c8fb8cca10b6b1049723f13d8c78466e7c50c57a2a03504b30f9336ab4b722e8e3b9d9147cd83ce4c6c8787532c87ec7e0a3cc2fe8b39a22f08190de08aec17bcba65f974cf71e6cbd27eba12bd0bef7159642c7f954d8437889078491bad3e73dabb4074e021effa87353402e19c516b5fa0062ecf15ba448cc95019120395303b4b612a1084f2d0bf002d6fbb9a1fe5851a5329db44f445822a58bc500e4955e5f19c846fd9b029af5f21cfcecb1ebc83d734e43e551402b1586edd6544074adf43e624a62e9613c561f1ac40600221be224d350404bf8252accf06563ff272f762ea4fd342e92c8d7a36a1e9909212a729182a9235c8dcd09abb86b5c6dc2c0f389f56eda10c42240f5ea123b942bffdb12f773022bfa041a5de07480530081343e3453febbccb0f83683ef3becb30970348eb862e1eefb8280d2ea346455a2688b7fb44fe8584bbce1d6aff8aa79e664057650d29a06abafaee3addeb18562cc54e259413244a0e608a6a2ff22d58543bcf8e246dcfac5a3f82dd2bb6eb2b48ad75b2dda13d2f8db69afa4809b66648702dcc8818d77fbd88a9c628115b035f98c73a1f76d505aa6da5b9008dae9f54b956bbd331b135bf8b910a70439005a33c909e4a8aaafe17f02443238d1e898ccdc172045f784cb263fbc2058dac1f307f6cbeb457c32ca7c3b3cf9d1236c247236e4f8964542f9f1d42adfcae3653a1313acf20635bd50628bc1d7dc70c561ef3adb34613e8d865d575511244b3304eaa87066e029d75c7a6f1f8a19a19f45fe8a94b77332531fbb5b7db8e3f1acff3a00b665ee8e7c205121d866ee42bc319cc1d18e8403377aa89b44e4c9355269cab263f52dcbcad77bd7463aeef9a86a77d56ff962f99e2fe6edb131f997790d1140d1ed9bde55853b546a9834776a97c826c30c747620fd8b8f6f0c513138aece4a04d733267be5f7dfe4660715c4b266d7245f20a7406ded4e529a9245d660ca360d280f9d946a11282e1b521eeb5dfd3f817c5062f17f7099245df23d65b99a05f9b70af40fa4fee73c65f11293a83dbc43a3d6eedf76d4e5b079dbcfe1ca52e057ac78d869b5483b5e0fea1fe0efc389c90e8345e7fe818715e9aa35fa274b9a0d6354eda3c8ac2b87d1b96364f9a89c9cd4f3a804fe4b88094c6205a976d053d276c754fd2b3bc604e4ed1b3e0bdc6539f7852f0c9be4b5cf1f81c75bda2c138304ef670c6eb4fe70ef2d36a7e4de2b9d20b4117852dd235c1ee5186f3b6ace469a31e36f76da197c1c05bf6450ddd34b95c29bd4d18f023183dbfafbb5b8bbc1ccc27caddf8ec7e26bdaec45aff2fb2a7a52c9f48eba3b50ff083a17038c2df4e57337e6c979685ae695475f49a4b74496d63b6de5352c2305e4b8e585bf3a480870478dcbdd3afb97448316d7d85fca727482567820059ef251080671c583caea3d40eda3a62ec3dc3b912683c32c3936a5ab1bb90985083a1910a7f211f9917bdd4e664471b9cdde6cb42405308a4ac9f13d756eba521ee322ed798ee30c53675e41a92c176eff05b5eebfafe7d9bde110254a6a2656a175c9ba837ce229944086c2ed83096df53c7c85e9add4a0bced764d3d27c636f7205841fe87e9f7596e455a129142504abc3fe3a05bd9e7194414a0716eac9361d17e269d3411392434b46e84001dd2133cb1cc3df87e1823d4e4b2ae114744be3e4b060de87803a151620d6f34a52eebde3d561f36748a2e4c5183e1e0a799ea55118117df7798dffcbd27d30e8aea46a219bf5bd1d6e51574f0dc7496227aeb908f1c40ae737cab1fc365ad239845ab90658735e9fad50f1c02f2d9b50a7c131644916d1e2678bbe28dddc7ead867b4034ca148a42aac4a7e24a789a16f72508fca444a549ad2a8454028d131061e5e82a59413311f0a717ff2aaa3f9883b97703bd4d9cff1b0050eec1d500a4c2d84e3a17e2138aa7ccfa76597dfdfb13e9b3b29a6a95697809353316b7211e20c972a733f92f88d9cb06650049a51e21770760347c16c0770871b825a8263e9b87e1068126c729c68ca1ce1b3919f25569f55e1aa717c30a4094d95e584289f56d642585658557c33268572b8a977f3debed60204ce1848fc60b3f89f2c933686795ec62fe07c6578160f071969417fc4c2505305bdf90af4a8552e4e96bcedceb9169fc0de1e9e126b8b567bea11eac1c981ae29b2f471388aac54f5bbc970843cc1ba380e2d4f34ba68f55a1202637380205e2aa7ccbf53644e66638d23422edefd2aff16ed1051f21fe2f4359062e8a5a5b36934624544e8f5b246e2b5ba9e1f9743d1341442b3f4f6e0d59e470b3cd908cd7fed773fc16564668bf09bafd363fb0b5a444058f4bf8e22b4b6887566bd0bda430369e5eabdeb9493b3b60cccf7529984a8817171bafee1bc777d59be30ddbeb417f145d7680d4cdce29a84e15f16f900fc4494e03684729a1bc04ef5087613f054c6549d90d6107b297a4367e9b3498f6cef6ccbd3c0c666476b6c246bc7215af02302e0714ee7ee22e18cfe86a41b7b5b740a109133c36675216ee8bd7244ecbfadae9dbe03157cab834e81783e1566fb26ee6dcd60c64e45ac374ff5f701f24490d44afb2bb7341133c5757e66cd91f025a4762987a175c426a235ed6a35afe799efcfc46a82bf5991f0d66ef892f5979e9425dec445a5312c4466c9ca3d0598995bdba091c6b8f4ffaee0ec70b4101918d9cb70ffb27f1a3bb5c292e6b2e6e12fac21e4790cc87f9981ec16a297310eb27b03d87fa714d34aa7be83b1ab9be93e2acd4b41d2b85b3cfa265a48932e8a6fc7a96470a30ead9110deb4511f92b2b770d0f95b996943699c611d8d260ad335daea17b380e6945f3526ec1267ee7eae8678240dc9743a6d1a8b34f76ed09871999aaa3e91dc8981af9bc6c26cc2fe19795f6b2940ee06e6e75a4befdd03cbec69261071a392d20716ffffe57f297ad5d1592345ada9f95928abc0ea5f734fb2923b6b6c171020f52dbddc1198d716425ce8ae0d2cc87b03615d57b40e0b91f47756c453645385cb082c7af8887d6accb1adafe9af72ee119da2231712429e8a0511d164266e6998a3e3d79d6bb04472e5d010f17378c152d1c8935e0be6f418131545ef86d8cf22cfa18ab8a7318dbb0a1986dc9e42e33c48e42336e8ca7a5da99aa173155bcd3decb3c92c6979b861ab269eb46fe02b408a17683b6210dfe912519bbdc0153ab504579a4a551c7e679803f2f58490777b1e852e2b8ed80fefeb0ae64363c6ae6b3ec9406bea02be95a5f7edcbdd38dbac10f87efaa78aed2a38f1e9aa65ce63cd5478294a1227022e497fd679d8d0d5d73a041624a64aad65d6c235dc12018e466c85230c03df5abf0d57e084d6ef68c3c6ea1bb37b5d56f8bd0a51851326c6ea2a095ca534249985136701c919cf50a6431c664688addf1a91a30e2664b0f33fba1eaacb0d7d1f7d038401ca092d4047ff66e80aa67babd903762ad9f0dcd6bdb05ef3c123e269741d64dab242510eddd2d44a65d6a9b51b1b5a3932514d3f3a2c9a0fcd3fa70fa92219fd9465689f325fa7b4aed82478bfb8d39524d0603e440506d016ead0ae0e6c86ad9165a8d28679ce5c81bebe2558bde663aea726a0b874774e3aa9db4128862706aa4bc2309cd5f63b6062c61143199f77b9512bdf79fd3cf575679b11c60e83b9bef2badd1797d23beeecffe732c0e4c32fa0613b61fa942a57d2e68db75696078f122a66bc581baeabefa989d42215954a5419d77f7ef822ae395d3e3f1df8e173f0ecd9796480faf7ce567a0fe7d5ba5c139a5eb30ab0c9d01eaa39a5c00ab195d7e89936d042f9108a64c83e904180c04424ae7807b630650d8a49734c7c1d9660c984fa34cc10f39b09b8b43ea53cdfa47507fc374ef1595b1c3a31f79ece74e8fed310e1cadac70dd153e7f1a8bdd08441f8231ef2f2f377dbc87fd5b152cedf2bd2b1fb1ec73d6449f63bfc731afd05445fccb387015a59b4cb9245bfe4dd28be29b9ef8344cff9c635af4d54ad2982f23fee43517a3c3812ea21b26b4bff5966746a55af202aec9aae868acdbda2b634a021fc3baa264aa725752de5b30bb636748a68284c71e48b07dbba60125716d48530ca9f18ed285d00fb87d40f91ad92fdce93b4cfc3fa593e24b7e9a321334f0b554981afa86b49b0711a0935de127f6c5a040f1f035493668aa4fc19a3e70f694621c62ce81c7c5df7ccda34f11aff9a0d7219ae8c5c21ae237b237bb6323454402b5a9992d647f24d2d5b9ac33fbb174cb25185f8d0ab3e9365bdb1efe1a4bebd6429c898db01e3503513af5fcbfe17ecde52eeca55aaac5316aed07581bf261d3aefc75d1174cadc4a856494f466344ceb888b47a0e84acc0cd806b450109dbfd6cde15ca410a8ec21f12738421ae964ea9000828c0f40dfe9c87d79f297f7655240e185c4c178d947a91d67416076768986fac55113d4123bda8cfe270b897fe4ae721b1f9446d189913b7d310511644678e34c71e0a1b19134af92233b17e5ca76ea7e57fee2905e6f6622497fd9747d81f7cd4642a424d8465c59846d142067b000965b63fcbb2dc4e542cee7726af11de091b4e3e9ffe410e6eb3474c225582638db7fe538ca499f251f641018d3b3c1cc0bbfec405e02676888e68d3de65587045974729674efb2dc8456a0e5c32b0dc9a26ac02d04835c67697292d3e1a025e9367662ebefba3014ade00bff0e1a41011858a80fc11cc13366e4ee3255b679af43731e3324309fe07d3cd3fee1e5a310ca93a8af95e4180b1d053e0568437e2d52c1a262fa892ce193279e800813af34bb425da556b1cc0e17309bb37220c0e46bcc1c76142c34528f70e4b56a0c0e7c56c03a3a7802015b86520260b84bd300074128991145edf96c8dfb569f01bbce96b0d9070a5c1e406b91935ad24f3f9278f156d72d6bae6eb6641c15544e994ca1b94332e5f2089fcac1e5ad6ee0c8c6991f8540b95b8d4f0cbd76c1020a838ef108f873ce7b8ce90ce0243e0596d62de75e3d20773394bbc6f959159233a34005a9893ec8223c160e02b744e75802c8b2d607510ebdf0e4b6a232296816aa3ecbc79403de92119132d73642e4c139b9ce0a73963d4449f67449edfd54dd0e93cc18af691c34117cad830a85f59fdf2fb107d94045300715e24b70c8d4268d242605d746a73717528f970dc343cf0d438a6b6fb144406a19bd3e22e996720b943e1194b404808f22d0841436df7876e5ffba143da2289880911cff7008d998c3f31b551e0fb4a04332833b7b08d9f0282513da166678adfbe1a18d5bb001e0099bc5eb9c8178b0282c249de3232962956f40e07fc94a00d8d3873587820dd449519d22128b9ef0a80be019b63c496862b7c5e815d54831e705600d5251c741a3be13ea49c33421d887e2311bc181ce8e9a4cb74cbe236b261d33e894efbe8e348a4ef56748ef1c23c52554e7bba5e8e2b9c20f24539144148da62454344db305f25ac7354a8a8bce944574e58ee94a1b41826d7e7269a4a94e0273c5baa8dc9eaddcc715d4a6c38473f0d1a1b02a056beec13317f15971676f3f8e02d8428444b9359d8fab9e56e5cc8615a29bf60b65e3c3618e5f3e55ff3361fad27ef86fcd80a7d5ad8fa5838a4f71c3535a755f0dcf444ecb4d7870d21d2b1077237110da4edb45e3107d5d3acca630ac66b7cb5550dc3476f5a35154809bba02bb4d08bcd46c92ed050a3aeab7133fa333cb4f18f7e6aca64120935e66afe20226bb28643cd650d7ca26c1ce0825a6c3ee5eeaea50590aeebceb12c2696d20db28aacd032675cde071ee68d6f2a4355963ab795c9ac72bfb3b3509b6e08e620ce0b64a1ab979ab96fd605714891527e9efb3a18b8a8dbc2e08d1e46e7db9d9f9c6dff66f94c7595603fa7c0c94d5384be265fdbdbe8953832f868750433f065d13b1d82ddcb66ca854ef2c5cc1703b103e12b3b22ae5e21d87a1aff8b64240b00e85f3a23d28b12df0b48d466d72a21406799c0228976575b95e6ef663f7cb13a4e274de9befa759f4a348a70073d9f57ac97b63325e061cdf54b2c8bdf6d4395c3a5937270a17fe27e16d4fe4d1fcc79e290ed6a4912b34ddc5565dc4c91d7bf67faab459617f425e9d8ee8b1f4c02ed33e6b4f44f23a0299841ea61a7ffc0dd6751c61af2829bdd0e3b693c6471fcb66a363480c4452f617cc1d93152024404df7207bc40be3fbe33a8b04b694f8fe9ad8aa7232e8d9da34163b787e8f59ea9a9f92ebc27fe4a91be44d9d91a6e2bf7dda375476bcc8ecfd65da3fbf14df2f9df31faf5f67d3aa5b5c4f2c1353acd02fa1a20c774c5caeccb7a6a886adf08551cd7954debb68851463be80f41193c25b70d638e551feb22d03737421bfb2ce339cbb3dabf014375fe358f6cf737301efda7c4517f609e68fcd3b4863f524924fc5e24b4552058376a6b4d6aba05d10d32e7ae70ed655fc496288b8c74858a41532661687abcb07e119d557e102c35abd54acde5d328581e69d24cb006d4dd46cfc46746245c33739f328d6add3e65c216416a622572d51180dc1dd64a636d1e1988d9e9eedf6c49feb24765543bd2c36b079b1615274703a20827bdaca292c7723dd2d457d881ab126ffbbe3b6390ee1f3626db8ec19d4c08049a5dc5cdfefa0f5732c847bc9ef613c5d83cfb1197df90f8ddd2050b23949bffe8e2b3fc41acf45e1d9ce63987644dc58e5fac02f8e30c6e6a56d31f1b40c74458b81cf94415e54ccc24424ae5eb22c2b28a7d1461ae8580eb5c552a49b91bc683d387dede824646f69368bec88e845223ee72274e5c73bddf099eada96fcaccf6c98d1df843cf82d2a15690eea8833ea8f1027028acdf4957471cb4f98c3c85ab11766356c760c5be608ceb6fede75f781d3020f11184e386a5619585bc94bac10544ea4608737dd66263b95df1620edf2c9f6d4e112ee01ab5f21ab970aa5f2242b8319a5a2dab8e75308f92b17ba1ce2a1636c462ca792173d44d8fb8ca9b5a766beba6ec83471aef0667381c39d6d5b7d50937cda2fb7fc6ca70ba79b984fa100a9ae7ae1f293ee3a2c2841c85e7c982e56497ee491b01c787115121c6bf6c44066615bdee205e3a64dd5b5fc066c3055b1527f007bb443e0865e7ca6c61654331edb79366df5bc21e91a645cea164c3095c515b802496a974573f45e7f811a862d83abe6945eacf8f3876275a6f23e6f1518ad2b0ba7aa632bc8be7babe99ff87190f91385a7d68502286bd831709b5b863fdc7d1082473ffa99c77351bf9b564a25e2d9f40998d868336720763bcd0886d6ce3965ab8e5d3418572ecbfc89ec5526ee9948792d85ad0cece90b582e40d37aed17e7e36539149dcfd2f602f679ceec743a1d69b06e97be00d0632a1f02e224752b7185f9959236f07ad5db27fb4f55b81236c986097d526f38262b854625f902018e9d2c6dd36b22a66aed4f224d7527b6056d19c50c0b720ecf9ba9aee34e4e4ecf4091cfc65a5e0310d3e61cf9bde267d2375f597f367b13de50222981416e70a604288ac79166fb3b117fda11c7fb8df347d62136a77e6bb8b20c1c41670fa4d037f7c648e11003e32f333a7762e2030000bcdf809633b007b9779d2182ad658ddb5cbcdb35992013f610cc573be606f151323e9892c91c1aaed3282714db0a27c471ec1e61c17b25741b8d97bb1422787435ad57a109f0a322b79cf64d4c3461183cd93816b289a7da045d67f0c9f386e0be160189250f8af2caa2e4e1267bd883d561582e7373dcbe9d1f5a545c433fadca6e89c51a1ad1f29f5f43721760edb4a2e4f5132c0ef16b902f53cb469a30d4ec74cdeb6a18a1607faa50455cb7288bfbbc5bb02084c0b8543fc05468abb19371fb641d664317aed2f630f88eb8ace0cd6bc76d585c9cc4c2914b5202b003cd12897e6a168297cfa50bd543241a6adb4ab76f083233cfbf4b09366ffdd8c024074119b506e72b621038b6f01447bf241bbf37c8af3adc37e39f479d5875376780d0ba70659e79740b5146aba62f7a6eea9d99d1e5f5d536bdec62297f116988a3c2d107a721d2bb5a1461118579089126a4f27c6be12a37663103eeba9f7588ed3ea1c3ebc124eaf3ed40702de7048c27331897ac83b7839bf3c611fb5bb659473b7602d4fa02f044bcd06ab079d83ee2d6345c9f60b63e5298b1f13eb7b9ac1a3dea12f152815cd8f6e6eaa00f175f1420cd8d74fe87a11e4454ef571216565dbb818568476003301a126a45f1ee36445b78a639e0670310ff77f56e89d7aa6e15c6cafa4ab320dcc8a68f8e08bd8a2c317e237ce619c103cba79471093e1e6238415ff721abccd32a01c625a0d7efa160c143dee495a895611f82a1622c9f2e80f30f233e106c47def24a0a33ad6341408c97c64a5d9e3f56fb3c2d6fb5963ac2067f866f35087954c225a71bd3de2397aaf165a0110a083789b275c7897f3144621381544ecde579b6b20e96a0c068b1360b5d8e1821a56cb9e76168ea65a7657a8bc61fdc46aace06d766f673f214508bf90cff641602a99ab79b0ef573b7b925c1846267f46100d53a224a2542460b84381510b26ad024347db5891e54ebfdf2334f248f87d0ab10b333dd2dbc8e853b06d3d3542703bc047a860dc9d18e4a69f51e133303bab38326ee08bf3db54313d60c11d51d8f0d375441be374a587b1dae028d5e99f3f62101738d0837c215144d259dd83684a3e2e936135d89dcb26712c8ee278ed0b4d626d3490e65c08a16a29f874f0c0e64af7876576506b84c4be700d0af2c0dce4028a400f8d31aa4eb91cbe6796d01fa0a80d84d0dbcc0bc393642542fc1c318f0a0664ef1b17f28cec6f3d4db3cfe687494222ce8a6e2a52690c182d23a4becf1636527febbd2056a80047c8be68e34cedc724ba549dc2209efb893633ae792f544a06146a92bb53415adcad478f1a2c740666345088bde8142189a90eac51f6185ff3eb55c221db3f96e6dc25fe07accbbd43234715740816125e17a82615000be266db23bf389700f8f97e753281a5c6995eb10cc109c6e532987141f404f0385fff4dbad1334f50a775bae241c86b0e45ed21bdaab9011cc501e602b489c16a5264fa19ed6f9899a60856395f44cacf2a0c4473522e5224847cac432ef97b642a6af962678776f3a900a21edac0d9ef5ce6d363df218271cfac89370898bc614902e4a19484b18a16b973459da8cc465f69c00415b9898e427c3b420fd370218457f4737316f4b33393c161293ce1e42add8fdc060f1cbd73559b80a6abbf00385bb0ddf304eda1cbf53b691c4812a85c36fe03a3c3832a351f2d7bc9e15710da41a61e54bc65233810ba1096a308c29345e9cb9df46cd54716d1c0d7c5662739a80c0301c4d023a87b665bab4744bd24c064f3883a148a5ce6d00371038b21840c762cc829b02b0da328795204d9405e7b5d918edbc8eab5ca530c4188a027dc68dd7d6f86cd8a889ca4a346321ecb8b0d0520ef4441912658b4c46fe4e43353d1f261c9e490c21513169401d2881f396be2a27cb11dfb2bc45d6f62a48c02032fee6055cda8351f29abd1291ec724fb0b1f9c0beab6a21a8d75a3fa613e4944f870fe73f61aed8bd9c36ea91851e6e7841e7a551e247e45f11a851cfb59036f47f7f8c077cffa1b060b0c6df34de7f61119cf12588a30f0387b3504523e4dabce478da18700bcf5833c0afaa0c07a8618d88df65c76c26faa5ee9830e6764b2826afbf1e6973544c0304c91c201676c5133451a4042ac2b2415192c023b5bb951cfcb45d1d51eb05538621a65ee3c0dc1091e8691f095443dbc5af85b6810be53b5a58585576782547b19ab167e5fd32d0dfba866da5cc0104d0fd4782a44b3fbd55246e3194bbd862c957ba017d47078f022df85e1e24f590317d6b6882dfca8a1e52fd4f1b84f27d06ec75b6314468dd4aef9a041785383123e9f5d5452f3e192f0d04b9e238f9b600643300a0fcda73871e77a3b9fa55c1d9c79d2076d79f33a7e46febd5b446c9d5ae75c2f830cd3cb0027126d0d5d52d8058077eb2e451c83c68093f59e0b320d4c0f2a50bbbd609247662f0641092d7315bcf66814670d2233e91de8afe019b36aa5f252d0855fa36faca587b6bba8dea360e3b50e77abfbec0c0a19a9230fd8b1635f2de532e0154dec2e09bc8a672776e26e074f77d110b4938d4d86f6f27a48b8c6b5c12345d3485609850fd36747151635c342c5e717c25b823e553495fe9e3a3a1a57b786a3952f693b0799be5608c469b51de4a26e3586cc3c0d8d74d76173c35587d56a023e5821c0c3b99ea00f12c66200b70040c61f3c8f0d3cf4943f35e248ab2ea8b983ac62e68078169c56eb02086a73664a82dad823cb559a1080d2e41130932e62c05781030f5415033c9319963c2816220f6a19f4ce80ff622f9a75edac4770852f6e736e2b2c9e1a408b083b45040393931eb78fc8eec138e8ed5f9c7e60ad0930e0b75f81e8a9c3c030500572d4328983b3996314520dda119a76a4255c5f7877082699e78298e96a80cbf81400da1f0a8e76d283facee19f710557ec8af9b15c8585b1a132e9b84ae5831b6c3cd928cdac48429b92afe0dc5446a06a071f7b7fc69840881cde7c984be7d0099563f8156723d430c7a819b8750a190f9196c3f291a3a0c4c47e2f38b6c2fd4c2abbafaae4a0d39cc73a50d2032aa28baa3626458eb6008360ed9060d46dbc3426cfd02c718241f3e33017b3bcd6958498bbeb22f7460a686fc98bd04f9a2b06afd8d713278b1bbd30702b960b4a4808475ed162000918a3f57682cbdc6e985d03b8c317a90bcdf3e31bec4b0c83a2da06bb7b9a08dd32e9823442186d194c4e9cd91699c291dd57ce8be0077e42359cc7746cf6520c6349152cb72763a72e57a10b51aa9ed6e318884f5178317b046ff9ec771410e29f464ca719bd7064ac45e93700bf157f1e527872886e1799662d15eb28775068008a2dbd5564aa541736f793b860be3401dba0fcc2b59cf07fec4999bec9c44e3466c0a07191821789410b2636b8c12cf35b32c0eaa0b1df3911b3efa683380513c22205090d57b1a4329f9cf4abc28a44d5e6d6d54ae903430dd74246df7728e55763fdac69943e6a6cd30adaa9a1959a5b623f4de82c43b81443ec93578943c5733bce7a055138110d87dcd749e21b441dd78c8f5bc1af7cfe8997d1048a3869ebbd28be335a335a1f962c19e9972cc842e1ec385384e083feb811caeb3daf0e704e20404bb16e487209e58d28ffec66d1b8378eda9906e54d18517f8f066e804d83099141a463903cd2f2bacc81c9d043c79bde87fe5e5e7cbcce16b52f7514a42c811de98f38076cd97dbafa24ace79d03d916b55bf9080e646f76844be8ca552c54f393f8ceeb43472f9be8af39cb30777d791749c674c9cf1e5b9180d3e7de7257b65c9e4c70110d646ca600d8a5c19548aef0d0ba514702775330e87e340d59ab1af43aabea6641d1240107035c883c747b453c411d083fb00325ebbb153034e597b47522272b8765ee1917248757504713477017bda410f28be8d7b9652fb550c7af32b24e14c29a111b554b3edffb8ffc9d6448b777cd6234a34a4e15f1e28588f284708d704069d4e257ea237d60be74954420643553d3ea3b09a604a0b3a7c2449fba5250b1c90c644641d42b6b4260d4ef39a8e8f96d1351cb876d5d90b07ec68ac2f12275dddef875a55349eafd9dec50b07cb7a9212e0f87b62a5b129ca1f511791056c1bfc4ba8853cf9a9f57a0c0cbcc4bad68053e915bc807315e3a88ae54a1784cc1129ad31e2638741c9290ff17d236d6835827ba8bc56367d95b039aa3cdba533e002444bcdc2dc215bab4af1032d6c87a8a3305296cf5a2639b96c6eb27732415814fd53fecd649188315e0bfe669d098ea0d72ede13a37344fc4f886c5e16ba59d9bbe87f667c73220afbd1c3e76cd23649b61507b553290b61f6ea4cfcb2d19020b27e12a61e429d6af5f4807ee1eb90bdc71dbdf048d3c465c9f004d4549b8c4dd10984c31635868b552d15b66c87f4dbd55a63e9147246888786481043b38e44335186139bf7bfc3d2891d2b2ca0f27477d7c35aa7fca5f7ad5dea8cc4f264b543e1fc0d545937591c7681c8e4d6a24e2cd9f574f41311287eb6f37f062f7e69c6fff76c1b33254033a3510cc9092a77058f29996b58573160e503a0427c22a4cd4f61ba6cd8ab288d2cda6668fb5538599c79078a43d112b31d0f6844e8dfdde827843fe43eccf2ad508727db5ea62b6799b6a22627f0f787f93ecd13aad1c1418b464cfba7c537905a2d9e01ef41f57689e4daea0610bda87949e1d2951fdf56f238c44c395a966aa0790213d2bfa5a272eb0dd0f66e13ae1b0d1246d0000a60cfdc2579cf9dd165646653e858de8dd3e2e24883ee8f909e96c41dc06cc73088c1dcb6e2da6705a879fa11c82c5402d32b64e3b72cd7a6d6cc49e6a68b9e128b943749dac618998545ca01f063a0161a3c5e07929e78ab48601c14011c3d234ff211d878019f8446801938649f6e1c3d67c37940d7ac2fbbda8ad855cc116bce920c656c2ec6215b90322b76d0bc153ef0cccd68a9c7f59d8d03818143b136a04105811b29d615ba19e85d2c94a9eba9d7f6e9e3f290f86c9d5c1f41d2371ec735a7d2369c6f6d4b944820589caa3757ca5c6ace319db14a9443daf056ebaa32638f010a6b2a566e215fb972969afbf5eab4338d3727fe3a0f9da776801bc13708a210e7a6b206cd6d0efbe826dbcb71a3086abd7f4a07aec1f7f8844437b20bb912c036050678e7db19ee331928082e53cf4710fd25dc0d0c09f335367ba2d8890ae563778de1b51678d9ec6db7a286c429720b5ba6f3e8f98511c661c9c731113df373d9c207975825304a48195edf3410e614c09e152987b9f1b32df5abd9e6cc214f09c7b48f1d9119acff0f6ba5726e46717698f048fa2d8762a2bdc0a20f46b24476f3d6996e7aa0c36394325b3ee2fcdf6e4d090466eeff35dccf55b6db39c5d8a6b79b84addaebfd53f427bb6f3a4c9a883cbdc6016c48860d4fa30879ba7d3f631d7233c9a0753325e549a9bc0e8ee79abb8a65a4db25010460e2aa3240f39f8fe8c50e4ed83d1b2aa2b547af26cd9213ddf0ec6ded30029731b971e844fee4ef10ad86509fd70817ce033a448bc20e035c95103f84a8073e4a68a7a07376272fbb2d1491149bad25c5976935ed0804da98284d5783dc959237de497ed9ef71dbbcb7a50679613ea6156643b15a1b3e9b2daf39d6680b4201fa99f30e0db4df93b0dbb92bd00bf18ce85820a51ccdc0e406379deb1faa938d964b3d16208d8ad8b5df842d957c57b9c0a30652c496d83e2422e94742e162fce1fd0239286b93659b456ba3c6596923658672658ffc83891bb0ad863277d1db95146e0cbb9dff0ae3a4552656ce1254fcc138804002a723be03b0d1f13fe723840116a9c3223c668c3c7dec6dd7402217d9b0aca9519810a9cbb1f5481033c1de2869f7dab8c432608d1da6ddde3dc9411e97b4779080d0fc3af92d78cef188a869c67b6c39fa258c8e0edf188bcf0c404f1b98fe2990d7d7518d5f6a69751dbf48e027cb9633fa82e5d6c68e8834343a9f12f5716781493c351275757926578e8610a4009b599e2626833d8b06d8fb3cbb03920ab9b161f6315d0b722e11741b1c65f419ef9171d65a0f254a78fbfc772d93856de185d200a2c5f151ae3219f87fc5733bd919b3ea213d0398667c20a72821859a239e4f80bcb4f8bef0a50003b2a2ec87f8fb2089547835ac8af0315fbd868868bea8f72ecdb5c1f7eca391c97958e8b59e86d0e7b244795a4757b23028b11a427eb702ab8efa8dd18b210d4fd5bd69dfa2c767c0ec00148fbe5e20f43e101c6387bebdc4213f6b50fac39c1c51806e8cabaddd6d8870f787b1a3899ec7c3adf9e04345f03a37e16c9e76e11ba50318dc931765d8c8fcb338b21a098bee39c715fec21d0a626533261c5065f850b9897ac5b9ec09d515be0de6aa8ff7c12f877fa34ec1acb7b3000a2a23e75e2d962c4330e871bc3673f1ae8fb1b38c2f841346364ad2a08254a838abf2189879fad2ae3749231626656c08299f09e3bed611718561fee3df6c53f4bdd040e9d7fa9929d3feebc61b162cfab67a70935f502483ccdde58f737883296141dff37e67e5ad6b48ecba05489b65a90b5956ccb5554c3132e4b5a128aedd72e1b5c3f103438d15f9df4670d4f6682b19c8c125ced75e49989281218b17d6382314ecfe731170f04e6436ff5db916a82e95eedbc8d8b96a01bb8859c041f378d19061d4bdf51aa0ddd34c5a4b225606ae22ad052b4bc6c514c503d182cd1a0436fa36340bf2aa69efd1f3965baf2b0a34f0c7c48abe65679527a24b8e96a59d1509d51b454327daf0192e71589a3225e25f5c345add94cd2f670bb7d83a54161554fb5f732f1c06a3b41056f48b29b3f869594b1b54d5f5187cd54f6b68b2b876ca6c0a554fec8c4f7888c708c6e3957d94e0b9ac405a6ef8a1ee168fb6bec4e1764107b58546502790f5a57da31b02c3524f9a358a00fb462b0a89bb22806a95effb8df40d620c63456381e60a3fe7f39c33ed2c4418bcf45a2f6541d25f9e24a6131ab7ae18c8c168417af2e8e321dbba0cd22c2bb426cc6a9bfaf726092145c7906202f3d06282d56e19cdb23b4e6c88cfdcd34eb1e91267663201c28a1cd21744a3bc4eb94760ba9910750462acfc3f3c497356cb0fd56e08a41a76aa96c1e5843b0b8f4773c3a2aa38fc126329aec13c92f349443c2f2d6fdb429f7037940c206ceb78c7c0813bb7998a2d993e3f18d75059573022e7016c0219f6c6ac85770c6e109da56aa28c13206ef1be6f255420c0163f4efa04f7bd201124b2cf02bd3b17082681a88cff6fe5e4e210fffc1934e5623716ef7924437cf00134c341ddb03def4be36e314a9aa9029e3178079b4320ed60f4974bf0e706e50c2d482407137b6f26ee44856050a3d8cf0164100dded0f6e806f0eaf8f55918e080c0a1cdb5e9e922deadc8e0e9cdf18e9108d5c72250c1263865980147ffca1950ab823e4fc2c50fdd4062cc4f2f94bf4a188c75c1d9d6f4aca38546a02ff7301c65503c1885aad66b2e727a638b9e029b73e230ef57da1f54256484c4f013365d2fd303bac60c1960109ce8c9542be3eceec11fe08f91fed2c52ab215c034366175c2991b683ff9929c446a680ef419810309851c5cb583cd3b6012121d8575263e15be4967165a1646af3fe9fd3494b8317233972ed9f9c5bc64ca8e82391f1e0a469c3bd69ea43d250f5b309e51c3d14d811aaec360a65680f516229d427a596525b5063679f9af2b8e983b64cf1c8d7e8b4e9af4cd2874889566991b7b4e1db5009633920b81b123ed8f283bf28c9380071998cc4ac6371881b48d02c2a8d2e2734536e4a3494e82f15e6e62aed3eca27fbdb008c42e1009665d26974d1e35a7c00eb80c80707fce4a7ecacc0be3eca75fd695ded2a4f1bbd09b005322c2786a85d6fa9c1da089771fa257b2ae29b9e60c08b0d94a85ca01fe54045a4ca5a198d33193027058e64e8ca85eac3cceee64a8d111390304852c587d548d9b829d81e14040580664c25359f3c93e82bea3a797c6440b5f3f1210af8e78a8da6f4747f56e2a034859dbd12b0e56c3c80ad6ef42df4901597586c72d09bb9a5c68a230354d059dfa39b27ee56d82c6ff8b310a7b5fa18ddcdfaa38c5ee71092960a5645721204767acee76e410d03c4f4d69e91fedfad4c4d55d56d48746474287322402b2906205e2739a1168715b4b07919623f32073375f1238d1310dc227e76619b4d12a185078d2cb4a1374e0acec5eea2ef3febb4a46e299bc3045805111223a329207bbad71cb49586ef0ceae8f5372db9302271d6a85835ab3f017ff6d777d84605cb3b158ba5896e64a6b969f511297709c9bb44708203808cbe95ab1d96995e1363b4c14394eb741d7ed6e43224666ef674a19e2bf4673e79f5ccc1e34c316cc51d60f645b5865aa655fb3fc4eec211fd813b0ec2b0063b1ccd886b1422b6491e0f7e6c2be203f6377379f52b46debc04ed2216fa16d1c69402614b1af42946f52131daccfffd891fd933c093affa750fa7228333559d83b534cece42d41c1f1e84f9bc026ecced72d98ad8d0827e9113dc55d48c94a586750f3024c9fa2c0eb3bfe23a797448784051557cc37dda8cd97cf9819b7da87e7dce44ff8f034d7092bc3a2e09e3283007c49d61148e30614610b5a5eacfc822666cc2418082a01f35354ca82bd30708e4deede52cc1d29db8a087af555b07ab86cbc9c3efcb1d67b2127283c84308a816261178bfa637d00ce4c8e8c46d7f2337c9a4b08f52b26c2ad0e6aa248f454f4aa7570aa7c44d7e9d3f896860e37dacbf96e0e8ab610a033f072171e8dfcca2214150936290c552fddecbacba1d00335ac1842478113c30011423aaec3330f8104fd1811281acc7f4310b114eb632bb3ccb3454faa96d4ba2a25dcd2d7ead7f13c3413ad08c61fd7032ac31eec40c60c07ded0cb7e33b509e9f671b3386836a537426627964ab4ae7b0d6c3e78577b673a870780f8b4f074316a5e412d5a28a306e56c9b68eddefeada68a01e343d7b3187de0f3e4d480cb35f26e6345380d525019a5652d26fc67ede33c0b636b068a18ef5dd70545423ea09e79e78d60c1945e3533b32168e68c19cb153464d934cf804147461dcf10704b699eeaaea8e31adfe8aa95d62082b45ac54b8dc03a02fb8dfee4253c06d271eccd62622b677f1995699783fdac87049bec712764e52a44fa06a9140390a3f4eaa37a5a5debaaac278fcc72cefa6216b9a2d4421bef94b585dfcf00023164db4aaab714c4c628cf700348afcfac8881973525a79e2884db714aaed3de8402e540e81a0f263d5e7e793dbd90443e955136b969677590f405788289198d8c46f97cc5e2248a4c7fb54b45d95f3560d0355fd68e9ca6186c34d8b3e3bbbfb193b0a609b8c6202e2ea66370b78a4b8a0c6398dcadf59a6106f1b45acd9bd2ffe44256c88fe637a4e943f052338bb2034b4f6b3e918fa3c56b1c2694d0b69d50543c007e08a9022cc1b23f09c50965986fe07cabee5547e8e2ea7c88b07c1a000426b9b904e3229aba3dfb06f39e2cc83916232f21b78911b912c1b2862cf234b658bd1311e053744ab5b10a0136390842688e2565e33eaa216a982b224f6156c004b00a1ae947c35d3d25283f2ba95f6ad394aa6180f379edb42635072801f6730d056f89b04086068790bc4e5d123bcd7b8ce5a0dce85340dde2dccb36bfffb14a08e1d1325f0076bc1b89f88afddcbd0fd720577bb26eb7101b4f681ca7a0c1430a46518a08487c9ec8cfc2c49d53c11963faa7d40df18b61761b164e275562f93ae14afd3ae389facf00d50344e0769ac1e834e412d675916dc19abd111473f5ff9bcc8a71f919020fd3690b573e0ef8efbcc4f7be68989a49d0ba73ef2af6d5553776b74b60061d1cc433989162ec5159beeaabd53dd32c9d136a64b4a3a26e87302084bc3d57d3a91ceb944176699bebfd2c4f6d3048c101d7a9a214e520389c6153d3337fa60189a88415f6528f31a53307f1fb21957246141ce19835830b40eff9b498e117749c06d7a3e5dacfb7e0d241c2bad545a91a284bad7deb823fd5a5e9090cc0ff8d7293207ef45d025dc2509c051c1c55ac34cb73477e31100c1cf18b53a9129736159a9374ba52b6812623348f2fdb302ccecbcce374ee4340c2b3f1d1923c6714f85ab08bd4c8a5c3f03154c99ce435ea0059ff54665ab4d74d10e7de79a9f487b35e0787e73e08ce24e2db2ac74c2d277e75ef7b1f4de2af42d805d38045008e0adf574e94d36272453ad5fcc24014d92d6813a95829b2de5ee5b5c39ae62102d4c382300ace54c0bae19200d8fdf116cd02b5e577f26207de4f17a541155f964bfb4d0a0d923c696b59a364187e833f0c450e8a738691fe6fe187e674f96e8ed002e9512f4a4dd769d8d31b803d9faaf65945a9d6bbb447e17881d5c11dcca4341efa1ca07d5e7d5ccd94941afcb51c0700037919ed0263bcf99570674e07d3bb378fb30789f229573036723bfc210b48cf0b659de053e1b39c217c92f6892d607bb3fe80a4f09dc22e1cbc68a341ac839630928f3dc36fa7b5a746daa4a62a38a28464d51f1b8f5b296c2d6e89dfe493d9829bfe82f4da41962ddea09e3e22363b9c4842932ac4d9f10ac87f3df8ec4a856e942ae1f102d91ab56f191ac5934230638409e8c95504d493745eeeb09993dabda0d9a11399a312a7bf95d6085a351db5f76e954744e675c401bed5928bc3aeb47c395f971fd654cbbc69994368c48a8906f7dcb2007f37e18c62655fb064a82ab84cb3b39ff2eade90b439ea069f9651ea563e0319e41f89fccee25ceeb0061b8ac43375ef74e0eef2fece4e336d5c2f7e470464261ad96273ea14ea41e95acd9db69fc14cd793b546f74795c58bcae37befbd4bae4ae65bfb951535d0bdb8a8a92133b3cf6d72d947f9ca67bb5df9e588b30622c798f0c3715ff21005ba0f069b7aa476034e9ebbdd5db4c5263a56e2bf6992ac9fc7a3f49a1cee3f8f22950f683a594649247ede97f6f9f8a15cc9b257002111274034a25bbc52d6e1539e7e3d1978d3f089935cf8cdab2d07910550fe96d97d69f00428b9666fb74c72db01ac00d93643525e1b1c9a672bf6b0fa626b487d32123a12dae7ecc340ecec680a0a34f113ddd7e668630ed0753669d1326f5fab34826b72aedc8ec38abf1ba21cf60f80915945c961617388932c12895477f527a82f55658d846f2a2b127ba8b9d72516139ec6093e5fb95f568fdcb7068e805ce42c45d5e48c2107e9bcf526c2fc8be9047b4ea1147cbd6c5e8b10d829f78f88b7914878cda4fc5c1c3acce9607a740ad064e153e4a1632ebf78fa910170009a0303b78e79849af669d33a0fc8ef217701a94d15a75090082f3d793f2e7600cade68232b44f2ecfd5b7f8e81de99eb955629b4b88f97412285baaebb1c28c7dd7683d84f928fc340f06fa8d20a16aab4a1303325313569371ae28c2c766d3994f092423091f59389fbd4956e7e8d61f635fec89eefa6396d98402513e3a536bb29511dee7353d463f6b46710e7287067a048102122ec510635dc3872cfcce32e5ea89170a88e2076aadc8a008d3023e4e162f48cf34287d3dd21f0b86199b6773696efa4127f2d7a0f097a23da16bc7542441c6d34fc71aade7351cad225386b092b76ceb510387db0da7c7ca8c46a987556ba3466d3f6a06a5eb27b31717793c9881d8ea39361641bedfc5eaafc0006b4d305caddf6eeebf2bf2eacf8af0ee55abfc7fe2fb4ca93c53660830fc9feeee234fe125519e2ca7eb9255374c6edfc4bc24490f206a98cdebbc892173b7aedd37ad2469cb813d6d1cebcbdbcea5e49462ac0c9078d03c12652ff24da1751578686eed97effe1c18e2909932a09d717ced0be7179ea71243fda9943405fb34872966e9a85811396732be89bcd2fae600d3780fa8eaef2946f5bda2e1be9adff544b2b0881a1c01a42a0bb5e9b20d1dd7f6e1c666734d81ca0a50050d8acede0b20af217bc8655f5c3a84a240f4b23283b52fc51fae2c24467309345cd160363f418ac8defa4b0aae4c2adf75a8428d20da2073cbb538e26982206a39877a0a0771db136fb452f09d08a6c43540d8240a5d9b83c4e47c7127f8e0b5834bbcfc07612d7f32caaffcdf17d343641058ece8d6bee999315233aecf6dbc321460e6e1724de36de7d2eaecbf38ed2059c96ec29d4e6117723de6c113bab944e76006ff66fab63274273466fd40777bb341912a0a8b30f4c44a3c6a00e87c39b641aa801e3a15eef665255665bfa34d005828ec9f6defbdba8115bb21d44bfc02464168495cebc05e608a416655ecac68e2cf30670678e38e2f558638654e949e80deac314772c2b5ce6dbe5f7bed7bfa4acb9eddb950db32c066aeb1a0f05441df9e4f0b29a7df568404c2e1a72ca9f245ebacefc921ff4109bf3d2b4ff09c78a1f6473ef7e1f0bbeff1aeaee0fe5c168d518673824d3bab509f56b0de91e1f5997a7a0dda1e2265119dc7c9d21b37805b8532ef078bfb324b1f5a5d309467dde622eb31bd174a01353f3add2a362f363d12e2628172959459577b3cede6d5aae6e9e62dcf2d0d219a693ca13fa3d9c1582ab5aa4cd9d9b8eb73fb42ee753f69699c8f507d0c93f51cf1d8ed0899e0530db891575108a6446c677f23c6f648b37e03385012c3879f20b47ca905f5adfd84bd73e848ef985963477ebcfacac5e0a48af60a6251ad577424fb7b2a5db54ea1a20d0d4bcdde34a6a71ebfa07ed960b99b8620e09a24f645e0cbd33813282a25ede4e81020f33ae391c2bfb74f056e9e92fc0d884d0081fe44ce8ff5982e697257e5749a1e56a6f6f4f41df73db20a16ab6e18157ed9667812b38e72952a91248ede9bca38b3f3b708f3b11fb01a80a2304c329262926b2d590593e1ef71bf84baad7bfde3ab62fba7528c6073fbd4ba36460c716e589ae8cb62a4d76446ba543f897e379c47755ba7143f44ec0ab0ed83d736694a384e1c13a92b86a19bbddba044939d549dd232cfbaadf2cea2ce9f00c16376547438220e2b2f79899bc74a860bb46a17f9e8c7d9fa26ab7d5ce0eacb9446c0df7144607f22cceb5434e2aa3cdd2add0914c6dd972749f9cb5934ca4fa55c54b312584d6b06368605605ede3c02ff9bcfd43928bb4347356668d098226767aa09a7657d4726474aaf16311967aeaa23c6445ee5b8230e8b0cc7f25cbef20bbcad168c5751ba88e5596b3a7ade9e258ba1b8da829a60d4834e10fb383c092e7ee62cd303a425bfb9d3f3bf5aecdf9a7ccf39e089a3bc8902c5d9e720528c3f6b40f71e85ab25d672815b9bd5905ee0b193e74ac2539852056f6f305d12e51a270a7db8f01858fa6fd3df8f65f2b118471daa121ad46d2761e0f716907477064e4e4d4074020d645f2fe14aae657294f79d0e773f1313969b5ed9fdac6c8712f9795942b5aca6383815529cf40455011116a01d5d1740b0e346a0e70c6fde4c948b027fa18f108e30560651b7d549a689ae8a3f72b0a65ebe5d58f343e1be38c156eb6a11957dcf3f657a68db670c2c8e0166f8f8cf00864ca47039f1e47c5bb0d0f1d5f41d527274ab94aeb6517af1a51048e2451143c5c93bc1b1bfaa353ffef74b844f4f6a94ffc02910665413200c60666dba847b46e9cdab5db41b6e1f63509e5b7643c2261a10134b1baba7effa669db8692bb109e8c40357bb07a94b0b9f6be84b4003db3ac5fa77d2ee84f57883849fc16fa94e6460a4a9f8a51f52ac087cac65fde61899e962dbc85db6e302ac957e63bc78579c237265f0784c40437bcc1971b1a825544d76a7b9d61cdda5cceed7c801629a76658f58188ed66a5bfcea30a4e4b17d7e0b65daa4f7df663c684d1fa19b19fc32c87f20de786e5d25afd1f93cc0e55fcc7e2e1f8c405365f380ed5288995a1d966b43b85617f80dfa12aebe8c0a288079fa66526054248e5dee46c57dea680886ee1a9b945b444786f1de155f76defb36d7d958af3f908a2921bec6065914e7b21fa41a0c71423e04806940134f6682039cb59ba59157ae40b940ba1ae8a83cf10cd11822b8590e211599be9eba2d2455758e4f1454f229c411b75142bfda73352ba9d42dd7c60b884346233ef4256c78b9ef947134c75bda8a1ba1b1fee096fff42a8d3da3362cf64a4dfe2f0cca024912f1ff1d2dd44184aa28662bdc2be109f43713552f0a5eba68968f52662f00075c16ff5dd282bbc32c893fc9f94c65242e5296bdc6b627b3f1e6a8df01847836439b092505f687bf37b450947ca499f9163b2ea5eea36b90b14191eb0cee728cb89be24a89c39bbdf857f5850e280276c27d7b91af6f1c19b3929794e714cd99f9553de2c6f61a620ba93a362902a65b50984bf0306e166f46cbfdfc5bcadb850935c2d30d2e170691f7a039a41833cc3e016dfeef2272e594adfeb878be679bd9e3feac9bc0ec72d4baa10fc0ebafb9529f06aaccce203d00e548eb851b4ce8cf8ba2b3fa27f911167924e40625186bb03b44fc8b6057c42c6d1003c6a84dbbe74923cfc8d2ce42aeed1f5b333a12639265ee04acf63d2753a598cc2a452808928ef9723eb4a884d8230b0405825929ecdc2bdbf2036c39c89751fcaaa4341685d5b938eb54f88acdfdc9afdbab81a1782cbff24655618a9c861bb3f2de68e863e0fd4ef3de3ab370e94812927ceaa8c0f5fb88a78f5cb8610e37a7fa4f6727ca10ebb8d55d708d5bfe336c09e7793d993f0ccf8c574e256ff704f85f15422358d0b663dac6b886d64287cbbc8c73cbd755e4bf721748b02733b28cd07edc8ef052d90593cd31777e9b1347e9efaa9d45c8810474875dec994aaff48a2fb28c2aad1972c024662476e3d43f4aa71bf82b7b785a44384958bf4f6c25ea9811e98086cd3f5c0784d4de0841df618c72e159f86c842e964e6eb2d8efba8ac7b739fb75322cdb363358a0e07fd19cdd715fd5b217feb68821027742fd6f6d776db4bfdb24ea263721221171ef5964f7e70c2b98e13be0e911c92f54ccf1f872e9ffc6a20571110538ff732411b1b5239629392c10b0efa954c6842eba1705ca32722ab2160cdb63da4fb25fa94ee87ee1eaf8efe0df212768bb6e6532f22165d73f508aa7753b4eb54e2eee93b4d0e20f574d2425806d143b6edb76efb3f73a62a0601e0fed7e5bafc5374a381a5b7f6ceb4c1b93230a496c4631358ccb104721452d90857d9345e12311e0c8e2297d79a68a3098a7b09a0d6caeda69c724388a4edd33382fe4553d934309e4d2800376db362ffd0e374b0e78213547e7080169cc2f0100aecc775a7429b358506cc72322b1cf60dbab3f6155cc6ef5f5480efc5cec10c30c9be5856af71a0a43f5b7419f2049b3c91bed5b69cf69aa259415fc4effe4f40c793949502115bc6bbc11a8605c85f52ef26561854338359be4971ce8a9ceebd3603d3398c7cc1ce190defd1df83556691add2d55c07d71ea800c38ab9737939a975e4664eeff5d90537c43d379a7f1f32d2a158fddb4d906184882df1706a63793b8c6f2901884988b3cc50d5ddbacac178c1ce0c9fb9de458fbca279b02356317b81444735ae143934a55b9d989c214d06908ed772612261fc7e7c590c95a3809833742b48aa9e0c0d774ca4be903b1ac2869888c03a9e0879bd45e25cadfd9bea937753c8eb7e55c83401634e8326a69242b29154c92089966cb411d2937a150403807b251400567a8b2f6322c382e08741f1d2889e4888436b7c43d5f1f3b0c7fb82770d5d6d4be379a0fe5b4822aced75ab7ca099ae91e28cd70617259ee72a2f65638724a2e6c4aa83741256766565f1442ab5f2fc80b8e6e09f2c7dff4832cf69cb72ef20dc73b17901c8f12607bf608aa1b4851fff8a6223c326d21cfaf13662ac140b9a8907e55ec877e3ebed3a229dd5a2a08cfd0a76be107c2902c968595b12effdd2c88e03b7a2b208e044dc34b18b2e94ff0ebc32717a054b70bf435e342b1074ec303707a3e8d6102fc5dcc660da928aaa05faee29bb86dff3372bd6140368dfc52d89bf0b7a2d7c9af9d7e3d0c81c42d385f02ec06fb00d22dbb8af749ebf68053b0bda77a8118033803cc2920c440da5c1df220035e75b462ca3c3185f928f5b72958071ba07b8ec903a638f2d8f84abb37a61f63832eb3ee0ff9bcc1b05265dcaed12d6fc6af75b2251527a3efc93dc4f49afa1d7253dfce9c4e8902bf14bbc1ba93425f24da41d7cbc700042444e79120873e1f0839a6cf47c7d4deb8fb3b5c619ca808fcffb613bde7295bd038f276a59786fc734ee61a434e8cc7fe6f1a9b79380c74b438ba80b94d3645a94a788e3753ec11797f39bf52e15cdb619ac39fb85f4057447934dab88346a0d97ead03ecd8e3a87977fb2c34627229fb1eced5cdfd1ef8214385587d29716e020d4468b757d882128f157785a9b10455848e050081ee64c71a199077a73303a13ac6c6a0e860cf8b50c5b405b0bd26473b974a78fb195856fa7963dacd25b305b86a8bab0f5c88762aeee45fb149142592511b439d83e5c23c88b8f8c718939611ff31ad492622cd6d035e95d5af55d91354923ba3eaa083537c992fa510f68135ada06ebc7c8d943b11457e9aec795b0e5648d87650853f60f6589be1601c1720cbf73c5c72cd0bc6309afc6a814caae4ce1bf148a99e3b3e4c1996824f913dd6c0fdd4dcd530ed1f979703258a1fae97d7a6a8e1e84a74fe3410f52f30f20657d1de222a0ccb084d753574aed00b89ef887ede287aa05cd8bcb03492432f67eb9678420e13dcf0b5915a97b77bfa6a2cca73fe75e75aec9971de93966770745f8f6dc41d10691dff487697021f6b8ef2b2623fb39ac90fb7b03e7f40176dc5bdade51b1b0c233efc05b700d84f7b7483dc4282a45698806f537efbcb2b1d9b669c7c1e75abef725b17e8e53eb167b3de7b223daa200ac8721b5abcad134adba2cd85d6831e33f2a620bcbe8c2fd6b4029b18abe63361ee4df44d6856028673594aa902b2f943557526b80a74450b92e08dd188146c3fcb568888f7961ddd3934f32ea9fe0d1cf702e27ddb466bc09ced6b0ea5195424959fe456fbda1f628227a660492c349f4637b3264fd1d773a5cc9ae817f56d40fba78e5d9e394ffe14bf7815e3f6bda79de8302dcc94b84ebe4fde0bbe468b9d6c40833d4a0f5d3852b488d0e518ca5a2789d8fd84225de2f46f79d245cf35fdf83db353d385353e37d3e652f28bcd23b111babd43a70f76cf58a7cf75c825ff4f85c4b24943220fc0c4f70101ff4f50401a7282531b2993fe73db04f78d6fdfb27afff5604342dd8868d9bda7058d1ba545c5c6d45be1ad7196569a2f4229c892bb30bb01ee3db558db11c67da33575443741b8045ccff0d87e11ebb5481601faabb87944d73b446057136271c79e1e23c395295fd1a90862efac9e06bbf0a38530887c6d610a611d2a7871980362414b8033340c649b46c45f9503c8c176d3d29d46404643600141d3e8483b9b1eb2e0c4abb92cb0ab9c4eb8f383760faba088135e671ea259f06b85c3be3542842c5f954d0f55a7f88d78d7d226bb2ea3a0c372ba72e0991819611f5abeeb5a1289ffb738d8e64facd3cee54f08dad1903a601ca557291b149fb3c34942c458819e74858a0e1deec68b6a90b6a7d4bea3868f794081547673cd99958ad2f767f7ccdb421ab3a05a7ba158ffd345510c080ac0f3a38289b6092fbf6c044277c46a5392d8fc76f026e7238413413088441537f052203dc3dd2451a99636f93ea61c1e5033d0cc58f0b58a906e65eb3397a730c9f34253305c61689fc41d204bad1a6bdd3a77024f130ae26c0a53bf5cd5b5412ab2733d0ea74102971b50b114e89b6cc452c7d052a8303c3a4b0f8ad5d7ca0cc9dd0f09037f1ecf33b20d931483e73394003b32cc900a7fc82728f673f00297d63ac1afb6c6672c2eb92d4791e5bfeef20b73263d3fa7eb3cac72a8663de338a59b784df6d35ba805f589d78c9f14c210ce270840d1c1daa40b312547142378f640a038a0ff1ec8a4bc4afe82a4e4f900940050047895c2328cd037f3dc9b600a29a8e42c5247e4cedf02dab8783487bc6e57323b2669e701418c066673572c6aa8cd1ce87049aac6d9e55803427195dc4ba5475351c74fcbceebb66b57466538dacd58c677022abcddcf98657fe7c295b79ee4bf8eee3df3d0216f7793e98eec61dce42fa25226bc26a4fa887abf91f2bb98b6f7fa9949b12c4afb85089edc896900d17ad45392a3177388b8d8f8eabf897748f0e48fec132933032d296fc44fa62be019fb703add4e7d305f432308236691d1cfbbc7a3008be3cdf9377faa29283ed051e724d0b94deb3b483b79c91d93524655e4ff3992b11da8897c1411e89813e2e1264a9a53c2ea8085cef3ed45432a572b0d637e6bf40120eafd1494fe87c29969b128ec31b70cac5bcb0613040c70e7b65a70e76809db349dceb0c4c9cb50a8752734676261c41305709540509cd32ea688c4a21bcdf6eeab7c4f7fcfb5c0f70c6819b085203908d6c90211956f2d1b12c27db6b57dd38568fd05f7425c92a6abda2af4b204c18c5690c0916ef3e015319bce6e7ed45e07eeb300d25cd74eaac95a7036b344d0883d78a2cc868daaf76c8e964502c9035fc549e31f46b42a5293b321e897c2cbdb4609fb2b9f4c5ada870b2c683a6d92b639eab0f7e7e44092ea2e21d6243a725e93eff9f12732ae768174f779e0bdf784bf9359c9727f6dad517b1662bf0043eff206ed176c2fddaa69d5580290a06bf258e9abfb0b8d8639516c630a0dae5c6fa8f85f74c249bd819a474b8319bf675b2904c1eb7e292c4da0884d0d4075b246ab4d48d9bf14c0dc7447a13484a9847ef6f3d16c4a41efaabd4d5a63f612a2f5c91a7dcffa81218ea1975edb628e783e05b27bd90a9bcee76d3d483dc1ccf3110123e7a490fb2c43d60f1fc3b6ba163e762d0193aea10998a17e68da055ee06222e162b9df7fa8b1b9d29eaf0bc261c5097992aacf12d740210442f902d0c8e951b36827d90293be351a03a16acaba3396b13a23235bbc16e30e626734aee3499efaaf83848645dff968fab69ccdbedcc92de56493eb4886473919894f64c290e3ab25b9c84ddd33be748d01ecabe68394caea3ce20a5bca78904074e96aa53f96a5495c10dcad84bff3db1be19fe75d21cf4efdaef50cbb8c6172a2e99a2bef3398671452205978bdd8f0f4d58740be5a138907524b18ca40882ebb5ef988b1c13be9158b58f09f9460bcc4c96446fea3baa6d4a0c64240e52743ebd756650bb0494b769fe839b3543323d4c2be8c9f37ef1abbbbd58472a5f120cba037fbc9d4be8a4910f8b49d9cd7d960512536b7bd7fdde690f399cfc3f42307eb38b202777a585da82634dff83e159be461e8088b9903740171d57836393a6214f664945de99ab5e30e66d4c06aa600067d0f984e7e4dbb9ed37f84749c68e3cc78892aa4c975f35c738f09fa90a4659e3b610d93c8a221e23fe2695dc72e270ee3df71b9a71f0b7e14f501cf41e8082c9f721f857b62d1136f4f5ddfe3192b6bc5bc7a31a5f6ed2b7bd1c9ee01b681df95e17a64db8d5894d421fd40a12ab98c91f682419e588534082d92d59be1b9b1dc41a8ec248362115cb244e92f58c8cbec73313943caf2b36181eab184b4fa8f4a15fc731ebb7a91ca193f9a823ee46ab79bccea41fa95d3ffc5e57d7694610cf1e731b1a3c3e010e7e96b97ed1e7de881a83a9dd1bcde35c130b0fc75d604bd4048f31b09caf18cc830df8dd76840390b2b1cb4acf816900f972241daff63126fef9a3b99459c967ff863dc0241c6f4ba005fe32d58b093d3791092d4b11776675786d871bc258dd66dedc2970d4dbbff0cba5a6ffadcf650311fc77276f01697de99366ccc9ec27a0fa1ce2d69cd65b08f116350a3b1fd3a467ee0d7fc992f0d2d07b2b7bbcb7b1ede878f89237f5a0e2f35a36f7eb6aae22e4f12894ab65d29f5f8fba80a107be4f4e12fa6735afad95b505191c2536c1591255938c4a306466874ddfd280723ae231e1f6121dd1e9114237488a9fcf9e699fbcde4cb78acd8fa065e9403f304d8557251863f2f7c28f55ac252a7cd916d4e0d182b97ad568b27c3626df539533d37e9f794039598c68e9c113fb85036ad66f4c05987bff2d343f128bf1659789cf5a594b210cb34d507d6841cb9ed0aa5b3ffa71e9a521e32302406f9ab2ba525b178cafb3b8b3f3e45b1cae2c8ea584c77edefba9c418a941d4da66932fd03107741dba50673ab2bb96f9d4a35cc13d524ada5c075ea8f2e8e3d94f7626f1a58a6742e1c1a3768a09b207935422ad13ee9ccbc778f67e24e50e2c6badeb125f6b04bb017528b3ffcb86b37ec10ecccac0c14e1381b6c8efcd23510cac7f3ef1dd3c7dc920c60e87990ba90423691f1202a16d2253ac1c4dd2294e565bd147bc3386c4c2a0e22af91f2882405d9fca9f03d58960cfb24b6119c61a194a6e867b0c3f0e7791c2651229640a444d993f47f89535ee8a44bf542faeb45d1f009636277f005e92371718b9ba052fd7951557bac2797576ce31ec815ad419c80d753d9a1fd68a5029af70dd103cc6f868fa2833d2928be58b1a906bc3f730b1514c9d99176c0312482f36010f5c3f972ab5b745286086f39dd97b9a4872e515016dadb44edad60519f5e851917639bc5a5b65514ef5a85fe11777a407c348127fde24a2970620c03f4011499c5105895579a40fbe00de967d7a94d9252acea455eea67361040731a286e96412f44fd2aae66cb7c578da3e77ad3577814308ce3e626b7a43d6e3128c43f4e91631e6f3726fd619379c6e124f0eccd8302b9fc811279cbbd1304ce5a23e6c7e46e861aefd6b4147644c8cf7fe1e31e29ebac6a47d42d6ec3afcd6f36a968697a602cdec14eeb0284a0804603b49c38dfb451276c1edfb98acacf753e88c2b4c63476b341d436a9b8bb68acb3a306f8c31e690833b00372a278c9e741e4a6cc7caadefe46d366f8e56697a1730a4bc75588bf6c6cb16af91a0527a35bc2116b1ff05f34b02c677417518e8562aa5ad4b675de4f83264677bee653c74f53e7d4adca458dd3f9619b21e02e554e3ef98c9fd34519b1d54b1cdd5df87b5b693bd8295cd1048641e359019ade261936d87cef85689371d8987b2961b2e667c3ed62efffe4add80f0fdafae32bee5e9ece02199489cf2e35be110054d1ce6930eb3dd66d4114836b78847e0fbabe656105e69815f9cd3404e1d814f490313e7427756bc057e56e8d0b5702db8c791b7f126a7d09a0cfa5012e770bb346ee110415317d34bc2b3b6636c9811e0c2aa4a3a37beb0d1cfae5f99277bd1fc8a7607776e549054725d64898f56e380758c2bab1d121191ba4ea1cb9fcf51ef0560f2f02348f094f396ba3b5d5f40e90218490a29c8ddef942b0d4082f95dad4bf289efb388d44aec0571df604f4314905186b4b6fb3f0b9b55e488a1dcccce33f1741520c4125f3871c731d7e489afeb1c2fec6fb82e4b8d0b14abd258c02eff75fd82b739c235eec14e12e4003b99099811f8f6eb4b8870303fbba6a230745345c9036e16fdc9499215ec6d86de6887e63374a3fc55737540d2388784617f1ce4f2a14f0d1d796e461af15120bf2f3cded0c0d287e9791770bd5d13309027a0441f769458524d4900754a54416bf1b57eca33e354318d9e52debd50fe411194e0f83084322505c1f1b0b89cbbb2e61c5ec083f63984504c0386d77215cf550a65fdc611d760a720485722fb2203320cd9013fa3e3ce9fb48b46165317fe30bdb5e583613000864565dcbe84a3b1e4bf331ec8a32fc0e20520d15b72ac06904d2573fe1db9dd93006cc7e36866c2e5ff6cff42a83e23e4cdb6f5171dd070f1fe965e237bb0b50be60de8a8a19a4995723f7e4aa3bb160bf50bd775770b7bd52191ae94b22c249a9e5ca8cece2f9cf7ff3a1abddc5900b3ab5244fcc13e6665f940e2ac21abe5649314cdb0bbefb114bf3e86aeb77fcfec3d749a7de3d4ddd4fc00b19e88d66ca5eab5fae831e0cb68b99a10849d9b2faecb21df40e47ec0aa1945ff90670057874388c0026c717dae389c4509f46d87f434525e81c4b4a311ab2624528e64a13231ba32d1cf8e9012e6f633490fcd1349482a4b8f1e69ea918e472d418227d92ab39890510eac2d524acd80dc22b12108230e706937166b1ccda25eca2589dab2f951025414cb6097c988ba3c560f6ac3dc2c62d5d54bd75c1032324344817f8759872cf80d9c059a50e94d51de9b826e7f59c2205431313512e03aa1790031e13cb586864a97ae46dd3dcd8d8c3b90f0694eaddd64d0d3e8ff1169fa443e3e6c02d8612893fe1260a84926443a044edac30261c99eab1bb84db2ec8cc5b8adcd74741bcb339df38353279065c1e5570b5fe2e6aaf75a718431f545a4a6cd7439f653e91d19dc173dc446b8350cb7ebc56df9355d052f6b6843532057344dbf916f2e4961c00a76d7b137dea11cd191d2e8b83dd635e47e8f13007596f407d82cd019fcec89a1e21b67ebb40338f74cfcc64b5ca353bd9b0355a1f1bf32d135929ec6480982cf99c81ed404f5b503bd6e5f9fe4b8c4673be04c53f6c7644502759dfcf0416849b7c8e883cecea210aa3ada9b0b015fdc7865ff04e8f4a4c532e57e763b71469efd3ea2830587848d689d0959eea178cda37a80924ba17210f57f8188e0d10259c75bb9ef1a03b47b1d33cdd91746a71a154c8300d973af617cabcc66097a494e421058a6a338f553c1473858262800fb66350235089471e83fe2011c21cf588a1302a94435ae630d5687cbed31c01d45c3bc8461d887568607891f88d5d7df3c5a349246369a9377e2ffe924a7db27926d8f0fc4549313d2ab891c83cd7828a679c7353d7150b7bdd1476119c67c7cdfe55371c46a49534c9dee6ec47ba77def4f484bbacc30b5deacdad81114317edc5e727883c67dd320811bea89dbe1c98f982bf7876896994c7e2a0c03e6e5a7b55e381a64e87795058073b13471f3615918f35e38f4b65e73d0df348a7e2b6be782a311e0f4e5d61372a9aca153071f719be7ce02bc76bb07216d868af9d1bb5091d54cd46683eb36a5da672131462dfa38a0bd767fff2c78cecda14424690f39a817e615954f1e1538ae31fd3c893548f5d6fde28e31c1b4e7ecccbdedc9c55de993d1a4d718b6526b74fe03db697951dc5a32ee9ed8bef1298d4e90bd5cee3cff77389614bf8decc482db4b9eb19514bb9a8ac8ad5e1709d91f62877b93187b78d112d5a5961d1451e086181262da465b2dd828c0e87dc265d2ff683172e508a36ef5e0cbd48b33cfd56cd69463f4f9cac17433dd97de5a75d87ae7482c0bad5bb52551c76177b77ce1842cc23afb181edcfb3f0ee44ce3801710291f94e67b4e5f50506bb5421784956b80dafcffedf110db3f2d858f178639f6a26725116750b72ee2a9c26b8dd56eefef3f06e54ac77d7fd4ffd459df68970b4b958bf16d65bb49c6993d76070386d615df0e050e455dcefb9e932fd1ea3e4c422b6b31c6930d60216e425a31175b3613730cb313a7e186670220c82a1834f35a140c73dc195e8be344881175bd00e77d36f7f4d5965315d2eaf8fdea5c7bf468fe1924677ca392b384ece27fbaf891db11fb2bda23bbdec3baa9dabc08ee94142c2591bd5b7fc3803a090a1172e13eb40724f8b186e6cbd3e355ec08b0eaa3f0e167083e13c036926320684c3cbbbc0cd52a31bcb9836e522f8dbd62c188081b7690365254b4ee8337224927a5852632eed7a4c4b598fbc6841cd6f7bb588588e2ec0bde437eed32d2482665ff55001c3fb87cb9b66b59effca770842c3ccf53019a1c3453d62626c1a53c4654e2e9bcbf279b7d4b67802da33b3e30c6e26b28314d065f2695af00acaae54f633a70b7995ebf0cf322676b8509075532c2ccfe918cd8d118c5391728b0760b23e42c2d5a255652f75955c53ec771ec3527924af476e3dbea7644d18128139f511acc8eae8f646d1d4116cbfc4cf96bd7e78b3c35a9bf9d25d166d3b19fbdb38ab6b654307dd8d1b29a3f4f6420fe0cbd4af959c649913ba23e15d56cfa1bbf03a60ad5eb71ec94d38894beab178925643faf5565da52f56b3d22350309e5c121bdc7d281f2b90b6c07e30e8dc0ee4c20b7e8a688184276443bd1c671abb8ca2c3b6cdfdcf261f495e99dfaeba4a2d20e6f6ba7b78600b14a04cd03bccff8ed32eb1ceed9a1020084b3a5965827be067b584d73cf081c2fd860975047b305d8f2ffb07db922f6700ef2f4a6385ab7323b50d44162b82fa65c7fdd34ddb9b137c0ce540bf01907d4698c466a023a6a0020432b8aa8a7eb9a9b3b55729111be1fdb96e5647ad35c7f272f2236c42d5b9bc7d069b2e29ce56cbe9f2f931071654b57c6d85be9d87f8842c65ba8b94f80a56512338c313894eda12b9b1477188adef1b23c273140213fb8e3d6f2a3bf1dc3f043bb1a4bb692df63093ac0bcfc260fa58009beb4651bdc0b715fd8531e8562e7064357df0546ad34fa5931c889c4488d13f7aa48e8aebf35a91bed2b9ce2e3f245cd0ae4f1448ab1a39c065581d2d170ea6909f2b6015a4a975dfb51d782dde391f7c9b01e7b98095f74232c2aafaee9089e12237035a72d0d7219e156ee3be1ee737219562041bca1c5b4921d52632fd658f788e85c98aede4853b07b46ab1cc9eaf08b964c02c84e7710e6befd1b77031749e1814dbd8103cd4fd9ae76023488bfc40d27112668b6b3465b0153afa2c24f40d333c2f9188040759f89acf1bb91e1a3890a4e875fd6f504cb50e6e722ee4249ed245053b0bc34497894d22abf271c0f8ba3e9f762e7fd00096a34a9b5228603b8138e1d3a984dd76ae1cc03738c9b4e331ff9a6e6293355d0fcf277a2dfeaa8ea801c7e75498659a84829572469f5b908621c41f821f3f490e4b2d7acab3ac94f4f511c2ea62a8adf19c81a85925c441ad39d52ef2b2f514c4ce20d175b988adbf57e1a6d079aace35cc43fdb01bd251534eec9d29c0a9001d42ee39188127ceddbb8a901029c29848a0ccaaf645be261b306592a031663de8f8cd9c2eefb6a248ca769a8f102ad18ce2007745e1b90b1c33ae794d91555716d823b321de98093fbc2fa97639709e702bd3f09389dd140081805d7c1bcc55d4ada800c2438c39c8bea641c3ac7b3e999de1e464ccf0b243f179e8aabb7c2df74d06b8f3ce41917cb7650a7b9907b012d919a7ee3dddb4a3b93600a560753b20d51b78685f417f34a066312c22c90ae33b3355a114e36e4a67d82cf7d9356adf0fdfdbdf45cab71301146c311944076697340ae0c303533924ba704dede330bd66e8f901fa3f535f6a64bf160b46dce9dd665fc17d3c3d964c88f1b8acc31631e7bb46f6266ff23ffaaca8383943075542b69664944a96c450fa5e00c5f110f87f84e646834283dc50182936e19ac4a18772f33c1f4a1ccc24de3b321b8461fb30d1f835096640ad33eb716bdb39bf0eb32a53dd4611ace65706b9de799a1e3928a2cd385fda0371a5e2813f16caaefb185e725206fc586a2aa0ccde734046988e6e023b8de502acb35336610cb4f08344ce5db5782b4956b8faba5f9e9e0e27479f051d613b3690ac3feca4c794ab06bfd02434694eccef8b4326ce71b957b9a1a8ffdf1399be1e39b027d937dc52e38ca113ff8e61f7d6b2046497112a465b6de8eb160656c1465784d6dbff362c22a60bbf7ecb750400fdb1923eabae32f3a240186e058d43a97547dcc60cd343b326352e962985e09e538831f1f61526a7b6d4249a6b9ad73b05b795dda7e48e7825b91627dca72c9427285779796642d527507a9f564f389d2812d87405c6eb0a7c6a0dbf4b982386df1c4e77cbcb0e81153ad1d6f0b9edf5381219de6ede1e1958b4d859b46d78d79c23ca83d68310c30acf83973ddf1aa25c42d8d530c2a4c11c7d09cdd077696ec7570132e0a213fbad375f7073cec9522edbce2915d8556cf8f3f433b099c2111cbf360cc6b068ff5a9a37f96ac49390ab43f1469903a88dd046923968f019ba99e518f9c06c62103d5bf744975e7c8bbe7e43908a43e701c96dcb3fc9f3290f0952cd6638f2680c50bca3115b103ea943a26e7cfad5a41cda70e178a15885a3e38a594e3d92167e7560107860d5bf7a9bee8a6d2db6dddb6714e6600ef2fd57d643165da760307818afada65a1330d75c2a791a78727ae97233f13c6e2c1a8106f28164d0d566e9511627548eee3c0fbd65dd16f02a953a939dbf3fcb0388296fe3a6e88755702147e84055c765372acf675575f66a9ed4eba482163dc6c74e3725f5e7a08b3e6e00cc20ef73395d698fb0d90124f75723303b711e457475c38f2589ac227c0bc4d46646fdbbc332b87a86ee873ac301c3c4bb593bdc9a535b50a626d19c433bfa3ab910d7dd7d941f11e2a92e351d4d0668b11ead48a8350d11f585eeaf2946790bfbf36f200e46d3888b880b72100f371aba6e066ae912a7e35f50b449da66679d13841d2f7ce1a77717633e270f3f2ad0bcbdffe4bdf76d77feac49f8bc12b2d6ef6abb34e2802654ff45943d9dc660b20137df6b3c30a97c974202636f1af2981d0d52c87a4b7fcb7f97680ecbfc68f9c2979ca7d75c726fc9c37b6520443f5fdd59c7b8db9c96020a97e8b942cf05fd8e610496b3ced9013d3281f1e618832b75e587f2b38d173ac97819ff491a2ca4e83d838ee9bae3dea3ea1dac0b68dbbb25ebfb7d90a37241030cc2bf86bc95b3dc2a323dc0d4488097cdc748f12b020adce691f0fca6c449555c81134e67e10423e06db1402912b71d6c300db64da37f9881f86a42cf252de9e8aeba1fc5d2adc0021e2466a9db4c5203f5fe2e24ab29b24beabe3b321eda3f33f7cbd70090aecfff862ba8a88b8b9ce071f5c30706fd9fee77f88047d275b12cabd5f2cde72f2af13c1d423297026c9e3094c93187e4bd57bffa758e730383d863619d759a14ba30b248573706679542c66b8949caa819379020c0a2ed91fb916d6cbf71bd76bc31194334a9f6c71715085216132a307eef357bd437a1350621eb33b9c88094a38c30386472546a144a5626303938d146f72afa16e16508d5a808cdd15119162262ddbb65e6e5a431e35853e44f714647e774df0ca1ae56490b39a913556fa25aed0f4a803ddae8a3e7fac561030a982422102e606ce097cbc163f894cb8a8d3dd946ee05f17f659ae4c7900507771e38d4fa4357ba73b2183251e364ceab5ecdf8c5d56ef909c48a7419adbe5195e7dd369ce44515344046cc122f9adba3755717244493201561969ad435a12a5015444bb906feb34f1ee9092eb4342216fe81788c6e9c663fec51748d70da68e817061307dd47069e4604d4c8a9205321ba3c902b39a3341d49ccce0e4c28379d6c47b45869c5a94f2efe9a4409591cc1009778c3babc97448dc1446363cd4b4c068c88422f4b0810bfd889b81d8bc60bdcbbec8d72dee0dbfd2c8e69a7ae5f8da0f8c42d7ed0d27969fbbb928c15e7260d7eb48f43ee6ba2d8292297c8a15afbf09d71832c408b989c345d109d175100a672af7e67e6d68f6c07abfa2c96730a4f9029e46d62212504dbd2243f2b89d15204ef1410b5235cb9cf236eeeb45ac9954d73812b0d6a679b7578eed282f023dbe5e1bb0dd57bbeffbbba1d96bf50d1dfb471fde520ecd89feaa96cb40e4805e5db4e2155812911472ffa0db6b65fc34982e8c856817a037cfc75700dfad6625c13ac9e9b90ce98e1b269aa576c5ceceb4f508197cad848036d5d5af4d66a6b35138d781b78663d12f6154b4ef10b3fe6fda38d5c6cbb3e203880e2923c1a01b01ee8ff53d08bdff6323891a8313060d3db8f542aa7c31f94a4685bd95432b659b0d1132493f094d15de9c3910a71b97149297bd8297318748aada01142a79247d3a4964fe18ee03db31d24506c1559d35161852fc3d9418dc7f92ea9166f35592b9fffbb856dcac1de12df067261aff8465bcc10f82b0531b46ec058d0ef5f1eb0253ec9996ea77e3b83ffcf3f64bdb8df6cd25ddb19785405189d98333290e0aa1b9b18d8ef0c1226111ce756301a5f1625bc7ed1e8c8d76b30f4dccec1154017c4f07f02e587f4ccf13d352b222fc8a0138dd2a7aad6d4ac04e531db508b202e61e1a023ddd453aefe922efd4786ba4bf543be25ae3017e9b33abd56b19298b1171e8542ab10692bddc5b0d430897f78c1765066aa48a24a0de77845db610cd1c2f69ac55344afc499a0295a410674277a4def3bafeeedcecfbc299b75c6699133e17f0be7cd8844ca97b0c73bdc2a1e0ce81376c9df9b1789e9ce97229947e933f4cbae7c01bf8ee8dead0a126340ae5c9a2d11ca3431cd6c8e8a9d3824e75e3314d1d7cadbf9790ee8f0a829de776d864a6f213f41ca4db0be1dac63f7ae3c5405f95d0a5f21f7644445f05ae04032d271d09bb58cb65c64bb1f1e9a288efeec789465efdc3274e2a3336d595f86ba4ded41de07ae205497860c504abe920fc5ae6ef25e04843f7b967d226140fb37e191b04f6d8834013496f510cf905b5c8a86af4b36ad0c741ffc4b6838d460462547db8d54b867a6074abbcc6cc1da87516a137389b8f6160ea4c82e07bbf09e767e7f6f7b5573c6305c787918bfcd41067e7f1fa7c4fef71472e62b527b0e4d6243e8212f12adcf8dffeec38220d6e61eef32f251c7b73fac4f0b6251c63ad474b064e62b104faddf259ff519ab290296e2097e38009830e7f562e30d55ee40eed79054c9ed5e818972dd55933ef150165333b28df568b1a9c824f860666096206f422a397f92a947bf4ee62e04896b091e7babd648049e6d04148823bb024dbdb1a4d5e6d6e2bce4316df5cb1325c09c1312cba4d7215faee45f4e6815cbd35b1afc272df4d81ec7c671e6825bdf8f17eff0472322c9f2fc2f89c7322dea4f3e8669f99dca17a8382e484d589e8e7becd1ea77c401ee3c6e230bd31d042536975ee2b6cbdc5051a556781ce15cd1f670f2a10e25f3b4e1ce2958c1637965cd349774584d818ccc60b2527b78c9cc7afe88090bd670501655308a0034e97389b46f76a202436fcbb14fe52bfeec34621d74fa8ed11a28d2415ec3ac1e2f70b8f836eec52f1592a263cff72b4742a9325958a6536fdc50fb91ec590e4357f2cc8ef2531813074fb399ac9b3d438209fe3a1fab76228eefda40c9f43769d98cb1b91fc066fc732c3f0d11f8e00429246e8a1fddf2938f8c049cfb131d1789e26b4e2e63f0d42f51a8f42f175c2c4ec7e5d251acce121efc3bda6cdf506d5426d2c947a0a8658a7a1c40259028a3e92203919b2d3d1a6bd2b35f696fce1f7ee9daad2b714e8c19a8c0943a6cf1eee363d64523d0a84408a3dc9af9cd89433e93758f6a658ac441ae7e934687e01004163c75ab96094c9665e7fad7114a2f0bc96365284e2c03debe204926e204c154451d7896f302fa3cade6a966206d32a405126b1487f9dee1622a000fff15796ea23bbc3f553aa7bd3805684084224841fbedd7c0fe343bb1539cdb4bd338b5909dae1b4a43624cb3f52c5faa51185da1ca22cdba713508d4b60cfe152e47be0da5d98876b71bd36221eb0fec71ba10b4a839fbf06798c4ca25d1dd99c4ef244cc5df3de5b5a349d42d16dbd88e730d41cb3f4c6e69c59fe7e22a653f851d2dd17dcce9b5c30a5f99a09a15582a342e37ccaefb49ce3933e2bd44b0c351bf6b56bc87c00b43c0c0c78c6f095d60b461d4537cf3df45d4ab628f5d13f3197b99037f5084b7160d8d8b2b2a550b95b8563c4df3ef90e606027a2f527a72980ae451a86c6a2ee5fb82852f2edce865446e42d6a98b2b4dea05a4d167920a30072b91aa8b3a02c83324e0fe6fca908ab7002862f2ee09e9a2cdf30bb8242cd68fb1b4a601151d20cec7f137b0963752de4be69097330a449bceecd0ce788e5a7cb5a310863562ba4af1a861041752a22c49f07dfba71d89a90f05354afa5a6cf2b0a830d1511d8fcfafb4bc260710d365482f887ad4f22023c9bda79dc945f482bec68af64313191d1d5bc88de322337914fa02310b20117aa0eaa74e6cf3856bd330ee07f5db1105854186e1cee8f5c408c5004e6baa293260a8d594884bb45c05935d96fd2b93bae0df6b085150bfdb1583338768e31be4329869122312aa211a92876dd802da6321b8452d694abf9612ba438081e81ee99f2dabe5a13154b94caffea30e9e1c8bf575147e57f76b380771de085ad51d7d01f45043c5d5abe41d4ea24b24c035191c61d855d60c066a60e8b9d65f29f29e3c9f26361d13e78b820dee8cefdabde19d03ecbde064af57336ca62c2da1b9b774b3ff2fee8b2152ae5e2ac75b918fda117ebfdef97bf5e33d56030223c9e6fb4a19b0390185f2062dc213284127f6f4b9856af6a34578ce44afa2981d2da6d9bd413763fbab7072010e28f0f29770d9c03021873021eeb720c9270a370d07defbe29f7bb73cb5903256720c8d8cb9d8445f2fcba8e4eed23bbc91672b5caf2b22ed911488a2eacf83ba126b1bca43ed66a75698edabb18c018c43821bb468dedb995184bc715fe0ad6a75a2df5aa75642920f7ba9379ad22f6dfd59eb89b69d7f62928df8af8cea0a54d613974d0417ce9c6ad0b270a74572d335ed8f22704161dc0b0078d1f0165589e231f730e4eb51979c1d46b1d13a218cde63ba7711cce2278d0e3cd729e4522d986d73810aa919d42f55e8dad2ea639be5255390e360ba17abcab66021157434a64261bdb5751fa117d2e33659fd28ee06ea5cccbcf8fd6558c66d1506ad220052f52143a8671426af677bc9d3a730042fe03aa9685cdbf386ce8f4621b193d85c2a509ac7a0fee51c24d9ab495d6a731cd3e851f6267c04089688413db27de32715797126aba1c38671716bc68e3f96233fd97fb254dcb12845cab7e36df9106dad9909959302d0a6cf050a17db3a4084a522b9a38f5edf1ca24e3df8ee22520ec4bff3123c8caf2f5d37a2e4e73aa8b10fb7f92349c82350b13263266e24f77836e8d7402a33244922844ff6020e1534aad816281eab695066b02f3619bd850e4e7e4c0dd8676e4bc8993b21ba194673f65fafb718bd0d25bf86181e3fea20996f2516f6e1ebe0abff563f29024d14756afebb6506ec3a6deb27733a98508e578bc2dd16703af0efcf237ce57b3b6f449c079b6f6e5104947e6fae3d59339a7a253f19c12fed290b8435073a44026179e97d4d742af725628c239d4664ed6be56f4b8c0e098a20a1365fb1cb610a3f05892fb4bafcad472108ddfc1e0353ad18abc86af49f7e660de8bd3310b50fa2d56e22797ace548e9fe5c6b198c1bb36bd5d75ac37d8446d9ac6b4176cee4ffa102bb56f62de87c34f71dfda97f9daca4a172eb31f26b72358cb1b1161d848a0803accebf8ab6228266d2879e299b081d9dd66f80506b72efc7b43e020b02f6612eda3fe1a4b7c36d7d670276c6b1738a2d2954e78e3c72bfc03586c9cd232e09f5f76d68e2feb72b965617c3474a3da6a9149cd6dee492b7adedc40b9d12cc06707f2430cb4c4c4f59f570a7d2d6696abe3b05613399064de515b234823385083345958d1117ec5ff30287a89b9249689b3049af9ab295545386f927b156d19948f75a55dd105e3fbd46ad3db0fcff940a3cf5644f3cf86ac5b505dfe7672c2bf55040a6aa4a1c1d1f582584dfefd1c682258abb9675290381423db4b843e494d2fc4bdac65ce178fcd938e1596351db2922e7bdeefc5c10078d8570b47383eac088db17569df75da180ffbce89942882f6fbb404bca35417521f2500d92ae37e5d0ba32f6d74b9e9144776478f83718bfd7d91a81f931080a736664c6601efeb261a8fdd48558afe8c210b4862cf9009c103f3051832a4b133f433930144e3e8bebed202fdaccbf72822a07488eb283a52352c0f8b8dff2e87311a9a601a9c47e54d23564b977e322ff1d9ab61eb98ec47e29e6257777fe64fa40a04d24bacc5880e15c8534df3ecb7dc66f79cc30196eaed27568b722bb5b12ac9eb2d0e663e1500497847a6ac477e7079c35cc9d48440fcd26bc21d81edd59bd07dc940e466587522373187192e11fc71d7cc209092ca6ac17b72ea9d30d5640b36fe470eeb4ebd239e6dafd1a2c212e40c53c9c233b713fcf5774202c31b76785f826b7ef463a1aa9bfaa3a6c1028f2aba3494a903d95981d939e03eab8abfc19db7505a4860bdd42c29ebae08ec308ffa0926c113f6e8b17d089f6a7faac17740c43fc796b10a2ec31e5aa78e00e835e8b5949c4c60086032431fa8a0ee882bbd142ab85b68e9726bd2670049a65bfd81af1359eaccde5034585218dfaf1016b3b8313279b72b138ad76e848b67246731106a0631c6d758d5be144ad6e15284ce4905493679d15560b9ac3bacbfc61ed4cc8b1361381509b09beddcd0027900dcfe029b8a350b992ce574187ad20b1e5e163fb0a15fb9898430d4a32ebc052c65226dd9570ca3be0167fc2259deadcc0dbd15ea827b2f76107492630dc9708c26c05858570e369ff71082d0424db2a77b4afb4a784787564870afd96dd7e67c6aae1e89e63cf2366606d91708f0fcc3a62c9f20473fd1b2db9fc69cda9ec0bfb08b33ef45dd3b8b024b5fe8ff0f84a0301ead028180d0d9a1ad23ad698a9ecb195f3af2662d623078f70605b1d1d13b5ff96b60fbf826329424b94584469f1b4f626ece641783db39d299b4b662b395fa3f39f8b77e3c2c57f8d4393c3065c74ecd196f6992d93eddd657103d641f5141c56da7509c5f38a61d9b9f797e004b7e472627733a11d7c7d8cb39956dfe0df3cf17d55ff9887bcfec4d2de9f157d6c67839c76f9541043e4a9068ac7530f75cadb7a8f57cbb1ece6b5a52fd2666729fd670b58b8a9c503b7d3cbecc6116f0c416c674d0e70b07e4eaea2b8219e1d2b903192a115d1f4db81cece5068d3d7ca5945b29e4b18b9399b2c0804dae5ef1d50356aba927922042fd55ab465125ea3630d308b303502a26996a2a3604b24e3826509f0186de9d4abd93e03a8db3224457cacd144c02686f9929d26bb3627b871261c64e7756d8fb58b7c6903df73f358eff4d91bb9e202a8bbc07c6f9923e4eee1c6e7d4a9e3645c3bc21ce97e0d9fb8b23c3d5443978418323f7f554f9deee77120833c3005044bcfec84b24c9cc4debab9cb473e50afa12e4fdda1b26a2724511588565f69d43d0ad68530b68008aba30973a2cbf66eb615a782fb4882169cf4b5e945bf33f211023a5b63c8960e4f765bbe4a857db13dedbc4e210f5fdbb897177eeb33f1afc5565bfc1f06d16e8d41d62c13fc6bd67fadfec964f764f07f82921ac8914360f782cab8555cd793555b9b05960316a67b05c4281a7dda4494d1a128cda02519f2b00da7f379fd10ae6e435a97b5bcbe793bc7de234edf357eb5e19159fa25f1a53f25c6877547b619fbed78b9640f7727ef7c10542900afaea56e93f1fdbd217ee8ecb40d581637e1bfa6abb03a3a0597ed58cf4d7211609944d8d18b41a874f5ee5c4e2de97845aee174d8f56eed8c2d3409cc0333f5e11e2119a0d58efcbebe5c8c1d026b46395b8f5dcd722eb7d8993523f33b76db6ad2008ee12bdbb8322627b3c7c3fc7a753396aca7b3d98d27e3c906bb3c212805cd6529d7a599609e7d46689f5a36236a0e68ef1466209ee3c42d934662420bdbda54513dc9af34b9782aeb0b0d07ad09a93baea86ace4f5f89c1644337a33f040a618067de4670d75bcba7d17b7c7e3bfdc32585cd93668c76570f5016db8e600d21e75b66daf4604d383f68e364cc42abe911cd474795a05af91b139c7633859fc5125880234ccafd434426138f7837dce08ffa6f4c3e8792ad893e56b694b50e93c7aa69f64c63f530f1bb453016795f7913cf32ae96b9e48de9a2c2e75e8b74a66ab20bf0fdec9f3724beb4a9718d69f4ebf262c4d94783c1a688c8cab5655c62fa4ee8e2ba4926403952a92f3d5930a8147ffdb823f4cdeb6a09d68898387f760409cdcfe2274cc76c26e918d01fb57e1afcc5c97b496e3898997a02eeb5e5a1e3a6983cd77cfa46f92f313400f3dfde36bf31b25e3d0ce4a3e305b52080a1504c3c5363a4288f20057db01960d2b316aa2069aa260a5fe48214760aef3158272a75deffae939749b3361408129d8c7a0c340d5166f5a2522099617ebb4b40a23054ee041603e95c534d29d411837d916ceee5b3147cfeae508521034b5bb0b65492ff05dca81dd21a5cf77c510bbe7773fbbe35cf4427835bcac4a86559cde3288998ddf8e93c1b565e04853126ece36ebe0ede00fadc35b653328f70568fa450bda7ee81ae72359f0277805e82baeab7734007e07ae2e485f5489100bf1340e9346bb77476c296c75680c5e2b9d8bc30f1aaa28ca84b87ce489fc52beb0c20dcbeb757ed0c28e86300e4b9b67fb69d0b8db2b6a92e865d5860c0135704b245e1567773e3a52b2c46a6d2211ad338b3ba11a0197cabb3a163993bb2142b9ab5e9e76b0cca2eb6245d023c1194e27dd81dad741888ccd2080d4fd32f858d6996ec3393ff495267bb773f680f615e67703738340d50e6f04f9be11dfb96128984eacccb29a43656be378fa32497ced8a30e60a99c95b9024f136d994401e34e2156ac8220431afad08b12ffc1ea4e68466d879250304dab19193d9db49a8a0e56d3039f412fd37416fe0ed3c3c71d19da00f3c9b9b05192775fe70221f91c6b76d02c6059ae5b202a44475b3785bae74096a01c8612c548fcfd844f26e2d3f242f1568d622a69172af4d7715bd1d0bd709e6a686f14b97ac4c1e0ac77dd84a825d85af031695463ff429faa010f312411a1e8ec0487904ed7df0b9df0c4c1e246da052ba6cf74d72882061e720bb8628a749d98e6bf6b3c841eace1958e77f8b1503bf8392949078313df62d8173444a88ae9e5adc1f2f1ce3dc86a04835f2ed12a9da0b21b7896cac069addf447765ed98125b0b1e093e341a51f5de1a3b33e21e90caf3ec9e58f6706d089b2066f1c447c198b7b44ec879d7fb242c10934fb207acc519e57c6b5e35729408e3aec02cbafe65b50e17987b9cc87a39c4b06e02a61445de971c2456f15dbaea0a540c5d1340b240893a7e628babd99c1d2f2460fadd4a7fc21af66dbdd85f2cb757980d4f92dfba93ff375e9c3810dfb072fb014c0f037aea1706e83bdcf6e94715ec2c9b1557f356c4552b1196051989d3bed62eb5b3fb358b4362312a371e664137343124b2648e360c384954438513841b532622455598de897b3f46aaeabc470b27bc9757c78206d673a1e3a937973a9730bbe32c7b946a553ec9a1ae9cbda585969875242fcfc8c0d39710701398e8d5d50309391c3887b84a391f4d2b5b4b92fed85124050b5b36a1b63acf07f610c480ee971a4b075dd9d03caf213190a4434cba9ff1999bd7f1db9afd8911ba040843c64e028444d19b2be944623be817a88df25632a60bd9a72e16ac7e3c5cae51748c8a42ecbc827cb8e3ca001bf65fcb765eaeb2989dccf903527bca36509ea5a43170381868503a718622d5114f9d4da72e6fcb8e779e1dad5794861afc3170f6ef54be0aac7702dbad25872a1a6f1d2ad95cb91f1f9dce5ce946565810a18495601c6dced6e30aeee3f0c31aaba37d6f33c5d405a61165f97570f473cd6675c23c60529bc0227c82c038f62cdab51fc73fb9350001928e8f9d2c9b90c50a9fb2917e7a72e5d41c5cab48ff6b97c406ed8da04e84067ebcec7549d1d5c9db7d63d3d2f82d74fb132af9ae9f7dbd0c2b7e45a3e8d9716d46ef027876c2e0e62950d94c425197f864983e0e222a0c562064014b2edcc04110dc71900f3e47710c724073b81aa12a58a7a77894b4f2750aed6a1aa86b6f837c9db05b622b081420c6d44e43d2d13b4c3e4ec124e9ec994dd0123b2be99e5b974b99ef32069636e142f2296f400e9a1eee7280224e596656ecce2984a046f7638edb6a51a5a37d063672332f8731e035669b522248fca25522a19f69d8cad3f104cced8f74a8fae2d1ec02a0e36685a5e8a16923b8f17931fba1b213254318768d223d505130596291317bc22cfe7864368c39645da5e1a92203ea52ab3956d43be0153b286d94a71709233f3b6d3f70314c4003dbbf2709eb57f951380070299b57708ac0239db494b30e6583c593c72edd797ad53712ddc9ceead6ccfbde5fc6483b2f97d53dfdf4aff256e4064beba895d617e855ee281317db21f63b9cd922aaeeecad404e7ac594d1165c6322ac8ec95c9e57bf06e1877c386f1402b0f253ae4221a5a914d3631c3576223c4094064a7c33a27b01abeec4dae4acd80c4f21810fdacb18d899a6041350b073216bbfb689a85099edef91dd1361f1fec6b7d4d3e97faee7f7654467d6e4abbed15843702bc1fdb876ca447912be3a8dbe253534fa7bda1d1e5cd44d4f2c321a7935aa9f6c57ec4763223b37f7af7d802e0d3ea1d370e1f39466b382f0685c3bc9d82deed35cd2321f072f5ac9ce8d8c87a9949ceb561114bef523d4f1c90bf8436210877064dc3677d2ed54e2c8eae00cca3ca4c8c44c5f8bfd7536f9b4fd89c0f45ac14029d5d9066562fb9ea1f40e678bb156187f2ec57a41e36ac8eabfa3eb358766d858587bcf400f06f23b7f42d0d099d6d906316da32843c0ac004394ee3902f73dab85f62132c93970049b05b3e940c283a79cb22e02b0329386edd281ac3056b7e538d30ff8a9e65bb3a16ec51b4cba1c4394d991f3c3eb885212af40c6864bb2e86bd2f90efe6180e6fa74bc49742fd8cc17decf54414f0ad22cb8ac2766173e938e3bf23b362a6540501577a54765cd2a4c22fe5f726ff92171d90829745a3f2d75aa9b9887c8657e01a1371d06618b9c8e02dcccd6ae2dfa207dcb7c4fa3bb9c607275036167c1b8adc15b4972b6f8ac5174faa38407eed7ea0dc57741f36cc11ab7d1c35465237c114bc65fe15e2db551afc629b105a9d8b6029e96e682bbc6de286ea095423dcf3fa923f16be65d858cc5c53142a0dbf01543266936720bd08ebce120579c25833001a0c1d685b9dbc58cf246644e773eaa22feaab2c6d7249b54dcb12d5892f5c5451f3993527ddaccc8d01fc57d0479b97d3d8b1e3805614ded8c8327e5cdc4fab18d24d7436b5550c8d64db65cf5346827d97d384b4a79ae1c69ffa600e14a4081e1fd6081666635c47d96b5281164bb551d1e8d784540919795118a6220ca70495461319f56f47f08bed3e2b6edb16b248414318fa0b53d2eb0d4db86bb26cf38ab56f82cbe1643e7ea4fa6950f5f8ff3b4eeefd8d4ffc555c4d2ea726fb4ead50ecfd9310963e9718ca8d2c8c07a9995a14a9d23b94ae83f77e1b48afd140d8d63364a170577c58d940f41bf9aa43d20526f216e3551025313ef05ab6ee5ca0e4712568990124d55d82361a2fec69823dd39b7b0d0052250e772e8240b6c948bbab5bfeef7948b2d9f4d81b82f8a6ad4fad99e26ec06fea8029ab89afde6c6ad8c03e643f99c9558fc1f669e3c1039270bd464b7ff0e6cabc73dee393ca5b5334777639e60a75f99e8f74463222fca58c26552c27b2c264e4198adcbdfdbb70b3960378d42e4014c4f6a123037f486e3b4d4f326ea050362f6df255cfa5954fa0e0fa1831b63ebed3f58c0be3f3fc942e60edd5e62dd2cd125797061ec4f61ba54e19f939c31dc7b08eab6d77a7a7d10397015b003f2a679fc7bb94f8bd508bb02b798cd8a9fe8fdddc076e741f28a370f218b698affc6f09319d73f302d2079310d7065cb2d572c1b06a2eea785feeec445baf47ddbd27f652f55396386bde3e684aa131fa7570664d08660332ddb4080c27f84d5d801ceaa00565e3dcd7922aa4216a0deec7b66771676755cd4534eff1db760176a2bf45595dd900e7ee9ee3657af694bd7af9a3cab1520fc2cbc4d1fade37147bf87a0361a73ddc1af0ee17c8dd6907686862e5b3970924423f421637a82364eb9bccf465ffb8d615bb0ba36a72afb5e8e054fa866c3abc34f12f02361b25c3c731d0f52a9fae48cfaed0c8702e8d8b37cd5c421a8f2154e5f451be33e32d4fd21d198e7bbd818c3f1aa3d298d6e25e822ea2dafa771a9060203ae6c89321ca5b9d896face2a57623d6032f3f5a6e50766427f8f0105892772fcea54b8a7069219dfd0b9489e5fc3ab094c7b0d7affbabc99f5fa680678a1383f0f10397dee99105e6cf056933a17fdb5f79ed0bcee00c0db8b0b9c01b70e2c4ee05d9d5c66bbe2a24a3656a63658567b4a90dec4735442ff86881984ce6e12240a103272598c7d72bcec3f9669474473265521b3a80a1a11b2e45a71beb34cf915ae9f68dfd9ba1f4a70e6740d1c5660ad2a03ff4076a54badd70e916deb4eccef9f0a6c5b03f480dfbdad89d66a22789a6dea08a1d6d56a931ec2a556fe158b063d504356e87f6423a4c41874af20e2d6878bcd994a3d2f80c854f25be0377dc6d3091bef45f4dac44ecd5e44020c4da974c6a1e1badad500b93e4488049332614d90df0c7f959170b1b2ad65e0c764f6c56f63b9406e316d1d2b12aaa15da286ccfb54e78f4de008e5797ad914551ac7fb4aab0a32db5af691fb16721fd36ffb877b9c2921032abfb8fc6c730a8e1e8d45abd38a702500653d6392805f2064badfebc9bb1bd200b7659e6eb91877d6c79d23dd6e5ba0dc278c0cd3bc78e4b4eb143b82b7a436970eafc42c4afc949ccc088aeff7a94cff90786664cd07e9851a39a0b488f343e9917ac99268bebebce778294c7ee0940489f1f016fe5c3b67f2ff859684d59bb91a4487238e6b6ac9d81f52b2b4cfcaa356915ba0008ced409ad2300872244768b8d1c5e35bfbcc2ff5e821c4516da86748012d26cf684be4fbd38e8c0d11bcdb8421baed0be6368d22e67e3e537ea87ec4847c059c0055c06cb61b752584cc924aa12b3706e15ec0f4f2e896fc6005cc658c3300930cfa0fa6260509ec7dd9b858e19f7333d5b24dfb76cce07a6b159c81b1f1c4e008ae0acc522067ec4e72723a25b48f5bb03e8441ef3e41a7e307f9631909104cc8fb03638b381ecde735b31303162bc6b5b5cf0e4594cfe9033e2703a29f21d6fda692381fde393302ab4c5022391add1d17474b70222d54563cbf50457903c6b5be9501bcedc2d5f437e166883ef1103075a63c212280b7f3ca67a653a1f5250738ba3fcf65897ee64d2d6c0b93e041733e45e2ee5930eb31c4a4806531541b47cb857a98a6d3f6dd52fbdb3ed63cf000d6ac88951261cf0bb9c2959575e30f54bdf9290abc6fc93d8525a5a28f3d1c55ab049d006dffcaa105cc5d6ce1055a3cdf04367c5b13d620eb8023323bc39f5e4dca0c448fb8c8a204319d445b502e7805cbef3affe97294d81516af6208dee826eb48c8d1e148bff3e18a036b823c3841635147c2a5430328cd6e5212a4dfac2845236ab910eb3d9d2486ea9b342f370dc0cd3ad6b17b7424fc20fab827febda64458050228009264e7885e3131e4c0f72ab1ac0046271a3fb6ae2606490c44dabca1369e0d7dd432f193a20ae171134facde9fe4ec5aec77159558a7eb3958dce18d4446aa804b0d8da5917862381e4edf4ee50ebf38d6ac2d6ccb936ae4865fd92a60d3a806bb5d3951dd4a21369c4e3d44267acb19bcfa1b5b0913ff2aeea539b22bdf165ac81457fa2c4350bcbfe15568a1fb598c11c3a70ae8e45c49aafdda6c50b2ea14f6b36a178ccc4038a91d4d25e9bc9dd019af8f35b5c766c0f4bdde98410c105d5cc1db9a286194509e6d072fbba5b24abf2416051fe407d39caeebc5a836483ab02fc36c2c96c33775beba75d6240f926be89ce7d35e8f95e114374116feb2542f96720dd422a551b8b9db955e7292fe7c1e1014319fbe8fc6514f5e74f8b33cbcd7d98cf637a3ce365c188737f0a9f208a68e98e6098df3c465cea73c578d4027a2de0e8dbaf5bf3010a3c72984d7b5908837344ffff0ba233c19c9a8dcaa0d74f5c76d7a1ef72dda1d0c9d109db6dbb4aa64d2342d5d14474e73f6c5ec32ac8cc058e75b23d4b42640860734347f76ed7a4340b1ee06c778207b2a239cd1e098c3d06682eb214bd1a7ad51217a20ec5487b92d403084ddb24ca1eb27ff66eb4a6f554f2fbf5408df3f49aa8e60d384508c59aa7cf1f586f60d0899f954ba2117c7d59a88410231574d395f7c37b9d324c7fefdda6fdc882de5e66a5fd400f193d60dc51896d2942912a1fca65b22f6aa9604327417fdf88e488cd6b33b71a91faecb90d08905a5c4ef5cf2af9cab966274f81f372ee00c72415740f56a4786cd350f2dfaa82231c3ab379c1de2a44543fde583c77c6569342a1236ec18346ca2a3d01a37e3535639699fb1bfd3d628a8f245234701e9ebb0446dfc5bf5a3b7a5f8c72274fd455af32cf89d31b0db0c9da744bce1d6ab140a35d67fbfe7822f3e752d6bada2632da53ebfb16764870ca7ec75f81121f522cf97f6dbaa3ffe9e49f35e4cd63505e938cad0a121df40c5a06313c8c733be88b4bfb73994f59bb7f32b2be8c3da048a8160aef7e92e6188909e0018f3a74b961ba377bd14710f2ee85d618d03d824d40c429901a7abfbe3a28ec7e4ec203b93a65d21b0bb2550107d4a4ef8ea8190795283f60a11c013fac7a01c8f53775e8bf55ebf8aebb6ee9ebb665d573e34b67b5709d82b428957158d8ef5d2f1bee10a6d24805d860997fb33f06b4f085cf4fe018edfe5352a1e821e056fe19b75d4bc43a35e4af0d27c3503bd097560ed63494075ea1d24d5e58be3eea3b1567e195f802b565453a7afa5111de52b30e624f73d359ed3bcea91cdaabd91aa573a082b2c455c6755994a385d8d1378b756557947e18a491e95737dd75e31c41c0ad52ad0864144b47b56e3ceb119c64084a4e6ac3f40c0f996e3c03528b052f87666cea428e53629b1d84d4c7c3f93a8b2b3c4757159da3a520c32d7af3dc2f3dc4c9e6e8edc28b5738825daca622ecd9d923e0d394896dbc9561fcc1380e746e01c13735ca193f8a12286c8dcd739b8ee32f8427ca3b0b946dca5065aca87cf4e0b0f1ec38512f32377774dbd8166391b14c9ddeaa4b2be3a42658c06b35661309af9bf4f31b388fb1ca4561382c8c56c143b2859458dbfe8905981c0a25fa49f6ed1d68ee2de0e8077c29bd769447c55762aede82f1def47aa0d231cc686d177fc7332a06e69bd432087db07a1b54677d133b0b32201f9e9b7199f0f07a909e8932e939c7d2d23cddd9978051bdafd7180dc160250fbdc37a8e7b1565f658db828474d6a61afb773a707754a9861302004d2bd0bbb6edcd920cd228b26aef9b064f6a7c91e215aff4bc201da83255278a43c8ada21095094323531ff813cf977d2ef81a7db7d8d26911a064f419b9c5c3008ddf6ccb7ea85386d48c066292d63c24b34e8e851c464c55b9f0a1e10a6da907cfedc40083b0748828ab2c115d80aeb5d796adf30040ade7a5457d0653a17f5975356e3449743ba6f84835de3444cc24f97bd7fd22138b2750d1b086aedbc3018a618acc5c064fadbd9a00ba4649e0f9a5872521ed5e39fd7533fe8baa97b32b8fc0f9070af4d0a58dec0f95c79f2ce55fec72f6697eab9ec85ede20682ae501a52f038a7829129144fe50f9d06f7e5a699bed453f13c1daeeaed1d7392c3b711577e158ddc1beb2c9eaabbf143b85de0cb7c34c8d7f57d7a3d6f95a6f5ee853c0a3cb008e8ff856a0eba3cfe0c45a5162a2246e624ff7acb2531dfb7d9fc63d2ffb404b34bde11dfe7aa06285f6fdf4c45ad5dd6feff468c387458f9f87016bc4227a699d3c97a97ef6b6c0fbb1fd6c25bc54812bba3611f3d444e67a30e151aaa98a9c0c285a0e60f23b6dd7d6cbe9c4391b4772a628e8f08fb5477f453465da2ead0825d63dcc89fb32f97d59722d13893d6c23840385eeef91366cc45626072e7099c49e0c3c17d02c4526bd737f595b170d5a8470b26e84582a06e5b317fae9120b77bbd2904e42255f9cb8d832243e5388e6c60e9eae1da23c6c3c005d42e4c621ce48e882789de0ab0fbb7fce9d48d0587cd57e0d84a6f04aeedcca280105bfbf699e38f14f264fd40844db139973caf70cc320adcb405fbdd065365bfba987e943f1470d71ac56e8c962ff861496646ae26c7782139c86e1c80b370c64d610e722a1eb07878b1e667cadbdb9d4b83f7a09458da3761a1b6bb5b24a46e998602e6aa18531492b0c368471b8d1e3af62617dda8c297b115ea1fee5ef5c2bc1049938cbff2b696d0be01f826d419e73b32c3d95cc82c7a1f096da5db10a6322733b80a8e669a3873c5bed7b6837def719171ff17c659751c841f19e866ca695270ea44196840deadf0fcfe563d028de1cbf5d8c9fa446a1e127482aa34eba9c068a09516df468e3fe8893d47a2d4e9383ae3fa28029015bd7a22b6dc26bdfc739cea2dc020c6b18606917e0f1fe0101e8230e01c940e4fab20732a8c639209cf70519e981d31103edef90784bc06b5a74e0eaf0dbf24ef8ce5c3aa9723e636e9ed6c00b715e47a11f1b9bd653e438c19b5c9fad3f9d1a6b96a844b4bd11f9a1569f0774854e4cfc299374e0019932fc7c4820c5b2e7165bbed80025383451333e0286f3bdd934ea08332454b442e61c1dceb8724f5a77370c7ed8552530bedd47dcd69d9c786ad301ac549f61f12a225334f26d59b7cf98e52c92be7b4a3f2e01f5ca929311ee73bdf626c82ad8e589df6e1bb243361d97ece34ae80f3ea29de9ec3d2c53b48033f554957ae7c8a426fb79cc9588ab929cb8ad0d959f55ca19d189e2126cb760737873d606ff7f4b73da73b9c882b6d0eaf7fd28027e1f4d997791f3d5015656c68672f86cdfcc4f962b471a8c72de8bb9bcf0dda5c773a731f3feed203ea3d3fceade8c156f85118a64f429d0f405123877f4f9dbe44bddb58c50634ba37dbf622604266887aebdf4bf5a68c1d3048dfaf4777cb8081e87ebd00248e6138d35b79abdb66572705e8470e07bf0852527759fe7cb5b1d6c4e83bcafba93b7b5245dbd3fa3fe50145a2ee66ae3f6aac143a3e1361be3f12b2d9fc1b0d9cb158033a3190e2e64e96f583b7a8d424424d180e8efc853c92d1eab8a166f11b5d0d940eed51b4fc8d8f5100687ba299fb0e0db740f07bcc8094ce6444870931d302187e0c14bb74cb9abc640abeb5dd5cf1c30e650ad5e2ab87353635511b0b0567fec4175d3679cfc1a4bb5bd5a3f705f570c51b323747d7e2d1cdafa35251f8b277d1c056520d32644054cdffe6627a20077eee2c2e3f06c443c2300b61efb9d2d8c40de5891468dbabda6fc67fc363bd059b1020528c7861778ce0c2a2caf5dd13dd24fd2f0424b5f1c57b2d73dd71ce9dee4f61c271b5f31681ea884b27e09f3e20d21532bd124eb7d942c36c933caeee67a73cf1f927d62739c8a9163de908eb94fb6ea3afea8c7d87cc8833034444c53a10ee6b5760b6c6400984029b0bd4271562f8390f770d71bfaa3e1b707eef9517d4395bc30455a14f91f94fab84652d5edcbad242b62200b53fc61ba3cea5afb4fd8208599cc10b016fd0b4826103cbf38914391df5c873171f779c4db90cd9edf1a0f16ff8c0e20133228665dd53f14773e86c7f3aefa8c5ca79c4a185ab40b0a5a0d4b2dcc4ec8218e87a4e90fc25489576f22d7396e9155242ffb3b6b6281cd570c739c0427fd28a7f68f802bac5ea2e1a0ae46321e8445268b224dd8cf73ef20e730722145fab5912f569f8141128d9cde8f2e79889eab58b79656e307ac624f5e042bb32e8068189bff97f424705c364c132148a15e7dc31e8f0750a851b95ba2fc0ddf07bcfb172dbbc4b64858e82f6e7f5fdee44ab0c7179c279b960b25b637ec50b6276fec47eea7221fa8f458d5b15dc8bc7a1aacd07be736ebc2a35e29e96126971bfc64ef6596dd9f5fbc4f68cf8546f01a191baeb5e84aefa2686145b5929268323150c842fe5e71dde4b21eb0c2b3ff01ebe16e6ec8b7c5a81af6a60810108c3f11ec7ea83358f0828ddf7c805f9f4258148f6f3527919aea4ddcf337954aaa4303179e10d1afa8011c8bb0f07646aaa15369c20b925e2045b16e046cf24d1c6024fa038a1cc694e68ffbb95b4ca882dcbe277e362de3273a66824959717bed3bff50c450b92ca261ff86c82e6253f9729610852b4f822f689d29d34a5da325277537105799c090551ea40daa1101efea105d7b0700b2538ee5e7c6549292e14c7fc389269d34bed2af41854ff4bd3ee1fd46e91b914424388b888c599d2ac33947e51ce29b0563793c3b6fc4b04cdeeab9b74787a2c48c9d51279cb17fbe1721aa17d5e9d7d573ea75165acef1680b9d64d26db36f5180555e224aceb33fd31d7bc3192e13d022f1a911fa1af7ca80f07f67d1e8790a618e9fc9702fa4d21e40db71d13f947dd7ce19e988b163ee14088ceef5528cb7aaaa35ac36a9fbe478011f3308b8016449d13dc68e7e90e21776cf9cd867e821cc48f923aaeb22ac6908513e6045f2aba0c4bd7d362ad03752b14cdd4bcf90608cb16177e232566f1355d38ae9abf74a71ed0cb094caad4b88f583c7e5ecf233331444360107a766b41eee5f7cafe044c3a3c4a94b0aaeee423993bb03bb849b8575b56c90dfca892d225c786747baaf734948fa24b857989fb46756b7714bf87ca7c4f09c7daf12c307ca458e2494b1105eec5d996932b8c8c13aa891489e96914c3cc79b2019690544195798c6a8f705bc3afcb5492eea8ce4412e9ab5b86d16b213d9868d684b6b46a68b3107d57a1070d1db095963594990dd9a8907b1a13b6182b72f8d590e1d5e778c5d86965f8d1525ba059ca912a01e3f3b9dddfba8e9054febd9a35f92690763ac34bc0acdbb141b47c334abdc76715bc21cfacd06d4a3316e4fbd3b0a763bbc3110dce8e5a5816abec24a3e601bd2eca2ec32b0bf1da8f77aa67c78baac4d8c29d66385ccd1907e4cb039fe495de1fb75274033a4b7e51eabbb50f059c76bc11705d50f3fb3c4255f4fc0852debfe8501e515bc23afdb0f387a2dc713cd1edc9653fb7299ce1cebee4f300f4a2a663c3b7da52d46e6f2f2372de9aed25e2d5ef9523e9fce72ae19a0e61dd72dc11074161e906ac0b707a2a65ee39153bc237e7c1500af1ecebc2b20daca4d2f04e1ad8e1c53a2c747244512ce74dc17444b93616dba5b10e01013b1e1dbacaff21c8bee70685394aaf6df4fbce44bd9fd110241f768754f50a0c34f80f511ce57d2c78a255c070f659d68e6634ae033106472c46cf16b7b02c21da7e03618f20535b50ca777e51c9f3b81d58fb0e2b035081a43bd4e838791309c4eb00d67a659899fd4e50372956491df16376e1834b91c780f90aacf47a5fa2e811f5e3988c77904b735931cd7974762e510e1ac7e2f3ac1e7908265929c7e4cee56cc8dd1081869e1f4397ac780bf44a7e2a68fdeeb5c2ab15a31c4615af3e17770da2806b18323ae4a10f79f52ae2e3593b6dccb6257dc15738c312ce8fb0c628165743917a16059d6be124fc84d93a7ec949775211d81255fe26b0dc7365c37a7cbe28e388f4856547b2e54884caa6697f0e48a7905a306d2e58fec43940e1b936ad14f4b76302f36835d718e40c4f3a79982421300c92503e3ad0e505219ca3f4ad74dcc360959c7c3ff9ec97c4cd45b28cded9e020f4b7b8939a654a25d0feed0344dd16a3557c3bcbfb937b66408231bffa7457169cdd80e54338346032078719ffdcea62c5ad276ef33dc562c6b62c25aa05f01c7c7512da2f4d230963a6ebd7e28889ef9b9bd95d7eead66a3db128685718552c48c87da922bc39594146af5fa1e1d41d43b9fd33178ecfba7fac10c0a3e5b03599af18a1546ace406a7016b8686babf2abf8ea93a3c8f6e7156d9b2cb4d4e2490d062d05d11213128f1b00ede16966479318ec6ed31fe683f5816a24feff456a73688e34b566f0c01d8886074ea8da0dd6b2af26e8404b81a0142efc94095498f6b5aadc99bf0237e137f977a526a8713798841ccdfcf710be074bc4f60831f903dfbb2944f8347d0c8d2493b174e478a2bb8e146959dc3034f6255cc4d8641fbdb5b8bd7e4c78a6a73d877d9ab7729a58f456c9a1d60c44e061ba6b2d5050742cbf04315cf0328d2ea5e0ee5fe6cc74a98ee1c888d65aec1bd1e48ea4f6452e5e7cdbc27032812a55ff5e4bc71b711c0f8ed95dd5aeeb4adf628066492051722deb51e492030f1836685d627a675206c0ca0596b22b629ef02a7eb1afc9802374b8b360a13efc166531e7ad729efcd981da7ba6d5345bba7952add4b8ca82ce9cff34358eef74a89a60b87d4f3095c74b24b98e072557e17ceb3ac3d04ea077da8758a31c4871cd47f281495189dba687321ad67906e4963190bbf40ca001332f389d89eb2a5a35333041a116501340fbec15d0ae8ab71aeb2ee8425f9675dcacc25a107979bbf91af84275900abf966d5ed7a3105ce2f614058779d7c1014d950e8d3f29faa44d26924affd39cb31de7ebc7215d1149c4cfc4e8f56c7bf642eda7c530e81b7b9ee9cf3e24c2a3fa4336b874f8d2e96610f91f516d4a5e34fa6741e878269d763dee28ceb7ccc927b71ca2dbe83d32aa63c463214343fd118cfb51167152537a4cbec9d4a2726af02c9c07c1427276531ecf6bdfa19927a1405e5f95c61405d722e56103af2aeb5c516b41bbee29e36fdc4594fd780177b53a94b9520627a4a91b82d9d0e47e8b2594845265888d496b61f5604958e870b30b96793283b63b6a513944f01bd103eb47fbac9fd039f40f08c8b89df39cb5c2a8dfbbc90db530e14c5f9b8576687f6230beb76fe59e6eeebc2ecd46cbdcd8832856613b8b3804fb32f310a3c74fb5a73d1d2572f93fb80bfca253e99c9a9b90d648f10ce6ab11173e20976bef09ff618c9266311d624387be22cdf29b6bc7546370484d4b60afd5ebcaffd9315b122f95ac89c919ddde912cccee8aac36fd44a67fd66c1e88eba7802fbbbb093ec9c47ce730745b3e9bf3f86eceecd40fccb19eb4b3e04269b08bb6e3d355e19a6eff4bc7b2308a3d28991b0dc8b78a318c31c33b68b57d97bc57abef4bb5d3791542344250ff8290e7ee75b7c3a5ba094f406133dabb7c1825cf776bec054ac0f3a47865b642a49c083d3985a9ecb30598c3914d1ee52dbf441e204ee4e13811e71c1ea455b706158e8c0992f6f4a16a6b14663b176b9c76e1b002949e7828af3e11a18e351315e9f85510b382b9808de60039512d8824ca338e08246692309759a5fa6d9bee66f09a863fc49120ff8d191704390096f14fb361b92d2c572d249f1fe2b51753fbebb6f36c6ff9212fbd8d51e393ca62149bf1a0fc39c7327f488dfc084e97090035ef4d43e411a20c61e29082b7fb4f44ba32f721d14cc421050132fe45708e4b0e79969df747fa0e19d933d822c57e6e78dc0a0049316aa7dc467225c63a991481bef6a44cd9d248aa87a2b4f7cc356c22a3f2cb96b4efafbaca90e2434992bec760538e49bfd801fc60304115fb879dab1ed7b12238b736dd3ef0dc8988d5976e9393641e72cb0cd8bb26b6cdb5d98f7fd37cfaabc379dd8d68d2bfd5ab57bca2b764f8278d79633a7ba0b011323e84e06a28994022543fffacd34be8f8fe38dbdc1e030d1fbf87022ed3e8d10f76cadcfbe525f015c6c0709b6645bbafbc98c0c5cf1fa5f95d1d557bf0ba9930c4a2a769f0f111478c10bc34e7974cc6e95f715ab1eeb485a2597b220677cdb86fd4a6255d0cb2d1b890fc7c5401c0226ac6c4b070a6220adc9b642bc39c05ab07e73c87d73231a59251dc8f37b3d5bdb7704d4dd9443c14bbddf5dc10d186bf2574f0065f6794d18148ca4aaa28530954767cad0d23646fab875ad4b0b68444ced6914074997e501bdd0b3c30561169525f36e31dbe16eca082eab940ac0ffc7e511bc58648892ab7f50d4b865cf530dbdd75be143911df44c3a904b45a805572494f0e5e30e75911e4cc5029a437cee32dbc467b1dd6dd69a2d2d6c70e512fcc95fac5ffaf89eeb6da28f441f57f5f5ef2c4a6e20c1322b5c2e64da4987fd7f61dd0337a2d548ab345b6b7b8c788f43095faf596dcb18011838a68d5bcea8a2ccd069019cb3c877ad2473a268384796aab679df5e8745797ca91a74713472120da9aeb093e15f2d76f72b22c641ad653f2a3e7c4cf9705e6df003e600faa6404f8e435dcc311c577a2add5fbf1bf402fb514f81a069bd0311855e1f592ba45a75a7d09a90e066f82420fefb6914e163f52bd674a85a76fce47ddf93087934cc5bc5fd5a3fd57f9f11d1e13b6e64896b9f119ae5d8a2e1494a7b8fe01b77943c6f4d27e9bd465488bb3ebf1875ac84b0e7246e3c9e6dd6f8f4129e6e54c8be90ee0c3529ec68ea2d13abbdf3840fcadf4c29ebaa16eb424b14aa7ecc1e585ac5a716bcc693f0939d1203ef1491bd916a0d15a8fff51e2fc19cf05d5b1311c40ff0d894b4d123a0bb5eb91793d3ca2db649680f43e9d2c6ca09af6f0824dc37624f8c1003f24bad664bac04002feec5b4ba7e55e030f065fd777416223d28ea9dfdf1f5bd8d16b9620c728b1d31d7f4b396e9353958a5fe43b498dac606d8b37e2368cc5a682a8d3b777e3f337d79a604341d40d970aad95e422ddbc233f816d04af25dce0763c526d9616f13957c4f9cb00525ba98fdfb52aae7f4f259c93fd442e28fc0174db0775321d05fce7b6d25e07a8639a4e00238a37ac65a0e2a575bb814431ff57afb43521799375fb4f01e2d4d1ed31f3dde75fb9721d51634dc3eeb6f18eacdc7df671c3577593d97dc2e4933ad5efa9fd04d25f459cc085cac27522f322cd3883b7404e13730e9d9d0cbd5d82f9d07dee42235d4b6080c7e1eb1801c696d6c160f032ce1cd92be92066ae9f5043d82c96df3548a9a6f57742efea6014efd793d74dfba441057fcdd7d9eac68aec2af2194705da3261b496a4707f2364ba83b476e0104782af7aae374cad25d4a6034c693ba83a41ba53d24b4c435ada59143377bbeb09eeedc979d213cde7917eabf4f50337be43830112dc681a60bd4fd17a863eb38d65ecab03001a98c002a61069db8abed5f54f6106a999e769a824fdac0d8abb38d9abbf00a73647953db56484a53360f63c88e64b4d5ddf485447c17ddcdb1aa301abdf6cde751dcdb8e76d11c609236b40b2562173c44682c49d108913292cc4f865a5e48245cd4a48d09d582ef81d41dbb0849403b1fbe93869354d1b37af5f080013d2235e1e1f53b6238d06af23a6b0ded65e3558362423b46f4e82cf33a477ddf506b0caeaa47bc729be54b25643a8eb42aa1c519d638214d9ab0c628852386a480ec28163229149aa0c4366e26749efd15d5e9412b92eb3ed83b4567c28d504f0adc1f833e1bbd590e6617d7db0afe51248cb3018d249842e0375d607fabdaf391728aa5e5da746750c0576731b4bc7736ac98b19ca20a22e170a03c0262b9e3b8bc6ca5d468b1d2ba05545bf0ab6bd20b1084561bd1f87cee18ae125e89baa6423cc32e338442c772f49c1ddb4468b82c9490b653467c7b84122ac8874d4999cfa84323c9d2fa14ff092e93725515664be165747e7a30c592d966f198f3a5b51d191d82aeb317f43fe6fbcebb573cae6efda4f265aee2a9a9c0b97b459a668ffb1dfc580586d313eae2d3f2c54702ad04a7f80946cf74cc5d99cbdcbf06f8777164f535e482911498719455acd0cce5226239500c37715bc23977bc0afd328a8b38d731bc8fd5236e6ed66d34dd0ba1253fa83e6010e2ea4353f483ab2add5d3153b04f784127f5cc0e24487ddb840e1ec645a908fa72fafb8ebe66c8114bac99bd04b68b8c02b06b1c7b54efebc2cf3b0cf7316e9b71f3a0dfe01493d58c21ad89f34b4d3960f612ca059dc0bc720059a335a644e8e66c44a8d1b489dde92b64401abf2820e2ad20dd4437e715d9be3252ee919e2ba99242214ce8fd9b06e5c61875c8605d49cffa8424b8fce5dd7f0ba4a731ca5545c69cec1cce2260c0f64a100496fa6c4c050668254fefdc4c170510b5e1585f45febf584c67acea7d3a08a082c51c3c036bde6527237615ac3a3f6923d759d0557d97b2a495bd513cb50f2b14bf77f8db2abda3d0b64be16c821c9e7284f7a9447d38dfe555d085c9c5dcd9f6c78cef207e4e25eaf4500cdadb01c35433ed865c1b3e957bcd726eb53631e558fc8a51bd95f86b7efc22a4b98c1baf881e223006cf60cd4d25b72fc8e64d3a9a537c444d282e73b898a6f2b55c12f0936fd9bb7d7586b205280968769e15e9323957bbe9e9f4337086b8d5f3e24a4981e42ff48b799a519482be8b39587146e36d99f5f6c7ef9373cadfcf60470394cb3f9b76cd0e6afd3a1a47ecf5ceb546fa3d4b3a51a3ab65a4de849995296b39130702921cdf4bb4473a3bf5e8e8eb1c3ef49568927865ee3c03f187869a7261eb7c49cbd5017f65890bca989f9647b866ef07521b227245a11f90ea33794e9fffec6c367ad9f67b5f089cae743c034f890a11c0267c713258bd24a586c42b8b9843a6fb88573062e8ce5757ed726eb860268977ec61c28d6af22f23ac034b335b9a98467f50ec7b330353d2eb4d7ad7ba8c331266ac295935b63ec491f90579c88f9cbd2ffcb5b511e952d0a181d5b606258d68f394140a0d9562e05e0c0344c42cf8f81715665018268f2078258ff2eef04ab647927c86bd5d61f694d758c2bb63ba41791daa9231c0a01c729ab8bbf8320d0f4e1f796e7e659cbee910170dd1d57bbca592476cea1d9b729341edb63acf9c3ca9fb55c249ff8e7290053b19e6c9748d8117bf8a9b501d50b02ec79da20be569c97cd4562654e7fc232a6ca10b25bf6474b10f872c7463e3b4a2d4a8ac73d8f6ec0e6f2a6d920ca912a735d7cf3558877dc50f72cdc59a9e7c9a5fa3ab641a19cdf369b44a55359d107c183f749493204a5fe926fa90eee1125bfdeb84bfe559857dd9b12c4134dfcb801261bf561a11ac7756a0eef5c38936776f9f76ce282ebbb01d761bff1f1ed6c119a1c457e65de189005ff8980313466a613650535c9c61f2f1dd7a2413b76edc592a52cb631e707b9a064b95f12b4422419d9f4728d16727fc1940d5c058f6621430ec41359bed9b8e7701a6ab9c1d8d07ac3abcc2f54b84d401b857dd550d7a1fa3f6f28afe390c5003a25f55f35cde9687376b394cc5aa6d74e37a4b69eaa91d12c346945f26e988a772c300c617475054300ac785f092fdeb77b3263ea92f44e577a461ece5186cac4f7845ad156bbe5c1a9319c0571b6caa79dc6ae29f2b0f85e24d60584430686b5e45d1e56222b188e8343b4c94a2aedad8830ce2312c02e9a86394a4805f315a14f6dc8a3b5f65fa20c475fa53694c4406f116f5f9dd36551a46576bceef8b4a821351175c9be949e160e3ca35e57576df67eee75feb0a3a364740b5930b2dd180118f6bd7d15230f01e0bc4f980103a3ed9d3992ceb6424e50d232ac2015dddacdc1b2918c075f9a5d3e44c64180085cfc35d30293902a485a6d46afaaa1f5789eb3cc81dfac149bfe9a622ba2bb89cf9835efab31e3de76b89e2ffb2bdc89f52cb1d4d0bb3cf60f69378692808e5860d46d8db6bfb3b226319ba64559c48672d830e5b0a0174b2440afac54bfca2d1f4ad49cd77f71763e6332259eb64af3c8b8760f631cef5bff7f07439e87b5a21f7d4580c1f124e9ba0c2a7ae51f6d0de1a740d0e0cba193319286542481475e54bca4493c1bb6a76a05f992e32c4a1b11272dbda8c63e18862ee0c3701e60526a0802e3fd5646dc22a5f7a03a52c95d95f0caaa421715a0c64f41c1908100eb428bb8c3d474b25b048d2ecaf7c854ef8f5b5b433032698e909c199a53e1eadacc2e7d37d87401d2fbf90557b4164a460d8f89cfbc5d974d36e4084a0167cd9c11e64489c1393597c11b9fb04fc23776555807edf48158073c9f965b7c39d0027d1156383b6ea05a38b0a2b1bb3a1aa77c977d13a55081809636c5d81662196aae42d2efd2ac9222dde8f00f4471f93dc4d4518f34e704db7b542a1fc3a6fcfa3f5d4503807f25862925ef90f063c91c57a5aa9ab4c955135a279ee1915f8a9e7362b72c09e903509764b0d63efe69f6f757f75378cd9824d001f66ee9b973281519aa931065f369b79ee2502e507029f8db4e098d3bcca2c5ed13befce42aa9f1d159df0daa96761f511dbe5446aba9568572bf3d68c284d5deb7afb2ab49b7d1278eae63b7623e3d1656bbb821de6e3c7a0312c28dc4e4442394871bb107152154f449474215e3df1e4232d58b0c439ec542cb0a8777499652341b262463d467fbe81a8b366437e339a2620e6b5cc25ce21475c056e5cca8147d6bf1c131e0a24cf501dfa393760437f5d170b0d96da5a77afe4dbacf5dc0707b719b48ff32c5ee014cd219c1fe9c9e579aec1b7294d856820929826c16303987e82191c1f4002d6484f2349424b8ce75d507e8b3b4e93866202b8f9451f25417e066bcdb2d71430037fe4963fdfdfd54e85ced3d84d115f77dd70b827bf3445c2e16b442e04097d03e7822970aabea5372591cc197842fb7de503c4c0c47992b20f3945754d22e46ff6f70c6d3bd8741f068ef3f2de2c272449b870ef5b5bdd5a2e772023f791678717ae3630f36cac35edc9636521e527f626dcd756fce48b8f59fe33c51e9e3cca56c9c944dd9d2f99d6ca34b023af0c7a82b5b00c4fb28836072417ddb6ea0f6e0573b2195e6e329687768c3aa7bd3ea269672f6ef37cfd0df114053aefbba0bd16348a5b969de76a490083f087a3e79768c9c538f858fe5bc9c6e21fc27c138cbb49390d59c9ed3564f58859fcd49b0abe8b00f70c8f3222d779b59e0e03bef3eba6fd18261bfad7a7bf460f1e7bd5480eb542f50889ee5919c8297a18193b24ab2dad4d48f64c1a2b1f8ee3588aab7ca88bd89d36142c1e54e0dd6b53be13fd9c75c82e641da54671e23a2979d4858c5be4b51869fc9f6e972f1e3b13f42c8ae56e242ad232f5b81d55ce509e9db119fb87fe66e2eacd7f4daba2ad2521eec4bc457344e28fecdfd6e6f5d95ca3566be31c96d1c72b578033d25eef4c7ebb10501a0d62a34774e947d1012135a5562559100c9badd28ab3ac214be702090cd941557d0d062a2d04ebef9457b31e5d3dcc6ffda259ec680248a487bb224622b40cb4e927241311807cd317cb10cc1caf6f7fe727c8a94f08025d166673411b6bafb96664eb5f36a34c4a8507a71478b60d3ae17cb868de354620570445a59e34b7012c21f014aadb40122d1964e40eacb63c695fbdca7d0c98543867d3884b8421fa964993b8bd1666e93b4a3e5fb53d133109d109e0e7b8ffb364b4f7c43aae5c2f7972635fa7ac55464dacc0266e34e7a084f31694bd5d4784d9ea0a7ede52261eb315b87f763fb9c328d7aad9d405e0dabacb24c103548002c38f5d32c4fba16f9b106db6adab955c9127cf044fda3c59cc99d7edf2679784f49d3c45d8e847d24627ee173a07b5efe1beefa99b5c756faec1d7772f9dcee7a1e425c2a53b11951b4d3ee6117459551deae969a1ebae7df2b54c83f85ce82051b6d7ecc5a64fb62a0508dfaf1f0ca4c3e39a995398dffc2a78b4657c047f6808bd0fce6655bf3f4d44668f0da51f5a6f6831178a10ea0f582f0a8343cc569f9de08c60afa58a2cb41c82d7d49db4d180ab0255035cee4732f6499b155b90a36d7262f1c98d7b43a5100b820fb150ce70c06f706e7df1cc04ab9f8aae2eb081a1635e45cec5f800c33d9d85a607e84294759a610e3ab3f3924d1f57d42ce81fb01a10ee43f6f6b9e43cec887bd54635110d07f76fec9e6e1450d3169c61a8275fb2104c7fbf66acf03e5e9df4698807ecba4394e46d095cf7f54ee4670beed3ae41355281111c1d482ffe2ff1e8377020ac80dd1e26cef8617f2cf326f97cd0215c5d592033196da70c51cf8b0447a888ee40441aa7ba354e188f15bffc56dd60c847e29ba3c0bbc20487cc8c37990ada2c465a7ab18eb113c05943b222cd4ce6ee02f988ce5b15161795d9e3ae2e1541c610785aa6df2a2506ba598b45bbe6c7dd5420a80e12ce19214f24cd4201ff1e43178fcd70fb8fcb31c0a2b38cffab0844e99a1165f3ab6b55a077ac6b6735ab8b023b4136daf7312ae9829d5fd4e071e59e3759addb89955c2c00a4d36dcd3f4ce86e8bb8c027922d2a231b62683b77c5d52b1fc1caeba64f2b6189349e6bf895be6a08b15821f287ba4947d8d5a6d5b3638c9915f4a3af500d18697a6911c3ae06b80b9e82f3e8980afa68fa8ee3cbeb3886b47d7eb03750f2ee2cba54e1a2aa7f9bffe1d792423c6ab74be365f646d23585510db08cb412a7ab52a121980104e2f4ddf54cc142d4e2db03fbcee9b8e9ed139b5ad6f9c30708e76fee5746bc18cb1c59e855ad9bba480abbd4f7bfd350ace51f865272ab5a57078f9a1231e2196d8728acf7263a7e5dc3fd4f06e6ae5da77e8c09b4f5b634ea901a629dd9ce7c06468085516bc44dfd538c09088ab68df77a234066826b30b4e49c252fe9a85ebab771ad1f90649828ed090154b612a5bba47d18c9e2f765525e43227622834220fa2ae3de82c4289143e97420b9dc01e01d539d81ea026b4ae1d8c530bf529ecaea1fcb9090c0931ffa74ea8dfcf68db6ec53a0033341364b6010e2aad0d074c9697b331ad02a562f8dad0603b1c32cd34784676b9ee45fbdd3bdfbbe1d4eeaccf8f20575904fe320934cf6443a13d6c744038f7c3e413caf90f5871a26e8f2fe6b4066e958b1b527911015825dc82bfa1be72abde3742d210d91b3f774c2e8f65b2ac3f749e88d1614655dc1ea4cbe78c681f8cff2566d46a053d0624c387fcf2b2fcc1864ecf018099db6615fb6b06ea244df6f400a0ad81270ae09914295bdb725c4f04c05fc9e09e399273cb7fe1bc14db319916234252e19fce92d14c5227dcbf082238055c4d577755383b1802269e8a0e73e885419b4d65d3794b9b4ccca63abbb72dfe61a8b39c315e0420c51072d1563e44052a161d0f49de85a1bb9f4c9e880bca19d4f74ebce9d6368b97e32c68b7174294d715aaeebb981a2f06a0cff352a7ddcb720eb8010b291fbde2283bbc5b9909c69f05ed6522c0324be84d754b5e55bfcc8754cc8c7136ee7f8e38fd5ac30086c41a052fd0cc43991d6475e53a3502b18c123c8f8cf631e60902c40476d8e1bf6506175f8b2babe84eb34f972a570ab6eac27d28ddbd0ecc67af3dede270762b60de7a629896cea3eca4920e6b80b68912c9a7d429cc0b82294672d24a77df7ed454497ac392fe270eab005a0fe42dbf86d291791b7bc9fcc9f3d53d5e94c4e155af3399953f4c9cfbf3dcc49ddc2fe97725848f15acbde41589b4413480a8bce411c49b60b836c1e2b1021cd52f2a288e297d6816227babe307d9e3f006628516329e81b1e092ff1992eb855abbf421049bfe6822a4f92d42b887a28da3f818a4b588cb07a965f9c39ae9454549ba4439f942cb4479c0d4664a5a6206451c1c0417e11c3d7c0502c673a1cd3f6a550ce5ae22ce932107108f8cf9495f7bb12ef1f9c38e8baad8ce7e9a49736df0cacb4254be3b702990ee240511f0194ad84584577a5150fe027f1672bcaa4c8232792a106ee8f83fae7b847ab308a7d124a3a671cc8506d769c573b9c5c35a665d3501a293d29299457a501216c7c1ee85ea2712ce7ad9793c314092db38299c83c47be5d6d673bf22a83b029eda93dca734403cf54b5c5e3c2d5ad4fcc7078b567a4722e203d8e6244f42dff6313b97d605b69fba44cbeccc8b63f9d10171e0399e776cff97f091c98bd94dd13d2d3f0bb1c292160417128ad1a6e8258e467f552d3c77f76fa0dc44900b09a905312dd78050568a9cd491191eb7b523ee2f8039ff6bdcf216d72242e758fc85c9630a349d051ca3399f38cf71039018f8fd7c5263ac2742a8347f9e454b87354eda851a10e6f76083e4bb291ec37d2b32882f778afb861c3ecd8b4bfd366f6c9537f408e5643db5b97130c697065f36a51497415c150cb8d65810224816d2f691a3b159b480750ce4a211f4707dcd240891cea78cf93dffbeac4dd7dbfc2da7260c8eb670664f8be1c96231dea61fe8154ff87b8da251b4cdfc11d611a08a63a134285c67d20519e5c31b61351d36ff788b137d4211c34e8da1921c94875b87d81ebd9f3c96f860b6c24f4d4f50397d71f10ff18ea6dfb3cd517298f8e650c3684c48eb2210fd22596df8eee3872fd2c60aca1172cf911eead38c81e4679ac5b6a68a26f8a6685200e795c92ddc3040baaffa947b7ccbd7a3f4cacf34f4dd9c945b414640f22728b0e103ef5487a7dd3a334b98928d9131c31979a78036c3af6af91040af74fdc13225b2325ad27579bc2e1688daba8204d698a3ad4a3612d156b9716e31412d85c1f711ff0aaaedbc0e2c8b1188d8c06071397d39ae1967f0565004128a22c5efb0733e9da701cf541714dbb9d9b8952fdae4816eec8d442258934c6123929e0b1f881f75a0d939a3c7ce8572ab2d7cd70d6f30a0499bc7304022bde21a102a601499984ac46c8769ea247d1282b28b604b06843a3af794cf9ce873a398c6a4010cf6876c5aee084faee11fd759ab5f1eefb93e01e1e9d69a8c40ebaec7236ff5afde5598dd775831f35b5a9db2d2520256958720c2f8f25e906fdcc029e0e707e440955e3de4bdf82e0c7b087d7e4e3eefb6ce74f522f1d9b60cbcde3e040e3780c26337dac89072e66d52f8339256d346c6a660ed67f758aea9bc2623805935557d1f745c9c0cd8c79c55354d49b167c1d8529d9a7b22b40f5b7ab6d0920325f167630791454bc91bb66d19b57421ff17d73acc4ebfc28f3690531223868fed4343dd40d7baf3b5cb06a5385901bc8d6ed07055397f940d8334882cfec3ae106139bb6178442f922d8c0fbae0bd1fd4fc723fe2ee3f466d8217a024a771f34f534bb54107d6e08c679915aae36b9e672f37a2aa33155858780257e17c12d1aedc58bda10d819311b1c832a795fd0a47fe881811bb36c5e2f5a92a4e7a61a112a86e5494aa4cb145de78d87413683e200b9e040d811a2201bb188a46ada311c2dbb68ec2f090c59db4fe81004fb623ceda8ff795ee7c917c603bf2117fe0506851d5cf6e4041866c5e5318b808977fd7960d53053d3af30a2ab824366c3584d995960fb1616b52f9c2d6f6bddfa01b7efa7a51707d9522dcf2aa64d971f583f1f615760bbe173a60815ca50425d47605842b7b91e0a38eef80ad81701966a04a0b96dc9cf6b5ac56471c3bc547428d5ce346bbb2257f0f0ad6cdd1b996017795058ee8e08961b2b22249c2a0da1d05e042e1e608a0c85bad9dc2dfac61c21efa10272714b38c2045306a533aa30bca9114c9b6270f857d669e1e720943e3bc54e9404c07c0c4c0b65dea40a09ea3680258b5d2d502c6ea27c650a42960e20673f6b6ad7a2f40f39e7c12e20599e4313f909e002f940f4cbe10ad7f7328c3994c701b8896aba26f8e5ad37b517050a715cee4306fbd901489aeac7a891693b9ebeffb7251393c7f847540dd32c6e629aa93fa304ab80e2a2d2ff4869501709e8a5fa7d0f980c1aaf69af8d6d761438a78de05674f0012feee62e3990c83157fabec9e43e5e135f70bf9264ce8095a2a1aeaaa6eb27703a8590b0f6328dd800cbcb8759de3a95d071b13eb234b2fe8dbef8d10bf1fadc8b1c81e06a3a369b0e9115b9708b20fb9fe7d5b8525aefc6e5e69aa30aa55d33a94654df60a24ae50c0b979524fd5b9a67f8e5db8aedd1bbfe9cabe166cf75e23bc1cd89aa547a581213a5d3e15464e8fd345224da62627c9f4c5ba665571318be9c5df29543256e2c249c5c8becec22083103907f31dd3bcf6063a6fdd960bbf48cd8b43535a2d226461823c214bdcf570ed7a0d99df2d36153be90860b5613dc5a6c634fe797ad568b8930ae747bef7abdddfe55682789d5453e3abc44633cc62fc2ca7b1edb5620b1b2a9dc48c970f665792edd65dd3eee32bbf8b8d192525ea510680ae33dcb5f40ed5fe827891cc60e1f9beb15003d732f68b9d68d691f6d148f445c05dff05e895ef9005e7d3dfdadf3e8a18bea4eff596ef2abda906f2738ba9445087e2120138827876f33194894954137b383635e59e846b794f6b3613e58f192c4a1ab18a6c26ad2862621af9b614782c5e166d192d4efebc67ba7b6e1ce5c8f2ffc9b49f15c2187c5d19e712f2ab7779776b8bfc241edcad220e54860e7735817805c3430fd125d1707c0d4e10019fd7be500ea8855a260cf709083ce597b50c577b871be0123236233df8f5e83706879a8f20f6b33e7eb34540d6b724f502c2d8eef24a86b02922d930c88a167e36defb9d3aa5f4e64250da79ec532041cb09cb46e2e901571290923f38725a7decdc64ec26b7684d609702d3546c1f316f76b959401a60218575293cdaf948d80d0e1f2c56fec66a33f302b38ccef429b32ac52681cedd0ac611c93f6a8eb9678aff8e05bff3abbb630354c075c4abe348140c1152fd341672c5b8d2382205b66dbc39ecb4368d1b1f674964ca90f876eea5b60fe3464b1969f0132d56774e35d4f777edce0ee2d6949b68a3c204d0e34b76e3d6548041c17ba9601c7fa9fb943b4715dfcd2966573bfe33dc46d8bacfcf73c19af4b88da97f29144d6bd83663f84b765061b43576cc58b4d2bf000258508f9a088571e923290682c46d4b9b1b5234d268d3d1af0aa61033797e4beeca4aac67ec270336c7265345a232c157d4c43414ec8f22e97c87ced5ddf8a84cce82a5d7d4742933530437c324cea70335404a4175801f9e723f893154c626399283c7614c25bb16d75a0d1d2d1229351d2626c755db160de0d0c5b155c557edc98d89677492a711b76740c59dc1f65f22b830e2e13ca305bbb75fbc9e08644d719e82c222e01c37b9d94bc3a030470a103b8c2f034a12b12e44c2b5eac9b2f58448859adfb58dbc926517c6d2bd0a742aa8d1470f67ccf33334b560a3e25d7ba19d022dd5c3576ea6e30e769012b07614a0280c97c2d3944b320007058a0c47eef24e3b9713e4226b042fab872756b9eb8b3b4b27571ac05ad693e490160be24f77ee79e4e12a0dadf4fe3b60194496ace2b79a0b1a63d1258b3fd345c24cf2a4d383c95694ec58df7603d2bc3df728f59d8239a08043aebdaa118fa70b36fafdbf8ee0c74592af0c42de3377822c524b253cf042dcbc6c0634bfebda3562dddc798c7c23c40cd35d07a0aacd3db81d428069beff608fca0da65497263ccf93f4cb1c6cc50523ecae891e8c13f5c6dceb351e0cf2e9d1507cfb9e6af2277f5432cd0654c8029c0baf7135e65f49a98ec4d503155ded1ee962b9a166d6586ccc9e34666574f4cfedeb733f6ebb82645561babb8c031fd8348e52e1aebb7d32d7886d20848063f8ace7108c5933d9e0304c1d99964619fb230e3304d755f8c9405e5857d741417e4901f640db6cecce96cf37a9563efa6f712941ecdd78007048b0968a486651e9ff5880473cfdaa7a901261ffe1fe5b078b8f7dbfc311d7972e22e686868d5286763aa8388caa2ac92acab984ef9205bede07b31f475e0fd00032afab2ad18039c833ca37ef5e6fd9ec1bb8b1885fe01c12aa2a0c21fdf66991b65089e9e6b1d9f7ecbe88ff194c8c2361087891d464523846c0a0dfd15dd4b9b453b2b477073767e751f9e635eb66cffbd33009751b53c6806deec535556152d9e90a69b6221a51e946fea57d0e13f58bf696afbb3292d18b4985af7d03414f5aa0088210c5cfaf710bed9da279262d5893d116df81af1da9006e802ce68f4e863853dff5c42ba2f8d06c468f21e2e77fa990df1bd901c40917b60ed75c295f56b509eb6032988e62c2037951ac81189f4eb9815f6ed375ca51c097ca885ed98d0e8e245595285070209ecbea03b20f243fab4b8d2f92b9598861187f2112d5ebe38756b6725f36ba9fe4feeff9d60b2f0bde8785c1cb37935c5aca3654b59acee0f67adf852c3c789bda08f6e86df2a9406eafaf325fd8c0361081f221478056f2d5a28f82aa933a4fe6ff8951dcbf7dbdfc802935e3930735a8c78ab041370a3462a14562e197124567289a554c9410fd1679b03a016b98cab36df7bdf2b29f76cf11491383a06df4e2e2d6d5e7c8cb61551d7c5ef0022e6ff4be0c5d09c019e3dd911ec25611d42a6b1a4846f876b80f100d1a211147bdc751ad941ee8e0f819b2d134b2609eb3d6bcf9e55cd658f8772605e7cf32ea37b1e12c41a033e88c033a9a9c0212984d54bf0b527c3641d5990561b73f4f0921c2ef6c9764c97710d0f23037254b1f46495a76c2700ed5871cc111a1fcf7dc17f95dc3ddacd15529ba46d27b6728c3ce992c1006ba51b78bf58e213b6ab5df070697def238d7086bef156d56c4d07db448b2e2bec37d2dbedc5eae567b0b437d39f7553a9996692c906d6dd4160da58bbf77088b0ed037bfccd234b95284e3242b8ec5a956f48d9032fbc2d8d2ff0eb1d252b39a4d331bf1d7c750ce777c8e7c2ad2640d78f1b06130e463ba705ed7840227120f84eeb8c6545d8d0c1736f117a5d8c3c200f1980046868a7423d42c20d7a5b40975c0a57101886be432a2d10edda496d24bca21a752296c804158dd4737b5236e4e56e3afa61035acf975ca620450fe0891ed8ce1ee0cbe3081c99ad75a45ec0fdc5113dd34eb5a075c2e69b962b4d1bf60a71d25b4856ff8e2205274ce0f0d454c7739c96dee410df66caa02b6d30c94e7be1bebb0a7e385d339c7c61972e077a3a7ba982c990ed47f6ed7011e6832ed4e825f619289da1a91aede66216d9e306a221c1b5bd15fa264331f368cbead6ba320bd9521039ab372966d5a7aa761a99359f814a050a383f731e94eb8c4c0a2f65e9ae223d4b24544d9c86f2ef899aed76c59bb78fcfa87d160fe9acc023347e3ffdee2deb31a258213141d8e1a2cc209d4b974edb8af8d2c226ea645f7cc95532071f240f3f2b4f05fcd1d25a90f3bf4c11f5e54e1f643bb5076d6e37bc696f44653ee64c259d4072ebf910ac4d52542d8256b451a1a914d389472cb4462195ac8dbd6933b454d23229ac309a65d0d67abf3141cad6cfa378a468db6d1863eb5483cd10e60d88114ec6c41b9d1cc0cede8d9268b3163c64e47455c888edbd3d9f7b947085609c3045207f463bac3f99a5703bf0cf592ebc22f935818dcbd6bea3d9f7a5a40a82b4031c27f7f0823ed016230a316642898275f5f66b9b58fbbf862798c156f50ce06e8e2c892e600d983b5f8db9459b3e7d079dd139918f57008b89317104f4ee8929189bc69d0a122b6c0af815917aa9c14df8bf2ba36f4d9c40d3e3aadd3ff69017f712dcf53ccb31c35235e98801f90ae74cbda0f950f7bfdfd75c4a0f1c4678032fceb4a928125393da23fe520103d2b1e113d56710b814fa9097bd4c0f9a3724ea146d5a9438c2e03bcdc4b5c4834b49e889ca13f95bb10dc2e6965c8e5f053a7fb99760a987d2156e59d17fc0ce10d7a01e34a605fda011511d97addbfa02124b5469d1c0e435c05b2c1e7dc711a15702941d0b2f61b5d7403839023394fb2e666527a47108cb6fd43251b4915eb7c36a08f5d748ecd99ab86fd6d7c075545b4c00c8175054af8d6e66fc2175ebc27764f63b9e6dc99f440b2abb29be75080af255568272216d2b236d9b3418d04797f1e2b8628f4392e9f74f033503d7935bac4115e344d5919cda9241063b16a5b903f6cade7e5001b922c8b0bc41db21243acb941cbf9a49583682018a33a3131a2791457659a38ac55d282563a667c56db009cac29ca84e4fc99320299ac43ca540dd5555628b360328f794cf59a12608f8faf01ea5698201300685c9ca810ebfa006af58db348c1d18d6b939f044781f682f25cf9822bc681c33dfd58b6d52341e418e2b619f050ad39be6dfc574004698452976200c17ec8aa960791e6ef16d91a2ea66346c4639fb90515edc09a559e811383d4d91c09ee33b9a82b1299ada14bf37368aa02f6e9c39b90730578240a902562e48c8a1a50f59181d0ead9dd5e46aaf19d84842c822412b91b081723031d4d092817668add00285463766633865dca4aeed0732b27fdf99d2e596934eae2e06ac01183db9ed1cc5a9f9c6d3fcc51a8cffb760ae34f0c1e06167a4646c650a2485b0a4693db97cc84ab62f7df7979b29e3a2bb6eaa2e85b70abaa06341663e64c116655729d501b38ab6f6f2ebbcfe8263b73dc163f21cc641ee149b21c0076686cc04f15092ac683a14dcd0d9764ef8f8f4ff13c27021ad7d5ec9f5478f4db55a64d426c1c97e1fe29a4dd1d101d17279d8441f4568be4b6b34d4063539a3a010633adde4cea0f1a5ae632c1df685ed1659e97e069f79c05007d7b72fd674ab749636650784c4280e03303420c4977461fb7bf34b36939fb2e89022607c66595a03244590df9565b610eef8510fdb4049a5ddd6ae6d784339b5e36f729dba69c785f01408f1c0a76740239365107efb563c084464c487c7f1cef65f6192aa603acc551f9760c5acd9427d9021d899f75228639a0d3245d06348b0314bfd663f1b11b8edb7f7c9ced556da0eca0432a7ec2be78c31cb705e9279fb4743ab4e1e94a1442aaf3326bd5a37efefc21e83288c63ec7d458a1153585b03cf420429730e573d62439f8fed065c191291e341e4a3ceedf9d9f36f8b21e5f449160ecbfe5b6e91841aa13fae5ea7f53a89206c147f6cd9181d21b708bacfcd3372ad75a056e15c0a3c14ae1da75bc5d7cee910cff5b9e4584e6becf4dd84598803ca078f1447e7fa3964e224e254b8199eb338e9c72d3d80e5ea1771c3711a7f0164592733bf49ec5df7cfa171fd5d37cd8d52dfc8435abc15181bed074307d7166c40d0487f005f3e5c881497b2e4671a023e4500a933df417aa9aa828628735c277a910e1661a9dd8138a5da3a678d38a894b54505fc0b6d829562329bf46908a0879daf5e97a576bf85a73869c689d7c28f86ce8570294b823b7080c8b0780c12a9715082314e439835fbc208efd9d819d76dcbb42c19dfe43abb552064865985cbe9f3f9bd874c9365d0f8a373bc41cd56b0ea3865ffcf36a1a02f6da79836e5858be96a808898cbae04c4b1706320e483a7cb60adf5bdfb3b757c8f1504024bc0012c9c59422842044be6e3d4395569d19cdc34dbf83d05eb6c56db882615570e4bae45489bd5ee40289f00a37f3afb97d1d216cab3cb51edbb2f1a15dc10ecedde0902a6489bd6802fd96f15d1d1834c4d01bc7377a7026130b0cd96386768255907afc5c40bb8a34df81d8118af121e274d1e9d706b104d987c50b74865359ddb0d533e1333d03f321e44379bb3b1c904d4f78f8bf5a2d75be2e29fc6261c3642da22b6df0e8afc74fa1efe0adf3e4185728b0216e374bea65a198e3150db21e2014c8611249583a863ef65e31b9b7d9f785b6f44ada8cc2d619c5cef26f40e165554f35b2224fa24e686c84f3413dfb591f91a08f60d4d289a69886406dae6c9ce68011dd0c205b55dc2bce47d559252cfc2b3cf4e326792cc3d86cc63a346772d88d66b5e03bdf7bdcb684ee54213f527d122805522fc0d74517ab551e5303667d72613d2699c40f7fb807e14d635435defadff546b896fff8b8ee70d9a2eb4fe5ff2f2e5e7a55c2331f1218e6395cc83528be988aea7c49f55bc5566c24d1c710bd5004dc90f9f24106391ec9b64856d9096f2e996ac791be3827a0646e8c9dff6d695463efc2471cc24fd21340bb637e0ac4e173b984cb7de41c52de3ed23ed69da0c2495f42560f4624e5bcb5db63aca84e244586b004274dfec1ecc4c972faa692d44680ef9015f32c4b35cc3219c4af3a6729bd3e91e5eac821c747f0260bf3c03efa6a55b905810b95b3a36bfc5b8121269032ea260f00b3c2c121407d3185d90ea7a7759b6ebda60c719967ffff5d900a13a863f8c17d9826455e72c378181db27bf0f08ffbab9cd8422e9afbf80c34a916c094ed4d7be465dc061beacead7ed3adbc25a5c8382226e11768249a80b2420ad6a8c8685c4364d683b50c8c7940142041c19a7f51919af9978330805b2a092344b20f4b53936190f995989b0deec158e87bf8b4abd52b1fe0e7b514ec5ee62f26fb7c073146c3ec103eabd1adbfbcdc7da7defdfc30ada1ca63f58c9a5556703c0a46cc32d7d5bbfd93527cef222f68698815e0a27a66f42b9cdc86cd2fe0a4959741ce18b9c0c63371ee757a34b1d8e17366a430c51a7bd5a1253ef8b0e8de5e8e1f16d68c2252ae5c1505e1d853a6cf5a7b597a85f0c2506be4c6739301f84da3cea261f4f20892b6634fbaf66639d5bdbb84683b7ac8b88f5df235004bc0eb99ab8d873b51d5ed696041cba034760367091118921c84b85f55ab8870d800dc75fed3b3aed620567dc70829e81df0b8bb276ae26fcd1c8dc8dc1600ce6a8d6fefecd0b86eb1c82f98f494f60b2b0d5225519755aa7fb270877abd3eb626501a172eb817c053e7a23131b7c0f6e3f34a25aed5a2f8a6862769fafba7ffeea1f64dfda534eb7551301859d2444fd49f11d61a60351d22796ef7c2e423fd4abd8a65bd084d06e1e65ec7df852fd655f6d37e51abb5b1924249ea3008781d015455981ede49a167282e2d404dd314f725626b64a26270aa8920940f250a0e30478e1417a6f79523e25ff62f29221eb06754c26f56fc5be3d1ebdb1a7c5bc32e586674633646ca32e73abc4caa9f6da5084c706392da01a166709b42cb6766544a89c745d76ddc52794ca1180e59ca89e5a7cbc280a642f6cdfe3a650ae1d52096f9746521706c271c6c9b638170f9e592cc10d21e82b994179c35e2ee696d99ac6806555efec6855cfd1333700c63bb5c5213b8948f87dd20768d13e0762f8e832da8a338c6cab6accbe2badf43b31c7bcc4186a08f800e8cd9f74361477026b9a1f72f49d174b381dd724e0bb033b7a41dbf48eb70592a06a6cccdbfc57fc56f02b1eae25fc902533cda1ab6878314959827d3e64cbf04aee75b75c5026f02fada564af8a92d81369fe6c41810e3d2c7ac8ac4cd23594edb154b5f12fa227430907ed040d5f7c5bd8824db03893abb957825173235e59f127b1954ccd2519d2b2d0bf6dee4f53511f60b583464c5d36fcaf25751a0a867e773b35790c7fb62ac32244f81189860a31a40e0c8609c3576a1b94538cbec02dcd09ea4326fe0687c636aadf3671a05c9833335fcbae3b8357d407d960ffae3097f58d9ecc9f9c0b4c4a9e24c97aaa532be6c79e50a90ee0cf8f8c9deb2467cdd63ea02ab1387c47665918c03911bc716a995ec292cc93e21e6482e05c9269619c0af2b6a266a46fdd2afa07bf9a2f6382c4af4914b533d86e9d8425aae81ecc5d65aa7395f08b8d57ffdf4a81314d6072717e58ad3cf280faa104e2160d2ad1f0c7a600c94d865be3b6c5d9e833a667be70bc3a493cf170cfa8f634332eb7680d084f0dad3a72d208562d4c5eec79147b3b6c2512279fe342cb378ce2af708bb0b8be8d6e6584e966e63dfd8cb8ab485d69207a7ed150373ce8333af1c07188c7f86f59e36ab7bff383354ab7b81563c8eaafb4be142b10d1d4ef61827d22d285c34f6cccb0d5e8841cf897182c530742388087e6af67d402c8fd6e8da292d66d501d4081e11577cbf08179fb139658cccf4b6f820d3234b7e6f87fcb8bd7284a7755382b27d9bf389d8dc9d9a2116f857e2c1272b6831f14f17f59b86ce08000931aea7328a4385a3b42b607079147986d7e37d0281eda8583a3e26c2a400526b37524fb6336f6976e066e888a11514b32dd16347dbfd4ed52e08535301977ba6e1520e7b70d7ea245b284197f904980167acd288b37de24802e1d5eea3e4bcabdf3a0a05b9494593761d05bf4612807abbe523029081c88931d00d0b403f3faad635c1ab2d35c00b8731ba409c76c29119db7d2cfb962ba29760aee67363a36636d1a66fe4582734d6cb341374c05dbcfebd0e83e1f7fb0490298f4c37bb3ed6ee96d0bd73e68091d4602c677d80bcbcaf986e2f34452eb6456a1f485bf952b06e4d207dd2348af3ddcd49a553204f54edf61479ed5b3fdd0d1e4c17bea895ee8072ba391a9d120e67a7315a43d3be175d89a54dba2c02a122e363f84ccad8c5271124e919afb3a85570dd1aa9d5d522f45645bc4e8da0a8bd0afa969cdccc2a1976251d0b7024cfa5d4a5ee5ea61a4c9a54d7170396471e39ce132428d9ee7fb90868164b5524fd8478b2b898f43641b7fc0f9dc0f6c858b8e5e38a7d4141f1bac0e11468242e94bcf0788f3be31abde514ab48c1734a31a66cea22e399149373cc26484907cd47a500132c233281fb7e467d3aa97cf731f1ab81c3e0c35548e11c383ad7fdeec7a10f2119b46560db58820888e2db6cb9b9a617f089722cd39763555f9497413854c62e8f1f137a07ff7b77d453977e5d725c6ecbf1679ac41cbb884efa23cb18ddd94a0fda000a93a7698da05a5da5afcf5c38c3e38e07c333d61e598f916a74d162de9d6f20fa2d9998ba13d8d69d847bee8bc741952750ad5d56948a71db6100ba0d37e595f1291f2dc31f87070a2e89887c4c8ce5d426a9d0102edd8fb21e566c08245c5061cdc145b51f636a47f7509d4a1bbe8185f14e293294d0923ccdf802f2363343a821f978356a569682bf468f238c827c1e063554dd338a22007268371d31ba75eef9803a697f2598a03ab49f1764662ba006ece9b99ad4933e7a56770dc2b280a65ea1b94e0b7efaaee98b6f96b35b5c7a7753df96225211e4e9c53621d159b304c8b88912710f0a44e34a84244e02b9197481d37f03659956a63f218dc533561fd5940cb2e9e6d2572b4e288df514f51193047ebfee186e3634c85608cc5481bf61f6a4af3e14b250e932bf65a628d66acbddbfc6dbefe768bba53e5f37c522b6380faf94a74b87df0470d38c6b5ca8aed9ca577813ba2804536d54ac56c3735298577f65aa85b85cacb8e009d12de687161059cd6b4a49b5c612c86a4b87d10316f4af8b30880edfbaafef39727c4835e5a33306474da2c085462931d963901652df12cff474f60fb027277a606c0c7ec09943d4fed76198bbfe089e253e527d042b8008df99f059c7545f3b46cf74448b60fd953d53ec21eac1e87c9b10233e4c7be8f9e9319ec178468c132e536a493ee97267162fda022545835dc711f29eac3e6528331a23a760af1c08528d9f75ea943a30347d5f0cb6e62b631cc324cd210b82e060bad8e8aa5cc17a89915b15a33a1d7c8648f4f2139d02c3b42c3317813ccf21c155c047dae0b48ec88de39365d34e525f69ba88aa4279530e23c255b405e95b55423059673dd10b09ba9b367dcc92d9b329be7b8f35f711977295a05e0b70bd728a762cf180582ea380b2c9ac06d61e44f46a490b75dd684f78e65071043573e46385f91b6f72139a5b953bcf46ea684ddf4a3065af1112be90667dd1e28ca181229f3f7d19c50bd3f8cfd2e0a74b78f8135d053bc3f4239722932816a52b23889abf94ac1c4f68a1a7c369cf3fd594d8d4f61ffeddf665f5a712ebecd58bf31088637dfebe4840d069fd3edc893b168ddaf414623f7de80d01606228027d1824aeab988d4eb7c52b6f8cf55b435124b64939565f946492b7aaa40def145df65a226f852aac26a9488bf7e56be3996c9fec190f5ea85c052618f16fb59f49983e4ff75209e519b1fe9250366aa0af2801c0cda983666b656bfee00dbb7b647b8961a814a95c4005b4f3ec3b1b222f7656a7fe3bcf895e25d84361ce9e77e59e40b88ac3041fa4b3cf7e9ebfd118bca4b20a4798eb4f829d3179e50d4d371dc379341b631172c82c21ae8fb330321421bfaddaa9bb30d21b35400424b308b44f9f9a90e1f54330d698140f0e1d2b9edfc66ffc0914666f05a5c9b4bc8caa5f942a9870a33279f10aacbd76a3770b8a51736a5e0175f1a7348fe8a1336cd29965ab8a6dadc16fe22a7cbf2f2da71cc366af7dca0740e43f6e983e55cf6331e3948d78a482716027c369390bfb4b58d8fc68c40b748e049f711979156f8534b060337bd839f9bd342222be43aac1aeb462130c0a95476652220e4bb3f978bfe0531a09f7a3b1187a58f2e9374a68fe7e767e299b6353412735ad92736347d873c6a90ee1ded48979f48b6f137c2982dc2f52aa4998c00a6c86bed39429a988c829cf7747db52c9dd5a6d962aa265bd8722637630d1372274e9b7dd018ae2b3fa9b8598824e9fe44fc5cb12e47f1023dc977b289f15f1719d45119884067f2fa048fd7b593b8a78beae9c59fe7a91337b6237fd82a4c06a84e76fcfb298a23ddf4c5190a1ab1a78e9bd3e2cc89d069481c6a24d37800690d4827c87e241ec18e9dacca3d8166eb2747ef31fd513343e5acead105020171190cf8cbbc5a8020cdad8f63fe41afd9a6c4ac0f968bf94572a9c97ca2a621f94471f79a127056384fd2f2e6bbbdca2a56f135c217a26d353c906838b58d7024e166a6bef765c4dafee5aadf677833569a77666c167002c1fa803c3bbe5970af75c93c41696ef571aeb0c70521bee114ef2dfaa31d9214c7526fb2c97bb8ad88bb3394074a321833855857f222ebdec86e25d7c6f7025881f436833c38d54148af5d018bae45946d1fb5d9acbcb45971e67822f65df810997490c424720aadafdcb7d81eb200b975fa70e1fd49e4c57843ce24917d98e54182c770e9f3176f8c75da35b6b808f80663a96f7081572a9a86f6572b4b540a4467dafec8981d7443b24fdda255147d1db55f2fb9c77425a63e1d01aa87a2af1d74df6a2b46fb6d41fae756fade0d10618a6e0a3100cdd2b444164722a899bc0918f84d5c387a45b028b678210401e5a0d86bd4712933d71ed7ac2f99840cff8b883b932bacd28c67a999d92ba523dd7906105928aca23eefb0fdea4ee7e8071ee14f5b5cbf039df5a5fb0ca91d5a01c38634e4c7216ae93f8ab048120fbd404390fc1facd8173c0b4b6c06284d51bcbdee76cea16733a6632521c7f0e7e0fb1faf99871c5729f32090b313869b51a049670020bfb824012931825acbfb9ab006a535ed6db4ac74adaf59584a3e2840fb6c4eae4cb89e33cd4319ec07f1070c143780e2eda4ea1f68869e513e705701d910b2407cc9137e7a45cd0fcad0d89f286a255a851e105e561c196ffc41649d92fa70ab3f272314fdddf42a154ffbc74593af3e8a3b600119f8f4d23a052bba6412a2585ec53b68c26dbca637f085df99e50d880c4cf58dba009753931a00b8fca6fcb6849a8f5fad6d2101730e3cad335b4fafb810c334a24cc2e8bb3260111b65c58202e6e20d3061cba653473b957d7e5786ff15754049276d7f434e668dd4bd6953ef401522476d6acfa7016abdbf790815cd919c807d7a33ce90446d244e67db1b1a5a2b34a613670df4d35edc1cc5f6c6967529b49c326d9ae63c36b864ace05b9a7e098fece5236296fd79bf1ba2184dd5459ea281225372a1c35b8131d73595c3a59c1d3d718deeafeb46ec4aa5c8f078944a3655617ea886a264849aeff4419e03e1dfa25aa24157f2441a85e169ce31270c3a20ebb3fe0c7824c15e28942cd39e8b82ffba2733ad98d855c25ce684ed0f86706e1ad5dd0aeb1bcb32bcc5398ac7fd005b6fa628a71abebf7dff8221675d36029b0a45b50b7c4984bc016fd54f3fec7b186798b187cb73f5e2a6f7a8a8a5138d11ad339c37e642e57fe4e9a7d4c857935d399f732c5a09d197129292ee766bcc18725f9f4f0b5034d7a217090f12764d941cd2e485299af52e1670d48bb1edb93dec52e7256e0eaa7cfdd3465fbcfadb60a628a2c37d5ac78728d83d18846d5bbc71ff43f268024abf1912752b9dc68fb7da011b7442db0ffd816b2459d3b03b68a55c387bb336698429367f02d4d5d3a805f10b44517864ca587ddbeb6c7862fee5bd37856c24fdc29e5e92b5d7252bc7f1645ee77c0a0776afb95dc0859a5dbab6e05397414aad4da693cc6a9a15e91c44dc3438309c7a654d301517f44e2a39ba7e71942100dee3ff297223f1148a440a7be2e2064ea45385b53bd3bb149d448d84ebd05c4fd5bd5c53b8838aa4eb41bb710e3d2e10098f4b9a5efd76058fc95a30610ff861d06c564f9a33f07448b8906873b282714b5b83795f5af5093952c9771bd11426037c43a45db7427f16bc9aab01dfa30108b9513f189fd04dd193c9b47ff39c638fc26b9ab863bd9d34f1b76c50b06ee50cba46d695c86303a96346bc4e4e6b70e5276c3340a234df1da5ab69d83accdee12ea7b9fbecf51b3435a6ccab87f62fc675943dce83b6964c7f19b25dedbf4084fb0d87bf52e7e67b22b16b216a0164e4a27925fb51dc57b0d75f67fb131ae424c99a6abe4180dd97360b09e7448808c832c885cfb837d0235982d49b2f5f671f27882364d8ee68c7cd5f6358c48b25230994c7a8f9d89e7aff38b662501360cf2f31ed5472dbe444e2d6c5fafa1e02e7f3b9802afca7bece083a598338b645f8edefbf7120a5bcace5358880ba0b3d8dd147681836f324f767a4d47d1e367894dcd295cc66f23f4d1b6b404bfbe244fac8ceb7702ee7fe1352d6dd1f0df2877952fe1de4a2a543e70f63816b33161c3aa03225b062581fd02ae6ff0f1852c2ebad3d124a3b4e85afebeb665ff92b0b11a533c7da4abd1f4f6c599a748548a3fd227e33783f8751457c1fe0b702ec5bc477ed9c0b517a580f8f8773288df907159d252fc6520d98ba32fe19885a53301402c0abd343da9d91d094a3311e04025f5bab332641779c6d54e51540cae76176572099b5a7a4f5d36aeb8a7a8b70688752d38b8be7ffd8ee06ec05c4165c120f9ce8b48d4b4f7a02b3339eeeaa1af46f711ae438549115118b4ed4120d1807b3d4ba2334aa1c4c7e0ad5bee52ee400520a328e916bd694e23498398345fc5945e990da053756eace438736e4f8c55304b584a5651819b7132d5bf5d187a726191e494189e9fe0b145b16290fcb057c7378051580aa33efb8f65f9683bbce10f9ea08d9157feacc7da992d262f61aea88bc94804c389996644452161cd3746e96b6969d75039ac071a2485cc4d8f5cf869b9508514dbdb3ae906a19854c08189c2b1c808452c5e9f1aad69494aff8ef5cc510438d4bc7939c754a98915616013543f233ee88aaab1bb17e69a42f4825b9da9f0879e0f4b0f044503145e5b35d8a8d9d1ceba420161b3a271b71bd0078545d206f030d77042f237bb454393b39a569e4cb9d6e350d285ff341b3065d0bdd4a8f922e3063bbc241a1407526233d078ae562448757e46a6a1ddfc31cda28d68c33505348308b127e8e66a2fab629dea0933fbb832e0070f5b2621e1d9dc3d57497917c03e3ce16b02d6d3fc32072aaf17e234c68575fab06b7391b4f76b9849886d92bc3c41494d4aa9bb7b18f042b71b136d05c4e319de122646521c975cd51100220945219a9955bb52a0ee15568fc3a450cc1a065652cef5bf63ae2a5fc7354ac93863abdfa5b8d869a352a2ea214c355f50c88d778e6f07e4f8a1fe1b5d2ee9b19e350ce1f7d0198010ccc5012f1618f103be031910b10b75367a6430753dee9c31cbde10ed2ce967258246cd8762839301b5ac31ba3530a39db41831c4e016ea062e3e67715f810ea85694d75c7e9198e4ff02ce0ce5db9ee2a0e3a99ad782b15c5b032d8e01d6389090170d9ee59c4b82cefdfa17d4f24b6993e24296f66fad588066f7af772444f30e023a97135cf19a829995428f5970e5957df284f9834ddbee8026468a3d5d3efca6b633bf52a325eb5d0b7aa45b3a43f9dd9af004de1dcc409a60b2201e45f8c4866705d3aadb19afa1c7488a380411d62122f88b9a79e53fac37e760ef6348cf46d3f71d340c69e526c445a5bb4e0fe955daec6159b8079bdbf047c2fded8709734c9d59fcc6096beb927fdcd13cc7ef64ad6a5203ee3a320a81a3b9577e4264456ad31dedf5b36d80fc46d1a22598a07056538475b0601ea31c68ea9aa122d6251597ce745fb97a3362f0130dbf90b1fda89c2070ce72928367da6653dbd4a846d255846e0c26b4461521c39b91b7883f53845fd386b3aa0c6a0174fc2eb7c270b3535f3ef29c86329d913791f4df74ad7475cd74688f890c71d85a061d896df34a54e4ace9a3dbfd6bf5c0b96ab6b9cca166dcf98022808ce736310e451aaa03a53a40468618e90b272ead077bfcaeaa066809d4deec5d26e43a0ebc85f839e70c07a5f942176f4ee2a820914fd0e1318f9a2bf50510198b77259edfcaea1693a62d64ec65e2ad331f7e668f6855db073c28ef6417468996667a421d48cf04054d6ef6b0a93057a8bfeace4b6aad959a62b6e03839e83bcf489eaea62588e34454cb3cbe6af986e59a8f215429312d2ebe609ae67b1b3deffe7161eb2cf369839de4037a2aa155fa77ec4fd9dd27a626199f719d3e4a3ceb3922be8e4de708430cd6a7453ab4f8c5ac7865a2562852117b9aec1378b70f6a813644df0d5a1811e9a1db1bff19c06f0d4a3d7f10ac8cc7372b018f2c92fe7c115270d7f6c55bd4d80f258b04a63ddff530e740ff070ab8d14eab6ff167550d23ae866ea63a0d83f487fbb0cadae00dbe6c0b674c9a97d1ad66e52964851b78d2d34b605dfbf9c16ac7bdbf291fe7ecabe82956238ca2800166420f9b3d891243eb35e1f4c67560a413c955a80481b98fd991d2953e1e4f1905e6d5b9a6e6bc6323619292d7fde59e69de0ea8030e13774df4f8f6030550f400981ba8e877f722a456258663994381c574b9bf5fccd83c38cadfd0220f25eebae42f1521d4ed2b9a28f0f8736ce2f28e5b65d24095cea9df4c9b85c7fa0d37ce3404a98713c4d9a537120daad0d5b615bdf78027bc9249aa16a0ff00272a6488960b3393eca2a1f001cc61b725407f3ab40aca131c8d1dfe71136334505f018d9331b4ee3bc0584b648274465b63f876a4093a33439512033850a7a4f8504312063f09d6bec8ef2f9176d67640740d22ec915d891eafbd56fa827dbcb4974c632a031f320765ada2b79739425c040c884eb3c6a18dfd988f1ae9764ee39400507f1388516068a6313541df1642f1c6db05921e6ac0909140b40f7594a0f2a01fb20e845de00a044833dcf2a47345541a1aa1950a8e5d5b95e25402de0d72dee861cfa60581521aa97f51132060a4491c06de43e56ce62aaa0b542ad70ccf1603950092318a87ff0406ea2f9e56d71c12927678e7421b77a39be6f0326566ea3ff076110b0729fd5305d5ad208346a41eb09661ced881a7ca271e4f3f95d1e1e76e7e27970963f9696124d5fedb62b8bcb5dfca88c21044f52a43a59b7437ef7db1bf06edebb187d33eff94bc6546bcdb4e2857aa46f941b325d39aa1dff928406cda3a9f38e4c2f9ab7604a1e0d615074af28ef764ae77d1c3fd48ebbeadca76424c64d0b6abef81fac829db89858058c5d93cea4b932c0e11153229a33bef1970175d21d9a76cd8a6bbbb336e82a3925462ec3eb548a09d345a00d1f3c8141f8408ad81bb306d25c19dfdc8ab570160f97f8e61432183b03c52698dc52923bc615cd6aecb308ce8dd0196f1dfe23b8a5edeed87e8a6c64e3f3a3d884a331673ffa1ebf26477c453bb4d48cac2f24e051f7727546701f04c0570ec63002a0bb8357cb03292edf292add070849324f097e631fc34539722806eea3e998724b0d11986e36a832dbfbb859bab88568371512437eb5e7af509efe5b1bc1effffe702681f8d5dfb497c96f72a27102472eaeab2f0665a588ac15e41d9fb81240a4271b70f8d3c8e89afe48e34c4ceddb01cba77a64b04936ffffa191903651c630a9651b97da4647865b87765655371c03820c3e9e08caae6a6affe47f5eacf5a7da626fd834f26e2ce1553a9dd8fe4127c8adfa4c26bc177b1428f2ce43d92b7102b85f899d7da5c1d4b894d82519ab55c3ccfeb1156f0de48f84cbc2cd5e3d290a51a0d5734e8c7a5310c532d5a5b71b07ce7c3e25390c75dbb489ea782f8a8e2847c05068df10b3c7885b5ae9b72811cfd2099762276faff2ac8fb49174acef0c6d80a067143a5093bb4ad2700bcf0139760671df54214351d36ffaa48a8a57556331d91a5bd284d4f7978968a39544b3c35841706c7d73c7bf4cb9d4a29ac8b48bccbb91b7e376684a1eeb1c86d12a99c9ca2aaecee822b853da3a69f4f9e2bf651cbd085f67d447523bd53e53915f98953df368648dc0d934dde984d43792e8b4c10e6301f8685d8f893db7dfab4f7e0d3d014b17779b9ad49c5bb3198ebcdee1b3a5bf15161d9e3db9ec58747a46b15c590a0b85a3cd89f3f311e38a28154dd6830ba443d8bf05c74eb1d975bc6c260fb43932517c0aa22a16539e27d074cafbf9437015d0e16bd0c21c70f73342828926385c64f144b4e850e98402629697d9edc311b782736974d685b184f717f94a4fdc7eaa1878b2860ea198986e3db2d349e6f1480405cbc8c519d478f01f7a6d15e54774d63dbe6aad8fb87dfd041433113532288b4ff6090748cee432557f5e20102836e73e582dd3eb74dbaa4887da6530f92691e8bea463598ca12c702c39b4759e416b431e3ce59109f07ac0dc189d4ac0c3adeedaafe6b513c8ae3bd0b7b405510cecafa255e5aca05122976b22c3be7f401571f5e5451e76e6ec460ed80098e0cf3064d5a0b7eeeb9adef0837ca44cfb4ea8edcedf8d899b582a09e80228b49c01bb542c12a3bff382ddee4bf9085f05d5db4c55695f2746b7283bf9eb727d470a3c3ae8dafddc59f0165e7f6a37535848ac1c5711726595deae4c8a9573bc8d535d80d0fa05e792c0fd7805822eb14df9842d795bd29ec46a94254cf1471fa6b1e0dc099b56aa723d9e306e405c07ff5d0d5b34a45a62b9ab9235d2abfaa6821a4639d867a2276b730b136ac7fe1e6fd48c6faec9c6e13639217036025ba4b7c574bc63702fe2e6499dcc84a9dd0e26f8c3ac6774b7b8eb8973691594a67d9c1ff197dd872df86952e5ccf46989381a201efac07ce0c7593f501818636d2157fe34f402e848dea5e30d2f13e88d773147c43c4aa734d1e921685c3118521cd3147059139fb26bc6198defa06afdc202364b41a528e35d9d6cfb068d3855f41f3a9793ef50e19795643038a8967871727b27f76cc87fe48567043566b5eb4f2c1dfd89d813fd95320bb4daa703491dafac776c0fb612d708c97d5988d9151f31830a91d9436d5f71ede6e797a8f39b24d53e81fe362997fe82e333ed19a53ad2ef2ca5d8ef2141b7d05ce4cbaef44d10e04540d347bdfcfd347e423d9ca320d327946fed9dc6fcd93278b6431a0fa85f3fd7689eec8d586671f43db1a327fe3804439dfa7b426e2bccd747360335adea12c3a61d2224dc0557db3d4b37914a24861f36eff443df479952b74ed04061c7d5e57e31c00de7dc6d6b444c15404e672c8e7cb6999d30ca547673bb6b56d6cd83dc72ce566b5537f3901122e2e37836fc2422ce9ed80541fc4336cef71d351213a7286ad6079374c8a95935737989f90f7d2580136a93f8f58bbf2fd6042aef048924eed6fbfab80c6857d057abdb4a6cd15e2f616306569c55ef19788603c0e9503f94dda8ca5414ff3ad32cf6f9852f318d6653b5d3a02c5298d211a076125c131fc82e94a703cf704a6f7c8ce9b561e6f9c64d1fbc6925602b87e73417148967dcec6f96026c58a54bbbca568fcb55a749dd684ca823d53f93d56e57a024596bafcb9c41c30def8165f54e6d6dffaea9d26032022cc0f2e87e820d6d5ceb532d6118b67fbe6315c70ce1e1e2f4615d73223bd3ea890ce24b864494edae34c0e17ba1bb1128e6476e1cc78c707eaf07ac18aed68e91e320c11724f3cbb0b37da57ea0fcd7708dbfc1598964f56ae70ee36e853dee78817877ec33de5935ab2baef1502b6ade530caf6c57080434dbdaaefb3e6640ba1a6bc0ce7700a2ae6b4f8c75fee5036319a4c403104a4a21bbfb18e4f3e45f132e1c4f191262b0fc555b7c9ff77c8b99ab0c670704dca601940d28f6df8ef830e1ac6b5c49c56531c6c2e0325c4e69b94df54b733d8a99b7f7f14b84e26f9336d3053d8670141a22ccaa776a6b315dae227a750cd8e951386df05cd31763cb83b54d83afe90e878ffed81472ac6fded7edbe5d071a60f73784e162a0883d5410fd7eb86c110cffdbb2bcf12921035d5dc3d2e64bffdd77540dbd5b5fde96b407f47ef698244384ba54f3977e38dcb57c5990a0301757d79c61117c508666aad4a0a52ed5c0a6ebe3a047510d84f145ecc615bc6125d414075de0c3d838b34487c899552152f1b8968a969a254f14e0302e76ce4e9a42f9644f1618693b0b97cc3453da7f0eb2b7b5c0af3c9cfce038876282cc1676ec6f1dbd04d79b6c33fad0c0818d40f0f8f741f5cb7035fb4c8bdd63e57500dc33f76badbd588b5cb0238abf818b2613ba0a16af46e99e7c8e14f9b454b52a77f48a7ae0b9725a417ef92f17eb09e2e4e576f0f92ee8e15d151341a134f54de28b1ba0c5792c7a366151e1986147552f17f8038a91571c088acca6316cd20c4579ac19609cfa3c2f45e97cb82a0467aa94a4c4bb19706086536a637b50c66fb82df07e260510c3241a9bb3887cf3940728a6ead4d324129aa4e2472e6cbc3c0f0ffb54f59f14d7ca75a0956aa063a64b3c81f3b6498c45aacef9f6173f3f6181e7c4783cb7643fb8b11e9fb2eb5a2294124f82668b7ffa1eb33733572b7c65e4f0bed9d31c2133054849b2f55f92dc7d04f7f295a80ffbaae9462d21dc9f516cead8728339259c16cc6a974a9049081d3624ca5fc8352af63db1ebfd84c6309d158eb36ad0a995abff6c6b270bbb24e6a8aa0a47764abfca8859615c921b15e9c7e58a064449402b098c9493bcc5702d26c6b1aa97af2ad1097cc16bc51d08e4d2d5037cccbba16fbc70cf07d408f45fcb3077eeea79b2eb71d1fc2c7c175de016376937077eaedd86398f8de8183e6a252ddef6b8b7b121182f3fb0dc79338bdde8a480a125f55d24c3413db8fd3e3231d3d1bbb387301b4b300b8b0a22046495a6db07f21426d42664057e32259c8d7a6350cdb7f5a06a08c4dc92fa02461c911bd3eede6c549e4ff042ebd46357341174f1bb5cc06a9b93130865ac4e2f56ccad5803be74b026554691b20a30d028f57adc6b0284f9fbbdaab9fa21b661384f99425853f8d128cf4b5d884710e0560f1b8db84a9574592f07a9ac08501a4e46cb2d57ca48a0ef644b20f3691d4e1a3711f0675cf42c90f72d06a010e7096811c91ee12704f3d2aae73d7f0c5dcb9de92b83ac36861797b7f98b9a408021ab3be21cf096e1c6b26f584859055920825447de317c55660f825f309c35390daddea23eef308e03968154724f81f232a06564397d82d4f256d279c670008c5f02e57c0a43943a5fbc86e15826d47b0f223e97c5b2c81ce84b16da42b9774c6f061e022c6cbc5fa0b21e8e3efc546211de1ec6a2dec57f137e453060dca64d2b120ec5f90853e9a20479430dd4662fc8631d5139925975b2596b0acd35281203d9c7e9660a45cf0339784c5c71c275f50788095c46c40ad0faca9dad1967554e621897a5445452d926eefa8a93288b07f23c940a3f962bac1d32b85506cfb65f909cb79d90b3461bb43f1368358337a3d5d5cd6e54f56317f8d07812735c5e47f1f260ef94bdd1cfa9250f0e6ad3af2f0557e18639d959e394bf4b811f54615cda9542b28f90180e37c8fb9f72afe4e4513277babc43e9b5b07a12da5526a072f44869ba340a4471d8ed48e11f87cbc6f512648af6e386595f09cc172caf226a2080ce5c7e41fdeda87b11208ff394562060d773d783765924cdfb33e6cfd5496437573f2507981e0ec1c29641c37199d225b2709a93d29e76d4875f72d3f821baee75f77fc0d830ad0f6209992e8cac7f238d19eac8c043f05fc4cd87bd2d625f0f4e8372da4d3b07439319fd9322e5d53cbc6b517a7b6132862d4b529ab65ae55d0c7a245ce4e810bda1339a0dcccf2a91235f220209d6a31e36a7c0ec575dd83ab09eeace77cfb5feea00992e22239e44543ec05170fc9ed6979e2fac020aee669b771c132c7645646b15f509c9b36d2e4f96ba3124672e098843f1fb2e5fb70f2463e8342a6bbb9006a090e87b85a3e1f2e3e837a678dc8c1d23f079bf2259c6b7fe4dcf927a60b19bd007a864d5e0c7bff2801c2cfe55eb0c3d7bde4a1fbed058f7f70e720991b61b09d7266c185f0322119f4a1444c551f6432c5dcc3b52336b3bdcefc60ce2296b777da06a4a990921a0d678142fbe9a4b863d848b190d7cd7a30d4012461cc7acd6637d3a0c71078754457e77826e67027511b9d470c481db63000a5ffdc14fbb3652d2dfed8b3e10689f4e7f2588a23d29c541776d0887cdbb6b03b151accb3af5497f07f122bb28514ad7f814c7c8521e74cdb83c5b6324e61bfc13d1aced9207c5ab6050e6c93b4ff9f0d558afe08b675398d957625f4b14ce4ef8220a15e41c25f82a6d979cc8c958cb1dbf60d4a341bd70de1cf48339afee49b16d7358c880ec1be0723e03f8bbca428a826dc357b4debfd554c011514eb121a6ac3d7bb7b34669883f8eb434dd974906049cd136eb15365b3d9e346bc968c76d4077a0b064f9870ed3f7f701345087ba9961507054f715085dc6614d19dc7e848542981b49284f0894380f6036afbb6e3ac30b902f555a90272b9b7c794b51bcf18328c1d82295a319536af16e84685833ae8d20bdb9b9e523e5000b2d04289e640fc9bde9041d6ddc16805b7e47c586f67f581d4beb3aa837b5b5f2e2383742167b4b421d4d5fc838557c251f02575fd6bbf8af113db86b5cecdbc0faff4ed07d4a6b762b423c6ed572bba303de3ae53227088f050cbef83ba20c8638082df17f203ed28f3bbcd48e6d0c10b6cc5f4f03f89b67fd76c07f0bcafe33e43e2d95e0ee7e0549fe456b21a8a531f0aa03ad91f1c967c696b57e15c53399d75bbadd76eb84ad2c7aad7f8f464cacb1f4b5ae853444db83a609cd40d94de2046b364c6cf6a9540ba6964c42ee4e4a57895b6a11db230871dc22a72ae02a0b0c3404a64398cd01756635bf705b0e78fb6a0f86f022e5ab0694206869fa302646138f871321f381fc72446991303866ed8f1f8730330d98215a68342834a72f2be691b5969948814b7867246c512568d2489ea3a72de35f825a43a4289c51820da3b59eddf23aef9b4359add83648888247fb6739252ab84ab242c41f52bcf605dd49cefcb7c1140d2f5fc44975750a46d15096e1d72287eb5cac7a071b1edca701ffbfc3521fbe2a1813e85752b7f74d684c00c126779be5fffa324df845e89c9c4aed4faeb075f3ada0f27d0b21b60f2e2e53caba1122e3fc7f68337038b103a288cad9a2f0e9355d279190ab31f064c29c65fec2932a0d7f48c453d3a3e5f253944bb7bc2b2113a3b40b23ddb57494cd95db42a1e16a205ca10b2899dbfc9761674227fecfff99024ecc7ad6105935945df65026b623fb69ac2517d866e0639f4eee8cfcc4b3a4011234f7cfb98dcadfea61882bc7ab531245e846ef2e05dd7aff9e0d21ce029820b843071d503a69e4f4705f8b728305e9c92f07960bb01ffd0ce8afafa106b3df34f7100b689c29af8be5fa3ed0304ae29d765359318587e061bdf63ab85bec6906e62aa8d4d55fb4749bd760082b1dd608cc41ffe8e7946594539103cb85b00b64969194516c75deff2567a0e912ca26f1ee4649ca47ed5ce21f6cc1176f7ea56abaddfa1b5985b46d62ab1daca5807381d45013e191a4518993aea12ca127a46e7546402cd7c286587071e03a91a2e21ad00c2cd678f5c532643101d0f94c7cf36f730ecbca7fadd5708fb57d4761b4bcba54801416c57e85dde8b60368605d32997a3ccd8d0e88e2ba2b0e57eadd05d6c131a520cffb82b96c14500cb1a945c4d396fee5275bf781ac65dd167d47c887f341fe9307fc12927b2dd5eb96ec01c4b0487ef489d2678e79bc6ba701121a77024aea6e9385d9ea3b55dbd3066a036d03c21d7aa0d7ababa43d7488f00222b2901fa2c02ad2bac6454d31ef2fedf8598e1a0733be576c1771dff7a55bc7098f1217bee0b20f17f01d6a895daf6dfa01edae7409aa7bffb639ea53d4fdcd237dfc72ffc2b4a98a372a597e3904e53f3d7fe79449cf24a84b813bbf2b20767397066cfbb05564ba6e0f9c6a744dc209ac7a9b8b0784f17d1167227aa3c59e1067504fd2cbfbfa360f3dade75f00de3343336181f985b27aaaa8be4af05332b5570060d588bb38b40fd9480f4af655bb0936ee07226a3baa97de26ff87132e673a024d238fe7c9c133f4f38623fab38cb30368e216c93c03b1ce41d33dcbfee8232b3a3d260e6affc137ebd6bc77694f63012ae923a0803040de4de2c37508d42a0d10d64b7eb9725bed719a16fb124824bc3ef21db431d9c5fa95823c98ee2adb7950c98390b0baddb374547ffde88cdc96b4e89c566d13c90adc3bf303942c45f914fe2a66e95235c0c7dd4bf1994faea38c27cdfa2df87a72fefb6ba53469c9d056c62d05a290e15ec5c30a30f5ca0ca1142ab2e5eb9611244822a03d99645bb82a2f85fbd23452a6b5b3af14208ed1a2e1d4e812820511aafcced297dd00fab53b45890a380379a58fa72c415a118f051791e280dd3e04b3d2cef5469af6796d040b410819a4cca059fe575c5644345c724ed5960a8f1e663ea5d6a31e31215b11f590cf06a0092c54e3696686bac24754fe27507ec0ee003886bfbc9f6e24c93b86c1012566a9d409fd1c0f2d5cf8c21350877edc0b0a939615d03a8b2b4f192331997c2a8035c6e1d86779a8ea59a9bee309d7048599643a8b65426700d496484da4c27f33dccbf8b0bc4cfadb12633d7d03cd88b31ef71209eae3c7f6832b3e873ee3c7404232bdbb1e2c44ba15d33cd3e80c2ad6837844a961cc92ac41dd6047a69c575c7afd1c6de8ec335e78e93dd23326b12e1cb072c981faad3a97e35a2fc5807fb1506e5baa845006308bdf682bba9951d15708c01c055e3fb5589a0e3085474172e9380802af61677a1b3329e22ae32c9b991990a7382a68f84b7f43524634cdb8b7f7731e5df8d438ff9f8efd5269cd22dda25342a6ca7fb614313852454dce2177a609ecd2c7a4a7b70450b6f589565695cbf2b352b5f3b8cd556e4b0848f141a643fa0199610e4b3515e44807a1d03e2ef56ad8b2be8fe51be60707542944e344910451c063c0b58d45e3220a8ba32056acf894a9fd6fb21b926b38866580898c3fd84fc91776e83387079c67beea845acff4e47308778b79244e5ab440503fde3cb18a7e604325340cad9ba72de217dcbc9a078096a223148e4245fcf709eed89061dd0c80c56c5c6b857e3482ae129a4a1018c9fe9667f31322063a4de07fee89680063ae0b5a21ef014f299549c85a989f629fecc2715cd6245b32ef13ce751c414b504362eaf25671cdc77c82b2228b50aed3a9a0e74d0b28c84e747be211bd3616b14e6f5aa1fc8527336deef4b75a61a386918d4ebad21732f68cd8bed7b42e177fb1a70d20f6fbf6e404599f395a97ec6cd408b510f02be6a8fa4b1cf3ec5124032f1df42bab8bff328af07e0f7a1e65ab4559ba20634130f1a1ed349c0b674002080cc00342685677e4d8ad7bccce0f6426b509379446b6611d6e3bec0650c511a697850518871e55159d07577c55c45c46dfe13e566661c5667b92f422eff5735d26c69a0049dad9cb9f0ac3fb7a9754a3a378de1b20dbea4f43eca271eccf7a881b8e6baba660226eec5ed75753d77da6781356595a6724494831d1220737fccc75680255a00570963dac552948782d56d0a1179738bd64c7108e9d7f124caef970fd2ba945f84d714b7dd21e4bff22284e0398252f05a89d2aaabc23d60a7e41b395fb425c8dada9d87e485fc87066be4c72652b271269d3407a6e9732eee2537c546452dc6ced3110208b0a35787ed5618475bf0b8850d6e46b695809b2bcffd7ef5f0e3fa5f46ae04484a9480216b8c6bbf015401d789c375c2d0d17ac27ca6720505a1be8f2aee48f1b48e35765ba8a0e70802d723402881483b69b95b2648c2fe5b0397e10bb3e7f454b952af8ed491fb23f34034b3684462429eb762e4256b3c6a5a00c8a9bd3e0a35991c851ed44c4a2422ce4531eee937501a5e990d2b67fd9afacf0df1cb276ff189876943787d6f1c610493a1fc35aa8afde9788dc06c664df80288034ff10a1a260781b79386444de0df6aa530c094a63b151c6accc05d0c0d4fe7bb5e351ef7b04bab6ceae0001cd1046c33041c13cb1871414ba963673218b35121c02787c2b7ac91fef51be3873257ea6e1122da0b1991a9c848be0ec26f45ad7a99f1ebf9cb66b1f7f8c0de8e4413497ea794bbac57568e69e4b32ca815bac7fb059e12be0277c860f55b72c9029d64a11ad386d373426e4a1048285f3aeca203fd01adf5585272e6c13c6bbe850d3c790150f962ba6f4b0ff11416a86e87c392ea4fdc24f9495ff15412a96935e74b78fa03a2f4282ad608ea9bed7d9d68739c245e5fbb453206b9bc141905458a35cbe86277d8e9767d66af35a6030cfde7839a516674fb19ef9fcd3ba73f65e3a882e3f43d51ef62101a7f722c0c11145d733db3ac65bfe80a389195fd8011e16682f11b2acae9501cd35316e384cb7bc7ef553aeaa2c1654c7684ba628e14feb2c0e32ce91001159fb0f43506cf666eacef6e97dc286e8343a18299db86b39b0bbd5dd111b9911723b61385a35ba09577e5338418132b0ed527278144f943298c44c7bfb918b6b7adc9c81c5c671f9afc4116a01b83c894b51ee69c0c4e54b4289fd33f56a442d6a0da268024892d19f59a4e53f1eca5a4386f747d500d432bdfbfd025bf4acb6fda07fb5a404afda81f5259658b2047721b46989000b203ed1ddf68184d31cae3d3845bb5a74013d7ae8786e3ce29ea08f824a8261e8a04c494182a41b24c617c71e9d82573b8d2a6dedc441657ba6c7bf18188dd29283034edad0a9b686f44c464f51d40bf5d904857c13329ca39a5aae2b7e08f1187d09140f6ba21f5e868bfbd947e0a9b6b452f0291049027db18355a48499a038672fe345c1006d62a3c4d1a3c99ebaaceff281b48b0b2eaa327603ff49bdf3415c5284223103b403d98b62f78ea6330204356e48029ee97f42f78636155f106c0c282516bcf3a84f920a275efe597dac3f0e6c38ceeb40c02faa8b6fe8882c6a7a3ebe7763f82d5c800596321f21b3e1227d73a2b351022b0eb99fcfeaea78aa4f0f0a6c96a81819b5d921bf240467afff3135f083aab167692f81890fdae822ef1edd9387fcfbfb0627882588996bbf8194edc23548e9a5c6db4e206ac17e5a5d1d196d5757df58e79d445855a98a9743c0617697f4250abad6daaf5b326e29272e8d1a806489a72e4b942356c1c1e367983a9be6cae6b7f443fc0ca3b4aafa6b45c52fde2d83afca0e74dcec2b795d2ee37cb4aebd89fcfadb689ee3253222f507962f3476a0c1de4e9219b6f1cbe8f0385c3a234802274dcd350fce4f2b66d9665ad917453369808ed8d62a9ce4c5f22c1e45de3c4e14012d61a060f272e00119db1a5670bb4c781380b37e5106f1c8168acea61c717293fda04c1b39520a1b1de5310773752cea4c90db829b5cddb10d32d3632724aaff21a6b9a801d468a059da0033722936bbf52906ab8dc7b915a44e3ecbea21b78c846127d64eebf5a0332f31e48ff2020a4cf31b35d300224bc86393270ddcc4c50ead3f66b81035916cac57b2aebb0e604015fda3f62c6dc8367b7bbf4bfe1229b87bb8547c0c57684345ed8df7a8cb4ade9e913b4ce4440975411adc9949af63ef5b7ec4232068b6496148777623e28728a24e8770e8c115ac6c324b73d9869703e69a579d72e7a95f7b9c17f2d4a83b82152afda135fd678bdd844bf96e5f7785bdb87af8203721605174a33630e96f282bfb95df84229685d4e142af7c2c9e8b74729cd0c5ee3c4924911de833bb531778551d46365b27b9dd5e2184e7d183916311d4e43ffe1268304da6488044eb0c6c99de71a8f50d4dab731c9082f4174c4eac8cbbfb41d717dba0617cd8a313b2a0dd08c0cc146d114a637603a8df804adb262d8f42948953ab83ae4c630dcc4b1627f23e9e3f60360e066fe62657705129be3c819459bf5010dd3edd8478d69a9a6e2995190c734505c42140a6a9974e1f82696168af2662826b62dd849e730f8fcdfc8ad1567d176473f87d24b244d34d6fbb1cecc6cb14ad57e1bce787a8a2ca1f7a81e06fc132259ccd1a86d91e6afb2157935bf2eb0339ccd84a6703bf0558874cb99c320a0e7b6d42edc82ee4e474b26feb6444cd3ea876b2472cad5ae7d33b240645e42f186e4b13ff52eb20f460eb9ab5f5cc72046bea58b4a398c2404f5181e63481ac876b7dae09fbf5af94a45100651c2a8c1e4a73c41daa94e18a52437734853ef09b5ec0ccd0c44806f94125427d6c58f839ba92187135ccb022ff2bfd3bd829ea9031e04d6ba656423b0c32e20c95db82101a1508a7f37c9a3a156369147d89e0e7754244d4ecbd24f92c0230a194ea79587b96a977c73bd499eb7af584bf47959cd3eaebdac42ebfd7540d331c37a51802aa8775eb78bcb0373e99e25ec23193e17f4f816d60c422f9ddffe65b8acf5929482339f174ed5b97445267443c9f83c7a4805b6b6d54a665f5ed38cfead81b5feda85fa4b5f04d4a44d71a4e780f90cd319b2c5601d6e79a541232087375f8628e65fa5835860e1f05ceeb0c08c29f250abd4a7f13a24218212847f5d374f63d5b3b7a70a163d16c8d565577163d7d921eb649fc2c783cae750c89fce1e6d33ed0130e553d971d8b1fc0fee480efcae812111b116fb9b90268f6418fa85d723a8fed583be55374039707e55d06579fd5a981f63a6269955d70c49915ed8faa6de82bdb507bbd4b0b550bba2d5235bd9639e6295ffd4dc609d9454a4d7fe55f354256c1666dfd1154fe789efcec40f26ca68735e9087c134d93d09dac4f6b96413ccef7106a01cc2a7d712af2bf6d332200c6422b6b48bcbbbfa36dad146ed16ec5084d0062bc1f2aee04abaea6f997fd6e5ed811a03145e52093fee353754a194fb6989e11d72ca2e234441624afe2bf12a7f78e546c9437869139c5b894852a6e18e8c9d6f25291b788ef9d78bf7d98aa6d4ac5ff651ad9a28c82cb67e6cd08273860293d22df2dc538e13adc633844764fbd8707efdc357280b03ec4acff52912254fd1b99f172d9c68419326b67041dac2e156424d1b2c51c05273c1f9c0c0a0a534e6f1c4c20e752f4b60b207da457352e8f066c0eeae1a04754dc0576716f91966ad50bfea8f26878fc3cf9e977bbe257ef88805be1b41cb70e086f9b66fb03e615435289110207069705ef9aa8372eec65e7b4e457da07635275110a68cd90eca17bbccbf2defab6d358bce1d1f423d13cc6e6b4f0b28820353f604967c7c59a05c1abc93735c6aea3f60961d07f7cb4b38de74d3022ed9e6c1c5ecf69e335701fd24c9bac163ff70eb51ea375957c30c5b729513f8ac71680a8c18c504a15e7ea6895284000b7cea9b589a2e0628d63c911826b0bc281999805373f28e5ba6cf0812e4c89c6736302abf03e8f24c7a069db33d81b9e9663b98c47c53a47488d36d04c82ed4ef28cee7a1f8977fd243a1a8e3e871ad9d92fad920e6a6bdb0aab3979960fb5abc4f9932ad0ad56bc00f5f0f5e29fabc382247c15f6ae273436c76bb7f5e21c286e4a207c525cb5736666de33c4fab94fab00205bba8a1d855ade581617f4d1300253df4d9864985b85e2f156a903d1fc8baf731e5ff0647be07d0663fb92568f5a2a012d6e3fb79741b0b02ff407d4b24f9f09d51cb40c02a6a2631dd91d8d466b722bcbda96f05ad56b3ea5c430bd4d3a2851597fe23ad6ea65c42425b4da7ad76eb99fcb9e1c11d56c156a62b855aa96cfca5f81ca19f980620fddaae56182bb80e253c56a385e061a8844424e165c01f2e21ef0a417c83c895b9c81c6df6dde202a5ad4d38554617f6af6c4a5406f01d95372517446df82e9fc2c917436f5868390f5de5f78ae105011637304dc01a0d4064257560a7a26b18c513b8815b4d3e434fa8997a1aaf4ac29847ab039c844725a47fe64736f5aacf0464a5adde0c53834aaf1283ca3f5c125a8d3e88b5696bf2e6cfd480bb16cfbd896e0fb3bd460e99771742f110413671c11b9a4eab8138746e695a14b3ecddd74d23e53449b9cd1e5156acc2b08139659b4c674afb056125bea5dc75ad4c70f8b440b057bff29ae84076e3192f67192737316d4bc489b0a42f7d98506a94b118723fbd8721abb66dc7cdbcbca88cdcd0c6cf2f4f9314db999e7a2880dff17cc3d381a8be084f2f9904511f3ede02a60977060b295c8a9cf35d9a6c20e8cd1a98ba667fcee53661e7d324798088ed55b7bc972c68f3ac4abf0c4a2e62c0ef7864040db1ac03ace84918aa11932d75bc6897b99f3ec0007d9cdb4cedf1840bcd72bc9ad09a33c4ac27ff8048af2e0ea5a0dc896701a4a516729bffa4a33392142e1168f2f41990cfd5a692494cdab94e3b73c8c9f596f86700112f1a7730f594e30e538a18d771dff81be5d208e4cb652999cace020c689642a6e212a485736b7e392e099db511e82fe2c1cdbaf338e30eac40edf94a0f8eb987e8d043319064b6badddc154df3fc5aa6016b78c2e593d90f0d374de308fb8f3aa50ad5c117bd7ab2d772e983d0d1a9deaaad487b96cc5ad724a0faa663cdc67bd058d5f4acbed695aaa216f9f98caaf561e69a95eef5863e5a1caa90b8a4d1c278c7d64ce71ab0c28e73cfb49bf8139578059280ba0856a293fb7cbc8cc290c6dab275c0c4878b9e3e53993c5f2d61fef398a7392f506079af09ceba3c6d834cb08396a19726f58f7ae4c5c1d307b5c2a173a21bd5c7ceb44a44626b693999711643f04b3933ca7932a7743f879b93a8a0a6e5ac0b59eee418413afb120518935d50e56e788adc1c83f0a200249e984b2fa1cf67881b28417d5e59752b502419338a11be2554153957029cc1a377fa855377e089e49c5cc257761e63e0feebeff88ee45c25abaeab36f7e6219845af0cf65702ff9258d9bb5ed79e4dffeb8d35a5f9a377077ce494f94812158e43b3cdfd946cb20895888e607e40f63a8bfb818fee020ccfeacd412e71f47d562f7e1d6d2c96aa80d2f07140d7d8b2a54f72640787a71520eb97ea0e690f7451cd9817a750ec8352976ad15a7b4c55085665f11a1c655ca68abe107a399464fe4ada4ed8afa17fe51f5a390d2caf8c7be1256d9c04b0ba39187d3d22792a63c4cc26fcae45e2a51d821c864825dcaa844c408b1589414b5edbf4931f75554ccb0cb90cfe84011f7ed978774b2bf1ca3b2f254276db56836eba3b9d21ba33ffb2236171a61dc92a265b43b1d1764431442d63443a8db413fff17420a4fdc11e6a26157a5757fa4121c4a466567ce07d0236a1552c881020cd3eb62656b6001fb686cfc4f9363eef8575affcbdfcd55a3d80a5b90d973040c842d7ee004e9e2e35799fc3202b4979b23bbeac22b8bb42d9d106771ff6f1eeb536f0646090d27094fe3058f689d15469ce2f6bf662e67feeed1d3298a053554210d47ca22fc9058077a9c6ad12c686653e698a678087d6d55b8f76b74c02c4bb765841c914b71b46d0610bb2022061102ff7fb124cc597ae7d13114a4cb2c1b72f2e58d23c4dd944c104617138eb270a46b2507622717778e67ac18bd35557d314ba6d57f943bd6bfe7b6d7f4b65a765229d67b1ac9c76b5e3c32539a0b6e959099a418f818ea3c38f084cb295dd5708a48901a8c9b524204664d7d4d2e2c30758dbe85dc74137281098ec9cb54aa2781d969e7777944bd4a9d158398f965652d72f7b5cf2ee7fd7d31cf8eb12e8cfc3d18e65f863df013dd8d8c50ad75263e003d7401522e84e853cc6b28d1c9ff51e019c28fdc4d79f8a602f89309661066d7d74189727ce9e22e8aa3ca77073bccb6664287b0d3f8ba070351c401d814d919985a5ff8427789ee687dc15db27d541eee901ef6e556ed8b44747cf6275ae87830ebf2464fec1f1e21dc5fea01d70f7d9514711cdf38e330b691c8e04403275c7bf9ca9986778e46e9d75b9dcad4af4f9d9f468518a9246b0d7512e3a610f73e02ea26597b29c446d08df8ad3c3203e368a08bb08d469a211473ccd096118eb9e79ab6ec445b669fbb081be5e524cf7b89db34cfa771c208902f4fae755b31c2c65304e13005e2ecc27f03d7e658832595ed5e86625397c54cf992580455c62059d8ba0d96c4289ee2dafa1f544739d8f14c67cf9cc2727b7eae6129d26487cb65885ffb101d352247f0d6202d0671571e29a969160996852cd096b2192f4c900b011f14b4beb2cd407773597813af88a1f6f23b052256070b33f3b22916a39b7e8f32c907836262514d96c4b8a067f3fa30ee3f9a3a7755a818293d942f63cc5678c776f9cfc64e9ebcaeb948a7944da94cfc2d1f563119eced2fd1e4424ab77dfc5660d89b02197b325f4429ca63edefea69f355c54777af0386ddd32b0d5b988000094f75e3de33d2d254476d042e91d20ca7df34278dc60698b5ca601340ab2d335911944a1ded47a98682bdf99dfd8971c3caafcd354226a9895019243d6eeab1796f3197849aa0dfd6f6a8eaf322237d62d0f8e1f936b6798190285e05cf3dc81540a961b8b64102f2430e13d14437e81660aaf448fa4b539e9b0eeb952f2ded62a04d5b383e5a3cb0924a763d4180e7a382f879879f17c7bc5a176d98cac26ab2059644eab35959c27c43baa181ff8acf069eb9065aaf30186402264980279535ab4630e8817a53bfeb5dd5619c92d6622ba9de6d943a8aba301f4b19460da9afdb099a55edb5c856e0b977a2a95f2573a9ec9a70848218b9a6153be22ecf1742e1daa6a04a6d3cf5e799e1ac880ef63ef94f1bab237cb4f0fd650e98092bbd4902d2f608116cab2451afb77990b1f36ee0f8efed32c208eda3641c2e1cf558e6ab949956ee71e21adf9a34d5e0be06aa22e6bec977d650533661ce54c54f737abe9d55de25c09919f229b2085a51a727a5cf3dd90a4f62848865c6307e3080ced25929ac323ff5df54cbc1dd540f7801ff923dbab08c853b756a48591dc0dcb72ac823ae2bf969715a105f63ca299d7a488206461d75df6078071184c375007dd2ab367c91364a74b74fdd2fb387c6136d44a24a1c80524f966aade8d43eb258d2e8d2a91e38aedf684039a57fb39afae2bf49e5039fc01672028cd62ebdcbfa3b24972a7b395bcff80873962d11c80d1408e8ff8b3bde92c915bb6b7dbf18e71d444616c541b9c3dc026f2b205af330638fecb849dcae3e12280ee6a8f2350e5f52baa284482e17f30da8d2fa7580773243b0dc77e11618b24495531232633a1526029594d0d4d8a9360d948d5ae2b426557a316fcdcf41ba67f0e0949cfd37c175ef87d14a95e990c94536ade26f0468ea9633e675a5e8ef4c8fd64a51b0a8a04cbccba9031a586a31b1868b08a1fb337df462e43f06b4e102d3657abe3af10a19e4f7596d83c9ad7c431e86186edaff05f4e7b3bc119ad35955c5a445ffc1c6070f202b9d84715018dd2e27805c7dd45d6a73a6428a3915130b1f384e6af43fda3c3ab6a3f6a8070f52ae50f2528dd2b9314971c1289bd70b9cd62c443140b2d29a05712fea60dcf0373900b2c636ac624fc9d30274675d350492e6ad15317d02ea9aec4b4e5e352f74f55ed0015430f7fbc632b26dcc0a1e0a0975b760d4496d937ac5ebb0efd5286315c9ce878a54fab750393e75e6eb1287c36ef2f0e1bb12b9d6b00e9a2b9e7a3cd2e1eb25c195ce13afe05f44fefb00c747e899006aaf798214ad01e760cf02a37de8802bf2fdeb3c82500787a9022ec9e4e11e869a22d1341a9f38a4552bae13bacf033e8f446901bfd673e25b2e014b103dce46bdb262a74d4b90769398c3211435dda49b9143cad2360275c29e38f99b9f9e6549519e2b9ec1b923c0a462cf3f5a51bee651d8771c1e70f992131dfed98299efaafd90906df99bd5785649f6117883e26ead1d871dcec2ebeab64a1763b2547d2ae08bb853d61232483a2a308edf7cd5dd95e1b253669ae0a4d0480faea16fb8faa1a106d3134d4b800d1cfad5baf2f5972c53219487cd85cad75c1c78adb5ce1703f61259f7e3f045a85a8e8c91b10ff3594e910a237fb68db05d77c1f7422bdf2a76a5edaa0d0f32451ae842d1f2bdfa6e6da65ba683ea17f72336ceecee28d7ff1f4292200c5ae1613f4f8c0edd9ff9c09fd025b27c4cce9d2244b45b4931c7634b888cecef9275f35b0b1036a1b306259a7aecfe44dc3f361bb4cde09df5a0e2d3cfcf435dd6be12e3a5e3ce02aa724e457c198e26944f8c11542adca698cc3ecabd86afe709932e2f2d62181c26b682c2b24862cb5804da536dfe1d21765fd62f921867201fa6ef4a2bd9e4c5a97c91d71878a1890fbbf21dbd021639a2e8116768765122500115bc1bb7fd86ac4b589617e523469f02ab07762d60b43d6c09a1cfaaf426a04cfc08bafeeb50f2aacb65b3909ed6a71c343d83bc71c8b3a17c72ad4113a7d159b5cd30ba2470b2b30d9744cf0ae1b767cb10388ce5e6adf30bff8c927617b0bd11244c9e953630a42cd8eb6aa7c4be1b5352b7aa1e1caf76f291e1b662add4c45088f6d0c2da5e15136eb3044d6267df89388947aeb9b6edc305d8588cc34ae189251b6d775d560801cb1cb5361a7332c6354292445ca94f67a2c95790133f7c35568e1f7e8c2f880d56b182b98cad92f543c66e4de2af9bbd859b6fb71b249177164fb4192d474e3bba851ae7ec1fc21e14461dfd80a09a484196722bbe08a7ac84d0220de9bbb9c6132f80d5b9ff7a50613f008284c664023cab930a51e9c28397d818b0290d1d340c9efaff5dc7be3a2ed7327094544b36f28640e039e739295c7ef1e54d64e2f60a9978b8051225253ec6cc01eda256fc5aec855a4010d392cdab5ce83712d542b7479020079ca75a32748fbb9e882548c981bb0d0ba3482ebcae09fe40388eb79af21b29890c70250b940e2b3f95d7e82b7c64dfd5a7f8a29bf818dedf3304874061aa8014bf422566f4ee99a7ddeb5506a08080be13fa21814d115dc4f696334e319b3cb7744dae3bb997c77f517c9c2ca45cba99cbf62e0ade111f52e0b3627ab19653d357a15c10a8dcae3c19137fb5ae364c3779bb5656831d90792835889bc9e708f6080cc83cd53c7d9c9fc9f3ca9f59247054a1fe1c12eeb4e803ae7299f0cadb2ea1c89d73d0a3b8dc5b21ace5de6ffd6f80803abd06b316c810f007e57563c3cca9e3b74d7ec9b4b7156f7fe36fb866bea6f865e4469594f5b31efe5080fbd6b174e073260c80d668b0ced107643e493c758f42b3bae8370df3e67fdc4af099bfcb87e5067dec1e1566b5657d602b95e23594011c2e066967ba5d2165ec8f33d9f03f156e7f24559ce78644389c771c84c23b0c802fc00a24732e19715f91c46c5323e44b055fae224ce1ec5ca21cb5beb53017916177eb7991bb2bd2edc1ef377a9bdd4e6c9934546963b60abf79eb44874efe78dde6ebff517be5a69faf2d763e4f31207ab5951a07b58ff2dee2ff0f5c1068e76dd1cd3ad4cd8c6b42c13790a570ff2758e0a4533b91b785924da7ae1edb9d626b26e4b9f281e66894f207956adca1596daef1aa3e9c4d4128ed0b3ac59b117381e35ad7ece477a22e5cc40af27270173707158c156e268d8e6991216f4b7b219265aec42814cff5b6829b70da016b0b5abf03cabdd2c1baa651b6c56cb7ce793dbe41055fe9cd077a3e37840cb67b2149a971b449094583f8008194ce6b1b0f11ff07bced4661acdf4b7c9fe8778f5f49297926371ab17b3fff2141f015229d3879cb0f04aadfcf76a90526cd164b5965550d157b51e7a073de232720087043523e88138507e0408590b19d19c7035d8e061b145ffd8e2b622ee74a2b749f0e77d48089d06951a7dd78883ae01fa83d8faa40926c56edac02cd07e6d14a60f702ebc29306c04f5db72e9531fe66523e19e5ae6ca1aded6303a98bd468fd4742975444124a36f784d25f7bd34314a61dfab86313fde576b28845e930fceb1f686473e3889cc4a91719014b8611264839938eb359cee226dfc5767519e99c2c055b4fba5c5ddf5995ddb6331c45da36041d874b8c58275322f8b01576ea6be958ae1e8cd49feee30783ff923e492b745164d354bad2505f365f077723aee43de97ed77a421921aa3ed7c0e69bb48016169ee01a6f05248432f4c9966244d34c6751bac69639d78aba80b7ae4919a65302ae5ca4854c574e866d49ce5a627cc6e90fdbf84bbf5ae09cc17cc5792e409e343d5d5be8ca3cfc91444ffaa289191369a00d55fe270b38c1da37ec2c298d022946761a975e605c40663b136d4c8557e5d515248134b0e6f777045a00c1f8ce56e7a3722abbfa2e9c3922656270d8ff00e93f6ab3fb2e69d6c25c4da8eaca03723266a6f84814ac6500df25fc8fa70a123b83724b6dbc7a4d0403a388d4af97631991458b38da344a3b860d4b92bcfcfdb27d9e85a25eed6051fa8bb9a94418163fc0acb79ea7949c3be29bcc89e7cffba7440116a9c6d5838f43533643d8054ae73c9cecc35800e46393f2b1e89b8c9f86f44926af7f764e15a858ebf84b816fc80e14410ca4e3b327fd0c1db3ed9c5a664f8c0fec97bfdd0a1690e7add7366dcbb8d1cc835342bbb129a9e7c5d35f63efd59bef5c3ca5d23719b37ca49aca43b05f15d78be5fa239059fb358dd857cb174cb1ea94003477f717ec98112de100a3941e1f2e083ab68270c2cf25fac57f8bfdc2d45b35c2d7ba2d8ea3af8cf862aaa3f221612b05030585ba7d26ad101546b5654193b251dda263e8d5795cb03cb066b9fcc70136219c23dede440254753b9721d577afdc8588b30950549c301ac5485bdbbe85fe6927e838f11e9a308d1b25fb204f7be7110c0f39297690803a689ad389178811a573907bf4f8bbc53d82cfa44165ff1b54bdc3ebad09e5f2329c13d4bfbefdff8e8483be847a261e68ce785d07ce5e08933bdd39f32e6eaa682c870eef3882dec2a268e8a005e49db6042cf2e5bff103960496f9c12b05663665fa50b36ea7a04dbcc9137216ad276df073fc49bff699f10b47811b8775fc0fa7b2d46e2294c8b6bc3caa1138605f27a17985255b003a3ebb1f80f9ebd27d357eb97a6509f4bce7a7cccaafc34678429ccc9a2a416c582285c5d48962b14a4cc0f366591d85cf5921f1955f73fc32090b67bde27fe9e671a04792448ec8b94d38b62e6b2c0e1a86ba69a87d49ad43bd45ae557ab0e55aeaaf6568b939f9d221b7d35c75a9686e61c9c588550dc585c2559f413ee868fbe272eb300e6be1da0f7e793492226644f5c7f337857959629d4ba1d0eed13a6db1f0b88b2dc5b21c43edc0a22db2c0fb6f31844edc93a41244fe0c56669e469413b81765aeae4cf056db8c67290dd20c9139e2c4e2861d2bbfd17b750de0c8b5ec6959a78c69c47e67981968f36a1b875276e2d95d717bb506e2fb0200d529914abdf25f6081ab3a575f9418dba413eb95a546cdf1683d664e4fde73d77751793fc4f0584e1c29641cb30ef6b15b94544c90bd6e1f5c873d2f00a01acc004926a832197307f1f9244897d36fe24c7dc0dfaea4cb3f32c9198028cffe5375a484d0cacbb3e9b40b7b500601eb5bb1e1171a9063aa60cd6fd20121c11d3e76f8dfc14b54ecdbf969936dc1447ce33b0fe1edb9c59cd5a3ee94b74ad2f36ba6e4204a1694ec44b813b342cfcecb823f2164aa805b41ad1612406b2f0d362c4e4de93b988e9e381b20bb142f52be7be412edeec88798b23294455b96756a4d46ca9d61b19b659d76cdab1d52d0fcc0fd005fe7c2e3a5db8f57ad0f519f5bffc5db95bcde8581a364cdbe44b726cb8ab55d977c2ceff4bce9bc5b9cc7eebf97d60eaf0e9d8464b2d2d2f75d0386e4e3608822991751236c53968e037318420a9feb3733a29bd71123533013b18323379abf68eca229ad7f808b2a4dca2c21e695baa140ff015a3c440d7e494f3790c001b4147fcc43fb23a810505922f6a3b40e3414c1cb9f279b4dc0165c5f7f971685323be09f18caebf355b3cffcc502d0c92f2d219e78c33db2cf51648f428907bbf4af0f481608d165a39c219e6ed3d0ec588b2a81bead221b85c557724455532e17c44855a553bb0973ff4b129f63f9c85035dbb5b292207e81f73a1038f110b1318810821efcb7a5514d0672af9139543f5e52aa4163ccb6c388590199ecf7ac3260bdfe2de1c9dad381b668978c41f158c3de0b0cfb0a79d6601b857f891db19be057df2d3fbe6b926076ad6edad57ef1815045e3c14d8c03dd5f3d13238266cebb75ec601c7a36f011ea4e92a56aef3779da48bc146226515424da7f322d6d5b93c3bddafe10ca82a9bb2b01300c899a884ff5dcab76e872a439418f8bfe5ea7755f18c86a1fad5acb77505691955c543308c13eada6893f7616a22c1cd43ac096ab8e851aca18bc993b174f40ac445772ea40178c48f7aa0b385670fb945a61efa775c1d831859d211487b54d340194a8a522c937eec2c3880e12d2cedf569a6165dd838fb7352383a45cac8645988922c7478ef65b6c39a5236e13b207bcec7774ea4606c104d90592490e09e6b6bdb27204bbfd5871ce2b45817530e5d743480b26b62997593a0cf1844c0161cd91d8797476660ea3f91a5ad62136659ddda2a8ba707daf072a680f47cccb33f0b823f5a1d6dd07769da56e47f7f16cc996db56b7a2e5d2592299ac7a5b163fedf098737c65f83f363c3c393c90b2d48917ceef9f0f333d74fdb6a37e67bc4231191273fd280a875a6b203e1277fe4467d1cd46816492e37d16c17db4e02523a22a8509fa9d37c77f249e2ad5b1382147448ad78842745b5d558c13095b8d83a2fadcee7582cc5171a6505d99ce996db9999dfb4b9751f71011a147fa626c6584a545e840c189dec434e61a30075ba75c6daf570eb410dae4a09c701ab74298e3c9566d7ffa0fc9f9a6511169b5f9b5a731ed5046b261269eb82281176992b359b3c93b89b2cb75909f0e1f3d3d49eb53a1e2e4c4680e10110c5b4d5bdc4428b61fc352597bb98f368dc90ee3ddc2d740077095dbc0724d0875cd03a46733b67a7a09cce52236817cdb005a7382b69a2f6f7b086e2f0c2f17428077b21e0e249f05fa3b942347ca8a36834e9339d1eeb0c617cf9257b61f515a91ac9eac15ac1db2e89ba9a621accd836f191c877bd7542a530b91b81904b0c7ffe502b486f2c9e8dd3f9e57a4d0e50a58385568e58121c1cc66f2e96d87aa96ebb99f76a11db04019f01c2df369d077644e726d1fdf6bfdc569ea52776868435e4f5a9065cafa86c987f0243ed335def81023035e0342660fe829f67437847e2b583929ff0e5993fecc126a34d802147e6eef8656d6f231968527afbbbc54e42bbe85674754f086388d02fff1246b50f81d53797fed2b21facc055516e202bf3e7485bb1be2d159135490d1fe0167cb9c29ccbcb55d24f1cef3a75f4faeff4e5077da6e971b5451caa3681ddd919b74460fcd6582f2ac68cb809ca449c693526826789a95ea1375b6d611d2f51bf385fb70d1ecb5a40cea3509fea7c9ac01dcc099e2bdb7aececa845948fe1ddd9c925361b7288412818020b929db4756627a6c99c87b5949e0efa104e34ac749149761226d097df92defed9cd33c368a1c5eb083deffec6d4b7514757fb45e397656465df0cbd6a5dbcf3222e5dc1d8f64381d13d2e3d8fcbe9e77e4565411e45695f5483f0d9fb635cd3179947e73245326f8fec637e200444e5d1d1ab2ef0beaaae20f8274dda4d5cf5fbad1102e8f49a897e5a9b77dd8ed46471c71653d82a0650b61935dcdd50338ae817eaec59263ca7dab347f98cb2527337d39972a0cb1a20d3ab3d736fe3060da03544f23884b4cc0b928aa2010da79989a4845e1f875c1de4e5c8d08daf7ea47175d9cf7453b2de10bae42396d8e37e4c86c757170ecafb514c2ff9f70745164c52d352226994d68e2f2d5111eea8e4934acb030dcf6f75e2d2564aefc089db88190ed274e62c23d41266f951ac34bbe833b2bd3165cc1bd30188fc3e89df6977d3c5310c1c10f11e40645c31b00f3216477311c2561d5ad22111b85fc6355a725b765853b09afc80222bf58afd2dc2acb5af7661b09ba7a1683aa92b97407530eb724331f171aacf51798f8a6b596a7329284161382d0b340b931b89afec0a4d449530f5599cf4fdb7e2c90a341e2a8f459399699e637a300a3350c51dc82d895bf78542837c13ae0c866d58346a91b13244d22901bc200567a1f52055b78b37a3c21730a02425b35dd54942476f361f57b64bdfd03bded5f2c48acfab262f970b64a9ce70de741da7ad7ceed97150ec99310320fbfaa82436e110a318f9dfd772e675bbaed693271d37a525ddbd123bf647da23fdc389d5fdc48081f67d2dc3646f03facbaba071da60c1912465b67e3b9edb90d92d72671c9f0b10cc28de353de705e3b3cf4c5e6b4e66126f5d808ea2d912367c455f32399d7a980e86ba127949b0898b44de596c86bc71245d894b3f98aa890db36670344ec5a9f740426b3f53da3bf0a2ef06fd4d6a19c91d050935003b6d862263a0504df79682e94de7f746bdb166e51246fda497749ee2bc5fc8a13b607bff56e6c53751a064bfa5f56052d37a50a3e0c6070c228295009b05d63c3895fad6c562750d57432eae815a6aa154d233afb229cb202cb484c1f6eb9baf9025f38a9df14e8352e7389584565f4ff5a4a1854c17aeb8cb820ba6e254bb649963fea51b63d5ab4f27c31e38dac21d9a76d7d3d7ac1f8e9a610abc775547cce82a42f2f2b15dbe48851c858297efa51f79d25768d4667d823476d3347509d43c40da2a1ea30e75a4c9e28996f6be83eddec648c9f527396e3ec35752dc756dfc31ecc07323afef614a8f2c066693b915a8ecbd85a86e13d0a48cbe5e614d6e26f75744b61305a73b920d7c506941023b469b1e8bafac2aeafd481a3186346156402f0c1a60f9151c76e04ace1db931e12e884eceacfe9cf346fdfbec213a16421aa0ca32b5f8210ebbd3e65c90b04b453785b847dfbcd1d98dbb859e90816d21626852a326841eb579100a7e8e311df0a1bb9563606e8faf52c2f81f25f0051d2ed3719040be5ef167c7f42e0569bc2ec726cdeb174a8ba435c8190c5a1269758399b14b33ddc995411cb693046065a9fec2b25f7ae307926b245efeef33e295734770fce175298b2aacd852704e0836b2d7fac6f01d3aacec4c4c75006db94270702c6a63695dc9986f1b9b2feb13ca3cb6393fcb548fb2fb910ed5dafddcf92ee1ee3931d216ec8b05fd766283fcd12893dc648206c608a40f5665739cfbafe2cebeef03712911f903c21807ff8a45668dd24b0dc600a12161bb5531c6372acdea1668566b1ec2715c162581a0ebee3577e375dab6c4393dca7309aacb182f8bf0bae15364cef0a90c1a132112da918123fcf35490384a75ee8fa3d4571c6e9a835a7eb4560e5239a00236a761f9ae3283de4adab033d56c0594f97464f92a22e6c48440364bc82933b2bf4252e4fdc26ddb6f7afa9de9fafa38eb01fb3e10160c20d8110f2eb0a37c97fcb41bf538198d1788d305eca95f17ae534cf5c0dec7f69cfdf2e119f8ced03ac5bd14351f3bf72992340ed7c885d59b9908ad458244a9fe0e34867d68ee3142dc6351279029804d2fe589b34fb6a30e5276bff1243ea53ed985ccf060c1e901f859607f020c661df0deb2674a4b4df69b12949af424151dad7284c51a1efbef547ae5dad9d5f004f818f8c78629713cf6f34baab611d410f0c0729da91401b9af8d4a5f167f521f2953b5baa104ab6180ef24b011e73796225167175a7ca137a900fb46c10ba36f0fd367ff993be6c51fd1f293d76753d8be22b0a75e2dbcbcec09c665dce683d141f127bfcd4729d0e5ab783e98e89b9061d71267d926b2e07be2d5acc3bf749b3ac1f62d569c950060fce874b1e3ba59cda3770debd49b6df14ab11d89d16a462842c9e0285ab32fa01f76cf1017afe8d4833b2cbcb442032f4778a2f0733838729d967055ed234860ea1f50341dd0c9ecb2b04cd9d6439386dedc641e24111f038b4d30ed98aad73c161a97b582012b92033bff43a591ffbaff6c6286c3e6ad071e90b4a959acce48c6ee13eeb4a6c6fee0853a67a31c19f29d8f9e6a6d83e6fd57e28347159820550608bc1fc4351e5233adf90738f89cfe4746b36dc79828e0ae0157555323040f4701aa52254908ef044c67dd3f9f3797e376b04fbfd7b817a747c6c78e54b47d8cd59af761d5137931bbfbf14216b2bd12be0e59bfd17a9a69f251cc7dabd74f476c5ed9e0f9d6e3870c145e6ef667b940fff8382515c8bfa4130da07152bc7dcd227de5c719a4c3b56ff3de4a0cfa649bcaebcb04afe75d5db941b42d0517217dd867d585c6119460a715664b9257a952ead4d701a97186e811b0916a8c90634637aaf48630e362c21b2414693c6d8558383ee61fd3b99602ec26d470ed750744865bb7e97db5604676ace77bce07617ce77153d3b1fbe9d37a7757cc0168d5b8403ce0f907371283f4e58ca6df785de9d403be0f0173f58d8633951d3a215f03c7e2748f352ca5b343b7d18a81d0dd49e5270c3833d48fdf36c8e10acbd1d6beae21c88661ad4414479764bc5577e6206df653951f5c8837734c35be147dd980e8c6b3692e59dfd6a3e50e3bf7a351e1db3bdb543860347135adb8871bd9eea1666082f710714bd302f084211e4395bfd0fd1717b8d1e0c47b776005c71345cebae8280632f3d776487546facb794795df0c2d09d60176a44ad179e643b515db6b0806950b659200ed47803893a79266e06e596a5b2989aa23e2670b28b55ca3a42fca549a4cf661a161b9450419cd53e896639488464ecee8b82ff571cd47495b9889ea8f4501847d5bd40144ee47cd83749e920b476935c97040663b69d8372af9c2b85f9210450e88bc54fb618a54df2d6b06f7bf3f9ff082acf14021fc7359cb7c91412a8681b9d82b4b1454668306d10a8ac9653771ca6f275c2a55722a3fe95100757f5bd64dde26810d87f95a7d5270ec66d7d7b6057c1ee7e1cd11a1fa9322a1468532018a275a9c8a37e358146b8371190b95244da4d869412a308cde48eb73b8cffac0133084b14978609219ddbcccb5124df9813302755eadf678c51336757cd2da112e4bdda15ea4cd0adb108235c3c41c427bbbe84f6ed21103befb39a48a0b2400878929006ea52bb40a8f89d53f687e2bee37ab2a0060a071ab6a75117157c1a621c607f8bb54444a974bbd03263e5d2e5ab66c3af6aa59d42b54fc720b9e5622ec0636150761df8c434560667d8db385c2518c19c062d452f9b404bc9f8a939131afcba99ff87d66efd70a80ff13c9901595d5089a76fcc1f0912a87a3075e82e2a84bd551cc77b860c6dcc845928d725b35369b6efde86d19b5ed5c47c0b86095126b2514e4818d5bd1c6311acb0f112524ef22a985a31192a3e325a857ae92b42669fe665ae7725ca9b2077d579b853d7613a4d3d8e6ecb25989c4aef95e10b979b8cfa32717daf8a5d4f8d4000373b6bd4bf7f9e5b18c3f5f8aaa22d45e65b9ff8d09f4e3c837d677b62ee7591fcdb225367a999088ed6efd809835816ad13c07445d7f20767e2ab7a435e6886fa051b607fb5191116c0c9282e176d67ae56729d13a589d1b02dcee65ad302b7ceaeeed3ac7c3b73b6317979513758d9183f72aca4faf0b92b2fcf9818c2e74930eb02b84952311f9e29f4285d648fdc683c9128a0e0043e7319db36de107578917f8ef9f2102d71ece3fa43c69ecd6fd341919a7d344aa6eba6fbe7f5519e45a0f4a35afac8cef45a7a2d73acb77b97ba46473c2f043e4ef736bdc284f18c585b418c015e01e92c12c608ed4e374d4a8703dfb4a81ac05bb88fcd5708810ba94c7f32fab322d6c9ee566534de97c08ae21d0045f8d3cf6791086b6bbb63979e6532ed4fc0ca30dae006f122e67573882c3c62be28d9088565f9f3fec3c2ec621b39e802e23c481adb34c2fb89f31df3565c3ee5bc27e010e7a243f7611e783522c816ae744c145c4f67abd4e3e9c035e032b9dba2a658e23f4325335082741b55bd766b9e283088dfa9778859fc0d22af30a144749f119ef04ef94f8c113172fc5d1197b29f8ba6d2ca4533c668b5da463178e92abfce902a8c78ef51590326b0245f601e554ac9b0b166d1db5845c6220d88e8db78597009ac0509d13099c6d3f30705d284c23903724084278d2ed3b9373617e211e5ca4a890b0c27907b93e049a77dfa2327809120516325739f48290c18b3e9dc6621a4d164018ea8148c9f91f1eaca0be47b8937faf939507a72763e4a5d932bf1cf275c801421703033f83cbcaccfcdc90378c67ca3d6a5e9d76956d70048ff45985f8af5498eafebb8ce8fe4bef1b58112f8525ffbfd65c155602283fe5d9e059d6795986b19cb06f643da1a23d1e953220e46d3bff01af2250a6b542c85ff48a619460053b1f03c12000f9ae477485c73ee4bd6787ff270955736113880ab7c62b9a1d19d19b2f9930d28f6a963d636daa7ae16b2b79e632c836c82336abe09985eac9adc4c684b24a287538f0d462c521610b7c61515b00d0d447324642f853ddd015cf9ef13de608f100d9c6c729a1f546f9a8dbf4f488da370fcedf32b1a9b736fd8b4a35b2e65c4fc35f8fab98cd746d2dabad2b33f90c972f0ae4ee9d9a0355fe245667214eb9c88fda6a24050aa31708de084fc31325d272d02c68043ce53d2a1555b2b6b4e5c2a12f79892b3e27f87d3fab684502fac0c78529d14d64de14b0e1d9013ba03850b170df1fe4adc0b0dc8cf2f4bf87d3b416ff245c47ef8026fb8ebcf12fc0eeda364a8431a8ff7a7689f90edf7c3b5bf592f1a3c3cf1484a7724fd68260bf8634664ba7611f1e8df722d670e0b858df263e8cbe37731fdc6f4703c9c25c8fdf62aabe8091b9db5d80eef3f6b66efdd0a657da6ea386273ade1ba2d3ba005854894d52365b9a4c6bea792450dc0a7640c0a71cf5a346756c78675d3def3c44a353c85e63eb6bb1934ff663cf02e4019e0549b00411dcb37752dd9e1bc19c10a2870b4a5966f349fd1b27d553eb551398d64aa4cd782bdc4757fd93e837d31ed5936697525531ca4a7de8c38b71b80857259881d51adb7108358c7418eb5c7a9e450daf3f6c4595dd4da31c4d1782852b24ba6ed7b8a6ddbd4ebfffa515b8a924ef0654e8cc33e33981d6c934647dd8fc31b4050460c0c66332dbc8869bc34e626135ab8429079af6e742c72c38f23b5e0472c6905946a75d2a68d12118680b70dc60380578b78af844321f8c2a951574e404804b41c1146f5f7e6072bc3f61d195bfa01b25aa8f444439ed4c849c64e7a5485f1362d28ddf17bb29d2b6930cdca2752289732738c89ba309f09aac5013f4eccb95a43aacbc3715985c7b882f0625c2aae81861959549844c89ca31cab521a6ed15b29aa0134fbbc01cfd133b8e2bf846b1b6ec3f7206bf9f4a6080c7f3e57b2d80ba4e4dcd1c57795738a4c3ecd8eca32adaed1209bd2e9daac95202b383042e6f75e697b3d4fc0849b7ea527441fddd71467574f0564b8bc01d748307b233ffdb83e0b2178d3ee58e1ee264ee71475e5dc582e2a20ebc571a3f51caa690a4c34acad42e910ae2f22eb572376dc1441d4d7e96617fb1ba7870e56a1222e619c03c8d6222126b47b596e1247ea79256242cbb5d0887b47e9c4c1cae646d254683195785c615981ef89d4411d40554b6803146967dcb0ef5c7d9748edd75048b44ff5baeeaebbeb1e05a450a9e1a8926813c011a2e27d4cd23f41d0e4ca7c4cbc81e9a8928dc582b1c119d24f9b007e98c7cc6082f5cd7ac9b91d554f1b390e87f985365b9bf8cca8cf7034aecfabda7ff9b7b77b7f1d59e1ef94cf4ddfed1625efd27f790ebdf2ef7ca4761c9cd7f1b4a4a4f2d105896213631cda2aa7c402aab32891f8eaadaedff9ec996da0311a5bbfceed25bf0dafbda58522ec6f2238872b070a3a28dadbb6342f8f87e403728158ce2184a27c677642768d9ae89920d4a71720d6f759f3c479fffdcbc4c44eea832c5d31dc7590699e7b780e7e6446be81c8990e69913a66a71166649cd3040403208749e6cd2edb0467655357af5c8d3473b702fb8d3595fc436834c8d610fb6cd70b06fed78546387f6b56f63307602d157ec93ab5b86809b3ca70bf108d71215441b782542d3c6f63df385e5556fc8d758663757614353853af4abd06c21c90a8eea43bcf0f820474bb7b5db855cf5260e8ddeacb1969fd13fe9f7ab8cafa17ec3712bb76704fe32507f43cc559237a147b3e1b61d9e9acaf42eef75a53248cb5a79430f6455cfa8ca55c216b26420269e16cf5b12261578601e48c6c08f7b02ffddcda8f2e022b51f709d84b5af3bdb90e70f0cdba22c28fdd9789109826c743c84219947d915f8005173c630ae2a6fa4c6a9e8d794f3e426fbb4424b633e611ddc3f9e07e1fba021f5eeabe29f17f2c58a6587ea8656f1cc8ba03b1dc41f22acef5e698fa7c94bfa33a44805afeede0498380638e7969463e0f560744ce836b3df369ec2ae17e473cb79600348120274d1ef4dc34960a550c64cc865c4b863e72a02e191ba005bbee0efb1b29cbda2f2c72809bd404c89753dd56d14e9e7ec8ee66d0416f38cd3581056da03a959cdf7ea7478f9da04b0f52676b30f007cb59089f8c2a2d9e015cc7e5b87b6f1c5ebf712b74fb3e26c54797f7e521cae32dbfc573ed1380025e0e7eb95a6a33429eb2e00d4f3ca1c1de7ba65f7d24f02c2749fffe7f9f14c091c0539309f46e5f0e0124a350d3f5c0f1ff039e0e1b4030206459e6386c8f86ce74b20029b7226445dbf0b4c6d1e79dcaeac5632330571c7acaac81eb3661e157edfb86dfe2299703534787d5d5f7779d4ce3330ee5b45f01a7ec1281718f717675e5ba48f142bed6412ba654fb8248188755684dd20727f6bdb51d000cd6e209fde3af7a271706ba08a901f756b14aa8fcf7b9a7d6da29e992e831052e227d44c28d589f8938d0e3b9da33baa8d76ccfe1b2d543e8e7a1053e2fc50ab523d0fc0227473aa2402f647ec9b98f70a915be219e439b9c32bd85abee7924d845afc0ba60950f652044c4fe83486a91af09b842ed307a8e6c0c1ab94e0dba9abd6d4d4a274a56c80531c45dfa1607ecfc3a4cd3f3a3d2718ad2fb9f884c1f97ec9b19bd3affe1905ed4e23520f16cd0ee0d6d2520a72a30f1971e71a189506cf0507721eee942e7486b5e1cf02c2ab09f67d944271bcc59099993bff0ea401b645599aa91fea8ce45574fe4a2cc19bb9801ac8de560bdce41cd00147624bec0ebfeab8e1bf4ae1715fc910b086a0103e9e1b71574ec3119f552f18fa1fec81fa78619e0d147d6c73865e1713d8455f121c564a7bcb31418d7e9b5bad7a7cad370cdd75d3b66e6cd5f2dc638c08cd7c590259724613209a9381a13d6f399ae5655905e848979d8bf290a230010e4793fbbfa42ed638a0ab32e7d5c8e6fbebb1f5e999faad2e30aed402209203cf6411740ef8659a21db25572326fe320b3ccebf49f98eac451f27e242614defd5611f12799e496076fc8eb11dc2dd80b44abc48852f2ee2f66f06702d12947bf86b369b329c8892dae89cbbe25afb346fc8d06ac2701b84264ea896e1c81e52b8c1acfab0e3729d6b561781f240a60d7ed1f931bb0836449f578270acac0cf2461f388b577a2f7ab028abe4298e34d7b07330e6d7301985a7c2276330c5dee0db161ddd582b2064a0f77b991d4687e974282341c3984f643c3892b44228b58f655d5431f668af99120018e294a992241536dfe0590d89465763faa72a05745718b06abb6eac955e2cb5067168ed58f028176954031eaa32fc6f0653f6e048383e10b5eb77843ad6ed6009006253a6e4eb3c4365dbc3c8b58efa8da6a45dcf2c902c20227c4b04c9c6bef0bf8b5a0d5f4f1ba4dd7091b0bf7991d41516b4550a6d649ac980a0ae265463fda6a0d24b59e4d44807fb15f633ac30b3116b46c53d92e5874a3832207702666ea7d8ae55166a77dba06cc3578dc6c79800c62eeab65d77c93c638b4c06f3aed7add7b7579d5b210ffb965b89f4db8a62a230947c5ff1f16b8950541bd83670a1424ff2a002a50d8bad31429973310be4c14ef1ea83208fa96be503f8c0ad5af5d9943a7b67ad01e64d53c5e876dd9a46e1a504de6808b5a8ed45a5c38d348e98c78f1f79425043a536b14999ad70a8a5c5573133b15d243ca56b2c6583e10876600ea3b27ead9ba2a54744ce12311d43a1c366a65039f5e78d16aab22869d97e88c37d39dbc91da371dee7c916bbaa6097029febf41f98b38881f3e6d6775b2481c3d711982c1e3d189780613c913ff9c384d21f80c21c09c7f0ce232f44e5273543bc4f7b650a29bee3d3f438aedfd08153c44f166e218f7892b7d64f176120478b3d1242ee120fff9c4d30bf7381f551f29cd26f56ed8b4e906fa499c0423aa68fa956f9af53330ef9b276c8d3423b470b33e79748c93b98938a9c22c228c32dad79f741221e430864d79226fe1b02150bf312d1a81cd2442659829930f1afec370ad8b542350e4c48a740d2dc86f26482b3dfb779222b1102f59fc53da6f1534fdc1017c0fa3c22776b85d352a83cf269b17bbda5cd930478a92e563644630efd3a77edadda0fa33eb01a020edfdf76d93dd67b5724836823b8a75559a842b1a1383b250c4a4f9d709c3d4af8a33b325e0a355ef2fb9f5298a19a4538c87ef08155c01c7716195200d4288beb613501cdc6926031797677bb9cfe49ae2f28b4d6a7e322d07a245c0f7bbe1729d29696fb2aad279b13db277fb20b9700dc2ca8fdaf344d536b8f7118cd94a362e515565d6fb891a6dd945b176d38a0b93bc6297c6b5426ffdc90ffe6952dfa726d8c4453064059884dc014aa520efb330dc26dffa948293dfe9b0e94bfc6eb2a289a04177522b0468c7ada456b8d7d0e12a9c9c095285b77ec6664749fb2de16b80f74e67d77a0a7172a70e7eba380dd787ebf5313f471f7e6e13980e673eeaf3c5d833bcda11a9b491e97c5f9ca1062170344823a454d105dd7b316c98d44ef0beb562a0cbb3ab5be0c213c95fb12f5aa292ef7300f32d73309febbd584ba80e2df14dd20887e03627d4b06d5d79cfe85204d4741cf4ba011c2efba9bcae2cf4295821195e965cce9fad89282982a6401f56c5db8ef1b6a9d9889e1f22751aa80b371e1d825b99a13895a43dd79dc94c5bd0e0e9730763b79909e7947b19ea043cad638f9f3b31f1aa9270265908e9998220a807b88c5517d7d717647e4e205dc3024cfbc0f4b46110d89727e93a8c6cfffac65d8ea56f860fa14d18553bf7bfc6643ea249179388047ede4c529b73a875398b020b5817153bd81807816e7b2e4f9c2f7c3e767f3409903a1d2c695d166a94e4ded785e111a6b56c05b9df49872045128393da51c96fbe3519ed786e590138c1718bd63609ca38c5cf950b309756266aa0c8ff87d06a611049f0fac5d082cb17e06725bdfad561e0ee1054c401efb32f3ef5b5fc455efd54ad4605d7fed66afa6b6cd652518ba8a3db3bbf12e2631c378a0a01b8ef4a00abab5a34c466ae29a7cd96c61065a97d13c4eabe6befe4f327c8ef2e6af2831887d34d3c73874fc758a1933aacab4349cb38b19bcd7c47aa5c94a1081a9c99db53fc419f700fad6085c2595ea36c301fbafbe41b369b58bd63879e0cb9d7974c2281914928bc9e21e202116cd119b1d2da169e139b8d8a6920a6aa7e7824aa1fc821eec3ded0a9b9d5cb55302ef406b6f2ad9c9bf7ce84ca1db9b70c7dd12ca2a6c2007e27368b556d1cde5f2e60a8315dbf7220736c89cb56a94fe61cd452f5dd6713a68ccf0ae17db15c829d9c3fdd7616cf2a18e1f32a103ed2e93080f408c3f7ec7c92c8ac55b012631f6528bdd46dcff6b4beddf98c0671f2b0b0eafb824b65dfdf0e6b2e6bc5dcae00168763a9a057ed4ab33722db496b743fc43bdb692c5da54bb245eaa6fe78e39389f186b49f1ed5f2613ae1275d1c24b59653dc492a4b8e8b183626cf39a0931b48a5d435ed01af0dd409bb201cf412c5a9081baa79b918ed606800778f075be4b3d7f122857b3d7be144ca324668ea6f604469807e7c2180bfb5fc0ebff5de9b9e31e653eb15d09af59df8075d8c6099e65f0fc99d6a2eeff7ca7d72ed893e02c1a8fc18d807833ac4132cee40589f5fa4dbf0651c80bb105d84aa536c712a2f9117e5d94d53151a5f561e82525692d9ba6084c424245582fdebbb4b2d2baabfd9303e003e1d11a18a4c12dc4329bbf4f17b8c54a7c4051037d1915ab893f078e356054719aefd70781a753c6ab53f373c2ade4c9d113ce6ea7780e9df23ccce4e95033445a4e53c60fb392f2502a51673611d8df7f2243b087835b6e002cc1ae4de249709e866414aabac9f13c1a834f59ebe62b74f261e26a3b52a6c88ff4d3e723a6b7b0b9311067532b46f8d75009fc1211106046ba9ea88214193ff22fd4ac6bb98f085b8e1cac54dab27c68f4c1ada0d34a2d39b0f37604cce2387077c78a1abe92a29e3af8f68116032e84b525f654eeca8d602a5f8995afdbe5eeeb29616fb9e89d44a1c07c7033a32d4d7fbeb6740f0e25c786d92f6f22c327647e34ef917dcc098964481bb606b46bba4b56c76e5d108b8154596def99eb8c509505e5731e18926627f0a5ab9dd67baefb0242e476b0037ff0554f9092cf3e0e8385b54d4d2b7c3675a01d9d95e133e2f22c2a1a5954e60b1853bde8375563d85127a7f44d7968761173df3d8336547219ba65a2400f4d75b98cde5d5060cdc2752b6a9a7c970c25c1391332700430808bb7971b05f355648ab889c49c25b815354075e48be4753c9fdd1eb3c096a7ef6dde3e4224c1846ff71fe249730ed939c18f63347d564de97d1c2e511cb6d32bfc42512194d1059ac947a4276da39d2a63ff073d103727642085086798f4766cdd8464b8d0b52435504dfdd58d5aac98c0c7f61d9816282267032f932e03a3a37d9650cae3448abacae5cf4d3666e0dc7e3c1c6c50e17ef4e89a77e0008308940a9fc51a008d4b93b64764374c38705a9d6fe141323ad0e3ec283bf4004326e1e24743a11258b632b3c296f018469cf97cd82025c0e31ba861259f7c6573fcd098bc73d9b7000fe0c72c8078553863af5000b6e3fa5dd3b7e49e3c3d03f2d57481e9589ac9020d6e634ba10a1f741c005e74e8537a0b407edc837f119aa440eec9696038169be3ce6e6c09b2f780f996ae4d59f4b8f51e27a099baffd325c99047d694ef642f8eebc1a49311b8001362f5d67e286820df95f72fda86ef31c2d1173f5d875d78c5f2b8163560bdb28f055fa60b5623252f2e314c5c448e92301285479e5d0e0c8ee0f8370fabfa88e53210fa3bf237aeba43c955cd11eb05d13555f8a172b800920c395094deaa0c8f4b20aa71de05d3c28ecc7cfb33a3a5126c95892acd970717a1cb89403e54ac4b822ccb4640be9dcf34a518b6238fb0441e045df51c613cd884f19f954621694d0ba20c669eb7766bdf5d930a74b661e8853d9c2b36e3880e327404642573f333d880fe61b338908a510ba7bf2dd523b5c13a232b0615c6aee91194bf52f75bb5e98aa7817fad6d34b407d2316f7535e2b63d6eac10f62c045a5e72bcf0666bb26dd941304984007a13997aa25edd451555645ad6c13d66686805186b682c2c0f4ecbed7bb20d3f48a0cabc0ad177a61caf0e0a4a7c0e04f9d3c197ec887f22a2ab1b224e2930608c4813d3d61ea9a21e5dfc8e9895716f3a7daada51a5bb4dc3c91d851654e33709b4aa1ae63e69a2e4842aa1cdd96f141080eccd8e61988843ac81a70dd2cbe81173488eb0ab858254df844a2e3008d177d919723a7a8f74d602677a7f3fc6583535fcf5fe8b5f81d9545c00cb824123789a8f40afcfc2579359286d0eee45a38eb3d95dff494422a3856b37b226320a9c9c4e0053a95d2929e0214201badaabf9b8749cb4ccff766476d6772be95b60f781134a7b33cef5004b9d6292573fb9ecbd9ae71afe4ce0589f768e12209a4febc84d04882b16428073f9c91639017b1a01578060f56dd0800d44e69029913fc68435515d9742d844c594fa6e81dd5b5d524eb0ae1310364075b3c271615e1b3e7c0a47e23aafc4278c55b9e0f392ba21416bfdcd99d400807fbc41dec74ccb7deaa91cfcc591bdebfbe76a10f9cb92df981ede9b5a5ef70e25b4d8ad530f600bf2047071b724aec0b199f11210269144295a8b9dfc1c0482aceb2260dbcba6948544982c9ecd63254055c3c6cf57400823d9fb318b4a20305a242218085ea848b6298b9c0e56190f93f9301a4948b7bd45751abd3484b06ad03f470465fe9b9dfa56c1c2d666509f56e4384e190938d44eeabba4220454702c512afebb1b1aeac14bbc4ea46d08d45b7476d012d8c13bd7a8ae895d284078d8a27c69cbd5c3e7cd97be4c765eea7c5977d03f43c5c8b829da0146241e31775d7d6a96886c6d523747f0c4d425028bea4b87315510985092f1979cbfacc298017dd9438e2409b2e74646e9d3862e3f89334ee8fcbd2d899aa2ae121b870612b5594f6e41bdcf6f47795e72f56dd134dc53b9dba45a37e5078d7d716cde432f63766226fb9ecae2439d3e6d376e366af664eb19fd1b9d816101634e9527b5464b3fce3350e5a6de86f40b7e81400478dfef84479639573414d20c62d10dd30762ee4e9e8ea6f012cddb23ce385553b34038fbc53a2bfbecf5cabe6bed6bb13a7264bc8b5397267cc2382675bdadfb1034f2282ba6eadc907bb2ed2c5b08530cb6946b30f40d602c72303b1c3aecb002d64e9d001ee892394daec966b9d5155cabfb2f5f9b06f83a210a897bd44e48af795351efcecec105b2f0a79ad5759489aa776c9339d07571c302e673163762d95c26314bb4981af645286c82e33891d96ce0984fdf972e36a58030fd9a8c4b1735d13fabadce46d43a7c5354488f6487b54a3555aa50edd04aa14f197b20d3bdfc03c265a993b85eddaff1fd71bcf0ae218c23f376fc6b6bbea87549bc0bbcb9134f8625aaf316ff0885fc6543b32462fed4de5615d256cd544479e4d2e87b4e8b356f4b66f65ed239e501758bb6865d584359180abfc8010fabd88c626abf837f7226c55a55073027afb7376b5730b052926b1172172c244edc893a7f288208409c8d68b42c1ed6b8a8a4dbefe04411ddb068638312960f5fc2828a927455b36453587979d3a47b76250b039e3c002f8a91e7b93094cbe6fa5d3bd62e7b3a05821e0e68a3b12ec07a53f79cb137065c82c3bdd7438930bae40b891a287de5cedc88f422c389e9ae3dae9c0d8d89968c95950bf0150ec784293c522ff29364beb90c14411db5dbd624765b23aef661cdc4a858e922deeaa5e944794d12567a18188bbbdf10f5dbd294d371c7b50b44cf9ae458b77189b51abf9587aeda4833bc48cea5524eaab57756a539668cfc70d1f4a940fe5d5b9e4ed051d01cbb0d0b19706c685b4a56fe2eb63d9e69cb1ca527e62e757f0561086b4cf7b6ead0e4752e1e135eea50413da96a8257893d5be426850a04ba0671a5c30a38c77d603d1be5849406ae1f4a3b5c36384d85180e63c28fb2377dcb9500cd8c38265386a4ff847fe376360fbdcb79e6ba8978a119d5d6fee22d0394fcf900c40a678940a2ba56663f63e217d742d1fd0a1f59a9bb73271698bae241eb19e54a73affd203e23ff76e604d88ac554f650d5bffde0a0944c2a98882717b8b403f13ae6aeaa35318f58a559d88ada38e31c01ff66e9210228b5271618cc95c6c25953ce21440e3c84be0db60c51c16477aa851789303bc6812679523f2936663d6dca1ddda74f8503083d28929a1c653e0391a5fb978c118fae4d243c8b6fe0b86454c21894f7e6448cd6109269503bb13bafcab1251e4304e9755ef2bb9f852b6ed2ea39cfec808c6d8527015474fae73d2a7ac7d45023f3ec0b3a8d6ecde7d0dff8ad9c0c0f36458fe3af943f8cc90af82e6f7bb611b1cf9365334e6092d243447be61c6963da65a0420c3b0dd9e711ac8c3ffe345d14d797ae4ba337949e5c468f9d1d0670c8222ea77608e5ea7b84c7c760db916dd2e98ee8d608064fde762a74463a1eee217b1d1e7c3dd3c5951ba778523fc94c6336706c97088102676fd855765e3fad4e883d00c64f46f9fb4870213d32f63f72f984cb9d9fec1d7239ae305cd3274e3b2a797f964f97d7d86e11d4eabf93d0031bc29473874e3218d428ba51348c9bc92f82239547fa01d98dde2f7826360b0629f6d4c835a3bf04c107740e5859f420be746c7ac6ba45ad839212bb2cec7290ff3b84fab67d5bd6ef1934199ce84b71c6e50823f5cdec15472293049f06aa927d3d9631b89a7a83971588aef26212ba4a87da45b6bfe13b3895ac009a6e60c1b19b2e5f01b8ceae881e1b350117d1eb9ac6c00128f7f9fde91ffcf66d6566905000392815fed4c15acc7c073ae5dd8e0de84e10ad5d0885795aac59e2bdcbe2334488ee74f4091c95f93662b4a30e8e13d3d5e4513fe7d11d97f5ff1a362e7353edb0ef35b2a6ebb576e0b8465be025d749af0a690f249d864e174002bb2fc5fa14a2b4a57968999b4d20d0608f7fa0c5b7400a5c6a1e8a41d917bce8d040d51b6ac814a827543aae601b8accd539d9a7cb0e2d3e62239c89721d3dd02c4aa14da4f87f7923339c98f3cec99726c4d5b0bcfd69360d0a54b8566772bd945730026fc201b9d44ae258824eb064730eacb24b414a54a13a335184e053b602dc947b72210ed7943e825446d184412d75c6ee42e831b302b0483da366e726b92b91d2e209356e9f8fc7f0171312ffb62dab1365bd139e0a0ed9491bd7a0342c66529613ce2529916c7bdbb0c92464a79a8a6960b72913e28d6452212e5a89b88464d5b67e419b427f0ae56743cf938b3c68714da858f1529c981650120899b45a739c8fea254a968476d06224fcdb9f41a6f590ba0864c88d77644194578225df30ec9d914b3a0a30e9f6b8d7651f85380bd83843b3c633b3f845cdcbafbfa2e38702b3384e389519226d25f5bc75c72e341306c56ac4b63778dff87893aa96de11f57db4b0169da64f21bf76c436df89dbeec1cda9e79d172ac638ba37e5341e14ca008703f6a77f38e9c346cf84dc23d9d098accf2e724aec0d2f7d1317179cd28f457864dabd3cd8971e124f12bccb59e7ae4c82ff71ec90bd004dbb0e2b0f504adbeefedbc385c30603e72bfe574b1c6d8a612efc3fb5e0f2c84caf3415f56012578b1e61bff2c57e6ec862db7794029c79ab4b726ad2118c2b623d63034f14aa541e9a35d8384a1083181c90ae6a69d238fbe1fbd7d3027fadcec1f796dce67ee411356f28d61226c527dd38b0f4bb9c1206e58f48e395397e464f5d3c5ff5f5c61e8224d79d5234b96330e9d33a0361f365af60d43b7fa97ff43868323c60596b4a84128b183b6f675cb14fcbdcc0c936e3c356300eb877dc1fade8f9e3850acd9df94c567fe465f73a656fac348e86b09c1cf5b1920a301f4211b07209a71f53d67d41848124edfe55b8f0ef0b229b134deaad880c22dea5961b61b9fc914f43c26942a48ebf90bff6f47a8bd97492f61a1d7e2cf3bab3c6e6d34665358295d0be517deea3e79690b8fe4934bb601464c5054f1350c649207b774a835fa1719fab78f73842e1c276d09a9570f26b4556acf352179e4054fd9baaffb11d1128bdbd5e7462a2bf08812746d42875cbd65554165554e9bcc1c177d11b320ac728b386d839f661c4d93bd58dd161578716ef993b6283f863bbc42f4680d4bba1dbb6c8e8e884afc8400d004bf7401d2a072434404a186f02c9e265273ff201b1a5ed7fcd872f9d2dca9ae78b5b8bb876610a9d0b2341ae581d126a51fb982954b79cba102fcc3fd63323e340d5a9beb3a9fd45bd484dc832de56b7663db9d29164e6b5ac37c5393806887b85bf8ade59742aabaa87b3a0a8a6c1e784603074324771eca163fbe8ae2b0ee3e67bf2025fdda182744924fcdd99105dc407ec5542c2ef1d16de3c6e6a8423d95c2ddac9393328061ef1f6c581d57a6c456bdb88217231bbabc4209d1d7ddd1b37a5078ffbecd7bac9c02ed7dd434278565647ec37299bf5a052df984f241fcac2bf4d2794900a211e65177fd21516c682212b67710b5c973c10353bc18e944410e68a3b50e488af14e75028b6f4bc291a799a19d40d8743ec1ceeb153ac59c1a7578f99643f4ae169067eec408417daf79d186a62d5506bf53bb6684f672e985e69a5232ab77e9a0d20c01a683b004de9f9da2f6621724ea903d72a2ab6a4ceaca000e9aa8c30afaf9e44cbd6f2fa7f0a0785daa1982624de9b296f918d1d389e29ef84b5011737a91d82b704950dceb5c2b97e91e1f56459390ed3cae6f116ece9fbbf480c066bd0edcfbd4a5a05f8c020374863817c9ef6dff8fda5186ef9a18027c344450ccfa67f7955ed51e14c8ff3d7338383ab318ac03d488911b33fd968fdf5b5e71fd2a1913bbee7e87a46e4aa78aad1bc3aa9fd9c579dd3ec0f6bf74806297740ccf08ba3fbb829b75ec243983c6b40608c571a31540be949615aa145c6550f2f1548f354a5af0a86881b8e87252352c190526983cf1afdf163c15268fc572babe332fb1e2c2ff6b0a0537d6877c4365d0244271ed00ccac3fb17a73b5fcc949fc4ba213bc104d92b59348494bb7be5f9181f8fc1fd13d8fdfc16e53522b184ce943af2d684af3762f148dff2d4dd319e9b4fd45aa654061046717896a131896f74f04fd12508de078e1983d013020521bc9f59ecbbb6b25af9e6da2ecddfdf3db67d8b25d41a8217cafdaeb58a00e5a48496c59caa85af7f0396f8c7f76eb5c5e12b44418ccca192db968f577d2a66051e2311f5ba6763ae2606b45b9c8bd8b9a2aaf48561b8cf95d8c985acf9644088911491bce8c6f2e607847ef58c7a081ca2ee5935ee1a5f771ba23cc3c89c43d5d62dce179f0a290c0082127221add862adb2c80db1033ab4a88a6c4196c7615d7b974dcdfd5e6443d9982321822c552474131bb5ed30f3f879f618d42da7b34617691f4d1d70a9ca07c1839710cf2300412c7a9783e941eac7816e75e707b5346e7f38eb4d08cc19d7ebf6ba71eea115efe1a2bf5d0d1d6f4d2f9c08d7b943b1e751f15c16f995c96ec4f81b1e8a9ef864c40ab5c145c9c4799c4d73aa6f03eb1d2556f1a74cdb868b9af0481ab53d2e2f8f55eb9e848f67504a53f6d9b62629c2d4395a5575a1ba5973589e6da8f9d3a1443cf8f4b1f51197968f31cd6ac72233ae662653fd6cad069c4f25c8e1651ed83189a1c0d083368d6d1fc48c9db48b64f14ff0032cacbccd9e35f7b66df8ccbaa3ae960c3bf3a184bd35ca172dc2af6f53081d752aa5c788cb69c8f253f37c003818a2f5a1721b3e5c1a8ae4238491a7b0645a8b1f0fe728d5358d93aaeda871c16367a0bccb1b827ca49a4abc609c2ebb23d1fead9647b1a369cb914a4e0ab5145b93eb41b1e9ea9976a596f417030fdbf5d857f3d87069a46759db8ba43b057213942ce6c7b9229d5f438188753ff82a2ece23cb2a531ae1105d4d7f7392b6a404f2435dda09e116eac3a7f8b1a87bfabcce28b3287341e3762957f7225c119f04803e79ca79947052808fadc5d0a919ef557f38940ee6e65c005c53eb6261b62cf2a25acd259c99cf27599c46b1cf2f17247f1b9ee3f5ddd94f779cd982045d44a4bf5e3938fa08649be163e6d8ace299ea1a3d63d554ffe2d1746a36036d0cc1c236d674fa9d5a093de680d1c1dab3e3e7b1594b1eaad8cd554dc99cedef593611e6c26c2ed5c9c027a7f5c7323a309d0021f746b999826fb3b93de2c6ea6e97c086680ef2684165c806c170dc7923a7a8f87191c36294dc8e0f9a8758ff1223cbc5ef0da8c4b791fa792c90533dc72355afa2576e29804f5746668266d6feffe12071494368147dccbdf7b08491417e0f7d95e3843072cf658030ec0755574b5a41b6a61469d4135b3c03639658efaf7a4997053ea2824246ca393f4564dd49f6d60ae50264356ce9eae8e3e9b41e4256ffbff32c18a67d184765ae2a084f421e7e1b9a97a3deaee2836f1645d50eda72a82c92cfa13fcf6fc78e68db8fe87bdb778beabf5ebc36a309c5e69d3d7737e7ddaa919a5bf1602fb5e7493a85261b6121a66421e6965c32a2f6e19ac2afdf13c0c123b32fc16aa0527cf8ca40f2602089ee87aa2bf0a42466b9211a412ec982a7b5f44b2d23a1312e14330f6df85e7c759aec709d9a8b81e04f6389291f44a242822b9091ac9a529a49ff6d5af49f82393dbfce37374fd898b3e6c82b4301489eab861d7bf98f92630a3e7dff396639da994e74cca44c75d13fe60e6358830fe3d95af316134686555ae630b49105d932814aedef271976537b73fc572e0e9935424a454da5f2a4a6eb99d6773d66174c0172ccf278e10d634f72b0a8097c726bfc6cf0b244e9e129d9b10d944ea1d4c03399a5b0b6420f00f2f08640159ecc3ed3a0bde37dbecfe5d49258c1776b97e7b762cf3be7ff05371ae69b7d1569dad04be80e760ee3834e47f8c7db628b287ec63331d92543929a4a52718c69dab5845eccd2160380408d6e90f49649356b4f2e4caf1d5a3920f10e24a1c5dab794504fb58516f808cd0612fdbac91fa77c9096ccf6e0efac33bc9d646b15f868a431209652239c291b865072bcb0aa0ca12d8ab78ba2280c7e5420a4549f1ac7d69e1691d360ef2b165afff98e6e3840c1e2ca9b56d446c3abe8f3f2a02290d9cb5018516fa30717ed48af03b2be300911b7ebfc80e8a0ef02c9cf4090cd4413e0d4efae0073c65ce26300564579bc390c1ef0ec445c104e831780b5e6b12a11c5341b6455152f80cba765bab574671ed8c8e6c324d7fc8f495f50d5aafc4aa0b2eb874ab8e976653251d466e5bea78e20d0c494579532c6fe800c52579fbb5324e58976308cec82c3beab4d6e003cbffde38d5c13e281d1ef80bf76517606c351b7203e79a40362832fa849433cbe70c2163ac451a047c65d4d6376bcfef797f89dcc72c031e99630c89bd09b5b7e535f1bfeb35a11fe2bdccab4f4cf9cda764f8b4d09a217b5f78cbc1f986b126b7aea6852417f7d2591448b68046de4558658142392bb8f06cf2b8019e8d850d944b579650dafc5eb27ce31bf158a16d51df1d22bdd4cfd102829b7704f4d33afb6d06b661b84eabea470ebb975427f4a5373ef6589901cefb32cff0df7d889f3a045d7ce8006df01e12b14040184006859a33e86bb6c91706f1ea1f72c095c8790a0c0a311105736736e34dfa071eb47ed5745cea9da01dd35b6d83fa70badba3b739c1f0fa278f84cf0391df3cc13eaf607a3989da06404228b239cd4955b601ee13339e2a123d2330f3c2b13ede8eba7ccc4b394832fde8b6179db1377aa0a1be6d9db156ac0eaf0092f6c141456c7b97dff85ee857aadaefc8d3488e43728fc2ab5594c49dc6d519e66f3e31ed71c41e345381981932b32b46b6d23ab92b486ee563f74585f2b02920da49173ccf584bc942726606e0e66f0ec5d2be13fa40a6e01f8c5365a054b3bc55fe2e3205c8e7fcd0fc7b6a6cf758f9d39def03015ec20fd83383088ca3d9e29b3166d4e265095c15d3b9b922739e47f4c471b23eb0eeac2e376a58fc82a77ce78c1f7cc9723ed9b830fb88f48d3b8b9189797ec6368dbe37d106b0658b2a34d8701d833326937a677fe4bf40691cfa72cb692a296809f89dcd8213dbcb9fdac88d56daceef3458efa813076b311f0cf0e851b2762303004ceeed915a1648c79956347c8ceb331724a0a70e5f228f541fea26e331d713cd58e94107eefe0ff7cdce3e7bbd6662bf4a1feeb0036d165976bdcbce9cbde0474fc1d4da2b683c364ef86cce490ba9c881e21b3b495684056cf3b2155f1442711b67fc076329cec127e604bfa4c6684f422cae2af50e7b527c6968077ac1d9df477b8807b5978d2fe1b3074a70fdd0f61ef00e3689fe6ec3a5bd79fbc9847acc5ee142dd3e2981463ed24f9c553631a937975c680d0e5fa57e161f0494e5a239d5d9013c3a6f5fad34726fe45af69495ea1f6d30c2ba0e42fe6ec0b1bd388ae2524f5da4d79a44b8042d0623f7330647ef99795b5d3cad8cea74754b8ab767cf400fab28e5d14c44dfbc3f53685040edeede28a4557ad472cbbf68ce4b054496ce8830b53b22d25f56064d043f33b880977dac4aabd3372b61db3a04802f77a92697415c9bee7bd4c4bd3bdf17e348ab74fb134ff9e52df13d8f37f7549a83a78e658076d02a528250f25fa47acc1f430c4e84f2257d7c1acbdd5839b601bb4c27242beb85894d9bc3381d48fb4a4c26c433d27c7d5291038009c8e24bf20192bfc66d779eaeb4eca172374a6c23a22fda2b05f5d0cad737bba5393de45305266ee05638de4a2c3486ef4072a1d794bba3a62c83e48c0eaac4db87c6bef684534d4baebd2d93592f497e69adafb3c59dca2a75734ea531d26a091a5b9e9c2d9597fc6e04707b556ad0d26e4a2cbdf91d9c904af078dfce6a8a4da431b5f5bbd38956bb474c1daf247f60248bf596acf707cbd3336278c2c4049d0a252ed9a4735b72ae8e979ee96c01a82893f1d83e4f3caca990a25c9e59e5d57e52b5918bab4420bd7c4cf08c9e429a3adf4da8f45b9f2c17a371e5ce0cb46f877214e8f1356f32a8b4881d000194572af988446316eb4f887d8aeafd344d3bc2184939efa4f74e06a18119b72afdf72fe03d78561b244e6b5e0eaff67523c6c50dc55e9a8616e5e6ee9ca9513b7aba1fdfb0658482e7c1e5d40d70742c05d2e7f29f816067c208a64dd5dc559f418c49038e17b3a23650150852841dba3df2617403df390201ed48f4de4922be46754328e76f5be4eadfe594fad81e1f4a83af28f6d12e7a0d90d9e0a1d3081067775015db0c8ab4e92e85aa076b791bdd7302e97a0cc64277b82673d3c87d1f3c100fab2d0f2a79578d170b3eb1d0f03ca79d89bd3abb958baa48679dd167f356fb0fb68f3961e50d4955b6c0142713c3f755b71d6f7edaa81389aed5e3a0cdc32022fe8909d14b3a8da7c18ea5458df8d5755ecf4344b0637f04231a7fba8e213225a4e4317e224eaaf68827599c4bd11c6aa793b831c3469dba1777d2053577155f83b7a71ad4513eddbebeef591520d7807d63adb2f5a91f3ab039de79a80e18557287624406b5a12d62b0907443052d350496a323057de36d268cd22a30cdcd0e3b5d6879fb5749860d53374307bf46a7c24169b938b67dfefe456dda358b63513f1cbc4baaf721251da7cacb94eebd6745054f57b2c2a3b83742ff8e887c3f5dbdf356b7d5ae1504daac3930eb9db5630cddae479c32a9714d99a1c7485a73238e83f95f5ce669bb7a09b654ff00de37ae1daeaee71d069ca0c4de2bff037c21023fa9400f26b9a2c82ceecc36b153110383f1c438ef65a6bc7d9bca6506962910dd21dfd658a2ce69a9f827db3c6ecca8310a7d1ab64221d8be5bac8ef97d46ad6040b710d2f77d3f5cbab21b46090a1a497f2f293da3ab1c8c38855ea59f60796488b4ce25e0c0eb0a7f4e4f15ac5ec74490a964280dfc9c80c3ccc12a4d1e8d7396050756c74498d89eb3468d0f2c50ecdf0d693af10553e6b09aa96e556d3700192dcf01c4fbf521119a69e01b1f8561c6e05478e5709fa8e2338066cb6e3f53bb1dacf3400a386b32cc33ca8ea99b77008727f7cb7f15bfeac596ff9466251b91f5faec9d3c3e6c13e8ae939110821491924e614bb6bf9a4fcea8a7f05baa644141b42c18c455c76bd91395b40bcfb7f9a28039f860c60638b8e28608635e4d5b02678bb2a933ea7e1d048fad22cbc71e97c9984a6611d454bc89cdad603d963b7e5aad6932353db91dceb3ce569e00a1391f507c59cf0bf4c7e263545b7f6e5eaa1e9046751a454e882c8d5b0f76be512561dc97a93c60e9232c6a1c681f709bae193ac9ba38369da5a138fe1102d9b7ef04c5d7bd49c3e4719f718d08b225a95c451b022db44dff70a1af239a4ad2ad2e0c590084485cb6226fc95756ee4e3032704c867e8eb8b60e5a10ce12feb7654f66df6a9c6177749a4f84d21872d3026682ba6cb56df1e7cd3154c871a385b81de3106c731f13578d9286503f3e6d0745b75d3fc858620a1b02e55effacf552a7cfcd7356f49c6d08435c583b63a9e67420f026c0b8dcbd0c747c0aba08a96a7fd704b1f43a6612176626cc20228a6d54fb3cb0f8df18da8c70dcefb7fc030fa1eebab76c47696e9261392014851b7beda8aa3c33f3a03c92011d25ecd263886122a973bf347e0b92f47d405afe707f1431ca815f99702f5d35c3709dcce0ebaa6b261a3e0e453a8662fdb205a4739a20a1d57bf8fddc96383bae7b09e631ab0e26c549030ace62f709761625893f02002439cacbc02b638f88326fa7da59e785e2a3efc8321d65179387484820dee10c02039e612101f14de9222ca1c42751ed4c84e7f4791856178a4c9f6769f36025a9527cc5c8ccd3d83f614f7b1f020f575187382955fff193c590582ff94969c2346896e6a33ad6860785898da025a656fd923d7fe868df37a34a102916431f8ed1eb8b26d78c17bd2f4241bcd69d62c0de62f686f2de5a0301fa584274e8a0fa1f1de52ba6f938779a23654b2aa394936ac16a097090d606efbec3476f595d8a59ea21f8173ee9cbe63edcdd8cbf480d6be16a3728524ebe3005b15721f54906b7c75ba08d0b38751c855ecdf22fd261b5adb3575c38e2ab63f2be536352b6df2cb990f219617bcc58aa433510852d7821260d13a04d37d56f737f3cb285c7cb96413c00446cbb347162b2c0c4080ebe2e5327894dfe16cc4b1158582345c1690db50c98ee4dc1e376972da37a1bc2c117b70e6827138ba1b91dfd1ff4b2e3dbf556d9b5acd7b81cccfdb43ed9416b1644c8941267c16b08ec936d21fab528beb260097c255d8eb65b3fe228fd0f991b079a66745c43fec4320fa80631052fb411cb353407c59035ad9ef6dab8edd3825d43aed3ae6bba0872dc872220cf0159d85bebb6a95f132b1f8ef98bb49396c60163f3ce7e72a1f119b52c624df4a407e47b2df232d7ded4e7b0de72b4ffe32caffbae8ada581bdf6895e836f16d1acf30eef5932da75075aeb961ab749f66aa1a256c53c78271cbb71ece7046601d4417e9cc333546043a0f3c51dfc54290897587478837800cad754502380e89b37bd1c60ec3e833c4ca0636580696e618719d3083fafaac2d1666510447af7324050fe5c42a7c595d806386f04a8190a8bec33a5c11f7e8f1db9fc8df4911d7a23bf9444c2191a555cf3b01ebea073cf83a7717eb113135cc2384f6f92e7b6f8a553695fea0f8d4bf5f3b72679ae8a6363fba3fc93e45fb62e6a17cb54f55e61fc056618466e04f65aee6e7c2849fc39ed07371b3c5bd97fd2e62580647143bf72530dff4df98bfab43324e43ac63f1dd19e932660fa0be16fa1bce4a46fc16177284de7378f6a33b71fa9bfa3eb5c39e469b34788ab2eaf29f7f79c8248c11b4c8fee40cdb77b84d23497d43895491f0a058eb62adb80a142f0ad5d72a6e4a518224de4cfe6d30a65beb5a7d8344ceae0a84fd22c04712e60438f63034b00fcd5577eb7aab3e46edf0d6dbcc852298f6b4832463fee76d292d0b6c7346f2436722c5656ad7c52775d199c60ea5d61c980de2f1c2c18e0986064a51cb38228c89ced48ce3dde033bfae408774eaa1c03acfa792bef447a249e7e8998d0c78756eea37eb4b8bd868cdc46c51691a3f301d88e78bf22d4fea4cd62f045262356f8edba8753daa92af6f7e8845dedcab9e8cec8efc3decd1a0bf4336e1ef49bcf1278f91a65bd242166044e052775b82ffba3ea00708b1445c1ab3a74d176ad3cd826b6d5992a206410e50dda90bea7cdac813ae205dceebe5a2ad4740993afc0dbe2779a13b034cd52afaa7bb3be8ca067352acaa5aed789fb3f981bc0705f59db9ba1f5ed075de38ee9a922f6a18d2401b3a23604042cb5bf776502aa367d0eebd43373a3a6539f56d3f8dff2c7ba1787432a2c7beb26a9043fdab3ef807b0768d47ad5c13e1a63f2074faa8a983a1f478aaf2281e7eaf132fec21be4349c4cd50601e6028fcabba81296eb1f2e698c14c3727cb603d0d3b7d8a58f13428d0ec703d3ea7be9df704a0332ff1180b2bf2103f1d2ddce2781f41a220477e049e8a233b09f3f5ab9930e85d00d2af41dcbee64970df15c44679247cc746a2068a9ebfb52602ff2d0da60bcb5e69535d7b4a5c043ef842cff0df28b93be6ff4a3003e81d4426f270f632402cb2f65208d5a282407737276fb78b99164820e741144f7f1f2580af68cb535201c340967fe0585d38ef812051ea3dfd69b43297256ddc039597e3865bfa80fdfb057401b4069aa6480c9272c7395ac522718b3a6e432096b820847672f2c2a05773a4f2cc37cf21b611509f9115225bc9af50ae6f1613648bddeb536839acefa87d9c099dbe418f7374d500c86a48c49752675659b6c2410f54c344425d8193da2c9f7fb6415c19c4c7a4095057981bea8fa0bb1b8dfe80a656897362612c392a7cfe960bd359d6296e3729f6873b983377db72225c2afb301761426d64b2837f5b53b419cd6129c824d3638faea5aeac2fe0903fca7cc9c55ac691f222030194be74b7b7b58f12da4ce57e121f843be5d507b639bbbf96460df5642bb8c4773a3641c2a02242761595162a401868019c15bcb132e89682b70ba423ca4bd1b64bb52e82562771e4a0dc6e9f94ed80d78a506f0f1a181af11dcfbd9ba743906af632274c87407666a454410572e4c804849f336f25962eeb4f9b3da0ebb551fea291997050fc72d4b7bd93cf0467380a37aa824317848ab38d4693757533974830e418d3540290b425f140c90e4e14cf7d71e3786fcb32292b93bb4337d8edc8e8cf668ad36632d3f0c497e2a8cf885a26593bed5480a039457541e717aca743abdaf7f47821c3cd7319f8a3d5695dd4c94f340e3dcd13182cad8d3ba591373376a9f13d6734b946b5a8999835a73a917414146117cda2838bdcc896746da7f380841e682bbbff06821e33d37fcd4a8eaa981f67363675fc901530eda3ea5aca5b2b5259a20db5fada13dd384075936fd63680de216452693163beacf2e95081e5e87198bdf3b57bf13266f68ba7d99b012e26930591e3800671975fb66c393094625443a666b161864b5daca5b69c884b6a53ac53785c9c7101a5825afcc111c57554a36a994caff4d962d638d30b6cc973c779305d2d83e15045075307e8f3400ccd00097370887b2c15a01f8f4438e2f282876ad4e54c05b73d1a63b7c9f03335a64cbed56a53f8a3c8a5d4ba28fc9888df124546fc29cf2848b3d65196a40a5bb31122e09f1c5f467fd1101d716a97d9679c2e2bd4038158627533b6402aedc1f2b08f4798ef668ace8e1dd97dce16050a040bc6506542fdafbbe3a30971facc88fd21496df72613823941ae56855a0a08162f8ba00ff8d217f49cbe7e1f082f1ddc19774c0e2b5240affca49dcab1e87db937c970f7334a9ab19b5d0d9e575a253cdefc96aa92163fda4b7bf734d1f2313e238fb08fb76aaebb888ca0bd9ba936e8f63ed38442654d70e2d38fc92d154eea34eaba5450c00f33d7a65703ac1a9f6084cb15d759d6eba638d3570abc265bee57695bc113018c75b9d1099759350a130d6ec6e3102099718133097808e57bf26c4dfcfefe05230c5ce6cc41726cb779be68d2ae01d1292ae4e211c19fced8420c8a4b30c636b2a7ca0a393fe61a52338aa31e84b6610f76ba16d4b0e527ee8540370351a3d246170aa56eabd5be805e120a68329fb68bba0b5c207e572041e2043dc379aecb7ec98afe1fcedf8096192c5a89535b0cc5cf9cb66f6e08b8a276350cbc6ec60802b3f1953b154552bfed444479e529d518f539272c190e3f7d882d0da47d205e285db88fec20d831fde0ccaf392b54ea60a710d92e9c1d2dc1c0167a66261c27ce75221c818c189097526671a129498149830e0a099bfd59a04f666e49c29475088ce4103ab99a82321a8e9c4ea370fda3519433a63ad62ff3a83bf30c026c485bc35cad1ba6ddabdd31257c757a5e2014afc24f15b992a73bb3067dec01320d77ed96d419b6cced4141127d36dba6cf03d376c2dfdda0caf1a915ba1e46b77c1a30241915f4906a239353508ed7bb04719fee2d5785e218956b11ccb8a0c1c46707e6a6c366e440d93e068a50035682343d185b044095ce05015ef73231f6cb5223ddf1a354cc0c145294a63b856e3e4b5f5a34eb5ff97aac33364bf530922b113980f5491002081d5fa19cd200c882aeacf76ce9b700d40b1407669d411db1d6dbf605cd3e2f5a310105b199570672ca6e5d0b011ec3a3d2a11e40cf3883a56ab394c6b9411d9ca876b27aa4334bd7d784b2366771990f419c57e702bab31ffc440fdd44a7500f7673bf777983f8907b420852095c50e1d21e33ed0faee4461858d15be40ae9969fd4598e8bf72921c892242a2a83f3114fd552b94b47b6dbc6de7d4c6b88b9186028856c4732ea3c3012e32e525a11a9c9fd13c9c614a9310312e082900274b040703a1df20800cec74fb5d5757905128d5e4854f970e2f2b1af8cb0f1de937734e9b24f58e9759e0fba4b58e6f184af9387444cf89cb92373bb63d3378c54bad9af59fc0ba96120a4165a822b3c26d268701faed17646c45b6780c19ba1162768499dfb22c86c9cec105732c165a92fad55630ac10bad8a23de6677f90cc9037d81977f6f6d04a5e4224209c560c9229e08579173a2076ea2be46277331aee89611aec3cfa5ad1a25941d7e7cb303be3d38269db5e02db0ef6a8a977cf1811e1cf17b4f18dcf87c1f0a1b4f364a19362f360c283dc6910698aed6afd0d5d96c9bfbdbd2f637504953a7058304d91bab5bf710dc612bc18d0f7bb57ba7d5ade0903e74ec54f8c81091ee5221bbcbe6d611fe2a47f9471a1edb9cda0716a1a920b8b9afaab267cd0028a72db066bd32915cef4df37a021e23cb352df6c4ac7733a714cc821a43ca031515cbd64b7ce46f72cd6870941af688b9903db7cb840e08a3f97207a9a9ccc52d53cc51f113d67b899210dbbe56d5bc2583d74ecdb8f9bb4b53a42226507fb68ba81762f8be46ca24ab5f99b7def9ec4dfb313c3a53ea1bcfaecc6a7fbb8adf0ae77b12c98f0e2ee5362fccacee86fbfd41eda6e67b0a2f4e64d06baad907b05bf645a5c99b6fe327de14a7891b8dda52f8eac3603a95dae6ada1c898bcbed1222ca220e918c25eeb39546f391c3ee6e64956e6caab6c95ad7d0e3f961ed432ca54afd563b2bd6f9dd1465e405b71a92336aa2a113126be9269da94bf612f70f44961ad70c91c2f20a75b17908d5ccc923db02ee57a3ef98076069be53bd7d1de4255e3624a78b5eaf924dc407b66001d65ca20dfca8dfcac48869f11d50444d81d297656559535c6a50d02ed5725f1dcdac1613ba548582f6cd2cd489038fe79f802008d5f31c93c055f8baf11c6351e98e55e00880ee8ab53ef7183d7b9c6f75b40df8b1577a0c30f6d2b41f34f4e30947a681bb0aa64a9114f0ab8237bf461cf6f96c5bc4a3a4f381086c11dab5e1bd6f56be6692c8871cb57b28886758bb580bf6240967e81667351f836b940059ea585dd42796aba084febb57ce13dfff247fd3e8bcc3d47dd84468ffcd1000450059f087dac476907e239358318a457d2cf5842939fad62d6672dc5ec44eef067e280bba6e75bf5850fba452496be38e670a116a66555b2f1d70ebafe8f990295b4847b6d53a57b30dae42a708f82fddbd2c0328fd02524e7973c8d59077dd9ccae41c03a30046f762e8b1f9104fccee38a34921c33ea10787a28c6feeceaaacda11a35072c38fd8239ca273ead7f7fdb9ed56e4382f52e91fc5e38bcbab068b8a5da8014c6c23d81d79c8825db5849f8ab9122428bac58ea3b14faf4cc050b788e8b4b8cbac66c478600eca9a63bb75112980f229d69f9277e28cfc9817054917c24851be23731fb430a08e4c848dd78fb696c56c76c81da8d48ded04b9aa9c71ddbbf74c1e949f8abafbde99c7c6931b8e17b2f32f46f171545ff611cecfac6ab02a21591e5cf285152d0f3fed29ce5eaef6f742af18740e9451a15d8dcd5da8dae2a42ba0480ddd4f93679cb4cb280f9241bf502b18323005b9e19855147d114761bd7906e38a2663dcedb16f1925204afe8c4fa7bbe12b31d8cacce1997d36a23b5495304058d2c4da893f19eea79c5d67078215dde279058c6cca84ee42aee2a4e880e42dcde658a8c0de84381b015812472e96260a98d4fc5a0c925df92147e2600d89f1e34cdc148ac5969969fae4d8c53d455e4126f1a15e9f38e4754ba1fc9c2c7d945bfe2a21b10aaa5a67449fca1eeb44a663fda5d82e535ad3e02e622c1b454b47df485283fe4f1f3d86865a1357cfbea161f0128b00837af1bfcdefb1c1b2f7df1e9169ceb503742fc5610ceceb82857a062d64be539cb8d1e19f2d44ed0bfdc00a36f5fe7816dd2f89225c46835acefa48107247d750441158a56bee0363926eef3441a9f13d93a9cc850efe49e97ca09b20e62ff0528e791b032fe609622ec0705d86774e3ebd3f9f4d8869b007f2607bbfb11752addb4fdbb66db65c3f33fed394388985998da6cf91541b77cd7540f8ee3426cc8980232cd225deffd3ad18e14904e69df1081467ed30bcf6130f60546ee4cacc9260f1e338082f081ae9c872e17c35c8a78a3deb3cc8dcb8bdbd8ac322b09342fce60854d19e20c77f5831118c992d4a502ea88cd99d8baf1fdfdf79c9f4348cf4779a086d6fbde4afa99819512d17f64efded860fd547fa0f4ad4946ed2735037bd9d0f67706b9915f4a10edfbb5f0d06cfccdee81b8305d6c29f54119353c36e67454f814e68834e6c644c4436af91209db229bea4f4ba7abad4688b607efa3fb347916a6995af3db68eeef5c1a9fafd94742f90e8b7fd195991b7b3921229a05dc80590fd40a2e8af4644b9cbe453063610bfa9edb61b004952089665081ee9ab9128086bf35ef34887665641bc45d6c28c5f94e371850dac6c038a15c0cd04e4ec8c71dfaf3e026da81514756f831f93203d3eb3a39bf3a644f2b24333c655cecb6d87f4101731bcf7c6cc02ba9aeb6827a7ecac7158c703f78eb7b5d56ff6d82baada10b9a47e1974652ee8173c7a7cd00564675c951e522c0158b6214fff68086cba394f13f5bb7d04b8258865de97e6c8f9868dbfdec3de60a8c25e6303ab9b5ec233aff086c7e61795f7c097a99ed916b3128d0823262e8017a2cf2dce2d3a85bb3be969be7943acf7550546a233378a1deb063fa6d100ce89a5c59fcbf05fafece62f7a9ffb242fa756168acaaad0fc80bb9e613f9631d0bfd174d218b64b6dfd71bb94fb2e1b39390fb3285b1e0300fb98dcec5d386ee9d0f20fbebec5bc4a122b0596258056cecb4c0957faaccfac151d534cacc2962b3f50db44c12bbe55316158f041b290d006c6fce2e8481a6ff9a0b614aa4cced16af211845038da49419634a9b9ed2fc014f6bef78a288153e999f2e295c5c1649663b176385c9f52fd7c55ea891ec76510b8c797df604f09af25441a38ffd056d7768d3848998907888d6d49e181f5a49c903a0f8fa69fbb45d182f20430c094979448a5c5d066d7a6a091faf17b6e8c9103bf0bc02c47631cff579ac27e0c31cca4d083a8d2e8368377763d921cca6b4ad4d75e8df07c2bfb6d79920afa694af9b3ce8017ca3abc128e7755fc2f4520338617926c18b707f77842ed8ed815d6ed70a5ef7a5332faf71acce3ea798bf22ae3e1df8c1e8f1b8bf4708d12c57dc05c3477e5e7f522983dec0bb0f3c21a22ca61341358e8cc52fa96d8f695556a9e0374c568b68acbde657ff3dba61f1b74fc16e8fa85e0530a341f554dea6a3bfa1f5099e173b34a423e6bcb93a6334f9ed6e86551bee85ca7fd26cd7722172fd7e655878e037b64c72600b3a6e112aa0d5bf99ab18de8ae16f01e70430b8e5b768a515650618fda1f0bfd4975bf6fc26bc24744b0fb9dd5e5d824e1be2f96bf0bedc0c5c4a41ac07623371da95cf7bdf6c652d563856583b5c9b5357af0bee40992d187fdf0169817d8504a8f355bc6bb7def916c61a8703cbf0406ae0bb25d53ecc6560f2e4dbfd093beefe87c78e2970c4929a3d5afc4df6e9ca38e6a4f9ba8a38604b8c10516d20b5551d69af130881aa6eb10b511d2cfefdc0c21fe0d47c90476111a3baecd5a812507b5a3038ba4cc1a782e107a83a4ab2bd15b27580aeab2d6232e95b7572bc2f4b8fa7a063de09dc70023c13b54f8f4ea86596625590cb70332a6dfa281f1fda80de3cb5029ad3606b3839a7e451c04d8e47c20b83593c3d3c43f40e489822d6fd2fb2e0c4117b07fd634ef203f753c9c3228ead3f3fa25c5fa156292692515d4149c2f5bc52026ced2f7fe716f123c240aaa3289c9259036c98f88e78aa3edb92cea33009708299f3fbd8fba59b192648404568cf7a72f817c295495b31d958615ca2587416179dfffd80a189036c135e40639b4e2d308843152b2e3526764273352b94129606af4c1c6c105d6f716aba281dfbacb07bad496a94403348946e254d529fce2001cfb435ea151ec977deac504d0d36fc90513c6e3b3746b43a977e8454dea33972cec09cf102e6a554e3f28361eb1e68f6e4277dda7cf2fe44ad183687d7d5c25faef2b312495614823eddbff23dc1d5c66423be5035b0bcadbe0cabc6d36c444694e7cf8700faa6eb05b9b4684f053f99f2549822a52a6fcd6833c192b1b430f8b0be0fcf88c5eb705a8077f0a15244bf494d2fee8601e78978ea0a6da77fdf70681e47e625305d7e4c4b0fd1dc487fd7f520bc832a394e026e7d79ee1c49d7023ea1792f1efcc466bf4c53db415df09f721f2dbb0f26b9b293f45202d336a5c12a698b9827abcfd45be5c7afe485559ae6303280b7d017c76212428e34be025e5db77e1a5646b885dafd2c0b4d88e5da020f6cd4a71be32e9769726903f176abe5916028012aa36406750c9aff3626ec6c39dd70b7d42bcb4c847220b5c2dcb87f46faca2c43813f365c31ee49242bbefc18e760e69ec104f9a94c686ebe14c9b5e048093f41ebf8cfeaeb8297571112346e5061f886a4f902554d5cb123c23db63a65805ce58df76a18a33e1cc88fc25469d9af868795922b8b36c22ce15b0968918f9aba064c9539874e05675cb71bed5a269cddc34bf3cdaa8ab1e9f93a1c56ad7e29cce5046f30130273ef1a8f7a3b1c1389667c35a711e9b176bdf77cc3894890b1a084e70e0a829e7a99a8c587e944093d853c0968d6d62a3a27384b0143d829a52ed3c17a9303c3060f4c9bd3c753cb403ec2b6f2a9fe8e9774d24e38fa8b44b2b51815423cbfee468321b295930b3e9805bb86429ff3449f60f2b4eacb74e8b4680d078cab2aba327e5bf9413d1cca8f5d25f10ebbd240a5cf00cd6eb8b26464abf2e3ccc28dc0e6231225ede4598e58bee8337661c21334959d38a1eb852d363c3edd0a301c51cabfc2454fba291c559fa6a7d0cf7b2080660ddd83ba72049ce44f03d280df640fa06a9cacd363c26ad4f5d091990eeec59818028d6000d5b3bdc22ad2ff5815dc3a4d013c02258f30bd56e4a42a4dbd5ab89f44d8b4d00fcf7efe6339b737eb89824cf5128a36258f393c35835cf4582b3c7635ac8fab7df0cbc06056afd6f60273d52c6baa173e6cac5e00a9aaa577c439ab1f8a516c3c3ba1f52147dce83adc6b79c4ca8656444acb0cbd07f422c029425e10457c8147f1e3b93daac4f7ec06d1869ca0e723bb6bcfbfa7334cd790cf6b3fa2029aad32877ed54bdfb2317d03ce370907493225fef8ce549bc29fca9ad1bddaccfe2f5fe029d4e7cc1b2e91c7c988d8ca03134d1b4c196abb493f4ecbc45e5ef5faa19451685c26007899cc7a7b386954c44fd5994e13cec1bee7ccb19ec61ba9fc5896ac8baf9cf30edf27f08f626fd24004b2d4057d2bcbad1c9dde74962d28298c151c49231be3f78450eef377eeeeed0403ae3e5b1befac3b2a5f84e465d3896362516359edcb3c128e0170520d04e73dde338772e85d9c794a460a0e7ec06a812416532d2e6832a6fbade37b8643e60d3e407e1c7df02b48284e0a8de8fedcc3f7f1c312793975c7ddbc141cb9977958240ac5aa77addc14390ee2411a20fab1f10a8db72a27a94035b72086e3a3c95c7649d475570ce8035f67751d6611a27a452f663878dd3fce1ab0e079ecb2463404c2fd0a0f8e5dd5720bd2a543946edb2566616b898ae8d19b8df2d13443140c90dc473dba5a981978400af87c8b24c057e40303e430d7cfc965f66186510d355523e0b40a642d4c096932b913f61876469817332acde17b35b361155218bb5d8f0863e98b201411130373b5057b9497474528a55c79c1b22073be39808db62b071e015cb38d3475737b0a00582455881349392e3ef22cd38c9f5c82dd04850192c6bd81c2efdd78572e2b2733fc4674e4bf1f0f1c3a6c3c8f7d3987f14644728c0a194a7fe16a3587689d8fc76e0f2adfa25f5f90ffad39f9d0ab1ccc2c3b40c432997bf57489a25d932022770c4447455feae8870f6e72aa9c39759a921d5e1efbc082923e6fd450105e5271cd04500d36e5be289dbaa5faade14433b7d65832e490e363c5ded3410c4fc1bf27221e6c4e40eb07ad14eca8fc3be5bfa4fc315bd5602302a45ad5bad96b6567de6bdafedb9669724480fe44c742a66a47a70d452e697669232272024e3761ed2d59be9d9d40568df229b0d0343f0a8e1a5b482f65ef06a7dcdf96876ff607b6fad59337f30de03a8181e6ffa78c56adb46f16e7f82108ab11aeaf18d265e09430969496794c0d441580464a8769ca0ba17d124fba76724dd8bd1f8b7e019646e78a827c55e5e444fb305c0b402048c77e9e4ea37d578f36068820c392970adf65e8d8d0a1b4e91d22f3dd122d5f49c6c27619fbca4b7b1e012041e8ae03769d4b7ee72369eb12cc095bde1168285afb0dc20fb861675f061d833a0cb262073cde17694ef9313cbe06a7daec27da9fefee2b16fc8bd07b6cc6dded4edf13d78c12882eb18c31570ac5b8dd9f76fa053313d16dc0660cb605920eb6fba91874aefaa4bdd23af1b0978440826025b7bf63cd013d6d39a89af73d8a0c812ecdc36b3dbc09bddbbee077053121f7ddd74ae14b42015e4316b7c7624d879b1c48e4e8dda8ede5bf3de1451581e0192bf22d248c65678c0eade579944d81936a153b61b134ad16e4252cc070febba1f86daf3bc3b402d8211697d8d2b21cab8c9497f738628542c4eb35fab799857927bcca0a36b720b2a82cea4c803cf97e21cf0de1326833590a11be43a53f0d2c96af625563626481bf653148f216400ec94a14837faeb1db3ba0961357f449f6aedef619c70b15ec3479d632197d4295e6027933d5af5496d6cff587ef79c1551520b71cb0bc0e19e0fc61804f0b1e5cd6294b3084f71df7b40f777451053f3a70bda88ffdfb27bc60b74b546622cb59193243aacfda4ef0687d507260814015c65e8c33aeea437f95d9a0ac904c40440b1bcda18a122b28be392c871520b5acd6a6608190041b1c66c981dc5d07639ce9f7fc7bfcbe3b598f63b88c4852e1c9efc56d7b260259591e63d2b9b295e5fbd3745bde2c9615f21a31be5c9f78307d196ed889b4c820e96a1266801223b17f9569ae491cf50f7dc668ee0a56d003cd56b22384d5913b3f3e2cc0ef2a8fe75f09b8621f80374c8e46c5b347b63c89cc7a2ff81c22d15b4bfded7461fb3868ea41f65f1c69266fd8113409b94ac2d26b0e8c501b34076069af927f3efdda9cee68c06286f9350a3ee766eca3baf0d66817f06551f5932e200bd7deab20ef2bbfa42f029d7c26eeb03a6f59d59c3eb837b81752029fd7155c406da83507772c8d36f93e6f72198d19cc4dbb033481ef0fa03d2d308a666ac13225cdbc193893178238c924b311aba66e1041941b301b053f18c14d4cce53449d6e07758adaefdafe7ba20d771b48f33a448e067717c624c344a79e332f4d4001e0a5a92e1563475ed12b2f8cfcd519947c8eeeb052c69dcc17897f8f403f3be6965ea18607e8e761ce80703b8c52da83396714123beed075c39d96fe8c1465e9a03d0d6d219351dcf2783d15fdd770187209eeb74e088f259beff1d71208dacd39cba28d75c69252c9a847c9a3831f38f6942fcb36c160cfcca3531aa3450fdeac7b1b01036b876955ba7d8bff55c0e8d86c46ae7e7efd247e4fc58aef53ef18c8187ff4a6d63a20e4620bcb7d77590ef25b54e44e6088ffd071e220db3376c5338d92f7c995a040c730c218cd16a32549535aed1259d7cc2af29fabf212391f49ab42b273a1764129264845a8324d82b87b18230a01cfdbf38fac839652cbbc425e98a803b34d17bcc41195874e5dfade64aa19ecac244169b98b41ce37e183a616567fa7218789c83cb8f7ca40bebc55b309be83ca823064c031de1065ca4f1cc7f9bc769abc703de8a211ba28b8091881cfeb687379aaa65417223e14b68bb932366e30d48562425c02ac151f5dd7c94c9d4c1a4fb7cadd0db5af3b6650930d9eb8be16c1e7f59bea57c1add207a11a332bad1bbf96863b153c9d9f0428b664c4f09492ae89e0c6dbd08f45d6b5491816936baca0fbb2e84556981221392b0f75f2339d573f06ba68c31b8557e0ecc020c6f4eee2ff13d946b47d1c2cb3a30ca4f37b0960cde18235cbd822079eeb4ec0cf3e9bd7a4b3a80ecded2766f1399169fc59dd590b1889187f42daf178a08882d41af92ebe5cf335e8c3d30200ad53f4f1844840697a00cd434cc8beb9f2466ad77d9e4aff98343c35289c3693320531827fb1a174ee0354d651333bf934283352d95a1993f9f5116533ae53e334fc937dee7ca1634423262b1bcd1acc016c7ecc991928184dabd013d7a821c7adffa76cc2ff9a1b88340e12394f0361091d9ebeaa7535ca00a6b95fd94729fc9e31e65c898f9ff846ce0f96f030e5d0d946c337773e8a4881f83e55c2181a41f50ac23668e670e5c91a54e62545d79c24fc36a499928fc6d0cf670812e80003fc5ee85ebcdb3b967769a7b846207ac0e5009ecb6a559d7b7f9bc05753a52b7336e846f4e54b6ef89e91ca4adbe6f1dbbf4e6f19d21ce8fe8ba73a356c120aba5d41f35baedbdab6885f8cb353912fa439c0de23f68de1b9dd20e0d9e5cf0a701d143819bfb116f2eb3a702f40dd4d3aac304f8f6898c5c236ede711e028522b3bfb2154194479fd3662631c0f427ff6fc7640f6f6b5a22aee3af184a0ae4e3e9a1c96690c13437844a898e215d0b41066167bece24118af0a091fb506a96fa0e3fbd206306aa2f3cf6f5e01165f16506eefd2f82b19c25fc4979e3103eb41c77abb878a47c3fb4d8bf81b5ed6c3ab2732ccbbea495ea10f5a54e6b1e8546b46fa6f48a635600efc3167e76c52654c92dc853dd47eb06242e5efabff51c43feb6b5502c4ecc89cf05b663fd69c378aef2bb672421a09e8eecd16de663454599f611be47bcfb514764c82274079005e62de6bafd213aed5dd74e7a85ae81c6436fbfc1c950290cad2996add28bd901617005c7d39235e1a4e6961a74a4b792b32288fdd8d300b399873ba70423aff51da9568b2484ea4d1ad97f089241ce65f3eead90eb1766ad1678fec94191d8ed6caaba820fe8f2fcedd2e8649708c6f165244fef70bba51f099b8a69efd8da2687dbafc9db3ec3594ed25f10edf063256ee91d758b6fbc5a3d61f524eff1e6dc472c49d8af820bbb7d012077e93bf9c4ad1b1dfde76452d81447cf479ca5f56da0c5b10b53125116ff4dc88135c92172bab9640b4d8cb8a35f6bed5f2d3f9572b2d2976a608bf601893386578378a495c7a9162297d28db58075be5875cbe5b82e3e39f729f0cb540938381615c00f05a41b988db7fad1324e5c6c0f6cbae1c76b7121216369233531b3e67df8407934ef3c57ca4868cd297f7186a7e159c2a924bcdac17b249f8353fc0bba981558b69d8fd0364d9dc79718c6e6715f2a2b5c2759541f8a47608a7a481dfe692468668e1057e40ae582852c668d6820ba7bacd73a353607a9bcb3b183e35e66242b473db328a22ccbf03acd5fcb2c9a3e385ee0e27d66a9137eb520eb8b8e3de39ff735756c50807824b552a591b4bf6d4876dcc6c56875e7890214355c5c88506b46ea85c764a434e759ca17ab64c0e1ba4ea7180dfa4e2673946d07bb97d854e0a473928511d325a2f9f0c4c23b9635abbd2ff6980e63a597ed652e6f4525559fb675eb8b1dca89675205f8d9bf7d0dfdd802dab4f8fbec634606f8bee9ec8608c14b69c93ed17e5d4b7aaefb17917d155534399e92ed1c7d964d0f4b5d842d8b409409f86608d5ba44ad22c103a7f1901ecee63be91b9aee7f4195c2307ae671b0ff6f45e1624e0834e5b94f8df7b293ad917f837ea6cd7f01e34a98a34e736901af2737539ef126566fa39eddb0d5d2a8fc9338ad983ab71e2a610464da2d34a47ca1d5226dc1ce3bb6d219d88970a63cec546b564465cda36a7f660ce2b74a72c02f124769c366e368c7912cdab782b4fc4eca1e9279938aa211d1951cb11bc5739ce14ff4dc9415e2d2f97e2af746bf382eeba4c2b580ea2715f6cc92e82565e3f77884a84384ba8282ea71abffd64fd6d2d3081b955e1d5826ac2990a4e7f5f72af9cca732b428c1780f3a89de0f704aa500d0913c63c8d87c99bec00b8ca13b8ec5c20d2141891772c8b54a0fc502cf4290d9b55e41890520f770d833a37078fed317e1a1f3a75dbe30303d184d67352cb7253731a0c4cc003c86408a37c46cc5d4160adc25f97cf28b2442313db18e957cc2a8863c9834b32a6d220a37d4e3585bf385b8a3bd2113de4ae1a5795dcbb1c518a1fa0ec94549f1248482aba2ddf43297bfd806fd0cfe857610aafbeeccce66e1df23b4fbcba3998c77ea31b0347eef62db30facb192f324fb33dee96c7fd001183cbadb54fa316be5a0abeb5d06c4128ad809812037eb98f28ad99aa3c497f406f16ffd6df3d45381601b0a41b279f749844814a28a0f44843e9606fb98ac1a52f5751cfd7292cfbcfff5220eee51ac68c453e57aa760dbbd2a6483b581cdf9f72a059971e3559de33bd3c3245b7e91ceb75a39dd1f8a75eae44fa7d89938a8bb81ae5078f57dcff8ca77d613317a6fe4adfd89d6ec6f2ec51806fa02c49de19de4ae70faaa6cc81d370cd75de52654fb401ef8dbe67e30f3b4d68558088af5023663d0e0cad032189690cd1da238c6d1b50abd4780bcf5d5f6aca7e58caf0043e4e0fcaddeb46f714702e25207d3b90c1a609f522f62c76e92ff10693237ecf706ca090e907ab700878ae102de88da43dee8fb15a851b1974e94a0ccd415260e2d682eeb4f52ef5465bae332ad0139e6a24a74eb8501a1439dccd7c8a6f32e1928e6cfc36f63fff7c352c7640c1793ff15930f33844ec95d215dd6b43949ad9c0474bd640f49108e3e8bf0247221d641b1430526ca56b40361591e1468a84f6d51fadcfff8a2cd9e37331316ad735c1c27f205c6bc730b7d59a5140313a3f8d02579231d66ee9f8336e1f8483cefecda6c2b6bd22e85f46842933c07a1cf29410eebb0eba1b7ff1dccc0a766ff78b328227268b63a87a480948241c3797087bd7a78578887df8da9b886ba61d8275368583882533ff92dbed7d90543ad38b1ee7bf22e2e0a3eb0da43c89c5d515ee44094bfd9fd3fb2cea2ca21158d64ab8ca8bd2ba0587a39581690e78d615c904e32a88ddc160baa6c591921237ec5da157d335f61b1aa74d456af1c4f4fd302b769fd9bb6e260b5a828601da1595bcd5da440e133147da1d0f019e83d2a0b396d9aaac487b4719c40aa6482723fc69ab95806e4db97c94b9dc8c95bd815fa78a0e1c92f140a5531b905cfd28ffe89d59fbdc3c8dcd62e42a60eca821f439b2d8260be1f57365622b08d058b247ae6ce855c7c4572d4a47bcff5537de121340f836934e22d25ab26b998da64c4e2636f658090e4a8023f66808a23a5b11e66d4f07df3deedbbb808829025fc3db145e03301509760df2da4847df829cb727b6242e9244f65b2cb1289207bff56a4e511bf20dd5ac436bdc76774a506382d93396dc692e8bebad09d57c64b2c39122ddfb2abcb3f2519de989a8c11adc11291f198567b2ef26dd9c06e925e5a4e4b074664312e62f1f496978eefa188491efa28cc7aee15c1b5966f53ef51431665b8771d69af108eb572a48571e549b4170eeb85bf83c6985236c9ce90a961d2c80354ac1a42598f7111eef876da9dcf5cd31ab1eee57229038a2ab99ff7e78b9df46798204892f3207c3f6829facada186b4be18d09c6947fb06d571fc154ef75002547b188ea78a2ddb840587033e71798560587ae20cdef1f5e4cb5d294856a4257fbd12c91fad9158b11aba2c40e5115c0fda0fa0cd76f538d88a59aac68303b9d2303a8fad660199c316568b6fe21bb971170858d09af0d0f778a9c0e932b7ae980a210f668d53b1bb49fe8f49a518ae433e777fc197c376a27c4391efca57ab1e77bfc00fd80c9b1dd9c449ae61927c4c1fd0a5a9e103735b4ad4fa6dbe095d07a7ae0cdca2715f6df5a9032b4673685edc6415fe51afeb5aad028096dd3e8d8493bee68898ca73f61046e2ab626841598db2b5ef9ed703b477dc2d574a87961bbee1186a46be21b378cf5bd865c9346df50ac3bb41a09e8f4dfb2557182ecea5eea117036640d10ac91ed05ec02b65cd15f2d274584da55b3ad7a7700544b87b970dfea5d7bcf84ff71b2d8b71d082a6c941b7c7789e229a85b4dc512098a11bcc9d5f6bd6c356a6eba1d55ef630fd1b8d4182896d0218962f18d23d8ab3dec857f485efb6e48f983ee336dfa030fcf04ab8b322fb8f22ec8bbd0467e223f591339e22eedf3f28f41411a70d672b5936630aaf3f6b6d649f32ef569886320c1f6afcfe04c156ef53b880e3173383c5cdb571bc126a94233c757c90ac9a66cd669e194a0181c4a20d7a432279858cfff7be49962cb79f93c7f90554b31503dd795b9fe2cc57583f7fa0c7e9c703786b783e6db4cc91eaa7a86399479d7039e5f1ba981486f7a8b335128a04c09 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/kzg_proof.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/kzg_proof.txt new file mode 100644 index 000000000..1f2e80cc1 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/kzg_proof.txt @@ -0,0 +1 @@ +0x8f5c9a9175faf290d6ebf909f586e486ee3aab47eab7888ec0f6956a6fdb2e67f878935951a56ec4cee2531454ffba65 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/program_output.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/program_output.txt new file mode 100644 index 000000000..fd6260ac9 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/program_output.txt @@ -0,0 +1,13 @@ +2690652950887981092105487857662255296011626012752189016494932422592792782612 +318375726713628396893264960521216506727972386704433219654697727306535670624 +671070 +1721464161421942823712299887410666239101540954911342952807203342687235872339 +2590421891839256512113614983194993186457498815986333310670788206383913888162 +1 +4333048458755315272052456218951806007811933151167279260738 +4500201590935370788298697053067752428216731915353881504674 +1780270321746081097970276934354344672724838367048896540266648412014106432240 +267674272179767811046066001318052491587 +89018504356014354452939512097715104575 +0 +0 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/snos_output.json b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/snos_output.json new file mode 100644 index 000000000..44e070548 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/snos_output.json @@ -0,0 +1,16 @@ +{ + "initial_root": "0x6AD64BEBBD0A182A669D3C5C8E3B22653A140C425290CD7E441F7CA4CEDCFE5", + "final_root": "0x325BA9C26BB7960F1B200F33B7E0A625A38614BAE44C7410CE7D3E977CBF40", + "prev_block_number": "0x9EF2C", + "new_block_number": "0x9EF2D", + "prev_block_hash": "0x8bb89dbc52a36a90bf8e248a775fb40ff5f3d1f46f5878741f1f18b8f8d838", + "new_block_hash": "0x286acdad5ba876edae5d0b906c216b6f16737f2f198789a9380330baa3097e0", + "os_program_hash": "0x5BA2078240F1585F96424C2D1EE48211DA3B3F9177BF2B9880B4FC91D59E9A2", + "starknet_os_config_hash": "0x5BA2078240F1585F96424C2D1EE48211DA3B3F9177BF2B9880B4FC91D59E9A2", + "use_kzg_da": "0x1", + "full_output": "0x0", + "messages_to_l1": [], + "messages_to_l2": [], + "contracts": [], + "classes": {} +} diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/source.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/source.txt new file mode 100644 index 000000000..c5c728827 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/source.txt @@ -0,0 +1 @@ +https://etherscan.io/tx/0x33e43cc5bfac30d36c5f8bd4f40c13d9d229eaa3b1ba1639be53e5fb3b026b2d \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/x_0.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/x_0.txt new file mode 100644 index 000000000..a460941ff --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651053/x_0.txt @@ -0,0 +1 @@ +0x0121c6e75c343723fc3ed51125ba4b4215e3381618ff821f8e729d3aa35f68ed \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/blob_data.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/blob_data.txt new file mode 100644 index 000000000..03e352b93 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/blob_data.txt @@ -0,0 +1 @@ +1f1f443d1262c43bf4491c8ab162d2a8be11cceaea8b427b2aa6141bf28c1f27385ea59d87caf545655921ecac3b2e8a2c5b33f47514c32956efab59a37373064ea55786b5b7a300a2c50a8e541be64bb1e48f022295c0ba7f4bc16728791c1c112bbc993809cf347a91f19e696b1637feec130d8ccaf4f8750a7f9ef611a55d733634ee00171c2804a897a3826264aa4ca38434dd586d4d4249d92a842a630435c05ccd858de8a17e059fefa5b3a054440642041d3c48d6d6329f0532d86e4b4c3a36dfe2330754e6762811c96501b288dff505a03599e74a3353b68c5100b705c4aff8631d749d8768c1372f19992ce629a1b556c12f6ba1f483ce94ff46701cf507462e61bbe8ec5bc5c711e6152a394c4daf6f3c58d45bdabcee6e226bd82bb300610fec993aa7e2274d3795e02ad40699235889a947c65d2b337c7001f85d0615d9180a3d746ab9dda82635c7898f522513ca2940da4efc459a29d5f23d31f3fca6ccd035980d4c49ede927e4ca1b90f023a18008551dc4e0cb50e1b0a93a80563faacc978adb545930c617716c091dcbb30d3ed4e722911cd42f36bff314c8e07d67bc5f76ffd04f27e2dcb5c8378465f042af5a8645102be4088cbfed5c0f0dc692ff1bbb53a90a767f12eb9257af5e212d003ed851ffaadb5eaf3b5f0f5133954a5cc1f3997b4ba43c593c1bed1a92f955c9862b9b78eb2e3cf07f78450ac4905cb9bb66012d2909ab3d94ed0db4624bf3310e2b7271f8ad0851e8ff073c7275c8134e31d96dc40ba76becc1839a0110e9dcec59d044089e11c0d2b964600db4ff33abeb446a3efc5805d7d771172c94d0a56a2f77beba808983896e4d083ad2f085875cde517a7ff8f081ceae625ca16a837693b32b6651f23693bd0082069729aa5e44270963e869e040e0cafd4fb484a18a1f940ca622a67e15f257b9b704a6fba9ac6a2c3cb009971e653dce5e15fb8e57408de5ca912179084b23d9b3cb7ef29f85f28ee7c478343a57cf143cdc4aaa2cf031cd084833b28d5741c92d4199142e6641d0bdb1e513b45daea14c69cc2979b6625b87ff9d5a2cc054d7d7fb2676fa0d3a3bd1bf163c8f7817752bc7a1aef3fc7859e4ec6c8131c305a205f8cb62ed9447e3fc0bfc58079fc1f7a2caa6947a33196fae18b81aefbf2bf558140af5d5fcdf82bd4d8655a65275159df85fbc7f325a09f6637474aafd49531f3ee420564fdecf2c208156b9c3dec92a44af7d7fdbf8c26f4a9a9258465bc310a6cbef63fa3be63cc99cbe0670282f1da974cac52cdd0b6dbce193e2b3334926f32f78f788cef49c4cf201fe16c969ccf719f6ce24c908d538f5b4666434c84c1c357bcba143c10adda06db2dd3c19299622eaa6d69aba50f57a2c584e356c82bd2afafac5202aaf384e25da639a299f472598b26ac582799e53056a8e3bed1a6ea7d321e7df8a0b32202aec2819ebb2bacdc6653c0b1db339bcf1f56220015067b69d28bfc8bec0ccd7d65778e94f52475f559f4616e2fdc0c43f5e1757024c4ef2b761ce53fa7825125476b1c791bb0efed5357dad2b74948795b57942cf256c7784b72f7d3e01b03e00ec5beeb6e352482ca5d8c6c2212144f2a17a73c93369561c9fd55053f01689efac084dabd091d3a85d3747b45b668859923219ce52c3963273a6a688c0bf11be6457357203c7a58847cc501e93de9bf4649425456153adbe71c511966ed6ee6482e56e9d280513eec4a6ec836ded91d0cc4839d3572731a1046ad1e784d357650d8c60a99d5be13a9e6a0ad48d23712f085d0df7b324e7c089ec2d0bf8a337a8eb488e20747630e105fe3b3b72306876f9641d8342f120317dff86cd0bdf99a7b39901dc7559761b74b7202884a873afef6d3f3d591ee6778eebec98b9d4be51b713617e4b74afb1ab5f8f047c81dc31914e1eb9c635dd740fe122b591329f528895a5eb4b608947c74f7d5783c3af8ad1880124d080273c1737e2abb1eadb453901dba5e10e5c325c5337055659cac27b8559f909b0b0b19ec13cb614aae245d8c6bd0df8cffdc0ebf52dd7df98cccd05653777ed0e48c90d0e41bde18dd33c5f734c5b1a710f2d1c1a9267099b1235ecbd2f94a5a8c882f319996569d1a20d12fae8781494cb9b5d8197b6e9f3adfa02044866d99ed706ad9db708614721f9ff846800093e6065a2750c9c2e04d43952cf16510ef5287c7608656326e11c8ae88903e95f611cb3d77d0d8f985054418e0a2453dca48e764ccbd2a9408e1a59c3cb3bf8d29a7d0823dbcb1c47cdd15041f56ea0c8fb1c76cbd7d6259c1dbd1fca8c4ffe635869120a590deac7e97f7d43452b2db80c5699a0cf06f819b770d63bc8d898be754ab6b4108e5c2422853599fb1a7d62ca6d0ccccdaa6827c6bfdd68dc740ed8a3050eb9277961729af1fbd58f726536f9a07a2214e31c41390fca6421abab90f37a57fda2082bc09d4458d7e060b577e523f6595951a84882828d75e1acd54343b68ef41a991508bff05a3ebf410e9f904d10378465872bf4111e684b2fa2edc4cb007fdc82ed4025dac699430a7870cd08e5b6f4f9fec213c9e985a6b655e8793f9df77bda911b9ae8325eb867f0aaff156e84d8351b5d8172d5719a86b7d0ffac51b94746a8cfddd60e10735daf502c6fedd82b53f20fa0106aaf01d1306a1d21a746133b86dc84b8c88a8d56be1c128ceb39036fa664c2d86975c8ea046791baaa6962694e25a3cdace84f3f55dbee788e7b3adbc9537f0ddf46d8d9a5f4032804b13cb406519eafaafb194958926ceed60b73b17df5453b1434db5bb39f7c6761b5606e748dbfc6361cfd19c836c7a0455b4f9e3efc670dd9274de2db2db768ddc0b93130c8df1403a4aa1f8710396c94fddc4d3d45aa82fc8ba6a9253a83cdfd5555ad6df9a3d97344605e0430a7276074debb2e35351e8b6d4cc83605cbdcc6e69b24b9b560ff3391ba10106c00cd0a79b7e957aca6de3412666e8b490eaec857237b70b4186d5891ed25e6573a6fdf26ebddf3fcad5ff5f72c3c6c0fc7283f699bb5dc33423c18b058223e50f0dde676792eb2568821c0d419159de2dbce6e002ba00b4451bceb4983248413c77238847599465fcdca8cba69445c82ead135945fc00f23184a367bd52631b6db352c134b3181c801feee33ecc199702dd6295b89547a97bca867469c69d5c04ce85c2af880f2fda2c9d4cdca2b9e92ede84b1895cd4ade0142a0071607c3bb1e4b83c2acb293580291254bf8a4b94218fb36a60ce26de9c2377815e713966d21c208b22d3f0110409a89a5ecab3588450c6a5a81dbc40d972dceef405a7ad2cdebb756fc500f5a9babce89bcc39e9ac41ca6acc98675368d45f9a47841d0b1b9577685bf11f98b5b91bb318cfb09b0fbe574bb15dadefd25141bcaf31334467b83226878dec8b11571719e7a12ac63b852d437ae462c1ca38c10c25c3f2293db56af3262ea3aa5c3565841d5ef8c0d14338baaac12d43ac4ac3d397641c2d265402c46c3319314872c9955c41cc8cddc8935a6e1ee8594a9ceede3e9476e565ad335895e2021ea6dd015695f1255152a30d47b6e790dc5632ab4468915fb6d578d45f294a28d232a4341c9386377172e112c323e0720a7cfd63da33c4049709ef865909e767e192165f0217b512c3b331ecf4d024a92a867626d7dce1dfe36e7b364b588c6d36bd1bff42227059d89af02e3b841bfa546a0b397bc4260d9d47c8ebdeaebaaefdbf7d9f4e7783812848556d65f3176582df4311a02b5270432ec393e024f1e48c7a3b4c2e0969410fc1e5507ecebe17c93872f089a8048c7145a4a54c4a6b67aebe9b8ac447f904493b7a4916abf8f4954c8896cef58047309665771dc1a96386765ca51dcba44964427c67952c5a08067247640fcf31994a8a8c71217c4bbef7e24896d822c5e19ad160d8256eb6725b7b79265954058390a9b84f1bc13ae7bb1c7ac6c3eb50c61949bd3c68df66c443462cfb4fd660ff0a9f6417cda7acf627023c3cca565041f9c7244f3d0a9ecf73e906ddd056b15c9144b5e46ba907db47ed04d053ff17b8cc189731b27f2349a9ea26a7b390d4d5f6a439f993b7e2be0758b589249852e6bc5d4e79f532b325bd1777ccfc4c848bacb8cc7232d79c7313a10cef64c28fec605a3eb83a22c7945f6bff7d6d56f4c5481034d5885eafd1e5dbf7385f7e4ac508ec2d3c836d3b0e35c34c81e90f032e6d0ac6997a26f844171e4553fd049309348c7b097e82e6819a34bafb38b974a1e65a0bfa58b2c350beecf278f1d59b40ff6cc3b45c63a28484a57437545b762b31020814525f425d6c68c974787781def5b870c50fff534a7f063b77e27f52e8f29933a16256b79e5d6e06e637671d1afa0cef150d9274afc28b14bd385f6567cd797f7f5a843b7dccad52caa3e23818052e62fd8fa91a6fb81bbe3d189a17330d8b68545977fd9eb5154d8a818d61f14a03706ddfe8736849b824c2fda656913b090d5782926b22107773ec606274afae963c22fa9197c7fc924af7ecf9e521bada3da4ef70ce082aa0262f7d109b83332a5ca72dfe49f6f74b21ecb169c27028a2d510c91ace9fdd886f31ceb6065734cad69baf3c51f82f4c54122ddfb22a0c77ef748f07441466da2dc64d83c906c49391f5a082de7e3332d1a03c8d93ca15912d06c55d3ded1d3e91e93db1e36b4d93b2958e16a8d033b7642b81faf3aecde708620ea74ead72ec75497971d866943451129a80e26508f572ff1a4af44488fe5bd1ea3ef5a36252a34deb05e59d703dd9200c360e973d54e84003a8253c0c13869431c8153177bb273fd18f11d045adce1a000fa3a037295de7849b25037bc47812128fdef690ad2e252901cc980bd82104ab5e069a9030d539b97b812adc137303127b671e511b5b89abc7c5fc4181d704e718d8ebd56da949e6fed11128d4eb2ccb23fb4b3d96271ea4b866610f7a2392772b3f54abeda690bc39704ebf632c83df117bb77b6dba8d571a9fd61c7301189ec24bcf99b8e1fae48531a70030a9ab0e623ffce05072c6fb1eeedf2934131cde30fa069ec02ce0b7bcb689c4f7de33bd9dd081ea7bfaf07e9d992e002a164039039a4dd7926200aeedc6b426a656aed409eaeb876bfa223dc2209671ab418b7f389a7e2d9fff887862d604c14160791e28e117bf2746a59399de22be60d950981522d3f5052b4daa44f6e87471ca458e33d4bd07ad9fd6b4a55c53b8582e1b22939d52def4aa2b8e8ef05a6936af356d92f77f6ccc26403944b5f16fe5b83d3742a5bc97d0c6d47d00f127c3caa1e7fe6f82ee84dd49f0b1e97927132b8dfe8408c6bbe861b1ece693271248ebdfd935cb2a7fcdb331b7c6532fbc28c42c7f5dac87ea8eefdbf2dda5e6bf292d3045491ce024e54ad627da4eb8e86cd97ec3f19f2777b3f4c57e4b5d3384ee4ed15c7d26d37a46a3ef94854a821eac1096be24b325750130dc68ea3cd549e7638c3af8fca2d0c1a505bc50b9bb334f18ad409eb575f48dc07b8e6ae5a16601167f6a4bf64b7c766a699ec1eda491c4ff5d19a4a3c00b80fff04a7a86a1bd8c307ec6cc3d04f9d0e76e96114945778be03da356f4a56d0f0506b4cec0830144be5e9846539f6c2da82a615f567f7819545ad8066e66261a332eafa814f128d607e63baa3979cef438e3a287077f535bc9ea1fbfdc64db5803ccca59902521ec980decb7573adad04c466551b3095ddbe4607d48f11fb5b719afed340f320185a2ff7345307c7257fe1a0277b37b8f6d86e61da2eb581c0e87121984e712ff02194d3eb95be118b4c536c61c4a346ca9fe752710df27e10e8ef11eb08c701f9e58a8ca0a30bf047052b0f4a73b0bbca94370b8b386980db3089e610367d292a91b6bac25906409e16bef7449a35fbb2fb6ad15696a8680b8868fc4d14276eecec4fba38c0bf69d37b43107fe885539149acfdfa3cae6d0eb36639c7acd84a514f7a1b1490066b386b9d1fb11e580985f632d70f87d1bc31ae8ac368ccc9685665a62231f2bc28c16c26ecdafb9a23527b32281c7750c7535f8c5a0f19eb44529959756f92f0e61dd8b9d79eb6dd5f339379fc6b258c8ef236ae4a9b71397345ecc2459af9ad6b53f0154cc508f97000374cc52269374581e9ff8d5b2e58039d2e2bb201b96a48b35cf8b9d2cce6a5db6760d462ea6aedd1ab52abc54f5f0eeb64d1faa46855f225724cea4afc08042996648832eec54b6863bf7224bf9d481862b954f938c228bad6ff807b35dd1b1d8c745738b5ee2bec208281b29ec9528b3acec279326993500cf33fddf36c2ef08761f04da16bed708c360ba9befb1c1f571f3d2d040accecac7867a03ede2c82f330c174175887a0fa1477d0e55b3a37362721bc430afca717246852d43e3bb88df2fec512b834b687066bd93de21d66541d2de50ad0bc9de7d8d787966f49443b0e4dec298031a6e61829cfe9880625fa303c08ab477f15ac8424c30e0823ae9872ffb96cd58e2297182d5c7c1148a9077d947b4bb8de0f84c0631708bed34fa671c505eaa0987633385b58ec305e732cfca516f1a82632014bc3aa527a96ab60cac3f941ecb9d27fdf469abbfa3774eebce75cd6f76ce6c52c33f19da03508f259f27a411734aba89b4e9109f530730e46389833dbd0a320955441f15fb0d62acccac8ce96d5a58f434411b65416e7b2243369223326b3fcb188a274f1c044e51cffdeb3511fc0ba112d2cd9ab68f8d70295b2d8b0f858c774fa30cb9406a93453b3262127be584611ba485e562dc03147dee50da4dfe794ae016b58b4d5a027c20edf9cfa2adc2e15aada66a64d1caa8e78d93e043951bbfeb1c73ddd8e61ab36915b55335bc0e21561d6bc7528a073196c2d27c55c0b43c42fc6418aff543a7dde25eb0de665bb5f1765563455e44b7037177ff881be31da9dac0513e5fcc4e97097f4cf67e252a40060fcaf0b46b77991f8d8c9f55ddc3ee591dba3c7fdfacb9d79d3dabf6ea76bdcf0086311e655834028776c3c038846a069c57dab8f3b967e3e119bbf57f3a30c5206ab71f3c4c959cc1f0b33ae0ad1417bb09699c052e9aee78dd23fef57d64f6752056753ffaf792b1a9e21a1b750d6a8d37855be1893826069064a91b0c5cc8169ce646d52c37a51fcaa7385c8b09fc29cb2e2ad8641b9f9021f43f5da226994136726213408be319870d071c95399033c1082a3a00607ae72126a13e919f51614f42ea3dcf1b0492512a6e2a1d8fae640af83c79326b6d48eda4690f0964309890c47b0dfc0b645d6c527782699df77514719e3bfec690f03dc9dc63814c67ea06430264f80ffd9aa1f2d03a0386d4024fb7956641b0bbf845082254ac22fb78f53079df145995f3ebac13c7beded14501ff44daefb87685fca50037366d2a040df0bd1686c09e3257d36b42e70ef051e5980ae92afe2d8b41e8a9212ede677920f0d7e1f7a7c9a06087a3ef95f33d7c70e2cd0fda1f02a14d9ac20813eb9647de270f5959a12e5de704a4e5b3d42a865310c98a197dd8d7e644859225156fc3933068536533d6b46ef7da61d03aaf4be990c088a6c4de742fcaf936f71f37780280041950ecab126f9da6b68664731dc00968ebabc82a95d949d662bba69e21f7531cb659270719802ae1b2e659988be2acd6ba9244992c32873717e8631a65aa3643328a39333e751665e3026dc2a40ea9946a4bec45ecf725d23070aa044bfc11806eec20f29fc339198ab3565a544236864c067756006610ce82bb7c4260998488d6e87fd5c9a9192ea19d1cc4d0aa746a149221153279b0c9a1470b42c7005319fde7bb0549f461caf82259fd35de78799cd1a5873504274648220ba94d1f402f446ae28dfb11bd9f61ff28623c6a266c9c7be296e688df8f4d39fb47bfc0410f8468a839c73335287bd713f0c7ec8f944e9de394b6183ae943fbe0feb4c7c0c5c35c70ad56a679c8f17d66d3fd4b8b03194059135438a611c97476b2653a02d4cdc96c7d4a7efd5902cd4a35f74042b16711a4f2c1b3f5580ff13a26f067a3c3fd765c388ab0fd2bd788461f8ec3b0f2c322562d0e9f1e4a89f1056df31372690bdbd040957aaf9302a4793be6fa684ecdc9173b47c7ab9cc485fedf214bb059d4a1c41255fb1699eb0f5577cfdabe3cbe13951977a0fc4fa416daa2efc503d82a30b5ae55b084f13822339980ce0c07fc82ef9b1fc404f18cc697b89c95f167499c576a18b1d14600945a0baa0b08e5c00908b5d067733f40d60214da1221a596728f9bd2f5684e087ad04120df3ad3148e60f7fe7e452b8c999471d3d0a718ea4bc84a73859532321e6b2674988cb4dde4900a395036b3f6a0b7515012c585eb7b08af1eee05f67c4854d82722727094d59e03bbcec087e4ee79543820f66e7df31de922b013d7d935ccb052e46929ab0a0e1b5c24f83b4508e8147e96f07235c8408c8b9e88d783e90945b08b76eccbeeb6b6be01f1a836b061ca8e0200512d9ade8d776f57aa9e0c64bf4433e20b328dc37088e3758fe8470d6b8a7546f1684eab0222e9707222d3e7209529deeb424769b41c606a40158c80069838e21ecdc5c07789f36c77fa84f76e0eb8e00efc3ce7533ef5b67f41b39aa2a38616a940c0c49c87bb393d34e81e17d8fc215ba139876c89d0b71897385827b1f91114e988fd5f7db3578b1846db93b6888230aad42cc2da82cf9a14cde8fdfb36063a386cefc4125ffc2187ea41659ea6ff67bea5ce38ad4ecae511286d11487631c49b23112aebc6e775cb7c291976a8c1b735039e7bdbcbbbc0d0cb4f62433755828a18002455e5cc0684922e8556430fadd3a0bfc07e908fc84107388e0d9ed6c38d55779d52321b31c4773c1913b1909251529ce79023b548d35b9c0d0e8ea096a410344d3162583bf34cfb8c38010cb204c1ff7991749f0b4b4b835f1a7a95650daeb33aeb2f92c047004c92313ba675ac14c2eeb221f05dc617d2490fe70707161f52651b8a984b357b9f58486b4612125719e98be8f43fa2935a0134868334a5d84dc0863625d4918b8de35733d2080b59885e7e5882024d78b84f9de4d096dcfaf7c2e4f7efdce276fe891ed370b28ecb2078c19497c70e80bc4fad8816c877953ad722bc36dabe669f369ffc7e49d604b6a0dee32709f889cbce2f9fd2d722582a1c6b40c04d2d02342a269e6ad67c64d0aba83594c3e0293ee5d1fb736a1c89c3a250e475fd8075322ddff25e8eac0dc6b74fe0af9f2b1d187af41b4043006c9bdad4dcb46baf7087a9c8bf69fcf355a133a7db1b83c98bdce13f3fb33adc066500cc2e1ec988527062bdcc4927c8daf539681bce663f37f1fcb5c1473921c66aefe65d7ed36b475dec66d16db34fe71f5183bd2d15be89e57cb1b812be59b6c49eeac023ac2891ccf248e10dd3e7335d329d7cde2435df41910fc8021c72d32ab187188442dfd82933b8cff988d682a56a0444142b04b3f39d788f1417e9c3c581b04190579aedcdf3090a7e84ccdc1e515bc3de84417bdf024bc5a4e7738defb62d365c988288afce233e4e7ed7dc682b27f9a4dc399f3de2bf9e540742a19a4e6c06682c78d7b0a3bd9518bdc29a8ed531ce94d823895b17073b5229a3c21178e9581f29cb839a2a0a5f5b86b9c9ccb24ff3ea3f1c2c5cbd9764b39c60affcc0ae8d4ea5293c909b9b27636ca95d8bc705149d583a858ad5b7c0045a3d307207edc4055d97ce0d5fdf767779e20b8bb3fc7693a532c342ee120ac51bd12c5973ce9e9c17e336f82426958d8838e735ffbdf8cd6bf3aca31046a8040810e64c831868ed17c70d28ad46e21bbd2b09cac828453f9e0d5222a3c29e4191b717382fcddd2b0d589fb407a0231fd63cceb96de15b31f5f01abab5aa1f927afc5929c357823be59ad36cc2da836660001ed5f52536d60fb0affe98c2b084a326124610a034b41c3eba16f43ca430e3b3349473b401037ea2e5eceb8da2c13e3f79a213d0d48522ed3ae73a851649f390ac01b524f921dcc6b61cba00e996f9e6201fb4f976e42054437774949cfd5ff1b9068c38555df0d29fa0db8d99942e260b4bd2413c9f1e12b58b80975490430e3b5f11cb8231f2cde4f17775dcb3acc214f604a15cf9af0ffbb589112ff5dd6d36785113b6aad444de57d85fe061ffce65352674f0e050677663f406d5a0a84d6e125616491ae5ab40c3b4d9f2f3a50a8d38baf021fd122ae1349e63d5ca71743360283472195985db61c98ba6c6df96672078e7a090d4aa31f36f397d175c9fbb0d9203e06704613cb09fe183e5afbad3887a3dfab10b47f04b7221b9596398efad6551ed03c00709f37d56a9756c3aeba12f63b056624615fea7dc8570cea25bf273c4c7edb37eb6f6e25f46255aaabeba930441151c639b04f50f39ece2fe51c8530cf17e31e3a6c9fa430ac3d1201f86ba9cf02a1d624e1864302cf3d66f77791232bf8f6d3d20b622b1f405e43597b0d31d93c5eba44800570c3199d3db6cc935c727416289808eb1fbe522b8640282a5864ac847380a03ff2f668072cf78f0b7972aedf9d4b78e8040ada18a615bc8f62eb72b6eb78e1ad2792dd7f8732823c29f1eada75a91df6a93ed82833ca5339b283170edb18075ea38f77d8a2f98949a878f4a50890eaddb153c46ed226e9c25eac3dcd86f950bafd40f750fa06242c23008f51cefa21b36b829b32090581c84dc113739b72733e6b9b0659b0de43d4e492ce84a499d11cf68ec00b37ba3e1ab011454105e91b001f36203f8a9b43c94ce5da2724cadc38f8b5b74ba95bc4b0193eb11d58acfd85d3e1ba13ee30fab47ab16cd58338075b086b945f2c374e985ae0c723fc35a5b90d6b64897ba9ed504773a97d7bf013d8cf76310473fd587c2825f7cb56d1af4fd02f50afdf386d6db85969f09fd9a84aebf78712722eb1dd788395501960d78372b10df9745aa9df44ee4fdd48226dd06e1b61411ebc562acf47cd537b5fdb0968a432efb4e5ffaa475d6b300e89462e82d5820eb40a96340034b6f399bc3589eea9b829ca1295a3b0ff510f295c005cfae75d5e5bfd848757ba3b0211b8624d70c56aa2f5f7780e581ab1ee8f5170592fa75e1ac72a6d5b3edc60c66e2aac8c6c8c1a45f04d8880415e5f694bdd9c2546992755463c0305f0bd2cf96fe2ecd8a616653d0ae8f0b571e4572062632acdca65422ea430f10d7427483899b826759a2c39ec7d024ac50aa9ff1eeb63ec56104d2c0f7007230da97a7aa5077f8db103163c41bbfdb6cc0f100944d7d34a479b240e0a507b271551c3f1a974e34898c2f4a7fbe2b848111816fba713fb4edc85f985410151222a94c76f9c0ecb03d509d41cb164a0219ce654fb1c726a9c40c94f20417e2b7796367aff32b048496a8d75856b6376e8616b6440acc82276eb366e0c1ebecaabc1e6d14aeefbd207be577a35836b0509e1552cae9a6501b3696a1a9b1d02bf32e2b9905cd3f4174ed6e75d19b923261ed886b22e5f430aaea7cc2ce660d9b6ba9c018a18e109ce2ccd841d0c842dda2db29383fe478af8f507273c54436592544aa60591e9e384b8f07faa84e93a11d718e3326cb4ba5ff88293b5af638c20e2b72f9fa6481beccdf01ee492d0f9ea1edda92e4b7584d1fe97b9200e53628599f9924868639fa672e537f66d3e895888f9a8d3917101f596364349b80af6ac0f3548d90746f5d163de21a9586f83a529f01a14ab179da35813ee7bda006b1150724e407660fbb33321d451657da76566c7f0ae918864e65f04995e033cc525c604d7b1bd3938e814bfb6581a141903ad91b3c999eebb6b65cb42c05f2b29f1e8b0b4da2435dae8f23018e4162d5173799f1821d645887b4b76be9b065f04662adc5d56f60d61c6ca1fc355d3fe097ce985e974db676e740c91a5aa2b097ec613617105a7d0990fa4f15cfdea844db260811854d98ddfd0cbecb9ba7c03c5c26fffbe2787fd727828e83512147b5ee89e973d4db71df328d4bf76662e6a965428587b5dbc03d703355e961e4b0a4f547b71513203eb2f7e6ab24578e56f4f333f3e5b8d30f4ad4106c7ea69fb693a49610fd54a7e2a9f4493d1aa353b5c69f25ce3d1db1de66628b674fec5687bc99f07caf41059db508f1291d561b209b09234b42cbb3e0b6a3c0d474fd2b221b5c5e6dead5fefb9c70ce2faf69a2a040b822bf172ce4f5098c7b0927951aadd579766358b67e0944590211c4bdc250a3a7017ab26ced1e78692866a1136285121e8d3fbc13527b6f35a8bc34e77bf4c066909b7933d6e487855076ea42905f973c8a667c49fa435a1fd707d8471bc636d6b2954fe734bbb3e63dd7a9f1971e6d691645bfb4071ba9fb961d848181d3c085026e2529a42cb9f15a6902ac325a7857f9cb4db6f7ef1d8d12babd4e5745f61b9e0d65e3becdb3eb69e0c3a9d88e1e177b899d0cf6c0e442766fb40a708020775139bbf6b1ccf1bd76b5ca176095f92a516000a53a78a41cc8012904b7708da7a367d6ed5d2d3647ab840c2701b73b5ed2a9a4e0be1657066fcaaf627ea0705cc2ca852271138da5e3edb37dfe0452c7ce92d010a0b94e3a55601cd6c905a6d9b0bc08aa39e9583372f8a8ba9693e1b5fe32647a718a2999cd96c4a900f37332cec77792a6cbc0c5365bb35f967ea3d1e1be7b6131b4aa21d15575c6dd84b3ebc91fd2cbb42315bf55960c303fb0900fde86f410afef715c366f433b54f2c863b57bfa6a1b95d3fa630095eb05bbc6d414ecf4683c9e04ae7d5ab787daa55ee851ff34640866161ced88a8558eae63d653e0de6a4f120fb8aa9fbc852f1616174628a5605ac520af32aa2f0b6d7503f68c9a05a8dcba208f0fefad204540e0dcd253de3326b2cbe1397a802c222ee64c8980815127dc53aecada5ed15cd152ad6a3a81a4996d4c4957cc702377fddc3fa7729aede8d127a2c4e04ac9fc85998fc43dd0412628e5d4d296eccbb71b650d67393b94b46fbdb6fc8e25c300c186a47af21ba96fa220b5a1cce4bc4d12a6d1a71e15c575d9b9e69174a1eb5c05e2bc105770b8c9256bd64aa5f8ae130fec53a5c7d06068a814fd7fc97299f1d211f1c1b0ff29eb54178c506725959728f1759ec05abd94d264766052d7ab3f0404bdbb8f90cf2179c6e183f8f27cfdd68d70d10b1f08c3097c5e1427681ff7f6d27d63559c117a74d27a43e0a002d6fb4934f2e34336c90b0f6f0276165c89a20e4b8905f65e6866a848bf336dd89203bfe1592aab02a5b159273c24c57096d446f9374ce298c08cad6d18a755ae575663537b77fc976d9daeaf3ded054f67c3d3bd82c257c17ec37dc066d97d51923b688211697bb31f0be62fef61e5b05f015dc838928d7d22a2bb803714e2dc55981764e98b1ab1f83f52553fbbdef31a15f78da036664813adbbc4424ba005a80953bf1af2f2dcbdc4655b659bccd7096161a9f1996bd8daa4b75b38e352b60523dd482965c429c58b5f4810bc52d3aae66364e4a375596f2f5ea1c959358600d900e8cf43fbc9757abd7f6dcedd90f724d16b0c0ed888464a66e12cb63bdb05f5e82786fef1cbb53cd912fd3abe86d8635b430376b80ebae6011402ce2773cf0975f3419d0dfbc9c16e690265a9223303354c0c215f1e167687e97e4d09e8f644e29830c8443ed5e809507bce9befbe2415f22640970832d6ee0c1f20024468a7438e5ac58cde02961b17dbc6007567a450603bbb61f096dfdb758c28d84c053e8c24e1ecd71cc234ef15b14fc63a1092d38a2e699764cffc39cffd980dab284cc2f8c99ee14d27bc4ee11d453aff7206ab0219872d4899b7ab49e97ad5db7372f3594ddca2127f021b1ace1122026ca45863c5bf7baadc0db877ed1420472a1f8f4be071d2036f8c95c4fc8fac582221f51c617b0eb60cf6a50bf10a6600eeb1c8d94bda4c9fefb692b092f01ea2a792476fb0ca4bd4d6a6e62222232581b48aa88575b8777c0eb85e423f21f59d88841f2665fabe02f29dde98f74c29ccf57e48759b4ac2fa7c0d99117dc6db871d05e28087f3c863c76d02ad2666ee860a50c935074e5fada234635aaf3702fb7b6308a2679a2485036f536dda9907f29c1ab7e2c4334aade4c18173ebde4f7d4c314ef669bae232596ce3b61bca0cfc6715a9fa6de37a62a21f7466686c4b5b8b52d09c373a2e1187e3f337b920ed80cff06e9fbc9cdd77037e1f86fe1b25e3b265fedc82f824f0a3c9b8b921de6edadd5aef1267d0640ebd726fca3e574c39fd0673b6617e1db15eab282ef7c30950faf01204451e085b47f3830b51a8b85cc674b66e42b1d970cca52a8ca354289745e29661730b74da4297718af3e43ceca12696e98f9a42af0e65a3d0472437d5cee35899bd63d6efedf7cb74b8f5560d6ae128bfbc0ef796c762d0c277da430cb518eecabc5cc8b8fcb8affc3fade4ced47305691e13ee029c97dcee5354ec7188d1194a34ef3787aad82dd4b6053e9ac5d58b57502cbd45dda30ea932757194a194f3b254aa32a988bbb0f4a2da075b4b03c8ed1be27e86c01aeecaa7204256a3296acf69f942dbaf088e9e981c452b5ab14ca6bd3aa572eaf847a4df9725159c1622850fdc07dd528ec4e39bf60940cda29d5cdf11de46879b37dccb17a4b9208c60aceb24c1651bedaa1a5c7ffb5b3d06018b27cef361c4dc94d275da241fe1c36118571c94b3fa4e99902a504ad503e305dce5dc619008b33173efa030588bae765f46d9927aa8c770c4d54c0bc81e6142466ee3808473f34e0d67fc176b360501bcc99b91def3cc124425122204d98237926ecdd0df40e3459f776b5904e02a0fb6511771317d27ea37cb42023fe8c2b24b002d8ae6bb5298bdc1b6b911dbadbfe15d1911befedafe1e34f999ade2508a35228ba93e48a4f68fd8157d82f0ddbee5de120298dcc32baf4f841b9a835559ef2e4ac463e04a41f8a2a1e9cb3912e520412be9e6b79ab91b2c114cc62c244a6f3ed9d724f07ee3056f71f7f0223e9ae640ba884bfd58aeada38969c613873ed5b5273b48e4e6e742e4f15c438486ebdbfbb260335654ea75db08e20856100972756ef5f23de019e20a6bb5411b85d7769d09f7d25e0315e81e17e130cb11f1ea9e343207779fca6b8cb01b5e990715dd520886a54377048436e51cd2d89536fffea0ec67b3805bda78668296b48e2078d287b5e6094ef2d228fec50e4de2337c84e4a4e61bc4bce04a6111f503a114fbdcf47d91761383a01a9c8fc638b3c51399b6652a822648b6e8c100f477bfa5ad3434a732d7afba91b582101bc564f50f86f5c9814c9dcdcb503bd84bc68599da1d873496ea7c1217f5097b293d232ce47f6c66d2952060a893c5c7a43f30ce1526bd40c962a8611cf2723bc6f85535ab20bdc5fe2da7d65babe86370da26232ef18d349b345c7069c2e0f5ec45f1dd04b545d7453ad2bbfcaf2ed9902253081c6b4f945a06cc737d48aef74633d3fc74ad2adb69c4c2a6794f385a4fc8b357cdc0ac862ada28294d30d9f62b5513421e8a55cc65f95455d093ae3e5a65e074c7f46302eb6568445760d100c60a95e223243608196bffdbf9fc5036a1921e54acfade7854d6e088744430ef47cf30fa62d80953add2d43425ea090113e4516ca72a6e0bc2da602abe587184b1afb4ee88b1da8a833e6c7cc57111dc25a7ec9b2180b414c30e8e93ab2c86f6ac79f517c68d3369a6d3f85a63fd1ae14714848c0126814c074cf38244ecd6956a4a631c38ea333c15ed5783913e00330d93bb391938252bc5d65785ceeca943a3f364d46671afc75e43d50fd1890fdd79d3e98e37e9195db718bac1fd7008f18bd1e317c079f50eb07ffb67464ec8788124915e2c472ea2ef1079baa7f2f62c05d670657a553cddcab37ccee4fc7f652b6573b31ac65f7996a146ef3c3dd9dd416ad1abf1c49868261c94dc35347818e07f2fa2a29b61bc151d67bb5e51a33f14f206ab248a993ab01a1bf9a8d657afaffc923e6d873a9c2fa6c49ec10033c8198772700d050dfe5307aadd3ec0d0a29f1d0d13d287a58bce4d4384b324770b351076c3a324a8cfab35e9740557c0aae40ce4bdce04239fe888e5d03962b788137d67136c408dc205903eaa24434633ae11619b11e1794794275241749301dca85583676ff58ce0bccc63c3ad434bf678c97c3d75f6468057eb63cbd7abe7d1e1b261e399f7266f47579c28ea14284e056c4412e6233da0620afc1f98a327c78d1705380f4b2c4874e357c8c2ec05329a4e54090868e9ea9611aed96b5f8753371c159d1272a04656f2e8548d7d2dde9e21148d946c71112833f0989fe8e124e97c727d82a8ff0cd3743fa061ebd88c0c133f1780c0f90c97eac97bfe5188e17da7b176928233c1832745c5814b415c04a69fb978234145f0cac35d5af3e64156ed17000d9b3ab49036f02cb11ab032fad7446714085221487dda1719f082a3cdafb57b06709194028a42fb7144efe13d90b2cef06b9992501848e871ca4ab957f6c0a57aaeb5578c9b36636cb9e1e118f68187da75e75a35adb790be73698054d61183a7a3513b2af68a38f705f5eedc4c4597a0083be1763efd3d6d3cfdee401e750ae4cecac18324eda05f6fb068eca8e0a439aedef7195397718520fbc10c05f065a22efc60e7f1c73d808de2f29cf1a78b30a4e6c02ad5cf98aeab3f18b9cce19aecde766ff40f6174ed11c7b5db39c0eec7e8352233925fe899036479c7e1623e8113216ff08b7a4133858fefff1f5d7087aa56bc3f3717384fe96d0107c4e6ad7bf8ef3c0b19c8c1bf092a42b8dd5cf5c8487e7952709f053fdacfc19681913907d8e046db53de72dc132fcfb25c52f7b8fd52eb1206494123c760d6839e9589287c2d3c94624df795f7d74989569fe34f86c6b761117d970a7257decdcc2249e2bf61536cb5b3569f4135c5cdc9a89c26da422269425e1f1f313d2bd74bb38dce3f20aa2f1d2588ce4d908f2feca98acc819b701ea880b8e15d5283b98ab381c3050fb44a08fddb63ad56514b0641cc804a2c74dc872a7496e197093fefa181832222c6e14c3e5a6665b0db8cb66abdff9f037dd36113f4d144229c60cb735c2275a7d0eefcc763252a6134a9deaebc55a4007600dbf7868db69e3330b164f42de9054c0c70047ca0eb24d1c2a41cabdfa4a3e6cf18e179f57ea98e405f90bab961993a1af04993e55c0d4987b07095b44df8c8ca6e8cc2957b4cec463d35787678a7f93b9be7bcbea2a80fc766bd779ba7acbbeb556fe5094c0887d4b9a5b4cfc9452ddffcfb6825041a64fdd67d80b0cb908b5d44a304aef33cc74c72c6d748d0fd646c900a01617b830536dba34249a34bca4d37114fd5b714ac43b7f02749aa276d2cb63b22042d15c265a6bda2c35ba425fabeee56949b7e4d770cc5a58db502450c18f857df56b3e2d0366632b0dc43d8c25faf65e747ea739afbb1657c28320e98a23c7cec3699f4b191005c8676d5610f9fb9f9c732e6a876aba5d9d4dfe0320e15cbb397b4d4ad2229521ea4a49d38960ffc10ce54c7ec36c150034a3fb168e9cd2643db1e4536b16f2da5a44d89df883fabd1995f27a66a4e6288d2a6de3fd095b07ad976afc94977834234eccfe03b683bb8192723d6fd0de322c1ae004c82d6b19035bdb11e4e46d2ee50ad76b960a958ec2a60973d694f9560b7f8b55fed343c044a2e91a288637b90908cb6268f326ee9de0b12f1565c13aee2bf90bf1b35d9a735c7362571f18e45c4eb8e76fb98c5efe32bbc867474c63f12bfee633ecf5fb220c1261cba22dbe8d5e695dc9f62d9f6181970486b7b50dc59a57a0e351aa7b4165beb4ad03e7345e2131d57760db98386a360858d59652cf8770765693ff5b01944e5154578db141d6d2fa83363102030e4966dca7f85c1f018b2d0f294660f2bbdc6485d25ffd98770020bcb7b20821bc775791b8ab70532eab71745eb2f0aa12d821b8c0d345459d321635ab95fd6ab9ab82fa96a339a0758744454f1a1d325f8340da0e15d910e368298c50383071ccaa8b4c6c07384b28e2403d7f93dd40bd3e1fe5528bf26475d62adafd2544a62eab7a8e991534eaa9e154df736575238c670bf7ebfa96a84afd073e7dfd2026f9cec44754305ef2ff04f8768a896483c589edce77c2fb3d0150ea2ceeaa45cdabfc9f03f3dc56120516c82993c5105b5120e8da1d52cebdb27c34335ee3ebc5ea1069060cf810727ce78ee509b4125f49b7bbae42f86a01362dee07c8f12f1e68f42b80b66d6a88785af86d8053ebf24742c55ff7c94466d6f6118cfb0d012755e775ffa07d43b61cf08f0f5f1c8caccc62326235b8f4d4a7139504cd0319fbdf84b81b45ed5ffac2adbfbe5e8ab2d34bd80aa506f99edeea2671bda8a3e8e1731ac57cb9835f833c87754708bb167aa2f38c7b9c974ebbe9757fe2e3d1d02149dcfd411cce036a23083f4644ad2fe90a4c357afd5bfa849a2ff986a574d7bcd8df746fdda0391904558cb5f2258408dbe40dbc4f5f17ac3bc62d3ebc0189445e600eea96aa58a9af0dded9c0588a366f2f1555bfef0d2e6c92704ab37ff9e80c9f59671b0156e8a4770bb9c420a071548f8afc6a759302022a27b289bafd4ff64c5332e158108e7401e37467018ecf9e5d90ec28a6243148371bb732f925db6516ab7426a66f05a6cb3e009b3efd0c49ca6f7e05f1125c3b4485b30a6a3ca185777d315fb13b51ea9af0ceb6677f6a829af8a9245d42bddc80a39c598a28a011cdc56802423650e1c3626a28f34e10d24d323f1fc9252aeaa524b6f5efdf4b6224bc69846d5cc640d54c266d8d2f7e49c62f40b996d34314d591e4d4a689af0acddd51c1513c2dc20a816af47016dfd0cebc55973fb8026a1b26eecf07a5ff705e0c2cccbc639f32a3ac7f211ee2d2b581e2227ddc070388dd0018fdc80a3bebda0d169afd5113d888c17535057111100658b0618e73b7dcae7ea21444fb23bfd8e8112bb042c903c51dc22c7ad1bae8c4bbc7956580534bab792d7d6de5257d4691b3c3f228503a8a7839041d125c7b764fa97e1819b9a9022d345696a788935e55884c4a33cc4a221a0cd946438bb655d6792cd4fd109225893755b17a9d0b9947ec17f45914210ac45d5e9c96ee2d5c528e5d78d40c596efcd6353f8986b54ac676024c0299864c0087add316b2ca46dadfa8bbbd5db82ffe0ee8e1ff33699a34e008e068db2ed2c1c9ffcbd1323ba79aa5bccaf212b12045b3002d9377996cc6168928080bd94b0c28df54209814b9e4cdfcae8a86d8ee0aec1648e2c0d12dd9a848192886f3a20fa2fa5fdfc6eb4d4c21bb0dfb0dba6d1ba0ab5fb8d87952c11b089b64528de953cdaa1f0b3e6ef2a7b907cee6e1a6553bb6f882a3fb174cbf5874755b8b965d619f1907c68f058ec1f6b613e1463df1b5e3225b06ade3e526d3bc752d8b2196890f5cf3158fb283e9469e3bd6c8af17395d7cf79af2087a26a87d31451934ddcfe9e4ac90d58f77898c5e384e6539a6070fb8addfb99ecd5efdc9453135c40e373b2b89b6a92a5ac486266aa139922c3e61d0c47c2212da7c0b9b7e240df7fe3a13e2ca2cd3b201a0843ca8e648949890b1a4f33356b56ac87e76f65ae6004a5f09724d1b012763171e836aeb8754fec9e90a6a0f1deb6332b8c14a23b614457b852bfa42ab30a41a102f1e4996f766ebb03372e079a685a73688fc52be04c80c971a8fc6a46d38ccd5524c22dbbc729c8be5b70e6dec1ffd3034211d778f574e4c7a3d167a4ef35aad67201b97371562d1ce198695214dcc754a9c27cf8779c22b8ddde4760fbb5d0d062dd3783094c26a2b69f35c33949f0c755d2f774377383ee3e5789aaa7536657ed51c9c986f84f0f226b7988651d9d9214a31f17e055da838ed1ca08976ab383e6fae0dd7c6c953476fb66d815684aeb0be35af34339f06b8716675903962fde79230aa33c21a9c635b29db95273e47950a42cb853c38f351b4b4c84ffbb50321b0d773b2875eae37a8a35ba40f50afeead1c5f6565d5c608e7cbbced0d1c55f72f36e829fd36be6e83b7a33ae2e0131a753322c746ae8aa5f4f2c8493cee9ccf8db2feea2db532d74fb3772b138e909b524e68e1d92c5b53d9bffb640085983a1e429a7711479b37fde976ec0878e74a4526bda3959f1362b8dce4acd1cf221a0a66213521ded21d36c95dd3dfcd67bad149db0ca881ae5a6913762c1e22d143d890de3cecfd4210f24a33dcfeb66afa2802340be3da12f6a237fd1e843b85a2a9b90f1edf77b41c5d96e8cfdb5be22370651ddb05e2c84c03fc1f6d7fc7e79b7a5250005c7949d39accf0c428f75eeee625d5af3b76300ade43732a2906af3484581e6ed4d09f3c651c135005c3409ef344388374a6cb4fd4ef30c142af4c8e326e6c740b3d02e3595615b5b598119e1125124b35b5698f865d268e78e9ef1fc9bb1e026729fda2e5ccd8816c154dba5e66f9fec3fa6f3caf93390b2ab097ffdbcbc1b489b472b2e05a7e2a3a4a6fbdff4f27b18055c605dc61543f16f013a132c301d873c93e1be0cc2b3523d842e20b65ce8167490fb8471a5fec80a99c599d3edf7be8044adb01e49a602a28e1bf952a5df6e17d795df51281e56fc06e8fe62dfd8b4eb75026fc3295d2903ee6fb972fec4941601b86f99c22d188307cfbbe4229e28513243c99c6b2371904b54b7b0587b4cf3d30fb59e846627299251ae92970233e267f66d500e578c19356fdce56321edf223add33bb4c211a03cdd4ed375374877e6c74ede42346c6735cb92c6367814e6103fb71aa6719996cba94b69f88f396fad6f1b2151525f5bd3db4896f96b31b1c411b5202fdc9f67cfd9b2f116cb5de2e7b675769cb8472c7d8679430eaa58ae8de7177b74b2734ed4408b3982ff3ea6e7b60a1894501f971bfd7f40427e0a575e853392a31addb28cfadaab79d9ad9c365ee480604943e89ae57556d9e42c309e0f1f8ff8f3c03f4f2eb123cfdcb2daf9dd6cf3b0076d52bd3bade03fa836f1daf781fee1713e6cdc5d7b337491225b44f375eddc793322c7cacbb372ae5bafcd1b8aa5e4d82f09dac800b49f795e75334c972659dcbe6e5e0566647436815cdf1aa073e7d1dd414964c58dc459cf6e5b15436d18fee38acd1f37503d35be067dc0148bfff9ce4b1bcd063c5bf783ab5229fdb2ac6f5ab63c4d638054c7060d6c3ca725852c175a44198941cce612db0a049ca3696af047d62b0b20873f81a73d5bc50fd22a625eb9d1ed20c6f8babeff166ba5966966a5ccb95c80bdb363cd57de8dd78fa47e2f5505fc1ad9eae078ead74d18a7232e2c78cc6bb2c3d5bdee500cb11f5b761245365dc843ce37a097ed4a6a1848f31f48334ca8158078e560e5a2be4aa22a9460252729a2eca6641f2ce350c7420ec186d1d3cf546573822873bf6bdcd3f66edc7d5f30c4cae73b8200d7d2f5dbab5eb9e5d747d2d443bbd95cecfc85164eb981fc8eecccd309e50ea4c82392614307624b5dfbe00ca004fa507fd4cc1b14e19cd4c03da165a3cb282b929bfe9827a5420ba937126f1f1fd3c5db297dc3a49688c3226e05efc95145cf6ae18da59299c83537d4944e87f9dbb952b963365ac01e0a5fadf5ee25f5f73800d6e77875ab51679979b26069e201ebee8bbb19baebc14043421c11eb96b03a1c7731da93dae0c69cff54b3cb7eb1bcccc46083fb55bc57bd01720b737e6356d7c51e9e7823a264f19c60865966e92a560dba172ee28e6a3876da3f8d508e3e5eb6645857a9e0bef8627273ba37adf8cad21dbdb861e41cf50d0e7a9fd991a20f338e4d5fb209cd4404e1380c7a90df67483f386d1a5ab29958b0617cc3c7ffefb173db36e857e22b0ff62c2dee22e1d27ee8b18481d68808cb7adb43a37a4f30063152f217f13adf9a4721944f1952919a6ed3e73ed9c131e7951661e19b9fe59cfdd9a60963488963967af55006efacc7b2811ade7c19f4b07e994a699fa2c1af917a70e48800bf36558d413cb6181d57e1db9db3c6b4705a9309add001cdd535d72097caa7f5f5b5d5cd8aa5dd1e57f875656fe8b91b9e7ec20e10faaa90032e6e5fef3714b3c5e730edecefe3a44f1dd6c0f72fe6344b7a23542d6881d9f3d77f8d219c1d8e66bfe2d576d3205e675b1dbc1c6d76ccec844396cb87257c984ba3c37f48673d76e3a0d27c5a0750bf6746ce40aed9349b8f31a0e935a96e8a5367d91b1835dfb48625a0ac9ca175acf0a3be1c7c0f2b462900ce1872b5b1340d1fe89b0e10312e8ae63d7774121ec9c7c900636adbd03897ce0639aea90f1c24e398d623cae9066fa3697e59087e8e65031b356e499120fa04f450014e762b65e78653b5060dfa0d24ddb09de352dd4f96140012ebab874f93b3f5493258d418cf7257ec5a083574a1620f78e3a3ef31c6ac228c433455dc1b7f5c2ea1cb971bb9c2aa01daba7b50b345798a5d4f75b6ef354f07ab52aba37d3360d653ebd3320ae0d7f92bf78509342d66dfa2d17ae490b2a7a929c6207108913a6324d6bb078ac7e27be7b430fa72d300cee03f825cf2eb08634ce24e8812fce625d49198775edba7fb86ab676e70cb2256b9c99d9bec4c86c21a6a21ec565acfa8a60779f2f5516885675edff4a0323dffa5e4e188b37d4fec041cb47f9fd89ad08df7827a25c021370cfe84d043f93f7a20cf3d81b60aa340e9d075b38a5692dd61ac76bd337df11528bb4308b61f3a4603819e342b5016d8d9df5750139bb4fbea4f9f5408f88a34c51c94f70668b0ba3c94d9984da4cdf2eb016ee27c58e8a0d6592c30b9ed7ab2a72378c5223246f9ca7a37d6733948d74c54b2de21537b21cfc09eabcc946051aeaf7e400103a90ea06ba1de0066ac5af6bf9c0b83c2fe21e1894596b13591b8c990291064efbb63686e8803b13f09292592aea2a45e2d22c015411832a44d34b3914601b0457345029931e59c37bc7475a743e5f66444f41e729435b5d4fccefa1e1e9255986569274389b9b70fec172c6d2b3830ee054fac2c5345fea822f216be219e46c6538eff6d22b6852f56e2a95f519d665f4c19e496b8fa5d9277a01851a1bf604cfc62c4a173512364878d04ac555c976b5b814f7b0236693c93ece091ce0b1134fb524468b6648232733a9a6ed57c5d82781060b692cbe6b4e2089a019ef582f46f252baebe378610aaea189db73d6d8c6f9c74b5b9adf533f26ff049823b715bd3b88a7c58cf529134d6a83e3be202c9fd1818039059598722c7d577affae3617415891cf45d345693b76cfe62de90ab170d32e42f3f38a10b49b9e724de659fa884fcc326d9403a18759f751a8e2a7eef39fb6c773ed1b7b6d2889d2ef130dc250452018a7f7f6e42fc86f9d961522003a83774bff0c178b40bb011e4a252147c81893703fb279ec004ccbb246e8a572212082193a5cc5146370a35ac9114eccba65d77fad3cdacf9ecd37d387e1348d22d377d7c6f1fd077cdcf77518ee3625c7f612d5cd29ac205a22efe517a194e31ed289a00c0919f3f3e2395ea0bf356156643eb1a3c325335a76ec73d0b30d23bee238896e62317f9bab4b1a938c02c8b3df6dcddd6b2720ac15d4717f8f87351d26c46c676a2fc692b0d9e6f45d28c69cb6ed1165b7d432ad4d76acd74f520ba5e6683fb232bb4ffda1df7c31fb2ace078019ae63587ebe86505ea40913093a3168c0cb1f6c0d20722dd4d5b32e13ac92bfc8c508ad398bcdee20d59084c9f3a8c31bddeeb57178b6ad7b1210d431bfe5c2d57274588958a7a23c96c34ec2cadc3b6becf981ef91c9702859417138cc18dae8218d9e8a06147c2c7b3ef0d6bfcbbf8bf0c2f6d503ea83ed2cec44554ab1c68de2a3e65147ec68e6235ad78d98ad18363a77665482698bb4aebd732fabc25f269b7c8cf6267570783bdf9d91ed5e5d0f1fcd2b988c6b055c5422835e27759e6163accb43627da32af0c1d62ded1751395a4384ca3c0c1d5020eaf3065025c35a9d76e75e90bce476554189db73f026b6b90b12bcda7dbaa4e6783814d20027aafbf9c35b670bf5f1e705e30f19827941dfc4b434d200cd1331d90e1878154a84573b80fcc6247f720c5026c1e020edc1b092bd3fc45b3ae940ae7b6ca47ecb1d871909b42d6c6923b5a216b199ccc21cd16a013a2f43a33957f45f16a5a4f4427ea65fcc3e532925065c707d4b56b3b760dbea5364bcd17b98e410596d6f7e0954721906fbe8308392e07d8ba583d102e9aa9f154e077d77a1b01f51965ed740638d17ff6cc4789ac0260a52dfc67a2c6d613887ecd2f9b8a3a8d952db34f5b374dba207df26f4489056e7b6a54c10e7c55e7ffdb8d384e3f19db01a02dd1116b0a488f5a212d24f4fc26e73cb789d832be77e8c284308834cace96cb9385601c3ed4f1a59f7b07370185ecba5c193078e85e211a11e4582b04cfd5d4d39945f458257dd6b96178fc3e4745d99b83790b92a312d36f3f2e76b9273071aa52544afdafd93b1c00136c4ca90d37816f034a5bc3568849133d2d286171df316d01778f19ea76ec7fbaa1b3375c6e656c4dcf2bb604ee45bc9db5479c62a7f750e9bced941c77fa2127e842ac804a49b1c4c7b1cca9e12c5ed829ee73d67a009abf37c6bc71fc7ec86f991ea2e526cef540bbb037a4ba41621850bd7d156916644c85e27da76440bcfa5ef6454fdf6616c1a1b74838c4a63adec08741621894e105f36a963385f8fdbcc8fa82c8f0683b9095632a53a17c9c0e9fcdf50477085050a86bb8415c922703d8d1a3ff56b0608bd3a9b59da45a3c5995d642203aab2db3d43c9b757137a028766b4bc24f2ee7ce334899096d05ea62f8d7f853aee51b990bd2802b5b18ce240bde24aa1bfc97b7cd03e53f032ad09d1cb4b77154a4b0cf9a00a4972acadb811725107a3bb3f0c3e2f4bbd362b8cf724e06ecc53eba34e25f0487f0ba06bb4f896e026896e9eac861be300010fb23b211c2596245f84124e16602ee742f5c388ca9101bf739b2c8cbceb7337f0f5397167779a1e289f3643e3e65bf5576e036cb7ee37439f40f252be8ebd8d36acac73f804d56129bcf13eb1f9326d8b48de7d86eb3e228f001d62907aab88826dfc2ee0102121eb92a29ddd81ee2c7e7306b2bdfab9d0f086faaecac1ca70727fa4fbd91aa167427c03fcb04ce46715274d6abda33fd07add359877b78e3616610887dbd1c913ee7e9dec76f32de4b9ea660d22738dfa36669875d25c5c36c036c99dab9c141965363c44500d2a033698efc4dd92765fd0288ce7009a24be82dc6b70f5a6501739950c7486b32964530f4c622c583940300103a2fa8bac54212b34db6c44b544c51fec31fc413199699f6b8280c2f6f58ef7ba353921b61d4dc82626babbb55fabb78b6b9b9a45d761d40d0559a73b8d564b4dd25eaf81793dc60e06a1d1c452959deb04da77d63095e4396a573f5931d875e2daf41c73192c6ee8a126528958dbddcbdba668813c2f9d7b72777e2c21799eeacf0bf7715d4b0c469fac710426e56fb8130874b2815280dd94648a85c420b2f32cd0fac083aed579622faa4922eb92fae50e07f3336fc80b5181c31ae04514cd42af1c25d2cc5801be95e84e4eafbd3dfa787530b953f4169065ac4261c76c17a0092687f7c7d4183b5a04a345d51b45c268a72cdb0b2c552fa9d6e9532041c6a82b22d223998e80bff2677e013ce56ad7b8fdb482c3ec025f0d670ad67980f57010242ced2dc0e27e2a21823b5947898a716cc26903cc0df75bb19891280f503ed9903f2dd9c439af28808649c82898e00a21724f2a64ef0325c9785d98b83b67bb81912ba42a8b3d0351ea5797e4c6a0aba41c5b1b0fee6a630e5464ccf742da86379e70920a1e900175566516c75519f72fa69098df4d3c71a6ec1ee7c2c61f069ebc1658f691d0437b8613d4b68ab296839c72a6f5ec56ece3ad6f4a267151f788bfd115965912c0e1ad30bf5964a141fbc62c01a04c99903f70c5b7af9252893de50d11826f00f670f920c7aaaca3ae009fee8672715d95c7aa2233b35f9b05063e511cd382659e4df802327766a108a85a0954d46e57c83d347d29218abf0630dcf146df1018be4ea04b6378dbd741a0fac95d20a08e65f0775ee912fb0d942f29e080fa54033e4db56524cfdeb74ee359fd5ddfa572984a7ea03aafc0ec904a5442f21f909b837658568f987bf9dc9607e718591127d48b4d21d961a1950f92143f075bcd6dadbd2a526e345324ab320464d1f61b294006eb681a918ee084e3f4d54c34bde9e89f710ddfbb80fb591219188a18e924d204e62a3d5b36ff3fb933ee803a5fb169f09c0bbeddf66b6586378780042b6c95b141e105258454c9d8b64ced8ef45caa7bb24e9d27a86df1b62cf15e7e72d4431ffec1cb1ab70bdf6c28ea6cfe9c5f23303338f49c8b96b1465e7637667a63981a5f223c68bdb4df92c1531dfa54143daddc16bb19f360b42f54d6fc4f84bdc77ed141acc7f0c39bc8e5d6cb5bc5047a165b30828f5924690f6def4ab11503f95de07d8dcf3d01b21a9d1eb8d97a017d725621e9dc6236c6e7086c3a9f1e59d0406233a0435ca1d00ad6d143e872c1db107c0bff8d5b6307a57edd5d9c7c6908eb62b41b80fa2de7fe8f19dd344462b4086e1c752ccc5f193af6c8a7a2bc74585663a53a2795056e4fd9dff234b697112b6b6356bdb5365f5811c53f6475665d2a3594986a215dadda47f963b68f6b6b50f81e91e5b344625257ed202dd15c219e3e13c51ea0887485c5e2044b0851f559a570ae5a8755cecbf3a659fb9870ec9bcb2d51b8d9eba571d757eb1530c2bfa75569c4b4044a34897f3b71f1c646086a4adf512bd684794515e3c890502d25b32f562f9a554b74e9018f6b70798a62cd2d5d85d5949f3c0eb47b15b0f7460670be05270e18677999e4dd1fc516b7a88047b75198e06a025970a90ba486b3a43b43189ba2966cf8013fd71095722d5fefcd8c75568f2724c39c9c013262172cf23e2740bc15e0cfb2424b93fa61c1654e15fe93895f3973d93912d3fb7aad8c8d735aa93fdcce7ea127b477eaf76702027a7399f2e036619b77f0172bcf73debe4d638e4dc63b3f7d53f63fc849489b2c97b78b09a16ad65d169cf9a7ec135d33ff2f44dc0a7a6a613ccd17060fc5c0f3dbded1fbcbce85823f254b4d4cf7e53f7573d4d7107f151ab2996721d0dabadb1e5bee87906496b48339164e5a6da04b0b5f844e6ff62e5c73ceae32f0c68f8f631620aa85e2ad1ce67e7be69c010c61f3179c16c2725100f331bc0256ccc678058af05983c6397fb00fdfb557d9df461f2f6a1540bfa88e6e9b0373a554ad5b72ad39e1b24a26f848277bf66dd7875b7802e7ebbb7e075c0749396322163bb069305543297d3bc2b509152cbd2f001e635aa31d32ba7607b6e6e58202b1cf6e1875ee66ec82fbd2b74878f8953ee6ebfe2b8070133d06f06d561a44b501ffdf84720e4de49e2d6f05b9fe156eedd4453519382db526d4a1f16411f91d3389d4b270b8dd68c3c296e75ea9fa51f0d6b841618e945d293bdee5a6bc1bfd9b1a549f1691e3d2e6e33c2ce5d6eee10e5c5864362badb42e17ce93ad3212e40d3a8a726852170f14b50d9af8c3865a310657444a3d25a642d66b1e1b97d1a4cf187c7b14913af76a3921f22fc1e0a985daada464b189a0d138f42a467596f46a5474af8ce81b1bd9cbbdd5fa09480b639d1287433496030bea1389d276c34830d8f5198761ca19b21686f6663492557d5fbca8186526203d0f6628a7d0016b08ed1ef73acaec55182cfa7439c62a303f66f1b35fcdee42c665672aea2e9e8ab62fbee7577d00b0ce24a29a5bde3cad1f8030160b59c84c40992ba6b0c8d7bfb6655ed20c3b4dcb496b268b91bc3efd87ef97f93c85a2616be32070700d872e4efa3ffa03d7d6c847bab734192a271016b36a3e52d88a057af7c75186990122f61b2780d0d6a5cd220ad0045c5d1f51ccf670441df1d296be4bb2a352cd346ad2322e9d5c65991ddb95e96ff7e8d2c7e5def9c9392a1fec56cb13aeffeca2850073b6a9f43cf2812260f322001000ea9f0210a83dc4ff6de83586fa56170a516851578117332cc20fe2d29d9f933d37ca7c85b76b1638fd315a150947f4eaf37ea974e6a8796c431c2886b080711884fea38b2437ec0435c7df4082eac100f5eee7b9828a3900d694a3d0f9c556af9dcbdf9ef5122f67578a8847455a9968a5ccca374cc9dd7c60eaaeffe31336609913b35fcf33eaee3d5b547d6168766c379d4344b2097a30a9c9931721512fac44ddd2d7d5584e3e34459e7d94a18829892f206413f8d7fd2e832d90d966480dde5826b4b66b804a15750fd4b630de01ab6c1c1ae54da48ba2b8c4f61d3c6b629996180a70619884bf577ebbe8897f6a36439b4d6755bb4460d020e6059c37702953f0f99d664f45a660a019bd76b25658df6db55654862dce65b439cdf06575257d25cb3f4ece27e69e5ceca39c1f71f3fccd43c80a0bb44e39bba6038d9471cb2f4b50221cd5d5ce1d821a57f1b85efdf5ac5bfee6e432508a641d8be57b6272acdeb0460955f46d7a85dce3991f2299397f04d428cb4bf37d536bd2c39be4e34201e4f009ae5e5afb7c4f98a976c806662c3bfc98393cec4aa54a654f0138a64a9129e5452e1742aa22a5f7f64fbb4566229a7e514c69c41e797348036db19dcd929abd535d9e39189d3445a80d133d00a13f4deede3b57ea4f5a5097b81cb5e982130803023d23fb13e8ebfe97917d86e83261d23c096215820b671ab17b96b4c1438a65d36def4ef1dba9b461161a49301eb9deb489a21cd74e3ee44cbedeac69f9a43612f988a16466c93fe9f3e34aefe8a14755a0e18345e1881805b02d16da3711023340d5c0730445d2b8177254954c3bbffecfaf6b10dffb6253ec1e4eb3927e5c4f9f69cb9cf8741545a38740046b679957946b2b89d828a1280d5930ba9cb33710e3f1b56fd455ef166f31ae4672276a33a076e8d2b7c3723c5472f1a0dae104fdd93335d1913c0303bc3f96c4498cc0deb9d4a834c3524642e85d4f041fd7144c5bd3bbab45a4096597bbd0c5adc10c271965c3480d72c25bb754ffb0fdec2e723669708cbdb70e7acb4e86cc8173c8a121640dd4485517015157e7e120dd2fa2b77d5f635f63afadb7d0965f44df38e9a30158e42026ebb014c5e3bd972d4bc82fb99a5e402d53abdc463dead1eb2e341e15096e086d18a2bdd96e0ca47f09dc05d3f3f4f315cc20e0f33ecf7bcab43e5610b0e86d0d56a6410b9153995c0a316497a10fd9a4f05f3aaec84c55d47ceb4f3d5098f4df23535b26834027c72ee10cc5330ee58330e60dd2efbf3c69175b489a26561736615d0dd5d1b80fa1627b02f48ec1c39dce7729b60c4d89000482cfa4bfc6e8cebef6d7d20bc16b7f625be9d6e33a639485e9dc68fac150fe2a161718900f37cd8fac2b91ecbc08634fe242127efe7340a38d920dbd76db7f346f7df1c10e996ac7ec1abb93020fda2c11f937963fb59ad1f2fb6b4f8814d40afe80cadfc93b3ca838dc6be5144680464e04d7e7e5fd19eed21b9a357798e8c85a1faa80f383919548859fcc9416b1055bbc2b32ca96e85e7f48d428225c72423d9222df32e343ba46389c27c86e00468e3da784b6574a85b70692f86177c7cb948237c0b6cbde97447e55c17d103848fe41201dd31f1c6a3dc802453bdab6e3f06efc83250ca966a89af3337b8f431d71fc62aca5ef881454911f1f0377df220dabd39c5726cd8ba19806cdf333f65b47e4c6c472185b2addfccbf23adcddc3403cb83a7db02d688084b970d58d7d68a50803842cea70ac4f0e729d00a02013e0e16940755b01137e34b22515994824c2d64db2414cf0b81faece573314e38883826b2bb87ded4bac2a688ad2fb8713a9f646ef05ac3e71baabae6ef704286fccdc62a5b50ae25ebb63040eca8c304ab6d91c0ea1592f69cc1185f5db584f0c6bee1d668e8bf14f06840598ccb3225b51e726ff0c712424593f7196e5ae8875a06e9d533e73981aa8bd935abeb5a85e0d440e031d4565dfe80808838129c1294e1f7f87d45d362253b55b4fabfb1f1c7a14533a283c51df0a80b2e2816d33ae0c1ccf4927e2476b4e188e3f37191762ab9c170caad73f4e0961c71ee5dba9fc72dfc3d314f5d9ee611ff0f8a49ca83a791f35be7366025821b3e6a0eaf23e9d584cf1fac5063db8416c9e249880340a879ed7cc6b85f2433fcb9d0546696543697e925568d2613f9824755010c3ae09f8aef3f6761ba996e6776b498d798fbaa51c1ad3ffd4262d3640bc030dde352039a640760cbd121e127c99ab4cff7f6ad315ca74d01a1d057a911f32673f5b17ce21246879726b94552df70cabf997f970b2bf3d4bde7af670ad274757fe8b44df9a22021b69b118f4e210a0f96a1e85a02bf09c9c4110f3108d91e733ed803b70183c6f85dc04c1b8fee04891edc8d601a8260ed2b18d4a9cfa630f509d1b6eb0ec8837dc757482ff9afef3f810c160914e249076d3fffc50988101630d341a1a08bdd1695a6c93dac68242e4cd07809402712320cae498c2e7f1bc56ba2f4dac64d215eb2727e6186c26f9c5a95b99cbf0f6334a2271569ded04161c145e1f54c7a7ffdd6f78ce98f38bfb25e6c80525de29cd3652b5a95895bf76304b005f0ef65b70e2bbab14acb9823c0611641ec24e2c666439687d390b500d68ad885707f8cd8089896e7b23e8f976a74ebcdacb83136179c8a161edc3316bea986f3f837a96dabf421ca49927e65c15ded87a938582beef15b628e3438f24c187674bad0b0a5b8b441b71f1ed6962a8cdf1949b9a9f2f632bf47d27b56934bc726220d8c7e2d75235d1055a981e1db177f9b8c4a85f8973d9556d93cbc19ce5df476bc4351dcc6133ef4ddc4223b3daf8cf3bf79a70eb8f26f487668de790da2c4c2a25661a79e8851216b2c7f6fe280467bebde1de1fd721cd238aa2290133ec1f1806ba11ce5562b859c3b1f22e2ec86edd4d983aba6712628d1fbdcff0c7e3fc555ccbe8c5415b553363b4b6ba4604a65c247b57820019cd368698b44355969e5a83efa1684ce83b49521c39be2e220e653600d0fd0d16347c6646f63dae3ded24dfc912ec601e8b1df0d7d9767380c262c386a1b400038fd33ccb05256b9f4e3e960efa2ed304c57edd4d2ad841161886dff31d172f3b93731caeaa6f47372c4583c34e3594128ab498ac99248b5c199b8502e2ced8f0e67a44c0958539453e482e49c0bdd29483517bd81c6bd9b1535ef0a8a481aecd84abb69ef9c22df6044cffb796c095eeeb9bc1dbba12a6477ae2d10f4c08bf9b02fa84272cd1925bf541a9d5e195c85200f9900dc2227c44e5ea2b44ba05f53fb7bf5ef04867583ccc4ff46ca0d704ca35dabf274941f549fc1683efaa3ac1c20b06beab9d47ad4ad44281d311a6fd4e2a0aedc51076c6820afeaebb8739e191544f47a7292d48713c6fab245c9de41d22234e66233a7015a73f826190a9c938c4d746d68dabf5e4e62c639edfeff30010585bfa283b082a972f3c6822f91690204e53a90da067bd946e2408e163b746aa6103ed9bc5864af9db28ba3845a6f877018440057b20f17715c4fa726b04123b63d0496bde5c4f7dd47229900eb5931874dda8c3ab4b58825355c508aeee9a2e74508d65008c7db587ac718e5dede7722bb148a27cb84f0f39943a3745fb46c94d3f3d8d1e3e9d1be5539d8337afe4f8eb1d9cf427feaaaa253463bbfe8124ddd70b01cd9950fbe583ee53cc563dc37fc8bbf801250697306d725ff4f12088e241dc66add7afb27ea57ab02e6fc3fa1a41d5b155ad90393c10670bd3a3da9118450c30c52382dc4568f037c3cf277e84f4c45286b2efa6195fd0382617cdccb61a448ef76ad03b46b7d0a8da2efd54bb3ae629aa2aba16834056b6b95edc9842226268698cf37a522d9514aaee062124c67bccce7fe0043b2c80e7ab5bb2035f98328e815f61db1241ef7e162bd27bc0ccabcdca024104f2693e3ccd2cdc1cd9e23ee31da5a19179d2f03ae5be8ff3f6a0f0aaa4c3b448861a3d51fc11756f6438a9ca770793a3e83531de81793fd784f81f641cc988921841ebbba45eadea87f4dfa68276bcee2da6c69d4be270247ddce0159de33782f96394b52721255e489737d7c35280a942b00f32763af4445236d9429aa3e7a4a33080665ec618e69a6714a25072f85715e9793d30807615505a1ea0034fa683506c400954cfa2b6cbb53a313d95702ce27cdaebd53425aae6048f3bd9698da133285200891d30bc3a7ae57d8cebc2109bc45eec25f0847238a2c22b116979d2122b48a972b2dbcabfdce27b8fbf023a095bd06a8506abed8d1c05f22db950c089125bd7b1bb313973601ae1b0b450c9d1e8da5ef7683fa352820223e8d1094224263bbcb0d928bde866af0238c60cd6874bbad5416f814338a965d53f7d382c333b5fd172325073efe5d50d559768fb83887f7742d9babd930f89e6fd3e1c73204419378b85c818fd78e9371eaf8083e60cd804a0a4915e4f9f37534f5612c40126a7dceae510560b3330417f8ae47dddeebeebbbe6734b7be21b65ebe9e5588126df50ff7675d4bd1d269aac56828116852950e0ad270555854f6434a5e99efa074599128b99df1f34f59f8e417f6b9ac948771c69866188f693ea717b428a51200c0f7219d16521bfeb7aa4478729337978994e99a3f8f40d8554d6b86152147015c5a61e0a6a1e3d1ea33b07425eae5d08a1059dd2b9609b6ce06ebb4cbe88599ce258d97fbd15064931e056d00611208873262f3c0fba98da6c8e7409fc7d506032719fbb94373fbd8ced5d5c8b6d6da44af9c6da6e88d61f2300d3bd79484d6297b1001afe49f98981ef4990d5de36392fb11df1bd825934a753c561882d5ab3795d72f706462c4ed68edad9276abc33b0f4ee091f1a05aff705d35d2fd9241564e4d1fcaaca8990e59f7225c6f065b238ff8df927a926780224648964630905814e349b3ecaf1231c5e99c4820b218a0e714dfbc7976bb6efa2b1eaa697705425153d3b00686975d42a068f3e68b8324b71772d1ddd826f69272371bed723c26f2505b90fd7bff4127104464261af18bf9414a29f13068e2b489f85842021ca00fdfd50192b501aab2546730f4ad5609cd911c303c0a337e5c4e5d3075141615efb6c20d6857f752d486e6cdfa40ab98de2974c0a6cea1434329815db816bfd080f6e84acd123541c927fc81865c5c7ce9151a598145ab9983cc26d6447184fcd7a3c1a1d915b85f6f3d17ead7b2e6a4dbe418a573ae49848f7b3a597871e99633e7c0a66c128a1db98419b804c54afd0b32f73ac01451ce8a936e7c03f1c5c8571cd7a3ef0aab2be73347fc67f028cc2e76b78fc0fe6096be18d6c17690b345d12de8edd9bcf0db0be0f903a6888070f079c2dd5f19f64a614a911a2d80255d1657d6a42aff9ce733693ad99c2121623c32bfe4a70c9bef6c1ab3d027b6f15b8eb8f7a3a73cca0b0b33aa4a919ea4da6becb431577b394eefc716b4d496ae8f6780f465caad0eb2249de797db186a881e9b7d1a79e636deaa5b9c1ddb85893feee55f6e9f68c06885921b9d770f59ef5cef406537e8698fd3fe1d8e61b659ed54983dacd9cb24070ed7c5af20f65990efe6e1c5437650e9f8a48e533a040153b5ac25263c3c2c759593f814d193edcf14e9d00552470ec69873a1e47320f188dfbb7c8145c6f970f31af437306051debb9f6021abe92583f9a1a6ff0bd4ecc703163d42153de48e5dc763f545ad19c7c0a3a51091745d152e676644a970eaf4e363772f02c2a1a5e81c87aeb21a095bab78cd61fe25801babae6ddca5a640ecc47ce56a3033df1322851937ec026829db7eff563f9b5d4c2191d79d4ee09bb372142c8bbd51bf29bd9512d1796d85647b4ddc778125188a93fbfe1cde05173ff33d27d7b0ec175dc1870e99580c0687ee9bbef6f26e4746bd0194e4a3d6511253c9508a6cd851cf0cfd5bdea46a8fad877cc1eec737a5ae84cb2a0e20248e713d2da5636ef70a2f635990c9d5e3e49fffa05f37643c3b53f9295542dd24da0c1b79aabdcf0a975b4ac6e896d3ed1ec22f187343ee701534a41733370e14250acb0280648f6f036bc1d86c6b29b7ffa901bf628038c6674513d632c7c202dc0a1ec89b824c0d2c220d4f8e3d1a024dc86499a3c5d18cf3a6b0f33118f2b39a725c73474e724a1389e821a352e2d5e07ab93576c0bb2ba6d649c3b7ed30027154c8a57e9f7db860897bedaecb421dd7f25ace2f5f512b7aaa0fa75c827993ccfff7511c3398e7a7ba3b7b1b0bf462f723dfca4dd290d405c059a99c879f843b36096bd09388559f3722d173a828a437ecff22af47d054bb13e3bd08af23f48b1fc14e56671111a6907417c17a4f371dfea392169c4ca75119d628564a1d30b74ccfc80ce5e8406d9c4d43156845a6afe73fa9b13d4962bf9c6703558486f407cd9a48aed01b16d2fd9027628dc12a29c8c52732938b1a5e1e487e51220b4630302949d7f468414efbe347f3a930d957b3c9abd66d10bde5a942695dcca7469802454ceaa3fad5988dc358ce02e29659dd2286ddfd4a1b89525bcedf253da3d05a45e9f663213067ab5af67d1d7996a209dc80e325e424c9788a9d41481e60a2e74896b53d97ba1938cb71561f3de2b9c21145f57c4eee6ec08a335aa5fe463337ff215f49c03ff59067832437a0dfe8c3f789d450663444e5a9ecc4766b447c0615b3f04d10a2d4a09292a787e4dfe90d197b7f9c19fb1a0670cf5c430fa50f61b16377b1786ab19ef719e70778e09716309efde0b170074cb4f3ba28ad32654b71ab8dc559c0a3e35a4e0d2d143dfa8affd8e2288b81b437b1f958f0381068fdb7c74240edd802e65103e40aecd03e83ee1774ad549cabfb525ef2a1a514885ecaf88482d4b84c38574e71d423457fb5a327f534f8940e0ac5accc4f0846b16516ff0e0e5dc42b8db0e97dc4447b70886ade0dc076bd38d342d325f81db0bbfb7d1ef661d3f63a2237a393061a658fba388125ef3f7b98c74d185c9a5a61b70e785ba4292fc4b2435e38ad22afa24eb478fb610d9584b29802824bbf88b170eb80571af7dc736f945051dbf6e540b987a4514f63db9022af88310b788213bd8e28ee473fadd2caa917c5224ac3e4e4c37ef463d8618d2c7fc25007cd34e60a7dca04d9b627de7f9eb538c3616761b891115e79db3d6718aff128285a9525433372d6163a6719012d647b68809bb08aa06905973dcdc52c35931f4ccdce44378fe0619a7c15b9d74df83b0d9d99520a83f42549622925ea76cd543fb08690ff140f1c787bc1c5f4c5b9918ce987696d7175751f412dd64599d13b0ab050e12e51c38319f528666950b007417cdb19ca2301c86bded37101824439d63cea170105392808181922a99a64a5d4a8160a77194c6fd4e4a1f5f1114310af780503ba2d9d40285d610d1d6331492fa7427913b6eac7f3ff5c746f3b7ceeb0c611c38ad1ad0a2b2615a4da499db53a7fec7b3ff83ef6fbb0cd75365581a537437b6296a25c6f86800fcec2c15d7e99b883c92c246ae740938929b393a84bd1cf037527cc18c6d14b78afd6bea41073ae64edfc302723127eff30a2a2e6a1f36433769a2ec43cd5e5aab3235ca06ae9498ac1d724c260ab4e385753098b7cdbf6ba15970ac6463cdcd0f41a16d75619c4935eb77045c2cd4974e5aaaac1166a478f1417546bea837e1b04505162e1e18ee8a71d8b4ffae4362e94a144d511098a46b21e874928d90036090b0ec04fe1a844e865e8857d555f6900407de097cb45a7936f1c331df90c96c66bf2841d37ea22237abdd734b2c6d04fcd0be0ace526ed611613cf8688840a92fac775d71dec2b770b15143460ad6a47e57de40d2efee9239b0dfa12d13c4540537079b33b7671df033a9d82e42006da13f88eeab46b8d3073f5faeca2809a46c2e865d5c9eaff8bd6e33308ebcbd7cef823f7924ece3796d194b939accbc6768361e912537d98c15d436ecfe14c9580130e802704872d9129b1810a43067aa38c63248f85a1c5a8a5dace2553ff1adb114af00606b1a0572f34819c907a32b61de68d218766036fbd9bf8306d3dfeabcaa9a4a2c3e306f6b1cfd03b4645af5c60037e37ea3e1a5ba55c992c1e808ee4a85d5664ccb864971747481090f9f15dd11c2954528ea80747c3c5a42f5ab60ce95aaf998ae12855ddad68ccd7c99001435b5c26581376ca6e52d45e670e98f6d33a95eed7b0f4165deafe86805e9e26cddba3d5bcd5ae3dbe07c904c494127742b31b5112467703e107a7217f6e41bcd958ba4f9da92717ddcb1b23205126feefbe84f33b0c6c7280c03c503d8a9f27e635b18d53d070ded7e9e6a5b1dca7fd97f83d4fdae900125ee871b9bc6a4496b1fa1d2c0aa140c6b7eaf45c2820e9420312282f68d349702036deedd90f08fe51ca563a53a47fa7c7c34c6ec478755d733b140788600c00b3f728f82c5049679a4c178cc17a305a16852ef94f0c70b38558629adabf99727223f19d49878529b034947ab9af4cb1c87948cb515f284c36b36c28dc5485d5814c845f79c25b3d0a24abb608c57b8e6cf5692fa517e84f716c5542a58a55c25dcf8e2b76b1c53294f4b7e172e3b1da65de71c330ffa1de654399614d43bc2580ec5d51af4cc12df0fdeb1860de456b79c38e29ad440e531a9d867369c50044dbf64d561689cacc9977cb9fa3931ff956eda3f3b9910359c6dd515cb8f887159797c33218c68eb64c2a4226ed53f6e6e79e826a4533b82d7f445fd6c2678272b53f201c19b6eeaaa9038f42c564422a99e3dd7e591821cf4e8fec15e1dc28132c2d8a2584a1484ac5e79ab36709d306a818c3a0a6c3b147d9fa1afbc6cc773628f3a8bc6ba9da785d8e1fc215680bec5bb20d9a10fca3fdf80d43ae99d29de6344156c25588a0260433f6445d016d49c72cfc70e5d3f22eec4cea054ccf33e1837c53cb0cb824d7c1029d0fc1d06fb09eb7ade2dd5d92c5288b17f92c361ac060e577b96ceba11dd0f5f613f62a3eed7517fd77fdea9f1701f29301fa61977215dda63e243c4118493da4deb77d911403cc78985aa015de398ae0591ef629316a50d7dc80ab73bc88aafc5bfc5d423c3ebd4dfa31fe3142e3be73a9f8941aa24fad728efa9203660fe9ca9da5e555313c4867571143bafe5f36b9974bca5f65052bad91ca0ae296bdfae21de83dc6f2089575d8fc3b4a09b9cd618e3fafff2527d32ac57b4dd696057e20d5e9cca3afc1e78685fbb18913b3aa9e25288585d1125b310ab86b258631abff30a69102f2ac839539699f598baf7ff860c00c8256783b8cd3ef7bc288cfc903e77479c58a022e80560f201625b9bd26878474c1233a07a25b99e46d9f5167c9601c5ca7161456337bb91dd5bdbc8670a33170c2f49d733577c86480922832e9e529eb59645a41d59c707911c1972b0ff225f6953367d11ec86d94db0a316735363117e50f24e7a54fea5d27c762759474155597565a7fd5f7fddc946093129e52c5a322fdd864854dc1550dc368464edd99da6c953c28d73f0934540ef7466e48c996e339c5c6139532791d471c456f52421dd08260a3abd0010115c982da4c8c03f250b87cb14038b1d0c4fc26682675c1656e96a2e1ee7b079cf262a54a6e609aca1b28ce2106c98cc3f13baeb6deb7e2a824a5d22a8f826fb34211afc4cee8d2462b889ebe63a69135e27dc18c225557be4c72a5692bc5bd1d86893d825c92f9d8a1ecaf0ce3df5b70d016cb4a15b54f3fc776f7fab3d1fdf75d1bc2f7395dce2f9d5450029adbe24c0b63140c137baecd7dc30311244530296732240fd9a16c3b10cea945f391a675ebaa5975a1b403254ac159084b1769c7de4d094d6e506accd28ba6197f30da43d9aa5bda957678b77076e833f7910e14a7a3b1b61bc7f1d54228439ae70a9cdfaf74cff231b9bbf3b31589b826a0290b129ee13b834a3dc5f2b45d4020f9ae6815544701c459955365c3454e5fc2fdb06027b03f543773011b9402d6c25dc51dbf559338b29111a628d4581905ceac68ae6a0d317746a0c6cb3c60a01891f784a4071546ee5d5861cad51708883f3db43e523300a9959f699482a49c04054dc1e6237bc39d67fceefcb2072e9572e81820d449dbcb6b9a9bff092e3570ea4da5b8ea07a8a8eb10f870c0f04184cbc9a5d1d8fd218b20fb185d1b1ce53e64ff42a017a97742c7e6b507103e67ea65a1cd210ae432bc062414b748db3f2184c7f4c9006e34e8830845f1b335245ad2d940024f91e85c50f4fd6c214fffee3693992624f5bd05d38cb34a721d69f5113f4a3e214413e67e70220b6ea0d245fd265205a729c24eb46b26202621deed0fd6af9d96fae1baf624e6505685af4ab9b1f6b5e0dcd7e5cecc4784d25ed078cb6c3bd970df40cf5104f9c31cf5299207c34ffb5ffe07c9cff4c694b0b0c5b5959baaa2c60b3e64a3f3c5b334d3fd01aeeb3f9d7e814a4e6db4da770438469f3dc833be016b9bda177d614c6035fd78cab7f2343d4fa2d86baebe91e42f30a9c21a89dbf554f3c12a3039cff2042ad03c49c47f83ea91026091bc89e0e24b40bd6f808b04394a02f7ec427cfbd0b0888ec7bc45622efcdb3c4bf8f7210233cf9f9542de6b9baa121db952a4bedfa679c01fb34d555cb37efe71fd67303b401d43f7409fe85a9d3909878d5c738f7e72cebf299ed73f8c0c4b054f90043a697728e1d61e6ce84f7f5db6ebf27d3bf6174af6534cd90e91d0b862838636139ea7b99bf2a177b40d909b4cdb517e7645ffe019235eb705e6c5e1ffe467d002cb864c2f846b5203060ede6e609cec272d1a7bc3e7f8f93bc6119c88ce9ad603308080a65e9bda28d9f881e362abb66af92a47a189ba123eba62c55ec6ae14f273d2bb77fd13db3ee96311f10eeb26e60fa94bbf5cb515c2fe494c5da9c65038c4e9e73a63453dc685da3bfbb6ea977a4b85ef5e075e56914ec825accff2759a802e30672047d2487b56d6dc2d3cae7b98ec5f5798e54ef184c64bb45b94064e6609bb130960c58e24e67421a5f16c47ed44f88e4fd87fb5d6323e9e7fc1a6489ca4f5ee969fe2bf8111a7710df3f1c4d59fb10572f2b9c872a493ea1959540ef8fefb7f7936aa2fc09df0ab92519ac026c3e9cf38b09e8615c89217e6f701ed0bf1178a359dc9683762521af4c24fa428871ea09a9196d8a3e6b8090eb9c20b5824fdad4933de8cebd0ab42383b7001e205bde036f823de08d54e965e4000184204f4ff409adeb1c0862e5b8f98f165baad6c11fc2d4df504fc43be4970c5f16024fd63250183a2efe5c3abcafaef223ee7a5f9d598dc94d70bc1de6b281233fb5e113b4e14bdd24010609e9c8b19cadd6d2d3d82ea66ab835beb3a6133b681aca53c9b4c5bb28d56990434c6dc728a4b949fbb1f9e54199b44b25184f7a585a7e761f81c5622e6404383e7e3566373f872931dd50ed00cf61ca9e12db3a559221b08a8c5fba37b3139b0cade0bc078d6400a70ebfeb58d134010fa0861a28380b6aa4c307aa13fff072e99690ae208eaf77d0c9e58bd5e78c159e7bf48552a947b6623a1eae84b85118bb2893a1682fa304e44b3e9948cd741772480d3a72821efdd0e434c8fbc8e6f84f52a14e0dcf167d9298c6cdd00edc6bf36f0e964a75be39fe2620b30801f809412e23f0dfb81a9d1ed17179fb5817d0024598012dfb215e200f08ae9b481a31b3de022413d04131459325b3f613d942524c8d8b6cb9eac1b5016be6f574fc5afe520556aa875271a2a6ecaecd506f696b086c793f282d5b19d3762658176a448ebce7525738be1286bb3f73ce83f933e8bd8bec36909c3c42ec8ee238980621b6cc617a953f4a3829a7563c5707a41141a7d6e529744f6e03ac48c5d9036932df90cfb5da59812a75c518ca0d609bbcb0c986f60606a7715beb2c7af84954350b555d2b821db0f8f662f01034fd893164256fe125be6b740506d0a642cf19f181e105fcdf5aa083c861a53bb376b9467f3cfb732515cf3879fb530691d238259aa73c91fb4b7456f9c7d5594518861c53d473d42e57b5611d7c1a234f267423785fb344d0ce0783784100d9d9c5aa50c29554700a9aad3bab35af39031c6d4ee55909dadb340555489f613c79d7c085526e52e645a1ce2227dd3120c1034be765bd3db10f32e386e59d8c08632ef877e2f5732409b304506686cc34c7297055d98396affd3ffbf32c289afccd9d7826be996f64347468fe02e2eb7f177c9580a6d253a23976df8c22149cd8ebcb1eec06213ddf4e05c310581dd94a2b0facf9b69ec0d95ee56cebf044ab799d06e18e7a6f93aa2cef0a00648dee5306e987fe9da76ac3c7bdc4bcbd340268c06846915bcedb9303dbfe894eb77846566d5a41e2463fc2e30b00d71accd485f571da02b4610a234a615e7466c02497e7bdddf497438c52ffd5175a75b6a4d8703b924ad42b8445564b5734012aadd9dffe3787830d3f819e7f260d542867aca69440da0acfe76e647889b33d4676d5cc020a65b853e118f13d7ab00909b108be66918dff6b8d770007c405cd9307611abc826b59604132e90d320395fc982a1545b4fc045959425070721dce9f6e070afb11754e488b99dd005c357374bae36cfd27ff4b5e5ea1442a412519690b155f1ae4a3154120411d3971bd5c940f3f9d65926448ac0f816ca3176b3b841cf07df1b543676968d003dde483fb02579ed2f2f2ff548b620e4a1c6d41928f1d0e73c6564f89706f6e3412ccd3fac11f18a1833dafdcbcd6fd256c52a7347c38e00b29bc111eb29bbffc6fbee3575d21d2310ac0260afe3486641915b0a0dc423933668c4e48074d5e2523319cb8c5a873b95213ebcb871b5211b98e7186fcf3d25e8385f01fb1b8277cf11d62278b2f1f7bc9e37578c26259683d9c5ed174a05a0d70b235220843acd53c9cefbb87e14972a1875fe2c6408e2de7ff302d932bfe42a60fd8c858f617453cdecd1f234eff2ca54e6adf2f4ba40c4264110e7876f88011eb78c4648324341d9358e25ca59a2892c13290a3e4ff63c59a8de3e98ed0e03d80ada6cc04ceb5dea664f602e4c3f444633ce1589cb91a076c395d0d628e26139f4c83c3373a774ddf6f33ad88084cb666f6baaf7fe01885a8dd64d9e414cbb307a683e7e2aeb96e7c1e3ff532318132ea6cb87ea2e94f3658cceff34fd45b9a07c32917410f7f0b6af1e1df0642656083ff7ccaf18d1708e553c31a1b166c9073032bca01dccfd79951cbeb9a98cf8b6b6c4eaf308e679c515df58651a53d2e539b2831a4a146a54506ba47bf75a49e1eb72f0228176a3ce039350824282ab4a78984402d2f34b157ee39429d23de29fd879938637021ffc9d53bc0bfeff459daa5daa9a879116eb5492a943ee1f80e7ba9dc95c4084570bc09e8880c05efddd94d7653dbcf58859968df57987a46f5190c264aa4a23d428794ea3f44043c9992fcea4650aa5e5e0bcb839cc75d1df977c04b542b2d62554af3bae5c40e965897656a735abb7a544c6c67031764c230d402829c267e14ce0644f2d979d56390c73073340763dc5c09f8bcb37108374bafedd2b609e14a96e640c36fdcf50ad5fd2bb529a1cc71aefb3c27b52641806c55fc9f4a6f50545f62797f76633f417dd2e3cc5b89f371e56f3785ca8f23730ff9bc60979a89633d89c4541cfa312fdcf6f7b16af1172ce28c5de38bd04bdb1f6e2f50bc52a97257a0966de2a1f0ac10f92011157f1d39ba4b91bdad42ad6dcce4b3d874f51953d1220f52843a42bbe00bb6d1dc691ff05af69832876d99e49e7541500075b75b192704e42f0f4909516d3884c5c4695003f7bb2822946c604f8dbdf67a74c247495937518ce53647eaec626a0718fea2e7b4979317565df2484bf6166e417157eb2a2e8f57a27f96125f953118a024daff94c0fec29f2edc8840616944c40e5c2948eedc844c471338ce037f122463bdc0e0257f475bfc0d12cfa754a81cef2ce130f5e030ad64f70a9f234014e38610ade565548fbc5e11d1e227a738c8d20dcb05d1a8fa094bc42efd3e53b15698b6cf7e4415e7f318ad7ad499ac21acf9084e3cfc2902c5961c0c478731505fbdb8678203e6b20ba983fde27a964a65a9298b518c2584ade69c334057e879905163f0724b68ad83dcdf071e311a2c746129e7bd2407b74328cb719bcfbc1337af4c709deb4729b0460a38a60d7baf3d1519677f7aba422f3e9afd92f874fa669fa4ddfea606f4237a8e554659d00db4e21c1597b75e71b2e7363a4f3857e656988c1014f4b7512708c3523447bac1c59e1127c61f1bed4f0bbe7f9d9b50a2467ab319306c308889606296e2cf89cff3f3360fc9a47ec4b49de9d47727ded83e988d21cd47494f9df1a9e7f499f806533e2544e07e3067eb2feb8fb8bd61372a022ed141ce7719f255b1f903f7f8b7985a3128c54a026d8c2199d370b4ef1780d6416c167ab899db8a048f7a0308c13a8f1c65d29730df075bb566a3ccb2820eb7915121dcea7dcc3c918a212a9fb6cb8d204c8e3a9145d0fd0de37e4670c87c8a70b8d11bbfb328c5599229960873f43d3450b263780e5234941c769203eb410df646662f364a28b183a22dc207b7a57321aa1748b5d25e83634ea72e47e4f0c7b20a36e80d2f4163392bd498249f76a8409710756b9368c2d25eceaefd64f968c02526bd18b704aaeda0bb413b27d8832acc3cbe7a328b442c8101f84695b99ca32d643b6c450f6767ddda63410d8a8a3786813533b6dc45ad7378b0a378f877ab82168a7cf87d50613e2dc92df2514d10d983bd50c6aab88d8606ca003c31cc4fa028c8599761b0e16359575195bf06194fdbceab543b363e8cf0eb394684203d7a6f3efe3d96e02d747c9bf0ac66ae185751b668e37d3788e1c98c8b21c2bfaedb609692f818225c44eee2724fbaa80b7aa5da1018751d89eceb462dc89b8699ba7e03b5afd0f297e8f97d4d331d67373a29b209108e5655688738fd54cefe3d7677e740a8b89400972ffaea80b49f48afbd175c0f0e10c49428a4c588ae3ec38e6a37004d22c8f3bf539cac8509230121717f37096db2b31c58f22b48d05eb8e30be300163c8ddb336490d103bac764b58caf551eacaca5a993f7fa11803ec29eea430b73e5a45e300b0a1c4d85eb3203bbe0ba8994e3b21c44ead0f8c25930910f210b8d7a95da27c1e77d7558ab22ce25406ba582e51ca50c27e89033fef21b6ba892b1e11b4a023a959073ba7a475213d3862f443ac3a213f9ebfb40b93631fde541e33d7cc5ca086c87adcf24022e4894a0a6f61c9fcb828abba24cfb47233113c1fafad1ef46fbd446594b495d933d8bb9675a5c687fc4458dd85cc11180bbfd8104118f216a7bba963ed6ee2c0e74fd9b4bbdcaed0e4eeaa6b0f1811dd7d105dee5015c711315d3e41c3a3d55d6ae1152a864380256fdf0aa568fa72cbd2d9cd4aa634a278cbaa1cb47e74e5ff494f3933709c88e65652b1a1cb942a65e6d6a1eab54afc6c6120676d85dc507e071c05a776d302081f0554206dfb5b87eb7fe698d134bfa4727f2508d8c7162e286174a661d569adf84b3b55cae33a5ed3345e44ff2ce84c890e89c601aab0d1fea9cae8a835eba2aeb4ca00225116478aaee8a6fdafe21344590c3b351275d77a2bed171f06861caf9b8e6a5b63bb7b5c890b95ba6525f86bd29d0fdf7150be866250e5c44845d9f5e0484e5f1d9ce2f0779268d2079b482e16ac20c808667d605172d9942a07573503e363fdd6a058c28d51365117e2fe9a1015dad2e2113c834649e0eed94b28532630e26e290e6f4473835b7ef4535f0751d24f5a88a58ba402190c57765f11b32a8a4f7af35a7f0420e8260241e0401b3e32e79de4326516735c821c5fd18f0c141a34abe16f1bf92f36bc1acc6be371a1ff01e54182b696e77c630d8d8fc2e22d67b458e4aa8c23fef59ba01f83ea0ffa61e6c1a951a4c1383df0aadf2126487f724b9156dc3fad359ee6471a4caed14e56fe8cba4375fbef38a7d319401afb4d731ef5cd7d541da5deaf6a7dd45aad7547f70954858d1551ad2129ebbba7ffff3ca92ae2816b43c80bdc4d9f4538643ae6e03d7c86fe877f2c4c660b3d8e6fe45f12dfa9210257cabd83485da18e91d53701b128533854c14dec41f9172cb6e0828f48621ef178b8419e322a346a4b4b747d7c0ca505b47b50792df25d7a3f5ab5540ffa8fe98e0b2fe1bd824c8ad59f42da3a87b32a3f2bc0d36e1513215ed7ec7e37588df876dadb8a6c72dd0db6ce24930500909eab45eeb62e8c09b59faacb4154777ee76283892dc9c961191a2964092483844d68b084028aa3cb9d8648a383bf7274d3168a870199e76900e4b5d3fc43c721ab18e5a581f9518c2c70f302c9c49dca5aee1420106e6e3032f82b90a6186ff2cc0ded7ea627b3556af3693c177b031ccf8243aabc722fed8daa94de56cd6ec17c1545765a2173362bd8e8fde2b7d62197372473f3c3c6b7025758ae3ea3cf55f27e2cc6f2811f8c6addc930aaf592a310d52eb9130efcc0bfd30e2bc5178dc69fbde245a5fa72e6c421c16e1209f13d83a4dff3f5e46e9db71ac49feb0510452aae2721fa827452d8284f9dd016e0e65060002f15aad8109be0372f4042def6d375283e6d90abd0e99301fedabec621628eeb3bbc671170ec90e537ecfc6d46ed4e353175ef3b2a916c382ade6f770e4f1b9a2ec4fa0bf1cca255404262d83065b02e4b591c368db18dd6f602eda96ffe007120410d4b8eabc41d5b01cf6ef4821bbb38d6ba12dfc1554c3f8be87cae249e235235ffbc0963172c673d51bf46ce68581cc2a48cb206abe811816bd6149563552caa7ad815a8e687493bdcc8d1ec68b86c9f488b6c550868ce2b1f1eaee9f660a683e8281d7179a045849aed866fdb83d76112ac23b7002c4bc9eac8a77739fe01dbec76251c53a9cf6575dcb1215b3f72a5da2dffb2a8ca2cf3e46345c5cd915c8bed45b01140f4d9879c25c0b3e46682ba4fbd27571a78360e4252c6d32bade411b015d6f23c7568250daf65e5832cb8943bd5f1671269f85e562e58718d66eb5ce74f0a4afeaf353df4c8d6a35c70a590a863305709a43fd7affd5081268606f919895e5489fd8b3c90c714b439c225555253b2849e81b50b3769e73b5126a00582fcb8cc76ac9f5403e7b47cd61fb3d207efc17ebf0db4bb4370940740e3c02bd34cd9589ce74bd3558c72479c9aa8f55f540bb13f0c2df7fdcca18d176fa0dbac8c6ddee97b76300081c03212a3b56205464a753f707b53ad6ea018ea81b02e0d9de3c5ae8398628b40d1d1959532389a8e5aaf219c21ebd0c74b9320c23273b315b4fc33cc6a8df218f120166273ec66bd3b6bcf38864a5303124653e5d01ab1466897274670ffcb2b73e02509d23762859d7329184f2703c6ed1d019735b79863c9961305f8c888698407f3fb4ce928db67011c9c95e508f1f752a0c590ca099cac072e41129a5640d4d87425001ee623a898e144be24970d9fa44d12d315e4640906844d4332818ad2680cdaf562e3d08bcdab099bf968ade68867b842e53a2e843be4e0a8b6316fa70f9066da4dfb1011d4c82b30821a64debcdaaf8631a5f97ad3f33ff4ed551626f7c304076534798855f9f2d029a502538826ed9d579d6d77cc5b925ec55405e30da8fcb19362ed5c59e92c405cbd111aac86b04714e9fdd1029320b280f5b684057d278cb7d14f5246bc58a9967e5d700e03d648d26ed095dfb3ab55d20e724556de463251242c41799719a1298b15aeaf6fd023afc5087532592b71cac01804fc46bb772a5bdf1fb04dc1adfd86e1e744664e8441fe8603c0021aeec7707195b36937e5017d93f634146816be708d1abf7fba86b4fd93a827964604fae298f5161ac87e07196eb909768a5a15a2a7fb1d6d4df95d97e42f7349dc431d7ef250ac3d4ed75a0c06b03ef0d078ace1d909e4eae73e4ac1a6856025be49313ecee2556f775b41c7ea1d95e8cc8b95ffe8ecd8f3f6870a1d9ca555ca5873586a6aa262999596553534ba0ea609425413f10c67e69ef0e8a9d107a1f27342ad01b50330500e4e64b1cc1310bd72b2c4ff18f2e695e87ada660548b0ef58138a9143a689c0843c87e67d3c37047b7a3cb271f1fc0968a92802345dc2420b4bdf65cca6b127b9883331d45c6ec7a5b35a92ada89de9b7b7da42c82228696d1502087d162336f948705c7750ec4947a7e97d8fbc4eec2701c56d4fa516d1a5a6096d4146fe16328cc142c411307935039337cd62f45ed801307babed1f9c965587ea562347e1ba798361734e5b03567352629293a639bb3e84fdb6245bc9ca7b468b3603fbea8ef904df5d8627f0437b3e9957b9523213953ae6a4d99aa066fac65aaae1f971e8699a1325d06c758bb447725e72f8f545032cd2b097bbc510b01385f7c108319e058348c61e1aeb12557f1774556aa69d0ef91601312892e3b77645f380b02a584bf398d9975d5786f5c005929117ec9970b43ea26de1760b0c8ff8eec2813dd256fcdca123345a6e3d716b0551083944962856a810ae8cd873db6d3985a9e55cdbe5caef588360faef6ebb66cba9b97c7815253b2e3ab00cb8224ce272e2c540511fd406112b3e6b009315572dc6ee12f2f587ffe35c3bf4bd7cba996661176df804936e073e2f2683afb314efe7e19136a0beb7b9529706e83156362084b4e26aa41e397a761ba712981202a68ea4333808c993a493653b2639662662fddd3f0b26c2b9806ec35d94664ff0141502e8fde3d9e6c91736b65763a9a0b38e81cb986ec700918d21c42f52d2d243bf312368144ed69ade594ad8740c6e41862e0e68e37e3449cae8c0141027332ddfe21ef15d6975ca8e55bb0e6e80fe52500a18ad2b641c0048f6d2e8e738c2284be89caf7f4e3b68d740fc6ffa41ef654e3747e94ae8c292cf60e411a1466cf2a4a4f6cf34dfe1111210e5966bb56fe004e7a098857c11ce8ad6ede721f1590faea3723085a9ba7b009597c2366bc2f3e7f890b5919af42748a6dc17fb4fb3c458ed5cc10d78494d2511e04d1a7a4645b7290c30d92dd7956be62b61157a752b99903e3a1b7b305383d5b4388793d702b9edf40f0a0cbfe8ba7b69200d68ab768fd49cb5fe7099fec8980c0fa50593255135a5f799a35ccdcd2ccc31df008289ebcb89d0bd05fc112201ec1730d244b15ffb9a81f8c6e9b88b765a2f90673690543aaddd3b39cd9d697cbfb269c7d6b53f5733914263dafad500a161bbebda814d00f97fc40ac19b882808b38c186c909b136dfe47e8f6aae096573cd90b052964587b8fef0a34522bc1d0b234ed7474b0d4920376a9f382de34ecfbb56eeb4a5adce155129a67a937a933821a69f7f02219a1cd88836cd4b04649ec771ce5f560a4f67f8f5bcd8f22db3d38a74ab46451c04e03226e4208dfce497643faf5e989269e694b92267adab8e0c51f6cf8d5e101ab7e8bcda74b2dd7fd28efbac000630389b92fbcc7d3ff39a6f9fd157407367d9c5fe7dd4ace881a9d7afc67d7ffbaf8b5eefd3f2c402266d14fb7f000f5ac69c3f4310dcc2c63e83fa8f9f0f113b7f2b040b136898ee29ee245cddcf1e4eac108d237047f6b8075b6ad29975521952d2101b66031527e374a970e4c2c36bbd4d0295038242705ba82e2d9ed46ff3ccffcb12c55ffb39c1d1a17be734f546acc5744dce9b5a08bfc5d68a1d441ffae7f81d3f9aa36863a1d21db8e5ff956f47827a08c3f580d5dad80918bc31d74f5285cf44c32563a0656945baeb7e94288679e87ceb6805386ed415f9415d368572f08cac5c6fa924e7a2728b46a5c0737791da55767759eddc3118b3cbd05e7c5d3b94a76faa632c0aab8b0e4dca0c6a7c2d63c3eb441140e6e95b90c4db328eb598197e162f1716c74676311265db386153822ec8eda3bc61f8fbc02f915c92d27ac26ea3c6c4f6a4ec140bbdc1750032d8975c0456ffa019d3cea6661d77ad8885bd1fbc0b2dc9a0187ee9e54c2f69d2744beb36f9f436c2f650f59e7ff974fbf5e76cef594b15030ade89a33c00075007000f42ca168cc6f235368640a039b715d9dafce53b06a3c1bd037cded55c500356e44a2a7032cf898dc7aed84cbcfbedecaac8f781cdcaf4b557d4369e14029f04e81d315838632aab9d4117a70d75ad5eff99fd8c3eaaab7fd077cfa6521d66764230396b8c67db58ca7ee04ba5d25b5836b1d4458c04b1122d7d67ed48a24d359abe1fe9373d3be92c916757053588fe3d4d0a620f0977f4907d3a4f40d8ad33a1d1f71a13ba6f51be1afaf1a04894c8c54759133529037f8d0a73945bc6f7d5db8b73680d436bec9b24d2c3f0df7f8195a7b473f417e314ddd20b9c09d576d2f0397a4036888a237b8984fbcb73da848bcce9607ac2f056d0a0957858345bb49931f0f22596f5feae2814fc754d9047d9b48feabf9658264c4b54233ff14dbcc8d4b7ecd198a72f62b7a803f5d21541012bbd19a514d81c4b61ee9a1427ebb78fa647431fa6b43a5f179ee1b62d0421e193fa660ca49a8a52e7b67158a456e92c5915ae57a6237ee24a9925da40e9258abfbaeb9a79f4a7746f84bc66d91d12218c9a78be52262f4893f4c3e836a821e85409103293bc32e794af665a581396e1ac3bba3298c43b9788b245d8d8af8abbd62cbffbbf2cf25890ae7d3f536f561184885f56fe545554817c48170c7d99b9eac522ddd0cb76442b1cae5c7e8c9e69222b55efc6138ee83b885b25a4ebd507a53b49bddab605bda725c8281ea19e1be59e24b75d7c051a81f42ef6c4c2ed712d1771295c9cb1a16023e1561b64f89fcc486ec6688951603550630bbf8e21fe826f97471a5fa80e345a7324367e28d103b72ba3fd96582bac042f87b9a830cc402e7ce892541facc96fee5c85b2ef11a70c4769f594f7228432d4fbe5b9f76cdaa67186a2bc78eab87fff56748d630250b38d0b563a635d1d7a44ca415882e6ef8e34d56b5554c7bd66d14813ee9171a2df9b8d49f7df88333b4d8e002ac554be4114b22edab5ed20cbc13e5608cc45dd1a3771f07c709453ef143ef290ca07d19fe473ea913c52b3d6095cec461a64eb6b1e9a85b003778e162a0dd4ff5be579411475070d49067cacb27258b8a2d1ad73ca16ac24631d24b39364eb0390616d4725308e4ba7c97a0db729d42f22d3f715cc6460a3b8cb3c761d3c203de7c7c2c67c3bcc62d3e65323ae1d988081f41797188b50036da2dd62eda987559fc10383f92ba20cfef3c0dab94275ebb899d70ada55c81d8e9ef85a19d8d5bb0b57f57287125c38fb02a8efd90e40df0d0f12a6bd9fe4e783e5625e910258b971e4ef7a38c9f2e051d8ee994847017cd515d567e70b286465275785a20ea8cf85db0c904443d59848886358ce568fa7eda4aa12aae99372c722f38594b5fc9a8bcda73a44073dcfbd8e661b8e0e5dec16da35063bcaca85a47047e3693a87b5a22206e98dd225474ba2696fe01d1a4f874fabe55f8cfa54a55f8ca4ab9256afb9722170329f8a6c0db9ea4b022b8f6793a9475fce8618f25a69de386786f92046781cbf75d6f018e8b4bbef7550ebfd1ca8bb523122d357282a7570ab4fc5033320fe187266ba8e9a574a3d030a28096ecec889c432b4762599eb7c2aa6e3dc99743e1839b52c2297b4f806d672ce2946eda8de3545db470c411e29d09c47018d20d2362aa618a10d00267cf411fae77f34b417231ec1c1d7d957c3b73ec356ca8d1c69f8d7dd35ba98819088671e263f988d6391e3cd4108b7c104dfd3269b7d685a12fd8880959e16ef6f353a8b5db68e94c334b71d1f8b4e1bcd699ce5f3051f60efd895b55f31954443b16939b236403adc97b9f78054b872fa4091e41f4c49a86aa086991a7414528eca67623f0c0d9b22bb7841831b356130ffe8a8a7da857c110a2c9ea88ee051ec0e24e23ecd8d45a62d93f532b6e980e0de7614ec98f78365c0f41de7b740bb5ba93342893826e3233b81e798b7b0405d22d3d358c20a8ddc3b7d307f79815f2f96588f7cab38fc5da7c9cb4e61fe032e6d2e093d44fc1ca2f4c75d66c8ca82932308769db49a4a9b680bf1ffb20122b4dd79f06ba3e85beb73d6501f36b9adbfcc3101cd02bb69de155390997dd9ab7d00252e429f7d6b912384705a6d4f6644c04e9bcec2af234313d1d3a8f46ef7b191c9168da86ac4cf1af5c34da4ffcdc7dc3c15180dfc7e2c23426bff556cec3f8eaae591a1526fd503538c6ff184a0207f63abe0200d2e6d6a8fd8b4ba73f2fecc69df90c7aef7a36c125c0a4992dfafa71208651f4d4c40b5c710807376f2faec715ac2bfc3cd46e4525d8bc2c6e30f5b0dadbb2f11c93236ded058bd9a5862ea91e945791632838cb6306f2713050a1b479ef5c20937dcbade2d576dcfbd0661413e9b8e4415d4a9e2539b0c8b8f256f35c76e6fcf6c8b82fd6294a733224a0efed16ce202050a17ac24253df3140524042b77c30805d474fdb079ff67074d7c378215fa1d9ab48e519e215f2de35a2f1b4c7c941d36d34a969c53e641af9dc87a8fda1339190a8d16327624e3eecaa5654f1e43c53eec974855d38067eb89188f07d7f4553a83b0bbd62c41bbfa8274278e84c84cd442220374b3378f06bb9b9bc68e6eeebd43aeb96d3e832c315e330461d1da64d761d375a43319cd26db7b2f7c45fd272d2605827a8c39ea94101430fc3bf84f5c2ec69d7cc074ef7b1bcaa3c3f2a1c36e472ea6c40ad730a56fd36da02efe7c5ff2f286c0dc5c1ddc306a722fc7098653681c578d921df82982f40b762d6fa421005b5ae5cb9cb6e8dd5fc1d8eb5813c6c86e612510ceab4b188c5083383f55e51bee6ad56b1f1d0ef68edb80a653699580201e74b13b8c62cdd36c32db425a3fe73f7ddfcdee60f391ecd6a587ee925c06ddeab2afae9a5ff3f109e31c384c1aa2a20a809c4da582cd804393c329ac2b901e80a0bc70c45130e15c9308cf5812716538b66637e653fbfc3b8f90c6758896286166019c5ce60f78301e4ffe019741da288d17bfbe6cc7abec35205236ff53623946dab0812fc59e63beea92f0be98a520d204bf76aa7ebd216f1edc0bc89ea5bf83a98df419863f4ff2f76e0ee934c83930300f6faac9f45986bbd6318b071e02c22e162f5c8bed34c72f0e6201e8d4d85794901797ea1437454eb5fea2900acb49432bb0c56179180f8ea95f1cf444905c672ab13ea5047952b3f9a0b59f64c2c4e272e37ce3603c8554f6c50674e1446b97bf21f87709e4ae1792455783be0889a01d7666247412903eeeb846585dbdb03c5c6fecb62cff6c8bb452f1f6cafe0a967868eb93f43bf0502588980aa63a01be9897a26f143f25157dea61606da5ddb760c95f85c344bddf2ad8e1469e1971ed907ca4ad60225313ba2210e93b5b8e851892727fbe552bf48347b25cf8b0e12ee9701c5bea3c4ef7a01002e120c42f3f67f46778c760c1df8a2ced1d4d9fec388caeb82033f5db5fc24fefd2b62ff36b9b75059af710e8dcb59a5f9973224a942be00635eccde7b1ce3581893b1c981d837e466f8b1a824def072741931a6abf9d48a68f6e24cc8d57a4ea6ccf83e12dfb93bfbf741d1a2cb8d3e648d61c88583a39e6a70326fa62de5a0c674f07e94bee80b4a89e3444a6df822c58636c8022bad031a6cb29ae206c73e47b43fa201ace1db3e9705f076c4d01fd01461ad417c0ec407fd6beda2ff30f79cb826e003b057c358e346d162a297b135f5c8a1cc8b33b4819084ea0102b970b29b09d6e7d8a7a35fc1d3c41ced374e35ca1971e07aac7d8f9b814f95baddf5e4c23c73014508226461f048ad93d9731db3a94594453b02b909970e5977be7c8f71267d86b0f68eb947634e8d390e8f882c712f0438981ca82456107ebf436f8d30fe87afdd7ac8faa1a167c7b97a6963b7653f7bf4b06c67e9fb2576a495691c3a639cc2b20d7316163378d081719f5b0f1c9d0d25ee07cdad53e2a1de44c67c23f0a1499447023692d3414927336dd1b052651f355bcaaded28c90e8c6735f6a07034258f75f8088892ca49a278ba1b799a1643a88af7781d2ef4970faa6b9498afd04d9969a0787235c0feb8b122c84c9024d988e7a58303f8634f9d14d1873e18541a8f6b3caa69614b62db4d4695c04a8bdc9726be3f4f4c9c553ec683c0d3ad123114c09f03260502642af6a045bb26bb255e585a8784dcbf36e500b783e44745c5651a0a8fdef3c22492936cb964f9eac5947afd40358ebd4d10fff403ed0101385db68511720100452eca2923a8b6bbdfd885032ca800908448ac9b290ca3131f07fb7952c9851509e808fab19219e72410164bc4257782ea85ce2367d6b0db4334f1b0185fd12729aa345951138e8006da4d82cd89bdf7e0b9dca42081beba4eb0489f3d1175be974956fa9056941a276f05ad64aa66a3621e3f5329cd4b0e0d3009b0fa95e59a94d0b210b82ae263c0d7489bcefead26690533739ddcf28210d61a562812f159891931e70d2377d4704126862d385d2b51f25073683e565555a50ffc242c157e783628ff37e1a66c98675365d343145652077fe46489ed62df797dca0a0a24d0ecb741f3c56914a1e07cad11a63e2dd262ed107d00e27338e03e8f1d61aec72cf825b61cd3a19ea9aca7146d3f482a53db8623e4fcdae56fa413e88fbb67e020cd9bea70fdd6725e2ea0eb65d8a70323c993caecf0bce678381c493d023ed1bd9b623837c145ea271f5f47c965a671685df70f73d3692ca88e5054905c7a459f9f99a4c8d045212f6ad9843df4f21ee6f992f204bf7229aed21850aa873ea0384849a8cb35b2e379d3ce2cd1e62220190d18fad2a5afee09331f60fe98b70192a0e7153466abff1e6b7737951f0269fe0c64870a8d48af9d74b6f2f57817638694f18809fa8965971d7fd95a4e526c9bb8a4f4a541daf0e8549c90c78136764c410377c023f4295bee330fa2acd5c2e594742f03fd40b8bb69673047076a518f3075e70fe14f899f6e19037a35c84fd66d8fbaa316b8944a922709a0289b3145e142c89fd033950aedf2c3b750f4f07ce983370bfd35dacff58add191d2305579445a62b417bfdf24e5816f825d2e325a78e43302801f73415186455b339b0a2ffb7dfcadc3699635801ca04f713b24dbc43f737fc5d99158d6ff8aeb54eb14e06934ed571505971a4bb0429598b3bada547f40ff140bce9f9217e45a590c3269a986cf72666ed320dfc54124c94373242edb4ad9f99b78aaf54d76dc734666a0cab2ca527cb409194b7c2776691ab1a04bac17f7ac7d72ae841031855d7b42832306dcb8b4ad22101aba2d3657bb26344e5440ab4985d0df748f49a36b2f0f23221a8b9111b7d7b4884cfdcba9c998037e15f93f33189efa976254ec2bf33074f55ec2baa6e41a9f6c1185312582e405060f49652f179de6e81ac24c884343611538f53388387712eea8d6416c26cc3eb0c0b48aead7489e1f70492ca8113ba5e3edd47513b730f733b7188dee11da5e2ea8542d7782c88ea0c1e571def45eab9116de08215638b81784f27d1a784d9c67b178f664ae51fc3728fe9a6e226fd62de55cf07da5de2fc436ce97f8d48e2098ad40b4a23e8bdb629e6a3ff8b624e090bc41cfa3834f4e5c1be319fab2f22b9d6e0f559677ebf096f38d90ffdb53addc26a39533e393d8bdcfdf262f857d52d10c59377629c2371d61ba27e87f5465c5f589490a9841816b81578300ccf0e4d711c6c4aeecd960bd3ee37ce02d0df6547761eb25cf4c1e26470c463e70cbb0091276eeed00f6b26d6c2ad6f9a80ce79bc1d8a1a69c84c46b64622c4cdaafc1b04def4c6b0f891a72c2985128fe526fc7c3c37475af679893c7ee7a5bd0817c29bb2d303948f1575ca240fcc9000d7583cd9e993a41efde656217d07ed10911c775742e18dc86ea6856b76d9b0a12e952f307fd7b8bf3e77f1b890e8b632c3733cc58100a1a0e6defad2de4c38e0c7bf6fef4d2f8a6488755fa079e485da27c71af18bc0212bb9d9d7ffc218bd510ba361acafa7408bf66d3a48953f6e77bfeb1803c85230df7e9bc79febc318e664c4188c436c00a404c4dd2ce36b4d88e5aea17edc58671da58d398b63f0c066ed43e6999568b2024168fa816f91da6ec8e735f1fe9cd431c8440af8d61fc30210cd767f344bc0b2193f2a3edb2f1e76f623b6c6d3dc1eb249a3c82c6528d374aed69e59eb68e67c9f78c632703c64046d133913d76cc34587ae9261b2ab8635a53c4f05bb326a0d54e6a8193d55ec7825cc69fe82aae7b5b31eb0e417918f16c0c8711f22adb21620a159f4617403246d4e11381043d7c468f9d0b3c67af10457918c867d440b7b7b93efdd954aa39c071713da42755c6f74f48b0aecaa21e6ebeada1d51ac4ab48448b08c8811ffe70f31d80821aac31ce8cf6b21eb459666c48d35e2f350135feb928167b261673e87150d504f46f37b1620a9d49029c0e465a65d2ef89a1f164f24d0f7b1ec784bea1092e21ff3f44fe04bdad66917c61639c9090f1dd4de2e8dcaa850295c062e16b782dfbbd559e8d021c469809f21f21de46560d626ab20f9b94567e2e4a54ce0bf4b8bbd58258f845b5acb9c8665d58e972c8d9c8f6f84acb669c1995cf2f69c11d6222518cde5ec597e5d7c50d4e0eda49c0ae586754e572edecef01dec0060152d5885f7c7ed055b97fe0a091be18e3324469efdfc4d40331e66c33c4664deec7e055bb2524d4441f796ee6701f547ff176768ff1596e027210443265e7fbfc24677f4bc86e0f94c4601cd1cde96b3d9e6bc6f95423c9e6bc48498ebe6cca3f4d922e850a1175a727349de9fa3d28e84abd54903ec355b843ab40f50988b106ec8dd4df319862258285a41628a25cef8fc44575c067906c911c90a5b9ebe151c440225bfa08490b3fadd2c28c576b76ac060857f4f7a757a62e2e6b975b9a17e3b5397aede69a304796f1f8b8a15a3b4cdb9d5cc6e4eeee523b7b8828e6190ce1ee92f81906649e430adb378a6b4c50b65f9bfa8274c19af23c97f4a2618948147009bdeaf75ddce217cb352fed1c7b78a5bcd1551bfd61af4f4272119f397a363e79351078e1a4a69a1e76402748569a7749b69a7757eb4e4f7f2fb5141ea03c6b81b10d0534ffdcebc60178705262ae1209135b63b36307149931754c6695ed6cddaff9b61570e1aa592359cc232dbbe974d08fb136bff18db00723a4ab9843610f7e54b6d37c914a7fa03d6f72f655251e1073015a70226bb9313260ff8299fcbd73ba570165dadcbcb4843f2f3bfc6dd17f7b281fd94401cbeadc586e972428415a4f1a0438135645344e6a5510531d4fa9f14e3fd699b93c8b9cd4532b2e691c4c0db5ef16a48d00e3ca3436d87735b947fe5b6866e7f52b7b115d82350929248ea41be5267485003e283011c284659bc3bc4527f969bb33f3903e2da62d3dd52691eac2acfdac0aa3e16f3b2fea2cd22f74d58478f2df8f70b21eff76dc68eba4881a9c5ba01426cc3ac850db2586c0df06d19bb5603b9ee7c8826b133047a8677fcdfa434e23914eec0e695e18e4535f69f1c44ee96c007f7e1ba849bf5cc845fdf23c9874c3536dd8180a5ffe64c07416f01c411a1cafb9f928e61be7600f197c07227da6133ba37d66252c81e5bd234d39b1043db3922e615ae1f78a66ce834e17f5b563ca446354500709f0d3c737b77df3c13e0e7c961c84de91ee66b4683a89489a531bd19881692ff8eb3c7249f4ddfa30aaf1d914d88949a2c14c6168b94c6f565977cdcc43596735f8396f11077c94cf02f9bc7c89860c7e994dff31fa68134e88c92c5925c643aa59f911f6cc7e8779d05cfa8762ca056c991207e0a89ff8e9a305b59980f00547767a306248ee764ddba786e8fd68d4cc2761ba24cda1fbc46878f91ee23a10a8db935eefc1850fb06b2a7c2bd449a0233655bf0bd2b2b43118085ca1d79a6b660ec2d6d50c94a7674c111fd8f29db22985e276058d2c2bfc331dce04b6190baa370565e1568c27c8f1419b3f0af1061e7b5b5dba1159c690fc364a8adcf6636690ee93470b3a87163d66f90f5ad08fdebedeae970ff0225f1625064ffe8a70316cf16621437137567a3ea86960e1d431a634cf14a27aeb22ea6e62391aff5bf481795f1c531b52fb80c33c7f3303565cfa460ff9f0d95c277a2e2e7788121c86e1c8b45d9c23683f3f5764db2094c524b19957882ba9335e177dd7c3c938076eb89ddfb5da2cb8b66c390c414e7d61420bd5a62d12948132b52b860a06b83b25854d8dffdc158c9c83567d3673c9b9165fb60a9fd6783b0695098523be63280c32592841ea0b09797abb8f7bead2cbc43e5148a9d56732e8dea334fdb9f438579de676b6986d1cb14c3edc74630235d4c40792207dd61fe8ea18371a1559231b5d4a118d1b1e815f0f0f8a696dbd74e8e62b9b36bab5f09280a6c0ef904a2ca4dfed10c477ef9742693eff3baf21f18eb4f51d6088da63981e926c52296c14161849a00f12bbfd76743b61d9d0fc0c7f84ce29e3defcd11b7ca9aa9fb5245905e088fffcaf822bdfa2cf2d154b8a3e698ddf8bb9f7015d577c11c2d46ef85cd60b0e41b5dd6bd6181fcb2ceeeae878ffaebeaaffe1a7bb434b7d2bad7ecd63259ba0c091d8bba3a5fe24b9fd313c6b183b06936d5fcf5502cdb71513ab88435dd4f0c4a111e5adf1487cd28ea48486bcf150ea6ed161ef3b35f87a05a55319cc3f1ff9171f414a6d1d3012bf77908e1e6eb234f0050571966f970812c3cd5a518ba4e0919909b8a3f32a9f2c1cb6502712e7e1db8d28f80463ba978590a54cc71606aaf929c143629c960255f29efb7c95b8b57c546098c8cfe234cc83560dddebf1bdeecea890bef6a1f317bff7e5f9b625bb3307a4fd76c18f989939c2118a8a8e943f235be2ebb3325eb02feaf903621ee5117234c88908bf1e209f6a2f8598bb829d2ea05063c859a11db7c7358cbcdf3450b9a446167cb6efafe60a290baf5bea53f7e1ffb23edc6dea581f049d6d1c161d412b01aba5c213ac31a05442a74aab5ed4da0d53f4bc4dee9a8f9a2fa24c94b63322dbe994090f8a90c2202ac6d3b4fff671ead1a56211e0fa4c9b794a1f55716102974cbf78b44d0b5358847ae6049a89ca26c6d74884bc28e16588fe290747ad39cf557174e618f6271911a769dd90764069cd7096311a7b64fa979ad3020f9728833b4626c2104ec1567d696f7db40cb794a28b1fdf3445d7881d5c8df15e1bae14f9c34d8dd31a8255368c7ce673a0a8279d4c48ef7d3367419576f63a51dd86d404491fdc9f868446ca1e56c583772cb851f87ccfa81619127064c863ef8d8fe263be5a5c2957643b6edf46d5f250bc688d3e2d8e1be6d7008f6e2e07da0df3c8ac5485cfe8dfa521de6cc7e1bb69c315f753d3a91f9a75efb0269198c34bc1af014fd2c7ed18bd1b37f9272ba5e6667c1149c49bdd3a74463c4d3517f0b138c4040f55aeb2d0d50da193191ee1d99d57e7086a95a44ac71caf70938b0e9ad9838ff7f16e1a5eb83a3fd4c86e4352e5ee90bb6566f3d2ea29e47c9be4216e2d57884e795197ec2b5887fc498c316b3484c5e837080f69b55837ae16726a726ce33653fa6806faa40e044f22e46fdba26168f53786bf02a973437c64c35c2dcec4c9e215185e05473430ff9b380802d6adbd94ea54eecd1f30ad64c68de568fee9e8347516d2376c699eb07447dfc3d643b977d9032c10b4e1c1320bd58701733c3c3b673c23401b1272bcf5784444a6aa1617316f9584da40bf3af72eb8d0172fa24cac8b8f89df3f35f13a9c6aa3ab11131943b15f389a48e3fd567d7442df0747b63b1e6807f741664bd1d3b736ef18e1e478566e9b0d8869165bb8bffa804893d5ed4dc5784a0cf0b3b5f6bd5851cfebbcd2ded5fd02e4aab117bed0b850dc952f1767e75f0209f659961d9a660d6f62b505b32ec7d0e7512aa5f5e56a316ff99a35c87d75774da9522b08f03e372b620b1dbd1746bee2d41b2296b232a71c47a072ba57e9c85f0428ae6ed803f1c987569059aafd19c6a95eb8e2e8b798b09987c3abb0a5ee2e7497d32636a1abb9b4cc85c82c196c5cb0544d1fdbfd6c2746dae11998079c4f90e603eca19afe33ba25dddd1c3e5b5cc07ff278f77eae650012d64bcd56d41f05aa47b19d901df12af78f12b78213389c976e62d174bef592f936b823c3c51a96112182126c4cbcb05c2634a25710db4f3804f0fb5d28070e382bdc7a4da10d8182c4f2e7e8c6c549caf7e0d3c4329cf23b8d6221ac4e9c43dfdb277526ee6055ff24b453aa61c02ee5d5ddc841eab71e8d8427df61f2de04905f7d3935883ab819c07e07bb6cb34e046c72e6228a39ffcc13c134f9d37eca42e3a00e4d752a8cd05c7872a364a3fd6b61d028e52620e7f3fe0c37e9c5b8f83a4b1aacae295b50e6ce5c023a0e9c12f8ae97b87095665785194f92478955003a17b7732d735d71d08f3c4e71c1aaf9842a0a933030e08a2f4982b4fccc0d9a47fe3c1b9a785e8e40e34d92fcf5c3b59abe13e25e3c229506d5b90c78b8cef6b4efdb10a8fb4f36675c57f7ce989e36f64375d145e1c38922d9ff08e8c34701a878f38fef484dbe22a8c96e0565114e2aebd5aca725379fb633a330300d4eb288fa1fa3dcef5f37017610e2e640b4ab1d6b686fd872850f34c295b2add4616c6b8837c38f215b4328ae2a273e5bdc529eeccc95301476bac17c022863cfe956be7ecf3c69fc2de3ed78a6f93327e420dbc486eefe151c388f530980fb6d00fcbc6de257c9c9059a31c6338221c40bdc9acb1ddd629d83e0b8a667742c9dfbcf3427ab5a94e75a9b53dab448c1fb3d00db75933dab6ef8374be8340e1b6bebefd7c4f4807afb4073acb646350f0401ac9f70ac28edd565463bdf55bac9df6b5b20f345be963b1668e3a8f8d81557b5c5d2a1a5beabb6e1e68f8208f11c2e9a5024eb4ed509d427167e0ae612d14e8e519baca70c12afdd85861be1065d4efc2a77f804ba2e3c50aed2fa5d4cb528318900f9bfcf71bc1f5031597a215d9c01b8ab8bd6c06210318bbf50278fb19e95a715f1e43e634e8fa9768468d861a5016f228c264a95a60da36f79d8b975de9930dafb102c37841078612de2ddbd539123a1401bcaac9c19fa9830de9d4e3c74c295d0fda032e6163c5fc562ea160651f9ca66c732879221472425deb14fedd5bb297e7306579619fd156c66f471bbdc1035b2b17866e81543f4917ae440578c21e54a363e0bb2a48c8eabe29883df6c29b7446ee7645964bdac383942232fe9ac78183fb7975dc69b48b777d270012419db1ef296c060167451986a0d290232f4ae72af92da57c3c15e6cd78d54e4ce8b20ca9cd44f8536835c594899354c6d690a1293cab9d5f744b9f70fe791be536fda1cc82c2fa439c4777554ac63c2b5a2435eb4b2c0dccd74cf08189e15e3fcb6b13f982f942c579434ef13aed5b0675a612af24f95e2ae9bf88f89970a78f94ffa467b41f25b45a69bfc0cef2b2722a150d5daea0c973f3ab7282cfb5a8572d21db005872cbb3523a225b9c094ffcb878fdf76f3d8567f99fe209e0b6c34dad48b2f7b23728f6e9f83700db2b20a897f730f1b40aac61819f249a3b95b732939f74bd348f4aa1c96cf3e9916038d09ef60025b87fbf8e371f0558f1a49b9d11c7f1f61c3cf20104e6f9ded19de45f3a0cc1539c5c7d74fbbe0f85b64baecc5b3e3a0c672b83068a033d1bb2b7e115de0f0bfd153b967743e96b08bfd8a51caa6407f7b2a691f13a2a118a9bb45107e5fce1a5d6fdf57f381bedaba55e36afa4fd9a5cff9707a1d8ad5966eea6f79529ddaa2513d676718b5b40a36da21ded3463dce9922f66d31bfa276b7ff700ae161dd9a07adc3d1d9d7d346b696bc7e3f074c5938090b332be8392956cfd18090baf53bba283a00c85dacfce795d9be697b9d0410d2affe333a64ec75f7d38efa7c49559d97a61a9af976746389e3f6b8e58749edabd0ce6a243d393c8d30a45e23b25a60be5b9ad05c703a19fcce71156e6e7d8fa558047273513ff576cc4e83eafa8a80b2f629f0ad410cd5a5d6aac294128b70d66c2a44975f27fdf094024b78f0798413b773e6e26d887ecc6d2e507cb05af6bfd4410bdd76bb7b8fb11147dbe771ee708529d205741b155c8669c9526ec8453d3ea52664321f2dac6f7b7f6489d571546a213fefefd75f07dab21863085ef0c41ca50010a94138605646e27c94d797f6a2bfa4a23cec57ef600061df478b9e586aea3d11e719b9b3bfd01d409a4a9f4853aa26f2a555d16fbe58c1f233d4284b6c026bd45cfb2f346cae6e889d7bc0e9eada67adb6e5fe10c33a44934d1a5ac35b6b3a61ca5c3b35b8a309b4f52ee781e6771964df5492ed7cb04d39fa97057460126f2aa42651fbb6c69d639e6bbb2aa588e8b46b226ff9b90600000c84a99024a731bb5d717eb98cb792d1ed4abd73ab60c68d998351ba07149a91f044582c5d13691bd054f92e4ef79b41bcbbee4f571dfeeaa32251df30b1b7cb303c08219876058a26eafe62c69bf9e3a0c3945d87845a151e5e7a9ef41cf8c4879d9a2d85c76aa1691ed72942310aa3ef3851c51df83c684c7cd6ae90f0ef50d39807fbe0a86d68c1b9a5c79830eebfb784a18c00da526e38be60763951c6dc5146fb8a56d928b0b9392723c6f84352ce6f0330a389f13e9f8cf9d765f57c7a259a58935ba85179fce7df1206c2731dc1c7bf70e3414435ada4dbc633323a8dbec60c9b552b5bf3b4a9ca8fb165240170ef1d3a412b81d118a98abef55671dc9e9d4422c24c526fafbe551a4238c07f6298017a3b5dce674eee30f1df7b0f92d7d4acd5fba54255bfb5572160700b721e7e7815b19b764b16c2463053f83095621d9d8aa9311adc62e9eb80ae5be73368d821b6c9e9bb6f8b3ac9ae0b90df81d25df4940c012da789fc49941decd7b4058c7d082d242307161f48e1100fe643252d62fda954076bdc7921294f684df4a7d90d83d1ce7e63ba8cd00e7ac75d7001ba48b6b3c12d2a199d158140ed5134275d7289c2c64120ee2f451dba1ab9590081261d606f59163b04e1a7d8c3750d9a58cacef7010ceda8a6b6e4730d29717a30696894926d2ad95b500797002f80fcc4d48ab66e4599c17d9027694f66609590ff9337830747716b1f18fd27005a47450149b878c357328f01c3f77a73e63df91c57e8b12531c4dc74ce5944a3eaf17fa002e5f922d1b5ebbc052f038a16db34cb7154a0049ee4b8e0900c4e1416f3fed9c563ec09b19cc53f6e866237d76d648dc723574910e532f2180f054b1bc49a7a7da6167c01cd65ef6591d646ca2868e55f496a1f260ed402a3c765f2f417745c42eb3b2022ff547ada7324c92c63d6f884e9cb12fc9593cfbd698d8d0d13d428d8e97b37aff72015eb75fde87decd38029b288511fe5af1d13e2efb277ea9de5c33f306e3c2045cc3aaba1fc018a950976e16046aba4fa5e3e6fd1f2fdad7ea79a9b762331324b4c81b9ec133f5ab08ffe483c62737fe1b17bc319a9f61e7f1d21a0b48269593450f0bb697bb465f7b3d6d5aa04e8c1ca1c140982510dad39e33d77da9b319e946bd2e78d8a27e318a3844098294d44517686c4e6245c614454c142837585d1a347da0926589ab3d59c7944a2460cde30add8908c6ec6a68fb7bcce72df98ee63bb0fb7a1f59a21ef1b197e981e58212ebc4d1c4705eb830e258cfffe89dff494240fe15b3251c32bc602c8372864f3cf0dd427a5fb762ac36e680bc61311d012a1fa296e807eb12c9337e66d54c4c02b3dab40e989d5bbf1e0bd2c85b2ac8850c137b92c708cfe34d6c1396c4fc75d4c05039eb6450dd8b733af7202aefd7bdf0bc7ffed4b6ded321f82b27e2e74e2c3e8abc47e5b72fa38530db324d8814da4f555c54d61c2d19a8f244ab04dfb4dd31323099cbf33a60a2190ae007a41777de6e9f9f3afb91a556ca8a3381bf0edbc2a17115945dc5dc717a7b14e9fd79f19a6cbad11faa440b0528e28155436aa0e83fc90fff5de8a574e2e4c9110250de52ffe42b14fc53182d02589433ebb8ccc3eefe12d8436854420a38efec9b6c526e2f2abddc738209f3e666d932273391ac9e4650484247cecca20c8451a5e75fbbcca1b8808fb16a8b7b6fbf716081f25d3341a9a1f451f88c5f11dd4ce1c5bf2b08cc0eb1c8f9c1f6050030a55bdf185db9d8db08f1a4ab119d3aca849f1fc9378d37cc81c3968c6433ecd4c6db752b4e86e0e5a836062b84bc5bf2d511eb302a687403a055403613b4b878432bdd904b9d2f1a9bea4a29dac1c3f1039f4963fe622a281e420256a9ba30c720059fee3d43c25d74f8d42e36978cc325bd4291894a4bca5434c18ff4a7d369a41bf67d74ff970a98253fd36695855adae5b376b8218ac7c6ee195bebc468463326dce37798b6b5e9968d2edd2fe18340234acf4b5c16a8a67dc6b3789c1573801ef4f1e6b34bcfe21e0e69727bf3b9d92d973a73dd6002d3785740862fd67400687a9f0b5dab30f785784e3e189f0ee86ec064fbdba3af7e9afa8258097cf695901cc309c8c3f7c94526729df02aa03ed1ae16a8ddda4ba9ec64b0b1ff68e0a5f90540e4aefee356c617ecd1ebe2b2029749cc9b41f99efdeaa0d8d68f012161c3ace71891129049ad48bc720bd77e072196a359d1ba70fb42d85426977054919803c6fd9df508683914ae9c500953c915b7e83720933c34792aa40835f9d204bf48c56d5177d0ce934f8b0fbd2ef9dde7c8489eefeb2b9558c3657a5fbd6c662619d631c0a7f207e678c26334cc181a1f4b5a09a13a3ae19e60648a78ea2c55a0f2b481aaa955a5bc0fa883d7ab9ce75020132e17bbe647df42b1260a7c4a509c31b2221587e3871f770faff085bf9b7d7c8a187186055c2beca5df65e62713ab86de162d261c271114c24d5f696088f7ea24acaf21474c8ef09491a98e382738704ebbe4f922b438522b575a3af05eef42788e8f9b92299c881aa52f4ab5a6cd6ac225313a6e332d17e4d39969beae688a7c1a1c88132f6da88a9610504212f68f92af02fd75f6fb19559abfa400dd98c1b9910b17788858455c9312a2b850782ada55e133c0614ccf52f0d9ebde3be0d586721996d7bef1d42402ce7270d1c7a09ef4bbe376d947e2243aa77b670463f6e86881df96f11aa1e497ffeff29256a32834ca13257acf905622353dc1dac240c5cf85868c620f5f33463a431e31fc526add37be897503b0664f93340b68d259f4f8ae8748d1e7890ecfd1b509661251abd5706486738701e69cd6368389ba4857f7a3a6c8bde00822d2e0e31e822d2389d916d36bad5dfb086a6344866362b6f9fbfbdeca2a0255fa32902639c2b6303571826669264b2c7347ecf1fba69d57913efb02b1ebe762d3ac1625dda06f7d2e7c1e6bc7af1aa19b3d64a59b5621d04e508d1627a9345674f673f13a11ff1d1330926fe1563f2e9a02aa1e4c459181b49a8b228baf5a76cb4b9fcb28c4822f7a7254fa3df85c944db0915b32c1b2df4974ed737a15d88a244f2bc4cf549bff094a7b936285ba679aff7a005d81fb8237979eb03f496b198c3a5fc60e63a07a4a76dcd25d9c5f4a29abbe42f565bdf77606ee3542bc57dfb6c7b84190f40e887ea1ea82560bd23363d6439bf4235de47742409e7f29eabb39c938307b235cdd870499ce3f55868162c7092f675b9d694a6bf3f754c738014ccfc1a87d914d6965a3519b28b1e85e47bd21d113f93e9fec4bbade307ac21f732fa3c40a218bef727fef003a43727417d785cf9f7bc08e5c707cf6c218dc63529930a7b2d6ea00714402eee4a17d8b5c5a3af45a0c2fd6dec08546ebae7df6a23c4d541c86d50df1f1f3cb4600aafc0bcf789b2a206e13c45bcfb8660b19c95833e6e1b046db2ee4dc375c8eeeea92c457ebbd3482c8344f5206bccbc4b6db416753e40ee53ac1d21d305108b2ae8b9fd7574d55a81a88eca96b5a98d40dd3491a98c658f6b7f8317bcd069a50a82b227382bba97cc6cab6775637e3f9567301bf9ef8ad12a84207d4f3ae120b91cf46558e542eacdbe8f14c82863e14ef684c019c1284b3ada3f961fcb4119e2155ff96494fef974ffce3e333c585f02375358da8fe8ab2b9f4de3b2479cdd63e37f17d5c85fd7106eda960c7248e356c9d2c76bb704916b49ad47f7193f6c53aa765fe67e3bb00aadfabede79f0141a2006224d6dfa2b5806d16b605ec15e1a581383357e1954c6ad2c48b37e7c5d2e8a5aa2071d4a24288a509db1852a8820574263d6631ae9edef7f53e149d9ab3ffbc81a6d107d093c10729b7a8085a0f9b60a1867414d74fe220b3ec787c7c3a7487fcb84d4bd8945d9731d6f39a5571d84f8bc040258cc590977a2748e495420f2c3c5c21089ea08534a68380783887977c3813559fa922c7ef4866175193ce5c1430cf3c57f502c9c5aca244093150b633d2b00de21012d8d0463529025fa8e9a50ed4f65293a43887b6bbbefa9de19312f74fe5b3aeb1eee5a67e437b786dfaee01b85ccb5bd07024d35a00dfdf0161ec0da180534e3b364ba96d05e2e1464a20d6916acdd034ce29f14c9a0644872eec4177c37965884e266ced81b7535215d979866f8770a39b055a4521a993a59d0413691b58a3499dcd973f1e9727fb4784cc185e1d53e30dc1b58ef3dd83206d0499d8ba791afe00c98020d4fb12c2463d8d6953b68133a23c445ca4bb05daef0a28a2f4f49bd89267572ae2ab5cc7edb6d90753d728e7039fd799c7d970c0e92af0ee886da1ac61a9986fea3c3077bf417b7eed6ebb31fb974f261f3e3c6ecbb26b21f7c39f23989376b032f14bf1a764889d31a4cc21ffbff4929d13509917a8545194ec9256f2231116c25c4803f0fa1e6ec59929e71b141c2184ec125135ef73c9e4a7ddeb4376410efb0a1dda62525ee5da7817244ac731917f6d3b9e3cc35294d6b867280cd5f824497c8bbad1138a1158e5f8e2d1b56b688fe46827e264c265cbb1184caa19a970dce3f7f35456ee0e9aa155a1573fbbcb435c07f3bddeab903cf6817face103a3bebf8dbdadb3616535f6e8e6a163be5373f42c7619870016ea62865b31cddd09f992ff1dc147bbf3b161f164aa89bdb555a6b9628ce7175242e98ec55a3510d1ebc472c6e211b91f58d86582ac442934bf05381d4df46e8a106264180df3dd193ae856d68030c5295907b6e1cb41ec663c5dae0016dc5b2b58ca1be7d637920507259ef89cccda97b3dafd905b30fe7814b6ee380adf40e17b78020d8534aa2b1ab452e50122afc66e53a111d69fc7b34fef96d908d8ba6c8d19c6101045ba3a6e3da8e5ec37f36c91977781897d3588be728d35c74eeacc1b633a01d356cf34cb484e9258e2297d2e427b7060a3a9c95cc07d3a28372e177597383e4a7154fd6e1ca724860143c26bdd12769efb6ad5ee9071565ea7506ac9a4c845d8de97306c2e6436ebb60d1a48c5c18654292f18e00cdc51e9c6ed943ba234800f8a2e1cf8b32e8478dc643ebaf88d6156edf6101fe4d26e1e597c6ada89a2b2be7f40763e550cf759f1bb1bb76143615d24fcf612fc31cc111e335a6bc5829c5f5f813d09cc64618cfaa4e5b772a926907268f3588412d0f83899b18cb0a67c8afb44488322bf77010f0d021776b8b051fc5f954060fcaab8794fb3700b25cc24a4f2d450fe0d1c9a812c1a8af82673e69b435e05a19c68a260c5212a39d59047d629b33bc489fd38c203f677a05894b64634a18f9a1bf851b18c0bece35c42d2bfaeeb8bbf25fd6aa8a548baf0f601ac7efff220c5464beb2ec872d5405c01dc80da7d20383e81e828210d9e141305d27e49e7b3052452cb4f107d1a45290eb06a592a34434f6ab3da23c045dcdf369c0aa88a233fdb83ce1eb9199d8bf80898cc130efe56b37e5c8c262108fef525388db0abd389164601f914070c907113d439d71974bf38bac66f4684c4147466a63323d95fd117ae6fe1ec3076781393e392c5fb1d45a66a4ed646c659571d440ea2f436019ae2ea40a5ed152d74aa13a03b180396a4ba9ed302114cb562ded05b6bc7c5a2369081132d49be5e7bedaa7ed0ea8240c67124bf83fe29ec667ea3e8b5dd0f7113bb5d86c3301425d9ae7a4cf5b7dc0f0c6ad2ee3c093600558856f366a86cca5d6d62d0af5a3faf3efc6a66e74f8555d08b9a0ea2800874f58ae0d6755ae9502f7eb66832d3ff8e004c597123ae85f7f0c469cebe42809a5158113759b248be746f298b04039adafaa861485ec9456e5818ed9b7590db380c5d5136f6403a35e0b78e5dc3efd9023b8df6b5b45deefa33a81f7995298556de8a612ba9432eb6270a7fe567fbcf18a74d1c6640ffbd7e1e269edfa1fadd2d6891c33ae3379dfa2081c8818b5f0bdcf2030073d491d36d70fb8b4d14cbf9685e92d2240fe931b95e5ec5b2733720a920a9084faa125b00c86b9969a5c3f807228af299639fd91a4ccd87fae77cdea64506188c802e2bf59652d8e2dfd0ee22857055dea82aada77ff346fa7c3dd4b4e368e5a5fb17167afa19404babe46363bd7e050acde131738e2d0120e2929c437de077895f3214c4df71692f5164abf350d9104d56ca4955989cc07cf1ba23ccae2f661575e652538a268db74215ace7fe50b39bf7037aa65d12bd570d47527e4fcd7a5331fff05b11fc06b6c0cc186892da46e8ff99d5590998e4932ab8d728ffcff65fadc7a129cbe89cd7d959072bca98c66b49491fe51495997ca7edaedb21a4a2ebaf64f6c4dc90bda5304efefd69ce11a4d93a9f7f89bded6c5dc90119279a0447ae83e6889acab69a8e6ea0a78991b544273b061893bfbd522012ab8b9a246a2c3dad5e664fdc7c0c44d5ac655890314c65252e9ebee7d426bf2af8701dd6059e7de167084b7927ad59f0b1cf14d7f3e1963b3967848cf5cff40211089702c4170005723fbbc3ca20f721c22f8b37f04d0cd5caac36f6f0404f6588a956184d927e1630ffa49991bd6f70f56b60498424e924dbd78e069a86e64edb3570d10b7428f2157a0246217b2074c275753484c671f8874352f975296ad415597e198967cc945aa19e7d699f1b49feb75b01c16a1213ac35a451024667ea9182fc9ac5e37a86269fa807939df90765561e8b51732b1851e86e39345db7ef9878cefe18a6dc5ca6e2951e0c421cfeee16f57d64786155ded52a4a288d7601fe2a07a07c339b884c742ddc886aa003f50b1aa2b3af6cadc32b03cee27ee39e419afb4df27d0094ae2959123ad8aef8cbb56c47b6276b93a70bd9cbf8a2b9007389aadc9f13f1aff1d93d32de0c35807c8a6da1a69ca858db15ad165216265b7178487768d4dcf6158ad4df0bdf2c7183a46cf9c6a64e030e4555fc710d374d1cc9f9fa400ffff850c2637c1fdb1baebdef9840901e700b8cf4f0b93ad16c9c9a6aa1735983b7e2fc8bc57a37bd32d205e735de9194dd3eb03764c3bad8fc7f930448751c741b7eeb6dfa0b0b232337b142869c1350f2c531fe24d7e6a9592eedff7de922e85b8e3a354d8924c4949629f1bfbc502ca3d4b1b9f4a12fd8cc87904e0c309b5736717e6ce8e13bceb364bdba0b890526824e46d59d8cf0957b3de93e93cfea5a68d331db5438a0eba4dc48e8e10c53606b4a49bbe07fc6ec0748eb49d14b6bc262077e93ed4129f2ef4e70f1c51275a982cfd8f0d93b0e118547b1686664aff9224ef11f1e24198312fa506dc9bc2723353d1968adfc05ddd865a6c72b4f01f9abaca09ff8e2fa757df548ee988f017a7ff2125dbb7c0335c4659a463c2f0741ea933856ac5a82357beea24cbebfc2f91d1d2fc6d69e8c5880c56f6d2b1cb0ae83859fcc86faf38c73adc21d8d04c201dbb97aab5c952e30a64bcc050309e549b44883f95fa2e93b5cfa05e5dbe836b7a6bb6cc8a06da90f73f92dd5c3418c36dc298c7c5707764be16ac740662bf734ce3828f96392c826d3c2b94df8dcf0a74c7ebb19a853cd6b8aa96426aa90d19df468e5c08a861f6274909b334eba170e432f24e3aeee4c85adfedf1148a4b66d7ab82a1ca978f35723363c4200d092855f92f4da3d947f6e9d52845d3a47d1099673bc8fb297d84e5e158df1f7f9edbe034a23343065133d2861af85f0bbb41ada252659585a4361b485e06eb42e851a35409bd1fc8b3b8ba1c657aae48cd17e12f5aa6153adf5f6575e695ff00942b2b745926a9082028ce9097d2c94ebe4d2eadf856e16b311e1b4c24b82a45f07e88f83184e5237630828e3dea8aa30d12231d395873c8cc2bb3c39a55fe6510544464061eba038f61532a4eb7b5a19d06aa796c16856b83d662299aebf502c6daeb6c8463bb71afb49b420c46e968b03aa6aa2aa272386844d8d20231ce9854fe014cd4b3db56aa3069b75e90a7c19d53e7bf3f57a49d3aa2cd735837b5a8f9fd2da8543ac17c45ef7850f192e52cd624d298e85ec582fe195409ab18e9fd90a0b6b99b16dc14e181e628a03fa18c384c51e8f98fcd76f9212ce7835d1600dd97903be1f08fb0546db825b903b598be387300cc8be8859ae0e27071e7c12c69c65c0c9bbfe33a6b8718cc63b2b3a63238a1d1634257ee22bbbf5c7272b772d1c6e2db2f87104b66c7f75ec5d35b5357065786002e833aa3a4c39a4ed9c97e2b8c46c8ab18f338103763bcb63491dfa02c8b136c32d1bc3e0117db76d65c0bd180c67a304132d3fadaebd6ee5b366cb56449c548cc124d4610ac9b2cdc1878848eebc75246886f5cf08d7014476e47e00cee5e78743a6d603972a8d60c342a4db86568eeac9312652f5f9d9ce66dbccc5316b6743e7b97c30bf0d89897aed7a7da22ca29e526a8c2ad455c011e1f2ed03f812da015bdb41c249606dd3c7d37efcf954d7cd0b026030aaa36ca41159d36683232fb5ca6aa9e0162fbe5b3694385732531412910cc146562ee33c13246c30d2081c45e98aed521f4b2b8d79c0e42722627fb63cddfd9bdd751b9d1796ad3709a45a71b86498f26870ffb80e3c456198093cad755701ed1fa9f0852fb1d6d28cd43f19d07762ff9b9f4676c8e4a51b6ac52bf80bc06ac9a6a14315f81da5a683bf03738caa2e5a908cba2e9cc2fbe137c0e774b83d4bcf817b03200a526963e6e91a76e1984c233e13698734783430a2af4f84e4ef8db1a8887694d6bd80b5edbd9e288e76c22720e63d790b759860a448075489faefff8728f885fd1fa45546b6728c39bf9c2a67ddec3dbbac2bf7bcb0732cfdfeada05d3b92994a9a4004f96fc887a59d2abdf218cf68d4d7ea9bd7609ef3275dd38c1605715bfb98cdb6a94d43f729f3b6bee06d9578a2d553f0cee1aa7b63987a4a93db756a534356332f934bcdb78acef2a12aaaf7b35c5cfd4dbc7ecc1e0fb44636006845df1b8873b67f44ddf2373ddd5deb7a21fc4e81ba0a7d37358aa52d557e2b6b155d6ca621c7de45be5008ca9aa3d96ba8259eb3499fd6a2f43d0ad1ddaf56e08485f9bbe56f0585f2adcbf3f5e49e30e914289c2c8758fe4e0eaaf65e8484cc66c6e0be95971c5980c2e71756b06641e285af8c39b845a5fec74992074aa8e159bcce436402abe9b5fb785ca2ae1dcc7a28f7ecb9fabe475483f24810bcf00cc2f7a012a427b114c7d05f1404d9b63cf5a5b8db92bdfda46edc4a328a931385e99c6115954ea0b04cf00909493acfdd1b8d82328bee4eb9bda1ba3ce652bd198189a1cba3153a4d5c33eed32d03ebcd8c35d9ac22bdea4346dde6e230a3d1dabd60390734f5cd9d1a004fc0b95ed22ebcd6baa7692b45faf3625807280524b02187438ce07883abd2c74637e3bd143c5cdb037a2a7a1f9756f358886fe0a88db2720349d66fe2c71cb82391cf65876c5183c9d6ad23420866c46cb6181954585e77d559860ad0366c151a26c862e486632d33aacdb09c08792efb46afdd2120d2aa321346d4a8222840ae64fae610d93f305ae307e8a9597abb8cc8edc73b6a3d51ba60b1b0e8f458292dd8aad1cd271ebe709ad2deab321a957a4ae0e42b08146696f3a4291aa2d558a5f239d8c913a03ff7a90cee79e55b443e07430d2ebebf1c023a6218e20eda65feb1e4bb4c6cee493cd7fd878e2107391bd63f34ca14f3e73c8876a6af1e0a64821a10288b6a1ab20836dcbe6deaeaf280038787f9b71232fe5907151d6f2456ce7a444265bd1465e5998a5c0389dbf23eab0009d910b75785bb332f3baa74b818722c98f3b1fc3ba54efd20a77cedd1bcb91c46c42c214991a99678976bc731b8ad55bebed525833b0e5a12a334282624353c9ed0ad96fdf6cab0bf1d43565afad5b69d452eca3dfb8cbe78d4cc3badfe7e3e663454d30c267606b0afeb742e13cd1a3c0d6edfddfda659601c08122eb1393119415951b65a6ef72a92a10a51ba3c4764a2b7bcbaca283e18954bf0ef609b29c97e9017427060e501a50c4283759bf521a1ec129068da6e459e0927c802266297c4cd3683adcb1144bc102d843351734ded4ef61c007a50ba60e7a9ac70ee825f4d898d7ebab47142b663a95ee2d7db08513c9e9c4534cb899bf2b0725506f21448d483caa8e460e6cbb7cbcd6db4b3f40f1ea9ded5d18567a12eec73632e367042158304cfe49028018b6784a9027dfdcd6e51b14ada3edd4239efe94f8cb53439cb19f3d66d310624bc2ceef1f8eb3b4a34a974dc24fc277ff9e3495cd03d561c76bc51f93e82e9506a1e001fd1efc26da9f97bbb6d41ac92e49ac9a01bf52ecfd60c43298d91832c7b9cf4c78233af75f78453dd64a84b7291ed9cec5ab4bda0414c80589363a3f6eadd1c244bdb7ecf6772338e421aacf965c0a836490acf4c2899080a4d46783ab10e921df073364cb7ebac6302fa3640b30bb0c40a203a0f153a6028f432de86d6053cacea3cfdc878aa86fb7df21d2f208b279ab8684b13a30ce6622923f974dc94555612c1402b708cc910b4fa23bdcd7ccef8ad66f29e1f05f68f4b704f5c1cbf99caeab8203b5e230b1e901ffae0c15bac30a1e55bde9f3ea26ac87370780909e389343998d2801b6d35d09e0af98bef74a9d8ed77c6ea865c1eb5e14cc7a26990ebcaed954dd71a5c9e1d7263901590f2f66b36a917506dac98f872ab1a6976fc2dd141416e60337618441e6a707aee64c9b6da1addbcb2adec6c4077af7f74e21fa3516d7c3443f07ab979912c713b1279818fc3f0fd2878872a66569b286bc5d3e8976d14dc816b988001ecaa443a9f67742bc30e5d9469468e36118540b5173274e76ef3ea4e241ac69cd1f66cfe04db423bcabeee93f9e79be304ce9e55ba215eeb02f10136b58fa10e65be271c768551c13491cf3c68eaa231106394b9a86bfef176d8f1606e7b03336bd0f4cc2efd4ace4861db75562381f1a77748b77b314472b66b4e4d3f4bbcc4bf83554fad6b8afb0be951ebe9966552569f8557ecc98d650b3a3cadcf09d10e93e09c011319afeec461466d764730433992383a2c38792b52aebfe054a40c3c69723a8222439dc53c86899f5fe7a1a6c357689594d4a9242114531426463a3f0e4c497a59510388722da1a613b81e472fdb033c241b82c49d1729d1766d114118a9a533eadee6fc0887b544c2c154c6b082e2724df45a061c66ba6354a612a3d60c9c2b7ff0c1110cac1d0a536aee840f650953ca9cc81ebf2af2bdba641047ca362edbc875e8a715a821fb8728fab6845aa093372ff473a80a8064a480371a6ad51512a1dccbd9ba4f01f9562ae09371d7a44ffcea6db60e97b373ea25d504837a99f3b00ff21244a8727592e51b00ca748b5f1b76ec906d21449a545c771903c25725eb6eaa0e7ea4ff6122bbd8f66ba3ad48e575f6f5f1bc70f5fc170800f5fc3c6f7fe297b6c7ee26c2a2db3722b7db3b564524089f454669ee4b965cca54f51fabbafe5b881c4deff57db107247a5def13fff9e52a0734082864e6f35dfc476aacb5cb0acdb44d1f0f765bf7507849a7eb2876e889a1ff4900e1fdbec0aa7833759a80d7ac650a1a9c3b2144a3e476d35c3de38900a9a44fdf513f6082cde1ec7d62bb2acfe24d3b71d9305bb53a236cbab013887c8b82d66e9e3725c5c374f33f1e2077040fcba3c01a3b2584f32108b5b75dbd7a180f91864bcac7d1fe6168dc0092240f3e1364e9836373d32367f18379328f8ec913f7677ebf309ad3855eaef081677ca7a423d7f37cf3c5a46ef24d9209c07019d843e37d2f4f183449ac46337463c9423aaca1e9c398c07e859d2ee6695939211409e5290e57edebea1b0603eced432dcdc416ba8c75b2a8b228ee428530e6fe2232cdc6ca8dff13b8b1eea2d50aaf638fd8ffd83b5ef2d3708d93cba94b3e1f3680ac9eb47ba70d78429bc5987f4d5cae53a2659ca6b523925be1540f3b6962981a33f1269ef031985aaba080cef731ea101fe09028251f723c20d063ca5c14489fae9a04b9ec8853e84a36d60cacf08ec9d417634b57256f0ec27c9503e60bd803d7f3d15709f4178a483d0332c83378c0b4afa5a590b3eccd9936b7e9de742100b49a86b0b5f6203837da31da6d6e6a47cab2b685242655317c493b75eaf649a79ac5aad946b3bfdafe2ad7cc5f40615cac91d488972dc5395c570caf2feeae33b26ba0a9403b8eabce10e592ba27ea1a45881f9653cee0f6ab6cbc323c6ce7c89b8e6332c3c7e63effe804a3586068f258d0f03bf051bd1b9994d18373f14f2509980257643f2490ad332372e7bbd360f9d1e55992d3481ee0052808639617ac3b4b0dc02249e6382897d41c5cf2f4a77bb4980ad29555fec943e6a22bae11c3b91d7d139a7e51d8f2e79486df5bb6be227c4f3d3457ddf9c6081f2ab48dc4e92af50b60150f6ed01ba02145eceefcb2e4814842c47fa5fc907de20869ad5a8054a54a7b7330685590293d02307583f8d0e4ef7015506d602eff2807be1d42cfa27e44cae8ebce3442ace117f6f2d69599841b8050cff09b792aea9e923ca2892d6e5e8499fa8c1f527de903a15caafc963c9518e0248a535bfc2090fb4de2aaf62309c6ade9e8b985ed633f8e192acc5c074bd2803ee55fb5700e75a08b1df95cc62fc5ae7c8dfae7ff7055d986db0d5680375756a305b77e6e70e99c6e475c20eb372bf62ecfa64c488d26be11a3615b9a926bf102910d74ce380670c145fffc7f8dbbdb96e66e33eeeda1eb8841feaf5932eab323228f41348f99e48622f881b579186771e8a2bf590ce0ddfec4bf2e9a05aac5a87ce016b9afda84b0120e5c21c93ce3b714d62249b2e43d95fe9c51acf590e3f6b076ca828ac7208a51878b1d18747f528f84b6d3b64a200cbfaebdbf412f452d6a0f2f6832c000e8d28505d4b5ee94ca1d9e210d94767140189af19fafd2a4b8b9754a342d8630121af010d48839f3d0e70a23f6413c10ce4408fe724ef381b7d03ac8e3bc1661a89da57390bd5916206a75b767df59eb1d590ba4a069d372381668fec1ae2006bab2aab71ef1a50df6d5e3a25868a2f9cf6fa9720637e3073450a3b02e4a4762b01c20b06e05c9a554c6d3130a1ba9e98dbe0bcddadb47a25c12ce70d7aaaee1806cd13888d1db9e71f4fceb8a8f64157f50f9855c6e7803bff2f6ab5ae1505c54e835ca46fe6a283e024e89675639ffde8941231e72e492e8339cde42c750cb53924a256d3ca170a890d13005be729e9b0ceb54bec535c607beacd8562275aba1df3f4e538177eb29f980e99d1cacbfef25a48ab2e4f073d900966d2a568252ed043cff45d2c51aa4c1430aa8a04784b06ad1aed58d6f22894ad18c1ef5ec543b236dc5ebc13e92e94e9039a352b7cb8fa552d2e804e9d6eeb38e6c2d5887c8a80bcf270561c35f6a8c25d89b1d03d0df9fc4def4dc06e5a496f651513d5636086d1811162fa8cc68c8dfd86d4cb226a125511bd8b36ab5c30f0a595ed1b651b62e4096f904360e2cc21bdc733843413592c4c1610535a554ff8b8cea3454033f16694e793d5e5636c7989b2b18da7f19f4db1a0365e04611918c96605e4607e535361f8bfbb9fc8c61fd3b065187fa18ae50f942531cb6a95e45dde7abefb4d531d4999146372174c1b80fa1339e0af4d6e030651cd5d5fda857005e5de23e9e2be45dc9c0f9075544857f5d83ae98500f04b460dc04b6b09587f6766e18f22d7a465a07960fd6f0bfaab98620a05827f288b3339613d6c0dc6688ab1749fbf23201c37527e96da372701be7d70cb3200953d8760904659d4503de7dff38105232c8e0189e28175a1f4b3cdaeec2c87e941d7cd933edd182cc6a39596e1d68d0eafc60b4922703ed9b89c51b8a63b22ae7029b42924542ffad87961f0cedb97d8d640ef99ac2ca36d95664137ddb10608b3cdd34f35236411658e9e56f37211a7d619d38e3c8533d468aa223bdd68373c24eff51725d26168db71e2dbf03c47dcb2ef32d72c676bfd9fbba53bcc333a61310ce0298dc90f4d086e61633fc70e59c6cc43656dd19cd2f1fddd9e73a43d2ed64c8907098a6da0e1db56d8507bf911194bf5c2fb9c8b0f0c1027bd4ae9e95f79e79ef826e56650cde6081a4f93f891f50ffe42fd40e4433d3a361ae0af7ed963c385a9e94b02ab74d63afee6894696b6e89fea79e87f80da54df4b5bc517f8f68e88cc0904393a5432cb07b40744688881b586053a35e8a92fa0b2098800ba064a24f9febe41565ffc8e0247b9ffa4402e952a016a56d62ce58c26ce627cbba9e00d08f23b1c5e8bb75a10cde7396c7d6aba3f3856c433e40c394e970c3669840f7a4084f4461fe14a0db0f77cb72b7acf40da5042a2862c37726ff58645418892baf4789d2231c8e37fea9d4e921223e0555ecbdef4dadcab824dd05d59a0d694e7d50d8833c9aee3c9b3d68f7d4dcc42e4af2113c484162713f77d930130d83a450ed16015ee221efeabf6dc4491c77261d8ca1c2a7f4dfa186a0e4baf1ec1a4e1f1cdb90bb0e03e4df33eafb722cb5e41d2940fc3fe539bb5dba513bd8e49dc9ab8d44c5baf5a252d38d56795b039451bae3ebe2939f83de6c4201549418545f2ad1a7965a32bfaa3df3491906a906127a46b0f5127507646ce232ddc479cffceac121e36df2a3a1ce9ed359a2827517f73ce558e60ecff1892227ae6f1778b65ab6fc726fb814fd486defb2c44a0dc0379d23d0cb760e2ad10b0034dd5606b9237e10e3b10ae871bfe2ebc5c1e3a427d837c621d469b64268dd8e7c169d36aa94455e20818b0c9741db607ddb4496329a808198306bfe7301fddfb2d04473c8e78dc1c19ab17cd0b019977d5e1d5480ac53117a426d768f67568aaaa0b9f0a3dbd8f2d2efc9e6ea0c9f06fc502244430b5c7cbd4237589cbfa5bdb840bbac025b090a21436ce4f9cd6d075b9414efda68054f0e36be1b64a40682ca87b78bf945c3e833c0e82ba044865696b6fb6ef35621d7afbe71a696e4542b0a1856cde1a284d194cae526b97a3567f5224ee251186d7c550e6fdadccb869f7eb2f602e207033963b3881ae347053f9b8544732f14115d92dc383692cab3b03636ac219e456a2ab3e2bdb7e442733c520985599aef61aa3a7d0420f6f1f43d27dc06ca8e5c8569827c9ffa72b679b15c24d1f54ca7dfea8f2f54720f38181ffef10e168801e23aa0692c2c685716c74d8c39c379c37c2e10004de1105d9a096b2949d6b5e404e6356df1856ab182b7cfd0eef6e44a7ec28416430059bb65b2978052276921653c9207cb0e02e0a4828cb577b6bb4ffd58fe58a512a5249885008237691add586ff6dae97c9b1b2a03363524d1340b5a1adf0abf059b8750cd591ac87a6582566ff4cedbd51046b65a7b83d9046f095e436aeb48aa9a3a0df7a4d94ce998f47218969b8056d93a9557e4c0152d33013e61c699ce09abb904eed1443f95c37e2383015585cb65abe98073fc2c97de895c4b42dfaf8df357dbe51613e95026d70ce6b3704ab4b18edeef1f0e640833cbc9573918af7ce452be8a075794e2dc5314abd67f5d270d173ab558be475ef1a3f647784b1cad3747df344623d79bc813165d3455e2e8b9b39250d4d1813160468159a343a264a5c919397657a2ae06f4125141f95ffb12d49756b06e58a96967d84079ebbade9716f6fd19ff231d09f45777b32c6fab675980098d6d6f427145bc93f765bdafe4513397e0ecf1cdd09f6cbad3121ce4bfb27f44205ddae65a9f8dfa368d0d5d4df19f121f2481a9de9b381dd6c176327c5090acde40629ead14ce54a7ad0bd0b4c264965a76012127a91f9892746e74bc782f26a804ef7a98545a19f96111ae8f513f1421fe9d0dc3193dbdf2bc8e753c619d5643e8d4cd810f519ba43cd454287068ceed3c3e1cfa1f72f262c8d256b12a4287e0cfb21a8694276ead17f670e195c6761f2cec1905d075b3a21f9495153e20cf5eaae4a914f7e7d7f9231db9b18c483d3a738a24d87ff9f581e94aef6d4563b99f73db77d47aa54813792dbabc42c09d995b71d61ae7a1ec10427bdd5723c3920a4040af6c41ef7d94e032c80ce052ea331c4d3a0fa4bc3d935a1ac5b02f2992adedb63f0067e9b1d548b44c4425f3ffd96eff4706c2fccac087266faf918d8a3b4b1d1e7fe382a0dfa40082010b59e9ad53d9fe699d134f935ff948f01262b54edbd617eb0fa551c2a4bd436d6aab78722a983bdea62339c412b94307521333f53771ecd76b4b7519b09f2e4b662504526509b4c5b313c14185440306e3fd7554514cf29900f9b8f5d92409f44a2cce6f2426a5ba1d6d3cb1d3fce243bf195ef17a13c39ad9f6576ed0acdcd541a91711771c5ea8a55ecaa20d1b064e5e9d86c738997fb1c1f2e59ac8a0e43e51549d72321cc243cdf54291fbc08cb9351863dd11e124a93006db32443ed9b8962adcd9e838b2ac313fb821dd0c0842d2591cf4234a7f8ecb1793e182877763365f315de2f4c85ea0b370861342ed1a6101c63f6f31a5c1a3ac76ddb024e80e7fa5cc981bd8b876ed6f1300fce09a11c975fbfa539a739e9fe0db2910cbbfae013957c9e9eda93249310141b0d34b429df00ae392d409cbabff0a0acbc5a331d7b37100968c79635debebb41cddd363ce25a1f422ead90774d5e9719d29b605cf6041dae289bd748f2cc9366a0d0840344c42f73cc1b5801016e03c133a5a8e35915b0fd0b096cd13a40d445c834b55f8ada3c189956bcdff5ed005b28f784e49c20c6411aa247533abbf66603d05c13721ca538bfd578e97a0d37ecbb15675b848db7fe4e906029c00241704259ddeb9b5034cb92991d568832b82aa3f78fbb731786eedfa5fe102e6447393e87fb1ab51b4835143d846b1eb5c4362ccd728c5f9f2fff23895e20f7a85a3559f014bce09803b86a9a5aa44bcb6229dd70cc3bf70aa947d91d450da61ba116dd3eaf19f8cad2fa01535cfe012ff69fe4de65de5000243317b6d7741125071ee9b76f5b4f6cefb8fa6584c23c38a1b07096197beee5d88234c03e3fe7d83266714d923d7199294d1c67ad062bafb2dac4a7f0d8a3dd0cea1bedbaf2ee257526039fee67aedad3c5cac64326f5106f4a4b6021a81b83bc03fd26b3359b9fb31984c88e247b669e8870e67bfd5ed42b899a853a0f27bb3834849bdd0018054a624ef90a17a45dac8171b44115733e9cd84fff66c87b94b045edf9b2beafd34a41b8491c9300669b754563ee03ad73fe106865e607c8314abbdcacbc7180d3721dc9f46ebe05efc74627823ad782c26a0bab9ee97057700c398caa6ab345fe8959e8accd34a2986787915fec0ddb9975fe92eeeea8c312ca800b8a9c4bcebdf15af2a631acbe32cf979cd8301eeb73c97568255030e878a306fbe245abd61ac24c526b31aceb3a8136dc0b50d5875affce88143b1a4b379c162abeabfed499b0042e02d15c25b90d26200180c4db7157d6bbfc9091b3dde7858f4a37f9f1e2c4682540af24432dd7b41aeab6496377426664fc54c8b7a3683105d93b88ae30b361e68af6d9964156efb2b0ac470186a38e132ec7c94298f0f282ea866980702b4aa33e9b4afa6df36953aeff1f21f60b77e8d49c2b0d616e65118fe6bebdc3cb68a8d11cf3688bb600a637607eb485b97eb1dce5fe157d38af2a8fa2c685fb2b5e36d601aad5b282145c9246a0184cb9d63e7266db4f21f8433476fe9f2f00d7665433bc269426d8adcc24f9ac84a5a067e244c2ad219c70b068c3a170a2f2427136c53338b0dc1f043381fce912a2520cd572e291bc979498d2774ed0e5d1fb713cfd958330b473dd1aa19ef0e49d1f429e1dc2a70868cd0ada464653f1b4006995e2766f75dcc7b16ec3ab51da484effcbcb39699d0bddd6a7353fb7efdc122df6ede562006a2c0690d36dad0f0be3c798937f3fd47cb94729c159ba903a1e2cb1e51eefb26bea6c9d721ab37f8ee8e776cbe30226f7ae9ed2ff2567b68ef834d5c8fbc8da5c607cfed1eecb7a1667e12d9b4313031f3231e3684094545cec0a153f601f07196ac4e0b3ca605c297c426a1d26147c1cf5aebc8d9cf4400ea702c8aeddfbc28d1a255da9e280f43b14a9ec686111a4079b7cbd431bb675d1900f9f5b4fb217e1115901c1ae6ee6a1fc632873b8ac88d5674d8bad83693042a20c7cec35a60a963626b91215feb39939eed221a6b24f7bc3e6dd755476f0cd8b47e69fb159e9d0f3e2af68840999c8f0c63446bd316242792c27d018c0eb4a4d3a9d98841275e205d7e870f75db25b8c0c48e26f5b761ac23e23200874eff22f59d8fbea734a929bdc3a0131dc449091adce747a31886bda404dd738cccc95a168c8e0df0597f67b5545490a397c8c84a65762f08c0a96039174cdffbf45855404fcbabf09418d3e1617a1c6f06f7c4bc510f3ac98ef6445d49e16df1c1376491a931f501979a777e1947b904a4d86bf0f0ede276625ca635a4b2d7d53c7de4525dd3f666cd31aa5179ef0e3fe8fc593352722c2723d044174f54dfa075c3b402e3540922ce08f10b966288c4ce5be2b5d8b46ae394c5367d1a5a07a9bb3cd8e32c40e2b4b37ae37234a61ee60ef84f8024aedd6e9560380d411bb768511f69171314f539375b348a78b7c639037dde0a07d82fd8d562399452a39aa85f198cf5dcd19f015fb611f830314d13bc6df7f4daa5d4fb956bbd0f0ca953295086eec67a7ae7179c1b91e27640acbb9dec08bc8f71e2daed75f66bde0c5e0cbb7f7d63bebf057e4db13122f9c418665d91466616b90aceed5449a078ab002a23c43443cf1006aa533dc942216be3e26d51b096110137ea0ff36427eff6f71e1c5d7da242a1c080f8215d5c5793d2503f6ddbcf55c8f2648403e74958692f5a31c8de73c54167f5a9f6d1db0fefe6b37abd89d9ae40c9ab9cf385cffdfdd7e1ca0109f32c75d73319249ebf306d7dca07eb2821dd5d3b3feda0e2377e02c6417d564640ffdcac91d42eb0616dd55cc97863b06d8c567da675832de9f1495e0a5132d3c0a27bdb81bdc895c48c1ef9758cc87d8c6f5b79fddc6acf4102b0b4ed8736e2147c0aba30ff84e1688c950c789949d6ccf559eff8421e624caebbded4d1c309a03023df4960ab92b6278f2966ff07e9e2a9704f1b5d008fe7146967ff2384c95571142d816896a2cc021cd0023a557124f5989294631ca7ef4cb31e0b149de773537f7b84abeef5de5a7f4c8ad0059401a94e1a8df2b1066e346fa2f1ed499d24be63e464ce24f5f92712337cc76fd7a13a98d219584865a10a519ae2a52b3b33e3089f2d37a6bd3963594698d72aafe9b89363c409e5a15c441d0526a783ac00611b25f4fb455d988729dc0771bb779f0ab9fa5281f8740afc80b4943e5129d182ca2b4aef8f6cd658fd87ff928bf4924234406157652182b0720bd64a12a0d5c6403d119df610642677f01cc3b2b87f435c03a2b38028cd530129c22e99074715dd7e67118a86530498db4147711888f765bb5c79a25d2338f3c8a6abaebfb2dc1baf36509ed6d50afaee60cad17590b67fb7f2ed81d8a632b75c898a5290620ff4e54f9f126c420b2421c897f80a0e0c37163424dd7f8d828029f3d35d4376efe7442551f80993a4d4b328e646478670089d4dbaadfb22d7a459047d4dcf15291967d669f0b56c16f2b89e68a0af3be855f52eefe54dbe58f2fcfeb56633b4430b4fde872cb06e80cc929ace732283beeaf19c3b4b624017a12bb75f785f1310b2a1d6e8bc9c3804ed13f7ac62d1900f80b3a13bdd586ef3a56b98cfa81e271aba3945d3d5f7979e343424f396d7135216af01efa59498db904d2744d42e80ce006af00d098badab5f4d86975f67ac1bf6b7724fd26fce90b06a5ee2982675a40029ebbcb3188608cc2b336c6f0b22007369faf531bd1b0e7c398770533361115ac3a6443424f5444affd48f3fccb4e4e59924e4d6bf0ceb7828fe04f16ca39637c330ce08b359788c988c8ab1582e7b4cc7265ca9d4894d60bb21d2251bb569d9155956f830039b135d1bfc56e92cd36282955ed5a15e00b4659da8a6f0854c0e47ceaf5095dfd29476bebb66be8f2cab3ab79a386476cfe5066e4a8912018eb092c05e1fe935e22b5022b23aa4b3900c73ddec08c19caa88e3d865c0fb034ddc338b2f68e0cfcf8da0f7fce275803fc4216f1f03f1f4286019529b62f70001a1222650540ea64c0395866364d101e807acba769f533cccc7aa0df28022f0299818ce81bcd65667e96d0fe7113bd834cb089346612784ceabe21653c8c1902786f93a5b58b8d90c747cdd609abe15949c2a89dd0f288c4cc127de46d8eeb6c1bef80286d7e9c320a550279b159a8cb277cbfa1b6d739d2bee1e0b617a8524e2b419205f14111675d209cadb98e691b002c3271eddb6578a81735ed4780cb372a132c987db63bea3b730b86c0a961561d0de342e5f7cb4387c6e46ba6799e1928affea6111c880e1fc1c76be91867e1b4276eeb98a13bc6f5e8fc5fa53ee75c982287a20965f3144f9a60efcc19f8e1438fa56a1a92c8553c93c962e120543c3deff03835d8b6b6572e817862b8c9bf4cc9f80b89a556ddb81c31216f9d5e5a54ba59d3a0341100e3880bed2b32984debeb7818a508798d7b5b688cd4e49952651468ee8882ebd7f402ed64de39cf22a9c1ca7418820ad757ddb929eab9a44568548b3afb640142e64ec244747f4f4bbf18ef804358b2cb9221e0990ee3b5302a38a1904f464521c3acc810659dda643cf202783a2100f8ec967ec2ccb0b4117c957564c76caf459fa11e5adfb38114017ce20c7137c88a6bd4c4f4010a950ac75b4dde109af429dd27bf79ba24c0c43e400ff3ede0dff4c0d08f10dee85c4e700b6847bb67e162c2670aaa8154c0a07c283a0c9106eaa8a57147b28e68f95819829afb1ac2ec0c279dbd4be7134a0710c7124ef21ed70e9b7e54c6bb7cfa07e3bdae0f4c64c75146c0e56e31b42a5428c3393f47fd5e951ec788d0dd225817fd9ab66df287a7854e754dfeb8fe29e8099eea7ddd4ea8ffc2fd9b5c904966479c1bc796696b1474bc85db07612ef47fcf21002f86deb3a8ddf4644c6af1aa02ddbc2eb8b9cf368e7e2c5832c199b6d7c3f309aa846072fb2425ddd88c38602409c71124dcbc1a86ab4bdca389a70d9849b926390eea11fd91acc46eaab3c518b52cf98c319f505a1a9400b92af5f17204484587f2f0a118a13b7a34f7fbe849c0c881da75a2dd3db280ee21acda73eebdac84e2b8d7318e6941d30d76a5e15acaf4fd794d1232b52d66329451ef1cd38af079f5349fe1453574326b3d3c33386a3c82eb19fcd4a30b7e9322573b542c3a723e25c8e2da490af521640066256cb22b758e610cc4da5cc238f7f6227e801cf4de93d7004a0bcbd5efeb02020049307b9a3c767562af2ad74db9e0253ccf6f27edeb0e9c1e47c5ee1ede38f2e768a86954d7594d5f1f46120750d014a06151f2ba08ad470ace8fd80df35b267e3513b588cb9e5a76c7c2a23f6d17ec6dbe2122fcdc7909042be34dfd8ef3692172be1de83c6b77174a3a739828446c4e7a735b993286cf6641724f95d7ef639f60e57b705f0c670e21ad29df75b2313b2b06d6880891110507d483b63f04abd6295dee3638d3d44aec3163e100e1998a2673a93c56c5e98c79be5aa17c90416e2e3cb70cccc2be6b5ea91be7a515f49220ecef2e4b7de162955d4cd8b233732124bf0aa3f421cb72aaad9e99850ad52671c9c45b3a3854d9bdc52b5965e53d353bd84b6939aaa2379750f40fd4d51b67823c4f3c1316830ba338e64dac8609d65409ce32f7d06a2986c9dce3c2955f9c19e6702760b507f9d040e073d4d393e853af279941bb03151fc3c1c5b783012c46b717c3baaeb92b0d8d2fe14880a614528da69a541fef705282ed96582a9595a6f851af5e56ea99347773791220e4aa509f9ed1702321d3ec3e44773cfa9447a2b1d9219136e56a1a498aab3f5f053d53a4c1e6295873affb050003266b170a802c28d5f7060b12c79b3854bf14186142aa5a24df63b183d9dd8400ad0ca147f920f12991f91ddf0a1452bbc60978664fecf3b40c284b68fd2b9df0a167d8f8899ada65cd02f1415716c50e53477c3864e42ae348fd80452da74ad6557a8589af04d52fce42a6910185ac60c135ec6d152a4e6c92870d08cf4710a18bcfefe0732f58dc5572e7cf1f46d1cf209ffbaf6b384014bb6133678fe9f3571ff914b0f59d596c1e618a74b9afc2c053df7fab3e1c422f1dca08b3fbb716b68eeda461092d71d2525a99bf0b2ea118c72aaec34e112f48c08934af7d534dd3246ee8bf96f206dbfa55a566bebf20b9a49b6acc2e83737e3218ab3fe43eb4313037d4bd4419e6e83ebac96498774834eb87f1065f39a6b503ac0be2592d0e1b893c5f91fd0eaff84721fec8cec36abe3b871a37292ca0e0db8b413865a50526195d8b0e136df78467ed08036165630972f285c538116951a5278a6a1430aa1ac061f9b5b53e7b329e9e446e852891fce95068b40a2a014ac7817cd02146b708874297bad4f2b43f2f6471b27d588af7bc69cf5a15e0c3b056a9d75695f34942c8005c5e89274e02790c43bbb4fb9dcc5d2537220addd10991cfbbebfb1158ca29530d6fdf0128a2acecb2b4aa65748e915ea75b50ec652340bf25118538e6b1ab558e5b6c76e6d94aeaef7230183d13bfe0e7c1650306e6379c749863436f6e758075327e442c9bdce6fd9e5b1253754817147f54be746925d956ffbdaa6cabe708081175c70e3f35c5ff1295cd44148d8b43c94cdce0a8486a133b559008f7bb3b5069a9daf5488b8e4ecbff43bd4a2ae9021c6577427afcf42d2990acfe97ea8d15711b9a9e7f08c45a543d28887b0bac49cd1d396eff7b98d0349b2bb7e9d309e915e9244e6ad36870e0e3d244d7e5a47c4960244248702b1cdda170651a9b1800cc9e06c8799ecd7545aeaec8f7a4f61644373e8ff98a670b4ef148311353bf220466077ac391f32e2b337c3e08dd3c5536730b2f5a15cf48517596db073af82add7232ed83c371eef65cae73f0c844aa30319aa79e68c699efc4da59893d0de5a362a562e6c8866b488562fbf89a465756385cb2a26dd08e41421e46b3179a3cdfc3655f2e27f860b04b6cd9f892c9c5da664ae8550801193994a34d0f56f3f645dcd16bdd8faae9f6a126fff93675964e6e00976d1b0300fb5e976e30c3ca600ec7d8a7d1af19231ed1bc464ec73708c6456947c0d383ef4ee3d41db187f5b0e54969d55c50b0a4759ab9b7a3862f1ac522f7e6452b9027e2a8bb25f4994f495aece97a8be3e6faa3276b5cc71a7a885f28f3018eb836cc52aef94c04746fbbe7c39b13acc64cb8cebc9b4628fe91bbab72ba976692345fcb4c151accee95d0f9316da4a8a59f05c637437bbcde61fde61a8d542bbfc5415c9cdb3d79d9108714eee9d2307d6a8dcd2bec02dc9ed964e26c09c928da765efa4dba8e0516ca93e7610db59fa5cb2d6397106c866dd4a6d80009c0449edd27d75621f7d438d75921c0d2fd760da02ebf539fc2c57bf587b04e6cb3836a5414da4279fb8a4ce135f65de75f8f9fc55d321e58a63370e8a6841632a21f16f117544bc5627771e88a6553ff2d60fad7ed414c30139ffe3ae88a51f895af5be448a407a2640d17a9c557935b33e6e795f268974b05dbc80a44d7116847bebdd3eb37d67c8ae4158f8015ba2c1a7f6acd5bf296813ffc689670e43b4eb39b37e2af7c8ff865d260a7a01ac9911742f4f257d146a244c8ee9faf4f48bcc7799fdf2a9e1deac2c726b6b121f00be728c59d171f44cd4a8da2c5139b43420e0d0e3ae32a4ac25d9645c8f2894cff8198bdf4f2102cb892ab338fd72b268bb5e2338c79bd837a93c23e1b2aff029b4a40940dda45121ce26537f5f2944fa6a036cc07e72193824a90cbe676535797f3d2fcdadffc642b6c61d02ab832337abe14e05e50c521144359e032513b9497e17c28edb36e5761db7b69716ce05aa2b2819913b661eafcadd566213394797bc009d88a4ea41b89667d5c91bbf26278ecdccf21c17d4903403d088c9c880ffb16dad9a22df8d33dba8a16218b2f2b04f053b9f206a9003955b0886711b9d272ce90c163a8b051750fe829610fef53e2104de6a4b98b12b70b698236e4698d96c197c6699015cd2b8220402c59073deae2d4d680aefa3ccfefe185cd8f3a7bf1d70467cd71b93e7ad0ca2ea658972ff60db7cd1309ee7cc47274eabba5714cc093e866eeabbaf3aa9a3c6e87a7e33355740dcb458246eb3f0cbe010fe44c740df2ae432dae7ad5886b1b8cc1c47e1f4c46912d0f1b1e21023201c384ef4a0d34d65ed48ea5924bd6b4138f5382ea1dd00ee245f598d5ebfd8f7e0ac5b73e71072840927b789c9346b678e189c50430b494e771d62551eff0fc47267afb65af9ae9012a236d5bc79051c3e0edd3722aac5f3b9f01e296761781854e11476a935137699884e09c97adf261ccd53e12064a44ea411c71af060093df2bc8eb632bb34fb4eb32739badc6e41440f286392e21e66b151a479d306401d4ec8c764355e18f683559697b929af349d730f21356f26bed380f2226574bb61cce499c9c41f55cd4d849af2d9cc9d7e2fec5bc7d70143ff1217f296c5393fdbde5405530b08503d2b18c815bbbcb029a95d94698390fb84f7264bf919b6c3285e44de5ab3852ffcee39b839e5dbd97eac816bb161045d40acbf82f7a7b487483ea0bec214513ba69b4b8e5f48d59d77dd84208b958adb3195d4f83aa0e9e74b201157d2d8d4e7350a018023e08012d9f1f6f0ce75d06e037e312bb0ac642dd4e2d3c64bb68c2f2a3a29ace74cb355dbd0a296b353689f209a20fb64d373354e68fa756df538df8d345b0e5a9c3eca9b41ea8f33047332fd357a65c2a594a6388a353c6038d75821900c6e89f947e1f3585d3f6780f994507d828b42b6adfabcd20f01b746c36c539445c8d0910a43e289522d110004accc8db0f097fb2f456e6f0a8ee2a47f769b184b7e90e5ae4687f76b4bae65af8203f34765b5acbbc183af818ee5cfd9a08f07d8c6075c0ba259708e5a60672dfe9037f15d3030b918bd810d99210d43ae797a4fc03bbd99bfb76f657414e676a02ce955d86f6edbff60b0070988bf3c88259f2fac99dc78c236ccea757520155acb60a9a09117209108b1eb1987f9a9e688bd8baa19c709579c7fd82d2923de76fe2665eb5a6d0b26a9fb2595569ae5244fb254b003a7c49132b0ba1deed3be4b86d321460a3d94a8366818a5fcb04b786ea56e7400a9233ba3846e4b40b59d849e30e97089eefd943ccd1767b8eb4d2aeb6fd265757cec1d4d48026877e61bcba7398c71ba45ac6ba02304967dc1dc4b1db978978452e62638c9ce65713039c12f1424b536cf5d4cc71e0eb9351e7ca80386208f1b59674ec7d66b0ed9d71cd25aa11d6ee706bbbd78bfeba5b936dcc2aa2b8335fac670536fa470e1c6a22611048070536b7f3cadb544b604b2a1989362d583d04ce4e06b3600b1903603b8c7c91ba132cbff9418f7f68bc4ceb31215740104eb480c2526f65e24ceccb4d1baf71bebf6e0f2ef5c2ebae6ec90950e70923c453d986f8bcbcfd0f15843720ac95d30dfc736a86b3d572a977d987fba071cf1738ab1e4f10535c3a79709610144284741a6bbbf9fb5b96e5f8292c1565695c8678b9ec9ed5c39d58caace20f9b5f361b06ec200ea9fc9623287e85c78ee8fe9346eb9f9f71720735c1f0f74c55ea2114e268a915f2bba294b7c1b21ca94cee0296b03387a2022bb413fedb7004da17d93c76a62baebb73c7c8a57ab40289bb2e5a4213c43f763b31556f4726b201c22bad51a06190bc3a9aad019ff436d8a8995612898ab07ac57349bbda3cf94b17f16f81ef9d1ed05ebfd7b1acd6a60acafb78bd6f7c7a89092e5879bc2af96a12b0d1801392bf1e45b29d4c7f67307219f47c2f8d64ce8062a55224c60a993801fbfc2a72416fcd46fb3e45dca5102c4ae0414284b435fd838d4fa47e35a45bbfb1ca72caf67c74ba2a538b14d61f30e9cd90b17441647c7f9317c7b96e7b0501765ef44c6978e434d479b046b1fd4ba6c072f2fe95f054813c18485b1168b3288e2bfb035c43d6bd2b17d53560553132d3e52d1dd30ddaa87913ee8b19d6e048d56725e9c4e07c5996b16af20274bd2fd3dd25623a02c1869b5ab50c58995cf18a688ecba198a23bbcb5eb874474b3ad1e19f24ec2f0f227f570f0d66ec2a2591f36eea633288e489c01e78072189516623934864e8b090f8b20a85c685db66ae0beb74a4361a21994d3249ccb1c8a850d1a37edbcb3e28073bdcdd512e93a3c49ddb5d4f82c94ac5bef1b103c68a08e81c05eb5ff7040546cf93e7c0828ce9faaf554b2a783ecaf6f83efca9a77155891f331b3a749717baf0601586a307480ba32710a884cfda66c9b5ff136fce44859e9136bbb16cc7efb19cedb1cc51bfe2d5e5fa7d1d3fab47ecb3126692c0833e3b3543abbea0d275f4f0f094c8aed973c562cd70572ac187236bc652d98cefa2d78d6e1a70d2920f248622369efe6bd26571c8cdd9d7d9c223ed4052603dd2ac233362af72ed30f93363cc55929993b87e6a2f36378a989db1640b34c95c37145bd32b3f95c2e13a42c9a5072e1f493e7141f44738580eac282a87da4fc57bcb2966eae6d630112453000cd0156a26301ad7d75652c61215799f1033eedc75f1902d91c64b05b2d6c60c2c753ff94945fc2507a09e0b62cf4b75747924f5905f1858c2ae2e83529da5cf99b0d3870bb51a57ba304bba0f2a9ea147191059198a50ad34ce9f0c729d6aa7c8e632506184185dc9439426bbd50d69c61bec665e319d5bfc3cf45435794f31c432b4c0ab5660061ab3f4b10090f0925b1ab85597ec7679a17a7faaccb8cfc64ad343218738569facab4717b32e4eccabdf4553340794a535cc1becce6688596e51f8cfb9f2ee1a375c8b33ab4ddf5078a3738fed797c596761426fca63519ff2a2e8b8a77bb22bd1094a3856edf9bea105659becd87568c1028c984e5aae64b9b4e79a4aa2802a74f98299d13ab1dcc3bbeca1039f81bd91b269a307f8b477f0f015c6880c4f2ecda0866f9b80b2f52b659b0c0e936d945160ad364b8aa35e2b61e8764497c87b29bb300f9c9a941665f3e49d9608487f113516a56fc33603e87070367f87b62e128d09194f4b34a4d253d00ac512353af16ef55d51c71fa35a1535fe24168d88060506150fd0de13608a7e3f68f4ff8a11ba924a7c5cfe34e840db94ba5925be0cc06ed4e5e7f02836f23d34cd64c0c8ee4b845ef69adb0a1fe42398e7e899db795ad13b1527bbdecca9cacba434ea15a78d1b3d98983aa68435311cfd318d8f668ea91abd78d8ea76c4959fb92548a472ebb7fcbc70d8e907971cb2a1081900e9843aca755910f25a41b1c613d1dce3136336d04ac959aeb7f2cbd4a64f9503ce3b4efb0e35bb80c2fc11d47a7e4c6ee4a73b95cb508b5a26d2a553da7aefbc16fbe0d12e617aac2dc1dd00fea2f0f8e6fa737b5767f29dadd6bb0cc9e339788a532f02738106b040811b7d20b467be46221e9d4ce0830c5d53f55162fd000655f65b92bc33b5a8040b2c78a89ab97c8e024f1101ce1c9e6a550d79e17c49f396b56aa160744753146b9a2e1eb9bff6572fb5c6b93e7c3d11b00affeaa9503f8b8fc0200c857623769b5150b108bece56eaf0ada694feff94f1bd02a12e8c920d87134e2e16ef58342d428a57ffd24783a2e50c46e259960595769ca3036ada3973df6474a122d8282fad4a4fda0dc255026f1207ea2a2f12462ae90b02dd08eb95566c258bbbdb4bec8f82c276864faf3026b2f531a5eaf8805f6b79602e44089f50a0df13d7c5ffb8ae584587c2fc6944a30ad768e61c7ee22937b51f54400e8a3dc85c3bdf1e923f75a0c0c6d04affed4dcd24ca4f21ce50184f69b55825793129f5f705bc039f82268aea3acc3041bf63acff17ed9336c6e395e436f83113ce7722519d2a4cf0347f655613994faa67ffe141771f424d43e1931fe76bae442ada761dca23a9c1aa45c7a019295a0a768565f1eac42a6254885d03f74e62cd0528120f165d5504705791f224eac00b35f3e5edb330702754b45bcc00a9fb3f6095d8b1388ad65c1f27478004e4f234ae5c453f185f358764cf34e15c9984808d7e79519614a3925b072b889a0d004b4503e9725e5611bde47c02958d45801171081629f434cafc03775c197039e494c38eb808f508753985914745a109171e3219139aa857ba1fa3613a9c628741e7079663e6ebe0e8a9c6c0499c0205d3c19167dcb3818b8633939beea6b6606f33075855591a14bac99049d01610068e795febe11955b7f6e4f146cc81477d9dfb7c239d3af2ae4e4973dd8723a56111cb502a5e28357e54f762fc64c2af65a5b33a3f084da92f82fca34901654467bbd5457aaaaa0fa0e64fb071c810c13db10b52b581b9e029610666482470bef9aafd7139deabdd1b751d2d0387110d06fbc2759c9beea10d8ae882b9e56b9fc85aa8906c287f7fdcf9bbe3eac9c09a92a48ae76a057a63b3fd7bf2871c185d3226a7984c1cd3a87afc66da1f59fcc2ebc6875013793c0d1cdd8d563c52f860efd586a57ba6236ba9540fd6868c6889a40926237dc9b1e21f73160352619c23e6aeaea43a98a3a59d1cf26f3d028ff8c0d13a88cfb5604da8bd93a68873a2000c59ed449d3ccdc95590e34fcdf163f88c7687c19639587e9c1def23c7c9292a5dc84afedabf28531cfccf177008d3faaa20adc6adcc9423d2f4ccc45a29dd065c96e4993b91c5faac2755f1d9afa865f797ad86740380ee16771505eba65abe403b86da437953270ffd78783e8322309c910d7a7269bc5fa4ef36953a527cf8ad2aa02fe81cf4ce081af1a900ac9afa2825d7793e8886c607b692a70d7b581473498571a9940d2b8db64edfcfede3f747f4199bfe9cec6ef626cc816ea44c6c0c408366039b7d0e053cb737b17fe6b06177da02ffb9fc9411d9e181e38718006b4e0c6fe30d18ecf7cc9e3fd029ec6804d6af00aebe1a0b36c78d36f2f28202b0240b5d3e7f35f390dada69b655b7109290baf74ebd6f42a6fbe5a53c01558fc67194e7b87a49b4da85b0a88eaf443d7d0994059392ae6cf2d8dd86d389c6049cdcc501f6cf227c7b3a84358fc24b186df0e4f1694c1cbbb22c2090b0f3cfee8695d1189e6f874ba9b7f93fd44bc31aa2d96559c608abb1b9474041acadcf2c5e3d3424b8092eb50a3316be891c0c03bc5d5ecd52e20d135137157654cd91340adaf00359e79ae2c9ee764da315e9b1b208a29b6c7bc80650e4cef0c7d46f243d8b598f35bf8c778a80887ba15f74b2dd9cad954626ccd539e9c6a0e376023132ba381d174fe689320863ff57d18995855d3388421ed15f74869ba053a19929a284be269c5be728899144d3ed29085e920d880a406438db5866910546e608c93151f7331881a280298ddb401a153b57da286bcec6646e0fdc5a202627ea1d3aea9884492c57d86e266237604cdcc8a4f74dc8f8627588caaadb79a14e66551e1ef254804f2902ae937f64c01ad9ee4ea0e14a68aede1ea548c420e3fc97b78d417b69deda5c08bdb9244aacd4c13c1a6adbdabd0eba3632259f7311f4336178a3607292169ce2181e4a7becff5f4a5bd06dc8e4ade6f10efb74a125a0e8e15eda5fdbe0660f3d037104301f8eecfda418a6ff4a4fce325b925a4084e165f556a8a26a68a54a6c3b9f2cf5cbeca9c3eb2d454f3a2a850b6897d6e495392613a5b14225b30bfbcd3d012f76286dfe5512d55ab4560f349edb5de247a2b766ee1864f1cc1182b24c476ec11f21125ae5851ed41c97b5a1d699cc50b184080834472565e56158cb76e060683a39f40750082ead1938fc3be15edd9034c43abdd481fca6aea3c0f7b026461bec80ed572bd4138073af629e3000457afd44e3ad49ee832b677677cace98b31f7ac34b759796041581870388e71086555c705551c1f7a61bdbf513dbe253273be8fb528f01076366d0a64a5e006c8cd21332db5f9cff4a077e9cb1b58543df06b232d0b9c4e2aa90bee397562489d25fd2322ebf08579a279c9c9bfc3b79590f07f341a9bdbf5b8d89f3b0d010a8dcd5f04252a041a4fa36ea5b606111ea0c7dc13b0b3669790116adb46db3fc991ac5dc06050097604214e111db7ff54e2139d0243ff76890bc99a1fa202064ef7d8a72b134c33664692bc0e650a8711061700742707761dc9db337860a8c10031fd8dad565be4b439f645173afb7399586ef4a1b7a1e96b42603c83957e97fa1874739048d2199a409449d7eaf30ff3ac6f78d1a8773083d25de3445c89c4955718e3ad4183d281ca2e886ee7c4daf384b38706749b5e44a91fade100c2554a00def414005fa1e05038cf0fc513716e7d7062340774a7781efcb56e00bf155b235597e346be36449a0de148b15ef982ac1a1940addd230115fbae934b5f91f07d1ca954600edec2da12e23f986d834c44a94bcb9c7a5997b6d17144d028b9680bb96e2a1cdaca8552e5bc445b7028c3d49aa98ce05398a5d73a89e66ffae01d28d891e668275b7eef92a2e148e887b42d4bd8ae77763641fa88b6a061c5f56c2c8d53f909bd1d9d19591e1c7e2800025d61e8fa823dd3ada82446bd0937c1d1adf61bd3141aec5697c48dbd7b6bf8f8a40d058ebf49d12341eb9ced32f92b36424195ec01d3bc3dce6277905ba34191e3d79d5344c2c5ba42a030c96b90e3e8fd67364742c35257683377120519c5535cbf95ecd8e5066b1325f4ae768bc9efd18987762c485658d772e749e65610ec86248f17010ced9da6a4d5b42a792f212bb027d5402c98d4135e8f86d46142fb5435f8a807f074799b01a05ae78b33a48e3780a455701843a18b24fa49d8bc51c05009d32f7fc1742fe7bdd9efc575a35d6ab4b05c572922382b3ec079eae0852aceac4d70aa0bad05f581aebb227e5e28583fea5dde55498c516c16a322dc26e1c328a0f19a4e7f7a2d685e6e49490e86a695c823ce173ccacdf55fc3adcedb8cd5537907f19cef5e0eb22d876cceda7004bf7907b2a9def1c46a9a6af2279f0de3783fb5a0d056cdcfd2e862538a990f8c1b3508fd9ce27be28aba420568bc02e56cd96002cd8b4b9a4d87968a5ef35b41314b34bc413a791adff98eca76333eee525bd82790283515ee42a5bc1d4f3b1237370dcef869c0e0da6329481345d8af8ecb7d15df29dd7cc858d4ecc33fb653cbb61d17bbb2dc2f22353182f1a3fbadb8fb3e23d0300d1281495638f8839d58ff5433789ce81da4daf24b87a6e99754d20728f05bb5d608b3676ed6d8b40d6edaed4bfca441aa1f251d4540560e645fcb3db988cd3a76bf38c0618969f5422f6d9f5c151e97ebe3ebd50860b1bc8eaf61b6c08e6e9b053931b2d6a3f74dc5e14fc05dbe1ff5b3913f5578872128a0fcb12b728b30d48838ed882ea31d6a1420c0422990114e44da9301fcaf2f01bc9ca4dc4c727934e9c20516998b39fc9089a1450795796ebdc1b481e04fb4f8bdffecbc7bc6f60d977cc2e52dc43f8eb79293853f6ae383cba3cc9759a067ea31f0d4c8926218b26e2eb39882c1c76115e0821832f7071dec0212b01b7716ebbcc5ce365f364d1027c02cd607d14d13114ea3bb4b77860bc22a3920b65327fc022ce0da859f8d34ec47d1dc4c017e1737f085435124f12c491cdc76d94d5c7167a781f8d7210dbd119ccf7f729963b74afa4cf20931e54c76d9b8cc1671ecca52b2847d3476b7e668d20a2cb1f96682773a026f6b0a642add13217250183cd05f555f10ae35e0f6ba24145ec17bfe1c89e5c5fe338ad56a7ef2abcb67f964ecd75db18baefea494ffaf81c99f4fe93d1b3dcb3e35d57a7d4747880f0ab1639ce62add46fab6da50a3a2afd505fb168fce6e52326032df0531d4892d72ec11e1837b1b1f069037ac6ace22ab22c1247c5e126f52350ed046d9a39a68868ec0e75a09dcf7b2dc7567a52cd6da9d2124c0fa5312914f083c24a0fa712c825cd13a52d75a2cb41f552357fac6b5572a6e9e1d15b2e33787bd31a23cd78c2ca106f0cd536e58a335cd74cbf84dcfa456b97c0f15b7f510d54f84af4132e2265c9bf1064b6591d7782f8527fde7d060ca843665d39460083650db81710821332049b4eacac0e94145c16daddf1517c7dd643d8a5a52a13ed6a6e237fa61d51a55822ca257beb455349b49c8f335de1a784b048ed4501501f0a5af9dc008644d97349a560dcc330698e5bd4066e75ba8af10d2a7e4d8886685c0e7f98c6173f5422093fd0222e413bc5addd0a4705b7813d145d516285804274907860098c648491e72a9a6bd65bfb8e70c5dcb7c27538adc19aaad072d205a3de99f1a1d3fdbe8e8d908549e6a269bc1b0a9b56084215164cb0842efec02a58321fce233edad9bfff6bfdd2d69b76a6e252578b5685062d928a755f9a04164c697b8d079808a3f827f0064a12e22ade5a44e0d167e07b4853432e25a085876b92b05398f88e0e52bf8a193b80771ed35778cd1217a14d6888bd584eb68557c384cb3463b9ec1e22e64a843c30fdaa7a710d8b8b9ebadd240d4021c04b56378a681c63b2b25945a8069af3c9a8b34f214eaa18218111b8130f92085e1dd2d9b61ff991d9e0575d3a7e90f34ca1d5ab39473cba80562dde60735bfb99e650ff0ec18505956b25fbf054661ba6d85e6e5998c5667f2c4daf02bbf1abe15df30b32edefff12af7c39b37b0a7436c7fdceaccdf03765bb29d49ed302ea531ce675823d1e35a1dd5b02571200ab6b51a5394c6614dfbc9ddd2b5186e0eeb783f28fe1c7f309583c2fc7a1192b20b56ca2cd8e571d0ea092afea95d4746cd0717353cec535f4185af3b4e697d7d5d793267fbaa47d773f946cb772383c273008f279ea5f02bc0e985b81f23430bff2466666a2f9e24ed9fb3c53a7ee8683eaac914db618e626801a9db803706f11c11b7848a88ee7846b1e1dbb51c17806fb91f3b6b33867780c36fd02b561d208756bcea3e0361ed270535b14212ccaee32eea0966983a4ee4484be53d566a1f18e2c45f0a00cbea5a6a79fec8d50435e2e16272205dabf77be22b026b4b9187cf25615d7081398a4820231ca47e7393e8e2016503ef51d8b477780ee81d48df8cc7d0cf7b3528836181fe47eb2b7faf26a8915056bd91b4d420f519dd82868c0e84647b578013ebaf3fd213c968592481170467e89744a90565e1ccf3065d4654900668927d73da815cc7793837d761988bab3d927ed37902bd806b44cb0388437761c855b756d91f4d7b77423c34bfe9e17352e916b05e0ea49b4ec969c8ac300594c6173b25386e701e4c255937ab01878e41304a91aa9721031beed5898329aff8e1682861e831983138a5a82b4a6e66bd3bb27b170e0c5bc686e83ead126b8a4fdebc030f8e8e80a9fff17f9486bb50c04fc9e5fedac4a56b64b35b24f9ec199139cb26133c290c8fb957e04923ba4dc3232fc4eed6ca81f843603873879c89cf153b2455d19b922c0672300a7359b0e75f07e8fc84f0ca9c08e0d7d7bd3ea8384238ffb83b59aa50ba2c287c16b3332e5edf98fd1d0de6633031201542e2ef70ea880da0f2313b9ddf0cb24a833d9a876944d79965b1d3f5e61b646640b5f07a55ef13eeb8897fa552b7f98f1b9f454c01fc913dc05f748e471bbd6ed1a701b68f79559757c1e059769a4726c37be8271262bbde515002d3fdae9eaa47bdb5d9ce8610f8ec5f204eeb77b0e29fb9e83662be07906a41d9723700ba1a5161ea2ca190c66d25eb34f5c59331ac1113a4fb4ded128bfde96123b11b70fe290c090c8dc681170b39a77d2e4613b404e68746126aa1965ff74f2a06f8fe2f142e054cfd3e09e8c19bd1b4255aac4b966fc76a39845f79576303ff050472419b3b55b318471e579e180bafd1a3fe1d31a0d48e6cbdd57225ecde4a2f972ce81bfe51e912bd112529fab67ec20ff32bcc064aaf660271e35b35fb0458d85cd75332cceb4d5083fd3fc9b2b7776a4f44c1a18597031f780ab99fccbde94bdf5f0aaec6b5d6030d329e66fc8c04a2332c7f3424cc126a0a3a6a94055867d940f9c4667a53a30d20d0528d72653183cdeb5a7acbc65622d4cd4cdf084365e94e3a15a1eed31f86c9eda6c2849912215bbc65e1129d7246cc93f8b26cd61cfa22627e1c0eed71d233e7d265f7e48554fc138d2e19a244d58a47ad3013aaefb5ce8451435c0721e1c61d964821cb8c99af728dce32b12e421fa75272a58564363ab0203f290cae549feb463757118a4f3f5c9378c86f6f04c4dbe1bcb87fda34c31407c427972cd23bae7ad75944d0fc2d05af61833e1116c45029720c4453a8c2348f9c8311b658dcb53bc1f5f940afdb5beecb685614dc0bb0f708a6ec88ebee47de9fb7a73cc546fe0296becfca7019ebc51575d26baacbfc7b815dc2af38b4d36270bed314baa90ad910f776ec41032a0d35e2c9395c219cae17d01bcce3cdef73c3e839cc6722582658baf85ce60702038a87645e6aef2fe0484ea15faafb3c8fa5f1f06adad8efc620343e2f80349b6109f81471cf2ad55a99d57518843216a68f3ee92eb5a835da4b005b6bc721cc3e9f05ed685b5da7f020b085ffa56016d5948ac4e5030d43dcd416421eb68f06322307fa44d8368a5dd9c15bea4b5b139d28982c045c4ab06d846265948149e40436b04c6078e2e6ad81ae617659dbe239e60854301f683ba8c6ef3c0e1d97397dab989649923ef4caa3d40d46ce7ac0fed72abfbe7903c8c7b21842c3afd036938e20ea260162f988ac641f03c2ed28b3efe2084402d003d5ef0f37e46129ef3f0e15300626281876c98999cd391ca5b21478f1f53ef8d85d93b319c597308ed235a21f712766dc7822a39bfca61951f455b5deb4282ea45d89bea797fd843a1481071a2fbef6dcde4f3acb4b9c65a03d0f66d298e56a86b66d9e06de9dac2b7cedd8d013d390d62c12da4913b344d538907563ad51cb9f3704a0a3ec118ede381d026b1fc3f3589e3b3b219eb376713c003aed56119450e6bb2aed6b203522c7c939ba173865c1ed8dec8496267febf2c3e61c661b94cbae6e12c57acc75690fdcbcb9591396ef163e28651cc5476e04235308444bb8284dce80a3fec9f2bc0faa1094142430490bcdf120ff3ae59ef3329d6c2ba312b89aaf1ba569c9d787fbd49d486794d0feea6aa46da538525cdc81e75dec56c8604f48908419015fd42eb4530770ba4e4fe044027aaf25c260cb82ddf2ab7014adb1c8bbce14e770870554378f2132a4bfe27564d2e4b56c8035093fc28444299b58281166a6263aef83a0af1533143174be5759db8b94a8c814bcd29376ee8a3cb04082de364059f3b1cf91c263f99f52c2f306826a36a97223e8b157684f78bbaa1fef3c4f0767c2207dc2640fd6b1a763d138c156baddd035b3b8fd311f0d76d42b9f5f2b2e17410efc4f05671c3a9540e175071d166613606f60a30691f8d83385107c3d2b7dcae6258fee5f746e11a9aefbba80a0ce092350895bb86caf9ff2dc43d506c46cb4ef636657494cd44b0b14f8622c1877d93a83bdf1ed0463a7da8e761f8f935616e53bf536261dac22ccfce1b66fb1e2c7413deb86602cc0a094801775fe34e9f108ec2eeb392c31190c695c9a0ad99335384ca0ae828415c0e16fa93015fc46d8c38aaf582bce9df7ead9424511396c0907995441ca2580b1785414f78b706b7db72b750d2f9d4dc67fcd10da0642e4536da7b146a8f46c4a02aea3b4206fc90267e0844d65442dd68e927aaca44bad56ee4c2c784baac6d6cd46b0a440e565c8d0f52a83549fdec7541954e713c45efb51d6647954a3b87004501b1d4146bb6c8d3ca9096b8f1780686b3b92eeda55b6e2c175f28a48b0826331155d250a2a765f7bc1cb636bac225037827f82a83390c55a577871b3063b3476d85eff1223701cfe20eb108899b1ef155a4d3ec7c1195dd60a8133843afba93d4fa1d9d6da6cc85fd03a49de8be0ab6d684898cff7e08f491fb8925f1533de3921b4225e03ce45ade0cf2d0f7804e224dda80a30cc9cd750d56f36ceb1f6946b5fdbf4405f1cab225cfd185d478a5e3959dc5908919127a42cb06600747fe6488d138feb541694f935f31e83ff277f1c828248b1ec7ae130a575c27b4876e0612fac2bb7dd71b0e9436169317fdc17168952e8ce88b2956a3deda37ea417c30ae51a73a378e34404fb1637c6b211ac5ce7cf5b7a5be4e0d425b33b60a1f3e0cb1be091dc5450a647f4ae4e79d0168631acd2c30047b488bcd0f6ac9e99653139bdba0e7a043798ccd39a0ec8248ab59e03bd3d7b3bb0841f81810efd6c6c1fb215aef25168a5b5fc54b00909bbe24d58c134f44b27463c0f4a1a42644f39f35bdf621dbab46dcf043d6310fd4838ce6376b3fbe5d992bf210d884903f73061ecc21dfbb86346a58e378842fc85d0ff78a2fa1fffb878a4f985aa2b5f91d1e5244c989da2b51ba7b815a43a4b297ed84768e8670cce5f05c0abb798c631a58bbf7f353eccbf6dab88388329f9fa8eee8790392589ca3446fb82057132f1a355e9eba8ed8fb832c27fe31c61608cf9d2fe9bf851af9f247b501ab8f94cedc1ddfc1a2f7b2d42a5e1549c33009332f0b1330da165acabd7b011a418a4a51116d67f6b7d3b7dea5de676f3501357805cbdf81cc0ce8fb78c503fabb5f41ab5f32a6ad1f04abb33a8f4f3c0085ec881c64250d58269e6a3e728e773aed01ee6ec03f323b171f88115244e87fc35847a3723f83a920b957867c0ba751bfcb8e5a424e40a9eed36475fbc11df4e423de4c24c63645108220a0189bb0474aac733adbcc956f4cb25d7e2736bee526a06a7914fc84a7a840a71c8774169cbe616e5e5e161237264b4538c2e78d40a45bf0e3526ccd8a1fc9ed0db5b902abca64a62e57dedf70141114ada40fc09ba588fc41692fc99f3e3de8d9fbbcd33c46adfd67ac492aef6d7c0f6fbe6f9146543e7a432a8eb2b8e8658722fdc1c26ca65ca9e44b226a4e7131be3a85820dfec25f4ea50b1427cfed5978c83ae455c359d41e3c1ce204896fb1f4a3d1a5457440cade7d45ad740467312f6913cb83b7f0c60c43d679a877ee7d3a8099658f7ce1bd3e44f27c25662490f664e25722bfc32953c991f2cd06e726c1a726934fab933d6b45df670e43b9937a9dced2f3526080b68a78e4e3def5f6347ca3fce8bb6096f0fd54c7f77ca0c9bf397447d9f8a542897fe67bfd608ad6a75d296c6172d088769d21c92100bc586b792c05df5b3f03611a8319122b575f6f809d34d90db6c9e8069018f624ef423af4bbd0b4a821706d7f9c11eacf112c276b3853a0ebd06134ad56b93c2854d876ff47255f65818f1b55d883f5a79cf63b450c1425e916c07af860b66e77fc8ca388855f0ab0cfa9859df5ef88ea1c9849d8d568a872e0378f2e236c55c8a3977da2ab01846d10c2429a951dc5a62b9d29404fe72191c52a8e812601c5ffdc8ca05ce15a9e866b0ca981577221a56c75a069575835f421c60fcdb033af3b649e1eaf415dfc3d47ecb4911842a6d2d9b7de5c16e08e2a33cc706021326ebaaabf53f8211698674f2c25fbbc10186ad0130f4f1334e66af017d4e1d1200d05396db060c3d783a446ec5c5b1928998b61a4d998d733c5fdd220daebaa316faf3735c37e5cae05a11a60a28ee8ad8a4039465d564f1d331f447751367be16ca00d64662f528f139a4c3fe0d925a095c7c965300e6066f10db446b2e7491cc5b11dce765eb3212ebff637ca288e840c501fb3833283c2c04811da519a10eab2e3e8a65e844f79abbb9ebfa1e0442c3ea2c5496d141a39ce61c51b8d1f4b71a7126f93fdfd1778fd203209657ec185fda9e86a40c7f6ec728c158d07ea18976b6546dd16ff08b1fcc1ff3d21458c9b943984912c35eb82bb266025ba257a8e69ac202ecbedb9d5d91428fee28e0bb3b39cee599fca6fbc3bd2332a942dae052a03cc5e2e6bab041418a48ae4619a98eaea055b6c981ec06065f41d52d58f39a72f9b339b85c4ef0484eae9c65fe0ed8dd8b7cca8e26f334d82816e2830fc96c514fabdf0248fb5c8b791cef0f14469e78cfabee14c2f05e516b6bf54664af121e4865cc5236d7946b99f4d9a2d8b69c62f773976e326e1e42f35ce2c50e8e684234b4b8c77cd8aef8332872a9498de7777d7525d894f147739c6adf20c2b521baad37a798d4708396ebb03e5ea879e55988b1231bae72ee16754209496e303d4c400a49e86c6a43f7d0cdae48fa1d5e138d3ad6ae2eaafb5e68460aaa9da24746b89755f38f372c62823316deccd8e1ef218450b001189633646395ee12f1ed87c5b573aa4269692ff98dcc3b96232ff7b3e22da1847bd6aedf2c1202025715d2c48f4df6fdb2e5dbad90b81f6de5777759cdeccc54a0a5fcf41a794861855aea7ceb744edd6bb8d2f2eaf37480e5a9a1a51cbdf8092123221f2451dbbfe98f5453e492e7d8475474bcc751bc3f8795a2096aa20b0bf37827d7468801c7d68b2897fe1177a985617692dd9c5b067cdd6a01cc6cbb34f0c29e4a3ee491543f3c90b5c9620205a0e7e71a3d267496180c55c07bf038d446ea366e4d11c60e96e96ae6befb8621cdaf8072f757d2224057c93c5dde554d47bd85f02a594401fc8f813ff03f5d3b299c5942aba2a2b7e88414d9980a0cfbd196a80063e90f8cd92c54a1c5ddcb7efa07e1c3e1828c676fe0ef95734729e90fd707a24b47d05a1df4e4e9b898b4129fd71984fb695cc83560074d39a82c6f6e94cc6a1b5ada8d0c2e89f5da9bf4fe7cbec617c14428735f26ca50a1e8c13b0c64755e6c6ab33c9688b55a2a6107101135c6ff43f4b2ba3416aeadcd790ee06a36b5546dfe4a49d504bec5f638a42ac826facd6860d68e24f391990b4c3685585fc1352e85454ad4789e8a05e046e117f726cdbf38b7b5750096bc887ef4aecfda576b2e9a7abf4c553c2e96dd770bac124eee9b94ec7665a799e3878c6d9a826172a15479bdfd6e000a99acfaf4960a6873ded072af9a735fe24e19aeaa6fc89a107e4d7f79f0be19e7763cbcb10d1f3e8f2b218b33d3dbba8e54f071cb83c81fd8b51642b787278af9160b244e188cddc6e79fee25a77d9c6842848f2f20d31ba3322ba7a6fa85f0c4b9b89425330b2362df0e5767e9f5751ab59c8893d1275fd23815e537bbe1c110fdf12dddb5a3152053ca9b5efca2673b23bafa8d46f65a3afb075afb14bd2f9175c3ee3bed5c203d1cdc5618ecd170200b616eb869695108f44431570bae1b261c6045f12ad07b1ab5615042990cd20aa81df15a056cfc0ba530e0dc97d3d6c1089d04ecb552bf97adb90470eb0618fb08bcd7d32be152ab995e3f70a57f15b0bf893e02d694e903f1787f42acb535889fadafdeaf50a9b3dd3db35b2a49afb69cd78393115d4bca8ce7496f8e3d7f7c59a6b9008aa52a207b149f26d9eb0747dd008e920818ef58648d8fec208d209e2855c68d03e078ce0024535a006344cb56714498e89c9efd8453b60c437c9ac303c29157f60b45015b33ce4cff3b07c07aeb7022a8033bed7c9b6294f23c8dc1e16b27a5e8b95117c019b7df763ef121603bb4fa2fcda2ff39bd28e0b8f945b9b3641c3255f6f47b093eb183c479cf9e18fe118ab8e8b4f7966e60b7ceddf92b26d46800df164e1cf2597f2500eddee08778e6ffee0190b24712995adc378d1f069e9d71e38c56267b57f9d7a659668e6ae80dce776f76070d3e8c222d828e5e0e85923422fa93965221bca3ac2e8cb0232ac47843a20a3e7ffe16bdde1dedac253ec3a508fd070d8f65844dbc3f335419a067768251f786904896acc24e1dd081a77571254a8150ee12e75488fcff73a1aa6c4fb41791452e0b1110e9316803eb13660b76077808960a6080185d3392de47e8793f1649e00ea58a6ba82c318277f717593933cf3e7669d0906dff5284dce31401ace02df6a2a3abdfb4de6b416e3a25de824c1b4e98146e4c4e34c2fb80be788136dd0a1d8a7ba85cc874f2441cfed47b5df0cfc46b68e23bd915651c9936098e8bdae845cc1eb0d5cf039d6fab9710df9bc69d1a8c6a850c7320c9813ef1d15dba8efd64c4f73c9c75622306ceae122d8f71c1b9e848fad1f133b97a9747254c93d032e1f0982d67eb22eb04aa771d9e44b44bd0af503f19dd28f604df47e1873591e2405e6ef2cbb19efe19351ef254ea69928c9d4a2cc7124d167abceb4992d6998808e7cc6a1b3305c9a5c785d711d972fc9e91040369ce13f6080611eab2549e5586c4192c689efbb506461101a2a4e4c82a3610c62a98a9e6f262ed5e7fdc919a11461cdfbcca65e871c51057d496276c798f2686749037b4ecf25a0160ef034dbbb874e7f1cc8b55755cfb05aaba394c1ad357f1c27bf9adba753cc3621140be0fa3a2b5cacb3f4eb8e7d5baf2196e11036f6acc4402988c5575492bb8a123503c62327b0467db3d9a49d9a038549468c78d3cce5a14520cf4665059f4b5e97709bf4fa268d6e60f94dc6bb987fd5c8c448105ff6949d7e539109b6116e09e948170b75ea05d16a0d9679076cfd4cd76fd4b1ad68b10254d2f80196f927fab9032db36c96f579242497936e491128880e7d51467421c61366f5c5bfc703495ab7ba0fe2dde4898e198c0901055f965052c8d431e26f976415579872f8811cf2c7ff914f19fd14d2de123af5ae93b95c8f7636334486c373d042ad05badcb90893ca75c6d88dc358ae7ef9e8f787ab69877be3677a65a6341cba4f6b8651a7757c1b6f70f7ed6f7b74ce56af09b75a0e00c7a2a3cc7d3a3700e016628cbc7271a2c2a52249d3fa77cb509acc25b4d63a4b4b50bf2de4b988a72077782191e2cd2a02842bd37466de023854e740d10063624ec22d94c57c0d384b106f74176acf0d67c880c79d6696e0d098f9247a6e20e8acd1657dfa42d5b41b98a162a5254746506f3eb701d224623eb2d423282cf1b53bf1c0940f057424330e365ce7c885292e16aae6731fdbfb69647b43da2ac13fab465d933ebfc98657b4946e97545180baa89691dba90b5c94e59036d974544c1122f23c6abe23da92657c8863869ede6925cfef52c040ea77f475f484986ea21cc06254192ef0a530d15b3f2dc163521634042e2aae87f29709a44daa229a1955c72b5931b1ca7ec44f53ab11b2ce5673d14dea5ef769626a667bc5423d47a76b73e088a4b01b7e7ed3c49e06ebf53514aa31abb3633156784c9c5996dbd22628417acc6cad4985c0f02866ef9c449bc556f79594aa8987b5d4e8a8f9cccc4f6fc0763f37e1ac4acebc2d66d6e167fe353d1e2efc4566c42d0b9698a7395bdc34123f46f1f51476722b7311b30540df77da02250271a084ae2eccc9f2cb720755053d8b206473f74b8e8196479da6808bbbd5d053686f2f2426b922e1d7d84f662020e6e460ba1ffe8a9d87b22bc794874f814b860c29923868988fa5bf0f2683720d49c4c3ae98bd36cc55af2917866c47a2b2990964c1830e0ceeff5035ec60a4e97fd4a2472f6fee8f4af3dc4fab5aa3e12cb7ebf2ac8061d402ec50738a13d6b31c3f505e9883fca5f0cd986665c2b1ad7ef440d522322162b2198b4341235054490fef1df32e025d17ad2a1e3d25b335801558844151e49121103cd2807f11b2eff10db0bfa6bbca94c00d1a81f3ce8549e4f6f2f5ad52dc73eaded1dc9ee6f5314c9df248bd710d706494948297bcf777195cb3a9331fd64b2f3d9173c2d136bcab061ee61c94bf4dbbccd9d9bf0fe2c10252211afc9a71e87b7532cf889100e90f5677ec9d0e87d72009b98de5f1c4469724a35503463a20c13dc1f15380ed887f1f035e169e8f1a354aa3643f532112763bd594c87624c1c77f3f6acb86964b693619cef6ce1d7de0364ce09e27a7722109d2c7f79e6f8a175497b519a331c46ec5f2a3a27d004a874a84eb321ebb9cafad280aa864a487b5f189038e66aa34318408487558c433175eb738e7fdfda218b25f2ff2c55718e95160ed5dc68e31d3fdafe2cb420b815134632bd635572eca10c9904beeac251fa714a444628b60eafd50cbebb4caebdc46ccef31a30ab30239e451fb2a9b0e2d39eac41374bb2555a5c19309b78cf98307c657f2468f1353db31c604143ed40fb3075f2a56d814cf1c9abb0501c402759d1bf3f5d7a082c89aa9312e5af86fe0272847db04c06cdc80b0fe9566a68c9013b584ab56b2f0b4e3083d9e66f4e34e6d071b5fb31de62c4d5435a26864b06a7401b24237b2236fb22ceb858f713d5ebc30ae6016f76ca4ae6ce5c2d9772560f1d70ec7060efb6a130d7145aaace289eae14c23d5dcfe0aecbbde1b98ddede28fd2d2803d55b13f3cd67651a96b7b287276daa5c5c1c39c45687f0aa1405451d86c526a430d4a677718aad26b81e97f9ca915f5033e46956b58d3905a0c4ec0738bd20bbc5d40cf6a3e9c22213d65273b0b1fed414f2d154f3870b1ccde242708cfcfb6b6bbec39f5d3dc4be43aa46ffce5e913a33a15877ac551eaff1352f983196d4c228859dd93a59ee893e1c73f6a06731a215a760784c3426bc10312f187cb00cb7e997c43d4d02f4ee49d7edef7c4eeaf70b6486993def60cdabf29f29a65a1e74a960a0fc63dd67e69099e789fd38adab4e7a20eea1fcde5a86925cff9930e13346a70110f10ab9571c6c7640a57d786a15333b9b92df0a6efec8ca855d934b5223a010688feebb5bb8a6951a7700d0a96636b1382063e75647872dfa996f1d8a02300ee2da554df068e4ea644a5fcc3e668a53066df09806d921edf9c61939498b883eb1811409a24ba7107b3a28c46204df70ee1936fd3baf823605c668ff50301513a717e8c1dac0f0da144f6b6e4064a89ba04e855dd41e0b36abefb2650a5c1f5a98476ba5d4a7dad757d43bd8024b1d3c7070e410d3dc4446eb60e766b93b94e9827e539edf36a848595e4eee753ac2ed536b2495ca6825cc0509d457a21f7bd6c5c7447f304ebe2adebc9b74754c2c893b140e751fefc5d9e8460901812482d08642a387f44f11acaa80b85b18278ccbec908646808de0bb83bf89938b55d704a0b5c4ca8d9a2406b3714fb39c08c533ee27f6a72662472865a495d74481f874b4d3ce6848f7c071ede7bdf8d31bd2b47489a67f65f8047111fe7e936a9130885be5f107b8c12a1d4cddf5a67d3d4430d44cdf19f1480cd731ebd8fd7d58a23fa714419dbdf5e1356180e3176f17fcfeae905bfe16c192eb937b4b750079c495ce2b5e183a0f0009197d4e61a56781be252c7755d8b8d910bf385c062995e57a6e6fceda97cec6de686bc13d7d5a09a2cca80c4a0ca0384a25cd993f221cfa3038cc438fdadad41af9bab842922fb18e36e9b422000b492a0e5424e86e153eb5a4450f2ce777313f0eacc2ac7170774c7fc4e7f4ed24f6abce5950c49bc4cf423c8f47e86258f891a828cbb397551ff5638a813f6b908a5839521b14a3c68a0efa584ef9fbb7bf13da23f89cae27d867fa029e288f8bf268977e97e6b0a442f14534ccb11282d2ea53537cec0f66fd244e6b0dd02305148c5dd45561a4cc9ddeee15a78019de595bceac4489d52a3cc75cad1a15f953368e4341bd33cd0a811ac424eb4a1159ba099ba64928c10e832896965dbd4863dc25bd8aca2681bb4a6f1cad4bf04420dbac83d22dc05554bbebb4f96cf5ef355720d54d3fea625edc06b75c14533a1540a7d815558a3952ce378447a77c176e5265a672e7ecd7f701dee964c2334230c68676b1dd2d0c5db9395686b47a8c89fe4c02d3291d14f71a3a4dbcfdb428809cb7127a68ed1139eb7d377f68cc8b9c7dbf5457da4e985e6395652f62b151ee2a0574ccf62cab2af85f3748e52b61bef4100d77df1264e864c2dab37df3bfe27ea12e306dc85622433c02cb6e19b86c891e0909b22f3415a4b36c3e6b5c2bc70176b996e5f13a10f4961f14b0e7fba406b931f767c782b44928540dff4d1de9f49819976282db1cd08e90b788ef4435c731ddefaa33adbec49c7740becbc3ed8d0284bc4c93301b97e9c41f938834fdb5538a044953e296ec0b972eea83a5d74a3979ff61c9a3337cf8bd14e10d569172314116c2e7af305f8ba3096c4354be8855dc86e49395297b34ebd42e8e974a2e87df02a37762fa492818c2a9958d65478f7d4d52c71533b7a10bb62002dfcb4cfd56337ca793bb7b9ed3109f45fa33e33dcf5b5c14db4cbb6a68ee2c28b083f4f66cdab893eb04b9a7f250ea514c4e1de4c5c0874568504e57df5206bce7631d30e46de75a96a64ebe49be0f3682e5f168dcaa66bc040b04031166962f91f063bd52d2f405a1cd1e44770119374f7af79f9345e584a0506144945e9c33caa42fa59340a1d9cab72cddd5e273afcf3311f0bd4141618054fb6a595d8adfa114efa1a0ebfcca73a9ffb03f8dded2819f739df731e3b33b346cdc7b81841455ab401568f8e98354e09a86f22b707de185e81429e69acb9248ae339b485a42a1adeaa3788c0698b5180e50783e9eadc134f1c9a69956c9bd668a381e8a8c8349563053034e28a2025f60059de04a7748b016ee2280cce0bd324fb33fce2415258a6916523cd11c3ccb50052ac8131350e1e42b0b5c41e12e10ae2dc9c615898cc1b7d0b659a88f6c6e167bb3b03f424eaa9bde78feb68bf216aeee6e819cc2e861734c22e7a4384ee6542898de63260e4f4d5522726db1fb4a196fcb6678dd85bc126b3a6d15aaf5eead12b08b1286b6e264e19cd40cf3091147e03728b05928bcc2512f22bea45bd8f6cd808d02560512b91e5b6888faf3571f8e1dc971a9e3322fd2ce3db9a46a5c2a27c87602e1edf513842f70ab9e5d125f7456e3bfae6f26900035f0f97fea59db7bbb7735935a9845c3d53198cc6526a501915aa3657f971f8acd064369459386c464be1589031d29b9af890657ac4f2e21611ee8b6e4534ed484025056c500f0b653ad59b0994a9c8a92c3f4c9df0da8a4353b9fb4c2125ad29762c122af1dfbf2b9b2a9545e10fdc3473a7ce0196b9f1a46816d8663c7741b41251b3ed3f3d45c12cb6e48ecb5810e2e69ee41910f77cf064a5e1df8d35a4c03e3bddf6fa2085b79900f56874baa9781ff0976103683513555da6123561be6e4e24f4fccff0e9890fba46e85baf585797c293bf136e3472f0825750ff2b61ee2f3af2c51f7be1993f451aeade5c8357dcae453ff273e94d78e968891ee5524f5b326a2fd54773d2d692534d3fdfba608047f4fc732f1f95bef6d6d9a4a25248dbd25e78b241d00c9c9e0fed60845d443eddfcf3203e3486986eda8f18da29cb1348f7aa4220a14e0a3316ce544707444abd27ca43e3ee48d98090beda1c740ee02224acff62713b8542b1bab014648dd39a8608e6c37614b9f7c81b5601f172799c4fddc8bfda962d50ba11244c4ddbde1b9782e0bf2118de5b47c8e1f9d98583429491c6b524f389a703b5fabaf9708eb6dcba600da1d913e21ef04fafc2c9371afa6f6abed5674410b7d6d9045cc847ed3de214608bfa5beb6cdc23799e6b2d1126f793ae5c67dbcecb70ce9a690407f3f759250e27749011033cd860fef915ca3add53ae78bc727d451ee6286c93803e62b0f06e36445508fc71278f697628167b3b5bf6f1bb8ee0bc384603f59d6f20b40df486b707a1d79de14aaa3f98341c9d2a40b72bcf0d0f67384c3bbc50d88a002b24781e6f5f17fac2e001a9872ed3bd6ee5374766f077f29b9387ffa16c95f54951015cff98b02ae9f9ea8cd0761548b4bb078fe43fdfb3ddcafa461c352237a470287c1742df840ca4824fae21dce8657bb44db39ac690f13f8993d901008efc616de65dabaf642b37838649d97e51f1a2e7dc3321e78ac8f168128cb4950152b65d7ab8bdc864eff260f35d5758a0c95bd7254a3d915713d1bfb6a9047130bfd360e36fe598677da36bb4198b18b95ec0527e9f11f5c856aa173579ec2b219d804168d30fb14e2711854021a9f16e8f3aaa6f6b363eb37f449a4aa091bbacd5b6c4f346fa31eeb91e7d636e73e295e9ce3d146a24597f4772274c99e9fa23d551a9f0a7ea66005d447d722dbb27500c77dea02e9932477e85b30d757de00e731648788573929f30f26d0266e8f11d028dbcda2d97214f83653fb9bc2ed7d22e46ab0085b7c8b383b58138430a2591c6ed8cd5aeffaeaa35dbc1863c595edc241072656934874bd8288e23cea814f32dbef38ab681d8ab5e5f08ac96600f0d36637c36058245601ede5372cfdd6e0fc956dd71c1d53a271b30c12e41fc85dce7f19986e679d911854846dbfae1b5be36e03047c9cb5e52e06051e71ea90c0cefc0cb57fe9c5f766435f0638b5c1d4295953b2ffc3d19c7036f26674b7b49543486b2635328ac15af84852427c0f8f84308bffdef23413ef86a667ea5b2e05226d43e1fa8eef07221ede30a0f8f7c948b30196b663719bf79ff8597475c6322e331ad661a2695dcca587072272d2aab76a794df076424877e43b703cba7fbe3cfc5ea5965cce4dcb8106cfff75d721da362cf2e5cbf087130a7ee5d2080340cd7571275322cc7bee8d841a3883453848157c7613f165ea9455892a15d8d0600bbf2ee5d01bcd7df5e765ae6da7fe91e5b5f40fea7c76c12d345d77f6a437f4b9e05f273cb5322594d6c35c65a62b36b4d32a0a4091d2f713c09a8a5829cffe41a13bccbc5cfa2ea8aff0cc38f99a56829d2f5d48fe19a868c4aa00b43f3d4a126c5c615f0edebbd89b70c84c594b8919043402a9b4a2d0ad5f4a8670bd050b391e5263992302b2c1c817603f04aa5690945546f63ed3715405841662fc17ce9142238206d7b2fc563542fc59d88f7be31de7f40ad7c770c1fa69ca36f6ac50ab3f3451f330f22acdc741dbea0160ba3c5065451f9ddb6ee1dae670a54ea9382ddf31927c73327da496dc42e45a6c24a90e98c45ff9ee8deeeae160ada95e5a6ae362739cf79e3d09b6a21dfa0461c5670268047d3572db96dcae66b1759f92d1dc0eb5c10a04b47e6a9ed7f10d49e25a13dfbcbbb383f143d5eb465f1eae34bdc039900bd176bb2aa4f8363935a37ee3a16961c5b8edc0bbf2dda96694c31f96b80b011d49a3a82d8b5cf6f8be762ab84500663ca3dd98457c10c504a616168a5250c8b598fe902e95d0af1f72940c19808d330be84f36268e4c5ec51f90dcd2490f0921b7a646181e76cd58c534245ad7b0b6749bfbfdfa7f31642592f6543175603860067d8ac8956fe287a1c09efbd9548428efd5f14256d23ecc2801637066007fa0f077534104aa5ca82428962179a6a87d0e5caa99947948633d7ae48e5c68dffc942a25759f2ff5e28d25f35fe18260c281280bf210c36685a3181b01676dcb15545ddf9288fbb2ce1c0f8743a735aba9c276c3902b9170130e813251de4339a4414b2ad68494450e3763bd84c2f59be8ca8657903ce7f9295033ae810634ba3b03aeb63a81a7301ee4b5fe0a1bda7269026ad6103a2bbbd7ee3e5bedd043ca0667956dd5aeddf54e59661ade700300fee7fca67e8fff13bf50c0ab1caf688f0bdc300021174f4e488e3c8f8230a5f4477c2b0b28768c67ed79ee46881b2f8cdcee17baef02eee7352d59835fbd4162cf072064c80ea4a80a756952458904787a28bc4cf9905801f709db4893a722815c1b52184dd6132df005d3eb9cc51f8c4cb7cf574fd0415434d86bd63b2c5f5a22ad89bd1027700db1e10743801e224d050eb152a99bd60e293cdb57984f268a68732b4c1fdc30142a714b8b39025dd692a06094f77dd4184da5a107fc92da2626fae5a1e65a0384879bc609d07b205e34d2b77dde5cf94c66ec55a160427077da751e81a54cc2a804b0285d38ea20e75bc0d3fc3d2819785b57d018d3b8c8dac9c329fa20ba083925779fd0c9ea0eda52ad0f23aebf2ef8a3ba35d7a164811137348dbf938ea9fdcd38447e858a2f41a3926ff95ce90a1564ad98f79df4b61b745b5d8b6016aa14e030319004230bc21dbdeb203dc5e11bb909641293180da6167ee2a68d046fcb679a6535d21c2b5dc9b88f585a4bd29f60f29959cc3250400ded36d072456e1463cbc813aef338221d9de3196344717a4f9aa5f3f0cc2fb8020a963a1244129b261533e885c837192d932edda629eebea0c848d72413feceea03c127d63151b58331e0725ad4292df7a0c788748f0cbf70895ef621fb6564212299e10942d900d081e1db741906d9cb9c2d3f42990d584529e2401448b52c0ec04086d230419fe6ec7b0432e0056850e2e819d60c4a2377fa742405d0a7630ce1c74bef940ad2835ff41a7c1b46d714f1e190f74c128ca0b8d0dfc4f8ea7f61a51b5856bf1748dc1421170e291e34c3d63d8da57e769f0d0ce6ba873f43b56bd621d84e02869d86f32eec0df24fc9bbfc29db44ae46a44ce39b4b8073ad0c25383b9208dc3d1d7b8bcd45f0a95ae08a2fbae279845cd8a9a7856f3775c0de379c09b9e47b8ffe3ed16a839e4e5758c1fad489585d4d74c64e9d0f20483c4208a2ff700243900912cbda0acc0a6e458111569e1dc22c47b737c2661c40566e7b4d1603fa33c205ab00fd4fcf924f738eae0f1dd3f37f4f71f6c899709967910b3145d0640e3f764d57a58acb3732aa1c391398dd3a3dad7abd4bcaa293df83f73c799ae4c42ce4425a1fecf21a2e687549d2368faed2c5b5474070cb1bfad6fa6f3b8956bb2b7e1c08bce4846b143630af183df6aa6375af4c77c94a32f77c49681a6a740f134912b45c14912d1050d5b193a77700c17a5a2acb4c43bc7395c2698d156d30ba95fe42c3f2160f30b61bc653609aaed593d127de9926d8da353513ccade6f2cea3d0831779ca43166d9e4e2f7fe2d17f552b18ee7ed579521b54c8ce210ab739efa3b93b8ecb4a0879e2e090122524c3ea6016a8815e3c7638bc6f6d9c7c1a5ef18cc4082115cc5f7f4f97f6064cc19e9d81974fef5da566a360eb415c2f556b4f954dd803e63841f4975028171eac5dbedfa6bf86dbcd27b1da0baa185c7abb9a6134869fb383710bce7f6afcef050704f442dfbff139fdd71005c6bd62e2d0edf14d24b98e40597793101827fed311c45c541a1b72d288f4670bfd3c091d3002900232900acd2c2ae386e632f093c506c59443d20f7e7f080ac1b7dce19ba55ad8e14c234faf431d04fce36bbf21935b346217421d00c11220aa5f8c26b181b7256773189cc32df403739997f893489b491d344ff1a95a3b09e43a850b0ea752263d645fe0e364e72f8035f96e83d655e150ddbe7c26364a730d039e6598de7cbb8cd86ea7be52f493a361572baf8728db357119a79b3ee968e483fff14a966e7459d9142b2d0f28e08378f89525da269c5c89a1ec90e75cfc825d1e8196cb599214df15559232523118658cca0d3b1c9b5a6b07165a723d00c2f8187274d23a14c725ae50c11fc86071339a12ffdb54fead78991488f6e716d2177de3655ee4c7bb81ed88da13dd596976c14a7fe52acfb294c9e131d258af1f0f24272c4f5584a47c5225365e2ada9f15c534e3907fc6ca33c6f8d2d0eae15c48f84b3387473fcb8901bac04e72f92bd573b3e73fe9ff4ad3bf7212a77d4d14ed001d6497ee064c663bedea3a1123cf34f4c83c54c0b7ed2596e3b38f5c1ddcd40f5ba211c52a02fcc6e2b20aa547595a3b4aff2fff957f22ae5e807046506f802bc36091e2eea5dc58367d640ca28637917946a7195b8ae7c53632174c44ee76b2aedde97beed603a1c08a6e4e486d96b8dc08561f0b697451c90f358c1a20b005c4c117ece6fee4f5d3577383ba286ecad382e4a26482e61f7bdb6ea43aa7ad5058620dc4528e159aa263324a66317bf3651b8f7f9578c9dd54602afe79b60dec2a20ce2b73b1f373acc466734355154a3177554602e30b37f099fd90b8b9520c9457bab1ab72fe5c432e71723afaf8f782eb58bdb4e77616532b60aad92023f297b01964322d315e5a216ea695a44a945aeeb18c8999216628c75c0867051aec308d81ef40ec04d784083b540ac2927e63d53774b6184755ad9407e79ec8c7c4438031614f64457dea754f06f00bfc819021b8ccce5b94fc5b33575782ff94d660df639c678f325062c06acf60056e52622e15734c0e0f16f990174cb725a7ab66e568dbe56330d45873723b58d3d6f101602bad548b27a4ee4ddd4483f9d9fa8b5257fba884f73e31954ecc3a67215138b6aa13d78a400fcc1ae8f363c548e1e6e9cb7a78f296639b4e3dad4ed9fe8899ce2c2f1f0e8cced92656ec25e510bd8d0121b8c274629749022ecb5d15ce421802829882e9aeb59f76b691e0268e2a5c653c7fb2901b26de6e14c3689c09aeb30305ca600eb1cfcc6f6279b790b48af5a96ccde3ebe12c96d16a0c208f5c1556438306933acdf9f0df4aac645f24247af76fc43b96a58615bb4f76f2277d0b34da6e495835ee17359ccff228b6e9eb621ee7b5cb24bf7d00263a1948274ebeac03b5052972dc9ea0310db53fd5f7c640dc3e7fd97b7561d59232dbb298e5c04a7b0776e5ff3fba6142ee9cb932998b0fc6934e1832dd7697801ac761545544040cff981b321516b6251d7a90740c5eaa240d7c9a2540f416e73e897354ec5b5bd1d734da2740f87014e95ba49c39559b6c0209363a717a1fa7171aa30e2e7f461f0986ba1178b7fa4821f1323dea6d515183fcdc2f19e150065cb9ba6ed6ed7b09079c4f3364e73f39bc508eb4ca6c025fa3b2a1559299d02b5866c2d20adeb84399456018f2f0309fe7315bce9b2b9944d60c698f1cfac97066eeb643eb25fada53cd03a96ab4c5c1f5ca494378f2b45ab1b12c0682bb7ab3512621e5d748d222fddc83fd79509dc5820f7871fee731442a088a8789b5fe54514b0a04ba01e32fa1ad8d9b80036819fffd5d784ad827c845ee1d4ffac10997545761e0c05b4817b3f657e4bbf9b1002d2b45b3bf1c1ec840535f9b8d57c7db20b45bc477f73c36953c36513be8c0a7619b916936ed55f424a20fcd3dc4ccb565db47a9e5fb044d5696fa4fa327dd67ae1a18a1e0a3b22611a293f9fff3011239656c6a1e2d10868f15989c2e9210c0f109bb739ab11708f18550960f6a0f4142c8e3cdf1b6069fe2eb8b8f5465e12111ac75dc5476b7b5c679fad6fe55613f69ada27dd1887cd5c66922f6849fa7035b1222ecb377478b644509381389eb9c4af0928868322282c2c5e20dc8b9f9d0d86299f17c852e012a854ad77c3145f36163d20323ce966bc72cd949a0976fa5646bc2550271fe107cd098ee903930e546ae33ff8dd620e4475400c8a40f75484d9033e67ffd58a492493680cf4bd6d92015ba30536965fd495f37aa4344715e25685562ad015a62f8c321b11b32fa7972f4a8872fc2acca73d3bbe5ac77cc916089ab4ee36fe2e815cffa6c447f38456aa7f288298199bd959902fc5922a7f993019d92103e2aad2e472b4a4dc05d153e91651801b15c9638c52d2e85c191cffd0ba894bcdd362af6606a4f3843a152549d55e5dad0242aa8bff20737a1cae36482463f98ec43f010d7dfd6bebed40c0a05faa82be2cbdcb8e60c06b88c71327c782beecec881e567f10041773ad84e1fd82d96a9d607bc00273dda751b013355ecd9dc4036e8ced997a983ccf117ba04e08083531afd0842b7a888ce3a3f22fc13cdf8bbefac4e7533efd60ff75433257c33784eb127c596ff2b5fcdd959cc8840ce3f97a8a0193d1df7428eee44ce2c595666c91f2a971f36c09df8832b048a72a05866d227d28fe8e9aa423f8dd5684b51bb49408348a70270c61a2680b4985214f8af419596e3351e3dab827c4817317e3ecf3c6d350b58451c41201a7002b8d00eae3b6864cc235f6d4ed6289b64e988d71a6df266167902213975f261d64b4a3e848d9998d86c89e94c0b0e461333c75ba7050bcd0e49692a11ce1de92b4506045bdd2f46621adcb2ad57640a6bbe0744670350471e8456c0e9bacc899a02d7844b9ee717830d660fd0e0943d723bc2609f8962ee50fa1daf42583bd73b5f5ecedf1638cd95d80f858e710d8a0a5fc9071a6f996d4feb1375a47cfac21e2c84c5701d76a42fb074c67ba9666f609ee1618d062cb7776fc6d9a591729b6896df5c53a9163f39ee23a630a3107d1f024dabb258235911e108fec14a10acd0c2700b4bbc7348cf62a2777c00c2205b8db585cc8f8ad289a483a685daf3ae67da434c4a498beca9f96d713e23a83b6fc0536661da139bfaead677147d0a717fe3413593418195659ebe964f7d292f568d9eeadf212e0520e1e311521558d14592d3976a2a3f01a8525b8ce78872ca25784f788a587420109e5134211254ee8a8876e14de0f02e71e1c6fb90a8fe052db2358fcf487db69c13b1bef6be37e763070cb36e10c52030fe5bac8b784fd41f23cb3551c9b09c727535c55036797f50f3e8d90734732a19e9c1ccd59256a96661d7a637ce52a84fbadbd827481cdaa31c42d909b4fb9945d783aafa6f3c212fdd219f4fc96802bdc97ab01107a84c5f18dbe2db1eff7d3a21c112e99e7a4772fdf909c9e7953101c0122a20424635faa558e2cfd04c33ae13c0ef0b49c0bf1f4ba3fd061d0ebd02cce99b8a1e80084bfdbace7177705993747372ac6bcb8e049f2bd2a0ab1b7b49beeebab45b4d16bd474f7553523b871dff891eb7377e16580ac18d3dca4aa51d1f461113291210f535a6d36e06d3aef54e00c4eafc88282f186209c2a83db0059ddf1c06bcee915d4d1fd65879a24449767f241337986c08ab6de95b9386d936e49c3d494fceeef8521bb070b9457e5c0d9108828f06cf0822db534df00310d53fe6f78353ce12e8fdc8c39449470f49d1c91342c13ec5060a6de4b1d3758540db491f05e67606062b56465ec088059980917dac931f931d473ab4025af20c7463c9ada1cf5633898e07f069f8140bf557effde2aa62f7005146879913f09a57a81095e771bb6e8dfd7d387e0315a89d06c47f9d9a58d20533d7fbb87f97657df20f5b6c97c7704d5ad980c199d1362f98d5f50e163e146c7a241c6bfde48f587c31231e28ee5c0604635e7c96e840c6e74179e8d95721311fdb359d192dd909641921087021e0c988427bd2cc609d93d6494e55b75f26636ee5df584c4eefe476aaa943974577b594b049892312acdbe8438eec80f0ee4e6142a65823a01243a3a0535651ba28a093f88f4955e6c6e8f0675ff603907e6be64d86fbea06aac759bd45a3e96e06ddf305ab44c504d539b77aebf806d3241f4657123ca2537f420db145a65375411cb1685b3e5470d08f4c81b1732604ac614c5a884a97c748459df2460f21639e20968950e753ce099984d1c9a161e92a684c75c35fbfc4d11c5aabc90126fbbce02023f800934759b466b93cb3462ce7505988181d724425b367326b1af3e1b22f91f968ed2a268018293fe9efface5c3a20e253c70986d95ef796a092c40dd7df758ee50f519c0043d96b420298e3162b0331987e816c9aecb26148863ae89838895c9e73196ecbb593a7b4feef65380fb1ef761a8923cee6bb61c183797c7841c7a7a54739b35312bcdfb81404f43806d5c0763d35fa4f6856f77d206493b68b592d578ca0356f60a43587e04354271351c8309ed238b7b6b0f20f9a5c1bb010df30017d686a17526e9403a82f9dea731129db44a3e1da519f577bcb0971add0f2770a71dfe5c08ee19e7a0d0d5f72447d505785f6589fce512a90542167b46775eedaa9b9e899716f2e11b7626708222cbe6652712c1db46a9cfafd3fe8a2c30dfaac3a2f18090cf78776f1f3fd403f77cd1b013d3ecaa30c606339acf5f7844fd140ed9013e72a65d2e7081a716031d88a58eedfae5a625da7f332e3601415639dda7a0bdf45a4e5f0066a98f6765c4292ad7ca067f7b9eb003731eba28d687ddc7a0c25c11510cdfb5d092c8f97164767af2bc0194f6b9dfa3e80f385199dd02437f19565a7887bb6800fc209e513067f807724639975dce1bd50a5964ff4df0e1536d9647f17b5d297207d101c29abc048c2b153f419eb6caf2c3dfb59e597bd6594af45429cca2a412a19dfee46c3875e0384579db6ea6b41d53adcffc231eae19acce6741791c932705f946b5b30acff24df57b0d6b22ba2fb178f48f26704e5ae96e11bfe91d1690b6ad22438a2612cfe5055dcbfb95e9204fa40b50408ae9f9f0cad11a722371f573f3e0b2722aa7b0e42b6dbcf17b1cb934c80a82de989333179237c275d0aae3ff8a75044627580e61d65c1b95a3f540edd00ed9bccdeec61c26dbc882509438d895cfb45c9fe7abe017639d663fa2366b844ea068d059e2965e5858237e38627c6ef2b615ffaed550ca5d792fb94b6a23a71be9f60e9749f28fc1beaf8ff6cc88964f728a9690cc0d085ce00669de972f033aed5053f5d3f7719e4224e36646f53cd56170ca5a8d7ca28698b5453c97a720c8cdaff4aed70ff8194dc2cd5a127b7bac217a9f49c7316ee3e618c34121eebec1e980b9330c8c1f102876722c4bb6631b81e4c9490f91c3e05be4206c5eba44180c6091d2ebf80649afa11c9194cd7a20a0fcd5c7b1301b93e5028747ca1c245f50bde62ccae3f8468806871c16de6ad781fab410b91bda028262d1730d79d0481c57b1d0a98d6d19dc636b5bdd04ef40435bbd0c3ab510847dcbab92c9f4ad64509ccc7bdfd365834c9f14905e78a43f757472781debe94b2f62dd207db8ef8783095049d71574eb5ebbecacc7279db8b209707dc56871b7e468848420f680219b7c6730f64539373707c0e5c2e67d92324187cfa1aef6d1f7bd7a887866a64320c83927a69432d0aeefa905d5e64231a5d3c73f4a5ddc02e8aa7f64f5260df6e7c8b1682d57e24219a73fdfde4fd16884ec40fdda1e1c2cd7cdcc981f7d937cd4ec0f62c503cb40bcd7ade8e0de99f6117bc3569b923354570f1c282d58d56fac12dab9b4037f001ec42ea3d6586e9d859eed1494af0a048cfaae37d865a0507b1722e227d2d42c64ef335f143dac2a161662b6bf8182ca942c99651a00f2cec4d289987fb7af5b4081298d827788dc95edf59536e34786a7541a8a0b6dd33e173304ebcd4fa18b38c66f8277790df3d65ff618e67d42e08d583a8f41e3ee28d9bcb0d96cd9f30e8141546ba03c6396558eae93d72f2a51316b598be58a1066dd0a8456cf0028635373eaa21236a2d5e727e130050fc9aab313cf3e14ab1f66a6bfcdb9f5aecdacefeea1c479975a56138ed8523ddaf7d2e33d325f4dc7f39056702707a33bdb09c21a6c232f484fe2c23b101d540ff0977cd1203fd757a2f611bb5607d6cfeca6133a93c8c20141bca6668e55973b0c552420d25732ee860cc98e82957ac0ece130a97f7e98a346e2400878587835317eb8ee67642e4a91eead7d0473685e55750dd24e3258c0c170e4fca074ca89e505930bf507c02c1f9d3738afa00163b1c36e3e9a5d4295928292828db179f6a23e52b8b2efe4606fca7b37b068725d6670ec43e031c1ffb434b644b829f40e4e8b38653b9a231831ee64c4e8961da96b66adfa1b6b04269bd5570ab2c9263e39fc7aaad417f77e226da85f2be3e6610d0569723adc7a65724605ce53d5ed4c1ba46b3228ed0c5bc671197f863019c23d006f9f33c7f3fd1432013210740bd2fabb57f81f594d68ab11f32964ce53613a62341d381f96601d68d1e5b58063abea9d90d88f68c3648b4a4437948f5d7238c60781ef4ccafa892b16db453735e56b0846c98fb0bda3d59e201df7ac029df682d30253521b4d56d726433ba037c8389c3ca832b7d6d81e9c0712ba1aef8a71f55e4574f2afc1a0dbb6886fd5fc33685661b8e81761f32c3a74361ace0ed2cb57a3f4724d3511ede166cb0f8d4a8a7c2afe04a15ad91a9bd6e21a1345dc733b230babf8b4fbbc72c0e38d4ab0a0be8e7240de29538a2bd14e6920e59595558c2fc8d1014e2ef434a3906acedf76a3216c7e899c86e295522ca45fa45f24d9b8f670ad7964cff2ebd4f3f8f2bcc7f1e166c87202374a5da4ad156d5dea155a1769afcfdedbae38a130469436a9569850ea58faa1ababfd5d686a2618806469f75900ce9d9b2e10dc9532e9799bf532870c0b842994dbb9ae96fb589ef2df2a2e80ec78b27ee42534dee31ca9950efcfce2d51dd8f1a921caea1f9cd8a44ebf04a39554ba52389964ab2615e6f17c2f33be38d77f9fc8104657bda718256347af39a3d14ccef501d166a678498751de01dbf43fb54e68d125d16841b4392a244c499022fb30634f416e6570fe28bbafe391fa10ec8db15737b33de13df10585455bd7937b36df1583c93510db6c239510983838089882f68e535f341c3850f540bd1472e8d64d8d6cd563b840015b2ae7d7639b2f02e0961e0b0a41a3ca23bff312454ce06cd0f14c6e96cf30a272be8c8dcbd4eb8489a8eaa8758696027d94c019e23c6aecb8bb3f1af5f1c6e969b64e8cbd511ac39b0b17a276ecaddb7b52911487a396884f17ba2e727f2acd72ebc0725239129cfb14485de392fe11f02864e21a20e4b50c13114134b2d6bc5632bcbdff9fe4a7b4cd7fa7100c8c5530c8517e7a814e35a52acfe7b5c19504ce1220c1de9bd2fb2e9c862347dd3dd9f0ed7fa1badea6a61b917f30e25c93896b552cbf3e7f2ed8c7070e9786278c89b5ddad1127e0dd4d89e187cf86119e3c49b10b0c76ce4e641702dd93837f861c09c58eeea744a3669cfc4a2d408f30ae2eea615b7caeac78ab62f1aaa691471d8cec579fff163abf2ace9027318a3c24db1a417005d397928c11d6af3f63ef0942f9f18d5719317b4fc11d00800d42e47fb8bdde1b7430ba3a70040fba49aa7f21c1fb8233b2da4ccec8b9d9f63f13bf16dd4b676c919b7b6c62a444a50eeb90d949e2b8f33afcf52bcc806ba395003214dc96579e154b64099e15aa3607cba435be58bb60258cc3d9c25920e67c23f60afa2454fb5d022d523fa3c0fcec7ba344a93627ba16742e5a7da2503512e8f6d5a4aa42c583f53bbe191ecb40ce95107feb6581ef83bf1d00a46b6204c91ae617893cd63e1c174e3bc134109d13bc8cfdc6f094daf5a745ddb20972c45029fcb028fc125235dcb3c1bc4b66b560732cd04de49c5e7bc1e6b6f9e3d7747c428419cc343ee45ba2ed8f306854eb3410f3a528ba676c9f94153918b471d6d55aad6623e0b2b4cc1dfd2d8a7f9fbf6eb12f5b031e3efedad18cd99321fbb61ef5b15672250f7603eacd21b5bb82b55d15abf33af97916be83ada6b10152c5a10fe65988458d4451a90a344a2aa88dcbabf4b33888b68881bc7131ad3d0561652b1d3efb7f5e63556746d3a3b1e5184b7392112e13810f2890c3d21e4819a144e4d9d618809ed0486cfadd69400ac5e0bb364b82a841f5049c96b9b38f10d69dbb857df511c9b46b3e3b2c759a7037500a46b88e2a7d8312d5a2a5cab013d32308b3cda35a2b4011c71de5d4d447317d58a55cbaba39ca86161a0d6c50fc32bd206e9d5e1e27418d449a7117f187237f86506a871d16b0e36b5854bd329d3282a5175704c9fe9b981f1a5010070a7cb6852f1b9f5e22c44531911053dd2291dc839e33126ea6e52b1ea5a87e151f858ce27b3ecce5c6e6d425eb82fdec18f126693f7d650c590cd6a13aac0198fb39b95591aadd9d6c402d915d1ca21837e2c957d30ec7f66a39d571a07ba7606450781eb6f940489c16678cc74ebc18790641e741e9e3a249770a8fc315069cf292099fb38d471248136fcab08af8d694c59676e80e95f7e70fce3f416719845508227674f9d8c71210873785a45544b104aba80b816934850f14743ae03cd042be8668a4fd3abfd74ea05c68e952be2f215cc1c700c3a99352b85ea8980afe55cdb740467af788162986298d9eaed95cb32b6bb2a60f9aec10482f7e2a54ed04ebf98b53420263bdd014a8971f38ff9e51b0f32b59db20e3eb93ad7fa34dae657c6bb6dacab1496d31b1591929f49490262c4f451a7bdbe27a5be12da722a0a5cbc8ef28c78d138a471f4fd8a8f6036ac415e04d57f8787f20dc78c37bcdf66e30f2dbed30eb0f64113f8fad24ea91f8f2c9ff06ad7b6083544d57aac3e4b0c8ffc671d192c6a4cce1233a233cfd1d2384f86508e8c342d0c7a98f9b7a950144570d9323db122e783c15cc6b315aadbe351fb171813ea4b0c30f8282949fa54fee74e1d7a836fbaed20ba576897bcbc464157ba21afdcb3a6b9eb7e5bd8806b0d504a7c90c753bb97f9a9b72970869a4f71adcd009203f95a1460d10d38211d8dcdbad181aec6b34e55d4596f84ad6a3104fd3f8689e1e814e3bcea8506f002cdeb36b40bbb94b833bb34d86c55d4c56d4eb74b48cce41e3d3e74e73f010469e8f999dca90b8a8a0dc2677bcbb225fa226320a72a5453229c10f0abff4c10bbafd18f7ebe932c9999282e7ac44126285431c8b648c1f321161f33ad362c898bea38e07b56b5f48fbedd436d37b9ad59c66738f8d6dd69d61a8b04770847b27aac71ab0c37301cdcd4a5dc801f75fb3d215a3d137f37157e824860e6ff8124bc3fb4dcb42071136e3a1c0c4a32c6d9ed880d46d05440d63607f3ca2b46ffb9432dd288d0ddff7ed3d3eb2f3169e5bf9dbc253388c535b43d84f1041547dbb6ecf5c7cd12e494083090095b934e0e4d35a200d048e3d03ed73f3b3a7bec8b452f6b713192cea29445ce75f6be81a0f59c5259d06c99619cc3850ac797622521a68be77c56667e0632777f9287b2c239e0b4050e31ece9e48a3a7c476915e2a02a39b917d45429e10199bb72e166bf7c98d3581be1b5095fbf179fd52df6d923ac9a9c0d93daae39b24ceac5c5a736b373ec384824cbc4e86f2fe129e8c1a3a9d9194e3b3bb1e88d22f6ac71e79c1fd5fafe2aa7a120f8cbaaeb9afac3fcc06946755b6da1c09535929e21146b3e433fd0412c6238bbeb6adfb4a2cf5ffdb084b3ae1c5a2f3e7adad9dc09ad4080ce29e19319e3f670eb1ec1e9ad9e3b46b52722d136783ca39c6c2e1c5d096878735db99423044514868f47e87f19e910b63a5a044f0e702c9100b88b7fe5b270ccde6e5d4254f987eccc9b060896926af0593316073d749cd7c4adb4c3b24e37daf4e243434933c6e9d02368aa28d5ad039cbe6ee11154f9df25fc409135f7ea0eab41df1bd9d086a82d526cdcf77c9d949a9ed001ae0af1c71c8d29ff6ea9a94380600a1471167f2770d3683874f046967880c121b94acaf8beda96a8fd2ef876bb44c66e51167bc375856536dc33865912e6ef68b98cd90bbb7bf4ae7f927a31a72388127d749f2c812ab42e989921564bab41e6f2654f8bbce94c24b94fe9a3a788b56bc71183becd75dc1eb7ac9240e3a5f163b067822b5ecbcc968ec067785cf3233fbcc35f595da4d5b3c2e28a20aed99b18b059bf6bd39553e5355fcda5ccb9621432f3c134084925012f861b080a7d929a9a0918bb9c0053753a01d85ce2a5bb4fd11ac32677a5d58f7c81c362daa731e020aed9d836583fa26a133ad5316473138b20ad9e2b91e484873d6617bb7dcab7e61d5b1255ed9abb0d20bbd8f4734f4c2c5097138cb1d1c57f5be3e83ad4cf33c48747369781bcbb7e4d2532c91f99360cac58c85d7cf7178ee291e3150386276eafb0c23fa0f22c93bc311c6c6f842bec596d3971b94c591cf24de824c2a73ba8535b56c05b6729c039ba761ebe0a65a4eb776ba8c9433b0e796bf51b044a3c80ffb3bd1e93f5aafd1e32170cc7d628b72b8fb8bbd891b617bd1e7d9618bccb710d8518f5ff49273300f30b4f7ef7178f5b45f01c6ee79fc107834f17e8e53710032cc9bd7f945df937a31615a027330386e7808028b2794804cf37d2319648b53b7cf01a94d7e01c758df75c2e3a70acc9a8c781e2a9e3cf2a09716fc3e18e5040c8b8e41806b64de19352836baa136daf69da4727f7ab3ce32058a5682ff051087f2eead3a2e4d58a6f75c16aec06eae222dd93be56dbcf17df44ecbc3bd4aa304bc3dc867392df6fc7345d38a72e737dfd713ee13f8edbe982694074d3c8780013edd558d0c074826db369c70246a3964a4f9e53ce9fbbc8c94602fd846b6163de0b52dd7388ef17a406de5b081f1105ebe76110e3de0f052f8e080518dc9fa6da6db1ec66d6a6404a9496a0734e8b20cd79c7b7328e5f706e12b058c32fc7c205d91b06883482047bf8765f6c4c3a6618a91a6e3d6b71cd040518f590bad834401c7bef4ca19db236c3e8ae2164fa29896327f13835ad2c5fd74fc6291fd0ce7f45a4a24c44d76248654db24d5879eb40defd60e93ed74ee3c75958ea27bc014c19bbd05b38978d0b5109f5710c25fdaf14d7d20851552064d608d695add26ee825c162e5b9bd0da223cf60b131a625bc39a7c3ddb8ebb9024b23aeade5d2f2d1ebb2f99ae43b3b7a0f6f8edd03704dd763709fe733bde4ef0d7a16ea92640812e4bbf53a4879b1bb9612fd555fb7b4c5f66340d91661e5d1a684abc9fc50c341a2aeea0c2db1e8e82254851d50de898ed0c204e5e1c13c30084c8c4edc1c7cb3caacd8bad96b05b70249acf45f11f1ee5e483ef2fcb24f7c77a9c376a4690514e28fc0f6c289ee2dc55ce2de2c396e19881460cee45dbd7f8dd9f71a4a562614084d8580ae7f20f2436959e070b28c82f4ebc3d2fd3c90ad012c2b457de646d280819a0d41692f97b2d88af449dcc58646714d6c41d73ff37bb74c0504a01b37e44414d8bb12100a77f7a00f05e1a5e92a17770bcc6813faf4202f7ba86f8569b8551ba89c338894814c93bf285a286d5f545a2b7df4c36184be00059431ec5fb7b69c500ae00145b76b188a1452f04a8f95ead08e47dfcb3c0caadef36a064483297ffe70b661988a21e3f82a7c658329f79eff1ed8e133f9656681ee1fa05446906b3cc12292bff706118e11e6e6b0c1b43923604df2cb05ca69b8f0bc03a4ed05be5ba15f8c0737b674fb5669384c02900390ab4b22aaa7bc50751d8e07c62fe343e3bbb65d27428e7d276280e1266d429bdd9d2b90ab62ceb91e2166c78fd08efdd060f2f538b4e5827b613ce8a9efb63217d1147063652cecef1015fcaffdccb005cb3759ac78bd264905658ed052f91fddc50527cab179f6b38bea5ee9488e8d5cd4409c01762f47cf03e932d5061f73ed1284abf78d3ae6a45bdd8672a489519b292c3d53e1cac5e9236a73e4bb286d334097a4167e9fafc1e7675ce53f5f23ecbf551638d1e133725615b601f7606fd67ac92b2880026ebe8730faf705ddaf22cb2b0e5ff8dda08e190cf7cb6ec08f69fbc27b6045782c4e2dbbdec80b8f50504bf200fd5310141d53af24ed2967ab8ab05660475e628a37db10c95b618ce8e61673dc0a02a0907c05c35a4fb266c665e88c6e606dc634a32a4703bc4ecfcf64088b29f802c2a1153d2b59c673699d93f7068f3abf5d1e7572767edbc1c4d897ba102c993043facb3018306180aed2ecaf27b0a887a5b81e757e628a4b6da323eb3d1809f06f281e4f6a21ad6a9dd26690c36c28fce446873cd1540ae8e5ab745a4fe4fd29790f0c3e5b33cda98a6eb50fc9670e7d65194ad30378496f0e98bb95c8605e66af21f966dfc4da7dece59b8ec70ebb550e2e79e84412e733c034576d6fa4001e29221b3d0bf9ff884161fbc086584d3e6b0b50770264a01f6b0fa348d053ad0dba4e9d4f8dae14b2bcf828e87bcff56fdfefe53904006e6d62365199c564483ea2f30f11276293f97be51e2ffa9b0893f2dbe3401b643cdd60a0464cce363641dca6ac6e5361c7a93effbd31d11125348413555ad1a281897965fcc9d3a27546fe69e068d067bebca4936ac90217af1bee3994da799c73686e14bd89429b1e3546c5635f7aa8390939d8990708576acefa50c1bf6b5b713d4fb17109f9168fdc9421da36b4564ca9bde2e9c7efcb2fb7d14fc428501ad572374d515da2ec78039f4f1a1c2d3ce6869f873756c9b9b3b99f7903c8710650702a52c17115acee7e8f1845151cf837b7b83c08ae5615122a85cff10cb887d0245586476bc037e6fb3234c700cf3ba2364ff7947d459219d34bd771f38064226d6ffda6617143c29f6808ef00726951472cc2939637aa97a88d64411828a4cc818fc23363b54aad9b4a8f7a0c07762f8905a9b1ac1bc135c448f6b35ae631008610efeb88d3455a44233bec65dc595aae196e269c625992d7e2ec1af06412d16879c8b5b58a9d716af92a3f23d1f239487ea4e0c87695096495b623d6f485f0f479ab678168d372878c0caa3ed0c2fde5e21de1882a8ff74925b33d56a232c37dd30a4af5e063fd997d8c7016c7702437788504bf3f567327c5dab6646b6f2e7c83b862a0ce89c31c654e363e41a66a47db664033427ea08298eb5f5b94ee3a20e1fba249f386b3bd6c9a5c3668010fbd9915a481b6cfca5ec669a21cf4dfbcc5050918d0153ee1864ad1d84d545ecb1007f1f86f84efb391a8fe11acbaa731064e2a059c0d00ae36288b1f2df1dfa44e773c470915513127f9fb3980185270c228b664c85d01893d319d7b49b9d9891267b62e0a748f94a49fa07b4df1195439fdc5659a6fe8f0c80f6cf6227a7367ceba8a2a4f86c852f032182369b338265f5f768346a61e7e3b21d316130f60252a166bd2900ed541ee6c59f897d91e81f7ee22c01c5d983986c22b5437b37b97e65b8d299db5b4fbe97f4e08638d0eb2bfec55c4f95f27bfd2172bf714baac7a0f9637253849231659f5e102c3fea04f3a3f7c997203dea3ec26845b2de3227542015811a6ce8f56db5c330f0a6c083e9366870a3876d2032dabe6d55e34a1efeec166c1a10bce736c755edb7e71c999a13288d47226827e318ef7157031e9f2293b26caddbb2c34940a6ea162d10439ec99baa15b8edc4f545f248869917ecc8565e70f7825a07c63c27a87aa3cb84c6d26a575e6644528e1e085bd43706cd0aefc31bdda3a687728bf06b82ebf1f7bfcd7e500fc61b2a78c8d8f0512e46e38ef8c1a211212f804014fb0300732086c2b55bfa1d53f67e992cfe3797219f6937a89e9573e69c07761102470034eb20401becd21440a73e3ac32829d574f9dfd68b8c9c4737bb4d553962883bb838cddeee061c67fed1c01b644723c6cd5bc380bba450cdb02695d93e8faf99f68d5bebd962fd5b5aed1d4790ba4c1169e5f6544fed4ce2d13408f0a274ea8caa1592ed5923aa727800384f497d895529702803dd04335545293c171ae3299651254a83239b9a24050486af664621801a2472b8d184f94545cb35237b8f04c94a5a7c5202b9b06bdb5e95095f04fb66d14a4a0a93c7ddefe25632848ad0eeb66fa38e9d5c47aa61d75850a6e9d331f3f2c5a2a3b066c5b895483c4cf5ebfa4796319b087d107e21b6179c7d29c81264214ddb26be0e13fd5146683f46fcc63fa5d7e50517672e89f16d852a8bf23b745c38d1939d8f8c347d44bfa81674db818cbb85e99a0b2719ab62f3c7c7d0d1232b8ca96c414ac26241e2ec9d4ff6a209de47efec957c8906dcccc0f593ad9335d1d01d7846b1a59fb05499fe30f310de8c50361af24207d398281e8f583c064419f827779c6ee66a9d3714728f926a981645126d1b5e30f59fa3839c2be5a2d0b3fea5fa6f0512cdece5c91acde0df5d6b35447062f909ac361af418809618c06bdbb7a005f742a318f0a75ad58f4600dd1172c0bc9f61365e69b57cca172f139f239c55b2f2350eee8b3fd3b7509d83563bcd0bf837f98b9410e815af5ed4a1e42fafd6679d59c618921788cc9a260c0356c79270560658c70a3a90a6e774d3e970b9bb4beadd57539e8e1c65d9dffa4b73d759f26693563b1ffb1adbfaa970816c60175cc9f321d9b675a0db60082d4b4f67dfb302b50b6f7f1f6465f3cd834960c85e41871c422322549bbe341cd7260279e34d14ec78ef92295b563c91a3d0b7a19d24c2eddceaa91b489b1dba8dc304217c7d34b02a634feefc540e9fc124137497832c36605beabccd169326712dc15fd3f1f01673037407df3d8297e1420a48fc5e27e2cb6f1afbc1dc6f34c6c5291dc5b589ced910047ea68ccc44157e2e9f5e6b300ee411dce349c0cdaba8f27834b3650500f2ed4a15a9f4561052c5a2019bfc35f1f31367d05e5404fc8a696dee4f7966d5861f5dc94d1c271d02a82c1018cf8604c144a937ae42c6de19c81b14031238859a6a153b4462bf2d649e2c0a1262ba69d5f2ef7d75382863c20a74cc5e7f356d7f96a7f094c6ca67864b57a095b623aaa57f0723694b1d46bcaf685b7cee4332e04b45828ecf2136e60a66150ada370c7a8327b79c9be236cb63877de1361a7f39c132a8f3aef470f1957435140b2a45ea598986b3b34a4002b8e0c27727601b51df95f1c4213baed725e0bda8fb07942f0ca3fa69a0ee514e16228accf6b2581261fc29df146ea9527d31ab15ce0db45dc2712297f745e347b68e4ef25e363c35256cd27691eba52554bd9909be960ea6c1c7a39efc5030e0a6dfbe576f174a41f47fbedb1ee42033d3d995ea7712fda48bbaaad2044c59e92ca25908f0283b274b18c319d9de4e447dab8097c602b44fdf8c8f7cd2fde327ec3329f2cbad27cb164702d09590b704b45474f61df99cb14279c7872605ac3a8184c5222ed34a77cce6d3c9c643ef41865e98f14e4d92f440cf36b41404c6fea47b5d93a9967e88153f7a809cb1dcd287fccf79b3e79c2f9c744667bef77f9b81c3beb735bcbaba4d4ec22a5709d131d63d3f43be094aa44016c262bf02ba811cf05b5f52ddb60d30264372348a19e2a4154d93316b2e4c4736c6c49c736b6b30a3b8c2b07028fc8fdd6fed30847c74871d48bb05c9a23904c767bf045de0e480bd7e7b33059f0d39617ec7e21daa33d4730465ab0da7f5263964655d5069675230673b957628b05d951ae4785b2da6868a3649174c5c243314735809d0beceb37c05918cc59c5362f053bcb93d9a110994da80ddd98457b376005a1959bfab66263f871b0b3976b31853018e67cb11a3f5a6b85c9b4ab805a207b9666ed599d1e390ed0d5de0dc9366dd018f9ba4d252e9979618658fa1a30e568b61ceddbae85215d65e3725203ddf6e83debdd8e48af814a3b6c1c1c8516d7be5875a4b85cd978b6ed38d82d17817982ff5c8e201a07ff0ad687faba73a98ed4a179dbd3fe4f8bfb023c797e782d0955653436e9279cb13567816945c8c62bcd8f7cd6fd305b790588a53b873af59c9c8288f3501bd7a6145e066e76abd8ae29435687df3b6ecc9983cbc4f5af9e6c45d3bf87ab09d3dbda8c28b1961a943ce5a39ecec0f53d799057af1ddbb7918f470209742a42f0711a5d72fefd03a8cb456f8dc38128aca00f2d4c62ec6e5b6e6846a73010564c9b5ae45adac40ac9d31f2d7bfc1a97caf6a9a5870d5747225d9db21b9b6f0a00f3c05f407ef1b20735fb8072da3f3d9841c000d76caf553e6a9e928478902ec0e292c1a4a27b84b33e868bcf459aea0787739c2c46e6b5db75a97609cd2f3a3056cbbef199e24ff64dfcca42b6c3933aae0b8e5e424eef99eb72ad6f440d32a76913f9b0f7892ed030846bd2e1025fac4f6b1e31fa130449310f1e9e8f6b0e4800658cf0828b3eb7fa60f3a2a3a10c4808f872f0d5f5dd2bb1d5bc0eac572bba8db5515f73621206cd0aaeec76d55736534e1c54030b128ed91b96a6f7e4012e7b5e679eba0170816187a776f520c7630d2e51b6d2dff2ed9bc23d2696c50ffe0e99f4a04f16f6f5d3a803c0769f5d06c6281d50ed5220ad46802bad6a19104af685c558f1cde8c837a90d7042f88f204dd3a0df74fc7aebf68a51396a514ac0b9c3ef0d0264258073297bd7abb790fa6e2089cc146b9745eb538cae46de105c7c6a219a32f342b111af3d68a3bc8742e4e4c1d28c8f3417ce46b0f8e51d49e313d01cf9839d75a76859a8c78ae4b093c07aee68e3996c3ef4470b5e13fb4c5af6e626179f0575d17551a1b2662543734fff3963df011f7b87a2904681714d0ca5b16fd3e005f9f18650b03e377f53951c8b94bacbb9931cdaebe1601361019ee692b271af869e8268524dea5ba78352c3533dd1b3e8c0a9432d6d4008e6596084108734d72c78bf7c01c7eef57baf19ebbfcb37f8cc1a3f0442ddc77a3956315ca258578506deea1127ff3f0fa74501e26ea5886901a778f21d9c5b91666f23d8cbd8ab2135398a26536c336126208ba090149b50353e7864c693a7b0d5634af9437c40f3171f50f92f5204509d1129e9a6fa1285eae7c518629c50dd121f58574f5b64a8ebf6aa819d77b34d03f743b5f4fae8d7a85c119248d69870ff0b02de2178ee3caefd8029402d7f4725858a407b45e0c1eedb0d2fddb7a82eed06594890edbd9507e4aa8f315635fee5c1c0e83e5242bb91d905aadc4bbebfe3685f6e83e827df9798b3116424d6842cf092361c50d4ef524e5a8ee560c3e69d59e7f6dfcd0adb10d49ccc9e497fba6df60301fa3fa527a8ff7cb268f1e3832739593b371da2c147e75cfd9c1a90227879b93d12087fdf689a6f0c3ae8d3a982069cfb3b902d3eaf787a42aa1a0b70b2fda5334cd85c3d3f8535f841c550863d673c8f503b6b27b36f387b16f282e1a468bcb87c17474610789cae1d7b2b7cf949f57eb359c9901902c90c68ecc5744140a9b983b7de6917c1e4192fabf689923cfeded495782f142933dc96aa0ba74462baf4efa9705492ec6a79b2180518de69e6e0725b7cecc6541a3490962b92c99f5b91e04270ffdc5b4de6e0f2e7f214093fa465349cad879e0189b2a3da06aa96180057ad0545b2e868d5e5ad67dc7533d5aa928a4a8f3cc06b23e90691d78f35028a4c9a817320d908019163760a1541ea53b9c0c9099109fe5b5f30fb06b3ec2578fe0284ceccc15bc77778fabef242eb387bcc9b15823ca004e961fb505559c29b66c707da74b0f68c68e0cf87cd2326297052bb35bd13c6ba7a14e8826ba471463c60fcbf84215ba9d01ca55d1826125c627b187beef9e198a7e15641a1d8ee01e969fbf05e6930a9ffe56f396372aad6dc59f2bb3037eea8739e85a69c95ea8d7c7799fb62dfb522b1167d13353c0508ae67a06c837c03cf80f567f98857249d96518c0bb01193553bd0f6fc4e45d885f323ade6d1a4f4729bd75ff9379109f0fbf144dc478d3bf2d9913a005c2f7d0c036ee6497fe57eb01e454ff97b85a23d82b39129d9b4cb54b3ba3168db2c418c104cb22e1769e9b1ffa9b64e8340cc1d9e8c397de1c40ef6cbed7e1ef20d698a528eaa5128e344456c3c439ca754bdeb0fefaf2fb4b3f77d432c6eb09e30b12005ed75876bf473213542becb91502b4d0215fb1f6510121b12af0fc718152237d6f2979e4ca7611af4987068072d1ac5953becd48476885e25de287d0f1ab06c168face6147da4592d10200bcdf3596d16800d18420720a4fd012c271d2d15e62d1922dfbb4aee3ad2e25504fffae60e25541cc4cef365782977ed096230fe8f1f40ea219f454308ef3eedd81a98ea3ee4d83b325d23ffaec423c192984fb0daaab0625d994e90b0d966ccaed4cfc2dd42c02cc56ab37d328d5ad08f9808deaa34a91d92233344d4359ad459ef11a48340c570687b0bb4f80a962554424a40a6652dc4b2989d767b6d65aebc42812bcdc8d049f93c59347f5203656d276bd015754fddd6919067e76cfddb4f2155f56e82bf4d66a06817955641fd052720ef6e6ac6c3850b0eef9ea8b170d5f81ebea0b7f67c216f878315e9c2526d974438445fca193a0c4215756babcc519efc2c730783931732e8ab342215c5bab318ec6812f101273d20c7e5ece5d259d6539592517c225b555c14d56ec30738a249b060579487670a883008d53b913566a4e0261a76c62adef1549d7463a5398846d7ae3321830962ed56430d25b68839d9e97aa7ceae22b65b1385721e442adb11474fedf4f89c63aa7834f6ee1aa05c82569ec446ca3db28e102f7b31203fcf3937f8390de20d139b9143ce4cccfcac3c60c005dabe50147577fc6d3c1839c543f9acbd55b9612c9317f1c94b50e7a6797dde243f37b07a2620a887eb2601d74a318b6be8afff9583a72c823a083e242c423e3b13df59ff2c5b921a1a1aedef1b086a2ceb56a3f0b46b3ff7a9dddf1bc53505d18e9fc677e0f619ada01cb1f0626acf158cdf6b4bf159a160af75443e2311149ebc41dc31185d8d21ce02f04723d6159d8a3cd6d62d612b1b4edd3d4e37299129b1f1af6a6a1714c95f3dec26379d57a143ab79a930fba93e665825c90c3b5e9acc9221ee5c320a3b487a25425a9bde0ba56814676bdecd283be11538b91ab6105d00d8639e84c1240f051b8e6d1a51104bf2036b5262f0ff95833d051829f4d8288f2894c43f9d67dae0a1872e611497c6bdcc3c588e079f569db5deb27b8cabd4a3943acadecfbcbecfd7f30292ac2c044d14e66f81c2f4fdc7511c9ed8e7b9ce4cd0d757e2a69f0bfec638014b5e68d53e1f6409b5169be30c2ad143cf6d6a5efb43632bcc84bd1cc6f6346535b99f3254c36dc802b18d423cd12b4164ac0637e4e37a546d3bdce26c4cb34337bec6022245e80d386fa3364f9b53da4db92dd4d787f29ab9ee61362028e50529950e89d925a6a28439f73b874d06d859498cbab26d25df62b17af7c2237765df563b5964c8e6fb2cb41a01f36466cc3d087acb32c9a35fb205897f9a114d6cb37ef353e0ab3956dc139d00059c6faf77a5e5e700b96635e03804cf6f494f30660a407c3897081546b6cba23f3be95e9d1f63167023f76dc72dacdd8c7dee2a0526f9332d9665bba970db0895834ee56c41b24f29ccfbf13ac0c64e5c3f11371d33ff0e1a2089eb260fe30143d2a860fad2ce6cde26bb46aecd2d53eef592690358a8673fb0447a36737320dd2c86bdde0a27ab8ffea5e9c9c0675db634fe04ab5fda2d931b050e3a91600c1c3a102584745c933955b64f222f7adebbc9634ed95b6256289b39dda3bbfec7c33243f46be525e189d3c310a7eb1b7f1abbf32d7cdb4a53dd03305c664529e06ccfcfad8c11ae39095ca4ae69547f17d1c4ce094ef4008f94cd4d7957d7ef2a546e30ab5ef7de67323dd541fbfea9556528b23441b6cf6bcc05a795f159f7f430cd40f6ae227dfbe0403d9df31c2181b4a1732801fd8502073146ebf3801710dec4efdf082e20043d61af70aba822bfe52cc4234e3df6cdcb8d163bc02f56b2e2adece6848cf8b4523cf1c724f4df5224258c03fcc6e233499248526a54c6cb1dfbb1a383582bdf6c709e86be91f85b39f3fa639c281bf1240ebaed538f51046165049961b6795a9a803468ebf4d667df9bfd22996337f14b28ee069443ba4f6e3b13269b7adecc81d80106b6f0e4b3d1309b292bc6e84ff7554fbaca188530a34c56d957da0c966b6ee7c091fb5485dbb5b26ef172f5c8de1287e2b098bb6c7efebed890919a455de028f384e622987f11b920e99495880e01364907bd363c027a151c0e277e3947117420396f3868d6b15a5e837b9a55e79d98fc1957afebf2bf20b2a53b7dc1191679967e22ed935091146b666c04163ae05fc90f359638f9640e73c2cdfb17abe60c7c6f00b37f9ae8ec3036c1bd08f34c4d4040cd8eb394828a6d78cea07dc0dfacef47766c52605776644cd83a560419849a5e1e665e375d2ac574a1a00f5ef087a7ce10765d27f4c2187cf7640d5220579e9eeb6ac0d72099353cdc31126e0f92a4e540b4a0d1e6d56d1d6b0ee589c7fb72a10ecb9664267114dd9ad1e3396d4bd440887410cf34060cf428b1affb0d3d3f80027e2a457404712e42eaecd9d833961ed844b7e9ef200571fd5e5206b29dbb1a35dea4ff62926af866001c822feb1ed3f1f938ae61443735dba002d2f404309a1d87778f0c27646ff73a63b2a80d3cbc5216de0f02a81b2b40fc31f96e98d01f4a66b487e0f6e009d624a41dd635aa0cc7ccd559eb1f5cc5e39311c516090dfeb3e69142f1865eb01f5a730b883c92bbb895fa9510ee6e5bc4f02790b604c939131a7d2666707b9df7bc259fdb025060e83b2748f93a106702a631cb37aec27b0000dc5cf81e1d455d39ae8e0a5b742ea836421e122465f0d30f5bd562dba084cf19174c99d6bf81a483b4d8a96a8f0e90f6457114cf5d793b800faeae52fc93116ef800008c3a194e1ee8dd26190a867c5db1022a465175fa27a2318f1316b8cd5dee860f8388e0c17d37fd8e045a6c7ed4b444fa9f47063c9f146291852ed94331cfc2622c785bb91bcb18102382184009b06290874ae4c8541124a561e757881bbba2107e8c9898d012a2e42cdfe218b8eb032ce518c4b193df5080c8fbf6e4d48dd032ad135397ae46896395b59d73cda1a186cd3533dc295200803a23bfb4b2bbf7cf7437ee786567fd10c164f26771848df3c14ed1805faebbf41cf2c99fbbd8da671b8ebcbc0fd34a63f17825421246dea72d03b1f264af8aea46b8c96ca2096075f10b354d00ab148ef16063cc0319115b4456c84ac99e8df772b8b3f3b7214b55886b28802a359c78afb938a553615854ec1f1041f9ee6443932b9c45078ced4b81f85c18ca722ba1e409d9a823afadfbba35c81bf6dc3a25cf96893a1e3d47360efe0c7d4ba75fad9626a2507bdabdd5a7692b4f5dc4b585e8c4dad164009b5682207f42c7c33c96be54378ad51f15bdbd68ed856d0e4de4d8daea78a184d8d506d4665ed9738b38495a31c794d85034783b747c0b7779b8f6e8ed9726fc52e88d2fab9c5e03de68980b8226246a50affd498047d395b61a98d7f16fd331032f9485dc5ac7f1a1a3f593a497ed8475dc3b007403695049370b3166cb63474c75f4636d9a87d857f69153738d09aab345d94ee4d1f7c44091a2e309e0c8ca0e46acd1a51ebc20368b8be5a327473badf1420a36ec65c1a3f061eae2e019f67769cb37b6f24b25b6f9242b4483eedb7df9042f93cda68f355922a746f578643752de500a1bbbc1cc54179372b34b8176cd744090c22974852f38111d4cea76e934924070b7b7ecbdcd4e9d166c68de6c75af3451f1fbab852b83a373bbacccaeeb935152172a5aff8cd53036cc66d1138a897322eef7be0c9970ab84d1df79ebb69c0fd85546e528f083c052a51a65946e596f2627c1833fa83038a583af012fdc04d6987337c79425c0589c573f2dbe32193362aab61b4ef5ecb31ffc6b56d234ee10ac6939715c8d8657c70156dd232df32cc1988d0fb056e649f5d1b81c9003e29dab4d6130454829a685026812a68f4215da44cc6f044c6a48b6b28931b25a3adb1695a98e5b8007b5b819d7ff5fb7365fe3ac67e238663e41b95ce861373e3caa568c39cd90271394699b87e9b084d41219352d1b5f611e22ecd210f345d16fa9f5c8fce5036c1a653980648a91b27d28cd44358b04be4512f4aa22389049b38f1d24f0d8a8fc55022a87644d9f23e30aff020e129708af907c2ee05d56a98cd13578b4ec498a7ed23db7d0d084055d3dc21a9f321698a881bcee1dc54fa98e79c3edf54e799a1db43145cdf45b90976d73b8d0d526969fb66c0979ca4b6fb11f9591efb6786e5d2312a0eb4864d21851e1780447aac786a264b1dc14bafa53f0e474e131913b289629ebf87476206d649039fac88aa0b72e04af12a0d8910c391d6abcc95b8faeee71ed926a1608b2484cecd00f50e464cf9fc9f65aaba0d043862efd62d9d3f362d3a19d4b60bb3a418e55d2a56f8acb3f748a02c91291ab86d6573de6bbc0a1283928ca28ace87562b3edd1baaf285b4dcbef68975f78f8b6eaec3dc30f464342f81109b578da4729eac35b0ecd17f719aa8b578d42523ad3a2930e8a4eb6cbcc1cbfc200deda5a4954cd649b4b5131bb84d1eb1291a3a146cf59cb40a75dcb6901b354920aea0f0965660399ea0be67e28461d3f0688e426a57d29f2045c261590cd14cf7c1dd13c4d87aa128001d7b12b62996e684954cd97698b5b8fd23e763044934d77bcb62c8f0b3d3ce7e1cd6f96cfb4f819312ff69b5dfa67170bc4c0cdd6d0baed4997635e9c95ac3ee8c6dbe0ac39caa1f45e77792d97e043049f3de7af8993d671b12cbda5e8eb3353d529265b405096b68fa0fe3a5c0a94f698a08fbb4003022d513caf0451df756df2cb9a4f828e7fe54b31858c7d1f0e22a3ba020e49ce804e5f492214d92b5243b96972bfed0c316914c2d54cd3b4c8c24f8a5c02679afdfee539cd3379aaf2751a6baa63b2457d5db1b8cadc7d3daf771b0abb08ae52ab484f57c0cbcda3245f0eae74352c5fda4c6dfa81c9b771a34cd9c15076891424a89467766d045699ca5cc3d5850716b15891d0ee77d5fc35cd9bb36a1c493027c808413643e788b12e0d2f8951390e2b5689a91ad00d9c4504f0fa596e7dadd8089a327096181afd06a9b91defd2f23ab0e126dccf8e8ad7d359aaa9c40132b6ab6c3f74d36b01759371f38bbf753ba9c55a7f43bb3a30109765193258bff9dffe295e310e97da276acf26c64a5ec7fa5c0d5972be78acb2f6984b3e927c5798ecf768249f0fc975468be24060309caa8ba209851c9242a0eba8139f7b8378e06044512fbecebcccfc2c42c95e430a384c6425ea94a56ccf4e254fd7d988a79b6f291b947731a9cc28e40434b8cd5582bc5e25e6987edc1c1d0d09771f7c21894f022e3721198393cdf42090140f45fe398dbdb092d8bc2dfc716a97401f55a6073d66de0404d422543cc3009c084352cfeaaa248e12c03ea0b2820103d90a49086358690457ad75939d081a61d4cec312aeb6a0c2280e36f31771e4a852c6003b64223c4a84898a00da8678e81eeb78f3fd1977a588a2d600492078f3d935eec1ec58a0b219feb539bf82fec508b64cdc3bc7e77284038ca90f5ea509afe2280af401f71151d9c99c5a80f3206d1ea3f4f2adee07e8ab98712ac922b5fdcc7a35c30c55b6bd9f976aa6a953b8a841a12fae87c9f36af13c36387177c494a8ffca534aff321b7078fd52fab2a34eb5beec610513f81146cf28d2b09b4bc52c1629b712b1bffa68c77b492e630e6829a54fa738e87bb5da5fdc38fd120e2e80772ac6162d238b83e63c54cb452b42b6dc3548c4aec3f97d47775181ca35b55195f91538d51d26c292099d7bc0c8dbc9d6d4306e736b1b12ad3023b402ad0f9a74f2515c46ac8712ca711d89fb06b3a3798b1e8eabc2367635c0ba9e32dc4b1271f78507e6c722228fcdff54649dc9def0d559d0fd1fcb2dc1a0f26799666588d0a25f37055bc4dd97d69fa2651dd17c307d0ea97cf74d6d7883d443b12843d6d38da22e857c10e2cccf201014539b6ba991176f3a975cc4a0509375e6e186dcb6d5095c808ada2fe18cf32fee7abf40b6c3511bf578203619414679a5dd484ab843de13686043759e3ae05929dc7f2112a2efa2d3eac7f796b7acbeec7e7ff871a134068f6f0c6323a4cbf95819e5499ea3d565d624af2130ce4e220e39544c67e49d49be52399a66fc3ef470913fad1409857b4a9edd6286dcc2fa31742ea4225dfe47e7c9e64de4dba2e6908647e2d75e0b1557a3b189cdb59c04be4e3ed7864ee217157bc998657e4d630ea0346541cc6dfe60a319b45c7655701e24c154b69fd01337015639db87f4eca6f4726ac5a2a41b523dabb11267c16c73603201ac40f770804e7523af9077524a8f97e27a7766764ffd700da6651f1d1e53fe9437d69270b71daa10b09f655fc93e30e37569e6f3e33ef8b1483292681ca5c1021211b66dcc4915d5f91e9347b3e9a9d6208c2b000f1beb39e86b899071ea38a21d6880002d1673f17ea4dbddfa1742cce0472400382f36b003c76a52f24a568154db7a09bb95e1f86a0ae8612ec10244f373abb3958a2b2f8dbc1347a14f873030c5c551cfdaa88dd83bd12850e7ca3b4414a46f97275cd0266d1b4a203a12b3af4f0a58976d66aa40137386a61f533fc2eb09132819bfe5c76e91f7678f54c27355cb395f5a3cad6a305f4d994ab6c4a7121e7db732828e58411bae36173dfc7dcb375be16e084315329921ae07264bb0a5c3e9d0b2b63c82717c3092863c9e93ce7e0d7f9bcd8b3a84c8a3070ab6a8c81ba708052ce33d24541a16c2a052606e57fc4401dd363c2ccc5fdd7de5dbe4cf9b619af50b00eb82d2441e49c7cade73a5ec5e8f4bf259d5045cb2618d7021c7a1d4f4f3ee1f70b9d394a9788ca0e63ac9e23dcc9286bcb8cbcc19983ef065a26fe7da16683f927c31d7814f488a015fa459353b8991dfa6250fd7736e8b4fa629cd0ce852623710c8094533b7be2dd2bbe16f41f157166af9c3159223c80ea12399ef188a3ec043b2c849621edd4c76beff27b7aaddbd336dd3bc3af91b0c2c38392351a9280d104028cb26a300822c4bb9462935a62233faa376223da506a7837f20b354a805367ae28562a666c328a4d0387b9c88bec7c39783e26fcee23a3be07a41f1eb14228ba29e6f7048a2e4ee6e2a4843560a8dd72009fb89633ce8508849de0a36f99c24827328197ee1c3e9a746fdd8ec6f21c3a2fa08d13835bdb2ab1807f063d94d7ab5ef43a8a4852a8bc34b9f3c6b0e53829f28b59fa26ec4d96c32ea57365dcceb72efba6d3e060fd2bf48d9b2a941aaad02a9ddf12232380af72db023421bf92489d1f0e8dd4ec09e681ee8724a71521e176c7b8ee0a9804cf66f98cf9050c1b14671ee615f8eb370d76dc38d2f3f5ca50e0c88d600fd725cf978ae642b6685ae9af26d58455626e66950424eaf5c779253124975e46aa089b82c7ae22828d5c13d9d998b953abe746c48b6602fc7f49dac7cc211dd556498523efb47daa403ca964f67c8467d84c4f435c274beec2042819522226f3291637e4fd8027a0be64f7def6592f7008ad37a22c42073250cb072f3689194d3d9df4a91d29613f9418aa429816d2d4cafde5736a518b951c65dff536caee8160bb1bf187e473658d145c6591e03ce2abb15f163cfb233d26dce306b2584385cd2dc7ef859d520c23e66b0f93217c5813f74cc4c1e8b5438654d7ac1a4383b9fb48cec897de520367dc499bbead20e952def6551b3f6e5495f5cc46210b59058276f54ba18549f988e6b43e2c9a31da5ae81e273c6c9e3e2cac6e528ce2bc5ddd8e20003780133bc3732d3b90f21f2fabce6ee29f5916a0d0524ca22c8f939352ade1807d0bbb2eff58dcefbbaa259cede7f1826d896949e12de8491d90c3233520d69347e0163f9a4d3b4d25aee0604a3d8746950abac0d908c6d5614f8a53fefb3a1bb0f090cd3fc37d2569892823f12405025f43f855162a9ab5ad69f25375fa4cdeed2f486a6a52556245ababcc51cdf155397974d60bdc9f2223c142e32116eb740175c94964ff0251bd34ac0228f48cf275db228c8e7317972481b13c07604c5dac42e15bbe47d8cd6a5a3c1cd1c20c01a94b6717c40a541d200a38334d0c491d5c86b43669512631cf3ff373b78d8bc3a254880b4efe075357e85c750b06095281cd67c2a58e5b0748354344926f6c304264b8e67ee81fa3dab3e8fabcb69074f9a55db7fb070754335e4b9dca474d51ed5b2155654747f18fde1126912005a27b083dbece67aa71c5a1bdaed2a8e70534e9d2c82f4666d7cc57d7bbe9b2f5a5ef20394f09f56536576e20924f5a6490fa30fa55a727f9be33f8b3d6711c240c0c97bea57a6bc09049cad672c4d70021b7b1d14b3d74963372a387329cce29270e03f8792ae823535cc3c64e436e2c20eb468aa4111246dce5a6e11efa2c0953e4a0053b2ee27ca2b724ae210e9274020739b84af8d44948ea59e0de4b2cf714629b946b98301d892cbe2a73a9b42a51618d75969b74d84d5ed52a381814c3e57d6fb0f7f09f24334a5828bc4d394124b8068fdfed834aefcd83c19fb7a86be9b4eeae9166ce10c9d6f1f82e47688b4016a02d4e05e35a594712c74d3251ebd5c5c68c823e3a1c6ab21ed9d36f1664e3df7fbbc30dc205865e05228b00ae103bcf678ed49e5b57d0860b4e484c0e8d53645d0c0f4f073dcab9f02da75c5c70160dfbbfeccaaa789fa36693597e1d66b095ab42ee0a7f701f6657e023aafc9f285d0692f38145046065f8d0b3429b77b291cb4860a572c18759bfe9a04a7ca73aafd3c09ccac5b663b729058cb63d12d46ad01d1064062620ba88c280a9b9128348ee1fe6fb2a3915c510461df82f6a766929a95c2cf07a4e322d4140d829c71e34f0d2549557c71e1a2e4c28fd88785663fdc3150a0af07c53a0824095cd2a14b077eee44708e75c19260e698c305486d6f38b8276d5610df760a840c7dbf80c7f5c5fd042bd20fa5f9597a1a83f47154c7a8c8720a2d481065e601b53e945b33b5a936e9978ca44d2761291fc689792dbdfc1aa1e45a90932823b414674f621805e7abeae9a6de51685ba569f95d0d33bc7b513e0b1633f39044fae7971fbf0ffd2f10c4dc3d890fa40e85a4b6c3aa492415a576a7ab8ab9191d0a3ca9b3e83252d035ece1fa82dcc7d5ea776072c3669c9b7362a62a770a087a5825c10a11f1d37b927aa97d3a1a66384a74293b723ba6d09bf0517eedcdffb17f65330369e3ccb18cace35197c99618254b2653aa0fb647c2f8aca6660c354d80223d65b2fb33cdd2fbfd1ee90905067b3c58de0a082cf9ec1a78e12a04cc91fba2bd3a0cafdab2ac6d6693ca4744d26872753fb14aced91607e90924df188de2527cdc310859295ee697a532e62ff44119769932337a0ba69d116861baee244d8ae66ebd75048510eac2b267f5f6577317dcfa4c63f65e946f3defaf214e94d8323ed399c4d5f78573a4ede2acc94169e3eb7ce16c212e23b5ae4cc8f173ae8007c78c6a9ce5caf439b7586a493a878f80b4fea546cdfc39df079c39c0a9c6f3b3ff53f8e3deaf3fae5271d1711dade435c021104d8f121932d8955b590720fae765026b11dc4414612b17c9974c501cbe3e7a593d161358d1dc9a6ccf62a033ab1fca0b771885629317b2814768fac408a6d1e64fd3d75e8a30823e49a8d5d4e891fea8d462da339261125210fd328385c7ae972d92fe0ad5ba0e13ece0a995557a08ee6ee9ac80993fb2a1b97f07cef73158e16dbcc4ea24e35588c47508e82364158c82f84e43e9371f1da049a6cf937166096144a0e57aef295bb56c116086fb3aea254d78ab3601cfbb05cfbe21eecfb2e50979a21839fb66630a4c9f2d739cafb3b65d2571c0085ab9b761e942291f0edf1a5b6dfed078cd2e21c62831144cd137d8e88458b5ae246020e143a4d22d658f11873d4695cd099ca3f2826bc13c969e2eadaef367129a9fa3c48206b9c06d6000a2e53d7768db537e2824eff53d8d52fd5345f4c05a8367b277cf66091f89712cf1138cb2c8c5114aa6c2212f08815848e2b42d8379a108c1363bccfe532bdc32607248645302c2d749162375e341692625823258288e963a56d4b9ad4446565eefdd5b84647c590e3c8bea950c43bc414d5c096ab69902f1c5fa46b020ec674ac181ac427daabc632d922d95c62b57d7c4aaa63408902f80f27ca8f447241163d4eecfce9dc21d7875f64f6e18ff2524446c40a0e763ade57d7938c85ff23d56265be473f1df409596b7f8a1773333be0c51ee08a8f7e89ee22e8689b0e07b68381723f9a3da7accf4d15963351d5693ed595b417fcfd58e289203d279474a0aacb6eb4c6da59235a0863fcfe2040484a25e8ce83bb7f5895b1c7692e73f4f28f6f5261bf6469c4abdc7bd0e15b8d33b785ca04887221c0ce7a0c27a3570742bef0c2f0139ec83cad350e33257f719b2699c0c2b43197436d43ff4ac1661853e87efc83504a257b358a3baed690e64ae2b8409228889657162442b1cf43ced15785cc0669e6fff475dc42d9c982dae7941d7c24f2f7b914cb9cd4efb467bfa4b53ef6b55eba07d84a9cad8a5b36ea6db32de570005eb35d2c9b771e441e6fb5f1c01719346f71520567c48aaf25378caa80108445427113aecf930688e9c8f424c5cb33ad8301b702eda66b2543210737eb07fa155f41dd33760ba0fd22bb3579e0e768bb2bb716dca688cdfe9b9b6472434790875320a8dae5a1f5d2bce4f18372a88ddf4d58607c4e0f112e56be58e349c0f13864e72f1d3d9edf9cd71f6008a063daf3fb28d12ff89e6414b232b9133ee00b250bec9da30f7d768fc22036a3816c62834c98d79358a4c09669733025f5033d3a1c6d02710dd4ffbd053941a62216fb8b25515759f0d3bc6987f643e3cef5e1d4fb8687206f0874066b89107986a89743a92826b18169074048b4b3fe8d96f8f3be90107140a9dbeb6dc610b258d49e10dc99367ad317f8a18dbc4c3424149c4b00732441cf0127345b8eb3501da62454d63a07188ad80b1232b69fee5a28e58f77c01927157bcc7cfb29c13bbce3189cfde943b306bcf37433453faf56b8198b76f87d0546dca8b97c03468c1657650a626d51aa4975f11e6525aa90614324c75e0320030a05b1c3b76fd5348f70f09bcd2646330852ffed1f64052d0e1947929d77f3c9e0813bc179bab025d66da2943bd7aee59a692ac003b341429e6432d78aaa35ea02085de3ba4cd460e938b31ba8db75148ddb5a0b7de14491b4fcbad14b9c1a4b71c3b5a264e7c717b3a88d019e10571c51f5cdee0447eb760e9040c9712c9f6d98740cc7732b81666517a1ad2750c6e4f9359fc2c2794127801a83e2831a4c6f5e2a1ae88e515073a7df5ddfec9a12a7db185768b43db43d82ca730af5cef2a2a26036166604401aca517719a6c814de5d1be682901f896b6b19423c4b746b63a6283200c466f179cdfc40fab289642251bcdc51b141a51134ba43f44194129fbc1deb4053f8410e222aff9219f4264ccbdc24db239bf0a15d5653a6b1c06ef717ab72f84a2892c4bc228114a9c57ec9d5c4124b6b99204db1fb315bbd5e3e1ab632351eb32a411651400ffd36dd83d68ff0a4a2c51aae4aae5778b6a07be48d222e6be0f324960ebd3dc9049d73797bb2c864e0bd84678b20e489c85dab9f521e3c38d0899cc455b4f2311b1ffde77fa7337aed933189ab8680451202fbe9a69d0e2a573db821c16960bcdbe94d3cff73f85794d2b56c59c936c13b381495d4e49c5a13b4ef23afe787c46e1aaf8d7d1798ce9109a7c4c660cad84df893114da34890ce326a833bd98092d84eb787f1d0814f5de1c2b0acdcd457e92e54e8cf7a879a892baee60fb9919f5c8aa9d1afc6340a98bc86a7c1808021287ce95bb28ba0b3079e8971698cfffd236e024dbd69402ca388ec8596bd984e33537017ec852a0bcd7d8ed4c9ead7a27d0bd041939a9272b0ef38298179b3aacf0fa8e23a4e7b9ea6f74335d7f919714e3c73f6ba88dc858bc629710bf42f1eb315d12351bce6763476e6302446a038ee77fe1624600e4a3e642abe8d4c290c422f401d2b1344fda6a500e07833dc764f8111518abf235cb62ca67d70b1d16c6200ea9296b1111eeea146e34b14c9ad431f62b51c7be4404ded74e17bef25e5ceceb677b8d683544a917a514a751121ce3b339002151fa18611ce992dd19372fc8edef7ccace6087a922fc49dd22dc64bad6c9a4152b14f661720f51ed2d004eaa78d99834135507512dfb427f57922b70b10d0e3c0fdb25a5e5270fa92c1cd97997ca83c44f500e692619087279ed22bda16258103b8c2c30685dd1818625c0ddd76f52b419cc0bfc44c94e1ac631c41c54f997332ce7a00871282e697615cda8767fcf089d1448a3a6fb2a5e39f5ab99dffc932da5cf4fd9ba4d6446ab9086e8f84d21389907518c1b3a1bd4cfb0241cebe2a3ee5f2f7de0e2a52922f0411dd9ba5bca7662b13f7f4566167d4ab0f1a43a8afe5e729fd8ac86bf15113d83fdee6120ff87eb6f3ab97f6225051df5d9e0df9d53bded4ecb31cbe3ff6fb57af3ce2f029cff736ded99a6a40a3b8c596e002a92efedfb5042cb58823e12a5520b8e7d561e04cf007fbaf4f20e1cbacfb21f2a2a948a43ddf1629a3dd61d01e5cdf46384f2b4ef82797052852428b085f3649f27ea63030f7837ee84a0e8d840fe6c74f917d3fe98cac5aaee3effdbfada3ee4aba9c1d5c82372804b2e441eb1a6220e51f040505186245c7e2d68b68199768ea3c6b855f6948836e669243d002b431620e4edddf5774429fc12ff3ca924c94a065d1fb544ea76b7df511bebce548feb6d8460d674664843693955d665b8c719bcc46274466f9437d8187a449bc854ab8515ba638d159849d33726ad7a264af4b924e255d44a887b7148cf3b3d23777fab8c082c9d58909cea5acec0e16b655c9724cf346243ae8dae0d03d01ec581141874be2bd851f0fa99246c160c7b843523ff705c9c85530bcdbc560f26ab93a0e8a58886e7121dd69d3c86a839d5a7675ca93414201ec8fe43fa13866783f6cd4241ec238cce39fb7d2599bfdf7d55ea75b734eec48ab00b6d9b2db7ef4b05dec7f68e5814a5558d3c3308e80d239a75ed3fff8e480d5dfdb247b4002002b47c09458450a93ac526a210feb462ba6401f220318c2d413e010722ebe2822feea1fc876eaa36fb0f9f954b4f9b81e194dc7f2127f1015228196c8cf612d16662ea9b23c41082559ac35b43321b1abcb196923e42a76be5c24d14288665dd7517816079a16c42bcfeaf411cfbada8db0bf78b81b476c65ef7273be0e1b86d7b72f84a6a5cbc28bb3359aa082b3aeaa37154a4715111583377ba90c9aca7213a97085cd7b585a96078dec457839a9b298054a06dde0abe8c0e7967c0ce8df94cebee4e3edc2247b9e387cd4fb89afcfdd55d00035eea64edb317d49884e1ec10b465d9b496af763defce7970a00220c1d1946576af7465a31159e18954f6b08aa1690da0a5ca95f4245f8868dfed5cf6fa96514f6bf8d143f68db063026fe74abf318070a4ccfe2adee7ea05cf42b7c79f2a6eff2b6566ef79bc6be2b2f3e0055fce3b3c448416b3882f8a61c15f0e05f06ef9ad2ad97f960380c630390ba419b760805de37261d8c986e653571f6f9319a455b959bf46d9951e1846c7771a1c3109018e2c70ce93e7e48162a10e6467929ba2323c1e1a2ec6bdaf1ead8d23b62a63d5d0c5b800f9c422bf1b15f12fef08876a12c6b6aced95d6e62b50f57681936113d6188cdeb6f20ba76591e538e36e517981a4df05a247aa42e347b3eb199a9e20b20c0da5ac7be768105becb9a5d120a5d8d12a412e4120a258a1dcbe4096b41c19b17952bf1550262d17d48aec512d7e48e0aae923a25ec71dccd7c8859a55d573ff7c035421073f07010f384df99c95daa3d11765ec8998f92e820f04047f0c184c7a6fe38f9b333dda54569e9b8bfbd8ec6fe5873034e7536fdc62c575b8740b627e79249f40d7565966125415385f28d2d9690ba90afc3919576dedfc0242580e736a2919a02b0f94d612ce050e5f1305e46e16c84c193b5bc455508866c8aad83d571ee8f51e2e7f24ada43a341c1f15e14715199e37de802ee326057273bb6e3aa8b30d262d3cc9c693de71bc5a58552771dbb9eafffa35f592f173f04a3c2489e391e91be52d7b14e9a6a044d7081967aed217a89a149dea7e11b6be4dedf847397c7255e714fed641fdce41fa88d06133210ff8e5c6a95e0ea1eaa9dd6cb2956b3f06aaa83b53f2782a2de62b81e8f4d265fc3775367df114649b2f2d9b893d9c9c48d8ca386f2f5a4e1e9cedaed6263df5cea0ef1a964ef64ab3996ac3bf64a1faca2e3502a7ab945ebe06db8f0d6bc6ad6937612e464914ea23b67c4233b7aee85ec61f6518aedb279d7b8c12f4eb74eacb61431d0f0e153fd6cced319d6f0ac2dcc3b2109c11e8918da13f28b3ce71dcdd90323357ac107a201771ea3ce228fe1e1edd26e6799500786c05ee485df9a394bbcbb597d75ee91c540efd48c2c363a5159804460ff3041f4a1ced382c350da547bb654352dc319bcc43b629654a3545a7b1626d93c4a8a35846d826250c1714c9c9a71c49c86b84d5c576895e9495bda2032e5288502a8c27f73b11afae098416fe2aab39cdce72a4dae39e5d2999eeb3014625ddde7dd4936032ba05d532e66cba3e2ce4b01daca37479a5d437715d37eb61b043295c56a4ac469def907d1547898910e6baeaf41e40ece25af9052b4ecb4cce96c5f292e28eba6e57b528bd615fb45cec956c666353f6125783852b7d20622340d5b1a137237c0e4d622525b714cc814173fc18c4db956657cdbfda5fa74cf9caa8f4573cc3b42e7f8f466ba37d93cb3a1a1eae083a076eda4cbd226ea41a45aad8e7bcaad60ce6a3b5e6ccdf232dba40378caf7e9dae6dc772763cc64c0f29705302212db4efcd95345df5633bd5ab7433f5b13893d1b6626a2bf4b6c2173c28c57edf1c13bf9e0bbc8edeb8031be62021f9f22209c0f2a53680011c333ad06eac22ee4cf1131c80b83823b22b68d321283eff3be004cd71f5145740232bba3b52405d6afead0c6fa77ef587ec8eff15b0216c1e4d2723be1abd88406c4bbcee514481856de0856b18ed67b475e40ee5298cddb399719a3e3e382ef5e8320f7d0559f39fcc29bb49c38d2d9a365cda2828732789ec2b7c2c7a6559b0ec2bc08233c3ba53669c440f90b48e27aa1bfffcaa003780f2123929f3a0336d0715a13cdf962d0e85fddf5c67e52466b7099920e7a7f987dfc91e008f76dc010f53bcde350faddce6e4d80797e527cc66b1a3bd65745b3590c87945806c3e678f6fc5d7f9c6807d8c8566b77708a27c186ef59c8df9dc27be8100de877292b210458cdd60c404225e3dfa1de69287265434aa2faca25246fbfd5609975612cfc9549126f2d8eed13362160ad73460620ef3323e4973da28989c53d0f172c06eef251042fbea7b77231f4d1e2e3dd4974351603d558f2a031c601d213201cb3b170921f2b2d8f87a14e94304fe4e6fb2f80396c0631670b5fd2f6438a6d02278945fa3004b4319f325b611d1d473f35822c6272ee3bee4e20b2c0c0bbafc8b7cbe304059deebe22b07e4d2d9e2615d68da31b7e63065c321d3a78f326c4c31fb92507e21f103831a7134741ae081e121c5fe5bf982f782346906a9f13e8cafd69055d4ddabeb4fe346b56aad16186fbdca9969620129da311d005a7a7ac8c55be54cfaf879b98e7b025a3cd71880c6f93ccb215eb93c50611a5cf15d7f76c02c9e14914788118928f5c038babfd618bd462ff46e4e9b522cf145d309db7b99ae371b9b5171e45108e93f3fd6aef70202848059376c85fbd51fb08cd88780403034336bc2c8cd191976dd9def17db9ed71bab9c10900dbc32772ca7e5668d7c40306397bb388ca947e63324ee3c9fc09d504d0842c8420fefe57b1f7489dd5ffe0322d74b8d73f25b28cf4d491631864b1bff91ae057c7ed7cf7f2e63a412ec23ac061f27c9920253e634fb39bfef2c92481dded295b229a6af2e08a8e63f459ec7176af72e12026ea27f2d44768d7b2e9fc5fbc71c391e3df003e8bf70f4511eff4dfe93cd319938199e7a47597e1288dbd0c7145f1691cdfc6c22e329e1a0b3a971e83e1f319835b58c993130bf4b19f3d9c4d0f633907834f83c393ed9897f3c37f0bf1a9b385d2ed03dfb1f591ae688881d674ca21aae84e2c397938c7fdf2553ff8e6960f95bf6c8322abfeda989057c2aa8edfc44f87fe5ba4b2fb173c81e4808ff9b713908f5162d1c9fb2a65018b5bd71725c824fc0f71a9dad360d6b8e3f4b8cd00fb7c7dfda0463466dce10ba3739b501521c2747a373e8a9c4c3320d421d8eb1b10643231bc29ec38283d90063cb3c6e3ea0be87ab054284232f2bdb22cfe12464f48e7f1cbfd1193bd80dc75cc3fe440c12f22a36b1d565512a8fe20c27080d872241c20e20ea7a79a13fcd184874bdaa98cae980b94e718e6e9b7b4701b0b0c0b278d1ac468b9c1c27095386b3884ae246e6f9354caaade099779f1f7f8484443a86de96dc77e6269430d684f3e3a34207f96cfd6d3a647c9bd4d1178c926148371042fa69648df63c1d58ccb027592daa8e4a0e91f8026a7984d84a7033b42d7aeacdb939821ab5a3e8f0197ab061b5e0e06a22f6263b12fbee996b356a1caeb70e9983cd32e2d383e88fc680b2f3895848f7b73f2b857da6828929038edd9ccf13208e5c28f8255dcf10dd734bdda9e2487803676f5ad7dbf933269888c330cd68e8357a43ae938c93d15b378e45269a89f990238630f7b5fa9e284022e375d98e19f91e50e65368f0601c14446bfb60e1aa97ecd34eb8cd4b9c50b45fc62949bb01aa4ede64e7cf81eb962444256a24badd200eb7914e7b492d62581f518b69989d6637c6d27cbb299f82d899047bf972669d753aa79fb415781634ee047951b71ce67697b13463e5eb07d57af5de33272db4d60a688176ed653f19860277df9d6dfe85b88c03eb91ed97933357b4f4dfc467604158d2b4e5802298b300bd45fa9f1ce3efb749732d66f2707d01be9741d181260bde8c284e9a58af90ee88291549bd5962b78779d184d1fb8b03da0d22a7514946d777aa9cb014a4892143bcfb48740222b463bdccd32d25c7247171bce5c2bb8eff674834c96f1532d00b370823479d645ca6507a7d2a17d70e5312f03873d4028cad4030c65727fd9457d3ed3ef44921247095920d4b31516ba5cd8cf51c26067dbb821c5b032c223bc46d8e49d02287ed532d122847cd023da72f3c78f9ac9faa9f93a7a75f0c2ccc1b93748fbbb14d56a4b7440503c5e56f34f812d83146e055dc8637af2b691a843d14fe2d1cff20fb2993a2df968f4267e24a0815df838143717604d34ab4fb02d7b324a3183e093a005d8649200eecc53fb6c9a49ba2c55493ced10e01bff9191928eb5c87ac941035ab2d50f7c7f9e2a09bf3a2fb0fc965cfb5d26c3aa5122ac0adfa79780ad67af294bcef549dcad9c4cdcc5107dd0c1e37ac03b866144ef6037c39ecf14fa31bda3cbfca403353330afe2783f61a8a0ba6134e0d33124114fda9d1382fe7b9a864e57d2083b735233590a915786bc5c7ec0f35aa1c99623f606b7f3037f7bb1efae2e3d10375fc47188e06e4765771c2fe0cacd5289600c6c8e791c0def7ece54d4429670d93b916fd9d0e1fc0eb01b89b37ec0d616ea3176e7ba0490c2e57adfb3aa7667ad27da425824bbbca4bd9da2722e1a06f88c45f97a7e3c95de7b4f88c8c33a1e91196efd7b0fb2407a9bd98fdbb13f1463a010a3758366f3a7375a775d1f48a652f463be46af19b9a4019d11aa8564d0e0944ae48fae13a25dab0075e74ab133c2409b639edb36f3cca639aad8143076a8aa3a5a85072928a54fc3c04c81f96c011799b20cbd48bb27eeb57ac00d53a389a0924f3f0ef4bf30f87d76afd1e9b10a7e04fb3dde578c7a0982fad01ffbb1130c84c93ec286197ec24b4d5206a5063e74bae260aa723707410fea3403bb335b75d5607e4d852640806b97bf3a21ec8b6f6dd99f1758ceca0fff8de1c67b53c0cceb822df8bd4537b5cfc41a60156fe235d61d952567dd1dc51fdfbfa805735744db29cb17b610ae45bc835ebd228853e9a1aa945f9f72068f42b7ad21cc66c516cd85cd23f70463505670d044c2512c2403f75c6f5fc1763951c2e922e4142753bca741c2b34cc227c1999aa20a93f220d923bda48838ce23baeae3162e30b7009c0f6e5c64f893bb61b6702af40866b70582923eb53c4d614ea15dade360067d50aac4ccff29ee1e72db05e6073e0599f2aba5c3aa3d1097927d50c825358ce79a2e7e8df1851e1fb7283f106b66b64a6323526c2ebd96bb91c2df1b65d49198573db5a17482c8504438d2fc0674c1bbb29d8d353e08ebc9cdea5a601420fb0a0422eefe72ca19c92cf1b26e3ca07e662c775ffe4064db75562dbc352c05d1a0f308623b67178d6dd83cb49cf13f0ecf1a6deb4e50dc19b979ead0c32fc4990a2457bd950ad8d84ff6fa45f1e0eab6a1e6b44a76c91b0b4d6ee9d293f744008d735ced306b21896c7b609370592abe96a21ffb7754bfded97893b8bf683543cb76e65c1adb648ef1c62e397ea9d318e2bd6e32e4174791f3e7f72f01e6c21972af71ed22cfaa589bb25a3dae822e18dcccc808da509458a220d8a3c2a486835523f1dac25c09314e5ee3304fdc181850875377ce329199e657401546e1f18b836c78bb924be74b641a2b48df68cc39e0d2ca30e5e7c81a0998add44e8d832af1955237e3a8cfa7ccb87b8a552b929e9148f6a7418057efa81f219f819401f495e73d47d33e6b51c2d0d41d899cfab9f98e3b1e87e2669ac1621181bc3b061f8530b21168a04925fd49455a7b8ad3ec01747ead76cd2ac1d279f4e502e5f430b311902c02a7d912fab6d981c6f06954fbdf110501f4a428d25b138544d662e40f0f7d9b9f9060182b6ce36bbc6c1a388b38a3c3ecf97ee017838d76c824d62ccf447a57b6acf559cbdda1a4be3edd5773fe53a1ce419de8d16088587129b2441952f8d1d587d1778152eb73d0096eea95a5ffebb479d57751ed662d4b6d01c32753af64afe6d9b17cdc827bbc796a4e20aa265f55ce54405fd9a8077865d0d443439f219778d5f6c8b07cf18a007c12f1d8b3c4f1bdccace9f4c7959896b2920359c15eb38de05155d30bb6a849de3455176b7deb97215392b1c2584b4f904052e67af4b48826750170a4f5c61287831ba4ece32bd0cfd2ce339d5e5cab53a40283b584f0dde854aeffbdf0324ddfbc2b13cb46c7830a08fd91f50ee6786580f6cfd9d50d9330b55ba2e0c45483bd71b48eb24d0f54b7c047ee23bb57f870941981dbd505507174ce4b436f339ad78289cc38918719d781c5296f7fab64c69a5ce5f6688b7a35de705fe05ffede1574bf720c39d007be372475c3e31296d197673cba54754411e0312683dd40c835ee3f94e5f577fb9dc051d0f9fe399905917ac4401a89bb01dbb34943c89d5b27ab62285d371a1eb3fce3eec1d7b5e0a47bde5c3b327a4407a488b34d0eb94d297bfef1bed05a494564f4811860f0be624ae610e17f717de5ecce9d73531e82d3aea436c1d016c3cb97e5f46dc796a3566c8894799b284c78dd9b667e3fbecf533a1beb5a64ae6f29818895241cb1441483413e89d4662765d4620db5d3b716cc57415ebecb31d3dfc762b08650dc43a66b05e55070eaef838963f08e2ae4fe75072432a4fa457dce280a4c268f7843118fba1ba592e554a93a1fbb6eafeb88b055f6f41217d5c6a3b0efad9a8bbab250069f6bb3395df51ac7477685fca3016893a9b9a8f6db84e0e61eab4ea4d64526d3e2bf87ddfd7507a72b0d545d1ea67153325079209edbef2f2e4b572061f8a61a1a49b69d81ad7713ed2c291938243689864054d607d4e98f7ae597e775a056beb144b21438406706d11ff3bdb30a315ee3250d5266c8778c68280e68b79750fe660c887d819bca73e5eccd45b6853b8a84fb628cca42723f80dd4eb121beb2a0050e826b23e693d00343442ff29494ddc30c720c6f75f63e8ede4b5722c916742260c31c6ff8a7f1378432e664226982024b9c9f56bd9551bdb00ef2dd9192ae1075488c5c1b664cb27f9d727fe64e47c05de61dd48175ab9619cd4c3c6c901bcb5a9eb62a7a865fbfda960b46c28cfae60598b87eba1a57b395612c4047f4a5bc765f627da345b1488cbc79efdf69731534993fb0ae8c2744a2a99478da40eae67ddf09a2a075cfb42526b6c534a727bce7af2de635482dc62819691070b1aae32452e2e9ea1930ddd5c18bfa657768e06d1d7ad59377d0c3c90d7d8b07762707aeb6b4c7a703ed6c5fca8da1147134db0cab24d822e63334aedccd6e789579678815d9dca0d0ac8b7c62309a76214f1ddf0224a87b67a2312908a5167f43a2ae6d051db2e001077d24d2e2535c596825f46132fd6c8bb3b57b797b0d01d36d26336f2db7420cde0f193c797cdbca4c54452162b47d71888fdcd06dad88a21628ffb5fd96fc65077bd2b5f55669652957321134d36110f9a18b8a73ee2f941a1f90765b381c32cfdbcc535e10e3ae67fae59ad559beddec577b5734872dd654abf46ae2d6ff33f9bcacfb1a3a7cc08df2f7a0d4ad74e4428f4c2c8497ff936b19393daf410286adf3adb1d0a39dbcd587aeed4eb15e60d551f069e090eb842cd9ee12f8ffd51b62a5fefd6c1f0dd9f098929f4c3a04845f4c9f5c942860b1fddf4e82026c6ba2d45315be97c162b9de511878390a7b5df6faba0136dc5ba69838ade663c7573b0afe34f4b363e0afa0dce572b0b65dd32b06609c0e4fa45351f8037896bbc8f04b0fb94afac604dbb209e897b4a594189856dcafdd821443e0afda39fe0c3526040d3b826af4b64c60ab8037bada455de64585193f8df570bcb1fd2f26d6ece97f19e9f890a8decd4cb2a58f60f01ab4fadd557f2301b0a29c2907aaac9c25c4677e7f57349c35a80fc20dc6247446e4b22b2544ee21cc83d8e8939ecc3e538165d8ddaf4004cbb17c56f62011d6cbc8dc5d70edc65ee9728a4dbcd39dad30edfd2dcd2e5d4e4dc622b800f80a966cf05c894e30059f8830c9afbf5c2852c2e9771a7530010a2e958a19c0d435b58ec31e6956666e8fa3e34326d8dad59b466c7f5891b6afdaa8d4b4e30dd10b3faf23e24301b56de57fb5c0fdd09a0a63bef8d6fc285bdbe6ba51d4bc72de23211a86239b10ae7803b02451a413b89728418c13dc3b43f43831a24bd29fab1634d9ff8ada23df53a29a81b8635df83f00fce80be4a6f948f431fa0aa2cfb43a4832e996d2c3f33bd9dc13d3493eab0522a8277466ed81edcce352e138cd7d34e19c56c07d4490e81dea710a01c1bb6f3a8fa8c345177563d24a9811afe1e60043c5e078742b2d73fee5b125b071712464ee25101993e37e0223342d530864f1e60ca9b3c9d2eb9ae7e676e06fcc7a827b904df47950ffe95c5de5454c51fbcf4b5965293327988d5c3866726837b55299e05499d917574315b6ec187749c2f49fd125dbc8f3ebfdfb82266a9d7fdec01e2080efe2305c6e15b1ff26a72ffb94a0c9611cca5a1144933ab3b7cf55b6b2e36b2baa37d0e495a49ecdb2565cf3db08bd510deafc2f4e95f863a7e26a636629ee82f87cafbeabf4c34d8a61ea63081abd2bf996a6f3dc9326d6ef6adaeb0d34f650d4757cb65c713869eb8aaedc056b913d4956084a4fc56ca3bdfa7cc7895bb99717a7393f2bacdc88cde10e997239230f7d272635e9a4050632b8ad71de36b614ce3a1814600c4256ce14bcc21c42f8b0387489b83333c0814c61fe4e4263bec7ce83e836448f51d2fbf7cc754bca9d96e0c94b441a86a8225d9d64f6b60d54426b43c2d145f183579350cb5a5c5ca33396379d388b385c53c433a99874a654190cf429106d941331c0b5e2f7e6a664e60ca6a2671accd2a55a02cb4fe2abea6ee755471f74d785c506c8d99c003116d6d80a1335b892eeb1f8c78b315a3ab0e7568d6f9ebe14d8fb7512bdcc0639acccc5f29daaf84dc7360999b73e9c96707c19216d71c6be745d7e0c410aec6c23374f4a621d7204e121a61b888fd4bf39599abf804c8b3915c7de1f06bdd98dadbeb86a4703205c651456552243c0ef179b5fcaa6b89161b172e284c67063e68f2a2563ac195bc5db75215621e79c84c9d59f3a0b0af6bd5b19d138518ef5c624fdedac3d42d66e91a545674aa68384afbffebb1f41e7ef76ff984403f58e60dc197f5e31743a105640ac3908ca1e22195e4082187c1614923f38bc227c9fa308cbfbde5dabbfc6d6c246b2cc8240bebdf398227bf5c8bb6b1dc3867d240a6d5ee944e63bed6ae2e3b400b00e99f2856b80e45a148aa4cc98989a9547c9393c27d7a87f0cc0031ca7e553e822d016fec9af81b61ceed5e55b78bef8a1206342e3bae121058d5db3e23436d6a373efa0cb75927c69f9f72db454a61622d05a9bcee3b3858e03446765d34824966965615086dd106cff0670a01f3820789572fd6a9addce8c51e1e0ab31fbab2c47d29f39ccffafe0b67e48fd6a5d4bfbf58c9e13b10b63a623ab26d02487e779b69da3d4af28362856f0c99386c414e335920924ec28bacfe8c10fd00500a40d73a3322a0a0f7cf797e44ae75c946fc7f3081ad00e69f315d9d9920a7067f563c4daffb951414a096dd184e7f11bf62b42aef28a9d7f4383b7f082ffc275d0cf24bc6eb2bcb1676bb676689409b7bf0a1a349fd4f547add2c7a695ce129642cfac88588e228fc540f508e2676349db08517d8474ea6b64a7bb43a94145a788a01a284a6f5ae3e340559dbede982051b18bbcdc1c27428e9b3c963e9eb472c4f475573ff7402572c2ef9bf169ae279e90e80e2d6b8f1f3c5c891bebfa22118d2c424bf50a88255655a161933e429b437a4a6638e1c0beb69a458c46f4949dcb5ebbccb5a1cc8c4b265ae8239b707c808b4be9bef22caad007e53e2d06872c613c7def9a32e03344130832e1ccfd7d5c089b7f005d7761a48f402fd188358c05ae5d843ccee7432f2f1cd33e00702482748a47a572ec0a69dca29b482e92a6f8ce4c57e3c041674602ab18ed49a489ed86891422c4c0abecaf3ef90fa9c653387830e4d5fe05ca242ab24d59845d535ec4c2afd16510afa56f580c70a5919d3f2b1b32beb2ae8677d4773cebfc9faec6c1e4adf6d773eb3c0379635b9dd6048b1084e3be470ad9b76e4140d3a5728e9afff895c84c73d45622c60423fa471228a155936b1741311746d9f5eb703470d932376d93513082727514f09305a20cb7448882195f5c1954f7488c6199ebdce441bae688bb082988b91d7f4ad671478877efcffbd9d4853bc849fb23e2829d92ccc5968ded4abc0276c4cd6f06746b6945d2d08e7e3ab0ae44930acd19aa9bca765b0870fdba7208ac0661e6d3e5981622ad88f3b552c9fefbb0aa85d6328ba71a1fb79d67302537361d1ecc7e623f2c6a8083cc33779cd03dffd84f8061ce4a132db2459d243fe777cdef2eca50df597878820ea95e4aa28c098edeae562aae40d7c9f0429d87ac1c37c6e185c4d97020cefc592fa13205237541fe53fcf9b7e18cc42d9f32c58ffd9874118ba51f19f92986ec222d6bdc8d0a97ac77c1062b3d0b48fbeb2aa9483c1106021d612ae9c1ac7947f08ee4cb1999aa6d845d09efe03e6465d1b56269b97bb339b07563d31626ff1dc79d3d8a399a64378e1fb091b2ab68d3f0025fe016fed34cd182aceba62832a9d85033115efb219c4ad5828318ca0da497d2364433ff97641b90b50ba59ed647bf98ba0505b4355888fbbbee7fbe1633c5d346b2547fd5712270f7d9670d7c362a51ea4bede9b3238838396b3f1f566dd5ac94e77625dd7b0872cda54de826249f733062be936741f92b5515c00d571adc13c2899bab1ec8c2802511015c32eca0ad4ff3c463fc7ab66b3b16570e574cc9619455890247b0dfc6af6d66c322072894b16da0f886187c37364287a3c330f61e199071fe4ea33e74a1cab08be2d8b3278af816050cd2c04d35b78c1c7f667040b98a69649b417b244f42cf17d7d5705803b47236159ad79a7e6ce2f1ae1d085c53128f1ff70fc206c5f1724fc342e79daa488b8bd6432668ecf5f43163908c9efce62b06ab4e99268652f225a674b33194dd967bdfd8a354dc9d1ddbbe4bfe287513f960f956d78695e768ac84e730e834e5f8d300409a165d1d1c0f8420ace1db994a3ac37ee612eb6e50269b104a1d6818a4ef06fc4898876b72bf393dbe950fa35f111a881c25b0ec6767c6000aff4216bf6d9385c733e32abe9663a6a8f888e890de39865f0700dcc6e60662cfe87dd66aceeb200c73031d90be9ed146faaa4b09780a806a84c3eff13c5fe33752641f8fc9dd517c64ecb773181d768d01a4b67d54e32adbd50c5c2a84587224ef7ba97a59874d8be0c50d072a4060b7cc49dadc90689c49018f7e285532ab370e6ee72a3fd51e9f71e79380ee5501018744678ee1f64e7893e9c83741cf33199cbaf4c9745c8807e67deee36d4526c8fcb9e8206678d20d43282049154275011052613f181c19e18846c6b338a0ed7fcbd1b5c2bcec4f2ef47f22e504228174bb578e454cd5ad6670776cb621fed2be509de36124a9eed6d0b72cec8e7ef2e1a88223ee207dfb442fb846f5db91ccc4312ab4d2dc3b0c27d6870ac4558a3cd381ba7f727079e13b805e4d64d768184aacc1d6e51512fdf1165844fea201bdcfb5b95a4c055dab9f2cf2362463499c4c9f936486392f161354da26c8c18a427104d157011cae425ec1b8d931a70f21944e6aabefdb622d3367059e7e476a402adfbbbb91539a1bb1fdf4979923f67a8cee02c256d20f2919d1485ca5311dc07b82924318d70616d923da634350c4d247cd0c1d771bb716aaf18a7254b15b52c98fd7ce516ea2f6bb734562eaa72e200c1f8348415b2016f97408e623cb14d333603110c689ae656462f25f44f86904f0095178b2514bf1de538198453cd06d4cbb3bbac6df91e48139a3ce1bd81681bb9014db92a176459001db9caf21a23cf8dd0788db14f56775d543540d9047c6f3c16e45d0f2f52f5f932846517249bed23c474511b1fdb383e4f48823b3f367b2c9e1f171887fb3fa4098efa4ac0f6b7e42e10f1c16de06c75a25d46139209adc3eff68027e22b18f2027d6185e8b6e22322baea74a32090932936949f62719016a9f3a6a2ec433a6024bb5aa0c6c8b9c3d282911c67f5a49ed68a7b5ae9fb00337f3e1e54f6f47bef64da2a6dae32af58f581d98761f076e1bf07a76681529916634b48c45db1c14c27f1e20297b9a636fc667138298e02c01d8639ef609d9fb63a6f7d125167427072d81040b3f1e07af90b586ebb77678fe28437ca23a70b61932eb4a33977ee2252c1093dcc1047cc943aaafd1ab01bea8a6b2e9d4886cdef401d38e131a0a379416350cab0ba70d945ebcd999a593b57d12e4cd54551ae1ae8a86cb5c96be262073ba1a23cf162f59397ec2122d97267d659778f0678f9353e75e2722b15deaf3908158015e96518207d6b071ce8e885761ab3c7233c88f1e5ec3e6760101f84445da76e92ccdf1126f12cdedeab80bbfe041cede99b9de04587c90cd509566f35177eb68e1c5ba3d6ff46ab862347705556d283b3037bb88feb47919fffc5cf739d3998def9faeafecc0a3e52f0f6d3e13efae9a9730e97c12f0ac91dd104596a3de3421b7d63ba9be4c71cca6c2a6ad95fdb23f8fdd7df359ffeccf3514fc95644be27482d702f9033c37a08f1022423afac8bef9b8b5618649ba08d6e7115442d927786f45ba2513d81b02dcb4a27c83708d48688581549697b53249832f22a17ec334ad2fa8fd9b272930ca551d769c2fabd362654d9d4a1465ecafd6f1913969f32e9f3bfec418d6c6efff92c06bdbc5eddd287e682f3b7aa924d6085874e98d1b9f2fe2838c820d41296e757d75452e75e2040e3874dfe8e6953d2ed1110a0f939f57d28c601ef07b994c5b3ae57c7e49362fe0f8afe0e11669523e60326b4ddc23e5f4a5cd5e553c876f349851c9908efc9cc351739c601c4cf9e59290ef934c98c3640fd6e41984ca25fb8e4021cc3413e3c4a6862a556e2b4e43f6765b662dcd39788045780feab69163c6e8397bf4fea7f979be862c8181157302b58b82af0668e9792b1180c1cf96c13eeb3de48be48f7f0756d947cbdcbfeed862298bfe2bbe54bf9e6cbf4c5e06ab576c55fbdfec941f9113eb516f2062edcf211a4dbde7a6f9d60f129dab3e7ccdca3648136ee96a4b7740c581b7530f4a66a36a6e5e75e86356cea8f184d7cb500c8dfe5f35bddf2a43e05bead262e1ca1990fa9e433c8df870abce1a76eae5ac40f56aa0a971ef3e86b5add88ab761c97ee5e738b61ac1932d2ee2e268cbcfadb9110c21ae35b8050d631a99568612eea1b2fa07bce253f1338197c5177f06693f213382e891ddf72ab844511b720cb0dfb1585ee6c30dbc168c9ae5bcd9d7d3885fb2fd046fc8049e0fa884201738de6b24208b63b6184ec863f4a97308e7b8b434f9ebc5889a65a458261b4c57cd15fec4cc42794753344286f8d9065e33ae73ca8c2c37bfc0f81b1b7052df29d5f14cb04d0867a12d851854c6a611ee1308db801bf3519f6f2a1238859f8ff10e080b260f2631ea09e41fe2ad2af8b396c031b1effae9c1c76ee903b63a6097a441d0e12e32261f18839d02bf3eb015d0277e9c9b283ddf9059f76faed25ace4421e873665ee355a8dc20bb64f1b3c3a43d09f0204ab44e642c988891a6cffb3415e225a92b7f259846c93f0cdc16ac11033a6320677f040fa7e7674e84ecca9800c6e5ad88cdf4a377f79993edb01da9ecdf5d0cc0a5ed2a756a8096a080823df1d2a3b37eed9c69146ab963815d0b94f61bad5bb328065f5a826d939c6f41ad32b0566bb0c4067b1974cbe28e08bc9ba2f3d4d6b625962b38eb3603c612b2e5dd68012e7812002b1c5770d3e05565b4e19b22eed49ebdeddb37bbee000eadeeaa9ca11416ec36dda20d0ba1fcbad716abde31f804cd9e29e66a53a6347f2addfa3e518d43fec4912de40b7a0c0f2653993cd3bb381ae0e6aedf6ef707739667a5e5345bd99a84b8cbbd73d06313a2b37f56ddda0fb8c0d7dee39aa3ad01f020f4c896308c60ad7d80a7c984db097bb045abeffa2b57a8caeb7462488c61c04e291313fea08535cbb348739f112959ebde8010be394a8b5a118f424122b31332ad3c918c17fd1a295f0d397401f611b0c246c649fdf0317508ab7f624cd4e9cba218a35f6775b540e66d827e50a800d0f80ad7ea3370323faf66fa3e0a7d24a3908fa73bb3077ea26fdd00e5b62e44ebd05ba2438103ec30207e4a18926dc0ba01fb058bf860183291fd9b2467d764014f049ab6894ee12c5786030e9edb319748cae4276a5543b6bf5ecd1e5f0a9c3ab8fd1d55b30938d9c0ff6e3c839abdf0afe7813a653c1a1dbea91a2a50abd2e3d6c6b73d600bad3277cb3d8bd65d8e110b5286e2a8100b8fda5a59bee43d04fceb30ef0d8e6a026477924318c202f0b1046d543051376e8ebb65aff8d0cf3161971fc5567bd6c686d261218be36d21d4a56783cd627f5a11a3dba71bb6a2fa6bc4105e5dab6efba80f21165a080eb6d1271810365f83f301544af71d10f0065ad52e26a919c3de91af03eeb8b31692eba422d335e04bc272bd5b126aa1f5bc7202b281a919e0a0ee59dd44cc9a2dbd616c5100fc5414d85171a44d04102d1651db69228c97a5aabfeb132fa438313de473a1046793195ed81ba690a277a75dc86fc6d58e4bc2e16280508d5443392b5cebc283cbc94775e3a2dc74b6a18acd3ecf1f70f39be8209e73c755bd525ec0cc3956a359cd9292bf9d3e01bc58efee329973b3926d1d7a52f6a38c3eef9361cef9971234480db93d56ac848afa3149a0df002ac2ccd1176f252f8bd523edfb225af346c8db112d4ca4e287d25f1df51d078dfda8c032ec3d57593e002da83967b5781351727036c0955576f8fe3e91db040879371479f3cb859d7f9372b6897bd59df2cca193f3320ce5aad8911bba215afba8fc862b858b01e39c172a876f2e76b16239f9679e9d7850583b56a96150d0b09ae0c775fd0405e4f7de2578574df22030652b91eb1e5c6c70986f33e28c58a5942f9a8cf31c052f56f3d2194dee3957043e17022807a331a96d091026a90a3c764a5e34156c74124246442cbff53de4d5e7eb2757eb421e02545ef58b08813f5ee6aeb09fdb03cb6c64bda0fd106344c1e0da2e3c8cf61aa0961926c8f54b5e0e77ff22570875a60dd5110e95c53a31c63c0c8fdaad47c4b07eaef2b9c65e803e13c9cd9b2c61487e8abc978cd61c06b247f2c3cb676d5e328e18c8702456e1cc16206a353de478687d94f7b13ff704d094ac51dbde05848cc91aee358f63ecd5d69e61c8af1aaa239df87bfb222efb601c924744dde10238359474c04aef813e7676102822aa538d18101d9a4372dd45c9e31a047fb2feb60b206c4dfcb5f8ea35faf9477fbb5b2b632bc2b43640a821cb2ebce1cd686f8aa759f80a720f6fe11c066a49e41d8d041d15160434f13901a73096197d33cc828834488682c25fce5d57fa0ea8d794679911b0744a48ed01943262c3beeb2c3c604d8ed6a226c5865139070f651a416850d016bf26d0fa74b806948a7cc31fca13712959716765a8efe63857ae98c42e75ee6704b95544316377857062cd6b6095ab6ee8b743acb0fd52a0784b84adba7526546f93f2723391aadccb8a87f88e84f63b8806adb9727bbd1b90f7790e655a8ad26f03fa7230d69439838ab999285b0a08ff95bc2c283a52be91d862e5e96beb1bd79ac735642a1dbaa6de70d9a4f7abe67e4a57c07cc5acf4ac4c310bc65815edc09980fe00fc535ae2a1c5235fed5f466956383eeafba339a36b7f036eeb4ff73818486962f697eff97a920908fc7d35d1e0c171f8bed1e46c9144998103e0a905316433351cd709c15b4b84ad4700207c0c0af9cdc73b201a03dba86ef2d8a18246c1c850b5a13cfcfa7546787b6307af8fae5dbbe899c689d3fb263cd6ac3cbd697e0af3f7acf0e5fed7a5e5c0966c5c38a40195884d4f60825a7d1fc08063196f99e604e440f41222e6f24a2f84f1fa9101c1b6011ef1691406020f5fe011c15349bd017a318acb2e08be640d8ee9a0288939bfe0c5744421ee2d28099f43ade8114153ccf762ad4cd66018f8eebbb4d2d4ddec86b8bfc60cf0ca77648771e5a8e0e08507537519823d16dc51734a81102dc301096080e540112911894fc1ebf69b4985191fa7d7d2cdcd08c9a3f60b15d31520db9a1ab76b17bca8559f6f94165f0467101550aea1940ead9f5c5ad5e61ae49ba1acc5e49e252a75bde67badd2ade153d9a462940df16cc4ae4b26012262b88e811d8de2f315c847f3567ff877fe3ed251d943aa77298b4c6a694ea8566b348b77cb82bf41375dcb376e4ceb162800b44322af5feab5ad8783743c834317f7179cd38298f4a47f3f4c82237a96f5d2603c32ce89a31c7374398362318b2ac967dea164483a1a43b50f85fa57d22c5fe4ab246c25edd70a1b98ba521dd34df6d80b0942c13496357a52a80e1b935a4431111f7ad33acba7debf41f7d80b8b62685a17886681a296ceab57071de2e988b37e1357504fdd7c5af92ecaea9999f2b64324333758b4585b7756c3942cc4e5d554e6bd27aacdc7f25509d35ec923cbcb62849171250058e73a149bf9f575f3d3d22fc4878f2e3a7fa0ceb490b6eda3c43f42a7dd78adff4da8d96cb3aab876b4646d3656aa4876f59026c284ff026b4ba3c445ac44cb7cfda76dcc256173f9672d8012bfa97ca7b492fb24b375ea5dee054d8e7a3e3b638ecc9b83c833423f16d56c34d71bc9d0c00d9340a6cdedb11277e1ce126e7e6a955d7a2f3655fbe58655a168eba181627f7dea7a55acd25148791f765c318ddfafca2d6da45a9bab11c1a6397512858b8f46361672fc6fae3b963f8ae947061bde9cb97e041e9e14325c0568a62287c742f22b9661d16299f9041d4042eb14ab5dcaa40f2e65a47e164bdb1049e204da8e3c0eaf8de59e5e9877bd6ed3c8eb42980455c6e998e80516b3e2d194626dc111e832d3d7415aa8f9d8cb40f6417ba3bed5f23a2fa8613746ed2aba092dfa53f4a6b30408b5e3f46f4828501d578b1739050f442444b7e4f388a31b980f5f784fc9e47b2896945e06c680d75a6ccd8ae73832affd245bb2e63f9eea263770260dc12cfd9968b71356164bb0063756e1a8174f2c2e262a4a748cde0438aeb42f4b90aef25a2a44747e10d3f9a46e3c2cd5ddefbd9abbae28435c6393a2f180f570657756c3f0e8f7d84835b9bd9087d7df80695096f669ae256411506fa33a73eeca2ec38d834f4cda9803609361c0d92ad85824979cf906b607931825d6ca70021d3c20ed466679864e88a86305100cd4650cb5d487bddce1200fda226783e55dbc938f6cd7a3ed4f805c8a2ff6e1f59a7f96997e1a5605e6b7400771bf41d6f390bb6e14a0d14772ebb8ff03b99efb51fa3fed970bf723b4722355587b7ff3c16a315b1a00668bea1e5de492619fc8a06bea505e24557522a7f023dc03c1f05e8566aaed3a6447bb5c19d66591a030f7764a5d88c42260418853c44da64b637903830a6d57d40ed91f1a9d288e04824dbda742d5fc78ef2255bb4a8ffe454c645196b840f31e9fbec04533b24684762375a3cea81f2ddab143726ccefe25b6d50179e21b1e34cb475f258d675d621b4a2994c06d8f6fa402280dd3e52b68dd0cf61fcbea8f3e0de257269fca144850f028a6ca1af2455406fff8db8d2e04951ed2b8a34f5343a64c6ac8dfc2a38b5a1e5179147b2005e6c294fa5526d51e28e8c846a2f78ddddf006570cee4d68f6f13cfafe3d22e6f79f0356d72ed4af06e471cf6cd0152b87ec9c1ae1dbc1f8662d8645e2654da313e530c4c7a0c81d771aeb94c0185fb8d30684e5cbfb5b3d180243b2fb7c0b6828f92f247dafa2c8c2f8796dd04142e45e1a8bfdac2dc1482beeff2498209f0c56b4018e0cc521a27bf3ddc4efb2436bff50c3c822983e7e2c2b655da89c915e536e350a52f6e8d48d51b79b683e99bdfd5f01b4b4007c3aa2caf742815b84fc9d603d60ab39796505a737a9db96c6802b196f58896daeba415d8236a5af12e60e3f295cb0523eb669acd7fea48df6ee3c27f08210fede7bac94fd4e2b2616d75462140213de5fe5db8495d7ed46784ae897b93ec9fd4eedff8a0bb24e72e32d5aad14bd199c4d32151c6aa523a2745cfbf5c82153746ea1b2a84f8488e66932bc655a97739579be4d0f8ceca856268bc3d1b98d687f8a27337c448d14151ed427a445bbc96981776089265a111e1f79dc0b4d97b92f1a35b3b2263c33416abf05fb6fecb576fc39f6dcd9c20143aeb261827ae2ea540958c85b55b76fc21ea831296e0b4dd97bc642ea5ee5198f4034fab77f4c613962bfd48a2e1b1f99c6ac21d45e2c7c4aab6e8e5a55bd0bb8bd0914c89934a1cb035d7db88a94693b4331850f54a4571b381f2ba0931d6df70fb6a45da1ca908eaef68f446dd54fe5d7a5b71f2fc46e4367cca2cb2b7884938fda46f06e50de5417434989c5195d931fe5677923e3c29ff66c41afe449fa8685a3f61a4083de71f50951a0032351eb304a6cfa0f001d5059bcac876339eb0885877ac7fab9bf6d7308c1d6057b96511becafd16914986e817a37d31e1b5d1fbd7f31fca40b65372d4b232d762cb3c5d2fcb6a7299ace9f031f7c648aae34530010bc1cf6b42613dad56ed64262ed683135351938c1fe637743005b831ec26ca89ee23c4f8e6a87ba059ca32a4686de88bb608d2dcfbc55ebe792f3df7f354ad5973d1f9c4d839e6ea530c2bd83a7437ee682623b5e8ab6c581097448c003500381c5eb860155ede3729a00de8840c67082b1ef423f54d1a2d7e2ff56ec66487f1569186c3a51f3e35910047843803bb5ba73a43b096d758645825cff0f45af4566d2fc29752e1b330b457f978a357ee530080846706cab89312a07265dc83d63632039299b4d5ac054f034c232083574e6ad2c60ac1af95abcb55358ad2c7bbabe9731c9251ba0bc7b759e62524233d712b7bc4fadab5f89e1aeeca3a0e0b74da8b908749a68ba8983ab59f8fd7efdec499b10066b69d4cb9c0ccaf93acf91071e5bc5697a8b2d5fa7a417eb7731d6ca9d31d55fed288ceede01c63ea5682abcc69e1b5a7d8e867f6575603d740ca6a872515228e43a89a637dbdc11958b76594ad4c3fdb5e79da29136d6f4fce1090753fa6e3f12986f18c2dc29d9446aeaf305f7b1aa07424fbf36d689b5e4f2f0565f89f36285e9b72f1789c4cf30f767cdafe5975cf4a7607a4d01434db68832841ebbe717859f4f24e5b4f742cb7c31126db97be9758e24e09cba56dba02c11580e3f2f0dd635d72d2efb1310bbff2b1b08dc3b98004e7112ec43de3e91a931fa4949e2170ed2ff40da4fe46f2549701e29d4b3279c1b844c391bea9771a4f7cb5f32cc4d48ff1bb332b01c89309aaed4c45aeb59258ac96b6d0645fd57ae13dcd158af47b4444d4ed9f4d3e751c63f90e6bff78f3c57310ae476b94d87db7af86e09c142dec1483590b9d21fa305935e62acdd635319c9d3af4184bf6f63c445ba6ffd0e0672b8ec8da926ef9c3b019cb5aefcc2892f6c99a406fc0702e0b8ceeb896e045a20b6c89b67de0857268aa3c2564862846a2798e57cdf38c687bc4104b49c2217f35cd48d0c5415d8d4c2f4325104652da09c6a0772d0c99c37883e8a41466d53b2c60eeb893e52e9930a2612469d1e686bc9de213a8c8888e8d08a8bfdaa354a0cadeb472a6c19d1450761144d14bb3ca269066fa2949eb097612a81e35f33fa27be1bc4c2cd7bf086b084d5009020b1a8b7e238e7402efc3183744de3c9377dba2fbf67f3a2c3b1f5022795560194fb688c1f48c7878c26d38a46065e534051443e0414dd948eab7f5295fd79d76758cf186a38128ff514a74bd3766da2213b0edffe87a8497140bfc96d195199874e1473323aed91a5b4dda9286636b86be2be3d3cd9f893c174ade7a56492f88a38931bf2aeb7e66481a9ad6bb8c5c12415f1fbe8f8643e17bfdcd55aa0116723d81edac35a8d466439440294334dea6fd269dc51aa176af27a92e3544976b4f364556ff2e0ee6dfde9bc43986037826e0162bde89e3dd93e9e9b71cd2b5d9f3cbd50cca50407f244cb6255ab8d3aef6f0183fb0cb05c53469326d7472a9ce7d90aeed047a30226f1c8232929b8ea922cf5eeb9bf707d52b3c646a01cab60e494e50f3b3753200263309656d5645b276af133c7cecc44fb28976eb3a47ade69ead31327014c52caf70aca13330b7a1e5394c9f3389af242a0e10e6b598d65d991e04aab4e75fee237f31ffe454aee0b5ef6a7a586b9c69b3b197f0480f9fe946d6fd598970434ddb637b18c18de40b30c70a75bbbdeba29a0c8b968519cc03070d034a817e551cfb42a5539347a762e3edb50f359f18e0c3fb33d7e703f5b118ed4ba72665e2d688181f61830733ed41980d35c23203d0ff1390c2b0568a38e735e92911f7655d85e88019622e595f40f3e011e767aa9248a46d6156145b763e9c74fcf7c718a7634c54ef3d989974827108e0e9384dbda03769359cd4757b5dbbc842a443c4a61ccb699f378a3faa8663400c2cb037fb581faa7f40f539b9be5f2940904d10ebe0efab16dc66ef49c52230e6eca2df0edcc24049458543f8a4bc4e312a1785c373906e3bf0b3a61a72279d891e4944b97f290f4524cfe3a36d98515d613315905159253998b0797953c9b5c47516436531b3474942095d863b772de07439b11a064fe095c2096c3495ab440c8afca9888e8e939c0ee360b2bc54b3a2f4bfaa351d4948138f6eebe1d29782c5bcae6adbd2986795e346bb943c219990a90794e1c64718d55d396396a5fa6c271d24549f925aed2874fb8e47b6086fbcc497231c6c6674cfd08c2a84671231d2c84ceab95fbcc566f560bbc93cbb4652ecd15cd4fbf53152d919471405409efb2da638f314ce120b2299631cd85239c2a9523fe3a81b45e1053154991492736025ad5eb44adf8ae181a58a91f0b1b064a016f99f4d6ddb5fdb893bc663cb4697a94f695678e594ffa1a063860ef66bbb82d4b71f8a72a0afd4de207ab00db8d5419907fddfe3c90ee65bcc4c790328a9456a9d8d75c83976f853981f95dd723721f46c28be107e24bcfa60cacf51bdc2496886be46462c668d221421d2b44f29394d9f7ed4c67d3d9f3dd3f1b49bbdaa055b00e1fa0378fef16b94e6b36bf1d1e3d0276a4dbf19c7ede9618e7c1e54543203222abf70b6e6d60b880f03d8daa0909d36acb4c7b679fa28a50c9f60ec3b7545310c5a4281347b7737de54db00986157670e7e497907c1ef50e9725e1e6866e19fd72b09c3f6b91e2a17a2a6cb36eeba10a577474b6e248efe093d0863f94a7304c1614d7b44c1a4fc9f23a1c9dd20a80847e0876befe67fdd40a69442969a2b13815d4dee3b0a383a7f44607e6126ea743d597ffacde80b49be06b2abb9959afb6b0f2001ad7a55cf49323f92a956e493beefea3ca60c974db4283872c52081bc4cbff5b108cdf558f9a2923632551f669ce2a2f28a20edd0caafe9880c4e827bc8c194d64a330b8cabc1546ef18e9ee7e0d91e8bb4724c2b1acc9e764fd0fb2be8af47e1a6bcf446b384147071df61189edb81d9850c844671b81bbf8069aaeb5fbb3a0cdddc237e17258637d10fa8d0999efe1d291481fab26a1e9b89f9ea1e579d71e47b3ddfddb9b1eb1cdb3f5629e89244b2b815fadd3f57d4e9e7294767101a9b02164782043641d44e398014190321bf75ed0b0495abbcc49154df79443f0cbc426d2e69cb59526002d6894fad737efed8d85c1cdd25146de7cdb05d7f88c831c842be24eebf825c5ecdd76a9fbb28d2654b4bb99ff0e7248b28b9061a0ba78487373ab81fbf520d6e822cb53633313429574f4c048402ea42d639e9457c35e9fa4d0a7a2f68057446844fac32ff989bda135615c4f1eef7383ea3601baa82576e5b92e0a7f314f01dc1295126a18e9219d23149306cce272d40c299fbfea5915a0db866c39e45a3cb5864c635277b06c4802f762b2b8f07a5ec8346b510c6abb4d737d1d2cbd3310811d860ec626f37511402b7aa8f089ae34f974d2fc15028aaebf7501d2e065d4a6f1b2588999087d224f3bf805f8a1aed00520dfc88e5866f37531af3cd540f08dac612961b049ca806c3dfa052b5956541651bb7b94eeffd1ca39c24e4e10df5f546f6699512c299105b82e58bf75a12e393124d9d173105c58604efa3e2308b0ad3dabf092985bc75f5ea73932cd523c6c9242de354279f048d793630770424593aa9449da1cac30c5770c11adb17c563d8640286c3d03611a7355cb1022cc7d4763d51e1f61c57fd26ca61de88c04f7a2c927d9889e19453b6880fb7845875861d7ee1d72788a86be6925727ff237d980c32c378fbed04c01011875a50b07acc4a7f531c193be02f68012c471790afc9400275a8e3298b7ba2859efa1159facb4f0e2637f4606d5b6cb3236fc86537f969e9ba670dbaf892e4066d4a71ea3f0e23c4774f16e3d026fff8bc3082184eaf50662b94b947ace7f319fbc125599a0ac1689464c4af461c77291942d34761b75d5ecaeb1b5a6f20944985bbc493a599579cf73c983a03546a3417d5f9ce914eef2912064d321f2ec6779fdf2573fb5e9c6bdacc4034d4e07f520fa2c10f4463dfb66fe9ccec0b01697e3d8160fe423ea7902e421d42abe33d94cad497c6852ed3222e0b57f45f6f6ca6cefc42c8eae56c9db7360480e90736749b1f38e49958ef67fed656ee54188a2929d4e2a2baede9f2bb4d3b84f0f978d34d2cc20cc48c38825980bd8d710bf96a37cdc5e8b952c41cd35f2147d15538ec3e49aceb6385260ceec1d7c38c877785edb7f11b2d532ada31e8861914687b776c460d6b5277378e0d33bb1420e5ed965fc645251fee253ac36a7648fc692c8d8f0a5da2ddf276ee9921eda26cba2f15e9cf814b97c791fc6fa74bc5c147e42dba7edd43b8ed94de1d3ef2d7d42b032541db956e77eaad120c845978eaf3a85e142f4faf52cf7999bfad9bfd08449069c953b612c4f45e0528e55204a124f09f2861777415f1db2d012d95e2725c3ee6e57e700b8834657552bc05e33522907cb2591d66317828f54645fb4b77fe206367a7a3a6d5b6bcd46530856d32fc6e683f869657d18470cb22563a4767a9b73ebab8305bfe8d76ace8222dcbcc39c4c3f1ff9164bcee6a7ee0bc7f16e700613cb46103b7ad92d946d255b00b2f966f330875d32148c759744dfc363e23355db46cb0365765f9a1d17803d436c00d07adbcb6dd843d4336ca1cdae663623400398a398625d35f56fbc11b2abe80c9e6f427e86ecd95e64aeb85911286e23365f5b97db695a6f447d8032c9fdddbf5feca14eb022d5a7dab3dd40e438ffc8320505b7da5544312f00445c0a6047fde55624d49f59e61f58b966fec3b40e68bd010b95963f89b404bb6e6017458ffa882909e1c95c0991fe56884bc4ff857c43cae3d59d5bdcfff4acd30e2c1649b4a9cadd6d93f17dd0351650af1cff119cc946eaf73d22c99c88a4f214884f868445292c7bc0f569ef0925fad02ea9963c5b82e172ee6384de2ea94b46466287b2faf6522d4f9c81cb528f713a44b7df4ab27524845038053305536ace01739a1facf5e3bd469cbe99f8378a6cc2da3b9f139bc6547c283a905d949517f977f4c1a59d6128e86cea33add9cef33a7bc42100b61d035a3061cf407b09c9dce2b5b9e5dd4c071dce97bc1958ea2a1897d2ed3c3893e4db4b0b32036bed9ebf08e52a5e9e63f2b4153b88298c0ae2ac622ed29d23e09c90494e8e79abe689480376286c2a6d5770e6a31dee0430e9dd0f10b4e22c51aa104aad631010f4b8b0610679db404a7ebba1440bbf80b159f36825883fc100dee2527218e937d484faaf1751869ff899ed9c5d1a85ce1b804165062352d1b96ae13881a908bb754f7a966a8ca78c7b107f858ae46cc312747f3aa529e3ec9a7bd519d362ccf29226e33367fe895bdd415637c09674167c80722fbc3afd2446268c5e705934fc541b754167e57b4af0ba4de95bd499e46a6352bea9f8ce53c60681145f2589f1b98ffa6784f14078bf50d4ccd891a668abfbbfaea519e08c7d8be1422285796be1b1a6eee984f4d5bde6ddb9610646e0c51b04d677246877f65519158aecb304d4e9a0f60451d678994eb26c273edd9db0475628fab2bb796d2b8b3e297cad2d6f3c1aa6ba664ab707c18807c6e5a2183a7dc4839b0811f88c66193945dd269751d137b9d543b38e6ba4e28a69dff88025403991f1e57dfe2d6f6319058a918848d04df7abf10addcf42ab3d04fd7564e1d3eff959d774452ff7713faf27f8af50e5fe45b9b6e4d2a2f1baa905f860972ff6d614b04b737409ffd4029011078da2817a1f6f37858c0208c47580dcc611b214add2fb57ccaa9b284b3ea99f1fd3d15a7d50b603a8a8a8e867491ff5d330c0e89370beb11c34b0a2206bdaa85acfc748859ba8addd81d80bbecceb2585a6efb65035fc3368d88b67441e1773400b87fb29d7e6dd30a0bf571030e284c3b75716fff5d6ac2a6abab70953a1784d59dbbe1590cad839d8a84434efddd47afa5e168c4fb6291dd5ddc51534eef50610a63233f1113b5f28c20b53138b106806f2d211a6b657f5480e174866e91308ef6fc076731e076817978c8c6a7ad94bff84f44faaf7f7bc3121ed1536e713e078f0a6b2ad8d6fce9b90466d327993f9af52009a0fa1a6c13d9b1b9402d6734bcb7de1c110229b2541dd77c58dd43c9c7779a16dbed861d3f6e39e532461481d09551f4dfbba5f448f646ca296d6b0ba10b33dbb35efaf29557afaf147a855838c47c5f0140793c14076dfb8feea359912ea15283a2126c2dbc55f88088ea9ebcfcf15272d8ac6d59afc60bc77dc3fad84a3dcf4905cb796fa9ddf78408558f9b696fe94d2970f26f98998b1f8f79d0f76c95286a0e05d6fa0aba1554d12ddac6120b318d205e8225da9a0c4c5ae03f0a08ebd97fb9de85b836e5e5146428065de83b2f7b648226207c43aa92f9680ba57009f3dd870c7f62bc57ab63258a4e3001d78a76c0ab9965f4f4368ef63b5f307a6486049ad87d2b6db0b3e2066d3ca9045e425d584b732d78938386af8d7a1f5c737d98a760a1338cbfd2d582517a5e47da4150c2e22ecfa318aeac843761d1535663fefdcf1ee203846d239cad037bca5101cdb350a2960c7fba40e0926ed1a512d6bc44377233b9ec7a024fa172124398723ebfc4b4f1a442731cb9f49052bbcee6be35eda67b0eb73816c76c4bc0fd7266904c02eabfd90980c00d7d0beef925bae32e37a05978c99e3072991178342f5bdfd13beb3e3f5bebddc96647de06f479212587f983f6e04521102fe87c044c0d0c90c55fa346cbf7a9334f63cc7ae0f0317ca9d3bf5605903714cf86fa6cb2167292bf06fb01e55e820c8394af65edcb4573796713287136406e70c61f558c0e583213260560a80ffea8d6257215acbd2fba97dfe7edc2c0e62bc7cae0f06ca6707330cee42ba576d0d24efa57bdf1e709b8e75e3bd9501c21b3d3d2988dfe0ed87444f8d830d1f0c0a21ccfe70d9023708dff80836095801558516674986b2c621dda3f6334990e9f0ca750174fc6a1411e1914ee83f31ff381c267edabe474defb941d7a3a3b64c34deaf54f8c84b46404c3a6cb5d79bfb6a3b7df3d34aa733ad252cb17a062a85c77c059606b03a0dd26eb4808e1d723a561592e3a173a9fcbf580e616faf489979ff917c036e89fa9d5eb4227f0693240ad847fbe5dc310119b8ae7584479a3ca64a8e33e985d88453a4e6a509f007ee26ae6a6492c49fb4aae369df8a7e81b8d991a470e4a73634c9c93a52ae60d7ea62cc1183b8d809943a78317453f7ed5ca3ead0adc0a806db97d1631b52e793612438875169468a086fb5f2dcac8338a31df4d088c8eb133f86c1a9b8383179cd6d42f7277f9659b19dd70b83f130db5c95011fb6fe512420de69d57212253ca729cd991d49d7a13f8291de200b4be7e471a1f989ed27ab966f0be9d54e5eab4620afc5ffbc7152ab623d9002702f647bdffb21bbcf6105562a84bdb133cc0b5209ed3b89911a4f776a4227ec07c0fbbd3914895d06bbc3d58071e12d5d65fb1447bd6a1efb43aec9139179379f6b3387686b4001c0e4fd199fef77912ab67f2f721a9c8e6d2e2335bb2753f630e89f10a2cd856169ed57fd5c1d105c52debb845fc6ce54ee81136257330502f430dfe1abaebc1bef2d7030d4db213056b64b8924fa39ec83258a65b21be446cc9b71586b22c4d7655c82fb060badffca29e3b671440608b93a82de2649b7b2f9452e4b476c318f3de8dfd0ca397fd602f36b2e47a7aa53bfd21c6300b01c936a21c4ebecb125342d49e8ebc5d20c9615a960ae292a09f1df5fa63e43195f99355c0191117e54455504fc072724f4bd69ac4fc2296e34c93fac73382bc82bcc43344f8ded82d27948adc9b66d21b58ced5b842f19167aea0d73718d4733acc8ffe547232ba778a7ae5395914f7951aab28bb95702a33a7ff58e063af33eab4befde8132dc978cee1127c58fa9d7b05e571e82ca6c3efacc09fc0873afeba06509980950c15008c82349806b6be6e3c9bff96b45564e32173ca4370a1a4173e62f512c4453862276bc2854ab2827227d1ed2cc222fdd9c6bba4d4e01accb6a255a05682353b03eca0c2aa62545407406e3601a7e3eaf9592cc9b665ebf29399251110dad662bfe0349b8806257ae0e68aa4c78876380412a3e59bc046abe8c3a4ca4839b744f2d4b7917dc73dc0b2aad75ce969247358b435704a3f143248d9622c82e142d55c04040e2c92e55b10be6175e6aed0cd6d3b36c4893c0c7222b004321b1198ccc871dfaf1c6a9dd02439e231c79a86a9d28f2a28ec3312ef3bc11004e8f4002dfa577ea0e9c8761651c7c0c84496a341b9c19003004927ed5436733293327189d1de970ef190028e51ec8274cd35c4f2d7eabbdaa979941ae548d2a7644360826f264e0881dacbb1535d93f8422a40ca56be168c6b50a70175c83484a46d1ac883e6f7afe3d4ec3ea6ff937c3f4a811c3921a769182bba6980f6a615e017482e9288221de773add50697a1819f79c2ea7c04f63a3be55fd7e85f27356ad87c7dacf42bc579fe218ecc73e74a521ce2353ca27f5c9e197479bea56733c445bffdb08425463cff0a0d3eaf24fb4dbf45451e7461b0b458afd88a5b5785ec9d7fa22ccd4127109cf52d0cc9187c2dc69308623f1201bfcdfe5d8e27d7e66720dd14c1212f992bd1451fe7944dc2e170c6952109ce858ea67faf2cb79dbb95de506b860459800eeaac194ff90d5a1a2974f9def155fed25b7a80b59f1ef2cade4ded5e5e1b7956cbd320c0560deb4731603bf00c65b4511126f13f004fecb996e5372c0746f12d7f03353bf1939847b3922a910d6a4a2c89516110e0d52458b19f6f5f14598e0f3caab5d50c6882cfb6f6818bd72a4455f6cd5b931b2dd561d6c0f2f496d96ba2cd8050d55369bb5b24c4bc85e71f9cf2a8c7bc87ec1f1fb086b78b241cca0352acf93aba8b1311419726e48d13ad4f786bb9eb84968e669f19bdfb1ebe3b60d10bf2bd3169d14a5f2be6c11de1cbaf578edff4721a56758267998635dd90d8c9a19a02b9bb58fef5e6f505cb7c4dd9436ee227d4bd68aad1a99a3d108c864c132421370da56d6a68e3c0b9d1530ea2719ac021aed27a52a06a06b2213e88d273918c86f1c1fd33092b62a3055b4f018c127a0917229671b8183e99f1a283396d77abfbbb5dc8060b2d42067a4edd1c0f84338ba79cf5710e990336dc592506f19154f5592f3e06128fa2619c6ee351c54355957aedb458ac28d2adf5de809be4472aad4b84032555b681b59c383c9e17cb86ce025049a771b2adf91f85e5a3ae8fc676a4c9614790d7b582228c36639538e309e8c2a75290ba1a85b0cb286b1e44ad94d95102a52c8b94fc77d9c4a7d9be457d5dbf18075125aa490975b9f53ccf7a3740bf93863b9b4205b9cd836c91e9dfbe3796f0922cf9c209d097c35cb362836211eaac48727c40216e91d3e6932b76751663b5baa4a14d0a7b3f01104968fc6a55ee48a39ace03e0c44cdcc986aecff95daa830719af61c68e9f0a7ef8f87abfa292a9035c46248aed51db98fde3fde0f230eba0425173e53999f999055ae0d2738871c8055bb640815e98944b71aaefd847287386e8156b04e9c368624ed78a53b8ebb3c3e5366f7a3067b2349cca55b9a22a7c1b7cded4766c2b95d0f018c29b38bbed00fe74aab170f4d036f94aff375c0110504d9b6157a108444aa1ecceca713158e972f2cabd266480e3537b456ab8f90088b37e187e87216cef6e7a9fdc22dabcd2aaf210efdd1b8014a77f8bd0e5a13415c41153fea82ad86ba3e1ed0b52598e14d5b06a862aad923b0b9c5588051db5d6a58a86247647723e4cfdf732702dcfc58eb0c94a32c1797133da7da7258fc659c72cc66c00889fcd3eb7edf98508694e641093e29f20b957b1fce9d0cfe0e620281935c9179e9d6d63617eae9d1599e6b12029a05062cec0090f2222a59348cb2ce07787bfa71d77d949d5c685221c177de568ca3b44e1600e6ff566ce6c46f145b7cf462170bef9f039ce910fe61dcc1e40c1e24f61900de803ef18aca0b9ad8b50f1f6e3aeab4d7de963986faedcb19073106da57e8d4893b80322cd13363c2dea94e3a062803157c8e9ead91af0e096b1903ada35f5828d688c896a117c4f0b233aa83c2a01c510d4289452de39242252f272881b5fe9ada0e474dd85419a001a48df6963f82b5f78d6a80d260acb7c85db524cbffcff6cf7541202922a35cc3aa29ea4f7b48aacf6a79f77cf0e0c3fd7316133b194fb9934ab686a8427449b01ac0196565e8badea3176841f44db63510bc215e216f02fadc2b79cd3722148b09ee78b4849d801a0dc06c6c00de69b928add367cbbc4a91ee141e434a6a5f7a4c998744dc4ea4d143224d432fc7781824f3e77028b0c36414832c0a174b9758265e03eae4d86eed1b1cac7dfda28f750f16cbdc8cb3acf15c49005a5f016310280389c5041cf553ddb0fc0d9857effa12c1e25bcdaf2252b06ae8518fa6a561b7e84514468a60c0114390b49bafc4433a232a0c7ad567ec9d56cdf70172b11118fb135736489726fb94541d43cce45b2b889f4d6fb368dee63fac45144620d55efc66fbbd4f12a0e8f2b6994a904e8808467128ecb3f64a8d6b25ee92730f00693b15b926752f945c6a7c7822695de22a4f4d16e4e1b7589d22ed8cb847ba6e59671ea4f7f54e1a1d6b754edbd813143c2d7459e567d75f93081cc158ef4ca4422e6cd296d27f759f11830d3e8c09c1608a6cce71fceed3a7748acbcf9d76c33aa9960cc4934981b616a0479f427f3f6a30c7cb67057ae37c8ee343986883829c90c6050f59ada34a8b69b120a0120472d8a5c86c280f3e3fc4269ac891ce5f6766846b8eb78348f99ffbf093a3ff126539a640005eeb723b0128221c531f806023369760db680069084c3e5496e6d066131436ce9cfea3db12747877a4d21ab609d545c8716bb9cdcecb0866502094281d8a1489b217ccc633df74b42d6f41ba977e6421ef58ce7f9a78b10fde7b0a206ec44125373234f4841eb4f0444b6bd241f7d6e8a74be2a74faba9d6d306d112c78b097cd972304146309763fbf2c5bc4ed6fc33149f4cea9874094718253255a68ef86b20ee74c4e5541709f4ab280909b03e63c87a38fefad6285d87e7b1451283939f5bc7637bc20841cea78a8b2e203f75c7d6ef2c509874e633ce3cc860660079ec73338362443c2991a5f4e826b7abdf00d4c59ae8436306bf28a21907f15d886e01264a92959de29c1409b47eb9c48752490ae50560070dcd384bcb36faa06ee0a13d613f0f63613b98fb0eae95546d69a87b254724deae36eb0b332f196083f96235c4e69ddea0e2d6f07c323c83a5171b2e52226ccf2f10294bb7617574573c2c6e979bb0b6b5bf0da08b764f4cdef89628ff5f2cc74f165dac463793e1fe6ec1d173b4cf0cc680c82b4d8f75abb2ec4cc06e2067fe5324bda5c328a5510f0eb4d85f6881a3c6b6d13ef3c552ab7fd4694b56a7621943bdb7b2d33d74ef536b7b9a70105a33e2722701395a6b1db203fd214b83e1eeca601850970fbd4423d755438ea9ca917ebc1e6cd3a84a88453ed72bd2582a2e3611d6d7c867ec2885e2c09268e5ee7bb3909a7b3cd7d60e20f2550488c11a0d63fbfb4ac713888e8cd4a58e72b8a3c732ff3dff5c6a3cfc056cd2c36acc5768cd4f9a8e3b593f49fef6aa46ce5ba15b94762053bbf0324d91a32ca987719c49c889ce8b781d5af24eb4b571b94506237b59fce3e641950f159b491c4016f4c84025a7ffac646fa932f36356862a096cb737d18cb2dee5d1ca6dc92a21c91fb2121e6080701e1a7f18f98019b2a272c6aeaa4a5d50cb583f8ca201c3dcd7edd223baeb09a93397f3928d46c9ce7001f72d2e700cbfe7e1e32b28098b68b75ee2fa7dc35836219b2ce392cf7230b5f4ed4008ab413723e372e2c560439018e1ab67e02e7fc76e95967bf19f13b6e746750b7639b84e0ed6d03a105dc4cb6f0d993845e94b9801de1f9d20aac3da80a27d0976ea11c549266dcb74b468fda283c86ba568dafd646296dfb0842a80afc0f8e2295a37100626ff69befb0f24459cce5894fcdcce73a8813845b7b507dd359ddbdc234b40ab1243ecd19b73ba45b960b5a9cd2ceb1599cc2a63427d546e9d9b13b6a0a5eb0161c4fb24e39ed919c0ad02b1edacaa09d1576b2d209582b60fa1872f8421c9e13b9503fcbe48e7bcc8b5f6b3e2720b2660f5b8654405f0227c6a111b80d9ed123f27679a3b233937824b274a15e58a0e0b1bc2605c4b9cb5458c3e9bb1a5439a4231ce3344ba7a20e810f36754570661991e8d8281523895d60db41fa6b870a212ac4b00c7da6e26480483a62e667c105afc82bc2a0669dd84a10e4518c47597e6bb10f6c373594766b2630823acff19a3bcd53e2adef492d583448164801292bd85fb07f4dc6a9c360f4673dbdd275032e66b58c4ac39d48f2dcec83616f7ef27d0e9becc6cd33a194447aee7c85b6176370a8652f6a487c849ff48b8ce32692f48c27b2f8b5eef3e4b985754093a558174cad260f3b431e3bc3668f9ccfb83aa9c8ee80245fd67adb71174c8a6653ebbef55ac929e3f10a685bf0858a8c46a405b8e795dea2e9b73084fa09d87f91d98091922757e54a84a71123c8a6d374ab181b36766e7324ee1fa4b92f187876b734a37fd0264361ffca058ae4c1aac1040e55c4f6b22acc354cfdd22b0570d5bffb8262e33676d480de4a10826c9ad42b92fd26559def5493463773877dc494dc04ff07a15f8c1bafad7da8f23e709c0349ddc842c21ef966c4c4039a6b32d522b965a57af7e7ef496e17b37ad02b2ae8aa84d9442ed071d0f11a2626dfbf21535c1a2efd9f79fa266f9331a5f98176b67694178f4b52987751acc976253ec4800fb900300c05938f9d550f3b798be47badba920b16b6569a0e4f80c37b58731e1d88187a538c4e6171ad354ce6420ba14c66d5ec4bf34000b967219af47bf5fecd4d92b6ee378df3091ce71b78b6337b31919a9761117d32960810aa1becf3352b8044f37280e69bd6099736d9ef921ee1238b6b48f7d2f423d97a0a13e860b9e02b648dc4baf367559dd180f71911bd087980bd1ad9c479cd81bab9771a0646e8cbb296b40a0c144914ba23ee52ee51565adf9677073fa92b6501c622bb96756cd04878a32fd4ed3ed0722417fc9dccfc922ad3c5a5e6fce4557196d3a10709cee48c9e38a6776d9584375425e018dc3eb3a7ae14cd5ec9184bf8bac4bf4505ff902a4ea03a80046a8dbb24770e2e87e0f3af0488f3e75cedb6c0a4e9edf54bf2d6838d26a2021804c452904bb8e5ea424c9557f3ccbbb1844602b9153500a59ecdd26991cfd738a1d362630d390fcb0cf34a36167ab95c33beb0e6e3e2135f520de2496453abf85d0b83b664132e403a5c68bfc28b746f24fcccce509422f1b0362e5b0e428537948d82a9702dc8b4dd6c1790fb0bedb9301805e45e04c4da92ade9802d18aede3a6d1feebf303e856f02fd5a77aad0dd0fcb37688a3435d7355611de476b9455945aa080d4befa5fb490b7b0a2714d3e686e6ede9b8d868f90fa434d515c726608633acc26f5444e8a767a2090d9836d512e5c96eacc16f38695fe192fddfe1e5a3a025c8008715a4d1ff8ce5eeac085c701a857f74c801df8371376bb00c1c5161fdc94c95657f053130e07151ba364e6c785e36465f70b03b47924d977cbecf4acfb858c90ceaa5267345e6911d53a07da6e1a759cd344d846b1484620df4b1c15fad28e26422f30a3a4fa4ca7699f3c5838a7c16e53f1f62742e4333fdc69ee11b0d95de8266f2ad988347f96d216bbb43442574ec61f4339e92f0e49325f4c29dcc242ba538406012ff125ca5f505abdd89949a44123d8bd021238109e375f3f219ce09003d7f89727d8b3bc7376055867f74a38921d23c1cba5ece0a20dcfa97f2d58c427764a8d2eeafccfeea36c4ac82af92b61f0bf10693247a5ae9b3e2d02c30ed5805d21f41e5a539e1a9e9243ea27e2dfb55612d7aaa3217f829731532f59de105a7ff674e28b0bf6047d475011f55139d173164249c6f2ddb08ee24a7d1fd9e1008e899ab045f828441d73671dec3f0d72a759402d56fbe147abdb84c106536541d8a5f6939aa462675738e03abc1503b0e0e9a9cd64a2de09d224d6a2cb3d6e75817c50538fdbb1a4e1846e2f97a4fca2ddfeb1a90d153fef109ed64391b657352c9eb5758ed42bf88fdc1abed3c47643397c5e61d6269f7d9f72460a5ec8c4800ab2d56bbdcc1deb74d8cda87c0a6d91352f69a8a08a9b8a1f7c3c4e200d5b2212dc417803bae08d533932de497584c5829d28c34a34b334b822d6ab7213f127997b29622a11a1e41babc255736b4bd35931eacd0d1ae78d80e680d4da1dd66e8de4c91a7d488e2b631c6a382a444c0315cdbe6b3a8f295d14d86f304c66da00c457c5c3ad125d8fd413e3959a2db543b4bb044a76eb77a5038dcbc4b05915de22aec79a8e8489004eda52d8ad65c2f33161fd10c9cc369f7dfaa1d240abe9ffd58bfac3616d9d62ff364308ca5e4a1637142b9bc2fbc1c1aa38b45c4ff3b70a7dbf1bce61e5271ec34f4d89f4a9fe050779ea464ad646c2048967c2f6509e5b7293d6ebdae9d4c0770363c6f5cc57e6bbe3c4b0d2a133b8969fd9401ef4679ec491e05fee7a088f3b6a730a21d13a26377bde4a7fb0dd4e477b2e80d18fa6b3f743aa9375de07c9828d3b60780dbd91d6c8e2a27499a251ff2cbf100b6ffd1fdf54bb45200628bd842b41d310f0c6c035324642dd914b14d2f21bd83dc5baa2b9c7ef632f48ee0ab6d9cc377b078d41ba3d3579f1c2725d99f65426140ce4ffeded21dc6550ab6d454e60168f5ae1f2b6cbfcb0e6528e30423ae0420622544ce6f7153f4b8ee8611066cebc625d8fa47155f149dcfc8f3e8094d293f2f21d738a2cfca777a607e1df1a33552f549b44de2ff296d411c729e9bee1bb7bcf99e249d4ebd84a99648d2903a1410bb8d314c24a30728b1c4ddb37668ccea27b082ba6c1922a1f0bbf89ad256dc991fa91535c92b0958dd8f2ae2d1782b447b6838162d4d428a23e87f76e9be90aa08b7940290e9f00ea8cb9a1127d9426cd5174367493c4f82f7cd26610519622e10a2d10273765fad496cfe2c19e8097a4f5d6f47b3125e4cbf21a094db4bb14a5206b72d2d1ad0ca0623032ee43cc2bfce4e6961865c1dc4267d79065a233aca3ebe8054f49bef9a8c5045e0a5b037b00af10a9d4c0d5632a49b2260dd91070c323ca7618141bc6a045cfbd64fcada70db0c412835fa4174de65bc7e9ce419a05c5d9d080107b6ef232b2f214a9c0937fb3ef0c7db5401a7d350fd762998e3269a1bff65ff25bddd4917d08b5229d4fae32af8346f9f6de9d8959b585aa9fbdd07abf75d015b109b405cd18b76d1474e999e84059f7e5d10da1f9676ce4d70756ac7316fe25f2997341cd29f8ab61579a6145c8973e5ee1e0c00bc61a6f0e28ed9749d4cd37a1648fc25f6fdb3dfe4a89a4b63780d7092ded73b1f087cb94714afbc460497c197fb80e12c7cc62cce1861bee7a9e35d482a01716c733a13f9712f4d1b4630fea2fa6e57036dd9c8ef7e87a1eade73d9d8ec3ad337ed4f8642de3f21ad00989871b001a580c486c9017145f8aeb72db3ba54006e41bc78569d839adfe93d9d20b90042a6fb4083559f8f45d1e6a18e37c5886f16fbcc59d90471496e0a3902689a24fe0055f85dcf365df8cb4d44789b90d82b0c2cbf9a84bde150eb0e5453b254ab2e23006f8a0000420d2e0a79c41f0aa69174bed1330415597102753456eaae7e709d2313b6231e5506a87b5c87079cec168fb129ebb57cf1b00aa32d9d04ae1144a9a00473f87cf3c77a5fb3a2a86f331d216056738d1bc37fac5629b82dcc69da1df848344dfea7b4e2a13c8512e10867016aef953938d4c40b61048eb6a0938dec6ca8e4fc5d6a90b36952f1ab636030f961dd3344f7afe729fe1a75045a94c108ac4755b636be7512d4d153edc5a112e2cd89fc0d2f1f00a4dc051529bcd0c0338eb109a6bd981c3129187ef00e422e1e49252a00d9ee95706d26a1fdccc819fb304bb544c5c31b55a6447db9db4eae94aa9c4b6108ad9ad9111f5efb89853eec1d5aae777672e4cb6ab406ecb316da606a6fd60fff4717bf9340bcc0930c079ebcdfd1e28c8edd45d8026cb8e618d102fd0932c1f763bd6f74466eb576443869c51b5ec3918ca16a6a0b5a4f7e10dc3bce7ff44ea2b929437f091f910fec39f9329632d07603c0f737c4a3385f4c135a1e08fac684cffca0f112ea5ee580eafab2585fa1cf592f4e775371ac9cc1381b188955730c646ff4ca13b1cc6b3b3512b830c33b41ab2dcd2e6705051604c293f456574fd7a32b2ed32dd52ac72953bedd00ac22e0e31dc52b48222653bda7b3c2ad3ef898aea976b86cfa41e4a4595e14642e1cc98dc3b34ea25fd8a18f492b1fa717358f8e959c9d2df3d40b64f07cd5a9b6c7804bfc5b2c2b667ae63950759b561ba88f1616ac7d6ed974040977b8ba3bdf09b01090cdcf6592628164ec3ef1da2af8b9aaa9a62371eb21b3e350537c6f40db958ff7c11e5ed5ae36eb2628b28de9e508fff5405b2cd1e816e761caf2cf9e01cff33cc31912499353d7940e62fc34cc7b7fef7e5534965608bd1597bec87fff2e5799bafadf884565094e9df28b0cf5f5ca39977c6d8249cf6228a73f1e89c62fe9969a7ea76eb1cb4e7e10e39489b8a191fb64e34f443d6ee944c4572c2c1ea13c4200d591dfdf98ef4052edca004ffc056f0392090b4af50992aab2dda0ff564dbd7b276d1e6c66624d238bdfb68437258b21fc6400e20e3de07c0afafe38cd9db78e6ffeb65ed580950b810a44c3d8abec9ab027ec558c9f8b0ae9a54756e7ffc1d0b028fb3bd1ba84ef1b7d5fa8cccfd3c326549767e6417f4f0d2359d5a5f8f25f74a99ae601215aa6b3a23864180a3128e236e9d2bb879501c36bb63195b91319b587b12048ede1883dc27510f734d2b2cf4cfc396f9cf628c0f7209a7a20dfb4b5e42defa733aed3dad97efc27dc8758a72d67d650d484d1066655c465fccc54259454437d6cd8e5bee39cd894f0b49fd00a9b850d306e7faf55d5b6bb24fef5fb47a2aa079f70d1907dd04667eed548ee4efcebce1764fb677c0f96d7bef94400207bcc610918e334e2ef054de23f9676326fdbd8e5dc0e324f4e95a6943915569870c15f974ef3522a2b91336cc9c7b44b273a3d95770935400336557500a679c0dd53c8e62bab3d390074369464d08d4017830965375423275038e4a0cd1d967ac2ad12a6649a58f59a672f24f9be0a20a95d5af7e0906fb10406468c6c1ee3371be8a957b1932aee70a2626e2350a53c0ca85c5384e72034b5e56ae7310b8461fa49d05ceac2d4e867c2c6b14bde95201ee88d4f50d1a7d1250d3a1d879e45d141236c8238584054fa1edeb8d3a47a2ed0289fa838a46f9a8f48cd40fbb9cd845bc45c932052ed2793ac5bdca442fc2ad733e6d83955c8653debbafea4db29137d05edc1b5de4a2b10e30aea88451e2cef713c8c1d57dc4a209dd6be8b664efb0163ae2b6b53064f5ff7b8960e779546de330054eb52f8bad4e8cabc4da9600c9bb1da9fcbebcf2b7c9b5c604e7f8f429a9faecbd922ba9121df45df0d4bdd648346207be12103356ae06b6ff4c4243579c9acda173e5a680035d13d40b6849ecb249b40d3d6c06955a7d6c39801f75464ae632d577b3006701fcf1d8dbdf99f814e0468d0b5f7a5f696cc0c5aaf1f68088cf19faed132daf24f603b4116170ba227785d4cdf738f08d6bffe6b7821663300e738648bd6d79934f88c4ac38390bdb8cb4c992253c3d405062d8fd7b022571ba7119340b9e813eee2d25ae8dd22b0fd2b122a818378f5c50d55e28b4e37c0f263750bec470ac357912cc73b881f18c8f4c48c68f2e2aceca3ab9970284910e9e48fdb43f00a1d2f09f3461cc2dc2076e826777f76e3c970626d6a6b766e3e93c25d6318d991b09b6d6aa796c4be89d35d50df800e323201a9cea5e4fb3245cdffeb6e35562c95537626207ae4462913bacf4e1d6bfaf106acdb5dbff05edd91c4abc87208f136db919a1fae630442b8576aa1f4666321f0b60d08a88c2762db03c7ad1df0958b7a36fed9664109cb7fc41877e789981eada722246a21640efceff8c22e58ea7acb9ad6a33ba0e28807184ee6a15c55e1734d95b880f8067f595e6d49df90e3974764254c3b4ee872bb337dc54b0d4ff01bcdfc56cdf770ff20ee2097e4edea1dfbab822a7c209b2b205ae63d2931fa15ad574bc6bf2a192ffd435154c75a7d2ef5bcade2e68edc98c56f714a892745004b98bdae82112ebba15771faa4f49c6ed0373e6b5aa7eea55719e2a6b2708669caf4846028b535b5696cac731a456154d400c6032f2f7b9719ebe2fdb1bb523f943ae080e6525a7001242d5450e37b585178457b29a19e4da00790935c42dc6bc9a5a13b80d1658365e84a482f3ceb616ed32fde716cab2b5f1736b0385922d67071b730ad6e649ca5f25af79dbc3971a078ce357400e086ac4688519de2817abecab9af872f0e5631e774f20787c555a5c291b252567c66af8963de1b966ac9343ef9f53ef32ac65e2fe2bf311283bb4bec0195d0eb78401c36334faea030b3906c1186fd6b2a1165becf2817cb5a10692c718782088b5802b7d60e4d71c2c5de10c12b6ece51d08605cda7fd19fbc749ab798b03b0d24fc616386491c25708e43521c6c3b41fd54548681279fb1978ca0d3d73b9da7a137df8d247c63ebdaf92eea8a293fe5f9fecf04f215be9c208c93443804426ef62b938dfc40819e73f6c754dfed6de1ff0b6a29b37f19378f4a0b97f425cb9611839313333c908cb1c2d0419f24b611f2048e39ee30643901aff11a9bd19f0c8a31877581d7f2241509bf407aa7a460a8bdbe5037c1ba6881b35c91cfdfa3abddcd230c369310d9bfcad6409e2ee451490bd7aea4404742b6ece0a8719184e8ed5f908c983304e900308e9db3a07342bf82b5f582f3b874bc19a3f3c740888e0fb76f341d842a7900f2a3f9fa6db401672cdd591aba852943454dc7388f013e5b4e7b537944250bac512f89691b159082fb8504a5654650ae55c3255006a07742d0059054fd2024718932fd5e40e834dc9c6f317f4dac60272f0761c009c13e1d90cd10ce90739e9ed44a8abd1392c63126532d512a7c6be28d3021c64a1d58402b169343fdcfc223144acdf26078a105a902eba32297744f3d4fa8cd74b94b9ec7efd5ffee105b3f2cdf70e862c2a4e2281b668b9436a3be3073ca8925ba26de2f7e188847eec28713c2172cbc091651136d2caa24ac11849c730556cd6a4cd7d5d346f7ee8b588027c6f72cd23393cd2a2aba6d22dea8cdf09ef7978d299634789dbface04e4fe8a12732123414d1cc3f2f191bcad445d7a567ac05d6654c2b69042b0e158a7c62b279de06ff98717df34813937679a189d689aa2cf0e737bb09a89963e5fc2190beec49d4a92af0dbd16ec6ce7026d89847ac45e7ab44181518c9fef22242574271f0bf82bbadd202ef75747e1af8cd7979b026d3d444dc835a30e9c555dc04ade09088bf1e9d561f55915d75efc97d1c9176f8ba97e94dd699a237a9e305efa6e51b8a3584b481c96e8de9aba90539f8a7b4c1fcdf62df21f62fb0bb63ad5ab718f4bea8df3cf2f575cf7288cf35217f290fb4cc1606edfbf7f8204a8f207f557f37a8b6dcb73284b9ba77a36caf55ac71e52083812ed1f0bd52afac4d7f4b926328cb164d7c93c3cfc2844a4187cd58c0f6695f53c1b67738b82eb7c314c44fd3d9d536a10be1dd0a997bb372867541e58f20cfc3774949ac001c626e7226b792a7350aed59e23dfc5e2ca058f684e1258981a73e9a768f8a12aae6eb0427e5bb05d8b45dac43f5649e412230098aea346f9d8c88e7a27d166a2744ea846f7c6c73f269e2bc33c315619ff76ff6e59a892a3361fbeab1043552204bf895209b98338b4c01f04669cfdc85b79a343f7ffe486724a4738d6621157734f900baef0748c43d7a8ca619d29123aeccec7700ae1a6e3d325c8cb02b5f370f94a490cedc48404b3dca66eefc4dab2f98664d3ce4e31a583f4fdacc21e0b796bbf2531c42a92b816714b3fdcecec4335804243acc87f40c7cdf61f214f6e5d519205649e9fee105a1a4267b54be0e4c1c2296816ab5b5c4226a71cc9a27b87675fdcc4f0f7dafd4eaac850fb57c6a85de0b7e58acef1f321786671f84d4b4470abd8e53e25274172521d6f6cf112d454d6adeef1d34b91c40477e67ece1c8d1d42fa5a579b5e17f1bfc8507640249fa39440fbbdd5e6bcef63ad3a77767ebb8c48ffa0f060544c872e560c0bcf6e54430586038aca6778c05b028b3fee83207ec3990acbce93e34e36d959b0bbab5b22c704cf863b52f8337a821d306e6b45db1f60d86eb604ee554b943149f358d0f182e25263e8ac915477f522d356e75e4742e569bd1dcc2b6d79a314c5c6fda21e108d8a8920e39f6e6d3a04294b8be733ef72a5a3d402c671de9f56eb1d63da57656564661853feed055c26b27064008a152e3e0f55a5e76cd80b34c670bb0b2cf3e77c08607981b2476af0e01cee57b32008d8b6ea315403e01d1385f9ffd3e6dc6611693c22bb112c9fca567528696bc27712130f31e03d0dc427ffb0fe1e80a5f40635558e613a7df7a2fa799d99affdf0ac872bf668af0f6a38842ad43094698aae3eb04518dea5ae10d940441b053478287d20f96505b2fa0f5d86788276e2c90a1d2cb1fd189e4126f1705eab73df5e68b5d09df41d578d5a7939e9ca13f408710423b67153caa7b728f65594ceb28db9fe624b3a327d4a2de9f963d214ded7f6066f803be2736e36ea9b229c7da3c60a2e3e3805a98e786c9cb2da689824e33339424c567b5447b87c26fc134eb0f678269eeed794e20a69cca26b520176790f2afe099ccd74b568416784c803c5eadc83ed89ca01fc9756801ce583d540318a02cabaf0ca78e50a1ecf42e07c96f2a34e2c6774e07ae85aa8a22b5645e9bf191c70a82077bb13d746e11b85bfe20e5211bd78014da1e436b787f86ec04bff810caeea8aa89c4eceb8b4b56c89b1234a47317fc6da82ba62d1b6e03e54549cd31f623f3c7663926b38f25201ecf320df73026bf211107d1ca039cd7181c8a9c6af5c77b22a451f8485ef8b284576510d0077093eb5c8095fa0f2ff42f56fa12b768e93ea9f96cb98169c9f400fa602b9a2b0528180b0027314377ccf63cb8d46f04c702eff5c1eb27dd9cc8f28001914df35f649cbbc89064787859357fddca946e861d3965cec727cbfdc83ec6006fb981b90139511ef304724fb716f7629d927c4b259a2102ae0ec5f62759abf8424745e12de90c0006f175d20bdaa442baf1b12e2e1f637b8f9486ae3919c1e8635a9bd3b918a660a302d230e5228cbffd75b90e65a303d4f716485b38a4343fe69ae348f59c6922c3dd83a94fbfeeefe930bb1258bfa3469ee625fb516b3b53adec80eeb7a2dc78f1dff9f7b09e7af358af0a2494c6669d10bca64e4bcf77d2158bce969255f06ac0afe4dee2cd73b0469185c3b430f63b59ea6b48d69734c4322ea160870045fd85f022a10cce2562de0b94587dec13b3263078f7505ef68ece892de745baaf841658111aec697aab68d0b0127303132b118cffca7bf930d8f2d92bc20234e2b664253b39714a8c14c45a3bf8a808859800b3dda93a27adf6c20ba7ed837c7bcdb2c1b6b7d2d88510310b92b9f3c72f21adf812736eac39e83b8d026b615bf609725bd6203f6d09291ca5d3ff25a4ed6a90625ba41dd40cbf09dab62b887c1a0e46f87ea54cc2f3586949966b00ce07be60f5ba606cc8daf1112a903e80ac762f63627ee9ab7b8e4aa83e2d269b01c1cb44fadc87582daf8f4c6873559cdae3d0816b37518b45ab0fc54549814c350f04332845e1ec4ae5457fdf6b14b1c2832400e69e1d7dce449b6042d4a3a9ec60019b3f70f8acc2a31eeb7c59a185c32908a0a48d5999be3958e92cf7a53a698a8425e11c71e64c233faa2cbafa4eafab241269fd386c34b62ca052cd83a4e0ccb8a5a4d4b65beb4ed5f6ee8111f6a682ca96b1fcf6781ab8a8e54e13ff349c7af7c70809d8c91d336f80672ba779a9a55ea524238be722c31bdeb1acce1f177c97f61864425264cfe51621f7d1e587590ba284beb0668df4a88cf3ecaeccf254e0dbdb04ccf2332705352ba6a70d009925d3a8b6a5b7fc3dd7dc98c8782e6c3591d3e87770405f3d549127175681e5f3e495939381ab7584a9edd24f7d297b94f5a66a3c688ef26dc2c44d35047c5e4b3343aa902bbaa9b2de1a64a3863d1fec0cbf1dae740a211c754568e67d9b213ebfa15e899e219b00c8c84af1be4a0ba4ce876ac627ce2571fb1e1c604dd7a9d36a841251be7c5b214fcc725afa1d68bf817c8975a4112733c442f7e715b1c206a144797f9ea82e2001204a3b117843d89abeaddd01366a097c3e47651b54285e1f444ef505cb8be9356e78ed2c3a02390f3588f0840fdb57e9d0282baf4bc7b489028d582d1e2d7be45b6d4be77b69798edb80b302771ce89570c69fdc88e115f42173fe55b7f343c3f6454f2401b1d61beb50411d36ee6ccbd098f2b059bd127ae6cc9d00a60fc2b8a5d7f999d00e74046a64879594a55e57ad5b2c997eb914fff1ffa40f13793be46841523d7d1a7257450158b14acf608beed1addeb3b978d124a60d17af17d158470cb39659b3aa8eb31b77ed0f5866300cc751761741c5ada50015ceb065c45fdf6da0542a97d18a13541645dda3615d84ddfb3a54f79bfa1433a93c225d917412cfafa8f3514a97a01157f876ef29b6e0fd0599bbd5f2ac46789b2605472244e997763f62611610cd8ef851b8e25b0fbbda1b413e5c9d5461eff888a724e066aedb9748fccd24038fc113c769a7d9cfa44f5feecc35f4f475d61766e15a293ae36cfc6ebc82f8c21fa499bcfcf4071b5d48cd5c28d3cddef2a86a54b99127f540544334fe4cbc7fddfc6264bffb2f2d93fef6e4c26f703143c4f8867dc71ef8c3beaea976fc0991d1dbc43d89edd8e29e7bb1f41d5aa7fef15e12f3d2fa6d8a58ad2e670bc281a4a36d243be923763ea95699556a3c6f2841a504a6aa9bf541269cf28106d2770f881ff7f0218b9cd1b70463942b21191fc314ba03b2b817fd67d3ed4805edc75af9ed40f66701dc5312e78980fadb1fab9421861bdf3c87dadb9a728e1288fc075bc704ba8c64df05a4709723e250bbca409630ddf8cb406c65f698602df81d65c382c5eee597afe3c90b0b71727d70702076374e28b98e083b1b223633328e599c4e77be90f1d1b1b42653bef00baeef959c2564c70ad50b8be1ccca307cb4533d12f3c72c456fcc546651acb838e797d5cc181e7393795c2915c166804c162e7c1790559d66f28ef104b7fdbbe2103b50294394a997a50c8569c07bea16d371de307a6f696bd989ccca6d472d1d2fe60340e82a03e8de117154ac8a22b1d89d6f76d8cd89f3f3d10c741aedf58d971c557dd9b1c44cecba481d1aedfcc97071cd5e2be08eaabe7a4c872620920e1eb2a5935ffae66c3f003e8bbdc033837649380849a1dc56b11b652e11f4d75fc0e612c0275cb4f597729974226385d0176133fed6ce5b625d385649f7fe133f65fcc3db7d3b43bc4b3cf749102095418470820ec5128e564a91d8a93ef22b21c7eb97264e1ab8ec2eec81e62e8c03c4d6c9d76e453468547d3e1da66baae76f9b0ea01ec657740b33e2e5e3ac6509e7f25a485f20a9054aa64242b3c791772a5ba6b4e177838ce9eb0338407dba09ef07e3a55b526fd8eb263c642a103207848d81d0734fcdafde3aa84d97490d30469d31c5f8b2b7e64827696be1c4989ab234dad01cba71ef0e4938618293cda24ed594c93175174425dccaacf0c43419170c62b13b9c783fea97beb1338eca5b638165036e69e62a5c190fa89e35edfa8351e950adff8035c98f8f9bc32250e0fcaa68b2ab051d8979ade5458dc6c11d5faa9f0260c57f62806019c114423d5d5bced67c1d6a56bb775541570041dc9001e2d5e0ed779a23440919da949f2972356310412d32eb85c7b51931c72f96982972f88538d1882b76d278e9986fea675b52b494c248ac6f995afd39fb82212bebee96a465881ef50c09ea8d46f0164db56976f77b2e6e1cd69b125932c5a0ff04c64c5055b84cbe9f10bf2bda2bd321dfbaa88a085701f56a71d2c1e9ee8d39872bdff4b4f042e89e717af2454a5bc49a7818c060b78a566574401eef66902ba3e1fab248558a066ac57f4cca092eea19a13fd48bdfa0d4288434b2251df85004808d0584dd5c02f640211bbf26ca5f5f4926b29c4e6a107d7b7e46b7f65e81584fdce \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/kzg_proof.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/kzg_proof.txt new file mode 100644 index 000000000..7b7e5f70f --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/kzg_proof.txt @@ -0,0 +1 @@ +0x800aead553a553ace65fa1188441e153b1c70ab12eab20bbeae2f431c4b97d2b22f5c36c4549aec41219846f025d72ec \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/program_output.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/program_output.txt new file mode 100644 index 000000000..fd6260ac9 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/program_output.txt @@ -0,0 +1,13 @@ +2690652950887981092105487857662255296011626012752189016494932422592792782612 +318375726713628396893264960521216506727972386704433219654697727306535670624 +671070 +1721464161421942823712299887410666239101540954911342952807203342687235872339 +2590421891839256512113614983194993186457498815986333310670788206383913888162 +1 +4333048458755315272052456218951806007811933151167279260738 +4500201590935370788298697053067752428216731915353881504674 +1780270321746081097970276934354344672724838367048896540266648412014106432240 +267674272179767811046066001318052491587 +89018504356014354452939512097715104575 +0 +0 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/snos_output.json b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/snos_output.json new file mode 100644 index 000000000..b4e41d398 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/snos_output.json @@ -0,0 +1,16 @@ +{ + "initial_root": "0x325BA9C26BB7960F1B200F33B7E0A625A38614BAE44C7410CE7D3E977CBF40", + "final_root": "0x7D7E0C5772392D15F3F0C9CFF6DFE549BE29250462485F80D7ECBBC283256CF", + "prev_block_number": "0x9EF2D", + "new_block_number": "0x9EF2E", + "prev_block_hash": "0x286acdad5ba876edae5d0b906c216b6f16737f2f198789a9380330baa3097e0", + "new_block_hash": "0x698aff98da67a39116d90197c1e9fa4f550f93cfacfb398dc0dd14294defa92", + "os_program_hash": "0x5BA2078240F1585F96424C2D1EE48211DA3B3F9177BF2B9880B4FC91D59E9A2", + "starknet_os_config_hash": "0x5BA2078240F1585F96424C2D1EE48211DA3B3F9177BF2B9880B4FC91D59E9A2", + "use_kzg_da": "0x1", + "full_output": "0x0", + "messages_to_l1": [], + "messages_to_l2": [], + "contracts": [], + "classes": {} +} diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/source.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/source.txt new file mode 100644 index 000000000..30241310b --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/source.txt @@ -0,0 +1 @@ +https://etherscan.io/tx/0x2e50fd76b5d62dc03dccf62aa776fd59ee0889407a355fe6e044bd50bfc64916 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/x_0.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/x_0.txt new file mode 100644 index 000000000..ff06695e1 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651054/x_0.txt @@ -0,0 +1 @@ +0x06fc5b631f80a2b32028a431a5b1d9fcf78ae56ef3ed137bdd958710b2ed922b \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/blob_data.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/blob_data.txt new file mode 100644 index 000000000..c2be30bb2 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/blob_data.txt @@ -0,0 +1 @@ +3728e76486b3b8da3c5423879688a004b7b25eb29fb6711b2e74e09d46d2047530827be402fefa954eb08640b01434c486cdcbb5b9bd455c0bf33a8a6384a32603f7eaad4813a55c200bbc72683864a5c124c1aa818c62a2612dd265de412c07221f11c7ff92817fafff440c6d80ef06e6910c0071a25cdf9962e5927f2546490a190848087eb0ed2004460e174753ba981bdd83002beb63568efbb5d347f5595ce50e894ee58c691390d398730ea935e5ebc24864931a0a9a85f42175121a6b268c32a9a66575798f113627344d53b51fcbf4b1c9866901e0af32cdcd211fbe580931692ba6090fed3b0a65db845ffacafd4ba6b75bc0f0d69aca5142a050450532137a377978b55ba1eb457b828c2bbad6194e036e263af32153c525761fbc1e16e5952fe814043c8a16fe1a525c88ff408e6af90777cc73d530b119edde732f66527b41fd202117a48cd96bd6cfc2907d03113b0be957e0f92ead41d7c1775a0c153a413a5cee34c37339719fb7aa70e3720b5e25e2384eb6e8acc2dbf7252941a253491b6fc68c1488e458e14a7e588f1d4a225c926acb072d7a71ad83f1509299f73e00e795cf4a56ff712beb040a454546e6702836d1194693113dfdad6f9cdae78123c65e384ef735e25a0dd2e1d6b999edbc6d34b56cd254b3eccdb163ca120899a5889d12c5e8a3f66bf9dfb190a401f65f405e5caa63bf000a8a3a3b18c79ce34dfb66a7b7b249652d2d29c0ad4f598e3f2f6a62003bb8d346e67f59aa70e29f1d64f63a3bb17086d8253adf85892fd502ac1f1e33cc4ddf36fd8f3af9436f0682ba4e3242e7c0bbecc9f392b5abeebc6a701693aaabc155c6619655ea60b42962ae12b81b40e59802f7668fa3f6db00d023350c4e9ff713a8dd6d100701efd9ac051d4712d6f99941fb337968f0f3498ecd4088e3cf9ff377f8da5b7be41d0f7a8b1c60cb840e7e7c8fec42a58e6e4955e1a3902924c5618edf48201ea802c02388deb3ddf213d86e016b323cf25e82c30bfcb4f5c4e9dbf6d6e837a3fa267d33dbfb31274705760e7013be26d65b4b19e530d4bc5542fbd745f366044ee6ab70e2ae5c25ea2a9872a81c40ef86d86368f0d04b31639af4dbc5264422e0db1620bc57fe8033db3573c11bdc3c9d407a3d5b6ad5a44fb3fa592e432c4afbf48c23e97c66ca6c3db592a99ac5e94f66bd5bb425ba2f46d7af2c01762d9a2ad845ef55e26f40b4a092c047f2cdd29049955f6afe9917bb0efaf410e8603ec991c72d1d608be61a43b4f72ba8f672d2e3a9fc513d2d42374f2deb1e84652f2d118211a089ce6c3df2d0385e513a10a30346615b557ed0ec4f96c8a1823d621cb01b42827b746aabfe8afce535fae82fb71f400380dc2b180316bef1b0597f6ee9a25eb3ff71030c98b6a15a4e9fb39de44221576850740b2ddd5a9bbf186ac732bbf5ac03591d30a238c13cd085fa1cdc276f9efd4cdffa8ed5dd372601bfa8a2a8301d013a3177ae95a74f1f66fb94087834e0057c47b5330b80e7860f4c777bdaf0fbb24fc248f9e7d2ae15ac8547b70a12987fd60b2fb473cb3deb39ba69de34b58176da197992bc7253771db6b11c386312ab45d9f3de40d066690d2c6f909a35bc1ca3dac28c8f82fd499163c1b86b68b9354eb22efe47374507617fd445762c7a9ac217dcb9523e0419f6af6bfc7390bc4fc2e51b63fb087379569972e3bf25dc835845bf032eacc694c940127704974883cb59de92333d38b2590bd84dcf5c9cbe83f5d5f6b5094bcb9fee61053a6fa038ab6b1f2e33982e6f127f201146968c2cd5c855d581dc56f1261bd9c4ca1d8b569e6f3cfd5a0917f8225667fd975f3a136c8a64f3f0c4da04888ace3597ffab76dd84f8ef37ad899053ae103148234cbc3a1175ce66e18cda2b17a171b2f39afa3336dc8a1def70556495c82ab5a2d50637f1945e7a39b9a05810f156179208085323dce42ee6368639375e4133f52655716743654fb1c3478c59c0b9b7d9ecbdb759f4b6d4d9aa653e83a93c5293aea03d63a3cd279f0212cf40297e2e2d7cde3de879ce0cbdc8f41da79e6bd7c771441188d5d46753b170b8faa517f53808df264a91e3d59d10640f121dfb8eeadf8b4e77cafe1c1b7a6eebaa171f9e2505b32100a086a959017a472bacb4694b1d4f9ff155e6384b4fb4e5a9974724a93bce79f4a42f0eb465a539692337efdecef08599fd4d40dd997d18742b2886c6761aacd2ab1cfbc859473d90a11c7f8f6afb99c1267a2ef506b3b6fe8bd656b43d3b5a499285b8c002fc01369224680b4d4e28f3f1171c20094ad8df16a8ba1d601e1cea0326b81d8465152731198cc09047bb8c6d468558dc3fd5532a210f97ee02fa0f2e87274c7d9c657f2a4473f112a796f823243959b65ca01213679f84adce3db7ffdc79db55d403521046812320d56d18e39063d4fcabc5aead50b978e341465fbbe948d173745d3fab7e7317f663713bcaf6f12adba8640b89329307be010d4441c38cd265e22f02352e2368188d02be9cf5373210bc83330e02446758ed43e940f2efed84a214e5acd3bf9383723cead7f5d2665219a2b9461d03c2658c5da3cac91ed8b2d451a1193498133ff47fccf6a9ebe6acd65fd0d1cc5ae2f4a89568d35cfc728ac8112d7d5500753489a4959d96d3ac0def56e0efcf7aadd95e226d75198cd366a3606e1970b29feec9713d77b35a817f2e8c632b250c8a077c5ed38a23fb9e72c01f5dee316f01de1841060e1654191adff3746177febefd29a57367cd65e7325521361c763c88c3b21be69869e41899448c1784776abb52898ed5e5fb45ee28d40384548dbad26bc1cd03b58016b3d695f4d6cd4db1f78734d23860443faf7a761880124606b1586dbefbe845d82da19a1b7d1f6c00c9ee6ad46ebcc29541a6c568446c37ea39503e525176480efc0341bc46d7d8429bd32dbcc898099ee8816168dcc73467ecea69ab3c823bacee5f79a8bf656fbaf45ffc2448d0a3aa9c11af6617b3e206a3026b92c33ade1c00a2fa4b450f26a9cfdc7fed931e65521ba7cd0919488a2e460a077e35829783312e4aee7cb824b2745c347f4ae03f484729f53df5972cd685b205ce5a026a895eaebcb33c372d90ba240e303a1b861291995f1f1f4d53536f6b50b3469481937d7600cfb68fe026809348551bf0e3879612684e2f7642be253609a8442566db5134e37efe37b4e7263cc1726b20e7744dc6f572516712616ffb8140f02477d4ad7b175e43d34eabcadd9cda3bf017bc70c37e51331977acd6d99d991c0d9d211802650c7056db0540c8d4a355484c4d968a663303965b0037c0de545a08e04d35b7232bdc82f73ce4380b5a8aa3d8ac3cb1df4dc695bd6a67a86da18def34107df26a23811ae0890766fce268ca159c25128b187f3b88311724c1f345fbee41d3a898d890235eb5fd7a03dd7f5ffbbd1b9b7e4a3ceb83e0ca92965e758c9b332c866bc496bfc9743277612522d24ff7944c500e0d402a8f7efd49e37195f8d58bbdd1506b2bdcd3be73c95c286326814db8ce137c5648b52f6205d01884ddfcb0a1bead2f250040701b118475a3bbb221909c3bffe3666334f311d961c5666bfe82886f94858aefb2a79a0956cfc5621b33516d8f56c5df6f5d4ab0d5b7a564379e98247f7a044ab926cd734aff5c8592801d5cff9f03c2dd68e12a0074686ac74e30b75621bcda218e52e863165b4383cb560ac9604ed50576497af0c93038abffddcd8c87831741f557d912f2f4368d2b1b3a38b04969fcc5e674ae2e5749605e4c805969fb6be70ba9249163f8f1a4c36f63b1a88f5c092696950413591869bc3eb874a73da2810ee9aa0073b663dd43266d39e2dea2f1a16bb2354297e9137f5a7b4dc6ad78c61e6734b49c4eb1291e5d0db9f98b886b12cf1f5c8ca16173f9eb93ce4922f9dc4ea08c9374ed420ca9fe2b99a99465552c80fbd1afae6c2e6c79452d2d2e1a3b6676b9e576263b6566956b4437fe7036a258635d6e7e8ca3074d12dfd0bd64fa6ef4a794f8ea391a6f0c688e1c010bd2fbc4016942f14bf5079d3ea972c8f7ac3a374d52712b76db32eb3bcf391114cb21ee76e6046a98b88a74ad2982f28e09dcc41836e29a8ccf4cb4717416d42088e881ad76fa5a47c1885a8693e1b3b23ea30db7c664978cf3a505253e66635eaca4d329577566016da2cc11d3bdce77bc2993b2a68f8a6ea4979e0f09c56a6d69886ad301364a9586f0ee8cb22a13b03c8c3f393a06f194761b3b07b44b7513bcaa784859071a10fd48c56f4b0b6fceea3fdf03acb49b16a5ae0b115c3452d0dcaec0a0de1d36c94b71af3c1b5ca82ca26eabf29d3fc972d5749e239fe1df1a44d87ce56935ad3b6671938004bded1bbc1ff53081520fe17b038943d47d35b97e58fcbfaa99acdc3beef211ab8422cb358e15ac37ada0ab75d3b450fded9e89ee1f20854eced91bb976aea3abbc5092537b9d9a1b18cd2900401b1f2f008f152abac59a017605e0149495d79132d514fc2f6e87c74c425398313a08a010407ebe08ca848d55b91eaab7c9f656ef124e01baac449528ee4a69c7ac513850e641b232a9ddb630b194740ecc2dc440ee6ab4c7d3545d7049769babde3b4d91b23e53600879035de709044381aab88c6cb8bc18eee9ecefa8b19d2cfb0c76e0b5b0f2274ad2478886acf928e8c7910bbdd8a9cccb9480da3fc8e6ffb42e86f6a3c32c5901fe72a562665ce854b4a58b25d1ddd4b7ebea211305f4765f61b1365989f2689d4b0040e9ff9de5dbe211e0643b741f095d62bac3b230bf88384ef1d89ab8b64a16dce403a7d726d2a60d268662d2ac817c2cb6b718cf6ef61362627d29622bc252bff7401cf9d1bf010da9a3a6de4dca4e26dd0016a329ce24ff510666beab9ac1e8c3cf461f2409713ab47ff577463b587c53457497116b0578199f546025681bcce2523dc883c34a2e321a3bf16510db3ed178b2d8ca245c0d0a64aa95c57c54652ac2fe1d66e62b395ea7cf5b2264220db20bb733124e12c1424c226c7243a9cec52b69e65b1b4bc52ca5abcef5d4ddb2d22f2bcff2723986f25f8324ee3cb5fc32daaac2acee0c62dbe350581a54a1795150f86086263cd35945895577218cc9fc30b3aea88a6f374e1204ec5ea762b96c00509aa7f32234688cfa13a4049f6c377cc58d947265dcd6b781b8e5e44c389b427f66c21b67a1407ea13b1d2717d60a19041da05044d4ce4dcfffbf2ed3920dd39c91e23f0fe6c9ba139d964dab10fe7ab8254c030782fe5e6cb267fc80f553c3e1a901533df310056841eaa09881b786c22606fb2ed8fa223f2ad25aa19586b530360b1923b7bab072007d97ad0d37fbdd7e00ce7348f167bd0664fb9dff11733ccdffef413da5468f984501d42b4c3989cef17b1d48e987de69fdb860ef280e7ca5c68b2daa6a26df7953a1c1811896ef6c53812e2ab897d9a9866b7d3de8e3d4532ebb09ac7581045bddb2bd9343a3cce1065bde2ba43086449eabb6feb4302470647a39c33f3563b5170f916e18ae3ec04d18367ffbaf148727b823770026aa5d166404964dbc4169b7af741736b8179ad948903857392a1e23d1e7377c622e4861d9368ec2d741afd5488275687fb8e953263afa968d561d4af61883af63faf80b8018850fe821c918933eff87ed714ff33ce7936010508294f1bef994e9010ec8bd25224f207a3bd03a7fc0b54aca7726e45306b9e19e7ce37cc3346c71123e6b22721cca16363d71f02ffe72df5365de387bfc07fee5cae4203154758308541f5c6f351dafac1d399be28f74dd446621343472b87e8545061161eeaf0650b75a6973b74feb66bf3fb2174183eff9697c18a033a15a28ce74e9fc8f19d5785d10771a9922ee15a3db48e6742c9eadc83991ae28ea258eba1a85cd6acf28cca45caf085a3ba66b539ee720c3acf102a21e80713070a971f0d5c5edfffef56a78812463895da3050f01944e3c7bc992c952f0e9d76cd40788347a4defdcef4507a69a23d8e0ffb6cafe7e75fc8d2a1b39bd533f5d030f021d65cea04cdd6d5ea604a34198075025a73320c219ec4648b203f8390ec64d530e151f9945952df9642a4d6ee2949406512732396a66c8b2846c7536aae549e89b468f506da4c5daac94655e3982d06e2f48ee359bd539cef07c3c756962ebd00516a24f33290e4607a18410a85c82c9c44c80edf2aab1c09f491503f4771939e04a65bf3706d48b3899b03651a3aea2e8a0f2a8a85478faebb0ba9e4f343c8c334a2608d243e19301d2575df40a9c9528a48c8733ecc225def4bb4d70553fe35a9135a7f91612e758646d3018acc9c41f86970597341dbd806a31e1c3032b0b5ca959838a445496c0262559b0145534c40abf776b4feedbbb97d912f4007c3890f37a7af091906a9e0c6a00cbeff96e475a3721405992a68ec639eb279512b1a9fbc165cd429df7b710c54104371cff2eb10c229171b4059268afc8b89dd7a311e636cffa9c7d9b899c8d27b586a68686dbbb21ed0df292353baef5ca98409a265aefd92c6a772856227f3263c428279437f67fe2a1c5d9fdc32a9e54419b4f59f3a5ba8b07c879cb05a34886399e5147b79bdbbfecd8a53610fef130246baa802bb38c72d5e80b152ff4165829367f3fbb73966786edbc09c3d028ca2b706ebde0957c5a64895dd1d76b0baf5ed8a8553a9fcfee8f02d2db9dce233b729d272d2e3a2511590ee8239db064ad6b66d545f4e27a67589cfece5f7c69b5ba886a5e860c8bd9400ac1990e340119db3204206f961aaad5e2c0a131ee43f19f999a784cb469c27bccdb5a5f1b083358a70043da853eb1e2b606dd9b9dd787799c4bdd459fd03b3ee2df2725891ee71f8d3e3c046dd6b099913fd301d1b789f5fc98956defcfe55b3a59252f8946d8162609c22dcb025ada4dc08d547014ae7834a99457502ccffa26727ef0782ba81f97adeae5918988cf6f5467d59017eaa2044dbdc63a4b5b140e4de38e1e2e047e2ffbe25560fcdf62d4ee934b5b316fe249ca84436fdb8e283d97012c6c48f43ce75e6a3a279649f8e999ea7894b79caa00fc34ab5a14df01bcf622822849d8df5d9147b5fc721012b9f88782d12d97e552c543f2286c670a6ec8c0c4f41115cd20d2140b5df986124c7b4cc35030dba45e299222d4fabf324a0b410ef621d1fd40adc2b0359a26bcdbea51bbd95fd48d7dd6ae8cd10e7d699d450bb39b09c95487d09cd9fedc7c2e44cbee4e18e68d24a573cc01d0b9d75342583f8b7a26c47ebae9ee9ead4c3ce67e4ce2b1d1e61ab8508e4d57e6a34fb1f0eb0fe63b1cf7afdf7afa00d6b7628be1278e0d3cba712986056973d6983fbc1172e5e15530242ea94d3fbd3a1d09ae2353bc4c88bd9437f3673bf041c423e13de7a6296d35f1d6b11c69a5bdf8c0be5c075ddcecf305ae42863b994b74ef76f5c40588511390ca6ae15a9e471db999358dc24a81d2f99a6b4c7cfd821810722ae5c2795168efca4e5cf06b36bc0b7412536903b5b240a1530bb587ab5b72a29a7184314d35408abc8490452956d9a3a383ce9ff85e4821bbfbeffa8278a271b212a234b16a462ae8901911174d8a82a79800dea762b83e5d7ab72d8bbc4196a4f776234603db5ebd04062a1551d3cb2776866f50504f2f02d01df1977571a13e4ae5dc80073db8203be7c9e4bc0408767b72ac04abfb63f8be6a9b45f5683be44b40c20a690dd97aeaf83282e70ba4fa981dc4c03b449685f05e441a3323d4d594b3fc752b58d1ff143e0816f6b4d0fe677f37cac65a7269ecaa3e69f3db5390802ca9c52c1b2e760a54f4481f6832bfe55e22889d17b1b1969e9726c761ebbe1fb55482170fff9608d6ebe3a142090b8cc79bfd6bf2c7daafa4ed765902c4f0c94fef4b3d163d191050e0acbf5d9b55e1d78561516a26eaf11f912f2f227016966b4acf6121667ed43f29906c1f93a92621a7bfdf9febc0fbd018df437e2542b144d4a366c61be1013e96254403bea1f6649a517d327a955db52c7684e135617c7cfdd85b31e5a55de388fe5c41e2c84604f9123f3d4625057ef022f8dcd0ae5420a7e834c6552ecd3f3bbd66df2018db6fdf41346bbe333728bc3e7c9df3a9265fbfca59bd27f7880610729a06d7778d50d97b79a2cb8a48cb58683d11371f05fd6b3b08371f311edd72c2a517c369da7d8bba7af75f1e4b1af0a12a3542c90d3fef0a65247e4f54b49c506e2e8d47e3e89094964c93ab7819eae2d8c38e33c276b6a96910fa51568cb0d03255aa5a5e0adf7df12254c76eda88691776a64e41f6da7647e6e5731aa5e209d20a9dbf9b1819e5027389c3afb68747c20102f9cf442558382d11e83f8873befa3922673215bd6e17a07cb977599975738b3a7b85879d65278f39a8af1596d52854ba8e1efc035c972884c939d2769e52a058e233fc12e205eb6487c81c3916144b202ed1f2e2c74422f30c4acc2a0b044dbab5063969fd111aea1d88bfe2f4892c2021664d23f8102be5773bc586007ef1100f22cc93fb0b845f6f601431f2b20688934a75135574b8ba0a885a09401a35adfe1273134c1da8f089716d69a0c5ad44762ac12c6086d7241b46e240038825ce963581a8bf2d3b6dc8e94a3e314c6e979edaea0e03e3f75ba0ee1b09785047fcf4568328283d3a805273d6d0f97730abc1814cedd1e3a051b2770280d420985ace606103c11c282cce45453ac4a41ab78828a6b018de73885fa47a6b02751aa469752ac1ba269e2e44b0f1f19d1481f409190dacd181c7b8ebf5f0a9aedc8cb4d79d98c52f38069dc23bacf523b104525f5d5823581c147089b48614d6a46a78a0da3767412d9bb175572910d20b71f26ad8284fcf44feddf3c9395e9b719c68e3d03b8ba61d61693e1da8062ebd0fd504be6adee2f595011fa9282b9a9c15f9c0ecab1ad54ce798609da7421afa3213f954fde4add44c81cdbd44439da598665f03e5579d14867fc46cb284e041e1fd8430e507419c68190192942f43318d7ce8baaaa5a4617e508e975f9cb213bc9fa41a8beccd01287cb7b619be5ecd654749b720ffaa654be5a7e5556468dcba8346ffcbb6817b791bc676f28094d50c0ae51ad0209757f920164fb24b12e8cc049c4c7ecc270653493ce3e6b4f69c0a14565fe53b8e5723c949228f6c7711f428537a580bb6cbbff48b82624294852e417a89b18e8c46cf46fb97c18dd947886ea4fcc7c3a4f7b1773c0006139dfd9df1f6d926f8052744a16beb9ceae100680cc601948c2264961b55ee65e9c1a6ba48d34223a1ee18a7ed1b73e3eb38d924e8ce0bcf91afc6326a18b18fc60da618d4a51f85334a37ab432281ba427c6349c060a66d0581676fec3aafb939a7cfd026f464837ac2100091b656f5fec7fbacd5eea6ee010f2f9c9bbb1eb6e21b86477f2ef38b6a9c5519a25ec49f1a8073f7b2e7790328c0fd3efae1d7404067869a5e25465618cb659caa75441dcdf9fb1700568c8cdfa1dc52bef441fafedcc173dc64b86b1dd80ba6e5809ac07094fd52c42ff47b340b5dac65894b5f18bde65e3ad5934ca0ec3a566427d777407f939eb2bf26c0535aa8e55165f5b1312bc3e1a1ea015e24ac22369ff6e287588c170dd45341a0263da32064b8dfc8bc46999a7e5cfb76a6bb34f4fba1e585024665acb1e210179ad43855dd781020790e1f9fbef93eb20b370d9fc9001b3c81f5d7fb14230e79ea3c6c2c1cac1933c2575a55e0228c88d5d32fe99c8b423c85482feb994c26742a12146ed9d8bbf5ed2db2df8196fc20a8414e7d9fe26072f9ed2274ffa9f2c3b536f19784e5081f2e3328b003235d0f897f679d0adcc3eeef4e202eb171fbb2cd62a899339e790922f48cc53710b31aadeb4808eda23ea241e09de1ead6343c81460671811a94b9a670049fe5aabfbd32174e4a1c1cd34bd4790904799f601bf24f83b305d53ca805bda7da39d794a5f6825d9e5ed714e5b2753cfccce029651ed3014c5479cd9c0785710cba432cdda93e13286cdd5bc6f37b2a3124ecf3f2311eba7238ffdfcf5d14a740d9085271dab7637b71a9b16a2d6e36abdf5ea0331d981b1e836af795d446c1a47fa344a9d6e725ae0c10d7ac3bbcf92c68cc822ce65a1d81a52bd8e0f0314e2c201c74c922ad229ad7a81440141ea8968b5195716b599670b9899f9d2b0aeecb14004129fd1d22e811d89ae3aa2ca2c4fab0e1a58500448b04db0b6795260206116f6d71449954d429bd10abd52a3989ba394a67e1d358299c4c59618fb37bf10eb990c8462f502fea0ef29d74f9836c7baab11b0b47a90322fb7d24e8b784a86a12dfe9661b23bad8e790e7a4549b3294aa8ebb920b06ddb7a5d3c6ed497b6ce6720e35949f4783feffea6504a0345bda24cb3fa2d9f8827804edafe6ea6641853e68a0f67d18f9a245db8ccdbb3c9eacc6544c3d8455acb24be8b6cc194209d942cd08e6b40e573485df18622b90bff95dd8808add61c17caccc1305b44a30b534bf2516804ed0f5b37b3286187444caed8ed49e2d2fb1db143645012b017eb480a559114233cf7d767ad496137268977004a78564addf2b71fb608f6b5516a1445babc1b72304ae1f2dd9798436aecfe5af53382c2a9114105e4a8166b87b75cb136797a031e992ec52c304ddee3c711eb155d1c56d1183216ae33b6f8d5bd3f458840a3943c1d3dd681b95cd40d78d93e1190404511c172bcdf1666ca275164ccb8d80fd545c4b3311abaa3965e4c57fddf5bc6c5e03cb4ebfc3805d95dfac1256b224b939bc308379a459d7f0fde445ce485a3736fad0e1205f2dd3372a7e9b90e2ca6f648699dabe710083cfb787ef1f681d7b76e22dac07a9a7437a656e3feba1ace05a70905c3e76362c5f4c4d3f12c8fd7103e39743385bee248bd598ae0d585b38582be0911f39202cca31daec1bde3f621755b8434eefc9a252c3ac6cac522a474e31455a341b8e493b6c43c4e0973b0efd9dcff29d13ac7e386e743cbedd13535adca1a8cb2b6f7e833188292ef50d4dcc41e58379d520f98b67c651c89f5497540696d3d9e22d5936e6586039dcd64bc66fe8dbb53993054b4b0d86edda9b656f5493a012f8f922867d312a0bb4eee3b2c5d8bb4dfbf7d508bfd5abec2ac8f3693ead0e2e712db6bf1c862ebfea6f52833323d881044271c3dc94a5c7cb89382ca40f953fdff32c3bc682709d319de6dfd3bef8ef84e27f54507500b360357c53f2de1a2d027691ae042a20a980f8a58f5a13cb7583c08f8e2a71e939654a160194fb6f59ed0f8c90310f94acd5eb60b3d22f2c7402c544502e4415d427ca8a40a1890b4b6dbebf7e296bb69030c01ef7380cccdf7c739224d4b0e8856ecc396624e2ceccbd560e019a5a874d938ad0ba4cd18fa6d8ae66958bd3088fe42da83cbdca8572ee576cb7e1c8a1fa190feaed0a32d9a7ae7c279069a3ce14696c633b0b2978314ac1da0922661c22b690ff7e57ba8f1496560e4f1769539fb265266472578855ad50b4e47696f147dab63d8ac39b328571e75c7eceb3c84bede4c7442cc090fd88fe2ea190a2647e1217beded7d9f6f6e727ad8c7f958aa6229e192f12696382edbbf947ca75bbdee2fd558bd92ff7e75849c991e5752e9595f1822dd53877a25dbc5dd5ada9e60574a785233c14ea0f39af638de45bf2fc917c5520b4f837192982f75764d56299be2e4e4f16219e77d0a58ff0e1d5746992ba2e7122640a5cf5a219865ad302b9061fde274197603b42503b98fff975bb0f9850075fef7c25b6df26a9c467cbd8b22279ef1dd16b32d71de046d11129171075e15d406220905bd382b9907ccd421a3acab1eda95f86b841bfd1738377fe6fae252f971045b2d8f039a6e0cee335f2e5e6c2543bad9a2be1c2a730727d938d113f73d5b857a226ee577d5f37e502a011b9b806cf9da60d90d0a735ea7d422baf311cb1aa073f3d7e52f49b0346fd6eb26dce63f1bd76f2e92c79048b909e4311051cf4281dc1464bfc2942b07e37c9825127d1b31f28dfe69bab218c1d62ca7d97540ff0b9eec3b03555ebc86726965cee50d1c430bba20487c749467702e746de02a3bfb1d4efb4914f999d9fbbcdd381c64dd6d40c592a4cf0699aec6956eab82c22a12b74ac153588df633ca02a8a1929fbadc7d4e1db3f81b60660a330a49610c0e0318ec62aed4417303240af338ef89423963288117b16a3348159b7c51834447c4af4a3ad34b7f739b9f380519c4c3f02d5a8edbee6d233b6813f091d2d2749acf090a72bcfcebe97f74bf8a7f79e08c3bd1e987b0fcefa9a25714c592a2faa632299f6e2e75b615ff45448a84aec7009a758f6c2c12957c1f2aae87cbc5e7ef0885fe4c5a36df379ff689023c1708a0d4b43c46891379d5eb667f540cf0c89a7a0e4bc253e12c9e0ade34d4f1a2b51059d8d2a99b52d23073c66f84350418be2d840c7f1dc9966e01cbf52edd718f620336c4fdc766a504bd9d7eb3d1920e89a93ec201d346bfbfe0cc5bede3def99b39544da9f84d2e11041c6969d00349d2521373e2da6217e70f2b24597bc1b67631f5c897e3c7ec4a8e3b6765c11681256089f60aa784e963e2d766493503266189893f87c9958a06a3071d29b9629af446f77ab26263af3b9e56b7f308ad74cfef489390c20f4f5c9b968e8e36d64bbc7bbc8ba9c7bda1fb55e9a3eb6fc1de5c7214791c2266b9f6ef3bb5ca7d83f120c2c1a1e04c4b249047abfb2210453e229efba41de800c445b438d7c094b4916a12a2c4e67c93c460a9511284eb27a70dbebab04c6fd8ea1b0a1f881c51e365be60110eeb2c673456b8218c2309eb68a491f3a5cdaf060f3b841c51d03da6df274f0bc9d291de40691c4889f6569042f44568eb2fb3e96e8a9be493e664505987c471f2231815e2ef8c8e7f904a8769b3271645ae7142bfd486745cd803023e5bc59bd273dd42cf2b3aad20d2eefb719d8cce804c8d3967f1c5fe812d5d62b2d409b31ba64d7427e9728ee74bb110015865bddec34c669a04685a61105653a53c27946943e34cec18afe6f3cb3cb80ad349058bbe4efed10aa290fbb6e80271280d5eb394bef9cf63aa7e9af824dab8b7fb136f70244e7f7a033992eb6f6501004a01ddc36b940356e6abff705cc88a16cb16900ec2170df1c48a080ee973424897d8ee1bf0e9c48306873573c9e303f1853feae8719e0856ea1e70989eb0930e565d511e5b206827824e3c660162edcd9467a7d58d2f398af89e32b58df6a2929c169835919bfb5a50131f9323d98c0b300924a0f480675e6265e425d4c590ada0181889fa315d0f557d27120978719e1ba7cdf13cca8c0f8c9cbc915e1099d9feffc89468626d56ff1cb228550e1fe1df86b3d6155be4e3b57ca3571595703cfff4660b71c322f444c816397acc16cb9cb9132268056209d01a8d92f0b2cb4cdb0eb3c574ccd076ce27d6ee1149b5a62c095863e28032ecd6ece5ef0ea079f2d07bc253fe4596a431f204bda8ecdd4eb3e9c3ca5f47edb7ab66a2e8c9a627fe17d435ac70d19c8789cfee2b26f0d963774342ac58733a816510e8be62e6eb82a3dfead3f39058a21f3ad22ee8393091cd8701a7c45e270c252d57455d97253664511f709965754ba20c2941f9c0c675c23f76efd9bca6c63eab7f037ef01ad2925a1cdb311b01590e1cb6f26c10bdc22e341e109035d1899e0975a9af90c176d95c4f33e01c7c0e4b04d003428af11d98c490337d1a70facf721fadf1c4f3d16e2ca23c8e68b7d516c9ed4e0850a7e40068b1c7dc3f94d11792211ee5834615090b218a84dc00337f96107e3001d8ae3df2408b5cf03b43dd3114db95d16f70c9fc04928db26a7eb5ecf7380b0f985c0f9ad55b063573772bbfd8049996e9ab1e41b6ae4aa980c164e8ac66ccea78bf4e6680f1ebb56dd18a8c6fec7d52ac5807bbd9df025a20ca030192ccafd0c9cadab52b51028f8bf8705c4159ee9518ceb4d8f38d2c306b5c2d54fd7b1653f76ce1289cdd48bd9ac51342d67255e4bf15be52d3ff9fde53d31ba99e8aa91babc239df6fd1407cf60efb20e3e88bd53300b2af330245f6ec083de96928483c83dc8b9d5145f77f87dfc22534d90de01a1da4b706009a4694d6828dbb221f1dbf731fcc1c4f72b06010963b26b8b8d64f8d8b6ec12f2284fe63cd19abf27330344e304bde96efe4f3172f6c8cb65ea0a82445535c8bd6b223a2b910338441d9954987003a1783b196d182c88e8c2b85daa0cac5bfe585e753834b36ca308e2bd3bf73162a52f15f072e27ab7fb312a24acebdcdbeed5ec1d5ab9dc8cf796d8d56f0ab1695c8e31b1b6fcc76726c8916e37a13ad82cca74b000d7902883cff5f96067f7e81d0a7f1f031624338d451d73e6801645735bccd385cac17f7910d78eb6a3dfa0042dcb6caec0506c3670af0b70fd92926a8c7aa1eb7002a952bd1c671a6cf4a794f8a2f0845a50cc9ea8e143eea4bbe45e834e4a70b942e6d677bfa6b8e041886246391b7905e12456872554d1fbd87a17a8ee7c53ade9dc273a9d8d0b44386cef38a98643e957c32e4b8c4d9eb49d94b6328f979cb60f4d50319c4027baea1dd08041cc2fe5f1e17e47581194020006480f46be5767edc1ae5effaac9c565a21b0e05da0abd60aa20a89d3e049a9493d3c004422aac357fa86c6f5931e4c555e2fcf27f8c90287e2bd12533fc625e04dddd32224cee6f13fecd9db09689c7c0fa705a0133847eb370971b4b12e092ab6eee363536f47c042fbd3a2ac1e85b09caa2998f14d43acbca14601733f77b762c745247a4c94748645fe80dd3b154e547c2f9acb966e1560a33131e450a233ef295da5485a89d40732c9b4d980a74123aca56e4745b58d14f1456616d342f1f21906a32b355ef2171583f40b37bee0cb5de040803d898ca73624b2716ec0cba1fc526ed6ee359037194d247b1442e3388478091c9becad993a7176ecd8b3189229dd4b5027de91a7fef8122251e75f838d6c6b7d6df260dc603151e6061e4dee9c71d84d57c092114d886a233ee6e240ec0dbe8e8894a94442681186129442fe6238a2b34b75dfabf41efe35fd8f5961513659e3c14f4a08214c62818489f984f9e48092dc92ad998764986054ab98b6e30db2fddfa42fa9f772036b2578d5f032d9a9352352b02e5695407ec7a2d9e0d2ce3da8624de348fd03854b32badec27dcf914dccc3ff9d4fba19a8974005f2397ba3bb85e45c1ce0b0422520d8d4e120a591337b71acf0432bb18ee904484bee6d0110659135f1886bd260a89a3bdd191b35229f0012f9b11d04a8cce89f195864ebe8341471515ad043d85a5dd7bdd4f1a2f6670f8ec0d272b446626a6cb95438565df9fe9bf127f4227164c8469bc214b2b68e824a374b7f593a3a1fd8f4b73cf434d4e4765898d983a0ede262607be2677dbe6869040753249b53fd4baeebed40c8c9da1947e96684ddab4c6ddb9ef29c9e3af3848d8c61b825a1a81972a43aac0bc93502b8c41bb1e63617c0cf5873749396d61a981f26ea7f5f56bad286d622d41e3b2b11973884edc12d9b09717ceeacf1aeaf37ec257b9890b52ad6f4163f9807d382606427e5031a8134a508e099ee904ba980bae6d3e154fe766d8bd545e0c9c3a06849b2b0fe72cac15ae2c760c95ccee58ffe4210790aad358994bd6c228d04b1ae272990d731bab9359301cea9c6d12f623a5621a97be80e522fba9013edfab2ae89df43faf03afeb202902c4c1b062c1f34d8fd3bf7be3cecd5a473ed1e7a62f8bfbd5655783331a403a571c802d6bfce8181c2098b0a9249bc4161a9e1c9106a5fa0620cca4223740fc4eaba4742f1fc9834ffe1d3ccfc2a22e0ed1bfeb97964796bd25c944b1ba15f6909382367a4a4e40cda4c1425e1764761eef65b868bb72dc8f6f95d8f606dfbc98de752e486e53ecba9510dd8d6aefa047d1c73d02c9dc64ad644bf10f04ff8ba61b07dbb9f3a086927eda88a3df6c6ca8548a2aef268ae39a5144470bc8401ecd43ae61e1d6983cd0fbc549d2a8e4e5d59d5dbce63f4e542f5b932d17f827e6fa74d5f044e73241d3c8f8331c20554f8d4cf32de32c2674cc5104d4b74bc8ae90fbee22bae099afc956d7d899254e00f1ea5e6eeaad1015ee2d559002b1134532bdd12a52cb95d1a49ac44dd269ed394ebd3b2211cc6ba9d2091c874f36e154cf13fbd086de1e6b6c27ae0b5e0a387ac40997a54ae08c412b5e942479f5688cd2da365e65e0b168df40a18ed165d82872d69bf383a4d8688d288d021f9e6afda33b4c8e985396a09f28e12955ca3971997485913df6fd0c8f4a104dd996f8913bf60393c4c92c5b094c351d879a728d8f033659cc46716e8b320fbcefb54dbf07e96b73c583d1d4908d9f5968c109ae9324be2f433820fb7d01857ca9fc6c633bbf2816f36cb5aa9515b86260da6f9f0eb1a50a618408e41d12a69aeb263913dbdc7451c2e6c733609bb4c3f4163e8d22eb544d55e9e338af0bf99aa5403881a1534ba4753cd3894997d79bc30c45e4c69318d0ba7b3da23f148f66f03eabcc8a5c80f12c852c18ae1c9a8d16e4b1b57892a9709a55ff5e7d07d943a196313afec00b21523399b101405e74d126c13a469a6fa30d5f88cebe5c2120037b23310c61acd40e3dd4b28baa1c8700eafd4042304f194976a991fe477562b7c6ac953965a6016b586437de9f15c7b3aab8ead28e995d06797c358769934026a388a0c8e6cdaef150e5544e5ca64b109fc06405969fe6bca9d22db65bf491e5f4d10697cb2d9749e5c932e7a47d25b0c028374d2fa05ad66ec6ae5166bdd6fb8c45c394094fbbf7bca2d31d47956c114a7555f2166bd6934444df681f43809313874800dc853c2a01864df20fd1a7db4d5c997df44c79a30b1b147e21ef8e1f33a31914281f58c3797b63d7976f5708ac07dacaea0ec49442d7b90b2de923723423822c41326b4e923f65fa2c377b0ec536bfeaec8505a5bc623acd3e0c39f66994e78926f34bcf6331f6a12c2539008400b651178502400a46919e09ab8fadb8331eee9973e0b0cabe260279c51ff7829e1f3b2f13f6155602555734e86df9fcca79e8fb8d28d2bfe87585c52b17c3079ee75e45bed1b7d2323cc757234c14f451ca60c01b8f4aa3dfa0172fc25201ef252c28c68222c1735344b5514f09ac0a850462a3261acc680152aad6171fe467c529d23c6a710352974cdb38142e1393f929e928538a7181b1b0fb7707052090a0cd6ac86ada175cecc80041af741d8a9654184f8b879993b13fa767ebe2586defe759f43f4d2811cb41f9649afbe0b0c64bf970ddb02bfa023e0c3edb287af705f51c11a67205a522d90901d592459949a2d30c9fe587e1b4b777e2d8930854e0760dc51734d518ebb1c4672fdac838ee8a3928bb781ebf1804950f4adcd7a6028c50a626a66c01bddfd23588775758f22ea8a62978bfdcb1a040ee46cb190fd04a31f3bb9346e6a3c6c10ad109b7e333fc1dff5e1f71d7a3a0134ae0fef2f561cf58b8cad74c35d48b0f3dcb925c43e2b0242b4fd3712994b41c8f4148b709ce726fd355c2110a125dfa07c9932bd3379ba35930d45b022eb23e51066ad405b6a7eb44ec99af6a90a6c70eae64aa5c71d6f24ad31d7e1909ae6c8d62bfa8e33bae6ec1dbd2fd265275f3216d785e21e372ff48aea5e205297ec7679dd12380536657c098ce84003242a33ceda257d09b0013ee5c567eadbb34f6ee119386799d0637adfee746366ef30b4d9da93810c17ea25d1669cb5876fd50474a6a820e6c18328de061bb40922fe221f3068939f9c9590555debc0360fc5314d4c1968ef2b9bfc04292acd7153aad1406f23f7a9ef9ef231b54b3047600c064b3594ffcdc3069d58ef29fd96a76080b1017d6ac0b9b1f9435daf630ddeabc8706bd0172a00ffcedc60cc5766c745f0d4337c7784dfda9aa5b832ae2442fd4245147aa592c57c12de991256672eda94f22fee0b5171fe3d7b5da2d5e9e9a532808057fd1e789679584f1e9ab32ece21517a8228701777ad94d8ae5edc7bd50658b678d79cc81b6ddc32968add383ea016ba4b070429c45b7683130cb476c954b359739e30bbc56d1434e3db95bfa92207ad65e28545b7a56765d8d6106b4cd5c4a2f80faaaf374b6968c308dcd3e692ffc1b741828dc831026b0bb2516078a4bea21261fcc17c07bcd778ed3cfb0c572e35baf9a48b4cd88a58eda67bd8c930170a69bf4fcf6b6fb361230986d860d41a31901aa68630ac3d4ab0bd8f0397b2505940e5b30c5d06483fe6cae4b990f6a228926604092ac0b8a9124adb66806753cac86bf90ee00ec49b766e0d63ac7510ee57e41230eb99385cdc256dd438752905aa7ebe813ac89b1a7eb0766ac7b134ea2d3a2120386df263f726d3d898fd136deaad018cd3f667b1a43f6de482716e517e4a7133a136d99e56d514eabad46a1951f6aed12ba9fb1a46dad4ee7273e02b27bdc9df0685f57643a98b4060a667f15ad272ccd0c0b39bfc0a48bc2d32b718d09dd2a6bf6594e6eeb0e10080d2748a0b064b6c57eed3ad459e605a2fd520d6a9486ac5f12d1ee945abbb4e3ebe4cdc1c440c862b6e36d85b5049441a40669f4fc96234d84adc4b4d1c7ad17f921506a8a180b7dab274d565ac1bfbaaa2276c2cd4d081e397e0e981192220e4d811b9a596d234db259511fc6910e9e69406f81ac0d09af9160fb37ba7663a20a90b8be9e585042d03914556a0be04c9b6af0a09693da2c7b4f4d7fb10cb28ce2da44a190ba268c0169cd183937c0f46e6bb58d8389465b97190dd48cdcc846a96e089263dd8cc5579be672d9b7cfa6594cd71cd0ee6d37d3f0b6db0004ffdb17d1d0e242c70acf1445eb50b12d83ed9464e0e929735215bed656b2068a462513dbe0dc8a1950c71b8bff756ccd21ae1f6a5b8eb92ccd92ce261574f808cec640f152ee5a47a690fd5c31182b00934dfb2139e5e4de956261595097b9f17dd784d2d6a197defea3bc08a210d56f2801983f4a581dd268dd013bf675c713a5d278ae87f70f31512dc9bd7e1c5000d7ccf85074f9cb1220f185e68d3c782a2d775798084b34da139ee4722cbbaa6538adec31951c09e5cd3d27bcc48a75b4909b433700df71ef8b2ca83137d3e4293ea44a40d1baf1429e49798dcc5803ae4c17fa95075a4f0d7cbc246e4c9e09f470a66e0b6d5732d8643326b40ed2446772844f6ad219382f72d17aa9b086d9ce2590a23dacc0361410226559e91c8edd38f048fa3060844c1854b7c8aedf99cd8c62071fb5c189e7279999db2eb70af2718d71802d8779cb868e08fe9ac49d89572b07623ecc297c14aa15eda420cc7d3650a56a1783fc040b82afd39d4be71ad5f0e23d0d2694b5f5f069856a4b8556a4e190a960825c49be6107821f493a5e51bbb02f0252af992fd4cb7cceb55a5ce19db88a06de158cd8faf1beb635f691444e3223e9f27544471a6320d8e13f6386fb65561d727921b82d5845a01c5d54ad3338643686b63874cf03166e39a8ede753dcd37bb7d9d9bd05f9fb86e0106ae5021c4f9bcefe9e276e8a5020c87ed85bb81ac79d5608f5e53ef15b9aae661054fe1727c9bd6bc1898d0ada7d7ec9199c96d0abd647ff5c33b4c0f9671da362e821de00261094e2d6ae252b61684149234490ee47cc27228981d360e4f4f4d9bdead42333ccb65d1331b3cb7c4e81815351aa5fdae6dd704c6a8637825fe3802b60be637568cc9d7d6208d40c0eb0903939c4b96b1ae164623c653a4d5b4d26e20d1c298ffeb18f1c663a3f5852061d9a706401888e884517519683d7772cd330e7d521314c29fa6bf8df44788650567d3483c2d749f98207031f4204ef5d10df19c8058f053367c7af4557763a615d44f3e5c52050e15336afb286043e23dd6145f63bbce39f19be7b4d49f4e121efd93b76678ba4c665f8ea9ae366ebdf3778f0305fa7a1caac7f6324bcb543a49bc5a0cad4d5a04862b181d4ac75c206999c9bc2343596724a65d12451360c61752bb1f2291baba9a05bb491834839e29711c2c6579b6162bee36adb91358642af15acd22b198a9ff3bec871ad53188078a05323128df8cc25ef0425c5feb2a700231ac001689706ddbcfb0b8912cba2f16e2dc121b0ece91b5e39abc7023fc2b8937fe2cca73a44b1440f770ef9ba15f84aab013c16d1abb07d2b6e628685ca9c3308208438c90938fe8524485454d69755b4864ee4114dc0b4958b8dce8c788dede86bc3a20c002ad60195d5a1e69e1f54402c51d31d33ac21c9547bac24aa8f1aa4e9cb13015f720afdc9d4424b12d8a85def72ea294b150846cdc05ff537a752bbc96ac726da75ce13bbc3321b4a3703e558063a1690fa3c3ec77ceb803353d9e8aa6b3518e6d352d0da6848c9841d0f1df7228433a0b3a7e9e6110e9b5f361bffc60a9e5b5ddcb19ddf50083856bc82692a5e36e1f688033561178a42c3b6631839e55371c7e30651535716418192ffef24172e99b7145c709092cf3842bfbd9a9c2f36d6a01c5ea66e95c2eaf9e6fff631567a385c4bca713b79b80215ab274fc0f73a2d06c891c1bdfcbf52d85424dc991dd850a7b5ee77288c7d74dcbd52e183cc60ef3b34d3c56250289c135cb193533746f2d89c231ebaaaa34fd42278a82f45cd2df338670d407f60d27ca3e32cbc4998874ff76713593b1aa0c6d1904141036ba26f0132ee8e1c6f84af350356270c052069add3c7c8b648129e5d5a29ada6fce2eda64ad71c4935dda886e6942f4f5b5385b027b4968876e42592215c486658b7c3531485f74ed98bcc2fa3787536d5083d7b35c859e8a197cde5eeb55ef221e5533faa3b6b732a53362ca5fedf4b477cdffd8015e0b058a990763de4811d2b1f275df563ec79af3a88ef5fc275059d8dd49ee065b173b13a4326362760a726c6f29870c8379e17e863be0ad05f0e0bac84069c013fcfc1490e23e4c00d8e9aceee545f7fa793f5e9436a1e92ab65ccac20c565bb074d6520988af5af02c71107ad39517433b69501a2f163793f07a0561964e8ce8a7d7049375a221178f9056f21ae279d10fb0b120f9ff0498d27426e60f9544ca1d3488a669e3d84109c7803c1a47dae73e313abbc6913d7df71821f786ce3b7313db1c399e01242c19e519b7111f027d19b6a2e68e9dfbdbc2b103f6c0af92ae0b3ce1d4cdfd2ded8cea874084a044e2f688b93da0f181008325abb5ba084bd5935070e1ec2f92aca52422ad367bf9e363f750bff58502f8e463a36aa434dc3f94729b9b8f26f95692460b680e42050420e5ab678e2398170071195bfb94a06a364f78f37e9d3a322103b532e9ee0d494ebb872d29719f41933272feaf103cc28a720885ef76ea662bf18208fb2c7e96f6e5f25f4958390fd3062939751c4a0c9429f75e7ffab5ad4205ae962ca563560db5d74a646d5bf0e6104d94bcec0b4de14c49ccbb1c5819fc64e3ed7b0c58a6140789e258c8771fc3ff471311f7a1573f8d03196231645997d3bd057b2610bacbcdf7c0d40ad6bf84bf60a88b4cf76c3f17b0568899f13e6e138cfc5666ab336e0ce98d963800cf96f50eb3a7be0b98c1a099ce199a6958b419043932d0c1a221039af58830a09d10cfcfa2cdc969300c1891bd27878ce43c7419caac73766b8efff7f5efd932baf63a56b353cf2fd834a666fc9a33656d4c3dbf8a2372e28af9e7c87a52e30ce5753454bae606be0846ce41b656dc45c262b09c6734c8f5391cc57060b85202cc43f59b49b6fd874ef82d559fd298f1b234613cacb5af9b1f6547aec7ccd77f78e734dcb4cf76384ece0e4be40553b8687ee88b006b1163a119357e69c649989e86b7873f5e9878e7ee6b51e50d372af716892ffc5e45d23a9af155b0742f339d22e6b3fd0ce562623e4b8bce2930ba6858a266625b9b9f14003f60220543d072c3a603abb2cb83cdce5d7ee6873afc8858744aba8b892bf7f47b463818d50be5b1e8e45f15023bd422d3d319e3a6f929c7b39df1318c4b0f27044ce4a58d05e6071e78a454a79b0945dcc7ba953c80c87934ebe90e3758458dac3d32f5993323e4bbadf0f81c55c36e6c540f48eebc0a7caf7a2629e12e64b509a3176d52ecd9637d38ebf6c16efd4c808b147fe4165cad20248279bfcfc4fc27b10186eaa4dd12920ef1859e4665807aaf6249d2e184ad6b43db1d6a85ebb7a060835dddf0dd330dcef3a2fed89d728f32d4b190471fdff8361882fca97c4b443343a330e209572c35a53a61537a33369d9d3453c9ee54627c4bb7bf21a2604aa3b21348c8d516a2f1749bc827dda24a41e0c86ed05014a17aba6218e0a9c9ea32b462d4488622d01fa5ce3fe314cd09437c473e26bb025bd0eec167172a1dc2d6bb163a761753c149a31403e895a21f55c93559a5268e4898c151390a1d9271240d6915ff30c122d39ed5fd6133d56ab70f264757d5f70c660591c3a59566706dc508aec1961452d7638bacfef9782b4e4b2392294a76403d94f7e4077318625338f7e836d0d15fe22526fdb0e3daf355307173c2ef2999675633bfbf8694e785befeb15234326deb2f6023460073303fb1e79ad13fd481b1a3ca5cda0208cbc4d6e72322fd2209970fe6f22e3fc9b8a801c4f8f105ec88848ea111e6b4c4cac10a101fabc8013b97fbaf96afb50f257b56f58a4825267d6328b351f801e025d4be4407f464706d3da8e41c52e27fae8fd29bd8e4e24ef92cc9e9a82074ede70c429fd4e2d8a3a0e41b4dbaaa93242fea73c53eea6bb86c3c06bc4988ef289a207279de11f2537fa98c138008be1fd043a06ebc2eef070364ec603e0acc2f6a07a11fcde67b66de47794c0ba135a3414040821cef62a18432dcb6c95609292154a9774704152059cd408cb08e49682968f9745423f4b9262c7c4391dc6bec54a64f033ad299d30d9f93198f29acbc92cc97186eb3672090634b52a3205464f4282113dace4da2422ce0de57a327f18bf08d9ba325e67be7fec7eea8b82ebf171c52b95327d5466876024498c5131ea6411e8de1c80cc1e886cee1fc682021c338d7adb834ca259e2c4f9f14242fee14c5e01da324edfb3983e208df8dba630c9126c29e49c6001d55c3c36f27b91a97ad8f274ebc2a83ffc6eac4213fcfe89c017848f3328d3094559ab55929d09022dcce02a6b3acb2421f9e5febf8ab2d5bd816bc3fb481f42f19a333399531c046e52f3d83aa5ad67adc378396b69d0e3b254cb70f1cb46018e64c4fb8eb8ff203a702bec37598ef9e075cee7ea94485f24c1ef968b6d8c20cc9647fabeadacf0052073230cfa56215bba2ddfb23b38c21dccec9d1c68134bb28c3fd789b653f170dbea9503a9b8d84d76267bfc2fb685c80550c48ffbe06ceb40da9b1736e371ff6ed69ae3ae8bfaec7149990513e574b4218db41ab44361f4a866bdfb348a348f596e452268d6ed90255eb0cea767c64991fc9951ec5421addd59bcce8147d4b1469b1d95e282c6754fb8e195bb9cd6b685d190d907730c1c3cfe2b3d3bcf1fa35e3a1aa0c07414e34448396bf63d2483b2fc6023638f1f47d08b7703bf9a5965a2094c83bff06eeb584055c2a51f6d7abb7b7d0923797165521fc1baa86234e80a1e6cf31966451de65f6f344037366c8c035d7c168810eb37ab10e5cc2395f652491113f18032cf1abbdbd22f77ac06c2631874b60528ff61c927cab5b75fd55fb1564c9b134c879cdb29e10c0e950d51b1973a4adc4236771c834c8cda3b8492a9ac6dfe82b8dbb06170fe5ed3dc3dc9d7a19e59953d12903e2c981a93388b1d4fcc05df5fd005388eb486981e6ea0db2598f9a74b2661c9cd9c4e33ccc671720178655028d8bc83c2bc511a7b72e0752bd1a8ed294b3ecacfed9a5992dffa68cb92966640ba8f1a989f443800f1d3766451f2dc4647f7fb326e31758bf44572db6528da4bac1be6da92c8747b5f99f149a456241854d3990ff7ae7eeef49dbfdebf324b726abc6c6b099fe359adec416361178f8623ea9db8d614f1dc3a751115563160a28d2f5ccfab82af49be984a51532347516c0a9bea9b96b07dc8b0078a694089fe08a6f0d09cd16db6f343ca20f558a661190b88153aa94c9a9723e1a4a20bc3ffdf8eb00795c7fe0eb1aabeaa0e95e6e96c1b22c8821e9687a4281ce84803040454ebacfa635b34fef09246b926cfa90e6d06ceabdbb879a43bacbbbc2bf406aaf330bf5f04a18c8052bc9e93e37bcbc50043920db7a4b0fb579ddf7643494a22d3ab7eebe5365b840f1f299804c7363b165f501955311270c65c805573f6fb9e5f506bba8f069fdbac7ab1c1316ddabf729e2dc2706ebb0fc401e27b4767c42e0b72ca39cb3963c96de7895245d7a147232a1877568dce820c57d89850b6680b0701e3162f1461d03e7e5f2e41d2cf3d5206d8a164adf38ea64d324d9deed671e5ce8f7e2b3ca3a774cf0b964915c4514ffbf7f5c1e493f45082641c18e2342a3f3cc052fcf0174c235adb89c2df012e36f2483590654f28beee10a8c6d1b986a54a6ee50286598674aaa0e1d256149f65329b1faf27c58616ac1ce6d4494c674d8774ca50f0a705b201b871bfa86bdb2402d1c7b1a7aec89eecb79b394ca547db0bb9a94db43f3d4f7d714c275adeb3063995f8018642ea113e7707177e12e24b3585fe250947b74e4cef9625d5aed4703fab5a49e6bbd7ae5eec28bb00fd319bc0dce585a84b294ac7fce99ee6d028563e4619fa169d41cfa043c2fc6d5b97b62bb73c6633f64cb1ac19d70fd4c6d41f30afac2eaba2fdd3d5008ad765d586ad8da868a0b4510a6742cda7c2e248db40f2ad6c3a3f0e16bba44854f0e8b7bbf63be2a0e4212a926a9d1da2a061f5c325bb90c42c9d65d1e77723319c1fedc71dc9f104b8c44eeefeb6f2392363324219e6595be1d39b86c74bccaa31a69d8c54062c16f62b2b84239b805eaf9b6e4360422139465e8d7fd589c7206438271a33273f73671a0bc175a9c1279547a87551940a027a05474459e9ede81f25e346d5e21e5c474a768b57c91fc3f888c58d27010cdd7392316704b8f4731f47bcb6317f2f0f3e3960391e53d51962265a686da71a46b77505ba0840c796e4f720b18358facad5e4a7521dcfe72372a844204b6bd9b80edd1115f7cbff9f75fcd9372db61ce3ee59c705b593fdbe65f5d5e717a8137c0fdd9169ba630461631fd8ff5fca3f48a40cd34e3f8e4485ad59cb4d3d3b136b626675d5705e0953e406f159d2fd509e75dea858873fac0f7ae7e6fa2569bbde89b913ede0f7688b839225e3f4bf5ace3497a4ed2a6a5fc8ca27bc3d42a350faf0057a97e8fa7e28d64ab9064c9f0284a002666d1502caaae383e6b4187455a5023639e01b24a276918f8bc19d010731372634dec254e393dee8e8bb3753229bcdeb14eaf3336e139d5a761e9d6492122a4a15d03d2966000cb05fe159953208744d7b40bbb8d1b520a2b2c060ab412026b4c74b821a2cbb559e2f3e3c246d03dfb8406344b66ad8ab84a0867fa2cbec8b5fa8efb6cc7b4c5053e1d706709e0b7d34e09d713d4c02e8e31c14f52b8a46ed158eb5a9cc07264dea957f0b51c74645f11c7763fcdf4f81d3bf096fc225bdca10e7a6385f3b535450df8447d8690b5299f00cfcd5c4fc95174c7f4a84ce85b50ed3f74fafcb2275c964e129799433593da71a89ff1caaca725ae55ac61b520652e65bf0678481a722666d54d635cc8a1b302dc8092f128aacdabe060adeac6407f2dd251356df7c9cd5d62a4d957553d81d9214885d20d6c3effb23b9f35e577af217243619597214d4583916198c79bec63dc8ca5872a10a6be3c8cae2abf67dc27fe3b648fa5655c0d66fdcd82c23247484e9c3fca8c748b24b479b53537e58e0153f23c8187cee1eea3205efc553a2df0790fcc9ad616c41540ad625450d8912601139d588a6dd7ea63a09fa2664f2295b18398d242a01f645c096702c40ecdfb85997b55f525984644f28dcb09e0c71cc1b2312c2bf86ea1b2297bc481015406b65df0d6d31b1ed8b5501677b02cc16a0796466f806d7cc57a8cc41633d98dc875c15cef33d675295080326d717b20ef032dfbf99bcb2431eaf69b338c34a8b78a0aeeb05a2c43b65269d2c1a3874ccb8efd369cec890572d02f3b04f75e3b1bd3cabedaf9b695b251ed1cdb85223ce616ffded3071cd748f237c38aa1ab6e5e6834adb1a5d3c3a24680076008f1b82795a349c903a1eac3ea7f8c0e818d3f3e9b5ba0addf3a78f0a6b74f130d108f92294cac75c27ed61fb3153de10ce719237d80a1a4cfc1631a709e6ab487b1f4bf7dece414ad8a8858b691ab5e555268b9f304fe3970d7056fe6bece4061bdc9ce46b8780e0a277c8170eab06e98373c3742868cc016f8064331b964c68e44fc798ab6b9de8c9d3e492b5b875fdf25ce6c255e8f2f210f2a8b1291ee3a6400928c024d87d07638f1a9f6c4d237b10c4bcb5b6e33637716b0ad66d30f3e10038e18461febcbed824013012711cf8e55330267a1039673bf2cda6400a149e4865eb2e5b76015c7beec2d2933e5661a243bec07c6201c969a079876c207dbafd0bb717f9e678fc8f1762e3467822ad8a49d1b60ef0e1449da6cd6349d94a000167f205dd290713a385141ea46e8d68cf38dec5dd74b0a2149f0bac1c5d26d32d19ffd7f54174bd118cc4c8eb30e57dd6e35c843a1791ac69e68e227087c602b756a2a2588688660533a1c221037e2aa51e03baf171058dc0dd4bc46020c71fe842a8f961a59c6b54ae531c5e858a77065aeaca1c8c79325df8fe66334d0b81cef3715d36a7b3c4c76ec10cf2b272efebaa74a5fc096f5c80155fd23b98e56fbf6ad29fb8aa4fff98895ff489338558f44f54bb88c3c8bbe333bf4742f606638e9f32d837b00b09a4eb1eed9058344dcfae9ce359d9ec235db2803565bda4ff0c596c67d8fabf90b2a0e17bd5f663bca8c2d836945b816815d39dec2902c2d35ad27e22ba64c826e7bcc351369a286088462b72a86b046cb11fe82e03fd8c59da468388e0d7f1d631c241216bab1e67e71e3f523728e7d1800b969f4e76ed143673873e61a40af7a3ce70df67e8ab6f66dba3d1b9ae1a0a1cf005175a09bef9f02f0c200342984ac883464736bb5a9055e64fa59b2cd5794a0eb08855a109a6941fa5e05f7bad8b89f9fbb8bf71573db8554667bb8859caa905f14250cb6600941b61e957a8985e1b36390fb704f24289bf50fc8164102a1d085238306e26d567387e475fdaac28eab394c1ea3b9ba9e7eb1074324a792a84a0f7c25c7b79dad2173c12d0c414b0283e17bcf29b761752cc4a9d095e3ce94501f92b08bd90812302e2cdef6f77c62fa36745ff218e64a7b9ddc5f9d5d6553afb6576705eabc6ff07f940426a8adeed03729c4773be8ed664d3cd7b225c73fa266a9739324658a5a5ab70d5d8192d6c9ba14f53f165eb59bfdee957e09a43f111c7ea41149b05e702e1638fbe8c438c40da5028f3fac2738cf1117589775b689f53e745e280831edb18ee75423d515074563f7010d277f3e45f2468e0ca83e23fdcdc1ef1cecbb6e672c68cd605615361245016c3b0133e84c9da187e833e87f75ca86059ff9073080391eea2de30061821a07635ba6075fbb45835a9590f3b15d14f659c344b0bac01dcd7b0a7bfb397bc62fc536f5b2c50a3aaf4a3075b4cf389976e091a06001cf3552f02db9d095b218b3eb20b796293fd9e6fa15061fef419c80ea10ab9256f22550046577314e33db9948ebc44376b445e9424f5add562d0a0658d5aa357e2ea8994fdfbdad44dd5a505c7470e4bf3f82f3da63c99d367013567fc5106c5a06a2628c5be8c90b996018f0c9dd81066b5bd5912081245418b8a55f71695968b2a7f2d6e328208a29029e624a6e617fa3d3b3f8e4f5094f6bb614f9a56808dcd688534882fb6b3269b0685d0e3963e3f4a3f753574b3b2e01a3b0e67c10f49cfacc5ec9335253212e244b7cb41d463d89ddad9f7d48efa3766d85f4cad61b083771f80e5ba2b010ef508258bcc9c0b495d1d9e5acd682856160a4e1fd5534750651f40e44e0408c6f83394e0923e23d80d8c381750f1f8aef359127b41bd55d7e96708225344a17e8867e15536fa34105725e9211f324da1e7294f37dde27ef8a2e9b5e4c3bfdfce709489d7c508fccbd39e0042ca8916c0396607331a5af534d3aee4a9eefe066e0f53c1aa80b6ae68766b28a3a71bc5fd2bf104da2b2eb4da812cd6efe7ad7c24ce432a80e76eeacbddd574b4314f670763d20a783bc009f78f65af2ca975a7d085dcc14be8f8e713c5cb717a6ac9d530e91740b1ce74133f24db08f04254102a096e22b06ea6f84917592840853a1e07b75023126ad655cddcf6474225458ccccd690fa53818bf8766a1746c80a80c2276570651c779d38b179e2fea0f5cf520c6a87640ed3ec545959fd0059f16f713b8e7506bbfeb867f2913119aa797ad258ff815a68296a0d7267333b29dfa2be22b3c2fe76e0e6f9c9d1e6d97cc545ec91b94262c554593acc7e4f4691123aea9bc463a1987291bceb21c1626cf2202e859f8072f39888d3e1fbeffc50d262b56a1803b97c7fcadb86cb37d3f8dafa1b1914c37043151793ae3ff9439b4ee928645a03621bcfb847015ebd9dd26c5c1dbd10c475dbbb511525286c191ab0cfb4f2b76162a7869ef9c14896ec35155a42dbf8624f026b4b33eac5aac1625d014555052461ae30d4ecf6498f7ea66cb19be516b6dfdbcbfaef508e583ac8592921ad8ff4d421978ad3591df8b9e3f220dcec7fc9ba235568210117db30e59092b3adb6e3b38d77af0000615be2c9d9924cbffb4c80ce6db2f9a9299ea0c2af1b3ace4a2123123b533ca25a0b013eac08811e687cfb3e420c92a22bcb04ef059e11481401405631534a6078b89bcb6d0127a65ab4f9528805423b43d485bdab72601834c3ca9f559ead43874aec551726a4ba07d421245a4234deec1a9edd4a1e73c08f343b404e4176a0fdab5633fe7b791e0f6d30469d82bd32e511304eac40692a0d02c54502040773aaaa991d54d4e0de15595a94d82f7ef490b0c430174b6425c58277398dd4932784bd057beca29c6cd2c48db939fd698bfa94ab83af50b6102f75490c1a1568616c57042dbbc066ae574f3e3ed5ded8a6bb7abc1328a6f66102c48320c1815be9b285dfaaa59760b55ff40a748ed512daeb7cd27a5f26746e55f03e887c3a04b805b1a0f38cc443e9d0ee7a76b3ebbe1d4b5768af9ae85d3dcce3e97b236e6bf297c91aa81e0e0f56fdb889b517f98fb9117827f86e36bdd9c4b6142808be050f7cccc76420634b9ce3dd75ad24254f3534b3c6a02c2ca2c001a06ad482b065b41cf71b0e6e255905a2dc3dcfa39af7e4b38540778d006bb905701e360d328547173a9525674c14dbdcfa524aecef2d0edba66fd355bd989e7560d0ce4e6e5e7f5624ce7c90b89906e842e64cb633e57c4430fc7e1db15bd82d4553fd29c8c73071bfe5718445633d5f5d42f8f01550d51d0a95c74a0f0ee9e0214e5b1847acebb69963ff06935385bfaa169c5bdb384927e7fe2ed20430b1a016e9712d27ed52803e80b21578c78d20c7412d244f1fbf6ade57edb3b57ce7a4b63fbd5fa26aafc8545b6b0c14cedec4a83e89c34240318431835493827274a490ff5d234f66554cbad1f6d49ef68855dd1002f729731b5e1bab439d321b9272f2eb7135b1ac4a0fcd241ac523a8896ddc0307e1a2932442eda38055033af5acc3a9730880a8dacb78341a43479c54f8dbb15036e87a73f8803f9718b46e6a73c3f305c69a1c8f55847d8bff9acf9f5ef479c92d19128d50be8d9b2939621d5415491a3b3f57983723768783820449c1e4e18071516c8e774da0dd52764110e4f5f19f91b5eef07452c6adfb121aa4af2865e6418295dbf47bc1e03d156c41a2c069e8b7da5c08faf0b47a1af7a07f92458a7dc2aea7c76e6fdf4b90c124c5f993c49742afb02dc04d1c889fb8aa97dd3f9de89d89496eef12f07ad11664b968e39a86e7ca04037b4230ca4800f6472c2e1490deb1debf93a8f1eebd09843c0f54137857d4bf43617eaa906677c57c578b72a42f17b379084935f915b30c25c2640cf275e582b1f6086b3105c69fe284146dc901923f372bfd85174c835699b283095a21cbd755dfb665632346bbb4f9d0570eb6330433a133e4211e51e718fbc135d2242ccf120d134c6f53061508ce9ac574ac39dd2ad81f13b437ce558ca8e556225b220256c42e09ecc771af545b2c01b8acae10fb9c70a63e8faf35aad5671fb87e3c52c5d4d00bb2d2d9ea643374c42bce1a3bc428304fee28ccbcc501b72d276cfe0f2002f7b6b2b0f5ad57dba8a58dbb66aea7854b64f7adca446591c4ad2c887d640352018cb22d44ad3443f2e9993a73a478b4fe244ec3ebece941d72d0647f8823889df1d460a0ee04d43d9ec2317910f492f3262afdd2ec1332430e2d5a45a32a72055121851acabb8a18f3dc0a405edbed39342b86a3b0cfe1be3c82a55a5aa26349fe8e8a0745b884064648c875e3f4094f0b9da1891ebc941e3aa8fe99dcfba085594134d6745085053f6738295a963ccecba1c34a18401c160d71e1c34359f9dd65322b09fe8c7e68991be8cf2b5f3353890c89fda5c61e5632e120af5aa614dc0e702192963c336b3466b887ddd3272ef615f330890366d73dc880415f98acb06eadb74c5c3833ada141c93a939668fa3c3e6b96a28f772c367bd2ca925f1cb934395db898e41322c5d404815e8f033d9f8599ab0b2ae6b3213b7678e01fc891a2f796af56f9c3d2c96863cc4de69b3fae4a2714cc866c9e6ad921339db5052173be01afc314921ce095a04a2d4d018f1aae29bd340f7d4c51451302a7f3fed78031a64e4fe25c1db820e3733c23859765f51c1d58ed9e4427e06f5fc94250e40065be9a5561f2e22f9c4e1be496ec240ed8115b1fd2d4d13d07c279075d626aea0e4d68b9cd2912d97e878b8d2964ae733342750c05ec7e40078465b576741b018c9307a9b285223695a8f67faa7bed752547601a119b540a3eda1b1b75386d6b6413cfa34a6f73441478cf1043f97d62b1e3f7f318486a298fbbb61128a07451547c7b38a931fed056de446405055b925482043d9c4ab7046f988140fa0365fb0e67c937623cc4ad3bb3e2125a538fd778419623cc33270e55a052b8d7acee57856b655f875e802916586af07925b2d057b2e452ff34351cab7461acc9fc2d589929921cbd0597d7beaf4340bc8c2b34acde38ddd7d9d169ed0b2b1a96c326ef68ab4e20e2f277ccecae1177f1e8d6a10f278c3c7db4ca2ed67cb063f55ede2cdd9cad5245e51e2c333957be5ea2704e94450541174f6a2ba02916fccb081ea16a5a165c6cea1d1fe29dd45df4cc0eb3beb7a6a9c107615e7c48c8bea464ae1f13fd682d944eea3d3ba11dbda4f365a76f32ec981745e42028290acd0d1aa2d507fc4d2661c998d6fd7bee7fbcfca2364dbddfe8d5644f541f501f917ea4988396f0a951cf9715022101651752f89f92a98cd22bf4ee0869eb10601341d377663ea7e6b3b89d87566430bacdff59c0618ec11b2a15eca75b6cd69a7350b6518f78722a7d157ab00ecd7d650e3d6e4119700a0cd766b3d26bc048bfc2f433909c5abfa24a860126cf5ff0962b31ad8a60f8806cd154d81a1c934e2fc0ea644bf5bb695b47f7cb2005fe2fe4baa8feab59561d6b092f936f5866bf2057813150f1b2f1bc5669ff0335ecd5326f86a40b67b85b29e178ba4a23e5d6611e27d96cec90d8991b694c6927344138de306a8f1bb6ced7159b2f356d8f5c0e18eb893d5fe03d9af3c82dfe976fe2e5b123db80a91973329618017728c72f9d4aac7ca410879fa120b464b1f767749781d7af3989b85416dffa175859bdc47877867649d88ce7c7100b3d220ba651256dded192665235db7589cbaa6c3bf69da1cb0aba4565264c30d38e640e22fcbdd11894c0aa007d3df47c20dd3c81f403cee8bcbbf16954a60fea267b2066d8ce79f6d167cfe0565b182228c01209af1c232574a2ce63f84a51510e61719f66e99429f752cd6f19bb2c64977d2a1b237178d69336faa7334350643dd6c4425e624c3e35086dddcf56cd3b04b005e1d39e906bdbca60a8f7516e0f5a5fb66b1926faaed91db12d78192ff2efc13608f2f2739c14ff1e2149640a04ba2a02525d27ba113e87dee25f5bd0e827a53d9501d7493b78b09a93ce5133c767b1d8ba3e7faec3b2eb1c1a4873f4511a87045fba0aff2426c54cacc98f8b31860ba150c55c0ebb160d40ecd24498d1865c625077cea29aefe085138ed68ce988dea65a870a3899bbcd50c54f537b3e4710188e6bf0244c2f81c6a1adf2625221ce5aa2c721f3f53fd43c85ba98d3479b1336ab8b1eff01761bd3ac33f9ca9a559a6978a897b834480fe24e9f9e20bcba09601f53269033f61ab3615093fdd71ab1e9274f58560fcf811cd52116fe07d99710eb9064a6650475c591b994eb18e13e2c262d6f360d6122fea1268a8ba617f21c53a18c8b70fbbec8f69874a05937a026f88efe49257759e228620deb747d870eba1ea74182bddfb10369b7d3bd9fc182071d857c5ae40262655f103e614d415f0677ab44c89fd1569780b40d5e1e982a5477544c23db83bcecfb472c2973560b3c6ce1d472fe54cdde93e7a0482b1ac7942c9df59f78bd1020bb8fb95de74e5a98572340482d86a81566e02be082ae5ca368164ed1b1ee93724509ca6ace6f3bbbfef7637f0b616ee0d84a06b8dbc05c7b60e1b9d14c25c57e1489ad15e1813210b7c20e74b35533a1d521ad3c5e9368e475f8621424116e6eac443c7feab32a3d8dd147d1b7bc70be9ba1e771496196381244a12ee3a5a13f1e14fae341ee66983ddc54e8a9707cbed892676f5699fb65c23d97d2ed2ea018454cad97eee81071019b3b45e17d4634852b2bcf819213b268255a4cd35c2c93758a7ad112714cb1a1adba691ba362374cc3c9b1c4edf56f5a8a92a8aa669a9f479c1556ec6327e87194f5d83aab8cb46014defdd022ec0fafad54fa25efd48542237d9ef02364098f1498dde3f10a5b5e9597f97a54cebafc53b413238bcc3a592a7b530f62082eafb12099d4001959f9d46e2a32cb92c1cd737aae7ed8e275a8bd83a9e3d21d292d2900ccb04f994ead5f6c151fe6ddaed6edbca1c51408e3c510ac1fb59108e440ea51ec26becb3f02bd08257f2fb082b2faebfe5b98f9a79899a4e2c9581fbff9fead13e49bc4187f9b35d16f1033409a2616e2bffff72eec1c7cd9f1220e174f5f743b7e641d46cd678cc879ea65695928b7728afe5178190397ca6cf45428c4ace8fe2766cbef00c05eabfaeaa99930f81d97fa5c06380ff11aa158f955236381fa170dd133061050837e3ace30837afa7a73c04c5b6434a303cfba993f4504ad30802404429d586ca6ec8c5e4c0740c429512758fef80bc36a4c9e20394040d6ba4d797e6bf28cabcfe22337c96e62026663169d14d9392ea0a9e498030c12d4bb7c08bee97a1f7e6f5198e40d109d16d79a852cb8a8c59a737eebe860be28ca05f96aa7220c748cb856ce76f860256cf469488f09d85d4f1424e7d9118b402eb7919ed5baea1f2e0b72d0d06b95dada72e0240c3372f2c05fbdc90c618414cba354f7facc8a204f11e69d03b41bda7cfe457ea1eea943300267d3566d4e6e5cd31c89734bc97b289f8b19f366ab6c4f77c14c8731732b7e4844cda71fb0095f9f67ef447f20c4568effe64cea9057bbf7ba7eeef5fb687076802de93068dee060419ae1db1abce7c662f84f4e2c278d886adbb5effdc71231a8a414593773f9726417e5143441bd756b2dc30f88d9ee633bad4b46938fc19957d26f5ceb21b4eb599eb4f4ce7cbaba76a2c304475f04a3ecddaabdee7e369daffecb3490b72aeebdd3c15b81a48c0873b93fff19c861808baeadb6a4a11d0ff499d4456efff809e52f6b5008c675ca09710d347e45767ce704311f74e1fcb55410996f2e8d46482e7a2a3d2bc3110727e6d84648c89409601414d4df0169fd0ede1220f4fc05e098b647f6de34775d3f51e93c26a254d74b7550757ad70c383e9efe5350b7a6852cdf56b29a477f15dbd71c82943a1554f39a2398e737016b4f766318c8034eed2ffb560f12210fa5a27aed9219d87e062a5e20fc41fa5e369b16d351db0f8605cb3907117cfe215f2b6312ec053627abfe719ca7620a2bee6d01fd5fdfdd73dc937abe055d6b7958462aee33281736c60fa3c5b1f38a4df02f9664468edc3c0171a30ae3687a904ab9a06b9830f4477962f40937928a36bf87f8fb156052a193b8ccefbc978c931464c6f0ef2a36c7937e1ab638baf0a8a844807859ad21f83dc8731cc549dd3bb1e18ca341f5662867362a116fec813c8feec4c1029df0ccaa4027ea7f5861423eb2312c531917a973e39db69b0211e41c4e0d467356e02452b36d151229553ccc94e19ae6acd3880f09ec23dd9484da2720261270f0a473510563fbe1b851aebea48a9099cd9a281cede05a03ab3ee4be6e75991bed2e2dee366453c0c4e2b03628cb8f33908029e533bad1ba1297e134a72b0e11b1f905b2158f5f71e287921f232de0519fa00fc50af28b7d9c5fdc87bc6a1b243b991555befd84b4730a94700b1880fa19b3d126ea87aa0e26d4308bc6919a48a5a8dbf94f8af1cb2ada5d030bf2787e98758ded3790845e19ff5587eda75a3052abe48ab79d5c1325fc37e90356977930a2d8bf1b0c13032e9120debe965d5332d60767557051482d44fac054b6b3109132a78bdc999d7e543e75f61538aa05b37a6015544cb6709627fb074890d72f38cfbcd9a6e76ce316fbe48ba6011458aeb604ca80097f88d96649e04e7b0e64850c374a51125784765b153ebf546f4e7e0a603c8044dfae090a31131300eb79ab9ae9852ee2403dc1bc3fac6016665b3dbf8265fed276eda163c6fc259e7395d15f132ec9005f6114ca91c9c735ec3e6de2aa5bb0b23419e208d9ad5a818cc9d0b8d006da3aeb40f1f97c7ac63a6f185d3d4165e825c0cd7fbdb7236217efa11f0b5061554681681a9a4db217a46c0c2f75ecf4e8b737a71b0616c9944bd809f82d3062909fcdf2d6457c95cfe7e43c777b4cd00384d5ec2f439f33fc9ad5c745f5710633a8f08a7074813156d6d228281c61d329b8776661c1ff382067d494a9c51170f8d4e614ce8829812480fd234ea0152fa1f37debdb5b79560f1a333bc4cde283f64e6ff9a33ba281102868739b50ccbebca1eba8a6eee4968b37f94c5ad2ce0e010b392ae4a654610725246a50b19e71edb354b4f2954770e90acae6bceb258ab3f1fa61d191cd3ce46f9a1c150870e94239ae7df094be280bf5848112868944c7cf0813f011dc82e6b61521644f5a15a5c8f9266c2a7b8d7f8cf3e978cdb9707a0a4efc880c41c962dc0b205da00cc227f2efc495f3ed23225d3e70b2b1e07cedfc5909c490eba3d139594272ed13a8840b0d1c010c349b843d9abeee12f967db0986b57c08d8a7befccd372e7c07d23beac9e02439714cbad8be17b8b2112b5dd4d526ee577fba1f325762c9f8c665227b2b5c7cf156264908f6d5ab59dae5a9b87fe06074857df6847010741e82d9815b2cc03db22d9c4ce516fe6b3920077a13b8fe6162b628a707ed47fd6659feee9b723516247948d2614938f7167628456ba4de2c58a7767f50751478b0d2f0b03b9897eb0d2dd1b6e39514ef0b59433382ace2923e7b1ea324803a966e2d5679fae79ac3fc2a9df6c68d3915432c93ce021a8ac92a4f0fcd5cd52bae1689d37dc6d81d3b654dbddb9441d0620e6582d4ed7d0e28e854dd611d34262458d350f12ca6928c4f40e9ee04b0eef8eceaf31347c10001a294c8d9264642e6aae068083af471b4a1f4cf7a29bf76a270ee7249b9994a193536b95f5cae33a8d5c6eca99ab6b273b81beb7889a2b5d7fcab1d0f57cf166d32ee5cb4a6f92d8cb18b7058aa47ef635ec4ba64068c09840d3931f27c0f908237870f5dc8842f2b63b3c4e19a0a965df6c6f3248c1e73ffc389733c8780df2f50a251cd618367fd81d52d2e804baf1ba4e420c49bbe3c6cc23df92510d737eb4eb01d427f453746c2011827a043368df2c8ce859338250b2413766476ab80f4bf33e507bc6501d1cde52088c5eb3a4cbb0e1d92ce23635b99fbb43486a4ce87200840daea0f15be6b4604a79979a42ce6381cf477f3397da4b363554c5290eece17ad04462e18ba4322d3fb24dd4be436482312cb4d1ea18d7025a261d635dd3424bc56da9209b5af1c33dbdadce01136834febe12670fc9cb2994a798934814653fe80614e37c4447251688319631e8ec122dd5deab6a91713cb50a4195b198519678fe30a7319b0fe79b7203f08597c521a95acc5410134746ac1de480c1cb9329d16f98f71e4cb8aae4daeda265aa961846a8428c5509209f525f777939fba09af054a894900d877b3e8b5ed468d6218936d54fb388c64899ab695ad71139c63d8a76ceb489c40fc9578390f9f92f43f2fe8854369442f282c5f34e5396f6097d23baa0f20eac47e88ca38f837785e243cbcb727673a1fda7a6440a5542600f102a4ca3b02e602dbb18fca46931eb24e94f0f42f5f59b1abc6e057757a98c3ca220e99c13ef95b88911de29947af8930f8cc1e8d3ae4eca06a9a7d37c177ea64eb0e835e1617333b49e5de4a5b7d794a42c523b50600707520682c97f39819b934dbfd240c76198823b775f285781948e51baa05191b023279fd3e1951587f05445ef6aa066bd62731b600e993affaa342279139d59e3961db961aca8ee3293e5abd89824e7670be01d3ece2347d6482eb2595b275a027749b148e19f572c2d6ba0492741d4996a4979792e7cf2cad56ce41283dbf064d54be9faba25bb8e77b2f5426416e13815430cfb8314a6477b130a8aff70ba9c677ae854b90cc3fffb937daf5d029eedcdb01c7c5f01f5f70aa186146a77f63db3bc0963af7c9d4e6138563813561e8af8a75a77a2952d1e997c4a2245dfbf9d30b0a999993db3b7c7939de04171b081e1ed383faeabc43e037bc8c1611af61ea3397d557de063050b1af6c1a1419916e5ec6fd8802d3978c623c1e984d95b6dab33695074a13567d70416448661a49ebdccfcc32a67e8bc7cd564a90af55f7960612b5d097aa7d09e508d5edee34074c254a37b0ed54a97ced2b8ca6dfb48a26513a9e6f9611d0cb7a3e7cd38326a39a77c5a34f21d24e1546e0f18387cf9cc6d056a621595fbca766bb153d2e239e1c5397bdb3f8b67e136142f20633c2d0964eb84fc5aceb0e1ab8ff58100f6421bbd312ad2192261858323b5246a19b84e956fc9df9dede96591d7b0c6d5f284eb5ce1c2deef2a73300e7fdd66e1df5564f66a4d5c05e858506bc50208f8722fec7adef415f3887bfa0ef8a44ea0a6ab4a1d6ce7ab69471c0ce66fdd8219038b1e7d8e11992d0aa3b7095e1fd9ca948d5779ddd36248cb7c122f2b7e7e5365bb45e43769f9ef1e7dba3b3887b02551ed339960a69a40d8e034efba8a6538c5cc42991489086c4e0bc1cef455aa1f2373527b8fb1f15dbf23cfb225fb8f66259a388af50791ab573c9dd329754fbcab9178cea6ef3524812a82394e6da46c959aa927a0747ba8893fada147a7efc09028a78e3db8825d31a40ab6148ee51424e637b766bdc1846195715e8a6e6ac32075688bf9762ce2c069d81d3abf01c383bc5e041c4951e9998edadf4093e6c08fd59f757e43a216d73d38c3ebb49a6dc3670490173086749e7fa50ad48aa6c2477b88cbef045a667845d322038151c1160946bf76a9f3422331933e7177eb82096970e0f9c1c26f0420fe9ddaab760c14e5245b9dd728991b22af59bcdcdc5851f1ddff7231fb37c809b9fc2144a58f65e8726b367c3c44e929e1c28eebcc556723b172025f14f3762ccaeb0aac61c67272448bce9704aa8956252d4594d290c3cd8da3ba7550a00b5dbd631fe6386111e6844b9b0e083b3c5e3fc4a17d10698899f85719ded6cdb56525032dae35e2a4c1b83cafeacada2f22206040ff5fc209fd9db6199116d2a0bbf702d65f2feb53299bed21fe02ef87c7a90b9059ce31fb3aa114e44e04b58f5fa86b5c79106880a263c97d715600bd5a07ab80878853270b817273aa3ff9ab3f5189c07963ef74d611dfb62881e55b13464bc38b61aba3198b39d0d51d2cbf45bd13c4a1541da4477a75c25fe659bb356fcd925870ff907f782b50e2162c265b41149fade0f1d3a4116493c73617463d744bef8389b220682fcc5f5dfbe50ae9134adf91afe734e2c05f3f977e7a27f05a1891cef450d7774faf382c8d41ba3ae9cd255cc153d4179c7a099909424a1a97594f639d967e7de50290ac7b054c99c7617ce5d9ee11f820bcdfdcd4e03f2ffd0e69ed7ebf2e52429dd4f8b967f9deab2a79d753a28628fdf05ddeb3acb2a6ce1f599a1c44d19b4854315d151b74948cf5584dce53009859085a3de7cf8417a4f09ae907a25063ae50e7c0e514096ef374ba6c8768d3ef2ad8ebc2104e7007fc3c38690f9ae521a27ca87f7491e5a099dd4b7b33f9c61c236a60f279105d9e1b5c7b4327f84bcafe8c2c252fcec9999e1db335cb4e5684b43d9ec3b25f0260e2a68f6b00e643a720b50bfa66376166312a84f0bfd621bef4bec38ac0ef6948b58a56b363b4234fdd63deb1bad89970ecaacf2cce8ba53d529d85bff568904490a1c06e0e5bc8dd94aaa4d1134945c533d9e2ee2722c187c3f04a42b2dd1c07c8dd67cf95374fc2c38c4c537cc8e4dfbc9b2403809af52232dde1318856148cea6d2a47a54bc307dedcf65f236f253e9b1c80f399cf01052a9acd6a6122014206e477189555c0915244fdf058c015d2dd6533ea4647124fe4f7f355e62771c92244107b8708c3d707cf381c63dc32887b06867f3d25c56a33af008f1f3bf05edbfd9fc9dc1b1bb792b2e9dc39b618d2844a696f2400773ac84019315f73aedcbae10a2d5b133b036d77b45460ebffcf8cbee20db8f54290ca868fe5e2c0741a44d2f2b210bd57daf06621d5ec94cee48272922211efe56f094a4e581e92ac7bb7c6c85c89554ba6aa7dd668bf8b957d2ee974c4f1f3c0ceb6bead84c6b3b6a56f6de1abebbc1478b7e6b1f5389bfdfcf184795cd8c0f1d5e65f518cb3103eb399fc45f0909d670f4fc4d3ae725d7b4ae6710c6b393c668dbab61ed6832db6bf256abbb54f118b4ba1c6f5c4e923cee5f0d9299dfe1a424f84e43e32c57d2aac9d83c54860346781d053438130c379cdb066c2fc05b705cc489b222bf163ff7e08878f896dba6646c71aaeb0ef2d9b62a7e49c8b5cdf83a68e8db62fdcdf6b293626e81dc2ff4dd4d9ca787f700f4dc7ad07576be252162672e3fc23320790f0e1b01d28bcdcb7a1a872190a5f3a5638ac454b5cebf7a5ce243f1c3f2cb5108d3e865dbd450e379b0d28d0c3cbfe35fb2434059314cd84308deba0cb1c339c73b616c08350da05c354f8b188e6e25c205d76f5ad57895285da1e47c16084513c8688b314589cc42f34a46a4a021fa04a0c5adea5d484237cf5b5eed8e33ecb849305684d49b22a0843444fa30c2016bbb48638511d086449dfc4ec5b002b1f146cdfb97342ee459cf39dcec1eb8e7f0381d8a25dfecde33094c102b00225881b3f23391031377f966a7486dc8f30ffeda68f00e8df3d04bf8273ce73dead862a9aef01f26a6f8e440dd89aeda99f4ed14d4ceb7c04c3370979c47157ddf656846b834a2b7a522841f6f5e79a64ffe9cd74b4b9d174480171d4d3ca864e192e70a61aac14738c4f533a6cd827b1c1fda1dee61207e0624224e5a4c5e5826e833be30e5bfce8b0cddff70fd8591a4c4dddfe06ec095226c0b89cb84330c9d0e352e62fbafe4a503c1f4d80fde82f559d0d01a12974e7bb1463de570b600b88caf7bcbbe27e75c5833502540f044275dfb968bb858265dba5a5095a696379305cf5e81a4c82f54a1ed636aa31d481c96a3a726434e59b0ee125c26b519506fd5d88dbb8fbdf315211d6d1fb85c4fa9ddf56905a0f043c56c262315a8b2dadf6b12394e9e97bbcaefdb38f8a493ef29c59799fafa311f7ad123d2fab1bc07f0bdd42b905c5c7e16c2d149fc0b4654d746c1ec55211d868a204848cc2a5509982dae89b40608d5d9759e8e80991fd878c597f84ad05d628ff924c1f1fd108bfee4209d0a4c34be3c47558837e742498cd3a76776d0b159a84c62ccdccf5c9dcfdba2c880ca3965fe9201fd22126af1cf8d7fb70d39203b39f235bfa866776d6c59b846779c9bf4ada4817465e4483a79e44fb1004c787cd5b80db68ce297abeb469e1a31997c71be147c232fbdf720a60a8744dd9741851e8021cb10da2ffd86e07797d476b9f83e07ce56ea1a67b3efea66a4f733c9c762d5225cbb06fff7d089917d3cc6ea2a257d7b5119fb675fc0d69d1a896a95d35c6829fe31d9e21d66cb123ac4abaa92a1a15603e4002450cfe91f37044e00a34b604ca2bd7e8804182fda4fe6c8e758b73805cc69d4b5117bed384a1a0dcb3361df34dcb9782794c2cb056d2caf63d6afbd97c7890ec6199ff69528aff2bf36c50a355a6516030c8164b94788b8249f9329311885eabe60fb2fb0efc85dcd3134270b1017d5c1dcc3b11030f57b41a88e97dfa78199092a8def9c6c1aaaa045965f228fbce5c11b6aa2b53636e5d643e97d9346c0e88bb85601edb717237e94a30a3a9969a0911621e970deec166efe1f587862ff868e8a54bc74ce1a9e051bf01658db339609460c6edbe9689dc5b57bff8989fdcffefa85b390d61cc400fab10d05f6c141b1d4077ee9c88dc734ac948190178f6083ddcc8c5f8c43570df344be4ba3b67d4e14001c8a0eb5a9478d6fb8bdfe0f24214003872f6ef7172b7b28a66cdd010cc8bf20e09c9c39613cffa36c9205f9bedc264c011b23186ce6d42d204d53b539c3aff29c2a25f3e66a2b5df7fc93024fefa3550790182d5ff674a06e1c5e503937eab0e579e61f655896c3c1e0bcee05bacc5d991c95f68bc237a9f031a07ebc11ae5f330560a3680ad6bb427ca81714e768e96d1a378ea959326406294ed6f19a9f817396449b6987a5a6e33e6082f4a46de8fbcc650a42182da8fa5f699fea2d221a36d13a90510c568db33d09baaf876a9077dec5afccea80970928314105a5f2241b8af8036fa21fdd2f5b4c7f798f1cbf587be886baf55854ef16355f5a52066d80808bdf760d4044ec5e3fc28f9b57a9dfcce9a257a365b16223db31b1f33584f3c77d47f0d9d101d65204bd91efabe0c83764bd09cd380d57099b522da2e65152af674f1b5fe77fb9e777fea1e41bc993485db0baa8a6ce345e32df6951af4ed08b9b7ec8bf0b5a8f280911942d8dd46dcde6cc79369890966034e6522ade15f7aca14858760597a2fc19156b0e8e0223c9877aec0cb14a9745efd718617f5fb5ba68da1993832608a1b88465956ed7e572e89824a578641d471d69a3dbc65c8f8bc89972bf62f2f9b2652244b775ae51a8aa4609de693f7d6fe5d8dd77c3419fdf442816bf3e7b507132414fdf3ecf7f9b4e659f10ce2264635b22dcd5f3f1baa891d81e3af7c593f0720c7d25cf6d2bb9f4aa2d7de0e0cb738c182a1e6781c4116704f825f5f49b11f84e10b4700f31631c51c3cb5607c220f6c94502e6b3cdec061c4a7e3b7f37df7c7babdf6df456f89cd71c11ca4275064275c3f45e80df838bc9cdafb92f1d58567df6e55a588d86b36125f7b8f6963efe6b201def14df4142d968f713a9aaba0816039d3ccac672a0a1739ea8000f6108a97c4bbce227dd3a99364c327fabbedc37074eb1d5263e446982cf2cfa495bc24be132fafa5d592a4382d6e05ba4996f28a745d18eb001ea8fac2caaeb152588f3ae8fe8d096c878e33349104b6e355aa325e391ae315bfaff96d2fd35d32cfd67223e74016b1df2f1d13c2fef71eaedbc1523d3006e8c6782e68b51459662bc6ba72cb1c0b48da70d2ee4089ca3bbc5483c75bffb6025a3f547118b7e8549d2b42199580ac3724ed68ae10df37981b281d7e18ee6c976992daf363d28df40e71066279c515ce8474495e838ec471cd170b60b0fea00bd4139c65e316fe028db042bb364e513334d8a8f527d45001445ba31e1e10b02b1d396af164215f51898695d5b2ef856465506495c8d124bc79a48a164038812501dc4264773507e27ec17836172f51def1426439e253296d4105debde80bb23bc6315e3b65fb434448be4d2203993f4d86baecc5f8d01e1026f57a736a5792879106afd4994b1812bb65f9072e66602453514c3a9f340abcade3e782a6b6b654690165dfc39d877552c9e3739b867183cf5e8c5502eed176682444c83e9861ffe54a3e57c6f4c5d6510aef9e149d24e325415000902aa0adfec73c0b0c058b904a9c8f6689f0e354f74b00a3fcee9d3ac8643536344328bbbc8fbb74efcbcbe11d4b715fe48d507346cfd952827f1d4208dbb842d8c59d1ab535160d8772d5d4712c89417e243796c340178920121d78df0449bb51adca122781d1fcd41e5839cc3d9e2a6495b6a70ca2ccd6a8b2b53ec356ee0b32c89c547fd4e37732f4749881e05a9647b0af162c197190be507ba653526a3a4edf2677b4608abd297eb004e3d6127ea0e41f23e615b3325dfe8bb3723c3082440f23414bcd5325914a870cd66552d0dbda2fd6cdb6e6955c74b36ab95bd8425290d6e67995686953d01155ab76064a4b2000c20c0a9670ad3a9dbab89a06c72c84e6977808d2d9f4d6bb8e7ed1f7dbc4957934b43cd36a17ce310f7b514fa9097f4b540a9999132150e81cb3bac4d66cf8375115daabe3994150a9795db71f03335ca67837ec5448f6928ec9b163dbba795230fbe79bc0e660366e40c8edb3cd9cb344c493337d5a37d8c252ce8b7162b83e808b6eeaafc12f40ef394d739fd5484905f91393eca00a56bff527a05a7a167ea1370b13edb543ef4c0834dbe7ce8ad41aecb23eb529f27d572ffd9adc2efca4b3d3a1fe32dd4c6ac6d5e1c9ba3a2525daa0640fe495d48db9ec999267c58cfa427fa55cc5ee0bea0c3eaeb73cd30d3bce2f4da615a2a5dc1df4363505be30f004c99d880918e43fe28b14e76a5820d4f89686d71c42bb921c4713752cf55182b652a6de3267e90faa3dcdb805760ab497923d2e5c28b325bac52b0856426397032dd23c083876f79c1c8b008ffb8d41bc28c264060bb5680f76c974371b414ce1b5015146a1ddda497f8ce4a1bc9d58df94b83e588a35d49b595d41728d3ea8c0b0ac046962ff83f6ae5569855ff9cbcd740c28b3af463afbd3d404182c398dd572e29c667759d32da3e0628292a960fd66cf4dc7acc6b786c35ee26c062a8f459a9dcd404e4e84eca23e8584311a06839b4b4c8ce054e76af7dd3c9b63a3da846aa8b478e78b8ccb835a9253b8d4c3a7b78b8a7f5d5571a7a4b9296e77c949d64111228cc65f28412a2b5fdb7ba7c24aaf034fc067fdbb392145d679357104009356951f9c115764a2f1ab4dd712e34a5eb602facbb269d75962d6f8b15691573246ac5c272e241b7589b37d493595de316829d2b86aff71d6ff9f494ec6f88340f0e0e6ef74ef5d610942399b4301404d6dc51735959a9b4ca42bbbf00de3b686c5815372a195646f16db4dee9ce2ae423ee4e7bf410fb1041b87f4636af48434a5e3f8da7ab4856ae4654f584122623ee6a89c4f827695b5fa23aa5e9985d219f81dcbf1d2458338b2c67586fbdf37149b4786b3e203cb100b4de10b03bed3e210bb0cb09287ebf026508a1f9a90b9c4a4730aa6495bef4d37f1a2528c2ca1e01b1ee2ea920d71f24fc1e2228664c648137e8e037363b7acba6a7d71b242870bcbd3bebe682078fa7785adfe6c542657920e6cce488a49cb4fee768d3f5003561f31bef77670e27a2eafc41412802e5ebde6cb687bcf66649aa6c1ee219b84c892b0411a397d613e4e7356a3232ed9784d288675f7005aead33f55e7b72fa1c4ffbe12df9d1f91e25cec3d826b4ccc1cc761911b8df4b3f27b642eebf74401f62083761879e30d4799cb2758a159df3057f8d6fb96ecde8a6470f0e800f79082aed608f14843b8f1f7eb53e3b5001ebb5f7cf84e289994d567138817ef9206d422dcf6e31689738ad1265f98b116c72042dc26a49965203170acc7ff87aa56267dea369852ac2f15f2c5090542a61e80166ccd451647a897224076a8b03ea02d38314a5ace30d8ddea34016b30bebc8ced6d5856aa62021c33614c4059f9656022a0592db6eae24033945ea371cf29d9db63c98d400ea199a59980d4ed11d6b52cc09f54fd19d7ef89389dba86409726625afd8f48306d8c03f253b3e738b1631d1900f3b133b2a50abfad92010dc7d67607764634b0844eb891e432082ef3186b435ebc3024ce85abfcb9f34ac8df26581ee4af5d12195e2a9968b1d29910a3964d28d41d22145304b859f3614b38db1659a806d601acfc0e8cb440d0a932e7985cce1287f3d1773d61f40c6582fcf9647b2f001779cd0ff001d1b80c0e41c8de80eec8d9b24e285d45a0422f80ee85a9b64143582a7ea2d2e0effa573e53af7658516de1d687368089f33e27ec01c1dcf99f2a0961c339a1ff48af5f7184af8ad0b7bc6e9293427152dfd6b12e58be3585831e1f087acacc8a33a709f98417d2664f467f008e4f138b5873f906b831f1cbe24ef31df8c92c4866fb784593df845c6664ece3744da9c1da1944339b9060ddb8de4d66ad3fb7fc66ea87f861d39f9afe5f7bad565fd0f1cd986b7093df958312a562cdccf078d46d0bf410b66354dbe922b9607e4feeb7e887fecdf6c59bb955cd1027bce5be385a93e66990ece3cc1497d3b83d69cf90b0fa2a8c84ee36457745297e1a27af3d47702bdff280141f574c6d3516767e685a91f9bff5005cdf13dee9b0bfd456bf8bef758191a73a03cc3c9933c535f706cab28d33fad16ae5fc19f97429e2d321de03fc2d31bb0a543986c7a11fd8ed9030661f9ecdd16b5013b3d42bafe2a1ced26cc80ae403c95bbacb640aac5cf26370adc79fe63eef8843c1bb16bce8f7a98251de141223047cbb749f26dd5d4079502ac80732c8d4b677bbbd817ae2c5f898f56c59913a2db4b3639900ea9bb1dd1cfa417ce5246464cd3f4b5c561d2c4bf86dacf792a07aaaad42d72ae9658bafd053e8ba48ec26ea7a685a1e814dd7f0c0484817747b072ca92a8e76bbd15259c1dc94a2b5f446acd71dca76c30068c4341b7951309096569a3af4c77833a05afe78dd965a0f09fa47e4df7e357749ca5c6881b6629ad3098ab4bd32ec5a900e43ecfd48cdb9909ed46d29d15caae6d22e32e56ff5826f29129e6e92d0ff4664df664d60c467517751096bdf27b4afdbc93212a1e5a251b64c8f9e3f3422cd25f3506373bb8fabeacb6bc7e729a4ea691572cb8d5572ecdd4dfb9622bd9a9b1f53f8734a6eb99ddfaca2111656da0567da96819a73391f7f9321afcfe90b2c6f2ea08d62f3e89857051e0ddefc3ca49cc060e89dd43406c7779a830459c844209d9d6a3e9ddebc00bda11d2d3d1d020c13d18596b437a4f45c661cf36b317eba1ad29455bbd5cee41a3ee6a5765631d5c94e3b78433588a65fc7fcfe30243f64be0ad8266c1f6b120ef68603863c6824d1d92ebbb6c52d280c8d6610c172203648d9ccc974c93c229b450a7fbc490a05d809811f03bc69365c397228cd9bac44823cae09fd02376dff730eee1ce33f93b3359d57e1f1f36c66fd69775965d8a41b8241cfe2ba8d38d51c3a6a32be218a1b3abb75d0e5f85bcdfed7da14ff5f44ec55b453edf04ddeb39b15767a38c93a44f83665a1b3668c8df32a7d4e7fc5a413717608cb618b33ce15a61db96899b8835d046aa1a7d68927aaa470cb444edbbe8625d4b888f0780153845162e1cbc7760347d0364a23c56cda2a57d472052e7c8c5f6e9fcc1d398c8bdddfe9cc71b29bf1971c6581c94d92e785d5627fb5f3988360ade71755e7697a7f66a38cb97794601e9e24b484d0326ed3abd311b93c5a692729d3d79d3aabddc0f56359a9e428c6f475e4d52212303eb3ab6f37c4ca719f7ff629ea970da76a11ddc32d7bd59494ecb912e5efc66eeae90613c3481984844b61e6b28b13eea86e1a2b3cbd5de68aeb41033292818ec099390c79e215b944f22fa8c51cc4104ca26177dd988f5f9fc64bb42625039ba3857dabde8eb5ae72d152dcfdb464b7c255507d80427563e98da85580e08c3117bebb62dec4c2313f3e3e80950246fe66a95d8682eba37a873981960bbdb9f5dd8c04f3fe3a14c9165cb4a751e007c065613143b9a48c17ff1f27b5579f530797ab4173f0ede807513945ac870765652a77996bd6d074af5ae74ca49639cc91366afc24550d0c4ddefc461dfc09224700cc7d00750b8beeaced6b4396a4142eee64aca7cb8b181eb82f377ad10e20407b5a207350abcdcaa74d68e0fd74a6fc4dd4ee80723c806cd5b0bd3345126f73298c32b84623b2804ac091a604848bbeb284a90f3bdecf00e3b6ad58fd25b7d36e2dd3b9b2eebb320152ac7193f2ce7eb760d970ac64a2e4848d078ff573f2e636485850d9594e7e086050f62f12ad88a224c9d7b3857cad97186e77db40dd9413d4e69f098c2ca738946f94bb994e2459fbb5c0ebc6ba5cd22888a5867b363ccb260af2345c4f8adf0527407088a76075e19d3650b2e088820e5cea4937b0f5332942c2675de5374a6366a40a4a5535bb60f473ae6a9cb6861d52060b6dc3337596fa0602d904d4868b65f59ec442db20beb57d565252a7982eefa60d34a08f42ad7076d5ee8916dacba485972a42200d6f989d72b1213349263611fa83eb070c4311b2453e1afbecbcb831f02afeeb0bdcc94dce8eec4b851b0f9a472059a2500e059a5988b6e9eb843c2215bbe671b282834033862f30ae7aff9b9220f2590d79e7fee72c585e85da6cb582aa0e6a7399a756011cb2907d63e79e120ec35b6ad059229160ccc8b7239e73cf59b665ca9f7940094840831870de17d3ebbd8020088ce81ea51e4689d6714092ac393885baa2a386d7e8e311d34da48a9958ae92c3cf50105330458db02e16c5ec69be585c34556f423a19370a7a26b127717665119ab2a173b8b5a188fa56795c1cddab39533c0fe1b9177bdcf01c3a9e79e8f9ffef5ed79c10f92623e6157fcac7f04d13b66baea1d3068c4f5d395da5dab8f01c71576a18bfac54a487340742e2eba2b90930ccbfdcd79b0bade0ef1aeece5294a605ae0f4785e5f7f58444a0151dad026a3e1d28234f8d67558791e240ff4ee49574d4969a97d689c392f5f9cc29dc03e0a4e13dcaaa4725dded787db293b5f271cc5bf43cbc781fc0e1bcbeec8787a6258845f50e29f2b057c4477a89af4da778b6520b164ad907dd42b2a90f67e97b3e57d98d95727203485d8b57862f5db079e5564084effd534694e0185395685529a97d2e76cc672f8e4e92ce079a38ec739d10eb6d94431c6eb33740227d8537cc98a8d94dbd9f501d6fb5eaab6caf341549f3cd516d649bf2541319c7c8c6329cdc43e1c5e8bc7deae8cf9b23bec7fb1fe6b9040fa4fcf28815595a09859d1c21143b3fddfaee488182e6a80fef5776d7ee53bfa9bd9abf798333f1aaa4db28b7ed5c0ea587840339d3dd93f620b7f98530417869e869ec4da425599f3756b3a8e73cef10d4b4efa4556ccb064eea588a954f309af4cae03795bd0483fc4c40da260d97f4218ebaa73b03c0719f60242512ebc566159d9c55d486d4646a2b0e158072afff4146bc6b6199ab5fc33a6fa462e0035b19306e2ac26abc3d22f31ecec1838e66d33c20cf32020f8c16ffbc95d95d3f281901c5340594bb02815a7608d15a51b2935d8d47efe25206fc361953ca72b6cfc0edf108c2a3b3234cbaade25418cb639be0ab80f165999d0dab268111adbff2559338642074fff547aed8e1f29d893efb799306cbb14d94a0d088a024091c342ce6c6b6535daa24ffa988467a65044caadbc08bd18fcc7968bcca680cd4156d5637ec96e4ea6fadcc49d57a41163a5b9565bf13b43eca903fa51d3ce7c079b4b9be337202cfeb88f37bd5d3326e897a8c295056835fdaf8ff7ab91c03fc63f685e6b3433391697d77abb497bff5edc46b3833b1d90f65bc62f6bed2839e73def71bf0ef0238171492f869019cce649db2e3431901948722b5bdad7ab64ff8f06eded8d541c6f428d15cd719e27d38f411761e6b47e001a488971acef21711e9cf14bfe69628bc9f38fbfb588aa828c6dba37fac0589b4ef38d86ffdced475d000963552139254a2c416ec480f62538bef8bec7ab54e8a992d79ed38ffc2da28029b7a0d05e80073f2a58f60cf06af5c7b3b4a257e61d257dc0d0cbd47d5426c15cb274073d8db51e894e8e57c075fbe8d0234b60a1b7f1d5b4edf11c438cb429576c5de5235152c5fc57657d1e67ea7c48176736e306dfab22f2822aa93515dd68b727176a5a597036b22d52b6486b32d296cb4f7c498f310a4be27788d53e0ac702b21b326d379ab206323e1a0b4c11e4a67e6d2390f7dc0ae0f2b96ac813c43d2ed98b4c9f92d18414460f3e5844ba119cd0e79298ab4b3730f7f380d464fcf9cc4bf658bbafd9b9bf93f54c0d2cb6c76f43f111484d3462f6b27d609c535f898a0db019cab6cf7b99967257891babf43bbeb5d666cb513cfc29baf8531252fa3417be7332559b76c91f445cc7d22a51ec060fd8a358819a4700f2e5fd2699246f86b51eb5d92237f1b22d0e650f6f8b1c9ab14191c94371d7f9f56ece56c29529833468d0b875187df9e430ea2d41945a6a630becd4333fac54087234323759b401ad6ca5a17b9882c206400d8f9cb63312713bec404d717c6c1f326e6316e5acb2b901fa5f1b2c67fbb7e32b7d7922ca9b5c925807b00418d29c1f98984ce9b6ec7d46f7889f04b3596fde74f4ff895cedb7ba2aa61e358e609995d7942de03c6d940f6a26eaf853bbe3445b7ba59aea13e20d7faae17a755412f79242039897ca8122d7c6d699e8ee4bb9ed75b0f0b381b32ab807b893b1d850d48b5bdf6e2ae4e236d8cb8d1ed6df0476e53e15e6b8593f2e8ad98b0493ffb6c6d3bbdf4ff5089152ac8af07323e2ca98dd6973709eba9ee596fa5b90478a45356eeb43b6ffbb261aeba75f8776b7e7b7240e4cfae4a75e9b7c0c9d875da2d651d40690b9b602ec40cb384292af1e4a2e93df5a80a43282e90cf18a73dcc8a814be053742075468633659464d5e3abbb6f660768319fd6fd3c5c1fbb16cb5330879a9b59a2463a96e59636cd8dd5ad3c78b7a493a5090339f80e51e9f95d50471fe76c6277e00d005496a24fabf486305e952bd8285cc8d28360630f93798c936c85946d1418bd14df764b4d45b8e2da6baed5f495b9249df5a7b50956bc3a72bd441022c8b766a66efe1ee9ad919d2a2ddd7783bd61f9fe32c944f9e3f3420eefe9696634ee59d1bbd4a380bb159b0afc579d91d9ce118dbe69651b1d8a75485c1546b47338c733f43073c9f7853e82b55131a6ad51bc589c351d9deff2086e9b2c4a8cf5ae3242984e2f0bc2b60c011db1788631b021ac86c8cf0774b0e595dd21e9f8ecf5c7510b3b5cd0e0fb32fb2e7278f4bc5d7afec0ceb60727f9f8cc740ded5494293972bb9c175aaed51dd40c3fc925530e3faa2a056aad09e8dd5f60e5560e0bc71f16b62a10bf80af3e87ae5437dffb372f77c2c83869f2bb2922b64335f9d03c3e926a947ca89c3eb17d8779719559b0d7c34ac7cc3272b9405a094e1d386d9e539002524c4e8c557b1430e4f058dbf7dfca0a62891b1fd05f30400169f9d30f1c363aec9ef5ed16fd711d348ee82bdcaa732e26666a3c11935c48157b31d43fa5956405c442450ba5a32bf9106cf6cf7b24432cd55b11d8674fe9d18bda647b2f72d7e1b36cc3547f4a160737d150b2ca234416c4378b3e27ebe01df8cee29d29218d58be22be1fdbfcde414154607179d983fb6291e12119dddde43ea62bf2d941e685ebe4d8ae19fa5649a335109ad9a604c8b7beafed156692db483605dd6242e3bcb39bd1a29b285bdd9d9945bac4b6476970063e52bf16528bb70cdd4d7600cd0bb74f15d1ffa91d25cda95faec90428a9c9eac79a793d1b3870f2f72756825cea1dbc5184e33d6c29208e4e69af8c03c36732190abad566207cde2a32c0d58fd73e6039dff975b7c96c17c286cd0efc1fd64360d3e1ba492a6e8fe3495751f2709fee90d3e80c9aac8e717ca44adebb3d543afe6350814d51130a5d2c9dc011085e10f5914114b4a105124c0e79296ebb5f71362f953ca6c9ced48f652a56ab1bcc9ad813725ba7e50646f7ee54780769b2b9a2b00f239868e3bc2241f27516f487af3bfac8fc42815ee965a65ae219bcffe03c104c05ad5a9c3a22b965245fdd0742337c2a74f8f145a99a2ecf1bb068b7d46ee7f4fa4e04fd30f11ea345e9df8c104af284ad97e39e8f73a503deaf374aa16a7cbc9c7ef3ee2f301818d54901d5be19081cbb11b5aea6ce1e000306e5a8098213bf47cb49508e16614fa663956cacf5a186cf808e0980a17660a60ee8109c7bcbaf2a3bbdbad77764e54167cb5cdcc66f23b00495dc7a819f40ef892276a38bbbbe4fd335dd6269908da5ac49e9625e6238dabd91a22d2589d32c9309266a2243e8a2a6522bb7cc0fce437e2fbf0783f5f905c64d5d919474d884d51c3b971d87cdc2bd2920c2336c4520a095bcd2ff6caff58fd71e078dbd32e8bbe4c80ce6dc36db47997e8220976ae379004f98ffac05a13f001e833be3fdcb6eac6d9c3c538d187fcb9c2bf55547a16f1ea9b59e803f50833d577019521ef9d89845842dcf83cdffb3c5020d2d56d6249f12f7bf6069277abff969206f2938fa445c34dad885f39e90b1c433cbcee407ad53c017a53d613e02481de39353a873f144c34b1ba543036b9c7037531304afd0c8df4aa13106aaf053b6dba60cf754d3c18e6fd984d49321f124975796e5706ee81cfbf7108df3b92d45d3b3bba7f89a28791952ec5c2163c1c90cb2e742a0dedfe4ba1e2146b541cb5df6f26205891ff8363a308604c7cb5af93a4b4c26a9e03f89eecc05a4ffeed05fbad3d0d10d37ce90eddeab1aa56c14da0753af0528907a308f989fbd6d87f76d3c280d58cc186df0ea37ad4753cc82f598fef671731de5fc01a58c6ae0820616de1e357ca39a2d68ab85473cea745d34f35653206e0e020302d24f957ba959ca9f52d3a944638bd1655cd9161e471cd0055dce7326b6586d70ba2c8bb39c520865c64355c6f0aab488a7b2f52b864b3e13a10aa58783d84cd3db76559b55e5ce9021c7a626f1aa98a2dcb89f78a6cc7e0c7f0205413afb5b34cdfbba1473cd6c5bb38afd55a0fd92785045f3edc3451ad83b6f04f761c51a5cfb6504a1f6d059cb6a09d9a003f989ccf204c39fbf1d0578727ae2365b8afaa59c34d2b4b0b47d1648e7c369e0bd5b0bfc941af56c93ac2774ccb5af256748eec37dd5fc72f0b135cea4299b45a37bd6a62c58e1f79e70219706e1671cb04871c55f8a4b1255d64a4479d563648cfc7f6692ee2bff2a7ecc4a0fd202d368c34ccd2674938e536c08c00961697c16bf39ab93a30f967cda9914aab014493623ec28d80ff7d4c0895bb74a8997902b563ac033bd1f8d7fc675152903a1f69ac57ae4edd0a7319eae48c9b4b65c11a4c630c6c0a34ae455c5af1f9ca62d0d3be49c196c3431b638c6278698b3fbd3bb6cddf73396253f74bffa7959808ff6c304037a740728d623a7a375fc1740a27d90186588b15b66d97c4d1244a2ef61e5cbc977d3c670a8ea2998fc8704f66e7d3d4dd0587724b2198ccb0c521571160beb616d3aab01c331e8fafbefe97c6f0d9a1ea6033fc1ae0ff7010eddf340fb702a39bd81af9a98412562ffd736b5edb5ae07b02e03ce5eba4731453fe06b20eba813379e745c1909566fa970724c7b1137d2da69d044a577eb1178d185f776fd22abe392f6b1cec83abb624aa2e5da7ad3ebc5ff299d7376416b882754aaa8d2c200ae0e6b854b61e843c0af31c34dd2591554626e98313eaaadbaa093109a2fd4a1a9de2270668d77d354f3254122952613df243ac383b8af9a4f1573cc7ea84e58625dc65c15dddd5af986992e01b300cc4a37e70513c98af6dc7d05c36cb62c474414532886d2f622497df337c8fed07053ad3d17a080c921918fe555d152ad8ad3a1fc0fc92fe8f431938e0ec12b6b5ea437adddc9d41c4a6c4d65299da73fe1bf50fee94ebcbe4dbc2555cb1e253d5fc1b78a7b8a764b77870121686098881753e05ed5dbc94231986a939f3bc154d321d186bb7a4e2946cb2943ac9acf304766df93975068c6747894c6fdd319e9d706250401ba1d0b60972ef53d4df87f26237ba3e8e434c0d30c530f37a0c418d3fd1c45dc71c724f0995a02639dc53cfcfb41a39d4db6a07e1418036b801b4a6bb1aac91f95aa9a136c2d53bed42d23ea1a69a8fec614825f54ec93e71c79764853f606f7322cfca2fd78b22464e724408c7b4c0020fb2b10d91c89c8abd139f15a31f967aade81ce6261763dcebbceb24b618464ad004a4a766dd57bfb27c7778d900d7b2a019a95c3af34824bb9d56071e11de3acda57c04e8e53752f13a8ecac33148939ec37c969ad10764de4373451ea6ccdb2c0547e68759c07549ff19826287ef0ca83f7bfaa4e15610b04f1f043cac8b435fab90415718e73cae798cf9ac916d064906cc44fd9c4ef7f7b3ead0a66c39a84c078fa87145a311b1f2fb622226d84bd27cdf7fef400f332f266a68c1e3eb6b42e413e7ac46a2cdb02352c6cf8a15d9ca24937c6e5d394c2ff837e5fe31cfa586f93fdcf1222e70ae555aeb5e5c00705f4b2a63edb006640eca3b055f55825fbea643a867522d45972fe72d3fffbb60ef807f6bb9f05f81994a1587904b29ac98cf473ef99f01501aac676e8b4bf3dd95cd0f1d09e01c2bdcb3e91a6bc86e410c182ab7414d04d446cac8f9a83ddab544940e9d83c918940a066aa9df03d714f45689808e3a883f938747678e7415cf1febd591f2ea202927b158fc3effd9e353f32eae2959eb99a29e00e7f58f44fc8a92b552435d1d37da14809c5b02a554bb5a0c4aa862e109c431c9b3c1c5d5871257d814a9a561f316244f05662e2fd3997b650d149135da52c56cdb498605bdcfe77c3f9b06079197683d784202ebac42f3db6433b864b637d2b8dc7679885f0d2aeb165435330248e5057d2b72085b5ce3bfe9792018bb6bfd6bfbc6fea960c942c204b2ff069a94cf8576a82be9b57358a01f6f8880d04e0485b2d3cfb9edc19a6e0aded15ca4a845326e5e1c9623f1a5bd379bdd8b28107f1e0e2b55805266b3f1abb8151ccaa616ece3c35c216fe2d964b784288c26e4bc601bcf38789f9245e514e6546a72d6e3f67cbc291e1320bd5cdfd7853b1a0e17a44d52ddcc93e693339058fc17c3460930ac37428dc90b2840e2f4c49aab1acad3d978a0e93370d0b2f46f93673bee7c4f4170f9a8cfe5589322d18a37cdb8361dff7b758904113e3de426115f2341f949c4c113bd423c16b15a2983c53799220da014fec4b26208235c54f2290bd183538139c81a68db053de7bc9c00c4690728e1959fa90abd4c4fab09330fce63112861e3f12467d82b21de9d48269e310784c51bb2602a953c8e95ba5609f7f3c257a3ccc471396935cd5272cb8a1a7c14e29706bc3d9c340dd6cf3b180ec78d6f3b5d340cea40be307a475772129f5fae55fc53420945582020d6a2ab18daac52001f4b4bad70ad3d4663dd81ed46f44a8347f71d929ce7395f9bf64259fbdc03e6984e763c36f9161a4485a309f47cdfaf22310afda485315f5e0ca1330ce4ebe621db47628ae6c8bafb793f75e2747c427c3ffb75dac88552ed6f102dec027d17738cbda5f80a90a32120cca667c2a728baef07bb922f3e11de7ec651655d4075632b4ad7381dcb073cc55ab5f5c4f170b208bf089a7522ab6b074e450884ebfff9a6d0601dba73b93188bc2f09602bda02a4ca31efbea66e63c00c57cf6c7e897617164a8ee664425f5c9f39219a952c9d1eb006e49fc79e78bc89107501957f3ad5e9408e5fb40d4e1397349de37d321ed33429432d46d8380183276dd562b0ce18ea8b45604cf69ee5f453698d675774db6fcf8aad85da1338c410e1f2c0c83f813a9fb7772b51e0b8b4185b3f92fc800d89e9f85d2a012097b76a3bef924847e94b9f3a0057437f4aec618b4e9e54cac81cbbba90f2999b08dd5fd65a2049508f058e503da6b7de9c40e8ceb3f40028cfbf7edb549853c91ee93702767bf43f36522d6f10de607fcb784ff9d5a7976be30a33bfe12c976703f619110b7bcad7d0faaa22b89814f76a57d34036af5fde4616b4487c4ed91cfe4b3bee0665dca7d8434166a33320f48324d7c57092fca53f9b4cfa2e1ff7759f1f6ad0b044940b13e85d8b915660d4ddd831a451d1cff5d1646791c31baa81331d44a8862130fc55a6860da2486df973f8038e4ce27a073d01b83cc49ca38b6714123d7bc505682209652d72789632b3d64e68bd25937e7836f30928807d5da92c2fc5f6dd02090a19fe0f0450be0ae9920d933b947d904d224d0e2e1ef769ccd721c9931f5fd4f0b46555cb3f68c373bee1bd47e5b66673c10922f68a31bdadc55c3bb1b8dcb99fd4daef5d0dd4a6d6b36da687bad297789555d1f68e9d2c6ce907fd8f022a7a14199064bf4f6c4c6ca4f72c4b7ad1c0ac97b72842c9b1ebcba76edefcb7cc8cbd73488cb0a063f9d0c042bff1bd1a6ad9bf7cab0e6c38fb46696e49e337e6d912b348cfff9e364b4a780d7de064d84c8a9cac5de40748e7d90f14c83a9651750af5d282cd4a1594e8836024338451286037e399885f5a53b8224263ead47fa9cd1a7d0d1d13c4b0b3b140973b8de49119fdc0f08ca474a486ea10b7d09ccb275b23a1666e07f6dba0d81a20e5b5525ce0e2360de474f1267875655ad0f30466b17332eef4eda01b4611bc5de99cee3c5627abb465c3aa56e66444fe203ae74b57916d0f7ddf4f741d948c680c8656c6479fadb191651c6a49650fde4207b75bbe71383f3be811da070e3e97b67bb20fff8da9d8da20634d4e100ddc802427a1b24e817a58078d9b3ba7567d410b35c3365453c3f950a13ebf0e1a0e3d727344a3bb6632d181a932effd4b339f334eb7e3cd6d6de1c868d8c6fd15b563a56745c4ac51a42923b149e6deb2b0260297f080b64e628b60c940242d7309c6040e7cd8ce4ab6ea70394d3e284c08b6ac68372dc392fee9b1315f08be3da93d298802ceafe4bd01a703f349458a6e2ae64f9fbf9ceeadae0204f46e584cce84e0f3235bd2b43c63efa39ee329fd2dbff9d9f3a9d704a2f4315e04d6ec0c3edee565c5b567577e51db5e3ab0987ce251df331ff9980ab730a13d42b6321cb1d72a02fc214784f99140fff61661a29e9e2673cad37c9b78207c78b63d5a5a810c939125d855b1e40e5e0fad22bab28f806dfefa8b05f8ed1e31af86d3451e30f991795a4748ff72b724af2b20e19c1daa9fd59595d33d502dcd3af537ba3e7a4b9edfa9b287a1d6a20978d1ed554edd92217dc5cd3c402f0f2090ae912c080e01344ac54f9cbac6ff7fcf6510b3a26e9981bb1329a306de9c184abae0c15c7e886d1b85b18c106a3a5d7933a9430e892cd7be4ebc27cd4410d560a94e4e2d4bfc31bf08d76bef9281e4ea2c9e30410e71fbf5105700c1c0b88cf47171ca2c8b71ceeca904fa789ac910755b1aee452ec52b4d92e13d898302a657162f6531586593002d4f12df674e059f2e4ae21cbc7563dc8cc854655922c35a63fb436b5d6cd981f0a5dd3b65dd46d8d771f65da98b89bb4d8b248f5a4265547779cd419f084cc90894756a022ccceff013811c4ce3bac4c0a5bccef2b416936fea6d1a97adfe47c2920a7a9e1a6fcb23afae962c8709f87145d8c715145bef7be1af1cc01a3a70bb17f822528f0c750f9c660d2fd09f901223770ded11a908b033d868c04e9886bc84f7121ccca3d4dde53336b4468c9558d47dcaab1f6d61c9a79f1b1de6b5d20d081d67adb3074b090abccc522267aa7b9a1a70655658b8cee64239ab11b64d25299de8403af0a321c4324e092384c0a7f47a67b8d488e1c47809485521bcef1dc7bfdfd91fc2008f3a4b7587486ffcb3fc52ff86c25f471bbf214118660a6a824e5828a1e34717ae8e3b148a035d4a36b07b220e653669a2223f2033ee192735e0004dda8f21d035aba3316da14330e2d8485da4f2cbb76750f339fe378774751f3ca65f195ace1501cadd071ea436caa2a012ef221c333e7b6b348405721426114434883b1254b6e7166692bb69b335de76491b8a1e59ec1e596d23924ed257bda712f08a92659c1783fb5ffb1da9e9561870c7e6988d06ed395fe96f11b0fc3f87239a18360a1d20437c39f25a1e876ba1a24b3df5645002ba236e3dfc8b6276e74cacbca547660b4f370801c2cbcffda9fdbe3f5e8aed44c403deb082cd89c91726b12313eb704062e4d4f116da3cce7f33461894a7deb26011d7cfcfd1bf24d727ebe7748b6aa2ceab91a6575c63ba88a6d27a3667fc81eb2b8706bc86c91d807cd95cb6a38cf34d69eebd4edbc46ac25126928d05d8921e4ad0e63e8bfdcf3b1791855c091bc9fe39d8afa7d26f6c1d0dffaf4a6d22029231c385bca199bf4b97003fa05410503ccea32c07467c6b561bafe7c54ef998506619737765626beeec0fdaea8be3e039ebea5c6ecfa72083f2e784bd5c9927d8502c1d3ce45b0cd7d96cc0de29f0429d73290676f5538acd864fee4fde6a302d1dc46d879cdb5ec7a6e75aafaf06fe49c603157c2d729c5c46b7f77f2e25c9681487d299091d9c35aeb7a8be43eab18ebd48141d99b52acbd7f0f40a7943fa4e5fb98419a23330fc12e0878e1af18403ac0b0a851dfe1d5fbcfd5d893ae723f5464b175349694b7e80ef7f97bba0acddadcad4241a423533e341c085108804f034cf743c6d5d937b6386e0023a73cad59b273a2e27b9cb2c5e26f071476b4e7c092806015d42fb4e34292b44c57214871962d760f3bc55365998ebfb6cd19001414d257edec0149a6c6b1d628dd74ae90b9b7261dfc46125c704925ec0fbf6f928b66b5c0dda6580fac57765bcf495cfe5ad0290ae1270effd9d9f0f3011ba2246cb472d4bcf21e0c055e68382ea6987b7d9847eecc73abf2fc196853611fa1c60615e1eddd9dbdb76445f9eaaf52206fa140ac200d095ad4cc9d561da84873827113d18bb0e902d7da45f1349433d824ea00703ee270e1cb36d518acbcf723e1bae3806235d9b24b0cf8de399437620d42408072405d14117e334307f0a71cd086148bbc71538e379e1a628076a378ba6cdeca084504a5116f5c72782a3f40a5d6dd0b4848f1f3d7ede4720b8d7f27a8c11f03ccaf56aaa28d05d97b1c0647f3110a5baa50548910228fd3ebe7f51230fac66bafa08cbc061d4a9d5adf0521d3ac5adf9f916c8372ca60ea8f6303fcc2e1b3eac44edc42d53712caec8ba30e5372b9930707f72e12aff815ba6620190209d7871a637c62bfeb638a9ed247d272760a3aa1f077a27a3978011e610464ce69a0c892f0e382b61167f1d4afc6fbe527c097b6ffafa3caead05cb75563b8a9cc5301d48c5211332a0286f787505fd1474d73a4ad148a2664c03d56834f9b2369ad5fd5d1ff5fcc09af2dd253db37c46a02dd2e913854cb5d513c7aa68eff2447fa0370fe5d4133c3ba479ecf4c2254fd6b28fc155de494766f018249e0d9c4b99ac17023a6d8dd30321997771004652ad045c796528d08c86d5dde9a464a7de60985056c414a0f2e0a5d04bb414530ef6c0938bde425631ada493707f7bfd39fdeb5ecb53c190e3c50843423e70323eaca558c0e62d9ba5205b8780b660280b8d932654ecaaf94e676f446793ac705e32c3d0105cbde0b9f818e106e60db9d2c44f440310a022574176df5c5b18890b6f213732b8e356439f89f0939c5d1250fa24a53b306a65bed7798eba69e5ba6062ce242dd143ec77c352d1e39c66ffa6acee19b967a433046b990c32b4094d4a0bb8515d5e23ac82749cf5b2fce0a9be438d8caf486390854ecb660248bd2808cf0391acf721702f49b3cc6c9445d4eb144892fc2f7265c63c20e556c315fa574be1752757fd954a61c39a5c593e61513a3dfc5916f762076a64f1f1e9bbfc235e67fe9119aa5d8aae6efaaa8b5847d94c6bff00c5eaf8221f0e7dd71f451019b8b3b86c6c97297c429426e38e94d16c4d2c42096e3221e514fc6dc05a1de4228a8903a96b5a4bd5e93c0c362ec1aa87b43d9ba6a86803f2ef4739cfa507b11299c12577a4db51e1d1376f94b35588a929e4abc3a6f45cac2818495b9e00220e6be14806c54cb843b8001715b874e36c75dba8e2b96e0c9b086e2e12625a7e292afa3b4fb3c1794dd643fb55b0a1227d324efdda6a3bde37f1123d0cfda2a83aab20f4834e4e17ada3f52959a742a7922be85deca633531bf528561e833bb766b53bf18e7cff486c68ec1624e9a690594c99c72ca0d138718bff793d0fdfa24ff0b0fa46d3789b1b2a5cb8190e5d8422dc9e6d6a37dbfb0fcfef4c5131a83f6cf5dba12066ba9298011d0f50e6394b91cbf8296424ae81ce24e618a6d2b6fe6584f7990075d789c6afd90a8b28507293f9b1de20ce2b3b9db5db905ee2d09b277c883d40582ee5b95ddd3f893f1bf4993f8fdffb17eea516b27463472dd9236901721907b3fd652b47e8732165fe987aae0f2cd7f6771b47f5adb22a83860758c9f324eb88112ffb6db4c0ebefe4c5e5d950a7b0d96acff994e2016c27acf73e7717dc0f4c8509c7c47797b5ec2d4ca175c0a7f99c2ea5f178f56f9302733e53720ad85926859d0516a472374d5e4c615264ae123d55ec87302a80a6933de24ebd389483fec47e847d44db66025dad89cb482915001319627e2f1ca4f7ed2f49aefecf47645ae65eaf3fb85c943093fb71b08e6450c3fad69b4a3bff790702171af7b772c24fb4c230cfb7d60feb57619f7764ba03b2171ae75193b8f198df356e74361e45260d693104afecff2fb34d06eb6762a3d5b63c83de1dfae1e21734f24cd2990e678aa455c62b6536aaf9aeef4e68d84ddf762fa41fe6360c3de041d64dc3c2200b8eaef5d5f248076e4271461270d1dcf2a5f9c48b2b42bd30b75d61e37dbf38dac9a58b61359be575b164f810f46fa28041850e2feb2a87d5991e957fa0fd2109b7e5db70c70cd5c377e69a2375e1ebfb9cc9e96dc6b534322345d8753bce0f42d1a3b20a26262cb9add6a5496fb0e8599ee7ae150a0e05b49507e130dd431455c33b9ebd9c1e946cf27bf939688a26036a17223ed98c150282434fd915de6c8abc90894be321d315821085f41ab713235ce5a78cd0024ea8bd31b2c6a7b5fc2b3b9ad693c4321abf40504dd767b0411ad0aab94ead6b835ccc4ddeadfdda81b7a7817cd7727ed9a9da57a1e7d663d4e59a1741d4f5513bf1866f06e801ae8c111a12d6ce17c28b22760ca707dcf716613b7471259efa42cee01b3f8f031707f29dea5042ab757ac807fc35cf724263731c3f03faf6deef19b55b7374443af084c7d942cd11ae9a47a8f0196d706931b34bafd29e95844e992455ba9f41bdad68d9026bff0596c6aa0a7d15cd0a070fc50e19ab6498fa7f01ef06790c2284721962ec7816ac220d013f604a9d10fb5b4d4ea5389157fbb8b6781ba7885b2cf8e8ed56b7a060cd656c1978ff68898009e02d49a1a921a0e436316eb65af7ff14c793672775d79e13c6aa39c8def7b51be78e609fcae2264ac0aa63dc51af1897ba16922289a63999cd9ed69b5b856a647bc4c14dbfa3f0e16c12318446100890e1c9f63cdadce23e944dc4d593dc4c9eef0c26628a45c58b7b0a10e25d6bc48d7c82dd029f4e844d2bb8716a0b9528cb203374eaa6c1a31eb3cd6382dff7bb15575ce57c5c9059ad2e3ac6e0074e2d814c18e1b5798ce78650c54e270218d705c9a51ef44f21802e5249c5951fd567726937971b69f89a9530cd2db93d2d30f4182e71222cf3faa4ae902db7027cb5ae0db7b64a6ae7591c07596b351c40de53815f9a26c151003b3c253a5124430c286b99516f68ec757469851b661358d57da342ef4cdbf4307d895dd50d356bb9dc1638eeb43711554b0a9b01d73a3119605f528dd07a0116984c039d941e42e7c712c1736b2db73b88ab335022f75f2f0d7b07b50186fc2b7caba56dd324481316ddf6c34fd2d84928a6b123a2b7c2b2426d47306c434e658b1f38e878e24466838000e503e0775ab7601806ef46a47e27ba00da65f2dc2205efb75ee8bbe2325f6d3463e6f081019927f03c687f55a8a8680b3893597fad15e8027db51bb659383aba2e0bb11581964ae74ba26b29b442ac3ac2c1be6c8503185c379e8606fd05b08e69752d5e7645f9d005ebbce0a2a8863340f2522cbbac59809ecec230de0088d11af0bef6ac38addd4dea2e8b19896905b62eb21868b0bd323cdf3153a98d54afa6b137566c1296951629a1d115950ec1499ff73ea601e9a918dd248f7b17851ea0f526fecc7f84b9250c136a43f48e558c95db47d603e0bb3b4fd49965b5d940d8cceaf615d818b1093f734db54b13876b4a655edec756e71cb0c8ba13b966eb5e2629d76c5cc8850723bd302323df6f3165c2abc345dd66027ef949357ff7861f55827532dda72a058565df7280910f59b93cd3cab90f10a46261dbe0cfa46b0178ac275ed5f74573c84eb32c59a21d99053809faa49ad4f8afee8a9411ecc781cab9547fdbd18a0e19f48876864a4cd260dcddf5140659ae3574d0b3acc02dd55457258067f0503a47a8a11cdc63367ee587f60d6cae591a6a502f111d44201341e195ba2d8b6f1be5f12b1acc1c19a8a3f777859b3e56239a72cfad7dfbf692cfcb464125e01170c3b929667d2ce668e037ec5a397e3f0384627922618ead9326b09013e87e4225d278423343ea24884eceef104326b1cf52a7fa1a74f809b49553a6dbbd068f69d87fba1b5c02b0f4753f11f72caa6d71f97bcd548ba7072b276ee4be509edc16cb6f352f22679b44c025d7a4f973c3ce129f327c714c444f20db2928d5e8ca6e97c842e3d630449153ef9db763bcac9b19c591696c81f46661ab2119facf6041d82b79990aae52d8f2b274ab6a3d4350c5671c6d5b9aa0bddbda4dee4c8a4b4a95f4289b459178a4d7406f73bf9f3baf500b627ad0b3b15ca2bc7e00a5181d4f94fefd7f9c0ebaeb1dcef80abbcfe181774ed6f8010a0d39c5cd45b071e8a923b65ff17a3a2726adc48f7741e9b9e0349fb2f533b239c98d6f8252df1b632167745512e3a68767dc63128fe8b1786bef9ffb3326aa307dddea64b25603fd55634ffe33ce1ee42dff3f77fcdc12f39dea519fdd6251b2522c878d951c001b584190c69fda391c4a23c7f733df05386ccb52e8c4ca59f9258487401a4e27e3df3473da8ae6c490952db9c6a658300bc59eccbb0ac931bebd9d55f59c4e674ec165e26b3bd1a6604a82772c83ee9fe5199cd11d0037f82d79976fca84429f79211e8b0da0253a57618425979740f09fcf7554d3f07947e9e4861abd876841a37e21220de6b217ce18bc9e925fa5d8ba8a3a42b005f1f5d998647e7d623b3a645623266b32666712a217442346da3133d074fb1591f852b6de7aca0425c5d31c4e14b2e55c0fd9246141d9819e5b14464fb42735eec17596c470761ff6fc3c90a803563a2c9b0779b05866654b48e5d5044abd3fbf8f3fb4773aa376bd1244d6693f01fc51972912968771090c4c582f0f9c19434c15ce3a8e608385b77a1527285864437c587edf85af50c361c595a212792826830dec5e251464b62c82a6c1082e0606e8ad504d85ee431cf6697e511cf2c043988ba110db0c0a07575911ef8345cd06d05d1cd00ec0ee0b72d699feeb827caf5597f447fe6a4a2d872b5a32b171c1f2819b3937c924dad8b97b3d52c550b243fe3a8be52f582e1807aecfa41911c6229c312fa9775b98effb1a7a1ca86a8bdc96fe2313aa6623fbd7ee0232af2dfbca94698316c6c900ebd5751782128bf11155d41b8dfadf53a8ae13aed3ea0ea0784acfb5e0ed2f8efb85c03146b9d9d90c92d198f2471105612c33be6de13d08da83e2fa786b4b37104e5f4503ffff5972d8e920f096eb3cf72fb9b13b5b7388af15465767b91544bbe5f09d0ecf68955f821a6a1419a85e5ba1cb0e742549e7599e0d8e9701d48a8b6873fe98e486ae2797ce3d62d1e2ea44778fc1e92b296436630dc0787051c559bc4947efb2846dce263ebd6b44eb01d898bd80687e579dfd47b6c00659d241526463f785a8d3c0010f8ca1a6b5c0e6d065948426256372f8d1d851e2cf044de09160565c208248e5dce90ebf655846e005492b99ff68a9b519a2f3ceb64158dcb49eb64f4427ad29bcc678940cf32ed69cbe94cf2d1b21c7ea78ca12af0abee32f08fc26c6942d95c2965ff050787ac9dcd70c41384381efb22eec14e5708532cda496f516d799346bb3ba3a7288da83437e2e367416ac12bd4ec26d7ee76c2718c1e5caff0b09c723657dd54623ff4a7e08b1fe78059297c2e09950c4e1b2534f2d199a1bd2814bbd367eb45f91c39f69114f99522c20c4a57e7be0f41cae0acbd3d6cf9493bb5fb4b6904328fdfda45b8067eba2440f37ca0909fdec70af240c3bcab498f212232c74427a72da86515edd0b2f3c291d96f30dc1b95310d99fa41cf1be99c2a5e76ea192ef8c95ae0ec004b8414951b24bf616150e9e2cf85b71c55567096827434bace300d5de3a6b7b555993ff6cafcedf07e04066b8cdf82dd3c6b84c2fbf6b1e799cef4b8750f91273d8c3e3306ab9a25f376f0c7c7d2de9493c5208a80fd52790ac983cfdd67649c2bbd66e727c0f49aa03cba362e0107854a6e8d61cf6514823e570dac8f9c624797aadbd65833230140314228aad4491460cdb03588609c2148386d930e12b4d69ccc28c4b20d8a726be67dfdc0997e82f23b1d8d735a9ab08c5238678100ede2c52e8ee0ebe59a1e3810cb967422ea781079bf241f9b8d099d976efa23c025d9a1b15320ac53a454da7ea4419724c1fd27365c912d4cbd6b096cd14524f982d8fb3920a368184481890e2e3b6bc9964cd51e5d68a5f9be1fcfd82083b57e650e628152b293b24e285a63cb6ebe742b29a6988ac9e8394793a5fcf8fa49bd9d9a4fba859549cb462ef6c117fe163bcb14073ec4828de45ab60932ac2f0a2573267c2f1f9729b5706c3bc5ceb2fa372d9c016a3b4b44019f68cdfc0c96d531f9f15996b7f3a473675da26bd50b0ac79677820b093135e26bea3a638f24d2a22c6f48573d1020cafa5d096d7d3f49a5fba788209a540c9efdb8abc45d8858a461ab10b5b37141524be940cd0381d3d6622f72d8f32cbaf7861015204cef93492d4caf9864c645e054352461a1b933b12094e8e3d950640ad721726b729e9df5e0d30dbb60e5ddf5ce8a86ca3647cc7ad4128fab097facc6890cc9518066927a01a1d0aeaa1057ee046a525fe26258a2db16b94bc4b4afb74b20cdf30ec87fa37b9ae07282f41f9d81f115ad043c8757131a1a5165c5b788dad2cd056c901880136bcf3d3f119cf6c60a05caf3cfeacc09d9b7c6635561faf1f78e4ace95e1a806ae85e0a593d3f0abe27d2f93ab61da517b088aca542c9f0c3a846aa9b2c1c7a944bae76bd53c380dc55b0d097f7d477265e1da8fc71d0dca73444289c37b367dc04af7031201ab7880c9e1cf3aba6f9d04c999da37911656d70be16824c6e23e2bd515a556ccd14cde12884ebfc05c4fafaa87a466b6d2fd20c046cf4d42eaee3f76e5b044adfacbd5d480ba832b30a2ec360b7a383f077f6554a15be3cd619f465782cb13be8c1b1b1fd200d70dd10271c99920b57fe410a85647f21eb3c27d83050c09f6a7806560b724306cd74ea64fe110b0da4ab605f0281fdec041577c3318124d300b823943ee3a279370f96f807806c28b454fab577620519a77e7e7585c5bdde72cb773b348a9bafc659a067ffae0b5a5a53df6d1b0bdc1a4fc591b0dd6ea36d0528377a953446eecb1933855d26a7c2539514fb8b89e984e78d67135169fc0513ad4fcae3687d6b2eecbf253b0e0dd6101d39c10792dbef2f5fd4e4823d1e5f52c942cf3f3e544109cbe2c6bcf624d4c9822f6e7d3c8657c11d546dcfd58a5573909d4489e9174625ba8c5dc821547619046f875cdd311779ee5c2670636dc966f63ca9da242836c5941b4a0982667e5c404902cc50cef2e8ab866c401af99835770733520adeb91b4201676a449f29714798f4f8223f63a2b89f30aac1ff910b9d857aef2f31aca1b4c7ef7ebba3d6b11009752ceb52136e3d41f299b745780e5322667d8449ab4fb137946cfb8b9243b865445c5cb10b8fa842240d36013213875b6ca9776c450523828a8db29217eeb32c114ff586e81308b4e5cd8fab701dcbfd5ef4776fee23297060dc449f815747ff7ea1542deb16a20963e1995cf43ae04be1f1e15d528a02686ba1ac7de7f5c95249ba884646fd766a0bc97922032d5a0c5ad2fa743efaf458bc4d4501002517c6ecbd17185cc6d364375d86482954f4432eb70c9e87787914d6a555edc57c1ed95c2e91c281d25f1fe3867c338872e170d64939a346befd5267296b839beaaa80d7e518c297b52554987815c426584f829ab2aa4091016232d99f4e7135385f71e3baf6facc7ab1f6a51287384a4caf21889067da9f156a3abf0e3547f3ae0ef2d063da7954eed26394be80523e36817ce78763e4838967b1ef9257bb8cfd954d581485b99cbb91a4067dba59f157e99352141da26baec1b5f2cf375cbb6fbf24007fbb91af8308bae3beafbebf4c3c3ba4bb0a50e052082e3d92283366b0fcaae86371b1e83d41991b83ff3fd541171e3c4efdfb7cfdd67924e703cc41076b759bdeb0a14c00cc0da13d6740500c05269692117171b2cc48caf3217796d865da14ee2f3528a1d934fcda93dbe312179bc8fb003ec65af0096ac501603965d42de79081ee105da42e2817eda2094149b824580aa1b316a213ec0a4d4b09d00f2f97c4a696bed8cfe04977ab4c665e0ae6a84e696e027d8292165e749241418ec7a9ee71f149a838f163f951a09f47f41a797dcdc72c2d0a3e624ddd3374f329d216eff1df641df1ad45cad8b2073ef6657445f69517bf0e5864126a293441e586874b6b76e7436ef2e3fb6e11d66b9bd05aabe0f57d2a862617522cfeb954e4e498c113467f3a53c67e755e84b14f6b16bbaec0163f8a27ab8f83ff2a8e1fd9f1a7799a88c31339e4beb88fa637167d4bd9f3fc8e32186961c3196df34fc6882291eb23d5b06b54632784389e476a7b3a537365a5934248b5f67bc6db887f0c0d47a34b03dd24901fa7651a326435e73ea633d0399c6f0b3dd50737eef1d2378b06901d27bf8b3cd4fbe11bd5d65b447f8ae1af463efb68b8c07348879dc453ba91c9e8c0b2d870104435fb02f51f1ae02fa78ce63dc1806a400a3d4c862cecacf1a76f628bc939ffd2267fa6bc011e585b4911451ac0147e497370d712f38df6310311ad132f8a6d016424d5ef1434dbc8973c6efc742219750dca9aa4f88acc4cba73695c62e148c0909aab88539fc6c35f7a846f27b1af63f033dd4bb4c6b7eda56b6b79e42d92695ac8331173726c45c240d3b6f852d96eb262f7775179ea411b1a980b947d3df4f23a8fc420e9d97aea647c0c27f9f4bbf1a01e0c5e3a74c71e54f6ff6f0541b52a388e7c38e718ad4fe2fe8f4f32331972de92d0a393c7711ae239f98d063db04d56bac2162689e1deb902994a87a347dee72e709e4702bc790c49154be82101d843bbe33783ccde51927ebeb9404cfe7002e6f7269ad30507859fa2e34560ea32b2caa258eaa9f8e8a7ab2e73d7627986d437eeff7df69949cde6f56316c3f23399497804b6700d4db01cb05758779e0b6ab9a525314f72ec4a8051f36b4a8bf6ba2f722e3db89cbabb8f1ee4faccf8e67cb2a6216022d38c71d83e70e7c529703c6c0354bfdc7c258d59c7adf913cc7f08c08e73b4eb40c4410ba874ef078e2f6405a503b1090b043ee73b98ea0208995b398901c0307bc4db4b2b7ae745b096ae36c134c5b19611c49496c2e8f0ee356d29cce3f2acdf6f798c3c8384ab4ea5f992b5250491073bbfc4d5df19cd5e6607ff06bd67b8b5e3650534f6490737db3b07102188eaf1cd72f2153639aabc946f77512b933621227c9dead5dc795960714a252a94c64a9d175072068d70811695c07d9e275754b4a9af78f7f27abef1cfb9ec1bf2748e834c44cfb46cb49258c8bd62a45714a513ee2e1da2289ddc63487d6a53037d9ca2867ee3e6b7680d4f712481da9d22bdc0111c41aa8a3864e02cbb27225ee968a9e5e386f37661b41577ec5ef548f8acfdecbddb9e840046da6e8aeb4150e40a0ee666b162010d394e3dfaf09a6b3fc23d169b50a2afc808907b214c6b78ff68768c891cff797403d29eb42e21c5001005fea3b5827cb9fb0144c3f435dea2122ce1ccf76e9a3f2b48f56db9d57b960f27b817c2bd30b276c6f18d552bbd82cfcc91eaaa9871f42ddfa3336b313cf0b84cac29085dcebf297035430929a8374e229e2754ff01d2a1cba299ba0ef1fbc2ab896946132528bd9d737b5e3e04adcfe033ad906f1822f22e8de8eb963b09e99d739f4be29d2c9739d653a725ecbfdad63dc4fa05c298d3caf11040fee5cca73f0eea5cd55be8acd137bdb85de2a0caa16f8ce25cc8278b4dcfa9b017d52b32ef2450852980323f14b6bc3f25883e02539f7c776cea80801b1a48374f3402740dd7c714e8181a06bb8917643097359e01e011cd821c6ddd7cf1fe7262ba9a80d3dcaeb25924fd6353c9b6ce484e3db7739f1e3b65c57e98256d232ec68310f2c06176d88f84d122ab9d327c0d8aadf274164d6eb11d9102f9f21d7e81f8b688b15da29ce410ec044050238f7157f86ef7f945ef4863f1e52c7433ef58641084d1a807addc2f088ddc1a8a5625f3aaee0a64a41031f54cae332bf206ceae2a029f4adbcbfe8dd85467458cf10e02701735aa2f0274346590b21d5d3551c12c8cd7818ea2f69e480c8e6aaab81862ef4c1c368744eb375a54fb95d2ea8075699a47b9c18a5e8762976aee5df711f03b5cdbd91c3030025a4b97b137856a35980e9b88c7aa869e10c704f50548637cfbdc49ab9e2c564367d23f830c669515a5175a8e3f4b46ae5562258770ea05cf11584b5d02949386a6ad906ddce6858662d08c547357af9151f305647a0a6a020c27dc182eb66e4038897ac3c8c60fb0544ea66f9ad6254c067e2ea06ee934c8583ccd45fb51cffd98bafdb6f64bccc02d34e4c58f65d810ca8517645e393e0c23a7e49c021f1a8ec4a22be7c081dc5b229ba51ef3845d91b5d8526562b635dc77fc9a8e022ac0d8cfd193f8b3b933f6fe9622fea359f740d66dd3658ccb3c48e2b44d406148ad492b813277d2e0062c61fa1fc6f87dc0b1783519085c67176e9a6484939597038b1308c1faab6f9a5bdd75b3d72fa5ecd0ec956acd100c4060a9e835a674181252e6ca6ecf705792ae47b3b88d0c2870fb502547581fc332b7a6356a9a97e231b0f33f716a37da9bcc8eec84a762b386f3e198dda6f7a66770a5b02ce4845d84042fb68a3f7bae8f5f66f08a09048e873ad9aefadd5cc96105b85207dd98e12e4b9e77f250fca794d3ca63b12de52b37fe2d1eea5f53de6cc750b0ee346f926e85863619a39dcd1864385b28e90d9e7125242b0486a1625ff7e8cb210cdb541760c9dd201a2f37d029f280966f944759bef661d6a825d91f84bd11d015d13397d5946fb4abfc62ee5a001a9638c75094f71e95a4c3e74119f90895c18ff49370fd7807ff2a8abc642280307ad46df64dcec95d4979b161521d1aeb28294dbb3eba8ddaf9a6b32c145b2901bf8c318ae06890819319e769334e93a18590df15e6e782c72e7e2683bc9d79c1d90e40993968c3fbe8a4f4390fc9ddc30ae5a5f351d0aabb6aeedd0a3074708dc93450f4d6534e0fc769c03e72e328fe8dd875138db1afdfd9c7909c175596a1e7616a1fc4890fe3b8ae7bcc49145d09fbfe5e00441a508a6ef26474b36698fbcaab2c5c1d5fc145f2a83e647337d0853e179ad0c9e9125adf2554b254530e2d4923e7f899d447f40ac211173d66f924079e9b7befe1b2941cc077123ac42ec4ee63270b14bb7822a655067139ee6879b90ec5ae72b04344a8704c0855d099bed33bc86c70647f9aa08a744f1075060b6d2219cda897f69987e4c3a4caef72e7371a89de09eb9be891b31b032fee4acfdae6798295e9cfcafea39176a1dbf271bf059a1a081e93c32159c60d4feaa44c97d01212d23e1d05f2d9419691cdfdba8347816d3528f63dfc664aec54c29ca4283e0208e54e87f370a83c863d435a75922880c374fe8aeabed4040656812374078e503efb545edce2d2fe476b9661180604b039f414ae6323a7bd0433c10fe99f0ed7ffdff1d6e0adfb35e65b1657b64f03d447b5f30e911336e9c02fa5813c5cbf0d667d046e9479da33d756a48410e13d39861168ad99ee6d912e28d1790b57c38f459b82f8467a0f4ecf3839e9d5598cb4e1220795d371c866bd61c0828c65fcdecad051aad285b9de3b6b0ddf4f5b8391e51dc79d0137f6a1d33e2d2433fe9714f4e3cc99a17d2c2b44886920c0de74305892e186a19a81574e07bda9381dc3f4ae65dee5ebb8d6aadb2b329b5790fe7e1c61b43c0ebdacd59c19fae69c8339772e87805eda9e323d68df7d34285227c08f77237a0a1acf9dac64eb8a5e160cb1fec2ba61f1fc82760b84d2c26eaf57d52e3a9341bd37546ed215f45d9f0f91b5cedddd24853246a8c2a88a7d7550737b95e490a7453609f20b58efa24c9a657c42e4c01c2c2d6ea5715cce7ada6d98ccc53c24483e0e4a8ea11d7e62fff9f4c793ce75beeabaeb64c42fb6c391db0cd933cf3b7acb05f719516c9e51d4ac635051d9314fadafbecc386ed21c05814545dc82bc58399408345e295a74b673a26cadf040bf1a5dc4fd947826ba1f08b8f28b9c5403e5ee264bb0345a8e0807bec7ca075f65381d6ee73edca7cb8a49ceb9d584a51ef167cdeda33d04a1f7b4d8954604a5e3988a19ca3540989378828d7ebff0aa41e6e383794a486cb0069639c6f6b957f26b84c25cb5f4e1a2d9d8485af139012544afe4c24d15c2e18b12491670de9020abedc8b95f8c59c2a08a58358a06b55dafb2f18f2f478ff00694f80efbffb619043866c00cd2b17ca018de9dec742267a3c1ef0c8c52bb67ae19005471643becc30fb951729525a28ccda60518a79fec70d69d2e7c3b71b769c8551cf412129ba29a9883c2693ee0d41bba404969159092a4ca2ecd5de971e3246732afb86e4a8ab109bae7582092aef8a4a986fdca10ffb3f482f30f1cd284a6e64e439bbfdd2f4071384724be1da977e4d0fa3175a9fb0954db2e13bb9791a1f3e54704395592aeba9420dd4260d81ef38ea593b6f548bf5c16401f7c882be1a38ea6639e350f8c205524d8239eaf892463124ba031e1bd926c006c8e04121ba32c7db6af57948c7a2dcfc4ea3ab57571ef3128e76b7b43aa91973b8c7b0b080f8810f40cf419f5648d476a54f25548677b930b3787d1898f67ac16d8b6d82b000f0b52d3ab65d13e4c0737c8f6fa605c279eccb7c4cf1be0c79d20a921803b4e8afaaee5caa3e02384e10a170c3f7e47b6d6be6e97684184545c2834e0d2ff5a9d189c7202cfff01b7fa65b8cfbff3135136362f4958bc5e9ed60fb859fa5e8198cab86ca401fac41d3051f1b46f92364e411edcb85047c1a5c66581c7c2b7a9880f0950e995c9d7619c29fa9a791fb00ee6c87fda664e41c1a428340b569a7790eb89ae6262ef7e3a7e700e80a626fe3a210b29144efec620a1049f873cf7b3e08e3167dffa08e3c7276ae5b298b60f9a16209435c121a39b4a06912f6b9c74823ab6f5b64e9e2346dce65897ecea114d6be79109c0768f52b35ec759aace7af7e91291f758956e860b1952d6c0191caa76a4d378fdb1800b77460a923a45b314875b2ef424b58a324cecc7b478479d7e2fdd9944e344c9ef473f9e5519841372ccd1d3dd0badfec16a5fe8bab0685a5c8b6fe82d303f9202935755f3a49f477407d23c29a4dedb9f18813fdeb77f5d9604953dd6a89e6e497a38ee79e875d6f6691ba4405868ff11ea374fdd342ec8df9fe920d29cdc467809163986aa29de9127bd857dbfee4e6eecc9365024866473bb76d9c7570e9e27c9471ff300cf57d7707341efe7572e2fa5a6feb679f34cc6588c1438a93dacc25d15f8c4f40b2dc074cc0dfbdbf58f4d485915990c0bbe0b4faa1703433111e1ae063b040fd8567d331cf3d8b7fd0130ba80dbfa2e9e1512c21081282cf2c8bcfd519aa5151c755c64a967d22b5589de3a361a63b221cdfa3e962d2687f2049d01330b6ba0498d092074ac1b90bc1fcdf90365ede5e7d525cb7f608c7bd9dd51f554b5ef741174aa75005de052b905fc9da42a14f5fd8d42ae243065239eb6260202cd4866e1272ccb9fbd358d781c3749cf89b89ffd85075e5ac0b655e3752c94320f071dfb5976e6013732187a446a912177972b1a718388c0c80338e2468ba02b4b703b295c64f49e3adaa3ea8a4029a80edc37faf15895e1e9546d405b0b8a33635b9782a34b916f28aeb2a57c25810823fe1ec929845eda66364422744abd631a38aec4f5bf9b2e83dfe3d2432a53aba961f0850e0712e8d682d0b46d7604148048c14e78ca7eeb9d14940ceee9a7a2c863026a4d862512d96fd491b6c5672f16c56e0527068d4d08a1b6d5eb08f26cf2280626a55abce81e06a819d38a7f0ab2fbf4591b5ff649d83d0a80a3d0355d38f6bc1de271f0ffd0739d082e683a4e2e589638eb9dd0bb7653ff215d421121df3f57f11dace377f27094fddcff2b4e1598ad2a47004ae442b946013c5c648f5b0d5dc668c2e2b06e5f24c264012159c2666863d2d3f3f35cefe68f631cb932b2b9603f11334bc60e0a7721bbc28159b852bd10dc667fb71aa754e905b024c934c67b2c53d5e783ae257d3bedb5e51aa665c89e3120373832bdba4eec657659eb90275ee183a56ffa452eb079e4a52c22249993a95fd93ce0bd8c31653202d736ae3b604a61ee6df655d70c0494854eb46db5b2d88dfc1e1e97258fb876d08b0ecd1f275e11616b28baa7bbc0f3a1108b5826b397d8ca09879adb9791dff6859e4256c203730c4d4b53a7d076b1af03458a56d36b78f4d57230de6ee00d8e1885274405f23c5f13a4ed566fe397be4be2cce7dc5bb5395271da034e2e5341ea207f9b94d163e4136976efa2cd3b5a2e747bef9465d186d18d56a48ac909e098e4282452c7756a2ee93ea6178af4bf134f6cec7c7576a25ab8c403cf45aff1cf23244f72b2264004095c2e9fc626a46713101fd6c84754e843c13996ed36d4c354d340899ae5069c2466789675910d05dc42157ba76bd2c10c6cffd81fc3095cb33589edb162867b54fa954b70b70a6b1872dc3c5c4a24094e9c5acd989284ac6bcb6f6210189b7177111a139d63a32b577827701afea58cd093a5d0b144ed8555c975dca877bded2dbbe8f45eadf8003cdd3b76174fab1db6be6ab584f4879856eb39fe0e6624323ff98184971a491ee2be95191a3614307efd12d1230b0865c8eb21c3e4893d9af1e162847e03f767ce465dce6e4535417f57660bbc38ecae4d86ec78049c33bbf93346885dd101441d2a7d8bfc23790a2747e60ae9092fd25ad2bc2eefa89b9609a70402a642412bbde631474dcf29273e54bb9a6a2e725f39b883696e34cc955822560847b787552013ccc1cc66a5ab357f0c82748dd0a1eea36b560277b3ac30dfe588bf37d21481e2c8c378e84e06ff6f1575e39fbe558db6ec5bdd813c73d0e43d9231f86f6ab79fe588abb73d13a56f7d71608ca9ef1f8f374616db46d875a519daf96d3052f137cb55f658c8830bc78c13ffc9b48c667a1abaf969a431593658f774961c3619a6011c299e3c02f0cb817e4ce4ca3c145d357e746c71a6c88288aed9073d38d0a850db61be8da1288fa53044c1af813917c5f0ad4ec6ba285ff281b379494b2bab04a9ec69409e2a8ebf61dbf0e0720c058248927f9462ec6d96e02660730a043d38b908f747cb3d90df3b5023312f63d1d43fa16f98fdfb0c86f9b2934b0108760ab1e2b3eb10771eed5a0ddd702aa09c446b1dd9ff1b262d7338e0c29571bd2c826f6f3bb551632d78ae5e673f5b612b5acb31dc3346e92b56f9b6e2fc0b3da39ff44bf4e4b95634f86ac85aef565d86f35b773a134ad626f2d70c6c4f69a04843736977d0d6093555b7530aca48f80c1f169193a3f6d0bff858186e8a2a9f38113a58aa2f3916c0941e09bc7976bceb2c4888fa50c5a9b309af07178e2c38fb6212c2078a518858ff8346c25bb9067d9a0b751249d367a55feac7790b1b7ef8fb5411e87018793352450d70e87b0748072841232d853dd56b6e9bc91e12c13a5c65e11ea3185e45ce56f152dd68a85f152878d2b43aa4c7947977400c4e19ef6f1a148d374da5fea4db92e39522d0674a72deed6e8c5e30131406983857c5ae3321f023763731c942db6c347bfa66175b90a159a5cd3ab715f35ba6e035d0dcf5ee52083056be687724160538e843d0c7b35f2526a758e540ed39410c1e5b4bf4b1be66d708a36e2a1eeec723acdafc8b8406c4b462527e270547ed9462cc6ff1223ebc3ba279e17c8062e2b098780abde0f137a608a2da4b4a5da6592f0f6b344aabed067b1860a085822daac1a37ee7aa61a9d68421ecbeed59c08631ac74825993f4a79a3b17bbbd9bb0b9b4f669e1ea44ad71036d72ff17cc6f2b02b2cbbe2dfb548438a765bb645ee695f38e8d2fa3906d032d27e05020d2d4bb420220047e568f139f64f39b9412503da9b7d79bddd3df070222041f783abcaf02d7d3fdfd3b38ce874c6d72593702951b89de31c731f200d338a47cea10c36065991699975bd7d68342d287bafc60253ae7a28dd9d963335a00acb37d1e013d460516baba42007349b1bd5850a21d096034f4543721085c0a10b6811f7372f13987107e8775ef3633f45847751503680d1c80c5886b2ec02b26a501e24707a53a9c9df92bf13aea616e45f553767bf73acf30533e7aeda85e54a66e21863c3d50146396349ab4c9b53cc9c95c0d59d98d18b012d1b3ed5d279762dd15b8007b64b30d43345f0f6b5b11a819d78cf39650776e1ac2d732fb0837367b161005ad4346c48de0e2ad1a120d517a9d013e892da2f5a5396b7d0024f15efede263ebe5daa740804f4eb3d30a037440bbe2269627affe023969a337ddaf127376523612e5b34f4646f465654e842c694116c9ab3da6f233dddd41e0e91c39aeb2b0159384ce8380f5cdf92d3850322d0884450a280a0bae1efd454f4bc9ea463ab64a65de131c9880103b4a0c8f8ce19b7203579fcc072aecfd68f08dfdc6459854a402810912502a42d0643745582a88248e235a11ee5662d6e7fd41c304c7109e32a3074c3b0e5033214887b137f7a86d3de5b7e6902a967fea3e5613993942850a246e2541e8298fb572b222cc10e0e0775ce4112ffd20d3a8502ae60d1b89d4745311dd4dfecd205e15fc95cd0bb938b9528561f39ed2a7f943d13f750fed1c71f27b5615c6ae2d35709f0a13b9ac1a2da92e872ef7437e3c3786f2fd13bb5622b66decc6469c7b4dca8cd7da454da972f6e1c5fa2a68bcfea56934bed9f14a3430986efdc2e2e4360cbc566ee83bbbfbad14757489d14b3c672b14178861b144032f798ee172dd27ccca792884093169af32a632ca6eb9cdf19278c2ea8dd08a52bd05be960a9aa3629d82daa298fe2980b17f82ae97f7aaa36b71539bdcd637a688e61576c57cede707c42b45e5a02b8d395bebcd7b68addbd2aa64ca0774e8b4dc00634d64fd4f40d1907802b60e243794a2bf4612c7256bc94385d1afe84302ebe6fa393f0973797c0480bfb03cc12e6645c04960fa1cc324ec9709492ab4c4b574c05cb8771264421d8f94837df319743f58a533b35534836979f69676d5644b4a34cf24a0ce2d681465d6687b4818886a68eae9e939a533a034273d42e9f40b72c800bd44dff07509e9ab3092abb8a418f3752cf0c3c2f691877dbc9e9812420590934bd67135172586f78911ae71707f1679be574a26904b92b143a1bed137220020a9f86daef9c306ba18e9c06b4b8aa932fbf2158d61e69ba7f03bdf2660c6f441cf559597676588a6163feca583945e1fd99ef3b9bfdb3fb75298ce521facdba126c038ff957ab0d6fc20d36bf45def9ea4257c75caad164d7b363e054606bd06809b546fa9363f87e78adc47282d6b65acda76a19f7dcce6e2054e34a7875c92a064e3e30664c1b269e6765035b303526e39d1dccf18a4ea8ba10d30c6c3174822b7df01ba9a271642ee512b70743aba7247693c5b90cb76490a7345a2f0c85b95b11a54de11fc67fc1fb0edb7de4dbe114080327f3daa82483122d00f3ffbfc239837c326826b14653e416200be617d900655d99354f85ed7b373f216e03a129c071c90742f367e1655169d37dca9398fc3e810f9ac3cda0cff3920fe7a73e90b30794e59be4f1331942813bf1956a3821bad58f785c715d352d0a521636ccd89267bd6868776358f1d796ef9045ba966a994f41d5fc5429c10aff19feee5cb1d37e4a1eb831b47ca93856409d9a1966f5b6c51ad8b318211999f82538c000e11cba45a8658db758fa77c04481625ce9c180cb7a6a50eaab53d4e226230869342ac99a7143aa03ceb6136eb03ca44df7ae2430469d9e2ee009a93a5e26ffa2c583ca0dbd446e8dff0e2039eeeb682e7dc925ebae8a54f1816448cc6d5147fe7b7758b6b0390d813572b33bbe022ab21de2ec70f39e18c787b336235e16b357c9f22179570f2de80cbe8db10603ccb5765f67dfabe7c4b2abf30c573493e1f9858082a6b4df5e05b2752a51c30a2562f3e96f3ee085d2a2916d0949388ce151bdf1bad079f414611e360993a9e916a7ee4aaa1fc23752fdd0d5d1875440a3a07f6d30f119f194323e773f7812e594dde4d9107122f358f0440afeb8124130c6b9ff3f6b6ecb800ee658c9e12b44457d8cadf914d615361b017cdd4d2bf06a706adbd428f5468d74b2d67aa0aafe2d2759d09e34430b02fa014eb1c33e526d05188dbff1deefa70b754daf2daea5cf13514ca9fea56483046c9dec5148cb5a47832d64840c61a857f63ecc92f985c782f94b1b786c7b16c2ead5e6af14770cd97ed8291520cb426ec9bdcc895e139a2806106a0bd6b67d8baca9ec9d28f239e78091c96a793bcf0e4f5daba1a3c767cbfb216643060b9c0318c78a181dde5a4b4b7e4fa60b1a1b54702dbf6eb4848a316ff52d79012fa42e9314a062128d57632c701f8d539734e03891dd3a456d59782aaa6e67e8fb3e76abcf311227a094fb9eaf2b730028090066539641741bb5999039bd98073ae3328a14809b704a5b7a328189cc8de54643fad92f769c347e6387a7c9c553763c058c30367a53b1eb0f845fbb9598a3eeb0b41c3d1280f5feddc9cffa6e0a859754e215ef8d715c0166c594267d61aa37bc26d7aed419997759e5e579208a45887e3354134050bd00776c030cf045d7bf5f04c141de5622fb58bcdb636743ef511fa707fd0c42275d6585adef8078fa2da9a8896423a80a1caa3002b8935782c1927315750a2e120739f939b7b380420b5a1057a84278fb6d22e18de88d9ca4cad7f119d61a6f3adb483c39551ed7fb9ecf404e16bd187f8d7454a945a78be3cff89f178c286880ac6449fdfb4975e7cbca8cd8d0a06edd7830b0404d0343cd5ba47b7c606e4fd5aee3bea1a1f64fbae3e087e0b1f2495967e509d29bec501996890b2eff7869ca703d4ad1751e59c045ee4fa7cc5dd13e7ed00ea257c529cfc4a230ec858b5735f0e0eda1a426498eaa4b73bf2f78350331381a210a798867ea0cc008cde16d5c051e5be1f24f6248fd47c006454bbef0b7fd607f914c7af5e61a8a5c509247a3f73d75a3941162637845886db88bdc6e4ba637f80dc0dc0c2098327ea2045087fd09f54e51896debf674e09a568bab89fe45a1e802e04019562743a826991d3920e2b7b2267cc48dba50de1f9f8ef8cb34eb6746c9c03e957535b935291b484fb6fe0816ebd579974b1e4e2e2f0f0ec4750377e68ebefe2f32b188802cda71c1bf8fab12d2bc48b8b1861969c4c294ecc184d7e681cc4a36f209284634bc1d0d8bb39266b0f012f266bdfc741ed93b0c632a9b54a7797dc5cac8b5d1f6af5c229890c1364bcf15f472fb50dc22d71a7d606cc21874ca2307da8bbbe2fb5e5ad47c0b0206e94b3d0e6e9b44e828d636448e5857dd51491f25057f8bead4ed08b80720a2ef6bd64ab9faa3b730d7502c50bda7850ef9d172ff9eccb2912d735057deecffcb75c7f3c7d75d7b4a067940cf5f4fe21e5bda0064b5c7bba163e04471fd75caae4d6b98a347de24d438eb8ee869ad57f4bbafdc3dd8cedd512ea54d2e0c18a72e7b1163aa29bce1abd0a2ef2aeaa3fb02fd8a038195784fcfbb63680fc18ec22b72e1cb1dbb154aa64d0cede2e60ba2a320d86881a8bfae7a18640c1c874a9eeefa613496a195108131692c886c661fe5331caecb17bcafa4eb14357575ff60d6a3d882b27dd6246047f53b248aef137acbcc68a3988c87d4ed906960e65669757fdf08bf19519065b46d555a29f3d95dcbadde2ed525530dd74231ac3cba945c84385e45482e7766dcd4a9a478c24549fd41a30233c7cae1943003dfd4f9885e55746658bc58f1e6b859262d6efcc24b3af26e0d8bd33ed1cc4958f105936b1ba1a6ad76f69207d28c5bc569f10c3c9500809c7828e4cce318aa6bb3131b3fdb60bf43df0a3d1f388810821e7b5147ae35db5588bbceb2936e681db0a48105875a6c687db6724b2f8bbb9e8b906e3af63e96e112244be69e2e006caa594a6be285cba3c509a4787d1a2607017b01e9f15562e036a6b99e95837a3c54df9730827be96fe16bf0be2b18b73e9a188e1d66c0fd9822ecd989ea5b8a01ec24972d36cdcbd0150c00aa367586b274d0521af7e1e2522c6a56131999451e1c5a17aeb858d0a9899f033fc3686b665bd2843344cdd2d9a4eae994d3d72d219de57968e73e1de42c0ce779aff466d1cc61243ec95eabc2427cf6efe3fe4c7183e71e605de30053f36636057821ed5ab6e6557364e139ff6c5d2c7b584b6163f0db2fd413301635921145269e35921d3b578ad9735b34ccc8cbdab6aa10ad651c2ee651389256da3eaf29fb03535251fd7f6d3a2247e2d32630c06d4e7a75694961ccbcea4c00dd130c479ae01d249319d63fe3e623c7f4d1d385564d7ca30434b50202185e01ac8aaaa8a83b8d57397687fc96730322ce0954d2c04df7bf163da23ae6912c315503b016f7741bf986af83b330644035f11cabaadebca8f9397ab3b62d64619fdb10f1809a20bdf6f867de858c40c67a7510b04fde3de0923bcf088528e3a362a33b234ecf0550b57f4dd229c71657fb528f28fdfae44d0e6ae6cc77e983962b5781ed497e3d2e4f14e1c3e94a842ada84d98b554738088d2b96a9d504f11eb6a535a64621791569a6229c06db658b34027cad8ba9f155a306afa3d6fe9034ba24b76b810a60dc6197ec4228b2f183f4b2f97cde3d7cc73b4a21cd97af4535664ad75823167fde5003b22a41a6779306574469be9e9a126a210b03c8e4b0eafb15a2decde7d9597a27bcce2fdafd4881124a3c7179413e980466b0a9ff281fd19a4a747d17b756dd399a4a218d7ff798ea03dce21bb0a5864c341952f6275624b00ef0c0bd15c0bd056d1609c6e0760b69eb6950891f0cdc358882dad7d7886bac7c0e6cb8c5d11f3e8af9e79cdb92064a05ee7639dfe4bc06ec40a18e847c1524811da700130359c2c380409efdeb7892a4d669a43dcd9e459973e1d54b4a11e66b5498206468f1e3eb43b84f5f99a9e610d3b70f6d34843d826b2d5ab0ecc05700c6249126ba5f32252d2e28587697fb0b4e49358ddbc47228384a8d926a7b7a7cefdc2508fc93faee81940f735b87ebd2bf00891683ad172a09785171a0725335c61dc1ad2639c6de17482330ada73ca570de5fddc0943182ae018d2a64410049efe4a4479da0e3a46f4dc404b87b70c53b6c4eab299f44aac0c33a9737ce4e828dce7aa8416d4bc7b6cb23e82b6c178759d7a60a600a2d7d50e8a3e9ca5c44fb329babf66b6c11df509da8f5ffa3b5b0ad76abe7f3d70cb1c9627ad5fa407f39f687640c39833506e2c81d872d5ce12be53679c03eba1b2ec37df8b3e427c971e8811aabf3f4b563ebefe4f39548ac3801c4ad0b0f3b4919b68440e211fcf506920344354b2bb5e850f0d2e27950b8d2e8ad80e7757b25296cd311b6f7f3ce0ad86e60ed43176c9b8ff823756ea9817bbbe329530bcf0959a139a7951d004872bdb1a34d673e7591ce4637099df33ac8468d91acf2b75d40defc89bd9fd3fcfd5106cf37f8b92cc726e36c9d044a010855b3eb599da4394bf6c18e750d3fbad65e51828f337f247728da185937ebb11181ad39bbed096b17789fef21102970154c5c59f99e16a5ccf49f9022651747188c7502f5a1d91fb3c297d7f60604d18d61b058e988e7c4de181d1dfa6cda7ef2078aae8a88502184f1f6a4fa3ff31339c8a38337c5e5c182fb39f44cea5646c6d3aeed529e8a03cab9d246e5e83d5017c09e4008a33f317331cdd510fa2de16b113d56ef9ba24d0c2acd211e112f52a4d4f527b77c15238a5cfb03dda27c08b0c6c0fd22a4306a7103e424206b007327801d66ba43a7e4271b833b8436671dcfa99468953dae63dd5e3bc2f4af4a0dc32cef588c43fa617cb27a2adb395d3c163e8d2c9c5b0358304b706032f755f3520b3eb4b85fb4605a0a007b7eb4ad2deaecea7a509e433430c96abfc29968d2d0f73f19f1e389d2f1232714fe66745789214cb6f4d5521e7164c3b036e30d56d84e896e0eba8ffe8baec1936d843636221b076e0d85072e797bd113af0a040171b6e03cd469baf1a802285edf5388d52874e73532230d09012da4294454129293b98b1b08c87727e247eb6a365728b0f0c8bcc4a5adc41ab5470414dde3dba68569b4b39943e4f5a076666a848f89e4d93b9a9826d66f15382d85cf234201cfe9494df16928f30c3afef20bd5ebb2cb44cc057c13fb656e0b001e70b2950a23dd849a0d4cceefc78b2576a88805fb44ac4b1c71537f4b45c3c695d028b203e5949db544780e163a7454a8dac64d09a4bc6d2e9ed101166bb546c11ef228fa9425dfd98bba143e51ae5fe997d575faeeb9ebc266b406ea1fa9668204c184e40c0495f71ef4f59c3bcdd73eece9afb16b17242c59a4f7e94075d87e2ebdc68ae800ec42f149e041f0913d8c30709cfbd84f574dce21a3b36c16c68c75ae5f8ad0fd7d98367473b4923abea07f3088e73480dc0cd428e563552233bec9e2eb451b0120d73a1bcafc1003e67d2130919e376737917aba977b48f0021325d0d34b464cd3f0fbd47f53ab29b275190071f8effd4828093448e430767c9fbf52fd2923cf68c423688fddc4c2b56cae90d2cb70e3c5e608be5b013e07bf9076cb0f018bf8f56eba0917bfe21d993c5c3d56c67727cf99d69e45af45b58bf41c8cc05ad7561a6d65fb7083fc8044c0a1b334273892eab4827766f81b5c22f64c8e5dca60ad056d96e772982f61aa592e52110900b680a4c70efb430c89dddcdd69709ce613b794c75c29c459f813fe46dbe582247993ffed8d20b86403b815edcb7a17282a4daf64e2cd72a546c7362ac7685798da163afdd39a0323d771438ff6e77e947634b5c30bc5c01450d8801fcd21fbee234c82fab6803e0483d49ef1d1b7e190cbff90ddc81b9e806887b8c057d484dec5db472357c57d615a3f2298491b55d0850a593cf6a8f08c144fb52e762583d53d659056af6d2a4ea2bb21a9f5e7d9641cad83679ec4a93111cbdb33bc35130b627d949c3e2a651db1c1d03cd415c803d6ed48638cae0da261b97c833b1add7cbc89455c19c897669ff61dcbbcb36d677ce598772372c089be564a58b3bdd166b8a45a961c030b60210ffa4c19cb19ab447eb658547630daf1f6a63fa0810a28e5bfec3184685171714a8d8edec15eecaa19e966c528a2fb1ed7417bccbf2132bf566f94446a064cdf782de59c2c5b2ecb73a73d0c1df2bfc508e5a4e046c09af4e2cf95fb57de0dc1d2250dce5f969577a12d412968fd88d36b661d397f0e92e24b17198d4f9f0dcd231906d8c390f5945adc4dcccba8e7b224d4a8526e557f908a2be16518a83e4b1e47662f9c7f71992551f8e8d1972998fceea3e7c269e64840bd481d99f903e2d7b636498d4a6aa56d919703261a15c9ea6120e51c9db1fa062072b833815b596b37a3e85d948e7103bb2ea385748e5c9ae7ae9a312a1c2b2b79f76804ba6e4ef91aabf7a9992411def9cdd8c061a380bcc618b55cb73faf503c6c565c634f8d57145aeed83fc0aae7a0866c4f3e305f601bc15d65297e51af41f677ff9b2d2f1d4a5be114688d007cc88c276ac9233e770992de412d37c20aa773f7cd4b5fd36341817494fc12b4dccc0c470a67c21c0095df670f4fc397db8ea473fc3e0c18f6759140de4f7a28ec9078c6d4bb87312b4e456b24602f26977ab27eb061305a0c8090631455f7a47fa820b2e76c7960dcbe8caa6dcb81cb797b4e8646b62b7dc5c0ceba152574dea8e0f5d20c8b2b20ee646567dba47acdd42a129f05ee6b2e6561bcbb4f7115513e6733c7a8c1709f867204e7d0d981f8face9b2a8dfb266a0fc84a6c66b88dd4c3370bc4cfc0af4224bdd901fba68fa3c50a544670a25cfa276556c152c291b0d9506b567997c1411cc2457a5da629ffc26693f1a7c504efb2552f2a13c3f53d4193fc8fd58971bd22dd9e6e251d3d89c00c08d2dffc33f520df90554946efa9c02f3c6c253ffaa4c81d164858c4fd93020b6231554c32be3e94c1c9ba54cc98a1155bc1d7544e4a1573c4b5746adf96861732077ba46e2b63e9676367060cfc4f946dbc72e2a2c5efec1e57eef39a2bb13a63941eae32932724dd80763e04149b3d961fa187faf2dffc4fe152fcd36e1dbdd8ca17ce156b163e75e071e66022d65f170932b944c5787eb6dd4c0cead674bfb08421dd34e2528fc30a8efc4f7bb1e86fdc0880d3b0ccd5ef5236a794fbd9b8c6289d8d739e301078abe1903ea4a9b1c61a434c2a1a99bd0e7d04fb3f7e10d7a5f5a80349875dd4dcff914c55ed9c0fea921798a6cc2708ecc1119507974939fb9de6460f4dba8172e6f538ee904ac6be13944746e7ef7820a9559895407368165cd3b60050abcb9ea783c3d5217dcb82d6bb9ae7d2b5fb1a4794ab56376a6fc3c504920ec634edbe9019c6f1080b83ed46097c0e34285e57b78c4305c07f8aa1648a931de0ec1134b4e7032c5ac323bfa373d8beca2f21494d87c92fc523b345dfe3ff64648eef664f7264e45a9f9083f6b65745b3a49596ab5aadb69b7a780a43bfe4277e3fb495d978c693014e6a519d6909659c2ed9f50e4d0dcadb63dff9d01de8275692f456b71368c790213463917ef249e3fa018234618b59372dd5ed505ecd213041ff7e3b3f32f40c6e95cf26e640d95fa70833aee94da6031a4a7efa217f19a082630bbbadee45b9cd2bacfdf131ecda26ac9450ed1e725d750668edf03b1090f1bbb6d071ae6a5832f2565bb0bc86a88227e73ada76918c5b6141bf2b9273b6c1db8d87fc6ac20ce6b5b825ee2979d88a111fea670ed076ed920a9d275714d46015382a7d6574e94a913a974e8c205fe7f25f66c654e5fcc6afd850056d3a66fdfbb3f95475aa4f1538755690f5bbfbb351b84e966ae17d9e584121c88830a5152630ed05b5a23d7c03049098bcf7478d8ded12db1838bd56b153e449a64e941ce4d44dd89ab2935b391f482966c9dd48f0530549889bbbf01cee7fb4a25b382b8e37668defdccf0a50c25bcb1456716cf7cac61379da7a2f351d50faac2606421f458827fccfede890bf271c029cac75ff3dd1493dfc52d72fc94c3291456e8888c84282c67f15f7a728a95113ca384bf2d6b803dc1bfcc8a769fa0aa635bed21229387d3618c739b1d46904e6c9dabbc8b7d0e98c319711623561e01c56902719442c41d43dc6e09eaf50fc529838010d76114350ac3a32f3a4ec0b5c722bf6065529b8802384e068f6d65e842d0e97e58aadf8fa5978aca74afacf3b22745db8bfb9412974a8adcb9d49985677a5cb4b31536d2b79b6c91e4330e9650aaa41490ef69b945bc47c8eb83d02d43606ed81bbabb73b4ea6a4732b16924e71b3973a9c32c0e52e1c03a69dcdf828eb8b00b4650b7aad1ecd162ca1913ace3d67d010190f0e1ad3682e9d6d7985eea8eb592454f0f3d69ece86d1f5ad8b8805b44c205cbc2ee5956f25119abe781ac54fd2ee97c8857e4b9c4734b0444c7760fe5714470934300876f926636966dbf3fb6a247a8f04214122e0b190e308682d3f495a53ccf97474692d574dfecc3fb74cf1bdb444dc8f4731661ded65ffd74b173b9304b356b6c1ce516b94f32ede6717f9cb00d7e0cef202004fb7f8b0c60c1bd094a491f077dcd78908e8f6642c3e656c961917df7bf277abe5516bb928568c234c060584b879d91dcb1c41906c4c7caa0999c55e8e1d1926eb8fea984142116e11585ebe5d4fc11623236f887495687fc15964d60945233b50e598d1ce0581d928b2eb62acdcbbd9aec5fe33cb71613a326a8a3402a045784acf6bd65000df25d3aa4c7d60bfa86322aa71ab30806221ceff560ef9b181fa1fe75abfb45144ad1e5439a3ccdef790bb6f72667281d4c0b2612e6ee4f9e403302ff40abf58d6e4f9363f678bf3ff7fcbfd070e41016bdfea77996f743e87ca56eac7f75c093e6ef78661ed102da48a7435ed25fa58ef7da5b7fa88631d466d48bf229d272bd2bb9bc3918699e380a3a5101f0169206172901c7413ac970cd0c6f50b374002cbca448515b404458a385819b541f8d27b5362e15e26924215c0acb58c37473e446fb3b0058f0d0ef22773acfebc12e0be28ac8aeb263401a34682e71dc27f3818ea2736ccbe7d4ef3c3aeb7072df3be2eff97ece466ca0cd83016d6fea689356705e22db37b9eb44eef81fa24a2c872dbec15520b432a29a3f9bbd8a293cb5893275ff3b3266b66ddb1ed1598fd1d475bbba2e80d9b9997a9d7ceb17ae7843df09aaf84263a32d456c7d6fc4039ff9d11a2b8b5d28a8e3572e4bc5d85ccf96866f72666f64dec8609879bc4c5631a4a131b9c10cd904cb8f6eb6502a4472a349d4c49928a285167f037e0cd7c2a3b9473c057215a2f4b400c7fcd25f6e2591e28568a224b066eecc6c160701e0cbf833ccaf2c2927bf9f76dbd1556b988815aa9be77223671f2ad347a9c812f7aecb4de41646f3a184543ab59f130a8f79b099b6b6c7709f49b24188c3ad9cacc0fb81a2a2aa8bf5adf2956885c61baf6f26cb6e73ad82509fdb85389f4a46a27dcfa20049a4cde0495524df0abb4afb05109d80b45ca85574c78cfe79146a2af304573db7d3a2b30484651ef2078c7b4a76a82e68e636e52a241184f4aa6ba968b9bec26a99e0b8e3c764096af3bd1ac1d172eb4d7d396b7303ef42eec05c9c9bb79cab5da35d223407431345e9146b04421f8e3c088453cae5d9cc0786e3addc52b2fa844b57f522dfdde157a0d4777f068054332aaaeaa9ccaba27fd8915516ba33e0305ea6ca891f40d512f8a2760d30b06742a3626c4a4393cd1c62eee30d9561b2b3433c6341a045a84cb9bf0138f0e8e37c743ff792f24cf9bac2ff62062cb3c2cbec34b10147539a35ec06774342a3eeac8b523dc48696df030f12bb3c66aad5226cbd1cd2377b727cb160a8efc4b3d712bcd1faa5a0c957a4a88e1d062880caee58306fe5d6bc4b69dc8566185248c8c1a0a5322d4c46335829f44a451c23c45b8d0156f10df6ed288fad9493231cdade0ff6168fdc729d8ff9b54a140a2e3b6878efbbed89cde070dcc4d9e8e603001ea9a0877962f741462f43a78c2715b8c194442eeaeac4d81ebe7eb11b211faa28e1a9ef8a14042b337303fac7031c05b190be873a7aadbf661ba8195061acdddc6f45a243e717f160eba2989d60b17e1a49c58dd01b5e2c02cb05e073e35c4b1e98b93889cb047e06ede8b1ab8374a5dbcea9b9be0437b16be85b4a33640412158bfe45fd49ba21bef196f3e646e5f58796d0b6da3a18433de101ed7f8539120caee7f3cd1105ecab1d073c322d47d886d9f67a06b502f574b70a13b80399c2dcd2adcba8c917371b5e77572913bb02b9248382d2424c047f93cb745e213b58e91f69fd1458a626f3c9f331a10f6515fbc761098050e8b43d45ea828e968e8ce22df0571e66145a5e61e71eb01dfce4c820582ace89eccb0b5bea66a233210f1597217c070502296bd7900a00796532ba5f8e482447eb5739d01c25fd665a5f77c954ee49f166ad1951093f91b3993ffe420ecc68cc51f513467d823f466cd8a1031e4fae33bbafc745707b2bed0eab20a23d52ac757c32e7929a6f55b0899c1e9eab4d776d21c1baa041fd7450785a2424c8695d702474f980df2e37804ff3fb178ab7408a4ce3ff4cd430fac7610345080b78e955fe93af0b05ee4b120cf6973ecc1dd5acd390fc0c3f1924d4204aee972e1a49857db0ddbda9ee484016569c65df95ecaf743b12a42ae564588d0230484915f51fec90ec5dfddadf32ab620cf79b6fe680076a9fa710d9ccfb8b043c3a893c75737f3690b63c94af921d05fe7aa14bccc71eb745a8401ee296abd89015d3eb0b42fc24ebb069bc88d4b3c73f106ceb4b29168901bf3fc66accc47419141d1555779e7416bcb292da34aea560b9a58c2e33ee574f6097f0ae8565b577c463f6e44968276ba05216d6316776734d57e313fc40ee7aac2bd27fd974801b3c7bd530b8b3317d7dee185670f13b93d49b51fb826c5935df11ae0df3125977292f6fdf0418332542b87cc1b2377bd4f2dd47648e328e777146dec2412a2fcb45ec35669a5068970a348d2fa59a337481f82771c716d2cb39d36fa4ea27ec52ef95acb3d3517385ec64bacaf1762cae7813c175918529b65143ca90ea72196fb10fdd11eaef1a18617345aee5fd496265a472ec22ac2a5d5971c628f217709aff55a056c226fc6f41b4e96946b1f882f9b648c810e6b5f214eb87eb10a2a41159b96bfe03ca5045ba972e20b430cd40650fb8398c7e8f6f5acc654376e93c24424337c7884bf5bed3ad871b41f8614a7635fda8d24d7f04c564c6d196fee6a4c64cdf8d77be2cbf7793c396b3579185fc0540e43a19f68e0a8e0c8ecdb549abc90ae02fa4e3dc38ee625845230d073781d1179043b80fd5c38fdf23bffa9019df46774bb0593cbcf57f3f198631d7007bcef398c7759ef50371fc7350afa7fca5dabf45efb815b23e21ae6fa71941208be8400d637f292bb595b2b2cd7a2a51ba1f90ce9984bdc2b967786fe6faec3a3e345b3be993eac8f083a31953bdc510c984b84aaeadcf13b53af50fd3c9c366f7f0bd836a8fcc42bc3ff2d5141a13ace5ded69ef067f24be9f51383e1e269d269dc15115036233453d22b673cb8b2d7440aa931c372cbac9c3fcb83c305070acf01394b4363466333bdb453b5ef17429043ea0e6568b6c8c13ca82ae43a6f05a928cfd0d319b5a8e47c9e2a8a05f6989f5b488392bc7d6c4f0f8eb21285669bc075d7533e85d4982877d5cd4d1dac713c3f8e01d0ee406396bafc0b04d24808c7ec153d7533f8829f4b53f23116ce94e1d0b9f3ef14321e2c8cb4670372eb1f23712be6f037ef4101644bb3b3e856b608637f9b657b4cc0c865be51732fef2dc7cedb02acae6d51246db1a0074c85182ded330ce75e3accf084fa7dc5c0ce3121a3eb3d25a8221d761f803bd2a80112cb7da1baa636e2b276b5baff80b9e47c8539cadd00804cfc50dec1611db56441ab6c9aee1fdb1c996a0e44438073515a8737b28a58b7d538bfbbcfde2e6c6f18983e528020dbd4c2bccaca07e2c4c3f02c0879ed908f5e8f90c07c1ffdd779c217597df6915a008eb05a041cf5bc881cd6b82979efc15c7acb30202b5fc35b1e188288d8b3330f07640029ec718b21dae18e2809fd1e27e76fcbd303d0bae101ca3fa6ebf0b07e613236ee8b26cd6b9ed832a55b643b5c5fb00808d9ea8d740ad8e0ac826d8d6200ab8839999720e7b00bc2305b2e057f46f1dc0548c610d82d1d0f1ed97242463423ea4fb9b55ef264960219ab5731466c08c43bc96685ee25fa88df31ed084eeec6cb6d7dd5e14fe9e50cf47c8f9ad80a2fe730bdc7e75fb73dc0e25a68e9736388dc9a70e529a54aac85f39b1c39ec397e29fd15f17784a5fb9f3a841832b113c8a4e77a00f63e4a4616a44325aeac6faf247b122d12d370f3d3043635fa2dcc1225294e5650dd0575246e0959acee20625daf95bac508c7d48c4dffd9c756f17f150b9f72d62a9abd4accbd257309e3f36dd3e66fecdb459c478ab7dbd3d0ea0e7370c520ab2089c47ad6dcd85f55a15c6ff1f83df66ee71e115c2c05d8fae40d7c997c967c132a03452fd95e20193163b34faab996c30b48b6c8b686c34a01adf7816f835760077aa2cdc6180fb3e8e91a08fb2cee7d2f5bf598e3de4aad3889bff2ca53bbe870f3fa91986c45d0afe461652a71b0781351ad0305573474c3b49333d26271443be4f778191b6117805d8b8faa104aa98d967ecc7bfcc598527ea135f4d7376056c176d3ad8e36214f429a89cd18036f1ebc83a3a211ea569e88937371c15718f91ffc6ecda3708d76177f1b01317c47a85ade0e77f6fad9ce43f14d5673cc0b52d3e3a8309d533e3d2457de1b0148d2083862a044bd98aab6f7853f7025919be90570b26c6e59ee090751a126a26934e9f94bc53ca3f5cbeb1c10c915d14c40218caaa9ae7051117e9cfdc1946a2e1c812d703db31255e5c136fb8d6fe312e925afb67ac743d38239a8894e362eb33d215a60df3b1b46a90766125e7fa363d64535605cb1d489003fdf8c156f56d71249ddb38884257228602f5b44500118766f5d567216921f0d472b198b38112693a6f95f16b70665813661e2e20a624756a8e837d68f3594ca554a0ff2d40f6409b72ce8ac643a48d796a210b2b7b53ba527931e1d2c2e3c8a7792445e95bfc4d6f90eef984f4f4544af82b027fba2403a91c71cbace00145a1bb514344367beb7a5859227abf05fb8ce8b6f2c85e5b85ac4e688286004e3acaa63be42324a6c5f7d16c2e15b19494d3789343ce5b4a02e01dd3eb997da52f3574b62d7f8fb6dd9b9a81756548a9f1f7a447490c0f42a909d6e0c1c8b76f65829b6c933393cb8927cd361b061d40b65f1b01f8e0096685763158c78a1ece3a45022c8a87495eab8d37c832833b3e15bba08dcde52d1838b8b6e7bdf5422cd7e69c036043fa6e3fa89871a191cf94b50e712ce572420ae06a77a8277f0261119961774269d1cc4ff33d4fecf1c5ab869c99a30d502505801b8ae758e9db43138fa0ad9e61f869a4540db89be057879e1e23055964b1662f669ab4919fc68be70f9cbb275e87cdee12d2c0a32b64f3307cbb61315c9c0163cfd8c1d853707d00820db7d2aff05c6a1286d1fa91290f69cdbf5d4a35b43e102a7b498fb4eba142787c63d961f8bcb406e45fbd8eb1659d8fd74f8690b067d550d78d87dc472841464ea5afd5f0626f30092d22551115547b7fdd2e8f3a5507d53d19a553792081fceabc953980b19db7076e60eeaa63b75575b519330f6efe9809f27843045c7680670cb802888b85c915781e95b1e49ff5de0f42ee983de08791b9afc3a7615b4ea98a8403b8069b1d190411cc767b561d4ad03eb2342a7e81193c80094a854a57c662dffb4e3db6adefe88453793ec4c51c8ffb3421481657235f722a6aeafd352866d1b0ae7a64fd8edcc201c02e58c64b484ffbf143c229024247db8e65d78df9e6565bf9a0725f9d7b8e2334970694906de670475d36c792994b4a8d86e48981e06bc8a721b977b258084f0b89afed0948015b942c9ffb3a059f89cce27c544a759bc214f38f8e77183cd1809538d469c0e025820ceaefc05d92e7897b459890cfebee35ad4fb041414bb60a23bc1aecb50783b50c0bdf350642b384a5f227abd91202bb92032f4909a6568d127e7dfeb8ea14c537ff421cc3fec5857841fb4003d50fa59130aa4cbc1a97ae924375cbe391cc95335ffc2841a28703c71de10a841da30a54b1b5cba1be534ec9d1df2e850362746f876af5a50ed62a5f792d1a142d52ae79744a30e815f76c4dd5f2391027cc603db1db332cafbfbdda5eb55b8b87b6482c8025770558f82ce43f105a0da994546dedf6add189d40e1f324f869c1ed88ae090733c1a8c205499c17dcc0749fa7f11e13b5ae6bc329aba16d58ab495da9360e2624317cafd8449b477cb718aabc51f22ee4fa0896414b25136044602bac744d61fc21965a2336f9f0240bbad29330beccef629e541413d6f84702857e057150ffbd3104dc6667afbbbbac8c2956110bdc842e21d9f26c572f5941da569954768549d1f7fa4a40e970313f41adad5525f92bbe1033994de514e76191445e2e174925d19c31e209a152ed3f474bb5c418c42f919301b05bdc8af4c7210d4876b8f6e0b23d652bc6a5e8cac7da39b6447618388f4f8b5b543400ac3e7ef9612b27cdbc8d1afee141722aaef3da739d55ca9f530e04006d7ad8049b1ec1d0d733317fcda6265e0455a752114973ad9e623519e38c0202d4c812caa40d90787057b3a25313f127b93c848f22f39e72a2b193eb749ba130e05b77e9dd4a475e2a293883f69d6c4ce98223f297754f17ceb01195172aef6bf09ccb50f4560bf93e4a485431bb349e7c3e6e5cff7ff88bf264a086ce11df6a75ff93da80bfa13a9201a5fa14e9f995fcc0c1ec1dd42be834c47069ae8139a24505b9341bd146800d930d7ee28453fe86ab3de2f83703cabef4c86bab6a7c37c1c23220958523dc4589ade0fce9923e7023288ceba2938768f0b42a38e862bc51d101b24d1e6d49e12040d50d296d07b851f94a67c4de2d2ba6b6791dade3f4dc495560a12899e616d27c93c50c49716169789cac893efe85f619de545c77a31ca60b11551702d44189f217fdced085a2519246a6e7ba871756122b7a483b22b1a76e66db9bcd899d12f389a6e4726164ce723b6d0dd22d8b8270eac634e490771ece88d93f13aa073ef76f58b94cf7e7d66ff81134cd3fc5351167577869c469143f0235f5c48222e58390f221da1082dc0d83b1f32a3eb651b433b676375cf06887f9cb7b8ce700327bc7461b84f29853221b8bb3e2b35c2414b3bdcf4f2dd16d5468e76f8b29f6cb3efcc2222f25c411059c0dfd2ef8de533da2a0548ac08f82c6f78c83305788495db22c32a954906073c37e6ee4275154a2c0864f8b5d15de3fa15b62d59e02a71611d681631975a2aee3e8188f4cc492f49db045c2f3fd154b6ef4e50241ef52782805749c1464e6867b7a67eb653bd5e6b127128fa8113bd5343d67be116ba08d1740b7fac85cce18bf8423b1c3ccc1c02bd9877021e61b23b3742935e4fd12229a53252b15850f07f68760b0eaa0f5bc794fbecd3ac09e3b3171ce7e9b13816b50118d79e9e0637a8a4e0fbe747101d0e5f6c230cf7c4cb5e830e45ca5902721aac82ef92e9d7cc2f23d3453d703c208ced1a44f831245e770e658c15196658f55a1d3b13d555dd149a4cc63c9ba07325d42d2a1335dc4755fac33a3052dd93afc48a1802d1de3182b81b636b386856047cbdac391877b88f2b39af219f937c8fc426b52c5f552c08d487e57cbf7a21ea5e42448467b9eb836cac9c23de077f089c7c95c7c9606f72a0ca843d9b9e0a77433ad23b633463ddb917094412ac034bdf23ea8dd21f7d08bf824b524d1466a646167d55b851b3e2c27e8db0ef3ecf46da2442f23521cae0086f6aa792d645cee07377d314f47e7e1a1fa9ad228dc2898495c48941426f34435e434850fa5e973f37f6d858cb281e233ec8f3d52104542ecbf212ab608a28243743a406a50c4da306bfc3dccc6d5c744bbadbd755c81b55ff763567decf676405066c665a539e96979fc41e5012f67f6eadc91d30efde1ccf7984bf7ef521d98485f557df0563c30f9337b3be2e3d13bdebf972f2baabf7743e7c8f70f05e28a382c655894e777ba722e29fe0f61b91bca72c85028f1e932028587af0e10cee0bac9023473f12d82a80b18775599ec062daef080f79063417b605ebba685d5988a3bf042d09cb01b0464ccc156ae20d5c8bc32fc182c3efe4f157dbf36789288f2a89738b4666cdb6fee21e8a736abefc8dcddda60e24d6bedfbc4316893d1f084f4e7689588a0132364c7a219d963160819a925be93f9c8a09661633548df46adc0c4a396ca12ba7a592349433f18fa8ebe9707856885aa06d599db08298bd9d8c582dcb0afad35b86d7fa5d73191b261591fdcedc0a0ded223bce6ce9bd4315bf5fbd5e3fe30cfc366f63fd5a37370aed4a1c73204019ab5b47dd04763ee87f8479db2c61ceea5350d1870ae5c3f235c0ae5f2a805890b696c210045dfea6c0c595f8d8059e0444ab4ac0662872f06d0367537d4d3c8dec7c3622d66dc880f201c9a5e204c3cb28ed735e44ed3a9f99c787320806eb1c3c46b64bfe95ab9c475ab0d58e041ef6b778855075888b54f4727e7ebf729c558a17850475b626aab0676c3d42248e95932bcaae1d30f393a89c820cc90b1b63b4e978e1e4383eb36c55cbe44c5366d23eea54ddbb5c2b8f75a6677fa49f21ac73f80ce178323f6d8f0ec0e95238446f1cf5e85200d3cc9acba9bf72c53ae2fcd656021cbc0ea28e9eea5f895004b63181e8115fafb7314bd85db30577d83177b55fcb6bf1cd792247d19990e146972e476b97aef7994fc2e43890ae930c8ceade8a1a590840c0a2f5a9b931dd651ed27c874b7788a4e96ceef8c5ae59922c69f92720a7f291a601d868dca3cf680d0cf7f7cece9ae67218fcb000a55f5189344a199352a28e0d8b350516ae3f44d0a5e12ec370ea69fa8f34dddd49ba75ee93a36a2069af04977c189400460e07e72d21fa8e4f1c7ab020f49908851ad17cbbaf594d8b0b8b40bc3814679f0d5ee5db2ef9629e9d5384fd1d92e4cc2d024a3b588000f439e795c65df7ff2c8e527940c9598d2c91463e4e752b26105b1d7728decfe770df81c560fd7ad5924c14bf87090ca1c75d1c8ac9a8439751a03432548159f0a777527fb795e3e8b1f35dc45b6ec6488dc56c09621296e8bf9d46f86345ac470934761abb9142dc2ca5323a98000eb746740891059c6cc25c2b8b9c4d7ec4719c21d511b175861855b31645111741fe6eacbb639c5101f7ef6225f21396d70c77752e71b401ad6a609a65fc247b8bb4b2303466780b0eba5826a2e710a000c49261260f966d1105ff9c0f8459c32696a4702ff87478fcc0d7083514e6e4c2242ef4381855a6fffe06be1c536281ebfc583f1b5a249b8592a1bc6df38f1a4429e23fac9cebf3d32ecb6c2ac0c65366879edbd804c6a8aafc3f31640fe3b350a75d4a4f8e9634b9ed7c065e53ced925d94236616e94107d6fe87a9eb8aaf6d2812681f4c8a3491072a1472418d3486a6477c6f1b6187a30c13b57ca131f5b3a21584140a4a56a2751500d67705d6a11e942b7fd87014095192d87f2cf7a0253ba75dde8bae819680777fa01453cf687f65e3a3fbbb29ffa05f77bec60cfac986d6da9a6de0ad8db3211c250a40e0a9f7a93b42ecf01f9bae26335e2cf44bf3bd0e9493f1500eb53f165ff2a031b7f1b8598a043083d2171c627de8e054d17bfd0d43555172061bf760985251da97a18b954059dc84f14f4a1a11e91d05d2c31aec829f582d445b408e6a86fd4596e9ab6d6876c6e9bc74eb3085c157f34fc087c489218eb622272a44ac931bbb872152ba2882e681c5783f609f89159b79448c064518867d78367dc50e05ead91932706209324a970cc5e31b7a5280caba16c0cfd3624aad305960125941ba592b4ee450b2ab8419e511a5156137b6930b87b512999036a37cc58ecf1612ec50ac7217359d8b478e2787258faa7dda72c2cd8fc4e3b7a4467d20895b130438a675397270462f4e1bfa3b8365e271e7719f63234798f390eafbf5c2d481a538dc2775c8be827c101dec58c6e4f665e6d93ec7ee7418decade3b0d5f56297247ad0a5cae37977c33b2f2b3838ba8e664e0764c65afc7d138f5e9690ebedc1032a3aa8df9db2ec67ca6a2fae77cdbf880dacda3d1ddc8657dfcc7a6579779f6eacc6da8b5df21e9c9b9a82ef216d443425fa6c6d30e05d47812de39de1c50531fbee85486a60a2fe073a5e23130e5c0e2b87547ffe94a29d407307696681871d0c03e8d8649a76afa9bc69e3086afa3edf774641d0ec814a7d8eb4e39ddc7c70425190c84015ebdcffbfea1b2634290dd3649526be4f117b9d6b818cda13cc6a16f582dd9d5dcbe1b27e481f2928760db0eb5e8d3195f853feb3335c06618246ef0d0d8c8717aab2d69fc6eb55e844054f8e6f69a797c0c653423e6e5329ec3bd5c33acc3dd550cad772b1a7a328664f0bb8d6523a97623155fd1e5fb3c55841cd58e825b6b972925def24b9eb9b699361bf30da01af64210896e7229ce8f46777b7a3ee82b4d29b324eb13c83e4db5c204f84a3d46954c5d2465b81618a696fb1e8c7ddd4411ca260f74cb316426fdc891527891d2f3bc5e3ac3462039aa822ac6307d92048dbb19e08f7db893d55913989d4db7d5c8569ed4b05c88f07e70365ad2ef7f186cd94e3e513fdc9c793790586b2047d4d9df0724cb383f121c6049fdcae0fae8d3c5a30ad02153ebe2fa6d55d6f807df1db4a36e14645b0c6dd7217f3a18247986be8f8fe11e3e4b079171260a72a4a0ebcedbcb17fd6eb8f0c19df7a2a1cc07278e56636403cf4969d88c1658c16f8970e95c1f9671ff28953257c049f0e76298fd6efb7887e6c453b57c252d060ed04e18610049648a28093213362506b11e167792d21e29b87b2a650cdca9e8f547d8ad571d50801e4361b1de6daa8ed5d580d618a394b65aa003e4bdeabdae9440b049cb258ad9c5a3cdb0f8c3938265412a5fecd5569ca03f1b60d0d891b78c1d6fd60affdc7c8b404e13ddb0070776f398115ab7d18d169f54b702ebce1f5d389681c3adeeba229e6134f346e2432a28851d7a45a71ab6501061cb9a6d3832268907c350ee9902a2c5424d8e292d3ea13f9339450511d41696cfae69decf8509fc438d553251bd14b70655c85b2231f2baf70ab8e22746332c1daad42738179959fa851e6d9e17afa8b2e46fcfee3ddcaa43253f3c503bc2f1c64d7da5d0fa4b040a21dbf77e7e8389a5f61054108a2b40520930cdc0fec9a04d67f0e10a17463cf6cf383f036e16c8f34f3bcb2f68889c8f3f2fc8bce6e4d41098aca86e93a9a6774f3814e26f615e76a79188072234e760feb0ffc9ffb1ab43cd0ccac01edca6c9859c3d3af7b89204c4cc8cdcfa7e1a2fa670b8fe0bc85bd8e4af375938ff7f163477ce0775cf8d20fd6a73e732aee8547f6a6c7d9f9e28343d988defdabd342602a0369930f9c6b1e13a8dce9059e8b06f38ab986d1ef9ac048619cb1ab34e750e0c432ea90e849463d173c5dc181180ad131fb9924b7d068adea9b2c25150a4f8933a585e12f6d08adbab577d99f5ee40f3e66fca553a361001bb8e750a56c3d587e9d872bc876121ce7a50faa9a9bbde5f154bbbadd504314ec81385758850bcbb8c26e4b36d418d16bf4925ae2627c73c5a5607b53ffc16fee4cb431044bc568c0bc1b9c05fb59b8fb699f5995204be9b88eafca155894cb66d2c01535be1b1673ec7d4b80f06ac8b8fd2ec2c7aba947051a42e10648292c688a6eb928147b58e11587745fc0219a8820eac1c9e25abf1c638986b45172f0daa6c8692ab28d75d195193ca387313b4a4eba8646155ec4332e3cca1a302a63f5706be59f37822d72ed81362e6c397116715de268cea47136730f6777fc5e062b88c8e51695b0ea4143966dca8507dd1e2be2a1b52e11b6b043319198f0442a0b724b4db0fdc7b91c93164d3e0c5127dd17191a58de9c8ad14a5bebba5af65af213f76f410320582e5f9b83aaae730c0bf35ac6093d992279934486aa48577fd126532bdc84b6abc9d489a8cf494db73eb9a6fa1972a199444a29bc55e94fa3781edc9d5a353c87fe08255f213f2012b35d95500cbbfddde5bff5c9b7f6c39445e55c6960e9b3e18e0c93a1ea105bcce35f5c99e31a5eaf901c07f89879fe05fdfa30e36c4c18d1df1c73b2a2511bfdcaf622b448047e987c36cf74cdc4ea693bfccc4dd384bedac52d260427873a2f36dafc0b25111ffe24f19f061c1e29610468d712230b3366dcbd2dccd68e4f21bbc6fca1220a1b06d3e0f6bbfc05225f5fbc17f4647f2fdd4251591392483111a30ab9bdadbc68d24e6703c09b9f3ec9fba3a75c8de34123a959cfdb1c8255cc4f9255e3121a82fed15d25fdccea4a7aba2093dc8f47ac419dd38f3880a232d6f91bcf3a83f4546a68a867aa202b5c0fbe54c7d24e6cd83735b2ad27ddd372a2e0ddf44774c4a2504fd3cbbf666f663afb82056895dfa6bdf87b64c0ee8f31fcce54a707bf741a8ac1cbc032f7287de60d6c9268ac487ff1c5e44ac9a9231d83dfe7cdb10431efe05fb596deb8fd387d85726bcb206a68c3cd586fffe8f72a75d73d5214a9adf900762cf1dda76d52ef611f1a980a34e216f0637677a68f3fc2c176805601bc3433933848214f69fea952675ab7e5ff5afa94e6487ddf303082c169cfa43885a38e68c268a846d97320eb2f298f79b2bd4c267d930514342649285616b2a0e0611ac367ad112dbb597415071107d69bd4bfa7d833a8ff140799e1b5b22993a35d4c164fa3cb4378ccbcc3ad998359e8f55720e52c169f16380f7450fb5999ee6b214575cda00d0ef0a65f26625255883e24a491329de0492cdca81295e41c87c39186d36f6e65928a7adddd7d2d91f09001c7d0f37382036e0c3a7e4f68a74a272eb3375bb1a78ed767102f34afcb2c8e28045dd529efa253b2d4f5e051aeaa7c726607bfa6e8cd58939044154ec571ed96f9897803c6141b4b7b40a91e5a7d6d9a45cdfb834e7f61c6dc1261b1b535cfcb10267be09af314a3e3337ad2d8ff6347a51acbdba7abb414b9b1cafe3e1920548364ac9ffa194e957b4c284ccb086d84dfb5848dd7395cd8ecc2d93bb2f1d2dea978b618fa30075208f4121ca3609d0cf86253c2b351fde282a02cfdfc465e005632ee0c0812734df93400640373dd437b99a60c6aae20eb91ba812dd4ba2715f3095d67f6201a15b08efb8cc038899cd04d963b5bae6a604d5edc1015142d1fc400ae14d11040b883ce98234b177204f8eb733012a988090722ddbaf268baf816d99bbda4a8024a3b8130cca04aaf993acec8981c9a0ce1f6997a6ddc5373ef0037bbf86d3a1ecb544d7c36d12170c3e7297e3e7dfe39290c77ad022e20a7cc6eb48e76e00f200470f1f3d8d6f26028f45cca494fba5e82da1113a1f00e10e4872a1215d1f83abf645cdefe60df1f70495043c0fd7c82b39e6bb4e721d0c27be668bb51ef2d4836f353964dcb493f94e642977636ae9ddaca3709011b1304b01de2e4f27e46448ea2f60adfdca45e853d965a5dcc3a50a951825800bdf53d56d27386bdc44b6b7f883ae19d1aaad65301ea84c8be21b8e455a4818b7dfeb10c68c40a511b052dfe5bc51b3a2973c09248fd3383d31f1829a73c85d48b3e21e6c886b901044a12821f4074b0afad5c5d2970d91c6dcebb1ec93ed2da0619a272d0e3e4bd8bd036320b050966a3d852728eea6c37cb5bd32b556ded56fa366a17e22740a4e7c1096aa428c6994b7284d9035ab418fe63d29168c02610c874857ef728e284c32b6377520f06d0f598cf80fd0712944a49b1304687293fe70453f05d9755f045056d04a589e08b0aaa7ec1cf9e3539b3c87f52dfba68dd9372f719bbe86c8ea8796509598a51cdbe72a2fd394ddd42d4ecbbd8b6a1e581e06e1a22827ba554ade935fc7f7c98dc12a3b7a5086b8186540f5d3375009884c6a61f6bf979574a9a565f8445177931641526e864ccb2bc1e0c109c04e80eb8915efb085f834169dde11e57c1ee12a3f09d4bdfe6850b5dd5a8831834a87678a116fc299e100bba69dc4382a88171f69197b573f63e4a8fc67700d135bff93fe4a8f54433279477a65628f6572d5e62b5e5e9c37d3a2a0fce7828c1c237f518b58a29869db121debea01e0da5b0d8cf256c7a87370448ef98c9b4813ff5fdb807898ac64dc52a298a83379a7f47df38aedf14b4aa78f718b19341c2566922efdf7e2ce9d10b27cccdb96996eacf4afa1f1d6bb5313702d75f4d0e8733bfb2a89c4ecba263fb854e7ac3228171b99350b4f43a602a99fb3aeae4e572cb97aa3f83ec8d953642fb2fc2c3095ef5898803c5b25f18b679eb0322631c3e5016c4b99918673093d4da3eea583d316dc4938a01323c412c90c6a93d9e28f98d02657e907d6bb40bf6039bdad067e2756ac9cbd015b79e23450fde63f1fc93fba2f6cb0ea6742fa40346ab747d0730ccb7e9e50a124dda8af680781674915cc7d2d8514cfff39096541db7465926ac0e9d880f03a733d8a6504062449eacfe7f205ca4791a599c0d20523e668563a3addb6aae451a6a8a4700abd0f3f53fb05a54a34e40c0631b3e8378d21b2e3d1fc3f2e9a692e407cee243831ca2cd8e992e3265c5428c259c0364a900a87250e91ad2e23f65f8fc94ce8bea9a3208e2814e2cb876e14c19fb89152eec7fb741bbaca59bf747aef838ea72fe7516fbae3920861344c1d793e7f269c22c7f88660f31d94cf5391638d6ab64edd3dd5b5d238e9f585552df15be1205b2081bf810ee2e6c7f83eed76b2ddc19f7da52ec07d018526ef8af0863b05cc1fabc06e2667ea3815dfd810b09f427cabcc7767e008821ac9741cefca9d3a12d39a30f5b6925aeb493d3cc9aa0a697535c0bd1dcfd2230843037a909ac0ee97b1f4725a708238d6532122dc29b60255a0162f05c47c9dee321bc4bdc82a5287d1937b2ab281c43d75aafe73028cdbdabfb5d36de2ad5543dea93ed0efa37790ca22cd3db5fd3f6fc9135eaef72c0561c4c167e38d7e87e4d4eddfda9b63f512d55dce210059abf219164a118dfca918127eaec76bd635d5bea55682e1caebba470b206c65b72ea44bc006b358aace52bd8054aea70191d92d8834fd17ecd82216454368f2b35b36b7440c2496cf668ca08f6a52775b2f659391550ca6712bca631cf1f5c0c7dd024b6844b3f86519fc543203f8ec0588827a2a79fad5a8e18cc6bc33d984bd50e6750a85b9d1a63cc01826b44b8f25f841b5b053af137ed1b2954b4d93e0d899e058cb528bf95775f682d7d3ff9121ab8b36463275b849748c1d3548ef52e59b9e249caf7e3f81e0c534af6410d90ad1b59187b31c4745556da185b07ba2f0bfdac9fe9436c9a27030550d4ecec85cf5c7225dc7378c36cc88316cb8987007af9a08805a8519248fd9468804e5dfb0581059faca71a3f0cb35bc5e0cf4c5afea056fe55a59c39a9f2c87b1b3063fecd02d98a95f9dfdaaf0ce667c63ca04d4786a490f07f3486ef5ae5e0acd82793cf5f5d7b5b40d7e25957e22ccc5bed04ff7f6e0dd0c1e49080fb5aaf312802e3ef93c701ed0efb8592243aee4cbff5601b3fdded74983e6cd517def62b29d4cf11bca382e0b89488c34f800c2e4ae830c1fa84b85e03f49cd66ad346d81e09623d3ea75e01295ffbab8f480afd3a180795fe501e986e2fff106c3fecf6654597f5b1e5dbf7fd63c80a8928ef74eca12094d20085ef3564098a5cff91f44b0064733dc6432c11292de56f231bbca35264e3e3ad5314de720eea592cfcbd66dd3a47302cc4b22eb09804246efb19f7c3296036149b066cd35c07cc1d654ea58c2b4a7f39ef76d462edfc83719f284381189b0f0db39fbd185b869fc6adb4ca509ae35e946c6b6063e1c3c64e6875efa148d90e5cb791fd27e10853c8ef297fb1e7830e1825508ea1c2f7be3d28c0d0a940fcade98d234a4d32163398d458a0575788de0ff7b2fa3dc0b6e31c87420b0b6429930e2136bfcbc790bb8ca7e4d0ace95d2aaddaac3375c19f71f73c72f3b05cc1cc3fcb9b89811aca5ad91b8c1c272a11bfc6a6c273aa95cea8515e4b1830574b225567963f9f4ca8e4388c64170496b344261b2f366c68238eb4e84476a148281a2b4e1d49056cb08e3eeb0f54f95f6edca58f6ec368113e3146d3d7c8bd71f083e905d9c1449297a495baec155180c1ef8ca7eff053483be6ae17effcc306628aa43f72ccbcc234f3e99d2ef9ee1f245cdbbcbb2488819690368cf0602e66827a3b97f52c4bec2ce9e2b18502b201978bc259651ed1e8a7ff42952fcffc1319caee51b147352373310f8c0afd36f0d425bf01ac2a4ef978b8b065e7f0e000b9871cbe5ed34ad81504aabc9060a1d187539e4adabf5f3343950ee64f5f5b0cf6ead8dfc43de71587066134eff066a0b61504a30862480160b01170519e702108204a25e5b179e7f6f8bca3b2555fe6141c7ec3bc1e4470bd5d9fcf898bd7412b319fe7bfff035fb1b0f8e55459ef35d0329e7c86fc252638ee96d175b79b2207a42181e57107004100f71e208d2e3d15fc30f42e259026de08cfec6fe12a089cfb6d5ffa7cba3bdad93f55170fd4725d6f33828f956a47e94fe5ac70b797496e08003cac304e1eea710a943ac473ab53edfcbdfd431e6a5526f01795116e710c019235c28580ccc5b78683ec6e71634a8b9d9e842dccd8435ce0b84c35e83595d33b13aaaedbe9e3642e4ae362adc1e3e155b8b638adeeb15ef352d09f153987bd91761c54398c99f40e8b4addc7ee22954b92a9ebf091763f192200221a47ebc87e571802ecde19750cc2987d39d83f72409676a333763f4f18030cb215654580fa18a1498b875be5aee3cd01a32f8a22e0156a5359f81b5b1bd732deb76d36858ed72fced7bccef20b82c1188f8957ec0ecf64733da0a52d7ea11386431544456ba35eb9ceb9a594f542a0cce91c60583ba55613340ee9ae000b973bc308ffff2106ac8c0f8202070e372a153d20e9ef3274ce7a59548de0b137946c940cc0b581f2a9a688b34052454c4e0408b9ce06166e0ce61e730f35edb531292c118b086cc35194b7bdb59c1e18e1db2d0aa0f70b62e0ff8ee889051c84ea31a01a0663e445608dae1bf99d78299ec274cb20e0f3e9a981f82ffd7d082fbfe1431aa7088d7722e174addddb664fc8a048bbf18ba3f364b56c3fa8b80ec740e4954fa285b951f845084727e0226650b82743cc89e6be24279752ec9bccdece65234f21704d2498e239ee219b7ab4aa69e62207e45a7310095ce82ce36ea367f9e32b2d208cfd733864fd04c8080673e4b7de768e0e3c2a01bbd2dd7a3b40b366fe5668ab758fefa9c98a0429b8388046d8da32564509401bd476ffda919e476c9047ab5eb99144929eebd00eb0891830b2b8ddab5f4495e844be76de43ba72af923c2ec6ff11936e86ffa0f9ea70687f44eb6c03b01b9496cd3c796f9fba664a793994e0b259a3bff627db8a8bf7313f1c272a7a58c3587475058d45126923c2cb3e7f03f836a643fc0ba3d67939e97362e9b5f10155e1105e404648b61b60fa982d77630a64d609df5734fb44285d6ce727fe877aa386859521d084b7584308c45ba15a94b5d54d63b7fac060015f8ff7e2ea315cbff89156ed6cf52dc43341743f30e684c50048c62bb09d27c0bc01b1ada20f43296339e44f106f98802d3529207e65a81e83b3cad53eecd292b866042f332b4691e37860210f0acd01dbeb4708bfedd6a3b5ca6f955e247a2f871014b4790d548190ee42467522f796739b9d1ca85366781a2b78effda7c501ed1515c9155622ee0d1c1ccbef6bcdf277325b2860a82f72d7a9f1d3d09552ec861221d04c3c30f45be5d34d164dcb0f92f6082f28720b5c026c97e032ee31afdc7a284a073eadff497cd1d7009b2a40f5310d24cda4a63d409a1996a62b94ba8363fb5f8e457011a821b04788b8186b0dbfc02ffa0ec9782504bdcb2dbdac527734d2136f28fbcdea6ffc591a80d47326510d3b0e5a15be14f82d56fcebd38939ad84c1769bbdaded6ebb1821037ddc7bcd4d08f04b484a2064f7940288c80127769a9fadd0caef13a91bdabaa927691d67390bf7acba593ba17bed58adc37cef79c084c0371a262d8d965dc88117f6ed9e8356371fab7bc627e47fd4c1fce95d845e49ba349d9307dcb04ee2238bd96d298b20e4681788f664ec96a55c98c699a98ccf03f356931676d5aabf91c6ba02f4552eb7a3415d1683c00bc6a41cbd5197b4493caa771270631a3eade49b7e67e7091aab3f6c91b09cc2fe19f317958500939fcc54638654b9748570af74113a5f3871c889c92e0c7b0450978b39825b4c497f49eefef8896c8e1e4a85e1653f0264390ff7941a4c24f77dcd46e11fd0ca79ad3867298d7ab338ce244c20f4bc660a58fc86d6d99c60c66a6151432f27f0bfaf341903b22a2d8c3e71645a7811b24e65a2a610a21f6da43cb164340f10f36e8a28cd7733da85007d8fb134adc973c462d13745d705e01daef7b8f6699c5d57154c29319ca06cb33ba5d3cb874a54831b356ac088f439fbcc8fd7873e34a831e725ccc1be34f094775db3488643baf947f16bdf5ab3efa3dbba3bf1095bd4bf18b2a480ad1a13a76979752c481d92801eb0931b3e6f9e1bc816bb149272f555ecd9894a765890efcce9c17c54eff018291eefea52a802039f414c8ac8dadaa2d12d19ef2297da89c6074a1ddb9ccb446be08646f12e0acac7a9cd900d732a5a887f9032cbaedd9772a61621f15fee436092d19988452080a0bfd0f33930d2b95f758a3b9f140094356d6d2c8e96acbb0852c5b601d23ec043ef567bce4f8484ada4faef3f7186837bb14a3a9423f77f41b33331f6950ff9f06dec57b254b79b6a4aa6bce1aa71101d76af2920619e0948c3c23f2b8ab51d013773233734b2530b09604284e52e3dfe04815c3a5e05bd25915f692ae3d73e0c889fdad96c07fa71576ef3336317122238363ab8b8cf4469e784ae64c250e4aead9a17db622b178edbe17ba29b591b51737b85a9a76b2e47da36a06922dcf5a6dd239e778d094f7746cb8d302b114718e70472bbac82cb021f75ff1d944c63f7901b0592c293e22e93c91fb2d82988852619aca29a69fe66a140b0bc0c2d62ce0800cadaa3bc204b3971284109317938b9e35d9c31fcf3487caa4807837b9e817f1e62bb879495886dd513a14788effbcc490e7aacb665043ef701c7460dd08bb198e059b22607cecbcc7a2c8aab189cf83aa9947a9eff244249012c1b784f796d56cd34af599461f4e628066db2a5b3d8bd562605833a6cb3ff3b4065408226f0f63f7c7263f8babbf41b2d3f53aae4f88b909c65f3d26f0eb82f5996d375b43df9c97b66506333b8e6cbd8b5511736d718d5e140b45f383b3863f522b177a459e23b95fdffb516d87dd527245622a5395365d55883162e592036f77d2eaba055d263d0ba5754766a7411977913abc51dd9544b406e006dec1d0bf4a868aa4cf505f2f9a379e41a3f7a401758c575eebd28a6273cc43707f8c8634e769de72665a4b2a91ef8b71267a789552ebbefe9e4017397e8be352064671e2c845614dc7d8bbe290a16e283360e9f46e34fd32b4192cd3909da9d117ceb7e2b143d58059be4c5d124525a99b02e0a53048d76c10f4fbc94fa79b44843331224951d7e650f209eb0fde2e00a4edcd21faad7308126a75adb101ab76b3eb051536d0d52610311ff94969bbb0402601e4384214cbadcf75ec6e8a42c223cd9036e3dff8010c5a765594fbc507205f192ea421bcc4306421ad8210ab9576f11a73a4e53c52342d8954ea762e28bd4c8f3ff34b6ae56b0543635946c380077218a1194d387f90cb9a58c7aa1a4ea1525b3a8b9c35d4e34823b8595b54859478cd7ab0c34e0c5a2dd82513e6e5643b2cb464487ba914cbad6bfc2bf06d12c51a0d842bd3104a90d0440f3c7093118f80b22a551c118e88dc1957c40f8d70dc9174fd1f6f51de26aa932215ddfdab0a530fdbba28291b8aa0246b5459d4122345033805dee75b64134a9dded7e0f27458d906de93413b975f287cc6109f95b7b037f96531154f68913f500c648eb9da90adaa2a7d918e1f8feeb4f68563038bec30e9774c6078ee603d7e2d7d3af8cc9e198d34c24dca1aaac6c1e876d7f6846309f508ffbaef49d5dfbaf19523789a65f0504b1d40fe685b9aae209bc0e2b6649b4b6cf4e7ddf97f32eff38f738faac9761cd070abbf47018db0cfa557905b72044d5b1daa9b00496ad61990b7f6d7dbf67b8a43d4e6b58911c1d76fdd613090333dfa047ada98467f8c2959107fd149eea02a8aaef7d398972194772e5108cf89422a4250f31c8467cbfdbb50f9b7519d99b9ec9984558a4519a48d374092b65483100a9996cb52f41590e252161e8261738d95438e016f1ac92c5aaed1e54096429b770d97265af4852f1a3a2b26122f02f41f183a97d4c74b9cedd1e169c75ce6950a5b355847981839bbc1ef9562a3a8e7805c6526e652e32be0e2754d4fc31e76f89b9cb935bb05394dfaa095ea0fff42703a8b80a205a15f07ee91ccb201905e5533771d47d322855c43ed12e27f7fc6a7fe69ff3c90c18b532300497dea90c6e43b28ce04d33719f8d059c4f8ed7f2dc0ed944a8ddcf4b9bffa3293142d246cef935c29d359d8fce57aa49dd44cfe7ad8213357af337065f98fe7189613ce7e824fd0ee9e2733372b281944d1fc78c432c6135cc44e2e8b4f5bc585726197c6d66f7f8636be559551863ed384f05c59d7e82db28a2c08875a57a333d92f115b1c74f1091e6144f5ab237ab3c7b107581c3f79749b3d7d115a89d5dfb9a31d9302c2ca78edf6d68dcb7ee0d82d4d91252ee7cb5c9b4008df46e014a0ed6db9c38ce07845dc0e971ed2159a8cbb3b41f29184816cd93c8ca3f06fd0a97b54372e36be24b5d453bc988a6aee1fa03e6ac6f03003f541c9fbe0be82d73c458aaa42b3f60a97dbbbd51801fd58ad3d56c286024663243b818e699425736102ca5bd92c3432dd1651af5a9635667753fa1e4ff8ce84b698e5fc305c01528514d870541a1ba8545de87ed41134e16d49f4626dfa770dbdad80f14f3c20171222034c62ed795d109a2572a77f09720ea30b2cb239a1ea17f21fa32798a951d59aea8327140ab1647fcf0bf99dac7266d7f3b1a115680b3d30ebb7745ee5429319e0dfe1cffe286e6ed73445cf59a7e13af512c10017c74360e9cbf8bc5020eceeeb9c4e5cceb612f0132b9945771158ccc0749ace479b87bd6b4c1f9cc2629b4de24f29ca71084897280ffcdedb8facf43c0d2aae1d66f79f9e97188a913261b771e8ad8ab918958cc24ab7f574c42ab98a0a86d2b0de74eedb78e365a09365138fb0759c1763f025eb169d599703fc91f85e38aaca12ed9aca6ec0997d00b079bf9bb0aeabf7c7bea4f0df5c995416a9ae6ea2adc246bd387ca90732ed80d57ec15c089c97a0ee6034c100a0b0bef6ff96815c2341fae8fd0d633e7b3a71f7df9347cbe4306935d3313c3304f9abe3d448abfe8e0e46ffeebe38a9474c328ae5ee171a9274a45dc219c0b5a44e2c5bb3b5b51d25927ba2a5c81971308a20b9e68672244487ccb1347907b57964843c3accf88958fa75a26f4636ccb1a7c52f70a8ff744b5501d087f1163ebc007b6e94bda58fa10286bd10fa3608568c6590774f72e68ffd74f8ac0bbe4a56a8b5fe9b611a915cda42b1e867a07e33a2a54418aad7a7ddea0d0de03bc5115ca7c88a71baae7403ec8bc48d9239eb57382493695710d4e56cad409705b3df8bb2ddee9a1639b852a02478aeee58235bb2471ff153e02406ec18812730534cee96b86247a51045e1b4957412f57f023da3b183e79a3344fbdce6fd63d9c941c7a54617613206d4a3b77630a888f0356c1e03b47b6c496cf3e479afa88a521eff71dd585e2c83ce08bff1cc23481adac1cd92a0d8a3b73201af8c795c09c7534eb55b8c8c2fcda2ffe4a392a7c9228e350f0283af73f27db1b848289d8dddc8a8e4e05ceadb9dede2186e5056a5b8f75642f3f9a22eae2713cca770d21352755d83f2108eead9f3ff889aa323ce5c0b0aec55dc878c4c92d11d8ab851a418723f046dcf6ec78bbcaf2fec21e19d0ec3935254e887bdb2fe6d99c03c8a5be32e92c8a8fa5e9b6e84f02ce3d46940b71d1879d5944f8f08dd35fdabf401c27f59a3799459a232e16f30639d0dc2431a998a1166efaf0bff8034bfc865a29614445fdf5b8c9313ed2b6157f3fa51a8cc46dedce1c6c8ee7ec651c5f0af608413a0c27a0b904595af3ee90f26836d70b5b2dd0a430a03a05845d879552a259a3525e36d2fd1b1d2b2e711352b00e1f53bd05f8bc31b34af248b5e04c6b0dbb4d2f2f9a875d7f8c8c5ae8107dc821c098415b1e7259dbe8af8f162224548f6ac0ee64d3bbdadf2f31c2cf721fb764d39c1cf766291033a22fde0d58f123f1cab527aaf1e644f65001db0ac57fcafc148a8988285613cbb9f87879887acbd61ec0463b609a2e92c756bb7f3f1e697e73d11a8b759b38740a1b4eabd406844e3c43307f9aba435960d47c22512eb4a3327e43a99c4f27c291e5f0a70cabf0b43a303a0d82f853ec85dc42aebc1c950a6ef68a3bedba59b180b1ce3de61a94dc06b9581aeba382ce5eaec4dc99115e32a8c814b946632b29dbb9e92bd45bbfb1373088c27143466d8bb65318f2872a51b6dfdbb541492ef5321497e7a83562b7301565672f582ce37b26e04740ef08aafaf72e7c82e22615b6a657ce8fb0af931499d34b97cae8c6f434a93d8e8091b9b8c9bd2497f91464244cba2394cfc55b432bd0fa8ac4ddb386f2a18fde33026a9e72e78448854c22460ea19830932af9118fea1708c9bbd49d627dbead22432cc1afc58a0f763a79de98cffbc0989518fb563e5d2a200b5ff7b9bc6dfa5025d4cd42a0b1ee1b449da9ec01d56d3eaf28899cf4f236e88cc883288e83983cc878a22066fb2e5316204708285778db02fad3986f14909ecc073731bfe7c5fd6af4d69b7ec6f4de05c614443b70ac36010a51560a33d728aa382f2ad47a8d35121f3c891ec26ba56e8301075c66cb800534ca96bb4f6f5e0ab0bdbae50077a63cbd83a7148072d96123f9b8f5b0cfeb4d78dad5a6344a6479d92d2248c08991d0c43d43d4d6b51c3c2ef604f15cf712ffbddea617d9f57e2fc323f4d6810a90ff779c4f3b7938e5616bddcdaba8733ff52d6d171848a2258acb9ef646bd791516ccbeb8b58fee3d611291928386f672dc9a06ab8859a643f56789fbdfd9007a782a7684399a9d3140c6e02db8581b1db28d6211a9d34c9b75f7dccfdd8800a9667b57c69ca76a14244455d73dc3f14eef6b7cafbdcc6e42d140f922186a676acfffb2441e02696b4136869a950ab7a72210a139f4c0d4b24cb529d33fa47753b272e3df2131ebd25c1643075a94db3ef67beab185a2806774a85eb80666c650fa5fe592f1f87fb4698d8fdecc740d3dcbd27234089199f4ded223790431129c39a6045e0b67ab3633e3be07420bdd32cb710e6567526f237e9c9b0e68eb5127ac37f1f9b238592e4984a6145d93db5a0010bcd7d123f76ecf14fd9043f66cd1a78f5f13aac929b41fdb2185ee854cc10328540bd6a55884103c1e1453b4f9b59b26aeab5ca0602352689ed082c23462d42f3f0b9abbbd876d48f9cb0f765957cee526df5dcfe3de6caea69d07e39a114eaf9a505109fccf318f82542f32b5637c585dc362404f0965401d7a4f601f4f53cf02b72deca6a1855cfaf809295456c68c6f781a0c94f03619bba2101cf59fd4a891330ba2833bcaf6a3c85f3f8ed45ce60c40a88c876308dcab41e784536d496695bbd018c57522f86d4845d25d83f2baea4032aab9ab076023c8c8ad66db96bd639c441bb8a715530b5da6f7f521597540d58fba6d0269dd07d91093a5ae6e175992f3fea96d00b34360b9907128844b9c9833c46d82072cc4f492b9f1a0a7935d99fa15b54011c282c29ef50898e46e179ca842ecda4bc9dc74071f13f6b2c01eab03009d50f585ef58d9c9b01d343a3232a71d6ea041b1a9a8cbb263d4b85253e84fd183a4339f8cbdff56da8bdf8f30fbe089590647b7ccaf216cf6a773fbdb8f47925d471139e9eb818b2981e58094469bb447ff54a748122b9ed978acc122fbd2088073d5169cc62f7ac9882b16051565951ec7701fd5cc82cfccad1f69bf3657b97172f71c1590b7be7405c0c91b41a7da03ea170c24d2bcb81ef664d6b2bf88bff24f1e60d7bb0bb26fb46e1100f0521ad28f5e709e9a78024aa391008d5ba30216c9cc021cf59a152770c864ba92beca15925d1d0dca3567ada53e9ca29de40f341867a0d6bd1db32e640f79fca3d09e66af1248870c1598fc4287defc3fe4861def5ff55c4c8bbc69b76a1bc095ee0ae9ec3fb17f987ea0c9c7de7363d21759ab94e5ccf743730b43bb54f054bfb35a935d2c59084aa962c3b817ee03c3e94beb8b80311a00100219da785b63d338a570d0144184d9b6bbade6af2aeb1ff4525565518f886fac1f5f93de6f7a4d06587f90402fcefea163014a2d5f695bb00607d6c56ebae3e06c82f1a83e43e3cc6d5d8b0de1d66fee7e89b4afd8eeb075a6e3adc1c6980d4dec858c10d7d62abc69d3fa175c73bc62ae528f3dfb6ea435fe0b2ce075f8e19e091f84928028ee9302a0f60cdda22b45d9d9fc53bffbc9941c73c09b46ae40be50519a706d0d71ad7df1ea209020e06a81acdf330fa65635f87325285f3bd4744d326f2f88e1d7c311fae0507ab5f2633f3fe9a36775320325507b9696560dc486d44bbbd71897c950d66716e9238f1771fd911f220f81120adfa1f6ca4fcb095a08eba56d148bc70b6b453b0296c916ce29c64ed9caa765bf8b5604e4eff087ced21ed90193778d90c8f928c1b2cc6ac2cda988f6840c0d146bb96416aa022a3ba5a90e3f08fb32397f1f1654ede867d7be3f73c67bc73b41b9d017a10c959c4ee4f6de695ab79b83cf984fb7a84674f6821db1397b4a687a2d6c3611b8629d89394377f49a6bf37480722d6d40fca0e28204216efbb940616ab7ae6492d7f742fc95e4367934c4538efe658a83bf07004b3e1d0d0e77b65ff587582282191b9823d95732ab82650511c92529badf747001b0111ef26bca41b15e9269eb13cf9e80a50dc4778cd8ece0623411ded48cd256a2e53847afc0bfd061c043cb39813cb6a2d6f7a9609197e3ac363cf202eb204357a27b6c2e7ee898029dbdce4b73992f56b07e9e2b7a80ea865d8007c940dcdb0be49c9defa74a4c3786d53c1cebdc82eed11cceedf4de928566597968e27fa9b5292765e21afd340280d40fc72d9770ad7bb78d7c968721ab0a7dba53dc03774ac8daba7e65a1405f8933ed0d7bb55baa3258fa6698539b2438d0d7abc3e423dc8403e8dfc4a1931249e6df03841ff1aeb69526dd37a4cf8d3663e04433bcd7466633bdc12b727f31eeac0be5bad2dc03e19db0f263a13f201821de0749bc5b276a6772356c92c42a69d23d3b5ffadebb81b8d809f0b2c737411a2c4d086f6c362963aa652f1d557204fd7cc014f4d0a335e5347e817cc86927f5cdc3dc9465fce62ffa72a4301ddceed7cb63bac33433c276c502623f1d861d5a8276335e7ed1dc53e6bec7cddd88070550d674fd5451233afde6331a8af5382cf119ebd02a6a095bc8e5661154c6030f02c74566a4eab4e3f35e5961e89025f96d286ab4133338fccc00dcc3b700b9caa423f166117c514853985df95ceb49f4c8b4b13c7af242e6edef74133960f3d934dee30c104fd4163128962677c2260e41cd0ac33e7dab658d9eee7f623be25b6c04a73891242a0910d779e5e5730b6b6df1c6c72b160467ab3bcc322ca908fb3f8ed5e291a3200ea6154c5793704a32caf22e034bb3bc1e289196128d69c8ef276243716293be9d69c179d1ae6c2773640a3cb9e08086e3b6ef69e5b35724c449b44577d3c588251ad6d33012565f53759370e604c0a65601812f68c1493428e75f7ef547c3c6e2302217051d723c09f403adf56b14e67add57ee8cb554341f8cf64edc89fb24ca955f0e8f5b0747594b27722b01ca13e658815c60207f71947cb370d9bd9637a5ea8c30f44a6e2217917599196ceee499c0ad31cac40b7a5f990e96f923403bc22f53c5189e9f3f95159e77d39b314156f67c10f6101cb71cac4afecbb9b6ed87cbf2d075984a1e6c7f139d68c271de5274de33a0e68af8d20404fb9b56ec627060017b2f0b7d208db90200ad3965f9057643999d37cf01700263c370c247d7a49a35866ef3522dbe0b4b18f34475843b7906956533d451906e923d37dcb96adcda386bfd49586f02507e0bddb3ac1fede0a2946fd421d39d991238ebe35639daf57b8b05c7216784163b8eb3a7b252647b57356d2e2de8bd5baff0688fa6f72d491003896fc615638831812f17961d15ca8e31d6dd49fb4d98aeb281ad8279c606018452f5dc55e1b4dc5ffc28de638cd38905d50ce9addd68b8b27971c75516de2f465aff3224b89003be2de305979b07729495cc5b7d3e318f2b0c22a595fa3b0f3d992f5d33d57c7b70ab23e4f7857f85b01971c0ff6fec0c51ec7e30998761042a896bf552cd0bfc2aac969ddc292ae088e4125fa7c7073e3c091f2bac6f5c4eca95242c05e1553730f4b3920b2c955161b2323c25eca574bff960b04a2d0df33d93f7640f37d77b528dc51c6457f07ba96febc72ae10dfbe1fdc479e46132e977d4ae8266e811dbaadb49d3e101824f305ff4948a64dfc2ae39d7cfe8be9342edfb62e91467826510e2f63975d65af69d6a1a590d571522ae30748c60299009104b590f28f9a00e04f0af4f903f7aaefc9e3d3432f62ac26da8f2c11f4d25a423a9ca543a1b563ea52c75e2cc6fff9325a81eec359fabc74cb61daa6f3136d013c9e5c84f045f1a11b2cfd484b2d582fd444bcbda4c83483da9341a6341e12438aea81c50f0c9cb314907b25a3fd2607b0d9cb4c3a3b02e0e6c8e7c79e48b5ac72874e14456f3567ea4ee622af7d3591091b5dfbf4a4c384ccfe265ccbc2a975b70b20b14048f7ab14b1ac5162f6c0d9536e048fc1116036eb97192b4ac32cde4d9f93305f64f72892b5c5d50851f4b71aeed67bdb27240351023b9b433bec31d857b9f051bf3a1f26ebaba6fd4a080ad8f0595f54269ce150084f3ee5f85f61bdd244e24161b5a92ba451da31afb4f59d560a700a3f3bc8d9043145a0b5aea30bacfb40445ef7afc0da68479d87528b178e56aa8c0e1c5ee22e90fc26b48e271ae98603d7211bdb418605e6e4c937ac841929521c394b7df46a18175876238b62fe1135b06be03ef13cbfe99e220ccff10eb17fa930cfd8b74a5459f741045b95004af28cc0d4c1d9ac7eaf727f37dc092f2ed5703cfffbe2c3f6f279ce7dd53103e503ca4c55c49fce31b20a71a63134548111225b1646aa334efc602d073409a388a293f3fb5cdf3ceb52b7aadb6a6cecae614a56ac5b785f0225baad3b3697c66621275eb632b98dbaa87a5ea00e4f99a99486d2d50d857b2d9c186ecd1100a7c2d512077bd6a932a36ed0e3fc53bd6d987639ada8e82de439b0aa62f7d0ab53a8733129a1bf443def5a8683e9fde02e050e7564d470a41f9e9451f540d616148582993e73394c78a74ae1c51521743311d0039c96a3a9d67359c5fa04b12e01e444b20b4f50c36dae5420ccf3cf5f0b3f38b0598ef52d4867c9419521041d0c6473b845518fbcfc9da32e4235d7c7af052219f2c1e696f60e01d468c816209fce224d7d9f2e4b7a9d0a65ef3a89c492fc87565102a8debd0cd96aff1597cad70b9582b5b20b1aff8f5dd6a13a3ad458d012200b03356d9fb218aba4c2c2ace2b44222000ddcacaeb3e9a7e887b30f051ff86a9ad7df7a2d82a2ae95d1f3c53c4435c4a299f0ac764c33956995d0f2a59013d158cbf305d893c37e927c51744cb5d3771309b5859f26f227420581e14d87b231e324a1b336c59f46d43e37d2f5f160862b3a357757d91aa4e65766ceebdef3a3f23b0d71ed5305862f7f7d0867bae20f8d7a4a6597fa0f28c0ab8a223357018e9d094a446a8b11af797162e5c66ad39b5e0ae75c54450f625b4fb862b6935c5048c35d42e72f2ea580aeddd500ff133bd5799912a699511b56931cee6cbbbc6edf7e97b0a938bb5a8a4ca4ac86ec173c74cf5827440b3be2126ff841f810929a1ef893b762c1e21e47d6f03de8f41166f7056b96403976c253b4696aaeac825aa4e0c50fc6c37d01dd8340e8d9b385b122ae58e74a9a69eb299384682c9a69cfa4f4c5dccda77aae1435fd6c41ce20869d9145fa9ae3483d16998eb002c969bb4ce39818c94201020b61258f739953d9468662de1923f7ba804b8bd03ab7dfef7da1e67c31c40148b176e100d6a122d8e768f53ea7aef4d782f9f7d0fb2d4624210bb3ce9eba81da85906824dbc1a6343e9d994222f56598e8be526e7d084211e315fdba8920b7b6178ce6b9b08c35ecf406c472cb401e585c2fcb4d8c2c7a455c9e45a0acc0c9aef64c5a749d7f1016caa6f9aabf4000fee014fac5011f1710d8defd40ac0810a8d534d18b81f4d6cd425a1be8d5672e0c172ba8c7fb36ca0b2852c2a7d571950d60c0df724d77828467fbdb41d1ed2dfd5911cc85b9fb8dd277e06d88980e673dae97158672c036bb8aea938db9df88c8bcfa525f708bd8fb71a9438f6d34ffcd9c2d5329d305c739a7089b571d29ebed3d9c3d7da058516fb1f7930945363cd99461277f7da034fa5ce61b945f1347a34ac04ab4adaba5dc47f16f32c7663c0f84b97918cdbe164b972a2df9433fb56dfbf5e0074bdcfd8561fe85248121e3f2158a22316d2006a0e12fe6c5df501ffdea7b1c5a949f1b5a9c6cca49d869876e9e9c57588e30e5a91020122e4ed2263b28533e140802f3d50e7f9c32a1ca33e2bb06b69af55006e58ec5ef866522b5ef0e36f4e5b46905782786de317a29aca818e075b77c16015358e96de95d0a717f21f224d07e49df066027da3c0d4c02902f5e23954f6c51b46370599f8f86fad5f4c90e2ad261d3d2b8abd17e787567afdf2ad3f9b179c25bcc384fb2e74af7603f72f99df076cc47492f164ca74d79b43f4f10c1da306222b07561ab8eeeff3f8045f3d7f57f7719f0bd614c5611d74d03bc7671b0bbe369392e2f0cd720f2b2709ef75d3e9490dc752cec0f996b11e90873336dfe5a3589c9973c9463771cc7d781214c3c0081fbae207d497d89d60af5c18332b8f006be7ca7ebc0ef99d15b86a127ac256bb004ec03b760978469e4e634e33187aeb65ab63d42a84ac6a08f098fd83c95b4bc98b2aadebe1652b8ec46a7286953598264ce86838353a3cf5af1c5b6a7362b246b5f4855fc89a7cafc6c9ffcda4070e6fc8da5a788061328a1c0145460dd78ec31be68e3dd9eecc68c5a582c90d5e4166f2a1fb6e4cf0509bc53a7a78037330dbcb561d75cb9a6bd3d49bb608479c506034d9ff6b67fca06642c8bd4507577fdb0fac7942b20e95afe2d74cef2712323caf84f2afd4c34a7d2f56cdec2dcd16aeb731ca4d24a558ddf7126d0c970dff0025ee2622d5d614ac88859b6c66221c29c8a44c20439f040cdade48bd7e82ee6617675acf026e151ba7c6111cae237e09a7c8aae1447a45a35a70997b7d0d443167702bd071855a30eb0151e1b72664aa066b1be48fd599a519da7418e95afe545d2acaf8f1e087037a4195ecdf05f957e29e878456623acea4a6696dd062f76f0e1d7ff7f27c44e0a17eaaad2751f283da55c998f240238612737296ef49e35dc8b6422d908759564792e62567b1623ac367096f6f0ae434ebcc778b6d115471f821cf6bbee38c78abfd13e44af29979e18d45df04b31d4199f5d8b2730cf92bf991481b0c50e59484b8ea73aa157c2fdff8f7ffb58d2cac3ac27eafa4f1af27e0faa306fb936eb6f859dd0af5ebd8981c2d6168910114f40313496ded13e0180d9ad6903b1f3dd8228cafbaabf3541db0974cbdc40a81fe71e607bb52cd1859c6c60260a4c01d30b30aa0783dbfd12a8d45860ca29b4d8589f2ff73194bf669b2063dd179f9b7979358b48a8828a8c8a1fbb60523227e770507ebb37fd2af565cb391df9dc00edce72efe0259e20ee09554bfc44a3b5de877d28e36b587d910b5181b9049439dd21ad4a51ecdb0a337f20ec9e9186eebf5ee749cf975f4c9164c6d991489f0dc7a1795ad8051940c38d7aa17434fb315d22d488c50e506884c1762caecb6047e6880e5e331b39822a42ce476793e9ad8e1a1af3b276acb436791887b33d8d2410c7ac0fdd7b887e56b947784803b08039410697f922104a361c93cf190bb8562e70acd43abe073a73034338304d4706898fd0909bad00f211d78201ca4d4de7d3c7d32c9639f897e69f45a30ff0b2f249fafa547ca29ba451ede878e3ba786fbfc92447f0ac9afedbd1a24ebf667f7d346bac5324e1d2ceb5f7825f98d7d43a29e7bc57a230a605080d1d013bbcec2b78347d27d273944e452c27f82996473341f938e317b994babafccfd03bb5a2e062644967b70ee636c20de85f6c24d7d5170951a5779b4e19255a5279270b7c94e78e193ccf00bc550033dc76f83c67ec5d97a11c175cbb00ad95d1e186c3aa298e9d0c4cbe8742d6158f0569bc6383d824c4409a4b159854d850ac9fc2929dcd4e19a3106ead95371632ce99734e48e0b64e2b5b99d52c22320d0af17c6f667aa5dc3c27e66a743a46237c1148419e4628bdc5bede47ba8a5a60da3f8268f9eb4027131f95b0f6bfe5a5ce3906b89e3c186f7a7f2a8e56860f9a20b2cf996f30cc5a39b137d28ecd718ccbddd9a0643477cd421f068ad9a81882a9badfcd45435aa7975781cec023400e469c2338432cbb2b0c5f9131fb640fbead2f04b4f8f1185a0752497e0202a349360cfb647a5eb05013f421fa725a0cf61c09a00a984ca39ff24a590ebec3110823a9b8981953deeaa1edd167e7e7e92ad358543de986d5218fa419f7fbac458c33d821439ab59a8ea74fe80892aa5ea0551d179cd94b2a295d0fd4f07ffcf4f77f01443a947bba4e9b497bcbf3b7a124e82ceecda192891368995d87054490fcde0ea345586c55f254aff57c4265a4694d33680ae01bd118af010c3752cf055c7bab9f547e1b00c867f4439d678c763d6e63fa00e2c9c619a79c3e3e3d8213cab0799fb62c30f1c4640999c7504f604fc7f693e26b6822ceb1b47039c6f6a19180424dafb0d1420602216a573a75aa12d7d43d31fa37a9fdabbf52725ced5047c7fbce0a92e961c672bd76f684f95a9296aa357518c6844401aece8b68e304f25260863ffc56114a4d997df7b145787ca7ba2fcd68664448890b7a450e7e613ef1bbbe820316a23893e730e3fbaebdd86d424cce2ce807571d3d08db6bdb06a3f9bb2f4dec70d5e1cac4813f1ea5590b79b9883fe6ac2ae9e27e63a7e57833d1a3f5d8c1d385f4165e7412493bde30a041bcd0adc979212ffea75b1795550696f9987505b7fa960debf93df1f11da0c1da5ccc2221c4c9a8b81f776d1382548bd0c32efd5320724a1379b99b0ce330224c2ee1c0477969bdb4b599a3d9aa92b3c676959ff2800f7d030b35c84fa9f9f57fde2d28ff115c035775f69e2f927533a46c82bd7551cc490a0e8500ab70597f2f1dc31433113b77e51c30bc1fba04fe2f503d15d621af531b91753f6c2403f320bb7a37224bb9b716db2a78b827804a159edb30af9884db76f3a395c49de253e138ef7ccc2b8802a8d040baf1a26296eeb84a82ba0c727e637adc22e03ad9573b071600a9cb4ddc12f2b92490b83275434b84ae8a41cd9e4a7b839d6fe368c9729ff0b4360ca582149df93481d9d69cad591e38420186832d29785002cdd7cfe77806e06faadc944d2c3e9b5045c2ddacff8356298ccf0177a526d8bfc11dc6b327befc827bcef91128bae884f241332c0fe0833271db8126e5278ffce1936b1cac996669fefa10f1082222faf156a411ed44c2328f889e11b9d7f4e583217f6fdf4d945de4606eb8865fdd771ea02d4b4ff8dfaf295bdadcce309b87b01b3b40980189e4894e403315dfa1b1ba71b16c33838f0b9ed1b44471335dfd2d5f3ab97fbde80a9eed6eb158b70943a61712c2f1a810b9a45414b5c5175a18025f169ee7bc6842d885bc1122feea1947267a17ff5e53125e9d147e3f45a342cbd961c09db6c5f55a0b6ef90530ed8ac3b159c63f10b378e4d62a0fc1973ecc93ce2517a625011ec9ac885f8218474052d4babe9398a164cb4015ee5ce84bcbcf0594cd076bb6e9c00d13e0f8fec85c09c70be9f96c58a05fd72741a3f285acf33233ab57de3ef1edd0f0f4f815099bbbe355e75f9e4e75ba0e6a311d2e04303a1b8cb2793f3087332176983e246ea4c6318c54df997609074d21520c6ed7114ce5a8f53a0442a55d358d6c1089176fc6b70782404d88b7d676b91477060623fc4a64a604baa0a75b0d64cf2c58113e556180ae45f4bfc07b0678f71ab4199a05ecebf5b80bc73fe675120544c57c6f3fc3ac4540504d4972ed3346aab1f3065c0f6a0b37d3da2d78de56fafe693e8824a495ec768723580914f60f93182399fd12e74b7385b086cb6fa2013326b68c5d41c8949ab2b25c75a847eee0737a53d933d99b34722830e1f42a17a3caf72b38828c75a1a5c3ff4fd80d4d02a18accc3e82510c72f3fd308ed1723ab0e96af0a44a33d3aec949cde0c8934ca58ee72a9066cc604090a22cac5512a561a12c6c0c42be0641fc992f0db1a3fe6619d420e3b0738c3d7e215b3b65cc04eeda73204b0b92f8b2bc3cd684b23c126a5eb40c7e1b4272426d6bd24a6b3612434dcd27fc551ae4b388065232fc90bf5e12d74eb6e330595cb6e333e678e63a797d47bc976cd6e8dd32faf83cacff9bee50595b487258448220dc0a352599df49af87ff7f583e2c73ed8a9f6b0c440ecf4b60e3c9bc15ca7604cc4a58656fdcb9e6a18cff6ea9e4ea48dbb0431548c0365ff75ea4b8534b04f009b2d856547c2d2684827602ce4a74884860c5770d9fc618faf1a3fa1803be115dbfc1d613b9b1eee2625c3c54c126db67a5e73382de6e5d57ae7d5e41019bb7b2c1c95ce22eaec9624ea54cd79ceaa621fff447fad98529a96d5f0b8d22be8ca678b84030fefe0c1c8b001be6b63e7faff1b4121916ec0468729758a44b7617b8a7b27799430e423a9c4836aeec1b74cf7667b3f8a18143d30343ffb4deb3bff1b18fcb4e6904cd9a841271ee8c813c6dbe1895bc190af8c284bc05c3ab13df7184e6a8f14d28c06dc85f6026f14b4bcef84d1f0ea9e9060a6b0edca818fb6324b95ecfac8ee2530187b05ebc0e14828945910bb6919a393570430482cf0231d5c33511d3d7a1c6e5522a04cf0923934b5e9faaa68b5e133a3c48da5aaeb5aef07381917dfa04c853917a1f3808d2db5c69b177d6a61a8948fdf9b9334de0d83f8cd9712d801256ae1d9f2e279c914846ba2f03d897ccc20235da6481f7b2836910e8807cf67da7551c8f12050375cef1fc780272b053f325ad564370f9b48f014869276a04de2448086c3c05a9b1e54a43d87f88276b68acc04391f4676cc702d4204c42078886608c346f8c3769c9bbac9dce84e1ff89e7fa0820988306b9133af380ba0a65f99ab7c42ace44ad05b27bcac88b7a11481a63b5828b982e989ef66cd0a75bce2c0d528c0379f71894bc9de82dd6383b1ff3ef547765d2d2c01c84796d1ad8129093d9cb0f5a2dece639baec17e07f6542c132830f624bb39dae6821849aa4b9abf57c0027100a21634a63408debcf37cb5bbfabbacfbbb61a464ac3d16f610af8a11b7c10b96c3133ec33ad621c35912eb8efb2c1e53208e2be40de6526d5ba004eb0876d5390156353dd5acbc7e36e84db473dc7e056e56af23791ed9c4860cd3a389e7203fa4727a8ffe75d7992c51d7258caa09fadcbd55be365613f3828888b1d53317c9aff88485f1765bccc5cc5050c338e96097809f1244f7348aaacf80c2c1e4579a66aab559f061189e457069b2eea17153a66a1e0b0c9a0e12cebacbd03844362d493728dfacee9a572534aa3b456e7e9dee135ae45b5c64088f457d641ea6c80337e57e3ea24feba7373c96e361a1bece64fab5380c97d6dedc8e9f523a32439006f5b30d52f7417e624ee3c35e925806ff90a4be34bbf00d930db6d66511c8096cc3ad8a31b95aa338108c0a5fba21225742b1ccbbcff748863a334d8884c9a9fe15f9e80e282a05e24b8993d1073a5d6155002804f8ed095cec98e26d86cdc6ea67c8ea5e1a6bb81b29534590643fdcf61e5d5f727301f4138802750e31355e8aef9e5c131278117417872d84b61204d341bf3ee40b64a90177dcece4b337abda520ef54e32d71fa100c3d139c91b319cf11133d13444b91ad965521fc26b2d26e3a39329f356747896ca5583e998032437b834a43bfc4cbc5ebe2c5636aad309afc49c73c7bc223bb4bb47740a4a62731d59feb25351a6d67db4f49fe12fc19eb7ba9db7478de71b76062aa75225fcff14a78534705f06c858ce42f955d0d0c4f01acb4a41ee000df5373ccf4106a52bc4d7ff2642a3069759438e0b40a834882a0f105eb0280187bf785c9fe598e71793d2a6a7654b7c8170ae4c3c90caff78ba9633abd2430536a310a3a310bdf5a0066225dbc7926a9285a83cf1504a5b14010aac3293c53bbb61e63af194d9ea932cb6735eb8fc22c3f775048f33423b23a3a5cda5d34e794007e5ce39dc58fab9401b8e0e4bbbc8dffe4e0caca1109ff79caebc3fea859a77a2ec00dd5ce2fac1884c3bb863b2807a143b69a052f4855f281cc8e10ad017e791d3f08def8bfcfe94f983148cd5bb9cf9d0b2b2c3356ad236df521de9739701dd06c6c410766a22cab8f678079eae728220417b35c6d0f86f9eeba1eb8e11cf29eeda72ddc8dfd0d362bc377233c094fda00977e14246994ffbfd129343dd574c5100b377a874933d34c7dce4b7f27b445dee0d1097510e68c1c9862a3939ca3c7546d8cb604d7d478eade79a7702e4a4821091b1c4ae575942a592ee617b6328fe48570a7c509bd21bb880b3c080ec1b857e3fc52cf0db12f81486a841f5ac29ae4e864e321c5159b6560c481d34d6d72e75e89428a8ec81046478ef5cec084358baf6c231d4221e62b078dcd173c871ffe9f07461af1bfb7e7ac5e6ee610bb18249080ca669d4ffe679d31551b1398321070221b4b2af9849273a021134df12de2afb38612927e0b00e7f82631d958c2d711724fb00a801d101ed850487dfe9df1d4bbe230a27d55e3cd7fd4dff599696e643704d31c1ada64b986a601296baf4e06f77d8f8d5df2368c5547b93a3924522e9f26be8bc05207c85a2c262cc58b27001e5b2f80aef25c803dab7e3739f43709ff147048023a63b563de4bffabaf786b37f50524fef98fd1ea16691738e1e4677e157863e152972b71e2c762b1ef1d1691f8f9c2ca47ee888b30f97113757b3c8104384c3a325195fc6bf4af11d2c4e4de9ae5b3f30cba11421e287e92499fa9610457fa4d847832d82f71c61689658608c4d36026984e8f3a1ba2d363975268666e113b42952fa138bf217d8526267b01b4b5beaa64367cf4664dc88fa18b271007050f19c9089cb7d90d0c6eb615607571399cc9d15ee1f9e4a012f8af081c801bde1a346193507d3cc0752f6dce017e59b654e56483cbae9512b7db161f5d412c80efa265e98178bd3d70d5b192b6288da8d951a76fe9c424a78a5dac98a2fc33838bfff43ead2ab7addcdf8fd972bb29dc3f3b665be5ba431287435d2188a021d31f9beaac7750cecb2ce9a475b4b8b5fd8e77cf99ef28d8bb45ff6d992c0518e318034d3710ee6fa4777d42e660cd6c052f52976cd8f3d76af54b8958002d60b3d92fb6ade347d6bc56771c7692edb7a5fac9132b7ef0baac01199102b5460185e246add038d869f896e4c9a3fb4133deb355e4d91909573207b1a426aee85257f0a4bfdfc2a382ee392b7a25620641bb4846b363163a1d1ea8a1178a43fc2dc48f67d35e95ef2bc3db1a98704e62751d34f03e0712c771ef9e03c8a4c79f3800fb7ebe1301774640d6352bef0069acb012942832af57c98ddec9ef82cdbb358265c3bd3dc2b96ba9dc7f6feda02ec4d2035c7a0440a72695c4c8b407141b02ec1fce711e660b2da1e2e50d53cc455c29fcf44e75eb0845461a8b81eca96f1537c542ed21025504f6ade583061d1cb92e996c9b8074d13be40b1438a25012476d55461dbb2f19339749aec0daf9ea1e469caf8ca465bdaa34ab3cae17a203020fc9cf695d7f0931d29bd6ffc9ad0be40561c8965bf998f69db78ee1141caa4bf143af0762ef707e6af53de957f5c22b0cfd0af86b965f7c569bbbee46072e15f129e1a661c4eb57c6cad4faf6f9d2b8afaccb86beec69fdfa22bc3c3a379170ee34642dee4b5e842a07e69da57f7054f5978ea9b8358d8eda96d8b79019a305008e52590b927b40e4183f02e99afe5256b0878998252b9659c79c43e0a4e14d860875268553ce451f81442b40ac56c45956994573ba217046a3ad889a53300ae830c97b97c624cf2b7a2dc585c410ad0b051f8ec71938f2ac7efce0907e2c5f3c572013909477917795dd32be882d8544ebee5b397fcdc0d2f518ba23079e695ce27ed2aa34668a7e2c1cce20741fd5037d48f4ec44038c9e89beef2b59d3322d277a1bf74c5e42cfd174b2e57ddf2f129c38afaf8c812032a34da7d5f460314e6b5a7f358317b6b5122c0660e056063c8b0ff3b2052d0591c4f58e06057c05784732ec7fbf2146b8661342ebea6d1c88f348e41f1df63dcbcff5a7dad9917170673bb97bff6b417c527de3aaf46836e6221edcf8ef9a8b3c3763ba43b9d4244553dd5093ec3c5c03906468a56e6355af6c7e01e47eb9152d8b5b965936bc0d4b11c47ca077d3da0b512d91ebff68706dd42be2bfac4caf36e699df1e206c001323da71fc8996e07c667b9508f3533c48c23f54ece326751aacbe526f6d676efdb739f09bf4ea98b6f6aa7fd83a2cb7dc286ce1e47c80b3fdf4119f4469ef4c58a2ef46a30bd6879ca6d46fc410bd615e71687f2adecc00f293e7c183493a31a9eaba1e6ac5fb903039a05b034857750299f1adfe5d11e3a503b81a469d746a8d4549d0165a7e1d00b228ab9375aca18ca4edbccda3096396ad620dd8aae93278d88af38c644022a9ba35e64c38d125d777355b9a7018d58dc4bf5cdfb18f2eea4309494b4ad4963ec4dd6281ec2f9badd946ebdffd7d5a4a10412596360357bbaa1c4456a36a32ba7ad5162c7309f6e600beb7fe9c9ef7d000ead73c53ca6dc9bc8f9c5d24d05c671b6927b55bb58d979f00eb4a482a5112a2a30563dfb1677e7be9008778979dd25d8c21743ac13c045d39632f6b0f6fecf7f5fbe0d2da1d643c0a21c2f361c8bb88a95ef3598967a7bcfb8d7ee1b1bf169c342912608463e1763385722c63f1b390982ac0b4f965df2f41dd64def3df1e512281c9044c0f7df9b5a3a1a8805832ff22cd4ffb0e116fc9c9ebaf0fbef54ec6288a3a1db51e2b76ed8db097ccb8773615652931910238424a218de3636ede059ddad033312cbb0d9b7b37b71b46ff8290694b186790c82135dafb0791b0de2a6aa91e58ee55f3592d49d041c83c80359dcea8952d84bd3bdaab72642bd8a64c90a1ea37dd2a0f739fd1c648ece3da15916ab5437cebf38cec3adfd628e1ebf6142f6fc5186da3ebd08a852d464608dd4a190cb6f58685d3972df2cd452782aea6e95d7ae073cda29f2359da94e223088479b89f4c66106b796ddb343aa6ea3d43cad6710a6b759af52c48ef3a30d8130ebe321e2da508c310c23a8340539b62035bc740620647a7a6d782cab1ab7675003572ae931fa7dd8e0377489c4f8abbe9543012a617d535d62f8bb87f862e43902035dae54cf53836579e67bb7b1734c817f1a3383757aa61163a87b0c00e44bee4ea41481f4770e250e956e400451f84b891f0784469591e906929f1de525ecb55804f1269db7938e53acee848d951ec8807d25b29b251c9bd67e54e5cdab843a648bef43db55ff87691b2f2c71247b541bfd28011306b155fc8472dcaea4f5486094019fd58abb973fe071f1dff01f5407007f962cc6020f1a6177df1d1b7edfc922e0e9eb4c5aa40e53b2f9ed5bf58e2cbfdc259aa341c8f0f0c344446672c1f4d86bd210524a154e4440b0f2d90b6a1ddc2e5478a5e0729a30c9f9be5db45d896459e3e2a2875fa8f60bcbc967b6351f4896629fe1d868892d3b3e8d1a2d0431260bafa7d7e627c2e794d1ef0f227d3b40e54124a2e765e418c3a62cff7b19aa8459a502cab8214700d703707e9789c81dc623c39347ebfece31457cca74999b893e5065de4cb8db36f3a9144bcfa73a3e7bb5ea2be3b5434b65a9e803e5855f9f7879c84108b73fe3c2bb5c6f627b4f6d2b96ec42434f461f593d93e92d978204a297cb43aaf5fc0980057cd64e48f9bac966b68d56ef648516626a5fa32b2a37b0952d9dd9075b63996de70cea9ae45a33d221d6bba389acccd70d8b00706b840a18ad62e6ece815333832dc432a3047e6b24b53e54b1e802b17c04760cc00e4d3906f8abf1a553e6766e6ed2d1b991188836a9a95b17424201d29cb1fe2773c383367c9cb5ef596b56b8a658f3134594d75e2408e12f0e08d5072881e19760b9b93f351e9bcb1f9199f82f06a795f5fa8944ccfcb4f8dee26235c2ab467b00c4f23d6cdaeaa63c9dd039a1f9e0c59a38a3170ae1c23d94e337f49ad34fdf06ea0800aa9e72cc640f6a675590425c337a443eb915194a6f840c9fbab97b97aaabfadddbb39d67b742254334823d6442e2ba09c6493ec88b8c009c3eef33a4a51dd0da0a6ed79063b2b2743beb444cd41dff1f12fc2f77655dbd4e4abae401a7886280d25533978bf75006d41e67a94fc8103bc12faff511e97076d5c53a1c17a19a5fc0796032a9f21cc042de9a0a66e6891f83d3a28d49cc2c2eb6e3034b1ff3bda05acb1a91e48bacd0b17ff442a96aaf3753e731d149595939baaaa99e90f127a4ea12ca1dc76468d2f7f2aec9ec5a1d360d4fba4f33e8a31dfaeb7e26cf94d9a62d67bd673abc41a059cfc105bb744d6ee337b885901ce4e74d7d41d4f56b297e876567666e9c32ce3ab17b3cd01ae670e1691ab39c86a545e657afc1dbdcea82ddef14becfa8e28fb3597fd57177e95f0956279356f79cc7c779d4860e56a67006b06b810e6a4572aa28bf8ec6d14a3b3a3039e3976b9ad4e977c0098cb076b33c03078a47b6f967cce113b8a2b8cf6ec951cc486e89687c2e1796c3dfaa3d0f692b6b9bd5874f6f8dc9606e7753921cae3d9ca5e3f0c8543ecc04d79c8038707f2a0350f9670c04f346a6f31ea55339c96dfe706c5d4c30a97765c83714cd543223886f512728de0b2966322eeedd68e2faea7a4e96a2a3e8e30d9dfd7e96aed4c174e7faf49602abe2eaaaa6aeab1e3e4dd178aa3063a0e603cab77f5c86d324af92ca8cff45616ceb65203d9e4d23a41c8e59a90bbcc957a4a9dbdc6f512c589ea9fd934adeb8210b300214bab352576d96be33b0993e278054a11e21d37317b52fac80489419d4f16b021fa30c23003a8cfb0a4d302a001626d0b44bdc142589093c314b80e01fee1a008d9f8249fbf6da473d373227e090549c610c6ad5ffb9818f4b570cd1245f4cb6e80bf26e387df1f6c9ccb5c2a88333a18cbc59fc99c56ce8d8fcea9f0c367c6595934d1d8a4495e6e8b2aa6097e00b24e8454ce65f506b4e0720ae299038888ccda6312cae6c974b4fb409a01251889440afbdb1da4c18c7d5a32a5748e758e795f80022a16b656f9725f67a3630aa597b2e49c0490952848cd77a81ee49062c3112b40359e552a856d19a9b4acfe8cbca7b19f64da08fd05d6df2c4a53160683bb1cf71a2335ddc87da4ca3cc281fcd6411a1169fccc5b5d2baa7566e97d512136f882edbaf95adb4a16bd17f888ea5433d10ddac346e59be0c370984c6392891f1c736c9aa0b85894ee658c251bf9db9b6c32ee331c6e8f78dd5ad773161e3d7e5536f6b39a53c3f5ddfa1e6f3d40208f7abefb6492995c339669dad45a374b8c00d09fe4251446395a1afac2f6fe72847ff84c4ae05bd70246f072cd0744a66871d00905b51fa4c69c5698230d836a53596024328abe4d29ea0ca7603c3fa69d6d24e1403c328f3a3027d6bb557ba8e8b5641aa9e28816d36175e13370c2a3297f04ba09ebc41605b0aac017e4e925ed511135e306501874a06a01a4bcf4a0a6c2a1c9fa2b16d5d31e7e307c4fdc7af896a910901023bcca62b250c5c74b68f496564990cfdf41c6b653419a2493bc88beae5da59367568d1ffc54490ff9647b03a6b52abcf28b21e5e6a18f073b2c0fb49bbc9622b3f5379ffa4d86f366b64a8e9293523258ad8fab9a194d1ee513b0c89663d5ff7bf1e536ca9e08f9526ee1efe73da6efa4d594dda8867c961abc16f0f2d022798bdd2875ec259c22d91e1daae427dfc539e4ed4bd247770cdff6c90e781e6ee37f89356f1e300ab0ea315d9996b55d39a80b02e8ab60865a57ee4d81b6c9adec036d76438b79c2f47cf7d3bcb2e1fee08066b16c9baf9c75a41c510ec888cae9124f94fa086a77ac42765d58b44b9675e11f54fee9fafbf8242207917323c5a9d9c80523f18cc24c601e804a166b536015421409e57c38578a199887f1092693024f5ccffbd330d18a22b82da0f46253731dba2d5a164ee8831ef55563c5acf240f208ceb76dbc51537c9c1c01173d33dce97400b5c017d4415a961a3ad4aba833d810080310141ffe9efae3548193bdcbaf222fdd80411841dab71bf3df75e7204568e0becb294edd623611a32ae92dff925225db253aeb07967a07bff3753d68109552c5767818725d546c7394418bdb370c91c7e99a6d8f4d0a1dda7432898c8dcfcfc406a3d6435667a1625e9a7a52b404f26434e92e9a12241e009d28fc44e2c0cc717d9c89eccf2904e31cdd5d920c1f5e3034f8773b3875b8f32690364cf55adf3f501f5195b7e852b29139bd8003a392cf8e64522a3546d3e9937a868567a6f18d23e2be86799cea322553004ba6b16ee412d3b57c374b1ead9d08e3adffebdbf049ae9cc50d2386f60fd1e80c3dc084fe0dd1319cef8ee030f6db85beafa92715e892e9567b4065347a44b646a7141d7c009607950d97a28150ef5073f42dd9c63895037578805fb59f1518ad54bef831d19a6b94738d275dfb4155a543596057d3921f4071980982dc90249ae2dccac08edf27a3fd9ddbd7be9c8186d6b7ea9db11102e43f3313d4dd4da6cb68326fc894029456a91c51db10236bbaf2e026243cda235789c174800719affdf68819068f4d087b7a2c7ed0315d003c47cf94144eb25e884703b034451ba1c192113163fa506b99d5ee691df98998aa0aef255d4dc9549cd4b35ba51fbc65a76efd38caf46a83d766c1059584c6e55dcf95eadfb42eaf5198a44a32c837a04f5756b4eedcc60f31d54ec2fbf92f4083fd8c909803ce0f7d99669c705571a5f392442f31fa1cd050cf6839149807ab649d8efecd5a5422a2ba4e1d40cab95e68a249a62dda0a68da7ca5289a71047f39cddb53247c23555b45a3dc16125cec2a0232f1f2e374edfa77d5c9629c6330a5acf699ac94f5affcd041d9352e899699ccf6c6d44a3235e46f0b504b6c6a0f40fb650f8f8695d8a28f9462e6a6cfe37f96d2f459fc5773029b9c9958b0251a597552f5a5701078c2bb09bc929dffc85828302a7184af49aaf15465f61aec4fa901202e81e75fa048bc9e65516711512175c481f8aaa002eb8a586913b899d1fce9293f05ce1e7ab762badee53ba6559bd48cca73d6fa54f178aa9cf60f9beaa670d4a003a32bf7aea88a40866a4ddaacd8dfa491e6075f753292972dd0ee5b172374a2b6ce1bac7a287cd8e66125879fb9446fbdd188b200d0d1db71e3c077ca8e2ae9cb63e18b51a3bbf8f063df0759a12ce289e32f9f1964dae69b9fcd5f7a90e11e3413630820970607421c52668d8115319d6dbcac9d077d8731bb1ef8b65f387277eb66e19c0b382533f0e415f7ae8fb09140ea89b06e183c430735f420cf817a19b6370dfa2bbbb241eed2e19ad483f2f68fea669748803aa490afb832ae21941fbc16f2c8a6c58b95d3ffa13d389a9d0f073ba0f76f2e448589b73c1f71af8f8cc2aa88a51db52de40abd31d1f8aca6a46383d750613e70e255e2812c5f044b4d99a37c7726ad92337b8cb86fa2974d2f56ab74a6f4cd671df85808937b89572ed958d799c0be8bf6f8f719151c523cb83f86af92733519806d21e6c7224b21e6df89d052c882045587e8bea06feebe65a33cb56ad5f740bdf663fdb651be444c5c210f2c96bdfb72283c1748402d86d5b5467e94f457bcc7c536d910301d7c4313fb0ab4833f59b47ec324b591e3dae211ca1bd0230ad6d6f860969d628bc2cacaa7117ce57b41516957b3fa650a826ef72fb528b79664e0b24a12a3476948e1fff9ee5a8a151cc3643e176c7e89b9f177ec20cfa1264a00a8781d7813d98331c9183366e19370830841604d2c11838f2d57e6cfafe025ee17d3fc0bf9add7fc7142e182d6e2e2e1ad343794c5461cbeb44f0db655697b26b82d6321a1b0c5fbe3ab0b36c1f25e206f039ce59be8e63a747f886af34d85a60c3d470ef082dc38e7feea1f5425e4f71d88dc9026172117db9987392ae3c9ad851011cecacc37707ab9cade40d0e9c282f0749f3e8f904c59046e11f73e4f020748165a68505ac34d407f0f64e51f12437d90b5c13d19f6db83ca2b0a760da224d25625619cebc5d4fad36dab82a566ee67ec10d50c2d5b76c21d91e89dd782f08f043a6ceb3e0c3986a093b74a60453228e0601b06e2c7303244d9dd8928c529cd0020ccf4631f73ffe5d85e5f07664837011437ab144cb4ea3f516ee649e77475b4d0310f21db691c22ec3c6b38a6e7cc1cbdad60367a67873152dc1dc23803d687a619c3e0d89f2d015fd3749f74cdfaae48ec4610682b3999993d0642e5538c50f17210b2819df9c5b01395b6e1ba6b374676ac0241c29df5a26efdbb7863d55800ad6c4a083dffe17e19e631f3d8a7b0d6f950d4f86bb4c6f2c5323d8f78f9c6280504afce118257b4a98e6eb3981137a63aa15260d7281eb6616043679802f265401971f013f8814eca6d30b6c33525004576d1a1c193084095e09ccbd5abfa81029c7f5b47b3f7f75d69e9d58e55f6c33126e835fab15ec9d9b28ee798228d4d101c1a9e9a3427901cc045459bbcc8640ad4e2b512aa810420bf86ae283d5ed0d23c54bf16e10222f387c4014da305a518f1da629ffa7108ea9bbde7fb1b2b9c380bfef50b614d03c1143e80a1f4404756884ea160dafaf5f62b5db7fccfc6cf1d0d65eb375c29690aeb7ae6d9ba01f25aec96dce2091f2272f2431e8d395d02d7b7311750a77e4a9abd3a76efd034dcc00565ad30eed0eb8cf882ab9a9d25fb1e191b39272e9906d2266d945f59f7c7312b05ddff856d5916dcbc651da886d5a55caed0f62b0dd2ebc7f5e046e2cd9f550c404195bc4fd257adc3090f2015da4380af1b3f1cee07a7b229869bc9081d0dd759dcef5445cf4ef4b2211f5831a0e0e46c803910104bda1396427c70d2877521e753f1f1f8ba88433dabda827e420134445cdfb7bbde0a2ee9c4696d457091cbe868d10e1a6720a5ceb2906357e542a1b1082805058f1948ee042579987f6c560178cafa2485af2fd67cf2be82b8e3554a3aee35ba7baf6aabe19cbff7ff30eac8e6a77ddde223384b7b8c8da063f05e330282c65ce8d75882264995414b975922662618cabece585de67103c40c581d13b06294f0dceb28ac56a67352db4431930a6fafe1df03fa75b8a34a809a75a5df3cccce5216a240fcf1ea65a3e59dd572e9af0348b6b95abc1a2153a77c98d8ecba4750d7d04117584710f3e0a9199ff4b96de8e50d189067f0342f52e53281acae857303ea080547d05bdd8cddc38d298b90b17aef83178f589213f90bd5b2356a1717490fa35435d2c73f934f34b2227ea89856b40e4ea6bee7ec4a6ab37def41d495c42602ab64833d476593adc35eba84abccbc5fbb6e0a0f91149842d7ef0aa97519cc761689c5971dc39c3dff9ae86fc0b07e9ca49bcfe0e0fcf3ead348b31ff4f768d25947d5eccc9c93d6b26129f49c33db8d2d5868476994c90c34fb3e0804be5b71a7bce1baf40428cc39445735313c5f2c10284506e711afb074e182cdf0b23acd5c3624bf1b528fc18d03af33c7822dfaf2384faab613d60c596f3283cfc459561694845f835eb9062cdb120110e5c3f51f4a9a2db7aa19d3e8a974e953825b3a4badc1b97f2ca6386a4783b5f79e44c216669489f405ddb4f81381c29d90d53a5ce772b6e477c03367684d96aef2d5e8ca1e86a5b1908ee3e45e5ef88cfbf6bc6b26f576265c60e3b0c24fc1489b3b9a9f3f81f1e3f3fc595cd896eb5c2d28c56de7929944c3bbc82d81fcc6a71841cddbbd01798f35d13b36216963b2defcc7d0bc017a0f474ebabb8da5c4c95cd91c97dbb7e9003b5600d18f9ef3dbd6885aefe273c5f9c2d9fd4eb7d5971cfcaa3a510ed9e272f99f36613501e409b1a638089bf143b1e2b9e180b10f59d95d3cd38486cce6cdad963295dd456da434feb22040a2f9e97ec26509c02262bd053173d91ce80fa9f17946fd0c06d6323b9be02c2005b613080a38988da542ae67b7570e6440b183d04d9e14ab8d96d63612c12cbf667b954c2b5a1ff76bc76311ad0acaec5db3f41f3b75dd3381cbd2881e0b35cf667788f4e880c5e3a8d4fdf5e5e0361a6e6e3c0fb0e6601f7125153d30b91ae1248125ab97afd4a93af33299b15355152d39a35b0e94becae87a3e33fe75555551a5412fc0f9b918cf1d24cdaf110d262aa564693db96e86c66a74ef98abdc3d02783cfdd5d4c420e811341a5edee5ba91696c5a837cba577c61db54c6b1e911927308e0f6ade706cb21cf7d097f9217f1ddd54281e020611e9d2990117e9983766293bb6f5ff25e54ce4e6f5770f826d86f9c0aa976e387d20a18864e70657c83b1e19f3797e4cbe2a9940ff9cd741c495fa9d7f263c66a80be943c988ac947601b2488a72740c61fbfdac33cf8a10cd8eb797ebc5e8cfe73c6aeddfb08f04834237e7cecba03af6f8d620f4c568b1eb05d529283db1e6f76c4040e7113f271137958cd852c1792630be805578d81e3fc51e967b14cfce2d9fefb261fcdb9fc724bf393d677686c57183fa003ebeeda9107f611ba0ac70604645bdffc8e5bd4135f8be61070742307e09e9f1bb61279dfbd9ab974ecd5eafe4f95a5665b612172e7f195d32e8265ce475c757caa37cc1de5f0fc9ee190591a3a321ef0e7a0369283b8975687ff252b96f4f8ad81665a08e6aed915fd8774f8d86da7db8e8ca8065bcab60bbc629661813ae17bac9e73336e87dfc0e9e5ee8ad4f03691273351558b59cbf11839da3055fbae49a78cfe58536b23908a20e37f7432c92ac6c0e7959c124dab64a13cd5f6069c21b1a1669cf0c6e0129f9cee2cc178a9c38e3d7dd20e6da9500c613ae201641bde9710ad3f77779e79f37b8062886027b450b100c6d3e88772fac2ffb419a2be5af89f7811b775d387a89ba97001c3658a1e07fa5059f775b390fc241428555fa75ecbe73b7cc857b71a560fa49b82e60c5bd19af3f1676e59a7ab6069164af39b4a109bdb36746b2d7e9fc07a46173b0a80b6e7043fd69b4e2f0579a9f0d7085350ef40d7b9ee030c1f223d714489549db4057244a4cdaf621c64d0e0c71cbc900b9514202d2076cb8a0bd3a8fa4273135838bf0015c71071f894f8625975b935950dd44dfd179f5ca345fc1ecdb799ceb2e7b322ffc560649d1f2cf7181b8e7057489f3044cd61324583df1d5f1d3a6992c77486bb9280c2cee5f1b48fe53e25b59237b461c435cde325c98cafff8c11b60aa5164fd955fc2e8836b48dbdb74f6fd95329d14d3e2f57c597594774212cc5c0c0e52c25541777da05369c1651b759bc1dba610697446b89a64d67ecbd35d10c997288f93d2d47c522e12262b804ded5f24a8312663af5c7da84c496153abbd660c62c076d39f2242695e5a409bb0e6737f414f03ace464d5be957de7efa11d855a66a2e47864de031a417bd98835042be4e25b8837acd0e8e3ce651ef027ab106e5c2f5e725c539d27e3b9b6b2ba6fe803a7f96d42737aae75cdab68242496e3853567e10f80d5a5b9a9b7a72a7a7a6545a1b023eb6b350040337e23af386eb65d05edc07f6dfedf99f1af80bbd9d9ace5dcb1ac3938603669ab54b7e45db60aa61e7445b47bd9f12518cb5ab742b973e9c241b74939f3a9e0c0ec7a0bd3125024299c0125680af57c1d7356f8a9c6e41c93bd6aa4acdde0bdbdd18e1310821a7847ee23a5e7227f8fe78a1d7c8f9454c2997396c57410f18e4f1ced48f61f6f633d68e776223ce73559ab981bfb45c26d862dcd4f5dc1e287fa7fa8fe89052aa315f0c3f8df734af7b7c398aa0473dd1f398431adcf4a36b99b7778ec8a44917e36a6eb2e10368872af78525696d98e3dc84a8feb169dbe53d4e7c805c1e9bd705791b2930ffc9fdb3b9f2c5f5d879aefc60076bd52d36c146f3d46e335ddc733690e884d27b2805b78e003478925265df9ab4013ba007c91d54227b373844c9114d8401283d27f042a0eac19b438a266b489ac25cc32a9f498d40a7574949dc35123b302382fb26116e97734d57492e0da513ccaa6982e286602b49de0eb331d6e6407eb30f418730350a8d3a555bdfe0975678e4879c995aab03e8c000307660eddaa559a377fb85ff7b605d67d115ddaa163d7df6a209e5bd251aad3acc02d021499d0ed0a34be620dbae6fa582f63dbd76edec84a032c37a2b370e6f3648f4ca00d262bed84ee84ba37645636338dc7b2141d7172fe3d93d469da7c0487d70e1be249666941cdbbb71f459bcdfa22bba13a0f3f4f2f1c2d5cb12d78d6840301d83d3dd9154068a831d25a2f7febb92d61b4505aa479cc7eb3f6c290ac1f846647b41030140e4bcb9955020037354e7dfa454fe94d3a1a651030d85be21b72314c92bf0fc4b5296353c2f373dadc385ea049db53a6efc8104a03f30418d2ea4aa9559010a085d060d604f90dd97abed11776163b67ebaec7147dabd55a0090412c2c0695222fad7b1e628a5ffc445958cd6a275d68113e8b96e80feb3d7a8151700eed98b543aff51ee150c1e3688360e4bdb06849e6d5553849bcf742526e3f498e2f970ad19a0f3f39731f81256dcf1e8f7caa2ff219e84bdd72fbf638fb26067447e7777b954647fa902649c8fae7493b60d282fe6bd76df38128e5d0992115e0d61d1e3e0659e09ad7854c89c2b730f903ae43545df4c3f0794b807a4f31fb526b5cf72cf432cfd2f919b6c07a04f10b55bf3d5d8962d5c13e898e6db519edbf63fce42dbca2bb677907b64fdaecfb5460fa4b419d985a5dabec87733f5b290f3ea977f057af57e6b2ed95197f59558afab6de1ed854d65ea72dce024d182b3b448a034dd5134901cec621b555409dbdfadbb6dbea3092b7765409a5413be60005735f651641578a409286a5ae9afdd758999be3ce62914ad90af1f6b50ae39788863a961dec659d76f88ca1645d83f7f09892020328c42785fe3a696c6c77acdf3c49e21ac9a74b6119a509fce11ca7a2b0ba9085f8f7a22cf666be1027bdf1477305f2e61ea134084b55945ae99063e19fb0f4817ef82c49633a7c1d207279eb224b071c0720d0158d4231975519c32b5941d1dfed9170c0d8c415991ee06c72d6380b70ab74b16e3507da173bb9a4b857837d50d80ad249e58b513a42bfb3dfe160cac330303bb69276502cb953e5f173b57adb2f65e0097c88f8d71c56b165caf9d5453e60048cfe5eddd09e7f79ea5d61bdb45c25c198f7373e2e3b60fd815e4184eb416b09723ba0a7c197a5209961cca1b8d0eb6946bf66dbe86938a4ce85a4ab97d5cffab0d02b9840d1303697581aaafa4ad7505736e6098e024c3b9b9e3b99ea75bf4aadd085434ccb9fa113ab7d6ccac8eb4b56242ebd04476daf1c1ddc67e3e1fc765a0955f5698e36d0cb6ab1786bc83525f986eef4483434e7af48e973ea2c179fb2969d293a49849f992661c97254be8867ccfb739c18a9e5096b83b97e3d918e31f2120c0f6b0ce42345eaadc2be52ea9b697e3f4d450d16ae02400eeb2370e0c586f06ebfa2caccdeb04db2de75bcbc1714213e136474dbb9ab1bf34d3ef98b32b8b6d52b6349edd1556248cd65c0bf11d7fc73ef00a6dfbb05a593834019d192342d7a1059089c3cbc7464402736b0a63a04879b3667742aabfa82ad5344a646aebfc7240e8684c1236139cdbd7fa73ef639df2b28dce65b193f8afe2bdce2fb10bfe67e2d56d6c3a99469f29207810d2e1ab19f07a5233630ee296073d3b6f0a450d8db542d3724c9f3bd5e50d95fb8ad3ff753533bec0f9413a12492399391c7056ac3bde7f57c2c366c7e5336f37b49ef1aa115397c60ab22b792c9239a878d9974142e1218e5bb0e819a4b4f249ea19671732c027bc931f8a6ec61a9f1e752bea1d96694d3b5bd02182832382f7ec5c7d7916570da19c6077861bdad5e41cf29296985b50aab4d7c1278f56a76d0875bda916dd179c687cf10a3672c65a1bfd61fc15255ad1217179abdac7d0f5b413198900b8e2dc2e4ecd20d958579b30b838006d706afffcb368985602af397092f76bb5d08071f7959f16c79337f57de726c441b7bb7587a3ff5c052460c1a273e0dab15a2512c4a40f5b317b39c86c5d900c40bf054b9534c7fc05e0cd7794ae2fb5a397971713ee053d815f1b918914a26ee2660d7166e9dc851e3a479a2338ff83e589f56184a88208bcea0758e569b598cabee28c50ad6dfb89966e15f9bc6b33157226414bd886fe6f95b2825d646def0a61067d30137e4b82cab7c75f48711051f76f6e9277c54be79faca85fef45b2a84795d8b0c2e0df5123b2e68f5a15651372a3e92259489c104e79b42bba6eaa096f6fa049b8aba3bd383523661cb70426933ceb14029c6ad0eafb75a704f0f7fbb36fb0257d7f00216a119736a33977a3dba50ca8c886ea3100bdaafb8c34b4d9649e3163f7b663d5390eb5a47889c5308950cf1e7c9d61587067b0a5a1c40f0b897ea9151a5ef4e9019681c6fc401b140f3a19ffa42c2eeca44f703254377cee0bc171c149bfb2c7d8762b65855f08c45c0a00bd5a5752cf448b96f1ac799e84a1cb7a1a8482a47e8d781cb4435b45625c296ea6e73df74a56aefd7b5c6290e83eb09a4b3bd76b0a0306317da4036bd351989abe03c0305b6af4a767ecb9d1971285adac373fa65dd8b2814cd81a66d0746adda1cf719d9220731f46307e4aa0bd1e6645ebe2848bb910f1cfb7b95a63773de5cbc8796863779a1cdde1c9f0c0e8c5672b4575e3450e3e34f4320242419b1a26b0085b1905e578f45ad3ad4b9dc22869eb8f9b931872719cc0c74f0ea6dfdaf55fdf37b7db777159e11f578a307268b5c0a0365d82ac901ec47bf14ef28bb957dbf323859cff1b1db15557f78f10bdfba5aeaf761aa6255be31c7bc310666c3985d6b5e9634419c566df2099660febc6d4671a69ec07a6b0eab1ade3e09b10ce3bc27d0eaa7fd5a7b70da44b5da5d6cbdf55492329402c94b5b90cbaa6da166ce8fa3f44ff0aad8ba73f8af1207359ed84ac5ecd7ba0db79b3d91c9f40fdf889fe24c06d0a33cea8f317c09e385694c5ce30d1bce4578ebff09cf7a972a104aebfc18bf0736cf7c8e5326787283aadce071e9ba63b34664d63e226cf55d0a30ad1ea91a95950574d93f9e930cabe8a2357c9c46a7c3c281be3798d9676a65a3c8597177ee26434caec3cdd72777aee44afe653d7ecc2d77a0f811e30155c0ca86fd523ebe127fd5fcdf197b67420df01a3677fc15c374ab0d9ec502841894c859b394fd0c89d38f821707fe08804a9fdfe5ed5b1532f7d7de280fc1ae4b589ab51559c18affa4f4ecfe53765c30be19a5ccb98c151cea11cdfff8d17f15b856672bc2a9cb2c5d6169ce3d67ac79ad6ff04b62246e43dc3dc35429593616ba0b8d620ce2eeffddfb0efc76fb9138595b0023fececc3b275e717bd8a9877316cd2347d83b25ff17a7678a23aad85241af1b904f293112a28c1c93ad60c83c79c2023edb8f95b2a36e6c2dcf2ff2d093ba259d78de468654964f987d1bb250f9584382d22e1aa9f93339cc3cd8aa495987c956ef9278003804596bad3ece00f5289ab437745873c175953fa6256712013a5e29a9b92df0e32337a471661e0f157492d45e0589f50727238b38a6bd36b86cb745121432e6240d6f8f3bc82d1413cbbfde8939524a74eb1117a255a3c7796c366757fb0ac9f29702ee717c530cadb936187fc37af090a043af2d7e528b7ab93aebb4b52aaa81e9d351e7c5bd55e486f330b2970280f90dab768c54784ef13e7a0262d9da20b0a71a205d37ff4346670c206e994dd38159868b281ea77198d8cb97d8f3e92e5cf485fcb59f1a3cfa2ce85a88359f4c3accbd9f0dc34e39f9b4ec9ebf47d54d3de299e321fa64357b457ac6ac0eb56458d9d9962deffff48ba8912ed3e40af8e4732391965a372fea23b1f958cc76fa1daf3097d201d1a35270448c89f14f224168a384b5e53e33ffbc219251c6746c3c5d2b1171a0e36efe2674fb65b0e9d38a239fff260f6b51a959468734ae0b7fc63a17d01c78f4050a8c024b9a3733594cd03b46d0de425417573f171894b26eee807ec34c22771645861a93e5accf7d501034075ebc2b67de349cc7fea0242cf49cfe1319d18be9125b96774d1c91548384e5caf75e420b6a378ab363ca2f86037e2098bb5c001df6b01f610867ae4d34081874bdbc66253c8de283909750d2bdcf24a7da6010a2777599c47609e61e78673390f5574a1cd71ec43460a5d9597568724dfbe872670f63ad91d1738ff802c4ac520be247221aa9323403029a17492bcd3a07435345284f3560c30562c6b82bd10a72b3ed061596424c3b10dd0d3114d31e873282943a7e730eed6edccee4e939c98da590492a159c42715d0d5651131515e8044b656e7d1c7733e9e01b0578b62d1a07d05c9c81c2b73a00a61a7b085b147b5cc75a79b632560f218364fa4e954e4f3f5a5dbf2d60819e994aaa278bffdfd7fae87ee0e9285a69e1425cdeb371c704e2be2c076f29a930c7cfef871abc9643ad305b3e15093aa33ff7a44bfc34e96a84605548e4dc5ca474f754c1c7cbe7a6b3613d6b1447055235314fde68e6b14efa3d33f1a2f4b2213325d26ee354dda6d0138be9b07e930141a432691f5ce2046f0d4af47f23d4543232d2fe56594265d14f8d0a5df27b225578956b901f8b1b8ff14ee937e118b0151771d8634d7069ef3862f8c1c516fd9694e577e212d84c71d262878a8e4cd3d8eff62148996c1ed81c716024f8b80b1da2cfdc36957c46ced66a1b2cc70098a49a5ea8938bf1a00e7d738213496160ec76c4a9d82a2666f64639a02ab85553bac1adab4ed218a646ea748bff019d58ef1918ca7ed37b924e443f5d10e7747612a1bdd8da6b5ae65b68768349bdd17de86dd192144fb3774d33691c9c534afa7b5ee5ae73698d69f07ce197ef8fdb51cfe604f6f79ca670d12d4ef96065ac3f2f1f75b3360268ffbb8bb9ed347092896c66de924f1c27757eac35d0ecf31b10dc24842246b5b36325e3ea6ea3798ea2dd0103dce3e841753f9a1d281283ed31a7262031856a8c977eb589510e834edb7bc1b43f10d897fb6d6d1c3179b09176b6324dd4ad932ae7229d8404a5f8266cebaf6b8ed0c467153c1242d9fc9dc349f5d39054463dd662cb3c89d4c29029e5deb3af4f98aab057b2a61dad24bc7741e5bd3de64e29e833d7c8791bc709c19ba355a69a58a4cc5d30e64508a85422ab9aa92bfd80a13d1fb831555c3cbeca53bd79f1f75aac8d1a9eee028d73e5ac8ce05090526db30df318b4c533ed0b2fe495f66a358adeceae77d90dffcd80cc67adebf4388d696419096be7967b73c56c1197e9501434913d39cb2437136e6ece87ff3d1cbd1c64174aec7d2a08650e8ae29d4edda69dfcc9601f19d293768d8247cfaf4e05facd711ce861a266b7d3396de5ba11c9266b695b59086acbe365f087ebe31b58a9b29fc31a5b21ef228ab2fa271d9d3635dc54bc376a1cb08c9a91166f913ba6edcf26d18ff85f985a5476b95842780d0c470ab1ea2288ca0f7e9e3c75f6f6f931cd4241ea52cea8527a8a1ecf24efe2edc25dcac93fbc528b20fc1712d9831bbfde61a844afadc4465cf37faa249e0e193ff544dc595bdd8fba9c30cc2f5b2db76925f95310a3a2913c9176212edb9635751e2e0b0f49756e035d90a885e5a15d631acd4649106decabc1828d63a478ec06fc76bc20c9083983988f06e5652fe6da7f73b61cc4ec9f8bafcabfc799ff40dce3bb0d4a55d51f0bdba67b6d790eecff3dc4eb93ef130cc96371dc1ff54ddd38880ed62c80db0d2f4271a183b5903665ce7d8bda24c6af5efd8c0c6467a5efcaf99f736249eef84c88775434231acc1b89acc8028d18452763f8464a35c68d62f6453662724772f48900001fe7c935dcc125fb379cef867e8e5515852fd1a52e57bd1933f7a1e7d739106c7357d1db1e199f4ec12093a72271611bcfcf86443be73864231bef0010597213bfaf7f68c98de7fff34e7daf1aa809fc5eb0145863564f3723d752012639f5faf1f4c8fd2853da27c2bef22a8df0f9c18a76a40d8ebcd2ad635f3cfd2a3b0f99184b0615756bff8f4b84512e82797217b13ec46ffe793406225db386356d577902b1fc079a66fec645424193163d1b8cebc53128a17da557270430e73ad225cf3561795c3b7804d2effeb1a367b6d7bf59b37ffb02760e4b0fd546fbecdab33eec28695f2ceda158385aed5ae638cfda894b0224ad60eb53476b7a9f2c352c4168dad8273f03ec713908a8201d30d4695031d82d2027906817d6ccc0ae97d7413add87d55d6f3b1845a6e9bb0763a00f5bdec49b29bf691f678d7637d61bf7086ea6501c206c256b0da0d69eea7f4c96d1323d3ad3cabfa22e7658d655659d999e745fce2e02a9dd7dbd7432bf886b27818658364e4e43cc528ef9f968938697dcbd83149c16d3116d1b94f848c49af9f1e2637822f978c143a03198266cc6044319b972ec0b1402c048cea4bad702bb82a2df0688d5fc9f4afa08b053b4bb2736e4dbf323e3fd4c419ecd324c81a80210129d4d180b515003d9129725ee7c7e55584873f8ae925fd2da843fffbcb98c28034577588cd86d58499081b708fa1f252d4efe3d68c5c213634fba361e0dd7c45403daec2f707b0284481bdd954d890c4c2a8213fea03699d9bad4fb3d695de768cfa62b09fb5c10462ad4b4cb4372104441213527818492ab91db36bbc30319947bcae4bd0d97522423d2ba713c44493bd1c6690914851ffb3621ed29122861d922c20b66a8a620ad8a3bb93bc01a2cbdff4cab14f0bacf84f3134247c2307ab348b880ebe85c53f2a240941d58d7d475d4ac38f343a00262cdffda0b9b43602cf2fbbd3f70b76599056c2b3618ac0bfb720ce95f52a8dc1c14e0853c1eb0cfc2fd3ff59a284e4377c60c8c5308cc54280d61d16b0ed2a3e3b39a3c1e7130a7ff28f3ccc455f46c47c701fa1a70f685e14031b30033e37e57405ee1a2989d3b28adb35f7097965ce1480871f2ffb513c99006ee535175650295251a20bde3a17a5dbe9568a18a2ddc7586d500fc7471c9785a31ec2387565647e9f1fce8d66f13c3b6268542ba3a443e235970f7df237bbe52fdaa1a0db00914c8031683bd3fab646cc8ec60b406c32820cb1a1ddab8031034c2d361b3739c196b3b7d9823f455c20e43e58b0a687720a27b9aeeb69376a9a127e08f68e9c38e3bae77ddf3f595464acd7c771f1b41403cbfb17b61eafbf63b1388e08eed2fcc1cf4df222387a3b0bb374d2212728a8ce2205969cb50d394742ee6c18ee03d49c0c1268f4aefff4794326f07d9102ed805225a93e6e26a53b8892f4949b709a8ee64c2dfcc17845893c22ebe664ed3d09e5fd4b47c68b738f314b4cd38b50e6aabcabdfbdc19ef11effaa48c1f3faad299156f996e26f62247dc0842ef57f5f8658948434aa334ddc164ba65c70b3453bd8651249447b8ec49485c28636fc25dc019ec03bfd1372e6e1dade8fa6f3c261eefc242f8e93fcba48c70f4a6d8c42c8266d2ada242afe965e289dc481d2a7e6ff675d05d5bcff390cad892d3583ed2211266233a06c0c672eb6b78903b4a2c46a94eca0b1a1d457bceac0ec6357db98e3722956b78ecd09047fc2bab5acec9a138bcaec130fc5eb8927c6deb13dff3e92d8b3bc50347871b404f943225a35ad1d5442ab5bbb5dd39ae5ca1fdf08385561d70a45fce2be4715a727b766da19ba22af9bab94cf5ea01b5662c4c303940902eab9a9267c9c5713ade303d05372418e14285de3b8f1482633d70cba9c906cc1eacac8a6b99113ee57df71d1e679ce77bb6e988ffc1296841d5ea8509e0e7b4133c930513affa3853f282534b4cc480fa580ec4e0e0ddd5b704335c6098982befba24e4c710963a689078de3166856d6a3616da512c95c8fd5a9699b4cea534e9ff00dd0046c4f0df803179393c54c70f8e33ff6a1ea617a89d13a74a90fdb48681aefc7ddb134b3fabfe3a0a9ad8a3a9ad4e22af16163dae8f5c91cf034876e381c44ae34c141b2acaf97d5860296ac1e8adad282bec40efdd0374e88d632f5f3a041a3f3bd20ea329e897422b518f362ce488b732e6e40af7eca9505b8cfc88f5a4a39bdff4c6434d35b113c78cf504e9e80fb8142ea54b109a7458d4673177410f2cd98ddac14e1bcbbb67dfa9af914a57c84942a9de427a67fdf013858399f358378b044261baa4ba8307a1c71a5437586089e0eda2196da557a465e668e57de2b3b8269e076647b9196003f2198494cb591f475ea6d1dac33c50208f21ad56709afc98878308996cb738e7a918f56a5d20af4108af1cbe1bb27c8cd669d8833887ebd58471efbe46cb17f1778038daff155c673198d21bc199548e3cba986d9a84b27c044bbbf61ae12f9c4525ab7d1af345cb7dfc968a8c720e7942980db16c0f022f1ec3c14a22c7232c9596c98a319329cfbe2d54fcf85942ff3131b38af30f399aa49893acafc730e302be1e7786aedf60402234da76c60f17c1ae8e6955b08175291540e92b7431641df7ac8d56a33a26a51c89c6de51dc178c7af44d8c46ec447c209afb35cc52bdc5d55467e0533d087b1489caf2e2e458b566b3dc5d1d68832ff307bc2a5e03ffaafc09d9873b31088042451fbe1b0402d2398972f2b8a25ef208a8787c29703357f39a551691e51607f79bd529f87c750b1e737faccbfca37078ec1b51085b87391c154ed398ec1c30e1af9a03d99dd5d72e2bc2ec9b72c035d5c157b6f83bc59858f288992a098f18abac4a5b5d66a8f52fe154959074b5cd955ec7d8d22d85308c2c288267a9469dabe17a9395776c815f9d68ce37dc92804076d030f2360dccbf1b1ca2384a2cb3dabbc5361f415a8abda8ade2bc9c7d96252c015b4c2cac423a1a85210273d940a68653408d6ff9e61d26cd628a7a73ba6abbaadfc361bfbcbf9ae8f1ba9be0249532285c54c415e2b36181c1dfacc896fee8cc37d147b5fdd55230c6548bb2698d9c3a2911aeaca76119b4b4c79c56697e9b36625a69c77d20494e5546606e496a7b644bb891de72c3a2ca50bad71b1459f50b8f5f43733d3f318ccaf4d563bb394fc657fe63a57a357448e02ec1fe8bf397c7e6d137b2266b1b5c6ecf099bb7b55e50b36699632c9c0426d1eb37dc5520ed73da626b27129ef53fa907c19169c349ab8c22270c7dfd9db8e2a4aeaa12e8bd57d7e26607f004b846e2e10b2c656b6c12f56450042f5955d5db91c44c98c5e1c81acc422412dcaed430fa0762c7ab7f369b76e4d54c3c324d7af6c371c14a1e280f562036ba8fff8a0297897b7f546a0ef3d6522c7bd8ca827ab76831d203e6a7b60452239c3d212d190669ba8d57eab88b19710585cef8daa7b2fe1241a6c05cf2e53b94df7685d6554ebfb6ee419030852b682a412601d304c56b27a3c0129bc78104cad02d4f7224777bdb992c354c4e318fc99d146737711043610754384af6c460fe264f804fb8a789fca96d41bb49e95ff406732c4d4de502ea6fcfc7f05faa5a68f52da932be5559b8a438dd394eb4dff08bc827f3d9a48a9574d0be418fea58fbfc04d59f54ba6102ee8b4baa0721bc23b7fa032b3b84043e329a41a5f1df5fc08442792c317820cc52a5e180da07a80919223212cd77cf739beca54cb058719dbf30d89001138ab56c51fc316ee7836ed62ee79c2e76b67b8abc9f7f2ad37129401766854ea5eb6311a38cff062792f72a022a1fa1945e0178a60cb1c0be217707c3ed7e74abee727bb12da97f4c89162494eb998dc3f2b485800234022914cf024f383259d49410ce59731a2eb4997f331caac56671f2c449cd4b4adb7170984a8807d0b9ec66a539beb86d2c3ca231ecf537079c383dffb06168344caf3972e57979e436213920b49dde962fbf9fcda27e5ce2e4343fc77bfbdae5bfe10856b3b3b1faccceb3211af57c1112d7c86b73ec0219bc399ae26b841031a09227484c16d5cad8a4d6780a040f77b5f0deded4530658884ae51404dae9e8af3d399f861a8cacc7cb9b7f28891c3ec8c4679f79c72590757c3a03955390e8a874085495f595b0f4a4012992724e17c1f27cbd316034447fda14cf5aa78ce5417c1e62798978116496401f577a84cdc96eb8c845e163ea11ccdf93b76a27fbbbcb3e8ab5191e3db6009139abdbc7e4b4167a210d376e8bc04f7a7eb60d85b8b2665cfdf5ad0af7f76a6648e3db6ee1f82ee0c61d2011264be1d1c584059e783c253ca646667eea7ba92deab3783f99edfbf316edc85ffb556d38a375ba95d47e656a1a067632b080687b6101258a6ad06885b07a7a531b7b3568c003d8ea72bc38710822fb8b7dc8ed317891c38d48315895a5721d362b42588d8c207fbbeb4753089390b3a2dc58bd58dfbdca43d321d19ede9a53bbf2145612a99ca095f52b9c588f5577fed29230f19212c6c01ed7eb46a55660fa6f7d052cd2b5bdb05ad14003789f10c56760104c631986195c89cd2976320fd98ba056deb4388a61e4cf436c36015869974d845f6f4d7a350c1d939162e1196e2b97feba41338b4503cd1d22baa0d1372f4dd0d91567d6e2ba6a71ca550a0351f6eae2a007117b1ac2c89a6c7d794ec4b659814faf96f42d7d39c774a66d65011310908fcc0ff5f788b49e5d1792b9af137383c86fb7edd0d9af7bbfe3f71c74fbace603643eccd3b028fc2f83767f6a8befc67a1582e55aa69c9f1558e786562f07c908fe225599fb6e80366753f4c2526951b073c17fe121e7128bb21ce1b2d25543c85e37fd81dc77f33e2f7f297beb21b376cff5eed3955f6b0f9c4824aca4daece935306b1fcfb0d13e939853ee72e9354d32cb3b303ef6b8de961f07f888679a3761c8b685826dc338386a06c099dd823fd3fd883b5a443c55f66c2dadbacbcebdb26c29813670716ed4ad6573fe44cdece8f84d323af52c9ca4bf514c2d87b66d7e80aea885461c02a336a17628d73b0a16eb2285776b395ba8a69310720cb5a0f7b2a17870efb5130a2d3e28ecb5def9e2ee65ad602d36f5c5618d3caab2b8934d0c18c87aece010e2297a072e5f02d8f0309f5ef13ff46f0bcca646d9cff09eeebf0544a17d5748ff9443c1e0eba0eb5a9eba0f4c873b7b6fd8d8a7bce646965a88dc56bb08290b5a2d2536dbee2dea464174250c033cb3248c3dff7dec3ef4d84c03b6697e7f1fae0ec31b18acdef8ef216adcee20929b9c1117c9e6a5190b48b017475c77181b5cf78851646d9be5534006c09467286624f505be522f44132f77e9b32449ac0960fc8cf888f9d6e0a95dd5d4dec3cdde4df23c6854ee901b2e9a75c2ff692f68ef22aec40c9fcd8a33fb8597334ec09078c346a526125c95f000f8835f9b2634676bd1eba7e98a9b8cb049e955879b586ccf3170d948db3f462c3786b6467d552d5642f9149f260392d258ee79ad4e3bd7a24c0ad327757fbb69c4414f377f3400495f10832afdec97ccde7735de1836f7f1ec53988fbe441b7fc542ded91211524e4668df9ce8f1cdcb4dd5687726029edfac05a1cc4af062bc43c57868cb28f0c9c3df4a3945449d7b4d8e4e8c16ba5cfb1803bc37511e2ac34c2f1c8c5811f2a4a7fd7e3e6d7cc0fd6490231c06f472992834eb43b4f6e8e4261ec9130c320535e07c04340b0c7f31a4d59b7448594e8760904daa33c05968214104c12733f49fa609582e22c44a312e4ebcf594a10279c1f4479b8e0c97e5253ef75c0f42beb7ecede69ac3ea6e576586c44f2b7a7a843e7e4422de43a2ac762cd712a52b4bf866fc73467509846f7d3d7a0f5e1f83dc8d3d0f74b089e874ab83aa72ed650d08bba5636188ff2dbd1cba9363826752cd8a72b9dcf9d625f5ce6b8ff137237339e697a78a97143074bd3b089812ccc249aa6f42e854cb29601d583681ef381f9654dd96051d4bafde0dc468c7d1d3d21e4799b597b00fb9e91d4de1d1be6b5badc0e9ef1d29f477f10578423816525c8c7c783194e96ad0db5f7b989bab0735ea7fe23134ef5a5ea91ba72d0dbf4210f88257b75ebd0e9b826fbaccb05739738ac941308b355f067b928f054df0e1c1ad37ef114ba765e635d3a87e8f5b10c5bfb75bf9b4169d185faf3d27a6eda0a21c8e790046e8c197ca2fcd4fbfd24b8e26c48e6b09279a3a10089b58ea51f122d9799b20e79f17312f8a9abbe54b1c109ed6065843feffffe1c1c26b84667677931422704f831cd359c523003bfe42c9b63ef41921598053af18ac2f5ee469c77698fa132a5f31fcdc8e34e0474804352a7cf16276b82d26fd2b957bd7c0e2988d5c24cbf98d443ffc8dd5ad8d8c11941ed3a290e329facfa4af88ee436eb77ee472f8abb06ec410f022bdd6433a73523f35403487f81258ae514788f1ecff9bbe2bf510b0b2c5a6bbcb95b594150bcb3910602f41152e66d176362d053f16d784347f327edf3abc7a4cdbaf72a4450443da292c9f5e8e6c569b6f8a6d3d6320cabe6888f265195cd42d7180147f06b2d9c9734836394231a90a03e18f1c01cc9190481112ff430c62c9a155254a185ffd6edb8b59cd74f6af162c055dc774df65a4bad3b3530bc708c9c264ebdb3a03004a80270ac383c19bec80f94f29e8cfbb4cb457c67b2b848ea4f15d4e2e16557bf68ea19c0023851bec7c7872991f974c0b66d4db747684c3f843a831fe724e2b75110252ca13574d616e3bc0644ea32df21023a45dabc914b967c036ae45a334ce2875fae5e8c5c81bb1a80c3807dae58daa429b7dbab95257630913df1be2b554a92299467948f235d87360d0d756e610eb6e0a29118835d551883e11148742edc60768b21145091d3049bc4d41bd732a7f594b88a2623651f2b4f5722d5cae77f7d21b7624c393e93396b4fab198d044fc6edd81509145aa3142923c39dd36cdf5d2ea1f52be6c2417471f18518fa6b9e39a695a3eaaea50be1858d83b4b3de4b4c7429c498a41834dae64b168b5b019c8c1c5deb0484552e7d56b403237406dbb2963fb50bbdf8dfae2f6c6a71c899d86c3fbf59e6974f4c6d49a0c5c385db86e0b473d41d674fafedb5cf0922e07dd2143b7ee883121e06ccbf06065c80f81aad92c44b84e0044c405e65eea74117a73deb65744d069e11b3acf0914dc0ab751a54e6660b542d9e815365b6d26a3a2ef97363b6ac0d84cd25a965752768b3e75fd542dd1268580326f2ba6db347a0e17f7d4872fe53f664eb36d90639b4a7722d6f7bba626c22169aa9f4277207d78c98a67f9bfed458fdccc5db52c3c36d0683cea61c73457e7239074872a7908099173e2ddc5ff76abe4e00a6c4fd7180e6de8ef2d9449983bbf49011e17958d65c9f56a1db0793a16871d08452296386409706cce3ecd4eb086478772cc00bff1f8db65a1d42b26e96241f8ac5a5cfbe872a7e038271422eb98e7acd26319e13d7a5ebee37af243ec574345ec1bda92c96b9e23188a6f9c3d83794d0b3694c7849a293eea6c3d3d913897ab1b1d08785371a1d541b6a01809483ec093c211ccc0f3ff1a0c302462e67c840516612f092abc91c5c028cf862c4bd56082d743b4ab4415307dc190097f63be342057dfc10131137fa4b49089a14816524108e556503585404819da9d52d3dda2f21d130916a30c548b68265a14ecf76546669c47ebee35c09e0b4bdd8ef01cc23226f830c84d13ca331034b6e5ef431ab391169939a4e1adcf2434954f344c78ec1d7a2442fbe6349159ba3741ca66f25474f2ae3f7e787d8bf1be758320fd001b2e3ffb72bc43b5fb0a4d4b1aef4e90b7124c63cb7f402afa8da230793107fe1b590e4df5d37dede7cc936cd7a7473f955db1c0b4407347265bf975394fee8ea224a35e19981607bee23e7832c267a49aeff06d3ae7aa7378775ee6caa39ad2b5241f8b24c0550c8ef3067d28baa3edbaf0a347e71dc1b475cb8a59dbdd0203842d3aac72bdebbaa7b6af9532280534f2dfe024da73219a6f36d16640353900bf0451639e64cc4a732cb2a9f6a166a9c657a8a785b25e2399b92973f3ac565d1924be6512a4b031d5f13c5abeffa085410d8bf49f386acf6159598b6ea7fa6c5a4d95964c95cadf302950665e1244d4983fc4259c38a79330583f931f015cecdc43d52451e4be4b85a6eafac3302ec653a5449d5e33d58dcbbfbd2c9efa20fa8671f2a34574a4e093b939fe9f68d8387db3f9828e1f81519f6822e1a0d73c59cd28aa161ebf39d87aa808fec6e00cca63e21d3177e6d949a13c667f633b6d947150c14eabef984daa05d3c65b44c72704d6523b5632004dd3b4f10053451370203ae73132e40fcc97b2a69fc532aa3d2b71f631db5940ef716fff51ec88f6ccf853679e025624716a95c2dfedb2d154ccbb9d87f039bfb20ef0a907de83828aa86bb2ebfb6041fc2fcf71221a65a0e922ea083bba37f6f2bddf9f7234aadce4ed1cdef9fabb3b59343ce080028943ffb179d564548808208525c4e55767dd579928715b59882e938bb50355877306eff158d3e1fe1599bd043f37757f30d0caac4ccd7d04fa3798b6f271df84ed95646a8fc5245e380594ba999d4e5405c562e30fd03a4327561f7230ae75a279588172fba6ba52a1bac8255525594bfb5fc65812f818cb626ed91f9b949d0061bfce83d67778efb10c98ef2056814d27cb68d327602fabde3c46bd937f08162c7de63277fef21027ce20c9adcff93f8ddb713c1221cc79fafa2e8b899f601ecbc4ee7fc5559a47f534107bef4fe3188022b4ec5d3b8789b513fa9c1b4a4c869ed2fc011db491468c884a16699467d10714d02615f878e3a7e9893567e9d4e93e151b6519980fbae5ec43dee23e31fe4e1a1e9f43cc4c926cb95c28e5eb270d4f66365f3af1f69ed845cc21aa054d0d1acca390512f4c2f2ff7668b12cab293186f897c0539038fef5db6bfa2a2c928c583d89c1df7b086903032050bbbcf84628b3760c1685332bd95a5405271a54bbd37591e4e00d1a6761155fb807ce0c5fcb0d41d2b6e9ddbbd2cedc4e5e92966f6bf291c698b2449c2ca93222677410853512305921784364f9d2393b1eb3bc4b60cd8032bcec3a4f0de544d7bb8a46e5b71805849c5bf32fc5a637c30b58160fc822d582e071d86143320fa3595d7c0de30de38fbff4b13c8c6561c8bfe594dc24abf2f3a2f6d0fb304d400f9202a2e7f0bdfb656a2345e2b10af2701c08d0d5be903d5676abfb5a0eda602063876177b937ce1268261096008b70893a2f074504bd5af35089edf9874e207875e9e0fe3f324cb3d4738cc257dd8d4e90dbfc6de4b6c6c665bbc13939b31fbd5c138b9ad422835cfe10b45336f617b6b2d46ab340e2b123451f05bb4a53ca560ab08fffd6a611ac74b44223f47d8eea1e06a9e4167660254aa67341503cb3dc8d911ceff3d0b267c97f48718da736a330be895552d9213521052dc435cdf04e9c324f2d7970e467b71499cd1824fe4ec40888f21a97a0b5f13c585b649e974d03c459a9822c8afda7ce42a79c1cf41890a81eb0b16b71973a5922c9c3b0f737be423a9ccb09c6fd9bbd5894b7e17ca55cff5c5c182459f183f9281a7b16153df593a3ec4df3194132337ab9596cfd211e8a38b6db0549539ba42abd53bddf454cb0171dbdbfecc03625e71164d1e0a6842c21c3dac19db058ee3cb5e510b71a5f1dacd653d704b60f0f31a1284b7880bdc5c6cf664c4d9529f2d0644734b3490b3105c5a558b8772b0a00f2600e595db7cea566b0c5d4f0e1bd449ffe341870d74dff9887c21ce025080b138d950fc087ed58a3aec7ab44010fd1eec337492286a268c370893ce04612970909ccb3bfe148067c4caa11a271a7ad841da7c05e5e8787772fb74df2851895fbaa5af95c0cddf6c4a3b8a116bf113a069d03df7cb96dc726a6c3b01578b8f7c4e0e51ebcf8215d085c49ef948b94e640ae6c212132d3960f258977c2b024816e534b9356d01fb781f5a2b753b9f5c3b9908eee1d46676fd3ca79c4b31c7a022cdd2e02ba629f2c6172d9c8c6913b723dc6a668fe1d698795e2610442e5e4fed96014df33076fc7f733e01853036c0c2cc3da3bcd5779ef6676e1a4c27b4c3779bbe39b81a4bc6c5a1f1ebe1726560bbabba9d8df7e885b226ea44341d0f9746b386a0fea46e539798cd937d679b72a2db361e1f231511fa61ebfebdeecf1db91751e3bfcdfa37ffd94fc2c14f0cbd1ef8c0c8c8ac551eed26dadc70b3971d5ab33c18a001f1ab3e3cb121e16bb74d2b29a8cd4021557bbff2c915eef4d49646cb53b8cb5f13df416c9feb69557ead7a2a905bcb8a08c61b2f9c6e42b74a4dac3dc5ae0eeaa4dccddb5949f91c2a73b0f20c09fbb210173c0822610bcd07d64eb9e5fc00dc1f0679bc2d2d4a2b5fd2682737ed7bf516ab9777ca34852ec4774d2973bda6af7b64dc4c4f0cc119e8561491696d08653090cefc12ce49ef3fd8fe8652829b916ec46e597f2005604308670915fe97075794adfe0da3463577a2253aa336eb138b85498ba7993d5e5c9fcf5adb80e0e536fc03cd89c715771d312a46f8d88f0095206272dcb7cc3665a41baf62c6aacf4c49a1c4bc8c6e31376e0a9ff958a61fc9f47e70f3fff6721137efac76102a01023a9cc91901c0567633271b6f301ddcb042db91eeb87440034eca918dd0e110b0e8c617ba76fbe9f57723eafb048ba233c30f87bb1b6216f84da372061903314d21d892855cd62336231d4383e05fd1d94fe9a3c6f3060e00b494553b9a1dc04410b2b98c566ed64329e831485fa2ecc3175433973437643514e09e6ac34865047c2ef4a993a57536759abe0636160ea437dd76d8fe2359bb459458cc038499f36aa6652a36c50c96b9800fd8501c0b017a1af14cfbfa09356953bc289e6d3cedfc39d829048776d5b7e58d6341f2dea25f85fe05a7b24222526bd33822e4bab54560e97b5f84cca2eb1696de196ab951473122b278b058878ea676e49ba511f473adb8310a4aee653a74900fbf3fa7f8a2ec7089f62741e58472b7f757041d83a223df49f9c49265aa1aac323778e4812375c9b797d7198fc17ba573e8cb8a894736b4c5e057e7afc10ebcb0894cdf61ec4356b3848e40699401a7d2188cda8c7845872ec9894f17e25c8da2d4c542f1665e6704c4d803f0ecc1633b3c7719d5f38661cdfa9823f83756052d9856d3e63a3fb8351d3b367eaf00939e480fc42f6fb4e334fa54c215215fb0576ee79986c080d4b1e4d01b9a1fb55b30bc838af6527d187ef425f34386b240fc7005c1dace6e3a08066124a874420908020c746fb63891c152e740a66bcc80c2d76cd2d1f249eec9a41612373e98fe8b7192257b93d5e53e1fd4f4ebcc14ff6f96f62b8ea55f1ddd5a3f0295b34392e60a139769d1ac3ea613640e4aa22984c8eefdf2046e460cc1fb0b25152e3840bcf345761828963ce934048cd832dcfe06722191e365aeab28f1d708c3b6efa26e3b7dba42929bc6b783c7a5a0a9a629f07595d99b664beb7f97c1078b8b1b9d0da9fc7aec07e35b99ecffdffcddf16fd7be5df6dd57752a957091114575b76a2d2bdbed58729bae62b03d756cbf195baf013c0329aa0a3a58fbd61f5ccd2eb703e0c1defe9c7721bbbc1109b474f5c5ddfde7278ba08aff6a24ae1618dcf75dfe6bad802e8ffa53d368fb2d701890fca732675b0971f365d1867626ad59918845c239f1092d819672c7e92493a1fd9c5cac7ee890266f4a1fbed54a9f13fefc050399fccf38a6fbb3fbc99120f96501970dd4f397cb88758e245d10ab60e6b8c9224c9571edc4d21b90e7695a888e8d7b1e3e478a820e29252d6562bc24037fc410a4f35368d93f6dc5079e5459957fe738df5e90d71866b4831c32edea546b14cc1317222e19815925ab8ac5039b3c49d06c1be4956920f3e8501108170d6010d2d167e27b197e59848fa6bc43882df14977f768a7da3cc94c2f600a1cae486939c63277759c3ecf751e4d9e305e15ee32ae11b85de097e9ec6a31261ff3bae993bbabeffca978774d01d55980ebb88bc5a4c194555f5ab11ad168a2b17912f88aa04fdcacb6c43caac01e2c8920abcce412868a7b03168608e819d4dd2af571bcc1917997024eb9b74e9b1d71ff0b57f9c29174225bec1169ca43bf1d5a349c8cc4d4dc9952a69c1fae1741d02a23887182842606f9c8a25d2437472eef64792ff2b789bcc51ceb4c0aa8df1bd1e45f037915dfd197eab1c0e859368fa1466f81313d89d0a5ae861d6185eb95bd7cf0859aff775e35d6b504c31c049651f43c44efffcd4894fd2aa3a294100e0fd3270415dea60e66021cc75310b0afb0c23f768e2633da6c0ca79d30d3d5fea7738ef4fb0b0fac6b800ba1255a0db4b2147423db40a1007c66ad24d51a6014eee6b254dfc5f036c2bc29024f2c81756de08260684ed796c2bf85a2e8caea9ef6937e8a00becd7da7394306250832273ba839a76dcbf515b2ecfae6e193fc12cccf4e14c9fa5a4675aded33e0135ac8b5ecdf3870aeeab6ef826a16266f423bedff0a6e04790bda885adc73c8715a78829966163d4252a560efe28a18cdc8b4848ced4a8017424bc58f1db5e21557b5fda359d54b7c8312ee2e4f765ccafc64886be68ff2607789670e0f14d11a0a5532f4b7e4e0c269801fc234e57465ad901655cc361a077c1d21a97356cb3bde06ca5737b8d86dc7aa0bd520b96f9edb102d038fd22b542687d12d25364c2abd631b744f82d769b94a104b46f2f81452298baca7788dfdb317598f8a34db4ecee8f70a70b877f6b5da9b40615447cb88a044869a171bc58fbf8368beb6a3591c651052cb4a3e5ef59fbea57d96483024030a10924404988728dfde26c71e6e9268bc7da97474c2802dad33d87fda53884706e85b33880bf7f33a808cc18d6b1b8949a6008a7dfe9029fbe031f3b60f1115a7bbe01428b993c9a80fa2f537286e91380f30a0d47b394bd7321fe8667f708206c5d3580dac95ed0b14f59ce91b91a6cb48ece085d59b6dfa480e9a5664181034e66a925dced21092979c83fa3e9a93498377e2a216d7199c9629979dc7947302bc42755d6f80668166f502b10175fdf316cf7f16065897e7c0200de9aa16b33680b4ec8ca032d2df9d4e8d3749a06ffe634495ebefe289d6b67adcc1f7b1e89175edbf89e85da2c1a41bcba130098e5ddc06742e96f0c0688d67f54f22e5b344cce181f6c0247fdca99543fd6f2b8876a16596fcd66953fdd93d490f441addfe1ca65723cd3fcbc0653ee1976a32ea0776991cfd7c98d245927d7cd77e08ab411b86e6a404772a63ef96e30f6cb2c0dd862d92ebba7624973747cbdb54848b6a11ce5b5b9a0cb15ae3e522022b3e1917170d0e82443bd07e66ea1915fcc605a77238f58b5c93c37ea4c29be93b3cd2656e402fcd4613c1cb512582acb7ecbbad8ee8b9b4174bfaf74b1f93103e4b5de9e6db38bf7dec4d19799cfc904c1e5ecc5abce46112606331e044005b09b20e1b58992a7df2d27042a0b0f7b94d0ed29b598cd937e6c1d57557a4d71665a9e568a695d766c6f860d76993cb82c924dc2e134bdcb7b4fda5dcb08ba5c20152732f5e11275019557a142ff6bc3cb58b9597be4147cf8cfd990fcf33bfea169f295af9c8d8fc97caf864012920fa718e7df248d9ea1c695fc68b82523fea3c891137d27730582e7918ec62ac776c15aa7a82b67b4d859b494ab5c13d695925b6690b0d2b311eb3e1603187cc3b9b80d2fc78140ba8c528f5850f460454a251975d9314e95ea4d8f5f751f351f22adb9f282c515b14a724eb83c92623a78b564581efa18bcf622b00f8c312c84f75905cb50c4d8f0eeb7054fa07c94ca3b41d19b7669fa0902a8d4d8e46c0b235863f4c6e342e62be1fc638f77e8a04a8b96c01c5c35ddf936cd232adb24a94cd50cc0738918147c26baf68a578b67879ba19d2c16ddbb8ba3a1928124060dad9179c342db2685b1495b66f9ead01e07b512972ec3dcb314564f2fb5cc7234779d6fe0cc063de187f37dc28ce9ebb4f5e154c3cceb64370c4f1ce315c78dff93d2f8e7002a58131fdc729d3ada1066d051d554cb2bd08cdf985a1fae3db374801d89dc76f9995c53d47b9c30e96eb0149f423c8fd656e8fb2c331c1e9479887328b677c352f640dcd295f360171fd4ef6953b18f96a1e9ef84c5483ce0e7063a001a929d4472d51db78ece55a52e45ca1cc3dfe4c9633548ea8c482ade124824fb8e231eb261e1812917953857bd415a9c927e4bd249e1b218d0fe0cfab9cfbf1166f97a852f2093c6639b0ccb2b59539be0408b618f2347bc386f56e10e6f2c0d1784a768327082aef2edd1a4641385d0d6cb7e00ad6a876f16b171239638a479d6c4da68ac266a8f831b112de7bd19d30604c33004c5fd2379336c6c51c4fce8d6653169583d6b757e02469376a18ae220202a144f481fc092d5f6268f7e44c5eee69312c4c3061157451255c14e7bc1a5d3b1910c2370fe3720827d25b53be6af3550cf11cbfbc9094012cbd5c36d17c691af83260806ca73a144d5e22c06f8789badf1e9c2c00b3985b23a14159f0700fe1ac51fff4ad7f92c0e7c82d4d717172d22f54b0cec0b5a9f8ceb603f30d874d0e9a202daa02ed5b731f47b94dd71cee4b4ec9c58d8337b50571ee0268e6fb455980cc761fe109296f4b95d843d2b5c9d641526e9f720994ce940bbcac6ae80eef70fee00e6648aad82d1d51e5ec8964ac23f2a5c8b512014f099a771b678f5fd1aba015d378da53a6b06c8a07ec3cb49b4d9fde737b1ee757a480a1cdf8ac13327d7145394767959064caa7bdc8cf82d19910687c15ab147910e9c0a3ce5b3cc42b6efe020721ab614c8b1cf325fd150903ba5aa049c2a853d4948691dad90a83c026550dc916c98b9b6e55273f55b95bfff998739c258dc8fa45e7ebdc724d2c16e699430b4eae98d711099975eeebf61e4e5940557de2557820809a3c2a377fae7288dfe8d44d8a4fb8834c6ef98669a526fe5d4c112316577fc105ff9062bc54eb8e92a0ffbebc194f81bbf45459e143e3f9f6b58173445159c24eb8a528a156b599737410af44e4ad0096455a7eec493d3dc43d0cde134053b936f9e62b0c9b84454a5e8cb432088c224ea718b42d13fc041ee1dfdbc127c286b1245e1533329e8ecc0252366b794fb43c25916b6a59daf7024d61c3f4358018a7a29e39a50001804ec6772fb03539c2d630eb0c367fa80d9ce4baa778c4d8fd3e075d72566099fc501cfe86f30970bddb7c934d061a129ef29030a42d418e55b13fd424a74d1cfe715b41a4fcc8cb788f1b9c3daaa9d6205e80fe76d83a24102ed36051002d9e053184f148c52bc38f4dfe23f18e3224df2486c8c5c4999a098e8bf03b32dc45d371fcbf8adcbfed0cb0fc30e1eb1b8b844c40d85dd43a515e9168f82029b6d885862595c42ffd61006c55011dac7411313063bf313d1b089ff71fe0224ce2c1489908ee85c8b0f1b51aa1133eafda0dbbd580c16f1b935a99cad64f5c6b85a13eced700a3feaa6bcfe71458abc4c2974cd9b49f9d1a90368017069c173fcd05b9cf469857ff4b58c3de6dc6516bad6b06de28ff0af1aef3cf1578e043a50d4f3a740956502925215a69ae52c4081232859d6dee265df9ebc3d4468d49a40f9cdb76e9b5fb3107f12947ba7144334a903dae2e813b0bc4b6eeec7b704442c5144fb4aba2c572258844ca51369cdb082d65d8a1162d5f07cedbec24da697d0be6c7f879b4108bc34ea492eda0be8ad204a4e537896f833c54c9f9cef25f9211f27c32075b178ca0b67dddf4d8b704788a1fcb24ae872bcb8112cd4b1c1de05c39ae16619df6b404390e8fb5a28d95eda6f510fa73bbeeeebc1478ebfe3347524498d765c7b7ec10714efee2e6d3a5d647922fdcef21c7fb9e6da47fc21b8e5c8b33e9d8ac7fd76b7f107cee05bfd73190c43563bdad90be27e15359852d43695db1b3b8a9e95c3da2e239342add98a5021c4e2af0b52c572cdfac923b4ddfc0cc58a6f6cceb480fe7c70ccbdb3f4419247f03742e8277c574d032cfc415467c4a6f36a0a48f34f42576cfd99f5dc3f1ccb6a6add6560e8ffdf281b6e452ea15223e2f0a45cf1832eba9dce11c31a3fe84f41a432ac3509ea6dd96b8116eb2d968724ef7f354de3b2c224b4b91dc817dca700bb7bda06d1fd062ed882e4f447f3d2cc6f7b865ef3f154fe3aa9ac73558bb5d3d25290be8756f7ddcdbf71c9920e332f6305a98728672cf37c3558cd1d9a9eaa8933a964666ae2a89635b660c44284b0562286aaea8d662ea8274ceed4316981f167fa4aaeb754d368a4a28fa9efc74dcd230a722c33f4a4159e66e8cd2e69e5ddbee23f9437745b1123506459fd1d0054df6882e570da305ebe08102a87398cdca0780ee852788624d980e8528413f64192842ad55ccb0aceae8ff8926b745bb3f2e785b5998ab56f1b272134a1e4598e4dcb3771b3fbeecd33441344a13a161b8d004055550379e93a43d7c95d8da51f2c3e5c29f8e13e0b44ecc51b1a544bccd811e9d9920331a73f872b9d10807c0a94bd5f9f226a14b3c4e890e53dafb36690ccd34e3a2151f5bc162969b019e6915ce8a778db204f2884a6011abf258ca18822a8a668a99342d2217d5479a788769029c16e5f77ef3e2253ee2fab3b496b9ce1504fae39829a56215f3fc5fecc5ccc7bd4db5876137754aecd74d9cb86bc14da5d3f9b60d36cb49732a5b4bc08d115b683dcff349a985280a032f245d77250550b11f7ba7e1196e2b9b7fd7a514c965fed1cf718893f3fbe8a281e3da1b80701116c1e9c20d6a5352b1bebe0780cfeb0b5ee1ae742ed19ae38b777a698876c8ad71f06f02912ecd5f4f2106f726105f85e6c3ece5548b3a2186cd08107f6ef9bdea2dd418101169492063564ee0496790a2fd767fd3a970733bdeadf9d8601d024ecfcc2e59a5471d3f1f53df89c14415f35121d78e8f304208a436deb53823b9006f59564da14f0b97dafb2a855c951d0200e06b9bb514971e798894561871480ff09f5015acd55099b988df5645b3d90cc36c56bb464b7fe272acdaa34918500d006371accf4c1a052ecaabb85c9010ff12f49f931e88e4357cf1723a219d3adb23aa525ceec35042a0fd84892c502b4c644e96b67e4c1203ce6dd371fc5b3e3e70b6ca897bb9178fd561fc3e0821ddbcaf90ebf785d85b8e9482dd55abd7d04839d66604311349fc17065f2ec4ab18d966d7fc9a461fca9682fa041be744eff947c01123d8025016b2cdd54ea56099c9960d0ffde10ede9c28014e679c62c048a9f46bfde3125bca39d4c8f9c81660082353b674b225124c6ccfaccc0aabd25cb1794331565e3bebea88af10952dff6012775d8df174ab88ee29f0603ed45fcb23b31aa2f7b63558fee39683e6878239327faab0f080c223fa0e4397ba261ec8aac7140aeb5826ac37582a97a6a3e30e429acc4799a77e9dec6459f79a953eac10c90529235e3b5ce3f9ffe25391b10e6ff5b9c6e044d69649df82ebf3e554fe27bec9e8b6621ec6543183275cef3343267e4b5cf7aa1d5c2e5415e51370e6718a6b727b8b42571cc6ef056de43f2afead50cedc399e2e5614c31c00ef14be8b007b0563b1394b708949671e9a0f9e6fb3e3f44da23688eb4279469b37a2872b46ad6f17ca6b031649e33b08cc59f9fd46b0a89f53a09cf29fd99af70f67e158417703e655541683d431c0410a1f33c9c01d5d57fdab14f4bce3d66dbda8f7aa8ac7731f00a12b343ed5f94f861b484bb7c8f929cdf2ddb20855b14f3f058bd72a562b28c63438852928dd3bb2870aa230fcf626f1352d02570ae086c15deea66e2c334ff0e82c6c6e34379b819ce0c981e4efa8a6bf4a06bd80de4bee3d00d4a42a05d75a8e71995496420853a7b90a1130da9f68014c0c15bdbb1e75c012f14e311ae58ac453a9d4ee4e3cd0786e2df131f19ff5c765b7ee1142da1cad25147a1754cc8a1e3597a2826c8df8432b4c6ae41ae414ca032aa82d957890a1a97da952a94aa2c91ab7703edba36fe3f2f432f1d603947a6b450ccc1e3d051eb36e42b9d1ea466b621d91db153e211a5481e18f5acbca3c79251529873575c921a156490e585a991c6d31f1feeaaed6276397a2e87196204e0052cc0a0c724a3a3e7db164a2a83546e7b9e315ac4626ad017d0c38e9f4aceb74469f3f6660dadf6d040c8909762956c64ed2e42305e5b88edf1a0090dc2a85ab887d268eac65686b26f42c26e72f097c0ca6a533c061c99dca53faca5b9a2c8c64d3d7f14b249f6322ac91d9ea0b2c039790475edcc5006262a019564f37d76fa86a26ad8d25cfe88c863700ffe33e8c9a0038cf4634f4a7b324b6099a0cc0be34ef52ba3a144411e96ace73b0584ec35603f0876916b7846f56a654f25fcfb362e358835b11f7ddca3d87c830de3acb52d7e7aa28b16f8501f520ec988234859781b941ae18930ff280aa3ee5c5046e4b3cead44f253e5882621e56db9dd493702c3557570d251ae005e9e4f49d1abba0ce2cbe54495351addf4f9441e4a94c221266dd7443b91da07f04a7fa591adc8f657a24390799555fc04635b9017a1fb4b40676d69d93072b665fb367006fd9222f90dc829d3250f99cfc2d460c53f1cd5063eab547edb351a76098ab2d0bc866b1a103a574e2c782c6272e186a847f263fa113fd0c18bd6b9c53cefd4c35b37140b110afb320f52d9a18fb039b572e889358f35f3f63877ffc5c54011b405a30fd15bb18b78711138420bb65fc28759560bb55fdce7d35c29b662ed7193829846667e69e1775b57096b703d38e52401eee0c5a8649c8ec767a7feb6c8a4406b6a85c9585a665ed3f34b5dc3995ac03eb621a430e9dad1050050d14825623554f6afcc55e618e9db919c4e0b9f6a5dff4a53a3288a7dfe2516789901ca21518f398ca9dfe2e8b711fe4db6066156b93f74860dfae4b2684d8714b6688ea05deb98a054a808cbd825ffe838440f909da52a8a3090b926f53f098a07410cc03be9f136ed76370511ff7db3654cd6715ad98411aa78e7d49e6876ac1885e3c54864865a59d3042c2dac985313cee543335592de8919f90e03b48c532c3d51773a603133608d24a064d7695e82a36ed1678ceac54d97898d87f37e61e27e48d0aef8747d50c1b58e86c67632788ab544fc4507630c171f2ed9d9d06eccabbfa0d90b059d1ff19056d53820a88131a3e6b31ac65a2563acbaab55219097cf91a15ab56d55598d2326cfca57d85fd24b8240eb34e24a8e653027a8e9e39d5bcf0494024f8b649f799744b56d7ca3dfda2c70a8bb0736cc2e4875e109570bc314c214f4a8e1a3b9cd3f63d11c19f5e3b2bc80290538b8bbc0f0786f11a018e6cc4591fbf0200b6f5cb319180d261eb8cf2f79c6d57dfe7a64f21126c426d2587a669ae7873241bf814bbc25a70d0bdbbabcef57c83580ffe094445e37ab502c93d64d20330b32ef4dc3df2b29c3ff263429bc143360850828acf44ec8d6a349ea554cf7bbdd1629053a79905513d5c26ee89fa3c44b34c9eca5f15304511d98f2a5bbd4cb891873a4c1884de4080157d7b553b6672d77c6661c0bfc005cb83aa486cf40c70cc8de789b1349ea47f015277c67cd116483b08c8558bf3bf712c69b66910d9ab841a3f19a587ba613781f9eebada62ee1dd2997ca0202baf36b2553a4e76aa8be5cb11fec2ec916dd3ead16f6a18c1d44e0380f565d2ee68ce7bb85d63239e6a26180cf2e71abff575a9a8343f79200d2f2daee934f66e219d15e5e5713a3a15807d7937a33309997a641db160d8b2bc6975faac7ea5ccfbcfad28e256401b74e0b1204b3aa4328d4694bb46b76f33fe55009226b798f78994d2e0fb05e38de02bf36e3f363cda3409c65133c970dd0847ddad0a993f7bcdac0f987518a82ee5c310735d9f42460fdf48733b8596d3e4029d140239610f050a6976bc083e28126e690fa2d6c387cd69c463c24da84ff6a2681daaabbdcf1155c54a4f1f7bc94505356a164cb64ee2b13ad7017fabc2d6168de7d9699f0998847080a437d14b8dcfdfeebd4239effdc65cbfb5685711a592525a1d0242c4ae4bd373ca59ec94f4064e68a670d34c1e299b7441fbb4a802a94ec83ab81d747daa6d2f87513bab284a199186c270ab360620a1fff658637b5444c682d0b9e0e6c017530a432149a1550862c0b174e5de9407a1cd0245d02f578eb6ec9d4ed15198c3668328180f6a91a96af8002363e4d1346cdeca6cc26ab916f3c4779a6fcd504ef5d169ce3cfe9c59b2a376dba9b48ad9990025c4a1fe93b04037dad2e7db541f469b20db5967700d122c5ca934d04ac667d0e2b4ef85d59f9c33b0155d85ebb1d3de2987dc81e06524ab1dafb7fe9fa6fc7c158170c17eeb88b15b6f4aa5480166531db7b83f03963665abea5f55cea02c416e9acc29ec404fe9e05d217283a2e014200e50849cfcf744df00765012a1b413a1ff7dfe97c1f6307fa8724c4c866dd13835221240fdd9eff6d7016f5b9229a1f5ade0c58185691ae78a42d5aaceb1a0586a2c6d68dbde6d848086d48532cea5ee1019dec9849a2181a4b1d70a9dd50418dc30ad0e93bd062ce37e0f956b8c3b1166d36cdf931701efe8a24cff8ab77f05376d669cc5f28e66c0a6de893b72f0308783968524fc4b7064efb4750618ee18aa8270e6b8520a5c631d389930884aba7b2834a60151619001dc479ffe0a8142cd0e8c51e7662e8b772963a5f479135c3adac0fed541aad1c537ca32bab9b058ee83b4b2546100db3aeb962bb63c256722e35fdb33571d114f41975cdafaa74d0a97ecb74b0ce9ff4ee983bc227a24e316fe112215b63d04e56f7ef70bc7ba29f0d0228828d47eafe80ad7422ae879610a6fa6492eaedfad87472872d8452027375d1d083c94c481130c9dbc494c11fe2de2fd2edcf31426cbd78da28846ed01929ca8125652ed38bab64ccfed41088969bc00810e6be5e0e5e66844c017a83287b1539f2977cf6d2280838c6801c3c766e1e5f42ef8fdb7b24dafa1750c7368e4f5419bc37fde93c800d8dc4c99f65fbaeb5aa08b0bc6fb154553d672ffb8343674619c1f850c37c0a5644692fb05f1b18a6da87241e7d7530080493b75c62f06b5dc9aa94242d25afaa1a706907b13daea841f8b154720265fbbcc03517022b9bf2ec099936a6664b0bfe807cc15a67d97e3794fcf60d54eba53349b7d8f492549d2bba21e7c55ec30563d2f20cf7e65b85f08611ac25f2d36417e326b434dbf59a3fdd02cd71568d12b040e83533076d152790352ce9f4759cfdd93ab741181a5f27660dda18c2a7146fd501845a2b08b24993d3fb6b5ef7fa20a3c89b20303d08441322a9aaec6bc25fae71409df4c4d83f3f056c23c1a11041234a8b456b20a3f30840f9078020775684b7e4a97bfbdf51fe94db478236ea25ba8befc2aceba31162bcab5e74c32b4ccafa734ee34678de4bbe70b3c4c915e6346a8810041f4bac123f091ed83274f944c5e3dbc40b38e9dc663e7b30675d90550e9ac05d836fe4e30e3b0a99932a60659babf5aa545b0843ccd457b74acf77e241c2b10add0b96d5afeb6b8dff0833c5dfaadfc14595af7ec5246b41b171d4fb3ea423f6cd116ddff09dfca1ea0badebc1934520ab7f7d1e68fba7324ede530f626571c3adb412289207bebfb6b48c3770f7d4c4b08fe05fa005dd78e220cc3f0e60e428c3a67f026f488857d6d6810c4012cef3d70e72fd62250110ac0352c89fbc31e9af6d40c69afb52e05eb8d5ec2d3a54a43450fa3d0574d5ebca090d93b6a7705a7fbddde3f9791f28c58db5d3b2557eb4711c71bf16975a9ce05aefc5bd7e33dedefb28f419ae7b4ca0dfda921aa5386821a63568011db923192f6ac62c967104ef1f031237175fe764e383efbd2bfa5b9e8cec35b20fe7470c77c6708f01572e835a2dc70b3207df18e9487530e734646e252ca5ba872690acf656afa88ee6cddc18f123f78077d306ea8af79a9ef3168f55bb35cadd6dcf02e50b8639d2c3507ad773aa52d235886931c1d7de11f979a230beebbb86df4033fb295aa2c2a7323891705a9b43f3d58e199d734b33141aaff09d4bce4aeccd96c370d403eff2c7acafa26826757028a748f107d3fe678b8a69f1ef7d84deb794b129977f253323a79e723ab43d4ed0f4a4ef30844a9a135ace7981700daaed706bbdc65280a5c2f4f457811d2103fbb26c6fcf2fe14ed7c3b88642667c1fa813aa9092b01c41a532546154bf81e25e8bf6c325e63ec9da7219fa9167cce7bab6151389daa85092b0ca511d7345f60b46a4162ee0e5a686a626b44e26dfa766ac266395e761b6b0497596a4190bd3cbb10fb213e13dfb3dfc4bb1c09ea720014626dfdca8de8239737970b8f838329a63e9847dec4952cf455f49f750eafccd20e0e1c1288315abf985a7e8eef59e3c4fcaf37c88f01ee0a8411c0943466ec0686480d2362b842ba295983d8f83bf36e0b7e1d23338ad69a1b2f715a84b6417ad373eacebd885d091323117eeb5f9fb83607a21acbc976e4d5e84c984315d365de27f206e86a65715f56c77f87c45d5361d5533623fc0633076302804e86cfb3a11074ec57b45de59c4c38b89f373e3e2c35cf67510524b1e3b4506e50efeba7da9f2b5383aa56e294174c7283c8b9dc96e4ef9a1235835f06d05ecd128c954c02ef016db3951470388305607449235853f24e2ea29e3d36a58ffc26a6b44aa32e5318bbde9d4935eb0a08a7868c663905d30d6550635ece6cf512779aabee9929b858af13fe6a973782ddb9e6f44e0cbaccb784d6a381c7e533072d4a5b722e38277e7260fe00dc2c73f0edbcccbc3eda6b8525d78c5c7d0fcf96b9be42807aa43fcc346ceb72ed0bfb4fe6be2309e252233108185c919de7ef8fc6a94f14ae8341c8810e6e5d64f2b23326c15820c38666e61ccd2f0bf2217c71e08cf12dc5042fd458b65c23a22c8330d3dc0c3627e0d487db8e7352956514ddefeee0c28fef1cb3d608dc6e8691dfc4f6f3f10d0eb0338e88509a5df50d7c2257eb5884df2c0ac446fa0a331b9357605e190112f7e0555888d9b74082ce97d314eccf23d47bc441a6bf1141ab4ceb19d6d7c80804bb0ba5ee46a217cfc10ceb7021ef673e416e74ff54cc703f18d29c298c66495d2989ec805397296fd035363eee7da2a3a3c70434de0a17de07aa3a129d31b3a1c943f3b3d47ca0aacc23101f0360fecc29718e40b6af5ea6443f69b89e90ede5785482e209f0116eb331c6c838faa5f34dbff72e21fc001c69ae1580c6c996d46fee01b68ef346e1654e46a59912d08d2f2f7c0c5c30101a29cf3c714e34fa8a7a653c10d60eedb312fc5588936f57c26464f98e4d204e7e15914d5be257797c47d2fba58b684efa40285f30152bfbb5eddf30f89cfb172e3e8bf98c155ba85a7253ee4f080cdecf01ff211b9e1b12064061b245329b00552af30a4596105d647cd79873931a18a6bf887e7baa4d4db7a579dd5c273b101156a3f813e9976950ddb655f490be8f1c29f7c32e6c982f88d5589a7ef5724a901eec3fdc5b0a0c0e8f700313c2e271c7d799c1820ec7c89c897b81327c2f4d185ee45d8798c9867655a43f26f875507d9df9e3da6034fc8c14228be01fa7179ceb8e4e92cf94e07ca381a460f5132b77377a026a21ec2b9a742d4504869459cb9995c72d1c5fa7f37543daa8baa3f2edaf99294d5541fbce644a1617bc0c4fb8de834ba3aa12c6dbd929812838b68ff271bb0c0862d39d9a8991d3bf4da86509b5377a3db258ae26c087ad9fa47217849b966e2282dc8086fe38d0dca8944152a27d0960d9412967093e33ea56fe4421617622b2e3abf73e48fc042d55e533b3749a7703a8354728ed45b607078e73d20a40c3f7a6c697af0a8bdec96e800c9001291fd4845a31731f71a66f58d8f0a8c70110f33846c5e2a3b19e734c750a9e48462ce2870b2605a1fed3af8e74da43484c215e8bae7c6b28b4aed942f919a3a3e6530b03d860296ff9ded239662b174532b1476481fe53ff9208e3fd516e41f92b3f6f0546012d5791e510b288e28b56c1eaa73cead45f4adee77bdfda32ce7271f364b176239c3a988b6c89fdd2c54a0c625ca2f7ba1dc3129f2e4a522f0ee9988b9f8976964cfb5ef8cbf1218fb6a3d869154250b4d9360c40d8703408edb7875083d0a4860ea3fc245b90edf265f2dd32816bb2aed4fa9e6531abec00522c34750625ac864f58bd0a54e60605450e55078edc88a9b33383b531cc8f5d1ca823dc9f336216cf6b87caef6f5adca8d195f28fc3642fecece2e2fe4d1d36ddf0d81e142cb82273887b646fb48ea9eeed55014e217c19e79e391e226673392221df37f5a1d725e5fa2ce17d685f018e7c12561b516bc4a8ca3aee051f075c6aaed0a47761556bc9c04e8a993b8d08f2a30b580d24af324ec783f1aa67ca094ea1d0312db794d3689e61363e950d9f44fa307634027893c3f5c8191135e3711d62b47de44fa8d3874df1d6ed093f8bc18a802d1716f8d3436723febc00f53eac50ecac4a41e6eaf3a16f0e47e90a8a04316008c0c009510c8d759e8e2a054061b07f8e82a471be42e13021a30a25109ef610ad26178c8557a401f6052f670058531bc2383669b20b62c15354391a568da8f24794f1438b719e17034f27ec3a3da525bb28ef71a0a0d04618191bae44ddce5d79737837634ca5348fe330ae55386abf5f2f4200eb043d62ed1c8cc900b0eb002d21fc0033e2620cd1f0b139128ce84b54e3e0c040ad1dbc247b8f3556075f892847300d4bf347c2f4b325284d0a0afab9e93dd31313a3eff419dfc6f1a3c1f46f5bb09ca17d9d5efe54e40f30f66f1af97ffb891bdf1ca0a6edf69725b28fbc0c0fe1327629e445f72ca956307f90c3300a6587f5397c079447f6da96bea6cb26a5fe545627655f0beea12941c885a7581d2339fae47caba037c56c91cb7703e8f5ead9c17575ac5d9755b915487a888ad747b1fc1ccd0a869d2dac6fcf3f732d9ded11e5b280e555337b1850507555213b3f05057e30205fc1dead37c03fdc4806c2054877db237cc26ba56b8b78ea596648fbc8fee4ea22b3d81ee68dbc9de1219037bfc80f8590620fa26bb7610840d541e213db18d2bef850e7ca06acaa05eb581e6d420e5a224704870eeb47652cd817ad7f38ee340fb8d8fb9ba6bb96b9e3f04f3a4b106af0c7cf930f365dd4d02f4f2055eec69e2ab4c444bdf5f9b5b2a7ac7805ec02200eeef4893ac06ccd42a797a40ffdfa3c630e1346355c22f39f304f8b15af3fc8ba07e6292c2aeb598bbdab12e5ea6822be849511baa279cb3d7d5eab77bee9b2344f1a735a332bd6724c0a79bea551af5d02e104546111eb9bd5a7f7ae297c7ca89be0e65198a7fe7ec5ae874ee225bed1d58d5ba1ca5cf9536d7e43b21b4cd241b2d29f0a4207d8f688e9a034f0c0ce76e0af720c667b6b090f5bf57ce3ecfb78fd5db94ada84477fd7ceca8ee1e149a17878e97f8107f319f27402cbc3e14b18244f8869374510bfb3bf98e844a9be69f54000142584550b628105594ef2a5b958a9c714891c82fca61ed4d40d648ad59e94b0c76b9c34169d0e3b7a64cad0a3d1a4e56d9274540ba796b8ea490a0e641cee7c6de8f1c2bbe8357109178ca80f4c2b95361b4434e7320dc588f54b19bb06ded637ad583a8e668b1d0ca304c7cb546383042d3d4e5a35882475b081ae77426c1489471f319687a40b34633ee09bfe21e01132a85977af8af05c29f1bdad303804699706e7233453cfc0bb1cbc3227d7c06c0542c020f1f9643a4000693c93887e3de6f6898832db04fc000a2ea13f27230459a7f9e4edd446f232618e660d594a72aebdd78d364d9e97a537f9d0ae30a273b24eddf9d7617e9634a016745e1b7dfa95a77bf73aaf03d72fe037d172a10358d36ecf34f2eef0c34b9eaa9c9fb93307851434acdd4332409c4b3a005df08c12e845045e8f72ab7b05937d4162519709b80aa81672c4db2e69f1b9ac7c1f5b6330b6e99047f0dc1a5714e23afeb6e56b0e6560ceeb96125d495d9ca35c8d67286e96ba24f7961cd943d0b15a1b58ee40837c18c74051776017b00dd04e6c6c339654fc4566a933fdf0150d4b8a451dc0f51090539f568ba8b4f9c9378eb43c104e87b7f4bbbff8c64e9169aa5a07fe7eacc83d48b9fe2acd5561c4bd213184150964ecbaf0b5227ffee6ace3fffbd4a647947fbe515f3ae68af1f06ede0cb3513f372884ed2f44c21a88609039685a60677d36ba66626f2dfcc5c9596ad74257f1e56d1993d6ab7cb1870b9439c300e90be4e271b1fac5724ae1e8b941259a5895c4036ec9a20d81a539590e8e9c3d5b660d3fc06414ebb0dcc871c470e0a5459d2a76a74bc3ee9c8f54a7ac016bd329020f3d18d19fe1fb4be74581989ada612cc488c8467d6b5b737e9db0f45c3f88ef86b8ced8aac48ce60e7cb1868b0e2cd05591c6a0dfd50affd638bcfe3fa4456b218fefec3a8004657e1adfa713321befcf63b15f005290a9ffe66523b85b0fbe608cbd31001bf057ecbb1362b5c057ee8ee3ad29676de9b01cf9be28e37a0c87a6deb58eb39950cba469313c98283432e85ed230d3c1342f72ffdedc877cf1ea5ae3fd093496b986651992d9e2a02a8236adecf8ffd13a355deaec81b1a39e41f40efd88f10b24d168e64b56970232c527a4016b9d17279dbacdcc4fa8c38ebd30dfa2d81ef99ea5b3603297d6b11388432eb33eac2c32923f23ed0c931aafcb0bf9b1cb6ab44a3807fd8605f4c836c94c375cc09739279cc2b5d21a2898871e81c1abdf1a9b9813430cd26d2d99154abab546b434372316a8b3353fef50df4b705075ef4e0657ed65b7932b527d61ebcb9e6f18e35e0c8393e0c7f60e9adbc865513e8762a8630039fa0bc44563089897b8641e96035f670aaf109d9d381a1872311ed98bcce9ee1126e44d029868a71c0bf33fd4d0b71aaea09be4ee06a85a7256a63335394a74742edb985d6f3b183e9efa99e9eb6ddde41855941e284a7d9b8887ce69326e38f0dfd4cef1cc2b75fd51ab1754178579108b16861a098d9142f254fdd096b410aa21024d2512315c08a2acbc5e4b193ebdccfb336950bd2b07d8803441ed42bce55fa9c41c5b57f0e09415cbcdf621cb4c5951263db000531a3f797d77b52f56b5e7c13e7dcb6fe3e2da033f55ea0e3bcfae586520f7be855282c7ca77a05a69c998f1def7323011278f46e0ac9c6b00f44e00249c3a2573c9c071e2e936b828e48a66fc5bc953244ebae37cbe1582afc79f082ff4f9ffbaa074b1ca7d80d50c17bf78c6b5fe5eb49d0827bb09857fc066247d781554abae7b72936520451950da73e471ed2f5d9ce8475a7d6fc079a8e1c0c3eb9fa8b8edc360f953e9f792be82d1e53f1c686b6322f43548e690ab15a0c7c6270a244fa7aebdd5bff65c239479492ac589910b3ec80782661fc72b5f53756d426d5f895fc6bdfe5c10fe3be5950dfe9bde05466cd73e9512402dbfdd775bb80feb823493a45772c7bf4cf5de920b804e12971978c62f13ecd0e88265d6abb8a476938362e8c3e56a9d5f8ad9a5574bd9df43697a916e6953413952d426112ebaf04a727d1d382687721a09a08e248a1e7812299a1b60074ce03d02296046683ff313fe1fe5b655fa2a3cbe6d2198441bf1316c0b435872e54d4bc66f77cb554163d4fe080d27a0826f9edc1485f991ec83dc1d897ce117bcb587aa0eedf27272c7665c2cd947794d688da2b364debada48507396b0f42bcb22b1469aff2dd97eda86c2f4704c6e0047162dd07434c3da00ca24bf67cd03b8122fe83a2bedceff81ffdffa18a69bc03acbb5f9fe894b17a5b14562af661d13344b43cd0ad5f0e1cf8dd878c80923ed67bc5c50e133728073ba2c89dae9d885e3c4ca6c8e68013af0c12f2e4ec7a4134c13b25d8903151a77184dfd59c691def1b93bf13fbad7d07dc693de3028fb26b2239114c27330e8428c67e22e1f3088e8caf1941e39dd5dbf1494eae49c43edb6262d41612228e57d4c09b13b72a8d288494d34d8ce25fa12dfca8ba896eac7b52e893d250f07ebf33a13adf62e4bbd12d31f8cd1af0ea2e9f1df1b47d7b70d7c5d867d38305770410b23e248113cd9cb1aa0ac0e5ba9d1a4159987a3e62b4becd029c271e595d589cf1d2cc58e587c6a6f3952496e41797181beb5b0f780d86f7b64c9afe24c6202df2bcd8a46dbe1b4c25273d730bf44677c6de39a6f3cf98961ece1244e3e62c82144c18d423f95ffa28354d65c1e57b2c996a181d39d400e18e529e92af10752ee0023650e3695241311549b4de83f139d5fb122a32ddf037fd8f07d1c24788f624667bc04392e34dee1b418cc5a9fa4ae0b4cfd5656869424402c2acff7de4cfe028de46f05e260d2382a457efd6c85409b211b190ce8cc43dcc5ced174937f8f6606d874f4c3352cfd7af3ac9632963c5d46dc58b291971de725ee6e0ba8b58d50d5fc05f81ee3835682a6884db3e472db1ee560a18118c44a28c07cded428a149adb123854d2bdc217b55e4d68dca6ff8d59740b2255472c42e78d62eb3720055f7a3c6ea4e018ec885bc2817c1431e1836994beac92b7a44ec99101f5fa8bb65e019879b1c5ee7fb04dafee518141cc42771ee205e297a385410270e596a79687a1ad158d4690ad552b2647542166f06a131e7ad040c418fa0dc7480d2bbb01f2ad45e128369039499dd265b2626411bb92af56f8b7e8d780840e45f493b823235fdd40cfb71b1b749f73351f9eee16a10f1fb825148934cdd75024c2c34a816dded38e61c399da1ed0d47426f94ffc1b3fd82b794701822d902341ddb740c1b19c80261c7106af84d2bd9cb6ae487b7f5ce4299db21853b04f3aa6a1e1f756ace700591c61ae6dd57c1209b27ce325d7b6e80a4c9db0e18c81a2c49b9b31e1015228b4849d9e1947d747a245a2a3c0114d2b771ebbee7ee454813cc70aa272a23a2a21bab11494d3cbb15d3e773f3bb630605e12c018f279510cdc28f22a044923a7f872d9309e3f643665936926828583d75933da02c770c949504e15b36061ffdb96db7fb95f49ec243baa430063fce7de04253a855f7d5fa75ac1044c138790b63da5e207b2cf90d0e02d95f2cd5b5756bc3dfef657a17c61f7b98532858e28c95d15c7864e23eb47bc512215053d6098df612932224db0b1e6cf8f53c072e906fd13f7075e17d9359411a6475a00198c75b2d4f2e55b2bcb4faf53b141a5ef8ad78dfc81747b839ae82919849b9ce1403b78cd1fd80a72c2e8f7003ae0798ae5a41990b4cfa532663c901730fa500e8076f396147670d00f6f7c821811af71dfb5710f16dfa303119c69222f1588f8e049b8c39f66331bb65ddcb4bfb14fa1ccc4e9da99ed6340b35b0d16fbc06a3e25919af03bef61ff5780abe71684ea348a468278e1cbccbd80af80df79b1a7daa30dc2c424ee87a7627b0803b054cc5885e12e953bf69e15120c2adabeda37c60a003e48e82874856e78284b846252978c9a33e74c375689047eed48298618f642d71c23dca6005f66bdae2bd3c36ca52ba541e35dc75f428b9924bf5b7c7f9d26850ed77a98fae69d2b71359f54e5d4e98df1984e3a32c2f43dd37164e09423157adbd696f610e08a0c0ffc4470c7cda2fefd9f6f07ab60f7925209da3cbc3c239bf907542308aaa6aa95318400e175a019e161dd25c8e99bf535c2a15a84100ede249a5acca3b97f987eea52618be8cd33a24308e0bc65ca45962377a2dcf5478d300f5d905aea70051d8cd6364671f73f186724f1735a94439c78c115136ade71604613d6eee629534cd56bf476cdd498fcdd43f4eebcf04eb17fcfcbf67d24b3b4ef424683f56a9c64906bc128931eb1abb72601eb2dcd6427a1e960611b1e8fda9612a9cfac551ce4c6ba448cfbfa880c776420c1758368099bbbfa177b57f5d3edd8875fd927cd004fdc96ecce85ca6c67d6c45518231917b8e07c4e70e5dafa46132817631c10bb75f906e01e4dfabe861d2889882be7283fc5d6e5c0e076352adaf2e62485e06e4c75d01b393e85767120afb36654cb1854930568a0a538fc76cb59d9b4dcb09606856346f192ca88e976f545e55144f2bef147686140de57fb4b8a6814d80f67dd28d46380c163995055e70040f132a5991c03843c3d9def481a9f5c038041a537c2604a9ca01226634701b5d65364e33fe56cb3205cf4a156a686ad3d009a2e5bfad624053d6bc65882e2e2918960b932fc83e17c5a084edbaafaa27e969337a145407554529a0a6fab3d9e48e5a4579009ef9f451d1c4eb8b7795cfbafb13c8d79c6678e99dcddf4da72e7dc5cec5dddacdf1596ed6da3aa7d64f196c1430e50a5a6f96187ec34922f1f7ebde1c662f46908afe4de51c2806d9532216627db328225ce69ff46807e457009f3f1c2d92a2281c93a60c4d57f7d461a0c701dbed11ef390e58ae09e90758ecd5836a3dd9810e23cb930fc741894cab6d18bc7508d3a055616d6faca8888c3a8df7a69509e1c3376d540ef2c9b68adc4389ebfe7354bb17a1f42f9a1ba5075a3c69e6daa61b4f5ac1904e8ea3051a14c5d4e480874a19437330d0a941d6e52dd1a86a656ca839aa1bb4c7d73633375581e288f87f64385959f206b7c0735a93e1aee53ab046ba58dff2bbe983a3ece7d4d1398d15f93d303ff61ca3b84b3463c8db007b69de87a532a3e547bc03ea7c7c69b2f95aef7b4f3e2e01c3b73ab29a5eec203130a58fd62a1202e03fb0e84884e47b6dbbe3292e9ce70c2ac9b85a6bf3937507bc11361edb1f74f683084ba3d125f4dae5cc3a18cc361bf3af0406e8521c03f04e69aa3cf6e637cbba90f461b08104e869ad5f34b133bba9ede591b4fb5b97222958c2cc563f42a6e73dc2dd79761c5d421d940a60f5c359ed248d575136a02d3f4c0f4c8ce4272f2fc0428ef745d7c926a5eb15df71a3c5f8beaf73de31b16b2cc05e7393b7df52aaa8b1e9c01db46324a0ab72d8d9159e0a28199939b0f212dd94482fe0b761bfe901cd71fac25aeb9993e65f855576696277ce88f86a43b6f19873fdbe8a83ba674240fdf432886b03ac6d5d70e9e67ed0a04a6b7bd4a6c8de5e039e1ac4f2f5f75dde252528ef0a05e6fa5f48fbc2bd1d5f167e382cdf787b089a0042fc63a7947ff828ce5eddb3047ae3312fb164988be7d8864927580121f6d078c1258997262fd728aad6e6c424aa2b48df7fdb60c8494768e4c758bf0a068fdbdc896af65b60a98e16c82c951299424139fe807ed237b46514cfaa540d04e48d5c407a0a9223a71137cddaf147509d26e01bfb758f72d456036ab83935ad1c3071cbb208e2bfd150600cdddea2d1b642b0920b7310d598be7c75d9430f9779c93e4bfb65b4d27c561b904bece85f06007d2cf6d8435d09e3d5db1b4087cf1d1f3c44ee18bef69fb7c91d7baf6819ff3a9fccc2141cf82019dbc9aa97072dd3e12f1ccb4c4d31090f886829ce63d6415661409ccf280c3b52ac267f8d5ed3ee3b41c80427c43656154fd88f5497dabc63ee427b77ed07c93361ee455cde7b651c3b40e27fd9289685fe90ae661f38170d8fc5a7eed094967b0d23d25663ad1bcf6cd072f476fffa25c34504f2047d196190bf949ee4e8dee8c5591a64a11afaf03975a6708e10fd9ee329017705d5d728ce3ba7c98c5d426ffa83da81cbdd243a26cbe7ae7267ce30ed3bc9d64198d432af29c551f03c70c1228261e94482f8842646fa5ed1e159ed4a26fe19d6630137fe60b3ad58caf124effbba29742ee79032bcc4674d2a5459d09732f806f7686f9fecafd7661c05a74c4bddeaaf143366466c9483b48ce91a2518ddb0c3cd862fc50d34b48cea4f6d427ba305257ee4a83872bfe8f978b7778f07a615a3a66e28bf5d930d7b3285b0d2f0bedc2f674104f5ca1ae3097cb4887477b3025bd59b48f5e54434e0cbf3f0d1733e134edeb5e3a841edeac98a7a38281ecf512f1ea1149f0567a50b9eafb016e89b6b8ea08d87050dc31a0262cfbd96a76b1ac0375a01bfec792051cbaa1f1df4bde7155bf6b639afab8cfd4118ac9e9b2f2087f2312a3666aacfe59af6a9e0a38da8bb78df37ffcd1a31e4f59add66ef0271fa09150c47647322610750eb6ff78b153a32d130bb459cbade37d4e2903f63301e79350e1196ff5d31b6cedc820398b65529eb016633dca378d263008f0d3be1ab81c1163121e119f2feab4b7186461e2c7efebeee4067222aad3e953057d1551b77800ea05efcca3610aee0700a4cacc57a37851419303ef51975a60b7003bece481e5c4698657437f76f87bd4de3e2052bdbba93dbb6715cec8c0038f85bdd35c38f1a70a04bf11427b60a1853a90e12b77d294e8ba62cb0aa3fb95175032825dd9332ea994c7cbc8f2244fdb495426180861bc2c74a990707578f21b7330c950a5822eec67b7a04f1b21c4a6e6cc991a3cfc07f34a56cda7e4bc1c372119815d7ec29b4bee95983911225d6246a0b116b657cb478d22eb1ffe04c211fbd17e2cd240a93a5a8be2bcc40fa4a6fa791a2bcc228058c668d96635c051342c9b4a46d355bcb5242351b33310cfd25cedadcc1707521910829f6d9cd736dd01bd8d8bda841aa0513b8b373ce7d76811ad3cc81027c2f423c311304bf17eea1cf1caa50d0545f34a422f89faa2bf7ef43e61c6f722dfdbcf897f3f3e0f0d7939929296839552f7bf381b0f6e9dc608e81253b508650b02ea035a74888a3cf9c02433ff3fa310776f1650a4a0968d6118cd01f529a8c630fb893c5d0d20d3f78e7f90d976e5896d9ba8c812d9763244742e6ee9360a50893645f15eecedc468d511a388a0c3785684cac49db18d393336d00ce36dae92e3cf4be4a986fa5ffc4cc325fd07c5afc4ccbef74665276b4916972a6027423dd85ae7def30e0a9384777be15a9d514fe02390b08b62037cb9a7983d954e22fd5067daca4273ecd0bf27a0eab07bd276b22467507831d5452514a0c628bd6f0026c0eceed5bc789314fb0d21204c339a41546e01fa696440491241881cfde087494553be786fcfed900bfd4bb063b1a3c519278404b08b674595f10e81b3d0a34d1a9d11c3980805609a6a5d619094e6c6349f5922ec48bf9c423aafa7d18d4af439bc32971c7288a5c7a58ded528082d6183fc1323115791d64caa2470b5d29fda24701a34e1ea55d1574330b287355d5cd677ba232061f9b534344c78d4390204e2e6e562343e941703162a3028516bc22fc3d3f1f711c627456e4a8aa21af3ca553c5888cc670b6bf2a462632b4fd31ced589386bd60d5434b0c77ad1da37513722bb59816582eef8860134707243febcf63daa8b00378418dfab19ae117690b7f4dfb6274e6059586a2cbe10207b3dc559010bc852310baea4bcaa11210fc1f50e8c41053c49087b2c5d776b232b0a158b363264578151c06af3e461425857e846cf913159e6f7cc2af50bbc936847673af0ee88e2db6ebc64d5ee203b95b1d73f2b54d0a118c3692494daae15b175ae2d1cda8fba71d5f8b60e3d379bbee68dd8952c206f151704535a9360a57040edd59189b301728af58ae53879fdf981cfff7f6fff40d9abd4855d93e6c08982793fe8135f5bd5ddea5a2e6c22074016c29681e3008a5237230ffd8b9792a287c211d3ed50ad352332aa79008cf083c3c2baebe71ec6b6b502fb9e7b16b23afa3f7e3e245aecee61a02fa3be74be973c95f5be2fa750c8bf9b1fa76c54333d3ba1be34f6555cf81fd1974529068c88cdeb1f667f52e6411e6dbd20b17d4193585aae489e2065fa3e3dacfa705dbdac07e113118a1db6769598067a865eb10abdbc1f7cc3a56a7a02065b41f5d0f30dc5773fdee95c6f598b4226db20e524010c6277c94ab7a358103f7ef1c572cb5a2ab6e7b89ede7ad8b72c9a5220c2a12aadb73ead69642b076df0306c044cf44018730798be660581fd82307b0f1264d5a9a7a3e4d7e06f751af437014f29bfc2e1ba229af58a82d39a507eedcebe66f24eef78ac302fd9b9e077ff6b6da79fd80e309401616d9c68836d75af7112c59f2d9deaed81c212da5ea603b44ea63911251eb3474abfd68bb5cfe5092f4eb2fcc345a99498968ac5cb90b423590b88f260cd8e97cf813fe4cdf6ac2b8f65948d6a4746a4e6b2ad2ea25150301d18e2f2bae831785ec84a153c06332ea2c63549498e9a630da0301de4036c0adc13a1cfbfe95683c99708204a3593991db1873c35fa71e55b1aae939db295c2dc5715600282939f2041772da75a1884168e968635642df25ba4b84cfc9f0c202f6942224e6aff29286ff8335cb10f3be7e0405008281198ca8ba84361d2748137c052f09d316864069c0f67cee36cd5b64804a477212fcc67c5a2c511786f48ff970beaff2c1cb1055dd3226e1b1b258d822498c29d2fe28d74f4513ebc1a52825d467539f7171ad20c5ad517b40294bec3b53b1d654e51df9335477fbec8d0a13f5ced64e2b45693e8260e253d987c4399f2964184738af88487ffd9f6eb356f40526a84ef895ca94d0cb2c7c2e2343c46743ba4550b51847491836b074b631b6f1d518500ec8bfd821209ad667893d7bd71609d498289b8b28f7bb441d2400f49e8abc0816fcdc5a49a0086c4cac4404bc11e65b05c82e6609acf3820ee44d6c486568e23ff79394f260be79d7a073f11e0c28e5ba8c6d6b216434d33a4ad7deeee99e2e6a6e357eb84f0021d8ab3ac11139174b1e5f0bc1e8f9ebdbdbe85d34a9884aafb033ff1b20d9f7aacceb7384272cdb745a41b8939748c7f8fe45aaf2bef59a05f15f87ab50744ff2467b9df9cd3616bc90c8a1a5ad4f3b93b30ff9c811698aade749a882e6d128d394d08ab314174681d153ed8111c7d71ca424f4b0e32715fcc09a9760c3eb879250f375e99d5100ff22b04b3c5e4fa3b72fbf3e4978f0b147d6ecb2b9c310fcfe6e37ed3d4f61019a23e1f64e7b097bc3d6e35aacdd7e3354cab71a0a283e0088611fb1fc6a5f6c7932cc7342ce192cb3856ae0b7a805022aae81a47ae0c61ac5f8032b535f02ae446df80e78c47f348627e83079a21f7c3bfa0cd966100345769fd3db2cc83c1ae9e416b9751d220125ace6970100b29a89bae59558494216879c3cc78c28615f420ad77f996d2be0a33c826b996d2955b92aca437795cce6545f849a6bb328fab7a8e95d0fa008d2c82b28fba50431ad298b4e1da6b3796e2843ff33162669220a7826756499dc13933cac1c3920763a97ab0200bebd3ece1e542b8fc3802c9aedd4ed7cef28c7caeea4d2540a158028a564fe49c8bf96aff9a15c9d98c626f142e0499aa77221814655fd1785b01b7ba4630969a1c8da888be67c1c592338e44f6aca048d18d37c7fee8980ef658dbd1533dc96f938b03bff4fa4fa25091543b41f793ffb9aecc20a23eb4ff0d606b352ad8ca744f3b8d906792a6baa7a6143a0ce8b412c7e1c509d168e8483d0e7019ce1f0cb7bfc4241e92634b0d1f206cfbcbde61e7406b3cd4b0c2f5b2ca8642883a00272897d691055aec170c76725c576053996953a3d53e29f5ea69859375c99b8c976d29885949ee4b14699e270f426bc809b7c27d96d028d81c00978fcbd802d1bca0b42a09afc4e96b2b7e748b60906ebab01da7e7bca48d3bc5791bb3d215d3302a30f658c46491acbe0c6498b0747afb234dc356e4ea3d35b166b67f8ef825887cc5a4bea574041c70099653b769df1fb1d28ccb4d623bbbfd041c78e54bc604416a960f7378e60aecba63fdc89eabb4014de334b74021d9196d39e06fc06f2535fcd0381704423ff19565232cfe6933e6686571d6f64d97019bd3b139eb3209dd75eabad3b2b4a1a5bb2655a497fe70e96df8da29d737c9930fe8afdf611c22dc38f1c34f2ecd722765d46f1b022fca49cb573e0ee35b4962178d0584158142a372608f161bb53a0ea2c68b6ea492f58e4617245089f771e697ad0738cea3aa49efc283af48f56b83dea25666d52b0f726a7c74f3720a4f7415d0c0b80ecb520fbad37f785c83b86184e0ba5a97dc667bd2bfcbd37578f950e0e8b4d17925e2f8189d448a09196c7581f679c58da0e762680ab049fb46609f1128519c35ab4a19a564b5a0754f5d26c140863de795ef19f600081806d41ad968f0b90fc05b25a4610c51797affaca94bc486a05181eb17710f825b79b68b1e0fa898e8d9a593969934302aa59cadd2dc54eb631a81fa74c573cda12f83ddfa290ea877637dcab85ccd31d77e457e96cc3545938ffdcd7897847bf3e85d35217159aa096e97881a111d6a9e6982672fdb432db1733c900ff0b06cd3c25edf66d94eb2d4537aaba72f07c0a70d919d29b7c4d736178638415b8a074a80aa784682c8fc81498380a244a9237a9c11ec2ff192f277ba775902635fe3b383a89abaa916d1229301c1e4952276eaef94ce9d0bc6b1469f6b2cb2bc7f1ae8f19fd0d735019f49d7f1a0053a8bd60e97e9922b9cb4c20658a966d911320c23110e5111ec53c2e7249bb977224bd9985a2a40027f25fccbb730923b71e075c428c5fefa1e851b686c4bce2a126603dbf381edc1f7029186dc822ce3c87c9696ad25266fc4b1c6f30cb672bed414fd9dc35936e1c0f529c39ef79d7215e7e2504de254704c23ab8c852a45b9329bc7aec2b96e5e2d300412aacfc19a5997d3da74583b7ca33c3585f94518f04389855ef0c5b649bca41f1c3db333614ab811a55c747a5898770d45005649b961fa515789e5eefe2cb0c0d0d94e66669748973b1977747782cd557a254e824fb5cefcf2b8b26d01e6a556a1a9a946fb42719519ea9dcc9d4240ad8d03f2c2f44a37ccf914a1c338efe2d46acc992bfa40df94fd2faf3f9e9335a24d79631d6851870a5b2fe4c3a6a9824d6274cda6d563cddfa4a1389a76b9e652837b143070f0dddffc47fe774316537fa79f802a32867dccb723f7bbd8864bc1a64da24e2d27a425e3488b64539dd307f968af2f5de2c3856cb26668f39d5cb7be00d6f13cbfa8f761a8e5f8ebc6a117cf0115addc012a452d7b1a36e7dab37e313125a617afe194f5886fd7eac5a141767c0ad40fb8986c404462e99536a971f520c806afe038bf2fba2432f1ce249a4ee7f239cfb7c60b03e32f7f6b906f9124f01b35011456e85d5898a58a5600ffa0b1c7a28575ba24e49526a7004bd65a99a56d1b9e62b821c46aa09c876e00f70eb7f45f1f2b02fb01252bed11d23edd749807861e3989366a0e5d55bd7d061fe5662b87953493e67025c266acbb0bf99e0a961f3deffe67053beb098526647e7127335479772681d24b8d5016765dd761ef0a94fca8d7a637e4e9fcf0d6534db6452e77712e4cec315ee649cab6ff90b52b8692d281388c8e938dad8f1182040a5a19fb87776598b0eb335258b86e3ba34899a6ab45d6538489ded0b9b334a9a28ff177baaba7b029c3fa1c8ee42b8505dfbf353816922e485bccba26c8b40e4825863285129c0be3caa2b68650e237c747d995cb71c7add21245d8ac3ca05201b93885dd8e1989e81c1721bd6eec1ad197b12d0ae316f466bfb5d090c0142839f027e8f803e848e0745b59d71d447566b06f075fc42a77c993b244d689742b35b41423a8b4f9783dcc23cbf074012ca074b71cede6afefbed4e406eb8e8555e73fbac08e82be26a2898306846252e771c69c3f9d257646f273ac24f27a660e8afe01e985a94197a4bbccbd702c12af3654541c05435a166a94cc68976595faef0f35dee1479ba22b2dd31dbb94fd6b489b8ad9c8126a112b9b94c6839cd0333bf7dd8ac14981436c6061d52528f8462e8b7f3c4183650ab3194462585274533fb08ee73704680499c891ab14800894ac2bb3292c9025491511ea803107e2089eb92a1e97ef532a1b91e2edcc527b82898cc60c321944f2b9ed8a38c127a33ce9860f6aa8b1ddef786c8610a01933bdea59abcca95e3c7f0b6e12fe7b43a159a2e2b1a7adcec0bff949a582a6d510b401e25ad91d20fccdd113e60130a9c715716a0bed6116bf3d3c3df5ac0d3cd25c6b7b78ea651214331e1d18802324942d53c0c6dfce1efebb90667608d1dd69deac0c08c841d1837bba7e944c65d185d7c6196ca57fcec06c3f522965370641ef1143278923c7611de862c81ccb5e7523f7f37c7ffbe7d16cb737cfb3b76517cc7cd7336412012ca3be3a607ffffbb602b417b8894bdf2f1962338f07d898f67ef1d3bbb7090d4580745d0a0d254f86bc76c0ec02a160fc1cd78a7209e8298472ab5aafbdfb4210d5f3d02bb0afd6f0a4e29aca8aac7242e18a359fcf5d040437a247e621a42823f1d8cf04514fd9704e5a13c7d2bee64492639b51581e8cb655c3021beb1eeac9d5a52effded483f1f2eea7d7cce26612a9f3aae1fb035dbf806457f1a574f226b37006b21924c443c78991f8475384abac92f0c5a4e3dcfef89b5777236f3d0f1a775be91e66c35171a4117f4636fa6ede0e203b87af4a81eea331b7c025a20c07a2eda8fdd071d45b7314f5ad3bb33d7d5f4fb438a7c16c2f849f24ff641c6895ef97e1629c389467c92d7144d45934f5cc43fe6b6fa57d0303da0ab0213679c78447db2313fdc1e659272a893ca3bce4d064e7ebb189bb1287fd565414e4caa014ae4e33c0135469b216e4e1eb9a959693ab6c4cd6f701fe481db9b85cb10d5baa3da20efd97d1acb175026dc5b464e6f53745d6ea6b17e247787bbbd277f8ff50dc38a0944933367e52e9d28d7d2ae1c9e549e67ad0c195921c8fa31890fe109ddfbcfd4b57e70fd1b21138f2241422828675db3b25176973c0c6742b2b00aa9ce7c44c497706e5851d1a3c6d365f9b1fa91c915bd6b6fbee8cb14f3fb673c3f9f027fac17d032f9c7e740b94fc5240cfa2b3de402b2b64a4e27a2f1fc2bf19872ee3abb51ce341a25d24c49e5db1bf5755213d03cfde178b06c6bdf0ad81c89d0405e8efec15f285597c61cb8cd2c89fd351fdb69e427df328bc36c4d87582a2ddbeb6c74a00c5ccee200fdb4200c5a78f497f1901ac97f499373489aadb3502c8f558d9928120a08fe1899b02dd1a0bd87ae239f35a8834f8ba991eb85d962a5427405c3e7034a0e9eca21cc9e3217e4a88d16659e72eadf64e808d538627830253620a6404ce6f3e9ae9b3356299790b0bfbdb719098ed13de2821f81b3eb8c449fe5cfb328dfc678db19452ad25858ba88c4f6ddfedf79809447cf234102c61a425228243eda0f5731ef5fc1961dd164d780ddde0d54f573614dfeecf8ad1e521c02e43c2810de2d61abd44df58096554d9370ef3955fd8adc77ca774c545df75befd4276573398c4ac9aad892466d850b9fff868d37f10b21d85136cdf49b5b0afec27a68c0391b20b562cf9d73852e818019cc6e34bf383f6fccf708cf83823604d91854ff5d90befc4f87f07fc5d8552ff54888cd3f3f0fef8c30c8d2c02c9f78aaad3d10614f810e6835ba66ce27a22b068da459f8b47ec25fd5988fc817e6ff41a8550483ee235e34b63e504114fb5d1190f1c8bb7c91097941500088e7c5cbeeaf279b18ed6734f929cd03e589ec1a05aebaceb0cfce23366332187b25bef3ebcf04c27da5a12f9d67fc7e30a149158afd178ed3218e9f63f3223d60a83f9701fe5d69b1df439a66370cc36817ae66bea84b9f98a8a684e8385a6302615971786f5b87d82132cd13358d4f20e54eb978e373e6efd31fdd7d4c5f1a2393a05bbc6b414fa8e62319a4a151c9396472c21bc961a1b3bce856c43af1e9348a663d52a345214eeaf63730e1c9bf8e237e0f679bb3d2239813199d5ffe24f30a82943ba649e7ba662977aad945992d858eab18026331e228165bf56620f21fe35989b2215cb7bda815cf5b81fa2185f8c6991d6eb2429cba689ce9b4804aa635d2cf97690ac2d440fc5854c284d59704eaa15a6fe7a009642e8bdb9887fce09e093137e44dbc020a47534314d6b03d104f5a9c06948aaacfce06e5b107f5c83bb06f66d70e5c7fbadb8eaa8ad591c7916d8f52e53043c8eb8ef7c3f69992f0d098c568b106be8b8721975740caf8ec3bb236ca71f9d1cc8ce67d2552ba361cad03e01d8e0f071e5ae7804c0ec6a415dbcd746a1d811e862784e38043a476c862d659662b385f5b4747bddcf878ec5cf0d889c8e3afecccc4547e76fe05a59c409a1ae2f35b9f883a2cc840ef347c6cef0286127b863748a4c5e84f13a1e790228e689fd119998d15716f9dfe95355855a7e99f3cbd38b575ab4c816f271d652df2b07e7a17eb72fbf533e4d60bafaa94c4fd4b69af9395d8b39ea64eb939000bd514702d3c08c768425b5e583bd420d8573822af825a35923af7ac8b73811d28520981ee1f6a48bfa627230cb5c24d1a9b8f4983e566b93f8ac394325e43e08785957ac330847dac31530ecfbb0fd58b8a3e8d47d1c4ca498e8c71b790be88bc4b36a30f02e9983716ce95c7bf0da4ecae39e7bb6639bc856676d1e2f38e6d1233d0a6c94625b42c292dec1d189f3bbe674c818c0a91a51e27d3babe85194d1af9107dd911ca027a9b201316bc3719b7123e3ed39f847a1776882e0ff8ed63447b9b3c6e45e676adb58708307b7fdcf1d1877600b7c5a9a09c22b331b8943a8ed9b79c3d641b18a0b6d241e010d398918e86fab55cbc24315c17fd413a368c752449e0302e4bc246aa00331697dd5dcd1a6c5174002a597952f3f322175a6e660543e2c94b182637e0ee07af22cb7ed2323c4a4dbb3eeadfa6f0b4217928253e3e6669b75d633a6215dd323ada829abf15b151746f6638a7014637aebbfdbf90c6ff883411baac48141cf116cd30e88f692f6634778bfc889655f8f729360b3574bf9cde3f3602f3389d924d2a8ee516164977243716e4db9c82f324870c2b96bd2d35dc365425bf8519018f41466c5c51fbbc4b9af5436e0340d46e106a608acc6cb0d26b1472bb4efaa71fff5a5aa133889fe9ac5ca54b9e06bdadf44378b3d3e3eac24d9f7ba7dbfd4eee605293bcd83c984a0eeb880c2041db71b125638ab3cb18911db45fd79a9e4dfb3fdd7f957c803539384f0fa6af540ce493d76829879e52f23687ebfbf2f8077ff9786e988f8877b7c75363dadfdc8139db25fef5a26b030933e05de0c0642769538a715e26d8f82cb9f331aedf0b339337f87fe45f523db568c03d91eb09b3a755b6b26aac6b64237ecf275f683e418512dc6017d0033f84341e881d83971b3f7891e6aad8b5cd13c5ce6902fd01974dfc04225ac027157d05c336410be3b933a9dbbae06691cdde7786395a17045ec84967847bfa1b28996d7dc316ff446068a8a94b97c2ea29f7e216ac4d95ff1715e407103dda7d1ab04dd47a7451586d619329572c17b4c7c10ce9662edbd059ba5a4df7ae0f6940e64b7fc91174e5f30be2b6a1d896331e249808bfbad1cdfecec49cc1cf3a83252534c78bc4c160e3cd7bde001a736086663b4c8abcf0b5c3d6a8abe46564113e2647f396a84e801f39718223daada3b4d46fc105358ef45d537af4d46e7c697e9e0062b22927b0466d18dac00484f89d121a67462f2dc644db814bc875be09eba819c4c0696c02c0492a66684507e761e4b805f24bcab870c7ebdefefef75ca30b54fdde90a4465fa50e0ac4c3ef64f95d123faf33d3f4184454ade6af05f8650f4387e4308c897da2aa2d7cb8e5166acd0eab4d31cccc4bc4dd0637928dde74041af6c7d9a82e25ab3ae2a8a3a0bd965751211e372f7f0ac3d7846ce648d946e632ed12a548396c31ae75db60a66971e1a1b2b6c770a7736143b2c539664ba3b142a9223b5c6a0abe6ff061a78a98d848337e1ea72be86ff7e843f4e03af70fdc2cf75f08e928199df5ebd5c4c6b01a7abde3b55c3009e7d9a68df379dde13db74569ffbf31ed7b0e1b45c9d3ebd40b593a80544608505dd55ec67460aadebce304fb9dd54e561b01493b5f16756f881ae2ecd5c290eaa4f0373de7d87d0678996d1e94a855095e6271929b08cc36e5e4ca781e5d89b85ef693eac13bb8c6c97e53de57120f4952430fb97c6e93a770d6113fd03365b8e0430060059645cf23f1721d09d3307d47481c2929e15495273eaa2e1ac9dbc0c8006c36ae0193bd60512e7196f0732ea9dc0a2f9ebdc4f350c23836b21420e873a939bd219ca20bcd8468e514d02e9d56072882634a42e2f56a6dadb2f867bdead400a03f1297d9ab975240555d5463328b003e460f69f53b9fb92b0af01b68950161e490be75337efd1554e22243e5ed742d38ffb0ec0dfcbf3e848d56ee00b099490e94f14d1ed6f856d6d325ec4bf83bdf67728fb6be70d0a6a1041b240141cea5d07658cbb52c7d02b51d60f94b9865070b2f18aec353dc4e9f98732a937c63f54b73c28d2e4d5a01501b06eca065f9b1f824ac77548927623eb1ff3a5c9d9db8a4260a23fd1f693868c9b52c4389d1fe64e2403ff61e5cf6a93f718c4062674bc3e387fc85975e0776e0bf26f103f6a8415ec77348a56cdeeb1c8e33dfd86f184376ee23f276954685fe0becb97f9cc8365ebd179b38a5aa0db19c2c0831961ed20cc473c32e0053b494d401582330da61ba35f8e82126a64aed43496bb6c13d5a8a794dcf683169a3076de845bc06096259a4fb6fa392b2c5758cc7594080cfb4a0ef03377e070325307e92e164174272a2014c102ba50b0a0bdb23259af9b346ac4d94d712f111da89dcfaee036103ef6a193a75041fab4aa4af8bdf4fef86e0468e66ee67ed3c3b0e2a8bbd32178ac366f2ced98277314bbdde9e9d63232afd7739159266ef22b0079f95e5d115354aba8bd9d3cef593b5c139a38999265d6df6ebc6d3ae842d6b4c579d068d8513aabb2834862774acd2c6ef0ce06d6de99d7995e0ac43b520a456e6ee36fc8258fa6b29c94d8efefd38c436c271752d60586e1c3083582745affe373f3a66163b73dd7bafe557e99c79f0ad3b273e25932e73db432abce26cf05e8170a3009b4951f046ae1fda231e6d5c3b14e49e09495fbc78829d71f82b64c199975513e328a0556f51a58d7d9bfcf8a3896dee6fd29fb379775fc9941346bf8ff739ae570cefafaf28424703d4ac8bdb0f81c1ba8de758d23bcdc14e6ca173cc516c063d516624744271e0042a2b037e19e03752d935d6357b565eb22c0217fb2d90f39f3ca6cea9ee54c4b984044414dcbb490be90719b09764480a52040382f8c2f14520925ada8d3651094e7a91856d1ac6502359d2933bde7c2b16ec241468dbd09e891fb99cbdb93033c816337eb86fb8a2b9f83333f27e1c9f05ea6999ed4a462d33b517222e7841c6f0a9cc0d93e474536e4f5db81c3a22b66b179afb589027781cbae7a4d4d9b1aafa48f2004f49241d65f46962fa02dbc65c5286d21bd3461a8bb9193dde503ffb372e03fafd14d369f36c0cc9955d9f3473144d8f1cd9c13ce9c1f9375fe597c103abb965cccba44b6861c42da721e18c6073c7fa960cf3d9527f36f2020b483f9a2a8fa2f871a20d36de13a1010347fb28818a431a6e5de095861b5e291c4d0b0efd81f018525af50563d7b6c5bb6b5b0929f121e0ec2cb665022ceb6ceebb8926a5e1968cedb1096ccdbaf45d046bb1299d8347d14727ce4a4412503ffaf6c6d7be5535a9ed7662896456ff98925d4e70a46c3439acccae4df3b1c4da9c35f9f5eb37d1d0f8c7d05319a8ac4794563b5c9c2b83a14ac84a7373e849b31745ae2beba4ef4a4852f4d939fad167a4762132109b792523cc58e0e93dd25f13548d195be09339faa96df0748a8910d5708f25b1e16bfd84bf64ba4a2f8da1645ede1961f5c790c28397a898adbcbbe2b8e044330b79df80a8b560fcb352123667d9a2e7e081542b10d697b6d57283b4087928b3b2abe9d929caa589a3297508653acc6941b423f7dd4236f95e7299242e6411fadb7048ec3e689245b5270ef719a03abd74205ae4cf11b4733bc0c121ddb960d03520e65719ac52267050947d86972073924c7264c595487eb55e5b4d29611afb0ddc490479e291ddf333e0ff8a4b1b644d3656ad93280676bb7df756f30d309b8ebd599798d669a4f8830b4395a33e2b2dc45526d8516e59da47fd5e780e116637d6bef1dafa882f2e9eca31e8b0d5d943b78193e553291a16194f35e408220d44547169aa08abe294ca74235c15deee434d531635db9717bb8af54c16c65c41f7443eb79ffae2bafe86369db336dc89c90806c84548d6a7ddb458e631b20798c3cf556552ed3ffdb3ef379a931603af0d3fedb6e2cc143dc81fb012db2a649b5d8ddac47271d6de50489e3a83ea308b9cf609069b5d12f62bd1abac31986580ba2f8c4f2bb7c56e5ba0cf4e5571b4737e1b5e592a060d2b5922970bef15106efba4d635bc4962f74b0146e6ca06e0ebfa70377afcf47751346e8cb609830ea92d6ac13748897c90046bb7d5512a0f5d83e43c39d51d4f61c02fb9c2dbb94a5afb5b7573dd6177cfac76cb0d2589790440e6a1e4dcd7aef330d5a935dcb472152e4086f4b0a4565deefdf2b438516e49ace88f0f67280f62d87ae49d42ec64f2eaf4cf5c3cf87ffd1821d1f867d75035dd06dc62c9dbe5c7c8d67398019825af0ba4769aa9b1e2ee306d4da99adc93e7473ce02f650d95e7fa23b86fbcf84edf4660835b7e4d530b4a6ba6f3c67e3a61b2ee04ed8a5dab4d775e8b2f80cf3854e7df8e18e396b0288117a9b46ad6e3cc16ab7aad9187f8d6049eed6863b9403c6be2484e5641ec7656476467f9a48b906ad0032b265aac1634b53451b7ea654b8d8d3f5fb465050305191311e43363f29cd4f4e4feddabc612194d6ef2b4567d7db6b16198729c137162b4f178646def39e74ce2f1e742377d77d99845816401b82f07241c2de7fcb710bc2ea73dafc5d589a75c6a798fd40f1cd13242ba10ca00764e262d0a5c249146684f231d0914c199f3c54a8ccef9acd05179e2e92bf94d0e38f7197dabbef83ef314e6ec183ab183a7a459d8624aa9d8ca77843946533d56ae3a00dd31a71cc98e7ae7082c0062410f1a4436dbbfe919f9a730bb2ba72476a83827f6455772105a792bb85dcfa8bbd23f1218399183f4f6fea4ad1a56b4cf47850da15de4016bd936368a1fb3fc5f44efd04e7cf30a6a0cdd63f54583b172c81e493b1ae920fcf5e221680babc64e255caeae4c04a8d8d034c5804e9254154547ee686c4b0f7ee093f85e2a598ca4ae099eaf5148efa6322f4f42385b18dd9a9d7978154f8815f5139083cf705c742c1c714a0bd57767c48074fa4a5cde187789ed41ecee79f9292ce254c39873e852ba13db02afa868eb11df710c8bd44c2aac06b4f4c1f5cfae31597706ba50ae4ed523ddc4276a32deb6c1111e1c2aa7716ac69a28e3fcde064f7ad2a83e8c99081127a05d45ad0882b9b14e4b53280ee867d4e543e250e4c259b62d59fcb87ea3cb6e0f53a7c9ab739cad6c7039c7b916f993c1c767f17668ea9ddfe6ce55a406fcd0eb5a5625160fa202f13de9e09994700707e1574aa253c698a181d12bf70a897061ebc0d8c2f127f822522a3c1e7c87f3c5246e09d118869122ff2974d3f420dc5b593f9d203ca37831470a8b5c211dfb559c6914d88d110a444c7b7a181fad5c0c4ce87880f2041a9915de25d710e028610823804623535ab5d753dea27693b95ddd24d6a9a62bb97e12667f139224da4fb4070333c344a49209dc28d8a26cf60a7fad78aca72340ec1b52b36f65b1a4c87896d3c683b1d9d6cbf3681dd775389fe6fb2e95fd88492663b9223ef1588639de4cf3a4b849ee610d55b6dbea13bd617e9a87423bb5468f40a324f7c1218a14d1e5d061b89b74231eb19da42e55da74b04c921d627c87ab3edcd6b1e4fb698819f86e567ad335539da963477468f7fa66e5902d059a92615f35c716b082956a37a183eb800642592793a7faf3c3d5e4ea4b6896a267f5316c8ed9ab5964ff86477edb4cb06c7ab7cf87e434293442f98a434696458adcca6237571997a4bafd3a805e6ae66c3577fa8aba94082725a2b14063727663907f081b58746f6080e0d229b12fe717b2f0a98dffe315939761d2df2aab4283efa55bd907caff92cc9646d13ad1c42ab1dc068f0614d8c964abb20cd8ae9bb76b91102351ff89e1a1f5f8adb63b40bc3798b475d67bd1a850fe380734019d37a9385c8db8ffdda982ba0bdd7b4d1eaf71ef72a8e6e4b334169e28ffba9a946a335820697f7adcfd253a77bf0e2de477f423de22134f38f18f77ccc2dd4b286ef7e113f4589ee1835f3999d1886b52bebcfd1d36d7fed6ce8e30d5f990c3c005561e3b833c89fdb0e556c4c1b76342c6ae934dc01b688b7d33054c987cf90c6e77967099a12d258cd8848fd421f46d4edd1b6092933d7d9f2d5467147cd829b4053b25af72486bdd327850aa52fbd4d35ee9bd623441bfe7e6558698d070fee963736b378f168acc4b37e27150e1f3952919700e45084b02c0740dce6177a04a9cac07412b61fc7ba8902f618a9129b02469a971680f722d0b46554c4bf2b7ee9dde3495ae57c5f3cb674a664610e6d10e9a77185d3bbbfc1e7327285cbba0f51e37284c275358d1fae6643f9f44ee9c7ac4b82320ecd817b34103b7f0ec52fcd59637b80533508cd82ed755032139217119b0467927f36bc824bbc14f90c0d164d5603f1c807d00dcdd30fd5b2f1e4cd4883e69047776a2c116258ad852df1a96442501d926e6a4619fe8c254851bf97a0f6be30aa51234b71f045f7c15bd9f6a8c65d5d9ff2220e26a8c5d29d36c5fecf368da06ea8a512563e687cb3f9486653d1e0f369c9c61aac33385aaf2cec21e8695a43d9293d640ef2b75368d6c0cc8fc032b3eddc5b9e1ac40ad7ef3686b6c7e6c9eb3e2d962c329f907cd1a7fe8119254de7e829a47e661af74dc0e015a5bfb137aa2b791b448dbe39e967258875660713b48a10c4b83ea473ca4bd729d48257246b322054097ca247747e4330179eb307235b4e35477edd114ee5466d70e472a000646af16fdd7409b98d25840737a0fe508c43ce1a5a2672f193ac764bc225977ffa390f05678b9b22cb143cc1ec211f94844e0d1dff625d51d2e45d0dee374795e703b6f7ba38b9c341c1f948a580a711ac7c4b288fa19533a233b41fdef6dd84a217b17b859c60a236ab8f49bdd69054b515ec157f4c3f2a572063ecc7e5b5ab05ec54c4a35cfe14b85b309a7a01dcc311b77710228a1f21f5a14f5268d5a10169b4bf379f843f62a53f8d57c85417cbeb1df79d114eb826ba2d0c6eecb355ee68cf522bb3face2515410c9ce62236780e2668c2864231cdb5a12946198b57a6a968b8157ea347e2b0625e748ff61f4fb7e71fe4744736e302d807e1999c350509d3e98530af69a227a8871ccf84f54768ec30e8861e176adf5041db9b9145ae3a302a0d4a649c8ef33f74bc61a266777e6196f0c6093391822abcbd66f33aa1f070d812d59686c00c3f8c57b2f013eaf7cdbdb628dfbb5564e54d0afb05d4a1a2971784204b26a8d9af5ae55d925acc8e91e7718cf59063e88458b6820147fcccd045ce6ff7e7da5a8332123de63aa1b8e103c8db7b9bda82b9bfb6fa83952ef7ad82215ccf19cdff9a4e7b0eb655b346f635ea5fc02b5ee93e096f159782666a86593da19ff564a8b9c55ea64050b46fc26111aadc1b4c41f63b3588eb39bef941ba374444b5bf449d4010f0326892d7112a91e5899990410029f97a3858acb165c0de7d724e5561cf335888c5672db243566b5e2115047b0b45772eb61f0c2bd3aa6e494da6e5268a85bc191007a874718c5e3e66e577bf4fb1d0ba2c13460d3d56bae49615028db5ff50f44536a001ca85649dedf4d65929e02bc4789d4da7f7ea273ecbe2d1cbf530d67a148e05aea9e66c644105b42cab3e85474be1fba8f21d5981bf6d81b88e5584e6f2295e92c0ae711e3978aef9dd16818a7148f30ca877495d387c91aede071d6245b6ec956abc5d0ca8bebb28bed2a2aba1706c97e3e7ed3b8db6d69d08dee0f7f1c981332ca4367bdb257ec36a0615b884112f1bbc75a50f83be2881676a247341dbc916a37acf75b4705bff761df1b4ef07a9f2232f8d269afeabb4a180e87982c86a9742001fa4c110d0767907299555ad5693515504d9afdf74644abc38f8e4d47743dd206e05c1cb268958f362fb858eb4e778330ada463bef839741e879c31aad620c252d4aa89f757b7b92ffcd9dcd866c38b3800f2607bb59dff321157362845e183234964c21aeac9bbd507582087c0cf059a2663e40bd94dbaa38a1d1d0167656b84f764c4ef1fe17bf176e36ca1211c268d9182886f9b6b0c7a4c7349f4becf5bd0c2f27c7ba1b65a7973379ae96995ed6c074c1fbd888c97f5819f6a270533d118e6b115d09735f069aaebab640f4f92e9ed8caf372d6d507e66e930ca203ab94ea1c62413f9d2c7270b479e06e9a08715507212a6f5bc393c062317cc8b6e152dfb700d1f3c8946295fb0921764e602617e02e1e6486acb58e1e90fb48b3fb0165b73687544e759f21654922d1aacb6fc6c7d634396f0a351da710756ac930e4ea1f4fc0f45862da609d1ea3708461dd101a0cefd038935d04954391084f2b6ef13a1e995d355e1b2230e24c218ee352731a25f25ee7600c8fd7e2a0d462d6bda6c371da90be8474b168669cdff8e39b03395a0f01443671c104511744ad185bbd868364bdc14355257755d9f086a113eff7677deadb0114022c51f6490161b0bd13d468c5c3c64301902dcf40f21f7fba686195aa6387db4ad4f4044110b10784f9f92e300f349575cc175390abde17ffcc16bff0c1b303670674527103bd39df3db834fb5ae366c5fe19f917fa448882b78dbc1698c16bcc54a \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/kzg_proof.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/kzg_proof.txt new file mode 100644 index 000000000..4277dfd05 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/kzg_proof.txt @@ -0,0 +1 @@ +0x98306e5a9ef56569d7d9139c34fae7f4dcd7a54b11bc61815c2c11ad743cbd09b1ec8ffa4470230b4cf6318cc69498f2 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/program_output.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/program_output.txt new file mode 100644 index 000000000..fd6260ac9 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/program_output.txt @@ -0,0 +1,13 @@ +2690652950887981092105487857662255296011626012752189016494932422592792782612 +318375726713628396893264960521216506727972386704433219654697727306535670624 +671070 +1721464161421942823712299887410666239101540954911342952807203342687235872339 +2590421891839256512113614983194993186457498815986333310670788206383913888162 +1 +4333048458755315272052456218951806007811933151167279260738 +4500201590935370788298697053067752428216731915353881504674 +1780270321746081097970276934354344672724838367048896540266648412014106432240 +267674272179767811046066001318052491587 +89018504356014354452939512097715104575 +0 +0 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/snos_output.json b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/snos_output.json new file mode 100644 index 000000000..473f1c7b6 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/snos_output.json @@ -0,0 +1,16 @@ +{ + "initial_root": "0x7D7E0C5772392D15F3F0C9CFF6DFE549BE29250462485F80D7ECBBC283256CF", + "final_root": "0x4EC6744B24853BDEC273225D76232DD0A342535816FFBD578CF8A5B3D1F2AE6", + "prev_block_number": "0x9EF2E", + "new_block_number": "0x9EF2F", + "prev_block_hash": "0x698aff98da67a39116d90197c1e9fa4f550f93cfacfb398dc0dd14294defa92", + "new_block_hash": "0x7fbecafb986506e1ec0d529a1a706b1ff810ec48cf71bde18825e111d1211ff", + "os_program_hash": "0x5BA2078240F1585F96424C2D1EE48211DA3B3F9177BF2B9880B4FC91D59E9A2", + "starknet_os_config_hash": "0x5BA2078240F1585F96424C2D1EE48211DA3B3F9177BF2B9880B4FC91D59E9A2", + "use_kzg_da": "0x1", + "full_output": "0x0", + "messages_to_l1": [], + "messages_to_l2": [], + "contracts": [], + "classes": {} +} diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/source.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/source.txt new file mode 100644 index 000000000..b5cfcc542 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/source.txt @@ -0,0 +1 @@ +https://etherscan.io/tx/0xe3e6c7da1fb1d68c81e4b7dd516fb26e61921f9df1e07a2a19c94eed8fca0813 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/x_0.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/x_0.txt new file mode 100644 index 000000000..12969a2c6 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651055/x_0.txt @@ -0,0 +1 @@ +0x049429a631ba8744afad51e0e4feec0f11865b254683885bfab5a87ce913b220 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/blob_data.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/blob_data.txt new file mode 100644 index 000000000..f8133d978 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/blob_data.txt @@ -0,0 +1 @@ +565e9c81e054ec6c9ecddec62e43c61d4b082557a1878bdfac6eef05cd925f8b39f4007e9b2fa05f6ccf6a7fd4750ed81c6c8ec791cdf4ce97ea224c584d58f169e298ad2e4ed0aa6473b83377f1f91b35215a6a336636e503bc8993ddaa1f4237a99df520cc0004567926997e3760f4f157faf238be9c5cac24fa418d0f0e3b36a1f4fc45fcf6c8d6505806ef20c4d6b8d449805f357b000350ca95d3b7245a6d507f493d681a11d6f977e58dd62ffcc19382b6f709a5a89ba16af7ff5e3f4a2cf59f7ceca13d75840f336099ddcfa903b79ba909958e959492e6a95df434613eda2bdfe9ddf6102f374e4f7e6ecebd135eeb553161b20c2f2603c17fef8c2d222b4ef063d5149b4551b5c98dafa2919421b759241109399b4ea5a2f9b66b063d9a1ff9021b8fd1da2831a66149ae52dc19ad8c279b6bcb06c8d6bb3068585b5206c9dff6fa4f18aafe5ae0164977ef713359ee70a0a05e89a99f5da93ac2f95ed67f79270ed600c90bf5a121b598e2195d76434ea231dce004ad4262bf0d410b08a1f36b6dc514f892690f4359941d99f9f50badc00f7374b7f7f3c3a5f1951fc5cea1e41cd9d307a4eaf3fffaf8dd6a7743a31098a40eceea76a4a431547472aa3a40fac8211fdbfb428855e7ea2d31cbb5682e968ceb83216301d6fcf0f41385900734d3484cb6ba9441cdf0c472467193934b875913e5aa4fa71d89ec0307ea8e57ce2b13e1c3e48778f3179e766fc6a43bfd2df0c7477eff9ca732db860b7c4eb32f933e5f040cfbbccac5c799f1d84687a7cab287bff1876820342e851370e1a7f2650070e2c9ce9589b4c2c30a8ea81b4bfa1a30bef04569b16aa60111b86d0ddafc4531296d6dbf29ad435ca87f28e65d1bdf1d3fb09222b5798d5f23f79cde4c4350e7bf33f8aba01cc4730c65b3091eda5a618acc82b5fd1f607619647475e3640838875ed39d105a1c05f8e281509000e636bfd5539a196b47df01fd6a29553be35f5d67c7ce2a23e3e4440878649259b1b43e31f8dde082f7fe010a648e1fc8750cabb4d78434f997173574db59bc0777d9677fc4354ec0fb8c529b394a0033422547c41cbf00682b578d98c0ebf7481c3c733ef6e8e78ba0bf6a1eb99b9ea10d8477597f68304ef70b3a5012c16e25b873656d998ca3620e3c2d6270f9a2374e5524e4d4f958b4524a413b2907762f228bffd96e9f41c41a734f9f7518e190673b352618ad671d36b2d5b24cd85d0d83b56417f29627b560ab70ec00bd7b4ac802723042436f77f8d85fafb2862ab4fc33084aba0ef507d2b257f218d88f4f8b6ded151d2362e6d90a017207fc3771576b81430875b86c79b33dce941872dcda5da0cecbd01ede82e4a2040f5358c916ebf2aff2b9da78b61b6b54950a3b847d4ae4c224683e9e0fccb5205f75141f0fac70e849c1690589c2071bb5a1736403e25c6f6721aea11b9ec6a3e2f2d40b55a3b5d9a018776ff02d103d14eef4e4f5fc9bc80490680fbcc8527eb80e681d520b3122190adc68fc962e91fd6bcd923e9e419de51dd0279c80eea238086c361e55a53b2e4270216c6f4b4f6bc8de0136ca87fc20e9e3d84edbace061076fb279a23190faa2ef65290159be58ec8d8cb9a1fa6b6f53123022bc0692d2aeef6e1f7d57b44acc26c2cbb923dddae65353e9462ee9224eda121b627c50bba8073f9540553a4e6eecef7fb5098058f2bac88288b6c2649d0136180eaa600a8cae54788657dd8b8a89875738108160fc99527a4131b522fa34c2abb6242a7c1a0d544cb84031679711c0eb882e5ac1bd9ff14fd1b9924d27953b1a469a0bad650bc2e5ecbb0865fd32507bef5fd95d4d6669329053c0ace8f667417d451183cb9a1820ea60a0831cae169eb6636f4c752288e00908428a6c0bcb57718cfc5cb3b61fde584db88e0bbb5dde146195f123af946ec24033d8b7be5ec7a3a09c447a68e8adee6897b0ae4a1336f4072589d5229c3eb0aaeedd0c2f9a5a891f32dabf41e877c0f4dd9affd315c3513b0b3209a6ca2c673b4de32a8dc0c615df5375eabd67337a46da2533ec4c258e00147498ee10011c0700a61fadd344e34b94d4bffed11d1c08611728ac447c98521d3939f1d58bd41a09ceb3988a1c80cd875759be5d6a0ea8ed792bb576e15d1d240977e8d2a2c6971e29c98ab76a4e27da711372cb73c034df498666fcc1da30f8662e5d2b95027dd200d280ad98cea7a93fe8d97cce899e6891ed8c3576782795c096daadff92b00a467d07a7297db7cbb7a4c845737009b5be378be187eb659b6e4869dcfbd2573b39a5caee0266f36a4d9ec415f267be0f4b85de219ca956acee87c6014112f5f20a31ea9d5f77611f6175a28209bf177f90d1049882a46ea5ff68d8dc8276e5a64d546a33015626e31b151b4000fa13bc3b3dcca0c19555ef35e7212b926034c0992e3ac6c3b8e19181fa1864ef4aeaa6782f3aee4cc75dd5dbc0f7fcfb3edf3fe19449ac9c5cfc05aef45c62a1d952bb1126248e7e1a343072cc3c6f0679647a3a3a5bb02825d996344150ab062c80c7f5d01dddb1422117580679364881b820dfbf8733d1c7355235da08ac3446a9b5e99679a25a0d20a1caad801cc08f2488a5f8abcdd1d5e0e2aecd1029d5f005f1d28cb859f9142a1f1f6739b3a50066fe3c5b00588d55ecc19001e8cd788379bc12565432e1fa6ae632336fab5bcf9274440e29e688505c54784ecace956f5d49d7a9f954d73344e03dc273f8c9cd7138f4ff66a93af52c80994df25a5cd2bf8a3c6e023a61920f7d138fd8e0c882b618b74674d5337f45f9432e151b8c915e9094cf03d33d231dae56c75de5bf152639c11ddaf80a53ddf3ba355a0cef573068c947cd067d8d54f7b25991beb8896ebd58c7dc3f855b32836e0a0035f357d6e8a53ca565dc5f1209a3dd7d2c8140bfa61a4562f4b43c4d99be33db50c4d6b2a4ed942916eab066969fa04036ac31e9e935d53d95e28cf9efce2ecc050a8a8f21b9e8406059fe6ff8e43ef026bf2ddef1204a399b3b941ac89aaa5c666f794d17f9d94ac5fdc92057267ff031787ab55a99eed24a9f1c8276cda80c63e249d4a9588fee6f879d343da145e3974158c408dafa01d446fd08bfe38466b5ae250dc6bd4ef812637846dd8d7f13b5a2f9f5f9c7479931877d3773c156c0277d117a8f7318ab2ab7a73b587ebd44164628327ca2e3edde4c6010101ab8ba164dd2d9c95d8e66d6d65f4b8ab0db020691f819556cd57e2b07cd6887f644f804f2b0622f15ea79f0ffe53e54c0deae8d952bdc72d92eb5ef0c97bbdd85fea72bac7071cc6346f90280c67037b9c182dacc6b2b24b01b4409462f0be73ea329c28c41ab660b1d50bb48322f44f487057fff40160f2a97a12d7bf0ae2eb6302f2b586ba547342f6c5f8c7e5e627376f0dda1e1ff2f728c79c81800fea2ae04c7c0261fd4ede7d966fb1c071857ba8d2a5c94391a7d84aeab79738b7c58577f7eff96ac3ee876d16c7371b74d8e8b3a15b316d8c8670b3efa105299a7cfd6e7785437088d57f1aeb34c10b802739c5ef5ed8af5eb0cba22620089a8c0cf95d7fc658d71bd36cf23049dfd5362bd2f595d114ee1317b56d5075557812b6d91458ae43a8d73ec36757c725fc020f0d13ed35aea26f725432be4b8ead6800ed560cfa087f7600c8842a7cfd2f103dd54d20c957728b2caf8b1397b12ab474cf4ae9d5e81acfb749af5de902c7c286d164eda392d65cb4deaeb4290f9fbd589d5704f7e1ef8e012dedd66198ea0281c96f15b4b5b3583ac4ca3b56d71d24c628df2d4f4c7c58502728f723bb696149e450f3298999b6ceafb25a327c108b5778edcfab1e6f71db31c1ba9e443ac098475f8b1012b6628866a19a0d61a10070c3a5938c50ec3666c69f48d4b94bc2e2d62a15939e24f0067f6a6e3570a94ef3d9d2476e2a94e4cdf0da22044fe261d61a4fb2fa41c184ea023d864ecf9a24883ed6a72f56dd219d9a20f6936349b2719114927f666963e2971245bc77d5b1f291bc61c39088db83ebe8c83c6282314f09977ac8b01f1a97cbd01523d74b4d701a57caad3b82b540db1cd2abc9d0f28e990a9d9704f6a3996dec13af1038aaf6e976d52367f9971b0cd2e75fdcfd462330162f6eb857140b96f9d6d5311b9fa52e493388fed2542a0c505d15b4dc34b3af7b4423b531addd1685f98918f8966a3fb0b003216766b822f736719c09256665fb281a5e86cf28ede0b80a1a35bf110002c66aa01a4c7d3c536236a632b211b1f7dec66455696ba2635cd46581ecd4afd091bc1034f7f1b2d035ded7e792e267f54b4377a1273b69658bfc75974d525a9fee9e86ca3b5e3dfff09b9fa644304a7ed862f22e90740ddb069cc6d5199dd895908b12c144822375dad3df72d3496e12da40f8b02b1ffd59c09da9139490710a552a6643c2f05c267ba61d5ca5d1c59830ddac017766bd2efcd48ee1632c90ae065256dd2efc7527476b282e81992893e0d24628955c13a497951d980893945c74dd9aa1df01e9f04e0c2edf6629a1e7711cf7293033d4c9d4ebf3401450f3bc4771b807d13b8c12128f0d114199eaa58f595cd2f574799fb0036ed48805e7c27af2a79e87d3066d31ba8d4310182d4164fbc93c15b1e781a764a7bc3decf993d9a3f8e6c465cb1e0e8c2b0e90f08e70f66d32312b07c371ac5b35bf4de628d6fb02743d9115db22f92d0b85311300df471a1bfa881826016e0959966c744c890d3bf1ceda017638afcd577724f55f2ab3c8975d25e6f560f13492677a363bdc86993211e24c28bbd478a17c134e079ef986cb93a37ec15eb8125e23f1a485375a5eb8a5a9a9a8b96c8198bbc1fa59d3aa887c956ae67852f3334275c50ec684519d0d91e542ff513b570971b6acf0cb3ad12f7f3a52fefd6c68cb4c0491fc6f1652850e6a9216d5e0866b9dc198cf8249a873b0cbf5ff57e72f14484f1acd6e2247f02e6d5c1985be735f09f5ddba3a765fbe8d582a88d9c17188c6cd0d559777c3e095aa393d8327a3b7fc92bb7704210678b25d9956ba6825b8df9b4cdfc56d91bea9aadfaefec0524a66e528b9655e04bca87f1335603f9f6343748816cff74d303b096e8e6615cded8831bff46dce60643b3e46cdd5974fb5ec410814ba73de14d5a6ea6973cdad66eeb350a13a9a4055120c5c8786953d8aa006c83af42f0177c77a40f9b954ae49fe84427877779d1260dedfb931f9eb9fdf41e697f95e991d6e95824c5578df6ae1e6928356c62854fd7827802e4c53dfe488c23bef6284c45926a17d088590ee48842d9bcdf258f801eabf0378a251bd1ba7592a36b0cd5d2a63dea3644892608ff1565e8b6d9d9c952f93a41eb4c3beee6fba03edfbe2c21a43fc40f82cb76dc12418ea495a2effe06b45c46e9c16f58de65c4e22551b8b0ef51dc95aaf65b96e037fa9f74c98a8fbf1738c317e1cb72fbd1e3409521f9a0c8eb0936c9f19bc51631f70219d64705dfc1df5a54bfbe11db24dbdd66130011d08dbddd767ac3ebab4a94c5234a394bacc124490db79fb1dedfa87525973ce90cae430d6eabdb951073ca76059876fdfdb7ae4c403e55a62341a8000571dc92c4f524954303b705a1207136d1f8978724200ff8e3d82866038ddc34b68845a5fc90db84a7e58c9ac972504c5cd7ff4f723218b509464ab93114c823cb965c6a830d44eb166e756fbc27b3aed46aa0eb97cf0ef0e9083246877ba5086fc2038cff2a35bfb622ad5ca5413ded0b83b13ea08f308ffee8b0f1f95dd78d4fdc6472709d0c392603158bb16742bd6bebcc01af039f8daf3c8bc32feb5e1d7d62570915e24c24278eadb068148aec33fd4baf14b48dc4a200dfeb910cae294cdf983120d53b0a59b50fcedd38850f993201e2fa61bb56e775401efb2b827edd65db428952d64652178152bc0cc19c9493f76a98c367a9a94fdfa2ec8a52b5196c1376577498ed7531aaa5e64b685e04f3187aae7c091b36e7cafaab2af3db64b37ed3dad2fb249d9562d51a276fd33c833e4ddb573bf0aecaf037157e86bac8418931a108458b93e77f3c0a46fab815718e3aec1ba219666a4682968d5fbad05b7bbaba6a4f50259dd126c114a9dacb3978931a783418d3660ddb5b2013e3cc65c83530c255903a5d160a215f2ad3544a6ea95affafaf69d9978ce6893b26f44a2a54fb2c89b94a9d006c1f30a00d4536101d3759f6b46c36759ddee3e1c91aec8f25a5f880d4b5957424110c5613e05fa9e2ebd8e7d7406ce8c40fb0d5743570db7ffa02e685ba3f66f9e322f5a04095fbf3e9c379dc3ea37b3c8fa5286a8cb57b1229443bd24f24e194b1154e79ccc32d754c8bfbfa2981f32e0b16c9cde80f9a85e54b636326b159daa1370b3cafc09bffe12c3fa62ad663c35d0b9c369144f70841e3bd912f63d213342a1ee8e7d13fae6a557ff13ac181d10303f28f3975da90728214793761c715a00d9573b28f95a45e4ff3a05e1b66a3b6281335ff4038e6a11d332b3b7f241d0a669d68500cf99aedfd2996081cb709cb9848806bad015a80fb4f04756ef4496333e2024ac404634803639b28e5a8a4dee80b59720759c19af91e2590cbfd9e730c759e517d0a9c103479c350dba99286eaa62b72fbb7a00709e1f961aea5f9ce533b0af60f44c9bcf7bb45f22c61b2dbd154c1761f6b0ef2d1112e9f3595b8452f3720346467af11f9f20be80061b8ccbb48c7c977ea1703aea9cbbe0a87ed2c630c8d34825c13a193d69e237910eb4a1dabef721268c92cc30e62eba54332672a12e208883650f46e27d6c0be36dbe42b9eb80a78efd04eb1144e12204650a92b56e5541fb5eaad29fbf27c95ed705d381dbac2f84202d56b2a476de895e39d6eceabf536d32069dae1357b242b18833fc790795c90ee8817fb0cc46236dce41f68d38fa076fc7166abcf269b8d66a8ab7a955d1852986f3374884e6030bf7555b310fd8fc70cd71241ec72c45a595b46f48bd4c56ccb3bfe11a1fa6248d46428940040d9d868277817c1f0f59736f9c5eaf91fb510d121747de30e2c5e95e0301d1a305c5a094b457cb77420cf5bccc74b4efb1d24fc418b29ff4ba90eedcd558c4522cc49b5e61c9edbe8d2c2c9de662a9934a8f60eac51bcee9d4a4f446d55562bb09ae7d6d11fc17af45949bee35d65fbe884d4e43fba569ae8e382e307389de16d5c65f330b5c4098494597cdfad7201e3bf7aaf40daf741f46525efe84b7d51edf9d914b3aea632ddfa94eaf8ad306ec2a1af3ef748175bc39d9bd4594533c0c778f0177ec9c1f57f9d7aee49da229ba856073002c2a72845bb0cbf6e250586d4f90637fbd0e06f64adeba5cac26d7a3f1d9766286d2bc1a6f3cdc93f59ee4dabe424d19b936882f3fd98b309648c5d5e394b748cf3a306355d80a1047283534762e5a91f106efcc1b4dfc8b6351f1cdd992834ea99bf8a9fedf52615425a7cec1872272d969b49aba2ec5c6c396a5ebb37d40fd85052ff3caa5d39ee5fedc1084dd1d69a0a4c5e468489f152719577af8197c93f353bd8f7936defd76166a91250d118c92ebb26b1ad275f54611d2296f486bb690cf99ce62de700791f364de817deb560c1f5cffe8a190c038cd76a6920fbba322bf6a3ae9acc071331d11132b4b7b2aaaae4d1fee0990e7f12c6b19eb8e2dd09ed9a8642f42e9a4a1ceb08b9d7ded9b32eccd0f1eb1ed1d40194dea6a1b0e4138efbca8e7ee9cd7b644ae4a3e742833dbe155b705a910d5c90e4c20b602d445c8387d06e1b0eadd2202bd34bd812752d8f390c660f34863539da24a0a689f696a40134b5b1a038682bacd09dbbc09951dbdecd3177ccfde5ca4b940fe93b1da524eb6b7c9b7d8cb81bfe977c2d5b9542f45e3050d98d86d7906bb28757589951ff71242ee9d178de2e5ef50a07dd43b056d44c50cf94f63c7c93e0deac0b4f8baded0f3d2c55d55d4038f0f4b12cfd98886938726887369e2e32dcaa63220f20a88eec43841a927631cfc033122106efbf729060b1ef8848933cbb01832fdd0b774898a06a60009c2df4a6588143ef5e907be3f6c51d1c6b26ba62d57a4a43a5b1fefbfcd71549bd1bbc39b09c7b8a2655c6b9578fc52a383de6623921a6902b438a847aad894365565a7eef6ba5ad1ce6cc097458db28e3bbe8d2beda78450a778a8b4b3fcba45263f28287e1e0c2f3129adf96f4945eb6ab387c105f82dbd3d3d45754caf116cd4a01dbc6bc28ef82a85cd618726ddc7a93c869c4ca7bcc9d2ee63231bdf69e740e33084f15d0e38c6d94b8eb4483b21def90af4118db504bc6df47195eedc0da19bb34adc16f4e13f562fc58ce9baf8902dbb702aefadf35a5d13b5c4fa888251d769d2d00778c0e0221ccb324dc6af23a1589c5314cd55be8a42588b5bb73d602f14f068695db2ff78fa1f0b4af0c5d949846667788c37949e5e24599c398de02a5d84262dc85252f8562e5a6494e159bdacf9386b1ecaed20248c80c9486d85c98cc54840f4f557b999ca61923f496add0fee7f79e31e4343805ff145fbd62251242b028112fc6d69dd3443432de84e509414514afc4b7940a868d7f899cc72e42bb2206bb68f25ba0512f92f347f8280c318bc86f416c399a2ed4ed6aae4932def3a876d06a97d73cf1e971a61284a2855308902161c7353ba126e101ca5f444d43e7920fafef37ab9dc52942514234a0cf32640f29e81d6847f885ef00362cf4ce7884cc0d5e1b9307ec12ceda08478330ec7d9dfaa14413c64d5cc192c261538e8b830e7f9ccfb08347f3fc08656cf7c9f2cd731b59dc01ea40ccb21a2c225b427b76c37386931f41923a2c4d8fff8c35c279d8a1296711a5bf477b22aa5160f83b79ecf7d5ea1ef4d67685624d3af1dbe81b088746d81e18ff5de6f2ed21f4edef2339a43e0b871303914a6c76aa9f79a13122a31c1c9d916f9c0e852152a04f475bdefa2912eced5e9a6001a170b74a4c92fd345e1069707fde16769b3ba87d38d177ee4754b1367033c7862d0cd0c2f07781625f30a8db23e5e137b44caa918df73e9cef0f7453b834c54bc0ab30951f5805433a503394d50d28e8d041336845f018723eed49873a236cd0e0bbdd0c280e720a0213db2ae2c0c8561051f7a3a47ee42de956d425018d42d43b08befe7f43097f3ed71601f270e5542048a2adb2abf26ecda06407fa77afa12623985c2bcc225f56ec361f988d271e3e01e7ef25be0dcfd6e49115bda2838f0c81220e1081b231f5ef93767deb3f94601ad0adf0c04d24eb399f69b307e60dec6b6c9c572291e1367acf30554be4f23d187c0ca18251bcbc1f19a2f4642f221a06059a0fc528efa986e0e2d443beb47327458ea56573cf5394b9b24a631847b7bdb85e162c9459c9c7e7e109fe8b7b4d68cf655894a57d878be66967e07a67f64e1e19529e5f41bbff5842a419869f9c13feccecca2bf2d7447b68b6e6c972f62b17aa503ddf5a1570f007708129fd144fccbfc38e594286415a872914df0393479b55b97e15d56a74a10b678eb89ebf3cb05d621e4da00c51ad1d294a81cce04a558e3cd79f76887089258e8a9a0dd41e80ba55f4a18bc3f97488053a2919b2444571fd0dcb518d620368f90428889646c7c9939efbb62efcac69feff7a607e90dc596c82ad571c40b1ab4cd260619e453fafe8ce75851aa7afe677eacc46a7348e3deea11f5e3bcbcc73a3fa1a0f5e43c69ec4de4f08f999aa2e70ae42f481df62f527e2623000eb99c734effa7c85258daa1d8ccdadd645c4c8f6f0a89de8f8ce348d93b2aa1a1cb13bb932b216cf52a0efdacd8bd86c2a2d7560a4ef562e279f211bde148650b09681dd7ca4be1431f78c1795fe7fa3d1fe2cef329ce13b7ae7b890dc533f4903b9138c492dba8f5c5ae52f08cd18992fd8ace86a8e3f5397770c57a6df552c4082451674c956bf2437b8121f772e8f94f7c65011ae325290356ae539a799a833d0805450a1311d2d5ddeb15ac1a9a32399d8e4043dffb9d23697a1239a52b31fb67318a85d7841338bfdcbf3a6a89350400798ff0c5ee2af8ae22add54403ecd980c3a8c0d21026ba106bea98d85c41b2988aa2d5fc5d2f2471803e547a20474e3cefea44af3973e19fa6dd57ddab6b54a3a800560e21cc4c4c37da05bb9033adc1bd05c1c836c57d68bfe08af44b7f211d5d2052d4f60bb8c4dbae1a0fd7ae6f3685d424d0744663fff1929c198b8575c25d84312a869915ebe633e806e97de079c3dcad0ed330f37e60415b9a2ac57817ce8fbfaed2dca036ba6401eaedc7e665b63323cb0e852cb0308a08c2bd46588fa509c970600178029cc9c9a559ffb33e1adf60ff31c2c896cc207a4542a37b8f77ccdc75c7bc8a7ef7dd7b81ae49ff2507c5f2a3fbb2faf1c3a878ae314f6669885b9751cd091b7684e1b6645a888f470e200c3ab9e13620d15e06267554a3bfc286dbd4af50e7ff6ac396644ea4b945a5d83eaa2980c4550cc7ed69f4c33717fcdeb993b770ac7038e699b47c51367ea65fd72e79e40c4dca574beeab898e474904e456d77980f0f6b2f647f65beb8331fdf5cab0c714c51a5df1397c6c1622e96785577135ff67a1657a653f506fd9e6c09082b763acc13f0222f69f38d3029db39d56941140e67308e172d966a502631fd0207c643691bd8ccead726189c4b0c09d168a39f5c9be036087d528f85724e63b3f8210fe2c73011b7669853b79a2f244530f0ca771e1f5eaa82dee2d1825abdd979365b8ec477e900a68d1d666f928e049c957c7271c9deedbf101cb4f387b4a35db44010443d2095ff767b62e4b8b3d032e610963a0a4c7b8360cfeda3e70c840a18244a0740c787e2611a5d076d486737eb43cc1bf4211f7985aad14766ab41221d6ddc0029be30f1e4e4cd359296f9456ef3eea34e5fb377fc53b61aa2af6367cd3cf4078f9a5ace6146995a163dbbfea555afbb1f4b50a9bbdf3fca7fc7964768696bd044940338c0615f83eb7c590033b10a0c3cd730a2761fe6fbc215e5209538c0e91f91663979146ada46d25a90419ad8cf1694efe0a0f906118beab17d53620eb95905ca5ab110b1b3f03bfeae4b19ce41662ea58dc3be09c043d390a3f00137c455002390f97162958ae58e506218310f5a7dc18d14e9f0d83c09854fd7094ca4a47847605454cbccd190b4cd0e2b446103b32067169cd4b5e4d69b49c51227e6f42e533cb98fdb3493342138333b86746c2f2ae9af7efcb97d8e572df2635cb082b8b66d471e34592612cba642a3519d5589aaf8580fd1754090c8713d03bd19250992e434b923c51f77bfb5d16c244412dd2a9e80c16df75c63ffc8570bfc63480cd3acbcabfdaa4c71627a54b3f0b8e45ff11f2c1923cbfa0300ef1706cfa243b0aba9de77c08b3e2cf897e4c208ac2094cfeb8a66c92820fcca3d9037926f78b5fa012b2bf7217a4ccbfc67105c26d8ad3f3fb597678a25f0df48675fd00f78a19d2bb79519581e2021db91e050d8a4bff19ea8e3f6ecfe3f3a1d4d3d8f8da44fbd10b47ceaddad11fd493bcd1fe98d6019f4c045d06d45ea3ec68d0379f27c4e27bf0fa1bf173bdb023df310d3f911dbfe6f416f7b40e3159bf4e3607fdd2a329b7986c21ec2f7436bcb759e4ddbe6780c11c90e175bd31799fd11311ff88aa41e5671e49610ab14f418e1bccc4b931b1bce8cef1213f00667bcc5469c1ce2b860bdfd70223108cb8a97fda8be0f9e26d52ee17bcedd67cce1056262f15357101602fe222f89fa412b58a08407138109441e90326372ce9a8960826b11e597cb670c0e8be4770b570b9be33d318b0d5f6300195f7de8d3656b3d7138a6f11d41d929d089332f76d2eac1fc920636d1f6eb89f5f334cc2ea12a0c2208a66bb1990f0622f7ab1dd9fd4e21d4c06a0605e327e0d7a4f08df091a9a01b1be92e734d1d94485b5b3c4842b392029e778c8c29494efc41bdf2bd335b37f92ca629b994cb25acc82afe95b42dde885e43398107bf18051c68b08576be259e45b704b2577cf35eaa5cdc45e6d9b93fb6860b50f70757488484da7af869c1f1069c2bfba68a5b54498f2a901660d8f88b605ab9c2ba1b7187e3c029922533904901814e1afc967a0e3279223c31681635c8e0a68e727283cca4a97ba4daee962afecae189eff980caa9efed6ac9cab2850a9147e29dc917bddfa4497ce51830067f847973e29768002efcd060a8569b149649f0a168fe40e99d196ff40093422312be0e57cd0babb0fd56dd4356ab678829c7f636150565fb038c9864b26e4e66bf19f5f34c2c1841e6bbb1128d110dadadf636fd4a56b8bf48b87d07fea43e70335d266d3a1d3cda6ff0a112663042c5fa9e7551eddbab68a2c3a2037118fc5d884e4c5e74006d1ba5d70fd8a811d653f2daf3174f70b459af4ac5e397e6fa4455454b6e1d340dd5e00109a06911f6f6823b19914feb6dfe105e6e51e2cc443492eef406e4debfddf0e7fd5ad4a186f78e2e17868057548094df93c6e1c59f265303a804833f2e677ed8d4f8f90c9546e2639ff6adc9e697cd3ea242275864287df2fb80e1086f5c98d86d3595219528c9e3d824f412eda6c7e2187a3a691522a1945e1a40a57e03afa1f866feab630a08bbcc4a5babc1900fc7cb2457d5b16b79f8a2dd52733073d80e5a8aeb631740e52a740a22e7d2b9fcfd789cf3481712ba12702c7c422412831c8074fc8a53ffb009248cbe0ce0ef30778d01ad89274cb83717e60199da6f44c1f642b7af2c5f60b909f9840b59be1fa65ac1cd577770b4dc2ae5f821526efb78e82cade84557974d7bd9582ecea233cbcb649ee97b43a11e44686692d29b43879695f052803bd9dccd5606910e39a54780944a87f06349df4e978dbf1d7af9e6e0572a417c2be6c3c462721854dd97ca906a78b896387c826751d1bdf3f3433809fefa0855cbd6bae7ce9e8fe9e1d544b5ec4e5ed1101e33cc454b74db6ef4af2857c732c10953458e77d894fe93b0ace3a5a1c08825149e36e2f0682eadb33726c5a9715179224e24309c3187650ef1dd6a56eb4f2b83e1b2d2b6d4d1597422cc41046e0036bc3c509949594abdc1bbbee9efa28112c5ec89ef807f142f3bed75cc85ffc4ada2f2dce6c53e4d346ab94194a559411e4605d0190651faf5ca80b19006d079d1fdd5d4f6b2ea87f288ac0e66331c5270fa68bce3316048c93f2dbd1caabb14596d1878b2b97140adf128e51fbe7e43262d6bb55d2d53d09c38bc1c8638da004c89709f57d823afb180f3f58099d69e58f1776a69a314e8db5d1649a0bf60c9703b4d860fc332f7818d55f5384c16f810e365882bbd03879df143ca03c34f1aad6867fc3ba7d93003b745219fc22b8647fb74080b2ca08cf3249bda0361d4d6784f0b48bfc0b4d6fa1c453a06d68e5c01251f5036363cecdd7434f382f3c7681c6818a7201655b8bb85330e97d3ed401f4ab379ca8e90c940210fd046697f6daeabd25f111638c13bcd7a70e4158e6914818f87201153efd02ac09df33570e4928a7bcaf0ae7b41500eebb80a29b0784c42acc824d043584d4a751aefb1a828bcdde77ba9d5a31284fae5285848659627645a6ea23ba41e49e4bdb31852e91fe1aae1bbf74b2091d09e651b1e20b1be5bd32a8c9e4c5d3a3f728a8d615be37985d56deba3f7232446443fa728bdf7426986fa95534f44ed128f7cf4d0f724227ac5769b983e078c62173744048f958b043cf35ec5cfcfe33e79586f096d80cc738678d915b11f8c6d76471a5b1ad9a013be4010421b7afa0a06fee6013201d2b050e18cc60971dcbc3cf800cfd1930b72d627eadca8a57b7036d225356e245d63d0ee84a517ce14474f252e55fec43d6b5679552a2f871bf35cc9862f66a1bbafe75c9ddfe346a3ca306ec05ca29923190a233096a9290d6ae2991221bb9a89a561579fe34c838fd9897a3a49bd6c9571eeaea5bc87b07eb0e9288ef7aaa4864ee589a874d5aa67894c3f088036e5f30e86c77de824bb1baf8354c5a3b188ef9a1bd62836a65a0813db424807410e9869ade2c242122b60d7c8aa0c1dcb2db1901e123381379de10ebed8e87cdfb9e1717dc097c4fa59876c6864d1f756812de0584e1c191b9c674e2920f6cc4b205c511a521bcd037ad517c2c5931b5404dd8aa7140ebf6b2f70429e747de94b0cf35fa678158934d9b5326031fe47c144ecd14a6cd245ca6c410f5a3ff88500bcf1121b593227d4ca879ed37c9c2b8d32454551af753c35d15432e553bee5ad2ef6018ff0f0ca90b17eabd49e8975ffec818791ffa4cb65e5609dbe453d6be1d689650f9336e0b1c2b5ddb3f4490e3c307ac74f37b50009364f9c50323e8b8c25282d31b73ea9c822a183899ec0c5b1585ab71adab1ebc32aadd2e76d3ae1c3c673182677022af4faa12e5e7be702fad18c01ebcc5d396a31db12b3389b677b67b105e44701e4fcdeb0a34aa5fd552656987be1ec99c07557e735dd341a159d2d8e08fc8c9e9727d57ba1ec3e60bf38a4ad845678dfc21ac781375486cb0fc760811376d397f07fe3caa1d0ae9aaec911d1b250c6f26fc46167573b389e38351bf6393e85aaac78199f1a8c8ae02efdbcf0a52bd05863c3e288117f2c3c2e6e04f75cae0283d49c911cca696e499262284727a5e106a5129825d861c7bffd2340fd0c1239fc741ff101949055bea9065b2f7a51cd8e1a551ac6b69b683b6bc59ee83503ef4f7bb9c4229bad9f9c24bf3a0f9396e06a5eea1c3d1a39b24ede35313f5460cdc8170d01711a1521c97b46a4fbadd690751a47346259bd0a27cb8c55e7075ac4d8bc4bfb5b299c7c5e2619a24a544cacf8363a3636c3b2bc528994196f30ba81affbcbe4bdccc9e113fd1bc096a304da41be3870ac0dc8ba843b0a3d6136d8edb45e528bd2c5435438ac8af9bed32a9de1e62f4cda9b00fa13329cd5e20436cce02b45a36d8e47269b9c2de0c374d26869bf7148d1f8c24cfd61f446225286315afc2e1af0ffdf9d6c712762d47e84ff2f7816f3331af25c605bf2764f3e0c394d6d236b24ef3b7bca29b28c9becf6ad1bc3f953d23fe8bc1ba26fba6a1f269db19bd577a0f278bdb686d870928d57a44241183516955cbf17a47e7a3e6c521316bbb95bef43b41d36c70bed1431b924f9507e948396761da5ec5ba8dc4b1be28955d47315c1d6585a1932a9a5a40a095dcc2b5259a232798a84afa15a03d860591eb42b808dd5013c5eaa0829b4a600fe84b41ad8f83bbb87ee10741f004f00ed4d5ac205bce67bc637bf8c174a519e6c4dda9feba1ada751f486054f275a8e6a2db58c934b023066650ba38d4a4250a3e68bf427870bd8380dc0bcc44bb4b003c450dc4667baa2d051ee019e7f85231730b2db1837e520ab4daf90eb6e015db2c6a2dc22b449bd8bde327f91661c3dbae3cc9927fc65bb1a4bbdbd5d1af1f21d4705c26585ceaf50d2e501740b59a16d586a6f97addd6e8cf73c4a703070402308f19b5d0e99930a79c34012fb9a2f5b21d06fc8888d2c1404ff18a73704680901b00b047f4ed214cf0b0efc2770f30348dc5a3944a2ff108d975f732f6fb29748e2e3031e36e25af7caa33335c1991cb88def27165d88bf1a86b1af0584b83b25ba5b499e8a6fc47d54f377ad92c614a86545a52961929c6e1009435f7da462a712f3fb188fc0afac474efeeff69808fb52a3385a975b1bf87123f937bb544161c8e96249c83341e52662034d9c3de52319961359cb667598ad2a2c1ed1d14d92faede3ccead868f24bf40a1e9ddb5a804f931746ef3f4f3efb688a3c71a78e78f357e2ce59270a2e950af1e3a9210d83d168053364803fe2cc1a8c4e76e9c669ebd9ff7e5cfa5ec2906db1b92dc2ef11126da5a872b595f18308a73514819f80254ca5c45c496f901c2dd6eea75cb11ff00a0a2fe54bc58cad97934a0a8b413b82f93b9449c4cf205c864d68348109973959cafc0ffb6d028dcd232d92a44a86ca37292b5e934b83f48add525585256bc4c8e6c25345ae63f7693703c7504abe6b15ef2db80e95679cb5ce2c27efe0105c99142a27b205d0959be749bbb482ebed592af729f89a03c59e62b457f98280ff2c632b521aa93403d27f03483e8c7dbdd107939610c7915d91c1a8b8ac4552e0385e4458d829680d19d30525c954c9faa8216e9a987001d4d3658e66372ddcb6f2452341b2155dfd66ee07c53568d6f55c678ee1d74cc9dda602b3fd3c5af19b81d70a1d2f87cad6982503b86e0ad24cac99b16c142f914bf7d949b07a68aef23e35afd7270c601c5795699654a0a80b527309f6d1e27b9974a77ea3429686130f726a4cbf48f070e11e0eeddc0e637b75b935ab0cf0270983a588cb984f1fadd4ea4fbb392e466ecce42d47774419acb9c679ca3321ef1ca23fcaf89f435644bc2c6b28946a01d02cf6417121d8b6e1794142dea22a897b51645a51da168d00da2141c4ab70c612d3d63dd7a534009e28815a647c63e7742c185d0553759c7ed029ca784818c9931ba2306f4a31af3f4dde615d3e44b65f351f2a39412b8c5f235f4e0a8fcec586eaea1d53e94eb3704cbd3861173b290e7510597bcbb53a33376010facb546d038ac668f040db7e244e162a568dcb2e3848d480de7c1c01d7ba8c32b70fa22c1567384f934b6b34f87e1d6a0630acf3cf3048caba34adb31b5307494a28793bb77bc21f3baac0cad9e0ae5bb7ee20bf7db38e1a3a5696da01e655094c3af94b27ed5013ca2367316eda703ebc1455f8acff371f61f26aad1ade684296156b4c3244426d670796f3f6d29700361c87769c41bca4b685f736ae0b2887ba3395ff285b9255c47d10480e9ee16eddd3b996443f81f18cb72c13f425afc6aa80ada4387bc137f9824ef6a3cb70eea66173e052fd72740430c807aee8c04c869ffab2d7b5550e98ddb7e4818626cab29bd27999f508cc740f4557dc1bca8f8d0c307c6a55c4049ccff17c7bfd82eaf5b559be66bdb316a8ad7a61d0c88021d43cf63207c3901cc867d58819165d635b6c28e5e9533d753c390524a470837f56665b6cf17aa26c26dfc8a4ca414d37b1cf4905b3f2268e49fab68e36f3c9db6b498afb7e917546cd8de6a93441b1d064a5000a22adef493c4cfb12c3d15ae237711991243368559024ef83fb03349b068022fba6c06de35a6a57dbf1d52bb41c4a51ae65917e6724b13378b0ffc30f0285c134a8d8009e6d48d4f90935d19f750dc2fe7bba383ee2039899725fbc2d758d8e5196c59dd0b3c867334ec5c7c16e3c8596729d772683ae28933afe875e6bbcf970a17b4efd403227cdb0bfbd4514d246fa33193d04c11fee5216843a4d1713b34fec4965fcb5b796e9f4261b447b876fefc3f00b5b615da6d27338d246b8490916dbf188940c087250cedfd393d0ad96ac6c26924c1eba94aa9b26d7c82d3aab50f7b441dcfc1d7f38c257fb3e484ca4f4dd28ba3edc131e720a6d098468bcbb5e3672c04749f388474fd31dc053c417ee5373d2528aead457b0a470b3f0c9640a4e7c12c41f684db3e6ab790c5e28b7ad29739d0aabe829cf0b4dc2d297207fe3c6af0c26c43cb2951ee9628f9146c572fd47c76a93b6c434c51b9f4bab2527603ce7326a436e0e8f77b897a28bd8fe6ad783c86afbda8647f9a421f55ba297ba75e5767b30a2db111f32ec4b166abadc61d19a2538ee799accb4dc2bc4a2fa8a7ae35ee3049612f374643ba8b566f73ee6476765c59a7fe6198e8aed9141effd1c1f4dbe7ff734fcc2d100e0f08c13f13715411966c289dd3683d8c187d653291a7def67df18822445502a55b6add19c71d78a154b3e81110262c4e3fd9da16d33a091d75535565453905bd1e3936dae057fde151cb45b745caef04bbd872375c1c9f0d00baa1a56ca734fd4f6e64e9ccdc9a005af3a60089e2bebded2bb1741b079a5c1cada4bfc7a4b6d4062005ddc6b33e24c09b8ead2ebc202e0c074ab0543bb7e8d552978aeda3438141df3b881f683d86dd8ad6b54bb39580496aca01f2bd19193e2ce82beddc1c75c41fb6a52b588af1fd0feeaabd3251a0381b08970a99181b8e1889039301b5fd4f84b351661fe77557ef62ab07f956ced88f37143abde84eb52fc92a55b8866c6b6978c85e8d1e338e7caa6dac4944cf5943676b9c7edf900c9ef247fddafd0056608e4bb33f9fa104b5fbdc0c1dd8c664449535d381201171027c011a04b492e37965378bbdacc2e9b8dd6d189da279d3552296c98f1ef40d9320eecd09e8f42435e4d9113bf7656fe9ff4f5fcd5ce690d4b0b03bdbe16da9aa8225463e727b299895d5d01701c37c66b51eba105f68dd596dfacf317e4cce3d260bc8a81e3296db99e1807131d0db7df790461de717712d62c7d489cda5ad3216f119486a8bcf5acc55073a2655623cac4809dd4d3b0d9ca8c10b4a7f06b70bfa72136b4ea8ed10d7b65d3c2cf66933189fee200d4cc516c1328e0c96c4df797cf91618c7954afe6561f3233454d5f51c7829d385d8f5bcc5c45a9ae3de5298857403cfd4c62ae26e7dc1247af40e93c4014904f6b544eab1a3c0f7f4bce79954d4b96fc17d3db4ba0057eaab65d20ae697beb0603011d40eaf2f5987fcec164ce56f1bfd6554946b53e8037af179db9bbf7d7a5dfcedf815352cb0edf8e7ea73a6c5e60fab86c302f22b88be407434307861198f2e4b5b44aa9019868e9e065c977c6803b98731b443f799af72bfd621828b37ef312650df32e8deb5bf5a683fcb6c1a49a514378a3e5cd808d1ebd0c32df50ccd3e9cb396a64bc70dfb4fb6fba0e5bf2d9a0b67cfdee8cbbc3431bdc560112434fe7ff64bc0df2bf2e3e6de72e4fa86ab238dfaed0957a307d648d1fc421dc85d67f889e4ab8a830c6843f061ebc0059241356c4ebaffe7a6030e0138573c1f589f28c2753537998017f655e05593a5d016d289f5a2a8ef6ef47e1f53e72d98639307663e28319271cca0ead1fcd5344787b368ce5aa275a195c5c43959edce64a97716396200c3957f5f222ae18d3776ac97347136cc371c6375501bf6c193830f4d56e942396300b400b71ae9fed876dd25654c91086563f4faad39d4b19f12f513b3fd7354733bb2cbead302c65f79310f5e28abb1e550419580085b84b859587d342c01d294fc4a270b654367b1105513b1dc7d66de96a4c5c76032e3b0efff5bb064827e255d025df78476016bae72e6a88116e203a1f4ab3b4b0931323a3f9c900df5352bfc92a5b029287036e4507c9b470f97c4b71105685025a3f75011f731794a27fdc1ee8b0f8af0d67408e912a108884ab4db33ad3aa33cda669f291e05981cfdf52f75cd52b4c325ec6387b3cfc6b40d48b7b563dac88b81b4d1fcd7ffec55f0bcae76af0023ce3675bb0be1ad4c885596d9f4805ad5acde7a140938f70ceba6a29539c84cba9a81d2ab91fe910b52433510a3c200c3f5c54a7d7e0f9a1093cf4c3bff2880fe415c4a6a87e996ffd1e9df08d66fcded6d15cef95ef2cd18c8acbe3400eb3928171d1c11b51c32bbed5aef745588973099be8f700fef7ec743590df1f56fe3532562216959176f487493469290885f8d3ef5c289afc8998d4c9228f737711fbd2cbfc559057ff98942702636e4e6b248de4aab762335155a27ee10bed292d9f242187fcf3e2dbc767546a7f51168b266d367f6f506b67f3f43cc533b651b6b310109818533bdb5d132dc6df70537a7e804b8753e32acfe08c13cb593bbb9bfd886f51e9896e582f582d0dde49082f164a03d760be7847d0c2bdecc925dbf84369fffca8be92a16b8be60da9fe0fa467d80b3b286a3103800db0df9b0fb665790cffee10dfbd6f6ffff134d059735e737dcd304cf457fe1df700f88c3d8a6f3e4c7ffd35996d1c8fae3d33534c72e20a8f7d58312efebffa95bd7713ac59267005431767a63a66c4321d7be7e451aebfc50d9a202b6349fcd97123a8eea3a0f86b9bff7512c08c61699243b3d104c47c90636bbe9f13948f5e495098025a22a75494db3bc36681cea257328ebf582fd54a1e78695e7bfbd2a35e9c5c8def2bbbeadef52fdde45253261b7c81791eb0e4228142b0c033373715e03fea56b54aa12bc8fe2c907ab09267469114840367b1fab75f1cac31788404e1d9bcc3491ad942b9dfa91ac28e88e93e1dc0742b6a6abbbce598ecba2f29128390458329e924861735e116323acca0fb98ca4d29db84687f1171645abe3787e6675220bc21104e6f191d37c2c2ecdb2c15c6d42e4fd08d6bae31f0ce9c8a23d327bf7cb1f9ef9030f188225e4f72b7f5fbe59c44a36bbe75c177d9e338afd0e0da7962ce7ebc6c05475c7fd774764c4d9e96e65c167f7f193db395da48daec6fe29af1585a8efebcc6192efdaa3ef22edf4395510f9866009abc02cf8ac9c1b06f060b83d906e508c6d0e847d69145d864dd505217ab28035c91ef788112c44b27239d7e218812707b266d0e118e2a6ac7743e48a92e21d98b4639eec6150ae74bd03fc82625d65c3a840be1d7e0ef9e18ad3832374254a181a4b101810c0d651ffab70d7d997dcbf40ef9659abba94684ecf450a5aeef36c2af560c0a50df8fc21c648270e452c8265936a67b507c99f6e9da1d421ea006446c89aed3982a038213dadf58c7955c7df3ace612b55828d6312554716420d92cabe0200ffa869f018bb95f34f30ce22b02d071de0154fa0ff03b47751f15409000bdee1fa5bee3dbb7e25be15d30eeaab8be505c7e82db13ac107302972e0aeb83cabe115eb760e24a35589196765462e99f482479d20b87a0a427b622c9a10e233da48f367b668d0714cf00d6c5c3c1b4efa8d355d3067b365308f7ba37a1a62fb594b06392ddb0caa4fcd2b2a522533c8f78a27c67e70b8293371b3dd4e9140d9b354a7add8a4869eaa8da4869eb73dda39f34a79ee4f2618a50fb3e875e6aa648a9f0af823c978aa8a13030e0ab73e7033cb0144f30f24faf6ce1b65ef8c589587a651a1497026cb8862a3b7e2d24ab08e9db65d205d9253b29bf5c48928a18b7f403e73174f4f8d8bbccb699f96f38caa0b3b0da503a615755f1a62f0037c9db4a9a4752a02d8065e3b7dab5623d24dec24fdb8ac7379ba35d4208c16520c780fde4ac30ae307ebb1dd78539aa48683fc1802838a9728d01323509dfa8d68a8a33bb38ade13172d01213e3a113b5dfc662b66d3b42263caa11c4e394784c757a38e10cd3eaec584a56d65395cef4174baed7dd3f652e05fb6bff6b008f4cd6d08740302ed61ba556f349884c03dff2a692a06f4c8b20bacb6dbde78b4f90cfe04fda27906bc6888351e76aee325821264721b5d752ed80a5401c135e734175bce4a480ad64ebd077281bb4b11c6925ed8d079d09c2dc230e0407340538c79fde8b6cea99f225e51fcbc119b14a5b213b7e94ba9083fb306f707393a0d5d073030e2b9830bd84fa453fdfb6426fc4fdb8925cd628a97433ee007c6bd03f5a347bbf5636a91ee64eed8aabbd6c6274109bf0b754e331df5c90407d7cd31d905f2a120580f653905b311fde22bc50b1637f20ce4e417e609ca7185baad3563a67c982b65a1898a6867f0063e341532e6253d6a098fde1ab0e8a644347a6b1b38600840d538b386f42a429bfaa5d363fedb5b4ce018b1529532332fe8751155e801f7ef6299bc5decb63925a6b50a7f2d87e3fda86e31ee354a8571ead8e2b487babe93089b1252e0821c4ceea5a8e077eb86427ebbbd637b6864f813e74b53b02b5c1eda8a908caed8ed90079b9cac736380171bdf73a3259274960c870972ba1d88a9a2a6aedfc3d1a016550d9ddf192c01f08168759818f264e2065271f8b40cf814b047c7b1c0d23b032b54b3ae47508bf7a5cbec93d493950e64dcacb910bf3048cc4504b632bc941baf19031c9a6eb165e1d1986fe66d241449c3ba7c86b1e50237952a41b1bd42f5e33d0230b9fa5df1dc5e77c99e5e4580b0f8db93918483e63464ac9cb3213a4bc83025b739d6eca50017053b8cb7a272dbc1a7483e754da954a3719d345a31382745e5cb279342df929aa731f55894dcab116a9c39f7e337b80760440a325f2451d6ea757bfd4d292aa556cae9b724f132874c0f61b3e9978d3fa155ed9e7abefad3a9ff4ac14eb64831ed8f68f00457fcda2293149d443f51b9b8b9aa1a5e2c3ffb2a95c4ec2b96daf6d581a0605324e1deaf3afb96a11938e3114fd15b95b4a06da9aa43e419ff233735b50144d708494f8d54cd091f1cbe6c43a9cc13829529219c711030b3c7e280d434d0ccd2e6fd62fc025d5f9d9218260f3d5ba7b857d52135bf2ef447a24b7da855241f027f2b5864a8c99f1038540003364c81ea31785c6bae65f2c50909ca48c8c16d127f9809b4653a8cef624834bd4aae0bd7b6a2b03023ac065b37b65be99994d054a2a42bd39ef1e422eee46174e84a3cdc29c7735521ffc696fa5a7b18ffab3d33428dcaede99e3a125c32447a4bc8e0bd6fb8b9f04a1263b4c1e5a3a163395584a219ebdd1d352842ab4bb97d4562142b346ec81f8fcfa01dd569eaadcdceba311030b38ae4628b2bc0f7a9a185a948968670c03f5d87fa7a164b5666d03c171628cbced774cc512b1042f2df500e5c29fc7dac3caeae8e62804b4ae790e76740fecea38e3cfadfd0463710a4d52c68889067d76382ded4956c16b0b2367b0d52709c758584d72293ab7f9783b1c13d948341618934b31aa0b4747a6fa95a1bf52e0d0d69ef720d2412ba61b7ada06360abdb56309d9d2e5248687216a7dd8e528210d8ee7fb2b112ced6a6b7c76f29375c3ca8380d6e8baa357d650492ad63f222c61a7b0481b6414233b23aa1278ab7892909760e06aaaeee85d0a00d6d1932edd760e73b8bb4370e3b72ce4bb00759438f7b223121710eb715f560333b08a06eaf1971fc59cb209ec97c312b0a85825e02296b0608470fea98f26b87dc7fb03c12153676f22d682fd89611d4b6d507cb0298053cdaa54dd87babec78b839e536b6c13b366190e2698263d5bb7ee19ef062aa4619593c77118a2c23e574b6b10bd9ad9ca3848342a9b252d14938e96a080d72995d475af6675375f0e4df8e64c7123bd5e04f7b14f1857f6995e05a8ae0cac79d6581b9cc66dea62990515e944d19a9bddd47e51cf859a06b3ace6eb2297e5669d1314198ff738c1bda90cad0ee184cb43a97141356ce2d93ece35ceb5a99873d96912cb9c0c7a4d0bb16b6a6ce77143e860e2c660fbda48ac0ce4d58a802ad1ad8a636bb4b0d358bfca83871c81c99c062d077fe5b8a480f62a78f412faac27d113623bc23da95cd0633efd715e162443254dc19fb955498a2aa9aa492698d7c7cd7c3140e1a014f8c2de6c52f40a6b63559e64792ebf2b116f5d90a137d91a6fcfed4227b28484bd8bed16031b7f2d86b23ffebcfb1cad8b0cae47e81ca1954774e30550e73a83cd931de1497ad249c5cc95d6ffc13abc2538c15da00289a9504cda666737efa180c6885b28809a638f3ad5cb2c41c2aa2460dd2d086080db173efb2b8cfb7014a333ff6646cc20711e21b8b9b21076dbc4e98cca5c46857e0658891bd4eb80c2c3a0870635e416a7ec980ce6ce740b75356de7d495e24456bc6cc5bd542e474ded664a2a4fb25b6ec8cad6df40ea40b7b3fb94101da766a348725f4f16006d0a101faead5526d665dcbf83c081c37d51b359ac3dc96b389bf62f5118d7ac931ed1603f033665fcfe3478d8c14faf07b0aca1a2ca8dc71a86b3011b1d8ec8b0140a322fee6133f54a7fbc95367915df3d218f78a5bd10f431e3a834ab9f29f71deaed288b13d145b6824f3ce9b922a41d95e14783cf51d904e69370bdbfea5f376917afd32de49fccd28fab292bfff52245307bc5e4606f2b0b8c5e72da877e7775668dec32464c1ca9c2499244fb72b3a361766faeccf5c59633ed44850ac991744fcca3675c15745fc3158a1f34bd52fe43162353bb261c40e4c11336253911f6f72dc86255f5f5204df177e927244b026c506a1b3c24ee56f9d748d1787958c389c098189fff3769731f8ffd32ca8db2357b26e1d3eef4df58745e3ee2f2dd63ca22804458cb09e4cac13908c0af467a6d6a2c35791be68e3d85ad980246f2a0c385483156afbd8caaff6b94315fca731f2d66d8cae938b0d80e0ce0759b855eb5f21f65a7a47f7f9fcd301ce4409512cb904e181f53487e7b80d87ad87952d754691955f3d949e5d961eeeac61acbb03c924900518a5e6a70f29eb7d9b84ecff2a7235f4a353c73436d78ac2d37c08552ab2c1cca45994c5895816e01859932cc64a9054f66183a17a8665b60cfc1d38ca9ce992837d1ee5481333799221cf694215e5afa6ce8eaefab68ff1e8146466bc51f61364c7ed7ce4cad638b27b066a28bd358d05af5ac16e894b5daaf3b9e09a22788107d386a0b5a514cfcb4e372ef3c0b442189fd29ea596fe833efe49c90a9154cb69db247b05cd8b3591fd8c0829a9e5da82e5237a15c1b89e76b8b14d9b036b3e8c24084a4a442809a0aee137d5feb0838f6dbb3657cf0185b4aed26c9bc505258b63bc04039094b1960d9f44dc8510caf8eca416d1a8e7e7749c54651076fa392750ff541b79a8629f8f7542f3498173adeb218995f11657a21d5be55d4c2e43e53bf93d5f3d4b1c62725a0123e434508ae363c8a7be8336b41a7279b1071372711a92bceb78cdbccc36b8a64587b64c0274b446ba7e0a6c9165052c684f148e7789ffa466ac2ca1dbbc9ff79c1ef0a1692ec90e0033ebf6709e6eaad316a8b4d482c6b96f8830d6e91e697258fe764cfa20233454dad9092b8da94fea9d936365df50b4a80a0a8f5f100a712c4172608f07b7d8b0d73fefd5371db52a5ded576de4f71a05dfe83a0f870b7627270674026b3fddf79985c9f788f39394e7900bdee34b9e4cebeb798e088f525e289620464928a2038e22adb7f3ffcc7b0d45a7908be63ff0054aaf5ac68492d36f43e4969a658b8de255f255fd129068bb765650ba6402a1b73ad5d31b1b32233041ebc8259dcf6cd91266de497e003805f851a9ae5293b5aa1186c9d32a065ce8c516b6370427923c42677e08c55ec8685a2901a5e70bb11d57fb9424606ae0ae63abe7aa3c208753a84a2645fc7311079ec43de6775f38600a6d9168e847eec183c571b983928f370a5616f2638fa221ff71f43710d77f51a381f58a26f65bb0d13d8f9299056bc8f3ce7e2f7aae1e4bb33544d758bf38c3130ef119afa4ca3716a322d10d2758507686b0ddb238c362afa043b964dc91ec19d70a6983967732623daeb09ea12505c4e7332fa6a24f1f0f069194c9359d6d6bd0cf7fe443f1751242de68f1a07e15d36ac8b7440027a5182663733b3d143adf86f3f5b7828bb342c4d1114c8a9af614fac5be06736c3b0cac0580b2c401ec99fcb5bdb4c1d8f2861144e1a988fe3e1fe92bf8004815e4ddc86ef680ba17c7db303a9f70bc9eefd09de2431c6d7bd1f0e1ce4cdf80d273dd50bedf779eb8c25cabed2d12daf3395685d722c782be7330447d11f4efc4b480d9f04d9e16055bd1ea451c945924a8a37e22cb7bc82586be17eecfa0d36d30f4281bf2fede53aefec4f7d7cbf2a7cc953fcd324982b7aaba07e7292f2f1f1e4f8681179d45fe5ed71e8be729edf46f71b4477de4025624b70aad7df57660b351220cc0f8de934b8e2dcfa272f072e901a1f867078d2e163b0072c67117e7115e11caf628724b53468918e8a52867f5b3550d941f7f95d4198793ec5e40d1213fb9bcf16e6e5ee38ee4f591c42bda4541597aeb4d21a4d316d1811980997511fd6d903425f13a5e5e21a1d44b328148628b2c8499babdfbae4e2f1d7077f1f30a69efcb8392a675bf57b154160c449356ee3c6b6d79d48918eb277dbcc5f5dd41b4f1abf71801bee2fd46b700f6852e1525eba0b60a73372de099f5b45fd976a1d60792551b4b17274377be824ad28e855ab19c58351a33ca35b50152b5678354860b5cf0dddf214ca7c3c3e2a2fb11247eb511e53a60649025780b0eb11b8a869ffae8bfe742828ba78ea478662f6f260a527aa0fe75a3b11c7f465e4785fdcf96ec58db45b58f5ad388b33381818a9384f4d62ea9aec1380d215df436fced55fb7f262744519a8705a5b0ada0511cd41bef3aa8c7559cfb80cf7d79af87e479e70361cd8316f5cc039ecf776a955e34021c4676221b417268c986a3b3ee3cc2dd3506643001a5f9a8019d33e3ff2121210ace987a04e8ff6a5244bc596c3be2f5808d7094dc6cf9e4c0cb2e3ab71c636d9c4b275795503b98604451f4ce4a32f25c81116dbe705d03e9618dcd3e1195d4d4e84aa7310399d7a53c9ce6370581537a970661d732d872ebc917f5349dc31d2709cfeb3f2bf328fae7a355d7b1219f048f7051bebfe8e6b117187af48a527a5e9b13e6fdc2fb57cc464629044d23804827c0e95c07124d6e111cb7f459b35aaed4c6723244619f198ca28cbc15f6641e60c8332b89a98d84924eb025a4e144f994132cceea3323617f7c9901fae4e98d8a5c0d5d54477433a4fb389ad7b08d36b68994afd08f2d6721830332f4c05b65f9c640a9b0f801d408c57951d792ff40de3a85d241944494168b85d6c67b270971f5e935614865c0b99dd15f131467a7f68294d1c01c5728d21866726953c32388ab7f7e64bb3190a6ec66a1bf361d490b45da46b5e27f825c63c09c6d20efc62b15cd6c5362454c329b1f29de05f4debfad7159c038760ff0168a795241426a3b0e21a7e0d0b82fe7a4ec08e820333d644d270f2d0fa12e37cf34bbd73d8a3dafaa118abb5037d23532f4f276326c295d309f2ae758785aeb7299fcdba95eefc7f17b7e67bf85a68af8df9ddda28f2f6184915543ce8b9eacc1d5296a8c3889acfe88c5d3e085b1f369362515942515c251e6afbdffb246809d89893543fc1da02734f2ac73d5bc1a4430d35cd6426871525a68d7b3f433533c2bb0b9ba4cfcd4d6f4a376a1a73cf8bc3e7575b2d125e838b6a1a2a5eef09651479d7f9341f0062f10e9a0f8b438c13d13f84c210b276bd5679fd27d92eb440b8aa5b87b457d967ba7cf87c13ec2bd18a062ecb44276080511aaaeb45b0494d4b90b5e3d59cda5df83724c40192d6abfa422f690a8174fbf0178d82b923c4594e5ee1e252d44671d8efc181e9eb62772bee123a448eea36ca3514f2e922669deadc0ef6bc20e8410fbe4cc8eb87c6f5c63d68613b031e1fa9cf11f7bd69e3e87944a7bfaba4eca6d93eae925d1caf2726058afc5929493c3975a1b1ce7768e1d9f698db16da70a9bf23520d71d7d2c9c2c291936b0d8b317638f0b21615e3dc2e501b58ad608c2ec9196d95bf41c512d744c7b7296afb5766ebab941e3bd14214af45e7c7d1b7054c991c8b67f9c092f9c0be3801d2316c0d14e8c3bdecc78f7fb8ac3a6d11e9405d8b99bcba56192caf0d721c3107a89c464d03e5ce3a2c9d279e04454c80cab94d7e153532717a7b437b642258f9e282fc63118f58833f055797fa67988c87285e837577caaddd77bd24e0952607be1fe56ac7768826363677b14b4e5df3f6d59eb184bb1a666822bbc38e6e66dbc216111f3351cd03b751523ecf2a1deb15981cf12b5a52453e40df484d98556ff9ebe5889ce974cf375e1079824215c6a18a035d7ffe0e501bfb1ff1f808094105e399a774230de50a35c1acf11c85175a22af99c18826d9fd6f4e80f8a959b47804c85617b16d505460037bd3d343cd4407f1b48d120033df5d20bd511163b9d4ce0716cbe9117cfeedc4ab7484908d2aa35e0149a78ecd0846ad35f31b2905d35a02d027a1a62d4507dfbe37fdf1eb0f3d02626c6baf863e8592ac3c6c4b67511d2961c8faa96802547459fcfb88d4988acd9a9677c7f38ee38cce5d75445540333298e4cc5d1652f4540d44a6c39254f24824e43fa477ff72f71418b0582e619365daa7bcd478633c7649cab983ac888cbc928eeeafe8c3a3623a81d737124d3b545ab62ffc25cbed5b91f4bda36bae5ff018628125a07fce5ed3993833830a38d31ca9315b2d7769e3178ebbb3fe4570d220e64e4d3f1ffdcdc5d3851c596d36116a416b4fece6701762974db648876719a0aef1422321dff012111926f3981d62b247ca39b8c55eea3f63c5e73389fd2f51e4ed60d5574870e0de830ad22e1b7b818969114e7aac2ab71b417165e07341e31488b2d294050cea65f469d8f02bc4564cfda976ad578e3fb19fb5a0b22b5cfda4d5eadffb92f441c7475dc2c85d11b83da00adc851f9084784974cdeea10f84e765b7846016680b723d37e33c08237d1b707b7429825420349ea012dce76bb81e9d143ae2eb3ca0674b397848a91de4421db95bd28a4fa8d845b157d59701ea769f5f556a76a518ed5552da55a061b520e6b50af8df7b1e1936493f73aa0bd0a17e187f8dfc92b8dace51ef37291da32b0ba6e14854631cfe77625c9776e17bf690272474c38bcee30d344639a414e94d79525981dea0cb2e40cc7004b435dba4f9bdc980a3b384d1a25bda9b0eefd1e71164156b3d577057f53fbb3ac05c9fd0e90ea4f0bd0f8d007f515a335b15f65927d361fbd269b2d697a4e4751975c166c917eb770cdc832296057e71c4161382963392c634a14c726097a1611b3d1cd0e7147313fd3d756cd04f01511441bc45e9f1f08e7aff9fc5daf40e01afd853dff92941f0be416336110793f0d833c1cfee76fbb8deb9f882b2380a195e2d4154f772e0ee7f19cc57e37227d529b134aaa41cb59d603869e5d650059e6730ee7efcf195eb6cdd58ed6251f16e0af3d6e03eb8f91aa7acf72f3d32698ff44241198799089203f71b0805100158e9cc97f0839a8cd02d0e0ed21bb2b00362c12e5fdfd48bd3b8ef70d65153618217d19f45f0de84520c25c52b4b16a323271d63b909c38070dc52f3c1f321c21fe335ac2e7762825182ac3651d1a8acbed94321b818ad0dee9964d249b564e81cf3028ee7402591ef4229ca163fa1f7e39f10d336974b6535fc794fde1d6c34c2b9331447ca460f12b87c0fcb5a07cc91a84637a531047dacbe96bfd4d831c1231e951aed7414394b7a2d7a1144d6373e8ba3ffafca9f26f9f24b506bd72d0eec7b51d71969d21c6b9cc6899195e7b098853ae2182acf45715ef94f9eb10a0c4337f77e70f033f22e799019f4c996bcf5b378345b2f7141040fb547e897030c33ec13bce1a919b10d2083e3ec753c7dd38101d4803349153109eac0bd883cdebca99a3984e22e74196b3c0b8fb4dbbc13c9ced0bc0f0a259702a56481cd19a1dd7acd6ae39523e3709b6742f0c02fd2477321ec486f46a05179af1ce1285bc7c498af2faf4de44d4d80b94ff985341291d3d4a017c2776d28f289ada97930bbe8b716550e0c9c99962a28b90fb922169e1cfa1a9307b1a9733dcfca620c0686569e1b2fd31f866354178fc7cd8103659ab16a4b073fad733151807a5e8b5e60fba841fb505cc48d9088c47bebcc9c243b6b99c383e0eccd60ffb5785b3a43cfe765a9d8776e297a024e2c6017a1f8d67a7eb76ec047a9a48b9c4eeb41475544dd88bccdbfdbca4d6f6458c54ebb0328423d8c2bd62f790cb4071b1836491a2b6945db2be0f599be43a09130347a8ef8bdb5d4d9525abf169dc5a2b6d4ca1fa58f5adccf862df837f08515bf412508c886953b60a42d296940b36841f4e408087c9589bdd8812ccf3d311db286ebf9a1e558de7cc834262858110c0e2058376936af4d959d3e699d45c1a69e7266b33386c793d0ef736f3f835909c8d82c61aeadd7fc29c5c547569a41271178778c8060fa4d8190f255d9d17a85e1560d1593e8f9dd1abcbb432f19c32ad57be048ca1b62e1e4c197dec4941b9115698735f446d46e5d369c9870fcc2904b7dcf389f3b9fd59fcd65c4743ca25dd5bf25697db504b781a92c3e1844b57b04d50414b6aab72595abd8700b795914d642cf46c75f31902e13ecbdcdce0f34545ab2bde0024808c909c4d45f76daa5c4ec286ff9778c3ef25f841089b2e941928c5f7ec1b8accefa8b7f779c9b4b5a3bbad00ee00b1e3cf9f781dd633d2ce21e5f37dc942629e5ac9b11ddb31224d1077a1a6958bba841e47c7398c9793f1498901682267279328bb0d914614943bfa1dd167060234beb4a84c7f7a0afda526536ba510e462b5c6de3f42ecd8aa8f589824703ad0da5b1bb1b20a7668f563d61b95597b28f7dbcac780e091e52b2448102e03c6e09469bbb3b4983ea6c5063ac6d5fb7b15b7c2e9ec56388492994ed8ebd2614be005db1583d309f32baf5bb976cdf01eabfb902e3b97131597ae82d9913b20297ea5d071ba9e89848b6ecabbe209b0345a3163a8f88c63cbfa2a10ecd248d188632275c95c8955e7498f728fcae8759dde49942b9befde1f3f163d30d3dc50ede45b97dbb0532e9032255cbd79c084a4950d86c55555e2c28613e6b834d2f624ec331554b6dc518e14d1872d40860d35b15eebfde859db2c8854ed2972b3711076f6ec642347b4ae7f25f62282d846144404dacd05e496ae8ca615b28a094274ef3e4d1043e4b301788b775720bfa4930174ff552ecf38eb158595c6e17b50f9772aa6130e3d98f29ce7c4de24db27586644d4a2f97c0d8c0a3834660c83844753b78a1f17c9dbb6b630f0fbc319b99dea153ea6314b10a83fbe3e9de0efa05bc4e41c9c23b296045a9c75f1ef5f8d4e32be1efcdf5261b6b60d1e275093c6689981775bfc369082c91f13eb893557d898e91e96726cba8489717864f316a4f442e01c44aa4333dd9c00e9e0ad0e8fdd47f714cb600a1c314f4fdf909864e1782a4ea7c16b3c7fa257b05d6a9fdfd0e0242cfe4445e8a3eb059a007e3d96806637b72c990e72991dc88cbb284d54831bb8235e795e2a5488dac696862ea575fed2ec40accaae9178c30aff9fdc406e61cf687abe9d969830c7bc836c790c438501b211e5dbbfd22618d08aa759b1fe20abfc67762dcca8dca7f91b1344f5f6410a2111cb4ad1a580420a9a849c95200c5d79c623fa0a128fefcba697676c7450ecf423da45d5ddfee053b786d0249ec35594488f414425b69cdd4e56040c1575a15e4bd463a9cf8bd6c38952977aecda510669811256e97b544e7d9067d9b5324d1951ce534e7475d9b5f514db3a7783d20a4f30e379c01afd97154ddf4c10234b5dc35c53743ea4abcfde3c3e48f50f7e59f54f9d013be22b564a75bab4303e05c38e4bfb89d5a282b5b5b57fce8a9eb276b663c8335493905d67ebf6fc82cfa14f4006890586962f75b8424902eb4e4284b2bcf3903ef0c4525802d78742a91e062fd52a88d6dd9caafc79b08b9cdaa0a5bc2f9b2d651fc9504191265c53ab27146d83c0840246270a835827c2693d043c26fbb2b6d1e86276fd8ccdde91daf20edaaa8c53d3d43292c28eefcbaf4e706e9a333475e72411d8c17ef134c2fb4ce8fbc7e11b99b538fdc919b046542fade4b1ddc575271f9c36e8e690b7b04078244c96d580901e420151588ea1dbf62f027bd173d9f43a4781ec812e48445e7879071c3c7b77f3b43bdfbaa663978d2ea1f0eaf68700decfea7b0bac2d468bc1e774a3354c0ab360fbfe13a2203284b97fda27010f3d3943514c80565a257bb2ee219ea6aaf1e9926d690a46af9e237a745d7fc96740e6766de06d70f320bc5c877047bdb0485b5b7d38fb914632e75160816692be6c5363d963da525763749052a333e172852814f1e71cef9ceb9eb9e3db7b24f418e54b89a7304e0a911137cd40d99b53b12711069c95b97ab0d6dccada166086c54d18ad1429df354210d44a92c96b9137f3860e77fe466701993e81c6ea982379384d5d16b7550b4290ca57370ca6dfe47675fde25eaa663518eafaf3666656d8fc824fc5906e5d22123d9c34269474d8d1d5705ea039d9cbda4fbb1a3fc1851dab8750f0328674f51aed3f43435e88698a2043e12ec6181b381f41f9eeaa758314b191b8eb93a6539a96bc60907f98d0fe91dc98c4a7256a25ff2953ee1c98d3253c1160bd29310509acbd664b01e9c669966298690d4550d8e6c5a2aca9ce8498a0ad76b3d83aa72a2d47eb0b80901bb0eee8e89ea9c44aebf1a7b1a2f72aca710042ac4a7ce34395216a06e2aa9d6ee2418884755a82039877d2ae23db71adb0a71a4bc7157ba31ae31be9cea35ac10f39b505e7430c4e7577a09423c3e3d09761b20f6f2b8cf2c13e649e8c4262241941bd9e3a0f2c54ea6d2574dbd42072cf799d763bcbc1931525959e7f1eed3fd4dbd4cd951be20696d0f7ff12392593cda0818179dad9a450922038734f4a27dfcea29b3267da9e62cd4dd65fe29a82bce11b5aee11bb4432b1f872210dfa3975166ff0ef9e01edf423af82fe639ae0c5e6ec5e8c56cae529e69369ddbb08531565636b39bb72a22ee6a126a85118670723fd4b7b3607f136812cd3927c4cf64874d4245f5a322f9a24229d61d9aed9a9b0f4017e7e8bf088ffbbd6f10f0e0bfd563859aec0dab87f8a0cb2fdcf2ee7ba0599899ef8d9a0da73c4018bbb8071155ad51faa9d59bd2f41f28bc8f52b3c56486f111ad36b2489001d5aa8a01da13b6efeeba3927c2b101f256bc5b7455a2077bb615588172284cf7f37e274f819ec1a6252ef9ba0ea47f712d4b3c26408d72eb6c360be40769004f24023332c6445db9ef4b700500f5e30a5b048807ab081701e8a8e4ba7c2b7ddc2dfd0fcb7264204154614dd1207ede55cd09eee4455c4b4804c47c1b14568fc4521fe317a814bb694152ac98785ff6bd006b6f8ead0fa764c3e778de776e793dbd6d406d0ac58d9649f16fc2dbd34c83de7ebc6713c6f620bedd40e66e5a10de3c119f8d74ce3d37655eef63a019ae01a34c7fa3cb92a7975185717e3147b30feef77a2b8b6fd4cf420039c2c756b16963abb4e01b592a1a90fb27e6825320fb98464a3f0be5b0fd8e73f605d2fb95f9a9c0db6b8da2450e2b8c9cb39b5b2dcb283ed4f8c3539a30f7025efba228c286615d3d4dcb9437ee2c277823162fd5d43e03ab18c8ec2323c0c2e2a36458877a910f50686c8198a6771892171d595e88a4d2d813fb9b3467edd05b3c18781cf9fc62ed006815d65eaac92d9401384c41b0a96abfcc7f76c56d1fd686a091f55456bf629bd95dd72ff7b46e4554023b3df4808ec6cb1faaaed8d58bc0d8ef97980b6eb505dff7a85ac5df4892822cc746fdf986666411dcf06c1134828d0cba9432fba50eac120d46f651180bec078a15d589108fa6326d219ade27fce7e4fe98e8637765743e938346cb97e0823a6e2d7f9ec171a04ca83e1addd145fa06993d98ead354e6b9d0694bb72fcb4211804153d782a46cb4d97b6f5971077217ee0aefb53113758c2eb59349cacd7812499efcf798439c119dcb2f41ef520b99044fa6b71d11b79b24efe9be8ce0d607e9b6b5029c2fa264178d12e53f5a13c48833332d1c0c5dd73c9b6470a49ed150057151da7e4925e2e04fc009bce32413093331b182228600f7f5ef265a78ec65ca1cddec4a5e3c9a212e9995b897d43dacc9c7fb8f5e4e05041e329e7ea06c0168a3e7f2ebff0d567d79787418cc3ddfe42a6b9841ff2647e7e71402c785212d301aa8abfc2562cf91b0ec40c3abd94e39f73f5b7ffc9db482d659b85b33291d9b1d24defab0cbf3188b287bd4569928b550057055a5e161aeba89f0e058054d54ca478f54174fed94a670cf5f621a5828a14e40f1dff90b13701f0f9faef91470fcd460b63ed04ce5df2a748ef3e576b8aee8c72440459cd33021c504141859a07803cd2565a2f1fdb4cd399dd28796a885475e45df97ece25d565331510f1f0365e262a2b3a3601c979e000ed893d4967cb92ae50cb42a695bdd6bb4ecbe1c45bead82a82fc710e70cee8ea9c59be366d4690dff72f36f51eb7d4d9f919324b33f09604731fe2b565c09f73e63afe0b7a56e4f89094969ae81b774a0ddb24e3cdb3eb8a3266d82230775eb15e30e0670afe88f8f4cd4bd0f42b2d8b61e7f31bd7fccdeae7123c3d8cf5e5548c37ae4d913933873f2d9de88fff992e1b22d136d6b434ab4154540b78d1105bfd1d1fabf0d2a9a387f7174a7f411ed3ff0eb3de855d37cb23df9ba7b8f581182bfc69ff8c070f0a350088a40e94d3638a61a19454a3c7e768d8e9f6a94b25ab036ceb62f01e9c46df45bfba134acf4be88b36fe2d21872cf6df761364f86c33414c3d1c7788b722c5f3d3be21c764cbafacb122bd15aab8575f79f67fb5bcaf063ffae1e761d23934ee0d7803bc25d9097e82de3ad53e6a637a0482fd7210787a1d40f7b71fcf18e6f560972d2317c3baa8b0db49e6d6b7c3e0a32af0b61be077e1b8c29b50806be16f40347e56dadde9edc52a400f19cb7c87193ab21859221f26482ba5ea55b607e3ef12fb943abb5ffba6b510c775568796780b4ada3f29d44fa6365cde96d44f7c19c8fdaaf18c1d6331eaaab9b53ebebfb7ed3bef69beaf962cbcfcb1d2f9e546266c5434cfbbe85386895c2d3136bed562bf4c0ace304a032d5d93cd1c88075ddd3de69adbdc2cbef25df4563964c4e660724ded7e81bdbf32f459cd7f59a2d52bd3effdc7cfbb0f3566d294ea1dea82cf1d39e119ad5b64501c67539256a6231313940a0b8a590623fdb35473e577991087c423d13e634c8646975dfffbe4516d8453bb87d230e87072a5ff61eaaf4e8a46d94619ec4db466ebd86d87140c526d9cd82fc0abeda042d0ed90c6831e6631632f1da851c14b3540d76c60c34fd909694591774f6b715111f65bd05945dd1897327c7b67bd2ec8fb9c37e0b656ee247200862c4fe50b42797855653ed7a179637e1ab3afbc78a5bb1c9815f5a5eae1651de8d5fa277bb297742ab098cd916ef64106ac6420364eaafb5ba207cd9671c53e1f3d15b20850dcbee6b01fec2b3baf064fe5f21456f8db2b0bd17ee071ba00c3a50ca71132f71dfb23cdeded8dfc8b798d8e9d768f609716e020cedc2afbc026830e55ea83c1871d6c31dfdc7c08681faaf1ad7647a6e517ed0ab09a41d24d748011a3b1c754fe93c90f1588d3933bcab41317bfabbeb85286b73bd50bf0c12a49903f318a83f2b848520e858aa6b8d8611474f29b2b72b96344ce4e8260ff87bea84b1385f2e6f3bb0b4e3744c750caa78ba52f41447a688c12aec5a3becdd05675f18b9f64be181964da98df1f40298183e8d87eab9e8c23186174bd4bb169e3d82cbf05a1828dfec4278d4d922c911db6f46cfffc69a78198f87753d2cfc2f0a0fc9e0f5066ada021b0cfe9f3f1fb1d4abb43638774dfed88e11a7ca6761a71c47da818e29999423c491d096fe40a2548f8eadf9f4791885c14eed438fa73a871b6df7e85487cee19f08535b25fa90e899cdf4ed71bacbcf7c09232ab1d8e701c29d7dd555b8df8302117df913bfe55c3712c494de2d08726bf167e8acc93ddc93e031ab0695c723e08c1047e5d88c28afe23c888bf848304748bfa3977babb077dd11d64647b9de0771aff724253946657b618a506c0e125c63f3c82ae0149f50f29c0059e5d84205a67362ba70133ccebf49485019a15672efa8238883701b669a27d217b6284caa00015a33f9d681a21813dfbbe9bb576dd157c54c729b34a9183a57488be3b604bd74a7f7664b372851d54182014ccacb9a65b7a35254f1ee29a6721c0842ef96ddacfb1c33cee7eb9a381180ef51ad87b36333c2eb347a994adcf5099fb9e7f846576f9b755d5d7a3d128bf7f95271997493abfbed68cdb903049a311158d93f4351b2c0a6ee7a8aec4142226012c2f1382135dd97e6e606d4a9fd3da865ef65adbc3bde5ebb668a6bb8254a34aff2708f0eb4a7cb9c90996beec34118f7b61bca93a5647aec3e4f2d54147de0c375f8b683d0bbfe8af204c1c4b910fcf1a3ddfe589d4af8e66e02d992ef5a79a7320f194488e98e3d1eeeed8d712b24f38f790e4642e64d1b13e0f8aeb4cb70535f74f4c7362544bb754cb9b966309c4626c9c8202793d9107f84ba65aca4565790abf025c303e6a8308067ef7e010edd979be0daae99ec0904580225a637f6e2f2be586a90363bcbe677ec1b0c70dfaf0d6e139edc581dcbd59fdfb928353ef5140830e79dbe20010df153101125d9338682bc51152b4080f6a2e96dc202ab40665e863df874382dc25dba595851c03a45108dcfb02e58bccd1369e66765a5e6e8214a3762469100df42d0a712682ace249740bddab2aa51d44b6533ec92bfd62d9c4de04d3336bfa33f03b3ed36bcf363ffbe054bd540fcb33dfd6da20f723fefc80b56c6b52fce7579328c1816ba31d371df5af46991e81f81656a450df6bd04e3197c26f1bff3075a7527e95105c9b697ffb9e692b6adc456ad5ef786d71e45e059738376afdab600a1402016468e9baca0f10811f03f99156b47c20e0933c07d96ec1dea6af30254f255464e27e0d8645ad7f13476a28bb6fb1e1b18f3a2177edfbf19bac0fb0f5a1548a66377e26acaf1d048bd5eac36764b9bbf13685f1d77be6beac64e33ce867a1440314918792d6daed28c882f2a2cca38cc9e73a43ffd3139b41dffa108df796df252501edb01aaff8774930f694eb972e526f001c941ef9d20387da3b51260adb51d82e5d915b11c6ca651ee7ee5fcb56cf799799db883652a3ceffbbba6f6bab07022fa301346eb77011742b733cb2eb4cd64af965fe73fde02a7b5f14df36ea6594f94579aed4fcf60abd312870a6d4c8413509a66c2a139c52c675f5964a41548f89b363718c4a78db005caca4e17ac5d45639dab7538bf64e41a0fbf0707c443fb2e5b668ea40b05be10382af70d73a05ca2bd08f8c7e033083332bea88a0e1d8d85d57341b996a584333c963d352b6e04ee23efe7bf4af73ac8a778e54d890ea8929caecbbfa28519ea3faf81b8ff9f1088ae12a5fc89bb38491ae88a92fb42df310dd9bd867e37da2b2c06a271c8e2400200289cab51e06d2ebed20e09763a4f773f1a445ad0fe2454cecc488600c670f1c537ed07f54b819ff7daff01f40991c495a4c91a3b38deb9a0d6840ff0f3bf0447b6bc87645277d1c1303682ae4629331ed8135d97c34af2063fc93b0eaac502ebc35ce9f5ec9b4ca40ed23dea03a8753d6558d8994ae7c4738e31d2285ab5a6bbc0c2e64067e5e2fa855e25d5531428959c9ae2202961c28c51bf0db38f3c9df2317dac7a80cffebeefb0846f01db261cb0e450cefc85838cbed5efbe9d0630b90e110200a67dbaa8f78a605c0bf085a78fa8222722e48e524e1e8bea96edaf628f46118996baf03bd7c387f31032b96ff4758c9dac21eeb1d779e67d3167da9d401c327708ca8d4e012506fd4c973c7506c7c2e37348eba80531130903ad806a7b6adbfa25a84468d07c91c242af6d865d0531f66a305d8329c0b779500a5d3b405b93c406f9007ed97db3d05ccdab1078a2afaed8eda69737bee3ba2d4b3e5e525b4848ab808fd20f0f31690d96460d0c8897da27ccdf66506578af7fe505942c04ffc9ac97f4f346de8cf83e12f57d380b8cc5c8abd3c48d3adea8e14db5d010bb908ee191f5a7eacaf1415ab5d432733e04c09c1bbea07528770eb1a4097732c32debe920a60e35f705b20a9d1516919335c7babf6e08981d350bb378df39510066895f78fedd3f51d6f80a1b41b229288f5a1f7d4604f0f06d344a095d9b20b1b00cbceb2c09ee7bb7dd558bf4cc5318a026a2506830623234a75fc971d4c18e5922c56a2a5236515d862f45da8676f0065b748ec771820d46ac1db13872448a11a9eeba997b9a3044833e92f1d8d94314dd1b9fa8367f8fa53f6bb71a34faedd6734332ca6f5cc7663a6af7e2ea4254b947abd26f463f07681f9060baf32a7757c3914d969a1738944019a852c53aca30a542bd939be865dd88fe83e521c831454068a973861a2a98113be702163e52f79c216484b86f00618dabebb2690949a21fe618d7a90e113c9016b5dbd68f781bf20e39038b197390ae1570b238e2dabf2772c4ee19417bcd5c443c5b1affbcc404a069bf6c5a7c287f73c1743ab09a63449d45c6133715a3226476227c401a23c6016eb61e904dccd594aece97d03f4a70f653351319ac83ca3542b1b99e459d63ed3afe9f20b8b221a8c18d7b078a87a04836bd8c4bf24903698e114b0e073a0cf07d6d059feacdfdfab4e14aade98aa4f2ff7df8e9dc6b155891167a2f81d8fb4d44eeece11778ea013114e125a671eb05c77a116b8779f5495571f71fde2d4af2ff65521e0c3fc7751408ad61e114b87545ec30358a28cd58a87f9bf7cfb7289d51571fd36561f18769eebc88d8ef3c28aaf9bf0671399a433eea457236865e01d0912c891368cd85422d62c9e076194b4e76032df1a4365cbca80a4d660e69bd0f16bed2b8eab10f362cc3f4c8fc9353ed3fbb66307ad633bac76d2f7c043e7b137d34f24cade976c6df90b879b6b9e850b76e131d824e0d3ac9506874d12cc2adf9145923f2fae3ccd263c2e67506eac1d9511d672cf257ad27ef6ba379e90e42a72e5bbf41473215a23c5b01a44cd6dbed7df118b64f2d425a67f16549ff67a86b902d8824033f54b3539a382d702779286d54c12f48349264f480c90c497b5cdde0b540424196c524cc357985561eead7c7aca16bbf30f8a1c07ead4a1701bfb068544ad3a4b87f690e36e7df5b75d380b8f89fde65321d544b2b9847213d151daf7c1eaa2af1e7949227d74b9b400b0627f2e655f3055995e40eada20ca67217ef85d6f2203c07972b33730ffbabcdf65a250b34552cd20f6b1c56097e903d9b98bca580bf4c489ad15691ffe2ecaf19729c529dfe14d0a5a7fc9d6d6b9bb46f264bcf75f550aa4270ffcce6b20466c18299771e9310e7a679046d511bd9b47ae192a8dafe2a9e737d0ee797f6acaaf5633b0206721081bf123d4667858cac314fe3592c766fdccf7c46eafc83e0570cc5c76f2568641aad209eb9ca13bddf28b7aa2d9956f1822dbde9f6120567bf4b8c7e078a4a306e6a46ccb58db5bf2f407c622263b018d830a44365cec35ef847e5cae08568463fca13e35cb0d58e00e517f38c8af1df8dcb431a4ef7208fff7d9e6d05d0df215ba33363a3a8db3f6cab56bd1d0141d954975791832adefd9723e09fe86085511e1f7403af977ec9dabac76f243e55694a92d0e1b2a9eed294dc528e9b97d01080afc23d69d6c4f1303be958e668352f469f10eb5da1c3857cb6f3d92413ba1e6cb920b7875864a0cf2300ad53230ccfacf3c303da5dd786ac72f390f8883467a528211a3ecd32d5b6ab9d8d27c4fda2a6d05cf315fcb446aa23bc80bb319b02978494efa3f67ea431f915d5fb0001887029bd2401c63b6b439ba1959b93fb1f065b9f337c029032987184059f45a96538be8cc7d4f51a72ae58925ec38b9a5e89970c919806e7c9886b83d33ae9e1f8f064bb534117dd564085bf44ab03f95da27d6d11a83612868a9ca3d0c26018aa9949d57ca61444afea282cc07523c95d061330bd5721bc33a416b2d082049040c1fd91d1972a46f1691d0ec9230434206879e35186a79952a67124dd61415589c6e7ab5cb9ba31b06489bd13f8810244214ad54235f09bac6f1cc50fa4f0060765be78ee59862ff2a86853f99befec670857a979bfdd938d4b5e68b19ac77fe9040b6680e24e2a6d70e0ccee8dd93c67670c4d11350adb0afdd8c9389295cb4f435fab0a16391e324dc66ecfdaeac6458fdac42f00ec8bb796269fbc9fa128af5589fd01fba25e2ffac7e54119d42e2fe6868531866099a7c45bb7da25e0ec60e72c6770f1091d751159adab83f3c66bc7a0825d375ed927bb795e55a01fe47e4b043565548417bfb01e5d40581e96653d50b477a715b6355561b8abedfc53a0913932db95c563a9097e597e9e3f2b5055ccfc53413d3a5a89f4f00c4f1669dde0e019674ad501ab205eea864e6f97603314229744faa0431cf370e5f3e851a8cbb660a925eeda28b564aa75f95f85718db708eb9ad7c09554fd761940cb295f857257dc7f14c6427699b4ea9bf6a351bee323b54528c5238ac844269a2d83e8fc4f22bffd35ea5f0e9311ec6fdfed4e9c0dfc52278660750ea5c381cc2e1ee7d62d5c8c734973b233be0d61acf34a450a8dda2f0c857c385e8a7e6ab7b54b5b2071bf19fe975bab793c51c7ce74b761c09b624f7617f8f876136ae7bc3d5b23b6ad55d82956af67b36ac6bb59898932ce1d01c11b5ccf09d8b7e43e77e548d436fc2ab21c203460c036bb51448bf74779948d5fd7e77fa8e63615f7b65f8bab00395c0858b68383c18681fe1148d318118610dc8b0edfeded3429df80841bde46ad89b47951431d26c1073c7ec79023c81d854501c7d5faa4083b184328833d12dc9c02376b9959e6b3041fc8eda319d3523ee62a696fb06b6de4265ac1e2d67e4e2a35c50f6e2c0543f1c4b16e1f642052bae850d71e02bafff10c900279e5d36aa2e4fe12bbe4f80130e60853b9455af44830defa69e573b44cb640c8157e15575a9aa1608763b358645f7ae79e7259fdf8ab39118636a51e010930017d094e18d7bf11ee6a12f4e2d2663d47e16aab5bb77283fdf8f5c38b5ff152c1395f102dd838fa82c60ed0dc9ecb14d5a142d5e02771302ce117a01086f502fac2afa6a3e7a683e7082b450573dd92f67b08c44edde153214f48b512befd44411b51f506b63b0b0c493c035b5e252d2881586d6383e7ad991fae7f0ffec11931bef708e7f85766fd2f0b1889a70a16b198391a53253558c208cfeafdee0060212c12d7632bd6278c26c53cb3798d4a183171673e6b2703999dd98edaf64593a2d7682f0b166adbb9deeb6bd5d35a1d719954414be59885706939213e877281c78b45dc1270192e4aa6eca8dfb6b92656af2ae0d1d8bdefeced685da227458a18f458866a6aa9e7f0b79051ce2a20817e5373b4e51cbf8f1caa22f1f3c7515c2f89b846a751fd0ccb32ae807ef5c7a2e6e14767ef33c8db3e654b07a0701ae15f347f19f5422fecea7e91f23ef3679879996416f410c635008458308bca566cac43452c82b75ecc4851d20310a944becc571dcfd4882c1eb871cbf31b7d67f642bdb1c5ba0d615a72f48522868e9c46823332174df1697ad4b134ff51a85e01c1651f0bf1e0e51c10c726632c642ba1bee43b8de0bcec205a2bd15ea222b13eff6dccc0ce6ffbc555cc144e1bd4f70be83c2389d4f005d778c05e6de627754d2056061f3596e71f0bfbcc9e771e089b3ecf629d0df67cd8829b479b8eee4ce11b0860812f7ad8a0dd09d9337e2b0625b46c07d243dbd6e478ab1c5617ea551d14579804236ba84c64fcda4ece1ab0713c72016c6261394ea0b4ebb6d3b7151abf655fd1fdadae03873d870762191f3c98e43ee09472706903c86ef5a38a900583e987b89dfe8d0b1f017c3e9f59023fe90651b5af70ac292324d205d7bb93eda5f79a47923c0cc045e32e2427dd7c4f771d640de11863ac0c2a53619cae1fc646a170c408bd0769cad877c86a7e3f871dff440a19761cdb98ae9beff22fceba2a1b58bc772715c89b6261c82b1f6f0888d50d706990383c666d5323d5f8a6e149ce39e629fe1c627edf917445b26a63b26e0ee2f88dc2985a4a89116073b3c778e31b01899848a8e7c467e07f1cb29eb3926b6a298d44f2ed7db47271463dc8f125c303a4cc09bb95c3f896c12254676f6c268c52e5a47a24d68ce97f83ed6edd8177c6d106e9b2fc8fd217ce105519ee45085bfea34e89af9fd383bf485388424c219c90046ddcf959eacfa996abcba36a51ee6f6779b9f68ef5fc9117380da3e4b06d6f83ccfa5aba6f362b8f83771d1d6f197b2e6a258ed24d9dec503152f0c892b5c768648acf49f2c75b87c05daae6057af8498a5615f6cde69e5ed6ea2c278ef84cd877892d06c68d737f7d1da11f733fb628258b03b34cbd37a635248a5e540b400e7cabee18629cec9d55d67032683265352fb140d0c5487461ca9c81dec9921b48f2a4e6876996fea898650fd33cc7bfe2afb7472d350de22ac971ec3ad68abc0c01dcbf5507d5de64f1b059ac3b0ee8f6bc15ad7260998d5fd4cbf658810fd6cdc123379f64bca6db52c9e54e49409f07dc2ad4f71e03ee19a0edbe6929a3b665591ac13711f0f288ac616c483618cf6b7daf5a01e26e4ca97f3c91d62a8f39e6720484c1844f40976125065b479a84716ecfb310a4c13d43fa6a9c2024e8ea0f56e89a320946ac4d0de7682e73353a83cbd86844680d113b78eda6f2fd0f94814e87db3158d2052a3429a80066b3dbf24b3f59222230d4f948b0a810c3931be6abc08fe391800efe6d3141b42b2d46082eed8a637a8efd52f49e4b5de49c54bcebcdfb3915eb1ee13a3550ef5613836f52f212a5f61273624e8644ed06f0ecbfe448e0240b9b09df2cfe147b458e63f0f6854bf959bc6910dff951dc7392eaea57429fa89b3172419268ecbe040c7979f7be6cc235ccf85c0df9603b34417bb0336b3ec63cc49c7d29ed6e0e05c3593a37208078ca466406151f6ec3f4fc50f8763c2a1a9757bca83b63854270031520d677b2065088059d6c0410c72a0e13bccefe79a71b8529022f8c191946791ae3e1deab76af361ca6eb935d32073614d152a20291fa00e049029a363837243c5d49584af023f081fda944b1f0ac3296882578b4d1d1261d6517809aff33c71330b7a125545a1068f52ee86274cb7f850da118217565503c23d0d332f056af492471b194d18bd6a356a8e558e976a81cd102bd2c68e8d85443f89f135e673abd37066133b9d19c75c4fb005878e7c6e4c2b9314550a1e9e4fba076ea97621d63b24ac301e149560a0f8388910087dac37466fd7b82a5b400e16e0a49d0469acf17c9f50bbab8c850d8bdac6a81a2974880b7f52adf09f9113ce23886342cf775e218557d91865495327299e1e5d8fa4d9b408dcab47b25de2a22bdcdc74a54062184b4ae0237da7bee261fda87c48796c38ebd1ca1180fec2555c1afde6efa006e9b2179d44cc658a2e644553d4af02d0b9846630b5e21d55de0f7d4692c385c322dbde2b6d970dee268e5a7ace62ae1f0683bd71edf0b11157310a8d312f915370edea074c9eae371333b84282ead801fa03ff91c02e413bc44a9f1b45610ac4aaa8d0e142eb680fc5de1232c3f81b606037ac693e8884c5feb9ca80123ce77d459cd989a4d371d8e4602a20335da8cf5fb6da4e15ccfb0501582db1b4fec0655b7b288f39091b6dcb205ac120f73c715d5a7addf5ced5f429d654f4525ea10f92a98bcf49a4701f3d2e45c6c1f89d8537980c391972349881d6e79304f1047befd61375ab5a2c69b58af8766e1d55cc491f0f6c7d699278cd5d20018596d8743de6ba052cf60ab961ee05713b160d6d80f7fc4ac1859507ad6c283ce34517f5db63c27f8aff105b6e632d3cf1171802ec6aa41e41caac320ce1783010a7ec322d42c093b854392cd00c6313d61fe15dd6c21473017842d450fe9c56d521db7e4e55bad7384feca0f2144952499629c9f4f59d1ff578f8dd587d8b6da7393f0d5a4c99e4458ed8888fe976f4ab181c4c7c8edcf745794a68591daff632a44d5ce21600dfb733d18f4af8a98e399b8f2776136680734193cb42adc20bf0e2814a56d2b5ba51e58633ef8bf541167e583dba989334b8c4654878a35e7fc527787d65262f1db05d248549582eca237f6ced47fd93ac5a698b42a5d784812051eeb929ed8252f9a144fb9d24a0dec54ef6633686fda3ad4026cf70824649949426d2f703c703e6fb87ae4470ee86ff1ef5de3f6f7add856edde98c75055433abe6efb7b5050e3b8ea588915531eb6283638eb9e6809f248adcc23e5366e1756433771dba90760f486b710d0390113ba1648fdad5f852515c8773bdc4250de0181b220798e0bdbee1ea90a3c3d7020bca0b8b55ae19b80a5c1637116954eab5e49edb85e7f6dcc9bf5b22a6def0bcb488011b5cfe3275e18f450ce90fc7dc5529b8de2c5b522a622fbedf1e6f169f825f0ce9e8e79e3bbe03dbdba5719e18f4ea295395dd3840d3bbafa5f1506bef91f7b6490e249b8893506c6b75a30348f2955e1141996817dbe782c506b46808e46f2703cea723f8d5431bfdd5f0114ed17988a38423dbe3bde5f479d69dfd78fb309965d74897440c21e53831c5201bb39824d424c1a6fd802eed7952a01ee9eb0fa7dab6984a1f8c0c4d7d75d1dd0d14fd4f4ed97c973f5d16c981ce3d843b430f8cd7e65adb5b984ef2e0d9088898419faff6c7e3ec492cf157257f14dca36b1ef909901bcd0515d0ce5cc8c1c2edb68c0525da06431f30328ae30e0ea8b69b2c780dcb50cbe64eb6b149556577255325863f570582db283fb25a71580c34365697dcf7b55c4352fea03b9653923505886e3bd37f19ee4e31d5b3994b1f0b5ab92b6f45502ab9be65c38eb2bba491458f8b1cfbe91901a2e5108e0c9ff8678a3436cd3ec3785fbfcfbd09db4c24c935b6e0709b418bead8e46a0a0a23e2452ffed916859a6d999c079f5c47bc4fcfe5e0b7fd9a318414fa2cd6a98438429543561c71ef8ef22bc5d1346d25c54e5e767340d96fd98037fa66fed8ebf894b4cd6a387b2952894b56a05bed95086464234efdffe80832182a3ec7d78160ef5b8d6fe142a4dc1eee99c499743ee72262f6a091aa4aac91875981e4f8cac6de31a5deecbd633a845ccff831b2eacf7139e1e170569e9fbcc06b29912fec2de96ec8d0d72174ad6212406077b8df9560ec60e66e0c2e09f65c5e14d1133b8ab1f0b84834fcc4be54e799eaee77573a0ef400b40a99933a1afb626291eab16a0561da1af182fc2526d10f842a72812fe088d348b1be0b3e6d854775aeec0ba57a1b76a61a5a58cfbb02053417f085b17a2bc02a1eac221c768b828c9a3069011e1b5f18a5b2ec3d23cd12554a4ef5ce4435f2bcc12eca38832297c3a95d0945b2f6e869bb2d34e33417d2c3d33fc2f558578051b079d87fd5f85fc1f688c64ce96514e3a5e9f34273a70cb5b7c45c82e23792cf1671c191c73db1c28f5ac7af83e5febc063970b37b6cfd93782d64dc3cc560924ae9b6101b529e408008c7a8b267b03eb45ff4816d2d01c4d690d8b7055c1409bbe4872475d09c9c475610b82d4acfe57406c116cdd03d57060e1041b4c0c33cc8c685d6715d7c5434ec473a8e56ddfaad4a00405102948654a07e09ce558098ad66ea7dc0fb1f3a8011cf7b6954a7e12d03895db1643da3106d27733e6724eb89fafedf9dd315303329e42b65e2e041b90a3668c0bf6bf38d5b95bf5c0806b415bbdd0b6e6e5bbea1489ca96557ebe8ee6bc61d2cff01e91c03ac2238fa13df25298eed7a8815028672defcca1e6527fd3ae00f63bed50e993ca58759e624920543add1fb8b49d39cc07ed78f3e7c35ad502bee37de97934b8f2cc82e5bd675629352f7e829cf0969cbb2f49a4cdb76fcc97383bb84f09ee65261fbd3f304c673dadf5db817fcc3730465643f57e6f3cf5766f611254019c73e01a7017c26d8af6880c1839a0204ae89908539fc4fb2a47a4ea27c27be1b7650497a8814e68b4ef0e9a613b078df2c6c476a003ae9710f825a6e6504c914cb3e7f7cdfb6b31fa03e8d21d63e5c58328d58fe3bfc054a29e80767db8b6b47376a0ab1df56516e1b2282f9893fcee90295e95ca64785430cd1e95d2442d8594743f730b23031b78ba039272458eb302ee04fc43dfb8e98fe099f6b57baa12bff2e4d8270d6b51af4a390351896bd33559a4564d6eb484bedb23a8f254b8ec105eea79a464ea59e9e07e6afc6fe5ee3b4f025e3e1647fd7bd43e66b3afff53ed5b6b6e8daade65db7ead31069f526c83e1f7fcf770e184d57e43cacb203b0ddb1981f8c462ee0281f53ceb60459d27985ad4f15d61727b1f206411697ae9b3db8a60f5081a4e020b8f8215a0ba5a06b08f9d471ac05cfd3ab6e236fd6a04303c95c045c6daf53ba1fd726c520d0c9ca1018e0efe96f3d453f1bc82c6e72109635490ab8ca7255e4a7c775ee743a2ed91ded2157393e1a05989c06542e1c5e592e951b6c9cb6455377ea57ca14e609cd2eea1f0e6b00530ff9c503c205b86d7541735efde847c1eecc25f220c08bb9186fca9047a5dc5e9984d3f5607022737b1a58f8bdcca402ddaac4e1f970c8dcc322f7aff339c8ca89e46b03be231ec7dc10283aa88f4516a9c928801616287372eb6833ce07635edc7491738d9b41ac7e07ff86bf91f884fe864e07a3bff2e04e0f1ea95c62ee13d9af6a6c859bba5867c537f973cd894372cc6eb797dbd9df95cb9131c01efe9ceff461a73215e68adff0b10a5f39e58060bc40583f540394af9618ea3b4fb82da657b39d9f1a66f42a06c8630b065eb05e78449384da0bf22f7502b1d12e843843765533589b0a940cb229b02d47f6f0160f0f96deaef7aebd39b29f4c5c225eeffad22ba933d1b7dc0e6ec70addc6102ff1ad961a55901545f4f3322263e292b437f1218d6a8bef3f655591499c1f524538bfc0179e516bbae71efec5df5b26b49cdbe10e4e90dc44de6dac660e13e447278e7d102fa91f2a4ccff072656077a58d650f9f1cbf0c233c8a6034702fa1f9f703c15116ae48555170f7f290be09bbe5312e7783e5bf29c5f7ca75c0f7071541d7bfdfb5313b5c0119a6ccd07b04c238ad4e704cf9a1f9783c31b62501352d989c008819d423579ac7a37cbce592b9a68f593faaa60841b6b41fd2b1d3f10584b197a2a3f5643e54293ee94858bbdfa11b7d74afdacd2cd260964bd4b4d1c9bba14954b075bd814e0ca56118885e858d7ee00d8dacb80de820e8ed5679d2ca2863802558b3ec8b6629e7bdd766df7c2e41fcfe640b6dbcf1906e0d1e64d57e24bd55ae97694acd6459c6e39b61e3e5358827c3d683a2c8685f1342140dc12b0cd06dc8e7da32a7f332901ec266327411b512aaf0109e5cb7aa18070d5ba015b0fd751b402170177684479d7edc0d008fb9ed1fdfae51f9895f0a6fb93c344460fde84be4fa751b2f576ce077d945481afa48449a04a9ddc80af6caa437d029df59a69ed6a5617cde7adb6f2f30704917194621360b2d67c16d0b25688027386bd2e912d48172a9a3979cdda884acf5d61a7a9db27abc8ed8b325f4af1b0397fe3f6f121ae95ce4a03792f32b20803ddde8ce16a9287cb607bcf6349a99b68878ba2a5c06903754cd8b2293cb07eeac089b1dab65430f3c1ac3d50287e2d4d24a10b01a86dd7cf6812cc52e0b83efab3de14a75b77fb8548d2c9ec94f2803e0542837ee4531ae27b316ebfb89658bbeaa73b7390e01dec2312e05c0f715419dcb0d4c0c1a0b60b7fd6a77c96b151b516dcd6c215bf49322414b54e3993de2c760889b7fd43f1ea2d6619cba41185b85ba49b32d9c5f3b11ff7af0418f1603e993137b160d8f404e70459d97bd462b75222c54f2f6adf37cd822810b976b95d0827830f77932461a0e4eceeb4f6d79c00b5c7ba71b4427976c03c158166dc00fe75eb2283be7a8f38762625e1232836af0a34c9a8e0cbadf4af610137b2d035d9dbaec1ed39cf239de1e69efc5a5e3da6148aa703d97f96fadf306f2de9374fb6e79a1e788a2b7d87a62e984bf7c761bf761fcafb58dc0422afbdae936060034d4f2f09687322129fc768ce92ee3039c8d00b4364a0cacfd6c921e62f742c437e04c35eea2ffed526f989446b44ebb11d57991fe5b300989358819106e56448fab886fa2b76b07dffd5ac5f0d63c9a4c278ad4f4388071cbbc169968fa77073400c8c791bd86749df96094fc87899f9cba713bfdf33fde4028b72bd908fe945d44896736da10ca41ad7fde907d8e119ee021572cc45cddfa6ae710c7743b60f34b1fadb226b5a937c3b2382b6c44e53cbb11cf244560bbc6ad51e00ec576a3e8872a5e4756fd2d08b55fad52a0aee92dea3236042e5df269f4fa7e8aa5e6161142c5b2358be5ca08525ab91b3eab6fd47a1d0ceb929dc933535947f1fdf8709a7b141487e5b6496148392b202b7591e5a3d3fe54ea75123c676640363916a5c9fc2dc2ac70d80bbb8aab2315e1bf3c68c9a5e07043a40ce0ea7e67354593c10a8e97dc5ffbf2ec0d5f40fd3223a3ed2fcb7d4e97a149fcaa983b3fa4da3584fd4938d4ea4542205688ec528ca422be23f0b9f0158ccd01a11d210639d4a07515539b88097947ea6920880745da463288f36feeda4c58c3aeb1a4b6d00d073572efd5a70c39d9a1bcf112a7cdca5050040e2ee340a8f532c6a91e602c2c4370bd20087c006bab2e7c66aae1463a423381171175b83c30f9a06b81eb985e0ee2390a0b0f5b27f9929c86d595ed1d3eac07a3d52c8f8239a88cc11706836b0c24f5d41554c6a5188784b47e2bbf67cb97c0e4bf1cd9029e969b198de8c7f4cde4d84d3b331c680d6ae2bdf2f0bb947772237e675368f9fa0c5ae13114885f5f71996ac8296a6fb6488b902924f0b09a76191a28e849c8a307032ec6103908e6e2f714b6be3d682b05bdce6827c9fb3cb9f5d74ebfd6244127e192fb0164c6b4a6b7a54d93228e728ddfef9626e98b1e7a35dbb2ebbb18f58d98212aebed10c760ba9517188498f4c40f1499359eba17a7cc060e7d5042f72dd4e9b404d3e54a55a0681b6a00d93cb144dcab016b30d838a493be1b203f2b409bbccd62a723a3b0e6333d81d0441c9937afe642d5f49da2b72a1eb9c0ed7251e488411f576fc63322093686a828c7cedc59a2996c5160ccb337a86db1f669d63bab4fa906ef35926c650612365759ea622dbca005b500082fae848b0d459dcd0dc935270960f4a5e77e51ce870619c4c210cc37ae34f002f1b77fcc19f186e777acec4c59cb6af4a3cb6344c9cf18fd36e0bad332c21fd7d4dd40da3cb4ea6d1fe62809d988802098794b7c44134dedd8f207a719f01f20864fe2f475f3f3aff16a8d0253de2e110602e9b63f0f18588e63dae5811bc2f219ab945bd1056f28dc780e1c1f64da133aa36ac4af520d7e42b331921a818f2a08854b0a0e2ba210767454fed790d2532f725d0a6ad375d26c208847260c5d2c940fceb0376d6375331b5da5f72c3e0523199ced0a10b1d77e6b46f2e551d8a34c9585ae21f06803e33f081f4494ed267e4bc2f65f5835a581e975df21e7da959825df26f579c3efe1d59ecf92769254a8fca331fb79b78ce1dc48e96d868e87fe1467449efaeb4f84c050808ff648b3b6d4c1cc706c3c085707e357cd6099b77d1a36d20fd8231e80ae87150e28c885d31a347c0ceb07468dd37acee953fa11401b5419a1c08fabbbc16823957153e57a2f8ca2597c9bed3b46df7984fb45df3adfed3213b48da88284234c5e7df070fac2226ec8058a9d8ad9aaedb008e441d460a17575b950be6c1e02bec6cb0cb07b0917943fae91ac336fdd13a7f3979900249c67f762bb0d455fc9b96a496756ff66be35ed70de18cc8877640797f7cff3b39a36dfbadd0d943cfd288374dcf25654cbe146eef74fbb08defcbda84f98578fa171bf84cfe406a56f40550c34c4ce4662f056643b1f1e10b4ee65f166f2aa41fe7da064f0faf031ee57b44ba4f0e43ec482ee184bf9b0fd7c4630b0e410024920e79807e6cc7b905aa4b132309375c385317796d2080eabc32d926f9864e458d4227df53fb19e194347a1d2d934204eb69b0f17f29048b37125d7d1f40dc8ebb5c3f1ec25915e8a59949bdf4c31d053000528ea4594dc10cc7c2a8e7e65dd42cd4bdace98a666106141cbcd6d564c5f11c4ec4a3abe552b1fad429a498113ddfa030ff35c4702c40c54d5c928517b159665c90ffb196c3dbcc0efb41db86d6d8ba71d2fa65ae8306f64fe5e0f22637057972db5dea5e33b3bc6cb49cf233dc9b42a0780ad257cada9bd06ee1006010954b48540bbc51ee05ca25130c934c479cb4b2b10fa2cdd93053d4e9eaa61d6ce6352105f8e5833aa324ceb6d77ac116272bb37a53ccd23a8c8738edcb1c416672c6aa431de9784fa40be3a1ebeca6626106d0b5bd1f8a6e38ab8dd8dfe21ee34dd8cb23e1f6cedc1d8022747d13f0ee45b20faa35e7ebaf58ccb610a19d3c320f1f64c0284cc0bed84b54f3b3617f7e625c782ad3973a09feb7764518224a92cd1a5f9618ae58538d49f52eb152d7dbfbe862d675a69d07f87bdc11dbc940ea0c5fb8bbeaaa3aa6198d695f0f2e36b919c35449136a83ece100c59432ed54418d62177043dbea9532406b87ee5d354d0371332fab7ee53ceb26d897de8958a36f4930d22d9fd5fd5ca00c159026bce1303b69c5e57e6723b4df5e1c9cc264f1fd3f5c23c8f76bc0aab1bfb80dcbb8f3d36110bcb3f44d4a37280ac5404f13bc7c98ab91e5bec08ee25ef92ddde54cdeee2df71cdc8a78ae72b57be142013eae1c8101a2d476bb9084a6a3bd938e89e73000f7daffe0178497e2b1bcf39659e479e70fca79833b2da7911ac63695e15ac4d2bcc21e05dafb3fc84fa8cce76cd2534764f36a3e2dc1086297d89ccf6fbff401d3d5727ae620f5c83895d15253964a499b08b4f2374ba070b3678a427a01e35cfac241771dd7b4a519cddd205343241bfa1a46a8c60d3896623044a42cb01c83029028e6fc9ad87da22b2dd9454619f76267e51c4da6345828b9f9175f9867dcb57ce5ca6ffee4400fd50eed1e1387b8e4ec00e3a670024e1f45afd07dc4401667d7fd91346404eba1e6640a2d7c12e1b6aaa9dbc3e4a542919b6af7f2760b8d56a70365b664565d54d0ce5940612dbcf1f9cf19d6c11576e2b04b1b945fe47a53b39410f44cfe56ecaa78080d8df68cb4e0e8b8b54177cc9583fde9004c10bc0e709a026e5f89279dd674816d99add145c6f57c58b3ef218c5be400b90f5ec1786fe364ca3d60e2b83e4af619d6fffa368c696277585f68b0684db25fb7a9510bb46bc4ac57009b54143b2765dd72b111b29955cc2b9e6a5b1532b481cf598775a4f39d3a00ba2a420e1cb74cdf617a1beb74837a40e4d1505ba09e767c1751d8364213bd015f726ab5a5f36af12533785248cf010cdbd398d247d6d33121b38ae90fedeae056be41ab69324c099a18ccfe4d2bbfc1924414877f1744c3ea5fb211a32e8fb81d229419bd0d14cca37375ccbd7465f1570c6ecdb56deea7e13e60d602a82b14ba466bd107854f5ac0ce89e6e9a6e8d8e2aaabf092594b83ed05ff6874ce9617c3b6dade8794726092f76829c82efd4517067d150c68ca6606be6eb1133c4c257832cab5386d2ca64acd36f2a57e03fd7a20019486784cb2092c101ee77a4274b8fb6463955a73427ee2f7884ced38b8d177aee448bad84012d123ff758f6bb8b72cab265a1a645ec15d463487017747b8dea7ad72768aae59ca3c6d3a287341907834d5295c495d51e2a1e317f9f3126546a11f9c481b73ae78ca8427f1c7876145e407455548b3a075ed49a341810c2761c137ff36f40d88e8e3e61d3ce9913a31f7dc37f9619870ad5e8b14340011a23478b3cfc851cf308ce8c3843487a149f0082129ad289406c03617a9e580da2042cea454106697cc87483b9d35be8879d661826df16551c13ab4ff9985095f39bd7ecb86420166c9991972e12899bf40e725e55f6a4bcece90d4708465c5cf59187d872f5c4d0c038dbce08fdebfa252c4627a1d2c3b8c57ed53c409f3fb948f0c37368a70f6e3dce2c786989c303a0c3ecf6121913cf0a4e9a6b31efbf459f009cd939fcd7e16f717bf16bf3adb8a1ea62a31e95653a6555cc781b84879a3b290af7985dee61d14ecee5a5e9618540cc3d30ceccc4018325829affe7c00d80f737709dfd14275ba4367ce5c1321d1b30a123e320332269404d40e433910c9c5c00abb27648d9564bc3931eaa546a7198c7d2eaa3768f5be53bc425bb29410b6a5aff2ecaf9132dd700b184d2fb7e4e6b807ec655b404f087fa7f5da14f752dabd7f4216f8c0c9705d480c15341cce0ddcd65198693134e09138c50416de29a23f891933ed43402b4a0216abd80101d7dcfd30fd511315572fc6404410060c4182f65a8a30086c613a3b427d887880ebf72ef446810e1a72480b35383c792b581898dffa4975b82ba6b75ca04ec649f2587ee6c4b544131680180883bbd094ded5a3ff55d1f765b194a2223c6d56c3d9fd81c009f20a67d8a091d7b7e6351d90908be395c1a2674cefa2fb9c12664f3d661b1fa52f52ff303a2c4bb05dca89ff5eb76dab7e15437dddad33088aff702d1f907d21756dc8eb4fc4c67b3766bbf31052138e05432290873dd266427ff79cfe425635b4163126849bac0fa61b77f3e4dd558cabde84c9b64e57171b49a7dfa38b0f19125dd8d7b8caded032b282f832ee6a41716654ffaeb3bad4e1987ad7a7ce2003cb03de3ab5011ac3872c6ddf42259f395bf4fb8b2ad82b4ffe9af910fc15073c8c3bcb3a923b476fc073adc31dab142df47fa745cec12bde822e71bc338b9e4f454410ff1492d46b678537af5e980c68aa6f1ee959bf00d96cd1aefaf9ae7e18cf1b4f9b4bb53059e094f1e652d342a5453dcaf03f3b46372cdadcc86d6cb2e7c968ad68e6b73810a83635786344434bdce40b6b53e9690b7ae2a3407094d4fd3a328655c71e4c7f7fd665ded3acd68771f0fcb37cbb6c910df065ee3224e9e6f72fe57189432ac3ce69a0705d3136984f8747369af7966e0eb49b6de97a567a2e1205afa0aadbc50f8a251c8cc16e193517e4d459abf5fb9f75cb4d9b3773b6cb22cefa883b307dd152d59a399665bcfce5dc4c6aec3c9907a12389938b5a6f741a5da99852bd361a10cd2ee4cc82a694b473c605967dd3f2b7dd1db1f712b4dc1b84d8dfe3b5cd0064b33b2a9e7339e35b6c1b5fd951d1cda328ee9e4641b2870dda5c209774988a4143457bc8fb40062e1141884c1249a622a7c3fbd58532da6073810a17fcf767023061682964a0c96936fc109884c8e1af75434934f8bb7821e7fec33b852c94f4cb483a6c193c5ea51a151f9c386f0136d065bf24d61a1e39ed50fd843f5958e77fff7f636bd4b7e887b0bc124ea188e2fb97f69b3f69ee36359282c69b426d684ebd94753ebad99367550b1e36225a8c16ee88bc393f5d2ef54387519750e62b43a3bdf6530fd6766bed471b39fe7ff95d16aa4a6d25d86a9dc157a1bfa675ded2d3e561e82780d6d35f760168ad78d113f8ebe8c72e99705c05bd9598d1a321711b74b6038c18ddc8726ef64a6176d368baa1bc05a900203a5e3c3fa1134c160013537377b9f8bca44deb32c220bcd5d6127b9dc5364c6fbc461b36509c46d597429220c6e274006266a88c399e80bbf56d4f6575232d5b6c2052bb839aa1e3c7ac47d0e459e47255e6dc4dbcc5c5b340edb598d0bcc519f5e0cd9c5697d77ef00765a9783409dc51921967e62069e72c4fa44efc846455d5e62db63d467c30a5459056309bedd0abfd976e4fe639d3a2785e1c60db393d656f9356d327137ed3200ad9b3a26a07bb28091b26ebe7ecb506809d6a510561c1fbcf73fc9315737721be2c60cf57f5e70eca2aebe38497f45c780ffde9e6273cd5a07d0b695a0da321d967f141696373a2aba3ae6457f8f4e24496535e4510a56bf83bd44fcff66c0ad61efc320b50695740fb70131b6bbf1fa57f643f1913fd8685a62dbda08d9939cbd2b2d81f3d691c14633c33f3dfe9fc09c18d2f1252709f155f60de74bee037c0aac13cb35596e2037d6e04d701723d9290db18094469215604951523c71a7f222196668fce831eace804ed8dff4d1903d22e8f29531c23964c6d269a0b5b690d5c0ad7f43927b47749bb13735d8b1d4f9304cb9e0caf44da78ba76e848fd745c75c4ab077cdb41cada8f004d1b19b306982072471206b975dab3e2ca8944eaad5a5c00062366119713f95dcc85b1f807f288f55b54779908b59dede19e2e1a328da94152a911e335b3032df1f639959e71009ad01b1466f83229ce4bb726f6ad6382b7eded3359cf4109e9095243c97d816f09970157ebedc1bd8104789d469938c115b133122169e935aad16344b5ade9958146635e2823a3b605640c287b08568b4748bbe2fc8d5a46eabe762a20e7666c55545967136b58b241ba71efd3a24292a9bef6367d74e6f8bcdcca48fcc429c469151e42a7c17c868bd8abb5e26e2a4724c5c38b9356a94218d1433f5860fcccca1c2cad3e3bd234d668670587e693672573f8126a377d3053a0fd14063935cb1489258f238d72538db0dce6ecb0549b4286989c8943cb1e28e7617259e372a2813459869b2e7d96e0a94a6261c7622145af6b74ecd60036f66bc9fc86258c0d577a1a311212e6a80f6492bdd0702a3946dda9133420282cd7b90dadd1066076a16d6a11ca24d12dfdf86029a6345b33bfef38520159ea91c4af9a1aa0078fd6866200766fc6ab9c4285a8c2a4fe2c526adcc2a8eaf8d8e7347cce51ce53408f4d070e42f9ba98228ed89dbb7b2413da361882c532e34cea335b85367cfff53bb6f425baec5a85ee71f1c3d950804e5657a2284d3dd2ff2d3a97bae1e7a06a8b4af3399a32fb8b751bf09cbf4e7aa9f7d191e0cfc3a057cba74b3195a20162d3822d2ae4a44023b785b22433838d1e1f491857f6da1fc3982f95150e1dfc49082e152066f36313feea0bde1208efee8b9b42866276beb99bf6b0c0d0973d2ac84b2f70a49b10fe6a83ef321648ec7616f0626b83d3241a1cfba15fb648e4e2734bd922bc2e22858f0cf02d265007ba67abce0742536ae42aa30b79223525e213a4b51e2898c8b1828c72afa09ef0469d69296ae57c92b99ee9a7ae0be39a68885d780ef53d3060ac9f9e9726a8baf52ae8321e8d848216360622f2da306875a41caa7330b04a31cadbf1fc655807c4038e50868ca662a1904581ce539685f169971b2d6b25230dce4628960281198d0718dffb500e174b139184732b1458f35e318949c9b4ad56ed6302ec93afbf6f571f01001710b55b06eecb4bbf2e76f1b4c5695e2f70ddf805f767596db51eb26e70f4a9f08765adafe3e581c35b44a21526102fb1e245abce4e472ae5d9b19bcf25ef10e2e491616fb2ea077901001976ea8d6277e4a299dd9633930905b821480fab891bd531719bc6671e633a809b9b91e34c8a4736adc5185ad9664f94eb43a101a7109f477ac94132d8f6e3df4a4c99221083aae1542f2aebaaebe4c04b4ad22de955893b31de10da4ca34a0c246767de41d24e23f7e42a558d91d0bedf88af4db55e7a69e510aa3af20961370865374f542368f01e1b9e7afe06ce3096b636b5f14b3a14f38c02b9106671a36f6d9e3e0a6887dd76b634aba7696a3a895658cbd7cf2d8c7c28359291680829149f8402196295318a2be7bc6f11e32d55508af708e27bf28b9a36f8d19376c30f942a30134ae426b996050932af1c27d7e21b6ffdeba1f16a4de46637290de0b15ec9136e2ef1f7bf0a7eb5e90168715b3b619b9e724844237883961ced5dccea5da1f43fb9aae0c3c80c49762dd07b8581281ea93ce71bf884aad5057e17e1703df96d13234e9868b2e7e9f89f7e7426786f21b77f056e318c76994626405a2587b8090012b4ee86921a62d6757c64cb7b643afdde08e7bd55d6106d1496bd846454df2679ba73b16a39f6c24616c0b63eaa60630350cae320c38bedb688b1e0d38e0f45643ec13a87accc2a727a45d1c80354e15e4754e9513523508b2306238e27531904f2514171e6d725bb6d67a4a38c0076624e00b82bebbf2e5c82c36581b8b412a571ff88aaab320df1f112c4b65ec5d84f69b82eef8694da9d1f361419dae259ed7ecd677e428470ba550cf1e06001f13da5cb6a273ca330d479dbb43f23574ffbf7bc77f1095bdf3c59c9bd085d2b49ab39444146d2ab6626295be76b627254d2ce04a4ce14501caf0c99cd0186b07ec05c87111684ed7101a0ec7e17f3f1353f70a0f60dee1f1aa74f9a5e2ed126d18dd8d70cdabe10ffb84699d12e0db65b9b7a6047821d53026eb4985a6684aea83e1642d0555577ced9627b0721e9a311ce3cef11d1eae36e015a233bb3b30de2e178df30114c345604a6186b162fe7335ee3ad41028001ed9ef1fed055812abbb314c8f2d301fe434d54a3c2ab6159594fdcdfd98e98dd17cab5b18a71901517ffcceff83befb126672fb41aed28881fead5335b7f7ba5065c73e11246bd9954e23e6331086f889a0050567cc1a0f01213e97ed3cbc5c476b74644224177209290d597911ac795dc31ab16e2550b970388d8881321e6c54dd53864f36d296d66e2ad355d3c58a954d294b561db50e85226aa17978f4d35017676fb05cb99168ed51dc188211d7d5478336182dd6ca6664a774f98308c74f3083658d4cd4db902726e8fba3ca5b6bf20411e23f3513218e20f1c49bce5f40ef8afd8914a07b510aac98763a1c4d0015682cf27335cd6434ddef6a0c60ec039ac0fa7188b958485b300c2d8efc74954a2777fc2e9722937ef323cddf814b32f576cd88b09094cc06e34a93329cd018c8688f124e2af4e5a856d17ed87598a5c1627e247d55fab7235e3c04fd73ea3ce2485b97e8b110f36b8920fc5c81250081946ebded1bf603a5e3b149600645fe2d84a4d86b042eb1470e8ffc21bb3d08abedc984bdb14067d777accb2860456972b445a6a5367c3329267441d465aa6f6f4e91584c55bfcb08874ffedf1caad09ff02203761df6945c43e6d4b212ede25de525c6040963aabf2bc0d3c9d13186d53d875e147aa3d5de4f6b72bb6cba8c85b16cd36650a57005017aa2d6d70a9fa7dcde00966bf0255d6465da0ceb82466e1128e6327617c549f7dd85198a5a2ad7c7eff862dad50499e1e327c7cc39cf7d238ffc168bbddd7a088dd4342ecf171fa46cdd79818ef4e83dad1e1767ff8d7dfe94312aa61a3a0365623a521c513cf62664fc26b4bc62cddbdb51dec210a9bcbd8dcab34dd1b60a27ec945850ecd518bd9617edbbddc49e36321a4f4acc4113d4c748b73adce57aecb57bf5951efa6bfd58eac51f6c2256f4390918c9d365950f76903a6c43e94fc2ac1b8c767188f59727c9776d0424b5c8536c497a7d4004553832ff7c10dc068c9b54d8e7b8131b2b7f48822fcc00446b236aa711d7f7b2c56e95eb1c52dd8cc83c865395eea997d231e2e9e705c66cb3a756c571ec28a9ca54497cea46a452a0ec5ff8a069bc250afee5a1807374d171025c49eea18b133c0d275c4637bf27fe67dea3f83482166b9eb03fd143a34e81e1e0693d3c5e6c617d8d8a8a1e45d76e3a56fa34b86c741a99d74f679e06e2d0b63b38cc498d07da5e36c8f5718dff2bee819bfcb03a989f9f7d2cb435f5246df85a1e9bdcfd8cdc753d7bf7f5e51a5d5a416a7bfe29cfff7b1fee8114c4e8b6e59ca62f9a4f48b729579e968bbf0cc23cac19c9eee4681164ea0979d672c2c0fbd9ce8889fc1b81eeae32b91757d586f52e5b8ccdcdc8fcd7f777f7a274fc09f7cff83910756e6b6c13a5b6edb02e89fe35b449614053538608f0172d24b4072037ce967e754ddd2914fb48b6a6027ae7a1682e27db08f4eec108d872f015802d3a46e41c055d76da9d208ba33a3ae6b70323e749df2200e883a004a0f1d2a8e7e42657c50a8e5ca8c32452b4e9777ce38a76811dc6f8b8a7b59cdedac1e8efafe9668d670e233fa328bb4d1069fd37e106563054bb85b934381fb1427020487e44f2be741638d74bbd35230cee9a61be18549dcbc1fb9d642eeab856913b845484e7941a98cc35587324fd798ced7930088edab3627fc328a3aa2b68c09d5711b3c12b4f8103c3318dba5e2ca4a760b2ef172be9dc9accee821c2725e391e97e6e7223acb994a4dfbbf011414d428acb955ba9b35d61670008c6e79ff09d352e996d241aa7b9a778ab351e4be6642be52a9e545d3e88ab6df6bd2fd0619ef5a670f620aec334a2e165cdb98989ca87c95102f141f9e660d8a266fbe3e6135e2d07c7d33c0535a0bdb2b2040251ee99ccdef0b69e9620aaaf4c54fd6373123a4d73d1e49c8c1e35c4441597e21eb003f7ca0f51de4e719a17f77e54acf0937a00496f4ed5665fc66f75717cf87cc5da09f2cbb6e4897d13afa93e1566a52bfba2f41f2477d8ec45e19cdc9c028b5bfdefe47436e5f12ce9700f38a70220739e9113586b68dfea2042cafe47ee681af362243dbe5a17eb0b744f678da4e05f6c35f9dbaa7c5544afbb5309ddaa5985b74a88f4134b61a02f117810b4f92696a4372d59605d4d47a70f4fa589852c3520f81ec613ee460bb85cd5971c15e154a6cff89faa856d2b6c936ac734ef2e7073d1d680ed47902274a4708823ea549ce333e03fcc0caf0e5e41205a45aa76b74352cb784bcbf01b99c453ad2325a4a912e6b995e2c30ade6ac962099d85fda6126dc6f3697194aae6d92310f5f7f70aedcf8a23764335dd441dca9a6f7c272098901880b89ff288d65a8776278d86bf46b7a88e0a7bed8abe3e0f4382daf7462bc87c578bc76d375192db58640ff27ca7c181eba6d4a5468857ab758054b498801203968b8dd406f483f118821701df1374783f9c77844af33a12148a842bb756ee71602db8e3f06a1180d5922381ce6c251e4f0978c397f179fafa271f81c0d03b9f7fbf635b6b8527e619e868d11d04df684f540f9f35e0d5c0569d9987cf7b5c17d8836849bffa757f98efeda537819ea4828c3bdf4c7c16bafc5db4f5cca924878e468e33f7198a71a8393c641974471477ad5ac2479cc931c8186c20a79bf03d389eca6a480144cc62e0fe61fc7519406991b0d5a61ef8af011a4d4777ef004c2582ba53810a1adfc6aa2f916e61a440a74eb4cd0c006b44b3c384f4798e2a3e74a6f2018eabbc8e0c1c2e46ab381555b80e20c0dc5711699d0efd3a7391c849bd58568f2679b3ce428a45a473084557d67cbd4d81665597166d64fe52894e1e33d634428ec1ccdbb86c1f401f1d5ea51e9fe4d4c4afd6130e5253f4c7b0629062924e4b13df788d794b7861f36074414a6b3a603703a779c02f8b4507aafc5b9b5a9199c822fbeea0fcfb85eed34bfee7fdb4952c481bde5f9dc76ee0cdbff1372778cb7ed79888308afb7236f3bbe985e6805d764a712b62f9550f1a562f176bb52a4ebb876553a3f7364207aa5e2408cc60f2b92b7f23e227aa4def26e36101a3a30b7630e94bc6d35bc1feb9d6c25fce8ec7517c5efb16d14633e9a739f3f681b249a898df3792d6c0417a77447b6a8d0a39c782b1a9488b3fe38dbcbc346491c0b667e223a1581db3e6414a446c91878ae3016b60a8e54b3cbd3cb38b9d98fba626589b1f8104c8b16572397342167b3730347a4458c897e5aa12ce9bacaf9a2738385bc2fa592fba810369a00bffe783ec2cd279dc0d8e52071ff267ef721b18932bf2a43bd6584735bf5371daa6cc18630dc15c8136de17362520685ab694cb20cda045a038b76b7241b3052747c7b8c4509322691e1df9fd12062fb6d7e3cdb559ebcc7dcd2b8a24d225fa94281ddcd69626ec25f5679d5299498ac462da08fcf9a35d6f91b8abc5c9fbe0770578b35048620f4c09b773d12454c5e17a4e96313f472bc255ef863259cce5fd5220a8a703101fb5ba7778b683855b87a4f7149beb2a605258b8254636e91bd596d2aedfe781ecae04c5265a9b458e7b40f8435424796e3636f7acb0c91373d3de54a48a3cd2629e77fff35e5c3a37991ee521a61ba4950df54f8af6d360db0a83987104994e47c0acaa5c4b3501a3a7b1f1eec92b86e59f8d7333a6bf7a6a41c03066ce0ef397e1795db8ef27932d7d189fa8fde24f7bc7b7e2a5055a623111e2049c702248925572147876aeecff41eccf68daa4b0f8b8cf33e9b7382113222702e5c2a76b1b6eef776a4bc188b96b214ee78516bc239bcfda82e52af657ac7b14a0dc33e7bfacbe288a0e8b4ee78d645865a80dc356e5fc8b7ca2492882a9bb3bb14b80123cf40895617fb690f6720a1554dc1476a948468e5b62d74588883cdb7ac86c9abcd8fa74456f50c2ae45c53b28ca137447fedbf10a30609ab7a3769ad4740baed19fe06b33e95e7740c53c5e18cfa29733101a6defb0ee2cf48c0482e9152c3d32dd5187bc535436c759ef818ea2d91d76ba104f973654371261b98d3e63c244265f6f069eef4d130dbd3613902fda163acc625573006b77fbb9118668026b0a0e7b828a0a0e1c50f7dd04d64ef13246205e8ed7fdb36b5c61ff17b34549c79c40eb72321e9adb44d5ea103f225a821d29a7dc68b4044a97cc6dd60ff80528c727720337061e90888bd20d940d6e0e72b40aa8cb8085a9a04650504d43a72e67e2987c9951ac7299a5824e48b69ffcd0373dc1fa2ed4751f91c9ea5992da303a2607c97badfc9aa9d7cf04df9b804048d701164bc0a010775bca9a4920e801cacd35e2991e368623aa1f77189009a474c31dc12791407c19c115af1cd7e310c3e2e8bc3909b1979e05e5ec4464d5a01185cdb0d211838b4c985769406497bd1c4b454711312dd69c035c60643cf377502f215676f2f06688ae54106d3671f6a2a5b2c4c4943df4b3d5846dd4bee3c3c82d5c7e73ffc1ed9b849618bb04e618c290f266d89dc8f384ab1f106d59f7daa93052e54c4063cb9f9440faac092f64a90a4215b02139631e9b5f56f7129776ca4effbcb52c923da87b60233a55cfcea79b77232142f83ca252fd953cf927759a5217959a61954b1b723c33cfe669c41a13958c0302659b44ff813f685cf3a365c57e3aa5de133a86ed74b0ec11e9bddb6ee3d41f7092986a40d621c8dd3be52f0e78a66cb341dab188f9260b8901345e9de592ea5332387feae5f81ca2f7ef80ed302aa054f690db4478089ca4dbc3e6b0153af29404fd90b953a8f02e1e602225f5f45ec4046f82e8111fa50a12ba8673c51295efab0896adf0ff3fc8f83b4788e765db7d24978331597e4182a469cd80d7927696d29e159c0d6bb2defcc10f403cd838c8945789134a206196e600c2e1cc291be50882521733ad2d77ccb6876cf4a4524bc20fa6f83b534c37d7cf099f2607e7baf0c8907d780f65d627d621192310d478039bc2eeadea068f92208a355ac6139b4766b9eea6c497e8cebe2d411a967693b0e4a416c51e7c028907210f717722c77384bb8188b438ebdf881c499910cb7db4c0011d9218f5417ababa9f416039109fdf1e871e31aada2fefe6134f2deb6dd3a0f18e264b62904b430a4c69fde1d2c2997690b5414e13352f73e54480e8d1915335750ffbbdb13df7242cb00638939d07d9949a05794025ac544cfd56b6b7c506bf15296911f81447675df94403507cd90bc0cfb3aedc7548214b6a2cae31948b6cf5b09d5014cbd9a1b57779db642d3575b1208929343f19d5cc44ce746f41cc66e980cdad28f531a42202a07b0b524814fc418d2f45d279e209b726cdc01276b8e4210af0c430dfbe0e90f649b47fd17757a3e97dfc9c90c66dcac94ea68675dd680c0df81f795b3ec3b09866a120f25312c55230b0ad540d0999d02d63d14feed6fbfb085a78cdb135cd9f9e3ab05c0b520b1c08592e2fddbd3f5b8e6060e0d6bdc8fb19d34eef32933a61df98ecd3c11848b658aa64bc45125e01f3b316f34d6ce318c0fb6a94b3c2292abb5ea440f1cd41b371096cbcd6dd07cfec24e73cbc85c30c94e6410ccfc0743094eff6f493084d52e4b2964cd7bb6747a4d005dc69b04bef55e3b16aa9e8c1c5008e6976a709988fb38a69cd97ceb20fae17a7377b16a4f47a2fdcce9b3f8e7ca283572694f3d8440c76c64e816f8e5e6d8181eae8a4296ebf30416d73a67372fb40a5fc8a40583afd2950dd7ea3666ede2884890b63654e11599b4c27eeae35b778b5ae042740f43dc371224accd82587cef3095a9a604acf900bc6d956141825989ae297caa94cb3ba55960680e7c370b0d4966b232159a7c51b388dd5dd6a5ae804b97ea1d527daf33d7cf0574136e08a73ca1cc25c64484a4d1fd4eac4585b22b91a45798e2b8bb864b3f7e40aeef172126b8c81a138ed02642870332bda8146aa3eb017cf08082a14d8f983f508e52f62a7c2f750ad8c0088cd6e095c09ce8c55fe5e773a0d7099368cb18144840ddda32681d74e487807f9107ae0272eb6287219c0e8a0501832e60adeaa9fab039cb44c0e8cf8777cd627defd5d6f94d0fb81c2635bb6d0f661d843bba476b90c2082a2a4ed2fcdad4b196173c9a6870b67376ec59e5bd4b793d1a9b6d7debb7c3b82f9ac7a22074b8543ddb15684a52aca6d0b9ce10aecfa6483cd4d7ad1f65e34211dcf897c01d246c96e156fba92ee7d52eca177af86085cdf2af93a6b6051ad71ead634e84597c6ab128e94b296f9fab1cfb2abc73e151914c883265c45285fc25aef8577bb3d8619f8e64bfaf418fa18455e8fc54e3764ab17920090cad4aa562af2c81bee931a3794b289de492bd2597de0afb068dc008157ad51a14a3097f2e6aaa21953589cafe4314b8555efd87bf2e8f328208ce74351d19d516dea3e910cfaa8a073dd33b54ba15002b06852cf310f902881fffee9c01af3a5e7d7d364653545014077dddd5600008437df6521fb6e8870d3bc4e391e3e2ed32ae5ca65443d3353c972702b3b9e50ce0ace2905978f874a23f4a427f3cc12cb7c42e5048cb5be1346aadd5d9040bdd5f970273b341d43c6144edf1ff977c14b737447a0f3ce947b3a905fa06f9deffd3626259e2a2acbf536e81eaf97f6bb3eda5f08949f927a9128a6200e9ac629d4316b281d15daef50fac3a9193361d41ccbe263905175bff57161994819ea8291d5b1975ad6d1df69d10080feb164e09232cdc9b5082fb3d334a35b3dfe8a1973436fd917cc709163efde1f3b4ed6b67f79960383858b02fd0bcdd1744a403ae9db02bf63bc65f86c275fe32331635ba449a0e7e2ab48737945424c7383c6d8e04538f5512e05cf4d6317828b7240a7c465dc64e0f0d8d8fd85be789ea2b04c498d85695f052222ad6da0722a79ed39759a99ff12a8799e0e1fa6e96a7de3145257a50a3197092e1f55c7db02cf2a38974e4c6e93b3adbb39b96fe92d2bc12da24d40e163b6a7bc21236b004493a7d0e0de653c23d52ef16a02ff745626d553a7fe475f0b1f3292445d429300bff52e0e76cdae419b15a02ac5ad0c4cc3998f49be35e10a1ff29116733c2d09e509139984bf16c3c8f5afefa35970187ae13cd750137aff3a19e0331591221b84bcb3d40bc1b1609ac2fa4ac9d05c14b4ed5a3056f56601617bdea2d2e2d919bcae577167acefd15ebaec45ae8bdcac3f06d0407a49b89925c1d45b0c8f72754245240d5d6be0f5ef6daacb1d14f4045a452edc168f12feeb89fcf7e6579f45a72435bcb14405203439197525dcb893e01b9f383f1186845d39c4be75c4d7b37f91ad1b4463de43f256a32bdc6875bbad2109e0db19be11bebd82190730765fd3d00f2374ef4e722ff880ca5b765c2ed46833107b1371414b182be5829146ad9a879ce40b9b91f26aec658654020d157e8ed38a827020969d6c9c4082831f971f323e8560a748369e3b561b7de74132a17221d880261f03039d6ebea1ae8ee7b547520155e4d346fd35900704bf965237acee2a48ed65431341795c5a2353991d4d5eeadc5e9b604362a1032a708e3b261cf2d1edc81db9709e938131a8b7e7fc9efd5e4390d4019ac19d4e5fe70cfc7c3dae4df2ac4d4810efa118ab3567f99277670325b7b304967f1d34e6442a1231d4223b08dd7d404c6d641947e971299ef28dc647ff5be646a2983702bc29352ad6654aac8535efaac8c420bb5be53cb34db9e57c365de61e3bc4e42d35faa9a64d06acd7bed1670af4b7081f0cf4643d8d2a7c20468fa1507ab2da38efc5744bcfcdfa46436766f0a2103ab58d5dcb364cc208769844f1e1e2cabbab60f43210dbeeca960621127fad51e627e2fea7e44f55f6347b10402517f92b68ad47e8b3f39414260018db5b4f174a22837d4f9095437942d06ef0719b05c6f19076a8f8cb9e82677facaa9f2b95118b365c1dc8c121770913da50b501faaf8f0a47447a06745f3f3e60b7d1039d7b4b8b1911200c9f64525eee30098f79bcd9ea8f0cf261b88a116a0516c99d29ddcbff1479098c89225c57435014f696304bff38366140b7b19c07283ba058b594c7c855239d1c402c227e9943371c99313103e83eefd891a9c677c222da22d540c288278fa70c910c8e7ab7c3947f98ff6930a95417cf28fd5c57a156412f89f93b84e18cd8a28da05837d5a2255aa5e6754239b0cc77d666c77296100f6c9cba36ca1941874569eca7c8bea5d6df44eb829fb6a0e99c0694ed8caee7220215a45c52e57445e36c267bf322e63eefb7770d6330eeb3acba93310437d38041088e09cc86c1148c4354c866a6e46129bc21fb6355ec186f56e67bcf808088b6332323db2583ff42886ca5e7943081b6c54cf5aaf9e4838b1d80f74cf8a29e4ed472b055e583440f99a0155efe54152d361ffaaf46c8280f46ccf339c2df6980a79c0c243ce47afa39f7092901a37cbcc94ea8c6a94cce7c082473079d645be8f624256342a0a64239b810a559b3b00deb9b5712a7be04c7c08cdf7e376f54e4b6a09b6809fb7b8e9eeff62f5393ec5385adca29ad8a8b218538a5f9661c7a1c8e1a49dd78ab9f882b9842fc52911f68ecf5bb2775eb05d2a3ae84a5f9567b269287e7fcbc20f701a009e97e7c639798958f161c1e715a12f4a958a19c36ee0634524ed360bb17f65b720e1c4006c62f5831890e53493214acb85dd4e1c07e2c2e841ede0451f171425c9d0c2bb3c57d565034883a20666a97344237c11b4fa912b92679df4c9338253b841008c738c0e277cf2a30cea77098a692791788093404e0eec04cc1f5ffec0741dd2f2137883225f471270800b73b993d250f1dc0f0b33ec74104755ad8fc53a9343084fbc68b7d6840706994376dd38d02c4355f859951d31cb942618f60fc00742d63864f057ae06f2aaa312a9b65edab43bbaf469d270965e62c5365f024fcb791d47bd260319bd2ba7ed0b6e9fc02bb8fccb74f7d15e4e0194706879652179c2b23f7f25012f834b2483460e755c5b9c03bef16439c251d5a09ced652b20dcd6bd0e25d56b78edcaf2c63e0549c4370968b7ed7a3286123943435424ad00df5c2614b0b5be60c24777c7ee21f06d2e9053662424cf1af7045d42b271f320ef4f1a556d0a8d94453ccefb3089466a6082632fbc0a151d51abb2fcfd0c6cdde8d29a4ef4382bd6c70446f9aeee638700aa5d05e639c040150d6190b0727793b578032c7a2bd30292585229b8d6ba703168d79a3bf69d3e002c02852ca431a9e8458d31eb0131e378cbfb27936c0b769663f479b6f9cfe6c443880dfc92840d0669463e6a821f54464a8aff6ec89f553c402878531d4b8dbbfc3e6341cd0ed0577f3e45b910b6b0312c09e3fd37cf538a1ff096fdae9960afe1096de8a2a4ee424ff6365c535f37ea6fa7c368593dbd9c76ad1151b797d06f90ed49fffe535fd713206ce12240f842dc3238ba2c47c0543f4174aca88baef6798a18abbc2e9244ad033976037cd5e562c687f3cb6111304e488faba22698332a5804d9a9820448c4c4258f5d257829ba0d60421a8111fac39b7ebbc7656a3775787e8d794cc24fc1116feccbc7bd651d97893423a56444fda9201377b7172246df9ada26e440b89a3708ceff7e96297508c1e7ddd6eed3ec0b4434c94e9e5e6d0943fdf3c95892515b0ee6acaa2070b9bdd2346cccbad5dfece2feb4ebeca4a8b9d34583f0cfc5ef7a26c2c7bb224260dd9068ecb9b74bde413cec76a7cd0e454c00bc8dadfed72f2c69d6a15c9064ef3cfb7b4bf460d1272d380ded37ad11b75e67724a8e90270f9c331281b616d0530541330c1628e9a0ca3a7a3c99c1427288e799279fcbf00c413a122a8e090d37147c8490418a624dca0b56c6620c5a6f5c3ca13cbaba5d18d72b0bab186c2df339c71b1037596ac19edc5947a9aa212aadc238dd66ec4e205a23faf37eee91ad439e60804524f5dc2465dd65c5c3c1ff750207d7259e469bca3583bcb08d1e2380df429ca82e6671222cc4e6d7d9d100dac83de6c3bae709f507f80614ec8eaad5ccefbff924ff207121fa8c54184c72c68ceea94b7555eb8e661180aea9047f78fdc88740e14b9a0593a72bdd22a7594fcd083ef64330bf283bb7adf7a7b4fc7f3d07baf139493027decaaf431b61935f3be2c1aac49e23af32c109b7857adf8e0ea58c47224ad08544cae23b88024cc48ab7ab5b014596300daaac1883a865da742a2214a9a1ffb73265c887f137f557e49d951275a9078c192bab9ce35c6188be35524deb16e1511e4a99fea3308af22f2bc766396d6a4e018fd017c16ab6d6a9b8e466dd909ef38219ae308a2051b7f70b0a201cb88ab95647a7256c7d2649d0985b4093c17582bbf78c32ace65d0503a76c36b78f790d3c76663b6d43ac148e56395aab7bfceb84ab5ef4ceb7351ab381e2dcfdd5a7fb229490d8d5dcc23b3d58f64bf74fefc33a50d94c97d5eba52d16cd9bf042c5083c49d116bae48b5670baa216a85f21bc6bdb4a3ffe81d0ada4d415b57e13e8d03c43feffa6ef7d8e74f332634654ff515497e2a1362bbbf07a8fbf08d79259286f49e259b430b78e49e833c08c5b00ff449959faf325e078fac534abfa00a0dd721754a31180e7048e63effaab12a96d0a0b602e2c8dfc4660e0e811a8de156020feec92bacacd57f6f165bd93b96868c1cf3425e94d2040f7f22250f9674549431d8d2dcf4ec906605908851e87b3e281df94850deaf2f34e82bbf5647ff8ca480039deb57d360b4e0b386d51aa212af5ba16b85a96861ce87e48e98956cb3016bda2ef985be637d3fdec5a9b1a0c9e283b3df15918841856eb34753df4238510a0c57c8f6892c3ce7e7f6b0e224fc9f39b18224428ca2b24536a38107c1ce5294a9548fb71d8737acb4b8734d917d07ee18086e5bf45d6e57f461a40002fc06f2c16e8aba76d64be8107f3cab2c63356dbf208d4dd2bc42aebefea7ecb4a2b5cf0fdb54c0d6e6e604126f874bee1551ef706360bfa13d5abc5773e3c7714702b605b5fdc6e7715f85df5857b2bbfe2bd99962c82900426a9f25b2d0170fbb90f5585bc0c571924d80b6f361d9f71bd83e6f6cbbf78a64dd0957bee9546100247018903b65d46f0ee66ac624d2ce932dd9e2df82c93f9f2fa913374d0a07d363bfeeddb88b5280e896c52c636e2e1905929986986bb3f0c24a486e6c3b5020910f3d49fd0b4f8e485c23e7a800beaaef9e7ffa7afbd7ddea7aa11e9d7fa3e9e13010c00d4aac920f3c5c1c8192701b1dc38a8e04b8b1d3e0b3f713b154939302a8b5c2290a49f59311632602276a918b9776b9240dda4518bd9c687ae84428a1ce9d208c7d6fd8865766ea8f71c94c8f08553978c86bc4bd025ccd445aeedad6d2ee1baf89d42c39e7340ca19931c40cb5de693790e90b916a6a10cc13a72f54bbd5f1361bf9ce92e7ae9294a435397619fcc4e881d3861628ca266b6806db2587b537d1e4eeb37d2e85ffc4b0b77b61acda5137c777bfaccff5d69eb0bdab94e73b4f9f74e4aad0d2fba70ea0524bf26e299e21cb0ffe8a0e84ba3cf25419005fcbfa22ffc9d923dab5a9789652807b0b3864a1d6585e467a969e978e2c3e45bf8f315cb1a4236f2617a43f8e6d8df1c91d42db941851d6287038050bfedf703dde993518874351477fc3fbe46a072ee9527b9b0af8f8dd959156ae17d1d5f290a87d75a388de625b2854cf7c6e56efd1cc4ffaef7a37af23344cee3a2f392264b19e1f8cfe561aec69bd8940ca8a7dc1a60d467f99ec14b6bf56e5c183b276e85272f4fbc0b0f0853f76f7efdd31b50ea96662acb62bc8ad1d754d0cc21855afdad9c802d5d0a4018b7c28f1cb92d399e8cb506f29229959356664998f26748d01c1f416a731616cb25bacf86ae17c059a256451f3658b95489cd13cade1219b43e4b8d5ce4df2b31b6469ca14c97b563a2c9e4e13e13cab40ef686303a782696f21792551db31dfd193648249b8f6c3d0097bb88fd588d78477cf97e97176075eb940b7239edc71489b9d254ade73bbc10ba6e076cf90c598f3b7e1722a11c7899095c3b1906d798b4e19b337c7e1bbf891246afc24f9d766ffc31dfce9d20f58d3c055928179677cfe32a3f2c720139472f0ec0842a973f23bc50ac30781dbc672dd829b57a8111aa3970e633074fc495f0cf42427158b555bd6db6cc197371fb56de407123c913283d7d7796cb7207ab9e0729854fd25ea1a05471fa86549ce9083bec19276d788da8daf483c198ad1678e7638606f159679013c1d0c156c48bfaae2b558c034da48279a9aae9ebd07321af0b7be8036da64b70a07f5121416e1a20dd1ebd12d518187bc027115f8be911d050b9cc02079cbbfc8119be4621846ca9970c7b5f4741642173974b3c3f67489998d90c14f8e33fa643fa92375db1623cfb8258efcfd45fc190c931cc8bd24707d4294fde89cc47915af6613dd7a49310f02bfad5b82a85ffaf425b2262b28728f9d845175885ddb6d343af0a163621433d0c9486be9755ba080a4819815a7b2211225e13d72b7cccc79ef8346d6d00171e1154fa25130e3a8541557844f7c62a8642d788510da21e79f8bb15c0b333a1778f35e8306c27e7ebc87e88fbf27d9f1e0814314717ccdc50d73757924508b367412aabf28ded9d6f2c743e06f5061327aa3c053cc8f8fd54221445485c47a3726d3f403f26b66430a67402be1f85bd0f9f57bde592174e37e5025e0cbdfc494f27b8a00aecb4779d02034cb5f1bef5cc6562bec243a9ea3dadb0548ce77e60318b0a0d133ba025204bc8c002bf1e8e4aff1d54247182f1eb6b6913942ecb1def614b0070f997077e414d35660716a528b6bdde3f7320bb0fe27e0b477a3135fac04de95f7fab653f62b344c65d833dfde272fae5270de2f09c4032adbbca7b417f1a9c9b613f812f677a473d8c2040fe857eeb66116e64f91e0b5b7ac7febd879937f3a819f94ca0154506f02636bade2b72c01a8bd48652b81047fcf575c1566d800b5b986f579b8d934a412ca677ddbc39d91462e9f21e2ce02d649e870467d1af2c6b4241089aae401f3a8fb0b1c30790cf542dbf01be7f0634561ce29ac81d0ad0e52aaf2945a353625148bb740a8471732ec08a14ccfc9d2fc9abfdd15ebb1da08b4976d701756045cfd9adb956ca91b4a635d8ad68bbe319cea177b64cb96e54ce9ac747bcdef917f7d22236c2179a5c230e58e4c1c0f83e667a51c1d8006598de886c1d329f56c57914a8e009bfa433298c08574d72ad5c5803f3ae23010337d4fc148784919c0b252b397b9b734f28f47ed37aae3c1948a53631e07044f62b3163fdc438a4167995fc7a9d37b229feb30a7594108f28326d118cf525cbfad766967ed161a53ff5ffad47ae876b77a477c10e8f16a4451d5738a993addca544e9921151bf3a3d94e833dceb608f962347d73198aebb7e334371b73a8188f133276b54d78c17a12489e540bd9ece8911288888f13e2a77473e176edba7133c7a94600c4dbba6152ee7854c00d10d74a391bf242e75edae5cfbf6f7123a744fe36c92cb38cc2593fa377c993b50151b795fc19265829e1930305f07c19dac13241a2b36e55939093f906e85089aa23364055f84d678b9cd3aa2ccf27c56519028ea35f4c7ca1a1379d0e39f1a8207141da86b799fe208f6044d9457655e2285c7600edea48c324cd6870f1d9ffc6e356de8f145f3e375c8044dfc987de172ce34b493bd7f1fa3b14048b00abad61c6f2ececaa73ce537a433ec62ea7d2e0f347800bba92df408f093884bc952a6f6abacf4b67aaefbe5a8377d4156c117c45b473c2ac622c3736a8405917ca6505aa2af1419fa2bbdafd57375c43ced1273905b4b85344e3f9c65a56f76d13932e0d1fea6e01ec8708c053cc53b0131d84bdab57dc929248330e8e42a33f4a13ac100c79eacf04bae007805b4363509f00924a0279b292c2a36f5871505bf10c88d995596857659a0525770fb52e51d6e25f389e1d259b6d005edda16b11507a70785c9ec84c1938dcf1b6fdf8174aa9ee07161bdc8d444e3357c389249d126f59f6a5d7c63f9bb90561d01910ea19a6c0ca55433cc531dfca8eeba5051c155dd90207ff5cdcb4c8435712c2eca5a68f78a21692be98f9c98429d4f0b4e1b3d191420744f95a2a16f6e692674736f6bee44fdbef75c40da83a45231bd35f3ec41b360686712f199f495cb4337eb75fdf514717b5f1054c767494e3e76349e8b20211c828f0a976c8429f804e44dab43ff03783f9264574c0315a268a24f3145948a16badbd01d25cf8dc11dfe02999ffd594fca3c4efe73bc3d884dfddac92b553d057b576e3edfb59e733b30ce8c2c42a5beada2561fdec14c61a3f53b0607829bb1c2ec78762bbbbe7c3ebfed6c0e6d88fb0028aebbf30b79dfdb15fda0a074cfb2570f3b63e518e9b9441d8c8762f8f38349419ef40a280a81f1db9bf5f75bfe2bc0e81e07164021525c7b7132da794cd9df0ddca34d9f7b95188654663ac3bf3ab6c26531de6b174e6a862c83fb937a7a7be4d7275a27b436080917cef09c56e31d3bc2982e6462b36eed2d2d210da879fc82f0f18822ed4ee9cdabe48518e5c11b53d90dc58e84c92629d405ccc55e7e66ac0b42d2b8f219d6017cb69077e80e424adc5f2545a5512da6203be43a0a12e12a85a074ca897e51e55d5b58aeaccd828a3128123c911f36bc66589373cf6115bb98dc506bef25c8b5c1aa5100886bf2909840ec5bc7972cc116373ad048e6195daac2216d8f3cf119bd83468ca8e84101ceba8a3208714e14b06341e77e5f60c9b82073a5799c938b56f5f8acef7da279a580854d08846c96e96ded4691cc078b7f2c5648afa8b8b8fac074326cf41e7e3a35b99b2b9b119b93cc539c0b46f8d9fea02316f8eb89ae28a856e4caf0531ccd4bc92784c414b726b8d6f2048dc338671e40868f2e01679d2d2e979a11cfd9736391c25a7e24bf59963626470e8bd1c430d678ad5ddaff8838519aceccf69b7a187d3c9f530aca19a019aff7463e48798e66376195d7c04cf47ef0c3839077913b5abdb7b7372962166cedec451c8df52be4925e2f283c36164fbe00ee3f59c4cbbb6422db2ca24b01778d4b122f93da37b4f797ab0132188f49875147f5428451dc64c44172cd88f09dbe9190bb98811336e286cd8b0f6b3ea0953bd1cfdf56578f70fcbe4df503522549d3c8ff5ff322aa92f478f0327e380e7c5d977cbd83a23ac15d994c461945bf99074497f32e3b657392d15da1445bdf37b951346a3f1e090ac72d6a5015e8f4f838faf31e5e64bdb006c96297f13120495d9573d4ca85009869890853b53d07f9a4e5b5e0b5656357b52bc757e27e498a2d40695913c4009e891f53e79cb6dfc97033b22c0b3b5276b60f4a5ec887c6d7a63a8f4f9513056c3cd11bf36215d24302a842071ef5b7ee692dc288e148f9576a5582a3f978c053145c5a9c9d59b3f90bcdca76f308406b874a2c567f5c8c2dd7f49f8fdc169bdeccc572d3d61e1ed064908d5375f4f86c72f50183d4d015d6604f327a99fc3165e54162cf38cba2b4478629dfe5b975fae7504f12753e5d69a6700a324cbe2afda6b02884f1a6df6014442f3166bcbee558d57022989681c342942bbbb0fb34f168d552abcd1d9b45d1ea7b355aa2487d1b62398edd2f824191f5366d666db65d39970b3dc5e49977a67b27869d7f6cb49c679ab90e534acf4663f0c677ea6296a6384b299db2de482e656e7a4db0189e0d4c8ccbce113b3ed233fa45c09698b9809243d121296c8f7672edd31fcb9498fdd1074d6d305abd077b8e3ccc3bce3e614d02cf0955e4fd9906dde86a888109fdbfd5038e9c2493e8f528011562a1bb2e102cc045a18c21a5c843ada3402172266a6c4e2da2c70b9888bd5ca15c566afa3f227f38ec9265aa55c39d2c6a2a851b6562c79d7233100fa6b0060e66d05fe59e3ebc3fb82edc935c89b033bc233df04801ab24827b5563905279b7e4f502d86b51f27626a8d08847823b1f35f99c3747ec07b1df69b3b6ff62732242b00e1eae20081362bd0c93af758db08e4626cb7f13b49bd7aea6efc3ad32bf35f91d987f5fdc081a084694daa8b348df4bac1deb3864ea77ecba14c95e8a81c5b6c7a1e046b74176b5cd15d070781872353b70ff5b616bafe0e8dd84003c5adbf6ee7f4911e54a15af0849a6739b1283878c68f9f9bad714631f895611cc4080d14bcbb0206a0e8f8ef11fec526dabaae85dd4046820f5753a47a9dabe0229fb6bbaac2436975d2c430ebe8150907b256761bdf7a7dc5760f943672a37c15f77ee943bbd236316ae9440f47d00ae6c4ce18346b347a6b464f808e84c8b7d37073e5b3eee6bc6a35020e3e33b8fa99df81426201d1452321b394f0feb9db4e86d1e43f7844df400d9c5e4a0354c1103562de45769d89d3aebf6d7e784d649eb7feeaa44dc1f841ef6f33dcda758c7b2c22c6e84081d65cea8bdda07e9fed84395f929bd6b68f1b16ac2f425a06565da9228649f3bf4e8c2634177c925755d3f5c97924bc94c5c0df8c0ad6dea7e3d2ee340b01430da8ae58b8c9332f7b78316034f3fde0303c130ad607c68c8cdb80d98a99e775badb673dba782db8c98d48e265e86257e625f707cc188d97c1e3608664cc6c98977c0a695c6480cf9ea6e8ca6ff1b1180716e888e3bd83a6ae3abb20779190410afc15b89cc553d673eef0bdc40c1571e05095155bb61627d2e337e0fd6d7ce47817f17a5394c085736accdc5eadf9b014dd2794484c44b459167c56748cb5057b73331b2410af62631a8071cd360caa222d21751f13980165ec9975c0d83b7165048ea2b6ab15503fda9a4d6bc146a752d9071a59f22a5835f10086f4c63d195e99a9283b1537d24577d0e8630ec8a8a11a6767f68de1ca77c8fa649f9e78942a00e69bd5f0fe381b10ba3debea1736d3741be180ec02174dc030074a52e942d31d62f346a851b70a4d719d5e6edf3773e52de9403e4f522f25f711274fb8b170e98ee585d80a0967e5c0cc7caa627666f76543546152adff7544c22d494b209e020a932f0fdd6f3256bbfdaa09a6d3e3592c29a35d32d9078b8413165cfe0a5da9c7029862579321f639621adab896114a01de7178c7950297541c8aaa0a84595f92aa8c99a29872f621d0fbd2d42c13535c4cd86e4e36a299cd5e7f2401b187f12e42307446989848e0bfcba0effb14c501fc7c028ea36301fadad9b791df353e54355dbc10c622765ce2d5c419ff61be449339f6a6668ed40a565de7dcd8d61cd9dbaa6d523c46044c7ca73666dec61f67ba05086e0ea3f864dc073c44882b5539443766963c7e3faea99c1846a1d3e43f153ac76f46dd07aefe230d4aee28f4790044afb1fd7bcdf217c1cd34fd55f9e105256804034249c51be057285d5ab20ef1501ba65c93609567216bf745612a84d7964653be3635066a417b2350233be56343cb83efac256eb9ae0f99c3045409b4a7af28ceb2cd94658acc35f18745810f4664a82cc8065c02268381c2e2fa4356f0ae8f657d1800bdc3b58ec310170a331ffb356739a7d65a12412f6df625252a07699d248941efcab2b620858f73adeee39fa36a8962f18e231679ce65042164b2292608d75cf043b2c621d04cac17b65f10d2256e11c06efeba6aa595fd87944b95e0ed0c17590070fc3badbb3a2666b4cb7c34eb83277dcee4e927d1d572af6f6afa3e0b1fbb7f686544ea86132ddcaab9d4a945dd54daac15de0ab3552c6802d38f34f2892ab3b61db38bc69c82b38fd61a477284f5a70f97d7306356bb09839dda0021e81941e87b080c67f15774631d89626558df24edc77b68840b3d2e7837e16afbc25e4b667eb30f25de318851e6990730e89017bd0d50a000e150d9f8c695590d7f59389ea2273be934f953af4d0a766d678ea31f77a7a676af09a7607f627eb4178e8fffcae71a52d2453ab73e8ea3197bc1d3fa8eb03da5937365062ee67ad593f4f3fe568fbd22fe329e5f59a1d0eff7c2838a5b12e3c2abb50309f2c85c02ecdc7108f1eeece6bb8a160dbb54c62546a87807aee811964383b7c112712b5e3d48a4503d442d862888c5c71be86fe11e96b1277b173421a21f2a1819c7cf22c54f80394f368e088ee990898d2931b2cd0b2d320724f7f1eff08e2d3188ffab10e261b797cc15fc559190df1377aa5e22eff36f1b350f22b01dd7387683372cd2aab886be7779b75ac532be381cdd8d03006f9fefc1b51312642d89f82bc72af5f74028ebb5729592e79330a57773422c8a02b305356c9501cc49a7b1baf5bf3ccb1d15505f9a09390c078649a3bd30f7e3239bb3b5298323018d5815e9b74fbf83d652d355bcfa2f5ad184aa1bffd414b3193d47f99ec4db146556172e634a7d97d1a1050138678d80cf29772d4947bf902ae4f4671801e393455f8abe565c8a1cfd6460466b6bd503e169ad799132c8378302110bef72b65d5e191dd90e4baf8fdf33e3eedd7ff8652b342d5f13b6a645ec8b6ee93ac1e8c21752969b6c023e6b158d694f6add6a2d5d9aff111d9bb9a999030f191ac08a1382c6b1496f241cb1fe7c08acb8441648df54e3a85383c954d7bc15b49993ca61bb3bf1b67173f8418a8d79fbab93dfc2a328e314925a291a8714befc532133a73e14124a7ec59e6602ba5ac8fd9fd9150839b343ec67c7eb4206257f9a814f7b6d8af0107599b874819814997baf9b13a41b876bd22c7c1c4458c4215f63e7ca3f475d1edf5414f071125eaf6a8748956e3af75f6f2e2e803db93ec0a23197ff3053ffb22e61939c5ffe8ba6ce73d7f1971c73105122f9f77060e87c33f3ad5609147b8421f4ed16b02c006b977457d919b3a9e0116064ca22b9ad5fede732deebe741e4fe93fd96758c50f06eaeeebad2fe08fe966ed7035486f5b19ab3340918c4e0a905a6e1ee6c9bbfdbddddb0ef83312215eca16983bf527569b846c1bef7665547d374bd0c3f666206736c7fe30e4c7c942c4d1090c18602da7cf72ab4e45b2a75fdacafad04cf67448eccbd0103408fa870444719722b01075a33c38ef9c2a5602195c835dfd7559e00de4432afd95f5c413adf6da2069730cfb2cbfe329ac615f7d687aabbab7db511af09ed60f4339b456f5db681178ffe9db26f90e60d21728ede533ac85a93b6d527cb25f32cbf8cc8f089ba13eec976a3455dc3048a9ffae904943b80a2cffffabc927a02d04f25318bdae4622576f97fd12bd2dcfbf4136f909274a458a7c0e4c781cba16634f0fbba7e8b4f47cc7267f32e395e3c09f19b633a634e148745292fa15f3bd6c5d9cc909468d75b5e3d3321c5c9dc430160b5c0beb6c8f574761c21cc74d7b35d949cc64090af5627e054c67a51be1346430d10e963efea6cf226b5025d1b5a824380bf55b4c7f1908d53354d3a9b65c266285b9ade26c4b9eb752e0cb09adcb26522aefabfbf27a320ba132217cb62c52a91a71fc496bf8890ad6c328df455007d248e850c59f74278d0136f5c8f49305109b2e4c1295060774a6da48af960c19c4c4e563edc1eeab05756c5af32a32c4fbab71dbedf18a36516ea6cd9f3b0f6ed748c44ac06b19e5b55f19698fbf1278a9b80d8741b985e3dea42a0793e84d7340bb9cdc20beb144f41c218cef7752e7f426f35ab4ad67d6ad71f109c2f1e9526d38f24a91b672c9c1d90759295f7b8fbab6f2cf65068a1d799d0d0fb49022742890c8ffc5d3b8b4fe1b394c7e6e3e778a2f2b2d70f5610d23d7cb9a4495b75ecd13618512fba3c49ab62906a5f2dd2599b834873bf2f6f4d63a9196d87a83c27eec1b034666b6748b99100640f81d4d8dafe51b0763b952697df8a6c12f7a5459be9d666023fb8cbb223e50c524e60a74979c035b976b3f89f15e9cfa404883a03df98f3085e507480634dfeec8bf09160bc7b2c7619762106e927a97e109c6084e7cb128b3b08346624e1e6e6dba59a0ef4b97a344ff32580738e7a84e819dde6e31c7b605e619164f3528a21b1d5bfe83c25a7739bdc7ec3ad8f204029c450389fd622f341b2b2eec69a54bfab58c1424bb6fa28becb0780b91d5a30ce766a2090f67e08973c6c1471259e2957411df7c977e859cf71d25d76c5f5db47213701fb15d9c8760aadba36d547c8439a0c07264c3be3d08271956b3ed60a4d72917a15dc2642040c61d2f367f1f355767b392efefffdc43b685012459e7534331baa4631119e45df8203261f21da185bf0f8e9e7c95d115ab6b2fdee909c5ad23f58c2c25fb31d680fb3a3fdc3c6655b5554881bf2f2380933eead339e1a7fcd4c97548e596105f0c2ded68687f028c9bd4b9e2137112759aba6f74e49c1a1cdd964b41d848b70c5524ee25080653649d4c73f23c7faf38aa2f91f723d03eb91cfc1c2c411c3cd5aadd6907e297d974d84ad62a945b1425a04d7c5e2c98301b3fde0f968dfda115e0f21c03b2a657a65a9f9f4901808d438a607ce9c7fdc8ed5ff4bf8e57392256e215666058c95ab63ec4ac5e2c2a3fac6f3399ea0d1d190506c018137bf7691e79965e27c0e483f663958ba068f97174277511583fd248ae4859016a7281b94d9403e612abf1f79aec130329b3977ca80576edd40ccf133ec8ab528439202879de9fa26a4de1c166f6d3badb180671c24ea830d3899c2cd62342d851b5f7d8b62960cb067c3c9c5950e916ead5c61c010167ef7fc1d57a550f0ad3d145545e0e325a1e0cf7c784921cc4ae066eef16b778fe24d621d69770b094aa0bbddff32326acac0f8ff5a86d0405bbb593416c8ccde513c20a6dca43d492bdce9b8b6628e92c872f342e90c92f7266061adb3c0835518ec935258495ebc2655853ca28cb7bc04646e1745199814d9763a722d8296b1ce8ee86716b67038da9e809e28dea83ff170b3f4e3ae882e22ee7f0e72ab1174b69845ae1ffe8026b90776ed4471b4c2b8d4f22ee26362a00a2ebc632e576937a0570a95457949f552a54730f0522eb05bd3b635c858d7e7d5aa5fedeace1d3372d76288ec0693009c65cba98929f29428b11e894404f06c2ad235935d0b4f20a9ced4134f249abc9ddde3d9f19e07e5edf427912379f3f73752b5265fc4494228b8ed32bec347c2122d7648b3b2e1f4da65ef5c1d7cfd7ac1f29add0b76299a510096833ffef70d482f81489dff0bdb6e56844a0f7dd395fd10182d35136f60694768a28a5bddae25c78ab57620056a8857355c1d791ef69aa9990ddf575c3bb87618fbfc708355b6b7be20313af934d793b0662b19ebc021d3041d744b6757ce0f4618df4ee08ad77a472bbf2561aaa535fc6a821b1949224efa83e24cdea3812447cb149fac191542f42c94bbf7912672b5cc6ba2d64f7341e0aac2daea869f836389e4e656e41d8b873115bd1becc3473d8062ec33f7d693e06191b43b434558537953e634f31f7646e01e64788744434f916a7735f742f8a8ff6bb365a187d0b295b91a0ef1d1b383dac25546cffa442ef7d3256a0f44810a197a99473e5bb9bc53bd29822eba02f6e16b3ac3a3ecd5a163a4d64c6b57ce9184721408edf6e393a3984013f1d5569bef9c6f27365d42fae9a76a1fb6816b2853677c1118fd96443eb075b81755349f4bc2e9aa6feb031e018f48e3a2afdd0abc0868a34a04a01eeed5413e79a23ccd629a418cf309117867ee7b7d21f34b02759f3e7cb151fcade4d23381a929f5de60ab7640bb1e90f1e7290b79b7f35b7e08cc7df6336abd41ac716226532fb2c58afe75ce673556d3a640c832686fda13192814e0c501bfc64a4be6b8628bba67e9625d02c87541057bb16b0ce6a3f550d8a80793c03a551804145844441f880d0554bccb65f755dd7f0c2dec7fbf25b26c81933f2adad764b3041252e583ab8190794f00f70f058f9763715303769064386352470aad25516a8bc6ef64ef0d0a7604b32cbb92154bca880df9e5054f5781eb03e9c26c348de029b99e758931f1fe2abc55458853ab574a5910c4c05f1e016f91c17a80ed55c36ab75ded102a0b1ddfe35371e495891a44279ed5858359bef61dbdba386c98c41cdbb2e416c02cae1479fb419ac55189c19446aca719aaf732e1cf8d2877dd6836a4555d8275f98b879994f24f012c7c489600cde617d4fe3c8089f80f16ee87136cbb97f89b2272ccc0c353db33f63160d960d0efa405048e26568826bbf136bd6ac9e078de0e65bcaecbaba070f8fe42de7fb0f8590c0011d08ef139d600a1f181ecef05f6671548174c17927526ea3413bf1fbd9b77fe7b1c433598eeb739e9d27f62a0d3db3bf4cb5b7ad3a1b16a3dbfa94e9f38123cc5448e9d00740d13ae8a5e438a3dea51b740e15c8ed153ce90e5da7965b562c075f6e099683ebf7871c099e25e48a2fe32b8ee9fd8a64c36096dc8703e0a7cd589ffad70c3c79aae2f0272198e005a536098c4ad440150041bb6182bf00a4715ff801e83e1e89c966bda01733083a1351ab22a754ae66c089657f2ee955fe8c07cdf33b451ee98516e2f6f7c89f20109cb1052953743609f1df6f60771f11ee3d747e7ce58f5dbe6b50079dbb5f6152fa14866332bf607115a77dd5ce7d3e024cb9ec09e1b1779e353db532674fbe6673d8d9335b882e20b98efb999f5184eb6ed462625e893fa4a77356889051124b8459169e16634f8f95af924fcc966d237833d0e8b4b2e5071af715b0092eeb0f7264146da88b6b91bbb5fb9f598cc493b6b3c45359b9523d7440e386b1ba91d15f2ea10f7fb51d133b4eaddf3b1111984cf3be416bccf2aa97f416cec03344b72edc0e2944f83c8d7e8247531cfb80259a8d18b539a5e518fba9b8a5373bb71150049a513ded18859e4124e9f26689ed55bf6e9bc9862850d43c7602f60561afa1a1e4d570ab04f1d31ca53dfccc058d0a40991f4d0edd3383220dc13dbb2d7697b7267fd9bb45119423188ace5612d1a1e0841c91a7b2d4972209c60a447c48e73877d258c57031c66921a9972d774f591967c7e85c0b9b6c4e2a26a4756891e87554cfec576cdfb738f8ee7d5ce7d605456030817cf6942671ef970d110d8f29da87ac75812c7ebca6fb14e42138d92abd7afd2c762898a0872d34e863ef867ab3a3a499c05b2dbd72970f8c96dae6d74f44c437374790af8f8220ce43c360880eb543b2a5214de56daf1739a99c4a195f5e0eede79df8a9b0cabeb8f5fd24a3728bc2f29f1a1784b1f80e94a957836dd77ae8c18d83ffc8829e8425cafab97be44a2fcd3b5f4caeb4d16fefa1460cfc6f5f9537f1ab84227b3df10f581748b11e73e89e5b35ea70da6846beab619ea94e08bc2bef5982f7489020081a37fb7c9e45ff4ee74575db0ec9b846622fb3b0b677a1675f7b492a28cbf4dbff4dc8818db2ea7b083481777b7d30f7cc2b1ea1bd56d6d22a5d20c3c64595bf26cc055ad4691ce5c205e545dc1fe6a0e3dd7e0581b7b14775bc0f72b12235ea1ebe35a408091a41046a0c42b3fa08f46a30aaea14dfc9658d00b611c98499fc2b43f94fd28b2b13c3144d31392da46592138d4e36ebbfa997d78c0186ca4633e37704bf61e0bf64fd1117edfa5531882c649462d1407b16a957d1bfec52149ce90cecf7ce295cf8750e4092a1effde221a6dc5c252642d7ba33a152db80f0f044852fec1476f9320e70ce69f1c5c8602c54591c2ab80edd0e026f99237a72adf12f4415d598d85b89215938834cc8f14cb5e63e2a7de4cbe97f136833a64603bef5303ca9cec144d22871f110a0f9e7ecc8c49e9e84c0050631373ec4b0f470e33c0d28dd9be48d3c0ea8dbd4f90fedec25ccf74aff75432ead7e84ce9852cb6813a5552655c07e1e30f062c3a3b633e09e4e48543a3421e1ad65fd0a9fdc8876b5a4d12d99a0081619be78cf0c0a9471ed75f83843275c59933aceb9c1891aef50cd786e81fbb11f01ed7c0fb4ea0ea100fe157b9871eea78fa8e414cdb2fa79185d2e33f60c2a4e5b3ae1ae8104415b2755abab709d1f5b31357907ddb82de4805f4e75a77203260e854d9828fe7cac4ec00efd465129801d8b92c56264eb01675c12e091b1155b1f9449cf9e42918645fdb913488e4cf1334d8fa91cc1aa95eab44946c8e1c4614aa974e98ce4254b7c00e99ac131eba5431d0a7ccf808389e176aefa120444ec6ded92b49a25a7e1859d627343fd2370c5ed0b9656013ce32bef7ed7d1bc926e7115994969335792779dafd13dd95c86542f4fdfa360969c452a139243b970fd3a93aacd079f9f2a3a87f869b724b179de3415c0c2015f2e248c939c7693c6982581964ac79cbadc5a6a8ee15d543ec146ed35f9dbb55e3c1befcf6acdb7dbce283e0c5a8ef6861e3c53a2ec1352675aa36ba5e1fb0069a9c788307e74c9edab5307b7fcdbdd9a8e3de347c0c45d381ce56bcd779edd220da252c6f46a3a43e8621d587b93448502f42ff07a2a1c6910697aeea4f7a34d4071ebe275aebb7eba2ac0ed4a9aa5fb9c476500eeb0e533879fd91c3031d11aa48b8e794db6f95e6445a85770fa930f337e6cd0667745c18d20abe8da75cb79474bd0bd6fc2f2f04d6a5ebfb857f4221e831892c0bae0dd1a501a4a7269fcf8f7bd1311cc363e37300ea55dd191e1d9824ebbd0ae2fdd9718662d146510ea22b1bdbbdc6f49b1b444377f95f8836fded39d5c52f517027e132082f32507d29006164400768b444f4f092b60c56cf4114602c5ba7621b1aefe4add0f9b813de5857a1c1af37a69dbfa6a5c05c22f363737a6125adb5eee1fc64a85009787dcf68e1042d5d43499404021f7a8a68b31495cd8ffc24fb634cb175c19ad3559862d71133f24352ec5d7c546048b199d68b914b2f15ac8e76520b4f5e5a59e1fbfa669cb8a5f9b540f6f566351173fb5130502d860c5aba45358b3f4a707eda7374575da6e068e0590baaa72e586479c404dec87503221b60bb55a21234430196c53c47e6c398860058da470313c8372b01582774dfcaee4d465430e06439674c3a2836932cacf12dc94833fa8dcd77c1b7daf91550d12cf8479a57072d7ca12b5adb6697248fbe39baacf6463073709b936242848dbcb91a57ea9ae26cc68f9bcd018974d8e1c0fba2e571e28bfe107e07c072f2d612c789c410d982229334ae09164ad6e6ba787a2da6717cdad43bf589c1d8ce067b0bd21b90f099188711c1158830f7baab01b880e010504d91c863d0c4ab5709e027c9cb63732fb341655198efe827858c8e273738067b50d22ef3d38fa6e40ff7585269dc5f197c55228f73a0c6c10907494267b16136760e1cfdcc4eafc8b3d923844a5ab302846ba966b400371af69c1383dc1be1b6fd6264632200dccab6c315f46fd8336359f4745e3e2825f8aa5ecc96bfadf2f7b93790c7b97674480cdf63e7d91dbfd2753c1bb5669714c76d27d62cc685944f1750a41764c2c8b2c83bd42cbe980b32d06044d2cf7ba48aa81ac64d1a0e00238cb60d809aa3bce61c7e771eff6d2be253a25ad53b160cbd1c082bce404ca329906060d38c68e3c3e865dd56599aa6327a50d79abf17da332bc2e77aa46f7646b06742792ed58da5a8b49b7d909aa2fa091a2066df7118dc8ac557e0bc93e369055ed042b9273fa05aaf853234f637b396139ea5cd362dc05c54f78562eef65e05694e17626402710b599e5e9fab5b58549cd8b533eec2b22faab094838783db98c60d400c1b12995847f7e0f97e7f47ae7e77b0b2cb5397bd009fb89c5e338e303070f7e199b494c97aafd7439fe0881b2f3062829dffceb9143863d9d000a75ca7c2a49d5f0f5b26f372abc94983d0508befebae791367852a5b2991829336834dae2384d668c9ee4c1d4cb303bb0f7cba7376fcd8db5e1949db7e7b6340cba95a553efeb5aed44032bdd73e0faf9d0d1f8158ecc85a6e8f14087d5edba2634ed3c9af8a8c3b52c7fcf24bdd2f6098f4bdab57b25086cb5872abb8e9d7d724eeb07c0a91a2ca37ed683e55740029c287c256f7bb0b57a2465440007c94a13350abc33b06fff883dbb6874e0d5cf3c6a6599e47ceb2628b47dee1e52ceaa29b4a78d0715bfc64b99237e6b0e88c0bc952fda5a789099d43c045251c59b411f613a0fedb1ca30deaec6529196faef0684d0d01c490c4e6920aa67600528ef68bcfd62e3661fdc6208ba7d53d628cdaea5aee02d4a6c3d41eed8ecbbd823460c3b9b293503fde6cc2b7a86ce1943626ef2de92c3a81eb4090e1a6dbc4b53ec0d3ba6b0b8584965550840d4d7a9a017fa693aa11a66720cb548b01260bd02ea68f00d27e6214ae1ddbd8b07d3ee8c2d387156ffbf4b73fa4cf17eba46e7350e45e227c001f7d2cea313ef054a32998754be683fcc1e109760ea17108e33e918611648eb70c9a4bc2a2ada9e7821d26ec21ad6a42995f509a4498bb7b0fc63fd2142c75b5a67b79b4af00ce8093ffcd030410f9a4994e158cab66181adea528732ba4cc9328917c9d77b36a30a3f000ed61de7f7a42273b488395d42f64008b52412e845df79db2ae0f57a9a6b8761e79a3bb0e2bed0883f2e7fe9303ba6019b69f005ad85a36ae16acb145ba9682bde7b54fa44226001a5f1ee2901d3610b51632ba80bd62c4b813d28c34b875e88e6cbc1d1aa55051e1819855df637a1c40e175bdbdf3fc440003492c67a154f63fa70303d7531c78de20fbc8986f09c0d943540afe563a0dc62fcc0058745bb6541125ba128a29057782980090f0b7fe9901ed1be1e097a53380ebc533413144d3a3ff1882087a8b16b7fbcf38132bf104a042ddc1df5ecffd45a893e71a9083f4cc2119357bc0a3f0a1ae371b5d9a5fe79538fad9a554c4bfab10457b5cb9d80856d6479efdea39dcb09d7cfc6b2ce5d0916be40232e23e169cc80e626981e2689e81a3823b753b447278586961df6af764e7ae25cacdf41cc010f85a8d593f611d0ac27b419691a51c6685a6e96fd24990b3875e7f3f1d3510e60a66134cda5e7cc8c774ee7d455d2ad56df6c2e0091561832c1a67d609957943ec897ccc4c0181efd1fd64a0c872b0ca1e96ffc1f81e4665929c151972eab1f5c1ca17dc2b02ec7e2909003584400ab46f6518f07d91b64b6b99812be698dcb384a215e9d6b399ae8978cc264887e94ec5b2d59395be75ccb2a654cf04c6436585737e03abc93c99bfbccce2fb9182302be29801bb2b11dbeaa48ac6804d4b4608ba7316d1c7453da244bcbabe830a757f41fca551348480a7f5121f3d14c82b2b03e623ccd4c514d2d326e2b19ac14ecf11c9b8787e52571d4b2539552bd6669e36b492dcb1f3bb520a1456de28d1f3895f6320accae5db28dba388baa4aa0bb34990f49413a6175642770aee4fe1e8f1f8e9e1b927a15cf2332366fda4215148de0bf7b4106c9dcbbf79f2d1170d91dc1984d7779ba0ad042d3c1d87f4ea1adbcfc4c531967b532023a74882fbdd75dab6e6ab791d62118c2dc863e083c52fed142fb0c8d7bab38f215557b1d52c8107f75dcd810161f0811083a98baf3df10ae81297dc0846c007cd64d6939d51e844d9c3782ede3610f1da5aba6247129f7d216f854df6ff2845a18a7a6072852c6327ceeae7d663fa09e8fa219a22ae481f893f1d10b8e1d08b9b42ff6aae855574354f2fe768e48eb3d09f1f9e6952cc1b09c3c4979d3ed891733c66418233f4f57a97e1193f915a17eab28115f382a3c4f18665e243b761e6c2ebd510ba92887955af816fd18413d5b572f2263585763126887f7e2270c51e25c45ac0e663f93fc953c909a62467633380b28d2332b5ec224132d8c25747a22ebf203d41631b1314f2606c9213e2c420cd14a5136f28300abfcfd78ee559eac7652b502f8750195cdb80b3ad5395c022ec462b3d1b04a451d7acb5632e2de791933dafbb19e38ce674714d71c5ed6117b01b9c60476b636780a626b6ac5b41f69f64292e869080da936aae08961a6f39e10d31a02fef0d22317d225b49b33ad13e608e1c5e38c6939314a598658adbae8d66788fc52fb8dd748cb99b67b42f90422d11ab3690e654e969da6781a645138b72943199387941b397d358e1417568bd0a2a5792a296288915d4ba452c90ac04c7096d8f6eabe04c965f543cb251681a68cd67f37b7c0c13ccdcecf3b29a550be7a1138da584cf4d6f8498fbde54b0665427436be8c4badc3a9c6533be515c0f2b442606f334e62e4e8bd4a823e131f727fb13855e48765f4e0e30366c2de6a781aeecb547dfd9ee51ad1ccba996106f5b038bd04ff950fe0bf8d5927625de659a5f7c2a704147bc9e5f0e3e8cee1b1cfcd3cd06748fe114c99af7606d20374017e9b478b9bbca060a1877b5910eab0d6b90ae00c5b61f665f7d723232936beccefb318f7f33782f09f349bbf42a294566912f81f24ad8d81c20671325dcd5d3f55d4f2f370a7e95a253f3d21cfce8358bf52079e28d66f5ce208012f2171fccb0984d76d1d236710088b0c66a1a32e5ba1e8dfb90d121b0055f40208b830ca6ca02450f6b70cb85dbde0f20ba09dccce3a68e453f2e2bf38c1e4924e34dec9ffa9a8bfc6f59c91b66529bde24b1d3b8867e832848a48addd00e05754655adb96b4e90b6979d4ce083cb13c739d5d299cea90513a7e2328787744bf3f5566cc0a266312f2e0b988120d849241bf7188d04f2bf96abab00a184df8cd6c81c19c1830dd63356222cdfbc027081491174db24e5573fa41a4d19790e9121b98d78bc9bec85a75a596247b6690df9c92040251dec82f95e196a75aa3e09e0e6888663e298a1f116fb696ee0c4042ef624bb94b45c1a3952c86c6f220481c03505b01495874c8abadc63f8b898f404ca3f02b9aa3eec36fdb262f276175c30cf53a92c13d32d7ef0723f139c70ecc8c19db858ef796d757ce004dfa49fba515a2525d34d2328357d12d99c0d07238b66221100cb789b9189e99afecdf29952b52837dbcf947616c19f25697648266326beae4e1e39dd7d0ba053353b04fc506c336117cd7fedafbe091bb175633d9bd7797a31974db63dc711217dafde9ac164a22421854d4ebebbe726720ecec136adbe6466a8631b375a3726684995604684af9dbfbc6a86b4d3d9bdca4d34779b3f38cc82f8887d9e47690dda47b80e6000cec9c624460ec593479a3b09c091c55ff429ba5c1888422197ef8387c4b3f0404d4a57543b35dbd91f23615bd0cf09ed879cd6da6dc75e1ff6f723807df3d156f12ab083c97f63786b440848c13c4358ba201e6d4e5e0d4850935cb1df3841378b03be9f83043bdbd95a3f7d5b18fc2b775ee7e8be16ed58883bed473168c346486a259eed7ed6fd6e63173f8b840ba76a045daed89716e9bb711ad222f59519705e141393714efabca6b57ab0eb5f99e71b9a3bcb70e1d38907f93baa9b20204eebd5550a6ad43ac75010f9d27bdb2f8ea8c4403c2776ce1dee5e4d964eb406e6acebc7d125bd333d56448a89a5b38928cccc05d14e76493d4fceaec03121db0a899e5aba6e9b8f0e36fa8117d4c56c18fa4d6e50a45e88136c74e07d68b1fa1fca5ae590dcc7deb1f485eac916ede94a8ba1dc7f897ac4900c7b18038ad4faa7bf9074bf5c2bdf33ceb67e30882a35d927603b31dfb382000fb265ba13c14bf13c58a17c52fb3319f2ebca765f895565db6aa3b88618540d018560d1609268b1b3ec1e8fd22ecd6db6e1207e126b7155e4f4c0a58ff92716c8dde4463b72e8336eb4e18ce20896893e84765083be4ecbcd5c289afb1949a0676264908195f4732b268a8c559e1806daa5fc9c42b82e9e36cf60459d138c3b674033edf4d1fed00a636f36a10cc2fb692a622d80d953f11058cd4a9aa92ab8c74a1c18c1214e63c6d23bee7ac4c41782e232b459a578df098f4215d408953230bc11f7dd057c07abcb3bbe925243769ee17bbcd8054ea6c8ac576f899eacc19870c98d0080d987f3ae6b8f49c18cdd357e97fcf6442cd0dc25d1c5271a04759814f6b9cdd4c24d2e46765cb88bd70382b9a79ec13fe3040aec07ec0de2b259742dba7b0325508bc1e5ab38923040cbd33a63f5590fc925a0bd7df9ac41f7824b24b6483b54f7c6fc9d21054f33b230a8546e2b1442ed09e9acd0caa573fd4696ca54efd8a047eb0c9ae202cd5a3016eca496331f3d4fe0faaf96634647521842edf555e3708c79448f082bc739754055487e399b0fc638482017f67d81b2cf6117eac696d005ff57c904b9edf68c072489f8425768b859a4c1d4c32051e3f1e9f500bedd746807da1f70d384f988e8d16e78222ace17a37ef5bf36b69926bf97d7fa2704f3c542950c26e780d3da67f191c3318d549e79a90c18a68cbd37bb51fde59aa5b6faf14412ceeab8d36363b1ecc96f1ea8cfe81214dc51642ed84880a94902b70711ac4b99da5406ed3ffd923806cf289410813aea6469fb4fcc81714a1867e1f5296f8cc1d61438254d406333a51c66744fc017b663615a20b12b257e442ac5703fe24925cd86a4d61bcc25ba00900f1bd379c487b793c10226b492057db188655c150db17d989866e95bf53d796df715782ee4579d6fd06eae66513a5942855731e51cc20cf660b5c07eae9e0bbd3c09f6fcda569b2e6049460e5a449de549910243d545aa2c5934150962c54aa62fbbea8c0436e276117d7f3573e60508510085c6f24660f4a976fbc7f32a49146c22f938abb1068500d3a16eab88d8715a327449d35e42ccf41ed1279c3edc2e3e4579232ce3a7e097681c2e0a52fddaed20d7b3ac9eee6ab131c50e5ebe0290e79398b34bfe4958c59658e6fca14baca6a51d0147ab3fa3e4d29a1e374e06512f13755d6e283e2e200f679c07a10aa61ca6079bbabe383cdc24bb812a98ca4b1cf3af960a950a5fe43136796d5e381a2cf195cd1f615b69565149c931101907170eebbb5c9820cdb5a05333e18db8a86ee0073ef302f17b461c0facebe42fd62316e934d585ceae3f32cc7adf88e48a1d75a8e53061767eb8b12f0bc87e608aeea271c4e392064d2a2a22e6ff1054daf694c40427cef07ddfb10cbb96bf08559730d2f4b54777deffa569172cbacb0b17c13f26a0de76f14e8a40d9e8f6bd302573ab1dc07104c00060c20d91d85095f2d47d6471a83613df5e8b61e97e3d37cf520e59bb7c6bd6739f3cc224c4f12939936b5faaa58b19beaa6a0f21042a098c4184e9b07f20ec288745264d6b71f1b9c4549e4a4ecbe06da2d5d8b74fb904085adbd18c9c98d8e749618764ceeb623b91923dc2a06892228b8048fb8cf64c14b9d7ebeb0a927211b1f1f7be1a9dbb1cf1e68259546dbe2797a58940e67110b3fa8a461dacbd36c52276f24aed06398036fcabb943cc0761ee54680187a28e4cba72b7f4aa3b6be51cc6b4f5a09dba7e002bbe3429ed6a4d5b7dd3f6e723f9c964c30e4c9e264a83f66c8bab23f072e72500d64e791e60a67eb26f43b4cb7256033cb23c6d91388cf3192e537e67b78e26804a514d204cd4f7707e201baeb9cdb8491f13c4f5917abb01baf8f41e7edac2d92c40a13430c986750e4c0dd5e3e58c01fd9dfaa3519f4f6f15ad4a406ed2a61c299a5714be820c03fd170bfac1ae8cb299560284356ffc463a116b0fe13655fdf85e6529eb12cc6bbf42a83f9d1893403b214d2791f0072804a7a4900ba1701b663d525f56e2f7d7ee63493ed8fcb90e2a4fa2cd8d55da5bf04d0270861a46a2c31cbfb66f718424678599dc40e03e5eb4ebef7200e46f6674e34d4255d3c158b96841ae00bd0353a748a01b781db88305d35079413e3e67e1f0c12dc59374b83854e6121c1d27612a95808767d512c39357ae050cf7ff16725d67909361d028bf8d09a05175342445bd497e306fa16de1d5e1a0883f3e41fea345c08e8485fd79a903b8781c123b5bcad01789f5018da2e2d5bef76ec28686df70ec7fb301943c9dbac0f6c4f403eccfa33f8d11c137d5de511204e4e645482e1cb56e3471f0e24a15d23726c9ba14cfa8e7e7bfcb79b1a0861de047ed29b306228747f7b5d8d585e0a59da29419760d9b94b930e938500250c89a48e5c3b0d8254e66b0065d753085d63e02389ba872b976f017884293add14830e831316f6088d44001406803633466c3c2fdbb7c61eb750a514eb8f643df72fa8b94ecab313a98c6b0073866afa6d88aa26c2bd9763a056cbc07d91820255a846fbca6fa02b7690ede011c20873ed1b31a7765c58456e309dbd93f703308a3352f9978efe1aaa861b62619e38f09985c09811ac304e99bd8525fe3f7a7ced82710cbe0a324ac55fe9982e7973f163a271e1f71583c423d48784854fa0e46103d518b40aa44f6b3e5c951f22a2772964b761bb0ae3378ad87bf180ba03ab574fe1a4ed5f322dfafd25370ba7eeff28541d7c9bdd3964628c3c95fb3dd50e15d398d2efa2d3d40cedefac0b8e9cf7bd0d9a4fe0d432b75e4ce9eb2d50d6217f0e9adeff5935c870683d765906454423950c292cbc81c943d06abc11d859a57d3f79bc1d8e8572ccb1c362738e22c83eb50792cb46b7c1f48234b22ba3714940fc1c187b8bf6004230a80143b96bc776ae87e00f27fabd715c61f98dc4815ca2557c0899d982f8130f36303fdc2c1723b847ee676cb0fa16ecd3c46cd538b6d1184751a728df531ae6778e062b6c2aced9e497c2b9a8f1bac2d52e9afd96ed7abc11f045385373cb2e7a6b07d941e341c61b49aaf05f3885d590a5f93354f1381866c2c2143a961468071f089b0ac4c08c9ba1cf19d84378d36311257c62c684ee5a9fd06c3de7e66061ce0036202dcdf141de85de5df255d175a0574f252b7350a9dba94ffd8ebbdb8a7f4895ee146d1892719b1b083a34a066c08b8d17dddf44dc20a72a7f374a7b4b476324d24595fe8660adf6e73a4677c48ca3113e4631b86de28f7de6ddcc28677f5e881dfc90a4786a19313f74d5e32253ea6c6936b810802297269a2abd3ca0814e4a5a6785061a259bb5e2d73968a91ee5220659cf34dd2705123df8951196672ac9d2beec9d821af473d26dbb64b28e4e6783d24a241a35e942b449c9b836d90b2528c5b72b0b480c0edafe0fe9adef174aee205cf95510aee65cae591455b41fe4d9068543c36c44fe91116f0c21aff11028b377c2abe937950f3da54c636953621c0bdecbb929c8fa3dd6382539d2f277e201b57b1066749ab4b1aeb550a1050dea7e12da17101d9a26bab95992603c2bd1bd132b40b551cd0b3b4bbda62271d4e219c35596fe3f0056fde408eaf96fa35c419e8458ed8cea3af6745c4d9b6684c61437798bd6e00fdba2ca92fc3fac3af91a2d0d6148104a74bfc12a814b027a5c2fbbdea4a71a676f6d5ecd29fc4db44a4e8f0572a0e052fc9906fd903c236826274dba30d77c682b0a04e06428184e4ce1a161d819cc47106a01d1576f6f31ddcbfe3dba7d453cb43780d2c232ab786a1193084a8f53ae7bcb3bf7750e4ab8fa834e52950bd1210e53ac16af2b2cad5019d819f9027bd65d0afaac227e08a0d69b8aada1c451e3eaa12c1f8d9ee9eff8e0e9346309e9a02716cb797c2d187c52624710feec26e234171d5c4efb30a47d246d240376632ccceadf5f584c2b4c5ec767d2a53bd186346fd420e3610104f985713086868dc9e0acd7acbf4c48643c8478060a0ac196096bff290e6e1a6d216f628cae295d2b11302007bfed2d8e65db00b19e62b5c3a7fbb80a2f69086cb409596ef14d3dde8d547fedfa0200d0b44391aa8baa96918357f01ec50284996211802077547109866c7d368fbd58552185b5c3595e6a140ca9bee63caf2b979007da01f5709b55564e3fa5aee36fc18f79cbe549ff4cb0558987361c3f2c21c7a9475c01067b13b7db019fc50c66c71ca7aee0e7d279f7bbd7eb726069f8ca98654f66664fcc3d8a30082251d93c47e43cc3f247d65b022bf414b280be218c70a1139e9271f8c9fb3f3881a6be326ee0fca8a79ce4d5cf08e6b425e4ae220baff0a3c5e095fe307c9b0e20c6f54c29e146a11eb4481a8683d7cc8b1c7328d244c8aac2d6bf38370dd0e009f55d37b84f88307c407a6aee1afdb8f8d4e869f8b6cf074a9ef0796781d2d3ed72f73c10a06e1782f68f19f0edd569e64efabb52d3af16e4090f1ea687185778bc3948bc3c842b71e41eb8879c1b49114ed668e5110cd852df6af64a562dfd0afaca325fdb23a2397be3ff261e0b983d3e6d144c1916ece46a8ccc9a04760db10e792d6fb1306638ed56f96d855be0bf760d9cdfd9a159ce7125282bc8d004cc00992979d6b8973fb53ad104eae72c6dbd5b60931900d645a109b792ce80d18b7d6b23cf8336c913032a1ef6430f1fc050f78d1976198a5c99e8bc7f9a10d6de572e196a3d639673c81a9549e019cd2af0518694d22e7d915a20d5625a16d7e2f79058c31b66db5637d883e50e20162bcb00a3f53701369ee655d68f71da3cfb1f1626fa81d49b30a97826c46d995bf07f8c772e82a714c8fad0de3bad1761e63ecb681b514160c0fb0edc1398bb4f1aa5dc01688552db1db499f7af2b371b4e996248f4d8bfe7f1eeb87ca9375ed4d7191113047446b31c460987a9d7788a55cc513dbd2027f796f3658b8e67234fa5c2615af305ae3155cddd154f5b45e213be92366f0ee758a1471d724c8bcf550858e2313f269341df09b52a255a8b7feb420314b98b52f3d9aa510b5a3a17944889fbe75edbfb83bcbb6e6e40a9bb82b63df70d433801bf3032f1d1482f8c0a016527b22abefb646bc6ec4f4de6e9040b5a3871453d15d35b1e9647c0ede9658c59da1d0da26f0f1be1e2d538134a4d8cb7964a5238adb505ad2f4dfbe059db9258c58dcd51c1b09d797a24bbb2d94af9f0bc11177d191cba9400839fe734bc11996689b1f42ba0585d562da0b760561fef0807c4c1edfb6a8cd15c9ad452ef2eb9f12789aee8207dda474f7615f7a531ac705460ced2108d9f681f2308ab5f7c6ddb4aedb7b44cc03f3af2d29101c4fbd49c179eede434e0360d8e1d3e5a3a27439eb49fbc6221c0faf71677d1786d2ed7c11603880329de4def8331d7fccf5a03dc5f510b36c1facda69c93ace2fb6b49322faa8e6eb3f1fb448fe27fba877e6569234887ca047e7e7d30a274bd60ffe93c2c2aa5c685b1c511b5ad07804ed763d78b86433fd3c67ffa053ebcfd5d92359c4bc0277fcecc57f1f385b7b7427002c1d416972127b7707a414cd294cc02c2d31af110785859cb53623a5251a205a008028e0efe3fac5c74af044581b8d4ff5b692873d58cdba93340478c722c9a61cfe8f5c2f7c4bb8e77454f812f15b79e5e040c7a64610b8fa3708f45b32e0997ba4be36753d26bb3d31cd274b37cdf080036b73a32e49b7aaf46d3711b442c3eb4cfb052a423c104b18ecff0bc0f41ecb642f869410d73c1e9e8927831d2f00c9cb9627c1af6f4ac4677e58f6d21a72e4130edb2300e5b8fcde8cef7e31463e9bfe9a48c7dfb785c3d245c6509df5377e1446febfa9bc27b8ccbfe1c8551ba654a96f048b4bb00dd615063157a64cdec1c5fa66657a5a6a6f84187c4e5b198f083a3962b4868be2eb3770edfc6a768e71416e954f945cc60386041ae4ea57b26343c54d1156db46dc7b3879998cddb0b20712df1ef49a149800c332a38ec6847c2f3f69ef53ad4e0f20d3354da839a94ac27c272460cd0a2b98d826e94f561de3a3ba22d50ad8940cb6c3f0b8c5b7f8fd359e8ec0b1766c8a68a2199027d408b85377d67d9a8461368eb1b5e2fef73d1914eb446bba45e217b4037a476075211dc4934011a0c699e801d03945c2297d9dc360f7b2d1013b055caa87673ecc5a7abd456969b40145500ff89c69d754545391fa49e7b3b79f225cbdf6d1f4eed2b5923ea2c02648b6e950f09aafcbbfceaaf13b24bd3aebc5efb36f41dd57f48c4aa8ee22f0f508eef71b6f0a864f99a30ec24fa5d7fa063f3f9903abdbd7ed728c77e33387154f5bd418f9334e271bacaf317d5e19e400c770a8613864daef60bf05d54c3b5acb7b96365ae56018d98277f3ab6694b9888f30fbe0768bcc1ae51cd379513ef76762468d2dca2f6ccc710b33350291ee7020568c8a99d3e844f054fce28bc31cab92805a800d55524c7ed2a70f9195610fa67aa000463ce9e8a84acf492cb9f1fb31e596a6a8ef6e4749c560b6372b9bebdb9122dce7c547ebb8acdb559fc7c247699b30342bfe31249568318cbd15fd141f6e39ea15ba91f48a2a1d92356685cf2bfe8e40df6646b108c1463b13e30a893ea2a003bc0a9814bc1522ae497522e7a3b26089670d98ac7c1460771feceb829b03f125c0d029ab76926095f7e244ddb858482952ee4370d29493524da6cb376b70a5db19a0858344e1394a1d25c24f1471b01851cb908d38bbb337b6d2582d5bd04cb4f27cc3bb0865bb5df671a2e3ebaee33956c7ce93544de4c8e42c515ea4e7bace7528654a9d46be0e782e604212457bd59a917a6e2ef670bfea523902e2c7e871adc80bdcd95399a826875103ab6ce52e9f796f904992a5f7500c07a824465828c198d2f72cf9150dfd5dbd16d8b3c5d6cfc538b8ecafd5de3de59086077a1a33797c604b1348fe6d686cb37319e268f007f69e520854e000ca113c700a88d9fd1147b2cf64c9fc287a1e1498bbf8b371cec12c1e635753036f3cde52bb85ae273a64544c653ca38badc72ebdeae399d65cd100571612d2bdae4d23492ee5de7f0904bf7f05ac5dc3ae46a8c8a07c949ef886ea4bf8c7c197fd4d3749fe93edbd678c903058f3897c08da66e56bd11a68ed30f86c1d335606ad71775b75e6a7d7424e80bff1ef864db65618622bc7dd5abc7510b723504196b103c7256980452f4c004d85256321136e5f8d34a1aaf446b65911384f7364845aa0bd496bf30e48657c5bdfab2fac06cf1e0eba36e1cca9b5ac47a1a203e393acb1b05181d8d0c3388bcd397255a50efcc687527e2889f16a2bfab10a02f0ee5d03e7e08bf0ed496302a65d12e19b990710fa3e0e6a6a196c2f286a98f782b1c7b9b0302f919b12aeac481505881a0e93dff8680a5b512e6eef0dc2a81320dfdd79fdedad2e90d12b06e9a6077ceb48ccec2977fb2cbdf12f8a41d306c071381b8d9de558288603b65b83858e4b83ff3276e50e123bc4bc1d1fd7eda33a0112339cc5fe31c4fc3c6d50bced5fcda9ed2f19e90cbf3916d71a012c5d5a4f35e9d09358b02fd5c0705c665b8d590691e3236c5cfe62940553d0aea1ee9fb8a028475ee0ed8c044c237b394f1c1ef6aea3c69b8369bd2b318ce052c9fb0974d5f769802f11d731f7adf84ca4d9d42ede6a938fec29820d29e5e12b7658c27294ebcebedb49b4327a3b2dab21e42335fe658214d1d88bb91bfd842f953dbb33b0160205ba2f281b7cd96b6d12534d15ae5c5de06e47f92231a4f196a03988dea28042ee1cf7e39a48d6a62719484e455c5a1684b03d0ae9a402eb2edd11850574e99290a1a86f0197fd5295ebcdc984399a4804dd30145e3f62917ddce9d25e8464257869037395b100bd40154ec0001974c8649a4516c58789d0ee87240225326dd9b7614bc24b4ff8a1c7e2258472564672bc6c87aa5f26e01512491cf2b211f78214f7680590699b9ce18f7300c1ad045153e82982c0459781188f2b890dd583d9de87b7f35db50bc0d3750b4191a34e7fdec632fb6eca9e6efe41b77aa9838a7c3288563752c0fd3461a7f5f802fb3f565b834278c9fd2a41ec39533c0057254f84526722c46226fce1ae20d47c89d1d305a8d85cdea42c66a9f6d77fc2047b4fffd4486c96c85df77ceda6c75ca719f04d7c5fa184cd13d66268106c3aa28565ed78bc979767bf1c4b525ee9837afb0adde7f14e8976800dc80c60583cc631cd150ee8e81cd3c4fc340d87cc7822b60d430a359cc08bf24f5d77dedef1b3e683380aa0e472977f674113dcec24c4c4a24d6a0934463c15cb67a8b79dcea3a67d096ea4fa3b352792a000eda0cd94545e819d8309275d572d8903c84c5be734c57f04c9328bbc496ed4d79e8ba5b95d13c7adebaa589921f223cb8de94100bfb303858723d5619d208627b97900566bc6e445ce5436763cd2feb37e2b8390ae824b62667f3a4039838d5eef9e46373841ba5122c37886b71411a78773b186d25194df13dc57a0fa561df01b2a43018846a2900e9e0e2c24a61b0792a81173edeba6532d69540b788759c8c7b340fc71816b06ca3cd2d772ebc487423792f2310a5752b63e64ac1099c2569e933a83f9d6d1e16f1fc305439abc34b8168725db8c62415b2d47deb0d9e1e330b92b637212d98fd60a6faca4f3740748a450c1ceffe67c578fc0a17484ca25eb0f69032a773c033b35a093214a3257cb77841465dd6478f57b119b0f6f93a5121903c03df84c4abe8826bb8c6282049cd5c3c4c49a34b2df84ffffe1f8c2b6c47e1f5925949ec6dfe64812ba8e8573d7edca748b28d60d63ae7deb6e8bfadb345080db87d1e4bde824636d72d0ed083cfece75048d49abd5b003ccb45c684d3b152974ff1ad9fde3cb1356deccfeab68761186a9d87111682bef3a438d39c37ed1119fd25e3428428dd264c131c34c597d694396af0cddbbd11ad90f431ba1ef223d225032b590dcbe326fc95aab57ca4e31155911c559f88e5939c45e158d0a6e535fadc1404859ef6be323baf2cf23cd8c962c73a2d1ad48f1f3a6bad9f2140cc05c5a79ccfdffdd3f9fe855499cfd64f0307a02365a7473b9510ae5e1d854586a52f288989be51096f368676715e12673b20af1233cd3bd177f0a1228b4a323b3fdbeeb4eb5429a087c17c1817dca9ad1f48410ddb6c27ed11d7cc6858c909202299ac28fe2be939ac2d0a7695cb9babd3025203a5b3b269c891603736915aee1eab4976f87e51c1ca1f8d734cbf4a70300d3e9aa275b844b82745afa163dff6f028a16e179266b59b9700b44627ba43c7141131d6522cf2a7ae62eb1de7fe9a8cf2a11a57634f3ca55da00ddfe11f1d913a5935adec3fb6f0255551a8b0a0de0e2d9dcb4568f5eaa2e2c07c9f32c322db1d78dccef719be27fecfd2dd3b34469fe732841c8d4b3d26a909119e05ae22471acd122b290ef45e2a0454541ef0436ee395363d252aba201a92a08b52b48b2d309a7fe2df59c9c5f4f541eef713b72daa285319e56b8bdd201f24de3024469266af0a5b42d62233e96e680b047a4412e6c3e63a0c94bcde2f3e89d4d1fc88d95c1a8559591edaf7285ba31ff8e8ad53cd397d64259ce2cafda2f2793d284de06b66807e2016dd8dfdaf02ebf8dde5c33f7cdd12e771cd3901f0412e3108014725c638d73141048a4ca1ca77b7b55555850977a8595e60835d045e595c43e4056399e6116ed90b2a59764bf9db4b92c6bd520b335907ad1e69e8b101afbb2ac61848e6242664f52d5c77f83e2ab2ccbecbe0b01743ea8529a663e7f69a43ca3c65c4cba8620ae3cf9a2bb133dd304dd789351390b787a4f3734c3443824c204509d4a7ef2c3dce39eb0924aba9d6891dfc08accedb223b28f61dc329679254060e33946bb9992e7afcacbba5ffd964e20a3d5daecb44a078084aaeff1278638c0a4f441c8436e4ce4ab8da79e589bbf9e0c75fdc52bac52b8a3c0f50aebe1c791323dfe13dccfb7f7056a2b7deb41c6356555263754aa76c1da0c7388a8b85230e9c98c4693b9605b2d89a3e5a027bf61596db056a489abb507438db5ff40d4a558e7d001d127f9eb2c59bd53a1ecf6f74f086048552ab851737aadd5a620eea59e9ae641ed5117086151e2ab121f45eed7d554a8d8de3af65910f9fa6565443604b376b32cef77f717c5e84c0e332eb28c4e8bda3a85d89cfc7e09b49c6e06c3b811341e11de1020b71e9cfed09412ee9028b92e30d94d7dce9efb744b88eb533ef723a21ecca93faaeb0a698fbc880ca7e9a38899ab7a46fe5bf15439fb7363df77e66bae918e33f299f7597985ce1aa1ba0e937869b6ea79990a79ab415c91c6970c2c0121095b0af09479c610c74e7b9087a6c8e3e8f4e6cf3b3c9625a2b0bd12b52889bf8c443fc02f9a1853775d243efee34dac8e16a9a5f78cb4b41f458eed66cadd1a0dc32f6ee5b5775902898d22ff0849b72c6220877fe2b409f0156a29d974f936248946ab5ec8fa67a2d9cc6a56889d3088241801e943479c60b633d4a1bafd5431bd697910400fa0198728e75d76acafb21e47a0fc547eee95333a32db340d26f2df2055a7f07d96e94c1b8f3631bd27ff954b524ff1fd226195ad40466bab07d5401303f94b5fa64c9590ea4a3091bd15da00abbbdf134306054ea18223249dfeb7f3370ffa099306367bb9eaa77a2093399a1b3df9f4162ca16cc66de27e9ebf0889f0ed8fc447dc5beb540271cce190ce7d56d6f2fd154871c051f6cddadc26c3ef0614a7c54a6c61d2b401915083780f6c26c3370bfabe301c35c3858dbe340a8e440a17efd831a8967cb5ef03ed80c0f344d753f7b7aad30b4180064de45ff3dea26e26b17e0ab7e6be68de17384a37ef41094098a375f03a9494f00299a072ea55236b6e8a3a5c8e37cbca374d54416405dfeb7ac4bfb309c63cfc5db30ca6e991706459949742bfa8f65afa102f0296cedc6fbe46c1f4dad9e29e02f687acfd207d9f8cd2d2d4ecb7024750968c7bb2a7fc13d36639b322d6c1db4e4510f7b329011eecae3bb04bc97e6e558c288971d9878128e33ff3948daeb262b6209f17565d511b205e950b4c1d624a0fc6be52d336bbd66ed021e4d04228d761f9e9e1fb077a85322e06fb92a21089e2f479f38b210504d83164a38aa708aaa2330c0d7e7851ee147f4ec77fa0f8d989825c1260c53f82820cf3a2102e868e40cea39115aa5273286da7266cc89d65901b618ef56ea62f6f94c73761fb228665413381729d521c4f023539fa00d60fbc2f40d759343b3c0915a4b55a7632689fd4f5ab7e06ac67fd5679c2b998a114ecad311fdbf987166bbb620b4113f44128cd1dad6147df9913652ebe62f8d1a11a5dd8fedf52b4cccccf36b6ad6265218dc2e562d94cd40383b709582091275364b7fee18362b94a089c905fe39e443b00e2537c7d7b5de5b7364fa7b697bcf1c07e2609fc904002413f2488fca6eded3cb9b936082622e5decf0226fa3828fffdc03477f4278e3d4e3f05194b32662f89ac4a5c2e12e623f94aac26b7ed08467c72e3b9056d350e619620534e8bf001df2f971053f11aebc84ed4d8a483f113b691c03b63f3a2c955ec36f469464960abb1849007e32f9376d6649318298ebb754e065a5cd9cca07904e05d62a7e245a13d6d730aa1f1437700948aa3a056631b92bc178be139392aa77243e425b9e2e53e04d1e37303795f5716ace69afd932e6cd41375426f9e797396f8f17d98e56a8a02f2c6e5e1bb626d815dd1a95c9891a1ce43ea92d34940ebb3161879499bf641fca95f7bfd44ccd10e110176d81285b92c8606cf6e666437d08d7ef83aff2006d09c473ddea2162c775eca51abfa9d1dafed977a68fc873a05b5507157fe66942b4bff47fe5b0597985418e9642beee3f4e3767f897c983bb3756270b0869e96522e60d9eb75ac78920bf695458f8ffc72dc52e232146e151378f745eb16262c9eb2b114976494d8e036633c8f28e39edf1755d3fdf8b2e5545c40805c109594656dcba3627ac7969cb46b9a38013b3f6a1545a2bc02f177c6adf0ba5dc0876fa9739f0c273f5eb90c9f33d1b97f02590215ddafc22e700404c76a846c632bc058561c316ed54eb5eb5c19c9209b8cbaf47bd0648b9facdd53a2826563613e2aa1142ecad9f21cd8f3f6e6f520d3fcd699501ec547dd506862a6a3374bdaad5740ef5a01bb34054c6f90826894ba248664eaa4bbe14efbdab3260dd32c4e17f65e2ab2985cc0db077b49e4a6a893ab926094d5bf254d469be735c517d8818980b07e60e5d7a7aa28d2029287c6017d87046db1a560b1561cd2778be3322248535b731c085506c70c5809463a11dd89b1d80432e5e34a2c6683d6a14f37bbc9cc492b2314058cfffefb1680df2dac3e6536eff1aae7b7015f464344778c6afa10d928462cdd64ae3c098fff36329e56d62cd90a1b764b6c4c3091d4b54ed9c5b02e917753e3b26430054a5821c4a6781f866c5d397b9f8339d354a667c2137a78b94577ff1921b1a73e25711f3006d6343520720cc52a67c502dc42a3801edc98612733b9ea63df01b15780526ec3f530c049b555dbd5cb6c935f140e6d6d7acb8863eb2f46238fc140e9293684d056c1ae6ccc60c9a06f5057130404abb56e6528658b05da3dd3612a8d26463139d7c534db0d3e9977587e65ad0c865e17d57194864eee63728a58ad44164fb272aaff35e738e00836a810d403fb1e3e74cdd6bea2237e8d56270a6ecd1376590cbbf263ca7c126c228d79413e4f6912f8a10af08bf70c7ef9d7bd9659368358ae5bdff1dba7c80857372b03a5eedb8d2bdc4d75f51cd7f73d8a5370a8149064135b2fa6504eb1463af79c95dbb9d0eb304e28804f70bc2e8d13b4a592cd41a333f9a463244ea6153a34df55f202be53bd41f5b3b97c59f57862b7b3b9f4e9346eaec8264e8c2fcc39bd45615a761670753f9644d5fdc8e270fd66773bbb3d204aa9c8cc21ca877b6342dae09f5f28e3c2c5845f97d587f41d7c763ca09bd11a5cd749925b74dbf16886d55103e027465b0c2118267a0ff7da30c83fece2426f1bd8d10799f7822447be18e00db2b7df381b11dd9a0a147593cc00b99474a78173a904bced905641f877f6d07b7813ed28b0a5dec0cdbae279e9a4e63d390e47751da4bc4cac344c4194e2554b98ae35db98c35733c406785dab71d6306cee4d6be94c9919051df6bf1eba33d1c996edac358a07a87b98413e2d5a6ecfa85d8d441dfccf3423b2ac019bc754a04f895455593b7043089aa4d583b09fc0cf1b4d4fcdd308e9c6525784f454706e043e37eb396ec5fed8312b67ae4d7a6d29f67ced9662b46426590c969f39403b746b0585bc212122ef8007c35f7ec94aff57c78f0cce0cbf249aa3898454b037ae4a9cb8483f4c43ef75b23f07e6181fd835e02eeef33ff4bdf4ae1e3b4666514434cb2c4a129a9fd9fa0a75b1304fd92534a32c91a4a57a89cc0f4789f68461995037221691007aaaff3a02d704c2b79971b0f621edac1f3425d21b276a17204fd592dbce68c384dc88ae98bfe6f717e4e8d506b66731da7c3906513c8710e3637b45021ff921cd8843ef6b0026be3b9afb1a7dbd15a85e930a533c186716eff2418191fec582bc08f0f74f822a808e0d369eeaca37d6970f6f01197ba244e1b13f92a887c188fc0a8b0295f236aa0453f5e606d38a79839e150640f0d1c240862a942707d4818988b576bd1aa2aeea9a9f0fcbed16e8ad2594f156ac4d1692c9de182b41c1c0fbe70712a794cfd0d212720a26c3d7260293ab7825e5ce2041661568195c9f0bfdfbf9ee46dd2d42c0450b7cfc6c4ba9be81d484ba2cf6f41c1dbea390657bfae38bb95a90208ce8d2b0b104d3fdf17d5dfdc1b615dc45b2eb0f636fd99e1d65d4da60eb7f6fa2c4cd55e797b628a6d4629b7ec69161f8204b86e9d5ae199ba5b14c65929a0797c5299467b8a9cd65db5880234b44f0aa10d4291d0dccde812b7572cc6d1ee1f6c2d8583086375ee008fedaac78a9169272bb214af425919c6302627c138afbaea2a3244128f0fc1fef4b24f8f6dfb40cb5f61d1ce03eb4a105c2220091d5ddc011c77656488473afc8a0154f045d4bcce04259518438a757fd22caae621d9479e07750ed1a25a78dda95894ea031b34976121e7427adc8b7bed186dea8934e6c6f264149e10e0245f6a25b6830b4d9c37405dc979d9498199ab03e3a7d8eb9ee620204448a0409fe379ef7775a66f69556306f0e57294c26d944f0b3647cd01225ded5bfa0e7eb9c6f17f491abdb61384732056c9caf389f0c260b40cf24bdcd9fa9b4cbaf56c6388a07a07ad84206be142908f3dd0b52d6f6f00e45085890d0a1bfb2b1518f63faa121b667d8807f93c294384f5be83cc9de208c7707be622795d055b68371d21fa87bfc847521e1ea7606de48bdd4dffa0044b1b9e8319c05121fe7a39b667b8b2d8e43f0f34c05041718d787b4d052ed06ef157742b3ce7c6414bd2eee1067419943e9f4af7ec1f90043af4429e52d6996ce36ebafde629d5b4a417e7f1fe636efdbe9773384c690c145b620aac3ac2ede40df9cf6ad8ac757ca46917959356b1382f06695aad24df2b50f7080cd719eca2845ef98cb800911a9634ca944cb7276a3e38da6f1e5db3091e6fa2e8aaac19d0b8e269e73ab950ec1342bfc9c48af495dde3d7c31d7bc53b9f0572263f16e58fe2f265ff42cd15577b8e2df6093c6936df3f79a188be270cca3492edad7ab9aaf9fb295f7c078efce07488accedd20ae50deb3f86a42b6198d02e173ea7a1a1cfa360183dafee47c0fcb3a30becd8ca25b34baab006e404de784ffb4b951e45685ad9d41617b4ab870652b72c0b73ab548e61237d590985d03872fdb9b11c3b4829a6a2b10268af10414d30372a3e878a107e446f659925ded82a178661985f1289cd5e07576f5f98e7958534677c7c0e279877048b83b32f2873a5637eda722761f13371ac840ef8ff21b728c4bc61f98751787e0be2413e038e720cccaad7d00ca39b1fceb5a60cb3e712ef67ffd5b9cf3b5859bcd3d296383aa3bb6c9f303faa9eab5029f6a17c1353af521e81b9aca789a1fed20fa57a23ace857d2796af53d6e7c3fbc87535074d986447e2fc8cac0cca078b0c923fa535ed1a7390186d58844acfe123074593573c149b2aa17e0c84190b368a12623d3df50dc9fa789688a7eacd2e6bb76ea30a4dcb7c001da0147ddc46d5cec472aa63e410b62a770a9b697b034b5f2a72014a1b980a234104b77c89f2e35f412cfed6a007962dd6172ed8bf5752f17e822d0bc92123408c08744f8f251dbb0a44bee0da4ba188bc19c3110eab1a39eec79184df6f433fee42ed882074ba5421172107ff65ff0b660b7cc47dd408ebc00941feb7a0858397482fa89b99ac6aed11db4138d95317adf724d38ecbe850929e0e606543223a47c7d87a428286c07a2972c3d42fd40177e8a9894bb37563ba24e443015b4c0f97b2654ddc5541a14f38f50512cf942329250becbe0d488cc68822abc479b87310fd692bdf2e6881236f261c2196b636e7071a63d4d957bf5c3f5f664b994a71190b5d452b84b37a72119a0b4c2acfc046342f0c9793d0b229ccebffc745c4d3080404bb3b5eceafcd1b5b53807e7f002345c4a400412ea896d6b44598a45c241ec0aeb1385173eed74ca803de4f0aa853d9702dd797d96b15d4e96f886cbf584e82e5ff8bc4e589a1207f7338c13cb035a4d98253412eccb482d897a373ac2b2ade97e4387f7ff8fc27d0072093a52670372504500f01e1760f26ab22d570c4ee765ba914d5a6a85017910e72be5bfca43b1826fd789e9a18766cc2e14d17c2fc1acdf359fe4310f2734da836fd1d21f5dc9ca4d0b435928970501b5b068ab849917a6a1326ffb73e6f737174cd6d0fb5ef5700f91151aef5370c6eff5cd7a1313c5ede8d4b542b7e3a7d5a0c1e23a81aab24573d0ab8573182e3e85967c39d72d308215396b0251d2667e48ed7482382b511bb399ff90623f778007a0a509e0cd2a20c556f4f17910c62b7346f68402f785d5a980ab10f908bb963557202df9a4547d733e0819cf656ca28b5554d4ac5dc24e263b82943ed1190f03bb71f89e1fd7953392d99735832e97884ade230644e79a566595c677add2277dd5d5d8210c8a74c666a03de026b65b86979a380238725b2fb4abe462dceea83aaa30c85b5591c058cc273cb862eaa6dc79273b8dd29fd4249f369a4a160f55fef4604d6dc8afc617498be78c8371c3ebea8bfbb126a70260b22aaef733a2c4406d0715ccbafd1b0b8f7ed05c2669df54c171122665337ff1de1091341b5e03cb648be20b62e0518f389795f1c52cf352542b94cfab262d5dbf1f396e5c2aaf785c4556fda44cdcb61cbc378a7256ef7d3fb0beb11ad4ba9da95c277b07f37643606a981ce11ee73694dd1e010552047cf4515fbe27cb32c2c6385bed16bac76024c9973d58715492abf37bad95132f53bf4ba8b30e945fe4dea26f84aa893393c7176ff589208203140044f90665a4b1b643cc48a30e88ddbf73e1e371c057d3f32b36ab76c194da5cff50d5938a54341158d8c3b9efc0217d39e37436e15a5a34a8ceb488b584c1e7ff8260d64cb305539fc43b8a38b114d39ff6f557bfef817151b5f161c99cf04300cfae740435c2f06b0132fcfb5d87b3972b4d258d6bfcea957304a7375f2dbc76528461dc6d7f83190254b441edc1ed34cf55ecfbafb82f996a925d0a744dbfd2bf5b457f2c7eb5652afd965304ec72010062efc42047c124832bfcf3209779b2f902714eaa9d78cba3232590ffddb42a0a275f27d571c84c798b1b6f4545fc6d5c60441c4be4475f8d83032f4e61b18313220db63d5c6732d9b3d21cde8b027e3ef782839eebb8455e9cd654a8c88eaa2bee8ba78afdb425f7612e6c2cfe3422e8f4d7142378327b6eed983184ee078523c51952970a090ec1a25f968271a8200da8f0dd83c04ee009c4589f5253d25adadb53477addecdc90f3785326378f5d20662689d1300039fd2594725f0967ec579d35c80a6043f86ebcbf24aec83cf9d6af508bea6ec8ff7eae4f503621ca0b4df6aca0fa7659a867b41a7f43ea4214c2a5e66bb5a4d4ad4fd9568f8f273870e40592184019b5ffaca48663deecc0bb04c2a4938bca0e44dde4ecfc935236925caf9a6ad89124c5c1711c4a96f44fa4c9e9b37fc19037ec88e426e431fa6c41fdb7ce462d62b9832ef6f3708b7239ad95bdb1a4a51aac099411752b10fc9f8dcb408ed480bd8db4c8c8b2075a7736863eaaf56d13e54753fb56f68ae1b0eebfee877dec1c1ee07e7cb78cd5191528910fed1662dcec6b442d0dc8cc440ddcfb442eaea04f5c8c203ec028d70c3a08af434430c65b103c4435b371f5b21a90e6b133cf9af766f3dffa768cc479ccdcfe796c430e57d2c66415db25beeba06abd0973a30e318c78f46c41e2414a181fdba7b386120f07efd97e6356dc7c59d7dcdf63502a2e6bea02f89ecaf9c724058985e51148d611a27e52576d31a80d6a298ee292f9314dbcc15781cb56e530968b97f2d63a61a4b1e7e83e9ec9f27b771f2bf558d4c9d8f9364001908e06bc017fac5eb2c0809274958b51fb864eb3570b2e4fc502cd94b75be4de60c5cefbe44d228565aeae000dac6630d57ca8e50bd2717ebe65a8c24db0afa21616cadb089086d4338689fd6f7cbd3db31caf7f64a8670ce27ab387d92cb16097113ade2892bf30951f7fb000ccffe93754b7b85ce5dd383555b235f7282ab4192d23fcc292134f166ea936f805c25e4898c92e8263deb654cfc13621800e4fb10aa0704b762f18d0c8c127b1bdf382ae34c6a77d28a81bbbc4b0695cfd04c1152771bb627a260de22ec13e8c217118fcb0819d52548fb6a0b0f807d4287df541dbf0d58278a87c71599e37d8dd850f96c6fa7905bdd69fbb73ea1769d64283ba7c58ce1759198c410058a2cdbac47ddd47aaaa723ba07e33b13d687a23a810c3f320d2088eb359e501707c5ca41012949fe441ab448a383bfe477712ebb0bd74b6381fba18199e020bf4351554a4686bfb22604dffd4a4a6b8fd287707efd0855ab117bbf0c10796b239ad0563821ca5ce586d906d9490acf625098255619ce46a4edd15467a8e938094e5115c147045905f22147e3d958cddddb649f57b8ab7e72f2ca05c8865372df9eef1db66456da0a3f92abbf32828fccb2334d0fa389940c33f0512d25d6578d3b8b6c603261eb1f827ff188a818954bb6531cb2ee67695347255739f72269f43214563480f7edbe33eaf123e51d633f81bde77ab4ad4aba5ddc8f7d94a05d0f0b1b376cbc737e3a7c0da618499cdc8133aac3ccb560df47d82bd9d0568a3aaf919737e3c8a21d39daa17e1e10e5acda8781723bed8f1abc99e965501a54111a86b149c0131cc474260fe9e307cbc4dc866e31adaa59697936d09ce5028f6c5680a83c197b9a4f345d8d72e3796475592653d60a9eb872a86a6df27376332605fbbd00579877348925921d0a823e9dd4b6bb808d27a05ea5e2907a65519272991eaf21d974e712b7e8f31d4fc7b4fcc6a80749d6c9caece894470966429a54ae69f7bbfa0c6788f31a45dd52279494768f9a405dbd6887fda1e447fe51190cf4114a0370813790a845b5ac222b8a8b154d04e03d5e26cb29bcb235d2bbe06bed4cf014c09d467ff258a4292b95de9b94bdb95a70f0cff4ce98503101b6340e589c508b51bb8bba87c500c11c1530439e4f3a8b6da1155b8d844a4ecfaf246a6c601e8c37437b5bd27171673ddee28190ebc7e21336681f643b878dd974f3715ef7c66c38ac8aeffe7d7d4e51576305972e57887cb95fb209354d684d049d3bb0fc2ad4d041443f734ba74a32b7a6d101ce485bc46c6ac43c03d9a0f603a73edd1454327b294151796370458317a9e2bbd3d4174a9ce8bf842dcb807f0c633586d739f827570b1278b4985cfbd00cb24711cec1957bec5f57beaad2e0685e6c7dd8da4134b50534362ae8114350101a8c0790445f1dfc23fa8b2ac13004672c048a8e9944e7d390a3f0f8567dde9bf896e3dddd7114a0105152ce477ea3aa3ab1464a7f5f280377c33484e394ce6e671ad9f67b5f78af8a8b79ed83dbdb9b627365a52a850b53aa0bb2cf471a3f76bc5da411391fbf74ef23d80c3e8b1e4850ebbd0c4f4375bbae02be64ecbf0bfd373ecd6b076967f301df858a3fb2c2684af6348c0fbaeefc30ddb95421e6b3a9d5dd240b14c48cbb8220a0f1b59f5a290e1238d451cf0e1a9eb9d01ec1cb5005c11eb1e2f1b70b0665a85100c52af35127c7bb7b9be9ca340a07afc809223cfefbf293272d01a7c58fca4d274626fa9a022bda20d580b02277aaf83ff335ee946197ef696bda29e747bd27d7c78bf4d9679ad97eaed95613844c02bf92ac4f93758bfbefa35138f9059b9ed8459196242d1f772e8c215bf77db98e5f2e1353b97e046b81b8cdccf29803e5da9dcb26575d010aea1649705a963345232afd56bde6a599a483d128fbd3365b62d63063546d7b31db9428905c1c8b9bb0114ec6c86d4346b78ff902adb812a5aaeced13ab1d38a1335160ac06f77ad54fc92422eaa438f74bd2b0e265515b9c40c5d8552a1f9ca8d5f96cf7a788319c2f9e3a3925c44619aa727c835f9b7b20bddbe72d610a85cf3b02a51fc72863ddc6660e41c1bf85cfa0cb54e2adfb20e34bc5b0ade80cb0c2bc977fdd2f44e8b19c1cdcc2badf9c752748724bfc9a44921bc793e52246b815d339b31c6e8a3d6b33971458af783cfbd7609843ce4ce70b896ec343192f3fee2253a3fb7fe7d5937665f392c1c88334a7f1569ce0ab4e16077e308a1109d4e9d6226f25e6412a1a2f670952c3aac85ae6a89ba1d4867f03cee4e3b7a56f14f1c897ab9ce6f97d2ae02150992e523ce31c122189fa851517f161a682193c4b22c1d0213f72842f94bd7e0abf1338ee69f99f09c6224193e9d6b4eaaa0840f9ad22b6014246ebcffbeb374bd8b1f12684e744cddea0e4f84fdcc57d3e8150032c66b367ef60f3b9512e932a358a61c661a7a45eb7090f9d5f0be4367a89136b426b23d2dbb84ab96d0a52c95f890975dcf2496e8d33f6b82630f78f430c3d5b49a13c5710dcf1c9f1c2437f1adec9088d33048588932897992f4500112c2c9b7d49de07b1581696f6773d576e12afeef132166fdb060088ea9950e37cbb403a5cd5216a8186a465757824a2bcd5b72ebcc15f3268cebaf7826b8729baaa1a36e5abaa06f8082cc915ba9d1aa35f4365b9e86e2cbb4806e42edce56a9d0a61a85c785b65de1e7f061abda47dab170216276b05e0032e2a022da1be05cd4d134c5139d07200233d25df301ed6d26f1e37defa5f11f6c06ce23776a02798134247cdddfb002b49a84b2d61ad74669e47850de234b72145f6d47edf92412f0c733b12c9225c96e04209b41088ba6f5174bad1edb14f03c6d156ef608addd97c4bd2160b59637d30605b11934a09d6c820d0cfd0070df258f854caf860995129311525a4f1174a1cd22b9c871c4e1574401deaa86861187fd0dcc25a1e6e495e5e355aab88a1700ed0367beb8f46654f88f7c61d4d9bf2a8300f7a282a9224671b25cfa5c7890cfce7dd5d81394cc8963a349b866f8e6191f349407dfb3af6961414fe31a23176cccd6777adf969710a1b3dcb5911a92517a37abcf5f5efe4290ce2ffc4be50a3da4258565c252ec124c7e8403157f0c0ba6352a24305bf59540866c573af075ba893bdbbf7ae12aea7ba1b66fb433f69c3727beb9aee2980780d7c6c6fef520a9cd2935ffaac54ccf338634252b0ddcd3d85f379cd80198cf621ccd8d6dbdce81967a0957ef97601ec75bb934cb91f08459e4376eb4cce4d27556c0c726c3a172e707e2ecfea991b898d17d08561062663c05a3de30508e5ef1000ddd929cd6ca0e9388ada74e04189d7a27822a625065544e614de25c577966125ce0443a1be907513e6eacc04bdf81b04e107ecd6f3217a0e3533939cdf4336c979cf8ef6afe9875068c0738c757f5b60aef005932cfe18e6f33da941568734b61c2a67246f2d3399fd4c879d526e5ac17442d66c6dae71f397fb7eefad153d8b8cad21ecce9a44f099b43319ccf83fff5f1095cce41d9291ee3aa243496c6d73a23d88c0f1c6255491bfbb29b945d205313de121a842d8e4b7fdd62b2e273d73d1f50a8a6701b3b672702832f03066a72f6811f3ff5477aa228e7224bc085ec4c255353926dd867c08a4b954b9693cde42b5a2498f3e6551a5a54b4095782d4dd36c460f16c661bd5d74e14205bbc2563cfe83f11c43712d8d8c13c0da6b4f2b83a299b007e6d9a8ce5b17bf86f822337f4a0a5eea24bcb19542069eece26d0b515a771f8923f51af1e40b933a29da5d0d1b6144beae417882433298a45e67c37cff63663575d625244112065d6e59efc53a22ef6b33e1976bfd095d188f3be710bb272db502d0c541049eb429173ca739716ea5dd0c305ffad0aafc483351f99848cecee768117aace2bee8543c2721f0349ac8b85a26a5c0c18bf2424e10b6af437620f20866f502ed44c3decbba7654e2a7ee1d93f94eec8fcae082571638e713a69eda696ca9ac5f3a11ffa2379f999cd1d491f2a2f2512b2dcd17ec46e6b6ba01e3096a36d6ac21e4a46dcb947d464dc321b38ac6cfcad0075332bd0344bc816d8e354cee07a96d7a6cabbcdcccf3167582417271cb5b5b51b767760e0fd920cf61eceb3e5a009778fc1cbc557ea580069f7aa49da60e03ac8740b7255a7c41e61a1c195436b034e460fe3725aa1c3c95d3681ed36900461d156be83d1032fe2b73e73dd241c8ba2f83906bdc560e30a18b8925b4867f1a18018faa44533b63fd29d2aba5b1bb4263af47fa099d4754c29c5d0532ac56c3a069e2951a74fab83afad683af5901fe1369ac9f0b0c0e02da740ffbb27bac6519a1b0de541db0a5d8eb6ebc962cabe1e79b12ad0ab8be11073710eb736e438bfe5582190abd2268de862ae9b8b3f1c527e88bbc4afa5df664ef6b8982d2dee3195598d903b572eaf1f5352dbfec62815272bddd27118aadc1004068853768b0f7815f9a403cb92b2d4d1694dd0e53f2f0191806aac64205ef2a3d9512de900d1ab29581636f58677c67a90ad9216479d6c667b424561c534d3155cfc6e3cb7e704f4b46639f6e3e406029e8783b74e3d56afd283bd9f63ed4d33e3ae80d4c9b723d229b197dcb29631a70a141bf99931d457a034012cc20d54ef8d4e63395b75bdea847289a99941856dd7964fe68f30cd5549bfb2ce17a5157a9f4b38cef676784bff265bbd7e5287d310d633fa05cf32efa8bd42311b188a5e0ff450ee8eedae49db46917a60b629c864132f6c78ecbe69799a08aa5080ebb6afcdd637781b22f545c2899ef62b1b19e7c56a73b631190076e7bd6c39f759b044dd9de18ac084932ca49e5efcaa2568a5d1e0125e4f915ed1069959fdae328f45f5cbc586f7200506f6173f06f06bcf5dce2ad9120ce203441aed5df7dada466bd46265397b15dc4d22d5d2b7076c5753b4557502461960b2e3464f0989da68e262f9ec205aa5aade07272647a74a27329975a8aa6b737a617bf867eebafc6062a9c0ac7049f5d4ff24ae7b59f330beaba3d7c35248f79c74a44997b6a8ae7c1e79230f2783482e033327fcfaf7862ab59d618e0ca3ae7ca7847010a1f450cd92248236a3123b589fe53176b9eca2c3264c9545479c6ce8366bd77303629eddfc6e27d027e1f5f2c7c62a43c7c130419c2d36939d3a5db769e91b0e14d973e78d3668fe15d831f725448d88eebc2eca035765dbae2bcc892a72b03192b6054f801498b331cac4c03fd35bdfa8697995223346056f29c3aca415d4d63a8b61560067f95cf1590d90b485da72462bccfc2c94b94d9c78eb064a84670e1597845a379a44f083355c6c59c58289229af9cb0909a0e8f4a379137ca33a05d17a429ff059ae3f3cd710625df6736c4885af82e94ea55dcc35fcf4fadf99ff52de411f6dbb1c1f9401c0a6ee54922a5fbff2def50a1e6c955e6b561b7fe5b30d77c790a7775c9e8a0093052b14488d8b7ee44d9789ff311e1366913597301bb5bb08d4034c5be59325013680c72bafb13a4464974d686ae5dcb2c6118044b8b9685faf0ea48ae8506255428582a3902a0f7462c902a756e9ae426e4b2498d449bfa5911c7a22207283c85c8903ea2288f5a96a12b05287fa89b7798015b6ae68294d5d50975b2b5c85134ca2655475d2c285b01edec2df4dde3050527b9f478b899fa26ad596edbc4cf70bc4646261e5a0a16d61189259be1c4276b081e0f180446712e4ef189eec1058448f8341711c7dca22902f6dce6c7df34bdaf69bb1c5e58c68a71cdbe5511e1aa93b34a003a3c60ff007df7f672fdb048212d937289dded1f6c459d3f900e0d5370a373243593063c8151042ed92c6d44ac43f4f9bc8a91ec0b649c10357e67131f2b683a67ff835a55ad187b73a0b18555914aad7a2a58c411b4e6fddd6bb2f49fe95db4433ec7df3b3e68f61fc18f6793137f1ae2a6582522597f7dad2f978daca5128f71c25d6d8bc662050a6760dd0b770074d7ae32e44e245399b73bd351ee0b68d4b94a957f273fbf44fd5bbebb5b71e4156ad6be75f5c613c7f5f2dcf4aaa6576a38e14ba3250ed48eddb189f0ca72d59501b0f78234a6d97d4eb8c843538f0aa928a3aeb22b501dda46c27b2de2ac84d52de1e014810c9d00e25d5269080b12cdb6f3936a0dbea44c6366d1d9fe154a415597f5f8376f3ef8e9ecc967fddc56b499bf1412942ab44484bd12bae5ae1da4ee70f0af67dffa54081a04e5a54e240fb7b7cd504770eb5d79b57f0207a15fbc66efcdcc59c3f66fc3efc903b69b04379890fedc9ab6446c8b858fddefa0de3d69553fdcca553a3f1115f271eac35526ec811c4f29c4734db23fbc92e9ecfcd196daceb265147a62fa531242f5fe56f1056eabd0d1266a9fe9c6c997d2b9194d625f40fe8d4cb0c4c86e833ac1cc0755da45e0878331dacf5b7607ede740affc4d62b2022e0ba538574d73ce4fa6426b2fc5ebd9f7b2878ae0f1c6729b423955cf6ba3148aaa77d2677efd010b0b53a47985c140fa054c40c0081412447a0e20fa1552c09657f960dec2839a9ebe09d9cc27e99662a1a800f33a16514c4afcbf7bd849f84191f519bc4722c8b73c6093eb5f28189413af1d9dbfd997fa30dc5b8cb3945403aaabcbb5fbe58f8f4d3c5b1a4abb868e251794a6c56b9b232a15344d5f075f6a7064c9dc93f33804a56bc93f20fa4646f4ffe854251018848d51f8e4421803b141a682b87831bdd1595ebc9933cfad01bb9b989145d149c3d2c5e9046cb79b874234fe722952fce9e21953dcaf2cc2ff6030b6f810ff6b893b6d391790dff47ff1616a6648bdd5f907270cc051344bc1fafbd9e661c7b2368d5de4f0d151a4dec171e97499fef8d5cc5cc317f7b6c649e82090caaa1a51c6c8f07fba50ab672538f63b21d1500b05fa68f62df19bfce4e69866819fe79a10f9d80ea18b724f9a711c250a23f28e5a265d2d894dda8ed0809104c211e12857be9efbad3d4cdd797f34c0773f6445f629335ab8bf909e56c5facbe49545023abcc664f624367d08cf9fd5e66556902adf364e4f6b6a8123149332ba73a8806af36d579668f5fe1b012a25c1e6a668d65d4ce5af612c9c18172b6552266a86d899003f05b84793f8e5724712333a96e71b3165272268f4df1eb4d15597effd806a016353b9c9b5f8e32675cea5a5581942543a3ea027fd6d9cb02b29915056370d1daeeecad8f6fba49f283927d30da7eb2d21864765a5701fe2dc560bf367ba1c77c4b8c36ba8ad186e49485d9ee0e6f9396d774844119c69e0c2191936f4ab5ae32f57eb8c03220cbd1bbe96aa0280595253b95f7c95f2c2c5edc68aed842e02ed9ab67a7b211831afa6a0be77372c2d63e9a52756d431db3e2b09cfdc75b6030929f0bb6f52163e9be3358ed1f1513856fcacf39e1e90e94ee40d3ebfa86a58965a5b900dd017bbe90cab84f4add15f40ebbd0328bfe0774e6990c81658514ab52fbd60d424e0f93e549e7fe68053211485c437200633e40bc1e7945da5cd86e85a6c0e7f5ee4db43fff2cbda28f1ec0c1265c2a501272c4afb1d7321b412de8077636b49f6914a748457698842a2fb39c24f14e942087c0f0071ce0a3df54198ab7a5e82755ce5b9fff84b510b84423c540bedc263981374cd1387286dab9c0271c079ad82f06e424b7cf129fc9a85390ee1de1f0e482e8eeff245cfbc7759ee34daa1f6f4ff074c9a68c33ab1fcd148a20793c6d8231a2e23ecd1fc108fb33c15d9410e284fb417879c8a65938e6b72219d3d499272c160adf86ba357935d91e374c0947826d0e7ea1f5cfc5696ac5a93a86681933095fec3f64f58e3cae35e321ff0dfe54cc899d4bfee2be7cc9a33052cfcf0cb17c8f87d99a8182286f7f8635eb2bdf410a1a7caac2e1a1d28b10ee5210ae6bf5f86b819875dab02cd24db6d906ac1dc9ab0459747ad311a274b65eb31c116f21f9c0c7253926b30f2a3ae5e4c83ff1e81a701163927558a2d6b6dece3341dfd8afd35455bd9d270a82d61c7b6ddc51a549bea9b0900edc132e04875eec042cdd0f2cd66ad785e0c0f7eaf41d9fc85a7c2f4d6325a849ff76d8f1e954fae9bb2d61df7e996384877197e3c59460772ee2752335299559493281541990c81e60ce8f04d9d870e9d49ee2a8e053fb50ac72139a29c721edae1b2b8722818caa0909e2b89bf2d8a39492dd359b5cf2814b0b0d211ced4a101430dfd52a7cf09b9923b320681a2b2e2631cdffaf0c5612693f74f63f3919f0ef1467a5761f78150049b7186b2a4715a6b411c1bdde1305e2d0d02f3d6db4e35a88f424953a2ae7b8a36bb4afc38ccd35b4f074970681efdac20aefc046007c57a1f3c65f0534dfd8dd49cc9547dd6414d82574c4560527db5a891b847ba404fd6518d0643aeefd904972cd35cc06cb7d30c6fc61e2c5443888427b531e9f821b3c9d621fc3d3ac33d6bfc9b6625a3b351b640901bc7347eaf3b777b1d6528c68c94a0278085c382dfdc4f1b083038a70ed99897e5fc173141cab5b00f4831e347e91c15afb181fc968ff2a528858cceeed38777f8b67dd5c74e49def83515f8e919ab3819e5faaba12cb219c4f4347de11c53f37267dbeb7f34d021c3d88c4d4895ef168cb309d12f637465763ffddda96749ea00424e29b2c41bc83028b947fb7d342892ef806c233ab7346655f9ecf4fe5ee1821d3a81f4a821223538b34126d5086516502f851155a9bb1f4fe4f41b0f56ee61cd6ef07173fbd45a19d290be843d2b1cdd674d79dfbb91c5797c47ef0b15140516713191c4b4a60bdd8202efb7275d7ea451ae8b8c35686c29ff12cc88f75c9a8719c18a63fd119c524974f3b255027c755bdb7ada59c132e5c3691f29836e35dd3b7658a13452d6c23e6ac6e6ae2f01fda8dd824b0e219ec1c2c58762027e89fdf9267e68e08b2528bb7c68b9914a5ab8d12c474112288e228095d5de86557dcc794bfad2d0e359fd769ef74e1f0a076ecc32c471c430c13be51ba9ad287d3b39202dbdd25f508d8816bdf380545d56d3b989fe9cefcdd63bb4cf619c968bd451e05badd78a999f8f98bb51b1394a31d5aa1e3d02fd2f955fe162f35e73fdba6bd921167f3978565bd7ce6eeb27470f4f03f78c4aff9029411c31ff62ab55444681110dead7cdf5f2ea199ce1911fd3b3da0987368dcf5ca02058fc6e4400c24021d43965102fba2461e91a4a2738ca58edf89be54ee5fbbd577ef0bd9046c43e4c445a44a44b61997befbf4a5c5c1f3580ee09f830b3cd2469a745ea854f7053062f136846623f35b482fef5a108c70eccf04a83ade654fdc951c13c21c69bbdab897dfef0a6c8a48520e388b530d5d45a5cc125bdf5c9e42d202af8b9aec26c319fa937ee97905f0763de350322788e28462c852a8bfdcdacf446cefb5623750e5995bb198d1268714c4e513a1576d7c931bf1b7ef89302c3527ea4b617bb9c6539d33bb83d115e3b63c7219d5a29f114fb3c6ccd7badaf0423d66bd7b8dbcb68d8cae6b054232a40092b9a076cdd369a5fe2b6f262aae069e94a2ca5c06025228cfc6d9b98bab16d458f272d06e03fa5fb789d7feb407f277d2b0ba625dfecb7dad4576cc3ae6c7d779e828a2309e6a844e0aff5a805463d1fd1ea7c90ddf49530d5ae0fa88e2a1e529f967b333db5da95cf205f298ec284632f4d37599724b1b49d10451c380527da8cd0560118afe7dd0ba26bebf572c45debd42ae38e0551eb268396adc0b013c515cdd6712710b19f0cacf32eb6d9354e1c4a571d5a0a5786491266ad3f1d163d4af819265db57d307fd24278e2c0c01e9660a4e6118465dc3a2a7e04e7198520d9bffd60c03368cc179aa906723965e5e052fc81450435ffe97d0e7754da52de7efa302ab74e8a61313594f7b05dc2e933e0db4c7287c399a69c5d2918a9e117942f816c1ae2743b1ab01365f75e0577f5b79b3230ae19b1bb40fab807780daa06adb3671b165c83470f8e26c9b0db0e6277680ee71cbc4ce720ab84304d211aa0347a1f10d625130cd90b404d7d6facd91ef8724c542e53eb6708826b220d86c20f7230bbeb20a9214dcb99c622104c55c5f03d4381b585f7efcd810c07b8ee8078975007ab424790d26cb31ae9ed39bd4cab7f82cb415448818acf47839c61d4046f24b7ae5cac792f99279c330daf4653c00eec190032a2e37f2848ff55b71fcb0b6397670609910ab71ee2f44a8693f4efed308e4de1698084864d6ee8702ab4050dbc13a49321d97d8fb2f153e5a78277b87a38ca32500861bd1a8893a309eb97290979fe57a7c399302763c942dee05293875363cc16ea2c41f320c93c5bb37b16be594f571ec22c6f21d0f72f8d6b230f38f698c1ac4ab1580f76bff4e784362cfac765d0ba485b3a27fd6d62f3e4aed6abad44fac782ecb6e7e899ecc157ae1fbfd8fde7b87dccd47e5fc234c81007e90f77e80f2c85cfb02824422acbf9b747423d1fa5546209a26e7884beba1211a17f4362cabdf4365a3408d1a5d2333b3bbaaad1b74009108cc8cb8143ee2d41c8edb6dbe645291334c4dd9c40d6618a1f0ffdd5dde6a8ca00e1eea616a7d0e2635b00a8ae448f0351ff021d5b1b661e2642a6e5907b09ec8b80b5f62e70f2bd0570b7ac852b3c7236c08246efcd90304dd485e8d8547f59e0cb0697da67c9af5aafc194713e719506b5ac11270cc75c3fd25ebb58591083588c18cd7a98fcf2acab6d4d162bba9b6a100192cf14681458a238cdaa74f7dac6be3e60ccdf87141ccdd2bdc13b0c8acce870961d6a3f9917dfc5a6612e886ee37bf468e4f6dc5b0aebf40093eb99c9a023060b4a95abae10a76d24b229a0d879deef4fef13fd42d9f2b24a59d7a3697882671a77afbcc326a2bee95c28d2a5ea8de157b96ffa5c162b80647312bb00b53548f3aa89a6ed5ee9cdd7bca0da29d011df3783156003cda342b5d9ce302e657c83ac30c6319e543ce9b6003c8dab9cb882f7d269152db61995f6dc878f2fef2f1c4336c4b88964e82aa310835106dcf03b49f0d0f5ba702d0c524a71f8eee82187bb3d68980b58c638147f8a28dba97b3b8d1f2f304eddd7b44b7b7e578780b6a7232079d89f6e881ed2662e82a8079d43ef71faabd7eb99342b067d3f1b234fb51dba68def50b90db40fee0e9fc6b7186a7eb3131e64cd10d9c810e40207d33554fa84653ce30afad1fe705fdc2c7b8f92225e2f4028e358bd9933c166c8097f838e30d4daf0b80522176ca3c5407a480f18e5f7e76b167e61cd8a91caa0d53bf3de9078d404c4ec72f37e11df13a099152ce598b42a433b80c00c8c7fd9f8988851520c066404edbbfcdfcf5cc33c25407d324eaacc06f7db3d9fc6910bdfe2d6715fd53b85d873ca72ff8622af468ef984151f282af7ce28a17ffaecbe3a6eca8bd4d16e81ba8f77ef8ca5153f175f9320360b4ec096c591dbf809937bf16cea7170c5d153fce6b89c64ff141acba5a050f4d64ba71a36f91455c6d2cf4dca90f816aad070dfaaefe9b70d97626e7b53b9512dada03a7b497ffec497987ad5109c7ad9c733ca14b71a8e881568691a1e80c92aac76f63f3f343875f49dbd439e32a01e8482c0177fd61150067edf7fa526e908bed6fe5f191eeb7c5d641217353b0dbba4225e64c383eafe7690386f6a550a018677fc92c9203d6f8c1e5ea1b5572a58b0740befb6e808b9f5096aba94a8c1dea3a16391050b394f942afc83ae56e092ee35d1f87e135c17f2d682faf635db7a016e2f0b0f2022f2e6d66aedacb214689bf41cf9f59109c1e83c592e9924bf4704b2d70f7ca0e3fc6dd228c5a9bcf260dd53b0ebca587e04434b5e5be0c619e1e90085d95b17d9a2727a09d41d609b95a1d0b639fec4ac926e0047512b46cae6af695900c49e0a3e6f39cd17ab83c48a82f33507ae809cc92b3cb0bdb804f889963388dfb564cfce44f7c53f81373fada4c643c779d60318cad485d655a5a161fb0e9778c4bbd0f1d91ebec1d79397fc0704c23dc5539e876c77091c9bc3ae2fe5af93ac3789a3384f1bd70947cc47ecbc10d0c10b33e846b135ca38decbf9caecdd63cb06e8e4b5a1f841914ea0d6a51854bbe6de31bfb5c313f2b06d9c53f32eb082cdc3a8d7b8b734ce36597d8e4dbbb1ba2e7d902b6f436799bbbf2d4fe0df3b886b61b80e292af8b3d9c00a79b1baa546f585a362d23192899c2cd12f016e04fadaab9c0150e62da8cb599cc2eb8f414bc7f5307462b483b7c43155669f839aadb22e08b11716078fa45cb42c372e5049bb8180fd939878c53396f7c38a0815d28b56ab442b21d8c8782156864c5385e61618dbc6fbdc6d7667dc07e2c7523b77e08e2cbbf37a07b0b40d46c07771f4d516470dcd0ecd9599d007239f3504161f2276919cb47ef55496dabd6f3d4cb57f9555b901ed78f716c3d740c02408bd10309802e371c8068bd85bd8efad0e011f02253cf703ec9617e27e6b0926ab7e415de1ef3a133303b3590f00a54583e45d350b5b6f90d4412c80d9a9e7b2011ea33a947f0da7bb5ee1f281c2b47108171dd2d1189cc0deeb59417678ad974976d8f136b03cb2581d52239fafbbe21020524247b15e0e820b7077269c1d81872b53c9034586efd849cc6d0cf54709b4f296a35f5faaec51cdbbc6267126dd49224266ed20e0889f7ba15ebe7ea1ef76518368bafaafaea3b51302ccbebffaf89dc4ac7a34936143cc3ba0ee20145b5c60323331bc40fd03b2a45865c4d927a422ec129da844f57b3c875b2089c61ed041f1783f2ff7680188260611a8dc8d24db37ea5271963e2f5247c5d915eec0c701b38ee9c9e8f088f216fe90e5205d403f57efccdf5d20cb317053f4b27e5dcbb36b6132f7c740dd96139d17edc11e9997e8daa45ed82e63a6dd72922c33a5dda25a3aec9ae4a0eef1ed16cf4c1c0ed9465d0abedc49b7254d83b68c3660fb20c46fa58bc5bda9cf46462b2b5a198ef97ca0ee1e4d4b0514113d79c1d31582b214f042e588121770aa34bd0c79dd100f29f8a3c150770f9106d6abb53a9f96cd42eb32dff65d58a522874693a9a7c7e98261f581a4ce1c5047010e4b5add7045320b2686a82a364e124be5d9781dd6c2c3ed5e0daab6cc212eb73c5b465be7ce96b485e7b5b83bb292475e25d4c5ec2cf754aa61a8e7f96c2e9ba4c4bf6b9b4ec3b0aee1095725ed63c16156ea0421242f9d2a57ade3909160b4bfc2c05de3148008e3783ef15667f5bb728c2de4695cb9013ab30285cf045a95af64571d2c2a8501fed0e034862701af31e12fac1585f83582cfca211e74cafc8f99db82ccccb185adb52b7210ee8309d80d6bb92fa0187337a7d3141c23de03514f6cfab4ea94c62c6325c368ea74b2f7b7f2d3e0446beddf77c3c72fa554bcfaab1b69c90ab200edb2328e12b285ec1754da3dcdd50c0b4175992de9c8184ae7e46c1c2f6f91954f41819995c92e779480929213170adb1d68e47587169ffb1c4f0bdba838e204e845552b999209270b1b296e1bd965a1a07f4386a146f091c02f9e1eb54011bb9805f4a17f75a42d4d055fc59b19b95dc617c1d28f820ba38a45b934dd6fc106e9168d0d5108e57302b647a0aeab6389f851c6e98c0689a5dc4caea6bff1106846e90b66bc24f42cc355eb51afa592650b8428de4aa902d8e557c5f2c813a38e2babe52bb8e425779929b2922a2d80ecd41c398ab7e78f3cbf99a8173900b6879ae8f298d70063a7c8078c9b6ca9da6bc065d037225ba409cd7e59286353e5e52e7bb15e355143b40b529de8663ccc67ea009b1d7d7dd6338d3dc30bfbe2f16671d64454629e0080b229d37c62fc83bf851901532395b8dd336069ea5bc6e188abd80eeffe4d88e5d38645b37119dc0b915e6bf4b2f6e4bb7e975e93920906f451301da0ff4c180a6953695875b324b2e24c030f8d80de9a5859500284aff289967e7ff012bed1c181a802e8530123cfe8101a57bfd5b30895759f62c76b21ed2b15dc568a02ffa72ee466ee51dbd07ae2055d64afcf7c2f4484d8945208818ab83af529583424ca4fb2b94ec3ae14b820f111fc0dde6f2d76f04fba8b6471921d65645c975f30c5a716f0474909502146725bf0c97286f960af50be5ee2258925ebb65b14c511e964377b27ea599ee687c415f64c4e8624cefe430d515d825ee613072113114581c3e92c9db5440993a02d74fe1b611eda4a514087a4aae17e4591116c145f05d9372372904d7db63809a1c88222cb6974190c178f2d99171fb3560e5b0fe1504799bd2f841a32eb5c33c793de5000d7a7d915f830042160b4c157abf80df83345acf50271b2bb818e82fd65c3d9344b09d09718645ad4914b8667802ab37fb7de24bc1d45190993e0b0cb0fabcce1ffbfb6f95cae69bb5739c6fee7a061bdfb264ce909acb58339a8aad50ff3ef416ac034aa1eff1f42f156543c642ec3c8ad7cde581a414dfddcf207d0d1d7adaeec949ab43144aded23da912f0a4780712b7a0193a63b0fda541f4d9a6bdcefed6e2c05512b1d352890aff438ae3357ef21aa0700ff9ddb05719527e1310bacd70fd18129a769b45ea56ef8915f9ebb81224ee8d40f8ae7696877a411b68c90faf04978c9da492f87d4b058cc6469d74f5a8a6426368c77429d09bab9447b0ff3d518b033d301480366c5cd63b8ab3da6009f3d256b17893240388d780f4fa46ad6053da518d7c57be2514b7b96883d9ece265bd6f3db744f6d55cf11e4f117e90fe185af74dc305ee4787b74186f38bee6cbd7b8982b8718768aa3cbe5807a2f7dfd77ca7ca38bbfc455ad3d3a2b263240c2e24809697c22fa5b0e289bcf26bdd7d6bed670b70949d3a88dd12f1229d4ae0bbfbd02cddf73dc049663ae95a7f54d46742610c65512f3defae22c118c76a1a82c81c5f2b5f0a8c0822ae4888c4c0e215b468a37e287d4c18a163965456b60ae317bd2ced18f87a93dcf09b436a4e8382bb8177ec10961027ccb25c49f7b6dbe2fd63627ee3fff07f9747ad7b88c7b41d681d4999b8cd092cee89b79f1fc1c0044d82f7a0e4784435ef836ce51081402c39d8b3f87ff3120ced330d989931412e1bd378d858246349fbabf79122ee90c8ff7172618f1a4aa5e7634950c6897942057561c6e064134bca7ecf27f3beb49f2f97191ada6a15c6fd29ba0f5c0e3798a974358d82f180bf9ebaefcbba249e0a374e5abf934f5d768317f6ca82f7ab728a64ced760182c75a44a5a94689046f96080bb5ab1b26d54a8e7516f89f7dbd661bda9c7247f5e618465cdf7149a74e62fc09e89302f1b181581fb440070c572c327dec443b4f5d5666c349831c4cfa5e5841d4c068d44cb5a88b01e95714ddba6a3fb1da1c4d67e92ce975c64d4175f4861e40c68093ce7cce37b1fde14d205b28aeb64800a4460f6f1fef7f374a58427b0bbdc31c1052677da084fd072545159cfa4629b475b3dc9dcf9705795cb0d67a82477152b150d4c56db9383e4b28ca16985aeb0ed014e76cf1008c656dda5947c6e97dfa12980d6140b0601e0445ebcb97042913dbba5a279f1e60d4ef5190a212c8dec030603852464ce1f812e2083e9de840a0d7424dd58e4cdc8b8ea41877ee5711c301b5e2ace9339ede13914ae89316d49dcf49c8293aeec5918554f3f61025037731788c69e44f34d740bb71ffdb2a82dd36c21d5b1b1bab224f1c684da551d7023012112fe148ec4b608537eb4bbce635d1b015d9ab3e7c0438c5a78a671bb6bfb47d3e9c1d6296f417b829ae3cb07cfa792849589cbb25f3ebdb0246c8b01780d2590570b1f0cedec5ee32ce11c772432fab171c4a159ae8cf9bbce781a15a777471855a09bef30f3ba0a009e1e7ce4958a5440a3613e86e300652094ed6015a749becf6b694b5ace12263e2505032ac5567d29e431c3b67082ee6c6e227c19e56775a12f0775a923b4833955e6341af5ffbcfc810cffd5fdc2ad472fb7ece5541b0086ee678eb567850e09b611ea45071b345c2b09ad2a8a1feda583d5cfdb7e23eddfc5aa3f74a338d5e0a6c9d78fc9a9c774863e7d389c09f46e5ac504c63221670955b8f4d051a0c0db2106d01e2680dc0544736c4382d97b94d85efcd4b050406ac528ca49fcea31a2f3df43e3539a6924ef40b9cd0bc88078a24f910e4a61f54074b3beb676c5e6814f19e735b22fac532e73939bfb753f14f8308be1e808d93cddf2c1a91cccef28ff21ded99d2c0adbd2079158e47841fd817547d5bd6e0464cf9e903174233d2642600f3778b1b9f01dfe9840463ee9b78735f60fea423c6c2c7eed673060eabc1dad53e9fbeb3d9ed90aa5b3d03dd10d3d3e4f7eb83739c31551fecf53e2c216477563f05c447b3d1c189c441fe4a6066834629ce142710bbfdcc5ce862ae9e2ba387a8c528079ce1f8002149f310362ddb11ad7e5470c032d09ec301d2bc9b1b3694231a2452a17b928c24d8a9827c6f9f33283e44f2cf965e5948f05011637fad5b0420a14f54de4891f4df0ca9802c2168b6c4b1d4ad2b34a969f3aa074c39292d7694235f401714b037ba487020cd207428ed27010cbacdbef0960b855401ade84706d1afe24d67ac6b660f63a74566584810413ea6e3a0621fe9007ba455f0994fc87ef79f36935f06397c0d58766c2b3b24134d9b06d54bb616526199964661e340731412daa7a62c452c1336c456fcdbbb2077d3c36583339c5cadc2a984d0f71e9e14cbf196842d120ab405864664e79c3478865facb2d877003ed17c89df32fc427b3b42f479439b7a3a3e9566750e49361411cab64da8d3226ac5893748ded9165f5436d35a453c9b661ac7e0746a94e2b5872f66b041a4c821bc49ec9ecff1f3609ba6cf17fb87dcf91be4edb2e8f8572bf761fc98ea3f8fcf67060fefb0c1068c6464ac5db9e08b2f725d2250228c93f00f7c5bde263645b6c1506201a42ea0f09934e135ffcb857c58b351658d5971ff79361e622d9b69f2311ee4eacecbcf4b05e3e70a427e337b12866a9c77ae218ae24d929d691ee0ef9e9dfe07a0723d63ca6bab9aeb723cf20980c9cde1b594c2957b60ff6ae6f8fd415efea62dc3690cbffabd792a1c7c793a59c2fe22d99540c9df72e84c3364abee026f0e2437008c9348238b9078629c4f47401a76d0810c7473e150a74051ae04d86645c10fe1c9b29d02fd04a8c9d0c8a5e3a37231b4d666450d7dbf04ee3d7c0f8fe2274880d361b8260023feeb4fc10262fdd016f50b81068e6ec0be419e202fd85a8fe230ba0c2003f2e385c92b8644f0450baa433535133ec1f2b88734a0b396dba8a257046f3e71fabc34f86610e712ea8fe7c166312ab6d3ba0b7f5f79ab06708e00a41c54a89a5d5bc283c5692170d007ae169e020d95f4719a021cc9ce0ca8584c4d7e91c5ce0adcd7a99b3d8ce649ade53401b018c19a93577cadfaccfe0f18de46241d11fdde6c14169565c9f6c129e8d41bc4c2ec2f6cd853cc4e96d2154b61cb4afecf0e74a4a24dd57957e2bfac373308e94b488667aaf2bbbf5dd35dfa95764b1638f2c99013268df23c87dea184e1f7e9da23a8e1e61ea4eb71c44d5df95ddfc7ae573d2d7c1bbeedb67cbe3d0af5d0e0b4f5c43011edf8d261394313868e99a44c35a2256b1f75c94e5073c9de05c4ded3cfac8ae54aefe35aca512e1c14c32635cae1a252647dafb4398b6b80a5e116d553528b7bd26feef260ed6faa0d75bc5e749dcce51bc5b7e236ef0de5613bd55059038be8b29d0b67e84a4a42710e85dacf6637049e7879137b6c8a3fe717918aafc564647bb32360c6c280a7e9982bba8f528a4728015ed280ccca7431af917d217bd7381682c3ea4459ffe896f0282835a410d9ecd1b5e38fdd3fc6a3e29288a9d74b6e1edaa7626ebb9aef1778bccd9783c12ebee67f163907511f717920e87b7fe53e09497d22d60743cd98833ea941da8e6b2c57ae9725450dba23da1a40fb58f760f952aed6112a594e78ba104eb4afeb1f1ee713700a666293d53c5af7186421affc000e40c6b0914ea08e29c0b8bd69c6db466f13741ecd2290d4d2df897188a3fcdb083756584a1af2434983104c89157ecd3f0f37a1d5f703ed360717938b25bf548d4a387ea3fef745abd198d83147486887ea89431be98261074fb1457314d1d562f0225595aba51ce29b0110d553692e3f4b80c8e902f673f2c8f7b81e12cec592748db02acf980021eac3c60925685b345dde0721a8d0217bee0744fe280bb6ed5360abd4ba8224755419f753d74ac1da4e4aa8885502e6683641e65de4e21647901047ec542f16212e95257aecdcfaa89d26c3508055e5f518973ca8e5da1f7d32d95ae515b63037d158f69ea603c1c8ad24e3c4bea7398b7a8fad6b55f524f4a3f6acd7d5d1c14c7a190c83fa7e378e8100b6017974fce4d0e35728aace35628e6af411fcbbfa7e9762ee19699c0442a9026b5f6ff55ddfd2d7d16de879bb74134f283c8e5ed6215fa3c6d1493996cac54c4fa7096361014fa98224383636c892a068997c1f70f05d7868ffdd17fe398b6b9470b490ba3fd7c86b10f82f33932d9d519529c225080afa40e7e582c77f26149c85e1102453b014781dc263d5ada3b7b84e1f855f7ebe5f102c7176f3c2ec0d736029d692392a9f97232eb2f60a36c1172e006c13d34f5050353c9995e8013f20b990114bc814e80238c0b4a18c2ced610ab2da722b7a02f8efdce48a6299c066b91d5515f82503cac70a87b5b97013327fbed159d23559dca8d349fb1a793ab49a482372ff64bd3d5ff5996e11bab865b50556781acf9a9c112fb4c8cc8b253eb325818d0208367da78b7103881e568d9efcc0f00b23edc1acc1ccd7daf66f13ccd6624bc7da110a826dd0b650e7e2bafe4c3863d9a6e57c1f845831cdc0af7a0a0e9317c8a8146244b6f2156839e69de1846974e6af925bc36d77a24ee164ab3822c59792bacba026c7e75e8bcb57ab6a91fdd44321011c131afc78dc5d2984d7d9434eeb079b4535da92fa452743b0fcb0f495ce7605495d2f01956fb7a2028adc95374969c0b50b6e95cd36fbbf4a25c889aa036a05377ffe0d6d12605f6915eb76b31956428e773f35ca399a54996cdcaf54896438b7a8e7399c743136a42eba41983b0db80405036558c566fc5d9fc8b3e0eb42c363b87d7412a56d04c0d955d1107d45e6b91d5436ef66e3b19c846b690cde65cbe23272282b2e2a4c2500a192f6b15bfb20b791d04cb69992aaef854df1bbccf886b9c936d2021ec5d9601d508bf754421d6453de78326b761a6e98508ab6c064c8f7392e03651dee19f18e93779fa738fea1ecaf138f215222ed9607b8bccfbd48dd7904a0fe46dc4711517014fd813077efe35ab37162e31c3e6e270c816d3a8c475c9d28f946cff68df2725af5bb872404138920d5362fa3038540f0893cb23afb9840cefea63cf372541112865e5ea5541112ccf959d0b4da94cf6d2008ba7b2f6e88a00ebe90c5b7c776189db95af4093e97678c9b5e5415afd7436a76ec2b840524eaf93b79de5115c2ce22bbf54c41d1ab5f1d56cc67e73b74e2adfb736eb1e5cc131c6951f2e230a5e2fa19f5fae1a5ec5cc1b37cfc3580e58a12d6e1448a9666107a755429d72d62e0abb8d6ac8abb7a4f8357da54f37cafb4fdbfbe2115dd9aa52eb8402e08ccf2ceb80bdf258caebed3a3dd4dd8e294409914edf9003fd5a749d67d14ae0e43d6f2700b47a8c67519e9850cc903ba08d246b85cb238279ed80ab68e545e2dda729cfaa7c986aacf2ad3ede17efc4a57fa4f506067d6798ed0f4b211bdb9c0246115a341a7ccd7aab72d290a6c1969e14c78e948d7ecc6b01045e3bdd7661a85c3a5350315a22813790fd88100f70027eb7e02ceda1156a909131d5e4137c6a4759e338e72aeca9e61d37735077e9307308f88ec92528b1b248fa0e9078ffecd25e516752ced4f4b99d66ebae2fd7acab8a3a7799fcfdcd8343478403f3adcfbd15f5d7494df244967e76f7a0347491c01ccf116a7e579875a652183e1a095a080a242d6865e1b118bd1a8d8f4034edecf2d3906efbed43c3dd37a8fd8b6ff9fc13c03e39d4864908e036d008e66dc05ac84be6c93429ba915bb5fdc84b7f1b69532fb64d60afea53d97f0184b1e7b2b0ff9aa94a9f0b38eed4166b829548c7f9536063a3c361fc69631e544147da0ae50eeef74f38026336d10386ba3ff87bf32ad052b748fa78ad1dbc6c42010d1ec7f89cf5f9baa37e83faecfa4817f29dc74dcd06eba600b5d015f6396e06803633c2839de6855021703aad2769db5b2a006fecb4160bee4c1668b72b2955eac9bf9f36a2cbe21a5c7e27ab5de77f4affa3133f4a2a0237c3edcf60feab1ad898e909056dde2c5e784c0a3c1c853772ada426dce2de71cda9dc8863cea2f9b4d7fbe785f4c1864684cad1c6d467b7a62609145cddc6e75be52a11528a71165291ee1502439b638d4d9ad90a14604b80778033e5aacb74a5433469cf82df8eab9190f4ca4542ccd98e3fa486bd29c78b1e2025467dc3e28c855e423f958abd677b184550ec3bf4256b91f75cc9450dc52030174f0354b4423ce0b07b3955589b0ed5559ccaa22f9c37db7c1ab6663eb6d19a5f1706d762334aa8095d9fb286071cb792f5a108a2ba98bac5e116c96932bd513db3bb28c5d3394a3a43bdf5615056e30172dcd47dc29ed9673ae487a65636243a9979aa566d98ad08d5bee910dba235bce86f1765ea91cb5681231cf2c1338c6d8e87e417d5a417ac68fcd4c64ca023dcd7af93b67ace198db88a3c454da3772e9571bcfb7cabe3fe713fdcda16fd81ac209547afe8fba543228ea60108c9cd2f0911eeac26c64f242565d1589cb3fe8592707c03ec0437b7ad6233f57bdacd3b9b8decb2410dd7546ae708fb3e5de04b477eff50ac41059b5c0328da7e1ef81bfaf2d492a1df4badeddc08853a2dd49ca8e50a480aae3bde9603793280fe15688275174e8f0d7be5572c226b89adc393295951d9002fa7ff2c676fbe381968172d5cdf46c0edc76bba6f16bb5ad1b4a3bb871f3ccb70ccd24f5f4496fafb0471a7b7a0dbb42432e73c8b28c7880f601e3d6c4f8a0c9c5b47d88dd616b1230014649ab1e8da5978abb9aff29f5c8193d2ba2526556f7e6ff7f3509a94c6503e30ddfbbb41fddf92ffd681fb0859f2d0cd096a65282f60f7ed4652c9c9f265b94d083fc1c638a4da8643d6329342d47612838fdaf6c5faa441c3c3b76dd144cb47e3c03b6591a23a8dd8e8caafc83757149109a42c953708a9d056e48477d44a50b2911d67f318e56e258b24588f0ccf2a4ce7909a3095d4c726f83ea6a186d02dba738507d320b58e741ecaba283b853b2d768f892c9aa3524bb1e8531117925285eb3f572e7b7035e4962e1714b7424d95ac5236f47e07268922520d80cd566d2b1d7f5d78ff2e0e5e88ea209fe33bd0f4663b04fe24232369af0baa00c1a11cc12ba3b95265cf4fab09d8eadf1f0e9d9011a54fa45620ba7ed439d5c5cb834724cf89a34c6b069324734ceebc7edee29b64d2dccabe0d00f3e3db75cca9e61f150f69a1757d2c84be6eeec16660bc472f183f98b460f63cef7162a9e89cd41f07b8f8be5f0cfce7d71937a44d0dd55800e99bdc0d3a52db3892a9deea075b6d6cf16ff7ba700352b9c83049fe71ef9dac106c2049815a54f703d82f016cbd0e6c2dbe5a67b93564304811847a4c90b17d4f3de5bd5fbc27cfd1a83e9c21846b561664a13a84e0d773e9abc1241a469eca5f456836e7aa897031c02d1de99e59a58ab502ecdfe5b138856a0b4176644d299d377466e3f70e484ae2e9bb0ea00c4230c7ca079d78e055919141aaa532767f8aa14d03ed9370eedaac3af70a6530f18e3d85bdb88847cb53a9a6f4aeca23d8bb5d189eb86c53093070d2002bb14085b99b6659d74bec889b5eac77d95519526c9b0be013e446315bd96f11c2d1137ba5188aa3c9d2cc15e565bb133faac0f54c61fb95892b86b172d7f2b978ea0b7be471b4c21a11921009e97aa94073ea838690592738f0e25d8a4a56bfd6bc07df368c5d66831028fcb5add55b0e910b175f8b8c075e88d7410f05e722779c3dbc5d9be15d02d96b75eae50f1bb87b52378af79e6cc42364840aaab4e7d4121863ea8b765d0c322239ac085b2d0ea9aa0990e35708382206ed3108859eea6062f357759510dae985e0fd434349bb2ac46c8a15ebc3e5efdf71b8871c862cfc01ef2ff64aaadb8e8ddcae7451ee4ceabacb2c7abbf23e87dcdb4d836148d1e36507ac90abc9a5531d4818a30bbdf4db08ead14b3e1843f4ac1f621f9eeb521a31d961a9eaba8bff7106fbc58708d5e9aa2dce0f3472ab2b84d1f1f280b09d6a396fae9928d4e1c6b8aa2249ec88c69fb5a1aae9a2e00dbc2ca9dde1774bb8fc369c63bff8673bb9f79a130b129191b62bd316f0f653863c039f431c8fdfbba16c5841df908e8b06eeb43c485a8a029bc21af3deffe751f15fb0f5f095e153ac271eee35b9741adca44ed3a1b27222dad964456a656506c4a3968e9fcd4d237a5e58923a61477576a881a1d938ac6fc8e3539c57dae31baf068ebb5489695add1243c808477b2f237091be045a8dafb89e47b8bd0837927aa4e7475ea22e1ae84fa3d5cc3a4a7ee4aa08ca366a04154f4afcf49f6caf4b87a0e4f9e35d8bcaed3a62e42d1811fd3825d1ee2fe81d323d4af70667f2125a92b22bcd3af537919a59b0ca0faf8e3ec25d0defe5f8819a8b1785933672cd4f02bf217d6dca7185494d2beaccd8eceadb564ebf9fcc49416fc24fd843a05c53d6bd76469b01361d322c15a94b23e5422e16369e3f32fde5cb9cb8b1b1047726302d5a0c5b256c7d90189ce07e1e2bd3557dc8b10022ae53105eda977cdcc2a0a76b21bef0bfd8de8928a8b3836b8ed57ddf2e13da86375570aeeaf4668c4d233b1c2b4bd85e7bb996523bae991888745982fb951aaa1a3724a3bb6742d192fea4de14d1d62d4b768229719e6ff371fec0b9763be078186f91d969642d61cec51276b137545b347e772ee8e0474c7204d3bc26cc007a6b33df52798bb90b6046f185014014f7b2d87a1bf274cd41777d482a8ac04f423e94f498b9d16b365fd4ef28d28b6d6bbb068322981198652e3a860a9c85470a1d2d440a31bf6c792a08c451fcba036d4029836e64a16dfe91fd227095673b6a7daf20f9a30057e7c8e56ace9d2936b6f335395b5b678e3ecc2345824f373393ce6320ffe804e6e70b70d22d8fcf83718ac0123324e37ae00ccbfe3f1c18c895826fdf72819ff2a367d9d507c8f66c876520366bc516e1df92d93d1c40ac6c532c2d0a15bdf86806fb50ba8e90ce53511966aa11e8ec0666a1a97907e0aa3457e269aa247d7561f7b5264e37647385da3e87561576cff4152d97502682afa92856ec9d3a079ee4884f7b54a5111b4fcb2b6ed92b58ed864314b8e35527bd6693c099947b0023ea0951277c2a40ad49830d89de45a6db9de9bef0ae8440369374b3477588ce9f380d47a1daa38bf12588bf42315f4ff686b0ccbddb6e8ac2d4a6c6a290ad0ad6f2630c941abee54d71cec56b3d4a977733c9f4948e1f4015083e4f63f6bdd8a256736d64ac3374030dd59cf55d485b7bcfeee863807911ffa2066633cf5fd32a13366d939069404a9c6b5445bf16b30f2a464cafff5f0ecd34918b746df22f0958b941a52d11127ff74ff1cb321886992c2a6ee3b997a5173ee295e131cb8c34202575dfed8a214cdb0fbe926d61dd70b7fa144844cd302106f4e74ac04ab0caf39ce1085f7fed1fe0e074771e1c9d28676276c2fbd7d27b2a2435d685f12c915a6fb67acb143850801bc34b986f5f1c4cc5874ab3028108cbb2936638ead56ec87f5fbda501ba9530797706552e6ccd47c1288e28803f6a97ab3f3cbdb88a002eba3313f578281a83fbc3661520f7d84cdef5be2d0ffe1ce0d824389c061934d09b8cca64f1c814b8b8233f5e661d83f61d2cf572f84d8a2a4d07f233bedde621490bc09a06ed9a4d91568346440ac0e294e62f8e118d3851d496bbf31a84b4e31c0032cfe8735eef58031af02bbe8d936284738d06408b812a4afb5820b4f066b8003767007b4edc128ee9da27a1fde35e0bfc333fb52b5e7d3fb823cd27d5864c2a9516d125b5f3c921f27e14a99ba6fd7cbbf8956055a851e1ae0105f1507d43db5048f8e2e0fafc760523242f4345e8f5b3000333194d7a893593f219d3787af47d5a50bd8fa35c4f19c85a59cb8d36546d5b597bbd223076a686a46842572cbebed3a9fdaf4215dadbf766947afcaa165e8ae849698bcc650703755d5718d38d4d500deab48c2fc426dc4639b2d776e6f8f5760e9b46d06a19b57f62a8620b37964c90eeeb783faf9f17444dae439add9162ec327f70ab6fad5208e864b946d865c4af9edb280ec79b550d11c3557e6d84196770bbc00973d22c5026726e96c4e82dcb7ef8508749a4b60206d604b06900739fb313fd37c89471b9d59a2bae8292284c8cbc6d34524fe22712777ef66affe4fc47611da62aaf9994d2c3f84b4bdd3cc92d5e429af6bd52401527f2d9f7cfe763b778b2965a2b0e2028ee381559591ee2f4081f45b1a6ac4cc6e56a3bd4f2642980efc606b43df4d6666adac437ffe69ffc10d02d1c8a5d0d5e4a12d63d7d9aed9f67268b15ea55b39dfa4138f77724068eae10fa110c4f0b97b43a0e763138f6cdf0d4c2f738b1d10c5698729960f9558beebdb5bb8adb56074ee8bbecedc339cd8c9af4566e4f52984573c6d05c9ec828604b852ce2fe41a2be3ed4e963100486a8a1a516421e86d314f307c4f5d2fd51f822588a78bd44ba0f18af1ecbb0542b800a78e3244f3ba720afdb805d2a762aee0d24fb08996fff689dedc081aa506f74e40921446d9ec46645d7c788ac30d84ad565c0788d4581b9749eb431e2eb3ca05d0d01f0fe10574b5b79dad00a356f069e7b32cf011506060cc991a38059a42f141f1f6096d972d9fdf5764a1bed1ef4ae1874c6700362fd7ae9c9685e7618e6199f2097a6d1c637e6ba39e9e1d0c8216584c4ac1c1031a5825e31994c9d0700d21a48d63943504271a7d3e7a790246dc26638e3b51bd44734cc814c16984fb500f0e09ff24aa14399c23365d6f116cf7a48ab09e145c66b1bee080f00369e2f64c5e31d212323dfac9e3f40c68514a303c118e0e25b94920b02e9dd418954fcd7d1808d623df34f9a39608e78e6d41bdd19dfd3ff4159240909ef4d332ea271c7700d653494dcd943498d4dde18aec1742467aec45bf6fe1e3ed30d1a76d3d5eb3b99ee17498fd8e3e9cbe51202261ba71195341034dcb9f736834b9f6b616267f5f529c336bcc46eca6a185926d3bf6ec4d02a6e49ee6f2a5b22e0f871498582d4a6ba7b234d557d11f4259d4b90728e562c2b824fce9d64af3fc3a00d3e6f6324620ae8eb100ef760ab3087a685891e96f431a861e5d5bde33a7a81202cfd979dfb9cb9f93f64293bbb8460580fb056cbb2a2012015aadecca0976932f41549836c4e2d00f5d35a005e5d356bef6e8aa0fbd89b0aaf2561f671a70ed163e717e9d9d7467c9a57206a5d435794647a54db1772e442e40776e37eae2512537a6310694e1bd2f9ea0a8bff22c81b1d63699da484dc62c41fd8467fe3641c6797360ba5ca9fbd90b46ac1173122f8b05f35df4dfe2d09f4fe775e19254bee925795405baaf2f8a879dd338ee85bfa40dfdfddf84c6015b73711e6a611ee39bec7d20c4b849cb31becd890e573e3daa401a954822b6341370eb8502a512f3d720bc0988a1a8e25e8a927646d3ecb97b8000d2cfd61523589ef3788c5deab4324aae0c0bfa8706a61f198e6553e8560dc6ea28bccde066cbda3149a8df8665b12d37d9e03b84bc75c147af76749d1f10a2acdee3a3fe042ada7e680cce1eddfe2c256be304e015c09d1afb0e03891ffe5f2e72053046257bfb5038d9b5117f515eb584d432960a5626997339cb74000917d1d609d5b501e311cea1d33cd231e7025cc91ff4a42d0e3d8fb7d1c2bad73c125d01bd568c11422656d3b15a35616a98eca10285a44bc8fd4a461e1e79e46acff525e65d3bd1743c7ffcefaf003e60234cd2198cb2a00346b8a5ad6eb46b4d9584db238e5a5211dfd4674552bf51ca8ec3df10e2c645362e33587310508e71b8612c7cf6c993456f634b20ef30b864a4b1eee4aaef51f2719d3406ab908e4c7f0d3dcba53cb1687a636325253ae74e17a6403423500975eae470eea8d72e75fe67e1f73cc523b2fecb047832395e0aca55caec26875e002f3bd7df34614eb5e1e46b9bcd9926d127bf7a7d6fecce1ada806fdcae70b9b96305f062a5982391c943adcd2880d5aca03a5baf638af4ee912df34360d423555129d2914c21f8eb28c3474415735494bbc5906a274c6cf1291ab8567bb448cae33985ed93c873d8a3114aba556305909ed0f6fe871a1b4d6b66135c8a288b8a53eeb6e3e9819ad97d625bb13bba53635896338793d66371b68ea425a4ad19feb25b9bd52edb7d6287d09416b7d445a554c625f8b137e3f10dd0045fa4779110b147e42af43ec469897441db1b7123ed778f627e44ffec1ea56b58b44e37cfa18fa35ef804a409528d72b7a31d91604ebbf909a8baffc8e1bb04ac9d451af890ce9edf521856cc03497522d820acb552bfbb8b3f9c3a73935310e960b3ecc6de5bef09ed0bf96656b6a340327b8fe5d6891e60336f0c859018bc827606093f0bf6ed7b2debfffdec7dd10bcce602732d4924a31538b87cec93a987a94e1ee8ac7f34e6517e90463ff64f91482e5cb6d1aa46304cb83405cd6960f35d85904cc3a609030cb39c9ea4ebf942b0e429017684fd3029a613689a85be4e7ccc34715636ae950d253de4ec9d856f3706f795f1e34c4b449eec0f2806ef3b8c6009c987b527edb249e37e429b11501bb25923639ba030a6a39f091868abcd4ed21a43e7a1d2d0fa831ebdc03828c276e22d13e4fb41fe38f78705bbda93eb86e9703f7ff7ba73145ebba720513a64e6403c538c8e74b409564e6ed910b928b600417306e69f783b3e0351a8a6a7faadeb8761532839750bc19675f669021b8e030c763f7d518a76d76f6fe6375bc44cb61d01a82d69269d475276463a00e7a46f06cd4bf77b9043dc0e9ba38852f98beb9b25033424ee615149e66c0934af5b1a11a48e59aee698ecb7aba9a53fc3a7b677c392c281d4be7478fc07eab07ba7eff7b1ae1ac8c3a9b95a539cfcbc6dcdebc505c94926346f280b8f3cdb507780670577d71ad0a62e1b600f8a62b5e52824590319c6f72d780fa20ce34601f53d4225e311bd069be1f73783a88d1868dd3289d4f38e1d67a020aa9ab483afeefc50595df88fdddae0cc7f19cafa5e4196ca8b12cd4e659e9dcb6d93950296ec0dbe7c9e6906554d120c43fc8ffd1f3f6af15d512cce2cb6f0a5cd3cd0b45b03da00300ce3008e28b1e6116db9fb32770e26d08103d8b707182d51787ee1a84f29b52b678f5d8d5e30c36a83deff89dd72d9b1d4cd8941c6216bff57421944f4704a435c16f0d99594b35e229671c85f67e9be16b1d56f8079dce50771fc49aab0d2e6960c78ff7808f2e33712012bed3770e97500df56d57976e5d7ebfc21041c3d5b2bcf6405487000d678ea0323c1076b29f0b7d4fc3c7ebed10142b3751cde4f7508e9cb08aabab98e83efa7fa48c8b6a24072e1398d810a347270a9c54ea23e72db2a72ef6574d18e006b49543038bd8816b1374fa76123147b48c31efcd6b507c18435ce91546e4172f3a8b98ed4234e46e12bb8b295363603719cbcb6a8d2604b0d1133b12d24e830c08fb136dd5375b3c93cdd5bf048c56728f9b07fe149d0db071da12d05104cfc35949fc941d73825391391fb30cf1ef13c46efd18432a9fdd731d1a24d585d3fad228b05fedbd473aad1c07c6881990eedf751044ce969d6aa7fc0ba188f8e4bd74223c1d96290c45733f5f73dd85bda39c6fad30116f5f56f3695ff1a3ae3371f5a84735f6df0b5cd91f3635ca8f13768984173cc24ae00f376edc21f71f7b3e619fbb8313612b4bee79d2022e84306b9949c13478b2600d7b8ef4759b22c4942f4f0c1fc270da4dc59bba0c7afb85b13795eaab1fe6719af01e328c17dd383e8a2c37308fffb538e6f2dd73d3a58959d7f5cdd9583fff56438afccb0871dacea1def15ff718454ef7053cb020ce0bcfde52c9297595d0df71d617c9c2248cf0b2a6c552f3882f0344e79a29c062b7241dec8bdfd1e730e902c179e24819f2b3754a4b1244d5dd1dc3a9a82098cf40370a6ddad08297115638ff1204c60c45ee0730b72702b56343604aabd0a7cd4708b4dc1527ad3d53e47f3cadca09f7e1d2166d2b2e5f537d64f2a6695e7d044f7ebb028aaf06574b53d2585216b5079154a65decd55986c228f8cdf9a2f58cc950c4e1efe869718076f69ae26a71286e18bdf1e3c7f350f81e4c564152f82dcd07eef4188292d972ed6c2c4e244652211e5bb6afe085fee53254f713c18529f9f10b56c15269d3bc1fb859066100dc5a33387bc7903aaf406f22a74313fd2d40b54437fe8c471ea06a97345c102d684926547e285ea7f2ba5fb358836291bc68ba235694668a6a00c580f0d35be14a405ca754bc9807235526eee4915211426220e9a4da7f099989dc5018b372e70ef20b47a9b1a64ac7c76039d5d2abfbf50b1c6c074fe996aeda1b79e3c515c4de356560079fc6389de50a9ffded720c3ca8ab644483c051a5284a7e0728efd114d7528947dd4426a97a24a9b141c643ab92bed15e842985d19dca485a224fb32ae6eb041cd0baafc03106357ba546bd062dd196a9e63ee75ed804ed566f342a7541ce37732e07e98ca4279312ad0e13f6ae657c08a2428189dc46fb1c65e2b82fb9fc83f932d98da6b70364d11df42d955f26e843aa41aa9e444bbb04b99b61650185b944df1f7b58635816762c92b1c45bbe19acdb1564d65511fed0fc0f42f31daf4b263b28778c534420ddf9943d77f91b407c4ef67f7d70905b2c33768d2daedff23bc9614c003c582a866d320cd4e8e8cd0914f79060a0884fa0cefd70698e688cdab05af843d254f6a4c533e89b2b237b928c6d28f95b70f65848417b0b8bf1eaa6a228aecc2a1716254363c458170303f5e28cae3e57d10defb2bcb618f973f2e7a8d551c4a6416a502be22957d95454334da88088dba2c3f4cc8abd475f4c1b035e1ac2382e2b709ee70806b7234baa806bc1ed1b1d1c8dcc23e49789ae697cbda26a6ea9f82077336bab7f365a3b2ec8d45e42c8296b9f01dc4c3c36614452673047ec65de2276f395260c6b180a9981963f10b4ba298a46aa5fb68fc92a46017eddd675a10424c1dc9996c93c760a23a16fbd48dff8b95b5c58e1e301e2cd74605d44b3de250c8d6cf79e6ef91ee5e2967248eb3a77409e132dcfee856db8f0db26ff67101c25b5bd80d8ebb9813e52a16dac5d0b2e22ac0a1a5ee3288f7b2131ccf3f6ab03e7e907ed1619461333d1306d3906d5c7eb6688c4009ade839829dbb6efb7a35fe90fd2b8ac24af20d17f7a81791e1a0112efe9424b2395b02387159336cb013ba10f70ea4e3609f36b9be13aa93c3aabd3fe7762330fa369c901ac1cef43ec113725f2339adab4b12dc64c1becc11a31a037e12a7b3c8c6f2fee2ecb27d6e6652c17ec15b8e898667debd3d1172069e7c923b41bfcc99eae612cde1531bdea1cbc5485bd1f54a3067f9d4b0f92ca792254192bd1f8e2c773bf9efd2c3473b01e13f1a64b582d1a635b92bf8f8ff8d6147ba317e520f4c9c6038bbe8695913e1fcd98c0a163e1be606677f4f1a1ad9a629c5ed01adbffb6ef8a41ee7ca16f9852051a63899578fedb1f1ec800d8dfd72bfc9605bdb3e8a882b2e4b03104e5384d95aa3c58d290524f4d3016aaa40ba36a96c4e52f29cf75bb033d74366da6d035e0976e86ae6257b82034c5f083db66f5bf9125cfb8394e737a4d517b075001553f8823eb99528f4463e065e22beced624acb3df37f9ba89565c1e0b86382b115679f0b99bbd33babc29d98a5c3f4868a5b2a605e6711b5a0ec71420704e012397604268bd751b0c3c83fafc08f8d871763666885552896b155a8a6d5349dd451e8c23fec41fe1e77ca95c3d4eb6313d9d4083b61cde054dad16360faa38bf06ea534bd6ac5679303f5c2d34b62657b45a05e890a430abde00796e7aaeeded30ec839e8de8848dbdd3fa89f610646017c2306fc3b2a57d2a4d33332025bbd1a505f504905cdcff858b9540b50c01f090464b8f01ec29e08b2736ce3e42d8fc17190fe60f4462fbcc783d37794536f113c4cf76ed1d9021329323d3ee777067836f447d8776a7700a2482461f22a1336753fd67a921caf7ed3e4a27c493c631961d3e88ea3f427334cacf80bc3ca11a062adad946289689a468fddf64a2701cc4386c3a67d59813beefa779721d80b22b0ac16be368963d4be6142c3e6c6d8d541fabe7682b3e6843ea1ddebf052903f06e562a163f55c69074188cfdcaa54d05daa8533189b13c44890938e70beadd9b89309d2eacbbfe054ac34ca7f1479c24b81d2fc6a5760fd4095261f45311b0be0234cd32add3399b2d0ab266719773d160fcd7cfa08198b8e734ed9e808fa9426e0b19c70ed7220f6e5e02b5450873972143b6cb86bfbd2289a5775a9ded57de69a6770d7c845269c5fe8062a9011d60137bb7d247a51ccb77faf52fba4b878f1e6cd719d40141b40b1534483393682449f6241c3dd0ff898dbdfc91d62807795813ce36469e192877238a497ced36b135108ab6896176effa627137ece2f4d03afc2d2be764a0382815430fdf10d584605c99b3783783896b66559c50fa78107e2f1039959ac6dc3d50236e33e6a6c120c044d4b9e9458d6821f145d1955ad4489438c4b0865e8fffc49214183ca7d1a4f0bff09ccb8acefebc4a3fd7ab47b7cb0c2fddcdffb2a1f6b561d0f9db663287c0353d49487b3e48928f13cf8f1b42ee34c2766c24f1f1ae5ee740b3094863b99076a5dc50df257403844b40e8a4bd625a88df51e69d01677687b76addf4066d2ac7e028ffd80e331651c41a5fb772ab5b33214eb90c09d04cc57b79e28f351190c65b2b6ec98420925ab2a62e75a323f76aee5db9094f638fde8542534634191f308bba4b7b83f014f61731ac1b94c2830b76ac14ebeeee6287ae17cd61a49e5b8a7a64e6e00c96b8e4b125b75b55154006f3547ee9b779a2923ba20b46841edc0d26d62997f67cc8b99e6feb7a800cdf499677e1024f20d50d3d35bfa552a11bbbc6228f225a42567840f8788bdb0a63b4b1d6e05c92b792559e1896402319872c2d5795cf852bb1e7cd9ae220e82a540bed3075217386cd21a84cc6ef241ff11197e0ceb02b4eaf773cbea8bcd0225e2f00d48549d7be25b490e17e713346289a6d8a23c70496d82176c0d1922efdb2bd0f016bda433dfbb0c2132f96f1778ea796634eb32de813c5b152a7eac2f0788f14bcf0d69dbca0f213ed974a402b06924e60a2803b18c9e7e78fa156c31e8b2f5a533b7fc1a752c8cadbb0935257671b9587eebdff59addbccc349e5f2544ebcbfe27929089baa824533682281c45a01243ce12eea7b87f06836bd680a71be2ed2be6bb84cbece00b63959fb949f8956ed2e59b6ee910ee76411a44410c4661cb5ea7f38a27fa80e33f6e136c6897e9123bc0f98c804015d8ff8c09266a516df2d8fc980a728c67fdbfd76ea05d8758ef34221c7eadba1e47b92c45a4229b51e25a9b2a1f7fe0a89a0984fa925e1fa78e42214801da68fa1749ea4c361ddb1d24e9c4a242b07d2a5f1fc927c064784bfed740667b43cf46ac078712207d7f1e52b74c601e869e490c6453cd404a5df6fe9c7704e8d3b4c6f081ab3821819f806bde5dfdd8faf70f403015d5e91951ce5bdb9ae3ed87a407955d64b6a2b9f23c498dd95643136ffa7f158fa41e13a14519fd72affcc27ae9b648d937d0f35abe5c174c1c87bda6a001b6b0321e640ea283f21e3a0aeef8f67b74a4ad6705f02e4f7348ae7da70724c5f5d703041b2df426ce9a2c62814d1010f811fb64d7d5bb1683e2a8eb8742cf040f320f4e68f914efdec8dd654722cc96d59f9a1afc8254dd53ce923266e8676f8ca8eca64c6c3c72728f79338927dc71503f3548adabf3ad3cb94906a8dd34015c3e4cf150b7ce26f18e696235a23cc3be819a5b6bb81c0714c8008f5de904568796e76d55124e6dfd92949fd2e4956856eddbafad30834c55322fc54619b798ab496dc30c70440a72acd50615c54f6dfc1427139893639af602e78dd0c9851250aa6b215724260cb17ad6c30b8a5de5ac478761adb0648d4978d99aec29c27242c366bf3bc7d7733aa748e371e5cd8e6550391818d61afeda7e87c53ec3720cdcabd34f4a086701dfe6ebc562317a5707887bb69e1c8d5e914bdec0d82c5e4afe8690b70db8b71f5eefc973b61a38909bb8c63cf1a679282162d7526022e70f55ba7d5c0c745ae85d386cf9436639aebaf9a6d005e5098adb551504268d9c79dbfb5b802f80b4f72e7794e4ad37ef46c62ee7505589bc2a98b8a3f957357e48871571270f80d3fcc18b788095e853399dad16481f417c06f577e6977ea1046e302dcdd80e735ab3be70c06fcac02d99011a66f99addb7d828f9b8fc9c14b20f73896d8b0b6ea87b70ba31e6d1b6521450970e81e32930d7c9f256ef16fdc60116a76c5236fda28eeb0c7769e4c1e419f6ad56e9170597e96c5fb5ada7286159243bcd3d373688abd2ed63b7114efecabf298fdc9357283be860e1261abce48f62b79e7051eb1a371fc6ed98fa3868c38566b74109dd4736e8a78b50db842747ef145bf958f84ba9d6d8a7f247e4aeadff655cd6d36fe4c03f9878481f97659d91867e7f15694da939412e463011ad8ab5edca70101da6d8aa5ee063880d938b348fb51c238269b28f3cf2e9609960b0baacc993c7b1d3f7e17b2776e179a8aa73c28fcc19b13269feeb1c9aa96b1b5bfb8c2b19bb36a5aea22e22c9fb6c8d66f636191c0217becea1fb38ce6779f74d462bb791fe6b58b15b60b6e3ea8e10fa1e7e9a20232e390fec6cacd9adbc3a458150a109f071eb42d9d2c0dd91de235ca4090b0a310e653efe4e58b8ddffd265e82da3e8a1852bc887e4bf1a3543cd742c6a28c30a2f663d918dcab7b43ebc1cd604918c3009a992d13ded91f5465fc078fe8c282d2078e6229d089200441ed1ee3b914b6ea2b195b6a8818cb9f2b7d009e13bf62353ff981732da3d900230088162c4773b3d77cc74cbbd63fc38d9337e82d74b6e7d2316e1b4ef0d250334614a1ee9f04a8968252628555ed3ae92940d609a96210be1fe816aa5e0bd55a3bb4e9b2870d98fbe0a83a79652a948f22b9c1d92a4261370168cb1a3e44db27b51552f34be947769885266d54cd99979a8c95ca62f004c2d0acc6e0a6e64fc336e041a988de5848462fe1e6634dff9545dd3b9d02f5c1e8acdfb58f4c9fa1864f4a5bd2a9cdc1fc42563e80f66bbbde7e43c607cc8256f472500400244c8e99412b6e1901138c1e186901573ca992e919ae7e5e641055437cebdb26679a6ac922751ff3ccd9a75b75f6bff99146802d045d7ea27904f6b54e6123cbb69f1e2084915eb949ff0e924b5f488cbc6ace0b18b104a91af690d867711e6145e1368be761d9a1b9a9d123588a8cd76f889f30b5681c867cd0166ec19cf1a0c0ab41d47361b8cdcae1ce374822bb4061cc078b55a3d1ad0bc50bf74edf3015a2d552a68e7ecd612fd4fcd3b05471731ef22c8954aa71aee4823591cc0e309c494909c65b473a0eb95ef34ed4643572408375afc3f0c39c4240135218354f4a968dc8fd010b2dd6e5868b9b64dedc59abc59c775a52d45b42047202b2c67be49f333393d0f24268405f3c8c411f1a78c7f3bdd5f960ed1991a5fd4f38428e15703554cf933b28b0dfa81e73e7d6452d8884f1f0fd6a4333fd40af4bb6e1c6cf7a941a6f807c2a04598e1222c9208ab4ef3991b70223ec425581d05cbfdca25f6051ed5e2b1ed6a0f110afb36aed841ae34067040c778bd2a46533dd63173e0cb636a635a5f18fadd0e7763b7dd10a3d891ab04873816577fcf421b4f17c0895fb7274597e326e113c00d17a5f170a0a0ef54a0dbe19c723ea03e86ab6bbf2090ecab077b870c35ba17dbec83e70e45424b0f88d26698d9e0ce5ef4ee312dde31aeae928c1e0cb893c40164056a5bc5cd5830e1402cb16430964613e964449c0c82ed57723625b8f695f0297637d09ab46ffdf45517195d066a2dc976809a2d13775bcffefece97c6f5ee230ad43c9375d386406b64ac6985ed0e18388c4d113c5deed456a5a62d6e5cfbf423817a4dd3bccbe6aab3f1bb90e00769b76f208e4638d5713537aadef2e57813b16fc6636fd69c6a617e8819d2ca6d2fc211f3b6fb72fb3a00a5250d6b75036382f4d6d7d5aa406b81a4368d96c5056f20be44f12d3428a0b695e3649708d559b7b6040c0ef5134159ed5f2104d3487633bba5dd5de092d2b50563b40e4b9b3035efe6c069a7dd68a40b3ed3840c6d90714e29d4d28ab225853017c420ce57e58d1639bc0b9ad4d6abea594e712068ed3ccc7cb4996c71bb5bbc311f12f48e1a4092382a8dc569ba1fcb0efcf44b022487929172abed9d5fb5ffa3ed423bef4b05c04af8c52dbb24f836da80f8476d38a1d5e21d3f0e2939784c139077b4230e891d71572812e47bbfe4e52cbb9370f26ae168fbddd52df2ccaed4ce8785004ee824773a21b546111e6e2c51f79c07054ea8401f47cae4c9eb1e39ee41be47c832af7f391f6c2a7c1b7ca7c973411caf281e0e60ad40b5c2b482d79af1a495619d4d6083441947a3640ade54d2e810bad128e1b2bf3282644c23592b207880c4ff27bf8a198ee1a5261be7fd6f8f67babce0e474713f2c4a7d1cb65193dc38f067453eec14dc7d42147d0c46bbe450c9399c1ef6c9e26a08f8b253a06b1d4fbc6f900f33229842de83d2ac90922c437e824c66ed1108696848047eebab75d26e76b069efe51a69b035d8f31a79f7386db89c00ec2e4c13eefa825fe2f3df3fb658eb96c6413a334352addae10d8717526f3c57d58c31d7dd7c555964eb47459d1e1848abf6f9d3d5bb85678a982870314a06535e32b1c89728333305d802d874322d5aaac09b03bcf2630463bb860a325c5a5d30dbaa550b5244267addba44fce6703bb99b053638e38de7186799091249540a4d4440ffbb3d0e389d9ed8f3f606b197dcf976783bb303bee1a96d0c3d927952e5d93881a21c045a9f17c965d6b32eb372cb73721ac7c50155bc767257c41c1dcbb0baff1b8489cd5c36f334501e6aec095fb23c495530998fb24056686bc566d23df57bd813a712f96dfdc72f424e40e5391923b5d0949811c54564569007585c62563485cc75327768bd96164949602709937aeb0bdabf66f38d021c5511107c99d638234d54c962198bff294dd4cb1907d2aaa9d343b925c767306e09fc21cfa20e5ff6b601458f128ad13a2582f4ec647bb398715e3ab455221f51885fbc472fb8a7ab7064c0661b71ed92abdf15d1da126aba2947ef053c4964c6ae996d8197990aa3bde1840cb4d6a317cf74b8dc7bbbcbf3dd14f1fec4d04355f8c8f4c9bde7e198ca365cd7c8d240f8e41aa89850dd7c3c645862488f30172806ed77148d227248f4d5909d40cdc73826f198b6144a7bb395511888d2c570f51473e311b9a034a6ca5192e87853e89c255ed7bf6e9f380353b9b079d8425d1aceeeb655cd746b93e531fe0a7b2fcdec91f6006a100a49452f12d992ce874e08a02a26f09be80903ca0057cc6a9dd36de10cf206efa60284cb136f083b9428e2fb2756c9f821a4b66eb3416d43e63e89f4445bd53f9d90f8489cc15c8161364329516bec294bcaba6ae9a5d750b5f0e3bccb7a5bc1a1e1fb56751ccff65d25787689137a5cc93ca78fbc35b72ef20a6b61458f4a002575959b19b2e93d454ce6b2d9e04114b746356e5750af4346d69dedad6942e2057fd8f5b1aa1d653f1f5e689e91747b061b62f4c2abe8515215966a075979081da671d45ef32a3ba8561776924814f2a7c0937f8b2777ca051fd43acde9eaf5d62f23ec8823a7ca8b509e5b11738e833e0f8c46414939241c176a239fba8edf02c6ff975d2c86b9f814738d23518c09d8fd7558776323106fde958c1e4a6351be5e0275331aff5fb7210a847b423c65ce446cfb3bb2411235cbcc4f8b002064612063db4f579af31d113b5803e8353d9f294e7bb73aaa0b0f842e10b4bc61f339d01f6795021b978f18e0ff2978ed6ac859ac7d790d056cc2b514d3432abf1732a528323b43753ba7664656fe61922b9792ef363d3d79a9678d865764f64fd7842c3c5ffecbc80c6d59cb8e3ca9b7b4b91ae7482dde5f9e355d3237485086766ec7183174745f21d6154ffae6dec34b24caa51fc9d2615e65513ec21146f937af00c895e40948aa114b5c9e842b64c84263ff44f88a088ba003cc20d705eeac60bba7103c6b5950406879f603057116867310a0d4f8e9a9eb9179b2816e7396708582ba61fe8c2565309af3db987b744b5a31dbcb44ddcbf38ef0e57923b771b5de6530f0e0786ffe668f625c45242d2d1a92c07d1c1633782d0c068f1fb18036aaeea14a8b2b8e1214269580c6d76403a9c1e3a2317a722bf75ef1fe559b1ca0ea91a16ebed83f640173f7a743aba502d7a2168b9aca9e4b9c4ec30f37a07ffc504e9c48c26d49294f513741888bc76925ec7471bdf2b66b61f24d6799dae73b06391269d273eaf060a84a328c04ea2bce059007fd9c7a0ca748962dfbe4b33416722e0b611b2e255f3869b6425923f3dec129e5fb739d6b13cd2d19f52af78a798ee026e8835a3727dda8a42cbf48250a06975fe02bbb637ab9f8749f7ef65e99ef1f6444e0eead52f0cf27d90fa308646697074c16a4efe55318c3d2071a1eaae8ef96e3ce4e354b4115fc6f189def77b42f36345c9dcaaf687b3f4fc567c2bf3c054b3f1a155233bd4636774dc05fd7b050a0099557710ef4f05400171ccc8fc95a419527cfde70511266433617483d5ab69fd3ac9c688c0db35fb632185a4f603260f15d163224d704c8cc123bc7cab554bf973669fa3917a052d320dd6303b5a6fde3849dd80553aa948538274863634a52098aba32fe1bf413e988ea5253bc67b6c29859796b0e5aed47a050362a059f8ff598939584ba720455d72e25a27b70f7a0f2b814598a03816d4d86497b03064d5154297b057824b0d41ba2c193990b627d82bb32141ced3560cccd56aef35920980ab177c52d0fb3e2a4c68fe5e6d8cc8941b6766f0f92231e25c5be4cbdf48b4446df4aa1c6dbb3cac59512a604225ed6dec64a318284aad6c1a7746b0c292c4fe27d2543d09247b7f4e83933d6260ac7f7b6d26ea3513c1b78f127fa77b93deb8f1303647c38cf33d7b031a44d5d97a9090b603f49e4f92c308ac36aa7a09ab3771d54a276af32c39bf270bf823f87353ea9ce298d2415fe65bfd2ddd1ac03152d6df281efee62d1e759bc2d89705362e918bb0c352b08890e6ef5af242e061320fbb228fd70b5be435a86bceacd035e203eaa3f73f46f16efb3b8df2608fdc13dbfc54fe56332987b46f06e9328b52bd42d3d152132e554e7d82e2b00b310fd7b9f6662da3a1a7c8f3fc09a8250d20c3722be550cbffdb331a614e17c229c740038953587113961fae81fe42b51aef6a322db04af0a99c4070049a41bc8b98dd2c7fbc567bc4f56b419c7f4c631ed235b69fd55a2f1696d64c433b50ff6f679de36364ae1e25e4e2462b50e0e9c4bad9651a50d5e5fb75434114984887e6cf52d8094ab1f9f166d47ea38e3bcdd473e7862b0602b2e548aefc49b77a223a898e7ad8cb1d19193668cd124d2569e0c9b39d31e24058a138f5246eed559d7727e0ca25f06b7e21c855fd6361fa3613d931ee4002e24850f9bd816a717a46fa6b27e47a42ad29af5d482e04c7732171705e5a6190d44c8a63ab00ae8821be565ba794f1ab077da900130954168076b239aad3d66222b885fb3f07320ac15b8f1f704ee15b7db201a51d9888ef27ca7d9d0c9d02935be0d678f2be3c923b6a9283fa959c3b59e72396888f24d9af81bdac15f25bb5d526bb56b19d7196e22931f6d5338fe4a15288a4e73ab2c6b54868c6906b71267409adf5685c99f8d10312efe3d65f1595c3073f7bdaa4af7544b11421c5f8605dc7a0a1eebb5d7e825560163aaa752b418818e4f192595bfaf1c27f1f3f7c75beffc4c7427a0c2f4d3ee1dd67552b26a9f4f199209e9c0c02fa5671813c0042ab9585101a2be092ef9855c812eba5fc4ee6c3f2dfcd55f07b67f958d61ec9b5a982976fe61127b4a1af33c70ab47281696066168ee6f2c79c0b04557b2d69b005fad168ed5ceec44d8c8b7ccf65ff9fec0251acfdbe366d28405415646c0b315141d16fa62a441e0389295b7a20a81b7a0052df1d0bc7717639fc572aa4a2a57f3e3450b4bf72e2f9930ed3414a247dd0c96372f2893bd80b423e0dd970f4b472c8ba76236077d3b2c17df4ce8e40147d5ea37ac4c74fca327c1fafd131694064453548d6655e1f91d0c2063475f4661c996ec347f0cf6436c6c7043115d716d2c3d397f9b9d5507c8e82e0e8c3059b6a0c91ea1bfcfef5ef275c64e7af4bb4e0800345e2b4cfc77a3911933ee27a0849713a9f3358dd244a6e1d83ddca96842eebce03f415ead060b745f7b5b3ff4e73e08fdf27826f3c782b68260b8fc8467685ecf5957a135029b047c76ce70aaa641d5e45b657ab85c2d5c1e2b31002c2d5f2a5752b7c1726edaec7d60c16dc03ff3e269075e70e35b9c6afbfcf24bdf2d1996c576bc5df407778ed73bc3f2e85e79548517872468e7724a3e13b23c19452ab4be9209493df09353bcdb411fa3dd7712f0d3478aa6187e5d7e0d62035455c7d1116c53168158336b16b8e9551bce0c445c762e2b45d10e58ed6ebcf7c96634a6ac1b201e7a306b2d381f9c9b2324211c26610cf2b8ddd9de0eeee25c263ff79f5b288b9a7950bed6d99e2d20ef902ebf1d8d8ca2165f40d6bceeba80654088539490e1a2a5a5718a7fe90bc1d540e818acd4a826066031922c962fa4a556f90df0bd24391ff9e0b103883a5657113b25d8a5afedf703e398db0979bcee226d9cb7ebadf70d8c261d2cbccc1acad68824fb039ef01278800d4b3055cf06112e25a0cc97168b5280431903017acf2de8104fec47f41c3e42bbef3a6922b9602a90a5ebe01a2a163b39bbcce0b794bf3d66e98adea5ecbad74e4436ee6e10276fcf42141eee0ccfa011c57059b3f2127d963d05761b285dc9205704fdbd7703216aadc59f514dd728d0c24e12434edb9e01b0943efc81d2c742d1cd80ea83735fa8a9b8df5170e2a431a3f5b322a5330665b977c17b525838deed9b21fb65260c3258bde5873e2dcf4e2f662409573ee5abd22bea65405da6b95eae1eecc855118c38cc5b5e7814f82187bb7cd6a6ea50226823b6f4a8f0bae145fc8efec517ffeb99ecd0552e60745ec6de855781c899f0a442819e3e2e04b195240d855a2680f14391f270546b0fb4e974d780d23b18d8ab680fc1dc2ef0b3900fb953811f5f91e9eee1d23c3ba4617b16b9563236c1f44350f5ef98ca5258942bd4890963d0ad58f29af05c5e203b3101405aa6fcd16a595c6fbf4d31076e246b85f4cd62ad6c7652a65c08c1320356a5839161709886d54796f9858c70a8b1ac185ad92811d7d40f387c89e529c21606c37b0c6089c53e7087d9c6c4fbcd0652c1d6f6112be520b3a339d6afad7c80772b7264c6ed1cd95df20c8108afeac266bffbff54231fe8ef4ebbae378e59743a48553373170503701e80e5c594d91f61078ae827982e402c8f56c40686fd9091a89dda05b7e3e1707de0a8ab5ef8db042d682f0960eb3952562ce29b4aaea9e3178cf09f84bd95d69afa5a9120cf51b9c5aee90dd4f435e3699c3c1e1e075591d0c17f7cc682b81401eb01f35d7f47507f7bce70a1633ccb5ade3cfad890e1e44686d4b583c83ff18baa467416d41dea1a66d327b0084c43dd7864f039c13bb3e8392702c71f5e467614fb1e95d3ae9e98284130158ce3d20c77a9a5d882385be13db7ea865d449ff77c16827e966bba08526d57f0f4a667e11614aab75285864649628a066d37f4072ea06730d65fda6f76a742eef1e041a63a13d747787a1cc51ff95a7395244f8ec448064e250ed607d6d261a449cc755dd5131698fe6a04a53217462aaa6d5a303a1c50eea34a3088e96227194b313bed35ff0c4b5aaaa8b9f67dbfd356fea4eea85c0e27b1b6d22721cb02e92b471b84284f4531a0e3640294a74f1fd414cc9a109c461bae814a2da7f26da7394757252281d43c1b70396600921158cebb3e9e1b5914d52186a672e9b90132ca331978ec466e95a22fd921d6f9c8f6a0ff790f24d5041418fbf074290970d5ff3f9209ecaca70480116ff60fd4ad3870cfec924e46d2f71c4b3c0eb0083488e9383af1b28e01df8d1ac01b15e35becba0aaa4848131ff3a374d6968a853ac3ee9a19ec7b6e696954f18765285b47a4574c1e4be82d487f480cf39e0b8461b086ff6faa3bbd4788b9702a7914c52470d84e52661f38f7dd4d6ebe125e0130f619f7272846b18c4f0065da12d3c1c7b0df21650e171d486d023c9343fbb35d78e4cfeef36e61586c5603fbe56d5e7f609162a35a2d4173edcd12a33f7b016cf3ae2651c2a23856aeb919e77e32a01f62c98286f39eb5cd4c5cff2bacb7272ae0642a4bf8cfbdd3027f103451de690c72f11451307dbf6a9d073d6633385c689e6bc485b21d8da7fbec078037e6bc3d32e9594611e3812044a94f19ffd3e34722f10fc0b72be0d5a4aad5746fe2e47f6358fedda8197c6c118281854e84f31173898c39169f5c1e8c0b5b533abb0b987adbf0ba74fa6d9fd0ba7fe60d664c2f40020393bceb3d9707c984d70151ac2b663d1d5f14dd7a9ccd6e60bda117d83f055d720bedd36a320f4c6f59c1297ec24e25f7481dd2a99b9f9d9044401383296b74f22c2ef61a8d952e4ad0a9fb340861c54097dd62d88eb2f13a6e977648202b367989b08bfdce478cbe6f3ee1f66e53d0ad770d597c80c91b03e8286b1a71f213ce572423d0117d9dc4371ce9a274d93157a40c4487175514c518e7bd4219193c6ea313a8ef3977993a7e5e05190b5a9774bcce4ab630a5c514cb4a80173807a30433fdb478fe240800a3bed95644a2ab2635a78a92a6065ab27f11110b53bd5d79e5693428093fdf838b3295e14670cbbd8005f9642131e77bbc5b81856979c4f0f6d4b751776d22764c1fc1be73cb873027f5669d909dc009c3c58f5664cacddd797d1e4d1b148e34f66b5e0a88df6a8882987803bc74320d102ef28e016014d4246a54329a4b0e7bb42bc2c3755a700fe4a6f93b95e6b20b17ec667b5798d3fc9e3f66d4592e1b193ddfa63407b1fff2b205d1a9c6c9ecdae6be5c531595a303d33fa72a232efb63785200944d4a95ed58f63af9e5dc39d4cd292cbd057317c74038585c5b91ed7c05ee7091805a9805718875f43ea8fb47ff2ceef91fd3a2a4be82cda0b470a9de660c24f6fd504c8373d79f5da11ccdd46984283a3d518515d8369423ecf3239ebc4e0a54b32f68c1be3e4a3a5afebfcb1cc9e41b1791de938f1b26c0ed7922b95902ed3e12059030d243401dbfacdd386da786ad57258ad8a76fc8b62f4709de30466e99d742f5e815675792f052ef47aedcad303227c1431a0a692163123eead92a1034d5fe791ced6f9061ce00331ad4682d072c4ab553ae7abddd44df8467b37d5239b0600ca49a9a832e191e171707cd578e36d3ac2451866b56cffb545740df8ebcf8d358e7bb6d7e1cc165b22ea3fce4402e5c74a6dd1f436ff8260db510dc216bff309a927375f052b70dfb7af199d051646ec87f9f8229776c7cc3b88652a9fe81aa0adf4357dfc418019a7921a5e3d4696c9687125709b030da2c2e7d34550da98f3548b7a127635591a32fee585bb826ca519bc1779b6572e78e626f9766cf86e2b7c23cc5425a4a972d2f7b824457364c8db7aff9a39a11dadf744a1c867727d44b0ecd552998b84cead1fa484a74542e456e7816b33f434558dcafc48ea0bddcb7f9421f74cfeed591d059afba364087a5c1e863e2495eea09552b4eabc81e5147e20edd795c753dbb67268195bb697f09f0a501620744d68dba1a4d0cdc7309fe2f117de48286e37dab0c3b7ec45df1c9a76d206f97bb7112f61b01f966f6e5e402a3c287831ad03fd36955898750f8e9eeb9c764bc193d5fb17e9a9c9a15e37585ab18e2ee8a5f938f30648a9e27f39953e318e06f0259718cacabac01d193b416bae34c2c4f4f7cf18945e58905251fe3f6f931534da30678306c6c82cdbb36824d487ae772c94046358702b465538db84f8c0c409207e54c8bdb7963bbecdc22b6ee5696d9bacd8ffb698c3a17e8c2876c7352cff8d2a69c3bfd74f3f4dd08c636155221fdc30117b99036b23c5708978c508b928634ceea15db084bbf7a10f801dfedc234ff173ff70b981438c41948ce64872387218a0cb72cacfdfe40d17dc0607a260d99934992b23d0c26aa5a3b07814d2e82d388a68f49ddf31751997f7c8eb4b269658441a5b5a1f772c240bf1f811acc2464615206967e5fb8b56c654283a0a6b7628e8f14d3542451de81dd16dc1131874e180695b5c27d4c75fb5b34ee10833efe5bcbc0d60cb44e192f0f552041b05be8fddcc4aaeaafdaf3809ded6e19e7736e58a89aa451e66763fcc54c350c3780b79beaa7e3f2022d5f9627d1adb9ef26847bc9e971d08735a75a8735ca59642f9ef0c8193a0639b4cfdfc5048371590523c00c29a1f1284fba94df559f1f7198b314cbf1c6dd8b9f92e42ef9f38c7ebeceb289e1774c496a0bd18779fa8ac1001ca72b2f0978c49b97c0bfb081788937b730b3e639b4d306e99bb249968087938ae3502b08e40b98dcb7d14ad262cd08bbf03fd55d47d657f056d3f971906fedb04ff8cea3e9062da3aea8035e13ea849a6756507f1c1b5eb5f03df5b07cbc13e8d9873b3606c9ddbdd69078d4ec3fabe8f1b3f44719c2737b40b8b39b1140c22740e3c3d781ba14bc315c140576887465eec02dfd9bbb2c55c1cba8c67ac5edbe6289c4e52a29aea4bc4ee4b2bd46bae51464047d47fd07a32f2c2dbeac2c7002ad1d9ecb240d4cfc9dbf9ad773841e6e9363f92b6a1c160c8b0ad85148cb66cb80f0a05d42e6e6f20b55e1902131d829c0d63996c89b04f9c5693944f6988daeaa798c822b14a29da5b2358f8c7e85e0cb9ac0c9753b697cf8d30a08f3c8dee6746fb5149244d33aa61c5faf9c1d7bb4bf7bdb6542103fc3f84d589ac9f549aace29d0198509fa9809238458a639288802cb126013d83c092c32a6a7135bc8cc0bf1466d94b0e2060052d7f69c614d48be354bddc92b4aaedf774bac8d6c39a1122f649a29af45f152172e9d1104fe89a6f436c8d2b3137532b6fae078d7cfabf2deea72a834449b089b19eda7d6ba438ad2336ad8a36748e8da86c8002cd83d1f55ab4309404e76aa4301bdd67d67d01b7926ddbc64010bd23d1564bbe06adbe7180e8151539bfa1ba3d389fec662f87c1afa574dbf17ac7f7df5f3cf5edda5cbfaf888986966cceac45df912d0ed053198b2f983ad549cfa61189dd5b19b6268fb9d7d0f1c514d492e51990cf531a1129892967fcd66808e88bd64fc4b412f557f1c9b3a9cd2a6ef2b6bcdf053266841f51af153227334520347cb4d78bba5486e961c6a64143e802d903d3f9125aaa8c462efd68128bfcafeeade199e426d226edb4177695b62b787d5a1dd9fb0d6469d23f4474d6ac8f355d7261d77829cef1a71a43f3e9d314388e56cd31c352d9948e54ffa9331d5f2f991dc587df226a009a30faa2fae445eb0931f2a775fda5a5d33b98ea945c9993183b84a75628c07d6d45aa60ae8e88335157dd43da1fc547af2ae088d0f2f95ba5e5ef162be0404cc4a5092837da699b9ee8396c0bd1570395d46e0270a86bd034c3dc073d2b3631882f6d36c31989ad7cdb4863b75266e2f098821d61c5ca62c679c5ae9d25c5d6e31ff34a22d6d1969bc59aca8eb069f1b6e9cb8204df733223498c385b85ab14fa41ea9f92e8bd7cc80a3a74907f29e172917ed255d32d85628ae5f4ea590958df70ddf278cd7dfe671a1fcf33de1169ece32e77f1930bb6324b67e953ec188e4e364371f0bea58c29764d74090f667fff5c7f57a37f6e51f93b2c0b2059054682b3122d6282ddbf3e74f60b836df696dce84ea96592dd028078c0e1538b1f2dfbc59f72c9d1c38ca1b003014f650a1487cd68a9435fa3aa93326d692c4c99adfc175aac4c993b63bb071bae5d4d11ba2514beab5719ca4110a7cf01cf4c1ae68e948a5b5531660f6b6be1acb9842026df5e8b48c6c5c83eae568c039bb36f322daa4c400b75c6c180db4632fd816b745185a29fb4bed85b0cbf05886e81b3a7f212832e5b0bd05384fbebc2370bd1e1d28c465f930cde01afbe28e56487eed5d0750eed9e775c9e8b757a79aabb468af5e1deed90792434cb62909a6ce7573b9993f279e120bf57f6827bd8de3d496d5dd0a5cdf4dfa4b0f41df9546669eb8dc580319215026e9b933dd0df75119950ebfa8a8ef29547954bc98d559918871eccf6d71e89cd46098d15515c35596e87d197e614421d008945030a460d271558c3cce160b569320facedeabc2227f2e15bde96ab872be1e8f782857fdd625b27d0d2aad788b4b5c4b3ff0e711e14a663ed01bfa8b1792ac9010310c7b421fe901a9da28b150a18e06a8477672eb74ad1fd18feb9c3277e35b6ce0887f2113663d28b448fd6b2f52fe6e962e3f89870068522b08654052ad10da21181378710c4c3fb52ff7f37b28a5df494739f8f4450f216703323fc0d3b3f34958aed336567197f109e92686ac25028d64181f4a521572dc1ed31245efea2ec126ac5fdd2bac2760551d57c403e4f938d9527e367e5fd182eea252be78354f51acc5cd8b6edebf9954252809393b11d9c3552603723f8a9be43d727a5451660e5121ba8b98d446c4577c8dac76846a69862923ea9e7440716d1d2cd18cac8f5eb16544c593a8499f0a552164b5ca0bf2b6572cce0ccc60adc2121e5cfd9b8a83ed0158330bc58b3e6811c619591e623d71a2fd0d90c46701c8096f62f39c1347491086f27e63b42883ad835c8de3eba2263fabd9c1667181d09a3a02a3a3d013d0625c1858a33b7166146185f799b1ab9dcd1b18f388a8bd49274fe5139d96f136dec1d4e1452fb31959c30fb6a03a3cab698c36f750f2d0a3c951c4c0bd7cb2c4f500150e7f923fbb03aa5c7e36e0d2f8ec956de7f4b7a0e6d348f65d59e62c7c3c3166730b8b7e2544683f4bcf0a1d787aaafecd6628befbcf1d979d3234473d6e01bb9c51b505b9d62d7647d29ec4c56eaef4dbdbc391658121ba9717e10e2acc0fa9375459cb9f9fb488aa3fb484196be030eb8958cdbaa808642c21d3c1bd4671a3cdfb52bed50598231ad3164f1cc9b3be9b924dbcd9732964fa92505ace63b0fcfbac61cfd1a3b8c4350749b7902aa9340fdebae83f7a57bb7789edb76316efc29ed1d9ce069c92917f776f65d478570d1545eec25ef1202cf496f4bd2da86c346a3370d713a9f5ec6149d2deccdafae585ec5f27c86655ef013682f4eb03d39d9a5d008e5618a6109aa46537ed89a49839f5ff0894e06195ee8789b128d688ee73c032401292e39f75f0608305368a57180b2592837426da0558759ad03c89f9e444d1a6a11fd371e2a77b7e9385e02aa2c54005f23948f5e6f84309962a5c931a6e59ea0e1e97abb78b29e4d666e6506f5e36caaa4c041d27ef26266af7a5b07aa0fb28d488e30d97ac32ab771d0e6811c428d08db073061e61094eba8b9a48b10d9d13cdbc67500a483efd47954ff2ec84d7aac2805ff7dcbf8049b97f29c3cf4c3ec9f0be0ae432a4c2e969b88bea743390e4e17570822536e016aae2bdd827e2ec2f1156fa437da99271e0a3d5d26f2b3c5f8d724667caf2dada4d0f08771d67386f0de454cf116b8e46be39f78aaf887c7a1c4f05835ee905ad02c6d6258d20fe5802f5d2a57bc79eb689279f0a3cedb2a8f9ec321241d1ea405faf880f712c96100cf9b28f89df360bc2dfa69c5881683dafc70f6373250f368a4707a31e149f1f2b64ca3b6da2fd080972fd491f73be268c563556ebb8c27c79da31bc963a1621854beceab744f67e9229acdbcda3acd2b4de331e140b2821381c8b32c766b4bca32c7f798dd99f29f66ce34feb7c010bc571196ef00b9ca4e691724656ff830baabcd9ad07a723a2536ba39c9aef82a7df6e12f68f53d6a753a34c72ddd13ce6d1d50d1a95fcc47e489c090b1287443ca7901113c13b3caf6967392955b4419d73f9edd3736b834619729f83e88210a086812bc7d794b9cbb85f7a6ecf51373e167a7008fd9712061666af3a5cc0ae84cb304233c4cf5b7f67641f58b1ba76bbbcd9aef80a6c50dc19198f17c586bb8d073e389362dc24c912e6de27a074827bf6c85c167eaa56b8e0b8e43cb535724cdda624b619ad2d1badec4737fa0b3c2ae21cc353bc1fa4df113091cf5251db18392b01d9078ec30143ff3eb6bb26bacd712a2f3318e8042cdbbe9c55729358714b1238a4e63d8c3889b02586335098480adddb250960f3e724b0d5280dc95edf2130254c998fbf7c03f8083936a6e7fc77905dbd2a5136b117e9c66aa6ebe6d48d4d0e1c96f1abbbe37fe59ed0239ebec75c91754fee60c0f0ac119adcd8640c25f047a9dd64083465c29dfd5aa2d5093e24b9005f205641e882bd08b16ff3844a3158672423c8fd09015bc981bcf3c446079cab491e7c8a53b2cd0cbe0d3c0deaf50c1948c6e63f402e66963f5a9580aae3083c8a59aa393e34fc3b329a1d44f5606be455da5e04d8cac6d57d1e4c62e6324190eb1d8dd51e9718f0fc8afd95defa63665d577018cf89800166056952a6c941c51b3bfdeb0a8e683d12a435dfffce4bde7a657b08f8219048f2bf122eb1f21164d3e6624dee33587d4992d878ece8060ace90452310ed54bee4ceff17593b5708961e12c9448c25ee31ec46644cad39b6f458306073db0178a4cdbe34c0b33f85d02d115b8a71bd9002d521902ee3295fa1b9be299d9fb8d8d34f27b4863ed2deb03a3fc34b63ccd9b955c7280180157d28f96bc24f4026f6b90b225a2d2fc539fbe8efa85b7e70d05470592f704b08e8a880e49ecc457c6a0eded261c60c1375dce7013033509bbae6c883a526f904e5cef63fbbadaa8d8cba03830f3f66b76cbc49c1948e932b68b143b6a69faa63160e54a13be96a4138a78d0e783ea706c4fd46b55379b81a1ac070faa3511307d46c2aa19b727a8b4060f9e1ccb7e25c8040cc161f69e636e9c56975df3c0a558ec79c069f4c97ff224f83cb11bb8f86e7e0b35df5a5c405b0be8b12e0a7eb64b62644fb994a721826afd3107d4b13249cdd955bc08464caee8d7874b5cc843999e716dfcf8e641a13b1129cf19e2cc17251ee0365a5c55b204d8537a68f3d4b59ff0d0a78e2dd399473229a9c8a2ccd13d224bb3f5346e978e6ad1a79a6252ba61217a5788e77a44d5dc86d3e1e0cb86f01e501665236b52f257eb5adfc1a1e1f78bff224b6991641ff031252c061894ac7410d66a50d50dceda494ec132714331f6cb258b49d4fafd27acc7cc4d329e1f3f3eca109be94b41ac69aa6ce35324d7f3efdfacf2748a5c458acc7e4a0d5089ec9d1a97743bf977ff357e6ae2309b0e18fa6bd8cb35f63d9b47c196fa0704858e3256a433b70a2bf6ede53fd9631e24ca5df277f5ab4764e57aa66836c0e77149a9cd09976e6ac9aaaa7c60d516c7b7a70bc900b92749924b02f6dcc76a347add2fab2013d16a8b57bf75190065fd77ad0482b4720905082f44334b8c07d96ba181ac962a17c290c0acd663d84082a814d1b31beb11cb1c3fff73466883da2b7fb999333e1da6b586561291c534a92cee7d6a5334ce7536284888c2273196c94652d0ca5779d1ed894ab3816bd5fe8a40be2518e056ea715e26cc4c60f037bf251d8230d23acffafced9c8009571b69bdedf153662b42f47bd8e344f59b01c85421d3d56ec752d52fd6a68d1e2460988850d54806572def093f2246b588ff7fce48e66cc70a2626d1ef4233a64127a2c20553ce52d5daddb40f09b41af7094cd7e0dae1fd2bb24cdc6e6a64d3f51da65aace31648f0ae9b2ce71741e7e43b5ebe8a1e79d9d63fb8b9dca49694906a5cec2c38cbe6c9b0025674cdcfb1c927980981e01d5add90e8b350651035a6211d996c8711d1c0f9344d71cb3523ba041a0e82ce1d5080a9ff9489d49bd335b775f602b501fdda443c01609ba65c811bb6b2ee61def1524b4165ac12f625902a773cf6aec38f3d0c741124621fc7f9322c372faa746b7ffed62b2d11389fd268e25c5d38f7498a185f8094b342ff7b23f2d595c8977a2738f7914aa9d887643957021ffda92d7d3164a9a2968ba03c2a77d4660575db3f9a8365480c8cb613f52f47d79927584e2475faadb40b9caefed8c9299d4087974a690b04de171cd2cef1419e59af093787b554cd0c5d73c5f272278072d3571cf4b70c7d39428ca3d914a39a72045a5598817294218052b4e02fbe5c357c9b54b7e0ad0898f28a3212c0575557d642355a29c3e4f66a1210626f1e5f5ff1acf08646e474158b08c64392b3e8a67ea39888ac0b68db51b86750b6a29815b4af5279995e04697a49e18fcc0ba2890a9f7c44905a48406038a4fe6ab95da508a86669b249710fe405535ab7f96d123d5fc663b4b2aee46118cae521e436961f89b3d35c962974b94ff6ec4f4717df739612d911948643b99a304a166077751ab27d6a5ff1060a7f6d62601c1f86b3a209a5fb29e1e9c8040fba3a308b4b51405ac76f76a028be281674cafba27ea598acb7a8df571db02ad0f1e8d8e926142a3d3fe94f92b44b4546b12fa1bffcb28b5263c2598c9ef6161fba4603716d325df4de2037ca6b4690587394470af050074cc58e7619b3e34696151a6b09ed2f6903618069df05f5de1a44a72f918f8a8531a998c5a84b0d8507f91bb486755f22f9cc56c8aa01f5a79af16950ee74648bbcbe2f236a018858e0292cf8bb3b097a3984892ee16c32b62eb17da227116efbf69892dc7861257ad768dc0aa22b5f942ce9a5d51518be59623235b96b8fc6a320f03635df2f35cec50e83bdf1b4933e5760c373475496da09c0b4366cf93a88b5d75b8d1cdb118e66861a240ebf791c5dc2aed9f2f705c54630a3ef1e6be51e6fa0620c59c0327a97453c4e978cb12c4681e7c24648ce6429c5f64b6140afe0dea81ab1e987ab228809c4794deafae5b5294799201079ab2e70ea6a9487c439c73630385aca3e4b761220d0534adaa697c27f6458de215218257ab752288c696b4a2fada90552be7bf226788f2bc1817764a4cd5934040165b5a00c2390b667140bfa6e2534c39ab7c2c11aea68c43efd1610eb4d6cc6f953c4cd3c71c84d9af52d63efefefa71ff957dfc8589aa4fea456a87eac4c1d7640d3ba918dc6db39753afd85a6705bbe76306429c43aa929eaee8de66cb6d465d3746762bf58e637ce252423f15971e46d3dd7f7f72827fa7cb351d0b15333dd94f660cd91e852704601370486381b5d8b3ad75f0fb4e1d20604656e6ac3c91061e24f4e0ccb071e335770dc92146f5854642da4fa3e3482dccaacd46cc330b6fd36693191724c933c8639cf887eed03ed6be2a03bbe006a13cf11fa7d469a05e624b7e9b0bbf82051eb59fce5f6062efc848cf8dc0ace65384680d2c9ab75fdbbc623082ea636a5c47f2613a1154aaac4311b716f42e02186f66d3ec31bc13cf8824f7821d7edce1ad50ad4cc0e7faeefe340388dd010fd3ad3deea81eb97e71212ee03a8eed93a6af140d5e5524fc3213e8aec2b78f803aea97e280c2c422162a14a7da6f8cae8b48e7f8b21454573de89511145390744d0f1444725848e4627c0133beabf40749b658c170053e33dc9b3f2f12db5dfb87f95b6cec7aa69b4a3a220bc25900891f3a007641675f4557204bc98066d5b38e1419a47f3e5c79f9d8430e6a86a6292e9bcd73b75c9ab1ac8701b08b8061651bb627af3339b5d8cf300f15046847bb490c19e66a1eac3f5e76cc29918456d0f8ec74664bcf72c5224657401b171840626b417740764f3fbc0f37b33f6120cf0d298fe68ec2eb0f0b551174ba79b0c3339d64193b82359b0c32136b700ba43e3dda5981c9fdc9b9cbda544e4d11a536a21f4a1295940196f5f663c74b2653644b24a0f7010627ab28fa1fb9104638550c9e5c8a4355868112bdeb9721a098ecb7792e1302d01fbd5f5262ded15b0a6faade61c3f844d0edce5e7957ae3d55b8079cc37bfebcaf438c3a01ef8c0516c993618fe7c871a56e6f296bb2db35d7d1822ad5660ae0af1b03363f966d88c500be7ea98960f00bb28a096cf803e1a95fd2ac1f45b14bbc8a267c24dbbeb6010e08b09314dc97561e0fcbc02ab4e033e990a0ce9f51baa0c4b16130530ecefada06734c92677c4a0439a3878c49ef2dcd0d448791da8faab2337d66a7c75af3c17406dfaecd8306873ecd0e08c72d7a71493b9b096e272502588d53623039e47a815bf25e8ddd4113364989ceb24099ff8297ce6a33f32af15f7e72d9305fc671155049443a05bbcee2032503278c2d2ff2830b2b7fad99b6af4d1c4eb6b7b3953791f78bbe7a61b61d56bbb3b0b08cfe8b16334bb9fe4cf2a7fd6286f2c99621c3c8a74e5082223c236dac301f596f60081a5ab86302ad5667f7270245b5420ac00791ace4414d7a1ea4628de40a0b8b318f0f36ce2341a4cc4638bf6d9a513a582171e69916e06f9b056d0b3c445676698ac4255d9c6ca3abc16cdbc86ad3d9a43fafd02e3fab82ceb026987c22fc5e19b5565e051fa44add952e4d4543250aa6916da49ccaafecabfa40ccfcd643c026e78c54582725e4d11a5f648244577b079a0ef63c81a4eea4378f7edcbe90a6b5fb8ee98dab85b1cadb6195fc60ae0520a6db82daf4a6d9af454f3a2616fa832d3bccaadd0533121c4c2255c8df85bfb2f0bf2f6b122faa1b71ee4774598c3fbe137ee2583b31d8543443b0486cdaefb9ad71d777d8594902ceaaf256f7cd8a0418eee86bd09c6bb2ff349b5e178c8ebfa899ca211bcc9aaab1025163eb46b6ea93c050ebd72ca5f79730c3df2b87fb00db69dd3760d75b2958b82da1809576f311360e9ecf28c5441c5189669ed1bd3f49705bd002371e351a2095f522a2b3652ed7c8721d8e8fc09c22920c43f0de9fbee69b12ee7ccbf0617d31b7e92d370483fba82ea96703a91d05fd9e771b0a6aefd8736b50a50f9b08b428b69f7a4b1cbac6a71e27cb03cd16315257764b99362ecad7ad7584e413784b185ae1df5de558267bfb00a220637b63b84cdc5bc5a13d627943ae8a5d0ab1ff57fc5e628ea65434e6afae6738583572fa581f877b128f6db17989a3c7a535fb489080812fc5b1894a3c6bbbf6df6647928556bbb08367f65f580268a22220e678df08fd3d04c7e98f98ab57fe06c965e040dbb02643f69d7a4d4a59db69b9b863766da00ace9ec669e1cbca40e3a8183ea9f61548514ab45b814d9490af06c9977df88c204cdfdd7878a01b2b116e167487f79c602743028437f9c3b667db73b54a71da55e478116957520924455b60f23cc92254f0200dc90c2bb25727441884ad859496f865f7e1a7fdb6343172610f6d118d795990b8fc26934740762edc9b9a25cdc61852b46301b5647315b872a2d0484850a1ecfc979fcb3e5070219ca9568c3fe0bf177ed18f4fd1d1e66737644be806afdedf3b4481d1bb53f7a8633e606f0f0f677da1c98d6e195fd9b13520582a9d4b0f7eb46ec2ee3797761a44a178dc2efd7b5a07edc8409a84111672ab6931eec69fc8e29921d0b86a89ef6f30522e77368e4895b1c14105a678293bfdb19b1ab7127f084ec9c967f4cff0d759da8246b989a3ebd5b0b48a9be19a3ccdae49b3fd7790dbf4ac3727b45931dae7222ba10de050728701268886f17b61a02cf4efc105ec6107a8d9f97201fcb979c15c9a9e77886f74d87ad5db8a6b250c0f3a9d029359c595518ba17e1ecc1b78fe5f5c302619804173ed8b11243e56fb2eb2a117d7bd82a5f461994d1a2be87981912d8b5eee8d2bba97fbc546b25898e19e91e1f8ba79930e8148ad15abea1fdc5546d19d386017ea25350650a84f34395d5cf8a23374aa0afc6479ff9365c47388c40e617204228a5b8d83b16160d65a395fe1bb377b3b873c038236546b06f0cf48beb1c71b9cff9065a00982450b7c1cf7133c2341029e32f87518b0e777fde0a39f2d66cf375a400a6adc0222575ca1e68006a15da22d385039d3db75da62413cf1e44a9cdac168ba7d003369df89b9f01e13331fcacc7a3cd9ea21a2271bb239575557517ca998df080a86584e4faf17541f6cae84ab07f09cb94f00637c96e60bbe49206c7be5b695a26b5059fa70980cf486b8e16576f3cfa9d880d3e38a8a46a8b9848a2c23cb6853696607b483cbc3a1ba9f85eb31d87d997a2c680de9a42cf19f6f2c5177465a9522215612be9c7b2d08818855f08c58f591f14ef0c6344fc3846dd2a5794f84097466e392a105fc1fc776f1bdf6586db3a22bab29a4d66e87c11a2a660351ccc8b772cf91b9ea0cff847a7dd85a9296709971f18b84e7a5a83a702499337cec02255cfef27bb9110cb9861184b1e494945a606c964e7e951d270b48265dbbf693b16893bf29596a983d5f873e8cecb3be9fda6994d808c3e88ee244d8e8656776d467aef5c8431746b4403e00cbbdfe73486c3141c7f1bc3f73699faaf3668babb4565f917d56769b19651fc0b565ae42e90f43664140ea3f8fdced51d75f26c0d93d8a0ccef294e22cada85f187bbd8c15e343a2cbe4168610189d2d0794ed390b13d25c4123b2b1a6529469870e9038871d3dc56d723d83292788a7b1e40e3e293f949e6ded42c098661c24ad3035164eee528dea0d59efe372e203c82cac23e714eb5337479cdd598cb1f848d9306683b3738a77c9e999577fc92b6cfe58133654928ed3862aa3715cbec912927d96c269f564f10a3ee36fe7975832128cd5a271911ee42ac01e638563d2868b960210aecf005abc45e681c65e432d5aba5bb80e53e92836b027f0e149840066f175d090ba05a954da37dbd5b5c644a71c70f258e4457da135eb9265d85e70fcb3b755556a44a9a0bfaa00faf717cdee5bd13d4d6590d8006e4fff9d06dcbd74915c90407705a3fcc192994205365d872b2569117e6a4e15501794fecf0657f143ece813903c55b7d59a56b967d9121cc92dba5ac7bcb086f3de505e176a1ae01e4c05a8ab82c64c8251ffcc2c747139c7394602d26301eee7277306b791153bc0ab7a9a5b404d1f32eec48add5e6ad8cae99a2909cc5dc10c139adbda1f1ee5ef4525640f743122153134ae6884f1ac26a54326103394f3cebc2765dad056ac741651020a0e9c309959fcaa5ffc3c1ccfc3b32924d94a4c4dd952482c5eacdad61518b7a28b9b4d2df01b07f27b454a1b970b104641869bb03000d7aacc066b4ccfd600e1cacee1f24b3484d63afcd6fe09f85f419273514bac15b8b8420187e679149a655da18bce99402a4937cbbd41472d5cc37edfd19549b08165d4aba1f1293dc1a8ac95a68475847733af9a7dd5256133466d3870ac2d934658eba007df6ca8724acbd0de09e6c9b303a2c7824416ff4af85ce1837645388693ea3a215c5e81e1e3898bc082cfbf3d657b7eaab7c27d5ffab40f3aae1b4d66de7fbc0bf2202af6de30cfb14786c3928a9279240f23a13135e1ffea1c350fb5cade07d2d8e78c93735a372b4c134aa117c431a69a205e365104ed0095d3e919bbc9cf0b9cdd3dd309505a789c0a9e0d2ed324a3a446f10aa4409b66da396028850be616c29e843e2a410b0b689944d358e5b8333468273c0dc30930f10b86829e9f45dc18ecf4edeaf3f3a95565d18c3b267e5b66cf065f1ba43ba9cde656bc5f193d4a27a229acb52bc3877892ba86a313de8b3c9c9d0952267a3134e63bf40fa1708c2a6c897c76d314c189e95e8a3e11369296b20d6661aa2eff987cba68d3b73060f13105729d4e9520e8cfaf4e5e3425c31fc749286f22efa58e3ba20913518985ae836385e7d463fd9c57e6a296de078efefe6020272faeac8dde67d8954cd282bd78ca87da6382dc55ddb8be88140cc52ddf3e4a1771f50ebaf520c5754fb3a09a6b132399025bc0ca6879014832e96b3ce95e5a8d10f0d568f505f86fe2e53e4fe55696eeb74b26675dcec359329bde72cfb2512f5b0c7324e5720b84abb3f8185316503c0850f17820192ea6ce819e914aa717ffa4c8df2e9ca039a227269d373fa168f5dbccabb320ee2e03fef2f32b46131992408bb3ec58c3e132229dff938d24ac6f05dbc3569cd6088496923da275fc0b96fb7f8374ab01f842fe9210af122aa4ade5a565f39e4c9f6d9ad046ba38e85645233db2dfa2c62b7eddad64400510d2e1ac7101b08ff76695d02ce04ab852351447dcbb097a37c2e5f489a4146102678053902ffd2d84cf5f75b75da2131a58ae0d88523beb296f0b3c727bf461845a02a0e0a611ca19250058886f8525b652ec02782b6857d626f7897c238336f5c46de351c2355f0294507e827cf0dd365fd6b3dcbe7770640aafc667a6111443c27634abcf78e11204b12701cacdf3d61f4d9171b384a746082253939bf77ebd14739b54edcc084e628b1d3f581e99843555c32bc041a3b9d1a915584dbe400626cd885df52e24a8737710f6d28a780d29c4b4e75dc0da9f29562b81ed0689fe449c9eee2cb151b2576ac04aff552f1f6f2561d07a086ba090ff4326bfafdcb06efad674bb12e9d6ce2faabbea729ff61eb5706c712c2da4a3d7e5efb6b2f403eafef4ffc4760350ec9e20eac8afde5715ca86f99642473a700a64a467e69d1b6d54f3b083e0c130e31041a018e435574bb2fa740b6773ef6981a3caeebd3125e3c627c59018907f10662b9f7f7f44286ad6ef72b4d0f35eb00f53fbfc262907320f9616659b61360af92ad036133aa430a14df8b38cb0ab40cc2c27e37bacb1f51476921aad91f4acb345a7b4706a1b544f9dc95c837cadf22b7b838a81f055a345eeb26fcf119baa0656f3452adaac2cd810756c9e03acbdb15368080ac64faeeb5aabeee2be535c5495fa02c8475b1157e5ea318d5c3ee2fdddfe6734339417cd4ac0a82dd97f157f69f405a820276807e1f9f712e350a9fc26b6310d81a5b6e85c33821808e00963dfb46405a53861c6f2d9d15d9ac2cb2dfca481e40ba6cb0274df9439e655e702a3f45a23304501c166863397a08beef4d1ef0ef50a81b8fdd38cd96d06fb77ba80fb7bb4d1d56b44a3de51ba5cfa322681e247811d052bb9177c61e5d3154bc06366f687c0bf31d2f48d2d95e50fca01b07c42cdebca9eca608bcc965d12e94d36c578771fbd1b3ce3d76fab93188124427521d7e07e7edb079f98240ad98739360842745f265e04b01321334dafeb708158cc75531443b2b503857ccc7531dc25c183417b84039e579f2621fc1b6ee06d061aac7aa20d89687697fbc98cdeda043a926976705e86e6fef56968286595f8bc627e3c650e785832e82311476c027d4f9cb796cc3c548feef9b5375b742cb279c2e54e4a31c40e4e616c5aded4197e4b0bd62d8f69e86f2862b103601322495853ba4343828fc95ccb0ba21747df95b007fb0313391bb248127941ecad253440aa80b727053fffaf99efd0261331578585bcb86c4281763a4ef440ce2fcfd19a1fb7e3828eb76428eb83359c42d6e31718e019ba04563c1935d1f89fc6857d4c8fef96d6b2de2e8d81425e75a97fac6130c5999f5317387a968f7f61c156b42a989713a4371eb4a8088895560eb69a3e8e63ca3c6de85effe0364754f3c741872649d70a2c393c78cd9c0ebc6bd562ec46424ccf3b6135e560a029d83c9ff73ef1998489f4839bfa2f4285e2f41b3d2c533092595d030ef08986b67db9f6bfa5555a5c86d3106e4782ce2dd5c85d589b2971aa9918ce40816f326efadb9fc39791ee53437a708ea07f56465c749f212b107833171ae67b29a210c8bd0461044e2cdcb25f1c1f32f6cb28eebc2793b3548dfb034a68e6559fc4dbf4f818426482ee64c96041c688937389cb54effe6d2c065ff25a5d426b9f581d8832770ccd274cbe8df0805e03afa027e5b32c4746505754b6c36de00d7c9ab1c2d5ccfc3bd68cff5c4139c5865608d8a9114386f00be6227c811380014111a746dfcd1b82a1e1ba7f1e947c5abac28b51c1a570fae9b69419306084d2ff9a68169e047a0e1cb95d46e28ed59431ea266d676d6e1cedd0800bae161a10ec897255f04bcaf0a3cea9343b7cb474733338d4a912ea1a61029f5dcd36db5f8e9811097cef9ed9368af0c4c2c0c8708bce783adcb08fecdfc683936031380a29021dace5aec5824194b3365a4b7204fbb9aa15ca15d1da26d629f86359a797d862d043e7b208ec5a5874b47c2f7a1d71dcab34eff110a6cc1aa7dc9f285f061286e77b51afe0c6df8181c8ac6ae1eb5bf8f0babf56cc400ba5a0ab14691dda2de66be560e931b51a3e924eb29ac5eb60be2830a61159f96e66914e516d9b04abe2f76615e6f1f73408b24272142266d618b9183e6fbaf6d458862cc20901351d53a4944f89d24af497e131034cf55735f5c6b02455a5f0dd819dc0a6173cf4b171807eeba81a251c9aaa3fb2d1be2bd125b2c8b85dcb38e09dcdfd0368592ba0bc73b11cb0c7b09e23cc573e2e0c3d250df3e9ded6ff2526738d49990a16cbc4b80b0cb5d0a94f1bc039b0a850b7d290bfe3e4d428b8e0925653355c71b1ab20b515cfeae795ef4ecad2ba8e2c7d4cf8cd7bf0cc83301e3981e23e6b15ee65f02587fa041113c8d188813c62bebfab9e4bfa0fc0d465442359dfc34f05e4295c7f2f726c7e168b1cf4cf65cb1e2de9f2b79ad08f205a124a502ce321287c49328eda90a8d8d6f45a18bfed2344e65a9556d6776492fde4145558f58c0e82128be2736a0bba00ce287189eb3db79fba3071c4493a503387fccf174030123017bd55d145e1cb82c33ae269bb9bdb3c510bef4c92f2027456c76669ad4824af1a622c2c5335a49ffb13def3aa74dfc090b2063ef0e36fdc8c03b0f1942761a6b7e52203cdf359d6449a0452ecf351ce7689561def2f4cde79d6db0c2fa54a9ef220a850059d9c1afc7efd23cc5698270acad2a13c413b047169d55c203e3de325ea15744ca385f6f775bd3ca8bc5667590c5612a58e42a97a43b3f577300ae13fa132d761d098517394795afb66bc2a0b53e7ced6ebfd2968cf788f1b6542b293331e01a8cd8127079b51bf3f0af7ca18cfebf013037c3f52c927b70f61660c4b9431b8a4297cf2657c9078d4845d5ffc1f71fa426dd07d1ac0765a352305370b05629f22cf859a8aa934fff1f5a4cec0f153446aa2c21e92848e83fb7023e7066885b8dc4478d6ff8fcdf7eba6aa09e10d666002ea1ea58681ef504dff3b3c0e9ea23f6596f6127f5eac284c58813e69bb633c274ba8c3ebfb7e89445855d779b9fe88d6b56add26d2883bfe863495f7a85c919f72402ff860a86a6c460b083ffdf449d02bc339826fcf52d04dafa2fefacf652b6e8a3d04d9b53d764d14b4ec3fbd269d62d9a56cbb16abf71f03e02a84c1325e1ba9b8ca05256efcd344b343b2f8de2c0677664ccc65b2eb80cf947389f34abbe21cee4897d5fceacb12a41892ce9d09691943c496363618c57fe46fec7be55a0a7070320d699f16b3367370e746cc6f5c2581828d7ded6fb3dd64d2b5f95aef26db160392ddbba1500d7aafe981b636d7eab11b5770cb8873a003b7a848295fe31efb7f10f8e4a4133c36d409f42591b989789c6c4ac9d97410bc73f235860deb4ddfaf303ce7ac8e3fe0c94d6f613dcbf68a96aae1ed6232a8aba578d21b729eeeed157ed646c86261424495486bb5dfd3deea7e36a5614b4276ba0aa09a3810755b2effe31d7d8606e942c0b74ff1d7e41c3b527fdbdbeb718cc94eb0c5c07d503ef88687d1d019267894ec03de1e63abaa256daf9f614417077b46737448ac7a39b4a83b5a925767a5f7ac0f49acae8bb4182587642c343b0ea684d03aac1c117c218f85d26c3913c45255aa36c34d2b3affd7eba8a1aa907330254cd55e9fc16ff50d67507fab4ac929d249b0a9cc9f7ebcf04ee495bd7c2daba38a119f6ee9fc95e12638b84e62522f159da8f0a6defe9b7d2fc5a376d73531da650438da384bec345135133422b84bbd5884fc1e1d57d3483cad42b186f55a48bd4e3b9b32606da4efccf54e50bedce590a6cc9f4b61b11e2e81af8b2c476632ba241aee64ce220216dbc06573473628645698452a7aa018862ac6a0e74ff9df901fdae8c2dbe7f90a4aecb933c9e894213c12d725c943963a845630c08b96f9e2f8e21c25109c4f4952274c6825e278fbf43056ee9241aee3f42246a6e7e499d9d706be19d7d8d543fb293748bbe3c399181eac9084db6e6e88bb8280c1206f012194d868be5e1022f8c04e52b798c544cba40555f202f7a77094dc41a51305fe5ec98e052a29d949caf6af125433b4227c1b0008473367df815675d5e789f3f5eec81ab2b797dc356cbffb243abc1412dc641ff536278bbc5aa13cfa6cd42a38c95cfea87cd50f25ec5fe05ebfef834e8a95677d60e12d408256c042382aa188552358e0cb7fc374ab9f985a83f7c73f1f1497769a88e43d7655a91930cb581aeb41941ae1c19e0c0f7cf83a4410ceae8adf45da8c372b4d3e39c8f416fba328cd699b7d11ed114636b4dd422fa0e109be3ceb0e32c3ad3ab9520151bdf4f7d79477c3cadb5c7804146421695f46f4b1c95371c8ae9a6f0a5d75a264103c7a7440cd53e888aa2a419ea9072467d318f985389d3e98b706f1797ce8a23bc486a2d7abfd0aff84f6073c89391595b9f5e67c71a5bb3f6ee9ee12ea74773c8be6400afe706a4790f44c1385744c7a456a2f72f2bea27092ddeb8ac029baf8f1d2c1475bec98c8bbe31b5db3f720787fd5f7d81bc20faa91375728dc0e915ab4cd5b8865a4d23588ecd5fd02ca502d763424a2ff42c010665b96f4cfaaa0a7e64d159602b3168dc8424b7523662ea5513fcc6f2be82e15e628177cc765d6f2de9675cdd324865bad91d971b799558d08de4b1da8f31d76bb7a12d812a796340732ec259a5821a39449602ebefd3192ccc0927055ef51642daddf33a3c729cb5dc3617bc47b8c725e4c24b7ab4147610230fff3a34290147c5ec10f4465c862b58a97a0bb6531285475aee8177b1e8164c822a6daea932c8070b6867a2b65636ed3019944e312fdcdc821fe5c4c13c158cce1f210a828bc7a770e4bbb4382652099106385ed00ab525a1e0fbf825a6807de7df43cfe668d95d41e12b0ab4f453a4e6b0cd8d0007b9fdc0991603e39512dfc9aa373d67ddb930e81fbd1d1bf33dc76bd0d9b78913bd35d00ead7c4043919dfe59a625d738714656fa2fb3057990016f46337996e95f319a564868c09c2bbfea9006fa1166290e17acd091db3f64cd5e598e4b05f8906e1e3f1c14d4e32678e8d2b73038ca0a3efbbb445a5de2fdd64dbdcdf7bfa939637d2b2059931a5dc46ce1b8a96cedab8e475e281c989fc7a90c8c8aabd5fc67610c085611c6419f6ecdeafb7b27e13922091a9100e86e17474cb3582a7a142ed2435a76b4e5d174848ce69b58c4e26bd1ba5c99e046a6b493d7198246cda65e7763ae5641632bd7a22f4f1d2f2edf4724e4376c242451addbc863cbcbef25130683dfef10f579498d361e0b257180ea28438ffa2f24292d17b55c76f227f1eebafcb54afa90ff05ade411a770ea590bdd0ccd15c510d9ff3103c63f8dd04fe0b15042a77ef0b351742a8cc2b8efdd83d398bdb598a6954f351d19fffad6bbe555500b0093b1ef247609dcef859429ab16bff4c8cb70ac512a3b4014f4ab09a7e2e24aab43970e25254045ad5937082dccb088018e5b620e3ec60052513ab1f84af2debacee6640d8b19d2d74cabc5ad278a42675b1c3c0365175f35cf66d2e3dfa8841cbae09cd67cfbb99f48d0c16261cbbcc074cf0811c35f5949fee88069b3c5ee6d70a1abe2eac031e144c41253903fc91eba039e4bafc5959a3b9c2028f00368dd4c815563c011fb7c4fc454415d13a791aa9700682f25b284176402ccace59202c3d1746aeec835dd5ba8a176297bb8f67ccc673ec2335fe6cc579602612f5584f846a103b3bcdbcb087653a6b2c7b729d7334d6196cb0d4a0f55a1be1ee2d0061381ae8606094909cb0bc2ce33552c0e2b4a83aa7980e6657c56e7a4cbbd3a5f93143c92ef8102662e4fa1d1d0c6dc67c2acc2666fe7006eaca7a2416294b492b064142c195fe3398f08f1fdf6e22451efa28d6dc3b993b6f954d7b51905b63da090d3daf78b8e89388021f7e32e93fde2e8c3394ad6f64b79211322eb8da11c7d16bea5313ebb9c00ae17a905075b196de929bd833905d0ce3eb04bf0d4415e14b692e46638a423deb1cbf828bf45bf4b4718dc5dec9d19203ec616fb49365276f37b3406d1357fd5028d86cb6b88267921a6c2242f6a5b8749f100098284ac385352d1ef8de0594b6d27844c46edce2dca1beca78519e434afbda25036aa2852165b21eb542da8361de8c89629bf97ab23df5d0ebcf6f7be41bea502bd6bbf2076e98e82b0ba2669087f3b487b497a184b2a6e0f4ec8db336103c45c03bfb83db417eab9488455469277f628c4f2f16f5150def486db17a00dbc7abb15276fe944032e4776e072c868cb77c34cb444064af8b8720e697f7ae314674d8063aa7263eab47b0abbfd19f9935a1e5643aa38ddcda3192a057db4bfc07a8dca0966f2504403c7e88222bb9b5192657e8521717770798f25c99e25a23a96f6c9a94cb1862158e526f081dfa43f96484eae3b73148764d3380e0c8fb8c4e33091734cc8b0af78656c472103d04d41202292985d9936feed85ebda1c9b06345db8f251ecc653af8cea076ec0fcfa78e99439a34855e09d0245c8be14719cb74aba74a7b4d24a11c4ed62c9ff49dbd4851af16cb8ed54811248dfa95c78c8bcd39d4deab0b6b852f81e11417ed2d8d91db011e47ea8c1be18dcf55061f7775f8c788c0a25a212169ddd8ab8d667cdc151cfe171e29445e0eea341f564b15098f7d6d6d7b08076b8d876ae5623c0a2f948adf27185152e8f51065ee80064f0126316a8e9ea10a75e1521d1299bf890fdf07f91faa4c9b8fbe0dce9ea7cb9c62fa2bbf2375f510359e90a10d5bd414e88c63bb189dd224d8b8ece29748a91d6583c210feba335c5996b5bfc02b66fd1731c72461371943015f6ce6d2118bcfd3585bc0b9e61d687efbc2f762655e4651c5a8904e3f10136fe5b9ff38b6d43452e723e85bfb136cf3c526c470c7840a9180cd25e1dac1e7b6887b17e1a022b507d838695a03965f2b09d61481c0882c05a3c633f4c21ba838cf09478f6093c72841257d4c309e597a2ed3a97fee605a9c16328c07eaf0ff949165c903da4168289ec78e6326c725a8b189a798abc16649fc5f6f45d841d28645437024489ed3ce2fde9b55b670398af9e04570a6a5055295709530c0b33edc90fda12b7311833e7aaa3b6c0e045c71fe36f437de7cd23c9ed5d44fc3f49429bf891ba31cce377d0d51896e37ca1861fab02731135f2f5d72372ce75c70683425f8f5aadc4b7d3555a74488cbe2396114d7dc690e20d917d2bdfa8c7db4e6c7aa7f90516f0e04807e41ef00e7226ab19fec7249a867ec45ff1f296dd40e04a857595b8ef787dd1cd49ebef9d2b954f7606ed552a136e2b06558b5ccc0c489f0e6e16d7f5b22bfbf267171515faa34cfd175dc81a922abef1e79107430caef8d7ddcb20b1673b379f4cc1a1b6a2f166713fcded8894d5c4663676d56474272fe0c123f3c55a5124868c1f3cd45f437da020393002ce138892e28346e6b7a72bec91a57832c9d3777d5c1890359485135c13364b04c1af9496683a9750e18521be85724bbee947898e15966d703cb208b53e89e4c9a2fd8ce9cd2853ada44774eaf949abb043f7a04e5d69ff70f2636f171f8744b846b579631a88df4116505deed070f40721b0170e19f302db53c6af60529d27844b6b5dc2d66716e90b31bccebe4cf783e07df6f93fba5d5f7e3158f39811251d87d54a4591ce37b61de9035ef7322a92040efc742e8c965c0a76d99a48414c245c393081f52cea4cf02dafc8a0a5f516ad704fdbfc923efc35361ed01fd7ab1010a07a52ac90da0b724bdb068d29e2c87fd0d6cf1c1cec09d2d4d509c79defb26680b477733249c71395ccae680450814e4bae17751f1d6c67c68bb18c58246f59abe2630b62512c781027e651ce9e034e3f821dc3c42e7a4dc55785ac142806ceb44491ccd40bdc36e03f21521e8588cddd2db497fd4f2212d27c71bf9a2f5460987f36d91fadc38e288435e2ebfeca3af83317265be24952c3abfc74f9a8c77700898e92c22e66bfc5da1f0918b528c753e627b41b1cb5fed444d319eed7209c96cc66ae46e0f87955cda07f09bbc654a44845e815a7787ce6e618f3712448fbe567d35f67a6bdf91bd83182fd192694f446ccf8980e2d3c14de12bdd14bae175b33200c3566e85bbf6aecdb98d8480b1c506b941319bb3e74cd55d226dcd7c5952ab8121230a9da228e71d4b6ffd8239fd1240ce416a79644ad61804bd9d376994b6885c56cbe85f69cf2e2bd907b7c546c16a203a1294b350a8427d23cc765fd55b872f8ccd1871852e2a38014ffc74cc87a63031088b52001e2a1997a3bbd036cc9d5b4b04d6ceeee40aef23683b3464e0f6eb6450ae092adc723b0dc5891987ad557d564147bb0a97f013817d3a4aa54af20f1f8d78ac091752c872ac9fbc19c9e8e2d24e1a23123577adbbebc5ed6f2679086dc659272bfb1cf0ebe029c28a39f8d2cde5b84a032fcccddd32427d066b7efbbb9356e200b9e7e67a48c28abb6bb61035a864fb0a889c8365b50237cc13c42d073f29a14abc4204a1a78b52d9f98bac8a23089cf5813c33270a2c90efacdff2d498b7326054199ee8281e0a4b952ce14d9e6d826c3dd67894997bea1861cd617722e6c261d39fbc01098342c1a7237b1107946ec92d5ce909a724d700f30eeb86dfa4ef4b14018bb80283ac7507fcea25dbe8498e6eb422f21fa8f922cf85fa5d4e746812bbf35d8e592e03147f90775a0857dc12cdc08d4c904af69b823586bd2049b92b758b6fbaa811e390e4f509cb4542824dd012df1a2eaccd3b356e26ec91e50a127fe0f5da741b40729d6f60c230f30569ad9f849f028c650db9b1f52469b68f51e6a3e90923eac0d19f5fb7f098434cfa0e533f35ae1144bc0cb8bef964c45b3321928b13ef885789718715ae4a19d673b18396f44db49a6193a06f313f238160209df45a9cae6ac43547fc758705574b2f2c683800965d0758072e8592c81e73ecfde392271c6a03b79c3f5827ff9d6c37d68e7fe31ce0e3c56743dfabccd34609e0c19b3edb2afd24eff2ba21d668cd11cfc6a4c01209779f974b4b7159340d8d6cee72fc050334d3fab2e6d7ce19dd0fc3d20fa213198b7b95911515487e2caf15b4a71fa936111c543559fd367ea15fbe01cad5df234c7e60885687aade44fe352c4802eec1c64658f5b9cbd7ee74faf84644a1d685c0e6541fbcd9d054093ecf2499920c3b93cc30011edf16a05f5df9dc9733d5123a1fd441b2b96d7b16199d42f2645c978de536f51d07d4b5791ece400633548bbe75c5aa1dde8d5304b85cf32322b75e8633a40bd9e255743726543b53c793008780345db80e7a0e41fa656194982309c362f8e54fb8bda9d968f474269da192c188a8485ae3f3c86c3e095e8815b5cda95fa4e88e4c9c2b5dd83668d00f8a7ffa2545dce0fe40912b894180e8b5a134c75c121906f4bdbc1e6bab80bb8d8a1b621882e048a02b1e6d85d7b8fbe0a312750da0eead04ee75189e2687ec78e4abe63ad910cd812a8500689b1db287078742fa343f89ee4427c3357682a86104c5c8d42d86c8c23eed4cec3053843695b1a79e602427d5e7a97f05cc4574740b9cfaa181b9814002bc5f2a3758c90b4c9918e642b637371bedfb40c9366e36c9b7f4fecedb533eac5205679f25d77f8bec0583c70d519568bd42f8ecf67a54711bfda300bf4e0e07892fd71b81ed8f4ef12bdc3bff956d2d69f569bd648dcc401e84a0d677817ac8d26c8178da3b035f44d27bec19727a5c3c188e18695261ebc86aa40a2864d9fdb909a707dafa740801a671504ccaa1d34c83685504e51c2c73e5f142c632d83de02831828ba34d602762c4cba226e72d6b2336831a101caf3e8c93606e9e6b2b47696328fb0a1f5c4c44ee31f3e632cd1e39823a2c84dd429f7f8d3f945949907635cd961c7290241b883c7bb2aaf2923cd15a0b4242a606499d26046b32a1567a32be8a32bcee25feaed03ec574988c8e4e7809904fbde45073bbbcbaf6d0a3142e89606718687695194d72dbc41294d5a4b5dd480bb8168ce8777122f98df13761d3b03debf01ab757c2ff06ff177869d806a94ec4911ead20923054cd37a2c51bf448b9d09f1fe37455d43c326e8ea6ddf9fef9934a7dbf9e574ebf0795cce91575d4f9d690c4164f73f2df7980ad321e13f10c9e8384069ef3fbbd5cccfb757112929166f93b9a4978b9d395d787c42f5100599d99485f9d4626e8152f78a254aa4287448c05479969fa1cc30a65a86b3afa8f3f13aaf4fa146c5b1fd543051df2bb5033e99873f7b6d8b6c3a37c9603c3489c87b640ccabaf3d4a7ecfb59a10370d88bc2afe1b6d09f34fd28332f15e3b6a703e992dc27fbeedaa827605bd69493d4bb5ec497b4ce7229bcda565dd5fb71b850091314210a532149a256dfb453adec627c38971e34d9916bc9b027071742a56dfaebb18e562ab117752f2f61f0af3293ddfa4267c3bc05b89e8668c46ac013aa1342052fe839cf2a5dc844f1519b5e9b525e9b73ba87054f6ab8ac6be98a2643676ba5a761ec26aee333f97604065d0f187d0506c28a48c720ebf8fe585a7dd08cf07f7b9f0751a1a1cc824048b068d5ec333a704dcb517ebb8487a0098dfc9238e28958156ff1e7fd463bf17735cd2cbce83be8fba6d24b539bb0b879128ab80d70251964b0d483fd7a6a128b26e7eeb9db103a4c8f2442aebdeb80794f347c0cd2ad0fad8ed58b9a28989300a99dae6d87dc81c681ba3024839b28f5844824fe6729bdbbade32c9217cbf12002315b39e00e06f0168293c6446bc718a38e818294dc5a4bc9ecab3c804dd41a30a821d70ec5fe607a39c7507ec5ceedf0e0ce3cee39f0908fbdc0cbc5aca6899c2af21ba1fc39937282b12dda6e4b2db469df6f26b729a2a840a19d94f684bc989c91187a8d280bbcaf9ed702ad0513afd31ab0290875ba025d64c252a5c11c49fa6a154581987f3c4a2ad475b63fe57832f34631a77a208f1e9188ac747123571f94e8d18210d586932af6634a43df1e7063fdb190bc8e86f5d94447dfc709e255d94dbb6ad988c540fed4b95a9cee468cef7ac2ba9bdd699cd88f3c8435a51ba9a8006595ac4cac3a794f9f55bd4adaa41674c6d214ba6d25a0895174d6d39c35e9503da102879a3284dd63e1d4cb6733793aaf79239f45dfac566fe2470a646c7441e3edfa6a801f9ff8f87ae5945dfe621a9c3bff622691bc4526cde278a51c34c033e45043bffb216ab5a5021e1880399ce4765798e376a4d20947c16c4b36c8a1cc7592fcf8c04926032d138dc0084b7b6714be130d7fbb21130401c091ae91b9cd4a889375a3cf16582f79b97cdee54bf73d8073675caef16bd5036f212efdbce0dc049c5f8895da54904d441695b131300a336e63794370a5ed63e67ee3a8725d506fbbb96001bf072f576a537e195e18db085162fafa06e5044503c5951a9316368624e70d66b599fcb7575a69f65df4d77af60192d33135ef16fd780d23e39df2b90f8c449948e50f8306b7f1f273b98b859f900b5be9b288f63cfde984006882315cae436752343e806a6abe8b2a745acde3fc72a91777f2753f3d16896aa39b7612fb3f0fd9c4b68f2bcebc869845e0be074c7d5a7b1f9dc1dd341d0c541bdfea93c82ae9d6a8f3196f9e665a43d349c57df6d9a66e36853477f6245f34e7bc4894a9a5dd9843b654165e315990f4eeebffab972a2a51f2a6f21f752132b791d6d9ba3395ca4636e82a0a6666156473aeab3eee2621dac19014788dc8189bc01c006849a85b4e3d7ab7a850e0140f5e52b50a78cf4eceda752103a62c30538a8d83296f24aef155b6ad3c7e32858445ad45774e608b13a01633d8764e6a30b083c4b09c0018722e6aaca6e97e2f99ad80735fc6cfe144dd62c553c0cf59849ea7dd541f286c171265493f8505d227a5248cfa37b388cb1a36b89f9a90d9e0b9c868f082a1dce91d2a6b1127bc36fe08cf46ac541a9c6772f70068b28154501f70cde8b43c9e7b0dc76699efc6dacc032e88b26222ea7cf1c3a163e981f259175c2ee4df9b9deafe6124d684cce9f32a6ebd94fb52ab81e6b17713134822079d317194692a25780f9cfd57a611c5f3a479578359360f1fd58276977d466b4d38c5fa81734635e1c8481c6e10fefa6473a6bf87aad4112953a3661a670ab23e77d7027543df7c04f437debf20ce43e5feb308a51d7900da79e291ba2d07f5a5892f0387158340a069febdc7141fbe78b52c59cdd9bde3eef335cf233ef43b1ac087daf7961dd2c8358b49bfc75dbf388ae51f971805f9d5a925f9bb7b93264fe2758d1143a6f6d2a2670e04c5cb71c4d36047bece1e7ef2ece18a155b82a48849e8300e1e4e98bc68e972e2c4f1f6c085ff55a2c38a2ee599a4145530396099ac9a427ac2d98cc793f1333db02484ecc66837f6cfbbaea50c569eebade885d0d2460827975e46cea0934b31c5a84f5ea52542b29bc920fd15f61b2fbbb8d5b090bc79401337c3df47f5615d900def55bd8bf8347d9c467f1811eb7307ace0abd067004602a34ca03ebca71222c44e89205bc7dd14ba89906bc014e32f7d885eca3d66b4c2cfbf501e7e2db389fa19a5bbb131aa383836f4aa41415518acfd00e3cbaf7c90d66d07083f2be032c428fd59491599dd6b8cded3d2cb25d7094e706c8598816e6eb7b6d8252dc493c7316397bb946d3e4b889917136a8ed25d66b3981a86f76cf9d7d4297895b1888af401d7c464bdfed9c2298a048775108f59819be9687d5a3ecde145b2e3cd3ff7c6b13cd0aef4987ccd688b06feb8500e4f0c3eed67e5fccc8f2e2edf0fc522c1b789746cb90cb2d3e5184c60d50b60dbad4b6440ca8cc269716d1c7448b59660d2fd68ebea7ef36b789f8e36db4a5def0d12eb2c441eb31ef58c3ea3d55f1347f710a2111f10a523f6a23e91223421a00dddcda8cd3943513cc6917cec503a52760e15aafaa0587778e14ef2572539cb1d46604de99bcf3a74df78cfb963d2311ef9fde784870d76bb68f4024ad0efdfa63f57b7b1f0044ce9a2470f070da28761298724c2a209f8c435a8009dc356cc2d1e509901bb1d01b2d564acfd28d62f309f5e7b200c1d7010266e12f8d4c1ae7c1db143a4b1a043ea37f8289fb944504a162ac4b16c57bfc595e7836cf2ba192135b380f2474ceafdb37fe89bd288ab58a5e4e43a39e178729a28e1660b384c014e1ddfeafcd832b59cee401d25de69c11127838b49047a9f4c77708aeff056d3f97e162e715baa9cd9479462dd91b8cf0359f7f6feab817c4ac9d15823c52ab7017806e1069ce6a8fe58828e5937d3c6af56f95175e3522f57d6127f52102e0490a914edf8eefa4b6f91d1667b22795aed9998966168a248d032d1de875db22854b66852e6c8013206ddc9142e593d345de05d3955ff809308b4c024d013e37ef81458fb4b78c91729646a438f85d99648d862cd992df0a9b3396713329bcc8877eb670caa6e31f6a733359fede316fb96083936367dfb78543383d65f0b4e915a9bf5c6f4a8e919a547a465059fa3da5dbb16aa3fcbab01581e86307de818459ff41ca86dd73809c21c0226e618ad4a2f2e79d5d1601aa020b9459a8ce15c29793d9ed692775f63f92e4033c38eefef676cde7dfa33a9fed098f249385312d2aca03a885845b3a48ac455f3202ff8cf1138d74c12520a09e149107adecb9d112776d61dc18716651533b98a556933da7c19ca39a6767dbafdf14019e75b1854339ed330f37d37af8776ba34887ea8eecabe7f6f2ac3685cc24be47f1e88f893aec45cd3f3d940a295ce1458d427cf83997fbafe84acb058a4e4854e436cf9635bdcf54545f4b89cdf46fee7616ba0d88d9d9befcccd32b6cf1661953935a1b55b9de32e59534fc6a4040fd03d3b071b02f7e1daa229f7e7f4763552028b3e45ebe4835f2d48685381e3017853125af185476b7e90257346a8e2651fc1ff5e4dbd4fb264c6b3ccf152fab5f9c3ce269dbf5412c0358cac615c3a447ace0daea24e3ff31934b4d9c0b36df58b4ec06c2e5038aecf366b6cb1bf33e65f54e53fd5c826d8278c1119776b6262db25665ad218f9116848386c1f2fb9464b7ad113e5528571111609ac402489b0bf07ac0e80e9a8c2572dcd9860980bf20859d3150a66e6f3596687173a3786ff98677278c8c0afe27ef673873ccc658514a06d67b7527f931d964c5d0291668dcacb4977e3318c5bf2b0067d3bc920d2ed0677c66bfd76bcf410fb569be7c76603c0558a505f7a75fad64540da8dda90176bceb745fce85118219110f1a8a25272d8cbdc78c9972ecdd78f7d8e6227e7270eb6bbaff615cd124b024b2e359e4c41f7fa663ee313a4410d042e568d012733c176820172167c0dd857782c0161397d5bbd09c854b5cc242e71cb0771ab967ea762f4188ea3ff77da0bb9271a767ed2e7bf78d05b777ea27569fe0e539da4786cec4c3cf7a0296e04642098fbb9a496e6f1ca8d945b12c7d9e19f0cb06742e73808d7ed561f0205a5404c4ff8ff842ebff5737ca00c755610f20beee647801f344d16458c9f6baa13cc82796b2e1335e5ba55faec92e9d3bd3b9aeb0bc3549afbe15c0fb8b1f14f1ad9be683f38f690a72fafa96f3d76ca9789c2a8a08fc1ceb71b9a60a205062dd35b7f1341504207efb4bd897a0e0741368ebed9e6df55373ab11d3646aa7e340fbbc5993747d31df7ce3cd5e36df4431d16b5cfe41d242b7976464aa95acf2e80957f4da30ef7514fdb445145c6542eedbfdca4f5f431c627ea5752f0c9c7c5811b981534d425798f9a6a0d79ef1b0c3dd66384bba813a04c061bdf57b3964508147d51686e153933c8df24b893ec6f05965f1ba731b02a1e394c328240262b8c685ab59073efb765b162cbde6c7b5fd3d9f487765a066a832ce16772ba236b98c82da2659b3e07d46fc5a911e10df8089d1a8cf3b961380d865160bc2930b265e0d52a830e19825fd112db594f50536e5ae020a2a42599feae8d1021fb1e1fec8c51ada689ecc2009e0dbf682c089a636e01db4d12d612d3620a7b3eb4e03ff412e6743cfd0435448390f2f3e0240fa9d2a208eaf775431637f0a743cb09c62e2b773c004378285a1d8b716e2d0263417a02522f0644af8460845e7aba65e1acfa091ae22d68a7d8c39ae2dab54bdb8f64ab6c9298139611e7b60074b5f4e2f222e5f218340b37cdc33b87f94046a14c49871b4ebcd3c003e3d50856dc7f75cbe5c57abf11d693789418272bdf0e27d31837f88c86e131da0b51fa0821b1c15b9558afa0b18c7cd54754b5a150401e68a6fa852a9565450565f57a44db1f4112804cd277a773e5d6386a2fc10179ebeb786c929d2822b8e54a926dd02e5c103ea515ac3bc120efde399c018d7a77913e5bf2c4ece472275a16341137ca0d9455c1e9e86cb8d5be23dc6c934da8b22eea5e6503bdc0b01975a519f7288ef01d36d1d93f037cab65005917a525191ced83456a35bc6f426165692ecd7d08cf1598289bbd5d2a827bcea4232c1e5cf5a3d189c46cb8add6e5aa7107ff02ef1998ee99b9bf5ebc316e1aff5f0f18498a86b79095e7b95ca003a04173872b84739e7d1bafa38501a1fa8ba2fe9c3b914e2139922673b98d82bff07b72afc2e222e954a6e99c3418b01e4c3a5cd2618c5daa3e00f7a245a9c189ae02d8fd2cf7797e4966f9b721af95cbb341daa8c9e2217bed595190ed18f10c7dc39b6cc1e52fc0346fa680495dfc5d46d1457ac5d313b177740fb186e0203ded3d2e9fc1f651bc3e576895ff3752539e6b87116ad0190df187160366ab90cf6b0a060cca485001754188d3201500995e6caf6dd078249fbb613897dad5054521a4ecff9cbd6239993e879917a7a01df8c38d2367d60eab2c2250ecd88ab5ac8d31986ad56f75d1f1feea9d74d976874f889a1b711a3e2603c25769d5d300c066da9cd0beebe87c30676f973b0b13e901002d92281b5f5a88a76f7afd8c013618acd6e5e555978d98ca3aa8cdc656d96385f8f9466c9a77d8f04ec9ad02a30b6adfe072141fbda420095302978364bc387d7b80afd91765d89af16c4d36a51caf39deb7badb48ad63916dd2103fd7d599d4a9e00cb0dfacfb154f68631f843341638ce356f9302ec355a333f839c504b3c91baecd717257b4eeae9826b53310c75a4e39a8a5aab758bea8a330c77626b6054c0ac144102b133aea97948cc3fc617ddc9dc1798d32c765f8384ff695ce804df30aa0503f2ea4fcc12fcbca41bbdef2305487bd65718006cc9e0b9dbdf628d06f80ca7ab249a6aeb7849f79f528f5fe8a0d2a36854b13b7b6e7aa88b6e48da7df75e4b16e74053678032112e14846aa0ec7740162dc7d29bbac2708faad80dee8e6f8e4c08a4b34c1d0f72cf20fb3538a4aca8a1972d8e8be6df5ea9ef1bab2a50736f4a30691afd4f9d978f27f83142c00808a3916ce21761f679cbe46f9eb61f73977517e6219f359698245c4f47ee507b63c849977e8ca1b04b31d49fc0390da9c840979170fb83117ed03f146fc76f7e6882b8ea7d2ef25588c15461de725d71670dae446685144fe9d72ff7f0b0f29f3d4b871d957e65e35604852d8c83f6e92a46a49064f8c8773fdb0bf3fced18ae5508e3f22a1f8f8cdee7419febd17cd785dd9663b86b617a620a601f9c7139885da1d8ed6fae06d96181fd59c78a0e984fd67ec61b3e5094fb9c06699e71cce84c393986c8fdf34c08b4f11317b3551d44b39635c4a9cf32feed0d18f7efd3ed08cf02b486e8d8e9069c9b37bb7c508eae16d8d4328bb412ccb31a2b981ddb2967ea9d71fcb2477f7d3951208809bb4f652ea4ab7324d4d3d11b2d8a321324e55b26c0f8358961c1db311f0e211f75bcb329cae18196c74920943e05e38c02fba00950083a2fc24385a2123c603f6067397d6b62c1853216062243dbea69c4ebaacd57fe25c115c19983ea3328843399c536d7fa1c60316911163e2bb1583ab6cbc466373c4835144ca893c21e2dfc0188970dfe2b9b7a29e2d254c5ce196b96d8ae4e7c4639d8b07fceb619fa0a4007db8d1783388f632f4ccc35e8e88c9da57b5aa704330b1c30ec71db298f015a1af4aa3e6e267a5e84a75c26dcd98f4dfc13b088e04f15adeed0de7dfa8af0746b91be4a986bf7ff1ae79b1d922732fc0820420561b8980fc605d5197ec65689a9699ae017f4907fc8ce965cf4b99c213709a7bc32271ec6f95a7ea4ef942f1825a21c213e0e135ab008b85f8e7c5d30196982a282685643b288181d4cea929c507451f954954244713c6256e5a5aca4acd3cf72bddefd61031b4ab428cbe5aee37c4498f30e2a1f4a708019fb9b543812954b2887b1028cafa1ea8c609d3810b0cd6895122f12007afe2f021c9893037127a4cb71c46c4baa96d77cf7c14808154fd10d004b3ae19d26172b855dc361c78d612bf6c240f54a5c1631ee919992695f6378e272905c49fd6d26c55e6c111cbfc6e8ef9cccb908587aeedb926679d9bfbc4ec77acadc6f27ed5de39a0081cdc7f61f492f57d8de252a9c8e2438cdabc99a63a5d7f5337154940a0801a41056e82c3a5d4567beda64ef91d3920daeb9142fe308d106ae3daf881e72ab49c8c7fe1f4decfb38f8336939a2f6d4bb6582a8d2f0980eeb96703ced4190c110dad71b0c96b23fffac2d229603c68477ddb48f614d3ead84a25bb24073435f237ac3b72774a2371003201273d5ddcf67fee0fe59fc959e21d484479153e3d21998cd1111496ba61f3213285824eb1028b60169a4936b69ee1ec940c3650e3f2ab89953b1cade3c79b682a3097dae50288fc235c15ed82a519b3bc640032a6f5d41f1767a73acf12e7149183833041d38345c20e9350a9e464d4a649930438dae690baa94d166f8d3cdfec1db1f1fbbcaae8f9b0c3e840f65e3e13ad563ef1da9eee58670138387f70503c6014bdb9c8ae0d20e44d90f323b7462faa661af0f137a22469fa82efb91aa43fd8a0bb3f348b6b678c9e8ccd382e936cfbf159f36b70cb73416af308b4c064350346adb9d8ca65906b55233f69582de37db02f39526810d3578e277709c37ae9234b0b7d9dec9b7008d1000a7c901aeb69a49c302eab72ba0c085da4117167503fd26df960d2065d0cfb05400593f9c7cb1506be94ca2cfef85dda4965635bf5ba188e3f7e314539fa25e8cdd12b06a78f10ea14788c717352b8d2ac19a9817978e47583ab8916dbbbdd52357822b57c00c032de4759409cbcd41a07d8dc0b14d954e8887ee0d8ef1edcf78f264dce448bd1c31dea3fa39f5d92e558bf71ce575e9779a4f96ebe4839de1a601e6d6a5619e6f36effc20ba3a242c000cfe56fcfebae590c8ee9ca6903fcd2be78d60a0f3e15176d74b6152eb504f605e2ab2a0319b299352c8373514062ab2189506f0215f300e104e70dcd44654c29a3ee78ce1fdd8d3df4362f40965ba6f9080220948b5182d1fc0f4d08fe882a522044c90564b874936fdd6e4f051f0eb74b36228edcf39c45a8c85ec5ee4d440f3edb29f42405e7f44af8595d3933f02b7e2762e0c4b23c550b74914134fa0be9524b02f58ca48efcbfce2b6aa4a250df7f83a1828ef52e2aea62f00d1f16f9612b237cfba0664b5289486e49fc2491c774348dedb423fe5de37447fc8a744a44d4825a26ee12f2d1863281c1d2d6333e4b18739ae952174852c71de129d06da9fefff6cc71ccb9b8bf9ebad3ba2ecd0964d2f0abcbd55c14d7fee55f2d899fb4b66d69c709c8e800930ee59a6c2dc2c3bf4870f60da6f1486f61f6915a067862b71d4d6aaf1f3ae8c4354e158706bd1efb5352ded0359346aeea25ffa3d80876232286cfa99c7f41e18322cb288f7e4ad8f6bb43e9a734dde16c4dd0e7f0de0a457ff2804045f4cda0229e11d97b8d87178260f53d216a0906b259a6b8d2d3e5e4ef57a658ad4c5b9b8dae4bd4d48061d24523573e130292cb70f15529294ee9b5dd98e657026283f93075d75ae6c1ebc1178be2a2f3f5dbdc62e709f417daad202c8d3128d4f0aa0a77c07440081bdcb7accfaa5c6689985b3676e25dd94ac7ba2c15b294e61a915dee801b20e7a9162391af55e921b0af6c0a7512573054816b70c9784bc2df393b2b10dcabebd7c451a2884440460cb7c51bde7dd53ecc138d2f37c0b7613537593959fe2022e032382de49a1fd2b07f7945cb0443300e49fe230f6fc2686e33c79ff85564eaa3a83855149ae9c09cfd805ef411241abe386194ecc68565c076dead89fd77353933a29e31b2a2938629d3768fb6c1e063e4e55f1d144b4b6a851bd7256153c5427ef69dd7f86b2342907847bab99b5fd27c29da68ce0d9bc6a685f4f7a39614ff4929de87774685db0896da0318b85c4e8f766282d28b21f19138f940a4dab29d020e24dd38bb0710933d1ffba763de995daf6d2c372454e1a90e80ea583e421f4c006dd33f7df3fbd9deb38e8480e6664f91502446066660adb65b93a6c0bc1cf49c476533e622647b5b10ae003830e7c6a3ff3457d73b32e51a0e051e693b684819928d3fd4e4e98af3188713e4f0b431a934b27e5ad4db23e40cc84d7183efb1808ba4a541f67777f8399675e3588fd54a4c1c04b97e2e9c2df69d1c8eca0a976e3bbd96959633a157da0b00121ac058970c941fc2cd1016a15f29b132264ad88da7f70c7aa02488fc604286973d05af0ff85e36d1db6e8a24f6ec6126454188c34a3cb5cb72f644d97536342f8494b7a3588c0f94f84c2f5e3093379281eefa7f7dcd78fbf311225a9befb11593af7c23447f7d98b75d946b37019c60946481999f1e8d6c65ea5949a4f40e987051fc6533ee220e805fb65a0806c82a215266e292943932055885a7db4a2ce729b659122bae28e25eb4d036ee45b8abdbdc67dd41bfadcb555dd7afc32b91b64282169c68eafe29d0661d1b9dc16933a28e5b1bb3647bb1315938a35a2a8abd77a89fc8d63925c287424b5bf5c8e9fc96a322d2653d771e22570966b964a3566fb13b7a11e9c14e941d6f242dbd534dab02a6d0a92ec8f5e35482de69c409366538b6db9e503eeb0f76c81e53bed1432a019924e1506972516cd4829aca568a376c58384c89ae2bb9f1158209433ef4122de3b0afb0b4bb0554fa4ef9d3f81b67ff82e13a6d48c07c86615b1bcf7875b4d3941d0d94d642f17cc583998b451572b91a75d85c26355f9ee4aa3225b2c85770d9286b947db5d08fb708271f8bc690b20ab8c550978406afcfa47b4b2c86d3460b2fc3d21665d5253cd54833e51d47e843a8715ae63e828388cf1fa87baf3c67226ae946091244e605497ccede39cfb9f2f6ae121916bc22f58c012f8bee3f7535160ed07e29b12edaf3f206af5519fba7e1fe1bb140b9ebb532d74039377dd28ab3790f20210584b0fbbb207b841222fc4b0968cab915ea208d1bb7b4889f805ef552caccd8e72dbd45f4f7de974a6cba3604624f695e7f1927079635f243fbcbf26c456e4e6508c08bcdcccc9354cf7bad0ad53aec65ff1685233040acb14dfa33755289c7e25a371df886129a490166f46160d82a45d771d1ca548224a2c3f6b5b61b8443e3a78ab5754489225af9bbc7642bf7867ec383deb0db40f0be3bf418221dec93317ba39c8c81d35e1170768fdbbe16c05fd2fa0dd419004cacec0f6fec6ec040b0f8c1fe6e344c71317fcd39c025aa405693707a929ab1a76f6238cd4ff6d2f4c6215e4383e9088d7717da16d5d9451ee1f972f80b270406f5ea2727e7cc07cfd379c961c42b212838baa9cb9531922e26c23aef866523a05fb2df276dcb5ef9a1c4fc24aa20a0465006cc99dea2828101520a879796b5987bb62e192e3a3a6b822d5fe9b2e803e6716b56bb3ce7913306ba66dbfedff0824d863c2c047e138dd2ef75fb1bbbe918423bef64e09a26b41a38fa2e2df062b30fad8f3c7acaff9da0beca2e20768c78464fdead430b74896491319239e142ea362515ff11e6009ee00494f88097e16137a17dcd12dd76e031da3b0b478f9344fcf67b03782fa5a862cda294701d855e5bc5c91feaed85e835a1e6e3e38891e9ad8b3f429d8bb94bd2e956d96f515f5347662944fa77c154ce3fc70c39c6f85e8cceb9c1ce52ac2cb0ab77b8269edbed4035aa89b31faa7cde08d6599395ad422c6736dd2d3401153627652aaf6c2d414db57613357715c309b25155053eba18f405128050b2966a63af1441aaeaa4e4ee8b0fdcd463f68991678c1b2767e02e0002adfd64a56f0d40c97e7ff86559e6fa875f08c12d1a70d414d038b0df4f1410efadc2ff090bea81ec7e1a17d83f9103c447947cd87a6dc463c6345976482b61d45b17f19ee694c1e47f9bf434a8c0332f3abd0dbe569697eb6a120f906de49b5054e75a7a98f72539fe6616f845f65619277e76a753760d550f6c8c49df2061e3699d02eabc7cd1f04b8af2ef934eab06820e8d545eba1a41aec1d31d9978a394279cb93a652d0251bfed82a84c6d368451b01d3dfab032a2af53115d601070d1bc7dff14746f0102634b7c74c5148341179b63e0bc951e8bda02f6389ffab801daee0737a8d3d1eff6c9c14c849506afac998f5fc1975dad4e4a9ee44aad0d997b7d44db554e0276f5e8a39aadacb5571e06e3ebfacf1f3b70170cf9cc17aa910f470021a9c260faec60fffdc7d8d80019d61ea79a0874ea8c76906c318ce9c5585951c0631810e9d7a4b0f4317df8d5d84759c6e51dee011c8b1b0c320f61c68ab010cf06b8a7188b1b4f00f9ded1b976bedcc54714d092a4d091cfde4557dbca988000c88e66004902cac8dae3057093a0811d3ded1c060de3859a91ef6a2e944aa34099d8b4951fc5df5e6688c9ca477c28dacbe81942fbe01a31321e7e06c7bfd3eaa14e41a88aa6870ec0e99190e34a9796f6fee51d8f821f66ea3fb8a40826cf02475d4014b6bc49e47423dc3671e3ebfc4fc8317bae2ba49ded084039cbdd1e561853e4e3a6c0ec7a0bcef643f0f25a23e227be13dadef34b823ab192bdfae177c2e67328f766f6baf8f4e9bfbfb6fcd04d16d67ea1c8fb9f323a6b20bbe5bbd187f3a0d3b0e54bb18bb18baa77b4420b69fb6578a598235c5b6bd1a7189bd4010694b3b30dfade4ab6f7e062601c116d952e4c9b92cd4bbf77464d2637f9b1d556e8e6c5644da190b05350533998ccc3a4dfd243695e8cd726c67a2ba22f51c1217506998bddbcc9f441c14a4175fb478956f55090d52418b8b91e765cde751c13c473fc774e6a313d000c8d40a375630ba24607d6ca70569d5c6320fde54584ef9e51ba3cbca28fafc3ad276c8decf497864d0f124e5c9d7c8c9f593f412ea71317b3dcfa6d3553bacd87c724f857e9e05150f8832345e43382ad9c7a71801e5eeef38b91edf827fc581cdd89a6c26d355812c36b22fd98bbb46f3dddaaf73b48c634b70c2b6f692468bedcfe194185af96a4a663d19d17c9ff3f42a32c8623f927c6b5926c5acde40fa65dca6f3902770720bf4a3f8f50be7cf3242a76fc65a28c962bf9045f08e0028c6576ea1b9a171a81d7625646f65fdf0c10fe5a3aa5475af40d97116a1f7751571ad36fd41fb49416fdad753587ca16b93f20c5fe36ecf1317feba08bbb0b2de79368e60b6f52ee0e928e36b721c8c635801a8146dce87c829467ab14a412b6db610b33c4799f9f5bc0fc4ce7cb721a3fd651f7aa4fbf94870d9a4d3adbe37abcfd1f05276cc866953901dfff843598fe35856381c29333b0518d3a641c2a79e41a94d17b89698734fe2a44ac9353311af06099f3c1d2c4b2178c4661a85fe60bc87c85f4361877e80725928904449a59fce113b6d8ad978448ceb2a673c07ae7f2fb405943f798f32907cd39f6941c30c0f396919afbcb35ec8045249f06a0b10d6ab0c32d105302e4d88ff0e4b7c3878ed8531a579cdd226bb2d4237901a20b65a917d03825598eee0275d4f5fc4adf3fc4765ab745dbb1e783baafda70e59cd8edc5b312801c3245e675d4bd0771cd555800cd647fbaa173e3731d85d3f26b3bda782bb817562f6658878840884b78a4e3ac2110896ef560487b136c558ff8e311807ac4b32d0eaf4ebce111df2c9fd3c0a52c8de6dfc68a48f13e5febbae36482db389b3f412a0b59d1d23fdf51a9132040d668966a42b49dad60c807169097487b4d285e94ad673557f4e9114aaa15a359ab217d8312fdf7cd69dae6a673fad303fdf2f7298b55305c7da01493a88eaa0fa55e6979068c723b565d7b7f71391e4c12aaab9f36eba1bc9fbffb86746ce75e0b99b600624c54ab9789eb333b353fabae09c720b754b6faf95a3dcbaa8a594bd111b85771df4842c7ac238e5644993b7a326f222dc7af5bb5007abc1271b11e28f3a268a45a3f8c2f70ff71fb78107e5276c84f344a4a9e193840d6a1c07f39b76b112402937d66965c7325aaf1dc387a92da348f6f745815a9a4ef7d8921c0a3d8a5c0f4ea74830817464e4ac29e41b2327072bccbc68046e75e9622910fef415161c3264f517f2e7f128d6c28470a8171eb543d8981ea96a7d394600182feea0088a1556a4f8d087ce5f7bc8ecdabf3dc90bd77c77b14a25b165042a7ddb68293f75cd705750a9761df5e15a24e98bfa8fed812a40e50a501e5f573d4f496fe68d8bf55da040214c1914047e58e6788dcdb56405e0c58f2aac690f267abad077a151870738a1f0c8e1b5c617bf70b1099b718eb01cfa0dd31c5f41d5b12817a1548c0e17ccf3a0d7d441120730e79d849bec27ed7f744f9a670a35e31a6ac8d0905d033d35cfb66eec8dfc4f568c6a5d2a8ea5e2346d05cd51e2c2cd890c775568c80d52ab4e6ff8080b3017c16f3e75d7419dc6ca6fef4992cb44164a2353c4ea0db92520d1b3b0b01f4e0fc95e4033ef9336c79dd22fef301935f547d742550650522abc77bb4e92908513197236bea42b39a768ceefe62f679b7e1c72d4f8c8b5a54ff27d4c9ab1d2382ac7ceafcd68107b0647f78acf12c55faaa5499c8b0e3f8300dde3d579e077ca43906052cfa06fe3a9c1868be23d5f7b713d0db90fcd12a64020c039bcfe5f9ee09a82a845e7ff8e055a4074b239ab89e9c68dc102fd635a32c7a577b1a9f31227ae5d416bf379f8f237d8946cd19b4fe06afb1aebe09f3c1d239e19844f63f011c17e86033aedf1557efa11acdae94ca088124b342b55c454ea7d161c4fe2b744a6c54957706cce888867047a7d9f8dc96b2b2744b6201e06a407484117fe065f6431d11ae3001b41d76ac5d6f7a4f92cb800b243335e8f4cbb60622e3bd41cd01bb450a6cbcf0c04b1ffffbf1d243ab99f58a753cd6893218e9152255c10e812f839a27c6b682eff8fadbd1a8a846171be205c027d43ea2ea12fb97b0b903683713a8cc7dfaa46071f5afaf3fbcb90eb7f4f468cc149871c5918c3bcb953ade8d2d59dae08f7b2178efe9a76fb2c70fe46d5eb15382c7d57cd67d9717be291ea77ae94f53751cbcc5a2ecbcb476bea73c6170d219a990f2a150ea302750b8f1fbbf830b2078bf4cc7cef4abc2557195fee53655b86906e46028d4d1b0109d375464d6f0cb0ab154824a808a3e9af74e95fe42ec91b394248a0604675761f9f4a5e045ce06069a5fc5bd624ac8a2173ff11f5a78e4c80cd04c13e41ea289c1ca9c4402f330712c66bb1acb63db37f9ac431fc7416389feb3b05ab12edae39db247282f6634907df930d22f91cd837ab95f99e66925b60601d95a0cd929f5d1dcc85e8a9e95016873e3645ad1911c1ed8cf592d72bbbe21f50fcd90630fe30ac8b42b9f420c9700d4fac0ac46573c4a60212a0e94c223bd459b729464d74fd3ec1f37e799cd87bb7b4be359f9b0644e40f7525f2868780106bc5d44fc458254fcd4770c8b604681a2d29f5d75a044411cd57e16ba1ef8e6637234fa936190e886d7ab9556597da53dec43525d904de4434ae526a9251c0071a754dd0d3e2e2c81c7e8a421cbad210f3bca5a7132a0f948a798879a4639c473a6e7e425de4bb30bcbe0aa90bc7ee4aaef792d038eb0d15cb4bebe67ac4ac17029b32cfe9957a61ea64e66e9130c71927218828dbffde9237567766e13bba1362aaf33aa533b1864ea09fff75d0330c9d46a504baeaf9c9c3acd54a1de935f500b0d2289c0048b433f00c81513208cf076fbb0cd513e94c643610830ada7d6d01f1865e691c3bf97b1b7e976eecccefb4e00b7ac4548bd1c9da46f57f71c00869a28e7f906a0ade708602ec7015f437ad56208ae6b5033fe7a026b5aac487880a4a7af7887c0bbc8842a66b410949f022717fb9c147da917bc91ebad26ee2e3023a1cbd16aacce3fab85f333a56c412eb578b671872f50a421e7eabb3739dd70c08dd88ffd0b9338db2e36e4681077e10e91cdb6f5e38d7c71776b4333c897c6ec0999d829c88d755848201476cf493052a651d1ea937076993ba9ef4f6e64140efcfe72937aa25d60e38c76b77e2094d2ec00730df6caf09f2f5f5c4448fa2597f2d2ca62f653a62ee764800b16866da10eed85949507aa3beb034067b06fc1aa4e57166fc6eb178235806bc377770539e42014aae70605600040bd49df2fe54172015d2abf15789423b8c9021ee1880291423a331eab5fe0214bae4d8483d43238301381a61ad87b59e910e18aaaf5accc08bbb37f627b31d9b6723ef2997038b502922208e0f1d1d52feb5233a0f5585f651bbbacd12350094d66b6c7b7651f68a41c5004f7cc23d44cd19dc4f829471b2f5adfaeba6992ad0951c4526c068ae6fde0ebe88c781970f71ca316a9bf47d7d3d103f91509e3e627c6480c84c532690aaf38e43d06acff09212408c52f4a96fac6a96c7a223c454de4073bc1b5d7014172d770710bcebddeaacf19d19f8cb3728f664efb373367b43cd418ed70bf7b1b3acdd6920d0b80b64b255a8ac01dbcf864ef2f536eca220501c21f79e18447e45b9e46f5e412c39e3f990ef63302c8e75154be20543ac9e50ddde858e5f8887ce260cbaea69fb35e2eb745ebd7ba35eb6f2b6ffd45332503b2bc91250731dc2c60c0a37a002a31094d5f84fdc2bf94c19a5ef370381b3c0590f1eb86f1f9a657b8eed7e15df3c55d0d3dfb412be818362626df93f0af2defb9079bdeb677dbcf64ae35840d248e90f0752e3157f913939a41240e67c1422a0a8444eeb2d92d24d2a2d470074d43ee639b10c5def3c0a85975c39c20318498289f72856 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/kzg_proof.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/kzg_proof.txt new file mode 100644 index 000000000..1b2152fc5 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/kzg_proof.txt @@ -0,0 +1 @@ +0x89d4fbb643360b23e174fc8c1c4aa693c9d7f8362de26340e52f412fa66a12b99a95fbc5ec0e4adf6d1eca04bee44a98 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/program_output.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/program_output.txt new file mode 100644 index 000000000..fd6260ac9 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/program_output.txt @@ -0,0 +1,13 @@ +2690652950887981092105487857662255296011626012752189016494932422592792782612 +318375726713628396893264960521216506727972386704433219654697727306535670624 +671070 +1721464161421942823712299887410666239101540954911342952807203342687235872339 +2590421891839256512113614983194993186457498815986333310670788206383913888162 +1 +4333048458755315272052456218951806007811933151167279260738 +4500201590935370788298697053067752428216731915353881504674 +1780270321746081097970276934354344672724838367048896540266648412014106432240 +267674272179767811046066001318052491587 +89018504356014354452939512097715104575 +0 +0 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/snos_output.json b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/snos_output.json new file mode 100644 index 000000000..cb694582b --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/snos_output.json @@ -0,0 +1,16 @@ +{ + "initial_root": "0x4EC6744B24853BDEC273225D76232DD0A342535816FFBD578CF8A5B3D1F2AE6", + "final_root": "0x7CC8FFD5D6BBF7ED250019167419B9176FC1591DBE514AD85CC32033E216235", + "prev_block_number": "0x9EF2F", + "new_block_number": "0x9EF30", + "prev_block_hash": "0x7fbecafb986506e1ec0d529a1a706b1ff810ec48cf71bde18825e111d1211ff", + "new_block_hash": "0x7160a589fd6005460fffcfc5c938de724fcfee72f30d0ea8bb8b54541f9ed46", + "os_program_hash": "0x5BA2078240F1585F96424C2D1EE48211DA3B3F9177BF2B9880B4FC91D59E9A2", + "starknet_os_config_hash": "0x5BA2078240F1585F96424C2D1EE48211DA3B3F9177BF2B9880B4FC91D59E9A2", + "use_kzg_da": "0x1", + "full_output": "0x0", + "messages_to_l1": [], + "messages_to_l2": [], + "contracts": [], + "classes": {} +} diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/source.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/source.txt new file mode 100644 index 000000000..dbfef12f1 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/source.txt @@ -0,0 +1 @@ +https://etherscan.io/tx/0x70741c778346767e8b630313de96fdeb068e8819b8a2d22871934a5fcaf2b888 \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/x_0.txt b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/x_0.txt new file mode 100644 index 000000000..51fe2d818 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/jobs/state_update_job/test_data/651056/x_0.txt @@ -0,0 +1 @@ +0x03dda9e9d1046d56eaf5aee53b6a0d3059dcce0712ddbd13081fcf0b36544efd \ No newline at end of file diff --git a/orchestrator/crates/orchestrator/src/tests/mod.rs b/orchestrator/crates/orchestrator/src/tests/mod.rs new file mode 100644 index 000000000..4f264304c --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/mod.rs @@ -0,0 +1,13 @@ +pub mod config; +pub mod database; + +pub mod jobs; + +pub mod server; + +pub mod queue; + +pub mod alerts; +pub mod common; +mod data_storage; +pub mod workers; diff --git a/orchestrator/crates/orchestrator/src/tests/queue/mod.rs b/orchestrator/crates/orchestrator/src/tests/queue/mod.rs new file mode 100644 index 000000000..9e89145a1 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/queue/mod.rs @@ -0,0 +1,7 @@ +use rstest::*; + +#[rstest] +#[tokio::test] +async fn test_queue() { + // TODO: write test case +} diff --git a/orchestrator/crates/orchestrator/src/tests/server/job_routes.rs b/orchestrator/crates/orchestrator/src/tests/server/job_routes.rs new file mode 100644 index 000000000..c2a3b0cc4 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/server/job_routes.rs @@ -0,0 +1,144 @@ +use core::panic; +use std::net::SocketAddr; +use std::sync::Arc; + +use chrono::{SubsecRound as _, Utc}; +use hyper::{Body, Request}; +use mockall::predicate::eq; +use rstest::*; +use starknet::providers::jsonrpc::HttpTransport; +use starknet::providers::JsonRpcClient; +use url::Url; +use utils::env_utils::get_env_var_or_panic; +use uuid::Uuid; + +use crate::config::Config; +use crate::jobs::job_handler_factory::mock_factory; +use crate::jobs::types::{ExternalId, JobItem, JobStatus, JobType, JobVerificationStatus}; +use crate::jobs::{Job, MockJob}; +use crate::queue::init_consumers; +use crate::tests::config::{ConfigType, TestConfigBuilder}; + +#[fixture] +async fn setup_trigger() -> (SocketAddr, Arc) { + dotenvy::from_filename("../.env.test").expect("Failed to load the .env.test file"); + + let madara_url = get_env_var_or_panic("MADARA_ORCHESTRATOR_MADARA_RPC_URL"); + let provider = JsonRpcClient::new(HttpTransport::new( + Url::parse(madara_url.as_str().to_string().as_str()).expect("Failed to parse URL"), + )); + + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .configure_starknet_client(provider.into()) + .configure_api_server(ConfigType::Actual) + .build() + .await; + + let addr = services.api_server_address.unwrap(); + let config = services.config; + (addr, config) +} + +#[tokio::test] +#[rstest] +async fn test_trigger_process_job(#[future] setup_trigger: (SocketAddr, Arc)) { + let (addr, config) = setup_trigger.await; + + let job_type = JobType::DataSubmission; + + let job_item = build_job_item(job_type.clone(), JobStatus::Created, 1); + let mut job_handler = MockJob::new(); + + job_handler.expect_process_job().times(1).returning(move |_, _| Ok("0xbeef".to_string())); + + config.database().create_job(job_item.clone()).await.unwrap(); + let job_id = job_item.clone().id; + + job_handler.expect_verification_polling_delay_seconds().return_const(1u64); + + let job_handler: Arc> = Arc::new(Box::new(job_handler)); + let ctx = mock_factory::get_job_handler_context(); + ctx.expect().times(1).with(eq(job_type)).returning(move |_| Arc::clone(&job_handler)); + + let client = hyper::Client::new(); + let response = client + .request( + Request::builder().uri(format!("http://{}/jobs/{}/process", addr, job_id)).body(Body::empty()).unwrap(), + ) + .await + .unwrap(); + + // assertions + if let Some(job_fetched) = config.database().get_job_by_id(job_id).await.unwrap() { + assert_eq!(response.status(), 200); + assert_eq!(job_fetched.id, job_item.id); + assert_eq!(job_fetched.version, 2); + assert_eq!(job_fetched.status, JobStatus::PendingVerification); + } else { + panic!("Could not get job from database") + } +} + +#[tokio::test] +#[rstest] +async fn test_trigger_verify_job(#[future] setup_trigger: (SocketAddr, Arc)) { + let (addr, config) = setup_trigger.await; + + let job_type = JobType::DataSubmission; + + let job_item = build_job_item(job_type.clone(), JobStatus::PendingVerification, 1); + let mut job_handler = MockJob::new(); + + job_handler.expect_verify_job().times(1).returning(move |_, _| Ok(JobVerificationStatus::Verified)); + + config.database().create_job(job_item.clone()).await.unwrap(); + let job_id = job_item.clone().id; + + job_handler.expect_verification_polling_delay_seconds().return_const(1u64); + + let job_handler: Arc> = Arc::new(Box::new(job_handler)); + let ctx = mock_factory::get_job_handler_context(); + ctx.expect().times(1).with(eq(job_type)).returning(move |_| Arc::clone(&job_handler)); + + let client = hyper::Client::new(); + let response = client + .request(Request::builder().uri(format!("http://{}/jobs/{}/verify", addr, job_id)).body(Body::empty()).unwrap()) + .await + .unwrap(); + + // assertions + if let Some(job_fetched) = config.database().get_job_by_id(job_id).await.unwrap() { + assert_eq!(response.status(), 200); + assert_eq!(job_fetched.id, job_item.id); + assert_eq!(job_fetched.version, 1); + assert_eq!(job_fetched.status, JobStatus::Completed); + } else { + panic!("Could not get job from database") + } +} + +#[rstest] +#[tokio::test] +async fn test_init_consumer() { + let services = TestConfigBuilder::new().build().await; + assert!(init_consumers(services.config).await.is_ok()); +} + +// Test Util Functions +// ========================================== + +pub fn build_job_item(job_type: JobType, job_status: JobStatus, internal_id: u64) -> JobItem { + JobItem { + id: Uuid::new_v4(), + internal_id: internal_id.to_string(), + job_type, + status: job_status, + external_id: ExternalId::Number(0), + metadata: Default::default(), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + } +} diff --git a/orchestrator/crates/orchestrator/src/tests/server/mod.rs b/orchestrator/crates/orchestrator/src/tests/server/mod.rs new file mode 100644 index 000000000..2a12b8488 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/server/mod.rs @@ -0,0 +1,39 @@ +pub mod job_routes; +use std::io::Read; + +use axum::http::StatusCode; +use hyper::body::Buf; +use hyper::{Body, Request}; +use rstest::*; + +use crate::queue::init_consumers; +use crate::tests::config::{ConfigType, TestConfigBuilder}; + +#[rstest] +#[tokio::test] +async fn test_health_endpoint() { + dotenvy::from_filename("../.env.test").expect("Failed to load the .env.test file"); + + let services = TestConfigBuilder::new().configure_api_server(ConfigType::Actual).build().await; + + let addr = services.api_server_address.unwrap(); + let client = hyper::Client::new(); + let response = client + .request(Request::builder().uri(format!("http://{}/health", addr)).body(Body::empty()).unwrap()) + .await + .unwrap(); + + assert_eq!(response.status().as_str(), StatusCode::OK.as_str()); + + let body = hyper::body::to_bytes(response.into_body()).await.unwrap(); + let mut buf = String::new(); + let res = body.reader().read_to_string(&mut buf).unwrap(); + assert_eq!(res, 2); +} + +#[rstest] +#[tokio::test] +async fn test_init_consumer() { + let services = TestConfigBuilder::new().build().await; + assert!(init_consumers(services.config).await.is_ok()); +} diff --git a/orchestrator/crates/orchestrator/src/tests/workers/mod.rs b/orchestrator/crates/orchestrator/src/tests/workers/mod.rs new file mode 100644 index 000000000..0a2f323d9 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/workers/mod.rs @@ -0,0 +1,6 @@ +#[cfg(test)] +pub mod proving; +#[cfg(test)] +pub mod snos; +mod update_state; +mod utils; diff --git a/orchestrator/crates/orchestrator/src/tests/workers/proving/mod.rs b/orchestrator/crates/orchestrator/src/tests/workers/proving/mod.rs new file mode 100644 index 000000000..753b957f7 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/workers/proving/mod.rs @@ -0,0 +1,115 @@ +use std::error::Error; +use std::sync::Arc; + +use da_client_interface::MockDaClient; +use httpmock::MockServer; +use mockall::predicate::eq; +use prover_client_interface::MockProverClient; +use rstest::rstest; +use settlement_client_interface::MockSettlementClient; +use starknet::providers::jsonrpc::HttpTransport; +use starknet::providers::JsonRpcClient; +use url::Url; + +use crate::database::MockDatabase; +use crate::jobs::job_handler_factory::mock_factory; +use crate::jobs::types::{JobItem, JobStatus, JobType}; +use crate::jobs::{Job, MockJob}; +use crate::queue::MockQueueProvider; +use crate::tests::config::TestConfigBuilder; +use crate::tests::workers::utils::{db_checks_proving_worker, get_job_by_mock_id_vector}; +use crate::workers::proving::ProvingWorker; + +#[rstest] +#[case(true)] +#[case(false)] +#[tokio::test] +async fn test_proving_worker(#[case] incomplete_runs: bool) -> Result<(), Box> { + use crate::queue::QueueType; + + let server = MockServer::start(); + let da_client = MockDaClient::new(); + let mut db = MockDatabase::new(); + let mut queue = MockQueueProvider::new(); + let prover_client = MockProverClient::new(); + let settlement_client = MockSettlementClient::new(); + + // Mocking Prover Client + + // Mocking the get_job_handler function. + let mut job_handler = MockJob::new(); + + // incomplete_runs : This refers to if there are incomplete runs in the previous job which is + // `snos_job` in this case. + if incomplete_runs { + let jobs_vec_temp: Vec = get_job_by_mock_id_vector(JobType::ProofCreation, JobStatus::Created, 5, 1) + .into_iter() + .filter(|val| val.internal_id != "3") + .collect(); + // Mocking db call for getting successful snos jobs + db.expect_get_jobs_without_successor() + .times(1) + .withf(|_, _, _| true) + .returning(move |_, _, _| Ok(jobs_vec_temp.clone())); + + let num_vec: Vec = vec![1, 2, 4, 5]; + + for i in num_vec { + db_checks_proving_worker(i, &mut db, &mut job_handler); + } + + // Queue function call simulations + queue + .expect_send_message_to_queue() + .times(4) + .returning(|_, _, _| Ok(())) + .withf(|queue, _payload, _delay| *queue == QueueType::ProvingJobProcessing); + } else { + for i in 1..5 + 1 { + db_checks_proving_worker(i, &mut db, &mut job_handler); + } + + // Mocking db call for getting successful snos jobs + db.expect_get_jobs_without_successor() + .times(1) + .withf(|_, _, _| true) + .returning(move |_, _, _| Ok(get_job_by_mock_id_vector(JobType::ProofCreation, JobStatus::Created, 5, 1))); + + // Queue function call simulations + queue + .expect_send_message_to_queue() + .times(5) + .returning(|_, _, _| Ok(())) + .withf(|queue, _payload, _delay| *queue == QueueType::ProvingJobProcessing); + } + + let provider = JsonRpcClient::new(HttpTransport::new( + Url::parse(format!("http://localhost:{}", server.port()).as_str()).expect("Failed to parse URL"), + )); + + let services = TestConfigBuilder::new() + .configure_starknet_client(provider.into()) + .configure_database(db.into()) + .configure_queue_client(queue.into()) + .configure_da_client(da_client.into()) + .configure_prover_client(prover_client.into()) + .configure_settlement_client(settlement_client.into()) + .build() + .await; + + let job_handler: Arc> = Arc::new(Box::new(job_handler)); + let ctx = mock_factory::get_job_handler_context(); + // Mocking the `get_job_handler` call in create_job function. + if incomplete_runs { + ctx.expect().times(4).with(eq(JobType::ProofCreation)).returning(move |_| Arc::clone(&job_handler)); + } else { + ctx.expect().times(5).with(eq(JobType::ProofCreation)).returning(move |_| Arc::clone(&job_handler)); + } + + let proving_worker = ProvingWorker {}; + proving_worker.run_worker(services.config).await?; + + Ok(()) +} + +use crate::workers::Worker; diff --git a/orchestrator/crates/orchestrator/src/tests/workers/snos/mod.rs b/orchestrator/crates/orchestrator/src/tests/workers/snos/mod.rs new file mode 100644 index 000000000..a7a8f9643 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/workers/snos/mod.rs @@ -0,0 +1,126 @@ +use std::error::Error; +use std::sync::Arc; + +use da_client_interface::MockDaClient; +use httpmock::MockServer; +use mockall::predicate::eq; +use rstest::rstest; +use serde_json::json; +use starknet::providers::jsonrpc::HttpTransport; +use starknet::providers::JsonRpcClient; +use url::Url; +use uuid::Uuid; + +use crate::database::MockDatabase; +use crate::jobs::job_handler_factory::mock_factory; +use crate::jobs::types::JobType; +use crate::jobs::{Job, MockJob}; +use crate::queue::MockQueueProvider; +use crate::tests::config::TestConfigBuilder; +use crate::tests::workers::utils::get_job_item_mock_by_id; +use crate::workers::snos::SnosWorker; +use crate::workers::Worker; + +#[rstest] +#[case(false)] +#[case(true)] +#[tokio::test] +async fn test_snos_worker(#[case] db_val: bool) -> Result<(), Box> { + use crate::queue::QueueType; + + let server = MockServer::start(); + let da_client = MockDaClient::new(); + let mut db = MockDatabase::new(); + let mut queue = MockQueueProvider::new(); + let start_job_index; + let block; + + // Mocking the get_job_handler function. + let mut job_handler = MockJob::new(); + + // Mocking db function expectations + if !db_val { + db.expect_get_latest_job_by_type().with(eq(JobType::SnosRun)).returning(|_| Ok(None)); + db.expect_get_job_by_internal_id_and_type() + .with(eq(0.to_string()), eq(JobType::SnosRun)) + .returning(|_, _| Ok(None)); + db.expect_get_job_by_internal_id_and_type() + .with(eq(1.to_string()), eq(JobType::SnosRun)) + .returning(|_, _| Ok(None)); + + start_job_index = 0; + block = 5; + } else { + let uuid_temp = Uuid::new_v4(); + db.expect_get_latest_job_by_type() + .with(eq(JobType::SnosRun)) + .returning(move |_| Ok(Some(get_job_item_mock_by_id("1".to_string(), uuid_temp)))); + db.expect_get_job_by_internal_id_and_type() + .with(eq(0.to_string()), eq(JobType::SnosRun)) + .returning(move |_, _| Ok(Some(get_job_item_mock_by_id("0".to_string(), uuid_temp)))); + db.expect_get_job_by_internal_id_and_type() + .with(eq(1.to_string()), eq(JobType::SnosRun)) + .returning(move |_, _| Ok(Some(get_job_item_mock_by_id("1".to_string(), uuid_temp)))); + + start_job_index = 2; + block = 6; + } + + for i in start_job_index..block + 1 { + // Getting jobs for check expectations + db.expect_get_job_by_internal_id_and_type() + .with(eq(i.clone().to_string()), eq(JobType::SnosRun)) + .returning(|_, _| Ok(None)); + + let uuid = Uuid::new_v4(); + + let job_item = get_job_item_mock_by_id(i.clone().to_string(), uuid); + let job_item_cloned = job_item.clone(); + job_handler.expect_create_job().returning(move |_, _, _| Ok(job_item_cloned.clone())); + + // creating jobs call expectations + db.expect_create_job() + .withf(move |item| item.internal_id == i.clone().to_string()) + .returning(move |_| Ok(job_item.clone())); + } + + let job_handler: Arc> = Arc::new(Box::new(job_handler)); + let ctx = mock_factory::get_job_handler_context(); + // Mocking the `get_job_handler` call in create_job function. + ctx.expect().with(eq(JobType::SnosRun)).returning(move |_| Arc::clone(&job_handler)); + + // Queue function call simulations + queue + .expect_send_message_to_queue() + .returning(|_, _, _| Ok(())) + .withf(|queue, _payload, _delay| *queue == QueueType::SnosJobProcessing); + + // mock block number (madara) : 5 + let rpc_response_block_number = block; + let response = json!({ "id": 1,"jsonrpc":"2.0","result": rpc_response_block_number }); + + let provider = JsonRpcClient::new(HttpTransport::new( + Url::parse(format!("http://localhost:{}", server.port()).as_str()).expect("Failed to parse URL"), + )); + + let services = TestConfigBuilder::new() + .configure_starknet_client(provider.into()) + .configure_database(db.into()) + .configure_queue_client(queue.into()) + .configure_da_client(da_client.into()) + .build() + .await; + + // mocking block call + let rpc_block_call_mock = server.mock(|when, then| { + when.path("/").body_includes("starknet_blockNumber"); + then.status(200).body(serde_json::to_vec(&response).unwrap()); + }); + + let snos_worker = SnosWorker {}; + snos_worker.run_worker(services.config).await?; + + rpc_block_call_mock.assert(); + + Ok(()) +} diff --git a/orchestrator/crates/orchestrator/src/tests/workers/update_state/mod.rs b/orchestrator/crates/orchestrator/src/tests/workers/update_state/mod.rs new file mode 100644 index 000000000..c9cc47810 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/workers/update_state/mod.rs @@ -0,0 +1,207 @@ +use std::collections::HashMap; +use std::sync::Arc; + +use mockall::predicate::eq; +use rstest::*; +use uuid::Uuid; + +use crate::jobs::constants::JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY; +use crate::jobs::job_handler_factory::mock_factory; +use crate::jobs::state_update_job::StateUpdateJob; +use crate::jobs::types::{JobStatus, JobType}; +use crate::tests::config::{ConfigType, TestConfigBuilder}; +use crate::tests::workers::utils::get_job_item_mock_by_id; +use crate::workers::update_state::UpdateStateWorker; +use crate::workers::Worker; + +#[rstest] +#[tokio::test] +async fn update_state_worker_with_pending_jobs() { + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + let unique_id = Uuid::new_v4(); + let mut job_item = get_job_item_mock_by_id("1".to_string(), unique_id); + job_item.status = JobStatus::PendingVerification; + job_item.job_type = JobType::StateTransition; + services.config.database().create_job(job_item).await.unwrap(); + + let update_state_worker = UpdateStateWorker {}; + assert!(update_state_worker.run_worker(services.config.clone()).await.is_ok()); + + let latest_job = + services.config.database().get_latest_job_by_type(JobType::StateTransition).await.unwrap().unwrap(); + assert_eq!(latest_job.status, JobStatus::PendingVerification); + assert_eq!(latest_job.job_type, JobType::StateTransition); + assert_eq!(latest_job.id, unique_id); +} + +#[rstest] +#[tokio::test] +async fn update_state_worker_first_block() { + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + let unique_id = Uuid::new_v4(); + let mut job_item = get_job_item_mock_by_id("0".to_string(), unique_id); + job_item.status = JobStatus::Completed; + job_item.job_type = JobType::DataSubmission; + services.config.database().create_job(job_item).await.unwrap(); + + let ctx = mock_factory::get_job_handler_context(); + ctx.expect().with(eq(JobType::StateTransition)).returning(move |_| Arc::new(Box::new(StateUpdateJob))); + + let update_state_worker = UpdateStateWorker {}; + assert!(update_state_worker.run_worker(services.config.clone()).await.is_ok()); + + let latest_job = + services.config.database().get_latest_job_by_type(JobType::StateTransition).await.unwrap().unwrap(); + assert_eq!(latest_job.status, JobStatus::Created); + assert_eq!(latest_job.job_type, JobType::StateTransition); + assert_eq!(latest_job.metadata.get(JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY).unwrap(), "0"); +} + +#[rstest] +#[tokio::test] +async fn update_state_worker_first_block_missing() { + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + // skip first block from DA completion + let mut job_item = get_job_item_mock_by_id("2".to_string(), Uuid::new_v4()); + job_item.status = JobStatus::Completed; + job_item.job_type = JobType::DataSubmission; + services.config.database().create_job(job_item).await.unwrap(); + + let ctx = mock_factory::get_job_handler_context(); + ctx.expect().with(eq(JobType::StateTransition)).returning(move |_| Arc::new(Box::new(StateUpdateJob))); + + let update_state_worker = UpdateStateWorker {}; + assert!(update_state_worker.run_worker(services.config.clone()).await.is_ok()); + + // update state worker should not create any job + assert!(services.config.database().get_latest_job_by_type(JobType::StateTransition).await.unwrap().is_none()); +} + +#[rstest] +#[tokio::test] +async fn update_state_worker_selects_consective_blocks() { + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + let mut job_item_one = get_job_item_mock_by_id("0".to_string(), Uuid::new_v4()); + job_item_one.status = JobStatus::Completed; + job_item_one.job_type = JobType::DataSubmission; + services.config.database().create_job(job_item_one).await.unwrap(); + + let mut job_item_two = get_job_item_mock_by_id("1".to_string(), Uuid::new_v4()); + job_item_two.status = JobStatus::Completed; + job_item_two.job_type = JobType::DataSubmission; + services.config.database().create_job(job_item_two).await.unwrap(); + + // skip block 3 + let mut job_item_three = get_job_item_mock_by_id("3".to_string(), Uuid::new_v4()); + job_item_three.status = JobStatus::Completed; + job_item_three.job_type = JobType::DataSubmission; + services.config.database().create_job(job_item_three).await.unwrap(); + + let ctx = mock_factory::get_job_handler_context(); + ctx.expect().with(eq(JobType::StateTransition)).returning(move |_| Arc::new(Box::new(StateUpdateJob))); + + let update_state_worker = UpdateStateWorker {}; + assert!(update_state_worker.run_worker(services.config.clone()).await.is_ok()); + + let latest_job = + services.config.database().get_latest_job_by_type(JobType::StateTransition).await.unwrap().unwrap(); + // update state worker should not create any job + assert_eq!(latest_job.status, JobStatus::Created); + assert_eq!(latest_job.job_type, JobType::StateTransition); + assert_eq!(latest_job.metadata.get(JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY).unwrap(), "0,1"); +} + +#[rstest] +#[tokio::test] +async fn update_state_worker_continues_from_previous_state_update() { + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + // add DA completion job for block 5 + let mut job_item = get_job_item_mock_by_id("5".to_string(), Uuid::new_v4()); + job_item.status = JobStatus::Completed; + job_item.job_type = JobType::DataSubmission; + services.config.database().create_job(job_item).await.unwrap(); + + // add state transition job for blocks 0-4 + let mut job_item = get_job_item_mock_by_id("0".to_string(), Uuid::new_v4()); + job_item.status = JobStatus::Completed; + job_item.job_type = JobType::StateTransition; + let mut metadata = HashMap::new(); + metadata.insert(JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY.to_string(), "0,1,2,3,4".to_string()); + job_item.metadata = metadata; + services.config.database().create_job(job_item).await.unwrap(); + + let ctx = mock_factory::get_job_handler_context(); + ctx.expect().with(eq(JobType::StateTransition)).returning(move |_| Arc::new(Box::new(StateUpdateJob))); + + let update_state_worker = UpdateStateWorker {}; + assert!(update_state_worker.run_worker(services.config.clone()).await.is_ok()); + + let latest_job = + services.config.database().get_latest_job_by_type(JobType::StateTransition).await.unwrap().unwrap(); + println!("latest job item {:?}", latest_job); + // update state worker should not create any job + assert_eq!(latest_job.status, JobStatus::Created); + assert_eq!(latest_job.job_type, JobType::StateTransition); + assert_eq!(latest_job.metadata.get(JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY).unwrap(), "5"); +} + +#[rstest] +#[tokio::test] +async fn update_state_worker_next_block_missing() { + let services = TestConfigBuilder::new() + .configure_database(ConfigType::Actual) + .configure_queue_client(ConfigType::Actual) + .build() + .await; + + // add DA completion job for block 5 + let mut job_item = get_job_item_mock_by_id("6".to_string(), Uuid::new_v4()); + job_item.status = JobStatus::Completed; + job_item.job_type = JobType::DataSubmission; + services.config.database().create_job(job_item).await.unwrap(); + + // add state transition job for blocks 0-4 + let unique_id = Uuid::new_v4(); + let mut job_item = get_job_item_mock_by_id("0".to_string(), unique_id); + job_item.status = JobStatus::Completed; + job_item.job_type = JobType::StateTransition; + let mut metadata = HashMap::new(); + metadata.insert(JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY.to_string(), "0,1,2,3,4".to_string()); + job_item.metadata = metadata; + services.config.database().create_job(job_item).await.unwrap(); + + let ctx = mock_factory::get_job_handler_context(); + ctx.expect().with(eq(JobType::StateTransition)).returning(move |_| Arc::new(Box::new(StateUpdateJob))); + + let update_state_worker = UpdateStateWorker {}; + assert!(update_state_worker.run_worker(services.config.clone()).await.is_ok()); + + let latest_job = + services.config.database().get_latest_job_by_type(JobType::StateTransition).await.unwrap().unwrap(); + assert_eq!(latest_job.id, unique_id); +} diff --git a/orchestrator/crates/orchestrator/src/tests/workers/utils/mod.rs b/orchestrator/crates/orchestrator/src/tests/workers/utils/mod.rs new file mode 100644 index 000000000..ac4b1b6bc --- /dev/null +++ b/orchestrator/crates/orchestrator/src/tests/workers/utils/mod.rs @@ -0,0 +1,92 @@ +use std::collections::HashMap; + +use chrono::{SubsecRound, Utc}; +use mockall::predicate::eq; +use uuid::Uuid; + +use crate::database::MockDatabase; +use crate::jobs::types::{ExternalId, JobItem, JobStatus, JobType}; +use crate::jobs::MockJob; + +pub fn get_job_item_mock_by_id(id: String, uuid: Uuid) -> JobItem { + JobItem { + id: uuid, + internal_id: id.clone(), + job_type: JobType::SnosRun, + status: JobStatus::Created, + external_id: ExternalId::Number(0), + metadata: HashMap::new(), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + } +} + +/// Function to get the vector of JobItems with mock IDs +/// +/// Arguments : +/// +/// `job_type` : Type of job you want to create the vector for. +/// +/// `job_status` : State of the job you want to create the vector for. +/// +/// `number_of_jobs` : Number of jobs (length of the vector you need). +/// +/// `start_index` : Start index of the `internal_id` for the JobItem in the vector. +pub fn get_job_by_mock_id_vector( + job_type: JobType, + job_status: JobStatus, + number_of_jobs: u64, + start_index: u64, +) -> Vec { + let mut jobs_vec: Vec = Vec::new(); + + for i in start_index..number_of_jobs + start_index { + let uuid = Uuid::new_v4(); + jobs_vec.push(JobItem { + id: uuid, + internal_id: i.to_string(), + job_type: job_type.clone(), + status: job_status.clone(), + external_id: ExternalId::Number(0), + metadata: HashMap::new(), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + }) + } + + jobs_vec +} + +pub fn db_checks_proving_worker(id: i32, db: &mut MockDatabase, mock_job: &mut MockJob) { + fn get_job_item_mock_by_id(id: i32) -> JobItem { + let uuid = Uuid::new_v4(); + JobItem { + id: uuid, + internal_id: id.to_string(), + job_type: JobType::ProofCreation, + status: JobStatus::Created, + external_id: ExternalId::Number(0), + metadata: HashMap::new(), + version: 0, + created_at: Utc::now().round_subsecs(0), + updated_at: Utc::now().round_subsecs(0), + } + } + + db.expect_get_job_by_internal_id_and_type() + .times(1) + .with(eq(id.clone().to_string()), eq(JobType::ProofCreation)) + .returning(|_, _| Ok(None)); + + let job_item = get_job_item_mock_by_id(id); + let job_item_cloned = job_item.clone(); + + mock_job.expect_create_job().times(1).returning(move |_, _, _| Ok(job_item.clone())); + + db.expect_create_job() + .times(1) + .withf(move |item| item.internal_id == id.clone().to_string()) + .returning(move |_| Ok(job_item_cloned.clone())); +} diff --git a/orchestrator/crates/orchestrator/src/workers/data_submission_worker.rs b/orchestrator/crates/orchestrator/src/workers/data_submission_worker.rs new file mode 100644 index 000000000..24585435d --- /dev/null +++ b/orchestrator/crates/orchestrator/src/workers/data_submission_worker.rs @@ -0,0 +1,45 @@ +use std::collections::HashMap; +use std::sync::Arc; + +use async_trait::async_trait; +use opentelemetry::KeyValue; + +use crate::config::Config; +use crate::jobs::create_job; +use crate::jobs::types::{JobStatus, JobType}; +use crate::metrics::ORCHESTRATOR_METRICS; +use crate::workers::Worker; + +pub struct DataSubmissionWorker; + +#[async_trait] +impl Worker for DataSubmissionWorker { + // 0. All ids are assumed to be block numbers. + // 1. Fetch the latest completed Proving jobs without Data Submission jobs as successor jobs + // 2. Create jobs. + async fn run_worker(&self, config: Arc) -> color_eyre::Result<()> { + tracing::trace!(log_type = "starting", category = "DataSubmissionWorker", "DataSubmissionWorker started."); + + let successful_proving_jobs = config + .database() + .get_jobs_without_successor(JobType::ProofCreation, JobStatus::Completed, JobType::DataSubmission) + .await?; + + for job in successful_proving_jobs { + match create_job(JobType::DataSubmission, job.internal_id.clone(), HashMap::new(), config.clone()).await { + Ok(_) => tracing::info!(block_id = %job.internal_id, "Successfully created new data submission job"), + Err(e) => { + tracing::warn!(block_id = %job.internal_id, error = %e, "Failed to create new data submission job"); + let attributes = [ + KeyValue::new("operation_job_type", format!("{:?}", JobType::DataSubmission)), + KeyValue::new("operation_type", format!("{:?}", "create_job")), + ]; + ORCHESTRATOR_METRICS.failed_job_operations.add(1.0, &attributes); + } + } + } + + tracing::trace!(log_type = "completed", category = "DataSubmissionWorker", "DataSubmissionWorker completed."); + Ok(()) + } +} diff --git a/orchestrator/crates/orchestrator/src/workers/mod.rs b/orchestrator/crates/orchestrator/src/workers/mod.rs new file mode 100644 index 000000000..ec61659a2 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/workers/mod.rs @@ -0,0 +1,61 @@ +use std::error::Error; +use std::sync::Arc; + +use async_trait::async_trait; +use thiserror::Error; + +use crate::config::Config; +use crate::jobs::types::JobStatus; + +pub mod data_submission_worker; +pub mod proof_registration; +pub mod proving; +pub mod snos; +pub mod update_state; + +#[derive(Error, Debug)] +pub enum WorkerError { + #[error("Worker execution failed: {0}")] + ExecutionError(String), + + #[error("JSON RPC error: {0}")] + JsonRpcError(String), + + #[error("Other error: {0}")] + Other(Box), +} + +#[async_trait] +pub trait Worker: Send + Sync { + async fn run_worker_if_enabled(&self, config: Arc) -> color_eyre::Result<()> { + if !self.is_worker_enabled(config.clone()).await? { + return Ok(()); + } + self.run_worker(config).await + } + + async fn run_worker(&self, config: Arc) -> color_eyre::Result<()>; + + // Assumption + // If say a job for block X fails, we don't want the worker to respawn another job for the same + // block we will resolve the existing failed job first. + + // We assume the system to keep working till a job hasn't failed, + // as soon as it fails we currently halt any more execution and wait for manual intervention. + + // Checks if any of the jobs have failed + // Failure : JobStatus::VerificationFailed, JobStatus::VerificationTimeout, JobStatus::Failed + // Halts any new job creation till all the count of failed jobs is not Zero. + async fn is_worker_enabled(&self, config: Arc) -> color_eyre::Result { + let failed_jobs = config + .database() + .get_jobs_by_statuses(vec![JobStatus::Failed, JobStatus::VerificationTimeout], Some(1)) + .await?; + + if !failed_jobs.is_empty() { + return Ok(false); + } + + Ok(true) + } +} diff --git a/orchestrator/crates/orchestrator/src/workers/proof_registration.rs b/orchestrator/crates/orchestrator/src/workers/proof_registration.rs new file mode 100644 index 000000000..21e467531 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/workers/proof_registration.rs @@ -0,0 +1,18 @@ +use std::sync::Arc; + +use async_trait::async_trait; + +use crate::config::Config; +use crate::workers::Worker; + +pub struct ProofRegistrationWorker; + +#[async_trait] +impl Worker for ProofRegistrationWorker { + /// 1. Fetch all blocks with a successful proving job run + /// 2. Group blocks that have the same proof + /// 3. For each group, create a proof registration job with from and to block in metadata + async fn run_worker(&self, _config: Arc) -> color_eyre::Result<()> { + todo!() + } +} diff --git a/orchestrator/crates/orchestrator/src/workers/proving.rs b/orchestrator/crates/orchestrator/src/workers/proving.rs new file mode 100644 index 000000000..66c52dfe0 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/workers/proving.rs @@ -0,0 +1,46 @@ +use std::sync::Arc; + +use async_trait::async_trait; +use opentelemetry::KeyValue; + +use crate::config::Config; +use crate::jobs::create_job; +use crate::jobs::types::{JobStatus, JobType}; +use crate::metrics::ORCHESTRATOR_METRICS; +use crate::workers::Worker; + +pub struct ProvingWorker; + +#[async_trait] +impl Worker for ProvingWorker { + /// 1. Fetch all successful SNOS job runs that don't have a proving job + /// 2. Create a proving job for each SNOS job run + async fn run_worker(&self, config: Arc) -> color_eyre::Result<()> { + tracing::trace!(log_type = "starting", category = "ProvingWorker", "ProvingWorker started."); + + let successful_snos_jobs = config + .database() + .get_jobs_without_successor(JobType::SnosRun, JobStatus::Completed, JobType::ProofCreation) + .await?; + + tracing::debug!("Found {} successful SNOS jobs without proving jobs", successful_snos_jobs.len()); + + for job in successful_snos_jobs { + tracing::debug!(job_id = %job.internal_id, "Creating proof creation job for SNOS job"); + match create_job(JobType::ProofCreation, job.internal_id.to_string(), job.metadata, config.clone()).await { + Ok(_) => tracing::info!(block_id = %job.internal_id, "Successfully created new proving job"), + Err(e) => { + tracing::warn!(job_id = %job.internal_id, error = %e, "Failed to create new state transition job"); + let attributes = [ + KeyValue::new("operation_job_type", format!("{:?}", JobType::ProofCreation)), + KeyValue::new("operation_type", format!("{:?}", "create_job")), + ]; + ORCHESTRATOR_METRICS.failed_job_operations.add(1.0, &attributes); + } + } + } + + tracing::trace!(log_type = "completed", category = "ProvingWorker", "ProvingWorker completed."); + Ok(()) + } +} diff --git a/orchestrator/crates/orchestrator/src/workers/snos.rs b/orchestrator/crates/orchestrator/src/workers/snos.rs new file mode 100644 index 000000000..0abaf2a1c --- /dev/null +++ b/orchestrator/crates/orchestrator/src/workers/snos.rs @@ -0,0 +1,70 @@ +use std::cmp::{max, min}; +use std::collections::HashMap; +use std::sync::Arc; + +use async_trait::async_trait; +use color_eyre::eyre::WrapErr; +use opentelemetry::KeyValue; +use starknet::providers::Provider; + +use crate::config::Config; +use crate::jobs::create_job; +use crate::jobs::types::JobType; +use crate::metrics::ORCHESTRATOR_METRICS; +use crate::workers::Worker; + +pub struct SnosWorker; + +#[async_trait] +impl Worker for SnosWorker { + /// 1. Fetch the latest completed block from the Starknet chain + /// 2. Fetch the last block that had a SNOS job run. + /// 3. Create SNOS run jobs for all the remaining blocks + async fn run_worker(&self, config: Arc) -> color_eyre::Result<()> { + tracing::trace!(log_type = "starting", category = "SnosWorker", "SnosWorker started."); + + let provider = config.starknet_client(); + let block_number_provider = provider.block_number().await?; + + let latest_block_number = if let Some(max_block_to_process) = config.service_config().max_block_to_process { + min(max_block_to_process, block_number_provider) + } else { + block_number_provider + }; + + tracing::debug!(latest_block_number = %latest_block_number, "Fetched latest block number from starknet"); + + let latest_job_in_db = config.database().get_latest_job_by_type(JobType::SnosRun).await?; + + let latest_job_id = latest_job_in_db + .map(|job| { + job.internal_id + .parse::() + .wrap_err_with(|| format!("Failed to parse job internal ID: {}", job.internal_id)) + }) + .unwrap_or(Ok(0))?; + + // To be used when testing in specific block range + let block_start = if let Some(min_block_to_process) = config.service_config().min_block_to_process { + max(min_block_to_process, latest_job_id) + } else { + latest_job_id + }; + + for block_num in block_start..latest_block_number + 1 { + match create_job(JobType::SnosRun, block_num.to_string(), HashMap::new(), config.clone()).await { + Ok(_) => tracing::info!(block_id = %block_num, "Successfully created new Snos job"), + Err(e) => { + tracing::warn!(block_id = %block_num, error = %e, "Failed to create new Snos job"); + let attributes = [ + KeyValue::new("operation_job_type", format!("{:?}", JobType::SnosRun)), + KeyValue::new("operation_type", format!("{:?}", "create_job")), + ]; + ORCHESTRATOR_METRICS.failed_job_operations.add(1.0, &attributes); + } + } + } + tracing::trace!(log_type = "completed", category = "SnosWorker", "SnosWorker completed."); + Ok(()) + } +} diff --git a/orchestrator/crates/orchestrator/src/workers/update_state.rs b/orchestrator/crates/orchestrator/src/workers/update_state.rs new file mode 100644 index 000000000..a6b7da2d1 --- /dev/null +++ b/orchestrator/crates/orchestrator/src/workers/update_state.rs @@ -0,0 +1,164 @@ +use std::collections::HashMap; +use std::sync::Arc; + +use async_trait::async_trait; +use opentelemetry::KeyValue; + +use crate::config::Config; +use crate::jobs::constants::JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY; +use crate::jobs::create_job; +use crate::jobs::types::{JobStatus, JobType}; +use crate::metrics::ORCHESTRATOR_METRICS; +use crate::workers::Worker; + +pub struct UpdateStateWorker; + +#[async_trait] +impl Worker for UpdateStateWorker { + async fn run_worker(&self, config: Arc) -> color_eyre::Result<()> { + tracing::trace!(log_type = "starting", category = "UpdateStateWorker", "UpdateStateWorker started."); + + let latest_job = config.database().get_latest_job_by_type(JobType::StateTransition).await?; + + let (completed_da_jobs, last_block_processed_in_last_job) = match latest_job { + Some(job) => { + if job.status != JobStatus::Completed { + log::warn!( + "There's already a pending update state job. Parallel jobs can cause nonce issues or can \ + completely fail as the update logic needs to be strictly ordered. Returning safely..." + ); + return Ok(()); + } + + let mut blocks_processed_in_last_job: Vec = job + .metadata + .get(JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY) + .unwrap() + .split(',') + .filter_map(|s| s.parse().ok()) + .collect(); + + // ideally it's already sorted, but just to be safe + blocks_processed_in_last_job.sort(); + + let last_block_processed_in_last_job = + blocks_processed_in_last_job[blocks_processed_in_last_job.len() - 1]; + + ( + config + .database() + .get_jobs_after_internal_id_by_job_type( + JobType::DataSubmission, + JobStatus::Completed, + last_block_processed_in_last_job.to_string(), + ) + .await?, + Some(last_block_processed_in_last_job), + ) + } + None => { + tracing::warn!("No previous state transition job found, fetching latest data submission job"); + // Getting latest DA job in case no latest state update job is present + ( + config + .database() + .get_jobs_without_successor( + JobType::DataSubmission, + JobStatus::Completed, + JobType::StateTransition, + ) + .await?, + None, + ) + } + }; + + let mut blocks_to_process: Vec = + completed_da_jobs.iter().map(|j| j.internal_id.parse::().unwrap()).collect(); + blocks_to_process.sort(); + + // no DA jobs completed after the last settled block + if blocks_to_process.is_empty() { + log::warn!("No DA jobs completed after the last settled block. Returning safely..."); + return Ok(()); + } + + match last_block_processed_in_last_job { + Some(last_block_processed_in_last_job) => { + // DA job for the block just after the last settled block + // is not yet completed + if blocks_to_process[0] != last_block_processed_in_last_job + 1 { + log::warn!( + "DA job for the block just after the last settled block is not yet completed. Returning \ + safely..." + ); + return Ok(()); + } + } + None => { + if blocks_to_process[0] != 0 { + log::warn!("DA job for the first block is not yet completed. Returning safely..."); + return Ok(()); + } + } + } + + let mut blocks_to_process: Vec = find_successive_blocks_in_vector(blocks_to_process); + + if blocks_to_process.len() > 10 { + blocks_to_process = blocks_to_process.into_iter().take(10).collect(); + } + + let mut metadata = HashMap::new(); + metadata.insert( + JOB_METADATA_STATE_UPDATE_BLOCKS_TO_SETTLE_KEY.to_string(), + blocks_to_process.iter().map(|ele| ele.to_string()).collect::>().join(","), + ); + + // Creating a single job for all the pending blocks. + let new_job_id = blocks_to_process[0].to_string(); + match create_job(JobType::StateTransition, new_job_id.clone(), metadata, config.clone()).await { + Ok(_) => tracing::info!(block_id = %new_job_id, "Successfully created new state transition job"), + Err(e) => { + tracing::error!(job_id = %new_job_id, error = %e, "Failed to create new state transition job"); + let attributes = [ + KeyValue::new("operation_job_type", format!("{:?}", JobType::StateTransition)), + KeyValue::new("operation_type", format!("{:?}", "create_job")), + ]; + ORCHESTRATOR_METRICS.failed_job_operations.add(1.0, &attributes); + return Err(e.into()); + } + } + + tracing::trace!(log_type = "completed", category = "UpdateStateWorker", "UpdateStateWorker completed."); + Ok(()) + } +} + +/// Gets the successive list of blocks from all the blocks processed in previous jobs +/// Eg : input_vec : [1,2,3,4,7,8,9,11] +/// We will take the first 4 block numbers and send it for processing +pub fn find_successive_blocks_in_vector(block_numbers: Vec) -> Vec { + block_numbers + .iter() + .enumerate() + .take_while(|(index, block_number)| **block_number == (block_numbers[0] + *index as u64)) + .map(|(_, block_number)| *block_number) + .collect() +} + +#[cfg(test)] +mod test_update_state_worker_utils { + use rstest::rstest; + + #[rstest] + #[case(vec![], vec![])] + #[case(vec![1], vec![1])] + #[case(vec![1, 2, 3, 4, 5], vec![1, 2, 3, 4, 5])] + #[case(vec![1, 2, 3, 4, 7, 8, 9, 11], vec![1, 2, 3, 4])] + #[case(vec![1, 3, 5, 7, 9], vec![1])] + fn test_find_successive_blocks(#[case] input: Vec, #[case] expected: Vec) { + let result = super::find_successive_blocks_in_vector(input); + assert_eq!(result, expected); + } +} diff --git a/orchestrator/crates/prover-clients/atlantic-service/Cargo.toml b/orchestrator/crates/prover-clients/atlantic-service/Cargo.toml new file mode 100644 index 000000000..17881938d --- /dev/null +++ b/orchestrator/crates/prover-clients/atlantic-service/Cargo.toml @@ -0,0 +1,54 @@ +[package] +name = "atlantic-service" +version.workspace = true +edition.workspace = true + +[dependencies] +alloy.workspace = true +async-trait.workspace = true +base64.workspace = true +cairo-vm.workspace = true +chrono.workspace = true +color-eyre.workspace = true +dotenvy.workspace = true +env_logger.workspace = true +gps-fact-checker.workspace = true +hex.workspace = true +httpmock.workspace = true +lazy_static.workspace = true +log.workspace = true +prover-client-interface.workspace = true +reqwest.workspace = true +rstest.workspace = true +serde.workspace = true +serde_json.workspace = true +starknet-os.workspace = true +strum = { workspace = true } +strum_macros = { workspace = true } +tempfile.workspace = true +thiserror.workspace = true +tokio.workspace = true +tokio-util = { version = "0.7.12", features = ["codec"] } +url.workspace = true +utils.workspace = true +uuid.workspace = true + +#Instrumentation +opentelemetry = { workspace = true, features = ["metrics", "logs"] } +opentelemetry-appender-tracing = { workspace = true, default-features = false } +opentelemetry-otlp = { workspace = true, features = [ + "tonic", + "metrics", + "logs", +] } +opentelemetry-semantic-conventions = { workspace = true } +opentelemetry_sdk = { workspace = true, features = ["rt-tokio", "logs"] } +tracing = { workspace = true } +tracing-core = { workspace = true, default-features = false } +tracing-opentelemetry = { workspace = true } +tracing-subscriber = { workspace = true, features = ["env-filter"] } + + +[dev-dependencies] +tokio.workspace = true +httpmock.workspace = true diff --git a/orchestrator/crates/prover-clients/atlantic-service/src/client.rs b/orchestrator/crates/prover-clients/atlantic-service/src/client.rs new file mode 100644 index 000000000..f05f356ea --- /dev/null +++ b/orchestrator/crates/prover-clients/atlantic-service/src/client.rs @@ -0,0 +1,112 @@ +use std::path::Path; + +use cairo_vm::types::layout_name::LayoutName; +use reqwest::Method; +use url::Url; +use utils::http_client::{HttpClient, RequestBuilder}; + +use crate::error::AtlanticError; +use crate::types::{AtlanticAddJobResponse, AtlanticGetStatusResponse}; +use crate::AtlanticValidatedArgs; + +#[derive(Debug, strum_macros::EnumString)] +enum ProverType { + #[strum(serialize = "starkware")] + Starkware, + #[strum(serialize = "herodotus")] + HeroDotus, +} + +trait ProvingLayer: Send + Sync { + fn customize_request<'a>(&self, request: RequestBuilder<'a>) -> RequestBuilder<'a>; +} + +struct EthereumLayer; +impl ProvingLayer for EthereumLayer { + fn customize_request<'a>(&self, request: RequestBuilder<'a>) -> RequestBuilder<'a> { + request.path("v1").path("l1/atlantic-query/proof-generation-verification") + } +} + +struct StarknetLayer; +impl ProvingLayer for StarknetLayer { + fn customize_request<'a>(&self, request: RequestBuilder<'a>) -> RequestBuilder<'a> { + request.path("v1").path("l2/submit-sharp-query/from-proof-generation-to-proof-verification") + } +} + +/// SHARP API async wrapper +pub struct AtlanticClient { + client: HttpClient, + proving_layer: Box, +} + +impl AtlanticClient { + /// We need to set up the client with the API_KEY. + pub fn new_with_args(url: Url, atlantic_params: &AtlanticValidatedArgs) -> Self { + let mock_fact_hash = atlantic_params.atlantic_mock_fact_hash.clone(); + let prover_type = atlantic_params.atlantic_prover_type.clone(); + + let client = HttpClient::builder(url.as_str()) + .expect("Failed to create HTTP client builder") + .default_form_data("mockFactHash", &mock_fact_hash) + .default_form_data("proverType", &prover_type) + .build() + .expect("Failed to build HTTP client"); + + let proving_layer: Box = match atlantic_params.atlantic_settlement_layer.as_str() { + "ethereum" => Box::new(EthereumLayer), + "starknet" => Box::new(StarknetLayer), + _ => panic!("Invalid settlement layer: {}", atlantic_params.atlantic_settlement_layer), + }; + + Self { client, proving_layer } + } + + pub async fn add_job( + &self, + pie_file: &Path, + proof_layout: LayoutName, + atlantic_api_key: impl AsRef, + ) -> Result { + let proof_layout = match proof_layout { + LayoutName::dynamic => "dynamic", + _ => proof_layout.to_str(), + }; + + let response = self + .proving_layer + .customize_request( + self.client.request().method(Method::POST).query_param("apiKey", atlantic_api_key.as_ref()), + ) + .form_file("pieFile", pie_file, "pie.zip")? + .form_text("layout", proof_layout) + .send() + .await + .map_err(AtlanticError::AddJobFailure)?; + + match response.status().is_success() { + true => response.json().await.map_err(AtlanticError::AddJobFailure), + false => Err(AtlanticError::SharpService(response.status())), + } + } + + pub async fn get_job_status(&self, job_key: &str) -> Result { + let response = self + .client + .request() + .method(Method::GET) + .path("v1") + .path("atlantic-query") + .path(job_key) + .send() + .await + .map_err(AtlanticError::GetJobStatusFailure)?; + + if response.status().is_success() { + response.json().await.map_err(AtlanticError::GetJobStatusFailure) + } else { + Err(AtlanticError::SharpService(response.status())) + } + } +} diff --git a/orchestrator/crates/prover-clients/atlantic-service/src/error.rs b/orchestrator/crates/prover-clients/atlantic-service/src/error.rs new file mode 100644 index 000000000..bdca1b82d --- /dev/null +++ b/orchestrator/crates/prover-clients/atlantic-service/src/error.rs @@ -0,0 +1,51 @@ +use alloy::primitives::hex::FromHexError; +use prover_client_interface::ProverClientError; +use reqwest::StatusCode; + +#[derive(Debug, thiserror::Error)] +pub enum AtlanticError { + #[error("Failed to to add Atlantic job: {0}")] + AddJobFailure(#[source] reqwest::Error), + + #[error("Failed to to get status of a Atlantic job: {0}")] + GetJobStatusFailure(#[source] reqwest::Error), + + #[error("Atlantic service returned an error {0}")] + SharpService(StatusCode), + + #[error("Failed to read file: {0}")] + FileError(#[from] std::io::Error), + + #[error("Failed to parse job key: {0}")] + JobKeyParse(uuid::Error), + + #[error("Failed to parse fact: {0}")] + FactParse(FromHexError), + + #[error("Failed to split task id into job key and fact")] + TaskIdSplit, + + #[error("Failed to encode PIE")] + PieEncode(#[source] starknet_os::error::SnOsError), + + #[error("Failed to get url as path segment mut. URL is cannot-be-a-base.")] + PathSegmentMutFailOnUrl, + + #[error("Failed to open file: {0}")] + FileOpenError(#[source] tokio::io::Error), + + #[error("Failed to create mime string: {0}")] + MimeError(#[source] reqwest::Error), + + #[error("Failed to read file: {0}")] + FileReadError(#[source] tokio::io::Error), + + #[error("Other error: {0}")] + Other(#[from] color_eyre::eyre::Error), +} + +impl From for ProverClientError { + fn from(value: AtlanticError) -> Self { + Self::Internal(Box::new(value)) + } +} diff --git a/orchestrator/crates/prover-clients/atlantic-service/src/lib.rs b/orchestrator/crates/prover-clients/atlantic-service/src/lib.rs new file mode 100644 index 000000000..d10e11ba7 --- /dev/null +++ b/orchestrator/crates/prover-clients/atlantic-service/src/lib.rs @@ -0,0 +1,115 @@ +pub mod client; +pub mod error; +mod types; +use std::str::FromStr; + +use alloy::primitives::B256; +use async_trait::async_trait; +use cairo_vm::types::layout_name::LayoutName; +use gps_fact_checker::FactChecker; +use prover_client_interface::{ProverClient, ProverClientError, Task, TaskStatus}; +use tempfile::NamedTempFile; +use url::Url; + +use crate::client::AtlanticClient; +use crate::types::AtlanticQueryStatus; + +pub const ATLANTIC_SETTINGS_NAME: &str = "atlantic"; + +#[derive(Debug, Clone)] +pub struct AtlanticValidatedArgs { + pub atlantic_api_key: String, + pub atlantic_service_url: Url, + pub atlantic_rpc_node_url: Url, + pub atlantic_verifier_contract_address: String, + pub atlantic_settlement_layer: String, + pub atlantic_mock_fact_hash: String, + pub atlantic_prover_type: String, +} + +/// Atlantic is a SHARP wrapper service hosted by Herodotus. +pub struct AtlanticProverService { + pub atlantic_client: AtlanticClient, + pub fact_checker: FactChecker, + pub atlantic_api_key: String, +} + +#[async_trait] +impl ProverClient for AtlanticProverService { + #[tracing::instrument(skip(self, task))] + async fn submit_task(&self, task: Task, proof_layout: LayoutName) -> Result { + tracing::info!( + log_type = "starting", + category = "submit_task", + function_type = "cairo_pie", + "Submitting Cairo PIE task." + ); + match task { + Task::CairoPie(cairo_pie) => { + let temp_file = + NamedTempFile::new().map_err(|e| ProverClientError::FailedToCreateTempFile(e.to_string()))?; + let pie_file_path = temp_file.path(); + cairo_pie + .write_zip_file(pie_file_path) + .map_err(|e| ProverClientError::FailedToWriteFile(e.to_string()))?; + + // sleep for 2 seconds to make sure the job is submitted + tokio::time::sleep(tokio::time::Duration::from_secs(2)).await; + let atlantic_job_response = + self.atlantic_client.add_job(pie_file_path, proof_layout, self.atlantic_api_key.clone()).await?; + // sleep for 2 seconds to make sure the job is submitted + tokio::time::sleep(tokio::time::Duration::from_secs(10)).await; + log::debug!("Successfully submitted task to atlantic: {:?}", atlantic_job_response); + // The temporary file will be automatically deleted when `temp_file` goes out of scope + Ok(atlantic_job_response.atlantic_query_id) + } + } + } + + #[tracing::instrument(skip(self))] + async fn get_task_status(&self, job_key: &str, fact: &str) -> Result { + let res = self.atlantic_client.get_job_status(job_key).await?; + match res.atlantic_query.status { + AtlanticQueryStatus::InProgress => Ok(TaskStatus::Processing), + AtlanticQueryStatus::Done => { + let fact = B256::from_str(fact).map_err(|e| ProverClientError::FailedToConvertFact(e.to_string()))?; + if self.fact_checker.is_valid(&fact).await? { + Ok(TaskStatus::Succeeded) + } else { + Ok(TaskStatus::Failed(format!("Fact {} is not valid or not registered", hex::encode(fact)))) + } + } + AtlanticQueryStatus::Failed => { + Ok(TaskStatus::Failed("Task failed while processing on Atlantic side".to_string())) + } + } + } +} + +impl AtlanticProverService { + pub fn new(atlantic_client: AtlanticClient, fact_checker: FactChecker, atlantic_api_key: String) -> Self { + Self { atlantic_client, fact_checker, atlantic_api_key } + } + + pub fn new_with_args(atlantic_params: &AtlanticValidatedArgs) -> Self { + let atlantic_client = + AtlanticClient::new_with_args(atlantic_params.atlantic_service_url.clone(), atlantic_params); + + let fact_checker = FactChecker::new( + atlantic_params.atlantic_rpc_node_url.clone(), + atlantic_params.atlantic_verifier_contract_address.clone(), + ); + + Self::new(atlantic_client, fact_checker, atlantic_params.atlantic_api_key.clone()) + } + + pub fn with_test_params(port: u16, atlantic_params: &AtlanticValidatedArgs) -> Self { + let atlantic_client = + AtlanticClient::new_with_args(format!("http://127.0.0.1:{}", port).parse().unwrap(), atlantic_params); + let fact_checker = FactChecker::new( + atlantic_params.atlantic_rpc_node_url.clone(), + atlantic_params.atlantic_verifier_contract_address.clone(), + ); + Self::new(atlantic_client, fact_checker, "random_api_key".to_string()) + } +} diff --git a/orchestrator/crates/prover-clients/atlantic-service/src/types.rs b/orchestrator/crates/prover-clients/atlantic-service/src/types.rs new file mode 100644 index 000000000..3992bd9e3 --- /dev/null +++ b/orchestrator/crates/prover-clients/atlantic-service/src/types.rs @@ -0,0 +1,50 @@ +use serde::{Deserialize, Serialize}; +#[derive(Default, Debug, Clone, Serialize, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct AtlanticAddJobResponse { + pub atlantic_query_id: String, +} + +#[derive(Default, Debug, Clone, Serialize, Deserialize)] +pub struct AtlanticGetProofResponse { + pub code: Option, +} + +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct AtlanticGetStatusResponse { + pub atlantic_query: AtlanticQuery, +} + +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "camelCase")] +pub struct AtlanticQuery { + pub id: String, + pub submitted_by_client: String, + pub status: AtlanticQueryStatus, + pub step: Option, + pub program_hash: Option, + pub layout: Option, + pub program_fact_hash: Option, + pub is_fact_mocked: bool, + pub prover: String, + pub chain: String, + pub price: String, + pub steps: Vec, +} + +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "SCREAMING_SNAKE_CASE")] +pub enum AtlanticQueryStatus { + InProgress, + Done, + Failed, +} + +#[derive(Debug, Clone, Deserialize)] +#[serde(rename_all = "SCREAMING_SNAKE_CASE")] +pub enum AtlanticQueryStep { + ProofGeneration, + FactHashGeneration, + FactHashRegistration, +} diff --git a/orchestrator/crates/prover-clients/atlantic-service/tests/artifacts/fibonacci.zip b/orchestrator/crates/prover-clients/atlantic-service/tests/artifacts/fibonacci.zip new file mode 100644 index 000000000..c1ada49e9 Binary files /dev/null and b/orchestrator/crates/prover-clients/atlantic-service/tests/artifacts/fibonacci.zip differ diff --git a/orchestrator/crates/prover-clients/atlantic-service/tests/constants.rs b/orchestrator/crates/prover-clients/atlantic-service/tests/constants.rs new file mode 100644 index 000000000..991f9dfbd --- /dev/null +++ b/orchestrator/crates/prover-clients/atlantic-service/tests/constants.rs @@ -0,0 +1 @@ +pub const CAIRO_PIE_PATH: &str = "/tests/artifacts/fibonacci.zip"; diff --git a/orchestrator/crates/prover-clients/atlantic-service/tests/lib.rs b/orchestrator/crates/prover-clients/atlantic-service/tests/lib.rs new file mode 100644 index 000000000..f103aa569 --- /dev/null +++ b/orchestrator/crates/prover-clients/atlantic-service/tests/lib.rs @@ -0,0 +1,71 @@ +use atlantic_service::{AtlanticProverService, AtlanticValidatedArgs}; +use cairo_vm::types::layout_name::LayoutName; +use cairo_vm::vm::runners::cairo_pie::CairoPie; +use httpmock::MockServer; +use prover_client_interface::{ProverClient, Task}; +use url::Url; +use utils::env_utils::get_env_var_or_panic; + +use crate::constants::CAIRO_PIE_PATH; + +mod constants; + +#[tokio::test] +async fn atlantic_client_submit_task_when_mock_works() { + let _ = env_logger::try_init(); + dotenvy::from_filename("../.env.test").expect("Failed to load the .env file"); + let atlantic_params = AtlanticValidatedArgs { + atlantic_api_key: get_env_var_or_panic("MADARA_ORCHESTRATOR_ATLANTIC_API_KEY"), + atlantic_service_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_ATLANTIC_SERVICE_URL")).unwrap(), + atlantic_rpc_node_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_ATLANTIC_RPC_NODE_URL")).unwrap(), + atlantic_mock_fact_hash: get_env_var_or_panic("MADARA_ORCHESTRATOR_ATLANTIC_MOCK_FACT_HASH"), + atlantic_prover_type: get_env_var_or_panic("MADARA_ORCHESTRATOR_ATLANTIC_PROVER_TYPE"), + atlantic_settlement_layer: get_env_var_or_panic("MADARA_ORCHESTRATOR_ATLANTIC_SETTLEMENT_LAYER"), + atlantic_verifier_contract_address: get_env_var_or_panic( + "MADARA_ORCHESTRATOR_ATLANTIC_VERIFIER_CONTRACT_ADDRESS", + ), + }; + // Start a mock server + let mock_server = MockServer::start(); + + // Create a mock for the submit endpoint + let submit_mock = mock_server.mock(|when, then| { + when.method("POST").path("/v1/l1/atlantic-query/proof-generation-verification"); + then.status(200).header("content-type", "application/json").json_body(serde_json::json!({ + "atlanticQueryId": "mock_query_id_123" + })); + }); + + // Configure the service to use mock server + let atlantic_service = AtlanticProverService::with_test_params(mock_server.port(), &atlantic_params); + + let cairo_pie_path = env!("CARGO_MANIFEST_DIR").to_string() + CAIRO_PIE_PATH; + let cairo_pie = CairoPie::read_zip_file(cairo_pie_path.as_ref()).expect("failed to read cairo pie zip"); + + let task_result = atlantic_service.submit_task(Task::CairoPie(Box::new(cairo_pie)), LayoutName::dynamic).await; + + assert!(task_result.is_ok()); + submit_mock.assert(); +} + +#[tokio::test] +async fn atlantic_client_get_task_status_works() { + let _ = env_logger::try_init(); + dotenvy::from_filename("../.env.test").expect("Failed to load the .env file"); + let atlantic_params = AtlanticValidatedArgs { + atlantic_api_key: get_env_var_or_panic("MADARA_ORCHESTRATOR_ATLANTIC_API_KEY"), + atlantic_service_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_ATLANTIC_SERVICE_URL")).unwrap(), + atlantic_rpc_node_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_ATLANTIC_RPC_NODE_URL")).unwrap(), + atlantic_mock_fact_hash: get_env_var_or_panic("MADARA_ORCHESTRATOR_ATLANTIC_MOCK_FACT_HASH"), + atlantic_prover_type: get_env_var_or_panic("MADARA_ORCHESTRATOR_ATLANTIC_PROVER_TYPE"), + atlantic_settlement_layer: get_env_var_or_panic("MADARA_ORCHESTRATOR_ATLANTIC_SETTLEMENT_LAYER"), + atlantic_verifier_contract_address: get_env_var_or_panic( + "MADARA_ORCHESTRATOR_ATLANTIC_VERIFIER_CONTRACT_ADDRESS", + ), + }; + let atlantic_service = AtlanticProverService::new_with_args(&atlantic_params); + + let atlantic_query_id = "01JDY6EKVQD8QYR8HE64WZC9VB"; + let task_result = atlantic_service.atlantic_client.get_job_status(atlantic_query_id).await; + assert!(task_result.is_ok()); +} diff --git a/orchestrator/crates/prover-clients/gps-fact-checker/Cargo.toml b/orchestrator/crates/prover-clients/gps-fact-checker/Cargo.toml new file mode 100644 index 000000000..f4ce08f26 --- /dev/null +++ b/orchestrator/crates/prover-clients/gps-fact-checker/Cargo.toml @@ -0,0 +1,45 @@ +[package] +name = "gps-fact-checker" +version.workspace = true +edition.workspace = true + +[dependencies] +alloy = { workspace = true, features = [ + "sol-types", + "json", + "contract", + "providers", + "rpc-client", + "transport-http", + "reqwest", +] } +async-trait.workspace = true +aws-config = { workspace = true, features = ["behavior-version-latest"] } +aws-sdk-s3 = { workspace = true, features = ["behavior-version-latest"] } +bincode = { workspace = true } +cairo-vm.workspace = true +dotenvy.workspace = true +itertools.workspace = true +log.workspace = true +num-bigint.workspace = true +serde.workspace = true +starknet.workspace = true +thiserror.workspace = true +tokio.workspace = true +url.workspace = true +utils.workspace = true + +#Instrumentation +opentelemetry = { workspace = true, features = ["metrics", "logs"] } +opentelemetry-appender-tracing = { workspace = true, default-features = false } +opentelemetry-otlp = { workspace = true, features = [ + "tonic", + "metrics", + "logs", +] } +opentelemetry-semantic-conventions = { workspace = true } +opentelemetry_sdk = { workspace = true, features = ["rt-tokio", "logs"] } +tracing = { workspace = true } +tracing-core = { workspace = true, default-features = false } +tracing-opentelemetry = { workspace = true } +tracing-subscriber = { workspace = true, features = ["env-filter"] } diff --git a/orchestrator/crates/prover-clients/gps-fact-checker/src/lib.rs b/orchestrator/crates/prover-clients/gps-fact-checker/src/lib.rs new file mode 100644 index 000000000..8189e6536 --- /dev/null +++ b/orchestrator/crates/prover-clients/gps-fact-checker/src/lib.rs @@ -0,0 +1,44 @@ +use std::str::FromStr as _; + +use alloy::primitives::{Address, B256}; +use alloy::providers::{ProviderBuilder, RootProvider}; +use alloy::sol; +use alloy::transports::http::{Client, Http}; +use url::Url; + +sol!( + #[allow(missing_docs)] + #[sol(rpc)] + FactRegistry, + "tests/artifacts/FactRegistry.json" +); + +#[derive(Debug, thiserror::Error)] +pub enum FactCheckerError { + #[error("Fact registry call failed: {0}")] + InvalidFact(#[source] alloy::contract::Error), +} + +pub struct FactChecker { + fact_registry: FactRegistry::FactRegistryInstance, +} + +type TransportT = Http; +type ProviderT = RootProvider; + +impl FactChecker { + pub fn new(sharp_rpc_node_url: Url, gps_verifier_contract_address: String) -> Self { + let provider = ProviderBuilder::new().on_http(sharp_rpc_node_url); + let fact_registry = FactRegistry::new( + Address::from_str(gps_verifier_contract_address.as_str()).expect("Invalid GPS verifier contract address"), + provider, + ); + Self { fact_registry } + } + + pub async fn is_valid(&self, fact: &B256) -> Result { + let FactRegistry::isValidReturn { _0 } = + self.fact_registry.isValid(*fact).call().await.map_err(FactCheckerError::InvalidFact)?; + Ok(_0) + } +} diff --git a/orchestrator/crates/prover-clients/gps-fact-checker/tests/artifacts/FactRegistry.json b/orchestrator/crates/prover-clients/gps-fact-checker/tests/artifacts/FactRegistry.json new file mode 100644 index 000000000..1c5ff4b1d --- /dev/null +++ b/orchestrator/crates/prover-clients/gps-fact-checker/tests/artifacts/FactRegistry.json @@ -0,0 +1,194 @@ +[ + { + "inputs": [ + { + "internalType": "address", + "name": "bootloaderProgramContract", + "type": "address" + }, + { + "internalType": "address", + "name": "memoryPageFactRegistry_", + "type": "address" + }, + { + "internalType": "address[]", + "name": "cairoVerifierContracts", + "type": "address[]" + }, + { + "internalType": "uint256", + "name": "simpleBootloaderProgramHash", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "applicativeBootloaderProgramHash", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "hashedSupportedCairoVerifiers", + "type": "uint256" + }, + { + "internalType": "address", + "name": "referenceVerifier", + "type": "address" + }, + { + "internalType": "uint256", + "name": "referralDurationSeconds", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "programOutputFact", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "bytes32[]", + "name": "pagesHashes", + "type": "bytes32[]" + } + ], + "name": "LogMemoryPagesHashes", + "type": "event" + }, + { + "inputs": [], + "name": "PAGE_INFO_ADDRESS_OFFSET", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "PAGE_INFO_HASH_OFFSET", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "PAGE_INFO_SIZE", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "PAGE_INFO_SIZE_IN_BYTES", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "PAGE_INFO_SIZE_OFFSET", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getBootloaderConfig", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" }, + { "internalType": "uint256", "name": "", "type": "uint256" }, + { "internalType": "uint256", "name": "", "type": "uint256" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "hasRegisteredFact", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "identify", + "outputs": [{ "internalType": "string", "name": "", "type": "string" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bytes32", "name": "fact", "type": "bytes32" } + ], + "name": "isValid", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bytes32", "name": "fact", "type": "bytes32" } + ], + "name": "localIsValid", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "referenceFactRegistry", + "outputs": [ + { + "internalType": "contract IFactRegistry", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "referralExpirationTime", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256[]", + "name": "proofParams", + "type": "uint256[]" + }, + { "internalType": "uint256[]", "name": "proof", "type": "uint256[]" }, + { + "internalType": "uint256[]", + "name": "taskMetadata", + "type": "uint256[]" + }, + { + "internalType": "uint256[]", + "name": "cairoAuxInput", + "type": "uint256[]" + }, + { + "internalType": "uint256", + "name": "cairoVerifierId", + "type": "uint256" + } + ], + "name": "verifyProofAndRegister", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } +] diff --git a/orchestrator/crates/prover-clients/gps-fact-checker/tests/artifacts/README.md b/orchestrator/crates/prover-clients/gps-fact-checker/tests/artifacts/README.md new file mode 100644 index 000000000..a9d4d4359 --- /dev/null +++ b/orchestrator/crates/prover-clients/gps-fact-checker/tests/artifacts/README.md @@ -0,0 +1,39 @@ +# How to generate artifacts + +## Solidity output for GPS verifier + +Clone and build the repo +using Foundry. + +## Cairo PIEs + +In order to generate zip compressed Cairo PIEs follow the instructions at + + +Few things to note: + +- Use `--cairo_pie_output` flag to specify the output path for the zipped PIE + file +- Use `--append_return_values` flag to write program output to the related + builtin segment +- Use the according layout (that includes `output` builtin at the very least, + so by default `small`) depending on what particular program uses + +Example: + +```sh +cargo run ../cairo_programs/cairo-1-programs/fibonacci.cairo --append_return_values --cairo_pie_output fibonacci.zip --layout small +``` + +### Generate facts + +To create test vectors for SHARP facts you would need to install the Cairo0 +toolchain as described here: + +Then use the `get_fact.py` script to get the fact of the according zipped PIE. + +Example: + +```sh +python3 get_fact.py fibonacci.zip +``` diff --git a/orchestrator/crates/prover-clients/gps-fact-checker/tests/artifacts/fibonacci.zip b/orchestrator/crates/prover-clients/gps-fact-checker/tests/artifacts/fibonacci.zip new file mode 100644 index 000000000..b59435368 Binary files /dev/null and b/orchestrator/crates/prover-clients/gps-fact-checker/tests/artifacts/fibonacci.zip differ diff --git a/orchestrator/crates/prover-clients/gps-fact-checker/tests/artifacts/get_fact.py b/orchestrator/crates/prover-clients/gps-fact-checker/tests/artifacts/get_fact.py new file mode 100644 index 000000000..3f4e92065 --- /dev/null +++ b/orchestrator/crates/prover-clients/gps-fact-checker/tests/artifacts/get_fact.py @@ -0,0 +1,14 @@ +#!/usr/bin/python3 + +import sys +from starkware.cairo.lang.vm.cairo_pie import CairoPie +from starkware.cairo.bootloaders.generate_fact import get_cairo_pie_fact_info +from starkware.cairo.bootloaders.hash_program import compute_program_hash_chain + +cairo_pie = CairoPie.from_file(sys.argv[1]) + +program_hash = compute_program_hash_chain(program=cairo_pie.program, use_poseidon=False) +print("Program hash: ", program_hash) + +fact_info = get_cairo_pie_fact_info(cairo_pie, program_hash) +print("Fact: ", fact_info.fact) diff --git a/orchestrator/crates/prover-clients/prover-client-interface/Cargo.toml b/orchestrator/crates/prover-clients/prover-client-interface/Cargo.toml new file mode 100644 index 000000000..7a974ae25 --- /dev/null +++ b/orchestrator/crates/prover-clients/prover-client-interface/Cargo.toml @@ -0,0 +1,13 @@ +[package] +name = "prover-client-interface" +version.workspace = true +edition.workspace = true + +[dependencies] +async-trait.workspace = true +cairo-vm.workspace = true +gps-fact-checker.workspace = true +mockall.workspace = true +starknet-os.workspace = true +thiserror.workspace = true +utils.workspace = true diff --git a/orchestrator/crates/prover-clients/prover-client-interface/src/lib.rs b/orchestrator/crates/prover-clients/prover-client-interface/src/lib.rs new file mode 100644 index 000000000..cd560c09c --- /dev/null +++ b/orchestrator/crates/prover-clients/prover-client-interface/src/lib.rs @@ -0,0 +1,51 @@ +use async_trait::async_trait; +use cairo_vm::types::layout_name::LayoutName; +use cairo_vm::vm::runners::cairo_pie::CairoPie; +use gps_fact_checker::FactCheckerError; +use mockall::automock; + +/// Prover client provides an abstraction over different proving services that do the following: +/// - Accept a task containing Cairo intermediate execution artifacts (in PIE format) +/// - Aggregate multiple tasks and prove the execution (of the bootloader program where PIEs are +/// inputs) +/// - Register the proof onchain (individiual proof facts available for each task) +/// +/// A common Madara workflow would be single task per block (SNOS execution result) or per block +/// span (SNAR). +#[automock] +#[async_trait] +pub trait ProverClient: Send + Sync { + async fn submit_task(&self, task: Task, proof_layout: LayoutName) -> Result; + async fn get_task_status(&self, task_id: &str, fact: &str) -> Result; +} + +pub enum Task { + CairoPie(Box), +} + +#[derive(Debug, Clone, PartialEq, Eq)] +pub enum TaskStatus { + Processing, + Succeeded, + Failed(String), +} + +#[derive(Debug, thiserror::Error)] +pub enum ProverClientError { + #[error("Internal prover error: {0}")] + Internal(#[source] Box), + #[error("Task is invalid: {0}")] + TaskInvalid(String), + #[error("Fact checker error: {0}")] + FactChecker(#[from] FactCheckerError), + #[error("Failed to encode Cairo PIE: {0}")] + PieEncoding(#[source] starknet_os::error::SnOsError), + #[error("Failed to convert job key to UUID: {0}")] + InvalidJobKey(String), + #[error("Failed to convert fact to B256: {0}")] + FailedToConvertFact(String), + #[error("Failed to write file: {0}")] + FailedToCreateTempFile(String), + #[error("Failed to write file: {0}")] + FailedToWriteFile(String), +} diff --git a/orchestrator/crates/prover-clients/sharp-service/Cargo.toml b/orchestrator/crates/prover-clients/sharp-service/Cargo.toml new file mode 100644 index 000000000..56171932e --- /dev/null +++ b/orchestrator/crates/prover-clients/sharp-service/Cargo.toml @@ -0,0 +1,48 @@ +[package] +name = "sharp-service" +version.workspace = true +edition.workspace = true + +[dependencies] +alloy.workspace = true +async-trait.workspace = true +base64.workspace = true +cairo-vm.workspace = true +color-eyre.workspace = true +dotenvy.workspace = true +gps-fact-checker.workspace = true +hex.workspace = true +httpmock.workspace = true +lazy_static.workspace = true +log.workspace = true +prover-client-interface.workspace = true +reqwest.workspace = true +rstest.workspace = true +serde.workspace = true +serde_json.workspace = true +starknet-os.workspace = true +thiserror.workspace = true +tokio.workspace = true +url.workspace = true +utils.workspace = true +uuid.workspace = true + +#Instrumentation +opentelemetry = { workspace = true, features = ["metrics", "logs"] } +opentelemetry-appender-tracing = { workspace = true, default-features = false } +opentelemetry-otlp = { workspace = true, features = [ + "tonic", + "metrics", + "logs", +] } +opentelemetry-semantic-conventions = { workspace = true } +opentelemetry_sdk = { workspace = true, features = ["rt-tokio", "logs"] } +tracing = { workspace = true } +tracing-core = { workspace = true, default-features = false } +tracing-opentelemetry = { workspace = true } +tracing-subscriber = { workspace = true, features = ["env-filter"] } + + +[dev-dependencies] +tokio.workspace = true +httpmock.workspace = true diff --git a/orchestrator/crates/prover-clients/sharp-service/src/client.rs b/orchestrator/crates/prover-clients/sharp-service/src/client.rs new file mode 100644 index 000000000..802aceb19 --- /dev/null +++ b/orchestrator/crates/prover-clients/sharp-service/src/client.rs @@ -0,0 +1,109 @@ +use base64::engine::general_purpose; +use base64::Engine; +use cairo_vm::types::layout_name::LayoutName; +use reqwest::{Certificate, Identity, Method, StatusCode}; +use url::Url; +use utils::http_client::HttpClient; +use uuid::Uuid; + +use crate::error::SharpError; +use crate::types::{SharpAddJobResponse, SharpGetStatusResponse}; +use crate::SharpValidatedArgs; + +/// SHARP API async wrapper +pub struct SharpClient { + client: HttpClient, +} + +impl SharpClient { + /// We need to set up the client with the provided certificates. + /// We need to have three secrets : + /// - base64(SHARP_USER_CRT) + /// - base64(SHARP_USER_KEY) + /// - base64(SHARP_SERVER_CRT) + /// + /// You can run this command in terminal to convert a file output into base64 + /// and then copy it and paste it into .env file : + /// + /// `cat | base64` + pub fn new_with_args(url: Url, sharp_params: &SharpValidatedArgs) -> Self { + // Getting the cert files from the .env and then decoding it from base64 + let cert = general_purpose::STANDARD + .decode(sharp_params.sharp_user_crt.clone()) + .expect("Failed to decode certificate"); + let key = general_purpose::STANDARD + .decode(sharp_params.sharp_user_key.clone()) + .expect("Failed to decode sharp user key"); + let server_cert = general_purpose::STANDARD + .decode(sharp_params.sharp_server_crt.clone()) + .expect("Failed to decode sharp server certificate"); + + let customer_id = sharp_params.sharp_customer_id.clone(); + + let identity = + Identity::from_pkcs8_pem(&cert, &key).expect("Failed to build the identity from certificate and key"); + let certificate = Certificate::from_pem(server_cert.as_slice()).expect("Failed to add root certificate"); + + let client = HttpClient::builder(url.as_str()) + .expect("Failed to create HTTP client builder") + .identity(identity) + .add_root_certificate(certificate) + .default_query_param("customer_id", customer_id.as_str()) + .build() + .expect("Failed to build HTTP client"); + + Self { client } + } + + pub async fn add_job( + &self, + encoded_pie: &str, + proof_layout: LayoutName, + ) -> Result<(SharpAddJobResponse, Uuid), SharpError> { + let cairo_key = Uuid::new_v4(); + + let proof_layout = match proof_layout { + LayoutName::dynamic => "dynamic", + _ => proof_layout.to_str(), + }; + + let response = self + .client + .request() + .method(Method::POST) + .path("add_job") + .query_param("cairo_job_key", &cairo_key.to_string()) + .query_param("offchain_proof", "true") + .query_param("proof_layout", proof_layout) + .body(encoded_pie) + .map_err(|e| SharpError::SerializationError(e.into()))? + .send() + .await + .map_err(SharpError::AddJobFailure)?; + + match response.status() { + StatusCode::OK => { + let result = response.json().await.map_err(SharpError::AddJobFailure)?; + Ok((result, cairo_key)) + } + code => Err(SharpError::SharpService(code)), + } + } + + pub async fn get_job_status(&self, job_key: &Uuid) -> Result { + let response = self + .client + .request() + .method(Method::POST) + .path("get_status") + .query_param("cairo_job_key", &job_key.to_string()) + .send() + .await + .map_err(SharpError::GetJobStatusFailure)?; + + match response.status() { + StatusCode::OK => response.json().await.map_err(SharpError::GetJobStatusFailure), + code => Err(SharpError::SharpService(code)), + } + } +} diff --git a/orchestrator/crates/prover-clients/sharp-service/src/error.rs b/orchestrator/crates/prover-clients/sharp-service/src/error.rs new file mode 100644 index 000000000..94dd2607d --- /dev/null +++ b/orchestrator/crates/prover-clients/sharp-service/src/error.rs @@ -0,0 +1,42 @@ +use alloy::primitives::hex::FromHexError; +use prover_client_interface::ProverClientError; +use reqwest::StatusCode; + +#[derive(Debug, thiserror::Error)] +pub enum SharpError { + #[error("Failed to to add SHARP job: {0}")] + AddJobFailure(#[source] reqwest::Error), + + #[error("Failed to to get status of a SHARP job: {0}")] + GetJobStatusFailure(#[source] reqwest::Error), + + #[error("SHARP service returned an error {0}")] + SharpService(StatusCode), + + #[error("Failed to parse job key: {0}")] + JobKeyParse(uuid::Error), + + #[error("Failed to parse fact: {0}")] + FactParse(FromHexError), + + #[error("Failed to split task id into job key and fact")] + TaskIdSplit, + + #[error("Failed to encode PIE")] + PieEncode(#[source] starknet_os::error::SnOsError), + + #[error("Failed to get url as path segment mut. URL is cannot-be-a-base.")] + PathSegmentMutFailOnUrl, + + #[error("Failed to serialize body")] + SerializationError(#[source] std::io::Error), + + #[error("Other error: {0}")] + Other(#[from] color_eyre::eyre::Error), +} + +impl From for ProverClientError { + fn from(value: SharpError) -> Self { + Self::Internal(Box::new(value)) + } +} diff --git a/orchestrator/crates/prover-clients/sharp-service/src/lib.rs b/orchestrator/crates/prover-clients/sharp-service/src/lib.rs new file mode 100644 index 000000000..6d0228c83 --- /dev/null +++ b/orchestrator/crates/prover-clients/sharp-service/src/lib.rs @@ -0,0 +1,169 @@ +pub mod client; +pub mod error; +mod types; + +use std::str::FromStr; + +use alloy::primitives::B256; +use async_trait::async_trait; +use cairo_vm::types::layout_name::LayoutName; +use gps_fact_checker::FactChecker; +use prover_client_interface::{ProverClient, ProverClientError, Task, TaskStatus}; +use starknet_os::sharp::CairoJobStatus; +use uuid::Uuid; + +use crate::client::SharpClient; + +pub const SHARP_SETTINGS_NAME: &str = "sharp"; + +use url::Url; + +#[derive(Debug, Clone)] +pub struct SharpValidatedArgs { + pub sharp_customer_id: String, + pub sharp_url: Url, + pub sharp_user_crt: String, + pub sharp_user_key: String, + pub sharp_rpc_node_url: Url, + pub sharp_server_crt: String, + pub sharp_proof_layout: String, + pub gps_verifier_contract_address: String, +} + +/// SHARP (aka GPS) is a shared proving service hosted by Starkware. +pub struct SharpProverService { + sharp_client: SharpClient, + fact_checker: FactChecker, +} + +#[async_trait] +impl ProverClient for SharpProverService { + #[tracing::instrument(skip(self, task), ret, err)] + async fn submit_task(&self, task: Task, proof_layout: LayoutName) -> Result { + tracing::info!( + log_type = "starting", + category = "submit_task", + function_type = "cairo_pie", + "Submitting Cairo PIE task." + ); + match task { + Task::CairoPie(cairo_pie) => { + let encoded_pie = + starknet_os::sharp::pie::encode_pie_mem(*cairo_pie).map_err(ProverClientError::PieEncoding)?; + let (_, job_key) = self.sharp_client.add_job(&encoded_pie, proof_layout).await?; + tracing::info!( + log_type = "completed", + category = "submit_task", + function_type = "cairo_pie", + "Cairo PIE task submitted." + ); + Ok(job_key.to_string()) + } + } + } + + #[tracing::instrument(skip(self), ret, err)] + async fn get_task_status(&self, job_key: &str, fact: &str) -> Result { + tracing::info!( + log_type = "starting", + category = "get_task_status", + function_type = "cairo_pie", + "Getting Cairo PIE task status." + ); + let job_key = Uuid::from_str(job_key) + .map_err(|e| ProverClientError::InvalidJobKey(format!("Failed to convert {} to UUID {}", job_key, e)))?; + let res = self.sharp_client.get_job_status(&job_key).await?; + + match res.status { + // TODO : We would need to remove the FAILED, UNKNOWN, NOT_CREATED status as it is not in the sharp client + // response specs : https://docs.google.com/document/d/1-9ggQoYmjqAtLBGNNR2Z5eLreBmlckGYjbVl0khtpU0 + // We are waiting for the official public API spec before making changes + + // The `unwrap_or_default`s below is safe as it is just returning if any error logs + // present + CairoJobStatus::FAILED => { + tracing::error!( + log_type = "failed", + category = "get_task_status", + function_type = "cairo_pie", + "Cairo PIE task status: FAILED." + ); + Ok(TaskStatus::Failed(res.error_log.unwrap_or_default())) + } + CairoJobStatus::INVALID => { + tracing::warn!( + log_type = "completed", + category = "get_task_status", + function_type = "cairo_pie", + "Cairo PIE task status: INVALID." + ); + Ok(TaskStatus::Failed(format!("Task is invalid: {:?}", res.invalid_reason.unwrap_or_default()))) + } + CairoJobStatus::UNKNOWN => { + tracing::warn!( + log_type = "unknown", + category = "get_task_status", + function_type = "cairo_pie", + "Cairo PIE task status: UNKNOWN." + ); + Ok(TaskStatus::Failed(format!("Task not found: {}", job_key))) + } + CairoJobStatus::IN_PROGRESS | CairoJobStatus::NOT_CREATED | CairoJobStatus::PROCESSED => { + tracing::info!( + log_type = "in_progress", + category = "get_task_status", + function_type = "cairo_pie", + "Cairo PIE task status: IN_PROGRESS, NOT_CREATED, or PROCESSED." + ); + Ok(TaskStatus::Processing) + } + CairoJobStatus::ONCHAIN => { + let fact = B256::from_str(fact).map_err(|e| ProverClientError::FailedToConvertFact(e.to_string()))?; + if self.fact_checker.is_valid(&fact).await? { + tracing::info!( + log_type = "onchain", + category = "get_task_status", + function_type = "cairo_pie", + "Cairo PIE task status: ONCHAIN and fact is valid." + ); + Ok(TaskStatus::Succeeded) + } else { + tracing::error!( + log_type = "onchain_failed", + category = "get_task_status", + function_type = "cairo_pie", + "Cairo PIE task status: ONCHAIN and fact is not valid." + ); + Ok(TaskStatus::Failed(format!("Fact {} is not valid or not registered", hex::encode(fact)))) + } + } + } + } +} + +impl SharpProverService { + pub fn new(sharp_client: SharpClient, fact_checker: FactChecker) -> Self { + Self { sharp_client, fact_checker } + } + + pub fn new_with_args(sharp_params: &SharpValidatedArgs) -> Self { + let sharp_client = SharpClient::new_with_args(sharp_params.sharp_url.clone(), sharp_params); + let fact_checker = FactChecker::new( + sharp_params.sharp_rpc_node_url.clone(), + sharp_params.gps_verifier_contract_address.clone(), + ); + Self::new(sharp_client, fact_checker) + } + + pub fn with_test_params(port: u16, sharp_params: &SharpValidatedArgs) -> Self { + let sharp_client = SharpClient::new_with_args( + format!("http://127.0.0.1:{}", port).parse().expect("Failed to create sharp client with the given params"), + sharp_params, + ); + let fact_checker = FactChecker::new( + sharp_params.sharp_rpc_node_url.clone(), + sharp_params.gps_verifier_contract_address.clone(), + ); + Self::new(sharp_client, fact_checker) + } +} diff --git a/orchestrator/crates/prover-clients/sharp-service/src/types.rs b/orchestrator/crates/prover-clients/sharp-service/src/types.rs new file mode 100644 index 000000000..2600bbd52 --- /dev/null +++ b/orchestrator/crates/prover-clients/sharp-service/src/types.rs @@ -0,0 +1,22 @@ +use serde::{Deserialize, Serialize}; +use starknet_os::sharp::{CairoJobStatus, InvalidReason}; + +#[derive(Default, Debug, Clone, Serialize, Deserialize)] +pub struct SharpAddJobResponse { + pub code: Option, + pub message: Option, +} + +#[derive(Default, Debug, Clone, Serialize, Deserialize)] +pub struct SharpGetProofResponse { + pub code: Option, +} + +#[derive(Default, Debug, Clone, Deserialize)] +pub struct SharpGetStatusResponse { + #[serde(default)] + pub status: CairoJobStatus, + pub invalid_reason: Option, + pub error_log: Option, + pub validation_done: Option, +} diff --git a/orchestrator/crates/prover-clients/sharp-service/tests/artifacts/fibonacci.zip b/orchestrator/crates/prover-clients/sharp-service/tests/artifacts/fibonacci.zip new file mode 100644 index 000000000..b59435368 Binary files /dev/null and b/orchestrator/crates/prover-clients/sharp-service/tests/artifacts/fibonacci.zip differ diff --git a/orchestrator/crates/prover-clients/sharp-service/tests/constants.rs b/orchestrator/crates/prover-clients/sharp-service/tests/constants.rs new file mode 100644 index 000000000..ae2db6cbc --- /dev/null +++ b/orchestrator/crates/prover-clients/sharp-service/tests/constants.rs @@ -0,0 +1,2 @@ +pub const CAIRO_PIE_PATH: &str = "/tests/artifacts/238996-SN.zip"; +pub const TEST_FACT: &str = "924cf8d0b955a889fd254b355bb7b29aa9582a370f26943acbe85b2c1a0b201b"; diff --git a/orchestrator/crates/prover-clients/sharp-service/tests/lib.rs b/orchestrator/crates/prover-clients/sharp-service/tests/lib.rs new file mode 100644 index 000000000..c59ff7333 --- /dev/null +++ b/orchestrator/crates/prover-clients/sharp-service/tests/lib.rs @@ -0,0 +1,150 @@ +use cairo_vm::types::layout_name::LayoutName; +use cairo_vm::vm::runners::cairo_pie::CairoPie; +use constants::CAIRO_PIE_PATH; +use httpmock::MockServer; +// ProverClient +use prover_client_interface::ProverClient; +use prover_client_interface::{Task, TaskStatus}; +use rstest::rstest; +use serde_json::json; +use sharp_service::{SharpProverService, SharpValidatedArgs}; +use starknet_os::sharp::CairoJobStatus; +use url::Url; +use utils::env_utils::get_env_var_or_panic; + +use crate::constants::TEST_FACT; + +mod constants; + +#[rstest] +#[tokio::test] +async fn prover_client_submit_task_works() { + dotenvy::from_filename("../.env.test").expect("Failed to load the .env file"); + + let sharp_params = SharpValidatedArgs { + sharp_customer_id: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_CUSTOMER_ID"), + sharp_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_URL")).unwrap(), + sharp_user_crt: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_USER_CRT"), + sharp_user_key: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_USER_KEY"), + sharp_rpc_node_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_RPC_NODE_URL")).unwrap(), + sharp_server_crt: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_SERVER_CRT"), + sharp_proof_layout: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_PROOF_LAYOUT"), + gps_verifier_contract_address: get_env_var_or_panic("MADARA_ORCHESTRATOR_GPS_VERIFIER_CONTRACT_ADDRESS"), + }; + + let server = MockServer::start(); + let sharp_service = SharpProverService::with_test_params(server.port(), &sharp_params); + let cairo_pie_path = env!("CARGO_MANIFEST_DIR").to_string() + CAIRO_PIE_PATH; + let cairo_pie = CairoPie::read_zip_file(cairo_pie_path.as_ref()).unwrap(); + + let sharp_response = json!( + { + "code" : "JOB_RECEIVED_SUCCESSFULLY" + } + ); + let customer_id = get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_CUSTOMER_ID"); + let sharp_add_job_call = server.mock(|when, then| { + when.path_includes("/add_job").query_param("customer_id", customer_id.as_str()); + then.status(200).body(serde_json::to_vec(&sharp_response).unwrap()); + }); + + let cairo_pie = Box::new(cairo_pie); + assert!(sharp_service.submit_task(Task::CairoPie(cairo_pie), LayoutName::dynamic).await.is_ok()); + + sharp_add_job_call.assert(); +} + +#[rstest] +#[case(CairoJobStatus::FAILED)] +#[case(CairoJobStatus::INVALID)] +#[case(CairoJobStatus::UNKNOWN)] +#[case(CairoJobStatus::IN_PROGRESS)] +#[case(CairoJobStatus::NOT_CREATED)] +#[case(CairoJobStatus::PROCESSED)] +#[ignore] +#[case(CairoJobStatus::ONCHAIN)] +#[tokio::test] +async fn prover_client_get_task_status_works(#[case] cairo_job_status: CairoJobStatus) { + dotenvy::from_filename("../.env.test").expect("Failed to load the .env file"); + + let sharp_params = SharpValidatedArgs { + sharp_customer_id: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_CUSTOMER_ID"), + sharp_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_URL")).unwrap(), + sharp_user_crt: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_USER_CRT"), + sharp_user_key: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_USER_KEY"), + sharp_rpc_node_url: Url::parse(&get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_RPC_NODE_URL")).unwrap(), + sharp_server_crt: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_SERVER_CRT"), + sharp_proof_layout: get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_PROOF_LAYOUT"), + gps_verifier_contract_address: get_env_var_or_panic("MADARA_ORCHESTRATOR_GPS_VERIFIER_CONTRACT_ADDRESS"), + }; + + let server = MockServer::start(); + let sharp_service = SharpProverService::with_test_params(server.port(), &sharp_params); + let customer_id = get_env_var_or_panic("MADARA_ORCHESTRATOR_SHARP_CUSTOMER_ID"); + + let sharp_add_job_call = server.mock(|when, then| { + when.path_includes("/get_status").query_param("customer_id", customer_id.as_str()); + then.status(200).body(serde_json::to_vec(&get_task_status_sharp_response(&cairo_job_status)).unwrap()); + }); + + let task_status = sharp_service.get_task_status("c31381bf-4739-4667-b5b8-b08af1c6b1c7", TEST_FACT).await.unwrap(); + assert_eq!(task_status, get_task_status_expectation(&cairo_job_status), "Cairo Job Status assertion failed"); + + sharp_add_job_call.assert(); +} + +fn get_task_status_expectation(cairo_job_status: &CairoJobStatus) -> TaskStatus { + match cairo_job_status { + CairoJobStatus::FAILED => TaskStatus::Failed("Sharp task failed".to_string()), + CairoJobStatus::INVALID => TaskStatus::Failed("Task is invalid: INVALID_CAIRO_PIE_FILE_FORMAT".to_string()), + CairoJobStatus::UNKNOWN => TaskStatus::Failed("".to_string()), + CairoJobStatus::IN_PROGRESS | CairoJobStatus::NOT_CREATED | CairoJobStatus::PROCESSED => TaskStatus::Processing, + CairoJobStatus::ONCHAIN => TaskStatus::Failed(format!("Fact {} is not valid or not registered", TEST_FACT)), + } +} + +fn get_task_status_sharp_response(cairo_job_status: &CairoJobStatus) -> serde_json::Value { + match cairo_job_status { + CairoJobStatus::FAILED => json!( + { + "status" : "FAILED", + "error_log" : "Sharp task failed" + } + ), + CairoJobStatus::INVALID => json!( + { + "status": "INVALID", + "invalid_reason": "INVALID_CAIRO_PIE_FILE_FORMAT", + "error_log": "The Cairo PIE file has a wrong format. Deserialization ended with exception: Invalid prefix for zip file.."} + ), + CairoJobStatus::UNKNOWN => json!( + { + "status" : "FAILED" + } + ), + CairoJobStatus::IN_PROGRESS => json!( + { + "status": "IN_PROGRESS", + "validation_done": false + } + ), + CairoJobStatus::NOT_CREATED => json!( + { + "status": "NOT_CREATED", + "validation_done": false + } + ), + CairoJobStatus::PROCESSED => json!( + { + "status": "PROCESSED", + "validation_done": false + } + ), + CairoJobStatus::ONCHAIN => json!( + { + "status": "ONCHAIN", + "validation_done": true + } + ), + } +} diff --git a/orchestrator/crates/settlement-clients/ethereum/Cargo.toml b/orchestrator/crates/settlement-clients/ethereum/Cargo.toml new file mode 100644 index 000000000..cabfb699c --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/Cargo.toml @@ -0,0 +1,48 @@ +[package] +name = "ethereum-settlement-client" +version.workspace = true +edition.workspace = true + +[dependencies] +alloy = { workspace = true, features = ["full", "node-bindings"] } +alloy-primitives = { workspace = true, default-features = false } +async-trait = { workspace = true } +bytes = { workspace = true } +c-kzg = { workspace = true } +cairo-vm = { workspace = true } +color-eyre = { workspace = true } +dotenvy = { workspace = true } +lazy_static = { workspace = true } +log.workspace = true +mockall = { workspace = true } +reqwest = { workspace = true } +rstest = { workspace = true } +serde = { workspace = true, features = ["derive"] } +settlement-client-interface = { workspace = true } +starknet-os = { workspace = true } +tokio = { workspace = true } +url = { workspace = true } +utils = { workspace = true } + +#Instrumentation +opentelemetry = { workspace = true, features = ["metrics", "logs"] } +opentelemetry-appender-tracing = { workspace = true, default-features = false } +opentelemetry-otlp = { workspace = true, features = [ + "tonic", + "metrics", + "logs", +] } +opentelemetry-semantic-conventions = { workspace = true } +opentelemetry_sdk = { workspace = true, features = ["rt-tokio", "logs"] } +thiserror = { workspace = true } +tracing = { workspace = true } +tracing-core = { workspace = true, default-features = false } +tracing-opentelemetry = { workspace = true } +tracing-subscriber = { workspace = true, features = ["env-filter"] } + + +[dev-dependencies] +tokio-test = "*" + +[features] +testing = [] diff --git a/orchestrator/crates/settlement-clients/ethereum/src/clients/interfaces/mod.rs b/orchestrator/crates/settlement-clients/ethereum/src/clients/interfaces/mod.rs new file mode 100644 index 000000000..22883820f --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/clients/interfaces/mod.rs @@ -0,0 +1 @@ +pub mod validity_interface; diff --git a/orchestrator/crates/settlement-clients/ethereum/src/clients/interfaces/validity_interface.rs b/orchestrator/crates/settlement-clients/ethereum/src/clients/interfaces/validity_interface.rs new file mode 100644 index 000000000..c02ef3175 --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/clients/interfaces/validity_interface.rs @@ -0,0 +1,160 @@ +use std::sync::Arc; + +use alloy::network::Ethereum; +use alloy::primitives::{I256, U256}; +use alloy::providers::{PendingTransactionError, Provider}; +use alloy::rpc::types::eth::TransactionReceipt; +use alloy::sol; +use alloy::transports::http::Http; +use alloy::transports::{RpcError, TransportErrorKind}; +use alloy_primitives::Bytes; +use async_trait::async_trait; + +// use bytes::Bytes; +use crate::types::LocalWalletSignerMiddleware; + +// TODO: should be moved to Zaun: +// https://github.com/keep-starknet-strange/zaun + +sol! { + #[allow(missing_docs)] + #[sol(rpc)] + interface StarknetValidityContract { + function aggregatorProgramHash() external view returns (uint256); + function cancelL1ToL2Message(uint256 toAddress, uint256 selector, uint256[] calldata payload, uint256 nonce) external returns (bytes32); + function configHash() external view returns (uint256); + function consumeMessageFromL2(uint256 fromAddress, uint256[] calldata payload) external returns (bytes32); + function finalize() external; + function getMaxL1MsgFee() external pure returns (uint256); + function identify() external pure returns (string memory); + function initialize(bytes calldata data) external; + function isFinalized() external view returns (bool); + function isFrozen() external view returns (bool); + function isOperator(address user) external view returns (bool); + function l1ToL2MessageCancellations(bytes32 msgHash) external view returns (uint256); + function l1ToL2MessageNonce() external view returns (uint256); + function l1ToL2Messages(bytes32 msgHash) external view returns (uint256); + function l2ToL1Messages(bytes32 msgHash) external view returns (uint256); + function messageCancellationDelay() external view returns (uint256); + function programHash() external view returns (uint256); + function registerOperator(address newOperator) external; + function sendMessageToL2(uint256 toAddress, uint256 selector, uint256[] calldata payload) external payable returns (bytes32, uint256); + function setAggregatorProgramHash(uint256 newAggregatorProgramHash) external; + function setConfigHash(uint256 newConfigHash) external; + function setMessageCancellationDelay(uint256 delayInSeconds) external; + function setProgramHash(uint256 newProgramHash) external; + function starknetAcceptGovernance() external; + function starknetCancelNomination() external; + function starknetIsGovernor(address user) external view returns (bool); + function starknetNominateNewGovernor(address newGovernor) external; + function starknetRemoveGovernor(address governorForRemoval) external; + function startL1ToL2MessageCancellation(uint256 toAddress, uint256 selector, uint256[] calldata payload, uint256 nonce) external returns (bytes32); + function stateBlockHash() external view returns (uint256); + function stateBlockNumber() external view returns (int256); + function stateRoot() external view returns (uint256); + function unregisterOperator(address removedOperator) external; + function updateState(uint256[] calldata programOutput, uint256 onchainDataHash, uint256 onchainDataSize) external; + function updateStateKzgDA(uint256[] calldata programOutput, bytes[] calldata kzgProofs) external; + } +} + +#[derive(Debug, thiserror::Error)] +pub enum StarknetValidityContractError { + #[error("RPC error: {0}")] + RpcError(#[from] RpcError), + #[error("Pending Transaction Error: {0}")] + PendingTransactionError(#[from] PendingTransactionError), + #[error("Failed to estimate gas: {0}")] + EstimateGasError(#[from] alloy::contract::Error), +} + +#[async_trait] +pub trait StarknetValidityContractTrait { + /// Retrieves the last block number settled + async fn state_block_number(&self) -> Result; + + /// Update the L1 state + async fn update_state( + &self, + program_output: Vec, + onchain_data_hash: U256, + onchain_data_size: U256, + ) -> Result; + + async fn update_state_kzg( + &self, + program_output: Vec, + kzg_proof: [u8; 48], + ) -> Result; +} + +#[async_trait] +impl StarknetValidityContractTrait for T +where + T: AsRef< + StarknetValidityContract::StarknetValidityContractInstance< + Http, + Arc, + Ethereum, + >, + > + Send + + Sync, +{ + async fn state_block_number(&self) -> Result { + Ok(self.as_ref().stateBlockNumber().call().await?._0) + } + + async fn update_state( + &self, + program_output: Vec, + onchain_data_hash: U256, + onchain_data_size: U256, + ) -> Result { + let base_fee = self.as_ref().provider().as_ref().get_gas_price().await?; + let from_address = self.as_ref().provider().as_ref().get_accounts().await?[0]; + let gas = self + .as_ref() + .updateState(program_output.clone(), onchain_data_hash, onchain_data_size) + .from(from_address) + .estimate_gas() + .await?; + let builder = self.as_ref().updateState(program_output, onchain_data_hash, onchain_data_size); + builder + .from(from_address) + .nonce(2) + .gas(gas) + .gas_price(base_fee) + .send() + .await? + .get_receipt() + .await + .map_err(StarknetValidityContractError::PendingTransactionError) + } + + async fn update_state_kzg( + &self, + program_output: Vec, + kzg_proof: [u8; 48], + ) -> Result { + let base_fee = self.as_ref().provider().as_ref().get_gas_price().await?; + let from_address = self.as_ref().provider().as_ref().get_accounts().await?[0]; + let proof_vec = vec![Bytes::from(kzg_proof.to_vec())]; + let gas = self + .as_ref() + .updateStateKzgDA(program_output.clone(), proof_vec.clone()) + .from(from_address) + .estimate_gas() + .await?; + let builder = self.as_ref().updateStateKzgDA(program_output, proof_vec); + builder + .from(from_address) + .nonce(2) + .gas(gas) + .gas_price(base_fee) + .send() + .await? + .get_receipt() + .await + .map_err(StarknetValidityContractError::PendingTransactionError) + } +} diff --git a/orchestrator/crates/settlement-clients/ethereum/src/clients/mod.rs b/orchestrator/crates/settlement-clients/ethereum/src/clients/mod.rs new file mode 100644 index 000000000..2f918c047 --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/clients/mod.rs @@ -0,0 +1,4 @@ +pub mod interfaces; +pub mod validity; + +pub use validity::StarknetValidityContractClient; diff --git a/orchestrator/crates/settlement-clients/ethereum/src/clients/validity.rs b/orchestrator/crates/settlement-clients/ethereum/src/clients/validity.rs new file mode 100644 index 000000000..575c6748d --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/clients/validity.rs @@ -0,0 +1,49 @@ +use std::sync::Arc; + +use alloy::network::Ethereum; +use alloy::primitives::Address; +use alloy::transports::http::Http; + +use crate::clients::interfaces::validity_interface::StarknetValidityContract; +use crate::types::LocalWalletSignerMiddleware; + +// TODO: should be moved to Zaun: +// https://github.com/keep-starknet-strange/zaun + +/// Client to interact with a Starknet core contract running in `Validity` mode +pub struct StarknetValidityContractClient { + core_contract: StarknetValidityContract::StarknetValidityContractInstance< + Http, + Arc, + Ethereum, + >, +} + +impl StarknetValidityContractClient { + pub fn new(address: Address, client: Arc) -> Self { + Self { core_contract: StarknetValidityContract::new(address, client.clone()) } + } + pub fn contract_address(&self) -> Address { + *self.core_contract.address() + } +} + +impl + AsRef< + StarknetValidityContract::StarknetValidityContractInstance< + Http, + Arc, + Ethereum, + >, + > for StarknetValidityContractClient +{ + fn as_ref( + &self, + ) -> &StarknetValidityContract::StarknetValidityContractInstance< + Http, + Arc, + Ethereum, + > { + &self.core_contract + } +} diff --git a/orchestrator/crates/settlement-clients/ethereum/src/conversion.rs b/orchestrator/crates/settlement-clients/ethereum/src/conversion.rs new file mode 100644 index 000000000..607fbd660 --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/conversion.rs @@ -0,0 +1,323 @@ +use std::fmt::Write; + +use alloy::dyn_abi::parser::Error; +use alloy::eips::eip4844::BYTES_PER_BLOB; +use alloy::primitives::U256; +use alloy_primitives::FixedBytes; +use c_kzg::{Blob, KzgCommitment, KzgProof, KzgSettings}; +use color_eyre::eyre::ContextCompat; +use color_eyre::Result as EyreResult; + +/// Converts a `&[[u8; 32]]` to `Vec`. +/// Pads with zeros if any inner slice is shorter than 32 bytes. +pub(crate) fn vec_u8_32_to_vec_u256(slices: &[[u8; 32]]) -> EyreResult> { + slices.iter().map(|slice| slice_u8_to_u256(slice)).collect() +} + +/// Converts a `&[u8]` to `U256`. +pub(crate) fn slice_u8_to_u256(slice: &[u8]) -> EyreResult { + U256::try_from_be_slice(slice).wrap_err_with(|| "could not convert &[u8] to U256".to_string()) +} + +/// Function to convert a slice of u8 to a padded hex string +/// Function only takes a slice of length up to 32 elements +/// Pads the value on the right side with zeros only if the converted string has lesser than 64 +/// characters. +pub(crate) fn to_padded_hex(slice: &[u8]) -> String { + assert!(slice.len() <= 32, "Slice length must not exceed 32"); + let hex = slice.iter().fold(String::new(), |mut output, byte| { + // 0: pads with zeros + // 2: specifies the minimum width (2 characters) + // x: formats the number as lowercase hexadecimal + // writes a byte value as a two-digit hexadecimal number (padded with a leading zero if necessary) + // to the specified output. + let _ = write!(output, "{byte:02x}"); + output + }); + format!("{:0<64}", hex) +} + +/// To get the input data +/// +/// Function to construct the transaction's `input data` for updating the state in the core +/// contract. HEX Concatenation: MethodId, Offset, length for program_output, lines count, +/// program_output, length for kzg_proof, kzg_proof All 64 chars, if lesser padded from left with 0s +pub fn get_input_data_for_eip_4844(program_output: Vec<[u8; 32]>, kzg_proof: [u8; 48]) -> Result { + // bytes4(keccak256(bytes("updateStateKzgDA(uint256[],bytes[])"))) + let method_id_hex = "0x507ee528"; + + // offset for updateStateKzgDA is 64 + let offset: u64 = 64; + let offset_hex = format!("{:0>64x}", offset); + + // program_output + let program_output_length = program_output.len(); + let program_output_hex = u8_32_slice_to_hex_string(&program_output); + + // length for program_output: 3*64 [offset, length, lines all have 64 char length] + length of + // program_output + let length_program_output = (3 * 64 + program_output_hex.len()) / 2; + let length_program_output_hex = format!("{:0>64x}", length_program_output); + + // lines count for program_output + let lines_count_hex = format!("{:0>64x}", program_output_length); + + // length of KZG proof + let length_kzg_hex = format!("{:0>64x}", kzg_proof.len()); + + // length of total kzg inputs in the vec + // hardcoded as of now + // TODO : need to update this when we are integrating the 0.13.2 updated spec with AR (Applicative + // recursion) + let length_kzg_output = format!("{:0>64x}", 1); + // Offset for 1st KZG proof starts at 32 in our case + let kzg_proof_offset = format!("{:0>64x}", 32); + // KZG proof + let kzg_proof_hex = u8_48_to_hex_string(kzg_proof); + + let input_data = method_id_hex.to_string() + + &offset_hex + + &length_program_output_hex + + &lines_count_hex + + &program_output_hex + + &length_kzg_output + + &kzg_proof_offset + + &length_kzg_hex + + &kzg_proof_hex; + + Ok(input_data) +} + +pub(crate) fn u8_32_slice_to_hex_string(data: &[[u8; 32]]) -> String { + data.iter().fold(String::new(), |mut output, arr| { + // Convert the array to a hex string + let hex = arr.iter().fold(String::new(), |mut output, byte| { + let _ = write!(output, "{byte:02x}"); + output + }); + + // Ensure the hex string is exactly 64 characters (32 bytes) + let _ = write!(output, "{hex:0>64}"); + output + }) +} + +pub(crate) fn u8_48_to_hex_string(data: [u8; 48]) -> String { + // Split the array into two parts + let (first_32, last_16) = data.split_at(32); + + // Convert and pad each part + let first_hex = to_padded_hex(first_32); + let second_hex = to_padded_hex(last_16); + + // Concatenate the two hex strings + first_hex + &second_hex +} + +/// To prepare the sidecar for EIP 4844 transaction +pub(crate) async fn prepare_sidecar( + state_diff: &[Vec], + trusted_setup: &KzgSettings, +) -> EyreResult<(Vec>, Vec>, Vec>)> { + let mut sidecar_blobs = vec![]; + let mut sidecar_commitments = vec![]; + let mut sidecar_proofs = vec![]; + + for blob_data in state_diff { + let fixed_size_blob: [u8; BYTES_PER_BLOB] = blob_data.as_slice().try_into()?; + + let blob = Blob::new(fixed_size_blob); + + let commitment = KzgCommitment::blob_to_kzg_commitment(&blob, trusted_setup)?; + + let proof = KzgProof::compute_blob_kzg_proof(&blob, &commitment.to_bytes(), trusted_setup)?; + + sidecar_blobs.push(FixedBytes::new(fixed_size_blob)); + sidecar_commitments.push(FixedBytes::new(commitment.to_bytes().into_inner())); + sidecar_proofs.push(FixedBytes::new(proof.to_bytes().into_inner())); + } + + Ok((sidecar_blobs, sidecar_commitments, sidecar_proofs)) +} + +#[cfg(test)] +mod tests { + + use std::fs; + use std::path::Path; + + use color_eyre::eyre::eyre; + use rstest::rstest; + + use super::*; + + #[rstest] + #[case::typical(&[ + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, + 0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, + 0x88, 0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF + ], U256::from_str_radix("00112233445566778899AABBCCDDEEFF00112233445566778899AABBCCDDEEFF", 16).unwrap())] + #[case::minimum(&[0; 32], U256::ZERO)] + #[case::maximum(&[0xFF; 32], U256::MAX)] + #[case::short(&[0xFF; 16], U256::from_be_slice(&[0xFF; 16]))] + #[case::empty(&[], U256::ZERO)] + #[should_panic(expected = "could not convert &[u8] to U256")] + #[case::over(&[0xFF; 33],U256::from_be_slice(&[0xFF;32]))] + fn slice_u8_to_u256_all_working_and_failing_cases(#[case] slice: &[u8], #[case] expected: U256) { + assert_eq!(slice_u8_to_u256(slice).expect("slice_u8_to_u256 failed"), expected) + } + + #[rstest] + #[case::empty(&[], vec![])] + #[case::single( + &[[1; 32]], + vec![U256::from_be_slice(&[1; 32])] + )] + #[case::multiple( + &[ + [1; 32], + [2; 32], + [3; 32], + ], + vec![ + U256::from_be_slice(&[1; 32]), + U256::from_be_slice(&[2; 32]), + U256::from_be_slice(&[3; 32]), + ] + )] + #[case::mixed( + &[ + [0xFF; 32], + [0x00; 32], + [0x12, 0x34, 0x56, 0x78, 0x9A, 0xBC, 0xDE, 0xF0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], + ], + vec![ + U256::MAX, + U256::ZERO, + U256::from_be_slice(&[0x12, 0x34, 0x56, 0x78, 0x9A, 0xBC, 0xDE, 0xF0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), + ] + )] + fn vec_u8_32_to_vec_u256_works(#[case] slices: &[[u8; 32]], #[case] expected: Vec) { + match vec_u8_32_to_vec_u256(slices) { + Ok(response) => { + assert_eq!(response, expected); + } + Err(e) => { + panic!("{}", e); + } + } + } + + #[rstest] + #[case::empty(&[], "0".repeat(64))] + #[case::typical(&[0xFF,0xFF,0xFF,0xFF], format!("{}{}", "ff".repeat(4), "0".repeat(56)))] + #[case::big(&[0xFF; 32], format!("{}", "ff".repeat(32)))] + #[should_panic(expected = "Slice length must not exceed 32")] + #[case::exceeding(&[0xFF; 40], format!("{}", "ff".repeat(32)))] + fn to_hex_string_working_and_failing_cases(#[case] slice: &[u8], #[case] expected: String) { + let result = to_padded_hex(slice); + assert_eq!(result, expected); + assert!(expected.len() == 64); + } + + #[rstest] + #[case::typical([ + 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + ], + "0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f3000000000000000000000000000000000")] + #[case::single_value( + [0xFF;48], + format!("{}{}","ff".repeat(48), "00".repeat(16)) + )] + fn u8_48_to_hex_string_works(#[case] slice: [u8; 48], #[case] expected: String) { + let result = u8_48_to_hex_string(slice); + assert_eq!(result, expected); + } + + #[rstest] + #[case::typical( + vec![ + [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32], + [32, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1], + [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 0, 0] + ], + "0102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20201f1e1d1c1b1a191817161514131211100f0e0d0c0b0a0908070605040302010102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e0000" + )] + #[case::single_value( + vec![ + [0xFF;32], + [0xF5;32], + ], + format!("{}{}", "ff".repeat(32), "f5".repeat(32)) + )] + fn u8_32_slice_to_hex_string_works(#[case] slice: Vec<[u8; 32]>, #[case] expected: String) { + let result = u8_32_slice_to_hex_string(&slice); + assert_eq!(result, expected); + } + + // block_no here are Ethereum(mainnet) blocks, we are creating sidecar and validating + // the function by matching pre-existing commitments against computed. + // https://etherscan.io/tx/0x4e012b119391bdc192653bfee9758c432ea6f35ff23f8af60a7dca4664383dfc + // https://etherscan.io/tx/0x96470b890833c5ae51622bd6efca98d8eec3b4a66402c34be3cdcacf006eb9a0 + #[rstest] + #[case("20462788")] + #[case("20462818")] + #[tokio::test] + async fn prepare_sidecar_works(#[case] fork_block_no: String) { + // Trusted Setup + let current_path = std::env::current_dir().unwrap().to_str().unwrap().to_string(); + + let trusted_setup_file_path = current_path.clone() + "/src/trusted_setup.txt"; + let trusted_setup = KzgSettings::load_trusted_setup_file(Path::new(trusted_setup_file_path.as_str())) + .expect("issue while loading the trusted setup"); + + // Blob Data + let blob_data_file_path = + format!("{}{}{}{}", current_path.clone(), "/src/test_data/blob_data/", fork_block_no, ".txt"); + let blob_data = fs::read_to_string(blob_data_file_path).expect("Failed to read the blob data txt file"); + + // Blob Commitment + let blob_commitment_file_path = + format!("{}{}{}{}", current_path.clone(), "/src/test_data/blob_commitment/", fork_block_no, ".txt"); + let blob_commitment = + fs::read_to_string(blob_commitment_file_path).expect("Failed to read the blob data txt file"); + + // Blob Proof + let blob_proof_file_path = + format!("{}{}{}{}", current_path.clone(), "/src/test_data/blob_proof/", fork_block_no, ".txt"); + let blob_proof = fs::read_to_string(blob_proof_file_path).expect("Failed to read the blob data txt file"); + + fn hex_string_to_u8_vec(hex_str: &str) -> color_eyre::Result> { + // Remove any spaces or non-hex characters from the input string + let cleaned_str: String = hex_str.chars().filter(|c| c.is_ascii_hexdigit()).collect(); + + // Convert the cleaned hex string to a Vec + let mut result = Vec::new(); + for chunk in cleaned_str.as_bytes().chunks(2) { + if let Ok(byte_val) = u8::from_str_radix(std::str::from_utf8(chunk)?, 16) { + result.push(byte_val); + } else { + return Err(eyre!("Error parsing hex string: {}", cleaned_str)); + } + } + + Ok(result) + } + + let blob_data_vec = vec![hex_string_to_u8_vec(&blob_data).unwrap()]; + + match prepare_sidecar(&blob_data_vec, &trusted_setup).await { + Ok(result) => { + let (_, sidecar_commitments, sidecar_proofs) = result; + // Assumption: since only 1 blob, thus only 1 commitment and proof + assert_eq!(blob_commitment, sidecar_commitments[0].to_string()); + assert_eq!(blob_proof, sidecar_proofs[0].to_string()); + } + Err(err) => { + panic!("{}", err.to_string()) + } + } + } +} diff --git a/orchestrator/crates/settlement-clients/ethereum/src/lib.rs b/orchestrator/crates/settlement-clients/ethereum/src/lib.rs new file mode 100644 index 000000000..4f978348e --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/lib.rs @@ -0,0 +1,429 @@ +use std::path::PathBuf; +use std::str::FromStr; +use std::sync::Arc; +use std::time::Duration; + +use alloy::consensus::{ + BlobTransactionSidecar, SignableTransaction, TxEip4844, TxEip4844Variant, TxEip4844WithSidecar, TxEnvelope, +}; +#[cfg(not(feature = "testing"))] +use alloy::eips::eip2718::Encodable2718; +use alloy::eips::eip2930::AccessList; +use alloy::eips::eip4844::BYTES_PER_BLOB; +use alloy::hex; +use alloy::network::EthereumWallet; +use alloy::primitives::{Address, B256, U256}; +use alloy::providers::{Provider, ProviderBuilder}; +use alloy::rpc::types::TransactionReceipt; +use alloy::signers::local::PrivateKeySigner; +use alloy_primitives::Bytes; +use async_trait::async_trait; +use c_kzg::{Blob, Bytes32, KzgCommitment, KzgProof, KzgSettings}; +use color_eyre::eyre::{bail, Ok}; +use color_eyre::Result; +use conversion::{get_input_data_for_eip_4844, prepare_sidecar}; +use settlement_client_interface::{SettlementClient, SettlementVerificationStatus}; +use url::Url; +#[cfg(feature = "testing")] +use utils::env_utils::get_env_var_or_panic; + +use crate::clients::interfaces::validity_interface::StarknetValidityContractTrait; +use crate::clients::StarknetValidityContractClient; +use crate::conversion::{slice_u8_to_u256, vec_u8_32_to_vec_u256}; +pub mod clients; +pub mod conversion; +pub mod tests; +pub mod types; +use alloy::providers::RootProvider; +use alloy::transports::http::Http; +use color_eyre::eyre::WrapErr; +use lazy_static::lazy_static; +use mockall::automock; +use reqwest::Client; +use tokio::time::sleep; + +use crate::types::{bytes_be_to_u128, convert_stark_bigint_to_u256}; + +pub const ENV_PRIVATE_KEY: &str = "MADARA_ORCHESTRATOR_ETHEREUM_PRIVATE_KEY"; +const X_0_POINT_OFFSET: usize = 10; +const Y_LOW_POINT_OFFSET: usize = 14; +const Y_HIGH_POINT_OFFSET: usize = Y_LOW_POINT_OFFSET + 1; + +// Ethereum Transaction Finality +const MAX_TX_FINALISATION_ATTEMPTS: usize = 30; +const REQUIRED_BLOCK_CONFIRMATIONS: u64 = 3; +const TX_WAIT_SLEEP_DELAY_SECS: u64 = 60; + +lazy_static! { + pub static ref PROJECT_ROOT: PathBuf = PathBuf::from(format!("{}/../../../", env!("CARGO_MANIFEST_DIR"))); + pub static ref KZG_SETTINGS: KzgSettings = KzgSettings::load_trusted_setup_file( + &PROJECT_ROOT.join("crates/settlement-clients/ethereum/src/trusted_setup.txt") + ) + .expect("Error loading trusted setup file"); +} + +#[derive(Clone, Debug)] +pub struct EthereumSettlementValidatedArgs { + pub ethereum_rpc_url: Url, + + pub ethereum_private_key: String, + + pub l1_core_contract_address: Address, + + pub starknet_operator_address: Address, +} + +#[allow(dead_code)] +pub struct EthereumSettlementClient { + core_contract_client: StarknetValidityContractClient, + wallet: EthereumWallet, + wallet_address: Address, + provider: Arc>>, + impersonate_account: Option
, +} + +impl EthereumSettlementClient { + pub fn new_with_args(settlement_cfg: &EthereumSettlementValidatedArgs) -> Self { + let private_key = settlement_cfg.ethereum_private_key.clone(); + let signer: PrivateKeySigner = private_key.parse().expect("Failed to parse private key"); + let wallet_address = signer.address(); + let wallet = EthereumWallet::from(signer); + + // provider without wallet + let provider = Arc::new(ProviderBuilder::new().on_http(settlement_cfg.ethereum_rpc_url.clone())); + + // provider with wallet + let filler_provider = Arc::new( + ProviderBuilder::new() + .with_recommended_fillers() + .wallet(wallet.clone()) + .on_http(settlement_cfg.ethereum_rpc_url.clone()), + ); + + let core_contract_client = + StarknetValidityContractClient::new(settlement_cfg.l1_core_contract_address, filler_provider); + + EthereumSettlementClient { provider, core_contract_client, wallet, wallet_address, impersonate_account: None } + } + + #[cfg(feature = "testing")] + pub fn with_test_params( + provider: RootProvider>, + core_contract_address: Address, + rpc_url: Url, + impersonate_account: Option
, + ) -> Self { + let private_key = get_env_var_or_panic(ENV_PRIVATE_KEY); + let signer: PrivateKeySigner = private_key.parse().expect("Failed to parse private key"); + let wallet_address = signer.address(); + let wallet = EthereumWallet::from(signer); + + let fill_provider = + Arc::new(ProviderBuilder::new().with_recommended_fillers().wallet(wallet.clone()).on_http(rpc_url)); + + let core_contract_client = StarknetValidityContractClient::new(core_contract_address, fill_provider); + + EthereumSettlementClient { + provider: Arc::new(provider), + core_contract_client, + wallet, + wallet_address, + impersonate_account, + } + } + + /// Build kzg proof for the x_0 point evaluation + pub fn build_proof( + blob_data: Vec>, + x_0_value: Bytes32, + y_0_value_program_output: Bytes32, + ) -> Result { + // Assuming that there is only one blob in the whole Vec> array for now. + // Later we will add the support for multiple blob in single blob_data vec. + assert_eq!(blob_data.len(), 1); + + let fixed_size_blob: [u8; BYTES_PER_BLOB] = blob_data[0].as_slice().try_into()?; + + let blob = Blob::new(fixed_size_blob); + let commitment = KzgCommitment::blob_to_kzg_commitment(&blob, &KZG_SETTINGS)?; + let (kzg_proof, y_0_value) = KzgProof::compute_kzg_proof(&blob, &x_0_value, &KZG_SETTINGS)?; + + if y_0_value != y_0_value_program_output { + bail!( + "ERROR : y_0 value is different than expected. Expected {:?}, got {:?}", + y_0_value, + y_0_value_program_output + ); + } + + // Verifying the proof for double check + let eval = KzgProof::verify_kzg_proof( + &commitment.to_bytes(), + &x_0_value, + &y_0_value, + &kzg_proof.to_bytes(), + &KZG_SETTINGS, + )?; + + if !eval { + bail!("ERROR : Assertion failed, not able to verify the proof."); + } + Ok(kzg_proof) + } +} + +#[automock] +#[async_trait] +impl SettlementClient for EthereumSettlementClient { + /// Should register the proof on the base layer and return an external id + /// which can be used to track the status. + #[allow(unused)] + async fn register_proof(&self, proof: [u8; 32]) -> Result { + todo!("register_proof is not implemented yet") + } + + /// Should be used to update state on core contract when DA is done in calldata + async fn update_state_calldata( + &self, + program_output: Vec<[u8; 32]>, + onchain_data_hash: [u8; 32], + onchain_data_size: [u8; 32], + ) -> Result { + tracing::info!( + log_type = "starting", + category = "update_state", + function_type = "calldata", + "Updating state with calldata." + ); + let program_output: Vec = vec_u8_32_to_vec_u256(program_output.as_slice())?; + let onchain_data_hash: U256 = slice_u8_to_u256(&onchain_data_hash)?; + let onchain_data_size = U256::from_be_bytes(onchain_data_size); + let tx_receipt = + self.core_contract_client.update_state(program_output, onchain_data_hash, onchain_data_size).await?; + tracing::info!( + log_type = "completed", + category = "update_state", + function_type = "calldata", + tx_hash = %tx_receipt.transaction_hash, + "State updated with calldata." + ); + Ok(format!("0x{:x}", tx_receipt.transaction_hash)) + } + + /// Should be used to update state on core contract when DA is in blobs/alt DA + async fn update_state_with_blobs( + &self, + program_output: Vec<[u8; 32]>, + state_diff: Vec>, + _nonce: u64, + ) -> Result { + tracing::info!( + log_type = "starting", + category = "update_state", + function_type = "blobs", + "Updating state with blobs." + ); + let (sidecar_blobs, sidecar_commitments, sidecar_proofs) = prepare_sidecar(&state_diff, &KZG_SETTINGS).await?; + let sidecar = BlobTransactionSidecar::new(sidecar_blobs, sidecar_commitments, sidecar_proofs); + + let eip1559_est = self.provider.estimate_eip1559_fees(None).await?; + let chain_id: u64 = self.provider.get_chain_id().await?.to_string().parse()?; + + let max_fee_per_blob_gas: u128 = self.provider.get_blob_base_fee().await?.to_string().parse()?; + + // calculating y_0 point + let y_0 = Bytes32::from( + convert_stark_bigint_to_u256( + bytes_be_to_u128(&program_output[Y_LOW_POINT_OFFSET]), + bytes_be_to_u128(&program_output[Y_HIGH_POINT_OFFSET]), + ) + .to_be_bytes(), + ); + + // x_0_value : program_output[10] + // Updated with starknet 0.13.2 spec + let x_0_point = Bytes32::from_bytes(program_output[X_0_POINT_OFFSET].as_slice()) + .wrap_err("Failed to get x_0 point params")?; + + let kzg_proof = Self::build_proof(state_diff, x_0_point, y_0).wrap_err("Failed to build KZG proof")?.to_owned(); + + let input_bytes = get_input_data_for_eip_4844(program_output, kzg_proof)?; + + let nonce = self.provider.get_transaction_count(self.wallet_address).await?.to_string().parse()?; + + // add a safety margin to the gas price to handle fluctuations + let add_safety_margin = |n: u128, div_factor: u128| n + n / div_factor; + + let max_fee_per_gas: u128 = eip1559_est.max_fee_per_gas.to_string().parse()?; + let max_priority_fee_per_gas: u128 = eip1559_est.max_priority_fee_per_gas.to_string().parse()?; + + let tx: TxEip4844 = TxEip4844 { + chain_id, + nonce, + // we noticed Starknet uses the same limit on mainnet + // https://etherscan.io/tx/0x8a58b936faaefb63ee1371991337ae3b99d74cb3504d73868615bf21fa2f25a1 + gas_limit: 5_500_000, + max_fee_per_gas: add_safety_margin(max_fee_per_gas, 5), + max_priority_fee_per_gas: add_safety_margin(max_priority_fee_per_gas, 5), + to: self.core_contract_client.contract_address(), + value: U256::from(0), + access_list: AccessList(vec![]), + blob_versioned_hashes: sidecar.versioned_hashes().collect(), + max_fee_per_blob_gas: add_safety_margin(max_fee_per_blob_gas, 5), + input: Bytes::from(hex::decode(input_bytes)?), + }; + + let tx_sidecar = TxEip4844WithSidecar { tx: tx.clone(), sidecar: sidecar.clone() }; + + let mut variant = TxEip4844Variant::from(tx_sidecar); + let signature = self.wallet.default_signer().sign_transaction(&mut variant).await?; + let tx_signed = variant.into_signed(signature); + let tx_envelope: TxEnvelope = tx_signed.into(); + + #[cfg(feature = "testing")] + let pending_transaction = { + let txn_request = { + test_config::configure_transaction(self.provider.clone(), tx_envelope, self.impersonate_account).await + }; + self.provider.send_transaction(txn_request).await? + }; + + #[cfg(not(feature = "testing"))] + let pending_transaction = { + let encoded = tx_envelope.encoded_2718(); + self.provider.send_raw_transaction(encoded.as_slice()).await? + }; + + tracing::info!( + log_type = "completed", + category = "update_state", + function_type = "blobs", + "State updated with blobs." + ); + + log::warn!("ā³ Waiting for txn finality......."); + + let res = self.wait_for_tx_finality(&pending_transaction.tx_hash().to_string()).await?; + + match res { + Some(_) => { + log::info!("Txn hash : {:?} Finalized āœ…", pending_transaction.tx_hash().to_string()); + } + None => { + log::error!("Txn hash not finalised"); + } + } + Ok(pending_transaction.tx_hash().to_string()) + } + + /// Should verify the inclusion of a tx in the settlement layer + async fn verify_tx_inclusion(&self, tx_hash: &str) -> Result { + tracing::info!( + log_type = "starting", + category = "verify_tx", + function_type = "inclusion", + tx_hash = %tx_hash, + "Verifying tx inclusion." + ); + let tx_hash = B256::from_str(tx_hash)?; + let maybe_tx_status: Option = self.provider.get_transaction_receipt(tx_hash).await?; + match maybe_tx_status { + Some(tx_status) => { + if tx_status.status() { + tracing::info!( + log_type = "completed", + category = "verify_tx", + function_type = "inclusion", + tx_hash = %tx_status.transaction_hash, + "Tx inclusion verified." + ); + Ok(SettlementVerificationStatus::Verified) + } else { + tracing::info!( + log_type = "pending", + category = "verify_tx", + function_type = "inclusion", + tx_hash = %tx_status.transaction_hash, + "Tx inclusion pending." + ); + Ok(SettlementVerificationStatus::Pending) + } + } + None => { + tracing::info!( + log_type = "pending", + category = "verify_tx", + function_type = "inclusion", + tx_hash = %tx_hash, + "Tx inclusion pending." + ); + Ok(SettlementVerificationStatus::Pending) + } + } + } + + /// Wait for a pending tx to achieve finality + async fn wait_for_tx_finality(&self, tx_hash: &str) -> Result> { + for _ in 0..MAX_TX_FINALISATION_ATTEMPTS { + if let Some(receipt) = + self.provider.get_transaction_receipt(B256::from_str(tx_hash).expect("Unable to form")).await? + { + if let Some(block_number) = receipt.block_number { + let latest_block = self.provider.get_block_number().await?; + let confirmations = latest_block.saturating_sub(block_number); + if confirmations >= REQUIRED_BLOCK_CONFIRMATIONS { + return Ok(Some(block_number)); + } + } + } + sleep(Duration::from_secs(TX_WAIT_SLEEP_DELAY_SECS)).await; + } + Ok(None) + } + + /// Get the last block settled through the core contract + async fn get_last_settled_block(&self) -> Result { + let block_number = self.core_contract_client.state_block_number().await?; + Ok(block_number.try_into()?) + } + + async fn get_nonce(&self) -> Result { + let nonce = self.provider.get_transaction_count(self.wallet_address).await?.to_string().parse()?; + Ok(nonce) + } +} + +#[cfg(feature = "testing")] +mod test_config { + use alloy::network::TransactionBuilder; + use alloy::rpc::types::TransactionRequest; + + use super::*; + + #[allow(dead_code)] + pub async fn configure_transaction( + provider: Arc>>, + tx_envelope: TxEnvelope, + impersonate_account: Option
, + ) -> TransactionRequest { + let mut txn_request: TransactionRequest = tx_envelope.into(); + + // IMPORTANT to understand #[cfg(test)], #[cfg(not(test))] and SHOULD_IMPERSONATE_ACCOUNT + // Two tests : `update_state_blob_with_dummy_contract_works` & + // `update_state_blob_with_impersonation_works` use a env var `SHOULD_IMPERSONATE_ACCOUNT` to inform + // the function `update_state_with_blobs` about the kind of testing, + // `SHOULD_IMPERSONATE_ACCOUNT` can have any of "0" or "1" value : + // - if "0" then : Testing via default Anvil address. + // - if "1" then : Testing via impersonating `Starknet Operator Address`. + // Note : changing between "0" and "1" is handled automatically by each test function, `no` manual + // change in `env.test` is needed. + if let Some(impersonate_account) = impersonate_account { + let nonce = + provider.get_transaction_count(impersonate_account).await.unwrap().to_string().parse::().unwrap(); + txn_request.set_nonce(nonce); + txn_request = txn_request.with_from(impersonate_account); + } + + txn_request + } +} diff --git a/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_commitment/20462788.txt b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_commitment/20462788.txt new file mode 100644 index 000000000..8302f7268 --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_commitment/20462788.txt @@ -0,0 +1 @@ +0x80f3ffd8f64bb2558910bb58f6f197e24dc624a977e5df21d83e2d254129c70d894b81c5118956ed4d9704b500a5a277 \ No newline at end of file diff --git a/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_commitment/20462818.txt b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_commitment/20462818.txt new file mode 100644 index 000000000..3077d6ce1 --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_commitment/20462818.txt @@ -0,0 +1 @@ +0xb0f7bd1923aabfcb98b8e6341fc4d5035f685ca4940f185574d411b83b0bffe2f99d2c6c6b8977e9de8ca5f15df6f963 \ No newline at end of file diff --git a/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_data/20462788.txt b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_data/20462788.txt new file mode 100644 index 000000000..1eabf8d9b --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_data/20462788.txt @@ -0,0 +1 @@ +1f1090678692149b3fc41c910078cd9fa7d1dce2e2db2b572da17949f050afb856eb357ef69289bdbf69a2a48eb3349b4ffb2b6a6a218f5a5dff4b6f53c4debc4d33fdff0a68657342a8e2d6c2e89799c8c0db289e1a5dfb3339cd069d89105e03e889a83e6a37eb9fa2fee024f9639494d0b1ce14010d0b163df15cbef973054c97c92d7efa119e72ddc4ea476eae202e429804232ee21cc8a496afa7dc5e9801839da51abca71ae96c540fe8275cf4f0a2963ab4efffaf7cbe905ea913708f6b96d89f1d8cbd07a71ec0e696525b7c08468a99054c8bebf2111a1e439b71386eb1dc020e20ea86bd0a3be15973fb35d246df77c192144c766a613e121c4fe348e0bcbcae76d086b45a2f2cc7c95f9f7af0f00ac71a3b508306808585b444790b4471687d27ebf46461786a38191943c133d95a6351514111f298668e6685d1404f3e7ecf32b488b761f83aa0226d6811da3ca2cf7875c984ce124a70c7e10f692844603b590928a27ea86c9f6f60f29eb0b73ab4366f365f6b9bfceeb4c4b971e86b8ae908667f242bcd9a44324b533677ddc039363bdf9d0325d43fe4fdfc051ef868e536b13319ab6020837bbc79445855d2ce190bd6fabdc3abcd5bff57665141e66770f07ed7046f6014a22b0fc61f52eac811cd3a1d568af316839d39513ed41d8269f256c35e9e74074d82d4dde6bac415f104eee006a4692ec9568e2d29315b98b33d31f3adae4e178fcb0f3f8d33372ca21a7e8a437fa4e7208fdb464bff58b03c029777ca87e76faeae028ab4dcee16f3166f80edab629e49c09b2ff19102bd0ca01d6f4cd003c0117f56c3588733de45a1d9ec465834bdf62299020daaded4fa909a9c6c0cd07cf3e48851280221e2ecf81e5bf14ff23b3381cf507b020e9d199c8a105bfe1cd61748c1d0f945ab9ac5e7d4883fe2b9251e9a7817d66438f6bb0a74ecc673a493cb4eb28bda79a35ec41b29038d822887b883ac27236cf7f606872d2ae77dbb394fbd81dce76a231d9f759d585a6435cb7f29833b3a9357148d9060ae092e3cfb449486634dc22113fffe4c26375ccf9d8244701ac4f5e01dfaa1f81311dca7d01d0c08f55cb93ea9756faa00795ee1a1e07fb15765373389a20e66fab55d82b9d0b322e165f4a653e31f4b1eceed918d62a6115ac6cbfc126b4546d27541a925683797efcaf1772b599c518b86eec76d7c96ea5b5e3dabf9963e8979a37ac09c34510c28a6d1f49094e86351fe9e676deab14c10fc32431665571c1ff237cab6a03b9ae0db0a0142d7f420b74cad71dc3b0ad76dcb12a0e62d313ed20e4c50f49aee7badf36b3db43cb0713c2cda06b7cd55384d38c2a29baa13fd2dcbe3243be48da5fc682eb8320b8672e80a1fe5041d2ca13040dae78d1552f36e8cf271c4ac67b8d74e210bafcbe20b5fc0751f81ce7568451349ac0060ee02f60fe6efe5be3916509620bca6223a770beee8bd3be10a2c4866cfcfcc8cea05ebebb967dd52b7db77a92a4d52ff4c3cbd9abda83a7b99f91286b017650e7a85ba3e985ed59ba3bcdb26961e9c3e7fc04cc195669be706041872073f2aa4c4b15733f308a376e3f3c2de1fb9c9348addda2ed1648f8226f2642ccf614c454bcc7dd74f91665d1a9b428f76e0a66f8a1fd23462cb52eb00e462110ff386e2a73f13c17df0830f0c7a76618fd7676a0f3cfbca96467aa770864a8a8c96e67a2e3f016589b3e13572a6fb0b07dca040091eb96ce07ca35fd28c53991e7f062d1dd50b79ee569b9f85b64b345ed9c1a328392a3f871373fd179a33d2c4802b99cad3c875777de7034bbebb4aca014c9665e5efa8b245b088852256ee91324d128b8b241b547d4eb12ebb86a3233d18b5a538d138d7dc68ec9f355acb77f8d775605873f5496543919e7a5c2fdd9d9aac325b8366166d5789c7a5606a38829fbe93c081fb7e1209bd66768e31428c32f6972ced072de8b51db27d572b798c6a7394c4f7316469e1b0bc9fdcca123709740fa7d6df61ef12caa6422c38c2550594707eb5692dbd4ebbb6d197b41adaa0cf8c1fe565ec7fe12077ea6e79d15e6652aa9903030785d9948bfa4de3902bcee3e803e6866de67bf6807d4bdbaca75de87b94307db1a85fbaf91969c584f21e1de2446c3d2e76a3315b3c33e1172540021644f91ca82dd6eafb6493de00df8d16c0c4c6d6ff3980184a431580bd26e509588d1a7f66c4f023eec66b1afccd0709825c7a84dc2ede3f6b48309d5ac19c45a4156c634c13c17ef64207e73a2e486737dca2fb0a32e229f3023835a0437236a6332d77b4c131364cc8544732702cc3fbd78ae1188f41314b35112753b937377a6d7eedec7717597f42eac03b5cdbada6dc15942e9f63ad30352d25f60ebea3b23a74151d23656f8efe2f3b4dd1934e9f1a98534d41384b913b49c2aa52a021187db9edd82d35e6310064e3959cbb6dce279cbb11ce8ace28ca196370cd90f7a09126fc44bdc8557aae26de77b2fb8cc2a63a93933817fc78896b04d6a64f15dcdd4383c86116485363f0c584dc9469cdc915b7a6ac3e8973fc5f19870105bfd3774e94e453d21c175e826d10f3ee2fae4c3afccaec4854757418840fafad380bb9e233a25a2fa9228d28d8a9ee95e28fcc70750150e78897675ae412e1ff9cb67fcdc27891348f95b07bd1f172fc1f505e3082593c0abe944666877bd900c360437460124a176336e4d0fef9f0f2da82eb74eedf00848e44ce5db761153907534eee393988e937f90200cee62bd9f79208a3e390156bb358835306b02f70718462cbcea14346696b8144c3ad18cd69f9369292a32f440c7d6a0b215e55b623afbdd966edad6513e569f92254366b432c307dd51071928f09c601422ae589350c13274d175b6211d23c416124968def616b45ac2428ec01205b380bab3940ebb35bb2ac2f1f959d230b5acaf4a619d33fd4ee3a5ed38b5e433c37cfcd33bc6b77bbd669faad0347342b914c832d8418d9e17586d41dd15e30a459167112c3e361e1504b697f2e25c8d9e9d6a500f6f9bbd8bdea107d38e37fee0c210001409f1bc92db5717c5e1d7e6617b2ea0270284a0f615b89d36b79bc243fde04e162a115432fa4c9ee028c7c950477f65d47eb686ed13c1ed186ea415c2667fa33fb5242a5201473f1dc87fac8d17416b8692e49a2171e63b096b7094343f691a0dafb22d70548a0f8cdb7795e6cfca7894cd8fce4444f24f7794938301e6b31da181d2a4f2dee9bfc4cba6d58db0f457e7d8c7303b791807f3a739466615ffc52c8e6a467bc114b492fea4da453856488d32bb57ff7ec928669850d4668a14a2ff550d5f8aabda872708e9768e4a7b7026a14f33406093d3ce33f3a193322087a8deb843e4766f12406a72503d59abad7fea92e8a294760489faacba6127834a0c060eac80295097c3ecb0965e07a17d96474833d796d34811e30a6a54578fc35b47eea55666e5c438db1026e8f91b2712ecba8cd15e06ef7e3bccf9c6ed190aa3c9072d5139498e504e568b9ad8f0dc0fe52500fafc5e0acd17d421e636f1d01937ca9b44a3684577d4e18e5d2c7d54f5dd21f5dc43eaf6b2cb5ad4b72919604b15f8daa36ed2ca535e9a6e199f3b6a31cdc0a1d8cc135c5a77cc94d2b38d8aedcd260d9ca4830b5a2f8731bbbb55b0d9755a1bcd721e06a2bc689e409030e15d74a331ad4eaabae2f1f796b6fe485141f0daad98f9d53f38f2746436cc7c9d50b796a0075df86d96d89125a8afe12aa413f294d7acd6c42d1e4be432e156c16d3468049d0f56474061dc8f4ba7c02f0f976e0105da60589dc7e490a5b276edb9a63b1e24fd1ce1fec84e50e318596133deb925af893fd05c5678fa403637d5ebbea39eda23dd228726ad899e412c1669b54ffac4c223338e6d1649520df1d34bdfaa95dccea10af6f3e238e671a3748688ddb0637818d044e82879e3694d1a0955f3cd2c5894428c724b6dba8c0ebf46899c6b0bdc0d5cbded876de006d33ef0288ab5627268f6d5df6705a88b60f18f5f0b5a9e7bff5fc32e50eaa328bb9b4f8dfb49e7518a77fdf979166f45e48cf0b4435b8f9136c8435bf600a462f50ce3f15d7eaec7895ac869eb3e83eaf55d87af3af658646828346f7476f26d00b0f503352adac104b7ff11dfd192ad094e18d662366d713f7a078dc155e3ad0231f0b234d82952e992a096af01557a240e07741e1b7b264fac23b4e2c9b041540158dbf190f0d60cfa13242d9a40149093f4bc50710c18442db46fe0a81636447046e40035da639a294b1cf1a3b9f8e53a38ffe0ec1384a66d563d15c732f1bd7bb14305b87cf2dfee4779c4ed0069a8cb5fa7a8713892dd12e5db52a3f0bfaf489b7ab057588d7634b310b2e43815a67b4ccc4f871dbfd6900bd71bfdb0a3a6092b5fea7dde0d1ee4c4b67322a9c6044d1f31dfce7a7dbfe5da48032c06cc52681e8ea2acf337e4aafae75abf8e859bf84d6c8562beaa6028682f914fb3463d939933a29c1db72a6134b99d5866a4899dc8b33f7e2e64a88b823098e654179e9954070a688888c72abe405f97e88afee2d0e6c6a5b3085af0f4587adc55991487cbcb7b5532c0b3a74bf69ebf0047472aacf4dcbb059b8f44c50332b9e47d0869bc62164f5aa6740cf41c707f1d8a92631ea7033f9f2353ef51a4f10f072db48aac30ae0eee0453820d42b531fcae12c2eeb3683624af26df47da340e541336a3ddafa6401e2ba06748869631d80c1ed47f19e2d10ea3dce90a3172d1902eef270d89df11c195db2cc1b30c692e06ea1ae678faa9718281e18ad22d7d90050fa61690c8a8f6ddefd59c4accf2946565bff22a425684385059e5afa5269659a06b0a754d00ed64d338ca2747f9fa6909732d0e201b59feebc42fcffa1714db2c6104a7859a4dc9b11f67747549ac1e5ed307c91324213ca4bf8e7de26d50c7b986bfba3d95f32bd0c6d7321d0ce593d209bf81064531b04d319ba7858c40e9d00c5bca088bdaa997a14d49722851b183154d3dd55cbe22b6ba589682f3b323ef2fc32b926a26bff118d25a58d8aaf1de3b4227c0ef1f20ff33d40bb983c6f183fd4cd3c1afd8051d124f3c86e41a1ff1c17117687ed6b286101a97feeae295411ee2283f3033a3a421ad127d252f39ca3885e355804c04650bfb873100813f4f8332498a593e6075e8616fc75ad7589da6c67d0a4d52b55eefbdbeefb86651c88e57065e82e3c6a330025a0f2a6026098a0541ba5e232b2e39747ab53d615513a1946f1ef337c3190843770e890524670dec814f0f6d47f8f71cc18f20c674848610ec17a14c08ef08025f500e29a55881aa70cba0820af38f341acc22b735d817f8bbe2d649547be74aad776ea0d01c719dad96a04cb78498dc26f040a38d263ac78965e2f5d58eac0bdead5079ca9ad297cc7763a766f8ebca785a7f0572715fc81821ddb59057afdfda877307dc6db973c6024a799258c17bd3f48c244fc87163f241e3181eb1fb319d609f08d62ea2ffd5d74a3fa10155e45f9e4ad352dca736cb9a53b4cee6adf4a73e13e7bc8757cb08af45e30e48cb45d44ad722ed6a4677dbdc7d1143ff27d481cf5de8e352e36754105f58be8a99090bec4f814a9e61ff70733b2d4a78ba6dd10c024bc487394394c04d63415b916f8ddf203032c937d11c3fe9c0db2322400e0843a579760e24cf450e3e4ec64e02d9aef6e645213cfd78bedd744b71b32075ff1c6c2a119fff0c53ab6fe8b3d01378cdb10518f72675607fca6f17d39e956c9d3ee125d2a2db652ef11b665f7ff020df6225ebb7efe968f9c84b3a024d667644668412f7ee95ae5b2c15172d04bf6b40cd65eb9bdd77c00a7ac483a9b2637900b0d5371632523df0057e9f5bfefb5da0c443c5b266df6d41ae1914eb15c3d78675639edfee7f5074d476f5115139ec6f59d037497cb8dbb13242c3b5009009fc1f254dff510466c41df19444c36e4d0620c4348dc237b1838a24b9650baacc1f60c0b7bc80f180c379b0515be53a547d74024b9b562afc27c90e5cb4486eefeb05eb99677aaeea5149ea5b1b0d5eea3027d5d144d5b5b5a8d1100af3b48f4cef0dc1d088ac0131279d23d46752be495852f25bd6f3c2a61adb47882879e435bb8d72e2bc1bf5b6a0f50f21e701a6b96345b292164a1d95e226101756292d5292631cf9ada03112f7b0dc2bbbd491c10777e049ea97f0efee405c94264ff17de9180e84b5be967aba6a07db8a2c2bb4e8f216801055e4e6279491367cd40f69c68c0c5811a46434704222b53e65580bbd95b135d22de2e43b0b20ed1da753d7009bc3caddffe72b254a2b8bb02ced1bd70f06cfcca433485bd9a7d64d28053da858b645796b61ee22708425bb072b7d124c42db43ce68d7b203fd28780bd594db193578c5a7322986b0006b6835679a7b399487ebdf56340667579d9cd811a701f84498581434ee975819abfc2f0337496fb0f6e28847543b994701b9726cec5df7c95cf635dfa9522e24e85f9e4dc1afc9446d06b1d180799b6ed2a1f027ec3aca219ab6b95a7b134bde579f175e3bae6f16594e2c88979a0943efac7fc4020918c39ecc89b5a4e53c8eaa1522a72e9607f414488208d9517dc60f2fe4587d7993a43c1bc692e52107336b083199e2a00c943b223d766647eb36862feeae86ac481b12a6ce26a0e053cf8920ac389d4cf3e55fcdbdfd28f3bc53be25424c2076c44105eda22736086ed77c24e00b8b297953204005555f68bbe256ec2a51881824b0ea2ae89824eb258ea266bdae89aec0a43939377b0494254c2dd755b780deaf8df16726c922b3f22df81ce9064fd7d4a5050d2d627d552aacad9f7b9a0876257ee8b7a52c6f4c86b9753936c18656966187c4789ac0232acfb9303b90b221f6dc26062e2abdfc5c9912e9b9ea75cc47f6d5aeaeb59a77680e291f792f2f5224ac3ba5fb654fa88496c2fc8a764d0e1f0371729d0b76589c44c1403d7312af8a92967ac4a8344a3b1179007f5d056212839b660d44d0041cc028689c8e29729c6b14c26b83282bfa3188667574cc2cedc33cf25da1c46faaf06203401819319aa059d5eada3c80138a5964b68304fc9102612c42b22a459e0571456a2dbdb0c0d078d214f2b7f4f09e5cd0dd7e84b4e7b1783e35d621863e09f37a649e209e573811d1735607c1fba5572485874e6a6000e33d5cdd346e759a7128058fea22cc7d5e20f51543a87525e2a49911a0b31443e6c1e9b07101042cfa38fe8a2866a21b1123dd7c7f4ea8c271b01627eda330810fffa92a64209178adc672e536d13d4acb02491d01902623654ce772b47d4343ab8206b4f5831025f5f57b0ff605cd04b5aaffaf6eb0f793643b639b6d9563e5a4b50f38ef01ffa62a209a7597e3ff822b3f16384c9b3e64eeef819e02077352e280ba62b50ecbb4f708bb1a94b1f75ac1e5224109ec396a04163444a027902614c4829c71d1337079b71305f0f8606e74ac44eafcc91f1d55d29032cc7697f06155b8f95c98cd8683ecc1f431c6e9983d3c3ba51a9e321e240e72bb7c0afd130a30dd89e913bf04f7da15970c3a1eaa8016ac5d4f2fe13ee7ef3106a337f3163e919dd839e8899591623a6b12ed03e47d530a6bb53430c45cc9808c7fcc2c43ab70e55ebb83952865a7002cdf7b0a09b71d1c4d894dfd132a5ad66b68c42f1357165f66c14e46a98c75c9f02f257991bf2fdbae733fe6f360b65c66ad60aea25dc7af36ccbcfc1da739ef16598eb85cfd12ae56b9feb5932da8fe3537f453838aa2df6fb1f40c69bd36b8f0fe36e6a82c21f4263e29972bfe9a4c3a583aa8159451f08c7e018f50f379c82eeaf7eabedf4c7476a3f70a40ddfce7834edc28a2f8578043a2f88ae392eb76f703e2f791170bbd27c44ee3d6646f622ea46ae950bf996604853fddea3c7fddd65c0fb45a29c07082b62ae113b1986d80d12a284342cc837be6fe5cf55fcedc5612672ed1a0ca3ee279ab292b55b8b3bb32b9a4d2d0ce7d8f172a91e6dce8b48615dc694bb8c076531d60599b0232dc8d2e78b741c11f298bcf18381a2a64fd939206c03251c6dc3e650fe7e73ec2a99bb9c4541166e2e83c959b053bd2beb936be1e798d60731f1d86e5784c11d67a3ae2596322c31bf10b719ac464fa4977bb7f20fc2883e2c1eb80a25c565b4bf5ca1b70d400600a4f7036370d5cecf57b5c3e7f1cea41f53504d00c158680db445c2131f7019e000f5723ea3a5f7daece81e3b3719e83fabc6d7b7ab829316d1bb05fe01dd63aa809fab87e1339e73325240c7cec68da1879c7e7ef970f2f4bab8b6aadca05b9e64912fd71a291c48c373f548ffe071844907c670c7b1d6e516479ae7dd6610b4be3b390175b5f93850d04596786ababca5eaf32b5c8c5e7bc23dba6cd9553babde94112fe14587520e313131724994308af6fc5fb9812be1fae2e1096fbb235c961b8418879b52c8ea8dabff9b27a89c23b663639a6aaf109ae2d1f8d70a1534edfffede0a7bca793248e9c223e1895ca2922e4346e4302631ba8e610db8336c5cb15a56d3df0e62b210bff614bf0cd4559bcf45798c4c291017ca72b49251162a0cce13dfcd3ec8bc27d7e0f69df948de7a178039a0e3791357cb4fac5468e6f71a7cdff37eff62ffb7b5875c007ec7e80d98fb9e3ad2231e56ac19ab1e6c26c2e12339bbac8688fcbd0266ed3a7758a3452001dba6a6ea3d0655ab515b10a34b18950a7e1a96fed5131f1b904f378989807ab9a1f58501395c1afc806a19563cb282038c77ff8cd607da3d46811e740d2f56d1dd7886d8fe21bf89f85e012e3dbcaae732ee0fe73ea8f8c7470d657cfdad4dc820b03bfc995d3f74ea806a82115f3f07d68a495ead7656da9a038247ea01a94fb19861272179ff3cceb2650b4ba9fb42650c17dda6056daf69a767b7e9c3b0b360c4fec74d078c5065812dedf666fbd71c4340aa624abc8a3c62e437fe717a9968575109cbcdde83d5244c1d1e477c873241fdb91139403e768736d4c2e457d6336998c0ac5a1977fa6f6ceb5ecc1fe8b59681f0951e62da5de356292c812df5dea0730f27f0df3ec0e9184afb0a7820480b5642a0d7c9f379971dbf166d9735e6102342e40d82f34bf81507a408d6764460826777c18532ef13a25933b235394565110e74f93c9e65f9662c71f89a5e7235cee3b757b87d09cb1ce6043af08cd9fe2e071521ce61cba81ffffd48c746c44c4917aa4bd991a2ac55e8e323543b02916beaf5069ab7c804489109fbe3bf563c3bce0549a2b067bde223b736b521b1193ffe3e54f7204eff2920dec898839fc9cebf9a8b311168deb4f0e7f9b4d51fdd41480acd1d7e231855fb477218323d9671f487cc52682bc7998c9c87cdafeaaf68106728bf128de23ed27bf5b0ce1767394ebbda1fa54a0e1a1f55ad80da9dfffcada5977a3135fc68d4aaaf00b4bb6f6fe7e9cd5a9d36aff9ed2d28ae721e12c828157bc6d6fa4d2ccb2f419e1e48e9bef889fa050565523cc35fab38a98e5cd480f9caf0bb1ad7245b2fbcd85514824725ac36ffcb2f9bc213dab1d17fd7e83c73d150d21466a15de5235c9e2bf47cc1758b5d93f528c7dd91c1bd92b3984964331e5052f99687353ed2522f853575e63443c8c33b21f41ebf9b59137744d54baf587ddab6c9a9589803ef3dc878335b00db14c93331998f380a7db841bb2a2ab6218a38493a675f2bd6df56328a64984b8a0f7045dd3d87b612fe988218b071d28a07a258b11930c7d1591fc12ff48218b6935faf4b91c9699eb903a8227a56d271be195b6bf623406b879b35c6d241f51e755cf61bb839193dd131ce67a8b33d1877c83a17ea25ef38e9a6033ed45dd3747db82a4c197bf7de1e808b408df5f4e85cda340b84244f8fe98eb4b3061f27115c294980f5c37ef34e1fd56453cf6a51bb7844f2bc16c94d2b8eb8ee287339a7bb70a040320213178f1b0e8bf6bbdf50143434fb5321caabd3291b83c69c3a3ad709643bc86300f577ce231af387b7ad0d1e52aebb405961d48a4c38ec569f325a08ba6ab15679be15e69e42adfd9cddc370da51714bb0595eecd4ef76764031346c461426f616116c98744a7bab7d1b46eb38efac3515dbf87f41f5f18037d917dc546aee68af9cedc46aa33b92317f295c671bec6112f1b168d9e5513c9c2829dde1b94a4ad8c7db11878c7836526564a40f11b04c9f4d5752c34df4d2c7706e0089fabcf2ec56c4f87ba4ddd92509887c2947ca0ca5386b6fe799ac51a6abff09c4a0c20c6ec8323fcf29b2b2a1bbf1d680ce212d8c122e8485ffbba3b5e2076020abae0d2825a1f54467ac97c9377daaee5c7b5820a452f0fdf9249a07bca91d35e37ddf083e4c7f64eb90b1ad1be3d36bc0e26815fce79281163a2cd5222f3838fa88168f94cbb285451ddc8152fad4ed79fc1ac1937d38c5be106c3a3ad161bcc40929d1b1f368309b7151378ce928033e5c369414e6feb0d13f4fee87025d33a0690da1000ae1448a86f515ff0136c7b1726dc160bb2c90c0b5c959956c0f2a961a3b2b4d1e3206d76fe0578323009997124b20135827ab2fd92df465096be6d3a6439d2d2d964803915711d416669de5a43cf0ccf26a3119dea40893d110fe58560056ff6807fc19c886acca79b374c5880802ec560701fac936eb02bcc2a15bd5c813b997a923ae675f9daa3255ed596a677650e6226aed14060785c6f0f803c6beeae8544a1a65fcf50aa4669aefa77242513a34c3eac35441542e19c681106785de1dc9ced50266f24c554a1ebbcec911b9b55735de2e69be46c6d55a3168ca70f4674d70b56b6283a40a73713c6ccd68d64a1c42673ea3830b6944a48f3c5cc2e9e8b91265fe43ff3be9e933feca002826dde33c9d1f208932ca95a6fb6d117c729f2d24ad73ff864b6ede2c6c631d018e29841eae136a51bbabb5b928865e66165b823a889f6246b07edb11fb50d0580e3c33fc781f9a8f76cd5e1cb43e1ac4f966926a3735dad5c1edfe58dc919e45a5d1eea456802256faaefb0e8210d0a443655e3935daefcbd44c8b43aaa0566a2305d18658e41f24b1b09330b6ce0493284d2f6bbd185c8cc2a69e04a2b419530d1fd2bfea7da8d4292ae8fc9755692b7631e057395c07c7414b811f4a1202352039ee247fc55782c636b877e9b6bae601da8edaa8fa797b632adfafd2c7816048c180e66ab15699859e40e6a30bfcb2b2333ea8bca0edb64ebb058155c7c84b864f3d6862a9f9e3c24fdca606d01e6423e52f374ce8dfd299a7540ac898c1055b995e2e08077f61f2759167d4e0623784bc74de873154b60f607a246372c03475c5e15efd66b3ac607406380c3d6004c15126835aa7bbf25a3170cca813b35d8d379f0623f63d88aa6a82d5a98363c01a231340a9c11c610ed85baf9cae4b369c82f4addb3dfba467f564c10ff9241a8c25bbb181281bb786c95a7c8cd932196d0f346d095b3a6eeddac786de5fa67697b821e6e69689779d8ea72c10fc712442e34106f2e57e523f820f9f53df2cdfb479902c61fa4a63c3292f62216b1360a379ad3d6659bfcd2c7d01d99a978e85d0e4609cddb1ad170a212c5031b44b5b0d96c8764ac8b8a60cdd1049757d6cc5cda88f8d3832e4d06e4b28c2fc994471495a1413c4fe7af2c8d1a8307f14138858494287b058c4d806c697aac8980150683fee12008cebb26dc2909677002a358b3cce429a63f0a7aa47a05628c933556a991d28a1ca404c7f3829cf853b56ac9ff40ab1101faae136d742fed3fb6552e4e89631816b970534d1c7047693e5ed6e4bb06a47aa4a6667ef449f78b7333aea83c0ef35c3473e7f1fda644c654a58844b3ed75152cdaaff795b42699ba959fba436b3fbd121c628186f8e64575132f6713fd8d2b6a3ff688ba75ab7763a4d558f88cace2cbb4d9483724e020103c192a7983304139c8ab82b4a6848c3b657b0530e0c9f22ed2741aece87990d5717bf920e49e24c1a432bbc4739c60eab00e3181ad7f64a979617f8cdc3348e3fd7f5a398bd96bddc654ab9051ba48dd03ab5077ece69eb5c05f5b28ff8588ee541d5ef186d93e4e510a372bb63b94d8c1f01e14fae7db329cd6034be2789a65cb2ec31a212e3f036f75ab6bb85c7a36067c613c744cdd6be9c3b48b631fd04d5392f704a84b4b9a7bb33e7dcf0aae8406df79bd1863dbba3f0f027ad2ce99b6d4e64044424baafaa58546cc4e552505e2499d2a0a7329ace969d3b51ef0e1798579f8b11a66900cac776fd4df42b353f6318d9d65782d8198f451a2c9b5d00c23f6d01fe9124ca648c44193d696c35490a3d64940f84715823cf816c621ffc6c8c2aeee61fb64949eba6da11eacfa6553c7cd287d73d676c3e5a09ed5049178b92e73e40cdb7ffc2aea0e7ffe92a69961d49bbe5455f6b697fa8b54a4521b79fc58423d304eddae42298397cac40f0104519262185c10998cbfae09a1d6294c7e4c26fcf7490c0b0be9b881baadd1c492f361d4022acb3c73c5d9c289c892c3f3be63e1292b4ef3be33f8210cfdedb156e9308564da6597a6082f5e7b37fbbdeb4bce50a20b80b1813b6c175ac7cc1ed6f3ac851cb45b590dc494bd43c98ddfe0b6de3e9721a1c365611d0b72f5acf1a37b13099893d5804c94413ad0df2ae5579551a0824da7e17434748ec97fdfd7b3a220931022b143ceb1a48b3776a928e3e2f9a3c282ee633cb253f1d147bbe5d48fa7ad2d8b05960b898f3aa58cb49aba6ae878c49c8a095466143f97670458e633228363cd28fefe381feac203d3d52e48422c3099c34604c48d10d12b8ce5a277269c106fed8ddf94e60684281aca8a237e2a1df3129f3a62e2ef2067c55c6091094abfcc9a92a70dc0061dc5f257cfd2cc56a7e3bbb9233a5d6d68aade2b96e7905f683e625b9afe1fa3fa75a104e34549a5b757ddda7a0099d5e34f996fc2cdcf8e767dd65eb5a78678e24687c2fe301bd2947d17547e1953d2ba57294e709e1c82f0fa0c9b88346a08bfcb518f339a46bc9b9a2856284b2426fa46181f73fc0895a2dc2307bcba2c3def35eebeae33ba2b0f132387dd6f2f0f860d7f31b70d40fc4df3e2d937f258f0a303c7f412abd63816c879946c68975bcc5e29b6843ce1269405f1c858bb2f6f24dce7c2e2bc41ca269be00a1daafdfc1546d8571518846ffca7c0b76cdb273a4bbef357bb8cf270a9e2a5fa604d7e32fd753e44c19445bf9905bfe7b6c59213a4e465e600be4a42c8c89564c8e453709339bc1cf514ebda4b48ac4531b95db3301ea5bbd499ff6df6e91f74ce872d2348776a01e000e6084028b00cf106dea30a35ce2da7f5fb0f161b32b47e4340695d96aa19a1c501b79f6973175a0b46c2c9e58bee7fbc5da8aedd03d8bdefeabd48d8a83995e608c7fb3cf879fb92b9c4d96bb5199b5e046589ac432e77b673dea14676ff65c9dddf79f231a88c2ab556fbb871285404ff04124153d0f18764c4db16ec88106dfad0f9e40896cb4313aadd53c9d1b055eaf1d49f009ce6956ae41dd36ad53121ec33274ab1b85783bb92f73ac3c54c2eb222be192d73eaa3dcd32b5338ebb13de2caf8d65ec4ae0929aa8f114f7580909b5ad77e67d3228dffcc973252cb24595f87d1a11170a575f5d1bab0fded095cf0b0a5706f4d8bdd88a6671acfd95552ee8160ce363565112fd7acc261cd960d07b90eb1158b598bf1ae5f320d0b420f9cdeced4546fa15dac40459cd9bd45c690eb0e577f3ce220f98ecb813240b55788b8313aaa018e15154116a3044385c33a700bc675ddfdc8c42ca57f3338b0dc202f51308bb556033b203d8f469a60bc10060bfeaefcdb555f60db85b0db322dd495a4f9206ca96703ebd850bf7eae6181c30bc6bc06835d34e2e9d60816e3d7fafdaad2016b87d7581ea3834e3466d1c938e0f1415a6fdf414f4d2ccd47354b60b80a2392e53f472a5ec88bcdacde6763166f065029410b1161f75b026b10b8e4956df67debad3ba49976bec8350185bb6bd303330e66de98f2d20e2a138524b167735dd1a8b8fddd5ec2913de27f53d92ba7c386d24a33a982cffef50066bdc3218f673062e21da61ed497a927616ec6d9d6b19d7734ecfac80ee12db6a5d3251ac1615583dc4bae3b858e06c30702f2db8947cfea509b2201e053f4dd04d0824e82a260138db300fb5aca5a5804cb9fa1840c5c0e14356b6bf700161514db5c5fcf9e48c34386f7219287f17644753ab140a4b2332b9ac37a391881c1e35cd21034719642bac74128afffb7e8b20454f0b2a926b82d43a86d2c4669ff40c52265318fd81242ad278b5397d18912976b48ef6dd27da390e5a75e2e92be44bac03cb3bdfa6047bc30161a92432e07063ce0d9460fe9b93bf54d6754202d62f9ab84f83f9b35875a5afa035b28c74b6107e69de28e0969a5dfe75d57171c90929108c1d8984f9b5327109df005c9682076dfcbd2b098071e641356555b8f11212a0f50f0fc862133e18750b4a792b75f6bad771fc8e2ea6433a7cebd2dcf9615d3cadd6221e5775f6bae7b874058bae7c2c45c5d569f609db3c2b42db4073531701210e5036cc3183901cbe7f8b1a7d50d32c445405b6369e63603772c8120bb482690ee73f11b1b02eb5280ca06b9e0e5f2270d13977ff18a2e8df7f9bb973261629f98362b3efb87e09fbb8e1362c9f9f02e98634cf07c976e564607a471b0619ec6323493e792ed4f7a3b6fcb6231bb110aef60511612578e05ee3d29e4b194c7fd2624a7d6064f99603456dec632da2dc28e69d87127d1deaf61a3d1c0ecaec1105202ad3c473db6a7c466ea40c2b808db438b9b139499699dc0231d30b4ada377c35e3ea6a5a095365175ca39c86af4323e378ab2949c0491c25be7051b895dbe50151863dbcc632e66e94f7f3383b11d208f731a2d17a1ae9811f254aaa3710d6718ded856c34cfa426f442e697c39b5537a912a8a2f5d349cd6f8261dd8eb53c043da799ee5371a1e6b7d1a5c68fe8cfaa2866386ab67c3747450809b3178a890659f4b3bcfa5eb865de400cd1de9439f60e79b90f0c89a57bfb7e1cf810dc334fcaef7bd68bee39aa8d37d6661ceb86c1d221922182f0cd6bf2b43af655d60ba6a182e401892478e93925348c474b537f3fd97c9dbab9ed398ef2647c4914d70784c8ab0f9eaf88fed6570f59dc0c4b52ada9a6280b00bf7108860464b0217a2fad1dde2fad2f04a2eb6aad4449c996a0907b4bfde8b469add267063c14650c8b59f930b95ec5880228ac36b72cde0b637291a12b63b1f48c17a6427c2cf3a3252edffa31f88a14706b94db08479b008b067a8e20d24f81c8d6342f914d211303f5bc2132c4fa92fe2eb00ece0e4564b140001428ee28af9b4fc3691fd3c8e5dce17c8347b86759649b818c2f1f0fe6ea3989224018931d2f48b504dfafb915e087d3072a5d8a81a2b443c9910169d620f52382aba5de9fe0f59b309490c201458d70fd467548eac6371122e6ec55e3a5cff79bb03064f71736794b9140bcce4825c9586ef2d8ea546fbd2e6e53af1f5ffdc2094956c1b7cd040d43844407b52e2831404360409e73089eae6749f3ec19a560fb5f8c5704a24a250fe40ff6c999254b0ddbfa99f8cb77a7bc68611ef32373b0bad7718a5048fd264c23edf052e7d36e19e1c1f3e79b958e77f505e83e025859cd3b9765cba461fb54a8a239727badaba2aca325a8462d6a1cc1e911bef6e0b8cb4d057e273276bf07c16777d2f944658c891edc6ba57eb5cd042d21910369a20500c98edc3e4e8348e1a5ece32b531b1feb3bbe5ac9a350c21a9e29ef7ee003ba8491508164cae83d99bf60667a68490ab7a3f1408d12fef0ed0685205d12f5d98e0c30474a185a324b3f090398bcf95317f59ec002f4cd545360e061123fd5e2c428059c0b0d9002df4deb1b4a89b11e1bb8f17690915997b0cf85ecd687d7f1ea05ece5de45e40d85de04606bdd9cd15924eabbdfb134200882249dca5470d7e5eb80e871a4684270b2037bb7db39c510b0411551ed670258517f896bf0f20f3f8f93c19321235c9bea0acd32936147ec2f8744edcf1d78c06fc27e1f9660daee075a163faa1837e58ad287ff570d54a73b1944b5cfab568eaaf59f3cbd1e938ba155984fa54a21796c378bf7add3079f1a6f03be92a2e7fe7b63b11547ffc58068b157407d7d0e1454f34e6b72114166c667d28c172d12194c4adf21763f6adbf98835febc2e08fbe4419adb970805ee1d77522d4480d56e5a368499ab71bde410c287325d445e58d070426ed573140542366ed74037e3f384955858e9b141bb2d16231070f60bc71ea5a5f665712343798d6d280a58362a2c6f1f82ee4b80028beb1d1a6f66702bfa0152981ec178e6f151f1581bd7c7c5ffb3f97f641351c8ad2147748ea43c597835d3ae5e285357fbfc2ab791bd857d32733d7713e06e480685d9c564bf5b330c65e4c48146a01f84d4b528d6cc436a8af57b517764469752bc64732cd23387111625f4dd157124ee57cc93c16e5806d71cfa3066eaaf9e94287a7591fb1aff2720c90ad30694ad52dba38b01d640ae0669d047c432500461c7ef41fa1e61ceb99c4505c3e7ce266bc6c5e6bde2b416d506807ca12fc798bc459f72b50e61084c9b026dacf9c36db860c2d3bb4d272d0e9450526beb4b7ef3e721b9b03663462862fc01afff4cca725128bf1d7d098b47a29f8138e388fdab25527b18591958404c36dc88803a9d8eddec763b508ed8830956269d448ab28f7c8020630d3116cdafb0f88ce3efb0cc8a7b43609c123989bf5025c5527f50e00e8937ed745c7ade21b71b494f28cbb759fc7218ada17c6936b1f6838585211e44e26d8701203be353293e84c9e76a680aaaecc60a15333c93e3ca193ba3bf3fe5ae1d4156651f4f15cb33370d08b88c36f1b09a2fddd5af862c3d2fd981089d69510141284fcc3985e243aa62778ee60b79182e08f61f7e2549515455cced5661a7d337a534993553382e21c29ae284de6a401aa3295369e2379527320f6c670983d93cad09f80a5569c498a21e90a2727cfad5c4124026b73595b94a510fb211d1e6b1472dbb31b5818ee9d07fde4d62edae73712b92f4a395ba120e2b2fa6b263b30e654f1a12b5bb8c2da868ce996140efa81a657f0055a33613e26542729e15e8466d2c721e2932a2c772634e6a79c6a632ea9cfa871c9600f8eac2e6498d2832411433cc199b80fc55affc6ff13e4af3cfd175bf72d18dcc6551618fa7e2590aa0df5086b7f8e61b5a3b0b0ae2f4ab12dd76b149797a9e0fdcdecb740e8758dbcd0c41fadfeb025866a7114c812d3a0af938949244856c0d3a38edfe0486a01d36fe52c2793e0377cd4ebe98ea2da4d52b9c67cd979fc98be92f155354e797b625b956df1a90ffc57845ebb5a02d08bb83a55d64db9071b2dc17f7e49f1ed3f1d23467bab2334583f3f7141b89594e0bd6690646f5b6b9b97482525e9c284b55731f3bda5a163cc8e17111137cba9a2e2c0fe29f6b9fc2f7f0331d95246edff985f5057d07f7742944a59deac054b3e0e1cedec97c53db2e5ff4eaef65ea7a82f3e1069257a8a965ad5bbe496388e825e35073211c004e0356571f511958da1c88793c52ba63603dcfac61bc6dd0895975a826dcf3e08343fd5bbbe7f2b0736c044b14d44a7c71883751093e0c881627207e680656713f908d098e12f97c242a329b1da73d24bfba031f95da9fd92d9d4a0d90add4e6576adf39f4a32c849adda3b26f1450bf9bdba5165c044af54c5df3cc69bb40fc24ff0d11823130ac8ff8f58433b72ad7a756c2d3fdf95feb2c361273f92a51d1a73167cda447d75a9093fefe4702b951d1a65d7af31a467f68a014354dd4980feecf344dbf337f4f82e5a213322779afdd4b35eed445fced75d332d1d08909258ab1d23603a7ab995b5fbbc3199c54dd3aec5340f9bc747a670e5a2be5177a089b5accbedd3df69a6cfa08a460322f103131e80150e970b2b6574607d4ecff9e3606b811535b737a0fca7a4e5279e4fa89f9dd0696270e1b32a87a7212302b9b4146996ee77145f5816869a01409f7da24479ae036d126085555b9616b9aa9012e505a25e9b1db869796813266df8e55f1038176b607611a10248aae25a2c8240d16798aed9693500147d3111eb61e1d8276853fe880517f5d9436ea88d4949f27ba3c5222685c2772ccf3d46fcdcb17b580309fe4c2230649d0d12db96342060926a4a1cf520d866efb87f735beb54c6d2d735a6cfcdd809d7a9fa5d0a7675a840539988d2bea991dc9fbfd65bac0f93e03da36bb5d0d4b2067bf5ee63fb9a5297c01954be566f3d3ccc4695487ac022a784501046ac60fff3d99cdcf8560fcc594781f7adfeee150268c7b702c63755a8491c1b4520b053c439a386d29aad067d6ef66c79cf189d3810ee27298f406a2f35c7973f7f7cbc586d8e5f5f8417bed06aa2b77b3545dc049d2334c7e2588e891c6f9fef3a163506ed5a543c82fc67ec72aa990edd3c7fcfb132f320f3b53eb4cb2c43159bb0f56d2f5d40fa0f9c9bc5efeaec7d5efec6ff88eb929cf4380dee1e4a539c1f981fc8ae10fd880509b0f1db91829c5720788d1ac84654a99f024ab9486b51b93a04ff322b9caa92f57dc8cf0c12436649331a06a514664cb9086ac2813ceb04fc8bf1c6da1ae52b94a2087ab1efb23abdc1c78c1624850e1bffa08e18d0b703f053e8a7ef278e3892670f2b9382fd32446fe3396e11189caaaf440fb9c37ebc06c57bda2e6ab36318df12f36c108a9e82c008d89de6291cba86cc1377b752abf1c92bab2694dac3eae6fcb8108d2d1aa1895e33b17005a45493735698078b1d320fe7fae0d348967bb9ee30dfd7ac96410428f113f535b8b5729511d5c06b1704d799100c49d19c8d11a87963e23a36ea605bd0b1761e6e82fa6150e41a906772e51bd8c8f4974e1c9137630ee422d84481f4e38b36c27c2d40ebcc8de3135a532c816ebae73deea996c10ad8fab3a554af680afc95edb1241c28eafb49c6f9c4020a5f800b60f81e1cad7fe7c4593d81f35180bee5c6ef34fd6fdcda41126412759a14c9dfce60cfee68996d48fe4613a5e0a7f0f12ecd1739c55860dee8ae5fc58873995ed4a170b381f427584a73f2b99d51efd6b32714a5656d1ae80d8d3cd8c59548544e5839d8e2894ada27db0d369fb1ff170a334644518455c0384f87efd41059ac0949d4539e7a9bad97223768900fe220ae924264dc57e838f1f6a75c21993ac2aad26734298807a11615a58621fe1e73f3ef399123df1db588b33720c65b035f489a034e3e88579e21a6bf6dde975d56ebc497af83cd5058ab3051ce044d3af4e4c38ecbdc1dc51c23b1146bc6524f86342648347e2fbdd87f3ab7d0594eac6fce30109384b9055a00dc800704ae1f037601b5c2dc34fdfc36ec7a23bc1779d1176a46ecaab6f6ccdd50d5c7f9e7c055528070b1255f8397ecd39e2edf28b4046a340799dce2cf79e3e477ae0e9238323608e377313853c39c6db51245e8af093913f56159936a34c5a762d5902880c115172ea1ec81169f914eda77fa4ac64dd0354bd0bef2bc187e52d8d7cb4b1705e63ee85814624dd2967dccaab6491879763e84220294405c758eb08790a7a6961ed255c6c8bcd7a7b1d51eead113ddb430fc0000ace8da0fb2c51a1007d52955df3ecf0547ed05f87a886553e2473ab8422fdf424a872bcec5abeebcf4e1af765ae635520102ea7f7eec471e953ee20ddc212cd45676f35c0ffccf2bb7545e11a61f389f89a7cb7043575be348a7c796d2492bd9a2e1aa46d8c09a229b4c8f92147e0d8aca6aae33e8027338eeff44aa9e49beb267ca657e9088b8fa48d505c195c8d6bed28f2d76be47eef2085053cb8e17a35ced94159b9d5fdfa7c27e41e248a9695d2fa7849ef7483889cc3803c8347154bd9edab2d75b08b0166160a6a462d80bfecda7c8578b1bfa57aee966c4068ba71b0c2b94de9b577d139e4cd2259b64122d9a08c528c4a8d125bc36a374f764f33c5ed26cb4989498ecda15879549c07399a09843a9ea14bff50aab8f5f7e34d06300ebfb460a40b620f2007804a711b214867131bae5fc1a76d0415723e2e61cd532915090a9a2b9fe2f42fa112b56bc145960291f3ae046140b3aac32adf713d08014bd2c5e9130bd69427a717a857f942fa7dc13879545f6a40ab9e36a46dfc9493da9204f5275077d9823e45a8b00fb27876d6a167a546750c0a81bf2c40f6c9a82e8bb604967e3b3338fc2ae51cd92285d5615cc433c1dbbc277dba56383cff2dbd9830fea433ee30777e662fccc9ef3acfb80f678f6dd311ae1a238cb0f3f98fc881191c17404277e698205535e6cb1d6ffd6f1d16b784eaedb3f3004fde3406112d4a04a79cc9362a813b82b261378f0d6cd0b1dd3f2a52fc68f873629c39f5659b610c11bb2581b52d2fe7deb880cbd38721b5b04cd2489106e41a55d3b98b93c097502bab13f1b62c231cb4dee4c7e2643a9a0753afd40f1798c7646ec7b63c8aa856c87e858a9a17318c3b854f2ea46edbb8a03e9a0c36b715bba1c8745b29dba2f85734b3d576c2221ae342b9e899b002b651e979cbf9535370b49575a5daef292ace8fa39f23b430b1d7a23694c66d499740cc0434c98b08795314d338887906aa4e368447f1cb6b802dcadabb1917f5284afcf9bb3eb15f9c3772e4d92c12599c48b120c6b911472d29134cefdaab2d6d0f9dc41ce91415b069a42ad9b60570502954a1e54fda0e289ddff91e45e70dabc94f06471afdae2684eefe8988dc58684ee5e5d60ace073fd306a2c7a0358ecaab40b248dadf0bda3992f8d4ac5e9f5d428361073a5843ec908306fe8fb1b15f3a0ef90baa20c4a971a7103d783dee905672922f52fd23eabcec2d3c07556bb4b0131553a6edd315723ab630460865bc58bb9964ed0626fe5fc8ec13a75a0303f2d0caacc1e745edd2e44b008b1aacdd84a622c692e506f79ef0aa38a92f09f96f4c809022afaa18c85961a6afcb85b409f6b213b07a54945fa02114e8833ca572eeef9f56c8c0b0019d041ed1b89264b2bbae3afcef6152b3a870c34c399f573e4639225bd4d707508695d0c6e60b58587e4f31da3f024f35f039d30fa4e2353ba3d993decc70f75c19a33cc11dfe152b182602791139bf046a372a797a788b18a10b412765259a808821ef5f54e1e3203f41d89c8269fabf2c040cd402819958d869fa7f1e23c9a3730f1891d35c8a963b4f6132551b9e06adf372124bc75cc4a4b37aa8b1e4f2de00ddfe5a4cc6ddd356df4d7c9e2ce407e7510384baedb126a5bb5d8b9d9d4c28d010e43d77a8e61dcbe9f7670f3e79e00d8913a9c6125b2a5d5575736f948fb5d14180531a89068184b12e7490718979b9cbd10ac499bf235b469694b33814a41047523350a1ca1a53e9d60d0d3c1fb5a89452000bf2d90e48dc7bf0a4637355fd7e8bdcf731793e7c70964ceb6ae9a0f57509750f0473b090c31f65d061426435c9ff8e8a8d09e56d471aaea243c703d712c4159ecce534c9bdf1cca05238847c32ed6d4032f4ec66ef8463fd121452a31b99898608151a7cc240e1bb6d2d4e6af58e3c1d25acfd99501038134f98aacf9a6928d65d3b77f6642e8ace89f57387c5410391e8d8281fd8f9364d2e67bdc75346f90b5a29ee7e9c62d5b8f164738ef1eec51ccf009165cdececcc0f498fdc4085a5523e577a1e10cfa81218b418a75ed4c0ae3f9ef0c6827e7ecb2bd50aaa5b1d850f538f7473caac81e42b90c73cd339bcc1a0275e2be3b2344f3f3b7cd37cf012e6f2f694c09c673b9417d36d9c58c229c0d3884220c833814e69c7775187ddbf8496915b2958f06a23bbb697a27d2a1b11ed0b814ea48364dd210fcc1782d299d5452680f5f62fd41e8c9279779f8280fc1b461d33195de9bd492a229aa8791c3d46209fefdcdf5ad129eb0afdde4ce7bab97ecddc2633654c3d4add2a273130c5d3b580fd5ff4a09aeda53292696b1da166977a1944a67f0b409306c09922991e960b3029a010f241c29b8263f4c14f3c3cc4ef69eba296ec5246c2ae007668d2f3e57b2ce8252d716298fda42cf462d9d548fcd90454e47b28e70a5100ce2cc1af87030d8174e24ac83f3b9ad89b8fe26664d19833158ac536d898f0f855917550a2c4b8c16aa8091885368e30d1988ca26859814d91e3d06c6d3e7086017e6ee2ece2ac5c47e60d9b6294f14994357aefff843364fe20403fb521fa224c188a0749c99e2cc1acf083803518a395b56493e27dbecc624f7b36c96911db1de7fc7d65e2cd96b5c55c1dc2da3dc812800ddd9ab2ed007156eb6e484d4d0289c41a7c09e758b38fd186a4eceaddad9cd379cd294e16539342dd0048a00324b9903ab88e2d0e65772fd4cc0a0cc8e4d703de14388396528e178e634aaa945b56fcddf8234fcdd40a9ceaca1ecafc0df020a810c108a8ab618156557ef63391ff512689726c28b3ba600ed5d72a7c65014e2cdfaa169039770be657e8556ef79d4efb3d118054becef8985a707cfe9640048553ff9d03ec5c3c1f62f9224799dd3809b3d74553a74c0b59af165935cd94684b12c852a95cc67b1e621dd6a10f9e6b05eba41d9f320f12514138fd695ca095e1129d62b86e488a1e0db9dd7fa72922da87779900b218fdcd8b6a279f3b60f9d03cc31dbf60dc95436ec5a60c6b0b0b58f188aab465dd078f4d1c0f9d0b3aeaa69304804cae5949c33ddfd0a2e9d518e5d6e0ab01d6268479fe68c468d4f81f4231b719a1f5cf189f3612bb09942737e725f0d2aea4372a081bd33fe75c9e1de2470c167a804352d640c6df9b5fe8ef01695800c8e41b7c060477876dd77596c06fe77e922762467e6929e5fc55892bb2306e442cb3709ed98ba9cefc07a4edc7f4936c54b1aa284e4267ab2862f230e679905724c3e63edc88fc85d57b415d133b349385a2290c595496ddc195c401140ce7a440298bc1e2bb59093a35a4c11f6072e31ea32d68e54beb7c0126d77927326d4bcabc617a26b1001b9df42ed6ea293a67cb2de1a81d06704843fcf8d4d8a5437578ee0dec5172f9bcb7ec1f06f4270d831e9b850cce72188d2b48c8aae41b60d1887e59ccd0cf73389f32685655edf74e75097a0f1b4386c805c4b27e2bb6d05f0d99ca29c1b9972e503be072daecce2f687db62d42415a6f8ae105a7cac1d322bfbc2efa063176e2b9406551eef3a8c83acbb4982959fc65d3f3345bd35dce5342dcb0c62ba88db3ed7d635ab8259c0384d4b3a9920d2c545a73398fbab2a8113d6c267c0d4e9e260cf0711e3c7f44bfee2d3a2c496cc74fc218bb686b66bf83d0f86ece903ae851b0ae7a2eb5e0d4a8e9d6f2333c62e2564372d45814504edb97934993a5beb70a2f6f7912968bbe94f310131e4115d0c4098621b262b1218d7be2ecb10c34f94da0d6c271412e4c488a696af0e92c38e41c36bbb3c46d00c389c195bdd26c7c5b60253cc53f176ce68d9bed0ef104d8d7942144ef00c381114efed0c6a2034d18b3fa654d0aa0d015818f5f13c1550e7ca701d0faad96e2737db32630c1b93b7303d3a00a6aec3dfa750216e36b1f17ca9a5f1f1f9d97e229a44f33600bbffc0bb1a8cfa636e52508992822e6e16de8bce03ab12b88b160eb2a13a720e02bd730dbaa93aa1a0233cc1fc8a6a37320214d7f3f6a47c847e5d98b86edf1909c9bb5425ea8b8dd605c555b9af99d6d364637b8cd2669763bd6a97812105ada4d1f8e8c1b296affaeae75085662aa4e482077a7705126b29fef73151895b021804f1e59caee865a905cdb26220d851b4bd43f9bec026db80001d30960b474d20bf8dc27b83fc3763662e6e2eee18dfe4a54ea3c214357119d451e15629d81b3a0761a62eab8fd790025fa7fd1db90036de79360c8f13e4216850207b2add935bffb8fbd84944428c8984b6e83da759036e917ff89228d6d1030911bb7af1edf9176093940abf011892aa2961214eff91d6e7198b0841465f3c48383e7b14b0e7768de8caf0223d4ceab0e87eb5d2b5c6a59ba0063e59692f8ef80c7e8d114ce64daab26f6c7d5a108e8a75b80dfd304192532e5145894b539c4b48e7286b96290da4ccec71a998838eee42676b332536630a497254642925d001dd9683a75a6c1613129326ab5887b570b761f7f71f0179b67cac401269459c42bb373cdc60e777d845572eef41d97f0dc6e3966e1183cceae819ddc72cd89b544bca55edf66b0aa985acd9799cf2e53c16f0f65758c5e586f6d108c4587d74c981548d0a03a2fac8755cbbc2588ae96b3d52e9f7f592f56656dd531e40a8e4593e94c24273efdbca41f475757a7ebaa2e5c818f06436f3b7ad6eecd79a2b6f2c0a997dedf0a590e00f6e899ba7eabc83edcdb80ccf352f8bb63a693da8d19e94319f8c347b8ce796cb7d98dd4ec3f3f892bdcd815ee11a45ca79c80445e7cd51103f4b59eddd2abb059a37ac89f534ed2fd59db468f55f71f3a5dc7ae3184d11efadc0d37dcc785298f8c4cb423b86cbe1e197d475737c393ff70d90f45641921ecbe02d6540eb57bae0ef06bd8fc3706077ed22f4542c0a5b3fa1e1694578f06d3f8b84d24210e2d646d1b21e0b2523d734fae16e52cfdb4b974520f9a0aff228c3d145a2bf7ef175cf00d195e4c033077c219760b07f218298374b4810bd88680f43bfd788a4255ac22ddce2bac8ffee4b623baa02d32742a36c4e1b7995adff8f6d7f634389af1a817ca613f36034c6c46eda69a35fbfbb9e2e2f286ddaf23d211ddfebdd3ba488152aba337f0cf94b38d05aa27667050f2d99284399324c5440b0364756a9288baabaa092b5fda3581bc18f65c5545d34c5390ffd841ef156e0fea27a457497822b8cdfa32c2d231590a1fb045376be3f68120821e381d67a5063aaef6ea216696d4ddf9eb16fcc278fd4fcb991c007b98cf968c96817de81080772797d0563146932a7dea3d27a442b5230eab6b18112c731c0e057ae005176c00329bf2d420c36111a05a4c42ae6763b765c565a6388d056d44b6a5120d1f743de0b30581f6bba2310a2345f14705d4be19d4531ef57a630449de45d5cb758fbe5c9826770499806d939a67214b00895eb4815356a3513227fbab1d4d8b2a48289721e29b27bc4ae1ac60ade37b257b853bd45e1678e06f1e7030cf82bb04ba2b60f555a7e11ac54b0d6e8e29cc5d43e09b414c45a210a1bfc2356f2cca21995f2ebd3181cdc60152ed6e4fb262d0d25a53580c41412b67cbaeabaaed68dd7ad8fb9906bf04fa6b4ac98e076be9f77777ca496efcf8f4854bf96b7a32d1e4b5c1e53c1bbe93dd493661822669ee8043bbcdbb1bced0ece62d4cd7ebf295b3d54487fd740a392bd1f44a240c501342d3503a01251501bfb8bb73a880d13fb2b13af3899ab85a2e08715ac1caf72d0be5a59aee3563a98d3ad5ca8187f4497528bbf5e133d85e5bbd722b4123f81bb5d5ee7d950f513aab946174465bb31ea6eb17a70775c42ae6778622e9c140eac4312c27a4087633d36e913589128fc60437b3e84b2201f0cfb295bd6a4d7530a1cc5317ba5b15a544c1b69ec1718ed218232b5c4637486a8660de775d9ceef98d4fb00b115daf29422f99e8b5fbf2ebc6c5148e10fc5f6c8694885d4571f7fb37c9b063854cf89ea2d2d39f15e6f5ce63bb778cfbc23dde52b76e8d7ff8309bf489e9bebe5365f993fa38c73e63028ee508d8db0a49395551f112c72c58a19e1d336ee9570f92301a84ee7055dbff0af2ce9a52659140e00727b5218d41710c73f5f238e15806cb617ce24f0fea3ac494e0051e05d3987ce437b6a8757d493bae7c7f302e6ae171c6b1b2c83174eb68f97dd860c45453b92389bfa86ff6d398b3251ddb803660aa292f5860ff53316fa3b92630f2de7b8ca32a3542f37e7bcab4b9cd4fe23e22ba13de9279b570ac85a0380144d8021d4da0776d7f9fe197d7d295f785445c375e3d36ab6b63a144f9663030eb8ef5bc95978f2eb31e58da72d7b2bc4d041dd91b929beef89ef970222327378d204de65d382a884d1ff1db33bd73126dff5bfbb79b0d8a5530d0f1921b186d3d9cc1110dd42f3cdd21a76eb5df0049f9ce22f92aaa780fea41a6edf859237c14512204e882439947494aa70c0e995027c63867a0d197ee962e80462f7f709b4f4ccbdbd85e8f1157f9b3f8d18695b6dbd845ac7696feaa0e9efdc2c3d4727d9de06d44e59eb53aaee3e6ab5a47dcb217ee0fef6f991fb10733f02fc45db4786ecb062f78c6e965c9f615d15ea08e9921c94129c84e9927454997e960d68fe428886fa660c189fc1556137282cd8adb3fc1439165aaaee06b4cb43242bc7fc48eeb3fd21ffa90cc3293b552de3b0c957782458efb7f36c506cab2b113caba8f8122efb422bf48c155161a472f48050ed39f20920f0b2ca0a7946a349b16c549293c344d6c765147f3eb41566e34914c1ce1644a6ace4ac34c6c2a767079cde535f7eb7f73b71538e107bde9f75050578f8933276a5b9e6306e71df87045d9978f41ab42f12254ec90c3e1bf99b6ec2177af06d71fa0978495f806505e234746ac83c61c4c049fea19d4db2c27eb5fb8c1043e4f0b7408a62d78a4f3f04e8c5c59bdbced554f478b45f1525fc6593a8fb78c2f44bf54f9ae32ab28dfb67e538fc513fd25bd48a30a0eb704cb7b68f1aa0480507ff835b69d64d2acedafb8a40d9712b34537956bd2b5e61dacb97361f628c7178008d158c3d3f60c6fc5d50250933169ede65b1ceec4f18ab72857ce66e67e5a55340c3db867a6ae39f68fad674b4ab21147e3302043cab7e327f17bb592050c8e42ff5ad240e46b1e84a4bf153ce2236bb18aa0410717f93b85c2d31aa8f512aa50bc92ed419b81b9e471447e50f3551dbd781d8e18f3e5c62cd352bb74bd4e0f9d1a00bdaa6355d950279256ae397b3640fb0e8427baeb8e064bc993a86b25672f680c89922830a2a0bc07ab9cc107573557f9f79b7f4f5106be058b81f872940a499fe321d7a0a87a0ce60bb1b5f7733c3764c5369fcd8a5dd5360c4e5c6a33002b253fe960d3942592522d05530f491fc0b37ff9383fa78f9c74fd3a3231cb348c61bf637c3a30585ce5d8ebd36bd47ffbabfaf172ad20cfc9cc7c7b811e2ab5336f0bce2fa33620e83a1e4856941efd4898f93781606d96e8238b25df0e6705befe128bd8f0bf93c99199ac6e895e74aac61ded5174f442bc9fc1fd21277c3b1dc0e448984e871451feebd455ef8b74bdec50b0f87acc2d910e7ae0d461b3e1e7fe7b2081f199a4e836189bddb9df9e9b225d7434d596e0b9395ab5f96b29abd159bdac35bd1d13beb89cbfcb883504e7d8c471665220bb736692d3a66900c774e3a7a0e53254ecf50481c8e40fc4e4e47f76c9827d323f5772c29daa3d52fcae9da13433d4e31feed16c011e87338e36eca15c335e70c090d2bc36d73c3d7ac10ca0ec18e20b7b2240907cfdb76617e404c21f9db59282e2a55d6b604ddadd7e250fc45739bf2ad6f5b7edea60e46e73f4db8ae734d431f5f615f4c10993edb06cf3312b78bf3240ed93fd12a06b0bcf89c3849eff1abd137db6a68964c90813339da47be38928f10287863354ede24341bae58ae33ca4f61a8cec7a0f87868ede3122df10ef13db253bd6eb03c738beee61eb29d7d7f065f5604e3e3e2d94d3ea0a72eaef4e27ecd3c566ac85316c9a95849f1be7833cb074d641c15f7d0b579612ec00f8e8eb643f811a982b7a471b15f73c8cb2383b807210b2326a81b16588c8952c174d0f0192a5ce2dc1ad5ffc6daafb939042c863b2948a744507c92b9af39c7a52edbf759baa73c039856097f6944bc6becebc30971c7b5740e274588dc0e03dc265e924c33cbcca15e6d8b23d75df0ead552a885b93a35036cbe6fa7302f5fd75a0a3e71ecff5fc25e8220e0252d2d3d30aac60fac73cf3030897e8c42d9e107be9f375699098f4ec6f063e3d18eab5e4920a38afb9ffa43ef6884d2a48959ae377a27245b8d88f142c60d451a487fd6f29b56ed003bc360cb7aadb2a11c32ccd79c70d1c014131897dd304e077c2823aec17bfabeb7c3865d82d480e8d7699d618cda607bf4fa630ce03c141a00251cf59e3ae9b269b3504b177b0f0f84392b6d882771cb638114e04a1bed4b3c0bced9167e3a0315e2f6f4e51b2be66a9ccd0c1d9a558ad92c6af7a42a41e0ffde50aae353900dbe77803384d6ec00b76e4b09324663aed213eb600968bf76eb672645561263464ba265c57842181e9c0312067fb438958a713a101e5505e86486d97e277745b2e4be75e93f964526630cf18233562ce4526efba2b9347b00b26b59f00fe529ca76fad54dcc2d64c3c0b612a0a35fbaf44905d46a58a46c91ad30ab06a3e122275821b63a6e3478715a0660475c0b265b7014f6159e900bf2f7edd26aa7837bf377cd903f32a483fc81918bca715021f8f1daed1c2642f27738c344a43fdbcf8d906093f3304beb305b4c29e4ac28fd76d2275e3e50a90c3227cef45b59007a7b867fb572a03fa3fa55d728c6d0601f27b9746a6c9ec7b2df5c4607c8e1a51b94b21f618c3714756b2150e282a7b8858b0cd9c0c231161592e1d78b7c9355c90a0671a579cdcca6310ccf3650ccdad43a8e3bd07c1c8166541014524f2c885f16a8e64143f19426e82cf4039e6b4f9d570cb16e4325538974d63c12d9dc1e72a9a8b832abe4894ddc4c61f244a25cbba851f3b83248d5e2c45bb9279b52c922ba2b8f0555064844c9bd4279d046a656c054a0444d828d9a3c0f8451ddad4ef4a295d176d61f967b5e59a8fdc0d2596c20b7c96b74fc94796169acdd99f5c33ef6c4adc08c241dacee1c75d1d7aae0133f3aa93f5ade568446a3f01799e6dec4dc9a60412d94b33276bc72043b1afac24b38259e4d64a8255ddb2ffaf2ab3543d14b2003cbf1d9f40cb7f1337ee5bcc6ed213fcbf288e613cefcbef4a999a362c4bb4874c86879fb296e67e597c236890bf1b860266ad8716bbae8b65b6914f27b6e689051fcac507a8d1f355fff071a15cfbfa23ebd645e6064d110ac1d35171a344c7118ccb24b65cb2cd2418f1247d0123fc109f058d81721b2dac480f404ec15ee66dd3db2373fb69ef62d47eecf1a1d770d7442c0d1927d7b0f5acbbe44ff244cb6f5206bfb5cf584ce5b64fbc818cc6e4b76b39fb2b26021e5373e4b1515a619021f255fb59b257c373144293bd667b1697229a4dc8a5fc8facdbbaffbd66017b5f1a915de90ed4cc711e16e4e587501bc7e0a32dca6a2337d7ef4d5dd1b78c836501171153387619e80a5300f7a2177f4879980df80dc9f3e7970a3ecb527286326a6100cfad5113438c074c3290c17ad48ff7976ec481359873bd3d52b5b6604f17d129d647dc3424d7ed2ec6c2465afae8f4dfcf1aceb1771b67adc4e60d9e5a5b41ee9ba7bb4b7125988dfe933f608a58d300764bede1320f5ce7ecc4a648701fa745f0e456fef499e6dd1ae2d4d38127693ab1058be9397e7a49a1e6871c11038ec8321b1167e163d4d5faf579c2b6c08bda539570bde8d69d8cda6613d6117fe738cce2f10c0092c6e53647d5c0a5135b3d3ce0fc6e81298c2794a0e92d09b84f0995a38d0412fd8c3a4cf2be8aba18601dc020fb1095f533a489056b0f093f8751d1ee6073faf59449114dd11f4ffc3dcaf04acf4c461453eae666252a1f9107c7b68072b213febb4f4b041bffdf31cb23428715e699172e988af2ce87647a1cfd082ac37e327c48bb02acc3a3a045985e76a9498d868d4db2e41996224eca8477b2962e8ea26061472a8b0daff4fa07d963f64c560f8ff1d30a9e9ac46e2e7e71177494c2bbe97d63230e4e7d31fd17779c0fc24599e626ae4095724d26d2931ddb8c2d93282292fe25b550cb10cd3532c57fb8657130e51f23315c1854815bee6228404b746d0d0bdbfb9c191f33794f4ebd0e3ece28174a684d662258e11fa921afe6addf1f2ca4fdc67b1a9f3f397251baa3aa0a3f5c2da690bf8f1d5a2261c7b1f52b2e0755461a807e9b634f75581c3c3cc76ca8e14a34276ab153fb92b6087c8957c761fb0b7a7423ffe93a9c15f79e45ad0aecfd532607ecb534500cab4a8160e989592ea76cd14cac23a17c999955e61c56b84efc9477008f2a7184f9837b9fa19942ac1d77f2b5a57d31274eb7bd5a5fb2e94def6f0134d92bb1bcfa4e9f6d44c7ccfe401dcab7d5059ccd414b4a36265acab6d52826e00a14b35f2c06d35b5affe511f9ffbbbfa921f9848d7a478669bad0fcf5b0bd4a0a71825f72ffa8e349be7e9ccdabb72369ebdc502b30d5b4d4533b6d080dfeaa42233a9e4e2c97faed09cce68e7776cbddb0a38f915f6166d3b8d61a3284868a3e4264de84ed820ae5cf9b77ea916cd0215a09873d5bf2f4a8dc955645309c097150925f7abe9c4b3b58cbcb1764712813485d0fdd5ed7e9fd6629449ac044c0174072ded88c7d9f88b7f3d8c0567369de89472b6a7fc1c61283de51da885bac6105b4a6249ae3c21d69dd249abcdecd3cff6fdd76192949d59c772a697fbebc247343181a52b64875bac41224119ff42b5454cdfa384becd6ce8a6960bcadeaec105d27e3f6c3f84c727126123ff0611910c63da7de35fcd6a250897cc29e7fa65670851ac7cafbbb33f090b205198021769e68f8b54bf250b7858cbac67c5ddf367911fcdc9d13f6da57bad96fd6ccaacd83e414e1c26a4df81eae83e5c9eb1e27c87740fb4a50c0873b9bc841ce05dbd6e271d52bb35623264b8f1d217825ec69fc41abefc877e887cefe50597f863aea86b16cfb0d87d337832ee70a41a80d6e3463ce9d543fa542d9010cff78e9a3d9a963d547c0d11640c24db1317181d438e7f4728851bc57cdc267fd8e83d181004adab908ec118c27c9c676433b6bc70fa4c8e37f571d212d5704bb4c1e730b3a1d85285db50507f45ddd40c5c0a56a4b3caaced2998c7b2ec61d9aa9d42270050f6aa7a80ea9fc74e6e83c4bce16a060d1213a176413df272acc42fbb261feb0b01a3f06376c0c75d9ac6f425f101d62b340b1281c43b98f95d310109090d5a465270aa22e9d3364035b5fd66a4d6b4f8e42187db2a8f1adae9eb74b8df1ca542b26123b10ce48bd0ee9c675e8abcb43b99b026f86caaf3258e8d4f5ab50112c42d628b6fe3d92aa7fa9837fc1fb066afea40841bc63159bcaa5ff51bdaa88b80f90d0434d4a1e1a1d53eea8264d4158412d6fe365001cc76f782a3bfd231db439067c5e818663d482e1d8c9e4029b578d191f186b3900debf1f9ae829a2eadbb5349c5d1c45ff77b2c72fae14311a738a4d12bbb7b0b146e7ee46495e37be4142d06ee938564e9879172040e487653fd65f277a0804f9680b9905bbb83f6841cdac84254b5b2520bf523df018fa7b30e36136256fa359343b17086eac2354b22273f7b4ffe7d4362938cd828e3d4737c0de350c2aea1bd3dab280fcf78b9382290f32da0d2bcfc598075582e338ab355cb8b3dc352431cb6c293bb19fff3bdb440838964a4b134a68b8b276a09efd108a9890c8de304d5b9b171ce72607355c8564d9ce5a2077684821b41883bfb6222782165de5d9968d4e1739ef3d595ee2fe232b7ff01233d8ccf439701fa8af15e2537fac737a992fc289a50f49435dfabaac2780ca4f6c30c2052915cf0c2c0d4afa9af2ced61c83117621f3dd16f18ac415646356ef6798a684fbf5fc1e410783067abdcde27765567bbfe5cc0fbad31ff4c6c0bc7dc4400a89fe689c99294f8513107ff113264b790db2852a2d19dbb88dc2fd416974c2373852941bf04419239b859e39145377dca5ee56bd0b5fb2a676814a9e9a97bf4f9cd7b966fd2864f94eb9b59f8408563703b3cd00ef92cc7a9c4bcb23f0cae33cd6aca81d36855b49b59491659080a043a2ebd5c5f6e532e5da3410a24f3ff9988f50ef9d34a829eafc2f99dfd9f67e693e373a742c057bd29c7b57bff66a69f777fdd19f58ca1641c77a45275b20a2f022828baf8292b95983987b608b5089612c2cccda03110394736c2716c80add84cbf0aa176e89fde5aa2d722ee83f00ab400310890b8d0c25e1042deaef85a8361fde4f4b5ad7acfb86fb0741cb49ee36a4055b003cc112ed935ca239dd7d50ab2536259df2bdd5a3091f57fa7bd37df4500ac10e49f333441547ad8907b42d1666844612eb36327932eb3cffcc47d2b76d30552d3ab34c3f2ba26eda5cfd6ff0ecc6086b9bacdae19155e89c1cfbd30e5c6e50ff96d369af1976ada26b5eb4045afafb816994776e3eb8d42deb35a29cd409b429bada4a298fc24944688b279af2a8317f96526a7b8cf8fd2f1aabf471bd61ae350819660763a1a8824f17035f6fde95878dd396f95c46dc6beecb9d4d065a2ee622635afeddec0969422ae870d665006917bc68c5c91c5da7c05be69936bd7e57866303d77fa68672482f5fba27900e7b9926f30f39541d177ffcb5b88e1926aa13ee26c63058d090ebac2e3224d29efa125d68467bd3ae3158e91bc2e9d25d6c8b5c3c7481ecae79188f64246a6033b1d26aa645891c7fd6395a0d4ef405952fc1291f4ca78ae8c41bad9c29c02b4ecf144a3704248a5b61e638619a4da5e58830060bc01745236c33f5685d5e7e307021581a6b24a66b9ef3d1f4ea383c02255e3144979486a26e6df26ac9ed7b52c1745d2eb754518e5bbe2cbc6599407f720f1252a7fd117d7067e9fe27182964bf80bb0f5515b6dbc4bd336e3188e0a0d41e1e009b6755bef9d1300dbb1c57d6f4bbadcf2fd3612f33ecc9f78fcd24a1daa06f4af61b581f6ae8e5aae8587d204ee37861a743a31cd0f7ff6c6271137c1fa5273ebd9cdcb0bf0b7d15d919dab985288f1bb4e047f0b59928ad909f6538977c462e0f3b20c6794afcecc5da5fc310d86ab584598be21fc42bee18ece8fd1dbb69626b692cc69e127b70966273890932cfdb942b416e2a846e670d1e5210de4b14644f2ad7e46ac030cc342f07900ef75fbd02e6fa2917c58407556e1c624db45325838094c90aac053f38fab07f6972b38d5015d2f58b2cfa8f2b3ad836392019367f96fb39ebdee17962209fad8ddcac2b5b727d200dc76556c081535b0506893bd169ad2ac36ae5e9800d9b6a3abaaf3ffc57b50c4824fb7fcd7761328bcf5a4cf708dec166c3b8a9eab202203e0edb7754505badcdec4a6280a271cba728c53bae7d19782ba2d3c420949cc30437775f18943a39662e38c443dbbbce6672b3194451d940430b9a656fdc13cd14c79c038e49195cc3205a80e16e7e66fae799277389f833e9783f1e72b211d234554e097973ea4869221b9f5dab02bbc37e654ae3a36f775575584445fab6f47ddd0f3d80183544ec07c04fe27c3d7377da8e5a147fa557f415fc99d3b9b1daa0a0718a33f2fdb1655863dfd26e402298c99d53431ff8469445dc3686730feda6fa20646258bc8c8b7f7390ef5816f96d10566f4c5251a11c9b7895da17f98ccac876042261ddfcc968390e8ca9a972c1980e265e87eaaf97f0c6ba0ccc19463dfb46f1d239335868ee453285f0e04b6ede380eec3d0ee5e5ed13d2f0f3fc7e03a9db4dc166e998fdb4ff910441c17af1376d57c2efa30893cd58ebacbc95386d25462e17ebf1171385164ec71c6f971c79493abe36e4a6a446348ac413f4d2891cbfeefbe77f6c0554a2da41490c5b92cb092c54f2ffb2ea512d3ba6c4a9055b9a71bf37ea790f248288aa41cad117f3f61e08d64f3326cbd03fe69fd8e483049f2e9ab7774df0d11761a68caed04b8341445e38597716ac612f419d641681040edd1d9dbdfcfde0a01f0f21c4ac4a91a4692697934b4df1c7a7dbbe6b4a4c518c7d4280dfdaa282308694cf5e0ed93e8a652f75cb4a4ae3d04cf7177dd0490a1196ed316fac379997788ca7a4b827f04fca124725ce7445950ff8381cd4fd6f9f6e6d890c2d0b2e06ddc34b7d84c448d2c45281125f0b20bb76280cc66c8057add2b1389f7e5610d17c8d54e8ec5d52a2741743ff0cb363b97318de66cdd30f2826ec4a8b5f6869767ef6decc1a2de5c9de2cf5c1849633785cadd653c067b973d3d89260f1b5b67da4be56aea425b63e2041420a3bd4da59e5fc2fc2d342b9e6a70de6da18670c54d6c5e573bc7e7c5add44ec827526a1cfe3528ea5125b4b11263b1dae9b72923217d3fd4211d941aa3b21224db53a5b53cc0d280406a0299d3174ce83389de461321c011b9536e9195f3fafae08b0f5065848a804710ad1c50d75cc61b212e500c738ad2ab7f140da9635c054b30bdde6486fedc4ca9875f8bbca60d3a20cd21cc627da296f9a81c44754693110c89131e03f5fde4f01f668ebd7818360d94d79259c3aca512213a026357c473326a5f943b7a9801b986390f4ccd4c2a0fb6172b6275d89e1f88e7e373a4ace980174692ecbc229a1b1f805358170c324c4d428a9bcda23bd7a51f3975f75b4a72ecdbe5f3e64437e9235bca6a1bff0b00e39ceed9a6429683527db5e270887bd173bddbe5c573cd50b0f09cbf2a62716c942123d4893d5857523442b1e30321687f29178881cb008b1f039e656e684c0208e04c03a9fe76feb91e023039b46f9b4d3ae57f31c577c531fa7e98a619618bddac2871ec1c5434c227acf1278a1eebbf8c0bf11db945bdbb30e0b5eb5f4b3b23f091b27ecc1933c5f24cb2302298bb0872e4a2f6e4beee244bc8ad178c2c00f4c2e6f9b90964747fe5022098d260b6181fd3b42e7db57141954379496e0388cf78909a193d3414ee3c31c6712145b3acc8915909acb63e1fe73ad3debdcd396ac50257d30661eaebfc35725deeab7aaaac650b3c22403328f21ec392a28b0e0f65e4cb89ed6ba61a9a35b68e7a854edf100bad8967c2a03956b634a4a5d01d3b7ae02538877fac2cc92b201a9a61a40697363bdc751981c20cd4daa3dc24826f5cb11aab67bc6d3d18dba65c27b1b2a9f38b710a2d9ac5bce4bd7d7179060f544ee2fdddd03e09ef5e8e565cea1f2f0ed328dbc83a708f17488fa07e8a71b00a98f6b0f72b2cb8fc76b5301ba43223b15f3d4d1e9fa3949c305990d81db18ee91957a037cac4e001156d3455b092cd94859c70385024276920726ebd209b9de29a8481d299c42d14a92e238ea12b4fc9c9f48e5148ba10027f94e04c215096b1c0eb0cfed18da9bdf29d9261f6bab13e2d6547eadc69342875f84b4b3ec0eebadac84152e02dbf6da56c550bde9bfffd168dec10594019f6157f2839b8e8786ff4418371a5a86551ad55841eac4c9a83c76ca4cfa87d41b7fce61da846f2f5d183ab3e22485c78994825f3cf4c6cb2d34f7edb6f501b13fd5bf4173579c6676208c781becdf5a228ccec52919c489a6421d182eb119412490da8fbd91616c37965b35d116a1735fe5787a5ae7e1891c83497fc85642b92516236761e59b34e248b4b3fac798f284600bd80eb2295e6486aa16cd237fa9a6ad3153e15f61510598991f4710260e13c0b5b906a2fd211c9c4725afb0d0b0bab1507203ee004bab54b8fb63b44ca75eda6c9051419942e43b163e617a3b4195e5538eb55a491835ddb5ea5caa4b9b3b83ff514cfa2ad0f602f3c1f9e7541adc6f859729196ec044e137bcab9f7c05c1f831086e3840d5408610cb72ad2e44db68db1eca61068291510cd2787324f952bcbfc46dc5aa8f13aa8ebb50a058d488e58a34215945d2695cf7f8eb5e34fa5c2f0c882b3769d62b2e59dcb8df8d07e98244c48fff0d23105974c6414434629bb5a70e667d3f3a6b3ed6a84e98f7ead85a6ba3431a9c5dc184e6d3793f61be9ac84d7a2b4de9329d65d29f7d4e9c4b7345c0ee94a48f81a41310951ad3ad66819665b318eddcfe91001e132dcbb99d39511b26658995d6cd45038954ef98160c49a47134c5dbd68ddc4e774d1b34cc1532c1264876ba7cc944e6bdfae65385bfd6b1d05125b75bb84a6a5a1432f880ef5241b9763bf7266e46f3a84dc97121ae735998043317ca6195b5d42c4c56596d69d2f8f7ec8e844522df7d8197c2ca0704a01304f7b695ee156ceae6422645cc61830385ba9b45aed2a9da1b42d58083f524655a77dd2d416aaab60049307acde9d5c8daf78b51a7635a6fb1636e890ef3194c4aca204ea6b925bfa564bfee0023dc911863b8535b67454e7d65f0686cf6cd105f0a6d0d60a4f80778ffab7d95d6735d30991c216e692bfd901746c182a314c673037a8e97a7c96e16249d93023ef7d223faeab3afb95ce2a1e8e0e750571fc445014c96f7331b99837a76e01beade3415d9c64e894fb9f0391051ce6a2cd495196cd1597eb5034ebdd7a94b7dbc21f8e9bdf1ce29152b1b2861df816da50e1d4cecbd32737db84ef1e49dc69e1be707761ccd0e9c4f84c4d903f06f43824a951c5eee923ec80e1aec5384fc81a194f8be6e50a81bf008fb1658bc39d9fcfefe580beac3fe912c0c92b3aa22737430609f6da086da2757c894c9385b82741860314a0fd5e58694bfe5d49627fb9b8607e803d94993ebd43f867659d66bd2c308083d423a9e39b3370654f23db40d0e770e3750487870d3e304f21ab6ee8369751359947eed172f67999034658d80132474d94e75a229da75a95007dc59d7ffd8335523487cdd164823d090697fc6f94b73d1462fa6e2181ef3eca44cbf3ce8ff28efe6333374869e81083d20233cacd6ab2c4c4e9409b441bf914a6985584a052a90e5d2349e8d87898e14d600c45a1b9820eccf25978799c2d357d5c486f89f3dc3cc513baec3a67b57ad2de03e4bf26dcb1927472fd3b134416ae7170444d6284d915c8cbf7742c95512d17e95bd67d2cd1970db041b3d0d867e06f065364864be2eae7b7013c184f2c3ed6b9a9831abbc3064b2ade093abac6a5c2f88b0c7497968f23dcb4c20a9a5faa7266e6d3e077065b1deba8878979749d9e21898663f8c99e099c564a9b3ef096c9b240b0df3e7322c6f86939c3822896a1a70101141b62f3a2e2bcef9b45dbf7bf541ed29d39029dd678304e8e30a812cffa32d7e3f894dac5e04fad5d1fe32862180b2bd80ad6f93eebe9e0672bf67f2e600f90331fbfba9674150ef4a6476e5371c1cc8cadb700d2c41bc8efc46e06aa7e83e450a4de5b60f07aae2348aa39204d5a75b7b156c8a781dcc29df0ea426980f2a446283392efb9581bf99b507e38dc718efe9804c8c962154f2f79be8b65bba6e2e10945ab72b68e2a30ea416d65b0fb701178895ddd208705433e205b95013f7744fcd83331947a81a6052d4850a14c59fa022ea121d22642060158366547445d70387842926718abd76953cb3e4a6a6e10cfddf8d3666746a858d8b590e79e49760b2056ee6d6f3f19d65f898571ea494508db194134171eb5bf8bc2bb6784fe74c93c728ba7c938f6a76ee666615d9d341752be82f6bdc64add6edda2c4034d66930307b63578df9b41780b852697110e7bd3c6c0893b107917ec3bbf4f6ce1116958de74cf25a9b1dae59b8d39eceaeda1fd90a2efaff9e5f1a03f5355227a223992a818a2c723d037ae74614e19950e5343015df8abe6757c7a8932862d5950191f235e06ef614e60789a51698eb5159b0a47c9798d45d45ca87381ece7a9334416562a1b5da3b8ba74f10db5395b5fd2b6188664c8ec5b5afe750b34bd5200ff6fc35a74953837e666dfa0c886c8c33ee78222d769247700a8de6d7eefc6117078592355318c4221c11673c6a8be268b093c96db4818ef146d744edde06075a437eabe5f37513f9cc0381d58d3587f1466600d00deb8320e1b876a40bf1691c1bb43aab8540ee875888393864e0fc9544708ebd8b6798b38a05c69d56eff600b4bf2d3f75564ba902cd176dd7e171bc02c50ffad336d57d938528358e4bb6208fe8922815ca4a6101da061e6f737b8b02ec92e5414391ddbb942f37af5472391c5448361c5a79d68fb9c262e49ee876e8e78c630f8677ba3abba46fba9555329171e281fad9614dd919c6f35b38ad0cb0c56e58671a08c92facbcc03da2030b90ca69ab7ac45c74705bd59cc79e20b65b67d4ad317f9fa1f8e878a573949b0d90b1eec61373e27511679badafd11449be0a22cd67d474a290131e7e9e83b746d2ed2e45f96b963b7c62a2b8279a1e948099c213ccbb355b62c6548b4b92b64e84daca4c089a049c502daa6eac4937bf35796732278ff3df515bd8cc9d28350cb74ffa3e3c46f4c32be105fa2819f540ead29125b9f95e5f90be1f14d3950659f587cab0261b2bb305701b15d50ec38700c8191aa22cca44b0d5722aedc3d06234b8120ca5f29097e97cf6129d1c120a748c93216d562ea7289ce54f522dc71b38929c8ed1700293af2c0361a04fd6e29b6c9732ecafd9f47d2946f367a20244cb276472fe04e1f4a53c963daf229dc46ccb5d78b0308d0b8c1ea30409f0a6283124cde9fb6bee9c0a1259a113a44262a5f637ab749316d3ba8f1ecced2a8769e87b36b6d444c3fcf37e8966a577a424fd321afd298e135767b116b5def3a005ec81f6a5517575e730dff5f99bcb4548266315e0c4f39712c97a69417eee403e0d3ef6cf7ec606a330f5009e96f3efdecaf150c69ed660fa0ecc0f13d1564b40766febfc85efcd3a242feaaa69fabe230219f4f61ef5dbec5c6de55f13422363d8b40ab94c5e6d52a91c33423024be08d6fee7249154b616b1f9ab30537c7c374c13cd55dda62ef7ce9563e2a70b3cf9f307f5204c28384c1ee107db0bebe36d7ed0c855309269bd42a6e1285e9a6bf6156700c8891217b6eab4d72e710495098feda9115fa2fa7e53ca74933f5a8efe21728ae9cf2ab40c66ec8a8494931e45efe4b3a9d67c1914e18938f442ecc67c370c1887ad695e4c7b14080f8e5d032fcb2fc4e14e39b386b2293c7f946cf51db7fd6d2706006c55088c23db6458cb54182b72854e92435de99c518ac2bf8354584a9a77502179d3ae5fa0766b61cd2b2a61e32b82becb3ca190f595d041364e73b89accdf3256658623f1e05bd86d325f614cafad72705536d130ffa2effe463d4a64fd0d1f906a47ec0454689c071aaa999c1a335c714de1c8a60d5f066d73dd8e20ecb11c8530370ce8e8516f76036859a7c801fd5af2add931401e960089fc7b3966bb1eeda99e4f27b019fe876b45db4f886318629e2b1b5178db348ee9633d9d86b1db47ee3943e0a97932d74d2e81d0fad852d39538901e01a23699ebd392918976be2a0db5a7c4dd66b3c13602977c7b2d35e6079c002202524a1049564265bf5dcfd6bd368887fff9973f129c8ff4564d26750fdadc8585d8ebe5ad7074b8e2fd15dbae2e0e590e5b7c1a102ba66570a0abe5f2d0c2cbc1b5d3c2965e17d73e62810afbc50ac136f06876085fa53b822d02f1b313015d913903bfe1d9bbba5c8e140387b5c2ec4bcf736c688f3fb5c54f00b842f7fc5cf0298a8c77fc4721fdc62501d0f9ae764c524f8110ff3854b36b166268205ea1afbf821fd3ffbb04a984817d7ce14a583e5227485291d6f7656ec5b31df45d961edb794932bc9c78cfd207b854779e8e9b325daa2df5a71088492155e77548b15d6b44dde0c623845502b2c5214aece875a0d3d9466fdf0e3f2e694029e15b6607585c0cd6974609670e1be4f4d65ffeb929d71173b4d86a31f3111cd2ae4607cb14064292f60557ce34ad1bbad3fd49e4e5041c511fb3a96ab33150dee3af20ea814ea5813095ec9f84a14a79397a32e39585e572d65806c6a034ad7c0797ad6b4fbde47d1a8f3c6c5cf6e9b9598023f903149d023ebe067e5dc03f07a447c98f8f5c8d61d87598aa1a833cddfb21a23d0f2bef40fa55320c54873d8a902a845d1c43f531a65fc618d782bdea993a03b848f289684fdcb7bc4fe5586972e6556c4702420bc7154f6ea76b19ad7a332ce2c6c92d4f1e8cdfccad40121d55f66d5283a21b07d5cde07db085e3c5cd8ca0b6c220ce4f938007855f1650c4ddb679e02845f4044e3c8c05776df58adcd6c5ff230fcf711a0876c09964170ff14f0bc57ae16763d02c0c2d222ed412dbc1548ecc36384c1b028586f268dfa4682be9261e475d1bd17853c4b875555d5a9ed42beaa33026964d2ac2e5e4283249a6f52323cf276fae90a53e80fc6eec57bead12bc495116afee6834560576247c83307eda7e0d0c640ab7396de5ac3d355cbee2aa5a74632d91cd5609a2495332e83c14be4dcafa4301ee7d4cfe749d2de553d96ff83b3c977a651cfff07db4860598f270553df9accac160133611ec08d84390c0f4105a46c668e5a0d611e55c7e7e98866216291bfabfc431978887cf77ba3f3c9f61508e6b36d0027b367d86db1e587f4a2ff81243b702d2dd735fa361c9fb947ab254c9f37c2842585ce3d1d3e5e7b648b5349866f02b3e983f6406ef0fb42eda35370abd3b8f6896f1681095920974c0e73e83a1c43f3aca36d661a1c5e8238161248c94378bc4c779b4afb2eb6cca80d23dfcfd64e70491b2206b46379a51097f4fb6f81815b45fa64ae160aff4f9a314e5a248d06674c6952ff29070291a8cb25e7e04a5f1d643c5be5abc150c1483c47c259626a2d4ae02c35ea1acbd03dc7f0903ec02f4498e5e8899cc304702919555569aff11a1caf1c6eaaf1c518cf40a303278426a4f4ab6704961c99afab7bbf74d3ca320f617bdb341f61199c8d0713c6b807bc10eea3f112978fd3fa5dd1b4aede860f138810972884179484bc0f330c06f3bb6194198ce128027c63e451dfbf92d65dd3dd1d57f5b7e5fdd46f4ee03a59641cf1987db72e3741710fc30fd0d5f908ffdcbb06cb12a4315deb2a699590165c7f801b2e3877582bcacbd42ed59c3dcc14117edd40aa7ea7d6ae15d02080e525a94ce196edb69c5bb4e21b5bfadbb61c941005fbf12fb82ab4ec10b0815429938839e9883db2dc15709007419f44f5920c0a5a326fc46de68cbd907676ecbd663c6fae8135f9070008fc1089d9e1a89cdba2cb8dbe370b243de5cbd1b0351459b3dc1cfe29f0389c9fcca0955753c67b7ac447ecf0b222739175811023948ae8128ee075b0619db578bb932e0ccd9135502b4e8abf4e503dffacec0ad5ff16a22d91b18f6f03900e86aaf3db3698122eb90d2a614ae572d40f88612b1548de5c4c990ed4644fc5ee5f247e41c27d638591ef7e0cba02535fc12b666cf2aa390501116c8e94ca32c2bf2ae88c39f0c2764cf85d0746b01af5194c10cc956c24b398406d207f1698a90c31d0e36104c84379c86e2846c4fcd8b3a85090c527612672887e8f7ac7df22033c79b1e7cdc3fc4159a2c30e1665e599a3227f918ce2b5fd6b85fbd7e7e9d051c12c89e3ebed26ebf3561ceb1e132995696224d07bfb56ae71563dd1a221647358936f928abdb9ba4b05299c3fbc13a5b18620b475279f99bf0ff666caa18ccb8a7f415fee4ee03dd6578efcecfb56c1fc1b92b0445bec8327f5fc9b901170bb760b8aad2b133e5f8f23047857ed8f6d5ad16096a3a29d9f8cbe5c59cbe77456e2bc1146e7c0b992f25f79a19b8864c56d5442d60a853f70237cc79849f619200ffb49faf03c5351237a89b3eaf0bcf671cc5f03b8624282ffd54e69726136dd31dffeb6d3a3437a35240d0ba491225ef709fe953709c1418ad1949424fd25cb216065223d589a0e1190d710a7dd3e11c895f505b2b171b2454a143cae9690de8f8f536d50907062e9e18976593528fbc6ba88e2e62fedbfab6dd0e38d7f9624fa9c56bd817762f266599a6d46ab4559ca3c512144a6bd7f861dc74f694cfe8d81a30aeb74e01112c444c5c3a63a1e8d9b363fe4f9b03a65771fdf69b05cdddb6a56fa4411e5d01bf19993857097943b1fa2d94249122123ae86cbc64a2e69e5a444afde1bae6053683e166f3e3cf5f89d431b519a503f2871754519339ab8489fdfc3498389f1faab1363619b646dd9bed3ba626bf1c3f806d91e4743fa5221635c491c561b415c058a1f646fb64b112d987b35c2e201a527c4d94eab60f80a2fbe5ba7d767f44530c883155a3e6f897c30fd04aee06b7f06ff92f16afa0c8da5f3ab1ab34a2317e80e97cad50c274a097227b032f2c1e5b72471311b6a8abb2b30d24344667d041f22a41b9702691f299a38659b20d92b5e5bec10e1753de453445a66bc65d8b4b9924493748ec5dd31f45e8675d7cb2bfc062d9a6e6baeea5d8b1ab1fecaab222293c7d4b294ef1ce1cc43265416af4be00c1ddba8b263a5c997bfe59e9d8a5b9424de3100dabd8609655f66914b936043523abd54cc7ab26d6b474ee34affb946f58e9171d6bb1b9901ecb25d2138a26253e94586b5a539707c8c2b84e286e7a2bf488d3266255ab46cf69255e0e56707208c79e32e70d6ea6a97fa1042525079913b167e890c266713370152057d5ace8101fe2fde9d998c62811286b414df9652d75d6a1910509fb213b23baf32d08412f782a21c6a7c8f5f7e317388fad6c936152d844d8435c2e47524eeb328f7ba4dd751bf278fae1857bfe297313d8e7f1c450e218ffe08939bf961f014a32dc54341cc21fd3021724e386985d35892d67df47536e59a6b2cb8bb4626cb8ebd0e9debcdc483eb09f022bca6f38423b997751ce42d303249df29aa36ba9e766766f1aaa195bd7b2cbdeeee98784a89a625031f6bd72eaa6ac088c9d602110a9ff8ce10eea3a2aefa50b3571489a0e5e30e8eb3eed44b10d8c75913d329339942823d55c62c0eadeb505753b7a5138e970f35925e50812e864b8460e22917896c9e3614a9dfb3ac2eeeaf2e0cd006f0dd5c854b673aee57bfd2720254eb88b289f0151b74de78174b259d8600590f7ee039fd0306ead0f3780c36c1545450c5e1f042e68437035a00473950d326f0c9f5bc1b9ca3011adfa6a3e44114ec93ca25784ab0a1d6315c4809143f998830421e1929c7df6cbed622754a2e90a81f63e21fdea2354e35bb3383cc04e765d3aa3e2b03d9644ae8e8a06bd8d85629081eab91d871472b92e7b53dbcb6828e3c5b7868cbeaa9af43fc1ad875ea368d86d427badea59f87c2bb6d83d913f84bcebe06046f435abbb73280aa2be1317d41f8196d1c94fad4d0b54626ef1387236dc0aa094bcfccae6ed839973b40f16e534eeee8138095ca878ac2eeb70d8a1c2cd243d213f78e8552f83ec2467ea1f6d5002126b3d7d8078dd60eb0cc70c4491009b12f6901852bca81d9328d04f46b013dda95a5e133b86638284bc811ace733bc70f364e7bf15bd63fce854dad48599f4aa31c085c070e22bd0e38fdc2894801f897bad337c56df783c12f1bbd4ffbd70941b149eee06449f4dc800993541775f71ea06e5170fc72acc81ec7bf11915e907fc7e076174a4a17863935a1a0286bfad2d8016de076c5c93216cb8c4ae60b5ca702bd327d071f2cd533d3bfbe9f8b1072085568bf82a80a750d2b001f87dbb5428028cf63f40faca3b35186eed6f8c1b347f561480bba8c23049b576940470811cfbc4a9f42752c86308e4db3b7fb0c9feaf15ef8924effdc4fe62e49f3ce8072ec64eb72b4bdf2166bddeb9225e47bf220d1dff887218b0c8cf0b716c39455563f0104bfa2531b12f5a00e35efad81140133952cdbb766f73eb02e6b44d029da2b6983e82d11756a3115ede16ea95a3ec19572abc98873d09103160ee718ee1f41f16916d64305979cbb888b3eb820866d6dea40cff2bd513b09120b75660163d4f70de096bb13ca8eed36f5ac5a16222c45d8695f4d0136f9986a17e561df3c0821ec37016dd375337a1bb865833b12b4bc5a2f03788036663466238c5339b5ffbcf51e3304e8ab0065eff96397271967078cb0c47919fdcb70cd01df7112a3a04df9418785154e65a7695c815dec0b2bc442cb32f9d8df3321bc3df783af4264d9e7c6174265dfd9a90611cfc59766956b01592994086647cf1f5a847f8ec48f3d266e9363b09da2874d4b02be52aa2ad6e85e7adc3a8323ab600a25a639e91a8fa0c59f8d3cb128ae5b329cb1ee301695ed21c6fc5309fe499d5d85517d2ee0463f7f6d4e946789887c0c7d0914bb6f5749a681b89684438eb36d8799b627727c177b1b95ef5d4bca42ee77097ed243a041c41597d423adbf420e1e61749e36b3691094ded8c7b7caf748615720710c21348c150de0a09e0b8a0e2d1215a15f1245e93c5b5340e1107774fc46765b222353112e73fe7e1d53f16e539f7a4cc3e51e98792b8c8120d3201b3de147da3f953e48bc09ead4bba3291c1c3e376323f4b9f8a5f36ef707052d275d611b25cc1283f0e57a96a61234ac4da81fceb2bb8e33eb22ece66b7c69a31f6c82cd8f90ba45dfaac3315a8de3ba07ce806bea43f0263aba5c5ea7bc30939e079f9034ca07be46b0b32cdd2492550ad40748312e43025704ca8410e55151a4492da67098cd2e3304520e2fae0a724e47b6472342648d59c050b2d61b357209f2ddc2d546aeeb548dacafa07d64071afb6dc225e3b359eff4356fea68b9d3d655b28e966fa8d9faa32c059c8bb10a48d3d1780c6c02430d4d8844b7d8ac021e915541793c78f73458302eaa19f21a469682dac66c979a83744198a70bbe49f7715aabd07147ffb73b40ec0417d59440c1f21cc4f6f45f9606389661437ac683cd50abc8eee0abe4328647aac252ca0c312f382fc3f7caa797f86f7e4d939d5ff8e69e06d03fc47f06b25495631673181f1cd52a6c671f73e40ac6dfc13b6cccf18f6ea459e4ba2982ca586d7b6f134c91fcd9808a35324e814625c10ff0a84e7eac8ddb4f9dc750f6ab628fb533c62ca6f4e6cfd777ce41db7fc0297d7c9277b9981550554426077377b2000243ce5fbcff28858dae1c83c86db0cb254cb608c16755b79ba1f73566be066ec17a4000d3da06484a26774e2de654e9ce322b8f5a682579986f133f07adf7ad10e67155e6ed4723c8a7242f4015a87d9b0816ffdb3d3798798c91043019b00e0187e84c37c0fb87a223810f955f4aa2b9a8900940c3cac9cb2c528feb541dd96635d55124e399365c46c0ab2e6a65ddc58e4726abd4f9bcfc446bd40f76403bdce3e43a0e9150909458ea5368bc3d73323be210b6ba35474e21a27ff19d00952c31e307a857f2ea531e539209271034ba2bc155dfbcd564d2e05d0c4cdce12f7416230a25b30e3d34dd1c2db47deae3228a0a29a0b337e5136522c48e8dc39561610c2a32a5ec97259123507d4579c4649610640d5b738d1a73b503bf9fe308e8c1ff258be8b01408ab540ed0dd124c24cd3bf0a294303bce961d8acf1da50ae4339d16f326b5b895cf330376e95a7392cdfad63ab65ea6e3c81eaf67aa349c7c1c9d1b6e1ce6bf9ab13a96a7b0cbe462da81bd693b8ffef424f8b26bd2496246d688249a2c061ffd27dc5a806dc40d540abeb79df6aa4b8b0c8d86ec3a1edf6c190f537c61b2a545b5ddf3534bf450f5606f77e5c7a1c82fa4e6a1778244f344805b0f1abb8f4dff65b3fc6f746c1f7b5eaf2b6da8bb9da17d65a12446d99c6fdbb541e299624df85a74a16ae55e6b957326ae2939fe65ff824a703fe1264c0f5755297246a1cad47428e14e1efa36ccc62fd7f3b9a0a1cde79432a30c2625935c1b1ae2c7b678a3245706d8e7358dd6e89e2db2fc5b3b2dcf88b20ebaac71e809be2aee11d8e8666f4ba8219fba7e1ab4f5c7134055d4e99cde7b0a9dd246e4606f2e0f21eb39bef943f6e0a9a67e4e187b8076ec45cdc87babd47474c9ea58f90d22c7633c84963e3962fe3210b9381e81ba3f3424e777e797febdeb7ca904d9d44aae8f2dddfdedc87f81c53bfdbb685c61786d2ee2d62098cd225671ca306d6f4614d4ffe5fa6a2911f6e82309424c037256ad07cfd6396e06ae1ef2ff88bdd4168a92b486277d949610e5977b5bf3c62a51ac3b060179712b70ba31b88d299f3680b9d988a899341c892875601e9b17636192fe20b52147e9242035d9084d133168ca19b1b5b0993edf29605d39829786503b37c662ba5e28dddacb2e501a410ea3e40780739838c03b5c485ffe5a014d5186fd51df2a8d1d2a039ab0b5588731c785b65ef745b7a47f95feca1e2a7c2e93b49450a8f7362b29da657083688255ae9516f2fba6445138df13539d637c4799e16f4b0357adbf999febc42f8c6f5c905be0f5adf0e6007bd0118221fcb099fb99b9a0fcb911b1ec860520f69b2e595fbe3770f351beef6d1c986755c5663ad55bf7251b405f12404987bbce35be0ac4d2973810aa18d74fa34a98db00a6a01b333833f57e222d513c2564564f680e275df5b4fa4924f249cc999d6df88567580e90040871283d141c51f4b25fb24ce6f117a106f02fee65ce44b23860188080e1453e75cfd05888912b52b6e3e21345a6d3b655d6c2276a792b29b41fe82fb7f0558fe5712cc470d89c3b0bc5344cbfe4c9e79d790b2e49a7b7010b948515323c5fff39232b198b0c7fefd57357731a13b6de81a724b6104a5e60e067dfdbb761a13f180f998a3dcebca3101d57502fa27bb9a69ddedfcaf61678542d6b5c1480cdde69c35a4e6e3eedffeea3d83fdcf243d6fa01132567e2bcb28e0e8359e2a28cbbb90b635c4545f34e21fe5f653374adf3a45e7d57797b850d91592bb8a04bd67fd8ead3113f40715270e6ac3eb9c1fc88e4814e9b33888e802f70cf97dbda6d08e78823d83de2d3b4f537633673151d88f28f3ed7e552a182b18204a2e61edccffc1020f4257ea899f657112ecd82dafc28e1710f2b4b6838ab2fcc5f20615328b9e35ec34b789ac75fe1c7399ced0ee13c20587a2668789e77c6d25a6e78443e253d5b0adbc86587f28de02d7b3f03220a621f3d559626cb34c654918dafd42992f7a0a197ed789606fe404ec1ca367ba8ae35ef2c6ff2d0f4f6311130731d37a9aa1229cdb718f2abeb3f3babd8213b064f4ab8b81417f8e452bdd3e8207df09dd4678a3ab59881a1e8770904e6876abc576b9886cf4e93a7cea616a2b94a4d7e3a8f0c345a02213c837868020c38f2bf249c4af43d55d587b45b1caf7d9fd89a36cf0bea303c0d7b2d5b632a922441e57944084543794c95f2d6e9c17fb72feaaa52781d290b5402d825685cb4ab8a3884fb3359db861eb36884743592bee2badcd8021a197ea0d87dca64c3c556144dec150f5b493cf8841a8eb3ab7111e45d340f793d1805224c6bba38debf9d40f7da33d475c41d4228fe25a5d8c19aec4fce9795d7433ea0159bf631359d4f6d53ce067cb6cc82af96f9c7be9d5a6f242e7e96ac2e3295ceec91c55e8114c70a537fa175067de3d22ce974a9f8b0db177894caf8a64e3239da2dd05092e350abd53fe35e1d310e8ef9c1e749f08156cc7c867fe09a8badb6ac92af36884c0844620e5ffb9029208f21e787e5249c41c225718809588b718bfbbe3d1bc38c9bd520be7def594da478045389b3b9720e647ef9c44456cebf83ff63192db10ceec0d7e15ba410cdb7a51dab812e931e3e134ac72b0a0caa209c021d162d29248fa8390f69ba764a068226b1c96c1ca6b7488735ebfdc497b175583f993510ec86cfd30e280b21344cc831380633e573c4703fa3dc51f5e60a36a68c673c13853aa7a062f31147a689e3c7fe6dde03c61bd381743b6d364f207223450643d981ea2f2c13c46726875cf07e946ce03fe0a426c0d769381b1240b28a413d40fdff7d990975d212830336234dc76b4395c510764a692b3416a9d480f031a85ba85a5040f76a25e15be8e696407f62103d83ea3556352828b3f60cf6631477723c9d70cc96600a12458e32094d7295d555a8eb73bcc8a5f884bf58803a795729e965da116f249944eac6b198fb52fb5c526d99abe6c060f91adfc9126e9fc123d92ffc592c3641b6b0ee6f5d6f94e30c1f91368e77a8c1f0ce48e2239da88149ae0e96478f244cb650e18800049a0ec589985638e187e91e84d6959ba4c1c738f0f6f4c57c39ebf9fd4d270746319b13dd6a919514b2f8c3d6760d1ebee8d76f26347799f8280465593bcf9e0343a8ffc5e4072b7bd0568c94c0805fe6366363a987a5a965d9e38b8c1a9d4447d92eb350ba55d95c209dd6d70a5aa7982f0c55eb40f60f72ed2be24eb89aed2362d5aaea1e99d5f37ba064a48a5e7224c1ac63b6c09de8806a46861d58115e545a67a3ffe6c513664fad3b82038f4135c7881b53b63075a1a4dc2ccd2fc02cc68cd8c0167136dbf1ded538a58a558c25bdbf0efd2eff5bfc9ace16be7253837cb77ec2645915f63a5c659cbd89f843c7f1be3d23aae3e3ea2e9edd274b33da1406b9204440ff084032a4ddbabe19b17d1e045adba233ead0b4702faf2f1d91fbc140c7f4a5c160c7c963b76c455712f3b9356a3a707802ab62f2bcc2e0efc78d51f74e03aa1290f265c1c77ed11fe7411d9845243e0d79b348e5ee0f93c10e2efb9dd6de757b36f64d3005834b64b7cf44b708787a0e49b15435738d37c416bcc64e8abc7ba734ce50852d4a2c38699fc35b315e7cf2d5e4e8c1eb8d9c2e692d70b47b4bf8fd48fec8489963cac1244d99c70704c0f627791c950e716275eae88a1c9ecbf89fd8805e818ee800969a87429c233d3a880450d6ccf516e340a35d24a5d1edece68097f975ab68a7b66124f56746fd1023d44a4da691b94335acf21811ed8a3f1c8a6c2389f2a65131b116725b111c11d2794fe6f3cbb092186191e7f884c221f7aa53a86f71d979dfee33b32d4b1afb55c6289cb460978435d784eb48b2b86a3d1032b31739ee6a5c0813e071723e4ef3e3e47283a6cc7231da5eb20d47bf288cb7f149484e123deb9a14162e6c4b56e12ca82101f03e7dda75ca2360dcbd0d6186579588400995bed30f48df03b68d1258c8bfa3b187e1d253b648e853101af3ed245fb7d3410f9ebdaa1bfa6cdcf4bb440440df6c2205a6fe8fa55aa40ec0d7baf5b65c2af10f1ff92363e82d7497f1203de85a00547978af5d1f5b02fc9f997dd3cbf80c7be42e53df650e2980bf5d43cb94c2c4cf2670da4ff8d7846bd2d2f1d689cc54535574ba304fb11ce37061e849d5edc6ad8683ccec0a4d272a2c62feed29119eae6c4917fe036d709b51d0ccd87f8b2206e4dfe68632bf8fb64c86d25af49d9ee15157743a1f0d299b683bbdac7c1eaded0ecdc3e763cc664b948f5787e7955e54c1ed76238ade2bf2eddfb398cdd53b2fa5c1b1b8d43cbba90f34c560786a3b267da05e64f09c0c25335e6d5be57dbf6c75b3a64a148fced19aab0e453b81ec10ae6bbfdf3f526f2edb99c9b97aaa229fdc44c566c27767355f207b9c38ae3f8984cf161efba43fe46c6409b090ded3259347cae8b54c6fa60b9a4a7de259b8ae6ff92729517369ceb1bf4a7a91314d700b7969b7dcabe719ea0f34ea3f9ae1085bc4f33a9eb8595a19049abcdaf252b23a07c9faa855b252a22a656424b2b1c9f1d1ef4232100139bb98d6c08f876a61878574738bb3c3443582ee7bad7ca1ddf80b8309991609d7ba3b8c9bc0aee858fe6ee784a6f496a319775dc0ea9310fc583008051ed74bf2af78cfcba845e8e2d8706c71ba108debd67ebfbce3195cc5de8d753a839910b506f9ed7b337c4b4c63883420537de8a89f2e5dbc3fec10c7ee5f63e5a92d0cadeeee6bb49012ef15d8f697e77c7883da45ce1e61757a0c4e7ca805e6c71967894a52bfcfa1b722632b509dccb05d56014434ee88a14fa54163e11873579b471a349841d2bdbffe86a277a226a8d5baaa4d16b978764f2cc5ac4a11ec41fb247a9ac2cb8b8956e36b82bbf5dff46056df581c542bce2b81d12563955933ad48e70fc0cc59d3eb197a47b2bc49fe61540afa1c440eff5b08ecce82b1ddee643e8478ff1e087ed5d815e0702a2ec7796f64ce5b4f8a68c57479689f882e0989246439959002d0306f66114fbfc2d5835f1b2263babefd95389166a936ee29806ae8af10b14110dc1ab75ed9571d209ef7ac703f07aa0cb6c44d05b705ccd488631954d0a74d992ddc74fb8695e974ef506b36ec58cb4a2c489ab72694944d2e1a4e7d0b5e62b8f2f1e1090d59d5da791d9d4753f635f22d8f9e037a153b41b707d4c190d0d0879337cc212dc8ac9a3d531e7ef78288da012d25ebcbc8975cbd604ac9830619497f721a97e47c7aedd536e99debd2141fd6510b8fb951f5692701d9bced88b08ad4d783283669a9d918219079aef68e04d7c2b026f6223e1b945e778c84c7aa090c8a229921b0eca030a790b5b4cf0ba85e4fecc082b1f21b3831cd9f3d88693fd8f2179894b4b6e53dbb212c096739fce47c05b16caeb1eced3e0c5e4d00f6e2bdf640581b9335663e06cfd1ffb3834a40043505e983e6a3a2179aba9d4cd7561511b99150302be8eecf57dc2fdf8e43efd5b6211f186add8342a18cf1832971bcb180e0b62b49407b3cbe8b426ca899e0fbe859548fc5a5f615aed41595a63ddf636fb50c87668ea5fd49a824ae1cf7b8bc05b3c70e492f8341110870f32d34858af4618e2636e656ef13aaebc76ec7cbf3c5b7b24803ae834de4439655f97b25bef2820254fd97d70cc329849133e728194089d801d26f51621a0d2e6f81ad497b077ac378cc3600a0fabaadfc9622c98f6d52929b79babc0d6363756902acdad3364007dbfb76ec0842357280bd4b2a7092da7e91db1804259b25c1a72f975ee8c1201592b4684ac1fd6f58f2e42882aeb975da3083f46262d5ececea78157cb53ee93a8ac5f6b41293b81c25903d4c041c738d16d4b2c3282ed0f75775d515a8c5f3f2c0714fd73e9bf162c8d38803b37074e870eb4fb812bce855e9f290f1b5e4c4212c0837d40c353af205a06862e4cc2a647b4010083965f1b98fbb61cbf73f1f8e0e2dc4eed0bab9340ab60705a8efacde8c922f065ad71d5b141e9a3b4486cb62547bdc212c08bf707ea130486cd8ac77edec177c2311c4fd8e89590ea0c29630ede28f004281109e5d64fc6875e122e412f393722ae412a90ecba4713679351a756f089306a264a66e8e83959866c89662552cd41dbba918713bdb7a15ef27bd59a22395e0798adac3609f6f8787c6f74c713f306baa0b7d4050c9d49a612d560df9587098355cbb78f1783e5c10dd6ae2d47d9c14f0b58a76120e50d904a5a2f78a0e353e927bba7fa98d58b7bfdbc97da6cda8088a0fe8107f6a486d4faa6fb6358ebad0bfe7031e7843f2e0ff07819e28f6c6396def966e0a062ba75332d8898ddb2d26ac9d643501507a69b49269c8ae3e5b551536899f2d5859b60f196e653ece1d115187ff07c91c18dbbde51c39ab0e4753a13a778370da8189e673169b5a6a702f3ae5589b67f3fda6b9bdda8e888812300504c72a2c72e2a8fe14513dea89bb12dd5c0f9b5e1cb107b00abb0a92a96d3b9017e71b026fb78fdc0852fc59c1886c8b94711a0be83beebf2960f213e1db2eb6be935c63a02dfb8953eff407211e89dac6c9897eb3284c240fed00aefca83262850ef4978efe24b7fa77290db9674f6a0f3a3b2a1416098cc96388b860aa697a7e0347b637b483259414ced1d113d6ab3d5bd5e3006b2e1e53865dd5e8737328b3c3dbb590e4c4e78fd6ee4f7542482d8e232bd1de7b979efbfae0d403085a22d9aefa5a29561cee608176ba139d84b526c3ba5d344b740b7bfec61518536fe8c2e589e9e19f4c58a257697d39419ea7f875b3aecc2d7e7c461e7db984bf3bad4a5a07037d8ff69ea006ef4bb42002c14fe98095e6488918a3b664f1c3e5596575a9979d5e10e3473949dc011bbf97881f6f667d5ea8ba185fa823377c1a2ddb754f25fa8ace81eb6142953abbb3c65da0bc6490c90e423f0ef2217f1f3c45269697cbe543adbc582b85daa4bb09088785eb801b7827b5e84aaa64d949b218044dbd97b8644409ed68627e0dc245300320d1b047e574e9f9e7dd857f331068ed5d91834b63543d8c41411d27e10f82dd923451f5814183ba0d2c885ddf7449d8563d916a12414f120459ae2b0c12e0a4b4aa6c7ed1adda3bf03b0e3efefd33371994a410a3404f1f76a11cb8b09993e1feb97d8ae1151be18fca16d32d6965980b651beddae4497f11c97089ac0414a72f607bb394d86a81ebd3c58121a856fc1e2b0599911bd390ef69663f0c1dcce199ff77097726a86b68716af5b4770781c4155b61873004daaf8d54d7023251403edb2682ebb4832b02ed27fadd34302e5206aeef23d9a6c741cba2c4600c30e32d5dac6ab3f9e448ad00869ecc2c337123da6b465e9a0b07ace5c86111b0cb322480eecd594b0dfdb74c9696a63f514089c9c4e5aa2c903b2e8f6d843d0416d44a03627578af9600e6e35ae64aa907181d2ad6cd3c26b1c9ac92a9b4f6e1e52b71760c001701605437bd33bc898d4cb9e3f8426809e1d47cd1e1261eefe89b81efc50af888712bd967cb8b63170a72bf0fb8db9249e14b0ba28fda7d58ee43176d0e32496dc751a18a824f3ef6e765d4855d59e0d1da0b4897457d575cd6faa2aba34563155626a51f09113472d519278e5d5aa7dadd772106d196abb6ebf5bb7bb3a7d56dde9cc86e3ba2bf2b17086ef4d48477e1ebcf2c278ff0235f0c529fc1fc9a3d60181253f23425aea8cc73cb989e7ff5e14d434292d92354934f47bdff1874de77e49ebfd22946b4aa7341ac3c2c0692e712fb2f75a027cf08c4efb7fe8b66ca61c9e2c3e9aa97a3835c51822138124ae77e5ac9d89ae2c384a9253022d6069df5c7b35eb723470e0ebd0ca115ee809b6018cbe38bffcbe66a1aebb70f1d9082762966633d58e4148bd103f7fd7822ac92fc69a97129ecb6bfdde10c644899327053adc4f752e90a5fa7691d1aab79d2b0b699b57e52b0114cbfd6e81271ff014dd850b97c205c364fab6fc2bec292f3f673dab9f52d8290bafbd4cee19de7b1fa56dc989d9059c478f16aa113cde9ff195a9cb19dec275a504e0d0c4e9c65fbf53b726f4842c6a2f4506ebef59d794a62ab1ed431ce3f0d9e2c5d339ffc8bc53b676eb02ad4f81fccda41fa3f26b97888ec1b582b709d8e6b89856c4352a00dc6e3ada90ebd20dc96ff58d0fb0a399ccb0e643c3d55a0c18f02cde851ca41b2ba3c3a3671345cc8faf002a01c4b11813c486715238377f432f3cfc297075c365edfd24884dde91a11d714af5f98c6c19ef4bc18e58757c96410fb182799fd5ca5fdafbab53e78c7c55900a594db879774dfe602b2fc45740b1b4c938a1ff9bc0a8be826d4f6285491d8281c07377b63fdefbd10d7782c874df73995cd007fc4bef04241643892c9574f5394d60419eff54bd3571f741251adf069383dee7efbdf9a14b45fb1c64714ac432206535fc3f73c217902d1709c971ad3d5701009dcddc999efc5e8469e470e55120a3c373614fe40ecd30910be822c05393000304ea892cce76a03cc23fbff0a670f9dfdf17cb63357682fcb9856856d4c068eef251e69e32f2c584e40f3c214eaf7297d4124cf1c7c6d9495a6243e504dd3ab367945a361beb8fefea4a61860284069d2a05e713adac001f7a5074d3aab5fbf36c3efa5749416fb42f6426a33a9d6522b45987ab7681f0daaa66c60d08b2704e8b7f7b42c6d577981ba9755555e66765e257129159fdc019a289bbd34a39a689846aafb77157cc653600f3269310712f646b225e22170d4798341164722a73da691321e07a3927d02201c7228cb85093741b8576789d863c012c7173f20239f4651f21f7442687fed6c20551c020cede775c213746bc3794b5441abb82a3fd26ecf3f6f396b78346ecb816e406fc9c771dd7100625ef1349c82549012f09db142c56d420a42708e8c3311cc64b9deb0dcdfdf1c4cc84471012b7f9c3ff213c066e6c97ba5494878632c8b385b730f8f6e3430a501f6779d83ad805b888c7d3790124628618318e2cf3714d372ec81f9d9771ebf1e509cf18afb8a668a21dc2ea11db33a15d56c675597f3132e01db5de94fc497c7d45bf6f1fd4b22b7d8ef2cf556d06b7e9e4fa1f25d62894356c5037154fed7f6ee3d279e0b8275c17d27197695980f5af9bc7dc1bde0343e3cb80c614243cee23cf5481f2e577ebcd819185650278c47a73d7341aa5cd31a9ccf060c0caf48e8321e8deb5f28ba6c12f27c86600724668e9c2bdd10fdc72a2f9c256670f62bd513c4c92e93b3c02a2546c802683c1b9ff6eb7cbf0860df6d90ccd32ae4518db286891c611ad1ec2e9251821b0260e91ea0223f24f68c3606da55292e6c721100feecec4f6355eee2060fd48a0558e0e5c7d5a1e9d881a418f572c6afdb3e655858d29886e670784daea5b5f7daeb77723404039e791b5a262574779eaf501df3fca49faae27a9b37e7598f896484ebd66027ac4d3da90b2c8150cc09cd0549660f5a90e95430dbec3013620269044d13e9acf0ff1394ae0b92aa130634a0cc329f91444dc51b24fa0ca84ef323d1a889ead1c41f0324b1246ca0a31aa6c9012f3db980f3f08b22d4f7034dfd2083f4f80df8d20ccf1fe00dc85c738b98a59b85552d5fc220f982c1e442816fa54f893d86c395cfff6f73205a8e493f9287905c37dbf1949d0e96aabe0bf756b0687c2a38e552f40af04f101182584d524eb510e7c932789bb5e8fde3e28fa88803772a28585913cf64b342f8f9b2c7ecca1cde37ddcc581de28be341fb0d9df5d10ea5f6bd2ad53d2763432f03372bd513c17cb4113838eaf8002c9db4af0175866e50fc128372d2605b62a24d387e2fe4a49ec59fa5181290a69ec33193d6b57233a309ce11b071f1b740cb321f93f4465779047bd0637d102e3e89300589a21684da55874d16a44b510601d2f0f7b5a043bb0ee99af36512f7082a8e32b0742b7b7ef91aeb67b0941b54541e9a5aba535bbd58237c26778541b0ddee87b2195ed64a1d2054e25545582ca54dfea4133df10c419e49de5302f8961feb9e4c17c13cac5956b723227df071d129a6827e35d7f96f07d5195dd319982ae78201583c83bfbc6fce5872d9a86229b316e1ed26057bb7a61dceb5c387b44d8a1621be35a1ddb0e9d67cade3f40d4e443bd7ba466c961b0116e520610ea388490a24b9f634d54cf20a7d06413273d76d2bfaf299cf46300d60b943b1a58e25222efef784cfbf0f12bf5cd1035401b70be22c39e969e3db1eca4f84d113b4834c8f03ecf6aefbf9e9e12242f7093ff95b5b1c4f3effa01d329f2241d080e288b7aaa6be4f49fe367fa46e7e7b5d6d1cf5c5dfcc88d4052b19ecf612902dbc119e16703c42e7320a54e5fd45a089127d1bb53e168b33de57601a3024ae61d5296f10e49c1facb5f32d8b32205cfc69684948c5a02a46849928e8325351bdf405b69527433e8e884ff5d8927205a91db1c214186cafc64d115865e635afd99df95d3c0c5554533afb8cdffc85fd034aa4b44c1c79188c30ed7f5f0ea99fb494c00d2006c76f6e3cdedc03adbe29dc36d64ac2ca92f78e453478012863f9cb11a2dbb299d2647235db4b2768e6aae1178e778677e694bc0139f58474ca2440616dfb740b63dee8493879a3770477c3357f709897e46272060f6cd2dc018878efe66398089626dab5ba1e4c4ab0c044196269df27d10546a9f1db3c5fcfac35e3f7a45149b04ebd0a9b316fbed04b453e4ad635267923e94f3f41808f4af76062b5b54db0596a1f2a4c23e634b45ae042e6d9a650c7c2fa58ed1a7e393df1b4dbe9a9f299e295b6bec7775d29c08e64511ed3a2b350780b19a9430e618515a20396e4fba597a50e6e80a8c102280d5a4a64e07858867fa15fc477206935954ef3c0b8b9b48365df692edff34d3b03775dfb8318a665c19617de93b271c40f272cc26bc00e78fc3d0b75095f16b877dd274d5eb45ef0af45900b34020b0f0264560f6d0c7fc475dfbc70173f9c6587215039b2c743ab94807206bf5f3ffb71968fb4b57ae9c9baebfd6e65c9f9f2a4f46de8dd1daa880de78120a8b1ef6caeb1b26ff03f38d322beea1aa9bd99abf5d06f5519f508c3976d3df1b0572b0e4848dfbe1caa2f44abb2ae854bfd5291bb6905cb165e3e054b1ce3b4ed945fed9da12edd6d4599947864ee35ee13ff682f396354e5c9f2d5884fafdb2fbacd71e0c31c61c6547eb7684818f42da6ebe8132b5a1ccf4e4e8b4ae72223ff977ae212ef9ff6d7bb272de3b7da385ed896bffefe22b42e0dd55afd4c01d6991024bc3ca59c4677fae800507303134e15ce349dc8373da732dca3d1a01e5209b7a70ad8519d590c65a92c703dffc38d60e5c3b61e411447b2bd27303cc8b4e7d2261601678ba14897697206d1ead642af3b1a23a326fbaeadcc312496f274a2a15748de064e18125bfdaab385b72dc196f4a10faa0c9175a6198d6856e5da5762f6cad3c5ba2188d48799952730ae13b0183cb792087b599c6f93367e91eeb73bc1c8a8515dad2d117c67ebd582043792f7525f7a1cc294c8b26d5d1c77249d2a69e7e04a8eb2037059c59ac9b9c1042db83295965f6157b57111f87e40fc8b44840128c798025c9d7b8668a2d9e9ff77872cec276d5e002a8bf16e18a679fdf659ddc60393fe64a0f1b4a898a4f5e93768ffa29b2b18fec0a5fc86ed904da7ef534c134884b25e44b9a1a6b68a22b0c9f6475e75678bc9c49aba75f7844e21c3bc04109788bd3dbdf648dd4c772cb0828df69b593b97761ef89a7920590b41bd8ed77c153985826251842ce689b3dab60b5b061c4771baaf2860ddf19eed6a5437a4a92321b7335615c255a2b7170d6350dc639f656fee51dc74f9fa2976e4acf449d1a5faada9c543dfd4ae46a33a61e1ae15c343939aee83ca9b625b4441aa81cb7b698bdee95ac7bd82386ba0ff5648acb9f12519365dcd5a3c290f338a524476ec012fe9f5b01885ee4996d10be7a18c90ab31cb669987d7ab25eaa2a63eb137acd7877cb7c42a6511991b0c6b4e528fff980909784da7f660f2af92788131e8edbc2626fd46ac26363d0774411bf0d3ccf916679fee85661e5f06a2a7b4e235b4c6857ee8559d040d1f08423abe867160aa7296e0ab908d3ad9b8e0d5603ca61121b2d3ff748ef46a6f5a8b1250a3cc438a32c34c4ee823ca7d082b22a5ba04b0b49ef1e35933cbd0ec959ceacd38737dff1757641b5aa42833bf1c538b865d8c2b91de3c8da4916dc6b464b88022d0e22616d8a2bbd0ac634ec7696bff1eefb48f16b1166a93b294f2429a0efb10a1198b29190c5e44596851c099981beccff4f1198d6178034aaaecb8518c4c9da31f6d2d5a9104e8aadd96a1eaeac36b3892fb2aab35024311582f70b09aa427443b8c4df636890577a0cb02df03cd0bc37af2e1dc5a0fcb4f2637979defcc1f9d8f2b50dfe0d1d8f0c5cfb173996eb2d3ec9093f71154caa8a4bf8cb67e525ef8ade62ff721502a3e0aaff43789ef8c40d53e7b210fcb0db1732391189907784388ea3b2beea3c0acf5b10634aa48cd104b2bf78db204d22853b37c7657239684d64921e3263f68e2be78eb07df56e2a10c2a56ce869384b1c11a379c5be8055c400c0241399a41385ffc647210e4a8ca07d384e01cc1b3695f2a56e4d24353d8133443ede3a8cc012d38ab203505006c4fb0f52413038127b7a16e062311a637662a12271609b2eaed592eec5d27b486c2f87525e3b269c2992312176c15a9c953906503d125591b8a6513dbafebe9daac6722e7b25b5022a56731b581515abce5ee2c08157829315dd29fe3c22260b8fcac26094351d58722271d038dbe5151481149dc36a6b3b1a2badbff5a0a2ad41919fd1c28b5449fb836821a5757fe66e2f572c7054932808843ccb2f84e0cdae4d4047e8130b895d5e4a6bee49d55c139f439d0255328baff56e2bef46650631af7183efeadcabff1b7cc5a179476e305f36d1c1af536d3462697756a9c1bbc196a412c6abc3e4c82c8f3b926584232becf554037117c083b6b71316333a9dfb0ce49d4ebcb00fb1dccb4f95573b4218ac36d8aa3e413b75a738a1ecc61c10fbfd2cee9e9edd0a8a1c1e38a6e1ec6f46ceb516a6436eba33f3ba73704c0fcf5341de75eb65893fc98ac794ab14bc8d87ecf0d714de46ada49821a4c0ca4ec3bbcda7ae918a5799cf1ca594cd6c331fa04602eb9420fd2b9b192cf6fe85b8f231f027dc9a55339527dca3a8520b45aaa55c66fb6c61c44079cd9eb0d415d7237478ac8f9996d3b2e4ac905e94a6e9777e7aa159778ad3e234a8bda9a81656af51623c0fd17938d7bc9e45c3905a8158d6b3c1e09cf34d726f71255974631a404f2289efd01650d095875e9b906beb4040a5c2892496ef9cf818e59b6b3396a7a266cb445e31dc2599338275fed29f5dec8b10351dcbe38692f997572567d8425285e8e02eae3ad19fe060ef6aa72a80236bf3112529bcc6fc2d3cbd2ad2afe2ad3f54fc199e912e85ae0d0653e8aea0af0cd2e4f193030ef434ef38412f14c3a79ddfcbb3832d48b889daad1db7e8baa3823428249ae93ec4e996a3a03f052106d893a86343139c847d41a3fc11d24d42fec61df13adfdaabcb813ad382e1e048392338e6124d533a5792fa0e7a2929486f624ad97c3ca73864b3122665228fe818113753e4d9f5c29207f3be1045276b0e86902a1b95eb170a3de3bcf87b0c61b64070294220bf6b314e35750dc082192196b5f03a66488d7335943152cd7cf2f9be4b82f6b60d4b4e0bac084b653f48fd037f10c0e63b6158fc650ba8bbb7d07adbe80ea8928bbb5c88fb516b173f80ccd68093b19aa78c424d6bf83ae7c796601e137b6bc74564b56c955e91aed63b9c60b7f8f003ae4fd0b3d4dd2f8ce3e156b28db49e6265d5c4e18d270af994f6a60031d50f2cd94ac0a44bacf03259bd2700952cbdbf1e8cc25b5cd124535420886011a4d62557a034eba1aac8a2c6c3efc920a76808828ba3e7640d07b6b2cfb222c0e4f9872e8764f0f9a9cfe43dcac7c12878ebd062f800a49f8bf6661fc222a612ffbc156eb7129d30fd01800f6b5f71fb999bda0423dc125adb6182b95d2036bcd167d0e3f8d93f02646b5bb3094871c99182920cf54995662ac9e8c469a36504bb5b2ba344eeef2bc9b48bdf3573f1b363cfac21d7194391c633f8525c3e01e86dc55288a0ea43817a7c23704f47c90ec29e94c6ab128da51a58cf80ae4f658088fb0c0cd7fdc7ac5344d253a7b36d126950ad1f41a2cbcc6c20c225a2f85308659651122d2504e8485dfaa2032e976066379299873aaea44d54dd1e18f1151f2ec21aa62a9097acde31a140b77f89951581bf7853a37aeea0ebb1d159ac75e776d30430587f0bfb0b4bc3b0c85f1d4eefbbc281498a5eb3cc87ebe606c94505df35d93398cca5fe0b0cab254251ceda3556fdaa934c7fb96082b0bb4e98918dc2266c766e5acb00b3240aa9b5bd2ed6e36d7eb77f0ddd9186dc83013e1ed1a6abdf73675d3f183e523631d451a76f93065f466ed31778b4ea83aa90d331d0eae9a8e10973c732b78b138fa91f5e9ffdf64be56a0a4ef5acb4611d7de514129cc1ea90b692dff072b4ea47bd032b32121bd4e571b70ab02fee7b7c5d2c5f214d12e91dab140a508a8efa471a3831d7805367ce04191b8accaf79eba9003ff5c1165849f8c4d4a265ff4063e8c3e6e750ce7efc3e4b27276e7eeb45f7389ee599717ce95ec9bc0ffac2593b49686736f6b37878d00e4e050ac23ed75b195ec7008cc7e1003b2a21a7d7dc870e26b5a8384c4865c5c3fac6311dbfbdc420ddc693bf7204ab38a36418947b22445221d187e914fe6ef2dc80175168e9b07db73453998d159b39aa9cfa4bb798820e0128aaa73ed6279cb8e6c6fa5ecd3dc6d82549341b9b0d578db99088f93c63c7b7677bd0ad8474b956e69ce1115f38f872d02de3714ea4823edfbeca80ff2fc17450d63b313972541f21856d1258eb9dfa40aaf0cec711259200a46140238daca3a4294732ccc9c213726a35f4c9b8a612806eb287f7043bbd84866c5454e17bfc2e4ea378d27572840f881872d420c12cf6c94d332592c65a006967d84f2285a9085a4c957813e9d9c3a112713f65fd6cf32e9b6b9498489bc0c288255001e6846aeb0c84c1455914c7f938de56ee2e8d512f1f0daa1e6af5aba97b069e04f7fac62f296659c2ef2d40c8aec71fdf4711a3714d9cbef529690b5773dc46ae7ea77e8ce2d31f85f72351500d3f9473112860c30f8744a23ffb9e48fb9cbd112b88b707d9061e63f5b606a7a299796528fb526c4a3bdc4de2ccd574e45cf5229f17e7a8f6027d784b8ad1811fe328a5f0d7f506416bba817f277ce2faf8a3c58858a9f610640616e691fd880330eb9e960ec349c5ba5bd593340074a1e60b2398d38c1a123ef6c72d4bbb7b4f59d6c3c76256a14cd4cda87cee348732bae765d140a1617711054d2c97515625dab71ad13fe55de9ca59587041ceb4c31d52af1e718a7455c5bddbde04b8a4736b4f9ee862549310768af341c99459dc3eb17e44db07b59673d071ebebe21331860915db1c6422113232f40370ce439db41a744acee3a8a295f6bbf08b297da9929fea5e6e64ae5ab6ffb2555cb509ec413bc80e37ff928dccb8876c8c6fed1502dd89ad32d2e45ba914ebb537f97e02f21d02c79b3eeb2a98d429bb76353ee2b199ddb411508caded914543ac1dd329035cbffaf937ae00a3d61494ea0dc6b3cad442041e750d7ad6c79d8d4b35d53199ea865c65b488751a9dfc9b563eecdb3b5ab577b014c8d2b72826c5ca17bbfcee7ef64e4622d06df5c1933ffc53a79b416afccc43e0b145d7438fc4219d74e2618c209d4ef04b5d84daf2f0acfb6e6cc0d98af7ee36a43a8ee686c8bd454f218bfa3378c6882fe129e89b6d09dc0c62f20f36b395716b328d0abe46b8f236df8e24787b377259265b3f123b46fd0f30094f29893015de18f95e0b528414c4a62522a7f2cc4f8d5475601482b46baaa7c883bef568d6bd9d8e81676612bf057739880fe582fc3de75db244f1cc8f7927008e7d762d23967e9d963b98896322ffe31b4d0a998522022388b1998218b0a85925898382127c74beee7abce530090c4ec4c29d1e000285957857e8e70ebdbed4960c21804169a5c86b2d6efba60136214dc934c5d5728bae0aa599beda0b131445be535ff4e9f6bf2977454c248b9b6cf5051695b7c28e7f674c7923600c6e5dd1e0fb4495f75b295be7abb235bd0d85095304f6aee3f0586850be8c21eeed4f1513275d510c534422f73439dcaf50d5634f337ce751551bb38bac43580404048fc3bfec858bdfb32147de8ee82f7cc03890f83c93f36db04221c5c730b77a8b74e974ebf0bee9938240e3d4f871d99f703f5c0d72e2bfaf8ec882b953e9c42d96a222ee21d21d3f2b2b2aefe987c1c7ee1c8d5f59d5a67d20a80c4a34f848ee1bcbcaff2511bd1dc0aea4a639d893de42c4259c73c693f2ba0632ded3693fdbf661c44e65110746d04d69f60df82b31d8bbaaa9fcaa0eb666a361fae005fd9e418f3be6c548ac8539e9ac5015acb376b9ccf93f821cde37aafd66dd8271bcb1520239d9304b94756f8dee3bdb89fa0e3cbc3d99c29a6cdca4254df233cd8d2911abed49c63f883d8912cdf93b14052bbd8c9d5b2e733e7a0c8a6a9308d8ca5614031391c10ca1a90bd78ba49e454d7980ba103e59f51a22dad5feebc15d689ce65ffd6ee59ab25e14a1f5115f3f52539053338ddcc5439ce99ade7105430a55983743abd5ce598ef71f13ef30ccead19a89a2083896622d4897929f8d41f27ded50179b435ab3f9cd1c2f234cc4abd3b35cdf0e7ca485e2dcd1319b96905f59af4aee9c5114cfb38d6456beff99debc6aa4629017e63830510f7cf94aaf771704f0a2c324b2aac8fc1c793abffb75a764939de93fe78791c6ef4f579df0fe1151ce5ff4d0c2911d7557e88220f8212021d8c97c2321268abab6d9efb666d357daa12c90670d92e7bd37dd270116eefe74ed2f7ca26bc916f0746c6658d4d3989cc85696221867120dca7ea92a338fc6ce043038fdadaa8d4bc2f9fa7d6f6b6e68a160beb71becf97aaa4018d72e5f02bc8858caaddf3b1d70bb9549262411107f6a4569e07f865e0ba2d5b00ac2edc139d82a127aee20e3f37af484871148bbd4f5dfe962c0ef975764b2b26d4049314cdec01e34f47a81c951535847dbde14613e6cf1228e077cbe0b4bbad6f76c242251cd5717ddc9c6e7b897357104a5ca67b0ca2895f8df51e621eaadc13bfa94149050df6586e87b73749cf07565d573b79a053f03b385b4d26ba0c063ccea5de99273c767206343047b01cbed0d29a84ea00bcd751a28d5e3c70ceecf43e614066007a6e05ceae0fa0968469069ba982e5f2993e28897b0b37d4a6d9864a90c495c6388a5a734c580a976ba96adab6131648b78b033e18f692311e01116c404ed7c89ba099b4c1fa38305621a2a7ceec80693311450271c00c50e5a38aa8ed4f77a192681e07f98c36242ef82fc811275fad893132673c89baac2066fc60b7b9d86f8b793d02d6ccdf8e59da67dc9baf30f6b6de39b586635503910e37d4f21d5111d0a19216ec03cc428d724b9486dec6defa8f0e21a1339d8bec82fe1abc33310cc0777534a6a02b65fac1c5e61a2adda9548c2f4fc1913a1bb3f401149cc7059ee993de3e9c1e2a4ee50dc1a352f4171cc6003b09bfbaae4fa0046d103ff47113b0e626abddd95c66b4b9700e071cfb4f9f13324ce7abda6c34082d5a5f98abf8fd3b3a5e63a3091b8bf53a19f0ec6382579f3d0f19b8c94dfc59eaf482c2a8ede24c6d9a310dec634e341eba143971b1f8904b30573caf2a7d538a17c9f47743c7b8ed6001e298785bb8029f3408cf248d321c7618feb7cd0b2f42082c47aed75a10b0f305e8261d37f91c2f6e478593ae953988ad11c202994332ff50bc8d9c6a6f857810b28018de422b7aa360973d0ac62e84e427ff87e4b4a4d1e0f717b65abe04a46431e75408f6c0c7fb9d04f345384c01e3ca3987b83d0040210862cecbac10c46883f2e366441dc676f89ad56b694b03364b308599d7030d56e302683b1b4e48aaeacbe6e4fe572713c0baf1e1110d8c6f9fd5c787eefd6e47d6c1fa01fdda1763651e467f3b14265f25c6ecab38110212a11ec65ad4cf0a1fe1ef9da5f6e329ea9cff850c9f3e019c2f4a90dc4218229d9b5458cbc21f6c7ee832efc83363e9315b7eb68fd7698b22529200835a467d25e227ae8761083a3a57b401d0e5af6063e3490e1e8a323d6ddf5a2eb2f600e634f6e0d9c70007750e535881fdf9193f08f84060458139dd780e10f54c5a52887a6efc600fd6f17948f52e2217058d5392a9fee270ed6e93f48c81b475351e3b8998854d35468b015469fe97290522dba8de0da0e469b9af448011b7de223e4dad9d1503a20cc429f8ee8dd79f38d8dfc31440c9185a229b4595858769d5544474979aa9f6175f21d259dbceab50612620f27ae41b0d8fa84aabc0c1b79f69bdf56dfa8da2e9d230eeb2ffd31b0e0db299cccdaef3a8e9aa65b639a4fdad4c9c72f3a0e592cc03da394e37e4db4074876b312dc9d0b5e086fa0a5d9b8bae0b080baf5def9d40efc43cf88f5419c8c391c72d268e429b2b0dbb208ce20dcd1f9cf533ee6a2d088fd0901a02e20fd7447c5672824471a1f99d446a6002b7f15647176a8e73cd45649b29c2df6f7a60b0ed18e82c63a00b644491ae412ddcec1ba0fde3307054f40677d550489a04102421f37ff0ff39c6fb76bcb7e48bc4eb327c4fe5ff0c4a7b97eda4b1325d50a8c02f9a192bd82fefe1b0b8b8942b9636288076e7af858484a1251b68b83317406517d7347fc10572dc6d157022c01cad2a3160c2d75e7af557404ff9d0d4e61e21a87a2247fe331b5748190a448024676143e2dc4d36697dd5f7f8582b315a2961c213938c9cc1c08a79147389fb87a44db5a07dfc7c5cb0774cf08846d5ccdd333980b362377c9e1957cd3085e07e353892c088bad01367a29e4a27d2bb47307ba96982aa66f059891600ebf38605893973c5b921b569da025c7c3905085ec5ac8c8add3af5a7e31c14e347ef2b46eb478809310e41586c27af0bd7f337d55e2d522df5f68c1ce37442af896df248ae3783535065e9ef68aa7d79458eee9c4fc77a5ab333dee737a83544e3ee4cef130696740cee58e93dc4768fa254e952d3fb7e7639d2599289134fec4625413ca4253a89e39523d7261fe890c2eab7754ae2ed874fc898e37a3dbc338ddf99269d3d2cb168898bb1cfe35b8c3fb12fcea37e29b47bbd6b7986d75a2287c51a2b6e0c151ae1d2d13437d220c2305f895379ac92bb61be5e1bdee768bd6ffc98301c267b6c1dfedacd7b1cfaf3972d4228155a74d4bcaaa6cd325c771c7d3a4afbff5a8e7da5f0bb21a4692cff82603a216b7ed79772fcf142b4946bf985d1fef076604a70a896e9612eeea742b1e8a1cf376746e91debad40e450876331733d81340a0ceb042eab428edc7b23fb30c9698b0c0d3bb61aaf040bcec72d9f5099466856114da6e041404a510b6e2fc17558d56093c97d376dd33ec311d864ed3c15515622b0818d1c52e61c841358d0f774f219cd2349a51e835cb175dab112be04820cb9f6ae074d0718560cd3f739d00ede2338fb9561b3c635665301d7cb88d4b340f3cdd2b609799ead1a38ebe4c28b96100b38d6d104f3395ba54277b2c2759c3cb3c5afb15a775dab74d3dba8f3003e487ab8e9fbd6cb292b3ac39bdf3ff7752b1d95e1b138ad01866639b7c806121dc44232150e8aacacd73c9d5fe83db92627eadecadb5dba7a1c2b06c3a9a486d084d7c278066c9e340953f7a4b954ff5620ddebdc3e14797cd98378217fb5a71bcebded31f85f6aeff32d99edcb3aba73678190ade3c920e87063e4f8d240ced51fbbc947462ed1336404345f58bdb68550bc9d129a774174a79d602ca6dbfcf9d40b490037d8626028e6f633f887951f37aa676ac6122d127cbcec7d14c20e6d8ddf73b9caeae3570eb88fec7af54fe74d6fbdbf3653e498de397c09e64fc53439fb431279644fc1ca45efac70d7afb2576d7412a4d51cb0014c75bb6bcf06978954d869ffc1ce6e4cee5284fb7c055b0391f51d8aa807518de35b2e212dc7b6baf4d63976efa2151aea9a647b55ebd03d97790c7588c7a9b2f95b424b17bd327dd21f086efa1250ad0780928daaf8e062a4fcf991acd15407e70eaa78fa369a5b9f4063712ace939d02646d5af8054a274b9e86d11139aa76de9512a462431c2ba0dc6bd64fa9cfe02b18b22638e7af5c6b9ca42d44f9063503d704a20228d75dc206149808b020655b4ae55247ef234414e8be7e22c6f47bb92a16a6fc53c95867ed75f3cad519633f956a37b46f785b192c013da7cc38f9e359da572d04f12bf3607109c6d19e2e9c5be1f6981ea8145c39660468bfde049bc8dbd344461b485bc7ba65d6999099e7b21a8b26da415f002e8b1a28f439d30bba42fdea111bba812899d678d6e2842b79cb7e822fdb688d4b42c0d920992fbe750315fbcdb7825d50781fbffe7282f89ede4f2321984a7d788d3dfa66837df8295e675fc4f9936be3f4f2c0a91e4115d97de14b70676163937e2c232d3a32f39aea9a367cf4e0e9d694641a7e123b700a068ebdc8ec46920e650c9f12bc3d309605794f08ce84e97343a990a4606211e4bae83ea44320a85ec8a569f33cc0440e179a70d2477e94ed82ff281935aee183066607b9eb6afc761b3ace01b6269a60c8d011322eeb972f34a0be890c0ac40ec7d3531788585febd0a7fb2817f598a1b33ac09b19e93cfce5cbc698af0191f935e3e1599a2005194893fa07f2802a9f394aa0ace30ace2b6a8286d07e4809e35c4695880651139e54804b09296db367a80f678132c973916ba8f79f8f57216c5ea3cebb9e05c035df282ea868eac6b1c77325132225c0d4a67fd9f33becdae01be1839edc4742d1c7b3137a0926ed9a8c4095d40e3d244e42093157491e4ccbe5dee8d3ae5337a206c5c551a8960383612a2fe8e529201fcc36b8ec8218dc9a73f5d5e05811ea7429a0779a46632ff6af7919121c885895cef0ee106dabb629250c5e4e31454c3fd5a874207edf3ec861370d6a8bac6612a68a7f159de52c1b06e9ea86755a425ff75fb61de66ce15c2c3c9de42b9830eafabb63ee4bbc951f12af72e8df045b9b442214441b47a977e9105ff061fcf4f916fc4bb3a5bd4467afc56def8a2e2d6f386bcd25200b28a7c41dd8a66d6ea7c95de29046c2c1d539da6d6d74b350fa226d8e42cc0f612c5517c56e4c1e90036bbfec02f082eee079b06729e2e969fe012930c4102868022c4d153d18bdbaa6b9b11300bc4cd664391af56052c402715b91669358ec2dfa3ea15ddb49ad9ff6fca6d42199e13fad1581ab3a6eaf0f8f733bc623f8543742c19a67af074b79ec634a1aa94ad3494b0013402e3c0767a11dc55fe799876fd610550dc731088440dcda6bf6dda081fce458c654be4c0a7ce51cfcffa717f1cfdff6d8471903b75faba06f732600adb5ed02f8f3f052117195ff01501f7caf3ea220028abd1088e35be120e98d641cd49f44cb3b9ce20676019485e5c7bbe640c8ec715eb8820cd539a1597d40173fed9ad97150563c550aecd13d221eed8e33e9b4628a94d06c5e8447e2e3a40d936738d749aacd8f071bdf34c09accef9a6fc3232bcb29ef74b6669d62e79c70f2e2a54b3a7c77ec372952844e66e0ed9b1b685ced860c154c576ae1a34acaa0b5a1768cd93ea6af69baa2f87c917bbed4580bd02c7eecb16ef7a390e7bf01cf3f37d69b8c96b2421349f8237f586ddb14a968f25e4ca9f4d778428e529ccf62c32ad5b7e5f6b1ca18408a1598e7123afdd325a13ba999c332aab95c2e295105afe3a3e13a31e57738512062071e4da725752885887b302774b4b173f099634a654321309a7747e82ee45ff99cb7966890319361b37f5369bfa338efbabc058e027505e8545548e4176dbe3d585d1ea6bd7f29d7c4b482b3d3db6abc873f38d5270814910feca6265239c954d6554773e0899eb13114c7e9c338fe1f68f777f541a3006b68f4901d44377e03127e845e0bcd88ddab710754be00463a5071a9d8f1b7d91deb2fd364720c64adad130aa18613006491b3fa9abebce334a4c51043215f3c65a7b92c8a03a55577e1e9f925e5aca64b39a78d97c8bc909dab5503a059f11e7fe9e982c81e01ba15bbafd80b17dec18ca412c4442c4cfbdc7a0fd4c50b19fe62523872595b84e78ce1452df6343d5966a3ee8f29459c7143b05cafd82004114dac27be6a102cd6eccd7c5ef39250b27889688fe86ecf99a7e2d9fec8b4356b81fc2c8ee4196f7190d58734c41b650f8c24796388d97e9b92c1704c333ab3a650d9fa9e0002c7e24241e8df5b95efa951798bb6bf515b72c6843128a5c000d18e0ccdb2d52b35328f70abc12fef02f8722173c9526a3f669bac98ebe83b23e560540f184327cbdff1e65feb740b0920f9177f8e8eb6bbfc51e493a0bab0a7849a3fb33b6035667e1b594142bba99452333bf36755283f57cfd71eabcb6aa48ffac092a2db731e922e55cdf4e5415eb04f0c13da4f7cc3417f91ff38155f4a8fc5806cc1df4832ca891ced7816582ca7a29809ccb81f17fc249e1a55a28cb2e6ee9603f0475110191ae24f0ae04e7e1da28bc2688434d2e8062cae3a987629cf0dc823e0d162c2304bb4a3b5c46eb60c1c6837655fa9fcda2f14c98551ad1e8d33060d912d420d2b3df520744a45d84dd1546e5d518a649bd4093f51f8eb91f7293a2ccb264f89746ad98f1c50fd28c2f78c9af804fe7f257b79c7f166e543de840ea395f35ca14fa578daf2c47bdb7cd5285d62c555b7462d1100ec97d37ef897d63cf10924ed0bf7a46d4900b620e93ff5bc145eb09eb3c12b41ac5695b154da8d7c7cbb70e70f590f76834049ca32345386347c73946d42fca6beb4d84611cc373ad97c2aab50036e8bb4fc86aff0ec88eaca3f331b7d263dd5980b7612caf654846dfd672463b3ae8862b227e00db42efd9d6ed816c037f2acc5d792eca252ce28a38e37500f06db3db9acae83b37021e11bb17db26454b00ab2c87d91e3e8ea6ffd9573bda1b429fc2fc625460291f48b3c1e679310b70bb320e76dd18fa7039f0d3367a4286d40e782f20e2ce264cc9fce4f31015b68037edc3a18a51d6ef3c1386d23f584bd57322619be0522ff394fd2bfa756b5f607decb100ea629f5b19a0d8c38bdb05ad24706482d53755204deb0fce49c54f56ef268e60caac92a5b3e115935270aed3af43bec6e4d1a1a3f1a4111a4f594460930cb63482eb6b3937f002671793e213f94d56d3b597e0dd5ff73bb20384f39a92a42fc24bb1bf211c03552105f66f8a265f941d30bd02e207cbc1b122dbc74c3ef0dff061a5987da9e63ec5278336c1e37928e4045785c4a4ddc5613c2050d64b747f7cb7ee18f1b90667e540468151c03117eb636f45f2608b77c81917aa8c942a6026e2b444c953e44001e58079b61c3d10bf2ad33f9407672c993912ed1bc11c254a936d4dd486acc652a0649cd49dc6e24792cdcaa37af1b6e1493ca4a75375bc86053ef3f73e2bb16167f48f2db3dda375cfa88c956201846e7653ba44b34d0b0615b0ebb8decd0b94686ca797523e0382bb09f85ef7c3e42c3a6db8ce7d5bcd5a11860c798fb161f5d111d4cb1e41bc5b52820fae4edd56f813320fa314981ea2a0e3bdb2e40b8390ef8c4e083480ec6a01742ccc12908260c4572a807b599a5e24cecc73d064ea10155547fe56dc936cd7bef689fa0631a843b4ee241d55304c64cf9f839f37f212eff33df7fbbe4cd52dc93214a539a08d2a3aed5120cd3a736ecd32171973c6145ed0ad078ca84808c72cb2f43646d8b785e744a8244c0a42c605e94deec678c24a05b68bb1ce31f72c37910d95956f1b6a4378472e3dc183c49547f10988b4e0472a37b17f14260f112e47eda6e714dc046b474576251027c04300136aa4c4d24e729d299471d8e909710a8d0d123c1c29fff4a34da16655a37e017955f6e582822f94291c0b839b15f0304c4dbc16d0cf6af805b698ff67eea5590a3612e501fccb0deb4a0773dfe9061a7782d0884ce04b4e0afa96e5cdf3c194374dbb4d209a55b667c5405f40375302c8a48fe2747fe9b398c8e69e5380d8cf087e641cc6f1c70c163029a69d2ebb4ae7593a3680497bc7c08aff44e84e3576ac948168a5e1769e92deb78911d3d96e4e83eb920dcd726caedcdc719c0dc93c73744f86d0c26c628768eee723bc04113019404790a467adebaf1d72d7ee36228ce5e6121162f23d2a18418a06299536dcbee4f52163314712f06a652d09e51be5de9eda425b6eff2fdf3a996dd0d9f40cc43235dff2eeb7b20fd632348cecaba01bfff73034a4b28b157cba7f0fa4aa41fdc637c5952e8f780cbc8e2864832b93aed51932e92b1c24828ae85684b7ee1a86a49ef3f3d91346183c22f2286bb2ee2e5b05335c43dfd271a7d3e0970031ece374029c8d052effde0265f2abe081a8d8d01bf5e02c9ea30cc778b65df83e6d6f06a56d0162f6a9bb6ec8dc729df182b0db5d900180aae19f7998c904a648a08a80c9b9fd76c09b3b2efa7e83a457057d5eebc4cfa3052063fe0fd223fa7049faa37068850d7a19041fb3c4dbf77f6fbf3d64803b2b935afb3af825d2b5d854d093748591414c3914a2bee263b26247c3d87772d9b137f61ca362906a240da2d4e3452e3961d62622733a2caddfc4f45bf1e51200fae162b89694911df835613ff191f7535d8c69e4606a38b2418dfcd303a4164234d298257f6f95feb3c19afdc6605f8c58258ab080aae49e748009f4babc3730c9abcf87624c5df56c620a5a7ad56f306ef68d4a7301c01ee908ebbbe9739287124eb89c89575dae4d2e07725342049639dfaf39c063e048fbb0df2ea0770421f60d9e5d2c0c9ff189fe9dd7c25e732b01ccc3d6175938d4141583d80e3d0729fc1f750881a09a18e811d0ac0ddccf05532de7f61c207a8986b3a2f02ee60088614b903e392b96b965e33d850492127f464ee6ed783a778f90ef5fd170246063d32b9f615ae0876700c1cabb07557797d6c20f915edba84efdb249aca173d120e21e39cbc18bdadc3d275be837af17af34a406325cd321ae6e3b39244f1593f7337c261b60539f8fcd76b35adb823a0882addab234cd9aff59b4881d8ee0940a6399fe691e70fc29b973931eea12196874bf39fdd7c0f4abf26be30d2c33b079c2850b867f432518b616018d9a41d9e95a77e48ad184275878fa7565c2e9e50864bbdf1f80366d24322e328e6f35861cd610c47f980c7c25be8b7d32905ab512a2207872a6980b65ed70e7b7fa78b9cf5ddd435efcf472981cc3e7a59f764578446191a1ff857397c8a53fa05b7ca06a6036d25ccf35eda2bee268dde595017904fd1c1d902f9271716d0743828ff1b3c81e24dceff21a02364c0e77a94a96186524192483bc587ac1cb3d745bdefc71e0ab920162bf7e5c0b375de2ba1dd388e70b64ebd8dcd3fa37f552e8b3e9cbc495109249d9a16052abddafb6fb15d570165fe40078ba02d7cdd6ad450519c8d83b93137617aec5006dc47ce075b5c684f62ad6da1ed311fec608e5139a1b70601cc664a17d8584675882a4c4bbf3a1a8055ca2520a67acaa1b5af39aa893a185789386fb11aefde14a067f1fff2a2057712895522dafcdc8e2ad9bc6053269b236882ae96c82a5204be4fd130a14d425f665f7c761c732399fd0fa361fad3ec94884b66926b7038e3ecadc36d186f589ed1a352d67fc0e45c49209ac667832bdbed312afce3bd31439bdf353cd8f85447cc50645eeeaef035ad9faab624e7a1e1dccbd36df6a6377ddf0a937951537297fd500abdec561be67dcbb120163524d5ce57454ce821ad477083a4b70cb9216c46e7dda5cc80622d05e1b39ae8a5d810079bf62a84921cbb089b8559d51d679e9f1e8a61cc82fdb006eaf1bd151e068987dcd4a759327443218d303a19720ec95b76a79cdb2566231e73b89dc948a1783af54f90da8ee63e685c12ac2cb50f2a43719858b9244e82fce18e52a2588424e1bc8c69d11d65868017b9bb1c042eebbae587550b242f53f1afef5df10c140302397625e4ae9be416175791828f05821b6535077340df4e2774e7876778a16bf99137195daeac383dd36ffc06895f0b10602d38519d9a247e93f394ee4d4f1856c2418cf8117fcf6dcca5e682d6304ee9512522c9d9a6346b82aef5b3a7c4eb8ce7cd5aa880ff578cef7058807213b7a8666378ee4ddf6f0f26fd93b07fa98dbc0573140f416e2a0483771442df3bb130c5be1383b514dd17f7d3016fdce50f8e7765ca8b71de46b2b42751f6ed30a4c8cd88bc4fdfe4861de1242135429f43f0bde25c95d5199c786a2089f62a18477b46965321c223551e79634fc03a52df6872f478750643edcb414f8a0fab14f2b0faa565c7f892bed4ed911cba8f2343ba7fc66b35cebbe06c218ca848db1dedfaaaf92aaaf881414254e2331bba418a828aaa1ed21e07eab5f7943534c24b3b86a2a34dd39f6bb2ed2939651502150eddec2bb9d3e0f81102b7983fa0fc2e49f3f9f5e92ea32cee1025da31e7f707096fbb6422d400f523ff1eeecd1b585fdc471f4b644b04f04bae54c96a23dcf12ac410e3ce8e994dffad674507a6ba694376cfbecad9251a7fb363d22e0bc0a53e8b068e71bbdb74510845ddac40f7547f44155404e96fe09229ade42508865762d15b03ca61f7db04281d4c83f94014a07e4363fde7dda4956b92f6ccc4d155e51d94b6d86afe41a35a5434ef826138774edbcc567fd28ea270ce04beef5e1e93b15c4739edab04fef773eae167901f0c7521b756ea3870cd3200090eeed698da36f487ce69f988d6a92cbde304ba51692990849be54408e88866281e86579df56e35e7a7754a0c44f2a9855939b0231eaf1b1f41f503edbffcec079fa028121cd2294f35ad91d9e68daceb1097a804c0c95bae0b78ba6c73812b928b8c4dc4b05a6bfb8d074693e4d6d681beb1d60c0cfe99a725b2ceb08fc4d43b851de3a936f5128bbe6e4de78c8cdfefe0342d645da087dd31ed9f3746e96dcf516730fd5693baca88ababeedcd62e4185b31e341ebcc34b8c007e90843634e207cf5671c1ee06a3630c6edae52046ec344bc92398126a7df140ad51546bbcac666015a1d47029e5be0acd54eacc183713b1c12ff16eba4589f9700c76624b066a91a101c553d0cecd28ba616351317d99fbe761568524cff1ed81848a46eb196123dca9009407dec3162b41c9cc5de014edf261799eb370bdbb48abf87a87b879ee291dfef02afe9dd68c81ef53f9366d79596d199d07fb6625fe0b3c80020ca691b5f081b015fdcaa34a3404370b5e13dc9e3b34a32de6362a279ec9ae732bf9c6e2a1fe2873a71aaef8e7d0180a3b174b5b08ed2fa3feec021947731ace734c5967b0a53c6eef557ea27e0864310767b71755c59cd5543f0e8a844d24cd9f6989d4aa6deada32ddbd4ee29f794812a061db0d7fa5deb28da4ef79df57f9f72480a2caf2d3b54d0f3d0bb12aabedf8acb7341386ac0e083b2f6ed4f248b6b73ba38aeb18e30d1ffc85f3f7217867917acf260b21f2119c10326c9feb44ce323f87181be0fe9d7410552bfad85ebbf43b239e2e9e5457a243a6ecb23cd3f959cfb23761bc04006be8ffc34a14ad65d0cc4691239cef40010c1f9bf0ce31d42d39b32b8b417f41ea35c225fcf3599097f4b9bb2d2783d6788e5d4c458f518f57af238bb0ee5da6547a59bb5fe1d6f0dae4057965141241f00c14902b00b9f4561e57278b485d7a7b758b861bef75242c4a0a5a579a99362d9b1f2eb4a6cef12d6ec13d8525cfdbddb553ecbb761137b75fdd3634f935f71b2570c661a0fa8873c3fe2fbd9278dc5c6470430977de3bd723251542ce9b036efeb9f35845ef58bf02f57ad441991ecbf3093b8a7536041bdd4c625d8d163d6abbe9dfa7da1ed786bf9c6769aacd19c7ea49759b19c86be4dc86d6000fdd940280d26d360d3c9b8de5f14c10899e80c93590a005f554ea56262d754917c287736e98c5af70c425b75d53e6a3d72b6d4555d768b1e0842023efb4971bed98a09319633141d68016c8031a79da5c115357cc620b67e75197f3e6cdf4015192e747410211ab0b93a4fc8c754686e793d18e15fd9d6fc3f94cc4dcdceb32a61dfb6335eccdf4cb1985f76d9cb0af81702acca121a1d3985403a9ef43242efce03ff0e3f5b5e41e2c938999cf9a170fc2f170755ca45a031e6d5ec9b0d156cd80716e608ded65a4a72a2f42f47432255db6a515c289a01faf6b814e81863bd421c4c37c3a21296ec2e7898086216c018276d4f00bd66dc74cb6e655fc0b1ff60ca7ded6abbf5a549f5e14235052d5382185da1b4b9e7569d55e230bfc140190060ffea7e1de6bbc762af828c1cb687189abee5d4ebdcee9f656cf74697e4e3cb731dae2b1bff51254ad0d1e9e9f01b37eb768515ab3663aef09d77f76fd6da4302732c791ae610594d3350e0a12a983c3ae9d3448e86feea194b444bd4136bcc2d12907ba3d501cdcd1c1e0649dc0143c8a7adf1df462e81c3dd759d7ab0746d939650d2d6f46e3d4040fe0b1df24ba7cbca089fc41b317b3704c805e7208843de7c09e8980ac2c5cc99133a13e11f7c1bbc2b1f3d33c527a4600e4ae4f3a99ba0a1388265aed233a907b7a11246c887a4a7397609df2960e2ce110c6440b0e45d20e676f67ed292d80f6447337beb0b9179ff45e09518eab9ee9c06b474bf093cd5252132406f9c097c72c85275d40c179ee22cbeeb2b92ad5661468485ba91f9e912d9764e9f574b49a341d41ea6f396faab4198b4e54c2fe0c50077355c8f5bb505698f15c4b8efa4b30c9548bdcbd9cba03d8ab1edc8d434a4c780b342ac4e6eef0dc73142f0200250d9637779162b1262ad0ba50ee2383c91655772c090013237ada6e07071bc13bacfb6d84c97f01b8b225798aa5983aa02f9eec5b6a8e2cbd8c906441abee91bd6a434ef3e53af8bc95669cbde8a6ec36ad772d34c9e7efd78230db6d0fb765185a1efd6fda1ba09846a16241e97cd7332900ab5e4526607dd553bc57b1e49fd01f156bc4bd3a899073b2f72e4435078e280f751b2ecf36f220c3ce7751919b110ad4ad73df7134ac70feda7370ec046714ee0c14243dba040ef26d85e077b79254abdd886a0b8002c79ececa3684aa6afcd34b726c60f6ddb73c0673a3ce049e1bfd337ce5dc894cd782adf6c1bbf489307a2d6343443412c78d6f58d4748fe082ea7a4a01c81d1aa937279bc4fa7239dfc67c647c19017ac54e896057c8597f725a5bd42f3eab8de9a2f37754e4e12bd0a75a0385e477c8ce95ea5d71dc8d6ab30536a5ba5bf1e8809128e78fffdf54dddb93508dbf643510c21671cf1bd90e528840e2a740720e33a9f132e1b5e2bd05b05401cbb4b8cb9c4d2c845df02dc042b90ce66093a2c78d6a4568287520bed8939825c5616e70f3a0c22c836091cef63c6f85116ac037cf9a28ecc908125aaf036616094ded8376ba27f4a43834210013c451e098b7d82cc5000cc41fb49e163f196c33a9400702c3cb24785b8284b9ba1cd01fbbfd83ce90a186f81163b0cd934445267d958e642e52c71236953481c0b3f2af8fb556e2201f14e94d08ec73e6842bb534c07f15867a44a5480c34b17587437a0464771e6b1a3e84ba7034318d8a73258e6ea70a353a01c787d999021ce9b70c2398ee8b8e0f904e7af6c45415d32b48180b451ebf0b39a603917ede17ed41bc124249d5d459c734209de2bcc376313ab574a7919df2ea4855d9aae1da532147cc3dcb85c9e8f516f0988a0950c133f419357f18970cc30a5774178f1c6fdfcfa68d2012f01a14f17e239ac53377725e75491fcffb35f7044ab1aeab337f90aa4dd081f0fe453e1498f3e61246126b7cc2a0ac19e1b93d17b128f67e145d824d3aaf268dddb515704b63de003daf46104fc6a6b728ad8fbcf5e7eb6bc3308017e83521e70c35620292336d2e5f2c0d17436f2fa4dac6657e3b3321992f19db817f19137d1c08d5f0c73562f901e061ae5e54f0e68ee6c54e5c91bb55c364c24cd50fee60c43e87c155a84972dc8545afc07d8fa200dc18f4d7e4c09f941bf2795fc8509c98061e87fcca6c492c305ba917b13d97e5a5f0fb544e56f5168f4904e3c21763f7dd7e2ed044d7ec036111ef1f1376ab74f2163828d998f49772c97bb51c868c56c71241e553e4f9eb5171c5a402a627d4338d687e6aafff21dff5c330a58a32d204fcc43990b094213a721ebc1f1fbb0d652bcc910cab28847237eb3fce91c1061fbff571f6cdfee43c0f0785305d443ab1b67202a0e6ff6ed95504a07a9e352d8b484e52d88492bcc939e76782e2c2588f7a5f9b5dd2ae2ad5e81d9024c4b1153b4adbe00741f9e6af3563fcae6680cb124f2c5a90fa01d0b9ef6059ddd44c449ed138f55b9b0164c3470e8afe6ca2ae20cb7b1a4e6dc567223190db2fbc3ebbdd55142dc9b9d9819f62c1be596318036b6e0583560a3712127b7db575264b5fe767d86b81b15b78c81a8c30c6233eacea27198e3f6c5990ab445cc83425157d594e02a59657b5a95a0502cd64cf6ce45e9f2ade8996f942641526ce03f7d49fdff154dd26571674876cf971243abe3efa2a680d3fa4a3d598010a7eca5140005b93cd38cf8429e9342cb62303695473d3dde819b1afbbe9fcbb979d2b28eb35f56cc05e657a92174214e6d660efbdea61e4efeed8c2e5662a88e2fab56a292dfd2fa6653c35cfca8e29053de63c443bc8b2f961172eeee7c96ebd60bff2890bd6fe6a9ff54174ccfa0642ce7ce8553e153ca7b0ec40d8873b8cd52126ad30b30589ef9c416fc41de55b8cd567044f4efdd15efbee7d28381c990125eec73afebb00c0336778f40ca14d5008d41f916a9cecc84765f943c8bfd8e40e080514c61e855ae71d4aaaaf173ad3d4bd9421bc5defa4b70dd8945b29d2805e135a4cdbc4fccd978d2f24b0ca2bb7a11aac5000c57fc901d284de1749ac20b0f96f03356e33368a9c434b2f854dcb4069e20a3b229e0ec3ae3c89e418ac78e42f8da20da40fa0d489c09028ac1ac508daece28d2f6f0daa6da8cc1c27883d9e3e12d421cab8ed1dbdc7ee435c01ca581c716108dcf3be7eedc704f6b0128cab9cb75da5a20e10b03101b7b82f5aff7d6c550bc6d3204b37072de6d4ba42f6e95e4ba1b360f3ea4d356a29c11934589d501ef9cf8c05e730aad3e86ab53feebceb5f21147a0ed14fce5e2842b067518555e43257e055121aa879e6bd851b73769e8a186b4cb51e15c028e986f0571a44ca0b4618b5765ab0b458b8bbed4a651bcecf778f603cb3b8c6c4e5e64a47eb01ada611c0e13e4d223fbb4daceea1797f6e3460da4ac984342c056535c54c1f61ff6bfc6560f5486d88af3dd949390d1e8f39f5eec378589508683b9edf464bee9afee8e8f924ec27ddb00d54276d6238221888562fac481cf2e543351a019fcdeafe714baa9c31f9645412e3ea4cdfb2ae01084ef0de4ea42e9f5a374d372f35e4c8d58dafd235407a0acab0b791f3a20ebe21b600134245bfa0e14f501349b64f906a8c88d2af8b62bbaf755fdbb21a3823bde543f7b62d273818e3111cbad29b0f5e4b3c5dc47c003c8b72256c175ffd9a5efdde2cb142bb2883229d50bcd27cc09d601985323a853097c71a9eca591f4556e3f81cbfd6a998fe782e72eabc1a804f27db2a20e1e551cbfcac21724aad42a11b166509b82848dfb6cd11f50c809d06e4974d056d1ddcb62eadfe32097bc883eeddb1da4ddb0cee918713878eb4e3eb7d9585967660ddf923615df8c4e3f90cb944a54e090269c47a0a5728421375ede2798369e67b58fb6c489604f988cf20c2afb2acf8729fc6795639ed6f18fdddf40b96a1e8f30ccb0fe822c78167bc9745b7cf0c7e3b9bcb293946d0d35c7671e4064c7f84199ef1464be5020e107ea81f5f41f3a0ffd54155fd63306c56c30a4ecd05588dfcdabe717b505dc5c660586e958ed788f622cde4b22506b9bda3f99db7660088ba167ea14a5ebe8c719532851f50d7b9b02b3915643fc5d307c9b694e50e3579a6d3288f10dd09adf8bb5d20d6fc2de2951ebe3ed2316ac5662a15c81d89efeda451112a96fa600d2f349c5c84427979e908b671981ec5cb15c9ae920c8b069ad4926270365a00ac9c99a93dc356c7ed10baafa6e41c8578a6d92f6edd561357b1ba781f081da1289efc72b0c28e12c0c7cf26c82b03ae493052be13a72f01b1827cdc23fa5a685f5f92063c20e65ecd85342d4ea16a161a375b9cada84958e754bedcc727dc6c8fb9ad46d64df1c0bf31009e881b4cfd5b3582abc279be818691f95cf90d0373b09d185ac5fb49a5a0e5d8b0232d2aaaaba93e1e2556ffcc319c548921a5eb8f004bcdf6377f5c4f2d4eb9c16e662fb2bbc7bdb1066e0131722b36b32b8e22a0602a01bdd4902b215be91d6c29980cfba32283fc1ceba4ccced9bcafc7e0a31f0586bb1a499b825a8e6775e621c25592b41d59be24f198346ed75e69f54206f9ba85d10af20c5a5c62004ecabd12485b37d60d7f84a97ee6519072a486dd1cf94fca940f8d095f803e774380cc2f323afdeadfde0f497d87213ad9c76cf7ef4f84f8d5fa140db8f62c15685f4a5a5932ba5f9b8b39a2ce93920b1facb560956d4aac8fff3069e32d5cdffd0a0cc05932fbac3bd24e12fb51c432b93747b10356cc620b1be14cf1dd66ad801cee6a36889b9854ee3d1e04fe7faeccde314614cc5008442b1214ab395c8408a473da1bac8d52e2d5c600fc7f16344bb71b92c610ed05d83c829a817eba991c84e2774929d0a1e0e79b681759e0041d78c0924c474714d3842522be97271bd46b45a81dca7f524946ef3278f21bc336f62dd3491a9d4a20982b1be5e8bb5cdd86b7871566915568b87c9f74393f77229880e2bec231f99ea94369cf9ed8d6bd02c6b8500413e7bef00fcbb97e557267abd912289dd3070089325c3986dbc82aa85d6d6a6c952be636558966fc34963bd4d8b199ec0aee1f3be69a02e57c3240e9658956ae20d1c30d4da233f1a10706bc15043c6491d12e680f3f9dfcc14dcc5b6006251af4e0081688f12dde3cd4a7a5564b024d49fed7e57ff80a65ffb3a62dc8fa288afcfad6538f77f7596a8487a26f2f0aa11da1c883bfcf0fae191a0729762929fec2c74f92a32e657c7c4dd4feb4eb8154a1f0bb72c54912f87cb77ade1e2b06795fa38c7718b942116e86581ec65d9f20ef5bbe0c28953e829d511b612fc66601ec9d5ae718f723c753f90e98b8b3222b8b6fa5a74176350bccd5852f56d9151199b03611a6107fb3b82da98bf0bd70b0cc88dda5f253fab6e60f93b0e8a60a88be95dd869dd0c290cf9a7939ad15e056a409df9164b2b38d00b81ea77195632d034f755fa68ac1b92f18dbb930eae85c0878a6c1e7d67d59ea5b4f69f0d4250dac3474f7978f4baa6dab14c065e4872ef5635f6c258978299025569ecea851827d286609009aa8f4703b655b5b691565dcd0986f6f80be65fca3640034d42c3bb525bca1881c0a4af8995f42336a4c4f49d49eaecedbfd592962b35dd02b123e49ae52470524ab80bce99d95b96e0bde18e81fa29185eadb8c06797fccaa6e4641cb4ad20055fbde4f7d39e679f4cc8240aeff753f0a668231d498b145af3d60d64e6eaf88d25ad1931967af5908e64fa2faaf18defcfb037425f90789a54dff1f09c66fed8b8849b4564b3447046a1883618933aacc5fde2c2bb7cab595304ed2c010110fa7f548ec0a144586589c7bbba72676c44fd697db966dafc6383502e8234dfabbd7aa771deed03d0fa80158aef7d9b89c920f87e392426b66b203ad3e4aa66637847500569ebf16a55bfb7e28846be14ad84458b427d10575d74f072e3352e23e942ba986118b9882be8b3528b311abd444b16382147d523d395b4c5522327b46999346e0f4545df384876920dbaa56fc030a0dbe50252a09ee0b49418b35d8bb2a1d90d9219f5a751927075121547fdd6dc732b9abe34ca21d1df2d40521f918c4d15bc155747e0d57e1396e144756ff77a70f54c4477272646055d24301eb1d781419a61a9ac658810282bac518a2a24c258f980bcbc4713d09ba51febe942ea88a9b62be3a139422140a52da3fb8c1d95d76a42ea43b615140c4c5bb410027c0806876763fb25479ab43a0356f3fb418a644c77cbe45a0816da58f4c514d8c37d0814e319dada5c0548e95e6392acc41e6d2cb26c2271bee188a9d3d79a2f272ff0fe32d93354abbc2a3f9b44d7e9417188b499a304347895a4b8c2f400dc0911574f8e32ba6e1d482f899786d983f3fe9627a4fe349c1a361b3517f6e438ee4f1bb6dab2118979988c815c0fd65546627c0df09e72e666773227240e616dbfb7042c61e83c970f7fff223655a20a81eec621bcb5e6fb40267c9c38a4e979e9a57538d0d9f55e1fdd72352e548646602da08d37a99f3bed62beea655452ba8699f9f7ffc4c663ed8f2298b84986f07b5634855831418cd493cec8f6bde7ed9a96cad51ad706852103dbbcf501d77420f22b8d0b120a95d1f3c9ef5b7e6d77061d3365bf733ea0423d681edc0d17ca00090cd97b7c73ee0420698e71655610e0724bba4331f74bf0311752929e88b6187ce62d32160c2cb9e4356226d4b31dd8881346de70427ad795fbf9618c7cf416878e46532ccea565f5bdccf9a7057642cb6574a472add8e4105f245c531b5aea355932799138bc3212fb103f4cddd16457a670f1bd22e7278f8029621aca9d86a7b72a8c0af6f32e954922131ba049854c55bb4e37f39ec5ce5db4eb9bda72f28e2446220cba98c235820729e5fb6e9f3a6599f674160abdd1dd90576591c417cbb7e217bb3e829c04393d9554366424844d2805b598c78456283c3b0d7d40b74e802962e0281dc5a2355809fdb5431ec7bb4925d63d987a524153868e965662c74c5bf20c1fb9f9f513c61801e73a43c59c30421158dc8c8f356c506dd754c686b28b015916f1eef37e291e142efb9e4d33670536eeae7866b759bb3413f55df6b449cb13315a4c425d593c5f4e0d11e37eff64d697a7fb6f8ad6bd67f1a25dc67688aaaee766dbe46687733d3c92480d44637161d10fb560cf7449249f1a53ba201a78cd6236e6b61f8edf53345b72178e4f589ecf89e771be174da4331f4a6c622ebbf9d5095095e4a541e704473bff0079de87594616063e2906bfc31acc6837c53cc85516a6268594379f38e0e2f84805a9805afc64fc0ae2bd42f83cd7a562cfcdf64b0d1a5465e37acca5923b1d1c720caeee8d7d138f854421de5024808b6c0ed8c95945e6f1ab6d40e92fa9c281fbdf7ce550b3b0ef4cb33d4daa842d9a3a0730b85015248b1c3e744556a9ef290b04ee8790055e326c7438e84239ad34739c249491f9506ad737856103f1dc9d61562f99e9711b08e9d9aaef5342b7ad062753431f7673a4edaaf7310ab0d86805d3903a43bcfb22674daccc39a690b551884254f596961a8c2773524c6fd9877a31c369f3804367b8bcede2b08f8699486c010ff7a9d5e2cf5be7af6a112088634dec09dab498fc9750149482c28dc339d74103940bd0460845dbc7f1ab91bc9d146f6eba4193595eb4b302dc28616a59def5d73d43430d79d2bbf403aa6b8131fcf2dedf26d168b87dfb632f378262a00edc2bdd02d0d10b1b9a66b9e97f0650ff7aedbf23f8c061097c9acc8367422ffba9d05395f5de77dcdc0e7e88c62990245e859f414c1ad833ac9a5f20966ca41d0f0c1ae624ac740017389291e303d13773198ff14850c24e036763a1aec1a7c28c77b74393b315b46f6ba49f063ad8bfa3798655c6d55d92fe2eb4159e402a4311455416c6c7ac2e9ae8dc1e2b66e39179cbf22e70a37e4ebc2f2239ba58b015099c237052ed5be9af61a2987b4995e12571f9141afde2f816e802688a8adef444a9907ad66a93c2cbae464178f92e7bd3797b8c8ec9a51a84afeacccf395d1e6afc9bbf03d5974087813611cafdd8a688706420726df2d69d0f3ebf6e7b2f53246d275b030242a37b561634b0d456fde04b6319ff495e6c69f213a58f62e998de65e387f2e03b1f540e42280567a854b638aa35c1301939b2ff3b756bea4658445b8bddc35d8f64d751f6ff9b62ae54f71dd42fdf4f3c57a94fea0804fe6bc2990e6d1d03a5dddd617996ab55953ab88c7751867290e2a1b017371a25cd6b36a5fe266c71bc483ad49c5c31469797a0c789fbfe9912c61abed331524cb074bdb520b133473969dd38e13c3ac5c7a21faa930382993ef88989feb6cee1f12457ee142eaa52bec7ccf54ebc51ba682f48840bcd019cf978985f862f349fc26c986022718ff06ba256cc69dd7f7810f1616b3b0b39d55c3e3301a15aff081a6a9d6f4722813439acf413dbe34b3fe59f7d8c72386af5d1bd760bf9bc3069359c7d9c1f483f64229305c91191c8188a942a1226629302bb6fbaab244a1c068a1b31fd111537637dd2bafd3cc7f4c1706d564029c755018a2d21c3e39ccb58ea79dc8892fdd5d64ce9829c2c9a8c04515e4b12682a52410b2c6e3c0f50e88db6fea4ee97c16e60c5de56a3c337096ed48efacdafd8ff4c6d293ba4d1d7fd4bd275b1b2b524c67638aff3cb2c148a6099c87ef0547bb09fb12fddf82774d51353125baf55d8b7c63e8ce3ceb479a439d2a6e266131f96e3eadcbfc684d85c0ba35f3ef91c2621459a3e993494189f08f7b5af2e3720385325b4e5df46706454ed5d1bedf7ee2522e6f9969bc8dc6258353e7e3e736835149813f3d5f1b5eecfd464e0e3604b743116231a32642a4aba721e9b52faa5dbb0327f8424843362151ee328d94634232589e47078fac7b541a74d6cab4b387249bad651d1a7b28708cff26494f577fc53e73b7dc4da1e8c2a9672b40b765a46c20c0d8f2b0488e53ce3758a9c76cb8c90198babada2d40905bb6e948951f58a107574eb1c3bfca8387e6059e2114f51c199ecb8fdd47b1de47132e8de97b6f770700919b8e87e5888eb2117cc47dbedf1ba880538248e164f60186577c0a042f3bcf8f151777d6e9891dc817df0fde4852b2a9ce224337ce9f99a0998143ff53d86885748bb731268160232f56ac49e0628b61aebcf035a8be55481594631c6ec9ce50b4b1a95eafb88b167024646a3839d90a7919167bd2c4356d6f66ff9f981df5b764850b3a6b6a3c5328d0622c5e5eec6087ec5d5e199dbe1cf2f80e7a9fbe9c6e3e2de2795155d30ff2d877ef572e6d92de052854ca0eed9a38daa47c1ed5f3209cf738848f73f81b606adc45722d94f9a38e986d06e99527010f221de98099325933be4eea6a7e9c4913cd126e66799b8642e7dcfa5e65d58a310a9338d5eb26c2f13bb28c02447bcc91aefeef06032ce871ac886070bc06a6d7d5473be3383619d9b15458f93f2efad6f1e6815ce59b98ddce2cc43874a4dff39fffccb59f600cc5274b37fd7ce4c154ff5a8066f4969b50d3cd7738149b7aa414b608103fe15b5d205d393461b58cf82ab4cf51c5a412d6113fc130eba416d23479aa605f88e0156c2d8a991ad719f280f2561e5ff12832f8f49a417ea74a13669e4528245a7924682b5bd35171c7e35299a63e8975b30471ef2482c10bb389d50404537d3e948bdae808caa5b506b63adad516702ba6e87d47a901ecf2ae21890548f936c7cb4da99c65aa0d19079b6424341570b667093f891bf69a9eb56cde96102fb84d210025b7a04cc6a9cc45c9241c45b4cb402d66c5897dcd05242c6eea3be3fe7e04655ddfc56ef32740660bf5c62e2ec7e9f75cf9ee3e5a353bc499c0e0467d2ebc59bcabc517788c64bffa61780f85d18cccf9475195e99c4a575b3d6e505fafee4fa786225aad61ccdfc3f1c754bc7c0f657c2ae4d6125777a1109bec35d74ff211672cad9d70331f5c05d7536bc934e6c9bea80a9b0279f5969d4d5bd3f9b4e04efb2a13cb155919bb4cc94b6a6ce73c152cebfa792845bbcf4dcad7cf93736f59c23370d0745de744e387c46ed39438edf9bd536a79dcfd4a76d1aa000e5ee7562b79319b313da6daf636d76def479520ada6396c86ad8a91cddef1b6355657ea487bef7fa7d9a2dccd1a3c363c65c4ba7f712c3f89e9cfd97d1142625a0335c574e15b4b7cc456fc4983f20a8d8394123b089f65f59a2e2509d9dc558d94d9565248d8b4ab1d681df248194303e2423933066ffc2147cb058af3db3164e8cadafbfd564c6dc5807fee967166bde0e094141c3244540c3c8c0a1a6f476a85bd3158735371ea8d91adb95cd55f8d07af747bd6a5992f110cbe78b15b189237d09cc1c4585521a7380464941e3b88c71e9a0f226ed9abeb7a2e53c3451b05fff061f3460f87b947eecd1de8e41a0590d3a9bde2eb7c5be3ae704dae962a2200aeaad30d91471939649a4d3ebf4345eb34218ff40dfcb9f9dc2ad80461dba7612ab74449afd21f9c7056e73c9c22ec4733cff98ee57b16790d7bfcf722235cb21d84fa4b17bddc37caf130c2f62cbe7fb8c862a8032fa3c8aa5c94cfe9da5d35ad48bdf2dd2f426c4fd82b55c230554b06606d479505d8bc506e9f70cf3ed176a9e2920bcdb4335a023e2cfa01280d11ff93136d791948cda82cf205ab33932bca71c50ceb7851e91a1a9c51fc4c1ca555ff47be78af7dfe2258032787cc7e7215935d0b13b936a992320066f10ccf8295c165e03be381a3dd8285e6dcee9ec4b3ad77dfdf81e307903593689d65770e7a65d8be59e933258ff6265621d4567e5a2a77053d5ef29d68ce1d43bd2a02fc5199be4d2664e8cd63b252e490517d0c7053ddc96bbd76eecee379d8204a02708e6258fb21adce26eb6e24a029a9366db421334a90a55f86f64da2efd4634537c5c14b62f1011b67b95f43f63336eee98216fb2fb2947d7ced14cabef66e8e14c63c982c89fd3b467854217c5a7debccb03ef51cbe73a7349e1649309e32b1619c3ed920736b50a0949ffc5cbdd89f572ab5e016a3acaa08e965c3f8785b2b9316a5aa264390650e904d6d50335afa4ec529a81882ece086985b10ec5d3a0b6b4c76c54f59ae465698553319373fe88d3119828343fc45731c69b84be50cf063eba0888a434e088818358031615f6d693460067fff9644b7d26d1b3cf31f71ce4a796b4f0945350cd63c300a19cd9a29eea22525273c75d52d09f3471b6d3f728c70d618744b349ef72172e40258133ef4d8d714f55a6c6862638ec6ce2af49ce6f3421ec54cd18129ab56987e828b4ae17c6e3c8650eeccc36e5fed573dc61d82de238e48ebf584cecfc79fd1de434ee0be39edf0cfca33b5ac12bd8f19fe8be230c2ba6af7dac9c7b5c58e7220d455a551015e621655ae9776b60c8f61e9deb60f8ba6217ce77018c8cf71fcc7299d6b2b82f2a1a1227e96face45c1533379ae66b130a8f8d0ff4e728903b23dc1a756eacf77920522ad4033d4e2a60230cb0f74e86a655cf083495197a5a617dfc2dbc96b78a6db9793da3b14db44501427b7db405e2f33f502f7165124fd6316024b35d627ba457aacb4afd0bc0810687a70a50576ced509b9c0c572f90feea091b9a21f806f3ffa0fc01cee90975d90d04afa57446f4e584ad5cd5e7e1e20f52e577bcce182027f7899c569be5460d66e033e334dffb74c89aadffe16418c8cedee383d09f68e3bccf058bc10284526a390f677067e7c26520745616b92f93dd9248e9a9115635798988cac860c5329c20bf4f3adbc3e8604ed1d61954ac8802124d041f75af82ba060a67fd30d64c5a5acb4c27c7f1fe61b7bfcf4d4a35d0522c90a4c04dbc489b8e207c64f2232d682e895c43e89a7d36757016ac34cace8f97f6ce52182f110ef494582656e1af5e7a10b7d0799c8ea316a90d13e0759005d44a11d01c910378d3be0a2e48e48ff1f9455fafa6326daaed16891108710c43f3d3452f20d1030ee728900c8ae719170dc9d1873310bbd8374029aeb163cffb42e283be311bb06465639156db34c1fe973040a7964abd3b98b60d9eb7cfd5a2a77ca9f4cd3790a1ceb72baccdd3277d93175d667f2ca31dc990455c1b54fc65ad12ce567efc9b6ef4a856d8dd517e945568c3d813f026165f58cce589a8f52ee7be9aa5d337b7b635cf721f591664208fe13c4feed1b69de08f4a029e7f25e3413cf319b6c1f25d36e9141f21a099ce3fd0e131c2355ef6977358f09372469c7636aebe8188d6507244635b1e96a3c9746d657ab89a3561ab56f5862fd28cb09ff7d7c7f281d80d67cbe8e569b13bc58e9cc2f78be9cd4639b6fb1a88bb6314cb6a0b06fdf5fcababb390be45d4d35d015e685aa3f5eab5bfe793e998df76ca543d71e9db892017e9298290eb54f11d6e6d526e6f6688f00199c13affc9b52e69615723aa7c47269c6361bc4d60cd20eff09adce0080c4d8a05873011b46abd507f5f4d45cfe7a67158499d64f25647e47c85b8fc46020ec7984e1963eaf1a7fad638e4fbebb94a49b6c0045f56347e0b2e8d9d7edc1b3ab26bd780f3299fa5749bc79159ed3bfb7fc3762c01f7302d69628bf9baac0c94a8f6c53b423a8d7df0d30e2b034a5150f5075c9bafe5255225ee3a1674e2a43cd6501f0803bf6cf17d790e4a1f0b951d1aa176580ca3e21e4d92349fc3b16ab97270a19f8e71f0c96e7cf285e253fd537e1d0caa83d445d69014cf989bfd583f5163598b5fd609482a580a315d57d5e1b8f6898873922b6394331b32597573e080b028ac069a6f338d956e812d457171c44c51566ea73b380e0b8e111bde859fda5046bea42896fa8bd901f446dfe70062635372c4959398c8d4fabe412c76b527b0a4cc5259f4d127ef0cf4dd17b7dd9b2218c1d5b0a383a8968ec0653dc33a651fb07785578e50c57693f4efd644b26b5ed7a555724a666d287b2a0b51299dd3091742b6b6db6fb7328173858585879c4ebd2ed0a5f1609da763a8ac71402d83f2ddb8305b1eb8a1b3c0685f1a5c328a8261df3cc377f09c07288fcb747bd1d555cd1093af325a0fa4b9d7237ee1df21a768ebcc600ac75280dbeeb3671b1a33b9bc569a1c6517fc43df44bb5d110fa8ec61ec476338a5ed638cb5d3d7d7ac9f98dc963d203d5d1644d66d7669265c90c013070986610594a6aebfe3464e5eb6b394e32ce7218b3ea1276c83bc1991cce9ec48e0b4e7e0f3cb5a2bc7a704c7643313838bd89c339f927e5b4ce6f08ff79fcb1b9e3537a5be9e927b090fc003212893f82aa3a58b81fb136ea8d4c751221a274c8d2039311c37448a01598dca446408e153905c12524183d9daeb762fce3e20a50c21143f69b6cbbe1a4192fc642ca214a855051cfd77fefc22073813496d74316e8124630971cf4dcb9d7743fbd9b0f54f3b910c672e6a2ca9bd5d7a76960052e420fc6055c8b0c0ca25060e685e82efc432cc63fb8f065c3e47555a434c6f1b11422bdc03ea04366e3b3f9fdaf9005481fe7104914a0415d560aa99a621a98124659325e8fae066d3eb6faa103604fba37c2a53baf5e215749576f5089c7c695dd3d19a7de26b4804bac6f8a4a56e05513c60bcfc686c6f803005855b5c4fd1e061b3ab65cee306836658cca29bec762c9cae547c1425a1aeb135a968ed4f3e1ff20139f649960fd2d5df998efb9b92e2c448539a4c1d3a05027d9126f2525a0f82844de3d9fc55574ae1603334c801ade6b1bd14c9dfde78b2e3e8a904b18461c1a1e6899a5a2540dfb9f9aff0f902917463910ab0c2873e0532dca0d957e1b52584e638b4ec35cccd043bb0b503313f3391071af7f2d5359260dd36b7c8d17ad3748ca9b72ab86d30900ebe40996e0e16ba6effd863cf6cf9938bb045609ce5463116bcc7d00f86e353c15306a62dbf01de74fe3feea5029cbfa8cbead30861216353b093908201b95330725ca1a54c8de0d142eabd22b31295632066fff72c550c35f5e63cc750cd5f53e27eedc304ee103ba36fac3bace1bc9bf200cb812982eecb4200fdbc54a6c9938a268f13855b328ae35ffcfc56af6042b98cf1ac244585cfb47078d8e20e8251414dd715f16b0c99a6be2bb04b4c0055d3649eb1b022785c307ecdfeba451f95d2eae09d15913c5cbf96e4aacfbb549791ac8762fa86eb47542173a77750963336a3c7f63cd1d5cc606e30ade5da9e2956074cd2e375fc4355736d08f31a3a617f4db7d2517b28152f9f069eaa9a25f942482affb0d2b5ddcea02c09e72f54a04149a9640e231ec56fa57335e642953430965f0de9701eeba6ee55b1676b274ed28086f66d94105b2a03849ec8a47439a0c242fb72661a10e5c0df19ecfe59f470faaf42d1ca8a15b603457520f41dd71a91abb741d2b54e421adce651a95ceb85fd804fffa46fa63e4c4717690b1788c68f05de328179b32b8e8b2c435fe99f1d3fba76594e76f473b69f190f7bc0361267ad765ed10172a66038734e9b96b1d3559cc8b8ab52a5ea84562ad220fc62aabfd5791731c4dbb06b6d911291005fb3eaf476a7a6f0ccf3139a496e8fe8a23acfd12fe236782a976c6770ef737dd940d6ab87d20d6d9032c2562294d4c7c3c7f76b8e40a0889b7a6b8c487e57fb1f9329e3a5869736662b0ec856bc58b98e6b6fb15ff5c5cebdee3059f7d11a7d7866c0cf6eb0442ddb505c085037ac3f9288d6694b2b64ffcea8e1088f32585b72e9a7f4be1b806ddaf813005c94cb5d97534c016518c66652c09266a2325656f27af9f9de295e44718e91a9794a4e0f454f531dd00860c5be30c37415a886aa3d5b839d5fce80100cee30ba45ac55a988bc7479adbfd6c50dbb7d9da65f605319b1787ac198aef66249670e9b39f6d10caa0ee077aef187d0b9d6d94e44019c586445769a91ec8e21ba22643a3ecfd24853f9863d8d549261bde3260672cc254a26e328ed56b92d10e9e4938272c0c80bd46628fd69e694a979d8a6161605c6202473b46a593b2db400f614f332dd579c469e5b34042061e725646efa3f385a7c6aa850981da091ea20010cf2c35922746529e09752719a6161448162c3ee35b27078088e6ccd53bca08eff3c44b0385479d3e51c99a28fb3b76f64ba9c4baf77832ce326acc296aa0d2a0933d7c704795136ed987bd3fe26e3826d3b0ec1dd2437bb9fcfbb0eefd75b104d9573270212bb25bd841760ff1e6f8005449b69e6f6fc83b64b88a3fde573bab5fc65dda0cea378a6792aa03f98e4e2556f06300c018ffe2b149d3a395f47904a17610f9a17ebc79c8a01317b22092d81c4347970a4d6c7670610f870db651c52448996e18c5161ccb90ca5bf60ce1e6afa3a41f6932bd21e28f2afefa75c858861a0b441d30679b7e107110226f3cdc4f38c79b48c034e4fcf70c21d9e806073da506614c61774c84b38f2ef4334fa04946d0c52e777a5920a264d8f13d63d7102ce8c0035b7122026d8d1319b0c56104f75865f7a4f1344c39cb1fec7fc5a60db078e1ea3273ef91ee6c7171ccccaa754e034ec532453a84d90cdbafe5890059c650d7de77d6b40db9bc0e08b5ce6159998931111d7022770b8de8078b87e303e066a172b11a7c411e946e77deadf26953e16d5f4255c0dc374fb1b0e55ea5e48f721923c11ad65a054534030a0b571a5b7adce04e331461a8b4834f325162173bacb1c87b1f34a5b951731f70cef5919a64b5d22850e0f13f608a4119db8da2f7ea25ea812715d941e209c18abb7dba5b1f97476b91e913a6e51baee5aef53b29d0b9042ca14e2389f715746defdc2f0b8538de86dc5e5d8003f345dcac5954fe1db319c1d3cd10c2d60588fa6e475968aea928ab73932044f08ae96c97e0e70341f38d8d7bd78fda726ce76081a147a7f34818ef957514a9c8a31a6196d3c95e34c7a9e179bfa68f45521fc340b9bc2a42e8f9e0ecd8b8b0b84b1d7866cb6dd5ec0423711f9ed41d7b6f482b1d3ae61c67ac21f00d0daa71bcd88e287cb659cbcff247d38133a263802411afa85fa97f397e2b215ed12ac5e2af9402f35d98eb2ba2ae1d6fcba2bc68089344d08fff820eb748e66fcb29b107ad37cf277b13011959e705e69fe984f3155b51175c36bd355f5697a19329aa92177c3045042f60edcd3249c781cbf6184a0f13752a4e4d7324b771344bb43cb19a27f0161ed25bf0edae1bf2edf3243d3b27fb7b0fb0ab58a7a03ef2a8a8af8a5ee8e7154a25f8a20eb5e1ec36057beb6c37b9e1bf27a8ec2fd58f33ab8df2e65cfa50023da3341329d74bb6fa2d215e41aa903c0b95107de3d21f7ceed87ec3a11528f933fb5a584654f5dfcffa070c673f02486e432387716035e96609c7a0809f76d26fb380dfc597c6d86554028d275873e19d0fddc9562e44a6e2f31514f48bb12ada41be514b040ea2068cf2bc622d313a4a8e54dd01a5b9b23c950d11616faf98937da5a8508932ccd17595cf0013caa59ec71d44cca85a638d2d4f2e1b6799aed24150503c51ec5ddf96b818415ee2eaa0540ac4ff0c3dbe315d1fc4a00cfc24b418ee47bc8b6a187175706e2d5aa7a2685c1039cb6e6d3e07b0e8cf2a396e35f0ccecbb817d82d8566901eb20dadda458253b97121e9908a714e92a6f0a3de7485928b71e4d2bd085fe4e381b02e6f5ee093629c921da8c5492e409373973c33cc2b10f5b9286fa42c5e44e09f91fa64b387b31e377a2db9b18ceae7a1b0b398c82634de00285ad0f6dd15366914dbcdd84bd7842d6104921d49c3680bdb8a78807d8c5429bef0ef8bfe27a4b1f25349aee68d7901044479c42dcf714fb76a91940b0bd601e67c614ab0aac2ebc215d3e3b4ed99ade65e2859d4968e09b5d85405c36ff0b6fa3bb0b90c897124b461269bcd61a310130ae5d60f525226d99fbcfee37b90f65edf0b4f6544808d67995ea1e0fdceac1a012358a5a6af97fc77a0d9e8d8177d1543ef9b335756be51a4d01fac1c42c1d849512bd35490b360f80325f37627e85e9397ddef58f1874a39e6c0b6ccee626db08878e440fcfeca34cb834c85319ca49db28e432dc2b194493d13dd9a248eb08d6a8b67fdfac711a97dd755ca0f3bc07938e955e1773e7a7417974221e707d695ec7dc2e0afe9d40dbe19b1bf4b38c85833a078d6f5b359b6797a83cd3f622d919d7d1d8da72a78718017fe4183cdf53f21db3045d5678e88e1c40f4e2e024b38c2d28f51ba1dfc4bcb43d0ffbf4eda11ce0bb7188218edbfc296c94ea59ded91199dcb153fdfb795163462f001d8968beef3efc5617695d70c03374991cd11ded1f57ea5fa0c950f7a2938da05a73e1dd140e5de74eb2f658a0656355cac6f99b1eecb96fa5bd59520aaa4a7d05f5b8d803e0ceae1466ebdd4c191f7bb3206274a2f4d29adf7192608c35dc9b07047d695e3510a61d2f6bd1736e67d28e2a9d4adef2bb284c56c9e614c12c17207caba32e2eece20626bcc22acfb02ded1cc063d26a83b46c53a8b967b9b4456bcb689dfcebd2d20c952f5b738087fdf6bce9a215c91f3a2d27d9c763d52f786b1c7cca1b7d00c06290c02b5bc591687de78f1adc293a8dc714eac246102d3050ffb98ab3373db5051ff26f2273fec9f45610eeb2d1c53ddd49a11e4114f551c2838c8f1a3a8a2b35b91e3701badb929d305822320c7fcb88bb6732bc2270f73e043bdbe1df6c0315f8cd9835ceae053c89c4b66ec6d2fadb77e2fa938984c0002fbd63478940706e63a50ea5bd3368473f75ff6632014b09af72b11f81e1e488bd760b0d2d816561aef6d88305fb479042569648f8a90633a8a3d3205d08b6b4553d099d965b0e5567c7b596121b46110851c0bb64b95b4ef8586234a68b0b74832781ce8df6dd4648921501628da0569507a3b515e1099ab0a49e06cbae468c4f47cf8422931f16ea8c66ff02d4d31c58db38cf85f50ec09c83f5a94421ddae2561cbac377c306c733f54e6ffab3f0db4fe07ce87754cb77df0714054fbd05027d32d0cab155041101a4ec836c667e71b13bf781e110ce4e1e48c09669f4149adfe2fefe56b1e4c52a3bb2c30a39dbf73e84c2aa50ca12dccbd85fedc3922094326d4ffc5e7db16602f60fc0909ddbfdc5daf8f456ed09614c8f8e3c70d0b1f35b4563d414a07598617ba72462c155dfd44579c3efe47d42136c5b55f8d0d63062e914c6a2a3747c195b950447dda9d2f0ceee910581ee0fa2093a53e3d489993e2eb3209a0b01e9139b06273508673f8e7af3e90b8bc8beb34ea93917f89ae9c07298a29e545479f596901babc36355b4df8df79a3751ee5214e297bc92ebb770b2bbaa240091f05ece0dc2186f91c3252d9a5476ab8f5124db469d1d83bc8ff71c0a6d3acbe1d4a05ee7f21a1514f2b6d70e5692dcc061694a42aee38f9d94b7875f8790cfe1d702318336383a68748803eaf25b895d9e468b812792be4a93f9d5ff36d681f47182ec2043e19d4b053b726456ebdc74344080ad04af044f860956291526bdc535a4cb832aeeeb993acfe4a1ea04cb6c60322cd78f470d2be3466edc028699f48726297f0eebfc5e3c64ae237deb49cde29d2d1368c896fd129c45c381d90db552d968b281da15d1638e478fb95617a3bcb60438a97eb18eee50f2c35fa5290267fb22ed868a0e125eba4eb3226b912ce4f99650e4b001d396d5a9eb8114be964d6cec46575ba8c0ae3e38cd56fb68f2e55cca5171280687b37d4166528f3bf6c648eb6ec26c170b311ee00808fab62c30c0481738426c21e14fc1cda58097558deec23574e35b0abdcc2ae7cdd8f20db88afb4af31dfd8f9882a2b70d43a842d1c8dfb8859859486b1d7bc2bb5cbd6ae1a3389402cfd2f41ee9b377071a0c41fd1f6fd95e66ddcbf36ab9f66a82f4f90ebad97b22ba2bf7843ac4ef5bb754c2f5f3320a2e16c2eca0a8bb1c6f36d76bace539b27cdf2a63a7fcf60cf49944e315d91ce8274b31a7c32e807e9cb272245d44909f10857657bb3ebae622e471f3633995352dfc5b1b3333aa552a05c45ae6bc1808ce75f080e6bd1ed897d969e3185e9dc6396419b5d762094e931243c55a1f4a63d897bdd0303d99c38fe5e356b509854de78f0a3d9c0e63d7ffe2dac27933111f4054d1d0db2899a8bee0e132839c6f600662948e9b5a0d5e255c526a70b5f4b7abbe988b5ef982d6a197f3f206183b401dd6a5f821087cc7905dd3b38a36080f17ba8e2ba73c58aa24826ff58420bf99c0380307483cbae627307ca6fed73efdea1fb0e9d9d91551f29839c64b96f93b60e51db991085240db51769597a58b1410177463bf4eec2b75877ca3ed517aebfb4cc73a7e04ee3c6782b445edd5dc51063e724b8e9fb6608fcd9b00613b8e8f4dfd281ed621124003aee231f657541ca0b147edad67aa72af08c4229f9a1dd075f69f4c84967ec947ed097d34ef5d35cc043cf2d564ea4dcd82d735143f64b1c7fed0193943c3236f6023f2fe07a3355fac4aa43cb8c00a5a4c65c41c8c8102a49a8a9ef567ba8a9fbce8187064e3e20146f40c8bf99206f9f554652e29402a3d74a3c12e96340768fd3e54abd82720f45e9f50e6b437bb139e11f36ea1894d688395c680b94228de357b782bd35809d1fb456a41854e9032ce09b2e5cec62fee3df8aa1fb914e8ac13c44e788dfd7001b72cd63d92b471be2ced617dd8c68e403f818833fc4dc9a217dfdcae92944cc497eb59777a32c3e2ed31068645aac8d4cb607f7f243a4be02103bfbe6604207c07e24681b35d01ef0cd874b205d22bad3eb606c54dc22f7804f363559ec265d38dae1af43f39167915c9f5dfcd89bd17d27d48740376211751f424fc3e9ae687f9b7fc7df0dae0cda4ccf6a130f8aa4d634bec704853c3b059af581a438270940fa5065e8fd44d53c962d22242befa10a323490249a4c06d8e27f9e1c5f84cdca0d0a5b1ee901aa053d8a6e90abc06cbe9fe8a1ed12d616faa3e81be6f494117fcd32fab583a243d3db6e4571f5ec8a8234ba3a8c3c6388b9565d65a05fdc717d8324acd64685c624c6ab51823b1db325643cbe77838289979e1dd73477298609a57fad7138fbba64a2821e28c1ce698e1e1b56e0f7d49c5a199d7ceac2f0df2d72cab8277fca298f155d3ff79f2c488bd9f6bf0e8a167a6af417462257e8712d7a1481487fe05d261dd7373827d55f7698d7a07260422886f9f249e21c0ffac40856c1c971a1dc85939a3d16b3c0c7738ef28ec5c0af03cc842440409f139a9d5dad0fbfa7ad04febfc454acf009ca1c1841ac0aae48747c1df12e5a7862d0ce7daf5b54b39c5173380364218f5fd84fab4eecd6f11a637dfcc270411874a08b4ffa2420014bd3bb31186675d3e73f2ac70f036030f23c8a35741c97de987828132d9aba47dc12968edb3b47dc3d7d0563e16fed5aeb48c36ff7d643cdd15f5faf7f323941a4e3b24927062c612559f333d30a73cc050b71ded36a3aad0165342d6cef54a73377866ea23321ffb26862c92a4a14fc35019bc90fa66f849247e3db39ae93938d05a5d8384a2b2f741ce059c8d869552dbbb17f09ff0632f86ef851c8eb96adc664108cfa5e30fd1e1b91f9fcc3545a8b4f140202e0a451cab44a43fa9f27c637ee2fe012585304ee1d1162916037977f0b8b24f3a33795315bc16156a65133c959a1b5fa48399a269ec6339665dd713a1b22374a5dde210659b9fa1169584d0aa85d742f6de295f472d08189f37f20c329d06fb31af124b6eef31f28d2afddebec34e898549133542e8883326dd1090c276cf27de8b4de12cbd02f58c270bc74a239d270524b58ec5c22364ae1ddb25abf55d1365a693574de300aac2121a4c752fdbe561f3bee8dc92c0bea65e998971da0d457d840838c57068cce62861c77f08a1f082005237c9409ad6cc27cc3b707e6f8dbc727d1a8b4a5d468d95112b7815c2214605089abeee0511dda7d255a60999dbc4622fbd4183f93a7750b4ed68a632e913ded98a66218092cca10e7c7743ac9e2f4e62e97db886f719632397c40d46a0b69d6bd84a765bacdec393fc645cd64e5286e2df9c437cc8a2e55e4f5d6a86a4f1f173c0322a95275f719c9283447c66a67fc9094f86ccbfdb72b9811e3f4943a0fcde23cb773c7fec68bf6064aec001ac4bf8eb1824c00e4d55db8c9c9483bc038a626687d3b7760d3bb0b3950726d0c88e38fe89f8185792135e871fbf445d46c857b30a83c761dd2bb7e5b4617618790f81511575d3d0f3ec8b7dca1779a4756cc10213d36a81a4107297bbc7b00240cbd8201e1a6899c0b4f1950b2942c2b00998341b21b89acd6354c0dfec77dd053c473befbc7af875f980afb52df37542d90965856cfb72fa5e89e5a7702a779135dd7ea7e1327ff696da5bf3459cdb836281703d833c0f360762d37923918104a94017f21e636f4880912da782793fd1454ce5aa41908f9098c478fcb7a9af859e3d483cd887070d02887149725c6e038baf84e09e2a446b71dc560a3cb616b61ffcd22d1ebd98fe6fc01d7d2506e0d49e2c71586ccc665cf2686d6a1d139dfb86e64c3fc2c8fdafab487ade1eaf09b14c184253b4630c1846eafb40d2afd3f0b31f99eb2880ad118a425b34cf2cc6c27c2af632fed2e78320b9a08b848f86495826021c968780f00d227887bdefaf3436d100e5302536c6ba580f80d0d640a584a78b666f5f3bf7fc3fe5dfe8e208f18e938f6d539604fb8344b6a6c14e8ca93ab9d815678de1eab0073e4b6833cdd37222af09035cd6acac3f318561c716562fa0cdd569de6fe9c615e535b53a07961af24bed13c5ee13a2a36e4ed0be58c614ecf511ed17bc9e47fa72298980da14badca65b86a4c789487127f2323c5e5a670342091418f7c28c084e8593b0f1d29c6effdb7197f4b16eb20f7933ec715e2a6a94034142c0a5e01b1075383ab81405b9e87fd423ac6f55e0b96ffcede6e1ed4e853c7f2e38929b6e2d78680e5096763510a0363a6135823cfb3c453be1a9baa32a1a00dd23b230d33bcddba4f756e04fc90c17facb79f54476b002f65d0fd5f8265ce16f750308211ea6dd3d2996fc448183d20baaf15c0b140b42a1188aac8435a8f4bac33d7193b267090cd213b19f32145a190c9f9381d4b260cba99cf1b5459635c1dde0f7d3b094b6d20e3686a0351b0d3d142e79c73c5baec25aa15631bf8daa290938383cd1d62dfbe105c86bf5841cd7f22ce397b86208209f140f6f2b7dbec37aa9b8268f7cac4424d62d05cfd59393afbc2cefa26cb593c04f2e9819f4ba1664568978001a18c06750c45d67fd6e640a7400a5083b8f62a8eaf0c5026095256863bae3b6d50bf69332c3c1e19b5e0e32211a1e3df89f292037e33c94a76ec97db0209538b5649090e317859e9e9ebf4217bea4bffd7a9d89d5eed8127a486fea657e69573edaf02975ee352c3d152d85fd622f43894a9ea595af438b59c75c8c0807131f26742f3f5032ae08d6d11f6d3c081b6022ea92b5b62724b4c33d9f502e04b0106da94eb21657f4a0780b54590aadef145f2de485b532956aa78fda24f1b52abc9ecd673694a5ec742def9096dd9151f6e73ae1fcf1726ec5071540d0cf85f45212236f9e872953ad86cf8a71c942b03ad63443af02faacceb6e88696af9be2148fffecb4a11177b0fa07eefba45e7a6aabc7c17032d6316767bc796f594febddb76d0121c71c251ec39b7957f3401e61e15f8c97cf183bdb84b2e91ad5ca36f598bf8c63f56d930147babbcdbe1b416d512bddd4b62bc1427921e21e42818e06d3da455c80110090c8060b0fbf89c6a3f2613dcca051323795857b4cbdb19eccca9c096b621f6f18441f2ac10fc3bc76d3f5b69c8d458dd335734d5d6837344afb34046d00aacb0d03074f9f3d5675b9e8db227de2016af02f313a680676c55fc11f20a441e2be104c2a2421f0721a10a519860e914ef5f0c416fc3918ed76b9c387881376969f95c635275b38e4ad296e67c32e9b458f9be8802ba41a0e4d2086bfee0cd52fffd1287d061925f13dbfe60d27d476a874661a19cb0803b884f58fab96c9d4d8505810f9398d5c9a86b6f0343e809f266365231089b35ad98a43358df5d980e0a04f1511b02815bf6c7ba2515368b33c91a1a269939b48541883e47f0d1fc3fc14bc7228a775a2dac009ff49cb2854c8879d871d9fd3726da95e12c15630760c97f90be43cb7f0bb005080a8df239a4fa1bce31b551f7339407a991d8d59141edb24da6c17e91a309f2db1c168a35d79963aede85a172aaba0c00f390e56d6664acb9a81ddb985cc377f6e9411bd7d6bd14077fa4e69784e8aad6c032bd9b377a69fde8ac86fd74e1196b04da679ec58a7950e5712c1cb9faed98498a58f9275e7a0f6639680564624b73f8f15e3206c6c2665c76068214f073ddd8d51dcb00316a77fd0478887ee6dd81c0b8a0a61f402c0c566d920ff4cb36bc193e12e457f77ae48dbcec6bc3a9535726a2237c0a56840fb801663c38b86a2bff52a1b726e20f8079d71b698945d0cbae1c51c58e0b867ef31a9c2eef20ccf35fd3c714195eb202f561c64b0bbcd44196fb7e1765a876f8e6328151e199e83fc2196b5915f0fd18548bfee7c14b61b4e495162f6c8026afd931bc913a2712af3f1e8f741c2b8506d79486b2e3aa39d9faf488c8312de632119472ee3ce369fc5ec0fffd2d1597472de6dedf16e7dd8db7ddd47cc01482f1f23e5b38c18944df93a1c1803c795db193eed054a15204574b7db4ba2273e51a0f3a94877eabd6341f6972b63d6da859c0c79aa64021d5cb3fd0ce5f79e7d964e27b7ef70d1a5ea40d5c33ed2b6c79f9680a184dccd8291b7e39a503d959feefb2dead771c7dcfe0bc5ab0040bb9ae479402a84b358f37d2dd932f9150668f3a94009cee410dbcf1cb5a13a030a8fbd646c78857ca1fa860d69559c7d54bba84ff362d615f739e558f68b26d056bf234b52a562ed1a97d75ca05ecb71d0a2767cc00e4e7488b23d67620e8d64c8780ef80d79ba8d6138d1d96112fca95bfcc8740c297dc0f7452a9fd4708735caead6cb092c080fbb4a2d771e91d1e5770d8ada8a893551c4a639f4ea7e2f80b014be0111e9b497e40151d16793f9017da1dbdcc9031e8d4f6091aed98169a266ec4d0a6413a7761105d92043ed2f69ca12696d74c49d5bf590e6164113625173ff8b17cfde921dbdecea315e190449cbc27b26ecb4bc5387ae58adeee56b929c61f50e5a2c0c8494736253d1b7e1f95744e766c7e9070a3f1f2c1e678938c0d1586bd1a2d8e90094572c199e939418d182f8df3c266943c40ee5cb727d18329e45d439671d1ab92d3b64ad90c0e319b7e0642916ae4fdc91cdc3ade0af74f66cafa662ded1d4a8c4293835d30d86e38f2f07b27500b3f5df67762f53043fc721b6a1eb410df674ce6a8459bc152772b0c354454d9a330e3a9617b8a253c715791750873dc3bf25afb4e0339c5ccebe40167a8ca1b59eddf5fe3a7d6d3385606c8708a2b443df65bfb9276b31f935b828454763a3dee56c25b4ea8eae1156858e36949c2de9808eb3f75db2963cb2965da341455ce76456776a5b8b4561a8a07faa601c920786f142777e88ace6a0d865c57c2e803f3963ebf12ea34c164ce2ce47a0c4e7454967d37da1e10b7f54a42f63a40cf3d53a25c2778ff899319ff4eb0cc151db772b4853dca057fb8f1b6885363dd83351b078db4157f2a0d33e71ff48ff87675347225b769e6b0d427c4169b348c4211b1b3dee46c6e245bfc0655888cd230bd531b848fc5825b44260ef6d0b98cbdaac6e7f2a23ef3cd62c32c601d32afea163e12bf6931bc3c830712c05ead10dabc74ffe62723be957ff58c2f87e0d41cd6ebea94791c4d6ee5cb4998ff19539b3bd0fbac0094ab11c7fbe44e69ea85fed224c83d64fa97a38465debc8de75d2729b6888f92116c5a45c645614002cbaacc2a2f604361358a8db99664abdde8d1cb23b447edcfda1e92fd1d6a2169222671d017fed0159fb73a5172bfc9a35fb11562aab5759e2af3e2658e05bfc6725a92b978203e1790beb4e7bb24324488ec972627e24a08617235d3223654baeea98eeb01a85fc52c3fda8c246e10a76f0d399d320aeff147f219f652163a14ed673a3e414727ce1ebe9131c0b5dff69b9ebb95d7e62a2688a84dec2949643f1831a98ce71c24af968773d5cae20e7365cdf2d3cbc456ceb904734cd4047f81225fcbaf637ea446fc8b963e1499e9109095699ca9305a4190f360ad7d34cf0a12c3cfd8d3f6e1cf368d7f52bb0d42657725cbefc35352bc9d204f0e8f50d1ac670c2feadf389268d7a2d7c382d559e83e00fec750eedd3333e50a3dfe0daa9d53ddfc70df3c96d283171bad9c846d834331ce3c1afbd63b9a05fd119e5a3bc8cb97b975c4b52ad0884f7f0f33e39eedaa57ffcf50ffe6877a410cb4302d804f75918ae38cc387786148a5514efd0e530de7bb0f8ac8557b1e3645e07a1e519500d94fbaf649e528e6520e641faa30e34ca5784dc96e918f48ff8043ff3d861a278e5e6bf92d91f5dfc64f70349e7b4730fd72a5f3e7c9b04adcce4cc31922239fde14ddbce816274b2c5fefd0327b4c0ed355d88044b63cbde60fb4b83d203fca99de614c6fdc6ce1ea0ccd4c78150aa8f8c074370938e9884e71271f1ff1ae2f66aaa5159f9f786c5ddae5fd14bb2f359c4c9eab28054d3ec83e7fb6087321f7c42654996395e38cf9a2395aa86df5442f8ce83ef31c8cb23ba3dcf808ee5440dd3003172c036a0f783394cc156b119012f67db2b8b970e6d25651ba6a0e6f505cfd7c4f6c9334dafbf9b4cf1100fc8a7a8592391304483878a9ad3563ea9a4dc79a8d8dceb920ae17aa8905b2816edcca19478ddcb8ee8fe69133322ff2aaf71c45829f7ed11ae73304cdc439e086f2a67b741cdb0fa950c5ba5c3811c49c088bbfdd77ea7085b59848784a34db158688a3842cfd5f60005ba848d733e67f71b62c128c3f3c32c969e4ec562cd3cdbfd9418c657cc0ae8d5c933eb30da53070425b949e80f223b5139b2eadbe19b97d72f55f30cc24ef73fcf124b6058f62e618b9f6c09f9d1439dedfbeee5c59c317fc7b3699d6d67a859f15321001df16a3d5065bd280c0941ea7cde474322cf8bcea055339c17b45aba5674fb8732f20c9998fd000b1fcb62ed99675173cfe94a73b61cfe4dcd1c6db9057aa203d4b167b2c25e8f7d69b435ccd46f869f96373be6763830b0f8cbab4f9d8ca921f79b909d4649ec649002069eedfb3c201280c393e73025fcb792c88833c5d1c082a8db2fa75a4f30eadd98f1e73eb6c004b994166d66ee6761efced89fe84f649436c1ae135044d132be03a5c1b1541307c266a98e0b326b0c2f5874526e6922f89c89441e4799e20a01ea3d77ea59b7d939969af8433d2b22a627076aa474f61a196bfe231cdc978a766ea6eec9e2a15505cfdd191590b597a77d50879566767715845203ed18cb3203caa93ed9ddcc6a2bbecdc1f9663bc54cb24a1e12b8153e5da1bcfc172ca3f7e2a45870cf678b5d7534291d8f89b542dd0fd2c0acc1058c0b035db3e068e6c35be48e2c95aea14476302ff47c8480c7a08e04392183321af4b0157ef079f755f9d696eb05a33a3e97fe99246b543c1f34fe7abfbcfeb73793e2d440a8e7038ba2c88ebb6b02dafe359e76dd8d11d6f6554379cd76bd8411a29753e2935f2be3c0d00019525c475454ac77e02869faa8bb145764f83335ff1f3fb0ddf3bdde1f95f2df734cf37b2c9bf0f98c1f2a08e308f4f7270e74545bb5096ee45dc3b68eec7c9c4fffef85d12fa0bd3ba6cecc7a1eace18e5e28e57ab3caf2eac10a2bd7868d45dedad44222e2ba990bbb6cee4a93d917c3905f65c53737acec074ab0b1c63d6a94f4ef8694cc2929fb9dba4f9379c6b1010f5d85831e60b0348f65148b6e13c116379735ac8d2f93dc3838b2af7329a25ea9e7d231c582592330123c211489da6dfbc4abcac1f3d2416ed9d01c3d526dd2c438a32e2416ba9b27fcc9fd524ded2577a290e7e2b632ed012eee31a9a8453acb52715985be198bb8073bb14d27814cbe21003c8fe2aa0104383634e8c637417117f458550bf283823fbeae90e923f4a352d77f56adea93bf470c0298153c8535f7a6d234b7ce53e536dfb9a1108871b8ad7569ae61c3516c3d77378036b519e1c6f1c707a03cedcaa3bbb7a6b0e8542fce2f682437c14d9572e2b94bc96f429b8c7130c4eee26bda06cb7e00ea11e5ae04d9c6c06bb7d9fef96e08fd1c3b70c3bde3c74a6c30cfb0cf961aa88b3dafc77cf599cc6375173c426bcc5a60211af1ab83853e5aee8c8689fe582b2e5741973c28a2a40226ed378919a65ad99670e838c5eb6f6bf1bbfcd7b96b38842c5187ffe8e2fdf665606c8292078e771b0c413e6728f0a0995848ad6ee11bc052e471737fec5a6dc603a641358b7bb082f8ab559376723fc81b8df2b6a3349214ad3d1a8ad166d3b9a9e8771580913b3fac763ac517ef4ccc5a108cd8aea3edc813f09255228a0c299c9d190905ae33c7cda899f71cffd9fd52c0033b8fe361d54165376b1594b04ef84bb1d66052236627e2fd85c52946f3c7ce6019daddf4ab710a5bee58dc981d030a245da6f3745c62057cc37bbeb7a21ed1041b42e54a013aab0bfe1ca2d7d57dfd44e47ffcf08bc8852561961cd9bacf58d5e102ab6fd2a1af9fb69d7caae78f587a724447ac892c573f750a28887f12f7677785c7e367e64cad7ee70e188bb2d9237f693b04b9c8e5c131b9dcec4d074bf420d5edb15967cc41c77dbf0a4e50eca0a1e2bfcba77a838e7358b7e312aa139a7137b8fd9980702b22ebe1b3df8dbeb6e4b49c255b86a1887702071f902f9981c1e0e2b5af3b9783bcfd49a7375aa7a1c5b0dccc6e6864c68696cc624b9d4935eb897ad60c245216e017e1683df5ec286c93a4a551a50db6247f637f0295bb42caef430bc686e0fdf9bd59a148a5daa89c531f08d1ec371e95c55f0c30fb2c4acebbd91922a618db73e247a8e81893b249647db5585b7c8e559eb3f4fb79ed64d4eb9e595d8cc31ca41fc6e1ea8faed8d1123d49b91b2872a24eb4513d55217b36a435d4f4a1356aa851df4c8e4958afa4aaaddd50235b4450b28eff8e6b2aa42149a9107a6686c4477e6698bb9569c3823e1950171ae7f202f74d092a8a023da80ad8b832f3b65726649f1848ab5e993753d38f553c618f43a87af3c3ac4cd5fcf76d0058b4bd4c9e1d5e97eadcb96984891d91b1e93b4692e9e29119f349bdc7110ca121e5b769ecc05e7f454824b6c6115b5eeb2d07978417ec620590ee083b8bd39eae49efdaad97dc4ff1b6709176ceb3505f6139be73053f0befa90f1da86f2572a4fbf9d552ade2f2e40014302d98947029de5c786094f9b77d9032981cdf71668aa9232b447bbe713cff9d8b2ba290240f3cc6d0c63d183ad2b0266d4bcff0207ed18c682b0924c98c648c3f6db283c80f5cc559462ce292b782e72f18a74b7e560873bbb73d269b80a50a43620d5961c88ed8f553da9c712c1cc7cac9ffd83bde4770cd4665ba34c4a5682827d12590db2cb999641a3afe50826995dbcc6c82705e7ffcec6204ffce7664d7cfabfb3b3d9fb19a63850526e19dde66a096aadebc6466f55391c2b48d3f2eb4e54f0f9dc29f3a96008d41361990cb7d5f6c6890cd21e891f4730a7c4604bb1423bee94a91854f7f94c576ec87d4eebc4c864a9fde53311b8120dda6b5cd00b9567a5595fc6d4b8303669ea32ad692740c0d1f5061529b55bc673a3c5ee1461fb154c736396fe58a6154fcfe48a2f1c680251c9dc72bd31f5ccf0cf2993b37627087c1b2c1c2df60c0c9e485d9828be5952cf95798ccf1f6418dbed2814fc5a0bfb5ea6ca494f073c00d912714a73d371f5daee947c47a629224811e908de26e417e35e40fcfe974271621269b651bfc9050de8ee5413751c46eee356b5068bcc54e4f6946d0b00b92633fb2925ea47f81fbedf16899210e0a43ebdd3165cba85892db74ccf291bac70a6b2e5474c9547f076b3af2cae02bda513bcf9bccac351d84a471f39b9782f394029e67f19f6e663942243e89241fa395194e314bb5ddadfc0d349283e2249666b4de63dad90de285586c85e227b5a5f321e62b2ab7a003a2fb84de0889b8008231b348fb64571963b75ad866d8bd7a297cf56f51139efdfe2f5fa324aec3f07ecb25fe03629e5ca42ab03f5fd1a03c284f0f683fb3a2e2921cc8f28b6c1881142c707ec8eafc719d46164ff71d0eae195f34bf3ba6d801c2ac5c9a767259c08f0fe5a09d22c4f676b96e6ffe3e3293c22e4fa92dea986959512d0036c080e1fa2c669fd76e2776ee7b3c5283f5740b8b52d7b4df0f45d1d35b794ac86efb741d4452e68ccb728df64a9dd87dfc78a8931f7c0ef3bb7f11daee8b7ae11a98400ecb423830efd3d80c6c4c010ead60cb6292fa0b93d88eb587f52cf39fe4f0525d63e4102cc3b0592618bbcf78ab9f938f7d1c316a68a76c9053733fbd450903dca441b6a613286cb94c1c574f4408a406ffbfe6dee778b7ad60d2d60c1b3d13e185c33a646a3f5fc12e48ab12dce34f948159c10dd989d9d3e07eb4c7e4dfc6920d77c835e4afc80d1914f2e4cc2092f73aa5b6d5c3cb70de340eabaab07907207936826aeb44f3b0bd8c4aba3975564371b81ac569b10033ff7d3d374a2fc057db4312c9835dbf9c26c0c5ab734e9505f1c47ca0820eb8b99cb55a3c2e0df10f5b16d6bba650db037ce15b1b73d762d43121d3e01be97b876463c6711a44330818fb74052da5c190851503e72b138f1b517fa319c416d7d1b6f9ddb59f071440c5b391184cf83d635cdcd8921d2538587a75465eabad2b667f4b90bd12e9927dd4f521a87cbec31d1a5f44fde190241e80d71874c02d12d682cf24b5c408813fa002883b5d1d2b412fff59484e68cd119466d5b84d56b2f74953b718686941bae49a7e55cb79808bcfe11711079460effc26cb6a01975f4df1346e8191d892858e3313fb5ebf09c26a915eb781367ef6b6d8eddca711af90523aff33604672931d134529fea1454e091398672e1202b1af8f91e0c79a162a7e2d301aa622860048f560a801aa70609163fc8113efc428dc61b8e2fd8f9e659fc789bfbc019648a37a50b5a87643f693ebfb49524bf288633acff16bcbfb3e2a815c2a677e22a6d5119f279324a0ee34a44c87d1b9565cb2f67a81026a63442f9b5ae5975b9442738db074cccafdfdf62fd8e4fb2686743ce4272f61c35bf7708f3585f102248d44b8ba96df4b13ef56dd1a8fc62db28da844551684a2991caccf6c51c7b057341afc92d03bfbc58183b5e43ebd1efb2794f9610d966a87515b7ecb895ba99005c63040c32ebc23ef6e79f57fd84d8e624eee2bd84f51360a96b7d0f8087aa00cc5f8ffae2779c5f6e9b5fb1bd3be15b0ddd8fe8fcf704c654a7f7f8c7593f1bf9655d53054716bfab105a10e6bb87c02199f64d0ef9f1c3caba79cea4bcc61ded97b494f730215c2629ff6b54dd2eee21bb6f2e19a17936c3ba9435fcb9783db79a0cb24b16a3f56e21114297e97ac347c9499f1900826b3c3fddadd356fc13394d9f4fd6aa66314b8b19756a24a479b61d1f5a94403dfc68711f8e150083712867fd846f2a8bf604d6b2927c951452b5673b310eac22238096a72a29751c093df6a0613a146599f71d2ad95cc5b7524c28918c041893dedff43298b9a9192baa9ace9b50cd906a0b73fe594bb774068c83840e10771682bbc593ba16621a1e0e360f62166f3b887aed65bb00a688bc74447341422cecff65f0711d796d26519628dc3ee081cadd37744fac6de7f39a4ec105a31c17e03da9fbbd4752762d1c167a81a902bbb4c21480dfdb5052a8192041de67ba67cb850daf043989967c36eebb737836afe48c9f7f5ff41d07b7c56e61e26a5b65f6ca8f7c56b990b6fa3f79174f0f0127ca088abf12037576cdd5bd5903e60d1d3ab46748539a13ed8328980a0956a06161062a8d35b3796eaa580f4420d7bc7893ae930b82a283c4f865aba48032fbfad65453643e57cb06b6a95bcf416853107a42c71c285ade0b991d49eef98f87030a2a7487fab744d8071e6c17654c2def85e1d9f9d705ef0e4c620ac41f5bd5e9170cfb3cdca9ae62f3a80944d5777d4bbdadeb44550b43f8fb654ce8ff20aa9fac8488d55b4909137257d17e8adada5b6387ded1832e7d35263b97555f0c9c98e463608ae1ca9d831b40cb5534c8e6f322660a4e7e89f839c20d5dea74bca016653308ddbfee37532c86b4a385b61472832e5707acb7c24d82096cb8903dfb197cf80b9a8a69a0af7c62aa67f0719e9900bb3224bcfad62faa1f4dac3738c4a9e7bfb3154c805a208e34784cd88a1508c139e3a411088f2d88019a45eeb750903e35293853ec318c69c6caa1c15873f89a89b03c5a9ec9ed5602a9a8505a28cda6e989874c7cdb658f92859686e313e35be8f7a430da1fe0220ce074cc01717c03e3f436e73afd73f32208a200a234ab3c7655ca94d9c1370f035805aac7421f59d36bd25d8ac30cafa1c9523cba650d2c7f2713d4e1225cf20bae6eb1c81687bfd52b9ac7e01a5baaae34153fe67d237a2c821bfa26b359012811e050a98c127935ceb8f5dbec0ea2f0b24c232983b328ddebe63f81591bb21595488898d325b8926dde6daa9ac82d4e2fc2b5462cd6f6bb6038613004b0dd3d72d19b29f11a770117ff13d503fc8c4b7323d3ad6bab4a2c259287c6b64966733ca0ecdf6714a0f42f04d1ee199141aee2f561c4ed72ec5222de1d387d8a0a320e22d5c31b72f66c72cbc845007a99f9d944182d425158ca57312416be04fd6d503489e6d9038dd923e9497092c23ab74e19d7ecc633be179f3a33d157e5df39ced371f52ecc7fdb28faf7072dff811a67a9e2db9db6c6fec2840c29a4f3c00bc85890f5a4946d152a5a33b4410fc68aa30f5946ac7e9932746c30bd79670634dada510300fa68e797e6668594527653813dc33944f80d64abf49c02f26b6c204fbfacfd947ff782e7fbec9d4710031ac8bb8ad02570dda06afb83d1ef2dba2bd6b397d73e97a6f342ffe9b1761eaa33cdf07371bfab72136f33822fa5b3204eddb5623159d7838fb790f6db9664b91c08f183c9560ead853db8336da4327f27f8ba8dcca36ba440db1007aa1c54e1b73fafe6b1c3e2f7fd1a01c693718455684b5d69b467c76e26827a6b477794e55488302bd44d3767f5c1765c79ccdae7195c010b96bc9ad725310a8432ab11766c1b383a88f2800d1897dbd53dadfbb87370f6fd733b25af1ab5fee0c5358bb1ecc1e58b46286a4262fda0ce706071e84cb94431076047b39456c074d530bfcba1c86b68f72fb6b45fdff5767d9e966d3abed234181ee49eac625c5c8ac6d0498cae1e76b3344c74e809c2ab89bccef82adc4017a742b561e3c2f3482306c3d23ef6123cf19805279d112340d27034662c08eb9c9874f762dc7a96ffa7a254347b1e72e8e1fa53f08b1317c5856f6e2c61692a4f41f613b76aec8e7ba21b89a3b45e6fbead0f95c05efb4b9124c40a933b7a955a97aeef00d6a28d4a51a845acab49c373ba4ad253669b188922f976373e3b7df375c476e5d19cac663be047228d8d526c13d0f2ba122c2f39aecaf0b545c1830f19cd324c38fc9787ef1fed18ea48a62b29b18fe34a2e7c17bd03537b072b831d7f94b99769954de76a9f4ccbe509a0b5a7096e7f1b2f795a1dfe5a123b55132327030ec9c88cf5af90c07be0f9993af9cf92015adf5aea1097559d1e4fe7212a0c45da3e3ed9e107662aa98f6a9b82e6b2f01892579d0eec68eaa0ad61d48770d3b8181521528d8a114d697a09491c0fde2a8160c2266eee57055a8007a23977f13b93d7e35a3cd16b562370cd06b7cd8d1f6fcc451fe121afb09dbd38f20b56a6601d5bf3c21230db18dca70ff4c113a7f1e228801921651a43c52b07f2a5d08afe681cda236370576030eb55b421ad115e940380df14c303ecd0ba5b831897cf62c409dbf1bd5bd53974e9d8ac40e323b70c09ec857596fe80806f661aeb5af6474e13a14685f2a7f72ea433c81d36eb1354ea9dd33ba480c075171186aa1ce59c4de6b778e14acd40aae7f5e4f0f434c11fefc5ea3b4cd9a8ac0c41753307c7da25d4837e006d190c553dc965ce70d7d5a6ba91430ae10c380ebc37fdf1ab7602cc448465fa9feee744740422c7bbbc88b49e2377cc2e61365c5240b2d1bab3cfa012258dc484e4f161c8f28dea0043741c6be79bdb6d3eede683206421a877447ab8469054bcaad2522198f9a2a33259211179b4b8d29113b27426a744924c7077f9e6b3f7abc626f22c90f6fc0ed70404c8063e7044b64dbab84da332da5643b855fe5ee1938a44de44def788c3391e17684ea70963551f843015c2b0d1a5c0c92a0f95fa96d72cd368be964e81ab42660f089bc31c1a107de861b1fd0020619f8e4b1f300a97dd40c6467dd058aa62d5c5cc75b8cc85adb8e95120fc85a74f936b6b84c813b820bacdb9ed01cea5136129153c2f15028228c44ad0cd168d2aaaeff7a1db646912c78e737ed1ac96452f1633a96c7bb075bda064387defbf6d586b2baa4f91a93795994faa7bd06556818d729650bf9f4d10d81a8ef3c41ddba8df9a7de59e4711fe681808fbf67e218192b83f337ff6fe5446137368f4ede04ca6f044868d3ed31e60299435d57d8e83b89c78ddc9eecc7e0f3d7c84d00cc89c73bd210369b2a06d43f4da0ceb6d6abac9807234160746850c12a5b2c6be76e59d18e4d300abde64ca01c24c25c1403c37332c811703427351455a2ee5750583ab53ea6f92c31c61a507067db48bec12ff077f0815b6c6f2e32c5aff10b2257dc10e1eed7468b36466ed53e6497fa21c006a96db4d1ae9fec4475029f1ac5127d7c5abb1cda7d66d41d45b03f3798aff0949840f37fa4aacbb386676370750a3560045d47ba68d5abace46e3a1a389f20c9b9fd7c7eac30c935ff4a08cb438c475d8ab7c748d68b9039a2e731d5dde0c1712a7997babe73a865311f7f3fb90fdb40147826242db865d9103a25ba422049ec65eac5bf590a77d512c428ee524ecf9a0b73924c3ff6326a7dc35bb15b7f51a87f0c4dae5d433863e7c337c9c4863777117d344c1487ac723750c5ea313b978ee5391925eb3544521e8460636de76689ddf96018d508987275289aa87f9b8975e096c906a967c5a371dffc299a7e83e08583cc36cc403b146c724c38f01fd07ab26d4e83e8e2ec71e847688c67a331ac4d2474053246ccebbc91e0471e212cb71d555b567bfb8e657c9d1bf3b5a97da49f20df09fc9c78d1ab3fe150eec5e70c1e95ee97b8a365f0648252476dbc35a795ddee66853c99ac43faa126c18d19486e051aaf17f3c5e55c02d75263d31c608637c5765fb081e96d81fde4e5825b90ed7901bf36b8ab84c678d87857228c156720c43976216761edd3615566d154cda7b38da9d01b1616b339364076414f759bdb2d382f5d720b51e9a77982998a28c01eabb248356403b50b26f6718e86350713c0dbca94aa0063b6583479ec6fcb1831d831cb9b74d37b559379f7b4cb02e42d1328f389d16610ca765f5dadac4c8905c9dabc183416fc00d1d70127f95b7584253b5b2f66c6bf63e637105314b6a1fd3f2df7ce513658dcf48fb47cd55fb9adc5496f755e020750290810b06cd002625c36888aaef4251d0737e0ec21e4e99110500c27ca4e586bbb5a07fc1f32f8975b81d948fca4608f64dc3b3753fc0330faa1e5d22ae3e634a51fdba18dae63e59fa0744c2465924a76cf58d1d9ccd6b176d4bca0579f31d181651670790a0a0abe9d58d5ada23deab692f2f23f0b9f9323daf49c56db1348085e8ad0a3b1a645f0a7225691f456d7478a577b5893631f8808ba0d28c731458fb69bea41bd25ab31d0529a8ff2aa40eb147f5a20434a798ec412560413911a27265f5b395642dd13306a7f3006f86bd3c21456de9201f0cd6197b13c55b197779e316e8d1ffaaa390b0ba2fab3721c19133082156cbfd772d2bb463c6a7d239fe12809795a5e0da774bafcdd9597448e6e7d6175ac65b2a62aa2b3dea7c17755e3e18985b4de049e17d70b83004ccac5992e54fc0a4cd8c5a1e86a67ae65e36d7faa86b4d7268b0cdd88c01154e3a8808de5e58adfac280231fc938a0475768aab1b7c47eeb15fccaece252e52ba980148a2f2294a8565338dfad6e097e241e4889c14f13785b392663e1247e71cbe3fd0fb9665c91dc64bc791106abeb41efeaf0af9373a76fe7da5c7073b23f212bb62993944c36c31c72b7a2d3281a03e7b995046e34e080aed9765ad89956c413ebb5387e21daf34c7a2df23d4d9894fc6bbbc2aa4cd4e6b9fe081704b12c812d12a2f0df9c1ae18e5028b7a1079a9f0c36d222716902e6c6450c642c6f0ae236314486ee441d426f5f6ba701d062607a0d77a04730eb5307b52f6bd3fa3d1d4490c021fd52ba768beb41e5c609ef94cb93882326d481bc00adfdebfb6e402535af9bfd224c5842979963bad09ef8919fa6d722fd9fc427ae0b840d075826c98b876b36fdc247fbe248a9ce58fe539c382f7e8e46ae239615768d3611d3638ada4960e2fffe876890bb43be62238d0816fbb5b3962f19101b2f027a81360d8eb216ef047e1dd6f5430d95a559ac7eb77c0c24b11b7b4ec8df69a9d1420958854de184a5d1d5dca1c4610eb93463d71757b5377bfbeae2d29565cec61da53859d87e58bf7765a4d7a35d1de93ddcb65af9886db8c2214072b2881d1f81a16013f41d02cf6905ba5c43693458b8b567a515fcbaf0867ef473d26231361f6002cc677596185bb137d9d876b3aa6ec471946c322ac1ed63c44bf56d8375a49b0fea0a0d6d6d674a172637c95775383229a51de05791a1054773b0febcfcea002b24fa1fe539788b20133aeb36254ba6969a87d63f0c9e77bf5023336ef9f5ff4521b926ad2bba775602821e0c649b9d504ee33212789bc00e2f0acae15636512af5700b82e0c97dd57b073ee0caaeea8c94b1f1c1c5d4814f07ec2ce24115d4433e5586da413245d981661657063f7c3fe4a4f904391355b50ef340f2244e4c420ff6d746fdc0ce31f626ab8c9cc356b796f6e7e902fd2ad3476412ef6a8e87379274815487724a49edade24a700fdb15062dedb98d63478eb83dc4ef5f51350c45dd97c505b13c2424440132ba30d3ecacffcab550ffba70789fe07f5d6fed0cd6fa8ebeffc1c0e67f2cecca6b563ead1590ba914d48475a41033dfcc9eb5c22593c45dad6afb87d98069dc8f43c8b870433c218631031d8e2a0274def7ed73af205823d892e0161742fecbd0602c272016074b618659dd2316c298280506b278317161d2fadaa4a3fa191d1ed877aa4b2be552c28056e0b3654cbf4429e6241d47b3c1b1b8653e64f5aa5bb08d31d3a4f653c86363532dfb7a96ed9b9f8ee5f0a49bea7f377ffc48ac1353e4b0d8893e587694eb0ab24e6cf2df15ec369d45b937d35acee3d0dcfe186d8b5a9c3737670b47fe0c10dfda54ff307e0d6ff1419c2393b66b39328637255d64ea2889c2c24d9d17883b4cce0644a4ed127e24619c2382c61e84054a225087b6c433dc720b8f652cfb42cfaff59c5358e9e642660d703247b6f0815ff1f7631afde104aaedcb3e6c32c75000b9c6389b86308e4539d1c1a8f51922d45d2eff0c0d741195cb6d302f89e7ffcf51ec40745e087c11842396cc4118c832216e03da89611e57818c1067e361db5c0f63b07c34c19f81aa48dc7b3b1040732aee24f55433f482285307a92b4777364b7cfad16959f9137d9a9e6f47f4acbe66ff21dd0746e9af6dd06b3b795793673e6ffba82c5399c506bf647a0acae74285408a1e22f8881ba80edf9c3a619ab727299265417d8b82afd90e87f45c5fdf5a7ffd807ca84c13ad2b2c6bb3714d1625f95c7aa336d8a52a6d00978955616fb794eebd5acf19a0fdaf568c757c68e61a606e637e012b03a48cf57313d0ba9002d1e3e24ee82ec73fa56f34fd9e876587632d843707618702cce7cf34244e6eaf59cb62bf279e3046744aa308d748650d0d25c5171308c5133a438ede787ac3f202fc21f3f8c387bb2873ce2a9ee8ef97b5a3e0a734dec07a85cef5efe9788c3cf582d1147f1609070198e5055d27dc19bc4477df3a56b02355e457ee02c2711050022b759903106cc688c675a34a74e018588651ce4071d386ebded65fe9fc66b5a69037a68143413f0e8300826c518fd85f415942a95097af87bd3664ce61274db5340a14ec750b8df771dc2cd3ea0c989a35be4d3103b168c8bce625b9bec15b44ffdb2875b1f0f59728210044e771eb8bd2229768e4d88fab097c0dde01cfdd98e08c8c23618463c374b60e083214cc0412d35ef30358f462cedb30fbafac5829bbeeeb8e4a0b5a97fcc9a246b45414502b47785f700633e9e22363d548ddb7646be22188893f6a6a0ab4c1a09695b14e44aec8d0549d9821cc49231b190f4c86fee18471fa848b48bd5ae08697ac0513ad3e7e7bb542a8facbaa0fee6d380830c179093fd323984ec855c4be77e11e38e1a1dd0f05618b137ae6ed4726d22ef5575a5ec601391eefa9d92a2c8f3c541d9351a87350dabc1c38dba67a8342ede71eb79d7a2ba8a1de4f40643ae4783152e24f66be539ad5ce5e758e12d48410ecbaebde5e02004bd9cb0afcc3e1a8e1ce729c08e264755da0a32d6e4b0caf748899c3a93e8047bb52fc3ba977386131b9c0844b69900827804222ed7a9e0147dd1bde3487d32d11d433e9dd60b8a0ec453554ea258392e7b5296334a37d763e98d3a1b12d68e3560d08de7f06929b1cf9da0b07022434839920a9ff3599a58e62d75261ad29519ec5a66c20d0aaf0db89da894d9c214840673708d26ef99f0e1a50711417d5418d3425597f2a747018df5765f95f96207b612572ae9d9175475f2c41a4eceba6af4896e5446476156441e2a3109a0567373262e2aef4e91a69d4bdd57e13fd22675573e94157b715e72513ef9d2371295b07cb7524bcb4f3441dee7dd0aa806dcd2d4dfcb66d363669218bd114edf7139f81e5e97e5ea7502adb57d152f195e693d3679402b1e2707d49fc240f5d63033a67b2b7429cbe31ab87dac994489523dd0ec1062b848b5b9d4b3da8dae5f1bec4562dbdc1375fd8685b8c5f594544aa0abbe1c79acf234dca43eabc92f251a86b48fccf0e3976d09bc797da87e5fd5be340a2181cb278a713ab1e64ca6a13b9d4f56f335c853daea8b187635eb294c7e5d46693a20f0684dc6c2bce5e7754010eb55f5dd7f522174b0668ebbb9872eb2cd1960af651aeeaf0eb39f21f7dd1bb44512d4876484217a6c1997d7df31e94218b1fffe7c607220b9d3842576710409217a1ad9a44851ace8e4f2ec5dd6274d90c5f9e486ff1e97a23b03b772921fdf36c0e696053a4fcf48f1ce237c2d17c61387978ebf2cc8180e102d37bc8d3a3b9ca58f07542fadea9accc0f9625bb68613f7837fc145340a4d82f8e5bca917186004e29dd430cc2e7444838b268bfa0c0d582e8183351b3ae65b6915d1cf27ad50f902144130066738e82be217077a675199657b15f16673faed4864159b73455b36f53c50810be2a261cfd402ae25ee9b303504f58b5bcce553f9373072128f12d2eafd6755560f695b2a9770db24cca5c8636699a34781cfccbb2cef8d2639580919bcd1a7e39ffb454ae4d239d7ec9cbe20d9618a24c592aa79d4314443119f7e14873aaef2ad83d00c23d34437a762a65935bf147edbb9011e778dd50763aaad280b48ea987ce3100f62f54ca6bb2755414ac5d835e17ce046ec0e032e76d6dcbc4801459b9728716c56352f5aae6b94ecf055ab4fbc57c5c60fc71672273f1b9ce29e6167d8b8d0d7cb309a74222526d2cd17af9b9fcf8cc5df9f8307db51419f1b76ec7a580c93d3b1016507de21dd7318437ef9841193010c64e40f986a5c8e5d68f9451852b95b78399363f33e5856f01929fa40b811d3cd479e25db6a9abf049a67f349500f912f6ca6f8bc5c78d9f02e24f99e615198b51dc817b7a22abf4590320b21a1534b2bbdc4417132362e4b1c66b10c1fbdac8ee00c48d865825fdb6eaac71129acdee7a3d3448e4cc0d8a73047d298c3258b8a0c6e179178c7c0ab84a8c13c7674ce6048093197678a60e69e06dbb031ed18209852469c12354a13f6ed3703f2c9300a92207b8a623cd3b8a10b93899c39459b07c13d623186bc1aca689ee1b363792623756a7ef2123b1850624fc452ac3e68bc4247142eb81c3577c0a94df512b4367b5fdcf414d3e6a3d7e0c6a25f4f7ef34f945bb74cf6a9ab02f01873ca84db3027eb0e460a4dd23e21032a4e4727981143f54b2501b5ab436ef1822b826663f98d0e43fcd680606b3516aa03eca2b55e37382fc7a6a86447494dab49f04690e35ead0d938cafaadd515d0086934b6efda33b07b9a6199e7bc71b9971f96fe37e6e4e6626ab2d23d4a98804635a2c543da708138ee9d6cab4bc5d8254bc05329592b5369f2a43205e70947d0ff26e4c426e3a0d6f235b5a3c021f3f8c3bf2845772773e4cc47caee26fe09be88acd6f3afcba46d8a209565be0b5cf155670b2df4d8c05a103f7be75c13d0b54866324de9dba1883f770fd3f81015bf16c3fb5225669d251ac83c35254bf1c12e8b06cb0818914658d7053c8335e1698303836aab29e2fded253e19123079b07eab413c2b0d5272d34b83f4dc1307dde29c713b37f52028e6dc468167187636afbc47560eea947d682f77785d662ca3a6391840405c3e2ce21a290c05216ab45d5114dc4879107a02cf0bffb033e6aaece30316752a01acca143fda62cfd7ce11e9f86d0366c117e3fb03ea72c31c3892f84e0528bb940d2460aba0b82ed430c723502cf3d3a195bd185c8ae023a771552fd1be05d34a73dc202221b14a40ad6bd08ecc3f2d367dbdfbea2deb3c3a6b60bb63f07c6e556c492e5eb6ea0afdda683b4d7154ffd3cf921126a58f3146fa8cbd7dc634bfc7c3ee417792a0b8dd8613d21aea607cf211681584cc8eb6d5adc3c232c93c2ff8880f2a5dc29e05e69189ebd176e1f7446f31f9c46364aebae1aa6b03749eb88d91e2cf22e55b608604d4d216bc708dd6b75d7607c81ebd3bfe7fc0609ea9cf9d90fc3d4ef68056e43f54ba2c254e1cf4f4534621348c8e688ecc5a29c5b52a52c5dcfea33aeea73ceda80df9347ee9d0217be5d0ecb7c41c41859e3e2be6a5c999f3363e43a2e9f5f5599f4977a886b1c92d6862b4972e3c29bbd5563af4d1aeface43c7949fe3493247203445bc07b44b28707267c1950b90f897bfc38c50baad75fbfd84f4dd91f87ee47ba75bf514a464943b0e3ac88b910d65ebd9cf3b7eec568ef0610741fdfdf037d3417d836015ea6fcaecb0f2297855ba5ab6e8c2767a5190fbba4578c28b1dbafa16d81a24a583e2cf4a28a0af3564459512a336b54c8de2a58af650ab709cafe48eb0b51319f9fbbff3b9e48ecec71e3060e0ba05163fbcd7529f4479958c628ea8de06f42e34fa83fe8d387fe14915d2cbe6a5db69d50aaa5c6f9a78b00cebe88b8da6b407eb71b214b9f3445d752f2032bab4829d74d0414ae2a858da91457c3e35e124c3fb99afc9b417a2123e4892fa327839cbbdcb4a06ecfbdd619fdabf40a7ef545afafad10308475c53804caa3006f5618c2d519b6bc989744c25b889d81b16126423b9a8767d10eb3f36a797330f2078d47d641ff7bd5eb426c871c1645c2842fe8a97e50736640ef20d0d7ec5809d8c5214138d46cf6213e65017af8a7b4511a99c9e1b4cdaf2b67867adea7188175de91be80959ce3f6ae0f96d12cda470057065829b58201e5fabcecbb81426abaaf7bed10e289cc15083a05e1b7ec6fa7592240e0c81459dde5ab81d4b01c000fdd318b60be42f95595ad906020e4ad805295db7891f71aa53e6563ff0dc0a4a2db801b170ebb6e91ecb6f5a9d8c1de25687ef826390367d081ed18f8e6b74509c8a22a5e5b56b228a537e506d87183ce3efd075bf54ee4302de20c31b63a02de125dd903ae9882d39a7dd317262167eb2b403e0d217747f799b08b4c89a2f50e23a39eab026ff45e5a902c18e44aac2a2d9317de732c750ed7f00bcd0db591c384042d96ed1a6cd42d796dbc9b6b1f790b48288abc1fff571f4aa7aeba7d0778868f04f1bea832187644b8216382f214381b12af447efc5dca0d08e38770afe6f312a4e112a5afb65db069a2963468cf5e1b1328cb1dc7ae3524086b43c04a1632bb9d59c48c84c5c9123a3d92baa07a21efc4c50332e5f039510d34e60805de6f17631c47fdfc7edd057e80e389d7496fae5e327c91c8f5b56252bcc85d8e0cbd6f403dce6978ed714516a4971d4f9756ca3d016f37e4a4fb107096c448694e6f364a38cdf9de26df77619acfae994f46ee25e81bd89d6c9e7449105dfc4935451e65c150837212f50d400feaed348650b5ac01fff230c748fa7c5b603b6c1697f0e1496a1a7bbedb51189b1af87f0e1be889c90c697e0b214509bedcf1e767fe491bfcd8f33328598fa4f5ddafd5a82b4406eed58ec8a9d5bf56cc68864462da86345154b7e1655e71d7a47305abe86b37be394072ac22f13dcf78344ebb240a1c77f97c88113ef85bc8587e1dcc984eaf37e189620b99c0452e32a8a3271953ce9285b34fcaeb3f75a83a891c2ba30fec3daec963aad5e332929b772e68872cb320b21823c63288c31dd322b912cc2174e769db3b01f70808925275a849fdda0d98f37dfa37d6af2d5d71465e4978550471dbed08fb447320aaaee187b0dc04b900af2207eb90ec01efb5d5d2365272392a52843dfe4cd469a4b8f9871cd1c9314f053b807c563b07a00b72f00d480ac9d4a72399ff33fdb4f2da5fee15c54b994f968519b0f3e679e8a5c9e32aa518c49f91241c37ae1fa50d7dcde15b57fda202ff92cf0d3231116b51be06db2e46fe789cfe5a1a35c4f51746c3afa680ffe5a83434026d31f890b3c1763b94d543c3396590344c7262302c2a78a5d0c0621155672a549167dc0acd2a099e97832d83220dc4c31b9d4b5de7b991b2d67be8db5c2c2b66dd40fb411669a680c2493fa6567932c4f22804cb8bf83cd4962d7e2e82d12f59e2fa0c7d834cd9234b4e076e85e86a08448cf93d45ea901016cdd762b2ac435f06a99bc782d7e64384d9313141b37e0be4cf5a4e4c5613c28937953a53a1f486b42a13a90457f0012fcc0473a36d3165b7827f5c17e4b121b5eca13768d28855759eb433fb62c7f668750e3210c81c326ed285bb5b34fbeb6d02b6e5846a07e8279f744fd3507a1fbd672df22601bcbe4d29986394135bd139213ab3262d890535961b6c333761a0a4a00230e5168444d296eea02b172f6530b551c0b60113e28d0041ce1b9da7413eaf0a91c59814658c34f34cd760ac1445345400ddf90898f394f411a458283cb1fe1ea2216550785733e9803706a480cc29964609cd8791e3fbbd56811978b21829101804bdf097e9b799a72cb1122ba94c889e07f4d6e9abfface02073a59e5123698dd0e7604282e3f6686bcda7143a36ff49e944b3a2240eb770d64b1cc64bdd6dd3cdf2f2321474c8409e7b4e491448d010c49c23691bafa67a6fd80b5101ab225fc50acd13e29c7da3eb7885857c925cbc6fcef289e5600573cea9b71e82a965725be4f4a255da73677fa060dedcc3a4924bb3ddc5ae93d256e2bd465de95937e5f1a79c1a29b0e011fdc33dfc91420b31408c4e97495bc81b8a7522adfbaa1675ca2f1f5d6add5018bc6788145b18b73440048a1a383462b6460bfa4898c456519d0e8f98171a2fb7b0a424cc13c1b71dc9c500a45e9cdf23262d28384c0856b574b4705297d2a23535d652e365439fe1deabbcb9e1b7cc67f75669d0ff2664006be7a52bcae6c17c9aba28717402578f879567825c9ee8178f2dc04234ed4d31762aaf56969e0eecc0f64c582c4030aae753960722eecd71de0d55771ebb3d61b7cfae755264c6a3043765108fc9d6474aa415c7abeae4f4952edbf2ee10372a130a5b1282bc9d73e299d48168cec5c0002a1038ffb2d705680a17044a0051f216de7faf70cf3ca7ed2b4832a6d11216683501021a1545f7e268cdbfde654c5181349851e331aa1e4e5f88724b00e9a5a1dbfb1e1cd122c080fccb058b6222268cffa2e0867460263797c39c1dd4281e9b9cb57e61efaeafa00c5d595a074d6481edc09d1894b37d190881f12418380e11d9cbb209e7e1be89aa921bfa7b1464b24ce1101c1f002ea8d5e7a5c5c4352fbdacf89499febb2d41d6ea4795e50796aa94e4e7d5384c3b11dd20ed39f45573287c97c346118e2b7227b7f7818c145879f03946593090c089369eb09aa5880048e3f0cde39a1ba5fd644a55662e48340359e8d89aeb912c5208f7a917f9dc3e33c2ecf5651cf0f842ec49cc450c236a13fe4092bf44a495138d12bedacb8285ac3de32fd1ad794dd6b42db7663a359b2af79d7e03e7a5b1326e319392bbcd631427351c6c48475ea17e903b3a4e2e00ff9c61bedb1efe764612994f6f19593565384596401eea109f4a64245a972cc5706bdec844da6df4f3499cca718422855a910576ffe1c7671553767c3dd10c9ed9307fd1995430c5fb630354ea96ac06cae18cd4be042c0378fbf9a4c4ce62de85f8206649dbe65c8d7abb6ba680480c848acc946e6a3949ef7198dfd68830923f4ebf7fb3ada2afc24303c9b34a0f90f1a5c6a9b46261118011db73dbbb0bdc14ed43cee04c5a9b689661f02017042f199f308841b6635ae90611696705229c5fc68ef3795629ed8770256bc422135c4cd503a0cefffa817caf5d60a23b43ad40c64df6ce42bf73f9496fe316b6cce503f4c8732cb6fd005a99fb9da9ad08e46031d1df57f86de6f8fae399a9eec1fa910d76f24716368e1feb73ce38010ebf93358c46ab019c20405bf24ef052786c8ee2ef36abb65ff61fe8dcd8631869df5ea1c73493d1157d52fc47af1f22cb5d47ef02519f73461f2b58faacd70751f52b3b21979579578bcbfc5def68b34789ae8b4044c84172c94927720402bd606dd5adb3322c650e4bae05d72b3e18438a96e136001affa5a83a4bc716108a4d4d8a7392c7e0aea7d6944f5f23c99cfa06062f5ebde4708d095027ff36ac0423d07e8251843bbd6047c03d14186e143e3c709a2930c146d5fe887c06a2d64e227530790f1c4c6d96b0bf9269a235cf93b214920e79a75fa9f396eacbb9a9b9373ae7a9e9cab256c2fcfb9660669a5551be4ab6e7feebf32e01e30a6397eab64e1f21e9b1ecb5e2f0a2a267f7068f68c7ad62863bfc7af500d4c8fcfe1f69140fe48f8e045dee8bb1447c115075bff6cc7eef8365767996ab3193553023faa7681f28623fd9f9af2b9eb86e14e317b903147f5892e9dfacc2a896849660b9c93883b98aafdbab9b66d60951f0909d1f823fd39cf0da3f6de2d007a9cb248a661dce3345bc948a19e0f08f020925cc60a70948d16e8a481b466a381884c7b7215443f848e91591bca8724a2627e6f9a97258cadd9f82a97ae135a89b850099cb02937be641e9c0cd8fe75afaea6411d1c8c06e23e4a12b38f12abc9f3a9ab9142a2aa67bc25a883b75853d91e48b7635919c9f4bcc092b634d16c16ee27a215e57d88fbc70503e6983b3833d27e9e15144a2d911db3e19ca5dcee36d3ac8624822fd491c71447ce61a8100b62a0503a64a9527157eead45c1637d8a2dcbc2bff23bbd83d1be58078f86266bfab6651f50376cde54137926fa5255b25e88dff0c2133426ea8d24c3433e53b5611450be28b6b3ed5e557fc505dd6be2b5311382d0dc2bf7ab9305ab3669e13c79b346029cf0b16bacdaa41560003ce7eaa0e41cf6358d1de64b03bd917eb77e6f8ae2d4edb72d5ad5827e06d1aaeff003c6e8d5e69c12e5dc243178fbab31e5c57ed029d98a2154548a62ee4d9c810b07705200f1a55cc56b6b8c82685045a2bba97969d9591adfa93f1898380671051f9008baf0c062db7c17bb1c484a18b9d3244dd6ec6d09bf696010595eebc7ca7d7e73ec441b5adbfa17743c83b61dc7e57817b07dccd2dba1b7ee1b8dbaf281345bbadca73cc08b4a83f972476708c20842bcbb4db41f620170caba1bc118f761b2eaf4e1ebcc88643826f20031883518c2b098e11f55054bbbe39faf359588d7b24dd6c5e58fcb3b36a5ea140304ccbf161e109935678f9f1cf49bbd896c9714437d2292b742b3deb96852ca9d8dd80aea9f336fb4bf8817a02ef1a0249643c15c32b8f1e7eef5113b96a022e24f43f8a004c54bfebaac514e207e1f1c2f5d4073f6d24381050283aba7c67b2914f6106ab7b2143914a5d8688e6408d4ecfbf551bf80018a9cc8118ada4b29e3ec7f95904a9679abdbee9be3d0c0671365a6b926e81d8391da928ddddab8b59a0ece2355f4f31ba2879fd5a27b6c2c30259f5004bdc721d2dff4ac9219a9701becc74ff5454a23879e9217b2c3cf4996aea6ce185919063186940b32da6f1efe21042f5ec6cb0a6beaef310182b830a300b931a383a6917b7396a9036e5d67580feb4be08c71fb371e0cadb75a1a91452ad1e148602f0232f0f39ae723eb7c21df971f25229d7c1dae104bdf72e36cafd16de5fdb94ad714b8241e29d1e3836d800e622b306c26512bb79ed82c48f42f8238b09b43c6e33e2262b5e458f06d4b3e982e19c931f697a5efa6ce0fbe59b46bfbf019f807d5fff4467648b9121bd3045b832e842bdd0706c24080bfbb33f9fe21cbe7474411b4d472ee9f7f2bce5f16df2ae0a439d957adb20b8bf30b1e2e79c8bbbcdea7e1510cb1d0e7447a31e285784dcfe121e06154c2c20a0d78119794f592b6778db2a820f236e77e1ddbcb3e4a74d765811ad8ac025092ea76ea38192c9c358910d6dd3e5ff5bec9d7149aba68a45afb01bfb2c0de7bc3730ed0cbeab951d7960ea1f4c15410817879c36bc7d8333fc5d7ae3bcd91b957b727826aec21a70b2f8400e929ca40976da0ce7514ae3e3fc5601bede3ba54118b9d2db9090f1545580b96b2c2e155293f8b2c106c0f7c8790e6ed12a459caa686faeefd487b124511d9b6547b8adcf6426f22031afd20967e1d8fd2704f1247faffb6fda4b34ce8ee184664f1a61b537fdf03d8539550bca28c6530cf25aa833fd395f59f065670b695027682cad4377d84feac5e386d3daf357fcf76cc3c72222b4ddda63547d52a18b1f3b7982285ef5998bf770d3a1827f2c59cfcfbdd3833cb1bff4459a0ab734622efb2435e3ecb5ef1a0b36ec197e792b5c745401ce337e5830fc6386962b934c316966ec6a5de1f96dc1544100911058522da840d120dce8ecda327642220e406746a20b260becef1268572ca36cabf88048da78662e7b85dce366f7852389713c533c53319b91671b804bd7f94196c824f641d3d7dd852048b840270a27efa31ffaf4b84a23165f5fccaab1184545427fa34ac64cd3795f565399a2eeeb69250862c32e390e8f56106196a2828a98573eb40d454dbe21f35b8811a24dfd5ca22f3f568920aed63370ae3c5946d3ef17af937b8e8ad850b9d81188ff8bb7cddd6e8db0138eeb59d6420f4761ada21fc63166952cdae1b557008b3600e2667a4651966679ae22812dc056770d50f4f437a341cbe409e3b4f9b26505fcba8de96a33c6867ab76fcb89ca46979ff9d0bcd1c4ba0165385b2715e04329de4d0c8851435a9bd7cd1168924ceba20258d14fe3e4115f80dc373c1c7a5865590c78158c017b7776df8e548088bfb6b2ed360411e29f4ab3ad6b6ed8bf93e3087da7d4b262ba84349486300655d7515e4b7a48630cf727a1abce8d668fe54e853fcaf8e9584949947c0f4e5db92ac7c4cbad7fd2d37591c282d63225b05cdc9bba50dda6211f713e8b94ebe3680b8d136dbd50a19370a9652250cc600fe050f3d3cc169401bddca08a508acd4facfb77022e91f175e5bb6ab6c79f5a56503bc43a41a4c01fbda883f2864babe44759731614dbd6b4e6d09e3372dd700754b2346148c3fe6d8903b911587ae53b7e9268bc0ec10f5c7959c1986b4396062ba2bda4ce52d76064ba8da62531a619e3de381adeec5973a3ac3bf283cbacd3c621c47d51cb445ab0b6a641fb009fc6ca71ce68c522b614e9b64fc296fa443c00b4a70d4a90f302b4c7bb45f3619888d6b6ef81724ddfbdfb4dc12726a7051ec1f94f9a83df9e4723745b612fa4a11cf046bf48b405d245aaea0c99fd270286288fa52c8dffec18cb8357bb731d050d101e56e312b7c403ac13964e3d9233ab9d86bd16f4edd86b7f41ace026b8b47b139b24f5b2174529cfce2644789c7bb7629437e3a073264a27551da93d71e5f47dd47ef4795ebffc8c2f8c08179a99d8d823e91c6122d82fa321954c94e36cce86710888e691bb857a979cf27ef861f7000a09215555246752b31e2c77b19725eff59fc8dab8036a986888a767effaa1fda588c55f53bc22fdc869e3b000f03a7daec319d78e605b6b64e543176886f1889c49ddf750172d29c2033019feb9226f9fcb8ab66e836715048cff5c21b93de0712dda2d688f10258cee063952c21ad0575c60e8e2955d8b19009f025fa70e5daf54b99ea0d003ea333af6166cea61553789ce3c3b550da5ae5f813ec84608030cd2e30863043ae414ef656eadbbc939e1af4b89f544b1a4633b48e4a2b234829c1a43e33f95219e2933a60a4fcb32b417237f09834ee844d9bcb06f836240b7fe300f021e574ad213e109ca08558a155d7af2de4d070a7b313837b8787f3d2ec1a04b6e1e495cc92e06f231aed4d71e462dc598b5945b873441aa1a4b4d29084954f644798a52a84b91cf607d503bd976787f38ed2434a13218be227acd06dc308d4c8e1c105dc4c4c708a2a7150bcdf6400ffd66e4f1c31b3283518ab44d010249951901856c52dcc252df6c03e1dfaab360b6f170b74445bc35eea5f5bbd1a3d588d8b866490337431376bf3195f43d9d74210ceee95dd8e03e665ea4b5eafe6d8f5c4a853f7cf6659ecfd840f522bbd8a4649f41a5e6b29cc6347a0e43b77326e54f3e884ca974a6129bd8eab341d0cc6a79b21d1229483dd57b15b3eae10eeb3b9d97720f5fa769682954dd2bc429abb822bf3bfe90ee37f57a6b9c81fb8f834b0eb22b02e881454696b91f1ba4511050880c748d425e7d872d0e3e4998b516bb84f73d51c49f42bcb820e05731288863b596f83006f8eaddd845c3922c330e05939e910877f82527d185c2634f7917522fc5ad1da16e575ea82506048596732ea901472aa26eef7d3c3f880a9eebc93a804fe2a79cece0aa18dffa8661a02aba78ba455d92ae7f58c8c32f5ae03090f394fea32a6df96c94a5b2a17cc8f08fca47ad676e1d20a065a0d531ea3796f97806ab38653595e25f3b97ddce5781dd1d842ffd0173f74515974b464a7816fc511a0d919301cd853805dc88f87a180b1537fa640d914b3cfccf705010e413dee1e8fe2f08fc0a4e5cee795015011100350b9a0212d0785b954c603a98ca15e5616d6504ffe13f2f0140414f9bd03acff9a22b62460dee481792096d18156b7d0314cfcd7fda841fdc69d004583f194c53acd408605678f2c385064e8e99e0c9d5437fa34a302bd8c093cbbf52baa43f799839d105d646691b9f0ab1b53dc29f53e81148b2fc1bcdf74f0d11e607a220e234296d34f79f12e81e2216f119340b7302115b06e11b5cdbea0cba681241636ad700ac0660ad343367ec29e7e95406fea1c247cf610e264c85af6c5907736969b62a064dc431a4f808f844910beb5216eb2940d819fef05a303d6d9194a1ef1a51b7912f86851cc9a202589449dc19bc42d43fe826c3c954a286d4496c03894bf8d0e21f193b8f698d35bad486bbec1cab471e8bfc290d4afc3f34e9842aaf71ce48296de050a8aa35d5e8824b4a69436fe99b650dfd36c1ca6c67a42c807575b731341c5f540aaa3df20d1e677b39d4d98c158011e0884f1e9c4c90820defffee70136a71ef880340025a529fc11ad413135b115d338af3dc4490297d8c9c115d1b402998614176f57450089cb4efb5703ef813f4a701b64060330cde8d438217369d0fdc4be279f05abf2cddd0fa10207fa2997353829caf0158b558b15778ca100d554e36a3ed8bcf201165190d48ff6240ce532b5391b43e8d259fa8010c152ebb27e83bd878b3350baadff342a4f756932de51959c0c3b0a4954b104fc183ec9067c9ad21f38678019698feec43caa03abbd75b758c93c65b69e363704916476033b49017f60d1d2c531936848f06cf98ea6ae1659da31339f007ebcd17c562aa3153e5249505fbaad2af7d9d23d0cc16bca4f0bcb1ca082a113348f1bcf8965b66b4bb3375d508d285802b29d43aee4984d4c6a05bfebcfd8b67b1757484364d334eab58e1a541da68aed141f56c6b007d12f8036c9afc2b2b8c8d316826e37015cd9b96de1bef6dff491e190a933b526c27bf2554169d1777d920d553f809c4523ad9d65b7b8cd6036c924104aafcb811bf909a0add6ab62f28238beabe35cc59292f50415c641b4c53426c2e52408bce94f08a4aadcffcd9d0c514ffd7a9c854c1735304980ad915eac87f35306b009073a223c825cf96c8c5633845227a5457798d51cd8c5e9e48cf01847f0c0ba4ad257ee2a6fb988326c81228ea06d58e544eb0e9738655b7f7bf106dc4c3e27ccbeaea2eb7202560a1162891029cfb4d18d027b77fddaecd4490be99a08a9f55174efa0f0442d8db2407fcadecf504d22bda57eeab34ef01c18cab6f1b6e20da9de437e331174d3f623419460c3445663ab705ff2fc8f0d914b63080e95285ed746e5a5c3cf30aef4760b8b116b10c0e4e6ac76ade2b1195e4a35e2ce28c5e7cbdda57407bf92f1b7dc2b1019a1f006857f02b19aa809c5e7de9418cff9a4d52b004fd833960b8e0c019f1d877ce71b4621274930cf0c565adb227a29485c39c72f6e7bd73070615256fcc86c320f9f36b60035988fbe8188da262e6b48af386c965b44c0a527388081d55b23cca86ab14a6d8ba92850e82d9773f97ac48fbf14db12fa45578e77f4cb37a3430ad7add116697aab79eb7fe6c21e40229bea0660f5f03dda12b32c2aba6d2ef1daf21356551bdc5a9372b456ab7ae37627651a4f8f19f48f34e1dc9e1a2aa2abc6e323f3792567aceb31cca295fe59b8eed102b1a36f140fb5dbd4b604569058fa122491612c64a60c4c6b529eb0025699bc96982d97082826c6688b931f66cc1771a3e642795ead89e0c2978cd7f420ca1af9d4d640d45a4b4c9dc6bfbda01b24e316f193491478f2ce15a562aa22d1e61dbdea8caa2bc5d707a7302b4e95fcd3f1bee6c57a182533a66c040a30ae79f690931649cfc566fa5bfcce99dc40a154da5530bcabb8e8c20bca34a5f1b156dda26930c9dad020d61ee600b7355e8474a980a43a6ab93ffb4144dacf60f16bd26d94c54d2aeee52f259136b049866dd4fca35115ee03878c2b683127533d55bc197c9cef646cedbd9ebb55ff5ae0efed2d990254438975c586c6c398cd056e884b4e3f4f0950ac26bf69d49e3cc10f573fe8c3a956c86379247b1d52e36c0ec20bacb328e92ca30b2c1c9f5604f68f57eacd518b421a228dd389164b6b1b1b2e2574fb77594017b1db5e7b7d4a2345d6f2ee36f17f4db0584e834d31be55e9560239feffe3e74b5e835c580c50aca768b4530179f2fa7b68f6aab19f16e7af98a50698e655baf62881a6c788815f71185e2043100b5c05b81da8e56587bf8f39e5ea6b186ed33773b8a64c1fd05c7d68c7157124e89a4a9aee811a1e4213ae62e230b6f76556768c1a223793daf416bc7a612623240c1556cfb85ab74f825b035f8e4df4f83c950d7a810ede15eaa69adf8b624dd2952578340c6b07caa413985652edd3aa835a9fdf4262b0c0003d2d1a2d833b773afd2bcf3b41982c2d012f1c37b52d8fdd8957da2be2643285f3e42ff0a0f7ef3522b622f910c3c23bb1bd3d926ac4d8f2c7c8a2488d92c596d41fc4d9e5e71d46c54a8ec21541bc024ae4bb8cc1d5f89ed9f3f5d3e04341a513684810d3ba4d7173f920ff92155761016c0badb351cd2c72d601a6cbedeee7eb23ffb8911323ddd6c66a3d230ae1c425be6894cca3346d4de5c149c2168ca0f22cdb8400f441d257da9cc33b25eb7a0d21781fc2e31de188a48aefa346afff8c0882d6616c6964ac6b8695da6932c4b93d511ab4e3a073fd02e1af02bcc38b19cf077d832659864fe85c60d97657d5acbc6f95adb98850d290d681cc28ead312f77b7f839a561a168a61109178e7fd1b7a88021c1d211d758b7737995f9bbfbdfa9758e40aa39c0c475d9d6e483ab807002b06536cd816ea50d4ae46590ca227b45c8d755d42a64e313b58e0ac134d6dbbd49042b1ab41b838f406f66311be29f181ab432e556e60e6b4f0a74b325261479883b3bcf89dff61f908af05afae9a07d747a1278ebfac1afed0e5f4d1e78a4d084986cd277c30c52031746b5cf7c235f45fb4d383877783372f0798fc9f6ae1463a5052f3b05a9978547448a5f5e0c0588502456d6c7a5f04d93e1916f3ee822f6587f66ce7625cb1a4ad6fbe7650d2a8f6810e1107bbb7e912263f2d667aa399e491eeace2bb741b7e297438d831f228c1721e6d02faa1844924d15949f78ae5105251ad6cf9c05000a1fd5af0038b8f48c27b4964dc39c7aab668d1be4ef059e3bc31f471d7a78ce8b4f0e7bc7f6694bb02cd47fd3edef1c3a3fab4fc75a94ffd304e50f0c31a20fb6743df978f0fe3c805e9ce521aaff0bd548cfe41b570e83cf2249a77e0b59cfd8d94de2a60db497c864ee56268af43ce5d4d12d6e6426ac1ff1a1b0c0f99907209666cbd972064de64cb8f76ba0b583cccc4b0cfbd1f655eeb933f38c30adcee7fdb312572d0abaab60343abd0c0cd0001d1ff9ad11dc5050545a56b9df675b29f526c11ec4a3c5995b6d4f9f8c6d35c4ead9776f767bcb2e11fee333db45e68ed5e6e1a638d8bfe448290ba5541615ca7bd588b151b14d7c4ec92de3c6975a5dce4c28783d7b81184ab2ddb303361fd23f976178790f5b89b286fa3d03a3c389048820946e4d9bb0265257887ae684210ee086ae911064ff145bc47cfbb5ac586a45d8723e4e466a2c906eaee3ff0ec5836f78aec4e97f3ff17878346b0342a898dcceca0625ea0d509181bf337b26f83c3635e2f09f250492b37d94a0786a7063b01a0070f41f5472e6174079c7f85ddfd62f2a2bfdb3b5914612fef1350690a92e68a3b89c0cb407524b590136b88ccdbee3aed224d483b14d246241825bf10ef56130e9f4823a5ed0bfbecdc3cd496e82a9d22f2a2061ba4625095bc09751e9a1c8b4f33d66a41ef4745dcbfb21edbd88f183e4e3d415ab1d6084ccd1e512d8d734807614c1df32244b78038c2cb7ad22304d9c6b32f6a6f7181307a3432587691c586cbfb5f75de890060c9e83487e5fb3a7982153c361513b9aac0f5a9a6f0db4b33ca49f42014d7e23a799dcbdc10f7b47ca29bdd3b5e8762c044da4a189b2ab9b70d385682053a0ab494af55301052cc949e8cb8138c00d1ef1b5dde7568285c7bf2649eb0283daff4b1a15e68cc0d93300d831fbb007d86e2497803cb0f8940204e948c613d5a75652e236410c9646a9a3648c92e86fde442804d6bb6e33b76eb48059c7225c97a265ed2cb91be4e3a5dc49e19eca73d5c45004d9c74dca913fce614bf05edd63dc166d902fb9b255088289d2694fd5339760815ce82e764702be9c74f424a4e0a8e1d35204bd1cc257ffd943123eb83ca4d134c4a8b854281f6bfca17a220bac26c8ac57bd79e0bcad72f5edf10de033272306b4a58c0d3151a9e4dcbe4a1590973ea9df63c64a5bbf52252230af3e16ec716682aa05c522b002da2ca64858cbf0802eb3a44b6d5c9146d57d97ac1ce8b6865bea1d3b295b6dafd0c12e2f25292db06e8444be80080ca740b7ba863ed6562eff9f7fde1f681244f6dda22f3e12ad7a902bb503c267b788039b48c675f88515abf1b7b4f30f5592a4a9ee22b1af3ef43a80a06fe1367dd4be80a7e857d510664adcbf3bf803e9da036de4600c0965e33b234b1950560b00224b339c8084db411b2813c0459ee02fa5c6ef2f4598ddc623fe9511a43833c8df17d4bffa765056f82c235b2b4f1a45a8f61d59cf00fb2c4745b77509fa453ac2d6386383c320f7241c72d6c18e3d184fd44e0cdf90712f80254068999478e181b498d5e4a1e504b4ef81157e18e7b7e81681495ee48ef1075d1a15f487277f93fe5afe22bf464a2b0e05731988e22ecae1ad4496bc2bd11217fc5bb84a9ada169c27038a3fd5d6aa0775157575980d08aced3bb5da3aa817a65b45e34b99a30633892c89cbc7aba2edee80e842b0ae803734604636b77399816a3f14630391ccbb9517f28eb81b04c5d3e907f3ba0044e8f6577b607e1b0b3197ef092b1cbb7c55833c1bd7485a57a24171ab61c4cd9dc7d417048c58ed6f1a266dfcbad02548f5ffd82f75a8464eed66cb3d9413bd2b675a2f1a765f17afb4c86d455f2214b70f62d19c3f2202e5e427e2d0d0261ff06f370335a3a2382a7f0365096bfe15deec0f765c8a5eec66098e6f8ee03f37c17d8354ae5fa2f4d3b541a2a5763a28c252354fcc595f9ae6f3520d317a4706f30b8c1b0bad3f72c0598934d149fc9c657411e3e1ae81da6d70de0cb6c1e4954391754f3bb902c93b44483614e7e53e273b129a61eb087dce4ac13a559f638df22f3813b352902625230deaba74ad42aa94c0f50fc5131c6a4789a8db0b2d306b2abe4b970e697260e1cb0256d849b8230d8d5ffd0ea49ee41400154cc1604ddb076b5835483fa1ca1f3fcc0c5ab2d4cf1cf5010f9dfe3bc8634c1e185c8e34ae14bf44313ca45c3004a2fe181737d3d20edad55d0d8b732dfc98a613584df27487214dbcf69f330be026f66ea3d30d3c30d6a92f96a4cd47c1bf074eb67034d976074b96e6dc1a3f570af35da67df34847af300113df74b0f8a5ce933ee33eeb500b543ea5b84e52ab5aa9e9d64a574c53ea5345647c2b9b6c33f3d0941b0ff47fcf31acfde18a438869167518cde1f837192f70c56093118d35b4302f1e4ac0b34335c5335cfcddd2463fc93005a1ef73efdb87d2bc15514ff4fc5e249dd9e98b8b29dba3e54496ba8955686119865a0b0686d21b074c235bf4205c4b3e008745a13187291c341f47985633a164063a847c7637622c6bee576a307e0e3a2f3c4438668441de4705a1740f395ef9fa4bdf8f413a27037bf39cc84f0dc6e0406e45d32e33352740e016411413718b9b1b2496ac78541962d7e109864eeb0c824751e92ac80f051e362a8fd05789a8e616f50ee541bb5196835f8487bdb1ebcc74c3b7633cbe4a179fa32b48faf811220b78ff216bad92c5dddcbb2f1a709183dd7cc20b1cfef095c82450b5cf88e58009064fd44c58e09e948ee2ec952fc128aada97544bbf253699dc1506ad3c373687c12ce3be66e9d51c5ec9735808b0664c88f94cbea079aa8b037ebf7fc4aef3fa63c5f18ab8170488984bd6fe90cbde7e9a2771733634f800f4a1d9e2bb63212de7092927c1c44042a448abf821886c4df51b2953ff9d435100ee185e4b9240d4b9223685a4b1cf1c08ba95c01411ae924ac94688d1878756c328d35c02002316655ceb78560e84d8703a617fa37bf72220640b776aadcdbe2f47fbad8768634a74602a747edc6b04071c87a71e8ec5c4ab6056c32086709a6976e9090e6653bdf5790f2421f2e894303f8a1794bd83197c9230183d02fb706df946e16b4d910a271092e2d86d7f50a35fef6a3b27faaedf3237ff6f6e8b5bfd518722771df15a519e8773c1978b11634d4a9cb799fe48b3bb0e51be8b79f32109574cf62f65a9618712cf973ce1202dca4faf806122f06d1d3b85e0ce81b60eab3484ba57c5cfdd29d3a42256014f832540f9e17dc77dd1ee58cbeea6e35a200e8b51563f766f498bb174014914f7bf1fb2576231c0ecfda42f418a1a263dcf43476acd9f87d118120fbaeba47092aa607c2ee70dac4f94233537c9aeda25e94f2025241c08abbdd9ba47b809c45d69a4080fb9d134ffbc492551a2da04c0a11d86b85415ffb42d043384e16224688ebe5c249aa443e356604aa14342dd5a4ef848ac8235ac9127452cf6acb90fc88144d00483fc0ef8f14940aed2d29ca7f5e6d0d8f61ea9160c2a1ef81f8d737506d35710388eb9eb208a3fc9f60061d9ac4b3cc0a4b3637bb3f65cabd6e691e24d384786ae517680111d627d46e885bde946093b5a2e71c5b8de42a4aff5b312aa4aedbac1da50ffab871640265772efc249c0641f36e9e2285fe95e60ad847e3cb2ad7dfdf6f2e55e2210bf032bd67856f4cedc4133a32bc9d91a1f828a3bc57e2455f0e0d261a9ded95590aa62f65804eda2341e99b5d313bfbd106ff491bdbcc24ffab4e4d74e4cde38d82bb5195b8131c6b8dc5b33981c624adf00eea6786e0386fa236caa3ebc3d082511348783427e6bb27aff07a2e924e4706cf6a156ff3436d3df59fde7c9923e372f37fcf53ce41a9626b714d16747e612d2f658b868a8f02725847e547b9c1c80d4827e4fadcfef6de2c413acc753ff1874404a20b37644ddf62f82973c6964458f4bb34a7bce6f00c6a2beed2a333acf614145ca9702592f80968aaec133205347b4215b42367c915f998e9ffcd3908f936b8b2ac8b0b4c549ef2b1c0c8d4f909f1908c4349f0b02f1779a7a252cf641c924ce411975eb0d5284eaf56b9c691da39d69afa4773e242dd9fb7fb54c3a5e91d6120adfda147808873e8aeea1239902f2c7356e617c34612abdd2f5ebb116e2ab552499950c9854f4041b02343121bb791a5380d6e7b8fbbfb28040b6af2893dfee18cdba4772aef86985c9896b3a7710e2dc5e52b05ede4063b88eb77a259a671436dafce09940dcb2196ea0711c0724b0f9204cd520479c4b03a8b2c5db5e1b3d035180b2d9e8e52c549571628a75e79ceac14b45f23790b5cb983501217111f9d95c08e7fa8a5470df1dd2726d8798530e05b343e1d65dd69bfcaa8eb800aaf6acc68e49c2bfabf7255e9d3d6b008317c6546512fcf5aa266e296138c1107565faf63d4f7091c6d02d06be048a0dcbd0cd63ce3b29a864f95a7ecea4cb47740db472f9092ca2929f14642c561b3df44310be54a4ca4d8c25c9884552735f0feb0543fabdd2efe87c6634b50323a480aa9c321cdee1bf516fa26919bb1f32ef70e26b9ae8d7d6f15a0583445437d07dbc063e3b5e16487868306ad0e23e390c8417851460253519c222cab650341282149519606aafd0469a1ec5f8df91d8fa9145b6777142c74beff076d820bd2e1f35f697052c5bdb75b931052f40173deb0711a723000316a8d15d7cd36afebb3c53b57ae0b35510a1b67d2a8d80a57813988aeb7106643b0bd721490b6efb3c492f744d8fb2a3d887d07cd31421d41cc774a334938518719f1a37829d10d6bdbdfeb1c3dea660725ca32745c635a1d5d4117a454897431e6fe375d9a9029e6988aa93f2e435f89afab4f730b851a2a7bdc4db09c707a66bee7a1949761833c38e6ab0c4b62517faccd9dda4b96973790d1b3774c3e2c3797e33fdf344468c0517feb3a52805d114152f0525b78e1c7ae56e7b32d592de05e293fd2f9f6cf0526ca7b31a05a650f1beac619f2aea424fd8c488968cd92b42e753f0cdd73fc35c69192aa2b29233b2d5fd2bafba72bef45e1a8a8c63d809542cf3a74f5e6ca957dceecd16465d12b856f44830a36d0d9b375d500e45fc879dd79c6727c1091d0e62375e2223981186d0fca8425b9d46d101053cf07fc0a89bf1427e00ce344a6cf128fbf97e5378ee3f07744addacd1c7c78fce6a88d8b2846da32d2e4c1efa512638d9c2c86d740c0c20f12c3f7cda020a0c155340b2fcf693b885279d54b5f1f7d51918e35480ce4960ab0d8af08881715569583694d56be5b4c7b4e948a0dd3ea7c1bf10ba5351cfb30ffa8d94f7eae7cb319c5f5e803c471639c20f1a4cc3ea27019ffa9c6e536ea53c11ed9d386961c8c6d4418580d1ac728e80ce21435274228dd3cdbeb8b8c54f40ce062e8c2c2fdf71843394ffe142b2c92da16ef9524518465cef650d413da79b1baecc91fab7fb8d67dcea06e79a0dd1f49c297bde2916f07d8dfcd3a3615b5d8efa41b09e6bc4b87b0200e172225b58b9a720a27cf7f7ae47a83a3bb26bcb1ca28779d7185669c1c8edcfafb97088318c6e4fd18fb8f6fb30ed65f3af8b0bdb44a32b237a7b3af9bf9966b8a2ddf4088e7b6ca818e67e6cc40dc3f5b898f505c71d7dac63cface34d8ad57a06d6544f071d6bf727a2d84b58cc0bf48d122c6457c36f1d700bd2cacc8df6e041869292f5c54e92df3c6103a3914234e956fbade2d51751086c64342cf012f785c9e9243fc94a576e3e417a1d7ca97879f1d7704140b213d15875f6f8ab98923cb0fe8d3e430a8c6b8427bf057f8be528feae7a3b554f58e052a029a21fdd3abc8b41b8818b4c5b7cac00d8c7e6c1f41b412b8075875626eef4de3ca6810aeeafcbf80d7c8837324a1257ab0536632e53102b10f9331aeabc4fcf6aa4c948935ddd28ad46610fc334c676b75ebdb7ecefcb1c4079c502639971e2d54376ea1ec6b943638a161a4f69b1467221674620d2a93474f0036c7630a813ac65cb295d300b8c0160045e94730e93a5297e321fd5ec32a08c0918c01b0ce98890d3981eebdb8ffca60f26552dd5a1f3b4dcb8778e65730cc2420f75aa9b229f4c2ab331fd8d5d871d04062ddf4ee004429cccf4bcf04dbef69628ce580ae312f053386c3b55309a74800586fcbdeab4c18eb62fdd0eb0d97e21278129e1dea1f584c1fbe29b467a232c70ca1b4852b957ab8c935928e0adfa69c25af27594a0b24ed6e2f919a6fbdc80428357d43782746ac982b03062b3f8cee441d8027fa1b9e7aa48d5d208b0b7293248d71b34b8c49a9a3fc747833b926238770c92cab76e83160d87c5b5a018501861f4f6bc47581b33192d7fcff480e540e1af9e8cc07a0b1e53eff1538f41fc51ba05e9759865c2ef38cf8d93a9b31fb9e971c4f33e9362476d8e82e2380968739ff9de55ca2a36f0479eab26b7b8407a40c8a34f1e1f5401fddfcea188898d475762781c36150158372875451fea4a6767162193c3097edd9067b7e4c1dcf11c538c103f54d8d32b2fa241a4a880ddfc5e22af00ab111d404c289eb80a4f4849a54c7a6fcb4f79d079f650c9a71ac19bfc4403f8682812a910fbfe8145a9b249244d0a6583592f552d5b7e6499e0cb74796a5da112b40350020f927306cc8b02f222f6735e9b2eb65807600b8751282b5434c40ccf5fdea5d7b8e6c2ccb58372fa79fa60117573564cba5e532cad2861154a4cff36324feef34e9e722fed8413d460e7522c6da5f8f030c9547518cb9d5c5f55a81bc321875723fa734c34ce45fe2dec5702377edde902da4f34b2d5703fef1f0ae02388663ca405b32dd1f52d13612027e31e102dd732eb48820b1411cb207c38ec6092cc2411cbd0d41dfc4b59c75a9cec0746f3e3be794ee07549fa6a8eebb6aefbd59f8aebdddbbe23fa3b07689ea7b0daf3d52225eb50d0de8998fba6c991085f8bb67e4a92faca61ad489c5c5bb9e7353057663ec7194dce3274df97e75911cd6c6c8acf93c1740a184bd7ed0ab9003975d677d4aeb6378e4a4b1f0043ba7d29281b7b975352de608126afbeef30c1c75e7c0df8fa0dea80556c264490a59f579236274cabaf01d4682f2a263ba54e54e640fd44561749b4530bbbdaae07a65fa20e5f3727f0d92aea1fdd37c9fbb43a4bcb2f1ab2d4fe0e0380bf310a9a518222719aa956c4d5168f058a275a68c9e899aa7539b5d689ea2111c468c212cf4d3b2ae5e5ab08a2e18c6353558eabbf01702cb6e348b682b9c9c0324e5fa8a9f7d120b6cfe80ecc2f36309853dc44c9a714c255834065432210a05400360793af3f59d171da3258d6ec3bf6f254c1ee0ee126ee1d5a63ec43f7e7296b00e14ef94cccac83beddc2c5e228bc78f69a683f54e8a8af0a56289aa468d1e090854a277e11a880ab0db465bb0ad9023f58c15d014ba31e2313d166b8cfaad3527601e98ab948ab3552e09bc359dd79cb491bb7204b2e2ee1b8828009fe8672c9001724d7c4ea06816adc3bce0fd4d8b8cf34ad5a1283ca43c3c79809ebc2e8ca5b7b9079008a3634661ca97b5cf60adbef099255248efc4018fdc4db8285c8e7da46cf4fe48f7a121dd2bfac376cf380f4f8675f4b4aa5e038db133507e899b64ba3b43d0dca5de5df2797b51e7a343630064c8b87932f3921ffaf871f6cc7b3103671b46525cbd8cc30e10d6b16c4e611bfd99019b1cd86e7d7f30dffe3708c66f64aff8fc42af33e67f1460bf0d3b0100e93dda914a18eed5dc408162dca297def71dcd4c8845858da504506737807879b656df0cfcf1c5cfcb0c3e74a9164d8500221993c33dd08d8393c0983a7a292687d5ea5b14f32738d4df77be91bca969a761fee692f48d18cea5b04b35097b1ed12a99ecc8f25bb2d165e6abfa2a3a847b344352ec6ac37d4b23652c50b5268b0e55948c9902b4a4b9f300578f59bfa489162c9d3c357da71e099517d615c2442c82d73c83dfaf417f7a4e383d0ea2517fe4cd979c4f789a3dfc53bd958bf21b0d5ce0f30b52d83553400626b0a55375d85dea8013a98868ed4df67cd83883c459f970d28ae8fbb8427d32a4f3205f24e78a9bc69a8013cce1f671a5527b5bbf1363865069ee988cc6ca80d61607cab4f764116c5706a93fc8d1f0a15109217c5f1016f760e851d0360aca0bc74d174068f7ac4a0f488c5f9ecd35f080887c0337723bfc52c2e1cd12df5da6bfe9d419d03de7ada41ab34a24aa7015871e2cf456030e5a349fa9bb2e521260b06f0c4f07aea7dc0eaa297fc4dad58023bc02b5e866ed193b0d149b6db5dbefd7930d319bc068a294d21054869c94c2619708b93b39030a351029efff70cd868187a017cec48f87111563bd8659f36a01bf9fdff48e7a8e02dbd69126138cf2a461c87e9282396158b4db1cf53254df85febc6389c2a796ce05d18c7c1812801d399c1f9d362045c40c128fe0c341c016ef2bfda81e38bafccf7df308151eea4af0e622274863f381d1432940d323d4ca092f5693e0a53fbcb61d66890a7737028cd7159f7bf64abb73487c1bfcc42c7818efd94c227c39e9f299f4414048d57fef7f7587ad728174d15051036ef674aff9db06cf7ae4f31858cf6e716d8f050967e5d4dcda72a088ef9bf239cc3231e342cf248c827e3d7c8c26d6cf274ecfb34b3fb0ea999a7c8b5380130087f07a62f4fd8f576b88bc7fe3557de9b7197fbf3ef7538fd31a18b28cad16c16ec7108465b87bc47124f9ed6cd27c3679eec251dd59fb0845a6593464db8caac7d3c538f7036a93de4e3cebdd379c9d21dfebc62f36ebadd4e524dc8f81647db3703676231bdd0ac31b16ca0eb9f3d317e7e7cb8ec3af92947c97df7ae26382b2d0719ebac8a3499ccec4ee1551fb0d54fa4b86152986ca506e051c8d2a0c5d2c046879ef593d4f90da2c1e6c13d6612eb0ddc8c91655fa61819a0b3d2d9a1a81c03244ff834fd61cb0d2dd716193fc3f7d7c0ce95e66049be84557c667d7f2a3c6a5298a35d1bedb3013dc8ed7e92c255a1a43b5feae5e179117b53f570d170a46c651d0716ea6992033423bfe6229bb9fba03fd84281e087d2b0cf3fa26ae4b4421defed83f5db44de42667085a44e7939cbe070e70549deb1116fd2656e91332e5703cded6a9e3026fd9b0d011a3fd3eb10215eaa154290a7ede855e1152fda15f3bdcb5fa9f615f615acf68690c7f2d6477ff4f61da6682bdffddd8f4e338c0e14005f36a8b88c9dc9cb1f63a5bad9a912d2a9fabba87dada9a7a86a84a54b0f88f025ff338a11621fc506be51622294905d42ea97f58e5fa0a4d51c278dda4a0950970dc7f1caac6bd05e89c55781c1d0e56ef32006b77af49dc425c2379305d4c25a3906d189f989f2a5b69bf3d12dbc08dfec45dfa6ec218b47a2fa8f7359876827a25598a65975cbf3bcd49349c52a4cc355da43dcc9546075a2a7d8064939774a87d771e6342d9c81f4c2c521acf601f2740f2fb06ae2a1b8eca50aca2c4e8110ef06e752239900ea19e1535f0334257c94db700ab58d26f98e3531dc277fb6b94939a41e1eb6972905e6d195408322a1bacbb4866493c184c61c2780251764d1df66106b9974201a0b8dd404de8f1ade19c5787ecb8971bcff27da672d149c390e8bb26b0fd2371352fcab3b22ea6c2f075249d3edfede2c673004ff39cac1d04bd6617a79567e8b64855c1dcc5976dff1b15df0fef8973a7048d16329eaac0b8e9fccea8a824cc702f07f7dc11a59f410479366c29d01550f5c6c3a63daa6db4223fd3046eeedb664f8b9ead15293cec8c3b285703b135e766a24992002d259b5574b829cb96211a8eea9b2d028aac0ddcba0e347d07b1037b16919731e66bd1dbbfcd288bb6c9bf4e35bacbe3c025bf5a36440543911be1d01731f500d9bb17c1314f2c60b92cca7b239e7ffc4aced24aed9c10888ea9ec8ef773d01715e3911b1c89a9437fe96bd1333cc50bc95fff528f8cc0835d7649516d47666f3f78ec10686f0cc3364d85074df5ef114ce247c0e98345ef96822a2177d314d576517adfdeb24ad705be2bad8d4c450e95b7c2041c653f4c1d523cd84ae2712c6b86f8284da26703c75fe178e816b3421692c73197232a285337720353bb6033ef114b22662162d23d36a3c9716057510285c651a38783017f00ac9dc760721349470c08b7556c020107c4ef24c672edaf89c88102a48a7620bba3ae3fcd248f6a7afd38e06d260eac85f491b9182e4d7169ab36bc70cf0f366401b8daf0c4b7cc732557e843d569d4e550f8760e52eff4e353bd2c22a8a3a6b0fb3443c2247ff62abd7c8f47c892c9e2cb289b26e5d3a241158d8e308bb1c723ea0df99e25e42cc8d2ba124c2d535f21efcee77946269fbc77f5efffec86c062d3a171bd32424756bbc13fc2a665df27cb5336495f28f1291177c4ba23589363e423b040f51e915f60bfa2cfda4240f477b2f5c6e5dfc68d73608d89e2e82887f6e63ede81a9d073b638fbf48f6d0ca13e3d003b4d345b44264a0825b765e55770be2941b226649901f5969192e84e08d0b5d12450faa5dec71aec1dbf39392f357f09fad31731d4913f1db4353af8c129d8fb052f975c8c40c574ac5626a70fb501da4f2644c3ea5a2b96f3e7f5976193e3cc13ab60d96d20c2a61f19a7166c3a2f1c2116a8e53b27fba5170e60363f1b00c312b5ce202a7b3ef49ac0a92ea5bc24e01fc20a7455a986c352e0c494e30c382b6a48a88bff4025be9901dc1d2bdf75a77260ca2b7340a6d215da0c35ed6beb52be11f8b294f234732252c8a0fe3e4d305a7111109ebec805c3f069ac288d69bfc0026137dd3ce3aa741f613dd4e0236d8dc18c61a8a84006e66320098e92d77c56d8655736da0b28e68936ecd1ed61947721ff85ba48a2ed8950464b16095f6e249f6aca1e850153374bf9e2dd8ccdefabf448c3d138f824f9d2d45f7e8a7891c5622cc02df2f8d6f68ce74eb49ea98fdf914406dfa79c5061e62d73f2651fafa3089b03d3506c3415752a25b75b5aaa3e461f09531d16f1d90227ae6b9ec33bdd7d764f76abf7188c43e636763ffe176210722d56b08634f3c2ee7bbe838c89fdbc8e375214152e2be26147f908ad4389e3a9637f17885ce946d6bcf83f0493d663b89d2243d4f9eb2d4fb7881cfb2e1190e4f4ecc5d8b357f91af489fde1238e1c7a3f60c3a325dcd87b16a4d461403df2f59fb1d29bacaf13ce0bbaba9ca1d170bb47c68b1ef6d0b580a1fd9372d8efd276f2ae9bccb6465f196510013a85290f460ab81d2e0832aa38b0c42b8f534ec2e7e26d1b69592cbdd04b1e7798d238e9383168dd683c091d5d39acf935bef1d328953e5394c2f7348fc5523687ceaa6b5753bcc43a5ae458a630f4121843c13303f1f673f1fd852dd0ee32ce5c8602bf772b044a93720e39ce16eddd752981621c9f7af89af4864cc2b4443988eb6f3e2e629fb311597793948b251fd489fa203147ff23ef3a8565faed223a9ee7cadf6fc2bf7241a100586f5af4171942c74131de1a26a83ad47a78ab024ee9034530bf027b979d30f76f0d386732ba5e12c0b097c5893e8357356ca061bf95c556d31e77be019b56a5437e7755e5fb5487c2b713f9ba3b9d52cbf21111ed559c2e2db24a9d37db765102250ffcdff9127c0107b81f03a85f40f1a5f65cb1388502acc3ec0b02cd8e6e27a7fbfbe008f483907d11f8a96af66a9b009896518175fb613ee73df446e6c00225ac2c70b879f4162035c3cf26af99f7ea6568607ccb58984d08c485d789eff71e16618a690926c1c1d5d268917fe0542e5acfe372f4ae597856853ecd86dd4ba722483af59e1a90643a7bfe52bc0dd848454c5d1cf6e92bd173ed18a5a31eb80e4da25a94072c83ac7712c9945b79696f449433ba63609bf09caa3e32e1962e17f151fcd96332440f121e8d0fb8946e67c0885f9c645e70135624eb9ee44443b9c48560264cedd2619ee2efb7022b7adde9a62fe4a6548c3242e2e10633075ea8732b6c20f958e166919c07c4900bd4b344fe1ec8b610b6bb5275ceb39dedf2b947f77e1b9c4fc44dbc89af82863108b8fbcd957f5bb67a0143b287af19883aa7e17af3814c7f506b3eaca5c925af56474c2fc1a120a06b9fb6ea72cc2d5fa34e15d7335c88af309bef36bb5fd668a6fcc9bb47d760a0625083b11f829afb735dd46ac8cd488b7012f4dab57359e82c4e68d6eec578304f2383ad63a6e671a0033c9e922e79e683ffd4601f8a0823058d95cf2a73677b743bbe4c4d9cd3f9e5b6e2667112210bb21e22215b446a4670e9d5fddfe3f421e58be8cc21e1aea586eff4436d36bb66c46606dd3d2407bf997c7a296eb5c10db0704b8d26b66f26b1c364f7f600e301e620d945bc8eb74ca70cb2661b7c24b350b6ee142eb7ee2ede81c2704a878be1d42aff65a5ba6f6e3ca80236a023ff90c4ba6b545d8873e592a26e5c024678bd13742e2c5f0df65e85f8cc266bc232ff320c32b59dfd4b7e130f462bd53fdec6411df1fea959c4b5fb4accdb1ae897f1f5cc56224acbf217a18ed0fb50f66187f4bac6343cc8450f4b660d5f770f21ce640383b0966c2a813f6d6aeaaacf3db6253cc9e4fd8744a973c9bdc06828bad62d60d5e5cfb0cd53540e71e1be4c961d04c9f5cbb3e8b7422abaea80b4564f45a2c1fca84f6e6e87defe89ad584b3d11c18f6830289389793c63b1d5c9f93e056fb2064489a2dab65448e9f0fb1c0f0ee54ebbc78cb48e2f0753a915ff84740855f3df54fb63dd2b22f09b95ae82bc93c6b303c1ff8c188f73960a78ae5b5660926980440de6fde5dc0570d973504bd4322ad8f890dedaa7fb9780f0ffa7aebaaf02898994d4f3333a5abbf99c657480824b67e2aff427cbd4c77dcde7a736ff3a3bae0b268c8df377da05dc198c04347243da1dad4418a5dcecf843b9bd10c2d89cb492c9705ad183211b7e248c111f05cf833110bace23f9ee5f472e1cf41ac19d7950cf73560b08b08a98a734667f9017e6d9df5a055a432b4f9be26d77056260aa4159a42ecdadb2042ceef008f056877d26a3c1b8ec4f714c9c7c8d108b45438e9b39e98b4741fae14fd42f4f9e231fea9cbadbb6806298871fd3f659698d09a9b2d6726f8576b113fece8c369237360549577631f329dd724581e8f453e190ddf86babb525768c0932a4926eac228644487883285baf1d01e0780d06e5e387c920b9e751c0e443987949707174c5e46aef7a24a2795edfa69aee9f766cf342dca6b1d6ec0aae0692fca3b514ed85e0a270a6b5f95039ca0dc37b6b31f2a43c803ad63d073c043c237f1a11856f2208f9add3b2fce9bd8ce9eba5f98c388b4b94b52ed024e48b5adb2599ac4e60b0cbb73a70111d4b185f5b96a6b78a6c1b2d7028454bfb73e7a9b719ca789f92c0e216f2bad45e35360cc29f314fc659126b4d3fa49347c6814290298270a8b192ffe022d6d6ab9ff021a1b4f43d7fe636a0ee8d7653a5f280a939595c4f9682b53f8f370100cb52835ae80b9799d115cc037755fc98aa6186e73604eaf1c9ad6204463ebc85cb459a113a89c78d9df1b2a11c0a9a7282a5fdc89b014d80f27f405b3bb5a97413f7dec3b5ae14fe0b597c1b1d18dae6aaf1cf6e3699e930ab0652fa1cd960e70829707324fd66114e302d828372131c4c932821bea480227a64616018911d545a27503a75fd58919c18a46e5c38b674a299d35258a59fed574614d1ee36f8b81a9bd8e34a3d24c65d5328410ef4c7bffb1e484901cd253a7e80f39b5bc03effb00747165409067b4f39c15ed1a9720f16a858ea146fa9ddac82143649eaf8636abbc07cf06208ff6ee0dadce0b5ca44c8f337cfbbd9bc513ec2300efff6f6fd38e48335fe35f6a08c83a4d9cc9f95f5f5160dd0ad90a5813b9913b8d60302d287a27ca23ef6a50e9657945937a54c1b51f588feccb7a5d13152541d0c842e4096bd949235161eb74b28b58a68c00b96e176976fde6e950af657542c38f94aa2ec99858e205e86c60403b1113c8acdea5932056f13346bc3a287a5efd28de172642de9c78ca263e1357ade626a223dc3f3c835bf29b2e37f2fd824bf3507beeb299ba49cf5f995c7591792d9240b24cc1f19eb3ca8a9490b9055b2978571f67cfd26e797b7c2074248d986aed57c1e1b061407991c8a87041fc9745e58c65096f547c34b21b3033f0ffdd0f7f8fb7385101bd3550571150805ba51eea42e6e5902d6a1341d1d607fee0c11039c4296b7dffd385b23475676452de5e29b919c03b106e541b4d47bc027c982428986ed5404da592ae14fe0a9c709022612a8ab9c2b57914642071f281832d5749a1953255da0b1d1acabfbdd15cbb1f324b8c87090d92147e7fb10b5a2724e570648cdddfe0f8ee2a18677a362d8d2f90b2afc9ec20dc165b5b90246461a369b8335a2c0f4ff5fa13a5648f869855651773cd5865cfde34cb31adfaf956d9b456a1406d63bcc67331c93241cc3cdc2472165bb480d3a94be54db937ddc2db8668bdf6618cd1229955a7bc5c4110e515b03528a6ba4e042c277d253a92b585895843e8a11c76183eac18bc4f6f815b1d98df4443942ca83e712668a9c7af4310510c0a85954c7a00a7b6fd740b8d33215039cfc36f6723c1692a9c85f6ae9152b6cd3965568cc04cad6c00c6ea4a3c2d8888a6f078227e9b57b5597682944e723afd7dcd20bf49d1580fcf25b8a90b44edb4a2deffeeed4815451ef6050e474250d3aba80b6ce2bfa75336759df9a0021ad248f74e0ccc51b50643202bdee1fd0ff31a8566466caddd7d1d8ce23cf669f62a06521a5a997afdafe547a7fe4f09d1321cd3c166ccd823d36e3e07edfd1f60c5d8a3a615f0154c37df22af9ea8d73440a72a3eeef773a19f403ac1a93b6609b2eac4f94e73771a6972aab4dbca296601d30fd836657175544e92a9d13f5047c765d38b060a0c1698c13ea0ea1ac0395e53b38a1da51e074862f1925bbc09ca3b19452c8f656e28b380f8cd2c64675068171addaaeb3678ed9894f4886609aeafe914e220b8b4d7228e7e7a4c34f5773ff16df815ad844c4ed320016b916774237546b93de91cd65512e3f87d2b01412ac70dc111dbdfc239d5b7428a3a43755c099fc60dfc41d659c2ed5e7c38d733e9772e2cfa668d0a285acb0ce6813c3695d0052ee3544335867d5829bbdb3497637485a31fa3183d739ad5767cda08113dab48ebf781ebec7a592bbe50a4a9dc47f312f0c30ec4eff3413da1fb2112bf0d77358ab045abaacac337bd507d31a626e3edea01a48d377b9da8f77e5d5a5a21bcfb2adf623d303be463ae4729e0eceb8b507bf3acbf2efff9ae1adf0f24295a9f44cdf16b7e01fcfa446f79712691679b4b7bac281d65a39c65b9b2482c0fa2b5ff94dc8ae1defa873fdfd371b9066855065a2695b896ccd1338f430e041a2f8e13622e444050399c94b4877ed00be1af9c6eb76078407255179690cc5653f979c389fab0e1d72fc50a514bcde30125ce51a3f6aad9ad7dd6be9c832f0e4fd7d25eee3d91f1bcb069183f325211e24f6dc9be9c75de12593d5ddf0d315d7677ab048f70d8cd2534b1ccd172bc91537022c0ef64d3944cc434d02280535f4484f8115f5d69c4069a8e83ffd6a9a01b13f43f69c11bfd6703e5c55942e431f6e5122ffc725997b70cba11a686d0960d99d7a5bd76f9e1a15e4be0792a6e4ff87841d0d7050db49c5cc0961af8b1d6ed2f16bd757db77198c7b236aaa01f2694a7e4d017c1e305c3743c9460e0b8201c97a2496ca680b8d9488027d9b5f42977abd902bd1fa987b794241af3e0f635afd32283d82940def771c9e6fa441d00916b453eda2c3f0309974d56cf457c66713e39fad2c3c3689aa8e7fd3619694a83b606ede17eeb333d7413aaf7229a6011729f33e1d6eb618a7b3811b62a761b4ec64f00f0607a30c6a021a48b26a50502dc7f331e9cd0e2c7630e87024c6e43ed5b313f649d481854237220f85acefc1ecb59efba61aa39dd84763dfa55973e59b0f6eb97a39b3c43597f967dfc781a205a5d83e580d4a1b630d18a8e5c352992fd76f170151e67030e1c23af9a5b3c940395946eb17da4df43e09f4077055563487f56fb35949e5cc35af1a3e62c2d2917045da8e3ab68c1c295124b40cb055b947f9b9a05f2fdc47a2e982f9d0c487d5582e2329d397fdab47b50aa27220d10b7d42215951e8e1f4020000adae02a320cecb0e2bc59d3b73b6e03a459e05d78dc98d07693debc1b71723b436fe3bc0081e4f58aff315a85692726a8d576717e22e1a1f3d6fa1691bb4a68aca84ee83442d24e34141c9c1d2bccf66b5ac71c60221abdd452325f825747582f4b4ea4aad5f01a58da7ce3f0c10779097bd637d9102860127594c6637448a20ad0410d09f9928b65dbde5d20903e6c2bb8b8711a663b416fa75ff7f3a53c4db7a15b9ab4f12ab371a70aa7d584abf8b9e80268b52e7173a6757a31330a87aa8f0b72e8121e28c3e957e558286f31b37e5d4e05e9f18d2827a78eb7c6b21085155eb952a961d418eaafd6003b8da989a0de764cd676ca224c1d99c5db9c61f8040ede8eb29642199b3a8a241bc55ef75a152225543dc0459cc56095eb919b3f0bc7325200494ff2999269df2b4dcdd0ee1fe6174dba4a5b135665db483737e20a6e27208550654d936ab38bd254e2e2168e1e21a6358aa4ce4980a4ec30a5e4b1c6676539dc5f4e1111fecc83b91780e543550adfd49d77b9a3290b58a420a990d7a8762f30a6b7f7b0aa5fcfd258b94977fe187a79c65e559a4dc567112eeef5d41097aaf1743e6f48899329e091dec7015229fd2bff091e17c6c51f98af83c5ccdca29d2445fd7f8410c42804edb558123a44887f38ddf19b5f618ef0e3102d0f95684fe49846146427e380377cb3ca1a9607cb6cb50340c62a18b0fc47e81ce4c4dd07c79679bb9ca319f0a7c86972edce39a694b7557ff0bb111cac8897e9d2e299df8b1c8fddae68f566d3a78a50db536dc750fab3191acb13edf42ba53517ece7663a5a002715f98f4afd99774c22421a73a05844f119c879b0c568cd48e1d4c682c8024b5dc807fe35e102f02edff826a54033068dd3e6dce42828e76e1318d7e9498a39fa25fa0683b61eb57db6163d7e30b1f292eaa31bd241d31f4b1f549b826704c02aaa78b33e22f2077b59c1708f32259aa4a3928acf86e0021ea40636319ad77aa89c78ea136bb0c11413bb35a4ed964ef5a84f4f18e2a30a541f6191be581bfd9ae79bf0ec696b6bb7a6d65acdc7c9114949b8ac37c19b947dee193410403786bffae5e73709bf6fc537872cf94974f25bccc2f889c37a7e05fdc58eebaca10faba651389e26dc3bda704d278a75281852cef23770a60c2f068c7fed1f6e66afb617dca74ee9a34afe08936efa13e426b658a93de7d8939ef3bda557d04976ee7fba5fdc1bb096be2339d2496125308394ce23c39b3e84489ca0f27c12e90a901ef9c344c88739351b87bd57d57eb51903522c61e4dbd72bc6ce1542aa7edf02ee0992d6649083b44e5be1504b2f7267d23d1b051d8be83b349ac34d0fa48d2c075370427e3aeb41ff998e16ecdd01392cdde0c641e1b2405034cc677bc5d77971156fdfc30dcb14dace634e6c871ac9cfc0af4dbfa6ee768004cb0ee1f402b2ccb22969c5028fe310fdf200960a514be36261214d57880f72d857f6b268411f630166645daa03efece627078836b2fd3efb1348c17892a233d45b323e727eb38f2ee3c573e067c4ccf1794f5bed3a1ea7a4cd2734edc011ed73c12257f4a24d759fb831f4e90a8a846b1e4b7a5f4a75d29cd5bd8874ba6bd738b1c03c5061cf3496ba21e3311e33f7c2175aeb4f23d911fb594758e8112af7003baa1ea6b383001aa8d6ee46901ea2bebc249b6e4bf88a38a6850d23f27f45cb9f08618ada18c0c2c29b27631d02d10748431c6c0b99cc2bd7b23e766fb4cf08c6484a824e908cc6c9831fc7152f8250e0618bc922acab98a2e7bf94bee3897724a3620a175de304062fbfeaec6878749061e5cd842b4a097fb40ce00eae3927cf9dc2387b58e1259a110b9a42737137fb127f33f3689f76a2ef446ea94b5c175055e82aff87f29af2e6f02750700871ef11512d53da010236f194aac8a07720f4bd73d65ca50c6a1f394101261f2f7b020da746fbf4458a922b95db7c8ad4fbdb5a7a92a72a2297b461b5d389d54c33c4290c5a1705b6e414e986849412255466a2aade7298d10dca2cf4926cbd55653f7077e7cdef95f8948d2186244aa020a1dfe330fd956e3b79614db3ac5dc4f2c06c947802087afde06f6f8a86cf26c6c2249cc05dd35449f5501f27d80f7ca2c05e96539d4ce3f184db15c7f069873d45235487be9cfa4e118c0ea7169e49a57d680a91c469484a040a0cc28917fb8a361c90162c1af9321e73fb6b3e34f348751324155bc5726c25cc5b2445345a792efc12db2222e10be15ced9bb23a0203423e2ff3df18dafcab9e754231d14f8d50db5f25be7dfc41fc065914798159d4bd3349edbe6e9343e2f4bf908e2741cd8144a155ec9ef8c6bbe873ea9c936a84f7549f730d1998c133735ce4f21ed9d3a9dfb282dff8fd4283f80494e33c677f06102a45efc655631b0d82f1f6ce0ff9916a5dfdf1cb17e615b8892cc0ef369b114fd39618c65b023cb13f7a1c500a74e2f9a94d666ac427ef1cb3f2a98b570fce472d615eb140c05f2abdb888ba835cf5112326d9b8f71abddd593ad0b4f54afd0acb5f8b0aa39feef2a9cd4a65425b5460ffdf522cc60f349b549976491d93825c6c0bd0232549d63eb3720c31acf5c748eba7fc18138c158f5a61608719ec6e3fb32c774bfe00d81ca57554ff8fe8bbf4faba62c5961e57980a87614d460e104743a2b9ffa3741878aa8dce0b4def176e5b36206b6f1b06dd986350597ec7f422b280cc0a78e9490fc91eefe88409e3ffcb72e448e54196c779dbf41e997e3312d5cf72dc13673ac6a70838c021f9351a5dcf23aa03c55a0ad5bbb03d1154db671a4096d072582d08fc891f8a11005627555e139395cdc690ef64add2d2a3c90471445d9599b7ebb37f27f49cd450fb035b1fa43ac4f0229c4e638b144bf12e09a63ade8b09c4f828669e53a116c4456a3578857e96295a471a5f63d87a89d462eb1c092ef8f29c63f9f07a5d6b0a5e7fc4e24d63522e15998dab06ac42b21f6e1747cedec7a499dd36cebd14eb0684c8b51e30fa033a81816bae855b14fc6354b004a6563867eb316ca45985517eb69155bdcddc9b89fc84b3d6e74727ef101e5d121c8934bbdf72f2fff22c400194157fc701817d9154e46dd5033babdbec4a300d39ad0315d166c15f2638d64a52e33698dcd0e7466f194080416bbeb0ec22141e62d5a8828e59bda51c422cfe4ea9c97f9659b6049b8b966c9755c798ab4e6bfba9f4f08b1fc9cc94e59d12080cf1f8fbe5cd10366eff162bffff045bd35bd0c7c7819861894ff41b68ba179f1658c628f178496ff707835a2b766292ec715dd705a017efe2e82b9dd0176d2ba4c71ff8a3508fe74516af2141905cd89467c5b9321f33ca4f2d41520eeb77853d298e5045daada1b35ad9524d6363ac660d5355a329167bf04ef92c898cd21b5dafa69d4ea8cbc6d2db3c8d27ebc7081c43ae7bb039ae99cfe92a24479d099883fae7bd96cb220ba4cf46bf7227af852c321370e840f228545e8711274b4fb7020233cd2ef8f341910fc03aa19a275ab2413f2045cd59d11763bfa6dfd041fa1b212a3dbe8c9a6f5a49afa3d204e6d6df62c6b4ea7d2f5a4af58e8d2134cdeba005b6a290ce1b8115ed2daccb17c800973a1f6de6beb9866f6df0bfb22aaf4cf3b50e7f5b58d362be8ede518d830e2bb6459a3a981cfcf2121d33dd24ca09f3c605af1f49d8e14273626a6cfb614c3e8900d68382ac91f02b362ca913665ba56e7410a9beb597f0a2112c412fc4531b5569ccb0f0920e5479d291903ff08d4c86f34adf9d6d7a33ed60150514fd94b2eb2560246f48b6eaab0d619a6867d6ac5f73d076e57f8a8b90e8e79613e2c8855163d4b9619c12e73aa1ce8411f28b0e6b1fb3efec81bde6892f0a3116db3c237b5beaf05c08ec65e44792bb08ec50b71edb060e0405200d79559c7a28ac485356045246f4cfc90470e672d9772c754dfc8139bd4894ef7acac6269769666396d050af060c8a9466d9ac0a8623d8a7951e54d61a493b52a69ce583af82a4efc20f5f7279dffbf520923fc2fe3bfb38563d7ef208df5426bfc93c250f24e3a6748304b3cf74422280b5ee678074d5cad1cc33facf99b56163082311f99796b7bdf83521685ed5ed174f26b458de389c34a74781dc450446ade4de4560f8287af59c33bdc11a7b58bd2d6d230b057c066097ed847ffa495ca6c4f636f9f72d1564fa7242f59a12504e63bf72300259d5e01161ca8653f638f24cf1fec019b81add251e13d6faabb42ae36bd2a66fe2fbeb0027d547c447672c46eef7a131cc07d3c3324bf6530de28e4750df412ed9e101f53aa19c7070dae9df97851ca8d4f9488700d0b5eb5d0191b5a01073731ba01128418cc8d6722d7207a893ecf34491421e00a9bfdf8ee165219d8741f72b1b1e785267b60e4fd7eaec6a176a533da53d344dc8f3e8e3a7611dab1ea49d59373e9825773919eda883bd6b5b9350970da87e730af44715eb01f85092f7973c5134dd88b6eb4f60e28197de7d14347e0fdeea69cc44335ab9a703852b48f8047eac94c785657223d55e7cde9321b04a1421a02abfaa118fbf7ca86026893af12b6f17ed6e8064f0ce9ed955734113338841506819fb6669a63036a36b0840b4eef7d87b6f44841a8f6ad276e8bdc2065e2cab70edf6220c61a560b782c5a495022de71da0e4890d5580634ee243818ed401192703881bbc15c594a4db82a4c49236c4a1411f1bcf38c1feaa3901b0f92fb53553b7517265809760fc9e1f023044a1fb701c3038b80144b8672233f5cb99695d481421be4915e88bbea378cf2492d22822c3ea1ee3bd734a52d83d59b0d498ef6203a9b7ba09ecb30eceb18b44c0d4b885379506385c06aca49ad3f0839d9dc538821c6439411d0f86e023f8a8e6738806a094f2a791084c1aed5539657b69cc3d5a266eb54e9f1093133980be0e93b28f684d673a5caeae7365df668330e45c659f58fe33e8ea1689a673363f4e3e84cd45475a713b2fc04ce7acca1b5ff92251abe1253752a6de38355cc95939e9516bc020a871268dbd71e9101a5847ec473f680023e107d1dbe648628e7c9e2e13aecf186cf9c1f6dffa7eb0f2513c5aac288e8d5ccd73793ab7f6a5d4ad2171fd9e5e9490f12ce8b471744d1c73a492165774c23a82487995535ee9902c54cf9af1f34cd32b7577aecf6d216cafaca2903d2ecd955fc72868efefcb0803fdb1c516e9c5fd8b749b4bb03ea655468964b36b2a16222a0151e9ceeb0dcb8a8a89e812d15a57be775b7053ef4f953cce3dc21435e131af05f90093ab489fcbd2aae77b78625d0533d4a814ae68a73681ddb268d335074ff7713510323b75f769f6c213b80454e89dfd18b89a1bf74ca76afe1a6cfe91327c350ddc7c4f3dff7b8ee4d6f9496319956dbcc749260e14f8d7c01932e26c3b72091c5593db56b8f08410a88dc87c361166ce3203760520298a623bd8be367954a9a05f31482edb8be098eb170d0eab2dda8aad1415cdbf2026b44111faa8fc62dd89ae28e63c38c86ed887d81b539708b8996af4414be5256b7406ae539d950567f16705aae0788048a31ad376ff0d87a8560f053dd684f734f55705f65a1ad07f66baa2e7ca0fcb23323913ca1de4b8f41be9a0f9cdf110f8884feb4bd811292fd48db925ef28999c1cabd2e3fc98fd111802670d4458501e705c7c1b91cda46e83a34d8498df9667abe8c118a754589e2282261668f157d30a2d98fecbb0982c0cad7d272acbfbfcb280f28da1cc1566c9fd0d9dc3a717b4f5174b71f9d0d0afe786f9c318b81574ba3ddb884174332145fb82a995f44be95d669462aa46c9576fbe6f45ce2ab13da05cd2cf8a45a551915732845bd5a761be1708b1c448f63c1d176bb0662352bd2e2b197ac537c1cf3547708bafcabe425b020e4a54fa3d9d26381c37b853574798e34b017dbff7aba9c74e5be05542ee2e14e5ba1e3860a8c54c92b72254ff159e06bfbf505d34bbc1266f4bc506df20154b1278617350f682cad6e027c01e15103d8edb45bcca82d44363d9c212bdbfcf6be16c0e4a831e88a3ecc2da90eef7ec5b8398a94eec8723e561f6b9c64acdc40862cc8119700cb904dcc96bd36da7a0ce4787a4a12aba09b598a1686136bdd10973ec3b5af1e0ef40dc56cfd0631c1d0b1ce1b590ac4a5b821481f8c7e1e8ba153655d085585d0d8c6b57d9b8d76c6aa56f26c01c453afe179b89ab980c20571471f0bda1a5003040cfd5dc4a43f8536a7aef0acf1937115196e288bf34c16c32775a5744267c230f34897c8109159294c52df85989056e7cf4bb1fbac3e8dc1765f6e6755d6dc4c7684146d9192a20aa0467988b093cb6a1005038a83f96682a27dd4a164bdc3f8a272f60d6ceec368e129ee1a38cad862d674ba0b012f2645da29056c5b1b7d959bd33e453481757984e8e6c49f20720a87febceb0a991a6295c6acbfc867d59aa49128b9712e52fcc0f5973cb20c5e45c598fd57601ad890dff57287d77ffa7cdda993a0d91b0e9635be82cc59e724b711a9dbfc380ed5b4edf6ccda1684d4860563d7f8785581984e09d881013997d54e8047c9612e71e5df3eb0809de4bdf20bc51c6132b89716e657561991e79cac8c6ce41a842600e04dd84678ebf91b647d92704a9ff9ff4a7d814224311a64be9d1b94c06f21a450222d68f8b0e2e73159b1e2fcef37ed5c45b881a2150a1ed271f83ab0941a4e00150823f4544f70d7f48a70e76b52569047032743b2eb95c4cf75d8a2e271ecc72b5c9266815da554fad4a874fd3aca44f895c717b8f3e516dfd26a6b235099c02a286af42e76d1386acbbd1477ae40882b860ddf4fb1dace973eb7e9a873d133abf80fba870bfd43bffffb76fdfdf39c86f555836bb42cd57e736ee595aeca4506a02c9f5806f904f4558c8e2e29ff2d8b38cc71c291613595071a021b93e403ffa3b0d90056841ad277e318cceba8fb922bab685886c9915a9bf29c0f0d9ae439ab3af19f9c642d6584d278539ebb02acbbb6e82955a7104c146a838889f932497e006e91c6523b7482e21db5090cf7ca91ccceb2e8584f2d0d93e65fdaeaa11dc5cea3b4cce9ffbe0c98ae26088e7838fbbf0877b39a6ac584a307a85c4c919978b461bd82c33b9c5ae536afee685c14cf3e3415a227d25b1b91b9c3704df4b3c6d1f81f57d0289e1801be3888473b2b5a5d595e71fc378c2a06b52fe1aa0223e7ea3e3dc4072d02055bcc65d747f0f5744a45fd532837682aca3b16251a159c0314782d376cdb4852e0e939075864204257df4a0ab6b3741add1470ae41f48172d92ddd0887bf1415ab400fcb4140a4eaa5397a3a63ef701554603bd945221f7c438b058686f7c5ffb4f98aaa8cd79cb96679d1edabd6a512824d324a611543edd79fcd944e88d36f45821bddb1415b496efd991bb1e5b568472b03973ea198677694bd928edb15a6acda30318d3c11bce48fd31d5a7421877d36cc609c914b5619e1959c9b21f6e2b295aa7910877f5537553a1439f88579f43a2cd2bf5557bbf956a1e6369f91d93374e61057c50246a233682c3ac33ce8196b367dd3f20e8c0190e173128e9e5664416aec3798a7038caaa60136e41b1620954c1488114fd12a639e1beeaf1cf7ad81e10ad7a64bd426ee8ff980b821c125ec4cea21b15fd9064d912197743a6b05c0c009c5b76393ac7059e51fd30a5d7254f892c94555b1a6552c43e8d7f5be2c4573c9f7dd1d52fb9c9d361f727d6e6b60a6420282d901400075362a5363507b7c72ec66c8f780eec0d3d4183bfc3b37827d7a1f864b36d31938ee53340dc7e20291fcb7e1438a77a0819035a78b39d3247fd7aa13a9a4fa0cbc157b49b71c27421f72c8dd99d09a960ef331e63591291c2ca5d2e3abf2754d8b45fd74c8bd8c5a52206e22757e4610e712e1c2c78e3e84a91b88262653d76d281ef60f788df24f9736c03810bc6e666a5cbcc2d7dc88eb96315524bb234ea8d559c336fff8be6277023fc3e2fb00a5242257713951d8d5909eebb18edd7587d14d60b673d183ed61d2833dd02953b889251fca40ffa1dc78235d965b8fb1d1c15f640b51b6196d44763c4050650001a71193738c988b2268e497e48f4cde095321eb885e80ca5d1cf466aa5ed6627f3a786596956f5620b75c13f0ac498aabf2641b5d4e897796db21b075144817b6b0257328b46c00af0b67fe731552e663e48ec752ec715a92f6c50cdcec1492d21051b3086208bdaa9aa2c68671874b731a4431d490e8f3e33fd2757d3d33b7f00624468c9037143503931b52178a40c90e3eb19df102c7eccbcdea3c1955308a6a538011a6d4a83f70f653c1a5698aaa30690ed495dc2d966af24b8fda4b19f610b66afedb90a15ce6afac9460c161a5b6bab57ec8b69bb26b8c83c682f3992cae58208f9cdb2c6cb7442af4510660fd595701c40969099ceb3a88c3fc646a6e4c01b2e0fed9753939d59a659eb9d408e0c94dbc1c107e4966425ed6384127937b9dbbc01088508ef7f7f085464e144c687fe0587621f9f35d7fd1f9c149ba3c3304642e2d81c264a40c0f85030b541576142ffac1096e9c71a385252c8c1490e11f71763976947fe2073695980a427062b6a191dd5a2289badf61db0625bf4f1e88b96550efbc86146b517297e2374c8f100a89009fed1994ad7aa8cd5843d3f208e839b0ff7413eb1a58a15f3b58f38d794bf4950487b1c448ef73228b514ad495ee5f7bdb299532dad24623bd7b86ec5aa027dee23e6f42a767d365ec5eabd1fe45809d47178b06a459d27caadcfecd776cbee7310ba7a14c21e7d00295a8863db36a230a4be1e6121dc505823f9756dd334543bba7a83bd05c63e17b5ccca6e96af5e6acfab607792ea5c6df1456a7d38aa8764489e5a64811375444e75c0658b54b9e3e5aadb37969c4b849102b285f0345dbee3828a3d5e7725264a42837725a55c30247abd2d53416282123c93efe6b6710acf7787b999a80c699eb74f3ab8ee8cf143a7a79e36d1063686473b41962d56fbb7e93c526b8cd58cfffc26588a4a7f26930c8d20385b30d87d646afe8a8e0ed460dc3321d14d56d38860e0b89dadbefa8b972926dd6a22a7ec0fc7fd5ad3bf81aa5d0dbb7fd0aa48f2c37b09b5073ea7bee01fd3bffc70542c1b8421f9bfc32e2f56d0d8b0cfb560187a7129774ce87332d2b3f1fe915b36be974afd54013aac79dcd2170f4ced07de3ee5b3e6b553e2d5eef60279fc03a405aaf6e51b7c4bf8926dd4df06f66653f52a498e583aa194103af00f7d94544f9fa803c4f52f959dd4adc612c56e1393c0adf83ee7839802c1302b01a147723685b7299e1c332690cca9054cd6124f1a963c10a99be845492521f931cbdf4218b8bf853cc1b7426db79db8e5374abfb39ffefa8b7cffae33f460fa4f9e953b4a9aa92b009e870fe5227a9972ed463c7ced3be56aca91a76b0e47130024d12a48950070f4d38f8ba1b1faa74c90c23ce2e9dd35a2e59ae41108eb555f5e7e5dc12515d2c091c3353915dfd45cbadbc0d9175758881135bfef8fb8096e3f7809bf117e6a0223af81537f8ffafb88392fc2962b001eef1ff8d969e464b358ae210398d51d1c5675d3bfdf496ee16e300d4f052180ad4b1fe27bd058761d505f68d83448eb6eb1963f32729154c03a7df6638a8eb1af8912889160a9f2c4ef2150d33b816922b0f3df52cf6a927b0a48705f29ae25d9bd719abb113f5cd397f646d87b78a729c6646523e55e8166fde65125eef6f65df1fe3d81eee93c79d69e0b8c1ceb26c1e5ad5d3f1db62a002fd9d58aaea4d8bc49cde581128286794b2e6031ac58dfcf28db149ed44d23cd9757d1b9da43693f64b6d4824e9ab4931a3433dc31274b32f69908012ccce3a53bd6a95caa02cf074658126e0a1693903d622cb0b0184123fa04d009b3e6aa6a3658882d89bb4f72eb23b27ebe4c11a2deb12adc2e30ab585b6d6a8e7756fa38f7c321576c8d76abe39cd19855a74437464e60698e2f8321e3908603b123aa772436def3a98eff018604c31eaf1ec1a8f7eb536326c272668fb84668aa8fbc8173c6aaca5835b60fcff566dcdd07826db33024ba6352fa42a4f15b7f97f7f84a8d3fbadc6d518d8f81e26a411ac3c55ca1324ac888b22509c9b3a2be58ee5e41806fd5307191c6372a6995dd8dac221b331800685abc75a2b49756c62b55ff779425856089a08348921db3537c6b33a8c147324a2b1c45fc9f0e87cdddbd1d2f0b9a7effc7016b1e39c8db803c98a75a764e4bb8db2fdd7dd11aec9de5a62255ecaccc7a46f560d294103f1f1be6c7854c5541658c9493da57ad3fb94f5fa6eac2718bc8879911cbf51309d0b46b7b1f4a705f6dcf923de239927e6dcd5a49902e464e63b0280bd160fc205afe4c3d0124fa63b8ac762de1f1aa163fba4c998163fad73dd097ec65ceeea7d1401c9389a4ef60998458c93f9cb007a141bb2dac19a3a81a1120ce9b15d39618770c68541c580e7d97c2dc4ecb2140dce75fec381a13510382bf025e56258ec6448e464d07a04f92bad664999f5ac0ba221283355160c7b41b7ae3abb41b0d980bf282e8a26b4d570628be3407b7b56b35d71ed892cae81a6a2f54719ef75353704ce9f288d7451088827a352e45f2fec9d6faf9465e842895e7ff143225baf60bf9ab9d9039553185a1734718e1b745c37db314ba1ec9e867a3156b36778fb95be14638f1ab55003d1f864d4edb575130401ce5dedb6ae5bda698731de7776481ecea251db04e372faa81b511bf0dae10c3add40f42ebd8b562742bf71859b34b9acaf6dc8a1e07857de2729f78e16882e2f355566911d28242e1480124d4f1c5593471e51e415e3eb6dfc0fb130a0532e60603e1d1e28e0f785d430762c428bfc7c0a182b2313d394d93e818b1eeb2422e27d1eb94e1afb4e3d40c93200e08022e492a14f63334f4c5385b697e5d766c3306d2fed976b6015350a7f64eb0e79788bc7838330d0c32dca995e646d874ce82840bf591132e97cb5eef6daeca67ffa66846383b2e73601172eb8f0f9b0628b1896345ab87199e843257b2e9633ebcef8ab802dd0e148f273c255ceb8f6c072c1d8bd45058024654a38b18fe91e0ac9b65b4ea5e51dfc18a5aaa3c6fde14febfcb5bf3ab9f20d699a26636c5c1120bc8ccad95584020952646d54783b1ca623cb304c52080feaa4567bf9c21e5d325b735371fbd181df7f4b62b3c5dfd49b0b8881b716b9e7b113de1013c793fb211d82d140ac5222823544c58ef82c315e781e8ca93a463cf053acc32b03436bea02505e7fc8e0378cde8732e9917acc03060f8d22dad85163cfaba8e2c169bfb31c0ab57782a3b9c7b3a4fa7040e89d598b0f0f5db2572fc038cf1b2746a0059538939dd9ec85d3a3213923d94cbfd2cd9bdb33a51908e31a16277a22710ff9a237485d18fbd091a0e1ea60847ab0b1dcb9de6514673d8f75e1878ef26fd90e14ff5c6ba9e884b600cca7ce1eaa9231c9f341db95a7636c23a8be4db6d5a9512b3dea1297d2215e9533f4ee333c5f233a5ed1384d56da14a271d1847a0c01442475833ec96aa6aa67cfcaef1f0d13240404eec779b14fef832191e6b428d5b32b42b9fdd898c630ba8e6835b583c3345030df8af1874522aa15dff72d1b2a0fcb9b94f85743c7101204eadcb18c0027206b27470c24dac4a3af2c2c04f4aabdd6c62bc4231ae3108e1de91ac4fe00ec36400ba1d0dc46540bcc9821fd0d9db4671b11cee0e5943dca0ad8424c71b50e2112a04bd932ea06a22b183261e7085b224ab743a9e7c61dbe494da53b0fe812e8dbc7ae0bbbf94f9005d8e6d11322c69468b4d3f381b05a535c827d875dc95690f333141141eb07d3d914dc71aa436a3d08a9df838f82b1772a5ec5963d6ae5f31cf5e93e110c3a5923e39e2c8cc1e3ce49caac5ce9043a4ed7f83a7dbdb60dc8502b4b56d64c84b64d3cb83625c4bcf731229c622da6c9b38752808e71d956381c1b08c8b97bbeb1a6c826c1bed6f7265cdc24b563852b731bc50bd1dbb621b69a2a9934b569af8600010d09c33e29116fb0104df0a06cd9f3ef01212b36cb665efddb5d5a37af6af72ba920dbe053a180218ac4eb16d1d5d3042489671f05c9829296c6362769693e427d45efbd090e0179663f6085687f019986144e5439c338e773e4984ff4fd57a44115763b2be234c36fd2b9030fdc443e6b30c11310521997db0df4424a4ba5c51a248e76253d51e6eb9ca691a06e0d0c65b4cb5799caf5a3601f6a0d86600c8ed0dfb4923cd6cfe33c1033a226f1f5a940557d9ac69ade5c6d3192f9f83070a46edc7edcf0cc8a665072f9c163931b858e12d5bd3c920750ac6aa17e9866c79c8d98e07ba5b3582fe3d177959ab9d2bd16fbc55a48f78c9c57c59bb0d3e8ee1bb2037ea7b0d60a63c377c1048e626815c6214c49f7a39caa19cdf94b9fec279268d472113ff2db2a1b06835590908d41fca327ae95561e5a9b6e9e06c92218dee793a5090fe23f885ea2d296b64c213d810c1e666b2f0a1aa3ec343fa376fa0faae10a5f5b4d96e663a6e766cfe12113d8229fac969254e6f0a064bcc0c3511af5a3bc75068569a1b5c20eb3642818523dfc8762de6316a1af6d7aa77be44ffff29565418bba81ca258e1c067547acf49bdc252451c5b642d818acfef71d180cc622eb26431848e11c69757059508495953001be7e328f7beb6eb797b4e7dca919b8a5e9d01396d9b863c2004c9751ac2901ea992dc2c0a830d0122ce721ccb41d1e126a7ed82828c8c2cca71b7a933820782ef06761e9eec375829ba88fb923cb2b598bce3e788554d02143122ea6dff82dc13b16dcacba5aa255668a5f5bac7a61aa752d1fa7fe72c1dc34d414b06503507d27cd720b4111fb1dd1b8128d314f7e76a222073f9bbb7cf1518f9bc15530684038f5f117d55fe4d82c29a35831a4d8f40ba8a3165efeef41938b8e21a7e72fd485f2110d1582b7a4f2d25fbd21c14641613dde2725a43b94e01ba06c4efa696005bc135459141d0730baaa2a87a54b85c7fcb75d234e377a45b96dea0b37e1f437481cb3ff3007e98666ae508663edd9b09f0f39b827f69fa3954e1e47ef983434f14bf8aeeab27323d22710d2ea586647336fd43edd34ea2393cd07787e512cee5b7acd297bdd64f6d6f4002a7e465e307cf780bcfa1a0b771b47cf79b701790345e5f2fde6db19ee8e0f206048f7fec1d09268463e452d51ce475c6995b6ac9020556442cc48cc801e36c9d84532337ec60a543eae89eaf112cc5632af64a477c7f870a1c9f1d002a51f979debdd9a7b8630bb3d8f7b5034f5f61c5495af4cd1d087048f636fb30c6270b7dfbac98febf54f056f2e4c11852c761dd6695d60aa01f2be128fd6575f9240d9260a282acfee688fece556a5415c0de6721c17a9748b601a438aa04d036399de8d72c6e51c592c65e0059c7dc51771f921bc9bacbdeebaf4071370e75736023c404d91a01691a22e3de39aacf3f8ab68f48ce0838714a30661bf8e979086b4c1889ac896ba76462e4436af4a2343bd761fe790abe29ee760fa0f485e02f98a2d6c89e6e4a6d0e06da6da7b8416266054bbeb211d1870732f6959b5af3864f68f54cb5681103f356f4dcdd3f4a26b0cfc3bf4684494a6ce09a3b0833e977a32dc1dcfb49014546e163f4642e190ee9f64cb3f001420b3566e6ecd72329220414ad8dd913afb076fbe2daa68f9c58044fd648bacf7c2024e00a42b2add2148489034c747eca6749ae7b71848b1d465ecbf37849574fd4ead488e0593da743251301bf68b1c5169628435b3370780efdaca79f26b9f4f948db818ea32fe5aaf0da87bf66c56d0fdc64cbe608142b0340108f4ba68f1ac0be60370b13001a8219003061559c206403ec3d6d21c1ef45a3ae68b02ae7183efa37b4a1c8a6e199d14b152c9565a5e694e1c88090d77566ed4b043d1208ebef05216b6047a1f04c6d98be086dc61fe0d6a693a971abea25e0601c40675c1e0f16b16015a24ba7284260df36963a1126e5b0bb741039f31f75e56765b16ae7e8a40403e21bc0bf703bdef2a7a97823ade5d282431efaa14295a6c76015138cbf86c151ab1b4233261b3b2a3c94c5dfa44dfd74661e23572a467d3db5b78b22dd3b49ceff2c8ead771bad0b186e59c043380b5b08684a6601bc1fc821d4e277acfe5c860ac951fd0105384382121319d7745dda553456b6559bac7b85ebe0cb4e6b674479930954687184d6c59507fc41f4833d18398d9c542c7804c338bc308f5d8facb1f4987caa3ede0111ae93fe4d8e0265b7f035df0878b69f902af9c57b7779f6e1caf9efa8826506425e3e6fd3181c8a1e1333df0a0e8073538c38db04d9f8e19bfb2910716a1c38a577b5cf077a90983bb1bacc024a086eb4f18e5b3154540a65ecfc5bbad18cf44b02ec2a0ab9998cd7ad41de05f26367069297cf271ca7e7cf896a56666b97d8869f78037a020f30d72d54e3345aa5ad38572a7166d1923803d7b7613b02614ac89210b8719963e21a6e7dc309390c57a750b6047440bbad0093e6365f2eefbc77e975853abbbc6ef394b5320e52391d8f6eddbc8c682cd3ac4a1a0ef939e9dbdf6ed011356b60764a7180fb272f83ac30b2009603ca5c1f0419e3b74fe6f032a3502de7f11bbf560f8ea0a95a1bb4739e72ed69b637c7a60474daaea00a606d046d30695045721573d002420ac7b65056c1cafc80a92449cf2174d31cd3102f774bd77bc94328bb3b4624810495397e17f7d04e2621837f6fe9db1346af0f0027de8769f382d9e1ad31243260563f4bf9c801475c22afea458ced4f5cc16416f911e01c1c6a77e7b54a57854bb1350cce0e96580c1f35160fe756a33b01097044512474830f1abeea98f1ca6757d1b5176c5aa1b1ca20e8ffcd9ee37fd182512aa05b6de110b34a8ceaf10663a635f6a4d7c1254fd8e68f54f3bb6070a232dabe59d5de3dc1e9dd6bcf2efd1b894449a1da61393ef5b376e237cb49e581557bfca540df434d923ee17d8818335fc330b13748a2473d85e4c47393042f14fb517ff6ff832f3f0f4362ff5d052b691d95fe2c2837bc5c489418ed0ce9f0062286201f07e5ebba3f74e241a01a0279d9f87c5e2f2651442b97400ac1388e5227a76d56f237d880406a9bf2efaa0c83430f8d53b605aebf24e75c339d4787838b85926972fd18ddddeeaee9a80159a52928a3ea89b1a986b0e01ef32341187107ad9bc0957dd060ba06b5be8b2e2fc14a22a2a0c3fd68e8bf14362fb9ddb37fbfb9c1dd8bf914e79fe5c56318973fb0b3991eeaacd52be02ccc3cd84660925f80d3746753366a367acc64d6226011224628ec26a726373f5e202a0943900ccddc68e08beb38a1d3c9cad527941b029f7be0a6c6bd1aee7f248a735de58a8672ca7a623919c0bb2274722134778967eec3472b46309caa4837ffd32692aef9b99fd8fef992928f29618df4a5f2cc3e94ec3042d709817609ac487bc71f5b5e750bc6cb282e9678993842a9d761ae0308db85c160259e93e38d166c3263a8fc9764ac9fa44779834b1433274b34382b9f8322074311d6375c9add7c234f792f79754beda2238d991677750c38f1b50ea5401db6fc2a43ed15f95cfb6aad7317d1750b9f99c759ab961d0b45bdd19366f1c36fc2b0cb07b9f88b2b4cf072822e9e2f5dad64dc52d1aefa05783b51e4486fa7b0a5f42327611a390bd761c7a0f3beb5fe3eb0361a867e03dbfa48dedc53b47016657cd5cdf01abd7f2b43e4bff6b8efd9304894368b93c34f53f8383d1b8942cc939433911827c83e73fbe79d1c9262e2a431265099081d8ba8272e633911fddc7a2d70f0930c6c5e3c878ccab348ce91e0bbe273e8eba14b54ea701e69037d56da49352cf0e57c575f570b23a4b482d4688706602df347f744ead3a51a0cd14abe2bea3e535dd982388e725b7dd8b31c9cf5798a6aa381309a324600416ddc8f94959e55f0fd5492827bf6b5925a68d3b4ddb96e783ebc47fb9ce5db0876ecf10ac3795b060625b7795908da0daaf4587d8837c8fce63a433eb4d73d5ff1f463c98182cc97379bd685d5ae9cd1cb2f62507c5e5d5fa82c560f3aa6f46329140736b261352584017f55d9d65e7fc246d6adc7c45bd587b7cabcf4115871e76eae1c25a0e9e6ff4899614d5413ec61c3880de45a31953b4dc620aff44e40bab8448ceab20c999c3138434955e05eac6339a71236ff411f63ff24a73ed83e1831937fe5b7d5af933b056af41afd706f4d531f006680570fa93d23462f0763f59d864ab781ea8bd722b769612d739df26ffa79973f6c9fcb309ba0ebb3a322cd24008a02988fecfdd4bb9171f966d8abf049ee934336008613e9fd19a63f5c1d03d37cb7dc8bb38a334fbb190d12d05a70a45720f25e09c1c0a7519c86465f5a3506b53c1fa8893a43cede01bf62b138f4d22fc3f65a3d54fe04b8c80a5a0a4a0fa960d52edf80c17b236816bc92ea6c2fd856b83db5d2e1cda42fedc8e915ecf173a3f952580f0d98c09c4120bffeb33ca0b31f6f970547843b3ebf8e7c6a4e0527c4a732731985f4b7018fc34a9aa8c387aec839f1e280406006043b385696b5d21f5f64c952526642416de52f422f1079ae1a5faafd2059886d91d61c2efd3e783ebcede214950cdfa502015f378b284bf23c1e083e14a0ef5db7330639fa2793f031d8cafeb3f532b74ac924b34bf589162d0b09ccbfc8a6e281ed69337e5e457b3c02c794bf5e5af05cbcc3b263044ae66bdcc46a1dfe850ca8b1f02492266a20f74e06c6432a3f27cb4b553642b881c22cdfbe6c7c047e04896bd66da70034aa0745b2cc1dd0265a68d0848133e5281045fb09356270f8a997c71566a7ad827337147d293010c1d1e2ab0cfcc70e178ffa753c31afd6b085373b625814698e3aa36d2077074bae981dd90c4cee5567c80b2acea0153236e9960d0020f0406049ad79872fdfc36809fbee9a630808a3a1860808cb2ec4d3125df235221d2bbda84bad2b5273dbc92c8207174991479a9795601c44214fcbe26ed1732d4f7fb1df1fb6968b1a10c8b2a1284360f38dc85aa4a951f3186aceeb8440175b684cd18450719b80d90302a281f169c2dcfa5c431c708aa7ed62508fd42b3f05b050d4ed6122795338f3fbfa058fe793505736d654336fa102ba9c36be139d1ba47638021e18a4d57c943b3fdcabad10d39f6cfee3e542daab3cea33069a864052a36f891071d24baf3b0afb03266267f031296c880bb97d510d18d968ad01618663b35aa6afc4efc5c89f2d49c405098c3352eea455c5737775aa77d7749f3f90bcf0b8d9514e4dd7c01c60c45e306dce382f90e7e3ef1ba9e19a8127a5674fce67fc304a1d1e331453777b7961e8c9aee6d7a9286385b9e109bc7b3e0618318e33cced5728b969fe725068cc11f33b8d9bd0cd9c6887e8ee0244c5de7ef42f686a2334ecd122ef454006502833f7a13c5f7617a5a2903f28210dd1dd28ec2cae6dc64c49a6969176d2504112ab202ce626b87eaba17bc6e7123d4295eaf86aa8d8533ad2188e634d304a6dc54f6d225ccb1bfdb2d436a55a651a932901343415d5934b6f94ad4a0475e1b7744355da965f9ca4632dbc6e808555ae539176350108b700dd88b8bf5729fcea73292dc21b37246ff86fb9919495c9dc008fb51266942889227f1268f3ee80cb1e52c23d3a3698ba504911e62ffafa4e74fbda115c9e182c39cd77fa05f0624389429eec5afddefb0c3b32c5e9fd3d030cc96272cd21cc8fef724a92963ac923994517d0cd7053f437f0459a72aa904122cf403fd4e0f60bb4aa2867e8458b64a7aba0119a602e64415440ec1a93c5feac251b2c5011c23edf4f651a1ee999163054de1bd2a00f9d0d313249657be2e2445684141bb87e36d97426a468034f40fdc16b677bbc4ac8495e86db5b4674f1bad8a81003e777a0ea53375ccb9eb95aa7138cd3611e47c7e060b6dd8690527f11dd8526b5c33c3a6d760e5e7455ea3b5639b337cb1e4a32262fed29197baeb0bf5efa1f7b7a06a0347bc0c0ba367b21b85187a9f1de597539b36a42b0c69dfe93b84c1c568aa79a7d936fde10cf7ede33ba310e1eeeed32e341e46ba662d8fef48ace32c68d4bcb1abcaf411cc74a32ffe3ae13d16b5c74376e072ac27e0264b9ca08150ee3b51aa5db15a7b27c09d3b709f71096a86b17c81d0d250ba6ec9cda4fd22d952edff6c48c2b487c33277e20c11dffb0681a449d99c92a04d6a6d175e14518adf12c35f693ff1cc85701b74bd93dba7df564057bf6e9371ac632ead39046406edd3aa581edbfd505a2b97b5b85c97ad10c9b7257003a6039685c4e67710d22576951a980482fca628744803cdb29418e679d9868116cc762af9c3d5368b407b4af1ee5321e616235ccc86859598a1864b4673f6f9170004ca65e0959cb466b280390f50b366d1bcce55541cc28cf106ee080a03ee1380b715862e23cf2aa3ae40c62594cc3e01a7bc63a1a87698b4294c77c8371ded8d41e3b6c39809aed23e7ee33943d6f18d5ebaa60bc4c4f0fd70965c1f78323a383c2765feef5db153b4620b7fa1a501e7e4495783098b009f43eb88097ace54c39e1d4063ef930d869faf163ba0050f4af9ffa950a5c7331f37ad6bd3066c442c7795cfc3357a0ba0af30aaef2d42ebbe3709c3b2bf97ef87d269fcac0e4be7797d44d4706bbc34e03fd4890919c4541fc01051f9dca84182a08bcbf09610c96c0671ed723bd3bb620c8ee8686c0af9d5121ec148b2c060bbdfc3fdd40ae36b1aee50528cbe7f2e03b29dff2f658123556cb733e121f0f4ddf973840eeb5a48a15e057f4118e08ca62f33256798babf088fb0ba88d65abd1870e5c2172d93a68bf8a0e84a3cf864743fef837164f69a4d0cbf5ab691bfb8baac3f1f8a6c1c9dfb694e826e447c972004ea4f70f7e9901cbc5e5c776a9e7763a914a53b37f06bd0483b42b8844c3f32a37d590ed6a411c8b38270b00c6affdcf49269a0913e684683425dc7612502f252bb59a7e06da2c0400d6ad983186cb989f33c921596da82c83cf14c5a6cc333b00288f9e319f1835c3e1ff2f81faf54bb4588ad7e93f945269c8c13ee1bf265a192868a8a5898389e2cceee0ce1775206e53b40c8bafdffa67f4104c3148de1e55bd27a0c1ce0be10d36a8d2f2da3420367e48f2c3624b3a61828bad2440e5253122ef7d724bcd0685294f69a971d0c5293269bb63ac3a6f44f5201c310603245a048c6fdd8409760e43620e25ddc773f5672e84d29b55a6953fdf3d4c992c2c9073ca28fce96270475a2ea625ed430586b10fdfde7df3e2846580ee602d5a0ce80fb4a6007426a7c41e3821970f46d5d136fe8732524b47ac43176aa6b9b2660a5f3cf1c035e25f3335d4893cfaf4c2833a63d772852511a643fa692110d109e341ea6ac905880c8f24b26be3916545bf703f128ba8df31625356b5243cf4358caa42356845447f3553ef7cd90288b06271025c9069cb460f4a2d153042e46ad86944f40310b3327ada8e1e59025b5b277765f5de50e03a430f04a3ff1e2b03a903ef941aa7443420913b82e3cc823860dc8333e24d2d246d8a5dfd86142a21bbd03941ae2a5972a2a3433abb5a4d76feef3a555ee35797a27d1e59b1a88e6bdf6219695f0c8e3cde289c38da5feeb18d5f09482f9adef929164ea421f55f0d72db90924af2f39e7f65f2383d1c9ece26054b259554757720b7e78fa4b7590062abb178d4531cc1e418d6b09e0237907d39306ebfac0ce80c68c8fb570feb0f89638ae6d5c1933f8f5e34e96c5180d6d31d9ff37d7c5ee4a623372ffecf3f6a0a201c386b50a3e8ebe7f5c4bcefcfe56d640303769e725816013603f68f114fa4e2516a2b15b977afb053b440afdb272193584c1e27f1083ff4683bca4ad502935f1aeaff0b28e4b3fcb795a4b042f588c63c06d51c152921324a3af2228a17483c28e94cd831c5474926459d55093d491b482a44101aead55f8d33b7940f63cdc88bfb80104640debfef2ade4d1c7af31aabca285757dd2c285dcfa1582c0eab17c44f88960059460a4546c31f778dc7ad33feb7e4a157f52bc2a6f81006610b20f5d1d3a0df3fa484f4e0e052815d7903c4002c8171a6679e637ecdd04203932640853f386e353240792143cfe1750578f570eaf751bec2e4d7513841040c31d2030149ee76e3e5e877fb20eadb9ece9ff54404a47ff524832a7d883a882682193fdab247c8b1bf5cc854c0789e6df2b88c512dffa256a9c76d660425ac4a62a903ebe14c3787236fa1137189bde13829089e1e3b5643bf91c36b70869725406c6135b078ab06609280ea133e184f59fd765d9e7762708d2caf7d2fde561641f0257bd041e2af58bd73c010a666a87ba60075ca335cada22b7fccb3806211c0b13e4d8f57428972db4396a90e9dcaafe44b0c3aeeee97e82d3fcd12f1280aedbb82c5bee64bd49d93b44d21ea7a6019276889392d77a85b8f67a8f424d84a25dd6a8335e9abd9a82f3ceed6db450fca6914b2f87e96b69fd0bd73ac0a76446256ab18e1f959935a388d4a2a48463fc1bb9cb0e2ac089de40daf8d66f16730fdafc09d707841fb0d51f69aa1a38e0116a3695c2678427c4877836dafe5c323493324b8186081c3b95142fd36fd1caecc8468253e39b3dac0247317663b15630005a4b89f8878cd5fd86d222bfe46e7bd223bb0a305cb5b20db4c3dba90132a8136282b6e980244ebc1e7e6961f361df6aa3d3f2540292144b26e2e83f9b5617bd010c46dffa279fc245f103301479030d4f65659e716baf444ff0bfc2b835477a0a75c7ec581e357d19bd899a35239a7e17a6d847d4561f24307346bbd3929dcdfd41b427feeb9628aa46e1894fe51b8e546f9517d380b6e5ce565b4dd021ec6c2244a07c00d2254959cbfa7b10c931768d876017e9014ce447af3d899bf5fa582932225c0d2caacf57b1013cc50142f246f9be1482b0ff7636e788108da1c6d44d8d0efbd7326e065146675ddca92b8c5d7145d7e4335b30ef803a6500c01a70cebaaf74514c2b7ef46e4feb0bcc2ca61e866a83d3177a844aefc233f77476ee0ed54af9c8333234dde25b4a10c0b089a8fe372adfae938c638fa15cc6b7048c42cc12098173e236020e0378faa429fcef7e32546a64e3521fe1fa5e9403b9bc1d794c10afce2149b9765d30e7ab373ba64b8232d8a6e3b788f031dc67418e8fb251922cf6c185ebcc2c1d6238857a336b74273476beac83d6798e670884e769941409507037c38c761fd5b9d1b27c18426899f52b7eafc8f287e9ccb915d444bca85dd009d45a98cd554e9486e2bae4db131c4c4ad2f17a3d5dbdac9b14fb2c32e0d90334b7e3349d8431648a431c5a0dbcc120f629dc44c04c8f64a4b4254e6cf73c6d78a23c8a9252c5521df1b815622af4fa6f88b90ca198fe61eb973c76dd1f913bb20cbf185f1394d5baabe1da731d46d081ceab22f65ddf3b9094d744fe17e5bd972db70fcc951bd2f9b3eb03175cdf01cb923be634d73f77581232562fb009a416ab82c9aa337269051aa8e3fe9c9aadabb76fb451e4028b0424ec2f296972c3e7be527919477d39245849720d4fdc365f935a1eed9f04bda2054e4dc27e5defb022c4ba312ce74f8cc2e911c8fc2e6bdf1dcb96a6a609b19df494f7a5f05d7e83242492eaeb2f88186489855c1dd107ca5284bf464681791d61a1410858838e4901b95effd66fb2de3aa8508a23cf5d3c7b0760ae455ee845c17265fc0a1ca1891d91359d066fb7bbfa8b711eb54303f2460db57848d00da1739a6b6d97915913dd6fd2b29635d916c6d6d2fc9cbee2357c73795cf9245a4506dd8211624c252091301835fb673c785836c3f4b37cf653eb40825f4653a17eb0f41f52c1da4e718f75f0405ddeaca05d3cbf3c55e806710c06f933f941bf98e34572410c87f4a001cdf9cf35195e937e7ca1279dae5abfd91c55b461a22c34c2a3babf8c628def11296adf17433700790b08ec670f39ddab468b975879618eb1f450fcc5be481304a624aa577d017c4e148616f41af206f5e24e80e3738f5b5677690f39820cb4c86b440dbe3ef7e896950ee5b7300c634b7326a3394f1710c40837636c0376fcfc2bc0dc906f156fd985a8e06e095a41d1b079e005d8b7aff0c5098e08d926d50a68478d675d0f5ce475a1ab4691b4c23235f60d8807e706405d23a98c5c2090a8599a356dadfeb72a467f4aec8cabdd03e0be341f897955f3fdd477e9d9ca5a24f9a65a08e396b59af2a3d944ef534289190b0727e7e508e5b743556493e6f30bcc3ecd7a172c9f1611b2194658930755fc40a844d831aec5578bdd631229cdcffba1be173356989a4906319547ba828c6276936e637417e0d1b50d15e91ac3980915a2b9da52481ccb1ff30959af698e3178fc1e099928e0d6297228546be38ba4f7ad9de4e9db74ce01d11b2ed119277bdf67a59a482a02782ddd29f90fee0a33461056097df6d0266bcfdceeb4ae6ca64f8e362b7a7450b097fbd3a6778bcef0883833bc19208ba82f93e5c097f07276d6133756b499958456e657d17a3b2a0ed8203d6898c98cefdb727c0e5c544f7399a0f71ade0340477b277d69317cc32b86fcdea647de1b41179ad7b73850c03756c044b11c5082d3330079854feb80de586b55c33c6154e674e42462066e282d9f698309b16903e883fff6305eeafda7493768c94ed7cabb8b00950e961388e02ed3bf70c837f337f27e08ad53bbbc453694687a3f3c6c0894f1f79094b4d3535d228c66242866329d77cb65f37d0434cd3f5fd4efe8fea0c9632a96346d01c8ddf54c1a3f08e4d6e8cf9a554cae4b48a62b2406eaf421650334586f6fd30ca7328cbfca26b9f097d482982a9cbe33ed6d68723aa0fbafbe3276171fc9bd0c7ac5975219aa227522bdec3a2955ca1118ecbd655aec15a41926dff529c24d74d507e04f31ec816049412a85c43ceb2e839c9546a4edfa9b29c9284b85265a63b08038d2d7072d8141d7db1360fba55f1efc9544d9e7e9d19039e3b38b822daf71af5540b2dce2700523ee8526fefcb07962bf1405575b96e271cbb33a80061c5a2a176d26fd87e2f00c7ca58374306435e6aa2837e308a0b03833edf779e0c40fc3127bf78bfbe54a217be91f04ac0fb4720565ecee2e7f5187a7581b9a77caa66f40c53941f755dbdca9d20d4bbfc9eedc80ac4f9d79a651da8655155f4494a6015f9ef3c19bf688e0ab1283d64a14990e72bf1cab9a428f4a897f8ea1cb5ea4346a9467c4ea235c96c2252e03b2beb6a71769ead85b89debd2da0fecf80534f45acbd4e541d93229ed0024528defb1e6a44e3decdd32c7b58ec27bd249353af3c77bb9490ca0095c8ce4e3b4fa3ac6757189e62aec9a4818716188e936631732f71de3d6b23d05b036fc23b3c690914374a72edb7fd93a53585fc5c31c1d511903a82d03c9f01d4764c0fa5abe62432aac83c6ae199f50b1ab41fb20a73da90b4b3b118b124e0dc67f7fe4a67e9b5b41e4e98508be69195c0535b70b6d27766ce2000cb9d6c821b7719761da9d06353e5524157bda0ff027e2646c7bdc8a0664c82a10b367345ed2e49281dd1e3530c28e6635a695c856f4c5d426b141cbd7e547a51a1ad8903a42aa7a12fe6ef44a3754c09b5445af2d961dc5d3a6528c9e5293e37c413cf42d11acf69eb9b6b3afb41044fb3edff4635b86130697d1d4ccdac34415aa237658f29ae077f4091df8de88ab68b1f032c9244c730e47fada65955ae76ed710e54aebd288914d88268f080ae7549136fb4e0296b7a7705046b9c1b973b3df60563d1b829aaf4d8fbdcf93f364edad7d910a1e1d278d86bc8ea1d0ed7ad834389c06a48026e102dca764cb35119882584c5a4746d646fa8ff25f804774ee8ede4c19a63e0631833505770ba4be570ee01d954ac8e6aac90ae93b12d3bbb99fcba731ba60c30eb90fc0355993de0c52fcc0855261c53c68ac464cd7b5a4f05e76e738e42450b89371e84be71524592d6a27bf1c199561c117c8dbbf1aa32871fb5d6ca724beb1e1f072c6915dfa3915e7796b79b8f7c868886bd066870797092d1d726c803cdcda1258c09d737ae0ddaf0075779ec080506d90158b1fc769e776402510dbab77dcd532bd782900e63226b08025e7fb85ef87716bef3153ab87161d5f8545a0dd93ddf540bc28b54c609f05d8e1ace86833769a85589476cf5245484f793dc3c18519ccddcad26ba21cc1fc3e86f584d2fd8ebbdb09be7081cb06d45df18bfd3efbbfff4c2464e5658cc4fba51e8522e8eb21dd4d169e09205308e441ffef7e4b00db4c3aaa5383274af98da2cc43a97da35d6b1ddccb417fc25d5c6542e297a002f61f4b43611007d00b8460f46a9a713490c4f641fab911ab77c5462ba2d4553cb1aac66e1b3ef3c3447542a71a67eb99c7ffde9bf00652fdbc500935687d42dc20c4298180d23467ebe59502b9a1847e516f6d8eae50f5f4b22c198f912e6e17968e790f2c00be75d47df3022b5c19fcadff3340af55454cfdae68d9f43466227931aaae40ac069aa9edb2ff7c4b3d172b9a1c48a7b3282677bb5d7693cf93965963330f0a34dc463666063e9d4597e01a378e6d98bbefd6b7581753c307c6eda4a826a7fc56ff13637807d93051a1f2cf4901b85d84036fcae7479f4b4845b9cb22f6376d1579036accf2514d94a46d3dd254c3cdbb9065fb6d38e00569861f6c24379d1bf295f374aad51094d0534face0ab20b641ec01065c5c2056cc712f21537db52bd7b4d1f15756898af2d28062d116a561f7f008f7b71e1bf9f9823fdfcd6f68d0a3e0a1111f343f765bd368512d647cb34c5c5ff7ea6202485d7442eff06ba800a481d8d796571c17c32fad1a5c73520b6c3276ce8f433674640a7d7edb05a8885a1ac8f8c15f843a9bbda97e24765d09ab862d68401f70a6a0ba03ec48d5edda90e4da248923887d13a71c832caab8861d66c4832662d803f351f816c6ba0614fff08ec9e3cff72ba557c39fd3b91657e02e149ee50c653b21c8782410306ffea9ea19c5f08077d0ba5dbc0c98cdd5a1c5c142d90c5ea91a2917178aebf13c0300d537986946b5d2fe720a378c90a06aa8b7fd195038a54dacff55f21f2a2f772d38a1643a941c5b7462ffcf0833dc5a7b63cbd0bc121a69c6746483e445cfc1aa776dd6f7ed1621b2f2759bce02f64a422010713313e42b43a904eb0a858d4b72aa46f8eb648d1d4b91b57eefbc49e9dab98754d15789a4d722dbeb096f96f64367282e63f3df3aed9d067777323f15fc033d7e2873c1e66273a7a57c48f339bbdc2df54cb4e7676c6c08dab624dfd5bdf679ce713e4c3e588ef712dfe5c5d71f57cc510689506df94d2395d8252252583ae6ea6e0a99cc07526ddc0d9366629b88ea80cdffaf1bed40797186a54ea5502e6e3d0c72828eea6d8b5cfe0a57f4b100f707c72071afb4ca40420c6071e21a0347c52c16b7e54d0eeb69a28e37dce912f4bf680730861c30ae4ecae2cd548bfa1e589063a9743ad7b83da768add27ac6ae6752a9b8b1430debd06547ad4876fb727dc8472a86697771dc8fcec6aa215675b4c08a1c13bcfa6613e7a62cdf7187466c716f844c7d2e77df3076eede220f847b1cabc06b0484865034936ba50d73c2e178295fea13b48a86c312fb9722de9050c306b376abf9f2305d99c47b11a72daa7a579c888c5ebef39e9d1da108444b3e3e3f4cf6a8f65e338eee54c0e7c800a4bb2f3a20403c0cb0c1cf7cfb0df22b5802a08f26cdfb9488021bffd692230d38950ec493a9aa1d54727bdc37f1624b008ece9c105f2256c7c029e12e6897df9bf7237fb3f13c00e25d37c2e91bdc5b3a909643e3fb824979f4829051f2e562980500b6b0446ecae8a12bf64ea02e7e0831e8340951b444079ee7d4c67cce9c3c0431125ed21c8d1940590d780c17c445742d7805c4464c2166d97e630e5078e1b4597fdcca82538253dca8d4af7e4d7d76b81abbbeb7d67511a5d844e99af2c39333bec0e4727353e6ad88876c44710f0a3ca17cfab770c6c38a53bbd4216e8c8c4d3e6e3427a9899485a89aaff82b1ec7ff4f4cd0cc1893aba1bb100dcfb2755152ed610e4c92f3f1fb0951f90735207805f31bebbf34e97e147c4a46da2f0a495989fa98fb1c0586749dfcf56f5aaf964fa289734818c8f9311d635801076f5669f41d0b5c5fa189ca7791c2dd895b77f3b584cddf58d4f21834785f7a27009566f9236cf59ba802c6e0f6885ff3a48e5582168d60da03b0a61bacde10cb5313470125d009c8a4074357941cf07a1126ee74eebfba49e3f93f7fa4177420399f3d4e4184c2455c216b33d88c4bcb4be963d22d5ecd59630003d98ed5c19b5c746a93a3bcec23c306c004aa001ac5d4448e06bded9f88e70f1cd21876e7d15e2a26eadc9c19e8f5daf7eb80f9b934336e2308f36dfbd7e372b8f1e2c595a9fd5a5bf202faddc2efa44c7c8045e784015f1fe282a6869a538c84b494096a71749b0a21e4d2a6f3ac34b38ee7db6467a6e8023e5e65679afb0ab2e146d7f2ac9dee139073e682c6a52514c7dfe27793a8bc6a6caa982df9687d9ea363184f9096d80ebb5b3872bec5d80081ab60e9c9dc8a2a53c3f5407b789b5716e80dcff10dc50d003e3f4d80aaf97601814b029dde21a0380c5d65a08117fe5051fad5dc368525bfb3f22ce5a8d0544e2057335dba3c4ef01d5221f9c6740f1d061e5c72fc19458684f77b9375cced1c1618ea0d323c5aad89b4b91177191cf8dd7c5e654756365464d24dd7116cf9ef4c929c9a96675271d968cc39ab1242c944acc99c6b4c2de33d5192a2559fa8965665a1f0f3274bae5457b887924577631cffbf00228f09fa4db83d9c3d64a690c9a2697450e8dd33f07356e6364fb7aa627914d0ba3924c58d13ff834fc89941de4426f339d32694038da524fd494c6aa7553506972e6fb905d8ee02d89a24119f93f8094c7df36483c80f9704f60edc8ee02a9768260d364fec1c25d1f48d28aafb80fc0f8b3ecfd89858bb81805760e6373f57e3a95ade4b41ed5b7bf614cd5dcb3a6acc289ad2882af54a4c0aebc2c65267610e3e5e8fa2e18e6d21f82feffbe6565f06e705b34c3fc289067ea2a343953921d13d6ff6837fabfbe5aa11dc1a0e6ae6b4c908549c20f6e54cafee940ec62f63163662d93ea6712d5b657fbd5eafca0426740cec7f59aaa3ac0a4fca7e4434306f7f5a174695beb0bf58c7da2e8c8080f68a22bc9137b3be54174aee4174d2a9b894274bb35e4e2b7cb22e97e80ddf730cc67e4e338c29e0c110454d58542e9b9bca1077862f325e18918a3e2e3240298d2e4b6ce305becd9f063913cff6dbdd536f0a93a6bee54d0493de3b8458d3ca0ac44aa7a61e7ee4d6ba2c1896820258594b0f50ae2678714d86c63347a8d181c0f18d3858bfe5ac03e87bbf74ccc84d081942d61455cdbe26c8564b45c91f9636ef9af43bc11d4706886cd0ef8a6099386b331cc97bd9ddc27878c0ee6d4fcc6687368c896d936b1179e6a197275d30a13a4bbcc5dc597a1ce7e89c3fb228b892c7e3ff1bd899a162cd3890469b2f126be41642160bc49703ab1f7d640e9188fae12c3243724ac0e6db61ca13472c346de537a994847f2a92ad4124d86b947d6ab8de29581d84b5652a8a676f08b36c54a76c47a750ed8c782eab8c6ec1194d7e96978b39c6af33154e9bd0f73623baa582153cea0645f113adc2d92cd129cd1cb48be18ed4b575a411117439d16a5757036838b1167c6d07e4214b9d2895d964455d751cd492e221075b758bb6ec2c38af0d1562618bf526425e52f9559a85481278bd452be0018a56cfc2aa2fcdadce3856dec184c092c53c4db3b0470ef05bf4ff5f994362f85691a989a622ba10dc2c0b8ac6baa71554a23c70b4f401a7a52f8b55b228a01abbae5dc94956c39f3dc62d72d928053e98c67c0cdc4c9b1baf62c255be7c2e26942cae28d5dde63761e339cc7dac69809211130e8957f6a04e8330fab834c95687575c742fd235c4cb9f5a3322714c5e31787731cc61a81855f560f198ca5bd19e76c4893d2c7d58f28f66eaf9f26ffa9524321d7dbd4cf2b9a001b40eeb664b82473e0d6f62cb9b01f22af20ef76ba4014b79767d7d026d512bacd7369c20275af2723824b842fa83ec1902eccd84574109acbac54f7b87e625fdc8c7e5470898cf283e0699ccdba969432297fa85c118a09aa0ef6615d0ead8e6a543d636ac0ab30f6e8fad3d349963060933be44e8344626661f09285f574924c8c1ecf47e8735fdf70bc880161d0c3ea35b68ffa95a178313af9a290cba94161fc991f63a910b5bfc2f09935e17e453f4a077cc26861f15257bfdd7e0bc700ae484fc8683974e191426d25511606b585f51505eaf4aa214e45aa9f23644c53836a807aff681e3b89a9e081e48c99873cdb50cf3223eb43fbae8ed212ca8ea7d238b3c82cdd1c16f67f1e18fb96fae51321494f0cb7ee9d8b3f8ad5777e5eb1bc512ac9174e3d6d2fbe2fd74f43e9766299a650c9af484fef5144d94320f7970a8edf63bb3e24360f1027165bbb89f071614bacf4a36384c7408dc821657904e158355303007ff30587babc78e2dc232795fb357fe37aef6310e8e735fed0eb708f084f122dac0b05f77574d561da0426612cf26a0a41b1ba1a66d26c47d129559158ac833911be8db471593f15d17660f287ffd7940443eb946f319023d2680fd4f3ef1558b8240d5b1f865d695ae17fb84cc292cb17309d57eac2adfab0521cdcd108005adf397bed55ba18129c10d7ce2b3078e261afd611902dc0dc4c2105c5242e4b37d8d6de5dc30bba6b996568479a7a88947a568297f510769e23389817be467abd928679ec4713b2810c268d8b5a95c103cc099ac2907d580c6a68b4a9bffc4bbd10f0de57079443faa8d5aaf114c7e67a4cf9782147feeb332ff7cbc2ea27d45517593d66fe05bf93c59164c10997041978a7492deca509c969186fcb023ec3bc3f626f7df2ec3851f5a5e566fcc547c0ac8f990567ed192b75b5a0f999d4f1f328838d85d41b572486f6ea6e30e3243c059efe1411b5d8cbeaa96697315785cab51e549323943d1bc81427082cdf0e80c5a3edeeeafe4b2a2b778782ddd53d9f358640cd18b904bf62f42da9cf53ae3637948fa2d9404909fe7127ee7209d6d8940f108c62c32a306923a99eb5dc8c65ad0792678e75f38517109fac98bab4e1e18e46a7a128bdb1250734caeb583abace502202a64179a6763d8201556d13264b02539304025231dcc627adf386595d45dbb38b84fc7bca48a7deb4e80f2d28bb875c43d5cbdbe0548500e641e76e08e0b4952815bce84da55f5e59c3c7eeeebc44c8e54f45c20852a087b7a4d4b9437b0b24b3c63cc501bf1279ace72a59f4df3b05d243645de9a454f6c9a9161b3bcd55a4a3b00458321c6224143bb36f0ed8ac5d488482223d0d26b11cf09afc12d17505c78a215f1515b9ad3e9612deec4e984bd8a96476e5169339d3992839cf2b1a625295840b911b3f279c7bb75473ede1228098445a511cd2d176c2fd73fafad29e966a270154162562568b137d7ba3363352ebad4fa221a308e65f792fafc5cd793d41066ab53d38cc07fed0ec5d4cbdc7ad10fb5d9f12f6a91ac54b9496cc067631a8dc4ce1e743674654f7d3182f63251b8090649a59b5d963ec42384d7d9a90c2ca869bd2bf92f8f24b324a9e438323abf4d385bb5340f16fb78c9fa102d3c9a55056294051efa4c40cca76bc3aec7195f0ffd9b8ba66aa02dfcb6be167304b7fe4d46ceda495f9667a8424254ca26ac4a9c60ebd41c30443524a7310de2d07448a88a840476507760d52cb8ce891f3be3846873fe2f48c4f1036f407d06c4421d869f753763253a93bffab13e5f302cb3a889b53fc01c3f96c06702bf6637bf610b81a5c8e3ec2eed2424e210fd6698dc14a09b047a152443bddcf4b2c11b2aef5236974a6b91f379052b0fe7857cafd649e67fa372051592303c154470a67c165992d3937c380681296fc082266623621bbffc11f44359dfddec394bde965deab434eae74219e6bd618ff1eac0fea44048cdb8387b23d0df3a8f069e1cd6938e207fd0011ae5de26cc12def607dbb7a1a7c170630f5654b49d1c9730d89f148f765664553b6259e1bf61dd229fd23b58a9339aa1ef733bba60b43bf97c1800d83de175bdae1445ec27edc10bf3e52047ee5ba886936d3ff1856794009af7b22d3d44288ce37e42504d9e4c2cf73826b4d0780b42f41bd28be5036e578c3423174c21a7dbcabd363797ea7c774358c45e00ed6e47dc42922b4b0369b5c311b5f9d5a333b3995ae30b20c352d087a1635c07663fd43e2f1901dccd245be698d1a71991c27056f242b1dbd3e65ce888503fece25f71f571b33c4092cb4321f39a224586faa3e3a41c81febc0f6e267f9186c7611c8dab58eeced132eb68407a2e49745e3704b16a0e97be421c5d6c1b739b20245c1cfd3fd84d9c6f41b4c97a27815afd19406f4e418afe4b10b7d447d59df6b4c0f1480b2becd9f990554dfe2c907e31f72ac8bfd456b3bd7eeb7220512be95688d42631615f26e8fb63f397a2d5ebfc357a9048a3ed3990252928e178eb8c86570719190df1d45cf06ffd050777a06c6eb183d0dddd2279666de26555862da3a50efe2aac934d27cb25b10018e6b63505f6ea0a38e076fe5fa0e47770c94f39a3e34351eaa699ca67147ede40ab120720708f661011d3adfc227890865c02e48ee89d306cb6a1e036d495d5b9755019317dd8f117af10f57233ef0144577450bd78ad2bb0b5e6e97c2bf4ecd18fa2187bcd1266641dfa307e8102a47626d1e1d24ae3197484c2578be451a750ac222363b4d943806d06b74adce5591ad3b029b804b60714cc92b5d0457a9a6d33c8458a3ac15d126bb082c0586d732dcad3b5a996ce15d776b1574ff95601999d9aa01430574c365da2920aa9bb81cf7c086832dd3a709dc67ad7a44744b868b20a6f38dd60d281208eadbdc525f0826a56ec972d9622cfac38bacc1bb2a30fd34afe2f241064297ee42f9cfad9ee6bb76aa273bb87302e9e1e92a8e562ad7d830b892f6022973b952a5a40ba601a1e9b4b2a9b1b652e65ff4167a3ef924c82c89b1c35753c2aea9fa89d256c0bb5197fe1e94746df516ffffe398a40cea576ef8ee65f4a841b7c843244adbdbf9e97140f7652a9374384b367d269970120b82b3b00c6cccfe8fd4d059c0631987c67a96c38b35ed2174fbf7092f7d7f507585ba15f92ca69a008e263e995e860c6163ee6f916f7bf70dd434f1e9e1013c61566d3ded13de69bbf7eee208e04938a704c9072b6902946fa600cc47901fb0d58e97298df7d549d53de786c7d102a1b9417a00d6a671d0c2a3801043c4d722acc061e5b49ab945c25ba6895432de04b18502a4b5cc2f81447a679075ef0ad4cabd93e32db55323462633d761d2f2fb7669e110a80d31a492fdd65fabc2542c6e3655f7891bd4808840f80f662f5e93065b2188ec506603f407b0118085ca953da5bb07b529ede22b2037d242409f3a670cfe46740f8846293ea0264ec299d8fa2996d6d5802940ebadfbd7d640c2ca4bb973027a16b9d7346d8d883737702e58017cf1083cb056cff6d26e86e823749924c50fe0d3c260760ef1c3340ccaba82bb3543025dad04f85486312628128da7103aa1f76dd0b58644bcff4b76f99eef8f992a4ca838ba8a6b6ae9712198c28839e08b066cf595860cd11c1ab245f617a415cdfa648968facdd64b10da34c4ae82dbf68e0753e473517cc91523d0e06544484afe607262cbfed93c4cd81bb7496c9c8fea54e6152fa4cdd079382a06f05461aea5546ee613df7c3fe782e54c23ca99786ea32df722a40e1bcdabf1af7033772e5ee9ff528d29f4ecf896ed321719ca419f70fa163d660b39d4566249ec164e46d5e07b014fa63a8650aa86b6d69df07405a36b10c36cbd37674152e446725c37c5b34a8550ba6e844af46c486fd1b37ab00291e2effba3ad4aba1360a9cd9d685780150f1282d5598184ce4c3bc79f260f0cd370ea327bf24e570c1abba431a9b575d8dff9bfc1f7a2225873f6654514ad470082d3c10d92dbf8b6474b67e0035f43d318867fc575686525389d10ccd3e9430e608d5fe25fdef03cd1a9a8a3945e6ad2183204435a933bebbf699246ffc23d27a3638f087aad83b5d2172495306178c9b3d59e450f827aec036a19f59ff74e39c324ef2663292b8e392bde723cd194490795040b5be2ff072f44645bf70c48479344a046f999a57f12771adf2d1a63c1f36048b480edb2411fabaef46117134333b8910af5072bbf0e4d96280aa5ee49b97d55f22be5884fb42fcf22210c3f5121761ffe404c09c9fcdb60ae872166caa45a4a32658c0c2017618673f016ba0c62848b4e2f808091ca55f45e3cc691f104ed76e0f9406f7104cc00f5bd92e160310b2c87bc936c5a3c62bdfd14e2ae915f41d3332c0c8701fe0449695d50e6d5306649fd7c29bb19cedd54dd3dcacdd90f73eac45562a782c7ee683fadd7eaa4f7313a5730a6ed78cfa181c2f6aaf943df216ecb4fff2716b06f171d720f6c18f0098efa67090ccbe827cdd87a86117af93239e8900a65e5e20e0a61286700d2b3d4071a90a8cf208dade265a74672cce1a9813906e36b28cd22205b9d035740e4618558b3d0391b86c7cb34df855f1934dc326531b2ce81752f55ef9bb8f50ee5d3969023b78b146c229725e41fbcf504a8885d4bb790c5c99fc9ca37bb219d11b1dd90b299283bd9dcc3bdcd20dcd97d0c043dd5d7a4c4a639874e98e1577d9622205905c5bc58ee255b95ccb32097e16bc1f48766e9896a61c61559b0da1e81da611f4d99c98501fd0af000230342dec36fde3e5e08e02c0ef79cdf50827735fbdefe38bd4326cdb27bd23200e3b6cdb07787a89d2abbd79a1f45a8c0fb5d71901ef3845254a7eeb6c3a86cc53315531165eece45fedfd818cd6556ca0529e72b846da0c62ac81077f6b27b4badd103064795f3a479241db036dbbe58625dd49fdfae2f4d5a9e9fd2621c90d96abd089725b4cd6da301e6d8249b7b02bfd9c0d22a839cca4f5ad5372a648d55e64b7e92c83d43eb55a23f984fe3dd8b7c7963bee0344df8c0f4e2be19fabc38994faf830fbf81384236604ae46417d33685105057487b42e649a503dc52fd97dbe20b1e37af18ee1fb4e7ce2f342bb7678d929c45fdd91cb026e3e4bc44feb30389558bde23aeb6827d38f13fbb23bb6d35f26cf1b7d0a96d92de9c2b90867075fa18eaf519c585ac79d66bdfebafc9238b24b8ce41d9cbb260dab23d97f627cdac908476dbb08f91aae431efda971de974f3fc61ff36f050f2890bd466de6da6b4a21ce0055ce0a8d9ac2b8bc87ff08587f6db95f493d83858104c0fc50478944a0bcb719aec3cfe7b5f772847212fa19bf19dde9eb9b4c87987dbb14d7d0599e9e90d0e54d33541028d72f718c7c62ba694bc79a94b93ce8a3b058967305cea6a6530c6412afb3ab292b1ef8cc8d3b2d9e29b3122369d9beabe4fdcbb7b6fb818713bf5883b5bd5f6a59584f5a21c099951d1a963d359127443dda17770473bda92e2ca5064ebe11693441e6c45092d42d30085c0d0b275e72d289b2d8512b69285fb548be79b9d65be5c789315a38829f184c48a6f247822b9229abb170f58d05d68552fc443dd81408b58d9bc683c4311a625833adf1cb8c59e4ed313b3bd2915f9f776ffb4d06f8ddc1e79e7f08a1be1cde34206595dbd8ad611778068419cfd6ffbe300a72e8a97e096a342e58a82e108998ad88b288321fe18716b9d54f31cc5da78736b411dd1273f6139aff3f4f2408275f730f2bd3b1e5c21b109e3b31ff2d13d401c5e838fba380898de1b8f251bb6fdc39c6469d4a1d1d0b1bf74816df388b301d39bf065b558eda88cf33711aea4063d3d26f530288080e3ba0f604d25027112a72d6cc2d1466c978c5a11c14e22ea3de8a0c6fe937ce41ef8117bd4510ff8975e88e2c66ad822dddd115833148afa83c8f03a75d3268c47d5604ff3ee85ee09dcd54d2cf1ba6cea3b8b2b9142807279663fb7160030f60312a10c853315a72de6d00bb8bcb58c74c6b795416b2899260339b77bd0aac7e33b4b6563adb1fd7ee829e1edcde4e198c1a236f20d45ceb49fcf04298b6e005d6317a8c4d09c7d8233970006042d487d422e26e240bdc0a24dc8b4cd521a194874e35d199cc94a05a4e09e59bdf5fe12fcce33b35afa5090959d974aab85b010c5d7b0fb5e87b7d3d0506c25036434772f3fe3e4ad270be64799c6c8e64cbbab9eb2f707acf20b66353719c8415af8634b3ba0616eacff3147ba01128906ff423b30dccbbf17f68bc5ac74f266defe42257a1a30b810fa229fbedb2f0badacb9bfaa1bc78f00aaa1debcb89bd7adf2cd2c89ecb65b8e38fe3c20a8d0b0d4cfc7a7b6c26f2a58bbd070768a32c3efeac2df457e96cae89cbea7b15933f3c7823eea4a770144ee290c7db5123c2373bc25fd3d43c3e1ed13322f5588715f7c6f3637ad346fbfa16ee913802d5166ee34456ece002072e732e660c2a576f4122ab86b69e633a55e54f7f42c7b7c68a981723ba0dae1a7296b77117b238f3ac808d37eb412383950ed32e97f48af3185a8da2e3a2ec39e173027c2e3450ae57d2a4664f83d6c353e78c8b4da65f7274ce5278be27ea01c774da779d94533bf2ec258ac367aa48dcd690dfa5997a90de1ae0a36b8e803ec608dbb933ae5e2246c59261ca71d7819b5e54a91e05bf1b6cd56f419127a55b94c53044cd1061fff59efa2ceebc2a8bf0a28df7bc7b82e1cf8d984a9493585f5f9a1109e64d77fac05828c1aaa23bc3f53e182de603a0c333233020303f3b46993d10122b6e7e1da9480a0e732fd8b78c1d0b3c863711745963051242bff259dd0accb74b714957e7c1de8383512262d1ecf0db3eed47fa4a6e204fa9806c6a34e058c4266195301092cdc01c781c533923a6cd8e9eb47cbba1d7fc3d37506b20105742ad52f2b13f2df612cea806ec2743262b340ba5054fdede8a90362846e68058673b4081b1e4d09e9c87eb61390e2192eae28762b4f9b53345d629e52525909d355e3d8c564c482321b908e2d30b8d1e8e924279616bb467a343f58122af8002f1d4303053a1285d870f4f317138850e0d1d7829feb038bfe477893205cc432555517ca957c6cf87e5882fa77764bd204cec85b9dec0455b6d90c6620b9a85e4f64a22d1d37cb8ab14f0fc11c8481fbe828fce171a0cffed26118ddc104309984b682712cd176c0d5d21209bac207d53407818b5e2b62ddaf4c72a036a49bc1546fef51575e772b9ce37c3f955767118bcf7ff2a2dc5c040be7b2368414b3f77a4db8f72e401eba230aa684fefb928e4d0576dd7dc2f3e67a1a836926c3b46f294bee48807e8ce65d102d8c62663e955b3a9511e482b5522ee085fc03dd6258d33862cf28cc67f2f5eb43a87062019a4bebe635e6cb1ee79271359741f992c2525d8dfd5cc94100912532170ef68a7ab2f24ced637b8f9a153449264029cf20a534cd78f0272ff637958e889a59ca0368865fa6e70d39b0f83ce7ebd23cd93eec7a135775900bcbe104f91c96c15b51be3109008ab03ab0e9036860f39eb99151b43f36365939420b4c9469a985d4248835028a48baf7da1e1ba4a3b58130507180fb2db4c43a0437bb3dec04d2e8fcf521639225107fdb7fc1a081e2a1701b668f71ff7c764aefe505a0da5142089efac1f122bf0dfee02e77329ad603775a87dc789e6058ca69fcc687f225697038ab0ff5dc90d3eb279d5c5228a58ed78873536746556e3b64c88bd4228bba9c7bd39c202673f612af38013c76337c7610ff3b165409e5c98d8cdff3e3dab7677cb829d2eff3e74e280236bad473b1ee70eb6aa710ec75260ab3bb11030a98b5e114bcde55bf701f95f0172582b2baa897ac6f1e47c159b6be51141df8b0020950cbd9763fe28093b89469297fd06b94008fe6c95e0ee1ec6d6e8b25b7deb16c5815579d7029e257833c50d5a7a0308c9343d30800883bdef5142c5e1ad5eeb1d5d705fd5593f88ab6632e239311195d6013f8f8c074d04d3050eb95faa330a90f10d6a8144c63c9ac248a83e5f398e2bd1c121f5900a78387b2113db9a7ec4ae6a4f87f0d2019d0e9bed3113e40d7e80bf7f0dfceeaf658f45da38e5e637831261aa230b29072e89ee23db7c06207144ba32845f64bae426b8e6daae960072c736cb3fb77ec45b0b4c6606321c3895ec21241e8fb441c51f423c7b7fff923748a1338d2c1e7c56211b8655f06c20bbbf872a79e8804c38202a2e4ff2ec74f430a4ee011891790a446444292734436dca6b7d5daa6322c478a6624e29413783cb808246db8f29450cd1fb00132106b6b285679fb4307c90b045a69a454245953d5d596a0c04e7362c13a8ac58eb0072868b2259c61b856179cdb55dc13ac1f40408cfc5b01a23c1ee2b2fcf018a4d6aa1722c2921959d26ed9190ce2860adc903524da3bfa063026f736cd3a8a7232fd98d8d4b735e42343a3a911a864ca0da1a45b2de82369ce95e27d842bcd761b154e555f4c41648ae7771c13e63b29a0b2fce490434357e4028f1dd89d5bf14be8ec58a0093486b14dd82ef3469893e38fdc834fb17f4276c7e14de31dfcf36da2c42b9354df509a60df999edfbd7c2f71d05cab52e34779ec778f24e00e828d85215cd5948affcc7d5247ec4979e19366233c7e2aa247a0c4da6dbdfa59d3163cf856c01d8e8f51886704be03ff0fca8de6019ffcd1dbbfe7b3477d6675c3ee124777cf33ce22ea1d49b9e4806de3d2b728609becd058eb28fb0a936000d36ad8e573899b68d753cbc08ccb9dde03ced5ab306192c72053fb7dd7dc324b028727055ae053a8d9030626e297cc195b3ae76442ad48d1132e37d9585084e7866f6ae0e355372b8b75e94994c9d6f88742b36ebc31442594d2f2befb742044b38e6d0ffed35e9794684c525bee192dde1d22efd0398d4a1b9347f70848bfa1329e3397571b7628629868b2d603c7bdec82015670bead5217963e02ed28e5ddc1834ea9ef4fb40bef9b927661d7f1a0432998f4dbaf2e6d8e75b64adba94d44a4dfddf38fc676cd53ce055879e1c6288708d140060e5a900c1d2b21f65dc150b3880b5ca337fb5dd4dd7bc619cce02bcc46fb0308dd3bb746bbdb810c3d9db6c0d90fa200760b7b73b1acc65717a8e76de86bfb2ee870e3c5ca15db28e826a063e26c44b65b681a2a42f1565b29a354b8d34877f893c006fe643f1371291d3ef569365f4fd45f7545161d38a9c3a137c1f5e0826e469cc79a3d71129d025caaa4e4dc52a59fbc22d3fdace09da2b6a699df9741753ad3670612e22610aa6c140442f223fd5b7cfbf4dde89701335be690d45bdfcc3249446044e36bfd4ee3b381555f21b11b5516cc784d6c45d0815eddad4eb26629bb961a0a007c8d61ba58119f2c1dd6713f95a54e51327a551bcd698ca510d22de0775745a4cd93144ecc64a030091c615850568d8ef6f6374ff6c84e77dff868c0ed5f3568d68b144ee030c16f959284d4f66aea8718fff4bcdc532e6cc00b705ac534569b36e912ef1e62cdeb25c1b386f69653faf3ae80368aafd2a79f648a617485b84780bcaff9e733a5a64bf8df05623a519f53587d0c132dfb2b14e80d6bd6bf89b8934e139746330e0543f899624d417c61675c3131cbc3c4523e9a45f4cf96a409c67b8f1c7e91b11e987c3a1c5243bf41ca19223f28be3aabb6db3c0aab7200a2e286cca115955682b91de12fd2791f0fdea4c7b11fb022e5995666fe908b6a3167e1b6409af5b065171afb2ae17343cef1e957797285c4eff1490933ba67b01905b112cbffc68acb9b9d8936ac01ab4411d0160739b0c6a79bd3080941b5d6db1a93ca099d44384036b0b0b3672466c8fd31781d6429fa865f0f46ce05e10346400ef74fa5c372bba58feea31607c8664daa91c48511a7b250eb6e5fc4b51d7f70b414d6ad412e333f2cdc9d578e9d040e94f6d5e677ac380f19555c07e5f3cf5676015c1ae2e786f30c19e3c7c6cb55e5b61b5cc3586288f955d0e31cbfa8a78cb7ba3b1661d36ae1adcf45cebff8ab05bf998ccded66c881a55330ee8eb55e1805016acfe614516b509bae1ff7ed4e704d2cca4d8b4ecfa083bdfb60e67a5668e4acc986b17fe75d6f93799d3be45c586661bc49d1c9ea998a319cd1c467c306c696fcb6b3dfafabb8f797f907550ebc7d2b86410fcd4240cad22606aab9dd729f0d035992e643b4eac7749c82f66ca56a1a95049180211617b79783cc20b4dff75ab91f46f6f5e47bf486c6a624e2013059c3966a2227f449732dc1b780820391a13d9ec42563a012a3129a6a7a5fbeaa3e6352b49aa4b1a5a13e24ce5c67c16ddf61fac281e1125bd24f7db4ccb654767d51eea4e4b7f882778e2eed8d20072b059110c4849b671e3d27c405bd201597f563287a7f6c3437887b1a5b798abbbdaece30c701de48f84bb9be22199a9df69186c4e33ebea6be02c2717a095f0e6c362dc61063063d24939cd13409768cc3f05141d7367b684162c3d359bb415ff298b1fed6b860534f8ac2d89c164990d00814cfef46f47ff040cd68f1ee6131b6a9a65eb45f215e26a8493fde5eb20f4d66547df4da38b24317fd8816c2924e3eee1a06d6b09e33f5221e489b55a4f4497c0754d6606f9000428bb51d6da4ae15e50a18a632bcdc789603455e1fcab1bd6a665126521260d40700b954316cdd9cb064e366e761de76087dd7e4ccdd14d476fc0cea4642df096de6299cf20f378118f30321d19ad99e4ec6709c9544c772c67d7bb13bf1bc1c93e3ec453e85f2a0967a4b407e7147dfcc80753de9aa7b0634df3b6777fc65cdb37c0829c71da773172da9a216b2597821ff244c59a5ca9800e0d23352e999821ab21a22816928d12a3d1c534bc58b78edc50e3efdde9979039826c5b630fe38d349577982f76a8080743392469d4996e6296f5a41a97d57d105adfaede54ebfa9bd73e0e35eef67524a9a942ce91f569c2e506a5bbd442788d8ad71461c8f4282fa79c139085838292602842a0e71cd71543f1a5469415a0766f3e6aaecd89869ecee52002fb215095ac994219717bf0e4d9b991b0a0c76e3be5e07d5493884433979ec43a43c99820229758ecf765cc304f0fb10992064bac27727dbe7b5df91597d8938f7f814f4c923d50d2494d211a827120b48cb20b4ef7dd00535ac5c580d0149c8086319384f0e431b29c530a6798517c86068a3338f2a80d82736a3adbf6c51ea7819baa6ad341201728e2342cb785bbd832bffd01e536be88c4006f60b68754f473eb43f8dae724b3ee451d7c847e1c7409dca0fb749743f05812b99d6688c364d4f0e8f24a4e152407d3dff79fc841a606b8b526d81ad624cca382e4a22f6be9584851867b60642e54c3730bc62a16e7fe017b9710537a812029d3bd82e7ef8e470305e3250e020bdec01e16c64a64d1b68d224eb202abb03329566533f1628406b4146534175f6b7d919113c12524cde22d97e8c6098299e3a8ae20f667b194d727c3ad36f11cbe0a43889caac84d7dd9d4286923be8a12080e7f9f375334f18f3e2a8dc2d536d0ed98b16467957a6e6fd2b9f64ea44a8c16f367f1add77c9c9b004512b32800f28cfeff8bd201a6ba03af5a5e23f69c6a5b6aa6120fc8ffaba2c417da12cb4ae703566a29fdc08067dbba0977a7c85a5a46a6d213e757d1783911dabe04216394ada54e1fb59d247c67d682c6d5296541fcb3956c4466ec84971cf44daa695d03bbcbe357302449c829abed250c8081a9551798ec733bdef09b69b0b7a1fa1d6ad61f6a03844d4c13be676e93edb8b9e91be904ca7032fdae9570718dcb3624e56c190f5a61be93d2fd3ae1eb11d32774921fcaa7ed9e9701478a4abace9b213c7e2f5b5ba22957a110355b3a11b220648caaa05525c80e112338b06a80a2708a0571dcc1d1bb77b2bb42bedb99f5ec77bd2dfe3641c1c0d35bb4a60ba40673c4271f04f3acb8416a4ed51f6a0b5d76a2a774bfa7148f03b901bbdaf572cb4460f1c715f22ea8bf6bb11e2008ab8ccf74f7bca75296cdf2bfab4c5ae81818714ba834a7c2fc3ab786886549b5d7c00d61c76fa38e4db8fb4ad59f6140fea03f44bb84c69e5fea33cba2b9d5aec97faceeab97f7e504ad507cd6b55a975111606dbe9aa6aa921a61ed977717d720ddf79ccde283b00b4411dad5576731953a0c7465cc1aff2245cd2d39ef0be218882e51b71acc68f04a5275dec03f9600c7663dff32081cb39255ac5b5bd6b663932fdc6341ff10e27ac16164e0d4ec76091de24e3a037a6ee032d25953d6f20a18a9c5a54f0b501d7b92e507041e24755e381c0f347ab833f42f5cb4a04a5eb1ea23fe129540fa4d13735508c25b787d6a36dd5481478f6633265e4a0f9b31b6b06378176bca39b902791c99f581a72a493b745d712d1be2e99c88b83182bd99904081edc3167c4d63b70919eda6d38dee558de7b4d803f6dcc9a10020a2a4b0afb39801cee468e981e7ddef4716c9e30a245316360e54f7b6e2d3cca85f3df71ae94e0d26253a903fcaf338e88a1433b060ed3b505c16529397853084a3740c2a59d0ce7b425c99539f2fc9f9b1f08f532d8ef0581875b8e76006d6031b93b37bd7c3aa9c593f0392f709410107910da70c22bf1052fd4cad337093da194d8008d6ada49005cd7204a7eb781a916aacc041dcab6f4303fc6b9c5f3970ca442a4a78153760577321d759eda69ab5f74a952bbbcf6c8838bd3591e42e8fc743b7b5054473d7012c0acb9cca29319fffd5270d193912fe16da684517775c32affb0a92d2764b18e9f9bb970d61edfa69cb1345bfc75b690db655dddf45a8603042fa10e48ad1a39f65e14099ad1051972eb61856ab6a202f8c457a947e8e0118bb00acd7d03906a3f1a854caa63a7973dda704f856ea0e1054caf12acb1b85cccae34fddf13d07d0816644f11bde5871844f5dc22b540f9bdc00570c7438f09203e3acf06e8613e108a7d68a458db65d35894d15956ed33e32e17b6d49c3cbe42078280ad6a8bcb0e6d4ee4bcce034cc718c2241268d084bdcbbabc4df9cdb279cf043125d3ced98f63dd7f60c1a2c8005d21c304ac53fd6027ad8f6b5a09438338ca0dc199b06bc557f0df95a95d2ac55933dbe27fbd1192f64826f5e245208b4826b279314271ca5e5c4a1ba86c4ac68d256e5ec9d2ba6e40a4351268537b892d68383fa94635402115d4e51cc9acb12a21b670c52dcd22d0406f53f09161f99ca1d416d19718ac562d17abf6262929b29154495a623993b715f96a61fd9a36bbd2151965483c2847d1d8077d662c165ed0dd326983ca1bf5ecd905a8d63db4fafdb04a90e10a0773a4b794ae72fb579d4481ad569847f691959d6af43f9e770e2fa157189ceae9f05f26d043e0b8955530d658970f1d746f03850dc21db2f991dd7a22c7a0f416700ef481958ae118f17450079cfe9e06d3ce721fd1867d6bc8496969dcc7f831744b03b57697487f86e71c3579ca64495cab6d866114a95a1ca59215b4234e506ce03398b76671ce43e5f086c5ff690847b7da94198a30b9c2a6f10a83541633535d2e885e6aa697a0373476503b5e413cd33dee78fa8be395a9cb3e98cd59d622034f2b2ddd4412bd600dfedd107bd061a9e3bd01b970f36085623da2b04959a9458ca61e43a8f2a652f4ed7d3d820b45f99ae6444db4205e26e073e69821f939519b3780623b2242e43659c443789bf527a15ccbd4c17df8f94760451c7e5d07ceb060a5a0f066a98682c196ca7e5bf48f7a078d9ea27706ad07ca32ccde07ef6a303bc34225cf53a19c32a1c666d8eb7834d8249544f19934555c7713eaeec38b0bca32a681a77951ae7266d048245fbd08e5e9a8b8501575257aabcf416bba691a23e596325d23f10b76350ed32c21c9e3a001d9af6442454f7b9af2988a03fcad395776f232eb6316f0f87a469d47e98f4f48f0d9d4511cd6259c74991099d9ea151860e661da25061024c9341c13ba5900df0dc2aa36d413bfbc09e3fcb7bdd268b0f2128bd4a10d2ade327ca36091b786e032067f7a1101fed0da37ea79ba7b8f7f0eea76b170bf1d4c3431f2d8d54131af6c0a0e92723ba74e836c3127b041681b5305ff1183b6363895dd7127f0e928b1fe5d195eb1d33c49d175a171ec011cd523617e71d18ff177824ec72c0cf456da0ddf25121ddf16be89fc07cd0827426b79baa1f4661faa40f84d2243e13753a238681692922b53c5c05d6a18d2532925b7ee41c8954572d407a2eabbf10619a6b5ceff360d2f7dd8d847be5d22920127897a9bf84681619f820c1535e9fdd8f1090a6eabd6e2ed4d5c3cbc669f1b17ad8426c337130f7a2f87e4d8e803eeff7030f1175160c00f780a227162fbc93cef39db54793397df2504a511be24daa1c147a4cc0ba5b46c9caa4bc164821f200e2a06ee4a33101f6b73b43d301aa1849f055e64756a108363a81f79d1f985b05dacdac3a225295298cbef3cd44155ba5cc45f1da93775b185cf545d0c04c769c5e480c073b1fe76ebc8d48a8d27879994493be787a4c300d23986d8cf81e217b84a691420e3a6df804161ecb14e9bbbdcc165ee073a1515f3f5a5bbe2ee7d6c9a14a62453d4b0d5132a40625716669089c5c7fafc4c5e6d8d23e4366a1a5e18bf51acfe3e6311020513c488964fe87eeb5ad782906eb0bd7e34f259414663c225217f75a23626a67c7270ee03129d09d27a1b75539fb10f139a380056a5b75e3bd673822241326bd78f663f635b1694911760246776233c0a038e79703531e7777d4007bcf15a04f70f9b34db31e059637511d7bb10ac500840bc41a7eb86c637312d8d1615dc2f08840a3dbdd1cd70d65e72df6efa149ad33c66b7a9a30be29fbdb035f8b31a9e338ab8bcb22208976f4d27e8c1e7e566e095ccc6d18ed0b6ada1331974700308896093a02d9bcb8c67d0e13049a81eb30b548eba0a1b01a2ba409e52e3370bf98ce424e785f16c4fb8d8b707b11410cb297d50eba711e279c3691c03762611e971a2382aa3aa2e20639b1ace4b93aa872c12a876f9ade7f0ab8f8840c83 diff --git a/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_data/20462818.txt b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_data/20462818.txt new file mode 100644 index 000000000..5f4511c5e --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_data/20462818.txt @@ -0,0 +1 @@ +0337b13665a49b2049b69156446a70b6d2d403fb091b1f766ba6d81f9f406cb328ed257948100cef9e5cdfae2ff4df64be24d25338aa8f3160844debf6b07e9212150bfb9048c7746bca3ad6e6017b556e3665ed1dfe0353de2cbd99c584b7c12035ebd81aff9eb8d6131d7bd6b08f11bf47a5a15a976db91e9644bd9d4cd7874b3c928c555f6801a97a2e4efba5036407165b52bd4e14d661ba91de3dee1cfc43ab0ac9da00c82ccdbe0a359263ab8447a2e625f02533c0955b38d3598cc2933883b2b47af1065aeaf78944301c0a1b2107be448f3145f59cabca678d032ac4738bf96db6261d58cbce0a14d645135df2ae465358e13431e2bf959fc359d0136cbac1578a33af966ea968b46f1a9b1dfd9cbdd14707b22f9fac1d5f95469000500b8c6278d7991c852ce487c41fae22f8f8f915a15caa0894ac4ed00d0756df23d7ba77f6b93271cb65d28ddd6a6805453575d47991f4ee17cda32ee7f62f0c36c0424b761f43054bc1da8ca3129f39caccca5481e6f05cfe7e91c0180bc90101f2c4b830baa968f3ad68654fa6da05444c3a293905a85f00f966644efc009167ffcd1d0cb595343782f645fd163a9f2cb3129c2f3c355d7116063fe38d04ea23aef7e046f492a33484f44be85f7917607ac0e07640ed50ee51df340b404909620e6fa8610216a03bc507974035298e892b2d7cfc343a614c0a85b35045f1ba08ff019c1987f4b5870cd379904f27a455fd30ee942b336262b4e661131466bc481a060b41357a1355ed844cf85aa46d776d7c26cd63eb2a0efe5b4f05418d7b3f36ec025896de6c08e6144b53f2ba771eea1bcf9c88f49f766fdf3143de0fb76a07372a7839445845319831fa684ecead57279443d92c2a241e7e80b0e59e8a0b4dfd18a77b2cba89610149d00f3ff228cdb71e89f17e040278db06b9743f3d56d1aaeb8a4f526c9dfa23cdadbc625340478800717e0274608a60e38875caa50388fb67d4340433bfafe2d9723a2884ab1dc22deb2a793b91a80ed01a06ae62206f4baaaf19314ef110102a0d802da8cc40e44ecc5b130d89893c24137856015988946d5b8d1c7deff9789169a13a5b8b37089a2e12dae89df76c37e94138056ccae4c65818e0116186d423aee7d8b899d2059cfa1a0fcf941539aa72d72f3310960ca969062b07dbb21406771b97c56ca47e24af707ed07426efb306cd8a582b9acbeacb8f4f615f364b9fb450d0fad26a7bc535dd9899c27bb000941579be193735aacff4e287f4f8bd3dfcb2a620d833da97a7e69ae2c609f6750ce9dc96056d50f70074bd060c2315cf0a102d52f93afb689704fb2955360d084981fa7531b92e3ccbede8e737ea2c9467bfc288cef48077ce1e84e258d9c254ac28eaad551beaa9744e0a8e1339616b02ba7e716a39d46afc386f9cf34472ae146a4e95402b8631fa0f46b2f161b2c92010b47958850dad73092a5533391afd3353a024577255ea8e544d1407900cc3ec61cd6e633f58c556a4a7b643318011b75bb15e45ac40b0c80f608cb827e962a52fbfd308bee983eedc641b0303bb14ba840f7b42821b968546a42b6c34654a30645264c9a41d940851848f7e797dd43575f90d1cec80b0e6e81a9e0442b332ea81e7088e31a6c33b2197edf7955985f2075f9b4a1614ef02c7d4312b57325bd51e467ff29a1606af127cbc1939ef622d57769b698a2de63498b2a44ec654105faf6c28a0ad3ffa525567e92a4854cf57e31a881a73ee1aa1256db46dee7b05b834566748433454a45c37b4f2985621e6756980391eb0acffa50dc404adeabfb2fb352e87ac0b39cc8baa82236202ffe1c8e3b42d5dfc423db919c89817c69d5635845f41270806c56aad10bbcc4a6ea49017b909525ca6741c19e1b3c7ed32a60e7e5602398a9648ac2702a24ec4d7fe22af8f6c50c20c33bce85bc9e01f035e7663b964a08a5597f4b80251cbad5182cda2e36e0350f71e50c29d5562392f94034e8541bef62ae274c1fd696e3d943cc8655f3767c1da999db8b79e87b8bc7b6894ce03a951a87fbb268451962d5cd7b446a41d481658e1248568371c88653ec362943db51e94bd99c2a95556824887f8b1f8258a0365238b52ecfd9499435bb21fa0981f19e30ad5612a50d68e1e54c12e106d926f70a678432165e57997b64868a2e231765b145d47206b36a2dc57c2df0d36e5e51af9917be33adea4b66cfeb3309ef4a60ffccd8cdaee01b0d21b05278611ce451d0da413bb1b7c8e5690724d28a0be5f2c9bf1c47dd2d1b30939837e6c37a2bda09aac7737e39ee8b0a7cfa4b229a74ff3637c5302f08fdbfbf28ca9812a7487d7403799240db2d95704a033456c3786c593f51fa50d3bb0515779d54311753c444621fcd1d7eaad2a0ec52151e99d7b78bdd35ef4ce283a08442ae1ce10ada1e9a6656807ff2e4d77e624bbb3f42003400fefdbbafa04206fb5808af33ea694dcafee61d00fe0b7418eb08089dc9088810a3adacf437528c2f5969fd32b465836541d0dae83e0caade11f38dc0dd2f54e83ec38740efc4b147de5256300aa1b538ff4b08f880a1bcfb6308e4b1622d04e40b39d46b388936e1e3974513a0aaeb6d7c353b3c716339883c9766ec717cd3d3de16c31f6fac95599f3b57d0deb6865ae85a9886a9df1c60e38c521ffc63cd99c4ce6be045c4df596c1c754046e2deb1145457759a4886184620b9bad2ff28b85aa13b3d58862a19907a18b445305091529dfae5bc0f23682bdcf1d85332177fa055055b81e513db23675804d05d7b0c3af475ea84d8878f48075775a964446ec79ddd03bb9a2ccfbc2fd2d3f38adef4850ffe9b617dfd6150ed181391dc7ba9cfb6652efadc9ad56f5c2c55b3bd30ca772b2cfe0deb954b60f994a50d837041795f2462b98d5310857c43a4adc32e5729d9356ef6164d16f7553e9f93fa6781c1a3caeb189148ee351824d06d6228c7d4aa0ba5bafc13002ee973a5dd3fcf4e6ef0139e2bb8f95d490a29f1caa1d1cb445da0f739df71a71012749e811911ba2bb7ac6672613899fe6c8a9363fc74ca40526e2abfb9d67bc41da903ed1dafdf5c4f183f77b76073fd6e1be0d64bf6d0d5e31c701f7b4a8e2f073f0e67edb0e142592330574b212955a0d4a40d5a4ae1d76b40aea26c900ee4f377067f243b670bb372f5f2aecf53de27f351d0bc7a5ce898a23afcd785723a15c2da2e82f87f1976833151d38a6baa0b7be5b956803c9ccf5bdc954c5315188d29b56e8b4b577c57befefe45c487edc24062e049b73accc07c2c842e3d37431d77735bd20323e56eb88348f00ebd2a9710f3fcd731d0d4e3415750dd4d3ff4d3b9d1cfb53e7575bf875eb662bd9b72eb61a2c8d2eba664c5addd6f90ff3ceccdf6c93e498afd77f485fe5f52de73c4b8d6024104a95f3ab1fdd20a1b2b889aaa7ce04d93e954ecbadbc7ce751839c57bfab459ac737fd448bf6a194bd185fee5cb3480e8b40e3a224a24e5b241fe8a1f86d3dcb9edd85cfcae624ca81cc77bf75e0a2b2a9eee6a8043c3db7d365171d43112fe1d080dd46373bbf6fd239f2dbf55fb8ee1b12fe2701169ec2ea008bd8ad01088b3c0ea4d1d1eca15f478fc4895f40e3c67b0f5bf5e0c8bcf27ad1c426ff236b486581076221967f7d985674b61e7bb283e1b21dd95bf879d465ed10d6406667430a409cd48b64d35b8c6a92af58273ea2926aff3ff9624bc8eb47c5166d013de36fa082f08f7ee9bf55f5bebf77268cfd92e147dd6c0178798cf49665bd9f4a76eb8411843750d74646c075581d880342968b9e2b61952212d70d6132179b0449434790f80b64ca125d9da546ed17f7451b725599039ed9e5867f04c044e75cffc6325daf6e808dc6714c5ddfa0899a935f4451e1d304cf417667b18fede5219e8ff4c3ae2f5e8ba0476ebf6844688f072e2d948afd0cb44e91f7515847e8010c48be4a032d8cfcb51bbc511d35e177fe21df900425ac04f3f41d42b3cedf045beffd2f4c7fa96d37367119d471cb369f2c3f92b92a661fb7d0167ee6e484028680250ece569f58ee35ea2a3b56af82d596f79fc02df51f861decbda195326c5f03a4d1cbd498fa3ee76226910be264e6e98e9d082cf4a17ef6c3f92393fa3d9ffc49e132214ca177d0a96ee52e3f34ec78e2dc1e7dbd262be2de0742c4530bd7ee77af7b50425f39c72dee021042eae111f69121a6a4bbd5c8607eb6477f078a9543c9536ee4f35cb59b3ec087d9b236c01df545acc98b34b674eb7d9e8b49b22f6a239934627ca8524c5819c7090ed031153612ff55d857ab6a58b890b406b370453164baeb9faea1bd718035b775ecf50366c9ca93d272e1f0c1be5e184cf26cdb1fd762ce0ef92e4c662dc0efd3042cbd8eab8e47766ea9737c90766802b8888d1219f29b625ad010d0ce6511978fcf17cb2a616c6bbe79d350597e20543df729bae1d32c9d124a73be1286ac740e9218631ab5a65ae4dbd02343512d1fccfcd898c674d4018608c128a47be2e0bc49da7d5ca73b5b4a6008fae1400f5d6ff3e96304cdf920e5be0a32b00457abf6e7d8e4964d94cfbf6eb2484b6028440116a504eff20470245df8e77792b1927ef4e90895902a9d85bb56b07d9bf13adcf0e46ce2e2c584b6fc0d21737a353835d975ee2eec8c67b5de1152a3de07099b36b398d1ffb796de98c0a366427f7c0a2a1aa3325b8f9f74c1aedb446b2d3e47020d93e38b6134afe8755f63b8f694a475a8a308d56a79868c8c130df73f27627a62a5d2666a29352fefaeef77f209b7831e8a16de3b8d3e9aa588be12a718e2dea15eeb6bbaa24acd37d9de70235efbbcf66cf715e8513ed536c4c7c78d161c8aba8e7193626b64c3afd09c5a06e1c75cf150ee6f96bed5e11430ba4885281b4d551853b2fd47a4345c6bc67a2559048a45c58707f89ef0198d80e434712052bce1f7418a2595839afb95429e481df701c20777ad5aa067ee8f8bab99511b9a4407cd897b9005fd8b8a55f8ea202db3db3cbd6ea6c3bddab6cd415a2b4b2c42c07c2e1227c7a537f10260c95497a647361f367ed7fa2ba59eab665031733849562a0fc2891c1abe31fa2cc8f1cd936d3d0407ed2dcc4406e92cc75cd73764cb1fe1223923f534d28475bb4b173424ebf54c1c0a85178c32e2fd169294b06306fede6ddad346cb9d24428fe7126c8dc3e2fae19a2378e72485b496c37d3226dee4affeb8b2a97dac41b9750677b0b278976919ed482191461edf1b02c1d65c5f3584de802f8b264332fef63ebe5be4503ddfb0ef00724772b3a2beea5d893f2b04ea1dc98cfb13617a7521e36c5c7a183b3f0776c25bbd0922c73a552a00346542d9441e130e4ef0af035786ac693dd910698ce4751c207b3e9778a762ea608d7cfbfaab207daecee760339a81037e9225da40ca46ab06bf6f28038f08082c12172d7ff380db9998ba5b655f92d43c796b92499514dfa32f625378ee83d168532446b7f410353e022a5acba419386b8c660862ce051e4e9d32b578099f4f2b67b1ac4a5517dc19e28450ce516932896057310f642c66c06d54f868d826ff02061268420993b07d37291430aa64c941768cf69a30557dda860ad3757679994d68d5136ddfd1d8f2f0efedb2921e25f739bfb316425a3c0260a78e379dd77e17c2c651fe8b094d0f091121ff0c571b108607935418b89fe343e404176102556b3bd281efab3f8e9870f80c89ebe2887ed3c7837b648f32120a7d267c4bcb6927ae7feb2ee6126b19327078e7921b2229dcdc9942ffc88fd631b6e738991eb20d8c5a8d688b639f805bd102b875b413a1625a1ff58a8ab26dd121707da77e3c4e5ec39b48e501a7fd0715c14fac36bb5e1e3b7d445a8fad1a8657f6e15b17fa5f1cbdf113e3a3bc600d65aecddeb9585ec1a2ad24497179fd350f68c48fed721c01407702b9a4496f8ac6c5d00e95c6f8482263b0caf7558877e6270c05895d515ab806446176f638f3d12b8db4c4da3fa3f509674a2ffb99aed1dcb25e1ea165e95374eb25bfca12a6207427e883aaa7a14c33a6aa180e5a8cb0a7acaf4ab749bf18ddd5127c4ab804e19b89b9e170393650d1dafaee6d5761a76e0dacb0263cdf8e4c85bdee824df2d2d1edacf85d8a4dcefc630a6bfc25b0c3a8cbe1186139415a1939e1f5b3cf06c391dd15b58a3c46b7d785907f11d4cd5373514eb71363125c77aeae89dd1e4aba2c0834c29f9d803815051bceaeb162a1a2651998421cbf8ad6c4ecb89ec15f23f221e507911277ad1db4b8489bd4a60b89028791d23d6a1979f21aadcc13a134c90bd74ce5e216703cbf0d87664150287582edd86f4c99182ec34a142e44df9694ded051f8a4c16bcb03758d145210316d87b491966de162a648e5759c8f596669a32ebb06251b3c14b592568ea89f66332645e2dc50556b45f276617d5388a34f4d3e0233e1c8c11bccb37f48521cffa58682a6f863c017d42a144e55d409b1db6ac413bb1191bf270a57cef9a4e76660b47ef8332125da5f2ec3f97305e66c97ba6ed9ab9e8f55e9de5ed735687b8224163685046688818a990c8067f5428650a16b02f24e2c306ff74a6ae4057a00c8396720c54e192f16d140eeee7c3b59711029e9a6d406fcab1ec93174989879512b8bb0443031c4d1cd25bca878267c2791c823423851d8b67c9ac7a298f75d70337730a71ed21c7abea170ce2533da6bcedebc0b5f9da8002d5aa1cc5698b61366db48c36825904b71974adba6cddcdfcdd779e044fe2763876b052aaa3a349976c4ec141f4f47a11d003fd4835286cc280379628cf36cb30450894d1487e13c0ecc75b632fcb337a26487459f7e8af42a42f401badd9f82571188983fa5b60d027dc67a258b39ca10c0ee356b9b0a7c4a7a2a1c27924938f96b852cd64cfd2c2f92d66e2372c41129b97809e5e2ef43e5fe2b195e652e44f2365c050f27c1b58908fb025d5aff7f617ab4d76dda7cf8c2a08ec2a6c5f204450019a82ae0ff6f34b0a381010f77ca8617da0b196c56dd4ef6012881b52c731f321dbf97ad586a6f7809f949c3fd893e962cd0a3ea86cc45ae56169a0f2f7e3bac20f5957c0f3f5546236637519b2919127afe740ea5b098fa1b92e04a1dd71b3ecaa3b9a421da4e3c0dd02fe783ee2d48aef45a52204fe5c5c4be2b12195a3b35dc017d2960aa1dc7097d3fa522539a2eccb0b3a3ce721bc06c583e03a5a71d6d71b1930b8a1e0aacbd44584a19ebb09c8b59adbc47ed6452a22328b44682f6f169128d97ba6727e8f8c732e53600b4aaf4b708617bd0b5cdbf93083ae8f3d47543c405a198e10dc71fd16daa86a25e503566bc13d76bfa92cd3bb63dfb55683e399f9d686fae47bd00a9172fb0878105171a53a42f3c62452493472107b1deced4dd205ae15a6955e85e0bd7bfd7abcef6bd9e11269b19853754cebfd89b221521e93d49f6a1e31c642973d54332cb1d7a43c5f1dc3973b3d821817aeac028d4bbf87159c28d89a450f664427b4f7ca2016ec0ee4d0c4d275cf96bff8d3faad25e1524a3607a4a52ad114e33b79f072b0c9d2c519468fb7d3d45395fa8344c41c777948efcf08b04e2021b479e72e481a9acba7dbca498dc52015115cc253b67e43daefd1bab83f527f430dd05f1c321a06d5af586f8f49f92edf51ad4cbd2c35d6774442d5e695f6479407b5ae1e67169ec61d7862dbfb7b4741957a4e11895dca473e33c330cf3a37d1764ffeede8eb11170402d7b1a20519a74ed279b627d100248f769b2815d888400fbac11bfb47ac5d63fc58a877c6c21895f4dd1e47deefb540e091c5c6ead084dbeaf6fcd7424cda998cb0a5bea9be26d220acef8921c70f81450e80f13569d37773ad484d1f2d004cf51d34e4260e478ca5667acf21f1f416c2c479625911e05b85b5dddb54996e5deac29fa98e14f3348897639557f8c549ad36272168a4e5fd1fb5637123ee9e3ab9b468f6ed0d59a89244aa8e7e843c39bc7f42ebd028d04581f6c572e62aa26bee3e17c5a2e39fb7fb13b2e1db642398018bd428640b168f2b0800d4fe21cf288bcccacec0c3db02cb143413e27cf2c36abbf715b59584924a4847458c4f70da8f0559f6dfbfd3769c94a4ef092845ff772e5188bd6eb02f7f72f5c76d64f88dd2ca8ae56003c4bc6051a8fdd1da1d4c5e3a3566881930a3399475716cf44e139302e5ec442651154122e1e8771de58ed16bc2272578824810036497f18045706d0cac8254acef417cd3f80a5f3c28a043edf35b63a4542b719bc8b64c434e19e3e989ab2e5693245fcee83eeb0d8db6775cc836f4b9d2e27b8a5d171adf5500658778ff71053192badd9396d160046026cde8c0de77e3649ad5bbd6919485cd47dd8d6457624d5bcd0d36892d83e363a91ab9f1785fd14107caf3416d4961735c8fef364c52ff7e34ed313f65a21b583d53bdd83671852348d2cbfe80004cf22ba538c75057dc29dc1e01898384a15c36859cb7406cf44c4b2989497579e5927495d8473b1f43c3d5a25ba64714e87055f7b48d993a64fb2210d03cfb167373dafcdb79a3911231eeadfcb9847d70a2ba695c5783bf4397337bbccc03705884cb71245683e2faa1e2e7439dcbc424083ff9ddb28a099034e3bacbe3d4915748b58dc6295e2133a527b6b11457822d66479e7419a570511108a253aaaf3ce2670699c05bfbbe724879b04af5c3ca1587b94881be9f8c2313fdb24c89b5daeda73182e8d0a80301b1ae40da39adacad27dc0c9c7ba98191d019009b3b99b4e2fc3ce94e78ff617b99d385637796ace436f6f193a938e32492a07a28b45358b67c6d2773b81b33c1de85690d87500afea0954f2be13bad872fc94afecfbba689839f2517d2d8019c9b3382a0afbf20d043d8d20ab032abb07639dfb8ae8264cab2df801919063245e13f2386a5e5c550db5fee792641c0e6e73b4a171586a98c97b2186ea456ab81a755ea3d27ab3f81ee3914570909b7a374ebad8e3ff3e5506f2ca6e689cb270d7a4cb6564c3bde4dd8ae5b29c8c736b6f42f52849ff41c4ad346716d5ba7154a13d527b94cb955276b230e3f2bd666945f37c1e4a5999ac5a80fc1c98ef0a20f8113b3b5a180c8653c404c5244d02fa4b5d53b84d18d21627af49777bf6ae379f1bb450eaed353f2f0e46f58c9c31411c13c83dddf2ae29c75c2f2d6b7ed77db6e8552642eb6d9224234e35cd0941d52264e9f004d57f5db8156c041fe4e505a00cc3c40d24ce2e8afe66a66189976a07a37f90658d3213920f17ea6f7dfe394339a523ee6530740833aaab485e8d240dfa85570e4fb990515c77abc96412202a266d20e7616e6b5d5ffd57d7eccd6d0299c824e9c95fbcc4b9d1c4fb4c69f6239b9011081adc348e2dfb96f4750f3b0499e0167a4e33ba03b7ffec5c037202d2c7c6d274b980cbd6e18ea28f66b10664b48a113c374be0ccf6e1dbc0d591d7ac34482a407889c3b3c8cb279638fd8a07052691681b7ba4113f9ddf4a74953caac12548a2a7206d74f43ce9e241d82f1dcfa87bbb286a4aaa92587f5bbf2aae8f1500ea0cce28688daf0bfd424d272e177cf7befed678293e14f7b1a0b6e471a7dc2ed5eeb76c1b7d1c6a6f2af17e8d3e104e5195162728d4226a5232ecd117b26e1fb144f60c1122fcf6e517f085aa647c8da9646a4f240e774437593fb6b24f0c8391a22b1ac4d2f752abf3f4377f346f52297f4daf35a3c2055ff9c1cf62f8aaf9f0b45bb9cff7b473398a9e98121d0af517c27df148aeb54f51bd1ae30e060730d471cbe707ab0765839b9da3440aee9ec92adbd66e8e53ea2e08999efa08cdacdc11d1ee7952719c8daab4227935c0edea47c3aa6e984ab294ffc298eb8ed5610872a43a542b6c044745a00f1364128d7bb6d1c5e8e87561d848a14d4b769a661cd054b36b3ab9f0966d01511903ebae801acaadd41b14c1044484408f7a294f5b4da684cbf8bd96c8de95e8d55435b6d9110e976ff3cb42f9a7e0a05a86c3db7ca7cec5678d9c3cc1d6a90b19132665d16ad5d4abeb09a680dc5b52820f1998d9c33cacc415f19079d6f7a7547135db981047289b31a56c7b82243cc172afd2a22b5ad9ce45d4e3dba0277a594a89f42414163491562b652e41b54dc4ecee356f68412c83e6919850dca073240bbd2ac82f9bef2c4668f58ffadd9c2e4b2918e3132994dc587b4aaba8ad85492991ae9dd92c6c11b7978c0aa4b0bb146842edf5305d61059737ef181e2168db42eaa39e9f9c3710c6058f6864a114f3d2cd68ef6cb6c3720b83dde703cabde463312493d10adb696f8b36541a52ccb9093907bf129925e9eaa05ca219a4f9585968b0f1cfbb453ad59c37eeb98f7923701c63f7455f33804c43da249407d7960bdfe35c9d901211a5516235518c29389c82183fbc99c11ed0caaebbee797c5440c1c7eae9b0a9ccad5698c6e183ab533bb31b3c22e2cf8644151a3cbeeaa9514fe50f1dfca3c8256d8f32cfdd4e3acbbebff07c20c0806a62bf694cb9710311382b004db03f462a22f8d38ded2c85f1768f116d5c7aeb4a566ad20db517589c1cfa4f63b093a26abb1f35b4e26fe06bc88031373c956d39d1aca7a6ed8609db0fe432a1f19126041c49e2baa6b6da48f2a40373452edbe34954d7af893335301c335943e1e03ae1381604268c40b0b887648aa46ffa17edce224a36b69718880178373571ab3d3089df5cb9792cf4c489f2baee04da53cf2de743abc289138d2abf95a4091ec983c8afb9e3cf197f72914b46441a155ad72e694e70615a1fd41af7d6d23b01a1043817e3a79526a3048b9aadf817be8b2f538ac50a514ef6ed496dd67351a57c9a8afe967b44265943bb4537616b0ab4722e19294e6e5f23f85efb8098b1d7840ff5accecb4c2f0929421c7354a5a9510c8ce0a4ab50a7f7c14ea1265128f03bba5e5dbf0721eeef1266168fdda39d6bec5010f22339111b56261e7092dcc797b6ecbc69621653a4ad2d8ff0214b9d653709e39112a9565d376892375a4cf5f41241b084dcba17dac24f38bd830cc8e66ba084c1a73782ca6720b69684a1be209144d55451172cbf1d4b45d7c36d2f9a85e3d140342005a6064873eb86de4564d68676f5da7df4f82f8afc9e8d06d45010f09f322759761ebe72421a8a3802409677b72aca58da6fffa5134a64757d030176eed1fb1950956a6b899fab4d0dfe0b28f27cb6be0188da9c75ee8514b00d1942a60a0d7b85a72e640f5d22493abd15cc1d4e1df536e06b613ce87ec997d3ab1b022e0e43feca6059a43d79cb687e8771418bb6638bdf7dd044421e75b08b443d7930951e932c7e495311b4c2c9ee80010a7b60d9b6be2fa36fba3ffdef8b3e2a7f84c4f5e5e56c0cbeba0ee39eef128763aa13d9d3a18e6e2ab80fa4c0853b4068bfa0a30ff9f36e16e391797bed6bf4696ce05724f5a4eddc95a4dacc25d54e603414d20e6eb14782965cb8041725106d1a28308b69bac102a9633791ce898b1b3995f83a7eb663834be952d15c8a25d9566dac7604c5d2f8ab35bd6b2c84e51fa26e2e97908726c276c9b357117aeacc4ed25c52af4eed1fee1ae7b12ba033365145205a357431f1496b453574fda79eff714687862f3d9cbb01570b85ba260c620d1d0db9d21851c1d019d7b24dadfa0cbaeadbf999ee60a36ed7c934dd68fcfdca4dccf5245430be7c0cfbb6e5768e9c0184ee16dfbfd85e7d700f40fd7bc8d56460939150151cab1887de435d953ccd72145f9de04ad4f4c64fc78546286a86562dbff3bf4622d028c11be68c39b30d135c995732f9f17f9f1ac33d63248a5a992d21b65f5a11e622c9403f88ac047965abfa90f6942f469057322e96f4040e81975bac9c6bff65927dfc9590319b714038cd7aa19d3d8893d172900aaba9dc00577cacfa26444603bbb4d66b805ca9130d1d0f9590e2673b9730e02b0f84f1e4c5c9c5c152733d71c5e037ba9b41a7d1ef40ce70c735906e62ff2c9c0199c4846c38d3950c508d909a2e5ecd26d0137e7db0157531a72a9654836d4e5c797f220446f9051dd9b431f991b7db3485d7342cbfbce691fdbaa9a7db51ec0b4a63704a5851b862b872766f8b18038c6572d9bce0d1db684cffc14fbf298abaa791e15aa2be753b96a68a268ea4ebeb7856c1095fc43cf24bb0fccd2395b6ce7961a01aa2e0c31cb330a9dd8b8851b61d33b8870d8d1d5abe52a81b558a379ce9085b96c13442283e958d8c2bd9da59ca24a9d699217a177b1395df86cc593dd35ad4eaf002f63309eb813dd5f6b41d2777b60accba4c153ead25d217455d2cb30a600662bfd46659cffe74d4fc5c9bde014c1ac973f6bc593ac8c718287c515574e0150f3b7b31e89cdd971e30bc2e76178681c0bfba443ceb9ea17af9ae0822e3a64a881e84661009182a4a17c02d693799051c72615602c42f8bb9f59c5d830e09e197b50f49404b45dd4beaaa7651d21c27172969b5a7e0324d5fb25bcf21095623abbd7c00191e67e41b76fd63a69fc1e948342904427178e8524f5cf2dbaba445bfd32d4d58530611e2c231f88c22721e923b8c6caf937be7ebea885c8b37d518d51adf0cc46d05d8e90a7b773e6075be24d2c8317dceab075b1be447819c615928f7304c5fad5f805f1719cd29bc9db69fd1ed56667e3c68ff856c2814598e43875d1255bf08e04172877a0d7e5858826fa392ae46b43f55380d05ff715018fdd0254455654a2dbd2e887ea04711fa172d8621072db3412cf32a44576aba8262b5c9110a939972cfa2466620711ba2f94ce21bdd9e456d132f76fd174e1152833fdbcc1201b21fdeba369d17b91927912ceacacea3752a15fe266238930cf8ec88e8202bd61d0d5f7569c029e1ed3732b3d219017c3dcb9f96ffdbbf76bfb2d03ceea6190589c925076d3a100ea4834d3a2c93a69d234e5df339abc9192b8a3e4049ba3ffdd196257d4fbf312200f5531e57f279ed75ea8ebcb78c3e6d21fbc48802491ce01dc6f44db55d1fd065b80f8ab4b54868e542d8f1176beabac315c7b1bcf768a7d800a31573ab7d981663efa90d3bc770cb7d2c1fdc4cf293808cc2709ddf7215644bb630a5cc1c3d5bd17c7d2139c49d6c8c2ab87ec1b087e57243949c9e683a9fed7222f314cf10b070b8f48cf0fe3d89432ee35c5a532425a7330beaa7082c577883b49798854c2e64e80f5eab178ec5b52d7930427731c8588703f5db12e656e2a090a442e580ac74c8b026d5cea6b8bf502d751a6968d7c32add8ebd737e3fa151e543e495fca810c6ca32f0acb6ec2e0ab7cdbcc44738f2adf9f3982934de737b32b9011673488443c047c257b27af7cf7cf4db8226c29a05179ac23869215bc64c1ffc3e9dede86a9e556eae5737464a6833d58b9af898da883d016e80e461231fa6faff1bd38c1dc021caf2d0ceda54dced8a0729d8727ec79c3b14ee6f930c0dc6dba0bc920585efc7826dcd2d60f4d9f01b9c05c0ef565401ac3f7f20aa40807a7c2d9cf2deb3ce6525bf5046781e2dfc41ba87d5a74d9233ad1ff7379b797e21359ba8bb96a4e73ff4ea7b35caa4581ad000290b14224944992595a5a5cc64324aba029df2cdb9a640f460f82adcf5af982e03a8e7f65be93846432b690ae6607f40f0784eae5ef1f4650b6a7367e527dca7169085d0ad53cb5c43bd7d202deeb2f033cb6def30ddc163263c2471c3bf8cbef8d6804e275e4550df54e7618b5435bfef700c6a827bebe7c39d7b4461698768ce60209a99ba8d6f5ce5e1581829f28c9ff038d47663bbb349312b866ec4d627bea83786fea34f40d9f9af3b75047cf5c675ade3a662706d5eaec016752f89f39aa39aab731aba5440526b1e1576b63f0f3cf8eabec984ced7c61542c445988e4d5629c9eb7a653da1c6932ce606ae8ed4726f67f85e82d119186522b6384b3369d9f6bec379563509a46f19bfc4cf0a21714f02ed584a6629057c1d5bf96254e53d84abe0687928d56498ff16b73fb7c14c528c6ef8160348e29bc810ed8b9b22cbd1450f7cfa0885db8c486e8666e2408c540bcef2efa47485ef2192af8ada1666b79f0341ed5bf888e59e3b01d7ebbaf887207141a64d04fa0ab66f8a41f307804ca175df155d0e99d7d0aedfb1ecfb327426b8af14ef7a2ddcd76a177116bd3dfff26b71314789d47add752c68d4eff85760e16f81d00a79ce38da3ca66d9515b47ca2c04c36bca6e7053669a411443194a6c722c83b8849288781f5defaf650392aa453b605ffb53204dbe8a5e393d254e8685eb7ee495421fb1628aeaf2f6d5f8f6c24cd60d2a6e14f732bc954f6c0296b50ee21a3daafda5dab515f2bfc1e96c603d9f82613b8ff373e969d9116b965fa892f5e6dfd7beefd1d40513efde5ee42de3f473c5e64cb9a8716b736bb9d40bf54e1ecbb14201bcdec781abdfd0abd1bf6bdd010e58624f4e2586ffe199f4827ec187f7d3a0208d299924d8241e4115f69051325fd08a14aaa5adf129e69fdde14c738cd3144c25af20342979b60d8f26baa55294786fb29585867e27c4cd7202f1d81bc297a27fb6f848634e3cf3a6d784789032c386555453f72935f6f15145bc45a8a6868471f3868f7c1e31fa3a09c8acb52ba5e14001f6a8e45addf9194c562c2b8753b65ce5e0e30dd7e6f38655ff21c26c06154f4e61f8eacb36f30b4f62ec8b353e32a0f38861dd8ca111c661f2ed8493dc985976674ce2e22edf55b7395df986346df620d3ced3e8161b0ac4da037247a1a35ba29fbb7b5fe5806c52a1efd8f55178a77a69e8c8d6daf43f3ec8b07273494cc0201c2d11bc4b260166acea12fc96b8c8f095b50be4011cc634127706b28522a7b0148e05fce481e0f1109c58674894cf437fdcd6d504bacff97927d08b2e8ba5bb155258fd22540d40e98ab6660d834482b7049265d27fcd4c3c65760daf6ab0e189883cc5bfe92a002464ce9c5625d7038984654c0d7c7040970993b2e431beb033f7e54eb17f3d8a0e5a6745b66bdb1da56021fb9bf655caa57ee5ed418d914d520778b7c88b88669d55adfe871cec8e2e4b50390c16b9933f1d223bcbc994f37f287ba8d7e3741d4ee354e4505e9f5bef98d328a8b533741f35f0ccbf1cbae19a8344ba630cd9f4dcb77d1ad2b42434e02f59439df82451bf9853f2c8b004955cd4f5d4743efe0dd22389569c6a70ddcdb62373bebc76532f84e4a9d1f28ed0e334b6f643f974f8a17d3e4a7dceeac260afe6eeb85d814086b4f54fbb3ff58e5ed88802b978c075908cdd25036a6e2d3bb6a6ff23658489d72cd27f722072ecd5e44e42765805c1f54773bf883bbdac104c0b3dd042a9449e5e845dd597abca3d2dd9f19a5d98c261fa22ef7d41c30a76b3f1a8ac06cdf47bdfa4d697626d26eb9571773a42034fa661a8c6ff3991d861fafc280f9c1e2b354b968f4a2803d9e605776888f2f30c1bbfc542cc1151c428b9010713314ca2b1a5b52c26fe3becac1c1311521c4eea170d70157b61dd67ccb67a5acbd183f8978d262a9c5704ded75e234955f0d9494c895ed05ad722d41aab64e7f6ade40dca8b918129da0941a919b38d8ce99144165793d0657952a6091bbb83fbafc64e189f54e93baab4233c1a176b59579fc6539de4613914a8934f1bf1beab9d29e46117e575d42822debe360e26b919d8ade89834f05690e4b9db51f2c256fe89e5c7c3052dbc5a8d60c464db1b26de0960a5f9ee9669d64fa6a577da283cb9a9d2c042c27e9e0be8f1ba5a78961cafd59df9a30d5817a1421110fadeb343325bab7687637cc055c6f03576a6b79645db08e4fe547386d21ff78967e95db67e7906fcc6c56f90ce30c50bdc9318ef39f6cc876b546f1968264d7dbcaea3dde290a3eb2f16c431bd96203f2aa8d42d48f68c8fa0f6d8462a7c7841baf3a2992476627a99508c12295c634b8d2890dafa9e605e2027b762f82d042c2a38cd6db30edfe92cf653a75170dfaa7154652c9ac18dd60f81f0d0f450b9c333b10f06469cc22527c05d302d674ba6f15c66c3e032904fed1de87a8d1a17c3fee6aecc7c93508903a27b329b90e942ac5d9c44853fe8f570ab588cba572798306444b862ea186b9f12b12a481d6c62fd9d590fb4e418df580d77848112a7f52d039cc4504b42d7e2d5e10f5060d5e8fdffa99bfc92008d44c32bbb7e33d05f3018388ecc93c920b7724169076df4ddfd461d3b5a54037fcadf1a34acc6a3270963d8869fdb080b8143500bd3c270a9b8ee2bdce296f6ec0a6c4d2db76b7c2df063861633c79dda4b866e3c59551cad9dee819111c296747f272b9e83aaf2701a5f5a047955a117df4418a59fba2499b18c9f0df1a4e3629acd07ff2a27bd99cc24ad0888f1278949e01e6186f9964ad6cb50b9310fccdae622f569e7b75c0b7e093db8f05f4ac146525ba0eee48a181e5fcbcb5873afbbef73a2da08f8d5c1ea87b93bb2ed9be831555cd0f5834d238a838be9636d99edf4a0da5739f208e9e260bd9f486056a28902e1d59ac6ec2035584f98c9de2d54c3000276e13640ea006205b8c0d4226c4f1033cc81dc73eb1e7d9598fc8044344ae697abf70edf3e71138ed9214fdbd9cac1c58ec0b0d4eab37db80d5d051061043d65d38de0c28ebf87829e8a6da90daf769865e5ab1b6f2e03e2da276625f144171c95bf033ef4b2f217f8f6ad837dda32eeb1e21c20015c82e21d30c79c61a87d8e6cd9893aac2bcfc8d5a913d0dc83d0dee2f68c6b89977b9d5d8e2bfa2e8ea72830c019f92361c8746bff761983f1c21c3d94a05f2ef84e3720613a1f87f470ea3e15544cfee576120275e15f82abc436c9f4b76b707fc6ffc79f8df3ab1768d087e08af8de15c59b89e761315443e33e7e1989db1ea8d283e010595451da73cb123838b8db45c8b9e05ce3b1469a003b109cb8220f0da5a88ad5d2ec5c98096572e11dc82351cbca8b3c54ed16e7d41be1fb31765ca98e56507ca5d20f2642a196f936ca12ea483c77cec058145b949dae9649069b40d74fd2952281d41c5a699a5c6ae4710abc58d70695b2c914368094395ad34f87c307343a41029a7341ce376a58b93fc9c535c83cc0b3ab65c2e1530911839d8415d27167d26208839a4e58b7130c25b274c2ecd3f1a0172fe6182a3985d2ed25b5c365fe32446d3b11b8c2f6c5dc547dc794b5a518ba8cb3469bb0510963952ecca86850feed85e9c467180776e3a7a818fd47c230ee9d6313a40674ae2c90914ddd844dcdbfbc7616ca908dca0981a6766e110d207485b320d0d8d8c85043f4cabf3c38d6b51324ae21eb1cb61266cb8dbf4767e7f7eb0ad029eac56ee7a4d778eba6dff2fcc20dec30d12577e1c029d3c76bc5f85fda9de279c27f72f1bb0a9257e9dd190a92e7a079435e943199e81eed86e60edcf5a854343b4ef67d63ff02fb44fc18a73edd80d2b640357b4ba9db305144d97794a9c69561a4d0fb8bb9911ebfd865d1dc34d5e66ffaba3adc0b68909353816eede403ab25931b1a4e2cf8857e030b5beac5547ab09e9d7bc4157fdf6868b449129f35177ecf4b09f5dc1a58ec60fda609bc83a47f532b8269ba3c1bf2534a125ccdd6f14876e5de52084585b17621cc191d96be8d8ed07437882ca6cce90e9ee4c2656dfc177e38624764fc3b0cb73dd01461431075023dda9f77be60a1dfda9da0e5c7b9b809058f9f7f46847b0300141d3255520ca436cdff2745b46a3cb3f3b216de24859140b002643f34ddfc9705bd13b8d8466d190514b6f5c9b5571ecb5f74314b2acfc70c1916ed11a161e0ca980e0f1a7f50e25e8c252b461d7a2c92262599b921ea81718818635126637040619ed1c020298b62feca3c880c339eae1df52b8c19011e9860f9acce008abeec38e4acfc573d7da80110d5c9e7f25ec64b518b936243d02710983f1a6a1fb73c40ddffb8517a32e9e8f23f2e83270be24c05be07ba6cb7f43193ea050dc61f89c0ec5dccf121fd1b7b08ee0f84d231747af173186fd03b83b98458b791aabe08e3c0375f23404fb6c144ad83e057bafd7a4587a957d1eecee10092f248ce25db106dd9c8e5922d493beda16455371ce98640dcab853a9b1968b9733ce1334e78a6c1316dfc73c7106af22bf90ee272dcb265858c3d4eaa4bf4d70e5fb1a205922963a100d873a084eeb58b1bc722fb9d19d4c8def1ce037ce841af3eb30f3b56222ae8627c13b1c2a8fb6126bac613c57e4585aa57522717d1919ee2b2893a95acd2eb0fbad59a47a4441cfda9fff62bd32724d78cb58b9dca9452cc5a21a0afefc0e8bae80e953f092bac1e70f6985d45823bcb2ba5212c3230748eecb03fa4a9e399b653c5e73e59bfefce1d96394d7122a5950f4f766902bf50dbfe67bf77b123d38316cdec6bce492073f566ddf3dc844e8e6a4f87f082f746d6fc7aee683f819c9c16dfec60b44aed1947510e014ba34dbac80b91046109fb87b78ec5f52e9e964a71efeb4014feded9541510205c7145c29153c3c160b94f00bdd201a9366fae60ab7da2e7a7761f69fbf222bae84060b21ea091815cd58af8b046f84962cd0d63493f55d03fda397cc7caf0fec6452d0388ef468eb4c61782f705eb5425be722e7b7e760345345342b3b66bed26d405d51c0852077faeb8cd107315f26a438fbc8f6aa15173a673ade63e32957ab637d2146edfbedd49f30d0a7e4f8a8ee261e8546a7e292251d46fb9470b2d6cb2dd96d8e3b2f73c29909970ffc74e750c68f663c5964a093848b92f764534c813cc6425788d64c5520f443cd4fd5b13ce29724d53eb055c258332dba84d4d4d31c656a647f2d3d629b2672977a8ceae5338096ecb418c092d851c398029663da3a36285c538d211d418e570ac8be2566cbedaa5859765f79497817507fbde5fb1c9174da730d4c4df26489e4b26b9c6c80d928f6c29ffbf3f14ec35dfa45e441341e8ecee2531a60a4657e95a947da4c8c43c8d1fe33c552aa5a2acb453240c5168da213c66bec5ce6c130180f5f3b6516fb4dd69aa23d534073d530a94744ad20b1b91f8c28a8c7193e68cb447e2b7fe3a4a43d1eec4e929bb450e2a003f94a39de5f971ae3095c9d51e3efcabd2c8f3ec2c231a3b3120640ace76cd8639dca0ff911864ec641eccaf8c4fefadc407ce5ed50513f5082d41ef53c83d038a7ce558c1d54346c989be89220d26782ac468f869d25b9f793acda5ed2c98aa9ae6f2853f80e67c887e263ff29c489b495f935fc09adcc07e7560b544840933700576d629586456bb2d3249b66c6b8cfa6dfbd2658589db4dacdc568a16028df5114081c591e8ffa6f8ffcd1a990cbb7eae3eb7e5ca0b94326a6aede51356489f5756a4c0b678280c1173fd40edf87fca7c1f0105d9f6112e5de511669b5d8b5002b0c973b0fb863711c83650d60c892900f3c2fcd4e72785fcb0627a65b7b162e5057121e76ca3feea107b9619da06a38c53ab64bbd0a13ac872bf696293364711c228e6465b6af86c993d4cd3409139af6df8789eeed723fdd0e92e689cd9f307a558b597e74cf6d509c301029eb3071b90b95a358b35bfb6f6a615555e7cbcb4407ffe6f986c5d22c5fadda9a5f426304610e1a200786bee0f71ce59bc70ea95f39078f8a62ec43a4deed7dbae274b764389fe416515dda30a5a54dc69830d3d52fe31c83a5edab994fe393a2ea803554a177566800d2ea678c1f7652d9cc4dae45c70865e87eae446b52f4c56bf26625894b4121d100f3a8849229ad44658fef0d532231c16891e4d4f55494de7d78a72d20d6797357aaea4e633de869ca6b0d45ffb96c21dbda3df0bb8b4ce9cfa0267158a8e4a253db5520be43dfe5870d8e6d758587b1cb8da93babbc21c3ba881780f40fec6453098a7adb77cbacfd835d23e6f66236e69485c4cd22cbfacb439b46caf118ac46768e72cf8a285223c6a645ecad35762020a11404195a07d113bbf3d805fc557c58b75310241dd60396a215e6515304e84bf4ac80ce64e28986dd85d1a896c234be6f94b1f39dbbc5b557623c72b00057cc1181060a4a3616cb40f8ada83ae6bd831d66d125bdffdc37022c0faf6c903fbfa1d5a2716c2191b2d31b1fe32a7ba48e0472481d7af69fd52f357e758e31190f9c04f00ba450aedfcbe47397286c89c9d4834010969e65dfad5b67437d68f106bccdff8c54d861bd90e80e88b49728e36d3f789a92f89552dd369bfed4c6c8bef4854190c10f54c61be58c82da5666a19a085c5446ba3a91992bec69b85572091d7c65aea2dea2c0aaf9459fb8c6b4f35b176554550e27d74f21337ab6d5288cd1bbfef644f6d62e52977fc90bc7854156f9e2109d9443cb60171b5d5bdfe57aa2bdd40e5f4d03e5e64e12c02d80cbe8377ecb86e31d20c7b46b7ec63000543ca60f14ce779650f7b8e845ac1580eba54b324f44bc4077d24b4f00dc13f912ace4cd89fb49e0041e7011dc99a6e6a114e4f361e339af942b1a13b6ce2977f370f24e97eb46a183822505d3dc0b0658dde5c80c3e6ea452ee774a695dc9a2c26381ecd0c818771cf539bb32f4354283950cbf06a3d037d16b3f0c7db2d684d3b13ef6d84b973c32c0547e9ed149f1062107273f2db313224fe04f90fa522841081414a5cdbfa612098e8301345269bb288eafa73ebe75db59426f4d7857cd32c35ef11b5e0de0ec1c06de0896321108c2d423a2de187f2a877330bb4377d1b696b760db3430d4d57adce4d79c878e005c2340d06efc3bd9dd7c0a943baff5c8356639a12ba6b16e925e9946e6036f36d5fd2bb9684ed56140476ec20870d8a856da4554076d52af50c945122f2ceeec54834fd810ba383b5e6f4410f04136652687f8187369841adae0917c7a757235e3037178d146191fe8b837879319a06551cfed5ccf2833f11a6fe8de66854442644a4a6988184f379f4e1e0134f34196ffca451649898852c8e45fb9e548038e7f569872ff62d7318ea82c57570957033c50fb06edd4c22ac9e095ee4348b3ccc109f79e3d612055fb94349231b8979f49aa474f9f58e928a492771ca19a4051a2ca5657eef9a59818ef3c7dd3c4186eb4a04a4481cd81bb262744fe2994a6942e1175750dd0acaabdf90fbc450ea79754a5bc3959b91c322bbed5fe747979f74c83d6ad423ed60105394dd0be294281b9404102cac68928f60366ba1225a6f91c36f3914ae3fd96806d5e18b59348a7d6f1d0dfc7fd7afb59ca5fc924872171f15845a145e66da04c676ca88d8ac0744e62c55a4b7b7f6123326d5916cf8a34d756a6165e8d92a82734576cf50cfd0062e07fd90bc788054bd516bc0c6ff1f9bebc1606b2b01f92982d30b5b4d29b4d84fe5be52234a7841ca6336efd013cc92846fdff6f88f1486a88122122ebfaec113e324fb8b552677b0db22f27cbc1eb956de947d1b215c4aa2815fe798ca0ee873c6b85d23f2c6b4e4046abb755b093c9aac3b574bc55df271d63b72854bf984a678c702108141a94827effcf1f114d4a123ee05ec9fc0771f5566f750ce333e118adcc8a0c7f9de37d55b15c0b3a49daf63dbade47052ad8933596090657a3fb56b99d0cc13b92f0ea005f6393e84c5b7fd76d68942d29fa0c12ee28695a502ad0f9a9861a24289542d76739e54cdf32fd950109bd3810d0833d7135d5b5ab62ad2cd71763ade10dd655eef39a461c6036a89e92feec9293ac22c3736343d01ae9e8c548548dbe73a9ad5950c038a2d1cac87c886ad85573683a1a9fe406bf3b18d648493c60768c75021cc1a59c59ceea00c548b47e5323986c879d3a6f2d7a598ecc320fa94dce2f8205164fdde7b2b172c5d33c1b71aa78209d5d1104f13d712e936ce7d942d6d599d845f8cf01f18c1b4bcd5c38ef66116b12b760bac64befa849f48ce432a57a27f220792dd8abd11c8e7f5fb8982ca6713ea774aaacfc6a69a2b55e643f32c3de47fb836fdcced013360be62a4c237b4c178471fad23f854a176721fe58d1a25391df9a63bf3116428dbcef4b5e76744f6b6cedd07d3759e65fea4b342c64896cf59bd4e5c2897624207762ff4ef9465561ef2cbf216ef8879989d94875fa14f78ae4d7c5b2a84ad62bee94e17af729731cff7fd07e461cf1e65487102c558458d0d9ab91f5f8fa660b3d31c95edaf5656b90bde67062f2b11f1845d6649caf3b1b9d5127dcb1020ff8a12c869d323215264bd9f57debcc7153bd387f15e69a61cf50fdb7ab6e8b8e89477b65ecd3c0078c8be1760ed053a5daac9f3106cad4a7a8240430b4086cab463da9c822256d48549d10fd7e96a037202cf8117340cec31e357cf0d6c853b09442b88c4c33ba016a9cd5485a104ea33238948b3694bc0c535297936019ffc7ec29a40eae0f34389de6038cbfb629573d2a515d376aa48da182dadc8c0c0c799552cb6d4a26eb2bacd82b0ac6949d551592bda8f5093890150938c2099a47c4a645ff0ef808704c0f2fe58097bcfbe98a616a28398f2f7d6c40bf48ddc43f9bc5e69bc35daeb319f5866d00e51d606e46e470e4bd318b70ac27fe4a6de6fb444c22f8016a6d2b3b5ca55ef6376a0f3e5522de507325ece06821ce5fc99b8cb75a33ed76ae6c985bf4ab1e3d2a645c51a242ab6d9b62febf33356b5b6de80c95ba9133c6b3646e4e5dcf7bb0a5fdb176b631e7d3a961e17a02990751c982f1dcde5d05fcf363356ae4dbbd25eb58f1c732eedc4ca6f5d04a8daccaa8fe3726ef0b81dc360034d62cac842db2c77f588d9438ddd57918e7413cdfafb1125ed6b11f92dd97722a79276263e639c55f02b8cb3d0781e02ee07b07e5ce6bfbdcc9261244a925dbd3b34e475de1402637e465950755a296314e31b1779b11cd552ad2e6626c05d2c79525ce53f5e80025d4de6f6c6a2048cd4a15246ee16e9eed72a494c247e5c68e282db4f997cf8bb7b275e90d3aaf18c97fe2245992e535954cc74eac21281f129f5de6f70e946ed4622df3900b23d674db32c527a1d0ca6fa89667a198018661083cb05201ced4166efafa6673f4a6e81c6b11289a18cafbf135c909e54bce57802c7eabd075a7330a57d9203437802bec7700da8c067959b80c03ab457b7ad0db4aa69609df618d8bae7b48d43e705fb5dd827d2730b092561653fa6b520eaa7e22b888d9942417a8aa561836ab2162e49346d3417c056d2152b11929466790971a855ff6b22992232d132d5e05c5efed07ce35b3b4255c4fbb6973f6929551274512b5d8cf4f52f23c455dbfd837920d2f3f7a20edccbde56e0cff6e7124250807306e6b02839f583016b4411336f7a1663b4cdbd580a82688eacb1ae4d2d5c267ada62c9dc73077e29d4f2a4f7f6db6c454c6edfe02cc8742b70c1c13b5a51c3ff4171b542d97271cec8af4c88e7e020040beced10d61225935066d8d6d08832d21f8eacdc4893ef3b84bb334dd7ae90e4b23deae90753ce40f9de31ae855a65e2221ffa5700dd63e2d1a690ae061757cd172952e2b5493392968d9ae0c0e716dd2877bbb1c6d4b7b77bd595cc67c41dfc0af6003cf762c3e0be173fc9661dd275678478ab814b91b404ac0f0a5fa0fd1da20de4169e73b03d99f65e00dbbfa276c18ed951bef7f3b7dd0f62bc000a4e95b0da0f80018819eb07fca3276b4e942f4534d44bfd885c7936798131f631e211ef50fee66c51bb92375234019127104b721e0e5ed0ca13fdb57822fdb6634a4e070bc38d1583a9a1ac7628cf1844a33dc5da4196a594bed08254ac7336db6ea73a90a4ac474601ea878d36e0d4d6a6a1c137ec31a0a76ef96eef94f7c5a58846345e073027b6a95bca1a1dc8f095c369736636e21089d6e99005a680f082d4d17ecfdfe0840f099ea761ec9856c401fc8ba396e60e53e08a594f5ba948298922d36d246311cf9c06dac9c4a963f200e8d08835ad13f4d1a1f3c5b9b4110f2c8ca460d3c2a6cb39a90b363326abf815819b0aeb1a8730ba4a294c269a06f9e588d9c97b1fcffefa5958cce8d3841290a98dd3920ac51f161180240adaaa0fdca777bc2ca5772d90aa9609b84ea823b13b114a104ce0b20a4585f4531247e4d3b63143d779ce5a66c862ce953b0420f3d61214b1eb565ae0dd02104fca5432f40cb8517722f6b3ae77b76ba09b94053320a8317a0506085f52a29bbc374366fbc310b2f7956e4c36241460eb9b1fde71927b79c24301269882034b001ac6e776299837fd3f1ec3868c18926427350765b15530e64651b4a87d0111ca8d95e3cdaba9b0557e29e3678113e7438dbe3233d0de92651d9a57a333ab3061d22a3082f841430c8775be404a5fc7e2a84f6704f85991093eb874f40831160fcf826f8b857f879fe631163e4c69a412474c35b0973143aca4bc09e1a599a26e6776bbf370e4f7ec8f5ce8816b35db368fa25c04711750196ded1d7635a3362df63493ba1257ff9f5bd3cf5bb4a3f8c75fc4a016e881cb29c662ac351981850fb09e5cfc14ff99d926711be7aeefab119c51acf17ff4526d432cec98010f6b7167b530582e044888c0eb64b393f0e4ff7ad2b991ebc801786dc7d21cbb809acdb991727e063740631c08d248f9ef579157d022c4a35c0cd7f086e8089caffc8dd06d55add2b3eedd349acb7ff27940af343ef273bd00f4c5e7fe5cedd3db2fd5b9627831883187c440efb2fa299961cb9646ce801f8bd1547e955be187f7d5f1812ba0a33789af65d03fdaecc123ed4c79a64315808b8f4b92a4f82236b4e463bb57258f26037ffa1eb7cde181ec9504a846aa90eb0e5a383fb231a807060e8279e3fb3aded553ae3519a204b96698c684c972c0f2b45c6e36c983aa587dd927506c687b2158ac6ac23bd64b14e937c293941711052c62b5c21d04f8384bb8c38979e433680f4127e4cfe8d1a9f528f28f3bc106a4ba20071b5edaf560edf8fbdff9ec7ff6437a5ef2b02f46e63f774f2eb7c1b57690332440664beab91244b6ec05dbecad63986f71708dfa6f1ac6dbea407ca02be0dbc48faabf1205a47cf930fae310f8df86e9fb2e0637ac25378d33d3ccd0e123c7a78238f85cc20326d7194437a8a9465b14e4bb59ba211b671af49b0d166e82cfe9cc566bdc6ff4289cedf0b5c4c00cf0dcf9f6384740cc0ea511d4ddc3dc7729230eabc2a736a87551371f640a0157bd3120777ea7a98075990d43d2542374297a19fbb57ccd868c05cd2dfa8f62ebbec989e65b50606e1567edf57a85f3b31179cbf6f2c68b4008dc26a6bd4cc9bbd1a7ee09a2e44e160d4f25f7aa5093b0b19ca4e155f2f716078f8b57bdd6a5aa1857d6ef12bb915ae10912cf45d4af4e131ba0682491f7d233100047bce46d21ed591dae4ce7098e0d20b9bcf521b9c97c4b5b64cf50b018142b4a8e3eee7af4c362daca983acfd589e0df15a0b1d38262e1a4d8ada7951408cc073107be104a7f23c5d15b3f92245d2dd16820308fe8872ba269f22f19e581592bdbe304c58537f254e361e46e559f2ed07718e0e96fb94152b551e693a5bceffb28eaa70f7de759873b107d16717d2adeec67c6b6ff41a64d11ef49ab466e2dc8f60226f08109a3e4bb91e0df1b94917689a8f1e81e057f2064004beeb028c3ebd874d1dec1abe911562478ace86fe4facadf02601d2e170d12b75abb88a88d446e7f4a16d263d60a83be66711b6aeff6304b03f9250300a8f0e2e55abbea43b1efc5de7791a6469c0aab1e0356c6e7697a9424ea706305d48c6bb70e4721005591999a9971a7bf2127435bd8adf67f7f5e8e96d0076f37a671e7624e0c694e4ed5355e8c72447c6746f2b06c3eee4e7cd18010e41f0376fcf9daee1d4d0813a46ee83bc2c843650be1690fc0a0fb4614e939c6ecb55383bbb48d24bd367c3bc78bb78a628095c9a60c735e2f53534d9b09bc4087383aed79414a54c31639e679cffa74da15baca5ef078f57ef0f62a371d49a26f82d577623810672d86d590f4b8f74f072cab8fd591a1d49c97d4b7f5bdbdf48cb528e3ef2f229b6a101cb7d1f9c76cc2f95aef2dbeb9c6e73e4cfe064faff59650f583bdb57955060915a3e4cb6f2fe76b55df3ae77b69eb54192971a2aae5cc5c4d4162f3ca3577735d505850a3e8d72a99b168994d5b3241b10d4be2c3d6bd30827b434e426e4d025217d8448aed2e881a1af3bf2dfc213b83b41e8ba4b0b9922741dc0beaab7488fc3a15e24c45498b47060709f5228f17cfd2cedbcc81ec7a11af852ad670b6ef78232f0d4e6639ef05a3113e8f75dd8ec60baaaa33a3b3edf078c5f3b9b26d70dbf8e9b255842dd3dd98248bb25c59d9cbf58fc3f415598f6c33e08391f82270f2cc6a4f8603a97b9978728bb1c4cffccf41acead136dc1bc8e8ace8abed9496f49850c907ac808adce3cb21ae2a9b6a344c826238304c08cb72f0288dd8180d145ac47ff575c432d31631c9133a11e62d590fbb51552ecf57c0322b46e5e56093744b668f6a9ecc23a21664dd82d3fbc9532397e18618b5d14eb4d113c2f1e1446c7c984cfc67280e623dec1bd6523afe4e7b6074e142123a873004f37bb99b5fffaf925b173482be0ce31b84a3c2b4c99add3f4d06239644e710084bd0afea0b642f4149e230e7d391b66e51ed85ab3d59f64b4a924f5abccee0ef1090438c114864ee199e8fad26cad863468ce5a0143257ef6f03a5e26d47a67ea0d92c46fabd0dab671252c77690e23f944398aa327b5994e230708a4e83f5b97e79247912430867dcad860c1435951370967a23d9af406ed05282fec485c4cdf70d015b21b36001dcfe083bceed2e9bda3bfff3e34df1289450beab3fbc510d6a8a858eb74d4eca310ecf97cd90d28aba9d06c60d147f798ce5572a22af505ef21734739b9d8cd879874eeeaf698affe95ee0b81b6ca1d719b478f5fd997a9132790dfe0f6aef57c568bf52fb7033942fd0e5cf47d8370a39e66db6e0d804d54bba84f37adaf1d31c1d29ae4793e6a84d8e99c6a28a12876ee2672eb31922cef33db1fec9b943925a47d65ba4039a7272ad3491764eb1ee98456533b42ca549d14095680f7df0735aab842c6e4d818d0bc15eb7c12a16c166f36e01a7af095482102450ec9d9063308f1183197ab4ec4b37aaecba3a6e808fa2fd7daa88e2fe5d1e188337acd503b164efe5b94e5beb6461d68148520c9a4cc02f6b38c620f8a5072fad249efb4354630686baba43af820927ddcc7a322cb1a27300ea5229d8b900a44abde0ad562acef0aac12ffd48cec82626de7a31fa39b225ad3fc613d005731c4d3b04981dd1fa0fa21c7381dcdfc46f9a559b6ac7528123c61c664fd5a3aaa353d3c6cb4a9bfc7c0f2f8559bb6274e32b57a1382e1866f0e1c9b773d6f950d5398837d1d1845c56d3e46c4a48494f206ddb83442a9f3691b15f9f7bb3eb101e884c09ed83c8796b4f024ea4ac718a877135d199794761d77c56f70313f38174c0934c3299adb6627501446f4a20dddff3cf355b217025a7022c14f18833e320d74c869aaaa7d72642559e7776dac3e5ba26bbd628bab4423135e4ca35c5a78cd974246709c3e6e9f800402e516970cf8f5bab061a80230a4f2b14a824619b44197e4758af11cb0e40d266e527fa1c61d9b2d617f60633066518bd09948c5e4f5c1885a06aaaa3d59b2a93aae177fcb0b4917fd6f41e50d2399fe780c79f4483192dcf14cafe1fdf69ff6693b4537623652014f4d67363b8885f84d3e40e776a1ce3bfffcc00f30a5cb94bce85b348ddbdf58bd0a8f2a20be1d671a3099322a0fd962bc2c3eb0106518bb2eb730b4b66911a01f1db84065b79e55dab1332fdcc27e937c585e8ce75531d3951e81e9d5b336c467110175240a44e75640a7f3b2e5a40e9d526aceb92aedc6d0ab7208f688e0a4136de75e522529cebb42ed87a6170ec403bfdf77c2009821d6b5c8843f122c7d01358f714fdbe82564034b3319cb0a09177bba91f9caee46d897aab6e07d39086555a83917699b557e17a2f6b89a290c9c91edcb136efa6b1f8dd82d1cbba1b13db938ce59d09c89b0fcd21666a218b8885553e1bb67b01f9ce3f48571b0eaf5a1f8c98f261beb27b151e25d49787c325e553a8c2dcad4aebfb911da7e6909bf35a954bb59e8bca1c19f4e4a203ca49c1d51db890b5f0f64c4f5e2627a22a6b83cb92a663109decc5456e700558e1217e4283f22cfd0690fcc25d16d003cd069727fa86007e7b11f7bd20a2586865273619d1f5efaae622adc0a0b52be5bb466a0d619b767c9a6765ba1a5caf368c58f30a1ebd42de3625bd23f654cea1c27b00f457d77097f1907844e2ff44314bb742079243a4e264e923d0a5dfa20f0a0adea4654c06f76d706d35e1405305020784630c899c91d011d77229303db3824ee0af39f28211df307454e6427d8f24ba2987c917c721ee60d2063a8460846eeebbca4245d41f79164c4bc3664939ea1b8355daaef9b22216594be1b1e62689d7b91dd115471cdba01f5996a3f74ee1e47ff045483eeb05b48ba08d8d7dd6bf9f0455d12c40d9cc2025d89bea2fb457b1952d3538e091fa006b41f2ab74b2194f96a560ecb4c47962b6b16d4341c161e3afd0432058abdc01951aba637b5f77ce42023304b04c6b4afbf53016f3dc823c604e95e49563dfee71378a45683f5d6d22c0c6a3e67f95250466fa616e2fe9e6964a78929940fda932492c5cb4ab248b2a25bbcf51e4946d87de92eaf533b1512d66557cdd2b4dcbba7ec2f26aa8a92079f997a401a3248972557589faf617a3bc129f163083743a9ab0ed57243590cff87c264d25e984c1e58983230a22d6c964940e118429af4a7a38b5fa5e58df4468b94b58b6b74f515d46957b205fbabcbb3ac3f3c0340221460cdd6b7da775086f4dea8953e74dcc5c7c88ba16fe99bc71035718929d203c22b01f86761dedd354c6fccd05142a4f3958b1898c47ae9c6d8905b533643220c6090cac2bf7796e805a4925d4b630aac795b362f94ecd902b23bd084c2c2ef5e6ce73c696f5f17d62a567be31323d3107f5113a8da1e14f4f748e5330c008b0a92c0af2156ae816d8023e65315ffbc507d61f4db6dcfc44bca2e282aa38e01ae92110499ada27537f5ac8723385b2921627044ea0ff53480e43bf94e4ae7a3e263350a1c1fdf3764ae477785273dfdd4f88a7219777744b3ac9ffdd1180827ecb8dd5b531d04523dd16560751d48ae78cc9c3b968ceb75e8d77538c7e1d8420f7b9dcabdadf0922dd787eed4014bc5d42a981bd7480d7cc5bc336bc9b492863c3456546838056064bcedd2294b4285f37203f3d6dc2423d328b5102890a6079decaf035051b190e40eff8a36396aeb38d5c203d5717f620f1de290d286b63f9ba1c07821212338ce0929b6a26d65b4a76e6e47def55715c93c3dd3790c7afcf72d03b3b7678a584abd347de36094a64a3a83f577ca5d544257fa6602ef6fde6633a9a1e6741dc2bda400dcb25fd17febcedc9e8fc1bcc832e9835afad5374d5465bae0b40b60024dcf106aaa36d9cddbaa827346fcbdd3fbb2e5902161de172c69e2516f3e2eb2da21adc8fa07403d603823f6ce7760e236a837087810f5ee0ec7ec03374ce7dde6228d24f51ccdb50efd00e6528764ef6a919c3c113c8169f8a3fbaddae15c867061dd0f1b32766587bf465c285b19228cb840e9d2fc10a5bf80bee1d28be72f4eac05bb2c59450391653894a1c476d1b1c8445628f2840570ded916e8ccd7d23af35c0d590d525b516083addd247d0bd291bbd29d0f11e935de1895296b3810eda45c03a354335a2c4be64d45828a5a0cc075df85c4863926258bc3be5c855333fb314eff26d7e2c831e65f789dbe4207f789b41373f71fde7b2a442dd2bc52ec7c1dc82572f9d111497cb6c3d454ec8b0d529eb9022709807f2239097ae9c9a485612512428f505f42093af371ee9f02ef4e58f2826a9ecf14042b050245c8777a19385d0922fd14c846db5afdecb8ff2d9a40ce1482908817c1b562474bb6d7ce26502c521b78c21b1456fc84e5b38fb41977175305515be696cfa2e9c96eb3c63fd9e05a592b8f796e56c2c9177e836c9fdf4fb9accaeb0c90a35cc66c383ece202f3849222c19ae8b24c1c43eccda80a7835fd9611770b65bfff6f3755ffb28f8f7a33654791936cc59c9ff17e18c34b583628e56aa0e24e1d9261c2bfcec4343b21f22fa02ecaf79b503fed62ace78638c763028bf240e92550b8215fdd12db4d767606082c116056ad86f0ad13874b3d0967be0a558edae8a6223b45a9fd559376248fdb28e9456150555258b44d625a88e06f01dcbd7a220f513cdd74277da2c1d2c27218c6b27a22f6019f589b23bc65abbaac1a73d07a050c3fee0ba26ad8e52308a487f6fcfe9fe9485f87a4248942ce050a5108aec495fed3bdd63779dcd7e3baa1e3b457db81a8c62c24316d9e2c7b2a657826bcb1ad04fa3aba96ea5efe26654b9400fbd948ded19df8bb672ef3d44e5608eb75a28d40c7541a7cdb1d4705fc655440a65c2c2e3a7137c925033cb0d47b2dc11a6f7274e343a0fb851c930225e736161e7f2da23291c65d3561f61f94b5811691070e043ead234cd966ec057005ca396ebc0b1b00a839cdfccc6cbbe3ceb48abc3f433a765cb83219878d5402e1d397c1cf39e746671c6c133345e0bb638e30414b8a3868f72335b58ee6c6f89eeb52f2bc087ecdb1b2199ad32dc8dbda8e30a0eac257b4a6024908f701d71e877601b69344c4341e346c7b261916a84cf22a1ac8fca390040e76dd569f761befc7cd0783cbeaed74b28515904300a321b3ca08a8ea4c4a1fba3640e387b2304f752bccc6b99bc48590fb72358adc3ebfeb674cc91c82a93be3f230253fa220c5051a9f8ea87b566a02ab6519d3eaca2c163b8775ac0d540659204af45af5bfb73ee4965a8a317ed01227d558f63f118f3810902db0e14f2ac99ca24cd7166bef628b30a324ce4c93b78440fb093e32b93b4f03756adf3f994d50210fdcb1740354397ae966d5995a88de34a6344d380c49283a28e85f1c7eb1510e0d0310da03d90ee0c9195e8f377318ae719bf74401ed313b523de5df5fdb85ab0768569f5da01451b4d6b5f1cef3610169f9a6ad5929f74b2eaa4c23af1571f7c696a0af35e1f2f4e4b6695a59a943f8366083fba710d36f565eb806d3594c97656a318426f59fee830d4f90428c2fe25e56e625468cdb3ca115e86d894db83de7c801ebf7315cca3e137d76d48d42f5c86565513656709483c9315a578c55a8f23a6374ee5ee895793ac8d406616746628f663e60129e9679ee70df106d749dcd21d1ae9bb3798ee42dadbb350df3bbc914e3262a2fd7314e2f0e9ff45b289929dc45e8ef2b04f52af20ec27b480292e90631545ac37fca3806788ff8359bf59056951884147a82ca80d1ac0cf06f46d7c3a8201e263571ba63173fd0f8a52625a0d27a58fce358347a1d962d2d5a58aa69fff32b8362db29a7e762c0de193e733246283db2ca0afee37685059e773af61ffac7aaed2b0fd528153bd7574e22df8243a6bd795c3383a997e3ab1bf296115eb0d0d9e132a9b319f328e54fbe12faaea724a728c8742a54800c4ccbbc2b5d783098312cd27e0881a193e5c905379edbb64e4ef73b6ca6884ea95d774a1b1e9161aa3ddec33ec85a1ba2232be27560fea54e01ef67d607d729254e79312c6a416ab27710f9eabc0938e9d3333aa006fe462b7ca3ed8aec9297280992fadcab399e77079b43d1aadc3e76a7fd39a3548a348b8ada9dea3dc268271fdee9838beef7a2f9957a7243b0f2d70048aa475526c6d5bb08c06abdaa1525fe7386686b8944430e2433a7cc3b2966272f1f45a234f32227dff6636b7041b5a6cebd6cc779e5770a098922ef4118e04cbc9c2711b3918b66d3ce8239f59a18281e40008d076177377d5cf411ff319f3417fdc1a138846b6a234acecbd4f786d3af7e86a10bc02e56adbdac3fba6cd94fbd7df432e2853a587b2221aed7f27b6586e3b13ecf28143a92c26194a93d5b9af3b95af3fcd2ef3710d980109bf767a6622b7ae65814668c3fab63da37e9ef9e8beab119bde63380bfda658b6f2e2ceeadf29ae3c5109bab859f21a654d853c344c6b4e1b3c14775d28babdd7a961fa572f8568a08d63544bc2e5f01e86235ccf3cb9d9683c1dc7037347fe414f0c94453584679c20ac198da8420fb696bc4c6aa42fd5d4ec25569ce769de2083fd2146b2e0b2cc49625145fabeba7d7f6a2001889c6e66216b7f9edfc5503a05d619505d1e3eb0543366148e6aa137346eddadab325bbc9f0921dad61746f3980e26dea7bdd8ee243200a3e668e47baf8f0863aa531395e80c76eb889a07a74431720b0c723d8b90cc522216604a3f7a2a07c87a1da7a5cf68e3c198ce0146b778c1e8bbb9ecea8ed9092b2df7801aecb3716f3c7f383e33256aee3f3f42fb84eb77195a5229a8527b4ae70c530bef808a6e5df34b5863eb3788e75c7a8f9316ccac256e80da31183a2da873a445b0ea8e4597b69270c1f0640d2d60e7c9a99a8bd80e2e91d8f1f2657d5a621805c0b6abc67a5a69eca110042e254aa0b77209cb4e056b5770b412f11786730520f9f3418f8fcab635f8d35a0607928a6c82a3859ca75bc278df92b92de68716a617c3fc85f8264ab8606f6059ed542c5d0b877ea5e74571636a043edefdf871eec2c225e3465ed52d85f172b11ac60efec6fdbaffba9e4fc363523b02734f6b2b700a77eeb3ec8900112118a06d6f6ae3876990e5d77c90026c8b0f071025be055ddf6f620a2b551e6376622855e54e258d3d6022055ea6de66d9f6beed02ed2f1fb5e56afbed7c6abf695ce51407cef4d2384e66d0993bb8d10636892bf6de0aaaa0477217ac93f296e35501abfec88542c66b2ce4cf09e73039de9a325f54ac30183498d78b09ecef6f44a0bc1f52f737967bf44902b4508bd48005cc17e2f9ded91fda7795f617aabe25f8892294c0c8856d1d011e27e470a8c85f79e346c3983026064091aab9411a2ec3ac5b0b43eb202f8ab495de9249f4db09113f1d6b6a944bec54e8abdbdb1201411cd4513872d8d0416367aa423c989cfb7be1f2810bf1c2924d74b48c1d08040d54ad5a24dc4e304ee1a11a2fb6754d7a9928c34025620e865c17823d3ba105e1d59f592c631a75146a28b4190e899ae2ff03ccf620ec6f45c2476736d12020b207ee8d686fd5a381c2f1a8a14e8d1c8d7035593ca8b0178f97df1f9c7f4331bbe0435358c9bb2920e74c82a53355827c34df0651ed31b05bea9b99bb8f810d842aec201cc82dd666dee39c04f04dcd1789356248d337d9630e527883627d2570fd13f1905ca4b2049a6ffe6ea526241bbed45060a2ad203e912f49c9ba673578f0ceb4cff57771dd97e5eaf3577f1d43fc3ec29ff234e3204661329f3e3c4e21161747f7321d493177622cd03c2fbc943d48f5f081c3891aec2217ffd5a21cd78cee7a96fef752ab6686da5bf5f91fcd63c8da455b72f8657cdf296966e55abe3c614e67f3c86ebc293a225d03e766a70df564b553d6e468da753276eb6a16ffacb68072b135365eaaaa47999cc90d31a7570dfbc8de8337ba3137886e1f1433298e868c3eeff551698747a5fa9942a0a9cb5e4985128da34ca47ad1f93669e7f41256d5c1dcfb6fce158b06648db6482f8ffd5eb78e33cadfb0da56462e39c83a95ceeed48a75a39bc42676ef66bfc1b41e61f7524d61125a0ed58cdd3b1e7b7d044303768371287f6c3579ae4f22d0f832551f78d937c451d05df3e7806c88872bd48d21c51f847c5112408291d260d8222c9e71357f527d59f4e89bce20aefca696eda28ab9099a40bebabd7de0481a4801806805f1f35349616bd08b27acef38d4991ba4ed434d940c404b0b08245e4aafe8e5f7bbc81447f172780d17eca63e0d73c7987e729122aa2e771d8d000849044303680cab4a9396263b266607244cd960345785357e3eae64c2f9702c8262ce4f66a2ff863ca06986409d38bcaf0e7ada9657f286add75b7ddca392af1d6f29f02ed454d2ca1fad9e662915295622c56d720c8388bf5496a6244185b708e1a3501424762206e9c2db301d41940604a44a69983920b63287a14135b681d31c418fec46f18d2befd40607bf4e9a66e61177657ba583b2897e5a0bf0282387d7b4458117d42e33faab5766fa3f429e1a632c61c27c59a5fe917a65e16744e1d4dbe8a860cb3c2f90a6533bc91a6916f621026ad5cf6757b90c7c7118573d6e2ed20cf2db6a370e90f070de6a460039f5225ad7a4ecc84fb516f73afd73c932b8ca0e33698b83e7379c2deff7514009548c38d991cb9bf578f70c5a50d843af600821b91f267fec1821c3a78e37705ee9c75c8f8f9934e2d4d958359aed50856d2033a614781303fe5a518be1732344d47eb89fc25ff0bd918d1cac9b07f78971a0d7c8b5f52c9b04c9a2b6f30279b6a6342d870a54bb4299c9c3d4207a3ab02276d7450506e065e40ef645056bae6670c24a07c38042113f2158a33ff8b291a47e37cd9f9e5c52fbd58bf4084296f4183aef62fe5c95b685d4e9e1d8145089d3d0bca86c3efbc96c185890a16b95f9ddfbabe83d1ab04aa1ee0911cf243259ca6a2aeb79e469d303ba9de3e93da001a15a3d4e4858e1d02ac37e0ee24c9b0f3dd01bf646b5e17d11395a0bc82215c76f06feb68a7660d47cc351043f26fe4a9397a5a3f0636d41ed0c62e4a827693cefed8eba43e0b9659420d6ddf7a252300014f29fff6860dadf6a5ee0a444850c36923632b1e9aa7f48df342b5d180ec017d4ed2e0172b18a3a6b7d72c560a584127f6a77e941e533c2cc1fceb096dc0e103f136ecc05eb726e60e7771b337faa4daf3962d133a0aba6f0e330f1b30feddde549be00f48dfb2927b5d95e04bd11435e02beb66fcd5448d666ee7aa0382d28dd739cd2c339806f6013a05c055ffa04a3a6b054b7841d2ce98ad063ebfe6384c570e2f77be4a3d5a4c25ef226b0bf958908c667ec7a76ce13bbbf567e91d7961330177296a6312e4f2059973893b3f2a2d0a5713290c1c9f0068cd2fa17c522f4bc16386e72bfb913b3c8d94e1cea45451644e96f4130316b8e7b31fcc1594ec896b619eae8d1eedf84a34d3049348406fce9bf269b5f2ef39ef9ba9428f3389961e3ad3d1e6df7c5d52dcb0698910cd1a122285a0a7752c7968638d6dfde6586988b7409a2df36958ebce214a7fbbbf05d723ec08115ca2c1fe717610a0ad734a0c1eb7f2c62ee67dd1c8b3e5e760800fbb98d52b780d9c5b3f05100165e6ac730c68066921f8f9a83dda405d98cfec7ef1bc24ce73ce1c4fb14fb3fb07256c52dc77cdb5c161f9d405de95c992ed20cd6a53aecf7f7c181c993a1392c2a05f2bbfc90232143706da31e73010ccdc4e537475d0270184e151bd3a90dbbb94502a2f2e2583ff93418556ba654c6a297c06cf389c8b0b24704861b933cc0f8c61a30329a2637089407b6203107a42cdc110bc035a7f779f10058187d27de9b026531acb4cdcdd83153d150520902594be61890551389ad2a2d86ca5b08723f39e3d3f917bba28741a379a3873aba5d529074ca46e15c7892f35b320e87f2fcc03fd310630c642ba5c390ef87555a2f3bfcab493bfe906ee9a4c9a4ac264f08c639343cd6fcd32fe3b9d1b663422ae81249c4c88abc02e69842dae6afc3ae9af984ee7736a792537e932ad45a2831c1f092c8744e4bd75b3b4e8e42bd3773413cc4a10720a7915e1c05a5f453644e9927ba371b09a3427c10538e5b9cd29376c894abcf005a5cc1b0267a268b2d278ee38697dcd2ab19dd6eabc87ace77c51dc8b2f184b8f82ed1a98ec8ca7f3f3e45066dc18325e9a08c7271ef2aaaea1e7f7470becb04eadaae565de9c3ba49b41693eac2d13c4dc92d8c2c55b0fb9fde1d85b36e9a3b43860dafbc118f6e2ee70812cb7629a5e067135e42d08a531db57b46dbef0205fb60958b671206e83e734e252471421ed5f37f3cc0bd0d0444f9f4c31f0bf272a5afe9f943d0dbfb11e30b8efca3364a7e05320531605cea866c43242363ccc84f7584056ede89e42a8a160151c62eac4525986e7820e19646810234ee2386700b096f7ba08d6d55133085af6c4898e7d19857766cd34c08c1695bbc0425ac35fa9078c6d858a3f946dc29433c628dea6f9d251955603006b8844ba94a174db2577f68aa6d9113be3dc5ff444448e15dc4186773877fb9c31a086c6aaa97a4d77f1f8a54c79d800c26735f3b1f753ecec40d36cd98a66fa20f39535e7a7690cf5da99c5548191f96161ae1311c2d7d8b30123dbe60b67b3bf28af529b0d193b163131ee733a802251bc6d478044d61da18c17818ef0621116ea4677a9ca67ba2726f13ed2b3f60d3204b9da16d11abc760ededb0cef4849082b4f59923ab4856d5e068c44de2863c5107d7e3f360599c81d20dec23dd394140c6042d18f8fed6e75b620c1dc034ec0e2baaab2f3f1b2930924d80803fbbf17658ee2481e608db02934c9fcd86e45a0899932c0852ebd3ae82bb6eff24879fc262e1d215b942adf62f7301c1ef8e493d8a301a642c25fe5136a42968ab09207d1d87278892c5264e64fee2e355b0520605203d1f40a534bcbb80f4266f23c1a82a2dabfaed0979c8000bb8d8f185be58df53c9e0bd15b4de9dc158a35c67a842e885148b7d0d8b437cece3840f7f680899e0c2b87e4cdbc01593b80effa5c573a7d49d9c7a454bb0c4f822ac01e1de27d18b98ed6e3d84745f237bfc925cd2cc70f5fce6b2eb8d21a568ca53a7e8653142a009ddb9e3ba7e03aeffe6315dea2f12447de85cda3b65df88d3a3dcc36214af052e2c0296b894904505b27fcfa61c1196629ec1039808abffd408b7b3c1734362578504da2319688489e92768abee8c066fbc6739987650eeb045b7049a292b7047532ee370dd45621f3132e556668af6432abe58e7c394d541635b02be41712706c63247167838e59bf73cd92045f2f1043ec82e6702e3c21dc72d92875ae4297af908434c6338b3793acf329faa3e098fd9b6fdf320736e08bb9c724c27e1fe89fa91f942d16a231a507db9cd7cfb898f67b042e8d842830cc1cfee2b6af8f37d41a2d344797e91cd66ec747f4ee8c417da4322c1cf19efa212a630886edafec0f0d0d8e7c4fa64da1eb12df7c9d650cf6f1dc7f3e5c4e7a860080a8762e1de4afcf538829ab76e6e197d806be450f88a9db79972799056274f0399657066b4e7c6fb9cd387ea4c45ff68164354e803cf6ab3dde866855df562aa17f973b8b48c8e701ff96253a2e0a5d050c6b030c206382683b1d0706c4f5b3e02484d7c4d881e7fa294840734dfc65228d219a6f085c8e0ad88ca4f576de95eb4a8306b81b53049224eea8d7c43f89d3962bd8735ff4e390002fd6fe2a780e7b91813f4fc4dcc4e3d082753897d27b84790c38c3f6dd12d256e8c1aa7a6b4453da80b9d567d6609352db30807cb23d710c4cb1bac19f159ce7c45c413aee506c7a623ff70279e2dedd391657275f983e8e40330073f372e3d53639fadabff34eca7622bb316596c5c3fd547344c9c010d9106184c925dd7629a8ec4a276dbcfb8454a6262bff27a98d08f144c28022f72fb2cf71b9c381521d3366cd6d906f4cbe64f81fede13b478c330c97e659d165571549f5592bf56f6cbcdfb296fbbe22fc0384f0f243ddea38463cc70ae9fae6ccc57e938aa2217a829e2b86697ba4d3f29565b70195223de87760356dded321c60edece37b20a8adfd83339f5a0d07e35b17c8f7ed7b6ed7d6a827c0121992f698facc175287ee5d739e4b9b3e9fd43a4107c8de45e773a0f486ada241d93c5a33cab367ee6561dd8ce96c25299a28ba0b590c0cbaf8ea999652b85015bac6497b6b6f9ae2f6ae053216e2f366cf8f3e5d62c0dc5aece3313ebce971dca986e3d883825432a830cd01c3db5a2a338d8f07530dae81e698d4fc3cf2b64c3c5367268378d26eb5eb075ae9107f92e81f21080750ec9a2d079e2c495b7994d4153a4394dd24851541e33a13a7c852edf9088b4d25ce6c6b59836a9c32c71d99fbedb52f9183962ddbf118fa0ad56d5a3f10743bd9fcdf3715da904065df287f3a7d1774236c1d03dfc16224703e867d4c86a955bc07568965898d3d630228a8da4161f95125c29dcbed0e7733e57b3032d2f214208cc3204014a2112cf61af60bbab396907edce5f8015b3e4624a2536f1f5964e99abdec9f8326fe1d375592dd816f4836b71d37dff694da56a23ba72a08491506ea37205984c2e61797d41093c69b0e303d9759bbaad659ef2ee9045aa43a3c63e21172d961d9a7a4dd63136781f76c987f87936a0e1ce1309f2e678ffd45315d8e1e678134774ea68f06de64319df17ef2757cf57d9d46b69872c26d1fe559ca2557e59467700fa5f30f10f313bce7de0185f1e8896e9acc0e79efa2e9836983bf8223a05e5e5eb4cd05c7a9726651dafb9eba453fd75d6ba879ad40a17e1c27890202d76d6065875e137d3b4abfd2ebc05007fe054ee67f2ea01ac2939d14226d7affb86ef75c526be65fb0226f2bb896447ed820549baa6fe301b51e5564d856a24fd4e4f03e4772471eec80ac22e0796ab64d69e980f1b9bd74d7900e104bbbd8283daa3238f5cca617dcdbaa03fccd06ce2181a706b445246991702a3716da74142e336c4576dfc71861c3b4af93befbfc081a0f02a9b4c46c0dd038282318f1d7dbb32ef2548ae6354d97bba9acffd34a4850738ed54624200e8dc843a6a0d6c82e336261bf0b41a72d5069682ae9142f71feffe40a51e2cec4e3d438369960b55f146d87b49500cc95e8ef014e2f21c7c3418d36513301c871b2e7301e20da90234a3666e010e4dfe3f30fe79756024e10e14e035203381d272afb6c32d2711cb212848369baf4a79596d0f268137eee8a992aa7a80aa7cc78f75c35bae81a0316d64e99b2a1c5688554a8594fa2c81355e22ec764064e3e30554d3d7d09735f689b53618acf0d785aff35368278dc727d028d4ec93c3cf754e0e5580335653a7c31ac1f3246dc3e8d0a5cd134a849cad6ff3c0f0b8c6e084c3db5066a56142b5f8202ced13abf7887e017de26ac463992933c3a48f65c467101b2554edb106ba094d21ebefd8ed45cc64ce07730c0738b9770965a023128fa7cf157343ff55590a03c73a342f82ddd2a43944031e8c2212d0f9fb2a4c6dca9278f1837fdd7ce1b04a405d3027ea9b22eb138945e97af4ae8e47a47df5bc07fa76e12bab1e42680f28c12db16443baedb8ef663010697883219962a244ec0f916ed0b188329397f24317c539dfb43c5f8beb653e2d7bae4ffbd2e092632dbc98d0e1c94af7be4c3e07fc397513ab547f61909ed6e1dbabcca5962dd8c68dad074b81080b94278896e1628bd28234549100cd982867092be083305023f8f276eb445327c7abf139f4882dd7eac78b27081b2471fc8d54f6d6a07033fb5bdb5dc133e09426fa8468c2142fc46b66841f32bc80f164d7156851c5449a7b8a610b4650d5f3a3d5d6e5b7fe66e8bd50444fcf415ebf878cf5721c2ebddb63e7e15a1a89b5c982eb2fb719c2a895b61629eb05520f466899fddd462154eef70f7df671dff0ecb5825f7a0c9eddec58322a314df606eb9fcf5928b640b68b6b6910f80f3051e1d5aafc261ee3128e243ee6caa35ee4af6e8f01d19a7ae9a8002ceef07820043d23fe1585cb3e82b0c010cca3e0ff7d8a9b7474bde269f0ddb29828ade000263c0adb0608eccc9fa530afb76f8c46ff735704b4cfbebed0d55d61e057bb07d0eb56976da546e8fc9dec7e2424dd7872f844d79abff403a0eff1d4339e92e8462e5d9e5b79291e1ee2f2a394006e52653cbd87417733e46f8e3a0e4c9a388a10254cd9eb5b2b59d03ce349f45e8e109ddbfa076791f26403748deff76e4a7ed4c0836c463761beb24595d8253726052b7b1cfa73c372a7d75e5a80634c0ad3b3ddbc982ec05d549ff74be433ba583524dd4a712147a650d870d3ac63ff6d068301921e84ce0f3e351999468c7f2bd816c16d708c4ce9f42c7505b08f4fd7c28374fc5ba48360dc814c4de7e6c5828c4a6e471a2f8fb6aa5f90672992d19951b69a8f204a5be0ef5619fb9a00eab1a96f23179de424573dacc596fa505d916473ec85e96f2d366a21e7761407e69cb47273798e8fb71d3f42d873fa3ef96a3672bf0326abd1a9720798c3a6fbce14326b7176581c54c3f00b8908b0bb09efaa9606431b4db3918df328f9e6b42ddbdc8e45fe5c955d34d2b4f74ff9db9093e6267c17bf71219b6d24037794a9e2a36dcb18027f4b23bbe090302f08b9d4b2b920d33e86fb75b01d356bec71c722dacb4600cd8a769de962922a115421a9a0cb16979999b95f4e06cd187393720ec91a5c9cc4d32affde9cd33d12f0b5163360128be69915522f20cbab5eecfe2da2fd57930c9c68abdaabca3149d49feff28c02fe4ce88c732d512d0e84f5ec519290cf4380ffeda38c29b41de7c00e35eab4a0212f38d41a967a0968d841fa889348847c8b889e5eebed4a934917ffbeb39875139ecfd2d3e7e6f8fed9c337653ed391403ffd7edda9ed2268b5389b411708f3797f1909bd8abc3fb4cdc0b1590af91aed3087790c45a2758af5f92f1d35f3e3bf3290b8c83e440c1ce2d75d2764a4a11ddc005b3cbb35f344541b62656d2113bcd8b463ca1712b21a21c816208ddd6ec6bb6c2940428d6b91a7454857238012a4e485a6ef3e35f385387c7a88cf6d8f4f40a0f9c4fbbe0a2ec0e12b302f5c806ad44fb680ade2449883d7532f4c6037e420e22fdc1ff234a3eb8f9f4960b1f3ffa4bb69ca75a50391135eb48bd6d1b3ed6026bb3be12b6aaf1e1f712c7adbd02c219730ac05ca95ebaec0ffb053f3ee0a3f8054d829b2b2473718ff642342861227cb8c28c3b06899e297624cf2d4f36830ae28f563c0ac05e536670843cfb4badf9ada1f8e4e77ceab4c43c3030d1da5d7a3b171788de599eb886fdf2e80b2d737a56c6d7ba82e9c0f8faaabcf46b6ad815ab9227f83d0089bebcd2859abf06ed91bf34824d28afcc848692a7ede57873ca7507cae34f4cc0c51553c94b514dcf3e2fe2b1c9578dce6468397bd6ec3c5a73e57022c6e549f55b2edb7f5da9676ca759d38a3793ed16c793a993fad8b82f584b117950171ca67b74109408d52066460747c05c56b677ad1e09d1dee231775e30a462bd5ce4f3682ec6f9e554277183e71df7a7da374b6b8907f7e2235570573f3f711c2555b332a3ec3731c9073a6293b902721aec07a91b7553962726a18abe4d193d6d08dc2ed7cc451adb160ef5a676c46b7bde5a0ef6d5e0a22739fd0cd60fe1ec97074c3483f7daf6720dbc21dd3912095c4a8bae191481e30b212a2efc0180fd007b133010fb49aff54978c02c4223813ace0c5f5208cf708f7c462bb57b302519b926ac5dabfd87a1097ddaf9d2b2e7aa9b50d455af260e06731fdb33e49ae438418e797b169ad3c566a9d91497a580aec549e7e4830d4032a192398aa72b0c2f2df113990973be3058483f4126cc6e188291ce114ee55a56cc0218e9fae766891a29fc1068a96dbf14bf0e3a03ea90728f1d6a8e927a431f161739a422e5076225d824afe683fa14641c192681b5e3d7f4e3d6533706a1df0baf44d8a864fdab6d3215d194f854f356fd017d3702ec4851330b9aa1b98062828f3a5afa352c57cf61dd8b79a8bdc13563e4ede888af8d6fed4bc026cf5414552789e18c1cba2cb6f4588a2f03d85e48410452f130dee4559446a7942c7647bc007542efcf4a9d560b7ea8a0eaa83d574610d3547e161b275a8324df152afc6e7ffacb9d07895a15eb49ac62500a014a7cfb27ae12a1a7cb4753497f88adf9929faffb4c784317abebecb9725b71835daa9a220118b8dfd9b4bea6d53d29fbe26239f4d0b2879cde65f9178427d8b437a8ba9a07b088627f233ebc32bf0d4e6625b8a81b8bab850302e1e565ad09cb341b6288d164b4a007b788f066f8321a1b1b012db5a449c5a0e114283a7f781a50166191f6eab4d532f3aa85ccd8d560b807f1b469257d9523845c1c65cb140041ef78cb020a529641ab7cd00a80b14f5761faf4e870f91bbc57ae935b2b71d552137d51d5401a5f6cf8cb0afffc958570cd9e16270a05f1891b85c137ebf8170ca38a2cbd7e9eda3c753f02c28ed29f4a3b38839c55932171415fc79f565716726d230ee8d6ad6e337f5fdc256a5d797a6dbea7362477db45f7c79964c5397651048e4b59d8181c430ca14a4db6355cd611e5fdf6557b912df0444ed3aca4331fffc535b0f88b22321f52a4912cf6095fb3d72816568b1925c5a416f81d28fa45477bb626bf37a0d3fc661ef12347807dadfe7a486858f0304e8928f1bb91586e9391109822c06b75a1be2c02dad051e83be1fabc1a362e808122ac3552be192ffe688c9c0b2a55a5fa989f983689d9f641fb77440f76bc34b292f51694b8523398e31bfa965e4e4484340ed816f9b1818b6c5fd90b53cef24bcb8d53fc65406a54b6ffcfec538e4a2c414e3c8bed8c21fff4b20675f21c5092ad088afbffce0f86718e13f938de6d74bef8a9b5728dd2e6a6a846b409bef8fbe1d9965918f4512c0227bcfdcb6ce55cfc2a59b418cbfa8babf1d584392a294f1565076c6305618ed11d125a550a991522c703b7e1a556141977de5e2a3584c94d17619c21a4490563722a35aa735ef9e4d44f4684bdc33275cd6b2a4c3f7af26c9abf5d3c246b9de8262a0174fe18c601db7bbd4c709fa9b602598e533643b8614f5c500c0d09834317ab7286598326a1e9509f09428e42da9a7b3eb3edefa3550074f350d94498e0e1d28be0d66479be7b4b07188b3efb472bd079f33dadd72449221c7696112c1260c1d3a7d073f846529f0b9c925ef1744c7a261bb090919999d7e5d93814b689449636cbca0c7c3d5bf41762db7d9530bac698a080339f739242fc223017fadf243138e3551663eb5dc2dd26f38afb95d81667810aa086e3e26b4065110e8c56d0d5e931b7424bdc232424884123086724175d2a3cd39068aeb94c1ce934ab06282244de56b8c965be0699b0334b887360ce4c011c8df55ac3a64a2edd59daa4062df080ed9926dabd808ad6d6e35d52c37179a65041dde5f582e39ca12577fc437ac41b59b4bfd6419467f4646644faf7ce68b5b9badcab4582f0d033652f73144f27db2fae22fedff0e9f8001225cc7f96841c704d8e18f307fe0d3a272d88f3a83682526275665024c62dad30b91bcb42bd6027a754fc2e8d96819b0e9a7bea3faee360516afe93b6e98eafeb554a6c212b510e76388e10044181b95cc05e47e34da9d54772d4afd4c04ac2f085f12ae6539a3e33555b12357b62db1ea4bb35f0fa4a149d8eaef5e5c1e8ad81df5bb4aaf26bda08ee09eaa774ca2019a6e424d1a6bafd6e5c1c1ffc4387ae7b27f86af3563e22c7b32049e53610ab6965b60a26ad0c5ba100595c5d8f12b0b9f7c70d3bf8707b2b3bafcbb751eb0b2c3b9f852cb510428dec823397a388dc62e1c729716543156787afe6eb686fcc0e2b1b346163be3370a340124b7df836e4e984f3ffc5d74f1e41242f68c039f12b531dd3c3360f799098264d853ae07d37f24a607541639616d48a109515b5726c496f1ca0fd3eb304933d9d2623540548df5c7fcc7eaa2b5c3b36b2587cf76f4d342d7b6462f366f2f70d37106e15ce77d315fbebf9868ec1b937c6b15d09d949c093a2d2a4a22d8af6bb9f612a65e507bfcbce93d5f886e375fd1b17d37d5a404c0d4daf9a18fa8c1b9ae539ab8452aa9885e764cbfd028c6105c7614c0e214dc6406132538136b499304682b4d7bbb79332820a789d0a64d0fdf788e0b9751083b9472868c965a6a529c98514771d5ed0485fa4244a8ce93190e6b70d9dd61435f088b945502fe81ec0e92cf06d6670801dd87af6f0bce849402856280aab4990721aa086445220d48ea02312cf2ec4d8cfad3c3a8161a49f20d8d0eedada353887ea3ec51d1e5a1959cdcdb646c56d688be2896667976c0d872dc0c618051a537d4d4266fffe883f87d43f5f61e8a76acb8b6353883816871d854a27bc61705adece37b6a19c9b75f3ffbcbdba9bad9d1cf6d57d2f7fa008975ac4cdb0e2111ebf0c2dfde1bc2d26a055082d7b163ee406aef1c411a71d61e8246d45c4ba1ff04c9c61884dcfdd2a517656e7747db50120833dd362eeb14aa884a8df936a680219dc223aae613fa73ad21473c2618cfb336471277e09a95182b5805e2c5163e7e7429d192d7d655898e79baccbe4de028db47bca6e358186628adfe7a177140a34e6cf80fb0bb15670b8450d01c053d10ed62585bb4400e504746eafef4e1bd000a1ea76cd2b245ff992b5426e1e95fe9c682ed9dfab5749a3ddc4c2a18a0f6bf8780853783258fbb06bf22bb4a0234c373ed78afa0ca21e64187ff578737096cf67d143275e6fac03c3094c317000f32e3ace4199fc29da973dd27a5f5a31f4277c1ba700fedd131d78563248089e9c47cc128002eadb0e8440e50e8e692adceba898d12f6052ffb05fdc4cda76c38198cd0772c1080be83e22028709b0680859eb846fed39c039fe00e67f118caf4259471c5c61fd3bdfc6307881ab6d4a14346a3496f515a5d82da56bbafaa3ebf789929a76e63ab99821a939975b0a161c52eca8e61ec5c55fd9205c520486dfa1d50abb9949d63db5e6267084afda71d73898a568008910b81a0cc730f59e5516a9e6af18ac082a86b9a05bd79ee424516bdeb679501d3f3d0b0d0a668bb963e606de95b431931d79bfbd64aac77c58b776c168f4ea733c56344f5eb26dbbd86abc7a3b1c5adcff20e65f38e308c7322d25dd62b6af736c0e1f975b097f88fde859d1810016191ff51e86b1d7bbe63c95b4dec1cb61e8c1f3d3526c63b9dcd4c5375cff1d6d64a42ad76a72638146239e7919ca7c201c8305b7e471ee6a1253d3eff76a931707d6e4ea0648c74e75736407c4a25f94010f931e700815c4ab1a4a21581ea756f10ba53d8c4cda0c3613bf57f928f247fdb3799df68779b751a4811019e28c326d63cef5baa0ad20855655398db86b4b8da725be088a9a6ae97cc27b33b987d9062570ab1875fbba826d81b7d1bb4faca2f8d04edce881d24050ec6a71422fbfe2c272d977fb02a7155adb28ac74bdc8d717461298119765663622c7718ac8ef09b75f0f1c7fa233a1110d57aa0a0020ac170cea704d3e93b619115d47e1ab358d01dd5b0d4519553523c1aa9444b8896dc2cc68b337d781b41009ba400a4a23a7c2b0878c1afc4f9b4b0e9c75c1216eed3da47409ad93c4fec30ac0c6705249eaed03053812e650a80e28023b737f7c2dacc88bcd3dfba9c8fdd4cf1adb8499ddf0a18a20224ed0026cce55f9bf7ec3d8c521445fb14b00028225ff07d758d4d634c7592f877d15234dee7aad079bdd939f4feb875a33ff079cb90b6b51f9e1c1a69e6a02f3d643023ed823b2befd2ffeeb7975aca0b4458666e81787b278ba927522f777397818846d142719a33e039137c95b55f25e1c4ce3035c38195ae48d137779dc79e81e7a2cc60972329d72fcfe61a2515fde0e71f9956ce0c5dc72b3afadbe3e09f94f1d390b5bc613b9958f3f38ea98ecb0b5bc52101d99220d0fc78b3c27afc9cb2da241a7d4c287788140964c6b69cbfb7b4e510b3626eba49b5424c4f7fb801fb9f4167c96c9e5e36df63ee0e2e292e30118711b5a0500559b0d75d05c1be85286fe10d8e470f1944c181bf82f4d954e067cd6416f5319b1ac1556eb158d04b3d5025ba92696fe452e7fe9b204e609bd93c8068144549735d022f04aeeceb44db3935844af2a719d38e2510a71f2595981aa9c11e99e3230b099ea701c3f11f43412638c9a3b459611f6e205e5c6b2d0ac4ba2228e1371699bf3063dbbd0e9c83cea35186e8e08471116579bfe245e9e5fb8eb181e2684db83b8da8a929c40c5a15d362f45c6fd545da6a438806b8d5d9725b0b01ab50ef50b84b7f5379c4f40d3586bb5c99cbf5dea6b1b217381e10dcc36b7872962c54eb7233f60fa78d2d05b0345cccb4335b7bbe684f85722878d1206eb8f6bb9b282f202414193aa3487070d21aa9c4dba7e7903cec31709184fa0768c7c805ee3667cdd73c21ff4d937f39422805f481ad9c12dc41aa239073f5ce1f8116ebfd2b0da9817a03c36f12fb98d3907f3f1fafb6f7ecde65013c8ca7162bfda4d3358252ae56915427b4c4300cb46adc13d0c6891d4d5f6f8ceec323155625d9207200124d2b02c4d335b05c321093b3c601c163df876f236e4acad798d7740307d9db81ed1ca7f4774a458003b06ef6bf4430daf664a25f2bc3f0f2575e12f89ece68330c84a4d41782366ba11146238fb7a2aabb9e5433c149f2a02251dab665566f18afc8cdf5fac1a3f6e396d9b5b4ce118cbefd7df8bd031a4ace1bcae2d14c46adbef7f8d3faca15805264e45415646caca8b6a28a7bd50c4433bb16faa43c73b94cc7d0c9fe9c79734263c73b9d3f3c3eaa6a810dc9de1928ee0f89303fd171c7f016394a041a8a9ad683ddfb6325423a98661df042fff1fec358dbac33523cb5bac979ffed3d450a0243570e4f716248f369b94072374877b74955fabf3654eac989632f68c9870d10c02daafcd985bcba4f20aae63795e4c1ba5acd04d4ba9017c5a535662ce9e98671d17e99e441314b194a3e0375d820bee293bddd72cd4d4a2d69e5fda6ccbf63e56f82039ed0720b25a3ac98fc370c183f369d043fd67d32ba40a20c302bde8b71220d968c1be3729cecd0b2a5cbc422bc49038c60f50da2f9fb08825d40cecc311bd7af89dea5d917af005c33b2945c9d46c1c8ab483d07935c25cd0c692a4d14b0db67822bdf6685b548a670660a1a072393b7b345ee2f54f339186e86aabd819f096bd7ac1c68f8d427fe494e2736f9d0bdd9ec287d7c9173359884803cd0a536f832d7a64b17cf88ac9948f5560c33ce9f31d5bbe97d5c16b39b37179fe9e4453c57bfdc7795f9b352c3170f05884a94b9742dfa8aebe1a483025d631185c6603cc2ebefe426373c1bfd1291b5d6f95cfc7d64ebee5942648b974f05afb2c467d8fc59d51c4df74c2e032ef4db82bef6970bdc90528017198493e8324005008e13c4379a37e4a1a07ff7af70093900ca34876781a3ff69a97c808f6f86d390cabe69b2ffd78d3f126fd948a12f64989645857170d1a885f1a17fb5ff7f72f13538cac8b3fbd31d3d7e0e85426b1f1dbc290be56385da624d5d6bfb0737cf05485dfef3e94a5a851626383a12e6f9b51c470555e8caa122fbaad30941472c8470485ae74ca68d18d711efbccbbaff27aadc4e9a960a9158578d52cd9ac53746157e86fca522a3d53446b1843bb28d819496f9a4bbed4496b018c7ad7f6a518091eb9f16c08c874f60d6562726afdb2eed80219de298359cf8382fe31d0e31059cf0c319e7394649633b7dcf4f9547854dba1105354e40a4c50291b083268ed013cf58cb9a31c61559ba6d48c8374fc835115d4a9ffefa2c55b2b7355ed4eef64c7be8c429af25b4266b00b62696585123a705c5abb88cef5ace5fa0219f7c04817800e677876b5bcbb77c6207d3024e07a45db19ebf39eb8936f80bb3a69a83d53ef3e5971e72c3706479be48361dac52d333aec34c4759bd730d9018f34b7307fd4beeab89ff75ebeaff6e032ac5742ce46b87c1f4c023953c29a05a3b17b2d9f987be38a77e98e5e0d6adf5e525925208219bbe17accbbd81d2eff3df68a138a9fff80ea25c0e6f0b99b1cdb4d2c5bac1498d1fa166c1a391f265d80119552d0a621d7f6c82147ff1f718c1de21579de85cff527f8a59ecee78db449758e316c03bcd3f33ec80ab290e1684c8531d98a88bba80387dd6c6b18ed305fa9636ce7e32b53395c421688820a7f31b06c708d0e260c6e88e62c11804ddc0579f5540b7c50958b8bbdb9ac0e1b4487955afa6d2be596e41f58d5ea481b6404884b5f12496e7d777ef648cc73fd799ab218700429a228fcb4681b01af4889727672287cf09833ce8ee2885a5b071955b5e8194184a12b6111a4390dbbd6af8b3da726106bdb8c907693c774166a5e58935811dd7bbfe113f790c2877a57acd1242132ad36e22651265720d65e5c79be1a04cec2743de3efbb1245073ee78917f25f093f703096d5189fccb84ca0db0afa8ef3586213d6aab128131a1ac574d79a216472a461f0d98dce3a03e228d5f22f1f47ca47d476113eefdd5a02c10953632f1c287f74b1df03433b45dc637d8903a2f64a62867b9e753d6475dc39690f25345afdc8164b70f0b2aca06a5db2ad96aa86f9aaea4b88c65083637559fb39385f4d49b08bf3dc232d54305456c9410ca16e1428dedb0a8ca4e65a1e12ad0b24dc71232e6b949ff22f0933dea6f39612de2cdc4a0992edf0b07ffff90c65764ed32b407b9ce54e725a1cc54d8a598660b29db293736297160c6497ba1b8928384e0d4eda865d44daa2ab8e863b5e3e84e6f4fa1a41167a082834e11e95c8b728be03c03f09a8c275bf4d6f2b7ee60ff94cccf2e8a6ded9bf6f751f164726083e1d4a5f0174f30377779f69159ec9c5e883dc51166e597f8fe4d12d6aff8b2089f570517c5922c286846141a52ab87b439b9bdb75f394dc8364a0a989c91bdc50a32e5a150cbeab28ee06124c35e609cac55e0753eafa47e4e9e8642282c1400a474731944e7dc1c2a76cf3b98d42768eb014af4903e8e1e919801c4d121444da68195f9d8aaa17e78d9e881f8b4090bf1bdab005ea7f02bbeeda4a8f42d258dcea66741600d665408579838afe96ed81762f5f1af01ec2b567fab888f9af5cc73f5f61e2d4b8b23260d71ff8b86e31ffc3acd4de5ea74ea62ac4b91c57affebc616468dc9e4756e11e79a584bc7b95ffbfcca72d1fbc3e8b00707b86eb0de5c55c1be91f9747afb4ac19ee1b863a376555101ae8885f63555321655138665eec2b1168dfd2cfb99d6fab2eaf8ab5526d95c3ade0e3bae1b2a6d53c33e67efac49f57db814480abef5f7ef7357f7d2b3feae319404e9796e0da983ee83115b7d9dd5f280fd4ef21bc5fe56f85884c92427d00650862f9ca829c2e10c5b68d566ba6325d3e377f5f744f4ea54172f363c59368a51b1bfd4750bb8000e784d1ff3da245fd7fe98ec84a2e3152e1d33ccaed67c2c074ae0df2bf338e74438a32e9c7874be127e748134fa2b01c49dc2291ba19d07c3782513a6c18db6fb1c5c845043106c1d912e8db96b5456e9f76fda63dca8c4a270e22c2ef02b03f55e90a0fb1d55427a1ab579b561b980fbfa572ae033ef903c7ab6eb60915dc30644d0a691f2e4eab7f9cc3d46be83d8b5bad84e31f558e467c86e5632fef46738a892e0e72483efdd991b97b8b2ce123ad1a91180e1674b83693904cdadc3949af7a6cb481c45417779bf422a588fd62cdff5d501719664fc014487797f10eacbd7fd6f75c9a139087e0092c57f05ee35171e89e01778b327b3ced25d8444f204afabea4348f01b97c05e3dfac94f1fb96efd2465cb647df29ce290be85102b369231be301aa109343ac197596665136ea8f1abfd7f4802252eb2848484ca4179f85ce924367724a583a1bd5ef27c307f458b572e98bb11919fca189fd9e5aba095d29c6e8935b5858e1b73b5b7e1ffe83604a5ce669f3505f2b0dbff4dab3661997c1c2cfee6abb5f3537901e36829bec0298e8f398cd871b3fd6411188f93ec0461d19e1471825b0665c144b53f64a8e81ba86bf3a0f379a56bf51517dfa430870e69438eb64d9e3cdcb17fa6fad07cbdd52bd9280dd028dbb6f69cf9e073ff81ce0a55f8f5e1324b0557ed077e986a996bbcfa7e62f66916eb3f8684a7c7091eb311bd5cb447741fed4633c107d190aa9088891854e8240bdc2e0adf13973d9e0e7e696472fb4c6bf5e670cc8f2d67cbdb1c224b54dac48dba0c65948c263e9405eb563ee3f5c70b6caccaedfd639036f92f497e84f43d488ebfeb60d01f93225720290c706fe93487fde3f10820014a9ede14f7b2a2a4ca83b193e6b95a7c34869b7d62734793c123a4689b453c683f06447d6448676a93b57411f495ee948c48835c4150001e6e1064607c7451e536ead549db81744a11eaa416af5b23543b6591220e1364c3027c3b7508f10cddd23f2e8ae0ac0ca73a19baf751c499731fd0684e1991347e7c308b155550c64aabfe140e6f64d83997501fb8dc656282293588f9e805ce4ece02b2ce2b8052083504b5dc8a9928bb7d80d40d68b74bec6f930f72f97695832fac7c623331c2de2c449b22b53f80821d49bcc7f7653be2b4c8df1c20102eac6967139798a350fe7d826c56d0b23d0d4dde43b67af96a7510601bd112a36f834aeb9361c48a6fc36484bc805b25e217a69c5b239fc3b97d47ff09ef3030c5b3a2f80ab8c1257c1f9934ced21f890e24aeb47a1c309470d5f745d006ca1182ebf64f35f9ee2b8afb19f26eba7bcfcaaa8f7d94b476176f94ce983328b295165d830b48ccf00a1af7977cb47846acf7d9d1418df621af5a29f419b4e21c813a538ec9c50aae75f99bfdd6e560c0b6d8071038477e03ab8a5bbd7f62042772223e0a8124afd4cc2bda7a35d5dc73ca356ff2da07099298f48d75486a6700c237b1fdc7aea973ab72b2ec0e2934caf68fa0c50f58d1010fc53175e54750b602bfafa7eb668836735b911ef834faa4423b0dce742277038552034c2f740e29961491169b136cbfaee91469d724c89cc9d6d56fd7c057df7490d2837f2d0e61c5b474bf29ba9576303f5c1e016eb275cf525cb8c78307738e6311ccc1d10f45e5a0bd0132ebaa6b29089d98a0c8a42885a732a63e28deca60b05a3025ecad28c3561205e247065321a128a4e9d6ec7aeaaccafd2fd8b7cef76e572792bcfc3971b7503be9e70490ded8223630d81a8da63655797e17c2656760504509bafbbc200fb90df73f5e6ae6240cf58b9e418f832d27d7017ec204e39f22990caf3d9ee339ebcede18fa81b73bb56e6146139ec2759229ffe2853009de6067abace327417f60778fda67215f19f237d5ebfb7fca43e4d7b0f72d27c89e517c157a0d1c12cb74f0c2d45b145b1a29573987be8690d73efc7f2648417db201131f376727953a84641054f07c13161928f38a2617a969f9130ccd1eaf3a69148ff52df65cb6b286e9cc457e40aa58f775fa317dbedbda792e43937d7088924721141c2933f5017e641bec1164a2c63a3b2d200b3a67955c9c81bd44f30523340b56a6d960713b4dba9ac19af79ff86cfdcfbaea14eda490694ffc84e4740c1845e288ffb8428b3f6723e4ec9542e79684359e149b4e3540e08e0a978b49e81104faac2696b31cdec3616abcb103b5dbb2c756216b391305a6ae9019ae1a79dd72ff118f7d40a19fae84289a33df5fc4e3575f9c5d4034545943b7110c94f47f77b86fbbda63f026216f0010c14f336686c22e53f7fa761921a54b223d01c5d1c24cf2fa1dd3f2cc92438db0edbbb59eace34a21d09ee3c13b696f7272a40c37a2e5e83974a05cf828af4db7091c89a8ebfcc1d665676bc4e7ce988d4901531a13e6f3198964af01861877b50dd6c6a2f880cc9a9604149e90dc5e1acb069b7a9b162b4e60638e32d5f4a9e352d8245e63b6d9f7537aef817cfd883dbab832141e2366ffe6959489994a30873dc75a4f6f9a4002bfd76ec802b4e6495436d7a60dc2117f69d5537d92a6221977105b30962b73723855a7858b53707721d3a10fe1d944313831a44c822991bb434d6d8c91191437ed0571e34a2117533ddbf946466e566200722b0dc968c8df61d07e2fe0969ae3c6df8ff5a1a54f338b8f2d640f184df2d1769d0f075da88468187aed5ecfffad707666d1f81eb9fb7f5c01460b782a3f33707917fe0bc20f39f127fee0f66d3af74d867a9829289ae114282efee0c85278e5b765606605b29df0673a7315d2f27a0843f8fc6ddc69d52cdb27118a251f5f73c6bb837e3eb5e6bec58252b4c72df84f99abca05fdb0ad15d9e18ef677bde5302417b0f07a8adb810c7e7bcd6ee1c77c3aa27f4b2cd4cd0bd58724a318f12960e03a3ba3807a623ab655819afd3b49607526e80b7cb944d11862255981d6eed26c0d93255148cb5e5214e6c6b689b3ee487fa35de8f60ce336c99c375ddbb9b4e930a2f0642bc330da4aa5d6507a84d7905e00ae2f5d52fdf09bfea0cc121bb231b8f17bf8ae1d351a9975a3670ee9bff3afdad497bb826fd8d3514610301c66eb4867c7cb0dc72b3dc64cd9acf0817aad1a462a58cfd6fbad5fde5ef2061965e51780e5e886dea4b21e8b2415a0777ca86237aa31c66f399c74882293872d260e58b43998a0cc5e757167cfa6822a9d734d1a73d18b56fa50d78e51d2b63a45215b49c6295850adcda58299baca9f9a3cd9302e141b396b4b5498ffd54e55a4538741eaca4d9a8708cf24b4c75df0efa8fbb25fe8806debd34346184b322141fe1be65a034e678b6928f2d23eb0d82d8eb8ced9d336f5ca01eb61d933b8ae42dc3cdd2d8e408fec2b6930908387c09ffeea424b2971f914f6d6476c671c20c2aa8b771e625a9c15aa46575ccb49d3ca8cbc6a0d20e7201109bc2c29269dd9352ec4564ddb56f29fdb6d23d565c29a2c213107e0c709ecbc5db8debd914e7c914754b712a50ae7965c4ce078165f5753b9942026ec79f2e8986e6cbedb4788c3a683c8f7455687c103a4c3b6b45a5944ab0b4ef7f4b5173850e86d373b03285209b89644b49bcdfe80ebf66e9c31afa6843cda70888ea58e0d6c8fba6bc099f12c9fe7b39489bae3e6754ec096c82ba826bbc08e5376cb7815dddc1d465cbd16985cdc86b0bebe3dfb3769d01ce0371266c6ab86a42dc2f7698e6ca71690ff45fdde61fbcfa5d5e814839f92f2cedd221bbd8cf9da0c59b56230f122c77811b622e93ff9157026efa20d7b0eb3f6e5f80024026b0393d7abcbd2093e6dfd4d26df3c68d0623d12056772396059e78d90a05ca0f34d815c0f1ee53acb4155598022e32e369ad3cc4d32590dea5df77a03c0997b36a7bf1b1fe97f5f0cbf698d65591aaa97d5078c0b39ffcdb984e665ee7c68f10f397f8d32ec3353384e7196b1e08999a28b77d0758aff7dc4027e772919efcc16523902d7bcd377d1bb1840c48ab45fc9ea0213577e79c6ad026a5187358d5b24259552a0a028eebc649e7391eb04d2315bd95ebadc9110130f41c20a262d864422579c9091cdf1d23d21bbb3dfa11407cea7b44514474d04a0a6982b45e5b0a4dd2b2d3c9829df4e420df686927a563bc3d0ed3a9fd2a60a9533693095febd757fd45477bd6b1a5adfb0c1132ab9e3790b158f71045d986beb6cfcde8a4f81b025445b5d6ea1194a735981832ddb2d371c24eeb1c74d92314009f640eb037c92ad54a7c17cc2c49a8b857150cefcaf76258d4a7386cc3ec3a4213bc52b5dcb364064dea51dd9c07eefb4fa44bf1d011cff6ae3f08111e1c187f800d101ec5c03f2f6741b91ae4e4fb791c6656c2cc8bd1364676c5a570ad3a43daf7b231c71090557fc4f242242f62a16bcb51868b9df9d6b1faa9e006f32683637994c93c7240172a4cdaabab7f5f5d19e22b8cec1644ba8287ff8af8086d487f9b97c6b71099ab2cbfc4f3b72de34fd0c907d26341152435d4be15fd35fd30e370020795aba1905d7b2950f1d7b363dc145c9d4a75ee718bdc155f632ed0291d58c27c98d2f9a5b9d42bef68159c41d7ae180c1a8c0eed9c427de260e81d7898347bd3e5c79747bad5ffabfcb764e3b9a006e6af8e8ad8dd5662421085ed479a5cd9504b1156a85b0ebd358cf0933362bc2e2453ca87f74fb7b9572ede4256b60642ca426ae69439862d44a808085e1b1246f8cbc68810645776b61a988782a86b2076920e3a6ce6a16edc2e664a423930520081535c5c11e7f48b958aea189620d0bbad0757414329040b00817cc9a82a5f34d2146781f6369557971f4d86eba4f16cf52ec8727fe25d0fa875fc1246bc114c9b51bf168f5c8ff21c68721cad6ef8ad6c6f3fbacc956dfac94c635e81cc53b2d601d03eec90b2380f4ed5a04fc16ce105e4ab5d73d3a38698135623496306edd0fed7ea4276a51f7e1c91fea46bc583a75a579526e55c26accbb0a18f836786f6dcc000f7dac65b3095f3d583dfb581b43cf057fa606104261cfec2549e0e14f680185a0bf2d4e8cdd502f458bde0c3a835513b4c7c68bc91d6f85a9e2a5b359defdde326131c695ef7e59a754fa74fd983d40829b663956d0ef0798619637319fefc3394491973b28396adc186debda14678755aff1ca68781bafb0c8600289cb22ec47a48f468870e78115629b8e8015a75fa5704f12406a74e836dc5129477f57a74971f757bf5d982cfab6537217d3ad9e7c6029ef5c7989e887a1f33e0bfe4b7cc9096655347dbf38042ddfbee65ae6ca1bacba9584a47de7ff547325794060afcd78704b7961cdb7596911abcced7cdc79f5a8eb6618a1356deb40c6c8122df2299c636f207a912958f296201409ea4933c663dec254ad0fff48729f7af079fb6cfa5481cf50b42ab39e50b9da07517c0ebea86aac965cebdd75456153c88248e42612ce7e8a7be4e2694736b89939a290d766de6cb2adbaf36a650b2f9dd6b4161c019093c897dfa5108d82e367f7f997ead8417752b781265d259864150f2e680ace44b231272fdf790f07f31d3ce2bb05f537570d9943e76e636ccefd66e1dd2d1dc90871fb822aa8c38693c38a3e4c3648c2210acb91c3ba3519ded3bc35665f3303729ebc977d6591459d7b51ec060881f945844f03ecf18536160b3288b77d566f34d492364fcd3e19c91b6c28c1a85600e39355bc572d250ec2b1c35c3220a6e6bb4f81da08597e3fd6c80c98425ed61656caeabc148ef0fbb59ac72ec1a201719fb6466927e9e9df3223787040e857a19be8c1d94778f439cb9efe7d89b6b4b9d86fb7aec8d7ff4e81ef61d05bb771c0ba51e2b1b93315eb13b84ef5367149f0e30935ebdbe996ead7f318321bbe360d63e1029e9ded653f8118f851ac6991bccc30b4a0db2fa936689ba16f4b582bcb86fdd6aec54df27c33ea55004a2b9b7925e453e1ca81372fbd9c435fca243471cdb52f523dc4849791b2fad8634d7a43a7ac3f3c36e0d3149752eb2e87059da978c96719fac4e4a6f71566e2c916a3053e10e707b69869418662ad0db10d0012e1e5d2bc3e27d438d848b2e9e27435be10c2fed51f5b3bb38074063b978052fe8a0e91f79b2bc52b42b6fec75579073f7a94acca3d96b4d91d7d0ea2930c7278bc9ec156dbe8159f763cf9116333353e50e8ac05686339331fd4ca5decca250e76670ad5dded40526a14bf5fbabd29de4eab1321e83d89a53e1dec5fea3af76d6ce92d6454c785f7804109770bd1554fdbe7904669a2443f3bc5398e2c05ab0a32472822ad4a26a88da53951ec20f5ce61033d3a72f9eb1b6fe18a31b86e40482c76030ebf4eb6cc806e3580ebf3bcbb0ce8e3ef62ac4b8f690939aedfa453dd694154091d1c20dbe3895a82cffa6e79d20ebfe6493919119426bf4dc38acfb338c6acc19e9994a046b91e51078aab78e51b272a4ac1801215bac519e4f22dc02ce5ee4e694626ac5fe1c3478c409a200817fb3eec0701e2792b7cb302706474198864d00f2ed57c8875484394afbca646271a214b2a30ac778ca0559ef1bde75abaca0bcdd2b1bc1ef721b773077e3be577f11c6f8b8f6bd1e6f71af9014306de34c8b37a81a6f310dbba73c5e42570d0b49ab0baed77efb315a59cfa734350cb8fc246d823e56dd0c93cf0944845cbba823eeaccb5df3ab6f92583c0b0b73b1bcc76c955dd16d6e740c8200c66463bc6cea149f42f0cfb7636d839dfbca7b5965ef5c279ef45d159b364a5bab939d71bd0697ddc20d432b7b63060366f8a066f1893c947db5622f534e67d2e5ef86f5095377f1c000cec179af1ebcdb7e33e13877e5bd923544fdc31126eba0e9eedce969ea0844bac030448ab874cff16b1082b09bbf38121fa405ece531897ff320003b89aff561bccc123d5f17ec386c3a8a17d68f44d24a94ce0422b1a9280fc0f4783f38505e17bda53838bff35c735eaed48de2592702b54f0b8820391748aa72e0b3bfb9cf3c0c37a98e3bfa294220633263cc8d17321159b9fc6423b9a58f59088785313363afb9259066884b51fe605e8681bfae27794777aa2c9ddd0a7a7914a70c14d10b204ea9649940c310060d557fa58fba0d5181f361c1035ae0c6226cb1664578e583809d3a21329ef4ef5da21d2cdb9c58f815089ca08e3edb16d9a2eba9fd47c7bee55bb1b9288af11b3744f10e409865367d67c870f1bc24d90b35c8745692781bb2b08d3d66769b9a9d6380180e2c157e9dbe156c2548a3e75a87261f55dbcda8035b638a158e92119f7b4a0572d31047fb754950372b27520d03f506a29628e2b91f919c5b7d8cf21275bfa297d253fed6a17298fd2b6882cda539bec43ea51e0e75538b12229ddc37f0837f9a605626d0ed25917b0f17783d5d7b0a926ed6abb3887f25181a34fcfa713779c6fd23034be419e1f3a1fbb52b1c9ca56d1cc34596b926a6796195253e492e582d6120a1bbf3cc5fca2b757b917f0ef95021a97a42173d1efc2ee512e90ed27d865d42c76b8ddac5d8bb004b2af660d0043962b7cb275477a6dcc2181ebaf109174e0a4f173f8462723a21a7e9d487362530678798c4bc51f8650d3e97867e60c98557ed12810de71e081c5007a6b386923a8d0369e53d0ade8d0ac8b8e0e2c460dd282b6dbe2ed4a7d5a7601c7d99715993884da4025bdce7c882caa137806ea9015dc7c37cfdbb9265503b68ef2dab2cee03507ad9ba93cfde52aa275b407625ef54a82235dce96f7b7997fbb60f23265c4a64c04142eecb84de363e85802bd5e745ed2afba2d8e6c2a9ffa5c36a2b03c5761fb52822627c9bfb59b19094d758501e45ebc13eed4b69b7801cc46f58b447f3894fa96faaaa57c7c9d27c61de20000879e82d6dc34d73d976d27fb801b129b441f606ab0100ed5a1e0d6eb1cdee1b679c21d7fa2fbaea2dae036d64bdd54981a1f203e48bce89b54512a9f0dbf1896914f7019376b0cdfd1931bcf1078bf9e5a982c1b5367f80a03e590ad66a41df2427b9631eb3a7101f351226fa29d505b36c12817c5f5974f5a67935b744f10b0d5695c854dddee14b2780eef5b60f2d447cfda5e4eb9b5a480a1f6bb3116d160c9da3d4f7a18a134489ac60c74556ebb47873cb5a02a5293d8b6a9acc4af9c62722f79280b1b4cd6f107b99f0ca75461f5e1b534ab4d75518972684e86884894cd7b20b09104c63e14970311d3f37e5decdb740588b27f59813e198acfaed705198ce2d679fb02b3a535d1476e08d8335454b1974de641bcb474f42efb563303a246ce842ac4e218f1109d5f356dc1dacccb0c0fa19065a415c3be21bfa15ff6d9c51556efdd37ef775a9410bbc1917e5c6b25a587d8b6597b13f4133642214283ee1652986fa8bb02ea22403b82631f8cc89edffab362d53a1c9999e4295f509c3ded4dfd41df322b9d084b4aee0ee523b4a82838df28365cb390d74aaa6fc53a171affd1328fb5d911e2a899c4ae2170743295c8bfbcf8e77329aea500ac85717e4fa8f93c372c97bb76d05348e3947f7ae0f26b3589e05544bd8a7ce53f0184f8713521c401596f9df706e9752f300f123a8caecb38892278a1c746a081f4ab2b7d2605484f599b7d69c031e704e76306a2cfc0e13a4ecd41f4b49ebb7952dc813ad3af2d54e9c2a0ccb15281e0a3542c043f5a234981103078182f4d6513f0cbb92363ff013411cd32a6c9620694916a9ef73e78adba86fedcd2e41b47f647d18fde83c44bd9081491433282e6a019047bdc08c7285c83db93b1c2055353218593a2b4f5f8e7587a95639dd68ed011658bbbf759c92b719d64e5bd56c792e696c4725ec853ae087cd8bd9e2be957bcd2fe98c152e208c93cd35789f59975e8d5dabb42e7b0a96cdd862b583d09f53a4c6fb22af63a09e533b3afed83a905933b2de01199b085e6eb147dd8695fb448cb201ff7c759f3d25c2931f56344c5558f652d1d885d82efcf00d06a8021183e4451af17b76b71c8dbc04cc19c6773db1c3e6ff0d5827694d24eab51939f4b513c089ccd1dd787d9a56ee905d16ac3ab2f03ddfae9ca0ce8decf1aa62b0ccdbd3b351cd2b55045244e67f90ff95a2234e0564179aae19f1d5f439c4219331ab1a6890fd77a282cdf439143f5605d34102758dd9eb4c452355ed2923ed260c9131dc88f3608534dc5eb9e048dbc83d512e3c7638bfb9dae75344a2be34d82c53fa661e556f3a5bec6d45556044d6b41f0f8d44222ca109f44fc4a668563ebd3f73d9e6ec86e7d215b82b030bbc5b965277612fbd2450ab625fb34a0b9ab52dba7a32d8d29735e0c284cda42364c81f2e13e743a474113ca5508f3ce16d0444bc26cad0da743b84048003b4bdf2da98303d6fb04a944661e3cd6aa7fe95cd500de1ea512e6cb0a6a4c308404898e66427cd8153896864233db90fbe244b5b306a664995bedda7b0f0b3440523b0d82f6633ab8d8e654fe922da7d2dde99ce5907c0e0a7a9155d90de9775fbebb45e7940ffd31d00e369e31af26898d700496e48a0fc1e7e1373eafd485236ef48cf8015267b6ddcf76c4adaf0507aaf9d726ae0083ece6f74637fe2fc2d628b2e392145b933128ba4ff40f44181c9420aa6b3a179a13ca3d3952107e61780c26170e6565e40b705128df3d8918da167267dd71def7ebf0d8c44bf5e880aaeb03fe0a0543c8002a057ed488b6760e3e365893f43c83af99c1ec56ec44fc12b4600b94845a623e0024a67b9378c6fd5aed51259e579ffee22b4b5ca51308bed3a9484ba13a2d080a0f97c27398cd955be24097c741d6f1d7bdaf84fe359a358061fcae85a275fed4048f9561ad72cba488e7e44c9d725035b9b8a5a5aa5b2d6e945741815ee44b8172bc2bb799968b8431b8574eac898a432c649d76e7921adb10fa94a4a129d5471b096940e804327a27d9101345e5c8c8b5d339ad793290bcba4a14504323193122ca01f7485b3301277a9df44faa3f9c7daaf0e50876fdfbb05ba26309dd3a2a42987a901de793962e7c1f959e06e5bdb56e2e5ba19d31dff8e55be148e54f9f4a7fab48e27583010d6353a24fbd9728aec4dfffd24572a9638957e0683c71837fb2daa585f62d477a6e6311e2b5460402da19a28dce7ed6de041865b325493ded2358924e8b8a2268a23891256e90e496000885a71f0c9d35989e521c39753266d76c794d3aed0e41b657c592e087aef52166ae10bee4f044f3ed05c520fa17c017db543502a74bc25e8b882655a1effe46f9cd7d64156cea16b1265290ef965028b544c70451cdd879ab703f989ab3fc13fe872f3b7d62e8d7a7360d5a93b1aa4c573eabafa80ceb3c3b37232bd64f33e5351be2e50dd79827fb72fc706a84edeb0349ea006e284af5ad62570e100f0341e416e6fe8cc440425fc3262146a7936a6c13c520f8cc4f1bd411df051f3fca897feb53b39b70c4d897e47519ded782ec922b59e03930c1ccb1ff440d7b7976a981ff77b9baffb756cec24cf96d5f9f6f6c334f3a93c9f90366d41f5073db061df3022b96d7a70a4f21a2cf1206c90e3c2da39792363446a9d203cdacea7add8b57a2716b64cb683ece055866f0f661183ca4430753d771ea8dda0ca32092f49af3a9fdabc2b5aa532d31b6cf604b56db5e9060c472d9f2310d8b087018c08e02017c4d91679bb4091564504b3baab1449f1c3de8f3951d6c4b3085a2d8a92303a6e0f08c49d3fd488152993e8215893b5cf898e065b522859ff84386b00f884ed09d4cffbaebad3340a4e46bdc49fe575e8b79eac8552a629365b3707556f82a72f3aecdcd0c8688467025a90b2883939789f486af7753af025c71ef15fc34a2d3be055c2239b2e8cba44a65435cf77b038f395eced7d31c24b516aa2134885edbd850009b9d0fc8f45517f941d088b729a807b42a10defcb7595a29e067cd110dd5f063d3dde62d31326ab890ddec5e84b9d9cf47f241f5df907d88169c131fbb7c481f970f79501e126ad38a4c16328a5cd0e0db8e4a90551fed1a771e997fca09657f6ec7a7cfd3509c9cc09be78164aca56af9d89b257df92b43537866ef66ca8a16f9bbe4cedaf0704d0b5b7bbe923fc27e107bd8c277deae576e75f6bf284b9bf83cad88bc3a22c9f73d8d4a2eed92bdb2f03c5801cb841406c813ede53d3d5bdd286dc437d734e2e3d0abcbc8e3c18fc1b92181307e8bf56aba89d2a7b505afbbf04fdbb5026414bcf3deb5330d3add7e68ccd49482339b7062bf69a9c7fc080410f778784ba2f58a4ecf9dff295becfc786a31b700f2953bdee83899efa0e69cdc54a42ff4047c88899168b467e0e3195c33f9a5cb70c35620562477cb08bfdc66eb25cc16b4309b37a43f968a451a4f882c61c610fe1b737f8d7e88be7e371649965abcb550deb22ca2be5b6573dea017f1e9a47f4a77db3de17a78f549a57c1fda14a66540a5d45d324c1bdf1376c1e25dc68428ba86a22636de468167e203efee8feb562207367856920d33d634dd73d78a02544f4d4e391353eaaf74d0f94e736ff25172a3c43257512b473a76e14f614a5861ed2d1239a7006188978a8125c573d25090f740855dc298da27de0b29ba3d91ea2f4f3eb10d2b817c9bc25c9424826bb6c665f18637b662d2a38fd2b8cf021350565dc5e2045e1d698262f2d3df784f9dd33b62350f6fa2f51ab7f059fe7b631287a3d0ac7ccd97613fc4d0dd688d033ce4ed89be0b7b109a17a5208634e1bc739aa06097a54e9f6e7a29f303df85e18506ae45a035700663e1d73e18bcbaea846b75d97afa0b69c75500db0925f748d6e2d28532de5d12210141897b2650a65edfc0954c40c5bf24262d54792c774b3db28d36f712fb56abd37e1e956f2c46cea999b79590f5a78043c1e638d5b2ce4ec3a50a223c7c0f1437f56cef935b684003f4b2b46ff773d766042ff00c83487a859bac1028b0e466375b286a706d3b1ffbb510de98b55b315811dfa9ecd1e5651045628310ba3d9fd94f67b9b622dc31b7b55828bc6ab33ae9dc57ca296245c0b2d1f70553fd9d63cf396ee7756754a02c8e7e4672a19b89a8b4b57f2bc002df41d5f2b85ee21aadc5d4fc10b24e405379cbbab6d673b082a15cca3b650f7e34f1cdd1aa8dcdec119fd5b807fab62a00f0e3b6eac4afdb28babd816395d9a987600d6e65c10790050f99690db24f29ca4ad13d28b5e9627a8d506f19c1950994d01b6090e447941c5b4e956bacd74261dd8786b3e90ce6bc0d911e573adba13902f7cc8339754cd4b0c4e33835f5a40ab0cfc2f9259fd8e3982d5f5f8b697ee0448008fd38d487ee63324cab1dc0b54f4a13b43342abd116dc0482f35aa91ff0f0980e3f009b66f15ad5a8660b750d9d14041a8bb42a17c75a2eb733409872af453eb56c1c74f230665b666a437624e9f5f5aee7bb57856f581bb021458e21d7b31c987bedb9ce1d7d8b1708ebf98c0417923c6115685dca5d855e839c95150256a5c70d5e2a5fd91fdba926dac80ad11abcf776056764bae236a3ad101af9c895a07c590e0b7a72a7acadca20778525e9a345cfea5edea6a6df64e9455b504e655b16a50ef89aece5992cf689870db57cd6d62a7d55999ccd6268a76e253a0390318fd36a2d97769dd1e3a34c66548a69e7bf7eaaa54dfe0685ec6f72f02f3f22b579582addc4e2f4e6e6d3b075e7135c76cac1ff819ec0d88936e5d0aefa97f6f63e4277cd1810b135fe565b442b008500ec1682463d5825ce8c9507d5e654b0ef5eb436bfe980737d6a55988e08f978421a7afeb71922318f6927173880caa4455ce7386f22bcf75d1a7b825bb6a60d78d8c4e78e9c14c31c31857887bd44115bcb985f73904e798b17e4a9d960eba1157214ea17e986750169f5fa7d224e855167a074e52730e72a863f2575d3893d619a8e973e6e93b200a9ea7c2418bb106b52a82b3e43d9c50ae15eadc08dca9f5c87b50ea15ac8f34c3367d0a8771576735307b3804b53b96c63b29ba26953b8b199d4fa59d4aa693cb8945ed663e4e05e0bb3f1b532f0400633a9db37fd56756006a0f67cd7616e8a33c992d1d9ba84d9c0461ab100f5f0a3f0a1be8326b8b29b69086bddfa53eaded7c1fd6c2a106605c9951ddbebfa89297922f35a48b97684b56f03901dee0a63d0bda52ec922766bb8f874285895832440dae8a4a7ebb8487da00f84201bc48f9aea6294144875ac181d0d1ce94a3ac1782c1b935c5d5fc12536764b8a5be697603ff15dd388f3b68a42d4b2c3d6cc157f29ff9d7df158a18ee04c419cf84a74ef865b6fb14a85a961f68498cb9502f7d53e7756c8ad70ed48ae67f56e4cbfb7fb77acfbd7c6c03aba5527ac55da4423add75b9bbeef2e82e82a87dc3d3cfb33769a0ac10cfce1cfebd854398c6df9b974b0ea8916eda3f6d1ab6b92631724db80dd865a5d18044c2acc3f6baf1d118c96ba1ccc58964ef97063c6a59e6b4dbbbd9e2ae1f44d51ee22a63c8fb459bfd4a688d12a0dafa39c3997b802a8c2e46df74a812203a3a0922d84ef5f79d60d842ab8080b2c482988d4103b67782ca3351224a03b28c83141c041286dd8d92d3d9a60295ceb5f175686bc44f9f116601d8fd4c3c4f5f81299814dc26fba0c0a5f7e1c9feaf2f6ca39cefb78304b270488a1978951093844238fe55173e313bbfdecd1e71ba3a7cce20c7e650ef5192b54375772f1acf45582aba7bc6f0823e3f31e2ee4a5e874d2f332a33bdaa3f3d1cdb624b72cea6a9518531d3e33d1f268a43d88df3ace28026b65b070d1b340511b5eb92dd0f5c721c4bd85734c3bc0dfc6a77b15694724e86b0736a509a746316d40e7b0d2299b42e9fd99d5abd1fed95cc63d901e1b430cc8926a593d88041629db01c9c9508db4b4178e42de72be4812f84b6298d5be4157e9b253bbf6605a49dd3425987539e45515216683a2d2cdc4767371a4d629e79d5507708c5171056da19506efc5ac22666884318e9b71a8d69816d0adc44af88725e4097dbfbad7ec225c068313e025b5c8d0f80562bda5526029f7d5fabb3904172fff014299bbf882a1869c109e44f41b91b847ecbf764bddc48ea62c1ccf25a13824f4d6397a517200a5e06c44272d724de9a3893a16b30bacdcdd0f541cc927005d168c316234718dfd7b4fd0449f6e1884ae18638e2808526c3f2b5f7c5b2871119911710ef3185cc3163473036f73e76462ade5a499eaf043d4496c5f922d794600965c5c10d012d3aa0fe2847e369717442944bb9b40e520c59cab3c7a69e1c7983ffbfb7c1e65e6b75628832279cc5d5341b4c6052ef249e94edc9b629eac212d7344fe72baa420464762a56af579dc90de2e9f9d72f595eb85e1e0d02ebabc9117874fcc94ea48e3cb3a76f1c631f3166c8078f84ef83b5248a2f6e4db8f74c02ba213a5b2f5e68aa92dc15b93d5976b1d9b57ebc91b569f119d0335b59b951728e84d2d933bf101aa5de246f94aad06cf2cdb51fbefa0ed4935b373ebd90e9f9c6b018365dbc879e7ea010c371b9cd8cd43f6688f4cf21408a58bd80028075672e52f0f45ddd916084ab185cd39e271973f8b8586eb56a4a8232cde06dd27ac08714ef4c86ea3d6d3b1026cda8bcec6ac7a60c92c6c530723f3dfac74736ec49a6824860b62e09c8fd2601e166a3baa47d2467a2d59de2bcf93808cd395157636b7aa49c0cab020c18903c523391d544c1fb655e314a65a3e1d302050a799cab32d5ec677f7109dda03500b93f5cc50f2eb76f62d50729084e71f613eb34b4c6692d85509fa1e86e98c404575f77b692a0568569c23a6b836f7933af72e7b459ce26c7302d0714ac26532c2deb0c2441977169f01b8d6181ac808a4e1a263beb8f2df9040f1759b1f47c3df9e4759de7dfa6aa83df89de85196f29610c5c7f61c818219085296ff776cc3c199bcd5bc3475e26e218947c30cd691497441dd03f18d9e76ec36cd4e84c460dcc113be8d922a1b0f0f7e2623c7dfc9ffeb53eb7aba0fea2ee7851b5a8c024077d8cdfb610c6d80beb6e68c76004aad65c32b5faefa57475d9697dd048ee591991cb3414a5df723c19b3d426585aa771d192bb84986930cc18a2a04631a01371b6bfe80c16768fa136f2224e485099649a0c3da4a66bb620d5ca6b821d0a282f890870a7af6fabf9edaa248d521f30e3cf8f71464e494e872ce02bf34eabc306429c66482a650ef00831fc6bacd5cc6dcec1c05272b49e28ae763f9271324067d10ef0f88ade6038db38c95f790e7d86b10cadf93a1f71bde785d7df9adf951aeedf0be3c18ebf5f7d43a7fb3bb43771a2d434250a9537bcea74d98527316927c917794b6437b6ce12230094fea4ed40d1c91f808ece8012bb33c5682e93a85d7a39730d3a54c772da3683c8a531eca87db245fd3db6485b79d2e0f2ab23986d7a55f68aa90935d4aa371ab31dc895e4cc196f91835295a5767a14418335f61abd29926776ae58eb53251457c6e4895bfc7d9367609820792f0745c441df4c07b5c3f7a505b616b3c38365a6425d1d62c36c9727773328c7b4ef31aa1345652d76ccb2a3569ec73539f88f3bbc31f82b2b99b77291129836a817a9783d34685b782c4b07156cee6549805a83c32d331c08b6b82591426c24244001ec4d451569a6c802afc4a2ca1158188f2863b0bf206f1a5bc8a209692910ba04f4ae8ff144f817380834b4ea3e49a932e5b00bdba3702a6992bc52c9f97e948d5d32f81b29c70596d4bf40fadbf7d64ce15d9ad678912addf27ab419a0aff17b6432636b62bc7e29385f33022303b584977d98129f52b44a7395a1632c276604c2495fd95f6cdbd83230ffe01af104d5b1216eb7dd50c6ace3557611dc6978bd1738a24b53db18a8351d4e469ece1b105aaf75e0c398127f71cde0350406d74335851f1b64b9bb836024228dc17c5fcb5be37f50b912dd2c8e27f591ecfe10416578be5259863c9fccc551c9e31de3cfa6c7ab7ce62dffa6826ed1363b8cca185c16a97a086eb92e375935ca9327a5fd74a297b40d782a8aa2898cc6fc994af1300b2c4c24e314222c1702761f255783f186313e2aa6c3ddd83be2151f6acf28da9e82de73deca9032a531edbdc750896e1c319fc345c3660f52f6df0d3a93352c2de2af71e3d57c272a5dbcda6ec967d7cffc24212d8aa1bd86b10e8619255360e6b97d3faf560e47ec1bf8acaf99bf82e93625aa479e7b14c6cf7d7dfdc2c89b413860057583352780879ce229bef10c7b88d4826d29fda2f549b4421f12c288a4df8d6726c06949ab212fcc7b62d7351744ad15af1b9137397d63f9ebfe3d0d90838c694116c1ad9c2e550da0ee59f03b32abe30c65fdc3c8dd4bbbf58dc25bab2b9e10a8e48144efb48cbcea8dbcdc892570abe2de16f4891b0107c5d2491275f96e4641a7486b1b9d8f0d5d0e286fdab0e078eb67eb3a66576cc29c18450b6dcaae240a822ddaee0ebe1644384ec7c22031de32999ae44426b33937078c80fcb9ff366318a5bb8d8a653a5988349ba5032112bee79f2fe2fc95613b6cb10ad5febd005aad23b86b6df43da98cd2d960cb13ad03275d236d1c6b603352b41db56ac26658f90ca666947e81434d8793e4dc3b35a69c01c1db7a93e37e91c16a179e2f03a8ef7b3e5ae5707e20f51295d09f2f7c074efead7e0e937fe52d52a780c3ed2cec80998d28f40397bc368108457ace75b58ff15419f1921677e6676d0e9dc61860fc98ee0b2717d4fa01d530f2caede720f64ee411881e68b608fe95fa123d684a1848916b3f4c1297a5e01600c4db07bb6f84ccfc252fd8840731d9c03b8e23878213e95c6a32acff75df306a78544d88380c1f5824fce6e717ee757cc1c92b88e5a895f8194854584e780bc979cff57d4adf14745b4104da1a2173e618e56145f2aa25dfe82431cba0f61a906998a437c20b8ad22e42a965b494333211956be382f75e346518fdf0f174719cd3e2e1bcd70404f5cfb353efdff5f28517b165e94b40a8bc3a88b61969ef7072ce2c45da66742288b1851828f6a27c30377415b7381818e779e3e7966e39d3550de80b2d1bea3b9974001fe9932c897cc9710858ba79f5504c9c1f98a8047d305fc845cf6171283b1e7d84ea058edbdd78e71b438d4a226d47ea2505984be847120ac2b3b011b2dd59d03105ffa1d3bbe78355a39f68ee867e049a48545e11bb47bd7ea853b75f3df99c3200a45272f8c3c0325ef5b245b0b81723cef7166a6caa669f195c7e0b005d89878d776997c4246671d9db344c28bf84b3f1b44c7103eec305e6cf00496afd623ebc924da4ab8cee1f4972c35365bcc8b3456f9999d22e13622d1ab86355a721360f78c056528e564b8a537f1ea6912d45ea5b961c389bf09192cece052e6e8c9a356da41c87595629b664d5546783b597d556be5b3b30a40f922eebe42d6e949501ae835359ddd54686599274498a38c88dac06badb63485e3fdba1a24b2b4ec3c5954fc29c462765c1ded8870b93525d226aa93bae429d01bb5b7492eb472be98e85a1b27fce8b48b9d6f3d1e89f1baca198bda998f72c2fdfd82256d25ac8a80b0c49571b26485b9c6d9c381362c92a3106273bd2f21bac8763bbe986a55534d546313e496f6e5ce187cbeca37af72aac734707062faf463b8e423286598f304f24be649b191e6c9154f18b37716a854680fa3e9910e627013e3fd2a51acc3bc606f4223b340b45864a5af4e79d06287b6ffbf21657bf2e94c6518f670ee6cd56c7df282496622c4454bd42273fff56d1e664341482113f1c716da9fe1d1e29f8e7935f300c0825c44fc37f4a5f3a01d6f4d3cbe46c978b1b1fc72914066a71de2e77196b251b3f71ea19ab9f1b278dc1d0f6fbc975f11f7a5fe6270ab4841ee1fd6bc6ad77601341abb9de3a45abffa244bd9f027877a40caf74b67206e9739443acb1144a803d99a8ff53eda6ed5901a3538126e1ca7bd4d038f03f4230dae66af4807aaeab077c422c0e1af6af9ff8b6cb7293ef5f496dd4d3db5047e2b1c5063d869ad4c95f2e0310b7435b669fd7c0d3ad980adadc405f6ab93e931a65510f96a72afcf926c6614e2a5999f7d73ebf3f506c9aee30768f6a739a4c84bccb10d29e4bd3bd4d2aa99bf32acb57546ef51532a8af7b85a617f3caa96b3f0d5a67f9812ab11769a62c08553724767d36f896f177a11e3fff27e95082de6709352831b269018b5fb8ddae216d595df815c43ba74fa6b38dfd897c9e8defdcb6c2501f3d37098163b89f6fae5e342019a6c9deb71fbe91adc567ce9e19b1426c13b6417ace700b3582f4b48466abe9f430ff71fa983273afe2c71c4eefe5d321c966f108946f021192b3df2a3e1979e51a7ae389c3cd7c590f2198a07653c559f57d3d899490656aa4076b78bc3c701c2b1a166c22badd1ba590c0ea0b01d24c9fec5732d288e90abec90ff8a2b13507e11666f611de48ce943232a3cfa46f18e8e21d777056776b09a8ae8e76ec2fe32145e19f399005905028dd1cb1b35381dcdde55b362c97164b6fc0699bc0ca541d3dd0a29e2caa1f5eaba72c88e809286b16f7d6dd42de065d0771a82a2ecdf509c84f5381b63b45729a1fb2d4596daedba285202ecc045ca3519cfde897d582b8bd1707ee42c4de9b9d605adcc6286636905bb79787633449a76983535f20226939fa6cf69c84468dc55786bc96070d955534ba292507076486897a585172aae41c7684c85f9ddaa600346009272be63c35935ba92c7447186a55675d0d03b093aad6e690dbcf0af9141d2d16c74a229d0760e4704faa3f1746be30c1ed313a97ea1d55f0aed22e7a5c5583f325569142c7d13a53ff215afbebe2783b174fa35fab74b48dd73b525638d23d670731207dfa685e9e999e36d9ece6fbe1f2eb39afcc7e6b6d6a09c1fc1d3b9e41841a4aa8d6dee222b1a74443083fb595ffb35a651ea4f2dbb0aa59779ec451b0a1186df50b2d242021de6879bfce9d3b7cbc80cca5752b6ccc82106afd1299118c0d156f4ed8afe3a1e62d23d944492c830f653dcce51813d1cfeb783d504f2abca652f6bb35cdac785f5778e5c30cb3a77a67c0aec7f379fcd20bd859b541f6bec204715823b03d2e34050f7078e617db7ebf7103d59499052d2ff6990b06c50bfb1828ba0870e913e937af36c8d26ecf39e264b9a1bb360c44238f7b9c59393f497da8b9060944918f5b966dacd2c2586136368e5e1578ce68fb31e33f12f5397275f96fc46b00100c6ec7b1b366e3c1440de71e0a5fda5cfcf3b93433e31cf4cd5b208efa7c6840e5509d799afa0c0318d16312effa6e6b8946e87165d232de7f64e1ba47b8d673ab0257ee8de4181454ef9b84413d123477a6058681a6b894d32dcdb456646314e031731b61485a29e3087370d7fae7d85fe0f946cd31bf51c96bd63255b64d291b674874516a0b84e6816ec4ab2db00d380f835999d6ccf19e7bac7f5ef62e62250b69b08d8db71f70c6c6c07ace4754ed25e3790158510ca47b72c44aae3c0afc0bdb323ed6a1ba658d005c8698c4f4d2622a1a2357f150029b8a37b0120fa0a55e77c593d4bc94d5f59e050692eb6a7bc19585771ffc2e348e27785c2d0b03554a4a21b97c1feb7b40c157e5482487deadff2d97417caaa01507758a9affce2c4521629fdeaec204826b7f25a76ddf80d3661db6da1f5fffc7217d193e1241a7214c79c5196e1e92c4c3b9c4838e72c020e74e31e3dfee7eeb642f2351f6bbf8507b3fcf1b623364b4c04d3a47563f6c180ea8f1dd7891bcdbb65ecd0b65310a4b2643baa426f5ccf4bcb4078b48cfe6e91094e35e032a4e4fb3900b7b23aa99543134f3e123c92ab0a0755acfaa1b4e036b9c9f9978cb360ab88160419b4c5d63f17a73505e48aff957e3812744fb90883fb76b6b365ae5eddfd0c00bcab9e122bf200e62edf4c7f84f3d818688be960e65839d5fe94c5df57c53a6a72ecfc20b51aba770dab5cbc8ef1ea873054803143095249628de917b436c7dd88cb97f111463a751ad6a959d00430b6c0225773567cc6aefbf604160152bd27dc648d8395fc0a0163d4cd13eda342ad3fa3392ddfbd84f74f5576268976be2c46dfb1d295b089be462e0fbb30af4fc3624555540cc115398122cbc1bed86d5aafb064c54411d82ae07c658d9817becd3edad6f1438011060b56f4cf6eccab49a6dedcb53bb1bb85c43ef29d3eedf13ec532ffec3ab6b469ada51838cf284e319f6823a55102f3690b4b9eda9c63a3a5f2997f2de58c2e63195819412d5429afab229935f2e649b72e0deaf6fe97acb8bbb3a822e445a6d232218f92307e80b92bfced41dbdb547731bc9e9cd4260b5d3d601612a3aba92c3dc0507e6c9a57fc640d7ac30c972d1168d60afe6677ff9c2925fcb0d7935bc678443865fcc24a9b2af91fa579bddb59cea1172ffe3ad993f0d46a1a7f4966577f6413af83f65d918c4b6c520b4b3318a9e6c5d467a61507fb29330951bc99b20326c464144b0d8c7289d82555c37a9fdc2eb90fbb0cce18a763667eacf940a53b681b4d93b80f35b38095b36f94a49dcdb77f7cda9f6be87bdc8169b40cfb9e6fe9b0934db7781355115665ba47fdfb3adb4214f2d5bbb222fd382ffeeff55cb96152060990f1f24b1505e5fb4087d7e913e4bebb0bd000a67ae67999e700276b150dd7878bd5834234f383d9ee47fd5d9cd67120a3dd0ba6a8f11605d45e6904fc925787819dcec7a9e77140135a2b3b782d90401975a9c67ee9027287a4ae41101f5f3239612c2cd74bb5b2e31af0e13d2bf98acec485520950b9b81e1d2505f068480790937520b05df6c4123e6a80b0f4e588ebc155141c7ec4b5f151b790cd0eb50ae517a32dd2a0d114dc69a9c3da690979a77094d8345170bdca2f34a65b98c3d79d23b9064392e229bac2bb530a718b69d32ad685ae39b01fde78f14f66cfad6b7eb1c839a75062f28b5c1b412102f00168f8749528f9407cd1ec021596caa4bf3957d5eb4fc22473fd6818f3a58bd3526ad15518a1f4316f0699318710dcb9c91dafb26f96c094a6d76fbd4c20031f7be22a665bf5edebdde1987913afda4c80bcbbd16686c1b5808e5f31413966cfebfab97c04bded810f5bb4e6d3cd2f3cfb40e9a595642b9158f30c6857a39d7e8feb3e510d2729fb1cd839b208d86f489f0252deb9c6f6b288f4653acbcc3ab5239f5e32ee75b7848e08d1f6643af8d02a019aa66c94f263a685a5dc8770156fc1cd53dc1d034d32e047adf6f0b5656df373aadc8fe2ab74ab9e4adc24fc92068731458c18e11749831233d444f81297a9fd6b21d4697e7172f5645562184c27f279c1b509d28264a76b95783f26dc12f77668f7fb154fd1259a17bf0f59356bd1692ba16117311fc6a2659247112d5b714d0cf66c41043015147b7bd4913031652cc8bc2be0b10b4e425286c0e943b71a3258f1c84172f58c3e6b64636f73b0d3a2fb36a4bbe6411225388c5cc5cc2e1662aeb1949b02453f1e6f5144229e52d9b70829d0ab0b8e90e0810f5ba551381e8a178554297ab64d053df0b16a4e303cf95767bd975986dd74590d607ed2fc7b1a44caf361f4a2133361baadea5ad4455e918821667001becdc3116d69f8606b573ee4c8a41121d4b0d70b881aada0b9fc0c70546b3f3f8477563cdad751169f0f077a81264b92e2998bdac42670243f3796ed3c4c4c7f8949dc627e171c2d5c48a694bb6b185711adcca82fb80108e4fbf81f355e40b3bf629707637de0c812248287786e1db2b601a6b736921027aa0733402e492dea2ab23cce9f1495a5e18bdd8cf0f483d0eba1b2e1dca874f2a911fb53dc20402fc46aa5ec67507bd62fd4500ce6bf8fb2e28eb517276ad9dde36b5801a404f460ff29493dd5f603e4beaa024ee0ae7df2a736decab52f0655bbaffd651efdc0727010faade5d5e061749b7fa2db528a2638cf848c4ff437dc2761ba6abf2888ae454cb43221220b781fcad906d9ef02a3c464026ac0c58e1c0d101894a606c7b5de12564be2fa3449b2df846e11d455a353c756f46d2bcd2ad792a593693115330c1a0dad99f2b703385c169959f24952125f30da746a063bbb53d88ee7fae86699f315944e850533d79583ff474101f3b1874a9826a10acca1f5187cb251318e0a83de2fdbb536ffd003c2bacc1b6ee410b026659c035528f7d0df10248bf2eab7967cca03e2eb4822cd9445c846e1e6cc29e4773a285ba7a55a872f6acb0579a05dc50322431fa1e48cc2fafb7d0fd25f7749b62ba83d34a75b13ffe3c6df61f0c54260ae5dd27ae12edac2b409c3572cad418e30272f535a4e096c9a87ae42987382d8fcaa83cc92e9093956f20c40b82f6f27c8c3bafe5bdc98b657200f2c6e2c521ed11a7d5896bb3882a9c28550385a7070e339058835ef9b0be254c3e623a692d76db64c23b90c19ac222c8313c4443abd1a59f044ca5a788ceebdb3b7c48d1e23dff1386ea026e0733dc72f12d8e3db0801577b5a22bcb16998f2c1ced3221e3fc856b46a015800da8c7f1c61381ca72d9ce52a76a19409d6bf14433f12923d158e407bdc8b5b3b8a727a5370ef19f4694feb1975b8128f5547db2dd3fccc6c8f40d7dbb87f3ebc281d59a143c2e052756d16d30bf47ae05f4c6e49072f10dbc20d7797e09d4c7aa9c9f915822f62a0e277b73ae07d41b68cb0724727598cfff09a392f6d106f884677644f456011b9b4837996fcecc99adb35dfa700925509b3400a262348625d38f78b8850426cc7270c77045ab79ebeaed03de6d5cb396706843ad62ba8fd09e209967cf6e414cd8382fafe290840d0c1aff4f8fcca4d71ab303f3416bdf5278d332ff863dd069e34d27e06dd6d25fa67efa73506d88ca45885f1da3e472115b1197b8b339cecd29c6a1ddcc389b373df0ae1d1857849cf58dd421597fe795f6aa46a1f306a5440dc41d40d425e3f89c5ba385580e1c57a0a3ad10b39386c8c26e79d1915355e33bab207612a4d2acd2257bd993a834e2a326cafa2ec42b629f806fe31819679d99c2449984c5d4449b909910fb678ae9e5ca596dc3e85bac5c1f3febb225758a10110ad746947c1e9c8242990c877ba226264f194a059532a306f32eac67ac435087ab73545c3723e1e7e454d28919c9efc061e541720c66c1d42a5333226dc4c2fff8b3eafa27d35fc9f673caf2724976cd2fd15a5bebd628bd8feba0294d463e742028600ffcd21dee73cbfed317f1375008da835739fd8d04245b934786c7c364cbfac3c59caf4352f1130f24fc0aa00c7f82b6fb5a72a191f153f52cb66f352b77c525ca3564ae013dfc21a9e95f4a402a30f06db0a5723a8fb9141afb1b12e5297aad4dcf88cbc3d4fb0cd6bf7ad59c179aa67ac3f5cb9fff65f5481fd1b9d45deb1b2b084ccb0ca67d94346caba31b74bb327782ce8e277b4c871e0b859bc3aa5bf4b42e8f009ab0263459f77dd876bc801197c40222a06d8913259784b63c1a5d9e67d20a6a14112daecf2ac685b0617339aa3d467468efd73915a4ed23b63ff5d51516c0ba7b07c5781df4577a9fac4bbb98d730932ba5f9910de8a20a0a205e6ce7369ff8d00c053abe34c6441ffe8d473e1242a4e282105d17d632437a28db2951747d33245a34ad2aedb402331df28a0c038ad69891d91c70b7aa7386c3910e64788f6d3e1a54a7481b51a3f2ac8cf93ae79ce1b6d9f44321dc1e744c45866680e3328ad166bbb5ec2f84d34fd8f757c6b2237733e130f7369e828cf3339367905416ad2c6a65942a51aa37f6a8a000f500dcfb9d799df01dce5d04e1f3d268c9e5e03f2404737ceb67d40405794c3969df5ded7b462a4e6473e582a013b85cb42a72df9187069452327c1514e83e47dfc7f77d044571e00083ccb5b18f687afa32e3082667f7e8725e5943cc0751a0d4d4c70bc9bae8f4216b224c1b0be98d9c4b9b824106e85f02b0d4fda7619a65a9f7472a383058945f2f69967855667e1004ce8959a68ed2f7d22e565300bc6308d912de9727657b034bd56bad800e2ca7a3df55ef894157286bfa28cdb79818dff4f89802075df868ce3b2c4a1927528b8399471648b357cbf55e283f8d7b017db63512e5255edb31613e4ecce776542a826e72d6c1360c0b7f390704e0ac1f77a514f8b07f92b75953476678d72d8f1e271dd372bb6d43b94197ea54250ad2108c591484491d9944bb11cf58ff52e757cfcb825f1a43ba987aa10cd1fb1d83c3c72e77a5abc0230942fee64c895699ebd04be2171c8cc5de9744ab23ec90947603accd66f9e46d5b27f5d449bc1eaf7b0aeba9f70cdb9596e44b5bd3beb6aa821a221f5f8b2a51090bd0fbecc208ef6515db786d57faf2412c630beb8785f6d559a43bc555d8490b96f968531a95bab7becd3dbef61598e465a4ce84185858acd400870e531b2353291d2b37c9b29949cf93279e79b7fc4b0635aa35d635ae5cd5d7971497bff318c6557aa2be9117dcdea0892f4448c73e009244b0b71d7dd7b2061b3dcbba7b4c78c115e39095285e0c251aa795059b072cc88c62cae8d0f086a5ebe390c4033bcf9025ed437099ce2077111fc3e4bbb1a1575de3aa187fd2cdd828c846ec7d37c65561d71df93c51aa211e3a15882df5d1da8369a1f493ef295f6e858016a62871a2601211aacef0e4bae63f3a78cc5b87e675f2621bc3e298105bfa263ca00cdd29b8987f84b2b3a8a52a232413bd8f9257e371e9d011d24d8af0131c1f460ae9b4d0d228359e0f272b24756e3e18a723b71c8ea1c3296a8be2b7ad7cf75d2065172a04f5ace9893b532cfbf3538245754a329c523110a10c7844e6b4509d02c01a64b4a5192b5b429f8e947faad3eae02408e3cae3ea233232a6eab776334924f278ad2f8e8475f5f265a483816a76b3ce70296baabac88a8dbc6c310f7d6d2e65c038bd64a182b66a2d0c4f5dce2208cd65e19abb6fda70f0c4e0a5d20e11f4085c712cb81a410520acc3be0a0a87773aaec91ac9c4280ff7ee95637185423840c9566cd5de7991da293badfce125956011b7fbcb0b9180c941385b14832abb6efb7d05e72a06bd41b06877eac48e5462f692d2cf048dcbe19b478b219529a1d3a0ebbbf08162388acd1d0268dca4745923b5a08d5449d73e9fe1763c9256a9f6f8a5faafeccb87687fff7c34a9e421c3c90f9e1f4d1663b224bbb1afec4595581945bd6d157b9918b4808c283504363a7723c0bfd9a07743eaaf37a86b1419c815e85b1df491a4d094d8d32c581d137992ce32080bdda4de3df1fcac70323e89d93be3272749cd5c8931003d5e77904a4c4ff74a16a44d827c5ca3fa862e17ea03d6083173cc7a0357f70fa2bbfac99f396ea57d17c583cac460c328924af3f7f57ce4f2b7eb32df04c8b216f42a69fa82948208e305346dc4191020585534cb3c550df8c33d72f16c1fd6ea08cf5a583b956a47356b112a8cfbb0ddb72a9121b174cc1fba2212c2f3388b0d1c07b5583fbbcdc8ebba0dae6071b897a70ea548e59adc3e278cbde2a09d32e2867c2baab0a234b321eb69e4091b8ae44260fe1ffd18d749e367fdb2c50d63a44cad3ccf87f1a21b4e43ddbadcc6bce94115af43af08b04867eaf151bfddc70fdfed2680171ce194a03589d94ac52aa1443030308e3869ea6faad5c5e657e3c4321cf8c921fba5f430038027b5357abdc401fde8578bb52f02564896d02bedc0bf07794be29fdccf9d04e11116b7b24d043b73a7745edb8ed8e58d5165af2611977787020b2a7d4e72460e63640abf358b6e68003865b08eabb37894bb7c3ae4aebda2596ce3ca6c3e3302ea03322364616d79ddc34c9aad38ea959cbdd67a75f726254fc174710f7aa67d8e5042ae1d501b3e8d9ccfc9a09b2ad2e8930f46406e7cfc18628e8c405eec4e272b33933d58298a34ce41dd2e4429356565ac03ec315b18d8ff7ada8312cbc08d48d755520f0fc9850b47964ef515320827c0b09924b7b2705ab4e546e8ab148d609acd46b25a64a217b5d4f2be36442e334e0b78bb248399b388ce38f9a697b884c80b9be450bb126100dcadeb6b23cca2cd6e50f34417bd5a166289631c0413ffe69f994e04021c4d0f81e55a078cdccf6266a97f1c72cbd63475e08e84eba5a49c83e1ec1a9574089d73f50180b61627f3cc7bb9d34c546ad5df8c5d8764720ecd0df82e59bdff5d0d25c4a4abc452abaddf6c08f5affd9197cf3795adc37c8ad67f21580548d88a5791996a26f281eb1ce97f07de91e17b89e4e4ff51824298f938ad630f7b54de6267e7277d4848c17cd7b86c8bea9781712212ccbf77b0600bf9582334e2f81cbcf36b79f13665924c27baea266c649a93853f335efeee98e1b77492129a3536d41ae7f347579b0118c9bcbb2daefc5298a5a5f2346f82e616f03e4b3a2548a7f47f21e5a7ed71c7d7d4fb9c3abb066373d987538364fa342e9e91884ecb8952f1eb44d406006f81dedfa097a658432604dc0ab1723812eab508a55307555b2939042a09eaaad706adc68e1816b53576fe8d212552d5d35c58f25ea13122d6686dc12cb1100fde87fd30cf6cc55a351ada944394ccfd7f867b02f6b1184cba519503933150dc65a22c1ba677b00d3fed939c7476606af6db2c7f426229ebc82808c5f47e186039d2c654535d8d2e6cadf02dae319338b53734ac5a6805529e9f5bb65bbb5686b2d8894991cf99382bb549a9785ec64da38960f0f50f040ca876da8c80bb510905cd1b7e0f3abcf84f6fa2ca0ffa8d18019f09c4ed8c01abe63012d959d1dee9f29b9a47efe6eb4a561ef53ff66d6fdc819de5981d8a539143e02a14059217f7615fdf5a773b5191f33c01605a5ab7d7111d06c3875f1be4bc5ef76e8aee1eeb9d45cfe1b45119eb6d0b1d855edc5e6e6eb2f6afed9156e9463b85569a9526e4eb85067e30ee658f6271e0a2adedfe30270389a9e09f727217cdddfd5a9ca874b267eb8c9da45c8053a7a6d85b8d566f3d771012d9c924ad7dc821d95dc7646bdc4425d33f097217da9cddf40c529fd5a63238b1a2a554df0035de8d0a9db70aff58c037ddd3e449a793cbd45869393dac9f0eff2bc4238d99dc08d4232964b5d4e72ec680298c92344946bd4c0c318549ce447d7a32092c1bd74508819d4634a44efa333141e3217081edc6bf5e491d44bf3fa8061670c4812ea588467b67dbce4eaac54487e9ae299d99bb3556cc1f248c32ace9341b25f469675284cf6c89afa1928c48717a20ad34856a9a99dce86cda471794b955d6542ef9379969a24f7dfbfcfe54577f578f322713b17a936fd44d0601762916d340e9ccc06cc0e8dbe9eeff911c67422b71e6b1e3288516a11adb640db2311b90febfbf2482bc9452ce65bb8ced1073938bb3c6179249c7e715b2500189db07d1af20a5573f74b8623b668eb9b3eed72d367dbba6c9c38328b34b8f8513850b97b5647d269b11137e10ad175f39be79bbd9c53cedd386550d7e510b8819b75402e8e57930eff3fa7e32b87de3f77bcf97e12c12137772e96f462dbbaaee2f3bb591cc0f63efdca28531cc32ba333b1fa614e41195a868a3365c92e56ffa4766136242583228044a1c96bb4440a2e5e50ee0d0e820c3419a46668e78de42cc616f3fbfec98ba336102d1574b5750b170bcfd36c691bcc5507d1fa9bb832e871d0402e5a6833967e3048c3e9d589b0e533ac042d16f98dbf97c475048452dc90f229b245605a20b1d85e8cfd5faf5812ebc73edbc8f3cc622110274666182296f19a8744f33d273c875f77541061880831fedadf7f0ed3863c3c955ae09bf3d495b03f04335b92bf384820f6a97036fb5b9d35c18330377eb1934a096f525a11d4f106d40e3698c04b6aa930e49ec38b7dc0f7a5c3d1f3479f3d78c978d0c22574683305e11370d0eaab5ad69b9138e62e1fe9d49f682b496f52a0e2539d69c09d021337bddb9fb274a7f272d4505823b9fd1a7df74ca9af7c39bf488ecd9642d08024554999be5dd0531b04bcf4514a5e52ec40eed86397e9e9a6e245116314917dd465c987d097b8a3201c97a2c84589176135b2996be6eec83f3aa30d23a5e8ba6a6d1af6370799e8b1ad3deb2025a1cfe07e09d0f78aa9b31c4c9920b9a129c6787eb7c687c431e9006da9ba8161e48fb5ad410b586af996e49cbcabc872fccc2702c8165318bce82981b5a790c29ae1b001ab312aad5f5cdf420f96b837205edeeb6786181b24894d06566915953da1c08974bac5d510b98839baf1d52127f7d8b1d0e7f8d860937bf5adf31182534af4b1c73a4a303db2804812a1c0d3297beb58e4ab6e75eaba9383045b43dacdf2b5a5d2c76d8fd7bf22676ca7a5c1251028e04eb98359f614e6398879137c8685a73d6a5d5e9723a86cebe6e8df14c1024f379147d9c93f54a70085a7e16fa67324065778c913f9ad12e9c51628639773ad609101cfc177c9dd31b136dfd95c1c84373eddf3fec07fb8caaa49c144bddd04f9555b16b19085fee767b29a0462fa9d8996215af210a5feba54d3ac41261cadeab01e84a188773c698b7c53e1968ebfa79d999665bdcefbe1b4728a61fde475173caf8d91e4286e15f8a14a322af41bcec98d9fb3f8db73fe0a82dce4edf7bc796cd641412914862f8aaa09907879a3cf93b358e01de5b53c5dee03c5247864dc6d70d652c845537db2c75cc781519aaf9d8ca1ec487fc07f800f9bc0425ac466481f9c8d88e7b4ceba6e4991f4cc757512ccd458b0ebd67bdcaefcb51ada74789319b9fccc58c905a6ce953d44fa20f846e9733c4185cced940e885582683133794885e6904907e74bd763901e9dde87f62cf5350c21a851b62aa6e53c2bc5c7e35413c8e07f5096b8440e36b8577b38e3c3d19c86504595135010826898330ed0cc11c07ffa5239665c8d4563e11d889d0629a6682a2d5949c99396451412fd7231e8ef7def6d79e70839d549c01e8cb54d0c7bff9db7e0dd1272b19f78be64b2de84e49d057283762c615546fb196b7245cada55b2def15dd717b4e795c3cbf4bae644c5f13dc8f61e44829438375a36ac0b9d4a030c9910777cd4e2d83e0603bb7a20d18d08f6f9ef972a329b11ead9d0e87162349094fa576343a5c873b7d35d2bfdda0ee63bab5c49e1be55ea9c4d44a4519dd18a00d45d11e07f65099b33f8b8e7da7178037ede9fc6693acb4de72cebd5a83a29ca2f4329d2bb8c55065a861acfd7a23cc270695958372b9c643f2493aeac6fe262b7329975a82661fd607393439395f7bafbcb43126732c2b30f998957282552f5784aa4d5534138726d5a25bb7baec976dd6e830ae23554ca846ad889cb52eb1166567230e1bee5fff6f2472220cc6143f64b77de6483384594a5e6b484921098a15c1bb128f1f10f365203e5e6ca6900858392aa22178e2057c71c3ccf6c1b745574f076377e83e2d4cdfd30640c85ae3a92fc7b3c755b9df7fdc32ca1f49b8c454df8f19dc5776f6c6ca5259b8b7f245d0e4613a1ece09808027c66e94c923b306f127496826a911923ed8fdb99b5f9ce6e037d161b7952461ad863196c6388cc99156099fb8ca33f49eb0c8ad9e29f161a6ec3958dae9a9e6abaa7786230d2a73fc9c2d529e5cb4e88d74729e3ed6ce27bcbf27f380103d992dfeb7128d1d7971b4802bf3fc3d6edcf00f775aa7436a2795555cb8f7cbc031678b54c0259b9ef0e2f74dc6f2ed4886504ad8e81d38451328c2c89da8ea96097b6f8b365083c672703107485e4a9cb5b7cc393f77f2ac6300bb2f1f3e590f16a8b36967943484ddb679524df6bdf4f863a349e8c69c68631b93e6f30e90a854937af283bc1237ab2169473d465418a387bc558219ccbf82c64667af4bb8b82225f587ba6a4c19e76a4554619d961a40822f526b11e6811192412369c4ef3c91b058f5ef11ccfe54b44901496da7c7de29e6d2d7d5ba6c9f261d0f1d16dcde73b3eb6e00012f078c972d5400b87f733131a75899f4c1858583248a2ee2fd0b0c7528b3560790759472ff117cd770cb41e9abb66a5f68009ec185e069564ea00e3fc0aa299d01046a4fcb0d438a04a16de849f7aaf4b630528e6020e8280f6f76a0c4b8f2031985b1e27519f7870043f69a4c65a8dec65b26b2b41cb457f40c6da08cdb82594d8991239e0816adc7ad35d9e6eb5592967d33698f59f827c5c706d68bfa5474c9ccb6cc47352983e8703c176b9060cf5a8b74afd1500c909d23c10d57b55bef705aa79ac142de2364a9fa36671642767df5dd869bac56b8fcd0ebe8a50de1146ad72cfb2636828c201d218c4751fe6342deb083b0e639ce3854cd5f7b33c293624588777e2ed2399fe4ca03da5a9656baae296d9f82d6c5caac6bde55e72b2cc8d5e5886863aa9685774ae9d14f87c90c789dd3c693904ed8ff3c322a95ac8297d29c37a94fa7ffb33a3a8333674be7aa76a327e3873f5268f8daa46ff0a29de958d454ae4ca0d1ac9d22af8dee9cc69c2c6fe65cf507ec45b93e014ced432dc61e163ec35972a729a73beef030ce07dda22022beabc6dd66ddba23b758fda89892b168e16ffd850d173911a5a4956741392d0f1ba95008f5af52b12b5e84a5be45c68f9a2a29568f090f0e6c456a079640966ba0305de1b01083a8cbd4dd38be99ad546246b83ee94103a9abae7ca88aaee78b9e8fc80200453797def4310380f65a6f81178ce799796e183092f688a29e55f16769eac3c57cb7596efc030a889cd84eff66618a7aecfa31e7841ca0f98e9d33c20a6722269056e0f2cbfbe547d8696d886b621dfd78eac7c038dcd85ca60dd98bf7e563e216539c509ba5e5f7ad3d69cd6017da76b00fbe0ec729ab7cf3bbb6f1b6952a4f9c719541c18de1bfd0c0eec45da858441eb0008154ac341e0432ed6a67ce4e0cedaebd3bfc63847453eb81736fbcddee2b0c5fcaa512a4bca3a650f3bf39918ea02a3970e1b05cd864464bd725871919786746c39452b36a9aa65b95469ce855b28c7fc8f1cd4d670636a6fd56e10d60165af8d6e442624f0c6ca3364a25da35020df8e1729ec89fdf6d21630596c46d4a698debae1d15582c20fe11daec9b1c118b0b7d76711fdf9bf026134fd1f324257a0e94cf4ae054b94333ac8a135f4e45c851933331ec160959c49216ac10415e231da2e273c64d378ea2fc116f1bb273e435741e46ca745527700f44b37beb9fd978e13bdf30a181bc82999e1c28f49192c6945ecbf94d4d76669c301c17650477e3e3c16c065b2ce7986402d05686dffd4bee97a06e507761bbd86c771e857ec2d297044bdff998f76b65b401b28e8de384dca7c631c1afd1e5e14dc162acb974ced876f9f6e85279c8dc47eee4c7a549bd79924ab14bb539e109159f55ef8041d8b53c6aba06e39f57560cbd6fa15c01d48e7b5f85c5e64bbbc92081d308846ed3919ea50f29356b86a0807e535e3154d250dbeb400e63babb52090944b45ffcee063b21799a92730b590e3c88dec0f69ed2575a4b9f7f7a7fa6406ccd0551f5ca4eae77a10d52a2b5951670b5c5864829f5a5509c814a1fe0574fbb101f3757fcd7d6eef7d7454038fda07c3b37d29479f120ee64ee148a85ef4f49531ec381b85e9c2f1f1dda22ef19c79f13f49085b68d7c6a4994bdead4540e29c7369872a865111eda22e6a7dc496fe35ef24fb66b9480501f6ed2d51a0c00d92b5a4abe9f90c9c7fc766bee75f24a2862af5f66e5b0cdfbebfc82cdb4b7305e6c8469c28de87b70e95928a2e6ca26b4c9bc0cd0a662c842c1b22a7f49d2606bf5523b564c96cc33d8bd10c5220e1cf0118e79fc0d4955cc0a7a0a9e4c294e0f774516cfa62a51ec30123a0c3bd4591bdea9071903a7642cc5f0a6144cc03fc5466b69a067b1b2dc1b2e68a422882d4ab288542f3f99ac8767a6ffd200d309d831cef78aad97c1eb4a188286425d5b8d6b3e48ac53f60dd3c0b79f305d131745b0b8ea80b31300b5651a0d77bc55589c124384ed73412a96a82af0a9592133d52ed37839d875f9f3d5b6474adc7acbffe84c1b03da7f43fdf3f91ff0ea5b641b366e0ba67964cd00783f1e4e2f9b21f9b37087bbe94c9e866421ae7d26630e0c13c55152dbe85c303f92b00a79a04c9c258b63a21e5c4ff247b445ab6178115c9808102995b92ad0c7365704a3bf85560e9d736e1cee74fe678734c20de53b3859d1570810ab1787b12d996f4d1163d977ef82d1dfc80bee5a2e1e65dd1e1a07cbb67baf70918002a6add22b36c45045ffe51c3e3e784d233fd2878f106a645e7a4236a90bda7f511af582fff9319b019ea112b0358a3c34e2009cbc39ac1eb7865604f9cfe3cfa6faf563e4fbdbc876bba1cf468bb8b1fa1678d904353a703e035ef88b7156dece63604424f55d68fe30dfcf45c98ec7350ea3d6411d881082649d2a5a37862ed420ef30586234a08e22ab6c77d4bfe4cb91c5ce982e866fe6a17ddaae60a0bf2eb031f1120d618aafe2318ff1ff933c71afce754bbed6726d9fd59890a1a880f40eedd5ba809f0647e3ab675bed404d2db092bc7297742250f54ea5317367f726a4a59b554b7064c4d75a784ed9be3974c5888cadfb4461c8b4b38eff0ddc8c5f0bb204196e91d7c50fc5648aab69b59a7f82d12f8ba767323737371d5ea73350c82e48aa6420acc5e0c6a42e9d13edb23f8c0237b49647e609cb0fe007308ce332626adbe7c323db70f91032df3735610b3e9a58cbf02470a0b6542c89fb43700edc23a32c3464519aecf48b36adbe7ffff2cf33f3fb5a2d4d124be8f8cbab0e603bcbeea76be8f5941729f5efaa6cb82cd4222be1d92e5f54b6ca152fdd11c47b1ba22e15d42657c3dfd41b5b338c9ad50623a5b6bb453ac8662d18fbbc205d36be997836f21b0b5d334b7fe300cff6b59628aeb7c556049173fa07e13bf16c23f3dbaeedc798e3220ca9109e71541f897bd729c79b09a8d39f2c8e2e85f57436452f88f170c8030e8995f5ff784bd9bb5c7932c0d06e563cc85566e47904e8cb56cac835ae402bc3e5e59a9228194ab23e26d778f75884012d7b09787bc9a18ee897b00e94d0a731eed245e44f4d0cef461d265e0e2e2bcba60e17045bfd2cf40997b26e690af3ce40ec976a91f5379e6d4666334c1db8dab2a139f5fe982fc84ccc9f61f4c8d263f8919745ea03ff5e3c1bf0dcb71c74ddf0e3bc60fc03cacd78018d61412e0b3b7b9646e1d207411793f451aa992b2e1dc4eb1a2fa93ae086a33d1a10b58725161e70f5210d3f15c7036b3e3f8452d47896c5c144de6d7fd086f5ecf45ee6fe21614a290eb6684f6501812f18c37317f703b2e3fbf455a8dd710cef015e273528a0df518ee9761873837de6bffe0951edb82ee3e120c4abb41bb27493e0a41892c1e5abf0ab0096c23c14a4ff985b9e0e77d766bb2cae282cc5cf29168afd3fe83f42e5e6967fd58dcc093d361e6617cbcbe45e51c83f3a919a66f6875bdff1f2a7d8cbb419c4ac11289206180d52d96140effed5ce57ca029eb9cfaf26a54c13e24794e21e2711caf1ca5c706e5f35e82b7ef26e9fdd748851fd46ed9a06842088b82394c920c5ca6e61aaee4509d07b7e6e9c7478490fb18489f2c7d1e3db2f6ceb24cc4d194f834ec51a2a2a3cb083ce2760a4866839082cb77302ac50fa6a3cf41e18fbe134a48b4f33e55a09ddd1103c15904f3512a2b18d6b4453b200ace1bf6da4de38ee5d3e903140712ebb1a899f89bb05de86ab6b5494895a85fc0a5f9d9d18eff3c30e0ac93dbf6b25524652686005890f685bbd0d81a69d7e6fc5fbf9d036bed90ec454511813d44f5d33dae7f9c36e6214843f564884423a302c6473266fa078fce020420054a62951d2c2b60191f008020a51c59ebe2a7b56b6ed26919192aafd741744858444587f274f1a94352fa87f7c4ecaf0e12d09e36167219d5dc0d3d9193374cf67080d4b8aaeb26a1e0491968fc171403487fc27ac0b69be0c6d082b8a6abca4ab8b4fe1936b1b66fa074721435666ab0508937c84490bc6488afa4b851fd498538117f57a32d72611f878cf23390c181f683831be033b9fc8361abb22e090bb18704a56c3e8b634ad3871913086c456ad6af43e698276b0fe67f05f056ccc89d1d06bd71f0168a5b85d61f0ad4f6a39bae4724557c1cf320db599c66177aee9da626fe348d3e270e27ba2e7415318d62ce02476ac158e0094c85cef8f26088e35c732d48cd1bbf0ee4e1d42595b6f44d60cc9b22d465b4143ec37d0f0510593eb63567d124d9400c682771f877e7917963f6069178f6ff08b5d2a03e56bd3bc36220641a563a9aa2b18f862264fa1ca2bcbb119f3f154e5584693158e14910fd3e502288b3426344d357da3e89affcb2e25bef21539c3c78f7b3889f45f094919d9064ad88f4a2840181a014b475fd7ab433a0418bf17b70c625898cf054361a2072cf4e6c278d1a3a64938b59fcb5cb012a47812991e9a691a974422ad07d1ea3f4c1ce86fb9c6558c5236dfa85ad41a3895eaa8c25402b023a2dabe5d09600a45073a6fc2ff4855572167e7b5421367871c82f64140d7c76000cd28398964245f66fca2297108e0e429c2a300228a2c0c6d73484d7862b941495b35b373b4e83a55b15686f09ba99b5ba4a290cfcb9155aaf04886c4809f08c84df1d1338925a34bf4413770350583f0055c7de265dda6e54c20d31c51b3bbd7d30f6f256a50f452bf4ab820e892d8b764739a10d9bc79f7eb2775ce0d0bc8226c1ba1912505805d19ac76b9601923357dedc3788b60a5da52fde1e93c9406448b26af9926964508f92a372988bc518ebf7de8354fb926f476ca9d43020bc77436898f567f5ebb00f98f6ca64edbf4f79ce55894ef2bce68734de0328f3fafbda40a6c0863071a3696c75c870ac5e5d89b79dad330403f2a4cf5709c04f9d1a8f45df49e10dfb92b10bbf26f565c575e62a1c92eca454f14fe0190c9e51bb0a38137d2fc1d77cb2d6e81fcdc39158eef1780752c1f34ba8fa3f33460c27f6d54b76ee247d3913e4390a06d1d3aa7f21f25fde16a5e93c80d49bea0bf5403a370703d4d9533b9ec5a6d02537a5c80d7966ee9f4442c835b72587aedf2924961860cce7daae9d8be623317f4a00c8758ac5b31cd943470b0345da37712b1e39e3db68bee71f1b0d651b7dadd5a68cde89a63f922ed273c851e1d6a48354caeff9431539cc89c5ff0327124f418f47fcca5b16b6b5e27d85f9611fb1aa11cbb5dd11c76d42aa00e3d172649d94c7c3c74c84a06352e1dfe537bccb3eed64b089d52ce2a0bd5f6e21564f3791b480f419ec042a0c6a867b5fd3705f229a4e4ca13e8d6d655ddd4610e2e61b9ca97c1579d67b144ae7d17d41ae78eb0007c7e93dbb5121f90d16681196ba777afa795530df6099cfd510da52321f18f119099f1c52ac5e541888428a131c645b4cea816349a0b7880f77e35b074636083c4be60e12254f5020c53449a414a280115f913507cb3596fdf0800ae5043ca4324f1a9183c915446ff48fca8148962e423dcb016503daff10c07f9ca43c9065dca04d5cef82dc4490148a3a2118f95ed22a15ea4ae94a01172244a2a24760e870da4277147fc4f909511b9b714a1448d05c37e857de540931ca2be560c53199e27b80a1ea1ff50c331b45c024f59ac21ccbf718f45d6e895b129cdc0910cbe429936b73e1c6663471c840571290c7d0a6b8f9931176a6dcaac8bea1559f50c2ffc69737c1f658b96576a26cc486d46a6a4c989e93d8ee2803d33bd3ea3d5bd77e25c8a9ec8586d1f17d1b3ed212cdd26f4f9a4ceff35c6632ac6f46faf8b98c70b15218db262590d8cef1f035c5c1d2e4f53629edb161e8adc6d495fd16ea8c55111bc5f86c84c43cb2c604f217f7036172ecddc8ee6f63de67edf5a2b59a7957d731c941fc6831fbc18337e536683c4d2cc460cd1a59a5204774cf4980d2c5e2b4074aeee17b605dc03be5036942e8ca1d0c1d40f9c4f7bd1bfc0d158cfeb3d515bbde3564db14ad96a49a328e184d42e558464d6cdad9453bf8b2b10e946ec3d200b5eecebbb6aa3da57fa09991e51770d6872d0fdf4da2052c502498bfa70502457b43625a5f4ca72a0e23cb8e896e325867d802a44b3ac2433f63ff12a160457dacf166a519e5c76a7e83b95a04867a9753e85904d7675674d461fb3b2831747764ec7f0b8e32889129316e2c5e8cacfb7ddcdb32139580e6cf93405aec6e0a8260257c7c93f907baa1a023bfcdac3c89fe265a9d88e3ccf21a870a3dd6badf70a9e58f530ad2748cc0227b95e77b7f4ff01ff95a2902d1f7064cadf7167187ccdcc5c502ff19d35c24e6cfcccb5f5a093475f465189d1a30d618525f5aa75240e8b6c0dad30bc30a98e0ce9bb49aa84a5be1ab16dd7f7ee886e64ecdadaa396eb86cb9bb0d9c4f655c931c8f445fa20185f9bd0f749ebbd4656f8dbeab1074538134d18cb0b4ae552ac22f386476390f3a0f098e801b02cfa6ba4d17fa95a2a182187030df5229485050a74b393bc0bd7896b6f27eb607efd3a374105a10d06db9507318f0df98fa3af3ee5b30f6a9fce82a8591fe26897c61b5644b723256613378dde5bb52fcf955f238a74de6c1264b2be29c82dea907a5e4518c30c884727ca208ef03ff56cdf2d4f82d0ef700c88241778f592c7bba6f7186e49afe720df2244feb4601cd8606b5de0e66c6671dd7f499e14f61b79378b22e184af3df3ff6c8bece3b56f22ad103a3540e63d890eeaf208703546de83678ca82788f6f1ff399887747316b96ff938adbf78788ef5fd1bc32ab9145eee7114b5d1fce48c65814a8d009507432ff10b4a55b7a07a24a355475022c0a3f9d64b4154b7994a3a94b1ce8e7f48ae42f738480224c05fa183475d620a1edeb29d99fcfc077bb1981a1ee0a67fd24e6707618f91205cb6411e51c5747ede700c88d3c1847e681af2cd3e6f711cd6c0ba6b1754bc7e86cb1d383d11f9f14da53fdd78428faceb9703970507a94af99ac2596dc609482e243721396f2aeb11d8493485856aa113819805e86fce0972f086bf1f166f7427d2041cdd923de0fdd621f42a6120e46cebbc4add8df6a5b05a0b2e215805d3308ec3e6af77e00f870baeaaa4b4dbffd918dc7374281461d71f4bf9668d2113f5c88b52a4fadd0e1a7d3ed8390345fdd4404a4cf51129490348b4a26c0fe67e3d6a0f8e38fdfa5cdc1f1325593151ec37dc54d4e550804572451d344166390a1d3967172cc1feb732ee02dacdeabb697e26a7718e4e1d4991667eb05e139b09f3399ecc635c201cdf7cc5fa7c5a752aa779c744d055e2c445077c4a08ee33310d43e8291fa19e88f8bd80d5ce59976a42342e5d0322570afc4d1e9c1208500f85866f6e4c3951808268d0be36e5912a2522b6bfb6102bf5977650850d8a9cce8a8a24a67a7501b931d70b89aaf06f4691b147ce3b953377959254a5187f1945fe103b9cd2e0a322d4879688fb6ae2d9c36379683fde189efd9d4cad34b028fc641b01406e673f2ff2fcb327027634948dc6b76e55310bfd0595c067655f16299b639cad6571e1cc15ee12518683f73ea3adfc5c681a40b0eb83180c5541cf86f09a6e9ac241b92bf740962b97acfca2dcacaab528a03db16949e11a5082ae40d7b43d3af9fd45627cca2c60cd7a4ff1eaed746e4ca35821440706294b5eff54bac6c1c0058f5e212a24e031aaa48f5de50ec8f9ef526228599597c755561f5011dc3c06bc093d4a8f7e7ee313ec830f8727a74eb6a59f1449ecee773e7d30c49d02f937d15e7bb87cb58f6aed6f5218dfa68523e630110e162f065937ee8e487e14dc6a2ef340e084a9b5274e14951c8f03fbffee0c42853b176d751d7968aa8be1467ab1e62e52c01fda0785321fdba19caac6552c3ec81b21f26c19c1b86ae0fca1fab62c9493a9205064e7eadf058dff3ab5086d123e0408d8de5b9e5500f972a33e2776fdad4bbc7602fb66c63fc55a35250b9ce4818d650cc828887be6f901cc8fea7a07501665305b67a185100fc362a6c255ec8d4a6db77b20743ef3df2bc5d9a32e2c4a01336136b6f3903fb20eb33bd5d7a1d96d461d3852ebe3404d1246fc02be746710a596be6cb74b729a1fdb4a7b8bed6f0ce26c8273a06dfff3ed895a0935cbd8b48bfa977f68b5c71ddc40bffa30a316576a5645453c666b02526448fe04d361a46bfebb932f9fcf09af21a4c521022adf3aba652e8517d0fa8130d8a16f9dac0897ea706964c2b9f1f24e9e427b516792e30eae017df07fe041a9283b976f9ae0d11cb3ad21d5178e5a181ff8d2bde04dd351d16a0ff4b89660a416b7e0f559ba930190acb73e76829da61fc4f582ff666e146510b2f2839c4ce7bc4a120d66b1e5b821629023be066eae5020ae2f4458ff23c75eba4318d7c406503044ee38622ba2d19947bdd8ad27b84e3ff1608117c4f82d61f96e3e220d8ea523c052d6fdcf550fc47c580164b6cf8da6ce69fa20b1d1677189301e8673e42bb0d33fc003b3b571a209c57996d8259974f6ed0e5f14510f16d19e240db3d8774ea396a5ae71f51793cdc79f1b854ecd42849d35c7b6a04e69adc866502f802f25832b5deefd67b51c420693a471041d926782796957b1b2327f014226882f35aa1e7a512ede386eec1ac2ad9cb9231049335e8e32298cb145c3cfcfcfd4c0a28196c6de8cecb1b389b1e5d776a859737858d0cf753265522221c9522d211f2f898765bc219fe2b673a2ff8d67f625e33b12f50b365e2acf0312880f55527faf55dc9b15e73c3be28559e09d5a2e83c90d2a32d210ed718c14096677b27afb9b8371f6bb6df76465d14e56c3bb61e517923f6089219944b420a61660e0bc828e51b6ca39c3de483a23f126f2f01700495010a880ddfcc0431456a92c25fcb346913148529e3f60763e264bf519258ef8b378dc5497ca889b13a38f9b138c86a728150ec2758023c419cbc03a243794f5bd10477a6a91e8a2475f4c33ab0175dd7823548ec66702071479edac1274eec7ad3bc9e5c515d9c368a2bdbcaf33256e79e9d32828d6ba9d76b944aba47b11bc4d899855aaac6f94160793876cd1597f377842ce23ffa46e8166ee2de28b86c59a54464883aba34d35b8ec5337dfc6281d381e6c98d896403587a977b17e0f6646585e0c910e54d85b0a337c4ad092dffd367b763556aa490cc1968d64839a5f76cfdd5c20d285bb2dd55d78cf59dd62a94fe1db5e876750d320a878c2a537891871d9ea156713964b9f17c74deb6f31ab2c6493726cd286a226ac7a7f50f8c918ac54d1319baaf92634415fac5c1eb6fe4d89320adfde80254ef3377de478802de25b4bdbc1bc6c060413b60a7d9be8261cd5afedf1290f3b678823a97016c0fc06f70714f77c3204c87085d0ebf12928c93ab7adce25c95d3abb9949a335b2d7489c7730b6df8d0d0e7e53777768d617e601fc44691f459650678e1210bfea173826d0da394550336e77b9b5c117d6ec01edafc9560e7e2595e563fc5ba60f382e1b0ddb72cc0d3a3b2c2fcbac811f3e3b31513a3ac5d341a5d322979ba72dd78a8e1322fb41b301557a7cc29b8b0778118821899a33e3f65fe5279842887f8882598253a0dbea660d308dd3dfdb04b5b98b7c972bc95a2b9e3d6cc3b0a2c4ca0a1f67103c36e92e9bcd3bfd30150729ec55e87e844ada27ae9ef252b8ce88fe2a95580d7670ed0c2c9c7d7c0b70cbecd8b521f51044dd507a52911cfe52f8cf81bdc40e7fefb73f9695e95fab92e59ef355b3bf327657ff655a2cc8c7677a06c35af8349b72981e4393c23ba0e6ee33c23341102d578f9cb8b33505eb677e67f9c47c66d4085218b1da68756f57bab40559ce91b614c525acfebc598d8e9ec262d89602deaa861437583b2a2f57e911c8ca7b1ce8bf109565c3ca99f2c9a34eed340a3847f05d15274646d3bb95061463752de4f20504d1dde5e576ef167085e3da01aba299e05c5207304d807b73d59befe919af27d86f9d5a65df7e63cfee9c96147b1bfd3d385240043042abc2780993720072c60463e824b5c11969fc9b61e24ac5ccf62d65b0e07c3953e8793e0984aeb64f2298cb84ba424827a3f3e586c23af3bf197b12fbde582d649101bbd845c6623520456bd6a180075da46781d7c8076e69f38d11c8eda349444fa72d5359fb04950f1736061c70f76115e1597689551cd568e7410650f26b8ed6c5303446c145a14cc2e0a91a74b1c9e660b005150c00efd79d69524d77f4e0603f1aa392d98f7fca4f522fe38d0999fda81bbcf0f0f70b578d2dcb7663d1fc1d7bfd4c5e641e766cc2cf54598804ef7f84b24a44b3ff686c5e55b8c361b1a1829c21cb241b64047bb2982d46aeb57f6d13e3deef61d1b7b36d4a05407e2b8cfdedc5d9b9f40eb8fb4fdc5b33c3421ce03e5e6555ed9c1e1c3b64af4c90a49ecbff51c822c3fad7ae12116c0a0da578310cc305c99d19b3a2d83e5eafca8cd1eadf0392f789f43c74934a151fb013ec102f1cf73c6c1b05dd1c335a9f05f6cd8f74b2ec486c1098ae781eb07d8eff784b58d55e338a8adc3c691eb81845a9722835e41d422e76f37439547a7bf6fef361e5c8686aa94b56700c014983c4477251c9b4043401b3f0813e641729f9a26b0e701da2a34e60cc0fbf254455cef8cf8f497703c9d040aeb583460ec5ccd26694d976b1ad0c99f2f9e62443b7970eab700da03edefe8b942478247c34f3aa81fea4ce7d6c1fe74fa767625255df73005736082639519a169460b38a22219a2e33e22ff6074922ec781201b0da7d53a9d6ff001252d6ac261eb47bba0ac05c87d676ec8559ead6f7044b0215326dd95fe19cc9b741bf816887d91cb97c2c94fbf9d45e4b24bdc55750c92086344fde16972448a91a16c58211209df4732925db2e86479a93e0cf115a573f9e5ea59ea589515831705b615263585191fe1aeb40233d4d8a69c2831f4dbb2fa71711601b9c9e84a6edb133a7c0066357466177382f703b6961392d93229d14c5d2c1717e00b6b17e17738e44d196cc142984be7680c0b1ef52dc68ac3d5a5af7c652e3df629b056b965e70b547a700d758a564ddff8078b86f6d206443703a2e2b34822c3776158830ec33ce7c63746eb34f87d3d41f4092d0c60156c677285c0402d6579ccd8a6df20b2f4012f7284c022da90e6ce502186ea4459e64b1074f1746d9f05d439ec0b6ab13a2314426384882d763414b57a87f27e651328e43e66d2af1dbfd2ef70ceca7b97eb2646bbe15b4d27b64accfc3cf8758130020564d3acb82160fb54d011ba96768895ca2af116f2d3ac2e3ed84d1fec7062c5f4bf2d5a2bb56cd820c82933291403123ea00c7e4ad0a2354b0f3fa8d091954353b692dd38aeb11db5ac64e9fb754447fa3e00420ac1485b8014c18334b61cbaa2eb531732a0f032be1779bb33f897444d122afa19ec02a700d624b75b2d1841057b8f8020ba89c0ceac3d155717bc56176c11dcac91a2aa674f0c0d0a8b20bbd2cbf0b9ee3df4e54979d648193c43929d5ebd92402f426a8a814cd664ed2a38b51c3829ed1a83003e9dfcd86289c9fa6f4b213405cf7054356ac6c95c89eb04f51f7883c02c9e9f6b555adcd5bc6eb967665380524a0a34e1aef90197b889a602cbfd2528b755cb6a6bb29faed504f3f24d0cd63ddc100a056916911a9059e054609a903f86e2e988389b13389332b9878cc7dc1ac4db4c6e6b922ab95cc50550e759350bd3df9235fc2330bb02528ba079d321df6dbfcd044e471d207f3218372eb49f97f9bf5d15f784b4b040a2a09bb7e72b61ad3f4cb0d575ac077693c4b495442ba0447ce0defc10f0c534b3d8a2e436c023e16669357af949b5e8e5bd70db39bf5b18f88da2334a33988a7fdf9d4e001d5e9c374a1f47e9edeb9fe72ae020d6c2fb2b6d08e54cf6d13ec678ed22709eee3f9b476f66894e0a154c6a09213bfe86a4d549a6ea6baf9556d5ed4e8622cb48d337651d18631ec4f90a1fc223131653b7211a901e2bcd71d00c78b47ac320ae62ee86d3b5f5d647539991b882d24d4860e6fa4cf68de68de7842c3849f02a85fb8d6beba0f6a54cda10095fb3ba45655f82210b820635d91b2378439109c237918840ab3a521d0998c92218461126729dbef7b90fd63a29c526cda8a63e54b310cb555055e7a545753755d630bfd9cccf8269e71fa79e784d2c819cef530d0c1efdbb8bc70a6557475ac1d211c38eb3d7ca65f282c7c37c18d39f0a7d064c0a6a468d9346368bac020294cef284f96dc39a2dde40ee705f0ccdd754837f07134ff1b0a2aaee0a3d62fd1c9f96738e9ae86bba5c8ddb7325b4746813209e79523df5a733d629ebca42ebf30ff1dba44a4ae0b3cf548b094c427a8b9d76a0d9f97cb413dd13f939c8a02056f1f6b39e554c4d30ec0b794026d297460e8dac077b64527f53923e9021f6ffef81d345f8dc569df4eb34b9dc2f078d4fbab00dcc57ee95fb2b1b5acb2157c88920849ab1ae702dd42684700fcab232954bd4db5c44a2e84b7ac639027b058f350c554f40ce6483c5cd5ac0fe485339c6ba88dc849251ae253520ebf5a0a870ecd86667b5a90581c1644c7d62a22c8e906f5bd34e3d542d23b05a5637c4a1a6dee66530593dc5a357b7e52cc31137f398848036a539c7dd0fbd71c9a5076ddc3426038ff2165a169e834a9d7367f595c8ad1f467247705f650971177b3ce7f2fb5f24644844a46e22d90f456ed198b9ae1d1fe5a3a0d49ee13dd488a5ebc9d9934e93f868719310e2799533b92f673c9db6e4d27905b4ba7edbcabd117c2781b44f443afc081a9f5cfd87482a10e368f4dea5ee27b52801164a772dd891ea62de6c2125e49f55e0e2dc00829a18dfcb6e7c0c7ef43ad79b0539947981ae78e1426dc66f8c03d67caba0dc3976d31b27b9af1b577199ffc94286a97b25200b0fade620237c903940558359bfc655f97f407c4517d27b3c6e2ef406342ea52036e863f506da8fda0d2e12e5afc8f9db074eb593d7e8040931d3e99d01b599963af225a71459e76b3542cdff2164b746cbdcf595c2539a0cd238ba1c60fa20a6ac1e0dd341fff1940df2336f141e6b5f5098b70a96795655bb6aa87c118ba1991d35f2a1d3a95a4c914fdaf34bcc3ee108fd1e77534389405d161b89ce80dcecec4aaf311b70739f8c1820af8a92b3ebc38079e60a28eca888f50a43547960c65bde1a44e80fa895f21b2b93eb5088a9f1bdfed53b4b51aeb8548555cf6e8d71a0d6ec16e6681d8f08d0e4013b717861295855c600bf31cab2395dff1348ae7d9d44c9d6a04babade0c8a95d3a26f796e1ac6a58b622b18a259acc78436d11ffa910761727de97b84702989be91488536791c031698d9098a34dc45b2eb8ba010b6099f0ecf9426e980beb6f4d547b28edec1f5ca1f35b15e0553ec7456cc953c25c8ba31307715c4f2e3823990e35d203be5f9fd3938fb4c504e1abb3151ff6b882423130dbbccfed87b55cadf7fdbafe879d68d722dacf1397150bc0b6b4c1a305a8973eab1bd8cde9bfc54202df175af9d13e3d97f41559fe484cccb98edb0acce574102419e717797721b728b6982c59cd04425a5d566ce5bfea27b25bd65960c7d2ff966db1f05465621703ad83870bb6754992c7828535dd327b392d7df13831255b3bf28d090038b13dbc287dbe844cf3aa479d16601a454e2a37a014466ec5d661f4a8fc9940e8660e6436cee4f62a26aa6e94af5481a11e501f3a20c7197841d4144faf31cdd3a25cc45b86b5f67b7b6b2942dfa5e23cf81fad8a0e1180da14d2849f67f959ff649c436dabfc1850b6f533708b10c39f17f728769dd62f8c35cd30354171e1d8ec08696675e9981eeb68a368834de3d8ff983d25f3be514aa09fd48f52372191606bdb97b9b14f03a44fae6c2e072fec297db85bd182ce6b74536a1434379ba0588ab67b3570622ed7684ceea155d12f07fdd7e0f56e8bf13542007d5d755fb3a04879b9f5920410da43f793cc210e7f34059bc1e9d7d43ce169552ad0ec9bfa49a7894c3a9fbbdfd046e758c155c76a51739a4c0d52a8bac361117d51d17e535a07c756529dcee15642af95dea6c99ce4e5393c7ac7eefa53b834d7581ed466ba88a484c3cecea74928f53813838bc945aa27ff9c50add3506f6ea9f1b36ca7a527efa34de99fd02fe48c94a82dc6def703beacf5b157f6a01f92058e3e8de13731fafdf41c86a2c3d812198adc49f69eb1b5fa7fa58234e3445ea3e3a4e60111565c32cac0e95ca7d1581a571e72976d47f5202c6b751ce0b5ab37cbb65b38a2151f9fe011d0296d650723dc70886e7e9e500e16413f0c24a73dacf5cb8e8884824e1183427fbdcc903a61f27c5cd27399e4ce7784f2c2115a18222b29cf17d5e0101cb7137023a655b5dc4012b7032fec2906d3d7fe62d4734d359b6573b1b15a01f8685795beb002a944898f7af0adebc0a7fd711e11201b6df84a9d41289016195c2c9756fe6afb8d1eec0314e665ea31defd824ffa43a7d6771fc8864879e20a4060a23dfe313a4da29bd15ed2d55a954437b6caffb11e7be87cfaa68f09f21c10e25b18920272f2699164c258ff50b4680f1edbd7d3eeffb6160d3d227fbbaf981a48cc0c93d1c16b382a8b3d4835514b42c2d963a5992e7cb11b3a1b0b97333557e67150763944a148568b6310cbd348a2b5317ca4a33bffa5a1c3a7266cca8f6161f5f410d1bc1ec832f39add790d605856590b31af34ceba8467ed4a284ad0373d358614d1c420d0f8ae689dcc5f03e33ade9ed412aface15d3e0d9546e3fb592415154d6ba6f1502254e6a174511c6ccdc61d76e430acf8dfbdf185a3d23ba96243c900f25e59b03c5b8e2613c3cc6dd50135c1e76dc13fd0df41fa6c03e2729728728b0713928f58a03c4fd549a5df329439e3feafea4f9b45e0168cc090032008d237eb60c5a9fb0465afde756bd0d56f54b24978f7fe59bf278aafd682dc91ef90be29ccd41041155dfab0bbb0f9ac87b374d3f76601cf9803d74eff35bb477115c06cb15e2966554225e87654162d348ae466f4518cf9b051e6c2b134c50abd480c24b161d82d7bdf257ceab69917eb04d4b4082f14eb3d3e9b28086982eaad55aac86be6133d972db5481224ab4c7aacd50b9bb1c6e4da15359f2a885364cdb3db25969c1e86a379ba8500f94fc134b6f0fba8df5fea5e74dc7f6d1f121c2d5910cdfa2ba6409c33f84146f2e210dc4a4331d016c99b708171a7510ba26d30bcb8a2b33ff9f0812d0d484331ec6c097d83b295868c305d18c768191812bff8a9fa5e322a767950a732c7baa2176846ec80ebc79c47bbbe7a3dcc2eaea2ca6f8d7cd9c2d2625f73c0d7d2d9b1a79c2378f2405abda7a3e688908f8da2455c367e6ed1254e155902dd379aa37bd25ecc71b6832bea87cae0217ad9acdf1ac8b4773ff93bae215640f390018c60255f9ad3f1a13ed7710ea24c4845815e180cc0560438da761efc414c89d7e168cbea7d4802da436ebbca3eea71c442015d6c0f2c593be9bf310a50d0008019f01751b284815d07de98b1cc1d45da440e84610c5f7307fc62bc26edf9af6dde1a1ad39683f48e7a31777cc5a1d2302a24a7687e508a85610d48911d46c9b7cb17a0573444659a29b8787f6309f4fdc8368e68f724b8606754275b1941f4dd0f171f9732123673789ea5c960a82cea9f6fa8d306ee4e9cf81aa293915af4efd60ceef1a805637015196922720e0307324f6e2cf0dc22cb420cc803ed6756f508adfb4c595ff62356eae30b527200f14bf1968091370d3c437c737b88f135cbc6c4989601953267f9525020f864960173a958d20415266434d1d2ba17711ebfc5854014a0e153f5a239284a1617c8b6c61318d42d6e4507da03febc071e282b87d06333d1c8559f4b189e15fc809654eec1469479b57033e7512ceeba12ffa35023c99c4deab14b4a857e80f1c9cbeea1b1380c64d62da576891301fdc8c7af4e284699f557b273e787ee8df3c531accd650b06e4e85edf24a7adf0dbdc7e22423e5e1716b0841f44e2506a6a792e60bd98ab5bd249234b6cf9b02a2b3b51933420e144c9cc04a191423626a6a03ef6921107145da8977a793fc9ef63fe9bee40eab4cc10cd5164aa5ae0cf9867a9fecd0f7e78d7a01efc839b199d0f6ee57a3d03a3691adf9732735c710467a98ffd070179a0f9813be902be261f711f6e6a378efd9786e60689c524ec6832b94bd8a8c9605a519283c53aadde0da36c6dd0079eb3ece77ea19d04be256e903e72b33fe44517c676eec12e7a5573c888322e55b7f171fc6102fe861278f757d731c79930099408ff373e42e54a8059368483f4dad5247091a4197a2e6cfe868d9978c116d7bebc83f1d4bbc2d187bcba77e5f3fc62ac0dfcc41f4f558a97b3d8619131ee64ac1d3d5a76b063e4b2c1a4cc2ab286b30d832a36254f6d96e437c21244bf4f601a4cbb95f0031c08dc339e2fd1b07904826fae506368d21bbf0b01a6d0cf889d99565a82dc2cadd773e3356d6cfb04a5c8a44ba43075581cfd1579bceabb61c9fe4159d0fdf6caf69af5a019a75018098edc66c1227cc44e642b8842a3de32af0083c9289cbb3350732ebc38c7c2f5446505a2a13379a809019b65430e603da391ae8a432580da18d4e88a7109ae073133e8ce4318021391e8c2fab14abcb67121c0ea5cfb77ef5b0abb8ee99d72399e315486e4bca277fd32f225712cc2780ca365aaa0db2b2ca5d2ceba9b7c943299a158f5540d17da4391491d29a96a0a7529c6e3bfd587208b8560f08f0900f1c952cef9a04988696b4e6c82260e6641045ff3b366c3acaef6cc8616d309f3187357c34742f814dbecd832a97f79e4738f0665b7d48c85a040396cbbf0f52eb954f5e966a36e7ae1e13d7e870c2db262e708e87fbc46b89f34a891051f179d091bde04db6364d58cb9623341a81962094ee5ee28ab7d96163d5a7f5ddb1cfc08a919871945a38c7c90751e542eec2e0404e24914f1182466d3b7092d9597c00c0053d9a5d2d8797b689a06f656f39bc1b3b461e93554cd09d7e0f82a71cb1890d72e03d5d3031730a6f725275c90a09ba11c2c746837dcc629f277d68bc787f99cb5d34d51941ff6f640bbd8fa1f32777d29447f1f138d2e040e56b892f7b883f6c3de11e70d1953861ece8c76d16aaddc265d2d5dd9d8d9cf643cf72e3157b38e327cc030ef6a49f6de4602807fd27870420b560c25bfbf8a5232f629cb160794894cfa137e999843caea62771d826289c7a121df072b83a47e0af642929db5087e03df010753e73bfa5fe0d114bc0f8fcc9506054527711a6b4915c74504bd5e4c8615642ea95ddce423eff68b88bc2d1d827430a1523ef21fc64d783c3f51d9143ed6d12a91a6e65b6a73a73fb4c07867cbbeae482c940d72d3abe2fa0faaec18dd51a1bd494bd5af6009f3b9b88478ed91467bc764f5d2942d3f0f0d9c5af0da952a557f9591f4c37ecda3cdb231eda8351bac7fa39125f959b7aa2ba6ab3c0e7a9425a5366a05fdbed54088db05de1983e2df73a696fd39874118925e9e3a93da1c54b9f89eb5831b6969f26b76aa6e8dffbd72649ed2ffae09f9244e77684ed021d417ac4e3c9365a89cbb4619e945b22b0384857c3ab16afdf1d80899190864d8616c11cd483d4212998a33e7df873a5e45127700338065a0062499b34efd03b9f184177dc8a879c3344d0a88cf28dc22b66bb04195148517d3df08296a39923ba59ab21d23458e9cfd0438b61bb0d22d039c8bb4e7e384125334360e723b54a5e0862bb100db1fc3599c56942316e2b01dcdedb2ce76e86ae74e0fab5d5af91ad540fee41181d6631ecebe8eb767ebfa09a70cd46443d14afeaf12933424587476977b0ec7076ed74c6f04c29264b6cc505ad01325190050d9abffb7da12a0ed86fe886a610f5acaa16e78940dff5a1018fb411f3a59b7e0cafe3600ac767b1934841c321378fa364abd407302de3292ae010ca5bdccef2e31ae4856f4012cd3d60234ffa90776bec93100547640fdc09104e93e80a76f19337f2ecfbb499880e5d09edca6a60a132ad14c9989c5f2106c1bd13866bd4ef349cbc7c3b8760a12266d9c2c82ed0c574952a1471d9f1dee8679ec198b42f9d13e6e6582b646a585906c8a5b9f476f3eceea55fb90c990ea3e022865a45271232ca878fc2b323baf827945c8f520ec35ec57fa8695cc2b3acfd8666a76ea695b872e7bd15a0a0ab105dbeef45caab52bc6ad1709f15f7f4fda32dfd76d36b76371d88d623b0e86f5e302aba21d60ee10afc79c3fcbcd229ca39e55ee13ae6ceea0a34bf8e4a9071626c9fd8fb9fd47471fafcbac3918c3005fd6f95abca211d2a8ea9973d247637df6a379859d4c4fd39ab44c13be7f30f69d61e19a504d8c506a2e0a807ef3195964b4e9b854973414e6e39770b1159a04a7cc4062af38a5d77b5b8ea55ef2eff0363e3f6068c1b52fabb90ef6f5a655271ed03249863071c05218e1add13bd47c70f019c07034e5a2356c5cd80e893b3bda1a9c8ad0e7ae15f1257086ea0c2fa39689dfd08e97bf3d9ba572a27872be51862df23d214338b99104230f3a888e4b2480aa6a4e7a6d6dbccfbced213578c9f0a001aa13f784592d8532dba80ef00f45d1abd9ca0016386a62ba18e7c62e6673f978bd5f2587dcb86b1d738f27b27d924e77d7a131b5d6e2e0c2469111798e7d2593a40bec4f21c85a231fec3bd7eef19fc1809009f946b9f2f2604d3bbbaa8a35e43a2acf80d530153e779b5e77e62445a978304796bcbb2232274504673bf0321311b910de45188e0830270f58a7a71da0acdd0ab73523fb2df29602946c018bb948f6826793c42e23de6a5daf07f6593fa6765acbc6284d3b1e3e8d977214db86a56d5aaa35cba907fc06ba303754b569a6e2596664e6cbd90a2acc03d2329af161aa61992f8eefc38b7b9677482126137427d78d4b8abb8dd6864538b427870db4ee997cc21531ecc6f5201f2610cee454a8a053dc24600431d45254977e6ceedc0ddc1f1b8c5b87c87a069379531edd339f0506c03d1c8d475145bffe02b5830f9d7bb596719cc94c76ac6ec6d4eca06de531e12236952c79ac0d6a3e804ecd5f35471215b6dccf118b2b40d5f155a5dc5135add57287353579a7b793563e04c6c1c73996923d4778ed17f7e1d6c894925b96f0d7624a369662891815d510317abe53a8b40e277cd0a79b27ac83abf87346ce7dd05d71c5855a667859acc32d8f65e85424bde68314a2fecc64c61cd878c2e5a81740bcbab8d915577538169379879fc1ebe38b2559ac919ce51176963942fd3397cdfc4f946a14bf4f9ecc94e0f923fbb7e59e928892d62352f1c1c51354f11b2b7f4053f581ac7e355fb11fcb77f36512d0f1b9eaf5d91155c1759e97d78afd9a022655ced41bb077f657b1f554485498b182c53a706ba5d9805060d932454a2d14583b55f761527ed8adefa441812d1b170728f8efcb19cb3061078622292579c174d6866d187225fdbe05750987a0f1c9a573962920c195f2154c14cbd0ff575d8c9cf29699bd3515fc7cc1f77c6094bf751873ae6ae59ab2e39974e474be5945c9c165d87301f071841e4545c8fb901bf18b6b285ab9e3845123a3ea2b4aa9363317d98d5214edd9c2e6f89b0de1986672cddd470e6927008650d3950007e843c8dcaeef7589336e35c84446f89f1465a7548dbe26d500303f628a41152d6422a7e013f188f015ba4c50ff17c34f770017264396edc9a51138cff562b8f8602b802c6e0f09d9057dfed4725ce632de806008b78852e19a43beeb1398336c45359724e40f6dffef8285bfc0c6d28e5e01f6f190a11815aef2d05aa7f8859401945e0ca933701dedb323e2c75e111169df7dfb858c038cba408f2b352bd433c62ee1b957966dec0927628e4dfc27472630b7e22c6b0ee8d61132148c3abcb27ff7777028ae6c49601989fe3f402a504e3f91c7e965d6d8d7124ad266536189c92fbea7d229522cf84ce395b8e77592018c2b932fdc4f586972c908815d97431babde36c477b6a617d25bc3d8b3f8c6cf89f7143ae0cbaf79e6a86652357726377b3fd045afc529716180bd3d91b5c4a24c0a4ca9a7efcf1c43b40f45abd98917790912a915fec8df45c3ff70afd5aacf02cdcf105a9ee927b11def4681a0359ec0309bc6ec23a50a9a092f322b9a4060c28b576adc3561f605869a67fd7b71414768c0b52f592e9dbb11f8a6032972c1a476dacebf225bfca65c5bc6c8fde8d82327ff03c851454e2e88c988e44b444cf43c7631592f18cb213a700971b351471f3a668d2c27fa74126a9336adddbc55110d78062f714cffb1640bdc0205207ab623f91eda21e2a2ddffcd50261e6b92cb63008425aea9e171193560bd805bd7145949752bf67cdf47f1cc984c7929dfc106af031bf4f77a435f84c65cce0802dc69fea3c9a728cd5a7ed29f23b2da22cf18c4479f4dd845b36ad3fee04e753109f73618ece01c93191e69e74e6f80218799d920321882f812526b8311d1fb034950e0a29993ffe7a6d9c2119046f01c63cb359e6adfb65406d5263a4d56962f0e716976ce40d50c858586aa5a58391489a1086fa9022833106f8c3b1c418d56ba62d82c25c8c7583f8e7e406ce376bb8e806d7f38e78841069598dd16c73307028cac1f58191a0e885aeb87bd7122c67fce4b8ec9ff2f54f344a1154cbadc2bde3e49492df2c9f2ca60be1a5515741b1a94bc402f13e5e2f0bf9a69e39d387d6ca6eef6f1d595a4f777ee5180928cf99fd4768f07ad4035113d20051456266fd0926cdf14ef7118fb1cd4810b50c6bc998648d1000405d0f1d88a67f6b1f877a08f6e2271dfea5a028d2fe708653dc4ef1be8d52a875d38606058b94f8be067980521a9c94efd3c405f362d25991d4eb96901161adb4d261640daa00f217a778a46a92be39cd6e10bd9aece8e81b5cece280ab35e66a65316fdddc1a4f0934122adb2b2382e6cdf635e22a9853ecde760109cdbde26b6c992a8057dd235a0cf51cf3747ecf799d73e0af08413aec22d675e4cc199668ddb03bc5b6ab0ff73187ed17538e7252452b47d9cf17a0872dfb23879dac7d763ac2039717068364f41663ab73659ae87261f9330ca978c5fcb8b246ec4dac1d37366c650d78e4ccf5215c629a24e8fc23f7f6a42c0012f19fc93a958ca1aa5475d314385f166833a809e3cc488580d0462c931b7a6d2f57ad27b9efaab8f669d03634618f7a4748a4467002db2d4c31e73e926a0d5cda4fb0c0095fb24c06897ab3216bc09bfb77bfa61597c5bd65ee14a451c7cee36474c0525a176c62abee46a547cbdca4abc0b34d5b20d1c48fd67ccb69625e396382bc1d1fd912e06b05bacb19afe34635cd49a3f87a207a106b9a24d36132d2c64bfdc764bdf302640b519d6eb16862409cad9f4431bcb93894415c916b34215598d86375365c4a572d5f6d0a6c2b6076fa82fb272bb598924227874f40d5fdf6380f0c25d2f950a325dde8571532e8a9ba4cf70c96afa0f615c903b7be580838ef3b844b4e5524e8e54b324283db0c6ec8cb049e934571776d8b416f8fbd2b09fe8dcd3e76ef625449c7dd1df47f2af59e3d36ac7cc5fbc4b708a7d3731c60d61fcc2973482febdfc10d5a5c890e3ef5c5ed70f8215133fc9afb5f3d21abcf8d6d2265f02e6976cf2563f83ed6bed82bdb043c3945260889f7e68ff1b41015e89a496d847f15fe2533bf550de3650a162fe3e73bef3a966fee2fadecfc649323417f823a557e1e48ed7a1112cf81fcf5179fec161f73e238cd44a0163e36856f87848c2c1c673a656db5523629d035dcad201746fc8cf435c3f57071de2f09d8d6f133a8a774b37a91d06936ed1cde11a2d706c8ed4ff89917f6815ff6e69ffc4fc6dcc450ecb9f98d10166d5dd96e961bd915c4f6be485756b5f6b5e6888c6129d4a358f491d1e834715953f0d945ffecc2935edb63037608f0a6b572f79f3965a41ee0b202443da6888b2f574385d940232ba1d858ebb458a8f7624e1c8e316ed5d803428801f7a95f1d6513c45e07552653aa6605520412385ac0b1e1770ad97da70bc06e0a3969bd63615292645849c84222e1ada06fd09d626e954a4610ff6bfa980a91773ffba31f1ebaacfdecab5548232fb461b29ce2b2154eabaf93c75e3e0d33c3a1385fefa6565371fb0a4e299197baf28aa63733223dbf4474d1f8b99e26064218eae8bb3f5cc65dbadf6dae4ee7644ea28dfbfb774386f7dcea8253f16b0450a112706a9163fa41dc423e7c3630a1245564156d0d298eed3fe08a1617613e5bf7ce8e866f5ad20b6ccfbd84dd02d5956a85e4364576f370374f56887754adc66f0c57b01b2e4859e03ce7decb56d61bae178b3ac43f1ee9dd03921b5012ff026e109209ab6f5d3a3a522305eceab99d4c9934531f7fcefc5690942003922744003970654a1c18790ec8453577cab3475d9fee223e4e1a748c797241220532a4aa829e835f4effff1179851fbf36529a9f3306dac462fbc4dee74b2efa121942df15fe740a54edd0f1e5a4610af2e7c06ed131303c531da33fd10847dccf842c760a1898464f334206408c5d98e3b325ff2b2bceedfe22453dc81438d8dadb5083c6fb22131610f7af2a5e68d4f4114da7cc0779f50f437c4a690b664a9583e2e864ed3d5b5fc146bbde80324554cd3075a8f7e7867277c42ed2c18028b65f0b1c7eceef140d8a0c1b67259f395b7e0bd96360c65593928d5295c74e2475d3b832e774c174256354da26fa274f89441c0b90ceaecc112cd64908410e379446a665dff9e3842f05f9d96841df0de339db5ed0743d06feaffb66af1975f90de541af2a9139c22dfae11d21f2a09b2e35c6e4ee30e5a012401d62b61ed4f8577badf4b641aaeb28c63d4e6a0b119e65e057f0238649570dd45d10c5b70ca22065975669a09f562ac5d6c6d9e1d7c7f5c851acb6b83a42afcd92d5baa1dba264eda9c4299f600469002b84599b62d2e60567769ff0e3a05355acb9e3c5df4cf49140df93209b1636e2c02753b8ca28a80f36d58eb8fe7fcae339b7e6c937acd5df6eb4563005831684afd367fdf579dfac3206790bca45fb148f6130e97484985d055af9757d0e5604cee09bd4814eaaafaebfc90bf71eb4163c773ce8768e2b66add9ecadbd7a1deae881495628338c0654655bf1fc09a4380abb5a4cf654d4baa859f94f3d9406b41f6c00feeea6761d7c4603f9d1f63463610b6772dafe3d0fdd286e2e547604adb2871c710e42b8e60d8bf53f5e7bdeff6403cdaad09fad81253288fe62e924f02785378da3c5601cf59c70022e9314d8d5543568900d60323ffb9adf67ca066086b3bff512063b65cf730385c5a5b706e6a814976b3d91376923717722495b040f7ce53b8f54de7a49ced7025f610e53bda3b513861984c7ddf035394e1a3510e4e9cfeb23d18fd622b267a2ede4333c076054126a8387540bd8c95255a2253016a4f76b55b61cf52a362ef5a76de28825ed375030938537de19321c359f0f1f5a01e10e36dbf453b13f67200d63391b3d021d34acadd80a5c899bcd402c3ded7a0ff01d9b0bb7b770044051bfa83bc55437cf60870da85ab9aa7d509b4a4e3b7a27be2f5b7a8e863908bd91dd9a6ac5e496015ad959c2154acf89870bad5ec8f92336ee0e259ecef1affca142b2ce7a0ac5456bd44b548a5a351a91a5fd6f4d42730fa6382a5c3a4b13a684be7f4b526c3ac4531ea76b547ee3fa24ebb41237b07e390e176ba67f3873d37219ae378e0238fbfaecc595a1232ccdbc3a995b89b11c47302b127870b83719acc7493681017cdee85afaf434627ce66877934ebd567c797d25446317b81e9a9d74df314b6fe0b2670b07701b34006097c0b609a98a090085983238ce4d88bed459dcefcd7612ee8a5924107f6279a50d036f2092a9f74357908567957868f311794000c8500d8acc65849446dd4399a912222061744399d1de855e62211b24a8331a1a5e7a59743a366d596761bdfc1c10af37302dfa3fb98ceefcbb8549b62f81ba520d54a48790d92e5f37bd25470e7d646008c44183dbdefd935af010241f9bef1acb94fb43dec6f8e3caab5c062dbb3b0d685a80c6a16d10051a34f0a5fcb1e248e14f007d81d1168d8f6cac4a7a36e30ede6c1ab21b440f2a8100a8ce9b7219130d788849c42307b245b860b899e9251263c847f263bbd3e55e50aaccf9d86c2040cc3bbbac8e396c21eb392ebabce554c9189b47268a85cc059cc31285007e449a3e8ec424fcfbf23b0522c9c89af94ccfc5dafe522d858056d27dce17914b3cb258214a11e012907ff7943e2456de668152b09056eeaa9add57a49e317fd6a0d43658290927a7f77a785e7ba37c850863dfe5e75fe94670bd69afb4ebc72883ec362650c55bd20b0fb66bb3f335f337a91197575f8603407ed33700382a930ea379c1b1e2a6045919912176c099181d04a0dec2506fb34358a6de40d558052d48c839ccd7bbfece76933dc704cfe40689db5785e653f5f9b989798d9c1f876a60969b96b3e9c03b2d2128b3c4812b41ca83be868449e21fe5b7607b474d0e1c8c74693417eb7c2d47d6dfe666293e22a12e2647329cf043f77ca981f328ff8dff057210ece50c152dfbdcfb5c619057fbfbbabec745a3b35f0c041347a8bc9eeae1b6d0dc67ff6da59efd2cb5149d6e78e3e1689b04deafaa1190101585326b1f723e7226538ca5a3cb3942e3180d5f953a8dd805ed17d74f599cede780ffc6b1fbf44f09acfb3615356e4fe40b8e60afd982544cfd62b64e30aa8d7578adcad1c663662a198dde5dac45da77f28c0403b149ab7995a1c933909b9f6b1783fd3e6a65f519dc2976315718d9438b9a23117dbefc0825da37c7192464d59eb03ea8d946cf47279d935f4dd10d644f0b63218cbf2bdcb436804b80b1a360dfc60ffbcb0216512f42c8422f27b35c686f243c3a8256c4aef2e45294809f6303c13d5abdc4a31552a92d3f8a590329103054af97f38d4a06f8f668d52e5d5af614afffd0a2b9d5b2f082219cfef9bbccf7593740ae8ef88b65f3ef3eac57657154491b207a9aeba8de84643560fd29b52102753199ecf7bc68cf21bf3c5a5fa8b0459d0da562e174d7cd623f4aeaf9fd971cbcb37129f8bd4a706cdef27881966ca883fb68c6218375bc14927e807014712a0d6a869e8855ba581eeb34d23ece392b0ba6865354f676b032075d1ff8d06e1a94d66e2f5fd125870268e5236fe6acaadc94cbf4a4126c45ca5d564c18234f6c977f5ef56d2874226ce01efd35e3a22b17ec49aecc7421df8f68273d9a29bb478aa216b0fde1a8754caa1afab5a64ceeaf08c525588c1812d1c139bacac9f75f37174baece8a14c97db7173134aa88430779f69b38f38d6abb45492e40979736881cd2c056008a5732ebb6440b93daa7b4143e21fc1f07b463d2f730d6b9c93ed787ded7cc8b022a64ba946e89c42009845e93a04ca604a084602b6012dd2a648b46d636b0d436828093c2e876f542d98c62e77eacf65886ea54f9868f2ffb5fff98ebf3fbae9766f5a80ceba10e9a7573f0ddc2426f14268d7ec4fbba8fc309d225b308e62bf20470a83b33fe6372f6ecae845f679d9571fa86a846c9a8141b51d8f84d97f4bce3c7c0fbd387f404b051066d27dfb752c8b34a5d7546d67c0f5738a531521762309daa85adb5ccb2847b6476de242fa8409af5f1e2260b795b5d25e014fc4eb7cf2ec2e95a7f840d394aa7d0a3819590b3a430d48262a60e5c66772b7976cdb0d0fb9cd26e530666a6a0509dd0126e3ee94785a627fd13ac593c75c9d08b4a26e7dd1632f78df5ced2abfe9f7d84425401e7fc7b5b0dd611376285b748646f4a8e6624cb4462beb5a4a07b4104393c9f8c5498dc68bcd553195bfcc28345e130e6f2d7a5a97acd9303f030d72599f0cac6c16d6aa61d0fea4e3945ba67f06458c90b3648fdc96d6b9a6d7f6a56e071f748cc9dc16ce043662d3d61a24bee72c434b35a37dd7f86ef9a7916cf1bba228a2c782369e5fadce30e74b6699330e6189d9bc811065c43e566f49d7d8b365c59bbf97964757ace9250d88c858c7a5e9f80b87d21481135e1a071b4b7d5d7876937c6c056916103ad10b3a3507607ca24a47f76de08bd83175e63d5b66347ef31fa09b94b3ac2610564a179b4c352e5b6e6c16bc58944e9e46a7e85709986e67c95ef95c1630d6aa7333014d3d4af172e195c28cbb41611b34c1df64f53c1cf5e680cbeea37574ed72ddc61bdaffae7e9a5596967f5b7e52d4ff5b569ecefa215aa14bf01552f1d264f75dda0324696dc3adcf2611da33edb2dee1d767e4c0ee43efba89ff175ab8d61b5cc0da0cca9a66ec2b651d17746d83404e84988477367099729736492630619da108feef72e75cfedb892d8b593d6ab85bbfdefa128254e528844597b34594b9ff16e8d8c3cc9277dbfae012611ac6a79f2d132e9227fc6456b9fe08a5e2f614ba3db095005488d602f9983e95de768dbb8e9b87d4e5028aec25bf9a331804261ac2dc9e16b62a0bbdba6fb13f04bf7a8849eb0760724dd7f49ded2358ad5523eb35954b71c7ade6212250a4aa0ab6c5661815e17c9baeddf43f1b0fd8dcd02ec878879afd1060686a34bc54cc7905b60269d8942954a4fe8baa54bb9f26316400ee275179ad8d1d5c24e8413c36ce90445e9b37c3d039957537656021fe332ff376ccce77446e764c13afcbd05eda296a4438010f5cc70a732fa73491eb11eb58c946e6dc8fbec92a4b566e472f1b9ad5f8c3605885d4bd3f9452ba45b854e2c439f466415302d3d0cb0049a8489ee61f48fd00b2224aa6a01cd8d851476235850634b60fa97687f6dc2bf6625b6d2f80c3a3de3b2ac7b450ae8396bb02d2e268e1ff58b2df144f8c7f87f7c9b2b56cdbd4320feb10c12b1f035c986440f010f40b14605c8eb7177fe7c5fbcbe734649badc152a935253944a58bf49be7e13272216c9d0f7b694f127122d67013eeef78342cc9aa7fbac57f7de9ff5538f2981700c31cbc3c2647e7944cb116c084bfe856ba4ca31964d5452a5603cd8fb5e4e2b98fff03db22247b0df91257608a6e26f63e39c166cd289665b349e4ec9604ce9bc99d5020667ef65dc926ab4d42417d7e6cd92bcf6be51bc9f6c45290673e4be960b1cce784f5f2d943aed86de7ea3537d6af4926973dc695a07e8657f00bf48dcb3dde9c6e5346519b3e834cb8e15887b9701d466091251f67d8ec4004b6bbf66bb6a007c64709ff963de11754c40080a8404bc724c38974880373823194ea1fa276de6da2e1704df47a2c2407ed2ba5d9adca2c120bf9158d561294a4f5b0d7b8d05e89f385f6a4e1a802ae17af61a40348fcac4ae075ef4021523a23e080a3232934d7951c51bc34555497ca8e4c18a20b28e62d54231868ad8d5d457ef17871eb6fe8a516d9a6aa9cd6020531d4ad0941f91b80a3b076e1fc039ed30696b62ed3d23d3777b5114c94d898c683f905e39af2bdf8efea34449fba9a969658bc17a368228479e95f17ef5bd1a57e221268c171861949e8620d67c21c91be13a7f8ab08e9a8782a41b56d82f9cc32719452ad9896bf0e8a659d0704149369ce1646fd37c32ef456945d9df20bf0ff5348e447994738c8024350fa949a757880d1bd67239df8310d7e30efa9b2726abe8aa3b5db79a9514d568e39cbbc961d788177604e5e18ca228e3a4a18b17f3ccf5ce186d783933bd5e9fad3280ea68c3f323df72459f63a9df2646444e4b9b0de9c56fd87288fcdeeb195744a16b4d5cb7b18da3a2bf3aecb9b464ff681703dc7ff5302b19da3cc3c271a583a22a4065bd0365da5e96a609f1b9a8569f20cbfba2a02d66965393b97b2f7119f1a80efaa7970211296a6d69ce02337f1c39868815a28a7f9d59684dd79946fa2c0b15321d01cc6ab4bb88ee65cc3631a54de76e6bb72d618cad7a0ccf5729d6432301e709f222a416796745abf41247824741fe8020c0458c96f1fd21402834c4746d3249a6da2a849883b7e1e353e08b474718b0aafedd02f3360047a66e6c4bcf1d2f9ec538d16a2ebe3b7e669dcc04d0ce88d65f773e6c2df0d76bcd7bad2c0532d3e06280e80693e48469080deba1edf607a48d21ff98f5f9fa7b9ce29301a30292fa1135f08221a656007dbe84fd4052386c5979ee56576fe636edf42c8db7212609b5c0bb134ffe0d5fef4e7621ed580671156091d9b1af03490b29adf279377c5eebf069badb14aaf4bf618fe3df8e8562ba5d97691848df1085d92d3926108f5c40e43e4da7e248c4906ced49de582a97250b93b46ed8c24777c83918035a3dc3457f02096e4d4336544a1e83a1209f9422b33b3026a7783738f831b68168cc4e534f0f0914b284b91f797705ff81ee2c13ce3b6cac90bbe9058f85eb6e0731b27e48cd5efb05fbf67f61d8c988b0350117d1752d3544a6731cde9e95b30c208a23678995b15c753c7c1370643b64fbcf3eab3b740704821c756348ca2c4316f1c8b5e21460483843f99ad033d3311a029d54c4ee2d5511e96940dea340448a53c2f294fbb4cfea2dc5ed148f762ea2fcc9b31915b3bb2138652179b7eb539ecba9c78dcdfe86a055453c18952e68fe9917431c5ee45924946a17a965640ddbc0ae0816cb6aab9cf0d5ccd8cb3ba29914706b89b7f35e44150e68971f4b4828945d9006319301b9f3c48774040694fba5b872b4cb88cf409cee137e9d19202d4c8742ae749a18b7b5666dee6b16975ac534b46de22a1a17bf106aa3a1460d9a2d20630eb35968c7c78359e063e2c633879216c105de07676a1a5c0595b56c6aa738dbb8ba1095412823835a646a3d7ec53395b0f54c27e767233510497d4dbfe5d125b73348d259691e2caf85570db01f3c75af8aabaf9accda106a302b591ebb5cf19dda984eec109ef34c399109057f0947e7084a92d6e1c747de956206a9e7ab3490033211e3a740dd3996fe5991edbd7013d20acf10e08efc22b9f67145b6a867079ba36ed9b866973398211c318413a6379de48fb70575b7dd42082e3df456c621d89918fc26b6142ffcbcd82b44fb8102692f3cad3ae07bfbc07061317c29e0c5d429aa960db07173d5e86501e2275b7e479b78834a6a144552b358f5c0ae79dc0b46a9086b59b4c6d0b95195320b54101c06f35452f85a50296172bbbada59a5351efbb27118fd04ffe449fddb41055a914c1191f9a6d86b0ee70f6cc59976e691800973567b6abc83c7d594255954f8018e9dfd1da676638c2022a2e6c427e745b62ef8f1a04bea2161187f6f5c1ba1ec20ce1d8946dc2d29ec1c5930e49ecb08d16c20d89e06ba47671257b050fcbc39897a76bcbb9ea9ecb8541e66142ec564f231c75eececc9179ddb8580aac2b9ed4feea35328a6215e42406725fbd05b0ddf86c2dc5ae4fbff699832993d9dcc74d2ac1b4e7ae3d3d73b6468f6bb5cabcd8ffe11b38a35374efe3b7bfeecba3c624761661e1bb14cfd791321b9b9124bd7a60f7dbf423057f15af2de0f69827238cc4ff3b61b1690b78a5ccb244d40146fbcab2294929d24048aa22dc9f5dce214ce721d5170a8c6d4fc5d0f80834abd36e4a12098a09d2ae3f942800ae67482eaf0cc3a56d2d09f64021184e890e846b0608d8ee877cd09e6611cc2b327ab156ce679c06a7273df79c819b16dc3fc6bf3dbf89277c8b99692d1cc12519163a65bd9d52989c45e5ee8c90dbb289b1989740c858074ce7f38e79ce957213b0c2ce77e2d4c26b7451c09e05d473926b015f4bd7979fdee2b231108808eda4a654f82b57e5b207d127b741e508fd1de48bab9747b3012d16f3c0362bd672692555e4e0044abe12e260285e1484b5144020e7ce304c579aefa45a97cc686bd4387b22bbef3552eff8724b3c11a606935785aae02d29d1c337e7e144642829fe9c7f2adf00696d0b3843a94786b73f4e8592732fbdc09ce6411ada0e86ef21217fddb65286239ef7f231446ee347a95582d65c66088887061a67e5fbafb0d3503abf3b149c3e22b7908a28b115fb2ece4747efdd3119882ef905caa0de5814a1328fbd8a851c2bbfaa3f39acb4535776e21a355c8b059d0452007d31de8a0cad214e9bdd4ddb23f49162d45c00c9f2d406a36188ee7c2d51c97b5f28cd94a7cdf581eda7947631a70c9a69a6a5427a0fcb898fc6577a2e361d5c238b970f9be13ba8800931d8ce18c9a624846109976230b84075c530129dc75a8c760d4682d86ed1fcc5823ca7ebbadad2a351503e17f486781541304ce25f61fa035e0416564de8fad093eca6b38d64519f43554e646869ecb068a16200f619506ae8cba95c11b114149cbddbed7d2367ac53fe5eefef9970e105336dde14fd5b5dd0b64532d7eccc268b9d5ff4263fa06893f1e4b163f1223df0f44d6a238b1edf72763b3b172fc8799c64d600796386332530e44102af4897427b06fc84344e1fee5099e519013df6e649733caaeed70be33b1f47faaca6ca54de167094a1affed45745db5b84ed31325b59e1b0a5f2bd2005e8119145586274745ae88b9acf0868df2a8d8bcf5c19adb41a653d9fefae70ec6a0b539a30012f37112574d5795492363fc4ef1e0b65677a37904216881510904d79b77deeddea2cae8e44de48138c1b8c9284cb17d1384f1813a9effaecf1751bdebfabc320098602a2711df36e243c55c308054e0fc588fd3d73062247a623c2ffef10ba258a6914d5b90ff85e37d3ac5b69243a8b20bbed5f999d1c7ac6694e57f5348a7dcddb0ed4e99e20cb8505c5e1b2aac58934419682091cd41ff33bdfe54d7711150c095f896241f06e4cf7334f2530756c6de23d47dc6edfb6d3e53c3b17ea1c726e565ceb0842d1ea9cc3da68ef8c1fe009ec3cbd9027de2cb7208834315a73264fe66f496923cd49cd5701ce15ccd7afda491f89682aedc6428e820426c6d494e8d82c75b987ce12983d4503c88e78520dfe2a48b80ac5c3f5385ffb587558565ceae2914b07da8b47cfc52511165879da8bbf1a52ddc9b4a0e10013edf8af86e8a9abb1fd8fdb6de4a156db9d4e903e1fb54cd8ca1f685ef430d1564ebce015916b05d13019e4c6e114e81f045caac373bb677596993a0315f52a9064393c53fef4aabb6d5997fc12f89f102ee1c86ecce6c854faa4d7caf6f7127be9055b23317928ae515bc4b70a31c16449af7688abbda4f9b742213d74921c9bea2dc6e9b21fead0e17eb523bacfe31ddeec3e2c0ca70dc44ed5b38ff1c16da65e39f176a54d169664b061a2a597f295db9a74668b3f1e781f240655d537896a71597abf95c9f126650aa8fc2b6398b2c8522fd586f1d310485421f096a57d887645a3790bc18429dfebe95da6802918f08661e9a1c107c5935d1956f4ea486986727c28f34c3a152ee0a86b213d0158d34945da8722c2ad9f203049d54777fa2bdd62a0ee226fca26cd672f19b34e509953a80fc9301aedb4163877153c82a816353fa084e15f1918d2538cc590a8095aefda38a3098d984de0d8e1669b425e550dbc6c81cf641554c65e265bb28165a66aaac9579f0230134ead33c09f34e5157358cb8da02749aef1ce952243f59dde320d8049566edfbf2618a800e4a590f8a4b7b65275e38e3a4a30d9810f98bd0266dc930c981269bc2e7569e58f1ff0cfc98b9ccfb342473818c95175a25bf898278cbe2ed80f19d2c8ea06713f4f28c8b223207d225ca7c354ea4cd1bc3c57fe6d5ae00d45e7cc06dc4d8e724f1aa7acf5be68b79c381509e79600b44d879d99f1b80eb7443ce25d733f6d344b696cec12d9bbb0dcd44d4482c8b801270ed024f0219bdf8d1f56c79a72b7c4dac3a13b637df9bbc5393f3e3514e58b233d757f1cf67492efa7ef253d9aa3c0bdafb5f2964f0e9746152acd1b4ca8b9fbb49463272a7fb09747528c9c457d073b2eb91bdd90ed37c3e6a2b9fd5cda77747479fe1a2e08f90d6edbb84ba4e0329916eb53d9f67feb63b9e705032c0796175e788d0e3698de515762cef10628f6bbc9bcfdc0ee467713cc0e436c42add781809019cfe55a37a109cdace166a737352542469a9789aa3a1159d175c761000a2ecb3f7d061007b75ee6d6a0cb7733c380cd90aab65c413d9104972654685de035e79b70996b579152bd073e2772723ba71f1ea079573fb2c75ae95f024d5fb5db3e02d7eac80cdd8c7bf61beaf57699a77d2c63b3e6f537696719fd044d39e354106e93ccf3df52e2f86c98629f34b37c501dc73b5f8fa7fb2067e03043dd42059e3cda717e2d2aab440ac05f75f09680285e97e112563052717c5e2964e11b0435497292737b2e19e1c96b7c3de3e04216ae02327b24e512390f931e51ad4521db58a7e891a589e8c0164da8140531651ff0bcff0f146e63b70c67e57275e2d359af528604dc1013134ae6d4b4b398dcb608227cd3f304195b01c01061a361c5160a7b2d9f39ca2f6cbfc0c0ddb731d50d1a27df4043f973d59e4e636289b9e789f8edbcb7962d0b897b136046703619bc4465adecee01e1025a39fe4215657ce9e16ba2cbb600ace834a7791eb06d244c541007702db25d545fca55b14eb43af2ddbee1733337c9a204a90202321ca6527cae6a32b80164fb4c3da8f56647f14077ee1cf84d6b6fbaef85a8df808023323ee0335fdf368245cc2de85d7d51c4298ab83bc67f672f8753e1a055a1efb69e048c523ce022401223892b1f898ac01b0e3159b8064bf51759c21dcde2b6ad3cb413d54760ada57e7fa1817b1710b90a8090e7835ff237669c3ef3da61235d184a34e15e2184e78eefd7f7793118f2b4d363a2305d3b19348a386ea59559d8192ce2b0d9064f04b23ba8c8280649eefbfb3469a1fc965db3e898371623581f5c7cfa63c117c2eefecda6054d77bd0904d3ae0c2ad0aa2b9e9e808becf13e240e979254dd8f65e5a4e8b5a25e6591b5be0c87ed3444f24865ca5c6d87a5ad504cf1d125e3275f60f5c0191d3ebbe8608fca98a73daef9c2a166b755e21191a79b3c16a5c5dd434f868752d9e7be6abadbe9db2af965e57998ec8f4724e4979b7851bc96f25324ffa39739b2135fad8b6b60dace24b81d0c15034dcf983171ea089d05b0c8b81b3c6937f1ecac81ae50569f4f08cbcf173686a799e76c81183180706f9600b5c2d83544a339757806aa22511af628da508d56242447506273161f19384e6fd199f29d2332c6ee0be112eb7197c7af5093a3a361cb5581f2e50a3461296cad45bb7089fe28b0c47750a991c15a9c64189ae9582cef11271247e78a9426b97d77c479ae37352cc3dfb49ce322c2a6828c7faf53e607d8ea32d29b259ce35d54cda169a78537a2b1ca49fcf20bfd2d8075403e0b88b21999d198bd9a108f2e3fe6d1531964962c5fd6a3be0b2173b96c658e0a37ca63cf461203ee7e7d064c1279a2679b62a08553f3405647a39fa9ac86cfb38819fa6e3ba5b5d3b72c203aac5f85960d8759e5998d63a12ddfd39dcc92347e42200848191451e75f34cc6a7a062d4157187b36b0faa6ec45d764842f5cea9fd4e46c9493609db9084fdb379f87391f975aa032ea1dcf000cba3c53d1eebf0f55ca8714fac2c2ddbbebbadf3f24fdca4b5eb3761bdcc3ae80bbc282945a7be155facbd601e4c3f4cac2eb852ee83ef28039cf940621320efdb954cf469d41e07b626f7c99d05e4bccb98fbe985d782e3ee2b78efba7896d7bbbc6e6d72dd5ae0057e80b0f85a019365e7c0eaf785fdc0c728aa9dfffa7fd0bd9e756166d04769835eac2f1a6a562562c41911be91799fe444096fd1dfbbf7ed5234a7d36ae3a038798aa074228c4c69b38dbb71ced2dfdd24193a9ea91a1198fb3e79e6cd69c11401f1cbc95615cb1acaf3dd288f222587f6144747a427868740676a38bcd990a2e2165e942260f60586f278563646b652f8ef02827daa4f63849280dee3685742fa201af71042ae19fe3525986190c780bbd92506fd804c49560fcff1fc94406fd4dd4da702f3e7db7a5dc5a7c6d636c1b88cfe11ef097d18c77e4cec1da493643bcdfaac1dbfd041817f3a00dc7aca8eafd4d927889ac6fbe41b7b102cb85b80ff22834a095d9e8c5b838fd2a6116ece84a770115d07c41a871499cb98e226815e6bea622fb923ce36c9b0912300a7784dc365bfff62a150a2aab9b612c756a844d90d87545a551d46db59f6617c58d20b6902017182658c22d54995b9388b99d60a04b64b0aaa5c2024a447d663dcdb817f360b87d64ab29e2c6f314c955fd2dc5842b120ad0fdba330c50ff0854c01d697abdf9678c9de3ec3518ecea2a41907753d4f0556e06498848aec23e8dd0ba843a74fdb5899466d750c086c27613ee12cdea71a3331c6a7fec126c8bda75d14e1e6e50c67e8d103b23dac00ad813a59abf4c51bf8039cb1b390f1ce9331b18322c00d21b022a877c4d74bb6909fcfdfdec25947779bb03df766b189f1e353100253954e9f9c8922c6a9324b0d3f65c9fda79017922eb14693ea2f395661afe8103496896f84c8de7cf89968b2ff52279db6930e7e57d328d5a3d145c9275ff5cd1f6be778be86cb82c5bee42ee543f018d1386ab573d5bd3727e1cc8b4d0f6f44afbbf72d452c0b94bc3f377504f5991c51783d36de8f1ad1540a7c8fc0f41668a1e26b8db1a5a21c06201279fb841f51b0d86539728debd3c94d17f19d8391656cc33c0855aa6f0328b4e15357887604f1f1408f74ed316f8036cff7bbb53424f8b06531ba1f44c82bf135d6a1eccce480bd4da8175e7c02bb17832bba8faf6c6c9a142ea86ef2d29e6f08b6413dfce723871044a219f20a60ec1eb61f3f61b316168bcca9f2eb2f6e3830ca7c0eaf93026825d82fcf7ca585eb77664a3c34d4a1c2b36ac754fe6d135ea8cfec948c810b256c3c9c079fb43b1da1d7a938634b44c321c678943d2ea91c77484703aa7ab7a42654e58a9e7f11902fa2a165f3231d33bd20246d1e729bd25cb8d64b21a9e2de0fa3e72665c911859ee40becb9e720166b3eb591c806f1a3d6f3dece1bf222000655f9772ec7fbcdaf485c2ec3eaf24b2c3b93d3cf9224bea69690de8ed8ab7a4a40e7961d49a0aee955fdd848eea5b77213558af84572f3ea4c5f76f4fb299a6a467a6ac2bb43c7ad7e30a096b3dc54abb700f966fb19ed09a1a4a46de8119c4e57c59847d15a1cb610626fd7a2896fba313238b4d922ddf6fddd821c699b2864ae52fc9697b6276273b797c3f63f30591e7333b3a947c4a2b18aa93a5beac33650a4f8c240ec2820107025d904267257613be033aad44974bbf460294889ce1db05802e9e40ef4e7093dac19caf760dbd1fefe6efb18f4c3991fef1ae1b85d47aca2de8bb0012821ae4b40d61e28b05f74e16952c07541475a7bfb3a9c7a4d6a1049812631fbe353040d55cedcfd5cfdf5449c9e7d4668c1f73329384bea604998facb3fd4fc40f6b1b1e00c86f5b49fa126cdfcd8b3711a92d57e604e51e45b9fd2bb0fdfbc7412c3af437e817eac06258909c0b5b44fe18da0397f012c3d5c3985ee88017c6aac658658e67fb6de4ff2284f37d533bb434796c486d88ae91182346da3b357ff122cb4cdfc2413ef2a810ce630d880bdffae750262dc37bf26bc742290098fb40b827ad12791573a6377ff4838d78f274d8768208b6a43f64bf494a7bbca2abaf6fdb563cb5faae45bc0bc8033af038bb04f72af85e4f2d4567c204ab0fa7a77dd80e620cb56c4f9f29dc9a84e46554951fe6a8548440de71890baf923162a1755e79932192b6875e0d8135bb01a4898787047b180a566b63cc4d4422102b87430f046de296d537388d49fc95faee72443b8911e5144981c00d08cf256e0d45b217cf109c0de0f686d9f500ece13dfc3801e02137387804f72af80a4fca6b4805fca117f17a2a0126bddc4e28b4feb3d656e92fe573eb858673dbf76bded6ec4228755892a5ffce5ade1a3b21c6474131b9e1708519590485cbacbece649e13ad6ae5617f9e1edba948cb01e4eca1e9dc236d37eb8969fcc23cde31ea10a4e18295528c6e7c2f8f947b28e1e47d31d2834eeccb11ceb79be4a2b75b060dbf789517907586c3da22a35effc0ffd43bfe14176f705eb594b8c399ae436175f083732d1e4b71e1baf4c074a6ed92bd4c615b6b75a6be5726d7037029fe6119f6e391f24584d11e982edd5d51af5abaf52f1e1c7edcad759dca35ff355ff9c2ab18a4fe368f54f4d2c610ed9ade65fb7e4364a83ab4ef619f47c691d7a7a701c5084bd29f6b37fdfa0e9e051e1c1523a82f2068731f70b1204521dd461a4b25f5036bfd09a0883ef8dee6a07943b367bf9f4e805999ebea715120e808af595d1486fb7d0c173316c377c5d60f793ecac21347467acfc6f97af7b4000063392dd2c79f1d578a855f2f6f986b0e5a8283d26f6a74ba6c63ab3954b6fcebfac722f8d7b899542875809c87d69ac1ea78004d3ecd01b6c46212c6bf44738e13923edfd7cd5d2abfa2a85dd5170164150609665a9286aeebe10c3a53f5edb3163ff2e60c1faaae1c1331c5ad929e2bfd9213024fb0454df06c2c9316c65d5803ae7112a10ca68a561f228ab17e92142977ad3ead039df9be00ddec670632939c242214471d779f18b70648ed9420ced1066dc822ecbb2584039a252bf2f504fa37721c71f67ef26bddbe35a970cd1be8c3c529a92012ce58a5685ea7f052530c826edb83957d47494fce5f20a49832808599ed6b68a6e59032e2758c851e14e0cccc50a0310e11715c6cc944ec73a57805f02e259fa7e25ff10d1b6924c023a92bd76a95f0f01f3b66fbf48eb989f600fdba8ce4ab07999ae8ea45c611d78c98962d5ce3abc14f806fcb1cfe5d7edf99a83f5ca164fab2ca8fcbbef9047bfedc9334592c139bbb8782b63c53ea76f9503d489f2e4c0769531cddfa24e4d2a65c5a7c9e6065800bc5e387351117d03fa4c1b9e83de30f0900e0be3f1a56299977f11cfbbf5ef311d44bce4c5fc59824237f61b67a039dece3544d8f74755513a34b14b048b0e58d0d5637486538bc7081a82b5c46753a132d788dfe4a4109af9bb805991e187cb05f098f96459bdb72836fabbc2f317cb7e8140e8b53e6a304071c5d615943f8cd99f1762f3af73ac90b9b27305c2bdd630f68778036b576467af6282792af675c250dcff9e2ee6cb9472c4be2869d5aefe244a201fa36c6a7f184158ce1c6f775283f69773e5a531b33d99a2621e59bd43572f9bdef239209452580c03f36c1b10eeb4ec8512f99a34f687c897db80ae38e141f06bd114a1795cdb91bc53fd6f3a968e680d8d50ad6aa20fdc491fa67ad87f3f8090524267a267c5d205f17994d5194212380f95f6aac9e9fb64944f54c7c54e4bdd574cd33ec457a053fdc1dae47435feaea02e132e4276e3e66d2b49e123a3d86981300981af0b29bab52a749928204625fe1fb85c3e1bbfc86522b6a2f45c9ac8fb170262c0ad057a3faeb86e993653cd4ee1779070d3190406caf3c5a3d70806de60fd3ea9c4cd0a7f6b9899aaafa565f19a4c423bfc52dc31855ad20f9adaf9e662b2a52c7d2318c11679a1a85d46af29d45c7cea3357976c7b139dc496ee5597409cc4c9c5f9c6051aa121c7963f79c06f62b0681429965509ea034e160fa8d631555daffe418326c79576e7d96a6f6512578a52ea87a601ba3b2383df8b73c71f960f68792d1fb21b1afff2910329571a838430c1356a0ffcae3647becc729d47a1121b3515daa804e82930a6b8234099e19f04204fd3eada78facd6749509e0aaba4c8d797cb82f96ad4846b95463631b282f210428dbaf4abf1b3124a0af66002a53f7a481a1be381db04b07b2720b2155b608f928cdc9fc73b2556a8389d36ff3d10ccd8d20fbe40950b9c5133c2c58c484f64627289ccac9374df4b47c268b2f445f2e8d9ab47160455019ae64b020c5c5968bac80611fd15735b6957d75097be50030833e5d1a3d9e46a3f26fab6453b2815a4a7c70e3ad4d99df298ff272889558245d8f9c2774a39e2052be6e6310d35834f530a7f96cce264a2869c159e065138973c5e247246a527bb60d7939ebf097062f8ec704277c5acaa67710be6f5f1e96a7bd7fcacefb4c1e4bbef74e089124236c2adafff59f2917b59425a4caa61eb2928d0219939d11e5348f81a83827ab2e6994b95da9f857cc387051e07861ee172f15f9fa3759bfa5b87bd39e59f475c8dcf7d555917476141dcf2176e9d7eaf161b2c71006e98608e85fc20b86f1b2a8580c4744544329b4b576666e0cd7b03ce6084c7d29abd6bd9c4bf6718c88a5fee3affc06522b2284b4a613f7e8ce1521e82f3f6881b4b057d26c0e4e0244b839651c97dcf69874777449d5d89fe6a7e32bf89062ed79910942ca9c37a318004a3c0a710b7680bd5fb223b2430ae5b4935e886e6a845f5540444474cf2fef9ebb9fe302899a2c6cd998b104d7a773fa5dcebc6c1203264fbf7b5f47872d39ffdc4eaa70ac2747e9907e07653730473e1225b763e0063db6bf7301131e93b55bda9c83d043177658faabaa151a3da439b453c18225e62ecfe5285a3b0bd4c94ea0b76457b7baa8414b3fd46325570a2539bc8358a61a591fba457f2ed45c41095977dbb030dff877b12964e0752bcfb252c342cef6d21d7f3d930e8a8e16ce33ec7f4cf4f265dc37383c06004d70fc19728f81cc0914fd66879eb0c8b7b90c6e2a2c12b051b4fccea22e9f90698fd9fd68c88d5b0cf5dd0ea410d8f216677bdebed2f3a9cd1b47e5fc7401050163ba4781b61b67b6d1af7f25c13f10878b5e6994c78b19c60cec59b1b2e4d436493f57abb7f10fb2ee9417ea90684046206198dbb8d49eb19be3c5306fac2036a90ec8a561a4f138079f61b417c6155c4072f151b8487462257fa5b8c6cdd311cc4be68e3c1dbc37b0df65aab3e35c22192c90f3648fb42d90dd872f4e4f458216cdf72c85e4a73bd8f24710df5f38c5c39383cc07e88b878ef56b8d1d753365810cb5bece7f61a7786e8f7e47f3d79d4aa233c13199bc40e17584aaaa1d74088a1d18f55c4556b008e59c83137e297c81eb6c50c6bc090a78fb4a6f94fe452ed4dd4caf5fc4916d7b7ca088ffd23963e2dc341030a46c57a0a239402c73022a2560d7402c2f2ed676e760b39012d8b0f070e2c609617e47da7b47308d2641348a03ecb3b7ce9c4ed8fe4d123d0e333a08dba945d3ee5771bc5e32f2b3c3924454ae7eac5a5b920b82e5ce24653365d56626a2456cc72b095507763252a1e102b99f0b71f36e3a8fde6df689056c14a9c8c39ab2a3ca8df60daf807569b5a2123c9e9497a0a9809a478be7cbf83957c4ecafa1a88b8bae92aa7a2a0ff6ef51e66299353f49f42bb615bac4b555ae0116e7b015c924b5a5d43d5a18e0ca59725d1c168d9287f7fb56d0323993ff8bcf8b90ab5105740fc4e2fe805a2b37331329e6ff877a8b2162e747f5abaec0352209d1125a5a41b24cb6754d3af1941fc445c8547cd56ea25ed5f0b0363391acab02c0a3f25e72aefa5d80966dbe13a1b39d6f6164252db95f790f0d807e12b12b2841ce6b0b3517a9bfed14810333a515344bc85adffaac8ffed27a936bb2b25f7215aa820ac729f52dafb5d8ed0bac10f74f665b4dcf40bd4109358c294638fbbb5749f6e3a3b4bcfa19a837544544b6d92a10352a0b708134e2745ee3644d9a2535cc987f72686fccae3bdbe9b73e535dd242a7b3d5ca7f6727724a00fd0789ea328df44f373be6c7dd669c1500631501abd5c12ba1df1397aab07e0769a0a9801ad907e7d45542b2e67495cbe95894d3dd27f1c702694669bf6c53f02cee0020651bfcf957ec5e5b89c4210ddd6c4480006c328a0a3410516e15fd6086a98c9a0d6da7a09af286ec67fdaa71d3b002390cd18b351ecd70d690a8e19f19cd5a582d7fc5bf043c1ba60d6b4d2ebacad301a3b92fccf15a6d36174b2f90f32c307ec8c56a4b1a58eb553b8de293c7b141da05f9059659eef5e59355c88d16b70d9bdbee5665821c7930fe80a57befdd14182055e8374322e785e51facb781a050a0b4649a2d9b49c57e410f84b69b7e356d5d380a93e0fd7b63f0ea558a5ae4429aaeb3c42d61fb0d46108809cd064c9695e31bc976df534b4fe882b131142afe88aa6298f95d9b0dcb9d57c6d031ecf010d83abbcf4f083fd83d16289c46a26f942c95ecf7d32ca99899417f04896b924945fdd6b1d0341362c8f56b371cb1eef253ccffbc72e44eb19e97dea6effff5c61c6d2a783f47979372d4d194f8e14a7d4337d4ca91d8d3c116e0dfb0e1cb80c9a83a00ff28345e80ca29259e8ad6dca588f60385f3c6ab860182541465bf24fd773d04495320428d81fdcdb30022f1de49ede48e655fdaab1c5fcac4ea8d037cb55c7e8361fca7614a61ab3f03a2840a3caa7581b9588280973c492baaec515b240281484a3c41470b9bca2dc2402c2977779dbad7ec832cc438fba18a667623decabbb182718bb737bcda8c9e6af5e2d305ee5afaae5854537378a5a60fe6b4fea71d26ab3f345782536667d169d191fff13aa78bbf449c69ddbb88728eb483742104f4a8cb41b6de6c730ce69dc52cea666a1411973dc749742be679dc454aa6cc4539930e875dcb310d2ba07c932c95eba9d62b1eefdb24419f610194a543cb89053328e5e203b385fe4c13434b5054a55bc5cdbb8939085977fec1f6766af7de3a60ffe1433d204cd4e01d4a62b1fcadf7066f70b1ee292bec2b2a6f63ec4ff113007f14ff5f123f136dd6502b8631251782d5656d5f106687e070dc660d4eaa269da728c2b2a5f8c8e030d658075769dcb8406d674fd107dc27b8964483464698a272939206fd95020698fafa32dc04e40634584b62610b7b59ce0100a01f65e7ecf22f805a67aa30b2582fa49a0907418158992e7445eeefe61c6f716bb5e3f23d13fad41cc9f0c33d67c89e2311ec7e5c34e73ee993bc3ab03ba346674d7e71837746eecc4591f83320d1545d01257e08427d40bc6fe38e9fe192a5552e80fe25d8a43fdb9d70e6840ea4c9c5127a98fa000a2d0298478faf172c80c823ca4e045a335b234830ee1f8d62a794e9b4cabdb4952d98ed5232509f6b36ba338dd1a73780cf645bdb83733bc03dcd6141d773c821038f56e8bb647d4206e631adac6a756eabc7f91048bb2ab4bab500398bde16da25e4b2bb73060eeef41299d4dccee39bd7dc7d853f51c1e430ac55c267641c7887796e5d72d88444e6d2e700402fa5a4727b4fb4fe4645aa2976ed5b5963cb0c6e0143b89297578b66e803dccdac437bfcf36d03673ea3fd4e999821f0103571e3fce7edb60d531480204013ea0785402e8efb22305f0e5bded0bffca160e7b9f3cfd43880e7db0ce2ceecc3710a22f27b0ca3bf0c215971e129271e88f1dd62c4888b8026deab5c25209469ad46f6faabf751015a9d972ffc4a58b39f5161aa8715491bf62fa6d0064640f5d8edb6e7ce7260172a9eb15dac551aa38507a2132aa3c0925b8e6e2c40e72bcbb466be04b861e738e6d2eb36cddc01682dba88060adab81dd06b98abd2a32c9447021e6c53dfb6e5288b53ce519a938c29a7996bfcd7c3b2109700d5223ca1c0bafa4b887a0d215cb9090de8f6cec4f9f9853949d5d769d8c0ad2278642df2c2c4f55ddf1edefbf4fc386efbb3f5d21c311e880de7dda4018e2398b55373de9fc91e0dd68bee7619e6ab69427a084d969d523e0006662dde8010990ec368715367218608ae1aa9d502d1add6545fc310dd206ca6536a1b2c9692ae3d63ae053cbf830e1bf29ad8ca6fed1f640b043b5939c06c0a864df6d520b3881915daf48df06aed53d5c7ec62a6d133dfc2f825d5555d001c84ecaeb5492d807bc2fd3916c8f2012999cdfb5de9b0d7d8a19c7cad5f88566ee6b48f6a5be85e2c85ec0367ab6e2a5f7747dea737663f4643c3678fae9025bbe3e24ae33cd4d54fe6d0d781fc2bf3462fcfaebafbf1ad36c4c4e02e9855842fcd0ac330dca2224231ddb0e5686a7603de98dcc5c5ea70dd362361835f91b34714cdd8f8b47cc94b31efe5aca9edd2a339e9cca1d25d5f82450e7cf1c1cbf011de9f910f5bc2f69353eb46e3f714bbd6367a78a173477344cd3174e1069d9efd6b48022da4dc890bf276610db0c02329d794d65880db01a89e838e600f7fc85c50968de83f1903284171b5a63bb06f25a22e1b63695274e229025ab0cab76fbcf236050a3cf25b59766198c43e16a9e49eb5bc1eb4939772052450d22bd5f88e59a64154c4117e83b0f76c22bb5200184caf8681e72d196491c0ca79da2f216228e7c0d74196381726a2341660d8a8e341dcbff1ac2a285efd7b6307fe2e7fae9e0fdb28fb85561236567493044f5b2148aa80c4328e848d6fd8c37d568b4c2fe121e85d7f28e0016539051ee07f13b97f5c46be687e85b1483cc8e3e8b4a729bcc6e1110a85274f52b650ec27b19de3d7adb04a3149c81e2eef3d79b305d2f8abcb0db4428df06aa2a6706e629b2dd63097f5bee7c445f04b7b96983479064f80afbc1c56197fb985af49ed74d33df8f38e6a757aba4cd84347f9d478222c43eb1669ad71fdfa2ca04bdda712ff74fc86ea062926872d094a6329b0476f1386f84bce65c1a7e9e9904e4e5151539c028152bb534e56be79106e789c2743515146c2acfd60d31862a240876999b5e691954ba169530761d9cbe86e631e9bcc9a485c3987373d6bf834493318f7fdb99efa4d737821acada86ad371652649130c7c86fada3bf2fa4e95afa08d26e322151cd2b361fd1c36569a11b1c204321fe3cf86a4591040399fa62cb6bbc6c8a679811937ca1a6a4bfead80cdf9ebfeb126965768304830c80013bd8b3435a5297759581106fdaf6757569897bf195eff4623a9e0d0fa2df850d2d10257e492a221b39cae02154ca177aef79bbf6fb701725a06f42c92ecd517a1be7367b46e0a683f5b5b286a8c50773e44834711e3061ca699aca86d7cd45ce4634b7cee2162beaabe6fece4674f9641a6d4d5b40c9d2813d88d48c9e75d98c46409855200da6e793133d89d40a65e85e580f46ed70f1fdf4508dcecf5b981543a90106f7512c8a064e58d8fa09ad29a59a47377c817668572a0623223121dc35b9eeff25285acffc86ab780bb7c4fdf3a3752ccde05d89f18106784edc61536c9e1bc21626a35b84cadf2027788a8744a2a07b81aff9a82f3fcd8671ee17743fdb440c2a3928a935a2ae0850e62d999fbcb65ff725481c9b6eb55ff54d2fe622f0a4aca9784e429cf5b23cc62c2b8a0d29455b20e50c93458caa9165e1b96757a25df46b05e328dd78ddb9145bcec866dcc2f532b19e56a26da3a5ad9354a31399e74f37d74895a8c25d23df82fbdbdc92feade78bced853be68f683fc911543e469ed871f988bbb67a595d0bc8ceb5b5850077939eef02cf5607a04888e6d4d4d5e1062c89f1ae6b60750177e84aa1dd982af576ae721af72d2066ccfad5411dc9045dfdb6373ed36f133307b130fba84af127cb8723c2ce5594a0927b7af6f6b52bf30ff3ee4dab165f83d532af6aed24bcf218d44950d4a7a7b065afebe12b8aff05ee80c09a4844f0391a18f304af7267c6827fe6fb5e39c5f7743f91072a0d0cec8731b7f71b6adaa597f6fa831aeb233f2420020b5f096c1cedb130e2edc1aab35e9e8aef94384b475c568748de6e700578fec99bc6adbed69bf8eff400b1c73f94a99bec7e6cdc334430f66708caf577f43191484ce0ec9b0e37fa9475be42aaec0ed32ee0ec71df1a41534a9298ff6905e8e1807b0139a06fa1e35396521284dc0f6f1cf0bb4002aa51b9e7fe51c4cdd6fa8de1aebf862675927101aa9c508a56350d2fd9cd92e4edf2308c2065e4b844a250b62274e78692ec13b430a5f39b7a453d8fedc4c7ded638ed1cda89e8f00fcadc60dc75ad771f9578c2702a3f0e9ed8e6bcdf9fb64869b1ead0ee3fc1bbbf70503dd16e8129fe863053b79c5460447f31136d3bbe589462ab0af6fe32c4306d1f3527f54c27e852b5f6689e03e61cdf8f1398c50dffbb1a880f3b1b59cb66022988a1265ccd81aaf8364e674819be458c5275b43a2854be419361c1ff76f0efbf17a460c23796da5566118ee091d4d8259d6ec7f061731b9c24d53ff1a1c83bf18bba7a1de0e5ce8bd49a12b44e2294d98c35870a61eb46f67c8eb512b9a79f764bc52e8a6eee866817375ab25afa1a9b71a1df082170d880a5affc193be89445611e7bd2ee4af333b0cbb0c3aad1ead0160c8bf3790655ddde31175372806d88797b94663edc32f2e4b69f9cdd896b1c869bfded59d3939bd8e1ec3ce4755c8a904a484e99f0afd623e77a3cfcf59736afeb14ea8b925e94905793f4a8c52c46548c607728f12979f6fff9559e5df2d84aca39d34170523eb087c0420b31c1bfea92f7b295bd22ea303524e4425d86c42462e3467942302f76415ccc91edaaf060db90406f1101e7627bc6320dd39a0c3889882b6e3c6d80a84c3b54067c7d7078305067fec1cc46e0a05bf46249c6d5c3d337146896bb3630d0b4d26fe4704a6dc987486b74b546412c8e470f7ee3a60e5bf3d22e94e92230990d4e9ed9652ebe7630481d89c0e3b0cc7ee835cc759d82579a4086379e4676ae6c611f879efa6dfe8c20dffda747c20e16d85720d5997b54df8900c347e373707c02919bd4da7b527e2a36d19c04c0fddf4d6fc4f9a2f3191bb95b348be0c793f2c72cd6bc21cfec11298691a1a124981b5136b3265e2d49994b0906930f098578a99d5fab7d05608dc68286533e0071f1c938e0a90a5bc915e8faade47a10423fc5f0241505f2acd914a0cf9e09b56ee452bc761ec3a2febbbf7665d0b03ff088c6cef5a3c52a38f9e39688ff9ae278861c2fe7639f738ff9de8279b40882703bffdb4a15221685015c67b71aabb3133dd1111edc554a69202111e48084ad3cf17335f36422efcbb5454441a63aa728b7e39c2be83d68804e781257b0ed88858a9f6f5bb2ed023041edb78e2018e255809d75c7f03cfcdf84e96be7f3866519eb24bd61e08a889877101dbe5b8f03e5fce66d22c091d3d65f1d33e408ef7f335567413489fa554d9c189889cbf3f6e8312a8f5294627a1f057a0c247bc923a61a25fb5b2682b47d5bef0f6a9a65734dd2ffa411ce0d6034072807f5ed94788f29613825a07cab7e821a9f56d1f9910fc30e13a328e72accdff7494d6c5015a01a8e1e2f41f748b9ed02123cf633122804cad79005cc4225f62f59bcda5946cbebd37d3f5070b9b08f92b0960d95b094ca79c0642f9b307c7cb89fda76fd8ca02e69b8913d567335b98901c7aecce6a7a35417899596f7cca9d54d5ef75cca3772baee39c89a8b0a141b8896abee805bdc3be2096938c5cba640202fe5acffed58af609a429792995455c430368bb1771ff5be5c47b824d400cddacc43ee2d3942c700a73e3459e6ee5270e23c15b603cb039b1dd577a494b04251e2e14a72f40f0745e484cf3123300e6e5a253ea7253c0c65eeee248ae7a21512cf0f3e1add19fa3e9b5e463ce84f316007e003c2ddc58597465c36725d5d4b2638c39578770a85839d691053e06ce63a53e44ce313110909d5515b64d6f3eb5ee06e29e371eff19ff1a8f97e88af75ee25ee1545db786677fd877f1405aafe794091e4eb22f916e275adb826016952b2d1458830b60424af4f5d54ed421e30de3e2df7ba267406bc016a4974ddf5d1ee580674d49986426a7cfeead9a21426e2f9b2d1251939937890d6d44e305c32c8dab3a195ba0e3cd4ebc386f853b6c708e5d8ee5c6e3f1ce9744cd416dc48dd94e6e18dc3a15c0928cbf276c6f0719d92a04f0708c417d15b6e6c268f55a6dd639a5f65c60b16bb901612f2a0c42286b9e41da7f9cda1de835de60e8c5f5d924b78f29cf4e30621674621bb66a5bdeb991a1838fa71d5930be87b9741c4c111a9b6929892e0bc0eaec4072b106f792038d95f0c6e4db268dad4b9f4e5f1a30e917f2aa7948eb3b2e41b10ece86be3e44557b566cbc91f7f91d48808d1a75f8af58ab78d431dc6daddf7e3c5b8de6fbef12dd0d7381fd5c8a5cae0d252e71a15de1be366c6ecffc26da59a6861c29ac0b3b9343a7843e40aa401df05511a86373f771710a3a10e73f731d51457de1d235316f6ae609e95167fee25e24686a62692114a4fa4b215abee5f93f06a46c4a7785ba610ce04615fe696ee36152c4cc45f56094f05761fdad390f33629ec19e550279e2e420cb8f1b5bb97ca9c234769ffcb2072d6b7d9162f402646aefbf6d23c906e2de21b0018adcad49a318d3fc39496105ce333020057b351683205a0e3f8e28caa13b46a61b397c93c8e96b3ecf48f4ff6b63317a2d407b7800b7af32eb8ff66c56e098b7049856140bf22369a858c6f72d0746dbe84e7edbaa253307bfb2c6cfb3181240fc205acea13af5bc1edba6a1b951e4bfe154ccd58ca9e6f5e176c9d359d58140e16d2cec0a100aa305d4fbf96633886acbd6050bea34a05a265593489e3547854b4079d5a3982a624e258e1c2120d853525fc0cf56fb52f4967316cba3bdeb2c7441add65d2e3e02e9a798b2306f8774fc94065197f7a696e82314ab7c3f98a42debdc192c1d63cd3a946257402e5619e446f30c4f72f7d6eddd3fd2b52148aff4c6c54a0da3b447fa877e19d233ef572c3993d2768c1e8f58b4615f109ec9c5afb4d18443e5eeea2048a4248a179c4cb8da691a102bee4a400167ddcf30da86d673a4d7cd3c24b7a1ed9fdcea0931bc1c1be1d6557829fb24b143388f4a2ba07fca167a042f5fc566f0cc59ae70dd4ac97961d7f71ae859350ba230f8f8986da9b3cbb836350ebc0430700edb5f4ab5c8c34545a2aebb6a9d405aca8c7f778703066b1e6f6324ec10bb6948ee5e11f8c774d027c3a5e35a9203264472cc23b63dc6f4a54ce2cae7cd73b3c75d1be30fb90b7ff3e99d79e2b90810d9b7b7cf86c78e3e45e809fc4404d0716d6f635f1ba46857a656ce785420f3748554a9cd5d8bf8c2ead33ce8dec51da8bc5632c9a81eabc336c895f68ef8970dba1207347ce1854c1633cb00e4b8d477821e704c2c18c709834194ad33a6b2bb4da69ae06f3b8ea5245c66b69c4a13b7483350ce7be497045159c656d7d2687e61aa53d4369a12eef5f9e35b38879ec27a623fcd254a52e1201305e32e8c13260023a40908f4661b30e388477f67d51fdbeb4b1e7709c9cc41af140fe79d0c1ae8fc7c016e13c8f4f04489d9be08c1f95e5946c84c7f07186bcb6fcc0201d4f114c8cce5a6bebb397ff792f6c505f899d9423187d225537cf26ebe1abd48e6ae0ad475ea662257fbdbbf8af16662c75b3ea017c288abaf4e1d4d6fa0dfafb28dcbf14cbcda72e20c1f843fce1f0e3a6c52452823e2d4dcf66c3ec6d17534b5a0349d425bd277998c57f19ed93a20606e83ed37b04c08093a70ebdf8c011d0b139fd844ae5a0799312b6834ef294df573e42c44cf8ea8a37b04ee9f68c5bf3db85ccafd3a4e229f7b0724a898af911977f59f0220afabc35038989d695cadf885399fd23b54d0ba76b7d180501ad073ba6cfd56b958ff75965d521ae981fd5b6610ffc4a1784ef7e0b7551be221b6b4ce83de51a0078e6fca4c1e00a53b760c4bb09a7d47df3ff296cb0bc2adc8d9472852f7607a37c7aaa50adb88947c42feede43af940c86a82f49105d85d260f6a8f4fc82884e7e35cb27d618a1375dfe1050911d1b8c1d9c864fb79e5bd169bf7f1a4be4ba1a51d1ac51e5c01d28de2f5bc8d10e440c89ca1342b0f55cb2f1db48db6a31eb64ecaa3d5faf334ffffed197ade39199e3cf0f202e6918ca38aaa2688e79136eafc5f8c4006ce27b04210450686307ec81693cb8b1ef0c6a44611b5def5155be9186e121c80c255cecd1e9eb1be6b25480642c5b6096f903fe6dcccb3eb590d253828949d0ff34abe24d9af6c18464a66928e2c6f6ab092c57b58d98d195f2f92c5c058239751e536a68da22a53cb5d9c37d555dc30f98890a807478c63181e153a5d103aa945886592631058384fed5308aa31ba1672b044bc749b97d067106d59ff3da5e739fa5f8a254bbcc1bcecd6ff39257aef3ca7a0db9ee5bb569d44de61cf7d42383d7a8c282de31133a64d3a8c66ef5b89a2b396496321ba9c3d3bc9e3743c43be88620d1d147e1e8d2a66a32fc7649389c521c7fce497ec938623f4d30393ba34168da5e914b69bcf06c12f45ed897175234252d68e607206dc6292e2ef3e44b32e6339e8ee2a35be546878b640a5b7f8be87dbc0dd72866d2b2ecabafa15af4b30e3adb768a1fa9c8a6963b63ab365c61b96862987ef172bff14a758215201cbf0116d2da3a8455347842096ea9d65e98ed6380e1a59baa7294aa385a91696cb0729335fb2f69762709161c3ab35f8888fc03abbcb835c6382578e0449606a931ce8e2d6abdccfefb8a05188bced5a59f630baa4a2a1cd6f64505e712cb856e089e5cb7865f62a6f21253a83aad5a0aaf5ac7ff3a50d1ee9b1252de09a14dea83bc070d4cc987e4d55cf4338780aaee68e56093883391b12bc15763fabc03399aae3d7470c3436eb221c64727469586421ff6e79ae32db30bc503ee572e1c18e75992e61b906a4b8dcbf5c0757953d1937206844dfa164f7625e7e914c70b087f59b6169938a91fafecb7c08f2d958f8016d1167e91d32cd133c24b629e2de118df19e127ab970cf47feef9680ef1f55b30234964d11f86d2f54fcea04dde3f715424a1f5d83a1c497ae7ac14df1557901644b62bc5b92a56c66a64c9c4d8a76e7936972bf3589dcb1b762d9a069ca83f5d8e115b53c3770295b5ecc135597ae83c99cddd2bbaee18868b40277a25682f5034e39fb4afc17e9632dcfca0b38c29b0db0f406a2ea48546187c6e55afb8578896f0d8bd4dbab8534cb4d78d81e5bc49904efade8b6153b6eccec52024a969263d3a1df408ab4040308f37b681ec0705daa90d01b0077ae56cbe2c5d8f87b272779e86764173ce63da6a158a8d16f1a66394ad161e68875008894364c9020d800847a2ea49d92a50b1cd343d98d8e5cd607061a7b01d58f3b340f933dd8605bb2ab5b110fa44d7e4320e12042a7bb3cc168101922131c9e5c57ed3527f851643d2c663c1cf6a3ae184745ea7794d024b52dad0bcccf55aa0e527e504b38fa19bf86d10839d3b792584c901958a5e6e19cddd44ac16e363717a04964b6f522d188e7ed7073cbd3db4379e76e8d6ffee147594f759ef644cf5fcf254941c47bfbc9d4078515a0345d6914dfbe65850d015c77ae95195710ba79a1e4bc64cf414d13146e78ad7ac99801d6e1e2cdc805d18720d91866de1573ad42eb72c59a49a8bebb5d8d63d197e0317c19a2021565b1a53b7ab3068fe038fd866c966a1045dbfa05c4fba1aec1ea1b9c7c5545187983d51122e51063d21ffec37115a37ff5c9616b9760cbd6f01d5838f9d4dd753120715678b082c8c6ff3068496f9a3daf011e00f0bfc7c234a86938db774abcea5e70d7e0bd9fb4e4a780826720155ab9756c8028e83baebcc81e98b23252a4b295ee11680a63eb0860e99ae4a4d0894af240deab897d65104003af15c6aebefddd18b4a44c036d6b498e4298c578f2561373edd2ae07e253151a7e408e63dd77ac83289ad97c258b8de23888fd2da614fe699362831935a5ce5b8e490317f7308e8d9a8a6933687af621970fa19cd26a52ff7bdbbe6ac6a37465e15bbc6946efa416a418da9f14b409741679ab9de9bff57069a4b20240b29206b88ece108c1e87fc3e58f2818fa8eda8599b937caaacbfb7b79d6f782b414862c689990bc88cda9c731ec9ec89dcf973e67acf24a84cfd356fcc25bb82939805ac767224356d05df6f5ef6c9849e238402a5e05abeb06ccfad115069f8b54d5b484a6cdeffaa1f938288c3b60d1c49accf545dc3fe743c8879433679460c90479f924f0dc2b603fc1bd87786ea1ea6a9ebaf1f9218dc6487632e4856f5fecc09a39f8f068dbe106574aa0ff18483cdee1f74a2e680048db15de273579b55871344ce1e8fc4b78f98a82883eef725a795ee24379ba74194a62806f5a4a1460f6b44c0cb833e9e758a33407a4f39d793b8e40d347936b5d9daab3a35e9dfb1fa5fbcde13a7f82a39b0509bff2c0d56f1268cbc4b3b898ae4a226fa8417d4be1706bd1412409463dc9cd1c5e8b880343bd3733e602c4670544688db7054178a236072c71d025f519a4ce38b239f976e06ab34b263eaff2850ba06a1d6ece7a8260e74178a8ec79e46cb5f11ccd98187f9edc2854f04bc2f71b2c0eba65cd552082429e8f188ffbcda0e19f843a298418d5c2d890cd5e3fae0d482f69e50b540085433757f3e7971c9d54eff7e5d0ce84bcc6a21059db78d51d7434ed443aa097c645c1c4608e3df3727ebaf555d3e8e3ebcbfe11c61918075d090a03e1b494440555513267d04585a6be6b3ae68ed5e518abecbf6f0523c8c000f9e20f95e222e2314e99cbdb23085698e59e27a6925c05e991110d7ff26bc06e345b5cb5a4de329fd8f09cda7bd11d71b3d38d4c04560a869a3862536d53fd376846049e1168254027919c2f0647492478595be2a591a6e39632f6d6a0d6a36957fd819a059cd6c9bc27b1d59d6c9133a93957d7f57824886860962b9d884219c8f5b8c6855b927cfb69a82f506da504a167a62eb40713b88c8985f99b51f6061f4c16b08f9aa5c018fc2b65f583e15fb37b399e2f08f61ac5069bf0e857ae4ff8ee2b176b0b35349710a7363e7ee4499578ea78b0b23b38db81d7154167db39a571075e389094d7fa08cb0a4e575caa8b16a4c2f5fd7c11bae5d8e26f6bfd63007a74f3ae48016d75bf4e14db4c37f35e2df0d906bcfbaacce103d065e9738964606285a46b64657b69d9caa1a257a3330f1813155db232aeec4b59e5fd899bf325b28ad833473a5dfbaae02a8834b5e23cee8db35cadd6df731aaca38067ef11ef5a76826f91c22c50a19879061d9ba6a0a4d716bbe3d8e20a67d6fddd5c8670b6b37829267307777dd364403857624e8d389f4e00f7805d0a2c4bdfaf61a2c57e2b003a843089a069965c9a54744d1e344c86f2d98e7d96128092c8ef6788f973e667ba99a19a10eb1c0f2d6240c3064b35906866971274d5fee1c5ed201bc4f2a59a18e253d1a33d325a63915cf23aded2d2647524c93d763908de66fd6427fe29559c8cf4139ec0f3d8da3efaa838a78d77c2d542ff50e36b9c4f74b0ab0bb64f387a74a5985dd6ab7c5bfbd1783b1b91b06bad2e41a977a9aab63e8c844120a0cdb1a5a3cd7d533702b349c249b839ad9581ecd304b5d4755d03cad604e8c8521469880509a163e2506f2e25b4686dccf18c0a0b17a1668f0705a24bd4ed0e7eb0dce2801906fc2ccb094ed28e991aea78aacf7f45d9251c422213ca05753e92be031ee37aa485ce5534589278db5d50193dfe191999070cde425b98dc1d387c6590a674827782c5ec337c666f7b6f3fcb780f60489d053d5538a1bf4cc10768a4147bd4d051b00df74d3afe76ad5404b1b59bd4ac2b1dba8830cfa39c6dd990f75e5620479932a1b01a6bcd3eba3915305e4f6da4a367efe55672e2d944e240e44365028f4185b35ec16df17159952105bef53d0989a3484868ae9aa463dd7a69d53c74bf73bda0c0a99ff8480a5191d9ba78770835b958cd3b299881c5ed539d534587031805bb92f8381608bac0fa0f45bc8e5e9a8f8784ca80489d580bde5c8541c2036d45e46f11fb8caa4cdda57253cd3c622ca849e5bf758b86457da7b87dfee13638d2038736d11263fe606287ac1574cba30863e9481ec37c5d4f4bfa1d91c17ec4a64e6ea78bddbcf580951226da8f941f052b4b31e6b6f7f561955d7ceea0905c559bf9afc647412f9d6552dda227a6078a8de79a7c51dd729bf5524c6350f6cc1edaa9215962d7e7e1c9bf8c5d12b162e0e1e6ea5eabcf9b96bb4ec56002276d3de1804cff9f9e0c942c68cf5df7ea293287c6c5f60347589fb9e9284702ed8a1c42dec3dcf2be867239427ab25dcaaf81b38726f49de1d5633ec99bfe12788c8350ad014f059b623215fa187dec9050f8a823a7463aa11c8c9842146f7426a42c859a5cbeabec114cbafec4558493a7163332d89241f8fd2a23cd83fa860907b193ff7fbcd217fa9078a96be54f3a3be26bfff4d81daee9aa9dbb0a1631e580b46dda5f88c27ee86501a638384884b9de2f29b0f005df8e4f63a4aa11613761a4abdb141cd49c0b0a2106e2dc9b7526b2c85ac50afc9d2abd68008c0766e35f2366e8a68ed09dcc4db9bb6980b68a2c7179da28fa41facceb3cb842e275414bc272b0fe7eb3c65ce62a72d986d2517c7a05f9bfba9fbb7852c6773eed95bd3b1129929277d7e8505f9b19047d69f9c9e124e88091b3d1e2b205f135da5341acce131fc63b09faeab9c91c4a36983c4896f3d698e5e42d4f38c7bd5c3806a8923daadaca411d52fbb262c115550a9b3c3c0e4ccd4fda031592679ef59236f9f44f5420061844b4bd443a7e289a3f0681e3973bcda95230e90e03a6cebec6721509ec04c03561a0f739ae82a4a5fd69a4b569493616dafb50767d36c768a1572ba7849407a4eb6e87ff0e238ace749e4645f4bd2801113bbb78f2d4eca8966875fc8805da9e849b9cd48c04a7e39adaddae7296cb82181c197d21a72310e14f73d77f1f67231f408657c408188c72d377ac365f8af58be18b01bdadce2b5036ce30df0dd6a04f7d81c4583e261fc70512759ecc6bfa98a39e6dc3955500e6309c1a3a6ca0636e7ba053e8bf1f615512a2111fa527dd991d0c3c36d54244e6e4b1c8364d61fa46581537f45b4c6d34583ebbf60203fb114acd6378f2d6cf41ce1c86811d573b7575297478457daea5941afdc41ccf9595cb0035bf0f80b9062cbd7130df33336d4ecc15b349d62c3507bf2fd544b7126582b6f07309026893fadba126066d6a330a2a37f57b6652614b608bedf2663efc0ce8f5d5174e46f3f62bc4dc609cb4075a8b393b442bfe04de259f28b6a276a9184e9663a57043a02d55b6c8e81814f79819198adf47affc19d023461ff4f5daa92259b468980a50e0654a33970db716ea41cd800e6bdfc7a1f3ea090f0ca499c91145992b593600dc49a3a1739ffdb23b0d48be152640ec405a92a69d969fdd1506b5352a20c9f03dba07851d225bcee2af17017f73837b1398d3493806cb152b4fe6cf891d69e0f3194eb319fefc942535904940debcbfee4294f4b93d9121365842033178fff41d94eba32d05ac1a863b5191b91adb9f34ca9ee2d914ceb29ad105b5e3cd8740d00bf23f4be0ea3d04be5785312a27c2c60f7c05bb3f5431cec2fc28e714db95340b83ba21b86cb54bb83cdcb51291cbe006caa722c09e041cfb4ab33be6c9d5f2b0d050ffffb89dcc0a30e05e621918ad35c77c3ba49745361540b5dccca4073d6514766205bfe3d4805ac9e7fb33d916a5a03c92800ec79f015de1e159c2358738afd2d51d862c4bb7f4c382075fc3da4e7d714bc2d9a21070963654f478348f712d5c19d9e706aed4f9d82bd1fa4857a62b3927fd9776e3b229346c73ea91f5e53ee602e9b812c99fc1fc1dbd343311ec0c45ef9226dba77283308925822048926b465fad6942588bc51effcbec69fe5fbe497c1caa65a6713ac8737eb761f35c1ba9a86d50c13f4621f255af5e2877e185b73d12309c411533c9caddf932583f65841eb2372081c5a2a082143ce4ca8697aa0b49f3ba3b0822c663a3bc45983d3d6f15632edfbda729b7cf671d6914c2358345ed9f075e3eb52c260d17e1e80aa091d141fd2402714e168123840320bda144f2fd5fb5dc659661919ec7531eec6863400beeea6f195ab7e5ba86f385477bd1b0eb76360996db99d7ba5c95ac54a8f6f44544cf470402a4b5eedb89c8d4b464b8152056a21fe1914685acd61b3c9a7cb0b423671f53b452843bad0a0aeedf860722d6be7a5c591879203ab203be8e80ecbe1581aa222c13668451f4fa8365021f11286baa89a72dd36dc562ec0630d431478c2a5ece0942d342dc9095f8f7b9ddb6a7b7030d9ea22cf6c0d0fcb3f76b63604f70b496a02597818931c4cb2d1ba2e540ade6507cdd179ebea667ee22c042db2d272c200e5b8ba8ae0c621e194a3e602d69dbc96775f1d15a3030f6da0efc4cabf6e490e19e792abc200d6f84f1b140f262b86f231d9412f893aa48978bd1b2a59e82b13ccce147f616d04bd1bd723681b4a306290cf88c99c156d76af2dfc7bf80eb65ea11e75e3161da997b5066cbf6ec91bb4b00efaeca34fc98ea4aad08e7e9365afb9ce0f6b1c652b5608330147527fb44571fba936cf3741171f8fa42991cac315c6882f36dd702847f0a01e4cb41775d94a3d0d939450ef73aed41addd266722cf60cb95ec26211b249c1cbfd73479d1cfef4008ff91ead38988bf016869e1720160cc2bd785bc3cac830336f76c858e503249b889e3ac97509571f5e794a6b7eaa5e913520bcb9b48688ddcdeeedaaa5bf77df5e6544c6ead0c9c87b8e3ddf65de0b247d0280521bc8d0df0f6bddd9305c4f0406c831b68119e4ffa1e5c6a4de66af33f4348f29cb57e2ff4425f807b6883d56e71c65cfbd94fa51a0630ca2c46ff00625bc27ec4e5f593fdb22c0a3498d5448e26209494c757fdad86a005e53bc89933aa426555f354eaca1496950a48ae982581e21f921b29f0e1a5418205d4fa933b9644b8375c492c383d66346463e00af3f4511640a039811258d90e6e56cdc1cc9f9b83aa7ae39fa875c5784ae4d1f654c9641b05f0dd60eb2455034191a8a86cc0b2c3043a164f35f41c699d2785eb45d2b36a0977f41a6a94db1aee43bcbdcaa357a51fbd54b239aeb54103fdb527a73436c8fdd048c2c05dccd563f7a0fbf29ccaf798e0fa4d0c2bdb2168af7658b4fda5a708753ec7d24aa1754f2411c7b93dfea28a75a42eb844f5af9a28c1df57fe32de48ae9569e752f0a2e8e356bd965badbff3cbee8376823e09998a2d52b6c9400db3c22351807afdd5204db11cace1e1d866d2677a013355dbca7fca4529f002e47131cc9e18837c05fde92558891ce10bda432fd035f12c221587f9aa0a16a0d1be446e736450fd8d7b59e75b0b08faf07ba8d7b312732d10a63ed232ef3f05f2a95fa99e9ec6368432c1836d42902016d5b45c168579ed50e29fdfd523b2f6d43d6b07e6a9d9cca3246fbcc90682fe2e3b1d03f4a0132e68389616d07b0d2259e8e093174b826c9036a218ebff2708b607b3bdf0c70ad6271cb96a2c54a5735fb7eb687e064bd13a6d8b2d5bf6c7bc37d3f35bc1e2d525e110e68c35702616d78834adab33235d25f72902c03537d0ac880bb5966831b7a0e181270217f5b4a79b80c4350b8366413862c3c9e02b3896c42d2f9ac727c174680aba51b0de81e95ff855ed0d07a550e368d4c45a8a307edd7ec609205e890bb2fce7bc0f82c38dcbbdeddff0a1e0a9bc1eac518ea281009fa10e81e48b041d516d87bc2a2c615a0edfbb27d82101fe3185332646b5102e2533163328e700c78311d170a1c155f283f27f5ac297779e96c430af8c75fe77668051d0344ff7b08220796fe5562383ef528f58ebd30e851b1aae02ecee8a8bd80d8de210842d5a2fb4342a980775b423d4bac7926d2fef994803d3af0e44f6b8da8a968d28b1c63d35dc48df8720cdb3902e7c7ecc09101e68f554b3387e37fe40a985f8aaee1e04ec50e5642d469933bb957a6dc1a4c335a8919ef443c7421e4a901493754cfa0303f8de499f715673d25128fe637ce3080083e3c0bd5bca1edcdeb5ee4b5c5f4d4643915694700916fc248eb1c8927665ec189c07e1e8afcf249a3f4e8c07c76ce7cd8a6783440a0cefae76e9687225b0fcdc349a86657e963044157e56bda284d23a92ca6705369e50b002cf6003a0145382adc1998054628631c52512c71291df3e8f2df4418f23f5c0121d8a63b614f37278b44126ed72bc5d63a380bc57fc828b3086c5f4d559462f5d7c4e507094af84fa41bf32d40fbb37c9123332dbbfb3d462e467c630952ba4d6193af742e780f8b2d80207a69c26351474a3c997ad1f1963fd17e6486f049cb2a8b3eb77380664dd6a70c1f1da5694b5cf65ef3371def89dd30b517e3affa8fc3040c57d0b24f6f7d2691f6397954eb8900f578d2fb43db3f1b61509853b6040836aad84d3a8e8995c1e67b439ca589ac89641047d41c153d32bd39b2fc83b613e90c005ebbcb4a5f1102c2208a372dfc15a72161b27567f22f393dd0769b8f81603446bcb9a73592cec8cb9e102cb3c5b87f6bb01acfb8d1cc54308c4596b75dad320554d909bb5deb896686fc190fd250eff815a60fd1cdb8c23f4bf096d54f4c688f24868495794d9290f4a160cff63b4798b8b7e48725b9f32ac2d128ab3513822168bbe7d3b55c296b96d9a455d7ef4cf3cdebd957cf99bf2b721aa9cd9942ca8b5754041b577a3f0d235e71eb6b1cc8e7c4972a6e405d1e6d80a9a1e26fef3556c2d34156332fc0d1d7afc52f29281d3cf6850aba8e8fb7542f1e691ecf6c90a587e3c6ba6bc29401e822bc749a186340576fc7be17b8c2216b63e4cb70eba9beb0cae20f0026a76aea4feb49558cea4d0489a6828f2a324a1a532eb1673e628b798839c87ff0d22b99b86706d23f931b2a4e5094ce75be51f11c48ff2724a3ccec0dc9e2233c9b50c3776313d1157f5e6f3423df899ae91a0af9113bea569758fd9b6205f417798ba9bf8bd0a4cb6ac86a407cbb0e0db0241959ca2b71d70bde11e0d67f49f742cc91f4c73c51c2d216e92a0c2e73d2a0525bbefc1eee40fbdf55df196514069f77b7252cb2df49fa1e1e1117f035317845f14392939b21067ed5d68ee64fa0dc12d251371d643bebabc224c1cdaca3a70e51c58a5cc6802baddd7057ebc6d6e50aea41c458965670035e576cb33b4a1108cba6d33d2c4ff1b2a95a9ca8dab3f840683985fc441bd1fc51d2fd965cdbb20fb6e1bf78b3c34b4bb0de53e620424d5d10bfbed229b7b76b304144edae17b7619eae95b82fc968362c2f799dab6e7c4b3238bc0dbc3594d354d5b6ff593191663c35a1c3a4fe34eb5a7bb386cdbd64d3d12a071ad00e10b36b0415a4d4858f5d125cfa6b342aab29c2c41121208fc5a68c13757938665d6b452fd16913715733a4ee2ecf08923ab9f769d089d48f33e0d683e12bcb83744dd3e792f93b5f6232344668d6d229d6c6a46a906c1de774b19b8859550f1e343906a350e1b4cd671ea70d5ab78151edef57a0eabce32577b843097f8c05fdb0f0c229970cc84c510990936b0a09e3af2fd2934375a0e234b2af5215144a9de0c32eacbc0ead46e1298c9c68bc5618e948654a45ce34f0fd55f20f4b5601503c46aaf82935f9deb702be6b1cae2af3c95d25f2cb8866c23c21201e6a8b2c5013831713aefc05cdbe5600ba50fb95ba7e966ff8d4cd7ac6939c6097d7e0ff8b276217d2930a0800da602cc30aff7c12a23993a0d12bbb2db660436362493f2c94407b6346e8e633dc327b24315c2da05c4df45fa5dc3463f4c9a4177c8c6cff89ae0c5d709344726e6f0baf3ab633704a1d6747e7be05fa18969d5ce1265f892973a9cb4e7f44a65a4f5350e807351de8a8ae55aab5f69731645681455015406671bf4179b91837df55817643ae6bcd728420d29135e2f16341a7a41bf900a5e4384b6e7e9e18724d52ab7a879627f49b4b1689b4a7f59df28d516c23d049b6a093390a333b4d7aed26d173e610a83248c08990643acbf0150915901db154c98d3c61212afd141cb14147f82ae423c034493bfaa95e79f09dec7ae0729b2ff1885a2c834dc41f529c009e1edbd5ff0f28bc20f17219ab1b048ca18872d3770b6962bad426732fb23e0484487b6f589667675dc29eb901f78bd06faafb1f869a9420e4c375f36d648e54b5ec088e0e92945c624dcf274555956f1345203c749d36f9619ccbbfcce08844d05e3dc3e12f5bc8a6cbf0f29f8dc599bbcd90757b855aaa8520a82dc07778525edf8ae538fe8f07faf83248844c307f0a623f8f84bf3e6985910e62b732150c84ad15c382890750e7854e5b0c17431239cf3d8e7ae47b62867bacd1739f7b2c24c232e4a1635a75a7b71a6cc4413af5a6547ebcfc4b01d7d96064bc3960a91819895c883945a56ea710c60e80ecabeb4dd10b2822d99157d5d171bb2bb4a8674fffa8f9b37cd1f9ce3970cd6cfee818536f0329cf01c23d63a48917d2f7bc089f14c7aad3434022e0895e2df4b5d5469df324187e09c999790de432cf5ab75bed4c5d9e38a460d528dfca336b32280a34226e61696827c8dcd8fd3c701a4957897155b20eacc4118357dc716b9ee1091315765d9cd33248d9eae8cef5d36e409bbec4063e6360a2fb72c9164634163e77d2b3702f206f82205dc2768fecc31f97cf0feacba72107fbe5d1ff92e8febf0a1285e9eb4afc2bbdb7a458273a2744b4729338a764014d36946b3ab6f357bd845ef9d493bcc16e340354a7479a3729634460e779a69e5b11f292f7b08b6b161c567bad5616444283bcec8a2efa9006263bb4ed4ab029b5855e7997b32a1dcff9490445412ed93faaae72172ccb8c1600f70fefbc75d8c4c632d26b630082073862f075967326e606a681eaa3aade0a64da15b443466a3c34e08d973a0c0c5066de5ff69ddf7cb6c19971811b7c001f2aeb120184d9ca45d10931272d66138b98952340dc23e1772e3cdd4da809232430eb534b00fa704ab59d372ef5d390e1f9439395663f04d757d726b515b104731fbf8794de46aee14c9fa4f21bf58c158529466fb10525d09e8c27090dd1b4623e9842d5accda884b4e0cf3a349024321627e684d14dc953bf3c549e44cb071e180f272e48b17580768f9b3a8222047e95ee1ee605912023bb5831498f35de45e81f523cceecb1132431c0fa10e16f2f94800eb611b88b3635cfa2aea4963c01c92956c579de5e81cc2c35e1b19b17cb42e6fa5a7f673db98dfe54cdc74d50471fd87dacbe6a038b83c3434b63d86f472a7c247c9140243a722d604ee252a45401ea9b5ac5bcf85f4a0d0cee2bc2642bea2b9e9b48f03d1bb918199d8c4ce52c4906be3f983e976a429a7d23faeb61eccbd17fdef21daac7d03ae87b25ffca5c7495c2e134471515225d7fdb9060756835e00ea781587dfdb5061c3b445c1a06a833133a72a888068f0725a7d90ed24269294997ce289d6a1288a10f9eba6b00cbc983aea344f1dba2ab89857221ae18e49cfd9253c8c0881178e6297656a5633f8e1c6bdd87707d504b1e0d086a005f846c757a84693ba64adbc00ce55d16274922ec21c8aa698e4a2cdb5e9230ec758c4a626cf0bf654adbada27850bb5b178a2847bf9834024db9b41edd0aa84fc0870785445031b81fb7cb95a3d843543765705a10bd8cd23501b5e3759a682f0ef8bb62dee3709f08918d641342ad991a986982e9c28d69c8401d2d3ca521b40fa6455733b17e9b2a889b84ac3ae62a41697905751cc628612bc2e1c10786d798ce2014deb93f8147acea45453a4ea63fa77178460cacb6a254e033c39236442439af3a146e351122768a915d5595e1330607b11d68d4001c3e386f881348694d913fa76ada3a267ca4bb733c29d00e0367536ade6b24d0944abbf07651c5e8d90ac9683b6b0e96ebf7aea39480ec2402e17beb326cdc9abb61095833444ae0b75369e68030c1630636d701e1128bca51325f2647ee1dcef03f079e9620315a020c33269afddd7043669e03f53018510c48e2e58f511f56a279ef41e488e0da4b876ee37f6519791952b761af7986b7475b48d87a51c9b50144fee8c5c09d53620e13886b3110c8b8b88d0c7724a7ef45df797b26f90f86efa69d39708c6794e808510df9ccbe6834eeff9686ecb6a2192b33ca18404d1b3449ab9bb29333c8cfb915a7c5dfbf4a0291ea7d711606895a1eda3b2eb9179beeb29f125c0d13f5d1333277c850fdfd564ba4f99d6d6c74040e480d551cf195a1b76c9cf1139d571896b5c4818313c0a751f54f579c49083f8b5bb18e7df5d31c0b197afeb2826862459b712cb405d6537727d28a6818f5501f0f73e82c3cf390ae686aba43f7e00b975f387e3f38cee9a6dc25639629a108271e3b29a2791ccde2747565e37f475df0f018f7462342c9f101e89ebbc28003e3b690b828d3365644920ed24e2cefcfe6ee0bd98eae3cd0321fae1fd4a9de325dcc75ed01b18eaf51879117c103fe481b0a9cbba34c7b561fb164d0a67be80173d11189e0011ab0e266b5294aa2deb3baa7145813c544a1bd72ac46693e31135409bf7ffb600f53f4dd6a8ccedd69b4e97a6094ba01eff341dca55eb520b05c53ccee01cbc921af1b21724abdeed83426ec62cd2b68269c0eccf701ba21544b2fd2dae06ab3222466940da495dba8e11816ff354e5d5c70f0c283b5ca409b119e863c18fa2deb90177ff42d6cf7e8a2cfbc7a0cfcf493dde7ecd9007b02cd3ffa58298337e8b5e5de3041161076015f17723e3263a00e5d43a14ece8361ae33434df1b336c35bb8abf79ebb09c150706843ea683f73bad8f3ef6f83e0b9e04d19af37457cd10d1cc9076d6945a50ee34134250656808c6301d1039e0c68f1495adf612e3437747d28dedba385c92db6921c5c115f9e8a1aa49f6c13ef9f4c1b9df598f83d337498e899ee5bb5cf36d0011c7f0690b0d1f0ce93c96912f06e1e573bf617d11ca09d09e75c56a6fe7f92c6afac2e0bfb5dc2f6f7116d85cdf1142973a7eab4f472bac148fb169cd22e2a6316055234098c56ca100932cb566563202dd1a4de275786bfc48ca1d86ba9f0265cf78e3e7f9de0b1f07ccb39c9061b3a92ec3a1ef5be56a489c392a967bb83d5fac1ad2244bca2d5cb9d193468783bded76d706b03b0f6f2473818be5860eca5f4436059918c1fcef836ecf54bff0a530e3fc6822da71179c66b674ec2e2167f5f3b2d2e9c544efa245a49f9654234c8e948726aa7ee7991f49a2fc7aada399c20b4c456c3bdc71737140d78c7e0732ac1cd6923f7dea997e576a51ee7b56b8dfce77063f9bccd00a731aea70af2608f6e5f743770b3f631715e69b1c8d836faf09df063154072b4526fb89d5d0d0e2eaaf1f5ff122f958d3a155538465deb607f0173713375b9038a41cec45473659589af1b0b8222d2695a192b71b51224bd229dea4793cf1765e9a1d11277ba4b63fa04437293e5fd9dd1329980864b31a1ff9a2d06e3265ef6f3a7bb713c1410bfeb7967ab4496f38c911dc949ab64b188bced6324b11827f351ced54cccf2411d4b04cdf24817269ccdfae563880ffd40aabe52a9ea1ac3ae77ea368e9cc747f1da4d25edac432bd8612747671b9a0b7c8567117a404e3a0ca5c843bbebe355ea7d420e18d4b0685f039139182f5a237f9af08367f1c6aa3e7153c78f80b70be4ff6fb78747a5c691000740c208119576441a6d5d08c96d887f14ddbab81429d1a33ef7cd92c04499909aa1f67bdf17b609620210cb5f99c353c2bead5dac26c3d56629f528b0e5b450b104aeb92892b8978dd5b22bfecf6619af09ad1fcc670af54f06d63b49b2bbfd8404652e71330654516b85744789899870e8878cee09b0267afb0e834389c37dade05711bc637c7c9547d95f1c7dbb3e86f74bcad4126f600cca369a62cd3e455f4a170fdd39133f2017043571051141a0aebb6b6104890596d0f2eb31d80836e02fbf7bef6e11905b070fd9fdd4399592fce5d1c050fb397cbcb2c6b4d176c31033eb65616d541d87ca5357c41f15a2fa9e4658400f6a1f75ce05e7a075ce35b8291ae54ff503a98c0f1300516f576bf82b7f343a0f26c6071cdfbd2eb807ff1bd3219843b6fddf410faef35e7a8864f453ab885c5703714f3726ba41f610f25561ff53f6dd1b5ba3076bd9f8031ce19c4750572607deaec77a201d1626cf365e2952e2b375c17bce8df74bdf9cb2cfeea4b44c0f478aa882f4a14804499614f66ee379c5d7daa750fd7d47fdfc609871940654aa72e5da9459e5775d5394153656b79fe35d5b873a8c9ad7ea1a829f8daed501026ccd3702071374e7dda0c030b71a953e1378ba7ddf9e2f5b620fa0d70c5d907b41baf3b8cfd2112d5f1857269459f096556011c7f9f4dc3a4f839e683588dea50f971cb9e92c0e2e9fc383329ed398b6746e197c57add734b10926dbf338ca880d31a94df590595ed6fb8fa20c5177f736ea31227297db26735683721698116265ce6fb94c61c9a1d72252f121ce64e841f27dfe1aa347f358e1d3a65bb2c5e5272b3947deb82849e2cd15a4e6bd29098e9c64044531dcaa4a32ec2b88437c1e499eca7b682fee1c2857cb29173b6a8fbebd37efadf8347bec28ea699be0b2bc36f1aeb04057857f7b19ffaf0b58ff868b6a3ce0dbca25bd9336ccb404f954b33df11a541c36c32379a140a9ade8ca92644d398a891a155582a22ca4522f7694321509a9b4145a88a6aff6a7bec9bcb694b06c894d06c7afa6a83e2b517788d1345e78b2dec0f02e53c3a53e03abb613432e176fc48dc055e1f3246a6c96ea092ebb2c9c8fa74ac8cee4980cadc5ed685a605fcd11d2c93ef1c96b2ed781d06b70eb8ee7ef1d7878a4a8c086cf7d1c72b6147716a52f4ab4ec949955062256df151fbcc3553bdd50f6314f8f0f03d3f2d5e066fe0f12288c9cb4a9ac87dc00ef1ef83e6f2b1b15854aac7d8d887c1c2178fd6335db884da5b16329a04777cec327cd34ae53200f40b4d192fbb944a4c0b879d5a5fb2ad52c96119c2f2dfb7ffe6f4e95b2b6041d6826269a6033182b4acd1593fee52cf2caa03b1444ce5e0c0938a1e700ec3fb50d00739894ae52e8bd8101d43c22255b6895f559aab64e2d064fe09e91402950ed3932954c3918554e4cef924e269328955e43be53f55029d028f31ec3e358f57e82d97cb8ed9db7b56f0b856b3bf90df2bc87a1b1d79c82b14e955fd4ef98caf7e52913b77240fd0c41a3a6feca7b3145d64ff968646b49e9557f95d1dc9d4ffc45a1dfc7f1ffb0df017d8fa831626a0b69c3058368dc2aa84c700bae8e3f682a29a582d389604cc604b0d2fa18e4aa82ff0a24d2b55d03c01d5621f7dc3800e194a4c3b10c5045a8116b6ec8e44a4da8b75b7f47ebbf29de0a78c74c0c2aee13773041726b47a60bad8d15034531c3da5782c336466ec1bd0ceec5a1e4fd6d7642d5c6cba3bb2eb8d252dce359600b514bf11b26533f51da5df8f589a0b4b74129bdae397c888ca2137044d31d4a436e6e2ef49398ba155341731fc76510189b2d00dce831c2c0d1e3cca61f7c7cf38e934ef90a33d947ac1032579436e8e9ade59752e83d2d1586985f28c361e03d74082c2e05db5535b94f5d9f7d8d0da79d5a921bed30fca94a4b8291f17eab6da07475c453f45f9db4633bbb4f517437d0ebc27c1b70201bb2490c19298f0bff6964c975fcc7aa2e3e5f657cba038cbc8ba80957083cb84be5c777337de6ee2b3498dc86735a445fa2006da49a411cfe444c404dacec27cc0e00e605eea852dd2e9cd5678baa44746c117ddc5c6de2fdc90116db23776255b60ecd3f118078000fa178a64b929e7f5a43002a97d396798171fb8f64edc067698f595bf64c952607e840c75ccb63b7da59262adc86cc50efbafc1340d04a2c524d9f81b08cb3d9c968c7ee9806b5609112d17e5b7cf9ec6d55b20a51fd72f2b214b2e32258536438c53ca8bd66391f4e3036a9be6b50b3adbd126017cf814975c94172bf9ebbc3bd3bd3d6cfb793769e0cd274381680892bd2e4941925cdfd0950b8d2fce9bb119fc3220118eca0b5de053c24c2da46a0f87e82053ae62d6150162ae457341cc101643aa63ffd0c6a5e70ab669979d7de91636fe78255ad8f33b6ca447f4417835c23acdf1ff59b2de6020e7bfd64024fee100890109691112e28506335451ada75e44d7099d9f4e18d2b32eb5bb64fd563563cd905b67333ff00770a8ae6e3e704b5342bfe27cd8863249071033954ba64dd07ce0b6f8800063b8479bc902e2699b9938949294601fd6f11c00ae8b43016a14fb28246cc1a8ac0b5df040828c56387c81b6fc083b6d65bbe8542e1848e798228e5f3eb7da9b7cc0ba23062c860d9108c0c9df0e6b1293b136458920f70ef30d5738561f2509b026fe1faa6fae37f2180f5ad6f68437c5827008dadaeacfd054844c60ca7727be07fed8f0057ba21c88f146dbc9b13df53710dc04d932be6cb113b9204d11583f34a9c0849d087a7b382faa219ed83903591e975231ea37eea0352ea518563008463f4602ae9c47a997eb22a0ad9b4915e7644446899323601fe27ea1b22eb71bdffa3eaf48b5f2fa106ff3a381e870104ff792ea232f789c004fb263b383abaafe5359d6fee46bbaf995f8e5d4e725e41621968f52b4a8bcbabde33569e9f8bc6d013b51c15d6770cc5878b9f4bf14d18566c764792ddebf4fde40ca2d5ad3ad15f660cac4d406a9cbbea9c71bb85b10a992548de9e3dc09bfc28334afa0027e83bf16c0b122f678e70e7c0e19ec02734d8dba8bd62da2937efc9e320631fdb63a7eb460dd6a30513391af439e6331913d17aca43fdb04dd75f9e8f4b97e3800ab92b6fe4f3fcb661637d964919f4824b1577bff2f20c882c3d40bb3f946fde7a3bb20d85923bf792f06a4b1b32d2f316ae6b0696a0752436a388e33ecd858bd4bb7d376aa2aba8d842b63c3493ecef4c2296bd9a0d9f085bc312ca926341b4b94c511c719bf71ebbbf0fb2b1031181026d60692a62946eb3f45f17e83b13cd9b3a2b748b158647d6525f01f4f50ecc228e1e54df0ddd464f0d68e09c89daaf39f0ee5e664a57f84df11895ab53744f2925343bd33942e8e7c9b0e55538609b875f57da1e5ae00c6a762b710ffc0cfc358ba4c9f8a9742d950369e0f1d0a645ae3adbc11c65d982f47b65aec56815a113f153ef1d31917ea85a5a690102d5748d2f2854e3ec9531aaaa5f697266afbf3e9be852fbbcf7db9ace6fa09ad462a71f1306ac3eab4fa6cd7a65d05c660fbd14215e6c8c73c38b6342e74ca1b51fb0dc518983d4da76bcdbd1ae8ec762cf586624f7c242c953c4f927a5d56e733f28ccbde925ea05a5639b8ce3b6107a78b53cd1da4d59473e152d9afb4290756f2c45cdeb469648326fc4317e6f8750e0e30f0bf3d890116c92ad557faa97bdb3f97b9afaa4e460bae000fb4dedf1da5e0339d19a37eb474050d7463cb47c6a066903da2c346a3b7536c40181125a528f8d006d348b3748769abbd60821ee06b281c6e939a19f1006ae8d2cbed95b4259c80f0514f0657fb945ee17660d49fb48ca6464d9de8b65756ab7808451862bbddc25fbe1295740866b755a2e238efb987da9a84d7e1db8a39462c76835ef68373241846956f1eb4f1e91074f277001ea5407c4f3cf541613c66d3054cd83b1de0d26143a0f379654edc571c1bdf3de8a9f06251e518a8806f20222ea851d2ecdbf45d58e46ef318c1d2b6401992a11e24f952fbabeae549bd3eb4b7fe708cb9238371ceda0e2af52cdc9c90837064d137b16171792bdb0a250b7bf23345489955b6a922fc5beba36947da506e3d967358af6dba7fa910a17871cfcd3717dbe221a54f556339ebd31b415759f5907e57ff25bbc32e3d02b94f0d98944f1bc463a5914a8a0d35919ad66cb5ff530aea5a0b09a87a7267c1811f69c080794e5021d525bd8dd7db09bde735b826be5919e94e2b98579d4e13cf091bc40162990b04f6d6dd8097f3a4b092b4c655423a164149935b5d441a42983ba96eac2422dc18f272907c28666b8b4dad5127774105abac4bb5ae6e4a1f16d0aedd92ccda962428b66b6ec2ffbb2fb05b9dadb9df57b01a0c898b69316c2b1cdecef7d0eaddaf7391d03b67b940c2266a2e5cfb35c2486c04201f9dd9a39d9afb640a6538a18a8bd05c30fedbcfba1187dc8f803c48ce846bb08ed19374ac23e1d82fce57615f273058c461557769896bccd1cf233c7582b6e441b578a382fabb4490cd6f967154b56c0715812acf1302339a83263f9e3e6009fb2b584d156d789c574ce4ef25d213036d498b8962194c75534937430e8b0f9733d9185b7e0752e8390ee3da62f35097f8b99c21be2b22a272e5d88a98af1b1776e7e716487da909a149dfe930ad04d60a4ac32e1ef07e60784fca45a14b00c59e7ef5cbd36fd7b68a582025fc2835cc0e2bccf01e87390b148c13e7973bdaef541c56efdb55a7a0ddbd8480ac3761f060eb2a746df9f7cb6c328c43d5267dc18f1555789fac0906d558ff5c6dda53587b1b1ce55a2e8f2236ef8b4edc52a9ad24154af740bc91ee18b2e93965c8f42ce6c1d4f4e7578596d393e86b43c5be749b21b7608aa70307538f7e07f97647074403e46dacb443038680d2e39aab8cdcb6383ae1224f626159f244de8b54e5850b15224eea20070219ccfdbf9df9131d841efbe5d6dfca152673bb461cb3c3e07b6880cc2ac1462cf60ea6e8257da65d15c86fee180265fcbc1e9fc778fa03ddeb5535c9e4c0e204c6ec368e0cf4fb4bcc61d0eeb791c4ac9b01ba6b1db250d6ada651b8f8467c807dfda453a40e1be0e1d147a10250653fa3634568eab34053cc0ffc33f45e71b1015a96a8ea0cb2a1151400fdffe22f350485cc89768a14673d4d64906ad5aaaca4afb14312bf7e0e468f0550fc30b7b1770f41cae9a12284ff75cde048b5f2c73c6cc60c4eace3a00c5822910246a9a2067ed11cc47e22c04a6d34ac004999cb042c46f5553c945eddf018a6af39e4b9f2a5e1448f82e409b1c749d6cd4c8642d21c634e066910edb86636c2daf2edc917be651acd5d873685f83d0dcb06d89ed9ef718f0284f94f50f661216a5b57badf764ed5567bd61a6e84bcac316d199ff0042320afec6f6d67eb3663b198d8b2306b2ad9ea27c5003ca7850d60bc5c378d8b395ede1c607920b8335943f7244def29203021959675003fb87ccd1008bad1b6413f816e98c8015baf12af52726dab86bfbad6dbd65729b13f5b3b7c08f044267959383b8398a9df0ad2dd65beb35455da2ddfdb12b13157688064cfdbfacbc8f198f0d6d3e3bb9bd8c9bf2831e996a168c02b3626c32844dd8d3be127d1c8d4f462b7ce2e6273f03e75637336ab3d42dc4e90dca6647a61b72d3a782f96a81e27934a418e12131e1f77847a8147ad131f4c1409d5cbfc85c4290faf5b9ac67b00e14898f152011f7b4be1facd37176618cbdc1f132a95e291771751018b6f4477901e8e6703cc146236dd27bea715c8a46eb73945c070f0ddad6da1d0d0da7969bb33a55028e7371f8b71b189130e618b822968747f0053a885a1828bf869cac1c4a5412a44c0bb7a2adcd8341f04c47cb5501ad5ff35dd0b5b9016da78804d40a6bbc69b266a8f0ecb4a92311b5869e6a300307218750adfbd87de96ec6090320404bc6b304fbaeb979c2cb3b04d77839b856b06573d85358a8a46b1767260650041a37dfa49e304f3f184213b31ab7dec99a970196d0ce171a48955ec43c7766671d2224974755691b9d21cbfc31399a7a89b14fab869c04b26c7f5a7915fc2ca080e83603499d87a743648ace1ee9fa89d6745b0c32d494347232734f4bc8e6bc6796ba60628e366ddf3de56d5cc0fe0aba310a05a21caf1a59e254f652da852d1a523fd8b7d1cd6af0eba2fe1c355c02d798542739687b5bb3a502b066413e48b4e783613632b1fee2d5994b9fe124c6ed38552e27084ae86c3d8c3910ee58cfc29effdaf1039ff66a6b3af6835cb7bf828a00cecfc0591d959a20dad72a9a92e26c1192b02e655bc53d94c445c6b81d50cb5d5a19cd5994d4f3c78dfa18616c94b4adc3b8affc5f3ce5748d388bbc3216df5c664951574fb44f59e53449226533f69de87203e312334aa15b5108bfcb66cd71cf38b1d0c752bf6c8e6b20a6b3c2cd38a51e1839bdc61c5f9caeccc1f43daf3682c8864a5af175acf328b100547de7ac57110b816e75c44beb106beb70a2154bd5218c355d105db37cec4be949ca60eadbebebb87bb33bade540c71add36db05bd0570b0122178c7d58623b2729269ca27a04ab6eebb20a7717901ff0134096d8878a0ddc374e0ef47aab6f5d9e587d928e566e4440a004ec3ad07521566da4f9f4301b418dfac1a28cce9c3b529d2bc8bbcf9ec370d134ca1f656dee83f8a4be6fc437efa442f3e06677d5b59b9955950ad977c079ce85f3e3ad331d96fbc3cb3ddd6e4f064b4087ebf95e83b40ec09a86d0a2d68494d0ccf6835cabef9bc1085312940ed7c29ff32927e41acccd973adeef622283e5c1cb60f79bd78528f6bf0b019d83b3c4c82929fca18c31098467f5501ea0e12717a93676c8149241b5cedeaa2bf6e1b99ae40d30924a3c8b1bca7e670810a4081c5d449c1b5c422507289937036776055613f5f04a985ed2cce86d669cce2cd11bc353ac67c8c2b890e3ed214ac6544cfa762b4312dc8dab22e6f3f31b9b881c8b9f5285921bd0e8d23d5486a0de07f46c33f1a95335d8bdf1b15e0cd00df2a533310282cf52636353cb8e4c511a7b03bfb1957e1d3e7b810abbbecbad8cfe4dd945253804a69ca902b90560efc3c7752921b8414a2cd662f9da7a58dcd367fad9ca0986c6a375990610716b82e4ff7a6c99eca1e5c77302eac4ac3c2c58b02e5ef4f1aa86f480991400d70790d318032ddc395ced821722cb559462b8d8e34244aa87793d0266b8f570d6df3282c0358254e3fb1dfdc38b761770bd701e315005fd0830a6d1c38a93e1fd04dc8ee1b6f23179779b4f99b1e857fe5eb4c276877b68e16c545226ac354a2fa18f188bd436705833f283a4256ca18d5b73403605c1761e711a0e4771b29c31ca46eac5dc448f1bf8341dd975342b30531fbb99206a8027dab1123d28e5ab2e670eb4de1e80a61ccd7eda2745f4274098003ee0861a10455b8d7b8b9ed4b5918b5ca8729bd8438e180c8f43b4e19d2bfb66facda8b34a50c19a1b8a664185123322c4166ee551fcade05240df50e76609f3c58b55ef2ec897e99db85826dce6945ffdeca936bdeee41be5939e8d4bc8b171cd1b4277eb0968832651cef5f6241f42591893c7044259c7dac996d5586bcd67da60e60777d05508e5f9840299e3938288f92c0f68cb3e54b3823c8b38c9b7c902a457115bc96e94044b2fe5ce14f3e2b7bd014e6f4fd922933ff763323e8ad5f8439f86812924ae2e5ac7032fb80ed0ee02d048be89c40faa32a32938a436335058a9eadc59c06a6af37fe32c3d398e0c5456a67295d7dee91827df02fe5fc3f526b8a1dc3db06323124e473118d12cc92d7db2e77c48031d443b83ed1e8483da6ec1537c714b3418391d55d28790ff63b7d7b350c26de6da7b45c5a1a0280fc35b9fa3b3ad338ddbad963189945f6019a62283bb5543a45d0c0f8482d47883572e9d350731f7b2829e6c66acf8c9ee3db7529410098cb93c0172bcdcba1a8fae3458c12260c8fc49dbad167cd0ab65592ad4f63394bca807846a7f2d193df10fc2299fedaeb31da1f30fc18e8f5b8e907be1aa0f9ff580d98101f28d12c7c97293d298f94e6fef869f27e43e40a5aaab4a372ec7f7cc3fdce9409d1b751000fa25c9768898e27b49f183928f7699b863441fd0f8088251db63bbf1e93ac11436ba632230a587a92d15d43727f09b69b80366344290740648d4441f0a34e9e464781cafee717005de2d22e6b221b5764d9c4f550130a312193e6f61bc7765017d1af741c04349638910164454cf41c8717029f068194e57380547cc409c752bed2531e8f9f792e5b55d84529fa8bc0ca86bc1f478db9a4dc60c087527864cfd7e4fdc1928240232f2d0edc585ca21a27f7de7fa96b1608f8abb2e9c6e267a455540fc393a767506fbea91b51768fe2f701923ab89cf14ea0e9fa9fc43dc0a6bd832ac86eff2cee5e197d36314630f72b3b86ce6ac12edbed7ae2062d1f57cf0bd3c9ae740994d86dca716d02a91ccbcab4cd0b5d8839811562ec415e95487ebc06690be796e3d3fa7c91a11aa19a55529516736fa0205e505f08481c96c78ee9f121449385b3f8ae03838a0d85d01836015b8169008c0486fcc1b953f8df1009a6ffd37a6e449009e0747d5dba56bd78b6cef321cce1c749e5e4d1571984202e8ccac699784f9ccf353e2350b9a57d7a877a3338c87c2c71e1e37411d4117ca5702a435aeeffbb2fb604fb3b04cb6a916e8850d88852d562fd53c35a3bf11c94f8030f2d57235f658a92c85432b3fc8ae9e04b4f2150c244293ff850ed8da8c1efa669378acfd5f2e993176df7096310e0d0c0ca6d78b6345e30b8acf1e0c5db8119ba60cdb2fed440037640926aab84daa96418446afea3de087dd123042f2df275157b20088fed0b88710014c0f5aa2679a239e5f01a287b5a54d3d09ee91e34f4aea94fc162fc2cb308545c7e7e0f5f03add978789d203942e70125e36bfe172a1ae3fa712502b3e91154785952a0418cdf4899f9cb6463c5a57a027fd43b2a23ff6fe1fdc4738c8902190daf7b14cc843ab46673e417c268944e7e64dd8518f1e673a3e85baefbb18a2c7d6665c14f07c4f9bab6aae718ed5d9caf5d794e4dbb25bea918622fe0a48d28242c3adfe6b2e9fc5684eed00930d3806ac1eb4a5d9c4c4154273f1e66429839685b78c00c8c470ca1cd22e372d70a03960f97171d913b708758a9ad038ebf72b5b63769a3974c073103e85803378f9506b5166099d2d65de636c3aafa0234359d0d8dc398828a61dda58429e95acffce3cbc6ee2fc711b0c33936cc536b510da5c0d8814cf4a76a54fcbac5fe19a3b6c30ce4d3e5122697b081b0f006ed261c0981be5fcaa6b9af6b654c72a12b4f6e0c9a84ddc8e8ab6b27a0c27dd48d940f218ed700ed6e7f250b73b2dd60bc810a03c5b4b4d2d2858276177c9ba281605d830dcbf8a0ddf54e9eec961feda832ae8bbea6bcf549e0eb543e1e88a87d465fa2a9adf87a3355c4c3b88ccef913d0bd37dfc267986e014904b7c2b33ae25f0fbc5cd6e0d347f618dbae7eabf93b85d54f45839af3e5c7b2472796c39d04b553b99ea964c241ca0a5e0b65a3765a79ef443e90ac91977bfa1d5a2f7e473f0344cbed978793678de1f0c1d67189a8c3e307ac118adb6d3b3707b41775f0936e1c95c0f07d02110b68fd29d8841a6161480c8371d5ddb8661b59d7aea1e797c339403208c8d7a5afdb7fcb374a704337c3800e969c49e182c8a7709dfa6a1cd9058e757123770c5f7f1b1ca39a992f73d21af2d5779f037f701f7c96e51cf16e40ca0e77bdff70d8d14b2db5575d12e734758cc384862576dd33212679ebce8b0fdd74e8b9895122861952e67fa4644bce864ecc71a22fc3005df97296227873284cd5d1a8c04759fe529a4a11c8935ee4b4c33df141dcd0c0b1414651b02deb6482b857cf9b9f49f9cbef8d4b88d03dad652848f6389131d4ebafb82d7e19ed05274cf5a93a174d9ba517033dbacfcd3d655ccd329d2bd9e09f44fd29dd03ea3903d082cc8595e628bfb90010e60ad4c23ef7863a60adb081aac8f5146f084e293d20257166301c6fd801e8d4f74b3f5164150b475c33cff07dcca4e9c5002a57b2af259361022eb2fd21a4265e6ffa9a37d1c7617cd493522b5bf190a7649640f98e7bca9793d66ddaf8e0d40d7fccc5a21d8cf8b64eda21cd221f928e9d496bb59bb330991186d4a8893b0ad846f37f15682a472572c4d3e5e0ce81bdf8294afa934cf2fe6d84bada20fc11d2f6f9da1e89da0e76254ac4b021cac92f8b6259404de3400522bc6039b1140303afea8dbc6344a829ca123501c7a573d9ba92044768bb97a226af4ffd98e575eb5aa9e6a84f093d413b0c33d2417dfc16848f10522ac4909541b42956d6fa82e9725d812c8783c9cd8a6635e3e710b8fca3855b7d528f8427af4bdecfe858e0e4581a8ca7436957192b19ede97fde7e000a9426af879f6ca5e3bc2256c5b4aa3d92c3a13ef7c1bcf110507b5436f7ba7000531f5660de63bb07a3a08c622161eda2e7efc19138610a364b2c0baded08cba735349c2bf6c6d7d9706a647277a1cbb946e0b1dc2beacc9008685ca1df14a79dd019fdd6d0b11b271c18687a698047a9260a70c3d8357a0d5d4a68d76864296d262f4c98b7ea2ca4f2c0b227677a973d44e24ba4f7457b8ec79621cf579fb183cc35b59e1704bfe02130eb96d82aa082808b2e1aea1dd162474931e488c0311a8f66334b605d0e660fb90cd79192306a83870cfbe166f99910eb8f4ba11c8789d830c9a90f92a8528331563b9e8d018eebeaadf7c59360c335c6d42685cb081091624d4055cf40784a593cdb43dda86ef8ca8cdc71b6c26d7127102b75646b2a9a6336e093665072e9afbb4f5a75d704b395f98e72f2e54ffa997ea4f4425be526419f5912e8fc0c84987b43d8bf55d48b1847e5c283d1dd3459664b4199f259cf72d4fc5c5c1002363f83d90f6ccdfa8c5a2b8f74fd74232996dc40606246228b5dca8d209b683bd1f2e0c3ed0f14a2ea93e558c736304b13b2ef66351863bcb0263a1434f08083353e4398e71484c11958bd7fa5e6d0c2caecb48469be812a5b544cbaf93714084c79de207b0b9590098c94f074d5ec6ffbd5efb036e3e2ae3210befcff8de440bacb4370cf1f434059d69ec604607a62835648f9e6ae5c2f6324bf284d39f80dfb1653609c38621a8bbeb55096ea0ebf60dc7fc3272e49288d1cf2e4644e355ded49a323d8a4ef43498fd7555e6fa711a1a4dc7becb7d8498c1699d441b5e2c98d34a7ec05d2e11a73b885761c3fc0c14debcdcb170f173f92562e179245b51033eec35a8b89549292e62670ae8bc6e217aee72c9ade28f2a10fc494a82799b737a8a881da98cc00b27000676e3fe6053c8be763d7372ef8c92fda2d6e8187f6839c4a7a85fbd01c97172859de38d5881281daf934761ea783713ed550582198fa5b1ec741a1bab622c45645eb2bf6b24f0d49a2f4633d691223b08d00e409baa61d000e4ff7fe6c3df8aae75dd555b7f6c8dadb3793038f0f48f5d151b8cf24ecab9b15b9dadefc86996065e3ca77c19971c219b9b136e2405e8d9903cb563ab62493f7f7116384b432e027591c4c26c196fd63a034ad5bd40dbb402507c6ef1f879e202b313f8c8a79127a76ef4a47d56a799719d4d781303dd3c64b2c7c97b4fe08276015a9d3849e5058f1004f33424d17ea8ec810aa633aab02f5829040ba099d3051e964aed04f8a899f09b8060b2becc914fad7f44344cb82218b1dd1586adfbaf69c82a07c9624bf089338d84f020971962ed927a01a07cd8a0998edf7bb73d982f0308140176bdf1631cd0e107115c2ca9fe491d748ffac5cd359510e25e46228374aa75f67f8f71597cb30b3541808d26ea5a32b3cf546924ee8b7d0cc8cbf9bd463ad9b56622329577972ed1257c54a76b408c4528dab4987be768fae2d6da4c0934b07a20c4a87db4b9a31bee77c61cc03ba9618d7445bf89ab643462b8a7651c724d5c9c2943eb90fd5734a4db3c91552b0dd70ebe7505ffa13e58899c9ce4ed4bf1aa531e6d620321dff1440a84939c7d3ff20d5ee6aaf2cd8c9afe509119d59451d97cc6ea29d9beff417ae0599286af56a5dc8fe3ac878988cf358021b5497a106cbaecc075c65e28a627f123239fed7e257d1cf5eb1369acd47e18325ac8a50be50de2003ea77c993b66bb2e66e4e9a4d18e63eb586e21a3a27217b2ac0242e724b4bbbff9b84ca57a25cf49a39d4e0c45a587e950b3701bf12b56c0cda79b0cce9168d4f2beba682d3808d38d164f9245ad1fee4b69897aa662de9adeaa1930fedd0746e9dcfb50c5a0c801e7a01e13f4fbbd33b72e5941ecc74845fb165e0ffb45c3c0a2a0f2de08037662305bc02e4312f44585b5d2db045f6868237a4813eb4e32644eea2ceb14f5b3504cc17cf063c7477de87233e74a5aac474fd0379da3838ac6faae5695fd787fe645e2ca98d485e1ebdb3db546b1f96498505bcf0c918196d3ce7a7ec84448df75e2450132a11bce16de521e565c8785fdd9146c1fff09ca318906caa8a3fca0103b1838113138f82da4661ce84bacb0425c69f44f5dad4475fded3e0152fa6058a0502a463715341894132e44b4c99d0adedc4669518722e6499f5fe77111ed22daeb3678e33e844f37fb97227836e6c953fb43869870dcbaed16b6b70da7fc7ecee4e7f4c4ab698f41764a1f4a3160760ce349cdad58942b7f3187b62cb76fae061b2b01e1e4815ee29804decb4927a6ef686fb882df677ec6e5fbb90599287a947713d47348c6fcc449b626ec87177e02cdad4c3d8731fe876b58ddc6b7419a3d45a35d038d2a394b14508e2d7f49c462829a1c8cc19c315061e0756b906e9a97cce1b854eadc6d47cb4e5811a119026ebedb8e98d1b0f0b294a1c9c4a92fa4c782836035a27d0b496471f4ba1d5017811ceed30dd7282986a50718dd4c75c79edc230fb0e4e281868d472c545d89cad7a0fd2ff2877070b2e24260fe3e3a9abfb288f140903cdc1d91c3899f4f2b05e291b09bfdd0a1dd58e7aff2a74dc0cda9991a16518987a6af26adb39a24867d11d38bef2e9fbaa45f3217d5da19543a5758d9afc52003d6d1a46c71f78ab7bedc962da6ce9c4bcebd936568ce75e7963bedcb83c2afb2e3a49cbbfe116b575a5662c0fe262be9407fd9e25b649d2913980d20f2f3eadbad7b3bb1d709f8f2496ee0e206cc51dedf9ceca6e196578a8d3250f38646bfbdc956fb4d1ef0d8855bca3206c8e4a0ac47c4928030d9f3496f4e07880f70cb92f84204191378a2630a76e06fc24ad8d768475ff1594f9ada7ca5ea96feb48ab3827768bfa006b7919ae3885adfe30934de1a226b8e395f00114efba3d2b0063c01eba1862903a6db66af3495500413262915fbf7d211e9a024a381f6e7f294fb7ae0e666f2e04354fb60536e60ecd3da50a49afc451e45598acbbf097fc0c535b7873e3d6caa632dde5527ed6a4827d9ed80abcc00df4e82ffc265adf663e1a268ff67b9254f25c4b2859cbe96437efa0f11833c504b95568d052946f3444f16642563362db0ebd57c45c012af486e98c5a632fb2fdc65197c32be6e5166d695ea376b5be3260c26bdca0185f655d438865d751f0c9a3be7a50190b69a00a9a47172064be3039198af9bf8027212f9013d4726221044ab5f82a61d987bf64b0e673e35c51fdcfbf40998b68e18b5b71daa32e392444eac94419fb876b4b5eec3a81ecd03fa38e8f77a54c7128ef4a94d045eec86af7240b6e7ba2e00baa1ab233c89c191b60d8e5a3521e3a10710eeef91abce376b37f43659a762ba97445d588c80a702af573771a582811af925a91cef85d92de2c6a85d4b5b82ea0655fa05ae42a15bb8345c741c6587620f0ac9c0bb46173825192b093ce901e79026f83d88b9759c509091d2080af47a5f9e46f2f96edd61ac958265aac9e458da02f9a38d4adb326c9655e0d957656ce2ba6f9d54176a9e426243436808cdeb980095dcb7caee87129b93df570bb8bb8192ac73746e7044e2810bbcf2c47850dd66686a59f805e91541c1d155d36d17fa3060676a33c4ccbbc37f3f8bbd4c0f47e4e1f926adf235511aeba903a58d1148fd784279af43a08a2de7869176aa3a86344a7a8297fc2f15405ebfe26a8768ca4f0682e194c10e2c81574b7faeabfa18a3eae146907844170c84768f5ba18396b45cbd68b372085c32d7aa7d2d870fe863099673972acf35ee8f4d01a1a2002048d976020a21f0e44e1f35203a1b232cb4e56302066a1119d1b8f3d76c86b4829246543ea5880c319bae5ac3becd740364a3b60595a9d8b20160169d7cbae4dbd3c5497dc44b68715ddbe9176333285e964b003dba09dcb51b186086cee1cc135d54ba59fcefc77dc0ead9e47cf34d714272542a550f1022dee12837cc4a1ea122d78814117c81a36793e203f7914e7ef0e9da442851575bb19114eda953175dfec7dc507f1b979668761b1c5f349266303c9836a5c5f5290bd44cbc3d5684fd0c4a1a5322f47565499a9af4e182534ce738dba9fa60b3e650459cea9fb06e2a873068dac8fbb7095792c24a260231533243789854ae0157340c69f787654252a0ee93b41919fd408ce4d69fefcb2eb9534c21e496fb131bfdb38771ba66725ccaeab1047dd8d672eabf02054a842058371e30b1aabe94ac7be96c85fbecf749b25069183cd5bf506d1f354c52b0040ec0316c9030b652db4436d490639985d7ea562ccbaa61ebc283e0a685e306fded666450dedd556004031fe8c00fd3b7ff6614e0f466af9abac27d7085c6612844743e80909ae71b968677611ecf2b98b4712158c6df74eff6b7aac3df2c635adac263ea05b6ac15bdd67e3ef87254a9dccb6736109148c9be19d99c37412688b9542a90a021f7cbb877dbfa30e86df8dd4728470b81fe311b5c83f6410e468b1696b2def3b87952d4db7f1aaaf4fb8dfbbce984effdc4d5cacbe483b981a54e1ea6f05e5868d80c49acc115d95a3de535e3ab5304a6eed8e669ecc05075a83abb0414511bab7d998bea06badae81278e728870a4d43b02fa887e76db8e71f628ae1f85b9db634c585364d0a51aad2ca516779a690751be25f38d46afa2dc29c8827122eec85a798142f15d83d6e68012fed479273c0d6d879dee4dad056134356f21f16d8c7bdc98b7dca316ba1550267641a215bfeeb570ea7573ab954dbd7352618f0f33ce89ec06bf026dcad4ad604729d2720d67eaffc323b62f97045f58c4738d5f5c546848a245ee8cc198352284b5a1707606f0a4f223af4db6b8c6251e56702597cbb0a274e928aca37c338ed90b3c49fe31c2ff97beb80b4ce3d2ba3152ec35f8b77814228fc5881510433bf8232274f540e37aaa23689cd29f362a89134ef4a0de7713c65965b7cfe171ccb497285beb6f2dc4b7ac3eb4632a94bb3a04fe3e1ebfeb131d95a36bcf4e5937e40dbda1c0a96ed8ec85aee4a9070aa91d3651157da36125298e46b0ab00f9bac97af9bbc031191fdfd8c5d0b8cc26bd23014443861151824d9588404caaa86f7a4aa6d6ca7a866262a6d66e99ec9523175b707ab5b789d5b8021569c0e775ac48372d391ab80df56c21c200406391944407cd81a84e11295419c1f6fd0767ee9ab6fc45bbece22c6ede7679d2c9c39847387e4acb704308d3dd98cec78d41d574d193d0ba9b07191f934cf04839bf4e3e6484afd0c36838e27512a6e3967c8e57e4042946408e09e7b28b8d9958a4880d48bcbfc7ad67ed45e859783a9b0d060ab13f842cc1c107ce9aa5d485f97d97e13ee7613c9f38ac01c825ff0036996c648ccdf4d684b49298eb93247c854e18e33c37c9a399c550f90fc6d85e3b26d26d51cda232ce957a14614639ccdc579df03f2c13b0fb5c5b3c744022aa95842e936995c5b161768dcecd870717f7eac93d12cf39a0f67b281840ace408a1c1f7af66451f65741b761c902cc230d70059b32321db9269562474d96fef079dcbaf2347706742433c66ab100dfc2c977334664b4d08740b56dcb7fba6db106c45cb532876e13b482fbb34a85cd719a6fe413c4b76c65ac887b053546b325cb842f98954849c52bdd219fab72bc57d8e0510e36357e4ba32877750437b31b198a93dc4b1ee8281d58df9793e26554507fbffaa5c342068476bbf3a54c5eb2e1486f1ffd4a2604d0dff1c7526420e93a9f1000b4687cbaa57d22e22b63f460752684d17ac6da9487a0541ef429fc8ab79de178345cfc2dbc22d5e92b78e37e414dff780c83e3c82b2401c829c6c6707325eaa832955de73667721334cb65186d5fb6e4e1c632b6a44fbf1116c5fb231af618f430ba4c9e33d6e1489c1a143f553005b59822d7e365b32991d10c2363a8d5abb905f295506b0abbd8a7c305bd9a8c1e7dae613cb5232b351ad9f6b2a278fc8df857316d0a8daa7584c692930f1336ce75639f2fffd8bef1a33d18c4a5e29e3986e0dfd719063d8ccd4f0e1aaf6ad35eaedd8439686282bdd12b72228e206a7b17847eaaa0cdf7b09e2503846c12f4e0561f2c213b348203bf53a4f0b89b07e5a346b7d628c038747807e470955e463de3e53e5e0256e289476a37198db5203651a1d3507fbdd4fe9a0d04c2b11c89932ef20d1e683a68ac9eb1b7e9d1c145bceaf32c7de5addb86f3b267cc11c633372faec1475960377c25fe85ed74327daea973a5f3c4789a2d0d378bf969f360a1a253e7cff3ee0e4dd4aac33d246109fd4a36fbd4c2751d703642d971ba4c69a0534fbe6cc3ea8e1fcf317a912d865b41fbe3729c39e7a7ad60ed355bbb5969f3b476eab55b9d930e7425f5f79b847f87c13074c4f02cfa37cc7bd892ba82f2da88b33d757dc21de3baf95254b25dc5745a32e7ef1a5dc2081d7decbbe8c3e4770e59ef534ac121d4b5f57d66f4c9001dadb34cafc4189bcdca4819c86353c3e4010d8138e97a4c431d3934e8278afc56ace15ff51e40e5d500c1057e4201c25d008983d816d8b01d01127762bc9fee528d543dbdcdc2fb44481b5730eb2f1cb0e2759882085663ce7c03fe1302558a8305d62c1ae52a3878e0961cc4811d296cdf1f63bc42fb081c5ef0864dcdd62ad3d6950736cc8105b3d0483cd299c790221e484ee0676ce1df10fcbe9fdbf1df80be16999e201c0224c706c6d0e801132b27ae4111771b06b9e7a83820f16458816975eaf6a593bf4f9e1e73e6d0529875b72312cfda4c856933238de55dbe4f082302a63cf8c32cb1ed45f0fbe58c440721d36885bfa6e1986180566442a81301b4b67f4a9796e3227a1388febd84276632c42a71a7f4f7eea0f71dd41f836bd06fe3f5e33537069710e46e219313313a64c4818abb6e6c2065621456d8e5a370596623221d652fbe4a88cd49e1568dd086d55b728b9fd95e58d1ca5b57bc6a88883275f49a00e06b0324debee38113c9da3d9a35747606b9e8ad7b29a8adec989d46a37ab779d10b6d8bd535b6e6ec1275e06bda2895527bb99e915f5f485b1de341e01d3200ef8088596b4d557df188dcc2598f8ac1c5911b594ee91c9d1c25f584d70d30c3d72fa0abac0f38ec25dcdcc5f4c742f3f92750db5c6c84f26d6d5a13a6d9168895b718fa0f516f9261d81dc9bf801991b4bbb897e1440851bf815a71ed73d21d11a3bfb230ae2efab868cdff9ea0faa586c724a6fb3a3628b0b363c40089ac0a43cdecc53c278f205634056fa174f8c7e41f268eaca4d41b57cfa0d4e8da44d8043c0967ca7040a86a9ab27146a3f775229fb6ea2f04235e295bf55731f752f91f14175742ded6c9d845ebf093aece93d43c736758bbfec34f521364c3250475189471e67d25aeda8fd7ac3c9177c7555b5d506b7bb68164ab90b2f60f8a3f63ad526b7452e1255d52e704111c7ec31134a06498f67bae8b84b9e5551fe3edd215beba7b15ee2b1e2e05c3825ee00de2f0b78e70a543e90e3eee10d453b8e633bf62729fe2077441fceaf6587927e5d8665c2054d84961abd69819e563acfdaaf2e60aa8287d67e55bd9c3d85c95cebd3c5d931fb7f399efa118a874526736aa85fb43f311d91d517ae3d661660bd5ebda284d05fb75af999327cc3058537d5727ff0b2c116e4b1a75d872227b2bc94477c7049ad977901f8200c1d4ada856f13cfcf1b63338450b84e727b44cae1d453c9b808e82c64a621f56531283c0e372a5ee6651b50037e1fa3de7f1c84b047356f40907db82cd631c861671ad5ffc6eb36f05690880eb1506955a42d4f6ba5df8722a7b030a4ddb0590e1a0f682a50d4ce55483e6806a31e00dad0976870d99242a8dd96146f77bc5d35ac5bf0bc808b97cd9411feabf458697476d6e716c1da543a9072d105f4a47040901afb74f853e939166f4916a647b5e43585883a06a502e2f2320c542a49ac15935a81d040df47f5a27a35aaa24f99d39ce0211752c608b9c50b961784b626c68211fcdac72c1e88a91ff3ecfca537f368909f061fc110699433019f0bc7a75d1717fd34bad5d89b11444179cb79548fc4f6e9b1b3a092c30358acbcd12f7a42d203c9ebe1767dd4776daa2d50ef2aa05693294076f33fff2646d285059bf2fcc21cecb6ae210860211133fad07761c039c6499141e7eb53b39af51f4300f5c3ec37db8e1b83a623b24948b21fca5359f0c34c0337f0357a1e3e99a283a5c1b24b6e2a89114c900d9137a2a9fd6775029fe2672dbe4c378008f0f9fb624aa8019b0177c3ad08c6f9e2744a0904cec492c5cf597cc74316bb9112eb4905e25630866f346fda63ab397fd1e93c904f13088ed2cea984cc2d9576a1fbe22965fdd8f30dd7d287a81b2ff42fdd1106339f2af6c20b4585918c2b7c581100b8d6d7dd81051b301344de2701af8c2ad7222f6db49825c616207348fa64a8cd9121399cf33fef5e0ec91cd11bb97ed7ed54b4d537143204aadc55d9214799e7ce377445b55d5da4db1abed0b5408452f8c23689b0b1ef19509483fb43d17e721a2170fd56272054df78324a6114477fa4a07790cdf7d8a098977e067898764038979e0a1d351573bb3c05a15291f91db01847ce534933bd959a2622985ece4fd1d5a34d022c21f3422bfa328cb8c55e085bc913f8747dd24c478f18e4f7b37242476ce1b6539f35e4222a83971c6510d5fc273e6be7b4599ff177926269fc851894b4f6376e8cae0ee5eb29038a524160576c9b7972bcc9c876a32919d9c75c86d8e8149d051c8e2ffda2993ac4cbf680263c83c7ca30678188be69f685dda1b3fdfd04a84ba7141bc08341749b8041f46de5887124ccc08ae34e74b8a10492b1ec4b5c0a326f27853314cdc822d971d47486f66c5ac514c4db7e0f7e7c6bacd6024bd723488e66fd646a0f2caee3f4c045963f9616dc5a8268dc24c6b72357fb0561cfdb665568019df6f82e54c9678dc45eb8b2a226a5c6addceff03721247128325b3e41576d54949a2c8543bd2d8c64070b15dfdeb4c55ee72e05abea8ab049f2377d158d573dda5f04cd62c5b66e59ba743abdeb7ba49bc4469891c3a751d310a0e503c1f74f60c0304db658cd7acbfaacc8f323de3d78071c36c6631b9149370d137138270b493de3376b79afec1327fb531da0e6120ecf74bba311a300d58d1afd2ff5b91ffa9d4ee8df37e58617f45484f1f9d8efc4e4cb45aac2a282b20196ea674b513da54543b58633f2f165fd579fc123f38df4e201e517179910811c490753acbce026fc2a67d734b8d45c4cf793f9dc0fd73fbb62005cbea47ed774f7b0599899d190a363f318c92dc487405edf80cd4665e5e2f14aa7126bc1a842bf305c7e4860c6f5619c59a91e5bdfa991c64de670b2fc1a0bd50744a2931b67939814613f96288dd2b31f7043c03691a26ec5d97d7c99954891e99f3c35f02f04d265b84145152c177fd80b974c0c7a7a2e073a7b5739fa521bbcb2f15d6da8d8bd1993a280b1dc02e52ca24927de535346985741e4b6835b9afd029f843c177894531b3485bdb00f57dbb3fdd399160c0ee4226cbad74a2884813c8a96bdf4716247e6dc847d73eab97fad3865adc27aec17566cec71386fd32253bb30c14e68e9365ed2373dc5fb0284f8ad61b6a188ef3fb8f1908c124f7cdb546cf0331ef8b0009328293d27101176ca57f3982ff0d9f0050a89fd27b92dac44efe3354f540925f351e1d9dca04485047058840d001b2cfe54de5a4070a289bdabbc8b140c70066d7ef3d8737f80fe66b0f7195260d8c9d2f61ce73e173bbedb97e49a0808252b7788a1c833015b8ad089dbe1cfbd223ca314ba1d9f0cce5fe89e884c8ac23c13888c62c3c27600035d2b38931614de339c585b59cd081086ec9e74484f88af3bdddccdc43333dd0e39b6452455a2055060ef2303fd72696badd4f545b148c3681e7e2a079f5c252950d24a1f13e8fe2a6e07b3778d658d90c095add6544d14049b2e4328ddbc2e100696d1b6a858e516e60b46d315c22c47453fab27e94444482e94daa0d173be0b9cab42b59a83e7c6da6eebd98f049380d614d62a03413533a4f19d52dea157ca3c1083719614e37ac64c0a6ef7866cd6e863510b81cfae6dd67d73ee4c6eee95b57083b106c3c0edd6c9536bd9459c0d8958ec78671f2c317eb93b3bf061cfcf5bcaf55948d1793d94690621d99ec88952a56d9941266c3214ff2ea7784d53c675de4a5ff22351483fe8e62cc666cce1353f4c79f26fa93e68cd0ee2b194166554f3e3e3557900eafcde69618447d119b1dfcfc1ce7d1114442abbcfa88745159eeff281bd801cd2c414027fa78d4a3d660e23f32a7f9b1f35c179bdc295deb0c7781d985c4583344f38623da8603dcba429634a52181c4883493149430bc4c20560b01443940ded2c70457b402854e54cdfcdfe3130cc09741528872aca20adfe7e0d9c43950b31dc3e7ebd4cea932f6d7b880aafba761bce1fd178215c3501477742fc72e6afb3c67e8feaa12fa65692b9d937d846b655d40be44041de4a8c2e4d1270b510fd695a783379255b519b95017bac605d2e035f46baf6ae09970696ebd9bfd5dbd7e4b855e18fa0f203e784a8ff6ca0c25341a87ff999e7e56109752c2d146980da487708c10a0ad848a6ab3e6205a832b6636b2dd533d8909a839c49dc35926f9536d56ff25c10375288356f181133f8b2254812266ac07791ee8808b105c91c6bd991d3df1ab3f7c28a97e7befd93116b45214b2c98fc540738df484c0aca316dab503f94f4bed18b9367d1566dca65ba69f06a4ebffde5d299f7c146562b12853b9f6a663d93c4811eec8df041afaa9d3054b1fd043c432045d879bcc5a42e1906bf4cf24cf76b3b1ca1121dd998e8ce0d5d34cfaeb94154aa52b5c01d788d3858231ea541f3dbfb050dd57f1ad2aa6c15b1ac4348c7d726e760a5a0bd709607a4b689d11fb888c6b538e586e977413a59f5521c817668600abbc23c16b6950f42577783d456af512c88429dbca546b84b96c41fa5d19608e8a17cb3a720efb374ccd391c3a792082bc17ae5d5c714e24e8df6a440a73e0613eeff3221afc780c1931c10578ebc468e0d4d8818b98eb86c35d16d33767993024d29f98aea32b990e9c298186c8e0b3b3984ff7f6ae7f204995a70413e9cdc4c4bf0abd96bc099e93855e7fbb1d431a736772bc92012e53f893ef21d455f6e6efb5b3ad274684ed11fad203b7cd04c0736032342b2095c3360ee3497f0f5f0bc669ffe42616e6cf5fd05fa1616eb5af20b9a193882e3ca46e1a275de526429c370bf11481529cd8891b96ed6501d0a284f6a9d7e02cfe21848b9c4bbcce7d518b3a45e9291d87970074ac3281eb1d4d0d6b669f7286c2f5b00be7423b66170d1f89a4cf2916dc5829a5865411e496b29c7222bab7a316d58c1fbaa50917c747efd3bf24b6b069d9647295c40527b0be71b6494f7cf871b062c504177d09795a1cd571996236f3f9adfa78dd4fe231bebf0e7a9eb0675312e9e78b8bd307ad4812d0f5a57b328e0c5f5df1fede394b72b5284d4069a037c6c4fba707c06224a115fa1103da9ba415f62391ba4502313b689d119d4104eff5a666b80a1fda5d8d5aa3dd0701d133cf6191df5f82119f53bf598cf09299c4f55f22e424589cf7be92084e25b408b90d9688d0c3c06a8537fffb5d7cf3e714e21b6bdaa63b6bb4ffde76880e9195d51fe8df9d1a1868890d6849920e1b922200c111c28ba07090b1b61806291d178d800f96e36edd4e3bb05fe701780888da265c0162d7bf03df93844fc8b4083c789160dab696fdd8d8093cb5a0023bd62835637d77c31348d7dafd7be7965a048813cb6fa5fcc4847dab47acfb8efd43fc87250bea7f40a3726b4e368fc5477e3a0d5c2244f1b667f815117c0dea10544a9132050627c3aed9f4c29ae541701b046d557f477dae6f4c549292d8b9e61813b3abc84929a810cd02ded061fbd34516e5cb164c50ba777b59166f7c3a3dd6e9a36af61817aa283d496b0570c1a3c30d87b69cd1b9f618b2d540756c6124a6444296e65100543b28df511a62b846b7ba4788f061a0abb7b49338f2688d2a243e8681483709d6b07c2a512b6f0372d7839548c5d4903d3eca5e3cce69701408434733b46e6099d7f1446db5b95ef7220adc2ae749926797aaa197357c6d99c70dd38ac1ddddee9c54d5d278f4a6be6abd09eadaf46bba4b974747ebff960289fe452bd9d4523ccfed559f714f6e88c149071f3bced69d2709e65880b60a8b2bc2c4a2949125be5c285209395a7b3fcf0c54ebb487acc8511a7570761b43b43eed5054097b368d07a7290914b7d2e99fcdc76766158ea56bb2ecda3174eaf85531036ae8f29524c70840ef641562aa3fcb9ae8585a001792383202de146a57e827d03063bca43df24434451655662a75d22c75e33bcaf30b22299392089d262035d0b91f19c0ec53f80c4516227ea62453e4d61b470eafb5ac94d7f8a6fa600c0dc6bb6cbc8544614228b991352ce11ab9adcadc7f3175e3d8c54a46464f3aadd4e728462f140b0890978497862edb702b96ccf603eded2ad79a8317ddad54f17315a31f4c0764c8630b052655cb5a5cdf904b5c311a3ee2347ac07cad58047aaad24a6ed566cc37e75dce3eca53987a1dc164b09fb7b17e54798a8b0e9e7505465330a53973c718c20edabc38cd6eb30378e2f78585200a6950593be5f8a27f3404855ebe41ab7e33f5d4e1f7eb6f91f22d368aff4c27ed5c1aff5514b33d71b8c6c9d0712b33cab3969fe8f3eb7bff91d102bb1c53b0ec0c77859bbd7352811011db67c7707fef967c4c886302becdab04bc1374dcb82377025d1d4a08afb111a5317e613f78e1445535984d66f2f403c737a657976a7478a9aa380e1f434f5711594862499e248c18ba06715fbe849eb84809b5d881c169a0f4d8680d8089ab15181da95ed90fa2dc308a5cc7e116f66d2b6e21f8d790b6bd42485916c9ac2d64b26ac4453beda5f3c591edf5b36d1ec44a102ba94f5200d769b1d6d42f5111c2318172a5c8da1b424b79698d72eeadd69f1e144ae090ccb8fc0f01797f6723b35c9cc7f49fa92a079f4899c8a63db64f886394ef849829b51a5eb5956b89f696edad3e2b07d1b15481c4a75ac470d7f4853962e61dfe7caa94bc276e340eabe41a97c235777879c8c2d5730cc64e4f4c1190d9df813d45ce7947e5304a897d1126c983aaa7cee9b1c5bc0a6e5f982dab896c13c4da26ca37202da011ea12a095c0a7c76d109530085163f11ec4db7f7af8893ed77d8c6006dc040bbb8426da919e9d7e6d55fa89949f3913e75720343e7caa8b8eee2f6c4406b35fca34bc0323b2c411e6f49e373422fc296661b290395881353a29a76a9dbe45c649c0a77cd317ace69d644d36b654d7f7a9fd942b9fce21aae7a835a1b780cedda0528885c30fd1df639ef425f6111f25b890a7ac06b21e015686ce1faa9c8d4a1d7710b6439240c387d5e8d7ec55086d8c534b1896ee722312849f341c3d30228836318265c319c8e502269eae3a1f31a4320c38e78c27077d879ab2f5a5269d39b200cac48ce493548e5a0a6eded7fe235b20fb49519874151d35837a05fd93adf0cdbc97089f34b6216aae486f6d660c62d314a01a7646582b1a346ac5e39b745e4e1735b920f6bd1e3d5012a99375b84b66000119dfe2daced5663f1e618714e6bbbcf70e130f680e8d8e8dd30ffb8e4b493b0d1b6694003771c2a48b4b7b75969a7be18b0c0ed228e3b8df7432b98e2f79cb33c04ff5eb04f4e4ef3fb3cddc97265fd635c4762288703b89367bc5d7fb26904ffa841f9a84dd6e3f70cfd67d6385be63c9e01c9f92776bb8e9ae85e580a07708bffe28fb8b6a4c94508a21b33498b5e2db9e3095e901f17055b527b148d4b4ebea65c8b59730584a4af36c4f031aa48290ba2656fed0269da4179df4bfd9ace7e2c0798d78f65af6cbc0af50b81020e197edcc8a7823ea07c4d8735a7da10e562925c7b56b3b114f22df061bbe4387c10aaa12391a425e543f8a43d8c70204dd510f9c4b6767753935870b88766f33b13a1831626b7884be666f08e3aadd82e8ff63a4c38a7a9e616bb186b5a26e2730681a7966a39b6a772e20900d765b993e3df7be42ea2e7b961326c6a1ff869f75683b1ef063fa964c4a74aff3300babcfc6c392dd07647bd5d8d5324012b7c8c39322e7f16d0e6294623874688f50140161dfca6b5ccd8f5665907b384d5b8191e09bf16337921a4299d47d9e5888ed504dfa2b8cb69db846e9e21c10dadc1d15f493c40863b3e4aecfe92c8b14008bad5da8a46a23c049cf5208dba0648161a1f005bca2f79df7f4fba205e935e85cb99020bf64aace429aa51aafefd3fb065311c1e2212a21f869914bab0b29000d897743599ee83e8bffc0e6e38f54507295460ded14430464c385d8cb9690001d2508012f64a1d1ec4a7f0582b32abe2f01534cbf05da1481ab79e9fc4cd3be5a2d6b5b9e4830d11471a7908ca75adc20f0cb1c2c5f3429894c773d4ea2b1927980bc4698c2480cb9fa7b0869d0085554e6b3e974d269327b4bb8246fb6e793e612557d3bda48499d853fee15b543e1bb44d41c7e423363df3c604bf614765a86844e8872401447d1a61147dbc78a1d59319e2e1f9f8ff38e9f5178ebf2dbc36bf4c640affca0d85045ed7e07356a1ea3326e6e26935402f5a25ebdb825c5c806e470dcc67504177833dce0fc0a42f70ff05e08ae87f6b9dd7a77923496743653f60a6784e90d6afeaad27881cf5bb27e072f89f462f3d4bde08411bd8a05ad582eb01845e31c1a003c611e6fa114f4d196274766a0158211c00f0d2d45507b6b8b0245277626c9988bd8d74434a8ff2574caf38a4259cc35795cffaa726ffce207fae29b3d5d7834274487e765f6fd868166ae9eca7f2c11a8c4ab07e770deb3f94eee2d69869da4acdc3b774aee312804dbd6d3c8299a079a4685927e857b67139c35eb96864cb3a1e4a4dd0b3e402685e9b2413a3ea8a0a1c71138a1ec6599b13c13d4a0ef64c4786c3d77d2bf1c767457c3cd80081136050dea15c6cf6fd40d8246c5474eb34a28af416ad0e259ecf62091cb308df72839108e246ebbc992630d225aa86ced3568aea0380cb6abd3c21c119f1f6884e3e98cbea5a25bef4fe0a106f9a6e5aab79960e93aa764f65834113309ec96be11b00f7939ea4f4db7f7774cb3fe1b3b5eaaa522848cb58e4286019dd90f6851d344a276ed85f985db1a157337c6dfccfd75eed3a53f73003045368a0917316939e39c1ce4a3b22d7464d8c142c07dd413e31b8feeea9ab381a4f67e4223647fa7e4642b789155ed8d58ed6e35ea6f0cb3837ccf116837c94dc0071975a568a8f4debb0eaafb74df43c00f85a4888cc2ed759fa13f06d7acadc3c2a4697f0d9d5eb0d5fc47a100097bb81671d99efb3aeb70a0907cd08ed1fb167c16175000cd1e9e69526976c255514c4f160adaa24018bc84bac751982ce8159e8b6578ea8f3bd6d2d55d0c3426942d84b99b267afa2970e88b53a241362702354a4703f0b6e48cd87328ab682a212f07964aa1cf9a20018a7babd758b8e260dbbfe9b2e335219dae8c15fb693ed38c759728ad22b7b2c60cabd491f33577226be0c1ff2a9b616dbe5908212027de3abd2d9666bbbdaf8fc3b2256074967454029bb24b2f59f3ec276909ee41ea5211fa05ecacf12769305e20d22c3cd3b855d6b571ad1925b06e5a74cc13b18d1f12ef58c3fbf2d8126d066b75ecca14c5d5f6c9feaa231a1507f8895e6e8cc6f9a61c98803af7e57c76283360c8f3d60a470588f9aae8c907ecd495c42fccfcd6233a1e735d55d61f69051a23385865c6e4c5e631b65642b1a2e2d8ee37d808d5e686a23df50de5db9f51616992dd86f08408d798e43beb6154078efffc9524d335fa46f4085155526cfc3f49d576d3dd153f774459ea8e12630a9a95cb077b48499bb2a7218f14a26eec49dc81dce9b796bdecd0f28f0520da5a87b90f63c55e9d236868656ee58071d9264e9a3cb5b405dd2bb18e56255b1b49f62a5bd42998ae52620f00b5b9fd754fb1966df3a5e25577c3355a3849572495ba4e42f62935fd5cc938e31625d42c99b7edb648b7a690b7e512f32e9cb977dc6ff2d0b97f11a9f17053384ec504a891670367a2cc9a403cf718a47b893d62bd6bcf9bfde5b71aef40fee751ffbd6c9278d4694ccc98300a232d4037bb9db62b93a02fc17983e3f25b09b18de23a565cd3ed9eac527483c6bf81cc9233119d193f5dc62dd03448a1d4ff91e91472eaed5427f631ad9cf5c4b09de475f6160e5c1d327057ce79b4ef8b1b497380c3608a36667d20d9eb668a3b5a09df65cea5c8cdf971619d844cabdfaf3ef06f15c0d47529cdc8d165f1537df28e3a06302e5c7960a45a7c0b313a72951528e4642185a7e9fe045c18b483878364e6bf648b734e922f91dbcd701c4c4f8c5971a5a9ff7a4f45e3e9cf52557e7ba5a8ff2327e1927e5470d851723e05a6c089c155ba94d47ce1c14cd4b430756b9ff98ba8bb8f010b0522661b7b503486b2a4299c9f77d5d228a609ed736bf9cedd3444bf250fe16290c3d5a9b2e60adbb8405efbf7919bf2dbcee59c060b957b53ad8fa969656723f52623e6ef2aa21f137ab68a5f3f899059bd27bd66ef9b1a5a09821db4b1483d591efbfa5e034f349db98fa4e788d36c3c3ac1a0e5c66d4b7b34d2040a4aa5877b190b16d11556f7f3edbac28e12375d818b47f905a1ecf795c64994a631db6a4e8241de9d2c526215a2f540fb012dd4d04bfdf1e1928b3cb98759f396ddebda8efde7521fd6a9bbf3853b77caf3d568bc6772b441370afda7db5e57b7d0270acc4f4a08e7e1157a29d573e51bdde91b061eb8aba4b1efdba7d8b37ce25bf45481f759f882700d63cc6b47cbac90e10c1345fd18c2e536b21e90451e5e9adff572aa4ee3557bc60ca71ebba47332f00c2087f951926aa4161cf3f8c72fcbdbf98670e1b06ecb94653ca6394250510d1346c22354f27573571ff633bb20a17c4fd5b294c8cb08f6052c3b7ddff39b517dfc3b359621b1ca2d14ddfeb0ed597536574089d09d0d5af0ac3e42992cf56ccb8c96fea9920ab47dff773988d1c2f6ba524d31ed57b93c928cbd81b6aa6793d9b0e4b074d626a61ff31c0693226ac2fffdbfec3cafed23c891e033b861203c8bf2ee048436859ff51196aa3791fbfcda8776340785fa943a8ad78643709d1b974ab49cd4d29e703a4a38e244b71f71e4c40611e5a5e58811f248e3ba1e2449d01018af3b73ba16a763e225e6984bd5291797c96682be775df4310dae60efd909a215edb9103a677daa909b6e807da1cdfacbc1a803ca97269432bf13ccdb67fc87f710c48618602ed607eaa82c796e024ea27327a6b360ce891d23a760e40d262934aa5186c09fa880a1997bf6f0c584e7836462315a4c5a5138c83038845fd4104e4e7765c5bc6230e9b49c054167a1aed632c03f7245f0b1c684ba71822c1299976fd47276b3e1efb1479bd2ee546c353d1126ea0847d18bf433ed182d263f88b98ac245daa3d4285fa8b2e526af7b84f9e22a738a22cfe55a93341b7ac78ed93488e2b5b49b559074aa9f704a437ebbf0d42a1defbaf74408142648ddfa8011258887213f395d74fc9da65b894ed8ea6eb458b9a9404edf19427df165b400e3c23b6f03b4f0907162dd0f8d9e75e3feac9265ab65725a927e1c7e3c0cd25d10abe355a6f759ec04cd4cddc40a8df49bc460d21e62b97aeb0eee9bde3671c551885369f0cbb3f703e4d356780da79269d78e615e6784d361dbc6df90102ea7fd336f5822ee92cb0ccb95f735c0479e18aeb0a0f61303438cbe1fdff2db8324fc44c6b112a429bcb79c2d512c6865bb21e0613fecf964c4f94abd97995c4178d3e0a49b34ded039b797f5fade346463fef5b60812cf161ccf7447592db9ce3008f9745a40599eb811f881c547e849323794b03c53f28485d5bee86aa1d41255ae392481b62290f0c7cebde3fcc69558f24365718b705334f457fc86db42ff2834b306586267f01e74a1d7336d1d52b12f34c8cd93419b92b4e7933922178d45f267d445a30aac342bc23dea0b5de57bcb5fa547b994c9ebfdaa6e72d53156c3e8ec828717285589a929c15389aadd5dce5287852cd74b29d778ca0ff3f6c3adce2a7cfc305c499c6d356d027c9397b691b3db70ad887fbb4b15479a24e98b85cf2f44dc60e40f9c1b891f639d6c81eca46a82a7c495cf5a2a55bacb289ae4274c8b2c9996dd6826257835b27aa61197c65d4e71b6ade7d95dea7b20b82ff46b7fc27bf9d488fc70712ced2d8dc506cddbfbf50c8818cd3233d8a225a3072550049f0536f4901bc3f053090d1ac9bd7a759fcb8787b3415c8f552db816ca2417a379fecf91e544908cbc6e286e39e35f9b2e717918361b2cdfdccdf16dce81aa01d33fabe35969b711b0e4d537d9ba1fb31fc3fb0f77c0182d2d52fedb6d8fc08318334e30784e84598c0e209d89f396075669ec25d9e885d7076869223eb7220a07bb0fd569672c9945a2ab35d035819c1338b12ba263b10ce5647dbe18a4eeb3c490d631725fc345fabab06ab0f7994b01728c14d64fd3a476513c9a87f73369f85eb61721d0ca4056d237c1d3f4dc289b6f97ea5c0d4f286e06a7e9c9d3733a9488174054f14cf001745f9e26ac709faaba90ab3f377864b9e65243d201501c2a1b4295434ec50cb8185614ae74a43358acbc1a7ec511d4223d70d596092cf06835cfd655101e5e07efc79c56d91f6f456779c509779854eccf6fa5cfc2d56ce2b78a66b47b160af0265e02ac5dcce2f7f2002ba152f146ef79cd7d97ab2117af3f5d64966b1f84eb5d6a1d1d8b561d98b73e3cc64ae78f5ad42dc7f131cbd39c254411856ff3288000c531d63850bc9944d19deb884cdd6331a7423f581753678d1504b0313b6d1d30671cff1d9062affa9c59ab099e973b19cf8a91be2bcf8bfaf0f4f90bebd8e79dbc24e701d36e99d1acb852db8e45f0b761db9243018e8f6c9953ce45e49bcc84039b3ee0d858e79952229bb2f88f54794288576a2fd926219db6dc5808db733f3eb2181816536d3163fb38ffec2c1d0476e11f76f9b8ea347ba0bc21e626da938191b10e1e4e52834d50e0ceae03e38efd552ea4976699769534db71783cab2311d86ab162e9bd2dc6ee259c78ff2e5176e8ff4ea8d9d7a18af56149ce3336a10657e96c9f7f06042085647928004e62c3a40a550bb47820945063ec0296725f2f7c8188e1d83bde6228f020f295453688d39a7cceda413427c4a0317b476876271a3e3d43bec0d12c3904c8850f09b1bb6a71559dcec9d981d2d0b9b64b76aefcf1c4e6e7a3db5a91695fbe10bde9ff276d464216575535d5d576d9ab7e2ec50d20c4b73cf4fde851f6bb8b80ee5898174f48107a7ba932bc768820f0a91ad1b3c3431b1df4a9f8d8981e281053d3357c58dfee2b48b537183516eb68f2031dcee9cc56d97993fb5f458214b554d7461c0dd8aa4bd47c6ec4e40bc79b80c6ad082ed169c2a2fc0363fdb2a720a4db50fbb16e21bd988d9e710003cf32bb0ac337b162a0537ca8944ed770e67d86fa2c4d6e5a9156cea78402c52f53090fd0be7dc7cfbbbed41d7273c3bc7ccde41fb0268372e450a0da5dc8d720a247d2d3b72eddfde0db257b5af037dae057e706aeb4609d04bee4604f9660da5055960715c869622620d6f91836c3258314197694b2a92d3b8d0ecd5b54621941612fd5734a572ac35e01c8804e4c1ab457dae58e28885a5d474a0a896c131d0ee206813e52253208b44d17ee7558cb20dd045228b958ddbabcb9bf04bfa230bb94b1899b88072a8500f1d504103bcb5ed28710033e03ea50cffe286691c4bbc38d367dec38f713392a681bd23955e057017acc85d5f4829efeb4bd8016f4bfcbb8c02bfb8bb32ee46d5bafb9b5bf35446c109fc1cf96320df04d358181729f60cf06d9dc4ea06f115b7801069cb9949dcef4c1236cddbd2cc67e7c78c0173e368d8ff340860225a5e6d4eae55e318240bdad5f140d7d8759344f3188c0c133a0e808970478f9ee2a4ea7ecc5bb0837c1d91f280d7748ca7b2587be587e160d4a0f0aa4dcc09f20bc48b46b922ad7dfb4b3e8b64107c36857607830be6886c7fa74494b8d0c094973824611b95ba6a44369bac6706efee135a15dc38946e2aa0ddafe93506d809670a1cb9cbdbe02af61e679eb556ad59e069c0989ecc7b683a31fbfdd5f9e7adc74064798f60f65ca01eecba67ce6b22fec8d852d5bb9d20be7d3611327943f3664c9080fd13acbd95b161488425311afb1813d9117b7b06828fc3136b264f692be5f9328099e5c27ee565aa73e7cacd8bdc58b2cf7ad537147a1a69cd37f5c058f91d87bd2fd222c2bf28a2d3ebd50633654126a60b1c69bd337154c17b25dae5ba98236ebeafc16b2ad2c910b18148abc5a6bda009db0b6de4497ca8b24b66faf53efeb99b1114c521c6b684e95b55fff60b8127073606b427dcac0da75e4ef4085fef0e7ccb136e47101333de78aef55e03c7cb30ab3c60400133cb61ba18b1b8224218bc1569b2e9492fae2ea45f0a0994065049c6658caeda3e840fc57fa4d8f312041488bedfd21090646c87e95069bcd6b4bbeb1f9de002d3269c7c85603f16eaff6670b67bafc2abbe2ceb51cfde408b382db9723e7a628757cddb271ad9b3db2faec65ba0e2809a69893e9f331beacbd8c94d4b1db030df7a8482ac121c060877332515aac9023636db5713fa8ff0cf6a6903019b773d8c4856c312b2e957939fb4cb1dec0728e95baed400c309efe231e0d755262864af0693430f7c9ce25a1f9da7016a03f752612690efed07dede3e53aa5a3b2a9443dc9c0138a276d34d78a22452c8f33300c1eec6a683ad2d34666bf21d5a884d42293d68dbe45d174cd33172c13e39d13bc5444460b708cde9f0848c02e7104e25e0bc66ae9f46ad0589097790f5d41746b97a54d7cd9b44f48031381f1947bcbf705c9119294768491e939a8cca4efe36e90ab66ea20d6ffe9ef41d6c0c46b3ddd73e8237759e6aebc1ced6a126f5491c89e4dd4bc0c070f4b5adc0309bd85e43e317e2e39624edb1709957f3abc3b498e1a914752e83b9cc7d4d75139791d40cc055f9f9d1d26fbf4cbb63cbd0f59fa82257ecae223234b13f7e9a29a12bbe1801abd62186e94b8f058a8c1cdf13c1e900a690afe2447f9ec6d3e7383eec57d1a01f999ea759ca7b6e145ba62e1d565123be927e6d9e3e225e39722529f050e3fa4b4b42fece038e82462f1fda3f046b645fdd65c2edf8a1c259e9261c6298c0838ac2dbe0ef8eeb0e2ae09faf20a70459b30ec95b7d41feb98313678cdb9766c9c6c85efab917ee2ca8ef185187afa45b78b218af6cc373e421f55c5d419c997aea6363d4e2bfc968dedfca6efc4d947a5c4d3667b7cc0c7c464a4913d3521c5e27631eaf74b0ef1bc49200a2c645d2059d43a4828a784f6e65ae3a7d7ba76c189870ccebb11c7205f08f81738da2a3c19a2881d62bb3becc336515571790337d13a065cf8a9e1cd3581fed96ea3d359cca0ea6d46fe6f085b2c969231f4910168db0b4efd675517131649c6df0d83ed168baa44a0faf22bc66532418eeb65e6fa0be7ec8f267420ccad57884f4570c53e1fae0556411b04ddc833cb2082231ea9f5c81edcf3ae0cb83826337665abdcec0ee9bad3c335a99bbde04aa2cad6e39f0251f05c1fc9cbff1f0619943f49bfe0799217799816ae7c9390aa9cc8234a9fa1da7d6b75e28e9bdd7c35ea17f23c7ffbaafea3d59371165225bac011b5ad3f86e6bb83808b484480eafb5352d4ea52f6a24cb0cde4f8500be5c14062616d289576b5ee1f4e57f0b5ea4c92035dcc231cf47061c956da17f0e5946aa328d993b28fd64639becb2bfbdc410d6ef80ce763553c1139603be135f2e63fc5c39562667ed4505783005221b65cc4cdf5515ff638c4222992d91512110b914324c8a53ace2e29004f50a0db723651fb88dd68648c2c58c8bea4150eb447c3df82094d1b95bd490bb0e8713d0501a99e1f74def84edcad70fa3877537147ed73ee0fd8dba98f0763d0d5e08d4169bcc06ece0e5b3a3a9a7229f4d26c8701986c7abb991caa68cafd760da881326f6733b213a4af28ca6fa72adc54a9748a8a89c05c714371fc670c4653ba8777e02cc750d663d64eb055b868c665d3a6fe03774fcddbf7c59b57d424c9a487cdb0a1dc5ac36efc0d869566caf3efc940a385900f262573de30902fad2499f75aab919617563137aa700ccc7d300aae26ff90094cc0e8f2a53a5a5cffdef473f1b74707a2d3fb5781e0cf8990ee207d069b37b6cab72d825012e21511ce94dfce312ad4c5da7ffb3e578e828a6fcab370494e4f43e4a420bdb3af8dc88ed86c6d05bfa11730cd736877bae11d7f9933d511b1125a401cb33d7f5eede8059c996b4f699936a22f4771177b7bc2d76dcb901329a6537751c71c6c3ec9a8daf41a3fdf8bfedf6c236e353b55d82600254030715f0fdf41925c0d006571b6e6174736571d3d1e9cf29389b814f4213c9111164905e3406121c6fb10d9af531c2d48d1467f2eae1af5fc751eb65a85848094c72994c35f5fc6d1d9187458800cf014cc44af7a69e07a9b7a73a39fc0ffc905c23c945f8d2b9f7baef1677f1b96a24e7e3c35de7bb0c5f06d524fe1c594f4d962811de384764ada00f46597a52a9c39d9c06a683a84a899164cc866b70e0e62a2b9e5bc04afe6d45610e9c4fb4f3b8a5a7b62d001ff0d156d23747d554db9cfd39bf54a03f1945a1e1a0a2d8701ef5e887ba61279ff2a09b6d4fca13f9e8cef0121347b29103fd9f092b4d1fd6f1490d5398c8e41227158954f4716cb42c87af0ce75154c83f6ba4e30c6a7ba451cc169a42a313be5458876d873adf37e84268188087da1602067ac8887a47780ebc218184eac07e1ff1265ffdc9fe43b3d8e4154e542c735c59db735592e342fa911c5977379dbdd92b3bffac31fe3d870ff623401f762cb36109f5ea26e1a478d8999095ac18a6873316a860ec1313ccc6bc4a975907f9baeec7c4c83cd53670d0a6f42e78f8c253821e1185538c845e7aa624d8b235aeef1466c1e428239a58d18a6d38b63e319e429b83f4f90bd91cc5385782b49efb2b82be57f8cee3c288f210ec4fbcfd6e6ca1440e11b035d4c50b2938828ed7acd871d7e0528926df2bb445ab9bf561503b0aebfad8ebe1143ea6260e27e955fcd4e31ab7d754727804439f6083c04a37875d502c714933d723c2c055d4eeef9ada77dffd52a93f6bec5e409b8a2dc14987a94e4837166aa1939f076f37053e784a1864a103233ea89ff45bf1a1829b4f32ffe064b0d8fc7fc8af8e363b631fe37ff968161fe3a417f230249323118e816fea259d42da1bdcc090ac5d1bd013a049e745028916ecb5b17ee1e5de071eb85a0c13fe3bd6bef90b24a95828e65e705a484f170a6605dfaeb05bb3d8fa1826e309837f75c2a57b0e52d74e24e0220ce8fa92446fe096549be42d020b6e862f3a843e9aa1edea4d17a5ee424566dd31a22c28f7cf0ca0c79e09ad77e5edde0659e0ece2bcadf97bd5d77f296e05b05c1c587484a474a80621455304b78b2bd127a84bc115c6269683bd435cec65d0d7d542153af4806cb290d48a79afb33806c9c79ea7d47ac29aca927f1f691d38b64ca74309a245e5f2c7890615a6d191c6757e9d6f07a959e90ec80243c2968b62a1d2054b3ad7b1d46887c86e9a1b3eae14c7d000ace5385436dd6445b02b57765d9094df5b5d3f54a29307cd1ab172e847aee8b26f013314f469e8185c1f410c7bb0fe9dbfa3f6007264674620d174d5bee6bbdd124a8dc9dd503956ad088deb88c393aa81ee1ee097ff4d6fffc7ddda0eeb6369b5736061a7f69c3bdb289dd9b615014d490a911b62ee5b3387423209b475b0b87a80cb0f074fd8107946d7f7e94bf044d319deb8b54b29dcd289122d48f8b1c4d8b932e01dd19b19b3d34ec33ace5c8aa6d8b14ecea75cef7b28121b31b251517410f7aa0af1e248feee6dc807be7fd57ef1e17bbc53aacf8bd967dbacc24d9a61f9cd380cf9ce521ee07e8b1a2a90810db666d193781df9027999f8db1776ccff709795bc28ad308012d237d93fcf5bea1442dec95526941f664dbdd784b84f6409dc34d4360b3407fd48932ff759f712660e19bccb8670ba40866ffa4524d281681a80772d156d22f8d713dcba32360e59ce388dc09dd1bb1f1dab310e95d787cc0a73aea1e114c601b5cc1b05d448685aee4eef4c9652ae95c0a02b1ab5f8768690b3e3b72207ca006901d496658a844641c563d0fc20672ed93223637bdc81913aa1b1ff3422a92f8088902f9c0370cb22faaf5bc25870d278765b8aeb53b7c92533e927ac00434b5ecebd5c789c441968b0eab116233a4c5293c7bd5c5167e322e5e543e748474a0dc896c61d240c92ba2e787f3c928dfe5e777f8212207f0b397c2f26f0622708d0b64bd7d4a4a809fdc514b9e9d1ad409903fbbb97c3bb8d8dec394a9a1bf951e842ebe1b04d3f9ce5b7987a9e3a5c502879980e72e7591bc26ce3383f049c56a4ef8693f3d3c07e2b3cfa75543d5a2e4664e2b590c199262a63ecd03d3d1d89068b0138c20dbd23adf614910ab23673e1189180febd91470edfdb9cef4cd60532d5c4fffdbbbcb080c2a1f42f5d520abfbf92b398993ea58e4b0b729552b998c5001e8e69a8210befcb3b07366418be002f64e2030e8c9f3daa1ee4ff2162ca943312a0176e941701787df61a6c7a08de4c9d46cf3d064d0015fb59746689c1c8f29c7d7e6bdc5022d270b3b77146cdee4825917530a5353bb2ceb63339565034dc39a79932a283d79835b76fa86d13198929f5796623bef3cc2e0e07353b0bd1784c048a1c3997ebd37c6ad08172226a01b2930177988ed79f897d042ecbc511a96dbfa319b3a93384ec7995e918f19e5d50e0ee4fde8c649c0083cc33a5b184843bb9b39474ed88d9ae39c040a72f671b390325a64f1dc2af6381e3535b6ea3ecd3cc2201e0d4343b65ae533fa8eea93eabd2d880df51bb6ce2d58166bc0e8f337e71fd7ad50978f3e30a7a13af327aebf6189519f834461dee8b27400161d287886b8cf85b7ec07c46645f7a790d5b06683f1a962bd8893eff32ce0758140a468141d32809ee8c02440753be78f49fbdca4379bc166df51c7e614955ed7e8ff8f38401468621cda6b7cfe247e7a2d524737b5cae3a8eea6b4f402d17209c56f0dfdb3c944faead3a50a52b688a69c47691ee600d48dacb0ecd80171bfd38a73c2635d612be872c60a86c3e22cc9d3456ccb7d2e1f00ee277c3de3455160a5d068cf97ea1d3c7aa76b8ba7085ab4e60eb02132da297a7e53a356e3b665c1dba5c8206301ced41d16bf214b4f7f344b1ca5c77026e0ec448401f931913310ebb66ae4038d96d4d98622d42ad7e1d62e2c6074c6fde038acf6a7cbbe419445b5ad2b35a161f2b4e7c4b395a1776da75a25afbe407bfd9eb80ff9b6a4447944356803abc01bdf2eb8454c4c50be175abb35caabe304e1ee001513366b312859da8d98f32f34260ded7beaf19f6e22b77a3b3466b3c0c9a060f1f4212cc58cde89096273ca4bc26e9e911b7838cf6f4a8915ac060733054590be46b7411113fd3e5970b43efb6f33622b0aa3a5e095a4dc93c7014073f1a7bdac7e89bea6500ffc0c0a5a9673d32d26047d7e3e9052b9702394708dc448ff5ba283b9d441befe95eae248a37fc058545d034fde82f0cbbc311efcb4661ecfb5c7761b291146470ffe22f738c33b635b2ac38c338b53bab220c9588ea6becb41d1bad78580ab144984f78afbdb99cebd29623f2951f259c09feaec2aa2f653fc59987725838e46c5f4e7c0e761a29ec748f89d2a5e54943b1f196ddb755849de9ee584ac220ae3a744e2e2f00909a6b90a1b17e521a475c5a6370f4e0cdb817ce024fcff0622aaa99f0f69c075f3ff715b6621664c0c83b0f1693ad9e9e1463aa3152fa6e51a734100829c5490622b40d73d46b7f5d9821f31da73d61f47f58ddbc7f85591777b971d750a6aa9c50985589f1e135bdf4e4eaf078e5ceac9459724fe3cfd72e49773ff010ce1d49302040ebf5a08f543c275e51f4b50593a97b9109820ef8375aaebadcafb967edd2251ba6bc72907f1699ed7c8fa44fe2321584cf62c3dd184f9e075863e624b1d2ff9ea1b68d92d8f28ed622415d919f026979dd5f270a12e8144060bff8dfd4d9ee1c2c7808b7237c3a1eb97556651315c8656d1570fd6962407db348f5020adabcb9adc4a57e82d6964383c223fdef65d8e86e9aa8ad5b0349f49fb141483c26a45a5a3987f9fd8ebdbdb0b10c894122cc90916e6aa4648cdb134d901a3efaf3e4a7bb114954ebb86a218d049dad9efa8235e4abfbc0707d1f78c4f58d3d8779a3d2bb348bb38c0505a680b5c73b27f2baade67916154f3a866fdecc3289aba2799e9a0dbca274064c97aebc78cd3206dd9084bec360193f284991f46fb23f42f37b27d2642cf6c93f81a698e1371b473038ccd2307d22d07051ba26e2515a538bc93342b78e1f826bab1272e99347b805470a0f10cd16aeb27c15bd4c56efc79629827cbdf0b0bd0cac5845bd80761ca272f66dfcf239915ed1afe14ad98c2a0974abebededf74b1b0a590bd64aee75eff38109838550717db19365638ff73a5166cbf6af91c58610af4a450f420ac67560445443733bb4f70dd96eb83d9b3c44dc027d7b6c4aa0e466487b2f1cbf0d7c1a9fdbb2a31f8e8382e606aa28c9d0750998ee90b4893b5999a48470cc9072fecca982986d3edcfe3ea4464fdbeed0055fa7f6492a2ec7b9042c168c301a82306e2ac238ef46abe6aafc60997c3fd46760e3c5003176600b07872f968d32cf3c9eaa9924f1122153d5695aed78ba504b950a46c998fde1364b66ee6136668949067dd969270c476124bd4efc332ccdb16a1d3e1610069386f60de324c78acdd8db02b5e2d1046c5bbca87df541d69ed3ab74807348b3703c098897cc6f323798e52c969972162d5d8490d6a9c37f548360c34aef330fcce32601e4fef68da6d982b31ab7ec55c80dab5e7f3fdb0c8066c3d1a43505b710c393386d0a9070023a79e8a0808d4c50df1de8fac2562d469ae47836b3d043bdc710328ef0b622af6803a1e5e97606c8294334d57e93c5c09d9302cb7a50d93fd3aaaefb3eeb42be92423140d18c41af5a2d75d4c89dcec1428ae443dcacd96aadce9437ff46bbdbbae5e7398e8e41cfe634f51a181141485f503d5247c00af7e05cc2a0c879e96b2bb20038049a1ff4f964cdc993449bab846d76f81038bb1c61b7a7f1791be8c08101bf02dd6570928d4b1ad227026e783e199da66d29d14c19180bae28714c583838ad80785a5cdd817b2522dcf04041f12fabe027159c82abdbdb7af4c856ad053d743b096b30366441eafa84c1e13c1860ba1039ad0a31bf38789fcf7e0512d1042f63d36104a31cbcbc8197f92eda51af82d9c85b8b468b5a5ef10a12553c9dc3ca024d8c4e8c48b040b88661320b896c12f9470dc2f714f908291257eadd73f060602e30196ba1f363d9e62456ed1459f0d61b6f956efac72cbbcb553b2e72ad65d48c64343b76c8f2bc6f7115c19b4da4df9e8e5375c4186ae9844bd4398b79fc125de010bbb4ad4b4d3e4c37530e68137e957aff7904a31813be30296bfca9302f53016c6fac4ba3f9771a96e3500df6eea14527a19963c74218bffae4a6cd744dc5795f49ca534ea7642cc3a8c82efd68c76494c8ce5e42ef1efed21b2a43598b1bff1f6351efdd15d2106c528df5850e3cb9a79270edf84592e5ee868f51667785e611e7758ed9c3cdb56a2100a347fc4913368d94681468ef357b386c4e7254c7b03b0854661ed7a2750539e97f8d303355f70c0360611ef584365974eb4d791bad482143854551dcf14dfe0007600941baf07763261d4e80c44790c44d3729ed932cef2c42d040d3cfe567487f912fcee506804c93a5e784950e505aff72b7955029d450aeb0d58fe17a5c71b0cb60638e280950af65e35aec3f0d2d1b85e0106d1e478a76c1f6f8c2a3d972f594a5d5e0ea7f61f53ebcaa03ac95bdd8ddd6c1c804fcd37ddbfe90c5e9e9baceb7111fab5a84f177d9358505e235e3a2acc2ffee029f69e8446e409ce51df07e73f813b59638f508d70688de53d628596b08cfd9579772e3f68c98a444f380bfcc41bc236481973408d840b9f0d8a5e7901ada3626c60e09549e62ca581d9dc0dd3d8698c2c8bbf1a111a9789785f68336c952d1274f5911a371bcf97947c4d251798d7a0e0c8c90c38f9b1c68c97d44c4f6f249017cb55021661a908d213f0c4ee413a1b54aaaff48cf287da61de0d05e59cd7222f893a01eb151e5150417353dd9aaff94fa4a86a3cea99d9eeab89fd1d89cd9441c724b2b6d0b1c60340d3740f721814448c9daa030e39ea5c4847da7f7c0c76959f375ded52fd3e6fdfe8ca9c070e3e2319e5581b2d4966708d5b1794b86f7347b46b4e2bec8c005f77f1c1a039d533350c4b6db3e0a6d1faa623208c8cfdd41e5e671fe5a3edf9e1e718ac47ae6e758fb371710d0adfc40cf81e26911628f284ca6bd4d61f48a826dc1bbc6d0a5017e7c0e33a650336d55db277c05c645bc6bb1f7dfdfc1b99e0e7c079d8921a7ed3e79dd7d2e1264388b8220973d298f31365b137962917455a96066726c9b92add19641c2fc3ea43beec41fc4048eb16823a70f7be4adc5b095664d06d5e544192585e085119d6c948f40844b0627cb6c52cf9a6b19db60e602ee110198ae9243618ff0be5767810831cf6feea77dfd891b280ea8bb99afdb4521505a0c13a6a7a0bbcb51821831d431fa62c706149c20645e992afeb1a1ebda268b48ad4523d23dc223a5e253fab1e2dad4daf97499736d8eb76a65ee252ee2185d9e93ae936c0c3601db225db94ae3b726c716d27fce0046b1f88b646d140bf30cbd79365e9d64dd84333530296d5c2d38114c0c79254726c808c8159a22172c04c5019868a445ef00b5fb6ea48c10e365ba64a8706a02048c91e49360c41cf27048a1094e57df6381bc9fc3b541766cc383a6f354750f5f19bacf79adbb086cfc24709b708ad3ae3f21b1325271d48c4bd2d84a972756c5fc56786803ab5f0fcdd09af7f16586ad3099f8f589e8234f6eae9f11120234610665610d49c4af279adb7113a71af6ba2bb516f9e20be66a09128b9914672b7a9437ec49314ab1792427a73ea414c3576bac9dca6635af357ead952b695c328afb7765e056062326d033f6f84289b256faab32758640e8466256f67a48735c29d5bf8c933f2ae5b706b568869ac8bec4938f09cb99272efb43f84e403ca52408f7cb934b8747ca31cba9ffa9dd41b8bdcddb683d3c4fa0605bcd44c739cf24b7990af9b875e7513471455a133552248f9b8283f45fc3c78a844e396013ad396b8135bf132c2096941fbe4d28e7949a4021fdc6e2ebd612b1d2e5a4c0461753cf97dd6dd953b8af971c8f83e5ef6bc7626002bb0e55eabdebab79f712d1ac1fd65df2d4c074b5930425b435961acc912e7ad410dc3464aab5753ee3a9a5cc6d91d7b4df0b879daad5155e7f4113c2630f845e9f95c4fcd13e47ff279c776a5a4a6a61154e55a2024b3b099019b1c699ef143891971ee5f8ef0e8816128d99524686644a0ef3a2ea9bc0e20fb1b33f10e25126fb5541ca996fd6fb10439df7100bffb7f41b0cd75e3dcb08b34a2aefeada8cd4ea0b4e8259bcb283914c65050a54230ffcc3a59d4f97ca3918ff4e319c34d39a7e0fec5dba8866b2192011ab5fb72e530783c840283e4227c9d8983d452411d4f4c088e30850033cc7c656ed53b63f4a0490d99653912f1480480dc4a4e02618c31ac1eae8da190f292a71fe4cbbebdfd4376acb19975d4031cf5f86f2e3e3b3f23d55a97d8b665f80a12f3c4d2c97c4e9d037b515454d34970ce48b46dd83b30d670544cd069d737b9f4b7f16c8896cf538ed79d9a1131afe8b41c183f9c8965d637160b93ba4f7740b04b0201653fe4c1507b82368175b6c024446b53a325ffa3a52c5e86fdc08d2ed3b476ab83a287e579e757a788726b55a4e45f880b9de905700b77223a97f6bd9f93913d59e1ad20b5c0cfdcc5596cc521c14ae7224b79d12eb3f1a0c4ea19e2933d231088ab3fd0f629c922a30a43ed250b3f4860e84160c1649cb4e39a7038a984522dc3ada8add9ff63918577b7131a87e88c0634086a2b991efbaf8076081875270a76a2b6537f79c966555793f225f7a1c382f0d96dd6bb7df17684f33b8790b357711f244826187b90968a0b78350a79ac5c3e6ddd67827b0a513fcf607594c55f435be57e652198f2d9e7c447efded6e6166b4f805d58b6626c9593df812506db06370c3e0e97d4a41d770dc80690dd973f6d76846f3c4b3aa0fb3b54b0bf108ecd113fc72bc25af2102aa06cf277b82bb9584adf479ce0c179ab022b4c0ae6347dd8efb47b822888d3f7aecc08b3e40b4674fb1be1a36c38e973c6afb148f3ba4b394decb8531973c0890cd0d68de74b677215b91784694adddd88bb68548524e3449665d75444de1595976972efc6f6d521899ca93d2b03b032d4b6d6a4661ec2b570e9b3bd039b59cd4e6b264d09ea9939a7192019db98a7c76888e82d450a96fd3837f3a08909eab273be28c7094887f98495091e67277f0033f1bc464015a0459f4c299ed682b2345cfd76c555d7f91f014a53f57aba1557b700d6bd066e84c3188f075d44928033b0052d32ae759b9faafdca70491b1edc2eab1d2874530be4608af72765c2146e747b65f7caf017a5053daf9eb84507347b3a4a56860405dee1bef5ccfdec305239edf6c96d4f00edcf5d97ff5ae7136d6da37b0ed1fc0bc20c6dcbf92eabe48edef69dca74446a1c9cfee39192d36eb5c1b2a4da50c766729b2f51af4bf6237a46c0c11eccdfd2776250bbf1e35f801d04a8c88c102db201c4d3c3bff5ffa5ee8bdbd25434fa89ac3b53ff0b96fd915b64f699eac252e7d0eb4415f424809fcec25d1d6f5599d575a5ddf6720aec0f9a7716836f55ebf792d19c28a518aaa4eed9a91529034d115c92109772ff3a39932f6cfae315dfd1b2d79d1ce0b941d2d3c55f55cbeb4b7ffb7ffc59d12a9fc1bb5ce7ece6406489d55ec9ac35897abdf7ee42480b81776aeaf8e548573426986190432e00548f084e2d0dcd862a41bfc8c96c113f8be9aa634bf64af2b0db5e379cff7a68747316728af293efb8c702b76ae6d7769ac62a24c40330b83474a9e17f6e9be855a0d2e44deb961687c57a02750aba06d1405f0f66adb19e3ea19ae10e33f139f0a2c509cc70a0ae4bd0fc182bd1e87aed731e533f1ae1962a691523f1955d6ea177f28a84363c274af0d02639ca2d6e0d18527752fdea62e5ff5fd5dc49c5b5442311e3dca20e757af5977b38021f38d47da09fdfb5ba26c9678268a4fdd4c04220e51a187bbf0a7838675ed12e086877c35ce43fb89ea383c6000f46088b582420ed67d8b727a882589766f99ae786dc711895b1af69fa1cca5c6a7f50b774126b013ba5f1d71dd42189405b4d2b8a32dd4b1ad7a6ff190c505a92ff7e470a82bada02f426e44c6d3c3dbe12774419c2603d0b676b846405750da624bd57cdc3b9ca76d0d0245cb451935e116142a0b67b65d6a41f69422d67f2b1ec3e6cbaf59ade3fd3cb34864e4dafe47716c1dec7a816d9aee0f58d8bec120511c2bfb1a4e222a7d04a58b73a332353c22547a5145fc3b9dd0d92d9e18ffe5df56a1781b353ab112e191ee418d29fc3e528959e18f37080b7c0b1be51f38e53848a23abb03626fd9a6dd273b5087084928c60986bfd4b4f582473c66194ff97c2bc9631564b847f939ab4f4e620be5d306cdfa7fa7706e762769e25b83fcd90ce8edb96b47c7f18b9f3360711a8f72a62939e2a24bca65cdfa7d3c45b062f339ccf6cacc5fac7367d85551499276aa85b6379c178ef52ca9dcc2671e30008e73b830750c0380a03ab7797dc2335c2f4dd4b8cadc26a2fc19ef66c0fe679e23f4f7fe9bd00d143d1304287540e013c42636464b73b61a2dd77466f022e962c3906c54081251b0cb2dea6973883627036a058d18e318f93d843eef8e1ff23dc4107edc6700724a57b489575b0c7cb39768a0104e706aee24776c43bebc46ee1cfcd63eb0521c2674ce3ebe18e0b68fd7479807790657b3478a9ddaa2d1da52407d61b2a0e5260a5c49a3495b036aac46236f4975878fc5365dfa19d0ec09dc7a9e1cd3c7596987eb7ca56ec7f809183d052c09286b5c5f4fd77b1902841cdc816a1cb4b0de396151a4289494e9ba915cee096e7aa4c33d06fd5a9795ab3d45cbca30d7e3126895aa781b9098d19f3fa288b257f8b601c05227a597f7940cbbadcc154d66511bb9b698427689c32f9d2acae64c249b46f4a8179cf06cef1d8cbcaf66d7e4743296fea2054c541cea24a2b56a91b2f1db93507b56be15f9664fced303dd3bf31ceca4dd3b4451c65717e15c30f0c1175678f7829688af20abbb5096c9cade4e545b1304c42a851c9c5ef153c257a12abe1259cf0daf3d26221d75bd0442830a50a5c650fae0502c0dfd034bceeb2f018f7c8ec72f42c01c76d03024688a41344db7eb58c69d6fd627ec905a578b3c1f2a103821e6ded372e6bbc1cc48fad68711d9f8faeec6af635f1b1cdc85cf84ffb52f763bc13bc704cd91f3c81a0c7b4533e68045d1b1ed8841330ccb20ba8588bc967a18bdb92fd382840d2f1501a8c41f58eff1beb673d41b2a201bb6f81338e824b2aaba9a309d3bfddf9494ea769f680e5b0d7267b981accfbaf3a81cbaebd9b48f7c23250d5aeb1c82419989065f12b3f070fbff06baf4c61fbbf6c98f9c7b2183617c89da1aa89cf67df76a5b001882da21f3a3a26b09d3ce49f37f25d61dcb37d012710644d8c2b87aa40886313ef1b5fc734082bc9d16edfe3c688c8e975f1115f45dac01f11e4eb24d10bf89 \ No newline at end of file diff --git a/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_data/20468828.txt b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_data/20468828.txt new file mode 100644 index 000000000..847a0aa44 --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_data/20468828.txt @@ -0,0 +1 @@ +3135a329ef619fff822c1e33f2c88c133904c278f52c9e027c6f8e336bc0462643f21a59f9c56f5cdb74d76e95cf64019d01d487b5fabd791427243cef1651c934530ac242f213270fe6c428f10f81eec02772a7b749aaca1d3a22721dacb8ba4932f68be2302b5a38221e7bbfaf4da14bfdf3683550802c0f4b299a2bedc968424c69c327a094b50026acb37d5d9716e25f4b73d667ede3a810f33c474feaab70e2124b97b5f3e3b41d2e9a1a1bfe8bce89da29e1f9af753bfa76d4d4c370b5627e742a40daf0f604ed66a7755f3675619aee0ca653bf3886b0a0912243673345427c039ad7722d51c6ee47369b84feb60802d2235939395a3a401b49f2142849e7934efb28057456fa505c8dd51e20d02381b802ee9b14aa91be26c20abd296f870021e7eeec074e65e38da9de8cc3ad20a795f2a739bc381cf0fd9e0aba0321d9246885b9d95f042bb52666eab841d2d43fba1546a33944fd441d97c7e1e844eff8a19d592912916d32673ac3c0e9c2496eb8714dba125e6af8c3d8075281536bf5d82b47949648cb57ad0239966d7672ff15a044e9ad9fe5968390d4d7e2247aa36590eefe9fe5062aeeaf238022696221eb9fadc0acf0a666f48a55baf068f891f8f9c7e82e9aab4ebeaed1610bfb60e540ed4f9bf84a061a231e820d66636b18d4019ccd640d0cac5d0ce753b46acdb92aff2052c602a7db5ce45bfa1f0403b63f6f4a8e6cd0ccd72522c6f79635f44b4fec9b7a39bc22090197f14d9f04c41495f449705d58c243232aedfe1cb260fcc047c4580f6cc9f7857d9f24d253288eac60766475f14d935b01007610dc9a8fda377324074065dcc26a94a88c13c29cae014d53c2247a48278704009d3d29d369e3a1095a2affe935adb0563151372b3cc4bddb81ce26ee45e1ae64caaa372e8eed638408304ad2901757b1633b32c32e9b2db98408581e51f94b545d24761ae70f6aa00dc92e2d2581442d2b066750b896d7e0dd620e4781b4f84c3aa02da18db996f1349b77209265c7e1620978b7ae520cb4e1e517cbe215f692b485e130198bc8fb2b9f7f88471e12fc1767c7064a48f06b8b6a16eea5bd19d3848656de117308bb4674fb71d43847d1191f8700899c6b9f4b8e86b029dbd48a052fea95c2b4a7529f142bd7d621a11ce632d819733add1699f43706b96be5b3c5d65a62818f8e5c39911333f76e360f0f280a68793b1cd63509c8e164001bd649e4c96656810cc2857015842b20cfa4e008d902bbd46cee65ec1005906ddf417e234fa8b2d2559e758065487187e9f2bb13a7cb610b7c8adc71d0f0b94df60ad12ae0b18a4d216d1fd379c8ce3023ddd930e803d356597f9f8109cedb3fed10d1c58937cdfd5cf6491b516fa3593084f722c24f61807a414aec2ee1f60224c254117b0042693ec18e7831fcd846c8da781b7c04f646640f2b6557f0c24da0e3683cb602ca4daa2c86a4a0a6474ad7318140d70ca3facb63809fbbb664b8ab1276f7a6bf3ebbac9124292a9058361b75633ee7866a7d35f471e93d0332daa29ab1b3dc09b8038941f34bf99fbdf055fb542d519e0f5d28027e2611d5705a625600eb21e059c549919cdda778b7a2887fcd14e527075870d7e929ac078d4c90bed93ea1d20fd4356a8076378cba2a41fd531f81c2486a29ada9e830b007ed11978d3f6e83ef5483c9dfdddd6ded3ef6708967e567fe7c4045bcfed6d46b464e27345e1f8c45909fcaa72ffc9c682e8a65442c66d92c716f29797e1d81e54c3c6b897cdd768cc316e422081af9b807493b6f14439207a8aec8c072779a7150d2c9e3682cb30d7fd34f1b16a4ec45bfc6605020e63a7717da56fa3cea6a324b2c09ed8cbd7547bf2bac28c622ad6f4d0d7cf46526047e502bfd01e608134b12d813d93368842fff4af26d506b909d722ae5e11d82f9ed2db21910d0d01881812c110a04ba2d0e6439584450a33eca25a0bcf5539a40d487b21b099a893636bdbeb1419f0f98b3bf869492cc2152e8226ec85250f2d8c64df8643485503d573f8971bed4d74e92a3e58689710da515b70e02b133a6a5e21bbd7a44e0d80c114c43e04111a963c94c584894ec803f25640e0b2d1fd354d5788fa1a194353e4346c60042200b983b2d6808338efd1a0f5ad5ec5b621f323150034a1b7ca1e5d6db79842974c21238c6196974f92734bea17e66f057899329cc51bc62dc07906b3917f7ef7c261a04e5753fc7f0b2e85c92adf2d22b2eb8e1043563aa3e891ca6fc504eb7c1fe4881f80fcd995cb02dca94dfe00963979063a50075e9872fc1bb192df64b8415a00d87d5a5765e8147b97347f6fa6df17060b65f79ca40082986a52cc0e92e05b9ee79a896ecc354b90ff0f62e7f2ee5b957f215fbcc9eda8cf016dab27d86d42c3e106d5549e20b4afa6dc8339515487a9af33db98c37a4dde6e488409bcc8e03b0959293df7881f4737b22a9f835b182007c5e0d56dbbe8448fa87bff3467070e092e2e0151cf95a71096575c66e4631ea92772424b9c95e44da57083c29f852dd5d39ecf5b9005169896e9c244281bc9bea16d6fe98a287c267afbaf6444a1d5fa7b68d17da19e816770ac87f630aed31a90825895a133935e01a8001ea4df7218fbea604d2f187ba8d73e1285cc347fbd10a64377d04f34fc8f8ca3912d3fe679802cc756863cd43f4e5e376205596d0515573ae941849b0610c2bb180ed31cd945440c42748a75b8fef7ca807caca0e88f817693581ef1832887eea0ccf07a576fa34071b9bac32dcefabd1416d1ddf1fb64668643dd2de6d664f23e8ef79f9fdba1daa39628e59b9a1f43d1fb804d38f1703e0432f1484624befb8b414ec2ef5e3de2c61b4cb1b5b957d6d2630e98218522d5142d28d7bd0e613273d5ef7c56f61a5152bc7e8d97af246b80dcbdf8e4a451ebb784c3ffa40777ac1f756ffa92d5067b42a3ae030b3e39b94260b86c01b9ceaf78a977fbc1413894549e09d14b1bee314df045f6029df963235cd178daff96a616e89ad094e6c89ea6e2025ebeb19e86304b296295e8c33b84f69d9880758c2969ef85558cb41198a67e2f8e7d9d2791d2a3dae5b6616406f29f650624f7e9bd966c59660367f59048b5a0b4f2b7e86e244a48846ce757ba3339bd704129cb3f4133d820aed77897aeeb7482fadf6500d46af4d33b74de40570a08e441d6a81db25affb487981192ed7a6439898603a6460dcdf787055602d5124b46e4e709478c667fca6d5e9adbb46f272dd32de63d40f08455f5b2b0f463bf69fd0e8e149f61bba2129bfc9253ca466d45506e3fe38481a6322b91ab7b769ec592ddd5c8a27fbc7a86ba2f453c319288f53f9c0bd65a30e5607f85a043064a69e5aef6b52595c2bbc0705fc8e2444bd5dbb0c030940c4c905a2d0163a5d45099b3bced712d2f6011be1944003d69899c0f4bfcca3849cb3cfe670589ea839fbb356632a07443fe6b17595f11279402fc8fafcfa69353bf3da2609d53f902a38699ab18e5de6eb49044634e30da46252a8ca84b9c67b6d37836122af53af674e0973b79d0b3b099ea5785a0c9b609a8fc84892d74e7b7d170c27761cc4493086e4f534b8970a89acadc3f7b3832e259d60a6ce6bb785924700c0a3ce13be1a96bf78946d376197fd9fad814d98c061c29cef3073ce9630a0400d26816be42a476c51ba725f52e53000c13bf4dfb1fb195a19d31004c23babb2defafa4efa71b0df84a8bcb3335fdc519fe6504da67950e2c25a79dee3d8e4d322614a99fc5d0cbc47286d9ddcd9560e05560b6c86f9ab9627d8ac8ba54b47c37b32f89e360f59f8f78364a318b50d4702a7f054bdd48ce76b5da4f073bc5721a9e9ed05ca24a376509cb5fd7f14214ffa8dc89503d44b53cb3251f46c05bf9be1a2d6dd78450f9a389338568dadab66f197d892241efa6497ee1e09fd8845c83663cc3091022e6815f86d19d46ab102c3096322b1f973c74b59b1956576349d8a447949b73fa826be799de9b97d13698ce4515e1a62a666c8b4f0941158845ef5bb7a106a550fd3bcb265999e6b91e636b07d7558fac80786aa58dd540319524d837afade4db1dcf5078ac9d4f1efd3650ded27cb3017e8350d4b0fa34777f77050d5a3ee0c0704fe2a87dd13de1217f327a0626231f41da05e0db83f08c2bbb8bcd9cdd84550ac9e0826a169b3b7b18b61e2a6017918043ae6d8f66a31a5f0c4166b89db0795bf590a5a9dbd76a4198d066ea61e9331bea64cdb97509519710d5d6c124e1f387f0dc08d8efd1af146ae66b99117099528d1379aa994ef7d8240385728ec364212cc87d4af7447a848eabc7c147c963d47c1f27a72d8d911091ac18914126324e61865bea4508f1573bc42f2d2dc02c6f06f41f6cbccd7069c882492b8a428905eb5725caf5e72575c159310321fd6f36035dc2e04ca64945c674a6239dd415f258f62f0ae098ddaa82d1a5ed55b11dc29c60f441daa56e81f3077d5bc840dc16e292ae69f42baf2e57d98364e160cdadd29230f46d3f926b3110e6aa1793546af21db80b8a30536112466e3521a7599619e4258e04a64adab13a857f79d45ace9c2ea732fb59535c5a56344fe749bb39ee749ff75988e81ce115ced7c6545de84de253508f59b6b9af56843a167307ce4ba28b2acacbd8790a991a9b4245a4377418f8b85f577cafee4305d1777c9f800b13310ec117443b115de373a9e251cf8e696b5dc1b471e6b91763fa68487555382694df1da45abc26c66f9074b19df9e8ebc65ddb7057ec7918c6788e233cb69abe96d6f0ec57f685f83348cf939c37d67c2b8060ff31066a9d4daaccaeb8307844a0a344285263d51ef49f0ee63c3fbd7ab4471eb0b240f28ac63748ab79e3978218b3a2014b3be42666ff56c68cbb71a87675a628741ac3779edc972bfbd13cfa2f9a1bd2fba3fb0e5c8f3e11e84477c6b1b1f3b821f679e4c8f003edd7df20449c986bf2d8531ba8ea77c6d6e5bddcdcacda633ab92fa7204d69645315516ded9e6fa7239e5960a151b53ac6a2782a1baab26a086bc32cb1428a6387dfb1e7ca4d071372beed6c8d34133560d1569c7b42c375e0683f32a5ed358c5a7bb109be6a9fa3586bf4deb576efed40359247ef782afae84698c59b105fb0cbd1f23559ab2210aeef8bf98f401f41f1c023ac0bbfe94213c7aed718992bf4851022cbff5214de18a7f71008f60e8f169510b308adc6ddf11ca00798544adeaf044d67ff308f81fcc7782e58b85d53f3ec502eaac1f62e2f83205ff196973ce1a7c6cde737dc29a55a5859f653479602990f5fe64a2ca70a36f56c413881aefdd51d5885a06ac0fd0004c973d5173a95947e8809e84fcf0eacd1c811f595e1708f73f4c6443fb40b1c5359cbba7bcca6b247a226e640b5221971c85d5edcee2c21f44e4991b7b8fb115ba69fc12405f2d71d9e055a8d129ab29466d9a888314ce82a6f04699a4d4c793f24c6ae6f0b855d94c06b0dcf341385224a04a18457e46ca7de1b1f37bebd927e696dadac1332d282d95aaa8f998db6c1c505ad25401c00454a350b992caeaf4e4d1535d87111083ca74fa042732daa2ae59925891d318042277cd8ebd8207368372301471b8031601db355de45a73c19c39a588fc810ee00ed9e94af89766a808ef2b07db2410eea9470c0c91cdd1639c3849dbab195b83e46e2724e128b5ca6b49bc3cbcd430edfbbd94833a42e466397ef02bc216aeb2a3a3aacda8ef0bd9a8d7345efb324475881b3885a51b69ba77b213340e6c1d0e2016c7f0b591ceebc3fbf2fe784a1b57210a2de92b9e7fb4befb3863f7d95a868cfe5c3edb53b3feac2af1147cf82e1675d5cace011f516b93a138b1444ebae844ba17447fd312deffce85ab40fc5e596bda929d3d5bf5527085c5e72efebfd60425cf0fd53b829666af932e817d1ce414049782a8151a78455731ca04e936f80a3c8315b98b066d4619fc60a8733c7f7e19fa6fa63cc6d0b1db9e2ff196645313f0d668ee9ce17ec3a82fbf9f134bcc482e287a3ce80ef32f840d9296a205cbe2a20444b496a9afb0c32a51741120023ff0f04f2deafa2ef4d18e6dcf5e6d00dcc1ca0a2113df0aa19c22a376316360fc3904a579e17f3c822078f3695f829ccab6eca378f5129e94adb20ae72c439590c227f0920cf9f3f38ee63c2c577156b9d540279228a1f31e6c9da307e11879a65cfd7dfa7f66954a7f851144934d157d368b16c8a5863e56a1d220ec1066187e5fdc68f92ee321ab8854d54bd9a667433ed8cf812578352083d9a602fc323852402c4d05b9eae637b65aec7fa29863438dcb1b2c620fcf8b5ffcadeab60db873163b29f593551ba4151a863b871b479f974bf8010d3370923cec0c5e1f25f98d25ce7a5077743982d336c3f729b19afe4ef393a47523009694d152cdd23b1ca519ae9e436595ce941713ce6199defe920d911289efa7056dcb5fa1bce93f43fcfd8b000860f9183c87e0a57f5b53877288d6b77c6fe93ced5e23998a735341c97f030cbb670953221075311433bb2c804f689f9542dce0e31b6a40762c46a9fe8eca12173e9f8862bd3a1411c4a639653d624f0c7ad15b80f92077c0bb03ecb97a3bd3b93b4af73dfd990b591aa733437431c1744bd9068837a5eeab0f719456012e54cede940d09dc5b67fbe1cb0577c7bf96091330d1abd0327fcd14325076f2869f559986a33842d3ee89b61b1faa58c4d5a89fb0708724dc8eacca2736c8a84c0764f281e58df06dbb75695b028108e6471a1f42a938f062ccd104467fc8fb3f39c0858c9c158a1ec472e5c71c2b35a3528e8e725cd0d892039b034778adbbb0b402b6395664f992e6dde59719764c8af2268a02ed89803e0250964012071a1552c6b362c550e87f5e6cd83c80d90b4aa84f2a1a3e6fe1078c8f125f2a46d5ce16fa72e5bf0743a92ad3a989b08cf1ceb09afd8a385ad4970cd2d63957b09fc4eed5a449ca7a169a4a904085f69b0294f3264b365c92a178334481568f65091b4f7279de82b6b984b5e799ec1c33edd65ecc9f965745a8c0f2135c0d71126083d32a4abf14e60e3426933811db5485c31dce78a54644b9a791a9786c4a3b5156f1cb14725688fe6af74410077e27ca408477f48edd849e77cca5393a6bf54780785afae34179c2f76cbd839f112874c19b4d6f4552a2b640380c6f36cdf1ec50c4cc2485c417b94ede0844e6413a3924770a7ddbb23a87a6d4646947b9b1c0a079727e2741de8abdf805c3509da2eca40b9a9fd75bb7aae3ad81a04f4a32896b7c8056c7f5a6c58b3ac933fe16357cc65c5cab6efaff9c94adab9a1efb9a4f4579e78a0fbc054e01f3008987a66fc6ddcd5e7ec9f3901f5086be8a644b1d05a7832ec328a45181c6bc7c2495f5ed1414d07aadd0ab23c1b95392061ae2531b5d6410cbc5f6c72d6d4f8a3fab4d5e89c94864f8eba3246409b618e64a48f542b985c1e1a84f52162b86471862634709547fd7b66f11c031132094725acd9a24d78ca5bf2a2d421c7547f0c7da8f5965100f7b0707ac3ce0d5f3f1a42a7a193ea292a69c5b9a310604b1cb97e8ecbd61d35a510eb2b6a791c55db90261dffd6ebc6f8c0f29a3a1a781426bacec4d705cbd7082eb1b0c7441381f215a3745be2d59704303596ef679abc847800e2133d26ca4144844aa1364ed9b6de8061c278f5726291f3c383cdb15f3c92c21943937422a3684da59e2f4032b5c763d3ba65690dc732f6198fea005c2f7ea7fbe5ebb844a9855e52cc655164dbd0523d6fec2ebaa2929c14c4d65946a8eba53bbde4fc648cb270976033c421e1c7901f3154ebbd5b84c0cd41443f7aa9982c53983e25a8d5ff810e91743ce94b8a524db7a74abe03484ec49f8c681cf90208dd531bba59801cd4aacdd841a3bfc94285931af7a65d74af962bc78606daea9892e8ab7117781a79b1c638cc153ab6e4067b0017c2e4328ef80decefcb4b9e3e9fefa1a2b7b63ebdb3967eab5895d5549e3df462f56e03f9bb2390b91f8293d0534c9fea0c89ec3fd87cf9743083e093be93278bb595656c78ecea1ec75b37f305249035623fc04ec4d65f71a87090917c4ef9aebde8f3c3afd1c95c552d28b778c6a709089452e112f518b2acfaa6637656036f695dfdba31a9c2df3b86af2eeac77ead454b453c8805f9d02d6a53a4d83ffcfa0ddcb567e930853e80d83d9583daf32bbebcb5f4d7e456bff070b0f2db8873dadcff9659ce6bf7e9dabeca14dea66491cf5e395c47e26eeb0de63a51a7f8b3309549531788210dbb4548df28a4e759e72fa774926fe108a0efe9e2a4501d58d0b99fbff24b79006d2f81ec67f57a23a4f8bb0c396fdd26aa6af561b4deed4cb34185d6f795deed703518bd9b6683597273876445a31564420f6f8e51f1df93ec3321a41af073f4e3b273f34342aa691cae8f27776ad89c9a0bd786005b55b9a0bae5aaf62928deb07313ce16b2458fedbfec235a7287fb6ec15dfb60c80cca060a29afd74f990d252f67f362aef4d4f4c8939f890cd0b6374f3e44d09913ffc8702a6290e7b7147983f27e6b1329abfeb57b32149aae68bdd7ccfbc6ca2b15b6b55dbbfdb987c5b76e1f50028e28630028cb3b609cdbcc72880b3dc4cd3a615fddd33d66e760d19f3172c7b6a04dea83f69a31a019179739aab99e406ef800e17a09f9bfae9e38afd7cd5a1440be90b47a65981fc8dc55afe1314b158f815410fdbaaca102e9f906f6335f10be0ff1fa25ea9d35f09dcc93c61bf8827261335056a02dff1fc7c512f6b5f0695d187f54bc1583c079f6c7962ac42a66ddddd72c30d1c12b3a1696f4702d4ad20563c71040041a731f1a0cec077b3b057e217c83bd5b69a78d2b0d682a435fd17740f9c2e6a0169d140519401c08a502ffcb4743b6c08c5f8a5e45142b663082d2c01f7034d6e99a13b01830e5e40e503bea8a7fd82ba2f1fc3058817fa3d17dd8a718f62e3628b449eae5dad9980f45d0bad56ab062c8d7c1fadae16b1d83f516ab6697985ad7feb34a727a98a5dba262acee6bba797ffa500d102fb350a92a83afe6735ee094b625db32dffddb207464e0bf66078eae8f6398df40b835b8f6d232699980b30d31c0dfee8db3f4ffe398fb6166cdb2ac42832a8207dbbff702cdb538f933080dc27af4853baa2dd6e1b1bfa84c1101302ad2c4f8ae6027973572a5dc458b07f77647bb4fee3e4fd491818328cdf38fb8d1c3aa6242b6823c0430838b87d02cb74a6974f267ed2e2d4528299b746d757f66abe6663d5a2dcf50c58a97e87573513499c7110fd69caf254e1b99579d8f62f349bb0ccc562ed6cc6d771903b62e404e8353564cde0b9235a5eaf1bad1d4262fafa387fd7b0d6ec39005f3d4de5d1a4d04938c65003e3b30233f355d8555b1b9af64252fe88b40f8df06b556bbceedfb66366f5c59373f8395b58ea01135caac1e9ce3fbccda27d7af3101c0bc05146fde8eb2322f0cba6714f6e69e796a1190ece55568797b6c452dc5681daafeddc980d7d4d8b1530f31a93d7a3217c0846a70b28b66310fdc831495e7a51ac2c932c4c11d3b8aa90b71b887614ddfe8176d8864e5af9c5cf90d76a550699537a37ad9d4833b3a1ab186ba6f1856a866019f6c6376e85886e85654534083425b974286173f2b9aa7c300b851ce6e102547f8e343b8599cf2defc6af957ca43a162db0005da9b41fdd352d300795d0212b3b28ebfb718f5af03bbc962e4b2e81fbee8ae68b86e13387226665e06a2cc0761b97ef716f8962b82c72eae8a91ef628634b3163ad9ebf41d831c118e4c2bb510878fb13fda5ef01f8dbb30ba925eec006fff717bb2bad999b29ef94a4dbcb17538e7c6e84236bcdab899c0a940ef8ba073456bbb4eed440a4054cf17f3d56e793d53e9701767cd0fd42f2274a1745f001eec305a648eede4e3d7317cd135c18088291bae1d5c1c21628959a4370adcfb73310acdd9ded1b864f933854a6d71a6dab6cd988be80eba10c95631831051f65c0d76b53934fdf7001bec8db21a5a5a7d3dc018bd265f6ce216abdb375c0cb9018492609140acfd928149842b7619ecfe9ec91d34d631de2e4846d20bc2b7380661bb7834f81c91d2e9e679f5ab8d5bd38b56e73731fae6aa1a3ac131e766ad3ac4e8da334141d1b3ebb13bde4390fb35c7278b7dfc75c029b9c54dfc7153ae892d481a21d47f69963fbaed90132205c8661b4129b7ffbda035fc0e97ac2ff9bbc853c5d1ea0e7671b31a7eeaaed26fb99a44dc5f4958235f22e4deaad8797068982662279df10a55e4f6fe0bfff3405c9b8ae58bfc3ec689189e9a60989c15cc7cafffd86dcc5b96a1338075b0cd60a4c2d7f9fac821a7bbec37083f1d3beab1555402ab68328aa30cac5fb2b0cf11f5792851d46bb210dbfcec31e0e5b6003d73a46fd22ce5ac11ef19a0fda66f13183efc8cb705e0629fb5f1654884c212469e69263a0e5adb40d10ba02e082e7775f9299a1b2037aa26bb876087573ad6f69ff1a17921004d169ebe5529648a8dd5c246463078fd0e269b2ae476e9063d2b6a790821b05081d37815dd68f5e3811c059ec52fd6e918eece493abcdde4e4288879351dc8b4e873d54a12605a631cf5a138aee193916516efa429c478fa12757eb6388f41bd72d0370d88c1833a82828de3e2a8e2987f3d2b15772b42cada510ef2ac1259c1dcd6050e01ffede6912cb05f4d8cb7d0c00e9c14218d6cd9f94cf867466262188fc0db3bbb49b04ec43bfb7cef89fcb805f4a84dc677491f88d50ec9f76a785e8da6c7c1bd2b128487b35b924e216d65f9baa3e5570316ad89aaa444c73789285526a257a0452e07ed4ef7af7cbdd595a09e6ea1d044fba88a6fc3db3be8e3ecc1d39d33ecc7d81bbdbc81f2f57f6cd8811617093cadfa49a63fcb61ecf61ae581d322248a299b0249aacedb119031e518d5d000ec4cc63691c3eb2538c3686dd261b3853e5f741f23e3aedf03d2a62de5067f2e47523e306585946a0c88de9c48d67de4930b77aba26504c4acb88f613d1ce7a1ea08b255cb77adb34ccf408a99a71a38531b1153b662edcad387ec6ca1d2d268b948203c051e690e733f2d2ce0f4aaf1b8f41079b067b23e287c5beb7d7aa6f93067158bf92366ab7e8b04899d31eada7031211db66372db6f51f6958110b8811641187543abfba4a6fb8ef4e6225e2eb1190854eb989d3e8215d9e267760778221e5c93ef77a606ee4f5037c860c87acaa970fb640a69fe2b431bb108e9d57f78a772b7cd17b095dcb89cf492e2812ab41d6614e5a763122137491df58f3af387c0cd8f20cd6675163711169086e2dd3a3daa1fa4bc3ee7b1b5965d7698d5124b3a2bd5be6e6e9aaf0973ee4781e54ef17beb58e9b2e11f7b91324f8ce2a8d29bb7b8a33ae7e15818f80d7f3db6d4315554ed8d5a493c0aab837d136a687bd61b2391b7d0f59fbde3284a376890a1343d26728c440d7fde7afca092331d0ad2e8e76c68ce5432c52ee2d584fe129a91791f06168cfcaa9f41f5b9ffc65d2b55d69728fee9ca3780e290da612710688d6d5d8e412036861f92ed960dda8b96e62692b72344ed7173e553ae82c5e470d00ba7ea3132a0966d898fb54a30bcec72eada7573308815022d732de50ed6462b8701e82af7856fea69c597fb00428588a56c829de38f090110a274d0c8f6c788a08784a26d4434b062d200f966fcf429e2ced17303fd844b9639284f8a639b6ec912e36d6aa18702457aad370636aa1d8de473d12e0f3b2fc0452836ea65dd0c18c4747e22796fe32e7053742cecb416339e4ea5b0fa2aa6b9e03e02b9234fcbeccc7304b423ccb8cbcf62b6aa4ee0f1b0f6fa63bcc9b18ba651574f41e391249f1b41593e53f26747de481d054436d344cb2ba18af001ca04ba72e2f865f9a1f93fd2b7e0c170df64a458e78486a80cacf033d572612f32267c60770315d74d1f9469a06dc2f6304da850bf693084ab035a264f4514c7e402e23e3bcf21a54ee733fea0f22a1ea65345edf330ddd36897e37830d97e67591cefcee51e26a2f9a6cfbdefe80172886471d2c8b3822c8c032c715af888df9d8872d72f6130b50f7f32b28fce0423234d21c2f9e69d367ffbf416bccd9902f76568fe6eb9650ae9593b4eb50be79e6e9434fe8c524da5866d5dc5c54912d4bc2f979ea3da71541352231ee0dd24cbe03f1de52378c4623ced5b2c0f648a10b811d3af5a11058f9e98ef3eebd8598173c67e92cd7ec8b6a8b7a825cfc844ee19216076b3bba1a489cff5cbcf2771ec5bb3fb753e1b0d26b8b48304b8224f0f3a1502f90a8f31a5d44fa7da12be232adac9074bb379a8f0afcb6507e58c14d82907cb6154303224faeec4866f8e2e7768cb329829febc20d93126039f5ea7721ab910ff024bb1b6f37fe2287ed1a5567af0b330a1861680b1de585a9060d44269f2f484a13b53cdd3647a2948be2325fc5efc7381bef29b26998d441a6aaa2a7668d3e6173cf3ab8fc68650500898075c14aea8dedb060ebf9b985874ac45ceca62e220c8712216df62e342549640d35d5c47fce45dd144d99d628c8f1bb8e8b7d8eea07e82846ffb6d1be3eb56bcdacbafd089738f2dac7fc0ed01363408d99eec49d30cd3f07911bfa4a2c307f868ea9aa299383dff32ac65f99fedf8f0c87ae31af13384114eadfd753498cbf3cfc1a9d294eed1bbb7dced4686d165eb0d3a7b8633c879a49a31c752b4da425db7a6a75cb674e6435371e3136ceb320c86933a9a58cae66327cd590e9ed31e3ff76fd370a0345ad4a1d3a96d4060474487b04cf354742c954b77d06d94dbe8cc49a4c74efedba580fb8eebba0431b124bff770aed929eaa2f046837f30bceae8e8ee57a5b946033c3236ac315fff2e4f41db6d7f9cd80a11332b24ebe32f5a7b79371a0a19ee8a5a73d81861df3a1a3f015955730b5da76110295b8eb89e3d6e9bcf0eaf7482ba99096cb07a02a5f16d80421bf20f93a261d0f64caa80b5b11dc70e8ff1776b8e57bc8d44e78ee0cf1f0d478ceacc8c2613c3b22c542c6847a28a29bef27a4d9560b08c3f4936f65c0601870b2d8929ca31f7ea1cc2f2769f85e275be72e30f7742088da03d877cdf80851e09c19bf74913c7448c19a52995da3d731455ac5485c15ba89e766f447b4b8a686a0f72f61d769501ecef217ddde3653017019ef0153fbf84c6bccf1618b3d10193811d223e15b379b38992f061e400e1782631c3d620c4ffb919c5181a194dc8eb2d9cb47e10cc2029e0d8b6acee553a61a2936d774604e480b610d087db33134403f2647b43a5f772a4a5f7fc9dc0d372e1c8f693b7f5f97811bb2a7695cb895b1e1df4de8589e51f88ac448a769ac240eb9a6ade630c3afbe488c6d061088be60b1cc4ef03663265aeeb718fc24bb1c60569d6b761711d3cebe83b873bf6dac02565363c431367f7ccab4e5ffe7c085d265a7f44fe4bb78e5ac5d92981343ae5253d709d6718b9352c8b621fa5dd00200f25219c2b1d53cb337a825d4da4e2dbba12cfe8742ebc76931f7e79278759ad5cec812e6f80bd801a2bdcb9bd2cf8147faef0cc02a3b814e56c951577a188181c6d86be28b260e19bb5fb84853a7d1027545cea2511b995679fa451da3678cdde30005f1bb40fb02a1bf627c5a2ed94f4b0782845c12533c2678e3678a2875011e8e303dc95f3feec5c010163f06bced9b5737df4a14e656b2ec3e81939399172fb35624279f8d7490fd02398340800e667d69e746d9740a678eee72c0d7071042ea6f103c1da555530fd2bb3caff68121e0fbd7382913e3b8e70d4d7e24bdae96ac98a0f52d3d548cee0e6d5e82c9a17f6061401b88e9ecdf803dcd70b8b9cf8e4976713e70bbc950741755491bfd1c602eff932b01136638ead0e4c8f7094f3b35dab08dd826cf76f61331a4bf665fb5c568c11e5c2c2c600ebfeade72359c001bd4f44b166f38722a60ca598cc9da1f755ee971fc0fbf49c4e80e4b0d24712306afb8e54b23701a5fb1623b79aada824bee9c3462d7921f015927324e43da7f566242072af2fa257cfc2534212889472192526844ce8e56bf08e5821b9f25a5ad47f8e8c5d4c70832aa6005ca5215953a7f5b047786849a2d223e49c0c0a0b79e5d32becf0edf1fdc31cb25dbfc8cdaf6c5cc16dd53c509bb834e54a0d64425abcf5e00aab70ad7d8913aae89393c365903910cf61cfcd0a05a76f36a310ff2df8f13ac49982d8b74d4ae4aeee357a0f487124f948701c7bcb4eff90204431c58edf46dbd1069077e97e76997631549aa16393f34136d6506262988fe657667dd2040f829b1686f7fd7c321b65e5898088ccf46d55566374749aa904039bc9d66b915f77d49fcf1252995c9274f43fe0af11b11b0aee4fabec69280fcf923656a1c9e9e42777e22bf49e51a6addbfe0e577dc6e6a1b6e0a6c2974a8c45338209fd85311ea98e334b98d086686903bde7ec93f6209202eb426c2e345848068a418c13b2e1b3f3c7586cdcd0dd7be4d635eb52820b8ca15a9f6429547b022c4ec2b146aa74ddb52a9619fe1036f06be998e5cc7496ae62cc92af31dd02b789c8abd2a4016165aa24c6a7d450abd81c126a5f2245d710f67f6c1639c36914b1c8325cd7317b92fda08b5566f1d5208ea7f341a86394cc41f9ac74bec85daddfb5bb70d6398a82111f004351ceee27cd02c655a9a19d06f7b3a713e4f5e86bcf1d18182ef43250f015d8ec75e69d82839927309182d4242e159556ef8201fa404809bf46193fb049defe4e2f4261d9a6dc9e77d2a4953ea11839e1930cdbb5247e02ee10eea8a443a3563e20f94b053f361f7de831cd69ca813acb95c1ed83dd4c636ab259c64cd1c2d81a398ecc2b20021e4eb804bd7f5e507a28484f3f3e9a37b7ea3c3e8454dbc59e207443b9f9effb78c0a9930356b7a928cbcc93998777c6281a632f982dabe485e92dd65199c4f316ede6c6f4c5eb52f05f5b25abdb726d0b14d42d927b6eac1e60ffc2e24b0931b0e87d65c9c820f3a3bb59103cd4d2d8d2b146ddb4d6a8b4ae42ee1b1273ec57e3be48633769524d156e69dd01aca1b534b94b9e5752ff90e9e3dc9edcd1664d09ed2f45bee5707fbf3e4da27628bedda82715070e599299626a56765abb493009e5cfe64d6b4c8d408e3d11bea911cd5e7cbc68893e9d227110f99f1848d11e4dfae022fbff075f84b07736690e18675463d5e7ce5d1f7c3905cf816f2885a67035b405c3ba06649ad78e7dc2fa14627cb5adef4c047f11a3e435312886286facaa3f41b38bed5bff5ce74b9f6f181ec1d5b444f86cba3e8916c2241c0ff1041985dc2529f4de9c4d4cf232892ade08bd0647455c74273a5b47ea5b3e385cd990fde8e1ad2b3db506d8ef143fabcb9ec494dbc827f6ecd0cd572fddf48066a1f6f829710660f779ff8264222006975f67957dfda22e4a08226a3f89f8f27d33ffacdd4448492644d053cb0a2709b8124d89f5f3963efff0abb047bc339b47a59b60c570fee2e78b1d8573f0b4d2e5eff97eedc3755498ad8d07fd5ec524f3431f255b14d4de65d02b855f9e04a73dc362900f574dc26b737f9109b251facea9e872bca45c97f97613dfd05907b1a4967cb0d1f957690f38bdbb937d5920df05a8d9e071bdb13a143333e2521a87441c47d0e19c8d99c5c927bf0e39257456bb59f996b438814cd681650487bb796a8f75cd65c3c5231caa94e06f3b2bdc2febe9c4a6f0e55d9882a6da804d88d6191a52dbf0ba8f415fea7e97d45967732bf286b677655b6fb10198cd98f9b40b00ffaf474c7a46d1ccf64c2932da2b977e5dd0a42dd054cf4c4d4416de592b5308a9e6e99859dbb7e0402917903064e11215dd706453dda9a5cb5060fe696bdbeeffb9e5adf295b26e482c8aec0b50849774ebfe2720ecb2a046820b57f778ab81efcbcc45d441abde029a2a2dd3dd22e625f5d35684bca2a9b5bed339ab0e34b94cdae5cea144b8809d287143daaaf01714fd8a70a6a03322bcde77b284f5f2b507de8f298a8b13e67780aefbb3c893f4fb6f4ac2055ae110dd3fb9f604c9428811aeff035f4709df91de98bca4e77a62337770be35b51522e480360ca6e854ab404a937ff1c91d7abc5fde9e01d8a9345316351e317520104e6d38b8948beafc9bf7344acb81fd4ff0d0d9f86be56b1a298b0536e286ff8adf7f329cf1c4cc08dc0beb718f3383858a884d7d7a9b66cd5e74dac7d2e7c780554acee6663948f54e8eeaf23c8a38198038be265c33b1f416b2e481701b6b200a23d21f689136f599ab2daa3e60f42dbbf51007bfd9aed5b44138c283233524f88fe7058ee5467ef6198684733140135d1768348cfdc2257429381df19d06d73e409e4b9561ca2ba5a9663a9a164991b50930bd21ea9aabbf48a0a4445d4ad464afa50fe947ee7996401cb2fc7b2913d3828db0b835c801906181fbf1546f8605f9477307e751923d9a8560823706906473ff08712e137efc2f95db7421aac96f74d0810d66389df12b409be2abdbc7e932907ec3f58deccd05ed1fa65a945dfa2afc9857e821cf1a33afc050ab7ffb1d8fefdd81b3832e830affd5e542852651bb29d2745cc2ba58728a9ce9768ca5de4071193745c519ded6e75f54e64f68f94b98c6f32959b58a7ada3474f4e73fe570a88166ae2f0c2df33c69d5c870ad006198a3f058e67926790767eaa05695c305e08c1d80e3a893e3ab95f53f57799111586a9bb931fd5656f6f26f09db15385880a0bf2e6deec63ea654f237ade2faea8e8a88bac9fb24b501df9703aa9cbcf611e5b468d0ad70bcfdd446ef2bcce6fc12a794fef31d27f50564bcdf90fc706aa81cdc0bae92755506e96717e0646f5c36a55e2f56a9f80e353f6f6f6344fd2c100273dfd34bdb373c88b1601f69212239367b9e8bae3e1c50fc70a4d78e4487003c49defe76748de56a05a8d8465afa668b29336b0a5ab3ec803daf4d1388954f1b0b10017fde3c235746f9ddb8636f52e75fbe9107adb8b0d79f71118d47b3be844cb60ded99d214b9b5e4f55cb463d7cc11a2d4a77c0f0e06ad3fbc661ef6e3824712ff5befdbcc6e53c0750fc0576c7cb65197f4e49f1dd5ebfc4ab56b988bfe238c33abea4416c306f5849f80619acec4b4f9cd3e63798c146a5306ef8a268e864256a99a5e6319939d11d23676d505efebbe62be52208becdde889a0d1fe8653ab88ec17de9b919581c9b0e723e0beae14b2c8734562ec30ceb2f6151c56330f56fec1dcaca88670830b858cdf4229ea53d37b5ebc3e06ce05bef7342cf27636a01b6588f96aa1f5ede41fe423863fe11375a614f1d29542c06edf52ce7741b6e9e6d044ccf234932e6047c5492902d0e326a470dd2d9a8b3dfbcf5f5ebdd4bac957b381d9666ac4ed6e5638c94c5ed8eb6d480d17101c10847adf84708b767150b0d10fa6f84af00b27909799ca98da9d5ead10c000c6e0b9af5cf8aee1b6f43b4eb46d4f1e00753249dff58788d1646f97bf6402baa5edb9e0f928d499cd0242105c1ccc2c7b4261d44b5b024a9446946eb80860cbde5c08f50d4071f02d2a8e7016e2f251a287101d71c2f41d23de778979b8195fc60bceea9c5da91604ee14dd4cea3089a6959da469903cf26915c57b50b46d9c0fbcddb78abda23e08f33050711331bd5065861ae5abdee6e5123dce9ce774dcd60f7594ae084189481d069fc58ea79f91f1e652c84f7642896ffe0182701261ee3c59f11f56a88077c12777d104d5b219157e4c2da6ac34b51c3ef4d9333ca922f4000b51646a961f85574dd4c307e9be7027c1326ccf0dcc9ea0664c1920b223338a06b5e7bad8c548c1ad3225531cf803159183cb4c857a078df096b35ed33f105050fe0b3ad9405839968d97782f09211fbb361b293a8ac5bfb7c16913d0605f57d4daabe9c40901c46620e39b461903c4f9154f8402dd36d6277979eeca2c6e45de9565e2603e66bda7227dec28adf0e546129aa41eeb4345be8d951bc20f0c69649f43d333c0ff4ae260a4c1f70f9424fbff5b86e51e607e48cf5527be573e407ba6a4aba7c42890770b6a6712387200b064d5a26a8785aa101ac6f5d1b69046667480c6df0ab79068461e658e34a461e2ee161c7d8118e41c83da939c910a09573efecfeb23111a7ce4dd25bf1b723c168127880b9515a7d25d5e518873a330b93ffaeb69837d0b5f325f935e14a3b47a74d7ab37e86f197d60b580d0b3742cac268011ad49c6e2537690501215732984fa6fc7faf8d6ca832aae49fca3a5dcb967959ab388456a28797d922a3d6469eb1cbe87c6181b1fcdc87c7d6ef09a4ac94648055bfd3c84a85324995c273367632cc83bfe44ea5d2e5933fefcb4b43d62ed7118d71647456cbe2986e2fbd6d085efd5af7e8ebb6ea095bbb90d514a507c74d1dfe1e41b864cae007b013e21e85b1903a8a91d9522a6a70fa7367d092e98c0805fbca433c26e92d67ba214860e5fe8e30d0c54e6631cca375cbe4aa44b54e7b1db892b466f60453f23bcafe207e41b18c7f60fc0306542a54b30e3f0fa4e8ef3b14bc2ae31dfa7c9325d7365dc42adad603516cd1c90df1b660cf15b5ccc54121bff008972db4bb24d6a4b8294870145b5a71f04f3ae2943a137db8a1f5e059f77b664cca1536acf7b144cc524fd59615289fc49dd4c2ec008948c7c4875c707898ee4a224f0ee54d0ab6bf587a933822345bac07dde50fa63dd0c203a6bc51a5ef6f31957a9abb273f70212d444f985deccc4c3d3ee1cd0aa57ff49f14502559a208fba6fd3a540c0b04db10d3837933aaf00ce9c7f03fdd0b60f6e3343f3f58d9262eeab6aa94a07f189c638957bc41fceb5a730e7cce286670f229f49c7b560962ead683da897489590d1c8a101ac20dbc1a10e9d4723ade8ea5decd4e8ab0b7b7080a1e0ec202f7da0f36c37a7691c35bedf38508f8214a70a6a19ba9cd3cfd06c97836bed4a45923ef04446218f13d5f2e1e6a82e569ff6e27f71deda65612d14b586b3db1ef00ae3c1f288a0093f575aa69505e374adb50a609bdb9ea693679a26833957f4c3886061f299fe6fe0d29309193576e7fe4bf708bcec86c42f24b2cc3054a3029119723474d16be2a5f1edb8c71c2c06159a122c9027bb1f0c07bd1c3fed9611f2cb5470792305c8434b93b01ab611221bdfcf014343ddc1d5dd089444de4d37809d1896a81085e748a24ef61dd859a25f529313af590968f663da2d609c4ec89b41eea0e7020b0a38e5bf7087280031b048997b367b83347fe0385e4a6b32e57a317591e0345151770927a3977b7ddf4ef31e1f903fd1cf4eec1eff7931084922dea41483021083ca5d85aa46b6ad141b7f3db52c4bd5a85698dc8b4a403de555c0b6a6ae7fe6c9d09eac5d65deec2359877d715f5a51cf6fbf448f78ca0d4c6fbb7aa3df6672734bc0b649eeca41bbad8d56cbe79001934765e88444d1a79a9a6b6bb6052ffbbea111bb5fcdd30d39429a84b6c8c4dbfadfbc724142d7075aa99196559d67985b917b06f4c50cfa0c12d8aab49aedafbcd4149f4847a1d67a6b8a9e32ee0b4efadf9a5f956917f2f430274bce2f71190a889e1dfbfbe8c0e7e78d1354321ddb2833c34e73fcd19f4858411d210729f4ac1fa84a72c2f06d55badffa66e9c8853fc8e981875e32e94ed66de4a30c21a8cf84506b590d8eab8bf8df6fc01297c3a9c2d6efd09ca4cdba84dfe074846a0f132e098dba7688d6d00bd27e54800f585dc8d97b8ae3ab79e88251f7c9ca659711962f694015c4d218a7748384aba3a5ac148be7683949a5ceab806e9cc015307dbd214f0b056e7cffc00f3b037b5016be64a26c6b8150b74d2d2dd59ae56c9fca58ac0f78d5e373c07f1e12c4f7abda962b6aa9d510f21748e2a7f0e05aeddb7d8b187c928cea55fcd487a8e4b91c8cc8ba2a73a5ba68950aa2e6416d5770aed8fb91b9936d616308249d51264d33b38dc03996599fd4d0b1636ba8ea2d724d12d9d94a5c3375da4834cd1f11c4842b06991cd64bfae2d2e1784ee3d4a5170dcb1764688d97866c1f4ee48592892ef0e44b872db52f817c5370e38bd4a8bdd73c96bc8b0ef9cd50df0b43e6a2cc71efbd3425b990675d463a15ad9e61bcae0f48f67f72f6ffb6cbce3f5251e4dc0080f378a3ea2d8d0b0e9294f3b784b352d8d1a5b6dafc2f9e5e810d3e4db46909d649ff8e9d5c89768fea9b4f93126427bc8d5fc6d64943ad22672a44cb67287c8105e6db9f7f96b0d3d08d5f2041e03bd3a9502bdcf4acb4fea298c828106e29ec0d1c55b90b9e78fefec5efc33660a17b75f85d3eb292055c5bcd9ad841335f2f165f4b514cbf2632fcb27ee4bc822e13933a9547f5f37cc8ee6d32fb62ed6bb60963d09060784de669997276f8ebf371ce163e4a13fc57fe4e1a5d829490cd0cc1891322e5c74d3086299e1edb1ca696d56a2a8c2eeebec6fe8f61ca0193ff9d779a83d4bae5474af32e2fd94369567f77c0d912929d22b2874c4939d65d0a9aaf6111cdf3a577e4078704b6dbd29e144d2d9a2b201a51be2f6ac45963a4c14d13cd65b56645e8ae508d50b849abee91892e3081b450676e4d3e229a212a098559b72c0268e3eee84534173211c06d2203c7763272e89f431f0ed9b74273db30283c51a4a4b1d6ac2d3dea6f58b7455c609cafb23d011eada8f620e9f2d8d0acb38603ec457be9a54d56e1475db7f5a49021c03b58f33a239f222fc8c07e3b95e644529bcbc1062d8e8c49b018efc7bb20f5d8ef6496fbdd91e7afa5e5ecbfd8f4bd00f37c445569e334a81e45a0e7cdff481d83a92ad22f884aa87e23e64fa2a703d885008a8e5e4d4d439aa48f2092b9026cef57e501e63f84987fb365bd1d5a051278e6dadb6a7500f935faebd3bc8e7f69da0e00af68ebe808322123c4aba9708696fab0faa9f7323cf9fd12730e424f3345328ba1416272cd5395579a1c009e7b1f155f1c67d5b43ae8913c203da08dbcb6d0b55abf173e58d2a2c3b1466adb0d045350c79e29a47ccc8fbe9f2b409b5a553f1bf2f7de7ea56d2686eaa191825fcc330019febdf715f9ce72dea73e404b3d7252c334d77e1e1f710d120ea850bce08dd7add6924f6acb68048da2ad5c99a06f41769fb51cba44f5e45f8a75f77954df6b3984346ded17b5b37a5873b0fde20567e05459b0c60604f2bc91bbfdc0a937802a7c47d3cc120bde0613b38ea9c7b1c51cd540b414b981199764e5b6cc24f64760122f960ac645afd7b35d8ac9e1bafc0f13400252fb64d168203a81ced27bc4b2662552ebb3ad7186ea790b6b0d649a539159e422ecb142d50c33dc09c684fb30d1f7c6d6254bfae39a012418a690db6c1336ecdc52b27ee522cccf68daf9be3137cc318e1231e1ccfedd9f84334fee3f112c9e61f28000db3138bbec99ba661bd8704369b0e2597397e7af91b42d503890e487bc29563b8a4ab1003e8fc3c85984bfb351deeb532b823ae751c67c7db719d2d73db8f21e43d0f501681b901e20b77feefc14cec52665f1eb3b793af8929241447f7b360f957b29d5a20e1a56dbd54a3e441fa629805a3e47d7e9bc44d9f08e703027b2ef537f45a54a1efe4cabbc4490703db544eff34dd8f5da482211d6b5721209a10277f5f68a54b2e2bf12bac63356495a7952d22823ccd0683c0ff1e3ecd6b4325a45f91d20ca49cd2ac0f5aebc4e358b44e06007dfd94480733fb360081dc442e40ddc8cd424f47c6253d63e7233f22f8a42f646aaeab1ca05820914aa1d0221a94ca1a20edf2c02119701233c182a1e646d839d6d7594151a71a19a20d487e2adf1cd84f665f6d8fbcb69ce7d676c56633a4eae482ccd42221bd129860def01a5664b7dca29ef85de954a15d5c8339ff89ce502950bf797bef20b742b978111089ac255c8728a2ead4ed74705d47aae5c495a3a6e279864d2279b08f90df3031c2a8e0ce2109ccf01161a2006f7c3e293496fa57e215309dd8627b61110e1631363db7cd21eccb2e180748d7ceb1d16d9f929bc9f54bdbc423611db3d10a9d313476861b4c448249b8ff02a1c705a265fbf02af7f85beddc3ea61db1c51fcc012a0ff71d0d6f4cd80d77ebc8c24c1e5584c7d38084e36e7cc3ba11c6c0fb075ddb3afac94fade02e3e294b3699cb67a4de0b5d93f2341e7f284369d2210fde0fe8ceb018b3c57f7bc83fe7c45be796318789b5e7fb45302f93a1dc6498286c490e95100a5f7608d2c82fb0ce5c60cbe6d70b0379a6887675b0889619e62fb757c161868d55ce7ff5ced8854fbf2c67ba90cd62b94c8115b69a831e7e5d6f903a2c99636e4c56712826169eba353e26e76e739990675cd88373dd779bb60bb9480d89d07962fda181a2605cc69782924645e8714686cfb06ab91dd85a4045f731d1c4965442b90b7648a296f8b9971ecc058959fe55a7da6d820788908f943421d362be4220882bb5a10038abfaeb8931e5a515417a42993066e80d32997ff11f1e6200bd27113a869878ab3dd50caac43ab28b71375e9aa4c23956c5cce71e08ecc9de5030e5aa905cf3ac43e0ac68b97f9060444f98bf707afd3f99664d3914ccb87e7a4fb0e1ffb9ca3d03887d16109fea4730bde16b5902d40f9bb638c251402525b9b45da0170e4be7f0d2baca862be8f7729dfa50e00b3683a08ed8931f212783487c14ed0b62d2aff61d20877fbdc4bc832a68559b54cc036b80aacd1140de7fb0973fe3d26039d856ad52c89958324d3602163370eee0d6a25cd9982e9d44762bed3d75645c34a0c230017b228c3cd6ebd8bf116246d7a8b0504012455da802624e6b1ab34e8b8605b6146961cb037ea90ed0b80afa1b220b109faf2e0959e9f07289c9b5ba4995c4ae9af4ebed2c914899af0822fcb03e09aca9aa53c60b7176d569402bfd60102257332a7ecb639114fcd7cdb75070c0b7cb7e783961baaf43354b88d7426e8749060da36e22dad9465cd5d4b6bff540983bb97e57a99c22b894410f13885c36d469810c89b6db68e0347ea6e9c6e1ddf388133a66f1a3a0748dc0b99c4c5f668e3589da98208899fa1219b4c8b5cced5f9b57c7478e6205358d33d205f98a52b50ec3e16ce23cd5a65d78b8de8348ee63f5f8702fb9de97c4c06c354d8e7a92ec3bd0e78ba797ebfcf1c088842990613d920cdc11e71929a8990cf6ca0f7b7a23a700fed83a5dfdd3ac31f693f25f1331592e2c6a761949f40a793980080d555872a9117069669d465fba1af75de90eee501d7004c663c980a60f5648fd0e786cbbc14db1390235f71d817e3f5fcf4cce45fd294903318f63707909bae33baeee29bcc38c81d2e2a183bdfb03d84e759d409ce04ef3141bc4c2096e593fc4d4a00b29f933b10f48a822a7231448f587caaa05016270778d295e3c9093eea565614ddac4919eb2359eecacb815c7d62f8c020986639263d880d2b7a2ae9f843f1e48eb4a08b626fa58b7dd1a4e899f472c1279cb45e803517f43b26b0b0c2b2a92fbf64e090f962c43135665035a532db83471d20ac39ef3cb77a227424f18a1a13512c24f66827e16a5427d9e984816d82d33236a9c9be479d8715bb20bd848dbe6fadad2067d35cb7f0e23e56b70060369ca6e5b1340e280f1a489940ef93c67320ac7f4ab87f2800fbc3f497c0428307d9f392b3188b288502e7df5207bfd7216fd8dbe2e16bb0032ec4f5d7b7d277253d9fc5dd3eec3285c01548e68776dc7d2a46fcd024a94dc6f2213adbda98de099c69721f0eca99e35591727047b7b5f540fc2b9e5e21dbacbd4035fea1b08a25a944566c241e9ec7ccd9b635ae7a7e7b0e11ab3027cf9cbc436927ffb9301fba5ad8e2a97ae091fac96dd63d897b2112df92b1ab056ee5baace31c231a3eabf9b788e4a5ae1f035ae7549c838772dd1f9994685f65267abed52bbcfce2bb3d36752a3292724dee7add74c56cc2a66d0a08b14b4d92fceb5358a99cb615c9688d2ff5d6d8fc08731a6bdb6ae98c2abf910aa0ddae9d6b1a2fb620b574256cb294751da54d95888a16a179ce253980f3ef7091cb46f5b107412c1573b670c4e64b3f4de15bb8b7d75cc63b33b0752694fb8dc0c725414f206d932fd9aea3cf2263118fe52b970c2c397dceef709c2a15574f3da5a9b68bc0adec8f223f4be82490557aa516739e98dd9ae458ed799192354bd30a5ef3a482c141f6969d60c9293b0f01663f3e84e69c0e2db2a33422739e4f3db5d20c5382707c6d37c63313fa1e4235d4d5fa9b5a2e7931d9537de2388a2ff5ca2ad1732b7a3f896b89b0644517d3671370bba40e4985fe68e01f6114e7d830115ae6074054efeb4137139dbaa59089735d678b27f1759c71678ec3f932022577a51c2ae162ba401e62580859be1cf2c43f6c15b0c1dd3b9b39f4420f665c736d847af65543a747c6dae2f91b09e131a1a7c80d2cd10ea1491b2ca93866e855c901ec8d6863d1cbba7d39d596103118e38906b4d83a302a975c63f5367749c318c4d245d23caa6fc02c3a6babca8fe5e52bb6e7823a35c09ecb8454ee62fd79883d2410a7c03bc33283d71e1cc31b4c7691d69929de4b58d27ae09a576e456db83be8315cb8acab525d0b60887ad870b6df45ddac71eda53d7a81d677ba124154bdf9e9c0cc5f541ebe906ede61a8b5555a076a446bc3e4516f09439c9e8be033cbf78a0052d7ee339a8c021e5bf405669851cbc623f15eee0c270943c690663ac001528d04cf282e011569ef8726c160f341ad00b013994152ec08a4db4f11bee925b02de7cc7bda70567d3886bc56752825aa92161521550795771de2e3cf2e3bc192094ba06c093f127aee6aba5b60b9fa29374a1348270858e4b2f6b4e4c4ddcacccf053c42e44eba147a0ba5ed366d885d37864452b76ab656adcfc28075ea811c98ba80cc50d90294810f47cac4c76a652a6fd361ce3e5566346742d8b64bbba1b934885816109e2faa8691ff94923417742245cfcdf19a11e6626d390f84d059ad57c6706c79433ba670d8ab111931fe1fdd2b12df705771e3724950736cd12aecdfe33a9be28848ee649a069661d66912fbee3c6d4f11b5ba72d93c26f468320319114d5b9f82f4d31f1b8ae334af7cc211e84cb59e938c5d4f2d754abc9ffb774d24905f35022bb7cb2f2ff0f65222634a9cafc190f8d9613e09afcb48c9f814273cb1e15242766d74741036fd37a0219e12409dd461fa2a0a32351790b622c25acd0fdb8256a1caa0fee633e08416adbb67130c18e41b2676c00363b456047a14c9c32ff523f6ef2b5da433d1bd2e1b117b40473a25bed74ed2851f6f5660ca3597d6a3d51adfb87c9969f4a57e222dee0559e3295ad3c980037c8c573c0628e3556feb6812d2ef60bfc8f0b832b780b2fb6f26a5e04e82a48d659194d161a1abfe9291d2c19293f59f21353cffca5288692dee5f51104d4bd10d3df86062903cf84a94135bec0499770b33c5928517154b3de24ff52c9cb06c378bb7e0b02cb6d57f7a56556d452a6514e30f201f7051be527adb103554c573425f0f5110fa2f1dd1e470994fbc0da28af2a880d37a6629fd9a4cb6df1272120fb53b96ac1812fb361bbc6e24e8c60bc595860b55b6ef57361c1fb5623e708d055621e5e07eb5a1f5d983b259c2d69df31006cff844b616332e0bffc054778f2cf4ec983158858c541e787c56151124c496ab5d54453a298a943dc3ddaf6f79b1556a1dd1670a7705c6ab0a6f05535ee4c669671b631d6184f4ec5cde5fb72886173c7e80e0808844c8ded50d280f244d237d61b5ca94d717a8680b46b3c274b2a40a481dcd49040226aeedd3e5a2ded931a70297d5e21ae424c2eab157e7ec3f60ee43607d35294df88015b5863a97d395a1731e2167a73f813de604b57b4d2b38dcb51ae6786ed0865ca13b2492d77e51dc17dcdd4ae9a6eccd670e370b8351c746599631b3d19552ae51831d49124ac31e4384a2871e13202694d38d736171d170875c8a42c290186587dbee06b053531e3a4c09fdbe719a219b46a3ea7528ef937431b4f0b8d2d2e410d8fd3e8f4f061e18262c0edc78352a222448b391b199a1f84495e4e2f1fedd86c7f211460ff575d407e41170f878db39219659716afb1f3aaad7be018546aea7c058870096a35f59f7a1472e0906bc40a5f42e8fac8e6aeabdb050d00a52f2e3e7aa832012431d5d3183b04642d17355288018b8b5f305adde593aa00011d127c7db4327bf355e46e6328445956d18be978e4313c6053c98ba3342b461a65d290345124fb5769b61f635c672d72835a80abe012d08426e690617b4491aa755272379f2af9b93343773d650de40169d72f949f09947c26cc7bfcd9ab6ce8de4eb46c863663426fd158d2c490e40f688723200a542f4ca3908f6bda59416ab0def745517149594f6195a1ef71acc98fd3cc2d043e2051c740ba4a32b454f7764cf3d7fdce450262b752771bb6f43f8e6a0dcc5c3d342d713d8716d6dc2d4824888ab0efbc7bc54d11ac959f58e72b26083fb6e3d6e11c2c8c19d01411a6ea422cc6dd8c9228aa4431bc546b6965f0b403b8fd7d613a2e84f5d2dcb01906270befc38d1e9dc6bb3d621691c2ce84257cac6d1ca683d8b400a273b30815296eb4551b24fddb4d1e2a92815c33553291832e6e58db8a37184d33c122274dde9d92db12c5e7dcaf8d2b9528f4ab1afd70e2b09618edfe99e946dc96081bd185868053ea8bc7383f2731d2c939807c2b9356b402a3ca1bfc2d836a7af3edea66b55d9fee66cdafc447278b18ca6b79010696671a727aa3e2b604c3e52a14a438e754928e2222d0674a4deebeed98e6561f23734b430c0948d9f70a86c56871f2bdc47cdbf19e90b38c37686ccb11d3a0a9685302863cd9d6eb4dc9b10286b82d980f84e4e603926dda41e6fb33d844c80ed0b3892f816975347fd1e1175d64278e962fd1cd52f9e11e20dd9617c266b2a4e512315783969740da7c97395bdc3bc4c4d9c5abde839daf575c14070a37c0f2f8198eec1eb5340556bc9f446886fd1c84dd84e1922bb404303d847179b9fccb588da1cc9b40f1b8cc672df95672aeff25acb85ce3b27bd423d55b0e651b23df868dc7f6664511136bd3f56ca2bac037dc645120cb5276fa100647d2a954f574bc93e6af621c4357b31039116344de63475bc0c81d46a0584554de88bae05874b72bc9737eb38c96828071ab4770f012ee1c058099544a1472d7345ee8183178e92a08d8831594fa9af96d328c2bb8f2415bb0d1378b042269e23a7b2817cccd19b2cc5dc093843257345a2f61261be456109dd74ecd473f30dddc08b7ed293e107df39ef64dc130041f6cb84df71769f8e1ad0cf06f812630e2335f7aaf3886c6ac2e6e7c3ca326734cfd5d0d4e720ae45a61704ecde889025dad45504a98d00546db70c828ab745de37eb2b5a37dc8b6ef7289345355ab6822e4c4e99e8c8fe30807a1038815f33997f0871f7530daa3f79722d1d9cd5c2f2fa22087224aae187e5da8d93374309bed5759176ac1c7b712b452b804121907a3b709ec6599ffa41f4757840a2c9a36f7e0a9de12560296e9a24389d9f5e70aace13579270396d7df83b2775a5fdacfb80ce5cdc7bf1e2298be24c2a19f3d2c41f363d7662c477d5fbbdff918310a4f039478c9d9b38f6f2ab9578b3d16750e12ab7fa937b7d70254c1cfb7a6d7be770a9bfb69f96a4feac502edacd8161430b944239fa20cf29fdfa7f4dd37645563d43ea76495a15c25cd44f7d5ac177523ca93a64e59bf7262b94ac6435848f90d72697e1fe22cb900c667f8a4eb73d551c5c0b1e2b0ebf1ae2dd3151d9c42eaa5e11716caebe75cf24ab4a3f4591d4260686a9e40dfc4557175df227c174fb99959e7b69baf3b450a86a8ca9d576adb0bb1ffc1a441aae8d4180abb6ce4882f96d8c61e4c058a48ef8f2f6e62d9d621495130f942fff7802a4a0978d4ee48b44cd2bb013385280ab7ea08e2f41589ac32cb8236079d7ea09ac5460f28d2b5c7a002c7a89bccce5370c24bf1c2fcd8806a37b215df0f3ea98fc29f3ad3a6da7670578ffbf5176019cb79810d27d51ee56289b4e9a72f10026b580897bb4ead3ce17500dd8e4c618717ef2db0835a4e2f4bcc4a055136228d5c2bf81ac72de50e593e5956083fee95e00ff9ed11fec0a331c8488a8152e8603026610739ddb8458eac19314c42e3992477e9415d404df15f74d1f900823e24f8d95f8be10d5a0b6b53ece56db484b447d8b061700e5d41252c472e3306cba8df1c1257fb3705223c1a471152dc82e8e8af4ee9e86e8b53365b8e6f6a69d3040bf465b04e8638b8c541ffbf66beb93bea65e023625c8dad66e1bcc3a71b68f992c9a400c2daddb24ca37431af16c236f747a07139c0d81e5638a0d894ef8e7e6afd1ea8344084df93fde00f84c8bd593ca6402561ddc5cc51c7286fee1006cf6533e1ddbbbabfd5cb64e1f78ce4ff29d2727aa8cfbedc5605e8bda817a19d16a39aa73ec47a039d718858fcf1cf2d53113686e9222c170050d41d4fc527b4dc650d4f4718dafa1d8faea1779ebe21f9579780f724c3590d4ca1a87a2900df0f8c4b66164fc399828eb0d7f771888bb7e5f80bae4d0a2f2f59092bec65d38b573fe51578fc1760710957a785113e19924739f49a86ce194d517683d803ca5d125c1ba6bd06634c4ed266461343eed4f50cadd43edf2e286204df21474cfeaf02bb5e10d7e9edf6b4901eaffe7fe93a2c7e32cbfae8d9c0d0541341fc45a5c669e6c63237c1e752b60e5af8b904ee894885133b1045b0766f183f8ae0e89a19be34ff4f376e67120d2a37980eae3cec155cf28d9fc2fcb69709c7cf608addeb2d1cce806a135c7c8e9ef672688d1f1dff2d7d98297b71bff022ed04e1518af5b278dd7bc3d65d9ea1730e072d8fe6a269c55b3537a99cb8496b845f14a0c535c1438c067afefbb2c6d2d5d17b26e18412e606e8f29f1e91800651fecd915e3b6ea2c2e1a142e5866f53c8fbcd753e8ba07857c4aa0ba7162d3a1dd88b21bd9b33d28ba4f47b84e246583c86b4d5c80df708da82335f0451933af4d0d40bec5c872bd2d17442ec9b01fcbeb65d07d77c9cffcf0bc7199b310e2c4adf88669fcdf80e6e5d962d98ea9f102e3cfe5508ccc6cb73117e79714193722b091eb8eefe786f29d9d797e19756b0d9635c8f11bfc9ba6ddbd8e59e1f36039b40c1f8261de43b1343e6f4a4a72c1f056e5cc151bcc0698fe3141d960f1714fed1cb7e09d2e4a557d624696835441f358e3ba6de1d474993398b6ea8c66f01a25f60beddf013c493b363a5a2295110db3e6746595ef2bfdedf98092cff8e55393935dc3ef8fc1de11ae622e3b774d9f971f519322487a2cd78bf2a77f39a1cd9799110c0648525bbdf493f30bfcec02a7f37df547b973e804deaa5792a072c6ef4f30e0a3db523e87101a1ab82aca4d29ee2bf6d53c2913ebde23e5d2ea16ae1cc49513b8c268f255a995b955b7def59c05a25b659d56828bd5e474b44e84d5285bf6786da9911217e74a0a8f3027e2cf69876059a1d8b7cd8ad10695344005ad203d136d6a4cfd4a534e6ff7ed259125c957d4f2d77000f1f7a2b44e2e9489a533bc49248101e5fe1d8ab2381c12e2f5e1228bc7ec3579e2fd50d5b0a8270b53d12a0ea9908262f81d956f38ca731e25656aea78a0029a82bf63dbde91c6ccd868b366633fee0f33668cb4d8a6d18887596eb5275bb5676822123a8c1fa3917c51692f84c9343f4a5c762c07b6453b46a14fc7cfa9932556db8659a0c1645c7811b267df8d936c93d5ab3c925831bf68d749cc9af2c8595229098b7b36d4eaa3144b17dcecd3ac6240002e14caad7779162bed3bc8a0f6598fd87a6931a72a0a34fd436bbcf757890db76531bdf848f2952b2ae8931f47277002e941fda008b611ada1a80ab39291cc22b4b61825fddded6ee00e9863b145b1eb3066a415d32f58461c4f3e268bef1b0cfb7b838b7d9ae2e9ed204f61e4369473cdd0b1941241abc174318afa64899223846e7d080ace538e5a80ebb51c6a6ab6b9601fb0ed23c356142e8d53a0e1893848f8ad86ee1802fe63216ee64272eb0b08a5cc1167eafe81581faa81293cec809713cec305a1ac1aee3389bbb575e22ce81329e331c0cd9ded80fa1a18f81f9b48e0d37727d92837911e0e09a72293f3d0f336825ee6a4792c029458c835d47a7a14c1e0c149299b2b28e420871dbe02411cbb26281335bbbcce986b403a4602551add08eb1bee6a3786ff51946814f44b1066f73b764bb6314ab006b9baa643c7d1fc6023c15d9929b4a29a1274ef904fef669208f7582a9ed59d507a06c0821003335e86692879e2976cc0eec10866e24835258f15f924385a63a339c3ebfa6406470025bf48bd6b3f953804f31070ea65280106b4ffad74f0a43a3cb6c00b1c030ac4380c7ce9c4ea74dc1fe90d87f712d434a451cf0324d9ce5350a633b1688ccea8a0114b5ed4ae5b636853b5aefa4101342d24dd7e00eb15d38b1d20b72ba7140d8895089fdf07d2fea1d236d5e10314541e3abab501b5888e5b8896d638f4977fdba5225ac23c549db1dd0c59921883a4406cfdbcb50f63c396ace29c457aa3719e730535bdbd76abfef00acab8e65cc05c5e37e9ca79431cb28b7c483ea23bcc46801fab1645d6c6f5a1a940adf74c01ddb29a9b932276115e55c98a85d79df7072b9e673e43f75d8b77cf0a7dd0ef4191db460995d970524f5a67ead8174f24065709ff152fbc078819b5aa2ddc4741af65f8d26ddcce95b34224cd4d2c920c1bd6676f010c43b907ca3dc51c16ebc4d763ed7ebf2ab723b00b9e52e0e0a85b757888842d13e867a53b0ea1d9c4c8d6197258903b3958259170be8ef7acc688a679809badc2c2efae799cdd7538d910d5532941e9c44bf38248d9c9a56b8a4d88ff1babcf4ca350583923c86e548555baba5d39fd0b43ef76a5983697a83c231682ac6396fcdb43a0cc8b19d8ee835509f67d25782e4e8af40dd11e09f90da3346b221c3d66bb0b4525f0115fc79eb4855974171b0c55fa288f1c516d8fb759d9e8f8a17dda775402a0ee2248117be5256d1e552cc134f5656dd710a48e824b0ce0c85ff77f87f90224b9b701f05c336c3fe9a5a66d65f01e8d1df776b609b432088b3aa1b274e3a4a64355128c0ae23f0bbd1b445a63de94e0f549da2d92443fba64ce90fa6383ee7a18fc15f7a5d1685332fc659aff7a7ad04b21c8acc05d9c9e88ea2eda2ee56f007691175754e05c572df05576fd72907133c41b690999437f22592a917d9361a9dfa88392c38115c8de23b18d9bcf3b99104b9e22245e8c7207cec72d8a93fe72dcb37b220042c55b97038c7f65cc0363dc97f54d545fb8d73751b8dfd8f857a77473c63f72c56df34fd184fc1ef08679aeb6b2c313de9dc9adafb7b896101d311fe98b7f5762c05e986e780e9dd9d4fed715a5edf16f0760e4bf47f35dd1372ddb3fb47da2717e4cfed528ac84d6cf874d710c2a46f6e4f9c72b81b043e494c039b4313720b3eba9f29774374e328deae471e1085eb3445e44479cdc253221b72290538a18b2661fa36d0cfc640e1175c50d66d7d1cd5124b79b0ed067cc26255b4e5dfa6eb45c72facf157d1b5c0dde064e232e1785509b4449d421371f98ea8fcdaf71bd4047f9cb2d9e4524f53dc7ecf9bb565c9ab065db8752b0fb8971ccb4fc2021e5c4d950899437d11f4363efad3b60ab4672ac0f451e8ae4e456d94b5ab5eba7fba2f367d4aa7714b5cea64ee47c1e22139e404462b92d7466cdf2a36299db23da5676fe0854938827bcd1d9b4abf6f0d4ab1789315cca557ebf3f082bb351f6a253d0b2716d15b04fb9bfe594efbd0522703c912fce7a5f2fd0b6488e5bb186fc93341fa069b4f4c22f24bd68387ee7cf2770d8481d9a208669211270fd94f56760f88c31173b878dfc2a1c8a8a66a09aa7d1bb2f61eae97f701137e61cffd48aa7207f6156fd13b677bb1946222ed8cf2a45f5e813538eecc2a2ab6c39c0ae82b05ee687d85da29c73c8a4c46b9ad8fb84f422287e8e619df84fc3809592c851749f3f6a719bba91187e9e05e7b54069a1ce143e16285e6791ec6392896dbf0105b590818610be16fdad59fe1e132c6ebd9b14458699c9c91046b9c341f213dba578bdb57ac3448ca1a83e1333289816a49175ec96ea3722f8fffc7ba0b65909117affbb2054cafab116e9d8605b4dd0c8e84a1af7cc5d0bf57dad175d3af7cc62389a6295ccb7bf6f8c24bc013d5c469cfe47ed337edd6d959742b4bf378c346709d134617002fc84f05f089da61170b48ac584080189d5db6289c6069ac14805640f0ac3c484cd5b8698d7a1bc877699c1ba12d59cdee4e1426e90829c3e34519c9a9915f9708079f9f3ce6ca9026dd4ec920a6f9b3af2474e6fe296f547a773d45cff08ebd0f5512145b40cf9ed5b6f92bdaee378c39fedae569914715408b57cf6a34926b3d84d5324e79a6fe537e08db46248f5eb6fd0803ea5b90e193644cedc9d384dbefb0db7dd405a7118817904c0b673eb9deee0f1f1c1b28448a06017f183d664fc853c358a197b3e86294443f3b8317ed5a8dabd20e3a34168042409f8ceb6d588b40bb9a3b12e5292af8fe3543d6cdcf52febb3b2a2b0e4e17205aeb1e51cdfcf02484072ced797ee22e419f406203c80e6d3c0e08a1f98b4da3340c835b15c69510cfa9d6801ddc7738373622e4a4af38dfc06b0e39ffc27f1f4fe94cdd0d50dace3518dbea5ea02b6b17b7890b0a0642805bce8c706b8b8a66567eff15c3504aa73f23a2e253be09429e8da3facc864e388dc0a890089f073e02b5934b88e0d4e0e128f98f22540e0195fbb47f362ebab4d5b8f55b7cefb52968a0db7401011b99d5910b3dd0876aaa2fad38bc722dc439584ee80bd8b6a49b3ec4cf2359d8b5ebc363f81b30cffde300c4ff4fa42b06148c5f521c4603c1933acd6df47a922233abacf3ec7a4978997c5073ad665f4ce4e00f8ca03e2efef7177cc20b4765f3799f0b217b40f2a67366018f394de0efc01d3baafb93de76db2b5193367516e5b6f7f8234fc95bf90cbb1e7f464d5d01b2a571aeec07d92fe957aff4e8edb529decdc66c8d55acbb6fe16cf8650deeab33fefc7da0ef04bb7f611075786ad5939f0b3a4bed05b62294bf92890f4104eebf388f98b893a85ca16a18ef679d4eff5f0b1b1126f8e087a5d131896c40fd245f59d5a49a5638e93f567990b9ca787264cfbfbf6e159f37c45624d6d1442ec130940e8947ed3a0f5c381e7ee0e81df40fde711652703be20839bf01fcada32822757d084d1320c47403a067177608c347954324f1b992b4cf6c988ee0c82fdbd331041906abd37f13643e935f5caec384e2e2eb3e82be32ab4640fa0ec5c6ff231cd9324255948a20097665655f2b7bae31de963ee80cb1d174de0428039f55e9a99265e9991d178c63dff9fbdb8643d91c8dcc4445db397e3704e81c7b4eb3e6aed02b3571ac48143f8532b3514a5aae7e80644078cda715ea17fd4a0a0d00a25bcccd2fa197a2e613c0e104fda12b419d4d91bad1ea227c3750c27f596af446e87a1bf30cc2c09f29e99a8edbe35e11e641623859e290ca6099a133ff99f926dfb500bdac127aca6267fdc99adbe18908aab30f18533e6295bcdcc40e98ced70cef4fdf3eb6f5dd46fadf3e3a9d4a9419c3c8a0e10d1efcc79cd28b2e63d9eb784d97014f6f8128177f753aecffc90e1025078f3e3fe36c3608d4f4bc82928cd9875d0a238fbe7752f5b8b11c5fc6f3562820bdfbf65c3d5d531830b62c08f40f6b3b8133f6d1982dcc1445e57db960c944be63cc9f7c238a1b7266f299ce61924f75c985b2388823fffbe2180c399604764d1c765826e147ecfceb7673eabe3ec351c7a95a997b109d955e5b73d00370c42d04c45c542d89a5053931c5ae2c4242c54ccd6fe6c1708bb681f511ec89115e084fb5690cbcbafe0669de905bbb38459376c179169163f21527de2865e97c46779a1ed6b7e51f6b558d3260c87bec86ff97b1cfba8e0a4e8e70f9f01ea6ca5f61e9669adb84a8ef3ead79052718e4dab8976979c60d5bdffe6fbeb6f1c56c1f1cadcb1e59ab425223719a6bc72edff3cd3c450d8cea5bd6c5ddef6e974cf63b2c2b22bfe0487fd96d3e809a4d21c5af288976aff5832e16fb78db0266bb59ca483a2bf8830bcae56fcb1b709c0bf61d088cbe6d56133d5df9420b61c0e2975f034ac244c3a20cc5799f94c138d454fd49398128232561a770f965639119def9d028634cce79521ebb507b7ee3fdbe652eb4bd9b99d46f2cd43ff3c0deed101e34471ec9f0072362ffc12d957efa7acf51a215dcc2f90705ff3312a9d6d8528b0a9f5b5a3537973f8a709e1e983092be36d8288c5af001d7d39a58b42d2c3da7a7ad84d345817e7e09552fb400220fe741382df4ee926ba7fde2700bcf1f309707c6fa8fc973d36f425c181ddbb588305c3f27497db36370019cd2318dc07ecaab5e72d16ab285e49a4ecaa8fb0997ffd6f523cc4be66c9d3fd92f45a563c5f1e0c8cab601631032d3d2e33f86755e57075860eec81f0ecfe3bcdc0e4fd0a71db24e73aa2b3c2a4bab7da0c6039868e5d5fdf6df72c45f263513ecaa65e2ed6a8625fca44a7e29cecffb8fea8278b6953da69f4aec4a58b4977a391af1d817803e82325bae63678b8a963b45a3b118e217634a86893171fda7eb9cd26b872cd3b8f7c8496be4d1381d421642e720a4a11d7143833a3e7120c9c94ad27f7f261a218350032d340fd06171df2ab4f27756bae2a7b20a664ee3608e710f0d48a5c0017d8c2ed1e0e609529447276ec4322bfc6994ea9e483a512977d6a32567ed960f5a197adb7565ace31f56fb5eaff29d7de22ba814e86edaba38e34a5bb0824f500ca9f3220c4f6e463eea07d720fed62afb34ab5e7a38a98170277b6a33b06034777d2a0d3e7eae69d560d9851ad6ca3feab0c78d481d05db412179f67bd62fd6323a34e9ad1f03841beea28d9ae66fbaa8762978e72a959ba3de541515619fabae3f9acc9859399b6175d85b293421b8954c8825ef0f83f60b29f1aff7e2bb72c8d43fa3cbb9c2477eb20c7f3d82a5e45dd3000c6e28004c6b33647f19fb26edfc39ac9050b1bce813ec7538a3bea5d3af9b7ab0ee571eeed5175d93946fe574e72e265a6700a7dd83e6c0a4675429ad0567cda9b6170cf9b84cfc2429e7adb5a6afed73bec052461a07bb32b6eeca9b87c7c4d1b53ec9b40e2b8f605f3431de4576c45a093b34ab315b79fe9af376606671f06db0538018928eba0c4a6dd35337fed8b9eb33cfb5bc55257cf02f440c8d1aa5ed201451ad1e303d50ea9f528fa2d6647898fe901f9b78c2da73bd8e079c33caa5e0464c9f6a56e59a648fee033848d3afe8312e326eb53038b0ca97df785952cc8c219dced55ebe73917161282dedcd7c466e5bc1275778c16e9ec0fb11ab0cf4de57faec5edfd89eeabb57d7c475b7d82fa624c3589bc2b2482fd186a37eb575d052e83d422a96850b3c70d1a8efd99acda59d8b332b50db6e22953b7fffdf97ca2cff410ca92ac4313c840af8c05ff80c49b60138934ed7bbce02324856a20e643aa6641e2422250ade4e440b2077ede2ccf020115aeb2ee7f6086ee8fbb2b1ea02f509949ed14e52020f6ac4e8182e5f14f31f15867168683615fd1465b38173237bde655b43650b2f973e45f243802b44118d3b93051899ac56f1d2910d25833d32bbb6f948352815ecdeb69a9eb72813ed72413063aa030bf54aad061dd2cd50755d00f138125150f200b80bfe7edd2988557b88d27eb68e874457dddb8a44315326cb0ff0a5ce78ba29b1ac2e65354c15e1bb2bbb27af30127ef6c14969380d9c4434226959ac97fb3eca3bf4af752e5cfea20016550596e3224dc10cb0754790b1cb7cb3d9876128bd756719736b8ec43dac8902a014a0f1cc18554be0332f05de015ebbe4d989addd58ba50262d77a47c9af928aa6db2431d0708af369468478993a7be3ebd68b121dd2c097d8c7e33c9101221ac1c8dbc6d5dc2359d501a14202a58e93c5bdb09ceca238bd3d7000fbd4d64bdaf3b544f29427f13f3f75c0cde1f744a074b7f47deb320eaa2eae49a0eb9526bb55feea0de54aba33b202dee3316b20f3634c51fc017099d01a33306dfb223779f300e5ea5e0898f85fd4771428fb2ede773d8c94f6680d68ce68d8453c0b5e1a921e9b673ba38e8221604f6a73accfd6a52277ae75e89fff024cac8de4bd980d50c1a87e9f9973ddf472ce173d1788f1fea0b3f028c5d7a8462da9727751076fadefc609e8368bc20e63204fcfa69b804c7555c86d592b7667df4978aedc38f78860be789603324a10f34a9ea33e4c6a27bd8b3d385fbc69551ffe2006e6fd84f57c8cd3123a324b0811ea04d4b3ca541004ccadf2cdd91944d572953d60c7857f52c9ad20b0532498401691b5a537043f55a68341904c8bfc88932564162dfccd24e09bbb7e3a3de9c2de1f0614d5c66ec5c7c24fb55aff7bb042cf358fade3d0a4dd8768cbaf5d1391d9632bd6a9922164f5001183896eac934272c40fc6c177b41a5be237dc6b2a72785118616b479ca8d3384c8651f97952827650bef13caf2fa321f39df83e90a66f3c0bae016d63714f831d66f6b33d75aa4b7cddd3de422b5e3940e52672cc9070433037b05301975f56fd910d65de0e17b0e5e68e72c20e1e2dffc6e5376b5089db9ffbdb669e29a6b130a8c9a096dac3015f3b8124a850af57c06dfdc1fdc3d4a26a1b3c8d98869f5bcaca257404c2c8934c3858eaefbd272de711eb2835922e559082c056e9b254fc57d552c9c0bcf238bcf4739d4eaabc8d115237c1b9410e9ab63816ef798cccdcc86ca125a600179384614eb69768640f94c1ce98e4709565cb473461006d74d334342dc1b0b2cec6c338e58a9635d6f4f3e579984115f70828ebc863b23d70bf018b183c99fd0b1e0c5ee133afbc6628cddc21826aa1548bc427b9db52fe627eb00ab9e4cb16b6d5e5ca7a057afaf6ab4fa47b054fa60f79fe35b674ba5a78c9c704c7babb12c414ee0c8e3f65ae1eaca8dc294f78a4771ca89732d344e2a7fcf83119f16c174b9087f2634083adf1b74fb2e303b9f2afaad6f831a53d5f6bf0873c5e6f278ff2e963a26582773edd494a617aa7fa2039909f34100c62e1b3cb45f4899c2a941f1a05da10357b3240bcc2a2901abae2fd5c63bc80e390af1d5bfe1b76db0df1a011b93945cc8d4b0f4a94837e69cbf5dc874a15de5dc6364f62667784720d4bb547faa05faace1f4cfa7bcf1bcc3191493d8986dfe8a5f6e0fb7ae929abda3cda287cb1de4fff2cc2b061391b06cc311dd5f8df69f9697504ab036840f0f96f903993419e761b54cfcd2fd3c6e479c4b52d00f2db72a4652233774271377b7da54e8846b71a03ca4e84892de68b774214115f374030934aad125a7839d3a6fb2dd2a43c9ea355802cf7868c363240b1e060a7b35b6d2face24114cc032243fc6d8d18451e62642f183adb66d75860d316584c20184aea02fc33079237855b4709a13e026704926486d7c42e2b295645a5ac640aedcb46b9880a31a9d7ab0e3ff8a8d03945a02c5aaa60571e5b2da1e1c5984d38c563c1a6a49a7cb80963fc18be2ba6d36ce52b9a781ff92257201f96037add69da196e59de4d0e113bcff068a6c4a32093f9c59748628c9b84ebd5c5e1bd70f7cf2bb5dc7c310b1ba4248e5f5a73efe2f620a94dd3af4ddd1b829565c2142e006b9d33468a0afbd9a6cdd07e78067b6f9f4002251f5daaa140aa90d4845f0260d3bba4ce69f560cb44b5d56221fc1d86c2512830d3c91f8c53f0e6b2ef742201e28022cd9817a1cc25405975391b5aada165ace05c0b9a7e8a28f586902f1c5c9e13d740f0618863396dd76e84364351dd47f31a1451a138b6c948d329d13219bf128d6f9e01af4e0144d9bd660e3f4c1e5ec3b239304a8d0ac38b92cbe6917d34a471715abb0d06c88a100525409bde4991cde593d7a991f5664f158c9021e2306ccb10de898faf038007c8fbdcb74adb777c569c418a6fcdd80a41ccb70bb40357251d32b1a20a88e6994a9761c9c1ff414c74145e3f0874d6c1107e13654d484d5e4dc0a9ed4cbceed435e19b9586d5a698591b484cee2d55c04604dddcf17ca35bf9baf5105acbaeffec5b0b44fa9de0cdc19a6e77f3f55ad3b653ce21e300e4b030555a82e9a5bd14641abe295b7ed404699953177de73213e395dbd64b64f88d6af2e3842a7f1e8643619b55441f68ec06b17b0fe1b63b9e634c33bc2d39514eb84ff9a3d106e90934983fffce854f8f2b675f55583cb2cc611e8254ad2990c5e1434672b5706a82e4e2d8f14eed547d3dce4d6cdd4af5b9b6b7f96066d02db3668185c9af869bd7ce4db6303e5fa1167757656e38f114cff341b8ceb96647ecd8f76d6542a716e0ddc7b569aa657b35615de7c0d0851e006275e91fd758da5c331f1ee27e21f54a866dcb757f3edefdd64f0ee263636718c4fc529e8e4e5dd363f7543ea0ef6df985dcb96cbe7d524727c291a805f07648f6875b48c741a247120d8f8fd568a5c8845946cd9a27d3ca774c03adf497186ba5bb390182f3864b412935278230db36df2f8916533e8a6703213b50ceef9428544a54f5e05f89cbc7b747f5492171ec9706c8d252b7751f65e58e8384f0b6c9d118d8a68826555ae54676b3247132f7ff8bece70e2e45f9db9e454e28e6667834edf10b2f88071051589b3e73c4ce89eba1462ea14c1e9c86910fbeaa09a30ac3483ae5bc12b75268970308ecfb3ca53d68bbfccc80e617725bade62499a98f366b2b5fd8e445a8aae059807657051171dd99cc8d0a7298c67c43fa332b990204c6ce474572d2a5914342ca99b2c2418bce38d077a9d0b134a5204f68473ce4a2d335361d495fa59e57499d750e36ad03cf36f264893ba808604cfadaebbb0406eacc4659a7fab67e524ef06b9e56796db49242229265fcac8b998996c9006d90d5f6c71a3c080bf230fda8ffa0de99c60adc6dc00f5486d0bf1aa2f64e55e8b0a2a03d5006eb7b63e58529413577a268ac4a8beccaf3ecc2a2eca1e5136e6c471398b879a63f85f6c172840957407104a3b552f10212166ffb48bccd71945d647cc14bf6f16200283f8dc546286ad95ea443884f4851def29bc45cf4aa7e7992d308289ab4d50393fb69af5581501bc8c908a45885feb1248937c3d4251cf80392cd6ace4dcb4265f59f7cd1104e42015d232c5d8d53d1a19c44c48da8764a95a20028d2e6d8b7d86047adce86c5a82c3d40d71c1736c8189a80925d293bdbe7322d7c23920dcff8cfd5dd22fe3f31e619cf7e14cf27c81279e398218ff2c3e20777cc185fee37a9ef77922cd9ea1831eac06c82cd1bddd757937d602233c6c5bb4f80227ccb923a56e1f1deeda4cd6f78330034576eac5b8eb10df44eb89e210624981463e26e726dd3d957e3a0a34c20893102aa884e741010e0ef2f97239057f5b8f5fff7c6297a6b57cbbc0275404df577c5d57a0cb9c301f863552e01b208a1b52bf04eb9ef84b24a5d218419eb21fe0636313b5d6223c6ef4bc4e26e01528f7279a33bd86c65b7be21a91de1fe7e2b8df25670446dbcd7e159ed5b1664741ef4dd286d1f874a8206cb683ec4e0d81127b82688bf563705c89c5ef0cc031706a67e19950027f43ebd8578a34d015c386a993bf6ad2331866048980f55a134c49b9b609742bb380f6c12607fa3d2bd35c240bf762cccc60f1c3be36d48962ad5c0be5e6823a624a8e42b3469198db4b110008b93930fe0cc81659a618c23be6550c42c806e41e91f531c7537b3f07f8304b7445b532ebf87301543f047448a10c1cbfa1b42b59be5d6e11f4f4742f8e6c5e74ab8fcac7f45c59be21af9f1ffb6116325bcba4dc10f44382e80800741d1ba65fd4abcafbb648044255dc235ad5dc4652a01ee5c3457cb86cb1c58a600b973223709cadd8ec0944b09c8e926f71be27b029f57982bb7eb6f90876523c639215c6a5ef859b908cf85b8fc17b529aa052dd0fe160bc74eb2c8132cf54af6192ac0c3511ef8a3501c24c800a3b505356781d452ddb928af67e3d146e9256f4d6658afc20e2e1b94ed3b60f9cc8701ee197bdea2a4e1ac5e690dd6a0c94fae92ec0c223afaed01a59f1dafcc6d226d044140c2f40e45767bb141228394111d7b51895d73181a596a9c148c45e9833681e3275cc48fa41f6be829b4bcd276b2d7dcaf9f30708d2d182bd7c0ddc2066184b5a4c9015d161c944aea8178a307afc2a505885dcd20b26086d175f7c133f36bad7c19c0d00b3b634a13286b80b0441a43cb011421413fbd7aa3f5b11293c9e2e3fe21c20317bb9e6b11ffb2f1da04ba802dff62e538e63dca6914c20e9561e2e93c6bc5789d0f1414d2060a521e73abd80c6e91532ced6d3f68b6357ca0fdf751d223285a97d65eea48099836710bd44047b2a56414eb37138246c10333fe1ddcfaa4831391d51f77de37b8e3af01eb9e794be794fd9a500b84a1f45e95d7f2208513291618e2c18b07db7f5d4610285aec1e09e55af3562ac08e0caf054a04a393129a175bab25a5b8a3b7093eacb45de32b0839705fbc75b4aa66c2c2ea23078dc3b9d8aea47a417724b1707f79949de71511bd1ff46ca79a275c971035fdba0e0b97c4bcb742d8cbbded43bc9d3740cdaba2ad9966cc5f5219de0f1403c5848e27beb1b1b581d7f1359c05e5b306c70036a3a093fff2904ded432e511e9ad730dae52124c0d66147d1eba3f5e6c5c9d495a69277425aac09a78757919086224cecb3742df24c61e15f2221fb0d81c78955156ca92f37255ced862793febf90c045317ded9df18a876fdb6cba766a9303d9c4d41ad2e1bdb6f9ba53d72a51fa544b3c7ef7d126444a67053e2dc409f1057becfe45b9313176e7bbae26af5e76abb32537d1b8d4bfdce9ddb97e16c5f6e660fff4a31b42b287a7ddbc40dcd5d601f043cab247083bfb68cf9befb889d4346dd5c08a57d9b9671a50cc32bf4a5ee6042c42119b365f64a8ffc23d78b0ad47396a71692777020a03a1a3f23a500cf2296051a587b40eebae3707c2778abbe70c385e155490b802e2e0862708e925daf7be4862092ad9837983b290a91e6bf3e7d24b7db9979293054ca613a40d9f7960a29a6b5a561b84f21a9d85506b9b3b2f006eeb64aaab4c0854cf62036fc0f0f8dc2b1cf10c24f00e0e22509f1262994f132f8c692ce17662bbc8a641d27e6ac36abcc98c6f1b7cf14ba840144caf9762e3786dc967321b52a2bd124f6319d52f525313d8dcde590cf093fd9b6549898f4bf0b72c837f42a7a2f535e9fb8672c6e8e6e8798b470a527c4c6f5e91af7c20c4cf327b8bb85bb85ad3a6b8ecc8d18823dee2c4df34d63e7813ad07986fc6817e602e3e20f18fe9c36fe4304ac1f0b97ea3f5dc42da9f7a4369ba5ab7b960ff43b3166d95f3e9ec3c71f2123b32d8dc748b1b76b33853e5a6b0a31b228b9e639dcdc7d3edc2a6932bdee2f63c9c1ad19d85011dcedd683e0c85c63b97384562376c2e647d28c7aebbc98125ce6733fb9b98f857c991d40d30580ea5aca4dcc5abe294945977b40add8783b54979f273f662157d07499526ec1264e875e6944482d85dcff417fc00f93313f1d9c07725d1aeaeee5cb3666117c8e3bac7a943565952d361954a05d811da8325c874196891ac32f17809702dee742eb692a641c9e666865848414941c5f320d9a9812774665d3c29794ee348103783e99b2d40dbb678ad9e0c8aa00e0a5366137b799d0f56c23d93e89657b872d1258a1f0714777323fb17746c59de0cd5a43421f640148805ac2fccc8479a1288180286a90e55e4a58ab4840d638af77564f0a57d6b969fe5ee6214e44766dab53379319911af0d7acf8521f283935112a36c3bc10288c5e679d9845c554ac952211374b0c70746d39be98416fd60b69e543f7dbdee5ac48fba34e108401a4dc9726d03624d3c95988f5fb7f703d0b02bb0fa1cce6b15b3f77c2ce2aa0c6f11bc52a7138e3402d6d8cf73c3823612259fa3496d702545c05232c52548a8ed32ab66e59e2a4569c4bd56483c4dd77a7d96c076a5b0a6253acaeb834177cea77b668a80c472255061684ce3609e59ab158b00ba07d43e6098924e9d6d2913dcfe8f942db26afd351dc72d03329c53600bfc44c088a013103c5f32ea56f25c5ea8d8baf59e62f11af27834d35f2c58de50e894cda645502b24a05ef47c636207a05c40326bf97da45ae36307682d1d7d8203c058d3a2b7ae7e6c0e748a356cc5779ffb276f127bbe7ac727d348039daa1de71491bd97a22418d6446314e8e6a3817a47462ec73571ff54f50e4338e4919dbad5e737baa28ebafc8944a9b08d1c35414cad78ab6095b2abf025b92429454848b3534fed95217ce4bc89cf904982c36d2c9306c352c24f588227a03702282719156f43acabf03701e70fcd9ddfa1755c7b6ae2863063174970e0e7e33871910c52a07841b8ea7b904f32db841db13c3801d5eef8a8b29d5a19a5dffe6304421bc0e43c5ccad3e2a397d3b4e05a5dc347bc1b472dd0e4fbccead1091d32778824e3ccba61eaab3333b291d8d4a8606ca7f1052af8c2ca5af5e95c6d592c4ecd4533f87ddbd15fb5d9a9836df0a168c0e6bddcb4a9ad9f1c15dc3fa8468675a9c314ec7e10d317a7cf50a4438e7c70318d8860dfd28778ded9731df60630b6d770342faee71b4da4b0af3f43ab05ab98d64558befa70ff3035bc18ebc4a26af39ca1b4968b24c6382b5cc9a9ea6729930f9631bc2560f918624df8332f3306a4b2b1163c97c2448963bacd471cbc9996fca313a25384c12ab01ffe659a991ed1f3f102cecccfd3615f30684a2ba8b4e41497662499f84416c1926156176a7fd12e66a8db6414aa54f9b93520c545c586573408dd516ca90b34ce477500e692ee12b33ac26c65d0315092b482879488f512c5b8ddedfebc80c28fd5f828af199ad2e5557ba01d4e21b124a674bb4c96417d52e1ef4a2701978550d9d4c954e5ef98d5849a7bcebcad42bf0903c05bfd04a7a07acc626ea636d827f0c50a361941b1f2e511bc7d2d4da0deb109abea9b54a0a11e34f8b2e07672af02a21c8d428ef9459419c352192acbad557167a8f579d47f8fa47cf61d62a04b0fcfb4fbfd196b72bfb479892cb5d4dc200bebfd7227bad1d9c7502b8817b6ebc6b2a926f6833ff023d309eb113659f708c7c6990a5a5b675ada41252ec82f05de195e5fcd2ec8306a89dff45f6db74de1e580e4f4cb4078dbd0052bd1db9c94ae327ebee5bc6ab5ab5c4c561a25fdf1cd7ab303c0b39de1a3ab98627d49393130c3b42309300e62f16ded06ab2a42f82d9a923d5c9097c881a266d4ea295b9340a8f19777a8fa60ce6381a10cc91d0bd50c8be9963f707efda87151970d78c3a4f97810b6a4d0e34d5e1336ef1b1b74865cc5255a159215b73033596c14af61ffad57e072506a6026b2b82e3babb346f4e75729085211db9b6959682051fc75bd0e802f60133e55631a16a74598730dbb94459f350b91ade68ec246d9544239a0b15b5faaf2ec0354a73c8f2c31f147280dd4dbde5a90162ac550beb4251273e3ae757260dd4a34ea17e5965f54baec949e324324fdca5e7f42d409cb886ae416d1ada9d0469126bac2f1be60abea566c1fc0522ace791a476841d2556d17c9ff0951a6cde72813904809c6d75cae861bf8b5a2544822e3b749349c79cd3663779d91777666ec42330955d72d07146cf13a81564815f849d5b18b0cbf1cc892fd0f940cef97fea4f6ec23e77bd7d7a4d23019ccbd26eac29d5364d4b7bd1373080dd3235417a6e71f35b0e27b2649be8d29626988009117426c18e286f1229a40052856fabe0156f9ef2208323b19730993ef3aadf2a06d6b01bf936731e1156377b63f9ba14f5712faddd76cacd7249966c1c4c186bd9378d589bfad96d17fbbc11ca5742a87528e7e7b376390c89dfe6bd0681e3d2a344fd2a2123f29adbc71a61cfa08637fc34ae69336a8d6115e21d08833bf329f736242a9c536d2f92ab97a54255c2eb46543a010cb53a4c363256eafe75ed4c600a87d6719eaf4f47221ee5604016ad4d123fc4f09a2964d6a36bcf3af4ec7ec86d18dc5541a2722d594ec2c7f7234c53436f2ab86429a189a42f64ffe44f26f250beda39a6db4350a08f0c2e5bf88f95203b214f0dea581f6f8d4e52aaa29b1b655a9429997c2b58df541083b7f7e94153544523fd9915f73de6bc51125058b09742de11b39106403e36eb87390317df4cad8689f0136299947d038c134f7d71940e12f78e42bb91d4788e1ffc92efc82bc6aa59105a61503cc611fe054e439c67cb2840170716ad02f3b79db4cbeb78026b30fc95a48bff6d643fecf7146f892e75808da7335c704390053fdf10002a1fd634f6cecb2c4e2e5a188e6f96eb2a8cfaac2eadbe8c05322e565c1a4f0d5335cd11b1acf5560da4f33df62f61dbdb68781b38adbf7e5bcbfdbf30e47a95d06b240f1845e104eef9fd72e835f322b4b149abb6926299c3167ef16337a5cc65573aa5a1d4aefb3fd5b9bc87995dafd48785d4c48cb1ec7d440c26b07286e27a2aff8b3cfeba45989fe30a269d0d5ae8918f1cc44cdd6927d49f61e18cb7c666352f8a5a9f99f52ca424744c556c70b47b6570215408ed42f57c34021f1e8deb2d45a086734c041561b0c3e0aef231ecd9e0c2f8f89d69fee8f918aa3ea943b5729a2fb9e1ac4906c5b9b73316a3511233dc7da89e186a8375f2bee77b3f41e453fdb3bc762fef9212cfa8d1c97178fff0047f025512674ae4c3ab4243cee8da2430fe2358461a2a217f9da3b56ec4e21bedc6a3f9a2da8e339bae8dc09f142a37ab73bd155b257a5ff9ccbea8d1a019f6cf390603c6e37c211b665f3aa4bee82868277dff5dd24fe19f1d85da3f864761ab0dd6ef11eca7d42eb24bed8a6a57522ee69a16f077f1f4d28bdca931080b36b10add592486a0d9e4bf87b72b87441b7d2967d8b31e3db8f66715e62791f429cb1ac87b65228bc420bd3783353d2e38875ddec4bee867b90877da98df4d53bae48500a7959e891222abf11db300d00133c8cef0b9ae3191374b1cd47a56d6e1877af0082a9f33eb45684b9181c98e6d9cf60d0823f5505b0c4b7902fe5c68a960620ce79d038d42748423e8431bbf1d6342dff9cd4986fb38a4972e5bc6912baa5dfe862b949c131fb393eda5df8745e7192a48028fb32b3b0dc17ff058688e0d981a646e2ce44494e05f5fe652291255438b078a97d47b9bc2d14ca684e5f67a95ef2ecfd855b5f78e5a3bf5bc81556b5cf42b6e57730298335111b2390590da63d9d9370a251e0b2509875678e9399b4356aaef8ee252feef06ef8bbb195c5843ed15a5fb81b575eb9a98e0af25471c90f0ea1bd73fc67cdcd9edfda38ae54c6ba29729c382e3bbb24d3ea4e8b1031e145ddf3ab1d80788857e6acb25adf75c48d5fd6b8b7370b90f6d48fde9354c014a5d61440a3b8ffa06398c63c060eba5f84e6d043af7a561e4c0556574116de22a25b21ff271edfdcfab946936443c6aa8b84eb66bb64292e22dc5cd300064a58a17b5bc3f68aece2ad108ae5c6faf849e8f398809f89c76e4345c12f08a3966c6de1ff2063c776affcb761ff40d21fde196a5bced89a13dfc1140bcbe9f07324f01af4c9494ef5e1b7e38f9524048bc8f3aee88ad7766efd47ee6373d580a8293b842849908c051666f35fa15f409206bf54dfddd3e682ec03b693b62275a6cc8a3623ea0080aff75841acd7490ffb96ecf0fa26d766f6c54474ce575535bb7e91c4c9738541f16ff3c3fe60359d502e12d6c7e129f222b9d19d49270e22264a3b1051da59104762f7b9d3d941bb63428a568b0330c6de3aaead54925a3739fb67e6638c50ad36080c83ef6fc3f06cf20c6f60363d40b97b33302e867a721536f57828d6cd76ee10148675d0c2b06ddcec51d7bc0c1b6ab87ecaf48976f022e807e9567dfe56ce4999406e50f65380190b8b62eaa66c37d769402c7d96d127ba87844a10088fbaad0027ad6b6ec91a6efd6860ce12dee081d01a84bf7206729f1a508188c5b64f42406561054fe207c5006bb0768996a0358faecf58cbd3304fb930d92571614187b3a75e43970f1f659759375650cdd4fd6188e87c29d3bf1235a7c11be88b679f2c79e4bae1c0c180daf593df7c0eb5a072aeb50c8e32cb846efb183d89621fd105c2ce054b214057d8974d35fa6d60633f64c763753187fdbc81d2a7d13dc712b6baec132c7467d927d7fea88f2fa3dd48fd013b6004f2fa7c994f23b492a835bdfc5b70f37138960dd4cbfaf2d3807a103cd69be0d343fcb3b8be473f758ec6bfed5563f5acb87e858025846f21807a7ce8b59807909875fdbb4c00ee48ec19411ad49696435a23a3c396f091e56b44168c18440b3420ab708085975dbbc36bb68e547c7bcecc7b7167cbce3bf61230302147856a61a767410c306c1a3e966b5e85dd16d2e7f13abf1c2a2c79e9762ec144def6e0e5ae872d3d3323e7b7d1356949e425928f8af25e3ce46f2abd195b97276507a036d72f0641184c9cb2337a6f605393756430ffbbbd7be75a95bc661579c692466672c7dbcdde38e44e9bf2b8ebd4ce544e1ee38081cdabd3a6f4105d4da661347019e00b7f975723ca1ee86049674b7bfc739d2289de3a8a1c566c8c0a20ee298253cf38ff990dccf6111e2a5d5a8658c2feadf7069185d130e56bfea564cf80c5d86d3d561a84ab6bc151d42f5a2fb90313e399c1c36c3a46d520db5e1d122f9456a341a156e0c9172c4a8b7149e0382efe47b0951062c9a32b518c7949263ee0471bc7a4758bdab864549655449f982aef4b75baf3577abc5479d7486fc483f17f3b5d4c9ab473f90c3f75e4ce0bf6370a188abfbfcff5848f9613bbefdf05c5da1e537a3e01d8885afdf7bcbd1ed6461c92c9fac6b1f9491a24ea0ee5f7d8f4add3e1f924d9a7494b37522b52e8482117a8d37fa95996b8affd13dc6bd85bd35079e21c2114b00cb3ece2746d389f332c8f221546294ae074c7a58422c976e2485d4b89a69b7321289f7793847d4be623e3fe961c487b23021f7326168c53a0aaf7a0a528f07f7ac5de7043efe8fcbd572a1da39a4de47b76c5f61f464d90e3777e1a57702789b4c528c4dcbd21178a7a5952e4fa1c6d81bacc0cb638f77716cd2a14f91dfb69904aca36784e1ecb5320c1be1dcc4ce8f4fd7975992e552aa50245b12b046fcc1d5a938131bad3721ed3f6d054a4345642ce8f199d8d1b3a621df5731896984e20706f2dfb64218310c60e7ebc906be36372cec39fc63712868be81db479696268bc169c32b62557b54fe4b7bdc979c1483831738cab723b229440685f438455e7574c6b94884962bf97ad1d335915ec31833395e0b8fb6be3fb8cfbfc2c678adaf07414519eaa047cdad61ad20820f4144fc6a5a3cefdd5836dfbc469acbe77dcae705fb53fbe8c20c065b534a02373245ae073521a65c480a12bd02b4aaa7d320e7197d83fc85fcb0262a95bafa0a0569c6c19dfec3509c73eaa2ab80fe7630894980e304e263811d84c720577d264edb452c751c8e506f3c8473abe641e34e5d65d8794130daea37bcd9a01f553e0fd4fba9a9a269ea430ce001a39ff909cd05644cfa596c4ece5e4850afe9d60f7abb7f93a6e7a9492d34eaf9b865df9f60ad830e41a8bd397cfb22a32aab66ee91acf38a9b93d4c3f92ac2a14692a31773f9d698406eb26c2306295b6e359c17f26688cad922ca5fb0484b2243ead1d680029b9947be80ca82b4766f324edd479bc98983ed007ee84157e1be42cb2f58020425c2fe8ba328ad38d0787d7897a8362f48800843df56c00fbc07dd780ccc82da5bae14a04794d6d39efbe892c2744dc2930e1cd1047c19011fd5eb4761b193dcdfb48770b2c94a8041d65c0da935a31d6877ce577cfc254c1448e9353d23ad99a51089777e9e033723746986358fb3aaaf4b36707ced0924e959d250b66833bc7a84f52496d54a0d5af3ef4004445ad754ad9ca927e2a86bfde559ab2609462f5ab96a66876bcfc83d96ec6a1f025ba748669b716eba9347a63b911f0eea4d0c8bc0d0029c3b2f4f9a00a335892dbde2dd0e89ab306cfb739e4542a6d32ff84392108665223c0b06fa192d44db4a989cef43cac0f9ac5d4ebfaa6a3b6fc4bdba2566f5494932f8e3dd154e611bee22d44ae382c559a163154a27231ce1611d1aa908bb40ee6a95572cf8568ac93386169c126d0debe12e2758551df5baf511b7975341a6a8803da9b1c1d9ed20984ad4ff0cbb9de9c91f223261608a1bc1e10baeb099cf6ff3495edfbcc1df597888934789769abe49f66991e67b873141fc0a439ca0e8a8309088fefb5965d0483af36493698da04255345d101faa1663fc33f189d26c8841b113ac061eca444ade90f0c69913ecf66720f2659ec7d3416058133369928d4a8758ee38d03f9e11176ead1640657be1e36ed23ff9bd4be5a1dfa5dbb4d3605fbc0a8e3b0d37752bf881a47af6b7b87b33072c79d6d761eb03db83e9db6daa5eff3ac09846937a8bf1923fbec3a4bf18e2439bf97ce8f0880e7bb940d1a6160599b074c0ae4b4913e00237517ee09b2b5051e9fbb2be41e590232031499999a0ea0aab7ca806dbce77b2833f1e4c63ea685a3d2cf96783b1c2d2d6bee5083bbf8d35b1cc34af6371c63ab2b61cb348873205ba7cf8fcd19986829dbb6f4c66c9115988ee16b4355bca771ba507e49c61640895a020a248354efde8c17937fa4d6e1f26592f9ec660f0762c31159a367d420dc94defc381900818447771079d106ad02102cbe2cb41987db89cca9bb62b8f07ba82c11a0ceb96e32c022cad14cfbf9c8a3bdd1d2cc4b940f25878b5dffbfc1e39e71e631cd662517c59721a0af24c2604dbc3e5b74b4d0d892856fe3ff7ca701bdf98579a3d1c1be3d70912304632c89d82dc4338e480eacc59d190c780f23a008e46cf270e997e00a00d3d9ef4c3388873a0dca7ef21a5926c5bba0cc2df706d5d9c4c050f4efa41ea595238b936a4a3dfbf01d85c8bfb3df3b654a1dcaa44374b0823846f3ed2b71b47ba48a76852035d0047bb8e43ace451be73a8ec6a6b51e94f4e7115c244c87266166944c40f7f31256c8036c1c4d05e4518a814ec2cafd87ce52e5e78a4160e0abc409c4041dd228a72033afd8166f740c451bc4564fe0d31c8002dd33b2778ee164263d7252ae350489dc98682dee6a40ec490a15f6968e940b6cd7e7b2f0b5afae115a7ca0f1aa2a15cd60695611c2aef85f324606f07cab3e184e0323b72d160dc41b0c530d740973ba3712b3a4607e61baad104fd67b44997fdf534df5b16a896c8729f361551b21445da317bc4c5e8a038ce60e829578eae0e462cbb60232481bddadec9d1ffb7f0e6618b5cb413a6f4f4581a023a11eaacb221f5a3d0d2c980ccc58b46825ff1d2262bab837c3d454bc4b13c985d68d360ccd1dc3a4a49f4c03d16130d4f7316457c90d7507d09bdb4aa445624c2aa22919d5aa372de807a4bd7b2074d5a9ca82cb9a4fbaf02f8661fc8e832293eb9917019c4ddefd42864872cd4fb02edd6ac95d4aa25a60598a1c960ce41aa465199d16d9b4b64916f003307ebd2d8b19aafefb9759b3a400aa56924b0200ad21954184fe04eb6f6a12a0f6891c652cfed614b42009f212c0b858de7105e8783cfb55b875e22094ad6bac7b6ac9070fc1280f290b58974b276ec55d4334607babe57396d049afb78acea4250719d8e2ecf552ef671f6638ad1084a6cc665a87ecad476375d1da96056f8bb9c66a44b25407ca349a8bb1f62646de4d99d03d24505f2ecb9ce61f59bdb21710bea6e4dec9f56e475205411a80394e864972de15024dc357a3e62d0065fe688c9cfb02df14106975f34f5ef976ecd16f6cf507d648cff277ec7d5ac04d9122ecab972bb8350d4a703b7da41ef18f9c518fd237ee4a8951acb8654ac1cd2232de11f9984d3eab547f1d549d45154981985871a1ac988e7aa6d24890ef1fbf9ed2152700c70c27fcffba64b62fdea99d51b275c3561aeda575910db984fc05ecfbba695401f6633d4bc83f284ac4ec054178d017745f51821c2d1bb4dd013f72afe645ed69163e374683a43d03e6e147b42a7121e9120bbdd29ce4920e5d6e821960d0c6fdd3bd17eea77d9e53c3aecc2ea360c637d2a4f1b6bbf2fe2db399c051fe4bc816ffd0fe89b876da9811390cf84fc3e3d1dc6cab535c5cfc80d0df612088652df1615759505cb57b1b5431ef11de252d74dc54182d95b3be713aab7ce4886bf36afc71b546ffc091afefd7342288e44f3942419873b98d930a014d58bda44bf6fa56214dfa5c31145d32d747d552e272a9bc738556c7c58b39d4ecb2f54413f25df646fcda1d1bb2566446c566f4423d0c8eb7ab687883e1bb5ffe42de70dab1368da95bffcca03f428e9841ff8c471890b16831cecbd71f9b0021a6cfd0afe96112caf154634201508a7eaf30f731c7f7b99c845a282d3086e57c10d0ce18388639749a71341ec980199dabf46a22e5a5c3e1991d07eb153eb7294bed40663cd847d1e5ae333c45c5a36ada5755a0356734539fcc22c7cff23cc92dead6f1bb05bac745e77349e6324662be6a4aa180c2b9ea2943908a961b36617de869d7b5b4b73b2aad3e67025c43d11c3cd8b727ed1002e80fe93107b764c34422e57893c9c85917a8fdfdaac91d837d132b61778c2f0767adfb01de248fd85cd8fcc08c1cd40d5585a08783d20c5e59737bd031c7291f56cf39e14e13f962905cd55226578f8575eff9221d9c52f28afb3283fe30cd790196ca807b28f19c926bb36888dba8c1b05f788f0e99fd61e1807b62f6510100ab616d7b8cf7001ed95cd2f7fdccccc17750f3edfc8867d75d46c38222aab9777b35dcf4ac9913bbf2392624a41455e36c7dfc2539f5baaf393246a0e86c563fb53cb63be8a04fea95b9e5540c7a60f4208fa1518ab879019967f102777b38b85acb2daf4aafb4feb1ccc1759c5e8ad657ac3b0d29b26f414a08c024b5249543cfa3835a17ddaae4d99ac21c523175f109230298f1d4e454574ac312e055825d4a07b45239b5b191ed937222e2432a4ec63cd32a131662ff9cd99da1962f50e64d81013c83ebe1e053800bbd5f41468128bfe85c2ce1ae375c0771709e3ae7c1e23d16b1332a932f8ffaa2a15c5d70b274c79911590a7504c1648616bf3c6467e9b4cf20f6be4af75588cfdd8a5c1945ecd27b2d9f381c830d558354cce49dfce58f2a40b7c9af48562960b28c8cd67e3c24cf41d79643448e9c6355935b154055d8ee1654c1444f396811a3707443dc174941212dd33a520a95020695ac0652ddb83c7bfadd974bc5844dcccd807b945d97e35aade71634bbd1f136433b8294d98238bfe7852826ceb57e0f5052d67210f367efc35a01161af752000e21440128d38aca4b667f897ff4f49c2ea307173dc59094a2eac98fb5e36f545d96c69faf122bee13967eb214362283a8789922056a5e5b198270e3b7370d83de9e2fd980613e1035bc03dc0b4f7fb7decbb89e599dcb6fdae5cc867f56afd6c4be5b359c8cda272e55cc2bd35fa42f3856a8ac74c90dcb770744cd162619b29446ed517723dbaba7f84dc9377115c34308b3b6f8f0c51976bf4f53c41def35fcb94f420c981d4e27ffaab73c1d0d809865aa824348c844ba92ae4c77ab2024d6385bbd1c102f131bc20ad3b0e16027593f32432f1d443776186f8614ef86663520d53d92d147f92beba1b24acb89f6fe3376876bfee1504f45945aab226be41f867d50bf03971e565a240fd3279dd62b4988e7b173b112cbd7bde651f477840d82511461fe71838f679dbf9079f7fbefe48b23a7e2d8a04c576e438d0370a53f2dbda309716afaa088fef044198735262238fe71974f15cb6ff5419b7d88f18583d0eedf7c9e92f443d8ce1b500e2e894e70a27fd4d9655e742814cfb811a00ec9cee0d22c94bf58f52f4fc6b6d344722bc08a2813a3e0825eed606169f5d71c6b5f9739f67c585e543fa2cd1da55666f954fa88e1001f620d98874d2817466f9799dc042a2448792afd039433eb189d8b48e75dc8d2f347f05c013f8a7a06b8406d146216f4de796244f9c34e1ffa450f110af4b45460f73b737ffeadc081c214334d15b37131fc0d914da5296d299da6e1d42ee1b3f64249b060e870a2328553929ab0e42dbe78bfbc7a242e7c67d6feeb9f775e4f1096601fd647046671921b0c0747d24185f0bbe1cfc2b08c92c89c580136600292525753062f7476b4759f07019b5ec1313dcc39ff575c4abf3a03e39a092d9677fb9c08af4ab85df2b65b3b8cbfb58538f26185f9ce556d7684b079197c92fd14a3969a1d6bc128437b7b98c285280e7e3a3edfe4d4573e75a3e66a617d27d368a0370c759f69e1e31c0af514d3767129759e5a21babc8d0faa8c63bc2a4d8a9d60bf6b2048d22fe2b3b802c414f773e02c0baeaefed3e6748ca96b173a61fda015b8ddcabdbfd56586714f2df78e45ffffa6acedf2cc634bab056c162d07fdab21664b8d70b76775ddc409736436ebba80e3253aa6465f938b253d7e8a60744879f3f9a1f0548c81da8931863ace1e891a3367bc6ce757732a495ba5182460b0e06d04e7b91afae47572fcc51b801a70bcfc9f0b1a362e86ddd2a77d87f19358ab8f61a370cacc300189b7eb499bbb42d50a9f6d98676e0358a4ef0b7141d50c5b9c68b276f5bc31a0aad4e6347079270119359184bd1dfda70796abac0936b7553e99e0bb36d704b22b2b37e03786f510a78c6e20187c9637b03ce06e72b8a32bb307dbffbaa3e5647dc34964b4fde02f6dc00ceb989d392d0a325c23020c7b8bc672d9b1664064b3508cb66540c7ff0c127c1b10b246ed5f1618a4c76811a10d5ad4dd3af3cf11650df63798eda4694957a0af2b3312e84ad4b01efb68c1876de0eb841df68d7157002d731062658d0af79be8fbe649a3b53bc72b34eb22db6e193908a36eb7c1c68074a3d839c9f387d00390eea9dae6dabec55e85d625e43159f9a5897564d42d2fd78151ea7ed6e0f720f03b66a06cf8c60093337232ad874da862842570466a03796fed1a39a85223957a0ad31da8f00bb765031d05bc541a2ad942cc8bd43912ae9c849218c6879aa5e5e8ca1e5e6c3292da557e146c0b6db3980fe3615524b9b47e4120ac4c5e44fd3847a02a06ad5908b6c91808c61057fb03e4ca87811e8bb17ec37d8878a4f16c49ad54921000fe01999d3a5cbf3bbd64af89bded4735a374f03a7f80e52fce42b1b2f20be8740a53ecbeaa825d0ef1b71cf7c7921238454beeeff2234eaf66284f48aac41ab5d69c23567a4b048edd0a270502eb105d00d9c9f6269b4d284f99de33b04cfa3d3c415094279b7e537d6307a00861951f0469602021c812f99e06e91874c0666ace1d60ece7e338d9a8f67b8e6ecf1356fa25fae31c543de50898266ca5c5197b38e48937c97c6c7458b2ea7862afc0bd91858f7573e0c363b31980253ac55859d6f2cc5b8f4f3da5c25c6873f2d4b1d926edcab36f33bc8a51d82a74f15d75af0e0c9958e9517270f061df382e87d1ee24b00cfac4b05ad4c5ce9dd0d17e4fa3b819ed30ce9ee14a0c6a1300d2a6c4ac60c0838834acfdf1145f373939c8b4a5af0bf8f9755090657e97e3b21f90442eb606af6ed30bef602928ede9a48272d3f0a200066c7d3735a261786e51cca571c91e6e212c48d88e738bda9be506d4e1ca4063b2c8e4a9f4dabc29893af1432a20938ce0bca69d6db108d74ab26d289c4d94c964b36490c6f160d0544ca7655e74149b073e53041dbcadb5380fc2fa72d308d4245df39be04f12237295f0c0b44b623f0fa1eba736b10549340d83fee8e4847e37329aa916f15c139666def456f7afaf11997e4b348a21c22ea770b061b5b442f972339e3d187f970297503066b5aee80c92a81c537c0214fe41684a24205026a9c1eee41206a0cf74916635bcf7d1b0b0e2a9d50ec37165d9026cb36edba8f8f6ccd4077893ce2c4872767727a0e03aea69fbd33e2951038e47dc4bd07d884094bdd1d4137660af0f40bb6558ab56c3f1d54bdf930e0beced33ebef109b3583594d3209a7a8a177428f8c43c04ef2fe0d43b6272dd1f223cacfed5ae67bece56efd2ceecdfd80442dd772b2843f659d3903280307b78cfbf24357cd5c49745e64e58247132f1167c6592e96c558d4e75f126b66af39d380fe41453426e04b6296af57f63139e8b8d393f9b0dbd9e2d2472209b4ee97f4e613f61fb4414d7fa16a919ecba5b53935fc5484213fab092f4d4d42eb556c30bfa4589e7053c19e6b86a6943bb2902e2353b69e9560e1b057d42258db2bc97cf3aeaac7d69cf0b4882fdb57a2406ba755107ef2d1d0cad1dee1c18186d78ec9811ac5087104a9fd4d28cbe944fc476f58f881d16491cc645fc1978d605b5c0d500f1b25c5b1affd647a3e8efebef3292577f14866e22aeed5ad2e5fd3c9d8b8653ee02b933235290e026ea9272309eb35d2efac263cdbdc83732182aa7ba2e67f03c93c182f6cc948df36ce73ae10f06a03cbf917378aac01d33bf77546e8d1128e484249a67dc9081ff8f3cd69576e2d675a9fe527830dfdfd0076dccdd1170b47e4f44e2b2ffdd1e098cd0756119a2b5a604531276453053062d3a0d90a3616b779c5b16ebeb9d561b9e7cdf0d52289a1f5c9555f2893a585acf630df4da20fe80efa54c7f28374041a6b28fdd96126961e7e10b9137f2b56040e9c9b53e0ffe7b6afdad834fd06b649dfb941b72d0d7c30d0429f737a22170c8b95d4b216271e7156c7bc9c1ac25ce819007524163e529101c58872b43f47842e492782cbd64232ed4cf59ca2ec5ce5cf43e6963da15344fa55a16e1222f82228be5cc280bbad0a1ffd2fbee98ae481d0e7c00fee347b98bea3dd533b209dc6e7590bf48b542efd816692bdb1a1bec101bae0d43d23082a88c04ed2a3cffb44a9a1ea1fc4329efaaf90b2001ad7fa4d4753d98cfa6a2147db756f41a70719818fe38d2fdfaa6b236630a24ec5130ab28ae6e01a2c897bf5eea3fd51d1ab5870a5d98b9579e4ef7ed47df7a481684fda0a4262a7a780d58a3642de3b6c6ab1a09c23514f9f8441d42a93f94ef14dd6ad341a57ac17ac69f63c510c4353c28b40e0b2d24e2bebe69c0ccab44a8815c5c999a467455f2420ba5084337bc6a071284d713ccc6923267e159dd8b20f360d676dd894d30a3205babe746ef5949e0488de331faf1baf616054c718e7e116f79e544efa7b387e1c02d1f4a491577d0bedbecdbb00ee431655294bf8b62ff0d3f493bdb217097509beb7e5e74e5c64fc53598a15dd30f2ca62dd268e3a4160cce345a9589be75cd4fe05e60a814ca27d45af104d8b58d45245f2fb0c4b044c7d35b2184d3aa843b810ed6123c2134a36735b6ace649cf3be95532112fc968d173a8f33c3e83335ecb50ac4461372c2dbb10737107be2b48ff211a2bee075930b67d149b628bb5102e1380639f3af1d9c890eece5c6afa3ba7b1be4b03b5597b8418a3a3cbdc2325e9d5cd4b72ee29a542976c5110c39f7582d03b6317cc2bf34e86ad706c8dbff12ee7113e8800d8e8908f46268ce4fde63e5ecf4608d30b227b059465f7bc23de5f107833423fc64474f734fb8399c8cfa2b311800d7424ddefb94a1024f0c3c575c8ad0839ac1e0d53726e6ffbc15e1393d319ce3b1709a82ce9f8919b107077a36ed954d3b16eb9cafc43216aed70c69d1b89edeba9af799bf79caaa2212759ae448d04e2081cdc561d81496cdaa5f7e348ba7c28369c4e2d6dd336607daa12a44cb6716cfdb03e49dd768c7f38d009103ad2349b59bc464f5e958ebf6f7f836e3b7f6fa0724cb3b2265f91dacfbe77b6a22791bbfe2516ed5a6d5ea47824317d6bf544a9c71e3f6629063f62de5acee4a20ce3a2455ac4d959cf2a355f60136c5ddc5a480bc4ff97a57c4a6f9b5743ce63e5f501d4a005397dd1696aca5d7dfe7231584168916943f236066ad3a46f1eeb16c87c577faeeb3aca526ed37ed1ff619f4507da551982cd70e61d930310385cce6dbcda4434f73ea4e6534c1803a5359c205b3fd7ca6a07d31de8b45abe7b12c03299c2b6846453512e40f9cba86213bf524f9bcc1f307c1d5ff9fde03a9c1a680bec9e9b3e710914a74f74879c5c1b491aa7d69d359047075c6ba8e9fe6795e19f7167feee3abb5a5d68569f71a5b83a46dbcbd65604c08058219d76a0a8ce78ea46477af853a2ce1324c2af20eb13c909fa06f77b7c8add909e4a5f525330e231479ffa2324a7a97edf90b60e600d802aaf63723fc7d323a4c70b98a717d5990342d36f22ff4a8caf5b6c6b7ba2e35a39dea966b6ba0942ae4dfd53ef136d2b8a989133b3468598f07a8aced87dca15495f31ff7d9aa778a73b27140e2040940d5592bbf5203a077ab91863b0b1b68914970ffe02c8a6d508c1cfc44b79f2211d33c7b8c0eff5bed4055752ec43ca647127e284c7720dbc6cd1e7011723308fc4bf1138879f3065ce3c22685ecd6e985cb366af1ed7be08750208a092e07e4e4d29eb46ee4235db0b85ccd5335e40c14d59476ac075fb695854bd7ee5044ffa46a268cfa5433b017687e58bc358abd76fb7db5cf2c27a2f7d27928f0ebb807958a27a21597fb0900a91ff1d2c4b5bab58050e38a1fba49723fb1a40d5d83e875b809a03b7ab0bd3246d967aab33ba296e566d967aa7e1784417f4a62b7d63b0dfffc66ad92e67c99ad37bdd4b8d25d546bd790aee144d806ff411d50cb4837009234d226aabd782a8326994a95b0a59642619b8e931dd199303c9b6606caeaa44e2c0d788d4b656b6dbc91864ca60631a3c6e9e0d5d457c051faa10179e35fdd044edbb7ba78059dd76389a20af61e40ad7b7f5a81fccb99f28915bd23f271cedc91687ef56e3785fe79394be4cd3ee34855892e65481190956fa98fb9eab1845768ff027c78aca93fd0ea3ec74fe2e19d9b49beb90d71c93a1ee667713948169537df8bbe1af4ed0d7db235f61f676639f3820f16307b104423188cd6dca31123a59795f16e397b75de6aaf7bf4b1c1525323d2944a8793390147562e31f84380997bc9d560d718c256f60e25830001555c9abade67a1a33f0d9064c9e99de4708042d3acddea60ac1d35a4b2f3ad573793ff44f1d1696796d3dbd0d68ce00e769dc7610bb46691fedffd4cc72a15e2a6ac08018f86541c22a9c1020b00f394f1915975b352f0018ac0e1c3998f34e1bb86a9a004f08efe0d21e453cc161e38159ccf494a6d9f5acb6aca12864b7662cd80300c8a8b02ee6127511176c084658609feb673ce9d5d748ba6d299dd68d39c162504e456ad5b6ac05c4065d61b67d62b3bc2304024327cbd29966067cc04824bd8e3f1cceb6a39fa72788476e9735fcc5719759981a80412a49051f6e6e5168d5ebf9bc554b177faebd1b29242bda66dbecc1abed5de5cba1772dc0c2e71f137fc7ac6b218d33cb6f7ae1608cf49a4c480131aa9ba49f966ebf1070e6a93606d0ac3ae4b114e09adfdd7001db335de14524091e6b58acde135bfe5a8f22331c8442ca8baad12b348547d9719c197e88bbf6d33ac266bd01874afc9ac7e6244504f09516a5d4ab55bb71edf610342d923206d7ce323cf3acace9279964c27365fb13fb27ec6d83ec09d7824b25d04f7cc81210164ad44b1e6b585081bcc81ead1dcfc6e266bbbf94f910b296cd1f0b0950618b40f2d0531bb3d6bd01a3aa63401bfa7e121d531c662f08f98097ab8f9e5b0287d1b1bd3b7aab1c3e3513ba0a61951d30aab997da860b9fdc513c1b7121f66f78f9febc7cce18c875bac06a55b41c7279edb1a7e89c317ed5dfecf53f1b288cb253154fae9bf82d9626c6e73fc2f8e05866da4bc81a9be4b3dda06cdd3c463dda07bbbd54ce15c05eddcfd14e2d7b002a7d44c0c620d586c286489ede850f596072ded3a6dbbe64b25428a02a2afb180576824096e2bc78e6ee4ab6653e3b30d267c0b1a1cda6c618cbceb52b642769c97db6ad878d63125e797319ceb18fbdddc85947ec7fdc54341c954735032b88d1bfdd6526ef5a89234b22e274fadeefa18c0e92072cfd6af0144e79309d1d7cbfb1b946dcadc46658b59b0452aba439b8e74c56b2126aea4bf8417d5a7717cfaaafc5e99d5352f739352eeb30cc824b4191f2d8a6be2f86a7c855cc67905465adf19e03fe87f97b3e715fe26e6a0528c3244e03faa001479ae9bb3408c7ee83eaccb9b843aff6564d1d1b1e17addd5e01e843d055b893a649d65ef518de4ca678418363815b9d836beca2e89da28cc9f609a5d196aa6049635b8aa1175851267e54bbfeca666f35a976e403f9b6415ba11989a17d79400ba67468ee67011a2653ceaab99ae173533f38e9237e9bd47e614fb12c7672d7ebfc4f8d22441ff31710d7aa8ecc5ae13eb0b02077d63f819162d622f95088a8097f3837210a55950bdfc118274734947c356d14af3e03aa9e99272e3d55cbaf09b0080dfe67840ca5a591dabad034dca6d66a049b38488703e7656afc6920111e7e2123253378346b0bd861909efb22c4149a462a3b9a31fd5888ea0870034df71b8788da0157651d4b487fc57c4379dacae12afa3ffa4e28291689fb370d9070bbaf436d44dbf0b1b5c002b2bea435997118dad788f99465fd96c18e15ace5190c888cf513afbef2b04d2ae3810dfebf060f4e26e902fb4d5e922cdce925d1c0c397b1683dd255c847072b559762cbb484fd0cbf17227b4e7d189cce69ffe67be4363f17697b47241d60479771c5ec774c725f4a9d32a4ebcde57a66ddd09436f3f605215847a79b95a56c0214dba0613e20872be97e475e3c653828677a170f9d5ad6db605c7d8d967de02672baa015272a0d68fad9770a48eebb2c99eff9a2baddc417281f40990d513ca8093321577d36dd50cd58ca0b3507de2b87d8ec5730a613c2475360f4255adb3b2e859c6e67600cdbd860df2fa6fc309b69f9f516a48622023dcb461a31c6eaffcc3fb66da0953b01ef9b33912a0c55028c200808f8eae8b8576fd87af5489d9194fed463363434208238b303f458401591d4dc0e678160da16ce95140ab433c159b0298efe9281920a400ae0bcd53919067b51bd55523e1856f8a41eba00bf133bb7a1901c4bdb9c3eb514dd30e72f106d6e792f18e2063c4183e1fa6e9fca6ea707647c86808825f7cb007ab61a2b839b72f6e5c4c9938470fa7027ea89582ad6f0e52c088377afd25f3a138ccd5cbe5b86a77476c76c523f6cad984091c46a5f9f4daa1c5243a1fcf41d27b6d342de8e09cdb30145b6c561279aea2cf85f14ac38b28ba0a4a4673f6032a9d5a7a15d5a5cbbdf823598664bf6ff88bc23513a05008e4bf2b7d7649d143a8cc9fbd48cfb87a8e4d34054e10b0bdcfe1577ab7c6dd7cea62c7ef3b1bb77a749fb9872573b16cb92d33760e949e7c34fd4a8d410b341210a00677188b0acd321a0cad809f5998bbd5ced78ae4330a65f8cd188721f1e8c4006a12c03d1dac8783009f3a2b14d75740ab0f4b35d816bff25873d03a0348182f723b14910d96692c361ca684cc39d66b9641f530f84e5d7fed38a40033373b8bf123305c1e79e374cec58238e48549f4642dc8661d5e3e1aed1e9032b0583aa14632123219a0a3f5a519dc0b0a59053fd016a615ab588391a8e79bfa0ec4dafc592e97974718ec5b6da259ca01b49a05796b0ed15adeb9a7b032dd4e8b59523c56b24abc1ccc192d643d0bec319db9e3b2df9493f5b6a961faa6456faa0647877f7db8417331f4aee0080a9e9a0d197072d304b3192563806b424b7af9456af389bdc665dba6ae63f363be1c95e4958db6e2ef9375c9c0fe0826eb613b25308a62523b9912f0fd9912db9dddeaaabe67e4b9f5a7194ac2860bd9338d02898fbf2ac83a4bdcfe894ef71a0e97dbd0a67367060d56b8c35332d2b05054bde3504e12b13446dde6c9dff240aa7501655f89a02443365c1d65d1f6e34e38341ceb26eea32c4b95242ababc4ce6893f22822c8b8b5f50c673ee970ce8a638b057b5c950360bc06ba9f51a2dad260574fa1ac429048163fe9e82f9dc7be1c27814320b519e0710994e8558fd05311ebf06be2c462ac136b29462758f2f27244fe6e95589c6f6aa46523f3ab8a86ee6d45f964e44242530e7707724d8c8619702886d284ff42fdbdedf98c7d0265655058da658a8175d839e078728f9a8125f50fe2ccc33038c26b5db3b0442382abac4e26845c85181a44002e02374a0ac04ce302315a5e490787da6626b3b3dcf186116f5901402b2a130d97084a671f28b09e480b273129e5fcec0197ddf59fd4fca9dc1f635c6885199c299369514125230b3b2121d9fb4b974da42ee76f90a56df9dea73342ba8a71c1b380d4c7fcbd2f225127b225fd694a16d9ba89a7c5b88a4bf4ffaa867b2214d2883c7f79304fb32a5630b4e9492b43afcfa7dfbe2fd1a3fca8f75f259c1c4bb1b60e210711acbc87c9026e696a60d16b06c60ca7da938f46833888f4a35809608d32d2434ddf66c42beefb33b97f6a790ffd1d3e9cfcfb61d207162634b023ccba603b72b61f9f23fdff9015d63a3ac6fb973d0e124c9e27575bfcc434d257a6585d4f7f45b3418dece5957d406fcd21e3d504db2d6bfaeb9393150f104c4cf9b1396e16977b655d7691df3c6e74464fa81ab35b93bb7e0f5d5cb3376d8e39130e86424ebf29a71b28b85dfb47080ef656c07399dc6543bf0acfb8e3b9065cb38518dc0c4491bd8189c6d8bb11d9b095e5835b32bed190409a066041c4796aa4420a7710727ae7e0cb908dde073482569356af40c5cd20096a67ea6c327369edaf7c05fe8f4e5e8502c9c22694f14215b2ac376ad9e7158a27e4c45ec9ec292cef96d60091f59ad651c4ff3a804dd2629f3243b5eb86cfac41947f126c1871550abb117e327516b5cb2881ab81eec4ed6d4231a2f1a9276952cc19da54993e10d81812a486ab67b97d234cdbb3f8f3242844149c517263b84fb070c67de448dd816b802d0ec9ffa7b9862aba86234d7ff8723e95abe8c2a1ced7fb3598354d1bb90b167b869824cdfb3b8af339b8c0e591afe0cd0f3dd61802ddabe552e7396ca518f544333e2bf72bc535cf9a57614b4a60c52490d82844f9021bfbf5a713e9b849d795b254c6cc5032b168fe12f5952edd9a6e68d091535dce4b5a191c04fa868e68240bc946a94c8433950ea39434203def3727767e03d72e5a35a08e394d20de8adccd5c9bd9bd27c9f5c42f99104d56d7d2c2bda2f3bf03a86fd056171bf01369d26bb4051424d41bb4eaa60525e9d656d3e28caf570a8b592a563f3903ede05d13f7d61bbdbdb7a0b78e00f975d6e20c21a17c99859913f13eb4ce375c6192cdc88d690d49c5ab8d09e1265b382ea0abc7d32e25076b6d539a926322afefa5930e0ed79746218b7a5857127c36bf489d393d1a6272d137d69fdbf66a8cf58c1c8aa0522ef7b71abeb63b88094583ca35f3cdcfb5e52621ce8ad4e04398dfa0c0828c08a79f29ddc47166ede222d58c6865c45bc41084fd3c19af387323a0f22e65c4ed17e19784fad384a23daf06a32ed0eb417bc57c5c05ab2c540778182ba3bcf03a44bd0d61b51ea2d832bcf8ef2a9f686ddf286b485a43ea010b05325e823f093b1290e943473bb10a221bf2adc383a7233867d928974bd69e4b3fffd73bcd74ccd8db169365c5d97db47974b83ddfd517d61eddeef4ff9dbe51f775ea0b0c97f00ab1e838336253c913829a709c47122326007eda9da715f62de6fb8c6dac32e59fcfdfe0c0654d56b5e9fe9205440d85ba176b9b466227f44c42691624da65ddad6002d4e0f4ba04b38c78e14824c49ef3d32018edd3878914f3ea710b48fc342be610512e147d8bbad2e48db888dd498bb7367185ae87b7716ed41669feeff103cf2646f160ad85b0337a0be7b54e4fa92eace0a3a9d37b6bfba0e986ccc0d710736daf8c3159e42afd4c72de184492da1e754e3f4c4655254c8c0ac9b68f63f7f45da4f24e060b570c8498734d6eee4e9796f7a7d2054508a82610d28990c73842485c8155ed50f3d938a11ea52f7c76e4aaad7935efcd04f1466448c724196a3fe171acd1384d10c37a15be21ae4758265b57c7d158c442022f024f03fb0f0a6d930f54ade13d855be45f94d2ea1fe2bfd2746430cca96c330520298cf148eb414339f6dc3705d154caf5e1d3174f12bef45905bb7d6a382bc3774c44dc66f1a60e0f16053d888072caee7e3b13e896a94a5de3ffb38c5dda502e70be5a9db588c757864b77cd485c802f338810ac69f70b06372e47d9680764ea6ab487e4e28419151bf7455e03486567794b2635d7bde07333ca92ea26f82c72ae90ed3fc63e3925dadaa90ef22da6f7eaf67417192ea4f010ab224e22366f1b24ba7fbc8b674bf74232d1623d6031027f77872f20c11a23785b47214d0575a5874d30621da76cba487b5005280225da11a9ca8c31453b0aff77e6f429d5baa75a6f476213916a977a202b496ad0af43edaeefaef4f7443e666915f21a19821ba4b3e60d8881837842f2903400408acdbe9143fc2d1f544b8691c581054c98a72c6bd2cdcc0d6656b920439ec74499577a076b02e2d5563d27f10388311f65d3e3f619d72953f9039388a52137c50e0838c899c5c25354fe535475a0459fd2b0be10d0e86bf65ae49c75b917c96ed2d13dafcdffc90f362c406c83ed4363532e7f36eb178eb223272e1a3551a9b1f8e1bf04cac29ec93752fbde676130ed051ade2706b5c71b46732956e55ee17859f2d31bbca287702912380d7dc604fc7a2385a4258df7644d1d8bffa4d1a297664d87f8e2684dd984d4d42d539d41aea6bb35caa237e4e5b0ebffd36dec8a4797cc23619b4adecfb92dfcc2e8aa56feda182d9250462254d995205e7c6e13d015885c700c7de09e1aeaf35e6a061eaea690222b33a7782d4c78b3feefd80baa0a0c7bb05de634691e439b8bff6f3db9dcbc99ea693a16bca08480570c024c177b8105213437ce273e7d7135adf742089fa729b2fe548dbeb4fa423faa6737531a7c6a11093dd75cf0ab023338a71d5a7fcbaa02e71279c0eec5c31f8d4a451e5611b8defd58964aa01d339ce290606ad68077ec09c1ffca4288457005793b8bcee0f48f296be92d7b7ea075d47759b551c3ecdda575a6a6da170b2b51c10bd56ffa777275a46f46714bdd1f5aa526c6e873bb04245188a21443247fbe3465f1245f0472e2b0e066cd2699f60247514b7649339db6afccf5bc26b9b02fd69ed3901f9acf368ad535740a6cf8859067833d94ef912097126ae27eec1f72ae1f43ef1351a6ae83721f4fdb27afff2821d46d00cf6d344c2312899e76a7b06bbadd2ff9bfa86190372729cf460fe59750acbfa68b97ed25d3e8c828198475e69da5bfb00c110aa606dec8015f33a80909f0148474f1f448068f21a0fce1d21fad885e6e4fcb022aeb7d66bc4568bcfc15c7501c5d75b8911d87857658aeaf7f37df9d6904cd34ca56676a679f20abe26ea6b1ccc9f3d333431acc091ea123752e9af27cd32ab14ee74845265005d6572f23d2bb098a4eb8198e3937d372003b80ce8936e20fc6d4ecb9dc3541a6a62c6e16a6ca9aec14cb4515f22e1ad7b4f3768b9715dc95dc8a0496b16f1d8f26a81eef1b21c6897073d097435d179e32efe1787503f8e5997dcfd078e9549f568a1860626bb26290449ca1ad720647183fcecd26ce0c81ece20d33781b55fac119206c787594dbe6942abadc5686255ed4c389d96c7b26f4e9d4ff73d005ee729042d560050dd23d196a6da3b77bbf7e5dc21a50be7f97356ce38eef528e5c65d94e6481e5fe7847f18bef361027caf3cbfb74f5c3f80a3b8f62ed700c94aebecf27e15405f1b8e0faa724947e11058c2609742b5c8f1649e2f57702980f3c1f5c4affce6d65455bd31c3e45225b9bc43765f129c5a751fe8a8b3e32c3235f3f122f490a9af48c7e78255aa2c39b6e17dbab40461baed5def9d15e774bb7ec60c31770f4632c3c409923ca2e8fac70372216441fa08c755eaa12f6a9b0f17434292c6348ae9b3a662f4d65115fc6f6f9d8fb6d76df4324d54498894b24e8bb1de67346f2f2dd6fe9bb653b537ddedc5fe275c28860aed96cee2bbf41437c77513924561c1665d52c13461ca1e3515e964fb6442133d7b2f9b3332a60ba2706c29c5567d26b4450ecbb41e27a71bafee6ce41279c6e1acb093a8e51472587b34a1a1d81976b62705186510d04583a4b683f43bdb8c40cd9b1f719081df89848d4bb2f020900b050626ecbf3e23a7446ebf4354946cb894458d3ab17dec59b53d42f1c59722fd82860ac8c908597251e53194ae566c96aceb00b6a8481db56631c9240b0804f7a84f359b8eaff1a2f475f82021f7ad86300751bb0294d098126ce416f797a684c12a27f716ed15345ef4846ded16f18b19f945a694e10ab186e044e1072c7ce47bbfb35017e0a5eda9890d090923ad7ed67a309caebc8839e47b8bd301660b2ec8f3ce59a512b2af7bad6861591d4005a0eacf352ba6dca6d7a49ba488d6efd54463cb158e02abf2ed292247129f2b1ec02d56ba8a1ff576a7150195085d1a4ae52ae5838a949cd1c0ea7b8332b89076dfaa73c4b5b8aa9b2a1477112ffe64d378741ac990ee412bfbae3a5c1882fb55895e7358be484e8f974c44c10e0c26dd5502f0c721c422d5a56c48500be037831c89e1742f0f3dcfc7f35bf64f7b192d79e9f1ee329c189da0b176c7c8b59d1550e557b852523d92987e7c12ac3646744b74c2c2190f27f1878b639ac81d1b714e55b765d6fef7074041bbe0b9ee88d4a3fc1a6a80004e9933edc7a61c99efe221dbb08fea0e94c68163b471b5cd2027a5c031b533a38d8a43922c2fed4fab9d290e750ec34ee60f67687df1d958d7c796029cba70bcf991cc3ffd659524a79725d96cf6cbcc9b9bd1ca96e3acfb6c12273fefca47e41bce5e50f495dcadafa0e78cf9aaf61ffda0b8eafd143ee4fae1da35c88d0031ae21353e42c964d6a1482841e761cccea9b6e6b04c449a22f6e350dbbac29baa0d92a1ff602de1fcdcc2cdf06db9241924ed4941e05086ecbc2b86f25ff81bd96dd770bbad0d6086153ccaae207753d9f83e86bfe2f681f9395cc3c0f843be8b4fc86b6a1984ec46a63e5c0fa59076fc1388cd4b50f0d5b4de58cf6a1a4514eafd26958741bcfb862df8a6bd6589c73ab8eea76c48c3a9b66ee35b60286a0776ef2ef8559cbc414bcde8e2904fec344c444d4afc0c50c5506299e167dc70f0f99584451a5261382b82f5252d260df95a0f03e723447334aea6acaa95281c65343cea0e4edaf2f58d9a4962b4dde0b400fa77f4c34f20f6d3b390bdf026e4ee8a4f2614a055ef3b34a9060e9d0792eb99d88e43e7a4302c12b8cec963a5f1b2b3e6e02f3b6a0668b4a95cbe914acddab814f59e8acfc52f0271f2805abc4537c7b86c748b336fefcbfab761002315a750187f616c71a52e1840eb517a199a7f7a16d857685447e26a9f91636c70e8e83df0b0020330010e431149ec3f5ee12b426e476a418f3876b5a94a6719d8bdc7d5cd973e2147954e05e0e9c803db018a580d4d6d3eb21c8dd1a379240fd067d9d90ef01d2f9af4211f0219ca8625e523a6eb3807f5523dcfc56a7d2819b59dbdc268299d006f853716b81aa21f67a92b5288ebabdd281c127c6abb36ecb3fdc1516a555f572d34449c3406c5d6f2115b535fc1e4926a91e2eaa170b42e82e4cf86681449212ac734e1f6f330a61c7f75a81e8d54ce484999c489a5d6d90f134baaeb73975a8fd61b8942a1278e3e1f5eff51ff3ec38c732f9e8cd31e7f495901913f0ce941e6e54f65478be72057698617be20059b6979f80ddee33b4d5959e9d6c5dcf3f8088647e87702989e394ee2b9dda09ec5ade632274fc62b2bda6b1dbec2377046c981c6bc969a32e93d649c388b88f04ba867f313bf226395a108c17b774bc120c92162c0a01d08f4709bcd89407b8a9834181b913a38217836d3247bf4d04affea03bbd4f5c4807f19e69027eabf8045dbcfb6ab0dfe280216b55a844a165f706e52a41abd127aed10a938a843435795a21455894b6291bcbf180b0c29f74520b6619f67248a967bce050240e8df4fdfc453e96aaaee8fd2c04f101165c1710039e093d2dd71720e03cf4214ce966324b1347d8f0c705762601780a0060559b41f71edae203653c5385e9a3d415f7cf483ebb19aa98ec369e46f9d3300dc4719c7c3264da155d9f5061063d004f1878e6a046848019a95564bff159f4e4cf7096006ac44caafb5bad918742c4312f66a13e50be1da765422239628e8f8301f0ce43241aebfe4661443285eab65d543761bc356aaaebf537c5359e281971005180e6031273f139d3319ffa93bae9d5094147e75ad9f6b4bbbd50d0e201c60f04c52423edf722fe28c8a190a38c4aff9a77dc215d58d51369aa59834fab9e4cf437b535df1746f5fd4dd049a3e34bf9b320f87da314d5cb38f007b03320111596301742d820eddde6145e25ccc70b47f40b9f46e557bc8ba473cfaf4a6093cf13c26b5442a2540afe65ecd5e27909c5f2b17aa1460742585fb6448489bcc6502c716539f309009f70b53c623f87269aab6080b2b5d260897c0ae86f15217b6655a92f5e425f3e718c969767b30af378692ef32ce3f62d4f05d14f866fecb679c88ebe2bd45a9cb8c3b385bbc6636ca222e41b3814135f80ea13652277f346343b72aa0ff731564375b84345fe5207136e5d8626fa6fa18a76644971f8c35437430010236ebdac796e8fb1c15fc75b7e9bd8fbd7bbd00595b9e822d04a276219276af128c4c7e52954f1236f90e9df2358f5eb27754b854aa0d8cadcda301558c767d32fa9667a2fbba41aea9e680f5576619360e91efe7b923073429bbad8f55ac89806502e32249f22a587767f78d601762d83ca12b3c10f1aa4b942762e878d57dc5232a02ca65041d2103a4f6444a53e6a704c17eb01e22317e1415d4b42f2978f17979e09b327c97b0b84a5c7b32b09029814801b2c17e2417d3b6905988fa8d543cfb5f47e95803946ad4427f65652dc4fd2875999a48ed2c87d3c97ac3aa269116371ca7b4b7eec44db19356dbb438a7a3b434511d36de6f81f1e8c48629b6a11806498eca6af23c6ea675b0e8c521ebcd64e1ed75648dff935643b7a4d6be1048d5c7d9e5320296e9263ef4921460db30feb5e61c010fefc91f3ca73748e450dcddd20c00baa15f7daf477fd801dd3e597bd4d8cb3f37edd24f7cfe850ee964c3cad2529ac3a9ae8432768c130eaa81c3cf7d0449c6e99f8768dbd6d5eca62459eb49e3f3b2a826d84666cb6d581ba17cb92f6f82854d0614ac911f53d52ab12cf778a0ce7025d48ee0579d88e312324d9c54c35a97d2f78900bca2e8c424830df6461f567654ff2230e02c51e988926f556ce42a62f7f0893bf6b855555ea5ba5886a54a469ab3714d90fae36e3e3b2b43a541bf0b869d91e5b9e1c56b7187254256740d2c2dff863f67054f9e1113bf7ac404c417bf83d44ee6c92a2e1564e77966dda814aa05533ce8044bdfa7deebb63f39bef163ef6a05a4e62d1e22467c4333507e9c8e9f2fb1b3489e1770b013ce7bd8598ef1c04f49909ffa73dc60a3d0579dd8fc3756d07f2edc24ae77e998f053de7236c7a60e6e798bf636e8322c3c02d6abcac51bfab52ece1450d3c28d73face89caac6f1f58948fac0ba3441df8707d71b5c33582e193eb41a74662cf1ad785924f8183cbcbeaf7c19925f304e9abb82b1051ec1ff0df1f20328117a455de20b72c75501adf98b6f4d62284f2ef698318a2988b4551904b6bf406114eeb02ccf0505a9decd93f789627d2f1aa2a3416536ec34cc8cbf7344823acf1dbac9ffdcec9cc562e55b6b865a630322e2df9e093ad7a7db384d263023db6fba8e0e82f8666cae22aebfb6d9bc590c32697b0931261f470c28130720f70d440458d97c83b6fa068a21d3c2cfd4582018d01afb416f3751b964b3cb8b394437bddf3319640c4c5a21b4d015e1cf52a812d7b69f4a51569dcffd3d6a8b6a260a8d8f6ac15c2fafb884b4d5433ac2d8e86d918bc7ee6251b84777c0703331bd035b9f8be9ab07c061c83151a5ff4a67891c92ea0ffba8e83526e2f3dd522dc773decf3d3fe52b15987edac1737001f9d756eb7c4bd506fa58e6ba4b354e921848e5e863b1c684a981d0edacd6ac1d9486144cf5f850a7e87e6488b52894d79c5899919da51d3df9ecc395e6318fc4fc003731ad0be388109c9a85519eead35aa4a4ab7ea6a2bc86c9fdd97b42ce162d422ac1a993701dc3d3e0633a032353c0adfe8996d5b705c3c6e4bf391e334d94677175507878dbee5fafd6c0111d25d5bb00bccdedf9808ebf8d3c1f0e9fe500a21b6050078edf89dde92a26de7e0f5bb99fce15fd3413eeb1849720511abfd015383728d7f62feefed725058cb3aefaf1da64f01bd89cacba2c7edc00f41a0fd2023170ae9ad3b1db0eb96161499e5b8a57e1dd203a47c5c51fb587fd1c7e42d944bf5302359fcac7c003ee1a47efdb5b2826d223c4ce30f54a7d5f1a217972f359b8da3d3f9e72b9a8395d83048016fc168a707b042ffef0de2f4610798225b216e8e8322404dd547c2f826e54eb03b16d47ed522b95b91162eb029023d953781c74c7bf8ac7a835f5d6afe7a25f232ea24352a9e166d94e23c79ead418497e365aaf271abfb94408a23ce028563f17ca631c108506d96286455b074ee8771982448f9f939821c39ba37bc8da9e69e4c6dcb9f64071ee735f7fdd96c5832aaf333a221fc967e497c7f6d01f021042247bbe8e992e8238b64e130b5b2b7d620a0500e3a6eb0ba6f13e648f7239c010a1057fd7f58b1ec5a39e0eda42c36c34a22718ba7f401e9dfc42ff5748cfa324437c7b85182f3990d7b80dd8d90656ef09a0b33a90347e12e39aad13fcb2e707ff7f23a6042d92f2c023a6f5eb0916a649516934cc7c63a53b88a9464590bd530cab94b7229d3097286a190491e5700cf1f56dc19f5edd8a14c6a2408731183c8edc2b01ed15fee3d74c3c94b1a9d46a59144dfa14dea797bc5b221c0ec54fc3998235fb6d15893b52e54cc00f8b7d74fdc042758f4eaff13bfc7be994387d4ec9ddb01d5b36e861f1312f1cb9faa272ae51a2e92ea38b7261dc806bb8be77a308d1371f4474a3292a5bfd9d35727004d2c468f8d3668f90244f67a58c0ae1841e5fa9388fb994caef568f9395e23c161b02e909754e38d4977d494172d6c6ba62e6818910028f821a9b9250d1f88843d7950ed232b2152a50bcf6a3877492261cc3d483c6fc5d4bd10f7bef669dd608c9d6f7982a3bb8dab1958d47dea03b82ee232f3762c7c99c958abc6b9c3b74590875bad6ee92215cd9b1db56072fa786997f9037f600ebf4fa6d9e9d5bde6ea112f13fc1717afdf4931a1152188c339141f0297776e6fed9f56825d0a8f3288ae656de76c46efa8e9eec02d2650a0b460ba4c403120a1a206d155d2354b95474fc50797a4682d3d4a9c65ceccc6a2446bbc52829c37478c38edbb7471076f824b195c4aa5ca96daa7800c3a41745b4ca7ec0d548c75504e272a750a531ee4f4062271b0c55689c5f92b4532b54e8c03b353636d0836feaf087584d067ef02c02a024f8740823b4e9ce8bf68698c93947291ef37943f41b7ada18107eaae4f95686b41c7c3d00f94d1132c54dc6cfb07ebecea2b6536856b1811d663155d254f3c84626ba217804481693b45370d46506e52352fc0b9537ddbda52524e748ca845992220fc18317d61d15d911747b6c164769c9211edc406823ddaa253314fbeee8940d622bbfa9f384a13aeaf8fc5e7f2b4a1165b43b6af43e9ca9734129cf823132227fe2e3d19f3c8ad88f52def3b8bbd8682c40cc8eba29479eb1c0ef17698ec2cc74698d1fd85dadcb839782d3c83dfbe1e0d8e61001e754cdeab1e9b05ed613454c8983ad939a7cf12f2100e759c51adf731c44d4f672a7d988d1b589f6784544b2eb5def42d16a9bb7be367367b747d4615645c294c5f3838c754539ff8d50584b37fa468eb3edf064b2e14549ade094b2cb74d91265b76a4719bb77229512db7521767d98e299180c1297b0e6f338c0bead49216d4368c20aaac6e4f8df3437b0f73bbd05db0e0f9a81273174f14e715d479ec2c4a5e91f3de96ecf5aa2e2472ffe48f6c5d1ef425ac6d5fedadfd0cc4ed8d008641b6f62b7316f8dda3f03842e36765e1d625af3ff192c5c7627bd5baa4d408b6fc267721eef4a4e56f087065fa6b117b8357928d26c61171ec6ad504f3bca862f0c0bfd7ead3eef7836a31bcc2ae8e873874225774eb512dd629b7d0529f1917e3d2c17f5c1a90c1d8ce0bcde552b03d57f2365cc216e85f014afac34b0c141a68d451d35c8afb0d3d531e1caaecd7b9e51ff539a32c8011286b4b9cc487647ed7cd41f9d93d84bdd2c449c88e8634293ab37e028dc72bc4f8152123fa0850694247fa64ddc68ac84fad124e0c6bf3ec8cf83747f4f0be49552bec0d50cbf6ed0ae4b94333b2c98e4d6059ea7c21bedf3fbecf06542a9105ded7d84ae4b1d23bfcb68c22d4d83d9c71d7128970c5d691fefc0dac55eaae2a79e0ce4c6b5e6fa343074c35accf566196810e6b56c4b118f8682cdbf1c056ed0443f9e1bb7e30b018d387f14294c96be4fa5898622178956a1ccde34c0b6d7a3dac9d4df299eb28fbec8494b52600a1975d6213360275b3bfaef00c7865c05bf85ad7777bef6ede7fb61d5e9bfd2fd72fcd3e081a5933e6b3f037a96ab6f854782ffce6b591d5ef9e175a9203f4e1f48bfc6851eb2df064ff06f00da89d0bb7fd39701aedacef89ef63b702890c1296dd455b31d23703d5c38940235e7f31731f2bd086f42717d2654ca0f9a11eb75f2adb5c322f933793cb643a7df1221c9fee00458d037bf98c3f9d70c8f5fe9b35c3b855c764e267eef160f1685549475015e29022233b33c5550886ed84f9d1048bef5b517bef2d0f65e8993d7dbf10d29829cdf3879381a630c3bfa8746c95cc9ba959bbafd6802ce82aa06625c8699f959728375e1dc33cc02274741942c40cb203592fa99e2010931a3fd4a61ff2209adc0e6650c11e0cee1a94590094fb9e70a2568939a35d78cebb88955090b69bdd3528ac1ba97c5ebc1e33eb5ff034d0e1414268be0780c92342bb82f1bd1c2b5ea41d13566484d47691ba4ff0d4072b1875494f264d02e208b3f64b454ae498e369aa6db38e7199169b78e33d8c2889b5802aa12fd8bd621ca6c0d95c2e0065fb61a787f0ddf33155c3637fcc9a5462c2373f107b116c192b61f704855dcbcbd87e270223f9249774468fb380760650cd342b5393cc69ef64d073462d1e44ab156bc94dcc8f2bcefac4a30b3795a22a06b0735485d3f53035eb0f89a97911dfc7e06c3a7d56cd66b529ff34a827de35a86f736f78442b6c47016b725fd6d4e6fd76b6b8319a54b4f8dbc147cd3adc3d18886a00dbeb82fb6aac18ffe695bc22773fc0f194fa782cef3151fa7dc9dc6e238f116f5b71e914fa6942eb6f68bc3fcaf0170b6bbfda20447c4c3ba8371c80eb901569f2387320c8d9e4c9f6d60ef7926e432adddcea9dab7cf03358694326e00663fae711d46e809ec37fae188c6461742b125faf6383db493d07df7af4a8487a5af11105d3ad1b83b5846e93f6758575d719c55dd5a8a6c27a1df406ddfa36be5817a660b7155f8b045e2da3012a355f60dfda0dc8b4d3776dc395b8b9001a9948fb06d9b989881f6ec3ecfec285870eff9667dd67975a85a6f418efd63358d4329ac0d4d1c68f28bd294f6c43600ae4396322e4a9eb818fd29cd1fc089af1ed33bcbade6b4df231e430129c0b0ec04f3c4dd0f2fd1b8213d34ecb386f5ed05548ae0c7878481e9841550557f212c9ef27fd5ba4efb6931c52aea7855f1062bf50881a37509606b092fa498b23c66f7a0cd3aec2705a44119540dac96c20154d5dbdd80700686eeb5cf3be3a086fa8b31e223de1fdb0047f26241c433a4d0db158d3bd628500533fc56d17831519927b99cf617062fbd0c28bc1dbe7beb23d1b4f21e1f049dcefff1e09d5919794dcc4015f8c8d562134f512ffccfe58b80c2f453395c544a0a5889e6306f370cd88eb7b2c360ce446c615528416db2d53c2810a9eea868e10fd5a3636f5a3ebac5c5f140c08573c2620f70122459c33e72381576bc78badf50a5a6352bbf8a62a3d7e49837181da7df78f137515b6d50f213e5966cd1419ff590b2f7b2370d7b633e1f1f73d322ad14ad4771cfd4f949abac7082ecf649d9a945765d8af0c69663daeca90318fca1bbddad962d03b1d25fc3a5b13a51b75922ddf07cb67293c6e7d1c0828c9d22452d621bcc0076ae1124f891759ee4a8b3211935fc2f5ce3b468c220aaefbd1596106286460d7536a36bf7a048a6438a5a3972f857ec6171bb6226338e8ed656426570d73b0acc397ba726b2136b89e713a64964c583c6b641658734c196208fbdc123be37090e07296e73b6a7b5b222775c039a2cc438bfeb6a9fc08936a6036b55e3e2781499b97f33a6d1f6620ab71d87835df73ae078521f7096bdf554d24a0b5f687f7ab67d12b20fd20c57792cd4bb6e3117dc65df3404c36fbd924788d571eb1b881f4d0ff7d401c1c629ece085b9961ce51cb78d7e8af4aacd72ad97400e8d65e5fcd8455f6bc7e0e494a00660e4ef7e25e67e824b9a24b5c760028d4bd2d42146bef06d0e14f6c3dcdc8fcd6c0ddb5ccd80f2c72f649ee8fac27d2764004cb5b5bd37a2785c76d409e3757f46a77d1d1fc7e441b13de5d02fabb7df3a90e1611b1bbc4632636e5031df64e629b3f2d9bd4ce04f62d9275c4bf3f84fed8b8c529e6ec2f6eea4f914987d399f638f5c2c3b0b4cd09596d27b6e042fe03b8fe55a83738443d61fe356fd11d8db15de9b34e4d694b932dc085e6377c5a9abc132f6c7ae8baa02628af5c9843a9da7c041aeaaabc5b9ff48c9abd7860ab96a11029c023bc18e5afb1c93e97ad1c49870b69913edfa38296ffab64bcc52d65794d5229f1819f47271e8a2f06dfac9861493fc85dfe6a76929679966f87d6b3cab221dd9650ffc1994efe4ca43677aea6a1771695c960bbe3099c6c4e831727b825de5288aef741bb7e332cd6fe850a1a89671d7fb8a97eb4461b453e19ad7f2e2c7e39a9f0fb90f7e9cd4c8d107e633e5182b80e59bc65a675ac20608c2bc37887fbc1be82895ce22a1b41b91f29ebabac6c4c5d2fba08114da38fc8aa2d373104be4be436b64c7c7e9e121f4db26a994979428867e1f0e477900a407667da62797b5a90bd3c8469860e6a8c389de54fe8231f91a8e1e4bfac2c07ae548c351ad647782fdc3b8f00f57023f79bb0babe828ecc74b3dc5e7047a751c540d1456a1ded06de5ad82e82318f4ccf85423f43fb98e53af0b8b57423ebd2a8fb4ed0077353fba64a54353edaa8628a7dbc4d604de2cc3a72d64cc6870f75b0e2d2dc5525102c09d764fb6db98b08d40ee2427f6fad434fd115ec9593ccd32be91c9d77a5d934029f99df85133249ce53664a2d64244d62d4224d5e10268bd97b04d059830a1f3d44b4552f9f2027a5fb9cedd60fda329f8332bca3323f9a318520c4a160646a67dc03933025365cbe074c29b81aafc9f49e858e56d43a8553ddb9579d5e75092c0cd8bbcadb6d3bb0f7fde72d9fe18a99bc03388341879f6a8e1080064651f9d29649456440d136bae3ab10d36bda81553abb6acf659b0caec567f9b75bea4983db98af7933b27228e27cdf63dacbd495e15914bd3c6b437bda2a03a6d22af17600548de0395567f020868332501c9125949d470eb0667fb8671d58ad15c000ad1474e5f28cac1763ae5a8b834ca9b021418b9d8c3faaeb2a3e4df23ce1ee9457ad73cea5c4bb5fc62fc4854c4b904f3c9de8718478d1dfee637095c15be5d72781a3fd5a613b46aa3a606023d8bc84401dc27f29649e66cd62fb0120d6e1a011c1398cb190454aa0d7da2c3f64ec2fdbfd7aa84252ffc3534f982d5d6ce4878219e48801f7e05a663d3659d322072aafd2ce671ee5c7335808f05f8a72332893a23c55a0e2df39cb1a5b46a9c2f5a67fc3a7057d00fec598ed47823a98843b3ce5c176af50ba4b37a15e00e459d91b2b1c7e0822b7308c91e4382c7c3c7a1e2fd5b6d8d530e20129a1dd5e64d1cfc8adaef4109e86ea96bfeb1cc42cd06c9506a614cdfe9f325cb9b0c13a5964e0e8f56b7c0a3b3ff90be52b79bbf17bc584bddbfd14ec4fc6263481d1bc72aeb1a340148c2b2314efac31d4caaa8b3101caacae0d4d3c2228260929c33eb664da6565bae802d35f9f7969e17ebe094b841cad0fa58f6ea754640c0ea96d29e96d63bcdc52952d79d65acfcc305062099f897390d4d6f629f27199c7e1fc6d486bc11f159d8c44a53079c5052df80bf466daebc787c33b5db70e651bb8379c3e2ae1a44dcb5fec02248d29f77ce84fe1a260012d73a2c3da02332fdaa4c335d008f2ad5f508949919301ba652e5a2d4325280f729990018b8a393b907d984c262dcb080daf048f1ca8adcce1133e31d2195ea73a57a4685dbd4d2e8548a195783c2f42435079db02c74e9b5d637c971545bda4add7866c039a6f9a0244bb755cf15d82ef84531cd3abcb631e80097cd42dad0bc069a430ade63027938b13c0153784d0a4cd0bc1ec1ab5e8e726c097ae91e96926f7da24753970b18fdbc1b951ec49a0004936cb2ecce0ea88d2863f33d754298aa00adda88a686e60ca1555ae52a661a4abf761b17a133ff893ac4ae473214e61ae9957da3746b6fe28116a23cbd401137b9d3b84bc83a78f05743fb182d85f3ba3eb9865fa5ac888e161ece5b2c4c3ddefa952213c93703a5e41c0609ad656fc98802668f43c2f2320f61290c409db5dc94cf3d9bba5627fcda1b600f297af32a16918be27701ec13794f51dfd4b655e41cb8e176f4179831588e3e81019ea0a3aad93092f475d641c036f9b85b3fdc0f7d6c0c5f3a8c9cc85e344eb5500f8a268bde89b96077d45292c0b1330c1b0c0fab310131c3e3633a23161d403aa404736a710953570cabb33f5825221a309eb3454477a99f31ac1081a43fdd57b10981b3e863efe23babb93b365297615f78cd0555383c20e42280dfcb75579dabecf7389ec9e141f7ef2abbb8d4051b3af02b85199acc6f523b36004bc6810ac8fff4e5f3b7f995b1ebeeb1db6bdded542912e59784020e28503122a7885060ce3fcd1eda1e2e422848cf5db3997518ad81f2c4b1170c644330a2a7b5dcf1ddb4974577db8436101242a35b021e0a0cf574053d2e82f368e8e0f740b7173a4acdf718e70662e63000cb2ffa364326519d97c25bf1d1d58474fff2d364d7deaf797c81d3fa9b9453cefee3ee511b98c0666865f48b1f29c551d60da5ae1bfa7f0c05ab0557a0cc06b6e967b1e8458e14f4e6dc9f853567550d50fa73d2938aab79b34503f02f32e4ca11f68ee25806318fc6f06c722f8fc46651610e179116a2fbf8cb8f411a48b3b54fc72eea4de69ebd9a07e8cf39a74c4afce8dc4874caacf7a9e91ccb7fc26491e52babedbbc2e06e3de81b011229045a888239861b9866240b727ac12e153596aac5f75ea244ff873fbc0221aa1e129bc356d441184dce0e4933b64d2b0326790735018b750074d336b7e4cfcd334716971599a20b53d0263b4de32ee54033e846a0ddf28ae15ae959da2eb9b5e447ed6c3685beda184609ae2f31533e6a836ca61944b252fc5b4bac6e2bceec1efe0953550d78d2e51fb07b0afab69b5f52ec4de4f6bfb42ee60864ce99b863cfb3b151b829ae3111411ccc31de39d00f86b9ce42559641d4b956297b90c507168a729fb52413a0689a7cdaaf68de64f3916dbaeea67963e3c168c2f7c353bc0b9aae59bcc2dbcde7522bcf2b764388e441864be6cbf6bcc514aaa05418bb281c4195866a7beeaf1ed48442647543b6bff009afc21cae481e2641d99f635ae34f31aa31319c7118ddf20ccda171bf824e84e9e6ef91d7b20cb7b18a7978e210e4b52fe4002b603f41bbd89339022653e240079a9fcd8b02164a72b64fc6ef1853417846d03ca70e2324538927bb8434ac85cb58b81ce7c2064e8aee1dcecbb3e6ec87d0dea7b948b550b6e0734dfa2530524af636da55415d2e1e66d6a68ba5088fac7d9d09c8a079abe015ade27940401277336856d5dddcc6b009dca1e3c39eb0559ba3d36c2f438d5920d8abcccfb323e558c3bb2e3a7b54c225b5afc69e4e9fe3fdfb442128725be86c3eb138aff4640ef7feaeb72ca89b6a8237eb8164e2379efece763c93273fec0d20244daa6cc6975f0369052bf965e8a6c0759abadc53692f7dd02f5f8f224050db9b47979932485e2e0d89b177cb46a3276f2bef0b6f840a0510ab6ab5b6ca29b9399c32eb56f03bbeb293e7765842b494503bb79113ad6b4c1e51cbb75f499c9ce14018a2310a0c8dbb5945cd9d8c70d778c582ce4a55c472fa028fc3d24c9cb8eacb2e08905610d18d79e9cc71b04dbcd1eae9fa163aa2a5b11c26c87ac0a67dbe7e80d0d671d430e226c09fba058352e3454c788a07c01632da2ce27649ee7781310edbc361a974418cae65eb34fd3f92f135609d75d88ca586d33c8a4268bb04c8cfe990fd9061102d306be8ebd94331ffd28ab1390eb1c2e963b5fa0693e81048bc7ab3e87bec2fa8cf8680e8c70f75918e7d59f7ea17e19b3882c71475dd459f08939006a8a71460084214a959768b37ecd3c0e67f05da0790fb807f2c04225978d6a635e41ef5cf632e40a308193a5498a5116ef75c99fa686f8015a4d2a4e80757d19537245b3cebb597d9fb2f211e4c82f050f3d6893b576b05c9088fe5fe2c619084d73360a3f0ac28335b60abefd6a6ab81a34ea0a9ba489e22026784d6dbe872ab9f6d512b098660f8209b5e90fee45b0a860fa84be25e259ac2b77662e47440a53e59c5df31aaad6250496fab6f7f0d8d1c9ceb55cb7a6255519073ad9d9a812faa422f97fa1ba31aea207b65effbc3f22643228534eb580f4aecd6b3229a51400d129565efdee0b07722c844f3d7893f1cd7166388c735151613fe611a52872f36501ace40ab62fc913ea625f74b2867cde8ec32d4e2394ed49737ef22579696af6c03c533e8cf7f7c9149864463e2c08ee4dd947a720cd6e543b560993260f6b1f217e9af85069bd1837529431231c482c33c6ba2b5c0fc8a45d614c01170fb24adf70b998f3b23cf2f13516647162eecde7861c6d28c553d57488b94ec8558087ba851422a417535046b645e23681827d0eb4d5558671484836fd2dfec81615dcf5bc58579a04515f290ba60bb748c7ac76a505e404bb67939a85264fc53d7735a30f000971a5b16ac07fa9fcbef7d41d7eb8e8ddd060afb3a81de8264b00b038ee876001fe2e0d775c89ca7e608594cd0b7cec999c76b70c835e70d890404053e50ced5322f9e1a505104d947a55517749ed11ff433fab229a069cd3591bd2c579822b2f14701f6e561b001e1cdb6c38f79f07f0e2a05645419b02f65633b4e539366e4cd2dd538596111ddb8b18bb1dfdb2d693d645e4d444528102624711ee282a9ab5cf2b96ce67fecd2599455843087afd3940c7b8abaa1df34ee00504cf3dd772460cf976e6085347ec6bb1dd3fabf92808087f829b22eb3f554859f52a7bc0d4325c0e0c881e91a5e0aef232ee843f3c064ad2f80f6c4297fec871acd8719ad808296973897f064d356fd81369be1d6da9b4856e9de7223e94044d1106626477be6804833ef24489894e6c4e67ab210d3d3198978df11574d32f1d87758241c24596bd676ad08ef07e514ffd70af4a4d985f1e1da10f7cf4a4a9179341b0cdc0ea5de4712b05f48ab79f6145b68a7ce7a0157a0d9fd01a8000425090882c6e85ebf759d15d315065c5738a84f29176aaab003491426e406bfcfd034a1f07fb9e2874c0a33382745f280df34757656266030097677b5835e6d1a0676adc84f0f378020d9473297f78647105f82834aa4815341e18e0684957fbab5ac615d7f05ff16a1230ef3b3f8a5f4d352307c8de37ada369bd4dc3b139e73115323416d8dc013abba37ecbd973fa7208cc18686f18cf33d78e4322beb2ae4a3f13d87ea09771285ba12a9cd671c4e15f8a524f380e833236ee32b9d2fa05bd278530ed58ac2253108c1d75c149f09b93ee58e02335c70b1f038aa83b57488d32e7f54a4a553b11468fc74c8a5688f712af23c4109be94c1d19e702b0accb541e4d1ffc6ab8e136d164a536b831fe1e7fccfc3242c3ee568231be822997422c04af7e1fb9cc44cef098a512c82d2d74acb3964eeebb94c0762726f63fb8fcfd56964cd5251b75974cdacfb0b513e8c9d452d19c358d36b0fdf85a516b5e8d7d16b295eed97bae4284e2e572f7aa52a4f620f60c772ca5f48e382ba12ec5bc8821cae8ae2b8653c73407e2c188fc318a947128f96358e0248e419abb8e0d65854aad1c43007eba665e74fccb0af584ba907d692b2a0cc7103d15e52592be8798247dcd7a2243af9d77bac056159496efde0910bac651eb5421c5307e9e11973d298df966bcc1103ec7b6fc3cf6d6d97809263bf106de45bcf1a2981be0aacfbb0be33952c67767ae411228b4ca177b623af4da373d2a4a310e6e39c82495aa5763e4f463d4a707712858bc19c5484651906243c6c63006fb76e0aef038f216f903eb3ffc87b5d2e0643a319017240aae46e43b3c189fa91a749791fd3485f709410f027c83b29fd969e16f6db21cfcd9468c5f730ca34b25650fd5db22156d1560b8cc8073b90832c3ff71167a7c9681b6582534e1cccfe51fb896c1834356630bdaab395230840631fbf9e4d63723c1c1e0b47abb79094be43660b88aa19fef5266ee663bf86b705496de2814b67e2202825216114a510b66d554972e868c5359533c6d41e238ced4c16ca3d0a221b0066cc785c9ded053deb10fe4960058d043d249a060a86af4ffdd23da9199b5dab9dd84c16d7ebc2d3701f46373ce37b164a3876a6ae7b2bb8c1f4b46686e8391b28d1837e6efb0307146955fa031e3016370001ae3f19382e4c80871fa0910fdb6bac7930f5dd53596e92469d95039650a23444779caa2119c83199064546ee55fa09822ecd241386314e585b274896e104557a48fb1594b17236a44f4be13e217bbf6eac0d37136cac0ee22f39d969f43ec8d286cccd77325f4c273efdd786b859ab1448f60fdcc69387e3b9720891e64645ce6926a1bba69801fd8b1eb6f073002932eed70d859f5b94c722a3f507942ad79a5210ee9265e36ddb1679e354300f502d1b3ffae98ea73b9d4a89304dc6d8bb25c7837d2a23fb756c307495ea061447f542c23f315ce8fbe7a38458bcc5a93f06510d8608902a48d41ef6fc8f1ed61d9c53b6913a2dc7c06faf689543b06b7b4d7033047e333cfbd22158188fd0006f9adc56e975d2d754b4a95cf7f0b0939c99405b03da9ec8ac35bd07159255943fd96dd394fbe2c22d46a8eab645c6ca4fc71abb3db7e5b91251f9e3a6e50ddde5ded47c637e673b35ffd275fbf36387888a2f30e8f30b9d7b71e38a5cde3f53331c7084740199220eecde8d4be3b3273a0235eaf646b68831a8360aed9fa6ae93ff66f7bd0f57599c4189527544b12b023dfdcf60d4429ab683f649752ab081280dbba4510e6a387c5cabb26d4dc6a9cc2c5091f71ef8378198e4b1a9ad25d1db60a6c6a78dbc44b5edb389676545e0919b7610c616baad1cad447a0be9136b3e2312502ad793853e8b2d7665ef45767a7b901a1555f052979d8bb56d9946322ce7f6779134a866f8ece4683fc4c37cf91feeaf65cae0e1bc4e6de933e29220ed111cd8eec50da90c4de7301f0b7437502bb07c9837d230c78c0b28744adb5502c91d3fb65bdbf8b7512f96037e6663b6acfc16df44eab39b216a9adde93f18cbb851ae64ff83e847ec2a39f9d7a510f72b9d12ff17857052ca252df46b6f5643ef1e102b7f8364eb6632e400d3e41128247dc82e4a9ae9aea872ed4df4ebf041cda07690905c592ced9f8ec66f016591ab97bd4582e7666cca2e402b0a75715d6fb10f75f5ee1cb7b288e12c1b10b461a431a52e7de3e4948eba1b7b83f6003e07da6f5f05d9a11658436649a0d6911d89548a47052cee9dd47d1180a91787ec00ec08b90d19af5adfe3df5e75426cea7b167c60a878fd14646d0593779c154ba017b2d816552676a1a936ec8846f1243c85fcead7bdd9f07d2f510bf54605a053de34b980a8e3b56d745ec5695213c657a05cdd1d6b2114d0bb037452d318a501a9636dc6ee26fbaa01a63dc5714cc586fdce8075b708cab3b18873a34e01408df4f0563ce93d655797775f784442d1845b7542974b5b3f1abde1597de0bfe2e21f9f20c38bfdf5cb18bc826353262c722ab893e9bcc4a46688a575b5ec7018946ecd0f42336cda77f5f2f2d98001a30d73c3ef99f21f2b06c6078671a765d9017eeb0fd7b0992e5a2965405854c3c62cbe928bd7adc755982d662b1a53362cf50600538e5be078207ba21ea68638e405a6ecd1403bef54021d073cacf7178fd05e593b64010f213bca93b7a535cc765f6df4e36aaa9f129d55d6fa6e531b545c3f59b5f549f70fcdb4eeed49c4f71d91ba544bfe9f81f22e394367069a4bc4c599d41f8cbcd8cf37fbf6efc363473e1e21ca0c0ce7491281f5d2d3ffe193ccf07e92cb788e9a5488068c4ddfe0ca5e5abac81a6fe43726008e257bdf8bf567c4f20d651c3320e8f4ff4cd2ce80239d2f42efabd8d5f9684c2c89933227bd0a6d9ba8b4b19fe2170d99c7f528206e795709a832b6266d75ca0eacf44313a43640dfa96a6ce20fc792f8be7d0d347858d22f8a09db77c99a2439853a37413a68d35543c0bb44ddaadaf41bb18dd71ddebc0bd9945d028b04134130d3cae0a4894970b302d84db71634a3973948029b33474ce6ebd5d07e1715a445db21e3c8eadfac0d099798207153982b867434c160ff4d3a0211beee7f128a9fbc7d2b986c91b59325b514668c1160e16bc7233646c513517c8e148f664dc09380c626b580714c46b00408c2042e276ce3acc4fb2d19a0c7a0b551b5ac4ae0925c0c9a67d5c807b4f61e73ba64bb34ddda02c302b02ded9474eb643a805fc9671f5084c3971c277fe210ed25668ae68e755635472da34fd8209c01b4019f245a842017556432c4e1e37ceecce6d6641a54f9653b75d046b03b2a2c214d8fe6e7525f10b1761cc8970d41baf8895716e3874e8490b30d291bc15e8718bf07672bf6cb88760446d036d6e61b39c6303b6a29bb635b97ee34b604081c5aa770e098d598d31256661f5e0592c345a1ea48b7a3a5115421f555ab963f19c58f55f39f5cbe9aa2b328751bd768984b679b49c38492143d5f9ca238402cb00b17096cac2d31fd2056dd607f06472914d24bba764ba776a6db2dbcd718d494042e4fa4939d71151841328aa90b39e78d1abd05ba05ce93b15b8f859b16e95562011f5c7b5d7f1c969e2423f16eef0a0f2c7d069ad8734472575314fc0f4bd4bd42f3b738fc9ac47929012294a2b00bb8e9c4612269ea25e19dbac9cdfbbafc86c3690277ef0116104720e81c5148bbf17734cef6c54010952d2dad80543974bfdbf4b730c852c70cff504b3f043df8c485c278c39d2865928799ffc8a925f6ffcd3563d221b4262f1a138ae0d9ca9de01147ebc56e80c49a00354bcd46d4a7ca750bd43f4c9edc7632d50be17aa546538e682ae11b7bc1a03e10e08a1eaf5d71973ccb08348e3e95beddf43a183e49482c6e89603fce34dac562008c4d5a799f970e4da45c44314ad8d9cc41b5dfa496b4793a81082a22c0a06fcd90b57a5921362dc66eb829289976be5252bc04d8b7baf94008534e15b9aac945c7cc3ed61f5732791c1d0e24607b7216500095a1034ce42074d1b2641a365bfe71bcd73a510f19a10b31e974011cd698f7cd5002c7cdca66af1603e1aa30ef79055a4ad6769976ef5bb39a97e3e6b7cce4c6f687c9db06b12c688a80735912b248e5c70e8c52880a327fb10509c588e8f9686c7d0e773631ca940a2644c1557b17f11dc01c98b89e9c92d16dc7e90e06e170ba8e5031057171f3bc83d3e18098d3d520ddd1dac44a6a97eac1daea132a57e3aba9fc75228cfe817d62f91478a4e5a4405eafade81cd4dbb0a02fbc63d6629f37f89727cc9f0332e753a11071a44f23dc188fc44171db41325fb433df7db81434fde61aec9b3a916251ed0d6b0bca6e77230867cc47e97ee85309c80593693c18c126a7e36e1368e822530a0078277b076951ef56ef753553d1558952566e4b57c5b7cc5a99526be846601afcade33451d0df60fd147d4139423671241b778778f1c8ad60bffeb821632aac579f29021d420091f2de9537f9ed11000bbf2a757637bec0c0d316f127a606d77cb36d1d63b39f62a18da654463be5190d7d27cbbc27f07a1eb8b4f646e687f5d9db9af50eaabea2adaf2ad97efe61dbb445de0f820af684030f43951681b5fdab947203741e157c797c9c60a97b6156beea4d4b6285bed78a1fc1f54167292a6c30ecf39778e289acfd02f1fc08541f08252a654180dbf97173b34ff3f3a2c966093b3ab7e92ff21327cb9801211db8d2ac0cfefc9ef6907667a8207b632a2e5dc15e571d160c704068a95147fd2b3a8e2593e5a86e240484ab30fb2ca5334d02949477353f6f56ca39a83e237d7ec2e75311a69982ffb024727ccdddd5cd6e49b16caf81d09a96fa3c43e5677c41a61067d12a910d83a1468fbeada3e58b08b1ef66ad9817f244ff82312bc1ee00b1ba292a6db68355ef000b6b985d823e370ddff1d1f4f9b55f2861194fd0d1fa5eb63099c6ac935bbc912e716734462abe6572277e347c64d43a4fc40ef2557f73a317c45aac5c809a820333f19440836d42aa16d54e2463331c225c039d5e5591b24a6da25f1b8e2fd41f402df71448c038495335e15eb10720d8e5b59a13404525129d21fa11f3707121d7a0332676058be0bfa04fce94d9a5022f146095d3eceeebaeaca3b6b623cece40923ff61bffd4d62e162760603d7e2bac1b9d5dc2a92ca567d1b1019630fab7f0d14f13e333b0f87ea3a00573cf0af86fb6d25dac50c960b082de5d39b65198eaadeec20b6e8e9d4c0d57fbc4ade84ce2792ca1703cdf2c73c516933e77ebd61e3186368cd15fb3f5d2135e986924570810fe086172e28121dfb7d1c21c6960767b1306550c6e2ff207fa39c125153c6d0009773bb18da8b8e0dd2bf713bbdad019f56409e70d6a1583cf73912bb53a02c9631c80f95e790ad104c353cc12ae74ad438676a6655d14e07459fed6d8736eedb6c132e980ba6ee868576dbd63fa382d82e5b932f21bf76e53cecc848f1d014f3a42cf9ee2ddb9137d3ff17285fbaa26a8704c61d6dd68fb3f16d5575ec859953a90a5e99c116ac69ba979072c14789ffb2381d847de73603714e77041ade6a42d354c1e9739e7ea276f5261353f5350a14425489913314367f338f2aac9374569409e98b49694c49dbeb014b39de762c9329bb63a5af9ce1b6d57450aa6815a5c0ad4cfa7d509bd6ad50a2f8bdad6182b80c757f7b089500f70a3d8afedca211b48dbe2f7a4b3b92084890977af2f6c57d0c0ef68227e14b5f879509bc7d529f6f2a3d0e62bfc534890948b35a35fa6e836dd37d2b49f581d0242cdee3a19bec0ba3aef734238b8df29f16c870632e87f51ee1e9a1de676ad9d4d5008dc5082b22ce76a2a04b757012683cc30f98104b2b1b4727da8446320ace608ab9049b123161eb0a3c0e4626927ecd50dc4e426cbc4f353657e159b088609367e86736163596827b5abd76ba5bb35dcee5974b0e62302eb7a77dba59137c79cd631f8c0e6393133a58b4ead6d2bb45c9c6d5f1810d4493631ec95ced91e0bdb3d0cf58d6f8c1c6a007afa5d1788738dc3883a2fe5a1308d23785cb61af7f061ab1d392a60452608bf27e708d6d8b38b0a0deb8296816a3f653de89e4d7224cd6b572cb5ab81b2abf1101ae5bbf45d6a96be881516e42dbc52f414ce8570fd03ca0b39333d91acdbbf040e0f8fb3e0e79c7d6f8a9bd267d15e2c268a5f67a0e0ee9271c8845e65e3b371f2421b9bb7b2fb95c94cb2837893a6fab970caa0aa4985c971e91fe2e416c4ec2a149895bc3b115ebcdc6d7668e66b42293e268d473e679e5facd8b85232619af6ce32c79e60efbc84f4b943056173d155139332d7e266388de176b58691f102a2ccced9fc6150f61642f1b62e20769fcc9669454dab4386b6eca72767cf0e412ed434c003aff950e021f0d00f5db33de5ffd6f9b684837413fa8e30b907ddc5256b9ca5d0fc97d568c47531c79b44cd1cece7efbf0615c8f35a16dc2865965509886ce98617525fed9c9c6332727eced978f5f955440867c2db49b6cec339d4d08ec26e40e501a9a91eee761f47a6e44523ca4f18e9849692a487cbee2aec9f6e19756ebca54631d020eb20dfb96d2deded76cd7860a825d90b554b6395f69bff27355f8b12751acb9162d70b9b7f7068f64ee8827328c02ca739a8795926a868fc8d4e99977acd668be1836e0a6dbedf376f6b19c805909762cf007ccf2c1ea0bd8022e11d217232b8af84668099d0b54428b72609c321827cef921701c3196b271aa6efb43ee04d2b08b59d80c312277a14a13c3153ed9c0c2a10cadced1161e99200cb42b6edfc4460b4735ad5cfe91bf427b9a209b9294f246aafa32bc6fd5af51ac6c8f9268a1d79d2a6bc5042887dff1b405c18ef839d2e5182fb1710897fac34aef63ba77e013753fccf48856b27a9543bd7605da5e65bc320bdd295ca88b7e653620e14a81da83011690cb3c02529a0c38ac8aa682fffad6134e86a64e09c0a455cba430ab680b5fe8dccc3f24b1e26c866bf3c56c3d17344b9a97da1555ed7d86101b766b40a119b0d4dd596583b90a602954864a263ca4126cc6b3fd9ee709413de0e135c4aa672c68c55c113281ec82393681024e1e9d592c04a6da29a05fa1d17bf543ae566b45e6684deb1301c2dcd54fdebdcba85fa457c31fe1921db99d97a4d9b773356b55bdfa62a4819a539ca62e34ba6c7ca6f7861a2aecf4725c1d0f9294b4a61568694fe8dd138bbf29066b82ba83f6bc2a10756e4eb77e39ec022cccdfbd5f4537494590f8488c4c43b4844bcc3b44656e121edeae5c4043b9d9990a9a8598f203a69efedfde6bdb20c45619a743e10835e14c93ee0019afcb44381c3722f2016a803880e6a31cf70edc697e42dc8a81af5f9c979fba95a878160538a38b24da45d19c23b787058ad7f29480a95f4115defc9e134bed78354816a268f783e64b1e8d233a6e7b5271e9482ee5d7ba162769e84a43d57e5cfb7026bf5ddb0481d260cf1f1ab82c3b5080f85fcb5ab73ef21fd31d0e12913ec8606bab541268cc815a82409453ddb6a974ea2a14ad3ed11cb7d75b16b8c6451edb019e7ac1ebe3df214cae4eae79420984f060f705775dbc6bb89cb2b90eb7cb2ed017b53801eb615370977a843a38e8d6699eb21fa9759a35c68426c4d10856a5597c738a85eaad293b1fde5936d2bc607bd33b49782f89eebc52f6b82557984cbdd0778c6bb45e223a6b7e67eb4af429972fa1fbb03927355683f3555a3fc75a3a6cd2e44e0de5223acd3c3da7426c7515a8596060609f4838f645f89f6e307ed9db9a604284960a24cac5b532218b30892edd3938e03c70191faa2b9f1437d15883fa939ca026196f6d5295e5b5871dcbe7728ee55d026686533e0706b6b3a40a4bbf5b3dc4274a03cecc8b248ef7d490dead3b8f8fcab6f730ddc25bfc09894ccc1d9ec75a8c5b9f43e77c8a438c0eac1c74a994de79b0dd479fab58e7ecd6eb265bb39ff0726d353cd4887d9e6e8ab09c8ceacb5193ab34aedb9f453ebfd7ad24ef06de4c3c11691d60581b53b966d4ea8531c6ffebbead41130558cb09ab8758aeb932f4f76703c8e86b139e3ec01b1998de53650a4f02fdbf2ebd62b381f4986a318acdb021015d644f57b2f37ea2a4fe0c7c48749e182d61368583f08b52e05669aadf1925a53006f6d8cb276a88c81ce26b9c04032c5a17ef30ee0699dd2f326ed0864d4121ae27bf9560b93a8901c2750d0a69a3d8c0e862279cf4b006514ad04eafd74fba9dd936e025be62cdba893a09930e47751eba04a9751ee15b255b3f8fcb6d72fe7251cb3ce7f8b7eeaf983e46e1603f6f926608d738e2a5233a51aca879754530978419f5dda64c21e3ea3d2ace634e3efd57a228c1684b1e54b2d19fb03f08c11efd17fbef9282bf1bf4ff8cd994a88f2f6510e3d9856979158aff7995d23c4440c14e8a9b0f48e8a5eb29975a2617192f89323c8cb6919988919038e1882b6a784c93a4991301e41c48818daaa0827ea20b50dcecf32cd5a76028542bb54d4248621ac3f28abdee0cbcb4a59383c93c8b3836e0355bfcfcf5e1968e2c5e4f4a069625eca9dcdc14d8773829b8ef9bdf6966f9f27252efa9df30a2847a4d1f66881f78111d5700732501558531b95178a5a40c17d947c89c6a1f5665186e26e4aaad25c85df85568783888adcad34128ff8eb4d9c8ab0f5520da0dea18c730424899e1f6de2911773cc63a0b7978c9e6cc35af6e124c9d3cbe502c167363731211d57bacb1610f6a2ae514b0d6f73e4b645f0b28b87f3a19f68196ac607f17bb4a945bec4392c683b0101d7865d3b8dad3d5ec429c676cfc2977787632a260f72a95b2367791468a3712247441f55ec767d8d8d8cf55f0fa574a8f2f8d924d28a1c80c08bdca2388afd33d2c92f61bb62e526b0f6073d3eb55cd6e4d4b123f8cc2d00773a8f4e10ecd7f51bc9c0e890fe0866abe8043181577e2a5fc0a391a9582379b4657795f09b59b98ac1ac1b469815bf737312644cac38358b4785d4fc0d62452f5bc01edff446f1174be40e5c4dd32540a25db4b2faa34d9791a936911877b829615c0d41f93655cae08053d91f44427699ec981b52480491e54df1e4f039197a58222445e8adb8b189c1d5d9674c7797dbdc4be66599671f47b3e24897b8cf4ea41736ba75fed3b7eb0a9d067bb6ddf9c9659eaec54975cced25a20c67d09600aeb7c214a8b3b42f418d42c50045a2e6879d6da7a8ed0239f4ffa6fa852924bc4801e11c6e526a0e7a36f6a192f3073dac2a802423083fb781c313cf075d2aaa3d0f4052f6f60904fd5c9df7f85ff07a34944b9a41faf8a7b10a118ac0b3d1c2aadaf08726893ee141c8c7ef1c779840a7052d351132462686e030390e36f7f064c0782db4a1fea357c5479162a1e3f29a378c5da24d03e5ddfe9311f85f69646f102de6b9bf404c83e015715fde63547b8624a37720354ff686b2d3fe08ef7f15583b480c1c3ae000c6b7b50017877e6c2e61760a35e9db6b27556fe349732d3bcc52849f1d08ddbbf4c53191ca8cf2b7768176457b07a01558126c05ecd7f16db1ba35bb399404ab390a0d9a212ea0f4c15152176a65ccc188e1edab9f17db907c9ea4de263f3a240a38c29c9646376dace85188c2144ccf77c503d24a0a9acfe9a546610bf058edc74df9ae07c99b61675a997e5829ef5c01344f1e8cd0d47495d6c7df37b47b7bd2e4f497ec90b3d63e62286c180b58c26b41462ca1af0f24a2dccfd37f9d7654fe6f7bdb756fe0d0791d2d5ea4200c508712ae8042ea173dcedd79c47a864596597582fa8ce27ed9d52edc41d393b81bc0b04e73a7852d0f998164f9696b3e584c8880fefcd5f79d3c76066c82bc400ec9f6f1e94c4b34f82b4d1bef7b827d3beb39517becb45192b8b99013438501291c96e8345eded7a906b6c949773ab95f6ef45e62303dc3091e738e0f68a66ce517e390f8d4201c976a6abf0cea357d01fa1193d5db134bbb9cdf9fd58129d71e3190c64c341aefdae5648e3a0ab24d2489f89e65e43d8d6e5c52b963c3c1216f55b5af7c00f57ae5e3f91c92af42db560ed506a678142bd610d86725fcbd5d1f36300c300015e5520bcccf810e0e9141f699e01731e2192a91c5b1eb1783c4a1b1f393cb496f969964835b06ffc5e7d738f822620de474d422cd8e113e61bafc75b6aecd1d5b9e2984fc0bbaa813223ad77a952720937c0db52dfde8a5a78ff85a95625f56c45900148c04c2a429bcab3c8b286a89579dd2f19c70c8c422adea4ad08236f677baf57ad322c0fcb493a88f024acc91f59bab000c9f54de1619d524757d37f8358456d8f3f7e2bd271a950f5ad62b5be80d68787731c305b48e28bc216c81f4927f881d7242dfd9810d0747ab548dc1372f3ea5741ff6eae49f60e61623c84fee805021a05b432118e031ce1be1f20ab3e72eb3181a206cb7fbd291c4bfe5f4692894041c4c968ccdeb6160fd1d0526b919f3c9b639622ee726b7b976a2b75cc0cdbac3f33f33a19bdd7baafcc61495e1e7893e0a50e5bb779584e02302d78cf460debf431d5abb1c9bd247b9491d58989a0d84466cce1872eb0005f1c0c89cd0b4c7dcd42feda32a1352801411d6996040d11318a22e11b58a4ed0313885fc80866e9513d2ad6a65f7a3fb7d57c24d95304d000d465aa4e62677e525b0a289dd5bc72baae0d1f57a3ac44fe13753e61b4f7fe7e60dbcde50a54d2d659315f3bee887c27896b387ec4aac2d78665ccd3bbf3da7664651e0ad53e66130a7cbddc6a2ba66f24435f50779880c660c137b7b163d108ba5740c1c7f5f05a095980d4179156754c1cc046f9d6343ff8d439e41b2062f67a8e620246720d85529ec4bd2ae04dcf0b805f920476e254b67df17649111234081900b2c5c4e35401f9d79d7e87f169024d09a9403e7125e3263bb4fbba73996b19786fe5342da46e0c108b6a9d35f5d68d291f8ae0c45eaa0194adb57655c405d2b3a55eb799354cf42fc38161f554eb32e973117cd79a12c45d3a657e2f8cedb037bfdb0e0fa042dbb6756ff8ebb0b27913cd2f5462308d44a5c6d0346bbf3e85c57c1a76899e65c856368eb64e4ab3056e3d2cf4d246eb8b7fc7ee40aec19d8a7116102ebe493bb033e6afa92357e1d457934cf0e64b7b36f3f50a262632b82d376ae7ebb6b56334adec543197d3e429e62a479163696d43f18159cb1c9dd5db5328f0752eee05e58936cad6b12ae4ba9555d04ab623545efdb47f584506ffdccd6beedbacf0265cb053260fbb2c808c8670fda2212809b558a1bd7264a8fecbca20887216350f2c26f67c35d42986a9fea2f4687164d4f6fa7c4cf407e478d53f794dc9364d001d2e7510dbd2a95d53e429296fc7b21ae4269bc7f69f04b3c1e37aade867ed4b29d88b2827f575b0874275c113155a52b4334442d1b3e1993a145e537c70ef1ad029a5d30a8fcd96201f9046bcc4cccbf7a89d363548e84607816fcc574331020e29b8771450796d6367f815dc25561b1ce4bce10a74588844322ebae6821b469354b492e0589c1bd5bb77e4c5c98fac7c5550778036336e83646414d64a275e3b9b6aa9162f537b75e109f24599646884b76b31d9e245bd78614b8c82f656541b22fc9d1916b03daf6094faeb08abcdbbf39bd81282135a78d4867752ed5b34bf1ba024d448fa9a8a2e54d0af524b8ef1b6eb4c31aa34842d5be52d2c69fc38528688b8cde3f8f816f1a9a60ff19e26a0e417a44b9aa6629e09cc547c27da4f99d8351fb24c867aa35a53ef766f5e81e5274209f47ca7923fb4b672f8f9d91addc87e57925c4d799f89cab2a4c9a75787f57ce4b1a3c49466bf7c3e6c280a17fdc486512c0c5be90ac2bc6a799ed63f3bfa0cba2e12c1fb2797c74cdb3f8b02c52918825db5309a9e2e71312a148cf55db210f1e8f3ff4db7953e1419eab3128343d7d91892ad666eba0845d13aa2bade8852d70dec4be8758cb788dbbbe06099d75adce38ce80d83fccc4dee8f92c103c1a15dd4f75ca3b046395d938dfa57fb65f38c4d9d5a81157ed7f669a63f567a71746d635c4d36d17545d824a4bc37598ad8e951f002543f72b35668a0765438ce20d03e9a39807351141fd803b457623e2fcdfb922c664706369bd5573357c26b6e600122391564e78d637173ac157a5cd27f500ec13962d52b884ef9d1b32a17db6f688377dd58d6fc9bf8951362c06abe22ecfb09362ba4b4f6cb77375ad4c8e9b03d8bd79966123325816cbb71de667c52490c6cd04a1e442b9212c5bd9989e4db66516044471c930d8e6c036b9f0aa897f392f83671f22bbea18b842df90d6e082b391baa0783e8051e3eda3b0d0cc34b14c3bfdea47601d3860531be91ba215e299577cdde806b6d2bc66524c388a0d5cc09c22f80fa1ee60a0c52f053c527ffd56434a6bc5b847d9f61466eb90aaf528395998b166371cf313d8ad5173de7e75b2a57caec316214f12ff42e81e3b9356f20db3e38fc5e1b1abc033e77f5e1f4e963e222318125c1eeffd7686ccea898ae6be90f25ae7ea608cf568daec4f0483a62952adb72cb293bcb0011576811f05f21b44b8f5576666adcd73b3015ea5d0a67ba22717299eafcbea916d6a7022818e0d0e805de9ecd32ea77278d6aeb6630f7696ed1a1689d66d5d459244db6b0e1a7809375b8f20f8e73bab882deec3fcbcb85c2979ea87eda843f72b2717199f2eddd99bed6ecdfadde3d89fd8a21d76c4e7ac65e30b3f9507b1c39dfc447580c83c25f167ac86fcccf2a168c56664f9c6ab81a60d6a2c9983cf002023bdbd8a7641939659f5052c5a7107559d432bc25fe230c238fb5aee4979c675a83e0c542440be8b8eace49f17d14da09fdb8cbf8cdb68cc06f6ef8277eb368be3c9b249075d611164c354318adf3b1c875dac67ae5bd5f0694b9bc10287362987b6ac8a8eedb26837d2bae30c3a96bc85fffca0ca3d3fb5b19a69b5d20b13f6aa6e6b136f791a7bf30343940d899b8a91c38fbbf3f4268762b14eab5b9b66b458450f76beeebe34e5995e207340e3e65f72af775ce3ee18f7911f07e99cf44f7f84c9f9736820674b48b1bf017d1b9dbf0c311aeddb53994cb8390aee2044833af61611343f1ba0d30fc4db4b762645a294be05d1f921e114dc95162b9373679a0b80407d705e5307f43119064dcb486199486b0a8c8321d2c01675640f83aec46723be8bc4b176616414af949179a2aadc87bfd0915194f9e83554792ce68fcd24cd35667ed366e93367cb13b9d7b028423f9d9eacc5c4fd7272d6013753a60e297c9e6b258fefb95d9a6598b74d848cdef2e13284ca26fd5ec74e96b4500aec672d191dbf960c5995521e05d2f9ae638040c226b6cab82a41dbf907fc91af50483034b5640fe1be0c63ba4f3da8cfde19db8939dad217dc3a18f7d96d03a56df1c9be52ee297f85ae9b0dd59f991cd3dbd8462b19f97d56b831e8b836d72b0402d95f8dd5d86a82cc6e241b8935fa76c80dad704b1d9924e5a653319315a0e4ac3ded5a3ac7a08e57b86c41d38d2f63ed9861480279d29d3bb7d36a8230455ac7ab3bccbbf5f6dc8c39659f43d206cd9a874c6250f47dad2fbe8c9488d2d337c386df8f772abf6dc587d7e34d7af573f1a9017699c37fd0a05eeb1bbd202b4df64087de7b0096fab7b527773b45242e5dc7d05218ec44026e10186fac4104482db1bbf03b87258c2e4aafb8a13e7ec4257b48f6817498e9d82f4eaa82d236f059df7b8cc257d3ac7135ee3e471d550f8c8afa26ebc181a099aa168567921d90cc79e7107a1049b5a389b4ed814b5575ab4c9b565205f6ef92d90b3c83451fbb7d22f2805bae12d7d7d980f22000feb4f4d4b3dfeecf48ec2dbeff2760d602896bf02602e51f5dcfd2ccc8d88fc7c273b2871bfcb411b6fa861cd66281924d3bd8efd668229af4faa0a07200a136473bba907b45ca24b9d4087a7216813634774112d7381c7b9e9b690da8b9a27779c089180c732feaf1f2a5bfad7c71b4f44f4c7b3e00cc238ff243adadaef0d43f52a2187ef71054604beced9d13a1d1c031e319f53940b716f1c0cba017fc0cb16256b622d0c84ba846fc34ffab82d5e23a612130bac207491d16a8ac9d32e55755629ce2327992d4dd4f4a818efc54af7dca47874f43c6458c77b288cc381eb2bf44109108be64e095aaee254a4dd29c96c397adde7d2bdfcfb3d468d0a2422121c7a56dd40b22b56efdac842140a5f51ee214900f313720507b7657532f94df9f8e2fbd09a394b09972584c682a315f256a268b412ae5678f38e212ea0e6e9958514eed6fe45315579475e51b9cd0f62b29dbfa8bf881422bf8b71732755a3a0a51bd0ef6ac84d7290fb28b0168c275bbeb2bbcaf69316d03ed26e02b533cfe97aadf6ac067b1e31156f706c560652f032bc84f9feaf522890c635b95481f1ba2efdf0d68c43f61e2c175944007b63829aa52cf4f7a6b2c8599c9956bcae628ae68bd7e97bc3140f1327fedafacf0cbb9b79d7be0694fc2c0e87256215668b6cafb4152b7ef1a1a7c50ce91011632c6457ce43beca06d7fd66a2abc8aae84b7fa124fd6fb8a74e1cc12f6909e41951725d2045caf6844688a266a869e51d1fd4fe2ed2ecdd9bde6f0916dcad293f6307c4e681374e29c73a7716a3a028e871a09b3441485fb5230f1323b0977270040c41850af4f2131c2165158e16996f73e64c7a9b683ed273f0942ef3418e401c180d31db3b48499c37d505873efddb273904e4392aef8604ce5c1c1953109a4f3965f2fd76f6d631a3c7a35365dc559aa42b4d7ce320c94f44b661539423f037f97e87ab15028e16017e141e1dd6a78d38c8576da51d501491c0a727751f0c1ff5f5eb6a214f4a20e17902795e2aabe2690d1b8899d6ec2e1470914c4cd1be3bbf5709a00e429aa4955edd9e5cd3969c1cdf4523833859929a7960661abf54734c521c9bc3ec4fbf59aff79da49dbce0d95ee4f372aeae591fab004ffd87351c56c048e696ecd44798c144b3a323c0bf2b6f5be6a22d76efcb87ea4b67ac5e6c3045e22ae2d869414abd3af4549aea9a476a5e557f9fe26c6a0b5b4471ab68541a4410600498f5a24ea20de68d49dc36bd9fc227aab53dd53b8a2b6cbf13d52f7fa54633c441557f1bbefdbe73b60a9f9fc0153b2b6d5560225800ddc469fb4db916f1023a36d5de8fe3b201690ee3190a02ba78ae4f276fd67dcce3034f4a1ff901056577881e48ac0b5fe051e014dd82e4c2b3850616b4d8fc6f5583a4065cd2ba62a510a58c1c59dde2a5e4d2b37fae4c8eec6d9bd58e04e5c94f3cb00b01f53c8730cef308d8b993ece13a743625444917dce52edb43dd966d0889f743420a44af1829631037a45ddd291d459351d624c3784efd1e1787307d9bf87545016aa463e5bf30eb9b691d822d1da7f0a008e6354743627c41a15552038a5ee4291ebea7ccbc3667f3f43ed75b908bf709ede5e459cab58625715c4507c1e5eb5e45482d1f6795eb568917c1e0d7e79a4deee4c26417b5aa8aa1f4edeba1c49c3f814d94d3345560aff771bd835935ebe1c696d6462a23a5a80267439b38c84b50e2cf474182a130cff942a999ab366556dadbe7e616589ff6871fe4eb7a3f0716b5bee1be97986cb55b30e3e728c09d03df370473b61c0511df7904f1da4be334ea0df1c5bcf5f03065caa91238f0a7a953c844bf445b31f76f9262b41eeb0f578f83bde062d48473be449fbf97c542b68458ca5cbec571cdf83ce50d13761c199abafe556a28cbd68f3a7ca5b4cc7e94abbe3dddf6d5481b8260c285035f4d67426a22817d3d91207b688a0db6527a0ba61fff8d731a581571d0b17ddce0a771eacb171390b4a76db5dbda56c402fd145de66c0b6a1e7dbf717f2d54b083b523a451a50622236e868c742a3f6fcbd0b8fb330cb5a16d151c97ebe3136dbe4c119ee38a67499f43588465678830a8398972723210200f34fe1e3284d49d5b0447176c082c18e33a6f15c86f1a9295f6d6b5701ca0dc5365556fa96eb6d4e5980c0f38750d42ac53bd30519be4b433ef68ef69931f501fb5967a3d9ff209fec72e8ac72160914d8c6df1e36987b82e57662194572fcea9d28c0c6c30b4e9e1f8392e7850806e0c19ccf7e5ebef4dc047446f8df379206f1153c784eb5e0da66d64e1fe7f1b18cfc7dba411260444f1bab6aba93c859ec33b72f34e4fc1dde2911f0d5c74153fa9e9bfdfa24297aafd9e2de9908a604b520c93c528da00f084e55ebbabfb802f235e18bb997c2a2036fbe55d337df069112d4baf84ead0cdd6a35358a7d363b61b965f328ade14b81e720d7a536fcb7c8a0fa7e08a5f2ceabc0260f726003f24c44b1924990de8ecf641934166144fc54c84f03df1a550791d823af9b1020db0eb871300e5e8e5d90d7cd984b4cb5c970b9b522fa8cd3802b9cf5270d788f0c321718001a9905173b7306b30079f31ea21a87779a28abea5db9c6076aa736e2b1a5b7be350fe0df73f01b70aab1ef23f46e78d042da03bc98ee03382aa2a0250e3f01f3f47c63b8d2b7e0920407e59b0cd56b6c49341b0443104426c13730a5bc2367660307c01d403d0a93168a954419f3bd95f4535a75669380e4f21127fc9b0c0a8103443fdc6ea2ccbaa99d1f642b7fc7cfe075fb4767b935f65ed19ad7794cff088ded36d6b831cc8d9e8490455afe92fe3a3f01af159b8622795f668d738d7410d0ee94b36a7ac71fa049c9fcfd5d6e1adc2a7ff0c0ab338f32f2b996b05194ac84dd3c7a28ca46885aecc6d78611326f4ee894b552f3c43eec067fb5e9aa5c22c738007d955be3e0d29e7112d00ae28388c2a38f61641123f3368facabd5c6a61077ee85cbb73b823755e65e077fa7a064edac6d2b94d15ee84166f0d46bd73e198c2d34d0344cdb8db75fa2d80015537dba28d826a1c1a67a379128515e40ccca50dcf0237080d515796509a2776b9130ece044c47901bbdf7b8735ac6399b38ac2a3cf8c3153e9de2a42df3eeba448430c2a8d3bdff4d3f326c7b9fe72da2119c2db171ccdbec41083d331b898e4699c3a3a89a651623895fd9d876c412f6f7e0d72e97704c022c426d92ceeedfe80ca1d8161456456bf04f32dc5b4578558bb3c7214e7658769fdbce2b971947486c943ea88b20100935e7228ecc240f0e554b54339ac59e053213d35866b0ab49d8d992d649337c110d9271e8469adc20707f42ee98f85a15be9b6599f13d9fabff138dec664038263f7c7f5439d2ad1477c5c461cbb4541a063d2c2b175e6d788ec432af01a3a03efb98fa5be3911340e30f17b0540237e511d96639b6b49972688dac71ee03064f29420f50d9a7733c0b3af73e4c3407c3ed1452894df23d72abb3730ce2e9bc0331f51ea892405ee5dcb9b1c0c342dd5f0f9879f37e1bdc2c5ca32d8e5e1a7e4119e97e4c4a3625668f5b379b4a6aab0407d64151ecbf188ed5047007ed58266540c8bcb9854307ef19e1a6c92db8bac772d7bdca43bb94b554ec0a43bc136a4d5f7608fbc0fe588dce04f7ec14614bc46323ec9b3331a9de5795cf80c0683054f2f10adbdc4e97f0d06d0b6f0f29113b5e5f968fce881f8a8c7d04d45f70013e2b723f1eca4675758e8ea13614610d0eecb83aa3be3ca24cc5e5b27756137b196ca967fef2b601f2e1c7d1762304c1806fd7925df4dedea9842bbbdb58f9831fb1d4ea7933036154bb92ac807fdc781d046a709fb7fcf0d8542564586bd0971027159a44fc8e4604e1384a2af2bc48d6280ced07979a05e3f6d2ecc76c16816ff0da5364384223299396d5bfd605dfbc3b50986d096e31a7e48f6eaf5a75944faaa877e8f1afe0dc3fe7fdcce2a6069425b111c12d69ae2769254b73c43f384be46a0ede7dd6295d2707059766053a2dd8fb7fcd5fcbe412105fe2355481f1345dc40dafbd49701ff7ac5ddacca37eef947584080bd380641b1ad936bca63a48937749bb9f618ae04c5db829d086bf48062d73df550d4867363b7aa6943a0858713cf602ff1187c8010ca0daa91cb15c38d4b433dd59ff9d1d29019f7e56cd52b92029d1b4a73ce14610aaddf06574d65353da1f4116b1e8ccec95ffdff87f3cb4382eb08afc422e2e6c547f3e315c88de250c2a9ea6d003cc2f6f4d7a64113a9d244d40a550759a60fd5175b1ef6b9ba5d924587e32c0c50e251fd02439ca3128cc56376c5595b5869675a750a6d5b6c58d4abd3387af7c2ca0c12ec446613580fcca619137a5bdc334360342ec358c23fb4a6025f0f00e54770b8790f07655fee2cfa6d0c3b12e8449e6c6b8c3ede14fae10e0712f48ef1000b6cb649c1b5d79bb3a2ccb46ecae45e7b360b013a73e585f6b27bb00f78e22f04a8d5a84ef44013753baeac4e44cf8af705f91883973ca40d29dabd4b30c770468288fe4a55916703877702c0c75d7200bc94eaea008c05f1fe9248b089fde008a3ff1140171644045108dc1e87462cb24d3e40d12b08275b4d6da09aefae8190ea0d7c3aa5c4ebc6614c61adf625c848dc527357d12df361dc847f8fb7a58ae9b6855eb0b62ae4ee12980a7896c03e7844f066c0e362382bca80affc1278aa05724bc64330f28c39ff6ea6b9d4b453f4534aef23671804530ef3400dd8a34dc6b53bf41ea546afcbcb408661cfa87ade8ff059387bd0911f80d0f36d5ec15786a773e69430ac8fac6860a117ca31c41363db8ca83dbb3a79095bf0aba0626a6cc04efa7e15e1ef2fa96ea7aa490d946922654e019c2a08462c9682269c4d833ee5af9811b67ef1f44cc68d8436f07c1e0d94a925882f33edb3216b652883eacda6123ef4350850983b86c0a17c790a23575abfd3d82ecb0a843b4d7d7528d3bbfe7bd8fef463bc92a166b21e2f887d24b77b8509f379cdd4c6e1c6f93b39e47ae8a46df4246b98221483efbff0386108175315acdd09667b5dffa73c1821c5f73318f4781408eb356e57faa6653e98b30329c48fd6e8a3751ddd85c28f53e8cbd1c021c2142c0098c5ecb2c0aa6ee37449c1eb3875ec3186c841e7418bc8a5a5eb12c7db619bd889b0446ed752e45ef9e74e6fe601ae76cdb363088c16973da9d0137fa4a198fe34f6251d913262cb74d4442ce0120c5843b3d357b1777b4e0274f692bdc06eb7e22e563e88d0d8be12915a7de6ed2c2d6727a0e591253db076b9d14712b499bc53783aa60acef1e86349eab97314932a974fef91f4433280c2669e9710b2d28e5321d2f6a7c6735ca6a3fa11aa6d3fc913b7542dde3f0c40617dfbbdfa35febecbef922e2d02fffb9ef0382da99467b8e3b924dd8cccc50060fc57d00f223247c22cff8bd8902050bab07b9be35823bbbfd2d36951da0daf62d3564c5d16b6276f675f5ce315acb3e53ae0e96c5051fa4e8f58de576317f15cf218aa107610e2311d30915c49350cafae1fd40be1641d075ceec846cbfb1483567551a10006aa45595a6b3df5aa801f6bfca4fd483d51c4fbe29b2792cf9929c17c038c036f479c516b5770cd6ce2d6a3ae93df61c2d7dc06d0b1ae8f59217c8c13118c44a6f09ee1f1898a07c4dfdd01cd4a07181171c8d57f973cf5bef481502802fbe39671fb0012e1ec636df300bf1f4f1a766a83d3962f07fc83d9780088fac294d683ccbb5ff5f0b09b933f21286e892c89a1b2d4ec6b67fcdd38b0fc5d036951124e4d9b39ca3eaca90ff71057b5d8fe5cd708e07939841515139717f4711b58256b09e92bee0713e5216a94148f1f8a8041da5b9a6d26cd4cde4d5e5f66c8112190b6db4d8c574217899f3a19fad5b0c4eeb07be6eb439ceaed1510a72745aff2c2a65215340eeb40256d1845930fdd9c624583c36bfea08848ee6b2fc3083304cb721cadf30e93231e6fb9e7c142d05522d654873f4c3bd576ed0b12fe0092f1fcd9f12c132dcd3ca5537d75ec5b754c768662acde25dd98f057e95cf1fa77028a66e0b1de2989268319a317b69ee91205a17b1dcdada826367f3b52f46ebda0a2fe8d60755bb0b5550ac1428b69ae20a8f36871a7d3ad919f4ec4089ae5a3806c6d595944ebd8edef1f9448affa5456fecad8b110012053a43bc16bbb6664d1be2638c357335c66ce4236893de9cd3a3df9c0408d4ca2143d58cef4882c2be509efc3f184eae01388750d0ce57ee86aa2f52c979f5921b603b80846b948bb764feb3dcbe4029e77cf9ce0024f468af1091dd16d45b9ff92bf9b1883e37e9b21e12d64073de092af9e95abe0d65a7e534295268748b73e37d55eeaa374bce1a5e2f653f97ddd9431a7ee5f193cc9953f17f37e42e72d41641169ec586f23d945ca8dd9578c402f1e088f285672a17340af3441add448b8c390c8cd4dfb476eb6f8cb77ce5dd93cd98e66e8b64b670597af7e7d7a468ebffcc2720736caccdd41ef4c32d2d339e061aa90b60e576249bd36cd456e4a2d94c8b221b90923c7666259c45bcf1ef4d74746aceb995b3359b70bdeac5b8df2e4484ef2c057fce84c500d5db2e625fd5fe53d47432f79fbcc6d6d90ef0b802ff236909155dd972d2705ac0c566c1e4ee445d9a37202582f0eb3f11762f35268ec1e95f93b8db5ae52f10e5cd63914819af04643420c70053f833b1033f3d68735c3a7dcc0c546119b7642f1046a52f5d3da5819dceffada233fc5788b23922980e9174f0256507186e54d7403606392c14fcfb6e550d30410a5429b53cfe1fe89f6491f6b86482ab9c182c7479f88b0749d201fc30fac4ba7219aa222ad0fe898b655e9fde32ae71cf25b530172711b4b832d04f95786a62f30494e062864d9e69b30e5868ada98a342651b1426f07188be95816f37453481800e1155591f1816b6ae2e37da36e572725c475ba885e23f65fb3d67d3e8823090c133b1fe8784b72d6bfec11e045ec630148dc8bb18495b25897224e4087fafbbca15ed35334dfdc20825787e95b44cf446f5a6db1a877c3e9049aae9415a45e8d3cc5c6b006294c9abad27874e55efa241a875ef9dae4dff4254a2291b59ac2fc7e136555c2ddca276b433a6e18542c6ebdaf804bec748ae6baf19a1efbccc65f07f82785bd1afdb3fe7b753dcd65b14b663cd7f97603394418e72e700f16ebe0076556d0aa8f1c9de1501d87685c3f023d683b27d4750fd2c14e315ba459b424e9be6d56c78decdafb05f22e071346280e121a88db01c7f9715059af2f7f4df75d467801b3cfee54ba8e899e6aa66055ace43ae1f80305b6574ad96ba11b045afc7f609785d367d80c1674cc56ce20192c8064b14fd9e483d8c3357048d79bd1444f917a42ada9a378e9a52c3776274a34e2027de81e2a98262f589886afa6397b4a5b22b25b559c625d8db581cb8e5ffbf603aec5f2c063daf29b23abb39b6e887d30c669a9944bae8ae5943715733f67a4fccad37d83a1f29dfde5b81dfb275ea35e4abe93190d806272a9249060171676e5cb489fdb11575d3714a3461ce5be9c3a4a22deb464cd0f8e3cb473ec2373ab77b92555ed7a649dbb088c84f9b9c99958bfb651f5d4df280a93fe7a271a05cfa0ced4e580c99f33ba177e2e2cbd97d30cbc7d3c741fce8e0b692de61b46ec5498bd0d7a2be371a87e1645fcebb3a111c3cdba21fc74ddae152e74e32651d1b463f317e43598987ddccefb4673e502caab752dd8694418d16527ef2e43143c3441523cde62f7167f9bcc8430611a9c7bfadd850b7ac8cefd45c77dd18a0a2adf9a3d842b78eccc0d7b2210cbed649dea46d6cad357bba072bc688b42310d0b28089533e971d4135b68ee72d81d9fb5d345c4174b355d1b9b1d7ecf5a3d20b7db84328979ae78f40febb139d67d2dfb87910e44a29154f3d6cf2846d24029afc63b053e90302ab8fa6e675304ff8e8855c59f540db639d03aa2ea3d3969705de2dc5d0372c50ed47467d656affe13804dc27f9b59e944407873a0f8bf49488354e267245720feebd72a60b53b02466b138a76a53cffecff1b326675aa215e1aa518e3e46ac214423f3f99e3ef1cedf118b709bdbe73523cd9a65be3d213458ed34ce6e741516bc992d584498aefed70eb8d62caf65dfb9ac2523fcf0ae5121d05b44d249e082a2828a10c16920c7f0a9308f4a2e35356ce546f43937c58211d55c813ca5a85376baa21182217b315d1f483cdaf6f4872413721e7fcc26351ea1ad45920fcfa344c26135cfef13760a8bd81277702e9615d020e9566689d1aa64ae1606076f655b91c1a31ead13996b40cf2cb2717d5a8c890de5f75805f32b1dfab5993b3ea527beaea87d594838ce0fcc6603503972a4d92153eac0f8c089991f6d1314426a8e3635bdaa4f38b5baacaf094b04965ce74c77ca26384225855b92063b3b4df68472ce4d8beef9bb9087d17bb20fc3e07bb2327a414bbf263ca44ef61469e12afbc51293e8daccf325529cdf00be462fcb5c46c287d8b69237e8459c19e526e46bfabf8d0d4d5fe938e8ce3f65d299d56513cdc71302cd93b7168537724f54910a04e01920113cca2ea265e9793bad35dc6f321751788a3006fcf07243404786c8640e499d1db9010d02bb2f5c1533f4c4d7b19a98056ef245ab1355c1007b2b3e7d54c9be1951d906e17f91b3960737db0be1b331a58cd527d383409268effb134d87dcb9562e5db86dad785bbda52c7727f4568c62b2e293a9cc89ba16abfeb0d327723500f6c27dfa5111cbda29a8217a80280bb988c4416c924c898dd9aff9cfb1fd845a637a10cca843d0b8f8b552d29b2f33372d23b87a632fe62e85f2bc9bd3e78f3b487d2404e2744f08b3fc0fa57ed7af1363540fab5fe65aff3e22baffcf6048bdbe5f40c0040e11d4f786d82ef5398700f953d383bbc0b2f53b3c67e44626cb8fc183fcc26d892d174587cee4d9eadf2a5f00d250b77aae93c76ca6d5c2ffba3cf616756b2b53ae5130f57e48ce53ab8d7b76e3eac337fed311fe9700b5a522041345d6c08d6422ac8572d4785d352b8874327bebd193cf89c324487021a5f1fcf1233a3214ff5716b912c1ae09214e41eda04db532ac8a0fda0900b8db3b45388a4d93a61e106820c0de4921a66c75667872fdcd183948d7f2cec30eab4cf469e854de44adc51253586f4b83adc92069a580878d69054ed7b60bfded235f68591377a003799e57ebecca25ab31737fb63ce6b51c1f4b3d4d0a4946374bd269ed4758daab57fa944acb7848a613a7ef0f1fd5177c9682108f8101474e095360fa51fb288777252fcb1688c966dd2e34ff75d06a5a9db2a003efcf0b66cd9b4b2cda63c7c0fd70ee3d6828e82742cb56b46d7685c4ebf86a5b9053ff6b731c46d6f850ea6a1e1cd4885ef53db170622400bb123c6fd9241d488b702f249222b189a074993a6a00ba1b43b6dc1da78fd45ef1b16728a1de380c3c18cf1662c804f8a0671f36f7054321ce8284acda5126483695ac993f9f7fe0dc4a66bba6061c1fe40201c70bb763d6a7337cd4b10b9ff4cc02303712e0ac683cc7446891a3cda825aa934596a6b25805f83f9a2d2e38b09dc2ed9e9e85e5b4c81046504f282e6775b8e414d6a1bcc909640216b298126e3be2d3648cdc8170770c68389ab3eff0ab908c1a3aed3037800e637121170bcc54571a01637a1afcea81a5f29214708b14a6fd65c745cc0ffe8295ed5ad653372ad6a512bdf8a12fdea3b077ed5ad7deabd895e29febdac67fb4b7128187d4ce44f642abf3348fe6e5daaa36dfb11d831d4715912d0081f7048bf8d35583cec4c844a0239eaec680134c1eefaff45fc918c2a64f70457f7386e521a0e6a8df52b6948e49753fe1b02c6e9a86d635ed854d79f5400a21a9d6e4f1573f63dcfe7a5e42f353731e5f5f4db7ba2cd73dc655204b97e6f20390cc45777199120860d47f53f43d9e4e98645be8c4989d47d705a5fb5202b01c59f8ff834f8f3a4f11a797b387c4196debbe003ebfade91dc2dcd0c573f465b85e102c8e45ad287581269015d2fa674068192c19424a43d4a69b8cb5c3c6f9d2b5eefbb0aee150308540c83053d260f488b9a11188a1e220ee96d4420d08ac4595abfef6b8dfad041076cc410cafee4fc8a8c45b442d478b2abee82218bda8e32ac017004fc3c65d348e543492a5e6bfb9d50f80e827187a2bde22a8465f1b18bb1502c6ec7d51d4bd2582f6ad199c983535628a2cb208b4ad95a34b4a7517d7c969d2504d8fe9ecfecb86a5f1a44017b0b465698cf0739cac9e2792b1a99ecc6f5fa7fdaa40473165015ca2be4548100569d9c980b2b638f37a46e766d948201df43c5da266d8c749f17036e862db48bfb792cc1875497d793e2e50b707145044f2364c198205fdf384e8972bbdb54b8c7a4befb205ff31372aaf1509a00b5d51a6e976b110cca60e3ae7f41a2d7bb7c385b1a5d098753f402e2fc7eb2ee91e4eea4d22e1f1c635115247c47be1d065f8dc156b1486f1657ca91af13493835e9430fd2060450a7d204a5121769fcd8648de2ffb6501151dea2f89d19beb415a8f3ea90b98ceadf4da729e9481c4084c3185ebbcc419f61c6de3c5d454600540fabf34579728c1298d69eb714aab5fb5f3ae9bb065ffaed9026eadf93d01885fe3bc8e7ad87814545c0372359ff5dbb5829b9da10c6e16799f3d4359527e7f6144995b67e9a5341561da3342bd00f3689335a90fe019e6a1f69d0aae8ff046587a5c96885106b39e4e45dee2de8d5a1739f55191e1c48b17f1f1e58a195a4b4b79ec8d14fcfa6a056b7362a35ae5ac50722b70e0f06542cebb7ea6dd8b51fe376da27f9821e11becfd66a470a878197f2d3bc1164940a045d9d2fbdefe1e1b9cb1ab5dde0d1c26001b5bf7c01ea364386101db387aa6a01cdd6117373b8c49fa32c636c4b3bd13c0d43194b2d1d577f65b0972400bcaa07f0f66bc2249a3d5fd6ad64052b434167b416bda718350e94d536cee13015b3254fd890e170d3f1a998451b8281129f562e5e62244e03692e89c4050c349d228aa7528648004fb03e7cea40563ada47b91a025c22300bbc87cadd93093e8acdcc693af78337c7fb749de62cfdb2822e62cf90b5d71afcbfc5575f2e0dc9e8aa83f201768c4a6ec9b3fbd5b8fea81e15f15de93e6d4112149015256018094478b48f92133f4c9ee1218419d93048a0abe8e90ab17b6a78a4819b7850b288ccd219cbfa07a6a4acfefd00a94b08bf404a0afc9d99463b190025c67d541f062722e194c9e4b60bdef0dc9f4897ccfe054f49af1e8a095aba157498f0d3b2a5a83a2d3552a40a78129e6e8af7567d453a2b2b82cd57db2011cb7c449c8b3fb2501fed758f27a6f618bfccb5c311d0d60ccd7d310de94b5c8572cca98a005e6c6ee4900da1b2000c2fb429bb19568d9bffb74b0a2af80402ab55a58f77f54412648ae5f856fd43163432a38cda5691a8a7ed92b4db79084dac52341de585df9d283dafb3cd4009ef187faa2e1873fe75dc90eb988d3d30557ca439df717e2a84cfbee68f056ba0baf7b4974227ff16a563af8e7b5e7de913ff745470fb89043645ef8984c3941b15f5ba4bfa089e2e338e08cf5f0308f83bcaaf1cf41473de6a9a06ab974444a679d5f1220199f368c06e46e6829310aa24005a3934590f610b986b56f7f49a09f3a393d7b288df86a31b03c3ccc6408e6bcb485d1cc55e75192c34e09e17fcfe9c85b42d6a5d4f1e3d248c2f98b483e14c856e71b1327c683ecded35a6f73abb7fb45ac31d720afd1b4efd05e68399454b897e52643fb3e7f85cc4e5d682e4fd499665406549606a9d6ce8b96c77d8bc3740913482a5f9b5d5e7b0f10b936f42c8bea9e8c8c9625f74f1eef86264f86c2742446905b7e70cc4f47e87edd93a8229c557b2f88f34eac487a8324799ac18418fab4e41caefdab9da015465bec9c5a1505e983c0bc68e58c6b1ee5bfa42d14dd39160ebe44b3c6b9a23a075df1e68fe9751ca2cbf31e86a4515009ca9528a2d29f03a11094d759127f1c36f36ec3c0cdbd98ef86d3deb280a019fea362ca5044bac17b2f987796beb5325d98b401eb0060ce9c31d2c40ab8af8882c923bc457dc4ed5505429b6ab2a3663e8803aaa365a764a2f156fc86c863fd2f6c340fd5384afc711b1479473a4e77a9892efc1cf3e0dafcb9fedfc77dfe01140016e345fa46cc4b8dd531045fb386d233913d69d81c78a602c2f04a46b923ac2dd0ee067b6cc59389fe2c392dc34208b3cc8c5ff45e97bde65a5d611c14861f03814d7540ff7be06944fd059c8a4ecb5bbce43e95e9f7b9f7532b070bb3f3e63ee7bca5d85620ea6db51724622d1ddbca2c7e6518dd2f6555e70b5acf60c09c85b776c409fe61995dcd4ffb48d79d2f109f5e1c97925d0efe21b5933c83848dd23a80d5dc727cab83bba4df0a223bef0193bb282aca8a7e3495f98d437d6ff5ce53381030a8bf41494304bc6b6e335eee21af7b319083577b0d5f9e038c5fc3ce4a1064a8107f3fbe2ec43a3ac1f1ff1130b4104456edfa448d866bdb69be4ae37ba6c6da19bb8fe977242a74ef65beaf926445af194e3cfcde27e9aaa67b11681d9c9583b38ce224e9f1e0372bcc0e4dba03b2dfbcdb2ce3ee0c030d116855eeb4bfd723d8fa350c88e13a9953d0659d7b1a1cd6fa429d5aa1416a2694584eafdcafc55b644af24ab41254574d851389626c8b232dca73600d609795b19e080143894061cb66c4e564d00c98d584ca75417a681291c4ec12bdd343c8d901e5dae425f70b5eec264174d8bc5c7f818ee0732cb07c62d4489a7517547b6f9c19f9b046147f24d16ab300c7c9f7075fd4b588460ed88423e86d2093f4d797917a32b445b1184f3ac0670cb4f64593bc91882cbdea929ef8cb82d355f721d2e1d418a47013bf3fd0e968e2fb74a5691fb1efb1194969b11e3e9f6d552b81947834bdd2c3921920752f3ab716ea93a5990e458d0f174e0efce611568bbc388ea9493d3825f523adc717f59a34334c90454f6f5152725cb31419a74030a5c6ae52c4588be453dc520937652f27e35e09c0dc3af8e2cdb61c0901dcede7b2a14066e99784eef7352396d8a303a201612addedab8d4ff1d21d258086fa5877122b20310aef408227b9aee6f7cea934b833841694cf9b4d8f41168c8a3132b7855bd8e120cdd871b70ea9ef486201962af3a1953925f3cbf59e2f0dae64769bdb3b07108ed07c6530d7525aa90289f735b05cf483ddee0dd888381284f5582d71cef78e97af7d511297611cd4a21093f7251e3bffe76fd7dcc0fee34f5404ba1853ec7234c8934356a1060e80d05ced4260300de2d5a912fc2ffbbe1ed1fd3807ac8109b4803616809306348d57d0761d948f7d9ec4ca98b3455f179649e074cf70a9235b0feaa032790d534bb56e59d38cfd6d78cdc08e6f6058522bd1eba2d5a6fa090f2dfe2475c0e6bb7d589d0254777a64452e6127cfb3b639586e6e20f7fbad5429aa6cf4af6ca49ae1e6cbf26f48542e89068041f186b4b6b49cdab02fe0eb75338798800c1eeea3500f5e60db41f43202649bba65b9a24c818237d65247f10bb2b4db51f627024a9c11ece04df4796a6258909eb625a5cabe01d303f5c71d05e7da1031cbd3050aecb1592ac5d242ed02ec02ce2a2b7de3a531eaf793e93056d93fe305946bfb567bab185d0b16855b5a1083fde2851baceb3ae0f1315ce33416674b058932882da4447b421bd2b3e676269ab09d3d0a64fec38b1e60f14f35f796fdb06ced8792d7634590b13fe325e9a72bdcf7ba59a4a258049cf7c9c70eff934fc44905948692108e78770dc2380a2eadf24966bb48f15a4b32cab2624861fbe7b605ff2cd3dd9b12c157623291615b6074483b6c9ef3d33b3b2f8fd1948b0ab205e85acc27a730564ac77e9cf5de653de8443c2825204af91cdaf0fe763b0546e6b6e36a16cda073ceabd9fa0d271bef34b5eac209230b1466b2e603608dab2c04d2d8b1b058ab0e126deb2e053e0dcc7c12d1ee536c1a07161edfc5644ccbb4a4200dc05c8a2cb2747227ce90f1d4d3e3acf5d86e33049eb2c12b215d19985f054b75294db26926eb893df47480307c4e2203d970c9a46b6820d8608be047ce056b75c728a523f9ea12ec0658ce3c49ef6df0e878668758df7e85c28861f52462a6cad23822b69d4caf829dc2cf73acbd706eaed7388c4f42da4525b8732c28230735212534278d2ae05a27caaa588eb1c1890b8e9af6b07c10c5960c405b24867e9e33ac48ac9d780e67331329e144b9d23e3758441a378c4d76e5f93b1ce495cbc7d0284831c5501e4222cfa86ca058d9e3c007a9d569ba87a4bf2919d66ba58a635caea9dacac1818f60caf9abccf730944ab44b411fe60d76463a9c6292a56a1e429ec7bba0ab733b1c961166b72d63e7ac08f68999718cade9c8cb4038e3b676f183d957d2d235abe267f326143cefd27277f4d2a56d190ce201d90d4b801d476ceacb738897b8c255af5718c525bff6b94fb247bb784b65bad230000304f4df9671d0c1a165a3e1b7050c33f5ae2108f956a63b1f90dab396750e349fb31263ef05fd62ab4b5e4c3d9b277077bb8486c7ea0768bfd413f104a1389c5760edef8108571a8596961956a36e7afbde28b7f150a6aa84abbab48986790bb292893a6a957676dc0d9a569f3e63db3e62e36c6f94db3d514264af73bd01582156be4289016c3135b93d3f2c72ea6cf757897a3c5b44eb5722c5635117c4627960feed592bed4348bf41027118749aacd08cea361e947662ee7675d2cb98c5b450ca216bbf57ac9b64973b5897033594500c88603729aecd2c613aeaca61dfceb49d77b84ec922d1edab523d66feb4374f97a6bcc826685dcb959cebbe1e5953e4ec1b161e2ce082f59aa37e13b1147ae196ff8f161448e6f6f977b4f5ef34873216d0863fb199dfa31fae5a211410f7d16dd07d9e66e4c3e36cc612ad86c3a5a40acda4bb080439aece9fc737a81085dc299b0007dd231133b09a533baa4483433e3370a73b1fc5c6c3d12fa95c280dd7b1f38f0bc7558ade23d84c7318c4f260578a81b4ed6a985d72c06161610449209682a7e98b53433e15347bd599cb9101575b535d4a2c1654c8bd2c1c1283fd59f7ca2282b61fbece71a941e213ca123668723b4d7ac033eb48c1c0a462f7b9e562d0d214d7a7f42a7a4581eeb82530c125bb837c043aeb5a1905130072bb8e3580dab3a2dc2f7a8bed0f2cd59c598a01e0534570e20a03ed8bc6c1a0ef71b69265c62dbed428be963688b53b229a48f6ef1d0496abf444722994e9af0392d7ba1b9f4af5c7a41669fc1f42ac36d05f7739e7bfb4f5298785ff43e983a1ca46cbff19a77c4166ba78c9fae2fbc415d11723fa505725741e50e736d711b324ba114ca05e8b7f9427071446c968d20cda8035097c48b70e1463673b0d150cfba4295e9c7b1fa2518d11be8e1de0d7968f35feb91fa55e103b1fcd0bdad96e1761627a351493a6752b71cc1652859c9cd695379a8034a3359e392ed3dc48c98ded571fc6479de8611badd48bceefa4545833784c1e3c56efec4e4a4ca812662320c5e50859b02a2e6ac5124145c123f6f6104a7b2dc12007926078dbbfdc49eab10ae6f99006cf93923afee50cb1cfc1c34678ec3a6552ca598903145cb4b8ea4dd9633062b32c4f529f034f6b45812c5321977c236aef47fbcba1e4550c5c9b320a4360b03b59881aafde1e8d4ade66da04844d1ef0a4846931582f34c86ed1621ce78da8bc6232c5b865c0a5d9b5ab7ce5487f38e09870f4d6b7460000e3d4a549f8b211f9c3c12ed1b28c5a5e811aa3f306a6868dfbafc5bb428d0e4ac895274fffe7be7aa0141a005d7d95e807ff100307257b463cc881f3d3a8f5c179ebfeb96644a3a5903e3f4618d383a06ec82514eda633a337f3d3fbc4217ae26832a25b030ab0af3568a41df24434c115e0cbc3f60dabf6c2ebdf4d85aa6209615a86d37b46de43a785182b93bcb52c64032f44ef5eb42a68d5eca09ad0052abe8b76f04f4ec554e870ce4488122c88061de7153826d776719ec64f7de1690a816e267407747a28c7ad85c72f35d4a0a22227513880c1510e3298efde970e93122fd57b087ceefbf15bd8c63e06c8a85395dc44e5080ff58560812e540231ea77b8b845a62da8ec0d84b4fd9245d780ff24bbe4279bff15ed66c89f588f3d8f2c7251c51a258ea5b0ed551fd26ebc749893cdc4010741794e4b43e75ea971db1ae3a559a3fc28aa3d35ede9b3ed3ff55d6882748dd70ae7f14f21ca7e7a45860fa5620e61c31b85c2082fdee49b2be27d3b7ac45204b541686d8331d6f1b493bc5d19df74d492fa7a8eb91bbc21d4b77550df25e76bcae725855e36c68db485cb40b9d315a4c7b6fb4e5906ed4159a7ad7dc891b129b7304fc378abb46bb3b8e8559a7cdf79d48701f54b201b2073ca1501a6d265c48db3e5495b81a715d9013599c2e258510560b03cb7baa5a246fead0f7093816dcdccfabd98b592683b46ac56224458dc7b46c8d05967db09e090cdd383d13133f12e191bab0b9f5bb7314177655d2f60690d57da7a923c6558ffd85f61c6989c2b75978acd1fc2be6257bcec29ce2949c479426334fa5bc260c62816ed616b43f6045616a969a317ad6b43154f7371ba9818142691320fb1e952b9f575936971fc479cc91e0ee65b6bfdedcf80ccc49ae0cf8d4f08884e56738b4ee13a2000d696d991c24fcfd09b8d90b311df2ab01fe033c7e4905a8abde33488af6894b79eabbd39195f7739763e24a40170ed8f4d6ecfa5bb561fbc1f116a5f117cb16a04a0499aff92e5a69729a15b3a195a877d665fdd7de97c0c2ac7b0836459a55dd2304aafe32da61ecc132069e37de742c3e8a2741b98084c271f64436125f4ee8092dc0e705f1b3774609c48af79c37f7e21596f0fd5085186656f812d8d6534fc0c302f3ac23afa1ff8a1d38739d6b8bdd2be7b307de0c63d8b1c577911d2e2f247e5b14bf46448ada402ffb245ba2f7afce9464fd2ae8edab13f3b4dd5c0e1a3ed974f974d57c3a14bee9a9910c79792bfa17ab84d168d411d32565da0e465223e8a8fd51593659d1a6019877d6e0508ddb5f386d0e97208f4dae49b36640595dc496d1bf542b61137644a70cf7c7677506bef3b21512505cdb9f19469112a7bd966a198f4ef2e41be9b7886658466feb229e5d4ecf2c1b19edf552ff1b204b23b76567414870287280164ced30fd8c9945ce430126ee8caf3361e239073499111b36600155a37df6acefe0e8a2858dca2306f1052db3381e918091486a03b6b58603763c547e69f4b4f699057c00fcd9445fc17d890cb7d82b540c8677601f51df309c3c86792f8989eee0669e1d8d340a7bcc5793c3ff90e46014f41a4c82b4b26596c5e1bd0823238ffd9cfc59f99e7cdfa218d6c35ea444f374b1a15c6e005c13e4b4c719390ebe3e9f222193fe923fb1e37f0f9aaca3d54cbe08df676ff46c8060b9b06e98472d37803479ca20516ac7b84348d6fddcfe9ac7fc75713bc6c1e6867b6376ece5087e395778cd3d206103f8ef9361c6c768af35e2f82ef119452020b92a0ca0a2a2c69e60830329423bd8455d5dfb69b02da38e112a1545c7e8b9efe49920b4f9177c80e565e069cee986c052e82d45a3800bcc8b2a62511c46390335351faab2e40dc7d428e57e03bd6d5d3be26c1024abd5fbec67452ba8826d947cf148584a5cd9f6c748c2640b7d929c9d99f5f35c24e2364482443dd7155772a138c9ca82cfc7c989bf231054d31b7f0c98a3ce0a6e0a38ecfe6ff27fdcf4e709dc1636aa1d39a813e5a2412e0f6dac0ad243290e5fe6fd833c6711543b825e14772a71250f0c181abe1022fe426a950c464bf517b3e54118585622df227bc6b3477cf50f6fdbd5ef3f0213c9004058e2af6124d12779e57ce45bd716f0110947caa803fc8b5c921e13bea4fcf10656844716f6441755589c085e4884b530baa3bcd1566e8678324ef49f9819175882e0856f7e69761697f0480d7b2404be991cd98a6a7153b856343ee7e826843b4c5d77adc3644d8df5b2081167b587304f3c540cb6220904596c85b8f2354199bba2ff7b479038f26871c17379a0403382083b588ed681bd030f7d24d3c6da8b5bc73c805a86d3a3433e8a1f647db8e1fd8fa107ca9b457ba3608c8832180ed02156ba165be12d320751af0cf39ebd702b29cf66c0020dcab1cd63ccd33407480d3bbe10ba3e74933f37d000f3e6b44f7902ecafe669ded1fd2bf2d18a6eb178b372213a017e4ef3c206dd5458e1b4dbda505d9ff14cc8dfb6d507b799cb36effc476b01d1949032c941701126ea4b371015563241c44c22034af59f47b8b078dc700dbc68b1fc43d814bf6ee2885af9d47585a54745d94ad996a65d2c6c32f6664f28ae2fe9e1a6b482632792e0785afd1783cef5fc9d4e5f0046812c8a8d107197fdd2c63e94a22865ff126432cc4aef35fec3c4f5bba8152533cabd656410eef9a80b619db9944a247d4653172b96780ca758d000081e5cba7ad8d8df4ca51b7d25fb4b3f9ab1ba64f763a812f0b502d7cc36697a1268b3aeb4169ec211dfc533b3114413f8fc28bb505cc17e02e3371f62123c4779fabe19a729098a9305e0a826f72f0f51e33dc65e733dda984b7cb080c594f55badf40bff4b7faba06418f800a1513b9b053adef42b5e91855cdfbf9f4e0579b7e57b0f5143e51a200e2b450d368856673bc81ad46ee94fb259ec3f8900da531d9947869aa7baa35b06cfdf344a0d9322164f6a0933f59f4bb0cca5f4c1b20b06d1b1c1121126151ca952b12d788907aef294b3c628fc8fb49c27fca2e9d9ed0870340075d937a6c4e0afe6b34e406b751128eced08a898251178f393f0081efe18fc449414382642ed2e5cda28ed8e233a2b663c569a60c13e0e14c838cf7cf246f1187c9fc6533e85d39afbf68637567eda9f75401f4cae689b5633bc6f989664e5bf8562589f27b6acd0175b39e329b3edb2881cccbcf9ff3132bfe22f2478134850f59d62b9ab25e0c22975740e7c9aa30c43509c139472b888da129de725030d03be2983b0f672cecd354bc134ec38e230873c4cd910dcd6ec94065e5d1f70bf36614fbde4b325f35664980866beed0d3ad640148a39308a03cf77778f8b7a55714d2926070945066e9a84d159487b1d1b8033ba4cee1414d5a74f0cc052fb9b8c6249f72e90ada6f0c69544cc9920fa41ab02544b9700f6eb139a3ad9bceccdffde5ee642c4f1d1985b4b95bfc5c02b41ff7349c772eb82f282880d1586afff8467abdf1ccc4702196414daf9aaf9523a56677cc3851f9a586cfd41dade8171cb4248fbd63d3ed1d7f8b4d111c831840c6863ff5ae2cba2f7fe86b89177f9971dad125fc7483b3f3a4084594dda8ad3db4140d517bc2f0dabf165205bc5c16e87b558bac1d459e8e360d7c249d300d7294b0a4b54d942656ea79f91627ca31fb22d7821bbe4ba1ea08af42e7d74c96148782b09d3717e15b24226494a024102a84dc66a2ca908a793670f0449097556e777523f2be99506388a191d9c88759381e8c02b37082b9acd468cb0440bb8e9c32d18143ae5ee8a64ac76dd8a210163c806bb0785482453e1449aab241818018036695eb1b471219a79e3c0e1cb3806624aefeb4adf3c69f9a23be58bb0675ad458150dad4ae40d1b00ad1ac75fd7da6c5ef014e2c4af7580bc5fc8f7ef9b6c7c532735ce065a8dbc0602e9693068e8228ae3bb13c68d5dca8d118ac27a36230ede55b4dff24bf34278a664f2dfc759dfd24d0936976c4cb0065123ea30f89856813672e1355f4964931e2e756c681d257c2ed31a31f45fa8781a942a632e787be34e88127fccf26bc133577d465b02e8f04c0680fd52285b4194eb4a362e5442621439f1a4dad8d26f5f91360fcd5c80d52182ee03270e459dfd9db4403cfeed5017e32f138028cca760f7469970872136fbb6de277f66458d67b2530087461b27554971e68b6742dc62af0731411ba61632a4bd336792166918dd1b754b934cb1531984d358b70571668e22a2dc5c82f76f342589d975d2151304c7c3d716f166461c34382aaf8ea9a67d3e4c26ea6e1595c15d989d957bc86cf85ab765778a8e1522dc65f40b2ea8b07d0e611d28faf78f385171e09df59e2d1c7fe2d6e89d83550a704cef07e4de09fe583f96925df9da5f6789c9ebb5ef5baf1ed4b45a2a374c77c6a9ffa055fc2db5794e43bc0a6ded6b67935d1f95fb50293efcd25d963b06da3dcdf9cd9b4e946fe849d2d9ca70a2e2a575118fa616cbd2b046341305c7547aca75f82e199bd628d1e2107dbc3727075988509e87253ca8b0dd8194fc4a54c313ff3c0f705e5688b4911df4a4c9ca465f8c1652481c0b0e5ecbe1a9d0824f664d24990bd2564504c84311039e94cc0a57576db63be94e5cc90b27e68a452be13a59483dc3024099ff1cff44dcedf0c56301b709d933933209855f11d4fc0d11f3b9d763359230ae3f6e6d2ac5d7849231cfa7f77d0925d3e24d73c3c5d9683bab583bdff08d30ef44a6249064ed9535abfbd9dd8c9526caeb9ffc404d105b3245eb89f6b9ca71e0985b2152b4582e8bb829e9f3dd642464f7ffac7c20e347f0a2382e856c6ac0e196180949658d505bce0fcdfbe9b27fe9d06111b5cd476150e5461d10e7ecb7043bc81d32e0c63c7b255070abc7bffae699c494c97d78430b8d9c10ddb9d60c8aa9d352c465bd2121a9cb50960d120f91d18aad306bfd336d7dbb7c12dbd1c5215e25f5846d858ddbe2a6bf525bbae1beff39d1cb15fd430ca4136b50c2cc76cb1cd50959fe2c25287ebd471720e6b367a38048b5aca12d5d0a5e1f5606ecb99864cf01b4a3d2706e770b6870a6110fa6255c664c2ebf072f588daf62ecd2117aea2be82c730b936bf79ef46d5d6d0d1e80611d5d184e31c329c4cd607c9869d597f5ea5e9ba550b98dd4f7ef9e838ee343dc8b10c07f60f938db45010dd2e4c62b857ec73f29eb13e6cc4ca42141ed0906ada0e0b0321f477477d0412933c7e75160de87455f77119b38899ca7afc65e093f6b2b88d909f497b1f51e85259214abf1c43dbaae985cb00f3fd206974fa9159fab43f5b77226382c5b67bd05aa18cfb8264a79e94b20db7e7f46a890910eabde838767792dff79103a5d363a506bcdec7c06d086c43636a5a155296da11f16f94b337a73639bd688c2b638c35b6afd5b751f3574bd00d27563f160cfd61ed5c1fcf718242463c49a9333a71d20bdea4e336f31eda8051249da860a14a0d9d68d93b22c8e4114d70fce85633b20728c9b2befe0f32c0cd98f74227e9966fbda60da3c62046ee1a824c7b63104511b85ce000d4a7a29343309fd99a361be6829efa15f5a642a5d52e82de3a778d838ef37458e433c15bc4ca3101d22a4a23cccbfba06f4a7681e0ed313a3aa185f0e32f03c5f1cd4787655e2d7d1fccd0f3177d902c694961d24e7470e0081b0cb15cdfeb517d79f39e71aa0787fdef6c9c8f04b29702d760a7580fc2b4dd689a978fa1a8a7daf7a0912c321324b301a1528e3698fde1bb36503369745641f0cd48c7e57aa07b4e43c69967ecf2e5bdd3e12f66e7d1f4c7c6da9e405ca27e2b9e0a516cc621b11c5a8bcc91940028a9e8c47bd788ce88251283b448e098d19c408ea95f41d624e0db17165e01f5475c3859e1f34119770bb6c193960ffba7c1afb98812f176a4fe6fca2b763be18c5729081fcfe3dd7e2aa45ded3cb9a10d8b1f79f5cbe7d978074c1e93878b3be355db5d2bc7c3ba02fea5fb7ca294c249d6cf37d073ad85f004751d0d82f7306cb072ff061f84d8f87e7069217c6e5761701e498f71631d366de905e73a7d25584a6fab8e67aeb20eab82a98fb2d50dbb823a61bbd8946dedc88d67c9f4808708bf5f3e1c7e7a92e88481fd307c42c0fe9f3d9dbd586f0aa13a66fe0b949e6d3a6faf2fb05dbc088e32a34f4ddacba0f10e931460826409961eb3e5579764d69abb52cc1b63829a4152c23d4cc8dc1ecd4b712a930e69386166aa63692c8d7bdc1607fb2837844dcc18148afcc70d65dbf29e9ce79556a04b4bcd694ed290494502ef5bb1c2298590bbf1be19c7334ca4498a9779a5659f7b31819e1bc29946dd1420580e2462c22c4f542b1feee02aeb4b1cc5a4b0c6a3beae10765f006c5d481a69601aad2b34377b1256b25e5c74ea273ce326e96cd1317e511d5eeef23cee979a17fc0ab532e00ba688a83ff4be12114a54bf11a9ebe10d3ab76553ae4aeca20351ddc25716b3ffe0e02e39c61e16776fce8b593731107df7b370f5155bb9a2a4c445ea5238c2e5e640cf7a915d314ec59271dc80d61f6d20bc2fda0907d7972ff771435b19f090a155456974e545b99bd5d4776da03953df743f80f40f493f1652a47e584d0ecd16f821a996c202e0fba591b52e4bf168f8282f579ad0914eaa3581f4ca95256ce2937aff148ee4fad681a8ee2e366b39016c0c91cbc5528b4d6a0078f7cd1c1e238655d97cf4c9dd73df4825565525604d95a83f61067db9068544e230011f7921290f0d54f70a477d7df561ecdb12a6cc2ac7d35aeb767b7cdaf0373406494f5574a2d1896a2b717caf694275beb23005b8a267b2a3206664b3487aa6bb870761cd075a7715cc8511c091afaa2e3b54ef308c6871a50e38a7855a2eaa2582669326edfaff1c7dc65d9b81e347e64ea1dc4b62f33b01df86cbbeafc20bcdc8744636c49599464d71642c1207acb14ed5a887284a2a6360c839d0fbb800c89d74955036f7562c0dc5be08bfca3d462a05e7109ded5f99222da32d4168cb9ff53e80e440e89069d2eb5168c6a1bc1c6a15a5f7a434102292b47c194f8fb62f2188d6786c46bd8e11f72fbcf60cf10c45795ca7a89230a7117c8f8069dbd1eebe7211f1aa089714d773cda08ab43477567b4c86d3f37c0752ff67e8a75d7187fe8a74e3906dddd7e97422266f7a6aeae3ad1ea5f368a84bf999f34f1213d305784ef3347535570eb166cc90647b309d6abc7cf8611a72cd64dd2ac123efb0cb4257541494b32690dc23ba4eaa9069cbacc6416bd971e4c9b19f4996542004b4f2413100e40bfe761247f7ac5c5674e137f72676504c04398154a2b2b860cf8e3ce0b6c9b4df6e7537c854157bd4c6a534014f418d9d66be7b2236c643d4a23a2d4b738f3ee5f5bfacedb8996137a8476bf8113047ed4b893839b1479a207ae660fa222cb3f866109e6294b7665517fd15cad4080a7cdef37feb0c1860615c91f45ce558514f708f40d7ba952c33e2d9ea8ab90dac2d43479f6a491cdc18e0c154d425fa145b777f4d1d6a2ee3bf200bd1bd4c4053fee72e751eff03a4660be058bdf63fef2c8f4f4c451b3a89f1b4ba50aaa519240db9edc2e9d516b6e3288c4916a0534b4645b043aa066d0aaf3b10de2ec88333c32bcee37932b7809f3bdf8d6d126578e03e3b3ae6dd3a351c44c0378cb21f8996c636c10e54c14b78079d8adb306a599ddd698b04c82bf01d3d592c55fcdd1f70aec28db9ed8eab599f4626dc32d98a82226a0fb44476af577a1ab225dfdafc22bf9907d5f601ef6f5771c077d5f0e6c5826a726f7fa60719e4ed94a08f31bdf2269ef5367885d94e6c2ce4856298358e8ed551359c2fa0c05e716cf3018afc51e87b4349dbee953e5e809f69a14d1a089f371a1285d46d15e377a32beb355fc56db67c3d6a4c744743b71c8c92363f4b0508f077bec7945a56399fd4ec808b715c77dd1253ddde3728b6c4d4f56eaf278783e70a6246937050e4dfdf3c92d9f2a3cd421e55efc782e73a45652112bfa105f0c9a3cf67c5ecaae2b2ba1c9346e2b1064a2ac782d282ae89e545f6c727433d6440f657e74e76bd409d78db97410a3503315767c5c685e1275b47a35733d6bd0faf0dce44c87826c262d74ede394c461569e77814e2b95aefa18533a53c809e9b3f0d1e009f73ac3cfab256d518404c220d2586b19e2a9ba173fed0e43cd64252031df1befb896d2880a352ff09d8e79d36544eaf8bdc7b39a5c68021843f2b53664a25f209fa8af7896da82c398ba2faa54b96abdfae42958138a53da118f92265355c800fc9aeabc1ded07bb5ce440b8452297a13d583e16571c32db8b6386300437ffd60ada9d0c79dd4bd55d4bf20fc9531346cdd16fd453a7501771a4cfbd93694f2e7e83ad3b80d5de1f8be213b3a92f8669f76fb8d740ba4389c41931f8f5c3ae4e9928924790740233de8d12cae8cbfc68460133566da6102eb10354d9a598995b4175d88c912d2dfd6da9bc34132fb06c0a29b20836794bc874ff2b615d880bb0a259f34b141bc372e230e3e8fc807a7809edec94d85734c65a15ea1c15d9fe2bad21efe5ca3f36fd61c2eb96c1f495365d283775e3783397c6a806e3258e02f8b496864168ee066fb8f7d5cb2dcad93afc657d94a80863ccce8c7a08d5ffe7e496349bb874b836b44f55db5aace94e7e9307103b3e8004076ea036d5a22893a865fdb7c0b53709bdc48baf09a8aeb8a6ca4d7de468853505f9904c5dfdcb6a6eb46fe4de5c6753e1b65dd2310bbbce3be11dc339274b58ba17df237319ef1516547a32c0d01561b4297fab67640f29e49943cfe17c942a9a567838b83c939f43dae049e76995442aec8d99cbe2f50bcefd76c06661f00235daa3e8b85a924708ed8b5a22bf7f526da28dc90d89c1ae4957da588e51d26d816f691b8c3a6e7aba0c417b15e3c5ccd482679bafaef838de3d3ca5187e2d1514cdca5140903137c85f6b5ace28396c676ea5c246ef8402abef5d57333b6b42653085a29f9d91826ef0403af69f96c056a99177bb3fef335e9f423f3c04323f700b7bfff3191cabf8531287d99367bba777753a59c4b3d4bd579b113f213618f09eea2dcb63742d6293daf7b316b70ff4ae782cd09cfb9179cc00fca0dc5f0663f606816865a0c0e3b75ef047d80981c73572e3f1b8b42930854f663fc54236573ef11f579681c73175b9613b3574d9e8a0d89a137da0a55d346349e91bf545ee690b9d8ea8910c131302d6712426bcf01eb79018e0ef601374f53f35270326615ad0a728ffb809f58a4275fddeb13a7e928a8ba580f1e4a63484acfa39f872a4df3523789b14b23952bd25ffd7b86ee8e6ad35fa244eb4d4ec177149bd286806107442278f9d537d8888e5192a5f53c425ee706c907df9f0795cd2fe876415d2a55a91b8ca99c38935e213b4390e91f8183414c29c1b3f421364d6d9fd0c0b354370349e09b984712b57a1aa9be39617adc5241c82f1a1ad5da7ea0154f6138819ff9bcd4c7f32fddcabf7de3d2e3a99b935662c2b5305efef5e206b8df5119ae3b0aab6c1e24129ce50174265a3d664a4901dce4889ceaa422e0f7ed66d11e9260d7196d042e77e80d7de96c628e9b269adaad0ff0a53c29931f26fe9a2025058c47bd510780fb9a0e616c4b25bac0a2a4abbc59193e2f3764ebc7cc6d96c9c7b75d663405a0c4b1da9e886ca3a7a2da2ba02097cc8fb1d6172046a2c00378f3708bae1e389f22bd941e3e06c66c720720535934376716e6e56d5e588880a63001edaae9809d821461c86cd35048acac40bf12ed972146293dc23003a1c388dd86903f3f81529f06a07ed8e14dbdd2e5aedf0fdbedbf1006c4e6d0b87bd2c02a5fe058083ca3891196e783cf9859aa781033f527658dc3c100ef936942c56cd1ce61551cad7d7af8cc258b5789df230ce8063f92ab79d23317e2769ffd54e21a0f895897b3b81bed81cd80fcab88413273f33561d7eaace1a209c1e8c2a5ac3641dd00b77be56c3ff5c9d0b1d20896de18208c343a50e10e9ed5e26275f6818527f5dc85ad785c460ae3be77da3a012b6abef05c3160b15a99eded4daf70c42e02c35b1277a7342a076e952bed8d41f9d355e0b6ee0ae25ebb8aee027bb42d16017342928999dc39a2575f74c1f8714ce2976c3f78acd6f0f5c5980690b519e0bfd9f12b8443af85ff428438ef31988c6b87c8d063fd91021e7b1d5515d53c84bd9664afb3886422b1e90fb5a4b872067ca091da609f09ee1fcebc38b34664d9b14b8995800da4728f567915d0e348ba705a107168fc1d391dbe1b7789017b24842dbe82c390a52a7cb46ac85e78f7d4add58ccd4314216330aa2e02da943e173206da4d21bed1e0cc3a11edbb69a944399144c83058be0bab0cbca064d132d0613eb39055c6a2d444e32b1c716c0d96c0847c44d9207114b2c2cf47183081bcc94d3fb702356bbc7280ade3a6bcc34e858c1905af444673f52384eae4b366b0f4f2fdcd0a9c773823f1f3595c5ca79bd31135a1cb725f712742bff97bd651737cc4ebd8fefc4f794d5c0465abe22eefdf9070a52b9bba8ff0dad6608e34f92ceb1d7f905c5c4380f211cba096ad201770b72819db0d9abdc97e96419184c6fd9da8bc76ffb10957a4270c994aa647f07bcb0c6ffce59e929c3bfe929dd58c3547eb583da9b87053f99ba650796572902af9f7cef71c9ed0758bfda825f3ed6779697c11ffaea046ea6e1ee260b576c2df076c7b2e636c0472d2e7d3c6437816ea121111ad34add82e6a9985e65088e58ceb4d17051ab62f1cfbce077940eef49e32d5eaf4cf8315fe714f4ac3d6a2fb9aa0fb7780383984665d37b2bfa58675b21ddf2225b0bae10a447b23d312a28f60463142cfc82fe9bc9377ebc2037d825fa3ec1acbc3739f62eb418046909eed48fcd3beb3da5989fd0788ef39c60c9e0f78a9f855912bc0ebdf6a3992c8449ed8fdd175fec333d41db863d0862435871001c1d1646f3ab6d3806d540e7465575be2cda9fe159668e30c746e42d5198f9422f7fff2756be08f421ef3bec7444bc0d5b6732baa3b49eca10bb48a402654c1f498ef4afede6b92ec0a73d5aab9a656854673f224206f2086b14236f103d0c659419708898ea2a3efe45b8063fe831c244563b9c18f622d8e92c28275eb0a63797ff4cdcbf2d55a20219e2e56bd12ed2c79aee24f4c867aead08b4086be5b5930b94dfa9d1aae74ef915d668a12241ab0f85962b6932878a91d8958d4cc9edf76e64a27546cb4b426cf1c4c0b176335c88e637d1de1431fdffbc287c6cd816ab0fca321ab4f34990cbb8f931123857b1783aac4d02c2ff958989967526c807a20a7bca7bddfa66984cbea1f872b25f1f8c01db518658672c6cc9f31101fee9037438454e71d9b06d3ec46a4129bfb583d272bfbe6c898b9b0565b35b4386f741512b8aa84905f7e4a58020aa84f4e412f2fc681d926a66ab89562fda4f627efca73e42d9396c70de3da37a32e9886f5fa15f7ab78614d8a0431c16d240180049d56e0a67de83a3d738f0b44aa6b587076e58876406ae6cb288ccb7ce3f1120ad3dfb14fc8359677c35be37623b569aa4f325d54cb664f60bcc51dbf81d29f455ef28e1a71c70abbda6f66b7d030609dc0fb463f812d070112b1ff5a848bdb9bf387a617536b35c7721258a5c5e98b36c3dbf823c68861fc0fe4426b94f18eb7e93e481278da857f81543f6248c778803d14db93a6b7734d068895c12186a6b31da496998e4ce666700a4b470905dbca3dff75ae6d0ed28a1934d7a090d5093f5db5cf725c12c322b54dbee672284f6ea0215b0f2936a28d9b1d89552641e087bae04f7f3a8ec9b81aab445b24553183ede8826f30776ad46dcdc0fe4383046c3786cbb9904c5454c960e1f47254d85e02bb952fe01ab742f52ae49636dfbf7de5bb35174d09af135de8f0683bf948ad3a71648dbd3bb1ffe6ff6ee7c5ec1db3ff8d2db72bb7885dc50dff5af31d476bb59fb6c20856102029608639c53c9a7bda9e554687840a79337386d5e86dac6ea180c1941ffb1fd3c73b5dcfb4b77528b0252ee7182a52bf814da483683e874279ab3d4efa374d3c01540efe0254cc59f28989d5ed9f331034a61e024717312d95285057e0aa6397a1e7e2cc34ff017c82939ea2f8ef75c7384906e1f974b77d05e180cbb6436b5cc14098aec3a58e1348f9b35946a099eb25926b08ba5f43a3d1fe70df640dca8e954a96c095e8c4ea892e1ec139b297cb0a22d27ea045ecfdd3a201a3f927654125c40c5351e0ee5cdec74258fe55715b999b34312429e737945a43c4e2ef25b3045b5b1523bb97cf43470d4bf1f8c0811d01ee7577de53636b3475e184b0fe1575764b8422daccd3a8f8da4b1e7df52e6a2bfb12cd804bdbdcb458137c492243eca03a9b01a16c5353de4b4f2f08edced8d2e7ee3b7051e505928632b6c87ec8133f5e18f37561e8c8ab9d5f86d9cf091c44169088bb3a7885ddaeb4349411993597cd1fc43b75fab10ee7194de43cbc22df586f181e29aaa2677faa60a4ce4e9a44c82c86065c867f6b9a35492fff2f067059ad6c5979d40c386e737737b5601827854ac519b33d11e7cd6958631a25fd5cc3eb956a134d35566dfa14d5ab056c9ada8e820de7d6af24d387b9604c2e8c2438b0202acc35d6cfc7f0472eb0163021fdaa92377ff18deddfa6cf740712f19b003961d475af304da964386bdaec8a36de91421d72590bcba62f61d7ba389ad2028330588d6ad0a36f4135c3028dab67f2bfa6b01378949807d7a13415e344973904b3ec4dd6eb8d456951841eb57d174a1932d0ba1728ea517eae9d6f58484216094814c3237ef5dad1e4af207488061c00338e88912f9194be664d2b70def06c3a969631c3ae7a7843576e2c77abcdd96512e41a59caea5264379e311344b16d7002e3a6b3e418e83938601a79fff77213057135382ff86abeed504686935eb6ddc38f7c6ca736e715d9dbc53fb66e796e161cd22f1a539e05f0d0bd1307547a9cb7687b4ae744670a820d86c5963b0c7b91bc4fb83569c2a2408609a50a6a5f750b68f25d5d7913cba710533aefc9cb9eb62f8c8b18efa3791e45ac6a06df0c4cdc136666f3360643e6cb3239bcfd2fe21439492ca767968a15bb130f994738424ba73c22c375a7eeef5bd447d6e7c72855ff56ae6a7db214c5d702e3f87e3649cd918dc6b868ebc3c0a6b091c1938bd4048c2f9689de93b9b2d930acfe9b9b1f0b3bfe4ba914c40520de7837df1eef0a908c0b9643fe08e931a99b93055725088a3863ba1411ab2c8e6a157c4d7e4e59b6a6e92e15e24a000ebd209c873ec13c8a8daa1154fdeb6f96127b995fd0de10d561e6eb0564c21dbe876f93b35e581421d1b91f2cae553f8279bc00b4672668125f12485cd0997288948efc419afb30e1ec03b2816ec4d50cdb46bd9e5d7846e455221e3a3a1c69c8506d355b51d22a339c45be3057addcc9e8c76abe43425e26aaa37e8301aea401a6ab675e3c859a92480341093cd061fb20b078b4470a2224a25800db2a82f8e7702ac97a13d78aa82339be5b4db60f89a47354b7b4c62304894487c043408f551b5308ba2d41b4c2c9009d3ecd6d03cbd322e0a39c25d56363c104adefadc25e3c7dc5b4932be6bec3679ec8e21d6e255e1962b4afb0d7b5b0a02380af41d244a43b73111836c2f3b1e61916d80f57a6c892861c673fa6558c481a9cdbcfe5c177fa6932cb343765abc3781ff51cd3eb6abaaba2bb2454f2c798c797b31302c95f2dcdbf811bbcc94a58181b795990c4904c56679a0a80d5cd25878243f0dffd39dc89f6abc45f9e9035dd96622c466d06a910d91b6a21021a659c0d0777cc96a1c68dd9cb637ab41908af13212b80ded21b9ddab41d62b35750091a4a12285c35c503f29c2028786bdc6262b0ab717860432e0c14cc2a5395caeca0e72f124e10685155514456b26740ac9215315d078d765349955ce0b00c179a6c4a48ce079edf48a9a4d7a17a8a19111946c31bb364addf83c4f73f1121e93be2efbbc66a82124d16fbce58d61c85d02e0412d234bf9509d68009c2230b81ae67f5b764e9101add6f15f396bbb8ed3ba7745f73e17375dd66f0d998013d446d5a5b1f07f66eaad295893e741d9c629887289aa51025074620aef921130e650b10a26d38aca1d0e3bb71de2a4644f08ec4ecb97a13c643aa21f98056b3ef7ad8c28e0af04a683c013bbf78ce7b6cb6963e16e260cb9bfc5bcf76cd7bb0ce5578c52a519887d5030d32ed50ab3994cc7f5fc3304827b83e436e3cd27aa4767e0a7967809922504f5f00b230dd070b134b08aee302155a5fa4b30d2217e2ab8b3244834cf72e14722cf12c9e6e1476ba5b96d388dff02c38962230ad9f26b085352522a77e71f28a6510a5d1b4733a06b9cd5ae2f964221943e1b61b88d43267299b5613a3fc77d25a72b85dab702b15479b5f3491aa24a13ab5ddabab76ce5a58ca302a02557751d70828cf9968ff74951d1492650bf780011919d15145d7ca66415de3c7ab5766b7eaa5eafc81858a55cd8800728485cb27a96097462466982e467a0254560cd0ffce3c7c982577b8b7e74fc9d160e89c06933214c8e28b9c5eccc3e4a1b1867bc67f7d9a7c420fe77bb1383d2d20e3299d7c27703f749b41740033ce2049ecde8a0180f5611ad97509e35a0fc873a45b48e7a7b54092a4f2c38ea8a3f4c0637b40327af4902a9e870ec6565e5c73991c7fd862f6a4c1ec13de9161307fb6c7e8f976384fdc65a0aa2d83472dc6f9b3cdfbf44e6585d3ef6ea6190ce0aba3f186a72b7c949af504b7af9ac2dd417901276d6f7f18c0c6bace3a47430ff5345b5fd1088810c93430d3b0d3a0aef443cdd23695aeef44b286bbd47841a2fda41375d21f993ebbb68fbace93974001a145cce2f03004ea054fdd9ab8fb64324fde3b92cce6c7a3dadb491562098c120c92ad145664bd3e807d88bd9d268f611628c26880574d1b94b0095fe3d4231fcea420d923c4ce32853a976522d191f691912e28f2758ed75e8673e59860495aff7478d6006e6f1075c03a49d67b19dcbd6b7729541f33b7973d793bcbf6f77aaa2609197c07f5f424653cb01195694588eabc75fb26cce349968fcc8785c5a5153d28d5973c639e96c9b8b0791df95035383e2a68b7fb286fb8bc7a2c44ca805c8ee3738c75daefd57135de1193866e42cc73aa63ee8af732a7ac42a8dde9117c49d8693a1ebe4816069b54f415e9a85dcf5c6e25f68a99397152d2fbbdca0517758ca05f014eb306f396ca5373ac03256ab5a02dc556f32a4df553c0b8d8a79fc493f1160000606109306558ff01f9279890f1fbf1e052e7af0c3d7ac5d81da0e03621fd454574b52bc59606aa6470787c119cfcbccf1994d6cb055b366629be4f0e4a48ef86ef1626d6f8433aa711d82d89c01ed6b2aa2644ac1e81154c0dde5df6e48155d586d52f2ea5a3316628678b91971dae676da2992e71d3cb0aef16aad3867b8513a9f6e3a5598de0bf8ec1cca16edeaedaddd84b82a97dd4519862fe27ebf738655725a1c51be9280316ebb95f6091a5e30c87214e505a1b9f940752ccf0065e06c270aa90964ca50283c4d2e570d7a4825120e83796dbca340ba671207759bc4c3b66fa304aad74e3db1d7ebc8fe08cfac356c2c6508490a459f4b43ab1f6daec9f25529b525801830f99cd866c4a87d9f98202c1de7c771a77fdf3da4fd10004d2869b8ec0e8b3567e9997d3e95884d7f21d19545e4ea4ebd12e56335c45f1658363257b0d47f07e78c81e6d5cfe09c0da500b5166931f8d72a61cbcf9db85ad56d7118c50db7a3254ad216dd0fea5fc8b90fe194c7a0be97a57bcd0c042ac37a9421cafa8ab150c8878833f1411a8a5956f02a8fee06cf0499d2bfdb77b6a4ccf8419458a518b7880718174ca4aabef09244a872f9e8d9cba2b9678df726fcc26630332e6c15982070171d93bc37c727249e42b361a65e796500834e6299feec8c3709ea02f6200b390aa01cba9d9def17098433995cf54f64d7a9007f7cc9dfd4423cebfe23c00c9aa4b1e0fbfde52278bb53d00e0de1438d8b17f1a4519a45b0427f15c53a9d1293ba7105385ae131686868e19d005eb23887f0c618db868e306a370cf8bd179d893b6a00cf459d4c21d9d380d5fcac65d9e0c797998d5cfe1e472f649470d1cde181c097b770c9ab5a9e029bb5ec0183602c4fe793835294ce1f6c51345d7bac8a8145ab6a0cec1ca6a1dab7c914917b383dd8aa7c4deb968665a78643c29bfc59511541469457412cd5fb9a474f6b163fbb25097a0b77e4bd4afc488ef3d93f405e1836274cd161a17606737be5259df5b6de6fd2d79af2d84654f41f2fb3250b42cd9842a5f02e147f800043e3442ac3df15ea269b6549634070ae0c3dc3993c8486372196f9b45d079d8b3101152194bfb3f6fe8eb68b536790ae8bdf0e3bb54372f3ba7cac67844fe9843e8230256d1260b25b366394865aa3c21ec0a311b43d56f477a94a024faeca2888b69325abe3d708a6a5d356093d553a37c739286dd42d39c889e12e1936c143d18ef675dbaef49bcfbf44d5c81c51a51dc0a0de267314aabd6f37599008b6b6e32a83d98a17b387d2079718653732747586bfdedde426a025822b1fbe9b495a3ca1c544c9f9c4669f9fba29d5436ad58b8c5c1620a7016fa48a0e45284b1f3a91e0e99a850f57021d01838f184ee3a21ec0882122177a8db7519f0c07e60279a31556ce473d00c0c1a70088f2349f64888f66228ec8b8f0fed09ac508c24bd1eff53b5f94e5b7770bd371cecc2faeeac6bdac8087d02e47823f66198e98d93975dc49eb82a4a7ab08f09c9af14a79bafda95b92b9d154a286a33333d5120b0dcd2da333f87fb8d391f342a3f05dbc82d38d821909eb07860e1ac32600aaa1740112f2e6258bda1ced7adf842d28db0884d78ae75a9707bf0aed1b746daf3a892c999b5fec27f4f3d715dce3756351a4c2dc9a0605e43026a170439aa8b80509f037fbe7490abfc39a8baef9b1328bab71b0ab0b45acf7b78cd0b4bc51060b660a3dd79d0efa18462a21a2848a257488d2ac5138db83874373d9ba6a1953a77fca5185c1232985261a2eb7b69f17aa5aab3e02e533aa4309355b4427494cb494827122ecc822dde3729ae2651a283845891c9d51f70c94d9fd66de6fba5c5a0f98893eddb93d08e8013a2b564f612f2bc257dbbdffcc589f693a33e1b8ce4e076b15180084bc111d9fe7c2c2bf1fb18d05076686d1245e0340753a87161c21518687724bb3444e445a658f29135d5b0316b652bc4a9c5abc4fc5b5b64969894744ad4a986ec0462f8c0d2ca10e734a3ef4e3be484fd3e934b0042a0cf98344cbdbdd2fd1cc9434f5bc5271d68400baff115d7df50dc8a17ae1d40343fac246dcc0ebf0abc5233fde1d714a7f8a529ed0f33637d1779700e6d22ca1a4de4811e1a2dddf833c1d2d18e78033846b55c2d54d4fe4e03c3af8ef3bd691e8811544b126a0dffbffe491db66275e207e6255bc7e4912473218328cd034b4b3e767cf647ca2900ac823122c0fbbfaef886fcef6f4faff904e92fe569047b5a0ae4abc0403c3ffea0ff25b036b1bd431af41a163dd08b4dc54d03b9093e11d095025f82d721af9164e2151d035b8933feb2e4ec40fdb8359398b6d4ab3053fd22ae305f3e12577fb07e5c11aa2498b5678685da8ed8ae253ea94a3d27c0d40153260d3c72faae738ef5bcf1f9c82bde64c3e5aa314a071a921c0a01568a2d2eb4538ddae582ccbf0ca41b61d5690b77562276025bbfdb9f8a2b929a97f6ca917c456a3affc4ebdb628043a16765d872dec0796b472354de9dcdf306ba30d000621c48257de39c838add59996ff6255e43161ece94b53ba6a04cc63605eab4d98f19a43140f282b90d6eca11d4e3af2cc441d2e7c6609b73887809a82b5e683e56d2b0b148faa570b82878e75ca54d18ab305b971890ab93a75f782bd09a3abb4480f16d7a278bba38441f33d7f1820065066175a975fdf02f5003e5a9dd7fd060e4bbb1751b143046514379d627d04d6b41d53923bd2328401a21b8c6c2434e78d4eb4b1a78b14a53c8ff3cf731a3771f65c6d4dbec3f3a3e5ad9ecc8c5ee3ee151322df21b2d813af007851b37162536d19df584bc485f9a7af2e7bc773c4b15fd65f60d87edf66952070d626babcda186534772e8ae758be528e3fe4fdddb6b91db7b265034ff9ff684fe746aab18f383ce7a733a4566a45c62ad5ca35e5099148f98db0c7dcbc0222abb1861e9ff1d66d489296bd3437defd4ca2d46a05089a3c348db5625d719842b2f8e470fe92fc16225100a56db8364136070e78cce3483acc149723953fbc1974fbdae18fa55d1fa1ae07c8e6f6d95b8ff572216181a6e743a0498267ed92daa9d72a73dbae1f07ec13b469099221231693c99f1d50298369a8331239dbb6dd604575e83ebe402387255765be03e3ea05c3073c88c8de7d28a6481f9b85898e4bdeff63deab8164c8b02d6e3f639866e2fd88fccf43138269fcfca0233cf1a34546b66ac85ada2b6e92ac1252af4a165494ddb746f06966fa74b9bab7bf95734d54732c78139d2aaee6a1750dfe3b987eedbc75058c538de1b298277b58e67cf747d6ab233ce41729d0e88aed0d57d3df0ccd8daf1e379758c65c5c758241a1c81ad2d707bda102f7a8ebdf3aedf1eca54708f56c7bcb728306aeb9b19658413bc6ede7d353a02b60f67f705d3c4c3308b51280dec38d24706884c130eb05e4dfc79b4269acb10776f6fd6747a7800c699384230c0633b4828288ba0f75faabd0a6b23b9b17bf0bb82e69b5a26a46f1a7ce7c3df25816fd63a443b8b71813584e9d65646829665b6ce82333940803c1a810dcc6274693ad0e320519b99eab3333f268fd398ffd4f43877b2f1bd9e90bf02f15e0c5228bccc8a0d602909c6d0c38fa53f3a1648f369887ddf836e4476395d9c4b60f846bf311aa9cb7bb5cd8d8a345d7ef6b3dcb5ddf54c7e0c1cc4836b17aca2be9671f43d9dfce9bdebbfc2c5f5d2b92f44474499395c2c9a12709fe9d206fec263289ab01d5bf5c7ec6d2eedbec8e0d3840a4263bd6071efdaad8ad9945bb951b2b37e86f15d3a0fa7113d323f2fc6ddcdf8034bb3664084ecb23592d4c73253b707ad7d3a682367f8d45e4fa12ae7b0fc36f13dec26e77c06989e33611823631f7d7bb2098fbc1badde856bfc93c35c0e2dd01d926e7dbfe5e5e86367b4abab4117e860de7723ba7cae74449ef5bbe81b0da2ec2c18edd94abddeefb9c15dbcad66ee7bc5dbc286f93952a463374e2370b6047b257757205f1ca188092ff3439893f87d8dab840d01229627df68ce0dc589e70fe6dfc94b5f76dacdf4810fe6771cda0212aa7503ee8180fae541cdbaf2fe71f64e20c52045173a7f243ab8406bced86e1c25e604fe702c2702413c772538b685cb817284d7b75a39796c690e4b6d7736676d64d548c34cd5b9337158702cc3f6dcd43a71da0b79857a3d2b4adc75572865a939ca7c2c9c29a68e1d04ae7f30d80affbc627d06a51955d4afbffe302a6a3f094a68050c14a18316ce83945d429ab884ac703797720c3f539dddd95b74bf44bacb5add033247c220cc500761562fa7c8d4b08436e362595f053aff8501f9b2763011ed2a5fe31da735439019344f6570667d9a2d6b3ae681a6c169b84535c94c994d78c1af8e9a7801141ef5d29c60ca28e1bc6f27c1882245e748b3a712fb2abda51cf660fc1ddd2e8fbb8581f36a039905422d5afc192cf1c2e0b87a1e1a09f8c8f6bfaf7e67a975cd5543c63fc4465302b9aaada57dabd106a3bc3646e8de8dfb6af200a67d162cb199e8160dc02ea2f21b00c751a295807a731daf9fbb790ccccc532e48e8adf3a8b0e643a13dd85590e4df0d456da49cb05997dfe6fca5b2f1a9c3420ec709443b0f54d0dd48f073f8d78227b95926c5887f2a6de302c8bf76ea6ccbcc1b5bfae3fabb743455a084592fe5f65a87c922e13d7eae87946b0bb0f168635aaaafaa65cde4a30e8ea7e0a7579f1c00f7428bf7b5075bbe04c50f4753ab181b8834c2c5d525d3f0d0ecf74e7c6f2b3b54236db63158651d6fb306275b13724aadd3f29e6f94a7012f91b3eeec20d97a8bbdafdd54dfdbccd1e926c365cf47e61f93b021ba905672b20fd99bcc3554f31f111dd41070f0dd25088687ea6a3eabe865ae110e61c13f4c3021dcc00d9a691bd914c7037e4a03fafc3a30992aef158e0b81cd0e3f62da936c23777d7775fa0a28a3b6190e2611b102967b75eecdfbbb589ac492d2a256cbb3b85026dbf538e31028df1cb66c8001d412665ec24a9e3a1331c3ed234716ff12467a0793f9c5c6fef366b3b00426d3aea09514e0b873927413dcb30321e816b94572218bab3447f89251888bfbbef577b77a2d87d9d5b2663e3ea19013f18a642f0e19a133c1688951bc63861a1c42b35e7a60b3181b50d2c53a9186d47c73873df18e4abe45e592fd4757250fab82c9c148948be7b755d8bbeeaf7044e423a3052c24167674849eaf379cf7f1b15de23d7a3d22b13fb28b98d7da9ac13c15dfa9ab0857b393e1f4c5932c6871c754378b355c3682a52f759b0238495378964fe6c6be3bc58d8caf9e0029bf11df03a2e16c3210012b9f36dac74627c45dd15bd5382ef36591d338acf666b9799ad3b4cc04b1d31f695b72c644dcac9308b0834be78637b8b3e6c0151aa0fc61179d34113e2e92a021ed0056ef712da3c44e6566f2b8b0e868d54214d95e1afa9faff5ad96d28eef6d8ac628e4d599c47c4e346f44284a483d4633d41399ff385c79936dd4579a874f70a5f332eaeeb30b2568f4c29ef02418be98db9c5bc4b5fce55b58899f7c3420157108aebbef04f1d8f5e10c916aaa47489037ad284eb526589f8491edd430eb884a552f91d032f9f1e7230e5d2edba894323a92920a8b62ffbb71e9f6ebe0cf562967b3f5875344c365618b51af9e1b97b5a98b128ed575390511e8bf4d4ca2f7446a9a3bae03efef2aa8c6f19c743165364f62966fa706d5699c31502a1b880c8377e41783e1ba875df81bcfde8196b20000f50783c82d0e8e25fb6d645dfa135b0ae42e4fb2a8b4d0617afb455f7c8e922010b04e400c5908d7d32c1fac52126ce6d855fb51ba76d4624ea9fd030eab7a1b1e647091a59c86dbe455c66d042fdc444598c116c2c6f3f895a4957922ecf7d9d57a37df503c99e5b91bb08517563f46533cca64d674cafbfa59f12146d5ae4305a43ca4ff3069dfd2317f78a393fe52e9d8111064b9bf5f303b5867bc25d794ec4f11f4405a69ec23b987cba8ff36a252de8ae5f67376cd4a61b2241fb01f6d71b5c2cd6f3a9c243bff34464e7b7fdfecb95d960f0db1811baf78c43d5fc4be6b70c459ef581b2305c8d703375a5c6e1ab5f3462af43e550d6ee6679ed542fd98cbe3dfec99abe7f7c258297ee5070c4d9c46a502e0f4df2a9a59f18d14f1ae531de04a129ad756aa3309a60053c93568d5259093e8a7b4bb842b5823bdf43b39d396efb376a0aacb0659b6e072153a7abad0738de2ad41636524a6f2d7960bf35b2055d3fe8db44286c36ced7455775c86a504efddd6f99c373a29eb090358be0b2144e07c66645d0732291e41303f84888251034111fe422d4c3815d8f2b703527de1f94460dea6ea11913532c40dddd8f5f2831821187ab1f06266609e24529308d91504accd8a795fcab363ef5a57d9f1c011cd02f8d97f7167563bf93c59876a29611896c675570471c2b1d593cc5d6ee488e2f39d00cca63ff6c18f28f86a6e18e9ad55e872f004d33b1c31644a5c54a0f76f78a979956e411ce7e3089ff3e2cdc0d92b9eb7cd20a619aa640aa4a29f82c92e773606072cc8ebcdff76ede1704e3623b3cc1a676f69b9c7a2446e0180c4c6aaade52f51c48102d36f0fd4200181331717f5b983ddae2d2361c96ed8d283e5ce8c710377cbc543f735905278ad052d2f3900fe13d65e1482c69b83520db3c23bee305d1384feceef52fec91ab68c42f1985b338ee0d2bd7a43de552258931c99d9ecf460badb15cce1c22fcfc553019b8ba8407b04cc1bddaac23d2cc6670a9dfc2d41baf61e85a720f3dfcb41e657971356c90142a6805088bbf36fa4e6f7635f43739e4c795bc7c9d2722d0505ccb79a38d1aa71411ec546e8733c1e1388ccd4a60c778e2e4f53f45aa1ee0149a8bfa576df36548b72823f61a2200ea5d44a6f97263da99fd72e23096ef6cdbbcff601e5c872d4311e51f1bfa0cd99c645767ff004853d373ebe59d7d857393f7b905cbaf5dce858185747f31f5f6cc1c8f7a7e9aa6dbfd9b9d42cf5a61b05effc1c98191795e3076220bec76dd738f3a4c49275175b6fbaed05d7f530d09dac676426222bb68ceab277aaf5792b2a329420d3319d9f2a2523bbd0b274dca0b7456556e2d8013e3ebff04ce7c09bcb7435db85f0c28c209141ebc30bf857bfc95ceb945f69f9c502f1b9dd3de366c005a55c24def16d1b23e4ae3350103466d2bc579f2578960a44564596505efb1512dcfaf481e5f86bb68f1bc252e54144528612d9cb393eb1cfaf2349794d676e933054be13c6d3aa5aa926835080e099ea9aedbfd2e935e32d4dc34f64b4c0ac9419d6199d78210384c2c24bcc65a3cd6e7a2a592bc95d9b94c56ab9d5a0b72b9055b9b4078620f87bf39494743016dacf5fd42f57a939b97c93133056cf2875f1caa92becffee834b5aaafb6495f4645433d7bd46448dcade143828cb4b626c95229d5be99e5fa2321a9dcd48a9d07b0d918f99858fc898e28f780eef935946458b0df9babc461960e4c08f74c4f22a6be5fc2575e8ba0d07dcf19e0e6a22bea3e9ea028c31ab801cacab9d7841fa0876f77d7bd419bc95440c2c7ea537670525a4c20de6eefe6a4d9ea511924ba8c7a6cabeb3ab67b754deb643efc8ed0a50155090b294897d8291f0f901e4ab84743d5e6e5b59ef6e7b337f9ef8ce115e2180a0ad7fefaf9641829623814d7ea1cb2c45833ee16932c0f15696e9456b22e0f18c5e9b398d86106119aa9d1300b55726e61e24f24d2092df51474363a8a64ca2636701295e992bf9f22681215b0d19351800cc2e88ed593852911e6c544a5733913b8b08748822fb3738c53855ae2c2725d7e4884e42083f766402b2d0cc3fd5d1368ab53fbeddc6dcdcefba02507e9676a928d5398bb717c98ed53fa1765d722b77db7d1bca21066c59fdff47bba33fb749ba2dd8212224496cc9d968da9ed5c8e08e9ac555965f6796fe67e52114a5811f2297e93ebfc17800f9b993bac5816b9f53b2fd91d793493690d00021a5271e1e5ddb4bfeb0ec876fc39df7dd83351d4a653117dc07b801976c866680ce8c74096014921636c14a33a16ffacb4a8491ec68d5f62227fdfbc722a8fcd0180cacc77b895a9933a04bd3f117201aa38632d0d0221a29d83c55fd20215b77eb928c09e89a6fd07aeca63f0bbb25338c25c3496b0b841e87b1e64579008671e3be59bc4372b86ad886c5f2d5ae879c76d00bc98adf12d927c91d811ab52b9197ff6cff66252f309672dafb9f3ad145cd2531b662114d48d6484ad9921db35aafd04ce5ac1dd2dc9a07defe95b56ae914b6576cf86f64be77643653d60e0e5ebe1571d37cc0c71c0ad8db1b51776e666711e42b8ac2b44b2c3dc6f2c5d9df3c0496d8d8b2a27e6917660745995b2bf35143d03ccc0617629f61e42211bf669b7654f136e093a2ac109ae4171604cfc49761bd68314395d5d1c663e4d40c87654413c39a0a9531a3fc7d1c7d111db99c25d5abdea7052622dc7dc3d08603f66f9f7b6e693abd206478f33cacd4ed5fe7e4a6c8e65944262fc8d222920a3582d807709e2fe45065a887146a6ef98d3ed5ba851c6f4c8c88116cb14fcfb6269345c06ed5873b47c9b6b0ba7c4d4ca909f2a8216470962684deb2a5d85d62a1df1909db7a6b4988f459411240ac490b0b257035545bc81b36d8185e8ff09dc859591a18c07f1a4d6f3b41eb97ddce17ee6cac809b13d475f40b2511bca8b2ec62f341792755285437b8ad61fcdc6692a0dc5021dd269042765af9f7820dafcf6982946ecd9546303d831d2ff879daf809ea414698e6d7115ad23ecefefe3c5483e5c10359558637e43b697831e5753e47013076b109c796d3023dda924e51adb1b80423391ece0d8517a6b1a9eaf108c26a0a61faee00f8c53d74f8e3420c40bded234a056f773f88dd3a924ac2e0320b8aead673cb649b8857eecf8b915825f80a742c944bebaea4e68ecf91718520beae9934a4aafa5b838418b8cac505c738012234297d8280665eec6bba4b20abd66295243e0c60c76b05527158f75f0a1d77cc271b5ed1554ad400e8a6404d00070810c143b463d9c3820ab9fb079b8cb9bf632f2c9d35e36325e3ff7ba66ba88c7ea2924e15a4afa48485f06e5ce65b78b4a54aa098019abe31d9d598c2af978834fe66a3a8703f31a096ee5517fec62c0ab4e18e74e6534ea58a4bfcbec2355578ca772af73991361d049412eaf7d45eb5c848da8439ccd9f4b5eb8b52d438496e1a158daf3e20f9081b2629c02f9c23f8cb820fd1d26814eaf61ee3a1560d4790e463cd38946bb1cca39a5910947ef8fbfed47ec70715901a8404c5f827ed2a17d062520a0f308583f482a00dca280ff1995b4d33fe28c81584975ffa0e582bd2f90230fbcc08524e89ffd8f77dca03da6d3c009943d76d89703b9f2e2a285b995ed0722f326d64f90a8f049cff566c99517a4b0ffb748058a709d3aded0439ba1e2369731b31906321aba12fa9a06a6625bc616a35940c2d2075b2020a2e4b78e04134f60c22f90fb3a06dd6f7fdb91f636f1dc43e88b3c013a450b582d71ad8f351d61ec9ceec34946d5f6d8ba3523beac6dfcaa84c4411ddfb3c8627551c59c475099edfceaac71b8a751c36fda81900650e8b4cbe4ff89b1ed60f72f2c3c8e0f53b6e9d2453c52366d36488ee37b660fda174bca4ccb92109047f847f3cbb1a844708c0ec434a22736b684e4aeaaee419cb38b9c248ec34f153755a1614df3bd3b9b2c38699eea2498fda77c6520d1edd3c980f1d615a9cd41f44b383d55dd6b36705d0aa821d01b81ca40bd8454944e68ee559f8d5ef411c948962f36969d706900986a55fc702e502d50cd4f7e4f4833b93d2550a5bc6bc8842a6c6be936bb257aeb1ac1fde19d875ead749d74a462d37bd76dfe9aac898882d69f7451524b2ebd7a40cd3d0787fe4c3a54303522cb0c5013ff14325f8892ade1a5593649a827f16b16e2c69d24b4f6afbec50c375a330d3540ee0153a9e49def49e1b6c68b20066c7ecb67d88d9fbde6ea0ee811eab6c8ddeabd54e0a62993d51de814562d52aa37ad4f0f440aee1064e0429ea82c7f4684965c75fe8de0f9afb76b3b58b945b4c051d73aa8ac76dcd358d8e4bb7274d5783fabd4595913725ec73f15a2cb1587d3f8bbb9da1f6b2d2be83707fbb767a84b4f7eaa1035f8a937f5b4e92cd64c564e43b693a125a79f1ebf2d5432a38775695d7764baedb04bb817b79c8f691eea0378f98b64282387e9f09df2562e183cc2de9f451e3b456bc319ff51e9e40d72af4b6ea34f2cb06fd735580ef55731f95b156f548bb3cd494c291fd2f91b2f39be34235d627a6910f069996d48c497fccf0e80fcaa4dffe7942780bc53cb2023a4e6c972c6702a4e20c4cf32857bf9ecb7b8da16dd0d25d1a8f4726d772b32381637a76a6b6ee63c035a59403043f120f15fe84c32b074246f61b08d5cfa14631ff201d8027559cfa6086572ce26c72ad2eee19c81e2f7d995d64ef48a10110fc5efe304cfe4bafe8aab69abbb1e49d127920e406d121bd51b62ca40008d1ff1b6e10dde8d1a241a6afed3f2fc6da0e9361c27a7c73cda923d03f77a48ed650e2eacf42b24e511fb97f99897d0e4032db5188aabb18291b9de4f1b4a9f1f71df4d972cad2c2b18d882a0a785e227520d8d1db20166acd960e9dffc139ffb037a726233df49fff2395d1dc210b8725e3e300c40b2db539767709b84c24b213bccf159c3b93ee9a8f6c374e94afe0f3cba6a2eda252a36a4866ee9b17eceb245c233ff9cd8d0fab38f2c76e0c9a4cea8fc18c52e0ffc925a07b13e485b060b7254f28beaa4bc519276c7e25ae3d4f05859c5f71d9c8ce86be04a052e23641651a854ef216dbcc7953ba9bccc20ff29f576dc530d58c1ff811994ce389116412ae97c64c45058d9df73326cba5b62fdbec9c47e64d9299faf11c45a028bef415c49b354b9c81f2335e82e87da94db6e9bc0a636c90b331199eb159e9af7c3343ebd83e6aa8d03eb3ec7c4c68fb4fa0b2e41a561ba768ab6827c5363fe6bac381f13b83b637a28b556f4c348e13e63ff95fab50dc825e94c5f42f7842836a9365e796d4c3c5c4a228bded42990b7dbe211f85beb70ffca167f16e3d5011094f967df3b0b67392198ddb88ab780816c0ce4bfb98dcfd5ee5e9b232c416bce02b64055c23c48baff9ebfe5d5689f47da5acad9a7c34943d13a5109da7aded758c50048043fab77974f147103dfccb36aaa17883c98cb453428244aa938c1a18bc22590eb42ea6355ee3ee2f7dadca81dd39cb26e37a7a065731d1f0255679fff784e02b128bd18420346905dab8d9f5634b5b3d7aa07b9284222036d139bb2e21364a8a12502b5487addb560849c9cecdcf018913f2270c09b32f0542d46234b3b4305ed7386e2f48070b5597d5400439be288f824d32d376d65f2b523cdb3ac1a2087d3d0d549adcf22dd73705755c729ae7ad0b3c2e33db17dbd2950b9b2fcfa45c80f23517b63b2011e60939724b8470d01470508e1d5b6f5cead25c192050c5591a7cb2b065226972bf1e25687eb09765d484db50e486b6cdd9bab0207209866bcff7f6e7d83bfee5cb146f5e66a0de740ae01f226a36a12f1c627935013d14b2b7df86ebda78eaea6b4d04d669f7796f3717f7b82edb457ea060e40c4e85536b4bcd194d68c6da9bd8171c029ba7908a5a47cb95be3f0d9ac6907f18633c9354f1bc81d3aa997e0448c96ecd16289304647b01144795a1ec87c45a27d30fe3f9962a19f1c9e1a0a6d44758607c6194abc56c6be5ea811025ef40461dabde13bdfb3c9f3ab5ad10bb574ea5b63f2ac16c6100713b0c0ae9af01064d66419a12767a9922e7ca91ad43ee162e82c9ae7c5ea0d51b648ef4ebce9313754b63f280e973cf03d58e972f2d2f3169da424e77c60dd4a555f77059ac438fd8ad5954a514870862e3e564228eba3cc1ab1f116f21adfe394862288fa3ed2dd439996a12f310deaf4f0dbf3df41504e887188eb801d7f98038494bced29fb912b7a105637b7815add3aa33740bab682e3678d33064fade86f5501a3aa2e265464c8d8c02309a62afcd20d86e0b093a6d87c0f095417dbaf2447eee994fe777801d534113da8de2be9dad2917445861f8265315775973a6e85205807fb7fa9ac4dc21da35ea5ae836c6469462c6b7e5bf11a69a6015b73eafe95c84b78f4637fa97437b6018f622a9d0073021895d6eea4955f73cd50326d5b9c59e72e191a66be7e7366479bd502051460cae6a91de73e2e9b9235d1366e9ec7df43948bd5b25cdb708040a3613485de2d34ba89fd4b8bb66cc6f78a709be8754cf1b0b893e50c673a2b61cc0b13d6e551c576ed343feeb7c8514d4eb5c82c0ab53ea0e27b61ee1b27726c9c85697860dbc7f21b1e7cbfc3cb5c4ab8575fcca79313e416cb9ecd57dc510eb49ebbebe1914291ba4167a5409389b5d11f9c4367aaa96d0640257b0450ff4c2e54c3ef42ecff7967a301fbf66dac76083915fc0e793b4b549802ad100b0753df48d221492d4de66cbbe952f7feb198a03e4c6d160cd041feaeba8c5ae7f025d71697202d82425ed3d6b283974956236ae9e6d0665a567fbe1cdb95f600a768319b6ac8255214a1d26a2902356a4f25a223a5050d59c058b91f2827d2c8ce09a74a9f8a3ab2587b9a752cf0ef3532fc39dd81ce478542a5395bd14929aca22f963c6c2b402eb604cbc1a90b1c3cf9958e12e2ef29b8104de08372b899e93024d696a910dc34219df36a80562e1711c1fc465856af066fb09d329f483c55fe3b5179f77e229bdf420fd17ca91bfbbd4122f6b5eb5018ee64c4a6389a9a062003b8e739deadb77652097187975a4a919786e9002c0e058dbadea7447f8d9e880eb558b0c08debc3b359da9fe696653ebc9541ad29c117cd271d99564669cb815009a6de08308304dededb891f202ab5c9683797081529ed8b11f8bacfa0cdd45a9b3a0e8ed1622e3134f3a7fb4c89519a8299f268c0905772a2cb3cc7bd042e0e4bb4e3dae5afeba2c4d096de1041338cbe5fcbc183330e639703c4ee65c2fa0867d40bb480e278076311ce1b215d180befc6d6fff8b5208f1ec4f6c16ca4bf19243066230c1c6954cd9a56a4c1538e55e9bab818aa9114427ff60e9edba46f171b1823a2330546aa5aaedeaf398e3519d3dde5f126c8e796e7a5b1b77e0d6a64b22adcbbc967ee76ae64d6da26c8fab0a265e98268000e1ba15185ba32e4f7660ae1e2c7ccba8fae7db9f7bddfe0b8f27166759dae34b51b02ad1e4d11f2f9016d3dd49c24514a7cbcce02c6a24be90ccc611db010d737183558addfafeb2a6b136d30360a8203fb5d4ca4ed49a07930ad65f9a3e98b8910d5a1cd55c6351335ec5afd56ef75a40041f9729258456f4c6c5368b1a5652860922a2b96cbc88a19951d2825c728bf631937a9afb487f32803e9e3d549e7dd19689f4f9c3d0a2911ebf059fcb17093a7628433d7000e6df6976d2323cafb3ced10927b4d35af4602394e85153699a8bcb3b09cc5c70b4c35bf0c2e5f457fac9620756c27c1991312085a9f7c2bd79e6587983fde65ef37e5ca38da1d8ede42478cb3e429ed48a7568f7a9e0c954d522da7c8cd0b40578ebe1a823cf3bce7cf9f7768401d452af52a44a9a3de859b7f5b19545b7ef8f14ae8fd39473fec6d1b7f2e1c052a089ef91cb2d057bf5505244c025cf30aa83f02b8a3febfc40e243a681f3018d3a7d938536d85796b3892f2e843c5f607c23468b4a9e0cc0982e75420ef35827428b9a85c302eb10cf5c197e186d376eeed38e6ffe2e6c0235678db09c2a6f398c23401572af0d7e063bd180937fb298eacd5cdfe9079a958f0a641a232a331f15ad3c45bff38b2120d903060e2eadf21d0b0ffdc31b93cbf2affb3fda8836a1b8092af5388a1e9aae19c642ff9a281e4412a1493211605e2e43eb29c4a8ec52158ec4a42929d790cfb36db263aec6597f89ff2239c8b90a9d27a6695a7ce01816cdbd02adca33d2fbce97affac95513c64985663200e294442aabbc077b75827e1f1bc0984abf7cd5224bc873b7dbf8f4e038c63ac01e18ba3954745736f06a7586bdc316d101b4f7613830e68eb79660995f8b64097d7ff33d00d9da9dc926fdf0b9b6cacd0da6a19d3b2cc08a014a02ad065098b8dbf058607de44ce9a1afccd629f62e518b9eb880f2d7ffb0856e04be63bf4a2bf4853fa443d80212b0447b3f4fe5ee0a74900ff6a333dcbef7366c8e69c5161076690e6ce4860ddab066e4b6f7764fe131a0b9f4ac189b6f0ec42d7acad6c1d0ba08c8bfa2fd2648cd3e7a4cb6a6e485a824a8bd0d927eeea928a16d29ccc5c9e1b54a489f5ad4da341f1d5a1350c33bd83e177ebf9ce4aee8ba3696a9052f34f0f548e0768305e96fea6386e6c6256fba4926ef6e2e8a49b742aeeeb2efacf93de5aad7da876cf66162d42cd1d03bc5cace89a359e8a6f18c4843a31daa3b09df55d624af2c41230b4029cc321237842f3f82850710627ef1cf68c3e3e1d961241d7dada7bafe6faefb84c0392715e26ccf963fcf8e76eb73238f7699baf9b46f8a44a275472810fee4e91bb882ca014a4b9b61cf975a6189353cc04db2e072b7e4675d763745bafaefd8c64085f8f46cc2d29a62da4dffac0155908da2102bebc42f8a8699d6ec3739066958365fed7d5377bb453c1056ca3b1c2c4063fedd5445b4b00585db7e84270e49d4e3a5276079ea0f13f6e8f2b9830a10478a6490366ddfc872f673378162720240610e76d72239917677f6cf72400abfcc4afbd898dcc2cf129fbe2958e698daed62baed6daed9a9758e3f1658a2dbe7f17694ce9bcd5c43cb31f1df79cf0c010102990fe6a1d4c96d63f9a9631d59012596f16862d580990bea0c4dc7aa746f13c44e9b3a35228bdd19f17e8b0765ccf784d7e1a9e08ab4b4c4d02d34053fdea7b14d7894c4be32b9e2c7c710085f5d5851ba9b98bcea1f4003c8d3a382219ed115c02bf76a23e5ce368ef66ded465e34ee81526942725ff37f872353c2af4f0fe2bb464f22dada130fd99cb90da6d7191e13efeb31579b4abc56b887e21a238535ed850930036d6ac56d41d1d68d506c519a554d275abb4c5a71bfe03a1e70d3e55dc92f183401478a8b72e579cc2d3a1a131bed80da4898ee5e57441e1a464235a6de84336f1a541e68e96600045df4de22af56347f640f0bd770024a4c4023b28d553a366583628f9005d613d8d1fc50a85fe1ea9d2272542ad6557c7ab3ab24f6b58116bd4ae378684280d919fddb352cfc3f08aa745190b459b24076ddbbe3277199a75efd0db42626af4a965c4b997c4086aad6165a904291114ee4090761392d4f08ad3daf97c345a5f4f79d5c027bcd400a870b01e674802c3815a91216a52fabe3f260b5fffa14e50b219506f917d8179cc76d6b86d4624b63074eabf626f02245b528ce3e1ce8bb499e7e62044663a812f6f58fd14bf7eda00101e9d571011584c5dd6a196057312e5bccb25bc112dbfe60506dfd605a9fde42c6c2162ce317bfe2c142817a304d953ce4cf038e3f32835cf6dbb272d3d8d2ebc87ef115ccb86eedf3666dd9a1278d61a5bdf083d9c59671e170993eb5d0316dd12db698ee2df4c012accfe498f24f8857c2e12d10352f5e6edef33b3a295cc5ca5076ae878efe0e30294a831484863b77ccf8532abbeded03c8f4f9b5e01127de8dc077f28ee527ae47f1e99152580c4dc6079427cbc938cb586a64196e1a2f3bc691638108dbd61fdd34358763b6a09236c15c48ce3e225cb295700e9532555b7a4179385f524d365983dcbd90d66c795d01c30ae150557671871f2c916b4a09ef504188e43d5e79b46b23cf35acfb398011dc1f7eb4d66e70c336f3efb9c1366d9568221e7b023d7aa6e2979a11768a6005fb42aaa65361914927e01b7a67f35976a307c0eaf83cd230ea7df8d2ccffac6d96f071b9c40e74d5b0837401043946935e21db639b6a6d73b4fc7bbd1911f036b62d96440e859e0a115a42b7f3b507f14a9789158f637f3e1422d1829688dc02630ee04a398a114183a637d926193df5f55777c1ad3dcebaab1956b719e344ec7fe1e4f1d4c24fcfd1b5496ab513df4644c2ab1d04d9b430739e7889d381c96bf2546037172a8620c8fa86d158c54515101de971dcf2c21e7a1addf4efbdb955396a584b84640650190ba32e06bf9821ed6c3644838152825e27fd334a5e2027399b8f50e2ce901eecbb799c36a60243d9799ec2a21af319919fac8f4a38105704650d78c7359f41319eab3e188530609e8a69491df91871688ad1f6b71d6f19ba9ffe426f22a77319649345441a0b217262aced48b364540c9aedbe7651f6fe2a91fde58a68abbbd3162401d21978f47dbc2612dcbbb3280f0c2020f8ba0e2521f72e891d34dd64101a6a2674314ca522e9ca1f4068287cdb2d873d198bb7c8298597869129f1aa58fa3f4701cf4986c946e95011c6556b1cde3deaa830328b1e5ac99b9ad976a408b505395deadfa54edab8595be14e57c61160dddf91a3631ef35bd12a2e67f6f0ba2a6cafefbd90d930abf79d35e57764e52b2aed1f73fd32042a2bc3d3bea7b2ab83b2edca2ed5831b0e62b7a5becaf846a5dc1105af3c359ef1ed7b830c9a6af97be8303cc5049115c44113cbff3df0bbdbd000271fd95edb14917409da65deb67c1fa2a013625be3f077675343758b0c302b9c86082f60e59fa9193a1927885a82e95897e460b8e7326cfd88bf2616001747d331f697c06ea702f385dc3db24201535c1656c2af590325708c0b4fd576f5178fb58007f674a7159ad9d8b44778a8bc4afae7246a168339114882673e801734d28a819411d4f533f1d0b9fff2eec97cdbbe7c044669c973231fdbb0c9f8d7ed586d7029f3b45814450209c1ea67f0067c2bfa57188e117d8ca0c69b8e5fb59059413ef866689deddd109d8b1970041362313405559600afe2b23eb500ec12d7b5f0645e311e17958d18d2e5d8c941531ee36c8390af33bc1b02234a024fc669dcc48cc2e04ba3844ee59ea6adf05d0ce5c2d0a1f18d57ae98d450d85f40ea7a70e2557e12556af7de8166240c01f20401d2a3c2daf32a3c2781720387c8a57193aa6540b03fd669ff7b3cbb8740233dd9f5f3c17051e34db2ae77cb2aba263da7accd4b4a8190793651cdb5583e79b38b6463d5dbf045bee7ffe48231476279d827ca63fa8a52d13a51a65b57cf4cf5286233a0d561c04e162094e49724abf212a9eccc7ca1d7807d46673bf5f75032a3868384dea16c7e76b96ec08e994c3bb0ed67aef7ad9f795481b6b1b007858668593f80f7776593e9ac33958fb9eff9720cd1a3f1131f3230b7fbdadde6ea15961b47a6468ed6af5e47ff47bee4ea61dcdb7cbbfe111c455c20852561efbf53078b30c305b3dd0304e529c6b16b02762ec3d4707286a153068830298542534721bd105076ab5ac9654c0d6ddde5aaba47f33904c7cf723e23f469cddba88de33c59be14f3037d2da59f167e292251081b82799d01fca676bc968f9286cd0ff6c8c783457e56d2d74dae21e780aa51a52e695486ce1e6bbe7934b9d0e991332a67b9a754221da58fd2918a2f76b47347697445d0f0adbb5527b9adb0656eb755c46963433ee20b13e2f5823d82c94578561e4dc756cfb442a4425557637a7e40b1fcb8a6e89897375cf49288bbf9a4b03f1dae8f0534c42eae7b4e6f5239b8502177acf6c29640e823d022f23eb5137e70738d5d60f71fc2a707c6b0cb59942c34370b00f4756fffd381c321d5deaf0ddb25d5304b3113b9d4ce5fe102d15728ccf57aa3d1661fd3bde00fa2a7af4a500336ce3f63225c308490f34ff17cacb745a419d551ea8618e7f6c22fe50d687a05a0c72260a20afc12c73621270b7e8f2e1747f1f270790aec4f43335d5d3cda24e40db7ff477b0e53a1fc8486820d72e72eca055e2ce58156b02718e332d7291b5525009788de1de7344a32d6dd962f014c1ac170e7e19815486f8ef0a4dfdba87d59c5a9c81cd56578a56fcd147ad61e156660ff69df098f23e2002f3182fc54fd7efa118899512308a771ed10e26eef136d51adf7e40f9de3a3989f8fb7b610f7aff5ce755602f40046345dd67770fd8b26a321b9abb3065a464a9950dcf217ddb28988d028c4ba84206628ec3f647baffce52578a390088d9c51bcbac0e4493d9edf52742fa91483807a86a349d9bd6f3274ae0b8f2e86cd0d642ec3f8e141c3a1d2a02df24bc0a2cc9ecad06a7eadd6a7b5f96d21672a3038594f794a6edf44c8e2f97215f310763c66b2b2de7bb5b32a771b92144d4c27926373a68df1934a164bd4c1854d60bc28cefb6f544b3a145ca213fa757f4c61b056afc3895e891c6399e5d1fdad6869a8e2cc06e1759e35ba91697bcecb51edfa2311fff1a276313744aecc0069e36db4be331674be062080a0a3b6ca53e7cc1a2853f4f8d694afe23dbffe0ae978300f82e8bc68d27e799752ef7e3b34df44737cd8e274cf8ad5bde68f59ab745cb5feee629ad353a0c7504290626a10cb704fdf5d651a0bd54f4a3c7d7a7c4cc07329d6f2e9905fff6cdf636f35c9bdbcc36d2097f4d78105b3fbe0969e81d37d8af24210c0ff8b0f3cb245c30858bc858fb2c8d8e30fd24a7448ae4e00a59ca9b5378da0f36669d0fc15918b72e8c2a13ca6b23afc305ae8733c5d9e0901875b049587c3477cbd88ad91c157e9a4a5768484fdb635cab61aaffdffd9c8d37f9e79c9e0b9f7431a1d71a974e12d6b45afeaf26092a3d634b8671370f75bd2fdbf1b86549f716789ee81954537768231167403810764d4e3d2c6739ec68ee4f2a7c9130ae3db3f4e92677c46cb03e27d0043dfa565d5112fcfaf4b44110d3301feefdb95adeefc81fe7db193f263ca25db6b1ef5cfb5d721c19b5b7de06e3d2648f7b1a373f15bb3288471d07eef86489c5b21858795e106b390e86e05a6739c7f243413bab13c6251159130b8a08c20f030f0d5911757cb0708f6d56abaab288cb9e80a120de2e947e425d63306c832248a185e0e41c0571f0bcccbcb9a6d0cc92c722b69db4546d284d0d58b8d084bf76277b711a63622b5e283a99b5ba40d02ce6c00888679099fd2f4838416df432a3313ca7653ce8c9a656634d454978877322540d485eed08a642f41c7bfadf917987d97de8436009e7b7256806ff97efc7024f4b17d94b91671b2e1e71b500497888ce3205d384242e4ec6afa4a180f5b304c263bc69d51c454b37047a123a3d9941382275b85ed2792beff18136255532ffa7c894fc3a0ba61b1b2c7ace12358e6f7bc897c90a50a3f57504f9e4dad1c115d22d95f8e4a9bf2484012808938bfede50c00b670c0af17e9ab15efabe6cf62885f1f0fc2eb9c6ed8373a3a2392569ad87035bb1951642d100111e57f3619d80e5f2d2b727a86b259f2c37415ec2079a7011adbaabe606e59cb516c45925b0acbeeeb93d2a588d72d66baae4dd094d7dc2b76b4303c7eb537f8d16a00432778220fcb7fda1fba326e24d7a369102b1356b25e24b785ff4ecc9107dfcd791f9d508213a79b52b2c5f4e4405dc1ae1ef1181778ee10af27f73a54f1b590343cb2404312804484e867145038efd63b5703c1ef7ee91b9e3eeb187e079bf5239095526326c84f64631f3ef49bf997cea0f798646aaad648d22e45ed2994bcfe100b4e40bd495243222a12a51414348ff219055babb63508488769e42ae13ba63848266df8469fb361d8c9a2ef2a8634ee2a83172d481d647ac563c8d1e4b6fff8101c26cdbcc9f1c85a36d15e43f6f43ae17498c0bb95fc8892bee85f3845a73425105f66989c195c7575109d7daa1ef67577c04da7e27b33468508d9a16abc82d9a11cfd9fa8b172fb5d3044532de00554efd12b3c49173d18d48f822799f2f2f831d130addd0f33e906e55577df04efd7d271a7e287082c0aec7674ec1f4217f4b61510c7ba844f95a0f6b5b70930b53f3a0d2cbcd70733dca94e384bec94fefed8ea5093d86ca9912dc099edebf0d199170da14ebaeb525d23a0be4a4d97a56aeb3885067f4e6a9f19e47d8e95ddc309f1ccb865e72af7890a594e402ae96dcd0d229fcbc037561ffa62436ecc2a3a736868d6dc310503a2a8f21126879a1bdad7d2bcdfa67520d70e26ce5c2bae6ec13603d1b7a8e9b613142ecbc46a789bf5bdbdaeaa160bf23842001a45927646d092b75aa5d9a2293ae6212b8912c92d011028c817264356d1a9a1f905aba2a4ea27c10e3c19e61a6498c3e62bef27bd78d1a5cbaf2decb786ae02d03deb26ff6191050c97f4c531829bed9843cf46772f382835cf6227f41e9b93cc5e42cefb71d1b18bf656572ca222c3b15ddc2d91de0c6592d7af971fa754c0f6d72cff97c4e50298c4c615601bdc7b3c200fbaaab1846bc09d5e35769820b43767f24f79cb806604c83f31e020476f6e119fb87fa10ad7b845cbd2cab08ee2511fca13187b5d9b6e456792fb53b6c417c75aa8a5d928a679812fe1f13240148d3d7d9d3df9a518a0b890117234f51246e2989251669f6d196143fcc0cce6904d40668a2f68c5c4d9f0dc50507de1f16a3576720ac779addfe01019467ff2d7215fcbc0c0980024b49cab81cb7d60077502becaaa98256678f33a9e5474f6a3892ec8ceb8c046f4ce2bf6709d8924da3516f4ef9e9584668a53eb62ba98f8a0b465efd266f8ffa4eeed01c8c540b12fa9d2de4b40e9da8156a4e607bac170616f48a24fa9ae8305d18e68f69b19304f269ad458a100ddf411b05cbdb7543d324380bc198f1ff76b36160bfaa048d1d4d0796b6b8e0f774ddad3ccb97a0515c4e2fc9864a657dd4712008366caec64d22143f27af1a7fd02f98abe9c2a8536f5c468a2cc74eb26b933175473752f3bc380ae2f57e4b0545f6f785ad5149a74e619553d208b169c90cbb77aaae8ad458ea83ada7ed44e167618dc9e57ed2da10364e4e1d246b49328a686c387dc682cbfc2a5d81fcf101472d2b79137f5ebe9d440f286dfd08c350450e1d2457554a2b7cb1509c74d254824f0a73a0e81508e60e1e70e90ded8fb212d3970fc4dba6e4d292142534ba06880b270e4d86095b5771c1929f07b64ea78bd589cb3f8a559ab7d55841e45cb33ed5c2713e0a8ab52e4dab4be4fd5d90abee3021188f60ee3795ee6526d6b005f77b5aa49a285fc92f308a92e7f9f55a61d3c4029e3d478fc12555f2eb81c11eb6d3b8ed10677bf0a6290585f2aa474a1a48cf13d00eeda98b72e6979b165e19d1bb80c647f03d8d535a2bedcdc425baf879be8ba06d06311ee4fb1a935d1b25a365a7905e4d1c942a665eebc0433bdd8f359a93fb7ceecac4d613a4e9e7e3483b957640706aa088216b681235e9116d1fbdf994b00bcfb2e7e23339f8e816faa0d457846a188343ab1191ddeec62bb5e2d4445ba641982159496ac6fdc74409936a7464edfe8c206033b884cdb0c5f84592b4b87785aea118dcf2da13fd937a4ef171afb26719391c01738c11d457187ec7e93394b39d90e04ae6e66227c062cd2fadac63556c652846e11b5e3025d051c22ebb294d14c927b70baa1bcfcb67ed514acd1ff76c7546152e858e6a7a3320e8a209b130444ef83d826f23b3305e29ee79e383794e027b32d3726ce5134611856c6e6c80c5ad63bd18d773d3eb7860e11fe75cdcf77ed55379f0668377edd4419506c78b86194595d92bbbf04f027f8d456d7595232fa30522bef470d8cc10bf185c5e1583e3fa2b5552760dd6c181b8f1bcab35acf6a50ba577ae4d790c4803683bd0b4c5c31d2eae08b3626a0d9018ae8db6ea0fa43f6b291328c02f30e57569a83764653b6c60eb306354baf94040f88ace7e038e6f1ca8a4dde7b75def5cee83793d681476d27c92088023fb6bdf198ac490ef74bb4febb43880c0675e06c37b63742f9ecf85120516df7b30d6f9a6e3403c9af97e024ba7837ba8e1db821c1cf2ae062a63cc79a7db78fac4b40df8e2d2b7abb25d6ffa764d15215e26c33c18fa0c184673fd1a58f869a3f4aacc1dd63225c368b9043aa3c7866e4f0ab415d14fc148ada00dd95e43d0da163ee93ef87e706910a1202560ea1e14e8147a8f9600ad6199e0406aa5a4461c633c184f5882589336064efae83992c806d22d8e9e65f7ad1d2462b2760f017b36b74af6c38247ffeb2c112a84e8dac58e43f2750d39b0153b6fceb8514055e2a9ed0b51cf02b7e804042ff496a9ff6a7f790b02816404465989f34b742f3e84e4a65e6d8fede9037b526f43941219a0d667c165b9503bf88da2f5e1196da7f86c4b2f63712ecd5ee2b750b22544bc9d03a32e2ba403882f27f44443dd1ca1c773e6492e288dc003652634187d57bc5616de98c0d0c3a4355e8ac6c57e1d2319ffaf1164a7b8fdaa642b13e354584873b9409f44494a81b5b2d71374cb3d908cb5613a4ab679303109db18538f2dc8bf9d3df22509f2ad40cdfd3f8652973f70b1f2fa12737df6fb875c4081219446ba5225232f8dd12ed02a71e96186e7e6129536dda47dc71e4c479a17bb39eac463ed05e3ba2d724f2f1016e221db6e6c18611fe7fcb1ffbe47797331b8783a720a80d032799cb86d5aae36dd8e1c1898e8acbb247c639c377d0afa0bece7b866cf8ad5091f0379972f369e3e8a38e99109b89bc86be78dc8a2c17f0215dea45dd0802bb3e3a531fcac5c84755d782a68848fead8cfdc58285360d16392db0a7360023ddd75f742a020d3436d0926e5081774cb12d7d43e91ce8517597f168964eba4792160fc405e465e6a42db43e1c8207c72c63c5882b0943df34e6a0b4e650e90347eb64b98dcc46c25b6415343db3714aa6caecbcd208b6b11474392bb097738003a83f869c2dc0383f7588685bc3ab4e51fd149e2c6d5681d0ed08abd8c3a36356c2b616dbaefd5cf4da5251f431ed1575e9623afcf05a1961c1862f9e196c675f2f99e8f56eb102cc4b2ede8f905e50ad58a552176382487164d9dbdaf0bb3f32697907ae173a6fbd0998c43fa2ba2025c810536d28262923f523b54e0b3a3ec891c1e113f3f8c0aeef75f34a54433d9631eb5353571620b06ee84e25ee12d3677a42ed45b18727c82d7cbe8b2092ee45d3692f5695aa9ad2b2032103b6a060e94f47f1b3bba0670d0df1347fa4631c113b101ce3cbf5fd13bafc5ce1262fc6f5e37c3e481dd816febd77f2e513c117bdcdc15b0f11b87323fca9dc97ebc2e68b5d06a57009b4940a9fde092b0656fa90398afd152ebd3010be9973c96548eb1b01ddec58b8aa2cf949e1e19229ff2010e33205b7e9ad800385b2a8bbea74dbcfe9e5f507108b1066cb59336b1b5c9772c2b5578245f333d73e46d5307daf9c35b2fefd963f04f13071b8af59b35049e711d9caa3d2c72890be980e5c111d0f2f59d40f57a5de0cc7026d9468f25a715b6185296075c85330a038b60a27fb166763a7209f58fa1cb5867574bf4cde844565246197fa188f31a8a9bd550965753502bc95dff462675834088cb982c46316dc7d9abd6a5038b5df1f4cc080fbe4cd3f5e1568a3599b1807292722f633a7528975156a7a3eff4295a1bb344610027c78ce6aa35ae5d9287338b0108d9e9bfd5bfec9717fffc7e4ceda0f2a61eb4d78cfbe442ba49c8c67fb65867216bae9d811d8d526bfd6ba9082dc5281a4bb67b8a6911f748a58271d8e0023090b3d34829e4cd56114b97fe4afde5018ac7e63e50342d0c113481e3313c2b723933af76e88c0aa4b92e96dd26bef2a8bdb90c3b9c03af4fd6387cdbe7ba6881743bd02d6ce2f24bd0d37b7d1c21717888810b9e764907641170b5194176be4918cf35cede4ff10d2e2b9fc4096830a8280c18edd039d3ed3c6a8a86f7883c10372c9f5dd9fc5d5a07b471356d696da3b162d2df2f9ce36b63f73674b56df39e8348645e25ce020f913646e227670dfab97abf1cfef039c4bbd91cbbc8623bd09a3b6f6865dcd606c1b4d85641787ce7a9e0fe20e88316fc4906ce5bdaff9e0bc755ac58b3e7b16d20ce2f8e73158d6b9c1bc0bba8a4b445e1f8e6ec6621a68a22de9d5a093ec344b7de4b4d300d2a1e8148b3c3a37fb8a4d95640fcb19792efd7338622b7fd45dfd9933b1d128d1623532d35c71ed7a904dc06e903426bdb722d2bd0f30b1d8c61b4ad9608452cfc935aaa73ffa6afdba4f0704edb2d42c38fd167f6a22ced8b4fc6d9ee594271536abd9247154f6f45cf743e1c0d5c4014c62cf95d40540e8d615e059390482a7724c518f7479c1e96d503fdd09e7d481e4068df454ec918329c74d10e850953b7e86283ec874cb69f5f504d13897c3d7dc2f153b997e2b5f061ae1953434e32de9dc11aebb632c9da9084cc46f99faed00dca4fd56cc1118e21b4b21e623b77c36dd5fbdbbf84745555fe3589a288c23856dc65ce4c7b84385a64e521b12193b4ceee1784050dca7cd1ed8ecd7dce597eb36631224ccb736bcd68afe4da2f6cda4d375b0ae8e9771e5430efcda9e02c1ce101d453ada341ef9837c24d0b0803306e708dadc9b64032241de5dc73ba03271793464773e76277d006f239ef459649491f5dfdf19744aa547fabe05fd62434525e91e6b3eb0a465d02dd6ea923cf37772d97b2501d0bef070567a8f9becb795a9acb718afeea112da12006135b6631102f85e92671e7daf5538e1c8691193be27934c2febf839d2c2326206a58c4a01ca76210801f4f94277e1ec24a669bc35f3be6e45a44cc04dd3f51bdaf18e983b2c89745442845a9a781c0724133b9ca34cb2d95fc0af8f1534766402d34461a1842b2e0006fcf5f7b779cdb72a460901241f8d44b625e138785fd3ed706f0c9af56c8af693e2af61598c5f80f64f0867214431bc6939368e9d3d030371e4169ccb26644d50abc2df67b2120a1c12615b05d53d03a385071c68569c20c590d964da7488eb0ef0886431de926e61fa7cbabf9aa0c691c2abace70369d12164bb08ef6221e5e602d28d4ed6071578edaab1840d8bd086f2a7193242b57cd1b0bc3b0b272d87152a89fd20c1c7d627dfd4d3eaef3289cf37b617f0593cb5a2280fa05e2e5a0df0498da446d57a5045d838aebe924452cbcad5b544f168ec650993e0dfebcd3231c6c0188a881d2509000572b51bfc65255dd5b65496067190498f1d1126ea33588f8973963e050f6538eeba5871769e8bd4a075314e6f9475877d45247d42bcdac63fb99fbaad0d9a0eaf1f355c55244ad5d33f3227573cf1b8e7a5cfd196d4b3ad8ac4a494a3c80f96ddd5b6229a88de0afbc017b5503c12b740412102603139ebffb073f700517b0d215c2740f833daaa744dd05dedc822e3b4e08146531d29f5b1015d2d353947bbffdc7684809d00117e06af659cf7d1e6cee177c41785e1fc8f6805f70ea2a85303129769a22a3fff2eba55506969b05cd5843d03915d238b189d4f16ec11e8ec5fb85cac4a62bc516e324914ae25c4b4af329bf9618d4e35ff25493bc669334c0ed90a3990c597026a67783d90aef4533aed624a95a6ddf9fb04aa5b455c896640b151b26002ee934c85a2b4d5d4a647726ff5eabcd08c855eefa14aa8c7dea97d7bf16129baf4c8451940558e18e4ae4e7f7e3b5dc67c8f515b07169d21fa64750c395523e5f2050dec4fe7637233f141950a1a92feeeedaa6137ea9cc7efe481ae08cbb6b54bf4f79b26dc876032ddcbe1dcc5c1a9aecf8610fdb38545c3bc2070d8ec3d9f5bd5d5075eccfa30a587aa032de35f86c664f8da56f11bfe336397cd234fb9aec5e061cf31726c8f94ab173a9da6a5e633d9435049248cf566aa17681d0d77ee86631aeb1b772aa1e6ad10e00dc67cb244e40a565dcc830398f10df6fbb7f161d8793a938ca2b571c3f6a76a4aeb3add80b6e9fe2c76ad96860dfae7a43f3d58ce98f984bce129ca608084eab32d4fbc99bc24587c97e3c6b2a491a9244653a5c7b431a843789294f4a24688769ebe741283e64dbd39dae9487a12383f3ada880201af86127e7ee7260be767565cb3b136ccd056c7a81d2414ea8e0edef8d9761665df08f65a6ee824673ca55ea1eccabe2db68d82320aa2a7ba11f5a6b9c2f674ead484b63d7dc313da229af009c630c48bfc9e8f6c3055e81c89fdc40f65ec003731c61b0877c5a63ecb00a673088e789c69e988d6642f120f5264ea1716aa12474a5cdc79c98913f6fe3cfbb631ee0eeb37f74638771a8746968400d778c717e4ded0ef6ec8571679655d6994aebf0847aef9ac91b6664c3604cd699c1dd66ebfefd554c48e23f1b7b8dfdd1812427128f3d46f71e89e0880e0bd9cf56de3ce72c9d63f46f9a6c3e8a0587391332e2b73da7718522d5e13195f3d7fe5306c2c017e991967e13b50f043276549abbf6fe1b9066a90af0e65cbdecba6bd32b6783fa989e150fa32649443c7f984d96ceeff4b2c99e49ca0c0ba7ef41cc210b358f1f24686d489bf61c967b8d6599e99f93f85810138e8781cafcfc72f0a6582611db57074d2680c226f81d63e29c984463af4e553cad1dc80d82df52238b1c225ebd3cbfc5b3d83a6d1875388a3dc39e2cb35186a5c3f725456c8c51392004ef311727642769a6e70f9f03283fda74322142010d2a3262f189bf9a3ae4667285e5354cc1360964fd05f464fc7e8f3fa65ad3f28cad1b66973fcde3742e53589252f3a7349c6125cd1dfa3a36864a56a5ca358b50963ae1b37e59fe47597ad9d485fe5675f0bf078715000ec0567795e3f8b2e055223c27b4d55bc83bb19af012fd9b837373e09a4a68bb0b05277234ced6c18f863b58421b939d054138dbef87b633d5bf5d4504720bfe1d91de9de9522098a4fef8f958b0264cc4a312b602aa886fe03a333f95a11d2916229c8c06117790bb3e7d13585596bb4c5db765a0a0da6c84233fd2dd004530438d266e0b793324f5744ec4ee9735b7351efce9e68cafc47161e0c3a6c072bb68de4f2a1a9dbb83f6a8556b6e74643f02361785a53a1d7599d65de875e63ef7ff693370d7de76c5fbfbd1a14222b0c5b16ff5681b4a15bfe3df630be22732992acd66b52ab60089f6ccf8e67735b9a049a3c18dca9ac14adf9bb9eae85549ce32307c960be2e987bf2199f8aaaf752e3b89c22af8af84c08faa850d1a385a95046258472ddc4aa2d883f687aa0da4db4eeb43b65c58094c42578f43478b71890385d759341b12b6b6a7f76f3711860413139ea9fb846daee910704aa7870f2fd5327fe89e17586dc85dc6cf7fe715450bc0a5296110de7905bca4b7851c2da4bc33d2c8eb859bfa1a7e2497ab8dc10d3ab13a99fc77d1f02c8846de4a28480827d89d09df482917cfe659b08c7d4087385cc0c6e9de5b42663a8ff72ed160245e3122c9ae367b30ff50708563ed1de68f636295a0e1a5482538160669be58c682a1fd9d7c0aa475a413dea2e209ab047fd20ac1d7a3121e8003980ec73d3ea04fc94d3c1cfad48df688a9632896cf95822967445fb6cb7c4722f96e85dc620fa9ed9f1a1e5022b95512ba27e0240ba16b7341cb191cd61457e157f025af336eca1a18b84c34581ace46f4b5f00dd37f9b35da4ea34f6eb28bbbb8269368545de3d2f9e6983f8431a680e639b183b7146569c4f58413a0736f1ba9c09b403a64c08f6c1b6d6043ba2dab0456390a43a513371a822d078d61146b04db7b7e3938f45a57761e21b8b85a1e4e932721bded90bd3532c2c6afb317cd21cf573f0595545ac4dab2009994a1da1c7fa79df5403614b8bffc3cbc1737565637237e6a3b74e9f301aa369eab7a93f53d54d00d017d5b5404338f364b03dc7159d1025d075874d28858737d106d80344335d242a0409d64228dc71c6933b8dd50d2593716df089b4d90ca85918222317bbe1bafb2310a1705e0f13800e522f98b381e4020b03c3a9d533b628c9b2d2d7ae171b1857bdb6a9d9c656ce599d11430ad7e0d581d0e698693a4deb66af757357a1c14cf6b99432981cb3e076f4a7ddc23bd4cb8f27a50017ffaf5cc051cf00b32ba7ffbe9429c8a3c0ddf937515b7c78e99099c724f72cee61593845a470935f8e20a5be43545bff584e7f6d34591a656290023c13768f99a8e084b4f2c1d65e4ce1cefc4e97626c2e8ecc654fc5dc3db4c12307b6d38a75c7b3bfeb15d4adaba7a55f21a15075ca530acdd49f648042ed22618239b411e34928e3e9de2730ebec5fbb7ca5df7c6571552554e8e9e5d1d6249e27cd84613578de9836345e61da295b0c0d6ece572f9fc3a7f4307fb9811266d1d09fd39a6abca98176d0de3c6dfed5be3dd30300fcac7a712962398cb9fd80c9b5505a7bbb644cade3b1a2ed55a4e10ca38019da57dc877192a9160094f7652ea66d50cceb4f3929a7aa6bb5be11c8b53cf0629fc29059577ef61255db35e01d8e14e73bf5c09122e9f627e76a9e7f6c759646f6223a24a698c414473876a0e8d97f2dccb473f2bd25dae8a828ba6dd892f46f3faf511ccaa780c1f90105a44ef9990018348b58ca80bf9f692ba1633a9119743d0ae63db76c77c28a44ba14bb47174ecf4ebb2cb5c062678236fa27dfe046d5bf8386d6f781ab43c14fe2a3f7630081362b46e3f2e6d6c4ce15024dbfeba287c73bba4998150d297d5468304348dbc7529e176d26d852c31a63302b4c1c73ab2b889d9a7300be1c618adff425bc48531a22d322b6f0f3953b9312023f01486e103a81e2ff9ac01ca6b76fe3e492b3f4f874b41dae07eb3b26afad246f5c69652cce086a3831fe2e36c72bf3d704497c48719014e2c1c0696740c50d63a2a87c45cc79bda3c68c6426277303a08c5efca0b56b828271675e147f255cec598529934718119fba9f689c0603417f1c8bc2b27220a3cb874b5c417d78d389019fc9131b72caa5ff33a79a201245bb4d15e28736767fb9ba5186cbecd0153a2ae206207d916affe33a57342bcff6dbf28edb59cc81025e56cbe1c9b5a9ee372d129b3fd0d91008938fffed08a2718a935f1128ea2780daa211750c69c5cfcb8cb3994ca8ebed4909b521e02a32840698d90e09821a636089349884e225d2fee2042c209601912ac03ca76f650505192fc4efd9c14c1824d2b56b74e7df733df741e13c4c0a140fdecedb6c642f52d14eb43882153144c967dcf803c4e88be2cdd7dde63b83b30bdb1ad1b4f30e72ee3d4e77089646a535431460d6789402ce777b3cc28619129678472ff037fce5c96fa049fcac4e4d640081a0752bb2471bc9832a23b70a932c765f2c81e34983c2b6a35e66a47d8c14f94a4c8c7bc9acdddfc2e1285c1bdf94639588af2d45432996f309e43d26e653f6fff9125e638302f53e13af67c7b97d56784094f4d0b5c0de6f38bc8340baebe2b6fe4b4aee0f0b2016bbdfefc00812c65e7fbe6f90507cce1bdec7da3220259dfe09e91574e2878166d7ef6223b56f085600b21d17a3d963b9a43014cc027f177290e0880cb506d0bfb584276c9762a0f2c114097a74857d951d2619c5de85206b2a9b6acdfe2f1a8716a08365776846ccfb6e1d9634633194a230d5873a5519f22601c4bb209ff47c1f9c3a9d26ef04b3d9c6771432f395b6d9ea245ad26399001cc3b7a598e0e497fcb516a765c55e0315da68cc939607e05e7dd370129c5b721ae739c21884f56abff0242de89d415ea59248bc344730415ec2839047d40a10ccbc6308f960f6852e21b861200e828e7931004a8468593c2efb6f9ea636ed7fbcc9143c42a39c8f76a6b6e63c528c53a3e9d5fe25017c0f866f70c5092b8b514653c497962cbf737ad640ba587580437fadea3eb30905c8e62ac4ce45d15bb804e0026cba1fcb3b6fbd7593ca4853b5cc94293252e6a1d799c4e1233759f207bdcc8b6fd9067262f96d692999694cafd755dc9cb2b7caa1a6c839abc3e06e4ed31b06500d5e4bbd695bf2be285aeb0b5ec844acb11c4f4245b5fb134320737cba3218b6fb9b6ec42da450ce4245468a194d3529f29faba8ddcc44b8275c381641527d957e01575e4ea3a5fe7d4a778aea9cc63b36f68bdbb3b26205df43982f8e6ba6589c0fe58bdf2375dd1a6f52088af53d9173ee4f685ae1158f53b73abe4523cf8550ef47f08fbc254b2bd7a50c6f1807e96714256a0a1cc19dde6a6f48adf715da534bded53b0f537444d837cd7d728f9ce3ab3677d943d10a78349576de0f11de9bd13739b8bee163dc2a3cd1f2bdab58a00599cb59e651cc05117bbafc6dbb67bab02d6fcc9c29919a8ee96dc97cf51fa34fbe36b753232998c8e7795f3ef6b6a898528b76015fd0aaefaa046f14ca04c2bf0bd1a9617653f1eb78caa0a172575d45dbbb13ef7f1bd1efc8dccfa1f7279731388a3893a7ad1969bc0b76797cdacf3247dbe77b4ea199b227b4615dac21a3ad5146e8722ff4033c2c90f99e589abd874c219571d7c293ec1c252658d9a3f50fb646e2d1849606f438cc5055b394cbc347a52f6bf64554b76e05c93ce27dd7085e40514fc844cede2d1a6679dece35da145f8eb9a97e7e2c83f7e93857277682c46354ed0d01dd919242aa4ede16c1235172d3520979e8cb48b757657820940c8937c12bf538877c7af5c50feca4c56d55a3f1a7141dd2ff859ad4aa2ffe7593409c5d6bf9fbf4a48a5c7d1439bece57816bd813cdfc85420310ee3b96f3d265fb760955614bd4fcd1d138ee1d371f9bc8998206fede9939e8de674b0a4d73b74a74d36110b035d5de4449d4b9e51240d4673e75617756e9dab7c0244837f59a1e3538ed86eaba5aef70afabece95f8994ffe0df45fd0ba2385d79b3e075a0704044c1a6f53ddfe571e22d4bfdc5db6270d44165a3b172aeb8f9ae56748e56992c07e289d9f0891068f50f8129dba0cb46d3b283e3c86baec28344545fb7e15ae6556b9717faa6e3b2408fa721c82985d5c5c0360f3bbbc051d5eea2f741f6ab2d325644ee67a5604b06f465603d1bacdd42e535c1c8849d7fb3ee93780821b1a59352a54faf72027b843b0a64f630da98ff33b0609c26bc5ec70697dc63c13da4334ec512e4d750844d826c2fc0bfeff5a1fe702ea5bef77fdfe2beddabe70d79eb7258ab09695d76b8b066f2528ea12b1e597c6a767249e639ece8d3959526e4d3d9ad6669f16879c704f921b219028530e333816d9bd56ec895494ae24417eeed5e3727e371164299e5f6979dedb78ceb91cb8adeb36da446edbd102f246fc38d9868537779d9d9a52670c48e33144d0284c0a0ce9137b0d455b4d6ae5462da725d52981b741d1c3b445983dd62ce0fb362e560e0bd4eee0fb23a77e186e21fc7c5a5d67d155578ff004611b2fb474083e56bd1ddb5bcf4362d0a7f4b118029ba914d9737c8236acfc3175a11706948fdcc824d94650774029849c22fb09252f300f1311d6fd4d8a0e1a9a55a5b5368bc01b8406f88f04f596452878515c4c8f986f5221196f98b1f2c1202b6aef5d19e60d1a2080d3f5aa3328d3cd125ac932dc99215c0f326c048a3d353e775ae45860b47c209d3031d825a206be4d410bec151c66e96d2e20e5a1df367d0bb81bf6dec88f18b6a5469480a71eb5545aced9862a39eb10b52255cd597d9a9f483fde97a2efa08b3a840d1f44a6e2353b78254538eea3a406e9fa234219174b03a524fbd0560020e8bcbbff9831a4fa04d23ea74ad639ab5a9de1aa474f2bdb9a9049fd88e9973c85d3d04696e6527d3ea4b5db45feacc6f1115cb0fae895277e2db8ba9681230abe6f72ec380b315b01aaa4d4ea1e639bf419ac35149e9c53b0e4202664d44b66724ce2fb2ced68cf35bfe1091f6005fbb6c4fd9ac76187f19861ad03b4754ea8d714220c4ee6fd4117665f01857f4af89eb1ff582582396974e774b02dfb6acd2e7e9d9f021080b42184dbddaaada8e4060eb9d05ae416220f4fb343c1c0cff525ceb8047e3e36342e13398d83cc9e09a846300069ee3163e35d939d8be46cb6d819f56d2715ef941a861208ed7eb99681fc15341d93f3efd2351e08342dfcb343171576ab168997405813984d5a3f887702c1371927bc104f68e33e72ae7ac42a007e78943b1c5e33fa60b67033455769827010dfba573646323decf29221a754809c19d2fb86d3235f04212e40a2053556fd374f595f2f112070fb7803dfcf944d5d0a7152f26812ebc1c3a59db9e1b2745b058c6376ed03d4ea06ed2aade0b6dc75d24dfa9b0e0e32cd774b4058c7e7851251d4d2caebf7c7177dca91ce4682b5f4d52b3f46ba1d96d7034a968169fa7bef5b163338be02e407df80876166ff80df050420d7dc2e883f4011e71dddf3e26e2c8a06344dcced6fcbefb1b7275f921768ac89dbad2bb4b9461fd6dcacfbbd45072adafbf5cd59fea8296dcc457a247549f03875af2e6e515df01686601b78a0242822600deb461f36fcb2b0db3c32f7fbd601cc9a00bd94efa45ce983772cce88318cca919315b7fd39fe908470d3ea0e16be55f836573de5279e3765e8317056c4381401a44642947112e8614a69df3ebcaebf7e363ad80ed01205b5ca84deb9674e8702dee1d769c8d17ccfbc05b204cf7033020d7bc1aad57f2d02d950b9a1cf5fd9f270adfc745313e6df94e80343890d485936336141becb48c64e52f71b81495fc49f26077b5fc2c6e59e6fbe504c6132451bdeaf7ebac9ab161c216633c38953b076fe9152cbee1c84850162cb152788f90a3b5dfbb5ed08f34368e902cf5735c8780b85174f7b7c5e62d7dd158e5b8c9f4a0c88f6ea4f99ddeac1515110563e83d2418f84df092c585f6bafa3713a0d37006a0ca8bb453514d52adb0ab40a7268d95c0fd8173985374a845857da6a11b26e226ade6e2cc649923acfa71bcc4c851b879134fc60c47cd04353b6b0e20db24ade952a9c7c6a64153f29e8ad5fcdc8121c19c7c19b62639e4f8021b2e69e4f65838cc2489a3450fc5f99421dd2e405cde2cb4fdc3e498ddced937ef8cf8d7237f64d53e360ca40338870d6c0d947ccbfcd195674433c06531bdb3276d7db7a5ade3db60538be9031afa7377539529c21c25bc72da11c96a8c4eefc4c05e6382302ca03f9c1f79f3025bb87d2283e10f9763211d33561169c8eefebb9368b1c34233c8d4d56b322aff694545267156d0fe751ef58467fd9dad1264222a14c1b4740a96ca4dad225296ed595726f72ec01a07df6d89c6f7016abe717560ca100438e889a93cf6ffc273cefd5a54ec821e3d9b0fd282241ba0ff77ec28ea41e9d4f847e90d993121559ee3e537fdcbec1a14b7b06704710b192c67df827df93331e6122ee85ebd5ab68848ab03f1059b401fe08186185793b4ef91d82670ee85d071e63d76ecf9e2b1c3cee9d42dc4ab1904ca672515887ef9e0e73add56245ba146326b89740ffb5d4669d48ebd40b6fd27c5d5cb017b22b0eb675eb71f775140be9f44732ec4dd31b96bf73a811ec601ffd89bcd4ee4b8795fed6e9472c78794a6f4f2c50a3edb9fc46e45bf03dd051471c09fbb989ce22dc440658b2360367636daa70738a75850cdfbed19608801878db6d03c45eafaa11c37ccea991779338911397e85388dee63b475a382f629a6cd1f2dcda5ba8c50c832d8b8d5834ae31eb5b0af45c3577176637c0f92e188ba9a0fdc75a9c0606cbc08b70172c3af54b99db0c1cc2f7310ffbffa83d38cbffc87fd285acd9dbe3f4b4347c1c68ac730b81036346595d95032b88146f66a4349e8b82511a5e6d7ae6022e70eff788e76162cdae456cae81cde30eb2795c387d0af950ecbef530e343e76a764b666e8c365b1d744f5ae5f6147a7d7ef65a601d2bf97046307945e0f70487b987f816432586043203953991c33c24063ee1eff6f84596299a729c83c1b08655090976e903456a952ab4e6aa07e0fe5cc732347f57bcbf03de614217fc719f56e0e8ba580fc4b66536692168378c33e11740a41a94c75b40c0e5d2ba19cc963fb8dcd74972ba92a436c835f3ca7608c19e5213d47e61387b8e6b6ddb32173e1bad23fc640664ba98cce41cc7dfda8875305025a4f98181256175c72f123b116d8361cbe83a86e8cbe91a59ef34a413f63b7b0823f5250535e6d7637fcda46126a0a27ed4200311071be5f5d2a57a780ca8a2778fa4158bda10c0b4ed356274776a0803fb714cf877d06fdf3b0532749b23fcf9ec1b11ca70431a606279f0322e66080828413395007ae6b013bf513075f67c3fbe4275655beeb3a87beea4be1f2f392cbf5a8db2c34ab15e50b79a1fcf5119a8286e78f444f268675f2a5b9b5c2d24eb1152222520173a8fd33ddc7d9d871de247582df5e6ce0816eb34d0bdbe8d81687b608f458bfadd3eea1fc4f8568111850c7230e4d9f7a0fc9ea88f4c677fa118233bddf492f2aafce44571123cfbdf89edc42801e7b3bf80ec26546ef8c31e2fca1ee41e29355bc2592a9f7dc46a6372a9bdc4f8f0acca79ed634a85f9fd0ecb8937d9f73f557c7a4a50b5a54df30f6e680d5fdc04892056b09be7a79ae55569c115c76394fd38de15ee6d4288b5ed0b4c3249920213826af442c6af695bf58ab96a9c69526f823c0b66b2fa9514ab34d6f47c7cb4e5a5f364cc43a3ca307b825e5aaf7ee04fc50feb95efafed374322643300c909c6428036527fbd48fa4c64af4399d738af6bf9312747397860e970770875e6c8e77ccb462b562110c347da765fe73b2a9663d825dd137cf7eaf1974f29b3921bb616e53bcb868a3e8d7c09051fd542e7577ee182fd4ebea21b392666c8798003ec06dd3f8fd770e47db9fcc62613402ac5b2c82e72b344bc708fe98d5e15ea21dd475937eee9f65d33dede310eaa4c5c27272e3388dfb443060a4d1739cb3c711bb2dc23a7c0d9b0f282ea255ced584bbc9cb45ace3b72d4c730c33e0fb0e8419cc2dac39c827b403c36351816e81a283e79d9c0193914060c9334feba5112a8b6b45a7578e4ecc5ffbe544c3a4f3df38046f30fdbc79e084f67f3589f9fa058535a3a041cb0619278a74575166d421cf1b05bff10d11e785955156939f04a186c4b11ae28a902aa86e797a6619d024ca5fe7f2692946967b66dcfd959f22c34ce7bc052814fb4be3937e1ea61fe0026a20b1813aca9dd15b9b7f08b867a2c5e348534e370eba83d2d4337893116ed6b42e2198d0ce7425fe8099aecc66dd57ec754ee5b6593e06f7f569d2956b9b6da2e85a4800b3079af9f3619d6791c002d5135ad83ba0eecf868eab939299c1558c514f1710c216628bc1090bf12ab9805ea26dda342d5f9814307cec113a7b52e67d2a37e9ee38d7f9a357a87ab4a6a6446957a2be19a6eb4b0530839507c4bd9f8d300e8a4ef1946a1178ce915291d9e9e7a533ef17f562d81b927f637fef52b432691240f53918182019daa4d0d210a680a5d4fce325bfcbc432d091471272e403207f685f4da2d8eec214018f348b3d338ddbda0cf5c79f5d90aac33ffd228f4ff5c86b44f0efd2343f910ca8f99a9f106fb9919327168bacd52b020bd222808e1de5b2f6c8d3712f07fe2870eb4bc2d845eecd7fa72a34cc4617d214303fa2a2f9478ec52bdb07abacddad27a10a73e54673f257b4ccda155f48111975d338184158d613e76d5369d739197cde73bfdd94db71e86b81bfbc675a01fa027b559eb3fe7da004aab8c932d1c33c1901623e145da304d84640a6cf2b00f5c4a79b509e61b2688df926e58bb9db84a61575eb40ba9d35a0e290b0e805606f253481eae9bafb31c99f983aa0fe67aa0495d34c84d15cdda9f0e7cba357142a9690eadd1ef397664291e1f532a95412ad9283f3c39f5b4085e31fd8a20c818939cb7e8dbbae0cc4b7d555d7b22d8352ca4fc914a657d876ea9c3a75a86315e6ffa3b21cd8f146ea2db398be5b415f7ab8328b2ae9a35ef4d734d390381cd3c421bd9ba6a4a777e8965a1f461b17a8c95ce3e119811eb95a26c0a91fcf5fe085281abb82f74a78206c75297c1954f228ea15d85b0fe3d805fa1382670aaaa54d930a33e2f210d607a44da9beb13c094e884c431fa3326825de842e59049fe31754ab88a78e2ccf852d082b997b0821c1c34739ee73183cd8358997009640f6f8adaf66898cac5efc1095c86c05b67e62b5e4aec437aeecb83ac2f555b940c24df08a5cc6e91ad2852018b49426d0f0ad28aa82c69c3f16725d7538a6cd91d318668fefef0c52d762eb60b300eb6975874737c5b9c86a7cd4d4002201025976c2ecff8ef2ce084704b496e425a39470a33f24a37d9913b6f776cd2f4a61a650da810cbcb1a68bcc52500ca4b34cf4ae8d0ece54564030e3f414803de99e89d2e39eb8583867a09822f9b091b03c03df87099d446f44c7d08ef0ff6b7ed344501c2086045c27054782982dd1d78a17d2270b2ef204b31165239fc7d6b35faa86694c8d5fa76697d2762ee996d0a1c3432decfd2d41e17654fef5822e608e05c220fb7f9ae754103abd7f2582c33a82ae3175c7df552cdcc7d8e92e09d104afa5e88e30501f4fe73c2eebdbac9ff58e529e246dc4d3f73329b1d4188649d1a3b466d6b75410f8974c2a71dac381a5b95409c7ceb9d2ff31e1d6fe148958ba8b30ce2ae11bfff33eb1f312dce4d693009bb51d68d21440b36e5c8b7fd42123ffe6ca58da49913cb6cd77bfe9162c7c9a977badae840592bd221f3208778d419f511823b4591ea7679ee891db69497ee3cf28dc175d7f3b485b94766b26a0f3c503567e956faff63eeba5eed557dbd5f365068dae695719c88268cf889bb2d9b79369e4be87381476ee510e4954b30e04d2a9d9cb8964ce1e807795caa9ce4be961ee35f63804b18bad425fa1888369d1ad30d58ca9471110d920ab1bee9f0df900b3f78fdd19c2970ee61a0adc81deb98dd481e5c4a90f101154680f4953e187e2d782243347216d91abe3dd8c0025a69b334ba9eec6efefb0272b20e224dd5075fc04dbe5445308ee2ae2b46a99d22e3f6cdfabea38d6b1102c89f9d6418d88245c42df21a1e9046cc999f4c2f80343f3ecc1c9d225282090654f95e9db7a873630d9b97bc038aa1dc63ecf11661c18ea8c67b0bc1f09625b93f876c771035e61786c47f2395bc5c970a8dbe6f461374fbf6af9ee1c8965bb895f9e9e3b26ddd3b8ef1de17429b8d8538d9be51080ede45af913be310870af1fdb0dec69c6ad82a6e81ec4926348389ee4074159ea5aedc5a28bd6e522726f1a9a094ebf8ce816ac477c9e9b414763a21b0093a7dee64a124ae4525d6307371f94646ced41d80266e15a5f6ce88dbf22b5290123d3c7eaf9a9dba1ccde420d52e583326b8b6c42e791096f7e87928954ecb1472bebfc3ff7f08216ab3a89754fd85b7d7c748781a019261aa2d1ef30620f6807d0cae62460cfb192620e13fcad6cc184dab9ede3bdf0501b6b6dfc74dea6e9c43abc68565ffa1f8b7775cb5584650de3fe231f63b6c36e1a9d6719cbead0bde4820a54a5263f84a3b90547ccf98ef8729afc7a46eb79a80eb4bb5e7446b646416d78043ae04a360bb26f3fb40f77acfddd22b9d3a34316c3974e10be8a8c490183f2bcaaa6b655ed834370a6ef846f6c550cd8b4c2efff1e710978dc154de04ba2342968bb22d639aff97e48afa38e54175aa4115daf75325a2a295f8259d44128401da4f5742565c51738603ade077a03394fe4805611ca82972af5c5b0aca978f091113fd5a3a9429bb26428fd5740319ffbe0a54cffe7b67278ffb780fbe1e5959a93216827a0b6ad96c458d1460e5c17277562335b36d51280c3adff47ec6641411a7fefc9bce90c6337cfa63b3a381b0bb5f648e55ff9ecc17231c01e53125e16d9944c0a72d0fb81b0936b018183a801459b522559e12794ab0ae345c78361d46bd040a1c37df32f42eeabf2d4af7800d40bcf0f5e3a5209de77c3573ef0e533d62367244d013fc1b3a23c122ec7344ce6da3454ab17eb6bfcbaad42c73a9f1078d1c59c13a0d4bd285d08eb59ee5b5852106b562e3c5f5aa79e9fbd7355e982e5f3ffa31f248ab5dee106b35675dfcc271bd3012e6e843ff41a7dd9489d62703bd9fcee61c21e809805cce9218c7aefe52c6bba90ecec08b639eb5f7cd89c4c9cff4efb537054b8a689c9fd4ba0e85e566befb268328bf679b2638fcfb5ba02dc03bc7604738e937ea59ecb2f24fde3e0668d98729b655f457cde1a3bffe0f7a3f0252ec147b28c0862351c3ee57687935500cd79fe3c3bf9fb8b1d269b208fd9b8b17c69597a75f684011bc413d5e701a98b969b3a62f26c01fb8be640cbd7b2b4c4ecade3092bac3a1e6d0dbee2099715f8d5dcae3c70f971646f4007e680a6bc1e89c6caffdf40af85c400738032425917ec795551bfb81b4fb5239be1bd8248adb61278d31d885d33653c1fc9d9970ce53e4d4d600167c885ff37e78ce0e8a9a80dc794d713a41ce6d8b7e7ec3ba63d893758ad568c519871ff067268e7250eb9e42f1a5f71c5cfcf8cf39b8db225ae35f6dced3281d516223912187058267e412817d87eef2f7bb2b44782317f01a26145fce3f057ca09e3204e16aefa8d78777354d395a5fa7278309092f05776331d4912c4e1dda629d1b6c5ef7f3b9d0754ea0ad973dced65629e26578b41442cbe447192d030280699c861e094e137269945c9102427b233060e4fb1209d7665e36ae79e4cd37c9da59146db86be0a19487f5a9c61f6e0a3078ddeb36690f116763c3886f22e33f941dd4a3840134213264f82993c5021c9a311f054f9368450689b5d96daa286123ced4ad6c7c3c1f12bbebd4b32306d29082beeaec64bc13ebf8b9115b3f90f34e4a066be3d12e1cbb798a6b4b3fecf920fae28d20279b4fca5eca1ac204ec2023d3339d0d53ca29b2d5a6c23e7ef671897876deed954141057688165fe7b35a32e545472266354da10d4f817a9114986b7a11b5c465c21400a866e77dc15cc9bfd22bcf3075c1f70bf2c737e0e28da4e3b7d29885db1108479ec61a37726cf371705ea39dd2beabce7bce1c5af9ac6ffef95d366b1da7233e912837ac1084a86f21df06642c987cb3628c5aa3c3cc37b12fbf9df91df31b9fde91e7b41bcd842677cd4f42976a4e0d554098b5273e5a48377ebed03e4671967ce51c31a5a699695dd604334a060a94e8f23f8c80d8de124a63d3282afd47c87410b2186974de40028c5718968814cf3e8583dc83c5da694e1c8b6158423ebdaf62c3340576a8c5dc1b81c46e5afa7a4135a477d59f4b4674e32aa26d751ed3443ff4c566433c99560d12ef78f1abc58da244bd5cbf0db047d3bc46fa9041181c4ec1ec32a6d6804fd59c133c2230833a7c046b6dba629a8f23b3e110db0a80202eda61d13eacca8a6fdf7a09169cc05a8daf49f78fad49d6cb7e14356430115ae2ef74345d4fc10ea6b9adea1a87b42ac688606cbcc62825ca30ef6b2f71c31564823e61e6b146d185760ac76ba3577e23842d5308abf26e1b475d0c01672d2d01dfe1b5f5cb3c098ae82960be27635e7523b3b98b0b08055565066207606e710e93d3c68570ea96fbbee6b2954a5c56898388d0e7c0b158c9155eef2b5c87c8d86ed8a755efa7c041a753f9ab35b4883900dfce21e0721fbc2001043b33b841f884490a741232d766de9b733f30f41052c52ebed33ef082f4227bca2e6f598205df10719af7e3315305aa43b66f4dd314244d0d37b2ab6c299925aa7567009a6e372a7f13a330f19884445b9d80127b19efe717325afdec0cbc7627396b68e5ea4c9f8ed985e2400fe5c866d968e3c2727911e6f530ef4886d1eaf66131e712797338a11f7487881ff19e91f1beac2d842e55c211235f33520b72730318eca9b78b23ff75ec67c6019740b88d47cfa8d78a785c37505f60a72ae80adf69312826060f423037e6bc464ef7c98d20132cecd05747051be2d039f0d1867625e065cca77dc780adf239731e41d874db742ec30a230c00e30fbf1841f865135130f0577b0cb15582dd2c9b8210b015f0052894bbe158326c2e0e25c7322171565d67c3bb975b4c957c7fe4ea9043578ac160a8366f330bf1b2f4a3e0312c2a7062db46b514aa671730b0f836fd4529d20ed3f6ed5ab9874440e38ab56c959e0255aa7d5c31a7f1b8442446f03ae7e01e7f3c3fc1df047d630fd41dd268a8140e239d785001ed78709f3dbb0c03cc9eabf652c54e2970374b29f7849ad88d5553ce4a9041a070e054a75ce3deb310cf9e27fed4eddf2c80ba9e66e6c47bf87a1c8bdb5e8fa60835ab12839d92117eb89e7a8f78205ccbd1dcba0490d8296b1f14f705b2fc8d95ba598718bdf9785bedaed12b2e74fcd89de0a162f883e9ca186abc65296cadfbdc06139bdb4742ba8595048b88e424836c8dc8e6f49d2bdd10595977f8d4d4ab658fddb2bcafc18dfda4a177c55cfc556ff54765a7f90756315748b3de52676b4f0b25259fd7293aa73a09e5f10586c14e3b8e155d4a1fc1ca4e663b4d3cd1bb1ca86fa92998a8f1d3e506ccdc6767594b918ee312f74dad303952f48b3559d3e7847d694f734a3ea21eaad82df776dc3614ebf6f40e7265e82d5cd13af6481d83f670d0ee73bcd5666cb6f551c0ccf9be49f64e64a46b4c5c4696d1c31fb83742f960526aeb5d0c98edcd3d26a73086dcb027bc59af9961790611f46f0a44c372bf1a1ddd2a9cfbf80feacf347d6f868f81f6088c91c68c7e12ef1da285b89661db9e3d956647227342fcc319040809bae1e0f387720e12d40a31be8b0fdc371ab753a1b1d6f05242e85576f9e84b2c274560b29ab1a10a6b6b9a2cffca5fc74ea76364efabac604d1d695add2723cca2dd90404b0cfc030a3a51bf9d221cf363f0f4a5857ee5f0f4896b1cd03d21e0d36b1d213726cd04c811958e7fa68a8ffd8fbacdb370cd9094274e498956a3c2efdc5d20731b3ffcbe316fb08426d1709e0c1eb4be1d63e59b33c9f64333184114b0f2e966381630da6fdcccf90b3008c16c2c88ecfc5d4605553e9b8e95bac7bb167b1fa7ce3d609672b925e13ce9de6198ba07bc4e1b4e7445e590e053cfd2c46b9fffaa2a02809b1a0083503c4097dc8601132772294638a45322939b4694001ce7ae1b6c98a2833a6ac911c1220d1f6453d11ec1593f2bafb4d381f061a5f2fa94bc4c31ae6f080bc233b6fd760da96df4e510420a2bd03177d70378171d541928093ccfa6300f5eaefccb717ed53bcd46c20e4cd6f82ad46d06aa0c7df2be5570f90ffd0b0751151988d93f83ca969dd4bea60a2b9392b5fd473f67415577cf0a259eca23661e01687053692e89d39bbba682075d2d1c1c26f6cfecf3ca700271be98e01212b026994f2d394da9e740ea8aa398ed9482cece85cc32067aa5aeefeade2cfec2bc147603e61bdd4c8f27d7ad6df7132ab896cc89e14a3b20af23dc1a0aa038237c236a9f986ab4f87927abe2bba649020e755af94809bf980c9d88b8535f8473a12678eed8f0a6af63ddddfbd4951ef12bfed0e25be184d06f1f1e9e73d853c3a344d68a38c0ae6cdcba8a74c085cd8419af7798177b032e5c51639c97da398d13061e4621a02bd0228536a5ca26bcce3e5c8c0914850d74324f3381b34049ba061174cb90fa59719b86d8e288ae6ebd28c896348be649e414b691fdd173cc3fa04d4947389a73d1cd4b4e7e41f8955442375520b373d36ce3806da191d44c2c8a1d4fac08bd25abd1986d6071e5f538e3c75620e23237824eeea0221791a250c91ea7d76cfbec56aa29e928e300114b9a4154c7432f156829b5e422a53daacd7b3d20c0616a5c3dec2461248c75bc0d31d71afeb6228d62d0e9b23776ec3f5ae96dd4c5b0e07a762c67bc6ca7978eb918f1c1d2b2517109c0bf2257118822587d1a8ad277b1d98a818f78df6b17e00ff72820af618c50294921b03f0b22c2e6bf46e3933da2430a1b0d87f00aa95855b75712709bbced91db93c0a31eb2f71ae342611eaa528912c7b509b643e73b9e74b25c52bbe136043f3d174159360974db45ecacf59d32b52c68cb394bf25bcab7e33dc77d670cf203eaf20db762fc76f36f686feb8938c91b2ad36e8438983454e1e75e6e100d5f1768c7e83955e76a7c64844d6f997d6acd154cecb04abf25a5a42cce3a9ffbfca456ebf46434bd089f44bfa48fbf856bca2c18d0d8285e1cb107e72cb55ece39445c2b553ed60bc44b2f8f78671055f5d4896c01bfbd4f7bb11b02acef67f385c42a8582b22665a0511b6eaa431d14931d2c08f15616612449f3516f3d063844e4ecf94262daee6f913f7f74947fda74ed38a400227945d2c4fef0adb3d03aaa9af2a788eb318d547b499a620ce02786b4679d972e159e4ccdaaa107a90859985fb0c1a6749d0e1f676d00717203b5c861790ba999dbfba71f7557093f64afe58ea9dca825aa120d13234f07bde08099279c22e216b28cc823ba1762957cbb0cb1a8c2dcc12cf4258b47753d3f784a2889816a2dae7c55ad4c3bf0a1f5403dd9f515111430e14c16e546b1807e5830fed4364a7b80595b150be4780f7db6a2d20e0f1b68cabc35e0d31445016050e3e9fc874b576f621c69bec9c5981d650fce3fde5eb19070d175613d5a9085f9620f2c0fee85c98e47c17da567c9b3bd9d37a6dfaddc07f658eff54437ee42bfac620699cf2fb97110208e30c656728d70c993dcfdd795937931f956eafab7793b816082077ebd0f6d6e3bbc18195f9c05acc4979ee1c68b23d50a315990ed4276b9e95da5c9bcf433ee30222a969f2b70278507739913f963c2b42d7e8e6daf6b7f7f5f01fd716d812608ab1faaa16d04604d1f27ad246b578e4e0d5e4897f94c732092446f37b7460b92931feeb9eb9912b1d1d0f20ada4b42012f35392c1f3ef41abdd12721404036228c15e2894c2220d3e9adfacb6d82c2c000b623bdc8293dc8165978bdfda925c4098f6cd5c332276e06757cba7d68b1503c7d9c8c62a6db0a299a520d0b18258344fc1032a0c467f8fb2513fa10e649ff3f4a67cfaf03b8affab124459e73c7cbaf23acbc235132d4371521e680d053846a9dd7c0a92988a3b751a759e5ef121b24d8704902f048a4c2ba7441f472b3f639eb09a11c14931c2ed783d2e9eb45dd1bf220e4d6a37b086382005993016fd60974be7300cace96b50a64448cae291280365acbdb90c0c101f88d1038b9dab232c81d42dee4c5168dfada7d1967ab5b62ec4998b4f7b1deb36de3eb5b7b1d3a5b3af2c1d31de2e60cb1575360abceccd9aa07c71de362fdfd6daf72be2d967e4cbe01914d20d4569b12b9dab8689bdf5aae2e80ab4360cf664fb5107ee7553050a9f72f71531d4e9f4f2150b528aa286145073ba9adccd8a1de0e8a33dbef690e003612814c67f2e923caa8230905193bc58cfd52bb8b1f5d086b9c88b264cd43d2cfe4fd2fbab87b7bddada6701da3990a5af6a2bd8386d1174c41566ff41265e826e442c355864c44fb02a1fb22a784bf57dad051fc1be4573fd71171f94d12fa1df1b6960a8dc45a5266ac05493c58b33965d57b1cd827fd53d8942ad75207cc810bce39d4ed08775f27ec174e558df38d7174a482353a3b8e0ff0d952ab6f7774a43cdcb74edd3e7b5a0cd3f211e1ef2b3a4052daac11503a251b76550b10ff044b7f22fd4d1a0322f6dad21eb98b8527ca5357e4c769deaf92e3ee548a01314f25b893151ef52f2126cb11b637af32b34e0482af0011287b8696d0b2a93a7f1ff18f3e442c10257cb009c9adbdafbc3b7e45a79e4df88ab8deb58b3d5423fb3f83ec58a3a6cf9275d6fbed578a88b9aa3a33275abe164c34a607b38f9b61391bbdb7312772107e7c231be0b2026355b3b5b0c7f4abcb803e655331c378121fc90db01f5b2786a895695f4085573a8d774845c8b199c6a82c1bfcab7aa516579287ad559a3f91769dc72cd8e2f10fb8d7a5088eda60ad5a357cc6594b530ae2d2cde95568e6d3bf81c51680946f05313f424e1c4b0c778b1d307bb4979f73ce5eef92753a58f028653c7e4dcecb033d8eb8dc9d70ef9bc81322f29ece982ee47e5ca8f209c535f4e16239abb3191eba2a0785a418e99a9f9a7386a2c01d2f89560805ba8b1ddfe91c42d8189c96da74e00eb09aba960b168ab09a411b915a9ec8366d275db70534bfdae437a459d60ecefc31a1fdf060af8a338cf49ff96f01ddbf8da6a507f6db9294d48a832606604395fbe21fc4364bd1e420b99132573346403d0e481506d17a5775f968dc0e969ebe2f7d1413d95d8af9ffc93a5637fbe6698512dce4d66e5754167a85b74f25224f778b3fc2d5f6f277e8f2f83b0d6d744dd8cd05507d27ea8c2eddf9919bb12d06ddf3db07c9a975153c4776c56bb0666f231d006a8d1392ce88948fd6e00c207079a0904d2143afe80a6f937322e9f447a35836750da7b3d06c2030ff0b47885050d9c4c2fb77007bb9ac25354cc70c192dbbee1eb7cfa72f9a0b9d24ad56fa7e4bdb42ecc6f6aacac696f0c34a40809dcdda70fdfdea6de7c7810f9999f0d71989eb4de64a508f382acded35246f80bd57b334dac92c256163081c9c79cb279d6b02af857e2f1f8c3481c36e44ef8682164e873dd6118dce2b2d99b8a0ca2d1084ec105162a064ff0c37840a1a7b274e799a705792e5403f18e671f21089d2180dc31d4fa78a9aa3a26d21745a4921bedb6f9d7b0e357d35591731dda2211b98d77ca14d0abfb1e813524b973075b9745aee61ffa22f5e653d0a1cce9431a1a8ba51a243886492da89182b576258bc33a98b30ce99acdfe6401beda8a3d340ba502a9c9288c109de1a976cf02861de2014eac913a506d7ca19f23652cd7bc1b4881e16c004c7fcd6f1a4415c042d6cebadfa92b66c019c200a1f595e939c10236606c9263bd9fed950c5b2fd252eb09e784fab05c359631485c19527939208b535d73054aa4c63cdcc4012c87225058241a85d446d55bb1ab7bae0b03e3fc32b26299ff7ce12379f89c3b110632e8440b108ed5a78f58c5c1e4143cffff87afab7f8cc0dbe2d9667959657a965041c59bbca08500506d4115e1152fdcbb667ad693f6045ffaf0d9b0d8350e41c2dabd119c7b24b7ec2eb6374c5f4667d4c0588c11b72fd956d1d7ba7b7578a155490c159e1873929d44b87b0f4af6d8a185be4790ff79aa5e756320b6ffeeb0d76ae93892227b4fd58edf4a1e0f848041e511d2f34c12d04404eccd150dcc256bf1c319cfc14da97bca953d5fb85e5a65e7ade68d84f7e69e75d6f254b000115a960d1a9f5f8c6e12538b3a37d6c8366cefacc16eeb8566a9c3452623beef23372e3ee46148a0f043e8bb63f5a4d61b4839cd59ffe2307fdf20b0e897cd526728edf690a5f754a876a27f0a323858b8f4cddf1c447cf426895c6d20d025db0372f37c34c7e3f3c471d879d70115af1d96d128467fd7f48fe80d34ae0d816854764a3146f4e11e6470ba0f9fb016b4451ceb389451477e0609933827b2d43b766d08d8e0ca0c5f4f5bbe9f2fce8b20669cbc612c466c65c5787851931baa60c2121d460b01d9ab4aa09bb75dc65b6cf7e90e95adc4a4d31e556e31e582e8c6a72d25f417caff682f5ec046e1471a336ea451c4b2352bed1a0097b99528692ff41ac0469f11cbdbd5279c4ba9e8b362d902229861a3d8fa716335f64d4192a8e4e961385b55ab18a2fccf82631a4f0ce35bbba8781b40da4771a0da6bfc9e018636ffc91782a8b871173c9af4eba838c4c0390dec34827bd8828a1122ba358001e8c299f70b1c69a72a6d87f6fe1bbd57f4a8a11abb08bbfe1b1a1595f1224da48f9932b6eb431889ad2d9de3f2b408fd68498ac05727a56b6aea42e8da1ae9c5090f0a635f1eca66129da612fbbc7d9206186db3387149a310a69dc5902060d44834b9ae5dfe55ef7a5da15528081cc5c283a20b924907412d041590585e37f482a957eb942ed3811b5f7ff11358b1413aa5a234527899a742abe369bc3c729280ecf6b68c199c9b813cba982465b450c945e90aad32b7b4291a24fc4e5d2d64fb58c280284e4b6e8f4d675fe0e11b6eba179124911750460f8e0e13c8ebcbd67d273a0dc2bdcf9104fff4ec0ebe7d9466bbc9034cce6a29bfb51ce273a58982c693b9a3be0350b4f8735dfa37900ca1d22afdd7cf77652031b4e1b553760043d97cfeb49a5830902264e946830b479c464b0bcc185c681bf340f89b5e0fc6846f0afe434eca85536600f193176c32161c384120de40995d3a355a942cd10e718afcd9ae7fec6baf84fc3c2fe161e5241834f43f92d6e7dac7faceb90d712651a12c3910537fd6be7521072335ec119676952259763abebee51516f5fca0f4544915728deb532300176aa2b97272132bd20d4a686bcf6a9f25c1761eaf22df524499bb19ddfec574387d9f873abe8188d289dd7ca538d6fd9bd0cbfdbb9eb9849266d0f1ecc7ac44a3d602ff7874e38d29a82ad0d6b56c0a5ca9fa133afddf009af35cd001a81f2022b2cd6431d24606a0671ed2d7d6ed020825365a2f3fc3052597c7dd802bcc9d69b0dee9c83f174f2b62b606faf72134688520ac6f8d94c5c970fbad3b52ef53724f85fb6713b665c22e04b4e6d2016f7568bd0fdfa432a020d97b35a857d074d35532a0697ab3d46cdd11f35cd47c34a16f59911d0cd5c68cb1c8b5e5ee5f13717da62c52f461e4956f8d9ff73e971009353ae89072d77242ae866439cd33e0d055c5d46eacb85e7edef0a4a49a98185c7d7f5c88bd99942275cb9fb852914c3d8c8794a48c423f0f8fdde316e801bad7fa11bd12d99e8728526718cd4cc9254292d38a87ff58aa0a3be0f585ad29d5ddd13f1569e632b279d48c33404d2bb212a73e54a8ee55cfd3eaaae553327fe3d1bb6566efb493915ca5549b09810b7b0a161504da90f1de6b146d5595ee4b966c395f22e12c66c03b173edd3739ee1e4e6295ee027099e910d92642ae4c6aabbb17d11b3a8729c4956ee66c5a72e23cd9bbd74c9872d08edceed1af00455ca3f75117a14a33d9637d65a00bdb7d472eb1e6970f133c24b337c67222182d306c1802fda868db46550ac2335ad63cd3667aadfb6640cf6e4eea6847df4ab16126469f99b27ee3c3455460441bcf7d2e26c9136c3be1cd9d4b2445decf7235423079a30a44ee0d8ab21a747734d2877090cd9cbc6c0989bbc82513b0e40d4af6f9481c09cced9edfa2efb8175c44ea4de96845e2e35c5e4a5bd90945014a867e1a4564fdac9265e82052b57b4a27c1f9bd8ca7d8d6c70fa698a17835b2f934ed7a9bbb4ce9e2ea328692f90f62d10eee9bd50e1053277a67ccc5a661b61c53af268557c8024518cf25373da52d1f90b724a4bf40e74b55eb23aadf1977125a110a536a47b0bb712476208a2e798ac3f1ee2a4da13afc001c21eceb075c9cf23fe330c02c088d3b0b95f4ce47e806233e2a3f5ec9486b379adba4b3889a3deed17e684fff75eaf11090f1a26049f7eb9c2c6e9e7a0ddf9f44588d5ca3c8d360231df3d07f1201f3ffe65760ac583203830a5cae34d455877f94e76c7152a7f077a17f28146c15b52c853421bbe56956ac1d18bb51bdb6cd8970bd7abca1c78f1bc07085327d59b18492e4254a9d17e56cf944bd31b79464650f6254e03ccfc7f9b9177ba30c8974f3800f073eac4169a2bdf8510e05719ed0aa5831cd46c2b52eaf63df1884e9922f35676a63a605eed5999f849fdfdde98f815de7f6cfc05c0d1e82525c817098d5019aebac4b686be5ca14701a2608047cc5b4fe3f0d61003081399ca6b3ac865c05c988729d66850a4fc52f0f4078f67cc978c30d6a016afcc85ac930a421c2ca556a9f6ecad966fe76bd48390a13cba58fa73b840b6a66221e9a99dcdcb6cdc430f50fa22843951915951138b7557ab6755a0a6b46063d8f26f8172535732eb03354ebd0a516a05f618527acd4df0aa02332b8710eb03dfb094dd4aa75b7d17310f3e71153316db216da917191b4ed637584f942e2de2e8b1e20bf5512b6cd76a2938526c4678d40aaaacdc2b41f4ac6b624c7d44990f723550ee7997ce3e56ae6d14e68111f201c151e0981a6036a41df56fa76c53ae84c5c73bbd4edffedaf31c7e1f1dcd967fd07ffb0abe6de8dc6f121c8b1880aa041445588d35590b5ee20f09fcb713966f8c3c47ecfe6e9757710f3fe0eb659077ad84371b6f194932235b7042bf024f7c6d8dea00d7f7d44758389a855ef605186893c1a5054220da440e9fea6cf584d8f17d17fb9266126456a37fe8a861a8246667c5b7b1c0fd899c3a6ce114eac5c57c9489e047be5cc7cd7ce3b8bd3066ed2e9597461fcb95d8cd368a278c2c26dd9fac36ef5112d00992f5ef279fe12bbfe6e341b8a5d4b5cd7b2884aca95d45ce37b985459bfdb54f696fb81f02ccc2c103dafb45da378416c4358c751c617e03de9704e908d68d46dc09258098d66efd2c2101c9c3c3310c0a47902291863b831d0975da1192be7c2b7aa01a66fcc31d938992f93a8a3b21596c891b64e318bd6603278730f60d97bd2547bf147bab8ac9d82ee1edc37c84965f1875bcaa9c3b4b928356631ba43baefa1fe999df62957cee72b72b2d92775758ccd5b1637cfdb0b5120ecfb1d3c20b0061cd91e397e7d561103b5f1546c65b2a335dda27db074d899a5a0a94a9eb425b0c040e2ed2bf4ea158b9619f0c68d459ae96f8e866ec653e7df0e4d1c8a8c6e8b6feade665d06aaa3a1c9abece6e4a61101f2a270f3eb4b9e7f89afd431ac7002251808bfc7d52e38868c2b04d555343aab127187c2ebb9f65c2f3fc1da7d7fdc66b26ecba51bf4d884246ebac56dd073cb06137dc12380b36f60adc3bc431a3ab948848dec35af0e0d76ee4c975df5b5f2ac5dbf4ac42d4d2fc2a0574a23cd7609683409540a0f316ad4dbd05f3443ce764b6540842cc669773cf8d40907b481babfcc40e20c576b50fd40b3d8dfe4f317c16874a0661707932ecbe6638ae131bbbc8c7c5c65ade95c2583a2a122a6479082e59ffdc7eac6fc1b8283524d6c22f9dd877cd48993b374497760da57f4d6a4feeb5761c30c619fd65f368c705c7a0ee06e07948cfae775b714d6beb8f2a6ffbf2164d00c719be2f61af8fbfacfdee7abf975eaf839a2dd60c6fc346ac46a38a0e8e7afe8a7e70cf23166453002a3b41bac37806f40b3bde36b3b3014e4839cf412eb96dc58546ed732157568749ef6f5b8cfdcb98b77cde07907de9e3189cab7a09efa920a65deecd2bb9037d07c62afbda6eca0cc64ca72a014bf9a23586df1cfda84af7f87eec4bd1dfcf36a9ecf5b1ae90cf230c8bae9b64b308c6550952ce55cbcae107f783fff0ae66ead50139dd79c4ae029c53a7f52e56ab4859125a32d9a04bc41c22333e54aa70aafaad8a28724b10340f7f6dae4121341c08c15fab9bea89d0a3a6744d35878431b15527339a72b7c4fe6791ae0c149c0118890548c3019216536ed044bda5dfe0de0ccb88fd2ce30f55b8560cef213ccd2d01ef92f5eb4fa2f876c91fdf323487a70d41dc0258069a312bd13431e88f8b4df3ee2deed7694c0504af557a9b74521159947601112cb2931e430eb59cf2324f80521eb0d31cae6a70496f855be2830e82ca4836707039b2a547ff1ec41ef6448ab5f91a5a0f840dbfccb93c5e8ab8e293efe410d0bfd2af51639401d994a55fc580ea1f6a50b473ec0a6c7b3ee3a6c8d77e3fb474d3aad1116160edd6720a459a1e4009fc1d7740255ca177c924a72ca05942f736912b630c2cf71cae65296327b82a1d2aa7ffe461e44e00bba8499d10d23c24e1e04460efdea42d82a9c564bd27f98095b4bc0de5fa7a7b665f486aaa4fb4d446bdf5b6420af9445bd4dc3236c988fca008ece729670ae7318c4832a7da2190b68fac0587219886b30ab129a01a263b7f4dad054203cd3f0df6abc7dc953e0c35da8af25b1f433c60b08841b7dd0d27ece0d4c60d2a1a919db02af2905ac4168dc824600b03cd084c89ca62b5dd982964f51239a9efff7a0f93899c696d33c38bed6bbd34f4e920a6b369343ba7a75818f1c65627e2942e99289af8e900da7fc65f655aa00ec5edb615be6a572641d21c70cff69e8d2369406c33496bb13e12d535d0d742706b805558464dfb71e42d03078f5804f97c4efea496942cd3edad665d28fa8367478f2bdcee04cb77476c8489977ddbf60d02c3f9b8123d5333d3a59e721371890e0f813775421388dd298afe427ccfd810288c341425b34f5dccfbaf26c7ac5ee1112d0d6a468faa1601b4e433237617eb6849997220186ebb661ca0ac00b6e380802fc4d957ea92c3cb640029b781b5cf0d9a7ee6a4b11a1e5ec685373008595fd57d2b9c002783be96195509f3d0d8f6a791a846d20980b071a7d9f64436d369b6c69127375ad24bb47f15244930dd86ebbef6d9067e90f5f11f6b5024515a2fedfcff7f3cb7a2ae064edbcb582c4d6831b02b988c9b7a9e1572843eb2abe726cdbe03002f2b50042e6a6b6dfa6f3a4c128bd79767fa0862896532c705581de4a3a5dbe747dae08c21f1baf66723adb1b554b396468bc1fbe552ea79e71bba716a4c34d96d4bab1521196ab2e78c9241569969fa5c6cc7629dc5f7e1d5be8a0f2b7f62bb1472334947b931b889625b32af37d21ad382f69bb536b10cdb1b23956b70d83c1be203b94471d0eafeb2ffe7f0d05a58567808359cb02a138111243251601a196a9369ea0e661f2660b98b2a57124842001f769bf5e6009e93aeaa557b6a462b189293f8727bfda3da8b348ad7433af8c157a9ad35cd6c1a278b63c7a278861b2a0386ab17c42c5e2535904efea932495a33d32f29a9cfa5b155a286ebe0cd136f25a72d573bae68589519087b2b458177e73f7cc16b27b3a67fa385c4f0fa311260c41cc93e762fa1c75e9df4bd72c705de1e804874f614dbbfe729332dac0b0e3dae59b41c61b97cc88c4e2c811c41a62e86cdb965c24bf2a123516c2f4a7555988577ccb3c80ea2520a04579aa4e1373b3d75c5b26ff55aa5270d1228d45e61f413a02e792428da80db4d05dacf2f6729f2b82873414c2beda219d7f8e2831facb66758d458cdf54fb6f02c6516b3756082b40c5348e6520d9359817894ee410f49ea4b75482174ca8fcf190e33fa2497b3f1eb11dfeb93bf1f94a8e58d49524da1813f6f8d1fd42d31b89cba70ae01ede67251d3cbec27ef406eaf3a798900affe6dee74d093839416f996b0b16608b3e1dbb42bddfd89c7b25a690702fc3c7779683b78491164bba1112d023e49ae9e6bec2c08fcc3fa2d5cf7dce992a60c6ef15e2dac6063a864bda4fb905b9847e1cab6f3cbcb70cc1fb5f5ace1bcdc24c73bcba0585bffbb91cc70605d9889eef09bd1ab9517dfca45a3410a9959874a3fdf6b74f997917aa16b84de47647a8c708353f2a45c301680af81e803c5fe6af27886d6159f79fe23f72d4a65e7a4e8fd6be84552ba0537814e2e757ce336338db7a98fa38052c2fc7e9ff5f2ea5fa2fccce25ecacf303b818904b03de4a452022fc56ba92bb368937f1f84ff0eca84c714d6f6893caf82e776322f89455c3c4122600568af71ac5f997682d40e92f3f7fe92344ceeae0a351703ddd32d0c08b99240d6933f888dcde9725b72298923433fde1cf0f5264b751f2bfc6114e6477ed3802b4f739c879dedb8da244e99c93a5ccf5090eb7017461bfb290304163c6348d26cf45d3f1744c4c2ead849b5380657e535897694b01d7d406010fe46341173e3763b1e14bd13c64fbc86b107ce329464a31a499b10ce017c75e8a67246abe808ead63d3b5b50a42c490850c697e313a94f025ee1245f03ef684926413f32cccb42322a60e86188357248fe859249e904eadd6c0bfa52a478c1e5d7197170c5c28ff742e5a0fff67919634e1801ad72f07bfaf394560d9469da66a8805852ee15b37bd46ff83ee3276f1a39faf4539769b63f52f5084c69cf085941fa6c1974ec5e42338e85545334fb7d80cfce9cd4fd5d1536d3eec0a5d9899b0d504415e86fa1272ad1f09a333305fa6e80a6029b00ba058e8c3b131d9ca56fe53b0c1000f4ab00eca7b3c5b5514669babf5d3b109271d165442ae064149ba1791540103e9fb42d4c785be7ef1f3a3533ef0d6fd34075c560174890e57be2b3173a721e947214230711731b077d9a2eadc19ede2abeffd6b17ae9049fce7533ea5133b12f47cabd3fe640b3c9bfa84a17058efa06c0d51711669cd9a57e7add92952f388b132441f9c74df6f06b87aedd99b5031ef2dd7d694c80a65651a5ccc750181bec9d9e35ba492685b694f172aeec398a2fd9ab1c6dc8ce16e744b562cb3b1a84e08dec10a2c1fa764aadaed06cc9fa464ba6045090e487a8fc4404c564fb3681e8dfb070ae2a732f41791e5791dbb01afd9f31f5881d69fff8034ebf932c53d813ab130e7d0a31ebb1c256eedf4cba90c02dbbd808dc9ba4e2de77b9271f0ee41f639be9b43bbe8ed8e1a2785d00d9677409eed83f2258bdd0ee5b73099702958b60d9f9d25d62874b0e6af3d788d3243387d66a7759d41a38180fa654793357026cdbf5b486c1d846a2850c33e2ffbd135ba4d4440e7a1b9dfa5ecbd0c603ecf80f4f7c91884c412d3475bcaedd30a72656e3f73601d8804cc0c7a3b1f74fcba74d9ff916844d53868e9b947d76588475967b55dfe9c8906b8b5a6c48e82673c59d3168d99fd90c6b150a56effb14e1805a9343f9b0141c067068f1747052947f6fc404f648c0d07e21abed2ffb71c70238dbc7f8c36e42058f876f73266d8d41c183054001b11fec6882bc28985ff26e02d0efe88dfe426f0f5d1b3efd60f5ffac3fd9ec22c77f1771bdfb95648b9efa788f280c219ba6cbee22edeef83f4b2575b8ca28f93e31f61b74d8b2800d3c46257baebf29b9a0fea1aad75ec83aba5430df6ff739be4c6c29300a20afe455db87b79aa360cf43a6b4ac6704d0159eb34d3242fef9dfac82b3abbb307ce94d087a33cceef3464324a235a800d726d733ba31f1a685543d9673a69defc29fe4f2b3640d6f39f7a17a79fc48969e36bea23c7d3b235afe71c92b6ed78329c2abf806fbf43cbc94fa06417967c4d729ab268c47d049ad74fa97c7e9f299df636f4f8780012880186dc1a4faff17ed71d213744f9506a721c687cc6167e1dfc0c544122e7728f0493cdbbc1e1f63881e10354d491df4d7d7855082410b4adf73f18a495ae4a30ed1769edc5d5a7f31481365dc42edf5d4775a8ab2b73a9ae9079b899154a1074d587c13f5f336f854442b1e7235464c60269d30da40afdd9a7b74a2f8572996f814270bff51da2d3f4e9132bbbec37cd4963fbbf8d5d5a27a6015d7b994d2ffee8c6908cb61bd82ae68cc7dddbcfc17c066f53244d27c98674a3d58829a653bc7270ac24ead25aff24b8f1dbff758818fb7c4c3292a921211efc0c34623d4a1350b3ccbdbac726179112441625cbca2aed4d23acbbac8455d7ad65417d378b59dd43525cbbe5a48b64c28914bc3ad610469019d3b1251364e8f5eb0596ddcf10ced5ed65d72b301352fb4d7629cdea833fd2e8392d3b85914579f4eaabf453fd694d08e4d6f576a0429724f805ca0ff29734cf14dc7815767522e38fbddac2cba36dd5ea60acab2e3061bd1354b4b9dc05d589310bb55bd1fab44a761bc62cba878adb4e83548b27c65fdfb8f162c2b301ebcee0fc166583ea0eec599a1f80a4833994f57a8728cae65d1b54e7e81aacab07b5bb81cefcc3ae22c0dfcb17b52de0d82afddb092c0756b366eb62b60bee39c969c5052f5acb0d17887253985d65bcf8a4ccf53ba2f502418a2e8d5de2dd756dde7f283a60bac1c3abe87e509cf3bcbb6313c6b282d5c4a3433fe1daa382b1055af986d9132c39ea36830c191249b636bea91cc6b5ede3e334785a01579abedfbd5144b5526a92dff34be5cba9edab59686d8e2eb95490ad9155761e27387089d9e88907e9dd9b2655aa3fd648a9b6ce10f0dacc9c565616f67bc1c4e1d11356cb51ddd8430ed6874be9dbf8951602532a32bf74ba5c355b313beba888765287a5096d760aae1b81e2c66a699b50ef0757c186c0be85336e8fe135e108d26cc64e78dc787921ee62d2fcfa9ae0243e46729b11f3ba0d25253a1d658a1cf216669edd5196a9890db150285a46c38426438d20b0b4d7cdf477756a114c19fca4d8195570db3282fdbec1b8423a9c2b28195e1af47ea42462f247a539b8b561f89ae3c93481c4930380ef6a0828fed863c6ff33d297dff2f267ae828beb1bec74ba3a9d2dc4ab4d224e217e076b6f3eb879e2a1d426e8cf810c9cee8707df3d07ecb47c7f07742e4d5d67e271fd24eb862376670143e2389381ccfa3a503b59a642a06d533b3b4c5061aed0388881d8657b687de54a190c40c8a7b9f78f2148da5d09742eaf42a138482c548f6937175f0522c73c9d5417a00b03d5f501a790ff5999673ec53a82547f88bc02007f29eb3d29296a18adfe9101e0a6c96d0e6b512281ac3307067d9cc295a191f5ef88463b64cf778b8d1aa0ef3a30744af203fbf03f377c6efdedca0bbdd4e9d4ec62ced073285e7c0535e3a7ad1f763d50e7a13dad04f51b184654124ec84605ce4802d8fb362bb2d7b0962baa1b67a3599babddfc28d18b78829746207a90b78be596a40ca5b34f54d4f6a997c4d4ece37eac8ce3bdb9ede5ada1cfcd1e5266cc4a6c63ff6c50122de923ef20e2ab142084cddc8bb077a09137436107ab6ffadb9c05b4abffaf6a767e267c71fbf645a9902ee9796127622e64d9771189cf886afa85040a0658f96415c0284abe3396e345e2b052830cc9c48fbf89e50dbdafa62dec89f3e5ddd9efb01673a537f5115eea7a9cc1be78320d6f3c960c43449cb310c2b2a91b04c74f2b65a98ca051fb6a2f8dead74df8c05862bbc46b1b6c09af5bdb10c7ab1808cbd4e6dc54b4ae106e60daf17726e5676d89627396887d870aae29985dbadcf823fb506ecb0513a3e687e9fbf088fd4da4ea0d1593fae8a332980af12a01eb86c7cdb5bd26be18e4cbc2f40ca0f3ef870d4582eeddd283d41f42689c51504557ea5f16139ed4f3e6b6e7ad2df39bb5e416365699c0f600b04f98e7f8bd396da98665b4a9028d0ddc852a41e82d1152372875b12202e97eaf3840173adab6ecd2223e734c3622262699279ea16e50b2d21417ddfcd47074ba12d7f5db4e6094a3ba41a3c4ea12da6814d972afcceacaf72dd4d1a888f6c556acac0598d07f2786cbe8760cc0594ea650cc13173ea355894764901cb4262daf3249eff440afc74f534556c3c63dcbbcb910f0128a311c18a2af9981fcbd0359c6f3d9c9755496c1df73354a63f2d1aeed1b83cd1d3a31567b59caf1987eef0aa5894888d8673a28f32d422ff797422b857a235965a94e972f8ebb42bdf64dad4d010daf75521b34090a74727dda408b87c0e65fb330dd052638a8ff96fa81d5d6f219b0240256f38197d4a028df4ea2f3e8a2251b382aaf815c89dc8213aa1c8140dc999602e949a31c35b9df3419daa235615375c574d7e02673a36504da486357d7357f16420699e1769f38561db29dbb92aff400ff5616780814d041137f27e506d71932669810c38632de05cc0599bd0de8cb32bd97ca879ed81e08849538e16cb2296ece2d293da3ceded38f9b6cd26b095a7b5d899a5e94e59c7a59746bf017fa4d354625320e70d6e839acdbc4b4593e86b6aefcd8268fe6fb22975a4cd29fd60524ba3e7c091263b42575982f901f431c41f31389beea4e37ead00d177e4556de5e10978554d0b217c166e50659dd5de365ab815a1e4609b1cbbc326db118501e79e2d7dcd47724dfa7515ac0a32f3245c598678bfb2c452106d61d630b8783460d9a4b2dbeb5c275f9c93c214ca25c0672d28699bceeb897c44d85486ad8d89e0ff719e9e4229629fa80ce8fe8abb162cb7061688ec2c09c1f09a093a2c9e08c2398fe0781363b41675526d41bcff1242bbdc6f0182043c8850be7b817cec8dbfcb8138a6f823a4cefc8c326e4ec9d134fe4c071d26e17b0cb3a87d3cc7e7b32a4fdf8b3c76328fef5e84b1461f591e13828e55bb3ee944f261392e070800382cd4e84d37e8453ffb942c687305b5728f403f9391fe2452222827abc88730ecee53aa3a68240e4f486a7b88d192d8c67e3ad1e078a324b93009af1f1cb0f839d28a50774be05e99f7a4ead41334743a71ef706c0887129b4c87ceba1f8624c8ec6bc06b77f2299c6e8203c0857e072127585abbc221982d197c39e63f4e6c1321e59458f39245e8376c3dfd8f5c3f67f8540828c1a346a07488977e8a40d0402a9e42dc748b13e210edd4e7719cd1fd84c59d90b9f510b8fc4f66d14c56f70e3624875c55b3677880cfcdd78e25efed9686e161167f649eb0cc1060f1e5e973a56af656403a132c0318bb2b2af9ffadd04ce45154c6959ea27da7fc45befa8a0ee31ee70866301b4e3d70ecc315a7b091dca2f0cd9fe5655b295f0422307325c461d39767130aefe0301f1d8e72363ba3b72037ef87c540382f61ca6ce548ffbab5ae8d268759cd56c648b0345299b77374ff52963efb5daf10a67e5bf2c45fbc537479b63b6c9c06970bcf7715636bc6363eefe336a5d4b9f99355900b05247ac4ea283ec623181cfc4cbd12086adf60702c17e6aa6d0f8916d925617a94cdbd16128465473133e23fdd09a57e4b24a77e1aa504a1d44f153c0478670fb18c08f3d3a8770f0bd07633374b84fc874524b59ffb3657ce95585de750c4dd983f132cc47a90274ade2ffc9ae7495bc7738a1c3efacb86f6625f10a2947ce54d1fa6c1b26b915636450a7bb61017b0970c38331b3108f4b649174a8b71d00492244650721958d7200ecce21ec485fe49641dce21178c2d66fd5c60555383734f19be5b040be4925a722f64f05ca81d585b282aead28eacb7ebf5a6865fdf5c9dc6f2b2ed6508c15405626e1f95301d815d751e1193cb878d97bf1c238531769653f7a7ef7e0c4d3eca02807aa0a89db972985cd98b7a7c9fb2c88c0131a0edd6f4b84b01a8b39c5da2cd0755af9bab270ddee412f15c5da82226c78eace866225f5916411836d76d843f41176c65afd2c678212bedae9b6629d7095a307645933da0d70d97117e2a32e0d6a5450f8f7034a99e96379a5cc783cd05b0e5ba61da3e2a86751b8b52392817656b9ad43ce328981929503c9716fae2193e4ee9e70766b71aec9605b36a6b02e6171373d88bd069030729559c2bb45e852c7958fbd28afdecc62c6a7802767ead9ca36ff5829361411c202739741f9f75c9991fbfa7dceb58bef7bd882269b6b0214c58fca6536806271abd630b2c187a1e67fb628a35267802dfc5074e1a54c94eeff60685eaffa1ce8276af6f8cf82c83eb8973e5940c1e7da51f0c53bcf6e54b3cca5933c7399e345af0e8d6940193a1ce8e4263293d9017eb1ce63465cc2fadac87c1ddce11b4e373254f2973f1def8ef26f5aa13beb9628eddd24e2f33fcb29664e277eb0ea073914f56c4518b07d41020d6d34e71585913a5e43551b7021de56567852c6c0dfc8396482758568f14c6344c4e2640c96fe4da691969aeb191daed8892ba0cd7244ca51ac05547717833996fa06a162c19e417d947df39dcccfca52bdd06085cc80f46c0da98b38c7f572ae07b84b01734e4a4220c8745961efb9b0f7d40970f90b2855e17d563a1afb4dc6ba4f7345a85329b8e31f2707aa6cc8f4f2caa5cb368456a965b1fb329c42403c079d9d970a671ac9671215049de095bc628fd6a7be249bf1c087ee4b3052cc1c6751e79a3e006ac942b548c242f2de06fcac08ade9dcc4a6da9b263a191c6ff73239b065ffe4e40fa20e24e5d803ba6212560e5e6c67dc82eb6671e8281b217850012447d820094841262f08ece76d203f29a4d23b03ef62e4cf93882f1dc737b5d1a1f4bc9c950406d2b2f821f1123a1f0228e92711802c35b654b9162cd1d7c0ffc4e54465e73ff1706b485a2e4a2aa1dbbd4af3e8f9575d0db7ae1e982f5765360ac3746844f8500de828f02359508c729ec77ed2deec3c00a4078f3fb3f55819162190f616da20cc8e692d8102e86a451ce75c8175e190a14b7a8284020fc67b2e3d1893d2d15695b0339d8efaaaa8af8d04cb6181eb03a27d45fcf70cec0d31d197163c8a3f304dc968a21e9370b331b3e53bf962fdf8dcfae7487008476c7a3380492a5a3c12b875b1d08c31eecf8f3badd62693cf51dd430033fadcf43d6a7a2f6d23a97db0a9d67b3eb3a97732731d00309e886236a586d807d79b219a152d9d576d09da468469d357f59b5cd8ea21c0f5d3d78b3929ba34f1f07e936b97d2a8e154d03bd5d5a10701847847ae3c44f613b7bf46b72c02769929f48c761dae9c4d401ff6c207a392787e0254de5e26d5a11f9dc9b814486c76842dfe1a93cd6aa7a79b45e53912fb71136b912e8edb2cba52e1c6a15fe19582564579ea7b8dca04276664a3a51abea378f15ade3f31b7c51e480cfeb9524b18799b3a9b58ac942f2ca841538e8ef6088ebd156f3647697d08c446c3e1b581f2a2f9b8fac6ccad351122fcd1a7f34be6a5ba9a052dd2ee37ee7278a3903d420e61a33be76dfc96a211d6ddf2f921c5af12371a66280bcac1fede1b255a2547827065669a6aca4f3f26b18dc475bbd110f897e47940f8162bde29e4eda857c181891f8a45f1bd1fc318fe84d2ada9fc26c0cb9d72b34f314215cd5b24fe7e2bc9e7c70bd719e4d7fcf333fa7324738a512c6e5d9c6991ae7ed5a0f6cf0d287189aabf761924b3dd7904f9f0d1269a1d57f4155ad8eb64dbff6639e9c3c6adce65da391c91584a75bb2522200675476590e7292933d4b3ccd709f97279d052b7382735d1e8b229e96eafe1ace4ea1f7b7f02d7c0d891269b25d90b4cdf26ee3f283b6f423df9c38dfb014268e3fc41b0c697ae867eb189aa3b7aa6cd39463f01cc88c3d50cf77370f45d0d7ee090a8b579c09abe00ae063ef87d71327703a66acbb9c00ee0b77fb0cc8776aad2ef2a96205a0978b13eb0fbc1176cac82cc18f506812d8ec757cf18b58130f133512012237760207aae2d479fc41ceead60b3127672456cd3089fbfb5b543dd608d05c257e3fcbcfaee8caf4999c5838b8c490dbf1d228f311cefc1e790eb32523b75d683437d5de5813649998aa6efc75b574ffc8d8d7555a1aac438fa3c64f2e5397878729e7ccf02237eeb6fe4b92886dbc24af614835b25d9c01cc6a7fb04ce168d13d44faa2b87d7a8dd411affa8f1cbdfa0e2545c0600d0591ba8a13784f16dd3087e00a88a18295654563e012a8d631893a933078908935ab5ed9a9036b6663edcc0395f2b3c80ccd06d3f16565ed4e8d80667c0f3e7964b1d5be3c1114f6e441e4c8d254c6fead77c0e0cd7ae09557263b84bc14e307e73a5398a18a01cfd4712c27d8d735be713c55cd6b9d48692d7c95cab25d897df856415a24043ed47eae6ee65ed27964e95fbf4035e2164f13963f52f96339f743335b8fc965631fabafea1295f2d94a5e5faa10513e686e436d12151753257c76e7b63a1c3d37241f20270b7b6990d91befb3005ef749413d5bcb90351bd39bd447e8c22bf57243b29b1e02e0101dff4623241cb4dea1694fa7cb7dbe5aba2c2c4655f5b708552cafe7e7a7185bfb49a4f90f2a21de8713c7ca61e5360ba07ee11998c35d946cf04e1a88dedfa72e0942c8d7720641a8a5aba7eba4af94a060658abea667c932bb201edc94e5704b80decf3fe3c3b93ca72fc615886c0782a2c5fd3afa4aae1ce847e0c7254a2baa526225208e38ab118ace29194a4235123ecff37d9b28e706ca9dfc352de4ca41bff0d72ec05c14d3d9b54e6aa57831aaf8624cfb23dbd21848c84ece72b9b25c1e89f0d4ff7941b07e5fa784d2d853ce47b0c436c5c8996e3893298f4f7f1d13bc1d3d02c7b0ebf473678042c1819e726a491518f4b95b1bffd955d9fe9e428dfbd9b6a3a5d147d858c935f8d07c34b84754e796e050740a5222f5ba784bfd25040e267e5276865acef42e9e9ba75cb66cc191a34c77c90573b3ab896189690f1d2a3422f7f907541b713858617ac5bcf209de164ec31a4394d75097269effbc0bd231ce2a30879b37cee1c349caaedd4fc2c17a151be70b2e2481908329372e0a9d41d804e2d85adb29c56761806b0c411a264cd402c42d6fa74f3e1ba613e1941ddb25aeb21e1960d6952caf30ee81fe7f01c1b2c31630bfcc0cdeb6fd6cbb3f81ee9fccc84ce8ad5b06b8ea6c8108ae0a9f093355b853d18b31e32840c83c8ebf3a7f25cb9437a81dd3fff1ba65d95274b22fd01ace715dd2bfedd4b565450844940abd789abb58d368e508ce83f9d0a05de67c28cc30b94d08fe42e3c1d5435b5384d88d1b1c4c7caeb4f2922be48aae1926eb866216ff842396428a110c958047e197ed64370c9127ae4361b9b459f89fa798e2094aad45114c979f082487ac013eb175b99348098335f6addc369cf959a6372dc11ead55551a00fc1d03b7c66b45f904945567d2ffb27094c0f65c26a7df8db3453157de06a980a0d8a446af06fdae55fae3091a9735ec794ad65ecedf387a99df42d98a1ada1f6205f2a044d325de572e258e05b2f8c496fabfcfbd008136b37f3df417b3c07634c7440cd0fa35df36e91b6254b23af842bc025fa377c09142a149674e76ce9eb3368766db45a22db44b944d015373c584e3ab89f232345682c311c7856b74421aa9c0d4e5c042dce75571576a0d35f5621e17c3be165893c0d428f696bf16f5eff166f062c79d5169cf81e0d8d5ccd0c511e8ee9eaabf7abd6f56e88f478b03d7a99022a2345362b96b5a9dbfc98abfc19a698f3a635d1b955e5eb78e26267e5f225c0c6232a628076ee268faed2ab156befae975da1d09840201ea72a152c72254a005975185736e1436b65eabaa68c345ff7964e946dba98b4cb61acf3a3998623b443ce07e8faaa3969dbe7986860f70cae53044fdd7838a681f9ebdba52bc5b11ca9855f800834e1709ed6d29762badb59b7a6a4c767fca \ No newline at end of file diff --git a/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_data/6806848.txt b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_data/6806848.txt new file mode 100644 index 000000000..9940dede4 --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_data/6806848.txt @@ -0,0 +1 @@ +34344181b3615e49370562c6cc0d1282df461c3dbb518bba4dbaf91fee81803301b421e01d2844e2b3f6df86eea6b8afcfa74d9b32342c3aa8a5d5be47c0a2dd20928f3086fda053b498e8c32e0a2ab8f1ab3be3cbea7a440a57ec9780c60a164152c774edaddcc7efc4f31c99aeb070f467e0b82cdecadedf9f2ef6b8fbc2613965ddf492382c43ca97553fb06801ba8cee5cbdf3001aa1a13c83c9dc9a8ec61594679cf18bc793cb97d5cdf8f3f55fcd405807e48d65ceb534877548c55ca151a4583eae0e1439c7463ded5e08e77e180e59dc35d9317e1434c5042cec68ce205c1f866bf74fa3bfb36262d27ee20906bc9a43d5625bb342595b4a3315d1811dfb6f0e0e99e2d77cfcb1583ab4c005f879ce7635da19c05f60f910ac00495b1d3ebcc8c9be578eb729f18969a805af77c4aa7fea846137e3a0afe121b7ad911679814a8acedb512372e8f02150b7d4b6dbbd45e06da4ef9ae01b361a5e31c606beb6f2458a2723c35624acb22e55fe5615cb5e84ac8a9b34d5c873d660fce406d5b11a835d84a1a10240fd7923c112369853bcba7877a5a8ea50383e80a2d136d5932f162b40da0a961c5cd6c5f4cf3fda40d2783d8bffc795549242632ca7015cede75e398feee8709c72216926b2c604f81a43d49f8a092744090ae172bd1f2e2b64e27dba039445e95396c448eef791b82fc0a23179550745d7f7605926712fbbfbcfdcae5054018f32bc0aa4e4a7712bcfbcea1016c0f1b02a9976caaa2c45f114bbfeb6f67c462301ef2aa265d61a327569d4d6017893fd9a7b80fb450eccf58d68e7d5a606bb8b4f169252b5456ab7c1ea22a976c322b08d87fc23416e824093bc495842ce669c8d52bf18f14835b590f75380b1e6121a6f5d25eee8714aa2b8764bc6a4b9c7f6e1330ce10e1c0bb776eb737e04b1f8544d540d82966279e883039820850c5b074412b5508d2783815ab54560d28eeb7a255456d7ed1a21c323a8336efda0fba6ecba7bd1c3ee7d59c7f18249cb3970033234c344f108fb904d159de4e1a5169969e098fadce1ef5abad9ee4b22528ff3ae3d869f1273277bc5ffb8f2285c7e08d086912cf2ec841d5f09c34fc9bce37a95f0c5514f18443ceca4affc2cfdc94d68a63ad7b63ff7be7a6174a8ac17c3b6497f0097e8171441410a728287d95db3d215c2394c778f476ec6b33987dd97de3ed029d8ca66a57b3b5720662248ec6ce2e489fe014daa8a5e757d4fc4c98de9cd8811e6985e8ada9168cd0c92965340eb9326a89b4fb426ff16974de8f0eba2f8a8aeb3cd672a8a536d64d0edd4ebc043cce424afcf7f4bf61fc73c61b98d0970a54d0445342e67e1647c4c51b3034242be5546661f0f8be4743036aaad4c452e271f9ebd234a5cdb2c597e51dcee343e353aefd99907f72b7750e336d97bab984922fb53474a855443b2ce9fda9f8f89b22e1f4c78d42d440de0813bb197a599bee4a9f618cfdcb3f693de50ffcea45e28126f4adfb4c6c735c82daa030d7e7a46ff99f1322eec071926d968157be5d0dd1cc2007e46a6aa454431085e4a26f8d3db0ad33d3c1b91c1a698d6448375dcb16df6a4bad5b149f75bf777e3af1f8aef26d6ae06f538d8734adffb714e0ce6aa97118231f91091532c16973bd9c30d3b6cb2cd4001d7271f30ac6a0696bef1430bee3da648ab685d5348aa78821d78da4b590e5fbfea2dbc7ca16e0424fc3793a967872abcb1e0141d6006c4d180b6f48cc56734bd2d4ccfa21bc51c51e899cda4e0556379a6cb4397f4b049b9793334203cf1344b4c6bf9139365ac15ccf7fe4f25cf1185a3f5428ee1854609e8f479a6f32f1cfadc2af99744a870553452e990d0934cf1bca62f436b83b6d5d88acb9ba5b90838d168e02d63552802307cf453ed68854fe31719ef091061273d104848675f72c7e18e072522204501d837e9f1a36ddd01912518baa84f9b6c2b74caa4fe785a5f84ccc99edb8621f2b65a4899dbe05fb0b5ad7b1bc249b6be9c21a53f8afb3346adefa87f9c9b1f5099cf25fe80a6c45eecd671420b31756993add1cae0b6469feb1ab121972696778312b0ec708d9018fa579b4a04690e59d60918e92d464a3b3824e5e892d2fd5659fa2cc8961b752f4ad8d99b0dcaa64085e169cbe71d08bee52b77ad9426e8cc53e53da6828e875f9e6796a2f45014a9ebf66a9dce0846e2ea86b1929f1aabde83fdf67782ebe1257ae935aa4be400f54afefe95474f3d7723cb2fa0d0b1daedcad89b0b28fd07a1ad6cf32cc0b463d046cdc957328817bb830174267ae79f4c0b21223818954bdeac61997c7c9cd77593df630b1fce599eb90ec7c382664d014246a8752cba0eafda6260e86be6134f1844feeb8f44127f117ed77d203de48d1cbde4f38d89941d92934b99b60129176b8bb125aead41d57f96c5596f5e8d2cc9f50b99eb79881b763234675bed7d94799ca3c1014f6697ca18f025612d5712363f5187710d02054f51b0fdef4dd7955335a446be1f4b5cb34132f6cab776259aba501d85dd3923f8e3088c0496ab8cc8747350300d011ed0f60c617ae5dc030c77627faac6d92a9750ec0a6f0c87cb585c7cefd4f568cfc57cd700c4afa735af2b06dd8070aacde989459269af66f570b98b3acddc6ce0902cb84f16c15b2e91578571910ef6294f2e432768e3a1580135771335840dca5488d39585f1be90da4e53d369e6532a59ee954ded9ce1bc71af4d8fe25c1069b2491245ae690c993ba9b623f69ad2e1d658eb4a773126d272cfe1d1af12213289f5b07fdb49ef57f153b065411ffb3aba0c33cf887c7bc8a448487af2896227129984a4015ef1ec6f370e4d5646a8aa68b015efc3e59e98810064a5063c07b67476d6df61be5ab13b96d41ec37e88369d320adaa6dba37c8739d60f105424495140cab84f073a5d0f05afc347949ff20e5254321b2b8b82591bd1f3faad65656b0716bf59e5f06f0855ebc745f0d68956c65789d2a5d3d2f40150219a303bafac3b2b58e279e5be03e07ff6d719ce492dabab02c4e8c0b9ee0e869b846e55963272da1553c6198df770d8f538ddae71115bad259d1f5035e2c77d6933e71599cdce697e1e46fc605f115406abe37a66e40ced6ce9455c62b672584567e35461fe85121ad2635a921965fda12c9f79bffc4495d955cf8ecf5959a7be6f024e0317363bd5eb2ef6a2642f18886697bd0bedf5921491dca415f2ca330a4f0b6fdd60f89cd7ad34b7ee9740f8d800ca7755bb540557421a4ff213c8c14cd97f717210ef33d237230f96a553bf1ec2c43fd66875ecb8b8304c741746714627e705151f5d746a062a3c6194840a7e1985f6ceec6f656b1ca364da80c421097af03f97766d5f3d91962c448d57b94da6f4640cd4095130bcf3171a89b71ba5e9f91ad78b5533936c2e6d7ac25e7e1335f8e71992df4e0e637cf8e90d0bf852af02464a666d1fd869e8e26714eb36aaa6523ea9541eac050ed8ff2ac49ea70dda457364102f5f2c959af1cde68af3aa901b788a1dfcf0628af454005b51399a66bc685789c4bd4bdc9e9029263343f8d1f5d583dcc80d4749044f650ac0ac1a803c5c2ca956067e5755d5725fd6b0ca62ff6a767a01b8324ff0c3001fa561bf720f2942f9a922eef3187e0ef253e22b40636cba8455df6162f7815247bd90449f29199da57e7dd438cf8610c163a0514b58a248eea43742f66dc159ab2848008dc05c8bd109b08585735da61fc3b4499702b63dfa34901f91bd100582bd1ecd6e92298bdea1e4d268fa1f3a5e65e32748871fc346363d47c917c101d40e99d9728d17207e01c58d7683c9458a4e3d52b53846a04147017d68792093f240bbeb4ecf0cd6eb5a0062f1aff01eb3bd07e26fc931cdbb2253238b1dd59e150bc701a3c933019d0599ceba0f73a375b262022289fc430a753898e94fbc87aa1af0eb5d9b55a42f736a80e389e5ace319a1a92b93e9b6c0986711620ef88da4ca354da8f81b172a01294e070682119a2f83f4cb270ea18c1485acd310d8d1c14990f73d921c5617cf0f3f5a91df466f0317be6ef6ca28045dc31da3ba04027c54cf4f12e5576167d3f2cd8b7938351806983046dd97b774699485f7c914de8f2391c0bf692dc7dc5b8f0d81700fcff2b0663fc0ea38f5afc188a93868280f9c8c8d5edfcd146621a081edc26e3facbdcfca92fefcb1260860e1ceb01b1a8db907cfa9b32c60527316bda2307c06020c9201850cfe2f05b82b381ea366f049465a8a082d646788d37f21993680eb390e3b92256d456943868270a8855cc055b2201923b0c7224b80be252f0c89c45c409cda43ef664f3ceb2f70f37f0f3c82a1dbf305f31b6b7dd4721a0bf906ef70c91608dddc5babd45b95a3ab9a10ffb135acc6f56e1a0056e0929a57977ee91227c721d82f6a90d08f6dbb364111f11b19fed0b253540e66611714425b467bcec79d66e2478f4e7654a0bdc18feaecb8cc6d32c3a1586dee1dda1b7b30a7f1afc1f896225b9f51441732d4018b92052caffbd123e02d686fd07943b33512d2709bee4beb7a7e6bd08160595bbe5a29df47fc794f950f53b9c645b578f42601ea603b481beda950e23b0bf1411d93a73795d6c3bc6dc0126f1e1a670da2d167e3b1c4dd6a6fcfa2118a689623262d9026b02409a73ac519795a469cbbcf17eb25c0bdc35a3a2e952e0cf9e84a3276583a54dbb1020eb615b84ea5b185d8ea267aea36649c2334f3c435a63c66e4f9f84784c4b09310c721a4633c600261d7f7509cab8d92a96fae359e4726d0b34c838418b871b9cb363b84f15375d5a69a92cb4902a1fde76f359edffcc107342a4496c571bb1ab54d04435844b53a460d89f6acc27e0a58a3d7d66abfdfc9a0c8ee61b695a8c79b003156b4feb24deafcccfcc5452eaa12bfc9149ccfcfd53a00aeb5acb72e96313c272d531b8e14ded78711e98035d071982404e92443262d1da560622a351ddd2332138e50f9324e555acb05a7590d63ef9a1801c7c21ef067967c27447ccb338a33645e732208c52525b0ff325ff91cc80ae981c75cf0335e70ee3b256d58bd213c7b1cf3f6aa6395d14f04322324e10e1e43a4ed7dffef8ac2c0cac10622ea3b6884b9d8b2e22ecf63b1fe11c50a97b5c2a8659b01a970bc9b6284e5c739e4d0304948906108d1667663a457fb9e80aebdcfed56daec6bbdf0d0c714fbe5d5f75de7202f08ad10fa1738f27046fe25448fd3408ef943bc536e554cec6691b82c314b4e8ee527de5e601de1b564d3f0f341b4e3a8e5ae4aaec4cc45cbd3156e6964d7cbbfa433cdd5fa4c126084cec86965d00bd48cce283ce9c823a1cdeecc173c24fade06ceceaefef83313da30c39b0931431901fe3b21c7dedeab9bf88032286f56d6fa23a6eb4a3ac868183af6df7c6f707ceb32ed08d27085b1e2feafbd2796c656f9e892864c348f2fc82844c1a02c782badb2f90dcadf120fa24b89b90b1b281bc88ec3a459d1a2cd9ac22e994f2ca1376fff37afc360f228472417fd2e03c5ab7869ae8de9184aa42daf8a8511233df6f4fc85f26e46def0f9882b141e02f9a772a323305b1f0d05a1583bb7980976b88e39eecf4cd65c5baf949c7538ed91c3a71f991e3ba9a9c32f5582d3f03cfae5d96cb378de3fc154eb6050a568a76f2111a16ca0a705d6c48d2de441d45caaeb8badfb6b16f2f84e6937cd7a1bb291be496c9d05e310fdddc6795138d0653d8f921ffc2e1ec123b579b852af1f48aecc909f9162740738a7b3699f43b572174cc852383ecea67aa043e85dfe6033e540993c728a931831c01b8bd8b7a27414a28bad2f84af4f1b2bdfead3f35479950610c73949b11b745ff5639592280131ff4049d4a1cb16bd711bbd4ed759a79f6a9ebd39b962af8b4e35582c4679211616b86bcb9d7d1db9069af318de5148a4fa21aae62a170c0911a4703ccf54dceb00071a0852095bc3230056562f20626ac72484bb071cf89902a020657ae34e3d0e23b1effad46a54962a6e4f272fbb610463f960a1dd2c231713653a29a3a8a466812d7e7026758324dbab49bd4ef58672b4f9ca5c5d311129f7a465df86ec8d571c7927b0ce64e531a656cb220141ee2bc7704263f9e3c2fe52fe1df35163f3667aa7dfccb071e8cdbd60955441d83c6c72b798b619976068a740d5b7067b9e262d7255de2a5ec70f3cfaefa9489b93a02767827623385f7e12e2af818512ee79db67d87f462dd28422fb46f44a3eed8472913c0899d9c660cdee0fa94e9b5d232993c5826ba2d73f9165d1de2afee1494a75e573e997fd91ead344c35136722776b115e4dead81dfa4a94e4f6d6d9ec529edcf43575fa47627895c517937365d087e12cbfeb070a56506b18e45d821dcb008c91a3806c1ca63baad69735348f3d021417373b8225842fd3d395074e79ec50b824ee56dcefa3bbf03711b75a127220f89e8074e3c7e306d6f9b2b605109f773bd39e5f77bf57a5e362924043dc79a2801f77e971070f23fed8c4fa09a75e8426d0bde3e9d4c7cd52fdb637a16b34ba1e0f8f8df0d8d4bfd90a864e682485d1b8e7d285aabad49f52e07d52036fa04820f0e9d8b5b9e7685d6554e16b87b9973650b569f11c5d93ef785ceaf80a04c3719c857e56b1f8672ad0a61c006fb9ac832dfc72cedd5d47cbb853bc1e58fe26508a5e29e076cf89cf584316d35667881edf2340bc61f3248e24866d0ab2abdc84336a54fccb1d6c1acca5884c158cd732aaaa76dfb7066345678c284425002474050c5937592613684701205cb6032083e83a6d6102aee20babd55bbd10bd23f32388690cd65275358892fdc9ffae1ac847af7dcfb64c9c500ca509834ad9b4a8febf70b992a8781aade29f45b927cb0231ec0056d6283cae004b549584f13f328ec1cce9c1c01a656f31ac8e97592d2018d8185cbe3d9488d2e5a94970cc226c2da68688c0c311ab5ba65e430e58fb0a286a47fd0c509d1e040bb9952352126171172051c24923cf9c15a7ed9793cba7d346f4d7f58957184aaad8e3a019a07e5e11b24e4e1c1907da8563d6c7fcb0573aa0ca9256629362fe0a2c0d215890d915a4420f96c73760f4d5dc36bfad25131dbb1c3fb86b0d00903f6203d04351e338f2eef53ba36801d0d04d6671d89b3d92068b5e39c7b5c3fb9227c33cf56d72d24031375ef6ea9f4a22d1ef05b4288b02c18aa1e013075ec555c7f5e6be5595040a2da52c9dbcafcfd497a1012646c9cd74123b56ed480d1347ab4811a2e5b3dfa9eb93dfab418a8e371ce73e1696bdd0dd65eb2e90e4b44af6a06954846cf2a0e54b5304e182e364b56216a8edfe108072f85d31bde4531d944ef303086c836694103bfec5f7ef3b770e063995ae97d9327fe2acb06c31d4d7d8d4ca3aeaebf757a8930bdbac2aea85ad2dbab5d249f1bc2d9c76517e4ac85bf39c0008198091844eb97014818c2c05f46bf87f3f84018acbe9e9cc893235882988ffe42263c37227648c6aad387e630c24731bf99478121bc7c509ccff10cf51d6b8f3bef3f5117d46574f95f02af07261a4b350c996937f145ca724204275970d6362d38e7816e79258f2fa8751159e1dcb7da7c2b2f9c8f807f29f08e8f18f2948fcb02ad26b8fde7dfc58e804a3768b3476a3fb44484b202bc0880a4e5585bfa7e2a47dc6b7e3fb5fbebf2e6ac0938450d9af46bdaf66eb41d135eace4ef9482d7a88038897e8701f7422e30b1061b796d6e2a2eadbd538652ff8fc57712e5af867928717e361e6f1e152ec9a76e567f9287e3aaada7b4441fcbeee8980444588cc5f7e6f1839fe6131007432035daa55c09b96b6e77dc623b700281c5e916c8f30fb712a2466b8361c82730564e2da49d87941afcec7b6b9f17e153a53a950c6c3d372f0cd0250ff1f6c3706b23d372e11f53caf9bee0cea5e877109a3f710b3646ae74b4d7b67c275ae69dc43e3fba5eb6df7019ff1364d94f6024ef53087d263e3dee33448ab2ff1872a02e6f6bca30145237d25beeb625c27b758c393393077bf52f2334aafb9c44568dfa206e81458906af8e03816b44740c650f0075c81a4416c0b2d77eae5b5ff1327e0730bd002bc56909bc13c56d0f252c8244af3a0828887fc064bd5adf46a09c2534e1101eb9221780621fc09c438442e09a9d076018b9e51be38e101f21fcfbb444873f4c1efd2f39b9b1eb01f93d2ed524d4767bad4a8940ee1592921760d7464675f692664b4eb4913ab57ca41f9b4ada45e4ed8ba00c9438a52369548a0d8c11b3cd3785092c3ec11ef1d7e916e8bfa1b956563dbc46e8465099b38d4043062ea34cdd46bdcec05404094c1da3d506ade2b8a26551ce37b1279657cecf6ebb3d1f95cc3094155d289d258f11dc63faf6b76848b65c63fa9e1cce2d4bb977ec22497afb2b223dae9799b7de78d34a1d0f5d0f20bcbc4a00793b2dceaf6f7f956a7b854bd159ca8bd146751f6cfdb22a477bb6591242d32ae28ce46100de58a056660a6197971f3b741bfcb3ababe6a0c5c89088422e1d22b758d1e925e9825e09f144f87ad1a06986736ac7e42e69557ee6d23deec1aa2514b15d25ab2aaffa1e26ccb5158f62314ea143d5f15eda4d417fe2fa2806639e65b9dae8704b632431b74cf0eded215b66053d71147ec9b9112f970e4b4e97a434ff5eab04f4ccb466be150ccfe174cbacceb6aadce29aa98118477111faa2eefe01eb1c85e598861e0d00708c5e2e3a2034edb4e536fdc90cd91d50568aaa15e41c1bf082488dd12ee7098337db2510f71d3512e1b0d807763407162a61137b3b69816b5d76a7e00538511eadef58ec656e01566454c5044e02aac32c60701c021d56588280460d005f6d06ab3abfe046278e962e23333c1d4c2ae7ce783c25de4276da4e0adc873d5b3cb3ce9b9e0231df2dfc54e3eeac9f01999f945235a3e0eb322a7da6213852ae6d519487376095a053ec8cc0c9443464b899eac74caefe6ae64eced2818e6c705c4836fba617c84910f1dc1760bf0674cb0c0744cd4f4dd73f259232f74532b56bbce0fb8650a977be6365cdd169a52ab2fbce2f9f8bad6744949d2a77566aa091a0eeea106cc01681117af382c3ff31dde71684d165b5125f3d9bc10e562a951ae83ee98737ee3ad8c9b584b4f6582ff349952cbf8e3b834dd3eba58f6b1fd7575c5b6720d8fc935a1cf2eefa371698e16d4891304f8d296dc2e0f77a2f4eee44fdf328f56ca06ae79ab16d7f9a831d13ae9741a54dbc92eae6f1bc495f6d4b8e69dce330bf66694ab826188a8234ebd5ec9287abc37742096a06c4bff2687fad65859177ebbffb0694cc4723b2484501316c806d4d065a9069ec1120b90cb300c856b584b0f8a868148ee019f7a7217fe840f613e87eeda23d7b02702134318f88dbc701d003f7daaadd6f6d204cf0b9a5e2526687e3f7cb5ac56d443a5f256b9c5bed07b23b5a0fbbf41e809f2527c88bd5fdeaaa455bd4bef7901fd93c54e30f1f2741f8a1af1bb4f1d511962334529a00b6298fd61e986a3365c918487e91ba815e90b4622018b09b43824aa96efdf4e80ef59e1e874507211b79d80df2cdd4cd8b9fbeb925bbfad9a6dc03d9e1671f614259e621ce6e4625bf70c26f2634ce7c18d09bcd3b45d771e94ca15a1c19ccff11a521b7f47602b3d7101a4d1eb23f5ca41ba90d0bc57f7c6f3a04afa63cc7cb88802ef9d8863fb1bd0a2960c25f6b030db5d042a6bfec3123d2f9b782127e6b55844cb6d366c82d6dab9f26a65005764d9a7d60f3d02fa2ca55c04e500062cf3220c05a1837dfb319e94a02609aed8744fb94325508d68fb532d5a5bdb4d5acfa5618c5cf3d1f4278dd3668e49f4256bbfa6e4ebd09c6a3f1ee7d707773dd19801fd68516d78e4e9c98a0201c99d5fded8ecfe682d6e67b7b3fb05a9178921862edfaa4c32a6ed6a4d823040f5f90a1e38a4cb8e2fb25bf2f5b368a0b561ced1f82169c1c0621a34daf8c2a518f3708597d44019c4437ab9dc078b379c64412034c1910e072fa60ced3c31786e9fd577ca01ad3dd235771e184a5fe99ca600bbfe13e9dff4d4d71fc349e65db109629b018536cdc44e682fa399e46204936c483adae39bd275dfa4aa7834a2313445d6e59540b81f5f6a5f14d3e4b4349047066d143e8981fde8354a683554452e3f0cd0fbf2e6fb7eefddc862c3774442ca2687f2684c724166289be8d1d9ab606e79d281950a6cd26b9fe11bb27a49d5d41d7d269b480b797fe9ba5f210eb4522856cfd194c1060b1a2dab6467019dcd8b40edebb1fee3246c3fe880d12a50cdee4b8a135a56b145d44bdb06dd7d285d4ca398912621e4227a692faf01dbace60492ab571b7b143e00c5b100ff976852308eada67e7acd017d559c6c412b7a977026863f946516e674428feb18bb3cc3696e354133d6dab57bcad8a710fd19bc3339646383933f64cf2ed8d41b4aaadfe58cd8f1f61938fc3b46cac67291c11f0bc030e1ea12956c01d4bcef9697a2ffd45d812a34816ac375884a74b21525d55b5834751a3ba50a433a838d29b850c4ad41e99f87b687775206a34a96656b5e28406df86df644bc0a2f18d09b82574366a21532f7bf4cadc35c85f8a5021b221392f9357e7b23ec44c63b9b0a06e906ce333489387279c58551875a412426ee61c4108bd053d21ef51317fddd66034521c6d29b2138b009d256ad74f2c1759f93203cc57ad50efd3018c3c0aafa73c0aa6fcd7c90e554538c9c0ecb702c03f7a850c9cccb848a26efc928e8234559762c926e7d90be61e3c80e875496187a89a19f50e92bac5272277d51c366f26958847696680d744e980761a57386eda8a67010d46f1e1a0de194fcafe5ae577dd6a653dac15a05aa4cf517725b80ae7f0dec936e8a9656b27fb44502e590ada59bcd3c276644cdd9f10ddaa396d511f7d018d641ae7f8b2b475871ee99ac55923faea153da9372e14f4b440a8d112dea0155f50af0cb8d4703f330735a48a7e26e91e8d7dff969ae31b2f3ed3dd6e9863e86e6cc78f3c45b3801c32a03ac4147165457e64d91b6c1dc9e516f1ea4d7f8932f089dd7fe1487af0bd806a794aa7e9ba0b5ffc8ed29465d2358145d33b0cce2bdcf0ad43e6e809388f94e935dec6653764c63c0b8782460f20320d31307a13ceb74254d850bb084890bbb665d63a9264cb3a30e1911f1c2adfebae14670e3a0e84a7b3cd32ef1ab20074fc5ae6e3cf4a915c35d57cb3d8e90fd3e579008c19e76792c0ddcfb5b07a3d8a38142c81cc9584ce83ce7e0b38899a52bc6c2387dba53613b37e49386a5f3fe604553e6044c4fb17d5eafe4e380630fabd312fc053f65de4eb75649180b78e64cb9342761331c3f3e4c140ad211405140761675e9da538125ed141e29f61694661ba54c65dbe388e58e1ca579cf41babf8241d195b7a0e1b0ce45da38155c113abc175b9066f9e72858d8fce0999782a9e3806a6f0842af296f76b532bd3468fd117ecce298809ba11f1dee279e6a6b09f4251f1a63a7190d2ba1f9bdc6e5779c19120d559ef5c1f9b41dcc9c6a6fa00f64c31497e32496c7225654ad92d87c988d95b47ce33fc941e40c1e6f88180f7c5d4097dfa655103aa1a7d321216486d6927a2aae161a598c35a1a75bca390702d9d682c36c226280cff3adfedca49b4124373511dcf5af0cfee517d175124c8592e232586407f2fcce477db53b77819c58976725f5ee2140c3d19b44f1eda3c66e11a5d5344389332455915e77a79f2aceb1a3a364fa07a47a0033b7495bb65bc0649773e93b3efbddad12b159f305c5d8547ad94632471ac27bc799c59e2a3ef14649b37b528526b541bb7133dd28263219a1bf1504b21b9a072aecd91b4416de94539016a999ec4e42e070e4b22557a8266bd731d8057d5eed4a299ae9265673e3d790a431da79199d3feafa59817043faca07dab18c4ffaa891c7c7e40dea9f050884ddda1867f3c78fb222038977b58dfc80fcab29132e006f7951fc32bf4f40a2006f9ff3daeb8809f07257ead02b01b672d450975f4571992b8c9f476a2123b67920b5be4ea3b0e168c297436e21942dc132c089770814f43279dfd84da6b2a102e9c26594f72e5b2d3819f581cbe069828b401a56e967423123f330f9a162e0f18a4ff45a17bd5895fc7c26967e91b0523990cd2bcc8d3efc7c95f38059d3d62545818b35b3615f6042b8c31da00bb5f2492a5deb4ea83d2014c7162f02d41e0f21eccccebc6e6d8416da81aafd3d3d6087e9d1a2712236b800079713dd90153994ceca10afe9920369cba8decf4f8e752731fecbc2cceaa71870cb73fac19a9eaaaa3be909658cb66e2ef4bef28f5014a67585733f2d9930f501ce2f45a408ca3def8d7b6a5209da414aa4bc252530223beb6c5aa8b968c56480baa6cc034bbde286f07e09227dde90f56600a989f16c463cde486478502ccded42db5a73a38fae2499090ed445bf8fcf6d8da3306ffba504d603020c2b772b185e39f8e671476ed5d3c567244c52f18217d96a363e0181fad75fbaaa9ff8dab91c19c622b630671023ef6d26ea92115578e38915ba2185baae1b9e8c57e4d0790d742dc4928e4ed866b48d4f9f413938ac0c29484af90608babcb1dfefbcf369d93fd523a0b783c27ebee103783c52bc0cf96972dce0ef71185da1caf578067de992ff965287ef3e1e4d91a6c04cc5687350f6f61bbb30754ddc18a3df23245b97380180f66152d434d4f3175b7a5e83175446b95320c08ee792757938c1c240615db652fa1d88facfb2a2eb6a8e58b26dd3e1591ad25fa396f2429aeaf490f43809789688402a56476ed24f66cc4557d3bdb15de2bc7fc2a5e5f18dcfcbffe4700f00050c22c2bd951b503088e6956bdfd344b133df045bac8248443fe7fabb3ced8930ad7f3244501c52cee9181a98065df1208a8aa134d0924825367e03aa74647424a42c05be4ffa9bc8cad99ea1a50a5e3cef2c9fd4b9eb01f993b9ee8caaff5d941e08758047d5a663c7d9cb8e666a3ef96fecf3a9e2e3d2c9868965a9cd501ea38d6fc7678a5610901361d49abb24fd213a9b02d9c3aa5e5fb68c54ee50efbc426017d51c365acceb60791a0120dafd6cf80330bd5819e64e8b77d3e65cda30812826ae4a08ddc2e0d6e395dd128e635097ba11b2c654fb7fd18ece176e9dc74455e6df3416ee2b357232ca0a2ff8f126429aa6c38be2d43a1fa02cbc039328b105145e7bda1da2b5eac1d694eeb9b3160b95ad06b63c63bea55b4895ec19b9f6f18bfaa140fd8dc2389db4d0593bb6be509be9916b05db6a31de9f4e72fdf3b26c1e9cd5ea310bf03dd8a0cca2341463863519b031cee1e5d733fd564e65a0801a572251ab99beb049bc8aaedc81f865e1ae8b5c8663ccc04edfaeceeb1632164fad92c55a9760c5b9555aa31f90567881db6e253e0386e3d298c1272ed8e22516be77ace06559af5731f581231f10bb7380ef27823ccc29f74cbbe0fb7108c3abd4a326b7e3389cb550a79c8d5e04dad16220c683e90061677406020cc0f293fda317dcadde2fdaa76a89f240f23f3a9202d9d8a3a58608416b0d27aea01e61178647dd2b14f6c66a6dcbc0e28f686cd8a331786fdac96c2ae0c4e4fe173df2b15e9044eb51a2933ea0a050fbd2caa6a373edfdbdb076cf9cf7073be092b5f3823af4c283fc63fc49e7525b1320449a8c9788f53d4c284ae5a272687dd3a2a2e96da15e6f57ce97f4fc6a989753dc935454996a835bcf37c35e97318c3e6d513f9fd3b0bfe2fd6233a95437d82e54a3c7642ec304a11f7eebfe23184fb261b568c590537578fb3dc01859d9435b181908285d09eb8df30aab3eb2b81add34f09bd7795a4d7f9796463ad5c08ff4e50f0a9411d486fc5881d5c13658f8e76de30cfe28640504a101495503930896fe9884eac853e5e003f08b8ea69c9e5297161e1e3bbee33ec8bfae5248a9deb7e5b088c629d2aeca47e0fe5f8313a7b5c741950daec97032715608230b66c4d9782e111fca46377f285f75713b09bf45bd141e7143fd5ebd7dbb7daa54e4ec31d03c73fc08ddfb1ec37392de88a5c2dde0f54ced4d8028aa5f56e2cf969d0ed9db60de13e5fe6d5f05c822cfd7566559e7d655eb84213c9cabc1fcd73501baa748c25629c173bfd19422321bf9b8fb397092653771da029279a304049766db45159abe43f08cbf1592994679cb86e8c3bf765dfc60fc91ee30b5dad801ccbfd8cffb238f8db5d21c2691fec2e887950993b30686ea6ea69aedad86de41463ed6da7866f505116980cb78536f0787cc145f7604f392e2548406f6c25875e110fa4ee597ef4009ce963617e39562ece6983ed011816253061f17f36279c178bda7f8aabd512804a40d98f8e9d1705c768e7ff489fa4829541265db59ca6dc866be12401aed441c9e81c01f38693fa03cbce030202b9bdd1f601f80f8c48be4c3c70e30421e87c8609a1f8ce5bea3aa3279cc5340fbb02d0429e1b2b2d5a1e8eb8e60b278a73a733da30697db50d544f7c3fed17351dc2d64109e52ebf42b7e848aaeb95bcfcde8e5a336e8cb0fee22e29b8e520a6ac687fc9af4a7bf2a6a7de501b99565b025bd3761eae5f38411224f3f7da1f8960be8c93e9d1cf166a6a210b3c00f05aff6162ce9e0621e043d438702f1002afbf8561d8ee6900413b68ef0fb1ec1818e0e8355d18820196ae2eca11c61e71296f997645e01dc01ebf8f58bcb1f58b5f9ebef9dffe263a926f80f545fea72c116d2bd6866cec9c3db463544cf277266036b7b1ad7ac5501eaf660379a06a05b2e90700074e029dba0a5327b9707cb297156c27647e4af09337e4aeaef8c91da879bdb57051e873d2a02049604a15918509219a47dda67bfec68193e51f396cdbb60852a357fb645604309bc03bb1429902da50017c3b7aac5a999c06918622b1557f2aa5111078ee724a7ef474cf547c8e1c4cb44d166b01adf593b132bd247b685d7a2002876fa48568b21c6f9f169f04f385e6877887e4658fe56edaa93b74208fe7f1d14dcadf3c6e6cca46d57e360e3a373658cd20ca7e2383f6598743953f8e32e114fc8125eca6a093a2e1ba7327242fda09849770c4c89e9f3fe049764439631bd103390a27550b56af82cdbf92ba5c2487de59856dfd4829348e036342a8b05fefdbc1c062d81dd074b763827365568cf9ab027d8a80280f2fdf5e4fa5f1d6f8c9e410d2cef35ace4bfe7e4ca7386703c27acce001bf3d1c18d420e30521a94ddee9efb31d28faa3ad5e8978df318820d25ee1bce3774b813592103e96e1a879abafbeed959968aa2462714678bc488e505ba8223f8d9f17f6e327ba0990ee53d602b0320a6685ff3b624b7b3ebbe94b20821c7e2e0b634e7c606fd8e52e2fdf6acfcf0a2723dae7fc2187926f7d610d0e276795031c2bfcf35e281577fa852e6ab2afae3c9b77297a66784dde0c32eb343439765070b4b6e0b527866a8412c7bd55922487810575a3395807ad0455659a62dd7ca3ba3e5a5fad459ab973f1104622bc4aa00b78f91fd2b1f94deb6f9a39eb0ca3f0b0e2bb402e45468015ff0dd5d4d9050be4170ea8da97eb0aa9127cc1ec0e533ab6f2cf8430026ad58077bb68d7fba7fd49f2bd745cdbc6f40015a8a3bf913be37c57e0e99d24a4211b8e4ff216a2c885a973cde2d8b029457d1b857ab7d4e40b1271a1e2ae6515b333d7f0c1cbd675dd5ab3fb2b20c90ec69684778e6787cbff870cb13a132dbf4c290f96ccbfa70c889dfbf00e92debd94e9d18b3837976c615750ff03ab2b97b5e24dab0c26e073e0fd1e6236157511eacb1f987a5755b19cec06649825530cc9f1eb1e7695d22452a8ebac43dc145d75fdab23aa6c0612a971b6eeff8b671cf285344a695fa2c83e80f1ba0335bc8aa45c713ebb1f5d2af100d37db7012835d360af74d69ddece7fe3641b0a99a15304977c7ced23d6b2afda179101725421045d472daf99824db50ae38696e86f6fd86618a5f995daaff2adcc8c4bf308b59967de550d287f4b41c823a18e04586ac29813dcb0c4d2d615a5803ca0a673e9eb0bac3e6315977fc29807f734bacb38adf22497801901ee64495ca1c18068a17f15322863c91e22fcfdf91f27189d499786de39e70ee20622e2341d00e8406a0770d87f528138e9557207ceb3c4972583625b3f9106fc22048bb0159de10885eb142a2171937dd49fbc95089c336dcff0ba2ecdb043598b82acb65c336037dcf80c03c97b28275a7f93cac8442c50b55ba5bfbd938fa89679a1d2519e3d1db612c6ac0b09950509718bb8deef2622649b8304b3fa7506500c8bf5770eff4320bda8e880b6c8e975a54d1729b0188fcdd440e16c9e9ae764011dafb6d86b648031fac18f5703bb07974e616a84ee7604819331919ea65b8370f061f01c0e4a99fdb02dea0c58ac76ce56bb464af32f6de59190bc3f521f877ec552673e7603e350a3238643cc29ef93a57d4b52d1851cd42a9b60fb4ba80eb1344a70b1bb65d411333b4994147fbf53c705eaed004c71fae73e126bfddaff93b6e8150de700061061479243af4e3e5a65012f8bd4ee5189fe25115aa45479eac69b84aa6733cc01dbd6a7468c494d84fd4138ef8d68005b1230495bb086ae40eae2366dcc4a8c1b8f27356d755ba589e9b6eb9a081658e6ded5cdea87d257f2f2e40b1e0d6bca251bbcd2412a7457a9e5de7138a98cf0c8b0382ad6d2b5ac7a3503dd21d51db78051bd0cf67614c7301cf5b4b98a2aade9856491af03b0421bd443066a003cb14a103f572620111634a91fdb366a548205d268670f6a99fc2b8ff91cb9786ec5db7c06539b300f1042af9a7cbe91a6d25f8ce197c1f2b8514a363236355d6db5bb252ebea393480e4ce9206cc9738dfbcc604005f7517992a4f46836617a1eef03751561799f295acfcdef57bad3071a30ee224058423ca0881901d84dae6213159f5214b02865cbffe366e0504c7d151c3f39cb020c330c51d8cb00ca47032635475cb11301bbcd106d2ea2a99611aaf542a9a83f1b73179cdc4809c0345cb285bde1a33a21eabb95aa74f4fec035e6465c24dd778b766b4285931687652838630b6e35402627e345a5c6f2b4959ef2f2ce414d92fccbb327c812da42941955afe446b8801ab53938891939bc7f92420351a11500efaaa3614a796d0ba5136fc789c3987ca605194c140edd60f7bf5ab3010aa4e1ed6039e7df9069c3ca63325f8372d4ff1d4de9b1a742bcbad1559658cf22804a8a4c6790ad90cd980306e969b04d6cf7e467a3bbb6d35609ea660c885749567224c88e43efab4be4c750035ad6cb712e23d0daa7c21007cdc40ddc4150871c771daebb5fc028aa3310095d6bcce990814e3643731c740139d471d2cb999a0190381c6d6faa3056ef825c0ae0e59930a7e851ca15ff18031b27d92a09322d7b9c863bcbd9765a286a0473839e8d73038210c8f1616f3348fbc1518dd74bcade1693c29947c7e3d2f82447631f1df2cb11df3e0dbc18f966f096731ad9cce8d5b6cee56ef15ce5b9c8ba06829891b685c8f6638ffbdf1114aa6661c51c82e317be0f4265a492e57e796d4b3e6cd8bf1dd8147c0335ebc5d1b2aafb64ce6047ae0d2d274226561e36c2e366fa82a9937a756b1cc866c416859cdf835ca19be2a842ca47a1462cc59230ed2f5fdd5371d476265e0fd10b02949b6d76680b99256c42f552cfbeb229e46f072fbaccd8416d6b71d4fee0d6d83bc79e5e25f42fec2a75ab07ad7d3fb4783bf42eab200fa209aa6ba7b3268b3d9c7c279db2b7285d2e723fcc176ec31b32ffa54f64652faea63b49601a8fccc201b67218895ec1802ef5a2893dd09a6cf0973042a6fca7e6d7b1315acf43f398020cfdfecae75f68d1acb9546b35a225306f0f5aaf874c3d3d83b51376dc1329aca6bfb680d4333d91d613449d7d74098bf0163290e61ce4d3dd0dde8d40ea4d13cea7b6ec81f48e3166054779ab936535883a4d942736ebbdf44752501712b8501a2e1d0e038f87dffd45eb71fd11ad82345e1c4a80afe390b69d5bd9220f6e374c529e9eddd380fdb4c4e7d0870db51df3c0611f58b3c2149f601da02428e5d32b818df24dd00f92ea0bfabc070c4144cc425552e5020f1f7e5a66b53fe7da5db29ae81ac9cbfd5d40a9e7f9910273e33dc23482961f5c25ec6c54ff232f5047c51ff6d4b5aa4dae05183ae8f5736e1c51e1359f07cb49b1384ae3724893f7f4850e51c2fdff30f657564833e742f06001873a022f5f90e0a958950fe419c8c38bf2352cc8a927653a724cc3a6e257b507462606dbc9c4c9f9df8573d2e40b3e2ecceb20b8b929c889ae6387d4c9654bba2f546bf4ee2f444d742ecb109ec1f8f9b7bc76891f6fe351ee62f75e583c1eb07144e531903044e25c500e40e9bbca25d0d4817f385523a000f090133e6493f79c59294f5ca5e4a2f1e84bec76c2af6b2ac453ef37c188c47770725187db55fb974833493a14ec58632c491f332989c5d1fec95cb262413855d248c261fef8c5dd0963243917cf849d4a83aa8faf4d5d9ec3b82957c85027cd2ac0e279f71b122a34cb2dfd4f2e03c3194d5c367e0842efc98a12169e5d027d38aa562b86ec6ef723c1b2d92546032879e70e9b23b63b293dc5834ea24176af8216f1bb442ae3c55fc35016d326e264d614fdccc9545c94e3f94aae055c7c88099bd636a7445e5a3733acb4f3eb9f8b32511e819542bbe678174b3b3e2273bf68addb556431aaf53cdd796d2318c507cb94e23ff879db07d2c91740f3ef9613fe5c5fec101858305d34bd4b94c173f510cfaaed6be97770629645ef2eb909f6fafdb0dab569f07b01c3407e53c30b5478db8b57d7270f34bf4421f94b656378e4064731c9d7725d28b688a8b8ed93cad63e114597e1453c22b658c79158a5e34dfd6a07b1a1a6b64fd767185b7bb20e44110dbca19f74d098fe030f0fc523fcc845715116f1a421390d6b4ede6ebf0e7b781d7818a0f92b6845abafeb6fdd13f77baf076acde4db1bee79b73ed9b67195d1113d3d6cec4221e0430459aaf85be82a81ab4957437f1609b4cb72cfe4fdabb892525ffadf42eb326cfc2b21574581cda4f5e5fcc7e30b141c83e3b141d8237b7fc22e95c3c8c1e1b8489c59ac35028666f06b42002624889b21cba45a41012d52bbf9e3cc11ce5321241bb9bf4335635ca1a7b5045c72bd0e5b57e517361d4405143b3aae094fb4fcb82d6f875061a568276fb74da43ed7758f4c6f575fabb35e9923d6094a80d9755a950bd56157abfa8c0e4c40d65b1b1bc7aa6f4cf0daa67aa6fd93b035431c570d1708ed3cb1cecb18425a5a196cd0201ecc627dd5f2676a854e6e53c22181b9e472e2341a3db833e9617a8f5223f3db74111b8520196ec86edad127ee6fb2043ee09aa04eb3ac9f0387b72d36499354108e9ea459ab49e471e5c3562f71dcc40ac813c359f9a36f1efd5360ca19ff62c5310be1521881090ec974deb2e3a528ed4a25fd8cce330942e61f40a851af2301ddee6d0d15dcb5665e1341f401ae2644d3fa65d0f254bf36791029121ef9d03e81785504c8d229cfc938a21fd73f1ad4bc6dbb034bc244fc24eb60321ba3229b60543a30e0c0570fa115f33e58ec8cde32e59e0a802c64d897b1205a04ed0f13ece416eaa7ee066c4ead6d544f75a78e882cf6e28b90afbaf482c48908415f2a6faa7316afa472b0db3fd44bb56a339986b2f6b29bb72c76229c88956854b51230ea708e72eceebd01512ef140875436310bc1ab378d7857406dc2ba69ea0b227ccfec6a43750ee97eea1c2cc45b37768c3c000edff91c0aa86f124a35a010dc4b55215a043645570f33e31ed48ac0935458598c2385f4bfe8e0289f199c5092391c3072250a169ea043a7bd7f1adffc8bc931066a98ac4160c3ac6a301f1369ef12dcdd4ba832cafd9b92e050d075cafa922b9a3f0817fb461d4da8238da58d4b16d3fe74e7a4382ccb6fc093076dc3e0144cc1e54332fc496ea03827ca97c8ea561aebdcabd8185e17396914bb011a87ffe2511f6a33a58e52cae11c11186ebdd1e6e6effc7c7021340bb88e5a375ab11341f9e57b4a1b3554f2fe39b1d91451d2e7f58c7b6e7636816caeca9e0db13732c446cb18cb87293eef071c0a1091d60e2c766f0f4f8679706b2bcdbc1193dbbc794bff12af762d63698d1c71e93852d407fc7bb43c2984b302830f515046976b9d582c5e5508f4c3388a3b582c5fa6fa873288798daab338d0d26239de8a5b3bed2406d518117ba06fee0b780f6a2769a5817c2f9aa125419b165b9f1e5b1fb8733706c836c3051bf3683bf1820e9d5c9fabd4309905ee1a2c4616d8f06b172b289a52df37cba0e687f45cef2cfd760620874e32a35fe802cd59f8a7b8555c73cdf292da3cd98cd4a9ca496553d81adc7452cdd78f950cdaa3a285a2d59e35a219585a7f8d5b95036c7233b37252d77f9c565b30477e3406b87460f3a461394e38a80789665dec99b5c770986192311721927885c24d5dde507db64e4f973f3c98e741ba4730cc7713973fdfe6ecea9db907bd297585f80c5cb288a21f3bc7d31f9def801b6a90914a0d302f7718b5feff10eea7e4c8be79d9884af4fc46bc4134f5c915d6990792b32f4b1446bb5bcbd16a9b2adae5eae73bfdf00fc5491799eef0fc6f6bb0f14ab4833cb5242f8972380d4dbc680d189a46281f5118a316badd64cab349746b3312ea3891b048ef75471deeb6d565e35eba0f26d4dd584a8760c48b44a373cb6c17f06bfb4af30978a4f09a55d2e4b07f063bb36935d75a222f5ccb94170a0a2ebb311bf552ddbe0204e79a9944fc648b887c6800e2c7a2e2ec5369206020f5ed3de83c8eca6009066238f580112dafb158b7a7b8178438afa2caa977de02557a77313af8cc5400d47678efed6771f997982bff14833c0e815d640746c4968dded0cb4ccdfe9e418e2fd1535670d3773c8aa308d8edb49162139aa3b3705fcba003b4090767264e74c0006b9d55efc7a03f68dd2b246f2bbd50641a3481a2e2044b6a5a7ff91723f526778b6af194de5ce6f676bab149b645dab06705f97b460c61e1100b51d441f5839e1738857fde67a01ce3729631f4f96b1afcac02e3124c58744cdc98dafa94af9343ccc264bc69dddf74c45345425a3b40bc8ca331f12bd0b00a92ff70e20dc5a2438969b9dedc3ec393677f8eb87d2b8d80c13b917263caee05896aae010c3f10bab6a7c07cbed4e9d4b330af99339254ed1978938f738d660cd36f766c5358d0887d60a4eca9d5f48268fb0926ee3d34db943016cc67481a6920668f504b50f9a7e31f7fb33d0e4a849accf32bc61e6ae4991c3c16400ca81b918ef734f2293e509bd5438363ad955d94f08322bacc0412aa58148608f16236d8e0e28b481cd0050e4145768173e968d549177f4f928b1d5f237c28668b1209795c126f65320bee2845cbce996c3035e997296b16eeb6a6df6daa7f41e0776e442390744e923eaecac3ac64e19e3c2af4f2ffd532709a8c8f60f0dae6518d29309c941e620152d163d8eaf3365b120628793325884faede953fb98b8cc677056a5132b1ea522923d80b987a2a77e57bb69eba7bef5b7be1c7bd788d15b6bd42bb4644c4bc6ca9a0bc7ff77018e6985fcfe2a6f6605ecc5b3a97561de7a62915041a3236bf2321333d0cf63bc5864c2a7a8e3d5e9e675d172c9088c379457a2dc59b8afe098edecf38f0505cf2db89d19593ca5a946f8e43ab0b4f3ead37450d36ac127ed47d526c471d430b25f23e12a9e75eaf88bcca08e7b73a2c63c7bf601b222a740c5bb5b4df3d89af057db5d1bce618ffaea8de4974a3179585b6f520b7ca4f3b2f3b4cbaccf19bf90dc5bc11a637baad9754525e206713eb10da28282d2120b619422641b9ba1422c1997fc7c4c3dd08efd4ce4ea25b31c9be01af5cafd8de3114c598ba3904940555ecc2df7bf80377a57b9f458304410d969a0264eea4637ee1a793283ecb9a835cbb3716b21fa2fe7a6e927d18f613613f76002e9aaeed19534e51ebff3294a2c0986924a4917dc563a0472e462ded2a7e32cd64f4f53a25d63ed006f7487dad6db4b283823e2cdecc93ee63e0c597a9b2f3995be3b775673595c68b29b44cfd52b691d54b7761732803268fd78bccf369c2aa0bd5608337344535a53819b7031039b319373bc3138fcb1e08248f3ce6ec881572111f79f3c42147ca1d4630f3e9d130b2125883e1019ccd75a79db4f2c1bfc252c740d195cf28ccaa36147f56837ca2f37b6c6c530f75535d06cb3365273684425df8d2b5a6b41e03346873bfc0ee8a24c19ccc81fc754290c18a123102db053dd38da4c5a2859337a66d9076f2f8025a5e1eda1ba8bdd7f5c023f020e2e9730d54ad9c863e3985ed8c04ee90c583dfedd1157fd4bc74d2d1e4ebc83422929b0a9ec2e0f8872118d235bab6e67c862802c1a158fbaefc1748120cab2ce67e8b464b4a53e053c06cc1e923cf36b68958b5cc78ee043e9a7ba3cfe4d4084fada81122e297eb663178b6a205fd055a1c6547a85207b2ff55ef3c65962daae81a6f22027509a884c4d2484b21ac18b0756b8fa718c2d068a35f5fb14ee31d6a866142a4f335e2673c269f3213d826a79202680ae4a773584e01977d9be3892b64133acca45ea5631f7bba809319ea26c82caa156a3915326790926a69d80b752ee35dfc793e88ac4e1a7a746c2fcb14ce0eb68e24ec47a8748a7221add29017c8a72fb4957cc661e1233fc193e5ae488e1c59b0fd5fb9228e4bab4abb9280ed46ba10a73211dede20ee5b39333169c54f78bcf199b597a6da70ce9ba027d49877fd11c97671d459dd7c009ece8b9efb333c344db0c23335337136950e298280b074667d94a408a2efe0bcde384c931f8ce9a18f6d278f2a709b5055e6ee8ebefbf72923a7af5a7463804c6182de3f842a5a51298a7318489d8996be5844bcd1bbbc621e2607b69c997c29f7d696106d5f3343c8c7e6acfeac2a2e6299572f1d504c70e85c3e929f8be16ce9eb4a26808a48ddf56bded13ea4b401400a9d5bc037581ca1d5fed7e580126a0a72290fc529024b2055e81ba66ce2c9888a178d1c9aaf5ce08f0ec0860a50efdde8b67040100cb83b20702b9ebb67afb948fae89e9649303960d627d66c3d00f5c3a1077bfe172b5ce563b6c6512c920d8f8092c337a509d16c882a45e40ad777f11eb752613bca24b11dd28f01ecad69e3a948c831126d7894f90913354a0e9f27d0532313a7cf734e460faa0609ab41abbb9f35af8934a37b9c45fae8104fae3e2b2aed1fb8f7e69efb40b3a580bd871238d6631c2512e3ad00368715bb15208af41da45ccb63d0a48818f56e7fdebe9abefa11f0d20fde83f39b2081e254ed959d7045c28d35b2f44d887eea6bc7ea7bfdf07dadbf5275fa06d4586ebc3b8ddd53e3dde5692ea99b791312362300121c27a09a804506e4a6c2968209b35aa949b2dbf01b5e49b7ac4c0e1f4f16c479b840db513f8e62909f7df89bd118430db4c1e7f0ac824a1d9e15f69c7108b262a6abe914a23863dac26d10faf259104d36edf09edc0a5b2fbf33d732f13b2dcb786d69fae9af2a14d223f726948c8d29e481af6cc3e1239d2b4ecd44d1afac5c3cf92cbd5054186fc6f96c8985ed50803a6a07b70662017d2b0bd0173acc08a9dde2c2f7c2dc647c154c7a749237ce3bcae94931de9605d580ac683e345371cd03d8059132f04ca85d6812e9bb9466dfe88d0e8464e9786a08a240fde464c9192b9a6db5c9df2b31e577552ed27baab8960591009110d10ab318b258876eed0838ca37e3f2c16f03e63733c885f6fc2864c274339c49c2a18a8e6fc4a41220b4c380677e2bd220bae57947d3fc65feea55d39bb5765d3c120579ede403cf3f296b394be18d0d3f7e86f2055b6bedf2ccaa2b9ecf700ce160aaffc0c00be60b0270efc7eddcd16ef793c2ef2cd2e190fea37b070bc410343dbf098977ddefc312d4237d9e88f86b313abdd5a834e26ac3fc77e65d919e133b5c1c7cb7677321f8c181f6197e6358a6e8bea0fedb2004b90f74b84d20364f66d953329f13a8d7c4475091f174ff6575dc456a95684dde8f056475f4488995106f2e9d4cdc746bd328daba497159535012d26a2658a35882a6d8a3c4db1f4aad60e3ba0cfa5080dc9e10a0fdc76f3bb6774514bc269adc7fe2765b769537d60c17d08c5697b4d6ecbf405ac8fc616423bd02919f92b95bf66145d4e2f2eaa2a88a1eb832a7863114763165307864146d24cb1ab9734b6c8bf81dfe2b37cfc74ea75e3f6d26016fa4445e7160537e3b2149d808fde0df08d0677eaa8bfcaafb7b44bc5b063b168dc19b8ee6db3a5a2e04442f52e5f71c7cb7030aa780631e4866137fa5979a196a4ed4e256ae6f2157e1f1d3d3c50304156dfb59d892b6e91314b5616db0402fe777fe46447500ff14fd7d15a7aafdebc38789281d8127af4dfd7684c98e6ea82a82a7a82f7d81a11fe16fefeb583e3436a6728f9eed3401666bb44f763ac01020eda32cda11d6cf5a11a0508c8e10e96795a33c052d9d0ef9ee64131241a0b73687ed0a16b2b53c1c73f9dcba3064bb008b7d6a322dc561c0eaf278bd3cc5130aa5addc8a4a5d7429526ad55e242b03d5e677cec86d54a4a6095c0cfc19569e856d9969b7c6cea745ac23f15b4ae103ea40ed4c343ff03b33b7ca285cd9746b1e13c87a926d508069f5c01658a761af3fd3c9375acdf7da25d6763a6cc183de7e63aed9d99e1b12720f4fd9c028b3b8ad5cdf07126696b6b31a1ced3a2e523f381db84d50890b83349a76605282b628f10eb45772f59b9ba47fef47a918ac99d5fe2b5dd1db509114f48cf493f5c5850dc12a3aca1d754e240c27efabe9d7614888a88eecc4acad24de753f4c66fb7b620da0a6c3c9daa570d61a8232492a1bd1c6eff4967067ed4c184503d29248a1355e9b267a8c3a48b0726388e45df2a0bad55fefbeaf3c48260a9b50656bfc3a950ef86770bbd116b72f2844aa51dfeda584da1c9b8567b96b831d7183f3b83b0207dc202977e4638c4048e0375a0aecca10a4c0bbe1840c3cd286e8203b59c1952c5868f5d866400f0b60b69d994c9d12a45458bf4d541632c670fb898104b9688afeeb42930d845a422a2099ed24e83e965b7679e44d0c1b20fe5fc469c8dbac46fdc4be40baa6744c85753b4ab64e3a3d60aa3548560f727f61b59c95aded3c8c66d16ab12fed077f915ad1877b32b09617498168cb3108eb57ed14e27fc6de3281cc1069e1311c8677625132b07601400ab5926dd4ca1889365c6695bbcbac2cadbfa334e24e5fa471f71cb4deae223b41c4f1a7fb356d0f59d3966ba629b2be7e6b317a516eb03ed53812cc9eef18bb3cf96ef0cd1335c3a0db3a5a8976ba5b53592530be2f238bdf3fd1e03e51e43466f198d5147455f0bd7d688823f7059d8ae8bc6c65e85875361ae787c83d3287278d720f0d1f5b4a21dbaab898859919cc2cb5453b7a94a3f30ad192fc772c8f15999022b5d854415a14268aa2cad6d864ba81553a82230baac4f60e72fd9f6f97bbba9cc3cc0ea5fef4f7f468b3bf39becb9e924bfbbfd63c48ba5a4b57bfedce1df0af56c3409b0b5d6b7709b4e88ca56d800abd4add6a0e26a1669f590bcbde8ca45258f3481a0ba0012165bdb9025fdd63e5b0d99e01f4530fcba1b6b43dbee9c3ed01795cbcf72da3d466e6433355cda6041d894dcaa8821e2733f1be19667b92e1ac90174fdee85b4f853fcf2e4e213d49c9f8555b56dd9dae88c74e243e92e825e3075a93b581581d160d2aecbadc40b56ca6d25102541a920d7857cce4c103a9086e703940e554bfd528bb8eb24c69c892b3918e675c05f6137e9e66fdfd0311fe480f692ad2cc9563c65597ebb08f6ba00c4d501974cf970e48a1a0cefd19c296cd65645fb273473221489730a12d3b8e53b183fa46b86612eacffbac2202186db028d6d61b59ac404c77a6a480534dfc070fe8ac09007aaff31811b4fb9f6ed3fa41bc38c20d6aaf6349572c0a730ae37f5885bde1f223a48260a0ee235df5c1012f8eaca8928821e896ef7aba99846f089d70e29d4ea4cc0bdf13ce2d1c1f78a147f3683694d2d85e49153d71ab8d0770f3162c38cdbdcec69adaf0a1f16b290505b9ae03274bea1f873a01062ed6a8123eb6b6d5e28ec54c077c5a399831b72e45376b7a3497b00223d0dc25f964e89c379668d9f0e73c956dabf6ad843deaff43701dcd2b40afedd5d262a0e3444be43fd42f2f8baa59f284200685bf2056b96a851faf01c82f1e1aaca94eafeaf80016367255c47cac2ee723fd06d3248abc3fa0c9d84503e0c2234725e13871de0d3c8ffb710134e7942e8ee6fd6059e1870dc12fbcc82206ea608af9616084ce031f7a4edcbe12290f7d68ae7efd787a602c2d6647cc4e26048b5b38ff23b7cccecea751c0cd251544dc9070c38b9d359170b2421e50ea531c95cd672920a10173e870dc4e7354e6d15a6e98f3400b7ade27cf567e649f43b813fc216efe50b8f1ed76f5a73f83d0fe4966e80773777acb365cea9d4ef84120965763bb520723468548f689dc59757e1105e15884c2978b35ec8219086e576e01ea58a525b6baa102cab4e12c6281950f06590221e27df511db8a91115a9ba6973597bc1d2e58514226f36ae78c9954504430d7dbe7ed045a97e8577b9b2cbaee6476e6ed4e336bac43cf05be5a402448db678400f8f45535f706678e31b406867f0a83ebf84a624fd93433c890a530ac3536df5b3bd0016481b91bb7e052b3661284cbf1ced3e6963eb9a46339ce0d41a4a5805641879b21b21c13f828a8a4a7c7499548c67d3aa9f2b3251ffa488d85d5b3c19c88dd951b4e64e5f4a69ed10f84deafef0b0dcc3dff159b78f5ac635a6c52d8689fe87820cd6c119f8ee95b1ceaf85d0bd03138f93b8a04563285e9f177789032b4217f0f835cf33c1875398a456d203d22fa399ac001a45399ae9d5b3613bf3d7d04fa23a9887fdfd8216ea527b0b652c2704c2cca251a9f9455c742b8eab9a3d39a183cee7de8672abae6fad8e0ae9f207c5017b95f8f1f83c4ba16fa270a059996a8272585555f02dbbcbfab054d78c88770fe476bfc7f33e0b89e5f105c617550ce48e36286ef8dc409da4a8febb8489dd0bef7740121ca8263241dc7bd71ff80a851d392bfdf081d77a015547f538114bf7a931144d39aa3852a5fd09ee6a19df3152641a54c10e72c6210095a9292e08a858cfed8808d02f966da258de878033f00e3253a1ebc5075d9c81f1b79be3e89d0cdb0527285e04d8ea2e1e2a91e4dbc1f866432cd88f5922aa9b7277cd28362d4a5c4ebd10350babacd0c23dbaff65a201629ad139f087761bd2bd5f915dd137b36b382d550e8a18785aa70088400f8227ab9216321113378e59fd43827a430108ea901e182ab2900d29441c772c1756a2e61546ddf08b8b4d40ae867bd98c20b014ffb65b2f48696a3b7f28ed8ca35633fdcb0e9e9714232dceefab2b466b842d541d007d81303bfe62c4b284ee0bd18dfac183ed9c0579857910c3b3a2110042a72cbad4a78d4978fd3f4ed3adf0b6d81a702deef8c3dd8e33a05e7493c2eddbdbf95445f0e0af7d690922204325c534396a7cbbca2461d1b5094a3d2820ea12ccb070b9e7e76c0521eb6a51a61e1619d9bc07e88fcd4bdccdf2ab174bbfb336da20d523a0e89eedeb051df8a651227095bc53833bbad20777d722d307f7cb664f17ad77dcce01da1790edf5526f0271a301903e5d759c6a3e390c5d2496e0ed15fac7a56db4f12f24b8b82a0f8110edaae25bb59ad08e5c3e7314349051c3085aed1c90afbdf132f38571f8621513b929d35a988733c50e8b2f470574630504026d14b308902343aeeefbcd7ecd32bf406c5124f2f642f413a24172ffd051691436b9564e377bee4db75380a2dc0410a79e74564cdc583ea3e7fddd97325a8f2efdf9f57db849c21cafe2db7a3f16528e8159e56851545ea44b3971ffb183dffc734298dedfff62869564549cb2644b01b5d52fe2540884a1f3acdc77bc49f1f11bff663920101537d58452f3f214ddc207a38d60d2d2532d382823946f4df4579d1b48f25e1f7332e7a019736b3153cee4f7caa4d2bf305468fee81ead902d38e2d4dd0a89e802cc001430a21e316570abd2b65d0107c018844f0d7b0122666fc39bdaf234cf3a1bb494a596dae3a28df490539f3d312fefc2bc8083bba07ad884417a6c850bb87ec06166d87b45b7329825e340e12bf1855d3a9f44647e56211091cca1901fe24b18878a34ef14095357d808af4b603cddd658e29e0df17cb648c2b36730aea3318d459214439166502a43f9c23a6b882d8833548bc7c5588e9bc8801667162277e527f4fae693a44133537b272d17a24ace2b67b9ea6c2ef5c48bc30911f320c3775989df3525ada6375be8d9095d95cf5039cc749c807eea9b434418d3c9bc92d2058afcd5859b49d942c6350c72c69ed364d9d8b98fad085a9c4fb6887c685561d01ef370e537973e87376c10c06200844c7c30321baa4d759e5c0ab3f1a645f81acf14b656fce5bedd9ddeb59c49722bbc27237208d110252df4350fadc13a68347617b27616e2a7866e7635290f848394777f05dd9f97a10540c576fb68d88937d079df45b3de9e3b23bf96f615dea63d9d876b8e1fb7e544d934811e807bd969182226935bca31cf9d3da4767e579e25da787a29ff380e94bf215183e0cd0137035179658d962591bd833d68a7a9495e01c5290e62f448ece691dd280d076e5e10bcd641e593e6e69a547f9f8ee0036163ad6c9eb556981f217d3b4c3d46182c951ccc1173835d2957c1cd281263088f0073a831571c50aa4e7466a6f95ec78639db2990a4d4ca43704fcd0d70a10d1dcf0b868d1412580e0478c00cd1eb513c25c929c3482c7437ad02ab79d9f9becf614e28916cbab46b36b308873fa0f55c4e9df5805fe4e2540ff9a1940bf85dc178078be535b45fa032e3db0eb3bdc286c960ed33c729d131a7bf234bed193df7f974e78114628f13451561d92b62c135f85cfce5133dbea2f8c0ae3689482a7d4c8856b39c23b7067a07e982a91b7832f2423474de80fca548208cf7c2aea657d6d63c9b9f97776be2b01fa2fb8a0d96b87f8c430ab5ad242b9af08e24fdddc440d1ba8d39ad91e51702bae57e4abd7d66c2f774e54402b920ba61b64edef347e7ff10424adc8d8a47e7d77c2f0582701fc5f494cf56df96b443d5be91a70a04dd68dbe8ac16b8d0ceded2f579a0570be1dde64247ca0d43b0c603c96182d16420940873af3d92803b89335670a84a59ccd0ae330543d40970add7460fd3fc507879e762feb94b1c01c59551bb067f4dbb1a8510321a202def3a5554145ee7fd9309190099e603d48ce7640b2654d0c4389a2555ff5868cc73dd451c8494798a0588d2ce468c1a8fabc9349ddf9cdf8ead3041d3874db8dfa9b06155b09dceb9ea97ade1293a5c0195da6d4b8e6a218e550d0755ff25e922ffd8d359f377464cca8fb0d27649615c0884febfa6a32388547d1d2679301d2c49ebdd3994af5da2c791897c2ca60bc6602aeed207029ae6535ce25241b8c47c6a7dd54fe4e92692c0bd18540f743f7747cb54dbe98c6682ca0dc601e7eea512b9b1b170164051751bca5b8bb1e0e4ede92287b86e08a7ccccd1226143d6b79fcb1120c94e9772f06e879eea4fdbd6330880ef65f051e671c8ecf276c5a088d73b1756ec26749141592fa5c753a574b85cc3030495552eb7867db7e2f944e374f42d2c747e21bb1181cec4fb6d8c99303aac4c6309a26a2833620b44258a1224b456567913b03a75b5f7dd1d258b6afffe9ce11ef7b83a7a85b5df6582be635610e1202f0cb20aec274d9270db7f40fd934a3a6f9acdedfe785d2cc44eb0fb6c84fbc32f1daa08dc7e851b8e915ce3264622142bafeafcc3f9c79d239c82896872099af558af37bdb879d5e470c0f855512d656047bd4cff4b136fc084d2b48e5b92470cc4b2a6880471d5dfa4279d574b913775beb8bdb73f20d463aacda8e649cdd4c17be1e76e3a720da8a246b4fb0ec0ea5418eaea5b061f1021dfc34ed5c6d8a7196ae8eb90b2798a9cc1b9208d83917a5822b0c6dfda28e4040e15c6d23131e17cfc6a3649e7a81b400f763496f2001074895b216da8a3d2703d8bf8b1fec7a40b0e588c8a26a5a3fb64e3f4b4dc86c18ba95f299fab9054538ceb65f539de6571a69a650313f4f807284f4bb5ca861f6582acef67813a0666855a49592f4aa60e01af8e5ebf4552e8df0e28ad70606e3b0fd987a269636ae2291e497c1bac43b250402dfcc96c6029f855f9108d205128cc1076956c2ae90282ebca0f226146647496591e96fbbf065f16ff780c5fce4fe47966dc7da0f303898f4ce1b4a1966d5378f183199fb6135c7386c5b236d9e3ca0239d2b720b660294f562eb96d787da76aa70af55f9d2354f8cb73871fd6a0728ea97a296d432550720c981e861657b3b2bfcc8506f61e63172504fcffb78ba6516849b442bf66b79cdbbcab526030271683b7584ab0e9cec1663f206e96d34abf60afe78321e491ce15a8643e26304c7edac06041eb7fcb8d2877165e307c0f544cbb1dabfad24764f4d8ab9aaefba538f34a8d8d22c6cb537e86d28726d28b6e71f2e1edf1332773ca28ab606a917d2a1f7b716564096b506ac982c7b0fd1b75eb158c9020f4f021c0a8f73a61f2eda530ed5a9b93f5da2cd372a6f67c18889e3f0333055342b2244bc93c607a05e4c7ab87eb56d1feabe8e6031acdba03154c34ad84c4d1545a2a0e9e45910b5ec2399d8c15e4ebc3dbc3171c222472ee5f6c7a412b50a4958eea9a58dfc05a44161be012abcb2115e3856607feb4ac4da48dbf065d1261c22cef3481d4ab46eea87e44fc3260356c760ef6a745ecb5504ae8ec1ee2e2b0728fb620b4e505a35926463b149bbfcd69e1a9575c91df7f606c3811b9dfcb25d1622e8d815c63409a6431c40611de218263d1d7c6b6a4dd4876675953536c8b50eeb28fea31911186a85b937d1e4c5fcbd600342ca208f618c28eef23a5835406670ab9d7a65dbcb02edbc9b94f4973f4eff1ec8f5279aea4a5aca60b75859e1666cac8ce176546e817d1a72722c788f69882893a64405728166eb6664af7ef1136c0a6940489c2c6cb6b678a24ffcf0e1d40b1088859fc2cecc43d9813a42c26a125255050f36d1d77b073c115835f97141aada286b0aef5a980126247f4c0d23af2d037e3afd664cedc3bdb21f8af2c2fb8b63bf4a901a2955e19a702b0be13f28bb528aaade247a336971a936b7ad86497bc7a3c2fc792e7bf646fbaf392a4400e218336ff4f1af744f0527c02a36084d2bdb9888d930b742a20cec8d475f59bfb8780986a77c802728b209017a9f50bca4c3f4a6110617c373154c2c102b47dc16ed1dd6ab8d3da3b3671e40ae7ed3ec9fedfc04a30163cc9e56b7fa514469f5ea60a3f7a2b0417a21c24d47dbaff5d417a00192be2967c2ef4a8a405aa55e6d5027337d2e34d70b79a43f5d69af0aa3b52936218c170ce1ffd00a8c8a7e722fd882749bc0ec1df13eaaa857b3b2701e93bac8be4572676b8a72e0c70c34512c9f8c14b99ee4adea37680052df1df935303c07be5b3f8908a1f607e21b1d28118e81c6cb4f3c210049d32f264c39e5982fffed5541cf57b3142f0c6f796f5910dfc9e831fe3badd526fa630706a3833149e6d77023ff2354d56dfa70bd0556968105b8c2478c6841be2338e0bb4dabee200aa9ab7be7fe80ebefc17d47d502993d5b173dde834a6d47f540a5f68376a21d409c85406c6a11ec3512b3339872a919e8cddf32ae1a9a03f91ca91bdf0649ae7c3b815a3ab0780b4505deab9c2b9d2782fa73ff3f81dec3492f62e0667130e1b37baf5011aed0a2da2abdbdb83d1202e80baabda036aac3490a9e90de834a8bb22747083f5f06745a7130aa0222d444ffa700ff5bb651ff226e639e2a858d400b3cd0ae0b7adf31fcda2c949b5d06dea4ceceda2429e8e67d5ffc7ecd823b86302f10d8c8c4bfb475d5ed796f004e50a132d4fc6a3584594605766c9101cbe84db92530036c4e520064189b171b2007f0be343e81cede7946997b8a0808afa0069ac0ecc26b796751ab2ee9bd000458c9288d466e61898161d5659de4db431e3d0d12b29b87fc56e8687f9715252280f6d76604d9719e2a3565cb9f1118f48f916e03911f284c21992f7b638339c9aac4fe620ead84de6042adaf5e34648b9d358281aaadb23e5841de35785b03c40c1267f7a1f368af563c9fb75646164f099ae334381bfeb4515e7da95a9b1222750d649dbdb2216f84225eb664f01daffef62f82771a7940c800ed92f4275480d52fc5832f0714fd80bec7689f292a77e3ba503ffa567dfc0140ec1988e015e763c87b6d05858742b1a73d526d8b1b2b4f1bb9a54a02bf181cf8a94952024ecb95a7b5b5cc54dad986fb469dc6a209bb759ae8cd07302332c4409d6df65229b5fee5cfd78b3ad11d44dba355428e8c8e6c4a12d7a462a153af7b7cc785d53aa1a700efe87d9ad559c8b24b3de2ed915511e07154f260dd25d0608afe80ee1baa9d2e951bd9353e2ab0858ccac5f9fef7c4794a709dbffd86595da09133694ac664611c2a47b2bc5a4a57f76d712d01c8c7fbd79c24869f0827d29b3dc73733d340bc6547c4df5ab5f6825426fb996491c684b6d3002a036b23ca45ab5388601b5c93aa008a84967ff3b4c904543dc6dc34cfb35e24f492a8d2b3ef6edabc616b648f1ff5c5c85fb42cf2d4be08a8a9f3d2c578c3ac212fa3944bb72c22495e2848ce0b04de6ad727f6559cecfcd49fd9f161e30359a68b2053c90b33588b315e25f7712d0f7e3c78375cd05eac11455582edb8eb3b81a52499fae3b9a29d6c9ff606e080fde35c88e97a55ffcce3c853021e09fda5ef74774eca9188dfac3102e98b49297976f65183ab3c24b63d4b713c5149c3e504ee8ec668c4a00a3920d5aa4d2f35c9b032dd10b0cdc52899794a24a95a7ab93cb4701e7e13280f3d30e6d4d72472f48e69b0fed336c8a9349360a5cd6a6846babfc118653900684f087c7d37c5a38fa5038db5b2f812dfb4894701435b191edb2fa9ff943ef5531c31a504c3209eee1a04e0e3986ec95621f70af24ed052becf73b83aa1c21e3c0a566aea4e91a9c383fb9d379aa9a395744544fd118be2962133fb3caf446bedee5ba67584f55069d959d6c8d724a90fcb6fd1fa56a1cd137796ca451acef504340cb18d0a4150e78a6dece0fbb5f0d570a319a6b557ce084129c1a744d08799463f749b222924ea6c769c4dc2d4cff8d0ed9366d7f71f58462c0ebc9b2fd2e1673a080b335dfe959d311a7dfa37a7ff84fb4ff1b5e420c5f7be56740befdad97d1440de3efcea06b3f35897ac03766c9ef361011204877fc6158a6415a6d695111c02b6400fdae2ee1ec781d48dfb51738fcc2e5053b7a1b4beb98dd3ca1c44e126f3c1835b51891f1bff443e797ca0f51038e30205544d2eefac2c1c55eae7d82405cbeb31b48d57d7957694ab1143d6c2d660c7f53c6609a61cf9ad2875eeb647e7e14e188e781aa266ca6573496b90e8d7bd922940f3f4e893e89fb9cb7f6f586089e8767d6bcd3c6b55eb37d02b079d53f2863eae810b97ee4a783fcf8503118cf752c3f794da6bab19993d29f24f36a87a1e9910988a872b2b77a9098197075fe524f41010ca7c516f59a919239312d33e55caab569bb7adfd2e821499ad00f147cdd1cf6d92ca9e938d9dc88719aa3ee46c1c996946c877c9de3963493726e3beb90cbfd7f111fdae83137a3b24a7b307290f18652061a10d8b5f3211ae705ab51fbd93139f5a6a1c4d6c8660ba4ef7de61d3a1b6b55e5ea27ad8fc52d65311a30ead31edbcce0b17af82fb8378ca5b4ff873a5c68eabe1a9d2186c8835452d0cb813acf428a7273f4280dbc2e85d1f9afd761da3821c048819063fc34c1f800c2343bf3f9c72e77d0e5d2bd62c81fb34b77707afef932e40b9de831f6147ab0a87bafd3b82dfc50a965e0bf5eb42b7288c8dc50a5713b5c23d49ddc03450e16d7fd1a6d2838e508938a8359212d63572c0358fa63d6e9d936fbd7f6bd94804e67b5f25b4d2e21fe46794af1b07208e486e778b2507beb2d6c4ade98c9b0f29f087da8756c03a127a9cff3f3eda21db269fcb492c40ce2cb10f138a59eb2fadeb85bf73c41ef1e3a1497391d54f1c459ba60298180451a808e978f8ff6b6094690c779792a9e6f1d12c6fcaca00d3ff17752b06b2358b3e62b1f97a73f633bd4531b6267126cb446ed14c34f9cad12b54f8b72d9ff0b543f6c097eef80108a9867e74a79e4c5ce831ccc38631ecaaa4c43e2b8eea32763ebdc6da934beb4ce271602a1fa63b51cca075e4c755ac23765894cbca7c3d1e9964c72fb10bae1857681c8bb6cc96a3edbfad639f0bcde695b230bf25d3c39d32389b7ef9cf6652bad9cade6aa0d3f1c4acdc9f86b5f02ed2495824cf52e4fd02572d0676b74252126e8a85369007015cee3ce0f6a9e0f3a4eaf08e83e7c84fdb8c64a3ef49ee3ec56f372167f05dae656c1242dc13a8e2263d4dbf85db18cfa4324d5b40d6c01454c6f2fd42b36e9454f343cb8dbb1f0a7b17b99c63d45c9a421b38f72503c51d6064d87dc29a4df2715aecc228c98f3dfeb20cad69eeaf9be23543f16d4205187963ba384aa79409d8e714dd5e50f626569811d38b73ccc83f4f09c23970c91f1e162059d7889c60e7f12e04e85af2abbf174c5057dc841714fe227f50fa6416580a163fda661a65fd3daac2adbad8d19af508c536ea0e89bdd298651450060fb62b4aa74b2665a78a2f1da29463c1e81424b70bfcc863dd32f7e4301495fc23ad8abfe71fdb8a434be74c18c6e9d3565889b7e172c87dbc3b8d7837e295896925fc5308361df99394cbf9398f537130cec0652833f494e9c5ec39735e5b235b952a0deaaad95417740ee1641ad40459ba15a545627acd0da4c997545cfca432eca0e847917c188a4ee0b29087855a1ba3ffe86ea7811f98d372ed9f918c6e35f02084f405c7b8257ffbba245ea57b2a3d32ff63a12ec92f8a8c5b6741f78c6329e45694570d0ab9b21c3609e48d1b04ef43cbd81dee3643d505e924d3045d252c1a0babb1e3f574b64bdc5e81d5a8d9e9ab637a61a956409fcf0d4df330103e503a6f6c100782d7e21b09824bddfe20fad9548abacfa0c2a3b9910032e25647fe6d3644c946f4c8cf23b37b56e5a805392de43c862707ced8d81b5083fc660938d035d7cfe22014b73d1f37e74d1c459c201f279512a62be69b08425a57a42ec2f5290ebf542c7ca746f44cd7092e3ae7eb7a8c7f0f1e43b0d6e933c49e7e23b2fc3f310a99cdacbbeaa31b38f5debfa589ba29e9e5cba8ac655f7c000b2247721d7a489f41ff90a12aeec34fc8e1492b780ec9215f1ce8a0028edb3016ea26eddfbca956bce18619e79205bb9475460cd84243b07f705ecdae357462113f560b11b1e7a06da285e76cd712353fd6089a0e61d3cd0e677f67e4a9237f83a8506336d1156555474c40d61e1dd92f75ee6da3f78ec7a65cb25a30a809ba9de7561d74e47faeb984e2b4ec45d20b62d8b3908d4d6e23156e5ab10f40143d042c711e57dc910f01833c6fade4432132d45a63ceb0b55e3443e0695c4d248a0ed27091f497ebfc02974db6eff0af7776f34505db03f3263ce11defa9e6170bacc324abfd3728cc2075301df07f665f9c34014847386c0e6b7cb90ee788109173860deb0ef9d8cae2e4ee72da9eba5119c6fc7563300052407b1933fefdbd3c7e3842529199b83d3a4c5bc2e04501ab1a00ad74d0bb2129b144a7ee6ec3fe2531a13bc43fcb1216fee68c9529b1dfa68d486ddd8d2f413bef897be88f4582e82a822aed4643700fba6a351b5b7c8c7cddad91a75ce4b8531cea9e3f9657130668d263595974770d66bcae3902fbe4ad6783ee52c1af9879028e5fe83fddd2fa17160ba3dae651abc3a6df000efd9b2e2bc444017438063a43941a45806c112aa2111fff56259525946282f786bdeaf31897092ddda53bc1a5d4de40ab880e46859406afb48ed30854d6e93848a7439794b459229e75a4eba85165ef65c655395c5825409cf03e9e7e997070b3de4ec1d645c9b286c30b3a16f78c17a4130d3d32cc6f094dcfbde9fc1eac927dbca8ba345f6874bbb814e3dc02e5834a04f96e13b759d626bc840eaa9bac0818fafb434a0c14f79f5174f2c9815485c53729d52f6919d98389fce38086f63a5770ad667717aee035cc13214c1ece3b758c16dcfd6d2f9d7f0bf958eb0ca31bd7a74492d53ea3e24be73feca085a311b87b7776f66635121423307720c060bd5ad3f623efc0567cb23f9644e02ec37436e41d42638040a45760ad3e2861086a9540fe9109fe0d17aa90129b410ef16d376d4c92ddb40c4a2b886dd43509d19665327e626a432646e55af5df2d544d401a19f60c31f56690608ae1580b7137eb4a3a5e02e07f0b48b4ce5dff5d76ccf976823150611113f27743f6f21e82bc08ad3a6c5e13247d70060ac817be57399f72312fe548df260486eed55bff068689b839f618da653b4c0e7e851673b28eee91872331fb5514cb28606e00ad6276b6dff535d0554ca97435ea23b85999e0a8049032c27a2231a0b2591f691024ade12e53f82bf9e479c252ccdf13232b1625306280cf64c7466650b1e2640b9aa0d39fa6588281c2d0e754c1237d762247295afc5485352310fa08cd1da8e66df7aa843b868d30723b708def1cff308c1d0b2f83cf63ee9269c0c578f174b12eef095687c4ab24c58fa6421658ff35b85fbebf87f698e10417831e7c953f9254ec1503e9098cc45dfdf7be55d54038653cafa87e66568c123a60185a62bdc4f3e52c321bd70b9336fe3ff0db1158dfff03073f7b81bf30e1346f383a4bfb901d96ec5761969caf0aefdaf2dfb66073d66088989c9bf37e212b5b894708f05f3842817d76c0ff34a3f2d69b8f359f15b90cac97fb402c78724c8f21264e10fd65094d9bf6bd5373729c7f9c1aac789ef37ef07f5dd8fa3c2413892d47fa3330ddfe9c29bb188f998514e21919a6d43089f2420263f8c85e9609f0ed9362446e4fd3638b8b6bbaa76b2ef70e826c646ba4deb257581b072c301d8c13ffe27cee6a4f15c521c5388bcb9566b1b5b0b2c1a37994b85dcb71420a51c7bd4995373c20e2f7247190fbb5f065b3a4135482ef799f0a9338298badf545db1d66d76311cd55e6f5634d738ad856b07a380d8c2ad258250ea568d5d09628f0642d044f3702a27faf0ffb0e702f690f0ad1e2385809970eb2a7c64fedb1595c67d92e3fab53cb5d0acfa2efeb4c7f3bb965c0386f91ef3bfe4bd9176621335582362f2b0348776ef54524ab3c345ce2c363ff873b1d27b11dafce1ca7090df512c07f63f0c082ea6369b91710d69510a2f4110b6bfe7f81f27b7d1ae41e39c648f6804ba155a59452c8f1103ae7d244129127979051405fcde2bc8e9da939f65a87d380db4292bc5d0a300dedf6ffa8d7c8298c21925efe96da2b1545a229fbffd6d5c4a6cfa84e273f4f6af47efc71664c19a262165cf7c61f00973ccd470ae756daefd05dc5ca41855f9585ef61ffb967df550e1bbf7bd04fd6443c345aaeb703f6c84741b5b2bbaac1967c124df6e5b37913d217840db482e82e42f8426aede9d7194d679a55accd3efba32e0faa2a22992e175a6527fdaf2226b95916cc588a8bf7adf17af7bf2144d6d282c615b945640ab31290f4468dea9bbcbc292598504f89d52b8eeee87f112775ff40f9e0d57bd3d32e071e5d69f92a8b8224f577378eb2e17b4ef0200a767e5b4eb0a62b24522a8dd0ee6c74f36537b44a3402d20921f7a19da1ce18a3494690805c7661da88f7f085ed59b9c85c939dc445de06bb2cdf6faf9cc94b3eff6db7d4118b49c4e40a108e6c87e429b5fe205926e4f705c7873fab5f30f5a0a97037a32d87f213d073d4229ea42ae12a9bfc3673ca92a033a904d5fca198dc0ee052398632047180b84d5b15a2a2dbc43d702712639288558a0f27c6e006b4de4a912c484d19558e39a8a77ba5d8a84f38a573349832076fef84cb63b9b73ec9123afc431fdf01d2f20f7a5fecc37d5ca0113a6cb16d32f886fe4135884e0d5cb75df0dc70d77196e9b258569d5cfc8da0fe6146e54b98b5b08478c07471ff1a7722c7cf673ae614b96b992bcef14fa1420df10379812085168d00c66865fb9c9bf0473831f0102d4787518d64e00ca9c464ec23755da1547d04d62b49b09467b2b8f5f071f417b935582e5868973082829cfc71214bdef7770543d7cbe5344356ed31b57df82d581634139cf1307774c2595564ecee3e32698d19a02dd8fc4b25fc005ca6561e6440b6892011349e86f4c0a005b6b8460b40e95db8ad899fe0ee95ad76c7274cb46aaec5e527229339acb50d1949d322db904de613ff1e8f6c6b752db15f494ec854f82fbefd7dc991840d6f3a3181b0f2efe95744009e4d00250f1afdca34f6ad0c9716d4e6b7af1fc82f2432c747b472bedb7ce9629417eb4969f334eaedb90313fabc03fd1667392de22464bc1f2c508f78c35612e9b1122768ff09a2e0fef21be1804bbec0c8c21c88c8210fc87e28b11b499d41ad381a1e602a0b08fbeed919c957ad9c4acd6d84fe9c3f0744b7076a360268277101b0ae9ccd0eb3c03fc90c232080d7a2b4a44b760547454367936bc63f5dd0b902bf6bd04aaff6ce7d1ae0b65061a0fca78b9d15f13da99bb3676b556ad32ac783008ecec0b11db73178b571e166be8f0bc1576cfa48c55a7b24a18f7b0ccfdc2a2b09e826273a84a2502e7a817674d3d80ed6ca365a1ebbb063bd6c9e22ac83ea2e631bb43d7dc1cc7e3015b4809755c753e00f2718b1ad1a2dc127e025fb636be6f1498c1391d2c60b08a27d0f0fea7389d64ed5171903073b9dd0d419d6782851647545773535a0c2ba1dc0b50cc2d7239c91cd58b291b8507913dc95e209e7d12d0093a26c17edc02fed62cb400c47125b9c445116a6c6b8955e6cb10dc8c6d7efd14509e6fa3cf9f9298a81aee9af1fec6837735844ade51942d05663c873bbb39a84312cfeb3d1664f580a2033b4c508b72262ad79a5994fb57838bb26972442314fec84d23e7338ab46f9f8b9a00987b59d1a225104b69c21d492ecc82751dbd92b7e245898b6928253bca1a770741b5164229fd9053c5f75134a8741c7af90764c52b37d383e314d69fb5e0de62a579b0a51ff6ff1a7ca3e5bb3d4eb5b71da52a45871e4fa9c9f009d695394c573e0d4a935666bfd74dcbafc328c519e101832285f3672ebda96a7752a487f63a6ba1e413594696125cca33618a9b7390a911d843af467ced02f357572847cfb28aad02b3bbe31f39f0398eaee4ea8305bddc58e3def7997b73b0a3f5ecc43c51044139c1bcb26ac1064a53b4cbd6c6696a5cb4fa33b8bbc34871e048560c6da031a26e04c67ef247d512ac9e64b16571e4daae696990395925dcc201c504bdc25fbca6c228c0f024764df0660db0e6602ff9a5197323bdc8e2d46a186b85d67f2a83ea310ee36e11680563820d7b235be5290546ec7dc64477dda6f2c95059aaa5f0812083572a102ec24489ed4f69e21e58ea9167125f394ebcea101e51bea69b12e2119515e8753e41ab06cb518f6f278fa937d2050ac5f3c908bd08817f928068e660884353a4ea32d2425f3a1328e5041bafa63caedd6b12a520c47ddab58e268574c96566197e14c34e3f860a89a5988b7947ff90a12a8dea70426baf77db9adbf1f8f73732e5c585c50e3311ead2f3504ac8d2c14c99187c2bb0191b138fd78251893cd161144dcd9241205ee3ad57c06011da47dd463ac03ec88c4b11500650409c7a85bcf1ce7de1e22b8f8941f98b31cd7c78bec8c970d67cd414c7835c6b8580fe83abefd1066abf964829f5f2ac15194f411d82364e0ff5c28c598db7d2e1d4d3248e7a1f1e6b8154afe3adf74b5b50bbe0d13f124362577d64469d4a98a6d4c86c3ddb732923f6cc80db0e9e0f6f1a5202d4ba33787bd363247754ede7464a8527fc9fce092e74ec930af0b4ee48cdaa117284a29b4d709c8ec5a479853001da706e90f6a6129de6a2cde3c08e7be53fc91f8377bf3ad3b87109f3d756b5a93f92cd299d27effb9a17510480e675f7624690d1952c7eb12cccb960d8cd31fc567c1ac018b184fa1df69c1ba55875b00616d7232645d10820296a31be64542a3ddb1a7123f1fb3ace6af8cfae7369555d5a4bbf7ebad010de5bde77ba8141fc8de3e998aa0b468cc2663da77da369176461cbf661d454386995988af4896715e3b14a7c580045ce5463461fc2ccdc46fda77b713d64b974e02671224737d00bf7e5911c41ffee83b267f41fd4fa786be9d656cc12386b382770eb0252fd95f8516bc5fec03592e8584d2327ad698f4ef666ab60ea9b6debf3fb99adf1cee079841c66b8ba8b2e5db2a20e2806dea167544f466ae1b342c453b5752e17cf7292795437d2e7a621094ebb2888f7fab2b99ad678f8adea3d38f65bdd0a053ef70308c7ce325c0173c1b6e4c7386a707a84dadf6d5fb0e6251c8b16f31b792390ceee97df7054118bdc2149c87076b625cf2715af211fb18ba0fb556551130514a6cf0f83a1561fea45a08c1f1de90ad377f230487d1a2800bfabd9b3498927924c3cc0f416431d9a96626f251af2d62536d46cc32b38fdfb2b2f96c130d4ff86a72200f711094bd00ed5fc32af1ae863f55db70bcdcacccecc384e66746122d68f94749ccb743d769b3a88e5c01135fdce4060b3467b794ea72649a6dff3c3a0387a0ce41c0dbd9594e71709d08b6eb8e0303f201bce602b4efc5117407ef206479c0f299792296a116ea2f69606d001ccb1c5f5d3b8996ca7e1af2fc4a4c915371a8bf5b16da4cee591359f16de954068ed98b1d6b24af134de79f98777692730265d55f4dae4a427a690ca4c8571fd36301b50aecd5262b796f132776895f4e9b7bbbfdb300d4b28237f9d678d9ed5fca439fc69a47d9c8118488c7f1ce1215e5aa0906aabdb06545789a2a05ae24253ec879f01b569061ae42970100b0b26a6c2963c9c5c50fd0779992212a7779c4f8c2f5ef9cabf3f0145347a49b954306d63f1ce72d4eac08a3487db5864e707f7460ce53eb85df474ea1cdfb2a95e253bab322775b0769d35c4ed2aefe8d075d4ad4b234a50e415dad567afeff89c84b2be6a4e0378699d71adae66d18d8d0f21cb597d4ab93b085dd3be7c28b24190e7bb92eb4737bc3f0fe390752f3b453424bd30f2eb97ae7af7b417baff283bd4ab6b31454fa8f0c9e5685695084fec0c7c2582d9aa27dfade65dfb0df579859252ce7358b8478f4bef42677fd4af84fc66e48408ff2a88b280f9ebe9a1c58c301861aa9d830ead2553e82e3d09eae00ad6625ed742c588dd4ca74d84948ebbe6313eb988c3452386036ac3a742474da0367c00b8ec3ad3a06c79ad7596e47a638c64359fd78b722f00d5034fcaa3dae6e72524e3e8f0eee93bed69738aaa902189ae090fb1ea85aaae9e7c8c8591fcbb2e3369fbb9b953a76e373878655e20605b72dfa4e41967ba2561db49476c57bf4fbbd87ef33733f9aaf0f439690fd456f13c18f2eaa3a72cc02f66c180e523b75ad9ad7a40d57ecf4c944e9dd5e158f39b4047856b7281b93f815d4486e0818df697ae37b0ad1617615b5cfaca0175f52e9320ee8b3c6ad1fa0bffb5226acaf50e19772cc24962c387b8d9657aa96c934225bdf56d09faf101ed415fa3069ea321516285498e296c10adf5dff4d5d971c80fd8b4e04bf6d00fcb0a240cd554824165fbf894bc96853089ca923888c0369072bbc6eafb3f13ae60a125ddb5696e9fc50dd7b2ea350fde4eb2d4a7ff66704fe2392a8d8b96268b41aaba61b9405f1cf3bad4980e5bf2c523fcdff4ea8e75ec7d82056a327d051682124423d4eb90b147882c6df7baf3c967b89713fb0124d1872f01f15414b801bef7ce678fe077685868ff424bdc42d0e0af327f390113710ce10ae9c8479fefe692e5f0092deab6d206bb63a1dba1b2aaa6b3be172c150b4135a7b5fcb119a8ee26b4bf083e32000fd3e10664281d7b4abd3c317e3ae0525ef22234981ee50f099fcbcec0041b585c80874e3246bad3f6c56b8e41bb71a5bf5558a62d2975664f6491a9d3ccc4b7414af6eb30344ccfa764e6487d65a6e24cea355ac7494f4ea0ec448d0ed676d93f4bd83c464adbf854b0f98ac5520327aec3d775806cbbddc0cf05aa11a0bd9e1ad9475776edca0752b3e5409443b5c1860b97592b56ea78ad4125acfb18e0edf8bcc088b59ca617c7926e6d088d01013f56ac368550a444bdac9e2f8753f408b35be9dda8c3427673285c156f48147adb64c0651db3ae3b6bf70e2b1d6991d5b0dd98515d082da3d17864f8710f51ffdbdcd64766ed9295140ecb3212378a218a8f4e67b916272a7f71f4b0bbbfd55c010ef188819ea8e4cf4311d0cdb10f018fb0dcba6b9b3892416cd66d82d860c7286f8d5106d2748882b15b096298df6bc412856519496728e7a07f8bba6fd681a152608ea9e3fddb835225e5846ad269ec65c69b6c6c4229c540ca7d4f23d166eece0de30b8601b03a8c520ca575f3b9fce3714c0e5ffc1676666b10a981314755f5635cac2cacdc3c47738e5e8f3cb368cc83f6dfb7d9b91a35d8fd7c3be546b41378614e7c27d9f57fe016e56efbf3f3a037ea424f37d2d37d9766ef9c51576269e4814ffb6fb1f82391fac3c6a750fa859abdf2076db9012049bea2416689af2e0f6958e88ef50805b7e448c4360b6ff184f891a3e03702c41743a338c435bdc458984f5139194171fa44177e58608679b5ed5c50a245b1ad153e186f912dbf171cbf52fecc1ca28486f1a926c33e84f991e69749065109667d6b7dc8a231c280a9c545cfdca1ba408d981dc19f07117386a61bafe2a884b8c345985e71b68a222de2374c5bf4f727b2639c04edca8849cd6ba31e6ed0fcf13011b0ded01f80c2c278577ee18b0b3196bea3e291ab5770ac5c1f7b60078989c8c160f1e678026cc2a9bf2fe6e987f17fc44bbf1f6635b67876fd1932292efd2f00be7cf2acd3bf655545ff9ef4e3ef8dd81b162c137e5e14027d835eb804022d9b6a1d337402bfa91b6a8bf40b7d5ee425bcfb146b0cb5a429cc842436010e1a7954c6b381c10540ebadb5f60a126bdd4d3bcf420b72d8d48ca9ff6cd5ae687f147598d0344cccc68e9a225bfc7fd84ba1b0e47679fda4049209983af3740af58b4ef1614ab083563caaa9f2656a941685afb27867b68b72f374d94f41965d9c017aae30d7090989a3ac5f8c3aa39909ec0cb9a98771c369cc478517372e12aab19c5d441a4a9d87a198b4bb827bf81c1c9ccf4870f59612bf29ebb55b81c57bcab06cc32326990d3007c19d49b31516aee070870f8d9c889ecca1efaf80abceab6eb5e3a741e597c7ec1aa5cc5c18b85daf422e269322466582c0b5300a4305cc1d02d06b6a24cd61bbc75bd28b4d2f76ef6b2492decedf93d401bd5e167e3450dfa79648748f86f5812f3d6b74d3de7cbc74e974c7574321633913f89a5f16071767314bf2205569aab712659cf78fad56609de3240062b884d06552eeb1570591a4010c44d599446245b51fb46629fe9b38fe448e9451a6dfe85485c3f49370abb9e2735709780c086f038424f8a1aec0f4a222148641fc92f463905b023519f796109281014a7b8499d767267633cee729f2c26d99d6e1bf6988709adc5221b8ae53392a4b77377ff6e7c9a802b8d256b8974ce7ed31d333552f48d3be8f323bc1c6151dbb4923c120a760a9862bae2f94c32d04b5978fca7804a42e133560a45d12b9c1e3f1067d96e15fbd2f7c11343e7a4556d1dcaea845118171e0c10525e5916c6c5eafefc26999143d0e885a49cab4e86f095fa319d8e6a74c8dc8584b01f1d3cca96dde9722dfa0a6d5b959237eae18a7c1e84b15e6bf0259741fa5f560d6c872d2401e2d63cd9b648a97060666f810760ec55a7c6fc9e5624dbee911cde5ad33a17d99ab36f1890298e99e12236fd5bc8d53e113b7542bb4eacfdeecb7c2f9d894544d3666460e758d060839195c365b3ce98971d2341b64e1e4fdc4f6f0469f1112c4ec0ed3a8882698a7de3731221b8e2b56a6eb6e17e4040b533d77b13f7b5e7b8b4654d184b0fff24060f412e7c7d6de7e82c673009a3928f8f7c23256fd8c6dec3042c6d0c3ae2b7870b448695f35f7269be29869cc6d0ec98ca73064b8c2e860fc1d4aa5be0a6360d4625206d8fdba2597640606f5f0a543f080e0f1c33a075bd80a2182467284dcb1215d78a24c3e0344d877848e40ed4b2679f4cc0c5e357e9480d35203c43dec5f56b656f0c68d90386d0083642bdd93950c072203152c79e4e35de7f7acb3df89e1ca0f0a506fae2cda525613573222e75181435e52643c0a671496a9005c6bc976ed4f073878ea95e7abbd5d37dbbe7e5ce6a9d6f384f040c6f82b8baf2e312fc21e4ea9fa316454d122c431ad8a162a2514771a1319771e75dd5ff80dcabacb946a56379a4b95705c156a39ba9590e17d4035f772885b687b1d0f8bfbec242a71642a6b849e95b7c1727b1140e529de7e60bedeee52842deaebef593f0da4cc603b6b86650b5b42815315e2f178f4d7c7a5ba242d9352386d60f7ce136a228307481835f3c7eb65e53626d63de12bfb50a2550922bf6259dd0e56350971e876d5e7db21832cdafa530d0d23c855b6a8ff06178dbf79270c2b1b8ccea1b4b8fe1d6d4ecc6413cd9cd3de505f789c237888c066c3dbc139ebe6daca642b40bc02bee033f1dd0eb164a14a2ecb2d4c45294e75411d318d8a4b62d28c082989d36a471a80c6db3b67829e36872a94d3113866373d4cf1599c9385395a481f3e5da51e7ac2de0918dd26dae4037e76259fa133a73bffa198ae4a24b645ca4af8e16f7447a22f23ac7c6f60897581332bb01b8f209d03510a75ffa989597314172ff820f0f3f28eaff325d4027bb02daacf429311292ccd7f47ccec6da30a9c2891bf0920d00eed82ab9ea961091750a701127cd22d10e1eacaf3e7665a418024e539bf62434fda1c6dda124c1aeed4e9273dec30534154c696a718dc2c852c49f903845a8d5cfe6fad7743f8c189a90038e2ed8015fe6951de4bfd370129138f40afbc995e143cbbe4ae02ae6ac258beaac6a6b58818042ee420f1e9266f8c61d3de2f2d0455fe93b0589d348795a6e9e0cc54d73bc23cb8cc143f850e101c81e2eb7a85e3ce2920299a3117b469b06e2ce72ec401602de83056e05628a8b46b4ae37a056a40b0a9841126ba5a7650e780046cb560901a73ebd5fb87cbdbb743fbc10640461a996382c3f66799f9fb1061c7b6c60238e2c7e06514e9302d9bc0ec13c257f7bef11af8cb439d7a661e984785d074e2ded2d00d3030051e3dc697f10d02bc33a5672dd81e0d1afa7fb99bb41e0dd1466a5470eac00d5b78ae1ea86960b9d84dfd17cf9b5ba949975deaf0df862dd6efdbacbd774d050dad1a1b7d90b6d461afec7c7c592633b607eef8573086d914921223421bf145ca0d14a80b1e3091684d0b67f8cf9becfa9d0237ef4d6edaa0f505829de5183f410c6fc98b70b7a44253d3dec52cd30560f080acec8bfe0c9458cc19c7ec61da3d867196e94374594817eddc87d0a7ae63f748de5235bb02344bae4b3fec6d2835ca2e93892d91e4fe79ed56c70f43c008aa88bd695ad01b5409b66e54b4e77583ffcfddbc5d2156071b6dc0b56ce8c41bc02ddf50b22d8214b5a751b7f410d6b2ae7229c201d8e9159925e76ad292be042f804687af3451a3b572ada7ae5fa964e3e59caf88d6b60fcd6e286e98a48ec8588cc32ad359590370622930df2face6d78fcfe1bd42eddb826c0b7e5432c3ce9c7629cf3d161286d6a532361a393235c49933b5352767c2c56cd057eeeb6c73ec901ca8b1f51dd19d1be46f6a4a4b821388964d8ab079e6e6ba7a1a375381b8142c4df3a3b972d66375eecebf48552167ba44dacf850640380286d7dc56306178ab629ae5b131b48489ee6d19377a667fc265c01ef0f748949aaf6a3df6f26472c3d0307f7929801bac68a89eefed460d718f43fd6d948565d8d2f123c9755d86e41f085453fbb542da4b2e5daf666277279dc4541f8b1abd6df53e067c0276a776f489ffef5432fce13c3bc9d721aeafe1c3603b770bdaf16773b6099493554e429dee14ccd033f734f05dfa5b697dfc103cf5e6428541b8d7612954ee770d4bd44cd09df078b4b795216adc4b0dc69ea59c3c385ba4731b62ab3e2afb6b6ae8819d7eec157383dd8083202aeebf6420fede6989c1279f78a36b735f9dc64de1f65194b47dd972a9cdfd6b610292a26fb7700ce5af88e622d549d16de9eeb9f136d45ecae82d61f09a6142e48f7c8fa3a244c4f27386c84284c2ba60e477b85c504fcc83c3e0d465e0d9bc906d4c9d99ca941cea575cff22ec234f12a24837ee10854f14ecf565d5eacf6a4ef6b4256bfaed0181bfae1815a1276263f18da4422ed1cc0bbd1335f31c2a1690441a420dabb190c65ecd854d06f86511289988af5e9e738876a940195bb2afcd8a4ffc1b7d7b04ebcbffe07a2962fa97028e2f5ed28d069807a2f1f6226b3a96d463ac9947f21e926ae1303caee358cf1c679984f4d45e4bdf9f9048228383aa07796dbf9103c141945147e623c76ee2170f3c626c18f0bb61366266d015468435be0c329a5897c055a9abc9fadddedd3b4b1af0b1cf27e0c27e95993fd6bc97271131f2bfdc08cf558fdfbb1698baf06a2241d447c279b1e2f1720ca7b6c893d3a17b2062ef878c91b46cebcaa34f4af5a6cc8e993a0505e4f00055b719657584747625501094e1cc6be0afa1973c4f4cad45598b4eefddf192114d9858f8f16304fa4e8f4aed2d35119ade7944275207a062b8f8ef90b425ef30ced64b364cf2201f92d85e92f3884df917414bad51cfb4f64616cfe0113e5a0473ec91287cfa464dfc39d960891e9f9bcb924558dab9002adcb3c169a0ba34e6b1dc610f451a5e6dd176b093f5b2c10f8b99ced7d3ffab6548908199635944a2eb0b46886160757b2f49739aeb515609ab82c36c50d93ba6e9f127b5f7c3b133ba92e1e1c0184f3172998e4f8d550f7cf25cc2a5d6accc2fdd8dfff20c4f1f0485bf438cd40d9a690fe117d6382db1da6ba4c96e3b724132c247d41957f429c0ecfe7c86416b870fbada53d01025cfadf87a8ece57950babd789ab99b05aaf9220e91a600d54aef28caf384f68934af4ea79c89e06f97251211d645df82e3e03e8de8201f37fa3460981cb4fa8c16a111dfd2e38c6747ca64e5efe9c33d99a270cd44283a2fa93be98f7d399aed2eeaf727ef00302d44e13c7d898e3e1ff1282cbbacf92b00d9bdcedb2c5e7ffb38390db3b181623218106d616a92f949239a6d26b103578614f8592530eb790422d15b8e6c595d64c5ba7b6a80799999a09b4eeabf3e656259a78c35efefa1602b7541f4651e2b7ab3c4446c61280d4a28ca4a0649f6109a4c2b8b832a588aa1408ece674070406e941b3c9292da516d693c18fa9976ec020f4a1ec1b4f30ea46991522ecfdb03889dec65fb27782053a56a29ef4cc79af9a9980dc4e5681046c7c9ec471ac825a88752f30c888dbd53474424c808b033731c530508bea862309a5daac52baf1617ca0bf9b67193b2111fd9161ad1dd77090a0fbb8104614478a821ed7a62e8cd74512cb9bf3346808348be3fdb27c475a2021ee1463b4a33309da439732b8c780265edb77e0dd77a5fb4e522c508d2dbaad1108abbd2e20a18f0e4e7c365c113f8a88912a527f30e3a70172a2f5f95a83fa26e9f93b42df4445d4f29dfa7810c3f964cc5e6527f30c7b9fb5baf8dc5aed4a49bc6dcfb0a7c3944323e4aa5198a00c29c3d86e9f034d3fd810c8c2345a2ce3f598b92bd47723ad4f8f342b4f96ca8c993d9e3163fab74d484200dcf03b396a86f98084d8f4931c6d244b9dfe271d3f121f07db778b076378e55fcc0e2a7cb4cb8dd9e9c1b587c0dbbf57772d8fcc6786ee575643d3ee73ca072180d701559815d1d42efea66c3556c435ba20d696574ea15018d5c708c14fa2ed22501289b41217620708e5ee55d541d7428819fcd6eb5269b483f64f491b36b407496a4114e0bec9bce2fdc9df86e3d3178843a3c4013b7e628febb1863950d08393af06d688bc78d1692e154c5ca4cee5ec492e68cf18d7dcaaffa13d3b2326138d23f684de00cb2da1ac83758a587094c3ca3a2bcde1af212c993c8133061c4d83b3e546a997f23eb6f676361e6caa872a3bf0773297ba9f538137fbf3740a13cc1442924786c58f284f5a4e8ad9694e768594540a5c0c40a525c288c0d160266cb55b43391a23d839c667fc027510cf160d2c3dcc4ce5751d22497e62e46162fb36d3b42a5a08caae2e1d12787c6710a4247c0cccfff5304995f7e7dc30958b50ee1fc98f553e0fb842e7c45cc931f5044d0b43d246f4b7f163b08615c317516ae58882ceaa232346bf344f50c02f2cbc0cd13f6bfb560895797da584555e1d2fb8e7d5aa9464a02717ee187f7a76307e337c0e2a7152351f8d6a9b0ee4d2de63cc0820306dc0ee396c714c96c6a7bacb59938e7c72f2e16cd772e25324a4e07bc3831ab608120eb8423f218811d90258743c3a928f60c4c4db8aaa7fc603d2441493c325cd9b847864658dcbd704da6f71e5a2c234bf9b59493d75ac107c610b46b00f3dcee0f8a4a166f66556e9d1a1d71a6d12d9e9082d884667d6557f4b6dee79c2b829bc7ed0c06e19b325caecdb4866547a46ceeb94317e8d45164bd4cb4393d50a291880e27dce03594220f9f28e06819fc073dbb0b22d126ee57d97a4937d40fee0b1ba8aed8114cf5f05a4ba37c14460df618b82ade0e0a68735b17ad27101232689d09549f7a4e19a1ea44f1ad5e58451f7c55826fa2232b1d10a2c46601b9b8ddb6285efb2e82e1305c7af6bd406ec5e847b15b186a56ee0518549ad56258434ad245be57733062900d5f2b5f41075e687c4765dc38575a628a822e5f3142b1e279eddd96e426c12b5bc5e34775277596cbeb574a657c2126801224e165c28e44d2552985800e09aabaed75fcb66db51c32a49f197d99ff5f653f4be8fa484eca7332c17322fe9cbecba0bbfa6e529ef88966124cd169a816bfa5977198aa7ea0fa76afb951e2df8bc57525c9eb3014f0e503ff20de8dbb61f505541404801ff424d7128d7d6afbea5dad411173013fc2621952625c7ba91c013e2342253069c57af51eee6adb954e1ebde11463042b83482d8a2fff9a223e3ef6b1dc7e29934b721c289253390e8061505cec611591d3b69c06878f3e1004917d38b9216d4458ca6a69442ae7efd46fdad255b24cc14c66746fd1c7796863d9a78d5fbd50090bc9ef2475bf40f082a11efc339f74cf53e5a3064bb48f2c1cd2c6a9368783e9c6da58b0c4608c1ef3529be0023708b9aee8a6b028f491e4379c9cf47831deeb8df45e03f1428da95709541198b53ae60ea6160d71f4bb9c10f4a45793993547e1a2fa05f570bee48b88f9093c7a0f7feb2714a5c2f7d3d702686ff45ccf3a769cf9cfc7ae8c5dcae985f3a490c7eb6f984d9f67357a4cee39dadf383ee819653f2005876252a4be041bce28ddeb10b84967391e977ca40e6a7995aedd4f04e8f9b33261d136d66ab9d73414d4dbda02c272893a740c02516007a8973b4f171a92757fff3dc6621f9c958cfbf275c5e017490634d0e5d46c3de291568ddbd0bee95506643d40cd3d0ccc1e728d1f1654fddb368ffbeba297423973168f31d47b03001ef991de23bbbd4fae8e7038909bf4a0a5d04384291769d72d3bb22013bb341abfb90b6a8061c74ef1681d338fac8393cfcb32b4c5a11110a8b255fcfb4b2fb26616d9be91a7be149b2246d83a61e7d4794688d0f2bb467d23d9581b0c8119eebbd3016f54ce9666ae7b61b2e99f4cc80b5cceaf229f428a076ded5c5b5f736ecef07b7bbb0a18e8a93bcd71df7c94c3eb2edc8ea49161eee8f38bb7142616f313f09bd0859306a7a286207e5a544e94f0a131b5a967105f9abe3b821b8f4bfbf9c34066bf30c95f19c0db4dd3c2927e2f355d139be2059ba554c1854104e575d38a728c55ac491e776e779bb252db3b4ea6bbe580fe648246ae89cb814fe509a6dfc0f5d531e4754c633abeaab39eeb61516672645565e1b421635dadce6445241e267ea392e32fe0b4b27cde6a7fda7f7dbbfae5a5620d6a0c3380c9fec381c64d65f90734d942fdc8bf341604b8a13632dd96d0de589a5f41369f3b0af2891ad204dccb8d0e2d9e37756ced164a1cc7bf57dd256546f2b57b895646b5357d92067785983cc43ae27ebed4a5dae2bbc79ef28b88ce36ddb149796e4bf7699aacd77644c3c0e9cd5818d4187d3360f74393c5dc51cd3100c9e216418e454b36b1cbffb27f44fa0f959b27b4865c27e83c754d0a064111edf6459cbf78b730b4bba57707144761c9dadd55f35ffb64173b9be885282411abfda9f1a093b2e0f5ce389a0d8288f93ab551ce2e7a2a26affc09324e88a136d1451ecc7ef63d3054ddd8cd2f0f7a08d3798e94a74a0d65fa05a654371214254e89673ca3d5fbd41a34399c50946a01d765472f1ab10715d0df200f79efc655f2d7072130f4a6f1e174743da8098785769c54d1755cca5152c657019bf9b80b9e0ed7af4f5cba5848571c113a920c7cc6928ddfcf121a9a73ec94bbbcbf2a708674488ba71eb1612e106579e92da85b988e2c4415aa9ca0dc28e9a2e3c9053bce3ee7a6a74b68fa432d9339b44d505825d6aeaceafc4e0a1facff25a969f4590191fa354d5a293c81dcde7d865992b32b46c5aecaee4e54d85204a94c73e32b413d3b021879f31bb44fe17f3d4ca87724cbf1746f76c3bb7607a5c0ca4e8e6de65785fb0d5bb03ba60b80724359280e918d4799ca8174150e2252786fc63f0e3e495395d839d16b7dcedfdc54f1e4cb7cefce29a0eeeaceb3ee45f6bea0d00570ad8bd7971f6e7cf21efaffbd0792e96c05996a813064019ec791b84b8c02084488419128036fec25c3ec94d1f68d511b7eb6541062cf9d44d699c09fafee244c487f1c765a7cdcda2bba1a4d4b10ea2d04a922ab10e72a46be81b006f41c4efa9fdec753a46f44f6b7ac6097e49013f04923cc6ed496315426abdc9d34322544fad2075f80f47169f2a0e5938afac352930ff029352b93861727e6641a64438ed5d4a5386a74e22903720211f0963f5fc95cda11709a5e8a68f8000b50ed020d90bf4425b6f169e016f7dcd3d646b2afc72d0d17a6a1d2502c421078d45571cdf72b8b6f2f2d0b77d6c79c6384a7ed3d15f4f24b68a6333191d5c70011fe2e80cb1653f05ec377657e8dcd9da1e547a56941f3bd5582d0dfcfed5275a2cb527b14079f0f292843c684bd23a9584dcc281fa1496420e737033b029e512bc112e32ffb8e646e750aa317b0fd99cd2a1b4eff82968c989698819e0862e4ff48612f17a00ad8ae6ebaaa34a28b6889a3bef38751642d981b072afe5d9434b9780405c328c55edfd4dea2564e19601b0461a2a66e6eef39b0b2b281012c67210d6d4217d3a837b87ec1b88a98eb12dc91883d932f49d0d20f3d7b42f30c5f9a10348b13a72f313895224eee8be97881ebade8491ab382f9aa499a5609ec14bf324e409b55f4ddd96f7c0949f9df22e7fe9ebf50aece6c6a7beb3e8443ecf7fcae1dff8a18fe861890d46c4f4ac5c6b0c4c6a9b39aabaef2b35def7a53d8ecad3c504d9f769fd4a23e476bcb4d631e6d19722e5e29b734bff54cbaf298d268e23115c396c769285e9b51f32ce1ca83805cf6aa739b077715984283d186ddaa354645b12cd1e4bfe9e9a98b3ede213588123da13075056bb9a601c7384dc876808f173eb539e42013a85ed765cbade120f6b6cd9be37f2b2bc0d0bfef38bcceaf3a04a2bd13c1de7c5b0e49ed8c1095471067c2cc3e3b21954905635c904d7badd433766ca6bb913b6402a904ad27cbf063fb95a9d5943dcae2ee18d7baa852a63c38a90691d9af49308de722b3bd11c7b336a60a8119a2b0df1c57dddf4c064d31117c27dbc5c0c165561b86a9719e03e65351e75b5ce40675631e2395a219ee2e122af2e884b03827739d124e1f76ef167ef27f5a5ce1c66034bb4ba5c758788609d03ff78f4766a1b9924ab468603dda2b4958954f66b256b4eac9478eb2ca53547bd4ad49f73aeefc31877755de2413d1a333da0b0f777f25cbb364bc9c7935664340f234b47b31468cab4b8852f9e18d12b29025822afebfb75492052c9d6414fa84ba7d7541e94f966565dded9a6eaef68f8eec2f03a2b656812a81908db6411aa3d37c69a1b0dbdee097f7ff09ac3f1c9c7fea45f6865aab326e8e38ca9b16f38ddde11ac918de95d8f03afd6c10d60629897f9360be73b9ef42c1873b5155f7c2d5fd5fb0a3e29c8641d25faae8d23a21ad500d9487d90c265bc2d519ac4f1237884a41143aa1fb1356f089fa803ed9872ef5bfb7e0a00c5bb149b4fff246d76737916d28a23f4fc6dbfd58f2609dc78c69d8cfc8647d2fa132fca9a27765677b1b7d0601976b6716dc2128baf83a06227621862d71d6a9cd82b932aefb1c85ebc1bdd56124e82fa8a8692f526371ca99fc6f1cfaded9fea87be33fd3871b3598930937bd2dd5017106cc895e6cb3b0d6304b2679c472e009330dd4c077014370bfde17e26d689eac2e1cad0773a5e2f20aac8cf7d879ed9176eef3a3c05b5910870f910c9e49487817a086bf6ff87c62a40db15428a3e453152a148baa08d8b42e97ebd90bc1a099952806ea80e3245d06c2e95140fb66cc8842b1344f19f99a0202537e8c71aa8e1ce099b90390942a57cb5f3735a1d037262c4d6a203b096b7a71debf02906e32c83e3fffecc77e3c6a81eab160b3182fcf219acb4f4e3646c529c12234194b47328762832c509d5340fc926de547b1643b38ec98b669d40644fb0b43f5da8485c52faeeffeb6ed1683f9c762bb9afaad702a52a4b6256340db6d89d56d2fa3f86e7126f077223c5f911c4056bd0bc7518b291f3bed4bd01a5905edaaf8aa16cc3f9df9d089643238bc58ec1085fb2bbd0541b633043e393941a73df4c4fa0f1f75bec69695e80667dc711af9ec9e6eafc8cddf7b905a0e463306856e235c0090240b17c91070e4eda7de4a70c354d8895eb56c504f2d8a7ae993adb51e44b12f78ecca6aeaa38b9f26d6b91ed15a42b6229f6d501e2ccd3acc45800355a0625f35e56253767f7ee08ffa79228faf3d2b24cc41f3cc615951efe07c629cbe8a0fb39c959af40f0d5f4b80c431f4371f10a068a4deab533064812899c5e97bef743f7f6bf3776c089dfb34c164a2ee509b0d1325be9f5dda5bd0908998c611ad3ff4f0f3d9f5870f95077de3177f08a59c6e34c7f3e654d58bb8ededc9f2d4c4a1eeeb4092040cc3a31fbc4e218a018e12fc376904d4235ea8b0bfc817be8c7b101f121d3aa7830e7f5d99338c18afc84e0b4a4b101c0955fe5a097d1c8b16a21d4ff6cb18fe5b31f541aab95c9fc81529e443cb873f5ef4d78a73526dfb2ec65604b70c20480d7c8a7aabb14a79a2a52b0c388ebc8a26f0adac3c3d75ad5d37f619703645812c0c5e7509162084ec137aa3db196f271c578f8105673692edd5e1c472ec7d114afaaabdc0f951487444c6610e7267147052fc4ecbba1cb0c3249b1a9dc9f4345c7ce38a8c8dcda3568e4d30aeaeea1f100a1482328da24d4e54e44b27ac89c50282aea23ecf23138614dfa0c8266e06337d24b5667dd787846d596f408dafe76a181a288c55bd40d41526db2c49a01057efe8e64ba925f7202cc4dd09f149bda253f504f0f0c2b5d2340a05e28449d541915ee37159f408acab73cae1f939c8357bdb3381a3fb4b611485880e27b9f751833d8d8f84d81c44ecdd11655038be1e432cfc0d3aa8bf00ae1905f8e2db8c14971e45171105817a82b3249b227c17a69443f5e96d43c760d6d38b519c295e308e89c95cc68a56bce645089111cfd7a664dbf76e4a1e8ac72d259c14ccc8056f329dffb4d9ce84b63d99024db6bebd8d8ee6ecc8c39deca54a814674c093785470c287105ef305f514c1bf036708d03c703ef24230191a848481ea062ca7ec55f8211d716b5fb1ff4a250432af79bf7eb740ed428d97f0c54ccaea114d07c94683f473d5a510c37d29e182724b0da075da81fb2fb7ede839b5d5796eb3cd376f453868a1cbbe4201a598e9be294140d3fa2d647cf8e5468183fce2970d1f8f4248e4b2cadcf81096945028e12539dfbbca0a1fb9bf4f7f1bb5c0e28c4c7c9c51682dcbd6c89468d177d8216195173f49bd6a0b56c2ddd9104a73b4ef15e1554ba51b95d14ef8a4bf428d4eda60afd6ee227eb89d31b21fe728e5c93eec78fd085ce2535cd97f1eace8ef5e92417f4120295e392033a05a04b1b47ccb7312d21d3176e60b560ccdf3dbaa5565f2314d41723e97e00a40dd30aaaf12c98a02031e216ecaac30b5cd427e1eb4a380743387e1224c9e147110800e5fa0b42212cb6e6bfdaacce903b711b45462dc0633e327355442dd5170dc5c5d39cdaf5650d0263552528179a0e241b59044160ddff6a87fa0c6a16625e67cb8a18067c4a122342d490d05c1b74ec68df0a572f81cdccb209073219ae98987f19ac18e48fbac1bfd1117275ae8f01a664ac7f8befd4823e0d41bc0392216c6201b1a7339079f678fe94296aeff93581ca5072ae1628c1cd355f53ee6b488ecf3a29cd361b7244c950f9b23446a1ff6be729ca4c60ecf606ea25c078936f314628bd94db9b4810fe2003dafb24c2dae8cc180e1955d4ff9c4d7d13d28ef5df2e9df8d3d93017b4c0bcca48e257960f4e8f840061e7cf9ac90a9aecc961d668cd317370a61fcee25fabee4f9764aad834d275712b652e5ce26f223e6dd02919fcbe279cc24af4571b321cbf7c9cdbeea05d12b39a0a3447283fa5d4c382eaa8f66d42c48648cdf4f6eabb964a1d8deada2f300502ed705dcc759406f62afaf90914279dbeceb93085b5e413999dabf1c42a1c0f0958844df9c8dfeadf5b119eb48388ddf2453ab3e50472f592ad7bbef15d9158df4699c0b65b55ad6d2f7a9a073ea2ed31fa139266bb8b9c1dd37c064b4d16c0755cf425f0cff05f27f97155ab2de34f778bf8c2ecd5bdfc410c2e49df09d26bb2c973879593459792feadb1c418234729863a44b7ffe4f2026f3b8195e0564babc52908505055a7b883bff0337cb42da5c9d3e2bb49801ba5d305e23c0509c9e22a6989ad6ecce34a7029e2d64a7eb610f08aa28ea62ef1b9298bb560315f2b2b446a4ac65d7898134798500116358611942c81e847032aa19efa81954bef97685fa5a71a33338e4f8743740d27349c916f59760b06d6660956c9b1af526c86dcadfd5ce0a242e2da9b6545f5b6d84b94982fb18c264a5f5174797d89a908e6412e7ca03097f09a1bab48f33585abed6e3942707123b85e6c53565d48d176e4f9ae7e3e74e975c4a123d5fc11053919f1422534be8321ef12ce49c87773e38039cdf9f4d3e78eccae4d2ec4af334ab1f4ad9f914db55eb7f2340c2d7c8e16143fc330b8ffd73118ac00de3235acd8aa8a29661033da3345727aa50707ed6eaba360932884a04dbb371d7afc9880567d73005ef5a9e66976c885be7d7b281dd82f9a14696d9a4aa690e127981464e5fba658b7406d730755d246287ce045f735aa4a6fae8868d4a30dba169eaaa1c5c7ef993ea48d16a31b9eb0ca3b7df06ff970e0472a211c01c267672cf06b994c6f0232ac040736b0b163020c5d4ddcae74cb77d4a5d79bc221a72939da4f6e5025dfa711d3598b8335487a0dddc8b641cd4cfb3f8e204a98e7fa39d0c41d0e86d715bb8855fc6df3148c06c46850d7e94e4061e9e2e08e5f0d816bd87eb4cd2ea502d6b390314c8cccc8daa925d9ea172f51a362e70e1814a4485ef6a8d3da3bbbe5642f1129811f4aa5c9fcca8736876e5c4cfb9dca1b51bc73d8d91c59ad183b73923266498c4caeb66764455bcab9d6bc3a5af92534790e72f55f2e37b89f60ac9b0b31a81b1d73103fe53fc7ee2beae240bc65f74890d37c0fe98869cf3b6457b871103c0a54b3588e308f0b6228e7c3ba95badc59aca87e363058ad262626bece5a04f4a31fa6925f0b0fa39f3e180c1e513b72ce2e9800499e9115a4950c3cbac7b51eff6e9d8646eaa524d147ea7d2b9f0c42efe26664839b238370a00ec490a184c201b88292aac10670c68665c46b5d6b5cea7dd37622b1c4e6a62067bda2f3b3f8bef8494323a81bf0a79ff04445c0a71cde4c1b9f6eb7d9b36409add7137f63801e31b845a5547b5e769e0c6c920e1392e266c9d83f73fa0bc7320ac4acd965c5a037f234f4b48e65759abea8df092aa16980c6a24002493731c7e521ddcda01a7b1caed121ec7f0f5462399f01da861578c899ac7326c0b4d10bc373e118e44659b952d381af5574524a90ead83a17a8daec0a96860a9a751f0e056368da61b2efb10706a509b0e4075f5adc44611220b9efa392a0a8c8b82ac6d0929fb59025850f4c683919584a4f87b69135d0f6213cd1547f3780ca2f5c579727397023abf3e99f8053431de1198997663ca36796834b7684ab2be738668c654826cf06bdf9bb490fc251784117cf9c30002fd7cc8b346b1e4a6bf7335d747e52a2936627af1100b037bd41c0a2ebd601d007be63a8ac41ae1793fbea6050eec0580c750c7b8495cdae2d6fc31f4256dc6bbbfc76e9708ba68ec3ff0b634f3840c839365ad5006084a17f09c5f333ba5cfcbda20e8b15d7c84d8e57c6aa0642573c9523dbb8c8bf97115c44ba8e10435a69d3044937c69ea4aec3e290f651daf9eafca4a0cb7d2a2db705ea9e0d66e6f230a007434f48574a017b435a7a08e853d5e0c6acf0029a8d3369660443d56a408d4b18ac554695068dead8ba37a66a1a651af654b1d611f857e3bb01851d4e7ca3b47ef7106bbc097281edcd0b7cf7c635247610b5277572a7c2ca939d83bf8065dce89aba5fac2a51bf2a4527d1db63a23e54d7325e608640ee728069b61f1186675165f63b0c495beeed9ac74a0cc45bead6fad0747ac0782987a2aa6750607e3c1096788489a23361433ebe7f144facc693dc1c9730e88663b786c87df3c61a93efdf0ce18034ad208063abea62b5d603614584dde52dd01c2ed02161b0dd49e5787d84a8c7f5b400c2cb12a347d6e1e901b6ef0b99a5c7af8acba177a1bf5a290c2768f012f8f6215b23c59c4b94790190930bc56bdc9e877ba31b882017eb5494570a5c0d267459227fe1ac26db59349035e80a9eb37c508613ed13eb48f1c19bb8ed311a237a7a640d3df801e794dba1529a908dc4167ea95f1d35585c61d8c2a1c33e80413ba8e6cae24370d44fc3d4b2a1044ee60536581c07761515645cba788c380db1971a06fca35205806fe3d5274a06c3ffae7c18b0db4031889dfc12b4fa4cb104695cd0a19eac0e22636d2599d644e832cfa5d36323be6f348e8ef9ab96f5f56c488ac964a0650e284f92d2fe812af1c8ae67b92b73d372b24f0f18fb50cc83b6c134bc2db92d2c856ae9928f08a58285a7c55d6d674fdadfe64f0169e5669b045f5d6eb53c3d32d2b60b1170d5ed20282ac0357004847ebc55892cff61b2d0d7797b66f6d3b77b45fbfdb31a0a9580e9361ccac62ec6f5539733feda263d24a0356ef2a402689ab9a43af5c502e76f913f5d54271f4b44bfc078ec7efb46dad9d886843f214d309b4cbed153d7f92da4abed3205d0c0737cf2a2eae42dadd4510aee2327521d92c9c826a4637fe663694832088a8d7f40a865577090c1dd7ece67010230f02d419171ff2260b2fc141b9f85b7b24954e506c562b488c1b496ce2ec5075b3659ab3ec270e03f89f15d1baada2a281874b47cd87af20174e0f0a7e17ea3749eee96ebf94f8354e256b87a2c19ed6b0759432a72ff4d43966c655eee4b68c0c66d7c6e810b85ae4948bba43828b70276a9eed980a37bfb575c78b8d0e2e3640c308f19ec82123d3eeb2a08d47f186b5e291922ba892b9cac9d4a70b22c27bafdbb555f434a3411f220d991f11fe5e4bdfed3d49c939e6b058e1275239358aac56b70e74a01b34e0cef086e7e5051f67273bf717b0af90742b6c228aa010b09dd46618605b3b486983cce87a5bd5ac21074e7c6bcec2324e394f920900def95cd298f8910e08392eb4752a46ebb8c0732a618f4b540144dbe849c027bf32acc41ae9977724be0f820a4706b3a62e59d2c72505dc5c468167f5bb1c9a79c0e943a46834f40f7e45914005ff2506ffeca730d574e474e4ac6b5a8af820f9d0122d183107dc21eb4329f90a31da2846a8e2b79bbc2f530c148ec6e3829c5be10d72283d33ef6fa214feb8c2f8dc38d64099864f0dd5b52aa765a5c7809ec40f13cdaaaf19eb153e2f99feb4fe6de81421e6026b0a7a32d0b53ca5a3ed984ae4c4028ec072165d22188ec25f87483c36de18db5a856a2fe352c1ea2fe212ed56f6f56e5da1068cd435de33ab3440f32b31e047412dd9090e7ffd828cc8853241149564afd432099843cc87e4933dc7c95f970b676ab17dd2011a85c9c93a625f9465ed16912178700d342bf5b587ddb6530ecf48e43b97ae02791f583b41d282530cd85947af6dee3d541cd82baebeed83c9d0139b5d6379813bafbc91f1a639f204ebfe8485727c358974ede57083be08b2dfa4aef9581c3afe83d5813818116ddb6c35438bddb3085b9f4b55e55ca40cb1a8c8cbada2ac5261c6a7f91e46db55dcb3f2d55a601d5504f6d5b3700aa8886ef0adc5020627eb8ebb4fd8582bf2ee9772f1bd98267a20d5d0ae71757221ebd62443cf874dd7624228878ea50f63c09648e23ade4df9526bf8f888ce1b45c4972a0be1da12e4d91242872439ff7e4b03dc32a3457c492eb011ef99d97f94b919bddf8f41395683ab668d26caffabceddf259d448776d129024fc8ac3692e60b081fd46591abd775e4ade97268f8d148058f642a3fd9c00a952cebce588a0487c1282d5e69195748ecbf4adfef40316102ca0641faa6e2eea365b95a505e03d9f2e6c4652fc982e30accd6d6cf826b36deddbc6f70428199d6467c090aa0a1f6bb3486b83db63986805cb325e4b7da76a212363b35c7c6ca48c1cdcf70ae81a80f108da5b9d8d197655e7c767f2322deaabb285d4e1025cae22e0fdd220e61da387ae38edca22af60521e7175c31a8bade280e1b688b30b0f812bb69e0dea4dbfd3f816d9c147b61c3805d7570dda7ddd42ddbbe6a092082980d42df488187efe31384299e16b0921428efc0701c1d4af796c56121b3f55b426d04c6b1ede425c0819cb0a50d44c2e339acdf6894f912e1437fadd61e53368177df7a682e3509a109dbe6e13e9141198ef0768510d513bce01f3af79b241c95a3a3362f7b4b3775a9cd1ca66ced351a2113187db3abd9cc17161d1de6d54f98a5a484ec626bbf2d32ec83837bbb200182b590bfcb18349a1268b6fd4f31afb507034ff25c8cd5010ae4b65f1f9c5511d9ac5cbed9022f5b08ce017c22d14f08de68398baa228b9c1a1e1a90cdb9c191b8756e124fd910b3117cb40a5a53e727aa7db5a1b2deb5cc790ffedcc206205f31f38fbf0d94b0345133bac5d3f15f061c70d47a5dc3c671eeccea510d89954c7b0bffbbb6d394463582e6bacfa23eb423628138ff7b63dcd3abb2d4d5fa82c4fb2bfabc37873b691c20b44b71167255b2abe16b642b17872c5438fb90b6777736dcf92a8dd48a4e3d26d04f9ed6075939fb16aa47a13768528a02ec1fd698e9d39499ab05680dd708232cc78735495d20b3618a452a81ec6a8842550873190f052c7ad976f03777a251e363a5723156e5a10e94a911fa621f2046afb9bfd934a962904e5428318e3b3323a7eb76113d9499debc0485950b81886329e833f73ac16356596923f8b406d416fe1c935b131a45362d9f9b3f6b8b16f1c3ea7fdfb45c6984b1e9e3fe6809005cc1b9e357f4aa04f0b3e1ae4d5a27e8bc73703674a0e6ce208c74e9dc848945f3286b2624be0eda26385e8d9307847ca7c6edb012b38a7846dfa124afb261e419008522c796eed9ad5ece5e34dace01c0efad7dce383def34ca7e74cc067418dda988d33c0a63ef5b4a47afe4db1992801bd964a46eefff3446f0a8e9dcd8dba3556ff667817a4d26c13b200c65bc830d8a241e7e901c5edd25d9280e646da84fc752a0c5ede394f8a4cefa500fa531f5d03e19c24a3121f4380d5375211d57cd7fd8f0cf0ede3bef46546ce732d81b3316fcd01cb2c110589231cea5646129cd750be1c2323ee791112e2f5470c3f46ba9bfa76c9189bdc9db8cca54e23378c47e93f062c7a98986bea615d7e2b5ed22dd289bdf91d2680b0f69c6e4c82123afaf8c16f9bcd414d7bd5caa11679f861a1c3ba50752b3212c3ae930197e3a7036e4f2c4cc4031508481b16e28d9e3a91de39bfa0df174914d9845fb218575b5774a5b34b793e7ea40bdeaa5c51bf96ccb75e036e40c78c33d98979aa141cf34487bfde08613f6acc4f6abed93ee22aa76014c6655a76f81b6af5fbaa19793532499bd75c9ef9e3c3a8b6e14647143051d398e65810d207119816351b325b4ecf57192b53b354558236a833bbf7c0c854fd6e6ca936a4b301c203abbe987ef3fb0436204ae244ada2225023281cfc014aad6fea66b48b71efa4c16f2a001d438c9d4a8b2c4761410a3de0b9ed90de72f0ec9bf71eb6cf671fec152ebe506d02cb378acc1731f861a6254a6814c4ce3807135dd214334251b9e8b6c10885d3203636371719379bd27a0ebac7fe0560a765b6703a4e91b9ee7348f8e744aff8c1d96db17318f7ce2bc99f45bfe172360bfadd5b9f0bcbbe68f8fb5cb4e6f9c70126b1037768dd785c5a8fea254b3044f9023490632f65f04efef015afc24b511d1c0b1af310c6c7e28e0a864ffa94216b5070c08223b2703f105418249a930329973e92853d184de3e9614002f8abdd0424a54a2724874e7a3e1eb7b2ef6c31114ec6f962547b46cead4fc6c144527597de633249113ffa1a39577f6d3a69bb9451c62c73665dcf5a7894bf51c6025d7435b8ac934bd85b0b4b053246dcb26aa3eaad98a00e63d5c4d81f8c3e202d87ccdf02299b22363e3fc86ed350e6f4f4b1f2fb5b071907e23dfd5dfddf59898a5e60eea831066aa598e27752eef592f5f38277584c011d831a1dc8d5f59fd37ddc5a48142525f77b454e25c347b3b5a59e4f3d320b5573794f217f1754a0835e29e6af5bbf04d9aaa91bd329fef277e6102eb1a00a2a64cffdba357ae6f0be1d2195050e54c174097d7e6da0259ad77bc7b39583600f7f26dcf2cee94b062c3f51cd87c39373e41aac9a3fba5159ca89328b3c3c8467d2a587ccda4f8396a9b692eb651e0a2723ace46f18b0d2504529507c93432d1cb17ae203a3ba629ac0581deb428bdee7948bf18f43f03b3eca5a093ec8465a0e101672dbe268620f1fb2fd6c627a902bfda6de1f748c1ec70112203d4ff2723d6850857fced4785a3c8de6bdf54543541ef1c7ff1dbf6b08ffc3c5951767252a52aa0c6ce328b6f524ac24155a3a7691a7258ed0ff30ef6b4edd2149aa4d6c2df6b6067c78ca60de28c80d5323888ce3067a7d6da6de9c6df6106635f5bce0224e54da9c526e395e3aaebfbe5008b3be0619d6fa6beec6b2fb1c1afec0e12c65aab089c814cce348998763dddf0f0539eda5fe5d21c1cae578ac58620372e51c5478cbeb1cfdb47cf75821c40a62726323e31a999f4f0a4748db08ad0d062252234326e956d28a7b1de78d9cdc9b1e8d69e03ef2bf78c27d0b57c65e97cf870cdf066c6f2ec125073c91107560522bc302a3a628c4c3680c3962605342e631658acf772a8944dfbeb375b94ad44b3cbf6e32507f86ee4c8ff237e2a43c67a661e11a5075fd6350c9d37bba526f83ab944bac695314b009832859b72b756821032b68ba2c3cd828a757d3deefb4a89329fc7bb07c637cc0a7a6465e5963be7356f225caf6d32dbcf7b1a96faadb57efc17a1fc5dd68e8a1b211cf0138d480582a955291e8092cbaa4da74881ba2e63793fed2e9580c73906b6b1b574b809ad458ef79911925d8d631c89cf66b317e89883e7efa5cd8b6215ed366941dc45821167099571248e32e0c81f610b76b577acfd3369ebdd5b46bc268a6d49983a1166da7a523b13bf822a4f632e959ea18dfe4db77ac467d5f2d53cbd96500e0e1521419fcce3171e55a05d078e30098b5e3f2703780a4ac44f63d9e0dfb6b750f030e02cab04c7fc0f33d8ce48865c3035fab68656a1608b1d788366b07f3ecb8a04d911fda9f5d3036e15d80e482432e324d40ca95be1c04ac0108df8cbe0ce543701682f976e7147367f5a0c8d08e8735c82e5c9eb5778680a6f0ca07811af5db01bf1a17d864b4f12dead15020bd046b1b4af0a66ee7b98606efacb02659a1794520f5388b23fc54401c6987ec93ec2232f66be4931fed234a6b872f9f3980e0502f10e18493eb9316810de0ef6bb9d99f32f4b15b01fbf36ad241006deea3765bd3cd4baf7074f3a8dcbdb5cb5abe7ca9f3bd30ba7232e88939e8033ba412ff407f0d6fa432083a479ac8c1e5bc1c7dfc7be6e269e7dbd4cd3367b93c37198d70fb4e0c2b0370d84b6a61563138d86dd46a87e20b6bf2d790cc9aa579c12dd03b592aba56d029370763c4ad00d5b7e36a6c8c1ff58550c9ac8b671d3c52c9f005ff25a9b977aac80ae018b3011127b6a533dad665d3c6df379f9f5217c3324131440bd3254a5ebc2115a5bb138eadf31b2b712dec6c38aa62e11b92f9fc25c569169c2ef63889c07416971eafd7cc044d03c8b8b033ce31de1e49dd8f350dcb5e6ba966160152b1a9f2f826d890613058452f7d03d12080728016f22e4f6caa02a61936f946ca8266a01bbb0594bf0371712a430222591e24f27246002fb46947c344b3f231390114ce61d80854ec23a09c1155ba622fe002db69175770e8fc317e7dbd45dead0c19b11e1665afdf5dc0e881e839ab771f7b4991ad524eef7a0a74361937327dbe8e4dcac05f8635584b095e054b41ae5252214bd867b83480286a2597415999512f1876d0b71742e63c8a2e166783652dc86268af9821acd14fb2011c940ef2073f4c09d3a87a4777ac3be981326d7cdf16fd6ccc533694e86d283768d5e7eae45eeeeba9460d4ae82824c740b094997544b89b2dbdcb1e013cca4da8829ea3259531cbfac5a81ba5e37336bbc57f814422739e860d2aece626a9243d87d9a56a48ed5cd1a8289a1d929a95f95afd79ead636c3ef0b05cbfd2db9464d29ba514eab17872791afe97fb8d5feed46cae750fba33ff7b363d0163dc1e9537c9e8b6e1bb58e55bcef04669ba8c8255f308fe4fdd0ade924dbe83f40002fd0de5f87ad57225e47882196051c9043e9d3377e2d90b7264eeea61d1f0f65c474418ed6a1bbf742093c9a5b46f520f91816d65bfdb06c4dff09394ac103d3d2158188a6fc26dd991896fb8f601fbb2f69188f08a783fc661bb5772a846c220a9ceaddb4d4816119717ec2db32d7d03685979009ce08915570d4936e2e50bcbd66892f432f46c8f013b31de225fc5bf8dc142e593d5b3fceececb386e91eb7cc6756c3732ac6b5e3b06f7402fbb4c79682bbe77952bda4a58b31d4cce5139225eaac01e4b77737a596f09ce65edbd0c15e37686d92c77287c3c7c63b1a6a1005c10b67bb46b57709babeca68e8be78f7b3e4b56827a740b692601ee5983e50a66705df1c5229376509b309289fa20cb1c08ac2de6f80e156802f89784627969bc96102a9ba11b1eb57da70c6b7f79035f3e9527bdfc604c103570a07d46921823df58a235957c4d725492475f8d04fd7ef555d700a97ac641a2d4e64e30acb79c8e0502c304f576133904069ed5b6126862d8b22f37701a3ee457ac5d049f45a9f484a319f9f923b8752e267fe1ba5710e9d8ee680cb4055ad76d3e9a51a404a69b32421d65b3ef4fb72848716d33c38efede7a80cb1f61eca69d945642617df0560fb8b58b40d3ebe91a837f955873067430a42b9fcb46e88e71249164fd9d28f1c605295d6624e7c40e58a191cb4dbb5fdca8217f398aefcddb4fbbe67b266a7726cd8fa547f39254872471719fb97e4d3ace6bfee2f0db378ffa999148218ef3bbbd5e53f6fc5032707f98628af49487c5255cf7e14f80a68f1a0a11ae33e5d2b7a31c392d24a669d6196a6b5032953fe9360f369dbcdf1a6ac7ffb0e96d23bbe008116fedf2f2f4c1588c67eb80abaa249dd03c75648641a56baab330fd29060da77903554018078c034ad116634350050c8ff56f4b454089dbb4173042c07bba7b84dd1f3b9b7c65acbb4c91f240515a662152a230d22825fc85e15dc23d934c10a33b98353a9e6b8b1796c5b5c397e66f7cd1253855ecfb8669063c8ffd8647417e130b19d990cb04782f8e8c58f6e6959dac8b4468e202f3a8d226fc11ebaebcbebbce88310e65018a78be7af2952700575beddb76bbb38c3760a27ded98cd15e9f313536856140996d88fbd79b33eae00bc3e80433e67f7c0442826e0404d1f7f27ae8b5d73e83a488888451104bf036352cafbdc0a78d7656191a8221617a2a33538bc6bc2137967ae0ad68de2df9e1d08d05989d8e979b444bd3a7f70b27bc0b816f415c833d89c9f1c1a3b9e0d3d512c7e9ef80eabba2a56b4a69d023b84cd1b0efdd5ed01dc394fdb000834c10a41cb1474831687099e00ded4ef2535d136c984744a6df4fb1ccbf263576af771b072f9bf14f6c73c7a328db68d4b195fc78fa5a5ba676c2fdda422250c1cfa59801abaadde2e465809b38abe05cbb4fdc0121ff77ad6f6707a98aed66733c25f0cdc782580a9849457e3403eb5c46c7f638fc9897169841a9751656b3a02b07fa7108f415fbf6cbe8b329be16e0a21a02b451af3f01a7225abf8bbd0656e2b4f107989df4cccdfa34b927de53bbea8acec29597c3c8e20bf3d22909e066b8b83c9328f0f851aeb4afdf631e951e57871cec66c1aa18f3d3e2eb6acab550f7cd6ff21268a248fca4155f4e52e3286cef81b23b82d6d64cd893b065df85a1c0ab1dde329689a6ab0ac5ea6a57a5d678cc4b02a03ebf46ef78805a0dcc61191cc06eaf30c5d6e4cc1753b16e7b8f3c40c7416de1718b83d8b6faea1d784a08b6383e159f6a3fceacfeb47339ef37d69311bcc7edb909bf1e7058f0303c6ffcbd58d1d73a8fc1e47bf549c608546e285c3f319be0cc92c98710f738d21d8fb4b5bd58abf2f1ce131ecbf74d4e6c733ac283b6ef36c986f84ad37da3e7ed682ad28cab574e6241f5d5d8f8800118cefb5d2a1473daea37491efa8ceb5aa549945e8f26e57b38ca5a63419c41278c77139962b48673f425a507c6c214c615ae61a327105c6eb26037cb2b50d63367c2b24e356f0772ffd00347df03b22fd571c927b9205079089b7aa27c3296413a62e11d8186db51fbd695c955709efd231cb2063f9dc8429e33d3c5eb7fcf1773a5e0809667ebb69bb90614731c2700782097a771a7e1141f2429cc2b71282210824268f85c0661984156e90e79f8519e7855d457c118413bbae48f51fe0b1547f2c7a712af9f7e90f99dbdba0a56b738ee5755dd5dd73655578287c0de671393c3115f262d655bfbc93c77029394714918ca9fee7ee0ec42de4d715acb7b00329a574aeabc380f405c4c59175a3b4bcdde3f1bcf0af9e6297100fbfd46813b42fcde0d493e620db1cb4df1baeda4192706c4659484cb9c0fdd5ae899f5ff3a3ad4ce42d06125a9bfd865c76d2027a04a5531b7d368816a32860d0228a3ec5d642046f86e14214c861b4b1199061f594c959af976ad0adf87b337225143723285512a6b2cbb3843d09c3081de111074e7218ea3771ac04ae4eb7e874be7db3289224783739a90960366b2876629e055eefabb7957f00fe04597aa8296e9eb22921b3d845fd9ee9a3947904fcf01ee695a5ac50140ec8532305376952103443e881463b60f62b431ab1d8f1c173463a2c8365d21574cc5b8024d8e609fea9212b7205ac1df848fd8f66854aa8590ac6d513757360dea8759302917cf36682e1ae94a4038175214242a51de6ba859bdce56a6d2bbd08a9021da944c9f61d10f0af91bf5b298a96c625b8713275b3b6e9a8daefac58d9e2b90aa9e8ba8f6ce8264a5a6bd96d5a691ef0a3162c6a24066a7ebcf7597f04d34279faffd1c2672123479ad3d23a87678846c8df58b2e277ed8cd227602e388cd76e21f88206d87863719f88a9ae68f5701f1007ce219d738d732790a742bfc242baf44f9e033ae6c0dbf2440d7e88bf2cb869252eb8ea005df067ad1d14b68b9913d4869369d649b1c37d12fb8127e8e431dab7f816beccfbd61d559820a294bb346fdb25f03c00b70cb1de416330c38020a3124f835452d4d3f59163e86936d4cfc23436da7fc560d3bafbe56efaea9fd283e4182322994b43503fd28ac171b357b0f882ea0d33f0c06b85329969310567f09e9ded621ef2a76a43940e866a0a3afea8ce3ab8fce3a109a1fb82224e017243fc24233514813d56d257edc3fe44be7cc9c69812c1f0548759d9ca307d246ab0ddda487e1c22fb5787d8aa6fe5bfbdaef529b8af20c5a4f5e587c5010ef3a5799d94ebdaca8748857d33631fe962d21c50c07ffef3235664e1b56af47e5c8636a057e5dd9753344fb56aafc6ab66dc72e1eb48e0395674ffd9160125132474a1603cea76f8c5124f5de7e895cd39fa284cc6b559b6d3752eedee30472b0ff78a3005b1e1252a805c47c71e511d0c33f6d0a708e9d7238ba318d501d1e1269548b5ff8f939a36a1e29f6a387379a8ee92d0a83e34956380f2431a2467dd00ccedebf3cc42d61040bb0e5c2dae5553d0bffa9b95d0d8a276616bf957acb8e3b1132e3681b8e1c51b0e788bfba359a7a086d0f2c83bc5d2ce8b19e2ea213a87248b70bb898e5dedd392b59f1d77692bdda8a5ad95466147080f3200a6fc0d660a92b71fdc680ce20e814b4dd7be6d275172992dd2fa97263454e87034a1c7d62c24c818e189c512b9a8d9e535aaee8281b79487028773066fd01a1b702afcaf908fb7740fe6745a214f9da2f75df6bb26219eb317b4ae9186e10552a0cdb9ec18a891aae1904d3bd956b4188ea2649ce127e0676d5a04f4d631a7e218bfddfb30f5f587ca0d24d395dd3faefa8aacbcaa93d705a12d089547408d0f08170eff4e103ff6f8bfd5880b11cfc916dc9bbc87f39424edc5d3970538baefb4491a525374ff72c27fcf089046a1ac60b69f826a0442e0fed3a37736c8d7ab5c9758a030bb85357f2e2cb7eaf5344cb2cb54d8a278855bfa588730e6fb46b48fa566d5a81f7164dd61e0927503251e1a2a40b601a1379ceef46d65a43d4f0edeb06aafd93683fd297de1ab0c267803b028170541442a3f5b1342e1404d176e687e4fdd803f1f51b77a1ec1d5eb11317e6defaf2ec0d234986494855bb824970af4d79027ba02d51e98a81537e64e370d07cdc9a26dd81dd54d26c546cd20e25dcb4ed578b0e96e875f04d57e833cf13a9a42d656e117b4f6e640a0652c3bc113f9a4b592e77956e925ae41ffb319cdb2f994d7c48d9405394121d635ec9d02b833f57d644c63fef4d5def7d7ab767fcd82054c5895ce789ca7c8d719eeab8774f1153655ace567cdceb3f727e2157b3a23074b58c342c1c14916e3e85b2f65abef4423b9dca2c1a6d4dd95c8061a26f385f8260e8715b507da60e598daa9a9cc48fcb11cd768f984846273779efbb3a1d44e65be17a2312529c4f42782553f7de2425f91906a570938ab72fec8f8967963bff592a1d55271c9c233e409fc1615de71ade1a975018f9a9a430581b50ddefdc3a766c7888f430a61c4d849391c980c12c38aaf8ce1b1f669adcf8d4362f50100d073e7c227ccc0c5f6c9248162788beb92ce9283c1b5ad5ed79ed755101b5a4b08356c36924d548095c16f8f6f8130cbc63efa01f01c6317dd4f80967b9264c1e239f26012c69a5fb027d1f1bfe8947840fb5b6a7bba0f9f0a97c9354890dfa3bcf8e2ec5b58ec7b3671a76ed665158f08d030e179d6297378440ca8bc745059d713e285ae86b84515bae9528021c4738b8f5777e9026dbca838ee00d27279a0f923e27ebcdba89d64239c5a0119a541fee2ffe1ed0fcc8a1cc51111f6c05845f1a604614c4f3d4ef11b9521ad205df3aed2dd80fceccc57a81950497376eb0598988c2cda374cc67157093aef1357c1294fe71ac3145f8243fd09e52afe958d17443255558efeebe434e01cfb66fe0df47889b445f6cdc985d8cafbed468aaab63d4172e5f7c3b3008cfda12cf05cad1c4478558fdb708f03022483e17857bd50697bd9fb553086a64d8bf9f22101977bcf9be77d208de49753fe958efad76b2ec36d281a97dafc33a0f5a77abdea9b1cd76953e3abb6920a1ea769d123b9d8fd01af79ac30e1cbb3133974030d054f787ee03824ca43b32555fe11fcbb8355c1c50de6b66e1c4f06f8f6b30ca37030d3130a5a7e8bbb764ae2c849d3d019e96e8b62d9f80f0ca712c20d0e071256d702ce45e4fd9b57ad1071ef69fb5bfe44f069410d8c9fabe3a0f7b5d05261b87e937fbeb05700e0d2ec0a0b7b7b15d3858e85c35e52cffe1ae2583b5876c53a60039b03f89fea638d95725243a5ae0aa4557dd9021cf687ca95587c191a0c6378f921eb3263b0282d4d5d4e97f66c1fb2268419fe5e8d5ed3b2db8745b072fc19a2c4b288e3567bc3d87697e9d1938051326c7a96c030e3f4c35e82423b435c6a93585c8aaa60a16a4387804ff8f1e1e5bfa76307c4852865b66894e943fbbb48531751fd5ecff1aa7e2276f5f20f8b4b9a21b6191119ea9630eee38c7a499e4865b505f4c942ddf3bdc5e26c7b7ab7fb67033039f07900a263b586ae862f1725131f68a798f47633804b6b6b54f99278c1352f1d39a6d215d60eb88e759cd0507f08feb8b26346d1b50148c8c43293d562bd6d683e406225c5a095e75f168a2b4a3554fa11759e6c08928ac833f8ff2a7c3c3322b07279cf241520e057e828607aaf6a7f84ad27b2aa508172510dc608ce3c10c5927d26e0e39bd2f60643aea8d3bb3df0e8638323c8cc359b0b007802f5ddd8fd90f00bd2a6351c1f8e3247097779bf1112352d9032ad8c3e92fb080d7b4adab366b10cb680a4ec6630889b121ea2e359663c8bebe0087539d697f371a3bf532cada8f4a9d13137fa14cd58e9bc1af09290374cb75a77654a3f4d02ba3c9f036c0199e8b971fb7a8f732fdab761d2176fbea3333f9111865df8f4c40c5e5c2a1c5d358be2d631adcb901feedf34169e1c43fcd0eb94c4b4dfd54808b2d5c1d4daa3c8351db4d2d5ff79214c115667729b9bf530f7975ef77342ce408a68fdab08f896b64ee3a06a2aa0a491481db24f0e91796b523fba04c998399fa024a7b1b60a88b373e6b75ccd0aea859848d806e685bac004560cafd78d0704801e531374a792b4b0272f54ef5a57a0fb9f41d7d680a5d9777af0beacb12602b2dd45965ac4e32513d44e4edc57acd4fb61efe8d2349161128cc508a2ea2a06d9d80d86e2b06d847811714a3829cf5e0f1490950b5f6371d494f3be4cf4a4fbef81d440665e01a3f846376651e9db94623dfe4a06fa32a927e64b4661fc4506baadb7d91add574859c5dac05ab5d5224d0f72da9d3fc92ccbdfc95594c1ae432844ed6fa80d5b558ba18bf54bf57c560ba6a404628be802486d1de9360849eff5388caa17e8662a9474c8caeec3d51e6c310ddde73438d9e1498def7654fd4f3ac3a3458bb84bc0a4e0d0e663577674f73a1bbcd5b4961e01309f7b6c3146daa64fd8c522038ba3582696cd195dad15b7268e032780bf4a997037b4efc961ae4e721bc8a51dc15da693564fc301a507ec940d595cd6d674b09b47eb9e8e25b480fad23e83c2630823034ae37918608e063a9a1c37255411c24267592a5157f4d8d374aa6847a1faff165e9fc06a467bad4cfab74657c2f0ac4c3864610c9b548aaa30e9417d890999572ffa90786473b0ae3b52ce5d41f07f7b96cf07e10b4d6d23133fb4ef7e9804a551ba1442c2523ae0180d2b98d89ba374536cc7d76e5ad2e957c058a637dfc1903b407ab17004c5cccdd9e4b48a49fff48b737b447ff3daa22620ffce209820a06a2df477e6c330719959e070be63a9d6ea81f2dcb05830796b5d28e78bcb2302c9ac761ac08ef9fafd9b8e21b36b9bc668bb5ca64a58e000ae82bb2f660c26a01efa6cbedb73742775d587ff7f891c55bd9794eef4f86fee3b81821b5198dcc166c3db01665d0c70c1b4d6e0a9b526679fa0bad5ef1c28ab530a3a471c33d6d0ea9fed5e921c79a1d4c9b7b7cb7415c0b86ee7dcc6d774ee6065af3e3f7f8a9485e5edb06b9129823df378b543ea29a6cf26709586aa3379fadaa2dc2ca7d7619be844540eac887a5e6f75aae179cde3bbf29ab891c28230a33b27eb984532a6c621169b1aa74866431c92472923f12cc1e6f12d8cbe25c0a5b99ed6c0d9420375a2df4ae060c43521b5800adac3b2a554cbb3ae1d6b18c2bf0b250a43e4e43252a33cbba65b2046430dcfeb7a5fea8f743d43d08712970c59cd8cea984854647dcf810c66733a4ddde02d8bc9daf5eacd7284a833376626e957e267283a873251de42435fce7a3e45d1402f3ccaeb725413a552737146fd6b4a2228ca22f5c6376e71d23c8c942e0d11871cb783ab40d4883388c71b276127d485dc9b0dd965f61151501c6b43327c45c5b9bef5cd4a739ad39fd3f3de42b76af40eba065192099bd30f08209f6a1f6bc280bce4de167e1006f2b723384e17ff83fd215bb9846266e2ecc5ce372acbe97de6110b826cd0adcc295d3c7a72c0b13e3110d5553535fcc53d0c835ff7a7e26d170cee5b5415c2338408800b3e5aa498d9537cc990ab67e726ee9ad0d52cb0f93cea434efd771fbc3e1c6623f56062b562fee1449435578f3d80d27136f6bef97fbcc1049161df9414d89e9b09f99a179ef9b08271702079b891dad8704485deb728c9960cae01e31d64fa4105b940414c3c761082a74a52ae55c587c526845ba6660f8eecc118d81c882dcd6e85ad8aaa67d4cc505263d8a01ecb8427eecdbe4b6c7edd2930a99e944b53edbc910118385121e691e25f92f5f868aa095b34a3387ea642b55a623c034a2dc93e1f4d07eefa908815c2553ffb5e548068b6c2089d1c5730e6ae7dfd336762accd470f6e0c47231150636810873345714f58d6ce8254d40c86bfb5ec4d477b6c8e9d2017be1b050d9678596d2209651e5a13861237c417ac5f66be73b9bbc00401217e61a0b64aebf6bf3b4d67526abfd7ed542589998489b6b048b2cafd4944f3979fdf3e97435e61663048bbc6d061d18e99c3d4214ac4716a24bb483a90df75b0be8517ce2cc5817a7669de7cc3ff484fb19a114f92b344d8601e4e30afaccffbd040354b498162a11f376d1aceca251f50d834598a8f950c52a4a3f718e677c04bfcb76fa0c3764b07f1f9a855db1c4a939b6fc36cce5bd1ffebb1a271b9dd99318e29e30ab457377807c7d1713edb48dfdbb500896d6e3c2dab42d1667902b964bb37691cdd46d7ac731b0aca5e0888ae30b9247cbb3801f740c928948c6338dc520869e5dd40d8d8f2dd06d654e22eb37fd320f1e4ca3d5d4e8fc3b2333581d66975e278a614421ec2e375bc9bcfe5db609d6c63e497de1ca8b79379cb3e9727e7d318ce11755bde04468db50576fa892359a61b83865625646657c5bf73d6d06b1ffd72e513fa760de49e2ad5b9789fcfbf78c2f7d88ce079279498b5691bf43809cb52425530502b45de2bcd41375ec44215ae56031d3260f5db24a04d4a5b16c00dbb29406f5419dd5cdcc124af54e6cecb4d942a200bbcf10b6927a0249e07fe5936a7d2e92a1a66cfbb17d902ee19731e11ed2bb18c1aa00134aafbf20dfde2d0b10fa0172fd60cb9ed2e2e295da80235a069a0f29c586701cd2cf12a3601f54ddcbdd21ab2712fc3e01930f19104486ec90fdc559b501dba91cd4ba5093fca5446224012914e893fa8ce2c1710338fdb75ea06603dcc52af174b9c4483c14d6942f364c29d422faab5100d2d0ce1594d41cdc0c751397cdd88d593df6f80d88cc6e4a2a4ec6a4a23e5f80dc497887b83cbec8098ef5a509488d9db0ce0935f370cf9c61ffdd106f2f04ac374700e8a87bd38baaf384857e80be1b37620bca2731d48c2ad520b42daacfc127c4bf1c7feed0d84959fe4a5aa82f9033689b82a5b33bf1035dcb05e61c1263b2f5db3a7318a7943510fe5148bced8774928f93b1ee14a354bc155ff2836f55337d8bebba12b6733ea8d573752afd06919052efdc348ce05ccc98f999fc97900f5a0a78a5bcfc84fd6e195eab908fad6319f39f0d86b50a339438e3ee19ed9c5507cac3e7ba7e177c2c7432f47bdf5da9ade9154c478dd108c0b8e4bdf8bf63d677087c30517782757b8e16bf80d506967a726515889c0c56454402d775dc1f37fdc17336c0f6ace60bff231867a1e4370d75cc0f79135d32a575c59bdd6615fa29680c636f6418d4423d7fdc9536a7dbc658384bdeddda3a06d9e587f5e3a08949e1b6eb7e63f162da415c9c4a87017955a4dffa1193e835486f9cb28c80d655d1a1ba0ab804c350b64924b633494efa940e3a675f47fe4a2f85676fe39fd3c8b5e36dc0dbdc7016d37508789754ca4a56cc86c72221ef463f94beb56c754b2738f89eaaa4d10d84b0b1e29c078672ebe6ba89a8f605d135a51affac369ea7eab090f5d6a419ad325de3581d8fb3641b5766d98017c8872fa006ffe11c9344897de39c1b422e19b0cabb858a528eb9f9c22273a9367f182f603af80ab47079d71587a318a1c096de8c3648171a4e030b99e08c742d22c7275170c80077c480f19212e7c5a20d8484155b52c661b11a635ac30b29550df231c2fbe1061dd8d4fb7ee4664c2ebbad1b544026d26417ded3e8e995bb3416b62b6dfdc7ea58fb1cecaf657408263b832c970447eb812359a88db1959c6d58c754ddf83287a103db2695e715c08ac2f1b185cc2863ca358f2c7e09571c5a2b1e5764daecc7d430ddc99c2a8a18c8035f9cb5fc80b9e8e81a3a65e81709f2283121be782fed3de7d1d55b44dc309906985737859850089657862d94a2046910a652d8e3f4caa6828d648f19aa8c8f67cd0a554b91f82f54dc0cc23e154154d19b73e7d34e7350d477b990f04ae24bab20c45c03ef201a4837dfb3286d8243800b23558aa21b7fca8c897c950aa9850e15d15e1b11dae2b034bef0f8db8e4ba90c17cd948997768fdf39e46b62343979d101f8283a2c3c175f6840e02a4ef4feba6960272700cd9569727e92ded5c9a5efbe58bc4abde9e68be0ace39ce6f146bc602a3bd85bfa96cc1ec3825fd66d03e8ae3ecd494c34bf42d739b3e792debfb972d6786667d20de54f7c3aac0c902e161ae3940e478750b47b7b16f250cdd37d1257c8fa05dbdc9dcde8ddc86c749bce1d7109f84276ef1dae5153bb33da2db351c5d0be9b8c65e985a5b43526f8051bfd5da937ef271f3c1237bf3bebda600960bf82d79fe56fed7798b51c475da7077af6bd4b0c46bb0ff101e8c6c4ddc3994305232ee14253e3d8c0c315d22e2385e79075fd1e90851e8f4f682f0be5857f0b70ef303b711f675f32c679cb06543cbe9bf2bebca09fd62818472131b176ff4585ac4952c7192a77b5faacda9f5858df380e9991d8c2a2781dc609ccb9038e27902e3082faa46d57d766415baf3b565583824e9aca279fb1230e4cc928e83a248dd97ce975810aee0cd4e6d4251ac41c0406c33c713e53d3018e212b9c19872b94d458e979f11233440dab28d3ffde1943c8f03e26b9f2b21de105b101ebd850e41b6e8ee154f6d837707519e44c544f1ba3f51cd1608514b5597b6ad9caba460f271ce10f3762f3dcfcfe6e0cd96d644380b3e4b5f3391f41a3e35e377e17692eb53f71f64c7a9cbb6569198a3efa19b645a8d17820423aa17d10fe84540c7001691a4212228abee932ea31e8ca2195edcf8e915c24aeaeaa4228274d1c6e01f5b6e85d4c906b5da9caac33c9dbb2e68dc089d136b2065fbbb2abda16c1916d1d1d7747879e652cc696801b7def36583d3a4c8a1de85cac0c57a28a0c0c5c28d5b90a3b95918b2216da6e9aafad5bcf4046d82b503ef86a0e6c7669201c0729cb5dd4e70c59701377ccbb9e208f1f4d0b129eed52be3846e8c3680cee84fe6d9775590c762c5fefbb3533a590a38586223afdee56c75cd043b663560bdb5b3c91dd6636f8ec643864d594c0cecd1944e6595d90dac5cfacc92261290b471c72f24490970fe1e547627e80c34c20286271068fcd83db0db4f7960d1978eb412f31582de9ddc3ba6a5f13e09d8f567b198283636e956a5eb44f03369fdf54ec629c859a975b1d0d73420304963945066abceaa67e468cf491e22c15334ce7f82acd05180e9081255bc7b781ad36f1bfaf575a7192fb49a02a5b4f3bae5c74d5083edcf444fd13327edd77cccef5edcfcb68f484bdb67a2d3f2f2e0058471fbe52e82861958c9cea4660f278045fbdbab0dcc6e497a6196129bd2b0bdf64ffe42dc1bb6968daf02211a27e31d9c614df18e0413f99979cf8ba1e819334e160da306a48ef1fc2d340c4d00f84c9551d57bc5a00d6d0ebfff55437bbc2ea46a7a15872a5ae6457abe3b9c340007ad36a8428e71fa00074b16b1cab82419a6ca076736c9303fca639b8d5b2d6c3513f7eceb244d2cc2029ba0fcbb083f0b4d259b85136bf9123c588642317911cb81b2b17c27b36e0b936f65d4c8e4146818c3db05dcc6b2b692182b7eb73bb772beaf50d444667c97c5fbdea7ea99e7a5ea5147a18ad3cde3ada00920604a16fbaaa60e47f687885bf1c487946e1a4ea7eba210b50e2518d00d86d4bc57d4e16cad54d12b664f82b2950e4d3126134c4a6adfea524958a0ccf1f9bcceb4f28e8916160ed298e654f75083c86e50cd57b6d5b58bc6313371c3b5ceefa28f25d8a57a2c6c86172652bc00b8138433c481eb77f810713fec59d36d2cf354636f4f921248ae4c808d0784458c30bd0c2b3c67498337d1c601caba617da2e0337e7728129d557fd774b3650ec786c5da1f8bb3d90dd050f11a0db7dd517692c12efadd957b8f6fb95fd2c6f83de9d9bf8aa547d32c39e1386eb8b4ddaf64405f2df0cd900e130327ddcbf7d97d3ee40feb3352027210d0a5a6c66c94b4f19623ef042a5a4009ff7bc5c141a02f67ed8901573e802548436d2d8700b757a2975d07be84af3607b05ab12303b403adcb1e3f5d17045d999068c3b55ba00dbe218a22ecfd3b8d62b13b1ef59aa9bd780676e3a19d961ffdc52c4ff6f0769f9eaad30b1de704a736570312678fa03059d862d53fead656a744a74d269ca44ba94126203bb227ca88a2c87c081fe79d9144578ff841a1e1fca65d119200703af8363be80d8dbf48d4d016605bad7254b1bae31b205be998a7966d3b4f0e274740ce4545f0df9230ad44c445247ce62c23bbd4cc8f3768401ad5fd7b2f7a5736c2f8fc7e2a5c6474c94da87df7e54606f44f4d911808bb2dd141d55508e59f6177e23c9b77c38109f14118a0eedf2ae7a19c918f69d5574b37b0f5e8eec19d39a2f1fdeb286c1985191413a3cd0fa88bcafe44b3be5508012131d68f514f75e4ebd474cc7b7d44c4d118556e3c19f25d86c5b9aff080024a41b174fb16375fbe44d90f66af2c21cf6272e4de1bf142a76a99ed8cf2521b36765431109c8acb15a31ab3969f56ec3c05d830ee9206217b8649c6c72def4cc6a6d689594b594fef3c741dcd5c249ee2f268061296c9762e1d7a32eb5e5765ac89a2b94f267eb61ef71123035fd1090e87b524bdefbf40480b3d0aa19f6a9cf23cc11bf985fc0f07dab817da51a31565c35428dca06d1787cf45dd18c9cb077700e07dff6165178ba9f3b5502ced5b93465577adb2eb3b8596df2a4f174130dfa716099492c249cd38e5bec66a674b3e3307a2e4fe72467fa46703e426a0b7909c216000275db96627754bb05ea3b7a5e9b78763d3a85abe9a7bd6665b97f3f5f735823b3565a849ab179b7dfc1f3c1e0ffbb3cea03957ff6fc5a660d037d24376a1206e3ef89c7de9a978b86460de93dbac62289fbff2c23c4c0c3232147cec6b5529290e3305f6baa3a3fae8012b440f98d46291f490449c6b6eb9c581d04d7e611071ae4021dd0abbad612c9d6438a46379466e3e7eea1ce895e8b9448449f996f75a8cae73c2719f0c7e5ea775f99fe9b093b4f6799cfdfa5a70c757227f7a06144cf4046b27852089ef0c11c809a42319fefb6ea6446f9c6db1e01b9fd87953d5563999e9e3ee1314ad6fba8356d391d9c0112f8ba616b3d2cd740a605ce77287ab017825294efa296d56d954be2cb7b047333dcb512f75202a70dbc6be03816b274b54dee021093678a64cf09ea40cdd7b5ac76aaf2755f11d3a5e99c092715912acf652122ded0dede612bb0ada574cd00a2a97981b4d2b45c9ba43d078f309fc33e55baa8f65d41a4b8cc8586eab3c10b10bd4cde6d31923b28bc84aa0462445c3b71b8267db80541849985a9d71c312b20e30a4de125fc5878a91f7657657d2411c44197e214498d7ab36712785d4f2a34fbcf796674d066857d055eba22ba1139f522da6b98cf793f405e98001f83c5a71356d03bf630f0c9a9b6b7f01d8edec2ca8a8d94bfc7542dcdd4034e87b17448bde3ddb642e38b76d279dd7b20cb657cc4140b654041f30f5fdb895f5aa6644dcd79180ee3a346a9af12fd78313335e497f093694ef614e6b13d8885ec3a00af1667f72ab1f5e6c3e1bdc1016c413f5d7f226f881d5241fd670bbad1eb7785f0c534d7eb7a1f830d1da1403c3ed4d721008fd3f10b21caba99553ab9b52eba571b550fc098cbed0a66f112aa4a3fce327acb10bd46e5b4e00683d2996fdc4d24bc5abfbd3e477fd6dbe35d8907fdbb77be2c337c8fc6a90a8020734732e0c068a1242c0e196810d8c7d8c6fd43e36c0741c7c12afebcc451537d17721640056e54c68d6c6a7fb3dc659ca08d230031d5c251f7272007cd5b9825d5bf7eb6006a36a72d0e9d942fd6cd821f7b620fe77ef55759c2a019fefd8bd9640f2083c61b40761dfaa7309c47c52cd8251b983d288249b020bb4bd908146a26389bab3be3de7fff8bfb17dfb30f45769955ea2cb69975ebfb90ff8a264d45196ba9bc0d4e81ddfb898c502212344378001c58a02422209341e6517de789186f30a24d4a930c061df327381ebc13dacac76dc6af5be94e7ff8bce23ea24af23cb2355cc824cd46dfd6aa41279c4717c193428d59f72febc13617ada14d3fc6ad480b70526ad0262eaf1f6097936db4ad2b0730a9672493c78ca5f82763ff5e9927565566786e1126630f8d8afaa3a22c195f014741b8dadab24b9ec6bd1e60846fc2b130d6080dfedd1ddbe36866e030dd175925b8b8d263488041e28e7f4b172cdbeef6d7d6570e212a319083ae4601716d51aba440c5b564c46583e18a2e0772d4ca4cea06c61852d96bf3593471302f6effe4f8ed8ce459a18a962e9ba09a96adc50f939297166aefa33cc47f3b8e18226f55f9d34485a42fc469e83fe86d99c143a3ad19b7083b3291a264755ca2a318b4bca02bf4de7e483900f6a5b275ef4913f6025b371fee932cba14875cb2d95fcb13a50486ee46a4dc9da8969ab22278a2fc01d6b0ba55156e7df2759646b96afcd91ac76c7fa637a080a2820f0889e6090a221221ed3fce7871033d058b05293ae48c37349bc9f29f2eae7ffd1533700c000f5750c652e6a348d28513a72b2c63e275bb90cc0956b33fccd3ebd4b67617a5792a9293888e11d393fa7d0f6549c9480144993d103850c274cac87a6c8b3e9232a43c99e4ba9904e0d599771a4d394ebde4b7ac3e83289043bb56c232cd1f5befde70abde01a9aa1086507e081b016ade265ccdae0ef914cce8a3aff50466698321a79497c2df45d9f61bd226466223fe4343b85f95d0417e20abb739f437954ae2ff64bee828bf364a49536a3a0ff33b3654e88e50124caaacc2cc06cbb46cfc3b1f59cb251f1a3308d227d1366045eaf7bf801779c7a85ca1e2e8a33d2bc703c7fa23c271a1d9b9a33aa78d6da72dba96c1fe5684eb8f1c88f79e6a7c8c8b4fe55f9e8eacdeec663f2a2091154dde0dd38a7a32fe12544dfcdeb642ea57903c038434fc596b1d4e874be92f471560a706c9d133a26c322a62935fbd1be2491a1a46158975cc01ed344fa1663e5afaa23bedbda6c938646c9f2c1b4d078f57e405a4582c6475f8d5235270591dbee179e81be459420f5dbb7a0175c651e6b0e3586ddbab7f3415055fba8cd673529e900de23806b72bd68f5545af102b13b529f8b01ea58417fb9fdff1ec09115af31e3e30d1948af38256026ecc738999baa002a9dbbfa9b11ecd358dd383715884b4782e8f83057293149a27f1aba194c798a227aa22d1d7c971c65390325dea3b82f59fae8d9042b9168edf33ab6745fde60b02537242c28b911f65edab01297c6662cd39ea4612eef06ae777a0496056cc6693a4fd74abd6575a66b2944e129b2373f54e75d8de807ab6bcbe43803abcdbf3bab3c1c1b54a0c6a5565890f8765ae31a931a2958433b7bc1208cb0c1d7f50505efad08159a8e5c61059ea1636af54b0a3fb05b669dd62acfa89ebe930443c13c140305f9631b765f6d19d529344aea3b18787400b77fd0193b247e0cdc9b26ca7544d0a68c2281817b9121019a7cecc0c0b8ca787d1b4edb8b0ed7c1942b27d742f7b1a6b6613668c9dc706c5b4ff83b39eb2c4c0f9c8d2ed8b75ff0836cf0cece4ad37d1b2581243ac3d6ebcb42f2a7a0a8ae465945a007395943cc36404128736f3a4714a6aacd5bd3e1b1b95f8fd57ad475c2eff936991eec5fe8963d5761fbd29a699c1181a0ba72e6bd065f51bd3049e241f967bfd9227928db033aeb6de61543d9f1b99e816006a3634b3c1b137e9832afbd4b5369b71cbadb1b6cb1f54155b0092389c038161dd1435572fb10538f1927acd17c30c084667e742c6eb2858caf8f47c0baedb133f4e152fb640226529cf409bbcc5b4ed4b3e7e859ebe67a60d5c0721591109ea97627de3d7aaf34fdaead656769750c221aef3c48621b6182689854c627b28ef2c0bdf6086edea3b61799876275e468f4ef039a91ccee8f77d0071536673e594761c36995a714899c7bc596a0ec31fab0cd5e55c5c6d9756e72a4b3a4d140892180c3a13245a0b932d708382d2572ee33066ce609165c1bab22c140b8203684fa26d81ccdca43f1e33ee811df7a1049994b810f601b37d3ead9b76da28cdb871a36af253d2fde28ad701aafd04ee4c8aa555b65c5b5dd10b95c62d22ccfd8fe729618b452394401677af2dab2860c32cb4245e7a27009a6a31d82d2568799597c5387e4a0e689854e86ea16e038f674dc151d39d15e4cfb00e6c541638375dc39436a4c88f988cd8527906e5bee8e8ad3c277548f1156011140b0466b2c3c314054c27349c9df774bb919f4c28801af9597033cdcf687ad399f643985234ba3a886d96fb1fa22d5cf0011d925677a0810c2a1759dbf0d28e7b045078375ad860293d34f1c0140583e17577a8dfac7710b566f55d2ebd7a1238bb023e57c262d43f062cf19f0874d907f910aa03ee764b12f8ab519a5cbd5e0f960365363b89ebef70d4494c1d1d025026874b13386c4df68d5cb5ae0131d97c94854a93cffd1cdd00f0aae2ca9f0a688084540e45deae142c1bd21e71d5edaded28256a46a610df1e1d2978a03ab102732597bff1fbc8f74ca030f26781e1ddf8fa92029ed61ac93b35f639ba48ce829b2fee12fbaad096f8e3237b9609a8b6221093e8f227878a09255850d9bfd5fb50879920f8603927e7b866edde7ffd984974f5fd895601710c48cb933c98d69d0e2bd853e6f41daef26e3f2a61b3f801fe33f133cba4a88d44d29fe805d0e62cec1431dcbb05121d857ebfa9d1d5dcfcd1c2a8b3745b494863d7ab9a85bc499d72c561c09aecd19b85ffad458f0eb54982932bfc7649ea9d062099e6c59bac01fb7013a420439a56ab9dc4b05535a8934080b0d1c5bba6282f00eca90aea88c7621fe0e113da7000b1482a8f9c94459100451369e04580f95aaf80c627e60da86ab2dc9429a50e8aeb4b5b5462e6068c23c4c4e847319e0e3a593c2db84d7abfd494e13440715d8f4e4a5c7d4fb3e663dce2f506c775232271c843e7d65115792d803bcf835904fc732b9af4a4000c84a3f77923ab190bb44df5e3065390320d7d56e5efce45e976083a43ae111c795bc869cfbef954604a447bbd331560b7e47a2ee6d1eaca53e5c408b2908cc6c61d7103d48bc1b70df845e76a1e2b7592c7b5b934c54cc8e880b6eafa9cc9579d9fb4ac817ed32f95163ca329d64b5570a87cb48283faf5e8ece9eb13a02b8f7f56813b584d46cc9faf4e4d7e18c90c799b7328e5b663a73c25400cabae2a36c726e394aff79ad5e24f0a95833b6259c44944af7a6a301a48f61baf6853e276cc3330cdaaaaf8cf35866c8f4005730cd30ed439f9b5592d703b2b1d013e7c89deb1bfba8ced695103da094bf09c390478636d0ca3128fa9d4037a8e63109796cdb4e62eb1bc680ae0093eda054d95e49167ce601ce5a7976a18a2f4e6ad0d723b27f411d9ab4a502ad45038e54dbb2d61d21a240cfb63e9cdfefd70489d213585bc6dd201898cf28784367a7e4530f2e9436a52df34e9861f26f46ee21d67e7e1b9498211d9da698a5455780df225a01aeb7fd29dbeb6e4c51fa5f687c55bddc6b205de59336b7f107303f8cff3b4ed3fdc438fb60fa783f7f510ae45aeeaf525f72e7ac680285faa2c5155e5aec5a52004ef49e413e5dac26df7453f92a493510f3415bdbf146dc5fb1295aa1ce1e5dabd2f27c8c72afb47278a3c93cccc6a64ca5036a07f5b9eda646cbe8353872d810d123260012ab2e0d1f7bc154fb82da60fae516bd13c4015fc4395d3a9af2d0870160066db767978a6dcd9e0ef02d8b37a29d79788c52c65d4575761de91865e0781273d751eedb0aec9b092fe5f9130a4efaec9b47419f851678a4b56f809e4e883dd0166ecff56941211c753c663b47c19788a1b42679d803599d8aeefdb476733e27d906b1bb5b84eab5bb5a12d372708327f7e2e6195e7590d0e7c8bf548747ddbaff1f388db1b2e1b62cb743f9002f991993f4714e6b312436770467a591a9da9f9048114e6ba909a7a5e4013db8926d208c5e6a932554088f17bb48581a4e8157270960a5fe63470648101b6a2f8aceac49ef52a493c14c70e15822347fefd5d4ab5fedb61b4686df3cf586688d5fdea480a3cb5f4c1135f57e0894b49b5d0775ea3cb2158bd515ef1aa60f052acce57842063251c85345374eecaa0f2a728ad18a377f06520da65579b5eaa623ee33f91aa04a086ed0f75d8b86fc9a0e102a71ba5203fbf7da025153ba20801ab8ee75e81b72f673a0fb4a6ac181101ad526345dc1654525dd4cfdd203f4cd4b58c9276adf9f8be8e4d8e10f8f9335f5358d9ec495cb6140404ca04b5c8eda6ad09140c9d6cfc3f2760b21facfe3a64266d89ab9dec7bd3fac1e8a917786d8b396fee9332f6bc91b43653ed21ec7cffdb8fe74883307c8af630cdac0c19680cd40a0c9ac475840091581e89b91e02602830ae42e5faa30a3bce6a56a257b4771247266a12a5c140b50fee3e1b0ec04831b8865f7e86726be9c1b65e74c443561b3b150146fead7edc108a5915a4bd6c6c22e7f65c972fa2c0f3c59480dfe474085765bbb2288f30b66cd364e69ea1ccbaea2da44970e386af5d021a4e9024dfee09873b55ce75557159def0b3030cd2037a7141ba0303030203c6b4fe6bb367b955faf919279c1243298f56025fcff64ed17503fc26d06708df33697a8485489ae56b0147b23d9f1d60f838c0c71430cd9672f4e634495fd5979b76ed322d2eec91d3b3ee5f17ebcf339f389cf7e66fd8770a2915eac980511870c6f469a5ff3b19cb4523389a5814325f16b735bed495ce1bdd9378bc76a0365ca4caeba11a29f4dba4e888542e414195dee8a48f43fa598d2d26fdd99fec870a9aaf7ec97ec25ef9ff445b411cfc01d737021c1c5d6bf9d90b98e8238c546a39b6b2e1bd024e8e60086987fe287c1c031629ef429bbb0f1323ee32a871c9ffe129d7d500c1a6650d079fd82c1dc53e61a26cf07c9124ab5585296eb354077b53cddbe6a7951b4f3f63c337950b010dc8042941ab9feb911947116a56506892f8630b2fe3959fa6e65916b7be80303583ee712ad1956e5567f8b1e5156da6f184fa5cb3a1cd5f033a4a4c01d0ed390c4a2a2a858233203162fadfb400b1789ec8c5a9fb6fc3ece9d9f992ef4a5eac634491b02e13b4101db0e0b01ea44b087e839755328e3e90af22b46a53b440210f4538f1cc5dbb8fafd6c28edd616ebca1ab93e48a4113e574375f47fb5c8dfc27cf05d92a9fccc517d857d2e91e457b08b47fad8352f060d64945fdde2338445fadec4b62233a11b93496e994ae90786146757b5a1a1e04643c25461bbb9455579f63ea74ec6e567e57339a6193d739d282f0690365b74a20288d3c02f9433b70615d464e8d6a9e3a640e4235969a6eaf8be9ba2fb67735d0836412aa1dc0e436f5c23835d6552c0f5546684c449f9c52bbdec83b61caf4130507337e5064dd113f1756c7b2477f69f9f1658478f06de28d4808c6cba36577524f832e8dd1840823fc5e1b1ae757a32337941e99082bc1579fa9c39607d3e1636049d9cd5459658a0bbcc998e59cedecab947a201850c7921bee8b4090aecbf59f98a562b77b441bd69e9e5dd010706fbfd2d26d4386f13252c0a0954b1c3a7f9ed1be8b3ccb6e22b2201587acd967795fd939b368307046daf8a868c1c1d842827fdcb5caf80d42afe70f91d18defea164822dd2131e51f77a92c770f3b0b5c12aaa17e4d2c420425a014d39175c1e7cd898208f710dfbc064421dd1fa7ecc5033ccde3f6f164a9813b61c901d3d116bee9ea2e84a4ae4e03da921c54bff2ba4e2069319953527a41e67b62d496786e463352e04f1c9023e113fd5ddec66c25842df8a1c7311350d1ca07877d7537b6e075b818a771e780f2bde234570911b8a30559531101406b4f6d724a1bde778f0c03c9da9bfffa64aeec776697fa7983c4ead6a179e432b417c5704f626c19c05d8f1c91354e4f4b3d5d1bd18c09e9df26bf083b8beb63bf66f337021bf1caab185f6ec1245d360ef107d675931ed8a486b7142836aa0b92717464a9eb6d2148e48fb5660f1c47531dc9f6132cd900bb95ecbf07342e417e35b53776c9677cde3290fcbe4b2952af572688eec474fd77934363c177a21bf6f6dc5e187c55459ed3597aa6a81217fc186993beb5a5b067315a568cf8f1347aa1dd56e0b50073b7babff1639b57702b0b9e8798cce55877fd13594c028003cb950b21fd0b9408fc381ab18c864d2f0fd5b165882cdb9b9f9d48432b6d685d1a7d0b840eb768a95f31f3b2cb49b2b7e4aaa7e01fb717b41dd4aa5ea9e6232973f03eeca770ad998bf2f2aadd485aba21c60445a6d91f0f717371acf78671464b3ce36d26ab7ff92f499adbad79f57753b57f363452bc466dcfc3e9cfcfe50474dc325c5aa0e2d1029fee775da20fcc18762e9f9095fa40d9a4e7c5d1f7a559cc97567a08c231f3bf1b568f62688e9103103fe2846c59789353b8a924e91355e59f5e1a743001908ca3a9936be5f673c281b85cbe82ba3e6e2b2ca5e1c96e60230d819dcae6e2bb280b9c2585dff4b1e93c40aa5a8435b769c0f00c68c4f62ed0dd64f734c1cdf97c6b945ef47973850db122ebc52cecb9707c7db3039fc81f461dce0d8d7c63743d776ae6f816b7c8afc8a890f235b8de7b8d44c7ac57136a0714c226bc331bc3605457ec8b0e04bce26d89a16d0e5addbe004249aa97c3298cccf9693ac04cae1a50591b371385efc60f9ecba43391b7df8be731e3bf9f3638f1f6dce27521b11b5a0a0e47d6519f333dfb75b4fc03667376fcf394b9b602b0ee6e5b28e50d3866a3f96377866a19cd2d87fce78ee66cb0239b5b027572084720e395b7d97067bf807036ca00e7dab4b86afd7e8c16b74546090ade8f5f484e3c4e8ed58e6fe327a3ba01c4101dc1a8b6c03634f0d5c1df22f1f92601c448c32429d8feafcbc275f700015b96f7641654fa3ae7392cfddf10d99d100451527270b3a2512c52b7527e5ab60fcb23b3c4050f2a2ec612ec1f2da4148d34a10529ee8015f2d72e34049ea5a7c4650019d11c6197852912ce195ac4a61bbb5c57ea8693e543fb3f6f5524bb0c3c6cf53795dfb637051f9f4c78bd588bc9d49a24d59d44d3cef555c29c61448f12f3c82e920f366922549f9f0e3ef6c8ea2894123700d2f1f834eabda54e9fa62586ed55a4cc8e97d00bb5f7dc397dcee64f0620918176b51fce21b4d40d14e42fa68960dd5afdbe1f0f4d5751a8bc81419a2e0c53107bbf7c4bba883d4cab81eba503938b2dff97ab2c69b8bf7034096de4442125a7aa6766d280b3fc3fc5212c2dcca980aa02fa8ee5f41ed36e613a1793b416fafb2073ff404ff1b51fd0fd44be2e5ff128a20b2810fb8cf1022f8736ae3c20444ae59a0e511ab0b276117bc3c6e8f82ec6f98458485d8cf5390b90dd4e352181a70bbde404eea3aeb41b18144a5fdce2a65b73fe5133cc0ee6accdb6d5d430769ea0f853a8337a4ebf111b6232ea49e41030d0b0a340a26e1f69435d69cc17acd7b5be7be2256f6095915f5322318364e484fbaadcc22bde460ffe2fb18f095594519811170868d5b8cb07560638a85ddc93f3f426d9027a8e9f36ad8bec25a079fc147d9d449f77ca10d5b6608329044023be4983358e01893ffa263f37707a6cf746c781812909a4cae660047ffab134d45a3777d30670d14224448d7743cd0ec7f6feeef48370b86d03288aac7165e1e76913873064a7f9bbfbee2afe60f77633b2cc6bf3dd66b7458c39a6a6b02a297a5fb3b6a9c2635d19f5f8acb713bc8b5e1b3523fa33b52bafb3c6a03e3eb2137672c56848e4cd6a502844d0df12ad39b1532897e2b5e98e557cdc2b73d0532a4686d15c2a620a67feef4db4856ed77bae4db214fb081fce755e7dc54549927e8b8bff1f00fb60eabc33c2b66e24c1662b15fb94a92c78bdd19c0485ebda20b8624846770488c245218eb08bac50ebdf5b4f69ccc4bd11f63ca205e09a144ceb5293d1e87147899e92eb2cc9f8165002902b062070df2cc97080464706f61f9ffe247dab0cc16999826e0f360a61cf280be518f8b3d146203692ec0d5f84c0e38e9b6a18c2e95690d75c1865e91a26197baf8695cdfd168db1655e323eeafa62d6c809eb1bbb8d5872b98954ac1a1f57a5d56e0487870359a5749faa5275b84b6c4ca37352b7b3f4ebd6f408316dbae3173c4d867f94219041a631bbed4e04e1b51b4444d23d1c9f348caefe305b63670e7da582c581681c647b8f5b5e40c1145efb2fa6efea0eaa6bdb18bdfb66386257bac62e0887138184a0e6dba8558b7a8c27ed0dfe698631afbf0e987865c5a5cf6f7cea1a3a2917bf933ebde6ca47de511decd976b697f662a7838d4e6b952b46971219a265da2a1f4a92179063e3f5aca35e0c78bee580c24bfcf6813eae5c7e75fdb4d5e0ebd2bb6834993ed2e6a3f50d6e519cfc588afd07c614637145f41c6dee8a946dc39a2d3168366efa1bc585c6564f234227edec46c70e9719cc8616866dccf9693b924214f0c91b6e90111351d46b81c58878915523d1cf13feab8316dd5b0736232a33223ed0bc0dce25c394848c620d16c725758d626c110212262bae02fcc540b118b950ba5c7aa18c79212de848327e7e513ec9af45073d67dccf0400ca40c7a74d42d7e7812dd7d57dd5afaa697a7d12104f95eaab16db60ca8ab99870a978c2550b36befdf2a676cf65ce706c4e32899f9f10dfca36bd1810af9fdaaeb8f880a4aa206a1a17da1c166cce8ec1375826a358aa557a439edfaa8e85fd16b611a6f023e4fb34c8d1d9a3ebc9aafa6486785f5dded3a740408e23d23967f4ee16a967e82a63295d647e33a64233a07de78e84c94b05ee55f269c909452392305d3102aaf50caa92d4db2a6531e0e719fde4b532ff9aa90c998eaa5b8955cb622fdc992e71802817431341097cf6f74dbe0de1002432bb66b53ceef50203e7460e9b21cd6a5ffb0558bf70c8e04d4e8e5e524d807b41475e2e7cf281ae4c4f1840addb3caf9ad9e6d03a638ec548ad149da3ffcb20c30f2fec23ce81aa1f66b51a6c7ad5e8520e7b362866379f78000be58835e489c34658f103b5aad4b0b71716f135727579d9cec7c1398cb029ef951e76d8f4124c7158f8a32db66b75df2b1d80357a89320dea04ee88d984a2ca2035bfa21dc342ec4b016b540cb276377f61fc975086cadd77f9f70c9886fea933c59a3eb2cb66b011fe209b672b02e65b55fbce523a1fbf0fbbf63d185bf8989f8af7fdcea4b4a963b859026ec887f009d9df907e4d0110c27c621932a0e8e0fa5cc07ab963b7251451a14fffe9e82dedbc244b04f9839b1c7a0d18d765356444dca67b831160e7174b99e74583fe1093e56a6fa73ee19a85b29f501d62192cdc1a9868cd4c1763150c22994748a2ce4dc38159b8865a0d2ea1ed3e0fdad63132496a4ba932419231765396e1002dc690492adb51302037ee6289bfd22223095e71e6e56297e0ea5b8fe26a9a80c69802ccfdba6d0f8ccb50253f3e8ab0bc186264cc85e1616eb23d9d5ae33e7e0b2c563c94131c8993043c16e1d5555a078bcecaffd0c4176c24147e525b3f46a5dd5a5f968dc49be6a6ddcdacd5cc84c58a0a275c5b381bc5fe46ff3612e1dfe01cd573a065fc7dde1f21ee4017c3e4c5edb1824c3c5730c8ed02535c236d7a0ea1d228b834c9729a7726b4097610a9c3c1d0a736dbb676ff194c38b13a8272706abc7f396aee8acdbb5d8350c9ac182b800d315c5d4248e3c823ccebd2218bcf7ea344d8f09a96bb129b99d394c2ba86b7c2c408a01e37f98365503de7562f93b79280a9a23030e6122280715cb5765eda1f2838bbbba468a45cdbdb2b4c32e27a1389aa353b5f584ff675ebbade2d21f76525cdddf837acbc6fcb65609d8b5cc95277f665c644a71757ff3f80446ac6b1f480a9ba7e20c98a47515575f3e5356ebba0a0441c26ce6fc4273b3c02a2f43a3b9203b7fe1d505808dc5eb31c5479a38d1e02249a831d72283ad84fb34c28dddd006b6de251ce625a6aac971b94644349b1f562b2f95ff92c3adb006fbb04d4546b9e1742ed2b0044670117289e41ed9f3c18d088e4c6a5c6f39aa26fa5c17e655080c8ef336ea76ba58eaca29775bb06643f2c85341cb35f887040f0eac5f1885e0f3002d2fe6c112c9d5d7e791baf8db20b86f2b8ca2d8d491b86516e4b1a01d9c3900ccb07ef22a6b3232216bd206db3998ce4bdee885e5018d3181fe850ae8aaf03ec070a804907f18cd4f651192ec65e9f4f279b7bed90e59d589e15b21414d0899b07dd2c19bc67953264055cf5028fec194676097772036bc2303e95508ff26aef1c5acd05604f3464b6d937573b6525829422d275048437ad87226efe3dcb5a486fcd8667177a28c679fa56ad5e76d45dd36b903e6ec79e6606b692c4274bece674c591671b53fae5df073ec04cf7e5d93ea65210e97c5fa52468d7a526e47d5741fa26199cabecc7e9a5604e7b5dbd21e095e54c8ac17a058b42e5938f221aa066d52f0ffe3f92f314a2b7aff31d513fc864b2bdc654dc241eb9f74d988bcbaf157913655be7ffcf41cce75495960690f6cfad0cc6accbae261ffa76944e82bd30c66f2d1adec7ba0df341102fbd2d9a0724e0fcebf72b81e93fd3e213cca38a0b71336a57c58173eb6dade018ec56571b536462713a85d0a47d0d27e8d68464d817b058b6c53dc5fc9ab875ba77c26a7dd1d808d5c52ba4a72ccd52088d309e95484f170333835937291366cfd96fccd753c09492e717a9f99e5b72b6171d72f59c4b124faad132e22f67cdfe194e7fd34458426ebf6cf4c99ba1983b23c5c071d73c4257ed15d4e9c8e2667a04dd156b63030d706422a38dbe61aa58f5ee1b34ccbd057b3bafa4b56f32fbf8a288d1938a638b74954e6160d4c1b177eab3119a2d484ac1305ad5762f68b99080334a10997bce5cde8549deefa589b8838d71f1a2381ae3648b3e903334166e4b5afcb93b5a34631b95c0f1a5c965f17d1eb33ae7f7018e7c139b6964b0dc46c8d1a928fbf560252d9efa392977467c3561277dfd6b602987f73e22260ba456644a86d8312c735918a81990a3a93b3cf000dcd4ad074b82598fb7db1a89c915643befdbe161d06116132e94814779e7cd3a8f70bb6c367d929688b1d459ca3307d6ada5737f57bc27177e4bdac7e51394f34a3690fd037fb885e89420a22a1e0071fcef1b56578275ba3cb968292967303d4e25654a1e4fa348b412ee8ac57456b084755235aa6fa5ccad1dafe396890a5e904b43ca4a9b7dc8ee1940adee406c23704397672d39a4ee58bc677b45a5cb3714152af226ad425c2db7ee566f81975a18004c8d276dab6bba0d31760b75993d55d888896a105320baa4a72517c5b0cf59dc573f48edef4de7eb7c732ffb3252555e032511734275f292ab0a91fd953397e139e375cb5a6e2a9d0c1b6e40f15b8421bdd001b4b6063b3b457e62783693606f8fdb6153c3a81da413ba96610f5c3bedadb75740cea49af5038fc641067117d58408fff733b3e6a30cf90f0824835d53e63f0e0e118c4e3ec808109ad4fb0eb4f77dbd996020260aee0494fa0d871c345ee06e3c18ae5fb496c33bfda90034e542c006490b31f2164f9092f69bc2f1898b466646d9244d9eb9fe7e9d8be106182c7b04275eadbf68854cd95bd940c4f1a6f74d410199dd15a269cfdf5cb8c71ce110709cd7ac31517471bedef8b32701a0b31cf6c6bf99247cd59f2d962b0e81a2343f74daf62d5ada645169f51b07bd00c90af6c81c8dcab9efa7b47bd2bdce1ceb3181b021f4411976a34475f87b862b900474b695d1e1c6a374477a8dd50bc25be190d8d4b95ce8aeaa79837e803cca8d06ce538b238f7845eb605a9576e8f7fb4b3032f17321e94a927309812003c5233d984d47330f9daf0d9a6b4f9dc1e3af0129ab84522b1f063b7ceb7da49de4dc5db2bd3acefbf24be27777a15295b194384e95b9ca5af180a0072d2112dca2ac2505cf5476058fd462d31313ef8fcf7ad9937e7f3666d897d8af75fabd93976c1bcd6e5643b8a394b3c73d183a9959ee9473edf416cbd92a13ac0cc9eedb9f0465e71aa31cebba4ac65fbb1c0b20faec655e2c6320a8cfc2be3abc41f288daf0709729137d3a3095907e14c60d1ab3c19450a8a275746a55e62a6020b52e9e9733e772c468b3f7f0745d1949c44b7319f6869643d9a6838fecfdeea911f679bd2330f7472ae9e73f9a7342ab56c6bdb4c428af25c29baec0f640dedaea31694c0d1ad144f71533d354d34ed519b1d777871dea5f9b4cf54d3058399bfbcaac931dab48191f6b3bf6d2e0f3f001368c5a68fe7295b0d64694dcddd76111650f8b2684c4317e0a557d917342d374369739d833b320c01b02220454749c38db8ad90010575d846e72190d13979306b6f02a935475e30b3e5a03aaddcaabef6ba4643a2f21d3bbb03c0ba1249d2e549dfb41121b3fe5fcd66fbe80024a1771dd057b43fe24c29a910e75bb907df24dd395c1dd368d08a7ba54073147c7e672ef41392b32049c40a2b52e676caa6d3b3cc68be0d30a7d046beb329ec176620e0728202a9d5f2ad632b93f27a654f09cab7b847d81697baee2dabedc2f410909bfdadb0144c68faebee7e97190479073c71731d82aa9af048b759383e071b9566e2eff66efa8e4f6d28ac4444d5dae29dfc8bb9b638f8a1336e9342dc57eedcf117e3f29f0ba699d79e6749c5311362ea717da5d4356c18bd4bc79e484eb0109a661e628d3f8096463f9f2dcaf68c37d2645fcf02703f835a94fd3c97ee8347b2210ee080abd451693877b8fd4408ba04b2af35a07b024960e4a7869c90dde0b0b514f671d29be79fbdff55be2703c4d1c84655452153da22f04db48efb0b8ea15ff455445c15125dde31a23966e6ffbda8bb34bcf825e4bb8c52176c6498348432a485ce5d8cc44857f175fdda183ef88f9022fb43263b4017aae5eba8fabb2567e566608e29895c3a641501fc411c0fee6547da75349d579aaa67736a0b19c9b1fa260ed78262fad9f663b7e4a70df134443d3893a1cd9bbe37710ca3c65afd3496b3084ae1b9fe6261210a935ce298ae861ae57e00cbe2337d61fd46c56e40dd5d0430619044ad4c473ce7a25ef012cbe2b70158cfa339cec42511864f0efddc61e132ae9809a54378af746eabfb6c07f4b824aa10d9d453decf96f6168481e55f4702f1f583aee53cf7b42aab822dde5059415b49dc2267e71560f2558134817e043f5e1635519bc959b0c08069609aa0d2595d83cba33f624a8c6722b3e069817019f59e298f7b9741c56f9859a7f8c5874356ad63e0f782d22a1fd25ebd0e27150aed458fce1992ac6424d75768fbbad949e5a0d697e7de2df53191b7d1a921d6a7d5c7ecbf993b27c6c679b240042b797f6d074d9b96bbe98520c41399178fa2c02b687365f2e41920d86a665cce335cd5f524db6c41db46cf21c38a08cfc8125042d24be23c053d56067582a8cdff190c41ac7fb03c1052ce289e098e9c908478f3300bce6de3219bfee8b9d76da45e43e90109bb628637f2f3c3c63562b072dd1f83983a17d181f94e6617ee0cc474c6143b572e02bb1f86fdfac6ef7a733280e1f58c8c2ac16b5523081edc18a30562d0a7ef3b509a93fa79c5cf263dfc65d54ddf8d0e1b7010b1ef670d2366b511bf4a884a1abb3d5dd2d80187d0b779c2275c14eac2a06a6b52c83769684688b66b85fe8af455900632bc4be60bdb3145db1e526380dabe1e7c56a2265dac7668bc359ea44c1961afb1b421aeb12f77335f8ba4db08f7fc62fc2c26357d55196227a6b6d91016979fb306625dd9cee1b35cc13eef58e7600ef6631214eb4deda9822fbd0463c8e3296a04859bac8d05849161123cd4365ffd1e18a92cff3e3ec993961059634e71a96800c8d82acd9791e48091751f8691e5133fcfd7b9c4d44d1bc30807f627e9fe4fde73b6f0d0c87029176f1d0c7350ac0245ccf814ec88aba7b6997517ec91766ebbb8a8c65d2920bb33a98e4e0353018e522f47f981bc0b58fdc200c17ee74c0bfc092d696492c4f25475d88a5eb8588be9d4aa0402ab7d25e7d49ecfbd267e4d10c776ca2380f5a4e5768ffca942be0a0565ff83b5dd0f41f47f55aa4ff06bd4edc8fce0fa5b113aa22ed5ead558052fb01f2749fe1d085f5ffac945144e0cafdf07adc5816d40f90b6022bba2f3f6e98925df53c849e5a310f164e673c6f0e9ec30e313553fe3b654e466d2e7d9f837e7566a4946318d7fc684eb62388044852d54ca0eef7bd1450f06dd1e94ea0002f0536bc061420dc07c27cd360e54e305cffe929adfa1662eb68c513272fb88f53cf15aa739484fd0aec3fe3f3bac1cf14fb5e6fed2a3f38fb8871bf55926cf4bc8da25283aa5327ab1a3e4aaf1651d43d3da93996a51c4378239df6991b16f00c4041dc04cbacad82be6e230a438c8a5de5dc57156e665c2f1bfe43f63cd441c890075df2c7768256abc3a984c439f657a901acc22c84646207a8e9f3be88f999d6a1c36b1fb32677dde8caaac8d0dd9c31299a9c5e77421ceebfe6f8904e8111f9d4570a6ba22bb2de0e158dcf2ecedd3ef76d975c4903d5f697f7b18fb98907644683b921cf244990f7bd3162a0d21a3dcf17b8d67b4ba7e34ed0463bc01953716f5a7d68e40cb91c6a7fa76a13314eaa19db031bde2e9bc9da94aeec5925799c5e63750bdb3774901fc276db78e8c6aeab600b8d190d243192adf81b9c5a422fbcfee611f535dd974cd19c20fe8bb6c479d46f8a01352b5e8dd595379f8d3e8a2354eafcfd8fb3ffa0da890a1d099e4e8dad6d03d83517c23b302413747a340496f9f1563e65f85a25f442003e07bc782e76dca6be1dcbcf0df4ff795541b3f02063d57d88cc1b3e769c326747cf41317612b36ee00aac29724dc1dd8b727c5996eef8913c0e9aa99c67fca42679cde88ccce3304b54212a10b7208450b0762523a888d60e8bc151ee32a73bcec3cfd16a58454a7c357024fc9a29bdb27519567aeea7e1fbca198fcbb8ed3f459e74ce8e0ba751b172d2b4bfa0204fc6d5e2f5561c40005d5a087ddb8b6be9a16278242a561647b835f0c3ba6f866f85cb31b104f738a70a95d7622e257f6a8118fb177809ce6fbe57b412ceee2f61943c5fd74ca27bc7c48c7a18c31d184031ec275365e4a51c4b4513db066832daa810ca177bfd22a0c5377f0e57aa997a4d3a3bc8fba90d4eac5b42bd4212f898e35775b85a975f1b0e6df16ad796cda2c0f645d03e4881d56b68ee055bfe67c4cbd1da1e979cca27ea66b33ae1d428d8fbc5688bdeb233774809cdd3b76e383db733bf98a69d7115260f39f4c04880c1cf9c2d3e9fd18aac701ad11d31b657377d921ec5c8a4cb73779dd75a7dad8387d2cc2d6f1f3e57df55732fdca302267b5eb95721141e372e1ea374b9b1758a99ea30c1de35d45dcfd366d7bde07014a1eed0eaea6d1bab829ca1e2698e6f5f0ea62481566bd49b17c612ec9c7c17823b71cbdcdee3f5c7285f5817311f4e0f459f79f34e515315112448a728e8c8486b18c308078db55c11e5bdbfc1f48794628bef38c609ff7077a10b873866bc41cadadfd20ce003054bf05e0bdef3a431fe8a0bd53ccbe2b0c79d6f3d315d6a255a36e22e5caf62529b9dbcc34c3886a70459850bc5e8b511aab20c6a710b4cf9bd9936ecfa7a2105e22a25b1b292e153b2207db2feee535ba61814f753accfcdb5f789d6444a06ced7afd588c446c2cdc8a50e0bf883b100629444ad18248c7383bd3f27e6edaad5ea7aebf7f1cc8d070d34c57191e71f61d1fc4f2eb4d6fc44eba67cb2ee082fef8ad4f9b98878eee9fc9eeac3c159465bc5c016b5a76b6273d6d7bb4813cb7d1aec6bb81b2774290c3173580e23f028f333fe64db0f61b7643b70733d0eed4e09408af42903a266e0941bc32a68eec334963600048aa0d3d2cad6627fe86c685f9dc60b81cf533a7a899afaab1e5924f8a418068a8cab1cc8886dde5a46579e5f9939724c0486d4b3be16e5087c7a079eefce63f57221e653158b89b319a0079c83f8f75a48e9c44b5b2af12691ad7512c1b265ffdaaac24a4a94da95b2b6a1bd108ee4f35009f06f491c1bf3f0d8ff2da43f0c6514fbfa70e302e7605ade0f048fc478389d1ed7bbd08c0a4029a9f35f4ed1402efba873aced5db34c25b60fb10eef933b58515833660197f2c5815f3cd4b908010230ee3bb6a07e16d2d4e179ebfe8ec6375b44901d1f5a391424c17ee23654613090b419d4641fdf8e3064fced83dbf5b515b5d2b742b1da136b6064c57661f15d7f6fb3c10a9bac1e9ac391d2f84ecd2dd8be871ffbc396ddec17642e146e4b2524f2e24ea76a16d4dcf6f6c91a9138dc7e9758899e90aa6577bcd6a14d174b6eecc30366e88c1ab989a0cb759156c81d25bdb8e1c2f9ccaec041e84f762139b4047aa4c7716aa76f82eeebbf9c32e33c7ac85c5531964c419b6ac49f290490410b883b92177c7b1d547079123a73b43e0c3a27950d5e70df779f83ae9e184d9400d24bd51b451a6706fc2da845c99a619383d86ce378962e889c9d8f316ffdd56a551aca23fa365fb72dfd36982846af69510d50a11b3816dae99dbe74440e9b373779d465fe9cbedfb9e9721ba59f8fa3252a751b2578ff754b73fece6ccc17d84e146e3ebcf8e38e426bc98386657dcb2765895c832a0cd2f10da44d66db94dfce026c3006ee5101611c86e6216e74672cde19b1b3c60bf5de42ce5e40aaad142554ddc3373cd447206a3884f8f51577127c6288ecffc8faca2da6b0192ed558131dd227837d4f1dcb6910ec4edbb19fcaeed9ef1a76988e6c6411b74d25becd3c5c555d1e8931d85c9616dc08e82cd8827be21724c319e5b6e4c98551e7ce7c399b87cfa27ea4624387ba0fe122bdbbbe874b20feb429c3eb362031576e809ceacc34bdfa1e0f5e7d80b2e27bd279c5372e4cdb09e4ea81023b3d6130971a8b75cbbd2caf41b27bf3f5c4e69082336f6aeeb1bc15f8f2d9f78ddbe006c1946a467d1af135cb4b404775aafd7014b250f379dd06792d9084582b7f5005f022128de0ad78c50ee961ae4879cb3458b494f01886c21d8aea6d7f886b6e5389eb2cce09e41ba30ef8cdb8a03475f7aaec4d4d0dd1f4d44532db4b12353d199b4baccbac071f6d8bd446282f54b87e0e715f04d89dc9b077b48f4f95bef12774e7fbc90e686cc6d9b0deac373034be4842add19b74feefb6e4cc6be9f2800a082bc3d5777e69344f9999bc83491cea45ebca7f014532c4e4d03850d83af1429eedf18f4e713b5454224cca22cda4462e78d1d53924bd3c1889e0e2fa91e1018531eb467b03a605329f9412577ee4908c3e0e29e65c665f07236d16a06bff426ce0d35b4f9bd0ffc133a08016e982f4e4a55514313333261c294cf927770e4a0c91a79bae0f580d517a0122ef7b2d41abd4937af1036fa4a99437a53983331eb5d13441645b09e6ccbc084c86e916525917da779df22c4c1e959c3c9f071d37b631f4355eb2a530018a0c71cf567682327ce3aa940af7fd02eee49fbff058169029e18ce8f92c7debb8f407ddb01c94fffaadc07d4e6a23bc3489bece5c6114d7240a538e29834ea8e05f7ec083eaa543de12d2b996c295a1a17b38cdb3773e259af95516db40254fb9db9468fd1a2b0bb77ee14f9c4a813a63471501267229933b5f0e22486014ae804724d885a6cc7c86e86b48b14010df9a496fa544ff41a6891f458b8eb9f76df063e046687f193c274ca6ff3baede3d68f53f1edaa40fb77b5b3e2c56bdf52c8cae768c63e5595fa915c9a9bff567034ad62f58925524fd4d2d36f47408367b3ebba3cd55c5f1cdaa954838ffa99fd4e0cefca749b55fc77c7fea8454220f2e23a55402cff33ddb82828ef62d6b2c78468c4b918d503daf7f32c2b126711acefe0ea4cdf16f045dd02d327f3d862e3f25061b9b26203e5033509e7e03bcf03d5a12c1bac2325332b4e0d5606db90cd873a56fecb3ca2c2f081d1944160e31ecc127f47a2e6277fafe5250bcaf679fae1c9d322238c0518e40d52ffd1e74e67860e8eafb81a40f80f91d5c76610d470606b2454597e62d153ba00f11de04ff878a682e4ebaea21b4646c7d9e20efde04f1ed15c6830204b2cde1d530882890863ce9674992a00e595fecf6b6157fbbcecab5a2069bb53da07693637fee32799726c68fffcfb0b1ff405fa15a64229c4049ac44e5dbde5dc920082249ea88f8b37a0936f342868ce3c250d2d1c0e9c86c177d56e11cb12baf5c9db0419661eefec10c21a997bd04483fbf84cbf613c37f6cb76a5c41d33b615169b485b104049f17e26f2c5b7a58698dd3ba8481a6b4862e1f064a9ed2070b0be3e64eec654a10e33eafbf36ffabbc626dc2229731c00ce9f1c8071e1e04f9bfbb99cdfbb8b17f2721ae2dd654ad514e378f26d994484dcf69acdba66f3f3e30fd29d3d0b9bd6cc6c9c8aff1328088bf4c5d999c5c2c47f15954ed5344603755ee6db0166ad327a427c7b20ac65e073a6d3ed5fb53b3451db7da69d7a050d9ee0d008a472919e82dd42ec6b0e6b7918c3a89d8272b5b8a6bc9ff0d8be74ddba4b7fa88117e373eb34706f5e6041ee0aa83e977dfdc29605749345480a5216540c835796efea7c01d20fc2895e2e574bdd6a67a06b4f71f83143b5d6d523879463cd1e2d454459bfff08a543599a8e49e0a9821ea7a90277770bd3700c2329fdc67c8fb3df37448bc3336fb3377a50d1c00321b9849a8467289a0594fc415b5ca0283fce298ff4fb7ebf6efb18486ef56c1a444c174523b1ca06d17c0e05d6c1fbfe023baeb643422dd8ac232e5d8bd7517d704cb6e61753d13e3ecca7247a3d9a883a40c55d0080d9e35cdcbfacf2ccf17db363c5b6c223301fab4556d2249b6cdc7f5fbf9b22cda32d2c815057c2a38c8cf1bc040923d350a8d18c14a241482bd4de43be5e6ab059d80b3b6fcd9f8c423a8af9e39951ec5b0e658461054df7551f93e71f4104526b9fe0e31b86d6ab150cf1ffcdf7c4912146ffca6a51a4ad4237b9b3007ee33e3d5d77d8936bb773acd91cebca622568261f9e7faf42281f455d55fed1724046c09c71d536c0cd3ecd683df25dc5fae6cb1eeb4fb5d4b14e12538e2ed8e396c3b7f00f7302fd228213b3f7e36fd99563b967e3ec10c38c8ce6b6fa142faaaf3f23363cf7c0c8c56c45489a31eacb85f791630a372a760b10705b01f2975151975051f19caa1606a90d3479a057349b29cd375c5c73f1abe415d91d4986d0ec30bd7719a42dcce0e3e12ab6e8ceff4e989b36fdba4af271b50c52f5c4eccdf1a4830df3428480b08cfd3215f18bf32af48938029767862cb98126fc8a417f94712e537ba1708db333c0db9439d13696feb8da1454a3d1f4e09bbc00bd4aa5f23ed963ce0a1cbcd62a27cbdedf859501fc6c8081076ce0cf6df562c8e0299aad77776b153d99df115dc474646bf1e3e1e144a638efe06117d9e3e6a8c42282cae85276c8f995b71376e1402867699cd8db1841896fc8c1d8fefb9f67b76713bf8e0c5b5f1ceda2e95da6ed3ede1d6bea2251d70d4666b4742e4f3c58eeee90031c177c8fa358f757f2f05c6b6a71b6c4771fddaf3748558a12bb51f64451001893e8c30b1ad015f2ea3a5075169f76619965f11a01e5034782480eef4dc2eb1b0c71fe8f281a26b7ff975f26fdce4fa5e940ded3cfadc15f39decede0573ed00ec62a0d31c406153107dde2f4e898166a7336008bfc5107f7f1ef48cee2617bdf8d409cfed878b7b3160e55946683330c8fb5c8b1f3eb0e9d6a2f1b85ebc39de39b4517d44192cdb935cb40e9fd5314af4b182233c0a846262dcda2808aa8a855b6b1f77b63e0c7497497af4b3b5e19d6c332757c59873c938fd2c4487004871460d2391b170360a4209ae62e29e2dc4f1ea64661e97f700675c17fc8aaa11f16fd6f02d3e82a3d1056dee68c7751fff5100aaf691bba6000b44485b995429917cec9b32013f367547710ae17d4adcd683f9ecb70f64512c8cea8ef250edee1fd9ae68e3de5d503b33a809984260294d2457eb57d93ba5de45f3aa716ad03602cb7876633d233e08980bf3ca7792a34505b197844669e3ad651b1009cb1ac5db1a881f1972f72786ddddc55bc84973b4b9f5f9a85cdc714161e86abf7e65f7d447166ca5f0b5a6c9ad3db09b3035306e00ecaaf62a5844500e896f885fafe6737baf2c24370aa8eba0bdde7201309bc1562fb70da0bad104096ffd1fd03bc91b3818abe678649d165ca8f35a2c727e441c660e98ff4ee5066c6a89dfaec27e6a18c86b78a457dfa130cb9755ef6b76bf4b2ce906e24e708afa62411e22341dc6f83d256dde54e60454dba93e8b852d1a8fc61c4d15a05364b291989b5cd07f8f1fc8483068a0673cabb41e3ea794763b800a31b98890a3f4d7e248d32881a360cca04c4113567fbaa86b716773da1dbd464623b98b09851db6f01be437cb3ebe9bd1040935d126da4270b746d9e0e4cd81ec3b2f3f58d2fcef7be627df3340f7832595efbfc6199d5f193982c0318a02de99a4309faf525a3bdced2f82046d4dd5d20a0945fc62887e042c240d592b48bc542214da8bd7159cd1bc0ba6927bb0c444d62cee13a1953c1a90ec4a7cbaa52bf8bb16f133b179e7c39fd425a443594c7a8224c1d0845492795c068e2d5da6330cb59c515d8358a276925c56d20cf46f433f4bbe96444f65de22824f539264ec75e1d8857fd492f2fd168ee4057122b473fa397601d0c6688b535c2df257d345969f00447f737bebd4d0bf0d1af8ccf930a09cefd07e60122319323fd6e7bb3f32292a645c30c15f6662ff5515bc43d9205ccfd385e21f6c23784510e44a1308c104cb23b2616510efb8ea448e362c247f4131004de2c95cdede37616e79f83ebddedce96f5136255c17af31044bb5d41a6f9d2e58dc8e4739c564ed2befffe0452a3bf68594188b2b6b8b607504fd57f1da4adef6a7c19d99d6280c0162ae8408cd7b089661be0557a5238898c71e1c17463d99c7f50be2ecf154fe456d2f928e01117713b3a5367416dc739de77bb4f7a5e772fad51599e1ab2e0803ffd4f444ebb7aa3393a603d53bbd0e1eb8ea4804a797631239fa089323c24032a30d67290f53d809a595affdce1360792aeb36e2bad4af0f27ba730740bae1ec806135b22381a4c364810d82d2e374120d2ef71fa9b5e25df5d4f6cd0a4452363d5c156abc1e325a148c570e10c86200d55f169bc47eb5c6ab60ed7d529ab01d485c085229e440bd7207286fdeb83a7bf3f40a76fc4b12ed7c36be2e95cc7cab5cf6c08c81520d0f9063ed22317b89a47320bfb5ac0bc85f0e6ab56eca84da5b60a1fde156ae9fc71267a91d9317cbd526b02ea54f2723ecb41f124bb29a28b5c7486d0143e2ff0b76554f6db25590b329e638120fc2bfbc64ed88de72618346c4dc7311b7f437b424ba503e10cb683685292c90425790a64c4f1173db53a152528d76cde1f3b09a30e4c9a45de5af0239bb037223106cd8c5e2301810947450862130bfdb9636d8a472195f5436c5235d91d39f0aa6bcdd906a3d999d4961b3af15d140900b6b27d452f1d88dbce71596fa9a0f92dd2ab92c343261a71b4c2e9a1cf23af156e55b430c723925340fb9f8e5eb6b5bf3aa770a3a6940490497da68fba26649a9885710c47021d92e9176b5c71e942f2acb8bd9e81d8dfb9deefdb9076497987eaad7a31099ba82e9907710b41ea931e23641357bf426c22fa18d71badb856aed0d6be2b9434896d07d66d195b930032742652510f089350329c08410c6a0093781dc41a385cb1adfaf31416be832c0ed9def433fa0cc205a30736177e1bcccc47d98e0a19aa6ee0f297743ef30016bb45d426c4995c23f81eeefd9e1ac5712858b3203a71cd3e5640e629f30be2724786c96bba82c0da106a02710790a7b4dbb048b20b2aa19688941b055d2beefbfe0886737352d48549b401c556c7a2e41c4de80d0cee2ffafed3acc66a3b95dd976aec915c2832cbb82ee3df52bc86b4eb607c5334b48cfae9834310409e9fe4d6ceaf667f84ea53d98006dcc0edc03c1b5228dc002e0608a1bb1e79c6f28d2aa7369a5191987bed48b77b2074295bc23176c3f25c8b03fb0a56aac74856e9d904b58f3268da427eee4eb22aba5606e15a9d87462142f8ec461b8af5815c6beb1fbb9ab565af644fce2e8088489ba2631089627b1b911ac18a78dc8c832cfffc3e8292ccabcf9b731c128b90e72a44648bd782d5221f49a753bf7c433f2c6591ab854a621a51ceefbe884c24cb437d180ecaa8c30f747fec5bf072afe97a7278efef653506e1778d2d1e12dffc317796b08760b204d3ebe0d68123bec5ed991d621c6f67d2902456bc002886c3d82a326c2a759706922aa2e7d8688ac7d84e0f4e413ff6f7bc64b658b71e62068767d07616286d599fa7964f7eef9becd501b03c2becd36003d361a777cc0e3bcc3b7ed97dd84d038efbb66e32f559b685dbab11111a6c77573e065b3dee8cc7366a94b49942e03d0475218623dbd839adc028d613ab2e07f04672c6ce55e21275ca4bd4b903636d14d16dd6ec3b3aca00a3bc872ba73443f20fada41e5277ece5dcf3ac3582d54d7c94a757d9a16dfcddee76d81cb035e9827707b309473a559166444d5b64001fed1e93ce2db1cdf1dcc578c72c1cf998a6893502d57fe583a15506a0fb85da13453cc028364c3ff96254aeb34e252aac61aedd729fca74159f3c58bea5b27c4402c93a260d67a547b0a9532c84dca2f00d4b9f5800aed828a6088080b870d2641f159023ec8c933ad5c90b6024353fdf3627f135716b7c6f889759da3dc99e12e0b641099862d62513076db237e4627a1cb8a81dacb1e2276369e80a5b15431c057edb380df4a8d9edfa29ac94440c7a253ea992d9cf27510d56f98a3707c906edfcf9511764cd229bf5ae72d90a58a275ec406b147e3bf1fa484ad33493e66e7af05b58ed797d242a97a3af3c437bf969bd9f6afc9a1b3c4dc1725efc229e6269a91bc2089f920ec9fa108aabe4b74e2e4b03ef6cb247256d04fc3d6826e22a633c6748167ac90acb739e1eb7e8b46972a6337dcf7c573243a61e925b62e26878d77769edba5bd4aa5655c6d4c745eb74abc60bc7bf5df3de2293f28f099116535deb65b0e3cdc05cfa56d56e82971a1c613ab08b5202c08bdc47fe31ca0d11a48227c5110a5b6313e9244586ac70cd5a723688cfdeef69dffdcb8c3ae0bd18768eca02a640de162e37e6aecb77a7fb5f7a4007a2d961f2fa3ebede35c99d5bc85d13aea6ba0815982cc5b6c14fb9ac1648d5b0ed06531a9edbbb16151288318d4e47d89f4c470a3d7b6788b53ccc041ff106458ce69353879ee995529ae26fc7c6ab1503d6e9268f3eaacbd38d1e84c723689e6f6f23b0bfa1dd36894c784599aeaf3a9e5ac639a1451a3aa52f64c5ed0d42ee09305491ada3213ad88a87319d922d2016ceafbc787a85458a8784afcb42520cbd95e184b89e715d0e961750510421175cd20804a0cf6db5f298549aef806b50dd5911354af73fdbc98b944f07e33efa9a8af3192c4d4577761056c7d98416613c47e4b7c84c88c17a672845c174468f6b26aa236a78bd53807ffcd6a6502b9a0fa115609febb401f3da601aa6cc365b5dc629a9a7f3be5110b6a2f2b2ce8b6ce03404a2fee4f6f898e00059bdde4c8f1906aac4fbe055ea8eb56d700fdbbcfd774b9560eaf0da2543b63824319d1448a25ef1c9b5dcbd201787e9b0c34dde9c768a9f0b36a3507310befb29bc6e68762e8391de196e4908de99134309a58a088c00257a204a6f7eaf9f932070ae7f145084d7af5dbe07abf013934930fdb702189bd92eb9ca807b3a6e3c58308b7c93eadc67886f5ba178ee60c8a2b05d488f222230b8d1ad4c038e33644128dd779464a7b3c226edad7d2d5d1df3eb312ce042cc5fe060b36fe09ed6473f0377c7a073727bc1854f147d04719a4ac8df1b598699010524a635edc9212e5a8eae4a42d8edb4e3046faaf26fd0f661d5a26b1ed95288c582fb79f4273c0e1cca4c0a3452da0bff06b11e79e6045ddc3101a3232feee96c5ace7f0dccf5156d72bc8cb0b1b65dc2739746e35e996a21e932a3748746568062b9675a2be6a92c37ccb7a323e5229631ed330d4c048953240cdd36feecce217eb9700e67874b39d63fec328c4e77685ad4bb2e4b038068228b07435ecf66ed2849751b87a6cd3ca1b9142605975abd693ca5f8e9b31e1f07b79bd05e345674ce616cac32357d6c2179d61d9c87f14053e3d283c6a5a1a1810d16f277de99966ec439703c26740c1d5f0e7c12c27ceb142682d50104028c747235a8f81541c7245f63438136a129c3e7c4351445c4bab58d2cbce6c3695cdabe42656028d6ebe139699869c3a938b9fea91d3ff7c0a8d2cefeee78905c2eac65f602aa44fcc59efafd88c44d316f77cd072606e8e36bcb20fd79804ca17c70e55faeb02b65775fd79d0bfab4311c26bb888c4ceec8b658c6ead37315eda6ba40aa90daad584b3811bbb516d1d83123f0408c3067c4f98a3e21645ed283906bf168b17c10899092769e19b166511c4b53aed6abf5935757abc9d0a5e256d95ed872da7c083af8abeabad603bade2ff140f95ef092f8c245e46d991f3a0d53c601fcb551e7b5c1ef3d071228d5100abf7649572d0d6924484e3d9e3b28d1bd3fc95d9cfcff8d4d42a299ba8675392e46e2e8ca58bcfe9cdeca08f059f2a83d07b870f5271d14e1c69f35ac2a73506ecdd505aa8f070b9addfcffb0ece79d83ba757dcd08ab345b3ceb6a106003400e2ad530c51676e1f27006474c41f500205b51e9d76d5bc8ac19259270fbf79360d8d6a13ad5ed7a4d9d6fe76eebbe4daab4ba57db397dbfd02374785b7ace251f33ad29270bdda49c3698de9ec5a026bd0f7c0cfb6038f61b7f87bd6a21dcb8223aac71bc2040e28b0847064da74989344b4d34fb29937814c5396b34214d4f67c718c5793a32f141bd01f985f8573792bf74cac82c031cd23bc6fe2febc4cb19c62a9fb75a64bb2d54d8007a1bdf51837ed7f4c2a899264094aa6d7ad20f4c0682b36c9feabc8e9522a08377f140f207ae3c422c2860183cf4d21694fd08460578178a5a925f5206f015e826245dffcd9cef06c164c6da10334e570e035d8358b74d5e865f271d56778d2b2d604ed73a51f9381c1918be1f95437b99f028e047e52f79724b4a7134b2499431adf5bb0b766094ba2038f3f801c051eb8dad5173b4f04a6bbbdd1d03f44ae3639afd99932a79d90bdb558277d9d0864499ce9f2781332a5e93d57b8513572111af865fa699710f47eb24ef1c0332d184ad6a3b369a3b8ccd26884f6519d50ade29e1fdfbd807597898afcbf1f3437a00fa5fd5269352df08b6eadbc8c148b716c6ec18c63542f811ae388ca5126f3ae09ce10f26323ee1fa13883c5229b6a1c86aae75fb519be032428e693489f7de1432ae6f316450edc19dab63bbad6c541dd9efb954f80945a15a90c07dce675224ce9ef11bd2a43418ecd2c0f63ee685c4d15166df493c690a79ec947501ff3fd9d62b15606c539a2e6d953da7ba2d5cbdac2702c88d516f5356a72880b271b41e67c39e33334bb0e28f6d5d813cdbf71410899f46e8fc3616e6fee1f93e64691e2953981313066272c364d380666dc5b6b733462a03baa049af18eff1f6789d92fef2bc4a0e9a758a86e870314043f5dcf6aefe211a7c1c3f34471d7220f6d2e1b234c21b9fafed303ec987ea13819eb77ae1d6fbc22c8d37d6f5b3e72af77d89e89f662e2518007455de58225abbb186bb2aec0629ea31dfbb2170e6ae699d1a14812e0493a89ad47d79c30e9f62dadfe8dbb2d7c572a490f62f5059b286b5e01cb2283ce78e263cca9265b4b4d5ca1a26f9c5fb444e2aa0631b8cb9e941776ffb386e0032b5d2c685d4ac8c269631d45e67ec197896e32fb56c9637b84c5943c6a93253706ce310a82d53de1d836900a32e86ce64a20dab0baaef066cb8d24fd4dec40e5ec8fdd8b9b3471784edc124be6c94b0535ce7e800ef894e98ae3a172d8ccd52f6081f923866ee0e86221a5a39c287f9ec8d4c3d9381b6ef2cfe05ee62f75d3dfac2df531b063e47a785a4e5d7a6a2a655643e3ef9f60f33ef6c2599d3963304d4ac9e1530b33c6ab1f1f16180d15ff6573ae39d447f7499afaecc6ffcff553751a11a12c1d3d0a4491e82492f57e1647604f5db21a92b0c6486b5f11fda8739e272d0c91df4fba5e9acda70383793780698327843c0f4491ebcf37c37cefc5c7c9d7457706e3f80613d46066c2afbb9dc77368991cdf1b5b5f2a99c32d06965cd0d82ceeea1099758de69fc140aa1d73c495f0ce2e10eb2c22d07b56145143b031ceb751c2b4e032ea934911d7442f0bbb805051786633b8edc6b736b161f6762f8e4f73ea8c63ff34633e36be1d486aacfe23a55cbd57552e1d8ef4a43966476603969453f0c443ba8d2e79a4b33b6ac0d2c161eae782a44ddc0af3db427376bba87eab663ac08fb5d30ec5a00d9b732c755581347f6b122cb6557f427415f1a9ed2597b5061ab5792ba77b792d693af10743da72596cd1f516dd2ff4e2937ee86368bb08e656008a1e3e4073e2a9a2450008627d17730f6c0d68fdc346a260e2690e85b77f7ec390214ef866c33198c656a8573a673c91debbc6eaa7b0533fdcdb1cffaa7a11e4af59308a9574c3ce50025eead1a7fceec0e3616bf67c633a59a1909a9dee1248e82719a0adb50c116493e3a484565bbfaf9117d2fc923325e000f0ff1045fce8eb1585b2f5973a18fd3d865a09f0409ea4ec4c08ab351647f8a5efc074e93550a9cf555ad0b956e242d0d0a6861d5cfe903dad91a32d039e038c520c67ffd6c136a65ea66b40a68752a297d8a70918ab473e7af11023a66df8f31da5ee969889a122396192195d5717b265f5f8eeb0a6446cf528889d919e3a0d0da2151eb509959da18f03506858e2413c890670319a5a0d2730c1e025b8d93f3d7f9e0b122f147a138374901a3b0b0e753d4a4bccad683b92ddc7af94b74336b6b2cbb83ef14052a99bf7002df3469eb5631dde0fe661ad99d3a21033e73b652017a84c8f79392b21bbf27f4a1b3ba87d8c6e7c3c41943242e6a0cb42bc3f3d53ec0a4e7620a0db74516fecec00d2cc28863e4e4e8b371d6935d6de827e7beea0db72e8ffb9fc7b191573c8af640046bb5d1f381047ddcbaef2b0bec5ec1383b59e98787b42a3434bc611f35d6d9a067f1c06d7b9b139f3c3b45cc3d58a895ac86b5db3f51847069eaf60b18b2286c0bb9df4dfcba0034aaa03f97ba36dc4136fac3f9c4b15f1137ae88bacc0aea434905180852889e1e156f7d8a5b107f1ac5883779fad382ee1bb87784d1156e23857029a2c8255f8f909eb648d0336162aaaf7d1d80b96a5bd41e6401438a63c30fb3cbad845ddd0cf8d44bb87769e97e140a2f081d15feb479c93d70473d19c328333096abeabd5362d4a646ba0b5a8ff9b3d8faef0651309eff13d4cebc796830c3e3c134b459c7ba779bf0a529237a047d0679fc969d57756ab9ac39fa24f9b46ae690c24c32d96bf761377543dfc647b26d9a74754218b24300d555f46850cda0c31464b31b9f739bc962d84f03bf7f674b4ef02cb77b95952bd1148d6273ca676a4d3666e903492ea69d9c70b710c9bb22a1758a1c65b402b63e6cae503e904fee7554a4beb68a5960973e6d1b4582ee644eea4acb5f46aee78f7d23ea34c5d73eb2dbf661807477bc13353a212688a5271646fe6a9cc5e2a7c05bf24ae3533e5bf2c8fa3d627f71b263783cd13d3080682559dab495fe89425cc4a092dbd073e599915f760e965413200d4493512855cd54644522b7803759f65406b19c66b1d1e6a8c79a03d46182619c182a166cf2bad8ed778604498f332f1ac5fedd200b61296e2b8d5eeffd369ef64982760bc63b38fb381bc36d85e1fd01968be1c9aaa08e9499d165ec537cb50d2dcc77037e62eda2998a0284bc088326553a7124cb7aa907ba91b8a3a2c6f89917f7875d6d319a4b4215970caaec21716fd54ad4f97e8ea0d3cf0eb99fe197ce636f4ee50d81c1f8a0d0e98a5961cdefbeb630325be3a57bd5ba8b868cdeb293108c529fa146360b014410d4e128d356ee9b825da93a19d21c8fe3261c9dc27e301fc749c224d929a3264d0099016cf8211565e9cadff4c9eae243b1223e6d345d90fa2b2f05780c3b0b0aa6cbbbb46ba6d50e36e010e1d4f2c7d0e78ef30aaf160338fcb8e386f2a6d1b417a2df03e9ef42fd9b7924f986dea569d205bde44114f54b464558b92075dec42f86ab3224ea34cf27bcc8420772e9c2c1abef069b2818e2a0157eaeabc919882511aa15538debe5f214dd08993fd2914457d9ff731c202f677a48e86e7de196e0cff79fd95683a45663484699730749cd3884b2886cc80b5fdd8396234ca590e7ac1674526d834bcaf6488999c377258a99872af7017c6ed97b744a6711150fc01b654af9d197157adb33bb1918aefedb8c83713c075e85f174c859440b459035d386a34851bc6405245c1b4a8d8454b5b4742ade007f0eda84cf1476bc202eb4e4d8a5d836997b19679fb443ff8f37eae67fd50e077a0c9270026450a8932d74aef25f3655371dbc6378b82b9c82f00db3b05cc262da7c159ed36057fc6de75b679d07d5906932494818e51f1130ba94479039863b85b6d01ab611d1340090bc79c0d1a20ba28ba854c94ff15ccbb8029c273af56b395624af16b012219ed30d2820d647f6209560f79a42e5a62c808cd59a097b37b60e791b7c7e387db7ccf4e21b6962e310755a56af5ea159bf7c208d7157535691930acc46fa0ccedda6977f3ddd8d618585bf3060b618410a8074e6eeddb5007ac1e8eb9143432b7f02babd1f23fbc92e3a106f41ecc462b9728de10c0ef010aecd9d9c84fa659a1b2571d4dc1bb92c3f5ccc4a54061de36516d0843150e81f59a422c4a47532ce22709e99f01ed3e33313e24a78b8fbc3d8c03167edfb8f69f0d7fa3f95835a93c03eccc692582c42246bb420740e739463d3b0a1a0017c71d015f3e7ccf91479e4db88d02b034840113064e6caa0d46cf3a9f03b78e3ff705761a2a35c451af3e5f5a627fa22972852ebe7f0cf9b2b7f7c27fce962335a184ad7fd2e34e0093a874786efa62565f1d955fefb5e8cd34c6d67216765462b05b706460b63533ded4f01597f23537147ede4dc5ca343b56cfc54ddb5b935166540b7dd7d80d0d2dfff7d2823aaa53b70542c138e7a6966071ba0cdd86352111cd073899c187f1c95eccd272435472b09a01330503ec7f47f54c2a82b5a0148028e27ecc113b1c43a7ec0e0319b3efd9680f159fea2af80e7f734888b4b1d3c2ca08111782e6b6db53e1271c4e21a22b7b1a7db86a8587f9fee2cf87228c9de041f992ca19e6929adba74abd71797f18b7bbc0c43e7ef3f0187ac81626477316726e465d405b470348a5bee125262d45098b59147e2200f0e3527ae1ba089f36f9055a534faa556780d668d1cb38e9ddbf4bad48c082c131966361dddf0184f23c0fc4eca00b463a1a759280b06fb0976d148af8727e129c7d5c64b48dcd97202e8abab745c06b400fc4e52f6bafb59a2447feb23cf2c9d2fcf585e49e757af6de43484643304e1fa9b03890d097640e702f231ba49aef0dc04ef94f591c91a00f912939673e5b10ca4017491c17ea949054d2c8f3d799490f3919db6f714b83772fa546b878f813304e05c226dff89457faaa8d36dd80f1f907f0dd2fb88df173041092de105182118149e5e2b86584dc54db130bb05ed31d90fcc701e12ba5480c929351d4d5c936f254114c2f0cb19f6e1a9568f10c55194e8bf67bdcd70544ff51c10883bcb8effdbf766c432fa58a2874ed1ee5b05db701d7c53c529ed27f2ff23475d0676a28440198d45281dfaf096b15e6fedac3e9a94c66dee3c001e26f193e2a1912e083a09a10773683d0bbcde7809975039d1f30f3d04f7359521826c88d4843a4df70144eec0e2b68a51f706729e7dc94daa76eb35dd8f966053f47adcf455b4c0d97dafb2dd43799fa58f299e2258d2d2b7b9d06596ce807b2232b4fb7bc1a4a4ca43bc8e29d7abbd84ae9f316d2b2d90aca88ab50b44a6d16cf5cdd50539b8dc858ce4942f306cb6bcb6ebe3bdfba7dc1a5ba33d757e33c50814d939e7a446fa0a5d0146ace33d3062b29e54560eac62189d6fa616e339d10aeec8db4668fda927d4b5a07cbdc55cb88b4ce628aaac036b0d93190b2964a66e0c94920c8b74228a1719168172b662565a816b217bb1165453c8480f17bd565202965b8abfccd2dc17407b8d83e5b23795e6c64054c970886ebbd291607c5a0886cecfa808021ed5133065632ad3f51e12d8675a2a5cef4afe8144a7edb9dc65365e8a838a7aed4707b3875de47e9584fbe4e424a2f355c231e7960d75b2872e70bfd87a149a999493900bb1ce3068ba279e87cb8e7b711ed8362b9a9f2e5b19193785ea7736c51b1385d8a1db403bd8b02eb5e32f6981e34aafa5d5b4eb43438ae918da02088a0272448292356bcce11c23acfcd72985958f27ed903d5e3e12f89b4365781a05388a600b1ebb390f846615b3fb017fd3608fc409919133531e08338294b662b26b0ba5cb832a6208594c2e0b8e133656d2de8771e9e8a5d91f8a48c83de30eff309add765efb18843d68f6c2366460ddf327e88e8104b80c1b89778fbc0ec12ee16261fbbb61bfc2c87a517d5fb2e30ba7aba4e0aa62a15f4b9b4fc4e139fa1014e87f77c3a0098bf1bf715036195a77d3cbc48ab4c62ecc2efd8bde5c3a34095f5e1f757c0bc1a095e94f5f13838335b2b24ad3300df88e02f7c3cf45498c85c44afe76d339f6a8a867bba4512dc608b781bc7812565772419737ea55a4ef412bba1bcac65b333f3741c19573e3f36d91ea47d84e391b4471f7f0c73f0f09c6f5954d8256a5ce4ef6a6e26f4d11276fe2716488d9ab520b4d88c04bd5ec619d721ee7cb64575c53c2c69cb9e65f9d7541eca4a14f5cd16c489e6c8a86f39cae5b8f5c683887f1558b697fa1e6d3e468269412c662b911d0522a06dea9278bec1d0fd8533206530730202261728b56d61cfbc7f67c0b9c6b6c92c866df614ccbdd5fb20a20704794f769b76a88176e0154bbfcbaed4930695b9695bba67cbae7e019e5061cb0af2bae22427429371be9d5b67f2117934e48130f52a59fcde87d8dd58fa0a3163cb7bc4f5bf003c36b08e719eba5e2d1ae6105ec06b018aa242ee612e570a1e4f0bd6895b0659a4e1d12ce54e824c81b26f248bad0b522a941c2b792f1d0e8ba170ec40dd1aea76db1f08ca4b2ee10f7c5d73bfd30b30df1aa0cc1ac63df06139d4ac62829a94b0ed690d1eeaf3b8cc0840464fbb285523511ed38bca14f7091462839270dfacd2b400cfc74023753bb0f37553655b978bea76f8a3a947d44e82bc9bfbbc45db139fcd5aaa588bf279a5ebc51efc8670254cf64f0078f107952608cc1ad374d2a99d325d628d8572c9e400949e180c70a168c122c82b9e51ef27a6529dfc8bd0ae85673f66f011039796bde4293a9e786e22729b2f0caf495351c3d8b9092aa7f872b13e2a2dc597db75f5a72f002ed083608170e6d0cf20a2d971f35d72757ee3eb31fe1ef9e800c6674d74e96ec35d98cf6bc1dccf71243a8392695156eb67b5df82a331c669a8be998da49e0992b8953cae94d8ad7669ad1f7cb1ca97e499ad212514c7f2d75b94498751bc2b352723ca2cdb51013cdbf27192a61874121970be0df36a1727e265da58e0d15add2ecae8a1f336f0902d3f70681526b354135ed238ac84d6d8d79cc7c614248e41facae5b5c2e3f2be1d2dca8c4648c476cd29de2600b5cedb8e4e4ab61706887a8badce6339829f388a7c53e16c8fed204f135b18ee45411d3f984eb17294964f4a7b21d67fb2d004f784ef4a0ffc1af83f912727f4953e2c8ef865eba39ced8f71caa1979f944052d3106e1050a25aaaabc54ebe7764282fd6e675915295092976230ee7276ae786fc9ae62ff451fa18b1c83a4fd3aff1276048ddde16e9e1473446690edd5b9d7f68acbe36e4e9ead227f18a44f9901881ab28df52856209b2a0c9b84a3046641add64b426d511da2fbc1933720e0dcdbbd6a566113285e5e3f26f6c0820a7760c6433e154e14c611198abefb5ddb0f8e224a0c3a6d2b016482c1a1440d45a53906a2d9ac488a64ca7db84bb60b7cc3b3c342d61c5a1a6c5f62c8ebec6a0246dbf4247cc0e9c27571c16e5da30f076c845dd8105f702f3daacf27b9a14448ea64b011976710767a6c97d5e11c5d3cce4e1974f8a673398ad5ba6bc78e8ce6a38a0f45da60460d5cd54d34074164239954b64458ec940b89488a51206c27bc573e916805ffd568a8a5ab270e7108daced1304732d8482d6e94a293438e60552a19469289f461ac744df097254925cf01c6495890ac933d5033274e0cd3c8da5a113a53b33fe3f0aa4d132e66f77a488593786bd78d512e83d1208ce1f11068c043b63c90dacbf2b69ded708678ac9e24088ba52b211e443e877be49b64198beb756954cb0fbdb595e08f5bcafdd94a8b3925f2d0011d52fb30582dc811459ab79733514da80435d774b41f053c867ad7ec9b2069cc5b20310c1e69c8f7252c678d3e15f7ad66f30e94670160592ec984cb5b717c4c924fda36adc4d5fe1255210869cdc58009529762bdd087d1fa269c95f9aa2c29430a62b93db6674b79880a3776ec2dd3498a34e56c895519f22e7b2743bef5f2aa375858f0be6b6d133983cecaf863ec18b284e2094302f5ff16adddc8f32798b16c413fba78ce604c5b11d543e9abd7d1db3efcf0a76f4fa62c690acabc0a16a61d236a8519a4e9f80127a44f9dedb54d1248c743929761b9519a7441f70b014a12985383de907ff059375164adb38bffb39575f0cb5a26627f180dc38d7efed7209a9d49e7ca5ae9308d9fdd7dae68bd630b6678b5b7a9f63c60d48af2bb5e795100d3d591a534477e31dad6710606432df962d618aa9c8e2e4a730027e4169668835946f4c7a9e5875a54934f408d41ea569c7af8b88b949622ee2b95ed567c1c4d284e834d670d50dfac6ac1d476fb193f1ca145e669431be9f6a273a1360e26f01fd231e3e7f92e0109584d9e9e26ceb202bbf3b2651068b65c79dcceb9322233805110a926467822efc4196c1e05ce183b54436e62ce080cb6b89d75be934bb47e4bada07561b1015fc959779c08fb1fbe0401ee4c5a7ca946507dcd8d8437c1fcb54e2c4fc23b90afdc2f8d820b26a3d61a6f3e46fddf4d3f3fe3ae6b970bb6898dcbff482392aa38eb2982ba2a686ac466ea3ecd66a7e6336625899736351f235893c1cd7b78d7c331fee3e6ed67319cb7f802576ee205a2374793161f04f249a266809f55db6aed61a7405309262f4e3f293256b9f3f73e572856c91e419827af50cdf5fcaee03ce150c86787422b0eaa945af027d7b423884027c2e12b1d3024819f9ad652962f6b93f80a87efc3e3185073a4127564e259caf5656565619403a71c0fae9802bbcb6693fb0031c72432ce9def60e4b2482fe04faafa402cc3e81ad07a336f571f705b695409fa0e60dbe37187ecd42608d81960ce1d5d102e115facb10a6a0e95d7fc5893df29d062ac6aba80b1bec0210716441a92448ddd7fca301b992c4f8adffd935bbf788dc9339e3361ec2280ce33a067c1221cd5324edaf60393b158f2aa8eb415c33f5cf05441a254bf709d0bd2c0a126f32f0aecd473a8661dd6138eba25c2e4819fa12cdca014710e0edf9fbb1b5f7e79096efdb2b09a866fe4653c9de682515f160051a5281fb0d5e7419cbeee6d37e35c294cd4ea6592d121cffc6a3c13ad7b2cfcdf3f62909f0181a150092fa25101550284f5fc8c426db5a6796ad52213bb47a58329b97b9b8fdf059ff367ca78c114a91e9ffc36d08d595249157ff54540b576c05b82ec6cebf973f8034b19160310aae6a574f89f52da0197f09e2db1df0e8d991b7a9ee45f7d9dce1772307b666ca5a88ba183811846354641465cadc015c8e0bdf46a8fa9c341cdf0a9d3329b1397b2b2c190ceeaee8305e1e366a30dfbd685cc9a0face9f959e2c2c3c935f719c3b98194f863df5a23e911545210228dc1d9c453d4978e43d4e1373d6ab3911fc8638b50c99b06899ac341383aa12fc5e64f82c3ebd66aee5f629b042c90516c1dd117f533e5cf2ea4135d316ff051e00147ddd51cbdca41d3877b5cdb48264412313a7b4d7801f8645ba1606d46f0df3156b6ec3ac16d4c6d36f22fe768ec2ff19c884a56138e64c2b4cd27c9ca65bb4b5cd75f9fd561c5a3c50d6989de3f3d9f7a53eac1a08a261e45e41d7924f744d7f711c9067040ff148de85eac68285eb33a88c6cbf8a07b95236e4ab85b321ceaa3573d7a2a27da6c8249214894c25b984411863ae500b2462523f05ef2b34612a0fe194272a6c44a01e53aafc4256830f921fe9524fe2080a5e048ba72505967fceb5b57ef1a3d1533cee432b1184d3eb986b656b3de688b3e6d000291ec7e852807877ea2045ce33aca5afbcc873ca06b2387e7b98aa198ffc07906f52d8742d86ea55bd542507edd233865993600f404907ea47b06c913dfc8a9bbb7de17883d3f03ab9a21cd387491ee954f3722143ad12e45aaefaa12d8fbb03365127ace4a2f220696c671d5a52fc55074d95fe7f1c0831075d3779ceaed65ce4486cfc4348a2ae8d96d97fadeb7d1b206f22708f3ad01851d7d619de20165c7d7d8cef8c980ddf1f35d6659a55e486b75ec26a84595b27bfe048637d0f2500f661a5f781733113372af0b06c1dc3dc3830756f0d5320eb1556d481ad232da9f57c6dd97bba4a9f0c7b5a6e018e76cf08bc06a65c03ea5d4987e3da52b81c8f6bc37edfd9af77f1c781d3c8421a437d3580b0a2612ad9695ae65345cf938a491591e319b41fbf5407fc2c7ca49a46df81d2a1f105cd4999ad86ac09dd9ea8987c06c9a0d2ee363c1d599859c7af71d102b114d296d2379e4f0084192b76d27bfb66970d0803c3da018f7dc1875f17b3551aa2d8d7d43b54d277a8780fd5caa15d78250fb1b3366350fe0fd85b064f9589395185b295fc079cc43a5a5a9c6d0e2e8a97b2bc6d5fab14b5ecf0e7d4b4a9e50f822b971f2b82814084915e25f90a345158ca830f287b1a32a580b9dd829858aa672152a45b836c62a836838b478dafadab62cee2537692edce1d1f70ffa5fe86951ab01e04f87796ae8d67d6aa9c67f55b93cf9bd40c4ea6d0d3387612a9ad39c12ae4b331074859e36ec750f9a91f48ae82b953cba507cb2ef86d3ef18e0500b112e6f7f892142d6b1d55ad71ad5a4bb99d63ef5d2deff7561fe1dc3661361774810607f8a5bbc2094354a124c8ff8ad06fe4c1b82f633c36bb2e22fdbe1e8f96141f9ffb076cec3e314cbb811646a0a2f874e2962cc37bddcf0db9e04be7f8c685141ce32ea51bedf8a318acf5d746fad0d36e0538d63c03b4255d3ca33ccfb2c11fe6e00c6fbba4759d890168bbee3601182ab116d34939a0644dacb216c7762481a6eb34c2119aa02aeb41df49109046aaa519624dff664e79239709c56f71b9c1eb61bd6ad521c27df5d0438c6606ae4ab57266c74491f4915f0fb2850a72a060ccce5e6871fb6226f0990d56fa4ba0e2e7952c74397ee01b389f5f70dd3231bfdf25c6d76df4ebf0171e57658b231933e65ec6a28e956df514c6e0586744b1ea04c684d5c908a5da04320c400a46dc59a36d62a8774ceb6de2ca881c5f54f2df4b16e08e2095a1adec67b66d70d307dff497be836e2ad016053d5f75fde1ca607a232f697d343f651333e20b81b6db36aabf88bb7f05d44ee370c1bbc5b4820725b1dec5c9ca8ee9124b1788f78d168d593b0de983ac5bcfa7b76eb563822419968b0621083b92d9659428a0a6dcf07ba5254730f3c4f966ea6d086ff3243bfa622289896332ba43036225ac61cf29937228ce94188f80b511b97866b0c71e98aa76865cdef420cec5e1edddc6e4c841c543f508dc49d26dface41a369620909c31e91099b0f72e9add622662f33ce1126fb3c4223a6822ceeaa962bc87226048d72b9e6bd6f6550038d627f779e082180896315751e106f74eee12b1cc6c30135b92e4163b91cf75f9bcc1c19fd897c4b0fcb3f21a7c723b5aeaf313f7531b8d599c142fb9bc3579445e33be41449b9c1c3b2c5936b56051ee43314a6a103b4c1f9e344d93538c0ad0f5cc1dfe3701469a2445d5f309792a4555ebc39d4a7bb40dc8e0ddba013f7873ba5e33e163b83fea7e84efcbd12e17d882477d7e6edfff7b01497b2ad903002b04b6256e6acb351cdc3600670fecfbbad1cdfb904fce9ae2639178f5ca7d3544aee96eaf7d5844d20fb9049d5c890bb47eb915d5430c2ff7fbb3744ab38e8b68fdfbfb6a97bc9fe7dee1922f30f81d6855e29818298cd6fd23cb831f008fb4d5909401269a88d69968adc386decb4bee12c51523117c46a5f93bce6d699fd5f6f6da8c0b4667fb02f335647d1373d9b8fbc8f3f144c313e5ae0e5652134efb3d41b6e7cd3ba5bb02a39d063d73126de83cd89f966b5e08a5746ee494a44fa0dd79a91191cb5a1f7f4fadc513948ee82907320b3d07be0b425dc5713e61c9db4f2d3ef1efe258c3f0821b6ad71a1e1a753969ef1a3c09b9231708440d2d768d0c160d9ff9a57378f31f4c33b6d0ea64ece924c5441bc70498df7cafd49cf097cd3bdb6f75cfcd8f0441e50e46e502d0987aca24866a05d8098fe7652fa2a5ac1457f50ecffeca9398333c74b5404b15b43f0c3b1e717faef36bb40b605ee795a90855a889d9691d2a36e039dc85b491f3ff45c5d24d92e3b84519e431f407b0d86d7fc249ad2523226e1b3b154c8a33a4343bf4c8275d877ee7a39cc7c90dd10e7d3e317b169c74cb88887acfaed3ff0ee9d16cbb0ad1d1b634f53f5249ca271883e6b9f42332de2a9f048509fcf2a245e0ff9125441a32b69bd15e72221ef54ac22871b385ea7dc665cf4e84799b0fc9bfdc10436afa93047053523838029a690d16a472fadb11c90ea52dec815923d53dd3f844631dff3d10eb7684b3b22f85daa4a08c6a93b88afaecb7841b2fa3e60114fb320de37821386e432f2b846646817cfe56d379cbaec801c9477c41b545873cf9ef15cd782f15205f763619265b91bd1c07ca45ee8364b64a0b8f41b9c966ab53a01dd51b3d4f405b8c1924b2902f5dbe5a50b610199a438c03468a3fb481cd9eb76f870982f274a450f7789a15482692d332f7dafbf8f5fdd45c161e6674ad7e630db8cb674154ec1e90859874b1d6d55bb73265360b731e33804eda8b2eeceb9e0a33d49152cccef0900dfaf26758c777f9ec1c27531c402d0163233c357677e9561b1a568d3fa5bf6af7fd3151b0587ff9096cf3f43235bb920cb28f5487aa7b5eded0f20a4f4ac0f24b604afb3a385a34182f5795832e0dfdc2f37bc81a9cf119363ed85178d2a0f2352e52f0ad34c0b9faeced3d09fd3de022cc2323cd45e0644d2c40d989a3aed91b7d89f6346d7756cce0b003fbe2f2aa7eff18ce3179b844b66b41b50a66580ec64c7e32a38ba30baa4c9e210b489973b725fbf453a3671ad93750e47c25499444795f3e185d20a246386524bc9caf760d52112a61fd833a19a2c299c0a48bf6e9f13d4fd8c7cc5bdbb6974cd9bf03a493ed4d92a520b31091dfa5b517d9e18960ed1414064e1de1c79637b877d71f173a891e76b872560312fdf1317d4a0b1ee3b3602c91055ec85d8035936fc70976cd4a7da673469103f20801b8de8a6c67b19c99e09e3d8e910c042daec65705fa05c56edb0cf7033e7ebb70a5bf9ef8e8d06c7707c48d274c12296a6ce848e4f59c709abef64365226719b3551b87726a2a2e97e9697edae44e2624b4ca595e02d882e3cb183ea30e892d61b98604aa69ca639cf1c084f77d9bfafd79d2a628a7816586503e29014f43aab65004017f961847cd059b4ef121ac664e2072df0c8476e5c8ecfbd35449f5c3c152c3ae0ac7b68e144dc795ec62fe4308ee534ce2f8e18cf016ad44ea0fa37d7e839156e76b55512893e2b000623bc35f257544d0ab4dd066d10b70b76895876bec3ab6bc685d2f6c352a09550417969decfc29bb00c8278a408fc345675d45aecce9da7bebe780ce7f8c286af9538172cb68a6acf9ca2c20d66875195a2c99f572bb0cdf0465e1ae306db30ec92713d33dd51afa725022b2f19d7d870354e4732bbb291167815bc55745b5c694d4c50a777173a5dcb2b2b6722f16e70dc31d31853f1280f45d5d66c8614f193b4f456509523e9f2f44296764df570c26ce651c8068e3ae3bf394cc51d4171247a02ad1ce26f9dc9e16c26cbb237d60245cd0963e39f18e45b7b66f916ce57117bb8609bf72bd414fc2184c470a7f6c391b327a70c43e082c3dd78b262e365653bce006036657d668971e148e64fcdf4544abd9e98d75b3805c61d73a9262a915f78a7d84e83c7f0ba244184f295ce37379f2501eee2ab87ed4a9c0ef0bbfe4dff34d47b2db8ea832d1b3886c130e95171f3d20aed1cf1347d00198212aa811e48851bc3b8ca4a56fc1cfd045f952a56db46643fb2107b5215c82d6e2675fb2869200b2c4cbe6aa021a78809878e3275c757125c6b0c931efe92774636dfeb5314772395b950bb3dcd4891de224941723bcfd3b6be881479890b16843b918dbb8908113bb52c2946c24215023c33a7c4a98671afa50934c9f9b01687db9b0cda606f6a69058bf8f98eefbec8f8f166517e972349605134910e62b7dd2c4a2750732457b3288a24dcc0c701acb023ea36722bd511913aadc9fea53e41e8d8a842e29dec91373d5505f2531be984f14a2392a3f3cb9e89b5651b1f18ab6b2c0f38c587cc27cf53f7890d45041f6f7e59401b15a82f88ff021f10fef826f6c4c833942e737802d6b84c7b96acfe63df6756efc21eca96dd51e634956a5f625c2b1e86c7f4d7663db896198fd919af122854b20ff0f09e39449b0a9d89d631aea9a2b3a081f9151c05ed8a20e6a32023239293f7aa28beebd73a4b78eaa4804ac025abd4f425283f7110afc2def95c8c82134337034b2143a9a96a149ab7269a65b089f666712a26847f7067bb57dbe80044218a089d3b5677afc639d8fbcd36709e3e5b14fea2bf89d40db64a69ccb4df43f4b065d85a57fe61a9084d9fc979e14cf2b1e0df5bbe5bbf7082122750506184fb6eff753caf18076e57ee763f5043129a7dc64b08851300a994432074418d63b0f1cc873bfe3444063892f7f5eff7c374b42bc8965575af0f8381b35e2a35b2e6cd2a3d402a33ba5cdb89508031f4e0ac381c2c5bb2be73224b199a1bdc2b320a0ad9ed61d5b858423a7a52091da233a108a602177b5083d451ceb9037b0fe086a3a7bee6841e1746a9f804182189e44bcefddd1ba519513c08ba734256b0e6e3a31bd77111b1ea628ba3c6cfa7784bc78be9e37360186830995233d31ca8b27035e5d714ab2d8ade1f2ba13a97093dad6a65803b95018e66f51ae793e2bdb34f74cc243d5c8d71febf24a7366f45996c5f6cc3bc6185b315a4e4917d8c884269b2278cf7e91174322c37ece7cc3de0c969641aad833559e0a39bd5e04a8f41d19feea66c115833786549d1b13013322015c06fa78afafcf9316b7251f2693117b73060341635bd7ec20505ca0f29af8af979eac7532360673b8d0beba59c4155211084e7681cf412d92e656f973b280f64cf66cb19ae3b9f94c5edc62e33c070fbd13f1bae5b7ce50b134a8ae2cad96e298ae0720e390a3f7d804f998723356910db08d86159246bde5cabab6f1456ff52df51cb98f85a9da7208015c89a66e20fce23142323b4b0240130b78be49f5eddfa4a008ca5c20c4b1cb0c097b535e92d5afb12783218314f2f7221b935ab2eaf4ef7758731291469643937c0ea507fc33aa288619489b86e54d661bf93f8d0bce8e45ce7129e6b9e94182d5cb651edd3aee4ecf1da697f9cb79cd135b402e4a4779d0865b5083391369ff1343ac1b291d754177528908af6f63e5ecfda2666628b666cb869b93f6922bba3c2d156e2e4c341ff7ca8e33b994904a6501e38150de4cae4bff738442ed9d700bf3c524511d7a8dbc182bd7bde7aca136c78614ddb765ed35022c6367a44a1745d25a6e4ae0b445e325b5577d6eed436adabebe85719cbd6a0b7ac02476bc5010ed375f3fef98c87d374240092b27c3989f7c2bde2184f54d3ddf1a45d52315fb12a52b8dad38104ced04a0343c5355471e9e86319babc16323a22bcb6052aba7921e43a71eea340bc7cad2436e59e24aaf2ebb31a77538abbaca300e0c99d111c1ac11a3a5628f5d61144a32912eed099fae675e48a976eec1cf48ea63bb6341bffd26def315e22f7a25f7db5d764903a7e2fa372eba0e3170eca3f8e88ffd6f458e728347d020d1c49e4e1f1cdddb0cc29203031482e207c341cede079bb5cfece4390113f20470e9433de16519bcdd8955e5ca22bbf552438afb78535f7e5eb6bb4b67ed9c6d1c97ceca059309ffce504a137376a8ebeabc59ba2684caed02ff3001cfbf8c93dd8ff607a4f7996cbcfcf259c95d0a0ec5d633a0577ad4b51663e1227cb81cf4015c84b92aabb5bc5ef69bdbeb05a69dfd963a7790ae4d4265f6273f1901a1661e12c67c1fddfb56c4eb21c9086ff5707cdf98bbafdd9d5d135e2a400d125ec78e495010f5bb884e37064f185f6ef336f944f7b1e80b020cd2a395488a27ef61e6f7fb75f71808df071abc5b8105dbdb49512ae9a4ae85f8bd741e26f4f09d03eda21b4f1061e21f42dd93955a36b095db92d4817827a81595c89949a6125fd5210b9288a2b56a5b17c72c440b2b2c6d3d068187f12eef613b9e992df54277e8b953705eba3de9c49fc40a89239d695b0cadc3206e6020011c13c75ab796e708fe6c0d8ececee63be546eff5fe4aab894754de1b5fb63e1ab0b3b74304a6041323538c302a5c0987a1a1f47ce58c96285810ff8570090e1abebe9413409883166d45f86cde362e4d5912adb7b347043cd5576c37bf7014ff6fe31717e9f1df820a2397d09b596eec0ea1d251c5da46b790dae6dc9e5f06584aa2b1534976c9ebed613d215d65077bc14ec41114a87f8f6be8abb2ba63f131b397c058c1da30bebef10608be70d07ae31c31f4f287fcfabc6ce40a6a36a17b730305388b10813c4733f9bf714a4292d745a9bc29abba09bfdcf32d093c34c5005caa01779c82c2e4d3c5420028c5e12ba07095c2090b00e6edcfe42b8a0fa92ffaef2ed3d52bfae85486ae7c710516c90447d23d5a61fee00b392ec34a6e1e485c4b607402a118dcff65addb23618350816e28176d3f72e3a17dd48d0f80e872f58a474f634ff955117e8a59604e874be035ef43b1ce89d12389508205bb361dff9e2bec090b7d979052399ba4bbc1ff24f561046ba48f59093e8ec465aac5fc6bd10ce4f58c061f4f7b2cdb3e822c5715dbac5477df31b0f6dfe6989d95103422c537f5a7ddd91ce4f77c7bd0acbaa093b7627ea0aea3011ab0a5691e8a4ed62a713fdbb3c0df67e1979c2c59cb424be18f981b03860f4bf3bb106ec20b67f8ac700c76eef859df71f70fbe7ed40339cd28ca0f3387a5c0293893b0e4f3b19cfb611c053d36a4f2bc32431a00ca7e67e1fcf686fe835f4711a16b72181bf8903ef84f9fd2af494954b8755b31e8d22e779708bd6cc88e11530fd13da8f5f4a67de901a40c205ebcdb2a791e4ce204a7b2e88f22736ff2e1f94833c530a021a854783da5ba1f016ea4cef440da7702484b6fc7e0a2f3011233300bf0f0a83b0a48ec1b46ee30ac42ef320bea330824cb82dd5108fcf469213733690b2142ca9068402af211b7212bbc01b07de3f5260050e3feea2feab026df6ae4ecde045c0679330a881ff06e22ec81ceb7c2f42c5d1df8af7991f8b7cc23194f46da11dd52d8c431536f8d2dbebf91c9b0b6d50c38945e17d0e612058e8a2465576dc476e2cd8371c9703b03cc96820dc4baa4935bc4357072be616ec6dd1130beb67bf46721721d840b8c1510c9c0aebbcbb9da2de7113ce57d6f35aa89887264a048621584683ac53c1991ed0f96de88aeadc9f762cdbda90d3a86c965af573531b9799c11a1350083b5676c388d39516b2ae762f41e7ebee3d3c6155bb9a628e7803aa78d8e335eaf028b5b54641b6517ff4cf058b8c597f4e7477c15803fed30d39dbb96c959e6cc2acf15e33a1ec6a03c0237701f367db2c09162be86812936625055beb30179d61de83b7be47647bee0ccd8ddb234321aae9bbc08ea829b6ce7894ff0766f966621011ffea0f9d9d27c836b61d3b77d5aa675563c5b313613bbc31b8b752b270347d699ead26b4753d95ff35945fd58cf1ba104d7e835758aec4b2b2b904ae207b89227c42febc2a4e2096cc084f935da3200e5dab88acfc80ffa15935f003e2f51bf989649c24c83e81509ff72a0f0cdfdebb4bf81748f50a0f35ee45e4482c35600cadab9aa017b27e9658a0f51041b074d032b247c3d0643934758c037f06dfd786865d02d02f1eb3c59f8e0d736ed71c5eb922a9e1ae13c71f933a9580dc86b92a7360f25bdec63adeeaa08fc9261ef6cb9af8551e8043dac755fff2443875633ebf8e9cd0ec50a5841913dba08a7e37be41579b62eef7778864c035d9987e5cef17b4683d62341da443c17cfab379eab3e7923faa61192733608066f3cdf4956026885f62b574a158a1862ff1adf8b252846657eee132cb1cd3be76f1cc42faabe71cddfd9ca3627a3844dc34c059184dac9ad91e32ff3643f639d174c755892145077d4c3ce6604420aabda64bec239c883c2bbe59bd4b1be1307338fa985a1156af99aa685660841b6f041ea837e0f7ac2bf9279f2748073dd6a51616b9fda1164e4d33438d18c04c55d51bf3e4172431e26150435e88348a85204c9390e83b79eebd72edf5ec82a33c2b5de35d1f0d71990b69550accb30694608786f7a37beefa9cf228c97c8e94927b181bf88fa644e022e4cf764dbbc732366f0f05f6f90a85e859d905fb7f3a60918db37f358789a5e459881277a5c11266d0c99ac2e7fe4133cf1cdefd292eaf8356ed131babacfdaa4cf412d1ba539d80d86036350101c415ed33baf3b9f31492e50f5a5fbb7c7a306adf7d01bcb2dbc4384f86e81fcf0458310fdcf747de857ea749184aec435497248143a97eec10a54be5ff59acd08806f16507ba9b6ce02ce146d7ece0559117761e7c4927361c5355c71d2cd6eb32cee48ec73cccba3fd4468a815342639bce47b5abc8241b0336e15eef7e96ca877c6708c9cc66047c43adeac9b35f101bc2e5312bb2df4c16e1ab4143d3f9339e2b8113017ea4490abd160cfb0bc6aa18d41daf114d9110e960f004a00ac832dc94dedfdbc523112ff46ebe7dbc92f4326a39cd06eeeac635b33dea9e2c6f673e1bde343c784355ca74c4aefcb402151a263538997abe9a50c3ab4f716ec3014a46cd2d6662832b8cfdaf1f07b284174512f73eb951333dcdd5bb39f8a8d384a193c24f9c8e9d73e529ef2f6e9477d6bcd19c7d27a77d5933d118b024da32a9667a1044ac8046fdab94ea879bc1e10b5f4212d6021dbb2ecd5113cf0e503114f839cd591ed3fc5c8ef6ce9cb23874839f69a2d5ac031429c362304d39b5ea9a1823f6a5e8a8efb76551fbfd63f6ef7b8cc8839eca07b7afe8b3be34f806a68e03f7bf0b06776505b9632fdd72d3c78bcb1653fc66ea93825e525ce57cbe3ac85e22443675cf2b1a049917445ef9f924ab03b01242c6c918b413c39fb5fa9b02e1936c4c9eb4a66b16d81e59e03491b1a8e8168dd500a0b8c5313f8711d217326a54498363c26f2ad0b5e5a75deed2780a1971659f21b1ee01f2dd7493f01d60792ba8ac4bcf3d1d9a87d1c1b4af38a2c1b9db7c1903e14ab9d6aa91cd32133e528e3cfe5625ee2ef8c11665813971745987653c5aab1a739776e8f70a3512bfa3491e60394960d1662ccf7a2cd1b496a4bc5d18ace546ebae109048299d1673f589407bbe04e3e3bba1c0b0ed329438dca73ff180a5c88230e01c51f2c9163ff19f0d36d1028be06126bdb2856dd3222ff5b0761e70f8e07c0160129b253dfe8c14c6670ae6ac5efe08314bba642d43b5352de34bcc1b44ccf3c406b016ce4e220f07d048a44224b0d74f252e34763214a8c843b00662b16214194315a5e744542158953921f5b618f976d755063d808887705441a66fba08f1c414d2fd1d4ff8d675c32acc75412612ddc11f14a45cf712ff3b30a6d75e7033dafc4c811a84c4c5e3df95388f2d256aaae1d50798c088ae35c6c169c563e4b4fd90e74c1684c6bbde8e5261cb0e9fe96eba000c6dfc81634e5465ff947ada9119268f79c084d9d892d25361487789384ec120472c6462af1a204b7658a7daf20747660d26a1b5a98d3fe2834738b6a4b1c4c3daf48eb410c821213c1f710cd489241539ae287dbcdb5308ad589b49ae34c6484da7b4851949761ee3f55b13b3f9893610a6698ad25021c134a9d4a588755ea28fa90915fda8930f15edeeea7691add94f228645fe4401dc7dac403b63f7bfba7d464c61710e4f5fda5492eb2203184ba377cc7062773b0444f183e7eea4103a4854f08fb15ea31b103c04f8d114a9ca1c2d6925755196640ac13dab50e2c4944750ab7c508685fb6ec3c55236214742e9d5a015ccaea96cd8826bb7b3889925863b2a5e99213e687180e187415a0a334f8c739f1d5c1eeda3ba348af07ff1d4214bba0d31e41516491fb9d29446fb7fdab9b635d3ebcddc204458a754effe304a70d04455935bebb58b31e0c283316958e89f12e81f1d96ff6c84806888d9db14f4acb769463a2814312bf8d33b495226592630b922ecb660b3fe9606491310f250924de80c3c709eecd05442d0a1763bc7f1d3d3ca9cb6984e731e9a10758f0675f6c997a2afccde0ffcdb04cf94f94bcd60c221bccbd70775936541374588250ee9d74085be5e98320ae9d20836b12c15aec0e80e6da285a0f6042300394e2dcfaf0295b6bc490cc40ee943f4f7a9860e0bf5cbbe79d4b1d4f7e6e8e6f92defc8d5ef287cabd673d8807140c09e363653a85c6881d667576676248bb95efc8688b7d4321b81e580c3989cd154955473b28f07dc70eca3dbf8faac41febfd5b1036db52d4ca54f2e5a30b7f16b25c2ccbfc6a4cf058e64074336641ca2d9031a405648ef3e3940c52db5a173dca1d1a8387179ad6907ba6a0f3fc069f00d1f910d6900cacc0155afa873a8a07108d827527d1f6c17bfbc71d4e6325446189da52f3ecefac06d27a4baf78d401ace639413e50596eb8efe107d2ed1cfdcad8719a2681b2a90aa1d34d5d49a019721beea0c9994502bd5fb483f3a40ded51be4de9529d6d0360f9cd14b573ff0fd1ad18d10c39383567a0f55c79d2957adffc1990af7380e88160929467f4055bf8738f5e76d8a0af3bbdfdc3b778fe0c694252f191efd25a2fde31e1ccfc962e3f44e834c41a304249f5e9f94d3187f670eb4b44ff44c7db0b64cf418bbf2f396d4ae0edfc50c0cbbd9325d660074a0c891b052844eec4640583285f069eb4633538e28df25d198c85d5e1219a5ad4f9c28414218a17c6bcde58ee9f29e460368528fadac9e69f7ed8a44c66a1c15627cac3aa5114bb0b10872bd4e59c83d91f459b7a83c418bfad5c34ba9ff7a24b20895d97264f96335c0927976e550cd972d206a032eee3018472ae89ee408b5a9c74037d7d63fa52db5ee8a54b91cb6b298261ba5fdfd109c6a7a0ea19a12fdd3c8b9524fd070bc2ca4a2e478d5634da639fa1ff310043633de9bdcd6083a8e346f7790b98e7d4351136e80095135e7647a5039e07f8df89615a3483fd828cadbed3d2dc1bec20fba8b588f5f3c16bd13ecc07c3665882a0f04369a639ec5ea0b5e7013b55e9db30248545c7913d65880de86f5c37ceaa4bd478499b317a7faaa392dc1e2c8e907b42f3c42400d26e0f55ce2e5a83ee7065c854ad8472a58c61905ee8fe45b85d0dcfeedc7df04629e103c676bd4ae502cc617076859b3c404bf925337e4565c9cdc3195af3dabf485a0a67e41effd0be0d97bc2347bf00aaf1d5ba49ac33d36d136615a4c0c03ec4cf5bf33fe3cb6f7cc780e30db428102e8ed0edb50e59c24bf0948527dddd50d56e38436c6ea6c2c3c59826805cb34808d3fa43d08c2667b2770fb4d29088b09fd531952bb74cf879a70bf1de510305c40a2e40e2ad0830284b1f4b23dd1de93db92925f94ca8c997285725aea69f8d57ecf2808ffd9dd58521c6c84a9ac4383855728cf8a230e8327ef618edd1db2de49efb7766d898d7084ca7a61f7dd019060337006fcd3b85563978bc64fc8f82deffdc7c3802cd0f1542705ec7b0f6dcd69a0505834ec0465f9a283bdabfce9e2da639a3c3d0b84b1ca98b532049b13b665271af35a386209a50fa857ca20e21e9b7c3ab591723154399a8bd02246f54818f1d7101ddbebd890fcaf4a70c95745c71f008f0c3dc6517316f115a7d42f56e624009ac337b28b0f6c427db1e35a56d4a5401d6d6add14628df776beda621b6c01ad9385083c49cc2da605c0d668de9879f29947150e17791f4bc2bbc5c98732e1c205e9cdeea47bcf8c3ab93a76e5ed676f40fd9a90b51b91368403e9249eba87305a88900c9600588c17c9fc6fafb76a246cacbdfc1d1c68250f9431bdd60d370328208884a5fcafd229010e08a4cf0c6de550e75714510832ff548ae1ccc7b4228b177f36959ac6a9dc84a22126fff06976bcf5c949bd9b34df49749126b435d3e7c64d29b6d0b8dc2c40616d24a6ca909976e529aa59d08a54662efac8f3004596ef005c07c3e7f3c75c13969813365c8c6b27a1304885e7a7dedce0f14773b2aed6624b13e0c5b5159b74cf49ece37d5f0cc3ee9165c6512785fb30e81110c2647cd75f4df8eceb4a8094894819b4b3f43bb39b00fdc11a8d6af7b1801874d23016699ffded4ceb7c900ba814c751ca74b199aee3ef29b55936c5e768ee62d22f8a9acfea2fca63ab2819fa0d187cbbee4d7ea300e38467e04fd2a4bb47c315df089daf270f89644cd17929f1d30e62bb2f6d593b6c73cfe3fa5cc835b2e71a328b2a54270df24a291df8229bfe1e78fd96815602d2100ee1d29ecb11ad3355d2826cf54da205d011df258139cc83fb7cb489b60e0d70c1c8f0f7eceaa572e1d157cca7aec3458c80ec5bd5f5d28390c6ff9616e556aa44a7b6b7d183926627a82f7233cdf1748937b3c801acac7e93b231238e01664910347cc8f8a03f4106711525e8303e542c40acc98dac37a41042443209217a7022c03996d0e067416b85472ffa90a9888e28ce5a279bd46234219da17fbcccd4ed3a7d6a24d3d9912f1034e85e7618481e32d0f7168cc4f61507d75ebf185b2cb46b4132530cc3f5c2be0214068c12af2e538f510588837706858ad55dfa2324fc08599d4db7aed73158e83f14963b5b9378e7b83beb5881d07fa8dc20f72930ddebd8a5057ef315661d925b3882c5f0e2eeb878d88126f3ad73df26e238b5636e7e5eaf364a3b86d9702b16a1839c0adbf1513f6628560efa796c806ce9638c7e99975b98e802c6a58fb0117698108eb2672dcf21920d4ca5c12e9d42e48a7710431feeebe00a16fb65b3fa80d0514c822e79898293b68f40269fa757db66b022c8def89aa539a6eb9a800651714fd296e7c6f166dcf66b12603b9d1dfad9cb6770e2b19e942e546b5a6c4e496511da2c6caa6859ed9624d80dd2ff57dd2009975b7250297d89d603595dcd686db79fbdc435940b8f185e689029539a37ce71b9c09b58a201f9d6ea6a5ba75ac6a83df433154d53fcf45d9bce3565b383d1875803d32a8af151c5669f8ba4d552543dabd60b53b660a4ca6d3fcd97a62ca52bc01a7dcec618bbf2e1215248e8e62304da19456267c2493609866c1d75d15c57e28b98ed0114741293e17b63a2a81e266511304236b4697f61fb5e9e6505af3c26fa7d16efa03ec5470c4f93e3deebcd586191d78d041b5430d1b2118a46a98f4e468964eb80a2310f8309faad77992b6d2af68dc90c3956d9232664ff40411d12cbb24ab6d284218ecc35e7ead1be2f9ab912e98c458ede7a5aa077f500c7255b92899465bc3686a4f6015f36081bee9056d590e8c3bcb0796c26b78c341c3c6c3eb137718b0a4607e1e92f149ddb682733c8dbfc6a3dba406febdcaeeb8ca0bb4180a6cc32e0e53fef032c0ad8a4b38042a4c46f9dff85928cfe4e1d0c2f0e3ac11457fbd8f6d60dd2d66bd147b5a0f19b5171695a4e74e386fe2cdc1633177c779b5b566db9123e11cfe226f2ffd1fbb2f5c1441af217f437ccad21e0183f9cf440fb031b5134bd616b3024746bae277cd5e398f71bf600e9c714f5187e305d1960c8203fc3506bbcd46f0781a4ba8efa0fdbf8b134dbdfc04979e68e02932b13f111d093cf230e1ebb2ab040870ab19f76abf9944e7118035014811956e7c5cf6a5c93856bc01fa032cd3b450ccd9cc36cf95b3bbbd1fd22eb742d32a9bc39e503738ff9b5b09e345b39e257864c43fdd413326c327df2a0c69b62f63e34a3ccefade26a2f64a07d8010959625908699043d42f8fdcc2f0100f7592ea897e3e82ab0c0f10024bd9bf705a097d9c72bb438ec547e73db5c33a91d68aa23f026d82e9a5556ef640115a369431d82b4aa45ef9f402c3058dd9b02ca50741cfe22b47d636bf545e0d83a438ae761148c484ffc28e28114a987fa5db8faac226096116bb05cd71d522f91bd2b98217752f66b98689c1d3e303a8cc3aaeb93cb452f6f1cd3430a581163a8c12bcfda13c40cd3066c4e04d00277a7c02ac12fd2209f467261558afb60264cf6102122afb5e62f04cf357876ba7b8ddf74d353308423c973ba0bc55a80fd6052de509e81d8b572cc57c3e5962a1ad0da4618ad63f4f4f8f168f047ff935022d3b1fc23e0a87bb8184e6fcbff5b38b9091e0926ca3c06f873085c57cc0645dff668d68c7162095d79c203ddb712002c6f61104eef7ddb3b0a4096f8ed43308c6c16978277494283ded75466eeb345b70a549c94862e13f5216a50ef84b553039ede33a1ca3d67e35458c25794cee59cb0cec0f329b6f63faaf580d2a963ba23f66e6fbd5ea04822130aca308ceb622bb6d23d536c443e848fce1e0860e1516c1eceec7c66269d552aff115f070095c5dbb25a8893f568c9f441dfca9fe17e44e64e49d319e74ae69f5beac631648bef463759eb8f3a7321769bd0604d8467c38707b716fd042e836c101b72eff2794e7c753b1cd332ba47b236080dd145264be473a2b8c0d00826abfce5e81349e755cca304d2fc3f74cb40e212b445a041c176c8fc28c5fa81a8cb7075e20e757c421b6c4e47cafbb66d43819e89e8e2cad9eb38c19e420215e35413d79b1f05762173e517b34b94e553d26126e0ad4186937b7501cccbc50cc7273a85cec8270cf2df4d988b516a0a6f6a3ba08d0fe403f9bc86b9f64951d4b7691b9679f365d35653f6005f4b2de17e2c5dd3c1d3456fc3be844457f47ed0ab1862d462e42925e87ad799d8a391f85102b792a227a1b2909a556af5bb7eb5198ea51ff01f28786027061c92a47967cd1be39b8e4921406c0e4f2bedbe57b5b17beee280e2884c3db774da679926688314d47341ee80228679b618a67e8389f5a987a78057aef5d03c73cbbcd47bc43b6b0b248d4d97092c8f79183abe03029a93bcfb5bc457891900b366a7f040cefb5a1b0e225cb6181ead5c3df20defe6a162ee3dfe126373effdfc45ada5b575ce7f0b65d7c4d31dd726cdb1a047ddc2173644be7e45c6ad7a3b0feb8418f35f87a40ae5cecf35cb23f5296f71586719e3746c5761f7adee031c8cd6a32aec0870a1dfda908781991f3331a07bd06ae7961b4e9a4c486feefab4d11f046fcf896b62c83871d4436112cf4f10e07cdb144aa10b25fe509d6f35334b55ddb2e19e57329248db89536349613e7d1510dda72e8484aab1bf002007d2666c94ecaa9ce537249bfad4c37513a0a799dc5fdf1a25f57892404d9de0708a575971f9fada73aae201ca3f91c48949c1dbdcd728049f745740c5730f38dfc7bde4ac644487941521f2483883472baa08cf7fa89b03017b7b579eed8794e64743f666b79fd5cc0dbdd3f11104dc7bc3f2a9ae08c29f94d2588c9acc985ba3c519308fc4411844162003ac81165659de877fec7283e9cc8d1041d955df871097bb87df135ef74b76b484c8a894ea6123002450626277d7f3ad9fdd1e5317d5a2cf054b31090699eb869fd82ca07342c209fc8c970512410e5c7d3e8458455b5e6273fc4a8261357ce43f177444ec2a2d7062dff2e1a07bf79e7b013ffbe06e5c0cff1192b1f0378668ef1dca64e580529766bd90d8ba23d721da03bb86a05b5bf4f7ed83070d419ec30a88741590a3125297b9e3305a500cc9118a797ec62382ca93362b2382c6487e3cfbe2638fe1f0cff6d8526ffee7e46cbe9330c763d81899e79678a96c6dd7e6e200451139b7cd7714ee1b3a5f7f3142b196d5010cc5b1563161d3d42c149e65a5b0c4817e8b849d1e5c7759d66a95cd546a4309f6396785676be13fbb5c13f778c90170687c85e1241d0628302c23e772a1831501205dfd7fbe9f286a2dfbc6ce30fc25575a20a61e03581865ec71c92a4a111cc0628c1cfea4e633ec415f24c0a1aba177f7b5c72982b903fe4558da7f250a1b5317c9b5a115f0fc47bedd88f0571ca2290d9cfc097483ab3180302f3c0c998d83070128c8d615f178732a4c81f902260479c15764c88a14e2cf768072947901acd7412bbfb708dbed5da6db344a0c73d2671e8905723a9a6cc9623cdc56d13c8e8218a32a64d1aba192491a6e09881077b0fcd2bcb8b255ad4af93b986b9b4d829916f2abda61be22efb8a8adcad3e29a7a30a6aafab1df78a9dc92e6c6be3a38a26992bf4ea7bf3d616667e0f902671cc18f194994ad87195b38613c79fc618585171a609e9d5f908ecf81a973d8204016577ee17a04520406b88b071eb47048405e97690326697aea0b0e4da48a730a93c895b3853cc71d42dd1d6c843103c01f9ca15b5de4226e4264348a06153003f1858f3593e60480cd7e5f08375d2e2e9f026fc112954f853b600ea8bca545f77585ea8cd8284a799f91478af1784f0f754b4c6f97a2e2e026effab15f26e6a98f83222734a634a8c277d2b882775b73b3996a53781b736c0a67f28786e15448c89c39516074854f8a33522042fa885f797863838ec96cae59feadb6eb5b13ca92554419b65162b37583c262b25a5cfd77730e795adc0cab8f6d3e0bcd55c67b1ce610fc115e73395c7dd3c68fea3e34a07d6c191d9a56b1b14e3c77f26d312c4a09bef9d27bbf24cc16b77a0e7ca301b4b9f0d22605a18fe0eddbc6cf1b15799fc7f55b7ec5f49553a884e4eabbef6d352d339a774cd7115fba0e65e66e729c5ac2a1e587fc8afa237d9ba53b91668355d69177809d4bf01a9a0f2a751705a1c5de50f8f4f1d9858fe2f6c11f1a1e8fe663d44cffc5641b04c62399c0fdc33ef3bef991e3a9b88d8959d1b500a061906457aa383f2848c0d3e2b630883df5128120f15a73a627d8c0c035cf34d8c9e0b24fffc4aff31e1cc6b5c34dbed4b06dc5456de29c082a16139c76dcb4893bb303097e2f29f39a3812b711b3d7653128fe258de83ea63a9e6d47383d28af0ce3ef96ff78d50f316107e3f15c1c41142877fc965bcea51ab6147705f6bb88c17aba0cbddabb4f6e56b4fe5410d9851379f072b753045303fea8d56d96df1000f02b266da45221c4053b526c09f6f3b5f74a055f14defe67975aec945d3e7ce286f4ede10bc9c501d54e3030a0105b64d240339786f35970f3ab753c09347509bb00e8f43f4c454db272ed3f05decb569678aae1d2415e111de13a27dbd9853bbd050a0dc78b7bd11611d26d4f96a8b0d58697a6bfb93c255c642e04373b30ad32728c6266351d3473eb7a37bc9a0140ccc636c9c877339de218e325bdae060bebb7eb91d23fe5bab683cb2ee9dc3566e5dbce389e28296777b2408f403d98f0b7021b8e72880effb6273465fd839086a0805fa5a7196b911607a8d653261f8170dc29b1edc80aeb640637431f0a20336d42a3a49a25995262839de18514a33b15c7f68f3433a4431200007ec452a3b5ad22d98ddd911314ff0883ad48b832d2b657ed506d5c9e484b1a1aed4b4f3b62933a65400c025cadd257a7e86e6436c8e57c8c39ae9ddd564597321f39e9d825c75f4425de7c5b21092bd8d6dfd49bcbf5a87aae89e412405b1382751054bde5fab0ca812a15df389ed5012dcaac29e53dca3e43d3a8bbd29236bb614dee71355869953dd076ad4af87af060116b995de80c633d5545c4594d42f6fd37faf035f580dd0234f9f2442ec2710e0083dc26642cbc2606272bdf0909120861d98ae3276b665cdffa7c53fa3c74cde847983168244e5ac7afa3b32ed5ca404a5b6515d58ce227e0025b4de06409f9997340c324ff71e4fe9d934dd129ef5db9f18503f22a3bf6c6531769b5bd70a5cd96839bfcb2347bbf57328bc0e039be66b8dc83abb24afedce452baebebcca304b2501b0b84fe5c5ed9f1dbf16db4de81fb5294f5aca5e6653d4abbbef34a4e09ae36136992a041e93001ad22957e3699d95c8228a1b12fa0d49b48c877e1bcc182a95cc1cfa68440f8b6fa0c572b190db203d1d6cfcb8f151752ce29dfdd7e4a03da86a15919b601f155a1cc288107bc30e5c6f623fd145c56532a289a340a1762eae8a4cf0b24b8c447fb7112732b55783ce3f92598dca296f153a13143704ffc47e121b15e04b27d4ebace87fd82a6c6d0d099cb5c368126833dd47a1601d22a6b6c912d083e7ff7c5e10d78663a896bd4c39f5b2e3447fd92eafa9aa617be50a8bcd53c81de11d8f28364244fbc8575fe63108fa88a0cfc9b3d1503cd2b41441a7d3a4ae3c12c0085e467a0bd1dc17601f6b68d4a701c8187e3217ddf18b51419ecb2376e80e1a3a5092561ff066fec02323e8309187a057e94aae555ab03b94b9e42fbd81cd84ae4111cc8da2b1ee34156af7e6fb5bdbd355e685dac33f27df6770a28915548ca33f671d2d285aca5ce20682bea0bb966fb5b35c198ed53028d4d5a07995a0b3a15eef56de5c30af9886438e8c021ab10f949ace160bbc6527b0037ba0b9f9708c19446416d28e9da4ee08c2844e15809c8377299d51cad7efff16ca5355347c2632f090c83b3be6d4f84f97d3725116cd2b65e3a5d9236a96e15a8da6bfabfef2c7c45c85d9a1b1d57863cda723a601c8c86930f3baa31305c06a9457e48348a3e273f2e9c41f157a0e55435f18e36601350924e0a15cb9d9b56c76181e7fff62ceb43dbab98279606e4ecc650ed71e1648a1514c7806b451bb140419779d0eb2389d4e27bc98b283d73f383f45db28baf338ee8a120d62392548dd4101e24956b2ce823b6f5a60234b3dcd9d5886e50559ffe7899d311b8a374fba2c9cdcff88044e2b9e138ceb6c231d320ec45291bd4052ab243d5fe562525ba520f7a8cfd9d4189b40299dffe85638018fb57fb6dd4a672f83d546aa36e7832693a61954dea278cab42f781299425e7100f3e9276ba94763c96ee9e3d645eb60ee93c4c050904651ea58f9a44c63594efdeec29c43f8e7641ed6d9559b73ed532944e62b723c851d53f03564f3c7453c8b3495e54ae80a23a6cb46aa5f1fe32e9a69ce41ca3d1f8dbab52fa68aed4c522185f68d28a1cb14e6068fad0b695106a7c748c537e26fd4cdf9e76b2c970f13e8a2fa991606355a1aed5ad10513d751a9ca9f78b31eb00c353e461ad9086cf83376188270d38805ce8c1dfbec7b0e38f9536f53c8bb906a28762ec7a8a925e52562012041bc88a2341c00489c2345b144740d1162b697ab1dc7687d903314865a7eca9c592679b19f10abb50cf7c057169a30174cea7f414d7211c709e80841ac0044401b298eb627439bde76d1dec2d6b335516773793f81f3a4874c830d460cf720caea74563f9e898302b516ee05c2ae9877a37592bbc240765a02532b4164933a7faf255d74955dcde204d4ebfe9e19975c48c3a35a999a94d8619d05064064a1cdabbfa207c49bb2474c558ea14762c8d1bfc5b30896b6ee53284e25e7250987f49b127487d0e4082aa037fd5bbe9f5215925799cc59dd2e5b9ead31ca86ca295a761f46ab7048bbd27ba11fc80bf01237a9e1573566d61432547f3d4739ee84d200def0b127c8a04672af6337e53761633590487998e822e355ba09c5edb1fc33d709ba4477dd29b71d8ca372f4edb783f18a498ca9824e69d0b44bdecd061b54aa0b6ad45bc8933b2e19644f94ac906ae9f90455a7d596f5f1885561b190d6415d97531d53d2abeb25c339a5f321a8b7722404b9e376bc5cc4a51675676e0c50e9f49edd8f62c0a93cd4b2988987e0819b69fe23352d27c3018063b3fe55f04f5dbce6432d3348efe8bb38a55cd7acf058e70affe7bf66a5ce2644a0fb59eae83df88b490591a1f15f705a3bb5c412ac1a61d852b25e83f21bcf3c009cb84f89bf6ba097117256b6e3dfa26b42468017ff2f9150cba198213d5d698f378fde4ae7b5886445092e31c25680a1ee14593bd8d11ade325cfd8b60525fcf653c42da4de9888f90ad82140779ea72bb5357bb272419a538812187a1fa0cfc8938390cb3c957a2190b320734489853a9cdb19c0eb2c496bc594a4a9e7415bfc5ad97bdfeccb71b35eeba7a1866d089f3734d2a3cc7289d0fa2caacf2e8312fec5db52b51d5972008704ca5e4ec779914303867c04f5150873d6c0417f21dce05c8590d2c5bb2db9433889a51431ca513d81f59b94e8b92109551a8d74d401728c7a4e8a5c7baaa1d2107ff80118627ea2893bd55213aea07344ded9083650c4dd85f16d587dc67235931b5be6dfc59cc0cd217747cc2d6bd5f3101acbc4908f79ab5e82e16bdb15a09b413fdec0d610061fb964691edf1d7c54dc5f5e70c932badd807bb1cb81b18dee3d07aadab6fb6d15001a7acaa63cccb669c2e90372b2d91b14b3164b6b5736563349ab49e807b4d68358d0ad90e94166e2c367a158a87bc1faba2f452199132fe27af84575dfa62dbc6cc45f2d4fd168d0acd01149c9337793f568ef38c112fb7c644f98f91854c47be03d1d2c88845708a738c3c66921a18ad70f9138a6bde3ba90bfff2e14278a7f291faf9409f9fe038edc737170cac6ae73cd13374aad502d126dd9a5d6d11351deaf5f13163189f66218a612b796a37f04bde130f12a1e794bc070ece40e5dcb67793e4d717d730a8603806533df57e29f3ed9ffdf5e6f58c45281945d96233945266d33610faac2fcea44b4d96f324c25d8ead90e684b33d8cdf32dceb9ad5f312c1faa5409b388c98826ca0557a33d158d142597389cf403fe5548f98de234f67d3535ffaeeb7ba56c32020a7d6bae2816c99f5984314523c1069f23f394539a540756eb3e399ea988d069622656e80b6a478a3e5a7e6302d61d0b349148c8d78a3489b8e4ea621af7d0540aff5585ca82df62b2856e1eab419d4f105f68831d1a50c8e407ce222afa231944c4e002a24244879b934cb1fb4210cc2a05f6429f0bf7b1e7571e109a4046057c800bac3f626c89f88f75a6a1d336e17a240afd6284c981de92aaa0bd72c08e8c63caa72a52ab78e2304f2dda21e892e87f7a154057363588e62cd5214d5459a2e15c022678530969a0dc14965385c8503c8709b0c0d1cdbc6bf8f3d151d4c2236411f1edc7e11a72dd27213c51dcac472904276e753b908dc3318602e6015e7a0a29be46f1353192812f710d39fced1c1bfe84991ec249158dc1edb3fe90f7b86a96d33490f6f65013ed9997709226440cd376485a1f378bd9ef7af5f9716d6f0559e0dbd2d9077657cdf010cacd5a65703b9d695a7637670909651757244fd3641df66a25a74c3d4661b136fc94662b47d70eac9b9e7ec0615af200bbe194267e38a730ef7d35f3118a41b60f7dcc46fefd42cbfe5914c21caad4a77800469665ecc36d7652e7631f8d3125944a9100841a7d229f548a4b1b005563d94711c275a4383ccaaa2c0ecdce807b09bc2fd4b72c8f13afd4832624c0e2dfb3f529d8cd6438c608058eb7372de718135efc632088dc40048a3e5cb96374c02790ec2e60554c7cfd605af148c4c15a3bd4072048c5b08ca6eb5922b757617e305153fbbd14bb380c9e72cde2f411a4b5fd4eb63ac89b4fc287c5e43268ebd3f8b6c93f5e729f88d953c2b0351ed2be311a4c0efc674e71b4db3c3849d7e7083b06f173405235053f9b0c4ed69e3ddfa83655c726ea82851769a249b7a95cc7e305176abce1c52d975e7b450c90ccf4d885e602a6ec8458f59efad72fac54311784428022615499a5ba0cc287d06bedef272a77aa321b2c913c288cf5a9cead90f70665ac5c3f6300c394e2b3615347c2326aa5fd07f50a2a298296f61f2946cb4326fbf5850d0775164ae90164d0b7e30c7d209913f71e1b8fbc3f4b9156ed1913d89ad56898e2293c5b2e199affe791fc8fe75cb171131b79e9cd75d4ebee7d6253599e27b2fb52051f8bd048a712c1da96246f7c52b81a31faea1b17dce15df091237d81be8b6cbf4d9a86c68fead2714970e3b5a732b1a5039ffa5a9eb4983483f39d56d8238f12c0ae34eab951f1eb74a7772ea1da2e659887dac3e0923bb3f7e12091cba01820f9ab4873f574b7ca3330e6b23c5d10d6023d49a85b850681178ebbe5cd91ba6c048021369cfb41ee481ca2e2bcca1c6cd8df28e037af5ef310a288049517fff590268c73db33f885f741c898e42dbe73af747eedae374135d09e9c474134cbc6a11ff3201f35f69c71527c4347aa439b8d2a914d328c5f0541fa41d8131938cabb5587abf7f1276ef30642eb686b13dbded2984d6e98047306fde26bdb745969529d2a21a4b7c0af01beb78e21381504eabac678a0e4f372e2f2ef1dc72f6df7637dbca20cce1d9078902e96e975f39279f6edfdaf2bf0d7137a1e7543550399116e69caf5803a5400b9f9d86e3c8689ab253345cf291c32d89cee4f043944e8c330d7ed3be1185212db4f728d83135a2fec9829136754d58075de6a12155e4f9059e4926a37ec0956bc34959cdccb85491eb4ec1b74aa24b9dcb4a00443c68c60efa7556d36ef37501d31632db54dd8fbb3e8bd11ddb8924c16b8336e676516b1581277c5ebdb0ae6495d22d7f5c1bc98e6948e999b55341156d44200a14d5e7f4a5a29e2f195d1be1303dc65d1bed4a93b35ac7709cfc0e5d2d05ce447e19c6146df8b7863cfa49f1163291e33c2f39c39862dba8c5974d129d42d5bfeee560dc8fbc98fce9803efd7722c890e532467a6cba5fa1ecc206e9f34ea3f6ed5dd58afa9c63a9f7a7225130b1a6ee2dbd55ac0583cc3a075a37edecd65670216f60a0c71bd56534da44003f75d856ae9f34b435ff1c9389ac574aad6ebf1084657706986980ebb5a2193a745814ee223f4e470840743b82462300af53d091236f6e4366051747079eafa05be604d69fda77c6c30e7135f2e525b61b9cfc2e3935328d1c4b0392773c294fdd666fea69c9855aa4365bdcf29c108bd4b690104411a3cb0ec633e45a892e681acc755eb22008fb30b63e30587c2aff4e57327d316c1b00d5fd4ebb0d79ab52d3a5b553ef10213f4eb402d4296c0eb16003f697d8b6494471452cbdb7d67a2f7209e49cfb5053b9377d5030d62b0354b88c84a492eef0fa3bbcdedfc41298b464c7cff06e799607a3a3466dbcf137a33fb44cd850e6f82946cec15218b369e2db37d8e91049117898f192df2a19622b7dfd6739a6174608a4c8f26786eb2f6377bbc886e395c08baabdb74e2c42706bb0946031667f66b0532392fe9d953675fc9844ebb3a793a872b35b081326158acfdaa41e1b37459f9ccd40456b005cfa90221cceec26da9d20e0d6d83cc61e09b29406d095e729a8d27323ca791afc15f7cf1c5dadd1d16dedb7f232cc411b6c056a9424c11c667c06e2fcfe15a80a75402bf58357fc8bb4c0f824e176aa59450a864988925497b6f2c658b0d398b6f052ccfc3a97dd5d0c1cb07d1597726d5d532f82b751e16d48ce089e49cfd03003ddac29b3aacf83bdf98eb0787b8903aae8e8ee277c9b48ae14d676dcf8de99f8b0ab28883203ad60b6957731ab2f6e5fb44e65ba38bed7e9747c7ad8b045ec7d1e87053d7a496945f9ce6c5a342e1bb0c487ab179793de9babc94af38d6c02c5801f45e186dda014c182caf51d1f5ac686b371425de8cb41901108474d499cbeba33ad0c1eaefb250003e671188958e7d1eea378d561596bc58077cfcd93ba48a960add079fc5f0ace9f801e33023d3aa6896f353e015e38f9e86082647311f15f95d0098d0b58028b6e7193c5c30a17da163c6e0b2edaa97c30238f38ce92066879ee25efb8904b6257fd5306703dddc9be861824263b8d8b104bcd58f4c4e8f58910dd8f5582383615d9fa40b72b24bf37764e8f05c6fc7e017c3e5ba3f189f151dec4917d558d18df393941c748e562a9f111320c370d91fa0824cfb4e385711ff7628ff65ce4b477e659c7272bae76784ae5ec59afffbec8a5b44c5abb601f0b8370ffdcb3e3756d133800c52bf2bd295962c44129b61b86116fc6483b6413f186104456031b63767fe058ec187fc9478ade52f90ae39416bce34e3cde8df360d1cb1e689e295ad50340eac9563aca692a601d862e8e80a66e1e014696f35b3c2be381c3366e55d04bdb57765a5f4d8a18eff0f858b625545ef6ebd076bf27fe428e83364c179274d32691485bd7f011c8cdbc76aefcb10dd1feeca5c794d0ee8a7b451c58d9cd1cdcfc2e39443f9ba4a9644c5ab679b98aa1985a00b056fbcc5dda8cd5b930e805e2be8d8a0b9caf11e392b26a24ecc6f724174b031b4313fd84406ce646d5e897a5d7137d1aefdeef05b444b38bd18a25b72b7fdf592d009e4515ce6a86099c9b4acfcd0316c6e3c604a30ee1dbc2575bc20495319af8b974d8439cd08aa376d02a673e932243cc5823beec51ec36c7d95c1abb1b500691be21727d9eac9a5579fc36ee5a2da74579c5d36dc41c6a449d816074e0f606b7479f19b99290c18d1a87d1360807273e8a58a3c54560e4e826f6d2b5ff9b1bdc546f5abd16c3a66e5bd69805e436c5310e45c17eed4bf33dbe787faab1ad12769581c26d44b7941ebfcad392a82ba5708c725e1f60a33a182249de172550602adb556d65f0339c9d38442af5042275b92e89ce16abc293833d91caa65bc4950a6c72b573774784811a9e4b245e4dbaa50dbe546bffe9c2c45c3ff3d6829f2eab3cefed86a5e28684154b41083254d97e0d61eb2426d064309af2e8ff8518a2d01fced7798b135b37e566c39d892e19f0c3a9938fd93822d865856bdc2291728a2ab55eafd346c2c7ad4ac644bd1474d69a4b897c73614dd04dbb04234da2813865f64e00ce0e66ce4de50ba1e113548db0699a8fb3379367bbb41e243245b2c336f64ac57f710a22358ef89fc66e78cda817d3766b50e5e7ea34fa9759972def592cdb14ef7b7991f418e36af85ead3122dec98b90b65368c0e86121148ddb17e90bd6c7d794c819f2f372a25c2320069653c27d545b672308f93442d98e06035235ed9b71f74eb039ddfa1b062a6e99d4ae0287dc0e82d8593a83557e88acb539a7c8fa5b95a7575aeae6e62c607dafde1911fe72820d65e9faca125c4ed6a01159d4560b2c7e8b71de66feba30975b884382d51f5efe1c3dae480691b5bf10bd80f6977a2a9638d9703e0e126052e28d906fd32500fea3a48a961b60fe6e612229f7fe8a2161592460b0a2432f76b03e726db4d1c9a3b3018ab40c10223f3a078921106aa8848479b9560876438e240a347efd7b68b8ed1f25f685810d6e66db5d500c3b059410d1594fa9554d42a46424b3b1aa414681dd64232a1ccf76e83ce482469ad95ec799430051d8401cbcfb46d580967fee0ce6a008f4d9ce6feaff60957233162d6148f6f65589539fa1b2c99eccaf5bc726a2e12ffb70a5b10a4e5dd1c3d90fd512f728f9b1c74c569a48577b5ae8497a495ae3e17c6bb814ddd4fb9bc4d23bc56a20fe4f719f1a0d8a44e43575553ef9e482ae3f77e14656601ceb9b3950febe157df49abb9225ec2bc4d007df6fa7acb48def7824082f0dfc645f7d2f5f28506f95b643d0de22be836e54abb1abd34f5e2eadd17d3bbfef381a5ba700fb08c29145abd5d6203049796eaa2aab4801be9987bc63aafb1ba422c2ab8e39c3f955882d50afdd2b1582e9db34b742926707fe75ba869c6ea2a52d7041cb74b5f96784e887099661436badb6e57dd870b9e3256ac3bc47900fbab820cc25186ef0cb4fceb68a61ff420f7e408fdacfb03b372f72ca42ba85517d3f555887b222d370cdbf797e57370766fc7a1c7aa94f55f09850adf0c1d0ba4cc11792b5374f110a6c71036800f847ab1c6151c51fac9194b4072adaf5055db738789162889e67eb1a524a62fa2a1d8710beed95ad74601fbec65d32d2abf251e18cef3f3d70888f970989687bbc248d294d1da10d228739c78b7451ebe9fc65ae50b3c218761f1d96bbad870883601467aad0d73a085098a6ea5414beb89717489dbc41105a84941f75ee1bfcea0a8bbdffe47c7365b21eaef25567f25479d0db34be4c88a7eeea10f163207e0c0cc4ac4ee89ad40a04b14b2d9a9ac9ab0ac03a80f04608a6268b838449ff794405b24ae52f4d91be3746d199c0cba8cea4143c1ceb943c571b602a77d0bc68c52a21539b38687ee663fbe9d740202b18239b81666e92978a9e9c3a0bd04cdee1421f50e2cf53dc21ade502fde74ab478526df2cc5414adfa115ec859a91004bb2ede8c55f5d50d1d959667ac640170ae9a5ac0cb04f40574ed0e5b6742fa8d1733ffbcd2f1d69b2461cad899d1ef7c25ac81e4e4ed9ecd9e67cd04ed8c791d58572991fe9f418929f8601da3bb97166933bb115de044b3edac0556bcbe35b6ac2311198eb76fe06b902bed7fb914a2174d394f7417715a4c90c7f83949ae30ed09332728a725d4761baa1c512632539fab3703d937824d99745d036cc3bba2b7633c3509251df521c29179897f7afa1fbf4e2cb7c86166e9ce6a80596d3c3abf0ef92dd6eba549c7215d55488ad6cb182046cd80eef323147c226f1de910ca2472401e066832e8317c82f5bf86a814d832809e241a5767c73f3ab127d96716730454e1339c856dd5caa091566308b4ed8ec645ce2b8b3f0ae613e0dddd132068412ff3aeafa853aa5dca49b9872426c1f98d695e7146224ebe848ef3e7e4f5b834dbea5a9947a7241fb63021f79f0362bbb0d25fee0723d8d61fbaff6b30607f54a086dfa2bf77271654bf25c5331802e9108a890904cfcbe82d86d0133395786bd79726ce691f9123f44333cc7109f3770a1d8abbbc4dc02034ce18d80515b223b9d0e001e9f52e8ff53515e40f0b3c859bc7bd4660378fadd05beacee8b67270661d51636068c8eb545203f28f377444d7a0c494a3a736a06d9f1db76fd6271fdb719bf7b74ccc5e80eb328332755822367f8857263ab0cca29706091c7dcd1dd186787d6b99ea33ae373959d89ac9d6d9e8c98d98ec1b08ece9288650784d2f284a4f34f577f60d08c5f7dfc4716cd25609d2c3d465451298412d0cd5965d3fba1f0a9bb281e10b41213c893e875638ae9a2358baa904a87a28d6b0c663f731f6b97e26c51132d4bbf4b52166e08466fdb641dbf7936a095a8d7c71ed37a06ed237b91a31f32a744e24a1734ac306c8c24b645e390e56e2c570fab828c66d270811b51076b2c4f90a3b813d9ee642670fc33c6cc693ebe96115f96c10160254a6a8aebd67f058a5b0efec3be5201d285574d2eee3b7761424c3f308012ffc67330413a546326b3094e011e0f5a49e777845cc604b5e6e29bbd1d5c11e862e3560da0a01b6a51bc7923b50567935f80d52efaffe84879cbca6c3c433260e9d693440882d64566929b395e736d10efed4e4c812a6b07735475ee9b3e859c1f947295391ccd8b55fb3c78e868a8e874d33f715c26f98a8419030d13174ad31755f9e22dc2bf88f41b69056bb8e72fe9ebc0b3800a13a2842a9047cc41bc85cd41e967bc6257ea4ac8bb099df77fef60124987c04b3c120cf30fbfa7ab89b75fc373786f1d97e23d2898993db9babb2402de9c79c6a22a6a12cc0f47cad3b6de209dd09da8e312ce17f244d4c284cee28ccdecfa09e0936fca0f3398ae0c9464f52bc041739c247a3963e621cafa31e673aa55d09ae8c4932fd9823ac0044b6406e0bbbcc84dc3f3ac179968517259903505d7d57b6a2716af28771c984dcca2b5a07a7cf3d70d964976a2b6845a5b48340a41f9220ad3184ab036a61e180b6973b70abef1237ef2216a47c2d0a7388fb6c8745a18736e127664ecbd45e424f1b0ea861db18718a8b2c5b5748b14efcf3d7b73826440ca8fa4dd8d121d8a01de91c73e33cfb4a9603e87f9da0bfb710d808e1d6551471981c7af3d7c7d492c6dc2f756dc21e9e53a31830adcdae98a851640dfb75c64a4c367d957dfc23f8c8af6770a9deca5c4ce9359216e42d43390889696be54ef057714e196167d940c79f32dae073a04b2193137abddd690854b6649ab6408c57544405c623c95a6399cd5c06f4b10eb70c33775247546f79e5e6364e78f114995863701b9192ad87989b19eebc907ab908f86fd5594d4c1260eae6ff178ed9f47c10a215483fbfe55183341f3e1e0935499089e29661b55dd6b045c4f1b25b0712e56ce91e064fae744f58fb7721ed3ce17878b3187ee641c46c8acb2a78a32f98ab131aa47e3be362b339b0d17b1e02d760911a381dc1d69f3080e75f727325afe8b9dce323b4cb2a014aadd0d692c839b38ea00477263612a45c650d7f86af64e105f2e540ff1752a071dee183f7dbc0a471af6278ea3f9d859a023c9439d6afcfffd02f45afcf8b4a1eac2353558b99804b1d26ba10776ddb2a895f9b841e32cd1de04cbe9cd6a6b24da57a86e449e321027523a88af13a7b3eff23ac02efa205aa440cf686d281880774bb7e0ebbc06d0f1f8ce7a501c884f992963dec23ca3e45a05bc6228ab0e20600731d05b725f693a8bd2d8b9b31cc66702354a6c4906ea45709d4f1392c812d93514f543785376268b33b721f6143b0d1014bb4a75efff82d6b97081944004a1e4cbbd301b6465fb0bee77d72849371daf2ae6265a7300a0e5668cd40372564cdb0a3c50d506cc6e606bf4438a0ba0f25d8c736927e51e3e060606b9ae9403cdfc118ec20379ad27fd701547dcc08308339f2e6edf41641a8fb5e8c5b4dc456c07eaf60ed30056cecca1ce34b3fe6f536dfbb3013f782477a8e0b15c8d33e222f0f62b30a6edab68cfc892ed4977b95f48dbbea47c96d487f673daec661656d16bcc5dad885649fc6aa956f89b9cfa4999997d1cc033edaace2d297c399ad705f7d516e648c7a084084040513d1a76e9e450f9a50f84ed32b24aa3e90b1ad6905b8a37dc08dcdf06c02f7ec55929ffd600365371e0703e745caad703cc3090ad119539a887b7d23258e35303700c22e2ca2b2d06f4d8f3fe451a1dfee1d5235cf04bb4585ade2db2b348217fb85c93c2c78450f952da833f13b29dffeb9c63475fd07c65ebe6d1aa699d3a1cf15e3a2ac0dcdd86846a293969efd69f1ab4c2ca4e1946f0305b2a6da62ac417c0858c89ecc66b30f105c9d373179082a8fc65da0eec7e3531feab3c443d703f39512392091bda00c49e55096c11c4904f7c908395bb0f6d6583461669147710af80faa1d858054f8282763589eb879df58d637131d39f690ba5cd2aaffddcb7c3cf4e5b13f102fbf65310a475b36078953dd51e78bc5afef797c0916a0f701bba8067a066dce7db8cf9a0e2cc1c588a46a2d691c0066f485814786ec24334f8d7948e559b472c7b9b6be9ba24df88d22736044dc5e0b9e85d8821438e7d4dd2108db90eb6b2d5dec1e6d6d919f091b1249c451216571abf09c206b49475d3900ae3b8a97bae374706375f86701e446430159694a0389795502ffb51b8e4d216628bdab486de15f2096dde390bc1603266ef022c6a578ebb925b7e664021903d24a6def7363313a594b324d20a3c84c0a3a6b29eb618e771d112c6e1ecf3edd31965fe5ecb4040b56c00ab09e6c2d580e361039ada4cc55307f08a067b82cf7f9c0e5213917d580a0e3707432ff9920ca91bd0b15c7cf9194d213fb78618512955e9885274a3a516379c0f8a49f179dfcec592c926e42812855997126396f809b9a5c5e29bb7ac339dc92488bbd57f8bddd0307c4874562ca56ef984f40c11fe654476da7c3f93ed5980461e178f8d15e94a946bd66246ecda3e78d7b364dc3aa9a572be30051403958fae29a8c2095b57e953977598071801c35ed8d97793f08252a438ae4563065ef99f83f71253fc8073a1c9ea6ac4042d7e341788db224b84c83d7bc5f3f756c1be0d6cb6f66215ab01d1575335b48e889bc484c8159c395b15d35862595b8b8a00e6c3ad6f701403dc80a7c1e8ad44bfac86507104801bd2a4933168e12b7f7a0c1574e1106943fe7b2371ae79fa047c0d9877ab184402d5f7e46b9accd11da10ce3bf0233943b05a8c34bbbb09757dcfa298b23c248017cef234d711187e140b6bf72e198115c2c21a558386f3c78e50cf73a09b62c4469c3e3c977239cc579f6a419f84da11a14c765ae75fa74ac715f9ff7da83e401cf6fd80c19c62f4d599ec85cd5e7cd5b136693c4be58d936b712aca25c674a5a1ea7130b11ae09d38a8128c27c8cf9e4f3b7512fa39d2b8dab647f61881847c98cf5ea2db2ab5a3ed92726f83090fc455823f195ec4a0b94b2984db54829b59e225051f7847cdc73be57342131cd9d9a847956af2210df9cb62986ffa02b17696406a47359504b08df38ec46f22abb879358f67e8ad669f97d32b307e57f1e153573543c1ce5566a91020af2cb9cc0b7a13e707507ca5d54c742c53e64fafd83e7f139588296058e082ef89e0b2f5c80f1f390d4a1da53f48f9140cb098f665c81a9f222382196190b793c06adfce7526914625b75a7eee622e6483fc477944f3cf73904e0114f40a77e9617817866bd3669350344f9b94de5953499503520d1dedb1ac75f3af64534b9509017dad037364b868e9373011e7a2a22722603d17103663e2423251f028c354aee373abba11675e55394aff79c6accebc6560ebad92c296b264aec76ddc3aaa4ce7aae443f40b3e4ed4657105692126ad28681401f3ef93cddd46298046ae43e5c888054d0b427900aa6df1a2dba1da58c3f5c17ca452dc84a5f5984fc5ec6b8978798c8b45013b3e366482fdcd4b0f0f38abf0e84641fa810750f270aac1f89a079bd0b6ef2031093dbba0ddeab149ffd13ec2503fa684980cfe99f12cf9e7c313f5fcdf52ceae4d5908b1dc161d9ab43a7936cfef39c785f9dc58192fff46769ebec11abde5335f9c7880c5bf3f78895e1cbdf877987183922edaa776685eb0a28fa6c595b33815c90a4aafa0eaed3a3b6c2979934b38fa8cc42c846e054d7e58e4c3c6728adf56511c882ce7411f5e4cb30f3ed0af308edb907e3168f37e85469d6642f224bc724ed19bd377c33cb242e70c8590cae122156505d00f32b844d912c5eefdc82d2c0ddb2f5a682a4f4603cf86865cc5c05bec0919b5e0845723d5c6ef90c685c10a1fb08e4cbce3e251fa019e50ea5dd4b58384112f17cb18aeda881b7cef8e30389e129acaaaff714412a3e412242eb9e10ca09a1bf558271b1967154bb4fdbd3dc0d5d64b540aab08d1be9e18f46f151829cf0e4a5c946a368e9c8c8eb15abb2d60fcca5bfcc8244d1145d4ac5a2aca87875afe64ef4b263804fa51a7d30acb531af43bc9897defb811e177eeab7c1533b5f6b02419f8d04d2e0c7b919f4f68055af096b71423cbafaef478971b648d7a8197003825c6dd01009e26c5dbc475600e83fd16e0692ee6cc2f0052391bab74e9c27b8bcec59216ba1eaff23522a45d279f7aa59eaf6c277f6888006dead065b7226f0d683ea23e11376724632d6346069463fdacc47d8cdae6bb3d1541d5d6128f47e0b84c1b64b3a8945329089f4a853db6a0b826b8586edb256ff8ef7cb44956e4a9238a01eb7af8cf498de64310dc772f6935ce6a603858b903d452efef636375131e6397d39107ee25f36e6b63f204fc99c903520ef85a4f434af49ab7a8eec62cb0d4f1d4cac5869cb010164c49b0596d953618d695a4ac1d5fb7b68e57db0010a74f045082253402ed66d650c35af3532377721e8e9b31926db0426c1b766dce6b1ec9e2f48821f4cedf7e6a47cacc769bd3a584c20ac0db785a3d65148302f79b130f25a66b051e67e6da4154047530fef110fc0920b8219c3f762fa635b2b3370d54d397fb9dd4b57e4b5fce15ddb41a48cb73f32ea9823102ae8a088bfebe2ac5f1c8ea75932049fbf4292735b75f4e1aec44c289c13188516f40a00d66ecb8ddae9ff7271c4b92b73043621833f0bbd6f0e4e646f425ce7ff9be7eba82b69802b421226f302fb78faa4ee4210f4f4f79da49a29e7a3be047cff6569f369a7e499312be826391f8ba10376e5ed10e568170b500fc7d9a22400b2ef002bae4d018a3c1bdf1d8a2432e5924559dbe36032e89dc371d0bafbdb94d4d24f053cb0a45851ea88afb778a8d726ee0d7f36a8e1274985d7e7e79906659f296cf121f6e8ee533e0fee9d08c507533aa73ae60cb85d87890e4349170e580b451e38dd703aadc1d1817f438b7171a59886afbfc42649d1b69da1a350378801859b1f3e1c0943a79ebf75be88c9c0e4c98d3a5f5bb07d97cd9bf1da2cc18cf2521e85d798f0012427c8acdc87c582e0873f9e409872541f4d64a218fde88717328421121c6229d2e426bf4e1339005135b144b6336470aa2dd68e72b15c86fe5ba0bee185a2b938e49c86a1c8db16704fe6c521b939f810f459db673f1ced44cf7cad13afb83c20b358810a9fa237544dd1507804cbf45cb75fe4b2e04ad03c5f6b7dfb4414cdb8c31ffaa20a73503436695534f0c1b0b6f9607cc1f98f751218458e17fb297406c7e8d061e9a8c872509a386b15da765c35142413e93df107d48e408297d8a6e341f6611b4f53952718b770f27e9e7a5159ce7be08d8540bff058f64ac2905094f28bb8cd2e129fb57cc141b0dc46521e84cc10a84067fe5efab03f38898a820e73a13661e09e93b3860f507459c43869d35a5cd1c74deaa9867e6013d3c6b98e819744aea73cb1742a9c9991a25e93221471449ebb83f0a65688ccf0701788520a41296c177cf1b68672230b4fbb473cb4327650b93f1da787ce1beeb23d34b62b13bc01ebf733a50442cf4dcc11379983ac385a8f9e48734eca3fc60ea6278e6bd1ba45fb436dc3af297e81084ab1b1ea5960c46a928eb5f9da080a41123d67e8745215da56df91bd8dfd7dac0efc91a0ba457d66ee024247de498ca9b450403a38064d19689173350c045c93a4853c4cdbbb4bbe8ae97bb5e73545315de4f26400f652d7f08d22218f35b75321921b936960e5da29e920372079970d36c68b515ad63579dd481071aaaff4799a09dbe652793a06dd1469630de520c5da3276a5c3769d9ff73d36900a7f4c7b1262d0dee9c421e3fd84b98f0ecca53f7c76df7e0f8cf40b77cbe1b2b83bdb1156753357c9cc8926e21ef4074471ce5abaf1d54f23bc31ecf989c18d657edbf1a12bb6dcddf137e5c2262ef2b46c9de27619de5585d316d8e94fa40de378150577d91c0d65fa8ba5425561af6c5b6b0ad8f49badf85a7ebeb4e6f1b03c223f81de38a74bf99c7ede9ad438b8b0626399ff0c4d7bd343b309e7acd511b8cfcd8afb2d23d6e3cb527a32856a14f5100923e10c22d5aeb45aea78ea42b133baf4f48ed9cd27449c3a8e32ed3c5b43ddda053169d9f8f962a77f4b593296f1ff2fe8f466c1f492233a4e248b0d6440e15af014e9dd1a7a0efe58b57f46280aa88864fe7ccd973a848158d74869b4c25761a79943c3079ea7a1a290bf546cca8cceda82db89619a0602635b3eb5032cdc9faaa60fd13215183704554574e6996f6224d983e3feb42be48a86878d1fe5b96b9ed3e06cdfe574d2c56a29250cf8197971ab10400505555d319811aaae02990a024dfb3ed9ed2e1034f97a9156f844a8d0e91187eee5052dd1643bc712933f92f328bf792f2e0373dc99df76e706bfd8ae2d48d8942770a659992a483fc1366c153ce9348e5f9140e3b6a7c5b3b23cc2cf5ee1ffc40dc1f7c1d715f20e7e6302f1c227f0eb82a35aef57aac5861a3e5f3297c729ede3f63806d9a9434a4ed3fb9ab54d41c38f04beebb4d7f25912c1d999f7bb2b3981ce109b008a25eca4265c90eb6fefa550d300fd5c876029c9995840456328e71fabb7625b65de9a2a583155ef2c465872104f548842c13d04c26ba9ecd4f35e945cc26e486239233039b0ab8106cd622a42ef88468b873a6b9cd585679bd6b420be385d1e4fbb62cafecfd41f19ee87ac5fe0eb90d3a243e555d2a75263c31773444195dfb1c92856afe98f9b7155132a2064c9aa1c6349aca58978978808af859bdf6e0a2d3524915c1ffc644210c2759de8449bf45280ae1475e9fd490bf51eff478c6350f3db044cd9ab537a5744024a769ed9ff71bc847c0863153362835dab0f384c9c3f44a74b05c4ac19a90e3d08ad93e0b90170844aa140c9038515dd3f4792111e0e8d80b3fc8d91a3d0c33a3ca2699cbff6b0a2f4eaa884cf6b5cbc444d94fa60b6cfb1b81f068a1add74ea45a7a69b5d12c01ee8cb9d36d3657500c02221740de8112222d246ecf4ba3b27479324b8244574fd261e562a4b821a814b6c9449937358be3458a6b24deb36b57486192344d09ca3cdb3443330b6bfeea9ceee15e41fff0789461d04c6b50a554a50848c5cf2a8d6ca7c6d24ca8fd1a0398a8124680ddd6b49b2e72651edc11e2420720bdca54a5de27246937faf8c7fd1d426c0c4ed576fa3a201389615462c51086d6852c43feb22d7dd0df18afe76eee693edbf06d4969e3a4b81c19ae6a67b43ddb831b21b2e13204ecc83c192d45f53c9ad25b108e816316d3c4358efdaa4f622bf5f600fd15ce2dadd98efe8ffd03c852255a1507603869656433a92812c9fbeff819231e2804a08b17024a7c69437568ed0b953cfebff697cdc5a4cbc8823feb75b2032b8fd230f23fabc9ade32465db7623b3046f6c8c2dc1c292f610e721b3b6ad319f6255a5cb12b7e64fb827dd91886514d23af15e3a369101601bce370fbea525d062dc534b583f6f5f055f9806de896538a4bd39bcace1d4a59486cbfc7f5c17441cf513aaed37367a24eb708450774c1babc77281f3fc01bdd3dc8173a15b1c83f9e36d253b2d8b265d17f68dc7dd0d8a896ff00d03774d4288d2a46e2b9e3e167e4cbf7d9e52e7579842e6117842b2b8b7cfcf45a7a00cec37574eb2321d387f8142f43da990d980f96c3e63695aecd4ccfa3eeded13da6877579ba1d4796570c8b7ba00e1bdf74d2f37cc9b91095d8681ebb42154f77eeecd70a7191eee46084acfbbd52b86cc0bb9c09cf621b9ace824401a199d4ecde24e2f2111ee87620cbd99e9d1a841f9afabee3f4990dd81287447f9321b74c090ea04836e4aa043908c6009b2b85aa5fd7cba87d9a8fb064bc569fa2f7a973e637c57822120c646008714a1263336a10c3d2172b5ae9fa3ed66251a01c7682cb5d65d47b3cd670e057a2fd2ede3763ea3a530edaf238219c333a6aeb8a54fb26aaaab822db68318ee2c050157c8f78b759559e79d80a804f00601a0b1cd1b2d41de40e793f33d3f4b41263424610bb8c4df27c16c140a66934deee740209816a07406adce808114aa4cdd0dcf342ccfceb0d8d4e99d12a0f8bdc649a6edf94979322a3a0837053adaefbc8ebb8a7be0cf6f77f71d5d7610aee6a0e31b80c2dd1112c2a5a24ee545bf2d2974ecf31f78c252c20c0605744557c597d575d22b3a72b9a3ce4c6faa4da26be554c73089c16b465f4e99d60583b7ebcf111f5f5e5c4f60b9dae69930717e1070416238f29278c6e750e33264e79f22b2f2d26957c50c5fcee1f05f604b683c29d473c1806dabfce28876bea524503e60f7389f948c362b54edfece296fa6bdbf44ef26f19151790526d72e3133f9c059832aef1271afd5806dd817d0033df256dcb48ff91e2888230fa2f303a8aa987089cd9d36495f6128364e62060b27895ad7eae505da1afe311e32272267f55e9bd015196c9ddf3d5aac9f2cab3e4766e4a4f80c65dfe6bc5b52f368dd13525ef099b9316ead7dad1a131c6c9931b8ee7cff1775de63c8479d1947d38a5627c63b1dfe326c68fbfa529013005d3d89363adcc7bacab5f87dcca6c9acdefe33e2f03fbcaec5d92a941774066a1811c26a6922bb01f75be2a4e75477e34ecfe1182e47e887f6470d584f8430f25f3d490a987438e9cf7a7182c5867c0b4034345cd593066df63115b288a1c2eadf46242c2889174b56d6bd8a2135afe0c2ca79d22f44cf14bc5b15a2ff8b0afb620105b704f53ed961030dd359fb930320c811211668abd1a2446a83cedeef833610b93b24ea92b56dc946a6022fc7a1955cd6aa56a2db5c92171aa0170f31a3f82b63a9b13861f72309d2cc4d1f771dd6de40cc84d82c9a4ab7b774ef6732da6c4dfa273547ea0bf225e4faf0c6af3a65f984e7a42f88b7dc5f1760f867ed1bd94da296b47c4b90d1a752cf2ee8f7fdaa89452324407e3ad898ef7a112315367b27bc5bb62b523095fd0a4188d6c9bcb9376a25bf85f415a15939c2ce6224e13823bc452dd493221026de0ae196bb93d119bcd6cec0eaa798e23ef07d4ec7ba5e513af39342e723c6511308dd5dc36fd198e248de0c5a6435d817edaafb0377392719d694d2983a3a71bfa52ab0d12d44a5705424ba83f510bc89da456a0c87f819eb1392a72a071d9c56585751bca80e8eb274a6cada1bd48c2e8e067218bb692c0c6a1e626eedaf7b92bd5223caffee75444ed1be11de64dea85f8eb6837e873073eb191565e66ec96967f1038865b6964a24bfc224338895c5376e3893e4461c194e0e2a0740f7c4934e5218d2f4672ba220f3fcd8831ce3e6e3ab8a6fcbe56571cf9f952f2c4eb442b6fb303f6f90861eaa1ca7bde62532690ee555b816c81fa8a5e876c3ae886d6c559ea97e16099eac8efdf56c431302c709690dbc8260260042f57b162d896dc26dca1668f8e174e793a8700482f5f14700766dd6cc490795787ca77b6294259d4c9070e557bc1d06471c9c909e2acc85448401959d1a5fe6cc351ce06b7f44684e5d61e5e080c5bc0d3b3cd0835f3d415e863567cce41d6664efa1b86e35ed9873b547020d404a81f8c72091ea3a696b4f05d6de7b776a8f32193ea3ac915f09308d966ba1b81391e8ad4464890cac5c025d657ecfed4f65f8a895b8eec1f5ee955a70712a6418150361f14411fda0b91a748a6c54a13973883f864147edb01057396ba051c899ee366d1165da069ce1956ea281ebd805198171509c1a8a7f6a34a5c028c13a46c3125bf77f5f39e216ce036ee5f5be49b12189c2f8409f1dd938ea3a639ac5bd45308bc059ea9ff036d727181c195748f62efa5fbde25bb3309216c9cdd6a44c59859278dba139cfb4655128f2d8e7042a9a7aaf4f1694ccdffff91948e4af4e23358661490cc87c1c012f958393264ff55a954514ec541d38811c28400606c2aa7ce707aa96f9f343fb2a9d4f66695e9d457f3f0229a0d3f1d2263fb9eed23e43c6c8c6ee114c4b31779928fdd05c6606c12e0e612877fffdce598260e05ab8c31f6a42c66e9c901eb8244bfdfba3130dba0b1bd0f7f0170d973f0487ab107232e858ff1b672fb4efd6dc072e7988033a53f990d4631df891165f80bf2aae0b89e96872e7213c76324120b8db49bb671805a408b6bf0749257895bf69b52bc1142429bf43b4da9bf2a5fb851ff8e41bf0a5cb22bce92373eb5cb0e749d510ca6e5f88fe7a05652dbb3f15f87f1bab56e53a38b75040b0776e3771b2872b7124c8b46eacb91c33271db17d088977aa480a805094f21aee0eb88ce44fa5e7918e839aa8b08f27a46c0e0ce36aa0e36867e9f700fbd5b5912089a84a39e28e3869c208f82157ef7c3b9aa22ecbec259823b0f3e08d9df657a222d57166b07ce2d44e3f8996b0386b16f4d839418a899158384eef827e8458454bc5ee5fa3a67a8b226bff88a8e6d0f513ccf0863dbc730246bfabab26e3d46325eeea7134b81d44651ce182a6fb89f816e9dd0ff531ca36c2af3e79e108dec4f6a599780852edce54817ea62201a8d7010617e314a39e2fa0ca775bafb30cf5235a738385d7a271fe9ec202143e62b4505abd6d6dbc1251a6612663a9348ce5187af12abff1ad96e3047f1d243a3e40d194e2ba77c98527479cb765ba46c774c566fa5cd56feef7102ccecf4178e08a1942b725b6110807e51ce91c75813460424770a8cf16dd397fb723316cefca28e7f51ff43d11560787ef636ca9c51982b0dcc232c8e60defe407226d1bbb37ef75a576344881611a825494bbf23be0a2c9628d8df5073fe9e571b50c678fdcdc2eb6ffd95adc440bfbc7737f59cf5e41259f5fdba58d4f95cd6e7819d718ce7c6e74ab7fe6b6405e006362b32317ed9446206c6c33a2c96c5a993e83660ed51725f0ecc3a4e75415e6bcd6ad2949fe76454fb0205edcc3bf4b74c9ec47a713e9a98a64bf7c803f363c61479c7bacb5d924332eea6372de8946c6f18c31e9dceebcef6d0667e3ec060e85c852009651e9bde0fe674ac769b2021acfa703269c9efa111dbea8c4a033aba54d86867e92b156657190f1fc927e06b3a5d4560cb066260d83a0c4b28406ba4e5ff1c12e1c67a41da403fd1a8293042d47e72119ee71aa6f36c74a26db249c14cf3ff4810c64f73c36ea9dd522c489886b09e1b524b09a4342d61aa3836b4ba1969f72836c3277628c222b4c7eb4ef09edcf00adae5c882b4f5348d423235012340ac30cc1f1f0fcc9596432db7ff4cfe91bdb15e43d58b143a9f7fe6d59986d77a41a0c82d52cb62f57cc2c243c023d78649ba7171be3ec5500f921d24b2c702cb79ae1e26c72e433adf5b7061505f6f193f7c351751b791106ddf4eb349b93e0caa9dd75d523932f9365d981b4757a3ede3edc36ca5114ae403810820f70282e7722b87e170f9ff8f1a18b46cdd8a0fda5653d8f97255b157d2d4edb48b9920067aaa621a5d6516a5642fe1d98fb2b3dc7f30208669ed7e2403db58355018c14f6788137dafe4c06ad7b65775d0fa9bd68eadd8cff0f503a265f41cd4080f3c33958dce39e5dcde17c184e72c38939b0ca9272cff2a409f34eef0d5f33738a970fa74c8cc39e37c6cd2ea2968670defce96a92da2a642a7b076f256d03d110c86b684a193c8a313137a43cb4de8e642a24688d0ebe7d959ef5877d2f13b204012e98ca91543e3900570ff5a7181ea7122f6302f1c0d66e6bd1a295723193032063a0e4dc01652c50a5a23b758939a6570fb5d820cdc050819ccf28440131f45559eb17dd3a80bb4603d295e29878bbc3d508a86be7e93cf7a2e58a0355df49de36e1ff3477ab38a31008adc95352faf82ae86b657ee996b974222eed09e89714011118cff8ecac376dc72f020aca152cc277cfc1e5316b7ee035bc9202e307b969074ce54f221eb52f792ab5f7d1192abe67fd69e1269d9d976650d339eaab1f957e04f7de0d0d9f524d58a8c19c27b9a98a6e13fae8274a17d1b2ae5de1a73ab17348f9a9c67ce44b45b853206c11007026972e750a90ca50d447673121bb1fd03afa5c0be264a151d6afbf1ac390a1ed04aae5d6808fe25ad96637121e160d382c74da9f225cbfa1007fb787390cc0fc5808fe50d70c9adb9499130fd24c94ab3df05466e84c195460819dc6f5507c270e938cae8ffa9f98e5321e5aa8829701d83ec59bfc174d870fc209a05b2e57e46d29612f6b355ae84b2fbd71366549f86bfc6d9b8ebdcb08716fd85bdc8656cca66c0044afed0c29b94100735e9b87507203b09104ee09ea1a200dfacf38cfa74d1436988d8b0980b607675fff820f232a2dfdeba879cdc9b46a876291b1877288738a97cf451a0bebacb66a5b302fe9847773f1e99844937cfae08a1f67e82135ae1ef6a559f0e3785521249d4d1670090ef5f5a81254bf208bcd6bf9f6368405479e564a235e76df5ce60b0d993f8dab15a0b0e815074836a2bdb2c4f9389ac1599529eca4dee7012e7f2508a25bdb2c10214d4b023e7066c1ae4914385ce78d43ca23407c01b2f903b155ccfced1233d37ddce990e93da3091dfee81b4cb281494e3bba56a12ba997a204b8f7a88a1d10b0c5b0d9dd289d6697478096efb79c99ecee66735c021be94b117039fbba27f49be411c29562169e5efebf5242449aaa40bf48143f1ac77f3e4929b3c27cdb97b898134741283c336287b38e5f42f54f3eea05eecec483baeb640b8f0929db7a11a0fce90eeee503d25fde1d9c3843c1e34d74eb4101162cde240655343535403afcb7438a4abcc7cb99355df51741f38c62f7d4189fa4333e0ea9d4fe6b73121ec3840b957e6ffa48a7b7fee855d152707a80ade0c06d58b21096b4b0a67ae8150aec2c9e1da943533d7b482f639f06fe86f470f60966ea120a096f050ce368fa1564991ba49b52e64aafe966fa013b2c498a14e76643ee0f3f55b61285b03ad2d95e46984d5b1160966c0e653fa5547303c0c10dd061aeef3f2c2dcb3cfb3ea1c95eed3c24ecdbf74965b4d91d9f650a5974d2f850d1729f5e550e17de790cb95c25703da65cb1bdd4699757d4a2e091b1c7afdffa60146a69e62e091a7be5ce3ad530114efb8910c85ee93fa149aa512abedbcc81f6555972786d9da42fe25233444e05ddf63c043a9a13e8baf1fafde115b626421b11511ce8cd7c9facfdd2840c522bdcba57cc565338228fd7cc3e00cd610626adfe7d0b5cadffeaa53e07ea7799af2ca157a81b71984798a6d0822388f80e3da90c704d5aafa951ca060473250c63a3806057689ed5184aa89f456e749e086e1f9f3847e3a5555a5fb27c7ff36684fcf27846ff39ee012aa7203b1585ee97669d04de104f4b55363211663ef0144b5cdfdffb5573880ccebc8ad0c1b1d3af05a9907809308a10ea37d0464e0a9a525033d0835c367a0b3fc3012269e1b52bdc06eaf46a59fd13f69277dea7804d1eb819bcd96a04df591d8cf78aceb03f38545ddb334df5e80d2f81ee1b610d1212c5b76014db50bdf83cd44394d1d1e8320d17c0472635f8510cc2b88a86cb79e4d5cc206454d7a70822a23a6e9cdc821006bcfaa75ef8026d7b4a4270be95816fa3b4f5e2537c9aaa7c76c01ce38cddc9a9a6a09d37937dccdff41f44d99b0704ba3a1e231c77227113a299674279989758751f515469696aea8af91086214a12fc20b02e9561ee388826b611575f0eca4c1882291fe7be43c9046d47b8d1aa6a3e93d734fc9a5c72a7918b1353e89f6e5fcb15fe1e232e185d9bac41bca3bf3deb82f34b1cdb6ae0116fdce6ec4e47f0a09e7e136f94c086893f565d507f33c6bfd83acd046342884b32e6ef3f14a38419890ef647eb4676945247f1a612ad2f49434350fd5d1bd593fa35540f108a240fff8cd57252934ef56de9307d6d7ef8a98df9cf3f6837493a3a9a1fb5667c08955b305f0ee24770988bd5413d08bde1f9f224d1d0cc924216d793c6bf44f8a1862e956f5aee68da5ae079647e618f9fa8bcdfdeb9b257a4ed3457134917dfe0190358723d0eca163fa033dee7d231a5e994ecc897f738737e7baef73ef3c060ae94bbca5136db56aac12c798a85844dcf79f6b7f67fbb9e5a52ede45640485000aa715f48f5c5972c88381fbfb10852ce93b5563a2d89724d5792eb6ae9fc511f67eb6d3c2ba842000a567bfea91cac85c101ed86888462e1e6ff09a41ec10c64609b0d1ea0e80e13b5ec9581a82fae84d25809b825049405b05c3367b1b92dae608e4c208ff577132a13a4b47834b38df8460685a48b6b8287726e806543fe989875ec226e275a12d933fd7c6504d48aaa253313c2ea3ad4be37ead70c02e74869117f38cc0e7dedc29c6306bd7b67af2d6db91a9b0e970cf414fb859a5f0a7dc369202e1052dbcc6a254786e3dfedf03e5971f2c7d2a945c94457da8e618980eb75be237f66fe65522b88d0749d4307f1d39e311af4dc590ac99a35148ec99440f0d54b24ae6d3d8013af83aa19ce26962e68641a52b045c2f613f1ac9447d1ba6cee2062590f5901f241e696bcbcf776cc3393e8fc7770055e18019b4cc31b7cee81125d3bb9f23b9f71456e4f0532a92a7c857eb72c488276d6b28523e25e897a0b5285b3ee74a2c08fe75dd15b94379cfc63ca2552deaa02e22c29a62fa87609b568cb1a4cdfa48e4b55eddd8ddc6b7f5d691406434d068cfc4b80462bb504089c5eda859c24a12de483ec83b663dbfb17aec79cc371da709f100efb5843175fa443717c7096e4d8405c6bc7e41ca821504d5f8d7d7b162cb8cc1af18e374de24c06ce10e5b363a9e14fe1ebe5860b380010c3d67e34cefad6057673b425cff88a1b5b39a1ad1cecfef2f80dc8ef0fb9f4ec2059daa75fa767239accfd8a9e80d37101f8c901386c8c9ba03dfbcea100c6243828ec4df0673c2d402b1e3f60166901f0f5b17e6f36da9aaf3599d0b363f59005db9cbdcbe508b1d1641b4c438bd241f9d054c9683e3e659f7607cebb123bb7b34b67167fbdfa27ff63979bf9446d11294a83c08842c7a83a5018c7262eca16611a518e88cfdb1754f16820776da0158f6764a568e0356c29f83379441ac8f9711fbf41d878e96d2e9fdf4250ef783f27ec190b25614f73822c6ce34f80942ac05542859016908ee4cfff7b03bb876a3d53b5a2d839ceed920db090af0296813ea1b94ca51aaae5d93ec2e511fd8d14bef4a5ee292ce812a7699bf09bbee7f9f98c3a946338d9c7f5f33da79f19cc65b509b8d44a682fa947067eaade5a702d120b73d7cb2c225bd5cebc5062303b452aa2f3f9642b32fc353e2f1bbbfcdc1b3f87e8fceb87b02bfd9fb9b48616e44e4655bb992733ea62f9fb4148c666691f7d6c4acbf713368e2e459e7c1cc82118f7d83067e844e9737ead2ec9ab88386cb87fc1ae376ca25efd6a963bf88f706283a680d53900ff71e745162ae47c485be21b82f3366fce32351c4a73fb28cb21c8f8f478c3e9f3098d0c2ffafbae5ca18b244439744d24e2b4894d185b51236829b7f2d5a4780b745b14cf66f1e281f4ce97a1008a088f0732442e2c5ffbda46f29a4d463e926591d9324e89524ff76e262e619a577d76c7e8d513de65caec5fbf5554984a505cf6e46118624d50194e7650ba654a464bf59b2b0c964e430748f26dadcdd9f79c27e3092acdbf6c00d1b3acdf29f4435b7882166b3f202d2a62a917cbc10c6c01737b90eb0c841e7cd75cf5ceaeb5df446277bc6a04877e7f711dc406b77481dad55fbb85ab31770e75c1a2828f743371ffc4f3f638e67f7254ae4817321bfb993a8a1c3384da396526f7342fafaf84bb50ae21567d37e5c873be61cab740221c16885a00c88dfcd6e0aea9445eef39f24ac2139b7ea5e66b3c8c48782ce4f3ca764b9b5b7b6e68b72cdc96ae6e3f0e95bd2172f44ffa53c4077c756f1a2a28aa358ec0ea8c222f5164341f8c698c4ba87218fd8ff2e339fc535ba8ac9cd4bbc4b1ab1210006e7f5b06252e85b6b87a7e8014ccf588824059164e4998912a970e2a9fa7ed63d147f2de5289935156bf2a4aaf92a6d617bbae1e9f3d451c941aeca8c31002bc37028e70c2292bc4db4325f55de488e61f594a53bcab2984d6f892e7c86a2089c1a2a4b7e0013ee7491d2314d02d200c4db77243845779c735ecf3ffcaf69e7b119f7b02a4923760b835621ffeb6134ad9f7b202139b4e5a0ecfb4b23e394cdc4733212e9003dd81e79f1f0e08c2df7e76bd6b56abc20840ff6ebac9a5e4477fd4143a199248baa29be8736d6e956b3f4a4fe8446ad5b94b9462f2ffb8944c248e6c3115ae113ae209e2237b7116cf31d1c67309b26a398dee99370545dca3a8224f1e45ed6f3ca410e95522eb0cd8bed617c1392652cbb31339fdac48431ef2a37656ee2a6c67ce5d4d25106d8f97e45f158a3d5e769e8f26d5acec9a757d0754cd82ebf538a3aff07e5b804cd10afaa9734b0fbc578d9f427c82a5442322a2a01534a1a8f35a0964ea2451c065fd5cbb234060fc91ad133070629e19b4ce60551dcf4525462cdab9d948bc21a616a8db1b0c1748a13db2944b9156b13b3e0c418368c966dac4b74fb43f8cf1ce4a445b7eef2a89220933d5ce531a9d7ae3416049b27636c445c462fe321ef977b296050a4f166e1c7ce1ea3d7e082e9306b6b72a2d1d1a43ba7df9d8ad5a0812d7f50d808d36efe6fea7db8ae3438f2cf819686557d3998d99253fd54615d1d7d5b9e9170d6f1b0c07078db2fb6e3c2869a420b7c03109641f31ec47fa9eb433d696fa737e284163f113b8ce01197961d7f1555a636a8a5047358ddcad3d69eb68586157990327bb9bf46a4e1e39dc0a2c6ed7160900397977f5c7655cde50d1c559c97a79227092b6afd738e1f73e897b049f1a21225fcfd9ab99566c74499d90333989c1215fc243512f22053751bbfd1117fad15942e8cba732023473c0a234b963cb665c27579bec6c26d93c223623624cb8cc183ff4b81b1b1600b9a31c18bf807d1a4f4f71c331b18448a63a88f020a9e6bcdaa2d23ab68e8023d554a076c8c43ecd6a709e5d1b0d5235f9cf801932a8124e1fd901e349054bdb99ec9cd656bd813e478b20a6b2cea70102ccc65e22bffd9469034831b2614bea418e9d734454992036ae35ef62409c39a904213ed16aa77f050cf6dcaf5bc263fc09bce28353c940353b7996c368d9925bbc5e8fae00fbb751b5906e456b6523723be453a73d677c02e96999194cb09cd0a43a34a642d2c55de1e7a31b9e8ece8a73a5115cb4f9090f7fc16edf5469cb789e9ea564095d497c4a8cde0bc559781675c15e5fb11e585525a960e8e39d5294f80c460be8c7f8b3fedca36b8c1744d9134a991ff9d7f8436d26153c90eb11bfb2b85458aa271dc653d9d74f9f800444ea9b4fd6af565334abe9dca60b228337d16c1d2e6b3a7e2fc93bfc1a2cfec09057f2b6a14c674041b573a66697dbffd9f279112423b929c7354f36441a4977d1b157ddbbe182600b041951285ff41a7c3eefe45b6bd2fdf5dbff49f10141dd2331a0052e6fbc444c7faddcdf125154b36adcb810b07079af125e6143b5f2a887c4652de8f9e0e3039af790f4d644be6d1de921a5ea0b9bcbf3f354c79ef117036974cb3e0329b460047c88eb376f4e1ee9417657c6694e5c417dfd26939821832afd618386a62430e8e2393781ca1fc212a9bd8bf5eabd318cb3c91cac7cf38ec06cc8be8273c624ed2f165fce35ddfa66836fd7c23a3624e3665aae7fa91d2fa8b978aeaf55cb688fae0f3c9fe1e34fa8fc3ca042da3a0cd0ed183228efc0fc1489b1018d4809231ada935d761e449797fed8a9777532c4478c5918d40db99d2d88d23dc821340ab6493e32214feece1de5d8b62158498263caa9e3fb9650fcf607955795f17d449cb676b804d727ce3ccd2b029a446a78fc9150e626d26509e43e88003430ef6f16753a9d1ced0f047e453c4ac3287ce39ac094c9680bffb41dcbb7aa41f68a64afc06041e42bebc25c758b1b21fa78edd5d5791ca0f5d6bfc46ece5fad2a144ea7b581022a7bc91a526b2608b51651de69119a0861e7c9d1a1294b7f5cea2415b357f0e5e023bd1465b32a5bd9d79aecb996d4f80662c1725c1d8b78cf657800913c8f258e5969af2a66caf12fb07638b14754a9e191cebd93d109461aebdc0608610fca8b40c0bfa1ec819212fe3e23a3569e75bd547b755f7b32841c3d892147597975c4329991f574060a4a82dc951060b457e2f7bae89b9c14b39df5a30f00788c2e05f97c8299db625f657c2e3a1888b8c0ccb1942143b9638cc6bcf63c6b21331213d8ce0786f4ed95bdce3218d7a55417aefaa828d219fe2eac5b3c72aaca8717c27a9711a38bd971741eee14afa488f1652d2d16dec3414952571c55b2a91900872b62e3254e039dee5b13b66852cda4aefe9a0826c2ce2005e1f629fd31d8c0b4c8102db1e87ec8053c52965f1cfbfd2ea8a77d5d664b6535c54054f353127ddb2fc719ddbc01d18f6d57a0a18068a8d0c37b3082f93f7417f9cd2bca6759e35cc8e91f0c1cc9bfc50a27ed62ac8533758ce6f601f2e6571fca0735954e799584efba43e8e0cd864949b427d9e6b8c53316540ef3a1e51074752739de3cc88658d302e6a35729e2d499da5ce9624fef53aa559faed8825b0c71a56704c2a9370da78311c8261c471ca0452347fe2520c08d867698a848dfd39e2908b92a7b894f728e5f6767ec473138c81446852660231b9381823767c63939531dd521d0ba69b089bae3388b8f50e62b0218a999056d0ead6be3d91d698a7ea1156bcb908a78eb62832a6f58bd116be8a802a86f6a8122853f47fb7b0c9eef5a4d7de7ad356f478bfe288653417030a84581f0242e0df2fcdcb43a9f5a6accfe334313bbfacbbf01272b913bb01806db4fcddcd91137441f3c67cd9ad256c3c841cd75bab846fa58b3ad182dfe409e087e3f0e08507a0b07b3ce21178c187b860b3bfdc67821b8f18e9c6aeffa8b0e5e5217b2e9b35ac97259d1b8a6116583cb3486d78c12dd6283f88418a6abb8cd65bc5b37704bf68017205eb37c9de650595a7354b1beec8ac28e97c055e09c00295415d763c6ee201403f23986a63776704aa7cabf2f0acd28f2a47377c7f21db7b805595a3697c70fd25d39569400303a5921956387d7e706d25ac339353feb1c76c236fb7d83acf964a406034bd55cc22634d98b59820276548f5169493187268480c446bf257a57f1b0a6e0bcf73d404a4df3c3500a780e388585d0d1bdad9b8fe47a679bd6311b83b5036ee7b1a205483beae9b9cef6569877c5501e539ecff4b3e74a85ed723c2b026008f4a87a345bc0331f19b3baa6cd039856067db137d0ad6866881acedc77190bdda24a27d95a794a2cc49261e52e0b31c9ae4e4bcc92eb37f40ec7a5ab7980059c807b60a442955206a03fcfbfbf906f0a0dd0137b1b56d21b0aa03a50089717d2043e9a545f2180ad70d742eafedeaedd9772111742b848f05209e1f467fa094a96aae06815385cf21bab7b7fb99656c25227ae32fad2b1387840ac7c1a5264716bf0f9ea6a2c6ed3921033168317964bd472c981a924ce5bfa3749af4c40259980976fef724ad58f7a99c140fb999031661278e7aaf450a5e0b7017c6aca89e71e101c9f53705dfe97ece6e9fc5eedbf0fb5b4567e2b4de23d652c1c5f92e795a2a240330ef0ca32d9ba8d5675dbd49e8a93a866ad33d812689c8a2ca2615e7ce772933615435742d2e9d6422615ce7f799cd036fd25906e8de82367b536eaa3ecfe91a45de48aa4cf19967067d6c777cea2766c0b868308308416e92bf85282658de0b104071f26250785fefd878fccd0867fea052abfe9a30ebff0f64c6e09a8990fed5e2948c338107b2866b89537f912653152a1486965db65da110cbce1c72e9f4e180d157fcb586c9258b2c1cfb44f0a3180439fd6a409f308fba3f22daf1105a21c02bce942ffe930ba7b9b93032b71ed1949157fd3cdbefb55b7bf79cef3032a3c70489c85dad97c85c52938dc9a2cd81a454952012e17cc120d78c1cee282b5100147591e9c02bb6408c2c8e3d125718fb6f04c1683f6fb0b4eee3590cba5960034fecd3bdab4fd1d0922f07391ed1ec78eff5c9a713902c1d91efafa06c597289b2431d9156ff3a09eb1af89c9078d8b3af91b0a72e6b7ce144ff564bb705534ec58cb005a60399d015c9239812dfb1076bd8ee53cd922d49c1b1f872877c8604f6777d44d6dedfd74e227963557f713cf07fee543a246aec77447632050b22af56648fc03e84fa3ede2b0a0c33d5899b87e3067d220507269f56603dc6bb235a4592f8941bb6cf6dd5b86968a691f8237099f24afb0b186e8320f0804046423172cf3a0db4186e4b0edd0924733eac1c33fd950ad7955e2a9028da7f046fc3de16d67c9cf588fb6cde9d686879be88852da8be8549857073acddaedcf3f1405b3b4b067200353a7a169cf37cf4f5fa0a0114045a16df50189317c9d0112b83a8671f3252449dff3282f86f2feab783cb9cff9c3190d660a0fce5d16f42ddf3104031b1dbc79fca39e276932ff3cf882139fc2bb4425a0eec5b650754471051698d761427cb047e47ae70b1d0a5c2d0c91071de8e59eed5540603495c803ed550046d7a70fb3a0178448924699a524487235d632197e8f99413e6f2d537bcc55343ceee250b68392e35dbd4a1489de64df81f8331372d7846038555b0da28809cf09e91d78006420b55501315148c02aeb6f8104f17c9b2d10d9d26901f6eb419088fa37d3c040273f1a1b9a4b37ee24ef2c479843bfabac12205666bf89217070f5b280056827ccc396b7fb4a3200ca93b11beddd393c903bde31534ceaf56776b168fe37f72510eadb1d5f8d238fcc78fc8eb38de482c7081133b513af690bd2d4a0c71c4e000cd9fdaec860fa46a885c31fe809f7983f1fdd8c0586267c0ae5b515ec57096d1a2932ebef9ef52023f1c8121d2b9c78430b92dd42b696906de8ab69aeb9fc9aa3f0bdc40290dd9353189d9a3c8e3bcea089d5239328f6053d471f7dc9808ec8af4b753de004831c7c9613e8042f66ca64ee0324c3a5def643c8c1dac44bf3f4870124abc643907f94f71f1a75e0f699c34107fda1335443592354736e1dbfc89631ec9c768854c1f382a6ef7bd22855f948b449216b8fa162a517af2c9d6e61ebed17c92361c76c133a0e047ddfd720ddb1ec91384f1ee16f51377d6fd298e07c0bea5e633521e37c9dbaa99a85d823679b58b7932b813035fcd7cf912a46e504349ddf00835e0b320aa255b629f18d81dacdfd21d017aa68ef8983e81be5cf3f8b90af1abe905c19fab33f609ff3fe34bcb5c52046433e628ec01339d3634d5aeec7fdb1cb5969209439924d17a36ed88ce106c435b4c52a7ffe0ba10410b89a51e9b372fdd6b5a21ed084e63484e76dd8efc377636e431d5ae7c8860256152c4ed042dc75a60a6aa0e875f7a6321f19f583154ab86d9529fb62e769a9edfffad7d925f49725715e8490a1f877cd0476919e410e1c2b68346521a39a70dff3fb64776a7955b528edc482e7bfce35aca1178eaee1a825da1fd414c5d55f1c370a924a325aafcc083d2000406f904c20effc885a8e675a2321772597d20f0a3f5caf1afe5f4da78d3dec7b434e2ee21837d5dfd700839b824a2c8f0450096cf0902d2716efc52f3c38f58fe05fc6813db6135ff59e4580447120a6a281dcb9f0c4d7118fe972e56deab42cf0a7fe30d995296354972ba19a6e654f8d5d9ac9293506f95304bb689ce14dfd2dc48b22d39da704312136b15873289000f57612f0aa3c1ca3b5c17a4a10c6a7b0bed867153989dc7c77ec89dd673fcd30ea15b0d7852073f6a500aa9425c64f1b451cdb4ff42b307c00ab055010e023e9f06a5af6f7b43a5957df0c7adeebe8b975c91a57bafa6fea1d73e0db10382bf57efd27bf4d8e23e3501e2fb92e3f069c31c1f74b5a6c2a5ad79911b8687ac2e82a6601f3ac242eb47ff222b0155d83cb59a69ce43c5181a1560050fb6e2493e13d617033a0499b84965a4f37ac644ad05bb2cbd19914682f2107dd622ad1189ad3df952b2f67205811f4ae70d023f4267aa138d95a07ef21dda832dd45e7a3fa32da74c717afacc42416de6d8c98053a322e17cc4d5dea815106371a279ddbd12cfb3b2485f86746248bddb2b22e2d8eab27d06ff32ab119b4e29061597ba92db75dd9e8c6aef93258639aa99e86ab20f27ab74fa2e7dce6b08018345663dfef5e18595d4dadf57d880f565df44ecc78e1f0df5f7f2573d36818c8da3141bc5a798850ab58f515b6afd56ed024eefc31186a4e5a8aaa37a2d97310104708cf6aee712e0b6f15bb1a725f9cc1a92e0763b5394befec121571bca6258a6acc8e0c193f8e685e70dd1b052c5d615ad19a252edbfa7d14764c6b24313a7c2b4bf6dbc9af7459c694952a40485a76726b63ab27b045f354a8ca664ea192ec5d97c7b0c14212f3392631423cad9b15926ec2f8b461a477141d37f3e05f22ea121b24ffb1a134d8f216dd65528e3cc298ce0d2295923c472c298305e9a56bdd607765102f4a872c78b28a17e6a6b3560280115ab3571f7919fdf002127155bf1566061533524a29656d2a0ea1ed930752c8a1df35858f419e75a2b7dfae189365145281503ec868b0dd716588b6a8a1940cb6f33ba754dc17410271253a1d8b22ca99397af71e6954ced117d735b22ec7ab4f8e5fd4a6e7cc2763b6a39d7f19434b6053fb6c1308b8df8a968f32e878c1c254031d04ec79d7a70732a1c4d2e02436b6ea807ab477844c75f8443a070953868f77c56f44fd5ea5fe64e3d5d14e3880684477d22f2529bddf7fc1141b290a45aefc923c82a3aecb83cc5c956e9a1003764bad5d85e2748aaea3f5ec5d640b6e9efb6cca0abd881ac0bb5353cd203310f02998b105b3dbf9bfeffd3107b9489788d7ee02b2b12658f406c6f79b7558dc649f2d937029d399c6011b57f620a21a2149c7c658652c83f8bc110249d238b5fffddb99f639416008cc6cdb35a3a2cf8c22a9cf08be4f83b2c95f180f9422a8289addeafee1c92fcb1c10e5ecf5ae654b5e0dd959ebc7bff26c3a8f122909d1ef269e13ea8604c0501c53159c39e86508dd38b888b8cec433e9e89640ef1582547d50f2a334c65fc09006099ef5cd4101f4a9e383ead0414e92633cd2ac6a6e66397292f906d448d646d9060f04485fa78f4868134248f47dd9bf9f0ff45eddc7b418457d8beb5ccf6ccb0889634b249fd76ab9063cf978a87e2833744607dc042679c26432ea1943251e58ad993720d856ae2fa25db0d5fa7fd1bc7251292208e3388f5d0068c71b58fce1f16506b5fd3636cb7638fbec73c7de62119933989cc58c58b658f922d76b01f52675394fd8d12efcfb2ce5aaab441932d08a1a558c96f060cfe5da96dc4363647d3e9ca9350f9694d1ab2d9539abd24463d746567938f3d46d872e2e6ae1a17e26dfc6ac540353e6b3beb7172e00a7de5c2f4ad4a866da91f76170d7e2e18f94fe1a9e504f10d2d40ebe9a422480fff0ab705e3ea2a8d6b4116b544b5c0180b67c52cafd656622bc18e476491525386586392a8ab9396f98d8f0d247664d9d3de7170b4cd52200b18cc1fe3ef047003d96f5120e032c18de5f7ce1c299a86552ae8e820e695fc0575d503ff405f2dc4f983e65a0fee68b8480feaa89d1b3d69eeb70f1475e9e0e767a7f258d70b655544a2a11486178616c0dd976d52212c59afaa00efcfea71cb309f3b76f61cf8d95c1b2408f27f0b7ef16a3f0f9dedd1ffc8b93ee2bd5fa217d83b6c6a4ce283259c0932d333cfb7db6e6384d69cf32a7ab2f8d53eed1c86e7200520a4617927f1a65d04856205064c8d87d8926c1fdb240c7f8a3ad2bc90e5f941ddecdf488dbd525f11f491439cdfe9eec11051c55dd9bcaceb1fb728e158325209a1de2888b6518b4588a9008430d41381a700c16215f1d177b2ab44cc9626a45c85115d16ed6486173285bb1ba731362faa50b56188d5f809f9b461698cfa1c1ac9a393eaa3487ef13dbcdf1354b43a7d45888df894fa2a4ef242ef1923dd18f7c5256d3f6cb415a564bd0a6d8c4a8a9ccef9b2f94e19da40032ddb66afbd376295a901a4b6bdff66e1ba903db6839a46fc24051f8bfec623e2deba4bc1899f104a954d00797d5474680b04bf3f8273eb5eefede3ec1e92e5ca866f5b6d37968d68de99f3074f05c321a6df0f298548d9973ef3ac48ad2a693f5b412224a2834be77144d3b56f24e3f42832834c5b3384ee1bc1891a4bcdb3a4822df1a3ee51eb3d705a596e6633f4d2ddcef1ddf3ccee11b07209f85dd82c15a22cec29fd1a0fab46d8b7722b04d508414e006190c1e1521f4d4cec8c350c6a324dff38579ef2b4709a61496643d2e975f0da94701eea1fc58e22d4882b1b3ef6da0c5d079e7c538273166353a412d37e639249e080d853f23bdcbb7713f4663ddefde0f4bd28ef93178dda6d45b69d8a5fd6bcd51807aab7926e7201cdf9c1c9f22ee200ab7c214a64f860491ec2d987b279eb7931ae4aaf0fb0fe48ca8a5726fae1a027b39cf6fb56890ee111941592ce16d75f3acef646fd9eaef195264ae200aca06388373fcc3670714a351093b53a2b792f0a42ab99183368f1c53efa327f0ae112165dd3da6bbfce13828557b6fc32ee5654c4c4970e5cd7bea42a7002443df46c9eb30e025632b55b8b06333f423c31febdd1a458d1961f923284b3c6baffdb7c866a7353ca4ae5e046937032be5f268f9ac803561fe993753526fcb9aa39f40f81b35fa9181770d66ac3d60c85b15f0bfcd2e751af8e48834be86882fecb11093e702041fb888db3ea4237a22224b4720f9dbf71ff97cc0b72dc7ea499951ce58f3ded31a129bde64171dbafb804721f1af45efcf764e7020870b9c3656cf2b7a8360540ea9a6b3c8a76f2293601f2264ed4fe7d8d575322afb9176e9a3290e7af129715c40bf3ed32b6093a64a317b7c4a918f43e2f916922216fc1e667704cf984390229b0ad39247512728a4a88fefb9ab152d66a3498b6b9f94f4dbe3f2962e5a1b55167d0dad5906b700ff40e9eeb948cd2751582522386d719bc6a0c183bd6ccf4825e90f3eb144f24236de19198884aaadf33650285b40bec7682bfa7999cbf8ddcc2a4e2ca65578e7098c869f2ebf8152666be1c2f5e6459938239df5102f9539ef0b1954985d3c2d398b55b6ec4563e0afbcc9767eda6c8a790436eca2557eb099bc82e85f446286d946f2e80f484856756e56f953b60efe3a9f0bf7bba13827f0b805455e114599c41d6c8610fa8a8403243185d982083e10e1e8450c91d6dc85fd06f1a37193b427574195f790c8995456618b9c3bc1504a921753fc77039e89eff1652211462a143fa17fd2e7f11b5007d6ceec36de46e7b62d9cd9602743c39ad7a70b33cc25cfe4d27c599e716488ce35793dc8ac186015c969b1b629acb98970b69116c0a2fd32e29e2f1396dac4163ec1953ab5c14b03c8a1d527955db2b3d395b26f48d5a9a689d1b9898bab315312bdc011e0538107cbf9921ae7e003742d7ec56e923cc4e82323d5e0e9cd2be4a8e11e9d5cb7df3444ea553506c582a9f85f680b91a88dc187e960ca9182f06470d20a5a42b0d97c00369fb0995c6581b65db2690963693276e0425f27740233951f3155c66327cda207ed11c4e4b596d773ca11dde23d264b62169e595788825987bcc39c1fb12ac2136b7e0dee2b9d594c5a4307bb87def755e93bbc6ab195bf86de9fffe1e6fca0419b01b0041204caec291419b652b0f507bf9e2f0a063e16e66256c00b5d94e52326d9a99a54cc4d1a976df779af0c0e202ec1ad62ddd4684ebc640d53713bab668530a29b19af39514a0dd951fdd8e6e3f843d962ed4daa77dcd15faaed5fe66307b8d805bf2bb250fe1fce56e81e85c18af86902743cfbc2460f00a46f657f62411263e76a830c267b33475fd75368af9fcb613ac66f08fc4334661f62ee5b152b6b236c84786bbbb131f5e0542bbde61029e3cf81b232c3fb171085fb219082db609ce37ea382d8157045c7816463e2309ebc2e0d4222627a2dbc5831cc918b084e326290da4bd01f2c55669e2315b0a74b30a239bb287e96a81e7640d486776671cc4fdbca02a0f417173008c888e60dc295aa01df51217530199b087c12c82566a4775cf066bab74d0c865f68a0a6ce801382d21d324fd07e0e2eeb8606b505c9f31ab4831fe265091899bfc506690435f6361ad2b053c124a1b45f2d9941d3b274e6aabab30dac2188bf3301465a8fed636e96e609728dd5cb670fa41502335abb7bc920e2bf4510e98ab2fcccbd6ccfbbd27e8969416a45779e9f107cbf68f52458f63b171b2c4a2937436af07387bd7167b6b3a2de1fb63fae6d9f2fb808f7e4bf7ce6ecf92a6d98daa23fec29e1c94e6eaab0ca180d6451471f79e66b4ac88560dc69a636b62192b84132d04643007d70ba0c2684468f6052a229c209fa7ebe918ea77c387956b01668475cad61de32c6fb0d078600bd70968d18557fcbdf21beb53344e74568e439804a6aae5fed812fe93dcdd0cb5379307a7ab50752c614140edae84308035b75d0e5d2017d473a50e970fff9dd5bc1098b3a2439795029f8cfc57e78fa3c77577097a4a4485ca0ccf22546349c046a43a05e1977522b0d9fdf1a797622333e76e8b072ad6915d0d649025f3228cba7d6b139113ca3fe6433ff906d12015bf1e3b1642e9763a26efc3a996a6dd77ece2d8ec10c0ffed37fb9e6deebbccf17b581c169b350758feb4def1542424a50309a00e21e0a3661dfb7d25bdf1c29409a882b8da47c60828fe9bdcdd84bbb1c9ec4116a5d348bc62787234aa7dabf028536139500cc5bfcf04531a7c7c913a75138f3ed4920cf0f7a3a9107d78ba55a30ab227566213dbba7a8c5e40b172d68692fcc4e447e2eb566537e6b17a1865caad57e366d69001f77235ee6f479bbca490fbfebad0655c008806fe300bada688427627975213d64f2d3457dd3ac33f89b76905b647c23f15f095078653e166683d920cf22737e420810d4a1bbacf482604b1a2f5673aa44e68eb914a335c125319aaf8cb0064150e94d26d2dc668ac1e48737a101b64315eb3e96a01d5a6c59647073646d45e3ed193aefea432d218d6bced063d9e29407150d0e9e8f5cd9084e245d7d7b488695f219db013d9e76a605ecf8176b4c762dfa0b887222579a1a81f3edba0d9ca6bd89ded9336ae6486a644ced040f3801dcf7b4d5c7d46b3309b7b6143121d934da9828f9a884906fdbe4d38b0c6b1bb183b0539e0a14ba2430019b10e0ac84bb234af58f18f569e897ed3b43c492b29140ff34968d0d1b222a916ad9ccc7db2f6e165fe35ecb2fa98d3942bcbbad9324fbe66433bbe177ec40e3f905d0c019094dba6c01f79c090032ca8fa883075409d870a78a0b4d9bc9521e43aea4ee3118339c850db9edf172de489d6d35e9264263b3ae6de6d716341bb3ca55a2f0f5ba017436c79ce28f33a99935a459b480e2c9c6321fcb8313d257c4065bb593b30130244bfdf977144952853218922d58160fd0c0814040b42655eaaa0166ac2085ac8f9af05ddac15016d9ca4ae8141bbc43299d8f1c2530502f7d98fc8993db51eec3f47054f8a5c5e8425c855c41d1add033286261625ae742fa0334363a6ba90cfdbe2336c7995ac3115ccd20e68088e2d573ce70a3dc865fa5bc67164ee2f013a820141733bf54f1529b2c11c13f85b27326b5b3b87415490ecccbecfbfd314504d986daddc432ec04cf3bcc7bce181eb5fa47be9fa195160daddf1c67c2433fab727c28af3699b637aec054cfb2e2625fff9bf9a184eb730b0296d54a8e9159d06498f6ded645cc8dcb985271bb90b8413079f0dcb6f6182fae584ae32b8e30199871af4a0836613747ea79e422d63edb1753a4871e9a3805ce9ac044c2604741f93334a44ba21d2aad37434f8497837c9545eece51d4367ddfcf9535a5eeca10ed35cd4971eb8e2489a5eb0ff2ecf7f7055ccd498ec01f09bec81b30ee99b8f67395d7346526f839c574551e25b97fd4ff905e925b456b9fb37cacf6eee71da4721edbc77b9d0a678d0404adb00859a33c1b927edf0d074bd7dc658e71b9251d9f67abd54b2b9b61f2cb740afb9a683416060a031699368959a33e2fecdbb2cdd7d0448b17524dbcc4930dc5eb20bf9738dc240fa60045221e96c694647ced45d2cb96452b54cacf7fbe3e7a50ca2313fe950b9d6262039493576c8504f0a2fbc0c07d7c4654417d06e6a89baa5b836adbd501b8808b1c49e867f30c9e82f6573d800d700c7a33ee4056b7b72a92e7c4f95bad4859896ced2a52260fb47a4572dd75b1de8ebf0f274cc2c8730943f0243c00441a57ce6ecd35e9bf700545bc4c59a10ea4dbec2e0c64bc71b6e2b320b342ff56b8b37c0c64c2cb4f904367c8b98b5114f40e6c797a585c43753cdd4d645b1712ec6cae6758e0694a51c257a0ef4dc0e211c3bd64fb95ed6215e2e4cec1d541bc68deb20fdae376ac63a3874ac2e2a122a053bdb98d1801002f033705451b3ec9cc3c02282aed046d4331bbdc6cf096519d12416132d0bcd73ef13b8f6100ca5fdf04076d84fb449a26bb8f328458160460538ae12a3ef7ad7243057004fe86637d11a637b880014f71fa4a6e5c1e6c65e733460305dbd6fc7e3582336aead48727152f41e903cda1c381d0db26159a45476d463ed30def766d7d9ca005e39db0d12bc3690b93cb03a8b18122831fbec8360dcbc5c3fc2600dbbc1d366e5ca077e84a9245d7e9064bf86cae13c07463eb65d9c11326002953407d4d6d25dbd78697cb771b7f43fcad12d64a0f028e54e1960a41330195739639cfef31164b9b503022fc5257faf9489c5bf90472b05366142ca86f3fc8d586f5021448f2af2f5205a3f82bb0fcfa7e64958aa4df5f38cd457d29fd7a2e6718739dc8e0a88d63e9a921b71f8999db4923586841bdcddf3fc261d0b78e22f73287b8ce37acad2ce92362a01acb918bc4ec403687bd8d3b8ae2acfc0a3c65d777b5d2fa3b2b053817d8590c4ba6169ea0abb736683af3cf20cea37e5033b1028689b6b8d1bc5f4c032403250cc57c02a19bfca6dc837710612a32eb2aa864933ed4520cfd4285c7b21e8a7c0ecf39995a51707bd557be27ad4582d60ea808c759f9a718f334589ea115c2ec43da8aab7554b9f3f3bb5e1acc0cd2d86396b473afc91b2b27b654ac6a25eed25ce34086ec68d4e171b5669f98cf248cde68fe7ea7c3a7e53b80d26723ff5b9a6deb6faacf112d42fa1c8554efb89062cc1da417e277343eb9c4ddfa6ed7707c02c1dfe23f7147921224a90a8d5af89cee788726120c6c9a2cdeabe9f0ab34643616f1011b8c41e3395d34ead1b0009252a84a540b7a48efa68195f890726837401c0aac97bc2e42da397c74ab0ae346e7a8a321222480d0988b9fc6e2bbcc1628038a6fe80c860cb29e33032960068b59abfb3fe9273b3a7379f05768d5ea936b35b8dbdb853ac1c9ddffb2c3f579e19ce861092c497cd9c7bc9afd41ee90124fb7721c24302cf32fd3e0303bc73367ca21a672a4e29585b01a58d38c6c0bf341f8a4ad4478502727314fe046cdfde7b3f19a82c5275ec4d36729d458b93c290664c44198f248c5e6ab0e2ec5d67df86cda64119c539706aff81ec387bb19e553aa6eb50a756dd0b5e25dd6a92bf6159b1b2b09659347ee6bc1c8286182164a46610cf9bd771f9ee38a908f55f9d9febc3c4416ea4060cf5d42ff82c1cdcac04428537201ace24a3e7570920737cc5daef471265481a7e3537a3a11f34a667d4c8bf34477d463386c3d891ab10aff41600e9250b87cfbd14e696e9cbd5e8f500d834f4563bbbf76050b1e20c7c59bd1cf472c263755af82f700bab50a3e95d94e58c0a37f4cec8bd51168bdb368f049e69d504694a2ce102b3aaef4f8892a274267db8565fbf654897cc32925e3777d6ae9a86e25dad85f9b910962130d30736d9c0301f98dddc2b336804a42cfd55e9581f9f39528feaa4930eb9a24cb00514ca908df917c7a918de0c85773a7fc57d203fedcb668722d54a5e66d943bae8d687c1b6a6b3c36b263a515ba93736bf8670a121c229a334654b388a8c4c323775e5508efab184da2e8c3f252982b8f7e064ddc18779d3bf8a5f2f902debb26a004cd828ff9dffc77f59444481a13e3a04342c18f45fbd0bff03180488f8fb7842b874b54ebd918f5c8d09396ed645d065ad80f915cc76b1fe20152d153eb9bac59407e7685ce7ea311b9b189c818c3fdefbd2a96ba1c2a08613896c715d956e0450a30d8e995bd55dfe8f152a4b968103e89c8eaad03347e0ac3087c4d08e75537209b4f5ec265ed038d41d40e6342c9e3806d57a5e72e4fa00c14427882f04b0ae34f3b108bfe2769d7c9a6d2c9f726e301ee4b8f1f783670a9b6fe602243481fafa153d3fbce3b6ad923be7c98a6574fc175dd097a7c16cb7835ff6b97c0601e7864ae82d87577bb52c9259be17c41851ebd3acfa3120a23ab706e4b4db2b72c02ae8eab39ea153794097031df50dc69efee60aca46a49aaf27e73bcb60b9e541dde3b8eae12777351cf639f20c85003ef85b118fee07c8cabf17b4ce22a4a28733fae90919b07da0360691d6234812853551fcb5eea7be6065594b553a2625850aa0f1e7c902a9dd8705894bb83af0a0af53f70d615c7be099d6353f4a46600c323cabd2025b9004f316336603b9ad26f45d28bf81bc6616ee2e23316472f2ad6739dd8a7a02c37fb617842b17a5514bc1f05525a07996c34c3e38f8603d528bddb00f80fbad4024b50515338b520fa30cce4bd1f5429ed905a73c6c1231f3652705aeacc9140636aceeae00986871737432f404271c29e31804dd3abd1d7062e80add365222af3db3b8f8d70bb3f3cf4bf8b8293282a78f21c602ee6ad0f5e342c7d31cf295b1062bbf8a27c66d166d05ffbfbfb84724c1ebbc4d9deb9c115eaab051503ee359eeda81f28934d44a0f04475b5e9f8dbd50f88a8b97fc2b50f46244c950f563799e1c172a116f174a795f7bf06b875b0ddd03ad82f9e3bad286c9a0bbd44e757882e7060a15c973e2cdab059e68262429900c2d46634ee65231e30a0c4829dffd625d2fe128794750b9cb4a7e8dfda75ce11fb688741557d2657953afe977b4157755302c189b1049cf87e77b0108f72f4743b0f5273aba23e3bb1fa671cfa68cc2f6360304f0a303e6ee4e2f1121634b49fca449792d762167257f66a633e8d50785328332d1a3d8a55721845d404895abc543ffd701a3e4c8d2dd67da08ddea48c3ee17ca8e1a06dde804e39101340fd66bb22c871fff058e03b6ec452d8f6d09504db7ee088419def2b183e64adf78c4c22516cdef7ab4673d21c6c27f5250e4d90e9b05056c453f85cb8c5270b48e17530ab2fa8ab9960417253a0541a6b4956786c23b8ee1a0a36b9af79dacf6fbff1548177ef62043c7328f7c8ad99affe740542464452577e7131cfb21e3d296104dd0fb966deae021819ccbf914ba0935ee8aebdf984371b2e7ffe0b0db98a0e50662827ca7ea54ea4145e88fa21b2d8141742d8672966c1d2d33df13bc7d54f79870bfe2e16f415aefd0a91b1134fe9a65c85650e29a0fcd01c3fc12aedc85bd607ae24b82729613d88ea68587b95344511226ad0c867fe3ad786fa856452648e2f39593bcdc202282d6c7759d0eec617735f7c99a3b11a6f17002b9ff901ea9a2134fd5e843d0ed1f3c2f66e22a3f20d649927e717858fc8f60fd9963a42b11b401543f88e541958d6a60f820af49d141f5b8bccbbaea22e99f8278304aad6e95188ab75d27111c8572598e5b25e8fc58e01466b7730d21a68f93a79c2bdd459be10fcec9a5c32c359517257fbe870303c304282a9f2add6a47baff186506b2f278dd8364ec91b20c67ec090f25fd34f3af3bb6c82eda3e8d758c4afee507b8c1a0c2b4e91901eb407734f26e690ac78c17fde92ddc8631b895b7ed929200e4dc614d39c47912d919286ea0a545b1d4efd3bc0d10cc581f20195273b6b17d73643c010300ab045645fb59472629024bca7a336a236c88333fbfd7d4e0d4def5bf1490653e1393096aa04b39952a0cdeec53f18d9d61bd6d57a96324ff75859a62147e11cad1f5e79e18e9a81f52f4858c5abe265a5ad2f30c7b3d4f621d9e2b4b8041b15610861f9b3cb7ffbd9efb2a7a28c95a188703a633baeda592ab548a9ee12ad1bf01b69401c8d1b97fb78fc8235cfded19a335edecd3800723281aa7df70efdb5a8e8296a4f575d90410bfc51449b2ad586a7d7fa2de3e6374439ddd2a8e82219fed46e7b1ace111cb97e3e5420ee638f8a7f83720fd3adc2a883402620739ecba5a717fef1eed297f1120409cb7a25effe8576f8ea7ff1496bf8ce12ab4c1fae96b803f9e5a990b3234dc8cc0321fbf7a00a0e18d5a7a95645541ea497b3628e20a539ff8d7eb8fb8b58be685bc8a8df5f3d6d8ae27304f935e88b4bb97130b288151dc2ab2917a71fa9408e8a24eb7e312d9a4c086d2bb70a8fb79640fa7d77a8ec0caf6c12845932bdc187d7324cb3c090d875e9177b7cab9be7a5aad30f953f52064438020007bfea2288753edc0aefd07068bd6839911fd2811835e85c7e45db389037b72a3174768317bc6f7ffbf3ffdee68309c2253f36b088b75ebe044bb04cd208721d215df31ac165b564ba2760aa8aa8903a23a2befd5329ac6d35f0e8368d0d481dfcee23e6c6df443efd55c2eb34cabf44bd0aa0cb8cc4b0a68b0be40f5a23dcdd502b4002422ed815a10188e7b1d2d3594d1aa81981dc0abd9adbe4366948c92218113be818865841222a3a86ce6abb68ccafeabbe4a60041f67977158a10bfbd3902f861489b26c5dfacb4ac6d6689c79eb26f8edbfbc7a101ed3736e521d4d114dc9ecf53f422b35866e4b012c3c5e6094443ca2b1140ef1d5271135381edd6b7707661e7e00b19848545c5eadaef459dd0cd7c5b0d1024f0afa65ac8b5c355e2a6f745cab5f5b6a2d8e3fc626562cd8296a01c0901d42e455c8432e2b84d4c8ecd5ea9a92b8576c587303cf353a1c2b6ea5ad3476279f00a6b532657fdb7f2988ba93c15bc49ce0d57804432887c20ad18de2f95256e96ca26f607b2bc8cb54420fc4f3fe0090964cecbc35210a77c5ff9ecbfe71e02c5bd2b7b4251d5e2475c0999163f3e1d31484f991a7536092e739bba9628a5143a19f4f50c385be44d5321c91d47dc9674f5492a836285b152bc668efd19ad1bd49825f25f7e74626be2389d776a5d7e2889b725f0c0c46b602224f6058d5c4883fc9b6f476981a3456e4db3745292cf5aab6398a81049c4fe7e6aa28cc830dda1e2f7ae1bdadbf11ce5590413f9fc9d45d34cf1160243054bae50f23b9c4ab1e92e1015143887604df0a02c6f6312d3de63c845fa72bf3e6414a8b95fce6ca3f180843702ee9dfcaa53c096523a481e6f384ec38c0baf877dc36194f5223a901524dfc92e5575238fdab1d23aca10c8798cf222c0a0c5a1ff756d7d79a79e3549deaa2f020ac3990ec091e75e9ea51bfe955b4bdafab015e6bbaee127152b295edc720116a8d6fdd3aeeb81e1063594c5d50c75256c7be080adcf2354323d4cd037b47f442bebed028ad662f287598f921d8ea74f1ffb6f2862f0060c7b6e32bb6700710328280134145dc6d842da304e6e9d6b291df0d74c3818a74efde1571c8678b8376350fb34cabe6bab30723c4bbcec3b14c02b34ea6795892df53b91a8e91a516097af792a65ad077434cb9e61d506dfea75887e24e6fa4e0fd3e0ce343d6a6b5712421c311cd7cff6e4005b677dcb384ec095a017f9649860610e5c513228926cd7d1543e7d5607e3f468ff67234d6a81c26efacfb0f122b8c51589d675944f6f0fa98d00a9dad310057c2012ca3479554cd71b491c8ae3146b66b214cc9b0a569c3cafbb4d8be75e40b9653ceeb4762939d1860a0124f319fa60c3d12e8dfc0d62f6dde9ac9f19179e1b72931538a0b6c2cdc5ce34797f32fdf6adc4532fbe67c13e14b9bc558b09ca0d297263c9b9f079352404165f66f641be29f5dab18e0d9fbe74843bd556cb0e0e570cb0011b678702d6382d4d5d580caca2ec11eeaf6821a08800f6f1baee3c5109c591de852390344b1e7fea2a88542038e8c956f05c7436eb2edb8ef642523f75fccb6b856c59f6d6d7f6b9902c13ab9c4172751453bed7e4a59dd3d5f32da2465208c1fbe0ef9351e8460639a304233df47c7bcd6921fb43260f5a5b8addbbb6adb8a562e3a0895f38d3a3c550787c19ff9371bf3bf6779f89a75db6d63d72867d2b70bbc5e90917893a9561b11754b2e53c01c12819f54e57de48892f76dbddcac4f942a12b24b875afbe518c9971fb4748ec64045f157cbee1d882c312f317689c9b5e41464155328f6f5fdafcde77a129437b50a25fd10232d71ffd6430d3cdcf0c4f03567c4a438a72d3d32da92d2be669c807cbdba7b9fde83afc3c6282052b4225be733b26b25cdd6c8059cb0d57f4370253efb18f40ed72ae953196ddb1b8fd6e73fb6629baca393100769a1c914250b022d75a87988cb0844a01fd053beb49e31f755bbfe4f66f596814d04f083b04812cafb829c2c666e6afa489f349734f70612d5557a7c9a7c6676ddbd69a0f40054456db2101fed14dca9113a710b9e11f6dd5759a035c29f744bfe8e8714e98311221f3f8d33d27b7d63b43eefc06c1467a84128bcbaaa29951e1b3e41e1c6fdf071696d92afee9dfe76d441a73cde06d6e67029a0dd5f04ff0d6dec85b73d07e5c3786b117fa5a17677446e8228bb452771033ee9496934bafefd2260a0e58e257ef414c0f75c8709ef1723f0884dc2e5989c4ddb6fcd4e3ab23b12192bc5ca74da745db4d5fcdf12f8aa981ab09bd256d1c99a2f00ea4b78b0865a474b3bc8b066b6c861f242d1df6a64a1ccb50b3117e64f650a760ed18011ffd4aca085a1f11ed95229ebb141b9b37ef64e522536b1627232f8d0889389c5bdd1f0f6128fc46f44f00371520adbcc0e143a24dc6e811be76d0226650dd143614c7bd9d495d6bb3da8a426b7814d2ba89745758571a5dca068c2a74fc25c61de0722c2c4e8947b97f280605b45f5174e00e8969af2b8952e79c03c76cd21b40b6a0eebfaada3e8502c9104c209ac94f679df31961a525c5baf7684a1b8d488a3157e5e9da0f68a87eca4709cdd4ab37bf5712eeee25ecbaaf952f7e516cf12e578eba0a35a9557734f3c37384140a6e9af2c4b86d075fbe3da5acbefb3896ad30ebf3bd2ad37041b67c331c477819ce57ff844811ee89fb36be9fe9d7a1c255ae6d9f1a6496372da9ff3f800c2843b14d9c987c56acf76af7de9cd52a94240d38c95f0efd055244378d4e222df8694b1de3506e27373a2757811004184c94cb1a3cf65897205effcc60d59044cad76a348f04ca64fee9ecd685ad49309239399b61c14910293382558353f21d2d07e27cfd459d070e5858f1198a0b38517c359cc50c67881e1ee4d209f858f67cf7338f4d596ae7c3aa3893e2f0ec012bbbdcc4d1e640b7496b0f680b6fbcd7df27bbfdc5eae232f867d6a2869d3d9efee5c5ab3a465e14a21258d9760d51e309a8cdfa238e97f7ddcb8759d79c2609a1558f5bf5514124962d2f78c6cc93fc8f634b2e1a3c50e75658682c3cb0356f345c32577bba12420b191644e3d4549a5dfd5aec3c9a4ee919bd9d4dddf7dec68d1a7f3681a6aa0c441f90ca336b16d755c99ccb4b2f972ef6696c2bcb3bcf25de44b23d81f6faf02642da353c4c3ef81f5851a64642a7639af5fee83a6f316233cb0eb3dd7b52270c2176bcb8d82f445d45793edc1aedb5641830bc6a400e8db4ae553ceefcbe040a224c1c4113da9e56028bf26c672ae64cc72888f606f6acafc668be6d0437cbba23550d8db05c4ee1ccfa8fe078cf2bcc6d5c6cddccf39fa86264c02bf28145273761079c468bdeb5577851223505995faa69b80075f1d6eeda84d1ef27056e6919cfb15369fa1d3aa0aa9dd3a9bf0e5b263534089c75b56cf04b4838627f22195c30264a455eec3d341f838db5ad8f93678391f479d99bf4d70469efa6d1b9ea0f318b18a0f08618440cff31a75252f7746202c3575dbf57481c8c2564b99200108fdf1941b9f6556cba38e9f93c67e20a3d08c1b7bbaf1533c533ca08c2e94d627d102a6b99c30e206d486ba6517bfdfe03349363a56ac0d9cf0bbd0929cc440932372dbcc04adbe5f36d515f9dca62589a9f5a01fb991229ab3fb93db091466ab2942db3697c50e776d8073fadc9333874a89e451d0e3167ab560d5b275b840b4ebe6340d18ca6ea39d1ee166f95c43bac8c587aaa2eb3894944b39fffbb42287837968eed3f5da9bd99babac854dd86f75e7a31363b78f467d5ce041fe58f500a2aa95342c17ccf432b5437ed6eb6e23e70fc6c86670b854719f6ee7c35965ecb8af0f7132ea2af2953532beba10d6c1db5b1871716b4b5d72a49e2fcc61332658c7c10f2a5d9d7acd972969708262fa47adf8bfdd1f121cff4546f6475a56fd600239f0234d0fca38de0837b4c1a9b9ad1f3aa43c8c880089b3b062e0d021d104db7f3e70364ec41a7a6799174fe080c179fdd370547807d68ecf04324c00e55a6122d586e34c33d6f0d449682cb5a31e580fccbbe95ae4e7e7b75bf3e4b70be561855780b07a9a5cc891ff1e2a6c2a1618fb800ed9b2e3591c7a9bdd3f03090a32f8814202585477ad5e56b8e959ea2ce7ac61a0c4ba6d1e13bee136f49483eea27eb88ecc5280b6128318b312c2ef4a4f895fc25a55532b40bfa1295e6697b9495d28b2b0d01d4424c56d6898c52e60781521e82f724a22aef1d51be154425519d8cca6c392939f2695a0226567ffb2fe4c757a040ecd890411db366966d6aa3b81d9384b1e42f10afd57091df26faeafb786ca3cae7625654d3e0195b1b3c64c4d50f57650b37d592be333e21de6c8bb69b87e0ef84760dd836f5850d0e4f09f75671fad78bc9c393ab84c74a248ca9e1dd2d0b8ce7e77e666f221dbb0adf8083acb76f7f853d72ca6af6a88fe0390c711973aa7364066735cbf5144e233b53108ffb33b16c34a63594f2939a012c5f10ec5e1d36130e5a852af0f2583cd0e0e9ba1326e7a52948f9dfa05757e8b748a33cb6c6592c625a5155ece00b014cb7acb2f4c60eb0f7d071b62c3cd9d0f4a60dd9e5af048d1d52e0c247ea9314d3fbe05cf0757bae9ae1090d999a0235e26384d198e76ac84cb776f34f52dc617870fe4b1c95327aa591e0f870fb7b0ef504deab605f8d7247d83e51e219911caee1bb3689b2a28342d2dcc4a2cf6ea498a9e97df6a48875620cfca2ff9bbe05bb1b646ab000fd2613df099a1ce83bbac94f83014224512cd2cb4ed0237188371def3dfccc8b6866a05c0cb62e28a7055c854caca258bfe5ffbf9665774d804d566c28912fe802dcef15e38359a89ff0f4d78b0a5899f0dd946cb0a1f2215760d6f13364e27036d3718de87b098780a5a766af8475e2cb8946e2f1ac98ba2d1416bc1a150512d4e133f3a4ed9cd9edf2657adecd8a9477b800f51da5beb0a732a0f624e4f740f0dd41f12bcd3489ab861ab53c81c722410b763109b0ed22153af663a8c8ed165b40dae8bf442266b81502e700267bf351bc41972cd54246475656e0006a8b273bcac6353046be5682ea96a8bef5e4a7ac933ff2c57d450034504d3d72b4158b52b19554e9d77331230ee8c41cbe888748d4b59ab6647b62de6ea7d3a6c3f8781473576900ae5fab312f83ee6be5729e33a10ce347b61b00213f8333e6b8ce1426ed3de9c5ce4d64dab443b0de52017822babc8720a777523360d644fff61e64e2e08be98ebf3e01d4a0be8083bc1db53e058a3357ce3a56ef630d1e8dc332fd17494083ad7b673aced32cd04c897ec1a97c30e7fc6d14427c067e863418a9512a712f1410217610366a225a23a9a0992181bacfc7dfe29eed494630edc80cfadc578f79ec2bd07a6d93cd524033c3ebaa562effeddf3bcb6b5bc9157af99705ce6ac667c3a32ce482cc896942372acea710c8ce4af4ab7fd43202b743281e2d60be870b031990fddc4ff0f8d81762adef7600633cb80f2ae7475d2c07dd49f5667001cf771f9ad00f637c018eb1d7a1eabd0c4c47161fd0360e7f7e3fa624e2ac93886f7721246d7a6a356e344bb098a740778f3d7520b6716d43f314b8b0f7d51366d7ea1d43c9520d1a69c1abe4771b6de91d5f690082922ab68783a9c9c4c7739c02f2eb61ddb54a60e35c43c032ea9362bd10a8df1f114db8fb2562641e26d4780da5efee84eec270146b282a23be616da063bc8562aa5b42d52674b1f59b47fa925de0ed441f9352961989b1438a6c145a51e4ee0fdb68d2908f886b943583bacb02c2651c4b123d7d53913308cc0ce7b56208e7b1280e443d6440b976d55335789779dde6497d0dab9fe52b8b1f815b0887fc94c7677178ebeb6995595c839a208468e61d4e770b7274ff77c5a9cbfba1621e0ca65913cb816a3df6480d7357ad8a661d83b1fee70cf8930911b67689f183d550d7715c8a5c999429d879dd5fa6c5a2810a2cf17a695091ef41afeda20bbc0590f8904a4b01258020f46547f162666db6cb51f4d37f8e0abe00d43b963fa4d14d6c104cb077a888ba3d889cf96041fee635629deb0c96f499596ddc06668ea8b41d49513b6ed79cb417455954fbccce559c7c84ff650cfe5498d26556c239a3079d0112d5e52fe8c096d62073e00649668c72d8de5ff9c0706f5771f268f288b6d5f438b8e984c7276b1b2234fc126704442aab27ff6d756b78e4ec56002ee9b3ac450c8618f265f82a71a47678ebfeb9d5f565d53fe240c9a64e7633260b2998b0b103e26f4d085de496b5ed5d6c0460b83f0b8cb5761ed2b2db2d1b9f3478cf644339c5affa19a4859c08c4c99b957a9e17af0f9682cc74e9c39b1dd09d9099186a1a8a90f5a03c506f26b121beb30bee6e1bf5566f753f0f60bb185c9ace5d6f063e3b171986ad1fbb0a404b3b5423ac374967641e69fd2f00b377a728bcf25cce29cdecca1dd38121999aff203ee74aa09a6970e90cd2c4daec924366c1f4859e4e2760047c49e883b933e865694466aa4a25e45acee03a54bd7dacfd9ed2db231f3b0cd03557d4f05c19cf60b2c1d5537b06a59fb5907c2143ba027c17c9bb46034b7726059dc615634bd2d747dea57f528df42c999c9563001f1118048ac2563c5c9fa3b78e0f2af84964fb10adb8d6983ebc6ce4a1321d924c9cc65babf7ad507c48740588057526c8ec8309c57124ed39904f0da8cdd916d349b6e4ca6a943ddc66537763d69c86d971ce29831dddfc572f4fb5814ae1af986888de5a72f5064d3151d0550eed1ba988bbe7005a88812530f07fa25fa3f8562e558876c2f95db91c28e2c58bc83554b80d6ce3bee8c53b4a0733945915679e93614f67b26a3db4499f610b0bb7998999f304e99e2efc4ecd36d00fb15628da58fea60efa1f3c4964bbe6785d56c8ce27287be1e06aac9b24684dd8dbc95f948e52b4abfb21213ef85b4c041ba82e7c8610fa7e8eb4d25b5b7b55aef7db0d9c56078adaff2a2c27b9f2a4a2653394a1e27d04e535f73a15f9f2f49120abdff104f44675ab834d2e240f14bb7359dc14dc2b320220d2ab045b833257891c2e4ec4a0a0b042844c298410ea0a47accc320d4f7a2ab927f6cc2f86a972ea9e38df5bf7c267babf5211929aa138611704ec9148e86c3dc83c908cf0a207d54b461d35b3cca794ef22ee943888dd1e7d0269a06b8c95f6184de378f8fb81209744b35db54b54ee333697101bb9514719d008ebe058f7ef51197b91625cc60e5500263c6659321eee26eec139f7b3bf232d45d9f1e7984339a5f769397f700eb19707e64c147808ee2e466c301d9875838cf68f9784a92fa15cec6eed25d5d6b800eca8b8b941f1eb349f2b43f3735e899f8ea75e82a07a3ef4470c5350df29fbf018aa84873d5f190023896f5a3e5a7fe3ce5480cd27b75db256946f7697440805690ec3f245865f529157fab19ceff45ff6d72abefc71e00c05bdc909d7b54817ca907b650f8d52715a1258190908b39b5b4cf22f8af2908ca9c97f222cf6356674d087a1cd3db84cc5d925657dd376f8bb8ca2dfc71dd0dc2dfba3eef052075fd7eff3de023ae516a9adbbe6e7231bbd6f3860b15f95e75441c63cb01536f57cc0afd92d6425d159ff3be95a253c01e576ce0503b5e9bc474a84c09b753a92e3ac2ee1f4f037dc1b0e75ae1dae344f084cc45db339285ca3d753133f7938f343cadfb3bdc6897d6dec8f407f63b9b89aff8d7cf79d7e05292ef841575c5b119f6c886fb6ff5d5e0b59f4f7f9e14ed7a68c16c95375b716754e01f5bbda3875535396582aa958b65d05e26aecde31bf74607e7b5fde57e1a684740532ae14cf3918294c25a156f608f569824c36b0e5ac2e14258295178bcb1aac658bbca540fed256dd28b991e462d720953565d9b3acf2f72a9441fddb9f3bf623bcc3a0f7dec72652e68822335762b51ec96cff94464d94e8e3ae08a61b458b8563eaece805e0a198437d5e662373fe24b6d95335acd0121fa1ed9970b3ce9c9f34dbdd25eb1781f8415827af0de9358f452810db58eabc2e4101d6679e6f4f8e188c574eba08cb7dda783ea039fd7fa00e96d9f2f589957b6a70ae58fc9cd90957c00031556f6cdf2e842fbd73151e91407672befb49e221d84149fbaeff6657f1a42cce4888ad1d6daed0451c489a16d0de26b9498108cc34bbfc407c9554223593bb74e6a5b4744cd5c58c4a4dc36ee07780447f989136215abb91fc57fca8feb8499a24224178f69274ce256a26a4370bc5528d8a4c6be81d45c3b6c0ac7a0fcc770feff981f105d31b4b4ba9141f9fa76aa5e2af488a28429975d0c0b7aabb9a0a93cb858e2924f5aa9a2ad585ef3b8dee5a1d14b3f6326adfe4fe41a9a5fc02e745e2445f23c3c442c9432094bccb0525df5d67e79fbb6bdbd4f4a33ca39e522a398602f70b2c43bbeb20640527a5e7e8124668d9036aa3ab5f1146d294a4b0f82c472f406e3ce18b9242104b8364233b6b6b110ee3d7e575b649a1154c6818723b2a7bfba3906414d857e7f2179dc3e992da0ae549c18df3e0fb79febbef19db0ee2aa375ced1801f35e148c17f4ba6dd65489794d3bf9693ddaaf28039325808a5d4d71eb063405231a779f1d363f920e9fefcae3e96a1838e13e3a7d90fdf4dfd7ed97270b6fa8c15a72a99cfea5c4534e8a753dc7a1737e93e757ae429ccdca52ba9aa0a4c53c3a50baf17f6cd38f36e77444fd01db48c924bfbeab99fd0cded11eaca2a10585e40ae907f22ea1d81b473e463bb2154bbd7585cd2e90d8d3519b3f5a4ea405224252c8f2d21558ea141752d8b89be33aec14edffb25b50ca1e5862780470998d6749b4f5f73c2fb8a6510af3c54dd35f5f2e849f9d4c8f7a929ef210776f4859872f9be89c3f267d9c5d94673c018df7750f4f94ce3da779f6ea7a4ddf0e1d19f351071254b6eab31dc5af0dc350943e44fe7b3718cb21d856db7b7c53715bb7743d0382a12c5317a0e182f4b99b96738c149c863ee41e75337bc42253e1e35a7547901f133b4645ea168f79b2914503fac9ba7e49692bad4cf3354d6d383d4b174115d211778b75a1a6a51b2349636c09431f1290c37c3cd4b00700eeb2f665fb39b942a7db0a55c8bd4eceaebcf7f06820f8810865fbc9e68411cf24115dc12e6ec82ad19e563f7dc3ad590b4e114d42c47b86977f55d672eae61599954b5af26afcde6f3c449bd1747e368f7463e7b580e66c657adf5836520761aa9beb730f003c8e7de95099724974608308c384a4720e561c01d16335b67244cc035ee6134408996beeabd12598382f860981edb52730d41c96969ccd1284902e3129cd234988267626bc6b045bf51a245ebec9c6e352037d293950107f80365b65b29ad5600cca32ad7a8bba5f69280ce81cdf50ad089f331005fda9c50188d294b925026602401de156ad11f7c7995a9941e92c5b4714da097744dbe0155f1c82b4886f1b624382ac70dd600286b0afa285cbc39b61f69d3f949cea3de4a48555288b291e521b1f3df7574da9925b74ca76fba8274737f92a6689b79a41266d06b6d20a51f739011219a3cc06a615232ca22c7f54a8821b028447efa33feca90ae4117108b23f37061fb01f4b3b71d4c7932fa0fe10bb03239bf10090619a12e8d6671251e132f8242208a2361dcdc6803058c05542e7cf9e7fa6ceca0999b39ec736ff60aa6e906962d630487f0ce5c4048cfb53d55e8f0ea6f1f99e70e941e484fba11305ee7ecb41e6a664e6d8c7012c11982afc0fbf6d0420132999c123ac0a8d2b57f37d7f6535c9218bb7fcdd69c04f7070c91d28d55f892008d1db3adaeeb2000427feb5263d1f3579154715060c418251abc6861daea79041c273b22761f22340ea390f928dd46c1861ca9b3f7d610f257afd0dd723728b13cbb75e6a77d44f0e9b9deafd0a85c8f7848f6ef018cbcabf438920eacff38a1988c55e98f88ae06e8f51e0171925237f93470b59c46aba38add08e49b0bfca079c4aedd2193c9846c76d80ceb63d310d333ecaf4f0ad9694be79dd79239e10344fd828f99278f62c53fad0a9607016decd3a8074180800728721567a785bf733565a5b957060f917e22ad1926a3fd5b292d1d38c89800fd8b715c4fde84f5a3d6faa6f64b1878a1ec8519e5c8e2474fea72b7a66e9fa23cb46ae2c3acffbbd0b0eb2c6f6a6636824021310f1704c0f615c2bcd09047c7ab5980841001d5e55daf4ebdbc273204e6991411ac5feefb2436a2b315e5d71539c3be7dc357197efab4866f81ba153811a1f7e02cc21ddc3660d5b58a115032cabc85d2425c543dde1f4ca428fe0831244a32725c3369dbbe0319a8372a3f22a05778445b8736926a0589e66100ed6684e12b8c8266c191da346bb394b03a7a6a2902e769771532c26b45bc97e5e254770db3b3b26275c4e11503f16d782d04537f7a16026a0ed31d077d8c7ad0b3c8118549b71622f3e3c2605d73eb5bc8cce7ea8cca80fc24266e19f6788ca1e127d0dda737ee2e18c96dfe3e6d648ce4d95e1449064afe0cb18fb18ae4a3b4a5a5c5d6b954aa25dbbcfbb10f9b5a4fe20a867f1331250553de6d09d516937bfbdbf12e83453d327b43edacfdc8880bbda43a561d4127489296af16641d30a00301302ffcefedb2aa9d82f4ec04c2f01b37fb5881dcac4acdc49bb4fa553e6adc3ff10c6218dbfe446962411c5a12c466949535f71ece309ba95d440f1035bd81e811aed86f899aa56fba7893f651f4ad1286018c3cc5fef44c180610af9c717b77072d01cd31afe8aa41d44b20602bf281098ad7573c458545bc850561b1cfada7b1b505993337a019280aef446943bc2561366201b744a4214a8f0ddf89c4e7c8201a82913737ae53d5d7cae0bcb20b6d6611da83e49a48dc57e9b2829fca0e5022c51480d86fb7288f1fd36c8ed1e51ed888bb4b943707a7cfb75011340649281378347d6738ff13aa6a84da1040cb067d44f211c6a72623e58a2c18ece55e3b03c09f749de4b5eafa622b534d24f0a444ea8b79053f606fd90e59baa7997fc8f3a170020e086001a78d7a93e1e9a72188bc4740d7ee6ff9ee0ced1ee7f60e9232e06fcd451dadab3789bb524b9a594dc73e26a53f14b64bc847c374c84c67e6306eb01dd9d906b9fbbda87e58ef0ed0a2e717770f887e43e66b443fc0dc7040a672e7c32c2ed930e8a4e1ce8fe1d0e53dbc99497b08798a71b788528df0e9261503fd431fc3fb560138c416e3ef52dd8cc431aa999195f817a61d56513cb5f3f282e7f540e7250a2e07e002316da35c5088848fd633a3697bbaa506ec5a560b032ddf438c674b3b0b5726a145f8d224508d9f7d052bb3a8f49cfb9bba80eff0d3896a141f6edef567e229c0e1cc5edd2bbbf0ceb8eb60c25f6c745a9fb4c99665fe825ea4d14329cae29807abc7b1c2af099d31445573672402417101a99526a3883c4458c7f302b482e6250166848cd4627ca1773da2cdd8451156fd4be5f5f693673fb55d6fed7fad196be813e6518696a94d85c01896639b67767da22a9af0e5556216331dbbc3adb8223787a7e2a093f512419a2b187a715311c2a695efb70839e3c3f22a64aae8209bd6f1ec4abab5b2289d1bb5490d8941b6942703f9d3598b38df609ba525543b9862ae9c3a2710904f828f81293978a849f72b43f5832539ff270a4d457856163e2a852aa2fb3b1a1131594dc831e02e939317dbe240d6fb096b9aec0fe0c25b7d21cf0fcb199f9d463b6116b41fe532717c7e4800418e0985880d8868a0965733b6de457f5ce26d2ad3c74d4fc7abd3444823cc8ba00341fb92011b8589310633f043eede1c9e8599cebdad8a6281b9c5204c19c620da57815c34c776560e8120807e78bce180854764207e1f4e2c9e95d983673682c01e6bdcb8fef91622fe6be162b1c3fa3166d6b330d5144a1f64974af78b21e \ No newline at end of file diff --git a/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_proof/20462788.txt b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_proof/20462788.txt new file mode 100644 index 000000000..a559026df --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_proof/20462788.txt @@ -0,0 +1 @@ +0x94794441e1aa8ed3cffd990696e4db1c14915205278cde614a99038b883e194dda5531c3ecc81ef9dff358619494a691 \ No newline at end of file diff --git a/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_proof/20462818.txt b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_proof/20462818.txt new file mode 100644 index 000000000..eeef7727c --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/test_data/blob_proof/20462818.txt @@ -0,0 +1 @@ +0x976c2a8dde9ad32a978f2e486084ea1b74ee1ac01a1552179ec79330e50dade27db4a7f8b9c556be47f1b783f890ae7d \ No newline at end of file diff --git a/orchestrator/crates/settlement-clients/ethereum/src/test_data/contract_abi/starknet_core_contract.json b/orchestrator/crates/settlement-clients/ethereum/src/test_data/contract_abi/starknet_core_contract.json new file mode 100644 index 000000000..d474cbc6b --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/test_data/contract_abi/starknet_core_contract.json @@ -0,0 +1,717 @@ +[ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "changedBy", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "oldAggregatorProgramHash", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "newAggregatorProgramHash", + "type": "uint256" + } + ], + "name": "AggregatorProgramHashChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "changedBy", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "oldConfigHash", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "newConfigHash", + "type": "uint256" + } + ], + "name": "ConfigHashChanged", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "fromAddress", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "toAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]" + } + ], + "name": "ConsumedMessageToL1", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "fromAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "toAddress", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "selector", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + } + ], + "name": "ConsumedMessageToL2", + "type": "event" + }, + { "anonymous": false, "inputs": [], "name": "Finalized", "type": "event" }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "uint256", + "name": "fromAddress", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "address", + "name": "toAddress", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]" + } + ], + "name": "LogMessageToL1", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "fromAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "toAddress", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "selector", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "fee", + "type": "uint256" + } + ], + "name": "LogMessageToL2", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "acceptedGovernor", + "type": "address" + } + ], + "name": "LogNewGovernorAccepted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "nominatedGovernor", + "type": "address" + } + ], + "name": "LogNominatedGovernor", + "type": "event" + }, + { + "anonymous": false, + "inputs": [], + "name": "LogNominationCancelled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "LogOperatorAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "operator", + "type": "address" + } + ], + "name": "LogOperatorRemoved", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "removedGovernor", + "type": "address" + } + ], + "name": "LogRemovedGovernor", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes32", + "name": "stateTransitionFact", + "type": "bytes32" + } + ], + "name": "LogStateTransitionFact", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "globalRoot", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "int256", + "name": "blockNumber", + "type": "int256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "blockHash", + "type": "uint256" + } + ], + "name": "LogStateUpdate", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "fromAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "toAddress", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "selector", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + } + ], + "name": "MessageToL2Canceled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "fromAddress", + "type": "address" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "toAddress", + "type": "uint256" + }, + { + "indexed": true, + "internalType": "uint256", + "name": "selector", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "payload", + "type": "uint256[]" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "nonce", + "type": "uint256" + } + ], + "name": "MessageToL2CancellationStarted", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "changedBy", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "oldProgramHash", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "newProgramHash", + "type": "uint256" + } + ], + "name": "ProgramHashChanged", + "type": "event" + }, + { + "inputs": [], + "name": "aggregatorProgramHash", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "toAddress", "type": "uint256" }, + { "internalType": "uint256", "name": "selector", "type": "uint256" }, + { "internalType": "uint256[]", "name": "payload", "type": "uint256[]" }, + { "internalType": "uint256", "name": "nonce", "type": "uint256" } + ], + "name": "cancelL1ToL2Message", + "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "configHash", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "fromAddress", "type": "uint256" }, + { "internalType": "uint256[]", "name": "payload", "type": "uint256[]" } + ], + "name": "consumeMessageFromL2", + "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "finalize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getMaxL1MsgFee", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "identify", + "outputs": [{ "internalType": "string", "name": "", "type": "string" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "bytes", "name": "data", "type": "bytes" }], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "isFinalized", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isFrozen", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "user", "type": "address" } + ], + "name": "isOperator", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bytes32", "name": "msgHash", "type": "bytes32" } + ], + "name": "l1ToL2MessageCancellations", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "l1ToL2MessageNonce", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bytes32", "name": "msgHash", "type": "bytes32" } + ], + "name": "l1ToL2Messages", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "bytes32", "name": "msgHash", "type": "bytes32" } + ], + "name": "l2ToL1Messages", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "messageCancellationDelay", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "programHash", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "newOperator", "type": "address" } + ], + "name": "registerOperator", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "toAddress", "type": "uint256" }, + { "internalType": "uint256", "name": "selector", "type": "uint256" }, + { "internalType": "uint256[]", "name": "payload", "type": "uint256[]" } + ], + "name": "sendMessageToL2", + "outputs": [ + { "internalType": "bytes32", "name": "", "type": "bytes32" }, + { "internalType": "uint256", "name": "", "type": "uint256" } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "newAggregatorProgramHash", + "type": "uint256" + } + ], + "name": "setAggregatorProgramHash", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "newConfigHash", "type": "uint256" } + ], + "name": "setConfigHash", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "delayInSeconds", "type": "uint256" } + ], + "name": "setMessageCancellationDelay", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "newProgramHash", "type": "uint256" } + ], + "name": "setProgramHash", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "starknetAcceptGovernance", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "starknetCancelNomination", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "user", "type": "address" } + ], + "name": "starknetIsGovernor", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "newGovernor", "type": "address" } + ], + "name": "starknetNominateNewGovernor", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "governorForRemoval", + "type": "address" + } + ], + "name": "starknetRemoveGovernor", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "toAddress", "type": "uint256" }, + { "internalType": "uint256", "name": "selector", "type": "uint256" }, + { "internalType": "uint256[]", "name": "payload", "type": "uint256[]" }, + { "internalType": "uint256", "name": "nonce", "type": "uint256" } + ], + "name": "startL1ToL2MessageCancellation", + "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "stateBlockHash", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "stateBlockNumber", + "outputs": [{ "internalType": "int256", "name": "", "type": "int256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "stateRoot", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "removedOperator", + "type": "address" + } + ], + "name": "unregisterOperator", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256[]", + "name": "programOutput", + "type": "uint256[]" + }, + { + "internalType": "uint256", + "name": "onchainDataHash", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "onchainDataSize", + "type": "uint256" + } + ], + "name": "updateState", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256[]", + "name": "programOutput", + "type": "uint256[]" + }, + { "internalType": "bytes[]", "name": "kzgProofs", "type": "bytes[]" } + ], + "name": "updateStateKzgDA", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } +] diff --git a/orchestrator/crates/settlement-clients/ethereum/src/test_data/program_output/20468828.txt b/orchestrator/crates/settlement-clients/ethereum/src/test_data/program_output/20468828.txt new file mode 100644 index 000000000..32c67eaf8 --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/test_data/program_output/20468828.txt @@ -0,0 +1,23 @@ +3018624736188101328246297444318644294563497602220136692870273928697775988666 +1151630580362070988738268361000255623588004050079088328197570103143309491006 +666040 +3177057833047671898647187604563418056605025652261842640856515337450823335648 +2590421891839256512113614983194993186457498815986333310670788206383913888162 +1 +1061847063359104755717935913364096764981563580403432547646 +3164098607841814262685584562065384014561507683008279950804 +2163376855567109814935508075637289690251398831877065408270981012600474013295 +98755104937949709628642176073380055704 +104362282196061853877497059290599067159 +0 +10 +1092735609972394726528730534548720965203717757019 +241939744573875736075283046176274470447710245184526611146097095139641614684 +1658854 +774397379524139446221206168840917193112228400237242521560346153613428128537 +5 +726330175714135941764069406682033110407748398240 +107328282983576198777841180606493918532289616812 +827937323922753091213038911432679783215737312167447066598033347469054956751 +146531850000000000000 +0 \ No newline at end of file diff --git a/orchestrator/crates/settlement-clients/ethereum/src/test_data/program_output/6806848.txt b/orchestrator/crates/settlement-clients/ethereum/src/test_data/program_output/6806848.txt new file mode 100644 index 000000000..7d23d9c7b --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/test_data/program_output/6806848.txt @@ -0,0 +1,23 @@ +490484877666935282615639602163863306547271945626320901957250466559435258548 +2876348406695263058281552860729083155552254053493921093399943037400746761498 +218378 +218402 +393842827294899621339944907889419935484644575784433342034999861334613636865 +2244718096581819455040245192042432958912994404839205356697616462457277387918 +853638403225561750106379562222782223909906501242604214771127703946595519856 +8868593919264901768958912247765226517850727970326290266005120699201631282 +1 +0 +1116356949401997342206793541080498420972579382062295410102327717450626610259 +1 +3829554895080573161936128437666296737279266284229662833664 +3601084149486349456884152465009736220376147332785234694206 +252379475490400814072987383727930871091 +30223123769761850871635713177919147631 +5 +386882607682148352733422149233344151821672205755126951321458959921392157897 +889799441117465151324196759054587385930336562083 +2 +2994072667907660339590448524919734981641346931313367141517476697271047723764 +2579439027737070399909731953489078999442299693390641696158076053318789362290 +0 \ No newline at end of file diff --git a/orchestrator/crates/settlement-clients/ethereum/src/tests/mod.rs b/orchestrator/crates/settlement-clients/ethereum/src/tests/mod.rs new file mode 100644 index 000000000..bbd4a8e54 --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/tests/mod.rs @@ -0,0 +1,432 @@ +use std::env; +use std::path::PathBuf; +use std::str::FromStr; + +use alloy::node_bindings::{Anvil, AnvilInstance}; +use alloy::primitives::Address; +use alloy::providers::ext::AnvilApi; +use alloy::providers::ProviderBuilder; +use alloy::sol; +use utils::env_utils::get_env_var_or_panic; +// Using the Pipe trait to write chained operations easier +#[allow(dead_code)] +trait Pipe: Sized { + fn pipe T>(self, f: F) -> T { + f(self) + } +} + +// Implement Pipe for all types +impl Pipe for S {} + +// TODO: betterment of file routes + +use lazy_static::lazy_static; +use url::Url; + +lazy_static! { + static ref ENV_FILE_PATH: PathBuf = PathBuf::from(".env.test"); + static ref CURRENT_PATH: String = env::current_dir() + .expect("Failed to get current directory") + .to_str() + .expect("Path contains invalid Unicode") + .to_string(); + static ref ETH_RPC: String = get_env_var_or_panic("MADARA_ORCHESTRATOR_ETHEREUM_SETTLEMENT_RPC_URL"); + pub static ref MADARA_ORCHESTRATOR_STARKNET_OPERATOR_ADDRESS: Address = + Address::from_str(get_env_var_or_panic("MADARA_ORCHESTRATOR_STARKNET_OPERATOR_ADDRESS").as_str()) + .expect("Could not parse MADARA_ORCHESTRATOR_STARKNET_OPERATOR_ADDRESS"); + static ref STARKNET_CORE_CONTRACT_ADDRESS: Address = + Address::from_str(get_env_var_or_panic("MADARA_ORCHESTRATOR_L1_CORE_CONTRACT_ADDRESS").as_str()) + .expect("Could not parse MADARA_ORCHESTRATOR_L1_CORE_CONTRACT_ADDRESS"); + pub static ref TEST_NONCE: u64 = 666068; +} + +// SOLIDITY FUNCTIONS NEEDED +sol!( + #[allow(missing_docs)] + #[sol(rpc)] + STARKNET_CORE_CONTRACT, + "src/test_data/contract_abi/starknet_core_contract.json" +); + +sol! { + #[allow(missing_docs)] + #[sol(rpc, bytecode="6080604052348015600e575f80fd5b506101c18061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063507ee5281461002d575b5f80fd5b6100476004803603810190610042919061010d565b610049565b005b50505050565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261007857610077610057565b5b8235905067ffffffffffffffff8111156100955761009461005b565b5b6020830191508360208202830111156100b1576100b061005f565b5b9250929050565b5f8083601f8401126100cd576100cc610057565b5b8235905067ffffffffffffffff8111156100ea576100e961005b565b5b6020830191508360208202830111156101065761010561005f565b5b9250929050565b5f805f80604085870312156101255761012461004f565b5b5f85013567ffffffffffffffff81111561014257610141610053565b5b61014e87828801610063565b9450945050602085013567ffffffffffffffff81111561017157610170610053565b5b61017d878288016100b8565b92509250509295919450925056fea2646970667358221220a4f885f02f3fe00b96deaedfe0b727380694ef82ad021223472395e757405c1b64736f6c634300081a0033")] + contract DummyCoreContract { + function updateStateKzgDA(uint256[] calldata programOutput, bytes[] calldata kzgProof) external { + } + } +} + +pub struct EthereumTestBuilder { + fork_block: Option, + impersonator: Option
, +} + +#[allow(dead_code)] +pub struct EthereumTest { + _anvil: AnvilInstance, + provider: alloy::providers::RootProvider>, + pub rpc_url: Url, +} + +const BLOCK_TIME: u64 = 6; + +#[allow(clippy::new_without_default)] +impl EthereumTestBuilder { + pub fn new() -> Self { + EthereumTestBuilder { fork_block: None, impersonator: None } + } + + pub fn with_fork_block(mut self, block_no: u64) -> Self { + self.fork_block = Some(block_no); + self + } + + pub fn with_impersonator(mut self, impersonator: Address) -> Self { + self.impersonator = Some(impersonator); + self + } + + pub async fn build(&self) -> EthereumTest { + // Load ENV vars + dotenvy::from_filename(&*ENV_FILE_PATH).expect("Could not load .env.test file."); + + // Setup Anvil + let anvil = match self.fork_block { + Some(fork_block) => Anvil::new() + .fork(&*ETH_RPC) + .fork_block_number(fork_block) + .block_time(BLOCK_TIME) + .try_spawn() + .expect("Could not spawn Anvil."), + None => Anvil::new().block_time(BLOCK_TIME).try_spawn().expect("Could not spawn Anvil."), + }; + + // Setup Provider + let provider = ProviderBuilder::new().on_http(anvil.endpoint_url()); + + if let Some(impersonator) = self.impersonator { + provider.anvil_impersonate_account(impersonator).await.expect("Unable to impersonate account."); + } + + let rpc_url = anvil.endpoint_url(); + + EthereumTest { _anvil: anvil, provider, rpc_url } + } +} + +#[cfg(test)] +#[cfg(feature = "testing")] +mod settlement_client_tests { + use std::fs; + use std::fs::File; + use std::io::{BufRead, BufReader}; + use std::str::FromStr; + use std::time::Duration; + + use alloy::eips::eip4844::BYTES_PER_BLOB; + use alloy::primitives::Address; + use alloy::providers::Provider; + use alloy::sol_types::private::U256; + use alloy_primitives::FixedBytes; + use color_eyre::eyre::eyre; + use rstest::rstest; + use settlement_client_interface::{SettlementClient, SettlementVerificationStatus}; + use tokio::time::sleep; + use utils::env_utils::get_env_var_or_panic; + + use super::{BLOCK_TIME, ENV_FILE_PATH}; + use crate::conversion::to_padded_hex; + use crate::tests::{ + DummyCoreContract, EthereumTestBuilder, Pipe, CURRENT_PATH, MADARA_ORCHESTRATOR_STARKNET_OPERATOR_ADDRESS, + STARKNET_CORE_CONTRACT, STARKNET_CORE_CONTRACT_ADDRESS, + }; + use crate::types::{bytes_be_to_u128, convert_stark_bigint_to_u256}; + use crate::{EthereumSettlementClient, EthereumSettlementValidatedArgs, Y_HIGH_POINT_OFFSET, Y_LOW_POINT_OFFSET}; + + #[rstest] + #[tokio::test] + /// Tests if the method is able to do a transaction with same function selector on a dummy + /// contract. If we impersonate starknet operator then we loose out on testing for validity + /// of signature in the transaction. Starknet core contract has a modifier `onlyOperator` + /// that restricts anyone but the operator to send transaction to `updateStateKzgDa` method + /// And hence to test the signature and transaction via a dummy contract that has same function + /// selector as `updateStateKzgDa`. and anvil is for testing on fork Eth. + async fn update_state_blob_with_dummy_contract_works() { + dotenvy::from_filename(&*ENV_FILE_PATH).expect("Could not load .env.test file."); + + let setup = EthereumTestBuilder::new().build().await; + + let ethereum_settlement_params = EthereumSettlementValidatedArgs { + ethereum_rpc_url: setup.rpc_url, + ethereum_private_key: get_env_var_or_panic("MADARA_ORCHESTRATOR_ETHEREUM_PRIVATE_KEY"), + l1_core_contract_address: Address::from_str(&get_env_var_or_panic( + "MADARA_ORCHESTRATOR_L1_CORE_CONTRACT_ADDRESS", + )) + .expect("Invalid L1 core contract address"), + starknet_operator_address: Address::from_str(&get_env_var_or_panic( + "MADARA_ORCHESTRATOR_STARKNET_OPERATOR_ADDRESS", + )) + .expect("Invalid Starknet operator address"), + }; + + // Deploying a dummy contract + let contract = DummyCoreContract::deploy(&setup.provider).await.expect("Unable to deploy address"); + let ethereum_settlement_client = EthereumSettlementClient::with_test_params( + setup.provider.clone(), + *contract.address(), + ethereum_settlement_params.ethereum_rpc_url, + None, + ); + + // Getting latest nonce after deployment + let nonce = ethereum_settlement_client.get_nonce().await.expect("Unable to fetch nonce"); + + // keeping 16 elements because the code accesses 10th index as program output + let program_output = vec![[0; 32]; 16]; + // keeping one element as we've a check in build_proof + let blob_data_vec = vec![vec![0; BYTES_PER_BLOB]]; + + // Calling update_state_with_blobs + let update_state_result = ethereum_settlement_client + .update_state_with_blobs(program_output, blob_data_vec, nonce) + .await + .expect("Could not go through update_state_with_blobs."); + + // Asserting, Expected to receive transaction hash. + assert!(!update_state_result.is_empty(), "No transaction Hash received."); + + let txn = setup + .provider + .get_transaction_by_hash(FixedBytes::from_str(update_state_result.as_str()).expect("Unable to convert txn")) + .await + .expect("did not get txn from hash") + .unwrap(); + + assert_eq!(txn.hash.to_string(), update_state_result.to_string()); + assert!(txn.signature.is_some()); + assert_eq!(txn.to.unwrap(), *contract.address()); + + // Testing verify_tx_inclusion + sleep(Duration::from_secs(BLOCK_TIME + 2)).await; + ethereum_settlement_client + .wait_for_tx_finality(update_state_result.as_str()) + .await + .expect("Could not wait for txn finality."); + let verified_inclusion = ethereum_settlement_client + .verify_tx_inclusion(update_state_result.as_str()) + .await + .expect("Could not verify inclusion."); + assert_eq!(verified_inclusion, SettlementVerificationStatus::Verified); + } + + #[rstest] + #[tokio::test] + #[case::basic(6806847)] + /// tests if the method is able to impersonate the`Starknet Operator` and do an `update_state` + /// transaction. We impersonate the Starknet Operator to send a transaction to the Core + /// contract Here signature checks are bypassed and anvil is for testing on fork Eth. + async fn update_state_blob_with_impersonation_works(#[case] fork_block_no: u64) { + dotenvy::from_filename(&*ENV_FILE_PATH).expect("Could not load .env.test file."); + + let setup = EthereumTestBuilder::new() + .with_fork_block(fork_block_no) + .with_impersonator(*MADARA_ORCHESTRATOR_STARKNET_OPERATOR_ADDRESS) + .build() + .await; + + let ethereum_settlement_params = EthereumSettlementValidatedArgs { + ethereum_rpc_url: setup.rpc_url, + ethereum_private_key: get_env_var_or_panic("MADARA_ORCHESTRATOR_ETHEREUM_PRIVATE_KEY"), + l1_core_contract_address: Address::from_str(&get_env_var_or_panic( + "MADARA_ORCHESTRATOR_L1_CORE_CONTRACT_ADDRESS", + )) + .expect("Invalid L1 core contract address"), + starknet_operator_address: Address::from_str(&get_env_var_or_panic( + "MADARA_ORCHESTRATOR_STARKNET_OPERATOR_ADDRESS", + )) + .expect("Invalid Starknet operator address"), + }; + + let ethereum_settlement_client = EthereumSettlementClient::with_test_params( + setup.provider.clone(), + ethereum_settlement_params.l1_core_contract_address, + ethereum_settlement_params.ethereum_rpc_url, + Some(ethereum_settlement_params.starknet_operator_address), + ); + + // let nonce = ethereum_settlement_client.get_nonce().await.expect("Unable to fetch nonce"); + + let nonce = setup + .provider + .get_transaction_count(*MADARA_ORCHESTRATOR_STARKNET_OPERATOR_ADDRESS) + .await + .unwrap() + .to_string() + .parse::() + .unwrap(); + // Create a contract instance. + let contract = STARKNET_CORE_CONTRACT::new(*STARKNET_CORE_CONTRACT_ADDRESS, setup.provider.clone()); + + // generating program output and blob vector + let program_output = get_program_output(fork_block_no + 1); + let blob_data_vec = get_blob_data(fork_block_no + 1); + + // Calling update_state_with_blobs + let update_state_result = ethereum_settlement_client + .update_state_with_blobs(program_output.clone(), blob_data_vec, nonce) + .await + .expect("Could not go through update_state_with_blobs."); + + // Asserting, Expected to receive transaction hash. + assert!(!update_state_result.is_empty(), "No transaction Hash received."); + + sleep(Duration::from_secs(10)).await; + ethereum_settlement_client + .wait_for_tx_finality(update_state_result.as_str()) + .await + .expect("Could not wait for txn finality."); + + let verified_inclusion = ethereum_settlement_client + .verify_tx_inclusion(update_state_result.as_str()) + .await + .expect("Could not verify inclusion."); + assert_eq!(verified_inclusion, SettlementVerificationStatus::Verified); + + // Call the contract, retrieve the latest stateBlockNumber. + let latest_block_number = contract.stateBlockNumber().call().await.unwrap(); + + let expected_latest_block_number = bytes_to_u32(program_output[3].as_slice()).unwrap(); + assert_eq!(expected_latest_block_number, latest_block_number._0.as_u32()); + } + + #[rstest] + #[tokio::test] + #[case::typical(6806847)] + async fn get_last_settled_block_typical_works(#[case] fork_block_no: u64) { + dotenvy::from_filename(&*ENV_FILE_PATH).expect("Could not load .env.test file."); + let setup = EthereumTestBuilder::new().with_fork_block(fork_block_no).build().await; + + let ethereum_settlement_params = EthereumSettlementValidatedArgs { + ethereum_rpc_url: setup.rpc_url, + ethereum_private_key: get_env_var_or_panic("MADARA_ORCHESTRATOR_ETHEREUM_PRIVATE_KEY"), + l1_core_contract_address: Address::from_str(&get_env_var_or_panic( + "MADARA_ORCHESTRATOR_L1_CORE_CONTRACT_ADDRESS", + )) + .expect("Invalid L1 core contract address"), + starknet_operator_address: Address::from_str(&get_env_var_or_panic( + "MADARA_ORCHESTRATOR_STARKNET_OPERATOR_ADDRESS", + )) + .expect("Invalid Starknet operator address"), + }; + + let ethereum_settlement_client = EthereumSettlementClient::with_test_params( + setup.provider.clone(), + ethereum_settlement_params.l1_core_contract_address, + ethereum_settlement_params.ethereum_rpc_url, + None, + ); + assert_eq!( + ethereum_settlement_client.get_last_settled_block().await.expect("Could not get last settled block."), + 218378 + ); + } + + #[rstest] + #[tokio::test] + #[case::basic(6806848)] + async fn creating_input_data_works(#[case] fork_block_no: u64) { + use c_kzg::Bytes32; + + use crate::conversion::get_input_data_for_eip_4844; + + let program_output = get_program_output(fork_block_no); + let blob_data_vec = get_blob_data(fork_block_no); + + let x_0_value_bytes32 = Bytes32::from(program_output[10]); + let y_0 = Bytes32::from( + convert_stark_bigint_to_u256( + bytes_be_to_u128(&program_output[Y_LOW_POINT_OFFSET]), + bytes_be_to_u128(&program_output[Y_HIGH_POINT_OFFSET]), + ) + .to_be_bytes(), + ); + + let kzg_proof = EthereumSettlementClient::build_proof(blob_data_vec, x_0_value_bytes32, y_0) + .expect("Unable to build KZG proof for given params.") + .to_owned(); + + let input_bytes = get_input_data_for_eip_4844(program_output, kzg_proof).expect("unable to create input data"); + let expected = "0x507ee52800000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000340000000000000000000000000000000000000000000000000000000000000001701159ac740283722faa4471b19bd217faf0cc51f1b999308b8fc88785934bab4065bf49c042ee1779db664138a3e7e749ac221e5ea7b645717afee0707671d1a000000000000000000000000000000000000000000000000000000000003550a000000000000000000000000000000000000000000000000000000000003552200dee83a5fc2a2bdc20e74a55394fe5d8701148b6d3e95057e03d54b5053370104f67725b439c46eaaae6af772cf254706f6c0ebe870d8b3bbd5e40a5226148e01e324682835e60c4779a683b32713504aed894fd73842f7d05b18e7bd29cd70000504fa6e5eb930c0d8329d4a77d98391f2730dab8516600aeaf733a6123432000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000277d5eca17f14b34dc8ca9e87d0f88fb0a5b6f71a5580b19244e6426c63b453000000000000000000000000000000000000000000000000000000000000000100000000000000009c2e6b2dce7fc7bcce9d4351c65bb7221755f09ee6f37c00000000000000000092dd12a200752ae9e63b5985ce6ab169e41ce94dac0ed03e00000000000000000000000000000000bdde84d7e9b9947c940b47083d320d330000000000000000000000000000000016bcc30c68f19429e08cc07b5a63ce6f000000000000000000000000000000000000000000000000000000000000000500daf7c17ae6ecc0379a2a1a5a19d7fa2db03dd7ae98d15f2c5ae22b877c84c90000000000000000000000009bdbfca4fefb51f83e9c5dbcfa53661b3b3deba30000000000000000000000000000000000000000000000000000000000000002069e95c78dd84fe0706b39476b0454ff1f9ecbbce43b9456c1bbf18d54469af405b3e92711ef23d62955df1f6975e0db2a360c5f34ab2532bb1c89a48e25f2720000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000030b773cc46ff56ace65907afc646b5822808c0a01b223afa4f7bc8d9a8d73f3f398d3098fe69255956599d9c2d565b083400000000000000000000000000000000"; + assert_eq!(input_bytes, expected); + } + + // UTILITY FUNCTIONS NEEDED + + fn get_program_output(block_no: u64) -> Vec<[u8; 32]> { + // Program Output + let program_output_file_path = + format!("{}{}{}{}", *CURRENT_PATH, "/src/test_data/program_output/", block_no, ".txt"); + + let mut program_output: Vec<[u8; 32]> = Vec::new(); + let file = File::open(program_output_file_path).expect("Failed to read program output file"); + let reader = BufReader::new(file); + + for line in reader.lines() { + let line = line.expect("can't read line"); + let trimmed = line.trim(); + assert!(!trimmed.is_empty()); + + let result: [u8; 32] = U256::from_str(trimmed) + .expect("Unable to convert line") + .to_be_bytes_vec() + .as_slice() + .pipe(to_padded_hex) + .pipe(|hex| hex_string_to_u8_vec(&hex).expect("unable to convert")) + .try_into() + .expect("Vector length must be 32"); + + program_output.push(result) + } + program_output + } + + fn get_blob_data(block_no: u64) -> Vec> { + // Blob Data + let blob_data_file_path = format!("{}{}{}{}", *CURRENT_PATH, "/src/test_data/blob_data/", block_no, ".txt"); + let blob_data = fs::read_to_string(blob_data_file_path).expect("Failed to read the blob data txt file"); + let blob_data_vec = vec![hex_string_to_u8_vec(&blob_data).unwrap()]; + blob_data_vec + } + + fn hex_string_to_u8_vec(hex_str: &str) -> color_eyre::Result> { + // Remove any spaces or non-hex characters from the input string + let cleaned_str: String = hex_str.chars().filter(|c| c.is_ascii_hexdigit()).collect(); + + // Convert the cleaned hex string to a Vec + let mut result = Vec::new(); + for chunk in cleaned_str.as_bytes().chunks(2) { + if let Ok(byte_val) = u8::from_str_radix(std::str::from_utf8(chunk)?, 16) { + result.push(byte_val); + } else { + return Err(eyre!("Error parsing hex string: {}", cleaned_str)); + } + } + + Ok(result) + } + + fn bytes_to_u32(bytes: &[u8]) -> Result { + // Ensure we have at least 4 bytes + if bytes.len() < 4 { + return Err("Input slice must be at least 4 bytes long"); + } + + // Take the last 4 bytes, regardless of the total length + let last_four_bytes = &bytes[bytes.len() - 4..]; + + // Convert to u32 + Ok(u32::from_be_bytes(last_four_bytes.try_into().unwrap())) + } +} diff --git a/orchestrator/crates/settlement-clients/ethereum/src/trusted_setup.txt b/orchestrator/crates/settlement-clients/ethereum/src/trusted_setup.txt new file mode 100644 index 000000000..d2519656f --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/trusted_setup.txt @@ -0,0 +1,4163 @@ +4096 +65 +a0413c0dcafec6dbc9f47d66785cf1e8c981044f7d13cfe3e4fcbb71b5408dfde6312493cb3c1d30516cb3ca88c03654 +8b997fb25730d661918371bb41f2a6e899cac23f04fc5365800b75433c0a953250e15e7a98fb5ca5cc56a8cd34c20c57 +83302852db89424d5699f3f157e79e91dc1380f8d5895c5a772bb4ea3a5928e7c26c07db6775203ce33e62a114adaa99 +a759c48b7e4a685e735c01e5aa6ef9c248705001f470f9ad856cd87806983e917a8742a3bd5ee27db8d76080269b7c83 +967f8dc45ebc3be14c8705f43249a30ff48e96205fb02ae28daeab47b72eb3f45df0625928582aa1eb4368381c33e127 +a418eb1e9fb84cb32b370610f56f3cb470706a40ac5a47c411c464299c45c91f25b63ae3fcd623172aa0f273c0526c13 +8f44e3f0387293bc7931e978165abbaed08f53acd72a0a23ac85f6da0091196b886233bcee5b4a194db02f3d5a9b3f78 +97173434b336be73c89412a6d70d416e170ea355bf1956c32d464090b107c090ef2d4e1a467a5632fbc332eeb679bf2d +a24052ad8d55ad04bc5d951f78e14213435681594110fd18173482609d5019105b8045182d53ffce4fc29fc8810516c1 +b950768136b260277590b5bec3f56bbc2f7a8bc383d44ce8600e85bf8cf19f479898bcc999d96dfbd2001ede01d94949 +92ab8077871037bd3b57b95cbb9fb10eb11efde9191690dcac655356986fd02841d8fdb25396faa0feadfe3f50baf56d +a79b096dff98038ac30f91112dd14b78f8ad428268af36d20c292e2b3b6d9ed4fb28480bb04e465071cc67d05786b6d1 +b9ff71461328f370ce68bf591aa7fb13027044f42a575517f3319e2be4aa4843fa281e756d0aa5645428d6dfa857cef2 +8d765808c00b3543ff182e2d159c38ae174b12d1314da88ea08e13bd9d1c37184cb515e6bf6420531b5d41767987d7ce +b8c9a837d20c3b53e6f578e4a257bb7ef8fc43178614ec2a154915b267ad2be135981d01ed2ee1b5fbd9d9bb27f0800a +a9773d92cf23f65f98ef68f6cf95c72b53d0683af2f9bf886bb9036e4a38184b1131b26fd24397910b494fbef856f3aa +b41ebe38962d112da4a01bf101cb248d808fbd50aaf749fc7c151cf332032eb3e3bdbd716db899724b734d392f26c412 +90fbb030167fb47dcc13d604a726c0339418567c1d287d1d87423fa0cb92eec3455fbb46bcbe2e697144a2d3972142e4 +b11d298bd167464b35fb923520d14832bd9ed50ed841bf6d7618424fd6f3699190af21759e351b89142d355952149da1 +8bc36066f69dc89f7c4d1e58d67497675050c6aa002244cebd9fc957ec5e364c46bab4735ea3db02b73b3ca43c96e019 +ab7ab92c5d4d773068e485aa5831941ebd63db7118674ca38089635f3b4186833af2455a6fb9ed2b745df53b3ce96727 +af191ca3089892cb943cd97cf11a51f38e38bd9be50844a4e8da99f27e305e876f9ed4ab0628e8ae3939066b7d34a15f +a3204c1747feabc2c11339a542195e7cb6628fd3964f846e71e2e3f2d6bb379a5e51700682ea1844eba12756adb13216 +903a29883846b7c50c15968b20e30c471aeac07b872c40a4d19eb1a42da18b649d5bbfde4b4cf6225d215a461b0deb6d +8e6e9c15ffbf1e16e5865a5fef7ed751dc81957a9757b535cb38b649e1098cda25d42381dc4f776778573cdf90c3e6e0 +a8f6dd26100b512a8c96c52e00715c4b2cb9ac457f17aed8ffe1cf1ea524068fe5a1ddf218149845fc1417b789ecfc98 +a5b0ffc819451ea639cfd1c18cbc9365cc79368d3b2e736c0ae54eba2f0801e6eb0ee14a5f373f4a70ca463bdb696c09 +879f91ccd56a1b9736fbfd20d8747354da743fb121f0e308a0d298ff0d9344431890e41da66b5009af3f442c636b4f43 +81bf3a2d9755e206b515a508ac4d1109bf933c282a46a4ae4a1b4cb4a94e1d23642fad6bd452428845afa155742ade7e +8de778d4742f945df40004964e165592f9c6b1946263adcdd5a88b00244bda46c7bb49098c8eb6b3d97a0dd46148a8ca +b7a57b21d13121907ee28c5c1f80ee2e3e83a3135a8101e933cf57171209a96173ff5037f5af606e9fd6d066de6ed693 +b0877d1963fd9200414a38753dffd9f23a10eb3198912790d7eddbc9f6b477019d52ddd4ebdcb9f60818db076938a5a9 +88da2d7a6611bc16adc55fc1c377480c828aba4496c645e3efe0e1a67f333c05a0307f7f1d2df8ac013602c655c6e209 +95719eb02e8a9dede1a888c656a778b1c69b7716fbe3d1538fe8afd4a1bc972183c7d32aa7d6073376f7701df80116d8 +8e8a1ca971f2444b35af3376e85dccda3abb8e8e11d095d0a4c37628dfe5d3e043a377c3de68289ef142e4308e9941a0 +b720caaff02f6d798ac84c4f527203e823ff685869e3943c979e388e1c34c3f77f5c242c6daa7e3b30e511aab917b866 +86040d55809afeec10e315d1ad950d269d37cfee8c144cd8dd4126459e3b15a53b3e68df5981df3c2346d23c7b4baaf4 +82d8cabf13ab853db0377504f0aec00dba3a5cd3119787e8ad378ddf2c40b022ecfc67c642b7acc8c1e3dd03ab50993e +b8d873927936719d2484cd03a6687d65697e17dcf4f0d5aed6f5e4750f52ef2133d4645894e7ebfc4ef6ce6788d404c8 +b1235594dbb15b674a419ff2b2deb644ad2a93791ca05af402823f87114483d6aa1689b7a9bea0f547ad12fe270e4344 +a53fda86571b0651f5affb74312551a082fffc0385cfd24c1d779985b72a5b1cf7c78b42b4f7e51e77055f8e5e915b00 +b579adcfd9c6ef916a5a999e77a0cb21d378c4ea67e13b7c58709d5da23a56c2e54218691fc4ac39a4a3d74f88cc31f7 +ab79e584011713e8a2f583e483a91a0c2a40771b77d91475825b5acbea82db4262132901cb3e4a108c46d7c9ee217a4e +a0fe58ea9eb982d7654c8aaf9366230578fc1362f6faae0594f8b9e659bcb405dff4aac0c7888bbe07f614ecf0d800a6 +867e50e74281f28ecd4925560e2e7a6f8911b135557b688254623acce0dbc41e23ac3e706a184a45d54c586edc416eb0 +89f81b61adda20ea9d0b387a36d0ab073dc7c7cbff518501962038be19867042f11fcc7ff78096e5d3b68c6d8dc04d9b +a58ee91bb556d43cf01f1398c5811f76dc0f11efdd569eed9ef178b3b0715e122060ec8f945b4dbf6eebfa2b90af6fa6 +ac460be540f4c840def2eef19fc754a9af34608d107cbadb53334cf194cc91138d53b9538fcd0ec970b5d4aa455b224a +b09b91f929de52c09d48ca0893be6eb44e2f5210a6c394689dc1f7729d4be4e11d0474b178e80cea8c2ac0d081f0e811 +8d37a442a76b06a02a4e64c2504aea72c8b9b020ab7bcc94580fe2b9603c7c50d7b1e9d70d2a7daea19c68667e8f8c31 +a9838d4c4e3f3a0075a952cf7dd623307ec633fcc81a7cf9e52e66c31780de33dbb3d74c320dc7f0a4b72f7a49949515 +a44766b6251af458fe4f5f9ed1e02950f35703520b8656f09fc42d9a2d38a700c11a7c8a0436ac2e5e9f053d0bb8ff91 +ad78d9481c840f5202546bea0d13c776826feb8b1b7c72e83d99a947622f0bf38a4208551c4c41beb1270d7792075457 +b619ffa8733b470039451e224b777845021e8dc1125f247a4ff2476cc774657d0ff9c5279da841fc1236047de9d81c60 +af760b0a30a1d6af3bc5cd6686f396bd41779aeeb6e0d70a09349bd5da17ca2e7965afc5c8ec22744198fbe3f02fb331 +a0cc209abdb768b589fcb7b376b6e1cac07743288c95a1cf1a0354b47f0cf91fca78a75c1fcafa6f5926d6c379116608 +864add673c89c41c754eeb3cd8dcff5cdde1d739fce65c30e474a082bb5d813cba6412e61154ce88fdb6c12c5d9be35b +b091443b0ce279327dc37cb484e9a5b69b257a714ce21895d67539172f95ffa326903747b64a3649e99aea7bb10d03f7 +a8c452b8c4ca8e0a61942a8e08e28f17fb0ef4c5b018b4e6d1a64038280afa2bf1169202f05f14af24a06ca72f448ccd +a23c24721d18bc48d5dcf70effcbef89a7ae24e67158d70ae1d8169ee75d9a051d34b14e9cf06488bac324fe58549f26 +92a730e30eb5f3231feb85f6720489dbb1afd42c43f05a1610c6b3c67bb949ec8fde507e924498f4ffc646f7b07d9123 +8dbe5abf4031ec9ba6bb06d1a47dd1121fb9e03b652804069250967fd5e9577d0039e233441b7f837a7c9d67ba18c28e +aa456bcfef6a21bb88181482b279df260297b3778e84594ebddbdf337e85d9e3d46ca1d0b516622fb0b103df8ec519b7 +a3b31ae621bd210a2b767e0e6f22eb28fe3c4943498a7e91753225426168b9a26da0e02f1dc5264da53a5ad240d9f51b +aa8d66857127e6e71874ce2202923385a7d2818b84cb73a6c42d71afe70972a70c6bdd2aad1a6e8c5e4ca728382a8ea8 +ac7e8e7a82f439127a5e40558d90d17990f8229852d21c13d753c2e97facf077cf59582b603984c3dd3faebd80aff4f5 +93a8bcf4159f455d1baa73d2ef2450dcd4100420de84169bbe28b8b7a5d1746273f870091a87a057e834f754f34204b1 +89d0ebb287c3613cdcae7f5acc43f17f09c0213fc40c074660120b755d664109ffb9902ed981ede79e018ddb0c845698 +a87ccbfad431406aadbee878d9cf7d91b13649d5f7e19938b7dfd32645a43b114eef64ff3a13201398bd9b0337832e5a +833c51d0d0048f70c3eefb4e70e4ff66d0809c41838e8d2c21c288dd3ae9d9dfaf26d1742bf4976dab83a2b381677011 +8bcd6b1c3b02fffead432e8b1680bad0a1ac5a712d4225e220690ee18df3e7406e2769e1f309e2e803b850bc96f0e768 +b61e3dbd88aaf4ff1401521781e2eea9ef8b66d1fac5387c83b1da9e65c2aa2a56c262dea9eceeb4ad86c90211672db0 +866d3090db944ecf190dd0651abf67659caafd31ae861bab9992c1e3915cb0952da7c561cc7e203560a610f48fae633b +a5e8971543c14274a8dc892b0be188c1b4fbc75c692ed29f166e0ea80874bc5520c2791342b7c1d2fb5dd454b03b8a5b +8f2f9fc50471bae9ea87487ebd1bc8576ef844cc42d606af5c4c0969670fdf2189afd643e4de3145864e7773d215f37f +b1bb0f2527db6d51f42b9224383c0f96048bbc03d469bf01fe1383173ef8b1cc9455d9dd8ba04d46057f46949bfc92b5 +aa7c99d906b4d7922296cfe2520473fc50137c03d68b7865c5bfb8adbc316b1034310ec4b5670c47295f4a80fb8d61e9 +a5d1da4d6aba555919df44cbaa8ff79378a1c9e2cfdfbf9d39c63a4a00f284c5a5724e28ecbc2d9dba27fe4ee5018bd5 +a8db53224f70af4d991b9aae4ffe92d2aa5b618ad9137784b55843e9f16cefbfd25ada355d308e9bbf55f6d2f7976fb3 +b6536c4232bb20e22af1a8bb12de76d5fec2ad9a3b48af1f38fa67e0f8504ef60f305a73d19385095bb6a9603fe29889 +87f7e371a1817a63d6838a8cf4ab3a8473d19ce0d4f40fd013c03d5ddd5f4985df2956531cc9f187928ef54c68f4f9a9 +ae13530b1dbc5e4dced9d909ea61286ec09e25c12f37a1ed2f309b0eb99863d236c3b25ed3484acc8c076ad2fa8cd430 +98928d850247c6f7606190e687d5c94a627550198dbdbea0161ef9515eacdb1a0f195cae3bb293112179082daccf8b35 +918528bb8e6a055ad4db6230d3a405e9e55866da15c4721f5ddd1f1f37962d4904aad7a419218fe6d906fe191a991806 +b71e31a06afe065773dd3f4a6e9ef81c3292e27a3b7fdfdd452d03e05af3b6dd654c355f7516b2a93553360c6681a73a +8870b83ab78a98820866f91ac643af9f3ff792a2b7fda34185a9456a63abdce42bfe8ad4dc67f08a6392f250d4062df4 +91eea1b668e52f7a7a5087fabf1cab803b0316f78d9fff469fbfde2162f660c250e4336a9eea4cb0450bd30ac067bc8b +8b74990946de7b72a92147ceac1bd9d55999a8b576e8df68639e40ed5dc2062cfcd727903133de482b6dca19d0aaed82 +8ebad537fece090ebbab662bdf2618e21ca30cf6329c50935e8346d1217dcbe3c1fe1ea28efca369c6003ce0a94703c1 +a8640479556fb59ebd1c40c5f368fbd960932fdbb782665e4a0e24e2bdb598fc0164ce8c0726d7759cfc59e60a62e182 +a9a52a6bf98ee4d749f6d38be2c60a6d54b64d5cbe4e67266633dc096cf28c97fe998596707d31968cbe2064b72256bf +847953c48a4ce6032780e9b39d0ed4384e0be202c2bbe2dfda3910f5d87aa5cd3c2ffbfcfae4dddce16d6ab657599b95 +b6f6e1485d3ec2a06abaecd23028b200b2e4a0096c16144d07403e1720ff8f9ba9d919016b5eb8dc5103880a7a77a1d3 +98dfc2065b1622f596dbe27131ea60bef7a193b12922cecb27f8c571404f483014f8014572e86ae2e341ab738e4887ef +acb0d205566bacc87bbe2e25d10793f63f7a1f27fd9e58f4f653ceae3ffeba511eaf658e068fad289eeb28f9edbeb35b +ae4411ed5b263673cee894c11fe4abc72a4bf642d94022a5c0f3369380fcdfc1c21e277f2902972252503f91ada3029a +ac4a7a27ba390a75d0a247d93d4a8ef1f0485f8d373a4af4e1139369ec274b91b3464d9738eeaceb19cd6f509e2f8262 +87379c3bf231fdafcf6472a79e9e55a938d851d4dd662ab6e0d95fd47a478ed99e2ad1e6e39be3c0fc4f6d996a7dd833 +81316904b035a8bcc2041199a789a2e6879486ba9fddcba0a82c745cc8dd8374a39e523b91792170cd30be7aa3005b85 +b8206809c6cd027ed019f472581b45f7e12288f89047928ba32b4856b6560ad30395830d71e5e30c556f6f182b1fe690 +88d76c028f534a62e019b4a52967bb8642ede6becfa3807be68fdd36d366fc84a4ac8dc176e80a68bc59eb62caf5dff9 +8c3b8be685b0f8aad131ee7544d0e12f223f08a6f8edaf464b385ac644e0ddc9eff7cc7cb5c1b50ab5d71ea0f41d2213 +8d91410e004f76c50fdc05784157b4d839cb5090022c629c7c97a5e0c3536eeafee17a527b54b1165c3cd81774bb54ce +b25c2863bc28ec5281ce800ddf91a7e1a53f4c6d5da1e6c86ef4616e93bcf55ed49e297216d01379f5c6e7b3c1e46728 +865f7b09ac3ca03f20be90c48f6975dd2588838c2536c7a3532a6aa5187ed0b709cd03d91ff4048061c10d0aa72b69ce +b3f7477c90c11596eb4f8bbf34adbcb832638c4ff3cdd090d4d477ee50472ac9ddaf5be9ad7eca3f148960d362bbd098 +8db35fd53fca04faecd1c76a8227160b3ab46ac1af070f2492445a19d8ff7c25bbaef6c9fa0c8c088444561e9f7e4eb2 +a478b6e9d058a2e01d2fc053b739092e113c23a6a2770a16afbef044a3709a9e32f425ace9ba7981325f02667c3f9609 +98caa6bd38916c08cf221722a675a4f7577f33452623de801d2b3429595f988090907a7e99960fff7c076d6d8e877b31 +b79aaaacefc49c3038a14d2ac468cfec8c2161e88bdae91798d63552cdbe39e0e02f9225717436b9b8a40a022c633c6e +845a31006c680ee6a0cc41d3dc6c0c95d833fcf426f2e7c573fa15b2c4c641fbd6fe5ebb0e23720cc3467d6ee1d80dc4 +a1bc287e272cf8b74dbf6405b3a5190883195806aa351f1dc8e525aa342283f0a35ff687e3b434324dedee74946dd185 +a4fd2dc8db75d3783a020856e2b3aa266dc6926e84f5c491ef739a3bddd46dc8e9e0fc1177937839ef1b18d062ffbb9e +acbf0d3c697f57c202bb8c5dc4f3fc341b8fc509a455d44bd86acc67cad2a04495d5537bcd3e98680185e8aa286f2587 +a5caf423a917352e1b8e844f5968a6da4fdeae467d10c6f4bbd82b5eea46a660b82d2f5440d3641c717b2c3c9ed0be52 +8a39d763c08b926599ab1233219c49c825368fad14d9afc7c0c039224d37c00d8743293fd21645bf0b91eaf579a99867 +b2b53a496def0ba06e80b28f36530fbe0fb5d70a601a2f10722e59abee529369c1ae8fd0f2db9184dd4a2519bb832d94 +a73980fcef053f1b60ebbb5d78ba6332a475e0b96a0c724741a3abf3b59dd344772527f07203cf4c9cb5155ebed81fa0 +a070d20acce42518ece322c9db096f16aed620303a39d8d5735a0df6e70fbeceb940e8d9f5cc38f3314b2240394ec47b +a50cf591f522f19ca337b73089557f75929d9f645f3e57d4f241e14cdd1ea3fb48d84bcf05e4f0377afbb789fbdb5d20 +82a5ffce451096aca8eeb0cd2ae9d83db3ed76da3f531a80d9a70a346359bf05d74863ce6a7c848522b526156a5e20cd +88e0e84d358cbb93755a906f329db1537c3894845f32b9b0b691c29cbb455373d9452fadd1e77e20a623f6eaf624de6f +aa07ac7b84a6d6838826e0b9e350d8ec75e398a52e9824e6b0da6ae4010e5943fec4f00239e96433f291fef9d1d1e609 +ac8887bf39366034bc63f6cc5db0c26fd27307cbc3d6cce47894a8a019c22dd51322fb5096edc018227edfafc053a8f6 +b7d26c26c5b33f77422191dca94977588ab1d4b9ce7d0e19c4a3b4cd1c25211b78c328dbf81e755e78cd7d1d622ad23e +99a676d5af49f0ba44047009298d8474cabf2d5bca1a76ba21eff7ee3c4691a102fdefea27bc948ccad8894a658abd02 +b0d09a91909ab3620c183bdf1d53d43d39eb750dc7a722c661c3de3a1a5d383ad221f71bae374f8a71867505958a3f76 +84681a883de8e4b93d68ac10e91899c2bbb815ce2de74bb48a11a6113b2a3f4df8aceabda1f5f67bc5aacac8c9da7221 +9470259957780fa9b43521fab3644f555f5343281c72582b56d2efd11991d897b3b481cafa48681c5aeb80c9663b68f7 +ab1b29f7ece686e6fa968a4815da1d64f3579fed3bc92e1f3e51cd13a3c076b6cf695ed269d373300a62463dc98a4234 +8ab415bfcd5f1061f7687597024c96dd9c7cb4942b5989379a7a3b5742f7d394337886317659cbeacaf030234a24f972 +b9b524aad924f9acc63d002d617488f31b0016e0f0548f050cada285ce7491b74a125621638f19e9c96eabb091d945be +8c4c373e79415061837dd0def4f28a2d5d74d21cb13a76c9049ad678ca40228405ab0c3941df49249847ecdefc1a5b78 +a8edf4710b5ab2929d3db6c1c0e3e242261bbaa8bcec56908ddadd7d2dad2dca9d6eb9de630b960b122ebeea41040421 +8d66bb3b50b9df8f373163629f9221b3d4b6980a05ea81dc3741bfe9519cf3ebba7ab98e98390bae475e8ede5821bd5c +8d3c21bae7f0cfb97c56952bb22084b58e7bb718890935b73103f33adf5e4d99cd262f929c6eeab96209814f0dbae50a +a5c66cfab3d9ebf733c4af24bebc97070e7989fe3c73e79ac85fb0e4d40ae44fb571e0fad4ad72560e13ed453900d14f +9362e6b50b43dbefbc3254471372297b5dcce809cd3b60bf74a1268ab68bdb50e46e462cbd78f0d6c056330e982846af +854630d08e3f0243d570cc2e856234cb4c1a158d9c1883bf028a76525aaa34be897fe918d5f6da9764a3735fa9ebd24a +8c7d246985469ff252c3f4df6c7c9196fc79f05c1c66a609d84725c78001d0837c7a7049394ba5cf7e863e2d58af8417 +ae050271e01b528925302e71903f785b782f7bf4e4e7a7f537140219bc352dc7540c657ed03d3a297ad36798ecdb98cd +8d2ae9179fcf2b0c69850554580b52c1f4a5bd865af5f3028f222f4acad9c1ad69a8ef6c7dc7b03715ee5c506b74325e +b8ef8de6ce6369a8851cd36db0ccf00a85077e816c14c4e601f533330af9e3acf0743a95d28962ed8bfcfc2520ef3cfe +a6ecad6fdfb851b40356a8b1060f38235407a0f2706e7b8bb4a13465ca3f81d4f5b99466ac2565c60af15f022d26732e +819ff14cdea3ab89d98e133cd2d0379361e2e2c67ad94eeddcdb9232efd509f51d12f4f03ebd4dd953bd262a886281f7 +8561cd0f7a6dbcddd83fcd7f472d7dbcba95b2d4fb98276f48fccf69f76d284e626d7e41314b633352df8e6333fd52a1 +b42557ccce32d9a894d538c48712cb3e212d06ac05cd5e0527ccd2db1078ee6ae399bf6a601ffdab1f5913d35fc0b20c +89b4008d767aad3c6f93c349d3b956e28307311a5b1cec237e8d74bb0dee7e972c24f347fd56afd915a2342bd7bc32f0 +877487384b207e53f5492f4e36c832c2227f92d1bb60542cfeb35e025a4a7afc2b885fae2528b33b40ab09510398f83e +8c411050b63c9053dd0cd81dacb48753c3d7f162028098e024d17cd6348482703a69df31ad6256e3d25a8bbf7783de39 +a8506b54a88d17ac10fb1b0d1fe4aa40eae7553a064863d7f6b52ccc4236dd4b82d01dca6ba87da9a239e3069ba879fb +b1a24caef9df64750c1350789bb8d8a0db0f39474a1c74ea9ba064b1516db6923f00af8d57c632d58844fb8786c3d47a +959d6e255f212b0708c58a2f75cb1fe932248c9d93424612c1b8d1e640149656059737e4db2139afd5556bcdacf3eda2 +84525af21a8d78748680b6535bbc9dc2f0cf9a1d1740d12f382f6ecb2e73811d6c1da2ad9956070b1a617c61fcff9fe5 +b74417d84597a485d0a8e1be07bf78f17ebb2e7b3521b748f73935b9afbbd82f34b710fb7749e7d4ab55b0c7f9de127d +a4a9aecb19a6bab167af96d8b9d9aa5308eab19e6bfb78f5a580f9bf89bdf250a7b52a09b75f715d651cb73febd08e84 +9777b30be2c5ffe7d29cc2803a562a32fb43b59d8c3f05a707ab60ec05b28293716230a7d264d7cd9dd358fc031cc13e +95dce7a3d4f23ac0050c510999f5fbf8042f771e8f8f94192e17bcbfa213470802ebdbe33a876cb621cf42e275cbfc8b +b0b963ebcbbee847ab8ae740478544350b3ac7e86887e4dfb2299ee5096247cd2b03c1de74c774d9bde94ae2ee2dcd59 +a4ab20bafa316030264e13f7ef5891a2c3b29ab62e1668fcb5881f50a9acac6adbe3d706c07e62f2539715db768f6c43 +901478a297669d608e406fe4989be75264b6c8be12169aa9e0ad5234f459ca377f78484ffd2099a2fe2db5e457826427 +88c76e5c250810c057004a03408b85cd918e0c8903dc55a0dd8bb9b4fc2b25c87f9b8cf5943eb19fbbe99d36490050c5 +91607322bbad4a4f03fc0012d0821eff5f8c516fda45d1ec1133bface6f858bf04b25547be24159cab931a7aa08344d4 +843203e07fce3c6c81f84bc6dc5fb5e9d1c50c8811ace522dc66e8658433a0ef9784c947e6a62c11bf705307ef05212e +91dd8813a5d6dddcda7b0f87f672b83198cd0959d8311b2b26fb1fae745185c01f796fbd03aad9db9b58482483fdadd8 +8d15911aacf76c8bcd7136e958febd6963104addcd751ce5c06b6c37213f9c4fb0ffd4e0d12c8e40c36d658999724bfd +8a36c5732d3f1b497ebe9250610605ee62a78eaa9e1a45f329d09aaa1061131cf1d9df00f3a7d0fe8ad614a1ff9caaae +a407d06affae03660881ce20dab5e2d2d6cddc23cd09b95502a9181c465e57597841144cb34d22889902aff23a76d049 +b5fd856d0578620a7e25674d9503be7d97a2222900e1b4738c1d81ff6483b144e19e46802e91161e246271f90270e6cf +91b7708869cdb5a7317f88c0312d103f8ce90be14fb4f219c2e074045a2a83636fdc3e69e862049fc7c1ef000e832541 +b64719cc5480709d1dae958f1d3082b32a43376da446c8f9f64cb02a301effc9c34d9102051733315a8179aed94d53cc +94347a9542ff9d18f7d9eaa2f4d9b832d0e535fe49d52aa2de08aa8192400eddabdb6444a2a78883e27c779eed7fdf5a +840ef44a733ff1376466698cd26f82cf56bb44811e196340467f932efa3ae1ef9958a0701b3b032f50fd9c1d2aed9ab5 +90ab3f6f67688888a31ffc2a882bb37adab32d1a4b278951a21646f90d03385fc976715fc639a785d015751171016f10 +b56f35d164c24b557dbcbc8a4bfa681ec916f8741ffcb27fb389c164f4e3ed2be325210ef5bdaeae7a172ca9599ab442 +a7921a5a80d7cf6ae81ba9ee05e0579b18c20cd2852762c89d6496aa4c8ca9d1ca2434a67b2c16d333ea8e382cdab1e3 +a506bcfbd7e7e5a92f68a1bd87d07ad5fe3b97aeee40af2bf2cae4efcd77fff03f872732c5b7883aa6584bee65d6f8cb +a8c46cff58931a1ce9cbe1501e1da90b174cddd6d50f3dfdfb759d1d4ad4673c0a8feed6c1f24c7af32865a7d6c984e5 +b45686265a83bff69e312c5149db7bb70ac3ec790dc92e392b54d9c85a656e2bf58596ce269f014a906eafc97461aa5f +8d4009a75ccb2f29f54a5f16684b93202c570d7a56ec1a8b20173269c5f7115894f210c26b41e8d54d4072de2d1c75d0 +aef8810af4fc676bf84a0d57b189760ddc3375c64e982539107422e3de2580b89bd27aa6da44e827b56db1b5555e4ee8 +888f0e1e4a34f48eb9a18ef4de334c27564d72f2cf8073e3d46d881853ac1424d79e88d8ddb251914890588937c8f711 +b64b0aa7b3a8f6e0d4b3499fe54e751b8c3e946377c0d5a6dbb677be23736b86a7e8a6be022411601dd75012012c3555 +8d57776f519f0dd912ea14f79fbab53a30624e102f9575c0bad08d2dc754e6be54f39b11278c290977d9b9c7c0e1e0ad +a018fc00d532ceb2e4de908a15606db9b6e0665dd77190e2338da7c87a1713e6b9b61554e7c1462f0f6d4934b960b15c +8c932be83ace46f65c78e145b384f58e41546dc0395270c1397874d88626fdeda395c8a289d602b4c312fe98c1311856 +89174838e21639d6bdd91a0621f04dc056907b88e305dd66e46a08f6d65f731dea72ae87ca5e3042d609e8de8de9aa26 +b7b7f508bb74f7a827ac8189daa855598ff1d96fa3a02394891fd105d8f0816224cd50ac4bf2ed1cf469ace516c48184 +b31877ad682583283baadd68dc1bebd83f5748b165aadd7fe9ef61a343773b88bcd3a022f36d6c92f339b7bfd72820a9 +b79d77260b25daf9126dab7a193df2d7d30542786fa1733ffaf6261734770275d3ca8bae1d9915d1181a78510b3439db +91894fb94cd4c1dd2ceaf9c53a7020c5799ba1217cf2d251ea5bc91ed26e1159dd758e98282ebe35a0395ef9f1ed15a0 +ab59895cdafd33934ceedfc3f0d5d89880482cba6c99a6db93245f9e41987efd76e0640e80aef31782c9a8c7a83fccec +aa22ea63654315e033e09d4d4432331904a6fc5fb1732557987846e3c564668ca67c60a324b4af01663a23af11a9ce4b +b53ba3ef342601467e1f71aa280e100fbabbd38518fa0193e0099505036ee517c1ac78e96e9baeb549bb6879bb698fb0 +943fd69fd656f37487cca3605dc7e5a215fddd811caf228595ec428751fc1de484a0cb84c667fe4d7c35599bfa0e5e34 +9353128b5ebe0dddc555093cf3e5942754f938173541033e8788d7331fafc56f68d9f97b4131e37963ab7f1c8946f5f1 +a76cd3c566691f65cfb86453b5b31dbaf3cab8f84fe1f795dd1e570784b9b01bdd5f0b3c1e233942b1b5838290e00598 +983d84b2e53ffa4ae7f3ba29ef2345247ea2377686b74a10479a0ef105ecf90427bf53b74c96dfa346d0f842b6ffb25b +92e0fe9063306894a2c6970c001781cff416c87e87cb5fbac927a3192655c3da4063e6fa93539f6ff58efac6adcc5514 +b00a81f03c2b8703acd4e2e4c21e06973aba696415d0ea1a648ace2b0ea19b242fede10e4f9d7dcd61c546ab878bc8f9 +b0d08d880f3b456a10bf65cff983f754f545c840c413aea90ce7101a66eb0a0b9b1549d6c4d57725315828607963f15a +90cb64d03534f913b411375cce88a9e8b1329ce67a9f89ca5df8a22b8c1c97707fec727dbcbb9737f20c4cf751359277 +8327c2d42590dfcdb78477fc18dcf71608686ad66c49bce64d7ee874668be7e1c17cc1042a754bbc77c9daf50b2dae07 +8532171ea13aa7e37178e51a6c775da469d2e26ec854eb16e60f3307db4acec110d2155832c202e9ba525fc99174e3b0 +83ca44b15393d021de2a511fa5511c5bd4e0ac7d67259dce5a5328f38a3cce9c3a269405959a2486016bc27bb140f9ff +b1d36e8ca812be545505c8214943b36cabee48112cf0de369957afa796d37f86bf7249d9f36e8e990f26f1076f292b13 +9803abf45be5271e2f3164c328d449efc4b8fc92dfc1225d38e09630909fe92e90a5c77618daa5f592d23fc3ad667094 +b268ad68c7bf432a01039cd889afae815c3e120f57930d463aece10af4fd330b5bd7d8869ef1bcf6b2e78e4229922edc +a4c91a0d6f16b1553264592b4cbbbf3ca5da32ab053ffbdd3dbb1aed1afb650fb6e0dc5274f71a51d7160856477228db +ad89d043c2f0f17806277ffdf3ecf007448e93968663f8a0b674254f36170447b7527d5906035e5e56f4146b89b5af56 +8b6964f757a72a22a642e4d69102951897e20c21449184e44717bd0681d75f7c5bfa5ee5397f6e53febf85a1810d6ed1 +b08f5cdaabec910856920cd6e836c830b863eb578423edf0b32529488f71fe8257d90aed4a127448204df498b6815d79 +af26bb3358be9d280d39b21d831bb53145c4527a642446073fee5a86215c4c89ff49a3877a7a549486262f6f57a0f476 +b4010b37ec4d7c2af20800e272539200a6b623ae4636ecbd0e619484f4ab9240d02bc5541ace3a3fb955dc0a3d774212 +82752ab52bdcc3cc2fc405cb05a2e694d3df4a3a68f2179ec0652536d067b43660b96f85f573f26fbd664a9ef899f650 +96d392dde067473a81faf2d1fea55b6429126b88b160e39b4210d31d0a82833ffd3a80e07d24d495aea2d96be7251547 +a76d8236d6671204d440c33ac5b8deb71fa389f6563d80e73be8b043ec77d4c9b06f9a586117c7f957f4af0331cbc871 +b6c90961f68b5e385d85c9830ec765d22a425f506904c4d506b87d8944c2b2c09615e740ed351df0f9321a7b93979cae +a6ec5ea80c7558403485b3b1869cdc63bde239bafdf936d9b62a37031628402a36a2cfa5cfbb8e26ac922cb0a209b3ba +8c3195bbdbf9bc0fc95fa7e3d7f739353c947f7767d1e3cb24d8c8602d8ea0a1790ac30b815be2a2ba26caa5227891e2 +a7f8a63d809f1155722c57f375ea00412b00147776ae4444f342550279ef4415450d6f400000a326bf11fea6c77bf941 +97fa404df48433a00c85793440e89bb1af44c7267588ae937a1f5d53e01e1c4d4fc8e4a6d517f3978bfdd6c2dfde012f +a984a0a3836de3d8d909c4629a2636aacb85393f6f214a2ef68860081e9db05ad608024762db0dc35e895dc00e2d4cdd +9526cf088ab90335add1db4d3a4ac631b58cbfbe88fa0845a877d33247d1cfeb85994522e1eb8f8874651bfb1df03e2a +ac83443fd0afe99ad49de9bf8230158c118e2814c9c89db5ac951c240d6c2ce45e7677221279d9e97848ec466b99aafe +aeeefdbaba612e971697798ceaf63b247949dc823a0ad771ae5b988a5e882b338a98d3d0796230f49d533ec5ba411b39 +ae3f248b5a7b0f92b7820a6c5ae21e5bd8f4265d4f6e21a22512079b8ee9be06393fd3133ce8ebac0faf23f4f8517e36 +a64a831b908eee784b8388b45447d2885ec0551b26b0c2b15e5f417d0a12c79e867fb7bd3d008d0af98b44336f8ec1ad +b242238cd8362b6e440ba21806905714dd55172db25ec7195f3fc4937b2aba146d5cbf3cf691a1384b4752dc3b54d627 +819f97f337eea1ffb2a678cc25f556f1aab751c6b048993a1d430fe1a3ddd8bb411c152e12ca60ec6e057c190cd1db9a +b9d7d187407380df54ee9fef224c54eec1bfabf17dc8abf60765b7951f538f59aa26fffd5846cfe05546c35f59b573f4 +aa6e3c14efa6a5962812e3f94f8ce673a433f4a82d07a67577285ea0eaa07f8be7115853122d12d6d4e1fdf64c504be1 +82268bee9c1662d3ddb5fb785abfae6fb8b774190f30267f1d47091d2cd4b3874db4372625aa36c32f27b0eee986269b +b236459565b7b966166c4a35b2fa71030b40321821b8e96879d95f0e83a0baf33fa25721f30af4a631df209e25b96061 +8708d752632d2435d2d5b1db4ad1fa2558d776a013655f88e9a3556d86b71976e7dfe5b8834fdec97682cd94560d0d0d +ae1424a68ae2dbfb0f01211f11773732a50510b5585c1fb005cb892b2c6a58f4a55490b5c5b4483c6fce40e9d3236a52 +b3f5f722af9dddb07293c871ce97abbccba0093ca98c8d74b1318fa21396fc1b45b69c15084f63d728f9908442024506 +9606f3ce5e63886853ca476dc0949e7f1051889d529365c0cb0296fdc02abd088f0f0318ecd2cf36740a3634132d36f6 +b11a833a49fa138db46b25ff8cdda665295226595bc212c0931b4931d0a55c99da972c12b4ef753f7e37c6332356e350 +afede34e7dab0a9e074bc19a7daddb27df65735581ca24ad70c891c98b1349fcebbcf3ba6b32c2617fe06a5818dabc2d +97993d456e459e66322d01f8eb13918979761c3e8590910453944bdff90b24091bb018ac6499792515c9923be289f99f +977e3e967eff19290a192cd11df3667d511b398fb3ac9a5114a0f3707e25a0edcb56105648b1b85a8b7519fc529fc6f6 +b873a7c88bf58731fe1bf61ff6828bf114cf5228f254083304a4570e854e83748fc98683ddba62d978fff7909f2c5c47 +ad4b2691f6f19da1d123aaa23cca3e876247ed9a4ab23c599afdbc0d3aa49776442a7ceaa996ac550d0313d9b9a36cee +b9210713c78e19685608c6475bfa974b57ac276808a443f8b280945c5d5f9c39da43effa294bfb1a6c6f7b6b9f85bf6c +a65152f376113e61a0e468759de38d742caa260291b4753391ee408dea55927af08a4d4a9918600a3bdf1df462dffe76 +8bf8c27ad5140dde7f3d2280fd4cc6b29ab76537e8d7aa7011a9d2796ee3e56e9a60c27b5c2da6c5e14fc866301dc195 +92fde8effc9f61393a2771155812b863cff2a0c5423d7d40aa04d621d396b44af94ddd376c28e7d2f53c930aea947484 +97a01d1dd9ee30553ce676011aea97fa93d55038ada95f0057d2362ae9437f3ed13de8290e2ff21e3167dd7ba10b9c3f +89affffaa63cb2df3490f76f0d1e1d6ca35c221dd34057176ba739fa18d492355e6d2a5a5ad93a136d3b1fed0bb8aa19 +928b8e255a77e1f0495c86d3c63b83677b4561a5fcbbe5d3210f1e0fc947496e426d6bf3b49394a5df796c9f25673fc4 +842a0af91799c9b533e79ee081efe2a634cac6c584c2f054fb7d1db67dde90ae36de36cbf712ec9cd1a0c7ee79e151ea +a65b946cf637e090baf2107c9a42f354b390e7316beb8913638130dbc67c918926eb87bec3b1fe92ef72bc77a170fa3b +aafc0f19bfd71ab5ae4a8510c7861458b70ad062a44107b1b1dbacbfa44ba3217028c2824bd7058e2fa32455f624040b +95269dc787653814e0be899c95dba8cfa384f575a25e671c0806fd80816ad6797dc819d30ae06e1d0ed9cb01c3950d47 +a1e760f7fa5775a1b2964b719ff961a92083c5c617f637fc46e0c9c20ab233f8686f7f38c3cb27d825c54dd95e93a59b +ac3b8a7c2317ea967f229eddc3e23e279427f665c4705c7532ed33443f1243d33453c1088f57088d2ab1e3df690a9cc9 +b787beeddfbfe36dd51ec4efd9cf83e59e84d354c3353cc9c447be53ae53d366ed1c59b686e52a92f002142c8652bfe0 +b7a64198300cb6716aa7ac6b25621f8bdec46ad5c07a27e165b3f774cdf65bcfdbf31e9bae0c16b44de4b00ada7a4244 +b8ae9f1452909e0c412c7a7fe075027691ea8df1347f65a5507bc8848f1d2c833d69748076db1129e5b4fb912f65c86c +9682e41872456b9fa67def89e71f06d362d6c8ca85c9c48536615bc401442711e1c9803f10ab7f8ab5feaec0f9df20a6 +88889ff4e271dc1c7e21989cc39f73cde2f0475acd98078281591ff6c944fadeb9954e72334319050205d745d4df73df +8f79b5b8159e7fd0d93b0645f3c416464f39aec353b57d99ecf24f96272df8a068ad67a6c90c78d82c63b40bb73989bb +838c01a009a3d8558a3f0bdd5e22de21af71ca1aefc8423c91dc577d50920e9516880e87dce3e6d086e11cd45c9052d9 +b97f1c6eee8a78f137c840667cc288256e39294268a3009419298a04a1d0087c9c9077b33c917c65caf76637702dda8a +972284ce72f96a61c899260203dfa06fc3268981732bef74060641c1a5068ead723e3399431c247ca034b0dae861e8df +945a8d52d6d3db6663dbd3110c6587f9e9c44132045eeffba15621576d178315cb52870fa5861669f84f0bee646183fe +a0a547b5f0967b1c3e5ec6c6a9a99f0578521489180dfdfbb5561f4d166baac43a2f06f950f645ce991664e167537eed +a0592cda5cdddf1340033a745fd13a6eff2021f2e26587116c61c60edead067e0f217bc2bef4172a3c9839b0b978ab35 +b9c223b65a3281587fa44ec829e609154b32f801fd1de6950e01eafb07a8324243b960d5735288d0f89f0078b2c42b5b +99ebfc3b8f9f98249f4d37a0023149ed85edd7a5abe062c8fb30c8c84555258b998bdcdd1d400bc0fa2a4aaa8b224466 +955b68526e6cb3937b26843270f4e60f9c6c8ece2fa9308fe3e23afa433309c068c66a4bc16ee2cf04220f095e9afce4 +b766caeafcc00378135ae53397f8a67ed586f5e30795462c4a35853de6681b1f17401a1c40958de32b197c083b7279c1 +921bf87cad947c2c33fa596d819423c10337a76fe5a63813c0a9dc78a728207ae7b339407a402fc4d0f7cba3af6da6fc +a74ba1f3bc3e6c025db411308f49b347ec91da1c916bda9da61e510ec8d71d25e0ac0f124811b7860e5204f93099af27 +a29b4d144e0bf17a7e8353f2824cef0ce85621396babe8a0b873ca1e8a5f8d508b87866cf86da348470649fceefd735c +a8040e12ffc3480dd83a349d06741d1572ef91932c46f5cf03aee8454254156ee95786fd013d5654725e674c920cec32 +8c4cf34ca60afd33923f219ffed054f90cd3f253ffeb2204a3b61b0183417e366c16c07fae860e362b0f2bfe3e1a1d35 +8195eede4ddb1c950459df6c396b2e99d83059f282b420acc34220cadeed16ab65c856f2c52568d86d3c682818ed7b37 +91fff19e54c15932260aa990c7fcb3c3c3da94845cc5aa8740ef56cf9f58d19b4c3c55596f8d6c877f9f4d22921d93aa +a3e0bf7e5d02a80b75cf75f2db7e66cb625250c45436e3c136d86297d652590ec97c2311bafe407ad357c79ab29d107b +81917ff87e5ed2ae4656b481a63ced9e6e5ff653b8aa6b7986911b8bc1ee5b8ef4f4d7882c3f250f2238e141b227e510 +915fdbe5e7de09c66c0416ae14a8750db9412e11dc576cf6158755fdcaf67abdbf0fa79b554cac4fe91c4ec245be073f +8df27eafb5c3996ba4dc5773c1a45ca77e626b52e454dc1c4058aa94c2067c18332280630cc3d364821ee53bf2b8c130 +934f8a17c5cbb827d7868f5c8ca00cb027728a841000a16a3428ab16aa28733f16b52f58c9c4fbf75ccc45df72d9c4df +b83f4da811f9183c25de8958bc73b504cf790e0f357cbe74ef696efa7aca97ad3b7ead1faf76e9f982c65b6a4d888fc2 +87188213c8b5c268dc2b6da413f0501c95749e953791b727450af3e43714149c115b596b33b63a2f006a1a271b87efd0 +83e9e888ab9c3e30761de635d9aabd31248cdd92f7675fc43e4b21fd96a03ec1dc4ad2ec94fec857ffb52683ac98e360 +b4b9a1823fe2d983dc4ec4e3aaea297e581c3fc5ab4b4af5fa1370caa37af2d1cc7fc6bfc5e7da60ad8fdce27dfe4b24 +856388bc78aef465dbcdd1f559252e028c9e9a2225c37d645c138e78f008f764124522705822a61326a6d1c79781e189 +a6431b36db93c3b47353ba22e7c9592c9cdfb9cbdd052ecf2cc3793f5b60c1e89bc96e6bae117bfd047f2308da00dd2f +b619972d48e7e4291542dcde08f7a9cdc883c892986ded2f23ccb216e245cd8d9ad1d285347b0f9d7611d63bf4cee2bc +8845cca6ff8595955f37440232f8e61d5351500bd016dfadd182b9d39544db77a62f4e0102ff74dd4173ae2c181d24ef +b2f5f7fa26dcd3b6550879520172db2d64ee6aaa213cbef1a12befbce03f0973a22eb4e5d7b977f466ac2bf8323dcedd +858b7f7e2d44bdf5235841164aa8b4f3d33934e8cb122794d90e0c1cac726417b220529e4f896d7b77902ab0ccd35b3a +80b0408a092dae2b287a5e32ea1ad52b78b10e9c12f49282976cd738f5d834e03d1ad59b09c5ccaccc39818b87d06092 +b996b0a9c6a2d14d984edcd6ab56bc941674102980d65b3ad9733455f49473d3f587c8cbf661228a7e125ddbe07e3198 +90224fcebb36865293bd63af786e0c5ade6b67c4938d77eb0cbae730d514fdd0fe2d6632788e858afd29d46310cf86df +b71351fdfff7168b0a5ec48397ecc27ac36657a8033d9981e97002dcca0303e3715ce6dd3f39423bc8ef286fa2e9e669 +ae2a3f078b89fb753ce4ed87e0c1a58bb19b4f0cfb6586dedb9fcab99d097d659a489fb40e14651741e1375cfc4b6c5f +8ef476b118e0b868caed297c161f4231bbeb863cdfa5e2eaa0fc6b6669425ce7af50dc374abceac154c287de50c22307 +92e46ab472c56cfc6458955270d3c72b7bde563bb32f7d4ab4d959db6f885764a3d864e1aa19802fefaa5e16b0cb0b54 +96a3f68323d1c94e73d5938a18a377af31b782f56212de3f489d22bc289cf24793a95b37f1d6776edf88114b5c1fa695 +962cc068cfce6faaa27213c4e43e44eeff0dfbb6d25b814e82c7da981fb81d7d91868fa2344f05fb552362f98cfd4a72 +895d4e4c4ad670abf66d43d59675b1add7afad7438ada8f42a0360c704cee2060f9ac15b4d27e9b9d0996bb801276fe3 +b3ad18d7ece71f89f2ef749b853c45dc56bf1c796250024b39a1e91ed11ca32713864049c9aaaea60cde309b47486bbf +8f05404e0c0258fdbae50e97ccb9b72ee17e0bd2400d9102c0dad981dac8c4c71585f03e9b5d50086d0a2d3334cb55d1 +8bd877e9d4591d02c63c6f9fc9976c109de2d0d2df2bfa5f6a3232bab5b0b8b46e255679520480c2d7a318545efa1245 +8d4c16b5d98957c9da13d3f36c46f176e64e5be879f22be3179a2c0e624fe4758a82bf8c8027410002f973a3b84cd55a +86e2a8dea86427b424fa8eada881bdff896907084a495546e66556cbdf070b78ba312bf441eb1be6a80006d25d5097a3 +8608b0c117fd8652fdab0495b08fadbeba95d9c37068e570de6fddfef1ba4a1773b42ac2be212836141d1bdcdef11a17 +a13d6febf5fb993ae76cae08423ca28da8b818d6ef0fde32976a4db57839cd45b085026b28ee5795f10a9a8e3098c683 +8e261967fa6de96f00bc94a199d7f72896a6ad8a7bbb1d6187cca8fad824e522880e20f766620f4f7e191c53321d70f9 +8b8e8972ac0218d7e3d922c734302803878ad508ca19f5f012bc047babd8a5c5a53deb5fe7c15a4c00fd6d1cb9b1dbd0 +b5616b233fb3574a2717d125a434a2682ff68546dccf116dd8a3b750a096982f185614b9fb6c7678107ff40a451f56fa +aa6adf9b0c3334b0d0663f583a4914523b2ac2e7adffdb026ab9109295ff6af003ef8357026dbcf789896d2afded8d73 +acb72df56a0b65496cd534448ed4f62950bb1e11e50873b6ed349c088ee364441821294ce0f7c61bd7d38105bea3b442 +abae12df83e01ec947249fedd0115dc501d2b03ff7232092979eda531dbbca29ace1d46923427c7dde4c17bdf3fd7708 +820b4fc2b63a9fda7964acf5caf19a2fc4965007cb6d6b511fcafcb1f71c3f673a1c0791d3f86e3a9a1eb6955b191cc0 +af277259d78c6b0f4f030a10c53577555df5e83319ddbad91afbd7c30bc58e7671c56d00d66ec3ab5ef56470cd910cee +ad4a861c59f1f5ca1beedd488fb3d131dea924fffd8e038741a1a7371fad7370ca5cf80dc01f177fbb9576713bb9a5b3 +b67a5162982ce6a55ccfb2f177b1ec26b110043cf18abd6a6c451cf140b5af2d634591eb4f28ad92177d8c7e5cd0a5e8 +96176d0a83816330187798072d449cbfccff682561e668faf6b1220c9a6535b32a6e4f852e8abb00f79abb87493df16b +b0afe6e7cb672e18f0206e4423f51f8bd0017bf464c4b186d46332c5a5847647f89ff7fa4801a41c1b0b42f6135bcc92 +8fc5e7a95ef20c1278c645892811f6fe3f15c431ebc998a32ec0da44e7213ea934ed2be65239f3f49b8ec471e9914160 +b7793e41adda6c82ba1f2a31f656f6205f65bf8a3d50d836ee631bc7ce77c153345a2d0fc5c60edf8b37457c3729c4ec +a504dd7e4d6b2f4379f22cc867c65535079c75ccc575955f961677fa63ecb9f74026fa2f60c9fb6323c1699259e5e9c8 +ab899d00ae693649cc1afdf30fb80d728973d2177c006e428bf61c7be01e183866614e05410041bc82cb14a33330e69c +8a3bd8b0b1be570b65c4432a0f6dc42f48a2000e30ab089cf781d38f4090467b54f79c0d472fcbf18ef6a00df69cc6f3 +b4d7028f7f76a96a3d7803fca7f507ae11a77c5346e9cdfccb120a833a59bda1f4264e425aa588e7a16f8e7638061d84 +b9c7511a76ea5fb105de905d44b02edb17008335766ee357ed386b7b3cf19640a98b38785cb14603c1192bee5886c9b6 +8563afb12e53aed71ac7103ab8602bfa8371ae095207cb0d59e8fd389b6ad1aff0641147e53cb6a7ca16c7f37c9c5e6b +8e108be614604e09974a9ed90960c28c4ea330a3d9a0cb4af6dd6f193f84ab282b243ecdf549b3131036bebc8905690c +b794d127fbedb9c5b58e31822361706ffac55ce023fbfe55716c3c48c2fd2f2c7660a67346864dfe588812d369cb50b6 +b797a3442fc3b44f41baefd30346f9ac7f96e770d010d53c146ce74ce424c10fb62758b7e108b8abfdc5fafd89d745cb +993bb71e031e8096442e6205625e1bfddfe6dd6a83a81f3e2f84fafa9e5082ab4cad80a099f21eff2e81c83457c725c3 +8711ab833fc03e37acf2e1e74cfd9133b101ff4144fe30260654398ae48912ab46549d552eb9d15d2ea57760d35ac62e +b21321fd2a12083863a1576c5930e1aecb330391ef83326d9d92e1f6f0d066d1394519284ddab55b2cb77417d4b0292f +877d98f731ffe3ee94b0b5b72d127630fa8a96f6ca4f913d2aa581f67732df6709493693053b3e22b0181632ac6c1e3b +ae391c12e0eb8c145103c62ea64f41345973311c3bf7281fa6bf9b7faafac87bcf0998e5649b9ef81e288c369c827e07 +b83a2842f36998890492ab1cd5a088d9423d192681b9a3a90ec518d4c541bce63e6c5f4df0f734f31fbfdd87785a2463 +a21b6a790011396e1569ec5b2a423857b9bec16f543e63af28024e116c1ea24a3b96e8e4c75c6537c3e4611fd265e896 +b4251a9c4aab3a495da7a42e684ba4860dbcf940ad1da4b6d5ec46050cbe8dab0ab9ae6b63b5879de97b905723a41576 +8222f70aebfe6ac037f8543a08498f4cadb3edaac00336fc00437eb09f2cba758f6c38e887cc634b4d5b7112b6334836 +86f05038e060594c46b5d94621a1d9620aa8ba59a6995baf448734e21f58e23c1ea2993d3002ad5250d6edd5ba59b34f +a7c0c749baef811ab31b973c39ceb1d94750e2bc559c90dc5eeb20d8bb6b78586a2b363c599ba2107d6be65cd435f24e +861d46a5d70b38d6c1cd72817a2813803d9f34c00320c8b62f8b9deb67f5b5687bc0b37c16d28fd017367b92e05da9ca +b3365d3dab639bffbe38e35383686a435c8c88b397b717cd4aeced2772ea1053ceb670f811f883f4e02975e5f1c4ac58 +a5750285f61ab8f64cd771f6466e2c0395e01b692fd878f2ef2d5c78bdd8212a73a3b1dfa5e4c8d9e1afda7c84857d3b +835a10809ccf939bc46cf950a33b36d71be418774f51861f1cd98a016ade30f289114a88225a2c11e771b8b346cbe6ef +a4f59473a037077181a0a62f1856ec271028546ca9452b45cedfcb229d0f4d1aabfc13062b07e536cc8a0d4b113156a2 +95cd14802180b224d44a73cc1ed599d6c4ca62ddcaa503513ccdc80aaa8be050cc98bd4b4f3b639549beb4587ac6caf9 +973b731992a3e69996253d7f36dd7a0af1982b5ed21624b77a7965d69e9a377b010d6dabf88a8a97eec2a476259859cc +af8a1655d6f9c78c8eb9a95051aa3baaf9c811adf0ae8c944a8d3fcba87b15f61021f3baf6996fa0aa51c81b3cb69de1 +835aad5c56872d2a2d6c252507b85dd742bf9b8c211ccb6b25b52d15c07245b6d89b2a40f722aeb5083a47cca159c947 +abf4e970b02bef8a102df983e22e97e2541dd3650b46e26be9ee394a3ea8b577019331857241d3d12b41d4eacd29a3ac +a13c32449dbedf158721c13db9539ae076a6ce5aeaf68491e90e6ad4e20e20d1cdcc4a89ed9fd49cb8c0dd50c17633c1 +8c8f78f88b7e22dd7e9150ab1c000f10c28e696e21d85d6469a6fe315254740f32e73d81ab1f3c1cf8f544c86df506e8 +b4b77f2acfe945abf81f2605f906c10b88fb4d28628487fb4feb3a09f17f28e9780445dfcee4878349d4c6387a9d17d4 +8d255c235f3812c6ecc646f855fa3832be5cb4dbb9c9e544989fafdf3f69f05bfd370732eaf954012f0044aa013fc9c6 +b982efd3f34b47df37c910148ac56a84e8116647bea24145a49e34e0a6c0176e3284d838dae6230cb40d0be91c078b85 +983f365aa09bd85df2a6a2ad8e4318996b1e27d02090755391d4486144e40d80b1fbfe1c798d626db92f52e33aa634da +95fd1981271f3ea3a41d654cf497e6696730d9ff7369f26bc4d7d15c7adb4823dd0c42e4a005a810af12d234065e5390 +a9f5219bd4b913c186ef30c02f995a08f0f6f1462614ea5f236964e02bdaa33db9d9b816c4aee5829947840a9a07ba60 +9210e6ceb05c09b46fd09d036287ca33c45124ab86315e5d6911ff89054f1101faaa3e83d123b7805056d388bcec6664 +8ed9cbf69c6ff3a5c62dd9fe0d7264578c0f826a29e614bc2fb4d621d90c8c9992438accdd7a614b1dca5d1bb73dc315 +85cf2a8cca93e00da459e3cecd22c342d697eee13c74d5851634844fc215f60053cf84b0e03c327cb395f48d1c71a8a4 +8818a18e9a2ec90a271b784400c1903089ffb0e0b40bc5abbbe12fbebe0f731f91959d98c5519ef1694543e31e2016d4 +8dabc130f296fa7a82870bf9a8405aaf542b222ed9276bba9bd3c3555a0f473acb97d655ee7280baff766a827a8993f0 +ac7952b84b0dc60c4d858f034093b4d322c35959605a3dad2b806af9813a4680cb038c6d7f4485b4d6b2ff502aaeca25 +ad65cb6d57b48a2602568d2ec8010baed0eb440eec7638c5ec8f02687d764e9de5b5d42ad5582934e592b48471c22d26 +a02ab8bd4c3d114ea23aebdd880952f9495912817da8c0c08eabc4e6755439899d635034413d51134c72a6320f807f1c +8319567764b8295402ec1ebef4c2930a138480b37e6d7d01c8b4c9cd1f2fc3f6e9a44ae6e380a0c469b25b06db23305f +afec53b2301dc0caa8034cd9daef78c48905e6068d692ca23d589b84a6fa9ddc2ed24a39480597e19cb3e83eec213b3f +ac0b4ffdb5ae08e586a9cdb98f9fe56f4712af3a97065e89e274feacfb52b53c839565aee93c4cfaaccfe51432c4fab0 +8972cbf07a738549205b1094c5987818124144bf187bc0a85287c94fdb22ce038c0f11df1aa16ec5992e91b44d1af793 +b7267aa6f9e3de864179b7da30319f1d4cb2a3560f2ea980254775963f1523b44c680f917095879bebfa3dc2b603efcf +80f68f4bfc337952e29504ee5149f15093824ea7ab02507efd1317a670f6cbc3611201848560312e3e52e9d9af72eccf +8897fee93ce8fc1e1122e46b6d640bba309384dbd92e46e185e6364aa8210ebf5f9ee7e5e604b6ffba99aa80a10dd7d0 +b58ea6c02f2360be60595223d692e82ee64874fda41a9f75930f7d28586f89be34b1083e03bbc1575bbfdda2d30db1ea +85a523a33d903280d70ac5938770453a58293480170c84926457ac2df45c10d5ff34322ab130ef4a38c916e70d81af53 +a2cbf045e1bed38937492c1f2f93a5ba41875f1f262291914bc1fc40c60bd0740fb3fea428faf6da38b7c180fe8ac109 +8c09328770ed8eb17afc6ac7ddd87bb476de18ed63cab80027234a605806895959990c47bd10d259d7f3e2ecb50074c9 +b4b9e19edb4a33bde8b7289956568a5b6b6557404e0a34584b5721fe6f564821091013fbb158e2858c6d398293bb4b59 +8a47377df61733a2aa5a0e945fce00267f8e950f37e109d4487d92d878fb8b573317bb382d902de515b544e9e233458d +b5804c9d97efeff5ca94f3689b8088c62422d92a1506fd1d8d3b1b30e8a866ad0d6dad4abfa051dfc4471250cac4c5d9 +9084a6ee8ec22d4881e9dcc8a9eb3c2513523d8bc141942370fd191ad2601bf9537a0b1e84316f3209b3d8a54368051e +85447eea2fa26656a649f8519fa67279183044791d61cf8563d0783d46d747d96af31d0a93507bbb2242666aa87d3720 +97566a84481027b60116c751aec552adfff2d9038e68d48c4db9811fb0cbfdb3f1d91fc176a0b0d988a765f8a020bce1 +ae87e5c1b9e86c49a23dceda4ecfd1dcf08567f1db8e5b6ec752ebd45433c11e7da4988573cdaebbb6f4135814fc059e +abee05cf9abdbc52897ac1ce9ed157f5466ed6c383d6497de28616238d60409e5e92619e528af8b62cc552bf09970dc2 +ae6d31cd7bf9599e5ee0828bab00ceb4856d829bba967278a73706b5f388465367aa8a6c7da24b5e5f1fdd3256ef8e63 +ac33e7b1ee47e1ee4af472e37ab9e9175260e506a4e5ce449788075da1b53c44cb035f3792d1eea2aa24b1f688cc6ed3 +80f65b205666b0e089bb62152251c48c380a831e5f277f11f3ef4f0d52533f0851c1b612267042802f019ec900dc0e8f +858520ad7aa1c9fed738e3b583c84168f2927837ad0e1d326afe9935c26e9b473d7f8c382e82ef1fe37d2b39bb40a1ee +b842dd4af8befe00a97c2d0f0c33c93974761e2cb9e5ab8331b25170318ddd5e4bdbc02d8f90cbfdd5f348f4f371c1f7 +8bf2cb79bc783cb57088aae7363320cbeaabd078ffdec9d41bc74ff49e0043d0dad0086a30e5112b689fd2f5a606365d +982eb03bbe563e8850847cd37e6a3306d298ab08c4d63ab6334e6b8c1fa13fce80cf2693b09714c7621d74261a0ff306 +b143edb113dec9f1e5105d4a93fbe502b859e587640d3db2f628c09a17060e6aec9e900e2c8c411cda99bc301ff96625 +af472d9befa750dcebc5428fe1a024f18ec1c07bca0f95643ce6b5f4189892a910285afb03fd7ed7068fbe614e80d33c +a97e3bc57ede73ecd1bbf02de8f51b4e7c1a067da68a3cd719f4ba26a0156cbf1cef2169fd35a18c5a4cced50d475998 +a862253c937cf3d75d7183e5f5be6a4385d526aeda5171c1c60a8381fea79f88f5f52a4fab244ecc70765d5765e6dfd5 +90cb776f8e5a108f1719df4a355bebb04bf023349356382cae55991b31720f0fd03206b895fa10c56c98f52453be8778 +a7614e8d0769dccd520ea4b46f7646e12489951efaef5176bc889e9eb65f6e31758df136b5bf1e9107e68472fa9b46ec +ac3a9b80a3254c42e5ed3a090a0dd7aee2352f480de96ad187027a3bb6c791eddfc3074b6ffd74eea825188f107cda4d +82a01d0168238ef04180d4b6e0a0e39024c02c2d75b065017c2928039e154d093e1af4503f4d1f3d8a948917abb5d09f +8fab000a2b0eef851a483aec8d2dd85fe60504794411a2f73ed82e116960547ac58766cb73df71aea71079302630258d +872451a35c6db61c63e9b8bb9f16b217f985c20be4451c14282c814adb29d7fb13f201367c664435c7f1d4d9375d7a58 +887d9ff54cc96b35d562df4a537ff972d7c4b3fd91ab06354969a4cfede0b9fc68bbffb61d0dbf1a58948dc701e54f5a +8cb5c2a6bd956875d88f41ae24574434f1308514d44057b55c9c70f13a3366ed054150eed0955a38fda3f757be73d55f +89ad0163cad93e24129d63f8e38422b7674632a8d0a9016ee8636184cab177659a676c4ee7efba3abe1a68807c656d60 +b9ec01c7cab6d00359b5a0b4a1573467d09476e05ca51a9227cd16b589a9943d161eef62dcc73f0de2ec504d81f4d252 +8031d17635d39dfe9705c485d2c94830b6fc9bc67b91300d9d2591b51e36a782e77ab5904662effa9382d9cca201f525 +8be5a5f6bc8d680e5092d6f9a6585acbaaaa2ddc671da560dcf5cfa4472f4f184b9597b5b539438accd40dda885687cc +b1fc0f052fae038a2e3de3b3a96b0a1024b009de8457b8b3adb2d315ae68a89af905720108a30038e5ab8d0d97087785 +8b8bdc77bd3a6bc7ca5492b6f8c614852c39a70d6c8a74916eaca0aeb4533b11898b8820a4c2620a97bf35e275480029 +af35f4dc538d4ad5cdf710caa38fd1eb496c3fa890a047b6a659619c5ad3054158371d1e88e0894428282eed9f47f76b +8166454a7089cc07758ad78724654f4e7a1a13e305bbf88ddb86f1a4b2904c4fc8ab872d7da364cdd6a6c0365239e2ad +ab287c7d3addce74ce40491871c768abe01daaa0833481276ff2e56926b38a7c6d2681ffe837d2cc323045ad1a4414f9 +b90317f4505793094d89365beb35537f55a6b5618904236258dd04ca61f21476837624a2f45fef8168acf732cab65579 +98ae5ea27448e236b6657ab5ef7b1cccb5372f92ab25f5fa651fbac97d08353a1dae1b280b1cd42b17d2c6a70a63ab9d +adcf54e752d32cbaa6cb98fbca48d8cd087b1db1d131d465705a0d8042c8393c8f4d26b59006eb50129b21e6240f0c06 +b591a3e4db18a7345fa935a8dd7994bbac5cc270b8ebd84c8304c44484c7a74afb45471fdbe4ab22156a30fae1149b40 +806b53ac049a42f1dcc1d6335505371da0bf27c614f441b03bbf2e356be7b2fb4eed7117eabcce9e427a542eaa2bf7d8 +800482e7a772d49210b81c4a907f5ce97f270b959e745621ee293cf8c71e8989363d61f66a98f2d16914439544ca84c7 +99de9eafdad3617445312341644f2bb888680ff01ce95ca9276b1d2e5ef83fa02dab5e948ebf66c17df0752f1bd37b70 +961ee30810aa4c93ae157fbe9009b8e443c082192bd36a73a6764ff9b2ad8b0948fe9a73344556e01399dd77badb4257 +ae0a361067c52efbe56c8adf982c00432cd478929459fc7f74052c8ee9531cd031fe1335418fde53f7c2ef34254eb7ac +a3503d16b6b27eb20c1b177bcf90d13706169220523a6271b85b2ce35a9a2b9c5bed088540031c0a4ebfdae3a4c6ab04 +909420122c3e723289ca4e7b81c2df5aff312972a2203f4c45821b176e7c862bf9cac7f7df3adf1d59278f02694d06e7 +989f42380ae904b982f85d0c6186c1aef5d6bcba29bcfbb658e811b587eb2749c65c6e4a8cc6409c229a107499a4f5d7 +8037a6337195c8e26a27ea4ef218c6e7d79a9720aaab43932d343192abc2320fe72955f5e431c109093bda074103330a +b312e168663842099b88445e940249cc508f080ab0c94331f672e7760258dbd86be5267e4cf25ea25facb80bff82a7e9 +aaa3ff8639496864fcdbfdda1ac97edc4f08e3c9288b768f6c8073038c9fbbf7e1c4bea169b4d45c31935cdf0680d45e +97dbd3df37f0b481a311dfc5f40e59227720f367912200d71908ef6650f32cc985cb05b981e3eea38958f7e48d10a15d +a89d49d1e267bb452d6cb621b9a90826fe55e9b489c0427b94442d02a16f390eed758e209991687f73f6b5a032321f42 +9530dea4e0e19d6496f536f2e75cf7d814d65fde567055eb20db48fd8d20d501cd2a22fb506db566b94c9ee10f413d43 +81a7009b9e67f1965fa7da6a57591c307de91bf0cd35ab4348dc4a98a4961e096d004d7e7ad318000011dc4342c1b809 +83440a9402b766045d7aca61a58bba2aa29cac1cf718199e472ba086f5d48093d9dda4d135292ba51d049a23964eceae +a06c9ce5e802df14f6b064a3d1a0735d429b452f0e2e276042800b0a4f16df988fd94cf3945921d5dd3802ab2636f867 +b1359e358b89936dee9e678a187aad3e9ab14ac40e96a0a68f70ee2583cdcf467ae03bef4215e92893f4e12f902adec8 +835304f8619188b4d14674d803103d5a3fa594d48e96d9699e653115dd05fdc2dda6ba3641cf7ad53994d448da155f02 +8327cba5a9ff0d3f5cd0ae55e77167448926d5fcf76550c0ad978092a14122723090c51c415e88e42a2b62eb07cc3981 +b373dcdaea85f85ce9978b1426a7ef4945f65f2d3467a9f1cc551a99766aac95df4a09e2251d3f89ca8c9d1a7cfd7b0e +ab1422dc41af2a227b973a6fd124dfcb2367e2a11a21faa1d381d404f51b7257e5bc82e9cf20cd7fe37d7ae761a2ab37 +a93774a03519d2f20fdf2ef46547b0a5b77c137d6a3434b48d56a2cbef9e77120d1b85d0092cf8842909213826699477 +8eb967a495a38130ea28711580b7e61bcd1d051cd9e4f2dbf62f1380bd86e0d60e978d72f6f31e909eb97b3b9a2b867c +ae8213378da1287ba1fe4242e1acaec19b877b6fe872400013c6eac1084b8d03156792fa3020201725b08228a1e80f49 +b143daf6893d674d607772b3b02d8ac48f294237e2f2c87963c0d4e26d9227d94a2a13512457c3d5883544bbc259f0ef +b343bd2aca8973888e42542218924e2dda2e938fd1150d06878af76f777546213912b7c7a34a0f94186817d80ffa185c +b188ebc6a8c3007001aa347ae72cc0b15d09bc6c19a80e386ee4b334734ec0cc2fe8b493c2422f38d1e6d133cc3db6fe +b795f6a8b9b826aaeee18ccd6baf6c5adeeec85f95eb5b6d19450085ec7217e95a2d9e221d77f583b297d0872073ba0e +b1c7dbd998ad32ae57bfa95deafa147024afd57389e98992c36b6e52df915d3d5a39db585141ec2423173e85d212fed8 +812bcdeb9fe5f12d0e1df9964798056e1f1c3de3b17b6bd2919b6356c4b86d8e763c01933efbe0224c86a96d5198a4be +b19ebeda61c23d255cbf472ef0b8a441f4c55b70f0d8ed47078c248b1d3c7c62e076b43b95c00a958ec8b16d5a7cb0d7 +b02adc9aaa20e0368a989c2af14ff48b67233d28ebee44ff3418bb0473592e6b681af1cc45450bd4b175df9051df63d9 +8d87f0714acee522eb58cec00360e762adc411901dba46adc9227124fa70ee679f9a47e91a6306d6030dd4eb8de2f3c1 +8be54cec21e74bcc71de29dc621444263737db15f16d0bb13670f64e42f818154e04b484593d19ef95f2ee17e4b3fe21 +ab8e20546c1db38d31493b5d5f535758afb17e459645c1b70813b1cf7d242fd5d1f4354a7c929e8f7259f6a25302e351 +89f035a1ed8a1e302ac893349ba8ddf967580fcb6e73d44af09e3929cde445e97ff60c87dafe489e2c0ab9c9986cfa00 +8b2b0851a795c19191a692af55f7e72ad2474efdc5401bc3733cfdd910e34c918aaebe69d5ea951bdddf3c01cabbfc67 +a4edb52c2b51495ccd1ee6450fc14b7b3ede8b3d106808929d02fb31475bacb403e112ba9c818d2857651e508b3a7dd1 +9569341fded45d19f00bcf3cbf3f20eb2b4d82ef92aba3c8abd95866398438a2387437e580d8b646f17cf6fde8c5af23 +aa4b671c6d20f72f2f18a939a6ff21cc37e0084b44b4a717f1be859a80b39fb1be026b3205adec2a66a608ec2bcd578f +94902e980de23c4de394ad8aec91b46f888d18f045753541492bfbb92c59d3daa8de37ae755a6853744af8472ba7b72b +af651ef1b2a0d30a7884557edfad95b6b5d445a7561caebdc46a485aedd25932c62c0798465c340a76f6feaa196dd712 +b7b669b8e5a763452128846dd46b530dca4893ace5cc5881c7ddcd3d45969d7e73fbebdb0e78aa81686e5f7b22ec5759 +82507fd4ebe9fa656a7f2e084d64a1fa6777a2b0bc106d686e2d9d2edafc58997e58cb6bfd0453b2bf415704aa82ae62 +b40bce2b42b88678400ecd52955bbdadd15f8b9e1b3751a1a3375dc0efb5ca3ee258cf201e1140b3c09ad41217d1d49e +b0210d0cbb3fbf3b8cdb39e862f036b0ff941cd838e7aaf3a8354e24246e64778d22f3de34572e6b2a580614fb6425be +876693cba4301b251523c7d034108831df3ce133d8be5a514e7a2ca494c268ca0556fa2ad8310a1d92a16b55bcd99ea9 +8660281406d22a4950f5ef050bf71dd3090edb16eff27fa29ef600cdea628315e2054211ed2cc6eaf8f2a1771ef689fd +a610e7e41e41ab66955b809ba4ade0330b8e9057d8efc9144753caed81995edeb1a42a53f93ce93540feca1fae708dac +a49e2c176a350251daef1218efaccc07a1e06203386ede59c136699d25ca5cb2ac1b800c25b28dd05678f14e78e51891 +83e0915aa2b09359604566080d411874af8c993beba97d4547782fdbe1a68e59324b800ff1f07b8db30c71adcbd102a8 +a19e84e3541fb6498e9bb8a099c495cbfcad113330e0262a7e4c6544495bb8a754b2208d0c2d895c93463558013a5a32 +87f2bd49859a364912023aca7b19a592c60214b8d6239e2be887ae80b69ebdeb59742bdebcfa73a586ab23b2c945586c +b8e8fdddae934a14b57bc274b8dcd0d45ebb95ddbaabef4454e0f6ce7d3a5a61c86181929546b3d60c447a15134d08e1 +87e0c31dcb736ea4604727e92dc1d9a3cf00adcff79df3546e02108355260f3dd171531c3c0f57be78d8b28058fcc8c0 +9617d74e8f808a4165a8ac2e30878c349e1c3d40972006f0787b31ea62d248c2d9f3fc3da83181c6e57e95feedfd0e8c +8949e2cee582a2f8db86e89785a6e46bc1565c2d8627d5b6bf43ba71ffadfab7e3c5710f88dcb5fb2fc6edf6f4fae216 +ad3fa7b0edceb83118972a2935a09f409d09a8db3869f30be3a76f67aa9fb379cabb3a3aff805ba023a331cad7d7eb64 +8c95718a4112512c4efbd496be38bf3ca6cdcaad8a0d128f32a3f9aae57f3a57bdf295a3b372a8c549fda8f4707cffed +88f3261d1e28a58b2dee3fcc799777ad1c0eb68b3560f9b4410d134672d9533532a91ea7be28a041784872632d3c9d80 +b47472a41d72dd2e8b72f5c4f8ad626737dde3717f63d6bc776639ab299e564cbad0a2ad5452a07f02ff49a359c437e5 +9896d21dc2e8aad87b76d6df1654f10cd7bceed4884159d50a818bea391f8e473e01e14684814c7780235f28e69dca6e +82d47c332bbd31bbe83b5eb44a23da76d4a7a06c45d7f80f395035822bc27f62f59281d5174e6f8e77cc9b5c3193d6f0 +95c74cd46206e7f70c9766117c34c0ec45c2b0f927a15ea167901a160e1530d8522943c29b61e03568aa0f9c55926c53 +a89d7757825ae73a6e81829ff788ea7b3d7409857b378ebccd7df73fdbe62c8d9073741cf038314971b39af6c29c9030 +8c1cd212d0b010905d560688cfc036ae6535bc334fa8b812519d810b7e7dcf1bb7c5f43deaa40f097158358987324a7f +b86993c383c015ed8d847c6b795164114dd3e9efd25143f509da318bfba89389ea72a420699e339423afd68b6512fafb +8d06bd379c6d87c6ed841d8c6e9d2d0de21653a073725ff74be1934301cc3a79b81ef6dd0aad4e7a9dc6eac9b73019bc +81af4d2d87219985b9b1202d724fe39ef988f14fef07dfe3c3b11714e90ffba2a97250838e8535eb63f107abfe645e96 +8c5e0af6330a8becb787e4b502f34f528ef5756e298a77dc0c7467433454347f3a2e0bd2641fbc2a45b95e231c6e1c02 +8e2a8f0f04562820dc8e7da681d5cad9fe2e85dd11c785fb6fba6786c57a857e0b3bd838fb849b0376c34ce1665e4837 +a39be8269449bfdfc61b1f62077033649f18dae9bef7c6163b9314ca8923691fb832f42776f0160b9e8abd4d143aa4e1 +8c154e665706355e1cc98e0a4cabf294ab019545ba9c4c399d666e6ec5c869ca9e1faf8fb06cd9c0a5c2f51a7d51b70a +a046a7d4de879d3ebd4284f08f24398e9e3bf006cd4e25b5c67273ade248689c69affff92ae810c07941e4904296a563 +afd94c1cb48758e5917804df03fb38a6da0e48cd9b6262413ea13b26973f9e266690a1b7d9d24bbaf7e82718e0e594b0 +859e21080310c8d6a38e12e2ac9f90a156578cdeb4bb2e324700e97d9a5511cd6045dc39d1d0de3f94aeed043a24119d +a219fb0303c379d0ab50893264919f598e753aac9065e1f23ef2949abc992577ab43c636a1d2c089203ec9ddb941e27d +b0fdb639d449588a2ca730afcba59334e7c387342d56defdfb7ef79c493f7fd0e5277eff18e7203e756c7bdda5803047 +87f9c3b7ed01f54368aca6dbcf2f6e06bff96e183c4b2c65f8baa23b377988863a0a125d5cdd41a072da8462ced4c070 +99ef7a5d5ac2f1c567160e1f8c95f2f38d41881850f30c461a205f7b1b9fb181277311333839b13fb3ae203447e17727 +aeaca9b1c2afd24e443326cc68de67b4d9cedb22ad7b501a799d30d39c85bb2ea910d4672673e39e154d699e12d9b3dc +a11675a1721a4ba24dd3d0e4c3c33a6edf4cd1b9f6b471070b4386c61f77452266eae6e3f566a40cfc885eada9a29f23 +b228334445e37b9b49cb4f2cc56b454575e92173ddb01370a553bba665adadd52df353ad74470d512561c2c3473c7bb9 +a18177087c996572d76f81178d18ed1ceebc8362a396348ce289f1d8bd708b9e99539be6fccd4acb1112381cfc5749b4 +8e7b8bf460f0d3c99abb19803b9e43422e91507a1c0c22b29ee8b2c52d1a384da4b87c292e28eff040db5be7b1f8641f +b03d038d813e29688b6e6f444eb56fec3abba64c3d6f890a6bcf2e916507091cdb2b9d2c7484617be6b26552ed1c56cb +a1c88ccd30e934adfc5494b72655f8afe1865a84196abfb376968f22ddc07761210b6a9fb7638f1413d1b4073d430290 +961b714faebf172ad2dbc11902461e286e4f24a99a939152a53406117767682a571057044decbeb3d3feef81f4488497 +a03dc4059b46effdd786a0a03cc17cfee8585683faa35bb07936ded3fa3f3a097f518c0b8e2db92fd700149db1937789 +adf60180c99ca574191cbcc23e8d025b2f931f98ca7dfcebfc380226239b6329347100fcb8b0fcb12db108c6ad101c07 +805d4f5ef24d46911cbf942f62cb84b0346e5e712284f82b0db223db26d51aabf43204755eb19519b00e665c7719fcaa +8dea7243e9c139662a7fe3526c6c601eee72fd8847c54c8e1f2ad93ef7f9e1826b170afe58817dac212427164a88e87f +a2ba42356606d651b077983de1ad643650997bb2babb188c9a3b27245bb65d2036e46667c37d4ce02cb1be5ae8547abe +af2ae50b392bdc013db2d12ce2544883472d72424fc767d3f5cb0ca2d973fc7d1f425880101e61970e1a988d0670c81b +98e6bec0568d3939b31d00eb1040e9b8b2a35db46ddf4369bdaee41bbb63cc84423d29ee510a170fb5b0e2df434ba589 +822ff3cd12fbef4f508f3ca813c04a2e0b9b799c99848e5ad3563265979e753ee61a48f6adc2984a850f1b46c1a43d35 +891e8b8b92a394f36653d55725ef514bd2e2a46840a0a2975c76c2a935577f85289026aaa74384da0afe26775cbddfb9 +b2a3131a5d2fe7c8967047aa66e4524babae941d90552171cc109527f345f42aa0df06dcbb2fa01b33d0043917bbed69 +80c869469900431f3eeefafdbe07b8afd8cee7739e659e6d0109b397cacff85a88247698f87dc4e2fe39a592f250ac64 +9091594f488b38f9d2bb5df49fd8b4f8829d9c2f11a197dd1431ed5abbc5c954bbde3387088f9ee3a5a834beb7619bce +b472e241e6956146cca57b97a8a204668d050423b4e76f857bad5b47f43b203a04c8391ba9d9c3e95093c071f9d376a1 +b7dd2de0284844392f7dfb56fe7ca3ede41e27519753ffc579a0a8d2d65ceb8108d06b6b0d4c3c1a2588951297bd1a1e +902116ce70d0a079ac190321c1f48701318c05f8e69ee09694754885d33a835a849cafe56f499a2f49f6cda413ddf9a7 +b18105cc736787fafaf7c3c11c448bce9466e683159dff52723b7951dff429565e466e4841d982e3aaa9ee2066838666 +97ab9911f3f659691762d568ae0b7faa1047b0aed1009c319fa79d15d0db8db9f808fc385dc9a68fa388c10224985379 +b2a2cba65f5b927e64d2904ba412e2bac1cf18c9c3eda9c72fb70262497ecf505b640827e2afebecf10eebbcf48ccd3e +b36a3fd677baa0d3ef0dac4f1548ff50a1730286b8c99d276a0a45d576e17b39b3cbadd2fe55e003796d370d4be43ce3 +a5dfec96ca3c272566e89dc453a458909247e3895d3e44831528130bc47cc9d0a0dac78dd3cad680a4351d399d241967 +8029382113909af6340959c3e61db27392531d62d90f92370a432aec3eb1e4c36ae1d4ef2ba8ec6edb4d7320c7a453f6 +971d85121ea108e6769d54f9c51299b0381ece8b51d46d49c89f65bedc123bab4d5a8bc14d6f67f4f680077529cbae4c +98ff6afc01d0bec80a278f25912e1b1ebff80117adae72e31d5b9fa4d9624db4ba2065b444df49b489b0607c45e26c4c +8fa29be10fb3ab30ce25920fec0187e6e91e458947009dabb869aade7136c8ba23602682b71e390c251f3743164cbdaa +b3345c89eb1653418fe3940cf3e56a9a9c66526389b98f45ca02dd62bfb37baa69a4baaa7132d7320695f8ea6ad1fd94 +b72c7f5541c9ac6b60a7ec9f5415e7fb14da03f7164ea529952a29399f3a071576608dbbcc0d45994f21f92ddbeb1e19 +aa3450bb155a5f9043d0ef95f546a2e6ade167280bfb75c9f09c6f9cdb1fffb7ce8181436161a538433afa3681c7a141 +92a18fecaded7854b349f441e7102b638ababa75b1b0281dd0bded6541abe7aa37d96693595be0b01fe0a2e2133d50f9 +980756ddf9d2253cfe6c94960b516c94889d09e612810935150892627d2ecee9a2517e04968eea295d0106850c04ca44 +ae68c6ccc454318cdd92f32b11d89116a3b8350207a36d22a0f626718cad671d960090e054c0c77ac3162ae180ecfd4b +99f31f66eaaa551749ad91d48a0d4e3ff4d82ef0e8b28f3184c54e852422ba1bdafd53b1e753f3a070f3b55f3c23b6a2 +a44eaeaa6589206069e9c0a45ff9fc51c68da38d4edff1d15529b7932e6f403d12b9387019c44a1488a5d5f27782a51f +b80b5d54d4b344840e45b79e621bd77a3f83fb4ce6d8796b7d6915107b3f3c34d2e7d95bdafd120f285669e5acf2437a +b36c069ec085a612b5908314d6b84c00a83031780261d1c77a0384c406867c9847d5b0845deddfa512cc04a8df2046fb +b09dbe501583220f640d201acea7ee3e39bf9eda8b91aa07b5c50b7641d86d71acb619b38d27835ce97c3759787f08e9 +87403d46a2bf63170fff0b857acacf42ee801afe9ccba8e5b4aea967b68eac73a499a65ca46906c2eb4c8f27bc739faa +82b93669f42a0a2aa5e250ffe6097269da06a9c02fcd1801abbad415a7729a64f830754bafc702e64600ba47671c2208 +8e3a3029be7edb8dd3ab1f8216664c8dc50d395f603736061d802cef77627db7b859ef287ed850382c13b4d22d6a2d80 +968e9ec7194ff424409d182ce0259acd950c384c163c04463bc8700a40b79beba6146d22b7fa7016875a249b7b31c602 +8b42c984bbe4996e0c20862059167c6bdc5164b1ffcd928f29512664459212d263e89f0f0e30eed4e672ffa5ed0b01b5 +96bac54062110dada905363211133f1f15dc7e4fd80a4c6e4a83bc9a0bcbbaba11cd2c7a13debcf0985e1a954c1da66b +a16dc8a653d67a7cd7ae90b2fffac0bf1ca587005430fe5ba9403edd70ca33e38ba5661d2ed6e9d2864400d997626a62 +a68ab11a570a27853c8d67e491591dcba746bfbee08a2e75ae0790399130d027ed387f41ef1d7de8df38b472df309161 +92532b74886874447c0300d07eda9bbe4b41ed25349a3da2e072a93fe32c89d280f740d8ff70d5816793d7f2b97373cc +88e35711b471e89218fd5f4d0eadea8a29405af1cd81974427bc4a5fb26ed60798daaf94f726c96e779b403a2cd82820 +b5c72aa4147c19f8c4f3a0a62d32315b0f4606e0a7025edc5445571eaf4daff64f4b7a585464821574dd50dbe1b49d08 +9305d9b4095258e79744338683fd93f9e657367b3ab32d78080e51d54eec331edbc224fad5093ebf8ee4bd4286757eb8 +b2a17abb3f6a05bcb14dc7b98321fa8b46d299626c73d7c6eb12140bf4c3f8e1795250870947af817834f033c88a59d6 +b3477004837dbd8ba594e4296f960fc91ab3f13551458445e6c232eb04b326da803c4d93e2e8dcd268b4413305ff84da +924b4b2ebaafdcfdfedb2829a8bf46cd32e1407d8d725a5bd28bdc821f1bafb3614f030ea4352c671076a63494275a3f +8b81b9ef6125c82a9bece6fdcb9888a767ac16e70527753428cc87c56a1236e437da8be4f7ecfe57b9296dc3ae7ba807 +906e19ec8b8edd58bdf9ae05610a86e4ea2282b1bbc1e8b00b7021d093194e0837d74cf27ac9916bdb8ec308b00da3da +b41c5185869071760ac786078a57a2ab4e2af60a890037ac0c0c28d6826f15c2cf028fddd42a9b6de632c3d550bfbc14 +a646e5dec1b713ae9dfdf7bdc6cd474d5731a320403c7dfcfd666ffc9ae0cff4b5a79530e8df3f4aa9cb80568cb138e9 +b0efad22827e562bd3c3e925acbd0d9425d19057868608d78c2209a531cccd0f2c43dc5673acf9822247428ffa2bb821 +a94c19468d14b6f99002fc52ac06bbe59e5c472e4a0cdb225144a62f8870b3f10593749df7a2de0bd3c9476ce682e148 +803864a91162f0273d49271dafaab632d93d494d1af935aefa522768af058fce52165018512e8d6774976d52bd797e22 +a08711c2f7d45c68fb340ac23597332e1bcaec9198f72967b9921204b9d48a7843561ff318f87908c05a44fc35e3cc9d +91c3cad94a11a3197ae4f9461faab91a669e0dddb0371d3cab3ed9aeb1267badc797d8375181130e461eadd05099b2a2 +81bdaaf48aae4f7b480fc13f1e7f4dd3023a41439ba231760409ce9292c11128ab2b0bdbbf28b98af4f97b3551f363af +8d60f9df9fd303f625af90e8272c4ecb95bb94e6efc5da17b8ab663ee3b3f673e9f6420d890ccc94acf4d2cae7a860d8 +a7b75901520c06e9495ab983f70b61483504c7ff2a0980c51115d11e0744683ce022d76e3e09f4e99e698cbd21432a0d +82956072df0586562fda7e7738226f694e1c73518dd86e0799d2e820d7f79233667192c9236dcb27637e4c65ef19d493 +a586beb9b6ffd06ad200957490803a7cd8c9bf76e782734e0f55e04a3dc38949de75dc607822ec405736c576cf83bca3 +a179a30d00def9b34a7e85607a447eea0401e32ab5abeee1a281f2acd1cf6ec81a178020666f641d9492b1bdf66f05a3 +83e129705c538787ed8e0fdc1275e6466a3f4ee21a1e6abedd239393b1df72244723b92f9d9d9339a0cab6ebf28f5a16 +811bd8d1e3722b64cd2f5b431167e7f91456e8bba2cc669d3fbbce7d553e29c3c19f629fcedd2498bc26d33a24891d17 +a243c030c858f1f60cccd26b45b024698cc6d9d9e6198c1ed4964a235d9f8d0baf9cde10c8e63dfaa47f8e74e51a6e85 +ab839eb82e23ca52663281f863b55b0a3d6d4425c33ffb4eeb1d7979488ab068bf99e2a60e82cea4dc42c56c26cbfebe +8b896f9bb21d49343e67aec6ad175b58c0c81a3ca73d44d113ae4354a0065d98eb1a5cafedaf232a2bb9cdc62152f309 +af6230340cc0b66f5bf845540ed4fc3e7d6077f361d60762e488d57834c3e7eb7eacc1b0ed73a7d134f174a01410e50c +88975e1b1af678d1b5179f72300a30900736af580dd748fd9461ef7afccc91ccd9bed33f9da55c8711a7635b800e831f +a97486bb9047391661718a54b8dd5a5e363964e495eae6c692730264478c927cf3e66dd3602413189a3699fbeae26e15 +a5973c161ab38732885d1d2785fd74bf156ba34881980cba27fe239caef06b24a533ffe6dbbbeca5e6566682cc00300a +a24776e9a840afda0003fa73b415d5bd6ecd9b5c2cc842b643ee51b8c6087f4eead4d0bfbd987eb174c489a7b952ff2a +a8a6ee06e3af053b705a12b59777267c546f33ba8a0f49493af8e6df4e15cf8dd2d4fb4daf7e84c6b5d3a7363118ff03 +a28e59ce6ad02c2ce725067c0123117e12ac5a52c8f5af13eec75f4a9efc4f696777db18a374fa33bcae82e0734ebd16 +86dfc3b78e841c708aff677baa8ee654c808e5d257158715097c1025d46ece94993efe12c9d188252ad98a1e0e331fec +a88d0275510f242eab11fdb0410ff6e1b9d7a3cbd3658333539815f1b450a84816e6613d15aa8a8eb15d87cdad4b27a2 +8440acea2931118a5b481268ff9f180ee4ede85d14a52c026adc882410825b8275caa44aff0b50c2b88d39f21b1a0696 +a7c3182eab25bd6785bacf12079d0afb0a9b165d6ed327814e2177148539f249eb9b5b2554538f54f3c882d37c0a8abe +85291fbe10538d7da38efdd55a7acebf03b1848428a2f664c3ce55367aece60039f4f320b1771c9c89a35941797f717c +a2c6414eeb1234728ab0de94aa98fc06433a58efa646ca3fcbd97dbfb8d98ae59f7ce6d528f669c8149e1e13266f69c9 +840c8462785591ee93aee2538d9f1ec44ba2ca61a569ab51d335ac873f5d48099ae8d7a7efa0725d9ff8f9475bfa4f56 +a7065a9d02fb3673acf7702a488fbc01aa69580964932f6f40b6c2d1c386b19e50b0e104fcac24ea26c4e723611d0238 +b72db6d141267438279e032c95e6106c2ccb3164b842ba857a2018f3a35f4b040da92680881eb17cd61d0920d5b8f006 +a8005d6c5960e090374747307ef0be2871a7a43fa4e76a16c35d2baab808e9777b496e9f57a4218b23390887c33a0b55 +8e152cea1e00a451ca47c20a1e8875873419700af15a5f38ee2268d3fbc974d4bd5f4be38008fa6f404dbdedd6e6e710 +a3391aed1fcd68761f06a7d1008ec62a09b1cb3d0203cd04e300a0c91adfed1812d8bc1e4a3fd7976dc0aae0e99f52f1 +967eb57bf2aa503ee0c6e67438098149eac305089c155f1762cf5e84e31f0fbf27c34a9af05621e34645c1ec96afaec8 +88af97ddc4937a95ec0dcd25e4173127260f91c8db2f6eac84afb789b363705fb3196235af631c70cafd09411d233589 +a32df75b3f2c921b8767638fd289bcfc61e08597170186637a7128ffedd52c798c434485ac2c7de07014f9e895c2c3d8 +b0a783832153650aa0d766a3a73ec208b6ce5caeb40b87177ffc035ab03c7705ecdd1090b6456a29f5fb7e90e2fa8930 +b59c8e803b4c3486777d15fc2311b97f9ded1602fa570c7b0200bada36a49ee9ef4d4c1474265af8e1c38a93eb66b18b +982f2c85f83e852022998ff91bafbb6ff093ef22cf9d5063e083a48b29175ccbd51b9c6557151409e439096300981a6c +939e3b5989fefebb9d272a954659a4eb125b98c9da6953f5e628d26266bd0525ec38304b8d56f08d65abc4d6da4a8dbb +8898212fe05bc8de7d18503cb84a1c1337cc2c09d1eeef2b475aa79185b7322bf1f8e065f1bf871c0c927dd19faf1f6d +94b0393a41cd00f724aee2d4bc72103d626a5aecb4b5486dd1ef8ac27528398edf56df9db5c3d238d8579af368afeb09 +96ac564450d998e7445dd2ea8e3fc7974d575508fa19e1c60c308d83b645864c029f2f6b7396d4ff4c1b24e92e3bac37 +8adf6638e18aff3eb3b47617da696eb6c4bdfbecbbc3c45d3d0ab0b12cbad00e462fdfbe0c35780d21aa973fc150285e +b53f94612f818571b5565bbb295e74bada9b5f9794b3b91125915e44d6ddcc4da25510eab718e251a09c99534d6042d9 +8b96462508d77ee083c376cd90807aebad8de96bca43983c84a4a6f196d5faf6619a2351f43bfeec101864c3bf255519 +aeadf34657083fc71df33bd44af73bf5281c9ca6d906b9c745536e1819ea90b56107c55e2178ebad08f3ba75b3f81c86 +9784ba29b2f0057b5af1d3ab2796d439b8753f1f749c73e791037461bdfc3f7097394283105b8ab01788ea5255a96710 +8756241bda159d4a33bf74faba0d4594d963c370fb6a18431f279b4a865b070b0547a6d1613cf45b8cfb5f9236bbf831 +b03ebfd6b71421dfd49a30460f9f57063eebfe31b9ceaa2a05c37c61522b35bdc09d7db3ad75c76c253c00ba282d3cd2 +b34e7e6341fa9d854b2d3153bdda0c4ae2b2f442ab7af6f99a0975d45725aa48e36ae5f7011edd249862e91f499687d4 +b462ee09dc3963a14354244313e3444de5cc37ea5ccfbf14cd9aca8027b59c4cb2a949bc30474497cab8123e768460e6 +aea753290e51e2f6a21a9a0ee67d3a2713f95c2a5c17fe41116c87d3aa77b1683761264d704df1ac34f8b873bc88ef7b +98430592afd414394f98ddfff9f280fcb1c322dbe3510f45e1e9c4bb8ee306b3e0cf0282c0ee73ebb8ba087d4d9e0858 +b95d3b5aaf54ffca11f4be8d57f76e14afdb20afc859dc7c7471e0b42031e8f3d461b726ecb979bdb2f353498dfe95ea +984d17f9b11a683132e0b5a9ee5945e3ff7054c2d5c716be73b29078db1d36f54c6e652fd2f52a19da313112e97ade07 +ab232f756b3fff3262be418a1af61a7e0c95ceebbc775389622a8e10610508cd6784ab7960441917a83cc191c58829ea +a28f41678d6e60de76b0e36ab10e4516e53e02e9c77d2b5af3cfeee3ce94cfa30c5797bd1daab20c98e1cad83ad0f633 +b55395fca84dd3ccc05dd480cb9b430bf8631ff06e24cb51d54519703d667268c2f8afcde4ba4ed16bece8cc7bc8c6e0 +8a8a5392a0e2ea3c7a8c51328fab11156004e84a9c63483b64e8f8ebf18a58b6ffa8fe8b9d95af0a2f655f601d096396 +ab480000fe194d23f08a7a9ec1c392334e9c687e06851f083845121ce502c06b54dda8c43092bcc1035df45cc752fe9b +b265644c29f628d1c7e8e25a5e845cabb21799371814730a41a363e1bda8a7be50fee7c3996a365b7fcba4642add10db +b8a915a3c685c2d4728f6931c4d29487cad764c5ce23c25e64b1a3259ac27235e41b23bfe7ae982921b4cb84463097df +8efa7338442a4b6318145a5440fc213b97869647eeae41b9aa3c0a27ee51285b73e3ae3b4a9423df255e6add58864aa9 +9106d65444f74d217f4187dfc8fcf3810b916d1e4275f94f6a86d1c4f3565b131fd6cde1fa708bc05fe183c49f14941a +948252dac8026bbbdb0a06b3c9d66ec4cf9532163bab68076fda1bd2357b69e4b514729c15aaa83b5618b1977bbc60c4 +ae6596ccfdf5cbbc5782efe3bb0b101bb132dbe1d568854ca24cacc0b2e0e9fabcb2ca7ab42aecec412efd15cf8cb7a2 +84a0b6c198ff64fd7958dfd1b40eac9638e8e0b2c4cd8cf5d8cdf80419baee76a05184bce6c5b635f6bf2d30055476a7 +8893118be4a055c2b3da593dbca51b1ae2ea2469911acfb27ee42faf3e6c3ad0693d3914c508c0b05b36a88c8b312b76 +b097479e967504deb6734785db7e60d1d8034d6ca5ba9552887e937f5e17bb413fccac2c1d1082154ed76609127860ad +a0294e6b9958f244d29943debf24b00b538b3da1116269b6e452bb12dc742226712fd1a15b9c88195afeb5d2415f505c +b3cc15f635080bc038f61b615f62b5b5c6f2870586191f59476e8368a73641d6ac2f7d0c1f54621982defdb318020230 +99856f49b9fe1604d917c94d09cc0ed753d13d015d30587a94e6631ffd964b214e607deb8a69a8b5e349a7edf4309206 +a8571e113ea22b4b4fce41a094da8c70de37830ae32e62c65c2fa5ad06a9bc29e884b945e73d448c72b176d6ecebfb58 +a9e9c6e52beb0013273c29844956b3ce291023678107cdc785f7b44eff5003462841ad8780761b86aefc6b734adde7cf +80a784b0b27edb51ef2bad3aee80e51778dcaa0f3f5d3dcb5dc5d4f4b2cf7ae35b08de6680ea9dac53f8438b92eb09ef +827b543e609ea328e97e373f70ad72d4915a2d1daae0c60d44ac637231070e164c43a2a58db80a64df1c624a042b38f9 +b449c65e8195202efdcb9bdb4e869a437313b118fef8b510cbbf8b79a4e99376adb749b37e9c20b51b31ed3310169e27 +8ea3028f4548a79a94c717e1ed28ad4d8725b8d6ab18b021063ce46f665c79da3c49440c6577319dab2d036b7e08f387 +897798431cfb17fe39f08f5f854005dc37b1c1ec1edba6c24bc8acb3b88838d0534a75475325a5ea98b326ad47dbad75 +89cf232e6303b0751561960fd4dea5754a28c594daf930326b4541274ffb03c7dd75938e411eb9a375006a70ce38097f +9727c6ae7f0840f0b6c8bfb3a1a5582ceee705e0b5c59b97def7a7a2283edd4d3f47b7971e902a3a2079e40b53ff69b8 +b76ed72b122c48679d221072efc0eeea063cb205cbf5f9ef0101fd10cb1075b8628166c83577cced654e1c001c7882f7 +ae908c42d208759da5ee9b405df85a6532ea35c6f0f6a1288d22870f59d98edc896841b8ac890a538e6c8d1e8b02d359 +809d12fe4039a0ec80dc9be6a89acaab7797e5f7f9b163378f52f9a75a1d73b2e9ae6e3dd49e32ced439783c1cabbef5 +a4149530b7f85d1098ba534d69548c6c612c416e8d35992fc1f64f4deeb41e09e49c6cf7aadbed7e846b91299358fe2d +a49342eacd1ec1148b8df1e253b1c015f603c39de11fa0a364ccb86ea32d69c34fd7aa6980a1fadcd8e785a57fa46f60 +87d43eff5a006dc4dddcf76cc96c656a1f3a68f19f124181feab86c6cc9a52cb9189cdbb423414defdd9bb0ca8ff1ddc +861367e87a9aa2f0f68296ba50aa5dbc5713008d260cc2c7e62d407c2063064749324c4e8156dc21b749656cfebce26b +b5303c2f72e84e170e66ae1b0fbd51b8c7a6f27476eaf5694b64e8737d5c84b51fe90100b256465a4c4156dd873cddb0 +b62849a4f891415d74f434cdc1d23c4a69074487659ca96e1762466b2b7a5d8525b056b891d0feea6fe6845cba8bc7fb +923dd9e0d6590a9307e8c4c23f13bae3306b580e297a937711a8b13e8de85e41a61462f25b7d352b682e8437bf2b4ab3 +9147379860cd713cd46c94b8cdf75125d36c37517fbecf81ace9680b98ce6291cd1c3e472f84249cc3b2b445e314b1b6 +a808a4f17ac21e3fb5cfef404e61fae3693ca3e688d375f99b6116779696059a146c27b06de3ac36da349b0649befd56 +87787e9322e1b75e66c1f0d9ea0915722a232770930c2d2a95e9478c4b950d15ab767e30cea128f9ed65893bfc2d0743 +9036a6ee2577223be105defe1081c48ea7319e112fff9110eb9f61110c319da25a6cea0464ce65e858635b079691ef1f +af5548c7c24e1088c23b57ee14d26c12a83484c9fd9296edf1012d8dcf88243f20039b43c8c548c265ef9a1ffe9c1c88 +a0fff520045e14065965fb8accd17e878d3fcaf9e0af2962c8954e50be6683d31fa0bf4816ab68f08630dbac6bfce52a +b4c1b249e079f6ae1781af1d97a60b15855f49864c50496c09c91fe1946266915b799f0406084d7783f5b1039116dd8b +8b0ffa5e7c498cb3879dddca34743b41eee8e2dea3d4317a6e961b58adb699ef0c92400c068d5228881a2b08121226bf +852ae8b19a1d80aa8ae5382e7ee5c8e7670ceb16640871c56b20b96b66b3b60e00015a3dde039446972e57b49a999ddd +a49942f04234a7d8492169da232cfff8051df86e8e1ba3db46aede02422c689c87dc1d99699c25f96cb763f5ca0983e5 +b04b597b7760cf5dcf411ef896d1661e6d5b0db3257ac2cf64b20b60c6cc18fa10523bb958a48d010b55bac7b02ab3b1 +a494591b51ea8285daecc194b5e5bd45ae35767d0246ac94fae204d674ee180c8e97ff15f71f28b7aeb175b8aea59710 +97d2624919e78406e7460730680dea8e71c8571cf988e11441aeea54512b95bd820e78562c99372d535d96f7e200d20d +ac693ddb00e48f76e667243b9b6a7008424043fb779e4f2252330285232c3fccac4da25cbd6d95fe9ad959ff305a91f6 +8d20ca0a71a64a3f702a0825bb46bd810d03bebfb227683680d474a52f965716ff99e19a165ebaf6567987f4f9ee3c94 +a5c516a438f916d1d68ca76996404792e0a66e97b7f18fc54c917bf10cf3211b62387932756e39e67e47b0bd6e88385a +b089614d830abc0afa435034cec7f851f2f095d479cacf1a3fb57272da826c499a52e7dcbc0eb85f4166fb94778e18e9 +a8dacc943765d930848288192f4c69e2461c4b9bc6e79e30eeef9a543318cf9ae9569d6986c65c5668a89d49993f8e07 +ab5a9361fa339eec8c621bdad0a58078983abd8942d4282b22835d7a3a47e132d42414b7c359694986f7db39386c2e19 +94230517fb57bd8eb26c6f64129b8b2abd0282323bf7b94b8bac7fab27b4ecc2c4290c294275e1a759de19f2216134f3 +b8f158ea5006bc3b90b285246625faaa6ac9b5f5030dc69701b12f3b79a53ec7e92eeb5a63bbd1f9509a0a3469ff3ffc +8b6944fd8cb8540957a91a142fdcda827762aa777a31e8810ca6d026e50370ee1636fc351724767e817ca38804ebe005 +82d1ee40fe1569c29644f79fa6c4033b7ed45cd2c3b343881f6eb0de2e79548fded4787fae19bed6ee76ed76ff9f2f11 +a8924c7035e99eaed244ca165607e7e568b6c8085510dcdbaf6ebdbed405af2e6c14ee27d94ffef10d30aa52a60bf66d +956f82a6c2ae044635e85812581e4866c5fa2f427b01942047d81f6d79a14192f66fbbe77c9ffeaef4e6147097fdd2b5 +b1100255a1bcf5e05b6aff1dfeb6e1d55b5d68d43a7457ba10cc76b61885f67f4d0d5179abda786e037ae95deb8eea45 +99510799025e3e5e8fbf06dedb14c060c6548ba2bda824f687d3999dc395e794b1fb6514b9013f3892b6cf65cb0d65aa +8f9091cebf5e9c809aab415942172258f894e66e625d7388a05289183f01b8d994d52e05a8e69f784fba41db9ea357f0 +a13d2eeb0776bdee9820ecb6693536720232848c51936bb4ef4fe65588d3f920d08a21907e1fdb881c1ad70b3725e726 +a68b8f18922d550284c5e5dc2dda771f24c21965a6a4d5e7a71678178f46df4d8a421497aad8fcb4c7e241aba26378a0 +8b7601f0a3c6ad27f03f2d23e785c81c1460d60100f91ea9d1cab978aa03b523150206c6d52ce7c7769c71d2c8228e9e +a8e02926430813caa851bb2b46de7f0420f0a64eb5f6b805401c11c9091d3b6d67d841b5674fa2b1dce0867714124cd8 +b7968ecba568b8193b3058400af02c183f0a6df995a744450b3f7e0af7a772454677c3857f99c140bbdb2a09e832e8e0 +8f20b1e9ba87d0a3f35309b985f3c18d2e8800f1ca7f0c52cadef773f1496b6070c936eea48c4a1cae83fd2524e9d233 +88aef260042db0d641a51f40639dbeeefa9e9811df30bee695f3791f88a2f84d318f04e8926b7f47bf25956cb9e3754f +9725345893b647e9ba4e6a29e12f96751f1ae25fcaec2173e9a259921a1a7edb7a47159b3c8767e44d9e2689f5aa0f72 +8c281e6f72752cb11e239e4df9341c45106eb7993c160e54423c2bffe10bc39d42624b45a1f673936ef2e1a02fc92f1a +90aba2f68bddb2fcce6c51430dacdfeec43ea8dc379660c99095df11017691ccf5faa27665cf4b9f0eea7728ae53c327 +b7022695c16521c5704f49b7ddbdbec9b5f57ce0ceebe537bc0ebb0906d8196cc855a9afeb8950a1710f6a654464d93f +8fe1b9dd3c6a258116415d36e08374e094b22f0afb104385a5da48be17123e86fb8327baacc4f0d9ebae923d55d99bb5 +817e85d8e3d19a4cbc1dec31597142c2daa4871bda89c2177fa719c00eda3344eb08b82eb92d4aa91a9eaacb3fc09783 +b59053e1081d2603f1ca0ba553804d6fa696e1fd996631db8f62087b26a40dfef02098b0326bb75f99ec83b9267ca738 +990a173d857d3ba81ff3789b931bfc9f5609cde0169b7f055fa3cb56451748d593d62d46ba33f80f9cafffe02b68dd14 +b0c538dbba4954b809ab26f9f94a3cf1dcb77ce289eaec1d19f556c0ae4be1fa03af4a9b7057837541c3cc0a80538736 +ac3ba42f5f44f9e1fc453ce49c4ab79d0e1d5c42d3b30b1e098f3ab3f414c4c262fa12fb2be249f52d4aaf3c5224beb9 +af47467eb152e59870e21f0d4da2f43e093daf40180ab01438030684b114d025326928eaab12c41b81a066d94fce8436 +98d1b58ba22e7289b1c45c79a24624f19b1d89e00f778eef327ec4856a9a897278e6f1a9a7e673844b31dde949153000 +97ccb15dfadc7c59dca08cfe0d22df2e52c684cf97de1d94bc00d7ba24e020025130b0a39c0f4d46e4fc872771ee7875 +b699e4ed9a000ff96ca296b2f09dce278832bc8ac96851ff3cff99ed3f6f752cfc0fea8571be28cd9b5a7ec36f1a08ee +b9f49f0edb7941cc296435ff0a912e3ad16848ee8765ab5f60a050b280d6ea585e5b34051b15f6b8934ef01ceb85f648 +ac3893df7b4ceab23c6b9054e48e8ba40d6e5beda8fbe90b814f992f52494186969b35d8c4cdc3c99890a222c9c09008 +a41293ad22fae81dea94467bc1488c3707f3d4765059173980be93995fa4fcc3c9340796e3eed0beeb0ba0d9bb4fa3aa +a0543e77acd2aeecde13d18d258aeb2c7397b77f17c35a1992e8666ea7abcd8a38ec6c2741bd929abba2f766138618cc +92e79b22bc40e69f6527c969500ca543899105837b6b1075fa1796755c723462059b3d1b028e0b3df2559fa440e09175 +a1fa1eac8f41a5197a6fb4aa1eae1a031c89f9c13ff9448338b222780cf9022e0b0925d930c37501a0ef7b2b00fdaf83 +b3cb29ff73229f0637335f28a08ad8c5f166066f27c6c175164d0f26766a927f843b987ee9b309ed71cbf0a65d483831 +84d4ab787f0ac00f104f4a734dc693d62d48c2aeb03913153da62c2ae2c27d11b1110dcef8980368dd84682ea2c1a308 +ab6a8e4bbc78d4a7b291ad3e9a8fe2d65f640524ba3181123b09d2d18a9e300e2509ccf7000fe47e75b65f3e992a2e7e +b7805ebe4f1a4df414003dc10bca805f2ab86ca75820012653e8f9b79c405196b0e2cab099f2ab953d67f0d60d31a0f9 +b12c582454148338ea605d22bd00a754109063e22617f1f8ac8ddf5502c22a181c50c216c3617b9852aa5f26af56b323 +86333ad9f898947e31ce747728dc8c887479e18d36ff3013f69ebef807d82c6981543b5c3788af93c4d912ba084d3cba +b514efa310dc4ad1258add138891e540d8c87142a881b5f46563cc58ecd1488e6d3a2fca54c0b72a929f3364ca8c333e +aa0a30f92843cf2f484066a783a1d75a7aa6f41f00b421d4baf20a6ac7886c468d0eea7ca8b17dd22f4f74631b62b640 +b3b7dc63baec9a752e8433c0cdee4d0f9bc41f66f2b8d132faf925eef9cf89aae756fc132c45910f057122462605dc10 +b9b8190dac5bfdeb59fd44f4da41a57e7f1e7d2c21faba9da91fa45cbeca06dcf299c9ae22f0c89ece11ac46352d619f +89f8cf36501ad8bdfeab863752a9090e3bfda57cf8fdeca2944864dc05925f501e252c048221bcc57136ab09a64b64b2 +b0cbfaf317f05f97be47fc9d69eda2dd82500e00d42612f271a1fe24626408c28881f171e855bd5bd67409f9847502b4 +a7c21a8fcede581bfd9847b6835eda62ba250bea81f1bb17372c800a19c732abe03064e64a2f865d974fb636cab4b859 +95f9df524ba7a4667351696c4176b505d8ea3659f5ff2701173064acc624af69a0fad4970963736383b979830cb32260 +856a74fe8b37a2e3afeac858c8632200485d438422a16ae3b29f359e470e8244995c63ad79c7e007ed063f178d0306fd +b37faa4d78fdc0bb9d403674dbea0176c2014a171c7be8527b54f7d1a32a76883d3422a3e7a5f5fcc5e9b31b57822eeb +8d37234d8594ec3fe75670b5c9cc1ec3537564d4739b2682a75b18b08401869a4264c0f264354219d8d896cded715db4 +b5289ee5737f0e0bde485d32096d23387d68dab8f01f47821ab4f06cc79a967afe7355e72dc0c751d96b2747b26f6255 +9085e1fdf9f813e9c3b8232d3c8863cd84ab30d45e8e0d3d6a0abd9ebc6fd70cdf749ff4d04390000e14c7d8c6655fc7 +93a388c83630331eca4da37ea4a97b3b453238af474817cc0a0727fd3138dcb4a22de38c04783ec829c22cb459cb4e8e +a5377116027c5d061dbe24c240b891c08cdd8cd3f0899e848d682c873aff5b8132c1e7cfe76d2e5ed97ee0eb1d42cb68 +a274c84b04338ed28d74683e2a7519c2591a3ce37c294d6f6e678f7d628be2db8eff253ede21823e2df7183e6552f622 +8bc201147a842453a50bec3ac97671397bc086d6dfc9377fa38c2124cdc286abda69b7324f47d64da094ae011d98d9d9 +9842d0c066c524592b76fbec5132bc628e5e1d21c424bec4555efca8619cc1fd8ea3161febcb8b9e8ab54702f4e815e2 +a19191b713a07efe85c266f839d14e25660ee74452e6c691cd9997d85ae4f732052d802d3deb018bdd847caa298a894b +a24f71fc0db504da4e287dd118a4a74301cbcd16033937ba2abc8417956fcb4ae19b8e63b931795544a978137eff51cb +a90eec4a6a3a4b8f9a5b93d978b5026fcf812fe65585b008d7e08c4aaf21195a1d0699f12fc16f79b6a18a369af45771 +8b551cf89737d7d06d9b3b9c4c1c73b41f2ea0af4540999c70b82dabff8580797cf0a3caf34c86c59a7069eb2e38f087 +b8d312e6c635e7a216a1cda075ae77ba3e1d2fd501dc31e83496e6e81ed5d9c7799f8e578869c2e0e256fb29f5de10a7 +8d144bdb8cae0b2cdb5b33d44bbc96984a5925202506a8cc65eb67ac904b466f5a7fe3e1cbf04aa785bbb7348c4bb73c +a101b3d58b7a98659244b88de0b478b3fb87dc5fc6031f6e689b99edf498abd43e151fd32bd4bbd240e0b3e59c440359 +907453abca7d8e7151a05cc3d506c988007692fe7401395dc93177d0d07d114ab6cca0cc658eb94c0223fe8658295cad +825329ffbe2147ddb68f63a0a67f32d7f309657b8e5d9ab5bb34b3730bfa2c77a23eaaadb05def7d9f94a9e08fdc1e96 +88ee923c95c1dac99ae7ed6067906d734d793c5dc5d26339c1bb3314abe201c5dccb33b9007351885eb2754e9a8ea06c +98bc9798543f5f1adc9f2cfcfa72331989420e9c3f6598c45269f0dc9b7c8607bbeaf03faa0aea2ddde2b8f17fdceff5 +8ee87877702a79aef923ab970db6fa81561b3c07d5bf1a072af0a7bad765b4cbaec910afe1a91703feacc7822fa38a94 +8060b9584aa294fe8adc2b22f67e988bc6da768eae91e429dcc43ddc53cfcc5d6753fdc1b420b268c7eb2fb50736a970 +b344a5524d80a2f051870c7001f74fcf348a70fcf78dbd20c6ff9ca85d81567d2318c8b8089f2c4f195d6aec9fc15fa6 +8f5a5d893e1936ed062149d20eb73d98b62b7f50ab5d93a6429c03656b36688d1c80cb5010e4977491e51fa0d7dd35d5 +86fa32ebbf97328c5f5f15564e1238297e289ec3219b9a741724e9f3ae8d5c15277008f555863a478b247ba5dc601d44 +9557e55377e279f4b6b5e0ffe01eca037cc13aac242d67dfcd0374a1e775c5ed5cb30c25fe21143fee54e3302d34a3ea +8cb6bcbc39372d23464a416ea7039f57ba8413cf3f00d9a7a5b356ab20dcb8ed11b3561f7bce372b8534d2870c7ee270 +b5d59075cb5abde5391f64b6c3b8b50adc6e1f654e2a580b6d6d6eff3f4fbdd8fffc92e06809c393f5c8eab37f774c4b +afcfb6903ef13e493a1f7308675582f15af0403b6553e8c37afb8b2808ad21b88b347dc139464367dc260df075fea1ad +810fbbe808375735dd22d5bc7fc3828dc49fdd22cc2d7661604e7ac9c4535c1df578780affb3b895a0831640a945bcad +8056b0c678803b416f924e09a6299a33cf9ad7da6fe1ad7accefe95c179e0077da36815fde3716711c394e2c5ea7127f +8b67403702d06979be19f1d6dc3ec73cc2e81254d6b7d0cc49cd4fdda8cd51ab0835c1d2d26fc0ecab5df90585c2f351 +87f97f9e6d4be07e8db250e5dd2bffdf1390665bc5709f2b631a6fa69a7fca958f19bd7cc617183da1f50ee63e9352b5 +ae151310985940471e6803fcf37600d7fa98830613e381e00dab943aec32c14162d51c4598e8847148148000d6e5af5c +81eb537b35b7602c45441cfc61b27fa9a30d3998fad35a064e05bc9479e9f10b62eba2b234b348219eea3cadcaac64bb +8a441434934180ab6f5bc541f86ebd06eadbee01f438836d797e930fa803a51510e005c9248cecc231a775b74d12b5e9 +81f3c250a27ba14d8496a5092b145629eb2c2e6a5298438670375363f57e2798207832c8027c3e9238ad94ecdadfc4df +a6217c311f2f3db02ceaa5b6096849fe92b6f4b6f1491535ef8525f6ccee6130bed2809e625073ecbaddd4a3eb3df186 +82d1c396f0388b942cf22b119d7ef1ad03d3dad49a74d9d01649ee284f377c8daddd095d596871669e16160299a210db +a40ddf7043c5d72a7246bd727b07f7fff1549f0e443d611de6f9976c37448b21664c5089c57f20105102d935ab82f27b +b6c03c1c97adf0c4bf4447ec71366c6c1bff401ba46236cd4a33d39291e7a1f0bb34bd078ba3a18d15c98993b153a279 +8a94f5f632068399c359c4b3a3653cb6df2b207379b3d0cdace51afdf70d6d5cce6b89a2b0fee66744eba86c98fb21c2 +b2f19e78ee85073f680c3bba1f07fd31b057c00b97040357d97855b54a0b5accb0d3b05b2a294568fcd6a4be6f266950 +a74632d13bbe2d64b51d7a9c3ae0a5a971c19f51cf7596a807cea053e6a0f3719700976d4e394b356c0329a2dced9aa2 +afef616d341a9bc94393b8dfba68ff0581436aa3a3adb7c26a1bbf2cf19fa877066191681f71f17f3cd6f9cf6bf70b5a +8ce96d93ae217408acf7eb0f9cbb9563363e5c7002e19bbe1e80760bc9d449daee2118f3878b955163ed664516b97294 +8414f79b496176bc8b8e25f8e4cfee28f4f1c2ddab099d63d2aca1b6403d26a571152fc3edb97794767a7c4686ad557c +b6c61d01fd8ce087ef9f079bf25bf10090db483dd4f88c4a786d31c1bdf52065651c1f5523f20c21e75cea17df69ab73 +a5790fd629be70545093631efadddc136661f63b65ec682609c38ef7d3d7fa4e56bdf94f06e263bc055b90cb1c6bcefe +b515a767e95704fb7597bca9e46f1753abacdc0e56e867ee3c6f4cd382643c2a28e65312c05ad040eaa3a8cbe7217a65 +8135806a02ead6aa92e9adb6fefb91349837ab73105aaa7be488ef966aa8dfaafdfa64bbae30fcbfa55dd135a036a863 +8f22435702716d76b1369750694540742d909d5e72b54d0878245fab7c269953b1c6f2b29c66f08d5e0263ca3a731771 +8e0f8a8e8753e077dac95848212aeffd51c23d9b6d611df8b102f654089401954413ecbedc6367561ca599512ae5dda7 +815a9084e3e2345f24c5fa559deec21ee1352fb60f4025c0779be65057f2d528a3d91593bd30d3a185f5ec53a9950676 +967e6555ccba395b2cc1605f8484c5112c7b263f41ce8439a99fd1c71c5ed14ad02684d6f636364199ca48afbbde13be +8cd0ccf17682950b34c796a41e2ea7dd5367aba5e80a907e01f4cdc611e4a411918215e5aebf4292f8b24765d73314a6 +a58bf1bbb377e4b3915df6f058a0f53b8fb8130fdec8c391f6bc82065694d0be59bb67ffb540e6c42cc8b380c6e36359 +92af3151d9e6bfb3383d85433e953c0160859f759b0988431ec5893542ba40288f65db43c78a904325ef8d324988f09d +8011bbb05705167afb47d4425065630f54cb86cd462095e83b81dfebf348f846e4d8fbcf1c13208f5de1931f81da40b9 +81c743c104fc3cb047885c9fa0fb9705c3a83ee24f690f539f4985509c3dafd507af3f6a2128276f45d5939ef70c167f +a2c9679b151c041aaf5efeac5a737a8f70d1631d931609fca16be1905682f35e291292874cb3b03f14994f98573c6f44 +a4949b86c4e5b1d5c82a337e5ce6b2718b1f7c215148c8bfb7e7c44ec86c5c9476048fc5c01f57cb0920876478c41ad6 +86c2495088bd1772152e527a1da0ef473f924ea9ab0e5b8077df859c28078f73c4e22e3a906b507fdf217c3c80808b5c +892e0a910dcf162bcea379763c3e2349349e4cda9402949255ac4a78dd5a47e0bf42f5bd0913951576b1d206dc1e536a +a7009b2c6b396138afe4754b7cc10dee557c51c7f1a357a11486b3253818531f781ea8107360c8d4c3b1cd96282353c0 +911763ef439c086065cc7b4e57484ed6d693ea44acee4b18c9fd998116da55fbe7dcb8d2a0f0f9b32132fca82d73dff6 +a722000b95a4a2d40bed81870793f15ba2af633f9892df507f2842e52452e02b5ea8dea6a043c2b2611d82376e33742a +9387ac49477bd719c2f92240d0bdfcf9767aad247ca93dc51e56106463206bc343a8ec855eb803471629a66fffb565d6 +92819a1fa48ab4902939bb72a0a4e6143c058ea42b42f9bc6cea5df45f49724e2530daf3fc4f097cceefa2a8b9db0076 +98eac7b04537653bc0f4941aae732e4b1f84bd276c992c64a219b8715eb1fb829b5cbd997d57feb15c7694c468f95f70 +b275e7ba848ce21bf7996e12dbeb8dadb5d0e4f1cb5a0248a4f8f9c9fe6c74e3c93f4b61edbcb0a51af5a141e1c14bc7 +97243189285aba4d49c53770c242f2faf5fd3914451da4931472e3290164f7663c726cf86020f8f181e568c72fd172d1 +839b0b3c25dd412bee3dc24653b873cc65454f8f16186bb707bcd58259c0b6765fa4c195403209179192a4455c95f3b8 +8689d1a870514568a074a38232e2ceb4d7df30fabeb76cff0aed5b42bf7f02baea12c5fadf69f4713464dbd52aafa55f +8958ae7b290f0b00d17c3e9fdb4dbf168432b457c7676829299dd428984aba892de1966fc106cfc58a772862ecce3976 +a422bc6bd68b8870cfa5bc4ce71781fd7f4368b564d7f1e0917f6013c8bbb5b240a257f89ecfdbecb40fe0f3aa31d310 +aa61f78130cebe09bc9a2c0a37f0dd57ed2d702962e37d38b1df7f17dc554b1d4b7a39a44182a452ce4c5eb31fa4cfcc +b7918bd114f37869bf1a459023386825821bfadce545201929d13ac3256d92a431e34f690a55d944f77d0b652cefeffc +819bba35fb6ace1510920d4dcff30aa682a3c9af9022e287751a6a6649b00c5402f14b6309f0aeef8fce312a0402915e +8b7c9ad446c6f63c11e1c24e24014bd570862b65d53684e107ba9ad381e81a2eaa96731b4b33536efd55e0f055071274 +8fe79b53f06d33386c0ec7d6d521183c13199498594a46d44a8a716932c3ec480c60be398650bbfa044fa791c4e99b65 +9558e10fb81250b9844c99648cf38fa05ec1e65d0ccbb18aa17f2d1f503144baf59d802c25be8cc0879fff82ed5034ad +b538a7b97fbd702ba84645ca0a63725be1e2891c784b1d599e54e3480e4670d0025526674ef5cf2f87dddf2290ba09f0 +92eafe2e869a3dd8519bbbceb630585c6eb21712b2f31e1b63067c0acb5f9bdbbcbdb612db4ea7f9cc4e7be83d31973f +b40d21390bb813ab7b70a010dff64c57178418c62685761784e37d327ba3cb9ef62df87ecb84277c325a637fe3709732 +b349e6fbf778c4af35fbed33130bd8a7216ed3ba0a79163ebb556e8eb8e1a7dad3456ddd700dad9d08d202491c51b939 +a8fdaedecb251f892b66c669e34137f2650509ade5d38fbe8a05d9b9184bb3b2d416186a3640429bd1f3e4b903c159dd +ac6167ebfee1dbab338eff7642f5e785fc21ef0b4ddd6660333fe398068cbd6c42585f62e81e4edbb72161ce852a1a4f +874b1fbf2ebe140c683bd7e4e0ab017afa5d4ad38055aaa83ee6bbef77dbc88a6ce8eb0dcc48f0155244af6f86f34c2d +903c58e57ddd9c446afab8256a6bb6c911121e6ccfb4f9b4ed3e2ed922a0e500a5cb7fa379d5285bc16e11dac90d1fda +8dae7a0cffa2fd166859cd1bf10ff82dd1932e488af377366b7efc0d5dec85f85fe5e8150ff86a79a39cefc29631733a +aa047857a47cc4dfc08585f28640420fcf105b881fd59a6cf7890a36516af0644d143b73f3515ab48faaa621168f8c31 +864508f7077c266cc0cb3f7f001cb6e27125ebfe79ab57a123a8195f2e27d3799ff98413e8483c533b46a816a3557f1f +8bcd45ab1f9cbab36937a27e724af819838f66dfeb15923f8113654ff877bd8667c54f6307aaf0c35027ca11b6229bfd +b21aa34da9ab0a48fcfdd291df224697ce0c1ebc0e9b022fdee8750a1a4b5ba421c419541ed5c98b461eecf363047471 +a9a18a2ab2fae14542dc336269fe612e9c1af6cf0c9ac933679a2f2cb77d3c304114f4d219ca66fe288adde30716775b +b5205989b92c58bdda71817f9a897e84100b5c4e708de1fced5c286f7a6f01ae96b1c8d845f3a320d77c8e2703c0e8b1 +a364059412bbcc17b8907d43ac8e5df90bc87fd1724b5f99832d0d24559fae6fa76a74cff1d1eac8cbac6ec80b44af20 +ae709f2c339886b31450834cf29a38b26eb3b0779bd77c9ac269a8a925d1d78ea3837876c654b61a8fe834b3b6940808 +8802581bba66e1952ac4dab36af371f66778958f4612901d95e5cac17f59165e6064371d02de8fb6fccf89c6dc8bd118 +a313252df653e29c672cbcfd2d4f775089cb77be1077381cf4dc9533790e88af6cedc8a119158e7da5bf6806ad9b91a1 +992a065b4152c7ef11515cd54ba9d191fda44032a01aed954acff3443377ee16680c7248d530b746b8c6dee2d634e68c +b627b683ee2b32c1ab4ccd27b9f6cce2fe097d96386fa0e5c182ad997c4c422ab8dfc03870cd830b8c774feb66537282 +b823cf8a9aee03dadd013eb9efe40a201b4b57ef67efaae9f99683005f5d1bf55e950bf4af0774f50859d743642d3fea +b8a7449ffac0a3f206677097baf7ce00ca07a4d2bd9b5356fbcb83f3649b0fda07cfebad220c1066afba89e5a52abf4b +b2dd1a2f986395bb4e3e960fbbe823dbb154f823284ebc9068502c19a7609790ec0073d08bfa63f71e30c7161b6ef966 +98e5236de4281245234f5d40a25b503505af140b503a035fc25a26159a9074ec81512b28f324c56ea2c9a5aa7ce90805 +89070847dc8bbf5bc4ed073aa2e2a1f699cf0c2ca226f185a0671cecc54e7d3e14cd475c7752314a7a8e7476829da4bc +a9402dc9117fdb39c4734c0688254f23aed3dce94f5f53f5b7ef2b4bf1b71a67f85ab1a38ec224a59691f3bee050aeb3 +957288f9866a4bf56a4204218ccc583f717d7ce45c01ea27142a7e245ad04a07f289cc044f8cf1f21d35e67e39299e9c +b2fb31ccb4e69113763d7247d0fc8edaae69b550c5c56aecacfd780c7217dc672f9fb7496edf4aba65dacf3361268e5b +b44a4526b2f1d6eb2aa8dba23bfa385ff7634572ab2afddd0546c3beb630fbfe85a32f42dd287a7fec069041411537f7 +8db5a6660c3ac7fd7a093573940f068ee79a82bc17312af900b51c8c439336bc86ca646c6b7ab13aaaa008a24ca508ab +8f9899a6d7e8eb4367beb5c060a1f8e94d8a21099033ae582118477265155ba9e72176a67f7f25d7bad75a152b56e21a +a67de0e91ade8d69a0e00c9ff33ee2909b8a609357095fa12319e6158570c232e5b6f4647522efb7345ce0052aa9d489 +82eb2414898e9c3023d57907a2b17de8e7eea5269029d05a94bfd7bf5685ac4a799110fbb375eb5e0e2bd16acf6458ae +94451fc7fea3c5a89ba701004a9693bab555cb622caf0896b678faba040409fdfd14a978979038b2a81e8f0abc4994d2 +ac879a5bb433998e289809a4a966bd02b4bf6a9c1cc276454e39c886efcf4fc68baebed575826bde577ab5aa71d735a9 +880c0f8f49c875dfd62b4ddedde0f5c8b19f5687e693717f7e5c031bc580e58e13ab497d48b4874130a18743c59fdce3 +b582af8d8ff0bf76f0a3934775e0b54c0e8fed893245d7d89cae65b03c8125b7237edc29dc45b4fe1a3fe6db45d280ee +89f337882ed3ae060aaee98efa20d79b6822bde9708c1c5fcee365d0ec9297f694cae37d38fd8e3d49717c1e86f078e7 +826d2c1faea54061848b484e288a5f4de0d221258178cf87f72e14baaa4acc21322f8c9eab5dde612ef497f2d2e1d60b +a5333d4f227543e9cd741ccf3b81db79f2f03ca9e649e40d6a6e8ff9073e06da83683566d3b3c8d7b258c62970fb24d1 +a28f08c473db06aaf4c043a2fae82b3c8cfaa160bce793a4c208e4e168fb1c65115ff8139dea06453c5963d95e922b94 +8162546135cc5e124e9683bdfaa45833c18553ff06a0861c887dc84a5b12ae8cd4697f6794c7ef6230492c32faba7014 +b23f0d05b74c08d6a7df1760792be83a761b36e3f8ae360f3c363fb196e2a9dd2de2e492e49d36561366e14daa77155c +b6f70d6c546722d3907c708d630dbe289771d2c8bf059c2e32b77f224696d750b4dda9b3a014debda38e7d02c9a77585 +83bf4c4a9f3ca022c631017e7a30ea205ba97f7f5927cba8fc8489a4646eac6712cb821c5668c9ffe94d69d524374a27 +b0371475425a8076d0dd5f733f55aabbe42d20a7c8ea7da352e736d4d35a327b2beb370dfcb05284e22cfd69c5f6c4cc +a0031ba7522c79211416c2cca3aa5450f96f8fee711552a30889910970ba13608646538781a2c08b834b140aadd7166f +99d273c80c7f2dc6045d4ed355d9fc6f74e93549d961f4a3b73cd38683f905934d359058cd1fc4da8083c7d75070487f +b0e4b0efa3237793e9dcce86d75aafe9879c5fa23f0d628649aef2130454dcf72578f9bf227b9d2b9e05617468e82588 +a5ab076fa2e1c5c51f3ae101afdd596ad9d106bba7882b359c43d8548b64f528af19afa76cd6f40da1e6c5fca4def3fa +8ce2299e570331d60f6a6eff1b271097cd5f1c0e1113fc69b89c6a0f685dabea3e5bc2ac6bd789aa492ab189f89be494 +91b829068874d911a310a5f9dee001021f97471307b5a3de9ec336870ec597413e1d92010ce320b619f38bed7c4f7910 +b14fe91f4b07bf33b046e9285b66cb07927f3a8da0af548ac2569b4c4fb1309d3ced76d733051a20814e90dd5b75ffd1 +abaab92ea6152d40f82940277c725aa768a631ee0b37f5961667f82fb990fc11e6d3a6a2752b0c6f94563ed9bb28265c +b7fe28543eca2a716859a76ab9092f135337e28109544f6bd2727728d0a7650428af5713171ea60bfc273d1c821d992c +8a4917b2ab749fc7343fc64bdf51b6c0698ff15d740cc7baf248c030475c097097d5a473bcc00d8c25817563fe0447b4 +aa96156d1379553256350a0a3250166add75948fb9cde62aa555a0a9dc0a9cb7f2f7b8428aff66097bf6bfedaf14bbe2 +ae4ffeb9bdc76830d3eca2b705f30c1bdede6412fa064260a21562c8850c7fb611ec62bc68479fe48f692833e6f66d8d +b96543caaba9d051600a14997765d49e4ab10b07c7a92cccf0c90b309e6da334fdd6d18c96806cbb67a7801024fbd3c7 +97b2b9ad76f19f500fcc94ca8e434176249f542ac66e5881a3dccd07354bdab6a2157018b19f8459437a68d8b86ba8e0 +a8d206f6c5a14c80005849474fde44b1e7bcf0b2d52068f5f97504c3c035b09e65e56d1cf4b5322791ae2c2fdbd61859 +936bad397ad577a70cf99bf9056584a61bd7f02d2d5a6cf219c05d770ae30a5cd902ba38366ce636067fc1dd10108d31 +a77e30195ee402b84f3882e2286bf5380c0ed374a112dbd11e16cef6b6b61ab209d4635e6f35cdaaa72c1a1981d5dabe +a46ba4d3947188590a43c180757886a453a0503f79cc435322d92490446f37419c7b999fdf868a023601078070e03346 +80d8d4c5542f223d48240b445d4d8cf6a75d120b060bc08c45e99a13028b809d910b534d2ac47fb7068930c54efd8da9 +803be9c68c91b42b68e1f55e58917a477a9a6265e679ca44ee30d3eb92453f8c89c64eafc04c970d6831edd33d066902 +b14b2b3d0dfe2bb57cee4cd72765b60ac33c1056580950be005790176543826c1d4fbd737f6cfeada6c735543244ab57 +a9e480188bba1b8fb7105ff12215706665fd35bf1117bacfb6ab6985f4dbc181229873b82e5e18323c2b8f5de03258e0 +a66a0f0779436a9a3999996d1e6d3000f22c2cac8e0b29cddef9636393c7f1457fb188a293b6c875b05d68d138a7cc4a +848397366300ab40c52d0dbbdafbafef6cd3dadf1503bb14b430f52bb9724188928ac26f6292a2412bc7d7aa620763c8 +95466cc1a78c9f33a9aaa3829a4c8a690af074916b56f43ae46a67a12bb537a5ac6dbe61590344a25b44e8512355a4a7 +8b5f7a959f818e3baf0887f140f4575cac093d0aece27e23b823cf421f34d6e4ff4bb8384426e33e8ec7b5eed51f6b5c +8d5e1368ec7e3c65640d216bcc5d076f3d9845924c734a34f3558ac0f16e40597c1a775a25bf38b187213fbdba17c93b +b4647c1b823516880f60d20c5cc38c7f80b363c19d191e8992226799718ee26b522a12ecb66556ed3d483aa4824f3326 +ac3abaea9cd283eb347efda4ed9086ea3acf495043e08d0d19945876329e8675224b685612a6badf8fd72fb6274902b1 +8eae1ce292d317aaa71bcf6e77e654914edd5090e2e1ebab78b18bb41b9b1bc2e697439f54a44c0c8aa0d436ebe6e1a9 +94dc7d1aec2c28eb43d93b111fa59aaa0d77d5a09501220bd411768c3e52208806abf973c6a452fd8292ff6490e0c9e2 +8fd8967f8e506fef27d17b435d6b86b232ec71c1036351f12e6fb8a2e12daf01d0ee04451fb944d0f1bf7fd20e714d02 +824e6865be55d43032f0fec65b3480ea89b0a2bf860872237a19a54bc186a85d2f8f9989cc837fbb325b7c72d9babe2c +8bd361f5adb27fd6f4e3f5de866e2befda6a8454efeb704aacc606f528c03f0faae888f60310e49440496abd84083ce2 +b098a3c49f2aaa28b6b3e85bc40ce6a9cdd02134ee522ae73771e667ad7629c8d82c393fba9f27f5416986af4c261438 +b385f5ca285ff2cfe64dcaa32dcde869c28996ed091542600a0b46f65f3f5a38428cca46029ede72b6cf43e12279e3d3 +8196b03d011e5be5288196ef7d47137d6f9237a635ab913acdf9c595fa521d9e2df722090ec7eb0203544ee88178fc5f +8ed1270211ef928db18e502271b7edf24d0bbd11d97f2786aee772d70c2029e28095cf8f650b0328cc8a4c38d045316d +a52ab60e28d69b333d597a445884d44fd2a7e1923dd60f763951e1e45f83e27a4dac745f3b9eff75977b3280e132c15d +91e9fe78cdac578f4a4687f71b800b35da54b824b1886dafec073a3c977ce7a25038a2f3a5b1e35c2c8c9d1a7312417c +a42832173f9d9491c7bd93b21497fbfa4121687cd4d2ab572e80753d7edcbb42cfa49f460026fbde52f420786751a138 +97b947126d84dcc70c97be3c04b3de3f239b1c4914342fa643b1a4bb8c4fe45c0fcb585700d13a7ed50784790c54bef9 +860e407d353eac070e2418ef6cb80b96fc5f6661d6333e634f6f306779651588037be4c2419562c89c61f9aa2c4947f5 +b2c9d93c3ba4e511b0560b55d3501bf28a510745fd666b3cb532db051e6a8617841ea2f071dda6c9f15619c7bfd2737f +8596f4d239aeeac78311207904d1bd863ef68e769629cc379db60e019aaf05a9d5cd31dc8e630b31e106a3a93e47cbc5 +8b26e14e2e136b65c5e9e5c2022cee8c255834ea427552f780a6ca130a6446102f2a6f334c3f9a0308c53df09e3dba7e +b54724354eb515a3c8bed0d0677ff1db94ac0a07043459b4358cb90e3e1aa38ac23f2caa3072cf9647275d7cd61d0e80 +b7ce9fe0e515e7a6b2d7ddcb92bc0196416ff04199326aea57996eef8c5b1548bd8569012210da317f7c0074691d01b7 +a1a13549c82c877253ddefa36a29ea6a23695ee401fdd48e65f6f61e5ebd956d5e0edeff99484e9075cb35071fec41e2 +838ba0c1e5bd1a6da05611ff1822b8622457ebd019cb065ece36a2d176bd2d889511328120b8a357e44569e7f640c1e6 +b916eccff2a95519400bbf76b5f576cbe53cf200410370a19d77734dc04c05b585cfe382e8864e67142d548cd3c4c2f4 +a610447cb7ca6eea53a6ff1f5fe562377dcb7f4aaa7300f755a4f5e8eba61e863c51dc2aa9a29b35525b550fbc32a0fe +9620e8f0f0ee9a4719aa9685eeb1049c5c77659ba6149ec4c158f999cfd09514794b23388879931fe26fea03fa471fd3 +a9dcf8b679e276583cf5b9360702a185470d09aea463dc474ee9c8aee91ef089dacb073e334e47fbc78ec5417c90465c +8c9adee8410bdd99e5b285744cee61e2593b6300ff31a8a83b0ec28da59475a5c6fb9346fe43aadea2e6c3dad2a8e30a +97d5afe9b3897d7b8bb628b7220cf02d8ee4e9d0b78f5000d500aaf4c1df9251aaaabfd1601626519f9d66f00a821d4e +8a382418157b601ce4c3501d3b8409ca98136a4ef6abcbf62885e16e215b76b035c94d149cc41ff92e42ccd7c43b9b3d +b64b8d11fb3b01abb2646ac99fdb9c02b804ce15d98f9fe0fbf1c9df8440c71417487feb6cdf51e3e81d37104b19e012 +849d7d044f9d8f0aab346a9374f0b3a5d14a9d1faa83dbacccbdc629ad1ef903a990940255564770537f8567521d17f0 +829dbb0c76b996c2a91b4cbbe93ba455ca0d5729755e5f0c92aaee37dff7f36fcdc06f33aca41f1b609c784127b67d88 +85a7c0069047b978422d264d831ab816435f63938015d2e977222b6b5746066c0071b7f89267027f8a975206ed25c1b0 +84b9fbc1cfb302df1acdcf3dc5d66fd1edfe7839f7a3b2fb3a0d5548656249dd556104d7c32b73967bccf0f5bdcf9e3b +972220ac5b807f53eac37dccfc2ad355d8b21ea6a9c9b011c09fe440ddcdf7513e0b43d7692c09ded80d7040e26aa28f +855885ed0b21350baeca890811f344c553cf9c21024649c722453138ba29193c6b02c4b4994cd414035486f923472e28 +841874783ae6d9d0e59daea03e96a01cbbe4ecaced91ae4f2c8386e0d87b3128e6d893c98d17c59e4de1098e1ad519dd +827e50fc9ce56f97a4c3f2f4cbaf0b22f1c3ce6f844ff0ef93a9c57a09b8bf91ebfbd2ba9c7f83c442920bffdaf288cc +a441f9136c7aa4c08d5b3534921b730e41ee91ab506313e1ba5f7c6f19fd2d2e1594e88c219834e92e6fb95356385aa7 +97d75b144471bf580099dd6842b823ec0e6c1fb86dd0da0db195e65524129ea8b6fd4a7a9bbf37146269e938a6956596 +a4b6fa87f09d5a29252efb2b3aaab6b3b6ea9fab343132a651630206254a25378e3e9d6c96c3d14c150d01817d375a8e +a31a671876d5d1e95fe2b8858dc69967231190880529d57d3cab7f9f4a2b9b458ac9ee5bdaa3289158141bf18f559efb +90bee6fff4338ba825974021b3b2a84e36d617e53857321f13d2b3d4a28954e6de3b3c0e629d61823d18a9763313b3bf +96b622a63153f393bb419bfcf88272ea8b3560dbd46b0aa07ada3a6223990d0abdd6c2adb356ef4be5641688c8d83941 +84c202adeaff9293698022bc0381adba2cd959f9a35a4e8472288fd68f96f6de8be9da314c526d88e291c96b1f3d6db9 +8ca01a143b8d13809e5a8024d03e6bc9492e22226073ef6e327edf1328ef4aff82d0bcccee92cb8e212831fa35fe1204 +b2f970dbad15bfbefb38903c9bcc043d1367055c55dc1100a850f5eb816a4252c8c194b3132c929105511e14ea10a67d +a5e36556472a95ad57eb90c3b6623671b03eafd842238f01a081997ffc6e2401f76e781d049bb4aa94d899313577a9cf +8d1057071051772f7c8bedce53a862af6fd530dd56ae6321eaf2b9fc6a68beff5ed745e1c429ad09d5a118650bfd420a +8aadc4f70ace4fcb8d93a78610779748dcffc36182d45b932c226dc90e48238ea5daa91f137c65ed532352c4c4d57416 +a2ea05ae37e673b4343232ae685ee14e6b88b867aef6dfac35db3589cbcd76f99540fed5c2641d5bb5a4a9f808e9bf0d +947f1abad982d65648ae4978e094332b4ecb90f482c9be5741d5d1cf5a28acf4680f1977bf6e49dd2174c37f11e01296 +a27b144f1565e4047ba0e3f4840ef19b5095d1e281eaa463c5358f932114cbd018aa6dcf97546465cf2946d014d8e6d6 +8574e1fc3acade47cd4539df578ce9205e745e161b91e59e4d088711a7ab5aa3b410d517d7304b92109924d9e2af8895 +a48ee6b86b88015d6f0d282c1ae01d2a5b9e8c7aa3d0c18b35943dceb1af580d08a65f54dc6903cde82fd0d73ce94722 +8875650cec543a7bf02ea4f2848a61d167a66c91ffaefe31a9e38dc8511c6a25bde431007eefe27a62af3655aca208dc +999b0a6e040372e61937bf0d68374e230346b654b5a0f591a59d33a4f95bdb2f3581db7c7ccb420cd7699ed709c50713 +878c9e56c7100c5e47bbe77dc8da5c5fe706cec94d37fa729633bca63cace7c40102eee780fcdabb655f5fa47a99600e +865006fb5b475ada5e935f27b96f9425fc2d5449a3c106aa366e55ebed3b4ee42adc3c3f0ac19fd129b40bc7d6bc4f63 +b7a7da847f1202e7bc1672553e68904715e84fd897d529243e3ecda59faa4e17ba99c649a802d53f6b8dfdd51f01fb74 +8b2fb4432c05653303d8c8436473682933a5cb604da10c118ecfcd2c8a0e3132e125afef562bdbcc3df936164e5ce4f2 +808d95762d33ddfa5d0ee3d7d9f327de21a994d681a5f372e2e3632963ea974da7f1f9e5bac8ccce24293509d1f54d27 +932946532e3c397990a1df0e94c90e1e45133e347a39b6714c695be21aeb2d309504cb6b1dde7228ff6f6353f73e1ca2 +9705e7c93f0cdfaa3fa96821f830fe53402ad0806036cd1b48adc2f022d8e781c1fbdab60215ce85c653203d98426da3 +aa180819531c3ec1feb829d789cb2092964c069974ae4faad60e04a6afcce5c3a59aec9f11291e6d110a788d22532bc6 +88f755097f7e25cb7dd3c449520c89b83ae9e119778efabb54fbd5c5714b6f37c5f9e0346c58c6ab09c1aef2483f895d +99fc03ab7810e94104c494f7e40b900f475fde65bdec853e60807ffd3f531d74de43335c3b2646b5b8c26804a7448898 +af2dea9683086bed1a179110efb227c9c00e76cd00a2015b089ccbcee46d1134aa18bda5d6cab6f82ae4c5cd2461ac21 +a500f87ba9744787fdbb8e750702a3fd229de6b8817594348dec9a723b3c4240ddfa066262d002844b9e38240ce55658 +924d0e45c780f5bc1c1f35d15dfc3da28036bdb59e4c5440606750ecc991b85be18bc9a240b6c983bc5430baa4c68287 +865b11e0157b8bf4c5f336024b016a0162fc093069d44ac494723f56648bc4ded13dfb3896e924959ea11c96321afefc +93672d8607d4143a8f7894f1dcca83fb84906dc8d6dd7dd063bb0049cfc20c1efd933e06ca7bd03ea4cb5a5037990bfe +826891efbdff0360446825a61cd1fa04326dd90dae8c33dfb1ed97b045e165766dd070bd7105560994d0b2044bdea418 +93c4a4a8bcbc8b190485cc3bc04175b7c0ed002c28c98a540919effd6ed908e540e6594f6db95cd65823017258fb3b1c +aeb2a0af2d2239fda9aa6b8234b019708e8f792834ff0dd9c487fa09d29800ddceddd6d7929faa9a3edcb9e1b3aa0d6b +87f11de7236d387863ec660d2b04db9ac08143a9a2c4dfff87727c95b4b1477e3bc473a91e5797313c58754905079643 +80dc1db20067a844fe8baceca77f80db171a5ca967acb24e2d480eae9ceb91a3343c31ad1c95b721f390829084f0eae6 +9825c31f1c18da0de3fa84399c8b40f8002c3cae211fb6a0623c76b097b4d39f5c50058f57a16362f7a575909d0a44a2 +a99fc8de0c38dbf7b9e946de83943a6b46a762167bafe2a603fb9b86f094da30d6de7ed55d639aafc91936923ee414b3 +ad594678b407db5d6ea2e90528121f84f2b96a4113a252a30d359a721429857c204c1c1c4ff71d8bb5768c833f82e80e +b33d985e847b54510b9b007e31053732c8a495e43be158bd2ffcea25c6765bcbc7ca815f7c60b36ad088b955dd6e9350 +815f8dfc6f90b3342ca3fbd968c67f324dae8f74245cbf8bc3bef10e9440c65d3a2151f951e8d18959ba01c1b50b0ec1 +94c608a362dd732a1abc56e338637c900d59013db8668e49398b3c7a0cae3f7e2f1d1bf94c0299eeafe6af7f76c88618 +8ebd8446b23e5adfcc393adc5c52fe172f030a73e63cd2d515245ca0dd02782ceed5bcdd9ccd9c1b4c5953dfac9c340c +820437f3f6f9ad0f5d7502815b221b83755eb8dc56cd92c29e9535eb0b48fb8d08c9e4fcc26945f9c8cca60d89c44710 +8910e4e8a56bf4be9cc3bbf0bf6b1182a2f48837a2ed3c2aaec7099bfd7f0c83e14e608876b17893a98021ff4ab2f20d +9633918fde348573eec15ce0ad53ac7e1823aac86429710a376ad661002ae6d049ded879383faaa139435122f64047c6 +a1f5e3fa558a9e89318ca87978492f0fb4f6e54a9735c1b8d2ecfb1d1c57194ded6e0dd82d077b2d54251f3bee1279e1 +b208e22d04896abfd515a95c429ff318e87ff81a5d534c8ac2c33c052d6ffb73ef1dccd39c0bbe0734b596c384014766 +986d5d7d2b5bde6d16336f378bd13d0e671ad23a8ec8a10b3fc09036faeeb069f60662138d7a6df3dfb8e0d36180f770 +a2d4e6c5f5569e9cef1cddb569515d4b6ace38c8aed594f06da7434ba6b24477392cc67ba867c2b079545ca0c625c457 +b5ac32b1d231957d91c8b7fc43115ce3c5c0d8c13ca633374402fa8000b6d9fb19499f9181844f0c10b47357f3f757ce +96b8bf2504b4d28fa34a4ec378e0e0b684890c5f44b7a6bb6e19d7b3db2ab27b1e2686389d1de9fbd981962833a313ea +953bfd7f6c3a0469ad432072b9679a25486f5f4828092401eff494cfb46656c958641a4e6d0d97d400bc59d92dba0030 +876ab3cea7484bbfd0db621ec085b9ac885d94ab55c4bb671168d82b92e609754b86aaf472c55df3d81421d768fd108a +885ff4e67d9ece646d02dd425aa5a087e485c3f280c3471b77532b0db6145b69b0fbefb18aa2e3fa5b64928b43a94e57 +b91931d93f806d0b0e6cc62a53c718c099526140f50f45d94b8bbb57d71e78647e06ee7b42aa5714aed9a5c05ac8533f +a0313eeadd39c720c9c27b3d671215331ab8d0a794e71e7e690f06bcd87722b531d6525060c358f35f5705dbb7109ccb +874c0944b7fedc6701e53344100612ddcb495351e29305c00ec40a7276ea5455465ffb7bded898886c1853139dfb1fc7 +8dc31701a01ee8137059ca1874a015130d3024823c0576aa9243e6942ec99d377e7715ed1444cd9b750a64b85dcaa3e5 +836d2a757405e922ec9a2dfdcf489a58bd48b5f9683dd46bf6047688f778c8dee9bc456de806f70464df0b25f3f3d238 +b30b0a1e454a503ea3e2efdec7483eaf20b0a5c3cefc42069e891952b35d4b2c955cf615f3066285ed8fafd9fcfbb8f6 +8e6d4044b55ab747e83ec8762ea86845f1785cc7be0279c075dadf08aca3ccc5a096c015bb3c3f738f647a4eadea3ba5 +ad7735d16ab03cbe09c029610aa625133a6daecfc990b297205b6da98eda8c136a7c50db90f426d35069708510d5ae9c +8d62d858bbb59ec3c8cc9acda002e08addab4d3ad143b3812098f3d9087a1b4a1bb255dcb1635da2402487d8d0249161 +805beec33238b832e8530645a3254aeef957e8f7ea24bcfc1054f8b9c69421145ebb8f9d893237e8a001c857fedfc77e +b1005644be4b085e3f5775aa9bd3e09a283e87ddada3082c04e7a62d303dcef3b8cf8f92944c200c7ae6bb6bdf63f832 +b4ba0e0790dc29063e577474ffe3b61f5ea2508169f5adc1e394934ebb473e356239413a17962bc3e5d3762d72cce8c2 +a157ba9169c9e3e6748d9f1dd67fbe08b9114ade4c5d8fc475f87a764fb7e6f1d21f66d7905cd730f28a1c2d8378682a +913e52b5c93989b5d15e0d91aa0f19f78d592bc28bcfdfddc885a9980c732b1f4debb8166a7c4083c42aeda93a702898 +90fbfc1567e7cd4e096a38433704d3f96a2de2f6ed3371515ccc30bc4dd0721a704487d25a97f3c3d7e4344472702d8d +89646043028ffee4b69d346907586fd12c2c0730f024acb1481abea478e61031966e72072ff1d5e65cb8c64a69ad4eb1 +b125a45e86117ee11d2fb42f680ab4a7894edd67ff927ae2c808920c66c3e55f6a9d4588eee906f33a05d592e5ec3c04 +aad47f5b41eae9be55fb4f67674ff1e4ae2482897676f964a4d2dcb6982252ee4ff56aac49578b23f72d1fced707525e +b9ddff8986145e33851b4de54d3e81faa3352e8385895f357734085a1616ef61c692d925fe62a5ed3be8ca49f5d66306 +b3cb0963387ed28c0c0adf7fe645f02606e6e1780a24d6cecef5b7c642499109974c81a7c2a198b19862eedcea2c2d8c +ac9c53c885457aaf5cb36c717a6f4077af701e0098eebd7aa600f5e4b14e6c1067255b3a0bc40e4a552025231be7de60 +8e1a8d823c4603f6648ec21d064101094f2a762a4ed37dd2f0a2d9aa97b2d850ce1e76f4a4b8cae58819b058180f7031 +b268b73bf7a179b6d22bd37e5e8cb514e9f5f8968c78e14e4f6d5700ca0d0ca5081d0344bb73b028970eebde3cb4124e +a7f57d71940f0edbd29ed8473d0149cae71d921dd15d1ff589774003e816b54b24de2620871108cec1ab9fa956ad6ce6 +8053e6416c8b120e2b999cc2fc420a6a55094c61ac7f2a6c6f0a2c108a320890e389af96cbe378936132363c0d551277 +b3823f4511125e5aa0f4269e991b435a0d6ceb523ebd91c04d7add5534e3df5fc951c504b4fd412a309fd3726b7f940b +ae6eb04674d04e982ca9a6add30370ab90e303c71486f43ed3efbe431af1b0e43e9d06c11c3412651f304c473e7dbf39 +96ab55e641ed2e677591f7379a3cd126449614181fce403e93e89b1645d82c4af524381ff986cae7f9cebe676878646d +b52423b4a8c37d3c3e2eca8f0ddbf7abe0938855f33a0af50f117fab26415fb0a3da5405908ec5fdc22a2c1f2ca64892 +82a69ce1ee92a09cc709d0e3cd22116c9f69d28ea507fe5901f5676000b5179b9abe4c1875d052b0dd42d39925e186bb +a84c8cb84b9d5cfb69a5414f0a5283a5f2e90739e9362a1e8c784b96381b59ac6c18723a4aa45988ee8ef5c1f45cc97d +afd7efce6b36813082eb98257aae22a4c1ae97d51cac7ea9c852d4a66d05ef2732116137d8432e3f117119725a817d24 +a0f5fe25af3ce021b706fcff05f3d825384a272284d04735574ce5fb256bf27100fad0b1f1ba0e54ae9dcbb9570ecad3 +8751786cb80e2e1ff819fc7fa31c2833d25086534eb12b373d31f826382430acfd87023d2a688c65b5e983927e146336 +8cf5c4b17fa4f3d35c78ce41e1dc86988fd1135cd5e6b2bb0c108ee13538d0d09ae7102609c6070f39f937b439b31e33 +a9108967a2fedd7c322711eca8159c533dd561bedcb181b646de98bf5c3079449478eab579731bee8d215ae8852c7e21 +b54c5171704f42a6f0f4e70767cdb3d96ffc4888c842eece343a01557da405961d53ffdc34d2f902ea25d3e1ed867cad +ae8d4b764a7a25330ba205bf77e9f46182cd60f94a336bbd96773cf8064e3d39caf04c310680943dc89ed1fbad2c6e0d +aa5150e911a8e1346868e1b71c5a01e2a4bb8632c195861fb6c3038a0e9b85f0e09b3822e9283654a4d7bb17db2fc5f4 +9685d3756ce9069bf8bb716cf7d5063ebfafe37e15b137fc8c3159633c4e006ff4887ddd0ae90360767a25c3f90cba7f +82155fd70f107ab3c8e414eadf226c797e07b65911508c76c554445422325e71af8c9a8e77fd52d94412a6fc29417cd3 +abfae52f53a4b6e00760468d973a267f29321997c3dbb5aee36dc1f20619551229c0c45b9d9749f410e7f531b73378e8 +81a76d921f8ef88e774fd985e786a4a330d779b93fad7def718c014685ca0247379e2e2a007ad63ee7f729cd9ed6ce1b +81947c84bc5e28e26e2e533af5ae8fe10407a7b77436dbf8f1d5b0bbe86fc659eae10f974659dc7c826c6dabd03e3a4b +92b8c07050d635b8dd4fd09df9054efe4edae6b86a63c292e73cc819a12a21dd7d104ce51fa56af6539dedf6dbe6f7b6 +b44c579e3881f32b32d20c82c207307eca08e44995dd2aac3b2692d2c8eb2a325626c80ac81c26eeb38c4137ff95add5 +97efab8941c90c30860926dea69a841f2dcd02980bf5413b9fd78d85904588bf0c1021798dbc16c8bbb32cce66c82621 +913363012528b50698e904de0588bf55c8ec5cf6f0367cfd42095c4468fcc64954fbf784508073e542fee242d0743867 +8ed203cf215148296454012bd10fddaf119203db1919a7b3d2cdc9f80e66729464fdfae42f1f2fc5af1ed53a42b40024 +ab84312db7b87d711e9a60824f4fe50e7a6190bf92e1628688dfcb38930fe87b2d53f9e14dd4de509b2216856d8d9188 +880726def069c160278b12d2258eac8fa63f729cd351a710d28b7e601c6712903c3ac1e7bbd0d21e4a15f13ca49db5aa +980699cd51bac6283959765f5174e543ed1e5f5584b5127980cbc2ef18d984ecabba45042c6773b447b8e694db066028 +aeb019cb80dc4cb4207430d0f2cd24c9888998b6f21d9bf286cc638449668d2eec0018a4cf3fe6448673cd6729335e2b +b29852f6aa6c60effdffe96ae88590c88abae732561d35cc19e82d3a51e26cb35ea00986193e07f90060756240f5346e +a0fa855adc5ba469f35800c48414b8921455950a5c0a49945d1ef6e8f2a1881f2e2dfae47de6417270a6bf49deeb091d +b6c7332e3b14813641e7272d4f69ecc7e09081df0037d6dab97ce13a9e58510f5c930d300633f208181d9205c5534001 +85a6c050f42fce560b5a8d54a11c3bbb8407abbadd859647a7b0c21c4b579ec65671098b74f10a16245dc779dff7838e +8f3eb34bb68759d53c6677de4de78a6c24dd32c8962a7fb355ed362572ef8253733e6b52bc21c9f92ecd875020a9b8de +a17dd44181e5dab4dbc128e1af93ec22624b57a448ca65d2d9e246797e4af7d079e09c6e0dfb62db3a9957ce92f098d5 +a56a1b854c3183082543a8685bb34cae1289f86cfa8123a579049dbd059e77982886bfeb61bf6e05b4b1fe4e620932e7 +aedae3033cb2fb7628cb4803435bdd7757370a86f808ae4cecb9a268ad0e875f308c048c80cbcac523de16b609683887 +9344905376aa3982b1179497fac5a1d74b14b7038fd15e3b002db4c11c8bfc7c39430db492cdaf58b9c47996c9901f28 +a3bfafdae011a19f030c749c3b071f83580dee97dd6f949e790366f95618ca9f828f1daaeabad6dcd664fcef81b6556d +81c03d8429129e7e04434dee2c529194ddb01b414feda3adee2271eb680f6c85ec872a55c9fa9d2096f517e13ed5abcc +98205ef3a72dff54c5a9c82d293c3e45d908946fa74bb749c3aabe1ab994ea93c269bcce1a266d2fe67a8f02133c5985 +85a70aeed09fda24412fadbafbbbf5ba1e00ac92885df329e147bfafa97b57629a3582115b780d8549d07d19b7867715 +b0fbe81c719f89a57d9ea3397705f898175808c5f75f8eb81c2193a0b555869ba7bd2e6bc54ee8a60cea11735e21c68c +b03a0bd160495ee626ff3a5c7d95bc79d7da7e5a96f6d10116600c8fa20bedd1132f5170f25a22371a34a2d763f2d6d0 +a90ab04091fbca9f433b885e6c1d60ab45f6f1daf4b35ec22b09909d493a6aab65ce41a6f30c98239cbca27022f61a8b +b66f92aa3bf2549f9b60b86f99a0bd19cbdd97036d4ae71ca4b83d669607f275260a497208f6476cde1931d9712c2402 +b08e1fdf20e6a9b0b4942f14fa339551c3175c1ffc5d0ab5b226b6e6a322e9eb0ba96adc5c8d59ca4259e2bdd04a7eb0 +a2812231e92c1ce74d4f5ac3ab6698520288db6a38398bb38a914ac9326519580af17ae3e27cde26607e698294022c81 +abfcbbcf1d3b9e84c02499003e490a1d5d9a2841a9e50c7babbef0b2dd20d7483371d4dc629ba07faf46db659459d296 +b0fe9f98c3da70927c23f2975a9dc4789194d81932d2ad0f3b00843dd9cbd7fb60747a1da8fe5a79f136a601becf279d +b130a6dba7645165348cb90f023713bed0eefbd90a976b313521c60a36d34f02032e69a2bdcf5361e343ed46911297ec +862f0cffe3020cea7a5fd4703353aa1eb1be335e3b712b29d079ff9f7090d1d8b12013011e1bdcbaa80c44641fd37c9f +8c6f11123b26633e1abb9ed857e0bce845b2b3df91cc7b013b2fc77b477eee445da0285fc6fc793e29d5912977f40916 +91381846126ea819d40f84d3005e9fb233dc80071d1f9bb07f102bf015f813f61e5884ffffb4f5cd333c1b1e38a05a58 +8add7d908de6e1775adbd39c29a391f06692b936518db1f8fde74eb4f533fc510673a59afb86e3a9b52ade96e3004c57 +8780e086a244a092206edcde625cafb87c9ab1f89cc3e0d378bc9ee776313836160960a82ec397bc3800c0a0ec3da283 +a6cb4cd9481e22870fdd757fae0785edf4635e7aacb18072fe8dc5876d0bab53fb99ce40964a7d3e8bcfff6f0ab1332f +af30ff47ecc5b543efba1ba4706921066ca8bb625f40e530fb668aea0551c7647a9d126e8aba282fbcce168c3e7e0130 +91b0bcf408ce3c11555dcb80c4410b5bc2386d3c05caec0b653352377efdcb6bab4827f2018671fc8e4a0e90d772acc1 +a9430b975ef138b6b2944c7baded8fe102d31da4cfe3bd3d8778bda79189c99d38176a19c848a19e2d1ee0bddd9a13c1 +aa5a4eef849d7c9d2f4b018bd01271c1dd83f771de860c4261f385d3bdcc130218495860a1de298f14b703ec32fa235f +b0ce79e7f9ae57abe4ff366146c3b9bfb38b0dee09c28c28f5981a5d234c6810ad4d582751948affb480d6ae1c8c31c4 +b75122748560f73d15c01a8907d36d06dc068e82ce22b84b322ac1f727034493572f7907dec34ebc3ddcc976f2f89ed7 +b0fc7836369a3e4411d34792d6bd5617c14f61d9bba023dda64e89dc5fb0f423244e9b48ee64869258931daa9753a56f +8956d7455ae9009d70c6e4a0bcd7610e55f37494cf9897a8f9e1b904cc8febc3fd2d642ebd09025cfff4609ad7e3bc52 +ad741efe9e472026aa49ae3d9914cb9c1a6f37a54f1a6fe6419bebd8c7d68dca105a751c7859f4389505ede40a0de786 +b52f418797d719f0d0d0ffb0846788b5cba5d0454a69a2925de4b0b80fa4dd7e8c445e5eac40afd92897ed28ca650566 +a0ab65fb9d42dd966cd93b1de01d7c822694669dd2b7a0c04d99cd0f3c3de795f387b9c92da11353412f33af5c950e9a +a0052f44a31e5741a331f7cac515a08b3325666d388880162d9a7b97598fde8b61f9ff35ff220df224eb5c4e40ef0567 +a0101cfdc94e42b2b976c0d89612a720e55d145a5ef6ef6f1f78cf6de084a49973d9b5d45915349c34ce712512191e3c +a0dd99fcf3f5cead5aaf08e82212df3a8bb543c407a4d6fab88dc5130c1769df3f147e934a46f291d6c1a55d92b86917 +a5939153f0d1931bbda5cf6bdf20562519ea55fbfa978d6dbc6828d298260c0da7a50c37c34f386e59431301a96c2232 +9568269f3f5257200f9ca44afe1174a5d3cf92950a7f553e50e279c239e156a9faaa2a67f288e3d5100b4142efe64856 +b746b0832866c23288e07f24991bbf687cad794e7b794d3d3b79367566ca617d38af586cdc8d6f4a85a34835be41d54f +a871ce28e39ab467706e32fec1669fda5a4abba2f8c209c6745df9f7a0fa36bbf1919cf14cb89ea26fa214c4c907ae03 +a08dacdd758e523cb8484f6bd070642c0c20e184abdf8e2a601f61507e93952d5b8b0c723c34fcbdd70a8485eec29db2 +85bdb78d501382bb95f1166b8d032941005661aefd17a5ac32df9a3a18e9df2fc5dc2c1f07075f9641af10353cecc0c9 +98d730c28f6fa692a389e97e368b58f4d95382fad8f0baa58e71a3d7baaea1988ead47b13742ce587456f083636fa98e +a557198c6f3d5382be9fb363feb02e2e243b0c3c61337b3f1801c4a0943f18e38ce1a1c36b5c289c8fa2aa9d58742bab +89174f79201742220ac689c403fc7b243eed4f8e3f2f8aba0bf183e6f5d4907cb55ade3e238e3623d9885f03155c4d2b +b891d600132a86709e06f3381158db300975f73ea4c1f7c100358e14e98c5fbe792a9af666b85c4e402707c3f2db321e +b9e5b2529ef1043278c939373fc0dbafe446def52ddd0a8edecd3e4b736de87e63e187df853c54c28d865de18a358bb6 +8589b2e9770340c64679062c5badb7bbef68f55476289b19511a158a9a721f197da03ece3309e059fc4468b15ac33aa3 +aad8c6cd01d785a881b446f06f1e9cd71bca74ba98674c2dcddc8af01c40aa7a6d469037498b5602e76e9c91a58d3dbd +abaccb1bd918a8465f1bf8dbe2c9ad4775c620b055550b949a399f30cf0d9eb909f3851f5b55e38f9e461e762f88f499 +ae62339d26db46e85f157c0151bd29916d5cc619bd4b832814b3fd2f00af8f38e7f0f09932ffe5bba692005dab2d9a74 +93a6ff30a5c0edf8058c89aba8c3259e0f1b1be1b80e67682de651e5346f7e1b4b4ac3d87cbaebf198cf779524aff6bf +8980a2b1d8f574af45b459193c952400b10a86122b71fca2acb75ee0dbd492e7e1ef5b959baf609a5172115e371f3177 +8c2f49f3666faee6940c75e8c7f6f8edc3f704cca7a858bbb7ee5e96bba3b0cf0993996f781ba6be3b0821ef4cb75039 +b14b9e348215b278696018330f63c38db100b0542cfc5be11dc33046e3bca6a13034c4ae40d9cef9ea8b34fef0910c4e +b59bc3d0a30d66c16e6a411cb641f348cb1135186d5f69fda8b0a0934a5a2e7f6199095ba319ec87d3fe8f1ec4a06368 +8874aca2a3767aa198e4c3fec2d9c62d496bc41ff71ce242e9e082b7f38cdf356089295f80a301a3cf1182bde5308c97 +b1820ebd61376d91232423fc20bf008b2ba37e761199f4ef0648ea2bd70282766799b4de814846d2f4d516d525c8daa7 +a6b202e5dedc16a4073e04a11af3a8509b23dfe5a1952f899adeb240e75c3f5bde0c424f811a81ea48d343591faffe46 +a69becee9c93734805523b92150a59a62eed4934f66056b645728740d42223f2925a1ad38359ba644da24d9414f4cdda +ad72f0f1305e37c7e6b48c272323ee883320994cb2e0d850905d6655fafc9f361389bcb9c66b3ff8d2051dbb58c8aa96 +b563600bd56fad7c8853af21c6a02a16ed9d8a8bbeea2c31731d63b976d83cb05b9779372d898233e8fd597a75424797 +b0abb78ce465bf7051f563c62e8be9c57a2cc997f47c82819300f36e301fefd908894bb2053a9d27ce2d0f8c46d88b5b +a071a85fb8274bac2202e0cb8e0e2028a5e138a82d6e0374d39ca1884a549c7c401312f00071b91f455c3a2afcfe0cda +b931c271513a0f267b9f41444a5650b1918100b8f1a64959c552aff4e2193cc1b9927906c6fa7b8a8c68ef13d79aaa52 +a6a1bb9c7d32cb0ca44d8b75af7e40479fbce67d216b48a2bb680d3f3a772003a49d3cd675fc64e9e0f8fabeb86d6d61 +b98d609858671543e1c3b8564162ad828808bb50ded261a9f8690ded5b665ed8368c58f947365ed6e84e5a12e27b423d +b3dca58cd69ec855e2701a1d66cad86717ff103ef862c490399c771ad28f675680f9500cb97be48de34bcdc1e4503ffd +b34867c6735d3c49865e246ddf6c3b33baf8e6f164db3406a64ebce4768cb46b0309635e11be985fee09ab7a31d81402 +acb966c554188c5b266624208f31fab250b3aa197adbdd14aee5ab27d7fb886eb4350985c553b20fdf66d5d332bfd3fe +943c36a18223d6c870d54c3b051ef08d802b85e9dd6de37a51c932f90191890656c06adfa883c87b906557ae32d09da0 +81bca7954d0b9b6c3d4528aadf83e4bc2ef9ea143d6209bc45ae9e7ae9787dbcd8333c41f12c0b6deee8dcb6805e826a +aba176b92256efb68f574e543479e5cf0376889fb48e3db4ebfb7cba91e4d9bcf19dcfec444c6622d9398f06de29e2b9 +b9f743691448053216f6ece7cd699871fff4217a1409ceb8ab7bdf3312d11696d62c74b0664ba0a631b1e0237a8a0361 +a383c2b6276fa9af346b21609326b53fb14fdf6f61676683076e80f375b603645f2051985706d0401e6fbed7eb0666b6 +a9ef2f63ec6d9beb8f3d04e36807d84bda87bdd6b351a3e4a9bf7edcb5618c46c1f58cfbf89e64b40f550915c6988447 +a141b2d7a82f5005eaea7ae7d112c6788b9b95121e5b70b7168d971812f3381de8b0082ac1f0a82c7d365922ebd2d26a +b1b76ef8120e66e1535c17038b75255a07849935d3128e3e99e56567b842fb1e8d56ef932d508d2fb18b82f7868fe1a9 +8e2e234684c81f21099f5c54f6bbe2dd01e3b172623836c77668a0c49ce1fe218786c3827e4d9ae2ea25c50a8924fb3c +a5caf5ff948bfd3c4ca3ffbdfcd91eec83214a6c6017235f309a0bbf7061d3b0b466307c00b44a1009cf575163898b43 +986415a82ca16ebb107b4c50b0c023c28714281db0bcdab589f6cb13d80e473a3034b7081b3c358e725833f6d845cb14 +b94836bf406ac2cbacb10e6df5bcdfcc9d9124ae1062767ca4e322d287fd5e353fdcebd0e52407cb3cd68571258a8900 +83c6d70a640b33087454a4788dfd9ef3ed00272da084a8d36be817296f71c086b23b576f98178ab8ca6a74f04524b46b +ad4115182ad784cfe11bcfc5ce21fd56229cc2ce77ac82746e91a2f0aa53ca6593a22efd2dc4ed8d00f84542643d9c58 +ab1434c5e5065da826d10c2a2dba0facccab0e52b506ce0ce42fbe47ced5a741797151d9ecc99dc7d6373cfa1779bbf6 +8a8b591d82358d55e6938f67ea87a89097ab5f5496f7260adb9f649abb289da12b498c5b2539c2f9614fb4e21b1f66b0 +964f355d603264bc1f44c64d6d64debca66f37dff39c971d9fc924f2bc68e6c187b48564a6dc82660a98b035f8addb5d +b66235eaaf47456bc1dc4bde454a028e2ce494ece6b713a94cd6bf27cf18c717fd0c57a5681caaa2ad73a473593cdd7a +9103e3bb74304186fa4e3e355a02da77da4aca9b7e702982fc2082af67127ebb23a455098313c88465bc9b7d26820dd5 +b6a42ff407c9dd132670cdb83cbad4b20871716e44133b59a932cd1c3f97c7ac8ff7f61acfaf8628372508d8dc8cad7c +883a9c21c16a167a4171b0f084565c13b6f28ba7c4977a0de69f0a25911f64099e7bbb4da8858f2e93068f4155d04e18 +8dbb3220abc6a43220adf0331e3903d3bfd1d5213aadfbd8dfcdf4b2864ce2e96a71f35ecfb7a07c3bbabf0372b50271 +b4ad08aee48e176bda390b7d9acf2f8d5eb008f30d20994707b757dc6a3974b2902d29cd9b4d85e032810ad25ac49e97 +865bb0f33f7636ec501bb634e5b65751c8a230ae1fa807a961a8289bbf9c7fe8c59e01fbc4c04f8d59b7f539cf79ddd5 +86a54d4c12ad1e3605b9f93d4a37082fd26e888d2329847d89afa7802e815f33f38185c5b7292293d788ad7d7da1df97 +b26c8615c5e47691c9ff3deca3021714662d236c4d8401c5d27b50152ce7e566266b9d512d14eb63e65bc1d38a16f914 +827639d5ce7db43ba40152c8a0eaad443af21dc92636cc8cc2b35f10647da7d475a1e408901cd220552fddad79db74df +a2b79a582191a85dbe22dc384c9ca3de345e69f6aa370aa6d3ff1e1c3de513e30b72df9555b15a46586bd27ea2854d9d +ae0d74644aba9a49521d3e9553813bcb9e18f0b43515e4c74366e503c52f47236be92dfbd99c7285b3248c267b1de5a0 +80fb0c116e0fd6822a04b9c25f456bdca704e2be7bdc5d141dbf5d1c5eeb0a2c4f5d80db583b03ef3e47517e4f9a1b10 +ac3a1fa3b4a2f30ea7e0a114cdc479eb51773573804c2a158d603ad9902ae8e39ffe95df09c0d871725a5d7f9ba71a57 +b56b2b0d601cba7f817fa76102c68c2e518c6f20ff693aad3ff2e07d6c4c76203753f7f91686b1801e8c4659e4d45c48 +89d50c1fc56e656fb9d3915964ebce703cb723fe411ab3c9eaa88ccc5d2b155a9b2e515363d9c600d3c0cee782c43f41 +b24207e61462f6230f3cd8ccf6828357d03e725769f7d1de35099ef9ee4dca57dbce699bb49ed994462bee17059d25ce +b886f17fcbcbfcd08ac07f04bb9543ef58510189decaccea4b4158c9174a067cb67d14b6be3c934e6e2a18c77efa9c9c +b9c050ad9cafd41c6e2e192b70d080076eed59ed38ea19a12bd92fa17b5d8947d58d5546aaf5e8e27e1d3b5481a6ce51 +aaf7a34d3267e3b1ddbc54c641e3922e89303f7c86ebebc7347ebca4cffad5b76117dac0cbae1a133053492799cd936f +a9ee604ada50adef82e29e893070649d2d4b7136cc24fa20e281ce1a07bd736bf0de7c420369676bcbcecff26fb6e900 +9855315a12a4b4cf80ab90b8bd13003223ba25206e52fd4fe6a409232fbed938f30120a3db23eab9c53f308bd8b9db81 +8cd488dd7a24f548a3cf03c54dec7ff61d0685cb0f6e5c46c2d728e3500d8c7bd6bba0156f4bf600466fda53e5b20444 +890ad4942ebac8f5b16c777701ab80c68f56fa542002b0786f8fea0fb073154369920ac3dbfc07ea598b82f4985b8ced +8de0cf9ddc84c9b92c59b9b044387597799246b30b9f4d7626fc12c51f6e423e08ee4cbfe9289984983c1f9521c3e19d +b474dfb5b5f4231d7775b3c3a8744956b3f0c7a871d835d7e4fd9cc895222c7b868d6c6ce250de568a65851151fac860 +86433b6135d9ed9b5ee8cb7a6c40e5c9d30a68774cec04988117302b8a02a11a71a1e03fd8e0264ef6611d219f103007 +80b9ed4adbe9538fb1ef69dd44ec0ec5b57cbfea820054d8d445b4261962624b4c70ac330480594bc5168184378379c3 +8b2e83562ccd23b7ad2d17f55b1ab7ef5fbef64b3a284e6725b800f3222b8bdf49937f4a873917ada9c4ddfb090938c2 +abe78cebc0f5a45d754140d1f685e387489acbfa46d297a8592aaa0d676a470654f417a4f7d666fc0b2508fab37d908e +a9c5f8ff1f8568e252b06d10e1558326db9901840e6b3c26bbd0cd5e850cb5fb3af3f117dbb0f282740276f6fd84126f +975f8dc4fb55032a5df3b42b96c8c0ffecb75456f01d4aef66f973cb7270d4eff32c71520ceefc1adcf38d77b6b80c67 +b043306ed2c3d8a5b9a056565afd8b5e354c8c4569fda66b0d797a50a3ce2c08cffbae9bbe292da69f39e89d5dc7911e +8d2afc36b1e44386ba350c14a6c1bb31ff6ea77128a0c5287584ac3584282d18516901ce402b4644a53db1ed8e7fa581 +8c294058bed53d7290325c363fe243f6ec4f4ea2343692f4bac8f0cb86f115c069ccb8334b53d2e42c067691ad110dba +b92157b926751aaf7ef82c1aa8c654907dccab6376187ee8b3e8c0c82811eae01242832de953faa13ebaff7da8698b3e +a780c4bdd9e4ba57254b09d745075cecab87feda78c88ffee489625c5a3cf96aa6b3c9503a374a37927d9b78de9bd22b +811f548ef3a2e6a654f7dcb28ac9378de9515ed61e5a428515d9594a83e80b35c60f96a5cf743e6fab0d3cb526149f49 +85a4dccf6d90ee8e094731eec53bd00b3887aec6bd81a0740efddf812fd35e3e4fe4f983afb49a8588691c202dabf942 +b152c2da6f2e01c8913079ae2b40a09b1f361a80f5408a0237a8131b429677c3157295e11b365b1b1841924b9efb922e +849b9efee8742502ffd981c4517c88ed33e4dd518a330802caff168abae3cd09956a5ee5eda15900243bc2e829016b74 +955a933f3c18ec0f1c0e38fa931e4427a5372c46a3906ebe95082bcf878c35246523c23f0266644ace1fa590ffa6d119 +911989e9f43e580c886656377c6f856cdd4ff1bd001b6db3bbd86e590a821d34a5c6688a29b8d90f28680e9fdf03ba69 +b73b8b4f1fd6049fb68d47cd96a18fcba3f716e0a1061aa5a2596302795354e0c39dea04d91d232aec86b0bf2ba10522 +90f87456d9156e6a1f029a833bf3c7dbed98ca2f2f147a8564922c25ae197a55f7ea9b2ee1f81bf7383197c4bad2e20c +903cba8b1e088574cb04a05ca1899ab00d8960580c884bd3c8a4c98d680c2ad11410f2b75739d6050f91d7208cac33a5 +9329987d42529c261bd15ecedd360be0ea8966e7838f32896522c965adfc4febf187db392bd441fb43bbd10c38fdf68b +8178ee93acf5353baa349285067b20e9bb41aa32d77b5aeb7384fe5220c1fe64a2461bd7a83142694fe673e8bbf61b7c +a06a8e53abcff271b1394bcc647440f81fb1c1a5f29c27a226e08f961c3353f4891620f2d59b9d1902bf2f5cc07a4553 +aaf5fe493b337810889e777980e6bbea6cac39ac66bc0875c680c4208807ac866e9fda9b5952aa1d04539b9f4a4bec57 +aa058abb1953eceac14ccfa7c0cc482a146e1232905dcecc86dd27f75575285f06bbae16a8c9fe8e35d8713717f5f19f +8f15dd732799c879ca46d2763453b359ff483ca33adb1d0e0a57262352e0476c235987dc3a8a243c74bc768f93d3014c +a61cc8263e9bc03cce985f1663b8a72928a607121005a301b28a278e9654727fd1b22bc8a949af73929c56d9d3d4a273 +98d6dc78502d19eb9f921225475a6ebcc7b44f01a2df6f55ccf6908d65b27af1891be2a37735f0315b6e0f1576c1f8d8 +8bd258b883f3b3793ec5be9472ad1ff3dc4b51bc5a58e9f944acfb927349ead8231a523cc2175c1f98e7e1e2b9f363b8 +aeacc2ecb6e807ad09bedd99654b097a6f39840e932873ace02eabd64ccfbb475abdcb62939a698abf17572d2034c51e +b8ccf78c08ccd8df59fd6eda2e01de328bc6d8a65824d6f1fc0537654e9bc6bf6f89c422dd3a295cce628749da85c864 +8f91fd8cb253ba2e71cc6f13da5e05f62c2c3b485c24f5d68397d04665673167fce1fc1aec6085c69e87e66ec555d3fd +a254baa10cb26d04136886073bb4c159af8a8532e3fd36b1e9c3a2e41b5b2b6a86c4ebc14dbe624ee07b7ccdaf59f9ab +94e3286fe5cd68c4c7b9a7d33ae3d714a7f265cf77cd0e9bc19fc51015b1d1c34ad7e3a5221c459e89f5a043ee84e3a9 +a279da8878af8d449a9539bec4b17cea94f0242911f66fab275b5143ab040825f78c89cb32a793930609415cfa3a1078 +ac846ceb89c9e5d43a2991c8443079dc32298cd63e370e64149cec98cf48a6351c09c856f2632fd2f2b3d685a18bbf8b +a847b27995c8a2e2454aaeb983879fb5d3a23105c33175839f7300b7e1e8ec3efd6450e9fa3f10323609dee7b98c6fd5 +a2f432d147d904d185ff4b2de8c6b82fbea278a2956bc406855b44c18041854c4f0ecccd472d1d0dff1d8aa8e281cb1d +94a48ad40326f95bd63dff4755f863a1b79e1df771a1173b17937f9baba57b39e651e7695be9f66a472f098b339364fc +a12a0ccd8f96e96e1bc6494341f7ebce959899341b3a084aa1aa87d1c0d489ac908552b7770b887bb47e7b8cbc3d8e66 +81a1f1681bda923bd274bfe0fbb9181d6d164fe738e54e25e8d4849193d311e2c4253614ed673c98af2c798f19a93468 +abf71106a05d501e84cc54610d349d7d5eae21a70bd0250f1bebbf412a130414d1c8dbe673ffdb80208fd72f1defa4d4 +96266dc2e0df18d8136d79f5b59e489978eee0e6b04926687fe389d4293c14f36f055c550657a8e27be4118b64254901 +8df5dcbefbfb4810ae3a413ca6b4bf08619ca53cd50eb1dde2a1c035efffc7b7ac7dff18d403253fd80104bd83dc029e +9610b87ff02e391a43324a7122736876d5b3af2a137d749c52f75d07b17f19900b151b7f439d564f4529e77aa057ad12 +a90a5572198b40fe2fcf47c422274ff36c9624df7db7a89c0eb47eb48a73a03c985f4ac5016161c76ca317f64339bce1 +98e5e61a6ab6462ba692124dba7794b6c6bde4249ab4fcc98c9edd631592d5bc2fb5e38466691a0970a38e48d87c2e43 +918cefb8f292f78d4db81462c633daf73b395e772f47b3a7d2cea598025b1d8c3ec0cbff46cdb23597e74929981cde40 +a98918a5dc7cf610fe55f725e4fd24ce581d594cb957bb9b4e888672e9c0137003e1041f83e3f1d7b9caab06462c87d4 +b92b74ac015262ca66c33f2d950221e19d940ba3bf4cf17845f961dc1729ae227aa9e1f2017829f2135b489064565c29 +a053ee339f359665feb178b4e7ee30a85df37debd17cacc5a27d6b3369d170b0114e67ad1712ed26d828f1df641bcd99 +8c3c8bad510b35da5ce5bd84b35c958797fbea024ad1c97091d2ff71d9b962e9222f65a9b776e5b3cc29c36e1063d2ee +af99dc7330fe7c37e850283eb47cc3257888e7c197cb0d102edf94439e1e02267b6a56306d246c326c4c79f9dc8c6986 +afecb2dc34d57a725efbd7eb93d61eb29dbe8409b668ab9ea040791f5b796d9be6d4fc10d7f627bf693452f330cf0435 +93334fedf19a3727a81a6b6f2459db859186227b96fe7a391263f69f1a0884e4235de64d29edebc7b99c44d19e7c7d7a +89579c51ac405ad7e9df13c904061670ce4b38372492764170e4d3d667ed52e5d15c7cd5c5991bbfa3a5e4e3fa16363e +9778f3e8639030f7ef1c344014f124e375acb8045bd13d8e97a92c5265c52de9d1ffebaa5bc3e1ad2719da0083222991 +88f77f34ee92b3d36791bdf3326532524a67d544297dcf1a47ff00b47c1b8219ff11e34034eab7d23b507caa2fd3c6b9 +a699c1e654e7c484431d81d90657892efeb4adcf72c43618e71ca7bd7c7a7ebbb1db7e06e75b75dc4c74efd306b5df3f +81d13153baebb2ef672b5bdb069d3cd669ce0be96b742c94e04038f689ff92a61376341366b286eee6bf3ae85156f694 +81efb17de94400fdacc1deec2550cbe3eecb27c7af99d8207e2f9be397e26be24a40446d2a09536bb5172c28959318d9 +989b21ebe9ceab02488992673dc071d4d5edec24bff0e17a4306c8cb4b3c83df53a2063d1827edd8ed16d6e837f0d222 +8d6005d6536825661b13c5fdce177cb37c04e8b109b7eb2b6d82ea1cb70efecf6a0022b64f84d753d165edc2bba784a3 +a32607360a71d5e34af2271211652d73d7756d393161f4cf0da000c2d66a84c6826e09e759bd787d4fd0305e2439d342 +aaad8d6f6e260db45d51b2da723be6fa832e76f5fbcb77a9a31e7f090dd38446d3b631b96230d78208cae408c288ac4e +abcfe425255fd3c5cffd3a818af7650190c957b6b07b632443f9e33e970a8a4c3bf79ac9b71f4d45f238a04d1c049857 +aeabf026d4c783adc4414b5923dbd0be4b039cc7201219f7260d321f55e9a5b166d7b5875af6129c034d0108fdc5d666 +af49e740c752d7b6f17048014851f437ffd17413c59797e5078eaaa36f73f0017c3e7da020310cfe7d3c85f94a99f203 +8854ca600d842566e3090040cd66bb0b3c46dae6962a13946f0024c4a8aca447e2ccf6f240045f1ceee799a88cb9210c +b6c03b93b1ab1b88ded8edfa1b487a1ed8bdce8535244dddb558ffb78f89b1c74058f80f4db2320ad060d0c2a9c351cc +b5bd7d17372faff4898a7517009b61a7c8f6f0e7ed4192c555db264618e3f6e57fb30a472d169fea01bf2bf0362a19a8 +96eb1d38319dc74afe7e7eb076fcd230d19983f645abd14a71e6103545c01301b31c47ae931e025f3ecc01fb3d2f31fa +b55a8d30d4403067def9b65e16f867299f8f64c9b391d0846d4780bc196569622e7e5b64ce799b5aefac8f965b2a7a7b +8356d199a991e5cbbff608752b6291731b6b6771aed292f8948b1f41c6543e4ab1bedc82dd26d10206c907c03508df06 +97f4137445c2d98b0d1d478049de952610ad698c91c9d0f0e7227d2aae690e9935e914ec4a2ea1fbf3fc1dddfeeacebb +af5621707e0938320b15ddfc87584ab325fbdfd85c30efea36f8f9bd0707d7ec12c344eff3ec21761189518d192df035 +8ac7817e71ea0825b292687928e349da7140285d035e1e1abff0c3704fa8453faaae343a441b7143a74ec56539687cc4 +8a5e0a9e4758449489df10f3386029ada828d1762e4fb0a8ffe6b79e5b6d5d713cb64ed95960e126398b0cdb89002bc9 +81324be4a71208bbb9bca74b77177f8f1abb9d3d5d9db195d1854651f2cf333cd618d35400da0f060f3e1b025124e4b2 +849971d9d095ae067525b3cbc4a7dfae81f739537ade6d6cec1b42fb692d923176197a8770907c58069754b8882822d6 +89f830825416802477cc81fdf11084885865ee6607aa15aa4eb28e351c569c49b8a1b9b5e95ddc04fa0ebafe20071313 +9240aeeaff37a91af55f860b9badd466e8243af9e8c96a7aa8cf348cd270685ab6301bc135b246dca9eda696f8b0e350 +acf74db78cc33138273127599eba35b0fb4e7b9a69fe02dae18fc6692d748ca332bd00b22afa8e654ed587aab11833f3 +b091e6d37b157b50d76bd297ad752220cd5c9390fac16dc838f8557aed6d9833fc920b61519df21265406216315e883f +a6446c429ebf1c7793c622250e23594c836b2fbcaf6c5b3d0995e1595a37f50ea643f3e549b0be8bbdadd69044d72ab9 +93e675353bd60e996bf1c914d5267eeaa8a52fc3077987ccc796710ef9becc6b7a00e3d82671a6bdfb8145ee3c80245a +a2f731e43251d04ed3364aa2f072d05355f299626f2d71a8a38b6f76cf08c544133f7d72dd0ab4162814b674b9fc7fa6 +97a8b791a5a8f6e1d0de192d78615d73d0c38f1e557e4e15d15adc663d649e655bc8da3bcc499ef70112eafe7fb45c7a +98cd624cbbd6c53a94469be4643c13130916b91143425bcb7d7028adbbfede38eff7a21092af43b12d4fab703c116359 +995783ce38fd5f6f9433027f122d4cf1e1ff3caf2d196ce591877f4a544ce9113ead60de2de1827eaff4dd31a20d79a8 +8cf251d6f5229183b7f3fe2f607a90b4e4b6f020fb4ba2459d28eb8872426e7be8761a93d5413640a661d73e34a5b81f +b9232d99620652a3aa7880cad0876f153ff881c4ed4c0c2e7b4ea81d5d42b70daf1a56b869d752c3743c6d4c947e6641 +849716f938f9d37250cccb1bf77f5f9fde53096cdfc6f2a25536a6187029a8f1331cdbed08909184b201f8d9f04b792f +80c7c4de098cbf9c6d17b14eba1805e433b5bc905f6096f8f63d34b94734f2e4ebf4bce8a177efd1186842a61204a062 +b790f410cf06b9b8daadceeb4fd5ff40a2deda820c8df2537e0a7554613ae3948e149504e3e79aa84889df50c8678eeb +813aab8bd000299cd37485b73cd7cba06e205f8efb87f1efc0bae8b70f6db2bc7702eb39510ad734854fb65515fe9d0f +94f0ab7388ac71cdb67f6b85dfd5945748afb2e5abb622f0b5ad104be1d4d0062b651f134ba22385c9e32c2dfdcccce1 +ab6223dca8bd6a4f969e21ccd9f8106fc5251d321f9e90cc42cea2424b3a9c4e5060a47eeef6b23c7976109b548498e8 +859c56b71343fce4d5c5b87814c47bf55d581c50fd1871a17e77b5e1742f5af639d0e94d19d909ec7dfe27919e954e0c +aae0d632b6191b8ad71b027791735f1578e1b89890b6c22e37de0e4a6074886126988fe8319ae228ac9ef3b3bcccb730 +8ca9f32a27a024c3d595ecfaf96b0461de57befa3b331ab71dc110ec3be5824fed783d9516597537683e77a11d334338 +a061df379fb3f4b24816c9f6cd8a94ecb89b4c6dc6cd81e4b8096fa9784b7f97ab3540259d1de9c02eb91d9945af4823 +998603102ac63001d63eb7347a4bb2bf4cf33b28079bb48a169076a65c20d511ccd3ef696d159e54cc8e772fb5d65d50 +94444d96d39450872ac69e44088c252c71f46be8333a608a475147752dbb99db0e36acfc5198f158509401959c12b709 +ac1b51b6c09fe055c1d7c9176eea9adc33f710818c83a1fbfa073c8dc3a7eb3513cbdd3f5960b7845e31e3e83181e6ba +803d530523fc9e1e0f11040d2412d02baef3f07eeb9b177fa9bfa396af42eea898a4276d56e1db998dc96ae47b644cb2 +85a3c9fc7638f5bf2c3e15ba8c2fa1ae87eb1ceb44c6598c67a2948667a9dfa41e61f66d535b4e7fda62f013a5a8b885 +a961cf5654c46a1a22c29baf7a4e77837a26b7f138f410e9d1883480ed5fa42411d522aba32040b577046c11f007388e +ad1154142344f494e3061ef45a34fab1aaacf5fdf7d1b26adbb5fbc3d795655fa743444e39d9a4119b4a4f82a6f30441 +b1d6c30771130c77806e7ab893b73d4deb590b2ff8f2f8b5e54c2040c1f3e060e2bd99afc668cf706a2df666a508bbf6 +a00361fd440f9decabd98d96c575cd251dc94c60611025095d1201ef2dedde51cb4de7c2ece47732e5ed9b3526c2012c +a85c5ab4d17d328bda5e6d839a9a6adcc92ff844ec25f84981e4f44a0e8419247c081530f8d9aa629c7eb4ca21affba6 +a4ddd3eab4527a2672cf9463db38bc29f61460e2a162f426b7852b7a7645fbd62084fd39a8e4d60e1958cce436dd8f57 +811648140080fe55b8618f4cf17f3c5a250adb0cd53d885f2ddba835d2b4433188e41fc0661faac88e4ff910b16278c0 +b85c7f1cfb0ed29addccf7546023a79249e8f15ac2d14a20accbfef4dd9dc11355d599815fa09d2b6b4e966e6ea8cff1 +a10b5d8c260b159043b020d5dd62b3467df2671afea6d480ca9087b7e60ed170c82b121819d088315902842d66c8fb45 +917e191df1bcf3f5715419c1e2191da6b8680543b1ba41fe84ed07ef570376e072c081beb67b375fca3565a2565bcabb +881fd967407390bfd7badc9ab494e8a287559a01eb07861f527207c127eadea626e9bcc5aa9cca2c5112fbac3b3f0e9c +959fd71149af82cc733619e0e5bf71760ca2650448c82984b3db74030d0e10f8ab1ce1609a6de6f470fe8b5bd90df5b3 +a3370898a1c5f33d15adb4238df9a6c945f18b9ada4ce2624fc32a844f9ece4c916a64e9442225b6592afa06d2e015f2 +817efb8a791435e4236f7d7b278181a5fa34587578c629dbc14fbf9a5c26772290611395eecd20222a4c58649fc256d8 +a04c9876acf2cfdc8ef96de4879742709270fa1d03fe4c8511fbef2d59eb0aaf0336fa2c7dfe41a651157377fa217813 +81e15875d7ea7f123e418edf14099f2e109d4f3a6ce0eb65f67fe9fb10d2f809a864a29f60ad3fc949f89e2596b21783 +b49f529975c09e436e6bc202fdc16e3fdcbe056db45178016ad6fdece9faad4446343e83aed096209690b21a6910724f +879e8eda589e1a279f7f49f6dd0580788c040d973748ec4942dbe51ea8fbd05983cc919b78f0c6b92ef3292ae29db875 +81a2b74b2118923f34139a102f3d95e7eee11c4c2929c2576dee200a5abfd364606158535a6c9e4178a6a83dbb65f3c4 +8913f281d8927f2b45fc815d0f7104631cb7f5f7278a316f1327d670d15868daadd2a64e3eb98e1f53fe7e300338cc80 +a6f815fba7ef9af7fbf45f93bc952e8b351f5de6568a27c7c47a00cb39a254c6b31753794f67940fc7d2e9cc581529f4 +b3722a15c66a0014ce4d082de118def8d39190c15678a472b846225585f3a83756ae1b255b2e3f86a26168878e4773b2 +817ae61ab3d0dd5b6e24846b5a5364b1a7dc2e77432d9fed587727520ae2f307264ea0948c91ad29f0aea3a11ff38624 +b3db467464415fcad36dc1de2d6ba7686772a577cc2619242ac040d6734881a45d3b40ed4588db124e4289cfeec4bbf6 +ad66a14f5a54ac69603b16e5f1529851183da77d3cc60867f10aea41339dd5e06a5257982e9e90a352cdd32750f42ee4 +adafa3681ef45d685555601a25a55cf23358319a17f61e2179e704f63df83a73bdd298d12cf6cef86db89bd17119e11d +a379dc44cb6dd3b9d378c07b2ec654fec7ca2f272de6ba895e3d00d20c9e4c5550498a843c8ac67e4221db2115bedc1c +b7bf81c267a78efc6b9e5a904574445a6487678d7ef70054e3e93ea6a23f966c2b68787f9164918e3b16d2175459ed92 +b41d66a13a4afafd5760062b77f79de7e6ab8ccacde9c6c5116a6d886912fb491dc027af435b1b44aacc6af7b3c887f2 +9904d23a7c1c1d2e4bab85d69f283eb0a8e26d46e8b7b30224438015c936729b2f0af7c7c54c03509bb0500acb42d8a4 +ae30d65e9e20c3bfd603994ae2b175ff691d51f3e24b2d058b3b8556d12ca4c75087809062dddd4aaac81c94d15d8a17 +9245162fab42ac01527424f6013310c3eb462982518debef6c127f46ba8a06c705d7dc9f0a41e796ba8d35d60ae6cc64 +87fab853638d7a29a20f3ba2b1a7919d023e9415bfa78ebb27973d8cbc7626f584dc5665d2e7ad71f1d760eba9700d88 +85aac46ecd330608e5272430970e6081ff02a571e8ea444f1e11785ea798769634a22a142d0237f67b75369d3c484a8a +938c85ab14894cc5dfce3d80456f189a2e98eddbc8828f4ff6b1df1dcb7b42b17ca2ff40226a8a1390a95d63dca698dd +a18ce1f846e3e3c4d846822f60271eecf0f5d7d9f986385ac53c5ace9589dc7c0188910448c19b91341a1ef556652fa9 +8611608a9d844f0e9d7584ad6ccf62a5087a64f764caf108db648a776b5390feb51e5120f0ef0e9e11301af3987dd7dc +8106333ba4b4de8d1ae43bc9735d3fea047392e88efd6a2fa6f7b924a18a7a265ca6123c3edc0f36307dd7fb7fe89257 +a91426fa500951ff1b051a248c050b7139ca30dde8768690432d597d2b3c4357b11a577be6b455a1c5d145264dcf81fc +b7f9f90e0e450f37b081297f7f651bad0496a8b9afd2a4cf4120a2671aaaa8536dce1af301258bfbfdb122afa44c5048 +84126da6435699b0c09fa4032dec73d1fca21d2d19f5214e8b0bea43267e9a8dd1fc44f8132d8315e734c8e2e04d7291 +aff064708103884cb4f1a3c1718b3fc40a238d35cf0a7dc24bdf9823693b407c70da50df585bf5bc4e9c07d1c2d203e8 +a8b40fc6533752983a5329c31d376c7a5c13ce6879cc7faee648200075d9cd273537001fb4c86e8576350eaac6ba60c2 +a02db682bdc117a84dcb9312eb28fcbde12d49f4ce915cc92c610bb6965ec3cc38290f8c5b5ec70afe153956692cda95 +86decd22b25d300508472c9ce75d3e465b737e7ce13bc0fcce32835e54646fe12322ba5bc457be18bfd926a1a6ca4a38 +a18666ef65b8c2904fd598791f5627207165315a85ee01d5fb0e6b2e10bdd9b00babc447da5bd63445e3337de33b9b89 +89bb0c06effadefdaf34ffe4b123e1678a90d4451ee856c863df1e752eef41fd984689ded8f0f878bf8916d5dd8e8024 +97cfcba08ebec05d0073992a66b1d7d6fb9d95871f2cdc36db301f78bf8069294d1c259efef5c93d20dc937eedae3a1a +ac2643b14ece79dcb2e289c96776a47e2bebd40dd6dc74fd035df5bb727b5596f40e3dd2d2202141e69b0993717ede09 +a5e6fd88a2f9174d9bd4c6a55d9c30974be414992f22aa852f552c7648f722ed8077acf5aba030abd47939bb451b2c60 +8ad40a612824a7994487731a40b311b7349038c841145865539c6ada75c56de6ac547a1c23df190e0caaafecddd80ccc +953a7cea1d857e09202c438c6108060961f195f88c32f0e012236d7a4b39d840c61b162ec86436e8c38567328bea0246 +80d8b47a46dae1868a7b8ccfe7029445bbe1009dad4a6c31f9ef081be32e8e1ac1178c3c8fb68d3e536c84990cc035b1 +81ecd99f22b3766ce0aca08a0a9191793f68c754fdec78b82a4c3bdc2db122bbb9ebfd02fc2dcc6e1567a7d42d0cc16a +b1dd0446bccc25846fb95d08c1c9cc52fb51c72c4c5d169ffde56ecfe800f108dc1106d65d5c5bd1087c656de3940b63 +b87547f0931e164e96de5c550ca5aa81273648fe34f6e193cd9d69cf729cb432e17aa02e25b1c27a8a0d20a3b795e94e +820a94e69a927e077082aae66f6b292cfbe4589d932edf9e68e268c9bd3d71ef76cf7d169dd445b93967c25db11f58f1 +b0d07ddf2595270c39adfa0c8cf2ab1322979b0546aa4d918f641be53cd97f36c879bb75d205e457c011aca3bbd9f731 +8700b876b35b4b10a8a9372c5230acecd39539c1bb87515640293ad4464a9e02929d7d6a6a11112e8a29564815ac0de4 +a61a601c5bb27dcb97e37c8e2b9ce479c6b192a5e04d9ed5e065833c5a1017ee5f237b77d1a17be5d48f8e7cc0bcacf6 +92fb88fe774c1ba1d4a08cae3c0e05467ad610e7a3f1d2423fd47751759235fe0a3036db4095bd6404716aa03820f484 +b274f140d77a3ce0796f5e09094b516537ccaf27ae1907099bff172e6368ba85e7c3ef8ea2a07457cac48ae334da95b3 +b2292d9181f16581a9a9142490b2bdcdfb218ca6315d1effc8592100d792eb89d5356996c890441f04f2b4a95763503e +8897e73f576d86bc354baa3bd96e553107c48cf5889dcc23c5ba68ab8bcd4e81f27767be2233fdfa13d39f885087e668 +a29eac6f0829791c728d71abc49569df95a4446ecbfc534b39f24f56c88fe70301838dfc1c19751e7f3c5c1b8c6af6a0 +9346dc3720adc5df500a8df27fd9c75ef38dc5c8f4e8ed66983304750e66d502c3c59b8e955be781b670a0afc70a2167 +9566d534e0e30a5c5f1428665590617e95fd05d45f573715f58157854ad596ece3a3cfec61356aee342308d623e029d5 +a464fb8bffe6bd65f71938c1715c6e296cc6d0311a83858e4e7eb5873b7f2cf0c584d2101e3407b85b64ca78b2ac93ce +b54088f7217987c87e9498a747569ac5b2f8afd5348f9c45bf3fd9fbf713a20f495f49c8572d087efe778ac7313ad6d3 +91fa9f5f8000fe050f5b224d90b59fcce13c77e903cbf98ded752e5b3db16adb2bc1f8c94be48b69f65f1f1ad81d6264 +92d04a5b0ac5d8c8e313709b432c9434ecd3e73231f01e9b4e7952b87df60cbfa97b5dedd2200bd033b4b9ea8ba45cc1 +a94b90ad3c3d6c4bbe169f8661a790c40645b40f0a9d1c7220f01cf7fc176e04d80bab0ced9323fcafb93643f12b2760 +94d86149b9c8443b46196f7e5a3738206dd6f3be7762df488bcbb9f9ee285a64c997ed875b7b16b26604fa59020a8199 +82efe4ae2c50a2d7645240c173a047f238536598c04a2c0b69c96e96bd18e075a99110f1206bc213f39edca42ba00cc1 +ab8667685f831bc14d4610f84a5da27b4ea5b133b4d991741a9e64dceb22cb64a3ce8f1b6e101d52af6296df7127c9ad +83ba433661c05dcc5d562f4a9a261c8110dac44b8d833ae1514b1fc60d8b4ee395b18804baea04cb10adb428faf713c3 +b5748f6f660cc5277f1211d2b8649493ed8a11085b871cd33a5aea630abd960a740f08c08be5f9c21574600ac9bf5737 +a5c8dd12af48fb710642ad65ebb97ca489e8206741807f7acfc334f8035d3c80593b1ff2090c9bb7bd138f0c48714ca8 +a2b382fd5744e3babf454b1d806cc8783efeb4761bc42b6914ea48a46a2eae835efbe0a18262b6bc034379e03cf1262b +b3145ffaf603f69f15a64936d32e3219eea5ed49fdfd2f5bf40ea0dfd974b36fb6ff12164d4c2282d892db4cf3ff3ce1 +87a316fb213f4c5e30c5e3face049db66be4f28821bd96034714ec23d3e97849d7b301930f90a4323c7ccf53de23050c +b9de09a919455070fed6220fc179c8b7a4c753062bcd27acf28f5b9947a659c0b364298daf7c85c4ca6fca7f945add1f +806fbd98d411b76979464c40ad88bc07a151628a27fcc1012ba1dfbaf5b5cc9d962fb9b3386008978a12515edce934bc +a15268877fae0d21610ae6a31061ed7c20814723385955fac09fdc9693a94c33dea11db98bb89fdfe68f933490f5c381 +8d633fb0c4da86b2e0b37d8fad5972d62bff2ac663c5ec815d095cd4b7e1fe66ebef2a2590995b57eaf941983c7ad7a4 +8139e5dd9cf405e8ef65f11164f0440827d98389ce1b418b0c9628be983a9ddd6cf4863036ccb1483b40b8a527acd9ed +88b15fa94a08eac291d2b94a2b30eb851ff24addf2cc30b678e72e32cfcb3424cf4b33aa395d741803f3e578ddf524de +b5eaf0c8506e101f1646bcf049ee38d99ea1c60169730da893fd6020fd00a289eb2f415947e44677af49e43454a7b1be +8489822ad0647a7e06aa2aa5595960811858ddd4542acca419dd2308a8c5477648f4dd969a6740bb78aa26db9bfcc555 +b1e9a7b9f3423c220330d45f69e45fa03d7671897cf077f913c252e3e99c7b1b1cf6d30caad65e4228d5d7b80eb86e5e +b28fe9629592b9e6a55a1406903be76250b1c50c65296c10c5e48c64b539fb08fe11f68cf462a6edcbba71b0cee3feb2 +a41acf96a02c96cd8744ff6577c244fc923810d17ade133587e4c223beb7b4d99fa56eae311a500d7151979267d0895c +880798938fe4ba70721be90e666dfb62fcab4f3556fdb7b0dc8ec5bc34f6b4513df965eae78527136eb391889fe2caf9 +98d4d89d358e0fb7e212498c73447d94a83c1b66e98fc81427ab13acddb17a20f52308983f3a5a8e0aaacec432359604 +81430b6d2998fc78ba937a1639c6020199c52da499f68109da227882dc26d005b73d54c5bdcac1a04e8356a8ca0f7017 +a8d906a4786455eb74613aba4ce1c963c60095ffb8658d368df9266fdd01e30269ce10bf984e7465f34b4fd83beba26a +af54167ac1f954d10131d44a8e0045df00d581dd9e93596a28d157543fbe5fb25d213806ed7fb3cba6b8f5b5423562db +8511e373a978a12d81266b9afbd55035d7bc736835cfa921903a92969eeba3624437d1346b55382e61415726ab84a448 +8cf43eea93508ae586fa9a0f1354a1e16af659782479c2040874a46317f9e8d572a23238efa318fdfb87cc63932602b7 +b0bdd3bacff077173d302e3a9678d1d37936188c7ecc34950185af6b462b7c679815176f3cce5db19aac8b282f2d60ad +a355e9b87f2f2672052f5d4d65b8c1c827d24d89b0d8594641fccfb69aef1b94009105f3242058bb31c8bf51caae5a41 +b8baa9e4b950b72ff6b88a6509e8ed1304bc6fd955748b2e59a523a1e0c5e99f52aec3da7fa9ff407a7adf259652466c +840bc3dbb300ea6f27d1d6dd861f15680bd098be5174f45d6b75b094d0635aced539fa03ddbccb453879de77fb5d1fe9 +b4bc7e7e30686303856472bae07e581a0c0bfc815657c479f9f5931cff208d5c12930d2fd1ff413ebd8424bcd7a9b571 +89b5d514155d7999408334a50822508b9d689add55d44a240ff2bdde2eee419d117031f85e924e2a2c1ca77db9b91eea +a8604b6196f87a04e1350302e8aa745bba8dc162115d22657b37a1d1a98cb14876ddf7f65840b5dbd77e80cd22b4256c +83cb7acdb9e03247515bb2ce0227486ccf803426717a14510f0d59d45e998b245797d356f10abca94f7a14e1a2f0d552 +aeb3266a9f16649210ab2df0e1908ac259f34ce1f01162c22b56cf1019096ee4ea5854c36e30bb2feb06c21a71e8a45c +89e72e86edf2aa032a0fc9acf4d876a40865fbb2c8f87cb7e4d88856295c4ac14583e874142fd0c314a49aba68c0aa3c +8c3576eba0583c2a7884976b4ed11fe1fda4f6c32f6385d96c47b0e776afa287503b397fa516a455b4b8c3afeedc76db +a31e5b633bda9ffa174654fee98b5d5930a691c3c42fcf55673d927dbc8d91c58c4e42e615353145431baa646e8bbb30 +89f2f3f7a8da1544f24682f41c68114a8f78c86bd36b066e27da13acb70f18d9f548773a16bd8e24789420e17183f137 +ada27fa4e90a086240c9164544d2528621a415a5497badb79f8019dc3dce4d12eb6b599597e47ec6ac39c81efda43520 +90dc1eb21bf21c0187f359566fc4bf5386abea52799306a0e5a1151c0817c5f5bc60c86e76b1929c092c0f3ff48cedd2 +b702a53ebcc17ae35d2e735a347d2c700e9cbef8eadbece33cac83df483b2054c126593e1f462cfc00a3ce9d737e2af5 +9891b06455ec925a6f8eafffba05af6a38cc5e193acaaf74ffbf199df912c5197106c5e06d72942bbb032ce277b6417f +8c0ee71eb01197b019275bcf96cae94e81d2cdc3115dbf2d8e3080074260318bc9303597e8f72b18f965ad601d31ec43 +8aaf580aaf75c1b7a5f99ccf60503506e62058ef43b28b02f79b8536a96be3f019c9f71caf327b4e6730134730d1bef5 +ae6f9fc21dd7dfa672b25a87eb0a41644f7609fab5026d5cedb6e43a06dbbfd6d6e30322a2598c8dedde88c52eaed626 +8159b953ffece5693edadb2e906ebf76ff080ee1ad22698950d2d3bfc36ac5ea78f58284b2ca180664452d55bd54716c +ab7647c32ca5e9856ac283a2f86768d68de75ceeba9e58b74c5324f8298319e52183739aba4340be901699d66ac9eb3f +a4d85a5701d89bcfaf1572db83258d86a1a0717603d6f24ac2963ffcf80f1265e5ab376a4529ca504f4396498791253c +816080c0cdbfe61b4d726c305747a9eb58ac26d9a35f501dd32ba43c098082d20faf3ccd41aad24600aa73bfa453dfac +84f3afac024f576b0fd9acc6f2349c2fcefc3f77dbe5a2d4964d14b861b88e9b1810334b908cf3427d9b67a8aee74b18 +94b390655557b1a09110018e9b5a14490681ade275bdc83510b6465a1218465260d9a7e2a6e4ec700f58c31dc3659962 +a8c66826b1c04a2dd4c682543242e7a57acae37278bd09888a3d17747c5b5fec43548101e6f46d703638337e2fd3277b +86e6f4608a00007fa533c36a5b054c5768ccafe41ad52521d772dcae4c8a4bcaff8f7609be30d8fab62c5988cbbb6830 +837da4cf09ae8aa0bceb16f8b3bfcc3b3367aecac9eed6b4b56d7b65f55981ef066490764fb4c108792623ecf8cad383 +941ff3011462f9b5bf97d8cbdb0b6f5d37a1b1295b622f5485b7d69f2cb2bcabc83630dae427f0259d0d9539a77d8424 +b99e5d6d82aa9cf7d5970e7f710f4039ac32c2077530e4c2779250c6b9b373bc380adb0a03b892b652f649720672fc8c +a791c78464b2d65a15440b699e1e30ebd08501d6f2720adbc8255d989a82fcded2f79819b5f8f201bed84a255211b141 +84af7ad4a0e31fcbb3276ab1ad6171429cf39adcf78dc03750dc5deaa46536d15591e26d53e953dfb31e1622bc0743ab +a833e62fe97e1086fae1d4917fbaf09c345feb6bf1975b5cb863d8b66e8d621c7989ab3dbecda36bc9eaffc5eaa6fa66 +b4ef79a46a2126f53e2ebe62770feb57fd94600be29459d70a77c5e9cc260fa892be06cd60f886bf48459e48eb50d063 +b43b8f61919ea380bf151c294e54d3a3ff98e20d1ee5efbfe38aa2b66fafbc6a49739793bd5cb1c809f8b30466277c3a +ab37735af2412d2550e62df9d8b3b5e6f467f20de3890bf56faf1abf2bf3bd1d98dc3fa0ad5e7ab3fce0fa20409eb392 +82416b74b1551d484250d85bb151fabb67e29cce93d516125533df585bc80779ab057ea6992801a3d7d5c6dcff87a018 +8145d0787f0e3b5325190ae10c1d6bee713e6765fb6a0e9214132c6f78f4582bb2771aaeae40d3dad4bafb56bf7e36d8 +b6935886349ecbdd5774e12196f4275c97ec8279fdf28ccf940f6a022ebb6de8e97d6d2173c3fe402cbe9643bed3883b +87ef9b4d3dc71ac86369f8ed17e0dd3b91d16d14ae694bc21a35b5ae37211b043d0e36d8ff07dcc513fb9e6481a1f37f +ae1d0ded32f7e6f1dc8fef495879c1d9e01826f449f903c1e5034aeeabc5479a9e323b162b688317d46d35a42d570d86 +a40d16497004db4104c6794e2f4428d75bdf70352685944f3fbe17526df333e46a4ca6de55a4a48c02ecf0bde8ba03c0 +8d45121efba8cc308a498e8ee39ea6fa5cae9fb2e4aab1c2ff9d448aa8494ccbec9a078f978a86fcd97b5d5e7be7522a +a8173865c64634ba4ac2fa432740f5c05056a9deaf6427cb9b4b8da94ca5ddbc8c0c5d3185a89b8b28878194de9cdfcd +b6ec06a74d690f6545f0f0efba236e63d1fdfba54639ca2617408e185177ece28901c457d02b849fd00f1a53ae319d0a +b69a12df293c014a40070e3e760169b6f3c627caf9e50b35a93f11ecf8df98b2bc481b410eecb7ab210bf213bbe944de +97e7dc121795a533d4224803e591eef3e9008bab16f12472210b73aaf77890cf6e3877e0139403a0d3003c12c8f45636 +acdfa6fdd4a5acb7738cc8768f7cba84dbb95c639399b291ae8e4e63df37d2d4096900a84d2f0606bf534a9ccaa4993f +86ee253f3a9446a33e4d1169719b7d513c6b50730988415382faaf751988c10a421020609f7bcdef91be136704b906e2 +aac9438382a856caf84c5a8a234282f71b5fc5f65219103b147e7e6cf565522285fbfd7417b513bdad8277a00f652ca1 +83f3799d8e5772527930f5dc071a2e0a65471618993ec8990a96ccdeee65270e490bda9d26bb877612475268711ffd80 +93f28a81ac8c0ec9450b9d762fae9c7f8feaace87a6ee6bd141ef1d2d0697ef1bbd159fe6e1de640dbdab2b0361fca8a +a0825c95ba69999b90eac3a31a3fd830ea4f4b2b7409bde5f202b61d741d6326852ce790f41de5cb0eccec7af4db30c1 +83924b0e66233edd603c3b813d698daa05751fc34367120e3cf384ea7432e256ccee4d4daf13858950549d75a377107d +956fd9fa58345277e06ba2ec72f49ed230b8d3d4ff658555c52d6cddeb84dd4e36f1a614f5242d5ca0192e8daf0543c2 +944869912476baae0b114cced4ff65c0e4c90136f73ece5656460626599051b78802df67d7201c55d52725a97f5f29fe +865cb25b64b4531fb6fe4814d7c8cd26b017a6c6b72232ff53defc18a80fe3b39511b23f9e4c6c7249d06e03b2282ed2 +81e09ff55214960775e1e7f2758b9a6c4e4cd39edf7ec1adfaad51c52141182b79fe2176b23ddc7df9fd153e5f82d668 +b31006896f02bc90641121083f43c3172b1039334501fbaf1672f7bf5d174ddd185f945adf1a9c6cf77be34c5501483d +88b92f6f42ae45e9f05b16e52852826e933efd0c68b0f2418ac90957fd018df661bc47c8d43c2a7d7bfcf669dab98c3c +92fc68f595853ee8683930751789b799f397135d002eda244fe63ecef2754e15849edde3ba2f0cc8b865c9777230b712 +99ca06a49c5cd0bb097c447793fcdd809869b216a34c66c78c7e41e8c22f05d09168d46b8b1f3390db9452d91bc96dea +b48b9490a5d65296802431852d548d81047bbefc74fa7dc1d4e2a2878faacdfcb365ae59209cb0ade01901a283cbd15d +aff0fdbef7c188b120a02bc9085d7b808e88f73973773fef54707bf2cd772cd066740b1b6f4127b5c349f657bd97e738 +966fd4463b4f43dd8ccba7ad50baa42292f9f8b2e70da23bb6780e14155d9346e275ef03ddaf79e47020dcf43f3738bd +9330c3e1fadd9e08ac85f4839121ae20bbeb0a5103d84fa5aadbd1213805bdcda67bf2fb75fc301349cbc851b5559d20 +993bb99867bd9041a71a55ad5d397755cfa7ab6a4618fc526179bfc10b7dc8b26e4372fe9a9b4a15d64f2b63c1052dda +a29b59bcfab51f9b3c490a3b96f0bf1934265c315349b236012adbd64a56d7f6941b2c8cc272b412044bc7731f71e1dc +a65c9cefe1fc35d089fe8580c2e7671ebefdb43014ac291528ff4deefd4883fd4df274af83711dad610dad0d615f9d65 +944c78c56fb227ae632805d448ca3884cd3d2a89181cead3d2b7835e63297e6d740aa79a112edb1d4727824991636df5 +a73d782da1db7e4e65d7b26717a76e16dd9fab4df65063310b8e917dc0bc24e0d6755df5546c58504d04d9e68c3b474a +af80f0b87811ae3124f68108b4ca1937009403f87928bbc53480e7c5408d072053ace5eeaf5a5aba814dab8a45502085 +88aaf1acfc6e2e19b8387c97da707cb171c69812fefdd4650468e9b2c627bd5ccfb459f4d8e56bdfd84b09ddf87e128f +92c97276ff6f72bab6e9423d02ad6dc127962dbce15a0dd1e4a393b4510c555df6aa27be0f697c0d847033a9ca8b8dfd +a0e07d43d96e2d85b6276b3c60aadb48f0aedf2de8c415756dc597249ea64d2093731d8735231dadc961e5682ac59479 +adc9e6718a8f9298957d1da3842a7751c5399bbdf56f8de6c1c4bc39428f4aee6f1ba6613d37bf46b9403345e9d6fc81 +951da434da4b20d949b509ceeba02e24da7ed2da964c2fcdf426ec787779c696b385822c7dbea4df3e4a35921f1e912c +a04cbce0d2b2e87bbf038c798a12ec828423ca6aca08dc8d481cf6466e3c9c73d4d4a7fa47df9a7e2e15aae9e9f67208 +8f855cca2e440d248121c0469de1f94c2a71b8ee2682bbad3a78243a9e03da31d1925e6760dbc48a1957e040fae9abe8 +b642e5b17c1df4a4e101772d73851180b3a92e9e8b26c918050f51e6dd3592f102d20b0a1e96f0e25752c292f4c903ff +a92454c300781f8ae1766dbbb50a96192da7d48ef4cbdd72dd8cbb44c6eb5913c112cc38e9144615fdc03684deb99420 +8b74f7e6c2304f8e780df4649ef8221795dfe85fdbdaa477a1542d135b75c8be45bf89adbbb6f3ddf54ca40f02e733e9 +85cf66292cbb30cec5fd835ab10c9fcb3aea95e093aebf123e9a83c26f322d76ebc89c4e914524f6c5f6ee7d74fc917d +ae0bfe0cdc97c09542a7431820015f2d16067b30dca56288013876025e81daa8c519e5e347268e19aa1a85fa1dc28793 +921322fc6a47dc091afa0ad6df18ed14cde38e48c6e71550aa513918b056044983aee402de21051235eecf4ce8040fbe +96c030381e97050a45a318d307dcb3c8377b79b4dd5daf6337cded114de26eb725c14171b9b8e1b3c08fe1f5ea6b49e0 +90c23b86b6111818c8baaf53a13eaee1c89203b50e7f9a994bf0edf851919b48edbac7ceef14ac9414cf70c486174a77 +8bf6c301240d2d1c8d84c71d33a6dfc6d9e8f1cfae66d4d0f7a256d98ae12b0bcebfa94a667735ee89f810bcd7170cff +a41a4ffbbea0e36874d65c009ee4c3feffff322f6fc0e30d26ee4dbc1f46040d05e25d9d0ecb378cef0d24a7c2c4b850 +a8d4cdd423986bb392a0a92c12a8bd4da3437eec6ef6af34cf5310944899287452a2eb92eb5386086d5063381189d10e +a81dd26ec057c4032a4ed7ad54d926165273ed51d09a1267b2e477535cf6966835a257c209e4e92d165d74fa75695fa3 +8d7f708c3ee8449515d94fc26b547303b53d8dd55f177bc3b25d3da2768accd9bc8e9f09546090ebb7f15c66e6c9c723 +839ba65cffcd24cfffa7ab3b21faabe3c66d4c06324f07b2729c92f15cad34e474b0f0ddb16cd652870b26a756b731d3 +87f1a3968afec354d92d77e2726b702847c6afcabb8438634f9c6f7766de4c1504317dc4fa9a4a735acdbf985e119564 +91a8a7fd6542f3e0673f07f510d850864b34ac087eb7eef8845a1d14b2b1b651cbdc27fa4049bdbf3fea54221c5c8549 +aef3cf5f5e3a2385ead115728d7059e622146c3457d266c612e778324b6e06fbfb8f98e076624d2f3ce1035d65389a07 +819915d6232e95ccd7693fdd78d00492299b1983bc8f96a08dcb50f9c0a813ed93ae53c0238345d5bea0beda2855a913 +8e9ba68ded0e94935131b392b28218315a185f63bf5e3c1a9a9dd470944509ca0ba8f6122265f8da851b5cc2abce68f1 +b28468e9b04ee9d69003399a3cf4457c9bf9d59f36ab6ceeb8e964672433d06b58beeea198fedc7edbaa1948577e9fa2 +a633005e2c9f2fd94c8bce2dd5bb708fe946b25f1ec561ae65e54e15cdd88dc339f1a083e01f0d39610c8fe24151aaf0 +841d0031e22723f9328dd993805abd13e0c99b0f59435d2426246996b08d00ce73ab906f66c4eab423473b409e972ce0 +85758d1b084263992070ec8943f33073a2d9b86a8606672550c17545507a5b3c88d87382b41916a87ee96ff55a7aa535 +8581b06b0fc41466ef94a76a1d9fb8ae0edca6d018063acf6a8ca5f4b02d76021902feba58972415691b4bdbc33ae3b4 +83539597ff5e327357ee62bc6bf8c0bcaec2f227c55c7c385a4806f0d37fb461f1690bad5066b8a5370950af32fafbef +aee3557290d2dc10827e4791d00e0259006911f3f3fce4179ed3c514b779160613eca70f720bff7804752715a1266ffa +b48d2f0c4e90fc307d5995464e3f611a9b0ef5fe426a289071f4168ed5cc4f8770c9332960c2ca5c8c427f40e6bb389f +847af8973b4e300bb06be69b71b96183fd1a0b9d51b91701bef6fcfde465068f1eb2b1503b07afda380f18d69de5c9e1 +a70a6a80ce407f07804c0051ac21dc24d794b387be94eb24e1db94b58a78e1bcfb48cd0006db8fc1f9bedaece7a44fbe +b40e942b8fa5336910ff0098347df716bff9d1fa236a1950c16eeb966b3bc1a50b8f7b0980469d42e75ae13ced53cead +b208fabaa742d7db3148515330eb7a3577487845abdb7bd9ed169d0e081db0a5816595c33d375e56aeac5b51e60e49d3 +b7c8194b30d3d6ef5ab66ec88ad7ebbc732a3b8a41731b153e6f63759a93f3f4a537eab9ad369705bd730184bdbbdc34 +9280096445fe7394d04aa1bc4620c8f9296e991cc4d6c131bd703cb1cc317510e6e5855ac763f4d958c5edfe7eebeed7 +abc2aa4616a521400af1a12440dc544e3c821313d0ab936c86af28468ef8bbe534837e364598396a81cf8d06274ed5a6 +b18ca8a3325adb0c8c18a666d4859535397a1c3fe08f95eebfac916a7a99bbd40b3c37b919e8a8ae91da38bc00fa56c0 +8a40c33109ecea2a8b3558565877082f79121a432c45ec2c5a5e0ec4d1c203a6788e6b69cb37f1fd5b8c9a661bc5476d +88c47301dd30998e903c84e0b0f2c9af2e1ce6b9f187dab03528d44f834dc991e4c86d0c474a2c63468cf4020a1e24a0 +920c832853e6ab4c851eecfa9c11d3acc7da37c823be7aa1ab15e14dfd8beb5d0b91d62a30cec94763bd8e4594b66600 +98e1addbe2a6b8edc7f12ecb9be81c3250aeeca54a1c6a7225772ca66549827c15f3950d01b8eb44aecb56fe0fff901a +8cfb0fa1068be0ec088402f5950c4679a2eb9218c729da67050b0d1b2d7079f3ddf4bf0f57d95fe2a8db04bc6bcdb20c +b70f381aafe336b024120453813aeab70baac85b9c4c0f86918797b6aee206e6ed93244a49950f3d8ec9f81f4ac15808 +a4c8edf4aa33b709a91e1062939512419711c1757084e46f8f4b7ed64f8e682f4e78b7135920c12f0eb0422fe9f87a6a +b4817e85fd0752d7ebb662d3a51a03367a84bac74ebddfba0e5af5e636a979500f72b148052d333b3dedf9edd2b4031b +a87430169c6195f5d3e314ff2d1c2f050e766fd5d2de88f5207d72dba4a7745bb86d0baca6e9ae156582d0d89e5838c7 +991b00f8b104566b63a12af4826b61ce7aa40f4e5b8fff3085e7a99815bdb4471b6214da1e480214fac83f86a0b93cc5 +b39966e3076482079de0678477df98578377a094054960ee518ef99504d6851f8bcd3203e8da5e1d4f6f96776e1fe6eb +a448846d9dc2ab7a0995fa44b8527e27f6b3b74c6e03e95edb64e6baa4f1b866103f0addb97c84bef1d72487b2e21796 +894bec21a453ae84b592286e696c35bc30e820e9c2fd3e63dd4fbe629e07df16439c891056070faa490155f255bf7187 +a9ec652a491b11f6a692064e955f3f3287e7d2764527e58938571469a1e29b5225b9415bd602a45074dfbfe9c131d6ca +b39d37822e6cbe28244b5f42ce467c65a23765bd16eb6447c5b3e942278069793763483dafd8c4dd864f8917aad357fe +88dba51133f2019cb266641c56101e3e5987d3b77647a2e608b5ff9113dfc5f85e2b7c365118723131fbc0c9ca833c9c +b566579d904b54ecf798018efcb824dccbebfc6753a0fd2128ac3b4bd3b038c2284a7c782b5ca6f310eb7ea4d26a3f0a +a97a55c0a492e53c047e7d6f9d5f3e86fb96f3dddc68389c0561515343b66b4bc02a9c0d5722dff1e3445308240b27f7 +a044028ab4bcb9e1a2b9b4ca4efbf04c5da9e4bf2fff0e8bd57aa1fc12a71e897999c25d9117413faf2f45395dee0f13 +a78dc461decbeaeed8ebd0909369b491a5e764d6a5645a7dac61d3140d7dc0062526f777b0eb866bff27608429ebbdde +b2c2a8991f94c39ca35fea59f01a92cb3393e0eccb2476dfbf57261d406a68bd34a6cff33ed80209991688c183609ef4 +84189eefb521aff730a4fd3fd5b10ddfd29f0d365664caef63bb015d07e689989e54c33c2141dd64427805d37a7e546e +85ac80bd734a52235da288ff042dea9a62e085928954e8eacd2c751013f61904ed110e5b3afe1ab770a7e6485efb7b5e +9183a560393dcb22d0d5063e71182020d0fbabb39e32493eeffeb808df084aa243eb397027f150b55a247d1ed0c8513e +81c940944df7ecc58d3c43c34996852c3c7915ed185d7654627f7af62abae7e0048dd444a6c09961756455000bd96d09 +aa8c34e164019743fd8284b84f06c3b449aae7996e892f419ee55d82ad548cb300fd651de329da0384243954c0ef6a60 +89a7b7bdfc7e300d06a14d463e573d6296d8e66197491900cc9ae49504c4809ff6e61b758579e9091c61085ba1237b83 +878d21809ba540f50bd11f4c4d9590fb6f3ab9de5692606e6e2ef4ed9d18520119e385be5e1f4b3f2e2b09c319f0e8fc +8eb248390193189cf0355365e630b782cd15751e672dc478b39d75dc681234dcd9309df0d11f4610dbb249c1e6be7ef9 +a1d7fb3aecb896df3a52d6bd0943838b13f1bd039c936d76d03de2044c371d48865694b6f532393b27fd10a4cf642061 +a34bca58a24979be442238cbb5ece5bee51ae8c0794dd3efb3983d4db713bc6f28a96e976ac3bd9a551d3ed9ba6b3e22 +817c608fc8cacdd178665320b5a7587ca21df8bdd761833c3018b967575d25e3951cf3d498a63619a3cd2ad4406f5f28 +86c95707db0495689afd0c2e39e97f445f7ca0edffad5c8b4cacd1421f2f3cc55049dfd504f728f91534e20383955582 +99c3b0bb15942c301137765d4e19502f65806f3b126dc01a5b7820c87e8979bce6a37289a8f6a4c1e4637227ad5bf3bf +8aa1518a80ea8b074505a9b3f96829f5d4afa55a30efe7b4de4e5dbf666897fdd2cf31728ca45921e21a78a80f0e0f10 +8d74f46361c79e15128ac399e958a91067ef4cec8983408775a87eca1eed5b7dcbf0ddf30e66f51780457413496c7f07 +a41cde4a786b55387458a1db95171aca4fd146507b81c4da1e6d6e495527c3ec83fc42fad1dfe3d92744084a664fd431 +8c352852c906fae99413a84ad11701f93f292fbf7bd14738814f4c4ceab32db02feb5eb70bc73898b0bc724a39d5d017 +a5993046e8f23b71ba87b7caa7ace2d9023fb48ce4c51838813174880d918e9b4d2b0dc21a2b9c6f612338c31a289df8 +83576d3324bf2d8afbfb6eaecdc5d767c8e22e7d25160414924f0645491df60541948a05e1f4202e612368e78675de8a +b43749b8df4b15bc9a3697e0f1c518e6b04114171739ef1a0c9c65185d8ec18e40e6954d125cbc14ebc652cf41ad3109 +b4eebd5d80a7327a040cafb9ccdb12b2dfe1aa86e6bc6d3ac8a57fadfb95a5b1a7332c66318ff72ba459f525668af056 +9198be7f1d413c5029b0e1c617bcbc082d21abe2c60ec8ce9b54ca1a85d3dba637b72fda39dae0c0ae40d047eab9f55a +8d96a0232832e24d45092653e781e7a9c9520766c3989e67bbe86b3a820c4bf621ea911e7cd5270a4bfea78b618411f6 +8d7160d0ea98161a2d14d46ef01dff72d566c330cd4fabd27654d300e1bc7644c68dc8eabf2a20a59bfe7ba276545f9b +abb60fce29dec7ba37e3056e412e0ec3e05538a1fc0e2c68877378c867605966108bc5742585ab6a405ce0c962b285b6 +8fabffa3ed792f05e414f5839386f6449fd9f7b41a47595c5d71074bd1bb3784cc7a1a7e1ad6b041b455035957e5b2dc +90ff017b4804c2d0533b72461436b10603ab13a55f86fd4ec11b06a70ef8166f958c110519ca1b4cc7beba440729fe2d +b340cfd120f6a4623e3a74cf8c32bfd7cd61a280b59dfd17b15ca8fae4d82f64a6f15fbde4c02f424debc72b7db5fe67 +871311c9c7220c932e738d59f0ecc67a34356d1429fe570ca503d340c9996cb5ee2cd188fad0e3bd16e4c468ec1dbebd +a772470262186e7b94239ba921b29f2412c148d6f97c4412e96d21e55f3be73f992f1ad53c71008f0558ec3f84e2b5a7 +b2a897dcb7ffd6257f3f2947ec966f2077d57d5191a88840b1d4f67effebe8c436641be85524d0a21be734c63ab5965d +a044f6eacc48a4a061fa149500d96b48cbf14853469aa4d045faf3dca973be1bd4b4ce01646d83e2f24f7c486d03205d +981af5dc2daa73f7fa9eae35a93d81eb6edba4a7f673b55d41f6ecd87a37685d31bb40ef4f1c469b3d72f2f18b925a17 +912d2597a07864de9020ac77083eff2f15ceb07600f15755aba61251e8ce3c905a758453b417f04d9c38db040954eb65 +9642b7f6f09394ba5e0805734ef6702c3eddf9eea187ba98c676d5bbaec0e360e3e51dc58433aaa1e2da6060c8659cb7 +8ab3836e0a8ac492d5e707d056310c4c8e0489ca85eb771bff35ba1d658360084e836a6f51bb990f9e3d2d9aeb18fbb5 +879e058e72b73bb1f4642c21ffdb90544b846868139c6511f299aafe59c2d0f0b944dffc7990491b7c4edcd6a9889250 +b9e60b737023f61479a4a8fd253ed0d2a944ea6ba0439bbc0a0d3abf09b0ad1f18d75555e4a50405470ae4990626f390 +b9c2535d362796dcd673640a9fa2ebdaec274e6f8b850b023153b0a7a30fffc87f96e0b72696f647ebe7ab63099a6963 +94aeff145386a087b0e91e68a84a5ede01f978f9dd9fe7bebca78941938469495dc30a96bba9508c0d017873aeea9610 +98b179f8a3d9f0d0a983c30682dd425a2ddc7803be59bd626c623c8951a5179117d1d2a68254c95c9952989877d0ee55 +889ecf5f0ee56938273f74eb3e9ecfb5617f04fb58e83fe4c0e4aef51615cf345bc56f3f61b17f6eed3249d4afd54451 +a0f2b2c39bcea4b50883e2587d16559e246248a66ecb4a4b7d9ab3b51fb39fe98d83765e087eee37a0f86b0ba4144c02 +b2a61e247ed595e8a3830f7973b07079cbda510f28ad8c78c220b26cb6acde4fbb5ee90c14a665f329168ee951b08cf0 +95bd0fcfb42f0d6d8a8e73d7458498a85bcddd2fb132fd7989265648d82ac2707d6d203fac045504977af4f0a2aca4b7 +843e5a537c298666e6cf50fcc044f13506499ef83c802e719ff2c90e85003c132024e04711be7234c04d4b0125512d5d +a46d1797c5959dcd3a5cfc857488f4d96f74277c3d13b98b133620192f79944abcb3a361d939a100187f1b0856eae875 +a1c7786736d6707a48515c38660615fcec67eb8a2598f46657855215f804fd72ab122d17f94fcffad8893f3be658dca7 +b23dc9e610abc7d8bd21d147e22509a0fa49db5be6ea7057b51aae38e31654b3aa044df05b94b718153361371ba2f622 +b00cc8f257d659c22d30e6d641f79166b1e752ea8606f558e4cad6fc01532e8319ea4ee12265ba4140ac45aa4613c004 +ac7019af65221b0cc736287b32d7f1a3561405715ba9a6a122342e04e51637ba911c41573de53e4781f2230fdcb2475f +81a630bc41b3da8b3eb4bf56cba10cd9f93153c3667f009dc332287baeb707d505fb537e6233c8e53d299ec0f013290c +a6b7aea5c545bb76df0f230548539db92bc26642572cb7dd3d5a30edca2b4c386f44fc8466f056b42de2a452b81aff5b +8271624ff736b7b238e43943c81de80a1612207d32036d820c11fc830c737972ccc9c60d3c2359922b06652311e3c994 +8a684106458cb6f4db478170b9ad595d4b54c18bf63b9058f095a2fa1b928c15101472c70c648873d5887880059ed402 +a5cc3c35228122f410184e4326cf61a37637206e589fcd245cb5d0cec91031f8f7586b80503070840fdfd8ce75d3c88b +9443fc631aed8866a7ed220890911057a1f56b0afe0ba15f0a0e295ab97f604b134b1ed9a4245e46ee5f9a93aa74f731 +984b6f7d79835dffde9558c6bb912d992ca1180a2361757bdba4a7b69dc74b056e303adc69fe67414495dd9c2dd91e64 +b15a5c8cba5de080224c274d31c68ed72d2a7126d347796569aef0c4e97ed084afe3da4d4b590b9dda1a07f0c2ff3dfb +991708fe9650a1f9a4e43938b91d45dc68c230e05ee999c95dbff3bf79b1c1b2bb0e7977de454237c355a73b8438b1d9 +b4f7edc7468b176a4a7c0273700c444fa95c726af6697028bed4f77eee887e3400f9c42ee15b782c0ca861c4c3b8c98a +8c60dcc16c51087eb477c13e837031d6c6a3dc2b8bf8cb43c23f48006bc7173151807e866ead2234b460c2de93b31956 +83ad63e9c910d1fc44bc114accfb0d4d333b7ebe032f73f62d25d3e172c029d5e34a1c9d547273bf6c0fead5c8801007 +85de73213cc236f00777560756bdbf2b16841ba4b55902cf2cad9742ecaf5d28209b012ceb41f337456dfeca93010cd7 +a7561f8827ccd75b6686ba5398bb8fc3083351c55a589b18984e186820af7e275af04bcd4c28e1dc11be1e8617a0610b +88c0a4febd4068850557f497ea888035c7fc9f404f6cc7794e7cc8722f048ad2f249e7dc62743e7a339eb7473ad3b0cd +932b22b1d3e6d5a6409c34980d176feb85ada1bf94332ef5c9fc4d42b907dabea608ceef9b5595ef3feee195151f18d8 +a2867bb3f5ab88fbdae3a16c9143ab8a8f4f476a2643c505bb9f37e5b1fd34d216cab2204c9a017a5a67b7ad2dda10e8 +b573d5f38e4e9e8a3a6fd82f0880dc049efa492a946d00283019bf1d5e5516464cf87039e80aef667cb86fdea5075904 +b948f1b5ab755f3f5f36af27d94f503b070696d793b1240c1bdfd2e8e56890d69e6904688b5f8ff5a4bdf5a6abfe195f +917eae95ebc4109a2e99ddd8fec7881d2f7aaa0e25fda44dec7ce37458c2ee832f1829db7d2dcfa4ca0f06381c7fe91d +95751d17ed00a3030bce909333799bb7f4ab641acf585807f355b51d6976dceee410798026a1a004ef4dcdff7ec0f5b8 +b9b7bd266f449a79bbfe075e429613e76c5a42ac61f01c8f0bbbd34669650682efe01ff9dbbc400a1e995616af6aa278 +ac1722d097ce9cd7617161f8ec8c23d68f1fb1c9ca533e2a8b4f78516c2fd8fb38f23f834e2b9a03bb06a9d655693ca9 +a7ad9e96ffd98db2ecdb6340c5d592614f3c159abfd832fe27ee9293519d213a578e6246aae51672ee353e3296858873 +989b8814d5de7937c4acafd000eec2b4cd58ba395d7b25f98cafd021e8efa37029b29ad8303a1f6867923f5852a220eb +a5bfe6282c771bc9e453e964042d44eff4098decacb89aecd3be662ea5b74506e1357ab26f3527110ba377711f3c9f41 +8900a7470b656639721d2abbb7b06af0ac4222ab85a1976386e2a62eb4b88bfb5b72cf7921ddb3cf3a395d7eeb192a2e +95a71b55cd1f35a438cf5e75f8ff11c5ec6a2ebf2e4dba172f50bfad7d6d5dca5de1b1afc541662c81c858f7604c1163 +82b5d62fea8db8d85c5bc3a76d68dedd25794cf14d4a7bc368938ffca9e09f7e598fdad2a5aac614e0e52f8112ae62b9 +997173f07c729202afcde3028fa7f52cefc90fda2d0c8ac2b58154a5073140683e54c49ed1f254481070d119ce0ce02a +aeffb91ccc7a72bbd6ffe0f9b99c9e66e67d59cec2e02440465e9636a613ab3017278cfa72ea8bc4aba9a8dc728cb367 +952743b06e8645894aeb6440fc7a5f62dd3acf96dab70a51e20176762c9751ea5f2ba0b9497ccf0114dc4892dc606031 +874c63baeddc56fbbca2ff6031f8634b745f6e34ea6791d7c439201aee8f08ef5ee75f7778700a647f3b21068513fce6 +85128fec9c750c1071edfb15586435cc2f317e3e9a175bb8a9697bcda1eb9375478cf25d01e7fed113483b28f625122d +85522c9576fd9763e32af8495ae3928ed7116fb70d4378448926bc9790e8a8d08f98cf47648d7da1b6e40d6a210c7924 +97d0f37a13cfb723b848099ca1c14d83e9aaf2f7aeb71829180e664b7968632a08f6a85f557d74b55afe6242f2a36e7c +abaa472d6ad61a5fccd1a57c01aa1bc081253f95abbcba7f73923f1f11c4e79b904263890eeb66926de3e2652f5d1c70 +b3c04945ba727a141e5e8aec2bf9aa3772b64d8fd0e2a2b07f3a91106a95cbcb249adcd074cbe498caf76fffac20d4ef +82c46781a3d730d9931bcabd7434a9171372dde57171b6180e5516d4e68db8b23495c8ac3ab96994c17ddb1cf249b9fb +a202d8b65613c42d01738ccd68ed8c2dbc021631f602d53f751966e04182743ebc8e0747d600b8a8676b1da9ae7f11ab +ae73e7256e9459db04667a899e0d3ea5255211fb486d084e6550b6dd64ca44af6c6b2d59d7aa152de9f96ce9b58d940d +b67d87b176a9722945ec7593777ee461809861c6cfd1b945dde9ee4ff009ca4f19cf88f4bbb5c80c9cbab2fe25b23ac8 +8f0b7a317a076758b0dac79959ee4a06c08b07d0f10538a4b53d3da2eda16e2af26922feb32c090330dc4d969cf69bd3 +90b36bf56adbd8c4b6cb32febc3a8d5f714370c2ac3305c10fa6d168dffb2a026804517215f9a2d4ec8310cdb6bb459b +aa80c19b0682ead69934bf18cf476291a0beddd8ef4ed75975d0a472e2ab5c70f119722a8574ae4973aceb733d312e57 +a3fc9abb12574e5c28dcb51750b4339b794b8e558675eef7d26126edf1de920c35e992333bcbffcbf6a5f5c0d383ce62 +a1573ff23ab972acdcd08818853b111fc757fdd35aa070186d3e11e56b172fb49d840bf297ac0dd222e072fc09f26a81 +98306f2be4caa92c2b4392212d0cbf430b409b19ff7d5b899986613bd0e762c909fc01999aa94be3bd529d67f0113d7f +8c1fc42482a0819074241746d17dc89c0304a2acdae8ed91b5009e9e3e70ff725ba063b4a3e68fdce05b74f5180c545e +a6c6113ebf72d8cf3163b2b8d7f3fa24303b13f55752522c660a98cd834d85d8c79214d900fa649499365e2e7641f77a +ab95eea424f8a2cfd9fb1c78bb724e5b1d71a0d0d1e4217c5d0f98b0d8bbd3f8400a2002abc0a0e4576d1f93f46fefad +823c5a4fd8cf4a75fdc71d5f2dd511b6c0f189b82affeacd2b7cfcad8ad1a5551227dcc9bfdb2e34b2097eaa00efbb51 +b97314dfff36d80c46b53d87a61b0e124dc94018a0bb680c32765b9a2d457f833a7c42bbc90b3b1520c33a182580398d +b17566ee3dcc6bb3b004afe4c0136dfe7dd27df9045ae896dca49fb36987501ae069eb745af81ba3fc19ff037e7b1406 +b0bdc0f55cfd98d331e3a0c4fbb776a131936c3c47c6bffdc3aaf7d8c9fa6803fbc122c2fefbb532e634228687d52174 +aa5d9e60cc9f0598559c28bb9bdd52aa46605ab4ffe3d192ba982398e72cec9a2a44c0d0d938ce69935693cabc0887ea +802b6459d2354fa1d56c592ac1346c428dadea6b6c0a87bf7d309bab55c94e1cf31dd98a7a86bd92a840dd51f218b91b +a526914efdc190381bf1a73dd33f392ecf01350b9d3f4ae96b1b1c3d1d064721c7d6eec5788162c933245a3943f5ee51 +b3b8fcf637d8d6628620a1a99dbe619eabb3e5c7ce930d6efd2197e261bf394b74d4e5c26b96c4b8009c7e523ccfd082 +8f7510c732502a93e095aba744535f3928f893f188adc5b16008385fb9e80f695d0435bfc5b91cdad4537e87e9d2551c +97b90beaa56aa936c3ca45698f79273a68dd3ccd0076eab48d2a4db01782665e63f33c25751c1f2e070f4d1a8525bf96 +b9fb798324b1d1283fdc3e48288e3861a5449b2ab5e884b34ebb8f740225324af86e4711da6b5cc8361c1db15466602f +b6d52b53cea98f1d1d4c9a759c25bf9d8a50b604b144e4912acbdbdc32aab8b9dbb10d64a29aa33a4f502121a6fb481c +9174ffff0f2930fc228f0e539f5cfd82c9368d26b074467f39c07a774367ff6cccb5039ac63f107677d77706cd431680 +a33b6250d4ac9e66ec51c063d1a6a31f253eb29bbaed12a0d67e2eccfffb0f3a52750fbf52a1c2aaba8c7692346426e7 +a97025fd5cbcebe8ef865afc39cd3ea707b89d4e765ec817fd021d6438e02fa51e3544b1fd45470c58007a08efac6edd +b32a78480edd9ff6ba2f1eec4088db5d6ceb2d62d7e59e904ecaef7bb4a2e983a4588e51692b3be76e6ffbc0b5f911a5 +b5ab590ef0bb77191f00495b33d11c53c65a819f7d0c1f9dc4a2caa147a69c77a4fff7366a602d743ee1f395ce934c1e +b3fb0842f9441fb1d0ee0293b6efbc70a8f58d12d6f769b12872db726b19e16f0f65efbc891cf27a28a248b0ef9c7e75 +9372ad12856fefb928ccb0d34e198df99e2f8973b07e9d417a3134d5f69e12e79ff572c4e03ccd65415d70639bc7c73e +aa8d6e83d09ce216bfe2009a6b07d0110d98cf305364d5529c170a23e693aabb768b2016befb5ada8dabdd92b4d012bb +a954a75791eeb0ce41c85200c3763a508ed8214b5945a42c79bfdcfb1ec4f86ad1dd7b2862474a368d4ac31911a2b718 +8e2081cfd1d062fe3ab4dab01f68062bac802795545fede9a188f6c9f802cb5f884e60dbe866710baadbf55dc77c11a4 +a2f06003b9713e7dd5929501ed485436b49d43de80ea5b15170763fd6346badf8da6de8261828913ee0dacd8ff23c0e1 +98eecc34b838e6ffd1931ca65eec27bcdb2fdcb61f33e7e5673a93028c5865e0d1bf6d3bec040c5e96f9bd08089a53a4 +88cc16019741b341060b95498747db4377100d2a5bf0a5f516f7dec71b62bcb6e779de2c269c946d39040e03b3ae12b7 +ad1135ccbc3019d5b2faf59a688eef2500697642be8cfbdf211a1ab59abcc1f24483e50d653b55ff1834675ac7b4978f +a946f05ed9972f71dfde0020bbb086020fa35b482cce8a4cc36dd94355b2d10497d7f2580541bb3e81b71ac8bba3c49f +a83aeed488f9a19d8cfd743aa9aa1982ab3723560b1cd337fc2f91ad82f07afa412b3993afb845f68d47e91ba4869840 +95eebe006bfc316810cb71da919e5d62c2cebb4ac99d8e8ef67be420302320465f8b69873470982de13a7c2e23516be9 +a55f8961295a11e91d1e5deadc0c06c15dacbfc67f04ccba1d069cba89d72aa3b3d64045579c3ea8991b150ac29366ae +b321991d12f6ac07a5de3c492841d1a27b0d3446082fbce93e7e1f9e8d8fe3b45d41253556261c21b70f5e189e1a7a6f +a0b0822f15f652ce7962a4f130104b97bf9529797c13d6bd8e24701c213cc37f18157bd07f3d0f3eae6b7cd1cb40401f +96e2fa4da378aa782cc2d5e6e465fc9e49b5c805ed01d560e9b98abb5c0de8b74a2e7bec3aa5e2887d25cccb12c66f0c +97e4ab610d414f9210ed6f35300285eb3ccff5b0b6a95ed33425100d7725e159708ea78704497624ca0a2dcabce3a2f9 +960a375b17bdb325761e01e88a3ea57026b2393e1d887b34b8fa5d2532928079ce88dc9fd06a728b26d2bb41b12b9032 +8328a1647398e832aadc05bd717487a2b6fcdaa0d4850d2c4da230c6a2ed44c3e78ec4837b6094f3813f1ee99414713f +aa283834ebd18e6c99229ce4b401eda83f01d904f250fedd4e24f1006f8fa0712a6a89a7296a9bf2ce8de30e28d1408e +b29e097f2caadae3e0f0ae3473c072b0cd0206cf6d2e9b22c1a5ad3e07d433e32bd09ed1f4e4276a2da4268633357b7f +9539c5cbba14538b2fe077ecf67694ef240da5249950baaabea0340718b882a966f66d97f08556b08a4320ceb2cc2629 +b4529f25e9b42ae8cf8338d2eface6ba5cd4b4d8da73af502d081388135c654c0b3afb3aa779ffc80b8c4c8f4425dd2b +95be0739c4330619fbe7ee2249c133c91d6c07eab846c18c5d6c85fc21ac5528c5d56dcb0145af68ed0c6a79f68f2ccd +ac0c83ea802227bfc23814a24655c9ff13f729619bcffdb487ccbbf029b8eaee709f8bddb98232ef33cd70e30e45ca47 +b503becb90acc93b1901e939059f93e671900ca52c6f64ae701d11ac891d3a050b505d89324ce267bc43ab8275da6ffe +98e3811b55b1bacb70aa409100abb1b870f67e6d059475d9f278c751b6e1e2e2d6f2e586c81a9fb6597fda06e7923274 +b0b0f61a44053fa6c715dbb0731e35d48dba257d134f851ee1b81fd49a5c51a90ebf5459ec6e489fce25da4f184fbdb1 +b1d2117fe811720bb997c7c93fe9e4260dc50fca8881b245b5e34f724aaf37ed970cdad4e8fcb68e05ac8cf55a274a53 +a10f502051968f14b02895393271776dee7a06db9de14effa0b3471825ba94c3f805302bdddac4d397d08456f620999d +a3dbad2ef060ae0bb7b02eaa4a13594f3f900450faa1854fc09620b01ac94ab896321dfb1157cf2374c27e5718e8026a +b550fdec503195ecb9e079dcdf0cad559d64d3c30818ef369b4907e813e689da316a74ad2422e391b4a8c2a2bef25fc0 +a25ba865e2ac8f28186cea497294c8649a201732ecb4620c4e77b8e887403119910423df061117e5f03fc5ba39042db1 +b3f88174e03fdb443dd6addd01303cf88a4369352520187c739fc5ae6b22fa99629c63c985b4383219dab6acc5f6f532 +97a7503248e31e81b10eb621ba8f5210c537ad11b539c96dfb7cf72b846c7fe81bd7532c5136095652a9618000b7f8d3 +a8bcdc1ce5aa8bfa683a2fc65c1e79de8ff5446695dcb8620f7350c26d2972a23da22889f9e2b1cacb3f688c6a2953dc +8458c111df2a37f5dd91a9bee6c6f4b79f4f161c93fe78075b24a35f9817da8dde71763218d627917a9f1f0c4709c1ed +ac5f061a0541152b876cbc10640f26f1cc923c9d4ae1b6621e4bb3bf2cec59bbf87363a4eb72fb0e5b6d4e1c269b52d5 +a9a25ca87006e8a9203cbb78a93f50a36694aa4aad468b8d80d3feff9194455ca559fcc63838128a0ab75ad78c07c13a +a450b85f5dfffa8b34dfd8bc985f921318efacf8857cf7948f93884ba09fb831482ee90a44224b1a41e859e19b74962f +8ed91e7f92f5c6d7a71708b6132f157ac226ecaf8662af7d7468a4fa25627302efe31e4620ad28719318923e3a59bf82 +ab524165fd4c71b1fd395467a14272bd2b568592deafa039d8492e9ef36c6d3f96927c95c72d410a768dc0b6d1fbbc9b +b662144505aa8432c75ffb8d10318526b6d5777ac7af9ebfad87d9b0866c364f7905a6352743bd8fd79ffd9d5dd4f3e6 +a48f1677550a5cd40663bb3ba8f84caaf8454f332d0ceb1d94dbea52d0412fe69c94997f7749929712fd3995298572f7 +8391cd6e2f6b0c242de1117a612be99776c3dc95cb800b187685ea5bf7e2722275eddb79fd7dfc8be8e389c4524cdf70 +875d3acb9af47833b72900bc0a2448999d638f153c5e97e8a14ec02d0c76f6264353a7e275e1f1a5855daced523d243b +91f1823657d30b59b2f627880a9a9cb530f5aca28a9fd217fe6f2f5133690dfe7ad5a897872e400512db2e788b3f7628 +ad3564332aa56cea84123fc7ca79ea70bb4fef2009fa131cb44e4b15e8613bd11ca1d83b9d9bf456e4b7fee9f2e8b017 +8c530b84001936d5ab366c84c0b105241a26d1fb163669f17c8f2e94776895c2870edf3e1bc8ccd04d5e65531471f695 +932d01fa174fdb0c366f1230cffde2571cc47485f37f23ba5a1825532190cc3b722aeb1f15aed62cf83ccae9403ba713 +88b28c20585aca50d10752e84b901b5c2d58efef5131479fbbe53de7bce2029e1423a494c0298e1497669bd55be97a5d +b914148ca717721144ebb3d3bf3fcea2cd44c30c5f7051b89d8001502f3856fef30ec167174d5b76265b55d70f8716b5 +81d0173821c6ddd2a068d70766d9103d1ee961c475156e0cbd67d54e668a796310474ef698c7ab55abe6f2cf76c14679 +8f28e8d78e2fe7fa66340c53718e0db4b84823c8cfb159c76eac032a62fb53da0a5d7e24ca656cf9d2a890cb2a216542 +8a26360335c73d1ab51cec3166c3cf23b9ea51e44a0ad631b0b0329ef55aaae555420348a544e18d5760969281759b61 +94f326a32ed287545b0515be9e08149eb0a565025074796d72387cc3a237e87979776410d78339e23ef3172ca43b2544 +a785d2961a2fa5e70bffa137858a92c48fe749fee91b02599a252b0cd50d311991a08efd7fa5e96b78d07e6e66ffe746 +94af9030b5ac792dd1ce517eaadcec1482206848bea4e09e55cc7f40fd64d4c2b3e9197027c5636b70d6122c51d2235d +9722869f7d1a3992850fe7be405ec93aa17dc4d35e9e257d2e469f46d2c5a59dbd504056c85ab83d541ad8c13e8bcd54 +b13c4088b61a06e2c03ac9813a75ff1f68ffdfee9df6a8f65095179a475e29cc49119cad2ce05862c3b1ac217f3aace9 +8c64d51774753623666b10ca1b0fe63ae42f82ed6aa26b81dc1d48c86937c5772eb1402624c52a154b86031854e1fb9f +b47e4df18002b7dac3fee945bf9c0503159e1b8aafcce2138818e140753011b6d09ef1b20894e08ba3006b093559061b +93cb5970076522c5a0483693f6a35ffd4ea2aa7aaf3730c4eccd6af6d1bebfc1122fc4c67d53898ae13eb6db647be7e2 +a68873ef80986795ea5ed1a597d1cd99ed978ec25e0abb57fdcc96e89ef0f50aeb779ff46e3dce21dc83ada3157a8498 +8cab67f50949cc8eee6710e27358aea373aae3c92849f8f0b5531c080a6300cdf2c2094fe6fecfef6148de0d28446919 +993e932bcb616dbaa7ad18a4439e0565211d31071ef1b85a0627db74a05d978c60d507695eaeea5c7bd9868a21d06923 +acdadff26e3132d9478a818ef770e9fa0d2b56c6f5f48bd3bd674436ccce9bdfc34db884a73a30c04c5f5e9764cb2218 +a0d3e64c9c71f84c0eef9d7a9cb4fa184224b969db5514d678e93e00f98b41595588ca802643ea225512a4a272f5f534 +91c9140c9e1ba6e330cb08f6b2ce4809cd0d5a0f0516f70032bf30e912b0ed684d07b413b326ab531ee7e5b4668c799b +87bc2ee7a0c21ba8334cd098e35cb703f9af57f35e091b8151b9b63c3a5b0f89bd7701dbd44f644ea475901fa6d9ef08 +9325ccbf64bf5d71b303e31ee85d486298f9802c5e55b2c3d75427097bf8f60fa2ab4fcaffa9b60bf922c3e24fbd4b19 +95d0506e898318f3dc8d28d16dfd9f0038b54798838b3c9be2a2ae3c2bf204eb496166353fc042220b0bd4f6673b9285 +811de529416331fe9c416726d45df9434c29dcd7e949045eb15740f47e97dde8f31489242200e19922cac2a8b7c6fd1f +ade632d04a4c8bbab6ca7df370b2213cb9225023e7973f0e29f4f5e52e8aeaabc65171306bbdd12a67b195dfbb96d48f +88b7f029e079b6ae956042c0ea75d53088c5d0efd750dd018adaeacf46be21bf990897c58578c491f41afd3978d08073 +91f477802de507ffd2be3f4319903119225b277ad24f74eb50f28b66c14d32fae53c7edb8c7590704741af7f7f3e3654 +809838b32bb4f4d0237e98108320d4b079ee16ed80c567e7548bd37e4d7915b1192880f4812ac0e00476d246aec1dbc8 +84183b5fc4a7997a8ae5afedb4d21dce69c480d5966b5cbdafd6dd10d29a9a6377f3b90ce44da0eb8b176ac3af0253bb +8508abbf6d3739a16b9165caf0f95afb3b3ac1b8c38d6d374cf0c91296e2c1809a99772492b539cda184510bce8a0271 +8722054e59bab2062e6419a6e45fc803af77fde912ef2cd23055ad0484963de65a816a2debe1693d93c18218d2b8e81a +8e895f80e485a7c4f56827bf53d34b956281cdc74856c21eb3b51f6288c01cc3d08565a11cc6f3e2604775885490e8c5 +afc92714771b7aa6e60f3aee12efd9c2595e9659797452f0c1e99519f67c8bc3ac567119c1ddfe82a3e961ee9defea9a +818ff0fd9cefd32db87b259e5fa32967201016fc02ef44116cdca3c63ce5e637756f60477a408709928444a8ad69c471 +8251e29af4c61ae806fc5d032347fb332a94d472038149225298389495139ce5678fae739d02dfe53a231598a992e728 +a0ea39574b26643f6f1f48f99f276a8a64b5481989cfb2936f9432a3f8ef5075abfe5c067dc5512143ce8bf933984097 +af67a73911b372bf04e57e21f289fc6c3dfac366c6a01409b6e76fea4769bdb07a6940e52e8d7d3078f235c6d2f632c6 +b5291484ef336024dd2b9b4cf4d3a6b751133a40656d0a0825bcc6d41c21b1c79cb50b0e8f4693f90c29c8f4358641f9 +8bc0d9754d70f2cb9c63f991902165a87c6535a763d5eece43143b5064ae0bcdce7c7a8f398f2c1c29167b2d5a3e6867 +8d7faff53579ec8f6c92f661c399614cc35276971752ce0623270f88be937c414eddcb0997e14724a783905a026c8883 +9310b5f6e675fdf60796f814dbaa5a6e7e9029a61c395761e330d9348a7efab992e4e115c8be3a43d08e90d21290c892 +b5eb4f3eb646038ad2a020f0a42202532d4932e766da82b2c1002bf9c9c2e5336b54c8c0ffcc0e02d19dde2e6a35b6cc +91dabfd30a66710f1f37a891136c9be1e23af4abf8cb751f512a40c022a35f8e0a4fb05b17ec36d4208de02d56f0d53a +b3ded14e82d62ac7a5a036122a62f00ff8308498f3feae57d861babaff5a6628d43f0a0c5fc903f10936bcf4e2758ceb +a88e8348fed2b26acca6784d19ef27c75963450d99651d11a950ea81d4b93acd2c43e0ecce100eaf7e78508263d5baf3 +b1f5bbf7c4756877b87bb42163ac570e08c6667c4528bf68b5976680e19beeff7c5effd17009b0718797077e2955457a +ad2e7b516243f915d4d1415326e98b1a7390ae88897d0b03b66c2d9bd8c3fba283d7e8fe44ed3333296a736454cef6d8 +8f82eae096d5b11f995de6724a9af895f5e1c58d593845ad16ce8fcae8507e0d8e2b2348a0f50a1f66a17fd6fac51a5c +890e4404d0657c6c1ee14e1aac132ecf7a568bb3e04137b85ac0f84f1d333bd94993e8750f88eee033a33fb00f85dcc7 +82ac7d3385e035115f1d39a99fc73e5919de44f5e6424579776d118d711c8120b8e5916372c6f27bed4cc64cac170b6c +85ee16d8901c272cfbbe966e724b7a891c1bd5e68efd5d863043ad8520fc409080af61fd726adc680b3f1186fe0ac8b8 +86dc564c9b545567483b43a38f24c41c6551a49cabeebb58ce86404662a12dbfafd0778d30d26e1c93ce222e547e3898 +a29f5b4522db26d88f5f95f18d459f8feefab02e380c2edb65aa0617a82a3c1a89474727a951cef5f15050bcf7b380fb +a1ce039c8f6cac53352899edb0e3a72c76da143564ad1a44858bd7ee88552e2fe6858d1593bbd74aeee5a6f8034b9b9d +97f10d77983f088286bd7ef3e7fdd8fa275a56bec19919adf33cf939a90c8f2967d2b1b6fc51195cb45ad561202a3ed7 +a25e2772e8c911aaf8712bdac1dd40ee061c84d3d224c466cfaae8e5c99604053f940cde259bd1c3b8b69595781dbfec +b31bb95a0388595149409c48781174c340960d59032ab2b47689911d03c68f77a2273576fbe0c2bf4553e330656058c7 +b8b2e9287ad803fb185a13f0d7456b397d4e3c8ad5078f57f49e8beb2e85f661356a3392dbd7bcf6a900baa5582b86a1 +a3d0893923455eb6e96cc414341cac33d2dbc88fba821ac672708cce131761d85a0e08286663a32828244febfcae6451 +82310cb42f647d99a136014a9f881eb0b9791efd2e01fc1841907ad3fc8a9654d3d1dab6689c3607214b4dc2aca01cee +874022d99c16f60c22de1b094532a0bc6d4de700ad01a31798fac1d5088b9a42ad02bef8a7339af7ed9c0d4f16b186ee +94981369e120265aed40910eebc37eded481e90f4596b8d57c3bec790ab7f929784bd33ddd05b7870aad6c02e869603b +a4f1f50e1e2a73f07095e0dd31cb45154f24968dae967e38962341c1241bcd473102fff1ff668b20c6547e9732d11701 +ae2328f3b0ad79fcda807e69a1b5278145225083f150f67511dafc97e079f860c3392675f1752ae7e864c056e592205b +875d8c971e593ca79552c43d55c8c73b17cd20c81ff2c2fed1eb19b1b91e4a3a83d32df150dbfd5db1092d0aebde1e1f +add2e80aa46aae95da73a11f130f4bda339db028e24c9b11e5316e75ba5e63bc991d2a1da172c7c8e8fee038baae3433 +b46dbe1cb3424002aa7de51e82f600852248e251465c440695d52538d3f36828ff46c90ed77fc1d11534fe3c487df8ef +a5e5045d28b4e83d0055863c30c056628c58d4657e6176fd0536f5933f723d60e851bb726d5bf3c546b8ce4ac4a57ef8 +91fec01e86dd1537e498fff7536ea3ca012058b145f29d9ada49370cd7b7193ac380e116989515df1b94b74a55c45df3 +a7428176d6918cd916a310bdc75483c72de660df48cac4e6e7478eef03205f1827ea55afc0df5d5fa7567d14bbea7fc9 +851d89bef45d9761fe5fdb62972209335193610015e16a675149519f9911373bac0919add226ef118d9f3669cfdf4734 +b74acf5c149d0042021cb2422ea022be4c4f72a77855f42393e71ffd12ebb3eec16bdf16f812159b67b79a9706e7156d +99f35dce64ec99aa595e7894b55ce7b5a435851b396e79036ffb249c28206087db4c85379df666c4d95857db02e21ff9 +b6b9a384f70db9e298415b8ab394ee625dafff04be2886476e59df8d052ca832d11ac68a9b93fba7ab055b7bc36948a4 +898ee4aefa923ffec9e79f2219c7389663eb11eb5b49014e04ed4a336399f6ea1691051d86991f4c46ca65bcd4fdf359 +b0f948217b0d65df7599a0ba4654a5e43c84db477936276e6f11c8981efc6eaf14c90d3650107ed4c09af4cc8ec11137 +aa6286e27ac54f73e63dbf6f41865dd94d24bc0cf732262fcaff67319d162bb43af909f6f8ee27b1971939cfbba08141 +8bca7cdf730cf56c7b2c8a2c4879d61361a6e1dba5a3681a1a16c17a56e168ace0e99cf0d15826a1f5e67e6b8a8a049a +a746d876e8b1ce225fcafca603b099b36504846961526589af977a88c60d31ba2cc56e66a3dec8a77b3f3531bf7524c9 +a11e2e1927e6704cdb8874c75e4f1842cef84d7d43d7a38e339e61dc8ba90e61bbb20dd3c12e0b11d2471d58eed245be +a36395e22bc1d1ba8b0459a235203177737397da5643ce54ded3459d0869ff6d8d89f50c73cb62394bf66a959cde9b90 +8b49f12ba2fdf9aca7e5f81d45c07d47f9302a2655610e7634d1e4bd16048381a45ef2c95a8dd5b0715e4b7cf42273af +91cffa2a17e64eb7f76bccbe4e87280ee1dd244e04a3c9eac12e15d2d04845d876eb24fe2ec6d6d266cce9efb281077f +a6b8afabf65f2dee01788114e33a2f3ce25376fb47a50b74da7c3c25ff1fdc8aa9f41307534abbf48acb6f7466068f69 +8d13db896ccfea403bd6441191995c1a65365cab7d0b97fbe9526da3f45a877bd1f4ef2edef160e8a56838cd1586330e +98c717de9e01bef8842c162a5e757fe8552d53269c84862f4d451e7c656ae6f2ae473767b04290b134773f63be6fdb9d +8c2036ace1920bd13cf018e82848c49eb511fad65fd0ff51f4e4b50cf3bfc294afb63cba682c16f52fb595a98fa84970 +a3520fdff05dbad9e12551b0896922e375f9e5589368bcb2cc303bde252743b74460cb5caf99629325d3620f13adc796 +8d4f83a5bfec05caf5910e0ce538ee9816ee18d0bd44c1d0da2a87715a23cd2733ad4d47552c6dc0eb397687d611dd19 +a7b39a0a6a02823452d376533f39d35029867b3c9a6ad6bca181f18c54132d675613a700f9db2440fb1b4fa13c8bf18a +80bcb114b2544b80f404a200fc36860ed5e1ad31fe551acd4661d09730c452831751baa9b19d7d311600d267086a70bc +90dcce03c6f88fc2b08f2b42771eedde90cc5330fe0336e46c1a7d1b5a6c1641e5fcc4e7b3d5db00bd8afca9ec66ed81 +aec15f40805065c98e2965b1ae12a6c9020cfdb094c2d0549acfc7ea2401a5fb48d3ea7d41133cf37c4e096e7ff53eb9 +80e129b735dba49fa627a615d6c273119acec8e219b2f2c4373a332b5f98d66cbbdd688dfbe72a8f8bfefaccc02c50c1 +a9b596da3bdfe23e6799ece5f7975bf7a1979a75f4f546deeaf8b34dfe3e0d623217cb4cf4ccd504cfa3625b88cd53f1 +abcbbb70b16f6e517c0ab4363ab76b46e4ff58576b5f8340e5c0e8cc0e02621b6e23d742d73b015822a238b17cfd7665 +a046937cc6ea6a2e1adae543353a9fe929c1ae4ad655be1cc051378482cf88b041e28b1e9a577e6ccff2d3570f55e200 +831279437282f315e65a60184ef158f0a3dddc15a648dc552bdc88b3e6fe8288d3cfe9f0031846d81350f5e7874b4b33 +993d7916fa213c6d66e7c4cafafc1eaec9a2a86981f91c31eb8a69c5df076c789cbf498a24c84e0ee77af95b42145026 +823907a3b6719f8d49b3a4b7c181bd9bb29fcf842d7c70660c4f351852a1e197ca46cf5e879b47fa55f616fa2b87ce5e +8d228244e26132b234930ee14c75d88df0943cdb9c276a8faf167d259b7efc1beec2a87c112a6c608ad1600a239e9aae +ab6e55766e5bfb0cf0764ed909a8473ab5047d3388b4f46faeba2d1425c4754c55c6daf6ad4751e634c618b53e549529 +ab0cab6860e55a84c5ad2948a7e0989e2b4b1fd637605634b118361497332df32d9549cb854b2327ca54f2bcb85eed8f +b086b349ae03ef34f4b25a57bcaa5d1b29bd94f9ebf87e22be475adfe475c51a1230c1ebe13506cb72c4186192451658 +8a0b49d8a254ca6d91500f449cbbfbb69bb516c6948ac06808c65595e46773e346f97a5ce0ef7e5a5e0de278af22709c +ac49de11edaaf04302c73c578cc0824bdd165c0d6321be1c421c1950e68e4f3589aa3995448c9699e93c6ebae8803e27 +884f02d841cb5d8f4c60d1402469216b114ab4e93550b5bc1431756e365c4f870a9853449285384a6fa49e12ce6dc654 +b75f3a28fa2cc8d36b49130cb7448a23d73a7311d0185ba803ad55c8219741d451c110f48b786e96c728bc525903a54f +80ae04dbd41f4a35e33f9de413b6ad518af0919e5a30cb0fa1b061b260420780bb674f828d37fd3b52b5a31673cbd803 +b9a8011eb5fcea766907029bf743b45262db3e49d24f84503687e838651ed11cb64c66281e20a0ae9f6aa51acc552263 +90bfdd75e2dc9cf013e22a5d55d2d2b8a754c96103a17524488e01206e67f8b6d52b1be8c4e3d5307d4fe06d0e51f54c +b4af353a19b06203a815ec43e79a88578cc678c46f5a954b85bc5c53b84059dddba731f3d463c23bfd5273885c7c56a4 +aa125e96d4553b64f7140e5453ff5d2330318b69d74d37d283e84c26ad672fa00e3f71e530eb7e28be1e94afb9c4612e +a18e060aee3d49cde2389b10888696436bb7949a79ca7d728be6456a356ea5541b55492b2138da90108bd1ce0e6f5524 +93e55f92bdbccc2de655d14b1526836ea2e52dba65eb3f87823dd458a4cb5079bf22ce6ef625cb6d6bfdd0995ab9a874 +89f5a683526b90c1c3ceebbb8dc824b21cff851ce3531b164f6626e326d98b27d3e1d50982e507d84a99b1e04e86a915 +83d1c38800361633a3f742b1cb2bfc528129496e80232611682ddbe403e92c2ac5373aea0bca93ecb5128b0b2b7a719e +8ecba560ac94905e19ce8d9c7af217bf0a145d8c8bd38e2db82f5e94cc3f2f26f55819176376b51f154b4aab22056059 +a7e2a4a002b60291924850642e703232994acb4cfb90f07c94d1e0ecd2257bb583443283c20fc6017c37e6bfe85b7366 +93ed7316fa50b528f1636fc6507683a672f4f4403e55e94663f91221cc198199595bd02eef43d609f451acc9d9b36a24 +a1220a8ebc5c50ceed76a74bc3b7e0aa77f6884c71b64b67c4310ac29ce5526cb8992d6abc13ef6c8413ce62486a6795 +b2f6eac5c869ad7f4a25161d3347093e2f70e66cd925032747e901189355022fab3038bca4d610d2f68feb7e719c110b +b703fa11a4d511ca01c7462979a94acb40b5d933759199af42670eb48f83df202fa0c943f6ab3b4e1cc54673ea3aab1e +b5422912afbfcb901f84791b04f1ddb3c3fbdc76d961ee2a00c5c320e06d3cc5b5909c3bb805df66c5f10c47a292b13d +ad0934368da823302e1ac08e3ede74b05dfdbfffca203e97ffb0282c226814b65c142e6e15ec1e754518f221f01b30f7 +a1dd302a02e37df15bf2f1147efe0e3c06933a5a767d2d030e1132f5c3ce6b98e216b6145eb39e1e2f74e76a83165b8d +a346aab07564432f802ae44738049a36f7ca4056df2d8f110dbe7fef4a3e047684dea609b2d03dc6bf917c9c2a47608f +b96c5f682a5f5d02123568e50f5d0d186e4b2c4c9b956ec7aabac1b3e4a766d78d19bd111adb5176b898e916e49be2aa +8a96676d56876fc85538db2e806e1cba20fd01aeb9fa3cb43ca6ca94a2c102639f65660db330e5d74a029bb72d6a0b39 +ab0048336bd5c3def1a4064eadd49e66480c1f2abb4df46e03afbd8a3342c2c9d74ee35d79f08f4768c1646681440984 +888427bdf76caec90814c57ee1c3210a97d107dd88f7256f14f883ad0f392334b82be11e36dd8bfec2b37935177c7831 +b622b282becf0094a1916fa658429a5292ba30fb48a4c8066ce1ddcefb71037948262a01c95bab6929ed3a76ba5db9fe +b5b9e005c1f456b6a368a3097634fb455723abe95433a186e8278dceb79d4ca2fbe21f8002e80027b3c531e5bf494629 +a3c6707117a1e48697ed41062897f55d8119403eea6c2ee88f60180f6526f45172664bfee96bf61d6ec0b7fbae6aa058 +b02a9567386a4fbbdb772d8a27057b0be210447348efe6feb935ceec81f361ed2c0c211e54787dc617cdffed6b4a6652 +a9b8364e40ef15c3b5902e5534998997b8493064fa2bea99600def58279bb0f64574c09ba11e9f6f669a8354dd79dc85 +9998a2e553a9aa9a206518fae2bc8b90329ee59ab23005b10972712389f2ec0ee746033c733092ffe43d73d33abbb8ef +843a4b34d9039bf79df96d79f2d15e8d755affb4d83d61872daf540b68c0a3888cf8fc00d5b8b247b38524bcb3b5a856 +84f7128920c1b0bb40eee95701d30e6fc3a83b7bb3709f16d97e72acbb6057004ee7ac8e8f575936ca9dcb7866ab45f7 +918d3e2222e10e05edb34728162a899ad5ada0aaa491aeb7c81572a9c0d506e31d5390e1803a91ff3bd8e2bb15d47f31 +9442d18e2489613a7d47bb1cb803c8d6f3259d088cd079460976d87f7905ee07dea8f371b2537f6e1d792d36d7e42723 +b491976970fe091995b2ed86d629126523ccf3e9daf8145302faca71b5a71a5da92e0e05b62d7139d3efac5c4e367584 +aa628006235dc77c14cef4c04a308d66b07ac92d377df3de1a2e6ecfe3144f2219ad6d7795e671e1cb37a3641910b940 +99d386adaea5d4981d7306feecac9a555b74ffdc218c907c5aa7ac04abaead0ec2a8237300d42a3fbc464673e417ceed +8f78e8b1556f9d739648ea3cab9606f8328b52877fe72f9305545a73b74d49884044ba9c1f1c6db7d9b7c7b7c661caba +8fb357ae49932d0babdf74fc7aa7464a65d3b6a2b3acf4f550b99601d3c0215900cfd67f2b6651ef94cfc323bac79fae +9906f2fa25c0290775aa001fb6198113d53804262454ae8b83ef371b5271bde189c0460a645829cb6c59f9ee3a55ce4d +8f4379b3ebb50e052325b27655ca6a82e6f00b87bf0d2b680d205dd2c7afdc9ff32a9047ae71a1cdf0d0ce6b9474d878 +a85534e88c2bd43c043792eaa75e50914b21741a566635e0e107ae857aed0412035f7576cf04488ade16fd3f35fdbb87 +b4ce93199966d3c23251ca7f28ec5af7efea1763d376b0385352ffb2e0a462ef95c69940950278cf0e3dafd638b7bd36 +b10cb3d0317dd570aa73129f4acf63c256816f007607c19b423fb42f65133ce21f2f517e0afb41a5378cccf893ae14d0 +a9b231c9f739f7f914e5d943ed9bff7eba9e2c333fbd7c34eb1648a362ee01a01af6e2f7c35c9fe962b11152cddf35de +99ff6a899e156732937fb81c0cced80ae13d2d44c40ba99ac183aa246103b31ec084594b1b7feb96da58f4be2dd5c0ed +8748d15d18b75ff2596f50d6a9c4ce82f61ecbcee123a6ceae0e43cab3012a29b6f83cf67b48c22f6f9d757c6caf76b2 +b88ab05e4248b7fb634cf640a4e6a945d13e331237410f7217d3d17e3e384ddd48897e7a91e4516f1b9cbd30f35f238b +8d826deaeeb84a3b2d2c04c2300ca592501f992810582d6ae993e0d52f6283a839dba66c6c72278cff5871802b71173b +b36fed027c2f05a5ef625ca00b0364b930901e9e4420975b111858d0941f60e205546474bb25d6bfa6928d37305ae95f +af2fcfc6b87967567e8b8a13a4ed914478185705724e56ce68fb2df6d1576a0cf34a61e880997a0d35dc2c3276ff7501 +ac351b919cd1fbf106feb8af2c67692bfcddc84762d18cea681cfa7470a5644839caace27efee5f38c87d3df306f4211 +8d6665fb1d4d8d1fa23bd9b8a86e043b8555663519caac214d1e3e3effbc6bee7f2bcf21e645f77de0ced279d69a8a8b +a9fc1c2061756b2a1a169c1b149f212ff7f0d2488acd1c5a0197eba793cffa593fc6d1d1b40718aa75ca3ec77eff10e1 +aff64f0fa009c7a6cf0b8d7a22ddb2c8170c3cb3eec082e60d5aadb00b0040443be8936d728d99581e33c22178c41c87 +82e0b181adc5e3b1c87ff8598447260e839d53debfae941ebea38265575546c3a74a14b4325a030833a62ff6c52d9365 +b7ad43cbb22f6f892c2a1548a41dc120ab1f4e1b8dea0cb6272dd9cb02054c542ecabc582f7e16de709d48f5166cae86 +985e0c61094281532c4afb788ecb2dfcba998e974b5d4257a22040a161883908cdd068fe80f8eb49b8953cfd11acf43a +ae46895c6d67ea6d469b6c9c07b9e5d295d9ae73b22e30da4ba2c973ba83a130d7eef39717ec9d0f36e81d56bf742671 +8600177ea1f7e7ef90514b38b219a37dedfc39cb83297e4c7a5b479817ef56479d48cf6314820960c751183f6edf8b0e +b9208ec1c1d7a1e99b59c62d3e4e61dfb706b0e940d09d3abfc3454c19749083260614d89cfd7e822596c3cdbcc6bb95 +a1e94042c796c2b48bc724352d2e9f3a22291d9a34705993357ddb6adabd76da6fc25dac200a8cb0b5bbd99ecddb7af6 +b29c3adedd0bcad8a930625bc4dfdc3552a9afd5ca6dd9c0d758f978068c7982b50b711aa0eb5b97f2b84ee784637835 +af0632a238bb1f413c7ea8e9b4c3d68f2827bd2e38cd56024391fba6446ac5d19a780d0cfd4a78fe497d537b766a591a +aaf6e7f7d54f8ef5e2e45dd59774ecbeecf8683aa70483b2a75be6a6071b5981bbaf1627512a65d212817acdfab2e428 +8c751496065da2e927cf492aa5ca9013b24f861d5e6c24b30bbf52ec5aaf1905f40f9a28175faef283dd4ed4f2182a09 +8952377d8e80a85cf67d6b45499f3bad5fd452ea7bcd99efc1b066c4720d8e5bff1214cea90fd1f972a7f0baac3d29be +a1946ee543d1a6e21f380453be4d446e4130950c5fc3d075794eb8260f6f52d0a795c1ff91d028a648dc1ce7d9ab6b47 +89f3fefe37af31e0c17533d2ca1ce0884cc1dc97c15cbfab9c331b8debd94781c9396abef4bb2f163d09277a08d6adf0 +a2753f1e6e1a154fb117100a5bd9052137add85961f8158830ac20541ab12227d83887d10acf7fd36dcaf7c2596d8d23 +814955b4198933ee11c3883863b06ff98c7eceb21fc3e09df5f916107827ccf3323141983e74b025f46ae00284c9513b +8cc5c6bb429073bfef47cae7b3bfccb0ffa076514d91a1862c6bda4d581e0df87db53cc6c130bf8a7826304960f5a34e +909f22c1f1cdc87f7be7439c831a73484a49acbf8f23d47087d7cf867c64ef61da3bde85dc57d705682b4c3fc710d36e +8048fee7f276fcd504aed91284f28e73693615e0eb3858fa44bcf79d7285a9001c373b3ef71d9a3054817ba293ebe28c +94400e5cf5d2700ca608c5fe35ce14623f71cc24959f2bc27ca3684092850f76b67fb1f07ca9e5b2ca3062cf8ad17bd4 +81c2ae7d4d1b17f8b6de6a0430acc0d58260993980fe48dc2129c4948269cdc74f9dbfbf9c26b19360823fd913083d48 +8c41fe765128e63f6889d6a979f6a4342300327c8b245a8cfe3ecfbcac1e09c3da30e2a1045b24b78efc6d6d50c8c6ac +a5dd4ae51ae48c8be4b218c312ade226cffce671cf121cb77810f6c0990768d6dd767badecb5c69921d5574d5e8433d3 +b7642e325f4ba97ae2a39c1c9d97b35aafd49d53dba36aed3f3cb0ca816480b3394079f46a48252d46596559c90f4d58 +ae87375b40f35519e7bd4b1b2f73cd0b329b0c2cb9d616629342a71c6c304338445eda069b78ea0fbe44087f3de91e09 +b08918cb6f736855e11d3daca1ddfbdd61c9589b203b5493143227bf48e2c77c2e8c94b0d1aa2fab2226e0eae83f2681 +ac36b84a4ac2ebd4d6591923a449c564e3be8a664c46092c09e875c2998eba16b5d32bfd0882fd3851762868e669f0b1 +a44800a3bb192066fa17a3f29029a23697240467053b5aa49b9839fb9b9b8b12bcdcbfc557f024b61f4f51a9aacdefcb +9064c688fec23441a274cdf2075e5a449caf5c7363cc5e8a5dc9747183d2e00a0c69f2e6b3f6a7057079c46014c93b3b +aa367b021469af9f5b764a79bb3afbe2d87fe1e51862221672d1a66f954b165778b7c27a705e0f93841fab4c8468344d +a1a8bfc593d4ab71f91640bc824de5c1380ab2591cfdafcbc78a14b32de3c0e15f9d1b461d85c504baa3d4232c16bb53 +97df48da1799430f528184d30b6baa90c2a2f88f34cdfb342d715339c5ebd6d019aa693cea7c4993daafc9849063a3aa +abd923831fbb427e06e0dd335253178a9e5791395c84d0ab1433c07c53c1209161097e9582fb8736f8a60bde62d8693e +84cd1a43f1a438b43dc60ffc775f646937c4f6871438163905a3cebf1115f814ccd38a6ccb134130bff226306e412f32 +91426065996b0743c5f689eb3ca68a9f7b9e4d01f6c5a2652b57fa9a03d8dc7cd4bdbdab0ca5a891fee1e97a7f00cf02 +a4bee50249db3df7fd75162b28f04e57c678ba142ce4d3def2bc17bcb29e4670284a45f218dad3969af466c62a903757 +83141ebcc94d4681404e8b67a12a46374fded6df92b506aff3490d875919631408b369823a08b271d006d5b93136f317 +a0ea1c8883d58d5a784da3d8c8a880061adea796d7505c1f903d07c287c5467f71e4563fc0faafbc15b5a5538b0a7559 +89d9d480574f201a87269d26fb114278ed2c446328df431dc3556e3500e80e4cd01fcac196a2459d8646361ebda840df +8bf302978973632dd464bec819bdb91304712a3ec859be071e662040620422c6e75eba6f864f764cffa2799272efec39 +922f666bc0fd58b6d7d815c0ae4f66d193d32fc8382c631037f59eeaeae9a8ca6c72d08e72944cf9e800b8d639094e77 +81ad8714f491cdff7fe4399f2eb20e32650cff2999dd45b9b3d996d54a4aba24cc6c451212e78c9e5550368a1a38fb3f +b58fcf4659d73edb73175bd9139d18254e94c3e32031b5d4b026f2ed37aa19dca17ec2eb54c14340231615277a9d347e +b365ac9c2bfe409b710928c646ea2fb15b28557e0f089d39878e365589b9d1c34baf5566d20bb28b33bb60fa133f6eff +8fcae1d75b53ab470be805f39630d204853ca1629a14158bac2f52632277d77458dec204ff84b7b2d77e641c2045be65 +a03efa6bebe84f4f958a56e2d76b5ba4f95dd9ed7eb479edc7cc5e646c8d4792e5b0dfc66cc86aa4b4afe2f7a4850760 +af1c823930a3638975fb0cc5c59651771b2719119c3cd08404fbd4ce77a74d708cefbe3c56ea08c48f5f10e6907f338f +8260c8299b17898032c761c325ac9cabb4c5b7e735de81eacf244f647a45fb385012f4f8df743128888c29aefcaaad16 +ab2f37a573c82e96a8d46198691cd694dfa860615625f477e41f91b879bc58a745784fccd8ffa13065834ffd150d881d +986c746c9b4249352d8e5c629e8d7d05e716b3c7aab5e529ca969dd1e984a14b5be41528baef4c85d2369a42d7209216 +b25e32da1a8adddf2a6080725818b75bc67240728ad1853d90738485d8924ea1e202df0a3034a60ffae6f965ec55cf63 +a266e627afcebcefea6b6b44cbc50f5c508f7187e87d047b0450871c2a030042c9e376f3ede0afcf9d1952f089582f71 +86c3bbca4c0300606071c0a80dbdec21ce1dd4d8d4309648151c420854032dff1241a1677d1cd5de4e4de4385efda986 +b9a21a1fe2d1f3273a8e4a9185abf2ff86448cc98bfa435e3d68306a2b8b4a6a3ea33a155be3cb62a2170a86f77679a5 +b117b1ea381adce87d8b342cba3a15d492ff2d644afa28f22424cb9cbc820d4f7693dfc1a4d1b3697046c300e1c9b4c8 +9004c425a2e68870d6c69b658c344e3aa3a86a8914ee08d72b2f95c2e2d8a4c7bb0c6e7e271460c0e637cec11117bf8e +86a18aa4783b9ebd9131580c8b17994825f27f4ac427b0929a1e0236907732a1c8139e98112c605488ee95f48bbefbfc +84042243b955286482ab6f0b5df4c2d73571ada00716d2f737ca05a0d2e88c6349e8ee9e67934cfee4a1775dbf7f4800 +92c2153a4733a62e4e1d5b60369f3c26777c7d01cd3c8679212660d572bd3bac9b8a8a64e1f10f7dbf5eaa7579c4e423 +918454b6bb8e44a2afa144695ba8d48ae08d0cdfef4ad078f67709eddf3bb31191e8b006f04e82ea45a54715ef4d5817 +acf0b54f6bf34cf6ed6c2b39cf43194a40d68de6bcf1e4b82c34c15a1343e9ac3737885e1a30b78d01fa3a5125463db8 +a7d60dbe4b6a7b054f7afe9ee5cbbfeca0d05dc619e6041fa2296b549322529faddb8a11e949562309aecefb842ac380 +91ffb53e6d7e5f11159eaf13e783d6dbdfdb1698ed1e6dbf3413c6ea23492bbb9e0932230a9e2caac8fe899a17682795 +b6e8d7be5076ee3565d5765a710c5ecf17921dd3cf555c375d01e958a365ae087d4a88da492a5fb81838b7b92bf01143 +a8c6b763de2d4b2ed42102ef64eccfef31e2fb2a8a2776241c82912fa50fc9f77f175b6d109a97ede331307c016a4b1a +99839f86cb700c297c58bc33e28d46b92931961548deac29ba8df91d3e11721b10ea956c8e16984f9e4acf1298a79b37 +8c2e2c338f25ea5c25756b7131cde0d9a2b35abf5d90781180a00fe4b8e64e62590dc63fe10a57fba3a31c76d784eb01 +9687d7df2f41319ca5469d91978fed0565a5f11f829ebadaa83db92b221755f76c6eacd7700735e75c91e257087512e3 +8795fdfb7ff8439c58b9bf58ed53873d2780d3939b902b9ddaaa4c99447224ced9206c3039a23c2c44bcc461e2bb637f +a803697b744d2d087f4e2307218d48fa88620cf25529db9ce71e2e3bbcc65bac5e8bb9be04777ef7bfb5ed1a5b8e6170 +80f3d3efbbb9346ddd413f0a8e36b269eb5d7ff6809d5525ff9a47c4bcab2c01b70018b117f6fe05253775612ff70c6b +9050e0e45bcc83930d4c505af35e5e4d7ca01cd8681cba92eb55821aececcebe32bb692ebe1a4daac4e7472975671067 +8d206812aac42742dbaf233e0c080b3d1b30943b54b60283515da005de05ea5caa90f91fedcfcba72e922f64d7040189 +a2d44faaeb2eff7915c83f32b13ca6f31a6847b1c1ce114ea240bac3595eded89f09b2313b7915ad882292e2b586d5b4 +961776c8576030c39f214ea6e0a3e8b3d32f023d2600958c098c95c8a4e374deeb2b9dc522adfbd6bda5949bdc09e2a2 +993fa7d8447407af0fbcd9e6d77f815fa5233ab00674efbcf74a1f51c37481445ae291cc7b76db7c178f9cb0e570e0fc +abd5b1c78e05f9d7c8cc99bdaef8b0b6a57f2daf0f02bf492bec48ea4a27a8f1e38b5854da96efff11973326ff980f92 +8f15af4764bc275e6ccb892b3a4362cacb4e175b1526a9a99944e692fe6ccb1b4fc19abf312bb2a089cb1f344d91a779 +a09b27ccd71855512aba1d0c30a79ffbe7f6707a55978f3ced50e674b511a79a446dbc6d7946add421ce111135a460af +94b2f98ce86a9271fbd4153e1fc37de48421fe3490fb3840c00f2d5a4d0ba8810c6a32880b002f6374b59e0a7952518b +8650ac644f93bbcb88a6a0f49fee2663297fd4bc6fd47b6a89b9d8038d32370438ab3a4775ec9b58cb10aea8a95ef7b6 +95e5c2f2e84eed88c6980bbba5a1c0bb375d5a628bff006f7516d45bb7d723da676add4fdd45956f312e7bab0f052644 +b3278a3fa377ac93af7cfc9453f8cb594aae04269bbc99d2e0e45472ff4b6a2f97a26c4c57bf675b9d86f5e77a5d55d1 +b4bcbe6eb666a206e2ea2f877912c1d3b5bdbd08a989fc4490eb06013e1a69ad1ba08bcdac048bf29192312be399077b +a76d70b78c99fffcbf9bb9886eab40f1ea4f99a309710b660b64cbf86057cbcb644d243f6e341711bb7ef0fedf0435a7 +b2093c1ee945dca7ac76ad5aed08eae23af31dd5a77c903fd7b6f051f4ab84425d33a03c3d45bf2907bc93c02d1f3ad8 +904b1f7534e053a265b22d20be859912b9c9ccb303af9a8d6f1d8f6ccdc5c53eb4a45a1762b880d8444d9be0cd55e7f9 +8f664a965d65bc730c9ef1ec7467be984d4b8eb46bd9b0d64e38e48f94e6e55dda19aeac82cbcf4e1473440e64c4ca18 +8bcee65c4cc7a7799353d07b114c718a2aae0cd10a3f22b7eead5185d159dafd64852cb63924bf87627d176228878bce +8c78f2e3675096fef7ebaa898d2615cd50d39ca3d8f02b9bdfb07e67da648ae4be3da64838dffc5935fd72962c4b96c7 +8c40afd3701629421fec1df1aac4e849384ef2e80472c0e28d36cb1327acdf2826f99b357f3d7afdbc58a6347fc40b3c +a197813b1c65a8ea5754ef782522a57d63433ef752215ecda1e7da76b0412ee619f58d904abd2e07e0c097048b6ae1dd +a670542629e4333884ad7410f9ea3bd6f988df4a8f8a424ca74b9add2312586900cf9ae8bd50411f9146e82626b4af56 +a19875cc07ab84e569d98b8b67fb1dbbdfb59093c7b748fae008c8904a6fd931a63ca8d03ab5fea9bc8d263568125a9b +b57e7f68e4eb1bd04aafa917b1db1bdab759a02aa8a9cdb1cba34ba8852b5890f655645c9b4e15d5f19bf37e9f2ffe9f +8abe4e2a4f6462b6c64b3f10e45db2a53c2b0d3c5d5443d3f00a453e193df771eda635b098b6c8604ace3557514027af +8459e4fb378189b22b870a6ef20183deb816cefbf66eca1dc7e86d36a2e011537db893729f500dc154f14ce24633ba47 +930851df4bc7913c0d8c0f7bd3b071a83668987ed7c397d3d042fdc0d9765945a39a3bae83da9c88cb6b686ed8aeeb26 +8078c9e5cd05e1a8c932f8a1d835f61a248b6e7133fcbb3de406bf4ffc0e584f6f9f95062740ba6008d98348886cf76b +addff62bb29430983fe578e3709b0949cdc0d47a13a29bc3f50371a2cb5c822ce53e2448cfaa01bcb6e0aa850d5a380e +9433add687b5a1e12066721789b1db2edf9b6558c3bdc0f452ba33b1da67426abe326e9a34d207bfb1c491c18811bde1 +822beda3389963428cccc4a2918fa9a8a51cf0919640350293af70821967108cded5997adae86b33cb917780b097f1ca +a7a9f52bda45e4148ed56dd176df7bd672e9b5ed18888ccdb405f47920fdb0844355f8565cefb17010b38324edd8315f +b35c3a872e18e607b2555c51f9696a17fa18da1f924d503b163b4ec9fe22ed0c110925275cb6c93ce2d013e88f173d6a +adf34b002b2b26ab84fc1bf94e05bd8616a1d06664799ab149363c56a6e0c807fdc473327d25632416e952ea327fcd95 +ae4a6b9d22a4a3183fac29e2551e1124a8ce4a561a9a2afa9b23032b58d444e6155bb2b48f85c7b6d70393274e230db7 +a2ea3be4fc17e9b7ce3110284038d46a09e88a247b6971167a7878d9dcf36925d613c382b400cfa4f37a3ebea3699897 +8e5863786b641ce3140fbfe37124d7ad3925472e924f814ebfc45959aaf3f61dc554a597610b5defaecc85b59a99b50f +aefde3193d0f700d0f515ab2aaa43e2ef1d7831c4f7859f48e52693d57f97fa9e520090f3ed700e1c966f4b76048e57f +841a50f772956622798e5cd208dc7534d4e39eddee30d8ce133383d66e5f267e389254a0cdae01b770ecd0a9ca421929 +8fbc2bfd28238c7d47d4c03b1b910946c0d94274a199575e5b23242619b1de3497784e646a92aa03e3e24123ae4fcaba +926999579c8eec1cc47d7330112586bdca20b4149c8b2d066f527c8b9f609e61ce27feb69db67eea382649c6905efcf9 +b09f31f305efcc65589adf5d3690a76cf339efd67cd43a4e3ced7b839507466e4be72dd91f04e89e4bbef629d46e68c0 +b917361f6b95f759642638e0b1d2b3a29c3bdef0b94faa30de562e6078c7e2d25976159df3edbacbf43614635c2640b4 +8e7e8a1253bbda0e134d62bfe003a2669d471b47bd2b5cde0ff60d385d8e62279d54022f5ac12053b1e2d3aaa6910b4c +b69671a3c64e0a99d90b0ed108ce1912ff8ed983e4bddd75a370e9babde25ee1f5efb59ec707edddd46793207a8b1fe7 +910b2f4ebd37b7ae94108922b233d0920b4aba0bd94202c70f1314418b548d11d8e9caa91f2cd95aff51b9432d122b7f +82f645c90dfb52d195c1020346287c43a80233d3538954548604d09fbab7421241cde8593dbc4acc4986e0ea39a27dd9 +8fee895f0a140d88104ce442fed3966f58ff9d275e7373483f6b4249d64a25fb5374bbdc6bce6b5ab0270c2847066f83 +84f5bd7aab27b2509397aeb86510dd5ac0a53f2c8f73799bf720f2f87a52277f8d6b0f77f17bc80739c6a7119b7eb062 +9903ceced81099d7e146e661bcf01cbaccab5ba54366b85e2177f07e2d8621e19d9c9c3eee14b9266de6b3f9b6ea75ae +b9c16ea2a07afa32dd6c7c06df0dec39bca2067a9339e45475c98917f47e2320f6f235da353fd5e15b477de97ddc68dd +9820a9bbf8b826bec61ebf886de2c4f404c1ebdc8bab82ee1fea816d9de29127ce1852448ff717a3fe8bbfe9e92012e5 +817224d9359f5da6f2158c2c7bf9165501424f063e67ba9859a07ab72ee2ee62eb00ca6da821cfa19065c3282ca72c74 +94b95c465e6cb00da400558a3c60cfec4b79b27e602ca67cbc91aead08de4b6872d8ea096b0dc06dca4525c8992b8547 +a2b539a5bccd43fa347ba9c15f249b417997c6a38c63517ca38394976baa08e20be384a360969ff54e7e721db536b3e5 +96caf707e34f62811ee8d32ccf28d8d6ec579bc33e424d0473529af5315c456fd026aa910c1fed70c91982d51df7d3ca +8a77b73e890b644c6a142bdbac59b22d6a676f3b63ddafb52d914bb9d395b8bf5aedcbcc90429337df431ebd758a07a6 +8857830a7351025617a08bc44caec28d2fae07ebf5ffc9f01d979ce2a53839a670e61ae2783e138313929129790a51a1 +aa3e420321ed6f0aa326d28d1a10f13facec6f605b6218a6eb9cbc074801f3467bf013a456d1415a5536f12599efa3d3 +824aed0951957b00ea2f3d423e30328a3527bf6714cf9abbae84cf27e58e5c35452ba89ccc011de7c68c75d6e021d8f1 +a2e87cc06bf202e953fb1081933d8b4445527dde20e38ed1a4f440144fd8fa464a2b73e068b140562e9045e0f4bd3144 +ae3b8f06ad97d7ae3a5e5ca839efff3e4824dc238c0c03fc1a8d2fc8aa546cdfd165b784a31bb4dec7c77e9305b99a4b +b30c3e12395b1fb8b776f3ec9f87c70e35763a7b2ddc68f0f60a4982a84017f27c891a98561c830038deb033698ed7fc +874e507757cd1177d0dff0b0c62ce90130324442a33da3b2c8ee09dbca5d543e3ecfe707e9f1361e7c7db641c72794bb +b53012dd10b5e7460b57c092eaa06d6502720df9edbbe3e3f61a9998a272bf5baaac4a5a732ad4efe35d6fac6feca744 +85e6509d711515534d394e6cacbed6c81da710074d16ef3f4950bf2f578d662a494d835674f79c4d6315bced4defc5f0 +b6132b2a34b0905dcadc6119fd215419a7971fe545e52f48b768006944b4a9d7db1a74b149e2951ea48c083b752d0804 +989867da6415036d19b4bacc926ce6f4df7a556f50a1ba5f3c48eea9cefbb1c09da81481c8009331ee83f0859185e164 +960a6c36542876174d3fbc1505413e29f053ed87b8d38fef3af180491c7eff25200b45dd5fe5d4d8e63c7e8c9c00f4c8 +9040b59bd739d9cc2e8f6e894683429e4e876a8106238689ff4c22770ae5fdae1f32d962b30301fa0634ee163b524f35 +af3fcd0a45fe9e8fe256dc7eab242ef7f582dd832d147444483c62787ac820fafc6ca55d639a73f76bfa5e7f5462ab8f +b934c799d0736953a73d91e761767fdb78454355c4b15c680ce08accb57ccf941b13a1236980001f9e6195801cffd692 +8871e8e741157c2c326b22cf09551e78da3c1ec0fc0543136f581f1550f8bab03b0a7b80525c1e99812cdbf3a9698f96 +a8a977f51473a91d178ee8cfa45ffef8d6fd93ab1d6e428f96a3c79816d9c6a93cd70f94d4deda0125fd6816e30f3bea +a7688b3b0a4fc1dd16e8ba6dc758d3cfe1b7cf401c31739484c7fa253cce0967df1b290769bcefc9d23d3e0cb19e6218 +8ae84322662a57c6d729e6ff9d2737698cc2da2daeb1f39e506618750ed23442a6740955f299e4a15dda6db3e534d2c6 +a04a961cdccfa4b7ef83ced17ab221d6a043b2c718a0d6cc8e6f798507a31f10bf70361f70a049bc8058303fa7f96864 +b463e39732a7d9daec8a456fb58e54b30a6e160aa522a18b9a9e836488cce3342bcbb2e1deab0f5e6ec0a8796d77197d +b1434a11c6750f14018a2d3bcf94390e2948f4f187e93bb22070ca3e5393d339dc328cbfc3e48815f51929465ffe7d81 +84ff81d73f3828340623d7e3345553610aa22a5432217ef0ebd193cbf4a24234b190c65ca0873c22d10ea7b63bd1fbed +b6fe2723f0c47757932c2ddde7a4f8434f665612f7b87b4009c2635d56b6e16b200859a8ade49276de0ef27a2b6c970a +9742884ed7cd52b4a4a068a43d3faa02551a424136c85a9313f7cb58ea54c04aa83b0728fd741d1fe39621e931e88f8f +b7d2d65ea4d1ad07a5dee39e40d6c03a61264a56b1585b4d76fc5b2a68d80a93a42a0181d432528582bf08d144c2d6a9 +88c0f66bada89f8a43e5a6ead2915088173d106c76f724f4a97b0f6758aed6ae5c37c373c6b92cdd4aea8f6261f3a374 +81f9c43582cb42db3900747eb49ec94edb2284999a499d1527f03315fd330e5a509afa3bff659853570e9886aab5b28b +821f9d27d6beb416abf9aa5c79afb65a50ed276dbda6060103bc808bcd34426b82da5f23e38e88a55e172f5c294b4d40 +8ba307b9e7cb63a6c4f3851b321aebfdb6af34a5a4c3bd949ff7d96603e59b27ff4dc4970715d35f7758260ff942c9e9 +b142eb6c5f846de33227d0bda61d445a7c33c98f0a8365fe6ab4c1fabdc130849be597ef734305894a424ea715372d08 +a732730ae4512e86a741c8e4c87fee8a05ee840fec0e23b2e037d58dba8dde8d10a9bc5191d34d00598941becbbe467f +adce6f7c30fd221f6b10a0413cc76435c4bb36c2d60bca821e5c67409fe9dbb2f4c36ef85eb3d734695e4be4827e9fd3 +a74f00e0f9b23aff7b2527ce69852f8906dab9d6abe62ecd497498ab21e57542e12af9918d4fd610bb09e10b0929c510 +a593b6b0ef26448ce4eb3ab07e84238fc020b3cb10d542ff4b16d4e2be1bcde3797e45c9cf753b8dc3b0ffdb63984232 +aed3913afccf1aa1ac0eb4980eb8426d0baccebd836d44651fd72af00d09fac488a870223c42aca3ceb39752070405ae +b2c44c66a5ea7fde626548ba4cef8c8710191343d3dadfd3bb653ce715c0e03056a5303a581d47dde66e70ea5a2d2779 +8e5029b2ccf5128a12327b5103f7532db599846e422531869560ceaff392236434d87159f597937dbf4054f810c114f4 +82beed1a2c4477e5eb39fc5b0e773b30cfec77ef2b1bf17eadaf60eb35b6d0dd9d8cf06315c48d3546badb3f21cd0cca +90077bd6cc0e4be5fff08e5d07a5a158d36cebd1d1363125bc4fae0866ffe825b26f933d4ee5427ba5cd0c33c19a7b06 +a7ec0d8f079970e8e34f0ef3a53d3e0e45428ddcef9cc776ead5e542ef06f3c86981644f61c5a637e4faf001fb8c6b3e +ae6d4add6d1a6f90b22792bc9d40723ee6850c27d0b97eefafd5b7fd98e424aa97868b5287cc41b4fbd7023bca6a322c +831aa917533d077da07c01417feaa1408846363ba2b8d22c6116bb858a95801547dd88b7d7fa1d2e3f0a02bdeb2e103d +96511b860b07c8a5ed773f36d4aa9d02fb5e7882753bf56303595bcb57e37ccc60288887eb83bef08c657ec261a021a2 +921d2a3e7e9790f74068623de327443666b634c8443aba80120a45bba450df920b2374d96df1ce3fb1b06dd06f8cf6e3 +aa74451d51fe82b4581ead8e506ec6cd881010f7e7dd51fc388eb9a557db5d3c6721f81c151d08ebd9c2591689fbc13e +a972bfbcf4033d5742d08716c927c442119bdae336bf5dff914523b285ccf31953da2733759aacaa246a9af9f698342c +ad1fcd0cae0e76840194ce4150cb8a56ebed728ec9272035f52a799d480dfc85840a4d52d994a18b6edb31e79be6e8ad +a2c69fe1d36f235215432dad48d75887a44c99dfa0d78149acc74087da215a44bdb5f04e6eef88ff7eff80a5a7decc77 +a94ab2af2b6ee1bc6e0d4e689ca45380d9fbd3c5a65b9bd249d266a4d4c07bf5d5f7ef2ae6000623aee64027892bf8fe +881ec1fc514e926cdc66480ac59e139148ff8a2a7895a49f0dff45910c90cdda97b66441a25f357d6dd2471cddd99bb3 +884e6d3b894a914c8cef946a76d5a0c8351843b2bffa2d1e56c6b5b99c84104381dd1320c451d551c0b966f4086e60f9 +817c6c10ce2677b9fc5223500322e2b880583254d0bb0d247d728f8716f5e05c9ff39f135854342a1afecd9fbdcf7c46 +aaf4a9cb686a14619aa1fc1ac285dd3843ac3dd99f2b2331c711ec87b03491c02f49101046f3c5c538dc9f8dba2a0ac2 +97ecea5ce53ca720b5d845227ae61d70269a2f53540089305c86af35f0898bfd57356e74a8a5e083fa6e1ea70080bd31 +a22d811e1a20a75feac0157c418a4bfe745ccb5d29466ffa854dca03e395b6c3504a734341746b2846d76583a780b32e +940cbaa0d2b2db94ae96b6b9cf2deefbfd059e3e5745de9aec4a25f0991b9721e5cd37ef71c631575d1a0c280b01cd5b +ae33cb4951191258a11044682de861bf8d92d90ce751b354932dd9f3913f542b6a0f8a4dc228b3cd9244ac32c4582832 +a580df5e58c4274fe0f52ac2da1837e32f5c9db92be16c170187db4c358f43e5cfdda7c5911dcc79d77a5764e32325f5 +81798178cb9d8affa424f8d3be67576ba94d108a28ccc01d330c51d5a63ca45bb8ca63a2f569b5c5fe1303cecd2d777f +89975b91b94c25c9c3660e4af4047a8bacf964783010820dbc91ff8281509379cb3b24c25080d5a01174dd9a049118d5 +a7327fcb3710ed3273b048650bde40a32732ef40a7e58cf7f2f400979c177944c8bc54117ba6c80d5d4260801dddab79 +92b475dc8cb5be4b90c482f122a51bcb3b6c70593817e7e2459c28ea54a7845c50272af38119406eaadb9bcb993368d0 +9645173e9ecefc4f2eae8363504f7c0b81d85f8949a9f8a6c01f2d49e0a0764f4eacecf3e94016dd407fc14494fce9f9 +9215fd8983d7de6ae94d35e6698226fc1454977ae58d42d294be9aad13ac821562ad37d5e7ee5cdfe6e87031d45cd197 +810360a1c9b88a9e36f520ab5a1eb8bed93f52deefbe1312a69225c0a08edb10f87cc43b794aced9c74220cefcc57e7d +ad7e810efd61ed4684aeda9ed8bb02fb9ae4b4b63fda8217d37012b94ff1b91c0087043bfa4e376f961fff030c729f3b +8b07c95c6a06db8738d10bb03ec11b89375c08e77f0cab7e672ce70b2685667ca19c7e1c8b092821d31108ea18dfd4c7 +968825d025ded899ff7c57245250535c732836f7565eab1ae23ee7e513201d413c16e1ba3f5166e7ac6cf74de8ceef4f +908243370c5788200703ade8164943ad5f8c458219186432e74dbc9904a701ea307fd9b94976c866e6c58595fd891c4b +959969d16680bc535cdc6339e6186355d0d6c0d53d7bbfb411641b9bf4b770fd5f575beef5deec5c4fa4d192d455c350 +ad177f4f826a961adeac76da40e2d930748effff731756c797eddc4e5aa23c91f070fb69b19221748130b0961e68a6bb +82f8462bcc25448ef7e0739425378e9bb8a05e283ce54aae9dbebaf7a3469f57833c9171672ad43a79778366c72a5e37 +a28fb275b1845706c2814d9638573e9bc32ff552ebaed761fe96fdbce70395891ca41c400ae438369264e31a2713b15f +8a9c613996b5e51dadb587a787253d6081ea446bf5c71096980bf6bd3c4b69905062a8e8a3792de2d2ece3b177a71089 +8d5aefef9f60cb27c1db2c649221204dda48bb9bf8bf48f965741da051340e8e4cab88b9d15c69f3f84f4c854709f48a +93ebf2ca6ad85ab6deace6de1a458706285b31877b1b4d7dcb9d126b63047efaf8c06d580115ec9acee30c8a7212fa55 +b3ee46ce189956ca298057fa8223b7fd1128cf52f39159a58bca03c71dd25161ac13f1472301f72aef3e1993fe1ab269 +a24d7a8d066504fc3f5027ccb13120e2f22896860e02c45b5eba1dbd512d6a17c28f39155ea581619f9d33db43a96f92 +ae9ceacbfe12137db2c1a271e1b34b8f92e4816bad1b3b9b6feecc34df0f8b3b0f7ed0133acdf59c537d43d33fc8d429 +83967e69bf2b361f86361bd705dce0e1ad26df06da6c52b48176fe8dfcbeb03c462c1a4c9e649eff8c654b18c876fdef +9148e6b814a7d779c19c31e33a068e97b597de1f8100513db3c581190513edc4d544801ce3dd2cf6b19e0cd6daedd28a +94ccdafc84920d320ed22de1e754adea072935d3c5f8c2d1378ebe53d140ea29853f056fb3fb1e375846061a038cc9bc +afb43348498c38b0fa5f971b8cdd3a62c844f0eb52bc33daf2f67850af0880fce84ecfb96201b308d9e6168a0d443ae3 +86d5736520a83538d4cd058cc4b4e84213ed00ebd6e7af79ae787adc17a92ba5359e28ba6c91936d967b4b28d24c3070 +b5210c1ff212c5b1e9ef9126e08fe120a41e386bb12c22266f7538c6d69c7fd8774f11c02b81fd4e88f9137b020801fe +b78cfd19f94d24e529d0f52e18ce6185cb238edc6bd43086270fd51dd99f664f43dd4c7d2fe506762fbd859028e13fcf +a6e7220598c554abdcc3fdc587b988617b32c7bb0f82c06205467dbedb58276cc07cae317a190f19d19078773f4c2bbb +b88862809487ee430368dccd85a5d72fa4d163ca4aad15c78800e19c1a95be2192719801e315d86cff7795e0544a77e4 +87ecb13a03921296f8c42ceb252d04716f10e09c93962239fcaa0a7fef93f19ab3f2680bc406170108bc583e9ff2e721 +a810cd473832b6581c36ec4cb403f2849357ba2d0b54df98ef3004b8a530c078032922a81d40158f5fb0043d56477f6e +a247b45dd85ca7fbb718b328f30a03f03c84aef2c583fbdc9fcc9eb8b52b34529e8c8f535505c10598b1b4dac3d7c647 +96ee0b91313c68bac4aa9e065ce9e1d77e51ca4cff31d6a438718c58264dee87674bd97fc5c6b8008be709521e4fd008 +837567ad073e42266951a9a54750919280a2ac835a73c158407c3a2b1904cf0d17b7195a393c71a18ad029cbd9cf79ee +a6a469c44b67ebf02196213e7a63ad0423aab9a6e54acc6fcbdbb915bc043586993454dc3cd9e4be8f27d67c1050879b +8712d380a843b08b7b294f1f06e2f11f4ad6bcc655fdde86a4d8bc739c23916f6fad2b902fe47d6212f03607907e9f0e +920adfb644b534789943cdae1bdd6e42828dda1696a440af2f54e6b97f4f97470a1c6ea9fa6a2705d8f04911d055acd1 +a161c73adf584a0061e963b062f59d90faac65c9b3a936b837a10d817f02fcabfa748824607be45a183dd40f991fe83f +874f4ecd408c76e625ea50bc59c53c2d930ee25baf4b4eca2440bfbffb3b8bc294db579caa7c68629f4d9ec24187c1ba +8bff18087f112be7f4aa654e85c71fef70eee8ae480f61d0383ff6f5ab1a0508f966183bb3fc4d6f29cb7ca234aa50d3 +b03b46a3ca3bc743a173cbc008f92ab1aedd7466b35a6d1ca11e894b9482ea9dc75f8d6db2ddd1add99bfbe7657518b7 +8b4f3691403c3a8ad9e097f02d130769628feddfa8c2b3dfe8cff64e2bed7d6e5d192c1e2ba0ac348b8585e94acd5fa1 +a0d9ca4a212301f97591bf65d5ef2b2664766b427c9dd342e23cb468426e6a56be66b1cb41fea1889ac5d11a8e3c50a5 +8c93ed74188ca23b3df29e5396974b9cc135c91fdefdea6c0df694c8116410e93509559af55533a3776ac11b228d69b1 +82dd331fb3f9e344ebdeeb557769b86a2cc8cc38f6c298d7572a33aea87c261afa9dbd898989139b9fc16bc1e880a099 +a65faedf326bcfd8ef98a51410c78b021d39206704e8291cd1f09e096a66b9b0486be65ff185ca224c45918ac337ddeb +a188b37d363ac072a766fd5d6fa27df07363feff1342217b19e3c37385e42ffde55e4be8355aceaa2f267b6d66b4ac41 +810fa3ba3e96d843e3bafd3f2995727f223d3567c8ba77d684c993ba1773c66551eb5009897c51b3fe9b37196984f5ec +87631537541852da323b4353af45a164f68b304d24c01183bf271782e11687f3fcf528394e1566c2a26cb527b3148e64 +b721cb2b37b3c477a48e3cc0044167d51ff568a5fd2fb606e5aec7a267000f1ddc07d3db919926ae12761a8e017c767c +904dfad4ba2cc1f6e60d1b708438a70b1743b400164cd981f13c064b8328d5973987d4fb9cf894068f29d3deaf624dfb +a70491538893552c20939fae6be2f07bfa84d97e2534a6bbcc0f1729246b831103505e9f60e97a8fa7d2e6c1c2384579 +8726cf1b26b41f443ff7485adcfddc39ace2e62f4d65dd0bb927d933e262b66f1a9b367ded5fbdd6f3b0932553ac1735 +ae8a11cfdf7aa54c08f80cb645e3339187ab3886babe9fae5239ba507bb3dd1c0d161ca474a2df081dcd3d63e8fe445e +92328719e97ce60e56110f30a00ac5d9c7a2baaf5f8d22355d53c1c77941e3a1fec7d1405e6fbf8959665fe2ba7a8cad +8d9d6255b65798d0018a8cccb0b6343efd41dc14ff2058d3eed9451ceaad681e4a0fa6af67b0a04318aa628024e5553d +b70209090055459296006742d946a513f0cba6d83a05249ee8e7a51052b29c0ca9722dc4af5f9816a1b7938a5dac7f79 +aab7b766b9bf91786dfa801fcef6d575dc6f12b77ecc662eb4498f0312e54d0de9ea820e61508fc8aeee5ab5db529349 +a8104b462337748b7f086a135d0c3f87f8e51b7165ca6611264b8fb639d9a2f519926cb311fa2055b5fadf03da70c678 +b0d2460747d5d8b30fc6c6bd0a87cb343ddb05d90a51b465e8f67d499cfc5e3a9e365da05ae233bbee792cdf90ec67d5 +aa55f5bf3815266b4a149f85ed18e451c93de9163575e3ec75dd610381cc0805bb0a4d7c4af5b1f94d10231255436d2c +8d4c6a1944ff94426151909eb5b99cfd92167b967dabe2bf3aa66bb3c26c449c13097de881b2cfc1bf052862c1ef7b03 +8862296162451b9b6b77f03bf32e6df71325e8d7485cf3335d66fd48b74c2a8334c241db8263033724f26269ad95b395 +901aa96deb26cda5d9321190ae6624d357a41729d72ef1abfd71bebf6139af6d690798daba53b7bc5923462115ff748a +96c195ec4992728a1eb38cdde42d89a7bce150db43adbc9e61e279ea839e538deec71326b618dd39c50d589f78fc0614 +b6ff8b8aa0837b99a1a8b46fb37f20ad4aecc6a98381b1308697829a59b8442ffc748637a88cb30c9b1f0f28a926c4f6 +8d807e3dca9e7bef277db1d2cfb372408dd587364e8048b304eff00eacde2c723bfc84be9b98553f83cba5c7b3cba248 +8800c96adb0195c4fc5b24511450dee503c32bf47044f5e2e25bd6651f514d79a2dd9b01cd8c09f3c9d3859338490f57 +89fe366096097e38ec28dd1148887112efa5306cc0c3da09562aafa56f4eb000bf46ff79bf0bdd270cbde6bf0e1c8957 +af409a90c2776e1e7e3760b2042507b8709e943424606e31e791d42f17873a2710797f5baaab4cc4a19998ef648556b0 +8d761863c9b6edbd232d35ab853d944f5c950c2b643f84a1a1327ebb947290800710ff01dcfa26dc8e9828481240e8b1 +90b95e9be1e55c463ed857c4e0617d6dc3674e99b6aa62ed33c8e79d6dfcf7d122f4f4cc2ee3e7c5a49170cb617d2e2e +b3ff381efefabc4db38cc4727432e0301949ae4f16f8d1dea9b4f4de611cf5a36d84290a0bef160dac4e1955e516b3b0 +a8a84564b56a9003adcadb3565dc512239fc79572762cda7b5901a255bc82656bb9c01212ad33d6bef4fbbce18dacc87 +90a081890364b222eef54bf0075417f85e340d2fec8b7375995f598aeb33f26b44143ebf56fca7d8b4ebb36b5747b0eb +ade6ee49e1293224ddf2d8ab7f14bb5be6bc6284f60fd5b3a1e0cf147b73cff57cf19763b8a36c5083badc79c606b103 +b2fa99806dd2fa3de09320b615a2570c416c9bcdb052e592b0aead748bbe407ec9475a3d932ae48b71c2627eb81986a6 +91f3b7b73c8ccc9392542711c45fe6f236057e6efad587d661ad5cb4d6e88265f86b807bb1151736b1009ab74fd7acb4 +8800e2a46af96696dfbdcbf2ca2918b3dcf28ad970170d2d1783b52b8d945a9167d052beeb55f56c126da7ffa7059baa +9862267a1311c385956b977c9aa08548c28d758d7ba82d43dbc3d0a0fd1b7a221d39e8399997fea9014ac509ff510ac4 +b7d24f78886fd3e2d283e18d9ad5a25c1a904e7d9b9104bf47da469d74f34162e27e531380dbbe0a9d051e6ffd51d6e7 +b0f445f9d143e28b9df36b0f2c052da87ee2ca374d9d0fbe2eff66ca6fe5fe0d2c1951b428d58f7314b7e74e45d445ea +b63fc4083eabb8437dafeb6a904120691dcb53ce2938b820bb553da0e1eecd476f72495aacb72600cf9cad18698fd3db +b9ffd8108eaebd582d665f8690fe8bb207fd85185e6dd9f0b355a09bac1bbff26e0fdb172bc0498df025414e88fe2eda +967ed453e1f1a4c5b7b6834cc9f75c13f6889edc0cc91dc445727e9f408487bbf05c337103f61397a10011dfbe25d61d +98ceb673aff36e1987d5521a3984a07079c3c6155974bb8b413e8ae1ce84095fe4f7862fba7aefa14753eb26f2a5805f +85f01d28603a8fdf6ce6a50cb5c44f8a36b95b91302e3f4cd95c108ce8f4d212e73aec1b8d936520d9226802a2bd9136 +88118e9703200ca07910345fbb789e7a8f92bd80bbc79f0a9e040e8767d33df39f6eded403a9b636eabf9101e588482a +90833a51eef1b10ed74e8f9bbd6197e29c5292e469c854eed10b0da663e2bceb92539710b1858bbb21887bd538d28d89 +b513b905ec19191167c6193067b5cfdf5a3d3828375360df1c7e2ced5815437dfd37f0c4c8f009d7fb29ff3c8793f560 +b1b6d405d2d18f9554b8a358cc7e2d78a3b34269737d561992c8de83392ac9a2857be4bf15de5a6c74e0c9d0f31f393c +b828bd3e452b797323b798186607849f85d1fb20c616833c0619360dfd6b3e3aa000fd09dafe4b62d74abc41072ff1a9 +8efde67d0cca56bb2c464731879c9ac46a52e75bac702a63200a5e192b4f81c641f855ca6747752b84fe469cb7113b6c +b2762ba1c89ac3c9a983c242e4d1c2610ff0528585ed5c0dfc8a2c0253551142af9b59f43158e8915a1da7cc26b9df67 +8a3f1157fb820d1497ef6b25cd70b7e16bb8b961b0063ad340d82a79ee76eb2359ca9e15e6d42987ed7f154f5eeaa2da +a75e29f29d38f09c879f971c11beb5368affa084313474a5ecafa2896180b9e47ea1995c2733ec46f421e395a1d9cffe +8e8c3dd3e7196ef0b4996b531ec79e4a1f211db5d5635e48ceb80ff7568b2ff587e845f97ee703bb23a60945ad64314a +8e7f32f4a3e3c584af5e3d406924a0aa34024c42eca74ef6cc2a358fd3c9efaf25f1c03aa1e66bb94b023a2ee2a1cace +ab7dce05d59c10a84feb524fcb62478906b3fa045135b23afbede3bb32e0c678d8ebe59feabccb5c8f3550ea76cae44b +b38bb4b44d827f6fd3bd34e31f9186c59e312dbfadd4a7a88e588da10146a78b1f8716c91ad8b806beb8da65cab80c4c +9490ce9442bbbd05438c7f5c4dea789f74a7e92b1886a730544b55ba377840740a3ae4f2f146ee73f47c9278b0e233bc +83c003fab22a7178eed1a668e0f65d4fe38ef3900044e9ec63070c23f2827d36a1e73e5c2b883ec6a2afe2450171b3b3 +9982f02405978ddc4fca9063ebbdb152f524c84e79398955e66fe51bc7c1660ec1afc3a86ec49f58d7b7dde03505731c +ab337bd83ccdd2322088ffa8d005f450ced6b35790f37ab4534313315ee84312adc25e99cce052863a8bedee991729ed +8312ce4bec94366d88f16127a17419ef64285cd5bf9e5eda010319b48085966ed1252ed2f5a9fd3e0259b91bb65f1827 +a60d5a6327c4041b0c00a1aa2f0af056520f83c9ce9d9ccd03a0bd4d9e6a1511f26a422ea86bd858a1f77438adf07e6c +b84a0a0b030bdad83cf5202aa9afe58c9820e52483ab41f835f8c582c129ee3f34aa096d11c1cd922eda02ea1196a882 +8077d105317f4a8a8f1aadeb05e0722bb55f11abcb490c36c0904401107eb3372875b0ac233144829e734f0c538d8c1d +9202503bd29a6ec198823a1e4e098f9cfe359ed51eb5174d1ca41368821bfeebcbd49debfd02952c41359d1c7c06d2b1 +abc28c155e09365cb77ffead8dc8f602335ef93b2f44e4ef767ce8fc8ef9dd707400f3a722e92776c2e0b40192c06354 +b0f6d1442533ca45c9399e0a63a11f85ff288d242cea6cb3b68c02e77bd7d158047cae2d25b3bcd9606f8f66d9b32855 +b01c3d56a0db84dc94575f4b6ee2de4beca3230e86bed63e2066beb22768b0a8efb08ebaf8ac3dedb5fe46708b084807 +8c8634b0432159f66feaabb165842d1c8ac378f79565b1b90c381aa8450eb4231c3dad11ec9317b9fc2b155c3a771e32 +8e67f623d69ecd430c9ee0888520b6038f13a2b6140525b056dc0951f0cfed2822e62cf11d952a483107c5c5acac4826 +9590bb1cba816dd6acd5ac5fba5142c0a19d53573e422c74005e0bcf34993a8138c83124cad35a3df65879dba6134edd +801cd96cde0749021a253027118d3ea135f3fcdbe895db08a6c145641f95ebd368dd6a1568d995e1d0084146aebe224a +848b5d196427f6fc1f762ee3d36e832b64a76ec1033cfedc8b985dea93932a7892b8ef1035c653fb9dcd9ab2d9a44ac8 +a1017eb83d5c4e2477e7bd2241b2b98c4951a3b391081cae7d75965cadc1acaec755cf350f1f3d29741b0828e36fedea +8d6d2785e30f3c29aad17bd677914a752f831e96d46caf54446d967cb2432be2c849e26f0d193a60bee161ea5c6fe90a +935c0ba4290d4595428e034b5c8001cbd400040d89ab00861108e8f8f4af4258e41f34a7e6b93b04bc253d3b9ffc13bf +aac02257146246998477921cef2e9892228590d323b839f3e64ea893b991b463bc2f47e1e5092ddb47e70b2f5bce7622 +b921fde9412970a5d4c9a908ae8ce65861d06c7679af577cf0ad0d5344c421166986bee471fd6a6cecb7d591f06ec985 +8ef4c37487b139d6756003060600bb6ebac7ea810b9c4364fc978e842f13ac196d1264fbe5af60d76ff6d9203d8e7d3f +94b65e14022b5cf6a9b95f94be5ace2711957c96f4211c3f7bb36206bd39cfbd0ea82186cab5ad0577a23214a5c86e9e +a31c166d2a2ca1d5a75a5920fef7532681f62191a50d8555fdaa63ba4581c3391cc94a536fc09aac89f64eafceec3f90 +919a8cc128de01e9e10f5d83b08b52293fdd41bde2b5ae070f3d95842d4a16e5331cf2f3d61c765570c8022403610fa4 +b23d6f8331eef100152d60483cfa14232a85ee712c8538c9b6417a5a7c5b353c2ac401390c6c215cb101f5cee6b5f43e +ab357160c08a18319510a571eafff154298ce1020de8e1dc6138a09fcb0fcbcdd8359f7e9386bda00b7b9cdea745ffdc +ab55079aea34afa5c0bd1124b9cdfe01f325b402fdfa017301bf87812eaa811ea5798c3aaf818074d420d1c782b10ada +ade616010dc5009e7fc4f8d8b00dc716686a5fa0a7816ad9e503e15839d3b909b69d9dd929b7575376434ffec0d2bea8 +863997b97ed46898a8a014599508fa3079f414b1f4a0c4fdc6d74ae8b444afa350f327f8bfc2a85d27f9e2d049c50135 +8d602ff596334efd4925549ed95f2aa762b0629189f0df6dbb162581657cf3ea6863cd2287b4d9c8ad52813d87fcd235 +b70f68c596dcdeed92ad5c6c348578b26862a51eb5364237b1221e840c47a8702f0fbc56eb520a22c0eed99795d3903e +9628088f8e0853cefadee305a8bf47fa990c50fa96a82511bbe6e5dc81ef4b794e7918a109070f92fc8384d77ace226f +97e26a46e068b605ce96007197ecd943c9a23881862f4797a12a3e96ba2b8d07806ad9e2a0646796b1889c6b7d75188c +b1edf467c068cc163e2d6413cc22b16751e78b3312fe47b7ea82b08a1206d64415b2c8f2a677fa89171e82cc49797150 +a44d15ef18745b251429703e3cab188420e2d974de07251501799b016617f9630643fcd06f895634d8ecdd579e1bf000 +abd126df3917ba48c618ee4dbdf87df506193462f792874439043fa1b844466f6f4e0ff2e42516e63b5b23c0892b2695 +a2a67f57c4aa3c2aa1eeddbfd5009a89c26c2ce8fa3c96a64626aba19514beb125f27df8559506f737de3eae0f1fc18f +a633e0132197e6038197304b296ab171f1d8e0d0f34dcf66fe9146ac385b0239232a8470b9205a4802ab432389f4836d +a914b3a28509a906c3821463b936455d58ff45dcbe158922f9efb2037f2eb0ce8e92532d29b5d5a3fcd0d23fa773f272 +a0e1412ce4505daf1a2e59ce4f0fc0e0023e335b50d2b204422f57cd65744cc7a8ed35d5ef131a42c70b27111d3115b7 +a2339e2f2b6072e88816224fdd612c04d64e7967a492b9f8829db15367f565745325d361fd0607b0def1be384d010d9e +a7309fc41203cb99382e8193a1dcf03ac190a7ce04835304eb7e341d78634e83ea47cb15b885601956736d04cdfcaa01 +81f3ccd6c7f5b39e4e873365f8c37b214e8ab122d04a606fbb7339dc3298c427e922ec7418002561d4106505b5c399ee +92c121cf914ca549130e352eb297872a63200e99b148d88fbc9506ad882bec9d0203d65f280fb5b0ba92e336b7f932e8 +a4b330cf3f064f5b131578626ad7043ce2a433b6f175feb0b52d36134a454ca219373fd30d5e5796410e005b69082e47 +86fe5774112403ad83f9c55d58317eeb17ad8e1176d9f2f69c2afb7ed83bc718ed4e0245ceab4b377f5f062dcd4c00e7 +809d152a7e2654c7fd175b57f7928365a521be92e1ed06c05188a95864ddb25f7cab4c71db7d61bbf4cae46f3a1d96ce +b82d663e55c2a5ada7e169e9b1a87bc1c0177baf1ec1c96559b4cb1c5214ce1ddf2ab8d345014cab6402f3774235cf5a +86580af86df1bd2c385adb8f9a079e925981b7184db66fc5fe5b14cddb82e7d836b06eaeef14924ac529487b23dae111 +b5f5f4c5c94944ecc804df6ab8687d64e27d988cbfeae1ba7394e0f6adbf778c5881ead7cd8082dd7d68542b9bb4ecd5 +a6016916146c2685c46e8fdd24186394e2d5496e77e08c0c6a709d4cd7dfa97f1efcef94922b89196819076a91ad37b5 +b778e7367ded3b6eab53d5fc257f7a87e8faf74a593900f2f517220add2125be3f6142022660d8181df8d164ad9441ce +8581b2d36abe6f553add4d24be761bec1b8efaa2929519114346615380b3c55b59e6ad86990e312f7e234d0203bdf59b +9917e74fd45c3f71a829ff5498a7f6b5599b48c098dda2339bf04352bfc7f368ccf1a407f5835901240e76452ae807d7 +afd196ce6f9335069138fd2e3d133134da253978b4ce373152c0f26affe77a336505787594022e610f8feb722f7cc1fb +a477491a1562e329764645e8f24d8e228e5ef28c9f74c6b5b3abc4b6a562c15ffb0f680d372aed04d9e1bf944dece7be +9767440d58c57d3077319d3a330e5322b9ba16981ec74a5a14d53462eab59ae7fd2b14025bfc63b268862094acb444e6 +80986d921be3513ef69264423f351a61cb48390c1be8673aee0f089076086aaebea7ebe268fd0aa7182695606116f679 +a9554c5c921c07b450ee04e34ec58e054ac1541b26ce2ce5a393367a97348ba0089f53db6660ad76b60278b66fd12e3e +95097e7d2999b3e84bf052c775581cf361325325f4a50192521d8f4693c830bed667d88f482dc1e3f833aa2bd22d2cbf +9014c91d0f85aefd28436b5228c12f6353c055a9326c7efbf5e071e089e2ee7c070fcbc84c5fafc336cbb8fa6fec1ca1 +90f57ba36ee1066b55d37384942d8b57ae00f3cf9a3c1d6a3dfee1d1af42d4b5fa9baeb0cd7e46687d1d6d090ddb931d +8e4b1db12fd760a17214c9e47f1fce6e43c0dbb4589a827a13ac61aaae93759345697bb438a00edab92e0b7b62414683 +8022a959a513cdc0e9c705e0fc04eafd05ff37c867ae0f31f6d01cddd5df86138a426cab2ff0ac8ff03a62e20f7e8f51 +914e9a38829834c7360443b8ed86137e6f936389488eccf05b4b4db7c9425611705076ecb3f27105d24b85c852be7511 +957fb10783e2bd0db1ba66b18e794df710bc3b2b05776be146fa5863c15b1ebdd39747b1a95d9564e1772cdfc4f37b8a +b6307028444daed8ed785ac9d0de76bc3fe23ff2cc7e48102553613bbfb5afe0ebe45e4212a27021c8eb870721e62a1f +8f76143597777d940b15a01b39c5e1b045464d146d9a30a6abe8b5d3907250e6c7f858ff2308f8591e8b0a7b3f3c568a +96163138ac0ce5fd00ae9a289648fd9300a0ca0f63a88481d703ecd281c06a52a3b5178e849e331f9c85ca4ba398f4cc +a63ef47c3e18245b0482596a09f488a716df3cbd0f9e5cfabed0d742843e65db8961c556f45f49762f3a6ac8b627b3ef +8cb595466552e7c4d42909f232d4063e0a663a8ef6f6c9b7ce3a0542b2459cde04e0e54c7623d404acb5b82775ac04f6 +b47fe69960eb45f399368807cff16d941a5a4ebad1f5ec46e3dc8a2e4d598a7e6114d8f0ca791e9720fd786070524e2b +89eb5ff83eea9df490e5beca1a1fbbbbcf7184a37e2c8c91ede7a1e654c81e8cd41eceece4042ea7918a4f4646b67fd6 +a84f5d155ed08b9054eecb15f689ba81e44589e6e7207a99790c598962837ca99ec12344105b16641ca91165672f7153 +a6cc8f25c2d5b2d2f220ec359e6a37a52b95fa6af6e173c65e7cd55299eff4aa9e6d9e6f2769e6459313f1f2aecb0fab +afcde944411f017a9f7979755294981e941cc41f03df5e10522ef7c7505e5f1babdd67b3bf5258e8623150062eb41d9b +8fab39f39c0f40182fcd996ade2012643fe7731808afbc53f9b26900b4d4d1f0f5312d9d40b3df8baa4739970a49c732 +ae193af9726da0ebe7df1f9ee1c4846a5b2a7621403baf8e66c66b60f523e719c30c6b4f897bb14b27d3ff3da8392eeb +8ac5adb82d852eba255764029f42e6da92dcdd0e224d387d1ef94174038db9709ac558d90d7e7c57ad4ce7f89bbfc38c +a2066b3458fdf678ee487a55dd5bfb74fde03b54620cb0e25412a89ee28ad0d685e309a51e3e4694be2fa6f1593a344c +88d031745dd0ae07d61a15b594be5d4b2e2a29e715d081649ad63605e3404b0c3a5353f0fd9fad9c05c18e93ce674fa1 +8283cfb0ef743a043f2b77ecaeba3005e2ca50435585b5dd24777ee6bce12332f85e21b446b536da38508807f0f07563 +b376de22d5f6b0af0b59f7d9764561f4244cf8ffe22890ecd3dcf2ff1832130c9b821e068c9d8773136f4796721e5963 +ae3afc50c764f406353965363840bf28ee85e7064eb9d5f0bb3c31c64ab10f48c853e942ee2c9b51bae59651eaa08c2f +948b204d103917461a01a6c57a88f2d66b476eae5b00be20ec8c747650e864bc8a83aee0aff59cb7584b7a3387e0ee48 +81ab098a082b07f896c5ffd1e4446cb7fb44804cbbf38d125208b233fc82f8ec9a6a8d8dd1c9a1162dc28ffeec0dde50 +a149c6f1312821ced2969268789a3151bdda213451760b397139a028da609c4134ac083169feb0ee423a0acafd10eceb +b0ac9e27a5dadaf523010f730b28f0ebac01f460d3bbbe277dc9d44218abb5686f4fac89ae462682fef9edbba663520a +8d0e0073cca273daaaa61b6fc54bfe5a009bc3e20ae820f6c93ba77b19eca517d457e948a2de5e77678e4241807157cb +ad61d3a2edf7c7533a04964b97499503fd8374ca64286dba80465e68fe932e96749b476f458c6fc57cb1a7ca85764d11 +90eb5e121ae46bc01a30881eaa556f46bd8457a4e80787cf634aab355082de34ac57d7f497446468225f7721e68e2a47 +8cdac557de7c42d1f3780e33dec1b81889f6352279be81c65566cdd4952d4c15d79e656cbd46035ab090b385e90245ef +82b67e61b88b84f4f4d4f65df37b3e3dcf8ec91ea1b5c008fdccd52da643adbe6468a1cfdb999e87d195afe2883a3b46 +8503b467e8f5d6048a4a9b78496c58493a462852cab54a70594ae3fd064cfd0deb4b8f336a262155d9fedcaa67d2f6fd +8db56c5ac763a57b6ce6832930c57117058e3e5a81532b7d19346346205e2ec614eb1a2ee836ef621de50a7bc9b7f040 +ad344699198f3c6e8c0a3470f92aaffc805b76266734414c298e10b5b3797ca53578de7ccb2f458f5e0448203f55282b +80602032c43c9e2a09154cc88b83238343b7a139f566d64cb482d87436b288a98f1ea244fd3bff8da3c398686a900c14 +a6385bd50ecd548cfb37174cdbb89e10025b5cadaf3cff164c95d7aef5a33e3d6a9bf0c681b9e11db9ef54ebeee2a0c1 +abf2d95f4aa34b0581eb9257a0cc8462b2213941a5deb8ba014283293e8b36613951b61261cc67bbd09526a54cbbff76 +a3d5de52f48df72c289ff713e445991f142390798cd42bd9d9dbefaee4af4f5faf09042d126b975cf6b98711c3072553 +8e627302ff3d686cff8872a1b7c2a57b35f45bf2fc9aa42b049d8b4d6996a662b8e7cbac6597f0cb79b0cc4e29fbf133 +8510702e101b39a1efbf4e504e6123540c34b5689645e70d0bac1ecc1baf47d86c05cef6c4317a4e99b4edaeb53f2d00 +aa173f0ecbcc6088f878f8726d317748c81ebf501bba461f163b55d66099b191ec7c55f7702f351a9c8eb42cfa3280e2 +b560a697eafab695bcef1416648a0a664a71e311ecbe5823ae903bd0ed2057b9d7574b9a86d3fe22aa3e6ddce38ea513 +8df6304a3d9cf40100f3f687575419c998cd77e5cc27d579cf4f8e98642de3609af384a0337d145dd7c5635172d26a71 +8105c7f3e4d30a29151849673853b457c1885c186c132d0a98e63096c3774bc9deb956cf957367e633d0913680bda307 +95373fc22c0917c3c2044ac688c4f29a63ed858a45c0d6d2d0fe97afd6f532dcb648670594290c1c89010ecc69259bef +8c2fae9bcadab341f49b55230310df93cac46be42d4caa0d42e45104148a91e527af1b4209c0d972448162aed28fab64 +b05a77baab70683f76209626eaefdda2d36a0b66c780a20142d23c55bd479ddd4ad95b24579384b6cf62c8eb4c92d021 +8e6bc6a7ea2755b4aaa19c1c1dee93811fcde514f03485fdc3252f0ab7f032c315614f6336e57cea25dcfb8fb6084eeb +b656a27d06aade55eadae2ad2a1059198918ea6cc3fd22c0ed881294d34d5ac7b5e4700cc24350e27d76646263b223aa +a296469f24f6f56da92d713afcd4dd606e7da1f79dc4e434593c53695847eefc81c7c446486c4b3b8c8d00c90c166f14 +87a326f57713ac2c9dffeb3af44b9f3c613a8f952676fc46343299122b47ee0f8d792abaa4b5db6451ced5dd153aabd0 +b689e554ba9293b9c1f6344a3c8fcb6951d9f9eac4a2e2df13de021aade7c186be27500e81388e5b8bcab4c80f220a31 +87ae0aa0aa48eac53d1ca5a7b93917de12db9e40ceabf8fdb40884ae771cfdf095411deef7c9f821af0b7070454a2608 +a71ffa7eae8ace94e6c3581d4cb2ad25d48cbd27edc9ec45baa2c8eb932a4773c3272b2ffaf077b40f76942a1f3af7f2 +94c218c91a9b73da6b7a495b3728f3028df8ad9133312fc0c03e8c5253b7ccb83ed14688fd4602e2fd41f29a0bc698bd +ae1e77b90ca33728af07a4c03fb2ef71cd92e2618e7bf8ed4d785ce90097fc4866c29999eb84a6cf1819d75285a03af2 +b7a5945b277dab9993cf761e838b0ac6eaa903d7111fca79f9fde3d4285af7a89bf6634a71909d095d7619d913972c9c +8c43b37be02f39b22029b20aca31bff661abce4471dca88aa3bddefd9c92304a088b2dfc8c4795acc301ca3160656af2 +b32e5d0fba024554bd5fe8a793ebe8003335ddd7f585876df2048dcf759a01285fecb53daae4950ba57f3a282a4d8495 +85ea7fd5e10c7b659df5289b2978b2c89e244f269e061b9a15fcab7983fc1962b63546e82d5731c97ec74b6804be63ef +96b89f39181141a7e32986ac02d7586088c5a9662cec39843f397f3178714d02f929af70630c12cbaba0268f8ba2d4fa +929ab1a2a009b1eb37a2817c89696a06426529ebe3f306c586ab717bd34c35a53eca2d7ddcdef36117872db660024af9 +a696dccf439e9ca41511e16bf3042d7ec0e2f86c099e4fc8879d778a5ea79e33aa7ce96b23dc4332b7ba26859d8e674d +a8fe69a678f9a194b8670a41e941f0460f6e2dbc60470ab4d6ae2679cc9c6ce2c3a39df2303bee486dbfde6844e6b31a +95f58f5c82de2f2a927ca99bf63c9fc02e9030c7e46d0bf6b67fe83a448d0ae1c99541b59caf0e1ccab8326231af09a5 +a57badb2c56ca2c45953bd569caf22968f76ed46b9bac389163d6fe22a715c83d5e94ae8759b0e6e8c2f27bff7748f3f +868726fd49963b24acb5333364dffea147e98f33aa19c7919dc9aca0fd26661cfaded74ede7418a5fadbe7f5ae67b67b +a8d8550dcc64d9f1dd7bcdab236c4122f2b65ea404bb483256d712c7518f08bb028ff8801f1da6aed6cbfc5c7062e33b +97e25a87dae23155809476232178538d4bc05d4ff0882916eb29ae515f2a62bfce73083466cc0010ca956aca200aeacc +b4ea26be3f4bd04aa82d7c4b0913b97bcdf5e88b76c57eb1a336cbd0a3eb29de751e1bc47c0e8258adec3f17426d0c71 +99ee555a4d9b3cf2eb420b2af8e3bc99046880536116d0ce7193464ac40685ef14e0e3c442f604e32f8338cb0ef92558 +8c64efa1da63cd08f319103c5c7a761221080e74227bbc58b8fb35d08aa42078810d7af3e60446cbaff160c319535648 +8d9fd88040076c28420e3395cbdfea402e4077a3808a97b7939d49ecbcf1418fe50a0460e1c1b22ac3f6e7771d65169a +ae3c19882d7a9875d439265a0c7003c8d410367627d21575a864b9cb4918de7dbdb58a364af40c5e045f3df40f95d337 +b4f7bfacab7b2cafe393f1322d6dcc6f21ffe69cd31edc8db18c06f1a2b512c27bd0618091fd207ba8df1808e9d45914 +94f134acd0007c623fb7934bcb65ef853313eb283a889a3ffa79a37a5c8f3665f3d5b4876bc66223610c21dc9b919d37 +aa15f74051171daacdc1f1093d3f8e2d13da2833624b80a934afec86fc02208b8f55d24b7d66076444e7633f46375c6a +a32d6bb47ef9c836d9d2371807bafbbbbb1ae719530c19d6013f1d1f813c49a60e4fa51d83693586cba3a840b23c0404 +b61b3599145ea8680011aa2366dc511a358b7d67672d5b0c5be6db03b0efb8ca5a8294cf220ea7409621f1664e00e631 +859cafc3ee90b7ececa1ed8ef2b2fc17567126ff10ca712d5ffdd16aa411a5a7d8d32c9cab1fbf63e87dce1c6e2f5f53 +a2fef1b0b2874387010e9ae425f3a9676d01a095d017493648bcdf3b31304b087ccddb5cf76abc4e1548b88919663b6b +939e18c73befc1ba2932a65ede34c70e4b91e74cc2129d57ace43ed2b3af2a9cc22a40fbf50d79a63681b6d98852866d +b3b4259d37b1b14aee5b676c9a0dd2d7f679ab95c120cb5f09f9fbf10b0a920cb613655ddb7b9e2ba5af4a221f31303c +997255fe51aaca6e5a9cb3359bcbf25b2bb9e30649bbd53a8a7c556df07e441c4e27328b38934f09c09d9500b5fabf66 +abb91be2a2d860fd662ed4f1c6edeefd4da8dc10e79251cf87f06029906e7f0be9b486462718f0525d5e049472692cb7 +b2398e593bf340a15f7801e1d1fbda69d93f2a32a889ec7c6ae5e8a37567ac3e5227213c1392ee86cfb3b56ec2787839 +8ddf10ccdd72922bed36829a36073a460c2118fc7a56ff9c1ac72581c799b15c762cb56cb78e3d118bb9f6a7e56cb25e +93e6bc0a4708d16387cacd44cf59363b994dc67d7ada7b6d6dbd831c606d975247541b42b2a309f814c1bfe205681fc6 +b93fc35c05998cffda2978e12e75812122831523041f10d52f810d34ff71944979054b04de0117e81ddf5b0b4b3e13c0 +92221631c44d60d68c6bc7b287509f37ee44cbe5fdb6935cee36b58b17c7325098f98f7910d2c3ca5dc885ad1d6dabc7 +a230124424a57fad3b1671f404a94d7c05f4c67b7a8fbacfccea28887b78d7c1ed40b92a58348e4d61328891cd2f6cee +a6a230edb8518a0f49d7231bc3e0bceb5c2ac427f045819f8584ba6f3ae3d63ed107a9a62aad543d7e1fcf1f20605706 +845be1fe94223c7f1f97d74c49d682472585d8f772762baad8a9d341d9c3015534cc83d102113c51a9dea2ab10d8d27b +b44262515e34f2db597c8128c7614d33858740310a49cdbdf9c8677c5343884b42c1292759f55b8b4abc4c86e4728033 +805592e4a3cd07c1844bc23783408310accfdb769cca882ad4d07d608e590a288b7370c2cb327f5336e72b7083a0e30f +95153e8b1140df34ee864f4ca601cb873cdd3efa634af0c4093fbaede36f51b55571ab271e6a133020cd34db8411241f +82878c1285cfa5ea1d32175c9401f3cc99f6bb224d622d3fd98cc7b0a27372f13f7ab463ce3a33ec96f9be38dbe2dfe3 +b7588748f55783077c27fc47d33e20c5c0f5a53fc0ac10194c003aa09b9f055d08ec971effa4b7f760553997a56967b3 +b36b4de6d1883b6951f59cfae381581f9c6352fcfcf1524fccdab1571a20f80441d9152dc6b48bcbbf00371337ca0bd5 +89c5523f2574e1c340a955cbed9c2f7b5fbceb260cb1133160dabb7d41c2f613ec3f6e74bbfab3c4a0a6f0626dbe068f +a52f58cc39f968a9813b1a8ddc4e83f4219e4dd82c7aa1dd083bea7edf967151d635aa9597457f879771759b876774e4 +8300a67c2e2e123f89704abfde095463045dbd97e20d4c1157bab35e9e1d3d18f1f4aaba9cbe6aa2d544e92578eaa1b6 +ac6a7f2918768eb6a43df9d3a8a04f8f72ee52f2e91c064c1c7d75cad1a3e83e5aba9fe55bb94f818099ac91ccf2e961 +8d64a2b0991cf164e29835c8ddef6069993a71ec2a7de8157bbfa2e00f6367be646ed74cbaf524f0e9fe13fb09fa15fd +8b2ffe5a545f9f680b49d0a9797a4a11700a2e2e348c34a7a985fc278f0f12def6e06710f40f9d48e4b7fbb71e072229 +8ab8f71cd337fa19178924e961958653abf7a598e3f022138b55c228440a2bac4176cea3aea393549c03cd38a13eb3fc +8419d28318c19ea4a179b7abb43669fe96347426ef3ac06b158d79c0acf777a09e8e770c2fb10e14b3a0421705990b23 +8bacdac310e1e49660359d0a7a17fe3d334eb820e61ae25e84cb52f863a2f74cbe89c2e9fc3283745d93a99b79132354 +b57ace3fa2b9f6b2db60c0d861ace7d7e657c5d35d992588aeed588c6ce3a80b6f0d49f8a26607f0b17167ab21b675e4 +83e265cde477f2ecc164f49ddc7fb255bb05ff6adc347408353b7336dc3a14fdedc86d5a7fb23f36b8423248a7a67ed1 +a60ada971f9f2d79d436de5d3d045f5ab05308cae3098acaf5521115134b2a40d664828bb89895840db7f7fb499edbc5 +a63eea12efd89b62d3952bf0542a73890b104dd1d7ff360d4755ebfa148fd62de668edac9eeb20507967ea37fb220202 +a0275767a270289adc991cc4571eff205b58ad6d3e93778ddbf95b75146d82517e8921bd0d0564e5b75fa0ccdab8e624 +b9b03fd3bf07201ba3a039176a965d736b4ef7912dd9e9bf69fe1b57c330a6aa170e5521fe8be62505f3af81b41d7806 +a95f640e26fb1106ced1729d6053e41a16e4896acac54992279ff873e5a969aad1dcfa10311e28b8f409ac1dab7f03bb +b144778921742418053cb3c70516c63162c187f00db2062193bb2c14031075dbe055d020cde761b26e8c58d0ea6df2c1 +8432fbb799e0435ef428d4fefc309a05dd589bce74d7a87faf659823e8c9ed51d3e42603d878e80f439a38be4321c2fa +b08ddef14e42d4fd5d8bf39feb7485848f0060d43b51ed5bdda39c05fe154fb111d29719ee61a23c392141358c0cfcff +8ae3c5329a5e025b86b5370e06f5e61177df4bda075856fade20a17bfef79c92f54ed495f310130021ba94fb7c33632b +92b6d3c9444100b4d7391febfc1dddaa224651677c3695c47a289a40d7a96d200b83b64e6d9df51f534564f272a2c6c6 +b432bc2a3f93d28b5e506d68527f1efeb2e2570f6be0794576e2a6ef9138926fdad8dd2eabfa979b79ab7266370e86bc +8bc315eacedbcfc462ece66a29662ca3dcd451f83de5c7626ef8712c196208fb3d8a0faf80b2e80384f0dd9772f61a23 +a72375b797283f0f4266dec188678e2b2c060dfed5880fc6bb0c996b06e91a5343ea2b695adaab0a6fd183b040b46b56 +a43445036fbaa414621918d6a897d3692fdae7b2961d87e2a03741360e45ebb19fcb1703d23f1e15bb1e2babcafc56ac +b9636b2ffe305e63a1a84bd44fb402442b1799bd5272638287aa87ca548649b23ce8ce7f67be077caed6aa2dbc454b78 +99a30bf0921d854c282b83d438a79f615424f28c2f99d26a05201c93d10378ab2cd94a792b571ddae5d4e0c0013f4006 +8648e3c2f93d70b392443be116b48a863e4b75991bab5db656a4ef3c1e7f645e8d536771dfe4e8d1ceda3be8d32978b0 +ab50dc9e6924c1d2e9d2e335b2d679fc7d1a7632e84964d3bac0c9fe57e85aa5906ec2e7b0399d98ddd022e9b19b5904 +ab729328d98d295f8f3272afaf5d8345ff54d58ff9884da14f17ecbdb7371857fdf2f3ef58080054e9874cc919b46224 +83fa5da7592bd451cad3ad7702b4006332b3aae23beab4c4cb887fa6348317d234bf62a359e665b28818e5410c278a09 +8bdbff566ae9d368f114858ef1f009439b3e9f4649f73efa946e678d6c781d52c69af195df0a68170f5f191b2eac286b +91245e59b4425fd4edb2a61d0d47c1ccc83d3ced8180de34887b9655b5dcda033d48cde0bdc3b7de846d246c053a02e8 +a2cb00721e68f1cad8933947456f07144dc69653f96ceed845bd577d599521ba99cdc02421118971d56d7603ed118cbf +af8cd66d303e808b22ec57860dd909ca64c27ec2c60e26ffecfdc1179d8762ffd2739d87b43959496e9fee4108df71df +9954136812dffcd5d3f167a500e7ab339c15cfc9b3398d83f64b0daa3dd5b9a851204f424a3493b4e326d3de81e50a62 +93252254d12511955f1aa464883ad0da793f84d900fea83e1df8bca0f2f4cf5b5f9acbaec06a24160d33f908ab5fea38 +997cb55c26996586ba436a95566bd535e9c22452ca5d2a0ded2bd175376557fa895f9f4def4519241ff386a063f2e526 +a12c78ad451e0ac911260ade2927a768b50cb4125343025d43474e7f465cdc446e9f52a84609c5e7e87ae6c9b3f56cda +a789d4ca55cbba327086563831b34487d63d0980ba8cf55197c016702ed6da9b102b1f0709ce3da3c53ff925793a3d73 +a5d76acbb76741ce85be0e655b99baa04f7f587347947c0a30d27f8a49ae78cce06e1cde770a8b618d3db402be1c0c4b +873c0366668c8faddb0eb7c86f485718d65f8c4734020f1a18efd5fa123d3ea8a990977fe13592cd01d17e60809cb5ff +b659b71fe70f37573ff7c5970cc095a1dc0da3973979778f80a71a347ef25ad5746b2b9608bad4ab9a4a53a4d7df42d7 +a34cbe05888e5e5f024a2db14cb6dcdc401a9cbd13d73d3c37b348f68688f87c24ca790030b8f84fef9e74b4eab5e412 +94ce8010f85875c045b0f014db93ef5ab9f1f6842e9a5743dce9e4cb872c94affd9e77c1f1d1ab8b8660b52345d9acb9 +adefa9b27a62edc0c5b019ddd3ebf45e4de846165256cf6329331def2e088c5232456d3de470fdce3fa758bfdd387512 +a6b83821ba7c1f83cc9e4529cf4903adb93b26108e3d1f20a753070db072ad5a3689643144bdd9c5ea06bb9a7a515cd0 +a3a9ddedc2a1b183eb1d52de26718151744db6050f86f3580790c51d09226bf05f15111691926151ecdbef683baa992c +a64bac89e7686932cdc5670d07f0b50830e69bfb8c93791c87c7ffa4913f8da881a9d8a8ce8c1a9ce5b6079358c54136 +a77b5a63452cb1320b61ab6c7c2ef9cfbcade5fd4727583751fb2bf3ea330b5ca67757ec1f517bf4d503ec924fe32fbd +8746fd8d8eb99639d8cd0ca34c0d9c3230ed5a312aab1d3d925953a17973ee5aeb66e68667e93caf9cb817c868ea8f3d +88a2462a26558fc1fbd6e31aa8abdc706190a17c27fdc4217ffd2297d1b1f3321016e5c4b2384c5454d5717dc732ed03 +b78893a97e93d730c8201af2e0d3b31cb923d38dc594ffa98a714e627c473d42ea82e0c4d2eeb06862ee22a9b2c54588 +920cc8b5f1297cf215a43f6fc843e379146b4229411c44c0231f6749793d40f07b9af7699fd5d21fd69400b97febe027 +a0f0eafce1e098a6b58c7ad8945e297cd93aaf10bc55e32e2e32503f02e59fc1d5776936577d77c0b1162cb93b88518b +98480ba0064e97a2e7a6c4769b4d8c2a322cfc9a3b2ca2e67e9317e2ce04c6e1108169a20bd97692e1cb1f1423b14908 +83dbbb2fda7e287288011764a00b8357753a6a44794cc8245a2275237f11affdc38977214e463ad67aec032f3dfa37e9 +86442fff37598ce2b12015ff19b01bb8a780b40ad353d143a0f30a06f6d23afd5c2b0a1253716c855dbf445cc5dd6865 +b8a4c60c5171189414887847b9ed9501bff4e4c107240f063e2d254820d2906b69ef70406c585918c4d24f1dd052142b +919f33a98e84015b2034b57b5ffe9340220926b2c6e45f86fd79ec879dbe06a148ae68b77b73bf7d01bd638a81165617 +95c13e78d89474a47fbc0664f6f806744b75dede95a479bbf844db4a7f4c3ae410ec721cb6ffcd9fa9c323da5740d5ae +ab7151acc41fffd8ec6e90387700bcd7e1cde291ea669567295bea1b9dd3f1df2e0f31f3588cd1a1c08af8120aca4921 +80e74c5c47414bd6eeef24b6793fb1fa2d8fb397467045fcff887c52476741d5bc4ff8b6d3387cb53ad285485630537f +a296ad23995268276aa351a7764d36df3a5a3cffd7dbeddbcea6b1f77adc112629fdeffa0918b3242b3ccd5e7587e946 +813d2506a28a2b01cb60f49d6bd5e63c9b056aa56946faf2f33bd4f28a8d947569cfead3ae53166fc65285740b210f86 +924b265385e1646287d8c09f6c855b094daaee74b9e64a0dddcf9ad88c6979f8280ba30c8597b911ef58ddb6c67e9fe3 +8d531513c70c2d3566039f7ca47cd2352fd2d55b25675a65250bdb8b06c3843db7b2d29c626eed6391c238fc651cf350 +82b338181b62fdc81ceb558a6843df767b6a6e3ceedc5485664b4ea2f555904b1a45fbb35f6cf5d96f27da10df82a325 +92e62faaedea83a37f314e1d3cb4faaa200178371d917938e59ac35090be1db4b4f4e0edb78b9c991de202efe4f313d8 +99d645e1b642c2dc065bac9aaa0621bc648c9a8351efb6891559c3a41ba737bd155fb32d7731950514e3ecf4d75980e4 +b34a13968b9e414172fb5d5ece9a39cf2eb656128c3f2f6cc7a9f0c69c6bae34f555ecc8f8837dc34b5e470e29055c78 +a2a0bb7f3a0b23a2cbc6585d59f87cd7e56b2bbcb0ae48f828685edd9f7af0f5edb4c8e9718a0aaf6ef04553ba71f3b7 +8e1a94bec053ed378e524b6685152d2b52d428266f2b6eadd4bcb7c4e162ed21ab3e1364879673442ee2162635b7a4d8 +9944adaff14a85eab81c73f38f386701713b52513c4d4b838d58d4ffa1d17260a6d056b02334850ea9a31677c4b078bd +a450067c7eceb0854b3eca3db6cf38669d72cb7143c3a68787833cbca44f02c0be9bfbe082896f8a57debb13deb2afb1 +8be4ad3ac9ef02f7df09254d569939757101ee2eda8586fefcd8c847adc1efe5bdcb963a0cafa17651befaafb376a531 +90f6de91ea50255f148ac435e08cf2ac00c772a466e38155bd7e8acf9197af55662c7b5227f88589b71abe9dcf7ba343 +86e5a24f0748b106dee2d4d54e14a3b0af45a96cbee69cac811a4196403ebbee17fd24946d7e7e1b962ac7f66dbaf610 +afdd96fbcda7aa73bf9eeb2292e036c25753d249caee3b9c013009cc22e10d3ec29e2aa6ddbb21c4e949b0c0bccaa7f4 +b5a4e7436d5473647c002120a2cb436b9b28e27ad4ebdd7c5f122b91597c507d256d0cbd889d65b3a908531936e53053 +b632414c3da704d80ac2f3e5e0e9f18a3637cdc2ebeb613c29300745582427138819c4e7b0bec3099c1b8739dac1807b +a28df1464d3372ce9f37ef1db33cc010f752156afae6f76949d98cd799c0cf225c20228ae86a4da592d65f0cffe3951b +898b93d0a31f7d3f11f253cb7a102db54b669fd150da302d8354d8e02b1739a47cb9bd88015f3baf12b00b879442464e +96fb88d89a12049091070cb0048a381902965e67a8493e3991eaabe5d3b7ff7eecd5c94493a93b174df3d9b2c9511755 +b899cb2176f59a5cfba3e3d346813da7a82b03417cad6342f19cc8f12f28985b03bf031e856a4743fd7ebe16324805b0 +a60e2d31bc48e0c0579db15516718a03b73f5138f15037491f4dae336c904e312eda82d50862f4debd1622bb0e56d866 +979fc8b987b5cef7d4f4b58b53a2c278bd25a5c0ea6f41c715142ea5ff224c707de38451b0ad3aa5e749aa219256650a +b2a75bff18e1a6b9cf2a4079572e41205741979f57e7631654a3c0fcec57c876c6df44733c9da3d863db8dff392b44a3 +b7a0f0e811222c91e3df98ff7f286b750bc3b20d2083966d713a84a2281744199e664879401e77470d44e5a90f3e5181 +82b74ba21c9d147fbc338730e8f1f8a6e7fc847c3110944eb17a48bea5e06eecded84595d485506d15a3e675fd0e5e62 +a7f44eef817d5556f0d1abcf420301217d23c69dd2988f44d91ea1f1a16c322263cbacd0f190b9ba22b0f141b9267b4f +aadb68164ede84fc1cb3334b3194d84ba868d5a88e4c9a27519eef4923bc4abf81aab8114449496c073c2a6a0eb24114 +b5378605fabe9a8c12a5dc55ef2b1de7f51aedb61960735c08767a565793cea1922a603a6983dc25f7cea738d0f7c40d +a97a4a5cd8d51302e5e670aee78fe6b5723f6cc892902bbb4f131e82ca1dfd5de820731e7e3367fb0c4c1922a02196e3 +8bdfeb15c29244d4a28896f2b2cb211243cd6a1984a3f5e3b0ebe5341c419beeab3304b390a009ffb47588018034b0ea +a9af3022727f2aa2fca3b096968e97edad3f08edcbd0dbca107b892ae8f746a9c0485e0d6eb5f267999b23a845923ed0 +8e7594034feef412f055590fbb15b6322dc4c6ab7a4baef4685bd13d71a83f7d682b5781bdfa0d1c659489ce9c2b8000 +84977ca6c865ebee021c58106c1a4ad0c745949ecc5332948002fd09bd9b890524878d0c29da96fd11207621136421fe +8687551a79158e56b2375a271136756313122132a6670fa51f99a1b5c229ed8eea1655a734abae13228b3ebfd2a825dd +a0227d6708979d99edfc10f7d9d3719fd3fc68b0d815a7185b60307e4c9146ad2f9be2b8b4f242e320d4288ceeb9504c +89f75583a16735f9dd8b7782a130437805b34280ccea8dac6ecaee4b83fe96947e7b53598b06fecfffdf57ffc12cc445 +a0056c3353227f6dd9cfc8e3399aa5a8f1d71edf25d3d64c982910f50786b1e395c508d3e3727ac360e3e040c64b5298 +b070e61a6d813626144b312ded1788a6d0c7cec650a762b2f8df6e4743941dd82a2511cd956a3f141fc81e15f4e092da +b4e6db232e028a1f989bb5fc13416711f42d389f63564d60851f009dcffac01acfd54efa307aa6d4c0f932892d4e62b0 +89b5991a67db90024ddd844e5e1a03ef9b943ad54194ae0a97df775dde1addf31561874f4e40fbc37a896630f3bbda58 +ad0e8442cb8c77d891df49cdb9efcf2b0d15ac93ec9be1ad5c3b3cca1f4647b675e79c075335c1f681d56f14dc250d76 +b5d55a6ae65bb34dd8306806cb49b5ccb1c83a282ee47085cf26c4e648e19a52d9c422f65c1cd7e03ca63e926c5e92ea +b749501347e5ec07e13a79f0cb112f1b6534393458b3678a77f02ca89dca973fa7b30e55f0b25d8b92b97f6cb0120056 +94144b4a3ffc5eec6ba35ce9c245c148b39372d19a928e236a60e27d7bc227d18a8cac9983851071935d8ffb64b3a34f +92bb4f9f85bc8c028a3391306603151c6896673135f8a7aefedd27acb322c04ef5dac982fc47b455d6740023e0dd3ea3 +b9633a4a101461a782fc2aa092e9dbe4e2ad00987578f18cd7cf0021a909951d60fe79654eb7897806795f93c8ff4d1c +809f0196753024821b48a016eca5dbb449a7c55750f25981bb7a4b4c0e0846c09b8f6128137905055fc43a3f0deb4a74 +a27dc9cdd1e78737a443570194a03d89285576d3d7f3a3cf15cc55b3013e42635d4723e2e8fe1d0b274428604b630db9 +861f60f0462e04cd84924c36a28163def63e777318d00884ab8cb64c8df1df0bce5900342163edb60449296484a6c5bf +b7bc23fb4e14af4c4704a944253e760adefeca8caee0882b6bbd572c84434042236f39ae07a8f21a560f486b15d82819 +b9a6eb492d6dd448654214bd01d6dc5ff12067a11537ab82023fc16167507ee25eed2c91693912f4155d1c07ed9650b3 +97678af29c68f9a5e213bf0fb85c265303714482cfc4c2c00b4a1e8a76ed08834ee6af52357b143a1ca590fb0265ea5a +8a15b499e9eca5b6cac3070b5409e8296778222018ad8b53a5d1f6b70ad9bb10c68a015d105c941ed657bf3499299e33 +b487fefede2e8091f2c7bfe85770db2edff1db83d4effe7f7d87bff5ab1ace35e9b823a71adfec6737fede8d67b3c467 +8b51b916402aa2c437fce3bcad6dad3be8301a1a7eab9d163085b322ffb6c62abf28637636fe6114573950117fc92898 +b06a2106d031a45a494adec0881cb2f82275dff9dcdd2bc16807e76f3bec28a6734edd3d54f0be8199799a78cd6228ad +af0a185391bbe2315eb97feac98ad6dd2e5d931d012c621abd6e404a31cc188b286fef14871762190acf086482b2b5e2 +8e78ee8206506dd06eb7729e32fceda3bebd8924a64e4d8621c72e36758fda3d0001af42443851d6c0aea58562870b43 +a1ba52a569f0461aaf90b49b92be976c0e73ec4a2c884752ee52ffb62dd137770c985123d405dfb5de70692db454b54a +8d51b692fa1543c51f6b62b9acb8625ed94b746ef96c944ca02859a4133a5629da2e2ce84e111a7af8d9a5b836401c64 +a7a20d45044cf6492e0531d0b8b26ffbae6232fa05a96ed7f06bdb64c2b0f5ca7ec59d5477038096a02579e633c7a3ff +84df867b98c53c1fcd4620fef133ee18849c78d3809d6aca0fb6f50ff993a053a455993f216c42ab6090fa5356b8d564 +a7227c439f14c48e2577d5713c97a5205feb69acb0b449152842e278fa71e8046adfab468089c8b2288af1fc51fa945b +855189b3a105670779997690876dfaa512b4a25a24931a912c2f0f1936971d2882fb4d9f0b3d9daba77eaf660e9d05d5 +b5696bd6706de51c502f40385f87f43040a5abf99df705d6aac74d88c913b8ecf7a99a63d7a37d9bdf3a941b9e432ff5 +ab997beb0d6df9c98d5b49864ef0b41a2a2f407e1687dfd6089959757ba30ed02228940b0e841afe6911990c74d536c4 +b36b65f85546ebfdbe98823d5555144f96b4ab39279facd19c0de3b8919f105ba0315a0784dce4344b1bc62d8bb4a5a3 +b8371f0e4450788720ac5e0f6cd3ecc5413d33895083b2c168d961ec2b5c3de411a4cc0712481cbe8df8c2fa1a7af006 +98325d8026b810a8b7a114171ae59a57e8bbc9848e7c3df992efc523621729fd8c9f52114ce01d7730541a1ada6f1df1 +8d0e76dbd37806259486cd9a31bc8b2306c2b95452dc395546a1042d1d17863ef7a74c636b782e214d3aa0e8d717f94a +a4e15ead76da0214d702c859fb4a8accdcdad75ed08b865842bd203391ec4cba2dcc916455e685f662923b96ee0c023f +8618190972086ebb0c4c1b4a6c94421a13f378bc961cc8267a301de7390c5e73c3333864b3b7696d81148f9d4843fd02 +85369d6cc7342e1aa15b59141517d8db8baaaeb7ab9670f3ba3905353948d575923d283b7e5a05b13a30e7baf1208a86 +87c51ef42233c24a6da901f28c9a075d9ba3c625687c387ad6757b72ca6b5a8885e6902a3082da7281611728b1e45f26 +aa6348a4f71927a3106ad0ea8b02fc8d8c65531e4ab0bd0a17243e66f35afe252e40ab8eef9f13ae55a72566ffdaff5c +96a3bc976e9d03765cc3fee275fa05b4a84c94fed6b767e23ca689394501e96f56f7a97cffddc579a6abff632bf153be +97dbf96c6176379fdb2b888be4e757b2bca54e74124bd068d3fa1dbd82a011bbeb75079da38e0cd22a761fe208ecad9b +b70cf0a1d14089a4129ec4e295313863a59da8c7e26bf74cc0e704ed7f0ee4d7760090d0ddf7728180f1bf2c5ac64955 +882d664714cc0ffe53cbc9bef21f23f3649824f423c4dbad1f893d22c4687ab29583688699efc4d5101aa08b0c3e267a +80ecb7cc963e677ccaddbe3320831dd6ee41209acf4ed41b16dc4817121a3d86a1aac9c4db3d8c08a55d28257088af32 +a25ba667d832b145f9ce18c3f9b1bd00737aa36db020e1b99752c8ef7d27c6c448982bd8d352e1b6df266b8d8358a8d5 +83734841c13dee12759d40bdd209b277e743b0d08cc0dd1e0b7afd2d65bfa640400eefcf6be4a52e463e5b3d885eeac6 +848d16505b04804afc773aebabb51b36fd8aacfbb0e09b36c0d5d57df3c0a3b92f33e7d5ad0a7006ec46ebb91df42b8c +909a8d793f599e33bb9f1dc4792a507a97169c87cd5c087310bc05f30afcd247470b4b56dec59894c0fb1d48d39bb54e +8e558a8559df84a1ba8b244ece667f858095c50bb33a5381e60fcc6ba586b69693566d8819b4246a27287f16846c1dfa +84d6b69729f5aaa000cd710c2352087592cfbdf20d5e1166977e195818e593fa1a50d1e04566be23163a2523dc1612f1 +9536d262b7a42125d89f4f32b407d737ba8d9242acfc99d965913ab3e043dcac9f7072a43708553562cac4cba841df30 +9598548923ca119d6a15fd10861596601dd1dedbcccca97bb208cdc1153cf82991ea8cc17686fbaa867921065265970c +b87f2d4af6d026e4d2836bc3d390a4a18e98a6e386282ce96744603bab74974272e97ac2da281afa21885e2cbb3a8001 +991ece62bf07d1a348dd22191868372904b9f8cf065ae7aa4e44fd24a53faf6d851842e35fb472895963aa1992894918 +a8c53dea4c665b30e51d22ca6bc1bc78aaf172b0a48e64a1d4b93439b053877ec26cb5221c55efd64fa841bbf7d5aff4 +93487ec939ed8e740f15335b58617c3f917f72d07b7a369befd479ae2554d04deb240d4a14394b26192efae4d2f4f35d +a44793ab4035443f8f2968a40e043b4555960193ffa3358d22112093aadfe2c136587e4139ffd46d91ed4107f61ea5e0 +b13fe033da5f0d227c75927d3dacb06dbaf3e1322f9d5c7c009de75cdcba5e308232838785ab69a70f0bedea755e003f +970a29b075faccd0700fe60d1f726bdebf82d2cc8252f4a84543ebd3b16f91be42a75c9719a39c4096139f0f31393d58 +a4c3eb1f7160f8216fc176fb244df53008ff32f2892363d85254002e66e2de21ccfe1f3b1047589abee50f29b9d507e3 +8c552885eab04ba40922a8f0c3c38c96089c95ff1405258d3f1efe8d179e39e1295cbf67677894c607ae986e4e6b1fb0 +b3671746fa7f848c4e2ae6946894defadd815230b906b419143523cc0597bc1d6c0a4c1e09d49b66b4a2c11cde3a4de3 +937a249a95813a5e2ef428e355efd202e15a37d73e56cfb7e57ea9f943f2ce5ca8026f2f1fd25bf164ba89d07077d858 +83646bdf6053a04aa9e2f112499769e5bd5d0d10f2e13db3ca89bd45c0b3b7a2d752b7d137fb3909f9c62b78166c9339 +b4eac4b91e763666696811b7ed45e97fd78310377ebea1674b58a2250973f80492ac35110ed1240cd9bb2d17493d708c +82db43a99bc6573e9d92a3fd6635dbbb249ac66ba53099c3c0c8c8080b121dd8243cd5c6e36ba0a4d2525bae57f5c89c +a64d6a264a681b49d134c655d5fc7756127f1ee7c93d328820f32bca68869f53115c0d27fef35fe71f7bc4fdaed97348 +8739b7a9e2b4bc1831e7f04517771bc7cde683a5e74e052542517f8375a2f64e53e0d5ac925ef722327e7bb195b4d1d9 +8f337cdd29918a2493515ebb5cf702bbe8ecb23b53c6d18920cc22f519e276ca9b991d3313e2d38ae17ae8bdfa4f8b7e +b0edeab9850e193a61f138ef2739fc42ceec98f25e7e8403bfd5fa34a7bc956b9d0898250d18a69fa4625a9b3d6129da +a9920f26fe0a6d51044e623665d998745c9eca5bce12051198b88a77d728c8238f97d4196f26e43b24f8841500b998d0 +86e655d61502b979eeeeb6f9a7e1d0074f936451d0a1b0d2fa4fb3225b439a3770767b649256fe481361f481a8dbc276 +84d3b32fa62096831cc3bf013488a9f3f481dfe293ae209ed19585a03f7db8d961a7a9dd0db82bd7f62d612707575d9c +81c827826ec9346995ffccf62a241e3b2d32f7357acd1b1f8f7a7dbc97022d3eb51b8a1230e23ce0b401d2e535e8cd78 +94a1e40c151191c5b055b21e86f32e69cbc751dcbdf759a48580951834b96a1eed75914c0d19a38aefd21fb6c8d43d0c +ab890222b44bc21b71f7c75e15b6c6e16bb03371acce4f8d4353ff3b8fcd42a14026589c5ed19555a3e15e4d18bfc3a3 +accb0be851e93c6c8cc64724cdb86887eea284194b10e7a43c90528ed97e9ec71ca69c6fac13899530593756dd49eab2 +b630220aa9e1829c233331413ee28c5efe94ea8ea08d0c6bfd781955078b43a4f92915257187d8526873e6c919c6a1de +add389a4d358c585f1274b73f6c3c45b58ef8df11f9d11221f620e241bf3579fba07427b288c0c682885a700cc1fa28d +a9fe6ca8bf2961a3386e8b8dcecc29c0567b5c0b3bcf3b0f9169f88e372b80151af883871fc5229815f94f43a6f5b2b0 +ad839ae003b92b37ea431fa35998b46a0afc3f9c0dd54c3b3bf7a262467b13ff3c323ada1c1ae02ac7716528bdf39e3e +9356d3fd0edcbbb65713c0f2a214394f831b26f792124b08c5f26e7f734b8711a87b7c4623408da6a091c9aef1f6af3c +896b25b083c35ac67f0af3784a6a82435b0e27433d4d74cd6d1eafe11e6827827799490fb1c77c11de25f0d75f14e047 +8bfa019391c9627e8e5f05c213db625f0f1e51ec68816455f876c7e55b8f17a4f13e5aae9e3fb9e1cf920b1402ee2b40 +8ba3a6faa6a860a8f3ce1e884aa8769ceded86380a86520ab177ab83043d380a4f535fe13884346c5e51bee68da6ab41 +a8292d0844084e4e3bb7af92b1989f841a46640288c5b220fecfad063ee94e86e13d3d08038ec2ac82f41c96a3bfe14d +8229bb030b2fc566e11fd33c7eab7a1bb7b49fed872ea1f815004f7398cb03b85ea14e310ec19e1f23e0bdaf60f8f76c +8cfbf869ade3ec551562ff7f63c2745cc3a1f4d4dc853a0cd42dd5f6fe54228f86195ea8fe217643b32e9f513f34a545 +ac52a3c8d3270ddfe1b5630159da9290a5ccf9ccbdef43b58fc0a191a6c03b8a5974cf6e2bbc7bd98d4a40a3581482d7 +ab13decb9e2669e33a7049b8eca3ca327c40dea15ad6e0e7fa63ed506db1d258bc36ac88b35f65cae0984e937eb6575d +b5e748eb1a7a1e274ff0cc56311c198f2c076fe4b7e73e5f80396fe85358549df906584e6bb2c8195b3e2be7736850a5 +b5cb911325d8f963c41f691a60c37831c7d3bbd92736efa33d1f77a22b3fde7f283127256c2f47e197571e6fe0b46149 +8a01dc6ed1b55f26427a014faa347130738b191a06b800e32042a46c13f60b49534520214359d68eb2e170c31e2b8672 +a72fa874866e19b2efb8e069328362bf7921ec375e3bcd6b1619384c3f7ee980f6cf686f3544e9374ff54b4d17a1629c +8db21092f7c5f110fba63650b119e82f4b42a997095d65f08f8237b02dd66fdf959f788df2c35124db1dbd330a235671 +8c65d50433d9954fe28a09fa7ba91a70a590fe7ba6b3060f5e4be0f6cef860b9897fa935fb4ebc42133524eb071dd169 +b4614058e8fa21138fc5e4592623e78b8982ed72aa35ee4391b164f00c68d277fa9f9eba2eeefc890b4e86eba5124591 +ab2ad3a1bce2fbd55ca6b7c23786171fe1440a97d99d6df4d80d07dd56ac2d7203c294b32fc9e10a6c259381a73f24a1 +812ae3315fdc18774a8da3713a4679e8ed10b9405edc548c00cacbe25a587d32040566676f135e4723c5dc25df5a22e9 +a464b75f95d01e5655b54730334f443c8ff27c3cb79ec7af4b2f9da3c2039c609908cd128572e1fd0552eb597e8cef8d +a0db3172e93ca5138fe419e1c49a1925140999f6eff7c593e5681951ee0ec1c7e454c851782cbd2b8c9bc90d466e90e0 +806db23ba7d00b87d544eed926b3443f5f9c60da6b41b1c489fba8f73593b6e3b46ebfcab671ee009396cd77d5e68aa1 +8bfdf2c0044cc80260994e1c0374588b6653947b178e8b312be5c2a05e05767e98ea15077278506aee7df4fee1aaf89e +827f6558c16841b5592ff089c9c31e31eb03097623524394813a2e4093ad2d3f8f845504e2af92195aaa8a1679d8d692 +925c4f8eab2531135cd71a4ec88e7035b5eea34ba9d799c5898856080256b4a15ed1a746e002552e2a86c9c157e22e83 +a9f9a368f0e0b24d00a35b325964c85b69533013f9c2cfad9708be5fb87ff455210f8cb8d2ce3ba58ca3f27495552899 +8ac0d3bebc1cae534024187e7c71f8927ba8fcc6a1926cb61c2b6c8f26bb7831019e635a376146c29872a506784a4aaa +97c577be2cbbfdb37ad754fae9df2ada5fc5889869efc7e18a13f8e502fbf3f4067a509efbd46fd990ab47ce9a70f5a8 +935e7d82bca19f16614aa43b4a3474e4d20d064e4bfdf1cea2909e5c9ab72cfe3e54dc50030e41ee84f3588cebc524e9 +941aafc08f7c0d94cebfbb1f0aad5202c02e6e37f2c12614f57e727efa275f3926348f567107ee6d8914dd71e6060271 +af0fbc1ba05b4b5b63399686df3619968be5d40073de0313cbf5f913d3d4b518d4c249cdd2176468ccaa36040a484f58 +a0c414f23f46ca6d69ce74c6f8a00c036cb0edd098af0c1a7d39c802b52cfb2d5dbdf93fb0295453d4646e2af7954d45 +909cf39e11b3875bb63b39687ae1b5d1f5a15445e39bf164a0b14691b4ddb39a8e4363f584ef42213616abc4785b5d66 +a92bac085d1194fbd1c88299f07a061d0bdd3f980b663e81e6254dbb288bf11478c0ee880e28e01560f12c5ccb3c0103 +841705cd5cd76b943e2b7c5e845b9dd3c8defe8ef67e93078d6d5e67ade33ad4b0fd413bc196f93b0a4073c855cd97d4 +8e7eb8364f384a9161e81d3f1d52ceca9b65536ae49cc35b48c3e2236322ba4ae9973e0840802d9fa4f4d82ea833544f +aed3ab927548bc8bec31467ba80689c71a168e34f50dcb6892f19a33a099f5aa6b3f9cb79f5c0699e837b9a8c7f27efe +b8fbf7696210a36e20edabd77839f4dfdf50d6d015cdf81d587f90284a9bcef7d2a1ff520728d7cc69a4843d6c20dedd +a9d533769ce6830211c884ae50a82a7bf259b44ac71f9fb11f0296fdb3981e6b4c1753fe744647b247ebc433a5a61436 +8b4bdf90d33360b7f428c71cde0a49fb733badba8c726876945f58c620ce7768ae0e98fc8c31fa59d8955a4823336bb1 +808d42238e440e6571c59e52a35ae32547d502dc24fd1759d8ea70a7231a95859baf30b490a4ba55fa2f3aaa11204597 +85594701f1d2fee6dc1956bc44c7b31db93bdeec2f3a7d622c1a08b26994760773e3d57521a44cfd7e407ac3fd430429 +a66de045ce7173043a6825e9dc440ac957e2efb6df0a337f4f8003eb0c719d873a52e6eba3cb0d69d977ca37d9187674 +87a1c6a1fdff993fa51efa5c3ba034c079c0928a7d599b906336af7c2dcab9721ceaf3108c646490af9dff9a754f54b3 +926424223e462ceb75aed7c22ade8a7911a903b7e5dd4bc49746ddce8657f4616325cd12667d4393ac52cdd866396d0e +b5dc96106593b42b30f06f0b0a1e0c1aafc70432e31807252d3674f0b1ea5e58eac8424879d655c9488d85a879a3e572 +997ca0987735cc716507cb0124b1d266d218b40c9d8e0ecbf26a1d65719c82a637ce7e8be4b4815d307df717bde7c72a +92994d3f57a569b7760324bb5ae4e8e14e1633d175dab06aa57b8e391540e05f662fdc08b8830f489a063f59b689a688 +a8087fcc6aa4642cb998bea11facfe87eb33b90a9aa428ab86a4124ad032fc7d2e57795311a54ec9f55cc120ebe42df1 +a9bd7d1de6c0706052ca0b362e2e70e8c8f70f1f026ea189b4f87a08ce810297ebfe781cc8004430776c54c1a05ae90c +856d33282e8a8e33a3d237fb0a0cbabaf77ba9edf2fa35a831fdafcadf620561846aa6cbb6bdc5e681118e1245834165 +9524a7aa8e97a31a6958439c5f3339b19370f03e86b89b1d02d87e4887309dbbe9a3a8d2befd3b7ed5143c8da7e0a8ad +824fdf433e090f8acbd258ac7429b21f36f9f3b337c6d0b71d1416a5c88a767883e255b2888b7c906dd2e9560c4af24c +88c7fee662ca7844f42ed5527996b35723abffd0d22d4ca203b9452c639a5066031207a5ae763dbc0865b3299d19b1ec +919dca5c5595082c221d5ab3a5bc230f45da7f6dec4eb389371e142c1b9c6a2c919074842479c2844b72c0d806170c0c +b939be8175715e55a684578d8be3ceff3087f60fa875fff48e52a6e6e9979c955efef8ff67cfa2b79499ea23778e33b0 +873b6db725e7397d11bc9bed9ac4468e36619135be686790a79bc6ed4249058f1387c9a802ea86499f692cf635851066 +aeae06db3ec47e9e5647323fa02fac44e06e59b885ad8506bf71b184ab3895510c82f78b6b22a5d978e8218e7f761e9f +b99c0a8359c72ab88448bae45d4bf98797a26bca48b0d4460cd6cf65a4e8c3dd823970ac3eb774ae5d0cea4e7fadf33e +8f10c8ec41cdfb986a1647463076a533e6b0eec08520c1562401b36bb063ac972aa6b28a0b6ce717254e35940b900e3c +a106d9be199636d7add43b942290269351578500d8245d4aae4c083954e4f27f64740a3138a66230391f2d0e6043a8de +a469997908244578e8909ff57cffc070f1dbd86f0098df3cfeb46b7a085cfecc93dc69ee7cad90ff1dc5a34d50fe580c +a4ef087bea9c20eb0afc0ee4caba7a9d29dfa872137828c721391273e402fb6714afc80c40e98bbd8276d3836bffa080 +b07a013f73cd5b98dae0d0f9c1c0f35bff8a9f019975c4e1499e9bee736ca6fcd504f9bc32df1655ff333062382cff04 +b0a77188673e87cc83348c4cc5db1eecf6b5184e236220c8eeed7585e4b928db849944a76ec60ef7708ef6dac02d5592 +b1284b37e59b529f0084c0dacf0af6c0b91fc0f387bf649a8c74819debf606f7b07fc3e572500016fb145ec2b24e9f17 +97b20b5b4d6b9129da185adfbf0d3d0b0faeba5b9715f10299e48ea0521709a8296a9264ce77c275a59c012b50b6519a +b9d37e946fae5e4d65c1fbfacc8a62e445a1c9d0f882e60cca649125af303b3b23af53c81d7bac544fb7fcfc7a314665 +8e5acaac379f4bb0127efbef26180f91ff60e4c525bc9b798fc50dfaf4fe8a5aa84f18f3d3cfb8baead7d1e0499af753 +b0c0b8ab1235bf1cda43d4152e71efc1a06c548edb964eb4afceb201c8af24240bf8ab5cae30a08604e77432b0a5faf0 +8cc28d75d5c8d062d649cbc218e31c4d327e067e6dbd737ec0a35c91db44fbbd0d40ec424f5ed79814add16947417572 +95ae6219e9fd47efaa9cb088753df06bc101405ba50a179d7c9f7c85679e182d3033f35b00dbba71fdcd186cd775c52e +b5d28fa09f186ebc5aa37453c9b4d9474a7997b8ae92748ecb940c14868792292ac7d10ade01e2f8069242b308cf97e5 +8c922a0faa14cc6b7221f302df3342f38fc8521ec6c653f2587890192732c6da289777a6cd310747ea7b7d104af95995 +b9ad5f660b65230de54de535d4c0fcae5bc6b59db21dea5500fdc12eea4470fb8ea003690fdd16d052523418d5e01e8c +a39a9dd41a0ff78c82979483731f1cd68d3921c3e9965869662c22e02dde3877802e180ba93f06e7346f96d9fa9261d2 +8b32875977ec372c583b24234c27ed73aef00cdff61eb3c3776e073afbdeade548de9497c32ec6d703ff8ad0a5cb7fe4 +9644cbe755a5642fe9d26cfecf170d3164f1848c2c2e271d5b6574a01755f3980b3fc870b98cf8528fef6ecef4210c16 +81ea9d1fdd9dd66d60f40ce0712764b99da9448ae0b300f8324e1c52f154e472a086dda840cb2e0b9813dc8ce8afd4b5 +906aaa4a7a7cdf01909c5cfbc7ded2abc4b869213cbf7c922d4171a4f2e637e56f17020b852ad339d83b8ac92f111666 +939b5f11acbdeff998f2a080393033c9b9d8d5c70912ea651c53815c572d36ee822a98d6dfffb2e339f29201264f2cf4 +aba4898bf1ccea9b9e2df1ff19001e05891581659c1cbbde7ee76c349c7fc7857261d9785823c9463a8aea3f40e86b38 +83ca1a56b8a0be4820bdb5a9346357c68f9772e43f0b887729a50d2eb2a326bbcede676c8bf2e51d7c89bbd8fdb778a6 +94e86e9fe6addfe2c3ee3a547267ed921f4230d877a85bb4442c2d9350c2fa9a9c54e6fe662de82d1a2407e4ab1691c2 +a0cc3bdef671a59d77c6984338b023fa2b431b32e9ed2abe80484d73edc6540979d6f10812ecc06d4d0c5d4eaca7183c +b5343413c1b5776b55ea3c7cdd1f3af1f6bd802ea95effe3f2b91a523817719d2ecc3f8d5f3cc2623ace7e35f99ca967 +92085d1ed0ed28d8cabe3e7ff1905ed52c7ceb1eac5503760c52fb5ee3a726aba7c90b483c032acc3f166b083d7ec370 +8ec679520455275cd957fca8122724d287db5df7d29f1702a322879b127bff215e5b71d9c191901465d19c86c8d8d404 +b65eb2c63d8a30332eb24ee8a0c70156fc89325ebbb38bacac7cf3f8636ad8a472d81ccca80423772abc00192d886d8a +a9fe1c060b974bee4d590f2873b28635b61bfcf614e61ff88b1be3eee4320f4874e21e8d666d8ac8c9aba672efc6ecae +b3fe2a9a389c006a831dea7e777062df84b5c2803f9574d7fbe10b7e1c125817986af8b6454d6be9d931a5ac94cfe963 +95418ad13b734b6f0d33822d9912c4c49b558f68d08c1b34a0127fcfa666bcae8e6fda8832d2c75bb9170794a20e4d7c +a9a7df761e7f18b79494bf429572140c8c6e9d456c4d4e336184f3f51525a65eb9582bea1e601bdb6ef8150b7ca736a5 +a0de03b1e75edf7998c8c1ac69b4a1544a6fa675a1941950297917366682e5644a4bda9cdeedfaf9473d7fccd9080b0c +a61838af8d95c95edf32663a68f007d95167bf6e41b0c784a30b22d8300cfdd5703bd6d16e86396638f6db6ae7e42a85 +8866d62084d905c145ff2d41025299d8b702ac1814a7dec4e277412c161bc9a62fed735536789cb43c88693c6b423882 +91da22c378c81497fe363e7f695c0268443abee50f8a6625b8a41e865638a643f07b157ee566de09ba09846934b4e2d7 +941d21dd57c9496aa68f0c0c05507405fdd413acb59bc668ce7e92e1936c68ec4b065c3c30123319884149e88228f0b2 +a77af9b094bc26966ddf2bf9e1520c898194a5ccb694915950dadc204facbe3066d3d89f50972642d76b14884cfbaa21 +8e76162932346869f4618bde744647f7ab52ab498ad654bdf2a4feeb986ac6e51370841e5acbb589e38b6e7142bb3049 +b60979ace17d6937ece72e4f015da4657a443dd01cebc7143ef11c09e42d4aa8855999a65a79e2ea0067f31c9fc2ab0f +b3e2ffdd5ee6fd110b982fd4fad4b93d0fca65478f986d086eeccb0804960bfaa1919afa743c2239973ea65091fe57d2 +8ce0ce05e7d7160d44574011da687454dbd3c8b8290aa671731b066e2c82f8cf2d63cb8e932d78c6122ec610e44660e6 +ab005dd8d297045c39e2f72fb1c48edb501ccf3575d3d04b9817b3afee3f0bb0f3f53f64bda37d1d9cde545aae999bae +95bd7edb4c4cd60e3cb8a72558845a3cce6bb7032ccdf33d5a49ebb6ddf203bc3c79e7b7e550735d2d75b04c8b2441e8 +889953ee256206284094e4735dbbb17975bafc7c3cb94c9fbfee4c3e653857bfd49e818f64a47567f721b98411a3b454 +b188423e707640ab0e75a061e0b62830cde8afab8e1ad3dae30db69ffae4e2fc005bababbdcbd7213b918ed4f70e0c14 +a97e0fafe011abd70d4f99a0b36638b3d6e7354284588f17a88970ed48f348f88392779e9a038c6cbc9208d998485072 +87db11014a91cb9b63e8dfaa82cdebca98272d89eb445ee1e3ff9dbaf2b3fad1a03b888cffc128e4fe208ed0dddece0f +aad2e40364edd905d66ea4ac9d51f9640d6fda9a54957d26ba233809851529b32c85660fa401dbee3679ec54fa6dd966 +863e99336ca6edf03a5a259e59a2d0f308206e8a2fb320cfc0be06057366df8e0f94b33a28f574092736b3c5ada84270 +b34bcc56a057589f34939a1adc51de4ff6a9f4fee9c7fa9aa131e28d0cf0759a0c871b640162acdfbf91f3f1b59a3703 +935dd28f2896092995c5eff1618e5b6efe7a40178888d7826da9b0503c2d6e68a28e7fac1a334e166d0205f0695ef614 +b842cd5f8f5de5ca6c68cb4a5c1d7b451984930eb4cc18fd0934d52fdc9c3d2d451b1c395594d73bc3451432bfba653f +9014537885ce2debad736bc1926b25fdab9f69b216bf024f589c49dc7e6478c71d595c3647c9f65ff980b14f4bb2283b +8e827ccca1dd4cd21707140d10703177d722be0bbe5cac578db26f1ef8ad2909103af3c601a53795435b27bf95d0c9ed +8a0b8ad4d466c09d4f1e9167410dbe2edc6e0e6229d4b3036d30f85eb6a333a18b1c968f6ca6d6889bb08fecde017ef4 +9241ee66c0191b06266332dc9161dede384c4bb4e116dbd0890f3c3790ec5566da4568243665c4725b718ac0f6b5c179 +aeb4d5fad81d2b505d47958a08262b6f1b1de9373c2c9ba6362594194dea3e002ab03b8cbb43f867be83065d3d370f19 +8781bc83bb73f7760628629fe19e4714b494dbed444c4e4e4729b7f6a8d12ee347841a199888794c2234f51fa26fc2b9 +b58864f0acd1c2afa29367e637cbde1968d18589245d9936c9a489c6c495f54f0113ecdcbe4680ac085dd3c397c4d0c3 +94a24284afaeead61e70f3e30f87248d76e9726759445ca18cdb9360586c60cc9f0ec1c397f9675083e0b56459784e2e +aed358853f2b54dcbddf865e1816c2e89be12e940e1abfa661e2ee63ffc24a8c8096be2072fa83556482c0d89e975124 +b95374e6b4fc0765708e370bc881e271abf2e35c08b056a03b847e089831ef4fe3124b9c5849d9c276eb2e35b3daf264 +b834cdbcfb24c8f84bfa4c552e7fadc0028a140952fd69ed13a516e1314a4cd35d4b954a77d51a1b93e1f5d657d0315d +8fb6d09d23bfa90e7443753d45a918d91d75d8e12ec7d016c0dfe94e5c592ba6aaf483d2f16108d190822d955ad9cdc3 +aa315cd3c60247a6ad4b04f26c5404c2713b95972843e4b87b5a36a89f201667d70f0adf20757ebe1de1b29ae27dda50 +a116862dca409db8beff5b1ccd6301cdd0c92ca29a3d6d20eb8b87f25965f42699ca66974dd1a355200157476b998f3b +b4c2f5fe173c4dc8311b60d04a65ce1be87f070ac42e13cd19c6559a2931c6ee104859cc2520edebbc66a13dc7d30693 +8d4a02bf99b2260c334e7d81775c5cf582b00b0c982ce7745e5a90624919028278f5e9b098573bad5515ce7fa92a80c8 +8543493bf564ce6d97bd23be9bff1aba08bd5821ca834f311a26c9139c92a48f0c2d9dfe645afa95fec07d675d1fd53b +9344239d13fde08f98cb48f1f87d34cf6abe8faecd0b682955382a975e6eed64e863fa19043290c0736261622e00045c +aa49d0518f343005ca72b9e6c7dcaa97225ce6bb8b908ebbe7b1a22884ff8bfb090890364e325a0d414ad180b8f161d1 +907d7fd3e009355ab326847c4a2431f688627faa698c13c03ffdd476ecf988678407f029b8543a475dcb3dafdf2e7a9c +845f1f10c6c5dad2adc7935f5cd2e2b32f169a99091d4f1b05babe7317b9b1cdce29b5e62f947dc621b9acbfe517a258 +8f3be8e3b380ea6cdf9e9c237f5e88fd5a357e5ded80ea1fc2019810814de82501273b4da38916881125b6fa0cfd4459 +b9c7f487c089bf1d20c822e579628db91ed9c82d6ca652983aa16d98b4270c4da19757f216a71b9c13ddee3e6e43705f +8ba2d8c88ad2b872db104ea8ddbb006ec2f3749fd0e19298a804bb3a5d94de19285cc7fb19fee58a66f7851d1a66c39f +9375ecd3ed16786fe161af5d5c908f56eeb467a144d3bbddfc767e90065b7c94fc53431adebecba2b6c9b5821184d36e +a49e069bfadb1e2e8bff6a4286872e2a9765d62f0eaa4fcb0e5af4bbbed8be3510fb19849125a40a8a81d1e33e81c3eb +9522cc66757b386aa6b88619525c8ce47a5c346d590bb3647d12f991e6c65c3ab3c0cfc28f0726b6756c892eae1672be +a9a0f1f51ff877406fa83a807aeb17b92a283879f447b8a2159653db577848cc451cbadd01f70441e351e9ed433c18bc +8ff7533dcff6be8714df573e33f82cf8e9f2bcaaa43e939c4759d52b754e502717950de4b4252fb904560fc31dce94a4 +959724671e265a28d67c29d95210e97b894b360da55e4cf16e6682e7912491ed8ca14bfaa4dce9c25a25b16af580494f +92566730c3002f4046c737032487d0833c971e775de59fe02d9835c9858e2e3bc37f157424a69764596c625c482a2219 +a84b47ceff13ed9c3e5e9cdf6739a66d3e7c2bd8a6ba318fefb1a9aecf653bb2981da6733ddb33c4b0a4523acc429d23 +b4ddf571317e44f859386d6140828a42cf94994e2f1dcbcc9777f4eebbfc64fc1e160b49379acc27c4672b8e41835c5d +8ab95c94072b853d1603fdd0a43b30db617d13c1d1255b99075198e1947bfa5f59aed2b1147548a1b5e986cd9173d15c +89511f2eab33894fd4b3753d24249f410ff7263052c1fef6166fc63a79816656b0d24c529e45ccce6be28de6e375d916 +a0866160ca63d4f2be1b4ea050dac6b59db554e2ebb4e5b592859d8df339b46fd7cb89aaed0951c3ee540aee982c238a +8fcc5cbba1b94970f5ff2eb1922322f5b0aa7d918d4b380c9e7abfd57afd8b247c346bff7b87af82efbce3052511cd1b +99aeb2a5e846b0a2874cca02c66ed40d5569eb65ab2495bc3f964a092e91e1517941f2688e79f8cca49cd3674c4e06dc +b7a096dc3bad5ca49bee94efd884aa3ff5615cf3825cf95fbe0ce132e35f46581d6482fa82666c7ef5f1643eaee8f1ca +94393b1da6eaac2ffd186b7725eca582f1ddc8cdd916004657f8a564a7c588175cb443fc6943b39029f5bbe0add3fad8 +884b85fe012ccbcd849cb68c3ad832d83b3ef1c40c3954ffdc97f103b1ed582c801e1a41d9950f6bddc1d11f19d5ec76 +b00061c00131eded8305a7ce76362163deb33596569afb46fe499a7c9d7a0734c084d336b38d168024c2bb42b58e7660 +a439153ac8e6ca037381e3240e7ba08d056c83d7090f16ed538df25901835e09e27de2073646e7d7f3c65056af6e4ce7 +830fc9ca099097d1f38b90e6843dc86f702be9d20bdacc3e52cae659dc41df5b8d2c970effa6f83a5229b0244a86fe22 +b81ea2ffaaff2bb00dd59a9ab825ba5eed4db0d8ac9c8ed1a632ce8f086328a1cddd045fbe1ace289083c1325881b7e7 +b51ea03c58daf2db32c99b9c4789b183365168cb5019c72c4cc91ac30b5fb7311d3db76e6fa41b7cd4a8c81e2f6cdc94 +a4170b2c6d09ca5beb08318730419b6f19215ce6c631c854116f904be3bc30dd85a80c946a8ab054d3e307afaa3f8fbc +897cc42ff28971ff54d2a55dd6b35cfb8610ac902f3c06e3a5cea0e0a257e870c471236a8e84709211c742a09c5601a6 +a18f2e98d389dace36641621488664ecbb422088ab03b74e67009b8b8acacaaa24fdcf42093935f355207d934adc52a8 +92adcfb678cc2ba19c866f3f2b988fdcb4610567f3ab436cc0cb9acaf5a88414848d71133ebdbec1983e38e6190f1b5f +a86d43c2ce01b366330d3b36b3ca85f000c3548b8297e48478da1ee7d70d8576d4650cba7852ed125c0d7cb6109aa7f3 +8ed31ceed9445437d7732dce78a762d72ff32a7636bfb3fd7974b7ae15db414d8184a1766915244355deb354fbc5803b +9268f70032584f416e92225d65af9ea18c466ebc7ae30952d56a4e36fd9ea811dde0a126da9220ba3c596ec54d8a335e +9433b99ee94f2d3fbdd63b163a2bdf440379334c52308bd24537f7defd807145a062ff255a50d119a7f29f4b85d250e3 +90ce664f5e4628a02278f5cf5060d1a34f123854634b1870906e5723ac9afd044d48289be283b267d45fcbf3f4656aaf +aaf21c4d59378bb835d42ae5c5e5ab7a3c8c36a59e75997989313197752b79a472d866a23683b329ea69b048b87fa13e +b83c0589b304cec9ede549fde54f8a7c2a468c6657da8c02169a6351605261202610b2055c639b9ed2d5b8c401fb8f56 +9370f326ea0f170c2c05fe2c5a49189f20aec93b6b18a5572a818cd4c2a6adb359e68975557b349fb54f065d572f4c92 +ac3232fa5ce6f03fca238bef1ce902432a90b8afce1c85457a6bee5571c033d4bceefafc863af04d4e85ac72a4d94d51 +80d9ea168ff821b22c30e93e4c7960ce3ad3c1e6deeebedd342a36d01bd942419b187e2f382dbfd8caa34cca08d06a48 +a387a3c61676fb3381eefa2a45d82625635a666e999aba30e3b037ec9e040f414f9e1ad9652abd3bcad63f95d85038db +a1b229fe32121e0b391b0f6e0180670b9dc89d79f7337de4c77ea7ad0073e9593846f06797c20e923092a08263204416 +92164a9d841a2b828cedf2511213268b698520f8d1285852186644e9a0c97512cafa4bfbe29af892c929ebccd102e998 +82ee2fa56308a67c7db4fd7ef539b5a9f26a1c2cc36da8c3206ba4b08258fbb3cec6fe5cdbd111433fb1ba2a1e275927 +8c77bfe9e191f190a49d46f05600603fa42345592539b82923388d72392404e0b29a493a15e75e8b068dddcd444c2928 +80b927f93ccf79dcf5c5b20bcf5a7d91d7a17bc0401bb7cc9b53a6797feac31026eb114257621f5a64a52876e4474cc1 +b6b68b6501c37804d4833d5a063dd108a46310b1400549074e3cac84acc6d88f73948b7ad48d686de89c1ec043ae8c1a +ab3da00f9bdc13e3f77624f58a3a18fc3728956f84b5b549d62f1033ae4b300538e53896e2d943f160618e05af265117 +b6830e87233b8eace65327fdc764159645b75d2fd4024bf8f313b2dd5f45617d7ecfb4a0b53ccafb5429815a9a1adde6 +b9251cfe32a6dc0440615aadcd98b6b1b46e3f4e44324e8f5142912b597ee3526bea2431e2b0282bb58f71be5b63f65e +af8d70711e81cdddfb39e67a1b76643292652584c1ce7ce4feb1641431ad596e75c9120e85f1a341e7a4da920a9cdd94 +98cd4e996594e89495c078bfd52a4586b932c50a449a7c8dfdd16043ca4cda94dafbaa8ad1b44249c99bbcc52152506e +b9fc6d1c24f48404a4a64fbe3e43342738797905db46e4132aee5f086aaa4c704918ad508aaefa455cfe1b36572e6242 +a365e871d30ba9291cedaba1be7b04e968905d003e9e1af7e3b55c5eb048818ae5b913514fb08b24fb4fbdccbb35d0b8 +93bf99510971ea9af9f1e364f1234c898380677c8e8de9b0dd24432760164e46c787bc9ec42a7ad450500706cf247b2d +b872f825a5b6e7b9c7a9ddfeded3516f0b1449acc9b4fd29fc6eba162051c17416a31e5be6d3563f424d28e65bab8b8f +b06b780e5a5e8eb4f4c9dc040f749cf9709c8a4c9ef15e925f442b696e41e5095db0778a6c73bcd329b265f2c6955c8b +848f1a981f5fc6cd9180cdddb8d032ad32cdfa614fc750d690dbae36cc0cd355cbf1574af9b3ffc8b878f1b2fafb9544 +a03f48cbff3e9e8a3a655578051a5ae37567433093ac500ed0021c6250a51b767afac9bdb194ee1e3eac38a08c0eaf45 +b5be78ce638ff8c4aa84352b536628231d3f7558c5be3bf010b28feac3022e64691fa672f358c8b663904aebe24a54ed +a9d4da70ff676fa55d1728ba6ab03b471fa38b08854d99e985d88c2d050102d8ccffbe1c90249a5607fa7520b15fe791 +8fe9f7092ffb0b69862c8e972fb1ecf54308c96d41354ed0569638bb0364f1749838d6d32051fff1599112978c6e229c +ae6083e95f37770ecae0df1e010456f165d96cfe9a7278c85c15cffd61034081ce5723e25e2bede719dc9341ec8ed481 +a260891891103089a7afbd9081ea116cfd596fd1015f5b65e10b0961eb37fab7d09c69b7ce4be8bf35e4131848fb3fe4 +8d729fa32f6eb9fd2f6a140bef34e8299a2f3111bffd0fe463aa8622c9d98bfd31a1df3f3e87cd5abc52a595f96b970e +a30ec6047ae4bc7da4daa7f4c28c93aedb1112cfe240e681d07e1a183782c9ff6783ac077c155af23c69643b712a533f +ac830726544bfe7b5467339e5114c1a75f2a2a8d89453ce86115e6a789387e23551cd64620ead6283dfa4538eb313d86 +8445c135b7a48068d8ed3e011c6d818cfe462b445095e2fbf940301e50ded23f272d799eea47683fc027430ce14613ef +95785411715c9ae9d8293ce16a693a2aa83e3cb1b4aa9f76333d0da2bf00c55f65e21e42e50e6c5772ce213dd7b4f7a0 +b273b024fa18b7568c0d1c4d2f0c4e79ec509dafac8c5951f14192d63ddbcf2d8a7512c1c1b615cc38fa3e336618e0c5 +a78b9d3ea4b6a90572eb27956f411f1d105fdb577ee2ffeec9f221da9b45db84bfe866af1f29597220c75e0c37a628d8 +a4be2bf058c36699c41513c4d667681ce161a437c09d81383244fc55e1c44e8b1363439d0cce90a3e44581fb31d49493 +b6eef13040f17dd4eba22aaf284d2f988a4a0c4605db44b8d2f4bf9567ac794550b543cc513c5f3e2820242dd704152e +87eb00489071fa95d008c5244b88e317a3454652dcb1c441213aa16b28cd3ecaa9b22fec0bdd483c1df71c37119100b1 +92d388acdcb49793afca329cd06e645544d2269234e8b0b27d2818c809c21726bc9cf725651b951e358a63c83dedee24 +ae27e219277a73030da27ab5603c72c8bd81b6224b7e488d7193806a41343dff2456132274991a4722fdb0ef265d04cd +97583e08ecb82bbc27c0c8476d710389fa9ffbead5c43001bd36c1b018f29faa98de778644883e51870b69c5ffb558b5 +90a799a8ce73387599babf6b7da12767c0591cadd36c20a7990e7c05ea1aa2b9645654ec65308ee008816623a2757a6a +a1b47841a0a2b06efd9ab8c111309cc5fc9e1d5896b3e42ed531f6057e5ade8977c29831ce08dbda40348386b1dcc06d +b92b8ef59bbddb50c9457691bc023d63dfcc54e0fd88bd5d27a09e0d98ac290fc90e6a8f6b88492043bf7c87fac8f3e4 +a9d6240b07d62e22ec8ab9b1f6007c975a77b7320f02504fc7c468b4ee9cfcfd945456ff0128bc0ef2174d9e09333f8d +8e96534c94693226dc32bca79a595ca6de503af635f802e86442c67e77564829756961d9b701187fe91318da515bf0e6 +b6ba290623cd8dd5c2f50931c0045d1cfb0c30877bc8fe58cbc3ff61ee8da100045a39153916efa1936f4aee0892b473 +b43baa7717fac02d4294f5b3bb5e58a65b3557747e3188b482410388daac7a9c177f762d943fd5dcf871273921213da8 +b9cf00f8fb5e2ef2b836659fece15e735060b2ea39b8e901d3dcbdcf612be8bf82d013833718c04cd46ffaa70b85f42e +8017d0c57419e414cbba504368723e751ef990cc6f05dad7b3c2de6360adc774ad95512875ab8337d110bf39a42026fa +ae7401048b838c0dcd4b26bb6c56d79d51964a0daba780970b6c97daee4ea45854ea0ac0e4139b3fe60dac189f84df65 +887b237b0cd0f816b749b21db0b40072f9145f7896c36916296973f9e6990ede110f14e5976c906d08987c9836cca57f +a88c3d5770148aee59930561ca1223aceb2c832fb5417e188dca935905301fc4c6c2c9270bc1dff7add490a125eb81c6 +b6cf9b02c0cd91895ad209e38c54039523f137b5848b9d3ad33ae43af6c20c98434952db375fe378de7866f2d0e8b18a +84ef3d322ff580c8ad584b1fe4fe346c60866eb6a56e982ba2cf3b021ecb1fdb75ecc6c29747adda86d9264430b3f816 +a0561c27224baf0927ad144cb71e31e54a064c598373fcf0d66aebf98ab7af1d8e2f343f77baefff69a6da750a219e11 +aa5cc43f5b8162b016f5e1b61214c0c9d15b1078911c650b75e6cdfb49b85ee04c6739f5b1687d15908444f691f732de +ad4ac099b935589c7b8fdfdf3db332b7b82bb948e13a5beb121ebd7db81a87d278024a1434bcf0115c54ca5109585c3d +8a00466abf3f109a1dcd19e643b603d3af23d42794ef8ca2514dd507ecea44a031ac6dbc18bd02f99701168b25c1791e +b00b5900dfad79645f8bee4e5adc7b84eb22e5b1e67df77ccb505b7fc044a6c08a8ea5faca662414eb945f874f884cea +950e204e5f17112250b22ea6bb8423baf522fc0af494366f18fe0f949f51d6e6812074a80875cf1ed9c8e7420058d541 +91e5cbf8bb1a1d50c81608c9727b414d0dd2fb467ebc92f100882a3772e54f94979cfdf8e373fdef7c7fcdd60fec9e00 +a093f6a857b8caaff80599c2e89c962b415ecbaa70d8fd973155fa976a284c6b29a855f5f7a3521134d00d2972755188 +b4d55a3551b00da54cc010f80d99ddd2544bde9219a3173dfaadf3848edc7e4056ab532fb75ac26f5f7141e724267663 +a03ea050fc9b011d1b04041b5765d6f6453a93a1819cd9bd6328637d0b428f08526466912895dcc2e3008ee58822e9a7 +99b12b3665e473d01bc6985844f8994fb65cb15745024fb7af518398c4a37ff215da8f054e8fdf3286984ae36a73ca5e +9972c7e7a7fb12e15f78d55abcaf322c11249cd44a08f62c95288f34f66b51f146302bce750ff4d591707075d9123bd2 +a64b4a6d72354e596d87cda213c4fc2814009461570ccb27d455bbe131f8d948421a71925425b546d8cf63d5458cd64b +91c215c73b195795ede2228b7ed1f6e37892e0c6b0f4a0b5a16c57aa1100c84df9239054a173b6110d6c2b7f4bf1ce52 +88807198910ec1303480f76a3683870246a995e36adaeadc29c22f0bdba8152fe705bd070b75de657b04934f7d0ccf80 +b37c0026c7b32eb02cacac5b55cb5fe784b8e48b2945c64d3037af83ece556a117f0ff053a5968c2f5fa230e291c1238 +94c768384ce212bc2387e91ce8b45e4ff120987e42472888a317abc9dcdf3563b62e7a61c8e98d7cdcbe272167d91fc6 +a10c2564936e967a390cb14ef6e8f8b04ea9ece5214a38837eda09e79e0c7970b1f83adf017c10efd6faa8b7ffa2c567 +a5085eed3a95f9d4b1269182ea1e0d719b7809bf5009096557a0674bde4201b0ddc1f0f16a908fc468846b3721748ce3 +87468eb620b79a0a455a259a6b4dfbc297d0d53336537b771254dd956b145dc816b195b7002647ea218552e345818a3f +ace2b77ffb87366af0a9cb5d27d6fc4a14323dbbf1643f5f3c4559306330d86461bb008894054394cbfaefeaa0bc2745 +b27f56e840a54fbd793f0b7a7631aa4cee64b5947e4382b2dfb5eb1790270288884c2a19afebe5dc0c6ef335d4531c1c +876e438633931f7f895062ee16c4b9d10428875f7bc79a8e156a64d379a77a2c45bf5430c5ab94330f03da352f1e9006 +a2512a252587d200d2092b44c914df54e04ff8bcef36bf631f84bde0cf5a732e3dc7f00f662842cfd74b0b0f7f24180e +827f1bc8f54a35b7a4bd8154f79bcc055e45faed2e74adf7cf21cca95df44d96899e847bd70ead6bb27b9c0ed97bbd8b +a0c92cf5a9ed843714f3aea9fe7b880f622d0b4a3bf66de291d1b745279accf6ba35097849691370f41732ba64b5966b +a63f5c1e222775658421c487b1256b52626c6f79cb55a9b7deb2352622cedffb08502042d622eb3b02c97f9c09f9c957 +8cc093d52651e65fb390e186db6cc4de559176af4624d1c44cb9b0e836832419dacac7b8db0627b96288977b738d785d +aa7b6a17dfcec146134562d32a12f7bd7fe9522e300859202a02939e69dbd345ed7ff164a184296268f9984f9312e8fc +8ac76721f0d2b679f023d06cbd28c85ae5f4b43c614867ccee88651d4101d4fd352dbdb65bf36bfc3ebc0109e4b0c6f9 +8d350f7c05fc0dcd9a1170748846fb1f5d39453e4cb31e6d1457bed287d96fc393b2ecc53793ca729906a33e59c6834a +b9913510dfc5056d7ec5309f0b631d1ec53e3a776412ada9aefdaf033c90da9a49fdde6719e7c76340e86599b1f0eec2 +94955626bf4ce87612c5cfffcf73bf1c46a4c11a736602b9ba066328dc52ad6d51e6d4f53453d4ed55a51e0aad810271 +b0fcab384fd4016b2f1e53f1aafd160ae3b1a8865cd6c155d7073ecc1664e05b1d8bca1def39c158c7086c4e1103345e +827de3f03edfbde08570b72de6662c8bfa499b066a0a27ebad9b481c273097d17a5a0a67f01553da5392ec3f149b2a78 +ab7940384c25e9027c55c40df20bd2a0d479a165ced9b1046958353cd69015eeb1e44ed2fd64e407805ba42df10fc7bf +8ad456f6ff8cd58bd57567d931f923d0c99141978511b17e03cab7390a72b9f62498b2893e1b05c7c22dd274e9a31919 +ac75399e999effe564672db426faa17a839e57c5ef735985c70cd559a377adec23928382767b55ed5a52f7b11b54b756 +b17f975a00b817299ac7af5f2024ea820351805df58b43724393bfb3920a8cd747a3bbd4b8286e795521489db3657168 +a2bed800a6d95501674d9ee866e7314063407231491d794f8cf57d5be020452729c1c7cefd8c50dc1540181f5caab248 +9743f5473171271ffdd3cc59a3ae50545901a7b45cd4bc3570db487865f3b73c0595bebabbfe79268809ee1862e86e4a +b7eab77c2d4687b60d9d7b04e842b3880c7940140012583898d39fcc22d9b9b0a9be2c2e3788b3e6f30319b39c338f09 +8e2b8f797a436a1b661140e9569dcf3e1eea0a77c7ff2bc4ff0f3e49af04ed2de95e255df8765f1d0927fb456a9926b1 +8aefea201d4a1f4ff98ffce94e540bb313f2d4dfe7e9db484a41f13fc316ed02b282e1acc9bc6f56cad2dc2e393a44c9 +b950c17c0e5ca6607d182144aa7556bb0efe24c68f06d79d6413a973b493bfdf04fd147a4f1ab03033a32004cc3ea66f +b7b8dcbb179a07165f2dc6aa829fad09f582a71b05c3e3ea0396bf9e6fe73076f47035c031c2101e8e38e0d597eadd30 +a9d77ed89c77ec1bf8335d08d41c3c94dcca9fd1c54f22837b4e54506b212aa38d7440126c80648ab7723ff18e65ed72 +a819d6dfd4aef70e52b8402fe5d135f8082d40eb7d3bb5c4d7997395b621e2bb10682a1bad2c9caa33dd818550fc3ec6 +8f6ee34128fac8bbf13ce2d68b2bb363eb4fd65b297075f88e1446ddeac242500eeb4ef0735e105882ff5ba8c44c139b +b4440e48255c1644bcecf3a1e9958f1ec4901cb5b1122ee5b56ffd02cad1c29c4266999dbb85aa2605c1b125490074d4 +a43304a067bede5f347775d5811cf65a6380a8d552a652a0063580b5c5ef12a0867a39c7912fa219e184f4538eba1251 +a891ad67a790089ffc9f6d53e6a3d63d3556f5f693e0cd8a7d0131db06fd4520e719cfcc3934f0a8f62a95f90840f1d4 +aea6df8e9bb871081aa0fc5a9bafb00be7d54012c5baf653791907d5042a326aeee966fd9012a582cc16695f5baf7042 +8ffa2660dc52ed1cd4eff67d6a84a8404f358a5f713d04328922269bee1e75e9d49afeec0c8ad751620f22352a438e25 +87ec6108e2d63b06abed350f8b363b7489d642486f879a6c3aa90e5b0f335efc2ff2834eef9353951a42136f8e6a1b32 +865619436076c2760d9e87ddc905023c6de0a8d56eef12c98a98c87837f2ca3f27fd26a2ad752252dbcbe2b9f1d5a032 +980437dce55964293cb315c650c5586ffd97e7a944a83f6618af31c9d92c37b53ca7a21bb5bc557c151b9a9e217e7098 +95d128fc369df4ad8316b72aea0ca363cbc7b0620d6d7bb18f7076a8717a6a46956ff140948b0cc4f6d2ce33b5c10054 +8c7212d4a67b9ec70ebbca04358ad2d36494618d2859609163526d7b3acc2fc935ca98519380f55e6550f70a9bc76862 +893a2968819401bf355e85eee0f0ed0406a6d4a7d7f172d0017420f71e00bb0ba984f6020999a3cdf874d3cd8ebcd371 +9103c1af82dece25d87274e89ea0acd7e68c2921c4af3d8d7c82ab0ed9990a5811231b5b06113e7fa43a6bd492b4564f +99cfd87a94eab7d35466caa4ed7d7bb45e5c932b2ec094258fb14bf205659f83c209b83b2f2c9ccb175974b2a33e7746 +874b6b93e4ee61be3f00c32dd84c897ccd6855c4b6251eb0953b4023634490ed17753cd3223472873cbc6095b2945075 +84a32c0dc4ea60d33aac3e03e70d6d639cc9c4cc435c539eff915017be3b7bdaba33349562a87746291ebe9bc5671f24 +a7057b24208928ad67914e653f5ac1792c417f413d9176ba635502c3f9c688f7e2ee81800d7e3dc0a340c464da2fd9c5 +a03fb9ed8286aacfa69fbd5d953bec591c2ae4153400983d5dbb6cd9ea37fff46ca9e5cceb9d117f73e9992a6c055ad2 +863b2de04e89936c9a4a2b40380f42f20aefbae18d03750fd816c658aee9c4a03df7b12121f795c85d01f415baaeaa59 +8526eb9bd31790fe8292360d7a4c3eed23be23dd6b8b8f01d2309dbfdc0cfd33ad1568ddd7f8a610f3f85a9dfafc6a92 +b46ab8c5091a493d6d4d60490c40aa27950574a338ea5bbc045be3a114af87bdcb160a8c80435a9b7ad815f3cb56a3f3 +aeadc47b41a8d8b4176629557646202f868b1d728b2dda58a347d937e7ffc8303f20d26d6c00b34c851b8aeec547885d +aebb19fc424d72c1f1822aa7adc744cd0ef7e55727186f8df8771c784925058c248406ebeeaf3c1a9ee005a26e9a10c6 +8ff96e81c1a4a2ab1b4476c21018fae0a67e92129ee36120cae8699f2d7e57e891f5c624902cb1b845b944926a605cc3 +8251b8d2c43fadcaa049a9e7aff838dae4fb32884018d58d46403ac5f3beb5c518bfd45f03b8abb710369186075eb71c +a8b2a64f865f51a5e5e86a66455c093407933d9d255d6b61e1fd81ffafc9538d73caaf342338a66ba8ee166372a3d105 +aad915f31c6ba7fdc04e2aaac62e84ef434b7ee76a325f07dc430d12c84081999720181067b87d792efd0117d7ee1eab +a13db3bb60389883fd41d565c54fb5180d9c47ce2fe7a169ae96e01d17495f7f4fa928d7e556e7c74319c4c25d653eb2 +a4491b0198459b3f552855d680a59214eb74e6a4d6c5fa3b309887dc50ebea2ecf6d26c040550f7dc478b452481466fb +8f017f13d4b1e3f0c087843582b52d5f8d13240912254d826dd11f8703a99a2f3166dfbdfdffd9a3492979d77524276b +96c3d5dcd032660d50d7cd9db2914f117240a63439966162b10c8f1f3cf74bc83b0f15451a43b31dbd85e4a7ce0e4bb1 +b479ec4bb79573d32e0ec93b92bdd7ec8c26ddb5a2d3865e7d4209d119fd3499eaac527615ffac78c440e60ef3867ae0 +b2c49c4a33aa94b52b6410b599e81ff15490aafa7e43c8031c865a84e4676354a9c81eb4e7b8be6825fdcefd1e317d44 +906dc51d6a90c089b6704b47592805578a6eed106608eeb276832f127e1b8e858b72e448edcbefb497d152447e0e68ff +b0e81c63b764d7dfbe3f3fddc9905aef50f3633e5d6a4af6b340495124abedcff5700dfd1577bbbed7b6bf97d02719cb +9304c64701e3b4ed6d146e48a881f7d83a17f58357cca0c073b2bb593afd2d94f6e2a7a1ec511d0a67ad6ff4c3be5937 +b6fdbd12ba05aa598d80b83f70a15ef90e5cba7e6e75fa038540ee741b644cd1f408a6cecfd2a891ef8d902de586c6b5 +b80557871a6521b1b3c74a1ba083ae055b575df607f1f7b04c867ba8c8c181ea68f8d90be6031f4d25002cca27c44da2 +aa7285b8e9712e06b091f64163f1266926a36607f9d624af9996856ed2aaf03a580cb22ce407d1ade436c28b44ca173f +8148d72b975238b51e6ea389e5486940d22641b48637d7dfadfa603a605bfc6d74a016480023945d0b85935e396aea5d +8a014933a6aea2684b5762af43dcf4bdbb633cd0428d42d71167a2b6fc563ece5e618bff22f1db2ddb69b845b9a2db19 +990d91740041db770d0e0eb9d9d97d826f09fd354b91c41e0716c29f8420e0e8aac0d575231efba12fe831091ec38d5a +9454d0d32e7e308ddec57cf2522fb1b67a2706e33fb3895e9e1f18284129ab4f4c0b7e51af25681d248d7832c05eb698 +a5bd434e75bac105cb3e329665a35bce6a12f71dd90c15165777d64d4c13a82bceedb9b48e762bd24034e0fc9fbe45f4 +b09e3b95e41800d4dc29c6ffdaab2cd611a0050347f6414f154a47ee20ee59bf8cf7181454169d479ebce1eb5c777c46 +b193e341d6a047d15eea33766d656d807b89393665a783a316e9ba10518e5515c8e0ade3d6e15641d917a8a172a5a635 +ade435ec0671b3621dde69e07ead596014f6e1daa1152707a8c18877a8b067bde2895dd47444ffa69db2bbef1f1d8816 +a7fd3d6d87522dfc56fb47aef9ce781a1597c56a8bbfd796baba907afdc872f753d732bfda1d3402aee6c4e0c189f52d +a298cb4f4218d0464b2fab393e512bbc477c3225aa449743299b2c3572f065bc3a42d07e29546167ed9e1b6b3b3a3af3 +a9ee57540e1fd9c27f4f0430d194b91401d0c642456c18527127d1f95e2dba41c2c86d1990432eb38a692fda058fafde +81d6c1a5f93c04e6d8e5a7e0678c1fc89a1c47a5c920bcd36180125c49fcf7c114866b90e90a165823560b19898a7c16 +a4b7a1ec9e93c899b9fd9aaf264c50e42c36c0788d68296a471f7a3447af4dbc81e4fa96070139941564083ec5b5b5a1 +b3364e327d381f46940c0e11e29f9d994efc6978bf37a32586636c0070b03e4e23d00650c1440f448809e1018ef9f6d8 +8056e0913a60155348300e3a62e28b5e30629a90f7dd4fe11289097076708110a1d70f7855601782a3cdc5bdb1ca9626 +b4980fd3ea17bac0ba9ee1c470b17e575bb52e83ebdd7d40c93f4f87bebeaff1c8a679f9d3d09d635f068d37d5bd28bd +905a9299e7e1853648e398901dfcd437aa575c826551f83520df62984f5679cb5f0ea86aa45ed3e18b67ddc0dfafe809 +ab99553bf31a84f2e0264eb34a08e13d8d15e2484aa9352354becf9a15999c76cc568d68274b70a65e49703fc23540d0 +a43681597bc574d2dae8964c9a8dc1a07613d7a1272bdcb818d98c85d44e16d744250c33f3b5e4d552d97396b55e601f +a54e5a31716fccb50245898c99865644405b8dc920ded7a11f3d19bdc255996054b268e16f2e40273f11480e7145f41e +8134f3ad5ef2ad4ba12a8a4e4d8508d91394d2bcdc38b7c8c8c0b0a820357ac9f79d286c65220f471eb1adca1d98fc68 +94e2f755e60471578ab2c1adb9e9cea28d4eec9b0e92e0140770bca7002c365fcabfe1e5fb4fe6cfe79a0413712aa3ef +ad48f8d0ce7eb3cc6e2a3086ad96f562e5bed98a360721492ae2e74dc158586e77ec8c35d5fd5927376301b7741bad2b +8614f0630bdd7fbad3a31f55afd9789f1c605dc85e7dc67e2edfd77f5105f878bb79beded6e9f0b109e38ea7da67e8d5 +9804c284c4c5e77dabb73f655b12181534ca877c3e1e134aa3f47c23b7ec92277db34d2b0a5d38d2b69e5d1c3008a3e3 +a51b99c3088e473afdaa9e0a9f7e75a373530d3b04e44e1148da0726b95e9f5f0c7e571b2da000310817c36f84b19f7f +ac4ff909933b3b76c726b0a382157cdc74ab851a1ac6cef76953c6444441804cc43abb883363f416592e8f6cfbc4550b +ae7d915eb9fc928b65a29d6edbc75682d08584d0014f7bcf17d59118421ae07d26a02137d1e4de6938bcd1ab8ef48fad +852f7e453b1af89b754df6d11a40d5d41ea057376e8ecacd705aacd2f917457f4a093d6b9a8801837fa0f62986ad7149 +92c6bf5ada5d0c3d4dd8058483de36c215fa98edab9d75242f3eff9db07c734ad67337da6f0eefe23a487bf75a600dee +a2b42c09d0db615853763552a48d2e704542bbd786aae016eb58acbf6c0226c844f5fb31e428cb6450b9db855f8f2a6f +880cc07968266dbfdcfbc21815cd69e0eddfee239167ac693fb0413912d816f2578a74f7716eecd6deefa68c6eccd394 +b885b3ace736cd373e8098bf75ba66fa1c6943ca1bc4408cd98ac7074775c4478594f91154b8a743d9c697e1b29f5840 +a51ce78de512bd87bfa0835de819941dffbf18bec23221b61d8096fc9436af64e0693c335b54e7bfc763f287bdca2db6 +a3c76166a3bdb9b06ef696e57603b58871bc72883ee9d45171a30fe6e1d50e30bc9c51b4a0f5a7270e19a77b89733850 +acefc5c6f8a1e7c24d7b41e0fc7f6f3dc0ede6cf3115ffb9a6e54b1d954cbca9bda8ad7a084be9be245a1b8e9770d141 +b420ed079941842510e31cfad117fa11fb6b4f97dfbc6298cb840f27ebaceba23eeaf3f513bcffbf5e4aae946310182d +95c3bb5ef26c5ed2f035aa5d389c6b3c15a6705b9818a3fefaed28922158b35642b2e8e5a1a620fdad07e75ad4b43af4 +825149f9081ecf07a2a4e3e8b5d21bade86c1a882475d51c55ee909330b70c5a2ac63771c8600c6f38df716af61a3ea1 +873b935aae16d9f08adbc25353cee18af2f1b8d5f26dec6538d6bbddc515f2217ed7d235dcfea59ae61b428798b28637 +9294150843a2bedcedb3bb74c43eb28e759cf9499582c5430bccefb574a8ddd4f11f9929257ff4c153990f9970a2558f +b619563a811cc531da07f4f04e5c4c6423010ff9f8ed7e6ec9449162e3d501b269fb1c564c09c0429431879b0f45df02 +91b509b87eb09f007d839627514658c7341bc76d468920fe8a740a8cb96a7e7e631e0ea584a7e3dc1172266f641d0f5c +8b8aceace9a7b9b4317f1f01308c3904d7663856946afbcea141a1c615e21ccad06b71217413e832166e9dd915fbe098 +87b3b36e725833ea0b0f54753c3728c0dbc87c52d44d705ffc709f2d2394414c652d3283bab28dcce09799504996cee0 +b2670aad5691cbf308e4a6a77a075c4422e6cbe86fdba24e9f84a313e90b0696afb6a067eebb42ba2d10340d6a2f6e51 +876784a9aff3d54faa89b2bacd3ff5862f70195d0b2edc58e8d1068b3c9074c0da1cfa23671fe12f35e33b8a329c0ccd +8b48b9e758e8a8eae182f5cbec96f67d20cca6d3eee80a2d09208eb1d5d872e09ef23d0df8ebbb9b01c7449d0e3e3650 +b79303453100654c04a487bdcadc9e3578bc80930c489a7069a52e8ca1dba36c492c8c899ce025f8364599899baa287d +961b35a6111da54ece6494f24dacd5ea46181f55775b5f03df0e370c34a5046ac2b4082925855325bb42bc2a2c98381d +a31feb1be3f5a0247a1f7d487987eb622e34fca817832904c6ee3ee60277e5847945a6f6ea1ac24542c72e47bdf647df +a12a2aa3e7327e457e1aae30e9612715dd2cfed32892c1cd6dcda4e9a18203af8a44afb46d03b2eed89f6b9c5a2c0c23 +a08265a838e69a2ca2f80fead6ccf16f6366415b920c0b22ee359bcd8d4464ecf156f400a16a7918d52e6d733dd64211 +b723d6344e938d801cca1a00032af200e541d4471fd6cbd38fb9130daa83f6a1dffbbe7e67fc20f9577f884acd7594b2 +a6733d83ec78ba98e72ddd1e7ff79b7adb0e559e256760d0c590a986e742445e8cdf560d44b29439c26d87edd0b07c8c +a61c2c27d3f7b9ff4695a17afedf63818d4bfba390507e1f4d0d806ce8778d9418784430ce3d4199fd3bdbc2504d2af3 +8332f3b63a6dc985376e8b1b25eeae68be6160fbe40053ba7bcf6f073204f682da72321786e422d3482fd60c9e5aa034 +a280f44877583fbb6b860d500b1a3f572e3ee833ec8f06476b3d8002058e25964062feaa1e5bec1536d734a5cfa09145 +a4026a52d277fcea512440d2204f53047718ebfcae7b48ac57ea7f6bfbc5de9d7304db9a9a6cbb273612281049ddaec5 +95cdf69c831ab2fad6c2535ede9c07e663d2ddccc936b64e0843d2df2a7b1c31f1759c3c20f1e7a57b1c8f0dbb21b540 +95c96cec88806469c277ab567863c5209027cecc06c7012358e5f555689c0d9a5ffb219a464f086b45817e8536b86d2f +afe38d4684132a0f03d806a4c8df556bf589b25271fbc6fe2e1ed16de7962b341c5003755da758d0959d2e6499b06c68 +a9b77784fda64987f97c3a23c5e8f61b918be0f7c59ba285084116d60465c4a2aaafc8857eb16823282cc83143eb9126 +a830f05881ad3ce532a55685877f529d32a5dbe56cea57ffad52c4128ee0fad0eeaf0da4362b55075e77eda7babe70e5 +992b3ad190d6578033c13ed5abfee4ef49cbc492babb90061e3c51ee4b5790cdd4c8fc1abff1fa2c00183b6b64f0bbbe +b1015424d9364aeff75de191652dc66484fdbec3e98199a9eb9671ec57bec6a13ff4b38446e28e4d8aedb58dd619cd90 +a745304604075d60c9db36cada4063ac7558e7ec2835d7da8485e58d8422e817457b8da069f56511b02601289fbb8981 +a5ba4330bc5cb3dbe0486ddf995632a7260a46180a08f42ae51a2e47778142132463cc9f10021a9ad36986108fefa1a9 +b419e9fd4babcaf8180d5479db188bb3da232ae77a1c4ed65687c306e6262f8083070a9ac32220cddb3af2ec73114092 +a49e23dc5f3468f3bf3a0bb7e4a114a788b951ff6f23a3396ae9e12cbff0abd1240878a3d1892105413dbc38818e807c +b7ecc7b4831f650202987e85b86bc0053f40d983f252e9832ef503aea81c51221ce93279da4aa7466c026b2d2070e55d +96a8c35cb87f84fa84dcd6399cc2a0fd79cc9158ef4bdde4bae31a129616c8a9f2576cd19baa3f497ca34060979aed7d +8681b2c00aa62c2b519f664a95dcb8faef601a3b961bb4ce5d85a75030f40965e2983871d41ea394aee934e859581548 +85c229a07efa54a713d0790963a392400f55fbb1a43995a535dc6c929f20d6a65cf4efb434e0ad1cb61f689b8011a3bc +90856f7f3444e5ad44651c28e24cc085a5db4d2ffe79aa53228c26718cf53a6e44615f3c5cda5aa752d5f762c4623c66 +978999b7d8aa3f28a04076f74d11c41ef9c89fdfe514936c4238e0f13c38ec97e51a5c078ebc6409e517bfe7ccb42630 +a099914dd7ed934d8e0d363a648e9038eb7c1ec03fa04dbcaa40f7721c618c3ef947afef7a16b4d7ac8c12aa46637f03 +ab2a104fed3c83d16f2cda06878fa5f30c8c9411de71bfb67fd2fc9aa454dcbcf3d299d72f8cc12e919466a50fcf7426 +a4471d111db4418f56915689482f6144efc4664cfb0311727f36c864648d35734351becc48875df96f4abd3cfcf820f9 +83be11727cd30ea94ccc8fa31b09b81c9d6a9a5d3a4686af9da99587332fe78c1f94282f9755854bafd6033549afec91 +88020ff971dc1a01a9e993cd50a5d2131ffdcbb990c1a6aaa54b20d8f23f9546a70918ea57a21530dcc440c1509c24ad +ae24547623465e87905eaffa1fa5d52bb7c453a8dbd89614fa8819a2abcedaf455c2345099b7324ae36eb0ad7c8ef977 +b59b0c60997de1ee00b7c388bc7101d136c9803bf5437b1d589ba57c213f4f835a3e4125b54738e78abbc21b000f2016 +a584c434dfe194546526691b68fa968c831c31da42303a1d735d960901c74011d522246f37f299555416b8cf25c5a548 +80408ce3724f4837d4d52376d255e10f69eb8558399ae5ca6c11b78b98fe67d4b93157d2b9b639f1b5b64198bfe87713 +abb941e8d406c2606e0ddc35c113604fdd9d249eacc51cb64e2991e551b8639ce44d288cc92afa7a1e7fc599cfc84b22 +b223173f560cacb1c21dba0f1713839e348ad02cbfdef0626748604c86f89e0f4c919ed40b583343795bdd519ba952c8 +af1c70512ec3a19d98b8a1fc3ff7f7f5048a27d17d438d43f561974bbdd116fcd5d5c21040f3447af3f0266848d47a15 +8a44809568ebe50405bede19b4d2607199159b26a1b33e03d180e6840c5cf59d991a4fb150d111443235d75ecad085b7 +b06207cdca46b125a27b3221b5b50cf27af4c527dd7c80e2dbcebbb09778a96df3af67e50f07725239ce3583dad60660 +993352d9278814ec89b26a11c4a7c4941bf8f0e6781ae79559d14749ee5def672259792db4587f85f0100c7bb812f933 +9180b8a718b971fd27bc82c8582d19c4b4f012453e8c0ffeeeffe745581fc6c07875ab28be3af3fa3896d19f0c89ac5b +8b8e1263eb48d0fe304032dd5ea1f30e73f0121265f7458ba9054d3626894e8a5fef665340abd2ede9653045c2665938 +99a2beee4a10b7941c24b2092192faf52b819afd033e4a2de050fd6c7f56d364d0cf5f99764c3357cf32399e60fc5d74 +946a4aad7f8647ea60bee2c5fcdeb6f9a58fb2cfca70c4d10e458027a04846e13798c66506151be3df9454b1e417893f +a672a88847652d260b5472d6908d1d57e200f1e492d30dd1cecc441cdfc9b76e016d9bab560efd4d7f3c30801de884a9 +9414e1959c156cde1eb24e628395744db75fc24b9df4595350aaad0bc38e0246c9b4148f6443ef68b8e253a4a6bcf11c +9316e9e4ec5fab4f80d6540df0e3a4774db52f1d759d2e5b5bcd3d7b53597bb007eb1887cb7dc61f62497d51ffc8d996 +902d6d77bb49492c7a00bc4b70277bc28c8bf9888f4307bb017ac75a962decdedf3a4e2cf6c1ea9f9ba551f4610cbbd7 +b07025a18b0e32dd5e12ec6a85781aa3554329ea12c4cd0d3b2c22e43d777ef6f89876dd90a9c8fb097ddf61cf18adc5 +b355a849ad3227caa4476759137e813505ec523cbc2d4105bc7148a4630f9e81918d110479a2d5f5e4cd9ccec9d9d3e3 +b49532cfdf02ee760109881ad030b89c48ee3bb7f219ccafc13c93aead754d29bdafe345be54c482e9d5672bd4505080 +9477802410e263e4f938d57fa8f2a6cac7754c5d38505b73ee35ea3f057aad958cb9722ba6b7b3cfc4524e9ca93f9cdc +9148ea83b4436339580f3dbc9ba51509e9ab13c03063587a57e125432dd0915f5d2a8f456a68f8fff57d5f08c8f34d6e +b00b6b5392b1930b54352c02b1b3b4f6186d20bf21698689bbfc7d13e86538a4397b90e9d5c93fd2054640c4dbe52a4f +926a9702500441243cd446e7cbf15dde16400259726794694b1d9a40263a9fc9e12f7bcbf12a27cb9aaba9e2d5848ddc +a0c6155f42686cbe7684a1dc327100962e13bafcf3db97971fc116d9f5c0c8355377e3d70979cdbd58fd3ea52440901c +a277f899f99edb8791889d0817ea6a96c24a61acfda3ad8c3379e7c62b9d4facc4b965020b588651672fd261a77f1bfc +8f528cebb866b501f91afa50e995234bef5bf20bff13005de99cb51eaac7b4f0bf38580cfd0470de40f577ead5d9ba0f +963fc03a44e9d502cc1d23250efef44d299befd03b898d07ce63ca607bb474b5cf7c965a7b9b0f32198b04a8393821f7 +ab087438d0a51078c378bf4a93bd48ef933ff0f1fa68d02d4460820df564e6642a663b5e50a5fe509527d55cb510ae04 +b0592e1f2c54746bb076be0fa480e1c4bebc4225e1236bcda3b299aa3853e3afb401233bdbcfc4a007b0523a720fbf62 +851613517966de76c1c55a94dc4595f299398a9808f2d2f0a84330ba657ab1f357701d0895f658c18a44cb00547f6f57 +a2fe9a1dd251e72b0fe4db27be508bb55208f8f1616b13d8be288363ec722826b1a1fd729fc561c3369bf13950bf1fd6 +b896cb2bc2d0c77739853bc59b0f89b2e008ba1f701c9cbe3bef035f499e1baee8f0ff1e794854a48c320586a2dfc81a +a1b60f98e5e5106785a9b81a85423452ee9ef980fa7fa8464f4366e73f89c50435a0c37b2906052b8e58e212ebd366cf +a853b0ebd9609656636df2e6acd5d8839c0fda56f7bf9288a943b06f0b67901a32b95e016ca8bc99bd7b5eab31347e72 +b290fa4c1346963bd5225235e6bdf7c542174dab4c908ab483d1745b9b3a6015525e398e1761c90e4b49968d05e30eea +b0f65a33ad18f154f1351f07879a183ad62e5144ad9f3241c2d06533dad09cbb2253949daff1bb02d24d16a3569f7ef0 +a00db59b8d4218faf5aeafcd39231027324408f208ec1f54d55a1c41228b463b88304d909d16b718cfc784213917b71e +b8d695dd33dc2c3bc73d98248c535b2770ad7fa31aa726f0aa4b3299efb0295ba9b4a51c71d314a4a1bd5872307534d1 +b848057cca2ca837ee49c42b88422303e58ea7d2fc76535260eb5bd609255e430514e927cc188324faa8e657396d63ec +92677836061364685c2aaf0313fa32322746074ed5666fd5f142a7e8f87135f45cd10e78a17557a4067a51dfde890371 +a854b22c9056a3a24ab164a53e5c5cf388616c33e67d8ebb4590cb16b2e7d88b54b1393c93760d154208b5ca822dc68f +86fff174920388bfab841118fb076b2b0cdec3fdb6c3d9a476262f82689fb0ed3f1897f7be9dbf0932bb14d346815c63 +99661cf4c94a74e182752bcc4b98a8c2218a8f2765642025048e12e88ba776f14f7be73a2d79bd21a61def757f47f904 +8a8893144d771dca28760cba0f950a5d634195fd401ec8cf1145146286caffb0b1a6ba0c4c1828d0a5480ce49073c64c +938a59ae761359ee2688571e7b7d54692848eb5dde57ffc572b473001ea199786886f8c6346a226209484afb61d2e526 +923f68a6aa6616714cf077cf548aeb845bfdd78f2f6851d8148cba9e33a374017f2f3da186c39b82d14785a093313222 +ac923a93d7da7013e73ce8b4a2b14b8fd0cc93dc29d5de941a70285bdd19be4740fedfe0c56b046689252a3696e9c5bc +b49b32c76d4ec1a2c68d4989285a920a805993bc6fcce6dacd3d2ddae73373050a5c44ba8422a3781050682fa0ef6ba2 +8a367941c07c3bdca5712524a1411bad7945c7c48ffc7103b1d4dff2c25751b0624219d1ccde8c3f70c465f954be5445 +b838f029df455efb6c530d0e370bbbf7d87d61a9aea3d2fe5474c5fe0a39cf235ceecf9693c5c6c5820b1ba8f820bd31 +a8983b7c715eaac7f13a001d2abc462dfc1559dab4a6b554119c271aa8fe00ffcf6b6949a1121f324d6d26cb877bcbae +a2afb24ad95a6f14a6796315fbe0d8d7700d08f0cfaf7a2abe841f5f18d4fecf094406cbd54da7232a159f9c5b6e805e +87e8e95ad2d62f947b2766ff405a23f7a8afba14e7f718a691d95369c79955cdebe24c54662553c60a3f55e6322c0f6f +87c2cbcecb754e0cc96128e707e5c5005c9de07ffd899efa3437cadc23362f5a1d3fcdd30a1f5bdc72af3fb594398c2a +91afd6ee04f0496dc633db88b9370d41c428b04fd991002502da2e9a0ef051bcd7b760e860829a44fbe5539fa65f8525 +8c50e5d1a24515a9dd624fe08b12223a75ca55196f769f24748686315329b337efadca1c63f88bee0ac292dd0a587440 +8a07e8f912a38d94309f317c32068e87f68f51bdfa082d96026f5f5f8a2211621f8a3856dda8069386bf15fb2d28c18f +94ad1dbe341c44eeaf4dc133eed47d8dbfe752575e836c075745770a6679ff1f0e7883b6aa917462993a7f469d74cab5 +8745f8bd86c2bb30efa7efb7725489f2654f3e1ac4ea95bd7ad0f3cfa223055d06c187a16192d9d7bdaea7b050c6a324 +900d149c8d79418cda5955974c450a70845e02e5a4ecbcc584a3ca64d237df73987c303e3eeb79da1af83bf62d9e579f +8f652ab565f677fb1a7ba03b08004e3cda06b86c6f1b0b9ab932e0834acf1370abb2914c15b0d08327b5504e5990681c +9103097d088be1f75ab9d3da879106c2f597e2cc91ec31e73430647bdd5c33bcfd771530d5521e7e14df6acda44f38a6 +b0fec7791cfb0f96e60601e1aeced9a92446b61fedab832539d1d1037558612d78419efa87ff5f6b7aab8fd697d4d9de +b9d2945bdb188b98958854ba287eb0480ef614199c4235ce5f15fc670b8c5ffe8eeb120c09c53ea8a543a022e6a321ac +a9461bb7d5490973ebaa51afc0bb4a5e42acdccb80e2f939e88b77ac28a98870e103e1042899750f8667a8cc9123bae9 +a37fdf11d4bcb2aed74b9f460a30aa34afea93386fa4cdb690f0a71bc58f0b8df60bec56e7a24f225978b862626fa00e +a214420e183e03d531cf91661466ea2187d84b6e814b8b20b3730a9400a7d25cf23181bb85589ebc982cec414f5c2923 +ad09a45a698a6beb3e0915f540ef16e9af7087f53328972532d6b5dfe98ce4020555ece65c6cbad8bd6be8a4dfefe6fd +ab6742800b02728c92d806976764cb027413d6f86edd08ad8bb5922a2969ee9836878cd39db70db0bd9a2646862acc4f +974ca9305bd5ea1dc1755dff3b63e8bfe9f744321046c1395659bcea2a987b528e64d5aa96ac7b015650b2253b37888d +84eee9d6bce039c52c2ebc4fccc0ad70e20c82f47c558098da4be2f386a493cbc76adc795b5488c8d11b6518c2c4fab8 +875d7bda46efcb63944e1ccf760a20144df3b00d53282b781e95f12bfc8f8316dfe6492c2efbf796f1150e36e436e9df +b68a2208e0c587b5c31b5f6cb32d3e6058a9642e2d9855da4f85566e1412db528475892060bb932c55b3a80877ad7b4a +ba006368ecab5febb6ab348644d9b63de202293085ed468df8bc24d992ae8ce468470aa37f36a73630c789fb9c819b30 +90a196035150846cd2b482c7b17027471372a8ce7d914c4d82b6ea7fa705d8ed5817bd42d63886242585baf7d1397a1c +a223b4c85e0daa8434b015fd9170b5561fe676664b67064974a1e9325066ecf88fc81f97ab5011c59fad28cedd04b240 +82e8ec43139cf15c6bbeed484b62e06cded8a39b5ce0389e4cbe9c9e9c02f2f0275d8d8d4e8dfec8f69a191bef220408 +81a3fc07a7b68d92c6ee4b6d28f5653ee9ec85f7e2ee1c51c075c1b130a8c5097dc661cf10c5aff1c7114b1a6a19f11a +8ed2ef8331546d98819a5dd0e6c9f8cb2630d0847671314a28f277faf68da080b53891dd75c82cbcf7788b255490785d +acecabf84a6f9bbed6b2fc2e7e4b48f02ef2f15e597538a73aea8f98addc6badda15e4695a67ecdb505c1554e8f345ec +b8f51019b2aa575f8476e03dcadf86cc8391f007e5f922c2a36b2daa63f5a503646a468990cd5c65148d323942193051 +aaa595a84b403ec65729bc1c8055a94f874bf9adddc6c507b3e1f24f79d3ad359595a672b93aab3394db4e2d4a7d8970 +895144c55fcbd0f64d7dd69e6855cfb956e02b5658eadf0f026a70703f3643037268fdd673b0d21b288578a83c6338dd +a2e92ae6d0d237d1274259a8f99d4ea4912a299816350b876fba5ebc60b714490e198a916e1c38c6e020a792496fa23c +a45795fda3b5bb0ad1d3c628f6add5b2a4473a1414c1a232e80e70d1cfffd7f8a8d9861f8df2946999d7dbb56bf60113 +b6659bf7f6f2fef61c39923e8c23b8c70e9c903028d8f62516d16755cd3fba2fe41c285aa9432dc75ab08f8a1d8a81fc +a735609a6bc5bfd85e58234fc439ff1f58f1ff1dd966c5921d8b649e21f006bf2b8642ad8a75063c159aaf6935789293 +a3c622eb387c9d15e7bda2e3e84d007cb13a6d50d655c3f2f289758e49d3b37b9a35e4535d3cc53d8efd51f407281f19 +8afe147b53ad99220f5ef9d763bfc91f9c20caecbcf823564236fb0e6ede49414c57d71eec4772c8715cc65a81af0047 +b5f0203233cf71913951e9c9c4e10d9243e3e4a1f2cb235bf3f42009120ba96e04aa414c9938ea8873b63148478927e8 +93c52493361b458d196172d7ba982a90a4f79f03aa8008edc322950de3ce6acf4c3977807a2ffa9e924047e02072b229 +b9e72b805c8ac56503f4a86c82720afbd5c73654408a22a2ac0b2e5caccdfb0e20b59807433a6233bc97ae58cf14c70a +af0475779b5cee278cca14c82da2a9f9c8ef222eb885e8c50cca2315fea420de6e04146590ed0dd5a29c0e0812964df5 +b430ccab85690db02c2d0eb610f3197884ca12bc5f23c51e282bf3a6aa7e4a79222c3d8761454caf55d6c01a327595f9 +830032937418b26ee6da9b5206f3e24dc76acd98589e37937e963a8333e5430abd6ce3dd93ef4b8997bd41440eed75d6 +8820a6d73180f3fe255199f3f175c5eb770461ad5cfdde2fb11508041ed19b8c4ce66ad6ecebf7d7e836cc2318df47ca +aef1393e7d97278e77bbf52ef6e1c1d5db721ccf75fe753cf47a881fa034ca61eaa5098ee5a344c156d2b14ff9e284ad +8a4a26c07218948c1196c45d927ef4d2c42ade5e29fe7a91eaebe34a29900072ce5194cf28d51f746f4c4c649daf4396 +84011dc150b7177abdcb715efbd8c201f9cb39c36e6069af5c50a096021768ba40cef45b659c70915af209f904ede3b6 +b1bd90675411389bb66910b21a4bbb50edce5330850c5ab0b682393950124252766fc81f5ecfc72fb7184387238c402e +8dfdcd30583b696d2c7744655f79809f451a60c9ad5bf1226dc078b19f4585d7b3ef7fa9d54e1ac09520d95cbfd20928 +b351b4dc6d98f75b8e5a48eb7c6f6e4b78451991c9ba630e5a1b9874c15ac450cd409c1a024713bf2cf82dc400e025ef +a462b8bc97ac668b97b28b3ae24b9f5de60e098d7b23ecb600d2194cd35827fb79f77c3e50d358f5bd72ee83fef18fa0 +a183753265c5f7890270821880cce5f9b2965b115ba783c6dba9769536f57a04465d7da5049c7cf8b3fcf48146173c18 +a8a771b81ed0d09e0da4d79f990e58eabcd2be3a2680419502dd592783fe52f657fe55125b385c41d0ba3b9b9cf54a83 +a71ec577db46011689d073245e3b1c3222a9b1fe6aa5b83629adec5733dd48617ebea91346f0dd0e6cdaa86e4931b168 +a334b8b244f0d598a02da6ae0f918a7857a54dce928376c4c85df15f3b0f2ba3ac321296b8b7c9dd47d770daf16c8f8c +a29037f8ef925c417c90c4df4f9fb27fb977d04e2b3dd5e8547d33e92ab72e7a00f5461de21e28835319eae5db145eb7 +b91054108ae78b00e3298d667b913ebc44d8f26e531eae78a8fe26fdfb60271c97efb2dee5f47ef5a3c15c8228138927 +926c13efbe90604f6244be9315a34f72a1f8d1aab7572df431998949c378cddbf2fe393502c930fff614ff06ae98a0ce +995c758fd5600e6537089b1baa4fbe0376ab274ff3e82a17768b40df6f91c2e443411de9cafa1e65ea88fb8b87d504f4 +9245ba307a7a90847da75fca8d77ec03fdfc812c871e7a2529c56a0a79a6de16084258e7a9ac4ae8a3756f394336e21c +99e0cfa2bb57a7e624231317044c15e52196ecce020db567c8e8cb960354a0be9862ee0c128c60b44777e65ac315e59f +ad4f6b3d27bbbb744126601053c3dc98c07ff0eb0b38a898bd80dce778372846d67e5ab8fb34fb3ad0ef3f235d77ba7f +a0f12cae3722bbbca2e539eb9cc7614632a2aefe51410430070a12b5bc5314ecec5857b7ff8f41e9980cac23064f7c56 +b487f1bc59485848c98222fd3bc36c8c9bb3d2912e2911f4ceca32c840a7921477f9b1fe00877e05c96c75d3eecae061 +a6033db53925654e18ecb3ce715715c36165d7035db9397087ac3a0585e587998a53973d011ac6d48af439493029cee6 +a6b4d09cd01c70a3311fd131d3710ccf97bde3e7b80efd5a8c0eaeffeb48cca0f951ced905290267b115b06d46f2693b +a9dff1df0a8f4f218a98b6f818a693fb0d611fed0fc3143537cbd6578d479af13a653a8155e535548a2a0628ae24fa58 +a58e469f65d366b519f9a394cacb7edaddac214463b7b6d62c2dbc1316e11c6c5184ce45c16de2d77f990dcdd8b55430 +989e71734f8119103586dc9a3c5f5033ddc815a21018b34c1f876cdfc112efa868d5751bf6419323e4e59fa6a03ece1c +a2da00e05036c884369e04cf55f3de7d659cd5fa3f849092b2519dd263694efe0f051953d9d94b7e121f0aee8b6174d7 +968f3c029f57ee31c4e1adea89a7f92e28483af9a74f30fbdb995dc2d40e8e657dff8f8d340d4a92bf65f54440f2859f +932778df6f60ac1639c1453ef0cbd2bf67592759dcccb3e96dcc743ff01679e4c7dd0ef2b0833dda548d32cb4eba49e2 +a805a31139f8e0d6dae1ac87d454b23a3dc9fc653d4ca18d4f8ebab30fc189c16e73981c2cb7dd6f8c30454a5208109d +a9ba0991296caa2aaa4a1ceacfb205544c2a2ec97088eace1d84ee5e2767656a172f75d2f0c4e16a3640a0e0dec316e0 +b1e49055c968dced47ec95ae934cf45023836d180702e20e2df57e0f62fb85d7ac60d657ba3ae13b8560b67210449459 +a94e1da570a38809c71e37571066acabff7bf5632737c9ab6e4a32856924bf6211139ab3cedbf083850ff2d0e0c0fcfc +88ef1bb322000c5a5515b310c838c9af4c1cdbb32eab1c83ac3b2283191cd40e9573747d663763a28dad0d64adc13840 +a987ce205f923100df0fbd5a85f22c9b99b9b9cbe6ddfa8dfda1b8fe95b4f71ff01d6c5b64ca02eb24edb2b255a14ef0 +84fe8221a9e95d9178359918a108de4763ebfa7a6487facb9c963406882a08a9a93f492f8e77cf9e7ea41ae079c45993 +aa1cf3dc7c5dcfa15bbbc811a4bb6dbac4fba4f97fb1ed344ab60264d7051f6eef19ea9773441d89929ee942ed089319 +8f6a7d610d59d9f54689bbe6a41f92d9f6096cde919c1ab94c3c7fcecf0851423bc191e5612349e10f855121c0570f56 +b5af1fa7894428a53ea520f260f3dc3726da245026b6d5d240625380bfb9c7c186df0204bb604efac5e613a70af5106e +a5bce6055ff812e72ce105f147147c7d48d7a2313884dd1f488b1240ee320f13e8a33f5441953a8e7a3209f65b673ce1 +b9b55b4a1422677d95821e1d042ab81bbf0bf087496504021ec2e17e238c2ca6b44fb3b635a5c9eac0871a724b8d47c3 +941c38e533ce4a673a3830845b56786585e5fe49c427f2e5c279fc6db08530c8f91db3e6c7822ec6bb4f956940052d18 +a38e191d66c625f975313c7007bbe7431b5a06ed2da1290a7d5d0f2ec73770d476efd07b8e632de64597d47df175cbb0 +94ba76b667abf055621db4c4145d18743a368d951565632ed4e743dd50dd3333507c0c34f286a5c5fdbf38191a2255cd +a5ca38c60be5602f2bfa6e00c687ac96ac36d517145018ddbee6f12eb0faa63dd57909b9eeed26085fe5ac44e55d10ab +b00fea3b825e60c1ed1c5deb4b551aa65a340e5af36b17d5262c9cd2c508711e4dc50dc2521a2c16c7c901902266e64a +971b86fc4033485e235ccb0997a236206ba25c6859075edbcdf3c943116a5030b7f75ebca9753d863a522ba21a215a90 +b3b31f52370de246ee215400975b674f6da39b2f32514fe6bd54e747752eedca22bb840493b44a67df42a3639c5f901f +affbbfac9c1ba7cbfa1839d2ae271dd6149869b75790bf103230637da41857fc326ef3552ff31c15bda0694080198143 +a95d42aa7ef1962520845aa3688f2752d291926f7b0d73ea2ee24f0612c03b43f2b0fe3c9a9a99620ffc8d487b981bc2 +914a266065caf64985e8c5b1cb2e3f4e3fe94d7d085a1881b1fefa435afef4e1b39a98551d096a62e4f5cc1a7f0fdc2e +81a0b4a96e2b75bc1bf2dbd165d58d55cfd259000a35504d1ffb18bc346a3e6f07602c683723864ffb980f840836fd8d +91c1556631cddd4c00b65b67962b39e4a33429029d311c8acf73a18600e362304fb68bccb56fde40f49e95b7829e0b87 +8befbacc19e57f7c885d1b7a6028359eb3d80792fe13b92a8400df21ce48deb0bb60f2ddb50e3d74f39f85d7eab23adc +92f9458d674df6e990789690ec9ca73dacb67fc9255b58c417c555a8cc1208ace56e8e538f86ba0f3615573a0fbac00d +b4b1b3062512d6ae7417850c08c13f707d5838e43d48eb98dd4621baf62eee9e82348f80fe9b888a12874bfa538771f8 +a13c4a3ac642ede37d9c883f5319e748d2b938f708c9d779714108a449b343f7b71a6e3ef4080fee125b416762920273 +af44983d5fc8cceee0551ef934e6e653f2d3efa385e5c8a27a272463a6f333e290378cc307c2b664eb923c78994e706e +a389fd6c59fe2b4031cc244e22d3991e541bd203dd5b5e73a6159e72df1ab41d49994961500dcde7989e945213184778 +8d2141e4a17836c548de9598d7b298b03f0e6c73b7364979a411c464e0628e21cff6ac3d6decdba5d1c4909eff479761 +980b22ef53b7bdf188a3f14bc51b0dbfdf9c758826daa3cbc1e3986022406a8aa9a6a79e400567120b88c67faa35ce5f +a28882f0a055f96df3711de5d0aa69473e71245f4f3e9aa944e9d1fb166e02caa50832e46da6d3a03b4801735fd01b29 +8db106a37d7b88f5d995c126abb563934dd8de516af48e85695d02b1aea07f79217e3cdd03c6f5ca57421830186c772b +b5a7e50da0559a675c472f7dfaee456caab6695ab7870541b2be8c2b118c63752427184aad81f0e1afc61aef1f28c46f +9962118780e20fe291d10b64f28d09442a8e1b5cffd0f3dd68d980d0614050a626c616b44e9807fbee7accecae00686a +b38ddf33745e8d2ad6a991aefaf656a33c5f8cbe5d5b6b6fd03bd962153d8fd0e01b5f8f96d80ae53ab28d593ab1d4e7 +857dc12c0544ff2c0c703761d901aba636415dee45618aba2e3454ff9cbc634a85c8b05565e88520ff9be2d097c8b2b1 +a80d465c3f8cc63af6d74a6a5086b626c1cb4a8c0fee425964c3bd203d9d7094e299f81ce96d58afc20c8c9a029d9dae +89e1c8fbde8563763be483123a3ed702efac189c6d8ab4d16c85e74bbaf856048cc42d5d6e138633a38572ba5ec3f594 +893a594cf495535f6d216508f8d03c317dcf03446668cba688da90f52d0111ac83d76ad09bf5ea47056846585ee5c791 +aadbd8be0ae452f7f9450c7d2957598a20cbf10139a4023a78b4438172d62b18b0de39754dd2f8862dbd50a3a0815e53 +ae7d39670ecca3eb6db2095da2517a581b0e8853bdfef619b1fad9aacd443e7e6a40f18209fadd44038a55085c5fe8b2 +866ef241520eacb6331593cfcb206f7409d2f33d04542e6e52cba5447934e02d44c471f6c9a45963f9307e9809ab91d9 +b1a09911ad3864678f7be79a9c3c3eb5c84a0a45f8dcb52c67148f43439aeaaa9fd3ed3471276b7e588b49d6ebe3033a +add07b7f0dbb34049cd8feeb3c18da5944bf706871cfd9f14ff72f6c59ad217ebb1f0258b13b167851929387e4e34cfe +ae048892d5c328eefbdd4fba67d95901e3c14d974bfc0a1fc68155ca9f0d59e61d7ba17c6c9948b120cf35fd26e6fee9 +9185b4f3b7da0ddb4e0d0f09b8a9e0d6943a4611e43f13c3e2a767ed8592d31e0ba3ebe1914026a3627680274291f6e5 +a9c022d4e37b0802284ce3b7ee9258628ab4044f0db4de53d1c3efba9de19d15d65cc5e608dbe149c21c2af47d0b07b5 +b24dbd5852f8f24921a4e27013b6c3fa8885b973266cb839b9c388efad95821d5d746348179dcc07542bd0d0aefad1ce +b5fb4f279300876a539a27a441348764908bc0051ebd66dc51739807305e73db3d2f6f0f294ffb91b508ab150eaf8527 +ace50841e718265b290c3483ed4b0fdd1175338c5f1f7530ae9a0e75d5f80216f4de37536adcbc8d8c95982e88808cd0 +b19cadcde0f63bd1a9c24bd9c2806f53c14c0b9735bf351601498408ba503ddbd2037c891041cbba47f58b8c483f3b21 +b6061e63558d312eb891b97b39aa552fa218568d79ee26fe6dd5b864aea9e3216d8f2e2f3b093503be274766dac41426 +89730fdb2876ab6f0fe780d695f6e12090259027e789b819956d786e977518057e5d1d7f5ab24a3ae3d5d4c97773bd2b +b6fa841e81f9f2cad0163a02a63ae96dc341f7ae803b616efc6e1da2fbea551c1b96b11ad02c4afbdf6d0cc9f23da172 +8fb66187182629c861ddb6896d7ed3caf2ad050c3dba8ab8eb0d7a2c924c3d44c48d1a148f9e33fb1f061b86972f8d21 +86022ac339c1f84a7fa9e05358c1a5b316b4fc0b83dbe9c8c7225dc514f709d66490b539359b084ce776e301024345fa +b50b9c321468da950f01480bb62b6edafd42f83c0001d6e97f2bd523a1c49a0e8574fb66380ea28d23a7c4d54784f9f0 +a31c05f7032f30d1dac06678be64d0250a071fd655e557400e4a7f4c152be4d5c7aa32529baf3e5be7c4bd49820054f6 +b95ac0848cd322684772119f5b682d90a66bbf9dac411d9d86d2c34844bbd944dbaf8e47aa41380455abd51687931a78 +ae4a6a5ce9553b65a05f7935e61e496a4a0f6fd8203367a2c627394c9ce1e280750297b74cdc48fd1d9a31e93f97bef4 +a22daf35f6e9b05e52e0b07f7bd1dbbebd2c263033fb0e1b2c804e2d964e2f11bc0ece6aca6af079dd3a9939c9c80674 +902150e0cb1f16b9b59690db35281e28998ce275acb313900da8b2d8dfd29fa1795f8ca3ff820c31d0697de29df347c1 +b17b5104a5dc665cdd7d47e476153d715eb78c6e5199303e4b5445c21a7fa7cf85fe7cfd08d7570f4e84e579b005428c +a03f49b81c15433f121680aa02d734bb9e363af2156654a62bcb5b2ba2218398ccb0ff61104ea5d7df5b16ea18623b1e +802101abd5d3c88876e75a27ffc2f9ddcce75e6b24f23dba03e5201281a7bd5cc7530b6a003be92d225093ca17d3c3bb +a4d183f63c1b4521a6b52226fc19106158fc8ea402461a5cccdaa35fee93669df6a8661f45c1750cd01308149b7bf08e +8d17c22e0c8403b69736364d460b3014775c591032604413d20a5096a94d4030d7c50b9fe3240e31d0311efcf9816a47 +947225acfcce5992eab96276f668c3cbe5f298b90a59f2bb213be9997d8850919e8f496f182689b5cbd54084a7332482 +8df6f4ed216fc8d1905e06163ba1c90d336ab991a18564b0169623eb39b84e627fa267397da15d3ed754d1f3423bff07 +83480007a88f1a36dea464c32b849a3a999316044f12281e2e1c25f07d495f9b1710b4ba0d88e9560e72433addd50bc2 +b3019d6e591cf5b33eb972e49e06c6d0a82a73a75d78d383dd6f6a4269838289e6e07c245f54fed67f5c9bb0fd5e1c5f +92e8ce05e94927a9fb02debadb99cf30a26172b2705003a2c0c47b3d8002bf1060edb0f6a5750aad827c98a656b19199 +ac2aff801448dbbfc13cca7d603fd9c69e82100d997faf11f465323b97255504f10c0c77401e4d1890339d8b224f5803 +b0453d9903d08f508ee27e577445dc098baed6cde0ac984b42e0f0efed62760bd58d5816cf1e109d204607b7b175e30c +ae68dc4ba5067e825d46d2c7c67f1009ceb49d68e8d3e4c57f4bcd299eb2de3575d42ea45e8722f8f28497a6e14a1cfe +b22486c2f5b51d72335ce819bbafb7fa25eb1c28a378a658f13f9fc79cd20083a7e573248d911231b45a5cf23b561ca7 +89d1201d1dbd6921867341471488b4d2fd0fc773ae1d4d074c78ae2eb779a59b64c00452c2a0255826fca6b3d03be2b1 +a2998977c91c7a53dc6104f5bc0a5b675e5350f835e2f0af69825db8af4aeb68435bdbcc795f3dd1f55e1dd50bc0507f +b0be4937a925b3c05056ed621910d535ccabf5ab99fd3b9335080b0e51d9607d0fd36cb5781ff340018f6acfca4a9736 +aea145a0f6e0ba9df8e52e84bb9c9de2c2dc822f70d2724029b153eb68ee9c17de7d35063dcd6a39c37c59fdd12138f7 +91cb4545d7165ee8ffbc74c874baceca11fdebbc7387908d1a25877ca3c57f2c5def424dab24148826832f1e880bede0 +b3b579cb77573f19c571ad5eeeb21f65548d7dff9d298b8d7418c11f3e8cd3727c5b467f013cb87d6861cfaceee0d2e3 +b98a1eeec2b19fecc8378c876d73645aa52fb99e4819903735b2c7a885b242787a30d1269a04bfb8573d72d9bbc5f0f0 +940c1f01ed362bd588b950c27f8cc1d52276c71bb153d47f07ec85b038c11d9a8424b7904f424423e714454d5e80d1cd +aa343a8ecf09ce11599b8cf22f7279cf80f06dbf9f6d62cb05308dbbb39c46fd0a4a1240b032665fbb488a767379b91b +87c3ac72084aca5974599d3232e11d416348719e08443acaba2b328923af945031f86432e170dcdd103774ec92e988c9 +91d6486eb5e61d2b9a9e742c20ec974a47627c6096b3da56209c2b4e4757f007e793ebb63b2b246857c9839b64dc0233 +aebcd3257d295747dd6fc4ff910d839dd80c51c173ae59b8b2ec937747c2072fa85e3017f9060aa509af88dfc7529481 +b3075ba6668ca04eff19efbfa3356b92f0ab12632dcda99cf8c655f35b7928c304218e0f9799d68ef9f809a1492ff7db +93ba7468bb325639ec2abd4d55179c69fd04eaaf39fc5340709227bbaa4ad0a54ea8b480a1a3c8d44684e3be0f8d1980 +a6aef86c8c0d92839f38544d91b767c582568b391071228ff5a5a6b859c87bf4f81a7d926094a4ada1993ddbd677a920 +91dcd6d14207aa569194aa224d1e5037b999b69ade52843315ca61ba26abe9a76412c9e88259bc5cf5d7b95b97d9c3bc +b3b483d31c88f78d49bd065893bc1e3d2aa637e27dedb46d9a7d60be7660ce7a10aaaa7deead362284a52e6d14021178 +8e5730070acf8371461ef301cc4523e8e672aa0e3d945d438a0e0aa6bdf8cb9c685dcf38df429037b0c8aff3955c6f5b +b8c6d769890a8ee18dc4f9e917993315877c97549549b34785a92543cbeec96a08ae3a28d6e809c4aacd69de356c0012 +95ca86cd384eaceaa7c077c5615736ca31f36824bd6451a16142a1edc129fa42b50724aeed7c738f08d7b157f78b569e +94df609c6d71e8eee7ab74226e371ccc77e01738fe0ef1a6424435b4570fe1e5d15797b66ed0f64eb88d4a3a37631f0e +89057b9783212add6a0690d6bb99097b182738deff2bd9e147d7fd7d6c8eacb4c219923633e6309ad993c24572289901 +83a0f9f5f265c5a0e54defa87128240235e24498f20965009fef664f505a360b6fb4020f2742565dfc7746eb185bcec0 +91170da5306128931349bc3ed50d7df0e48a68b8cc8420975170723ac79d8773e4fa13c5f14dc6e3fafcad78379050b1 +b7178484d1b55f7e56a4cc250b6b2ec6040437d96bdfddfa7b35ed27435860f3855c2eb86c636f2911b012eb83b00db8 +ac0b00c4322d1e4208e09cd977b4e54d221133ff09551f75b32b0b55d0e2be80941dda26257b0e288c162e63c7e9cf68 +9690ed9e7e53ed37ff362930e4096b878b12234c332fd19d5d064824084245952eda9f979e0098110d6963e468cf513e +b6fa547bb0bb83e5c5be0ed462a8783fba119041c136a250045c09d0d2af330c604331e7de960df976ff76d67f8000cd +814603907c21463bcf4e59cfb43066dfe1a50344ae04ef03c87c0f61b30836c3f4dea0851d6fa358c620045b7f9214c8 +9495639e3939fad2a3df00a88603a5a180f3c3a0fe4d424c35060e2043e0921788003689887b1ed5be424d9a89bb18bb +aba4c02d8d57f2c92d5bc765885849e9ff8393d6554f5e5f3e907e5bfac041193a0d8716d7861104a4295d5a03c36b03 +8ead0b56c1ca49723f94a998ba113b9058059321da72d9e395a667e6a63d5a9dac0f5717cec343f021695e8ced1f72af +b43037f7e3852c34ed918c5854cd74e9d5799eeddfe457d4f93bb494801a064735e326a76e1f5e50a339844a2f4a8ec9 +99db8422bb7302199eb0ff3c3d08821f8c32f53a600c5b6fb43e41205d96adae72be5b460773d1280ad1acb806af9be8 +8a9be08eae0086c0f020838925984df345c5512ff32e37120b644512b1d9d4fecf0fd30639ca90fc6cf334a86770d536 +81b43614f1c28aa3713a309a88a782fb2bdfc4261dd52ddc204687791a40cf5fd6a263a8179388596582cccf0162efc2 +a9f3a8b76912deb61d966c75daf5ddb868702ebec91bd4033471c8e533183df548742a81a2671de5be63a502d827437d +902e2415077f063e638207dc7e14109652e42ab47caccd6204e2870115791c9defac5425fd360b37ac0f7bd8fe7011f8 +aa18e4fdc1381b59c18503ae6f6f2d6943445bd00dd7d4a2ad7e5adad7027f2263832690be30d456e6d772ad76f22350 +a348b40ba3ba7d81c5d4631f038186ebd5e5f314f1ea737259151b07c3cc8cf0c6ed4201e71bcc1c22fefda81a20cde6 +aa1306f7ac1acbfc47dc6f7a0cb6d03786cec8c8dc8060388ccda777bca24bdc634d03e53512c23dba79709ff64f8620 +818ccfe46e700567b7f3eb400e5a35f6a5e39b3db3aa8bc07f58ace35d9ae5a242faf8dbccd08d9a9175bbce15612155 +b7e3da2282b65dc8333592bb345a473f03bd6df69170055fec60222de9897184536bf22b9388b08160321144d0940279 +a4d976be0f0568f4e57de1460a1729129252b44c552a69fceec44e5b97c96c711763360d11f9e5bf6d86b4976bf40d69 +85d185f0397c24c2b875b09b6328a23b87982b84ee880f2677a22ff4c9a1ba9f0fea000bb3f7f66375a00d98ebafce17 +b4ccbb8c3a2606bd9b87ce022704663af71d418351575f3b350d294f4efc68c26f9a2ce49ff81e6ff29c3b63d746294e +93ffd3265fddb63724dfde261d1f9e22f15ecf39df28e4d89e9fea03221e8e88b5dd9b77628bacaa783c6f91802d47cc +b1fd0f8d7a01378e693da98d03a2d2fda6b099d03454b6f2b1fa6472ff6bb092751ce6290059826b74ac0361eab00e1e +a89f440c71c561641589796994dd2769616b9088766e983c873fae0716b95c386c8483ab8a4f367b6a68b72b7456dd32 +af4fe92b01d42d03dd5d1e7fa55e96d4bbcb7bf7d4c8c197acd16b3e0f3455807199f683dcd263d74547ef9c244b35cc +a8227f6e0a344dfe76bfbe7a1861be32c4f4bed587ccce09f9ce2cf481b2dda8ae4f566154bc663d15f962f2d41761bd +a7b361663f7495939ed7f518ba45ea9ff576c4e628995b7aea026480c17a71d63fc2c922319f0502eb7ef8f14a406882 +8ddcf382a9f39f75777160967c07012cfa89e67b19714a7191f0c68eaf263935e5504e1104aaabd0899348c972a8d3c6 +98c95b9f6f5c91f805fb185eedd06c6fc4457d37dd248d0be45a6a168a70031715165ea20606245cbdf8815dc0ac697f +805b44f96e001e5909834f70c09be3efcd3b43632bcac5b6b66b6d227a03a758e4b1768ce2a723045681a1d34562aaeb +b0e81b07cdc45b3dca60882676d9badb99f25c461b7efe56e3043b80100bb62d29e1873ae25eb83087273160ece72a55 +b0c53f0abe78ee86c7b78c82ae1f7c070bb0b9c45c563a8b3baa2c515d482d7507bb80771e60b38ac13f78b8af92b4a9 +a7838ef6696a9e4d2e5dfd581f6c8d6a700467e8fd4e85adabb5f7a56f514785dd4ab64f6f1b48366f7d94728359441b +88c76f7700a1d23c30366a1d8612a796da57b2500f97f88fdf2d76b045a9d24e7426a8ffa2f4e86d3046937a841dad58 +ad8964baf98c1f02e088d1d9fcb3af6b1dfa44cdfe0ed2eae684e7187c33d3a3c28c38e8f4e015f9c04d451ed6f85ff6 +90e9d00a098317ececaa9574da91fc149eda5b772dedb3e5a39636da6603aa007804fa86358550cfeff9be5a2cb7845e +a56ff4ddd73d9a6f5ab23bb77efa25977917df63571b269f6a999e1ad6681a88387fcc4ca3b26d57badf91b236503a29 +97ad839a6302c410a47e245df84c01fb9c4dfef86751af3f9340e86ff8fc3cd52fa5ff0b9a0bd1d9f453e02ca80658a6 +a4c8c44cbffa804129e123474854645107d1f0f463c45c30fd168848ebea94880f7c0c5a45183e9eb837f346270bdb35 +a72e53d0a1586d736e86427a93569f52edd2f42b01e78aee7e1961c2b63522423877ae3ac1227a2cf1e69f8e1ff15bc3 +8559f88a7ef13b4f09ac82ae458bbae6ab25671cfbf52dae7eac7280d6565dd3f0c3286aec1a56a8a16dc3b61d78ce47 +8221503f4cdbed550876c5dc118a3f2f17800c04e8be000266633c83777b039a432d576f3a36c8a01e8fd18289ebc10b +99bfbe5f3e46d4d898a578ba86ed26de7ed23914bd3bcdf3c791c0bcd49398a52419077354a5ab75cea63b6c871c6e96 +aa134416d8ff46f2acd866c1074af67566cfcf4e8be8d97329dfa0f603e1ff208488831ce5948ac8d75bfcba058ddcaa +b02609d65ebfe1fe8e52f21224a022ea4b5ea8c1bd6e7b9792eed8975fc387cdf9e3b419b8dd5bcce80703ab3a12a45f +a4f14798508698fa3852e5cac42a9db9797ecee7672a54988aa74037d334819aa7b2ac7b14efea6b81c509134a6b7ad2 +884f01afecbcb987cb3e7c489c43155c416ed41340f61ecb651d8cba884fb9274f6d9e7e4a46dd220253ae561614e44c +a05523c9e71dce1fe5307cc71bd721feb3e1a0f57a7d17c7d1c9fb080d44527b7dbaa1f817b1af1c0b4322e37bc4bb1e +8560aec176a4242b39f39433dd5a02d554248c9e49d3179530815f5031fee78ba9c71a35ceeb2b9d1f04c3617c13d8f0 +996aefd402748d8472477cae76d5a2b92e3f092fc834d5222ae50194dd884c9fb8b6ed8e5ccf8f6ed483ddbb4e80c747 +8fd09900320000cbabc40e16893e2fcf08815d288ec19345ad7b6bb22f7d78a52b6575a3ca1ca2f8bc252d2eafc928ec +939e51f73022bc5dc6862a0adf8fb8a3246b7bfb9943cbb4b27c73743926cc20f615a036c7e5b90c80840e7f1bfee0e7 +a0a6258700cadbb9e241f50766573bf9bdb7ad380b1079dc3afb4054363d838e177b869cad000314186936e40359b1f2 +972699a4131c8ed27a2d0e2104d54a65a7ff1c450ad9da3a325c662ab26869c21b0a84d0700b98c8b5f6ce3b746873d7 +a454c7fe870cb8aa6491eafbfb5f7872d6e696033f92e4991d057b59d70671f2acdabef533e229878b60c7fff8f748b1 +a167969477214201f09c79027b10221e4707662e0c0fde81a0f628249f2f8a859ce3d30a7dcc03b8ecca8f7828ad85c7 +8ff6b7265175beb8a63e1dbf18c9153fb2578c207c781282374f51b40d57a84fd2ef2ea2b9c6df4a54646788a62fd17f +a3d7ebeccde69d73d8b3e76af0da1a30884bb59729503ff0fb0c3bccf9221651b974a6e72ea33b7956fc3ae758226495 +b71ef144c9a98ce5935620cb86c1590bd4f48e5a2815d25c0cdb008fde628cf628c31450d3d4f67abbfeb16178a74cfd +b5e0a16d115134f4e2503990e3f2035ed66b9ccf767063fe6747870d97d73b10bc76ed668550cb82eedc9a2ca6f75524 +b30ffaaf94ee8cbc42aa2c413175b68afdb207dbf351fb20be3852cb7961b635c22838da97eaf43b103aff37e9e725cc +98aa7d52284f6c1f22e272fbddd8c8698cf8f5fbb702d5de96452141fafb559622815981e50b87a72c2b1190f59a7deb +81fbacda3905cfaf7780bb4850730c44166ed26a7c8d07197a5d4dcd969c09e94a0461638431476c16397dd7bdc449f9 +95e47021c1726eac2e5853f570d6225332c6e48e04c9738690d53e07c6b979283ebae31e2af1fc9c9b3e59f87e5195b1 +ac024a661ba568426bb8fce21780406537f518075c066276197300841e811860696f7588188bc01d90bace7bc73d56e3 +a4ebcaf668a888dd404988ab978594dee193dad2d0aec5cdc0ccaf4ec9a7a8228aa663db1da8ddc52ec8472178e40c32 +a20421b8eaf2199d93b083f2aff37fb662670bd18689d046ae976d1db1fedd2c2ff897985ecc6277b396db7da68bcb27 +8bc33d4b40197fd4d49d1de47489d10b90d9b346828f53a82256f3e9212b0cbc6930b895e879da9cec9fedf026aadb3e +aaafdd1bec8b757f55a0433eddc0a39f818591954fd4e982003437fcceb317423ad7ee74dbf17a2960380e7067a6b4e2 +aad34277ebaed81a6ec154d16736866f95832803af28aa5625bf0461a71d02b1faba02d9d9e002be51c8356425a56867 +976e9c8b150d08706079945bd0e84ab09a648ecc6f64ded9eb5329e57213149ae409ae93e8fbd8eda5b5c69f5212b883 +8097fae1653247d2aed4111533bc378171d6b2c6d09cbc7baa9b52f188d150d645941f46d19f7f5e27b7f073c1ebd079 +83905f93b250d3184eaba8ea7d727c4464b6bdb027e5cbe4f597d8b9dc741dcbea709630bd4fd59ce24023bec32fc0f3 +8095030b7045cff28f34271386e4752f9a9a0312f8df75de4f424366d78534be2b8e1720a19cb1f9a2d21105d790a225 +a7b7b73a6ae2ed1009c49960374b0790f93c74ee03b917642f33420498c188a169724945a975e5adec0a1e83e07fb1b2 +856a41c54df393b6660b7f6354572a4e71c8bfca9cabaffb3d4ef2632c015e7ee2bc10056f3eccb3dbed1ad17d939178 +a8f7a55cf04b38cd4e330394ee6589da3a07dc9673f74804fdf67b364e0b233f14aec42e783200a2e4666f7c5ff62490 +82c529f4e543c6bca60016dc93232c115b359eaee2798a9cf669a654b800aafe6ab4ba58ea8b9cdda2b371c8d62fa845 +8caab020c1baddce77a6794113ef1dfeafc5f5000f48e97f4351b588bf02f1f208101745463c480d37f588d5887e6d8c +8fa91b3cc400f48b77b6fd77f3b3fbfb3f10cdff408e1fd22d38f77e087b7683adad258804409ba099f1235b4b4d6fea +8aa02787663d6be9a35677d9d8188b725d5fcd770e61b11b64e3def8808ea5c71c0a9afd7f6630c48634546088fcd8e2 +b5635b7b972e195cab878b97dea62237c7f77eb57298538582a330b1082f6207a359f2923864630136d8b1f27c41b9aa +8257bb14583551a65975946980c714ecd6e5b629672bb950b9caacd886fbd22704bc9e3ba7d30778adab65dc74f0203a +ab5fe1cd12634bfa4e5c60d946e2005cbd38f1063ec9a5668994a2463c02449a0a185ef331bd86b68b6e23a8780cb3ba +a7d3487da56cda93570cc70215d438204f6a2709bfb5fda6c5df1e77e2efc80f4235c787e57fbf2c74aaff8cbb510a14 +b61cff7b4c49d010e133319fb828eb900f8a7e55114fc86b39c261a339c74f630e1a7d7e1350244ada566a0ff3d46c4b +8d4d1d55d321d278db7a85522ccceca09510374ca81d4d73e3bb5249ace7674b73900c35a531ec4fa6448fabf7ad00dc +966492248aee24f0f56c8cfca3c8ec6ba3b19abb69ae642041d4c3be8523d22c65c4dafcab4c58989ccc4e0bd2f77919 +b20c320a90cb220b86e1af651cdc1e21315cd215da69f6787e28157172f93fc8285dcd59b039c626ed8ca4633cba1a47 +aae9e6b22f018ceb5c0950210bb8182cb8cb61014b7e14581a09d36ebd1bbfebdb2b82afb7fdb0cf75e58a293d9c456d +875547fb67951ad37b02466b79f0c9b985ccbc500cfb431b17823457dc79fb9597ec42cd9f198e15523fcd88652e63a4 +92afce49773cb2e20fb21e4f86f18e0959ebb9c33361547ddb30454ee8e36b1e234019cbdca0e964cb292f7f77df6b90 +8af85343dfe1821464c76ba11c216cbef697b5afc69c4d821342e55afdac047081ec2e3f7b09fc14b518d9a23b78c003 +b7de4a1648fd63f3a918096ea669502af5357438e69dac77cb8102b6e6c15c76e033cfaa80dafc806e535ede5c1a20aa +ac80e9b545e8bd762951d96c9ce87f629d01ffcde07efc2ef7879ca011f1d0d8a745abf26c9d452541008871304fac00 +a4cf0f7ed724e481368016c38ea5816698a5f68eb21af4d3c422d2ba55f96a33e427c2aa40de1b56a7cfac7f7cf43ab0 +899b0a678bb2db2cae1b44e75a661284844ebcdd87abf308fedeb2e4dbe5c5920c07db4db7284a7af806a2382e8b111a +af0588a2a4afce2b1b13c1230816f59e8264177e774e4a341b289a101dcf6af813638fed14fb4d09cb45f35d5d032609 +a4b8df79e2be76e9f5fc5845f06fe745a724cf37c82fcdb72719b77bdebea3c0e763f37909373e3a94480cc5e875cba0 +83e42c46d88930c8f386b19fd999288f142d325e2ebc86a74907d6d77112cb0d449bc511c95422cc810574031a8cbba9 +b5e39534070de1e5f6e27efbdd3dc917d966c2a9b8cf2d893f964256e95e954330f2442027dc148c776d63a95bcde955 +958607569dc28c075e658cd4ae3927055c6bc456eef6212a6fea8205e48ed8777a8064f584cda38fe5639c371e2e7fba +812adf409fa63575113662966f5078a903212ffb65c9b0bbe62da0f13a133443a7062cb8fd70f5e5dd5559a32c26d2c8 +a679f673e5ce6a3cce7fa31f22ee3785e96bcb55e5a776e2dd3467bef7440e3555d1a9b87cb215e86ee9ed13a090344b +afedbb34508b159eb25eb2248d7fe328f86ef8c7d84c62d5b5607d74aae27cc2cc45ee148eb22153b09898a835c58df4 +b75505d4f6b67d31e665cfaf5e4acdb5838ae069166b7fbcd48937c0608a59e40a25302fcc1873d2e81c1782808c70f0 +b62515d539ec21a155d94fc00ea3c6b7e5f6636937bce18ed5b618c12257fb82571886287fd5d1da495296c663ebc512 +ab8e1a9446bbdd588d1690243b1549d230e6149c28f59662b66a8391a138d37ab594df38e7720fae53217e5c3573b5be +b31e8abf4212e03c3287bb2c0a153065a7290a16764a0bac8f112a72e632185a654bb4e88fdd6053e6c7515d9719fadb +b55165477fe15b6abd2d0f4fddaa9c411710dcc4dd712daba3d30e303c9a3ee5415c256f9dc917ecf18c725b4dbab059 +a0939d4f57cacaae549b78e87cc234de4ff6a35dc0d9cd5d7410abc30ebcd34c135e008651c756e5a9d2ca79c40ef42b +8cf10e50769f3443340844aad4d56ec790850fed5a41fcbd739abac4c3015f0a085a038fbe7fae9f5ad899cce5069f6b +924055e804d82a99ea4bb160041ea4dc14b568abf379010bc1922fde5d664718c31d103b8b807e3a1ae809390e708c73 +8ec0f9d26f71b0f2e60a179e4fd1778452e2ffb129d50815e5d7c7cb9415fa69ae5890578086e8ef6bfde35ad2a74661 +98c7f12b15ec4426b59f737f73bf5faea4572340f4550b7590dfb7f7ffedb2372e3e555977c63946d579544c53210ad0 +8a935f7a955c78f69d66f18eee0092e5e833fa621781c9581058e219af4d7ceee48b84e472e159dda6199715fb2f9acf +b78d4219f95a2dbfaa7d0c8a610c57c358754f4f43c2af312ab0fe8f10a5f0177e475332fb8fd23604e474fc2abeb051 +8d086a14803392b7318c28f1039a17e3cfdcece8abcaca3657ec3d0ac330842098a85c0212f889fabb296dfb133ce9aa +a53249f417aac82f2c2a50c244ce21d3e08a5e5a8bd33bec2a5ab0d6cd17793e34a17edfa3690899244ce201e2fb9986 +8619b0264f9182867a1425be514dc4f1ababc1093138a728a28bd7e4ecc99b9faaff68c23792264bc6e4dce5f52a5c52 +8c171edbbbde551ec19e31b2091eb6956107dd9b1f853e1df23bff3c10a3469ac77a58335eee2b79112502e8e163f3de +a9d19ec40f0ca07c238e9337c6d6a319190bdba2db76fb63902f3fb459aeeb50a1ac30db5b25ee1b4201f3ca7164a7f4 +b9c6ec14b1581a03520b8d2c1fbbc31fb8ceaef2c0f1a0d0080b6b96e18442f1734bea7ef7b635d787c691de4765d469 +8cb437beb4cfa013096f40ccc169a713dc17afee6daa229a398e45fd5c0645a9ad2795c3f0cd439531a7151945d7064d +a6e8740cc509126e146775157c2eb278003e5bb6c48465c160ed27888ca803fa12eee1f6a8dd7f444f571664ed87fdc1 +b75c1fecc85b2732e96b3f23aefb491dbd0206a21d682aee0225838dc057d7ed3b576176353e8e90ae55663f79e986e4 +ad8d249b0aea9597b08358bce6c77c1fd552ef3fbc197d6a1cfe44e5e6f89b628b12a6fb04d5dcfcbacc51f46e4ae7bb +b998b2269932cbd58d04b8e898d373ac4bb1a62e8567484f4f83e224061bc0f212459f1daae95abdbc63816ae6486a55 +827988ef6c1101cddc96b98f4a30365ff08eea2471dd949d2c0a9b35c3bbfa8c07054ad1f4c88c8fbf829b20bb5a9a4f +8692e638dd60babf7d9f2f2d2ce58e0ac689e1326d88311416357298c6a2bffbfebf55d5253563e7b3fbbf5072264146 +a685d75b91aea04dbc14ab3c1b1588e6de96dae414c8e37b8388766029631b28dd860688079b12d09cd27f2c5af11adf +b57eced93eec3371c56679c259b34ac0992286be4f4ff9489d81cf9712403509932e47404ddd86f89d7c1c3b6391b28c +a1c8b4e42ebcbd8927669a97f1b72e236fb19249325659e72be7ddaaa1d9e81ca2abb643295d41a8c04a2c01f9c0efd7 +877c33de20d4ed31674a671ba3e8f01a316581e32503136a70c9c15bf0b7cb7b1cba6cd4eb641fad165fb3c3c6c235fd +a2a469d84ec478da40838f775d11ad38f6596eb41caa139cc190d6a10b5108c09febae34ffdafac92271d2e73c143693 +972f817caedb254055d52e963ed28c206848b6c4cfdb69dbc961c891f8458eaf582a6d4403ce1177d87bc2ea410ef60a +accbd739e138007422f28536381decc54bb6bd71d93edf3890e54f9ef339f83d2821697d1a4ac1f5a98175f9a9ecb9b5 +8940f8772e05389f823b62b3adc3ed541f91647f0318d7a0d3f293aeeb421013de0d0a3664ea53dd24e5fbe02d7efef6 +8ecce20f3ef6212edef07ec4d6183fda8e0e8cad2c6ccd0b325e75c425ee1faba00b5c26b4d95204238931598d78f49d +97cc72c36335bd008afbed34a3b0c7225933faba87f7916d0a6d2161e6f82e0cdcda7959573a366f638ca75d30e9dab1 +9105f5de8699b5bdb6bd3bb6cc1992d1eac23929c29837985f83b22efdda92af64d9c574aa9640475087201bbbe5fd73 +8ffb33c4f6d05c413b9647eb6933526a350ed2e4278ca2ecc06b0e8026d8dbe829c476a40e45a6df63a633090a3f82ef +8bfc6421fdc9c2d2aaa68d2a69b1a2728c25b84944cc3e6a57ff0c94bfd210d1cbf4ff3f06702d2a8257024d8be7de63 +a80e1dc1dddfb41a70220939b96dc6935e00b32fb8be5dff4eed1f1c650002ff95e4af481c43292e3827363b7ec4768a +96f714ebd54617198bd636ba7f7a7f8995a61db20962f2165078d9ed8ee764d5946ef3cbdc7ebf8435bb8d5dd4c1deac +8cdb0890e33144d66391d2ae73f5c71f5a861f72bc93bff6cc399fc25dd1f9e17d8772592b44593429718784802ac377 +8ccf9a7f80800ee770b92add734ed45a73ecc31e2af0e04364eefc6056a8223834c7c0dc9dfc52495bdec6e74ce69994 +aa0875f423bd68b5f10ba978ddb79d3b96ec093bfbac9ff366323193e339ed7c4578760fb60f60e93598bdf1e5cc4995 +a9214f523957b59c7a4cb61a40251ad72aba0b57573163b0dc0f33e41d2df483fb9a1b85a5e7c080e9376c866790f8cb +b6224b605028c6673a536cc8ff9aeb94e7a22e686fda82cf16068d326469172f511219b68b2b3affb7933af0c1f80d07 +b6d58968d8a017c6a34e24c2c09852f736515a2c50f37232ac6b43a38f8faa7572cc31dade543b594b61b5761c4781d0 +8a97cefe5120020c38deeb861d394404e6c993c6cbd5989b6c9ebffe24f46ad11b4ba6348e2991cbf3949c28cfc3c99d +95bf046f8c3a9c0ce2634be4de3713024daec3fc4083e808903b25ce3ac971145af90686b451efcc72f6b22df0216667 +a6a4e2f71b8fa28801f553231eff2794c0f10d12e7e414276995e21195abc9c2983a8997e41af41e78d19ff6fbb2680b +8e5e62a7ca9c2f58ebaab63db2ff1fb1ff0877ae94b7f5e2897f273f684ae639dff44cc65718f78a9c894787602ab26a +8542784383eec4f565fcb8b9fc2ad8d7a644267d8d7612a0f476fc8df3aff458897a38003d506d24142ad18f93554f2b +b7db68ba4616ea072b37925ec4fb39096358c2832cc6d35169e032326b2d6614479f765ae98913c267105b84afcb9bf2 +8b31dbb9457d23d416c47542c786e07a489af35c4a87dadb8ee91bea5ac4a5315e65625d78dad2cf8f9561af31b45390 +a8545a1d91ac17257732033d89e6b7111db8242e9c6ebb0213a88906d5ef407a2c6fdb444e29504b06368b6efb4f4839 +b1bd85d29ebb28ccfb05779aad8674906b267c2bf8cdb1f9a0591dd621b53a4ee9f2942687ee3476740c0b4a7621a3ae +a2b54534e152e46c50d91fff03ae9cd019ff7cd9f4168b2fe7ac08ef8c3bbc134cadd3f9d6bd33d20ae476c2a8596c8a +b19b571ff4ae3e9f5d95acda133c455e72c9ea9973cae360732859836c0341c4c29ab039224dc5bc3deb824e031675d8 +940b5f80478648bac025a30f3efeb47023ce20ee98be833948a248bca6979f206bb28fc0f17b90acf3bb4abd3d14d731 +8f106b40588586ac11629b96d57808ad2808915d89539409c97414aded90b4ff23286a692608230a52bff696055ba5d6 +ae6bda03aa10da3d2abbc66d764ca6c8d0993e7304a1bdd413eb9622f3ca1913baa6da1e9f4f9e6cf847f14f44d6924d +a18e7796054a340ef826c4d6b5a117b80927afaf2ebd547794c400204ae2caf277692e2eabb55bc2f620763c9e9da66d +8d2d25180dc2c65a4844d3e66819ccfcf48858f0cc89e1c77553b463ec0f7feb9a4002ce26bc618d1142549b9850f232 +863f413a394de42cc8166c1c75d513b91d545fff1de6b359037a742c70b008d34bf8e587afa2d62c844d0c6f0ea753e7 +83cd0cf62d63475e7fcad18a2e74108499cdbf28af2113cfe005e3b5887794422da450b1944d0a986eb7e1f4c3b18f25 +b4f8b350a6d88fea5ab2e44715a292efb12eb52df738c9b2393da3f1ddee68d0a75b476733ccf93642154bceb208f2b8 +b3f52aaa4cd4221cb9fc45936cc67fd3864bf6d26bf3dd86aa85aa55ecfc05f5e392ecce5e7cf9406b4b1c4fce0398c8 +b33137084422fb643123f40a6df2b498065e65230fc65dc31791c330e898c51c3a65ff738930f32c63d78f3c9315f85b +91452bfa75019363976bb7337fe3a73f1c10f01637428c135536b0cdc7da5ce558dae3dfc792aa55022292600814a8ef +ad6ba94c787cd4361ca642c20793ea44f1f127d4de0bb4a77c7fbfebae0fcadbf28e2cb6f0c12c12a07324ec8c19761d +890aa6248b17f1501b0f869c556be7bf2b1d31a176f9978bb97ab7a6bd4138eed32467951c5ef1871944b7f620542f43 +82111db2052194ee7dd22ff1eafffac0443cf969d3762cceae046c9a11561c0fdce9c0711f88ac01d1bed165f8a7cee3 +b1527b71df2b42b55832f72e772a466e0fa05743aacc7814f4414e4bcc8d42a4010c9e0fd940e6f254cafedff3cd6543 +922370fa49903679fc565f09c16a5917f8125e72acfeb060fcdbadbd1644eb9f4016229756019c93c6d609cda5d5d174 +aa4c7d98a96cab138d2a53d4aee8ebff6ef903e3b629a92519608d88b3bbd94de5522291a1097e6acf830270e64c8ee1 +b3dc21608a389a72d3a752883a382baaafc61ecc44083b832610a237f6a2363f24195acce529eb4aed4ef0e27a12b66e +94619f5de05e07b32291e1d7ab1d8b7337a2235e49d4fb5f3055f090a65e932e829efa95db886b32b153bdd05a53ec8c +ade1e92722c2ffa85865d2426fb3d1654a16477d3abf580cfc45ea4b92d5668afc9d09275d3b79283e13e6b39e47424d +b7201589de7bed094911dd62fcd25c459a8e327ac447b69f541cdba30233063e5ddffad0b67e9c3e34adcffedfd0e13d +809d325310f862d6549e7cb40f7e5fc9b7544bd751dd28c4f363c724a0378c0e2adcb5e42ec8f912f5f49f18f3365c07 +a79c20aa533de7a5d671c99eb9eb454803ba54dd4f2efa3c8fec1a38f8308e9905c71e9282955225f686146388506ff6 +a85eeacb5e8fc9f3ed06a3fe2dc3108ab9f8c5877b148c73cf26e4e979bf5795edbe2e63a8d452565fd1176ed40402b2 +97ef55662f8a1ec0842b22ee21391227540adf7708f491436044f3a2eb18c471525e78e1e14fa292507c99d74d7437c6 +93110d64ed5886f3d16ce83b11425576a3a7a9bb831cd0de3f9a0b0f2270a730d68136b4ef7ff035ede004358f419b5c +ac9ed0a071517f0ae4f61ce95916a90ba9a77a3f84b0ec50ef7298acdcd44d1b94525d191c39d6bd1bb68f4471428760 +98abd6a02c7690f5a339adf292b8c9368dfc12e0f8069cf26a5e0ce54b4441638f5c66ea735142f3c28e00a0024267e6 +b51efb73ba6d44146f047d69b19c0722227a7748b0e8f644d0fc9551324cf034c041a2378c56ce8b58d06038fb8a78de +8f115af274ef75c1662b588b0896b97d71f8d67986ae846792702c4742ab855952865ce236b27e2321967ce36ff93357 +b3c4548f14d58b3ab03c222da09e4381a0afe47a72d18d50a94e0008797f78e39e99990e5b4757be62310d400746e35a +a9b1883bd5f31f909b8b1b6dcb48c1c60ed20aa7374b3ffa7f5b2ed036599b5bef33289d23c80a5e6420d191723b92f7 +85d38dffd99487ae5bb41ab4a44d80a46157bbbe8ef9497e68f061721f74e4da513ccc3422936b059575975f6787c936 +adf870fcb96e972c033ab7a35d28ae79ee795f82bc49c3bd69138f0e338103118d5529c53f2d72a9c0d947bf7d312af2 +ab4c7a44e2d9446c6ff303eb49aef0e367a58b22cc3bb27b4e69b55d1d9ee639c9234148d2ee95f9ca8079b1457d5a75 +a386420b738aba2d7145eb4cba6d643d96bda3f2ca55bb11980b318d43b289d55a108f4bc23a9606fb0bccdeb3b3bb30 +847020e0a440d9c4109773ecca5d8268b44d523389993b1f5e60e541187f7c597d79ebd6e318871815e26c96b4a4dbb1 +a530aa7e5ca86fcd1bec4b072b55cc793781f38a666c2033b510a69e110eeabb54c7d8cbcb9c61fee531a6f635ffa972 +87364a5ea1d270632a44269d686b2402da737948dac27f51b7a97af80b66728b0256547a5103d2227005541ca4b7ed04 +8816fc6e16ea277de93a6d793d0eb5c15e9e93eb958c5ef30adaf8241805adeb4da8ce19c3c2167f971f61e0b361077d +8836a72d301c42510367181bb091e4be377777aed57b73c29ef2ce1d475feedd7e0f31676284d9a94f6db01cc4de81a2 +b0d9d8b7116156d9dde138d28aa05a33e61f8a85839c1e9071ccd517b46a5b4b53acb32c2edd7150c15bc1b4bd8db9e3 +ae931b6eaeda790ba7f1cd674e53dc87f6306ff44951fa0df88d506316a5da240df9794ccbd7215a6470e6b31c5ea193 +8c6d5bdf87bd7f645419d7c6444e244fe054d437ed1ba0c122fde7800603a5fadc061e5b836cb22a6cfb2b466f20f013 +90d530c6d0cb654999fa771b8d11d723f54b8a8233d1052dc1e839ea6e314fbed3697084601f3e9bbb71d2b4eaa596df +b0d341a1422588c983f767b1ed36c18b141774f67ef6a43cff8e18b73a009da10fc12120938b8bba27f225bdfd3138f9 +a131b56f9537f460d304e9a1dd75702ace8abd68cb45419695cb8dee76998139058336c87b7afd6239dc20d7f8f940cc +aa6c51fa28975f709329adee1bbd35d49c6b878041841a94465e8218338e4371f5cb6c17f44a63ac93644bf28f15d20f +88440fb584a99ebd7f9ea04aaf622f6e44e2b43bbb49fb5de548d24a238dc8f26c8da2ccf03dd43102bda9f16623f609 +9777b8695b790e702159a4a750d5e7ff865425b95fa0a3c15495af385b91c90c00a6bd01d1b77bffe8c47d01baae846f +8b9d764ece7799079e63c7f01690c8eff00896a26a0d095773dea7a35967a8c40db7a6a74692f0118bf0460c26739af4 +85808c65c485520609c9e61fa1bb67b28f4611d3608a9f7a5030ee61c3aa3c7e7dc17fff48af76b4aecee2cb0dbd22ac +ad2783a76f5b3db008ef5f7e67391fda4e7e36abde6b3b089fc4835b5c339370287935af6bd53998bed4e399eda1136d +96f18ec03ae47c205cc4242ca58e2eff185c9dca86d5158817e2e5dc2207ab84aadda78725f8dc080a231efdc093b940 +97de1ab6c6cc646ae60cf7b86df73b9cf56cc0cd1f31b966951ebf79fc153531af55ca643b20b773daa7cab784b832f7 +870ba266a9bfa86ef644b1ef025a0f1b7609a60de170fe9508de8fd53170c0b48adb37f19397ee8019b041ce29a16576 +ad990e888d279ac4e8db90619d663d5ae027f994a3992c2fbc7d262b5990ae8a243e19157f3565671d1cb0de17fe6e55 +8d9d5adcdd94c5ba3be4d9a7428133b42e485f040a28d16ee2384758e87d35528f7f9868de9bd23d1a42a594ce50a567 +85a33ed75d514ece6ad78440e42f7fcdb59b6f4cff821188236d20edae9050b3a042ce9bc7d2054296e133d033e45022 +92afd2f49a124aaba90de59be85ff269457f982b54c91b06650c1b8055f9b4b0640fd378df02a00e4fc91f7d226ab980 +8c0ee09ec64bd831e544785e3d65418fe83ed9c920d9bb4d0bf6dd162c1264eb9d6652d2def0722e223915615931581c +8369bedfa17b24e9ad48ebd9c5afea4b66b3296d5770e09b00446c5b0a8a373d39d300780c01dcc1c6752792bccf5fd0 +8b9e960782576a59b2eb2250d346030daa50bbbec114e95cdb9e4b1ba18c3d34525ae388f859708131984976ca439d94 +b682bface862008fea2b5a07812ca6a28a58fd151a1d54c708fc2f8572916e0d678a9cb8dc1c10c0470025c8a605249e +a38d5e189bea540a824b36815fc41e3750760a52be0862c4cac68214febdc1a754fb194a7415a8fb7f96f6836196d82a +b9e7fbda650f18c7eb8b40e42cc42273a7298e65e8be524292369581861075c55299ce69309710e5b843cb884de171bd +b6657e5e31b3193874a1bace08f42faccbd3c502fb73ad87d15d18a1b6c2a146f1baa929e6f517db390a5a47b66c0acf +ae15487312f84ed6265e4c28327d24a8a0f4d2d17d4a5b7c29b974139cf93223435aaebe3af918f5b4bb20911799715f +8bb4608beb06bc394e1a70739b872ce5a2a3ffc98c7547bf2698c893ca399d6c13686f6663f483894bccaabc3b9c56ad +b58ac36bc6847077584308d952c5f3663e3001af5ecf2e19cb162e1c58bd6c49510205d453cffc876ca1dc6b8e04a578 +924f65ced61266a79a671ffb49b300f0ea44c50a0b4e3b02064faa99fcc3e4f6061ea8f38168ab118c5d47bd7804590e +8d67d43b8a06b0ff4fafd7f0483fa9ed1a9e3e658a03fb49d9d9b74e2e24858dc1bed065c12392037b467f255d4e5643 +b4d4f87813125a6b355e4519a81657fa97c43a6115817b819a6caf4823f1d6a1169683fd68f8d025cdfa40ebf3069acb +a7fd4d2c8e7b59b8eed3d4332ae94b77a89a2616347402f880bc81bde072220131e6dbec8a605be3a1c760b775375879 +8d4a7d8fa6f55a30df37bcf74952e2fa4fd6676a2e4606185cf154bdd84643fd01619f8fb8813a564f72e3f574f8ce30 +8086fb88e6260e9a9c42e9560fde76315ff5e5680ec7140f2a18438f15bc2cc7d7d43bfb5880b180b738c20a834e6134 +916c4c54721de03934fee6f43de50bb04c81f6f8dd4f6781e159e71c40c60408aa54251d457369d133d4ba3ed7c12cb4 +902e5bf468f11ed9954e2a4a595c27e34abe512f1d6dc08bbca1c2441063f9af3dc5a8075ab910a10ff6c05c1c644a35 +a1302953015e164bf4c15f7d4d35e3633425a78294406b861675667eec77765ff88472306531e5d3a4ec0a2ff0dd6a9e +87874461df3c9aa6c0fa91325576c0590f367075f2f0ecfeb34afe162c04c14f8ce9d608c37ac1adc8b9985bc036e366 +84b50a8a61d3cc609bfb0417348133e698fe09a6d37357ce3358de189efcf35773d78c57635c2d26c3542b13cc371752 +acaed2cff8633d12c1d12bb7270c54d65b0b0733ab084fd47f81d0a6e1e9b6f300e615e79538239e6160c566d8bb8d29 +889e6a0e136372ca4bac90d1ab220d4e1cad425a710e8cdd48b400b73bb8137291ceb36a39440fa84305783b1d42c72f +90952e5becec45b2b73719c228429a2c364991cf1d5a9d6845ae5b38018c2626f4308daa322cab1c72e0f6c621bb2b35 +8f5a97a801b6e9dcd66ccb80d337562c96f7914e7169e8ff0fda71534054c64bf2a9493bb830623d612cfe998789be65 +84f3df8b9847dcf1d63ca470dc623154898f83c25a6983e9b78c6d2d90a97bf5e622445be835f32c1e55e6a0a562ea78 +91d12095cd7a88e7f57f254f02fdb1a1ab18984871dead2f107404bcf8069fe68258c4e6f6ebd2477bddf738135400bb +b771a28bc04baef68604d4723791d3712f82b5e4fe316d7adc2fc01b935d8e644c06d59b83bcb542afc40ebafbee0683 +872f6341476e387604a7e93ae6d6117e72d164e38ebc2b825bc6df4fcce815004d7516423c190c1575946b5de438c08d +90d6b4aa7d40a020cdcd04e8b016d041795961a8e532a0e1f4041252131089114a251791bf57794cadb7d636342f5d1c +899023ba6096a181448d927fed7a0fe858be4eac4082a42e30b3050ee065278d72fa9b9d5ce3bc1372d4cbd30a2f2976 +a28f176571e1a9124f95973f414d5bdbf5794d41c3839d8b917100902ac4e2171eb940431236cec93928a60a77ede793 +838dbe5bcd29c4e465d02350270fa0036cd46f8730b13d91e77afb7f5ed16525d0021d3b2ae173a76c378516a903e0cb +8e105d012dd3f5d20f0f1c4a7e7f09f0fdd74ce554c3032e48da8cce0a77260d7d47a454851387770f5c256fa29bcb88 +8f4df0f9feeb7a487e1d138d13ea961459a6402fd8f8cabb226a92249a0d04ded5971f3242b9f90d08da5ff66da28af6 +ad1cfda4f2122a20935aa32fb17c536a3653a18617a65c6836700b5537122af5a8206befe9eaea781c1244c43778e7f1 +832c6f01d6571964ea383292efc8c8fa11e61c0634a25fa180737cc7ab57bc77f25e614aac9a2a03d98f27b3c1c29de2 +903f89cc13ec6685ac7728521898781fecb300e9094ef913d530bf875c18bcc3ceed7ed51e7b482d45619ab4b025c2e9 +a03c474bb915aad94f171e8d96f46abb2a19c9470601f4c915512ec8b9e743c3938450a2a5b077b4618b9df8809e1dc1 +83536c8456f306045a5f38ae4be2e350878fa7e164ea408d467f8c3bc4c2ee396bd5868008c089183868e4dfad7aa50b +88f26b4ea1b236cb326cd7ad7e2517ec8c4919598691474fe15d09cabcfc37a8d8b1b818f4d112432ee3a716b0f37871 +a44324e3fe96e9c12b40ded4f0f3397c8c7ee8ff5e96441118d8a6bfad712d3ac990b2a6a23231a8f691491ac1fd480f +b0de4693b4b9f932191a21ee88629964878680152a82996c0019ffc39f8d9369bbe2fe5844b68d6d9589ace54af947e4 +8e5d8ba948aea5fd26035351a960e87f0d23efddd8e13236cc8e4545a3dda2e9a85e6521efb8577e03772d3637d213d9 +93efc82d2017e9c57834a1246463e64774e56183bb247c8fc9dd98c56817e878d97b05f5c8d900acf1fbbbca6f146556 +8731176363ad7658a2862426ee47a5dce9434216cef60e6045fa57c40bb3ce1e78dac4510ae40f1f31db5967022ced32 +b10c9a96745722c85bdb1a693100104d560433d45b9ac4add54c7646a7310d8e9b3ca9abd1039d473ae768a18e489845 +a2ac374dfbb464bf850b4a2caf15b112634a6428e8395f9c9243baefd2452b4b4c61b0cb2836d8eae2d57d4900bf407e +b69fe3ded0c4f5d44a09a0e0f398221b6d1bf5dbb8bc4e338b93c64f1a3cac1e4b5f73c2b8117158030ec03787f4b452 +8852cdbaf7d0447a8c6f211b4830711b3b5c105c0f316e3a6a18dcfbb9be08bd6f4e5c8ae0c3692da08a2dfa532f9d5c +93bbf6d7432a7d98ade3f94b57bf9f4da9bc221a180a370b113066dd42601bb9e09edd79e2e6e04e00423399339eebda +a80941c391f1eeafc1451c59e4775d6a383946ff22997aeaadf806542ba451d3b0f0c6864eeba954174a296efe2c1550 +a045fe2bb011c2a2f71a0181a8f457a3078470fb74c628eab8b59aef69ffd0d649723bf74d6885af3f028bc5a104fb39 +b9d8c35911009c4c8cad64692139bf3fc16b78f5a19980790cb6a7aea650a25df4231a4437ae0c351676a7e42c16134f +94c79501ded0cfcbab99e1841abe4a00a0252b3870e20774c3da16c982d74c501916ec28304e71194845be6e3113c7ab +900a66418b082a24c6348d8644ddb1817df5b25cb33044a519ef47cc8e1f7f1e38d2465b7b96d32ed472d2d17f8414c6 +b26f45d393b8b2fcb29bdbb16323dc7f4b81c09618519ab3a39f8ee5bd148d0d9f3c0b5dfab55b5ce14a1cb9206d777b +aa1a87735fc493a80a96a9a57ca40a6d9c32702bfcaa9869ce1a116ae65d69cefe2f3e79a12454b4590353e96f8912b4 +a922b188d3d0b69b4e4ea2a2aa076566962844637da12c0832105d7b31dea4a309eee15d12b7a336be3ea36fcbd3e3b7 +8f3841fcf4105131d8c4d9885e6e11a46c448226401cf99356c291fadb864da9fa9d30f3a73c327f23f9fd99a11d633e +9791d1183fae270e226379af6c497e7da803ea854bb20afa74b253239b744c15f670ee808f708ede873e78d79a626c9a +a4cad52e3369491ada61bf28ada9e85de4516d21c882e5f1cd845bea9c06e0b2887b0c5527fcff6fc28acd3c04f0a796 +b9ac86a900899603452bd11a7892a9bfed8054970bfcbeaa8c9d1930db891169e38d6977f5258c25734f96c8462eee3b +a3a154c28e5580656a859f4efc2f5ebfa7eaa84ca40e3f134fa7865e8581586db74992dbfa4036aa252fba103773ddde +95cc2a0c1885a029e094f5d737e3ecf4d26b99036453a8773c77e360101f9f98676ee246f6f732a377a996702d55691f +842651bbe99720438d8d4b0218feb60481280c05beb17750e9ca0d8c0599a60f873b7fbdcc7d8835ba9a6d57b16eec03 +81ee54699da98f5620307893dcea8f64670609fa20e5622265d66283adeac122d458b3308c5898e6c57c298db2c8b24f +b97868b0b2bc98032d68352a535a1b341b9ff3c7af4e3a7f3ebc82d3419daa1b5859d6aedc39994939623c7cd878bd9b +b60325cd5d36461d07ef253d826f37f9ee6474a760f2fff80f9873d01fd2b57711543cdc8d7afa1c350aa753c2e33dea +8c205326c11d25a46717b780c639d89714c7736c974ae71287e3f4b02e6605ac2d9b4928967b1684f12be040b7bf2dd3 +95a392d82db51e26ade6c2ccd3396d7e40aff68fa570b5951466580d6e56dda51775dce5cf3a74a7f28c3cb2eb551c4d +8f2cc8071eb56dffb70bda6dd433b556221dc8bba21c53353c865f00e7d4d86c9e39f119ea9a8a12ef583e9a55d9a6b6 +9449a71af9672aaf8856896d7e3d788b22991a7103f75b08c0abbcc2bfe60fda4ed8ce502cea4511ff0ea52a93e81222 +857090ab9fdb7d59632d068f3cc8cf27e61f0d8322d30e6b38e780a1f05227199b4cd746aac1311c36c659ef20931f28 +98a891f4973e7d9aaf9ac70854608d4f7493dffc7e0987d7be9dd6029f6ea5636d24ef3a83205615ca1ff403750058e1 +a486e1365bbc278dd66a2a25d258dc82f46b911103cb16aab3945b9c95ae87b386313a12b566df5b22322ede0afe25ad +a9a1eb399ed95d396dccd8d1ac718043446f8b979ec62bdce51c617c97a312f01376ab7fb87d27034e5f5570797b3c33 +b7abc3858d7a74bb446218d2f5a037e0fae11871ed9caf44b29b69c500c1fa1dcfad64c9cdccc9d80d5e584f06213deb +8cfb09fe2e202faa4cebad932b1d35f5ca204e1c2a0c740a57812ac9a6792130d1312aabd9e9d4c58ca168bfebd4c177 +a90a305c2cd0f184787c6be596fa67f436afd1f9b93f30e875f817ac2aae8bdd2e6e656f6be809467e6b3ad84adb86b1 +80a9ef993c2b009ae172cc8f7ec036f5734cf4f4dfa06a7db4d54725e7fbfae5e3bc6f22687bdbb6961939d6f0c87537 +848ade1901931e72b955d7db1893f07003e1708ff5d93174bac5930b9a732640f0578839203e9b77eb27965c700032d3 +93fdf4697609c5ae9c33b9ca2f5f1af44abeb2b98dc4fdf732cf7388de086f410730dc384d9b7a7f447bb009653c8381 +89ce3fb805aea618b5715c0d22a9f46da696b6fa86794f56fdf1d44155a33d42daf1920bcbe36cbacf3cf4c92df9cbc7 +829ce2c342cf82aa469c65f724f308f7a750bd1494adc264609cd790c8718b8b25b5cab5858cf4ee2f8f651d569eea67 +af2f0cee7bf413204be8b9df59b9e4991bc9009e0d6dbe6815181df0ec2ca93ab8f4f3135b1c14d8f53d74bff0bd6f27 +b87998cecf7b88cde93d1779f10a521edd5574a2fbd240102978639ec57433ba08cdb53849038a329cebbe74657268d2 +a64542a1261a6ed3d720c2c3a802303aad8c4c110c95d0f12e05c1065e66f42da494792b6bfc5b9272363f3b1d457f58 +86a6fd042e4f282fadf07a4bfee03fc96a3aea49f7a00f52bf249a20f1ec892326855410e61f37fbb27d9305eb2fc713 +967ea5bc403b6db269682f7fd0df90659350d7e1aa66bc4fab4c9dfcd75ed0bba4b52f1cebc5f34dc8ba810793727629 +a52990f9f3b8616ce3cdc2c74cd195029e6a969753dcf2d1630438700e7d6ebde36538532b3525ac516f5f2ce9dd27a3 +a64f7ff870bab4a8bf0d4ef6f5c744e9bf1021ed08b4c80903c7ad318e80ba1817c3180cc45cb5a1cae1170f0241655f +b00f706fa4de1f663f021e8ad3d155e84ce6084a409374b6e6cd0f924a0a0b51bebaaaf1d228c77233a73b0a5a0df0e9 +8b882cc3bff3e42babdb96df95fb780faded84887a0a9bab896bef371cdcf169d909f5658649e93006aa3c6e1146d62e +9332663ef1d1dcf805c3d0e4ce7a07d9863fb1731172e766b3cde030bf81682cc011e26b773fb9c68e0477b4ae2cfb79 +a8aa8151348dbd4ef40aaeb699b71b4c4bfd3218560c120d85036d14f678f6736f0ec68e80ce1459d3d35feccc575164 +a16cd8b729768f51881c213434aa28301fa78fcb554ddd5f9012ee1e4eae7b5cb3dd88d269d53146dea92d10790faf0b +86844f0ef9d37142faf3b1e196e44fbe280a3ba4189aa05c356778cb9e3b388a2bff95eed305ada8769935c9974e4c57 +ae2eec6b328fccf3b47bcdac32901ac2744a51beb410b04c81dea34dee4912b619466a4f5e2780d87ecefaebbe77b46d +915df4c38d301c8a4eb2dc5b1ba0ffaad67cbb177e0a80095614e9c711f4ef24a4cef133f9d982a63d2a943ba6c8669d +ae6a2a4dedfc2d1811711a8946991fede972fdf2a389b282471280737536ffc0ac3a6d885b1f8bda0366eb0b229b9979 +a9b628c63d08b8aba6b1317f6e91c34b2382a6c85376e8ef2410a463c6796740ae936fc4e9e0737cb9455d1daa287bd8 +848e30bf7edf2546670b390d5cf9ab71f98fcb6add3c0b582cb34996c26a446dee5d1bde4fdcde4fc80c10936e117b29 +907d6096c7c8c087d1808dd995d5d2b9169b3768c3f433475b50c2e2bd4b082f4d543afd8b0b0ddffa9c66222a72d51d +a59970a2493b07339124d763ac9d793c60a03354539ecbcf6035bc43d1ea6e35718202ae6d7060b7d388f483d971573c +b9cfef2af9681b2318f119d8611ff6d9485a68d8044581b1959ab1840cbca576dbb53eec17863d2149966e9feb21122f +ad47271806161f61d3afa45cdfe2babceef5e90031a21779f83dc8562e6076680525b4970b2f11fe9b2b23c382768323 +8e425a99b71677b04fe044625d338811fbb8ee32368a424f6ab2381c52e86ee7a6cecedf777dc97181519d41c351bc22 +86b55b54d7adefc12954a9252ee23ae83efe8b5b4b9a7dc307904413e5d69868c7087a818b2833f9b004213d629be8ad +a14fda6b93923dd11e564ae4457a66f397741527166e0b16a8eb91c6701c244fd1c4b63f9dd3515193ec88fa6c266b35 +a9b17c36ae6cd85a0ed7f6cabc5b47dc8f80ced605db327c47826476dc1fb8f8669aa7a7dc679fbd4ee3d8e8b4bd6a6f +82a0829469c1458d959c821148f15dacae9ea94bf56c59a6ab2d4dd8b3d16d73e313b5a3912a6c1f131d73a8f06730c4 +b22d56d549a53eaef549595924bdb621ff807aa4513feedf3fdcbf7ba8b6b9cfa4481c2f67fc642db397a6b794a8b63a +974c59c24392e2cb9294006cbe3c52163e255f3bd0c2b457bdc68a6338e6d5b6f87f716854492f8d880a6b896ccf757c +b70d247ba7cad97c50b57f526c2ba915786e926a94e8f8c3eebc2e1be6f4255411b9670e382060049c8f4184302c40b2 +ad80201fe75ef21c3ddbd98cf23591e0d7a3ba1036dfe77785c32f44755a212c31f0ceb0a0b6f5ee9b6dc81f358d30c3 +8c656e841f9bb90b9a42d425251f3fdbc022a604d75f5845f479ed4be23e02aaf9e6e56cde351dd7449c50574818a199 +8b88dd3fa209d3063b7c5b058f7249ee9900fbc2287d16da61a0704a0a1d71e45d9c96e1cda7fdf9654534ec44558b22 +961da00cc8750bd84d253c08f011970ae1b1158ad6778e8ed943d547bceaf52d6d5a212a7de3bf2706688c4389b827d2 +a5dd379922549a956033e3d51a986a4b1508e575042b8eaa1df007aa77cf0b8c2ab23212f9c075702788fa9c53696133 +ac8fcfde3a349d1e93fc8cf450814e842005c545c4844c0401bc80e6b96cdb77f29285a14455e167c191d4f312e866cd +ac63d79c799783a8466617030c59dd5a8f92ee6c5204676fd8d881ce5f7f8663bdbeb0379e480ea9b6340ab0dc88e574 +805874fde19ce359041ae2bd52a39e2841acabfd31f965792f2737d7137f36d4e4722ede8340d8c95afa6af278af8acb +8d2f323a228aa8ba7b7dc1399138f9e6b41df1a16a7069003ab8104b8b68506a45141bc5fe66acf430e23e13a545190b +a1610c721a2d9af882bb6b39bea97cff1527a3aea041d25934de080214ae77c959e79957164440686d15ab301e897d4d +aba16d29a47fc36f12b654fde513896723e2c700c4190f11b26aa4011da57737ad717daa02794aa3246e4ae5f0b0cc3a +a406db2f15fdd135f346cc4846623c47edd195e80ba8c7cb447332095314d565e4040694ca924696bb5ee7f8996ea0ba +8b30e2cd9b47d75ba57b83630e40f832249af6c058d4f490416562af451993eec46f3e1f90bc4d389e4c06abd1b32a46 +aacf9eb7036e248e209adbfc3dd7ce386569ea9b312caa4b240726549db3c68c4f1c8cbf8ed5ea9ea60c7e57c9df3b8e +b20fcac63bf6f5ee638a42d7f89be847f348c085ddcbec3fa318f4323592d136c230495f188ef2022aa355cc2b0da6f9 +811eff750456a79ec1b1249d76d7c1547065b839d8d4aaad860f6d4528eb5b669473dcceeeea676cddbc3980b68461b7 +b52d14ae33f4ab422f953392ae76a19c618cc31afc96290bd3fe2fb44c954b5c92c4789f3f16e8793f2c0c1691ade444 +a7826dafeeba0db5b66c4dfcf2b17fd7b40507a5a53ac2e42942633a2cb30b95ba1739a6e9f3b7a0e0f1ec729bf274e2 +8acfd83ddf7c60dd7c8b20c706a3b972c65d336b8f9b3d907bdd8926ced271430479448100050b1ef17578a49c8fa616 +af0c69f65184bb06868029ad46f8465d75c36814c621ac20a5c0b06a900d59305584f5a6709683d9c0e4b6cd08d650a6 +b6cc8588191e00680ee6c3339bd0f0a17ad8fd7f4be57d5d7075bede0ea593a19e67f3d7c1a20114894ee5bfcab71063 +a82fd4f58635129dbb6cc3eb9391cf2d28400018b105fc41500fbbd12bd890b918f97d3d359c29dd3b4c4e34391dfab0 +92fc544ed65b4a3625cf03c41ddff7c039bc22d22c0d59dcc00efd5438401f2606adb125a1d5de294cca216ec8ac35a3 +906f67e4a32582b71f15940523c0c7ce370336935e2646bdaea16a06995256d25e99df57297e39d6c39535e180456407 +97510337ea5bbd5977287339197db55c60533b2ec35c94d0a460a416ae9f60e85cee39be82abeeacd5813cf54df05862 +87e6894643815c0ea48cb96c607266c5ee4f1f82ba5fe352fb77f9b6ed14bfc2b8e09e80a99ac9047dfcf62b2ae26795 +b6fd55dd156622ad7d5d51b7dde75e47bd052d4e542dd6449e72411f68275775c846dde301e84613312be8c7bce58b07 +b98461ac71f554b2f03a94e429b255af89eec917e208a8e60edf5fc43b65f1d17a20de3f31d2ce9f0cb573c25f2f4d98 +96f0dea40ca61cefbee41c4e1fe9a7d81fbe1f49bb153d083ab70f5d0488a1f717fd28cedcf6aa18d07cce2c62801898 +8d7c3ab310184f7dc34b6ce4684e4d29a31e77b09940448ea4daac730b7eb308063125d4dd229046cf11bfd521b771e0 +96f0564898fe96687918bbf0a6adead99cf72e3a35ea3347e124af9d006221f8e82e5a9d2fe80094d5e8d48e610f415e +ad50fcb92c2675a398cf07d4c40a579e44bf8d35f27cc330b57e54d5ea59f7d898af0f75dccfe3726e5471133d70f92b +828beed62020361689ae7481dd8f116902b522fb0c6c122678e7f949fdef70ead011e0e6bffd25678e388744e17cdb69 +8349decac1ca16599eee2efc95bcaabf67631107da1d34a2f917884bd70dfec9b4b08ab7bc4379d6c73b19c0b6e54fb8 +b2a6a2e50230c05613ace9e58bb2e98d94127f196f02d9dddc53c43fc68c184549ca12d713cb1b025d8260a41e947155 +94ff52181aadae832aed52fc3b7794536e2a31a21fc8be3ea312ca5c695750d37f08002f286b33f4023dba1e3253ecfa +a21d56153c7e5972ee9a319501be4faff199fdf09bb821ea9ce64aa815289676c00f105e6f00311b3a5b627091b0d0fc +a27a60d219f1f0c971db73a7f563b371b5c9fc3ed1f72883b2eac8a0df6698400c9954f4ca17d7e94e44bd4f95532afb +a2fc56fae99b1f18ba5e4fe838402164ce82f8a7f3193d0bbd360c2bac07c46f9330c4c7681ffb47074c6f81ee6e7ac6 +b748e530cd3afb96d879b83e89c9f1a444f54e55372ab1dcd46a0872f95ce8f49cf2363fc61be82259e04f555937ed16 +8bf8993e81080c7cbba1e14a798504af1e4950b2f186ab3335b771d6acaee4ffe92131ae9c53d74379d957cb6344d9cd +96774d0ef730d22d7ab6d9fb7f90b9ead44285219d076584a901960542756700a2a1603cdf72be4708b267200f6c36a9 +b47703c2ab17be1e823cc7bf3460db1d6760c0e33862c90ca058845b2ff234b0f9834ddba2efb2ee1770eb261e7d8ffd +84319e67c37a9581f8b09b5e4d4ae88d0a7fb4cbb6908971ab5be28070c3830f040b1de83ee663c573e0f2f6198640e4 +96811875fa83133e0b3c0e0290f9e0e28bca6178b77fdf5350eb19344d453dbd0d71e55a0ef749025a5a2ca0ad251e81 +81a423423e9438343879f2bfd7ee9f1c74ebebe7ce3cfffc8a11da6f040cc4145c3b527bd3cf63f9137e714dbcb474ef +b8c3535701ddbeec2db08e17a4fa99ba6752d32ece5331a0b8743676f421fcb14798afc7c783815484f14693d2f70db8 +81aee980c876949bf40782835eec8817d535f6f3f7e00bf402ddd61101fdcd60173961ae90a1cf7c5d060339a18c959d +87e67b928d97b62c49dac321ce6cb680233f3a394d4c9a899ac2e8db8ccd8e00418e66cdfd68691aa3cb8559723b580c +8eac204208d99a2b738648df96353bbb1b1065e33ee4f6bba174b540bbbd37d205855e1f1e69a6b7ff043ca377651126 +848e6e7a54ad64d18009300b93ea6f459ce855971dddb419b101f5ac4c159215626fadc20cc3b9ab1701d8f6dfaddd8b +88aa123d9e0cf309d46dddb6acf634b1ade3b090a2826d6e5e78669fa1220d6df9a6697d7778cd9b627db17eea846126 +9200c2a629b9144d88a61151b661b6c4256cc5dadfd1e59a8ce17a013c2d8f7e754aabe61663c3b30f1bc47784c1f8cf +b6e1a2827c3bdda91715b0e1b1f10dd363cef337e7c80cac1f34165fc0dea7c8b69747e310563db5818390146ce3e231 +92c333e694f89f0d306d54105b2a5dcc912dbe7654d9e733edab12e8537350815be472b063e56cfde5286df8922fdecb +a6fac04b6d86091158ebb286586ccfec2a95c9786e14d91a9c743f5f05546073e5e3cc717635a0c602cad8334e922346 +a581b4af77feebc1fb897d49b5b507c6ad513d8f09b273328efbb24ef0d91eb740d01b4d398f2738125dacfe550330cd +81c4860cccf76a34f8a2bc3f464b7bfd3e909e975cce0d28979f457738a56e60a4af8e68a3992cf273b5946e8d7f76e2 +8d1eaa09a3180d8af1cbaee673db5223363cc7229a69565f592fa38ba0f9d582cedf91e15dabd06ebbf2862fc0feba54 +9832f49b0147f4552402e54593cfa51f99540bffada12759b71fcb86734be8e500eea2d8b3d036710bdf04c901432de9 +8bdb0e8ec93b11e5718e8c13cb4f5de545d24829fd76161216340108098dfe5148ed25e3b57a89a516f09fa79043734d +ab96f06c4b9b0b2c0571740b24fca758e6976315053a7ecb20119150a9fa416db2d3a2e0f8168b390bb063f0c1caf785 +ab777f5c52acd62ecf4d1f168b9cc8e1a9b45d4ec6a8ff52c583e867c2239aba98d7d3af977289b367edce03d9c2dfb1 +a09d3ce5e748da84802436951acc3d3ea5d8ec1d6933505ed724d6b4b0d69973ab0930daec9c6606960f6e541e4a3ce2 +8ef94f7be4d85d5ad3d779a5cf4d7b2fc3e65c52fb8e1c3c112509a4af77a0b5be994f251e5e40fabeeb1f7d5615c22b +a7406a5bf5708d9e10922d3c5c45c03ef891b8d0d74ec9f28328a72be4cdc05b4f2703fa99366426659dfca25d007535 +b7f52709669bf92a2e070bfe740f422f0b7127392c5589c7f0af71bb5a8428697c762d3c0d74532899da24ea7d8695c2 +b9dfb0c8df84104dbf9239ccefa4672ef95ddabb8801b74997935d1b81a78a6a5669a3c553767ec19a1281f6e570f4ff +ae4d5c872156061ce9195ac640190d8d71dd406055ee43ffa6f9893eb24b870075b74c94d65bc1d5a07a6573282b5520 +afe6bd3eb72266d333f1807164900dcfa02a7eb5b1744bb3c86b34b3ee91e3f05e38fa52a50dc64eeb4bdb1dd62874b8 +948043cf1bc2ef3c01105f6a78dc06487f57548a3e6ef30e6ebc51c94b71e4bf3ff6d0058c72b6f3ecc37efd7c7fa8c0 +a22fd17c2f7ffe552bb0f23fa135584e8d2d8d75e3f742d94d04aded2a79e22a00dfe7acbb57d44e1cdb962fb22ae170 +8cd0f4e9e4fb4a37c02c1bde0f69359c43ab012eb662d346487be0c3758293f1ca560122b059b091fddce626383c3a8f +90499e45f5b9c81426f3d735a52a564cafbed72711d9279fdd88de8038e953bc48c57b58cba85c3b2e4ce56f1ddb0e11 +8c30e4c034c02958384564cac4f85022ef36ab5697a3d2feaf6bf105049675bbf23d01b4b6814711d3d9271abff04cac +81f7999e7eeea30f3e1075e6780bbf054f2fb6f27628a2afa4d41872a385b4216dd5f549da7ce6cf39049b2251f27fb7 +b36a7191f82fc39c283ffe53fc1f5a9a00b4c64eee7792a8443475da9a4d226cf257f226ea9d66e329af15d8f04984ec +aad4da528fdbb4db504f3041c747455baff5fcd459a2efd78f15bdf3aea0bdb808343e49df88fe7a7c8620009b7964a3 +99ebd8c6dd5dd299517fb6381cfc2a7f443e6e04a351440260dd7c2aee3f1d8ef06eb6c18820b394366ecdfd2a3ce264 +8873725b81871db72e4ec3643084b1cdce3cbf80b40b834b092767728605825c19b6847ad3dcf328438607e8f88b4410 +b008ee2f895daa6abd35bd39b6f7901ae4611a11a3271194e19da1cdcc7f1e1ea008fe5c5440e50d2c273784541ad9c5 +9036feafb4218d1f576ef89d0e99124e45dacaa6d816988e34d80f454d10e96809791d5b78f7fd65f569e90d4d7238c5 +92073c1d11b168e4fa50988b0288638b4868e48bbc668c5a6dddf5499875d53be23a285acb5e4bad60114f6cf6c556e9 +88c87dfcb8ba6cbfe7e1be081ccfadbd589301db2cb7c99f9ee5d7db90aa297ed1538d5a867678a763f2deede5fd219a +b42a562805c661a50f5dea63108002c0f27c0da113da6a9864c9feb5552225417c0356c4209e8e012d9bcc9d182c7611 +8e6317d00a504e3b79cd47feb4c60f9df186467fe9ca0f35b55c0364db30528f5ff071109dabb2fc80bb9cd4949f0c24 +b7b1ea6a88694f8d2f539e52a47466695e39e43a5eb9c6f23bca15305fe52939d8755cc3ac9d6725e60f82f994a3772f +a3cd55161befe795af93a38d33290fb642b8d80da8b786c6e6fb02d393ea308fbe87f486994039cbd7c7b390414594b6 +b416d2d45b44ead3b1424e92c73c2cf510801897b05d1724ff31cbd741920cd858282fb5d6040fe1f0aa97a65bc49424 +950ee01291754feace97c2e933e4681e7ddfbc4fcd079eb6ff830b0e481d929c93d0c7fb479c9939c28ca1945c40da09 +869bd916aee8d86efe362a49010382674825d49195b413b4b4018e88ce43fe091b475d0b863ff0ba2259400f280c2b23 +9782f38cd9c9d3385ec286ebbc7cba5b718d2e65a5890b0a5906b10a89dc8ed80d417d71d7c213bf52f2af1a1f513ea7 +91cd33bc2628d096269b23faf47ee15e14cb7fdc6a8e3a98b55e1031ea0b68d10ba30d97e660f7e967d24436d40fad73 +8becc978129cc96737034c577ae7225372dd855da8811ae4e46328e020c803833b5bdbc4a20a93270e2b8bd1a2feae52 +a36b1d8076783a9522476ce17f799d78008967728ce920531fdaf88303321bcaf97ecaa08e0c01f77bc32e53c5f09525 +b4720e744943f70467983aa34499e76de6d59aa6fadf86f6b787fdce32a2f5b535b55db38fe2da95825c51002cfe142d +91ad21fc502eda3945f6de874d1b6bf9a9a7711f4d61354f9e5634fc73f9c06ada848de15ab0a75811d3250be862827d +84f78e2ebf5fc077d78635f981712daf17e2475e14c2a96d187913006ad69e234746184a51a06ef510c9455b38acb0d7 +960aa7906e9a2f11db64a26b5892ac45f20d2ccb5480f4888d89973beb6fa0dfdc06d68d241ff5ffc7f1b82b1aac242d +a99365dcd1a00c66c9db6924b97c920f5c723380e823b250db85c07631b320ec4e92e586f7319e67a522a0578f7b6d6c +a25d92d7f70cf6a88ff317cfec071e13774516da664f5fac0d4ecaa65b8bf4eb87a64a4d5ef2bd97dfae98d388dbf5cc +a7af47cd0041295798f9779020a44653007444e8b4ef0712982b06d0dcdd434ec4e1f7c5f7a049326602cb605c9105b7 +aefe172eac5568369a05980931cc476bebd9dea573ba276d59b9d8c4420784299df5a910033b7e324a6c2dfc62e3ef05 +b69bc9d22ffa645baa55e3e02522e9892bb2daa7fff7c15846f13517d0799766883ee09ae0869df4139150c5b843ca8a +95a10856140e493354fdd12722c7fdded21b6a2ffbc78aa2697104af8ad0c8e2206f44b0bfee077ef3949d46bbf7c16b +891f2fcd2c47cbea36b7fa715968540c233313f05333f09d29aba23c193f462ed490dd4d00969656e89c53155fdfe710 +a6c33e18115e64e385c843dde34e8a228222795c7ca90bc2cc085705d609025f3351d9be61822c69035a49fb3e48f2d5 +b87fb12f12c0533b005adad0487f03393ff682e13575e3cb57280c3873b2c38ba96a63c49eef7a442753d26b7005230b +b905c02ba451bfd411c135036d92c27af3b0b1c9c2f1309d6948544a264b125f39dd41afeff4666b12146c545adc168a +8b29c513f43a78951cf742231cf5457a6d9d55edf45df5481a0f299a418d94effef561b15d2c1a01d1b8067e7153fda9 +b9941cccd51dc645920d2781c81a317e5a33cb7cf76427b60396735912cb6d2ca9292bb4d36b6392467d390d2c58d9f3 +a8546b627c76b6ef5c93c6a98538d8593dbe21cb7673fd383d5401b0c935eea0bdeeefeb1af6ad41bad8464fb87bbc48 +aa286b27de2812de63108a1aec29d171775b69538dc6198640ac1e96767c2b83a50391f49259195957d457b493b667c9 +a932fb229f641e9abbd8eb2bd874015d97b6658ab6d29769fc23b7db9e41dd4f850382d4c1f08af8f156c5937d524473 +a1412840fcc86e2aeec175526f2fb36e8b3b8d21a78412b7266daf81e51b3f68584ed8bd42a66a43afdd8c297b320520 +89c78be9efb624c97ebca4fe04c7704fa52311d183ffd87737f76b7dadc187c12c982bd8e9ed7cd8beb48cdaafd2fd01 +a3f5ddec412a5bec0ce15e3bcb41c6214c2b05d4e9135a0d33c8e50a78eaba71e0a5a6ea8b45854dec5c2ed300971fc2 +9721f9cec7a68b7758e3887548790de49fa6a442d0396739efa20c2f50352a7f91d300867556d11a703866def2d5f7b5 +a23764e140a87e5991573521af039630dd28128bf56eed2edbed130fd4278e090b60cf5a1dca9de2910603d44b9f6d45 +a1a6494a994215e48ab55c70efa8ffdddce6e92403c38ae7e8dd2f8288cad460c6c7db526bbdf578e96ca04d9fe12797 +b1705ea4cb7e074efe0405fc7b8ee2ec789af0426142f3ec81241cacd4f7edcd88e39435e4e4d8e7b1df64f3880d6613 +85595d061d677116089a6064418b93eb44ff79e68d12bd9625078d3bbc440a60d0b02944eff6054433ee34710ae6fbb4 +9978d5e30bedb7526734f9a1febd973a70bfa20890490e7cc6f2f9328feab1e24f991285dbc3711d892514e2d7d005ad +af30243c66ea43b9f87a061f947f7bce745f09194f6e95f379c7582b9fead920e5d6957eaf05c12ae1282ada4670652f +a1930efb473f88001e47aa0b2b2a7566848cccf295792e4544096ecd14ee5d7927c173a8576b405bfa2eec551cd67eb5 +b0446d1c590ee5a45f7e22d269c044f3848c97aec1d226b44bfd0e94d9729c28a38bccddc3a1006cc5fe4e3c24f001f2 +b8a8380172df3d84b06176df916cf557966d4f2f716d3e9437e415d75b646810f79f2b2b71d857181b7fc944018883a3 +a563afec25b7817bfa26e19dc9908bc00aa8fc3d19be7d6de23648701659009d10e3e4486c28e9c6b13d48231ae29ac5 +a5a8e80579de886fb7d6408f542791876885947b27ad6fa99a8a26e381f052598d7b4e647b0115d4b5c64297e00ce28e +8f87afcc7ad33c51ac719bade3cd92da671a37a82c14446b0a2073f4a0a23085e2c8d31913ed2d0be928f053297de8f6 +a43c455ce377e0bc434386c53c752880687e017b2f5ae7f8a15c044895b242dffde4c92fb8f8bb50b18470b17351b156 +8368f8b12a5bceb1dba25adb3a2e9c7dc9b1a77a1f328e5a693f5aec195cd1e06b0fe9476b554c1c25dac6c4a5b640a3 +919878b27f3671fc78396f11531c032f3e2bd132d04cc234fa4858676b15fb1db3051c0b1db9b4fc49038216f11321ce +b48cd67fb7f1242696c1f877da4bdf188eac676cd0e561fbac1a537f7b8229aff5a043922441d603a26aae56a15faee4 +a3e0fdfd4d29ea996517a16f0370b54787fefe543c2fe73bfc6f9e560c1fd30dad8409859e2d7fa2d44316f24746c712 +8bb156ade8faf149df7bea02c140c7e392a4742ae6d0394d880a849127943e6f26312033336d3b9fdc0092d71b5efe87 +8845e5d5cc555ca3e0523244300f2c8d7e4d02aaebcb5bd749d791208856c209a6f84dd99fd55968c9f0ab5f82916707 +a3e90bb5c97b07789c2f32dff1aec61d0a2220928202f5ad5355ae71f8249237799d6c8a22602e32e572cb12eabe0c17 +b150bcc391884c996149dc3779ce71f15dda63a759ee9cc05871f5a8379dcb62b047098922c0f26c7bd04deb394c33f9 +95cd4ad88d51f0f2efcfd0c2df802fe252bb9704d1afbf9c26a248df22d55da87bdfaf41d7bc6e5df38bd848f0b13f42 +a05a49a31e91dff6a52ac8b9c2cfdd646a43f0d488253f9e3cfbce52f26667166bbb9b608fc358763a65cbf066cd6d05 +a59c3c1227fdd7c2e81f5e11ef5c406da44662987bac33caed72314081e2eed66055d38137e01b2268e58ec85dd986c0 +b7020ec3bd73a99861f0f1d88cf5a19abab1cbe14b7de77c9868398c84bb8e18dbbe9831838a96b6d6ca06e82451c67b +98d1ff2525e9718ee59a21d8900621636fcd873d9a564b8dceb4be80a194a0148daf1232742730b3341514b2e5a5436c +886d97b635975fc638c1b6afc493e5998ca139edba131b75b65cfe5a8e814f11bb678e0eeee5e6e5cd913ad3f2fefdfc +8fb9fd928d38d5d813b671c924edd56601dd7163b686c13f158645c2f869d9250f3859aa5463a39258c90fef0f41190a +aac35e1cd655c94dec3580bb3800bd9c2946c4a9856f7d725af15fbea6a2d8ca51c8ad2772abed60ee0e3fb9cb24046b +b8d71fa0fa05ac9e443c9b4929df9e7f09a919be679692682e614d24227e04894bfc14a5c73a62fb927fedff4a0e4aa7 +a45a19f11fbbb531a704badbb813ed8088ab827c884ee4e4ebf363fa1132ff7cfa9d28be9c85b143e4f7cdbc94e7cf1a +82b54703a4f295f5471b255ab59dce00f0fe90c9fb6e06b9ee48b15c91d43f4e2ef4a96c3118aeb03b08767be58181bb +8283264c8e6d2a36558f0d145c18576b6600ff45ff99cc93eca54b6c6422993cf392668633e5df396b9331e873d457e5 +8c549c03131ead601bc30eb6b9537b5d3beb7472f5bb1bcbbfd1e9f3704477f7840ab3ab7f7dc13bbbbcdff886a462d4 +afbb0c520ac1b5486513587700ad53e314cb74bfbc12e0b5fbdcfdaac36d342e8b59856196a0d84a25cff6e6e1d17e76 +89e4c22ffb51f2829061b3c7c1983c5c750cad158e3a825d46f7cf875677da5d63f653d8a297022b5db5845c9271b32b +afb27a86c4c2373088c96b9adf4433f2ebfc78ac5c526e9f0510670b6e4e5e0057c0a4f75b185e1a30331b9e805c1c15 +a18e16b57445f88730fc5d3567bf5a176861dc14c7a08ed2996fe80eed27a0e7628501bcb78a1727c5e9ac55f29c12c4 +93d61bf88b192d6825cf4e1120af1c17aa0f994d158b405e25437eaeefae049f7b721a206e7cc8a04fdc29d3c42580a1 +a99f2995a2e3ed2fd1228d64166112038de2f516410aa439f4c507044e2017ea388604e2d0f7121256fadf7fbe7023d1 +914fd91cffc23c32f1c6d0e98bf660925090d873367d543034654389916f65f552e445b0300b71b61b721a72e9a5983c +b42a578a7787b71f924e7def425d849c1c777156b1d4170a8ee7709a4a914e816935131afd9a0412c4cb952957b20828 +82fb30590e84b9e45db1ec475a39971cf554dc01bcc7050bc89265740725c02e2be5a972168c5170c86ae83e5b0ad2c0 +b14f8d8e1e93a84976289e0cf0dfa6f3a1809e98da16ee5c4932d0e1ed6bf8a07697fdd4dd86a3df84fb0003353cdcc0 +85d7a2f4bda31aa2cb208b771fe03291a4ebdaf6f1dc944c27775af5caec412584c1f45bc741fca2a6a85acb3f26ad7d +af02e56ce886ff2253bc0a68faad76f25ead84b2144e5364f3fb9b648f03a50ee9dc0b2c33ebacf7c61e9e43201ef9ef +87e025558c8a0b0abd06dfc350016847ea5ced7af2d135a5c9eec9324a4858c4b21510fb0992ec52a73447f24945058e +80fff0bafcd058118f5e7a4d4f1ae0912efeb281d2cbe4d34ba8945cc3dbe5d8baf47fb077343b90b8d895c90b297aca +b6edcf3a40e7b1c3c0148f47a263cd819e585a51ef31c2e35a29ce6f04c53e413f743034c0d998d9c00a08ba00166f31 +abb87ed86098c0c70a76e557262a494ff51a30fb193f1c1a32f8e35eafa34a43fcc07aa93a3b7a077d9e35afa07b1a3d +a280214cd3bb0fb7ecd2d8bcf518cbd9078417f2b91d2533ec2717563f090fb84f2a5fcfdbbeb2a2a1f8a71cc5aa5941 +a63083ca7238ea2b57d15a475963cf1d4f550d8cd76db290014a0461b90351f1f26a67d674c837b0b773b330c7c3d534 +a8fa39064cb585ece5263e2f42f430206476bf261bd50f18d2b694889bd79d04d56410664cecad62690e5c5a20b3f6ff +85ba52ce9d700a5dcf6c5b00559acbe599d671ce5512467ff4b6179d7fad550567ce2a9c126a50964e3096458ea87920 +b913501e1008f076e5eac6d883105174f88b248e1c9801e568fefaffa1558e4909364fc6d9512aa4d125cbd7cc895f05 +8eb33b5266c8f2ed4725a6ad147a322e44c9264cf261c933cbbe230a43d47fca0f29ec39756b20561dabafadd5796494 +850ebc8b661a04318c9db5a0515066e6454fa73865aa4908767a837857ecd717387f614acb614a88e075d4edc53a2f5a +a08d6b92d866270f29f4ce23a3f5d99b36b1e241a01271ede02817c8ec3f552a5c562db400766c07b104a331835c0c64 +8131804c89bb3e74e9718bfc4afa547c1005ff676bd4db9604335032b203390cfa54478d45c6c78d1fe31a436ed4be9f +9106d94f23cc1eacec8316f16d6f0a1cc160967c886f51981fdb9f3f12ee1182407d2bb24e5b873de58cb1a3ee915a6b +a13806bfc3eae7a7000c9d9f1bd25e10218d4e67f59ae798b145b098bca3edad2b1040e3fc1e6310e612fb8818f459ac +8c69fbca502046cb5f6db99900a47b34117aef3f4b241690cdb3b84ca2a2fc7833e149361995dc41fa78892525bce746 +852c473150c91912d58ecb05769222fa18312800c3f56605ad29eec9e2d8667b0b81c379048d3d29100ed2773bb1f3c5 +b1767f6074426a00e01095dbb1795beb4e4050c6411792cbad6537bc444c3165d1058bafd1487451f9c5ddd209e0ae7e +80c600a5fe99354ce59ff0f84c760923dc8ff66a30bf47dc0a086181785ceb01f9b951c4e66df800ea6d705e8bc47055 +b5cf19002fbc88a0764865b82afcb4d64a50196ea361e5c71dff7de084f4dcbbc34ec94a45cc9e0247bd51da565981aa +93e67a254ea8ce25e112d93cc927fadaa814152a2c4ec7d9a56eaa1ed47aec99b7e9916b02e64452cc724a6641729bbb +ace70b32491bda18eee4a4d041c3bc9effae9340fe7e6c2f5ad975ee0874c17f1a7da7c96bd85fccff9312c518fac6e9 +ab4cfa02065017dd7f1aadc66f2c92f78f0f11b8597c03a5d69d82cb2eaf95a4476a836ac102908f137662472c8d914b +a40b8cd8deb8ae503d20364d64cab7c2801b7728a9646ed19c65edea6a842756a2f636283494299584ad57f4bb12cd0b +8594e11d5fc2396bcd9dbf5509ce4816dbb2b7305168021c426171fb444d111da5a152d6835ad8034542277011c26c0e +8024de98c26b4c994a66628dc304bb737f4b6859c86ded552c5abb81fd4c6c2e19d5a30beed398a694b9b2fdea1dd06a +8843f5872f33f54df8d0e06166c1857d733995f67bc54abb8dfa94ad92407cf0179bc91b0a50bbb56cdc2b350d950329 +b8bab44c7dd53ef9edf497dcb228e2a41282c90f00ba052fc52d57e87b5c8ab132d227af1fcdff9a12713d1f980bcaae +982b4d7b29aff22d527fd82d2a52601d95549bfb000429bb20789ed45e5abf1f4b7416c7b7c4b79431eb3574b29be658 +8eb1f571b6a1878e11e8c1c757e0bc084bab5e82e897ca9be9b7f4b47b91679a8190bf0fc8f799d9b487da5442415857 +a6e74b588e5af935c8b243e888582ef7718f8714569dd4992920740227518305eb35fab674d21a5551cca44b3e511ef2 +a30fc2f3a4cb4f50566e82307de73cd7bd8fe2c1184e9293c136a9b9e926a018d57c6e4f308c95b9eb8299e94d90a2a1 +a50c5869ca5d2b40722c056a32f918d47e0b65ca9d7863ca7d2fb4a7b64fe523fe9365cf0573733ceaadebf20b48fff8 +83bbdd32c04d17581418cf360749c7a169b55d54f2427390defd9f751f100897b2d800ce6636c5bbc046c47508d60c8c +a82904bdf614de5d8deaff688c8a5e7ac5b3431687acbcda8fa53960b7c417a39c8b2e462d7af91ce6d79260f412db8e +a4362e31ff4b05d278b033cf5eebea20de01714ae16d4115d04c1da4754269873afc8171a6f56c5104bfd7b0db93c3e7 +b5b8daa63a3735581e74a021b684a1038cea77168fdb7fdf83c670c2cfabcfc3ab2fc7359069b5f9048188351aef26b5 +b48d723894b7782d96ac8433c48faca1bdfa5238019c451a7f47d958097cce3ae599b876cf274269236b9d6ff8b6d7ca +98ffff6a61a3a6205c7820a91ca2e7176fab5dba02bc194c4d14942ac421cb254183c705506ab279e4f8db066f941c6c +ae7db24731da2eaa6efc4f7fcba2ecc26940ddd68038dce43acf2cee15b72dc4ef42a7bfdd32946d1ed78786dd7696b3 +a656db14f1de9a7eb84f6301b4acb2fbf78bfe867f48a270e416c974ab92821eb4df1cb881b2d600cfed0034ac784641 +aa315f8ecba85a5535e9a49e558b15f39520fce5d4bf43131bfbf2e2c9dfccc829074f9083e8d49f405fb221d0bc4c3c +90bffba5d9ff40a62f6c8e9fc402d5b95f6077ed58d030c93e321b8081b77d6b8dac3f63a92a7ddc01585cf2c127d66c +abdd733a36e0e0f05a570d0504e73801bf9b5a25ff2c78786f8b805704997acb2e6069af342538c581144d53149fa6d3 +b4a723bb19e8c18a01bd449b1bb3440ddb2017f10bb153da27deb7a6a60e9bb37619d6d5435fbb1ba617687838e01dd0 +870016b4678bab3375516db0187a2108b2e840bae4d264b9f4f27dbbc7cc9cac1d7dc582d7a04d6fd1ed588238e5e513 +80d33d2e20e8fc170aa3cb4f69fffb72aeafb3b5bb4ea0bc79ab55da14142ca19b2d8b617a6b24d537366e3b49cb67c3 +a7ee76aec273aaae03b3b87015789289551969fb175c11557da3ab77e39ab49d24634726f92affae9f4d24003050d974 +8415ea4ab69d779ebd42d0fe0c6aef531d6a465a5739e429b1fcf433ec45aa8296c527e965a20f0ec9f340c9273ea3cf +8c7662520794e8b4405d0b33b5cac839784bc86a5868766c06cbc1fa306dbe334978177417b31baf90ce7b0052a29c56 +902b2abecc053a3dbdea9897ee21e74821f3a1b98b2d560a514a35799f4680322550fd3a728d4f6d64e1de98033c32b8 +a05e84ed9ecab8d508d670c39f2db61ad6e08d2795ec32a3c9d0d3737ef3801618f4fc2a95f90ec2f068606131e076c5 +8b9208ff4d5af0c2e3f53c9375da666773ac57197dfabb0d25b1c8d0588ba7f3c15ee9661bb001297f322ea2fbf6928b +a3c827741b34a03254d4451b5ab74a96f2b9f7fb069e2f5adaf54fd97cc7a4d516d378db5ca07da87d8566d6eef13726 +8509d8a3f4a0ed378e0a1e28ea02f6bf1d7f6c819c6c2f5297c7df54c895b848f841653e32ba2a2c22c2ff739571acb8 +a0ce988b7d3c40b4e496aa83a09e4b5472a2d98679622f32bea23e6d607bc7de1a5374fb162bce0549a67dad948519be +aa8a3dd12bd60e3d2e05f9c683cdcb8eab17fc59134815f8d197681b1bcf65108cba63ac5c58ee632b1e5ed6bba5d474 +8b955f1d894b3aefd883fb4b65f14cd37fc2b9db77db79273f1700bef9973bf3fd123897ea2b7989f50003733f8f7f21 +ac79c00ddac47f5daf8d9418d798d8af89fc6f1682e7e451f71ea3a405b0d36af35388dd2a332af790bc83ca7b819328 +a0d44dd2a4438b809522b130d0938c3fe7c5c46379365dbd1810a170a9aa5818e1c783470dd5d0b6d4ac7edbb7330910 +a30b69e39ad43dd540a43c521f05b51b5f1b9c4eed54b8162374ae11eac25da4f5756e7b70ce9f3c92c2eeceee7431ed +ac43220b762c299c7951222ea19761ab938bf38e4972deef58ed84f4f9c68c230647cf7506d7cbfc08562fcca55f0485 +b28233b46a8fb424cfa386a845a3b5399d8489ceb83c8f3e05c22c934798d639c93718b7b68ab3ce24c5358339e41cbb +ac30d50ee8ce59a10d4b37a3a35e62cdb2273e5e52232e202ca7d7b8d09d28958ee667fae41a7bb6cdc6fe8f6e6c9c85 +b199842d9141ad169f35cc7ff782b274cbaa645fdb727761e0a89edbf0d781a15f8218b4bf4eead326f2903dd88a9cc1 +85e018c7ddcad34bb8285a737c578bf741ccd547e68c734bdb3808380e12c5d4ef60fc896b497a87d443ff9abd063b38 +8c856e6ba4a815bdb891e1276f93545b7072f6cb1a9aa6aa5cf240976f29f4dee01878638500a6bf1daf677b96b54343 +b8a47555fa8710534150e1a3f13eab33666017be6b41005397afa647ea49708565f2b86b77ad4964d140d9ced6b4d585 +8cd1f1db1b2f4c85a3f46211599caf512d5439e2d8e184663d7d50166fd3008f0e9253272f898d81007988435f715881 +b1f34b14612c973a3eceb716dc102b82ab18afef9de7630172c2780776679a7706a4874e1df3eaadf541fb009731807f +b25464af9cff883b55be2ff8daf610052c02df9a5e147a2cf4df6ce63edcdee6dc535c533590084cc177da85c5dc0baa +91c3c4b658b42d8d3448ae1415d4541d02379a40dc51e36a59bd6e7b9ba3ea51533f480c7c6e8405250ee9b96a466c29 +86dc027b95deb74c36a58a1333a03e63cb5ae22d3b29d114cfd2271badb05268c9d0c819a977f5e0c6014b00c1512e3a +ae0e6ff58eb5fa35da5107ebeacf222ab8f52a22bb1e13504247c1dfa65320f40d97b0e6b201cb6613476687cb2f0681 +8f13415d960b9d7a1d93ef28afc2223e926639b63bdefce0f85e945dfc81670a55df288893a0d8b3abe13c5708f82f91 +956f67ca49ad27c1e3a68c1faad5e7baf0160c459094bf6b7baf36b112de935fdfd79fa4a9ea87ea8de0ac07272969f4 +835e45e4a67df9fb51b645d37840b3a15c171d571a10b03a406dd69d3c2f22df3aa9c5cbe1e73f8d767ce01c4914ea9a +919b938e56d4b32e2667469d0bdccb95d9dda3341aa907683ee70a14bbbe623035014511c261f4f59b318b610ac90aa3 +96b48182121ccd9d689bf1dfdc228175564cd68dc904a99c808a7f0053a6f636c9d953e12198bdf2ea49ea92772f2e18 +ac5e5a941d567fa38fdbcfa8cf7f85bb304e3401c52d88752bcd516d1fa9bac4572534ea2205e38423c1df065990790f +ac0bd594fb85a8d4fc26d6df0fa81f11919401f1ecf9168b891ec7f061a2d9368af99f7fd8d9b43b2ce361e7b8482159 +83d92c69ca540d298fe80d8162a1c7af3fa9b49dfb69e85c1d136a3ec39fe419c9fa78e0bb6d96878771fbd37fe92e40 +b35443ae8aa66c763c2db9273f908552fe458e96696b90e41dd509c17a5c04ee178e3490d9c6ba2dc0b8f793c433c134 +923b2d25aa45b2e580ffd94cbb37dc8110f340f0f011217ee1bd81afb0714c0b1d5fb4db86006cdd2457563276f59c59 +96c9125d38fca1a61ac21257b696f8ac3dae78def50285e44d90ea293d591d1c58f703540a7e4e99e070afe4646bbe15 +b57946b2332077fbcdcb406b811779aefd54473b5559a163cd65cb8310679b7e2028aa55c12a1401fdcfcac0e6fae29a +845daedc5cf972883835d7e13c937b63753c2200324a3b8082a6c4abb4be06c5f7c629d4abe4bfaf1d80a1f073eb6ce6 +91a55dfd0efefcd03dc6dacc64ec93b8d296cb83c0ee72400a36f27246e7f2a60e73b7b70ba65819e9cfb73edb7bd297 +8874606b93266455fe8fdd25df9f8d2994e927460af06f2e97dd4d2d90db1e6b06d441b72c2e76504d753badca87fb37 +8ee99e6d231274ff9252c0f4e84549da173041299ad1230929c3e3d32399731c4f20a502b4a307642cac9306ccd49d3c +8836497714a525118e20849d6933bb8535fb6f72b96337d49e3133d936999c90a398a740f42e772353b5f1c63581df6d +a6916945e10628f7497a6cdc5e2de113d25f7ade3e41e74d3de48ccd4fce9f2fa9ab69645275002e6f49399b798c40af +9597706983107eb23883e0812e1a2c58af7f3499d50c6e29b455946cb9812fde1aa323d9ed30d1c0ffd455abe32303cd +a24ee89f7f515cc33bdbdb822e7d5c1877d337f3b2162303cfc2dae028011c3a267c5cb4194afa63a4856a6e1c213448 +8cd25315e4318801c2776824ae6e7d543cb85ed3bc2498ba5752df2e8142b37653cf9e60104d674be3aeb0a66912e97a +b5085ecbe793180b40dbeb879f4c976eaaccaca3a5246807dced5890e0ed24d35f3f86955e2460e14fb44ff5081c07ba +960188cc0b4f908633a6840963a6fa2205fc42c511c6c309685234911c5304ef4c304e3ae9c9c69daa2fb6a73560c256 +a32d0a70bf15d569b4cda5aebe3e41e03c28bf99cdd34ffa6c5d58a097f322772acca904b3a47addb6c7492a7126ebac +977f72d06ad72d4aa4765e0f1f9f4a3231d9f030501f320fe7714cc5d329d08112789fa918c60dd7fdb5837d56bb7fc6 +99fa038bb0470d45852bb871620d8d88520adb701712fcb1f278fed2882722b9e729e6cdce44c82caafad95e37d0e6f7 +b855e8f4fc7634ada07e83b6c719a1e37acb06394bc8c7dcab7747a8c54e5df3943915f021364bd019fdea103864e55f +88bc2cd7458532e98c596ef59ea2cf640d7cc31b4c33cef9ed065c078d1d4eb49677a67de8e6229cc17ea48bace8ee5a +aaa78a3feaa836d944d987d813f9b9741afb076e6aca1ffa42682ab06d46d66e0c07b8f40b9dbd63e75e81efa1ef7b08 +b7b080420cc4d808723b98b2a5b7b59c81e624ab568ecdfdeb8bf3aa151a581b6f56e983ef1b6f909661e25db40b0c69 +abee85c462ac9a2c58e54f06c91b3e5cd8c5f9ab5b5deb602b53763c54826ed6deb0d6db315a8d7ad88733407e8d35e2 +994d075c1527407547590df53e9d72dd31f037c763848d1662eebd4cefec93a24328c986802efa80e038cb760a5300f5 +ab8777640116dfb6678e8c7d5b36d01265dfb16321abbfc277da71556a34bb3be04bc4ae90124ed9c55386d2bfb3bda0 +967e3a828bc59409144463bcf883a3a276b5f24bf3cbfdd7a42343348cba91e00b46ac285835a9b91eef171202974204 +875a9f0c4ffe5bb1d8da5e3c8e41d0397aa6248422a628bd60bfae536a651417d4e8a7d2fb98e13f2dad3680f7bd86d3 +acaa330c3e8f95d46b1880126572b238dbb6d04484d2cd4f257ab9642d8c9fc7b212188b9c7ac9e0fd135c520d46b1bf +aceb762edbb0f0c43dfcdb01ea7a1ac5918ca3882b1e7ebc4373521742f1ed5250d8966b498c00b2b0f4d13212e6dd0b +81d072b4ad258b3646f52f399bced97c613b22e7ad76373453d80b1650c0ca87edb291a041f8253b649b6e5429bb4cff +980a47d27416ac39c7c3a0ebe50c492f8c776ea1de44d5159ac7d889b6d554357f0a77f0e5d9d0ff41aae4369eba1fc2 +8b4dfd5ef5573db1476d5e43aacfb5941e45d6297794508f29c454fe50ea622e6f068b28b3debe8635cf6036007de2e3 +a60831559d6305839515b68f8c3bc7abbd8212cc4083502e19dd682d56ca37c9780fc3ce4ec2eae81ab23b221452dc57 +951f6b2c1848ced9e8a2339c65918e00d3d22d3e59a0a660b1eca667d18f8430d737884e9805865ef3ed0fe1638a22d9 +b02e38fe790b492aa5e89257c4986c9033a8b67010fa2add9787de857d53759170fdd67715ca658220b4e14b0ca48124 +a51007e4346060746e6b0e4797fc08ef17f04a34fe24f307f6b6817edbb8ce2b176f40771d4ae8a60d6152cbebe62653 +a510005b05c0b305075b27b243c9d64bcdce85146b6ed0e75a3178b5ff9608213f08c8c9246f2ca6035a0c3e31619860 +aaff4ef27a7a23be3419d22197e13676d6e3810ceb06a9e920d38125745dc68a930f1741c9c2d9d5c875968e30f34ab5 +864522a9af9857de9814e61383bebad1ba9a881696925a0ea6bfc6eff520d42c506bbe5685a9946ed710e889765be4a0 +b63258c080d13f3b7d5b9f3ca9929f8982a6960bdb1b0f8676f4dca823971601672f15e653917bf5d3746bb220504913 +b51ce0cb10869121ae310c7159ee1f3e3a9f8ad498827f72c3d56864808c1f21fa2881788f19ece884d3f705cd7bd0c5 +95d9cecfc018c6ed510e441cf84c712d9909c778c16734706c93222257f64dcd2a9f1bd0b400ca271e22c9c487014274 +8beff4d7d0140b86380ff4842a9bda94c2d2be638e20ac68a4912cb47dbe01a261857536375208040c0554929ced1ddc +891ff49258749e2b57c1e9b8e04b12c77d79c3308b1fb615a081f2aacdfb4b39e32d53e069ed136fdbd43c53b87418fa +9625cad224e163d387738825982d1e40eeff35fe816d10d7541d15fdc4d3eee48009090f3faef4024b249205b0b28f72 +8f3947433d9bd01aa335895484b540a9025a19481a1c40b4f72dd676bfcf332713714fd4010bde936eaf9470fd239ed0 +a00ec2d67789a7054b53f0e858a8a232706ccc29a9f3e389df7455f1a51a2e75801fd78469a13dbc25d28399ae4c6182 +a3f65884506d4a62b8775a0ea0e3d78f5f46bc07910a93cd604022154eabdf1d73591e304d61edc869e91462951975e1 +a14eef4fd5dfac311713f0faa9a60415e3d30b95a4590cbf95f2033dffb4d16c02e7ceff3dcd42148a4e3bc49cce2dd4 +8afa11c0eef3c540e1e3460bc759bb2b6ea90743623f88e62950c94e370fe4fd01c22b6729beba4dcd4d581198d9358f +afb05548a69f0845ffcc5f5dc63e3cdb93cd270f5655173b9a950394b0583663f2b7164ba6df8d60c2e775c1d9f120af +97f179e01a947a906e1cbeafa083960bc9f1bade45742a3afee488dfb6011c1c6e2db09a355d77f5228a42ccaa7bdf8e +8447fca4d35f74b3efcbd96774f41874ca376bf85b79b6e66c92fa3f14bdd6e743a051f12a7fbfd87f319d1c6a5ce217 +a57ca39c23617cd2cf32ff93b02161bd7baf52c4effb4679d9d5166406e103bc8f3c6b5209e17c37dbb02deb8bc72ddd +9667c7300ff80f0140be002b0e36caab07aaee7cce72679197c64d355e20d96196acaf54e06e1382167d081fe6f739c1 +828126bb0559ce748809b622677267ca896fa2ee76360fd2c02990e6477e06a667241379ca7e65d61a5b64b96d7867de +8b8835dea6ba8cf61c91f01a4b3d2f8150b687a4ee09b45f2e5fc8f80f208ae5d142d8e3a18153f0722b90214e60c5a7 +a98e8ff02049b4da386e3ee93db23bbb13dfeb72f1cfde72587c7e6d962780b7671c63e8ac3fbaeb1a6605e8d79e2f29 +87a4892a0026d7e39ef3af632172b88337cb03669dea564bcdb70653b52d744730ebb5d642e20cb627acc9dbb547a26b +877352a22fc8052878a57effc159dac4d75fe08c84d3d5324c0bab6d564cdf868f33ceee515eee747e5856b62cfa0cc7 +8b801ba8e2ff019ee62f64b8cb8a5f601fc35423eb0f9494b401050103e1307dc584e4e4b21249cd2c686e32475e96c3 +a9e7338d6d4d9bfec91b2af28a8ed13b09415f57a3a00e5e777c93d768fdb3f8e4456ae48a2c6626b264226e911a0e28 +99c05fedf40ac4726ed585d7c1544c6e79619a0d3fb6bda75a08c7f3c0008e8d5e19ed4da48de3216135f34a15eba17c +a61cce8a1a8b13a4a650fdbec0eeea8297c352a8238fb7cac95a0df18ed16ee02a3daa2de108fa122aca733bd8ad7855 +b97f37da9005b440b4cb05870dd881bf8491fe735844f2d5c8281818583b38e02286e653d9f2e7fa5e74c3c3eb616540 +a72164a8554da8e103f692ac5ebb4aece55d5194302b9f74b6f2a05335b6e39beede0bf7bf8c5bfd4d324a784c5fb08c +b87e8221c5341cd9cc8bb99c10fe730bc105550f25ed4b96c0d45e6142193a1b2e72f1b3857373a659b8c09be17b3d91 +a41fb1f327ef91dcb7ac0787918376584890dd9a9675c297c45796e32d6e5985b12f9b80be47fc3a8596c245f419d395 +90dafa3592bdbb3465c92e2a54c2531822ba0459d45d3e7a7092fa6b823f55af28357cb51896d4ec2d66029c82f08e26 +a0a9adc872ebc396557f484f1dd21954d4f4a21c4aa5eec543f5fa386fe590839735c01f236574f7ff95407cd12de103 +b8c5c940d58be7538acf8672852b5da3af34f82405ef2ce8e4c923f1362f97fc50921568d0fd2fe846edfb0823e62979 +85aaf06a8b2d0dac89dafd00c28533f35dbd074978c2aaa5bef75db44a7b12aeb222e724f395513b9a535809a275e30b +81f3cbe82fbc7028c26a6c1808c604c63ba023a30c9f78a4c581340008dbda5ec07497ee849a2183fcd9124f7936af32 +a11ac738de75fd60f15a34209d3825d5e23385796a4c7fc5931822f3f380af977dd0f7b59fbd58eed7777a071e21b680 +85a279c493de03db6fa6c3e3c1b1b29adc9a8c4effc12400ae1128da8421954fa8b75ad19e5388fe4543b76fb0812813 +83a217b395d59ab20db6c4adb1e9713fc9267f5f31a6c936042fe051ce8b541f579442f3dcf0fa16b9e6de9fd3518191 +83a0b86e7d4ed8f9ccdc6dfc8ff1484509a6378fa6f09ed908e6ab9d1073f03011dc497e14304e4e3d181b57de06a5ab +a63ad69c9d25704ce1cc8e74f67818e5ed985f8f851afa8412248b2df5f833f83b95b27180e9e7273833ed0d07113d3b +99b1bc2021e63b561fe44ddd0af81fcc8627a91bfeecbbc989b642bc859abc0c8d636399701aad7bbaf6a385d5f27d61 +b53434adb66f4a807a6ad917c6e856321753e559b1add70824e5c1e88191bf6993fccb9b8b911fc0f473fb11743acacd +97ed3b9e6fb99bf5f945d4a41f198161294866aa23f2327818cdd55cb5dc4c1a8eff29dd8b8d04902d6cd43a71835c82 +b1e808260e368a18d9d10bdea5d60223ba1713b948c782285a27a99ae50cc5fc2c53d407de07155ecc16fb8a36d744a0 +a3eb4665f18f71833fec43802730e56b3ee5a357ea30a888ad482725b169d6f1f6ade6e208ee081b2e2633079b82ba7d +ab8beb2c8353fc9f571c18fdd02bdb977fc883313469e1277b0372fbbb33b80dcff354ca41de436d98d2ed710faa467e +aa9071cfa971e4a335a91ad634c98f2be51544cb21f040f2471d01bb97e1df2277ae1646e1ea8f55b7ba9f5c8c599b39 +80b7dbfdcaf40f0678012acc634eba44ea51181475180d9deb2050dc4f2de395289edd0223018c81057ec79b04b04c49 +89623d7f6cb17aa877af14de842c2d4ab7fd576d61ddd7518b5878620a01ded40b6010de0da3cdf31d837eecf30e9847 +a773bb024ae74dd24761f266d4fb27d6fd366a8634febe8235376b1ae9065c2fe12c769f1d0407867dfbe9f5272c352f +8455a561c3aaa6ba64c881a5e13921c592b3a02e968f4fb24a2243c36202795d0366d9cc1a24e916f84d6e158b7aeac7 +81d8bfc4b283cf702a40b87a2b96b275bdbf0def17e67d04842598610b67ea08c804d400c3e69fa09ea001eaf345b276 +b8f8f82cb11fea1c99467013d7e167ff03deb0c65a677fab76ded58826d1ba29aa7cf9fcd7763615735ea3ad38e28719 +89a6a04baf9cccc1db55179e1650b1a195dd91fb0aebc197a25143f0f393524d2589975e3fbfc2547126f0bced7fd6f2 +b81b2162df045390f04df07cbd0962e6b6ca94275a63edded58001a2f28b2ae2af2c7a6cba4ecd753869684e77e7e799 +a3757f722776e50de45c62d9c4a2ee0f5655a512344c4cbec542d8045332806568dd626a719ef21a4eb06792ca70f204 +8c5590df96ec22179a4e8786de41beb44f987a1dcc508eb341eecbc0b39236fdfad47f108f852e87179ccf4e10091e59 +87502f026ed4e10167419130b88c3737635c5b9074c364e1dd247cef5ef0fc064b4ae99b187e33301e438bbd2fe7d032 +af925a2165e980ced620ff12289129fe17670a90ae0f4db9d4b39bd887ccb1f5d2514ac9ecf910f6390a8fc66bd5be17 +857fca899828cf5c65d26e3e8a6e658542782fc72762b3b9c73514919f83259e0f849a9d4838b40dc905fe43024d0d23 +87ffebdbfb69a9e1007ebac4ffcb4090ff13705967b73937063719aa97908986effcb7262fdadc1ae0f95c3690e3245d +a9ff6c347ac6f4c6ab993b748802e96982eaf489dc69032269568412fc9a79e7c2850dfc991b28211b3522ee4454344b +a65b3159df4ec48bebb67cb3663cd744027ad98d970d620e05bf6c48f230fa45bf17527fe726fdf705419bb7a1bb913e +84b97b1e6408b6791831997b03cd91f027e7660fd492a93d95daafe61f02427371c0e237c75706412f442991dfdff989 +ab761c26527439b209af0ae6afccd9340bbed5fbe098734c3145b76c5d2cd7115d9227b2eb523882b7317fbb09180498 +a0479a8da06d7a69c0b0fee60df4e691c19c551f5e7da286dab430bfbcabf31726508e20d26ea48c53365a7f00a3ad34 +a732dfc9baa0f4f40b5756d2e8d8937742999623477458e0bc81431a7b633eefc6f53b3b7939fe0a020018549c954054 +901502436a1169ba51dc479a5abe7c8d84e0943b16bc3c6a627b49b92cd46263c0005bc324c67509edd693f28e612af1 +b627aee83474e7f84d1bab9b7f6b605e33b26297ac6bbf52d110d38ba10749032bd551641e73a383a303882367af429b +95108866745760baef4a46ef56f82da6de7e81c58b10126ebd2ba2cd13d339f91303bf2fb4dd104a6956aa3b13739503 +899ed2ade37236cec90056f3569bc50f984f2247792defafcceb49ad0ca5f6f8a2f06573705300e07f0de0c759289ff5 +a9f5eee196d608efe4bcef9bf71c646d27feb615e21252cf839a44a49fd89da8d26a758419e0085a05b1d59600e2dc42 +b36c6f68fed6e6c85f1f4a162485f24817f2843ec5cbee45a1ebfa367d44892e464949c6669f7972dc7167af08d55d25 +aaaede243a9a1b6162afbc8f571a52671a5a4519b4062e3f26777664e245ba873ed13b0492c5dbf0258c788c397a0e9e +972b4fb39c31cbe127bf9a32a5cc10d621ebdd9411df5e5da3d457f03b2ab2cd1f6372d8284a4a9400f0b06ecdbfd38e +8f6ca1e110e959a4b1d9a5ce5f212893cec21db40d64d5ac4d524f352d72198f923416a850bf845bc5a22a79c0ea2619 +a0f3c93b22134f66f04b2553a53b738644d1665ceb196b8494b315a4c28236fb492017e4a0de4224827c78e42f9908b7 +807fb5ee74f6c8735b0b5ca07e28506214fe4047dbeb00045d7c24f7849e98706aea79771241224939cb749cf1366c7d +915eb1ff034224c0b645442cdb7d669303fdc00ca464f91aaf0b6fde0b220a3a74ff0cb043c26c9f3a5667b3fdaa9420 +8fda6cef56ed33fefffa9e6ac8e6f76b1af379f89761945c63dd448801f7bb8ca970504a7105fac2f74f652ccff32327 +87380cffdcffb1d0820fa36b63cc081e72187f86d487315177d4d04da4533eb19a0e2ff6115ceab528887819c44a5164 +8cd89e03411a18e7f16f968b89fb500c36d47d229f6487b99e62403a980058db5925ce249206743333538adfad168330 +974451b1df33522ce7056de9f03e10c70bf302c44b0741a59df3d6877d53d61a7394dcee1dd46e013d7cb9d73419c092 +98c35ddf645940260c490f384a49496a7352bb8e3f686feed815b1d38f59ded17b1ad6e84a209e773ed08f7b8ff1e4c2 +963f386cf944bb9b2ddebb97171b64253ea0a2894ac40049bdd86cda392292315f3a3d490ca5d9628c890cfb669f0acb +8d507712152babd6d142ee682638da8495a6f3838136088df9424ef50d5ec28d815a198c9a4963610b22e49b4cdf95e9 +83d4bc6b0be87c8a4f1e9c53f257719de0c73d85b490a41f7420e777311640937320557ff2f1d9bafd1daaa54f932356 +82f5381c965b7a0718441131c4d13999f4cdce637698989a17ed97c8ea2e5bdb5d07719c5f7be8688edb081b23ede0f4 +a6ebecab0b72a49dfd01d69fa37a7f74d34fb1d4fef0aa10e3d6fceb9eccd671225c230af89f6eb514250e41a5f91f52 +846d185bdad6e11e604df7f753b7a08a28b643674221f0e750ebdb6b86ec584a29c869e131bca868972a507e61403f6a +85a98332292acb744bd1c0fd6fdcf1f889a78a2c9624d79413ffa194cc8dfa7821a4b60cde8081d4b5f71f51168dd67f +8f7d97c3b4597880d73200d074eb813d95432306e82dafc70b580b8e08cb8098b70f2d07b4b3ac6a4d77e92d57035031 +8185439c8751e595825d7053518cbe121f191846a38d4dbcb558c3f9d7a3104f3153401adaaaf27843bbe2edb504bfe3 +b3c00d8ece1518fca6b1215a139b0a0e26d9cba1b3a424f7ee59f30ce800a5db967279ed60958dd1f3ee69cf4dd1b204 +a2e6cb6978e883f9719c3c0d44cfe8de0cc6f644b98f98858433bea8bbe7b612c8aca5952fccce4f195f9d54f9722dc2 +99663087e3d5000abbec0fbda4e7342ec38846cc6a1505191fb3f1a337cb369455b7f8531a6eb8b0f7b2c4baf83cbe2b +ab0836c6377a4dbc7ca6a4d6cf021d4cd60013877314dd05f351706b128d4af6337711ed3443cb6ca976f40d74070a9a +87abfd5126152fd3bac3c56230579b489436755ea89e0566aa349490b36a5d7b85028e9fb0710907042bcde6a6f5d7e3 +974ba1033f75f60e0cf7c718a57ae1da3721cf9d0fb925714c46f027632bdd84cd9e6de4cf4d00bc55465b1c5ebb7384 +a607b49d73689ac64f25cec71221d30d53e781e1100d19a2114a21da6507a60166166369d860bd314acb226596525670 +a7c2b0b915d7beba94954f2aa7dd08ec075813661e2a3ecca5d28a0733e59583247fed9528eb28aba55b972cdbaf06eb +b8b3123e44128cc8efbe3270f2f94e50ca214a4294c71c3b851f8cbb70cb67fe9536cf07d04bf7fe380e5e3a29dd3c15 +a59a07e343b62ad6445a0859a32b58c21a593f9ddbfe52049650f59628c93715aa1f4e1f45b109321756d0eeec8a5429 +94f51f8a4ed18a6030d0aaa8899056744bd0e9dc9ac68f62b00355cddab11da5da16798db75f0bfbce0e5bdfe750c0b6 +97460a97ca1e1fa5ce243b81425edc0ec19b7448e93f0b55bc9785eedeeafe194a3c8b33a61a5c72990edf375f122777 +8fa859a089bc17d698a7ee381f37ce9beadf4e5b44fce5f6f29762bc04f96faff5d58c48c73631290325f05e9a1ecf49 +abdf38f3b20fc95eff31de5aa9ef1031abfa48f1305ee57e4d507594570401503476d3bcc493838fc24d6967a3082c7f +b8914bfb82815abb86da35c64d39ab838581bc0bf08967192697d9663877825f2b9d6fbdcf9b410463482b3731361aef +a8187f9d22b193a5f578999954d6ec9aa9b32338ccadb8a3e1ce5bad5ea361d69016e1cdfac44e9d6c54e49dd88561b9 +aac262cb7cba7fd62c14daa7b39677cabc1ef0947dd06dd89cac8570006a200f90d5f0353e84f5ff03179e3bebe14231 +a630ef5ece9733b8c46c0a2df14a0f37647a85e69c63148e79ffdcc145707053f9f9d305c3f1cf3c7915cb46d33abd07 +b102c237cb2e254588b6d53350dfda6901bd99493a3fbddb4121d45e0b475cf2663a40d7b9a75325eda83e4ba1e68cb3 +86a930dd1ddcc16d1dfa00aa292cb6c2607d42c367e470aa920964b7c17ab6232a7108d1c2c11fc40fb7496547d0bbf8 +a832fdc4500683e72a96cce61e62ac9ee812c37fe03527ad4cf893915ca1962cee80e72d4f82b20c8fc0b764376635a1 +88ad985f448dabb04f8808efd90f273f11f5e6d0468b5489a1a6a3d77de342992a73eb842d419034968d733f101ff683 +98a8538145f0d86f7fbf9a81c9140f6095c5bdd8960b1c6f3a1716428cd9cca1bf8322e6d0af24e6169abcf7df2b0ff6 +9048c6eba5e062519011e177e955a200b2c00b3a0b8615bdecdebc217559d41058d3315f6d05617be531ef0f6aef0e51 +833bf225ab6fc68cdcacf1ec1b50f9d05f5410e6cdcd8d56a3081dc2be8a8d07b81534d1ec93a25c2e270313dfb99e3b +a84bcd24c3da5e537e64a811b93c91bfc84d7729b9ead7f79078989a6eb76717d620c1fad17466a0519208651e92f5ff +b7cdd0a3fbd79aed93e1b5a44ca44a94e7af5ed911e4492f332e3a5ed146c7286bde01b52276a2fcc02780d2109874dd +8a19a09854e627cb95750d83c20c67442b66b35896a476358f993ba9ac114d32c59c1b3d0b8787ee3224cf3888b56c64 +a9abd5afb8659ee52ada8fa5d57e7dd355f0a7350276f6160bec5fbf70d5f99234dd179eb221c913e22a49ec6d267846 +8c13c4274c0d30d184e73eaf812200094bbbd57293780bdadbceb262e34dee5b453991e7f37c7333a654fc71c69d6445 +a4320d73296ff8176ce0127ca1921c450e2a9c06eff936681ebaffb5a0b05b17fded24e548454de89aca2dcf6d7a9de4 +b2b8b3e15c1f645f07783e5628aba614e60157889db41d8161d977606788842b67f83f361eae91815dc0abd84e09abd5 +ad26c3aa35ddfddc15719b8bb6c264aaec7065e88ac29ba820eb61f220fef451609a7bb037f3722d022e6c86e4f1dc88 +b8615bf43e13ae5d7b8dd903ce37190800cd490f441c09b22aa29d7a29ed2c0417b7a08ead417868f1de2589deaadd80 +8d3425e1482cd1e76750a76239d33c06b3554c3c3c87c15cb7ab58b1cee86a4c5c4178b44e23f36928365a1b484bde02 +806893a62e38c941a7dd6f249c83af16596f69877cc737d8f73f6b8cd93cbc01177a7a276b2b8c6b0e5f2ad864db5994 +86618f17fa4b0d65496b661bbb5ba3bc3a87129d30a4b7d4f515b904f4206ca5253a41f49fd52095861e5e065ec54f21 +9551915da1304051e55717f4c31db761dcdcf3a1366c89a4af800a9e99aca93a357bf928307f098e62b44a02cb689a46 +8f79c4ec0ec1146cb2a523b52fe33def90d7b5652a0cb9c2d1c8808a32293e00aec6969f5b1538e3a94cd1efa3937f86 +a0c03e329a707300081780f1e310671315b4c6a4cedcb29697aedfabb07a9d5df83f27b20e9c44cf6b16e39d9ded5b98 +86a7cfa7c8e7ce2c01dd0baec2139e97e8e090ad4e7b5f51518f83d564765003c65968f85481bbb97cb18f005ccc7d9f +a33811770c6dfda3f7f74e6ad0107a187fe622d61b444bbd84fd7ef6e03302e693b093df76f6ab39bb4e02afd84a575a +85480f5c10d4162a8e6702b5e04f801874d572a62a130be94b0c02b58c3c59bdcd48cd05f0a1c2839f88f06b6e3cd337 +8e181011564b17f7d787fe0e7f3c87f6b62da9083c54c74fd6c357a1f464c123c1d3d8ade3cf72475000b464b14e2be3 +8ee178937294b8c991337e0621ab37e9ffa4ca2bdb3284065c5e9c08aad6785d50cf156270ff9daf9a9127289710f55b +8bd1e8e2d37379d4b172f1aec96f2e41a6e1393158d7a3dbd9a95c8dd4f8e0b05336a42efc11a732e5f22b47fc5c271d +8f3da353cd487c13136a85677de8cedf306faae0edec733cf4f0046f82fa4639db4745b0095ff33a9766aba50de0cbcf +8d187c1e97638df0e4792b78e8c23967dac43d98ea268ca4aabea4e0fa06cb93183fd92d4c9df74118d7cc27bf54415e +a4c992f08c2f8bac0b74b3702fb0c75c9838d2ce90b28812019553d47613c14d8ce514d15443159d700b218c5a312c49 +a6fd1874034a34c3ea962a316c018d9493d2b3719bb0ec4edbc7c56b240802b2228ab49bee6f04c8a3e9f6f24a48c1c2 +b2efed8e799f8a15999020900dc2c58ece5a3641c90811b86a5198e593d7318b9d53b167818ccdfbe7df2414c9c34011 +995ff7de6181ddf95e3ead746089c6148da3508e4e7a2323c81785718b754d356789b902e7e78e2edc6b0cbd4ff22c78 +944073d24750a9068cbd020b834afc72d2dde87efac04482b3287b40678ad07588519a4176b10f2172a2c463d063a5cd +99db4b1bb76475a6fd75289986ef40367960279524378cc917525fb6ba02a145a218c1e9caeb99332332ab486a125ac0 +89fce4ecd420f8e477af4353b16faabb39e063f3f3c98fde2858b1f2d1ef6eed46f0975a7c08f233b97899bf60ccd60a +8c09a4f07a02b80654798bc63aada39fd638d3e3c4236ccd8a5ca280350c31e4a89e5f4c9aafb34116e71da18c1226b8 +85325cfa7ded346cc51a2894257eab56e7488dbff504f10f99f4cd2b630d913003761a50f175ed167e8073f1b6b63fb0 +b678b4fbec09a8cc794dcbca185f133578f29e354e99c05f6d07ac323be20aecb11f781d12898168e86f2e0f09aca15e +a249cfcbca4d9ba0a13b5f6aac72bf9b899adf582f9746bb2ad043742b28915607467eb794fca3704278f9136f7642be +9438e036c836a990c5e17af3d78367a75b23c37f807228362b4d13e3ddcb9e431348a7b552d09d11a2e9680704a4514f +925ab70450af28c21a488bfb5d38ac994f784cf249d7fd9ad251bb7fd897a23e23d2528308c03415074d43330dc37ef4 +a290563904d5a8c0058fc8330120365bdd2ba1fdbaef7a14bc65d4961bb4217acfaed11ab82669e359531f8bf589b8db +a7e07a7801b871fc9b981a71e195a3b4ba6b6313bc132b04796a125157e78fe5c11a3a46cf731a255ac2d78a4ae78cd0 +b26cd2501ee72718b0eebab6fb24d955a71f363f36e0f6dff0ab1d2d7836dab88474c0cef43a2cc32701fca7e82f7df3 +a1dc3b6c968f3de00f11275092290afab65b2200afbcfa8ddc70e751fa19dbbc300445d6d479a81bda3880729007e496 +a9bc213e28b630889476a095947d323b9ac6461dea726f2dc9084473ae8e196d66fb792a21905ad4ec52a6d757863e7d +b25d178df8c2df8051e7c888e9fa677fde5922e602a95e966db9e4a3d6b23ce043d7dc48a5b375c6b7c78e966893e8c3 +a1c8d88d72303692eaa7adf68ea41de4febec40cc14ae551bb4012afd786d7b6444a3196b5d9d5040655a3366d96b7cd +b22bd44f9235a47118a9bbe2ba5a2ba9ec62476061be2e8e57806c1a17a02f9a51403e849e2e589520b759abd0117683 +b8add766050c0d69fe81d8d9ea73e1ed05f0135d093ff01debd7247e42dbb86ad950aceb3b50b9af6cdc14ab443b238f +af2cf95f30ef478f018cf81d70d47d742120b09193d8bb77f0d41a5d2e1a80bfb467793d9e2471b4e0ad0cb2c3b42271 +8af5ef2107ad284e246bb56e20fef2a255954f72de791cbdfd3be09f825298d8466064f3c98a50496c7277af32b5c0bc +85dc19558572844c2849e729395a0c125096476388bd1b14fa7f54a7c38008fc93e578da3aac6a52ff1504d6ca82db05 +ae8c9b43c49572e2e166d704caf5b4b621a3b47827bb2a3bcd71cdc599bba90396fd9a405261b13e831bb5d44c0827d7 +a7ba7efede25f02e88f6f4cbf70643e76784a03d97e0fbd5d9437c2485283ad7ca3abb638a5f826cd9f6193e5dec0b6c +94a9d122f2f06ef709fd8016fd4b712d88052245a65a301f5f177ce22992f74ad05552b1f1af4e70d1eac62cef309752 +82d999b3e7cf563833b8bc028ff63a6b26eb357dfdb3fd5f10e33a1f80a9b2cfa7814d871b32a7ebfbaa09e753e37c02 +aec6edcde234df502a3268dd2c26f4a36a2e0db730afa83173f9c78fcb2b2f75510a02b80194327b792811caefda2725 +94c0bfa66c9f91d462e9194144fdd12d96f9bbe745737e73bab8130607ee6ea9d740e2cfcbbd00a195746edb6369ee61 +ab7573dab8c9d46d339e3f491cb2826cabe8b49f85f1ede78d845fc3995537d1b4ab85140b7d0238d9c24daf0e5e2a7e +87e8b16832843251fe952dadfd01d41890ed4bb4b8fa0254550d92c8cced44368225eca83a6c3ad47a7f81ff8a80c984 +9189d2d9a7c64791b19c0773ad4f0564ce6bea94aa275a917f78ad987f150fdb3e5e26e7fef9982ac184897ecc04683f +b3661bf19e2da41415396ae4dd051a9272e8a2580b06f1a1118f57b901fa237616a9f8075af1129af4eabfefedbe2f1c +af43c86661fb15daf5d910a4e06837225e100fb5680bd3e4b10f79a2144c6ec48b1f8d6e6b98e067d36609a5d038889a +82ac0c7acaa83ddc86c5b4249aae12f28155989c7c6b91e5137a4ce05113c6cbc16f6c44948b0efd8665362d3162f16a +8f268d1195ab465beeeb112cd7ffd5d5548559a8bc01261106d3555533fc1971081b25558d884d552df0db1cddda89d8 +8ef7caa5521f3e037586ce8ac872a4182ee20c7921c0065ed9986c047e3dda08294da1165f385d008b40d500f07d895f +8c2f98f6880550573fad46075d3eba26634b5b025ce25a0b4d6e0193352c8a1f0661064027a70fe8190b522405f9f4e3 +b7653f353564feb164f0f89ec7949da475b8dad4a4d396d252fc2a884f6932d027b7eb2dc4d280702c74569319ed701a +a026904f4066333befd9b87a8fad791d014096af60cdd668ef919c24dbe295ff31f7a790e1e721ba40cf5105abca67f4 +988f982004ada07a22dd345f2412a228d7a96b9cae2c487de42e392afe1e35c2655f829ce07a14629148ce7079a1f142 +9616add009067ed135295fb74d5b223b006b312bf14663e547a0d306694ff3a8a7bb9cfc466986707192a26c0bce599f +ad4c425de9855f6968a17ee9ae5b15e0a5b596411388cf976df62ecc6c847a6e2ddb2cea792a5f6e9113c2445dba3e5c +b698ac9d86afa3dc69ff8375061f88e3b0cff92ff6dfe747cebaf142e813c011851e7a2830c10993b715e7fd594604a9 +a386fa189847bb3b798efca917461e38ead61a08b101948def0f82cd258b945ed4d45b53774b400af500670149e601b7 +905c95abda2c68a6559d8a39b6db081c68cef1e1b4be63498004e1b2f408409be9350b5b5d86a30fd443e2b3e445640a +9116dade969e7ce8954afcdd43e5cab64dc15f6c1b8da9d2d69de3f02ba79e6c4f6c7f54d6bf586d30256ae405cd1e41 +a3084d173eacd08c9b5084a196719b57e47a0179826fda73466758235d7ecdb87cbcf097bd6b510517d163a85a7c7edd +85bb00415ad3c9be99ff9ba83672cc59fdd24356b661ab93713a3c8eab34e125d8867f628a3c3891b8dc056e69cd0e83 +8d58541f9f39ed2ee4478acce5d58d124031338ec11b0d55551f00a5a9a6351faa903a5d7c132dc5e4bb026e9cbd18e4 +a622adf72dc250e54f672e14e128c700166168dbe0474cecb340da175346e89917c400677b1bc1c11fcc4cc26591d9db +b3f865014754b688ca8372e8448114fff87bf3ca99856ab9168894d0c4679782c1ced703f5b74e851b370630f5e6ee86 +a7e490b2c40c2446fcd91861c020da9742c326a81180e38110558bb5d9f2341f1c1885e79b364e6419023d1cbdc47380 +b3748d472b1062e54572badbb8e87ac36534407f74932e7fc5b8392d008e8e89758f1671d1e4d30ab0fa40551b13bb5e +89898a5c5ec4313aabc607b0049fd1ebad0e0c074920cf503c9275b564d91916c2c446d3096491c950b7af3ac5e4b0ed +8eb8c83fef2c9dd30ea44e286e9599ec5c20aba983f702e5438afe2e5b921884327ad8d1566c72395587efac79ca7d56 +b92479599e806516ce21fb0bd422a1d1d925335ebe2b4a0a7e044dd275f30985a72b97292477053ac5f00e081430da80 +a34ae450a324fe8a3c25a4d653a654f9580ed56bbea213b8096987bbad0f5701d809a17076435e18017fea4d69f414bc +81381afe6433d62faf62ea488f39675e0091835892ecc238e02acf1662669c6d3962a71a3db652f6fe3bc5f42a0e5dc5 +a430d475bf8580c59111103316fe1aa79c523ea12f1d47a976bbfae76894717c20220e31cf259f08e84a693da6688d70 +b842814c359754ece614deb7d184d679d05d16f18a14b288a401cef5dad2cf0d5ee90bad487b80923fc5573779d4e4e8 +971d9a2627ff2a6d0dcf2af3d895dfbafca28b1c09610c466e4e2bff2746f8369de7f40d65b70aed135fe1d72564aa88 +8f4ce1c59e22b1ce7a0664caaa7e53735b154cfba8d2c5cc4159f2385843de82ab58ed901be876c6f7fce69cb4130950 +86cc9dc321b6264297987000d344fa297ef45bcc2a4df04e458fe2d907ad304c0ea2318e32c3179af639a9a56f3263cf +8229e0876dfe8f665c3fb19b250bd89d40f039bbf1b331468b403655be7be2e104c2fd07b9983580c742d5462ca39a43 +99299d73066e8eb128f698e56a9f8506dfe4bd014931e86b6b487d6195d2198c6c5bf15cccb40ccf1f8ddb57e9da44a2 +a3a3be37ac554c574b393b2f33d0a32a116c1a7cfeaf88c54299a4da2267149a5ecca71f94e6c0ef6e2f472b802f5189 +a91700d1a00387502cdba98c90f75fbc4066fefe7cc221c8f0e660994c936badd7d2695893fde2260c8c11d5bdcdd951 +8e03cae725b7f9562c5c5ab6361644b976a68bada3d7ca508abca8dfc80a469975689af1fba1abcf21bc2a190dab397d +b01461ad23b2a8fa8a6d241e1675855d23bc977dbf4714add8c4b4b7469ccf2375cec20e80cedfe49361d1a30414ac5b +a2673bf9bc621e3892c3d7dd4f1a9497f369add8cbaa3472409f4f86bd21ac67cfac357604828adfee6ada1835365029 +a042dff4bf0dfc33c178ba1b335e798e6308915128de91b12e5dbbab7c4ac8d60a01f6aea028c3a6d87b9b01e4e74c01 +86339e8a75293e4b3ae66b5630d375736b6e6b6b05c5cda5e73fbf7b2f2bd34c18a1d6cefede08625ce3046e77905cb8 +af2ebe1b7d073d03e3d98bc61af83bf26f7a8c130fd607aa92b75db22d14d016481b8aa231e2c9757695f55b7224a27f +a00ee882c9685e978041fd74a2c465f06e2a42ffd3db659053519925be5b454d6f401e3c12c746e49d910e4c5c9c5e8c +978a781c0e4e264e0dad57e438f1097d447d891a1e2aa0d5928f79a9d5c3faae6f258bc94fdc530b7b2fa6a9932bb193 +aa4b7ce2e0c2c9e9655bf21e3e5651c8503bce27483017b0bf476be743ba06db10228b3a4c721219c0779747f11ca282 +b003d1c459dacbcf1a715551311e45d7dbca83a185a65748ac74d1800bbeaba37765d9f5a1a221805c571910b34ebca8 +95b6e531b38648049f0d19de09b881baa1f7ea3b2130816b006ad5703901a05da57467d1a3d9d2e7c73fb3f2e409363c +a6cf9c06593432d8eba23a4f131bb7f72b9bd51ab6b4b772a749fe03ed72b5ced835a349c6d9920dba2a39669cb7c684 +aa3d59f6e2e96fbb66195bc58c8704e139fa76cd15e4d61035470bd6e305db9f98bcbf61ac1b95e95b69ba330454c1b3 +b57f97959c208361de6d7e86dff2b873068adb0f158066e646f42ae90e650079798f165b5cd713141cd3a2a90a961d9a +a76ee8ed9052f6a7a8c69774bb2597be182942f08115baba03bf8faaeaee526feba86120039fe8ca7b9354c3b6e0a8e6 +95689d78c867724823f564627d22d25010f278674c6d2d0cdb10329169a47580818995d1d727ce46c38a1e47943ebb89 +ab676d2256c6288a88e044b3d9ffd43eb9d5aaee00e8fc60ac921395fb835044c71a26ca948e557fed770f52d711e057 +96351c72785c32e5d004b6f4a1259fb8153d631f0c93fed172f18e8ba438fbc5585c1618deeabd0d6d0b82173c2e6170 +93dd8d3db576418e22536eba45ab7f56967c6c97c64260d6cddf38fb19c88f2ec5cd0e0156f50e70855eee8a2b879ffd +ad6ff16f40f6de3d7a737f8e6cebd8416920c4ff89dbdcd75eabab414af9a6087f83ceb9aff7680aa86bff98bd09c8cc +84de53b11671abc9c38710e19540c5c403817562aeb22a88404cdaff792c1180f717dbdfe8f54940c062c4d032897429 +872231b9efa1cdd447b312099a5c164c560440a9441d904e70f5abfc3b2a0d16be9a01aca5e0a2599a61e19407587e3d +88f44ac27094a2aa14e9dc40b099ee6d68f97385950f303969d889ee93d4635e34dff9239103bdf66a4b7cbba3e7eb7a +a59afebadf0260e832f6f44468443562f53fbaf7bcb5e46e1462d3f328ac437ce56edbca617659ac9883f9e13261fad7 +b1990e42743a88de4deeacfd55fafeab3bc380cb95de43ed623d021a4f2353530bcab9594389c1844b1c5ea6634c4555 +85051e841149a10e83f56764e042182208591396d0ce78c762c4a413e6836906df67f38c69793e158d64fef111407ba3 +9778172bbd9b1f2ec6bbdd61829d7b39a7df494a818e31c654bf7f6a30139899c4822c1bf418dd4f923243067759ce63 +9355005b4878c87804fc966e7d24f3e4b02bed35b4a77369d01f25a3dcbff7621b08306b1ac85b76fe7b4a3eb5f839b1 +8f9dc6a54fac052e236f8f0e1f571ac4b5308a43acbe4cc8183bce26262ddaf7994e41cf3034a4cbeca2c505a151e3b1 +8cc59c17307111723fe313046a09e0e32ea0cce62c13814ab7c6408c142d6a0311d801be4af53fc9240523f12045f9ef +8e6057975ed40a1932e47dd3ac778f72ee2a868d8540271301b1aa6858de1a5450f596466494a3e0488be4fbeb41c840 +812145efbd6559ae13325d56a15940ca4253b17e72a9728986b563bb5acc13ec86453796506ac1a8f12bd6f9e4a288c3 +911da0a6d6489eb3dab2ec4a16e36127e8a291ae68a6c2c9de33e97f3a9b1f00da57a94e270a0de79ecc5ecb45d19e83 +b72ea85973f4b2a7e6e71962b0502024e979a73c18a9111130e158541fa47bbaaf53940c8f846913a517dc69982ba9e1 +a7a56ad1dbdc55f177a7ad1d0af78447dc2673291e34e8ab74b26e2e2e7d8c5fe5dc89e7ef60f04a9508847b5b3a8188 +b52503f6e5411db5d1e70f5fb72ccd6463fa0f197b3e51ca79c7b5a8ab2e894f0030476ada72534fa4eb4e06c3880f90 +b51c7957a3d18c4e38f6358f2237b3904618d58b1de5dec53387d25a63772e675a5b714ad35a38185409931157d4b529 +b86b4266e719d29c043d7ec091547aa6f65bbf2d8d831d1515957c5c06513b72aa82113e9645ad38a7bc3f5383504fa6 +b95b547357e6601667b0f5f61f261800a44c2879cf94e879def6a105b1ad2bbf1795c3b98a90d588388e81789bd02681 +a58fd4c5ae4673fa350da6777e13313d5d37ed1dafeeb8f4f171549765b84c895875d9d3ae6a9741f3d51006ef81d962 +9398dc348d078a604aadc154e6eef2c0be1a93bb93ba7fe8976edc2840a3a318941338cc4d5f743310e539d9b46613d2 +902c9f0095014c4a2f0dccaaab543debba6f4cc82c345a10aaf4e72511725dbed7a34cd393a5f4e48a3e5142b7be84ed +a7c0447849bb44d04a0393a680f6cd390093484a79a147dd238f5d878030d1c26646d88211108e59fe08b58ad20c6fbd +80db045535d6e67a422519f5c89699e37098449d249698a7cc173a26ccd06f60238ae6cc7242eb780a340705c906790c +8e52b451a299f30124505de2e74d5341e1b5597bdd13301cc39b05536c96e4380e7f1b5c7ef076f5b3005a868657f17c +824499e89701036037571761e977654d2760b8ce21f184f2879fda55d3cda1e7a95306b8abacf1caa79d3cc075b9d27f +9049b956b77f8453d2070607610b79db795588c0cec12943a0f5fe76f358dea81e4f57a4692112afda0e2c05c142b26f +81911647d818a4b5f4990bfd4bc13bf7be7b0059afcf1b6839333e8569cdb0172fd2945410d88879349f677abaed5eb3 +ad4048f19b8194ed45b6317d9492b71a89a66928353072659f5ce6c816d8f21e69b9d1817d793effe49ca1874daa1096 +8d22f7b2ddb31458661abd34b65819a374a1f68c01fc6c9887edeba8b80c65bceadb8f57a3eb686374004b836261ef67 +92637280c259bc6842884db3d6e32602a62252811ae9b019b3c1df664e8809ffe86db88cfdeb8af9f46435c9ee790267 +a2f416379e52e3f5edc21641ea73dc76c99f7e29ea75b487e18bd233856f4c0183429f378d2bfc6cd736d29d6cadfa49 +882cb6b76dbdc188615dcf1a8439eba05ffca637dd25197508156e03c930b17b9fed2938506fdd7b77567cb488f96222 +b68b621bb198a763fb0634eddb93ed4b5156e59b96c88ca2246fd1aea3e6b77ed651e112ac41b30cd361fadc011d385e +a3cb22f6b675a29b2d1f827cacd30df14d463c93c3502ef965166f20d046af7f9ab7b2586a9c64f4eae4fad2d808a164 +8302d9ce4403f48ca217079762ce42cee8bc30168686bb8d3a945fbd5acd53b39f028dce757b825eb63af2d5ae41169d +b2eef1fbd1a176f1f4cd10f2988c7329abe4eb16c7405099fb92baa724ab397bc98734ef7d4b24c0f53dd90f57520d04 +a1bbef0bd684a3f0364a66bde9b29326bac7aa3dde4caed67f14fb84fed3de45c55e406702f1495a3e2864d4ee975030 +976acdb0efb73e3a3b65633197692dedc2adaed674291ae3df76b827fc866d214e9cac9ca46baefc4405ff13f953d936 +b9fbf71cc7b6690f601f0b1c74a19b7d14254183a2daaafec7dc3830cba5ae173d854bbfebeca985d1d908abe5ef0cda +90591d7b483598c94e38969c4dbb92710a1a894bcf147807f1bcbd8aa3ac210b9f2be65519aa829f8e1ccdc83ad9b8cf +a30568577c91866b9c40f0719d46b7b3b2e0b4a95e56196ac80898a2d89cc67880e1229933f2cd28ee3286f8d03414d7 +97589a88c3850556b359ec5e891f0937f922a751ac7c95949d3bbc7058c172c387611c0f4cb06351ef02e5178b3dd9e4 +98e7bbe27a1711f4545df742f17e3233fbcc63659d7419e1ca633f104cb02a32c84f2fac23ca2b84145c2672f68077ab +a7ddb91636e4506d8b7e92aa9f4720491bb71a72dadc47c7f4410e15f93e43d07d2b371951a0e6a18d1bd087aa96a5c4 +a7c006692227a06db40bceac3d5b1daae60b5692dd9b54772bedb5fea0bcc91cbcdb530cac31900ffc70c5b3ffadc969 +8d3ec6032778420dfa8be52066ba0e623467df33e4e1901dbadd586c5d750f4ccde499b5197e26b9ea43931214060f69 +8d9a8410518ea64f89df319bfd1fc97a0971cdb9ad9b11d1f8fe834042ea7f8dce4db56eeaf179ff8dda93b6db93e5ce +a3c533e9b3aa04df20b9ff635cb1154ce303e045278fcf3f10f609064a5445552a1f93989c52ce852fd0bbd6e2b6c22e +81934f3a7f8c1ae60ec6e4f212986bcc316118c760a74155d06ce0a8c00a9b9669ec4e143ca214e1b995e41271774fd9 +ab8e2d01a71192093ef8fafa7485e795567cc9db95a93fb7cc4cf63a391ef89af5e2bfad4b827fffe02b89271300407f +83064a1eaa937a84e392226f1a60b7cfad4efaa802f66de5df7498962f7b2649924f63cd9962d47906380b97b9fe80e1 +b4f5e64a15c6672e4b55417ee5dc292dcf93d7ea99965a888b1cc4f5474a11e5b6520eacbcf066840b343f4ceeb6bf33 +a63d278b842456ef15c278b37a6ea0f27c7b3ffffefca77c7a66d2ea06c33c4631eb242bbb064d730e70a8262a7b848a +83a41a83dbcdf0d22dc049de082296204e848c453c5ab1ba75aa4067984e053acf6f8b6909a2e1f0009ed051a828a73b +819485b036b7958508f15f3c19436da069cbe635b0318ebe8c014cf1ef9ab2df038c81161b7027475bcfa6fff8dd9faf +aa40e38172806e1e045e167f3d1677ef12d5dcdc89b43639a170f68054bd196c4fae34c675c1644d198907a03f76ba57 +969bae484883a9ed1fbed53b26b3d4ee4b0e39a6c93ece5b3a49daa01444a1c25727dabe62518546f36b047b311b177c +80a9e73a65da99664988b238096a090d313a0ee8e4235bc102fa79bb337b51bb08c4507814eb5baec22103ec512eaab0 +86604379aec5bddda6cbe3ef99c0ac3a3c285b0b1a15b50451c7242cd42ae6b6c8acb717dcca7917838432df93a28502 +a23407ee02a495bed06aa7e15f94cfb05c83e6d6fba64456a9bbabfa76b2b68c5c47de00ba169e710681f6a29bb41a22 +98cff5ecc73b366c6a01b34ac9066cb34f7eeaf4f38a5429bad2d07e84a237047e2a065c7e8a0a6581017dadb4695deb +8de9f68a938f441f3b7ab84bb1f473c5f9e5c9e139e42b7ccee1d254bd57d0e99c2ccda0f3198f1fc5737f6023dd204e +b0ce48d815c2768fb472a315cad86aa033d0e9ca506f146656e2941829e0acb735590b4fbc713c2d18d3676db0a954ac +82f485cdefd5642a6af58ac6817991c49fac9c10ace60f90b27f1788cc026c2fe8afc83cf499b3444118f9f0103598a8 +82c24550ed512a0d53fc56f64cc36b553823ae8766d75d772dacf038c460f16f108f87a39ceef7c66389790f799dbab3 +859ffcf1fe9166388316149b9acc35694c0ea534d43f09dae9b86f4aa00a23b27144dda6a352e74b9516e8c8d6fc809c +b8f7f353eec45da77fb27742405e5ad08d95ec0f5b6842025be9def3d9892f85eb5dd0921b41e6eff373618dba215bca +8ccca4436f9017e426229290f5cd05eac3f16571a4713141a7461acfe8ae99cd5a95bf5b6df129148693c533966145da +a2c67ecc19c0178b2994846fea4c34c327a5d786ac4b09d1d13549d5be5996d8a89021d63d65cb814923388f47cc3a03 +aa0ff87d676b418ec08f5cbf577ac7e744d1d0e9ebd14615b550eb86931eafd2a36d4732cc5d6fab1713fd7ab2f6f7c0 +8aef4730bb65e44efd6bb9441c0ae897363a2f3054867590a2c2ecf4f0224e578c7a67f10b40f8453d9f492ac15a9b2d +86a187e13d8fba5addcfdd5b0410cedd352016c930f913addd769ee09faa6be5ca3e4b1bdb417a965c643a99bd92be42 +a0a4e9632a7a094b14b29b78cd9c894218cdf6783e61671e0203865dc2a835350f465fbaf86168f28af7c478ca17bc89 +a8c7b02d8deff2cd657d8447689a9c5e2cd74ef57c1314ac4d69084ac24a7471954d9ff43fe0907d875dcb65fd0d3ce5 +97ded38760aa7be6b6960b5b50e83b618fe413cbf2bcc1da64c05140bcc32f5e0e709cd05bf8007949953fac5716bad9 +b0d293835a24d64c2ae48ce26e550b71a8c94a0883103757fb6b07e30747f1a871707d23389ba2b2065fa6bafe220095 +8f9e291bf849feaa575592e28e3c8d4b7283f733d41827262367ea1c40f298c7bcc16505255a906b62bf15d9f1ba85fb +998f4e2d12708b4fd85a61597ca2eddd750f73c9e0c9b3cf0825d8f8e01f1628fd19797dcaed3b16dc50331fc6b8b821 +b30d1f8c115d0e63bf48f595dd10908416774c78b3bbb3194192995154d80ea042d2e94d858de5f8aa0261b093c401fd +b5d9c75bb41f964cbff3f00e96d9f1480c91df8913f139f0d385d27a19f57a820f838eb728e46823cbff00e21c660996 +a6edec90b5d25350e2f5f0518777634f9e661ec9d30674cf5b156c4801746d62517751d90074830ac0f4b09911c262f1 +82f98da1264b6b75b8fbeb6a4d96d6a05b25c24db0d57ba3a38efe3a82d0d4e331b9fc4237d6494ccfe4727206457519 +b89511843453cf4ecd24669572d6371b1e529c8e284300c43e0d5bb6b3aaf35aeb634b3cb5c0a2868f0d5e959c1d0772 +a82bf065676583e5c1d3b81987aaae5542f522ba39538263a944bb33ea5b514c649344a96c0205a3b197a3f930fcda6c +a37b47ea527b7e06c460776aa662d9a49ff4149d3993f1a974b0dd165f7171770d189b0e2ea54fd5fccb6a14b116e68a +a1017677f97dda818274d47556d09d0e4ccacb23a252f82a6cfe78c630ad46fb9806307445a59fb61262182de3a2b29c +b01e9fcac239ba270e6877b79273ddd768bf8a51d2ed8a051b1c11e18eff3de5920e2fcbfbd26f06d381eddd3b1f1e1b +82fcd53d803b1c8e4ed76adc339b7f3a5962d37042b9683aabac7513ac68775d4a566a9460183926a6a95dbe7d551a1f +a763e78995d55cd21cdb7ef75d9642d6e1c72453945e346ab6690c20a4e1eeec61bb848ef830ae4b56182535e3c71d8f +b769f4db602251d4b0a1186782799bdcef66de33c110999a5775c50b349666ffd83d4c89714c4e376f2efe021a5cfdb2 +a59cbd1b785efcfa6e83fc3b1d8cf638820bc0c119726b5368f3fba9dce8e3414204fb1f1a88f6c1ff52e87961252f97 +95c8c458fd01aa23ecf120481a9c6332ebec2e8bb70a308d0576926a858457021c277958cf79017ddd86a56cacc2d7db +82eb41390800287ae56e77f2e87709de5b871c8bdb67c10a80fc65f3acb9f7c29e8fa43047436e8933f27449ea61d94d +b3ec25e3545eb83aed2a1f3558d1a31c7edde4be145ecc13b33802654b77dc049b4f0065069dd9047b051e52ab11dcdd +b78a0c715738f56f0dc459ab99e252e3b579b208142836b3c416b704ca1de640ca082f29ebbcee648c8c127df06f6b1e +a4083149432eaaf9520188ebf4607d09cf664acd1f471d4fb654476e77a9eaae2251424ffda78d09b6cb880df35c1219 +8c52857d68d6e9672df3db2df2dbf46b516a21a0e8a18eec09a6ae13c1ef8f369d03233320dd1c2c0bbe00abfc1ea18b +8c856089488803066bff3f8d8e09afb9baf20cecc33c8823c1c0836c3d45498c3de37e87c016b705207f60d2b00f8609 +831a3df39be959047b2aead06b4dcd3012d7b29417f642b83c9e8ce8de24a3dbbd29c6fdf55e2db3f7ea04636c94e403 +aed84d009f66544addabe404bf6d65af7779ce140dc561ff0c86a4078557b96b2053b7b8a43432ffb18cd814f143b9da +93282e4d72b0aa85212a77b336007d8ba071eea17492da19860f1ad16c1ea8867ccc27ef5c37c74b052465cc11ea4f52 +a7b78b8c8d057194e8d68767f1488363f77c77bddd56c3da2bc70b6354c7aa76247c86d51f7371aa38a4aa7f7e3c0bb7 +b1c77283d01dcd1bde649b5b044eac26befc98ff57cbee379fb5b8e420134a88f2fc7f0bf04d15e1fbd45d29e7590fe6 +a4aa8de70330a73b2c6458f20a1067eed4b3474829b36970a8df125d53bbdda4f4a2c60063b7cccb0c80fc155527652f +948a6c79ba1b8ad7e0bed2fae2f0481c4e41b4d9bbdd9b58164e28e9065700e83f210c8d5351d0212e0b0b68b345b3a5 +86a48c31dcbbf7b082c92d28e1f613a2378a910677d7db3a349dc089e4a1e24b12eee8e8206777a3a8c64748840b7387 +976adb1af21e0fc34148917cf43d933d7bfd3fd12ed6c37039dcd5a4520e3c6cf5868539ba5bf082326430deb8a4458d +b93e1a4476f2c51864bb4037e7145f0635eb2827ab91732b98d49b6c07f6ac443111aa1f1da76d1888665cb897c3834e +8afd46fb23bf869999fa19784b18a432a1f252d09506b8dbb756af900518d3f5f244989b3d7c823d9029218c655d3dc6 +83f1e59e3abeed18cdc632921672673f1cb6e330326e11c4e600e13e0d5bc11bdc970ae12952e15103a706fe720bf4d6 +90ce4cc660714b0b673d48010641c09c00fc92a2c596208f65c46073d7f349dd8e6e077ba7dcef9403084971c3295b76 +8b09b0f431a7c796561ecf1549b85048564de428dac0474522e9558b6065fede231886bc108539c104ce88ebd9b5d1b0 +85d6e742e2fb16a7b0ba0df64bc2c0dbff9549be691f46a6669bca05e89c884af16822b85faefefb604ec48c8705a309 +a87989ee231e468a712c66513746fcf03c14f103aadca0eac28e9732487deb56d7532e407953ab87a4bf8961588ef7b0 +b00da10efe1c29ee03c9d37d5918e391ae30e48304e294696b81b434f65cf8c8b95b9d1758c64c25e534d045ba28696f +91c0e1fb49afe46c7056400baa06dbb5f6e479db78ee37e2d76c1f4e88994357e257b83b78624c4ef6091a6c0eb8254d +883fb797c498297ccbf9411a3e727c3614af4eccde41619b773dc7f3259950835ee79453debf178e11dec4d3ada687a0 +a14703347e44eb5059070b2759297fcfcfc60e6893c0373eea069388eba3950aa06f1c57cd2c30984a2d6f9e9c92c79e +afebc7585b304ceba9a769634adff35940e89cd32682c78002822aab25eec3edc29342b7f5a42a56a1fec67821172ad5 +aea3ff3822d09dba1425084ca95fd359718d856f6c133c5fabe2b2eed8303b6e0ba0d8698b48b93136a673baac174fd9 +af2456a09aa777d9e67aa6c7c49a1845ea5cdda2e39f4c935c34a5f8280d69d4eec570446998cbbe31ede69a91e90b06 +82cada19fed16b891ef3442bafd49e1f07c00c2f57b2492dd4ee36af2bd6fd877d6cb41188a4d6ce9ec8d48e8133d697 +82a21034c832287f616619a37c122cee265cc34ae75e881fcaea4ea7f689f3c2bc8150bbf7dbcfd123522bfb7f7b1d68 +86877217105f5d0ec3eeff0289fc2a70d505c9fdf7862e8159553ef60908fb1a27bdaf899381356a4ef4649072a9796c +82b196e49c6e861089a427c0b4671d464e9d15555ffb90954cd0d630d7ae02eb3d98ceb529d00719c2526cd96481355a +a29b41d0d43d26ce76d4358e0db2b77df11f56e389f3b084d8af70a636218bd3ac86b36a9fe46ec9058c26a490f887f7 +a4311c4c20c4d7dd943765099c50f2fd423e203ccfe98ff00087d205467a7873762510cac5fdce7a308913ed07991ed7 +b1f040fc5cc51550cb2c25cf1fd418ecdd961635a11f365515f0cb4ffb31da71f48128c233e9cc7c0cf3978d757ec84e +a9ebae46f86d3bd543c5f207ed0d1aed94b8375dc991161d7a271f01592912072e083e2daf30c146430894e37325a1b9 +826418c8e17ad902b5fe88736323a47e0ca7a44bce4cbe27846ec8fe81de1e8942455dda6d30e192cdcc73e11df31256 +85199db563427c5edcbac21f3d39fec2357be91fb571982ddcdc4646b446ad5ced84410de008cb47b3477ee0d532daf8 +b7eed9cd400b2ca12bf1d9ae008214b8561fb09c8ad9ff959e626ffde00fee5ff2f5b6612e231f2a1a9b1646fcc575e3 +8b40bf12501dcbac78f5a314941326bfcddf7907c83d8d887d0bb149207f85d80cd4dfbd7935439ea7b14ea39a3fded7 +83e3041af302485399ba6cd5120e17af61043977083887e8d26b15feec4a6b11171ac5c06e6ad0971d4b58a81ff12af3 +8f5b9a0eecc589dbf8c35a65d5e996a659277ef6ea509739c0cb7b3e2da9895e8c8012de662e5b23c5fa85d4a8f48904 +835d71ed5e919d89d8e6455f234f3ff215462c4e3720c371ac8c75e83b19dfe3ae15a81547e4dc1138e5f5997f413cc9 +8b7d2e4614716b1db18e9370176ea483e6abe8acdcc3dcdf5fb1f4d22ca55d652feebdccc171c6de38398d9f7bfdec7a +93eace72036fe57d019676a02acf3d224cf376f166658c1bf705db4f24295881d477d6fdd7916efcfceff8c7a063deda +b1ac460b3d516879a84bc886c54f020a9d799e7c49af3e4d7de5bf0d2793c852254c5d8fe5616147e6659512e5ccb012 +acd0947a35cb167a48bcd9667620464b54ac0e78f9316b4aa92dcaab5422d7a732087e52e1c827faa847c6b2fe6e7766 +94ac33d21c3d12ff762d32557860e911cd94d666609ddcc42161b9c16f28d24a526e8b10bb03137257a92cec25ae637d +832e02058b6b994eadd8702921486241f9a19e68ed1406dad545e000a491ae510f525ccf9d10a4bba91c68f2c53a0f58 +9471035d14f78ff8f463b9901dd476b587bb07225c351161915c2e9c6114c3c78a501379ab6fb4eb03194c457cbd22bf +ab64593e034c6241d357fcbc32d8ea5593445a5e7c24cac81ad12bd2ef01843d477a36dc1ba21dbe63b440750d72096a +9850f3b30045e927ad3ec4123a32ed2eb4c911f572b6abb79121873f91016f0d80268de8b12e2093a4904f6e6cab7642 +987212c36b4722fe2e54fa30c52b1e54474439f9f35ca6ad33c5130cd305b8b54b532dd80ffd2c274105f20ce6d79f6e +8b4d0c6abcb239b5ed47bef63bc17efe558a27462c8208fa652b056e9eae9665787cd1aee34fbb55beb045c8bfdb882b +a9f3483c6fee2fe41312d89dd4355d5b2193ac413258993805c5cbbf0a59221f879386d3e7a28e73014f10e65dd503d9 +a2225da3119b9b7c83d514b9f3aeb9a6d9e32d9cbf9309cbb971fd53c4b2c001d10d880a8ad8a7c281b21d85ceca0b7c +a050be52e54e676c151f7a54453bbb707232f849beab4f3bf504b4d620f59ed214409d7c2bd3000f3ff13184ccda1c35 +adbccf681e15b3edb6455a68d292b0a1d0f5a4cb135613f5e6db9943f02181341d5755875db6ee474e19ace1c0634a28 +8b6eff675632a6fad0111ec72aacc61c7387380eb87933fd1d098856387d418bd38e77d897e65d6fe35951d0627c550b +aabe2328ddf90989b15e409b91ef055cb02757d34987849ae6d60bef2c902bf8251ed21ab30acf39e500d1d511e90845 +92ba4eb1f796bc3d8b03515f65c045b66e2734c2da3fc507fdd9d6b5d1e19ab3893726816a32141db7a31099ca817d96 +8a98b3cf353138a1810beb60e946183803ef1d39ac4ea92f5a1e03060d35a4774a6e52b14ead54f6794d5f4022b8685c +909f8a5c13ec4a59b649ed3bee9f5d13b21d7f3e2636fd2bb3413c0646573fdf9243d63083356f12f5147545339fcd55 +9359d914d1267633141328ed0790d81c695fea3ddd2d406c0df3d81d0c64931cf316fe4d92f4353c99ff63e2aefc4e34 +b88302031681b54415fe8fbfa161c032ea345c6af63d2fb8ad97615103fd4d4281c5a9cae5b0794c4657b97571a81d3b +992c80192a519038082446b1fb947323005b275e25f2c14c33cc7269e0ec038581cc43705894f94bad62ae33a8b7f965 +a78253e3e3eece124bef84a0a8807ce76573509f6861d0b6f70d0aa35a30a123a9da5e01e84969708c40b0669eb70aa6 +8d5724de45270ca91c94792e8584e676547d7ac1ac816a6bb9982ee854eb5df071d20545cdfd3771cd40f90e5ba04c8e +825a6f586726c68d45f00ad0f5a4436523317939a47713f78fd4fe81cd74236fdac1b04ecd97c2d0267d6f4981d7beb1 +93e02b6052719f607dacd3a088274f65596bd0d09920b61ab5da61bbdc7f5049334cf11213945d57e5ac7d055d042b7e024aa2b2f08f0a91260805272dc51051c6e47ad4fa403b02b4510b647ae3d1770bac0326a805bbefd48056c8c121bdb8 +b5bfd7dd8cdeb128843bc287230af38926187075cbfbefa81009a2ce615ac53d2914e5870cb452d2afaaab24f3499f72185cbfee53492714734429b7b38608e23926c911cceceac9a36851477ba4c60b087041de621000edc98edada20c1def2 +b5337ba0ce5d37224290916e268e2060e5c14f3f9fc9e1ec3af5a958e7a0303122500ce18f1a4640bf66525bd10e763501fe986d86649d8d45143c08c3209db3411802c226e9fe9a55716ac4a0c14f9dcef9e70b2bb309553880dc5025eab3cc +b3c1dcdc1f62046c786f0b82242ef283e7ed8f5626f72542aa2c7a40f14d9094dd1ebdbd7457ffdcdac45fd7da7e16c51200b06d791e5e43e257e45efdf0bd5b06cd2333beca2a3a84354eb48662d83aef5ecf4e67658c851c10b13d8d87c874 +954d91c7688983382609fca9e211e461f488a5971fd4e40d7e2892037268eacdfd495cfa0a7ed6eb0eb11ac3ae6f651716757e7526abe1e06c64649d80996fd3105c20c4c94bc2b22d97045356fe9d791f21ea6428ac48db6f9e68e30d875280 +88a6b6bb26c51cf9812260795523973bb90ce80f6820b6c9048ab366f0fb96e48437a7f7cb62aedf64b11eb4dfefebb0147608793133d32003cb1f2dc47b13b5ff45f1bb1b2408ea45770a08dbfaec60961acb8119c47b139a13b8641e2c9487 +85cd7be9728bd925d12f47fb04b32d9fad7cab88788b559f053e69ca18e463113ecc8bbb6dbfb024835f901b3a957d3108d6770fb26d4c8be0a9a619f6e3a4bf15cbfd48e61593490885f6cee30e4300c5f9cf5e1c08e60a2d5b023ee94fcad0 +80477dba360f04399821a48ca388c0fa81102dd15687fea792ee8c1114e00d1bc4839ad37ac58900a118d863723acfbe08126ea883be87f50e4eabe3b5e72f5d9e041db8d9b186409fd4df4a7dde38c0e0a3b1ae29b098e5697e7f110b6b27e4 +b7a6aec08715a9f8672a2b8c367e407be37e59514ac19dd4f0942a68007bba3923df22da48702c63c0d6b3efd3c2d04e0fe042d8b5a54d562f9f33afc4865dcbcc16e99029e25925580e87920c399e710d438ac1ce3a6dc9b0d76c064a01f6f7 +ac1b001edcea02c8258aeffbf9203114c1c874ad88dae1184fadd7d94cd09053649efd0ca413400e6e9b5fa4eac33261000af88b6bd0d2abf877a4f0355d2fb4d6007adb181695201c5432e50b850b51b3969f893bddf82126c5a71b042b7686 +90043fda4de53fb364fab2c04be5296c215599105ecff0c12e4917c549257125775c29f2507124d15f56e30447f367db0596c33237242c02d83dfd058735f1e3c1ff99069af55773b6d51d32a68bf75763f59ec4ee7267932ae426522b8aaab6 +a8660ce853e9dc08271bf882e29cd53397d63b739584dda5263da4c7cc1878d0cf6f3e403557885f557e184700575fee016ee8542dec22c97befe1d10f414d22e84560741cdb3e74c30dda9b42eeaaf53e27822de2ee06e24e912bf764a9a533 +8fe3921a96d0d065e8aa8fce9aa42c8e1461ca0470688c137be89396dd05103606dab6cdd2a4591efd6addf72026c12e065da7be276dee27a7e30afa2bd81c18f1516e7f068f324d0bad9570b95f6bd02c727cd2343e26db0887c3e4e26dceda +8ae1ad97dcb9c192c9a3933541b40447d1dc4eebf380151440bbaae1e120cc5cdf1bcea55180b128d8e180e3af623815191d063cc0d7a47d55fb7687b9d87040bf7bc1a7546b07c61db5ccf1841372d7c2fe4a5431ffff829f3c2eb590b0b710 +8c2fa96870a88150f7876c931e2d3cc2adeaaaf5c73ef5fa1cf9dfa0991ae4819f9321af7e916e5057d87338e630a2f21242c29d76963cf26035b548d2a63d8ad7bd6efefa01c1df502cbdfdfe0334fb21ceb9f686887440f713bf17a89b8081 +b9aa98e2f02bb616e22ee5dd74c7d1049321ac9214d093a738159850a1dbcc7138cb8d26ce09d8296368fd5b291d74fa17ac7cc1b80840fdd4ee35e111501e3fa8485b508baecda7c1ab7bd703872b7d64a2a40b3210b6a70e8a6ffe0e5127e3 +9292db67f8771cdc86854a3f614a73805bf3012b48f1541e704ea4015d2b6b9c9aaed36419769c87c49f9e3165f03edb159c23b3a49c4390951f78e1d9b0ad997129b17cdb57ea1a6638794c0cca7d239f229e589c5ae4f9fe6979f7f8cba1d7 +91cd9e86550f230d128664f7312591fee6a84c34f5fc7aed557bcf986a409a6de722c4330453a305f06911d2728626e611acfdf81284f77f60a3a1595053a9479964fd713117e27c0222cc679674b03bc8001501aaf9b506196c56de29429b46 +a9516b73f605cc31b89c68b7675dc451e6364595243d235339437f556cf22d745d4250c1376182273be2d99e02c10eee047410a43eff634d051aeb784e76cb3605d8e079b9eb6ad1957dfdf77e1cd32ce4a573c9dfcc207ca65af6eb187f6c3d +a9667271f7d191935cc8ad59ef3ec50229945faea85bfdfb0d582090f524436b348aaa0183b16a6231c00332fdac2826125b8c857a2ed9ec66821cfe02b3a2279be2412441bc2e369b255eb98614e4be8490799c4df22f18d47d24ec70bba5f7 +a4371144d2aa44d70d3cb9789096d3aa411149a6f800cb46f506461ee8363c8724667974252f28aea61b6030c05930ac039c1ee64bb4bd56532a685cae182bf2ab935eee34718cffcb46cae214c77aaca11dbb1320faf23c47247db1da04d8dc +89a7eb441892260b7e81168c386899cd84ffc4a2c5cad2eae0d1ab9e8b5524662e6f660fe3f8bfe4c92f60b060811bc605b14c5631d16709266886d7885a5eb5930097127ec6fb2ebbaf2df65909cf48f253b3d5e22ae48d3e9a2fd2b01f447e +9648c42ca97665b5eccb49580d8532df05eb5a68db07f391a2340769b55119eaf4c52fe4f650c09250fa78a76c3a1e271799b8333cc2628e3d4b4a6a3e03da1f771ecf6516dd63236574a7864ff07e319a6f11f153406280d63af9e2b5713283 +9663bf6dd446ea7a90658ee458578d4196dc0b175ef7fcfa75f44d41670850774c2e46c5a6be132a2c072a3c0180a24f0305d1acac49d2d79878e5cda80c57feda3d01a6af12e78b5874e2a4b3717f11c97503b41a4474e2e95b179113726199 +b212aeb4814e0915b432711b317923ed2b09e076aaf558c3ae8ef83f9e15a83f9ea3f47805b2750ab9e8106cb4dc6ad003522c84b03dc02829978a097899c773f6fb31f7fe6b8f2d836d96580f216fec20158f1590c3e0d7850622e15194db05 +925f005059bf07e9ceccbe66c711b048e236ade775720d0fe479aebe6e23e8af281225ad18e62458dc1b03b42ad4ca290d4aa176260604a7aad0d9791337006fbdebe23746f8060d42876f45e4c83c3643931392fde1cd13ff8bddf8111ef974 +9553edb22b4330c568e156a59ef03b26f5c326424f830fe3e8c0b602f08c124730ffc40bc745bec1a22417adb22a1a960243a10565c2be3066bfdb841d1cd14c624cd06e0008f4beb83f972ce6182a303bee3fcbcabc6cfe48ec5ae4b7941bfc +935f5a404f0a78bdcce709899eda0631169b366a669e9b58eacbbd86d7b5016d044b8dfc59ce7ed8de743ae16c2343b50e2f925e88ba6319e33c3fc76b314043abad7813677b4615c8a97eb83cc79de4fedf6ccbcfa4d4cbf759a5a84e4d9742 +a5b014ab936eb4be113204490e8b61cd38d71da0dec7215125bcd131bf3ab22d0a32ce645bca93e7b3637cf0c2db3d6601a0ddd330dc46f9fae82abe864ffc12d656c88eb50c20782e5bb6f75d18760666f43943abb644b881639083e122f557 +935b7298ae52862fa22bf03bfc1795b34c70b181679ae27de08a9f5b4b884f824ef1b276b7600efa0d2f1d79e4a470d51692fd565c5cf8343dd80e5d3336968fc21c09ba9348590f6206d4424eb229e767547daefa98bc3aa9f421158dee3f2a +9830f92446e708a8f6b091cc3c38b653505414f8b6507504010a96ffda3bcf763d5331eb749301e2a1437f00e2415efb01b799ad4c03f4b02de077569626255ac1165f96ea408915d4cf7955047620da573e5c439671d1fa5c833fb11de7afe6 +840dcc44f673fff3e387af2bb41e89640f2a70bcd2b92544876daa92143f67c7512faf5f90a04b7191de01f3e2b1bde00622a20dc62ca23bbbfaa6ad220613deff43908382642d4d6a86999f662efd64b1df448b68c847cfa87630a3ffd2ec76 +92950c895ed54f7f876b2fda17ecc9c41b7accfbdd42c210cc5b475e0737a7279f558148531b5c916e310604a1de25a80940c94fe5389ae5d6a5e9c371be67bceea1877f5401725a6595bcf77ece60905151b6dfcb68b75ed2e708c73632f4fd +8010246bf8e94c25fd029b346b5fbadb404ef6f44a58fd9dd75acf62433d8cc6db66974f139a76e0c26dddc1f329a88214dbb63276516cf325c7869e855d07e0852d622c332ac55609ba1ec9258c45746a2aeb1af0800141ee011da80af175d4 +b0f1bad257ebd187bdc3f37b23f33c6a5d6a8e1f2de586080d6ada19087b0e2bf23b79c1b6da1ee82271323f5bdf3e1b018586b54a5b92ab6a1a16bb3315190a3584a05e6c37d5ca1e05d702b9869e27f513472bcdd00f4d0502a107773097da +9636d24f1ede773ce919f309448dd7ce023f424afd6b4b69cb98c2a988d849a283646dc3e469879daa1b1edae91ae41f009887518e7eb5578f88469321117303cd3ac2d7aee4d9cb5f82ab9ae3458e796dfe7c24284b05815acfcaa270ff22e2 +b373feb5d7012fd60578d7d00834c5c81df2a23d42794fed91aa9535a4771fde0341c4da882261785e0caca40bf83405143085e7f17e55b64f6c5c809680c20b050409bf3702c574769127c854d27388b144b05624a0e24a1cbcc4d08467005b +b15680648949ce69f82526e9b67d9b55ce5c537dc6ab7f3089091a9a19a6b90df7656794f6edc87fb387d21573ffc847062623685931c2790a508cbc8c6b231dd2c34f4d37d4706237b1407673605a604bcf6a50cc0b1a2db20485e22b02c17e +8817e46672d40c8f748081567b038a3165f87994788ec77ee8daea8587f5540df3422f9e120e94339be67f186f50952504cb44f61e30a5241f1827e501b2de53c4c64473bcc79ab887dd277f282fbfe47997a930dd140ac08b03efac88d81075 +a6e4ef6c1d1098f95aae119905f87eb49b909d17f9c41bcfe51127aa25fee20782ea884a7fdf7d5e9c245b5a5b32230b07e0dbf7c6743bf52ee20e2acc0b269422bd6cf3c07115df4aa85b11b2c16630a07c974492d9cdd0ec325a3fabd95044 +8634aa7c3d00e7f17150009698ce440d8e1b0f13042b624a722ace68ead870c3d2212fbee549a2c190e384d7d6ac37ce14ab962c299ea1218ef1b1489c98906c91323b94c587f1d205a6edd5e9d05b42d591c26494a6f6a029a2aadb5f8b6f67 +821a58092900bdb73decf48e13e7a5012a3f88b06288a97b855ef51306406e7d867d613d9ec738ebacfa6db344b677d21509d93f3b55c2ebf3a2f2a6356f875150554c6fff52e62e3e46f7859be971bf7dd9d5b3e1d799749c8a97c2e04325df +8dba356577a3a388f782e90edb1a7f3619759f4de314ad5d95c7cc6e197211446819c4955f99c5fc67f79450d2934e3c09adefc91b724887e005c5190362245eec48ce117d0a94d6fa6db12eda4ba8dde608fbbd0051f54dcf3bb057adfb2493 +a32a690dc95c23ed9fb46443d9b7d4c2e27053a7fcc216d2b0020a8cf279729c46114d2cda5772fd60a97016a07d6c5a0a7eb085a18307d34194596f5b541cdf01b2ceb31d62d6b55515acfd2b9eec92b27d082fbc4dc59fc63b551eccdb8468 +a040f7f4be67eaf0a1d658a3175d65df21a7dbde99bfa893469b9b43b9d150fc2e333148b1cb88cfd0447d88fa1a501d126987e9fdccb2852ecf1ba907c2ca3d6f97b055e354a9789854a64ecc8c2e928382cf09dda9abde42bbdf92280cdd96 +864baff97fa60164f91f334e0c9be00a152a416556b462f96d7c43b59fe1ebaff42f0471d0bf264976f8aa6431176eb905bd875024cf4f76c13a70bede51dc3e47e10b9d5652d30d2663b3af3f08d5d11b9709a0321aba371d2ef13174dcfcaf +95a46f32c994133ecc22db49bad2c36a281d6b574c83cfee6680b8c8100466ca034b815cfaedfbf54f4e75188e661df901abd089524e1e0eb0bf48d48caa9dd97482d2e8c1253e7e8ac250a32fd066d5b5cb08a8641bdd64ecfa48289dca83a3 +a2cce2be4d12144138cb91066e0cd0542c80b478bf467867ebef9ddaf3bd64e918294043500bf5a9f45ee089a8d6ace917108d9ce9e4f41e7e860cbce19ac52e791db3b6dde1c4b0367377b581f999f340e1d6814d724edc94cb07f9c4730774 +b145f203eee1ac0a1a1731113ffa7a8b0b694ef2312dabc4d431660f5e0645ef5838e3e624cfe1228cfa248d48b5760501f93e6ab13d3159fc241427116c4b90359599a4cb0a86d0bb9190aa7fabff482c812db966fd2ce0a1b48cb8ac8b3bca +adabe5d215c608696e03861cbd5f7401869c756b3a5aadc55f41745ad9478145d44393fec8bb6dfc4ad9236dc62b9ada0f7ca57fe2bae1b71565dbf9536d33a68b8e2090b233422313cc96afc7f1f7e0907dc7787806671541d6de8ce47c4cd0 +ae7845fa6b06db53201c1080e01e629781817f421f28956589c6df3091ec33754f8a4bd4647a6bb1c141ac22731e3c1014865d13f3ed538dcb0f7b7576435133d9d03be655f8fbb4c9f7d83e06d1210aedd45128c2b0c9bab45a9ddde1c862a5 +9159eaa826a24adfa7adf6e8d2832120ebb6eccbeb3d0459ffdc338548813a2d239d22b26451fda98cc0c204d8e1ac69150b5498e0be3045300e789bcb4e210d5cd431da4bdd915a21f407ea296c20c96608ded0b70d07188e96e6c1a7b9b86b +a9fc6281e2d54b46458ef564ffaed6944bff71e389d0acc11fa35d3fcd8e10c1066e0dde5b9b6516f691bb478e81c6b20865281104dcb640e29dc116daae2e884f1fe6730d639dbe0e19a532be4fb337bf52ae8408446deb393d224eee7cfa50 +84291a42f991bfb36358eedead3699d9176a38f6f63757742fdbb7f631f2c70178b1aedef4912fed7b6cf27e88ddc7eb0e2a6aa4b999f3eb4b662b93f386c8d78e9ac9929e21f4c5e63b12991fcde93aa64a735b75b535e730ff8dd2abb16e04 +a1b7fcacae181495d91765dfddf26581e8e39421579c9cbd0dd27a40ea4c54af3444a36bf85a11dda2114246eaddbdd619397424bb1eb41b5a15004b902a590ede5742cd850cf312555be24d2df8becf48f5afba5a8cd087cb7be0a521728386 +92feaaf540dbd84719a4889a87cdd125b7e995a6782911931fef26da9afcfbe6f86aaf5328fe1f77631491ce6239c5470f44c7791506c6ef1626803a5794e76d2be0af92f7052c29ac6264b7b9b51f267ad820afc6f881460521428496c6a5f1 +a525c925bfae1b89320a5054acc1fa11820f73d0cf28d273092b305467b2831fab53b6daf75fb926f332782d50e2522a19edcd85be5eb72f1497193c952d8cd0bcc5d43b39363b206eae4cb1e61668bde28a3fb2fc1e0d3d113f6dfadb799717 +98752bb6f5a44213f40eda6aa4ff124057c1b13b6529ab42fe575b9afa66e59b9c0ed563fb20dff62130c436c3e905ee17dd8433ba02c445b1d67182ab6504a90bbe12c26a754bbf734665c622f76c62fe2e11dd43ce04fd2b91a8463679058b +a9aa9a84729f7c44219ff9e00e651e50ddea3735ef2a73fdf8ed8cd271961d8ed7af5cd724b713a89a097a3fe65a3c0202f69458a8b4c157c62a85668b12fc0d3957774bc9b35f86c184dd03bfefd5c325da717d74192cc9751c2073fe9d170e +b221c1fd335a4362eff504cd95145f122bf93ea02ae162a3fb39c75583fc13a932d26050e164da97cff3e91f9a7f6ff80302c19dd1916f24acf6b93b62f36e9665a8785413b0c7d930c7f1668549910f849bca319b00e59dd01e5dec8d2edacc +a71e2b1e0b16d754b848f05eda90f67bedab37709550171551050c94efba0bfc282f72aeaaa1f0330041461f5e6aa4d11537237e955e1609a469d38ed17f5c2a35a1752f546db89bfeff9eab78ec944266f1cb94c1db3334ab48df716ce408ef +b990ae72768779ba0b2e66df4dd29b3dbd00f901c23b2b4a53419226ef9232acedeb498b0d0687c463e3f1eead58b20b09efcefa566fbfdfe1c6e48d32367936142d0a734143e5e63cdf86be7457723535b787a9cfcfa32fe1d61ad5a2617220 +8d27e7fbff77d5b9b9bbc864d5231fecf817238a6433db668d5a62a2c1ee1e5694fdd90c3293c06cc0cb15f7cbeab44d0d42be632cb9ff41fc3f6628b4b62897797d7b56126d65b694dcf3e298e3561ac8813fbd7296593ced33850426df42db +a92039a08b5502d5b211a7744099c9f93fa8c90cedcb1d05e92f01886219dd464eb5fb0337496ad96ed09c987da4e5f019035c5b01cc09b2a18b8a8dd419bc5895388a07e26958f6bd26751929c25f89b8eb4a299d822e2d26fec9ef350e0d3c +92dcc5a1c8c3e1b28b1524e3dd6dbecd63017c9201da9dbe077f1b82adc08c50169f56fc7b5a3b28ec6b89254de3e2fd12838a761053437883c3e01ba616670cea843754548ef84bcc397de2369adcca2ab54cd73c55dc68d87aec3fc2fe4f10 diff --git a/orchestrator/crates/settlement-clients/ethereum/src/types.rs b/orchestrator/crates/settlement-clients/ethereum/src/types.rs new file mode 100644 index 000000000..9c6789248 --- /dev/null +++ b/orchestrator/crates/settlement-clients/ethereum/src/types.rs @@ -0,0 +1,101 @@ +use alloy::network::{Ethereum, EthereumWallet}; +use alloy::providers::fillers::{BlobGasFiller, ChainIdFiller, FillProvider, GasFiller, JoinFill, NonceFiller, WalletFiller}; +use alloy::providers::{Identity, RootProvider}; +use alloy::transports::http::{Client, Http}; +use alloy_primitives::U256; + +pub type LocalWalletSignerMiddleware = FillProvider< + JoinFill< + JoinFill>>>, + WalletFiller, + >, + RootProvider>, + Http, + Ethereum, +>; + +pub type EthHttpProvider = FillProvider< + JoinFill< + JoinFill, NonceFiller>, ChainIdFiller>, + WalletFiller, + >, + RootProvider>, + Http, + Ethereum, +>; + +pub fn convert_stark_bigint_to_u256(y_low: u128, y_high: u128) -> U256 { + let y_high_u256 = U256::from(y_high); + let y_low_u256 = U256::from(y_low); + let shifted = y_high_u256 << 128; + shifted + y_low_u256 +} + +pub fn bytes_be_to_u128(bytes: &[u8; 32]) -> u128 { + let mut result: u128 = 0; + + // Since u128 is 16 bytes, we'll use the last 16 bytes of the input array + // Starting from index 16 to get the least significant bytes + for &byte in bytes[16..32].iter() { + result = (result << 8) | byte as u128; + } + + result +} + +#[cfg(test)] +mod tests { + use rstest::*; + + use super::*; + + #[rstest] + #[case(0, 0, U256::from(0))] + #[case(12345, 0, U256::from(12345u128))] + #[case(0, 67890, U256::from(67890u128) << 128)] + #[case(u128::MAX, 1, (U256::from(1u128) << 128) + U256::from(u128::MAX))] + #[case(u128::MAX, u128::MAX, U256::MAX)] + fn test_convert_stark_bigint_to_u256(#[case] y_low: u128, #[case] y_high: u128, #[case] expected: U256) { + let result = convert_stark_bigint_to_u256(y_low, y_high); + assert_eq!(result, expected); + } + + // Helper function to create test bytes + fn create_test_bytes(values: &[(usize, u8)]) -> [u8; 32] { + let mut bytes = [0u8; 32]; + for &(index, value) in values { + bytes[index] = value; + } + bytes + } + + #[rstest] + #[case::all_zeros(&[], 0u128)] + #[case::last_byte_is_1(&[(31, 1)], 1u128)] + #[case::last_byte_is_255(&[(31, 255)], 255u128)] + #[case::last_two_bytes(&[(30, 1), (31, 255)], 511u128)] + #[case(&[(20, 1), (25, 2), (31, 3)], (1u128 << 88) | (2u128 << 48) | 3u128)] + #[case(&[(16, 1)], 1u128 << 120)] + #[case(&[(31, 1), (30, 1), (29, 1)], 0x010101u128)] + fn test_bytes_to_u128(#[case] byte_values: &[(usize, u8)], #[case] expected: u128) { + let bytes = create_test_bytes(byte_values); + let result = bytes_be_to_u128(&bytes); + assert_eq!(result, expected); + } + + #[rstest] + fn test_bytes_to_u128_ignores_first_16_bytes() { + let mut bytes = [255u8; 32]; + bytes[16..32].fill(0); + let result = bytes_be_to_u128(&bytes); + assert_eq!(result, 0); + } + + #[rstest] + fn test_bytes_to_u128_max_value() { + let mut bytes = [0u8; 32]; + bytes[16..32].fill(255); + let result = bytes_be_to_u128(&bytes); + assert_eq!(result, u128::MAX); + } +} diff --git a/orchestrator/crates/settlement-clients/settlement-client-interface/Cargo.toml b/orchestrator/crates/settlement-clients/settlement-client-interface/Cargo.toml new file mode 100644 index 000000000..d6a4cc7b3 --- /dev/null +++ b/orchestrator/crates/settlement-clients/settlement-client-interface/Cargo.toml @@ -0,0 +1,16 @@ +[package] +name = "settlement-client-interface" +version.workspace = true +edition.workspace = true +authors.workspace = true + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +async-trait = { workspace = true } +axum = { workspace = true } +c-kzg = { workspace = true } +color-eyre = { workspace = true } +mockall = { workspace = true } +starknet = { workspace = true } +utils = { workspace = true } diff --git a/orchestrator/crates/settlement-clients/settlement-client-interface/src/lib.rs b/orchestrator/crates/settlement-clients/settlement-client-interface/src/lib.rs new file mode 100644 index 000000000..92f6729c0 --- /dev/null +++ b/orchestrator/crates/settlement-clients/settlement-client-interface/src/lib.rs @@ -0,0 +1,50 @@ +use async_trait::async_trait; +use color_eyre::eyre::Result; +use mockall::automock; +use mockall::predicate::*; + +pub const SETTLEMENT_SETTINGS_NAME: &str = "settlement_settings"; + +#[derive(Debug, Clone, PartialEq, Eq)] +pub enum SettlementVerificationStatus { + Pending, + Verified, + Rejected(String), +} + +/// Trait for every new Settlement Layer to implement +#[automock] +#[async_trait] +pub trait SettlementClient: Send + Sync { + /// Should register the proof on the base layer and return an external id + /// which can be used to track the status. + async fn register_proof(&self, proof: [u8; 32]) -> Result; + + /// Should be used to update state on core contract when DA is done in calldata + async fn update_state_calldata( + &self, + program_output: Vec<[u8; 32]>, + onchain_data_hash: [u8; 32], + onchain_data_size: [u8; 32], + ) -> Result; + + /// Should be used to update state on contract and publish the blob on ethereum. + async fn update_state_with_blobs( + &self, + program_output: Vec<[u8; 32]>, + state_diff: Vec>, + nonce: u64, + ) -> Result; + + /// Should verify the inclusion of a tx in the settlement layer + async fn verify_tx_inclusion(&self, tx_hash: &str) -> Result; + + /// Should wait that the pending tx_hash is finalized + async fn wait_for_tx_finality(&self, tx_hash: &str) -> Result>; + + /// Should retrieves the last settled block in the settlement layer + async fn get_last_settled_block(&self) -> Result; + + /// Should retrieve the latest transaction count to be used as nonce. + async fn get_nonce(&self) -> Result; +} diff --git a/orchestrator/crates/settlement-clients/starknet/Cargo.toml b/orchestrator/crates/settlement-clients/starknet/Cargo.toml new file mode 100644 index 000000000..13b8663ad --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/Cargo.toml @@ -0,0 +1,47 @@ +[package] +name = "starknet-settlement-client" +version.workspace = true +edition.workspace = true + +[dependencies] +alloy = { workspace = true, features = ["full", "node-bindings"] } +alloy-primitives = { workspace = true, default-features = false } +appchain-core-contract-client = { workspace = true } +async-trait = { workspace = true } +c-kzg = { workspace = true } +color-eyre = { workspace = true } +crypto-bigint = { workspace = true } +dotenvy.workspace = true +lazy_static = { workspace = true } +log = { workspace = true } +mockall = { workspace = true } +reqwest = { workspace = true } +rstest = { workspace = true } +serde = { workspace = true } +settlement-client-interface = { workspace = true } +starknet = { workspace = true } +tempfile.workspace = true +tokio = { workspace = true } +url = { workspace = true } +utils = { workspace = true } + +#Instrumentation +opentelemetry = { workspace = true, features = ["metrics", "logs"] } +opentelemetry-appender-tracing = { workspace = true, default-features = false } +opentelemetry-otlp = { workspace = true, features = [ + "tonic", + "metrics", + "logs", +] } +opentelemetry-semantic-conventions = { workspace = true } +opentelemetry_sdk = { workspace = true, features = ["rt-tokio", "logs"] } +tracing = { workspace = true } +tracing-core = { workspace = true, default-features = false } +tracing-opentelemetry = { workspace = true } +tracing-subscriber = { workspace = true, features = ["env-filter"] } + + +[dev-dependencies] +async-std.workspace = true +serde_json.workspace = true +tokio-test = "*" diff --git a/orchestrator/crates/settlement-clients/starknet/src/config.rs b/orchestrator/crates/settlement-clients/starknet/src/config.rs new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/config.rs @@ -0,0 +1 @@ + diff --git a/orchestrator/crates/settlement-clients/starknet/src/conversion.rs b/orchestrator/crates/settlement-clients/starknet/src/conversion.rs new file mode 100644 index 000000000..1b0f12ae4 --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/conversion.rs @@ -0,0 +1,38 @@ +use color_eyre::Result; +use starknet::core::types::Felt; + +pub(crate) fn slice_slice_u8_to_vec_field(slices: &[[u8; 32]]) -> Vec { + slices.iter().map(slice_u8_to_field).collect() +} + +pub(crate) fn slice_u8_to_field(slice: &[u8; 32]) -> Felt { + Felt::from_bytes_be_slice(slice) +} + +pub(crate) fn u64_from_felt(number: Felt) -> Result { + let bytes = number.to_bytes_be(); + + for x in &bytes[0..24] { + if *x != 0 { + return Err(color_eyre::Report::msg("byte should be zero, cannot convert to Felt")); + } + } + Ok(u64::from_be_bytes(bytes[24..32].try_into()?)) +} + +#[test] +fn test_u64_from_from_felt_ok() { + let number = 10.into(); + let converted = u64_from_felt(number); + assert!(converted.expect("Failed to convert to u64") == 10u64, "Incorrect value conversion"); +} + +#[test] +fn test_u64_from_from_felt_panic() { + let number = Felt::MAX; + let number = u64_from_felt(number); + match number { + Ok(n) => tracing::debug!("Nonce value from get_nonce: {:?}", n), + Err(e) => tracing::error!("Error getting nonce: {:?}", e), + } +} diff --git a/orchestrator/crates/settlement-clients/starknet/src/lib.rs b/orchestrator/crates/settlement-clients/starknet/src/lib.rs new file mode 100644 index 000000000..b9b5598bb --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/lib.rs @@ -0,0 +1,261 @@ +pub mod config; +pub mod conversion; +#[cfg(test)] +pub mod tests; + +use std::sync::Arc; + +use appchain_core_contract_client::clients::StarknetCoreContractClient; +use appchain_core_contract_client::interfaces::core_contract::CoreContract; +use async_trait::async_trait; +use color_eyre::eyre::{eyre, WrapErr}; +use color_eyre::Result; +use crypto_bigint::Encoding; +use lazy_static::lazy_static; +use mockall::automock; +use mockall::predicate::*; +use settlement_client_interface::{SettlementClient, SettlementVerificationStatus}; +use starknet::accounts::{ConnectedAccount, ExecutionEncoding, SingleOwnerAccount}; +use starknet::core::types::{BlockId, BlockTag, Felt, FunctionCall, TransactionExecutionStatus}; +use starknet::core::utils::get_selector_from_name; +use starknet::providers::jsonrpc::HttpTransport; +use starknet::providers::{JsonRpcClient, Provider}; +use starknet::signers::{LocalWallet, SigningKey}; +use tokio::time::{sleep, Duration}; + +use crate::conversion::{slice_slice_u8_to_vec_field, slice_u8_to_field, u64_from_felt}; + +pub type LocalWalletSignerMiddleware = Arc>, LocalWallet>>; + +pub struct StarknetSettlementClient { + pub account: LocalWalletSignerMiddleware, + pub starknet_core_contract_client: StarknetCoreContractClient, + pub core_contract_address: Felt, + pub tx_finality_retry_delay_in_seconds: u64, +} + +pub const ENV_ACCOUNT_ADDRESS: &str = "MADARA_ORCHESTRATOR_STARKNET_ACCOUNT_ADDRESS"; +pub const ENV_PRIVATE_KEY: &str = "MADARA_ORCHESTRATOR_STARKNET_PRIVATE_KEY"; + +const MAX_RETRIES_VERIFY_TX_FINALITY: usize = 10; + +use url::Url; +#[derive(Clone, Debug)] +pub struct StarknetSettlementValidatedArgs { + pub starknet_rpc_url: Url, + pub starknet_private_key: String, + pub starknet_account_address: String, + pub starknet_cairo_core_contract_address: String, + pub starknet_finality_retry_wait_in_secs: u64, +} + +// Assumed the contract called for settlement looks like: +// https://github.com/keep-starknet-strange/piltover + +impl StarknetSettlementClient { + pub async fn new_with_args(settlement_cfg: &StarknetSettlementValidatedArgs) -> Self { + let provider: Arc> = + Arc::new(JsonRpcClient::new(HttpTransport::new(settlement_cfg.starknet_rpc_url.clone()))); + + let public_key = settlement_cfg.starknet_account_address.clone().to_string(); + let signer_address = Felt::from_hex(&public_key).expect("invalid signer address"); + + // TODO: Very insecure way of building the signer. Needs to be adjusted. + let private_key = settlement_cfg.starknet_private_key.clone(); + let signer = Felt::from_hex(&private_key).expect("Invalid private key"); + let signer = LocalWallet::from(SigningKey::from_secret_scalar(signer)); + + let core_contract_address = Felt::from_hex(&settlement_cfg.starknet_cairo_core_contract_address.to_string()) + .expect("Invalid core contract address"); + + let account: Arc>, LocalWallet>> = + Arc::new(SingleOwnerAccount::new( + provider.clone(), + signer.clone(), + signer_address, + provider.chain_id().await.expect("Failed to get chain id"), + ExecutionEncoding::New, + )); + + let starknet_core_contract_client: StarknetCoreContractClient = + StarknetCoreContractClient::new(core_contract_address, account.clone()); + + StarknetSettlementClient { + account, + core_contract_address, + starknet_core_contract_client, + tx_finality_retry_delay_in_seconds: settlement_cfg.starknet_finality_retry_wait_in_secs, + } + } +} + +lazy_static! { + pub static ref CONTRACT_WRITE_UPDATE_STATE_SELECTOR: Felt = + get_selector_from_name("update_state").expect("Invalid update state selector"); + // TODO: `stateBlockNumber` does not exists yet in our implementation: + // https://github.com/keep-starknet-strange/piltover + // It should get added to match the solidity implementation of the core contract. + pub static ref CONTRACT_READ_STATE_BLOCK_NUMBER: Felt = + get_selector_from_name("stateBlockNumber").expect("Invalid update state selector"); +} + +// TODO: Note that we already have an implementation of the appchain core contract client available +// here: https://github.com/keep-starknet-strange/zaun/tree/main/crates/l3/appchain-core-contract-client +// However, this implementation uses different Felt types, and incorporating all of them +// into this repository would introduce unnecessary complexity. +// Therefore, we will wait for the update of starknet_rs in the Zaun repository before adapting +// the StarknetSettlementClient implementation. + +#[automock] +#[async_trait] +impl SettlementClient for StarknetSettlementClient { + /// Should register the proof on the base layer and return an external id + /// which can be used to track the status. + #[allow(unused)] + async fn register_proof(&self, proof: [u8; 32]) -> Result { + !unimplemented!("register_proof not implemented yet") + } + + /// Should be used to update state on core contract when DA is done in calldata + async fn update_state_calldata( + &self, + program_output: Vec<[u8; 32]>, + onchain_data_hash: [u8; 32], + onchain_data_size: [u8; 32], + ) -> Result { + tracing::info!( + log_type = "starting", + category = "update_state", + function_type = "calldata", + "Updating state with calldata." + ); + let program_output = slice_slice_u8_to_vec_field(program_output.as_slice()); + let onchain_data_hash = slice_u8_to_field(&onchain_data_hash); + let core_contract: &CoreContract = self.starknet_core_contract_client.as_ref(); + let onchain_data_size = crypto_bigint::U256::from_be_bytes(onchain_data_size).into(); + let invoke_result = core_contract.update_state(program_output, onchain_data_hash, onchain_data_size).await?; + tracing::info!( + log_type = "completed", + category = "update_state", + function_type = "calldata", + "State updated with calldata." + ); + Ok(invoke_result.transaction_hash.to_hex_string()) + } + + /// Should verify the inclusion of a tx in the settlement layer + async fn verify_tx_inclusion(&self, tx_hash: &str) -> Result { + tracing::info!( + log_type = "starting", + category = "verify_tx", + function_type = "inclusion", + tx_hash = %tx_hash, + "Verifying tx inclusion." + ); + let tx_hash = Felt::from_hex(tx_hash)?; + let tx_receipt = self.account.provider().get_transaction_receipt(tx_hash).await?; + let execution_result = tx_receipt.receipt.execution_result(); + let status = execution_result.status(); + + match status { + TransactionExecutionStatus::Reverted => { + tracing::info!( + log_type = "completed", + category = "verify_tx", + tx_hash = %tx_hash, + function_type = "inclusion", + revert_reason = %execution_result.revert_reason().unwrap(), + "Tx inclusion verified." + ); + Ok(SettlementVerificationStatus::Rejected(format!( + "Transaction {} has been reverted: {}", + tx_hash, + execution_result.revert_reason().unwrap_or_default() + ))) + } + TransactionExecutionStatus::Succeeded => { + if tx_receipt.block.is_pending() { + tracing::info!( + log_type = "pending", + category = "verify_tx", + function_type = "inclusion", + tx_hash = %tx_hash, + "Tx inclusion pending." + ); + Ok(SettlementVerificationStatus::Pending) + } else { + tracing::info!( + log_type = "completed", + category = "verify_tx", + function_type = "inclusion", + tx_hash = %tx_hash, + "Tx inclusion verified." + ); + Ok(SettlementVerificationStatus::Verified) + } + } + } + } + + /// Should be used to update state on core contract and publishing the blob simultaneously + #[allow(unused)] + async fn update_state_with_blobs( + &self, + program_output: Vec<[u8; 32]>, + state_diff: Vec>, + nonce: u64, + ) -> Result { + !unimplemented!("not implemented yet.") + } + + /// Wait for a pending tx to achieve finality + async fn wait_for_tx_finality(&self, tx_hash: &str) -> Result> { + let mut retries = 0; + let duration_to_wait_between_polling = Duration::from_secs(self.tx_finality_retry_delay_in_seconds); + sleep(duration_to_wait_between_polling).await; + + let tx_hash = Felt::from_hex(tx_hash)?; + loop { + let tx_receipt = self.account.provider().get_transaction_receipt(tx_hash).await?; + if tx_receipt.block.is_pending() { + retries += 1; + if retries > MAX_RETRIES_VERIFY_TX_FINALITY { + return Err(eyre!("Max retries exceeeded while waiting for tx {tx_hash} finality.")); + } + sleep(duration_to_wait_between_polling).await; + } else { + break; + } + } + + let tx_receipt = self.account.provider().get_transaction_receipt(tx_hash).await?; + Ok(tx_receipt.block.block_number()) + } + + /// Returns the last block settled from the core contract. + async fn get_last_settled_block(&self) -> Result { + let block_number = self + .account + .provider() + .call( + FunctionCall { + contract_address: self.core_contract_address, + entry_point_selector: *CONTRACT_READ_STATE_BLOCK_NUMBER, + calldata: vec![], + }, + BlockId::Tag(BlockTag::Latest), + ) + .await?; + if block_number.is_empty() { + return Err(eyre!("Could not fetch last block number from core contract.")); + } + + u64_from_felt(block_number[0]).wrap_err("Failed to convert block number from Felt to u64") + } + + /// Returns the nonce for the wallet in use. + async fn get_nonce(&self) -> Result { + let nonce = self.account.get_nonce().await?; + Ok(u64_from_felt(nonce).expect("Failed to convert to u64")) + } +} diff --git a/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/.gitignore b/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/.gitignore new file mode 100644 index 000000000..73aa31e60 --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/.gitignore @@ -0,0 +1,2 @@ +target +.snfoundry_cache/ diff --git a/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/.tool-versions b/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/.tool-versions new file mode 100644 index 000000000..fca91f1c4 --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/.tool-versions @@ -0,0 +1,2 @@ +starknet-foundry 0.30.0 +scarb 2.8.2 diff --git a/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/Scarb.lock b/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/Scarb.lock new file mode 100644 index 000000000..8b9d48180 --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/Scarb.lock @@ -0,0 +1,22 @@ +# Code generated by scarb DO NOT EDIT. +version = 1 + +[[package]] +name = "mock_contracts" +version = "0.1.0" +dependencies = [ + "snforge_std", +] + +[[package]] +name = "snforge_scarb_plugin" +version = "0.1.0" +source = "git+https://github.com/foundry-rs/starknet-foundry?tag=v0.30.0#196f06b251926697c3d66800f2a93ae595e76496" + +[[package]] +name = "snforge_std" +version = "0.30.0" +source = "git+https://github.com/foundry-rs/starknet-foundry?tag=v0.30.0#196f06b251926697c3d66800f2a93ae595e76496" +dependencies = [ + "snforge_scarb_plugin", +] diff --git a/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/Scarb.toml b/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/Scarb.toml new file mode 100644 index 000000000..d02816bb3 --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/Scarb.toml @@ -0,0 +1,19 @@ +[package] +name = "mock_contracts" +version = "0.1.0" +edition = "2023_11" + +# See more keys and their definitions at https://docs.swmansion.com/scarb/docs/reference/manifest.html + +[dependencies] +starknet = "2.8.2" + +[dev-dependencies] +snforge_std = { git = "https://github.com/foundry-rs/starknet-foundry", tag = "v0.30.0" } + +[[target.starknet-contract]] +sierra = true +casm = true + +[scripts] +test = "snforge test" diff --git a/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/src/lib.cairo b/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/src/lib.cairo new file mode 100644 index 000000000..43577b0a7 --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/tests/mock_contracts/src/lib.cairo @@ -0,0 +1,36 @@ +#[starknet::interface] +pub trait IPiltover { + fn update_state( + ref self: TContractState, + program_output: Span, + onchain_data_hash: felt252, + onchain_data_size: u256 + ); + + fn get_is_updated(self: @TContractState, onchain_data_hash: felt252) -> bool; +} + +#[starknet::contract] +mod Piltover { + use starknet::storage::Map; + #[storage] + struct Storage { + is_updated: Map, + } + + #[abi(embed_v0)] + impl IPiltoverImpl of super::IPiltover { + fn update_state( + ref self: ContractState, + program_output: Span, + onchain_data_hash: felt252, + onchain_data_size: u256 + ) { + self.is_updated.write(onchain_data_hash, true); + } + + fn get_is_updated(self: @ContractState, onchain_data_hash: felt252) -> bool { + self.is_updated.read(onchain_data_hash) + } + } +} diff --git a/orchestrator/crates/settlement-clients/starknet/src/tests/mod.rs b/orchestrator/crates/settlement-clients/starknet/src/tests/mod.rs new file mode 100644 index 000000000..f67283f2a --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/tests/mod.rs @@ -0,0 +1,2 @@ +pub mod setup; +mod test; diff --git a/orchestrator/crates/settlement-clients/starknet/src/tests/preset.yml b/orchestrator/crates/settlement-clients/starknet/src/tests/preset.yml new file mode 100644 index 000000000..8b812a141 --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/tests/preset.yml @@ -0,0 +1,34 @@ +chain_name: "Madara" +chain_id: "MADARA_DEVNET" +native_fee_token_address: "0x04718f5a0fc34cc1af16a1cdee98ffb20c31f5cd61d6ab07201858f4287c938d" +parent_fee_token_address: "0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7" +versioned_constants: + "0.13.0": "./src/tests/resources/versioned_constants_13_0.json" + "0.13.1": "./src/tests/resources/versioned_constants_13_1.json" + "0.13.1.1": "./src/tests/resources/versioned_constants_13_1_1.json" + "0.13.2": "./src/tests/resources/versioned_constants_13_2.json" +latest_protocol_version: "0.13.2" +block_time: "100ms" +pending_block_update_time: 200ms +execution_batch_size: 16 +bouncer_config: + block_max_capacity: + builtin_count: + add_mod: 18446744073709551615 + bitwise: 18446744073709551615 + ecdsa: 18446744073709551615 + ec_op: 18446744073709551615 + keccak: 18446744073709551615 + mul_mod: 18446744073709551615 + pedersen: 18446744073709551615 + poseidon: 18446744073709551615 + range_check: 18446744073709551615 + range_check96: 18446744073709551615 + gas: 5000000 + message_segment_length: 18446744073709551615 + n_events: 18446744073709551615 + n_steps: 40000000 + state_diff_size: 131072 +sequencer_address: "0x123" +max_nonce_for_validation_skip: 2 +eth_core_contract_address: "0xE2Bb56ee936fd6433DC0F6e7e3b8365C906AA057" diff --git a/orchestrator/crates/settlement-clients/starknet/src/tests/resources/versioned_constants_13_0.json b/orchestrator/crates/settlement-clients/starknet/src/tests/resources/versioned_constants_13_0.json new file mode 100644 index 000000000..da8bc5023 --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/tests/resources/versioned_constants_13_0.json @@ -0,0 +1,509 @@ +{ + "gateway": { + "max_calldata_length": 4000, + "max_contract_bytecode_size": 61440 + }, + "invoke_tx_max_n_steps": 3000000, + "max_recursion_depth": 50, + "segment_arena_cells": true, + "os_constants": { + "nop_entry_point_offset": -1, + "entry_point_type_external": 0, + "entry_point_type_l1_handler": 1, + "entry_point_type_constructor": 2, + "l1_handler_version": 0, + "sierra_array_len_bound": 4294967296, + "constructor_entry_point_selector": "0x28ffe4ff0f226a9107253e17a904099aa4f63a02a5621de0576e5aa71bc5194", + "execute_entry_point_selector": "0x15d40a3d6ca2ac30f4031e42be28da9b056fef9bb7357ac5e85627ee876e5ad", + "validate_entry_point_selector": "0x162da33a4585851fe8d3af3c2a9c60b557814e221e0d4f30ff0b2189d9c7775", + "validate_declare_entry_point_selector": "0x289da278a8dc833409cabfdad1581e8e7d40e42dcaed693fa4008dcdb4963b3", + "validate_deploy_entry_point_selector": "0x36fcbf06cd96843058359e1a75928beacfac10727dab22a3972f0af8aa92895", + "transfer_entry_point_selector": "0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e", + "default_entry_point_selector": 0, + "block_hash_contract_address": 1, + "stored_block_hash_buffer": 10, + "step_gas_cost": 100, + "range_check_gas_cost": 70, + "memory_hole_gas_cost": 10, + "initial_gas_cost": { + "step_gas_cost": 100000000 + }, + "entry_point_initial_budget": { + "step_gas_cost": 100 + }, + "syscall_base_gas_cost": { + "step_gas_cost": 100 + }, + "entry_point_gas_cost": { + "entry_point_initial_budget": 1, + "step_gas_cost": 500 + }, + "fee_transfer_gas_cost": { + "entry_point_gas_cost": 1, + "step_gas_cost": 100 + }, + "transaction_gas_cost": { + "entry_point_gas_cost": 2, + "fee_transfer_gas_cost": 1, + "step_gas_cost": 100 + }, + "call_contract_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 10, + "entry_point_gas_cost": 1 + }, + "deploy_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 200, + "entry_point_gas_cost": 1 + }, + "get_block_hash_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "get_execution_info_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 10 + }, + "library_call_gas_cost": { + "call_contract_gas_cost": 1 + }, + "replace_class_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "storage_read_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "storage_write_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "emit_event_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 10 + }, + "send_message_to_l1_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "secp256k1_add_gas_cost": { + "step_gas_cost": 406, + "range_check_gas_cost": 29 + }, + "secp256k1_get_point_from_x_gas_cost": { + "step_gas_cost": 391, + "range_check_gas_cost": 30, + "memory_hole_gas_cost": 20 + }, + "secp256k1_get_xy_gas_cost": { + "step_gas_cost": 239, + "range_check_gas_cost": 11, + "memory_hole_gas_cost": 40 + }, + "secp256k1_mul_gas_cost": { + "step_gas_cost": 76401, + "range_check_gas_cost": 7045 + }, + "secp256k1_new_gas_cost": { + "step_gas_cost": 475, + "range_check_gas_cost": 35, + "memory_hole_gas_cost": 40 + }, + "secp256r1_add_gas_cost": { + "step_gas_cost": 589, + "range_check_gas_cost": 57 + }, + "secp256r1_get_point_from_x_gas_cost": { + "step_gas_cost": 510, + "range_check_gas_cost": 44, + "memory_hole_gas_cost": 20 + }, + "secp256r1_get_xy_gas_cost": { + "step_gas_cost": 241, + "range_check_gas_cost": 11, + "memory_hole_gas_cost": 40 + }, + "secp256r1_mul_gas_cost": { + "step_gas_cost": 125240, + "range_check_gas_cost": 13961 + }, + "secp256r1_new_gas_cost": { + "step_gas_cost": 594, + "range_check_gas_cost": 49, + "memory_hole_gas_cost": 40 + }, + "keccak_gas_cost": { + "syscall_base_gas_cost": 1 + }, + "keccak_round_cost_gas_cost": 180000, + "sha256_process_block_gas_cost": { + "step_gas_cost": 0, + "range_check_gas_cost": 0, + "syscall_base_gas_cost": 0 + }, + "error_block_number_out_of_range": "Block number out of range", + "error_out_of_gas": "Out of gas", + "error_invalid_input_len": "Invalid input length", + "error_invalid_argument": "Invalid argument", + "validated": "VALID", + "l1_gas": "L1_GAS", + "l2_gas": "L2_GAS", + "l1_gas_index": 0, + "l2_gas_index": 1 + }, + "os_resources": { + "execute_syscalls": { + "CallContract": { + "builtin_instance_counter": { + "range_check_builtin": 19 + }, + "n_memory_holes": 0, + "n_steps": 691 + }, + "DelegateCall": { + "builtin_instance_counter": { + "range_check_builtin": 19 + }, + "n_memory_holes": 0, + "n_steps": 713 + }, + "DelegateL1Handler": { + "builtin_instance_counter": { + "range_check_builtin": 15 + }, + "n_memory_holes": 0, + "n_steps": 692 + }, + "Deploy": { + "builtin_instance_counter": { + "pedersen_builtin": 7, + "range_check_builtin": 18 + }, + "n_memory_holes": 0, + "n_steps": 944 + }, + "EmitEvent": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 19 + }, + "GetBlockHash": { + "builtin_instance_counter": { + "range_check_builtin": 2 + }, + "n_memory_holes": 0, + "n_steps": 74 + }, + "GetBlockNumber": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 40 + }, + "GetBlockTimestamp": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 38 + }, + "GetCallerAddress": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 32 + }, + "GetContractAddress": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 36 + }, + "GetExecutionInfo": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 29 + }, + "GetSequencerAddress": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 34 + }, + "GetTxInfo": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 29 + }, + "GetTxSignature": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 44 + }, + "Keccak": { + "builtin_instance_counter": { + "bitwise_builtin": 6, + "keccak_builtin": 1, + "range_check_builtin": 56 + }, + "n_memory_holes": 0, + "n_steps": 381 + }, + "LibraryCall": { + "builtin_instance_counter": { + "range_check_builtin": 19 + }, + "n_memory_holes": 0, + "n_steps": 680 + }, + "LibraryCallL1Handler": { + "builtin_instance_counter": { + "range_check_builtin": 15 + }, + "n_memory_holes": 0, + "n_steps": 659 + }, + "ReplaceClass": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 73 + }, + "Secp256k1Add": { + "builtin_instance_counter": { + "range_check_builtin": 29 + }, + "n_memory_holes": 0, + "n_steps": 406 + }, + "Secp256k1GetPointFromX": { + "builtin_instance_counter": { + "range_check_builtin": 30 + }, + "n_memory_holes": 20, + "n_steps": 391 + }, + "Secp256k1GetXy": { + "builtin_instance_counter": { + "range_check_builtin": 11 + }, + "n_memory_holes": 40, + "n_steps": 239 + }, + "Secp256k1Mul": { + "builtin_instance_counter": { + "range_check_builtin": 7045 + }, + "n_memory_holes": 0, + "n_steps": 76401 + }, + "Secp256k1New": { + "builtin_instance_counter": { + "range_check_builtin": 35 + }, + "n_memory_holes": 40, + "n_steps": 475 + }, + "Secp256r1Add": { + "builtin_instance_counter": { + "range_check_builtin": 57 + }, + "n_memory_holes": 0, + "n_steps": 589 + }, + "Secp256r1GetPointFromX": { + "builtin_instance_counter": { + "range_check_builtin": 44 + }, + "n_memory_holes": 20, + "n_steps": 510 + }, + "Secp256r1GetXy": { + "builtin_instance_counter": { + "range_check_builtin": 11 + }, + "n_memory_holes": 40, + "n_steps": 241 + }, + "Secp256r1Mul": { + "builtin_instance_counter": { + "range_check_builtin": 13961 + }, + "n_memory_holes": 0, + "n_steps": 125240 + }, + "Secp256r1New": { + "builtin_instance_counter": { + "range_check_builtin": 49 + }, + "n_memory_holes": 40, + "n_steps": 594 + }, + "SendMessageToL1": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 84 + }, + "Sha256ProcessBlock": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 0 + }, + "StorageRead": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 44 + }, + "StorageWrite": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 46 + } + }, + "execute_txs_inner": { + "Declare": { + "resources": { + "constant": { + "builtin_instance_counter": { + "pedersen_builtin": 15, + "range_check_builtin": 63 + }, + "n_memory_holes": 0, + "n_steps": 2711 + }, + "calldata_factor": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + }, + "deprecated_resources": { + "constant": { + "builtin_instance_counter": { + "pedersen_builtin": 15, + "range_check_builtin": 63 + }, + "n_memory_holes": 0, + "n_steps": 2711 + }, + "calldata_factor": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + } + }, + "DeployAccount": { + "resources": { + "constant": { + "builtin_instance_counter": { + "pedersen_builtin": 23, + "range_check_builtin": 83 + }, + "n_memory_holes": 0, + "n_steps": 3628 + }, + "calldata_factor": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + }, + "deprecated_resources": { + "constant": { + "builtin_instance_counter": { + "pedersen_builtin": 23, + "range_check_builtin": 83 + }, + "n_memory_holes": 0, + "n_steps": 3628 + }, + "calldata_factor": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + } + }, + "InvokeFunction": { + "resources": { + "constant": { + "builtin_instance_counter": { + "pedersen_builtin": 16, + "range_check_builtin": 80 + }, + "n_memory_holes": 0, + "n_steps": 3382 + }, + "calldata_factor": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + }, + "deprecated_resources": { + "constant": { + "builtin_instance_counter": { + "pedersen_builtin": 16, + "range_check_builtin": 80 + }, + "n_memory_holes": 0, + "n_steps": 3382 + }, + "calldata_factor": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + } + }, + "L1Handler": { + "resources": { + "constant": { + "builtin_instance_counter": { + "pedersen_builtin": 11, + "range_check_builtin": 17 + }, + "n_memory_holes": 0, + "n_steps": 1069 + }, + "calldata_factor": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + }, + "deprecated_resources": { + "constant": { + "builtin_instance_counter": { + "pedersen_builtin": 11, + "range_check_builtin": 17 + }, + "n_memory_holes": 0, + "n_steps": 1069 + }, + "calldata_factor": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + } + } + }, + "compute_os_kzg_commitment_info": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + }, + "validate_max_n_steps": 1000000, + "vm_resource_fee_cost": { + "add_mod_builtin": [0, 1], + "bitwise_builtin": [32, 100], + "ec_op_builtin": [512, 100], + "ecdsa_builtin": [1024, 100], + "keccak_builtin": [1024, 100], + "mul_mod_builtin": [0, 1], + "n_steps": [5, 1000], + "output_builtin": [0, 1], + "pedersen_builtin": [16, 100], + "poseidon_builtin": [16, 100], + "range_check_builtin": [8, 100], + "range_check96_builtin": [0, 1] + } +} diff --git a/orchestrator/crates/settlement-clients/starknet/src/tests/resources/versioned_constants_13_1.json b/orchestrator/crates/settlement-clients/starknet/src/tests/resources/versioned_constants_13_1.json new file mode 100644 index 000000000..e40684739 --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/tests/resources/versioned_constants_13_1.json @@ -0,0 +1,555 @@ +{ + "tx_event_limits": { + "max_data_length": 300, + "max_keys_length": 50, + "max_n_emitted_events": 1000 + }, + "gateway": { + "max_calldata_length": 4000, + "max_contract_bytecode_size": 81920 + }, + "invoke_tx_max_n_steps": 4000000, + "l2_resource_gas_costs": { + "gas_per_data_felt": [128, 1000], + "event_key_factor": [2, 1], + "gas_per_code_byte": [875, 1000] + }, + "max_recursion_depth": 50, + "segment_arena_cells": true, + "os_constants": { + "nop_entry_point_offset": -1, + "entry_point_type_external": 0, + "entry_point_type_l1_handler": 1, + "entry_point_type_constructor": 2, + "l1_handler_version": 0, + "sierra_array_len_bound": 4294967296, + "constructor_entry_point_selector": "0x28ffe4ff0f226a9107253e17a904099aa4f63a02a5621de0576e5aa71bc5194", + "execute_entry_point_selector": "0x15d40a3d6ca2ac30f4031e42be28da9b056fef9bb7357ac5e85627ee876e5ad", + "validate_entry_point_selector": "0x162da33a4585851fe8d3af3c2a9c60b557814e221e0d4f30ff0b2189d9c7775", + "validate_declare_entry_point_selector": "0x289da278a8dc833409cabfdad1581e8e7d40e42dcaed693fa4008dcdb4963b3", + "validate_deploy_entry_point_selector": "0x36fcbf06cd96843058359e1a75928beacfac10727dab22a3972f0af8aa92895", + "transfer_entry_point_selector": "0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e", + "default_entry_point_selector": 0, + "block_hash_contract_address": 1, + "stored_block_hash_buffer": 10, + "step_gas_cost": 100, + "range_check_gas_cost": 70, + "memory_hole_gas_cost": 10, + "initial_gas_cost": { + "step_gas_cost": 100000000 + }, + "entry_point_initial_budget": { + "step_gas_cost": 100 + }, + "syscall_base_gas_cost": { + "step_gas_cost": 100 + }, + "entry_point_gas_cost": { + "entry_point_initial_budget": 1, + "step_gas_cost": 500 + }, + "fee_transfer_gas_cost": { + "entry_point_gas_cost": 1, + "step_gas_cost": 100 + }, + "transaction_gas_cost": { + "entry_point_gas_cost": 2, + "fee_transfer_gas_cost": 1, + "step_gas_cost": 100 + }, + "call_contract_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 10, + "entry_point_gas_cost": 1 + }, + "deploy_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 200, + "entry_point_gas_cost": 1 + }, + "get_block_hash_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "get_execution_info_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 10 + }, + "library_call_gas_cost": { + "call_contract_gas_cost": 1 + }, + "replace_class_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "storage_read_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "storage_write_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "emit_event_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 10 + }, + "send_message_to_l1_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "secp256k1_add_gas_cost": { + "step_gas_cost": 406, + "range_check_gas_cost": 29 + }, + "secp256k1_get_point_from_x_gas_cost": { + "step_gas_cost": 391, + "range_check_gas_cost": 30, + "memory_hole_gas_cost": 20 + }, + "secp256k1_get_xy_gas_cost": { + "step_gas_cost": 239, + "range_check_gas_cost": 11, + "memory_hole_gas_cost": 40 + }, + "secp256k1_mul_gas_cost": { + "step_gas_cost": 76501, + "range_check_gas_cost": 7045, + "memory_hole_gas_cost": 2 + }, + "secp256k1_new_gas_cost": { + "step_gas_cost": 475, + "range_check_gas_cost": 35, + "memory_hole_gas_cost": 40 + }, + "secp256r1_add_gas_cost": { + "step_gas_cost": 589, + "range_check_gas_cost": 57 + }, + "secp256r1_get_point_from_x_gas_cost": { + "step_gas_cost": 510, + "range_check_gas_cost": 44, + "memory_hole_gas_cost": 20 + }, + "secp256r1_get_xy_gas_cost": { + "step_gas_cost": 241, + "range_check_gas_cost": 11, + "memory_hole_gas_cost": 40 + }, + "secp256r1_mul_gas_cost": { + "step_gas_cost": 125340, + "range_check_gas_cost": 13961, + "memory_hole_gas_cost": 2 + }, + "secp256r1_new_gas_cost": { + "step_gas_cost": 594, + "range_check_gas_cost": 49, + "memory_hole_gas_cost": 40 + }, + "keccak_gas_cost": { + "syscall_base_gas_cost": 1 + }, + "keccak_round_cost_gas_cost": 180000, + "sha256_process_block_gas_cost": { + "step_gas_cost": 0, + "range_check_gas_cost": 0, + "syscall_base_gas_cost": 0 + }, + "error_block_number_out_of_range": "Block number out of range", + "error_out_of_gas": "Out of gas", + "error_invalid_input_len": "Invalid input length", + "error_invalid_argument": "Invalid argument", + "validated": "VALID", + "l1_gas": "L1_GAS", + "l2_gas": "L2_GAS", + "l1_gas_index": 0, + "l2_gas_index": 1, + "validate_rounding_consts": { + "validate_block_number_rounding": 100, + "validate_timestamp_rounding": 3600 + } + }, + "os_resources": { + "execute_syscalls": { + "CallContract": { + "n_steps": 760, + "builtin_instance_counter": { + "range_check_builtin": 20 + }, + "n_memory_holes": 0 + }, + "DelegateCall": { + "n_steps": 713, + "builtin_instance_counter": { + "range_check_builtin": 19 + }, + "n_memory_holes": 0 + }, + "DelegateL1Handler": { + "n_steps": 692, + "builtin_instance_counter": { + "range_check_builtin": 15 + }, + "n_memory_holes": 0 + }, + "Deploy": { + "n_steps": 1012, + "builtin_instance_counter": { + "pedersen_builtin": 7, + "range_check_builtin": 19 + }, + "n_memory_holes": 0 + }, + "EmitEvent": { + "n_steps": 61, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetBlockHash": { + "n_steps": 104, + "builtin_instance_counter": { + "range_check_builtin": 2 + }, + "n_memory_holes": 0 + }, + "GetBlockNumber": { + "n_steps": 40, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + }, + "GetBlockTimestamp": { + "n_steps": 38, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + }, + "GetCallerAddress": { + "n_steps": 64, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetContractAddress": { + "n_steps": 64, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetExecutionInfo": { + "n_steps": 64, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetSequencerAddress": { + "n_steps": 34, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + }, + "GetTxInfo": { + "n_steps": 64, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetTxSignature": { + "n_steps": 44, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + }, + "Keccak": { + "n_steps": 381, + "builtin_instance_counter": { + "bitwise_builtin": 6, + "keccak_builtin": 1, + "range_check_builtin": 56 + }, + "n_memory_holes": 0 + }, + "LibraryCall": { + "n_steps": 751, + "builtin_instance_counter": { + "range_check_builtin": 20 + }, + "n_memory_holes": 0 + }, + "LibraryCallL1Handler": { + "n_steps": 659, + "builtin_instance_counter": { + "range_check_builtin": 15 + }, + "n_memory_holes": 0 + }, + "ReplaceClass": { + "n_steps": 98, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "Secp256k1Add": { + "n_steps": 408, + "builtin_instance_counter": { + "range_check_builtin": 29 + }, + "n_memory_holes": 0 + }, + "Secp256k1GetPointFromX": { + "n_steps": 393, + "builtin_instance_counter": { + "range_check_builtin": 30 + }, + "n_memory_holes": 0 + }, + "Secp256k1GetXy": { + "n_steps": 205, + "builtin_instance_counter": { + "range_check_builtin": 11 + }, + "n_memory_holes": 0 + }, + "Secp256k1Mul": { + "n_steps": 76503, + "builtin_instance_counter": { + "range_check_builtin": 7045 + }, + "n_memory_holes": 0 + }, + "Secp256k1New": { + "n_steps": 459, + "builtin_instance_counter": { + "range_check_builtin": 35 + }, + "n_memory_holes": 0 + }, + "Secp256r1Add": { + "n_steps": 591, + "builtin_instance_counter": { + "range_check_builtin": 57 + }, + "n_memory_holes": 0 + }, + "Secp256r1GetPointFromX": { + "n_steps": 512, + "builtin_instance_counter": { + "range_check_builtin": 44 + }, + "n_memory_holes": 0 + }, + "Secp256r1GetXy": { + "n_steps": 207, + "builtin_instance_counter": { + "range_check_builtin": 11 + }, + "n_memory_holes": 0 + }, + "Secp256r1Mul": { + "n_steps": 125342, + "builtin_instance_counter": { + "range_check_builtin": 13961 + }, + "n_memory_holes": 0 + }, + "Secp256r1New": { + "n_steps": 578, + "builtin_instance_counter": { + "range_check_builtin": 49 + }, + "n_memory_holes": 0 + }, + "SendMessageToL1": { + "n_steps": 139, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "Sha256ProcessBlock": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 0 + }, + "StorageRead": { + "n_steps": 87, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "StorageWrite": { + "n_steps": 89, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + } + }, + "execute_txs_inner": { + "Declare": { + "resources": { + "constant": { + "n_steps": 2839, + "builtin_instance_counter": { + "pedersen_builtin": 16, + "range_check_builtin": 63 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + }, + "deprecated_resources": { + "constant": { + "n_steps": 2839, + "builtin_instance_counter": { + "pedersen_builtin": 16, + "range_check_builtin": 63 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + } + }, + "DeployAccount": { + "resources": { + "constant": { + "n_steps": 3792, + "builtin_instance_counter": { + "pedersen_builtin": 23, + "range_check_builtin": 83 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 21, + "builtin_instance_counter": { + "pedersen_builtin": 2 + }, + "n_memory_holes": 0 + } + }, + "deprecated_resources": { + "constant": { + "n_steps": 3792, + "builtin_instance_counter": { + "pedersen_builtin": 23, + "range_check_builtin": 83 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 21, + "builtin_instance_counter": { + "pedersen_builtin": 2 + }, + "n_memory_holes": 0 + } + } + }, + "InvokeFunction": { + "resources": { + "constant": { + "n_steps": 3546, + "builtin_instance_counter": { + "pedersen_builtin": 14, + "range_check_builtin": 80 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 8, + "builtin_instance_counter": { + "pedersen_builtin": 1 + }, + "n_memory_holes": 0 + } + }, + "deprecated_resources": { + "constant": { + "n_steps": 3546, + "builtin_instance_counter": { + "pedersen_builtin": 14, + "range_check_builtin": 80 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 8, + "builtin_instance_counter": { + "pedersen_builtin": 1 + }, + "n_memory_holes": 0 + } + } + }, + "L1Handler": { + "resources": { + "constant": { + "n_steps": 1146, + "builtin_instance_counter": { + "pedersen_builtin": 11, + "range_check_builtin": 17 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 13, + "builtin_instance_counter": { + "pedersen_builtin": 1 + }, + "n_memory_holes": 0 + } + }, + "deprecated_resources": { + "constant": { + "n_steps": 1146, + "builtin_instance_counter": { + "pedersen_builtin": 11, + "range_check_builtin": 17 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 13, + "builtin_instance_counter": { + "pedersen_builtin": 1 + }, + "n_memory_holes": 0 + } + } + } + }, + "compute_os_kzg_commitment_info": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + }, + "validate_max_n_steps": 1000000, + "vm_resource_fee_cost": { + "add_mod_builtin": [0, 1], + "bitwise_builtin": [16, 100], + "ec_op_builtin": [256, 100], + "ecdsa_builtin": [512, 100], + "keccak_builtin": [512, 100], + "mul_mod_builtin": [0, 1], + "n_steps": [25, 10000], + "output_builtin": [0, 1], + "pedersen_builtin": [8, 100], + "poseidon_builtin": [8, 100], + "range_check_builtin": [4, 100], + "range_check96_builtin": [0, 1] + } +} diff --git a/orchestrator/crates/settlement-clients/starknet/src/tests/resources/versioned_constants_13_1_1.json b/orchestrator/crates/settlement-clients/starknet/src/tests/resources/versioned_constants_13_1_1.json new file mode 100644 index 000000000..fd317d73b --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/tests/resources/versioned_constants_13_1_1.json @@ -0,0 +1,554 @@ +{ + "tx_event_limits": { + "max_data_length": 300, + "max_keys_length": 50, + "max_n_emitted_events": 1000 + }, + "gateway": { + "max_calldata_length": 5000, + "max_contract_bytecode_size": 81920 + }, + "invoke_tx_max_n_steps": 4000000, + "l2_resource_gas_costs": { + "gas_per_data_felt": [128, 1000], + "event_key_factor": [2, 1], + "gas_per_code_byte": [32, 1000] + }, + "max_recursion_depth": 50, + "os_constants": { + "nop_entry_point_offset": -1, + "entry_point_type_external": 0, + "entry_point_type_l1_handler": 1, + "entry_point_type_constructor": 2, + "l1_handler_version": 0, + "sierra_array_len_bound": 4294967296, + "constructor_entry_point_selector": "0x28ffe4ff0f226a9107253e17a904099aa4f63a02a5621de0576e5aa71bc5194", + "execute_entry_point_selector": "0x15d40a3d6ca2ac30f4031e42be28da9b056fef9bb7357ac5e85627ee876e5ad", + "validate_entry_point_selector": "0x162da33a4585851fe8d3af3c2a9c60b557814e221e0d4f30ff0b2189d9c7775", + "validate_declare_entry_point_selector": "0x289da278a8dc833409cabfdad1581e8e7d40e42dcaed693fa4008dcdb4963b3", + "validate_deploy_entry_point_selector": "0x36fcbf06cd96843058359e1a75928beacfac10727dab22a3972f0af8aa92895", + "transfer_entry_point_selector": "0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e", + "default_entry_point_selector": 0, + "block_hash_contract_address": 1, + "stored_block_hash_buffer": 10, + "step_gas_cost": 100, + "range_check_gas_cost": 70, + "memory_hole_gas_cost": 10, + "initial_gas_cost": { + "step_gas_cost": 100000000 + }, + "entry_point_initial_budget": { + "step_gas_cost": 100 + }, + "syscall_base_gas_cost": { + "step_gas_cost": 100 + }, + "entry_point_gas_cost": { + "entry_point_initial_budget": 1, + "step_gas_cost": 500 + }, + "fee_transfer_gas_cost": { + "entry_point_gas_cost": 1, + "step_gas_cost": 100 + }, + "transaction_gas_cost": { + "entry_point_gas_cost": 2, + "fee_transfer_gas_cost": 1, + "step_gas_cost": 100 + }, + "call_contract_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 10, + "entry_point_gas_cost": 1 + }, + "deploy_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 200, + "entry_point_gas_cost": 1 + }, + "get_block_hash_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "get_execution_info_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 10 + }, + "library_call_gas_cost": { + "call_contract_gas_cost": 1 + }, + "replace_class_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "storage_read_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "storage_write_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "emit_event_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 10 + }, + "send_message_to_l1_gas_cost": { + "syscall_base_gas_cost": 1, + "step_gas_cost": 50 + }, + "secp256k1_add_gas_cost": { + "step_gas_cost": 406, + "range_check_gas_cost": 29 + }, + "secp256k1_get_point_from_x_gas_cost": { + "step_gas_cost": 391, + "range_check_gas_cost": 30, + "memory_hole_gas_cost": 20 + }, + "secp256k1_get_xy_gas_cost": { + "step_gas_cost": 239, + "range_check_gas_cost": 11, + "memory_hole_gas_cost": 40 + }, + "secp256k1_mul_gas_cost": { + "step_gas_cost": 76501, + "range_check_gas_cost": 7045, + "memory_hole_gas_cost": 2 + }, + "secp256k1_new_gas_cost": { + "step_gas_cost": 475, + "range_check_gas_cost": 35, + "memory_hole_gas_cost": 40 + }, + "secp256r1_add_gas_cost": { + "step_gas_cost": 589, + "range_check_gas_cost": 57 + }, + "secp256r1_get_point_from_x_gas_cost": { + "step_gas_cost": 510, + "range_check_gas_cost": 44, + "memory_hole_gas_cost": 20 + }, + "secp256r1_get_xy_gas_cost": { + "step_gas_cost": 241, + "range_check_gas_cost": 11, + "memory_hole_gas_cost": 40 + }, + "secp256r1_mul_gas_cost": { + "step_gas_cost": 125340, + "range_check_gas_cost": 13961, + "memory_hole_gas_cost": 2 + }, + "secp256r1_new_gas_cost": { + "step_gas_cost": 594, + "range_check_gas_cost": 49, + "memory_hole_gas_cost": 40 + }, + "keccak_gas_cost": { + "syscall_base_gas_cost": 1 + }, + "keccak_round_cost_gas_cost": 180000, + "sha256_process_block_gas_cost": { + "step_gas_cost": 0, + "range_check_gas_cost": 0, + "syscall_base_gas_cost": 0 + }, + "error_block_number_out_of_range": "Block number out of range", + "error_out_of_gas": "Out of gas", + "error_invalid_input_len": "Invalid input length", + "error_invalid_argument": "Invalid argument", + "validated": "VALID", + "l1_gas": "L1_GAS", + "l2_gas": "L2_GAS", + "l1_gas_index": 0, + "l2_gas_index": 1, + "validate_rounding_consts": { + "validate_block_number_rounding": 100, + "validate_timestamp_rounding": 3600 + } + }, + "os_resources": { + "execute_syscalls": { + "CallContract": { + "n_steps": 760, + "builtin_instance_counter": { + "range_check_builtin": 20 + }, + "n_memory_holes": 0 + }, + "DelegateCall": { + "n_steps": 713, + "builtin_instance_counter": { + "range_check_builtin": 19 + }, + "n_memory_holes": 0 + }, + "DelegateL1Handler": { + "n_steps": 692, + "builtin_instance_counter": { + "range_check_builtin": 15 + }, + "n_memory_holes": 0 + }, + "Deploy": { + "n_steps": 1012, + "builtin_instance_counter": { + "pedersen_builtin": 7, + "range_check_builtin": 19 + }, + "n_memory_holes": 0 + }, + "EmitEvent": { + "n_steps": 61, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetBlockHash": { + "n_steps": 104, + "builtin_instance_counter": { + "range_check_builtin": 2 + }, + "n_memory_holes": 0 + }, + "GetBlockNumber": { + "n_steps": 40, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + }, + "GetBlockTimestamp": { + "n_steps": 38, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + }, + "GetCallerAddress": { + "n_steps": 64, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetContractAddress": { + "n_steps": 64, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetExecutionInfo": { + "n_steps": 64, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetSequencerAddress": { + "n_steps": 34, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + }, + "GetTxInfo": { + "n_steps": 64, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetTxSignature": { + "n_steps": 44, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + }, + "Keccak": { + "n_steps": 381, + "builtin_instance_counter": { + "bitwise_builtin": 6, + "keccak_builtin": 1, + "range_check_builtin": 56 + }, + "n_memory_holes": 0 + }, + "LibraryCall": { + "n_steps": 751, + "builtin_instance_counter": { + "range_check_builtin": 20 + }, + "n_memory_holes": 0 + }, + "LibraryCallL1Handler": { + "n_steps": 659, + "builtin_instance_counter": { + "range_check_builtin": 15 + }, + "n_memory_holes": 0 + }, + "ReplaceClass": { + "n_steps": 98, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "Secp256k1Add": { + "n_steps": 408, + "builtin_instance_counter": { + "range_check_builtin": 29 + }, + "n_memory_holes": 0 + }, + "Secp256k1GetPointFromX": { + "n_steps": 393, + "builtin_instance_counter": { + "range_check_builtin": 30 + }, + "n_memory_holes": 0 + }, + "Secp256k1GetXy": { + "n_steps": 205, + "builtin_instance_counter": { + "range_check_builtin": 11 + }, + "n_memory_holes": 0 + }, + "Secp256k1Mul": { + "n_steps": 76503, + "builtin_instance_counter": { + "range_check_builtin": 7045 + }, + "n_memory_holes": 0 + }, + "Secp256k1New": { + "n_steps": 459, + "builtin_instance_counter": { + "range_check_builtin": 35 + }, + "n_memory_holes": 0 + }, + "Secp256r1Add": { + "n_steps": 591, + "builtin_instance_counter": { + "range_check_builtin": 57 + }, + "n_memory_holes": 0 + }, + "Secp256r1GetPointFromX": { + "n_steps": 512, + "builtin_instance_counter": { + "range_check_builtin": 44 + }, + "n_memory_holes": 0 + }, + "Secp256r1GetXy": { + "n_steps": 207, + "builtin_instance_counter": { + "range_check_builtin": 11 + }, + "n_memory_holes": 0 + }, + "Secp256r1Mul": { + "n_steps": 125342, + "builtin_instance_counter": { + "range_check_builtin": 13961 + }, + "n_memory_holes": 0 + }, + "Secp256r1New": { + "n_steps": 578, + "builtin_instance_counter": { + "range_check_builtin": 49 + }, + "n_memory_holes": 0 + }, + "SendMessageToL1": { + "n_steps": 139, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "Sha256ProcessBlock": { + "builtin_instance_counter": {}, + "n_memory_holes": 0, + "n_steps": 0 + }, + "StorageRead": { + "n_steps": 87, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "StorageWrite": { + "n_steps": 89, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + } + }, + "execute_txs_inner": { + "Declare": { + "resources": { + "constant": { + "n_steps": 2839, + "builtin_instance_counter": { + "pedersen_builtin": 16, + "range_check_builtin": 63 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + }, + "deprecated_resources": { + "constant": { + "n_steps": 2839, + "builtin_instance_counter": { + "pedersen_builtin": 16, + "range_check_builtin": 63 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + } + }, + "DeployAccount": { + "resources": { + "constant": { + "n_steps": 3792, + "builtin_instance_counter": { + "pedersen_builtin": 23, + "range_check_builtin": 83 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 21, + "builtin_instance_counter": { + "pedersen_builtin": 2 + }, + "n_memory_holes": 0 + } + }, + "deprecated_resources": { + "constant": { + "n_steps": 3792, + "builtin_instance_counter": { + "pedersen_builtin": 23, + "range_check_builtin": 83 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 21, + "builtin_instance_counter": { + "pedersen_builtin": 2 + }, + "n_memory_holes": 0 + } + } + }, + "InvokeFunction": { + "resources": { + "constant": { + "n_steps": 3546, + "builtin_instance_counter": { + "pedersen_builtin": 14, + "range_check_builtin": 80 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 8, + "builtin_instance_counter": { + "pedersen_builtin": 1 + }, + "n_memory_holes": 0 + } + }, + "deprecated_resources": { + "constant": { + "n_steps": 3546, + "builtin_instance_counter": { + "pedersen_builtin": 14, + "range_check_builtin": 80 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 8, + "builtin_instance_counter": { + "pedersen_builtin": 1 + }, + "n_memory_holes": 0 + } + } + }, + "L1Handler": { + "resources": { + "constant": { + "n_steps": 1146, + "builtin_instance_counter": { + "pedersen_builtin": 11, + "range_check_builtin": 17 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 13, + "builtin_instance_counter": { + "pedersen_builtin": 1 + }, + "n_memory_holes": 0 + } + }, + "deprecated_resources": { + "constant": { + "n_steps": 1146, + "builtin_instance_counter": { + "pedersen_builtin": 11, + "range_check_builtin": 17 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 13, + "builtin_instance_counter": { + "pedersen_builtin": 1 + }, + "n_memory_holes": 0 + } + } + } + }, + "compute_os_kzg_commitment_info": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + }, + "validate_max_n_steps": 1000000, + "vm_resource_fee_cost": { + "add_mod_builtin": [0, 1], + "bitwise_builtin": [16, 100], + "ec_op_builtin": [256, 100], + "ecdsa_builtin": [512, 100], + "keccak_builtin": [512, 100], + "mul_mod_builtin": [0, 1], + "n_steps": [25, 10000], + "output_builtin": [0, 1], + "pedersen_builtin": [8, 100], + "poseidon_builtin": [8, 100], + "range_check_builtin": [4, 100], + "range_check96_builtin": [0, 1] + } +} diff --git a/orchestrator/crates/settlement-clients/starknet/src/tests/resources/versioned_constants_13_2.json b/orchestrator/crates/settlement-clients/starknet/src/tests/resources/versioned_constants_13_2.json new file mode 100644 index 000000000..4d3a9ceb9 --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/tests/resources/versioned_constants_13_2.json @@ -0,0 +1,563 @@ +{ + "tx_event_limits": { + "max_data_length": 300, + "max_keys_length": 50, + "max_n_emitted_events": 1000 + }, + "gateway": { + "max_calldata_length": 5000, + "max_contract_bytecode_size": 81920 + }, + "invoke_tx_max_n_steps": 10000000, + "l2_resource_gas_costs": { + "gas_per_data_felt": [128, 1000], + "event_key_factor": [2, 1], + "gas_per_code_byte": [875, 1000] + }, + "disable_cairo0_redeclaration": true, + "max_recursion_depth": 50, + "segment_arena_cells": false, + "os_constants": { + "block_hash_contract_address": 1, + "call_contract_gas_cost": { + "entry_point_gas_cost": 1, + "step_gas_cost": 10, + "syscall_base_gas_cost": 1 + }, + "constructor_entry_point_selector": "0x28ffe4ff0f226a9107253e17a904099aa4f63a02a5621de0576e5aa71bc5194", + "default_entry_point_selector": 0, + "deploy_gas_cost": { + "entry_point_gas_cost": 1, + "step_gas_cost": 200, + "syscall_base_gas_cost": 1 + }, + "emit_event_gas_cost": { + "step_gas_cost": 10, + "syscall_base_gas_cost": 1 + }, + "entry_point_gas_cost": { + "entry_point_initial_budget": 1, + "step_gas_cost": 500 + }, + "entry_point_initial_budget": { + "step_gas_cost": 100 + }, + "entry_point_type_constructor": 2, + "entry_point_type_external": 0, + "entry_point_type_l1_handler": 1, + "error_block_number_out_of_range": "Block number out of range", + "error_invalid_input_len": "Invalid input length", + "error_invalid_argument": "Invalid argument", + "error_out_of_gas": "Out of gas", + "execute_entry_point_selector": "0x15d40a3d6ca2ac30f4031e42be28da9b056fef9bb7357ac5e85627ee876e5ad", + "fee_transfer_gas_cost": { + "entry_point_gas_cost": 1, + "step_gas_cost": 100 + }, + "get_block_hash_gas_cost": { + "step_gas_cost": 50, + "syscall_base_gas_cost": 1 + }, + "get_execution_info_gas_cost": { + "step_gas_cost": 10, + "syscall_base_gas_cost": 1 + }, + "initial_gas_cost": { + "step_gas_cost": 100000000 + }, + "keccak_gas_cost": { + "syscall_base_gas_cost": 1 + }, + "keccak_round_cost_gas_cost": 180000, + "l1_gas": "L1_GAS", + "l1_gas_index": 0, + "l1_handler_version": 0, + "l2_gas": "L2_GAS", + "l2_gas_index": 1, + "library_call_gas_cost": { + "call_contract_gas_cost": 1 + }, + "sha256_process_block_gas_cost": { + "step_gas_cost": 1852, + "range_check_gas_cost": 65, + "bitwise_builtin_gas_cost": 1115, + "syscall_base_gas_cost": 1 + }, + "memory_hole_gas_cost": 10, + "nop_entry_point_offset": -1, + "range_check_gas_cost": 70, + "bitwise_builtin_gas_cost": 594, + "replace_class_gas_cost": { + "step_gas_cost": 50, + "syscall_base_gas_cost": 1 + }, + "secp256k1_add_gas_cost": { + "range_check_gas_cost": 29, + "step_gas_cost": 406 + }, + "secp256k1_get_point_from_x_gas_cost": { + "memory_hole_gas_cost": 20, + "range_check_gas_cost": 30, + "step_gas_cost": 391 + }, + "secp256k1_get_xy_gas_cost": { + "memory_hole_gas_cost": 40, + "range_check_gas_cost": 11, + "step_gas_cost": 239 + }, + "secp256k1_mul_gas_cost": { + "memory_hole_gas_cost": 2, + "range_check_gas_cost": 7045, + "step_gas_cost": 76501 + }, + "secp256k1_new_gas_cost": { + "memory_hole_gas_cost": 40, + "range_check_gas_cost": 35, + "step_gas_cost": 475 + }, + "secp256r1_add_gas_cost": { + "range_check_gas_cost": 57, + "step_gas_cost": 589 + }, + "secp256r1_get_point_from_x_gas_cost": { + "memory_hole_gas_cost": 20, + "range_check_gas_cost": 44, + "step_gas_cost": 510 + }, + "secp256r1_get_xy_gas_cost": { + "memory_hole_gas_cost": 40, + "range_check_gas_cost": 11, + "step_gas_cost": 241 + }, + "secp256r1_mul_gas_cost": { + "memory_hole_gas_cost": 2, + "range_check_gas_cost": 13961, + "step_gas_cost": 125340 + }, + "secp256r1_new_gas_cost": { + "memory_hole_gas_cost": 40, + "range_check_gas_cost": 49, + "step_gas_cost": 594 + }, + "send_message_to_l1_gas_cost": { + "step_gas_cost": 50, + "syscall_base_gas_cost": 1 + }, + "sierra_array_len_bound": 4294967296, + "step_gas_cost": 100, + "storage_read_gas_cost": { + "step_gas_cost": 50, + "syscall_base_gas_cost": 1 + }, + "storage_write_gas_cost": { + "step_gas_cost": 50, + "syscall_base_gas_cost": 1 + }, + "stored_block_hash_buffer": 10, + "syscall_base_gas_cost": { + "step_gas_cost": 100 + }, + "transaction_gas_cost": { + "entry_point_gas_cost": 2, + "fee_transfer_gas_cost": 1, + "step_gas_cost": 100 + }, + "transfer_entry_point_selector": "0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e", + "validate_declare_entry_point_selector": "0x289da278a8dc833409cabfdad1581e8e7d40e42dcaed693fa4008dcdb4963b3", + "validate_deploy_entry_point_selector": "0x36fcbf06cd96843058359e1a75928beacfac10727dab22a3972f0af8aa92895", + "validate_entry_point_selector": "0x162da33a4585851fe8d3af3c2a9c60b557814e221e0d4f30ff0b2189d9c7775", + "validate_rounding_consts": { + "validate_block_number_rounding": 100, + "validate_timestamp_rounding": 3600 + }, + "validated": "VALID" + }, + "os_resources": { + "execute_syscalls": { + "CallContract": { + "n_steps": 827, + "builtin_instance_counter": { + "range_check_builtin": 15 + }, + "n_memory_holes": 0 + }, + "DelegateCall": { + "n_steps": 713, + "builtin_instance_counter": { + "range_check_builtin": 19 + }, + "n_memory_holes": 0 + }, + "DelegateL1Handler": { + "n_steps": 692, + "builtin_instance_counter": { + "range_check_builtin": 15 + }, + "n_memory_holes": 0 + }, + "Deploy": { + "n_steps": 1097, + "builtin_instance_counter": { + "pedersen_builtin": 7, + "range_check_builtin": 18 + }, + "n_memory_holes": 0 + }, + "EmitEvent": { + "n_steps": 61, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetBlockHash": { + "n_steps": 104, + "builtin_instance_counter": { + "range_check_builtin": 2 + }, + "n_memory_holes": 0 + }, + "GetBlockNumber": { + "n_steps": 40, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + }, + "GetBlockTimestamp": { + "n_steps": 38, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + }, + "GetCallerAddress": { + "n_steps": 64, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetContractAddress": { + "n_steps": 64, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetExecutionInfo": { + "n_steps": 64, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetSequencerAddress": { + "n_steps": 34, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + }, + "GetTxInfo": { + "n_steps": 64, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "GetTxSignature": { + "n_steps": 44, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + }, + "Keccak": { + "n_steps": 381, + "builtin_instance_counter": { + "bitwise_builtin": 6, + "keccak_builtin": 1, + "range_check_builtin": 56 + }, + "n_memory_holes": 0 + }, + "LibraryCall": { + "n_steps": 818, + "builtin_instance_counter": { + "range_check_builtin": 15 + }, + "n_memory_holes": 0 + }, + "LibraryCallL1Handler": { + "n_steps": 659, + "builtin_instance_counter": { + "range_check_builtin": 15 + }, + "n_memory_holes": 0 + }, + "ReplaceClass": { + "n_steps": 98, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "Secp256k1Add": { + "n_steps": 410, + "builtin_instance_counter": { + "range_check_builtin": 29 + }, + "n_memory_holes": 0 + }, + "Secp256k1GetPointFromX": { + "n_steps": 395, + "builtin_instance_counter": { + "range_check_builtin": 30 + }, + "n_memory_holes": 0 + }, + "Secp256k1GetXy": { + "n_steps": 207, + "builtin_instance_counter": { + "range_check_builtin": 11 + }, + "n_memory_holes": 0 + }, + "Secp256k1Mul": { + "n_steps": 76505, + "builtin_instance_counter": { + "range_check_builtin": 7045 + }, + "n_memory_holes": 0 + }, + "Secp256k1New": { + "n_steps": 461, + "builtin_instance_counter": { + "range_check_builtin": 35 + }, + "n_memory_holes": 0 + }, + "Secp256r1Add": { + "n_steps": 593, + "builtin_instance_counter": { + "range_check_builtin": 57 + }, + "n_memory_holes": 0 + }, + "Secp256r1GetPointFromX": { + "n_steps": 514, + "builtin_instance_counter": { + "range_check_builtin": 44 + }, + "n_memory_holes": 0 + }, + "Secp256r1GetXy": { + "n_steps": 209, + "builtin_instance_counter": { + "range_check_builtin": 11 + }, + "n_memory_holes": 0 + }, + "Secp256r1Mul": { + "n_steps": 125344, + "builtin_instance_counter": { + "range_check_builtin": 13961 + }, + "n_memory_holes": 0 + }, + "Secp256r1New": { + "n_steps": 580, + "builtin_instance_counter": { + "range_check_builtin": 49 + }, + "n_memory_holes": 0 + }, + "SendMessageToL1": { + "n_steps": 141, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "Sha256ProcessBlock": { + "n_steps": 1855, + "builtin_instance_counter": { + "range_check_builtin": 65, + "bitwise_builtin": 1115 + }, + "n_memory_holes": 0 + }, + "StorageRead": { + "n_steps": 87, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + }, + "StorageWrite": { + "n_steps": 89, + "builtin_instance_counter": { + "range_check_builtin": 1 + }, + "n_memory_holes": 0 + } + }, + "execute_txs_inner": { + "Declare": { + "deprecated_resources": { + "constant": { + "n_steps": 2973, + "builtin_instance_counter": { + "pedersen_builtin": 16, + "range_check_builtin": 53 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + }, + "resources": { + "constant": { + "n_steps": 3079, + "builtin_instance_counter": { + "pedersen_builtin": 4, + "range_check_builtin": 58, + "poseidon_builtin": 10 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + } + } + }, + "DeployAccount": { + "deprecated_resources": { + "constant": { + "n_steps": 4015, + "builtin_instance_counter": { + "pedersen_builtin": 23, + "range_check_builtin": 72 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 21, + "builtin_instance_counter": { + "pedersen_builtin": 2 + }, + "n_memory_holes": 0 + } + }, + "resources": { + "constant": { + "n_steps": 4137, + "builtin_instance_counter": { + "pedersen_builtin": 11, + "range_check_builtin": 77, + "poseidon_builtin": 10 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 21, + "builtin_instance_counter": { + "pedersen_builtin": 2 + }, + "n_memory_holes": 0 + } + } + }, + "InvokeFunction": { + "deprecated_resources": { + "constant": { + "n_steps": 3763, + "builtin_instance_counter": { + "pedersen_builtin": 14, + "range_check_builtin": 69 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 8, + "builtin_instance_counter": { + "pedersen_builtin": 1 + }, + "n_memory_holes": 0 + } + }, + "resources": { + "constant": { + "n_steps": 3904, + "builtin_instance_counter": { + "pedersen_builtin": 4, + "range_check_builtin": 74, + "poseidon_builtin": 11 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 8, + "builtin_instance_counter": { + "pedersen_builtin": 1 + }, + "n_memory_holes": 0 + } + } + }, + "L1Handler": { + "deprecated_resources": { + "constant": { + "n_steps": 1233, + "builtin_instance_counter": { + "pedersen_builtin": 11, + "range_check_builtin": 16 + }, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 13, + "builtin_instance_counter": { + "pedersen_builtin": 1 + }, + "n_memory_holes": 0 + } + }, + "resources": { + "constant": { + "n_steps": 0, + "builtin_instance_counter": {}, + "n_memory_holes": 0 + }, + "calldata_factor": { + "n_steps": 13, + "builtin_instance_counter": { + "pedersen_builtin": 1 + }, + "n_memory_holes": 0 + } + } + } + }, + "compute_os_kzg_commitment_info": { + "n_steps": 113, + "builtin_instance_counter": { + "range_check_builtin": 17 + }, + "n_memory_holes": 0 + } + }, + "validate_max_n_steps": 1000000, + "vm_resource_fee_cost": { + "add_mod_builtin": [4, 100], + "bitwise_builtin": [16, 100], + "ec_op_builtin": [256, 100], + "ecdsa_builtin": [512, 100], + "keccak_builtin": [512, 100], + "mul_mod_builtin": [4, 100], + "n_steps": [25, 10000], + "output_builtin": [0, 1], + "pedersen_builtin": [8, 100], + "poseidon_builtin": [8, 100], + "range_check_builtin": [4, 100], + "range_check96_builtin": [4, 100] + } +} diff --git a/orchestrator/crates/settlement-clients/starknet/src/tests/setup.rs b/orchestrator/crates/settlement-clients/starknet/src/tests/setup.rs new file mode 100644 index 000000000..ec68dc539 --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/tests/setup.rs @@ -0,0 +1,185 @@ +use std::collections::HashMap; +use std::env; +use std::future::Future; +use std::ops::Range; +use std::path::{Path, PathBuf}; +use std::process::{Child, Command, Stdio}; +use std::sync::Mutex; +use std::time::Duration; + +use tempfile::TempDir; +use url::Url; + +// This code has been take from [here](https://github.com/madara-alliance/madara/blob/main/crates/tests/src/lib.rs) +// and modified to fit the needs of this project. +pub struct MadaraCmd { + pub process: Option, + pub ready: bool, + pub rpc_url: Url, + pub tempdir: TempDir, + pub _port: MadaraPortNum, +} + +pub async fn wait_for_cond>>( + mut cond: impl FnMut() -> F, + duration: Duration, +) -> color_eyre::Result { + let mut attempt = 0; + loop { + let err = match cond().await { + Ok(result) => return Ok(result), + Err(err) => { + // Empty block, no action needed + err + } + }; + + attempt += 1; + if attempt >= 10 { + panic!("No answer from the node after {attempt} attempts: {:#}", err) + } + + tokio::time::sleep(duration).await; + } +} + +impl MadaraCmd { + pub fn db_dir(&self) -> &Path { + self.tempdir.path() + } + + pub async fn wait_for_ready(&mut self) -> &mut Self { + // We are fine with `expect` here as this function is called in the intial phases of the + // program execution + let endpoint = self.rpc_url.join("/health").expect("Request to health endpoint failed"); + wait_for_cond( + || async { + let res = reqwest::get(endpoint.clone()).await?; + res.error_for_status()?; + Ok(true) + }, + Duration::from_millis(1000), + ) + .await + .expect("Could not get health of Madara"); + self.ready = true; + self + } +} + +impl Drop for MadaraCmd { + fn drop(&mut self) { + let Some(mut child) = self.process.take() else { return }; + let kill = || { + let mut kill = Command::new("kill").args(["-s", "TERM", &child.id().to_string()]).spawn()?; + kill.wait()?; + Ok::<_, color_eyre::Report>(()) + }; + if let Err(_err) = kill() { + match child.kill() { + Ok(kill) => kill, + Err(e) => { + log::error!("{}", format!("Failed to kill Madara {:?}", e)); + } + } + } + match child.wait() { + Ok(exit_status) => log::debug!("{}", exit_status), + Err(e) => log::error!("failed to exit madara {:?}", e), + } + } +} + +// this really should use unix sockets, sad + +const PORT_RANGE: Range = 19944..20000; + +struct AvailablePorts> { + to_reuse: Vec, + next: I, +} + +lazy_static::lazy_static! { + static ref AVAILABLE_PORTS: Mutex>> = Mutex::new(AvailablePorts { to_reuse: vec![], next: PORT_RANGE }); +} + +pub struct MadaraPortNum(pub u16); +impl Drop for MadaraPortNum { + fn drop(&mut self) { + let mut guard = AVAILABLE_PORTS.lock().expect("poisoned lock"); + guard.to_reuse.push(self.0); + } +} + +pub fn get_port() -> MadaraPortNum { + let mut guard = AVAILABLE_PORTS.lock().expect("poisoned lock"); + if let Some(el) = guard.to_reuse.pop() { + return MadaraPortNum(el); + } + MadaraPortNum(guard.next.next().expect("no more port to use")) +} + +pub struct MadaraCmdBuilder { + args: Vec, + env: HashMap, + tempdir: TempDir, + port: MadaraPortNum, +} + +impl Default for MadaraCmdBuilder { + fn default() -> Self { + Self::new() + } +} + +impl MadaraCmdBuilder { + pub fn new() -> Self { + Self { + args: Default::default(), + env: Default::default(), + tempdir: TempDir::with_prefix("madara-test").unwrap(), + port: get_port(), + } + } + + pub fn args(mut self, args: impl IntoIterator>) -> Self { + self.args = args.into_iter().map(Into::into).collect(); + self + } + + pub fn env(mut self, env: impl IntoIterator, impl Into)>) -> Self { + self.env = env.into_iter().map(|(k, v)| (k.into(), v.into())).collect(); + self + } + + pub fn run(self) -> MadaraCmd { + let target_bin = env::var("MADARA_ORCHESTRATOR_MADARA_BINARY_PATH").expect("failed to get binary path"); + let target_bin = PathBuf::from(target_bin); + + if !target_bin.exists() { + panic!("No binary to run: {:?}", target_bin) + } + + let process = Command::new(target_bin) + .envs(self.env) + .args(self.args.into_iter().chain([ + "--telemetry-disabled".into(), // important: disable telemetry!! + "--no-prometheus".into(), + "--base-path".into(), + format!("{}", self.tempdir.as_ref().display()), + "--rpc-port".into(), + format!("{}", self.port.0), + ])) + .stdout(Stdio::piped()) + .spawn() + .unwrap(); + + MadaraCmd { + process: Some(process), + ready: false, + rpc_url: Url::parse(&format!("http://127.0.0.1:{}/", self.port.0)).unwrap(), + tempdir: self.tempdir, + _port: self.port, + } + } +} diff --git a/orchestrator/crates/settlement-clients/starknet/src/tests/test.rs b/orchestrator/crates/settlement-clients/starknet/src/tests/test.rs new file mode 100644 index 000000000..d4860e40b --- /dev/null +++ b/orchestrator/crates/settlement-clients/starknet/src/tests/test.rs @@ -0,0 +1,215 @@ +use std::env; +use std::path::Path; +use std::sync::Arc; +use std::time::Duration; + +use color_eyre::eyre::eyre; +use rstest::{fixture, rstest}; +use settlement_client_interface::SettlementClient; +use starknet::accounts::{Account, ConnectedAccount, ExecutionEncoding, SingleOwnerAccount}; +use starknet::contract::ContractFactory; +use starknet::core::types::contract::{CompiledClass, SierraClass}; +use starknet::core::types::{ + BlockId, BlockTag, DeclareTransactionResult, Felt, FunctionCall, InvokeTransactionResult, StarknetError, + TransactionExecutionStatus, TransactionStatus, +}; +use starknet::macros::{felt, selector}; +use starknet::providers::jsonrpc::HttpTransport; +use starknet::providers::{JsonRpcClient, Provider, ProviderError, Url}; +use starknet::signers::{LocalWallet, SigningKey}; +use utils::env_utils::get_env_var_or_panic; + +use super::setup::{wait_for_cond, MadaraCmd, MadaraCmdBuilder}; +use crate::{LocalWalletSignerMiddleware, StarknetSettlementClient, StarknetSettlementValidatedArgs}; + +#[fixture] +pub async fn spin_up_madara() -> MadaraCmd { + dotenvy::from_filename_override(".env.test").expect("Failed to load the .env file"); + tracing::debug!("Spinning up Madara"); + let mut node = MadaraCmdBuilder::new() + .args([ + "--no-sync-polling", + "--devnet", + "--no-l1-sync", + "--chain-config-path=./src/tests/preset.yml", + "--rpc-cors", + "all", + ]) + .run(); + node.wait_for_ready().await; + node +} + +async fn wait_for_tx(account: &LocalWalletSignerMiddleware, transaction_hash: Felt, duration: Duration) -> bool { + let result = wait_for_cond( + || async { + let receipt = match account.provider().get_transaction_status(transaction_hash).await { + Ok(receipt) => Ok(receipt), + Err(ProviderError::StarknetError(StarknetError::TransactionHashNotFound)) => { + Err(eyre!("Transaction not yet received")) + } + _ => Err(eyre!("Unknown error")), + }; + + match receipt { + Ok(TransactionStatus::Received) => Err(eyre!("Transaction not yet received")), + Ok(TransactionStatus::Rejected) => Ok(false), + Ok(TransactionStatus::AcceptedOnL2(status)) => match status { + TransactionExecutionStatus::Succeeded => Ok(true), + TransactionExecutionStatus::Reverted => Ok(false), + }, + Ok(TransactionStatus::AcceptedOnL1(status)) => match status { + TransactionExecutionStatus::Succeeded => Ok(true), + TransactionExecutionStatus::Reverted => Ok(false), + }, + Err(e) => Err(eyre!("Unknown error: {}", e)), + } + }, + duration, + ) + .await; + match result { + Ok(true) => true, + Ok(false) => false, + Err(e) => panic!("Error while waiting for transaction: {}", e), + } +} + +#[fixture] +async fn setup(#[future] spin_up_madara: MadaraCmd) -> (LocalWalletSignerMiddleware, MadaraCmd) { + let madara_process = spin_up_madara.await; + + let starknet_settlement_params: StarknetSettlementValidatedArgs = StarknetSettlementValidatedArgs { + starknet_rpc_url: Url::parse(madara_process.rpc_url.as_ref()).unwrap(), + starknet_private_key: get_env_var_or_panic("MADARA_ORCHESTRATOR_STARKNET_PRIVATE_KEY"), + starknet_account_address: get_env_var_or_panic("MADARA_ORCHESTRATOR_STARKNET_ACCOUNT_ADDRESS"), + starknet_cairo_core_contract_address: get_env_var_or_panic( + "MADARA_ORCHESTRATOR_STARKNET_CAIRO_CORE_CONTRACT_ADDRESS", + ), + starknet_finality_retry_wait_in_secs: get_env_var_or_panic( + "MADARA_ORCHESTRATOR_STARKNET_FINALITY_RETRY_WAIT_IN_SECS", + ) + .parse::() + .unwrap(), + }; + + let rpc_url = Url::parse(starknet_settlement_params.starknet_rpc_url.as_ref()).unwrap(); + + let provider = Arc::new(JsonRpcClient::new(HttpTransport::new(rpc_url))); + let signer = LocalWallet::from(SigningKey::from_secret_scalar( + Felt::from_hex(&starknet_settlement_params.starknet_private_key).expect("Invalid private key"), + )); + let address = Felt::from_hex(&starknet_settlement_params.starknet_account_address.to_string()).unwrap(); + + let chain_id = provider.chain_id().await.unwrap(); + let mut account = SingleOwnerAccount::new(provider, signer, address, chain_id, ExecutionEncoding::New); + + // `SingleOwnerAccount` defaults to checking nonce and estimating fees against the latest + // block. Optionally change the target block to pending with the following line: + account.set_block_id(BlockId::Tag(BlockTag::Pending)); + (Arc::new(account), madara_process) +} + +#[rstest] +#[tokio::test] +async fn test_settle(#[future] setup: (LocalWalletSignerMiddleware, MadaraCmd)) { + dotenvy::from_filename_override(".env.test").expect("Failed to load the .env file"); + + let (account, madara_process) = setup.await; + + let mut starknet_settlement_params: StarknetSettlementValidatedArgs = StarknetSettlementValidatedArgs { + starknet_rpc_url: madara_process.rpc_url.clone(), + starknet_private_key: get_env_var_or_panic("MADARA_ORCHESTRATOR_STARKNET_PRIVATE_KEY"), + starknet_account_address: get_env_var_or_panic("MADARA_ORCHESTRATOR_STARKNET_ACCOUNT_ADDRESS"), + starknet_cairo_core_contract_address: get_env_var_or_panic( + "MADARA_ORCHESTRATOR_STARKNET_CAIRO_CORE_CONTRACT_ADDRESS", + ), + starknet_finality_retry_wait_in_secs: get_env_var_or_panic( + "MADARA_ORCHESTRATOR_STARKNET_FINALITY_RETRY_WAIT_IN_SECS", + ) + .parse::() + .unwrap(), + }; + + let project_root = Path::new(env!("CARGO_MANIFEST_DIR")).ancestors().nth(3).unwrap(); + let contract_path = project_root.join("crates/settlement-clients/starknet/src/tests/mock_contracts/target/dev"); + let sierra_class: SierraClass = serde_json::from_reader( + std::fs::File::open(contract_path.join("mock_contracts_Piltover.contract_class.json")) + .expect("Could not open sierra class file"), + ) + .expect("Failed to parse SierraClass"); + + let compiled_class: CompiledClass = serde_json::from_reader( + std::fs::File::open(contract_path.join("mock_contracts_Piltover.compiled_contract_class.json")) + .expect("Could not open compiled class file"), + ) + .expect("Failed to parse CompiledClass"); + + let flattened_class = sierra_class.clone().flatten().unwrap(); + let compiled_class_hash = compiled_class.class_hash().unwrap(); + + let DeclareTransactionResult { transaction_hash: declare_tx_hash, class_hash: _ } = + account.declare_v2(Arc::new(flattened_class.clone()), compiled_class_hash).send().await.unwrap(); + tracing::debug!("declare tx hash {:?}", declare_tx_hash); + + let is_success = wait_for_tx(&account, declare_tx_hash, Duration::from_secs(2)).await; + assert!(is_success, "Declare transaction failed"); + + let contract_factory = ContractFactory::new(flattened_class.class_hash(), account.clone()); + let deploy_v1 = contract_factory.deploy_v1(vec![], felt!("1122"), false); + let deployed_address = deploy_v1.deployed_address(); + + // env::set_var("STARKNET_CAIRO_CORE_CONTRACT_ADDRESS", deployed_address.to_hex_string()); + starknet_settlement_params.starknet_cairo_core_contract_address = deployed_address.to_hex_string(); + + let InvokeTransactionResult { transaction_hash: deploy_tx_hash } = + deploy_v1.send().await.expect("Unable to deploy contract"); + + let is_success = wait_for_tx(&account, deploy_tx_hash, Duration::from_secs(2)).await; + assert!(is_success, "Deploy trasaction failed"); + + let settlement_client = StarknetSettlementClient::new_with_args(&starknet_settlement_params).await; + let onchain_data_hash = [1; 32]; + let mut program_output = Vec::with_capacity(32); + program_output.fill(onchain_data_hash); + let update_state_tx_hash = settlement_client + .update_state_calldata(program_output, onchain_data_hash, [1; 32]) + .await + .expect("Sending Update state"); + + tracing::debug!("update state tx hash {:?}", update_state_tx_hash); + + let is_success = wait_for_tx( + &account, + Felt::from_hex(&update_state_tx_hash).expect("Incorrect transaction hash"), + Duration::from_secs(2), + ) + .await; + assert!(is_success, "Update state transaction failed/reverted"); + + let call_result = account + .provider() + .call( + FunctionCall { + contract_address: deployed_address, + entry_point_selector: selector!("get_is_updated"), + calldata: vec![Felt::from_bytes_be_slice(&onchain_data_hash)], + }, + BlockId::Tag(BlockTag::Latest), + ) + .await + .expect("failed to call the contract"); + assert!(call_result[0] == true.into(), "Should be updated"); +} + +#[rstest] +#[tokio::test] +async fn test_get_nonce_works(#[future] setup: (LocalWalletSignerMiddleware, MadaraCmd)) { + let (account, _madara_process) = setup.await; + let nonce = account.get_nonce().await; + match &nonce { + Ok(n) => tracing::debug!("Nonce value from get_nonce: {:?}", n), + Err(e) => tracing::error!("Error getting nonce: {:?}", e), + } + assert!(nonce.is_ok(), "Failed to get nonce"); +} diff --git a/orchestrator/crates/utils/Cargo.toml b/orchestrator/crates/utils/Cargo.toml new file mode 100644 index 000000000..755fcd61d --- /dev/null +++ b/orchestrator/crates/utils/Cargo.toml @@ -0,0 +1,33 @@ +[package] +name = "utils" +version.workspace = true +edition.workspace = true + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +color-eyre = { workspace = true } +serde.workspace = true +serde_json.workspace = true +thiserror.workspace = true +#Instrumentation +base64 = { workspace = true } +dotenv = { workspace = true } +httpmock = { workspace = true } +opentelemetry = { workspace = true, features = ["metrics", "logs"] } +opentelemetry-appender-tracing = { workspace = true, default-features = false } +opentelemetry-otlp = { workspace = true, features = [ + "tonic", + "metrics", + "logs", +] } +opentelemetry-semantic-conventions = { workspace = true } +opentelemetry-stdout = { workspace = true } +opentelemetry_sdk = { workspace = true, features = ["rt-tokio", "logs"] } +reqwest = { workspace = true } +tokio = { workspace = true } +tracing = { workspace = true } +tracing-core = { workspace = true, default-features = false } +tracing-opentelemetry = { workspace = true } +tracing-subscriber = { workspace = true, features = ["env-filter"] } +url = { workspace = true } diff --git a/orchestrator/crates/utils/src/collections.rs b/orchestrator/crates/utils/src/collections.rs new file mode 100644 index 000000000..a7e57f12e --- /dev/null +++ b/orchestrator/crates/utils/src/collections.rs @@ -0,0 +1,18 @@ +pub fn has_dup(slice: &[T]) -> bool { + for i in 1..slice.len() { + if slice[i..].contains(&slice[i - 1]) { + return true; + } + } + false +} + +pub fn is_sorted(data: &[T]) -> bool +where + T: Ord, +{ + if data.len() == 1 { + return true; + } + data.windows(2).all(|w| w[0] <= w[1]) +} diff --git a/orchestrator/crates/utils/src/env_utils.rs b/orchestrator/crates/utils/src/env_utils.rs new file mode 100644 index 000000000..11771f085 --- /dev/null +++ b/orchestrator/crates/utils/src/env_utils.rs @@ -0,0 +1,27 @@ +use std::env::VarError; + +pub fn get_env_var(key: &str) -> Result { + std::env::var(key) +} + +pub fn get_env_var_or_panic(key: &str) -> String { + get_env_var(key).unwrap_or_else(|e| panic!("Failed to get env var {}: {}", key, e)) +} + +pub fn get_env_var_or_default(key: &str, default: &str) -> String { + get_env_var(key).unwrap_or(default.to_string()) +} + +pub fn get_env_var_optional(key: &str) -> Result, VarError> { + match get_env_var(key) { + // if value is empty string, return None + Ok(s) if s.is_empty() => Ok(None), + Ok(s) => Ok(Some(s)), + Err(VarError::NotPresent) => Ok(None), + Err(e) => Err(e), + } +} + +pub fn get_env_car_optional_or_panic(key: &str) -> Option { + get_env_var_optional(key).unwrap_or_else(|e| panic!("Failed to get env var {}: {}", key, e)) +} diff --git a/orchestrator/crates/utils/src/http_client.rs b/orchestrator/crates/utils/src/http_client.rs new file mode 100644 index 000000000..2b4c862ab --- /dev/null +++ b/orchestrator/crates/utils/src/http_client.rs @@ -0,0 +1,671 @@ +//! A flexible HTTP client builder with support for default parameters and request customization. +//! +//! This module provides a builder pattern implementation for creating and customizing HTTP clients +//! with default configurations. It supports: +//! - Default headers, query parameters, and form data +//! - Client-level TLS certificates and identities +//! - Request-level customization +//! - Body handling (currently optimized for string payloads) +//! +//! # Body Handling +//! The current implementation serializes request bodies to JSON format. The body method accepts +//! any type that implements the Serialize trait, allowing for flexible payload structures including +//! strings, numbers, objects, and arrays. For binary data or other formats, the implementation +//! would need to be modified. +//! +//! # Examples +//! ``` +//! use utils::http_client::HttpClient; +//! +//! let client = HttpClient::builder("https://api.example.com") +//! .default_header("Authorization", "Bearer token") +//! .default_query_param("version", "v1") +//! .default_body_param("tenant=main") +//! .build()?; +//! +//! let response = client +//! .request() +//! .method(Method::POST) +//! .path("/api/data") +//! .query_param("id", "123") +//! .body("name=test") +//! .send() +//! .await?; +//! ``` + +use std::collections::HashMap; +use std::io; +use std::path::Path; + +use reqwest::header::{HeaderMap, HeaderName, HeaderValue}; +use reqwest::multipart::{Form, Part}; +use reqwest::{Certificate, Client, ClientBuilder, Identity, Method, Response, Result}; +use serde::Serialize; +use url::{ParseError, Url}; + +/// Main HTTP client with default configurations. +/// +/// Holds the base configuration and default parameters that will be applied +/// to all requests made through this client. +#[derive(Debug)] +pub struct HttpClient { + /// Base URL for all requests + base_url: Url, + /// Configured reqwest client + client: Client, + /// Headers to be included in every request + default_headers: HeaderMap, + /// Query parameters to be included in every request + default_query_params: HashMap, + /// Form data to be included in every multipart request + default_form_data: HashMap, + /// Body parameters to be included in every request body + /// Note: Currently assumes string data with & as separator + default_body_params: String, +} + +/// Builder for constructing an HttpClient with custom configurations. +#[derive(Debug)] +pub struct HttpClientBuilder { + base_url: Url, + client_builder: ClientBuilder, + default_headers: HeaderMap, + default_query_params: HashMap, + default_form_data: HashMap, + default_body_params: String, +} + +impl HttpClient { + /// Creates a new builder for constructing an HttpClient. + pub fn builder(base_url: &str) -> std::result::Result { + Ok(HttpClientBuilder::new(Url::parse(base_url)?)) + } + + /// Creates a new request builder for making HTTP requests. + /// + /// # Returns + /// A RequestBuilder instance that can be used to construct and send an HTTP request + pub fn request(&self) -> RequestBuilder { + RequestBuilder::new(self) + } + + /// Internal method to send a request with all default parameters applied. + /// + /// # Arguments + /// * `builder` - The RequestBuilder containing request-specific configurations + /// + /// # Returns + /// A Result containing either the Response or an error + async fn send_request(&self, builder: RequestBuilder<'_>) -> Result { + // Create a new URL by cloning the base URL and appending the path + let mut url = self.base_url.clone(); + url.path_segments_mut() + .expect("Base URL cannot be a base") + .extend(builder.path.trim_start_matches('/').split('/')); + // Merge query parameters + { + let mut pairs = url.query_pairs_mut(); + let default_params = self.default_query_params.clone(); + for (key, value) in default_params { + pairs.append_pair(&key, &value); + } + for (key, value) in &builder.query_params { + pairs.append_pair(key, value); + } + } + + let mut request = self.client.request(builder.method, url); + + // Merge headers + let mut final_headers = self.default_headers.clone(); + final_headers.extend(builder.headers); + request = request.headers(final_headers); + + // Handle body - merge builder body with defaults + let mut body = String::new(); + if !self.default_body_params.is_empty() { + body.push_str(&self.default_body_params); + } + if let Some(builder_body) = builder.body { + if !body.is_empty() { + body.push('&'); + } + body.push_str(&builder_body); + } + + if !body.is_empty() { + request = request.body(body); + } + + // Handle form data + if let Some(mut form) = builder.form { + let default_form: HashMap = self.default_form_data.clone(); + for (key, value) in default_form { + form = form.text(key, value); + } + request = request.multipart(form); + } + request.send().await + } +} + +impl HttpClientBuilder { + /// Creates a new HttpClientBuilder with default configurations. + fn new(base_url: Url) -> Self { + Self { + base_url, + client_builder: Client::builder(), + default_headers: HeaderMap::new(), + default_query_params: HashMap::new(), + default_form_data: HashMap::new(), + default_body_params: String::new(), + } + } + + /// Adds client identity for TLS authentication. + pub fn identity(mut self, identity: Identity) -> Self { + self.client_builder = self.client_builder.identity(identity); + self + } + + /// Adds a root certificate for TLS verification. + pub fn add_root_certificate(mut self, cert: Certificate) -> Self { + self.client_builder = self.client_builder.add_root_certificate(cert); + self + } + + /// Adds a default header to be included in all requests. + pub fn default_header(mut self, key: HeaderName, value: HeaderValue) -> Self { + self.default_headers.insert(key, value); + self + } + + /// Adds a default query parameter to be included in all requests. + pub fn default_query_param(mut self, key: &str, value: &str) -> Self { + self.default_query_params.insert(key.to_string(), value.to_string()); + self + } + + /// Adds default form data to be included in all multipart requests. + pub fn default_form_data(mut self, key: &str, value: &str) -> Self { + self.default_form_data.insert(key.to_string(), value.to_string()); + self + } + + /// Builds the HttpClient with all configured defaults. + pub fn build(self) -> Result { + Ok(HttpClient { + base_url: self.base_url, + client: self.client_builder.build()?, + default_headers: self.default_headers, + default_query_params: self.default_query_params, + default_form_data: self.default_form_data, + default_body_params: self.default_body_params, + }) + } +} + +/// Builder for constructing individual HTTP requests. +#[derive(Debug)] +pub struct RequestBuilder<'a> { + client: &'a HttpClient, + method: Method, + path: String, + headers: HeaderMap, + query_params: HashMap, + /// Request body as a string. For binary data, this would need to be modified. + body: Option, + form: Option
, +} + +impl<'a> RequestBuilder<'a> { + fn new(client: &'a HttpClient) -> Self { + Self { + client, + method: Method::GET, + path: String::new(), + headers: HeaderMap::new(), + query_params: HashMap::new(), + body: None, + form: None, + } + } + + /// Sets the HTTP method for the request. + pub fn method(mut self, method: Method) -> Self { + self.method = method; + self + } + + /// Appends a path segment to the existing path. + /// If the path starts with '/', it will replace the existing path instead of appending. + pub fn path(mut self, path: &str) -> Self { + if path.starts_with('/') { + self.path = path.to_string(); + } else { + if !self.path.is_empty() && !self.path.ends_with('/') { + self.path.push('/'); + } + self.path.push_str(path); + } + self + } + + /// Adds a header to the request. + pub fn header(mut self, key: HeaderName, value: HeaderValue) -> Self { + self.headers.insert(key, value); + self + } + + /// Adds a query parameter to the request. + pub fn query_param(mut self, key: &str, value: &str) -> Self { + self.query_params.insert(key.to_string(), value.to_string()); + self + } + + /// Sets the request body by serializing the input to JSON. + /// This method can handle any type that implements Serialize. + /// + /// # Arguments + /// * `body` - The data to be serialized and sent as the request body + /// + /// # Examples + /// ``` + /// let request = client.request() + /// .method(Method::POST) + /// .body(json!({ "key": "value" })); + /// ``` + pub fn body(mut self, body: T) -> std::result::Result { + self.body = Some(serde_json::to_string(&body)?); + Ok(self) + } + + /// Adds a text part to the multipart form. + pub fn form_text(mut self, key: &str, value: &str) -> Self { + let form = match self.form.take() { + Some(existing_form) => existing_form.text(key.to_string(), value.to_string()), + None => Form::new().text(key.to_string(), value.to_string()), + }; + self.form = Some(form); + self + } + + /// Adds a file part to the multipart form. + pub fn form_file(mut self, key: &str, file_path: &Path, file_name: &str) -> io::Result { + let file_bytes = std::fs::read(file_path)?; + let file_name = file_name.to_string(); + let part = Part::bytes(file_bytes).file_name(file_name); + + let form = match self.form.take() { + Some(existing_form) => existing_form.part(key.to_string(), part), + None => Form::new().part(key.to_string(), part), + }; + self.form = Some(form); + Ok(self) + } + /// Sends the request with all configured parameters. + pub async fn send(self) -> Result { + self.client.send_request(self).await + } +} + +#[cfg(test)] +mod http_client_tests { + use std::path::PathBuf; + + use base64::engine::general_purpose; + use base64::Engine; + use httpmock; + use reqwest::header::{HeaderName, HeaderValue}; + + use super::*; + + const TEST_URL: &str = "https://madara.orchestrator.com"; + + /// Verifies that HttpClient::builder creates a valid builder with the provided base URL + /// and all default values are properly initialized + #[test] + fn test_builder_basic_initialization() { + let client = + HttpClient::builder(TEST_URL).expect("Failed to create builder").build().expect("Failed to build client"); + + assert_eq!(client.base_url.as_str(), format!("{}/", TEST_URL)); + assert!(client.default_headers.is_empty()); + assert!(client.default_query_params.is_empty()); + assert!(client.default_form_data.is_empty()); + assert!(client.default_body_params.is_empty()); + } + + /// Ensures the builder properly panics when provided with an invalid URL + /// Cases: malformed URLs, invalid schemes, empty URLs + #[test] + fn test_builder_invalid_url() { + let result = HttpClient::builder("not a url"); + assert!(result.is_err()); + + match result { + Err(e) => assert!(e.to_string().contains("relative URL without a base")), + Ok(_) => panic!("Expected error for invalid URL"), + } + } + + /// Verifies that default headers set during builder phase are: + /// - Properly stored in the builder + /// - Correctly transferred to the final client + /// - Applied to outgoing requests + #[test] + fn test_builder_default_headers() { + let header_name = HeaderName::from_static("x-test"); + let header_value = HeaderValue::from_static("test-value"); + + let client = HttpClient::builder(TEST_URL) + .expect("Failed to create builder") + .default_header(header_name.clone(), header_value.clone()) + .build() + .expect("Failed to build client"); + + assert!(client.default_headers.contains_key(&header_name)); + assert_eq!(client.default_headers.get(&header_name).unwrap(), &header_value); + } + + /// Validates default query parameter handling: + /// - Parameters are correctly stored + /// - Multiple parameters can be added + /// - Parameters are properly URL encoded + #[test] + fn test_builder_default_query_params() { + let client = HttpClient::builder(TEST_URL) + .expect("Failed to create builder") + .default_query_param("key1", "value1") + .default_query_param("key2", "value 2") + .build() + .expect("Failed to build client"); + + assert_eq!(client.default_query_params.len(), 2); + assert_eq!(client.default_query_params.get("key1").unwrap(), "value1"); + assert_eq!(client.default_query_params.get("key2").unwrap(), "value 2"); + } + + /// # Request Builder Tests + + /// Verifies that all HTTP methods (GET, POST, PUT, DELETE, etc.) + /// can be correctly set and are properly sent in requests + #[test] + fn test_request_builder_method_setting() { + let client = + HttpClient::builder(TEST_URL).expect("Failed to create builder").build().expect("Failed to build client"); + + let request = client.request().method(Method::GET); + assert_eq!(request.method, Method::GET); + + let request = client.request().method(Method::POST); + assert_eq!(request.method, Method::POST); + + let request = client.request().method(Method::PUT); + assert_eq!(request.method, Method::PUT); + + let request = client.request().method(Method::DELETE); + assert_eq!(request.method, Method::DELETE); + } + + /// Tests path handling functionality: + /// - Absolute paths (starting with /) replace existing path + /// - Relative paths are properly appended + /// - Multiple path segments are correctly joined + /// - Empty paths and special characters + /// - Unicode paths + #[test] + fn test_request_builder_path_handling() { + let client = + HttpClient::builder(TEST_URL).expect("Failed to create builder").build().expect("Failed to build client"); + + // Test absolute path + let request = client.request().path("/absolute/path"); + assert_eq!(request.path, "/absolute/path"); + + // Test relative path + let request = client.request().path("relative").path("path"); + assert_eq!(request.path, "relative/path"); + + // Test mixed paths + let request = client.request().path("/absolute").path("relative"); + assert_eq!(request.path, "/absolute/relative"); + + // Test empty path handling + let request = client.request().path(""); + assert_eq!(request.path, ""); + + // Test multiple slashes + let request = client.request().path("//test//path//"); + assert_eq!(request.path, "//test//path//"); + + // Test Unicode path + let request = client.request().path("/굋čƕ/č·Æ径"); + assert_eq!(request.path, "/굋čƕ/č·Æ径"); + } + + /// Tests query parameter behavior: + /// - Request-specific parameters are added + /// - Parameters merge correctly with defaults + /// - Later parameters override earlier ones + #[test] + fn test_request_builder_query_params() { + let client = HttpClient::builder(TEST_URL) + .expect("Failed to create builder") + .default_query_param("default", "value") + .build() + .expect("Failed to build client"); + + let request = client.request().query_param("test", "value").query_param("another", "param"); + + assert_eq!(request.query_params.len(), 2); + assert_eq!(request.query_params.get("test").unwrap(), "value"); + assert_eq!(request.query_params.get("another").unwrap(), "param"); + } + + /// Tests header manipulation: + /// - Headers can be added to specific requests + /// - Request headers properly merge with defaults + /// - Request-specific headers override defaults + #[test] + fn test_request_builder_headers() { + let header_name = HeaderName::from_static("x-test"); + let header_value = HeaderValue::from_static("default-value"); + let client = HttpClient::builder(TEST_URL) + .expect("Failed to create builder") + .default_header(header_name.clone(), header_value) + .build() + .expect("Failed to build client"); + + let new_value = HeaderValue::from_static("new-value"); + let request = client.request().header(header_name.clone(), new_value.clone()); + + assert!(request.headers.contains_key(&header_name)); + assert_eq!(request.headers.get(&header_name).unwrap(), &new_value); + } + + /// # Form Data Tests + + /// Validates multipart form text field handling: + /// - Single field addition + /// - Multiple fields + /// - Form builder chaining + #[test] + fn test_multipart_form_text() { + let client = + HttpClient::builder(TEST_URL).expect("Failed to create builder").build().expect("Failed to build client"); + + // Test initial state + let request = client.request(); + assert!(request.form.is_none()); + + // Test single field + let request = client.request().form_text("field1", "value1"); + assert!(request.form.is_some()); + + // Test multiple fields with chaining + let request = client.request().form_text("field1", "value1").form_text("field2", "value2"); + assert!(request.form.is_some()); + } + + /// Tests file upload functionality: + /// - Single file upload + /// - File name handling + /// - Binary content handling + /// - Non-existent file handling + #[test] + fn test_multipart_form_file() { + let client = + HttpClient::builder(TEST_URL).expect("Failed to create builder").build().expect("Failed to build client"); + let file_path: PathBuf = "../orchestrator/src/tests/artifacts/fibonacci.zip".parse().unwrap(); + + // Test initial state + let request = client.request(); + assert!(request.form.is_none()); + + let request = + client.request().form_file("file", &file_path, "fibonacci.zip").expect("Failed to add file to form"); + + assert!(request.form.is_some()); + } + + /// Tests body serialization functionality for the request builder: + /// - JSON serialization of different types + /// - Struct serialization + /// - Array/Vector serialization + #[test] + fn test_request_builder_body_serialization() { + let client = + HttpClient::builder(TEST_URL).expect("Failed to create builder").build().expect("Failed to build client"); + + // Test string body + let request = client.request().body("test string").expect("Failed to serialize string body"); + assert_eq!(request.body.unwrap(), r#""test string""#); + + // Test number body + let request = client.request().body(42).expect("Failed to serialize number body"); + assert_eq!(request.body.unwrap(), "42"); + + // Test struct body + #[derive(Serialize)] + struct TestStruct { + field1: String, + field2: i32, + } + + let test_struct = TestStruct { field1: "test".to_string(), field2: 123 }; + + let request = client.request().body(test_struct).expect("Failed to serialize struct body"); + assert_eq!(request.body.unwrap(), r#"{"field1":"test","field2":123}"#); + + // Test array/vec body + let vec_data = vec![1, 2, 3]; + let request = client.request().body(vec_data).expect("Failed to serialize vector body"); + assert_eq!(request.body.unwrap(), "[1,2,3]"); + } + + /// Tests TLS certificate and identity handling: + /// - Valid certificate addition + /// - Invalid certificate handling + /// - Identity verification + #[test] + fn test_certificate_handling() { + // Load variables from .env.test + dotenv::from_filename(".env.test").ok(); + + // Getting the cert files from the .env.test and then decoding it from base64 + let cert = general_purpose::STANDARD + .decode(std::env::var("MADARA_ORCHESTRATOR_SHARP_USER_CRT").unwrap()) + .expect("Failed to decode certificate"); + let key = general_purpose::STANDARD + .decode(std::env::var("MADARA_ORCHESTRATOR_SHARP_USER_KEY").unwrap()) + .expect("Failed to decode sharp user key"); + let server_cert = general_purpose::STANDARD + .decode(std::env::var("MADARA_ORCHESTRATOR_SHARP_SERVER_CRT").unwrap()) + .expect("Failed to decode sharp server certificate"); + + let identity = + Identity::from_pkcs8_pem(&cert, &key).expect("Failed to build the identity from certificate and key"); + let certificate = Certificate::from_pem(server_cert.as_slice()).expect("Failed to add root certificate"); + + let client = HttpClient::builder(TEST_URL) + .expect("Failed to create builder") + .identity(identity) + .add_root_certificate(certificate) + .build() + .expect("Failed to build client"); + + // Since we can't check the certificates directly, we'll just verify the client was built + assert_eq!(client.base_url.as_str(), (TEST_URL.to_owned() + "/")); + } + + /// Tests client behavior with: + /// - Large body content + /// - Large file uploads + /// - Memory usage monitoring + #[tokio::test] + async fn test_large_payload_handling() { + let mock_server = httpmock::MockServer::start(); + + let client = HttpClient::builder(&mock_server.base_url()) + .expect("Failed to create builder") + .build() + .expect("Failed to build client"); + + let large_body = "x".repeat(1024 * 1024); // 1MB string + let request = client.request().method(Method::POST).body(&large_body).expect("Failed to serialize large body"); + + assert!(request.body.is_some()); + assert_eq!(request.body.unwrap().len(), (1024 * 1024) + 2); + } + + /// # Integration Tests + + /// Tests complete request flow including: + /// - URL construction + /// - Header merging + /// - Query parameter combination + /// - Body handling + /// - Response processing + #[tokio::test] + async fn test_complete_request_flow() { + let mock_server = httpmock::MockServer::start(); + + let mock = mock_server.mock(|when, then| { + when.method("POST") + .path("/api/data") + .query_param("version", "v1") + .query_param("id", "123") + .header("Authorization", "Bearer token") + .body(r#"{"name":"test"}"#); + + then.status(200).header("content-type", "application/json").body(r#"{"status": "ok"}"#); + }); + + let client = HttpClient::builder(&mock_server.base_url()) + .expect("Failed to create builder") + .default_header(HeaderName::from_static("authorization"), HeaderValue::from_static("Bearer token")) + .default_query_param("version", "v1") + .build() + .expect("Failed to build client"); + + #[derive(Serialize)] + struct RequestBody { + name: String, + } + + let response = client + .request() + .method(Method::POST) + .path("/api/data") + .query_param("id", "123") + .body(RequestBody { name: "test".to_string() }) + .expect("Failed to serialize body") + .send() + .await + .expect("Failed to send request"); + + assert_eq!(response.status(), 200); + mock.assert(); + } +} diff --git a/orchestrator/crates/utils/src/lib.rs b/orchestrator/crates/utils/src/lib.rs new file mode 100644 index 000000000..4034036c7 --- /dev/null +++ b/orchestrator/crates/utils/src/lib.rs @@ -0,0 +1,16 @@ +pub mod collections; +pub mod env_utils; +pub mod http_client; +pub mod metrics; + +/// Evaluate `$x:expr` and if not true return `Err($y:expr)`. +/// +/// Used as `ensure!(expression_to_ensure, expression_to_return_on_false)`. +#[macro_export] +macro_rules! ensure { + ($x:expr, $y:expr $(,)?) => {{ + if !$x { + return Err($y); + } + }}; +} diff --git a/orchestrator/crates/utils/src/metrics/lib.rs b/orchestrator/crates/utils/src/metrics/lib.rs new file mode 100644 index 000000000..07f69c2dc --- /dev/null +++ b/orchestrator/crates/utils/src/metrics/lib.rs @@ -0,0 +1,30 @@ +use opentelemetry::metrics::{Counter, Gauge, Meter}; + +pub trait Metrics { + fn register() -> Self; +} + +#[macro_export] +macro_rules! register_metric { + ($name:ident, $type:ty) => { + pub static $name: Lazy<$type> = Lazy::new(|| <$type>::register()); + }; +} + +pub fn register_gauge_metric_instrument( + crate_meter: &Meter, + instrument_name: String, + desc: String, + unit: String, +) -> Gauge { + crate_meter.f64_gauge(instrument_name).with_description(desc).with_unit(unit).init() +} + +pub fn register_counter_metric_instrument( + crate_meter: &Meter, + instrument_name: String, + desc: String, + unit: String, +) -> Counter { + crate_meter.f64_counter(instrument_name).with_description(desc).with_unit(unit).init() +} diff --git a/orchestrator/crates/utils/src/metrics/mod.rs b/orchestrator/crates/utils/src/metrics/mod.rs new file mode 100644 index 000000000..965f28e93 --- /dev/null +++ b/orchestrator/crates/utils/src/metrics/mod.rs @@ -0,0 +1 @@ +pub mod lib; diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 000000000..70c9a78cd --- /dev/null +++ b/package-lock.json @@ -0,0 +1,868 @@ +{ + "name": "madara-orchestrator", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "madara-orchestrator", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "ethers": "^6.13.4", + "migrate-mongo": "^11.0.0", + "mongodb": "^6.9.0", + "starknet": "^6.11.0", + "uuid": "^10.0.0" + } + }, + "node_modules/@adraffy/ens-normalize": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/@adraffy/ens-normalize/-/ens-normalize-1.10.1.tgz", + "integrity": "sha512-96Z2IP3mYmF1Xg2cDm8f1gWGf/HUVedQ3FMifV4kG/PQ4yEP51xDtRAEfhVNt5f/uzpNkZHwWQuUcu6D6K+Ekw==" + }, + "node_modules/@babel/runtime": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.7.tgz", + "integrity": "sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@mongodb-js/saslprep": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.9.tgz", + "integrity": "sha512-tVkljjeEaAhCqTzajSdgbQ6gE6f3oneVwa3iXR6csiEwXXOFsiC6Uh9iAjAhXPtqa/XMDHWjjeNH/77m/Yq2dw==", + "dependencies": { + "sparse-bitfield": "^3.0.3" + } + }, + "node_modules/@noble/curves": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", + "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", + "dependencies": { + "@noble/hashes": "1.4.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@noble/curves/node_modules/@noble/hashes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", + "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@noble/hashes": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.5.0.tgz", + "integrity": "sha512-1j6kQFb7QRru7eKN3ZDvRcP13rugwdxZqCjbiAVZfIJwgj2A65UmT4TgARXGlXgnRkORLTDTrO19ZErt7+QXgA==", + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@scure/base": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.9.tgz", + "integrity": "sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==", + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@scure/starknet": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@scure/starknet/-/starknet-1.0.0.tgz", + "integrity": "sha512-o5J57zY0f+2IL/mq8+AYJJ4Xpc1fOtDhr+mFQKbHnYFmm3WQrC+8zj2HEgxak1a+x86mhmBC1Kq305KUpVf0wg==", + "dependencies": { + "@noble/curves": "~1.3.0", + "@noble/hashes": "~1.3.3" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@scure/starknet/node_modules/@noble/curves": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.3.0.tgz", + "integrity": "sha512-t01iSXPuN+Eqzb4eBX0S5oubSqXbK/xXa1Ne18Hj8f9pStxztHCE2gfboSp/dZRLSqfuLpRK2nDXDK+W9puocA==", + "dependencies": { + "@noble/hashes": "1.3.3" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@scure/starknet/node_modules/@noble/hashes": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.3.tgz", + "integrity": "sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA==", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@starknet-io/types-js": { + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/@starknet-io/types-js/-/types-js-0.7.7.tgz", + "integrity": "sha512-WLrpK7LIaIb8Ymxu6KF/6JkGW1sso988DweWu7p5QY/3y7waBIiPvzh27D9bX5KIJNRDyOoOVoHVEKYUYWZ/RQ==" + }, + "node_modules/@types/node": { + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "dependencies": { + "undici-types": "~6.19.2" + } + }, + "node_modules/@types/webidl-conversions": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz", + "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==" + }, + "node_modules/@types/whatwg-url": { + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-11.0.5.tgz", + "integrity": "sha512-coYR071JRaHa+xoEvvYqvnIHaVqaYrLPbsufM9BF63HkwI5Lgmy2QR8Q5K/lYDYo5AK82wOvSOS0UsLTpTG7uQ==", + "dependencies": { + "@types/webidl-conversions": "*" + } + }, + "node_modules/abi-wan-kanabi": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/abi-wan-kanabi/-/abi-wan-kanabi-2.2.3.tgz", + "integrity": "sha512-JlqiAl9CPvTm5kKG0QXmVCWNWoC/XyRMOeT77cQlbxXWllgjf6SqUmaNqFon72C2o5OSZids+5FvLdsw6dvWaw==", + "dependencies": { + "ansicolors": "^0.3.2", + "cardinal": "^2.1.1", + "fs-extra": "^10.0.0", + "yargs": "^17.7.2" + }, + "bin": { + "generate": "dist/generate.js" + } + }, + "node_modules/aes-js": { + "version": "4.0.0-beta.5", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-4.0.0-beta.5.tgz", + "integrity": "sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q==" + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ansicolors": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", + "integrity": "sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==" + }, + "node_modules/bson": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/bson/-/bson-6.8.0.tgz", + "integrity": "sha512-iOJg8pr7wq2tg/zSlCCHMi3hMm5JTOxLTagf3zxhcenHsFp+c6uOs6K7W5UE7A4QIJGtqh/ZovFNMP4mOPJynQ==", + "engines": { + "node": ">=16.20.1" + } + }, + "node_modules/cardinal": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/cardinal/-/cardinal-2.1.1.tgz", + "integrity": "sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==", + "dependencies": { + "ansicolors": "~0.3.2", + "redeyed": "~2.1.0" + }, + "bin": { + "cdl": "bin/cdl.js" + } + }, + "node_modules/cli-table3": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.5.tgz", + "integrity": "sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==", + "dependencies": { + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "@colors/colors": "1.5.0" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "engines": { + "node": "^12.20.0 || >=14" + } + }, + "node_modules/date-fns": { + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", + "integrity": "sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==", + "dependencies": { + "@babel/runtime": "^7.21.0" + }, + "engines": { + "node": ">=0.11" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/date-fns" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/ethers": { + "version": "6.13.4", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-6.13.4.tgz", + "integrity": "sha512-21YtnZVg4/zKkCQPjrDj38B1r4nQvTZLopUGMLQ1ePU2zV/joCfDC3t3iKQjWRzjjjbzR+mdAIoikeBRNkdllA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/ethers-io/" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@adraffy/ens-normalize": "1.10.1", + "@noble/curves": "1.2.0", + "@noble/hashes": "1.3.2", + "@types/node": "22.7.5", + "aes-js": "4.0.0-beta.5", + "tslib": "2.7.0", + "ws": "8.17.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/ethers/node_modules/@noble/curves": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.2.0.tgz", + "integrity": "sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==", + "dependencies": { + "@noble/hashes": "1.3.2" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/ethers/node_modules/@noble/hashes": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.2.tgz", + "integrity": "sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/fetch-cookie": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fetch-cookie/-/fetch-cookie-3.0.1.tgz", + "integrity": "sha512-ZGXe8Y5Z/1FWqQ9q/CrJhkUD73DyBU9VF0hBQmEO/wPHe4A9PKTjplFDLeFX8aOsYypZUcX5Ji/eByn3VCVO3Q==", + "dependencies": { + "set-cookie-parser": "^2.4.8", + "tough-cookie": "^4.0.0" + } + }, + "node_modules/fn-args": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/fn-args/-/fn-args-5.0.0.tgz", + "integrity": "sha512-CtbfI3oFFc3nbdIoHycrfbrxiGgxXBXXuyOl49h47JawM1mYrqpiRqnH5CB2mBatdXvHHOUO6a+RiAuuvKt0lw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-starknet-core": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/get-starknet-core/-/get-starknet-core-4.0.0.tgz", + "integrity": "sha512-6pLmidQZkC3wZsrHY99grQHoGpuuXqkbSP65F8ov1/JsEI8DDLkhsAuLCKFzNOK56cJp+f1bWWfTJ57e9r5eqQ==", + "dependencies": { + "@starknet-io/types-js": "^0.7.7" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/isomorphic-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz", + "integrity": "sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==", + "dependencies": { + "node-fetch": "^2.6.1", + "whatwg-fetch": "^3.4.1" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lossless-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/lossless-json/-/lossless-json-4.0.2.tgz", + "integrity": "sha512-+z0EaLi2UcWi8MZRxA5iTb6m4Ys4E80uftGY+yG5KNFJb5EceQXOhdW/pWJZ8m97s26u7yZZAYMcKWNztSZssA==" + }, + "node_modules/memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==" + }, + "node_modules/migrate-mongo": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/migrate-mongo/-/migrate-mongo-11.0.0.tgz", + "integrity": "sha512-GB/gHzUwp/fL1w6ksNGihTyb+cSrm6NbVLlz1OSkQKaLlzAXMwH7iKK2ZS7W5v+I8vXiY2rL58WTUZSAL6QR+A==", + "dependencies": { + "cli-table3": "^0.6.1", + "commander": "^9.1.0", + "date-fns": "^2.28.0", + "fn-args": "^5.0.0", + "fs-extra": "^10.0.1", + "lodash": "^4.17.21", + "p-each-series": "^2.2.0" + }, + "bin": { + "migrate-mongo": "bin/migrate-mongo.js" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "mongodb": "^4.4.1 || ^5.0.0 || ^6.0.0" + } + }, + "node_modules/mongodb": { + "version": "6.9.0", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.9.0.tgz", + "integrity": "sha512-UMopBVx1LmEUbW/QE0Hw18u583PEDVQmUmVzzBRH0o/xtE9DBRA5ZYLOjpLIa03i8FXjzvQECJcqoMvCXftTUA==", + "dependencies": { + "@mongodb-js/saslprep": "^1.1.5", + "bson": "^6.7.0", + "mongodb-connection-string-url": "^3.0.0" + }, + "engines": { + "node": ">=16.20.1" + }, + "peerDependencies": { + "@aws-sdk/credential-providers": "^3.188.0", + "@mongodb-js/zstd": "^1.1.0", + "gcp-metadata": "^5.2.0", + "kerberos": "^2.0.1", + "mongodb-client-encryption": ">=6.0.0 <7", + "snappy": "^7.2.2", + "socks": "^2.7.1" + }, + "peerDependenciesMeta": { + "@aws-sdk/credential-providers": { + "optional": true + }, + "@mongodb-js/zstd": { + "optional": true + }, + "gcp-metadata": { + "optional": true + }, + "kerberos": { + "optional": true + }, + "mongodb-client-encryption": { + "optional": true + }, + "snappy": { + "optional": true + }, + "socks": { + "optional": true + } + } + }, + "node_modules/mongodb-connection-string-url": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-3.0.1.tgz", + "integrity": "sha512-XqMGwRX0Lgn05TDB4PyG2h2kKO/FfWJyCzYQbIhXUxz7ETt0I/FqHjUeqj37irJ+Dl1ZtU82uYyj14u2XsZKfg==", + "dependencies": { + "@types/whatwg-url": "^11.0.2", + "whatwg-url": "^13.0.0" + } + }, + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-fetch/node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/node-fetch/node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/node-fetch/node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/p-each-series": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.2.0.tgz", + "integrity": "sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pako": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", + "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==" + }, + "node_modules/psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/querystringify": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", + "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" + }, + "node_modules/redeyed": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/redeyed/-/redeyed-2.1.1.tgz", + "integrity": "sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ==", + "dependencies": { + "esprima": "~4.0.0" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==" + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "node_modules/set-cookie-parser": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.7.0.tgz", + "integrity": "sha512-lXLOiqpkUumhRdFF3k1osNXCy9akgx/dyPZ5p8qAg9seJzXr5ZrlqZuWIMuY6ejOsVLE6flJ5/h3lsn57fQ/PQ==" + }, + "node_modules/sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", + "dependencies": { + "memory-pager": "^1.0.2" + } + }, + "node_modules/starknet": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/starknet/-/starknet-6.11.0.tgz", + "integrity": "sha512-u50KrGDi9fbu1Ogu7ynwF/tSeFlp3mzOg1/Y5x50tYFICImo3OfY4lOz9OtYDk404HK4eUujKkhov9tG7GAKlg==", + "dependencies": { + "@noble/curves": "~1.4.0", + "@noble/hashes": "^1.4.0", + "@scure/base": "~1.1.3", + "@scure/starknet": "~1.0.0", + "abi-wan-kanabi": "^2.2.2", + "fetch-cookie": "^3.0.0", + "get-starknet-core": "^4.0.0-next.3", + "isomorphic-fetch": "^3.0.0", + "lossless-json": "^4.0.1", + "pako": "^2.0.4", + "starknet-types-07": "npm:@starknet-io/types-js@^0.7.7", + "ts-mixer": "^6.0.3", + "url-join": "^4.0.1" + } + }, + "node_modules/starknet-types-07": { + "name": "@starknet-io/types-js", + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/@starknet-io/types-js/-/types-js-0.7.7.tgz", + "integrity": "sha512-WLrpK7LIaIb8Ymxu6KF/6JkGW1sso988DweWu7p5QY/3y7waBIiPvzh27D9bX5KIJNRDyOoOVoHVEKYUYWZ/RQ==" + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tough-cookie": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.4.tgz", + "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.2.0", + "url-parse": "^1.5.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tough-cookie/node_modules/universalify": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", + "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/tr46": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-4.1.1.tgz", + "integrity": "sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw==", + "dependencies": { + "punycode": "^2.3.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/ts-mixer": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/ts-mixer/-/ts-mixer-6.0.4.tgz", + "integrity": "sha512-ufKpbmrugz5Aou4wcr5Wc1UUFWOLhq+Fm6qa6P0w0K5Qw2yhaUoiWszhCVuNQyNwrlGiscHOmqYoAox1PtvgjA==" + }, + "node_modules/tslib": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz", + "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==" + }, + "node_modules/undici-types": { + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==" + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/url-join": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/url-join/-/url-join-4.0.1.tgz", + "integrity": "sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==" + }, + "node_modules/url-parse": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", + "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", + "dependencies": { + "querystringify": "^2.1.1", + "requires-port": "^1.0.0" + } + }, + "node_modules/uuid": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz", + "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-fetch": { + "version": "3.6.20", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz", + "integrity": "sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==" + }, + "node_modules/whatwg-url": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-13.0.0.tgz", + "integrity": "sha512-9WWbymnqj57+XEuqADHrCJ2eSXzn8WXIW/YSGaZtb2WKAInQ6CHfaUUcTyyver0p8BDg5StLQq8h1vtZuwmOig==", + "dependencies": { + "tr46": "^4.1.1", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/ws": { + "version": "8.17.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", + "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "engines": { + "node": ">=12" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 000000000..898bf1d48 --- /dev/null +++ b/package.json @@ -0,0 +1,23 @@ +{ + "name": "madara-orchestrator", + "version": "1.0.0", + "description": "The Madara orchestrator is designed to be an additional service which runs in parallel to Madara and handles async tasks like proving, state updates, and other background jobs.", + "main": "index.js", + "directories": { + "doc": "docs" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1", + "migrate": "npx migrate-mongo up" + }, + "keywords": [], + "author": "", + "license": "ISC", + "dependencies": { + "ethers": "^6.13.4", + "migrate-mongo": "^11.0.0", + "mongodb": "^6.9.0", + "starknet": "^6.11.0", + "uuid": "^10.0.0" + } +} diff --git a/pathfinder b/pathfinder new file mode 160000 index 000000000..138140e5f --- /dev/null +++ b/pathfinder @@ -0,0 +1 @@ +Subproject commit 138140e5fd967ede92806fd62de47c2e6b65712a diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 58748b24f..6a62b6552 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,4 +1,6 @@ [toolchain] -channel = "1.81" +# TODO: don't require nightly (see +# https://github.com/keep-starknet-strange/snos/issues/462) +channel = "nightly-2024-09-05" components = ["rust-src", "rustfmt", "clippy", "rust-analyzer"] profile = "minimal" diff --git a/scripts/artifacts/README.md b/scripts/artifacts/README.md new file mode 100644 index 000000000..cf5e16d9b --- /dev/null +++ b/scripts/artifacts/README.md @@ -0,0 +1,17 @@ +Link to artifact sources + +Ethereum + +1. /eth/eic_eth_bridge.json - +2. /eth/new_eth_bridge.json - + +Starknet + +1. /starknet/bridge_proxy_legacy.json - +2. /starknet/eic_eth_bridge.sierra.json - from SN Sepolia +3. /starknet/eic_eth_token.sierra.json - from SN Sepolia +4. /starknet/new_eth_bridge.sierra.json - from SN Sepolia +5. /starknet/new_eth_token.sierra.json - from SN Sepolia + +TODO: move this code to the bootstrapper + build contracts from source +in the repo itself diff --git a/scripts/artifacts/eth/MockGPSVerifier.sol b/scripts/artifacts/eth/MockGPSVerifier.sol new file mode 100644 index 000000000..a5ddb0077 --- /dev/null +++ b/scripts/artifacts/eth/MockGPSVerifier.sol @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.0; + +contract MockGPSVerifier { + // Returns true for any input fact hash + function isValid(bytes32) public pure returns (bool) { + return true; + } +} \ No newline at end of file diff --git a/scripts/artifacts/eth/eic_eth_bridge.json b/scripts/artifacts/eth/eic_eth_bridge.json new file mode 100644 index 000000000..738ceff26 --- /dev/null +++ b/scripts/artifacts/eth/eic_eth_bridge.json @@ -0,0 +1,326 @@ +{ + "abi": [ + { + "type": "function", + "name": "initialize", + "inputs": [{ "name": "data", "type": "bytes", "internalType": "bytes" }], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "LegacyBridgeUpgraded", + "inputs": [ + { + "name": "bridge", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LogExternalInitialize", + "inputs": [ + { + "name": "data", + "type": "bytes", + "indexed": false, + "internalType": "bytes" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RoleAdminChanged", + "inputs": [ + { + "name": "role", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + }, + { + "name": "previousAdminRole", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + }, + { + "name": "newAdminRole", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RoleGranted", + "inputs": [ + { + "name": "role", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + }, + { + "name": "account", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + } + ], + "bytecode": { + "object": "0x6080604052348015600f57600080fd5b50610a618061001f6000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063439fab9114610030575b600080fd5b61004361003e3660046107d8565b610045565b005b6040811461009a5760405162461bcd60e51b815260206004820152601b60248201527f494e56414c49445f494e49545f444154415f4c454e4754485f3634000000000060448201526064015b60405180910390fd5b6000806100a983850185610868565b90925090506001600160a01b038216156100c357816100c5565b335b91506001600160a01b038116156100dc57806100de565b815b90506100ea82826102ac565b60006100f46103b4565b90506000811161013a5760405162461bcd60e51b81526020600482015260116024820152704e4f545f4c45474143595f42524944474560781b6044820152606401610091565b60006101446103dc565b905080600003610152575060015b600061015c6103ff565b90506001600160a01b03811661017a57506245544861017a81610422565b6001600160a01b03811660009081527fc59c20aaa96597268f595db30ec21108a505370e3266ed3a6515637f16b8b68960205260408120805490919060ff1660038111156101ca576101ca61089b565b146102175760405162461bcd60e51b815260206004820152601760248201527f4252494447455f414c52454144595f55504752414445440000000000000000006044820152606401610091565b805460ff19166002178155600381018390556102336005610447565b7fcd1400d214c673d845a60be61e4392df27be94360484e7da79f75c022255061588886040516102649291906108b1565b60405180910390a16040516001600160a01b0383169030907fbf180a3441bfd90aebeace0882b08f0588f99a9b86e1480516fcc0464c6fad3290600090a35050505050505050565b6102b4610469565b15610322576102d16000805160206109108339815191528361048a565b61031d5760405162461bcd60e51b815260206004820152601960248201527f524f4c45535f414c52454144595f494e495449414c495a4544000000000000006044820152606401610091565b61032b565b61032b826104c2565b6103336105f7565b156103ab576103506000805160206109308339815191528261048a565b6103a75760405162461bcd60e51b815260206004820152602260248201527f53454355524954595f524f4c45535f414c52454144595f494e495449414c495a604482015261115160f21b6064820152608401610091565b5050565b6103a781610611565b60006103d76040518060600160405280602181526020016109e260219139610679565b905090565b60006103d760405180606001604052806027815260200161097060279139610679565b60006103d7604051806060016040528060298152602001610a0360299139610679565b610444604051806060016040528060298152602001610a0360299139826106ad565b50565b6104446040518060600160405280602b81526020016109b7602b9139826106ad565b6000806104836000805160206109108339815191526106e0565b1415905090565b6000918252600080516020610950833981519152602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6104da60008051602061091083398151915282610702565b6105117ed2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de06068600080516020610997833981519152610778565b610537600080516020610997833981519152600080516020610910833981519152610778565b61054f60008051602061091083398151915280610778565b6105877f023edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da7600080516020610997833981519152610778565b6105bf7f0128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e600080516020610997833981519152610778565b6104447f0251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228600080516020610910833981519152610778565b6000806104836000805160206109308339815191526106e0565b61062960008051602061093083398151915280610778565b6106617f037693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b96600080516020610930833981519152610778565b61044460008051602061093083398151915282610702565b6000808260405160200161068d91906108e0565b60408051601f198184030181529190528051602090910120549392505050565b6000826040516020016106c091906108e0565b604051602081830303815290604052805190602001209050818155505050565b6000908152600080516020610950833981519152602052604090206001015490565b61070c828261048a565b6103a7576000828152600080516020610950833981519152602090815260408083206001600160a01b0385168085529252808320805460ff1916600117905551339285917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9190a45050565b6000610783836106e0565b60008481526000805160206109508339815191526020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b600080602083850312156107eb57600080fd5b823567ffffffffffffffff81111561080257600080fd5b8301601f8101851361081357600080fd5b803567ffffffffffffffff81111561082a57600080fd5b85602082840101111561083c57600080fd5b6020919091019590945092505050565b80356001600160a01b038116811461086357600080fd5b919050565b6000806040838503121561087b57600080fd5b6108848361084c565b91506108926020840161084c565b90509250929050565b634e487b7160e01b600052602160045260246000fd5b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b6000825160005b8181101561090157602081860181015185830152016108e7565b50600092019182525091905056fe03711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846026bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b353e43b954ba190a7e49386f1f78b01dcd9f628db23f432fa029a7dfd6d98e8fb535441524b4e45545f544f4b454e5f4252494447455f4d41585f544f54414c5f42414c414e434503e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee9957495448445241574c5f4c494d49545f57495448445241575f4c494d49545f5043545f534c4f545f544147535441524b4e45545f544f4b454e5f4252494447455f4d41585f4445504f534954535441524b4e45545f45524332305f544f4b454e5f4252494447455f544f4b454e5f41444452455353a26469706673582212204c6a2ba476bc0b3a9f41800528b44cdb4e386085d92f19bc0fbfcf2b6b9b590c64736f6c634300081b0033", + "sourceMap": "505:3034:11:-:0;;;;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063439fab9114610030575b600080fd5b61004361003e3660046107d8565b610045565b005b6040811461009a5760405162461bcd60e51b815260206004820152601b60248201527f494e56414c49445f494e49545f444154415f4c454e4754485f3634000000000060448201526064015b60405180910390fd5b6000806100a983850185610868565b90925090506001600160a01b038216156100c357816100c5565b335b91506001600160a01b038116156100dc57806100de565b815b90506100ea82826102ac565b60006100f46103b4565b90506000811161013a5760405162461bcd60e51b81526020600482015260116024820152704e4f545f4c45474143595f42524944474560781b6044820152606401610091565b60006101446103dc565b905080600003610152575060015b600061015c6103ff565b90506001600160a01b03811661017a57506245544861017a81610422565b6001600160a01b03811660009081527fc59c20aaa96597268f595db30ec21108a505370e3266ed3a6515637f16b8b68960205260408120805490919060ff1660038111156101ca576101ca61089b565b146102175760405162461bcd60e51b815260206004820152601760248201527f4252494447455f414c52454144595f55504752414445440000000000000000006044820152606401610091565b805460ff19166002178155600381018390556102336005610447565b7fcd1400d214c673d845a60be61e4392df27be94360484e7da79f75c022255061588886040516102649291906108b1565b60405180910390a16040516001600160a01b0383169030907fbf180a3441bfd90aebeace0882b08f0588f99a9b86e1480516fcc0464c6fad3290600090a35050505050505050565b6102b4610469565b15610322576102d16000805160206109108339815191528361048a565b61031d5760405162461bcd60e51b815260206004820152601960248201527f524f4c45535f414c52454144595f494e495449414c495a4544000000000000006044820152606401610091565b61032b565b61032b826104c2565b6103336105f7565b156103ab576103506000805160206109308339815191528261048a565b6103a75760405162461bcd60e51b815260206004820152602260248201527f53454355524954595f524f4c45535f414c52454144595f494e495449414c495a604482015261115160f21b6064820152608401610091565b5050565b6103a781610611565b60006103d76040518060600160405280602181526020016109e260219139610679565b905090565b60006103d760405180606001604052806027815260200161097060279139610679565b60006103d7604051806060016040528060298152602001610a0360299139610679565b610444604051806060016040528060298152602001610a0360299139826106ad565b50565b6104446040518060600160405280602b81526020016109b7602b9139826106ad565b6000806104836000805160206109108339815191526106e0565b1415905090565b6000918252600080516020610950833981519152602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6104da60008051602061091083398151915282610702565b6105117ed2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de06068600080516020610997833981519152610778565b610537600080516020610997833981519152600080516020610910833981519152610778565b61054f60008051602061091083398151915280610778565b6105877f023edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da7600080516020610997833981519152610778565b6105bf7f0128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e600080516020610997833981519152610778565b6104447f0251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228600080516020610910833981519152610778565b6000806104836000805160206109308339815191526106e0565b61062960008051602061093083398151915280610778565b6106617f037693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b96600080516020610930833981519152610778565b61044460008051602061093083398151915282610702565b6000808260405160200161068d91906108e0565b60408051601f198184030181529190528051602090910120549392505050565b6000826040516020016106c091906108e0565b604051602081830303815290604052805190602001209050818155505050565b6000908152600080516020610950833981519152602052604090206001015490565b61070c828261048a565b6103a7576000828152600080516020610950833981519152602090815260408083206001600160a01b0385168085529252808320805460ff1916600117905551339285917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9190a45050565b6000610783836106e0565b60008481526000805160206109508339815191526020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b600080602083850312156107eb57600080fd5b823567ffffffffffffffff81111561080257600080fd5b8301601f8101851361081357600080fd5b803567ffffffffffffffff81111561082a57600080fd5b85602082840101111561083c57600080fd5b6020919091019590945092505050565b80356001600160a01b038116811461086357600080fd5b919050565b6000806040838503121561087b57600080fd5b6108848361084c565b91506108926020840161084c565b90509250929050565b634e487b7160e01b600052602160045260246000fd5b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b6000825160005b8181101561090157602081860181015185830152016108e7565b50600092019182525091905056fe03711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846026bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b353e43b954ba190a7e49386f1f78b01dcd9f628db23f432fa029a7dfd6d98e8fb535441524b4e45545f544f4b454e5f4252494447455f4d41585f544f54414c5f42414c414e434503e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee9957495448445241574c5f4c494d49545f57495448445241575f4c494d49545f5043545f534c4f545f544147535441524b4e45545f544f4b454e5f4252494447455f4d41585f4445504f534954535441524b4e45545f45524332305f544f4b454e5f4252494447455f544f4b454e5f41444452455353a26469706673582212204c6a2ba476bc0b3a9f41800528b44cdb4e386085d92f19bc0fbfcf2b6b9b590c64736f6c634300081b0033", + "sourceMap": "505:3034:11:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1451:2086;;;;;;:::i;:::-;;:::i;:::-;;;1551:2;1536:17;;1528:57;;;;-1:-1:-1;;;1528:57:11;;807:2:40;1528:57:11;;;789:21:40;846:2;826:18;;;819:30;885:29;865:18;;;858:57;932:18;;1528:57:11;;;;;;;;;1931:24;;1982:36;;;;1993:4;1982:36;:::i;:::-;1930:88;;-1:-1:-1;1930:88:11;-1:-1:-1;;;;;;2047:30:11;;;:62;;2093:16;2047:62;;;2080:10;2047:62;2028:81;-1:-1:-1;;;;;;2135:27:11;;;:62;;2184:13;2135:62;;;2165:16;2135:62;2119:78;;2207:52;2227:16;2245:13;2207:19;:52::i;:::-;2494:18;2515:15;:13;:15::i;:::-;2494:36;;2561:1;2548:10;:14;2540:44;;;;-1:-1:-1;;;2540:44:11;;1646:2:40;2540:44:11;;;1628:21:40;1685:2;1665:18;;;1658:30;-1:-1:-1;;;1704:18:40;;;1697:47;1761:18;;2540:44:11;1444:341:40;2540:44:11;2648:23;2674:20;:18;:20::i;:::-;2648:46;;2708:15;2727:1;2708:20;2704:70;;-1:-1:-1;2762:1:11;2704:70;2835:20;2858:17;:15;:17::i;:::-;2835:40;-1:-1:-1;;;;;;2889:26:11;;2885:109;;-1:-1:-1;943:8:8;2963:20:11;943:8:8;2963:15:11;:20::i;:::-;-1:-1:-1;;;;;3086:29:11;;3053:30;3086:29;;;1414:17:18;3086:29:11;;;;;3160:20;;3086:29;;3053:30;3160:20;;:43;;;;;;;;:::i;:::-;;3152:79;;;;-1:-1:-1;;;3152:79:11;;2124:2:40;3152:79:11;;;2106:21:40;2163:2;2143:18;;;2136:30;2202:25;2182:18;;;2175:53;2245:18;;3152:79:11;1922:347:40;3152:79:11;3242:41;;-1:-1:-1;;3242:41:11;3265:18;3242:41;;;3293:24;;;:42;;;3345:79;362:1:19;3345:35:11;:79::i;:::-;3439:27;3461:4;;3439:27;;;;;;;:::i;:::-;;;;;;;;3481:49;;-1:-1:-1;;;;;3481:49:11;;;3510:4;;3481:49;;;;;1518:2019;;;;;;1451:2086;;:::o;2681:1050:33:-;2782:28;:26;:28::i;:::-;2778:485;;;3062:60;-1:-1:-1;;;;;;;;;;;3102:19:33;3062:21;:60::i;:::-;3037:144;;;;-1:-1:-1;;;3037:144:33;;2869:2:40;3037:144:33;;;2851:21:40;2908:2;2888:18;;;2881:30;2947:27;2927:18;;;2920:55;2992:18;;3037:144:33;2667:349:40;3037:144:33;2778:485;;;3212:40;3232:19;3212;:40::i;:::-;3277:26;:24;:26::i;:::-;3273:452;;;3519:58;-1:-1:-1;;;;;;;;;;;3557:19:33;3519:21;:58::i;:::-;3494:151;;;;-1:-1:-1;;;3494:151:33;;3223:2:40;3494:151:33;;;3205:21:40;3262:2;3242:18;;;3235:30;3301:34;3281:18;;;3274:62;-1:-1:-1;;;3352:18:40;;;3345:32;3394:19;;3494:151:33;3021:398:40;3494:151:33;2681:1050;;:::o;3273:452::-;3676:38;3694:19;3676:17;:38::i;1182:123:11:-;1230:7;1256:42;1282:15;;;;;;;;;;;;;;;;;1256:25;:42::i;:::-;1249:49;;1182:123;:::o;1311:134::-;1364:7;1390:48;1416:21;;;;;;;;;;;;;;;;;1390:25;:48::i;912:130::-;962:7;988:47;1017:17;;;;;;;;;;;;;;;;;988:28;:47::i;1048:128::-;1111:58;1140:17;;;;;;;;;;;;;;;;;1159:9;1111:28;:58::i;:::-;1048:128;:::o;706:126:19:-;769:56;795:22;;;;;;;;;;;;;;;;;819:5;769:25;:56::i;2221:152:33:-;2282:4;;2305:44;-1:-1:-1;;;;;;;;;;;2305:26:33;:44::i;:::-;:61;;2298:68;;2221:152;:::o;4481:132:30:-;4552:4;4575:14;;;-1:-1:-1;;;;;;;;;;;4575:14:30;;;;;;;;-1:-1:-1;;;;;4575:31:30;;;;;;;;;;;;;;;4481:132::o;4023:559:33:-;4099:63;-1:-1:-1;;;;;;;;;;;4142:19:33;4099:24;:63::i;:::-;4172:57;253:64;-1:-1:-1;;;;;;;;;;;4172:27:33;:57::i;:::-;4239:61;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;4239:27:33;:61::i;:::-;4310:63;-1:-1:-1;;;;;;;;;;;667:66:33;4310:27;:63::i;:::-;4383:53;861:66;-1:-1:-1;;;;;;;;;;;4383:27:33;:53::i;:::-;4446:56;1473:66;-1:-1:-1;;;;;;;;;;;4446:27:33;:56::i;:::-;4512:63;1683:66;-1:-1:-1;;;;;;;;;;;4512:27:33;:63::i;2379:148::-;2438:4;;2461:42;-1:-1:-1;;;;;;;;;;;2461:26:33;:42::i;3737:280::-;3811:59;-1:-1:-1;;;;;;;;;;;1067:66:33;3811:27;:59::i;:::-;3880;1273:66;-1:-1:-1;;;;;;;;;;;3880:27:33;:59::i;:::-;3949:61;-1:-1:-1;;;;;;;;;;;3990:19:33;3949:24;:61::i;2680:209:32:-;2745:14;2771:12;2813:4;2796:22;;;;;;;;:::i;:::-;;;;-1:-1:-1;;2796:22:32;;;;;;;;;2786:33;;2796:22;2786:33;;;;2862:11;;2680:209;-1:-1:-1;;;2680:209:32:o;3486:195::-;3565:12;3607:4;3590:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;3580:33;;;;;;3565:48;;3659:5;3653:4;3646:19;3632:43;3486:195;;:::o;5911:116:30:-;5970:7;5996:14;;;-1:-1:-1;;;;;;;;;;;5996:14:30;;;;;:24;;;;5911:116::o;8830:227::-;8905:22;8913:4;8919:7;8905;:22::i;:::-;8900:151;;8943:14;;;;-1:-1:-1;;;;;;;;;;;8943:14:30;;;;;;;;-1:-1:-1;;;;;8943:31:30;;;;;;;;;;:38;;-1:-1:-1;;8943:38:30;8977:4;8943:38;;;9000:40;3290:10;;8943:14;;9000:40;;8943:14;9000:40;8830:227;;:::o;8433:241::-;8508:25;8536:18;8549:4;8536:12;:18::i;:::-;8564:14;;;;-1:-1:-1;;;;;;;;;;;8564:14:30;;;;;;:24;;:36;;;8615:52;8508:46;;-1:-1:-1;8591:9:30;;8508:46;;8564:14;;8615:52;;8564:14;8615:52;8498:176;8433:241;;:::o;14:586:40:-;84:6;92;145:2;133:9;124:7;120:23;116:32;113:52;;;161:1;158;151:12;113:52;201:9;188:23;234:18;226:6;223:30;220:50;;;266:1;263;256:12;220:50;289:22;;342:4;334:13;;330:27;-1:-1:-1;320:55:40;;371:1;368;361:12;320:55;411:2;398:16;437:18;429:6;426:30;423:50;;;469:1;466;459:12;423:50;514:7;509:2;500:6;496:2;492:15;488:24;485:37;482:57;;;535:1;532;525:12;482:57;566:2;558:11;;;;;588:6;;-1:-1:-1;14:586:40;-1:-1:-1;;;14:586:40:o;961:181::-;1037:20;;-1:-1:-1;;;;;1086:31:40;;1076:42;;1066:70;;1132:1;1129;1122:12;1066:70;961:181;;;:::o;1147:292::-;1231:6;1239;1292:2;1280:9;1271:7;1267:23;1263:32;1260:52;;;1308:1;1305;1298:12;1260:52;1331:37;1358:9;1331:37;:::i;:::-;1321:47;;1387:46;1429:2;1418:9;1414:18;1387:46;:::i;:::-;1377:56;;1147:292;;;;;:::o;1790:127::-;1851:10;1846:3;1842:20;1839:1;1832:31;1882:4;1879:1;1872:15;1906:4;1903:1;1896:15;2274:388;2431:2;2420:9;2413:21;2470:6;2465:2;2454:9;2450:18;2443:34;2527:6;2519;2514:2;2503:9;2499:18;2486:48;2583:1;2554:22;;;2578:2;2550:31;;;2543:42;;;;2646:2;2625:15;;;-1:-1:-1;;2621:29:40;2606:45;2602:54;;2274:388;-1:-1:-1;2274:388:40:o;3424:414::-;3555:3;3593:6;3587:13;3618:1;3628:129;3642:6;3639:1;3636:13;3628:129;;;3740:4;3724:14;;;3720:25;;3714:32;3701:11;;;3694:53;3657:12;3628:129;;;-1:-1:-1;3812:1:40;3776:16;;3801:13;;;-1:-1:-1;3776:16:40;3424:414;-1:-1:-1;3424:414:40:o", + "linkReferences": {} + }, + "methodIdentifiers": { "initialize(bytes)": "439fab91" }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.27+commit.40a35a09\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"bridge\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"LegacyBridgeUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"LogExternalInitialize\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/solidity/StarkgateUpgradeAssistExternalInitializer.sol\":\"StarkgateUpgradeAssistExternalInitializer\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/solidity/StarkgateConstants.sol\":{\"keccak256\":\"0x186842131c4c91bc58a6930491fa5619f76cd04d8ba43af9a5888ba21111d642\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://227e204f799af5d6bf452f173270b64c0be880a27d25f82afbddce3f9833e94c\",\"dweb:/ipfs/QmTk93uaih5Qx7KYDK6Fdh9qPeNiWMNkFFHmL98dKP29Qx\"]},\"src/solidity/StarkgateUpgradeAssistExternalInitializer.sol\":{\"keccak256\":\"0xf29f7633d0ee10baf300cacbeb043de628f864012e37e50c9ea93aa32b01cc1d\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://1537e49e180103f40b4b1e70a00eef1f9ea3b176cd86def507816931bececeab\",\"dweb:/ipfs/QmZk1ShhnCMTEvXoEFg6C2yS61xKJhnjGnrutMLeoHFdu5\"]},\"src/solidity/StarknetTokenStorage.sol\":{\"keccak256\":\"0xcdcd69d9ff44db4e7a564cb22d6d5ff571f85448785b6712b8edadfc698a1582\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://64f99efd55def7799ada9d6243d00c37007f9573a5ef1e627d830a94d7a33a52\",\"dweb:/ipfs/QmTYGH8AfSDCDnKm9DNuwZXeKTZH4jrtAondVqA8Nmv7AQ\"]},\"src/solidity/WithdrawalLimit.sol\":{\"keccak256\":\"0x873fabcb885ffbb2228b8cc742485718d0fc3d773bfa86334b2146418bc3bb56\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://677065f504fda831def60b0bd8b9d05676cb38f858f11230a482bfa2ca148ad6\",\"dweb:/ipfs/QmPGm9f7kjEX8W1VbZYtj3pXPZj6MgWFEfKY9jX4c8651h\"]},\"starkware/solidity/interfaces/ExternalInitializer.sol\":{\"keccak256\":\"0xb10798e8cb0abffceb72f324f8c197df05ea810c156507719ee86a75b6abd080\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://4e3e9bf0c2c3b9d496f7ba675ad94187dcd9a33f02df2f4627cda9b86b084b7e\",\"dweb:/ipfs/QmfTtuFNcgN7ty6ZaW4vUjzYngJSkGMYxomu6SNcY2d8s2\"]},\"starkware/solidity/interfaces/Identity.sol\":{\"keccak256\":\"0x18b8ab7a912a2fca2567ad2adc811d9ed9123d5b2a8bdda77741581c2f7c9a08\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://cf3cc21679c63e2e5481c0ceeba85a476ba10d11fd942e9f149ccbe4a1ee2888\",\"dweb:/ipfs/QmUdC8rH8JX6ZSJ6ddF77hJADRJCbjLjVee92E7ZmagxHh\"]},\"starkware/solidity/libraries/AccessControl.sol\":{\"keccak256\":\"0x3b5af42da4adb23a3c56d62968b2a0058650c3f19c4ec0323f8c3958a02f2d32\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7cb26cce13390c59767822b9b317505757ee2438b7a1481fb4ee0435cf98b074\",\"dweb:/ipfs/QmdULczhMowp2aCJSt7z4KQGrMjPzEZjGU4YyqEemwM22e\"]},\"starkware/solidity/libraries/NamedStorage.sol\":{\"keccak256\":\"0x73e777cd0ae5f60889e4784b788c345bc3a3edc6a7ec3eab636b3701f2a1f66e\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://979e827ca68e8b00e8598cd67d0de96f10b5cb03197870e1f9a871533ca84e4a\",\"dweb:/ipfs/QmPjoWoRTBRiVnNJ576hCuqr3UVoGomDmSdipFKoUZUpJi\"]},\"starkware/solidity/libraries/RolesLib.sol\":{\"keccak256\":\"0x2497bfb416c91633e1f373de9dbdbd85bd8cdb3d36a74df941ad392d8036a8c0\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://7fd51947b57ca6ecf0c4d433def5b8793213d5c281dea1b2145bb13e6be483bb\",\"dweb:/ipfs/QmXFCfdQJ9SsoMxbLXPMRkiC6jqmddnsn4T7KXs4fcdweL\"]},\"starkware/solidity/tokens/ERC20/IERC20.sol\":{\"keccak256\":\"0x04bae6eb13e8755ac10de0b0549806dadc167f4e22054f065478dda5bb5635f4\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://b097f7cffcdd93ab330be7751bfad246d0d47c63ae0e3a3215b031895c821a68\",\"dweb:/ipfs/QmVZRaTM2vopCZSskT2UMWLPkPQpiYYkRjgDNurrJAMuve\"]},\"starkware/starknet/solidity/IStarknetMessaging.sol\":{\"keccak256\":\"0x0b5ad38d2ffea6fdc5dc39d9340871f06c98c56c3faa276f92a542690b57cf64\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://9e28c6d7e599915e824ae100975b20174f5fa168904c81c0305facfd3f4f7651\",\"dweb:/ipfs/QmWiRdEkNDyKwigTiXkNbYpTkLj5WUEVo5TLgtfeeSEhmp\"]},\"starkware/starknet/solidity/IStarknetMessagingEvents.sol\":{\"keccak256\":\"0x2f455c3c28792bded72e19d0c1a21af7459b66d6071c3d996f6259c93f096424\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://95302fc273848d1c795344d6e6184c2def7866da81d563ae9ae9b3e9d8fcf7e7\",\"dweb:/ipfs/QmaHb55eq8Su9gEtqe3XbiyQkuf1Pk7CwKJkF9CXYbRrFN\"]},\"third_party/open_zeppelin/utils/Strings.sol\":{\"keccak256\":\"0xaf159a8b1923ad2a26d516089bceca9bdeaeacd04be50983ea00ba63070f08a3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f2cf1c531122bc7ca96b8c8db6a60deae60441e5223065e792553d4849b5638\",\"dweb:/ipfs/QmPBdJmBBABMDCfyDjCbdxgiqRavgiSL88SYPGibgbPas9\"]}},\"version\":1}", + "metadata": { + "compiler": { "version": "0.8.27+commit.40a35a09" }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "bridge", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "token", + "type": "address", + "indexed": true + } + ], + "type": "event", + "name": "LegacyBridgeUpgraded", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "data", + "type": "bytes", + "indexed": false + } + ], + "type": "event", + "name": "LogExternalInitialize", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32", + "indexed": true + }, + { + "internalType": "bytes32", + "name": "previousAdminRole", + "type": "bytes32", + "indexed": true + }, + { + "internalType": "bytes32", + "name": "newAdminRole", + "type": "bytes32", + "indexed": true + } + ], + "type": "event", + "name": "RoleAdminChanged", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32", + "indexed": true + }, + { + "internalType": "address", + "name": "account", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + } + ], + "type": "event", + "name": "RoleGranted", + "anonymous": false + }, + { + "inputs": [ + { "internalType": "bytes", "name": "data", "type": "bytes" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "initialize" + } + ], + "devdoc": { "kind": "dev", "methods": {}, "version": 1 }, + "userdoc": { "kind": "user", "methods": {}, "version": 1 } + }, + "settings": { + "remappings": [ + "ds-test/=lib/forge-std/lib/ds-test/src/", + "forge-std/=lib/forge-std/src/" + ], + "optimizer": { "enabled": true, "runs": 200 }, + "metadata": { "bytecodeHash": "ipfs" }, + "compilationTarget": { + "src/solidity/StarkgateUpgradeAssistExternalInitializer.sol": "StarkgateUpgradeAssistExternalInitializer" + }, + "evmVersion": "paris", + "libraries": {} + }, + "sources": { + "src/solidity/StarkgateConstants.sol": { + "keccak256": "0x186842131c4c91bc58a6930491fa5619f76cd04d8ba43af9a5888ba21111d642", + "urls": [ + "bzz-raw://227e204f799af5d6bf452f173270b64c0be880a27d25f82afbddce3f9833e94c", + "dweb:/ipfs/QmTk93uaih5Qx7KYDK6Fdh9qPeNiWMNkFFHmL98dKP29Qx" + ], + "license": "Apache-2.0." + }, + "src/solidity/StarkgateUpgradeAssistExternalInitializer.sol": { + "keccak256": "0xf29f7633d0ee10baf300cacbeb043de628f864012e37e50c9ea93aa32b01cc1d", + "urls": [ + "bzz-raw://1537e49e180103f40b4b1e70a00eef1f9ea3b176cd86def507816931bececeab", + "dweb:/ipfs/QmZk1ShhnCMTEvXoEFg6C2yS61xKJhnjGnrutMLeoHFdu5" + ], + "license": "Apache-2.0." + }, + "src/solidity/StarknetTokenStorage.sol": { + "keccak256": "0xcdcd69d9ff44db4e7a564cb22d6d5ff571f85448785b6712b8edadfc698a1582", + "urls": [ + "bzz-raw://64f99efd55def7799ada9d6243d00c37007f9573a5ef1e627d830a94d7a33a52", + "dweb:/ipfs/QmTYGH8AfSDCDnKm9DNuwZXeKTZH4jrtAondVqA8Nmv7AQ" + ], + "license": "Apache-2.0." + }, + "src/solidity/WithdrawalLimit.sol": { + "keccak256": "0x873fabcb885ffbb2228b8cc742485718d0fc3d773bfa86334b2146418bc3bb56", + "urls": [ + "bzz-raw://677065f504fda831def60b0bd8b9d05676cb38f858f11230a482bfa2ca148ad6", + "dweb:/ipfs/QmPGm9f7kjEX8W1VbZYtj3pXPZj6MgWFEfKY9jX4c8651h" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/interfaces/ExternalInitializer.sol": { + "keccak256": "0xb10798e8cb0abffceb72f324f8c197df05ea810c156507719ee86a75b6abd080", + "urls": [ + "bzz-raw://4e3e9bf0c2c3b9d496f7ba675ad94187dcd9a33f02df2f4627cda9b86b084b7e", + "dweb:/ipfs/QmfTtuFNcgN7ty6ZaW4vUjzYngJSkGMYxomu6SNcY2d8s2" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/interfaces/Identity.sol": { + "keccak256": "0x18b8ab7a912a2fca2567ad2adc811d9ed9123d5b2a8bdda77741581c2f7c9a08", + "urls": [ + "bzz-raw://cf3cc21679c63e2e5481c0ceeba85a476ba10d11fd942e9f149ccbe4a1ee2888", + "dweb:/ipfs/QmUdC8rH8JX6ZSJ6ddF77hJADRJCbjLjVee92E7ZmagxHh" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/libraries/AccessControl.sol": { + "keccak256": "0x3b5af42da4adb23a3c56d62968b2a0058650c3f19c4ec0323f8c3958a02f2d32", + "urls": [ + "bzz-raw://7cb26cce13390c59767822b9b317505757ee2438b7a1481fb4ee0435cf98b074", + "dweb:/ipfs/QmdULczhMowp2aCJSt7z4KQGrMjPzEZjGU4YyqEemwM22e" + ], + "license": "MIT" + }, + "starkware/solidity/libraries/NamedStorage.sol": { + "keccak256": "0x73e777cd0ae5f60889e4784b788c345bc3a3edc6a7ec3eab636b3701f2a1f66e", + "urls": [ + "bzz-raw://979e827ca68e8b00e8598cd67d0de96f10b5cb03197870e1f9a871533ca84e4a", + "dweb:/ipfs/QmPjoWoRTBRiVnNJ576hCuqr3UVoGomDmSdipFKoUZUpJi" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/libraries/RolesLib.sol": { + "keccak256": "0x2497bfb416c91633e1f373de9dbdbd85bd8cdb3d36a74df941ad392d8036a8c0", + "urls": [ + "bzz-raw://7fd51947b57ca6ecf0c4d433def5b8793213d5c281dea1b2145bb13e6be483bb", + "dweb:/ipfs/QmXFCfdQJ9SsoMxbLXPMRkiC6jqmddnsn4T7KXs4fcdweL" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/tokens/ERC20/IERC20.sol": { + "keccak256": "0x04bae6eb13e8755ac10de0b0549806dadc167f4e22054f065478dda5bb5635f4", + "urls": [ + "bzz-raw://b097f7cffcdd93ab330be7751bfad246d0d47c63ae0e3a3215b031895c821a68", + "dweb:/ipfs/QmVZRaTM2vopCZSskT2UMWLPkPQpiYYkRjgDNurrJAMuve" + ], + "license": "Apache-2.0." + }, + "starkware/starknet/solidity/IStarknetMessaging.sol": { + "keccak256": "0x0b5ad38d2ffea6fdc5dc39d9340871f06c98c56c3faa276f92a542690b57cf64", + "urls": [ + "bzz-raw://9e28c6d7e599915e824ae100975b20174f5fa168904c81c0305facfd3f4f7651", + "dweb:/ipfs/QmWiRdEkNDyKwigTiXkNbYpTkLj5WUEVo5TLgtfeeSEhmp" + ], + "license": "Apache-2.0." + }, + "starkware/starknet/solidity/IStarknetMessagingEvents.sol": { + "keccak256": "0x2f455c3c28792bded72e19d0c1a21af7459b66d6071c3d996f6259c93f096424", + "urls": [ + "bzz-raw://95302fc273848d1c795344d6e6184c2def7866da81d563ae9ae9b3e9d8fcf7e7", + "dweb:/ipfs/QmaHb55eq8Su9gEtqe3XbiyQkuf1Pk7CwKJkF9CXYbRrFN" + ], + "license": "Apache-2.0." + }, + "third_party/open_zeppelin/utils/Strings.sol": { + "keccak256": "0xaf159a8b1923ad2a26d516089bceca9bdeaeacd04be50983ea00ba63070f08a3", + "urls": [ + "bzz-raw://6f2cf1c531122bc7ca96b8c8db6a60deae60441e5223065e792553d4849b5638", + "dweb:/ipfs/QmPBdJmBBABMDCfyDjCbdxgiqRavgiSL88SYPGibgbPas9" + ], + "license": "MIT" + } + }, + "version": 1 + }, + "id": 11 +} diff --git a/scripts/artifacts/eth/new_eth_bridge.json b/scripts/artifacts/eth/new_eth_bridge.json new file mode 100644 index 000000000..0e4f60ebf --- /dev/null +++ b/scripts/artifacts/eth/new_eth_bridge.json @@ -0,0 +1,2676 @@ +{ + "abi": [ + { + "type": "function", + "name": "assignLegacyProxyGovernor", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "checkDeploymentStatus", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "deactivate", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "deposit", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" }, + { "name": "amount", "type": "uint256", "internalType": "uint256" }, + { "name": "l2Recipient", "type": "uint256", "internalType": "uint256" } + ], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "deposit", + "inputs": [ + { "name": "amount", "type": "uint256", "internalType": "uint256" }, + { "name": "l2Recipient", "type": "uint256", "internalType": "uint256" } + ], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "depositCancelRequest", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" }, + { "name": "amount", "type": "uint256", "internalType": "uint256" }, + { "name": "l2Recipient", "type": "uint256", "internalType": "uint256" }, + { "name": "nonce", "type": "uint256", "internalType": "uint256" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "depositReclaim", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" }, + { "name": "amount", "type": "uint256", "internalType": "uint256" }, + { "name": "l2Recipient", "type": "uint256", "internalType": "uint256" }, + { "name": "nonce", "type": "uint256", "internalType": "uint256" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "depositWithMessage", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" }, + { "name": "amount", "type": "uint256", "internalType": "uint256" }, + { "name": "l2Recipient", "type": "uint256", "internalType": "uint256" }, + { "name": "message", "type": "uint256[]", "internalType": "uint256[]" } + ], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "depositWithMessageCancelRequest", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" }, + { "name": "amount", "type": "uint256", "internalType": "uint256" }, + { "name": "l2Recipient", "type": "uint256", "internalType": "uint256" }, + { "name": "message", "type": "uint256[]", "internalType": "uint256[]" }, + { "name": "nonce", "type": "uint256", "internalType": "uint256" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "depositWithMessageReclaim", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" }, + { "name": "amount", "type": "uint256", "internalType": "uint256" }, + { "name": "l2Recipient", "type": "uint256", "internalType": "uint256" }, + { "name": "message", "type": "uint256[]", "internalType": "uint256[]" }, + { "name": "nonce", "type": "uint256", "internalType": "uint256" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "disableWithdrawalLimit", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "enableWithdrawalLimit", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "enrollToken", + "inputs": [{ "name": "", "type": "address", "internalType": "address" }], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "estimateDepositFeeWei", + "inputs": [], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "estimateEnrollmentFeeWei", + "inputs": [], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "getMaxTotalBalance", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" } + ], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getRemainingIntradayAllowance", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" } + ], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getStatus", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" } + ], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "enum StarknetTokenStorage.TokenStatus" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "identify", + "inputs": [], + "outputs": [{ "name": "", "type": "string", "internalType": "string" }], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "initialize", + "inputs": [{ "name": "data", "type": "bytes", "internalType": "bytes" }], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "isAppGovernor", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isAppRoleAdmin", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isFrozen", + "inputs": [], + "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isGovernanceAdmin", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isOperator", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isSecurityAdmin", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isSecurityAgent", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isServicingToken", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" } + ], + "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isTokenAdmin", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isUpgradeGovernor", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "legacyDepositCancelRequest", + "inputs": [ + { "name": "amount", "type": "uint256", "internalType": "uint256" }, + { "name": "l2Recipient", "type": "uint256", "internalType": "uint256" }, + { "name": "nonce", "type": "uint256", "internalType": "uint256" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "legacyDepositReclaim", + "inputs": [ + { "name": "amount", "type": "uint256", "internalType": "uint256" }, + { "name": "l2Recipient", "type": "uint256", "internalType": "uint256" }, + { "name": "nonce", "type": "uint256", "internalType": "uint256" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "maxDeposit", + "inputs": [], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "maxTotalBalance", + "inputs": [], + "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], + "stateMutability": "view" + }, + { + "type": "function", + "name": "registerAppGovernor", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "registerAppRoleAdmin", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "registerGovernanceAdmin", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "registerOperator", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "registerSecurityAdmin", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "registerSecurityAgent", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "registerTokenAdmin", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "registerUpgradeGovernor", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "removeLegacyProxyGovernor", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "renounceRole", + "inputs": [ + { "name": "role", "type": "bytes32", "internalType": "bytes32" }, + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeAppGovernor", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeAppRoleAdmin", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeGovernanceAdmin", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeOperator", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeSecurityAdmin", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeSecurityAgent", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeTokenAdmin", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "revokeUpgradeGovernor", + "inputs": [ + { "name": "account", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setL2TokenBridge", + "inputs": [ + { + "name": "l2TokenBridge_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setMaxTotalBalance", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" }, + { + "name": "maxTotalBalance_", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "withdraw", + "inputs": [ + { "name": "amount", "type": "uint256", "internalType": "uint256" }, + { "name": "recipient", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "withdraw", + "inputs": [ + { "name": "amount", "type": "uint256", "internalType": "uint256" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "withdraw", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" }, + { "name": "amount", "type": "uint256", "internalType": "uint256" }, + { "name": "recipient", "type": "address", "internalType": "address" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "withdraw", + "inputs": [ + { "name": "token", "type": "address", "internalType": "address" }, + { "name": "amount", "type": "uint256", "internalType": "uint256" } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Deposit", + "inputs": [ + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "l2Recipient", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "nonce", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "fee", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DepositCancelRequest", + "inputs": [ + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "l2Recipient", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "nonce", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DepositReclaimed", + "inputs": [ + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "l2Recipient", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "nonce", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DepositWithMessage", + "inputs": [ + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "l2Recipient", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "message", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "nonce", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "fee", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DepositWithMessageCancelRequest", + "inputs": [ + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "l2Recipient", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "message", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "nonce", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "DepositWithMessageReclaimed", + "inputs": [ + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "l2Recipient", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "message", + "type": "uint256[]", + "indexed": false, + "internalType": "uint256[]" + }, + { + "name": "nonce", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LogDeposit", + "inputs": [ + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "l2Recipient", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "nonce", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "fee", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LogDepositCancelRequest", + "inputs": [ + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "l2Recipient", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "nonce", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LogDepositReclaimed", + "inputs": [ + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "l2Recipient", + "type": "uint256", + "indexed": true, + "internalType": "uint256" + }, + { + "name": "nonce", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LogNewGovernorAccepted", + "inputs": [ + { + "name": "acceptedGovernor", + "type": "address", + "indexed": false, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "LogRemovedGovernor", + "inputs": [ + { + "name": "removedGovernor", + "type": "address", + "indexed": false, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RoleAdminChanged", + "inputs": [ + { + "name": "role", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + }, + { + "name": "previousAdminRole", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + }, + { + "name": "newAdminRole", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RoleGranted", + "inputs": [ + { + "name": "role", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + }, + { + "name": "account", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "RoleRevoked", + "inputs": [ + { + "name": "role", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + }, + { + "name": "account", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "SetL2TokenBridge", + "inputs": [ + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "SetMaxTotalBalance", + "inputs": [ + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "TokenDeactivated", + "inputs": [ + { + "name": "token", + "type": "address", + "indexed": false, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "TokenEnrollmentInitiated", + "inputs": [ + { + "name": "token", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "deploymentMsgHash", + "type": "bytes32", + "indexed": false, + "internalType": "bytes32" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Withdrawal", + "inputs": [ + { + "name": "recipient", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "WithdrawalLimitDisabled", + "inputs": [ + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "WithdrawalLimitEnabled", + "inputs": [ + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "token", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + } + ], + "bytecode": { + "object": "0x60e06040524660011461001357600161001a565b64e8d4a510005b64ffffffffff1660805234801561003057600080fd5b503060a052600160c081905261004461004a565b506104dc565b336100558180610058565b50565b6100606101ab565b156100f6576001600160a01b03821660009081527fa5fdb349cc4ffac7e8ce7d3b075149d1bc847367d814e69a9beca89ef02db8b0602052604090205460ff166100f15760405162461bcd60e51b815260206004820152601960248201527f524f4c45535f414c52454144595f494e495449414c495a45440000000000000060448201526064015b60405180910390fd5b6100ff565b6100ff826101fd565b610107610332565b156101a2576001600160a01b03811660009081527f2c11a1f9c63817dbb9f0faa966615764d2db5d6e008269e948a99e0b52181c23602052604090205460ff1661019e5760405162461bcd60e51b815260206004820152602260248201527f53454355524954595f524f4c45535f414c52454144595f494e495449414c495a604482015261115160f21b60648201526084016100e8565b5050565b61019e81610381565b600080516020614f328339815191526000908152600080516020614f728339815191526020527fa5fdb349cc4ffac7e8ce7d3b075149d1bc847367d814e69a9beca89ef02db8b15481905b1415905090565b610215600080516020614f32833981519152826103e5565b61024c7ed2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de06068600080516020614f92833981519152610484565b610272600080516020614f92833981519152600080516020614f32833981519152610484565b61028a600080516020614f3283398151915280610484565b6102c27f023edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da7600080516020614f92833981519152610484565b6102fa7f0128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e600080516020614f92833981519152610484565b6100557f0251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228600080516020614f32833981519152610484565b600080516020614f528339815191526000908152600080516020614f728339815191526020527f2c11a1f9c63817dbb9f0faa966615764d2db5d6e008269e948a99e0b52181c245481906101f6565b610399600080516020614f5283398151915280610484565b6103d17f037693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b96600080516020614f52833981519152610484565b610055600080516020614f52833981519152825b6000828152600080516020614f72833981519152602090815260408083206001600160a01b038516845290915290205460ff1661019e576000828152600080516020614f72833981519152602090815260408083206001600160a01b0385168085529252808320805460ff1916600117905551339285917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9190a45050565b6000828152600080516020614f728339815191526020526040808220600101805490849055905190918391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b60805160a05160c051614a2761050b6000396000610f5501526000611115015260006134300152614a276000f3fe6080604052600436106103805760003560e01c80636ffed68b116101d1578063cb1cccce11610102578063deec9c5a116100a0578063eeb728661161006f578063eeb7286614610a31578063f3fef3a314610a53578063fa0f73ba14610a73578063fad8b32a14610a9357600080fd5b8063deec9c5a146109be578063e2bbb158146109de578063ed9ef16a146109f1578063ee0e680714610a1157600080fd5b8063d08fb6cb116100dc578063d08fb6cb1461093e578063d12fc1821461095e578063d2b51eea1461097e578063d9fa70911461099e57600080fd5b8063cb1cccce146108de578063cdd1f70d146108fe578063cf50fd1c1461091e57600080fd5b8063a2bdde3d1161016f578063af8bc15e11610149578063af8bc15e14610876578063b5cd0c3c1461088b578063be58b18e146108ab578063c1f5eb3a146108be57600080fd5b8063a2bdde3d14610823578063a6d1d6c614610843578063ad8b92b41461086357600080fd5b80637fc2ab3e116101ab5780637fc2ab3e146107a35780638101b64c146107c35780638e5224ff146107e35780639463629a1461080357600080fd5b80636ffed68b14610743578063757bd9ab146107635780637d22dbc71461078357600080fd5b806336568abe116102b65780635a5d1bb91161025457806369328dec1161022357806369328dec146106c35780636c04d9d5146106e35780636d70f7ae146107035780636fc97cbf1461072357600080fd5b80635a5d1bb91461064e5780635a72af891461066e5780636083e59a1461068e57806362a14376146106a357600080fd5b8063439fab9111610290578063439fab91146105d9578063496ae54c146105f95780634baf43da146106195780634d8b92a51461063957600080fd5b806336568abe146105795780633682a450146105995780633ea053eb146105b957600080fd5b806319534075116103235780632e1a7d4d116102fd5780632e1a7d4d146104d25780632f951985146104f257806330ccebb51461051257806333eeb1471461056557600080fd5b8063195340751461046f57806323205c5214610492578063284b920e146104b257600080fd5b80630e770f231161035f5780630e770f23146103fc5780630efe6a8b1461041c57806314af98b31461042f578063178963831461044f57600080fd5b8062f714ce146103855780630b3a2d21146103a75780630c6f8664146103c7575b600080fd5b34801561039157600080fd5b506103a56103a0366004613e35565b610ab3565b005b3480156103b357600080fd5b506103a56103c2366004613e65565b610ac9565b3480156103d357600080fd5b506103e76103e2366004613e65565b610ae4565b60405190151581526020015b60405180910390f35b34801561040857600080fd5b506103a5610417366004613e65565b610b45565b6103a561042a366004613e82565b610b5d565b34801561043b57600080fd5b506103a561044a366004613e65565b610c19565b34801561045b57600080fd5b506103a561046a366004613e65565b610cc1565b34801561047b57600080fd5b50610484610cd9565b6040519081526020016103f3565b34801561049e57600080fd5b506103a56104ad366004613eb7565b610ceb565b3480156104be57600080fd5b506103a56104cd366004613e65565b610de1565b3480156104de57600080fd5b506103a56104ed366004613ef2565b610ee8565b3480156104fe57600080fd5b506103a561050d366004613e65565b610efa565b34801561051e57600080fd5b5061055861052d366004613e65565b6001600160a01b03166000908152600080516020614948833981519152602052604090205460ff1690565b6040516103f39190613f21565b34801561057157600080fd5b5060006103e7565b34801561058557600080fd5b506103a5610594366004613e35565b610f3b565b3480156105a557600080fd5b506103a56105b4366004613e65565b610fcd565b3480156105c557600080fd5b506103a56105d4366004613e65565b610fe5565b3480156105e557600080fd5b506103a56105f4366004613f49565b611112565b34801561060557600080fd5b50610484610614366004613e65565b6112c3565b34801561062557600080fd5b50610484610634366004613e65565b61130a565b34801561064557600080fd5b50610484611349565b34801561065a57600080fd5b506103e7610669366004613e65565b611353565b34801561067a57600080fd5b506103a5610689366004613e65565b61136d565b34801561069a57600080fd5b50600019610484565b3480156106af57600080fd5b506103a56106be366004613e65565b611412565b3480156106cf57600080fd5b506103a56106de366004613fbd565b61142a565b3480156106ef57600080fd5b506103e76106fe366004613e65565b611517565b34801561070f57600080fd5b506103e761071e366004613e65565b611531565b34801561072f57600080fd5b506103a561073e366004613e65565b61154b565b34801561074f57600080fd5b506103a561075e366004613fff565b611563565b34801561076f57600080fd5b506103e761077e366004613e65565b6116b5565b34801561078f57600080fd5b506103a561079e366004613fff565b6116cf565b3480156107af57600080fd5b506103a56107be366004613ef2565b611829565b3480156107cf57600080fd5b506103a56107de366004613e65565b61194e565b3480156107ef57600080fd5b506103e76107fe366004613e65565b61198f565b34801561080f57600080fd5b506103a561081e366004613e65565b6119a9565b34801561082f57600080fd5b506103e761083e366004613e65565b6119c1565b34801561084f57600080fd5b506103a561085e366004613eb7565b6119db565b6103a5610871366004613e65565b611abc565b34801561088257600080fd5b50610484611af2565b34801561089757600080fd5b506103a56108a6366004614077565b611afc565b6103a56108b93660046140e9565b611c33565b3480156108ca57600080fd5b506103a56108d9366004613e65565b611d46565b3480156108ea57600080fd5b506103e76108f9366004613e65565b611e42565b34801561090a57600080fd5b506103a5610919366004613e65565b611e5c565b34801561092a57600080fd5b506103a5610939366004614077565b611e74565b34801561094a57600080fd5b506103e7610959366004613e65565b611f90565b34801561096a57600080fd5b506103a5610979366004613e65565b611faa565b34801561098a57600080fd5b506103a5610999366004614153565b6121cf565b3480156109aa57600080fd5b506103a56109b9366004613e65565b6122d8565b3480156109ca57600080fd5b506103a56109d9366004613e65565b6122f0565b6103a56109ec36600461417f565b612308565b3480156109fd57600080fd5b506103a5610a0c366004613e65565b6123bb565b348015610a1d57600080fd5b506103a5610a2c366004613e65565b6123d3565b348015610a3d57600080fd5b50610a46612414565b6040516103f391906141c5565b348015610a5f57600080fd5b506103a5610a6e366004614153565b612434565b348015610a7f57600080fd5b506103a5610a8e366004613e65565b61243f565b348015610a9f57600080fd5b506103a5610aae366004613e65565b612457565b610ac5610abe61246f565b838361142a565b5050565b610ae16000805160206149b183398151915282612492565b50565b6001600160a01b0381166000908152600080516020614948833981519152602052604081205460ff166001816003811115610b2157610b21613f0b565b1480610b3e57506002816003811115610b3c57610b3c613f0b565b145b9392505050565b610ae160008051602061486e83398151915282612492565b82610b6781610ae4565b610bad5760405162461bcd60e51b81526020600482015260126024820152711513d2d15397d393d517d4d154959250d15160721b60448201526064015b60405180910390fd5b6040805160008082526020820190925290610bc886866124b3565b90506000610be8878787866000805160206149288339815191528761256c565b9050610c078787878660008051602061492883398151915286886126f5565b610c1087611faa565b50505050505050565b610c22336116b5565b610c645760405162461bcd60e51b815260206004820152601360248201527213d3931657d4d150d55492551657d051d15395606a1b6044820152606401610ba4565b6001600160a01b03811660008181526000805160206149488339815191526020526040808220600401805460ff191660011790555133917fe2deca319add01142d26def2de47e64bf1fdc70e6f90c13a1862a48bdaaa7cfd91a350565b610ae160008051602061488e83398151915282612492565b6000610ce661063461246f565b905090565b610cf361280a565b6001600160a01b0316636170ff1b610d0961282d565b600080516020614928833981519152610d23888888612850565b856040518563ffffffff1660e01b8152600401610d43949392919061424a565b6020604051808303816000875af1158015610d62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d86919061427a565b50610d9284843361287b565b604080518481526020810183905283916001600160a01b0387169133917f50485fb0face2cfd73784044ab4191986b4a6713f01854414e2331a6bb41837d91015b60405180910390a450505050565b610df96000805160206147608339815191523361288e565b610e3d5760405162461bcd60e51b8152602060048201526015602482015274474f5645524e414e43455f41444d494e5f4f4e4c5960581b6044820152606401610ba4565b6001600160a01b03811660008181527f45f38e273862f8834bd2fe7a449988f63de55a7a5b685dea46ccedeb69cf0e266020818152604092839020805460ff191660011790557f45f38e273862f8834bd2fe7a449988f63de55a7a5b685dea46ccedeb69cf0e2780546001600160a01b03191690559151928352917fcfb473e6c03f9a29ddaf990e736fa3de5188a0bd85d684f5b6e164ebfbfff5d291015b60405180910390a15050565b610ae1610ef361246f565b823361142a565b80336001600160a01b03821603610f235760405162461bcd60e51b8152600401610ba490614293565b610ac560008051602061488e833981519152836128c6565b60008051602061476083398151915282148015610f7657507f0000000000000000000000000000000000000000000000000000000000000000155b15610fc35760405162461bcd60e51b815260206004820181905260248201527f43414e4e4f545f52454e4f554e43455f474f5645524e414e43455f41444d494e6044820152606401610ba4565b610ac582826128e2565b610ae160008051602061496883398151915282612492565b33610fee61295c565b6001600160a01b0316146110335760405162461bcd60e51b815260206004820152600c60248201526b27a7262cafa6a0a720a3a2a960a11b6044820152606401610ba4565b6001600160a01b0381166000908152600080516020614948833981519152602052604081205460ff16600381111561106d5761106d613f0b565b036110aa5760405162461bcd60e51b815260206004820152600d60248201526c2aa725a727aba72faa27a5a2a760991b6044820152606401610ba4565b6001600160a01b03811660008181526000805160206149488339815191526020908152604091829020805460ff1916600317905590519182527f86d6e4556eae726303caf49a75add7d92ac713e46db458dab0622aa263fb48e691015b60405180910390a150565b307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316036111835760405162461bcd60e51b81526020600482015260166024820152751112549150d517d0d0531317d11254d0531313d5d15160521b6044820152606401610ba4565b60006111908160206142d9565b9050600061119f8260206142f0565b9050808310156111e75760405162461bcd60e51b81526020600482015260136024820152721253925517d110551057d513d3d7d4d3505313606a1b6044820152606401610ba4565b60006111f582848688614303565b8101906112029190613e65565b90503660006112138582888a614303565b915091503660006112268887818c614303565b90925090506001600160a01b038516156112505761124585838361297f565b505050505050505050565b611258612ac1565b156112a75780156112a25760405162461bcd60e51b8152602060048201526014602482015273554e45585045435445445f494e49545f4441544160601b6044820152606401610ba4565b611245565b6112b18282612adc565b6112bb8282612bf4565b611245612c23565b6001600160a01b0381166000908152600080516020614948833981519152602052604081206004015460ff166112fb57600019611304565b61130482612c2e565b92915050565b6001600160a01b03811660009081526000805160206149488339815191526020526040812060030154801561133f5780610b3e565b6000199392505050565b6000610ce6612c4f565b60006113046000805160206147c78339815191528361288e565b61137633611f90565b6113b85760405162461bcd60e51b815260206004820152601360248201527227a7262cafa9a2a1aaa924aa2cafa0a226a4a760691b6044820152606401610ba4565b6001600160a01b03811660008181526000805160206149488339815191526020526040808220600401805460ff191690555133917f109dee66091b7a145f557f52c55d7beccb6a29011fc705557e2975749474076b91a350565b610ae160008051602061478083398151915282612492565b6001600160a01b0381166114745760405162461bcd60e51b81526020600482015260116024820152701253959053125117d49150d25412515395607a1b6044820152606401610ba4565b61147f838383612c63565b6001600160a01b0383166000908152600080516020614948833981519152602052604090206004015460ff16156114ba576114ba8383612f80565b6114c583838361287b565b826001600160a01b0316816001600160a01b03167f2717ead6b9200dd235aad468c9809ea400fe33ac69b5bfaa6d3e90fc922b63988460405161150a91815260200190565b60405180910390a3505050565b60006113046000805160206147e78339815191528361288e565b60006113046000805160206149688339815191528361288e565b610ae16000805160206147e783398151915282612492565b803361156d612ff0565b600083815260209190915260409020546001600160a01b0316146115c45760405162461bcd60e51b815260206004820152600e60248201526d27a7262cafa222a827a9a4aa27a960911b6044820152606401610ba4565b6115cc61280a565b6001600160a01b0316637a98660b6115e261282d565b7f02d757788a8d8d6f21d1cd40bce38a8222d70654214e96ff95d8086e684fbee561160d8888613013565b866040518563ffffffff1660e01b815260040161162d949392919061424a565b6020604051808303816000875af115801561164c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611670919061427a565b506040805185815260208101849052849133917fea57f52faafe318751f75acb6756cff3f66afc10201ef8f2d504e788985db3f591015b60405180910390a350505050565b600061130460008051602061486e8339815191528361288e565b80336116d9612ff0565b600083815260209190915260409020546001600160a01b0316146117305760405162461bcd60e51b815260206004820152600e60248201526d27a7262cafa222a827a9a4aa27a960911b6044820152606401610ba4565b61173861280a565b6001600160a01b0316636170ff1b61174e61282d565b7f02d757788a8d8d6f21d1cd40bce38a8222d70654214e96ff95d8086e684fbee56117798888613013565b866040518563ffffffff1660e01b8152600401611799949392919061424a565b6020604051808303816000875af11580156117b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117dc919061427a565b506117ef6117e861246f565b853361287b565b6040805185815260208101849052849133917fb0b548d5e12b6a60adac4d6dd7610f55134cea4fd145535edc303a48063e0cb491016116a7565b61183233611353565b6118725760405162461bcd60e51b815260206004820152601160248201527027a7262cafa0a8282fa3a7ab22a92727a960791b6044820152606401610ba4565b61187a612ac1565b6118c65760405162461bcd60e51b815260206004820152601860248201527f434f4e54524143545f4e4f545f494e495449414c495a454400000000000000006044820152606401610ba4565b6118cf816130bb565b6119155760405162461bcd60e51b81526020600482015260176024820152764c325f414444524553535f4f55545f4f465f52414e474560481b6044820152606401610ba4565b61191e816130de565b6040518181527f90fc3f39f8e4669d1bf5f9038707949f8af42a973f62988143be0fa7c3997f1890602001611107565b80336001600160a01b038216036119775760405162461bcd60e51b8152600401610ba490614293565b610ac5600080516020614780833981519152836128c6565b600061130460008051602061488e8339815191528361288e565b610ae160008051602061476083398151915282612492565b60006113046000805160206149b18339815191528361288e565b6119e361280a565b6001600160a01b0316637a98660b6119f961282d565b600080516020614928833981519152611a13888888612850565b856040518563ffffffff1660e01b8152600401611a33949392919061424a565b6020604051808303816000875af1158015611a52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a76919061427a565b50604080518481526020810183905283916001600160a01b0387169133917f8f3da3ce93acd45e015b069c8f032d37be93dc9efcaaeda368aa9ca74f64c30a9101610dd3565b60405162461bcd60e51b815260206004820152600b60248201526a155394d5541413d495115160aa1b6044820152606401610ba4565b6000610ce6613100565b611b0461280a565b6001600160a01b0316636170ff1b611b1a61282d565b60008051602061484e833981519152611b6a8a8a8a60018b8b8080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525061311392505050565b856040518563ffffffff1660e01b8152600401611b8a949392919061424a565b6020604051808303816000875af1158015611ba9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bcd919061427a565b50611bd986863361287b565b83866001600160a01b0316336001600160a01b03167fa465a02eedf06ceffd1d99159ad98c5d8fa7f17b870eb22e0bfcec06398a8f7388878787604051611c23949392919061432d565b60405180910390a4505050505050565b84611c3d81610ae4565b611c7e5760405162461bcd60e51b81526020600482015260126024820152711513d2d15397d393d517d4d154959250d15160721b6044820152606401610ba4565b6000611c8a87876124b3565b90506000611cdf88888888888080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525060008051602061484e833981519152925089915061256c9050565b9050611d3388888888888080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525060008051602061484e83398151915292508891508990506126f5565b611d3c88611faa565b5050505050505050565b611d5e6000805160206147608339815191523361288e565b611da25760405162461bcd60e51b8152602060048201526015602482015274474f5645524e414e43455f41444d494e5f4f4e4c5960581b6044820152606401610ba4565b6001600160a01b03811660008181527f45f38e273862f8834bd2fe7a449988f63de55a7a5b685dea46ccedeb69cf0e266020818152604092839020805460ff191690557f45f38e273862f8834bd2fe7a449988f63de55a7a5b685dea46ccedeb69cf0e2780546001600160a01b03191690559151928352917fd75f94825e770b8b512be8e74759e252ad00e102e38f50cce2f7c6f868a295999101610edc565b60006113046000805160206147608339815191528361288e565b610ae16000805160206147c783398151915282612492565b611e7c61280a565b6001600160a01b0316637a98660b611e9261282d565b60008051602061484e833981519152611ee28a8a8a60018b8b8080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525061311392505050565b856040518563ffffffff1660e01b8152600401611f02949392919061424a565b6020604051808303816000875af1158015611f21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f45919061427a565b5083866001600160a01b0316336001600160a01b03167f889e470f207032611b2f68dbd2124e3139794f19a6b536c83892fd505760386088878787604051611c23949392919061432d565b60006113046000805160206147808339815191528361288e565b6001600160a01b03811660009081526000805160206149488339815191526020526040902054819060019060ff166003811115611fe957611fe9613f0b565b14611ff2575050565b6001600160a01b038216600090815260008051602061494883398151915260205260409020600181015461202461280a565b6001600160a01b03166377c7d7a9826040518263ffffffff1660e01b815260040161205191815260200190565b602060405180830381865afa15801561206e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612092919061427a565b6000036120a957815460ff191660021782556121c9565b81600201544211156121c9576001600160a01b038416600090815260008051602061494883398151915260205260408120805460ff19908116825560018201839055600282018390556003820183905560049091018054909116905561210d61295c565b6001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801561214a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061216e9190614373565b604051630caca05160e31b81526001600160a01b03878116600483015291925090821690636565028890602401600060405180830381600087803b1580156121b557600080fd5b505af1158015611245573d6000803e3d6000fd5b50505050565b6121d833611353565b6122185760405162461bcd60e51b815260206004820152601160248201527027a7262cafa0a8282fa3a7ab22a92727a960791b6044820152606401610ba4565b806000036122685760405162461bcd60e51b815260206004820152601960248201527f494e56414c49445f4d41585f544f54414c5f42414c414e4345000000000000006044820152606401610ba4565b816001600160a01b03167fb895637c7d86c9b7b5b747e72195206a3fc21d8df0e019edd2312454ffa733b1826040516122a391815260200190565b60405180910390a26001600160a01b039190911660009081526000805160206149488339815191526020526040902060030155565b610ae160008051602061486e833981519152826128c6565b610ae16000805160206147c7833981519152826128c6565b604080516000808252602082019092529061232161246f565b9050600061232f82866124b3565b9050600061234f838787876000805160206149288339815191528761256c565b905061236e8387878760008051602061492883398151915286886126f5565b6040805187815260208101839052908101839052859033907f5b5dbc6c64043a15d3fe6943a6e443a826b78755edc257b2ec890c022225dbcf9060600160405180910390a3505050505050565b610ae16000805160206147e7833981519152826128c6565b80336001600160a01b038216036123fc5760405162461bcd60e51b8152600401610ba490614293565b610ac5600080516020614760833981519152836128c6565b60606040518060600160405280602181526020016149d160219139905090565b610ac582823361142a565b610ae16000805160206149b1833981519152826128c6565b610ae1600080516020614968833981519152826128c6565b6000610ce660405180606001604052806029815260200161498860299139613358565b61249b8261338c565b6124a4816133ae565b6124ae83836133b8565b505050565b6000813410156124fa5760405162461bcd60e51b8152602060048201526012602482015271494e53554646494349454e545f56414c554560701b6044820152606401610ba4565b60006125068334614390565b90506125118161342e565b61251d6245544861130a565b6125278247614390565b1115610b3e5760405162461bcd60e51b815260206004820152601460248201527313505617d09053105390d157d15610d15151115160621b6044820152606401610ba4565b600061257661282d565b6000036125b95760405162461bcd60e51b8152602060048201526011602482015270130c97d094925111d157d393d517d4d155607a1b6044820152606401610ba4565b600086116125f85760405162461bcd60e51b815260206004820152600c60248201526b16915493d7d1115413d4d25560a21b6044820152606401610ba4565b612601856130bb565b6126475760405162461bcd60e51b81526020600482015260176024820152764c325f414444524553535f4f55545f4f465f52414e474560481b6044820152606401610ba4565b60008051602061484e8339815191528314600061266261280a565b6001600160a01b0316633e3aa6c58561267961282d565b886126878e8e8e8a8f613113565b6040518563ffffffff1660e01b81526004016126a5939291906143a3565b604080518083038185885af11580156126c2573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906126e791906143c2565b9a9950505050505050505050565b600080516020614928833981519152830361275f57604080518781526020810184905290810182905285906001600160a01b0389169033907f5f971bd00bf3ffbca8a6d72cdd4fd92cfd4f62636161921d1e5a64f0b64ccb6d9060600160405180910390a4610c10565b60008051602061484e83398151915283146127af5760405162461bcd60e51b815260206004820152601060248201526f2aa725a727aba72fa9a2a622a1aa27a960811b6044820152606401610ba4565b84876001600160a01b0316336001600160a01b03167f2203a49c69f1a46c1164f5e4a30643dd77b7c59c0ff9bc433256048365c247f1898887876040516127f994939291906143e6565b60405180910390a450505050505050565b6000610ce660405180606001604052806028815260200161473860289139613358565b6000610ce660405180606001604052806027815260200161482760279139613358565b6040805160008082526020820190925260609150612872858585600085613113565b95945050505050565b6124ae6001600160a01b038216836134e3565b6000918252600080516020614807833981519152602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6128cf8261338c565b6128d8816133ae565b6124ae8383613588565b6001600160a01b03811633146129525760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610ba4565b610ac58282613588565b6000610ce66040518060600160405280602681526020016148ae60269139613358565b6001600160a01b0383163b6129cb5760405162461bcd60e51b8152602060048201526012602482015271115250d7d393d517d057d0d3d395149050d560721b6044820152606401610ba4565b600080846001600160a01b031663439fab9160e01b85856040516024016129f3929190614412565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051612a319190614441565b600060405180830381855af49150503d8060008114612a6c576040519150601f19603f3d011682016040523d82523d6000602084013e612a71565b606091505b5091509150818190612a965760405162461bcd60e51b8152600401610ba491906141c5565b508051819015612ab95760405162461bcd60e51b8152600401610ba491906141c5565b505050505050565b600080612acc61280a565b6001600160a01b03161415905090565b60408114612b205760405162461bcd60e51b8152602060048201526011602482015270494c4c4547414c5f444154415f53495a4560781b6044820152606401610ba4565b600080612b2f8385018561445d565b91509150612b46816001600160a01b03163b151590565b612b9d5760405162461bcd60e51b815260206004820152602260248201527f494e56414c49445f4d4553534147494e475f434f4e54524143545f4144445245604482015261535360f01b6064820152608401610ba4565b6001600160a01b0382163b6121c95760405162461bcd60e51b815260206004820181905260248201527f494e56414c49445f4d414e414745525f434f4e54524143545f414444524553536044820152606401610ba4565b600080612c038385018561445d565b91509150612c10816135fc565b612c198261361e565b6121c96005613640565b33610ae18180613662565b6000612c3982613766565b612c465761130482613795565b61130482613848565b6000610ce664012a05f200620186a06142d9565b612c6b61282d565b600003612cae5760405162461bcd60e51b8152602060048201526011602482015270130c97d094925111d157d393d517d4d155607a1b6044820152606401610ba4565b6001600160a01b03811660006001612cc860806002614572565b612cd29190614390565b60408051600580825260c082019092529186169250608086901c916000916020820160a080368337019050509050600081600081518110612d1557612d1561457e565b6020026020010181815250508381600181518110612d3557612d3561457e565b602002602001018181525050866001600160a01b031681600281518110612d5e57612d5e61457e565b6020026020010181815250508281600381518110612d7e57612d7e61457e565b6020026020010181815250508181600481518110612d9e57612d9e61457e565b602002602001018181525050612db261280a565b6001600160a01b0316632c9dd5c0612dc861282d565b836040518363ffffffff1660e01b8152600401612de6929190614594565b6020604051808303816000875af1925050508015612e21575060408051601f3d908101601f19168201909252612e1e9181019061427a565b60015b611d3c57612e2d6145ad565b806308c379a003612f745750612e41614604565b80612e4c5750612f76565b60408051600480825260a082019092529060208201608080368337019050509150600082600081518110612e8257612e8261457e565b6020026020010181815250508482600181518110612ea257612ea261457e565b6020026020010181815250508382600281518110612ec257612ec261457e565b6020026020010181815250508282600381518110612ee257612ee261457e565b602002602001018181525050612ef661280a565b6001600160a01b0316632c9dd5c0612f0c61282d565b846040518363ffffffff1660e01b8152600401612f2a929190614594565b6020604051808303816000875af1158015612f49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f6d919061427a565b5050610c10565b505b3d6000803e3d6000fd5b6000612f8b83612c2e565b905081811015612fdd5760405162461bcd60e51b815260206004820152601d60248201527f455843454544535f474c4f42414c5f57495448445241575f4c494d49540000006044820152606401610ba4565b6124ae83612feb8484614390565b613878565b6000610ce66040518060600160405280602981526020016148ff602991396138ab565b6040805160038082526080820190925260609160009190602082018480368337019050509050828160008151811061304d5761304d61457e565b6020908102919091010152600161306660806002614572565b6130709190614390565b8416816001815181106130855761308561457e565b602002602001018181525050608084901c816002815181106130a9576130a961457e565b60209081029190910101529392505050565b60008115801590611304575061130482600167080000000000001160c01b011190565b610ae160405180606001604052806027815260200161482760279139826138de565b6000610ce664012a05f200614e206142d9565b606060008361312357600561312f565b61312f600160056142f0565b9050600083518261314091906142f0565b67ffffffffffffffff811115613158576131586141f8565b604051908082528060200260200182016040528015613181578160200160208202803683370190505b509050876001600160a01b0316816000815181106131a1576131a161457e565b602002602001018181525050336001600160a01b0316816001815181106131ca576131ca61457e565b60200260200101818152505085816002815181106131ea576131ea61457e565b6020908102919091010152600161320360806002614572565b61320d9190614390565b8716816003815181106132225761322261457e565b602002602001018181525050608087901c816004815181106132465761324661457e565b602002602001018181525050841561334d57835181613266600185614390565b815181106132765761327661457e565b60200260200101818152505060005b845181101561334b576132be8582815181106132a3576132a361457e565b6020026020010151600167080000000000001160c01b011190565b6133015760405162461bcd60e51b8152602060048201526014602482015273494e56414c49445f4d4553534147455f4441544160601b6044820152606401610ba4565b8481815181106133135761331361457e565b602002602001015182848361332891906142f0565b815181106133385761333861457e565b6020908102919091010152600101613285565b505b979650505050505050565b6000808260405160200161336c9190614441565b60408051601f198184030181529190528051602090910120549392505050565b6000908152600080516020614807833981519152602052604090206001015490565b610ae1813361392c565b6133c2828261288e565b610ac5576000828152600080516020614807833981519152602090815260408083206001600160a01b0385168085529252808320805460ff1916600117905551339285917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9190a45050565b7f00000000000000000000000000000000000000000000000000000000000000008110156134975760405162461bcd60e51b8152602060048201526016602482015275494e53554646494349454e545f4645455f56414c554560501b6044820152606401610ba4565b662386f26fc10000811115610ae15760405162461bcd60e51b815260206004820152601260248201527108c8a8abeac8298aa8abea89e9ebe90928e960731b6044820152606401610ba4565b806000036134ef575050565b6000826001600160a01b03168260405160006040518083038185875af1925050503d806000811461353c576040519150601f19603f3d011682016040523d82523d6000602084013e613541565b606091505b50509050806124ae5760405162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b6044820152606401610ba4565b613592828261288e565b15610ac5576000828152600080516020614807833981519152602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b610ae16040518060600160405280602881526020016147386028913982613990565b610ae16040518060600160405280602681526020016148ae6026913982613990565b610ae16040518060600160405280602b81526020016148d4602b9139826139df565b61366a613a12565b156136d8576136876000805160206147608339815191528361288e565b6136d35760405162461bcd60e51b815260206004820152601960248201527f524f4c45535f414c52454144595f494e495449414c495a4544000000000000006044820152606401610ba4565b6136e1565b6136e182613a33565b6136e9613b21565b1561375d576137066000805160206147808339815191528261288e565b610ac55760405162461bcd60e51b815260206004820152602260248201527f53454355524954595f524f4c45535f414c52454144595f494e495449414c495a604482015261115160f21b6064820152608401610ba4565b610ac581613b3b565b6000613770613b91565b600061377b84613bb4565b815260200190815260200160002054600014159050919050565b60008062455447196001600160a01b038416016137b357504761381e565b6040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa1580156137f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061381b919061427a565b90505b6000613828613c01565b9050606461383682846142d9565b6138409190614689565b949350505050565b60006001613854613b91565b600061385f85613bb4565b8152602001908152602001600020546113049190614390565b6138836001826142f0565b61388b613b91565b600061389685613bb4565b81526020810191909152604001600020555050565b600080826040516020016138bf9190614441565b60408051601f1981840301815291905280516020909101209392505050565b6138e782613358565b156139225760405162461bcd60e51b815260206004820152600b60248201526a1053149150511657d4d15560aa1b6044820152606401610ba4565b610ac582826139df565b613936828261288e565b610ac55761394e816001600160a01b03166014613c24565b613959836020613c24565b60405160200161396a9291906146ab565b60408051601f198184030181529082905262461bcd60e51b8252610ba4916004016141c5565b600061399b83613358565b6001600160a01b0316146139225760405162461bcd60e51b815260206004820152600b60248201526a1053149150511657d4d15560aa1b6044820152606401610ba4565b6000826040516020016139f29190614441565b604051602081830303815290604052805190602001209050818155505050565b600080613a2c60008051602061476083398151915261338c565b1415905090565b613a4b600080516020614760833981519152826133b8565b613a716000805160206147c783398151915260008051602061488e833981519152613dc0565b613a9760008051602061488e833981519152600080516020614760833981519152613dc0565b613aaf60008051602061476083398151915280613dc0565b613ad560008051602061496883398151915260008051602061488e833981519152613dc0565b613afb6000805160206149b183398151915260008051602061488e833981519152613dc0565b610ae16000805160206147e7833981519152600080516020614760833981519152613dc0565b600080613a2c60008051602061478083398151915261338c565b613b5360008051602061478083398151915280613dc0565b613b7960008051602061486e833981519152600080516020614780833981519152613dc0565b610ae1600080516020614780833981519152826133b8565b6000610ce66040518060600160405280602781526020016147a0602791396138ab565b600080613bc46201518042614689565b604080516001600160a01b038616602082015290810182905290915060600160405160208183030381529060405280519060200120915050919050565b6000610ce66040518060600160405280602b81526020016148d4602b9139613358565b60606000613c338360026142d9565b613c3e9060026142f0565b67ffffffffffffffff811115613c5657613c566141f8565b6040519080825280601f01601f191660200182016040528015613c80576020820181803683370190505b509050600360fc1b81600081518110613c9b57613c9b61457e565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613cca57613cca61457e565b60200101906001600160f81b031916908160001a9053506000613cee8460026142d9565b613cf99060016142f0565b90505b6001811115613d71576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110613d2d57613d2d61457e565b1a60f81b828281518110613d4357613d4361457e565b60200101906001600160f81b031916908160001a90535060049490941c93613d6a81614720565b9050613cfc565b508315610b3e5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610ba4565b6000613dcb8361338c565b60008481526000805160206148078339815191526020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b6001600160a01b0381168114610ae157600080fd5b60008060408385031215613e4857600080fd5b823591506020830135613e5a81613e20565b809150509250929050565b600060208284031215613e7757600080fd5b8135610b3e81613e20565b600080600060608486031215613e9757600080fd5b8335613ea281613e20565b95602085013595506040909401359392505050565b60008060008060808587031215613ecd57600080fd5b8435613ed881613e20565b966020860135965060408601359560600135945092505050565b600060208284031215613f0457600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b6020810160048310613f4357634e487b7160e01b600052602160045260246000fd5b91905290565b60008060208385031215613f5c57600080fd5b823567ffffffffffffffff811115613f7357600080fd5b8301601f81018513613f8457600080fd5b803567ffffffffffffffff811115613f9b57600080fd5b856020828401011115613fad57600080fd5b6020919091019590945092505050565b600080600060608486031215613fd257600080fd5b8335613fdd81613e20565b9250602084013591506040840135613ff481613e20565b809150509250925092565b60008060006060848603121561401457600080fd5b505081359360208301359350604090920135919050565b60008083601f84011261403d57600080fd5b50813567ffffffffffffffff81111561405557600080fd5b6020830191508360208260051b850101111561407057600080fd5b9250929050565b60008060008060008060a0878903121561409057600080fd5b863561409b81613e20565b95506020870135945060408701359350606087013567ffffffffffffffff8111156140c557600080fd5b6140d189828a0161402b565b979a9699509497949695608090950135949350505050565b60008060008060006080868803121561410157600080fd5b853561410c81613e20565b94506020860135935060408601359250606086013567ffffffffffffffff81111561413657600080fd5b6141428882890161402b565b969995985093965092949392505050565b6000806040838503121561416657600080fd5b823561417181613e20565b946020939093013593505050565b6000806040838503121561419257600080fd5b50508035926020909101359150565b60005b838110156141bc5781810151838201526020016141a4565b50506000910152565b60208152600082518060208401526141e48160408501602087016141a1565b601f01601f19169190910160400192915050565b634e487b7160e01b600052604160045260246000fd5b600081518084526020840193506020830160005b82811015614240578151865260209586019590910190600101614222565b5093949350505050565b848152836020820152608060408201526000614269608083018561420e565b905082606083015295945050505050565b60006020828403121561428c57600080fd5b5051919050565b60208082526016908201527521a0a72727aa2fa822a92327a926afa7a72fa9a2a62360511b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417611304576113046142c3565b80820180821115611304576113046142c3565b6000808585111561431357600080fd5b8386111561432057600080fd5b5050820193919092039150565b848152606060208201819052810183905260006001600160fb1b0384111561435457600080fd5b8360051b80866080850137604083019390935250016080019392505050565b60006020828403121561438557600080fd5b8151610b3e81613e20565b81810381811115611304576113046142c3565b838152826020820152606060408201526000612872606083018461420e565b600080604083850312156143d557600080fd5b505080516020909101519092909150565b8481526080602082015260006143ff608083018661420e565b6040830194909452506060015292915050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b600082516144538184602087016141a1565b9190910192915050565b6000806040838503121561447057600080fd5b823561447b81613e20565b91506020830135613e5a81613e20565b6001815b60018411156144c6578085048111156144aa576144aa6142c3565b60018416156144b857908102905b60019390931c92800261448f565b935093915050565b6000826144dd57506001611304565b816144ea57506000611304565b8160018114614500576002811461450a57614526565b6001915050611304565b60ff84111561451b5761451b6142c3565b50506001821b611304565b5060208310610133831016604e8410600b8410161715614549575081810a611304565b614556600019848461448b565b806000190482111561456a5761456a6142c3565b029392505050565b6000610b3e83836144ce565b634e487b7160e01b600052603260045260246000fd5b828152604060208201526000613840604083018461420e565b600060033d11156145c65760046000803e5060005160e01c5b90565b601f8201601f1916810167ffffffffffffffff811182821017156145fd57634e487b7160e01b600052604160045260246000fd5b6040525050565b600060443d10156146125790565b6040513d600319016004823e80513d602482011167ffffffffffffffff8211171561463c57505090565b808201805167ffffffffffffffff811115614658575050505090565b3d8401600319018282016020011115614672575050505090565b614681602082850101856145c9565b509392505050565b6000826146a657634e487b7160e01b600052601260045260246000fd5b500490565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516146e38160178501602088016141a1565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516147148160288401602088016141a1565b01602801949350505050565b60008161472f5761472f6142c3565b50600019019056fe535441524b4e45545f544f4b454e5f4252494447455f4d4553534147494e475f434f4e545241435403711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846026bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b357495448445241574c5f4c494d49545f494e5452414441595f51554f54415f534c4f545f54414700d2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de060680251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec22853e43b954ba190a7e49386f1f78b01dcd9f628db23f432fa029a7dfd6d98e8fb535441524b4e45545f544f4b454e5f4252494447455f4c325f544f4b454e5f434f4e5452414354008bce41827dd5484d80312a2e43bc42a896e3fcf75bf84c2b49339168dfa00a037693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b9603e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99535441524b4e45545f544f4b454e5f4252494447455f4d414e414745525f534c4f545f54414757495448445241574c5f4c494d49545f57495448445241575f4c494d49545f5043545f534c4f545f544147535441524b4e45545f544f4b454e5f4252494447455f4445504f5349544f525f41444452455353455301b64b1b3b690b43b9b514fb81377518f4039cd3e4f4914d8a6bdf01d679fb19c59c20aaa96597268f595db30ec21108a505370e3266ed3a6515637f16b8b689023edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da7535441524b4e45545f45524332305f544f4b454e5f4252494447455f544f4b454e5f414444524553530128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e537461726b576172655f537461726b6e65744574684272696467655f322e305f34a264697066735822122056331780566488e3f63c37e27fc79f70f3feb5f3bb1ee6f027352d15a2ac888264736f6c634300081b003303711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846026bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b353e43b954ba190a7e49386f1f78b01dcd9f628db23f432fa029a7dfd6d98e8fb03e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "sourceMap": "192:956:14:-:0;;;442:13:0;459:1;442:18;441:33;;473:1;441:33;;;464:6;441:33;413:61;;;;192:956:14;;;;;;;;;-1:-1:-1;479:4:25;463:21;;628:4:29;299:31:24;;;;340:21;:19;:21::i;:::-;258:110;192:956:14;;2533:142:33;3290:10:30;2632:36:33;3290:10:30;;2632::33;:36::i;:::-;2564:111;2533:142::o;2681:1050::-;2782:28;:26;:28::i;:::-;2778:485;;;-1:-1:-1;;;;;4575:31:30;;4552:4;4575:31;;;:14;;:31;:14;:31;;;;;3037:144:33;;;;-1:-1:-1;;;3037:144:33;;216:2:40;3037:144:33;;;198:21:40;255:2;235:18;;;228:30;294:27;274:18;;;267:55;339:18;;3037:144:33;;;;;;;;;2778:485;;;3212:40;3232:19;3212;:40::i;:::-;3277:26;:24;:26::i;:::-;3273:452;;;-1:-1:-1;;;;;4575:31:30;;4552:4;4575:31;;;:14;;:31;:14;:31;;;;;3494:151:33;;;;-1:-1:-1;;;3494:151:33;;570:2:40;3494:151:33;;;552:21:40;609:2;589:18;;;582:30;648:34;628:18;;;621:62;-1:-1:-1;;;699:18:40;;;692:32;741:19;;3494:151:33;368:398:40;3494:151:33;2681:1050;;:::o;3273:452::-;3676:38;3694:19;3676:17;:38::i;2221:152::-;-1:-1:-1;;;;;;;;;;;2282:4:33;5996:14:30;;;-1:-1:-1;;;;;;;;;;;5996:14:30;;:24;;2282:4:33;;2305:44;:61;;2298:68;;2221:152;:::o;4023:559::-;4099:63;-1:-1:-1;;;;;;;;;;;4142:19:33;4099:24;:63::i;:::-;4172:57;253:64;-1:-1:-1;;;;;;;;;;;4172:27:33;:57::i;:::-;4239:61;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;4239:27:33;:61::i;:::-;4310:63;-1:-1:-1;;;;;;;;;;;667:66:33;4310:27;:63::i;:::-;4383:53;861:66;-1:-1:-1;;;;;;;;;;;4383:27:33;:53::i;:::-;4446:56;1473:66;-1:-1:-1;;;;;;;;;;;4446:27:33;:56::i;:::-;4512:63;1683:66;-1:-1:-1;;;;;;;;;;;4512:27:33;:63::i;2379:148::-;-1:-1:-1;;;;;;;;;;;2438:4:33;5996:14:30;;;-1:-1:-1;;;;;;;;;;;5996:14:30;;:24;;2438:4:33;;2461:42;5911:116:30;3737:280:33;3811:59;-1:-1:-1;;;;;;;;;;;1067:66:33;3811:27;:59::i;:::-;3880;1273:66;-1:-1:-1;;;;;;;;;;;3880:27:33;:59::i;:::-;3949:61;-1:-1:-1;;;;;;;;;;;3990:19:33;8830:227:30;4552:4;4575:14;;;-1:-1:-1;;;;;;;;;;;4575:14:30;;;;;;;;-1:-1:-1;;;;;4575:31:30;;;;;;;;;;;;8900:151;;8943:14;;;;-1:-1:-1;;;;;;;;;;;8943:14:30;;;;;;;;-1:-1:-1;;;;;8943:31:30;;;;;;;;;;:38;;-1:-1:-1;;8943:38:30;8977:4;8943:38;;;9000:40;3290:10;;8943:14;;9000:40;;8943:14;9000:40;8830:227;;:::o;8433:241::-;8508:25;5996:14;;;-1:-1:-1;;;;;;;;;;;5996:14:30;;;;;;:24;;;;8564:36;;;;8615:52;;5996:24;;8564:36;;5996:24;;:14;;8615:52;;8508:25;8615:52;8498:176;8433:241;;:::o;368:398:40:-;192:956:14;;;;;;;;;;;;;;;;;;;;;;;;", + "linkReferences": {} + }, + "deployedBytecode": { + "object": "0x6080604052600436106103805760003560e01c80636ffed68b116101d1578063cb1cccce11610102578063deec9c5a116100a0578063eeb728661161006f578063eeb7286614610a31578063f3fef3a314610a53578063fa0f73ba14610a73578063fad8b32a14610a9357600080fd5b8063deec9c5a146109be578063e2bbb158146109de578063ed9ef16a146109f1578063ee0e680714610a1157600080fd5b8063d08fb6cb116100dc578063d08fb6cb1461093e578063d12fc1821461095e578063d2b51eea1461097e578063d9fa70911461099e57600080fd5b8063cb1cccce146108de578063cdd1f70d146108fe578063cf50fd1c1461091e57600080fd5b8063a2bdde3d1161016f578063af8bc15e11610149578063af8bc15e14610876578063b5cd0c3c1461088b578063be58b18e146108ab578063c1f5eb3a146108be57600080fd5b8063a2bdde3d14610823578063a6d1d6c614610843578063ad8b92b41461086357600080fd5b80637fc2ab3e116101ab5780637fc2ab3e146107a35780638101b64c146107c35780638e5224ff146107e35780639463629a1461080357600080fd5b80636ffed68b14610743578063757bd9ab146107635780637d22dbc71461078357600080fd5b806336568abe116102b65780635a5d1bb91161025457806369328dec1161022357806369328dec146106c35780636c04d9d5146106e35780636d70f7ae146107035780636fc97cbf1461072357600080fd5b80635a5d1bb91461064e5780635a72af891461066e5780636083e59a1461068e57806362a14376146106a357600080fd5b8063439fab9111610290578063439fab91146105d9578063496ae54c146105f95780634baf43da146106195780634d8b92a51461063957600080fd5b806336568abe146105795780633682a450146105995780633ea053eb146105b957600080fd5b806319534075116103235780632e1a7d4d116102fd5780632e1a7d4d146104d25780632f951985146104f257806330ccebb51461051257806333eeb1471461056557600080fd5b8063195340751461046f57806323205c5214610492578063284b920e146104b257600080fd5b80630e770f231161035f5780630e770f23146103fc5780630efe6a8b1461041c57806314af98b31461042f578063178963831461044f57600080fd5b8062f714ce146103855780630b3a2d21146103a75780630c6f8664146103c7575b600080fd5b34801561039157600080fd5b506103a56103a0366004613e35565b610ab3565b005b3480156103b357600080fd5b506103a56103c2366004613e65565b610ac9565b3480156103d357600080fd5b506103e76103e2366004613e65565b610ae4565b60405190151581526020015b60405180910390f35b34801561040857600080fd5b506103a5610417366004613e65565b610b45565b6103a561042a366004613e82565b610b5d565b34801561043b57600080fd5b506103a561044a366004613e65565b610c19565b34801561045b57600080fd5b506103a561046a366004613e65565b610cc1565b34801561047b57600080fd5b50610484610cd9565b6040519081526020016103f3565b34801561049e57600080fd5b506103a56104ad366004613eb7565b610ceb565b3480156104be57600080fd5b506103a56104cd366004613e65565b610de1565b3480156104de57600080fd5b506103a56104ed366004613ef2565b610ee8565b3480156104fe57600080fd5b506103a561050d366004613e65565b610efa565b34801561051e57600080fd5b5061055861052d366004613e65565b6001600160a01b03166000908152600080516020614948833981519152602052604090205460ff1690565b6040516103f39190613f21565b34801561057157600080fd5b5060006103e7565b34801561058557600080fd5b506103a5610594366004613e35565b610f3b565b3480156105a557600080fd5b506103a56105b4366004613e65565b610fcd565b3480156105c557600080fd5b506103a56105d4366004613e65565b610fe5565b3480156105e557600080fd5b506103a56105f4366004613f49565b611112565b34801561060557600080fd5b50610484610614366004613e65565b6112c3565b34801561062557600080fd5b50610484610634366004613e65565b61130a565b34801561064557600080fd5b50610484611349565b34801561065a57600080fd5b506103e7610669366004613e65565b611353565b34801561067a57600080fd5b506103a5610689366004613e65565b61136d565b34801561069a57600080fd5b50600019610484565b3480156106af57600080fd5b506103a56106be366004613e65565b611412565b3480156106cf57600080fd5b506103a56106de366004613fbd565b61142a565b3480156106ef57600080fd5b506103e76106fe366004613e65565b611517565b34801561070f57600080fd5b506103e761071e366004613e65565b611531565b34801561072f57600080fd5b506103a561073e366004613e65565b61154b565b34801561074f57600080fd5b506103a561075e366004613fff565b611563565b34801561076f57600080fd5b506103e761077e366004613e65565b6116b5565b34801561078f57600080fd5b506103a561079e366004613fff565b6116cf565b3480156107af57600080fd5b506103a56107be366004613ef2565b611829565b3480156107cf57600080fd5b506103a56107de366004613e65565b61194e565b3480156107ef57600080fd5b506103e76107fe366004613e65565b61198f565b34801561080f57600080fd5b506103a561081e366004613e65565b6119a9565b34801561082f57600080fd5b506103e761083e366004613e65565b6119c1565b34801561084f57600080fd5b506103a561085e366004613eb7565b6119db565b6103a5610871366004613e65565b611abc565b34801561088257600080fd5b50610484611af2565b34801561089757600080fd5b506103a56108a6366004614077565b611afc565b6103a56108b93660046140e9565b611c33565b3480156108ca57600080fd5b506103a56108d9366004613e65565b611d46565b3480156108ea57600080fd5b506103e76108f9366004613e65565b611e42565b34801561090a57600080fd5b506103a5610919366004613e65565b611e5c565b34801561092a57600080fd5b506103a5610939366004614077565b611e74565b34801561094a57600080fd5b506103e7610959366004613e65565b611f90565b34801561096a57600080fd5b506103a5610979366004613e65565b611faa565b34801561098a57600080fd5b506103a5610999366004614153565b6121cf565b3480156109aa57600080fd5b506103a56109b9366004613e65565b6122d8565b3480156109ca57600080fd5b506103a56109d9366004613e65565b6122f0565b6103a56109ec36600461417f565b612308565b3480156109fd57600080fd5b506103a5610a0c366004613e65565b6123bb565b348015610a1d57600080fd5b506103a5610a2c366004613e65565b6123d3565b348015610a3d57600080fd5b50610a46612414565b6040516103f391906141c5565b348015610a5f57600080fd5b506103a5610a6e366004614153565b612434565b348015610a7f57600080fd5b506103a5610a8e366004613e65565b61243f565b348015610a9f57600080fd5b506103a5610aae366004613e65565b612457565b610ac5610abe61246f565b838361142a565b5050565b610ae16000805160206149b183398151915282612492565b50565b6001600160a01b0381166000908152600080516020614948833981519152602052604081205460ff166001816003811115610b2157610b21613f0b565b1480610b3e57506002816003811115610b3c57610b3c613f0b565b145b9392505050565b610ae160008051602061486e83398151915282612492565b82610b6781610ae4565b610bad5760405162461bcd60e51b81526020600482015260126024820152711513d2d15397d393d517d4d154959250d15160721b60448201526064015b60405180910390fd5b6040805160008082526020820190925290610bc886866124b3565b90506000610be8878787866000805160206149288339815191528761256c565b9050610c078787878660008051602061492883398151915286886126f5565b610c1087611faa565b50505050505050565b610c22336116b5565b610c645760405162461bcd60e51b815260206004820152601360248201527213d3931657d4d150d55492551657d051d15395606a1b6044820152606401610ba4565b6001600160a01b03811660008181526000805160206149488339815191526020526040808220600401805460ff191660011790555133917fe2deca319add01142d26def2de47e64bf1fdc70e6f90c13a1862a48bdaaa7cfd91a350565b610ae160008051602061488e83398151915282612492565b6000610ce661063461246f565b905090565b610cf361280a565b6001600160a01b0316636170ff1b610d0961282d565b600080516020614928833981519152610d23888888612850565b856040518563ffffffff1660e01b8152600401610d43949392919061424a565b6020604051808303816000875af1158015610d62573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d86919061427a565b50610d9284843361287b565b604080518481526020810183905283916001600160a01b0387169133917f50485fb0face2cfd73784044ab4191986b4a6713f01854414e2331a6bb41837d91015b60405180910390a450505050565b610df96000805160206147608339815191523361288e565b610e3d5760405162461bcd60e51b8152602060048201526015602482015274474f5645524e414e43455f41444d494e5f4f4e4c5960581b6044820152606401610ba4565b6001600160a01b03811660008181527f45f38e273862f8834bd2fe7a449988f63de55a7a5b685dea46ccedeb69cf0e266020818152604092839020805460ff191660011790557f45f38e273862f8834bd2fe7a449988f63de55a7a5b685dea46ccedeb69cf0e2780546001600160a01b03191690559151928352917fcfb473e6c03f9a29ddaf990e736fa3de5188a0bd85d684f5b6e164ebfbfff5d291015b60405180910390a15050565b610ae1610ef361246f565b823361142a565b80336001600160a01b03821603610f235760405162461bcd60e51b8152600401610ba490614293565b610ac560008051602061488e833981519152836128c6565b60008051602061476083398151915282148015610f7657507f0000000000000000000000000000000000000000000000000000000000000000155b15610fc35760405162461bcd60e51b815260206004820181905260248201527f43414e4e4f545f52454e4f554e43455f474f5645524e414e43455f41444d494e6044820152606401610ba4565b610ac582826128e2565b610ae160008051602061496883398151915282612492565b33610fee61295c565b6001600160a01b0316146110335760405162461bcd60e51b815260206004820152600c60248201526b27a7262cafa6a0a720a3a2a960a11b6044820152606401610ba4565b6001600160a01b0381166000908152600080516020614948833981519152602052604081205460ff16600381111561106d5761106d613f0b565b036110aa5760405162461bcd60e51b815260206004820152600d60248201526c2aa725a727aba72faa27a5a2a760991b6044820152606401610ba4565b6001600160a01b03811660008181526000805160206149488339815191526020908152604091829020805460ff1916600317905590519182527f86d6e4556eae726303caf49a75add7d92ac713e46db458dab0622aa263fb48e691015b60405180910390a150565b307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316036111835760405162461bcd60e51b81526020600482015260166024820152751112549150d517d0d0531317d11254d0531313d5d15160521b6044820152606401610ba4565b60006111908160206142d9565b9050600061119f8260206142f0565b9050808310156111e75760405162461bcd60e51b81526020600482015260136024820152721253925517d110551057d513d3d7d4d3505313606a1b6044820152606401610ba4565b60006111f582848688614303565b8101906112029190613e65565b90503660006112138582888a614303565b915091503660006112268887818c614303565b90925090506001600160a01b038516156112505761124585838361297f565b505050505050505050565b611258612ac1565b156112a75780156112a25760405162461bcd60e51b8152602060048201526014602482015273554e45585045435445445f494e49545f4441544160601b6044820152606401610ba4565b611245565b6112b18282612adc565b6112bb8282612bf4565b611245612c23565b6001600160a01b0381166000908152600080516020614948833981519152602052604081206004015460ff166112fb57600019611304565b61130482612c2e565b92915050565b6001600160a01b03811660009081526000805160206149488339815191526020526040812060030154801561133f5780610b3e565b6000199392505050565b6000610ce6612c4f565b60006113046000805160206147c78339815191528361288e565b61137633611f90565b6113b85760405162461bcd60e51b815260206004820152601360248201527227a7262cafa9a2a1aaa924aa2cafa0a226a4a760691b6044820152606401610ba4565b6001600160a01b03811660008181526000805160206149488339815191526020526040808220600401805460ff191690555133917f109dee66091b7a145f557f52c55d7beccb6a29011fc705557e2975749474076b91a350565b610ae160008051602061478083398151915282612492565b6001600160a01b0381166114745760405162461bcd60e51b81526020600482015260116024820152701253959053125117d49150d25412515395607a1b6044820152606401610ba4565b61147f838383612c63565b6001600160a01b0383166000908152600080516020614948833981519152602052604090206004015460ff16156114ba576114ba8383612f80565b6114c583838361287b565b826001600160a01b0316816001600160a01b03167f2717ead6b9200dd235aad468c9809ea400fe33ac69b5bfaa6d3e90fc922b63988460405161150a91815260200190565b60405180910390a3505050565b60006113046000805160206147e78339815191528361288e565b60006113046000805160206149688339815191528361288e565b610ae16000805160206147e783398151915282612492565b803361156d612ff0565b600083815260209190915260409020546001600160a01b0316146115c45760405162461bcd60e51b815260206004820152600e60248201526d27a7262cafa222a827a9a4aa27a960911b6044820152606401610ba4565b6115cc61280a565b6001600160a01b0316637a98660b6115e261282d565b7f02d757788a8d8d6f21d1cd40bce38a8222d70654214e96ff95d8086e684fbee561160d8888613013565b866040518563ffffffff1660e01b815260040161162d949392919061424a565b6020604051808303816000875af115801561164c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611670919061427a565b506040805185815260208101849052849133917fea57f52faafe318751f75acb6756cff3f66afc10201ef8f2d504e788985db3f591015b60405180910390a350505050565b600061130460008051602061486e8339815191528361288e565b80336116d9612ff0565b600083815260209190915260409020546001600160a01b0316146117305760405162461bcd60e51b815260206004820152600e60248201526d27a7262cafa222a827a9a4aa27a960911b6044820152606401610ba4565b61173861280a565b6001600160a01b0316636170ff1b61174e61282d565b7f02d757788a8d8d6f21d1cd40bce38a8222d70654214e96ff95d8086e684fbee56117798888613013565b866040518563ffffffff1660e01b8152600401611799949392919061424a565b6020604051808303816000875af11580156117b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117dc919061427a565b506117ef6117e861246f565b853361287b565b6040805185815260208101849052849133917fb0b548d5e12b6a60adac4d6dd7610f55134cea4fd145535edc303a48063e0cb491016116a7565b61183233611353565b6118725760405162461bcd60e51b815260206004820152601160248201527027a7262cafa0a8282fa3a7ab22a92727a960791b6044820152606401610ba4565b61187a612ac1565b6118c65760405162461bcd60e51b815260206004820152601860248201527f434f4e54524143545f4e4f545f494e495449414c495a454400000000000000006044820152606401610ba4565b6118cf816130bb565b6119155760405162461bcd60e51b81526020600482015260176024820152764c325f414444524553535f4f55545f4f465f52414e474560481b6044820152606401610ba4565b61191e816130de565b6040518181527f90fc3f39f8e4669d1bf5f9038707949f8af42a973f62988143be0fa7c3997f1890602001611107565b80336001600160a01b038216036119775760405162461bcd60e51b8152600401610ba490614293565b610ac5600080516020614780833981519152836128c6565b600061130460008051602061488e8339815191528361288e565b610ae160008051602061476083398151915282612492565b60006113046000805160206149b18339815191528361288e565b6119e361280a565b6001600160a01b0316637a98660b6119f961282d565b600080516020614928833981519152611a13888888612850565b856040518563ffffffff1660e01b8152600401611a33949392919061424a565b6020604051808303816000875af1158015611a52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a76919061427a565b50604080518481526020810183905283916001600160a01b0387169133917f8f3da3ce93acd45e015b069c8f032d37be93dc9efcaaeda368aa9ca74f64c30a9101610dd3565b60405162461bcd60e51b815260206004820152600b60248201526a155394d5541413d495115160aa1b6044820152606401610ba4565b6000610ce6613100565b611b0461280a565b6001600160a01b0316636170ff1b611b1a61282d565b60008051602061484e833981519152611b6a8a8a8a60018b8b8080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525061311392505050565b856040518563ffffffff1660e01b8152600401611b8a949392919061424a565b6020604051808303816000875af1158015611ba9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bcd919061427a565b50611bd986863361287b565b83866001600160a01b0316336001600160a01b03167fa465a02eedf06ceffd1d99159ad98c5d8fa7f17b870eb22e0bfcec06398a8f7388878787604051611c23949392919061432d565b60405180910390a4505050505050565b84611c3d81610ae4565b611c7e5760405162461bcd60e51b81526020600482015260126024820152711513d2d15397d393d517d4d154959250d15160721b6044820152606401610ba4565b6000611c8a87876124b3565b90506000611cdf88888888888080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525060008051602061484e833981519152925089915061256c9050565b9050611d3388888888888080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525060008051602061484e83398151915292508891508990506126f5565b611d3c88611faa565b5050505050505050565b611d5e6000805160206147608339815191523361288e565b611da25760405162461bcd60e51b8152602060048201526015602482015274474f5645524e414e43455f41444d494e5f4f4e4c5960581b6044820152606401610ba4565b6001600160a01b03811660008181527f45f38e273862f8834bd2fe7a449988f63de55a7a5b685dea46ccedeb69cf0e266020818152604092839020805460ff191690557f45f38e273862f8834bd2fe7a449988f63de55a7a5b685dea46ccedeb69cf0e2780546001600160a01b03191690559151928352917fd75f94825e770b8b512be8e74759e252ad00e102e38f50cce2f7c6f868a295999101610edc565b60006113046000805160206147608339815191528361288e565b610ae16000805160206147c783398151915282612492565b611e7c61280a565b6001600160a01b0316637a98660b611e9261282d565b60008051602061484e833981519152611ee28a8a8a60018b8b8080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525061311392505050565b856040518563ffffffff1660e01b8152600401611f02949392919061424a565b6020604051808303816000875af1158015611f21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f45919061427a565b5083866001600160a01b0316336001600160a01b03167f889e470f207032611b2f68dbd2124e3139794f19a6b536c83892fd505760386088878787604051611c23949392919061432d565b60006113046000805160206147808339815191528361288e565b6001600160a01b03811660009081526000805160206149488339815191526020526040902054819060019060ff166003811115611fe957611fe9613f0b565b14611ff2575050565b6001600160a01b038216600090815260008051602061494883398151915260205260409020600181015461202461280a565b6001600160a01b03166377c7d7a9826040518263ffffffff1660e01b815260040161205191815260200190565b602060405180830381865afa15801561206e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612092919061427a565b6000036120a957815460ff191660021782556121c9565b81600201544211156121c9576001600160a01b038416600090815260008051602061494883398151915260205260408120805460ff19908116825560018201839055600282018390556003820183905560049091018054909116905561210d61295c565b6001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa15801561214a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061216e9190614373565b604051630caca05160e31b81526001600160a01b03878116600483015291925090821690636565028890602401600060405180830381600087803b1580156121b557600080fd5b505af1158015611245573d6000803e3d6000fd5b50505050565b6121d833611353565b6122185760405162461bcd60e51b815260206004820152601160248201527027a7262cafa0a8282fa3a7ab22a92727a960791b6044820152606401610ba4565b806000036122685760405162461bcd60e51b815260206004820152601960248201527f494e56414c49445f4d41585f544f54414c5f42414c414e4345000000000000006044820152606401610ba4565b816001600160a01b03167fb895637c7d86c9b7b5b747e72195206a3fc21d8df0e019edd2312454ffa733b1826040516122a391815260200190565b60405180910390a26001600160a01b039190911660009081526000805160206149488339815191526020526040902060030155565b610ae160008051602061486e833981519152826128c6565b610ae16000805160206147c7833981519152826128c6565b604080516000808252602082019092529061232161246f565b9050600061232f82866124b3565b9050600061234f838787876000805160206149288339815191528761256c565b905061236e8387878760008051602061492883398151915286886126f5565b6040805187815260208101839052908101839052859033907f5b5dbc6c64043a15d3fe6943a6e443a826b78755edc257b2ec890c022225dbcf9060600160405180910390a3505050505050565b610ae16000805160206147e7833981519152826128c6565b80336001600160a01b038216036123fc5760405162461bcd60e51b8152600401610ba490614293565b610ac5600080516020614760833981519152836128c6565b60606040518060600160405280602181526020016149d160219139905090565b610ac582823361142a565b610ae16000805160206149b1833981519152826128c6565b610ae1600080516020614968833981519152826128c6565b6000610ce660405180606001604052806029815260200161498860299139613358565b61249b8261338c565b6124a4816133ae565b6124ae83836133b8565b505050565b6000813410156124fa5760405162461bcd60e51b8152602060048201526012602482015271494e53554646494349454e545f56414c554560701b6044820152606401610ba4565b60006125068334614390565b90506125118161342e565b61251d6245544861130a565b6125278247614390565b1115610b3e5760405162461bcd60e51b815260206004820152601460248201527313505617d09053105390d157d15610d15151115160621b6044820152606401610ba4565b600061257661282d565b6000036125b95760405162461bcd60e51b8152602060048201526011602482015270130c97d094925111d157d393d517d4d155607a1b6044820152606401610ba4565b600086116125f85760405162461bcd60e51b815260206004820152600c60248201526b16915493d7d1115413d4d25560a21b6044820152606401610ba4565b612601856130bb565b6126475760405162461bcd60e51b81526020600482015260176024820152764c325f414444524553535f4f55545f4f465f52414e474560481b6044820152606401610ba4565b60008051602061484e8339815191528314600061266261280a565b6001600160a01b0316633e3aa6c58561267961282d565b886126878e8e8e8a8f613113565b6040518563ffffffff1660e01b81526004016126a5939291906143a3565b604080518083038185885af11580156126c2573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906126e791906143c2565b9a9950505050505050505050565b600080516020614928833981519152830361275f57604080518781526020810184905290810182905285906001600160a01b0389169033907f5f971bd00bf3ffbca8a6d72cdd4fd92cfd4f62636161921d1e5a64f0b64ccb6d9060600160405180910390a4610c10565b60008051602061484e83398151915283146127af5760405162461bcd60e51b815260206004820152601060248201526f2aa725a727aba72fa9a2a622a1aa27a960811b6044820152606401610ba4565b84876001600160a01b0316336001600160a01b03167f2203a49c69f1a46c1164f5e4a30643dd77b7c59c0ff9bc433256048365c247f1898887876040516127f994939291906143e6565b60405180910390a450505050505050565b6000610ce660405180606001604052806028815260200161473860289139613358565b6000610ce660405180606001604052806027815260200161482760279139613358565b6040805160008082526020820190925260609150612872858585600085613113565b95945050505050565b6124ae6001600160a01b038216836134e3565b6000918252600080516020614807833981519152602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6128cf8261338c565b6128d8816133ae565b6124ae8383613588565b6001600160a01b03811633146129525760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610ba4565b610ac58282613588565b6000610ce66040518060600160405280602681526020016148ae60269139613358565b6001600160a01b0383163b6129cb5760405162461bcd60e51b8152602060048201526012602482015271115250d7d393d517d057d0d3d395149050d560721b6044820152606401610ba4565b600080846001600160a01b031663439fab9160e01b85856040516024016129f3929190614412565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051612a319190614441565b600060405180830381855af49150503d8060008114612a6c576040519150601f19603f3d011682016040523d82523d6000602084013e612a71565b606091505b5091509150818190612a965760405162461bcd60e51b8152600401610ba491906141c5565b508051819015612ab95760405162461bcd60e51b8152600401610ba491906141c5565b505050505050565b600080612acc61280a565b6001600160a01b03161415905090565b60408114612b205760405162461bcd60e51b8152602060048201526011602482015270494c4c4547414c5f444154415f53495a4560781b6044820152606401610ba4565b600080612b2f8385018561445d565b91509150612b46816001600160a01b03163b151590565b612b9d5760405162461bcd60e51b815260206004820152602260248201527f494e56414c49445f4d4553534147494e475f434f4e54524143545f4144445245604482015261535360f01b6064820152608401610ba4565b6001600160a01b0382163b6121c95760405162461bcd60e51b815260206004820181905260248201527f494e56414c49445f4d414e414745525f434f4e54524143545f414444524553536044820152606401610ba4565b600080612c038385018561445d565b91509150612c10816135fc565b612c198261361e565b6121c96005613640565b33610ae18180613662565b6000612c3982613766565b612c465761130482613795565b61130482613848565b6000610ce664012a05f200620186a06142d9565b612c6b61282d565b600003612cae5760405162461bcd60e51b8152602060048201526011602482015270130c97d094925111d157d393d517d4d155607a1b6044820152606401610ba4565b6001600160a01b03811660006001612cc860806002614572565b612cd29190614390565b60408051600580825260c082019092529186169250608086901c916000916020820160a080368337019050509050600081600081518110612d1557612d1561457e565b6020026020010181815250508381600181518110612d3557612d3561457e565b602002602001018181525050866001600160a01b031681600281518110612d5e57612d5e61457e565b6020026020010181815250508281600381518110612d7e57612d7e61457e565b6020026020010181815250508181600481518110612d9e57612d9e61457e565b602002602001018181525050612db261280a565b6001600160a01b0316632c9dd5c0612dc861282d565b836040518363ffffffff1660e01b8152600401612de6929190614594565b6020604051808303816000875af1925050508015612e21575060408051601f3d908101601f19168201909252612e1e9181019061427a565b60015b611d3c57612e2d6145ad565b806308c379a003612f745750612e41614604565b80612e4c5750612f76565b60408051600480825260a082019092529060208201608080368337019050509150600082600081518110612e8257612e8261457e565b6020026020010181815250508482600181518110612ea257612ea261457e565b6020026020010181815250508382600281518110612ec257612ec261457e565b6020026020010181815250508282600381518110612ee257612ee261457e565b602002602001018181525050612ef661280a565b6001600160a01b0316632c9dd5c0612f0c61282d565b846040518363ffffffff1660e01b8152600401612f2a929190614594565b6020604051808303816000875af1158015612f49573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f6d919061427a565b5050610c10565b505b3d6000803e3d6000fd5b6000612f8b83612c2e565b905081811015612fdd5760405162461bcd60e51b815260206004820152601d60248201527f455843454544535f474c4f42414c5f57495448445241575f4c494d49540000006044820152606401610ba4565b6124ae83612feb8484614390565b613878565b6000610ce66040518060600160405280602981526020016148ff602991396138ab565b6040805160038082526080820190925260609160009190602082018480368337019050509050828160008151811061304d5761304d61457e565b6020908102919091010152600161306660806002614572565b6130709190614390565b8416816001815181106130855761308561457e565b602002602001018181525050608084901c816002815181106130a9576130a961457e565b60209081029190910101529392505050565b60008115801590611304575061130482600167080000000000001160c01b011190565b610ae160405180606001604052806027815260200161482760279139826138de565b6000610ce664012a05f200614e206142d9565b606060008361312357600561312f565b61312f600160056142f0565b9050600083518261314091906142f0565b67ffffffffffffffff811115613158576131586141f8565b604051908082528060200260200182016040528015613181578160200160208202803683370190505b509050876001600160a01b0316816000815181106131a1576131a161457e565b602002602001018181525050336001600160a01b0316816001815181106131ca576131ca61457e565b60200260200101818152505085816002815181106131ea576131ea61457e565b6020908102919091010152600161320360806002614572565b61320d9190614390565b8716816003815181106132225761322261457e565b602002602001018181525050608087901c816004815181106132465761324661457e565b602002602001018181525050841561334d57835181613266600185614390565b815181106132765761327661457e565b60200260200101818152505060005b845181101561334b576132be8582815181106132a3576132a361457e565b6020026020010151600167080000000000001160c01b011190565b6133015760405162461bcd60e51b8152602060048201526014602482015273494e56414c49445f4d4553534147455f4441544160601b6044820152606401610ba4565b8481815181106133135761331361457e565b602002602001015182848361332891906142f0565b815181106133385761333861457e565b6020908102919091010152600101613285565b505b979650505050505050565b6000808260405160200161336c9190614441565b60408051601f198184030181529190528051602090910120549392505050565b6000908152600080516020614807833981519152602052604090206001015490565b610ae1813361392c565b6133c2828261288e565b610ac5576000828152600080516020614807833981519152602090815260408083206001600160a01b0385168085529252808320805460ff1916600117905551339285917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9190a45050565b7f00000000000000000000000000000000000000000000000000000000000000008110156134975760405162461bcd60e51b8152602060048201526016602482015275494e53554646494349454e545f4645455f56414c554560501b6044820152606401610ba4565b662386f26fc10000811115610ae15760405162461bcd60e51b815260206004820152601260248201527108c8a8abeac8298aa8abea89e9ebe90928e960731b6044820152606401610ba4565b806000036134ef575050565b6000826001600160a01b03168260405160006040518083038185875af1925050503d806000811461353c576040519150601f19603f3d011682016040523d82523d6000602084013e613541565b606091505b50509050806124ae5760405162461bcd60e51b815260206004820152601360248201527211551217d514905394d1915497d19052531151606a1b6044820152606401610ba4565b613592828261288e565b15610ac5576000828152600080516020614807833981519152602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b610ae16040518060600160405280602881526020016147386028913982613990565b610ae16040518060600160405280602681526020016148ae6026913982613990565b610ae16040518060600160405280602b81526020016148d4602b9139826139df565b61366a613a12565b156136d8576136876000805160206147608339815191528361288e565b6136d35760405162461bcd60e51b815260206004820152601960248201527f524f4c45535f414c52454144595f494e495449414c495a4544000000000000006044820152606401610ba4565b6136e1565b6136e182613a33565b6136e9613b21565b1561375d576137066000805160206147808339815191528261288e565b610ac55760405162461bcd60e51b815260206004820152602260248201527f53454355524954595f524f4c45535f414c52454144595f494e495449414c495a604482015261115160f21b6064820152608401610ba4565b610ac581613b3b565b6000613770613b91565b600061377b84613bb4565b815260200190815260200160002054600014159050919050565b60008062455447196001600160a01b038416016137b357504761381e565b6040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa1580156137f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061381b919061427a565b90505b6000613828613c01565b9050606461383682846142d9565b6138409190614689565b949350505050565b60006001613854613b91565b600061385f85613bb4565b8152602001908152602001600020546113049190614390565b6138836001826142f0565b61388b613b91565b600061389685613bb4565b81526020810191909152604001600020555050565b600080826040516020016138bf9190614441565b60408051601f1981840301815291905280516020909101209392505050565b6138e782613358565b156139225760405162461bcd60e51b815260206004820152600b60248201526a1053149150511657d4d15560aa1b6044820152606401610ba4565b610ac582826139df565b613936828261288e565b610ac55761394e816001600160a01b03166014613c24565b613959836020613c24565b60405160200161396a9291906146ab565b60408051601f198184030181529082905262461bcd60e51b8252610ba4916004016141c5565b600061399b83613358565b6001600160a01b0316146139225760405162461bcd60e51b815260206004820152600b60248201526a1053149150511657d4d15560aa1b6044820152606401610ba4565b6000826040516020016139f29190614441565b604051602081830303815290604052805190602001209050818155505050565b600080613a2c60008051602061476083398151915261338c565b1415905090565b613a4b600080516020614760833981519152826133b8565b613a716000805160206147c783398151915260008051602061488e833981519152613dc0565b613a9760008051602061488e833981519152600080516020614760833981519152613dc0565b613aaf60008051602061476083398151915280613dc0565b613ad560008051602061496883398151915260008051602061488e833981519152613dc0565b613afb6000805160206149b183398151915260008051602061488e833981519152613dc0565b610ae16000805160206147e7833981519152600080516020614760833981519152613dc0565b600080613a2c60008051602061478083398151915261338c565b613b5360008051602061478083398151915280613dc0565b613b7960008051602061486e833981519152600080516020614780833981519152613dc0565b610ae1600080516020614780833981519152826133b8565b6000610ce66040518060600160405280602781526020016147a0602791396138ab565b600080613bc46201518042614689565b604080516001600160a01b038616602082015290810182905290915060600160405160208183030381529060405280519060200120915050919050565b6000610ce66040518060600160405280602b81526020016148d4602b9139613358565b60606000613c338360026142d9565b613c3e9060026142f0565b67ffffffffffffffff811115613c5657613c566141f8565b6040519080825280601f01601f191660200182016040528015613c80576020820181803683370190505b509050600360fc1b81600081518110613c9b57613c9b61457e565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613cca57613cca61457e565b60200101906001600160f81b031916908160001a9053506000613cee8460026142d9565b613cf99060016142f0565b90505b6001811115613d71576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110613d2d57613d2d61457e565b1a60f81b828281518110613d4357613d4361457e565b60200101906001600160f81b031916908160001a90535060049490941c93613d6a81614720565b9050613cfc565b508315610b3e5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610ba4565b6000613dcb8361338c565b60008481526000805160206148078339815191526020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b6001600160a01b0381168114610ae157600080fd5b60008060408385031215613e4857600080fd5b823591506020830135613e5a81613e20565b809150509250929050565b600060208284031215613e7757600080fd5b8135610b3e81613e20565b600080600060608486031215613e9757600080fd5b8335613ea281613e20565b95602085013595506040909401359392505050565b60008060008060808587031215613ecd57600080fd5b8435613ed881613e20565b966020860135965060408601359560600135945092505050565b600060208284031215613f0457600080fd5b5035919050565b634e487b7160e01b600052602160045260246000fd5b6020810160048310613f4357634e487b7160e01b600052602160045260246000fd5b91905290565b60008060208385031215613f5c57600080fd5b823567ffffffffffffffff811115613f7357600080fd5b8301601f81018513613f8457600080fd5b803567ffffffffffffffff811115613f9b57600080fd5b856020828401011115613fad57600080fd5b6020919091019590945092505050565b600080600060608486031215613fd257600080fd5b8335613fdd81613e20565b9250602084013591506040840135613ff481613e20565b809150509250925092565b60008060006060848603121561401457600080fd5b505081359360208301359350604090920135919050565b60008083601f84011261403d57600080fd5b50813567ffffffffffffffff81111561405557600080fd5b6020830191508360208260051b850101111561407057600080fd5b9250929050565b60008060008060008060a0878903121561409057600080fd5b863561409b81613e20565b95506020870135945060408701359350606087013567ffffffffffffffff8111156140c557600080fd5b6140d189828a0161402b565b979a9699509497949695608090950135949350505050565b60008060008060006080868803121561410157600080fd5b853561410c81613e20565b94506020860135935060408601359250606086013567ffffffffffffffff81111561413657600080fd5b6141428882890161402b565b969995985093965092949392505050565b6000806040838503121561416657600080fd5b823561417181613e20565b946020939093013593505050565b6000806040838503121561419257600080fd5b50508035926020909101359150565b60005b838110156141bc5781810151838201526020016141a4565b50506000910152565b60208152600082518060208401526141e48160408501602087016141a1565b601f01601f19169190910160400192915050565b634e487b7160e01b600052604160045260246000fd5b600081518084526020840193506020830160005b82811015614240578151865260209586019590910190600101614222565b5093949350505050565b848152836020820152608060408201526000614269608083018561420e565b905082606083015295945050505050565b60006020828403121561428c57600080fd5b5051919050565b60208082526016908201527521a0a72727aa2fa822a92327a926afa7a72fa9a2a62360511b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417611304576113046142c3565b80820180821115611304576113046142c3565b6000808585111561431357600080fd5b8386111561432057600080fd5b5050820193919092039150565b848152606060208201819052810183905260006001600160fb1b0384111561435457600080fd5b8360051b80866080850137604083019390935250016080019392505050565b60006020828403121561438557600080fd5b8151610b3e81613e20565b81810381811115611304576113046142c3565b838152826020820152606060408201526000612872606083018461420e565b600080604083850312156143d557600080fd5b505080516020909101519092909150565b8481526080602082015260006143ff608083018661420e565b6040830194909452506060015292915050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b600082516144538184602087016141a1565b9190910192915050565b6000806040838503121561447057600080fd5b823561447b81613e20565b91506020830135613e5a81613e20565b6001815b60018411156144c6578085048111156144aa576144aa6142c3565b60018416156144b857908102905b60019390931c92800261448f565b935093915050565b6000826144dd57506001611304565b816144ea57506000611304565b8160018114614500576002811461450a57614526565b6001915050611304565b60ff84111561451b5761451b6142c3565b50506001821b611304565b5060208310610133831016604e8410600b8410161715614549575081810a611304565b614556600019848461448b565b806000190482111561456a5761456a6142c3565b029392505050565b6000610b3e83836144ce565b634e487b7160e01b600052603260045260246000fd5b828152604060208201526000613840604083018461420e565b600060033d11156145c65760046000803e5060005160e01c5b90565b601f8201601f1916810167ffffffffffffffff811182821017156145fd57634e487b7160e01b600052604160045260246000fd5b6040525050565b600060443d10156146125790565b6040513d600319016004823e80513d602482011167ffffffffffffffff8211171561463c57505090565b808201805167ffffffffffffffff811115614658575050505090565b3d8401600319018282016020011115614672575050505090565b614681602082850101856145c9565b509392505050565b6000826146a657634e487b7160e01b600052601260045260246000fd5b500490565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516146e38160178501602088016141a1565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516147148160288401602088016141a1565b01602801949350505050565b60008161472f5761472f6142c3565b50600019019056fe535441524b4e45545f544f4b454e5f4252494447455f4d4553534147494e475f434f4e545241435403711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846026bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b357495448445241574c5f4c494d49545f494e5452414441595f51554f54415f534c4f545f54414700d2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de060680251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec22853e43b954ba190a7e49386f1f78b01dcd9f628db23f432fa029a7dfd6d98e8fb535441524b4e45545f544f4b454e5f4252494447455f4c325f544f4b454e5f434f4e5452414354008bce41827dd5484d80312a2e43bc42a896e3fcf75bf84c2b49339168dfa00a037693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b9603e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99535441524b4e45545f544f4b454e5f4252494447455f4d414e414745525f534c4f545f54414757495448445241574c5f4c494d49545f57495448445241575f4c494d49545f5043545f534c4f545f544147535441524b4e45545f544f4b454e5f4252494447455f4445504f5349544f525f41444452455353455301b64b1b3b690b43b9b514fb81377518f4039cd3e4f4914d8a6bdf01d679fb19c59c20aaa96597268f595db30ec21108a505370e3266ed3a6515637f16b8b689023edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da7535441524b4e45545f45524332305f544f4b454e5f4252494447455f544f4b454e5f414444524553530128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e537461726b576172655f537461726b6e65744574684272696467655f322e305f34a264697066735822122056331780566488e3f63c37e27fc79f70f3feb5f3bb1ee6f027352d15a2ac888264736f6c634300081b0033", + "sourceMap": "192:956:14:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2715:122:6;;;;;;;;;;-1:-1:-1;2715:122:6;;;;;:::i;:::-;;:::i;:::-;;3283:116:24;;;;;;;;;;-1:-1:-1;3283:116:24;;;;;:::i;:::-;;:::i;7546:220:16:-;;;;;;;;;;-1:-1:-1;7546:220:16;;;;;:::i;:::-;;:::i;:::-;;;939:14:40;;932:22;914:41;;902:2;887:18;7546:220:16;;;;;;;;3155:122:24;;;;;;;;;;-1:-1:-1;3155:122:24;;;;;:::i;:::-;;:::i;10855:794:16:-;;;;;;:::i;:::-;;:::i;12613:198::-;;;;;;;;;;-1:-1:-1;12613:198:16;;;;;:::i;:::-;;:::i;2651:121:24:-;;;;;;;;;;-1:-1:-1;2651:121:24;;;;;:::i;:::-;;:::i;2592:117:6:-;;;;;;;;;;;;;:::i;:::-;;;1604:25:40;;;1592:2;1577:18;2592:117:6;1458:177:40;21500:490:16;;;;;;;;;;-1:-1:-1;21500:490:16;;;;;:::i;:::-;;:::i;1353:318:23:-;;;;;;;;;;-1:-1:-1;1353:318:23;;;;;:::i;:::-;;:::i;2843:104:6:-;;;;;;;;;;-1:-1:-1;2843:104:6;;;;;:::i;:::-;;:::i;3680:137:24:-;;;;;;;;;;-1:-1:-1;3680:137:24;;;;;:::i;:::-;;:::i;7412:128:16:-;;;;;;;;;;-1:-1:-1;7412:128:16;;;;;:::i;:::-;-1:-1:-1;;;;;7499:22:16;7469:11;7499:22;;;-1:-1:-1;;;;;;;;;;;7499:22:16;;;;;:34;;;;7412:128;;;;;;;;:::i;757:86:29:-;;;;;;;;;;-1:-1:-1;808:4:29;757:86;;4632:247:24;;;;;;;;;;-1:-1:-1;4632:247:24;;;;;:::i;:::-;;:::i;2910:111::-;;;;;;;;;;-1:-1:-1;2910:111:24;;;;;:::i;:::-;;:::i;8853:272:16:-;;;;;;;;;;-1:-1:-1;8853:272:16;;;;;:::i;:::-;;:::i;1465:1033:29:-;;;;;;;;;;-1:-1:-1;1465:1033:29;;;;;:::i;:::-;;:::i;8031:274:16:-;;;;;;;;;;-1:-1:-1;8031:274:16;;;;;:::i;:::-;;:::i;13793:229::-;;;;;;;;;;-1:-1:-1;13793:229:16;;;;;:::i;:::-;;:::i;4993:120::-;;;;;;;;;;;;;:::i;1359:135:24:-;;;;;;;;;;-1:-1:-1;1359:135:24;;;;;:::i;:::-;;:::i;12877:201:16:-;;;;;;;;;;-1:-1:-1;12877:201:16;;;;;:::i;:::-;;:::i;14161:95::-;;;;;;;;;;-1:-1:-1;;;14161:95:16;;3027:122:24;;;;;;;;;;-1:-1:-1;3027:122:24;;;;;:::i;:::-;;:::i;18032:793:16:-;;;;;;;;;;-1:-1:-1;18032:793:16;;;;;:::i;:::-;;:::i;2356:143:24:-;;;;;;;;;;-1:-1:-1;2356:143:24;;;;;:::i;:::-;;:::i;1793:128::-;;;;;;;;;;-1:-1:-1;1793:128:24;;;;;:::i;:::-;;:::i;3405:126::-;;;;;;;;;;-1:-1:-1;3405:126:24;;;;;:::i;:::-;;:::i;4658:450:6:-;;;;;;;;;;-1:-1:-1;4658:450:6;;;;;:::i;:::-;;:::i;2072:139:24:-;;;;;;;;;;-1:-1:-1;2072:139:24;;;;;:::i;:::-;;:::i;5271:492:6:-;;;;;;;;;;-1:-1:-1;5271:492:6;;;;;:::i;:::-;;:::i;12240:309:16:-;;;;;;;;;;-1:-1:-1;12240:309:16;;;;;:::i;:::-;;:::i;4087:138:24:-;;;;;;;;;;-1:-1:-1;4087:138:24;;;;;:::i;:::-;;:::i;1500:::-;;;;;;;;;;-1:-1:-1;1500:138:24;;;;;:::i;:::-;;:::i;2778:126::-;;;;;;;;;;-1:-1:-1;2778:126:24;;;;;:::i;:::-;;:::i;2217:133::-;;;;;;;;;;-1:-1:-1;2217:133:24;;;;;:::i;:::-;;:::i;19535:458:16:-;;;;;;;;;;-1:-1:-1;19535:458:16;;;;;:::i;:::-;;:::i;1505:126:6:-;;;;;;:::i;:::-;;:::i;4873:114:16:-;;;;;;;;;;;;;:::i;20804:690::-;;;;;;;;;;-1:-1:-1;20804:690:16;;;;;:::i;:::-;;:::i;10053:796::-;;;;;;:::i;:::-;;:::i;1779:315:23:-;;;;;;;;;;-1:-1:-1;1779:315:23;;;;;:::i;:::-;;:::i;1644:143:24:-;;;;;;;;;;-1:-1:-1;1644:143:24;;;;;:::i;:::-;;:::i;2527:118::-;;;;;;;;;;-1:-1:-1;2527:118:24;;;;;:::i;:::-;;:::i;20058:740:16:-;;;;;;;;;;-1:-1:-1;20058:740:16;;;;;:::i;:::-;;:::i;1927:139:24:-;;;;;;;;;;-1:-1:-1;1927:139:24;;;;;:::i;:::-;;:::i;9458:589:16:-;;;;;;;;;;-1:-1:-1;9458:589:16;;;;;:::i;:::-;;:::i;13376:295::-;;;;;;;;;;-1:-1:-1;13376:295:16;;;;;:::i;:::-;;:::i;4231:121:24:-;;;;;;;;;;-1:-1:-1;4231:121:24;;;;;:::i;:::-;;:::i;3557:117::-;;;;;;;;;;-1:-1:-1;3557:117:24;;;;;:::i;:::-;;:::i;1803:783:6:-;;;;;;:::i;:::-;;:::i;4479:125:24:-;;;;;;;;;;-1:-1:-1;4479:125:24;;;;;:::i;:::-;;:::i;3823:142::-;;;;;;;;;;-1:-1:-1;3823:142:24;;;;;:::i;:::-;;:::i;275:126:14:-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;18831:110:16:-;;;;;;;;;;-1:-1:-1;18831:110:16;;;;;:::i;:::-;;:::i;4358:115:24:-;;;;;;;;;;-1:-1:-1;4358:115:24;;;;;:::i;:::-;;:::i;3971:110::-;;;;;;;;;;-1:-1:-1;3971:110:24;;;;;:::i;:::-;;:::i;2715:122:6:-;2787:43;2796:14;:12;:14::i;:::-;2812:6;2820:9;2787:8;:43::i;:::-;2715:122;;:::o;3283:116:24:-;3347:45;-1:-1:-1;;;;;;;;;;;3384:7:24;3347:23;:45::i;:::-;3283:116;:::o;7546:220:16:-;-1:-1:-1;;;;;7645:22:16;;7608:4;7645:22;;;-1:-1:-1;;;;;;;;;;;7645:22:16;;;;;:34;;;;;7697:29;;;;;;;;:::i;:::-;;:61;;;-1:-1:-1;7740:18:16;7730:6;:28;;;;;;;;:::i;:::-;;7697:61;7689:70;7546:220;-1:-1:-1;;;7546:220:16:o;3155:122:24:-;3222:48;-1:-1:-1;;;;;;;;;;;3262:7:24;3222:23;:48::i;10855:794:16:-;10990:5;4803:23;4820:5;4803:16;:23::i;:::-;4795:54;;;;-1:-1:-1;;;4795:54:16;;8570:2:40;4795:54:16;;;8552:21:40;8609:2;8589:18;;;8582:30;-1:-1:-1;;;8628:18:40;;;8621:48;8686:18;;4795:54:16;;;;;;;;;11036:16:::1;::::0;;11007:26:::1;11036:16:::0;;;::::1;::::0;::::1;::::0;;;;11076:28:::1;11090:5:::0;11097:6;11076:13:::1;:28::i;:::-;11062:42;;11114:13;11130:175;11162:5;11181:6;11201:11;11226:9;-1:-1:-1::0;;;;;;;;;;;11292:3:16::1;11130:18;:175::i;:::-;11114:191;;11315:192;11345:5;11364:6;11384:11;11409:9;-1:-1:-1::0;;;;;;;;;;;11475:5:16::1;11494:3;11315:16;:192::i;:::-;11614:28;11636:5;11614:21;:28::i;:::-;10997:652;;;10855:794:::0;;;;:::o;12613:198::-;831:43:24;3290:10:30;2072:139:24;:::i;831:43::-;823:75;;;;-1:-1:-1;;;823:75:24;;9049:2:40;823:75:24;;;9031:21:40;9088:2;9068:18;;;9061:30;-1:-1:-1;;;9107:18:40;;;9100:49;9166:18;;823:75:24;8847:343:40;823:75:24;-1:-1:-1;;;;;12696:22:16;::::1;;::::0;;;-1:-1:-1;;;;;;;;;;;12696:22:16::1;::::0;;;;;:45:::1;;:52:::0;;-1:-1:-1;;12696:52:16::1;12744:4;12696:52;::::0;;12763:41;12786:10:::1;::::0;12763:41:::1;::::0;::::1;12613:198:::0;:::o;2651:121:24:-;2717:48;-1:-1:-1;;;;;;;;;;;2757:7:24;2717:23;:48::i;2592:117:6:-;2642:7;2668:34;2687:14;:12;:14::i;2668:34::-;2661:41;;2592:117;:::o;21500:490:16:-;21648:19;:17;:19::i;:::-;-1:-1:-1;;;;;21648:39:16;;21701:15;:13;:15::i;:::-;-1:-1:-1;;;;;;;;;;;21773:49:16;21795:5;21802:6;21810:11;21773:21;:49::i;:::-;21836:5;21648:203;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;21862:43;21879:5;21886:6;21894:10;21862:16;:43::i;:::-;21920:63;;;10510:25:40;;;10566:2;10551:18;;10544:34;;;21964:11:16;;-1:-1:-1;;;;;21920:63:16;;;21937:10;;21920:63;;10483:18:40;21920:63:16;;;;;;;;21500:490;;;;:::o;1353:318:23:-;904:67;-1:-1:-1;;;;;;;;;;;3290:10:30;904:21:23;:67::i;:::-;883:135;;;;-1:-1:-1;;;883:135:23;;10791:2:40;883:135:23;;;10773:21:40;10830:2;10810:18;;;10803:30;-1:-1:-1;;;10849:18:40;;;10842:51;10910:18;;883:135:23;10589:345:40;883:135:23;-1:-1:-1;;;;;1520:42:23;::::1;1444:43;1520:42:::0;;;471:66;1520:42:::1;::::0;;;;;;;;:49;;-1:-1:-1;;1520:49:23::1;1565:4;1520:49;::::0;;1586:32;1579:39;;-1:-1:-1;;;;;;1579:39:23::1;::::0;;1633:31;;11085:51:40;;;471:66:23;1633:31:::1;::::0;11058:18:40;1633:31:23::1;;;;;;;;1434:237;1353:318:::0;:::o;2843:104:6:-;2896:44;2905:14;:12;:14::i;:::-;2921:6;2929:10;2896:8;:44::i;3680:137:24:-;3742:7;3290:10:30;-1:-1:-1;;;;;1247:37:24;;;1239:72;;;;-1:-1:-1;;;1239:72:24;;;;;;;:::i;:::-;3761:49:::1;-1:-1:-1::0;;;;;;;;;;;3802:7:24;3761:24:::1;:49::i;4632:247::-:0;-1:-1:-1;;;;;;;;;;;4708:24:24;;:45;;;;;4737:16;4736:17;4708:45;4704:118;;;4769:42;;-1:-1:-1;;;4769:42:24;;11700:2:40;4769:42:24;;;11682:21:40;;;11719:18;;;11712:30;11778:34;11758:18;;;11751:62;11830:18;;4769:42:24;11498:356:40;4704:118:24;4831:41;4858:4;4864:7;4831:26;:41::i;2910:111::-;2972:42;-1:-1:-1;;;;;;;;;;;3006:7:24;2972:23;:42::i;8853:272:16:-;4546:10;4533:9;:7;:9::i;:::-;-1:-1:-1;;;;;4533:23:16;;4525:48;;;;-1:-1:-1;;;4525:48:16;;12061:2:40;4525:48:16;;;12043:21:40;12100:2;12080:18;;;12073:30;-1:-1:-1;;;12119:18:40;;;12112:42;12171:18;;4525:48:16;11859:336:40;4525:48:16;-1:-1:-1;;;;;8935:22:16;::::1;8973:19;8935:22:::0;;;-1:-1:-1;;;;;;;;;;;8935:22:16::1;::::0;;;;:34;::::1;;:57;::::0;::::1;;;;;;:::i;:::-;::::0;8927:83:::1;;;::::0;-1:-1:-1;;;8927:83:16;;12402:2:40;8927:83:16::1;::::0;::::1;12384:21:40::0;12441:2;12421:18;;;12414:30;-1:-1:-1;;;12460:18:40;;;12453:43;12513:18;;8927:83:16::1;12200:337:40::0;8927:83:16::1;-1:-1:-1::0;;;;;9020:22:16;::::1;;::::0;;;-1:-1:-1;;;;;;;;;;;9020:22:16::1;::::0;;;;;;;;:60;;-1:-1:-1;;9020:60:16::1;9057:23;9020:60;::::0;;9095:23;;11085:51:40;;;9095:23:16::1;::::0;11058:18:40;9095:23:16::1;;;;;;;;8853:272:::0;:::o;1465:1033:29:-;561:4:25;544:5;-1:-1:-1;;;;;544:22:25;;536:57;;;;-1:-1:-1;;;536:57:25;;12744:2:40;536:57:25;;;12726:21:40;12783:2;12763:18;;;12756:30;-1:-1:-1;;;12802:18:40;;;12795:52;12864:18;;536:57:25;12542:346:40;536:57:25;1543:17:29::1;1563:24;1543:17:::0;1563:2:::1;:24;:::i;:::-;1543:44:::0;-1:-1:-1;1597:24:29::1;1624:14;1543:44:::0;1636:2:::1;1624:14;:::i;:::-;1597:41:::0;-1:-1:-1;1656:31:29;;::::1;;1648:63;;;::::0;-1:-1:-1;;;1648:63:29;;13530:2:40;1648:63:29::1;::::0;::::1;13512:21:40::0;13569:2;13549:18;;;13542:30;-1:-1:-1;;;13588:18:40;;;13581:49;13647:18;;1648:63:29::1;13328:343:40::0;1648:63:29::1;1721:18;1753:32;1768:16:::0;1758:9;1753:4;;:32:::1;:::i;:::-;1742:55;;;;;;;:::i;:::-;1721:76:::0;-1:-1:-1;1808:35:29::1;;1846:16;1852:9:::0;1808:35;1846:4;;:16:::1;:::i;:::-;1808:54;;;;1933:23;;1959;:4:::0;1964:16;1959:4;;:23:::1;:::i;:::-;1933:49:::0;;-1:-1:-1;1933:49:29;-1:-1:-1;;;;;;2077:26:29;::::1;::::0;2073:122:::1;;2119:45;2143:10;2155:8;;2119:23;:45::i;:::-;2178:7;;;;;;;2715:122:6::0;;:::o;2073::29:-:1;2209:15;:13;:15::i;:::-;2205:287;;;2248:20:::0;;2240:53:::1;;;::::0;-1:-1:-1;;;2240:53:29;;14474:2:40;2240:53:29::1;::::0;::::1;14456:21:40::0;14513:2;14493:18;;;14486:30;-1:-1:-1;;;14532:18:40;;;14525:50;14592:18;;2240:53:29::1;14272:344:40::0;2240:53:29::1;2205:287;;;2373:26;2390:8;;2373:16;:26::i;:::-;2413:33;2437:8;;2413:23;:33::i;:::-;2460:21;:19;:21::i;8031:274:16:-:0;-1:-1:-1;;;;;8146:22:16;;8108:7;8146:22;;;-1:-1:-1;;;;;;;;;;;8146:22:16;;;;;:45;;;;;:152;;-1:-1:-1;;8146:152:16;;;8210:52;8256:5;8210:45;:52::i;:::-;8127:171;8031:274;-1:-1:-1;;8031:274:16:o;13793:229::-;-1:-1:-1;;;;;13902:22:16;;13857:7;13902:22;;;-1:-1:-1;;;;;;;;;;;13902:22:16;;;;;:38;;;13957:20;;:58;;14000:15;13957:58;;;-1:-1:-1;;13950:65:16;13793:229;-1:-1:-1;;;13793:229:16:o;4993:120::-;5052:7;5078:28;:26;:28::i;1359:135:24:-;1420:4;1443:44;-1:-1:-1;;;;;;;;;;;1479:7:24;1443:21;:44::i;12877:201:16:-;693:43:24;3290:10:30;1927:139:24;:::i;693:43::-;685:75;;;;-1:-1:-1;;;685:75:24;;14823:2:40;685:75:24;;;14805:21:40;14862:2;14842:18;;;14835:30;-1:-1:-1;;;14881:18:40;;;14874:49;14940:18;;685:75:24;14621:343:40;685:75:24;-1:-1:-1;;;;;12961:22:16;::::1;13009:5;12961:22:::0;;;-1:-1:-1;;;;;;;;;;;12961:22:16::1;::::0;;;;;:45:::1;;:53:::0;;-1:-1:-1;;12961:53:16::1;::::0;;13029:42;13053:10:::1;::::0;13029:42:::1;::::0;::::1;12877:201:::0;:::o;3027:122:24:-;3094:48;-1:-1:-1;;;;;;;;;;;3134:7:24;3094:23;:48::i;18032:793:16:-;-1:-1:-1;;;;;18210:25:16;;18202:55;;;;-1:-1:-1;;;18202:55:16;;15171:2:40;18202:55:16;;;15153:21:40;15210:2;15190:18;;;15183:30;-1:-1:-1;;;15229:18:40;;;15222:47;15286:18;;18202:55:16;14969:341:40;18202:55:16;18401:40;18416:5;18423:6;18431:9;18401:14;:40::i;:::-;-1:-1:-1;;;;;18523:22:16;;;;;;-1:-1:-1;;;;;;;;;;;18523:22:16;;;;;:45;;;;;18519:197;;;18654:51;18691:5;18698:6;18654:36;:51::i;:::-;18725:42;18742:5;18749:6;18757:9;18725:16;:42::i;:::-;18804:5;-1:-1:-1;;;;;18782:36:16;18793:9;-1:-1:-1;;;;;18782:36:16;;18811:6;18782:36;;;;1604:25:40;;1592:2;1577:18;;1458:177;18782:36:16;;;;;;;;18032:793;;;:::o;2356:143:24:-;2421:4;2444:48;-1:-1:-1;;;;;;;;;;;2484:7:24;2444:21;:48::i;1793:128::-;1851:4;1874:40;-1:-1:-1;;;;;;;;;;;1906:7:24;1874:21;:40::i;3405:126::-;3474:50;-1:-1:-1;;;;;;;;;;;3516:7:24;3474:23;:50::i;4658:450:6:-;4799:5;1374:10;1351:12;:10;:12::i;:::-;:19;;;;;;;;;;;;;-1:-1:-1;;;;;1351:19:6;:33;1343:60;;;;-1:-1:-1;;;1343:60:6;;15517:2:40;1343:60:6;;;15499:21:40;15556:2;15536:18;;;15529:30;-1:-1:-1;;;15575:18:40;;;15568:44;15629:18;;1343:60:6;15315:338:40;1343:60:6;4816:19:::1;:17;:19::i;:::-;-1:-1:-1::0;;;;;4816:50:6::1;;4880:15;:13;:15::i;:::-;143:76:8;4946:48:6;4974:6;4982:11;4946:27;:48::i;:::-;5008:5;4816:207;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;5038:63:6::1;::::0;;10510:25:40;;;10566:2;10551:18;;10544:34;;;5082:11:6;;5062:10:::1;::::0;5038:63:::1;::::0;10483:18:40;5038:63:6::1;;;;;;;;4658:450:::0;;;;:::o;2072:139:24:-;2135:4;2158:46;-1:-1:-1;;;;;;;;;;;2196:7:24;2158:21;:46::i;5271:492:6:-;5406:5;1374:10;1351:12;:10;:12::i;:::-;:19;;;;;;;;;;;;;-1:-1:-1;;;;;1351:19:6;:33;1343:60;;;;-1:-1:-1;;;1343:60:6;;15517:2:40;1343:60:6;;;15499:21:40;15556:2;15536:18;;;15529:30;-1:-1:-1;;;15575:18:40;;;15568:44;15629:18;;1343:60:6;15315:338:40;1343:60:6;5423:19:::1;:17;:19::i;:::-;-1:-1:-1::0;;;;;5423:39:6::1;;5476:15;:13;:15::i;:::-;143:76:8;5542:48:6;5570:6;5578:11;5542:27;:48::i;:::-;5604:5;5423:196;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5630:52;5647:14;:12;:14::i;:::-;5663:6;5671:10;5630:16;:52::i;:::-;5697:59;::::0;;10510:25:40;;;10566:2;10551:18;;10544:34;;;5737:11:6;;5717:10:::1;::::0;5697:59:::1;::::0;10483:18:40;5697:59:6::1;10336:248:40::0;12240:309:16;437:41:24;3290:10:30;1359:135:24;:::i;437:41::-;429:71;;;;-1:-1:-1;;;429:71:24;;15860:2:40;429:71:24;;;15842:21:40;15899:2;15879:18;;;15872:30;-1:-1:-1;;;15918:18:40;;;15911:47;15975:18;;429:71:24;15658:341:40;429:71:24;12333:15:16::1;:13;:15::i;:::-;12325:52;;;::::0;-1:-1:-1;;;12325:52:16;;16206:2:40;12325:52:16::1;::::0;::::1;16188:21:40::0;16245:2;16225:18;;;16218:30;16284:26;16264:18;;;16257:54;16328:18;;12325:52:16::1;16004:348:40::0;12325:52:16::1;12395:33;:14;:31;:33::i;:::-;12387:69;;;::::0;-1:-1:-1;;;12387:69:16;;16559:2:40;12387:69:16::1;::::0;::::1;16541:21:40::0;16598:2;16578:18;;;16571:30;-1:-1:-1;;;16617:18:40;;;16610:53;16680:18;;12387:69:16::1;16357:347:40::0;12387:69:16::1;12466:29;12480:14;12466:13;:29::i;:::-;12510:32;::::0;1604:25:40;;;12510:32:16::1;::::0;1592:2:40;1577:18;12510:32:16::1;1458:177:40::0;4087:138:24;4150:7;3290:10:30;-1:-1:-1;;;;;1247:37:24;;;1239:72;;;;-1:-1:-1;;;1239:72:24;;;;;;;:::i;:::-;4169:49:::1;-1:-1:-1::0;;;;;;;;;;;4210:7:24;4169:24:::1;:49::i;1500:138::-:0;1562:4;1585:46;-1:-1:-1;;;;;;;;;;;1623:7:24;1585:21;:46::i;2778:126::-;2847:50;-1:-1:-1;;;;;;;;;;;2889:7:24;2847:23;:50::i;2217:133::-;2277:4;2300:43;-1:-1:-1;;;;;;;;;;;2335:7:24;2300:21;:43::i;19535:458:16:-;19689:19;:17;:19::i;:::-;-1:-1:-1;;;;;19689:50:16;;19753:15;:13;:15::i;:::-;-1:-1:-1;;;;;;;;;;;19825:49:16;19847:5;19854:6;19862:11;19825:21;:49::i;:::-;19888:5;19689:214;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;19919:67:16;;;10510:25:40;;;10566:2;10551:18;;10544:34;;;19967:11:16;;-1:-1:-1;;;;;19919:67:16;;;19940:10;;19919:67;;10483:18:40;19919:67:16;10336:248:40;1505:126:6;1603:21;;-1:-1:-1;;;1603:21:6;;16911:2:40;1603:21:6;;;16893::40;16950:2;16930:18;;;16923:30;-1:-1:-1;;;16969:18:40;;;16962:41;17020:18;;1603:21:6;16709:335:40;4873:114:16;4929:7;4955:25;:23;:25::i;20804:690::-;20999:19;:17;:19::i;:::-;-1:-1:-1;;;;;20999:39:16;;21052:15;:13;:15::i;:::-;-1:-1:-1;;;;;;;;;;;21131:175:16;21170:5;21193:6;21217:11;21246:4;21285:7;;21131:175;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21131:21:16;;-1:-1:-1;;;21131:175:16:i;:::-;21320:5;20999:336;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;21346:43;21363:5;21370:6;21378:10;21346:16;:43::i;:::-;21459:11;21444:5;-1:-1:-1;;;;;21404:83:16;21432:10;-1:-1:-1;;;;;21404:83:16;;21451:6;21472:7;;21481:5;21404:83;;;;;;;;;:::i;:::-;;;;;;;;20804:690;;;;;;:::o;10053:796::-;10235:5;4803:23;4820:5;4803:16;:23::i;:::-;4795:54;;;;-1:-1:-1;;;4795:54:16;;8570:2:40;4795:54:16;;;8552:21:40;8609:2;8589:18;;;8582:30;-1:-1:-1;;;8628:18:40;;;8621:48;8686:18;;4795:54:16;8368:342:40;4795:54:16;10252:11:::1;10266:28;10280:5;10287:6;10266:13;:28::i;:::-;10252:42;;10304:13;10320:180;10352:5;10371:6;10391:11;10416:7;;10320:180;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;;;;;;;;;;;;404:75:8;-1:-1:-1;10487:3:16;;-1:-1:-1;10320:18:16::1;::::0;-1:-1:-1;10320:180:16:i:1;:::-;10304:196;;10510:197;10540:5;10559:6;10579:11;10604:7;;10510:197;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;;-1:-1:-1;;;;;;;;;;;;404:75:8;-1:-1:-1;10675:5:16;;-1:-1:-1;10694:3:16;;-1:-1:-1;10510:16:16::1;:197::i;:::-;10814:28;10836:5;10814:21;:28::i;:::-;10242:607;;10053:796:::0;;;;;;:::o;1779:315:23:-;904:67;-1:-1:-1;;;;;;;;;;;3290:10:30;904:21:23;:67::i;:::-;883:135;;;;-1:-1:-1;;;883:135:23;;10791:2:40;883:135:23;;;10773:21:40;10830:2;10810:18;;;10803:30;-1:-1:-1;;;10849:18:40;;;10842:51;10910:18;;883:135:23;10589:345:40;883:135:23;-1:-1:-1;;;;;1946:42:23;::::1;1870:43;1946:42:::0;;;471:66;1946:42:::1;::::0;;;;;;;;:50;;-1:-1:-1;;1946:50:23::1;::::0;;2013:32;2006:39;;-1:-1:-1;;;;;;2006:39:23::1;::::0;;2060:27;;11085:51:40;;;471:66:23;2060:27:::1;::::0;11058:18:40;2060:27:23::1;10939:203:40::0;1644:143:24;1709:4;1732:48;-1:-1:-1;;;;;;;;;;;1772:7:24;1732:21;:48::i;2527:118::-;2592:46;-1:-1:-1;;;;;;;;;;;2630:7:24;2592:23;:46::i;20058:740:16:-;20259:19;:17;:19::i;:::-;-1:-1:-1;;;;;20259:50:16;;20323:15;:13;:15::i;:::-;-1:-1:-1;;;;;;;;;;;20402:175:16;20441:5;20464:6;20488:11;20517:4;20556:7;;20402:175;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;20402:21:16;;-1:-1:-1;;;20402:175:16:i;:::-;20591:5;20259:347;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;20730:11;20691:5;-1:-1:-1;;;;;20622:169:16;20667:10;-1:-1:-1;;;;;20622:169:16;;20710:6;20755:7;;20776:5;20622:169;;;;;;;;;:::i;1927:139:24:-;1990:4;2013:46;-1:-1:-1;;;;;;;;;;;2051:7:24;2013:21;:46::i;9458:589:16:-;-1:-1:-1;;;;;4653:22:16;;;;;;-1:-1:-1;;;;;;;;;;;4653:22:16;;;;;:34;9529:5;;4691:19;;4653:34;;:57;;;;;;;;:::i;:::-;;4649:70;;9458:589;;:::o;4649:70::-;-1:-1:-1;;;;;9579:22:16;::::1;9546:30;9579:22:::0;;;-1:-1:-1;;;;;;;;;;;9579:22:16::1;::::0;;;;9629:26:::1;::::0;::::1;::::0;9670:19:::1;:17;:19::i;:::-;-1:-1:-1::0;;;;;9670:34:16::1;;9705:7;9670:43;;;;;;;;;;;;;1604:25:40::0;;1592:2;1577:18;;1458:177;9670:43:16::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9717:1;9670:48:::0;9666:375:::1;;9734:41:::0;;-1:-1:-1;;9734:41:16::1;9757:18;9734:41;::::0;;9666:375:::1;;;9814:8;:36;;;9796:15;:54;9792:249;;;-1:-1:-1::0;;;;;9873:22:16;::::1;;::::0;;;-1:-1:-1;;;;;;;;;;;9873:22:16::1;::::0;;;;9866:29;;-1:-1:-1;;9866:29:16;;::::1;::::0;;-1:-1:-1;9866:29:16;::::1;::::0;;;::::1;::::0;::::1;::::0;;;::::1;::::0;::::1;::::0;;;::::1;::::0;;::::1;::::0;;;;::::1;::::0;;9946:9:::1;:7;:9::i;:::-;-1:-1:-1::0;;;;;9928:40:16::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9984:46;::::0;-1:-1:-1;;;9984:46:16;;-1:-1:-1;;;;;11103:32:40;;;9984:46:16::1;::::0;::::1;11085:51:40::0;9909:61:16;;-1:-1:-1;9984:39:16;;::::1;::::0;::::1;::::0;11058:18:40;;9984:46:16::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;9792:249;9536:511;;9458:589:::0;;:::o;13376:295::-;437:41:24;3290:10:30;1359:135:24;:::i;437:41::-;429:71;;;;-1:-1:-1;;;429:71:24;;15860:2:40;429:71:24;;;15842:21:40;15899:2;15879:18;;;15872:30;-1:-1:-1;;;15918:18:40;;;15911:47;15975:18;;429:71:24;15658:341:40;429:71:24;13488:16:16::1;13508:1;13488:21:::0;13480:59:::1;;;::::0;-1:-1:-1;;;13480:59:16;;18516:2:40;13480:59:16::1;::::0;::::1;18498:21:40::0;18555:2;18535:18;;;18528:30;18594:27;18574:18;;;18567:55;18639:18;;13480:59:16::1;18314:349:40::0;13480:59:16::1;13573:5;-1:-1:-1::0;;;;;13554:43:16::1;;13580:16;13554:43;;;;1604:25:40::0;;1592:2;1577:18;;1458:177;13554:43:16::1;;;;;;;;-1:-1:-1::0;;;;;13607:22:16;;;::::1;;::::0;;;-1:-1:-1;;;;;;;;;;;13607:22:16::1;::::0;;;;:38:::1;;:57:::0;13376:295::o;4231:121:24:-;4296:49;-1:-1:-1;;;;;;;;;;;4337:7:24;4296:24;:49::i;3557:117::-;3620:47;-1:-1:-1;;;;;;;;;;;3659:7:24;3620:24;:47::i;1803:783:6:-;1913:16;;;1884:26;1913:16;;;;;;;;;;1955:14;:12;:14::i;:::-;1939:30;;1979:11;1993:28;2007:5;2014:6;1993:13;:28::i;:::-;1979:42;;2031:13;2047:175;2079:5;2098:6;2118:11;2143:9;-1:-1:-1;;;;;;;;;;;2209:3:6;2047:18;:175::i;:::-;2031:191;;2232:192;2262:5;2281:6;2301:11;2326:9;-1:-1:-1;;;;;;;;;;;2392:5:6;2411:3;2232:16;:192::i;:::-;2524:55;;;18870:25:40;;;18926:2;18911:18;;18904:34;;;18954:18;;;18947:34;;;2555:11:6;;2535:10;;2524:55;;18858:2:40;18843:18;2524:55:6;;;;;;;1874:712;;;;1803:783;;:::o;4479:125:24:-;4546:51;-1:-1:-1;;;;;;;;;;;4589:7:24;4546:24;:51::i;3823:142::-;3888:7;3290:10:30;-1:-1:-1;;;;;1247:37:24;;;1239:72;;;;-1:-1:-1;;;1239:72:24;;;;;;;:::i;:::-;3907:51:::1;-1:-1:-1::0;;;;;;;;;;;3950:7:24;3907:24:::1;:51::i;275:126:14:-:0;327:13;352:42;;;;;;;;;;;;;;;;;;;275:126;:::o;18831:110:16:-;18899:35;18908:5;18915:6;18923:10;18899:8;:35::i;4358:115:24:-;4420:46;-1:-1:-1;;;;;;;;;;;4458:7:24;4420:24;:46::i;3971:110::-;4031:43;-1:-1:-1;;;;;;;;;;;4066:7:24;4031:24;:43::i;992:127:6:-;1039:7;1065:47;1094:17;;;;;;;;;;;;;;;;;1065:28;:47::i;6306:130:30:-;6374:18;6387:4;6374:12;:18::i;:::-;4368:16;4379:4;4368:10;:16::i;:::-;6404:25:::1;6415:4;6421:7;6404:10;:25::i;:::-;6306:130:::0;;;:::o;407:552:14:-;514:7;640:6;627:9;:19;;619:50;;;;-1:-1:-1;;;619:50:14;;19194:2:40;619:50:14;;;19176:21:40;19233:2;19213:18;;;19206:30;-1:-1:-1;;;19252:18:40;;;19245:48;19310:18;;619:50:14;18992:342:40;619:50:14;679:11;693:18;705:6;693:9;:18;:::i;:::-;679:32;;721:18;735:3;721:13;:18::i;:::-;884:23;943:8:8;884:18:14;:23::i;:::-;853:27;877:3;853:21;:27;:::i;:::-;:54;;845:87;;;;-1:-1:-1;;;845:87:14;;19674:2:40;845:87:14;;;19656:21:40;19713:2;19693:18;;;19686:30;-1:-1:-1;;;19732:18:40;;;19725:50;19792:18;;845:87:14;19472:344:40;16565:887:16;16774:7;16801:15;:13;:15::i;:::-;16820:1;16801:20;16793:50;;;;-1:-1:-1;;;16793:50:16;;20023:2:40;16793:50:16;;;20005:21:40;20062:2;20042:18;;;20035:30;-1:-1:-1;;;20081:18:40;;;20074:47;20138:18;;16793:50:16;19821:341:40;16793:50:16;16870:1;16861:6;:10;16853:35;;;;-1:-1:-1;;;16853:35:16;;20369:2:40;16853:35:16;;;20351:21:40;20408:2;20388:18;;;20381:30;-1:-1:-1;;;20427:18:40;;;20420:42;20479:18;;16853:35:16;20167:336:40;16853:35:16;16906:30;:11;:28;:30::i;:::-;16898:66;;;;-1:-1:-1;;;16898:66:16;;16559:2:40;16898:66:16;;;16541:21:40;16598:2;16578:18;;;16571:30;-1:-1:-1;;;16617:18:40;;;16610:53;16680:18;;16898:66:16;16357:347:40;16898:66:16;-1:-1:-1;;;;;;;;;;;16992:48:16;;16975:14;17070:19;:17;:19::i;:::-;-1:-1:-1;;;;;17070:35:16;;17113:3;17131:15;:13;:15::i;:::-;17160:8;17182:69;17204:5;17211:6;17219:11;17232:9;17243:7;17182:21;:69::i;:::-;17070:191;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17050:211;16565:887;-1:-1:-1;;;;;;;;;;16565:887:16:o;11655:579::-;-1:-1:-1;;;;;;;;;;;11890:8:16;:41;11886:342;;11952:59;;;18870:25:40;;;18926:2;18911:18;;18904:34;;;18954:18;;;18947:34;;;11987:11:16;;-1:-1:-1;;;;;11952:59:16;;;11960:10;;11952:59;;18858:2:40;18843:18;11952:59:16;;;;;;;11886:342;;;-1:-1:-1;;;;;;;;;;;12050:8:16;:48;12042:77;;;;-1:-1:-1;;;12042:77:16;;21466:2:40;12042:77:16;;;21448:21:40;21505:2;21485:18;;;21478:30;-1:-1:-1;;;21524:18:40;;;21517:46;21580:18;;12042:77:16;21264:340:40;12042:77:16;12184:11;12169:5;-1:-1:-1;;;;;12138:79:16;12157:10;-1:-1:-1;;;;;12138:79:16;;12176:6;12197:7;12206:5;12213:3;12138:79;;;;;;;;;:::i;:::-;;;;;;;;11655:579;;;;;;;:::o;1726:168:18:-;1778:18;1834:52;1863:22;;;;;;;;;;;;;;;;;1834:28;:52::i;1599:121::-;1647:7;1673:40;1699:13;;;;;;;;;;;;;;;;;1673:25;:40::i;15702:425:16:-;15894:16;;;15865:26;15894:16;;;;;;;;;15837;;15865:45;15939:181;15978:5;16001:6;16025:11;16054:5;16097:9;15939:21;:181::i;:::-;15920:200;15702:425;-1:-1:-1;;;;;15702:425:16:o;965:181:14:-;1103:36;-1:-1:-1;;;;;1103:28:14;;1132:6;1103:28;:36::i;4481:132:30:-;4552:4;4575:14;;;-1:-1:-1;;;;;;;;;;;4575:14:30;;;;;;;;-1:-1:-1;;;;;4575:31:30;;;;;;;;;;;;;;;4481:132::o;6702:::-;6771:18;6784:4;6771:12;:18::i;:::-;4368:16;4379:4;4368:10;:16::i;:::-;6801:26:::1;6813:4;6819:7;6801:11;:26::i;7350:199::-:0;-1:-1:-1;;;;;7430:23:30;;3290:10;7430:23;7422:83;;;;-1:-1:-1;;;7422:83:30;;22292:2:40;7422:83:30;;;22274:21:40;22331:2;22311:18;;;22304:30;22370:34;22350:18;;;22343:62;-1:-1:-1;;;22421:18:40;;;22414:45;22476:19;;7422:83:30;22090:411:40;7422:83:30;7516:26;7528:4;7534:7;7516:11;:26::i;1477:116:18:-;1519:7;1545:41;1574:11;;;;;;;;;;;;;;;;;1545:28;:41::i;2504:540:29:-;-1:-1:-1;;;;;2632:34:29;;474:20:31;2624:67:29;;;;-1:-1:-1;;;2624:67:29;;22708:2:40;2624:67:29;;;22690:21:40;22747:2;22727:18;;;22720:30;-1:-1:-1;;;22766:18:40;;;22759:48;22824:18;;2624:67:29;22506:342:40;2624:67:29;2772:12;2786:23;2813;-1:-1:-1;;;;;2813:36:29;2886:24;;;2912:7;;2863:57;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;2863:57:29;;;;;;;;;;;;;;-1:-1:-1;;;;;2863:57:29;-1:-1:-1;;;;;;2863:57:29;;;;;;;;;;2813:117;;;;2863:57;2813:117;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2771:159;;;;2948:7;2964:10;2940:36;;;;;-1:-1:-1;;;2940:36:29;;;;;;;;:::i;:::-;-1:-1:-1;2994:17:29;;:10;;:22;2986:51;;;;-1:-1:-1;;;2986:51:29;;;;;;;;:::i;:::-;;2614:430;;2504:540;;;:::o;4058:137:16:-;4123:4;;4154:19;:17;:19::i;:::-;-1:-1:-1;;;;;4146:42:16;;;4139:49;;4058:137;:::o;3149:401::-;3260:2;3245:17;;3237:47;;;;-1:-1:-1;;;3237:47:16;;23740:2:40;3237:47:16;;;23722:21:40;23779:2;23759:18;;;23752:30;-1:-1:-1;;;23798:18:40;;;23791:47;23855:18;;3237:47:16;23538:341:40;3237:47:16;3295:16;;3343:36;;;;3354:4;3343:36;:::i;:::-;3294:85;;;;3397:31;:18;-1:-1:-1;;;;;3397:29:16;474:20:31;520:8;;;345:190;3397:31:16;3389:78;;;;-1:-1:-1;;;3389:78:16;;24495:2:40;3389:78:16;;;24477:21:40;24534:2;24514:18;;;24507:30;24573:34;24553:18;;;24546:62;-1:-1:-1;;;24624:18:40;;;24617:32;24666:19;;3389:78:16;24293:398:40;3389:78:16;-1:-1:-1;;;;;3485:19:16;;474:20:31;3477:66:16;;;;-1:-1:-1;;;3477:66:16;;24898:2:40;3477:66:16;;;24880:21:40;;;24917:18;;;24910:30;24976:34;24956:18;;;24949:62;25028:18;;3477:66:16;24696:356:40;3712:340:16;3795:16;;3843:36;;;;3854:4;3843:36;:::i;:::-;3794:85;;;;3889:37;3907:18;3889:17;:37::i;:::-;3936:20;3947:8;3936:10;:20::i;:::-;3966:79;362:1:19;3966:35:16;:79::i;2533:142:33:-;3290:10:30;2632:36:33;3290:10:30;;2632::33;:36::i;2699:247:19:-;2776:7;2800:33;2827:5;2800:26;:33::i;:::-;2795:105;;2856:33;2883:5;2856:26;:33::i;2795:105::-;2916:23;2933:5;2916:16;:23::i;649:129:0:-;705:7;731:40;326:9;189:6;731:40;:::i;3127:1357:6:-;3275:15;:13;:15::i;:::-;3294:1;3275:20;3267:50;;;;-1:-1:-1;;;3267:50:6;;20023:2:40;3267:50:6;;;20005:21:40;20062:2;20042:18;;;20035:30;-1:-1:-1;;;20081:18:40;;;20074:47;20138:18;;3267:50:6;19821:341:40;3267:50:6;-1:-1:-1;;;;;3349:27:6;;3327:19;3437:1;742:25:8;700:3;742:1;:25;:::i;:::-;3417:21:6;;;;:::i;:::-;3597:16;;;3611:1;3597:16;;;;;;;;;3407:32;;;;-1:-1:-1;700:3:8;3471:32:6;;;;3449:19;;3597:16;;;;;;;;;;-1:-1:-1;3597:16:6;3570:43;;655:1:8;3623:7:6;3631:1;3623:10;;;;;;;;:::i;:::-;;;;;;:35;;;;;3681:11;3668:7;3676:1;3668:10;;;;;;;;:::i;:::-;;;;;;:24;;;;;3731:5;-1:-1:-1;;;;;3715:23:6;3702:7;3710:1;3702:10;;;;;;;;:::i;:::-;;;;;;:36;;;;;3761:10;3748:7;3756:1;3748:10;;;;;;;;:::i;:::-;;;;;;:23;;;;;3794:11;3781:7;3789:1;3781:10;;;;;;;;:::i;:::-;;;;;;:24;;;;;3891:19;:17;:19::i;:::-;-1:-1:-1;;;;;3891:40:6;;3932:15;:13;:15::i;:::-;3949:7;3891:66;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3891:66:6;;;;;;;;-1:-1:-1;;3891:66:6;;;;;;;;;;;;:::i;:::-;;;3887:591;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;4209:16;;;4223:1;4209:16;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4209:16:6;4199:26;;655:1:8;4239:7:6;4247:1;4239:10;;;;;;;;:::i;:::-;;;;;;:35;;;;;4301:11;4288:7;4296:1;4288:10;;;;;;;;:::i;:::-;;;;;;:24;;;;;4339:10;4326:7;4334:1;4326:10;;;;;;;;:::i;:::-;;;;;;:23;;;;;4376:11;4363:7;4371:1;4363:10;;;;;;;;:::i;:::-;;;;;;:24;;;;;4401:19;:17;:19::i;:::-;-1:-1:-1;;;;;4401:40:6;;4442:15;:13;:15::i;:::-;4459:7;4401:66;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3961:517;3887:591;;;;;;;;;;;;3107:291:19;3187:25;3215:36;3245:5;3215:29;:36::i;:::-;3187:64;;3290:6;3269:17;:27;;3261:69;;;;-1:-1:-1;;;3261:69:19;;28319:2:40;3261:69:19;;;28301:21:40;28358:2;28338:18;;;28331:30;28397:31;28377:18;;;28370:59;28446:18;;3261:69:19;28117:353:40;3261:69:19;3340:51;3357:5;3364:26;3384:6;3364:17;:26;:::i;:::-;3340:16;:51::i;1125:164:6:-;1170:35;1224:58;1258:23;;;;;;;;;;;;;;;;;1224:33;:58::i;5879:370::-;6058:16;;;6072:1;6058:16;;;;;;;;;5999;;6031:24;;6058:16;;;;5999;;6058;;;;;-1:-1:-1;6058:16:6;6031:43;;6097:11;6084:7;6092:1;6084:10;;;;;;;;:::i;:::-;;;;;;;;;;:24;6161:1;742:25:8;700:3;742:1;:25;:::i;:::-;6141:21:6;;;;:::i;:::-;6131:6;:32;6118:7;6126:1;6118:10;;;;;;;;:::i;:::-;;;;;;:45;;;;;700:3:8;6186:6:6;:32;;6173:7;6181:1;6173:10;;;;;;;;:::i;:::-;;;;;;;;;;:45;6235:7;5879:370;-1:-1:-1;;;5879:370:6:o;2539:135:21:-;2607:4;2631:14;;;;;:35;;;2649:17;2656:9;-1:-1:-1;;;;;;2762:38:21;2680:128;2051:115:18;2108:51;2138:13;;;;;;;;;;;;;;;;;2153:5;2108:29;:51::i;520:123:0:-;573:7;599:37;326:9;144:5;599:37;:::i;14683:1013:16:-;14878:16;14906:22;14931:11;:114;;2955:1;14931:114;;;14957:51;3008:1;2955;14957:51;:::i;:::-;14906:139;;15055:24;15113:7;:14;15096;:31;;;;:::i;:::-;15082:46;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;15082:46:16;;15055:73;;15167:5;-1:-1:-1;;;;;15151:23:16;15138:7;15146:1;15138:10;;;;;;;;:::i;:::-;;;;;;:36;;;;;15213:10;-1:-1:-1;;;;;15197:28:16;15184:7;15192:1;15184:10;;;;;;;;:::i;:::-;;;;;;:41;;;;;15248:11;15235:7;15243:1;15235:10;;;;;;;;:::i;:::-;;;;;;;;;;:24;15312:1;742:25:8;700:3;742:1;:25;:::i;:::-;15292:21:16;;;;:::i;:::-;15282:6;:32;15269:7;15277:1;15269:10;;;;;;;;:::i;:::-;;;;;;:45;;;;;700:3:8;15337:6:16;:32;;15324:7;15332:1;15324:10;;;;;;;;:::i;:::-;;;;;;:45;;;;;15383:11;15379:287;;;15440:14;;15410:7;15418:18;15435:1;15418:14;:18;:::i;:::-;15410:27;;;;;;;;:::i;:::-;;;;;;:44;;;;;15473:9;15468:188;15492:7;:14;15488:1;:18;15468:188;;;15539:19;:7;15547:1;15539:10;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;;2762:38:21;2680:128;15539:19:16;15531:52;;;;-1:-1:-1;;;15531:52:16;;28677:2:40;15531:52:16;;;28659:21:40;28716:2;28696:18;;;28689:30;-1:-1:-1;;;28735:18:40;;;28728:50;28795:18;;15531:52:16;28475:344:40;15531:52:16;15631:7;15639:1;15631:10;;;;;;;;:::i;:::-;;;;;;;15601:7;15613:14;15609:1;:18;;;;:::i;:::-;15601:27;;;;;;;;:::i;:::-;;;;;;;;;;:40;15508:3;;15468:188;;;;15379:287;15682:7;14683:1013;-1:-1:-1;;;;;;;14683:1013:16:o;3268:212:32:-;3336:14;3362:12;3404:4;3387:22;;;;;;;;:::i;:::-;;;;-1:-1:-1;;3387:22:32;;;;;;;;;3377:33;;3387:22;3377:33;;;;3453:11;;3268:212;-1:-1:-1;;;3268:212:32:o;5911:116:30:-;5970:7;5996:14;;;-1:-1:-1;;;;;;;;;;;5996:14:30;;;;;:24;;;;5911:116::o;4892:95::-;4950:30;4961:4;3290:10;4950;:30::i;8830:227::-;8905:22;8913:4;8919:7;8905;:22::i;:::-;8900:151;;8943:14;;;;-1:-1:-1;;;;;;;;;;;8943:14:30;;;;;;;;-1:-1:-1;;;;;8943:31:30;;;;;;;;;;:38;;-1:-1:-1;;8943:38:30;8977:4;8943:38;;;9000:40;3290:10;;8943:14;;9000:40;;8943:14;9000:40;8830:227;;:::o;784:175:0:-;860:7;850:6;:17;;842:52;;;;-1:-1:-1;;;842:52:0;;29320:2:40;842:52:0;;;29302:21:40;29359:2;29339:18;;;29332:30;-1:-1:-1;;;29378:18:40;;;29371:52;29440:18;;842:52:0;29118:346:40;842:52:0;507:6;912;:17;;904:48;;;;-1:-1:-1;;;904:48:0;;29671:2:40;904:48:0;;;29653:21:40;29710:2;29690:18;;;29683:30;-1:-1:-1;;;29729:18:40;;;29722:48;29787:18;;904:48:0;29469:342:40;541:251:31;627:6;637:1;627:11;623:24;;541:251;;:::o;623:24::-;657:12;675:9;-1:-1:-1;;;;;675:14:31;697:6;675:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;656:52;;;754:7;746:39;;;;-1:-1:-1;;;746:39:31;;30228:2:40;746:39:31;;;30210:21:40;30267:2;30247:18;;;30240:30;-1:-1:-1;;;30286:18:40;;;30279:49;30345:18;;746:39:31;30026:343:40;9216:228:30;9291:22;9299:4;9305:7;9291;:22::i;:::-;9287:151;;;9363:5;9329:14;;;-1:-1:-1;;;;;;;;;;;9329:14:30;;;;;;;;-1:-1:-1;;;;;9329:31:30;;;;;;;;;;:39;;-1:-1:-1;;9329:39:30;;;9387:40;3290:10;;9329:14;;9387:40;;9363:5;9387:40;9216:228;;:::o;2172:139:18:-;2237:67;2270:22;;;;;;;;;;;;;;;;;2294:9;2237:32;:67::i;1924:121::-;1982:56;2015:11;;;;;;;;;;;;;;;;;2028:9;1982:32;:56::i;706:126:19:-;769:56;795:22;;;;;;;;;;;;;;;;;819:5;769:25;:56::i;2681:1050:33:-;2782:28;:26;:28::i;:::-;2778:485;;;3062:60;-1:-1:-1;;;;;;;;;;;3102:19:33;3062:21;:60::i;:::-;3037:144;;;;-1:-1:-1;;;3037:144:33;;30576:2:40;3037:144:33;;;30558:21:40;30615:2;30595:18;;;30588:30;30654:27;30634:18;;;30627:55;30699:18;;3037:144:33;30374:349:40;3037:144:33;2778:485;;;3212:40;3232:19;3212;:40::i;:::-;3277:26;:24;:26::i;:::-;3273:452;;;3519:58;-1:-1:-1;;;;;;;;;;;3557:19:33;3519:21;:58::i;:::-;3494:151;;;;-1:-1:-1;;;3494:151:33;;30930:2:40;3494:151:33;;;30912:21:40;30969:2;30949:18;;;30942:30;31008:34;30988:18;;;30981:62;-1:-1:-1;;;31059:18:40;;;31052:32;31101:19;;3494:151:33;30728:398:40;3273:452:33;3676:38;3694:19;3676:17;:38::i;2081:148:19:-;2154:4;2177:15;:13;:15::i;:::-;:40;2193:23;2210:5;2193:16;:23::i;:::-;2177:40;;;;;;;;;;;;2221:1;2177:45;;2170:52;;2081:148;;;:::o;1233:495::-;1307:7;;-1:-1:-1;;;;;;;1443:12:19;;;1439:167;;-1:-1:-1;1488:21:19;1439:167;;;1557:38;;-1:-1:-1;;;1557:38:19;;1589:4;1557:38;;;11085:51:40;-1:-1:-1;;;;;1557:23:19;;;;;11058:18:40;;1557:38:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1540:55;;1439:167;1615:24;1642:21;:19;:21::i;:::-;1615:48;-1:-1:-1;1718:3:19;1681:33;1615:48;1681:14;:33;:::i;:::-;1680:41;;;;:::i;:::-;1673:48;1233:495;-1:-1:-1;;;;1233:495:19:o;2235:146::-;2299:7;2073:1;2325:15;:13;:15::i;:::-;:40;2341:23;2358:5;2341:16;:23::i;:::-;2325:40;;;;;;;;;;;;:49;;;;:::i;2387:138::-;2504:14;2073:1;2504:5;:14;:::i;:::-;2461:15;:13;:15::i;:::-;:40;2477:23;2494:5;2477:16;:23::i;:::-;2461:40;;;;;;;;;;;-1:-1:-1;2461:40:19;:57;-1:-1:-1;;2387:138:19:o;1467:295:32:-;1564:50;1630:16;1676:4;1659:22;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1659:22:32;;;;;;;;;1649:33;;1659:22;1649:33;;;;;1467:295;-1:-1:-1;;;1467:295:32:o;3093:169::-;3181:18;3194:4;3181:12;:18::i;:::-;:23;3173:47;;;;-1:-1:-1;;;3173:47:32;;31555:2:40;3173:47:32;;;31537:21:40;31594:2;31574:18;;;31567:30;-1:-1:-1;;;31613:18:40;;;31606:41;31664:18;;3173:47:32;31353:335:40;3173:47:32;3230:25;3243:4;3249:5;3230:12;:25::i;5257:484:30:-;5337:22;5345:4;5351:7;5337;:22::i;:::-;5332:403;;5520:41;5548:7;-1:-1:-1;;;;;5520:41:30;5558:2;5520:19;:41::i;:::-;5632:38;5660:4;5667:2;5632:19;:38::i;:::-;5427:265;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;5427:265:30;;;;;;;;;;-1:-1:-1;;;5375:349:30;;;;;;;:::i;3687:189:32:-;3811:3;3778:21;3794:4;3778:15;:21::i;:::-;-1:-1:-1;;;;;3778:37:32;;3770:61;;;;-1:-1:-1;;;3770:61:32;;31555:2:40;3770:61:32;;;31537:21:40;31594:2;31574:18;;;31567:30;-1:-1:-1;;;31613:18:40;;;31606:41;31664:18;;3770:61:32;31353:335:40;2895:192:32;2971:12;3013:4;2996:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;2986:33;;;;;;2971:48;;3065:5;3059:4;3052:19;3038:43;2895:192;;:::o;2221:152:33:-;2282:4;;2305:44;-1:-1:-1;;;;;;;;;;;2305:26:33;:44::i;:::-;:61;;2298:68;;2221:152;:::o;4023:559::-;4099:63;-1:-1:-1;;;;;;;;;;;4142:19:33;4099:24;:63::i;:::-;4172:57;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;4172:27:33;:57::i;:::-;4239:61;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;4239:27:33;:61::i;:::-;4310:63;-1:-1:-1;;;;;;;;;;;667:66:33;4310:27;:63::i;:::-;4383:53;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;4383:27:33;:53::i;:::-;4446:56;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;4446:27:33;:56::i;:::-;4512:63;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;4512:27:33;:63::i;2379:148::-;2438:4;;2461:42;-1:-1:-1;;;;;;;;;;;2461:26:33;:42::i;3737:280::-;3811:59;-1:-1:-1;;;;;;;;;;;1067:66:33;3811:27;:59::i;:::-;3880;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;3880:27:33;:59::i;:::-;3949:61;-1:-1:-1;;;;;;;;;;;3990:19:33;3949:24;:61::i;1794:165:19:-;1842:35;1896:56;1933:18;;;;;;;;;;;;;;;;;1896:36;:56::i;897:177::-;961:7;;994:23;1012:5;994:15;:23;:::i;:::-;1044:22;;;-1:-1:-1;;;;;32711:32:40;;1044:22:19;;;32693:51:40;32760:18;;;32753:34;;;980:37:19;;-1:-1:-1;32666:18:40;;1044:22:19;;;;;;;;;;;;1034:33;;;;;;1027:40;;;897:177;;;:::o;564:136::-;618:7;644:49;670:22;;;;;;;;;;;;;;;;;644:25;:49::i;1652:441:39:-;1727:13;1752:19;1784:10;1788:6;1784:1;:10;:::i;:::-;:14;;1797:1;1784:14;:::i;:::-;1774:25;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1774:25:39;;1752:47;;-1:-1:-1;;;1809:6:39;1816:1;1809:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;1809:15:39;;;;;;;;;-1:-1:-1;;;1834:6:39;1841:1;1834:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;1834:15:39;;;;;;;;-1:-1:-1;1864:9:39;1876:10;1880:6;1876:1;:10;:::i;:::-;:14;;1889:1;1876:14;:::i;:::-;1864:26;;1859:132;1896:1;1892;:5;1859:132;;;-1:-1:-1;;;1943:5:39;1951:3;1943:11;1930:25;;;;;;;:::i;:::-;;;;1918:6;1925:1;1918:9;;;;;;;;:::i;:::-;;;;:37;-1:-1:-1;;;;;1918:37:39;;;;;;;;-1:-1:-1;1979:1:39;1969:11;;;;;1899:3;;;:::i;:::-;;;1859:132;;;-1:-1:-1;2008:10:39;;2000:55;;;;-1:-1:-1;;;2000:55:39;;33141:2:40;2000:55:39;;;33123:21:40;;;33160:18;;;33153:30;33219:34;33199:18;;;33192:62;33271:18;;2000:55:39;32939:356:40;8433:241:30;8508:25;8536:18;8549:4;8536:12;:18::i;:::-;8564:14;;;;-1:-1:-1;;;;;;;;;;;8564:14:30;;;;;;:24;;:36;;;8615:52;8508:46;;-1:-1:-1;8591:9:30;;8508:46;;8564:14;;8615:52;;8564:14;8615:52;8498:176;8433:241;;:::o;14:131:40:-;-1:-1:-1;;;;;89:31:40;;79:42;;69:70;;135:1;132;125:12;150:367;218:6;226;279:2;267:9;258:7;254:23;250:32;247:52;;;295:1;292;285:12;247:52;340:23;;;-1:-1:-1;439:2:40;424:18;;411:32;452:33;411:32;452:33;:::i;:::-;504:7;494:17;;;150:367;;;;;:::o;522:247::-;581:6;634:2;622:9;613:7;609:23;605:32;602:52;;;650:1;647;640:12;602:52;689:9;676:23;708:31;733:5;708:31;:::i;966:487::-;1043:6;1051;1059;1112:2;1100:9;1091:7;1087:23;1083:32;1080:52;;;1128:1;1125;1118:12;1080:52;1167:9;1154:23;1186:31;1211:5;1186:31;:::i;:::-;1236:5;1314:2;1299:18;;1286:32;;-1:-1:-1;1417:2:40;1402:18;;;1389:32;;966:487;-1:-1:-1;;;966:487:40:o;1640:608::-;1726:6;1734;1742;1750;1803:3;1791:9;1782:7;1778:23;1774:33;1771:53;;;1820:1;1817;1810:12;1771:53;1859:9;1846:23;1878:31;1903:5;1878:31;:::i;:::-;1928:5;2006:2;1991:18;;1978:32;;-1:-1:-1;2109:2:40;2094:18;;2081:32;;2212:2;2197:18;2184:32;;-1:-1:-1;1640:608:40;-1:-1:-1;;;1640:608:40:o;2253:226::-;2312:6;2365:2;2353:9;2344:7;2340:23;2336:32;2333:52;;;2381:1;2378;2371:12;2333:52;-1:-1:-1;2426:23:40;;2253:226;-1:-1:-1;2253:226:40:o;2484:127::-;2545:10;2540:3;2536:20;2533:1;2526:31;2576:4;2573:1;2566:15;2600:4;2597:1;2590:15;2616:344;2764:2;2749:18;;2797:1;2786:13;;2776:144;;2842:10;2837:3;2833:20;2830:1;2823:31;2877:4;2874:1;2867:15;2905:4;2902:1;2895:15;2776:144;2929:25;;;2616:344;:::o;3285:586::-;3355:6;3363;3416:2;3404:9;3395:7;3391:23;3387:32;3384:52;;;3432:1;3429;3422:12;3384:52;3472:9;3459:23;3505:18;3497:6;3494:30;3491:50;;;3537:1;3534;3527:12;3491:50;3560:22;;3613:4;3605:13;;3601:27;-1:-1:-1;3591:55:40;;3642:1;3639;3632:12;3591:55;3682:2;3669:16;3708:18;3700:6;3697:30;3694:50;;;3740:1;3737;3730:12;3694:50;3785:7;3780:2;3771:6;3767:2;3763:15;3759:24;3756:37;3753:57;;;3806:1;3803;3796:12;3753:57;3837:2;3829:11;;;;;3859:6;;-1:-1:-1;3285:586:40;-1:-1:-1;;;3285:586:40:o;3876:508::-;3953:6;3961;3969;4022:2;4010:9;4001:7;3997:23;3993:32;3990:52;;;4038:1;4035;4028:12;3990:52;4077:9;4064:23;4096:31;4121:5;4096:31;:::i;:::-;4146:5;-1:-1:-1;4224:2:40;4209:18;;4196:32;;-1:-1:-1;4306:2:40;4291:18;;4278:32;4319:33;4278:32;4319:33;:::i;:::-;4371:7;4361:17;;;3876:508;;;;;:::o;4389:466::-;4466:6;4474;4482;4535:2;4523:9;4514:7;4510:23;4506:32;4503:52;;;4551:1;4548;4541:12;4503:52;-1:-1:-1;;4596:23:40;;;4716:2;4701:18;;4688:32;;-1:-1:-1;4819:2:40;4804:18;;;4791:32;;4389:466;-1:-1:-1;4389:466:40:o;4860:367::-;4923:8;4933:6;4987:3;4980:4;4972:6;4968:17;4964:27;4954:55;;5005:1;5002;4995:12;4954:55;-1:-1:-1;5028:20:40;;5071:18;5060:30;;5057:50;;;5103:1;5100;5093:12;5057:50;5140:4;5132:6;5128:17;5116:29;;5200:3;5193:4;5183:6;5180:1;5176:14;5168:6;5164:27;5160:38;5157:47;5154:67;;;5217:1;5214;5207:12;5154:67;4860:367;;;;;:::o;5232:934::-;5354:6;5362;5370;5378;5386;5394;5447:3;5435:9;5426:7;5422:23;5418:33;5415:53;;;5464:1;5461;5454:12;5415:53;5503:9;5490:23;5522:31;5547:5;5522:31;:::i;:::-;5572:5;-1:-1:-1;5650:2:40;5635:18;;5622:32;;-1:-1:-1;5753:2:40;5738:18;;5725:32;;-1:-1:-1;5834:2:40;5819:18;;5806:32;5861:18;5850:30;;5847:50;;;5893:1;5890;5883:12;5847:50;5932:70;5994:7;5985:6;5974:9;5970:22;5932:70;:::i;:::-;5232:934;;;;-1:-1:-1;5232:934:40;;;;;6129:3;6114:19;;;6101:33;;5232:934;-1:-1:-1;;;;5232:934:40:o;6171:813::-;6284:6;6292;6300;6308;6316;6369:3;6357:9;6348:7;6344:23;6340:33;6337:53;;;6386:1;6383;6376:12;6337:53;6425:9;6412:23;6444:31;6469:5;6444:31;:::i;:::-;6494:5;-1:-1:-1;6572:2:40;6557:18;;6544:32;;-1:-1:-1;6675:2:40;6660:18;;6647:32;;-1:-1:-1;6756:2:40;6741:18;;6728:32;6783:18;6772:30;;6769:50;;;6815:1;6812;6805:12;6769:50;6854:70;6916:7;6907:6;6896:9;6892:22;6854:70;:::i;:::-;6171:813;;;;-1:-1:-1;6171:813:40;;-1:-1:-1;6943:8:40;;6828:96;6171:813;-1:-1:-1;;;6171:813:40:o;6989:367::-;7057:6;7065;7118:2;7106:9;7097:7;7093:23;7089:32;7086:52;;;7134:1;7131;7124:12;7086:52;7173:9;7160:23;7192:31;7217:5;7192:31;:::i;:::-;7242:5;7320:2;7305:18;;;;7292:32;;-1:-1:-1;;;6989:367:40:o;7361:346::-;7429:6;7437;7490:2;7478:9;7469:7;7465:23;7461:32;7458:52;;;7506:1;7503;7496:12;7458:52;-1:-1:-1;;7551:23:40;;;7671:2;7656:18;;;7643:32;;-1:-1:-1;7361:346:40:o;7712:250::-;7797:1;7807:113;7821:6;7818:1;7815:13;7807:113;;;7897:11;;;7891:18;7878:11;;;7871:39;7843:2;7836:10;7807:113;;;-1:-1:-1;;7954:1:40;7936:16;;7929:27;7712:250::o;7967:396::-;8116:2;8105:9;8098:21;8079:4;8148:6;8142:13;8191:6;8186:2;8175:9;8171:18;8164:34;8207:79;8279:6;8274:2;8263:9;8259:18;8254:2;8246:6;8242:15;8207:79;:::i;:::-;8347:2;8326:15;-1:-1:-1;;8322:29:40;8307:45;;;;8354:2;8303:54;;7967:396;-1:-1:-1;;7967:396:40:o;8715:127::-;8776:10;8771:3;8767:20;8764:1;8757:31;8807:4;8804:1;8797:15;8831:4;8828:1;8821:15;9195:420;9248:3;9286:5;9280:12;9313:6;9308:3;9301:19;9345:4;9340:3;9336:14;9329:21;;9384:4;9377:5;9373:16;9407:1;9417:173;9431:6;9428:1;9425:13;9417:173;;;9492:13;;9480:26;;9535:4;9526:14;;;;9563:17;;;;9453:1;9446:9;9417:173;;;-1:-1:-1;9606:3:40;;9195:420;-1:-1:-1;;;;9195:420:40:o;9620:476::-;9883:6;9872:9;9865:25;9926:6;9921:2;9910:9;9906:18;9899:34;9969:3;9964:2;9953:9;9949:18;9942:31;9846:4;9990:57;10042:3;10031:9;10027:19;10019:6;9990:57;:::i;:::-;9982:65;;10083:6;10078:2;10067:9;10063:18;10056:34;9620:476;;;;;;;:::o;10101:230::-;10171:6;10224:2;10212:9;10203:7;10199:23;10195:32;10192:52;;;10240:1;10237;10230:12;10192:52;-1:-1:-1;10285:16:40;;10101:230;-1:-1:-1;10101:230:40:o;11147:346::-;11349:2;11331:21;;;11388:2;11368:18;;;11361:30;-1:-1:-1;;;11422:2:40;11407:18;;11400:52;11484:2;11469:18;;11147:346::o;12893:127::-;12954:10;12949:3;12945:20;12942:1;12935:31;12985:4;12982:1;12975:15;13009:4;13006:1;12999:15;13025:168;13098:9;;;13129;;13146:15;;;13140:22;;13126:37;13116:71;;13167:18;;:::i;13198:125::-;13263:9;;;13284:10;;;13281:36;;;13297:18;;:::i;13676:331::-;13781:9;13792;13834:8;13822:10;13819:24;13816:44;;;13856:1;13853;13846:12;13816:44;13885:6;13875:8;13872:20;13869:40;;;13905:1;13902;13895:12;13869:40;-1:-1:-1;;13931:23:40;;;13976:25;;;;;-1:-1:-1;13676:331:40:o;17049:587::-;17276:25;;;17337:2;17332;17317:18;;17310:30;;;17356:18;;17349:34;;;-1:-1:-1;;;;;;17395:31:40;;17392:51;;;17439:1;17436;17429:12;17392:51;17473:6;17470:1;17466:14;17531:6;17523;17517:3;17506:9;17502:19;17489:49;17618:2;17603:18;;17596:34;;;;-1:-1:-1;17559:22:40;17583:3;17555:32;;17049:587;-1:-1:-1;;;17049:587:40:o;18058:251::-;18128:6;18181:2;18169:9;18160:7;18156:23;18152:32;18149:52;;;18197:1;18194;18187:12;18149:52;18229:9;18223:16;18248:31;18273:5;18248:31;:::i;19339:128::-;19406:9;;;19427:11;;;19424:37;;;19441:18;;:::i;20508:403::-;20743:6;20732:9;20725:25;20786:6;20781:2;20770:9;20766:18;20759:34;20829:2;20824;20813:9;20809:18;20802:30;20706:4;20849:56;20901:2;20890:9;20886:18;20878:6;20849:56;:::i;20916:343::-;20995:6;21003;21056:2;21044:9;21035:7;21031:23;21027:32;21024:52;;;21072:1;21069;21062:12;21024:52;-1:-1:-1;;21117:16:40;;21223:2;21208:18;;;21202:25;21117:16;;21202:25;;-1:-1:-1;20916:343:40:o;21609:476::-;21872:6;21861:9;21854:25;21915:3;21910:2;21899:9;21895:18;21888:31;21835:4;21936:57;21988:3;21977:9;21973:19;21965:6;21936:57;:::i;:::-;22024:2;22009:18;;22002:34;;;;-1:-1:-1;22067:2:40;22052:18;22045:34;21928:65;21609:476;-1:-1:-1;;21609:476:40:o;22853:388::-;23010:2;22999:9;22992:21;23049:6;23044:2;23033:9;23029:18;23022:34;23106:6;23098;23093:2;23082:9;23078:18;23065:48;23162:1;23133:22;;;23157:2;23129:31;;;23122:42;;;;23225:2;23204:15;;;-1:-1:-1;;23200:29:40;23185:45;23181:54;;22853:388;-1:-1:-1;22853:388:40:o;23246:287::-;23375:3;23413:6;23407:13;23429:66;23488:6;23483:3;23476:4;23468:6;23464:17;23429:66;:::i;:::-;23511:16;;;;;23246:287;-1:-1:-1;;23246:287:40:o;23884:404::-;23968:6;23976;24029:2;24017:9;24008:7;24004:23;24000:32;23997:52;;;24045:1;24042;24035:12;23997:52;24084:9;24071:23;24103:31;24128:5;24103:31;:::i;:::-;24153:5;-1:-1:-1;24210:2:40;24195:18;;24182:32;24223:33;24182:32;24223:33;:::i;25057:375::-;25145:1;25163:5;25177:249;25198:1;25188:8;25185:15;25177:249;;;25248:4;25243:3;25239:14;25233:4;25230:24;25227:50;;;25257:18;;:::i;:::-;25307:1;25297:8;25293:16;25290:49;;;25321:16;;;;25290:49;25404:1;25400:16;;;;;25360:15;;25177:249;;;25057:375;;;;;;:::o;25437:902::-;25486:5;25516:8;25506:80;;-1:-1:-1;25557:1:40;25571:5;;25506:80;25605:4;25595:76;;-1:-1:-1;25642:1:40;25656:5;;25595:76;25687:4;25705:1;25700:59;;;;25773:1;25768:174;;;;25680:262;;25700:59;25730:1;25721:10;;25744:5;;;25768:174;25805:3;25795:8;25792:17;25789:43;;;25812:18;;:::i;:::-;-1:-1:-1;;25868:1:40;25854:16;;25927:5;;25680:262;;26026:2;26016:8;26013:16;26007:3;26001:4;25998:13;25994:36;25988:2;25978:8;25975:16;25970:2;25964:4;25961:12;25957:35;25954:77;25951:203;;;-1:-1:-1;26063:19:40;;;26139:5;;25951:203;26186:42;-1:-1:-1;;26211:8:40;26205:4;26186:42;:::i;:::-;26264:6;26260:1;26256:6;26252:19;26243:7;26240:32;26237:58;;;26275:18;;:::i;:::-;26313:20;;25437:902;-1:-1:-1;;;25437:902:40:o;26344:131::-;26404:5;26433:36;26460:8;26454:4;26433:36;:::i;26480:127::-;26541:10;26536:3;26532:20;26529:1;26522:31;26572:4;26569:1;26562:15;26596:4;26593:1;26586:15;26612:332;26819:6;26808:9;26801:25;26862:2;26857;26846:9;26842:18;26835:30;26782:4;26882:56;26934:2;26923:9;26919:18;26911:6;26882:56;:::i;26949:179::-;26984:3;27026:1;27008:16;27005:23;27002:120;;;27072:1;27069;27066;27051:23;-1:-1:-1;27109:1:40;27103:8;27098:3;27094:18;27002:120;26949:179;:::o;27133:346::-;27243:2;27224:13;;-1:-1:-1;;27220:27:40;27208:40;;27278:18;27263:34;;27299:22;;;27260:62;27257:185;;;27364:10;27359:3;27355:20;27352:1;27345:31;27399:4;27396:1;27389:15;27427:4;27424:1;27417:15;27257:185;27458:2;27451:22;-1:-1:-1;;27133:346:40:o;27484:628::-;27523:3;27565:4;27547:16;27544:26;27541:39;;;27484:628;:::o;27541:39::-;27607:2;27601:9;27647:16;-1:-1:-1;;27643:29:40;27640:1;27601:9;27619:54;27702:4;27696:11;27776:16;27769:4;27761:6;27757:17;27754:39;27733:18;27725:6;27722:30;27719:75;27716:88;;;27797:5;;27484:628;:::o;27716:88::-;27834:6;27828:4;27824:17;27870:3;27864:10;27897:18;27889:6;27886:30;27883:43;;;27919:5;;;;27484:628;:::o;27883:43::-;27984:16;27974:27;;-1:-1:-1;;27970:40:40;27945:16;;;27963:4;27941:27;27938:73;27935:86;;;28014:5;;;;27484:628;:::o;27935:86::-;28030:57;28081:4;28072:6;28064;28060:19;28056:30;28050:4;28030:57;:::i;:::-;-1:-1:-1;28103:3:40;27484:628;-1:-1:-1;;;27484:628:40:o;31131:217::-;31171:1;31197;31187:132;;31241:10;31236:3;31232:20;31229:1;31222:31;31276:4;31273:1;31266:15;31304:4;31301:1;31294:15;31187:132;-1:-1:-1;31333:9:40;;31131:217::o;31693:821::-;32104:25;32099:3;32092:38;32074:3;32159:6;32153:13;32175:75;32243:6;32238:2;32233:3;32229:12;32222:4;32214:6;32210:17;32175:75;:::i;:::-;-1:-1:-1;;;32309:2:40;32269:16;;;32301:11;;;32294:40;32359:13;;32381:76;32359:13;32443:2;32435:11;;32428:4;32416:17;;32381:76;:::i;:::-;32481:17;32473:35;;;;-1:-1:-1;;;;31693:821:40:o;32798:136::-;32837:3;32865:5;32855:39;;32874:18;;:::i;:::-;-1:-1:-1;;;32910:18:40;;32798:136::o", + "linkReferences": {}, + "immutableReferences": { + "26": [{ "start": 13360, "length": 32 }], + "4409": [{ "start": 3925, "length": 32 }], + "4878": [{ "start": 4373, "length": 32 }] + } + }, + "methodIdentifiers": { + "assignLegacyProxyGovernor(address)": "284b920e", + "checkDeploymentStatus(address)": "d12fc182", + "deactivate(address)": "3ea053eb", + "deposit(address,uint256,uint256)": "0efe6a8b", + "deposit(uint256,uint256)": "e2bbb158", + "depositCancelRequest(address,uint256,uint256,uint256)": "a6d1d6c6", + "depositReclaim(address,uint256,uint256,uint256)": "23205c52", + "depositWithMessage(address,uint256,uint256,uint256[])": "be58b18e", + "depositWithMessageCancelRequest(address,uint256,uint256,uint256[],uint256)": "cf50fd1c", + "depositWithMessageReclaim(address,uint256,uint256,uint256[],uint256)": "b5cd0c3c", + "disableWithdrawalLimit(address)": "5a72af89", + "enableWithdrawalLimit(address)": "14af98b3", + "enrollToken(address)": "ad8b92b4", + "estimateDepositFeeWei()": "af8bc15e", + "estimateEnrollmentFeeWei()": "4d8b92a5", + "getMaxTotalBalance(address)": "4baf43da", + "getRemainingIntradayAllowance(address)": "496ae54c", + "getStatus(address)": "30ccebb5", + "identify()": "eeb72866", + "initialize(bytes)": "439fab91", + "isAppGovernor(address)": "5a5d1bb9", + "isAppRoleAdmin(address)": "8e5224ff", + "isFrozen()": "33eeb147", + "isGovernanceAdmin(address)": "cb1cccce", + "isOperator(address)": "6d70f7ae", + "isSecurityAdmin(address)": "d08fb6cb", + "isSecurityAgent(address)": "757bd9ab", + "isServicingToken(address)": "0c6f8664", + "isTokenAdmin(address)": "a2bdde3d", + "isUpgradeGovernor(address)": "6c04d9d5", + "legacyDepositCancelRequest(uint256,uint256,uint256)": "6ffed68b", + "legacyDepositReclaim(uint256,uint256,uint256)": "7d22dbc7", + "maxDeposit()": "6083e59a", + "maxTotalBalance()": "19534075", + "registerAppGovernor(address)": "cdd1f70d", + "registerAppRoleAdmin(address)": "17896383", + "registerGovernanceAdmin(address)": "9463629a", + "registerOperator(address)": "3682a450", + "registerSecurityAdmin(address)": "62a14376", + "registerSecurityAgent(address)": "0e770f23", + "registerTokenAdmin(address)": "0b3a2d21", + "registerUpgradeGovernor(address)": "6fc97cbf", + "removeLegacyProxyGovernor(address)": "c1f5eb3a", + "renounceRole(bytes32,address)": "36568abe", + "revokeAppGovernor(address)": "deec9c5a", + "revokeAppRoleAdmin(address)": "2f951985", + "revokeGovernanceAdmin(address)": "ee0e6807", + "revokeOperator(address)": "fad8b32a", + "revokeSecurityAdmin(address)": "8101b64c", + "revokeSecurityAgent(address)": "d9fa7091", + "revokeTokenAdmin(address)": "fa0f73ba", + "revokeUpgradeGovernor(address)": "ed9ef16a", + "setL2TokenBridge(uint256)": "7fc2ab3e", + "setMaxTotalBalance(address,uint256)": "d2b51eea", + "withdraw(address,uint256)": "f3fef3a3", + "withdraw(address,uint256,address)": "69328dec", + "withdraw(uint256)": "2e1a7d4d", + "withdraw(uint256,address)": "00f714ce" + }, + "rawMetadata": "{\"compiler\":{\"version\":\"0.8.27+commit.40a35a09\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"Deposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"DepositCancelRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"DepositReclaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"message\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"DepositWithMessage\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"message\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"DepositWithMessageCancelRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256[]\",\"name\":\"message\",\"type\":\"uint256[]\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"DepositWithMessageReclaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"LogDeposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"LogDepositCancelRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"LogDepositReclaimed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"acceptedGovernor\",\"type\":\"address\"}],\"name\":\"LogNewGovernorAccepted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"removedGovernor\",\"type\":\"address\"}],\"name\":\"LogRemovedGovernor\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"previousAdminRole\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"newAdminRole\",\"type\":\"bytes32\"}],\"name\":\"RoleAdminChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleGranted\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"RoleRevoked\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"SetL2TokenBridge\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"SetMaxTotalBalance\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"TokenDeactivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"deploymentMsgHash\",\"type\":\"bytes32\"}],\"name\":\"TokenEnrollmentInitiated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Withdrawal\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"WithdrawalLimitDisabled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"WithdrawalLimitEnabled\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"assignLegacyProxyGovernor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"checkDeploymentStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"deactivate\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"}],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"}],\"name\":\"deposit\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"depositCancelRequest\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"depositReclaim\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"internalType\":\"uint256[]\",\"name\":\"message\",\"type\":\"uint256[]\"}],\"name\":\"depositWithMessage\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"internalType\":\"uint256[]\",\"name\":\"message\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"depositWithMessageCancelRequest\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"internalType\":\"uint256[]\",\"name\":\"message\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"depositWithMessageReclaim\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"disableWithdrawalLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"enableWithdrawalLimit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"enrollToken\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"estimateDepositFeeWei\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"estimateEnrollmentFeeWei\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"getMaxTotalBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"getRemainingIntradayAllowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"getStatus\",\"outputs\":[{\"internalType\":\"enum StarknetTokenStorage.TokenStatus\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"identify\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"isAppGovernor\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"isAppRoleAdmin\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isFrozen\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"isGovernanceAdmin\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"isOperator\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"isSecurityAdmin\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"isSecurityAgent\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"}],\"name\":\"isServicingToken\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"isTokenAdmin\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"isUpgradeGovernor\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"legacyDepositCancelRequest\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"l2Recipient\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"nonce\",\"type\":\"uint256\"}],\"name\":\"legacyDepositReclaim\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxDeposit\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"maxTotalBalance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"registerAppGovernor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"registerAppRoleAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"registerGovernanceAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"registerOperator\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"registerSecurityAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"registerSecurityAgent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"registerTokenAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"registerUpgradeGovernor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"removeLegacyProxyGovernor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"role\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"renounceRole\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeAppGovernor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeAppRoleAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeGovernanceAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeOperator\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeSecurityAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeSecurityAgent\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeTokenAdmin\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"revokeUpgradeGovernor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"l2TokenBridge_\",\"type\":\"uint256\"}],\"name\":\"setL2TokenBridge\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"maxTotalBalance_\",\"type\":\"uint256\"}],\"name\":\"setMaxTotalBalance\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"recipient\",\"type\":\"address\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"token\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"deactivate(address)\":{\"params\":{\"token\":\"The address of the token contract to be deactivated. No return value, but it updates the token's status to 'Deactivated'. Emits a `TokenDeactivated` event when the deactivation is successful. Throws an error if the token is not enrolled or if the sender is not the manager.\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"checkDeploymentStatus(address)\":{\"notice\":\"Checks token deployment status. Relies on Starknet clearing L1-L2 message upon successful completion of deployment. Processing: Check the l1-l2 deployment message. Set status to `active` If consumed. If not consumed after the expected duration, it returns the status to unknown.\"},\"deactivate(address)\":{\"notice\":\"Deactivates a token in the system. This function is used to deactivate a token that was previously enrolled. Only the manager, who initiated the enrollment, can call this function.\"},\"deposit(uint256,uint256)\":{\"notice\":\"Support Legacy ABI.\"},\"disableWithdrawalLimit(address)\":{\"notice\":\"Unset withdrawal limit for a token.\"},\"enableWithdrawalLimit(address)\":{\"notice\":\"Set withdrawal limit for a token.\"},\"getRemainingIntradayAllowance(address)\":{\"notice\":\"Returns the remaining amount of withdrawal allowed for this day. If the daily allowance was not yet set, it is calculated and returned. If the withdraw limit is not enabled for that token - the uint256.max is returned.\"},\"isServicingToken(address)\":{\"notice\":\"Checks whether the calling contract is providing a service for the specified token. Returns True if the calling contract is providing a service for the token, otherwise false.\"},\"setMaxTotalBalance(address,uint256)\":{\"notice\":\"Set the maximum allowed balance of the bridge. Note: It is possible to set a lower value than the current total balance. In this case, deposits will not be possible, until enough withdrawls are done, such that the total balance is below the limit.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/solidity/StarknetEthBridge.sol\":\"StarknetEthBridge\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":ds-test/=lib/forge-std/lib/ds-test/src/\",\":forge-std/=lib/forge-std/src/\"]},\"sources\":{\"src/solidity/Fees.sol\":{\"keccak256\":\"0x6fa10e28a17e78b1465187c9104996abb06b31174fc1eac497e70a150522c63b\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://20948960e5b633ca1db0fccf80de4428278cfae251c203a77a06d4e71bdf618f\",\"dweb:/ipfs/QmT8eEz1bBKDZe7CW7C9PXPU7WDzu29tnWM53K1X9kNupj\"]},\"src/solidity/IStarkgateBridge.sol\":{\"keccak256\":\"0xaf3121a6b46e199a684bcba5a1b43d26167f67454d70bb58cec9ccb9cd831878\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://6e21adb919d6340cd68fa9199c6b54fb209a9ecf8de4ab2918a693313b9aa004\",\"dweb:/ipfs/QmaWoVA3EXV8sSFK5k3ZqDoBYutRpATzPzenH39GZHBqGn\"]},\"src/solidity/IStarkgateManager.sol\":{\"keccak256\":\"0x922e8c094ca384f808971ce133383a1f09a08a407ff9d42390f997c23b92e54c\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://9bcf0a975b59d420a33d66e9ee2148c5a87a5ed717cb8087610750d176fd39d8\",\"dweb:/ipfs/Qmf8nCJwwNN1pSB53wpV6hQzZdyNZtdgBuFt4y6JYX9PuT\"]},\"src/solidity/IStarkgateRegistry.sol\":{\"keccak256\":\"0xb57d52b80f0088308e988f56d04b02f139baae0f4cddfda371413beaf785fca2\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://15e6bff9a16f9a3af5f2fcb4e4a863653e1bc16597f18800b0c4af2e75e73172\",\"dweb:/ipfs/QmZ8uGovu7FcfepY3ZxkYUwbx49mogvGLp72XgUb8i3hv7\"]},\"src/solidity/IStarkgateService.sol\":{\"keccak256\":\"0xd867557468c043dbf6be2a2f98226964338258d108e55481202802311e122da8\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://6db7ee4ebdc4765a12589afb705aea612126b84bae58cb8453568bd12e090946\",\"dweb:/ipfs/QmXYxCtSSfYsxa9uiV1HKFX7puutZ2k2Zm3aCcgGZ5Frmx\"]},\"src/solidity/LegacyBridge.sol\":{\"keccak256\":\"0x5515bcee58bcb24131480fdc2e6dd0e92554e70fea4e896d3d8b7367d4ff8a0d\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://d14874daf1e471f64af57db5c2fe9f962ed5744907b587b3b5a3257684792281\",\"dweb:/ipfs/QmQYsPT7p9z2DHW1LWwjjLPD3exmEEi7W3AqxwxfErdNr2\"]},\"src/solidity/StarkgateConstants.sol\":{\"keccak256\":\"0x186842131c4c91bc58a6930491fa5619f76cd04d8ba43af9a5888ba21111d642\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://227e204f799af5d6bf452f173270b64c0be880a27d25f82afbddce3f9833e94c\",\"dweb:/ipfs/QmTk93uaih5Qx7KYDK6Fdh9qPeNiWMNkFFHmL98dKP29Qx\"]},\"src/solidity/StarkgateManager.sol\":{\"keccak256\":\"0x547e201622f2d7dc733e74aed2d0a3a6755f021fa047e91a2adb1ae51aad1927\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://3b8694c133d78305a6465075f39957c4ca851774569b0414d6768a29d0bcd975\",\"dweb:/ipfs/QmeS9S5fmjWzZ8EU9MnkyvuDUsy3YFbnBSam3DaLotU97X\"]},\"src/solidity/StarknetEthBridge.sol\":{\"keccak256\":\"0x6d7c4a98020111522724e8ef4bfc68c49301713222c7b8aaedf8b30eebf77c1c\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://7bd34161d37559d265e21b33c14c77a61593378985951457052dc158032159cf\",\"dweb:/ipfs/QmWvNbMq8yV6nmdheTvLfbNJBUX6dbpBuK8QCwShcuk63p\"]},\"src/solidity/StarknetTokenBridge.sol\":{\"keccak256\":\"0x9ed45c3f13d5afeae5a10c63e6dbaf23c6e80c3dc27f8a1290df23e345cbdb13\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://fe75594073da091d7d9380ed5f326b3af1d888eefd22e426635823c187de475d\",\"dweb:/ipfs/QmUqf3kCWaAFzov1kp1Z2YyEqboAqipTzokaimbzFhAxjs\"]},\"src/solidity/StarknetTokenStorage.sol\":{\"keccak256\":\"0xcdcd69d9ff44db4e7a564cb22d6d5ff571f85448785b6712b8edadfc698a1582\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://64f99efd55def7799ada9d6243d00c37007f9573a5ef1e627d830a94d7a33a52\",\"dweb:/ipfs/QmTYGH8AfSDCDnKm9DNuwZXeKTZH4jrtAondVqA8Nmv7AQ\"]},\"src/solidity/WithdrawalLimit.sol\":{\"keccak256\":\"0x873fabcb885ffbb2228b8cc742485718d0fc3d773bfa86334b2146418bc3bb56\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://677065f504fda831def60b0bd8b9d05676cb38f858f11230a482bfa2ca148ad6\",\"dweb:/ipfs/QmPGm9f7kjEX8W1VbZYtj3pXPZj6MgWFEfKY9jX4c8651h\"]},\"src/solidity/utils/Felt252.sol\":{\"keccak256\":\"0x6086a12a4bcb59a3386630e9661a5720f4821169630e01c7287d014f0194a7f8\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://12f16a493c1f91c3ec93c53c3ce4bdb46766ca6e1d425d65bf449d09068742d0\",\"dweb:/ipfs/Qma7yEFLywp53jKCBX1HyKYYL4YJesptVn3zfFcSEX7Y4h\"]},\"starkware/cairo/eth/CairoConstants.sol\":{\"keccak256\":\"0x57c804ac02eda4fb9f9b345a1c088e8a8276e2cfd36ffe6e9878856fe8c12bef\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://916e5076db8f5cf552ce6cf46911ae817d245a704be2815167dc62ffb2b6eddb\",\"dweb:/ipfs/Qme5Wnz1iLGpi9WSnEUb2MAWmXZYrKwPFHarE7VQJr742E\"]},\"starkware/solidity/components/OverrideLegacyProxyGovernance.sol\":{\"keccak256\":\"0xe5c781cda3854d2149f864cde9e1f57cec21d4ca846a740d73607ad9e66ebc38\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://bdfed281750a944cff217e64c85ff6991d901e19dac54455e697ade600a6f37f\",\"dweb:/ipfs/QmW5sYbkrxnYxWyP4wFz7mJkQVPMCVh1KjUG51TBUUHFVw\"]},\"starkware/solidity/components/Roles.sol\":{\"keccak256\":\"0xfb44a782d25daf9906eed2bf0b851297a44236f959327f3cbaf872957e0df7cf\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://964f3947cbf5b5a5bdad8de12cd3dd7a8a834b576fac1b1cb35cb7fc6ade76c3\",\"dweb:/ipfs/QmfMqnZ4f6DJALUrYMzvxYv3T6nCnxiXXcm6vcYV841dbv\"]},\"starkware/solidity/interfaces/BlockDirectCall.sol\":{\"keccak256\":\"0x7515367c6834021f1c29ae9cc217d2cf8b9af394e17f9772a82b33865e71d6a6\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://3b7078e5b739b2d551c790d154a8b99e9fdc9407046b21b8e93c0a91415f3af3\",\"dweb:/ipfs/QmW5kYo5wMkEqcgSJGUVeP28qXMZPVcE6ZnopmhEf1irsS\"]},\"starkware/solidity/interfaces/ContractInitializer.sol\":{\"keccak256\":\"0x5c04c50115659d88f74c4a3bb27af15b9f4d302be78a057b0c092e7c065ab36a\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://45ad3e4b332ba7e99855ab84ef539c106021d0a2a45253e4cb2ab045aba81fa6\",\"dweb:/ipfs/QmVWoh7scguCuzB5YgzujC2cWMA3priCn6RNZmasCNwGv7\"]},\"starkware/solidity/interfaces/Identity.sol\":{\"keccak256\":\"0x18b8ab7a912a2fca2567ad2adc811d9ed9123d5b2a8bdda77741581c2f7c9a08\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://cf3cc21679c63e2e5481c0ceeba85a476ba10d11fd942e9f149ccbe4a1ee2888\",\"dweb:/ipfs/QmUdC8rH8JX6ZSJ6ddF77hJADRJCbjLjVee92E7ZmagxHh\"]},\"starkware/solidity/interfaces/ProxySupport.sol\":{\"keccak256\":\"0x438167266a83e218bab512a996f5d30e3071dc552d407a8ab600511b4975c01a\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://2f998adb2dff0baef1dfa08b6d6cd35248246cda7334598d8c2c24fc835073c6\",\"dweb:/ipfs/QmX7t9h2aLu9HiEN371ipyrGSm6qW2EyrKbPhCWAimmmQ4\"]},\"starkware/solidity/libraries/AccessControl.sol\":{\"keccak256\":\"0x3b5af42da4adb23a3c56d62968b2a0058650c3f19c4ec0323f8c3958a02f2d32\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7cb26cce13390c59767822b9b317505757ee2438b7a1481fb4ee0435cf98b074\",\"dweb:/ipfs/QmdULczhMowp2aCJSt7z4KQGrMjPzEZjGU4YyqEemwM22e\"]},\"starkware/solidity/libraries/Addresses.sol\":{\"keccak256\":\"0xf10c7ae374d9fa0599e2ee71ffaf882a96befca2793dbb600bfd080bae9f6179\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://4d490f6daab8d654021f912d1fe3f676fb77fa15117ac706a8024d192047dc89\",\"dweb:/ipfs/QmYmYtGkzDvTxodvUXobWqwQZoppN4iYM1ATD7aSEhzgzS\"]},\"starkware/solidity/libraries/NamedStorage.sol\":{\"keccak256\":\"0x73e777cd0ae5f60889e4784b788c345bc3a3edc6a7ec3eab636b3701f2a1f66e\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://979e827ca68e8b00e8598cd67d0de96f10b5cb03197870e1f9a871533ca84e4a\",\"dweb:/ipfs/QmPjoWoRTBRiVnNJ576hCuqr3UVoGomDmSdipFKoUZUpJi\"]},\"starkware/solidity/libraries/RolesLib.sol\":{\"keccak256\":\"0x2497bfb416c91633e1f373de9dbdbd85bd8cdb3d36a74df941ad392d8036a8c0\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://7fd51947b57ca6ecf0c4d433def5b8793213d5c281dea1b2145bb13e6be483bb\",\"dweb:/ipfs/QmXFCfdQJ9SsoMxbLXPMRkiC6jqmddnsn4T7KXs4fcdweL\"]},\"starkware/solidity/libraries/Transfers.sol\":{\"keccak256\":\"0x596ec057b47f24b7776a71a2de0100078c1fbb18d2762cb2501236e79b1331ef\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://e595e54d35bd5ad0fbda03b7b105626b8b2a93fe4ee37f158070931e935b16b6\",\"dweb:/ipfs/QmUKYd6GF5YaYWENtZo8NmBcYKuN4svuwyeVxA2CShXYji\"]},\"starkware/solidity/tokens/ERC20/IERC20.sol\":{\"keccak256\":\"0x04bae6eb13e8755ac10de0b0549806dadc167f4e22054f065478dda5bb5635f4\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://b097f7cffcdd93ab330be7751bfad246d0d47c63ae0e3a3215b031895c821a68\",\"dweb:/ipfs/QmVZRaTM2vopCZSskT2UMWLPkPQpiYYkRjgDNurrJAMuve\"]},\"starkware/solidity/tokens/ERC20/IERC20Metadata.sol\":{\"keccak256\":\"0x88b3f63040f3cc91d897fb09469ab21cd61388f4861d2e4bc4758d01f8339282\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://b359ecd6460824213331e699bf0a70ab72ab9ffd03527a97c5669282a159551a\",\"dweb:/ipfs/QmPPuhpDVGaeFSqoJTxn2k5bDU9agwbnbo5qx99ApGB2BX\"]},\"starkware/starknet/solidity/IStarknetMessaging.sol\":{\"keccak256\":\"0x0b5ad38d2ffea6fdc5dc39d9340871f06c98c56c3faa276f92a542690b57cf64\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://9e28c6d7e599915e824ae100975b20174f5fa168904c81c0305facfd3f4f7651\",\"dweb:/ipfs/QmWiRdEkNDyKwigTiXkNbYpTkLj5WUEVo5TLgtfeeSEhmp\"]},\"starkware/starknet/solidity/IStarknetMessagingEvents.sol\":{\"keccak256\":\"0x2f455c3c28792bded72e19d0c1a21af7459b66d6071c3d996f6259c93f096424\",\"license\":\"Apache-2.0.\",\"urls\":[\"bzz-raw://95302fc273848d1c795344d6e6184c2def7866da81d563ae9ae9b3e9d8fcf7e7\",\"dweb:/ipfs/QmaHb55eq8Su9gEtqe3XbiyQkuf1Pk7CwKJkF9CXYbRrFN\"]},\"third_party/open_zeppelin/utils/Strings.sol\":{\"keccak256\":\"0xaf159a8b1923ad2a26d516089bceca9bdeaeacd04be50983ea00ba63070f08a3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6f2cf1c531122bc7ca96b8c8db6a60deae60441e5223065e792553d4849b5638\",\"dweb:/ipfs/QmPBdJmBBABMDCfyDjCbdxgiqRavgiSL88SYPGibgbPas9\"]}},\"version\":1}", + "metadata": { + "compiler": { "version": "0.8.27+commit.40a35a09" }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "token", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "fee", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Deposit", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "token", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "DepositCancelRequest", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "token", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "DepositReclaimed", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "token", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256[]", + "name": "message", + "type": "uint256[]", + "indexed": false + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "fee", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "DepositWithMessage", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "token", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256[]", + "name": "message", + "type": "uint256[]", + "indexed": false + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "DepositWithMessageCancelRequest", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "token", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256[]", + "name": "message", + "type": "uint256[]", + "indexed": false + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "DepositWithMessageReclaimed", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "fee", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "LogDeposit", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "LogDepositCancelRequest", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256", + "indexed": false + }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256", + "indexed": true + }, + { + "internalType": "uint256", + "name": "nonce", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "LogDepositReclaimed", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "acceptedGovernor", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "LogNewGovernorAccepted", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "removedGovernor", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "LogRemovedGovernor", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32", + "indexed": true + }, + { + "internalType": "bytes32", + "name": "previousAdminRole", + "type": "bytes32", + "indexed": true + }, + { + "internalType": "bytes32", + "name": "newAdminRole", + "type": "bytes32", + "indexed": true + } + ], + "type": "event", + "name": "RoleAdminChanged", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32", + "indexed": true + }, + { + "internalType": "address", + "name": "account", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + } + ], + "type": "event", + "name": "RoleGranted", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "role", + "type": "bytes32", + "indexed": true + }, + { + "internalType": "address", + "name": "account", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + } + ], + "type": "event", + "name": "RoleRevoked", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "value", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "SetL2TokenBridge", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "value", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "SetMaxTotalBalance", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address", + "indexed": false + } + ], + "type": "event", + "name": "TokenDeactivated", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "token", + "type": "address", + "indexed": false + }, + { + "internalType": "bytes32", + "name": "deploymentMsgHash", + "type": "bytes32", + "indexed": false + } + ], + "type": "event", + "name": "TokenEnrollmentInitiated", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "recipient", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "token", + "type": "address", + "indexed": true + }, + { + "internalType": "uint256", + "name": "amount", + "type": "uint256", + "indexed": false + } + ], + "type": "event", + "name": "Withdrawal", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "token", + "type": "address", + "indexed": true + } + ], + "type": "event", + "name": "WithdrawalLimitDisabled", + "anonymous": false + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address", + "indexed": true + }, + { + "internalType": "address", + "name": "token", + "type": "address", + "indexed": true + } + ], + "type": "event", + "name": "WithdrawalLimitEnabled", + "anonymous": false + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "assignLegacyProxyGovernor" + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "checkDeploymentStatus" + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "deactivate" + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256" + } + ], + "stateMutability": "payable", + "type": "function", + "name": "deposit" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256" + } + ], + "stateMutability": "payable", + "type": "function", + "name": "deposit" + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256" + }, + { "internalType": "uint256", "name": "nonce", "type": "uint256" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "depositCancelRequest" + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256" + }, + { "internalType": "uint256", "name": "nonce", "type": "uint256" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "depositReclaim" + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256" + }, + { + "internalType": "uint256[]", + "name": "message", + "type": "uint256[]" + } + ], + "stateMutability": "payable", + "type": "function", + "name": "depositWithMessage" + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256" + }, + { + "internalType": "uint256[]", + "name": "message", + "type": "uint256[]" + }, + { "internalType": "uint256", "name": "nonce", "type": "uint256" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "depositWithMessageCancelRequest" + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256" + }, + { + "internalType": "uint256[]", + "name": "message", + "type": "uint256[]" + }, + { "internalType": "uint256", "name": "nonce", "type": "uint256" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "depositWithMessageReclaim" + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "disableWithdrawalLimit" + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "enableWithdrawalLimit" + }, + { + "inputs": [ + { "internalType": "address", "name": "", "type": "address" } + ], + "stateMutability": "payable", + "type": "function", + "name": "enrollToken" + }, + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "estimateDepositFeeWei", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "estimateEnrollmentFeeWei", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" } + ], + "stateMutability": "view", + "type": "function", + "name": "getMaxTotalBalance", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" } + ], + "stateMutability": "view", + "type": "function", + "name": "getRemainingIntradayAllowance", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" } + ], + "stateMutability": "view", + "type": "function", + "name": "getStatus", + "outputs": [ + { + "internalType": "enum StarknetTokenStorage.TokenStatus", + "name": "", + "type": "uint8" + } + ] + }, + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "identify", + "outputs": [ + { "internalType": "string", "name": "", "type": "string" } + ] + }, + { + "inputs": [ + { "internalType": "bytes", "name": "data", "type": "bytes" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "initialize" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "view", + "type": "function", + "name": "isAppGovernor", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }] + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "view", + "type": "function", + "name": "isAppRoleAdmin", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "isFrozen", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }] + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "view", + "type": "function", + "name": "isGovernanceAdmin", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }] + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "view", + "type": "function", + "name": "isOperator", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }] + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "view", + "type": "function", + "name": "isSecurityAdmin", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }] + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "view", + "type": "function", + "name": "isSecurityAgent", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }] + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" } + ], + "stateMutability": "view", + "type": "function", + "name": "isServicingToken", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }] + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "view", + "type": "function", + "name": "isTokenAdmin", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }] + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "view", + "type": "function", + "name": "isUpgradeGovernor", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }] + }, + { + "inputs": [ + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256" + }, + { "internalType": "uint256", "name": "nonce", "type": "uint256" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "legacyDepositCancelRequest" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { + "internalType": "uint256", + "name": "l2Recipient", + "type": "uint256" + }, + { "internalType": "uint256", "name": "nonce", "type": "uint256" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "legacyDepositReclaim" + }, + { + "inputs": [], + "stateMutability": "pure", + "type": "function", + "name": "maxDeposit", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [], + "stateMutability": "view", + "type": "function", + "name": "maxTotalBalance", + "outputs": [ + { "internalType": "uint256", "name": "", "type": "uint256" } + ] + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "registerAppGovernor" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "registerAppRoleAdmin" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "registerGovernanceAdmin" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "registerOperator" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "registerSecurityAdmin" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "registerSecurityAgent" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "registerTokenAdmin" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "registerUpgradeGovernor" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "removeLegacyProxyGovernor" + }, + { + "inputs": [ + { "internalType": "bytes32", "name": "role", "type": "bytes32" }, + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "renounceRole" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "revokeAppGovernor" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "revokeAppRoleAdmin" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "revokeGovernanceAdmin" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "revokeOperator" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "revokeSecurityAdmin" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "revokeSecurityAgent" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "revokeTokenAdmin" + }, + { + "inputs": [ + { "internalType": "address", "name": "account", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "revokeUpgradeGovernor" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "l2TokenBridge_", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setL2TokenBridge" + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" }, + { + "internalType": "uint256", + "name": "maxTotalBalance_", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "setMaxTotalBalance" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "withdraw" + }, + { + "inputs": [ + { "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "withdraw" + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { + "internalType": "address", + "name": "recipient", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "withdraw" + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "stateMutability": "nonpayable", + "type": "function", + "name": "withdraw" + } + ], + "devdoc": { + "kind": "dev", + "methods": { + "deactivate(address)": { + "params": { + "token": "The address of the token contract to be deactivated. No return value, but it updates the token's status to 'Deactivated'. Emits a `TokenDeactivated` event when the deactivation is successful. Throws an error if the token is not enrolled or if the sender is not the manager." + } + } + }, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": { + "checkDeploymentStatus(address)": { + "notice": "Checks token deployment status. Relies on Starknet clearing L1-L2 message upon successful completion of deployment. Processing: Check the l1-l2 deployment message. Set status to `active` If consumed. If not consumed after the expected duration, it returns the status to unknown." + }, + "deactivate(address)": { + "notice": "Deactivates a token in the system. This function is used to deactivate a token that was previously enrolled. Only the manager, who initiated the enrollment, can call this function." + }, + "deposit(uint256,uint256)": { "notice": "Support Legacy ABI." }, + "disableWithdrawalLimit(address)": { + "notice": "Unset withdrawal limit for a token." + }, + "enableWithdrawalLimit(address)": { + "notice": "Set withdrawal limit for a token." + }, + "getRemainingIntradayAllowance(address)": { + "notice": "Returns the remaining amount of withdrawal allowed for this day. If the daily allowance was not yet set, it is calculated and returned. If the withdraw limit is not enabled for that token - the uint256.max is returned." + }, + "isServicingToken(address)": { + "notice": "Checks whether the calling contract is providing a service for the specified token. Returns True if the calling contract is providing a service for the token, otherwise false." + }, + "setMaxTotalBalance(address,uint256)": { + "notice": "Set the maximum allowed balance of the bridge. Note: It is possible to set a lower value than the current total balance. In this case, deposits will not be possible, until enough withdrawls are done, such that the total balance is below the limit." + } + }, + "version": 1 + } + }, + "settings": { + "remappings": [ + "ds-test/=lib/forge-std/lib/ds-test/src/", + "forge-std/=lib/forge-std/src/" + ], + "optimizer": { "enabled": true, "runs": 200 }, + "metadata": { "bytecodeHash": "ipfs" }, + "compilationTarget": { + "src/solidity/StarknetEthBridge.sol": "StarknetEthBridge" + }, + "evmVersion": "paris", + "libraries": {} + }, + "sources": { + "src/solidity/Fees.sol": { + "keccak256": "0x6fa10e28a17e78b1465187c9104996abb06b31174fc1eac497e70a150522c63b", + "urls": [ + "bzz-raw://20948960e5b633ca1db0fccf80de4428278cfae251c203a77a06d4e71bdf618f", + "dweb:/ipfs/QmT8eEz1bBKDZe7CW7C9PXPU7WDzu29tnWM53K1X9kNupj" + ], + "license": "Apache-2.0." + }, + "src/solidity/IStarkgateBridge.sol": { + "keccak256": "0xaf3121a6b46e199a684bcba5a1b43d26167f67454d70bb58cec9ccb9cd831878", + "urls": [ + "bzz-raw://6e21adb919d6340cd68fa9199c6b54fb209a9ecf8de4ab2918a693313b9aa004", + "dweb:/ipfs/QmaWoVA3EXV8sSFK5k3ZqDoBYutRpATzPzenH39GZHBqGn" + ], + "license": "Apache-2.0." + }, + "src/solidity/IStarkgateManager.sol": { + "keccak256": "0x922e8c094ca384f808971ce133383a1f09a08a407ff9d42390f997c23b92e54c", + "urls": [ + "bzz-raw://9bcf0a975b59d420a33d66e9ee2148c5a87a5ed717cb8087610750d176fd39d8", + "dweb:/ipfs/Qmf8nCJwwNN1pSB53wpV6hQzZdyNZtdgBuFt4y6JYX9PuT" + ], + "license": "Apache-2.0." + }, + "src/solidity/IStarkgateRegistry.sol": { + "keccak256": "0xb57d52b80f0088308e988f56d04b02f139baae0f4cddfda371413beaf785fca2", + "urls": [ + "bzz-raw://15e6bff9a16f9a3af5f2fcb4e4a863653e1bc16597f18800b0c4af2e75e73172", + "dweb:/ipfs/QmZ8uGovu7FcfepY3ZxkYUwbx49mogvGLp72XgUb8i3hv7" + ], + "license": "Apache-2.0." + }, + "src/solidity/IStarkgateService.sol": { + "keccak256": "0xd867557468c043dbf6be2a2f98226964338258d108e55481202802311e122da8", + "urls": [ + "bzz-raw://6db7ee4ebdc4765a12589afb705aea612126b84bae58cb8453568bd12e090946", + "dweb:/ipfs/QmXYxCtSSfYsxa9uiV1HKFX7puutZ2k2Zm3aCcgGZ5Frmx" + ], + "license": "Apache-2.0." + }, + "src/solidity/LegacyBridge.sol": { + "keccak256": "0x5515bcee58bcb24131480fdc2e6dd0e92554e70fea4e896d3d8b7367d4ff8a0d", + "urls": [ + "bzz-raw://d14874daf1e471f64af57db5c2fe9f962ed5744907b587b3b5a3257684792281", + "dweb:/ipfs/QmQYsPT7p9z2DHW1LWwjjLPD3exmEEi7W3AqxwxfErdNr2" + ], + "license": "Apache-2.0." + }, + "src/solidity/StarkgateConstants.sol": { + "keccak256": "0x186842131c4c91bc58a6930491fa5619f76cd04d8ba43af9a5888ba21111d642", + "urls": [ + "bzz-raw://227e204f799af5d6bf452f173270b64c0be880a27d25f82afbddce3f9833e94c", + "dweb:/ipfs/QmTk93uaih5Qx7KYDK6Fdh9qPeNiWMNkFFHmL98dKP29Qx" + ], + "license": "Apache-2.0." + }, + "src/solidity/StarkgateManager.sol": { + "keccak256": "0x547e201622f2d7dc733e74aed2d0a3a6755f021fa047e91a2adb1ae51aad1927", + "urls": [ + "bzz-raw://3b8694c133d78305a6465075f39957c4ca851774569b0414d6768a29d0bcd975", + "dweb:/ipfs/QmeS9S5fmjWzZ8EU9MnkyvuDUsy3YFbnBSam3DaLotU97X" + ], + "license": "Apache-2.0." + }, + "src/solidity/StarknetEthBridge.sol": { + "keccak256": "0x6d7c4a98020111522724e8ef4bfc68c49301713222c7b8aaedf8b30eebf77c1c", + "urls": [ + "bzz-raw://7bd34161d37559d265e21b33c14c77a61593378985951457052dc158032159cf", + "dweb:/ipfs/QmWvNbMq8yV6nmdheTvLfbNJBUX6dbpBuK8QCwShcuk63p" + ], + "license": "Apache-2.0." + }, + "src/solidity/StarknetTokenBridge.sol": { + "keccak256": "0x9ed45c3f13d5afeae5a10c63e6dbaf23c6e80c3dc27f8a1290df23e345cbdb13", + "urls": [ + "bzz-raw://fe75594073da091d7d9380ed5f326b3af1d888eefd22e426635823c187de475d", + "dweb:/ipfs/QmUqf3kCWaAFzov1kp1Z2YyEqboAqipTzokaimbzFhAxjs" + ], + "license": "Apache-2.0." + }, + "src/solidity/StarknetTokenStorage.sol": { + "keccak256": "0xcdcd69d9ff44db4e7a564cb22d6d5ff571f85448785b6712b8edadfc698a1582", + "urls": [ + "bzz-raw://64f99efd55def7799ada9d6243d00c37007f9573a5ef1e627d830a94d7a33a52", + "dweb:/ipfs/QmTYGH8AfSDCDnKm9DNuwZXeKTZH4jrtAondVqA8Nmv7AQ" + ], + "license": "Apache-2.0." + }, + "src/solidity/WithdrawalLimit.sol": { + "keccak256": "0x873fabcb885ffbb2228b8cc742485718d0fc3d773bfa86334b2146418bc3bb56", + "urls": [ + "bzz-raw://677065f504fda831def60b0bd8b9d05676cb38f858f11230a482bfa2ca148ad6", + "dweb:/ipfs/QmPGm9f7kjEX8W1VbZYtj3pXPZj6MgWFEfKY9jX4c8651h" + ], + "license": "Apache-2.0." + }, + "src/solidity/utils/Felt252.sol": { + "keccak256": "0x6086a12a4bcb59a3386630e9661a5720f4821169630e01c7287d014f0194a7f8", + "urls": [ + "bzz-raw://12f16a493c1f91c3ec93c53c3ce4bdb46766ca6e1d425d65bf449d09068742d0", + "dweb:/ipfs/Qma7yEFLywp53jKCBX1HyKYYL4YJesptVn3zfFcSEX7Y4h" + ], + "license": "Apache-2.0." + }, + "starkware/cairo/eth/CairoConstants.sol": { + "keccak256": "0x57c804ac02eda4fb9f9b345a1c088e8a8276e2cfd36ffe6e9878856fe8c12bef", + "urls": [ + "bzz-raw://916e5076db8f5cf552ce6cf46911ae817d245a704be2815167dc62ffb2b6eddb", + "dweb:/ipfs/Qme5Wnz1iLGpi9WSnEUb2MAWmXZYrKwPFHarE7VQJr742E" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/components/OverrideLegacyProxyGovernance.sol": { + "keccak256": "0xe5c781cda3854d2149f864cde9e1f57cec21d4ca846a740d73607ad9e66ebc38", + "urls": [ + "bzz-raw://bdfed281750a944cff217e64c85ff6991d901e19dac54455e697ade600a6f37f", + "dweb:/ipfs/QmW5sYbkrxnYxWyP4wFz7mJkQVPMCVh1KjUG51TBUUHFVw" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/components/Roles.sol": { + "keccak256": "0xfb44a782d25daf9906eed2bf0b851297a44236f959327f3cbaf872957e0df7cf", + "urls": [ + "bzz-raw://964f3947cbf5b5a5bdad8de12cd3dd7a8a834b576fac1b1cb35cb7fc6ade76c3", + "dweb:/ipfs/QmfMqnZ4f6DJALUrYMzvxYv3T6nCnxiXXcm6vcYV841dbv" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/interfaces/BlockDirectCall.sol": { + "keccak256": "0x7515367c6834021f1c29ae9cc217d2cf8b9af394e17f9772a82b33865e71d6a6", + "urls": [ + "bzz-raw://3b7078e5b739b2d551c790d154a8b99e9fdc9407046b21b8e93c0a91415f3af3", + "dweb:/ipfs/QmW5kYo5wMkEqcgSJGUVeP28qXMZPVcE6ZnopmhEf1irsS" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/interfaces/ContractInitializer.sol": { + "keccak256": "0x5c04c50115659d88f74c4a3bb27af15b9f4d302be78a057b0c092e7c065ab36a", + "urls": [ + "bzz-raw://45ad3e4b332ba7e99855ab84ef539c106021d0a2a45253e4cb2ab045aba81fa6", + "dweb:/ipfs/QmVWoh7scguCuzB5YgzujC2cWMA3priCn6RNZmasCNwGv7" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/interfaces/Identity.sol": { + "keccak256": "0x18b8ab7a912a2fca2567ad2adc811d9ed9123d5b2a8bdda77741581c2f7c9a08", + "urls": [ + "bzz-raw://cf3cc21679c63e2e5481c0ceeba85a476ba10d11fd942e9f149ccbe4a1ee2888", + "dweb:/ipfs/QmUdC8rH8JX6ZSJ6ddF77hJADRJCbjLjVee92E7ZmagxHh" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/interfaces/ProxySupport.sol": { + "keccak256": "0x438167266a83e218bab512a996f5d30e3071dc552d407a8ab600511b4975c01a", + "urls": [ + "bzz-raw://2f998adb2dff0baef1dfa08b6d6cd35248246cda7334598d8c2c24fc835073c6", + "dweb:/ipfs/QmX7t9h2aLu9HiEN371ipyrGSm6qW2EyrKbPhCWAimmmQ4" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/libraries/AccessControl.sol": { + "keccak256": "0x3b5af42da4adb23a3c56d62968b2a0058650c3f19c4ec0323f8c3958a02f2d32", + "urls": [ + "bzz-raw://7cb26cce13390c59767822b9b317505757ee2438b7a1481fb4ee0435cf98b074", + "dweb:/ipfs/QmdULczhMowp2aCJSt7z4KQGrMjPzEZjGU4YyqEemwM22e" + ], + "license": "MIT" + }, + "starkware/solidity/libraries/Addresses.sol": { + "keccak256": "0xf10c7ae374d9fa0599e2ee71ffaf882a96befca2793dbb600bfd080bae9f6179", + "urls": [ + "bzz-raw://4d490f6daab8d654021f912d1fe3f676fb77fa15117ac706a8024d192047dc89", + "dweb:/ipfs/QmYmYtGkzDvTxodvUXobWqwQZoppN4iYM1ATD7aSEhzgzS" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/libraries/NamedStorage.sol": { + "keccak256": "0x73e777cd0ae5f60889e4784b788c345bc3a3edc6a7ec3eab636b3701f2a1f66e", + "urls": [ + "bzz-raw://979e827ca68e8b00e8598cd67d0de96f10b5cb03197870e1f9a871533ca84e4a", + "dweb:/ipfs/QmPjoWoRTBRiVnNJ576hCuqr3UVoGomDmSdipFKoUZUpJi" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/libraries/RolesLib.sol": { + "keccak256": "0x2497bfb416c91633e1f373de9dbdbd85bd8cdb3d36a74df941ad392d8036a8c0", + "urls": [ + "bzz-raw://7fd51947b57ca6ecf0c4d433def5b8793213d5c281dea1b2145bb13e6be483bb", + "dweb:/ipfs/QmXFCfdQJ9SsoMxbLXPMRkiC6jqmddnsn4T7KXs4fcdweL" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/libraries/Transfers.sol": { + "keccak256": "0x596ec057b47f24b7776a71a2de0100078c1fbb18d2762cb2501236e79b1331ef", + "urls": [ + "bzz-raw://e595e54d35bd5ad0fbda03b7b105626b8b2a93fe4ee37f158070931e935b16b6", + "dweb:/ipfs/QmUKYd6GF5YaYWENtZo8NmBcYKuN4svuwyeVxA2CShXYji" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/tokens/ERC20/IERC20.sol": { + "keccak256": "0x04bae6eb13e8755ac10de0b0549806dadc167f4e22054f065478dda5bb5635f4", + "urls": [ + "bzz-raw://b097f7cffcdd93ab330be7751bfad246d0d47c63ae0e3a3215b031895c821a68", + "dweb:/ipfs/QmVZRaTM2vopCZSskT2UMWLPkPQpiYYkRjgDNurrJAMuve" + ], + "license": "Apache-2.0." + }, + "starkware/solidity/tokens/ERC20/IERC20Metadata.sol": { + "keccak256": "0x88b3f63040f3cc91d897fb09469ab21cd61388f4861d2e4bc4758d01f8339282", + "urls": [ + "bzz-raw://b359ecd6460824213331e699bf0a70ab72ab9ffd03527a97c5669282a159551a", + "dweb:/ipfs/QmPPuhpDVGaeFSqoJTxn2k5bDU9agwbnbo5qx99ApGB2BX" + ], + "license": "Apache-2.0." + }, + "starkware/starknet/solidity/IStarknetMessaging.sol": { + "keccak256": "0x0b5ad38d2ffea6fdc5dc39d9340871f06c98c56c3faa276f92a542690b57cf64", + "urls": [ + "bzz-raw://9e28c6d7e599915e824ae100975b20174f5fa168904c81c0305facfd3f4f7651", + "dweb:/ipfs/QmWiRdEkNDyKwigTiXkNbYpTkLj5WUEVo5TLgtfeeSEhmp" + ], + "license": "Apache-2.0." + }, + "starkware/starknet/solidity/IStarknetMessagingEvents.sol": { + "keccak256": "0x2f455c3c28792bded72e19d0c1a21af7459b66d6071c3d996f6259c93f096424", + "urls": [ + "bzz-raw://95302fc273848d1c795344d6e6184c2def7866da81d563ae9ae9b3e9d8fcf7e7", + "dweb:/ipfs/QmaHb55eq8Su9gEtqe3XbiyQkuf1Pk7CwKJkF9CXYbRrFN" + ], + "license": "Apache-2.0." + }, + "third_party/open_zeppelin/utils/Strings.sol": { + "keccak256": "0xaf159a8b1923ad2a26d516089bceca9bdeaeacd04be50983ea00ba63070f08a3", + "urls": [ + "bzz-raw://6f2cf1c531122bc7ca96b8c8db6a60deae60441e5223065e792553d4849b5638", + "dweb:/ipfs/QmPBdJmBBABMDCfyDjCbdxgiqRavgiSL88SYPGibgbPas9" + ], + "license": "MIT" + } + }, + "version": 1 + }, + "id": 14 +} diff --git a/scripts/artifacts/starknet/bridge_proxy_legacy.json b/scripts/artifacts/starknet/bridge_proxy_legacy.json new file mode 100644 index 000000000..38d556e05 --- /dev/null +++ b/scripts/artifacts/starknet/bridge_proxy_legacy.json @@ -0,0 +1,32375 @@ +{ + "abi": [ + { + "inputs": [], + "name": "finalized", + "outputs": [ + { + "name": "res", + "type": "felt" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "data": [ + { + "name": "new_governor_nominee", + "type": "felt" + }, + { + "name": "nominated_by", + "type": "felt" + } + ], + "keys": [], + "name": "governor_nominated", + "type": "event" + }, + { + "data": [ + { + "name": "cancelled_nominee", + "type": "felt" + }, + { + "name": "cancelled_by", + "type": "felt" + } + ], + "keys": [], + "name": "nomination_cancelled", + "type": "event" + }, + { + "data": [ + { + "name": "removed_governor", + "type": "felt" + }, + { + "name": "removed_by", + "type": "felt" + } + ], + "keys": [], + "name": "governor_removed", + "type": "event" + }, + { + "data": [ + { + "name": "new_governor", + "type": "felt" + } + ], + "keys": [], + "name": "governance_accepted", + "type": "event" + }, + { + "inputs": [ + { + "name": "account", + "type": "felt" + } + ], + "name": "is_governor", + "outputs": [ + { + "name": "is_governor_", + "type": "felt" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "init_governance", + "outputs": [], + "type": "function" + }, + { + "inputs": [ + { + "name": "nominee", + "type": "felt" + } + ], + "name": "nominate_new_governor", + "outputs": [], + "type": "function" + }, + { + "inputs": [ + { + "name": "cancelee", + "type": "felt" + } + ], + "name": "cancel_nomination", + "outputs": [], + "type": "function" + }, + { + "inputs": [ + { + "name": "removee", + "type": "felt" + } + ], + "name": "remove_governor", + "outputs": [], + "type": "function" + }, + { + "inputs": [], + "name": "accept_governance", + "outputs": [], + "type": "function" + }, + { + "data": [ + { + "name": "implementation", + "type": "felt" + }, + { + "name": "eic_address", + "type": "felt" + }, + { + "name": "init_vector_len", + "type": "felt" + }, + { + "name": "init_vector", + "type": "felt*" + }, + { + "name": "final", + "type": "felt" + } + ], + "keys": [], + "name": "implementation_added", + "type": "event" + }, + { + "data": [ + { + "name": "implementation", + "type": "felt" + }, + { + "name": "eic_address", + "type": "felt" + }, + { + "name": "init_vector_len", + "type": "felt" + }, + { + "name": "init_vector", + "type": "felt*" + }, + { + "name": "final", + "type": "felt" + } + ], + "keys": [], + "name": "implementation_removed", + "type": "event" + }, + { + "data": [ + { + "name": "implementation", + "type": "felt" + }, + { + "name": "eic_address", + "type": "felt" + }, + { + "name": "init_vector_len", + "type": "felt" + }, + { + "name": "init_vector", + "type": "felt*" + } + ], + "keys": [], + "name": "implementation_upgraded", + "type": "event" + }, + { + "data": [ + { + "name": "implementation", + "type": "felt" + } + ], + "keys": [], + "name": "implementation_finalized", + "type": "event" + }, + { + "inputs": [], + "name": "implementation", + "outputs": [ + { + "name": "address", + "type": "felt" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "name": "implementation_", + "type": "felt" + }, + { + "name": "eic_address", + "type": "felt" + }, + { + "name": "init_vector_len", + "type": "felt" + }, + { + "name": "init_vector", + "type": "felt*" + }, + { + "name": "final", + "type": "felt" + } + ], + "name": "implementation_time", + "outputs": [ + { + "name": "time", + "type": "felt" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "name": "implementation_", + "type": "felt" + }, + { + "name": "eic_address", + "type": "felt" + }, + { + "name": "init_vector_len", + "type": "felt" + }, + { + "name": "init_vector", + "type": "felt*" + }, + { + "name": "final", + "type": "felt" + } + ], + "name": "add_implementation", + "outputs": [], + "type": "function" + }, + { + "inputs": [ + { + "name": "implementation_", + "type": "felt" + }, + { + "name": "eic_address", + "type": "felt" + }, + { + "name": "init_vector_len", + "type": "felt" + }, + { + "name": "init_vector", + "type": "felt*" + }, + { + "name": "final", + "type": "felt" + } + ], + "name": "remove_implementation", + "outputs": [], + "type": "function" + }, + { + "inputs": [ + { + "name": "implementation_", + "type": "felt" + }, + { + "name": "eic_address", + "type": "felt" + }, + { + "name": "init_vector_len", + "type": "felt" + }, + { + "name": "init_vector", + "type": "felt*" + }, + { + "name": "final", + "type": "felt" + } + ], + "name": "upgrade_to", + "outputs": [], + "type": "function" + }, + { + "inputs": [ + { + "name": "init_vector_len", + "type": "felt" + }, + { + "name": "init_vector", + "type": "felt*" + } + ], + "name": "initialize", + "outputs": [], + "type": "function" + }, + { + "inputs": [ + { + "name": "upgrade_delay_seconds", + "type": "felt" + } + ], + "name": "constructor", + "outputs": [], + "type": "constructor" + }, + { + "inputs": [ + { + "name": "selector", + "type": "felt" + }, + { + "name": "calldata_size", + "type": "felt" + }, + { + "name": "calldata", + "type": "felt*" + } + ], + "name": "__default__", + "outputs": [ + { + "name": "retdata_size", + "type": "felt" + }, + { + "name": "retdata", + "type": "felt*" + } + ], + "type": "function" + }, + { + "inputs": [ + { + "name": "selector", + "type": "felt" + }, + { + "name": "calldata_size", + "type": "felt" + }, + { + "name": "calldata", + "type": "felt*" + } + ], + "name": "__l1_default__", + "outputs": [], + "type": "l1_handler" + } + ], + "entry_points_by_type": { + "CONSTRUCTOR": [ + { + "offset": "0x664", + "selector": "0x28ffe4ff0f226a9107253e17a904099aa4f63a02a5621de0576e5aa71bc5194" + } + ], + "EXTERNAL": [ + { + "offset": "0x688", + "selector": "0x0" + }, + { + "offset": "0x60c", + "selector": "0x79dc0da7c54b95f10aa182ad0a46400db63156920adb65eca2654c0945a463" + }, + { + "offset": "0xce", + "selector": "0xcfc0e4c73ce8e46b07c3167ce01ce17e6c2deaaa5b88b977bbb10abe25c9ad" + }, + { + "offset": "0x502", + "selector": "0xd43941048da98e5d91155f568f15da2ac665270f823156af4a151cc6f01869" + }, + { + "offset": "0x1d5", + "selector": "0xddbce093aac16b73fee61c0b88929c421b44a7b0f5eea63c3d5751c2ce7856" + }, + { + "offset": "0x2a1", + "selector": "0xe49d8b1fd8837abeba585912ed5e4baf9afab856352e8d561ec583ec3e07c9" + }, + { + "offset": "0x5e4", + "selector": "0xed163e8350935d550d16de1f53fd8284b06f37685f9d20c7f1735f719f336e" + }, + { + "offset": "0x20a", + "selector": "0x195d4289b867c3d98c335ea31402667f3592e227faf3d2991308563ed102aab" + }, + { + "offset": "0x238", + "selector": "0x1e7a77b5074503274b30e0668ed3e3370061f6ca9a804a6ef595eca615ae2b9" + }, + { + "offset": "0x26d", + "selector": "0x24ebb738b266180bbd9584b568849a498b630fc443a124b9a706df121f39c0d" + }, + { + "offset": "0x4af", + "selector": "0x261e84c3bf0cd91f662ef6a323744d295f57c9f73e2a8f7cb7b2fc4bb732a41" + }, + { + "offset": "0x555", + "selector": "0x338dd2002b6f7ac6471742691de72611381e3fc4ce2b0361c29d42cb2d53a90" + }, + { + "offset": "0x2d4", + "selector": "0x39c93e2133cb77c722e54da8fab6e0231a5fe8341be262436094de7358e3477" + }, + { + "offset": "0x488", + "selector": "0x3a0ed1f62da1d3048614c2c1feb566f041c8467eb00fb8294776a9179dc1643" + } + ], + "L1_HANDLER": [ + { + "offset": "0x6a1", + "selector": "0x0" + } + ] + }, + "program": { + "attributes": [ + { + "accessible_scopes": [], + "end_pc": 228, + "flow_tracking_data": null, + "name": "error_message", + "start_pc": 226, + "value": "FINALIZED" + }, + { + "accessible_scopes": [], + "end_pc": 494, + "flow_tracking_data": null, + "name": "error_message", + "start_pc": 492, + "value": "ALREADY_INITIALIZED" + }, + { + "accessible_scopes": [], + "end_pc": 547, + "flow_tracking_data": null, + "name": "error_message", + "start_pc": 545, + "value": "ALREADY_GOVERNOR" + }, + { + "accessible_scopes": [], + "end_pc": 649, + "flow_tracking_data": null, + "name": "error_message", + "start_pc": 647, + "value": "NOT_A_GOVERNOR" + }, + { + "accessible_scopes": [], + "end_pc": 655, + "flow_tracking_data": null, + "name": "error_message", + "start_pc": 652, + "value": "CANNOT_SELF_REMOVE" + }, + { + "accessible_scopes": [], + "end_pc": 702, + "flow_tracking_data": null, + "name": "error_message", + "start_pc": 700, + "value": "NOT_A_GOVERNANCE_CANDIDATE" + }, + { + "accessible_scopes": [], + "end_pc": 750, + "flow_tracking_data": null, + "name": "error_message", + "start_pc": 748, + "value": "ONLY_GOVERNOR" + }, + { + "accessible_scopes": [], + "end_pc": 1241, + "flow_tracking_data": null, + "name": "error_message", + "start_pc": 1238, + "value": "NOT_AN_IMPLEMENTATION" + }, + { + "accessible_scopes": [], + "end_pc": 1430, + "flow_tracking_data": null, + "name": "error_message", + "start_pc": 1427, + "value": "UNKNOWN_IMPLEMENTATION" + }, + { + "accessible_scopes": [], + "end_pc": 1448, + "flow_tracking_data": null, + "name": "error_message", + "start_pc": 1443, + "value": "NOT_ENABLED_YET" + }, + { + "accessible_scopes": [], + "end_pc": 1544, + "flow_tracking_data": null, + "name": "error_message", + "start_pc": 1540, + "value": "DIRECT_CALL_PROHIBITED" + } + ], + "builtins": ["pedersen", "range_check"], + "data": [ + "0x40780017fff7fff", + "0x1", + "0x208b7fff7fff7ffe", + "0x400380007ffb7ffc", + "0x400380017ffb7ffd", + "0x482680017ffb8000", + "0x3", + "0x480280027ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffd", + "0x3", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480080007fff8000", + "0x400080007ffd7fff", + "0x482480017ffd8001", + "0x1", + "0x482480017ffd8001", + "0x1", + "0xa0680017fff7ffe", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffffb", + "0x402a7ffc7ffd7fff", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffd", + "0x4", + "0x400780017fff7ffd", + "0x1", + "0x208b7fff7fff7ffe", + "0x48297ffd80007ffc", + "0x20680017fff7fff", + "0x4", + "0x402780017ffc7ffc", + "0x1", + "0x208b7fff7fff7ffe", + "0x400380007ffc7ffd", + "0x482680017ffc8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x48297ffc80007ffd", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffffb", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x3ffffffffffffffffffffffffffffff", + "0x480280017ffc8000", + "0x48307fff80007ffe", + "0x400280027ffc7fff", + "0x480280017ffc8000", + "0x484480017fff8000", + "0x100000000000000000000000000000000", + "0x480280007ffc8000", + "0x40317fff7ffe7ffd", + "0x482680017ffc8000", + "0x3", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x20680017fff7fff", + "0x10", + "0x480a7ffc7fff8000", + "0x482680017ffd8000", + "0x11000000000000000000000000000000000000000000000101", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffed", + "0x480680017fff8000", + "0x800000000000011000000000000000000000000000000000000000000000000", + "0x48127ffe7fff8000", + "0x48287ffd80007ffe", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe7", + "0x482680017ffd8000", + "0x11000000000000000000000000000000000000000000000101", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x20680017fff7fff", + "0xc", + "0x40780017fff7fff", + "0xa", + "0x480680017fff8000", + "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeff", + "0x480a7ffc7fff8000", + "0x48287ffd80007ffe", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd8", + "0x10780017fff7fff", + "0x8", + "0x40780017fff7fff", + "0xb", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x44656c656761746543616c6c", + "0x400280007ff97fff", + "0x400380017ff97ffa", + "0x400380027ff97ffb", + "0x400380037ff97ffc", + "0x400380047ff97ffd", + "0x482680017ff98000", + "0x7", + "0x480280057ff98000", + "0x480280067ff98000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x44656c65676174654c3148616e646c6572", + "0x400280007ff97fff", + "0x400380017ff97ffa", + "0x400380027ff97ffb", + "0x400380037ff97ffc", + "0x400380047ff97ffd", + "0x482680017ff98000", + "0x7", + "0x480280057ff98000", + "0x480280067ff98000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x47657443616c6c657241646472657373", + "0x400280007ffd7fff", + "0x482680017ffd8000", + "0x2", + "0x480280017ffd8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x476574426c6f636b54696d657374616d70", + "0x400280007ffd7fff", + "0x482680017ffd8000", + "0x2", + "0x480280017ffd8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x482680017ffc8000", + "0x3", + "0x480280027ffc8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffb7fff", + "0x400380017ffb7ffc", + "0x400380027ffb7ffd", + "0x482680017ffb8000", + "0x3", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff97fff", + "0x400380017ff97ffa", + "0x400380027ff97ffb", + "0x400380037ff97ffc", + "0x400380047ff97ffd", + "0x482680017ff98000", + "0x5", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x3deed800708b45e9b8d2fb1c674394761dfb20b8c89d199e6c4cdb0974dd906", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffffa", + "0x480a7ffb7fff8000", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffdc", + "0x48127ffe7fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffed", + "0x480a7ffa7fff8000", + "0x48127ffe7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd6", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe5", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x4003800080007ffc", + "0x4826800180008000", + "0x1", + "0x480a7ffd7fff8000", + "0x4828800080007ffe", + "0x480a80007fff8000", + "0x208b7fff7fff7ffe", + "0x402b7ffd7ffc7ffd", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x480280027ffb8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffee", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff1", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe0", + "0x400680017fff7fff", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff3", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffc5", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0xe8fc4f1b6b3dc661208f9a8a5017a6c059098327e31518722e0a5c3a5a7e86", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffffa", + "0x480a7ffb7fff8000", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff8b", + "0x48127ffe7fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffed", + "0x480a7ffa7fff8000", + "0x48127ffe7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff85", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x10bce98963d2e4d3c96d1d25422c3d2a989cdbb9fb71db6f95dcbfba8c4b3c8", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffef0", + "0x480a7ffc7fff8000", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff22", + "0x48127fe17fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff0", + "0x480a7ffa7fff8000", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff63", + "0x48127ffe7fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe2", + "0x480a7ff97fff8000", + "0x48127ffe7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff5c", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x222d6589b56d0ac1912a58387989f966f458b8de84e71844d58a394dafbd671", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffec7", + "0x480a7ffc7fff8000", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffef9", + "0x48127fe17fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff0", + "0x480a7ffa7fff8000", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff3a", + "0x48127ffe7fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe2", + "0x480a7ff97fff8000", + "0x48127ffe7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff33", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe9d", + "0x40137fff7fff8000", + "0x480680017fff8000", + "0x3774b0545aabb37c45c1eddc6a7dae57de498aae6d5e3589e362d4b4323a533", + "0x4002800080007fff", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe97", + "0x40137fff7fff8001", + "0x4003800080017ffc", + "0x4003800180017ffd", + "0x4826800180018000", + "0x2", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x480a80007fff8000", + "0x4828800180007ffc", + "0x480a80017fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff21", + "0x480a7ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe84", + "0x40137fff7fff8000", + "0x480680017fff8000", + "0x19b0b96cb0e0029733092527bca81129db5f327c064199b31ed8a9f857fdee3", + "0x4002800080007fff", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe7e", + "0x40137fff7fff8001", + "0x4003800080017ffc", + "0x4003800180017ffd", + "0x4826800180018000", + "0x2", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x480a80007fff8000", + "0x4828800180007ffc", + "0x480a80017fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff08", + "0x480a7ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe6b", + "0x40137fff7fff8000", + "0x480680017fff8000", + "0x3b7aa6f257721ed65dae25f8a1ee350b92d02cd59a9dcfb1fc4e8887be194ec", + "0x4002800080007fff", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe65", + "0x40137fff7fff8001", + "0x4003800080017ffc", + "0x4003800180017ffd", + "0x4826800180018000", + "0x2", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x480a80007fff8000", + "0x4828800180007ffc", + "0x480a80017fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffeef", + "0x480a7ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe52", + "0x40137fff7fff8000", + "0x480680017fff8000", + "0x4595132f9b33b7077ebf2e7f3eb746a8e0a6d5c337c71cd8f9bf46cac3cfd7", + "0x4002800080007fff", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe4c", + "0x40137fff7fff8001", + "0x4003800080017ffd", + "0x4826800180018000", + "0x1", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480a80007fff8000", + "0x4828800180007ffc", + "0x480a80017fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffed7", + "0x480a7ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff56", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x4003800080007ffc", + "0x4826800180008000", + "0x1", + "0x480a7ffd7fff8000", + "0x4828800080007ffe", + "0x480a80007fff8000", + "0x208b7fff7fff7ffe", + "0x482680017ffd8000", + "0x1", + "0x402a7ffd7ffc7fff", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x480280027ffb8000", + "0x480280007ffd8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffea", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffee", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff0e", + "0x400680017fff7fff", + "0x0", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe8b", + "0x48127ffe7fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff0f", + "0x48127fe97fff8000", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff32", + "0x48127ffd7fff8000", + "0x48127ffe7fff8000", + "0x48127fae7fff8000", + "0x48127fad7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff62", + "0x48127f967fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffaa", + "0x48127ffe7fff8000", + "0x48127fcc7fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x402b7ffd7ffc7ffd", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x480280027ffb8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffda", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0xc7", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffa7", + "0x400680017fff7fff", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff2d", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe4e", + "0x48127ffe7fff8000", + "0x48127ff87fff8000", + "0x480a7ffd7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff31", + "0x48127ffe7fff8000", + "0x48127fdd7fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x482680017ffd8000", + "0x1", + "0x402a7ffd7ffc7fff", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x480280027ffb8000", + "0x480280007ffd8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffdb", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x96", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffef8", + "0x20680017fff7fff", + "0x6", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffef8", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe19", + "0x48127ffe7fff8000", + "0x48127ff87fff8000", + "0x480a7ffd7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff15", + "0x48127ffe7fff8000", + "0x48127fdd7fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x482680017ffd8000", + "0x1", + "0x402a7ffd7ffc7fff", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x480280027ffb8000", + "0x480280007ffd8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd7", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x61", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff41", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffd92", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffdf0", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffd91", + "0x48127ffa7fff8000", + "0x48127ff07fff8000", + "0x48127ff07fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe98", + "0x48127ffd7fff8000", + "0x48127ffe7fff8000", + "0x480a7ffd7fff8000", + "0x48127fbc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffefa", + "0x48127ffe7fff8000", + "0x48127fe37fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x482680017ffd8000", + "0x1", + "0x402a7ffd7ffc7fff", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x480280027ffb8000", + "0x480280007ffd8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd8", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffdc6", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe8e", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffd5d", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127fbd7fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe92", + "0x48127f847fff8000", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe64", + "0x48127ffd7fff8000", + "0x48127ffe7fff8000", + "0x48127f497fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffee0", + "0x48127ffe7fff8000", + "0x48127fe47fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x402b7ffd7ffc7ffd", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x480280027ffb8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffdc", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffd96", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffedc", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffd2d", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffffe", + "0x400780017fff8000", + "0x0", + "0x400780017fff8001", + "0x0", + "0x48127ffe7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffc", + "0x5", + "0x480a7ffa7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x482680017ffc8000", + "0x800000000000011000000000000000000000000000000000000000000000000", + "0x40337fff7ffb8000", + "0x480a7ffb7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffd7fff8000", + "0x48317ffd80008000", + "0x400080007ffd7ffe", + "0x480080007ffc8000", + "0x400080017ffc7fff", + "0x482480017ffb8000", + "0x1", + "0x482480017ffb8000", + "0x3", + "0x480080027ffa8000", + "0x20680017fff7ffb", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff8", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480280007ffb8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe2", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd5", + "0x40137ffd7fff8000", + "0x480280017ffb8000", + "0x40297ffd7fff8001", + "0x48127ffb7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x480a7ffb7fff8000", + "0x480280007ffc8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcd9", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffc6", + "0x40137ffd7fff8000", + "0x480280017ffc8000", + "0x402580017fff8001", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480280007ffd8000", + "0x480280017ffd8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffccb", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcc3", + "0x40137fff7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x3c0ba99f1a18bcdc81fcbcb6b4f15a9a6725f937075aed6fac107ffcb147068", + "0x4829800080008000", + "0x480a80007fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffd1b", + "0x482480017fff8000", + "0x1", + "0x40307ffe7ffd7fff", + "0x48127ffc7fff8000", + "0x480a7ffc7fff8000", + "0x480080007ffc8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x3", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcaf", + "0x40137fff7fff8000", + "0x4003800080007ffc", + "0x400380007ffa7ffc", + "0x402780017ffa8001", + "0x1", + "0x4826800180008000", + "0x1", + "0x40297ffc7fff8002", + "0x4826800180008000", + "0x1", + "0x480a7ffd7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcaa", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x79dc0da7c54b95f10aa182ad0a46400db63156920adb65eca2654c0945a463", + "0x4829800080008002", + "0x480a80007fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcfa", + "0x48127ffd7fff8000", + "0x480a80017fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x3", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffc92", + "0x40137fff7fff8000", + "0x4003800080007ffc", + "0x400380007ffa7ffc", + "0x402780017ffa8001", + "0x1", + "0x4826800180008000", + "0x1", + "0x40297ffc7fff8002", + "0x4826800180008000", + "0x1", + "0x480a7ffd7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffc8d", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x3ea3b9a8522d36784cb325f9c7e2ec3c9f3e6d63031a6c6b8743cc22412f604", + "0x4829800080008002", + "0x480a80007fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcdd", + "0x48127ffd7fff8000", + "0x480a80017fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x3fc801c47df4de8d5835f8bfd4d0b8823ba63e5a3f278086901402d680abfc", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffffa", + "0x480a7ffb7fff8000", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcf3", + "0x48127ffe7fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffed", + "0x480a7ffa7fff8000", + "0x48127ffe7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffced", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1ac8d354f2e793629cb233a16f10d13cf15b9c45bbc620577c8e1df95ede545", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffc58", + "0x480a7ffc7fff8000", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffc8a", + "0x48127fe17fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff0", + "0x480a7ffa7fff8000", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffccb", + "0x48127ffe7fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe2", + "0x480a7ff97fff8000", + "0x48127ffe7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcc4", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x5d2e9527cbeb1a51aa084b0de7501f343b7b1bf24a0c427d6204a7b7988970", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffffa", + "0x480a7ffb7fff8000", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcac", + "0x48127ffe7fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffed", + "0x480a7ffa7fff8000", + "0x48127ffe7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffca6", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x4", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffc10", + "0x40137fff7fff8000", + "0x480680017fff8000", + "0x2e8a4ec40a36a027111fafdb6a46746ff1b0125d5067fbaebd8b5f227185a1e", + "0x4002800080007fff", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffc0a", + "0x40137fff7fff8001", + "0x4003800080017ff9", + "0x4003800180017ffa", + "0x4003800280017ffb", + "0x400380007ff87ffb", + "0x402780017ff88002", + "0x1", + "0x4826800180018000", + "0x3", + "0x40297ffb7fff8003", + "0x4826800180018000", + "0x3", + "0x480a7ffc7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffc03", + "0x4003800080037ffd", + "0x4826800180038000", + "0x1", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x480a80007fff8000", + "0x4828800180007ffc", + "0x480a80017fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffc86", + "0x480a80027fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x4", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffbe9", + "0x40137fff7fff8000", + "0x480680017fff8000", + "0x3ef46b1f8c5c94765c1d63fb24422442ea26f49289a18ba89c4138ebf450f6c", + "0x4002800080007fff", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffbe3", + "0x40137fff7fff8001", + "0x4003800080017ff9", + "0x4003800180017ffa", + "0x4003800280017ffb", + "0x400380007ff87ffb", + "0x402780017ff88002", + "0x1", + "0x4826800180018000", + "0x3", + "0x40297ffb7fff8003", + "0x4826800180018000", + "0x3", + "0x480a7ffc7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffbdc", + "0x4003800080037ffd", + "0x4826800180038000", + "0x1", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x480a80007fff8000", + "0x4828800180007ffc", + "0x480a80017fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffc5f", + "0x480a80027fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x4", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffbc2", + "0x40137fff7fff8000", + "0x480680017fff8000", + "0x1205ec81562fc65c367136bd2fe1c0fff2d1986f70e4ba365e5dd747bd08753", + "0x4002800080007fff", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffbbc", + "0x40137fff7fff8001", + "0x4003800080017ffa", + "0x4003800180017ffb", + "0x4003800280017ffc", + "0x400380007ff97ffc", + "0x402780017ff98002", + "0x1", + "0x4826800180018000", + "0x3", + "0x40297ffc7fff8003", + "0x4826800180018000", + "0x3", + "0x480a7ffd7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffbb5", + "0x480a7ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480a80007fff8000", + "0x4829800180008003", + "0x480a80017fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffc3b", + "0x480a80027fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffb9e", + "0x40137fff7fff8000", + "0x480680017fff8000", + "0x2c6e1be7705f64cd4ec61d51a0c8e64ceed5e787198bd3291469fb870578922", + "0x4002800080007fff", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffb98", + "0x40137fff7fff8001", + "0x4003800080017ffd", + "0x4826800180018000", + "0x1", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480a80007fff8000", + "0x4828800180007ffc", + "0x480a80017fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffc23", + "0x480a7ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff5b", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x4003800080007ffc", + "0x4826800180008000", + "0x1", + "0x480a7ffd7fff8000", + "0x4828800080007ffe", + "0x480a80007fff8000", + "0x208b7fff7fff7ffe", + "0x402b7ffd7ffc7ffd", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x480280027ffb8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffee", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff1", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1a7", + "0x480a7ff67fff8000", + "0x48127ffd7fff8000", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff14", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x4003800080007ffc", + "0x4826800180008000", + "0x1", + "0x480a7ffd7fff8000", + "0x4828800080007ffe", + "0x480a80007fff8000", + "0x208b7fff7fff7ffe", + "0x480280027ffb8000", + "0x480280027ffd8000", + "0x400080007ffe7fff", + "0x482680017ffd8000", + "0x3", + "0x480280027ffd8000", + "0x48307fff7ffe8000", + "0x482480017fff8000", + "0x1", + "0x402a7ffd7ffc7fff", + "0x480280027ffb8000", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x482480017ffd8000", + "0x1", + "0x480280007ffd8000", + "0x480280017ffd8000", + "0x480280027ffd8000", + "0x482680017ffd8000", + "0x3", + "0x480080007ff68000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd4", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe0", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x5", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe10", + "0x480a7ff97fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffb42", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffba7", + "0x40137fff7fff8000", + "0x48127ffe7fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffeb0", + "0x40137fff7fff8001", + "0x40137ffc7fff8002", + "0x40137ffe7fff8003", + "0x48127ffd7fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x159", + "0x480a80027fff8000", + "0x48127ffd7fff8000", + "0x480a80037fff8000", + "0x48127ffc7fff8000", + "0x482a800180008000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffed3", + "0x40137ffe7fff8004", + "0x48127ffd7fff8000", + "0x48127ffe7fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffef4", + "0x48127ffe7fff8000", + "0x480a80047fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480280027ffb8000", + "0x480280027ffd8000", + "0x400080007ffe7fff", + "0x482680017ffd8000", + "0x3", + "0x480280027ffd8000", + "0x48307fff7ffe8000", + "0x482480017fff8000", + "0x1", + "0x402a7ffd7ffc7fff", + "0x480280027ffb8000", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x482480017ffd8000", + "0x1", + "0x480280007ffd8000", + "0x480280017ffd8000", + "0x480280027ffd8000", + "0x482680017ffd8000", + "0x3", + "0x480080007ff68000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffb9", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x3", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffdbd", + "0x40137ffd7fff8000", + "0x40137fff7fff8001", + "0x48127ffe7fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x113", + "0x480a80007fff8000", + "0x48127ffd7fff8000", + "0x480a80017fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe80", + "0x20680017fff7fff", + "0x6", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127fbf7fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe80", + "0x40137ffe7fff8002", + "0x48127ffd7fff8000", + "0x48127ffe7fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffec8", + "0x48127ffe7fff8000", + "0x480a80027fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480280027ffb8000", + "0x480280027ffd8000", + "0x400080007ffe7fff", + "0x482680017ffd8000", + "0x3", + "0x480280027ffd8000", + "0x48307fff7ffe8000", + "0x482480017fff8000", + "0x1", + "0x402a7ffd7ffc7fff", + "0x480280027ffb8000", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x482480017ffd8000", + "0x1", + "0x480280007ffd8000", + "0x480280017ffd8000", + "0x480280027ffd8000", + "0x482680017ffd8000", + "0x3", + "0x480080007ff68000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffb9", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x9", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffd6a", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffb62", + "0x40137fff7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffb01", + "0x40137fff7fff8001", + "0x40137ffe7fff8002", + "0x48127ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xba", + "0x480a80027fff8000", + "0x48127ffd7fff8000", + "0x480a80007fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe27", + "0x40137fff7fff8003", + "0x480a80037fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffa85", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffee1", + "0x40137fff7fff8004", + "0x40137ffc7fff8005", + "0x40137ffd7fff8006", + "0x20780017fff8004", + "0x5", + "0x48127ffe7fff8000", + "0x10780017fff7fff", + "0x7", + "0x48127ffe7fff8000", + "0x480a80037fff8000", + "0x480a80017fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffa82", + "0x480a80057fff8000", + "0x480a80067fff8000", + "0x48127ffd7fff8000", + "0x480a7ff97fff8000", + "0x1104800180018000", + "0x8f", + "0x40137ffe7fff8007", + "0x48127ffd7fff8000", + "0x48127ffe7fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe89", + "0x48127ffe7fff8000", + "0x480a80077fff8000", + "0x48127ffd7fff8000", + "0x480a7ffd7fff8000", + "0x480a7ff97fff8000", + "0x1104800180018000", + "0x6b", + "0x40137ffe7fff8008", + "0x20780017fff7ffa", + "0x4", + "0x10780017fff7fff", + "0xd", + "0x48127ffd7fff8000", + "0x48127ffe7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffda6", + "0x48127ffe7fff8000", + "0x480a80087fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffd7fff8000", + "0x48127ffe7fff8000", + "0x480a7ff97fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffd6c", + "0x20680017fff7fff", + "0xd", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffd77", + "0x48127ffe7fff8000", + "0x480a80087fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffd7fff8000", + "0x480a80087fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480280027ffb8000", + "0x480280027ffd8000", + "0x400080007ffe7fff", + "0x482680017ffd8000", + "0x3", + "0x480280027ffd8000", + "0x48307fff7ffe8000", + "0x482480017fff8000", + "0x1", + "0x402a7ffd7ffc7fff", + "0x480280027ffb8000", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x482480017ffd8000", + "0x1", + "0x480280007ffd8000", + "0x480280017ffd8000", + "0x480280027ffd8000", + "0x482680017ffd8000", + "0x3", + "0x480080007ff68000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff7d", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x400680017fff7fff", + "0x0", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480280027ffb8000", + "0x480280007ffd8000", + "0x400080007ffe7fff", + "0x482680017ffd8000", + "0x1", + "0x480280007ffd8000", + "0x48307fff7ffe8000", + "0x402a7ffd7ffc7fff", + "0x480280027ffb8000", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x482480017ffd8000", + "0x1", + "0x480280007ffd8000", + "0x482680017ffd8000", + "0x1", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe9", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffc", + "0x6", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffab9", + "0x48127ffd7fff8000", + "0x48127ffe7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe2d", + "0x48127ffe7fff8000", + "0x48127fe47fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffca6", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffda3", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x0", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcae", + "0x480a7ff87fff8000", + "0x48127ffe7fff8000", + "0x480a7ff97fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcdc", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcd9", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcd6", + "0x480a7ffc7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcc2", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffccf", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcdd", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffd3c", + "0x208b7fff7fff7ffe", + "0x482680017ffd8000", + "0x1", + "0x402a7ffd7ffc7fff", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x480280027ffb8000", + "0x480280007ffd8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff3", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe01", + "0x48127ffc7fff8000", + "0x48127ffe7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff9e2", + "0x48127ffd7fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x480280027ffb8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe9", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffde6", + "0x48127ffc7fff8000", + "0x48127ffe7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff9d3", + "0x48127ffd7fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x208b7fff7fff7ffe", + "0x480280007ffb8000", + "0x480280017ffb8000", + "0x480280027ffb8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffeb", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe" + ], + "debug_info": null, + "hints": { + "0": [ + { + "accessible_scopes": [ + "starkware.cairo.common.alloc", + "starkware.cairo.common.alloc.alloc" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 0, + "offset": 0 + }, + "reference_ids": {} + } + } + ], + "12": [ + { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "code": "vm_enter_scope({'n': ids.len})", + "flow_tracking_data": { + "ap_tracking": { + "group": 2, + "offset": 0 + }, + "reference_ids": { + "starkware.cairo.common.memcpy.memcpy.dst": 5, + "starkware.cairo.common.memcpy.memcpy.len": 7, + "starkware.cairo.common.memcpy.memcpy.src": 6 + } + } + } + ], + "20": [ + { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "code": "n -= 1\nids.continue_copying = 1 if n > 0 else 0", + "flow_tracking_data": { + "ap_tracking": { + "group": 2, + "offset": 5 + }, + "reference_ids": { + "starkware.cairo.common.memcpy.memcpy.__temp0": 10, + "starkware.cairo.common.memcpy.memcpy.continue_copying": 11, + "starkware.cairo.common.memcpy.memcpy.dst": 5, + "starkware.cairo.common.memcpy.memcpy.frame": 9, + "starkware.cairo.common.memcpy.memcpy.len": 7, + "starkware.cairo.common.memcpy.memcpy.next_frame": 12, + "starkware.cairo.common.memcpy.memcpy.src": 6 + } + } + } + ], + "23": [ + { + "accessible_scopes": [ + "starkware.cairo.common.memcpy", + "starkware.cairo.common.memcpy.memcpy" + ], + "code": "vm_exit_scope()", + "flow_tracking_data": { + "ap_tracking": { + "group": 2, + "offset": 6 + }, + "reference_ids": { + "starkware.cairo.common.memcpy.memcpy.__temp0": 10, + "starkware.cairo.common.memcpy.memcpy.continue_copying": 11, + "starkware.cairo.common.memcpy.memcpy.dst": 5, + "starkware.cairo.common.memcpy.memcpy.frame": 9, + "starkware.cairo.common.memcpy.memcpy.len": 7, + "starkware.cairo.common.memcpy.memcpy.next_frame": 12, + "starkware.cairo.common.memcpy.memcpy.src": 6 + } + } + } + ], + "24": [ + { + "accessible_scopes": [ + "starkware.cairo.common.math", + "starkware.cairo.common.math.assert_not_zero" + ], + "code": "from starkware.cairo.common.math_utils import assert_integer\nassert_integer(ids.value)\nassert ids.value % PRIME != 0, f'assert_not_zero failed: {ids.value} = 0.'", + "flow_tracking_data": { + "ap_tracking": { + "group": 3, + "offset": 0 + }, + "reference_ids": { + "starkware.cairo.common.math.assert_not_zero.value": 13 + } + } + } + ], + "29": [ + { + "accessible_scopes": [ + "starkware.cairo.common.math", + "starkware.cairo.common.math.assert_not_equal" + ], + "code": "from starkware.cairo.lang.vm.relocatable import RelocatableValue\nboth_ints = isinstance(ids.a, int) and isinstance(ids.b, int)\nboth_relocatable = (\n isinstance(ids.a, RelocatableValue) and isinstance(ids.b, RelocatableValue) and\n ids.a.segment_index == ids.b.segment_index)\nassert both_ints or both_relocatable, \\\n f'assert_not_equal failed: non-comparable values: {ids.a}, {ids.b}.'\nassert (ids.a - ids.b) % PRIME != 0, f'assert_not_equal failed: {ids.a} = {ids.b}.'", + "flow_tracking_data": { + "ap_tracking": { + "group": 4, + "offset": 0 + }, + "reference_ids": { + "starkware.cairo.common.math.assert_not_equal.a": 14, + "starkware.cairo.common.math.assert_not_equal.b": 15 + } + } + } + ], + "35": [ + { + "accessible_scopes": [ + "starkware.cairo.common.math", + "starkware.cairo.common.math.assert_nn" + ], + "code": "from starkware.cairo.common.math_utils import assert_integer\nassert_integer(ids.a)\nassert 0 <= ids.a % PRIME < range_check_builtin.bound, f'a = {ids.a} is out of range.'", + "flow_tracking_data": { + "ap_tracking": { + "group": 5, + "offset": 0 + }, + "reference_ids": { + "starkware.cairo.common.math.assert_nn.a": 17, + "starkware.cairo.common.math.assert_nn.range_check_ptr": 18 + } + } + } + ], + "44": [ + { + "accessible_scopes": [ + "starkware.cairo.common.math", + "starkware.cairo.common.math.assert_250_bit" + ], + "code": "from starkware.cairo.common.math_utils import as_int\n\n# Correctness check.\nvalue = as_int(ids.value, PRIME) % PRIME\nassert value < ids.UPPER_BOUND, f'{value} is outside of the range [0, 2**250).'\n\n# Calculation for the assertion.\nids.high, ids.low = divmod(ids.value, ids.SHIFT)", + "flow_tracking_data": { + "ap_tracking": { + "group": 7, + "offset": 0 + }, + "reference_ids": { + "starkware.cairo.common.math.assert_250_bit.high": 27, + "starkware.cairo.common.math.assert_250_bit.low": 26, + "starkware.cairo.common.math.assert_250_bit.range_check_ptr": 25, + "starkware.cairo.common.math.assert_250_bit.value": 24 + } + } + } + ], + "59": [ + { + "accessible_scopes": [ + "starkware.starknet.common.storage", + "starkware.starknet.common.storage.normalize_address" + ], + "code": "# Verify the assumptions on the relationship between 2**250, ADDR_BOUND and PRIME.\nADDR_BOUND = ids.ADDR_BOUND % PRIME\nassert (2**250 < ADDR_BOUND <= 2**251) and (2 * 2**250 < PRIME) and (\n ADDR_BOUND * 2 > PRIME), \\\n 'normalize_address() cannot be used with the current constants.'\nids.is_small = 1 if ids.addr < ADDR_BOUND else 0", + "flow_tracking_data": { + "ap_tracking": { + "group": 8, + "offset": 1 + }, + "reference_ids": { + "starkware.starknet.common.storage.normalize_address.addr": 35, + "starkware.starknet.common.storage.normalize_address.is_small": 37, + "starkware.starknet.common.storage.normalize_address.range_check_ptr": 36 + } + } + } + ], + "77": [ + { + "accessible_scopes": [ + "starkware.starknet.common.storage", + "starkware.starknet.common.storage.normalize_address" + ], + "code": "ids.is_250 = 1 if ids.addr < 2**250 else 0", + "flow_tracking_data": { + "ap_tracking": { + "group": 8, + "offset": 2 + }, + "reference_ids": { + "starkware.starknet.common.storage.normalize_address.addr": 35, + "starkware.starknet.common.storage.normalize_address.is_250": 43, + "starkware.starknet.common.storage.normalize_address.is_small": 37, + "starkware.starknet.common.storage.normalize_address.range_check_ptr": 36 + } + } + } + ], + "104": [ + { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.delegate_call" + ], + "code": "syscall_handler.delegate_call(segments=segments, syscall_ptr=ids.syscall_ptr)", + "flow_tracking_data": { + "ap_tracking": { + "group": 9, + "offset": 1 + }, + "reference_ids": { + "starkware.starknet.common.syscalls.delegate_call.__temp10": 54, + "starkware.starknet.common.syscalls.delegate_call.calldata": 51, + "starkware.starknet.common.syscalls.delegate_call.calldata_size": 50, + "starkware.starknet.common.syscalls.delegate_call.contract_address": 48, + "starkware.starknet.common.syscalls.delegate_call.function_selector": 49, + "starkware.starknet.common.syscalls.delegate_call.syscall": 53, + "starkware.starknet.common.syscalls.delegate_call.syscall_ptr": 52 + } + } + } + ], + "116": [ + { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.delegate_l1_handler" + ], + "code": "syscall_handler.delegate_l1_handler(segments=segments, syscall_ptr=ids.syscall_ptr)", + "flow_tracking_data": { + "ap_tracking": { + "group": 10, + "offset": 1 + }, + "reference_ids": { + "starkware.starknet.common.syscalls.delegate_l1_handler.__temp11": 63, + "starkware.starknet.common.syscalls.delegate_l1_handler.calldata": 60, + "starkware.starknet.common.syscalls.delegate_l1_handler.calldata_size": 59, + "starkware.starknet.common.syscalls.delegate_l1_handler.contract_address": 57, + "starkware.starknet.common.syscalls.delegate_l1_handler.function_selector": 58, + "starkware.starknet.common.syscalls.delegate_l1_handler.syscall": 62, + "starkware.starknet.common.syscalls.delegate_l1_handler.syscall_ptr": 61 + } + } + } + ], + "124": [ + { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.get_caller_address" + ], + "code": "syscall_handler.get_caller_address(segments=segments, syscall_ptr=ids.syscall_ptr)", + "flow_tracking_data": { + "ap_tracking": { + "group": 11, + "offset": 1 + }, + "reference_ids": { + "starkware.starknet.common.syscalls.get_caller_address.__temp12": 68, + "starkware.starknet.common.syscalls.get_caller_address.syscall": 67, + "starkware.starknet.common.syscalls.get_caller_address.syscall_ptr": 66 + } + } + } + ], + "131": [ + { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.get_block_timestamp" + ], + "code": "syscall_handler.get_block_timestamp(segments=segments, syscall_ptr=ids.syscall_ptr)", + "flow_tracking_data": { + "ap_tracking": { + "group": 12, + "offset": 1 + }, + "reference_ids": { + "starkware.starknet.common.syscalls.get_block_timestamp.__temp13": 72, + "starkware.starknet.common.syscalls.get_block_timestamp.syscall": 71, + "starkware.starknet.common.syscalls.get_block_timestamp.syscall_ptr": 70 + } + } + } + ], + "139": [ + { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.storage_read" + ], + "code": "syscall_handler.storage_read(segments=segments, syscall_ptr=ids.syscall_ptr)", + "flow_tracking_data": { + "ap_tracking": { + "group": 13, + "offset": 1 + }, + "reference_ids": { + "starkware.starknet.common.syscalls.storage_read.__temp14": 77, + "starkware.starknet.common.syscalls.storage_read.address": 74, + "starkware.starknet.common.syscalls.storage_read.syscall": 76, + "starkware.starknet.common.syscalls.storage_read.syscall_ptr": 75 + } + } + } + ], + "148": [ + { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.storage_write" + ], + "code": "syscall_handler.storage_write(segments=segments, syscall_ptr=ids.syscall_ptr)", + "flow_tracking_data": { + "ap_tracking": { + "group": 14, + "offset": 1 + }, + "reference_ids": { + "starkware.starknet.common.syscalls.storage_write.__temp15": 83, + "starkware.starknet.common.syscalls.storage_write.address": 80, + "starkware.starknet.common.syscalls.storage_write.syscall_ptr": 82, + "starkware.starknet.common.syscalls.storage_write.value": 81 + } + } + } + ], + "158": [ + { + "accessible_scopes": [ + "starkware.starknet.common.syscalls", + "starkware.starknet.common.syscalls.emit_event" + ], + "code": "syscall_handler.emit_event(segments=segments, syscall_ptr=ids.syscall_ptr)", + "flow_tracking_data": { + "ap_tracking": { + "group": 15, + "offset": 1 + }, + "reference_ids": { + "starkware.starknet.common.syscalls.emit_event.__temp16": 90, + "starkware.starknet.common.syscalls.emit_event.data": 88, + "starkware.starknet.common.syscalls.emit_event.data_len": 87, + "starkware.starknet.common.syscalls.emit_event.keys": 86, + "starkware.starknet.common.syscalls.emit_event.keys_len": 85, + "starkware.starknet.common.syscalls.emit_event.syscall_ptr": 89 + } + } + } + ], + "197": [ + { + "accessible_scopes": [ + "starkware.starknet.apps.upgradability_proxy.finalizable", + "starkware.starknet.apps.upgradability_proxy.finalizable", + "__wrappers__", + "__wrappers__.finalized_encode_return" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 20, + "offset": 0 + }, + "reference_ids": { + "__wrappers__.finalized_encode_return.range_check_ptr": 123, + "__wrappers__.finalized_encode_return.ret_struct": 122 + } + } + } + ], + "460": [ + { + "accessible_scopes": [ + "starkware.starknet.apps.upgradability_proxy.governance", + "starkware.starknet.apps.upgradability_proxy.governance", + "__wrappers__", + "__wrappers__.is_governor_encode_return" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 38, + "offset": 0 + }, + "reference_ids": { + "__wrappers__.is_governor_encode_return.range_check_ptr": 302, + "__wrappers__.is_governor_encode_return.ret_struct": 301 + } + } + } + ], + "528": [ + { + "accessible_scopes": [ + "starkware.starknet.apps.upgradability_proxy.governance", + "starkware.starknet.apps.upgradability_proxy.governance", + "__wrappers__", + "__wrappers__.init_governance" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 41, + "offset": 165 + }, + "reference_ids": { + "__wrappers__.init_governance.__calldata_actual_size": 345, + "__wrappers__.init_governance.__calldata_ptr": 344, + "__wrappers__.init_governance.pedersen_ptr": 347, + "__wrappers__.init_governance.range_check_ptr": 348, + "__wrappers__.init_governance.ret_struct": 349, + "__wrappers__.init_governance.syscall_ptr": 346 + } + } + } + ], + "577": [ + { + "accessible_scopes": [ + "starkware.starknet.apps.upgradability_proxy.governance", + "starkware.starknet.apps.upgradability_proxy.governance", + "__wrappers__", + "__wrappers__.nominate_new_governor" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 45, + "offset": 0 + }, + "reference_ids": { + "__wrappers__.nominate_new_governor.__calldata_actual_size": 376, + "__wrappers__.nominate_new_governor.__calldata_arg_nominee": 374, + "__wrappers__.nominate_new_governor.__calldata_ptr": 375, + "__wrappers__.nominate_new_governor.__temp28": 377, + "__wrappers__.nominate_new_governor.pedersen_ptr": 379, + "__wrappers__.nominate_new_governor.range_check_ptr": 380, + "__wrappers__.nominate_new_governor.ret_struct": 381, + "__wrappers__.nominate_new_governor.syscall_ptr": 378 + } + } + } + ], + "630": [ + { + "accessible_scopes": [ + "starkware.starknet.apps.upgradability_proxy.governance", + "starkware.starknet.apps.upgradability_proxy.governance", + "__wrappers__", + "__wrappers__.cancel_nomination" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 49, + "offset": 0 + }, + "reference_ids": { + "__wrappers__.cancel_nomination.__calldata_actual_size": 408, + "__wrappers__.cancel_nomination.__calldata_arg_cancelee": 406, + "__wrappers__.cancel_nomination.__calldata_ptr": 407, + "__wrappers__.cancel_nomination.__temp29": 409, + "__wrappers__.cancel_nomination.pedersen_ptr": 411, + "__wrappers__.cancel_nomination.range_check_ptr": 412, + "__wrappers__.cancel_nomination.ret_struct": 413, + "__wrappers__.cancel_nomination.syscall_ptr": 410 + } + } + } + ], + "682": [ + { + "accessible_scopes": [ + "starkware.starknet.apps.upgradability_proxy.governance", + "starkware.starknet.apps.upgradability_proxy.governance", + "__wrappers__", + "__wrappers__.remove_governor" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 53, + "offset": 0 + }, + "reference_ids": { + "__wrappers__.remove_governor.__calldata_actual_size": 440, + "__wrappers__.remove_governor.__calldata_arg_removee": 438, + "__wrappers__.remove_governor.__calldata_ptr": 439, + "__wrappers__.remove_governor.__temp30": 441, + "__wrappers__.remove_governor.pedersen_ptr": 443, + "__wrappers__.remove_governor.range_check_ptr": 444, + "__wrappers__.remove_governor.ret_struct": 445, + "__wrappers__.remove_governor.syscall_ptr": 442 + } + } + } + ], + "730": [ + { + "accessible_scopes": [ + "starkware.starknet.apps.upgradability_proxy.governance", + "starkware.starknet.apps.upgradability_proxy.governance", + "__wrappers__", + "__wrappers__.accept_governance" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 55, + "offset": 219 + }, + "reference_ids": { + "__wrappers__.accept_governance.__calldata_actual_size": 469, + "__wrappers__.accept_governance.__calldata_ptr": 468, + "__wrappers__.accept_governance.pedersen_ptr": 471, + "__wrappers__.accept_governance.range_check_ptr": 472, + "__wrappers__.accept_governance.ret_struct": 473, + "__wrappers__.accept_governance.syscall_ptr": 470 + } + } + } + ], + "1151": [ + { + "accessible_scopes": [ + "starkware.starknet.apps.upgradability_proxy.proxy_impl", + "starkware.starknet.apps.upgradability_proxy.proxy_impl", + "__wrappers__", + "__wrappers__.implementation_encode_return" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 86, + "offset": 0 + }, + "reference_ids": { + "__wrappers__.implementation_encode_return.range_check_ptr": 728, + "__wrappers__.implementation_encode_return.ret_struct": 727 + } + } + } + ], + "1190": [ + { + "accessible_scopes": [ + "starkware.starknet.apps.upgradability_proxy.proxy_impl", + "starkware.starknet.apps.upgradability_proxy.proxy_impl", + "__wrappers__", + "__wrappers__.implementation_time_encode_return" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 90, + "offset": 0 + }, + "reference_ids": { + "__wrappers__.implementation_time_encode_return.range_check_ptr": 760, + "__wrappers__.implementation_time_encode_return.ret_struct": 759 + } + } + } + ], + "1305": [ + { + "accessible_scopes": [ + "starkware.starknet.apps.upgradability_proxy.proxy_impl", + "starkware.starknet.apps.upgradability_proxy.proxy_impl", + "__wrappers__", + "__wrappers__.add_implementation" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 97, + "offset": 0 + }, + "reference_ids": { + "__wrappers__.add_implementation.__calldata_actual_size": 842, + "__wrappers__.add_implementation.__calldata_arg_eic_address": 829, + "__wrappers__.add_implementation.__calldata_arg_final": 840, + "__wrappers__.add_implementation.__calldata_arg_implementation_": 827, + "__wrappers__.add_implementation.__calldata_arg_init_vector": 836, + "__wrappers__.add_implementation.__calldata_arg_init_vector_len": 831, + "__wrappers__.add_implementation.__calldata_ptr": 841, + "__wrappers__.add_implementation.__temp56": 833, + "__wrappers__.add_implementation.__temp57": 834, + "__wrappers__.add_implementation.__temp58": 837, + "__wrappers__.add_implementation.__temp59": 838, + "__wrappers__.add_implementation.__temp60": 843, + "__wrappers__.add_implementation.__temp61": 844, + "__wrappers__.add_implementation.pedersen_ptr": 846, + "__wrappers__.add_implementation.range_check_ptr": 847, + "__wrappers__.add_implementation.ret_struct": 848, + "__wrappers__.add_implementation.syscall_ptr": 845 + } + } + } + ], + "1388": [ + { + "accessible_scopes": [ + "starkware.starknet.apps.upgradability_proxy.proxy_impl", + "starkware.starknet.apps.upgradability_proxy.proxy_impl", + "__wrappers__", + "__wrappers__.remove_implementation" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 102, + "offset": 0 + }, + "reference_ids": { + "__wrappers__.remove_implementation.__calldata_actual_size": 895, + "__wrappers__.remove_implementation.__calldata_arg_eic_address": 882, + "__wrappers__.remove_implementation.__calldata_arg_final": 893, + "__wrappers__.remove_implementation.__calldata_arg_implementation_": 880, + "__wrappers__.remove_implementation.__calldata_arg_init_vector": 889, + "__wrappers__.remove_implementation.__calldata_arg_init_vector_len": 884, + "__wrappers__.remove_implementation.__calldata_ptr": 894, + "__wrappers__.remove_implementation.__temp62": 886, + "__wrappers__.remove_implementation.__temp63": 887, + "__wrappers__.remove_implementation.__temp64": 890, + "__wrappers__.remove_implementation.__temp65": 891, + "__wrappers__.remove_implementation.__temp66": 896, + "__wrappers__.remove_implementation.__temp67": 897, + "__wrappers__.remove_implementation.pedersen_ptr": 899, + "__wrappers__.remove_implementation.range_check_ptr": 900, + "__wrappers__.remove_implementation.ret_struct": 901, + "__wrappers__.remove_implementation.syscall_ptr": 898 + } + } + } + ], + "1531": [ + { + "accessible_scopes": [ + "starkware.starknet.apps.upgradability_proxy.proxy_impl", + "starkware.starknet.apps.upgradability_proxy.proxy_impl", + "__wrappers__", + "__wrappers__.upgrade_to" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 112, + "offset": 0 + }, + "reference_ids": { + "__wrappers__.upgrade_to.__calldata_actual_size": 977, + "__wrappers__.upgrade_to.__calldata_arg_eic_address": 964, + "__wrappers__.upgrade_to.__calldata_arg_final": 975, + "__wrappers__.upgrade_to.__calldata_arg_implementation_": 962, + "__wrappers__.upgrade_to.__calldata_arg_init_vector": 971, + "__wrappers__.upgrade_to.__calldata_arg_init_vector_len": 966, + "__wrappers__.upgrade_to.__calldata_ptr": 976, + "__wrappers__.upgrade_to.__temp68": 968, + "__wrappers__.upgrade_to.__temp69": 969, + "__wrappers__.upgrade_to.__temp70": 972, + "__wrappers__.upgrade_to.__temp71": 973, + "__wrappers__.upgrade_to.__temp72": 978, + "__wrappers__.upgrade_to.__temp73": 979, + "__wrappers__.upgrade_to.pedersen_ptr": 981, + "__wrappers__.upgrade_to.range_check_ptr": 982, + "__wrappers__.upgrade_to.ret_struct": 983, + "__wrappers__.upgrade_to.syscall_ptr": 980 + } + } + } + ], + "1566": [ + { + "accessible_scopes": [ + "starkware.starknet.apps.upgradability_proxy.proxy_impl", + "starkware.starknet.apps.upgradability_proxy.proxy_impl", + "__wrappers__", + "__wrappers__.initialize" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 114, + "offset": 17 + }, + "reference_ids": { + "__wrappers__.initialize.__calldata_actual_size": 1005, + "__wrappers__.initialize.__calldata_arg_init_vector": 1001, + "__wrappers__.initialize.__calldata_arg_init_vector_len": 996, + "__wrappers__.initialize.__calldata_ptr": 1004, + "__wrappers__.initialize.__temp75": 998, + "__wrappers__.initialize.__temp76": 999, + "__wrappers__.initialize.__temp77": 1002, + "__wrappers__.initialize.__temp78": 1003, + "__wrappers__.initialize.__temp79": 1006, + "__wrappers__.initialize.pedersen_ptr": 1008, + "__wrappers__.initialize.range_check_ptr": 1009, + "__wrappers__.initialize.ret_struct": 1010, + "__wrappers__.initialize.syscall_ptr": 1007 + } + } + } + ], + "1645": [ + { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.constructor" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 120, + "offset": 29 + }, + "reference_ids": { + "__wrappers__.constructor.__calldata_actual_size": 1067, + "__wrappers__.constructor.__calldata_arg_upgrade_delay_seconds": 1065, + "__wrappers__.constructor.__calldata_ptr": 1066, + "__wrappers__.constructor.__temp80": 1068, + "__wrappers__.constructor.pedersen_ptr": 1070, + "__wrappers__.constructor.range_check_ptr": 1071, + "__wrappers__.constructor.ret_struct": 1072, + "__wrappers__.constructor.syscall_ptr": 1069 + } + } + } + ], + "1705": [ + { + "accessible_scopes": [ + "__main__", + "__main__", + "__wrappers__", + "__wrappers__.__l1_default__" + ], + "code": "memory[ap] = segments.add()", + "flow_tracking_data": { + "ap_tracking": { + "group": 124, + "offset": 50 + }, + "reference_ids": { + "__wrappers__.__l1_default__.pedersen_ptr": 1112, + "__wrappers__.__l1_default__.range_check_ptr": 1113, + "__wrappers__.__l1_default__.ret_struct": 1114, + "__wrappers__.__l1_default__.syscall_ptr": 1111 + } + } + } + ] + }, + "identifiers": { + "__main__.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "__main__.__default__": { + "decorators": ["external", "raw_input", "raw_output"], + "pc": 1654, + "type": "function" + }, + "__main__.__default__.Args": { + "full_name": "__main__.__default__.Args", + "members": { + "calldata": { + "cairo_type": "felt*", + "offset": 2 + }, + "calldata_size": { + "cairo_type": "felt", + "offset": 1 + }, + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "__main__.__default__.ImplicitArgs": { + "full_name": "__main__.__default__.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "__main__.__default__.Return": { + "full_name": "__main__.__default__.Return", + "members": { + "retdata": { + "cairo_type": "felt*", + "offset": 1 + }, + "retdata_size": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "__main__.__default__.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__main__.__default__.address": { + "cairo_type": "felt", + "full_name": "__main__.__default__.address", + "references": [ + { + "ap_tracking_data": { + "group": 121, + "offset": 28 + }, + "pc": 1659, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__main__.__default__.calldata": { + "cairo_type": "felt*", + "full_name": "__main__.__default__.calldata", + "references": [ + { + "ap_tracking_data": { + "group": 121, + "offset": 0 + }, + "pc": 1654, + "value": "[cast(fp + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__main__.__default__.calldata_size": { + "cairo_type": "felt", + "full_name": "__main__.__default__.calldata_size", + "references": [ + { + "ap_tracking_data": { + "group": 121, + "offset": 0 + }, + "pc": 1654, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "__main__.__default__.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__main__.__default__.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 121, + "offset": 0 + }, + "pc": 1654, + "value": "[cast(fp + (-7), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 28 + }, + "pc": 1659, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__main__.__default__.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__main__.__default__.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 121, + "offset": 0 + }, + "pc": 1654, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 28 + }, + "pc": 1659, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "__main__.__default__.retdata": { + "cairo_type": "felt*", + "full_name": "__main__.__default__.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 121, + "offset": 39 + }, + "pc": 1666, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__main__.__default__.retdata_size": { + "cairo_type": "felt", + "full_name": "__main__.__default__.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 121, + "offset": 39 + }, + "pc": 1666, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "__main__.__default__.selector": { + "cairo_type": "felt", + "full_name": "__main__.__default__.selector", + "references": [ + { + "ap_tracking_data": { + "group": 121, + "offset": 0 + }, + "pc": 1654, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "__main__.__default__.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__main__.__default__.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 121, + "offset": 0 + }, + "pc": 1654, + "value": "[cast(fp + (-8), felt**)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 28 + }, + "pc": 1659, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 39 + }, + "pc": 1666, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__main__.__l1_default__": { + "decorators": ["l1_handler", "raw_input"], + "pc": 1681, + "type": "function" + }, + "__main__.__l1_default__.Args": { + "full_name": "__main__.__l1_default__.Args", + "members": { + "calldata": { + "cairo_type": "felt*", + "offset": 2 + }, + "calldata_size": { + "cairo_type": "felt", + "offset": 1 + }, + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "__main__.__l1_default__.ImplicitArgs": { + "full_name": "__main__.__l1_default__.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "__main__.__l1_default__.Return": { + "full_name": "__main__.__l1_default__.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "__main__.__l1_default__.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__main__.__l1_default__.address": { + "cairo_type": "felt", + "full_name": "__main__.__l1_default__.address", + "references": [ + { + "ap_tracking_data": { + "group": 123, + "offset": 28 + }, + "pc": 1686, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__main__.__l1_default__.calldata": { + "cairo_type": "felt*", + "full_name": "__main__.__l1_default__.calldata", + "references": [ + { + "ap_tracking_data": { + "group": 123, + "offset": 0 + }, + "pc": 1681, + "value": "[cast(fp + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__main__.__l1_default__.calldata_size": { + "cairo_type": "felt", + "full_name": "__main__.__l1_default__.calldata_size", + "references": [ + { + "ap_tracking_data": { + "group": 123, + "offset": 0 + }, + "pc": 1681, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "__main__.__l1_default__.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__main__.__l1_default__.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 123, + "offset": 0 + }, + "pc": 1681, + "value": "[cast(fp + (-7), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 28 + }, + "pc": 1686, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__main__.__l1_default__.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__main__.__l1_default__.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 123, + "offset": 0 + }, + "pc": 1681, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 28 + }, + "pc": 1686, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "__main__.__l1_default__.selector": { + "cairo_type": "felt", + "full_name": "__main__.__l1_default__.selector", + "references": [ + { + "ap_tracking_data": { + "group": 123, + "offset": 0 + }, + "pc": 1681, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "__main__.__l1_default__.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__main__.__l1_default__.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 123, + "offset": 0 + }, + "pc": 1681, + "value": "[cast(fp + (-8), felt**)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 28 + }, + "pc": 1686, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 39 + }, + "pc": 1693, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__main__.accept_governance": { + "destination": "starkware.starknet.apps.upgradability_proxy.governance.accept_governance", + "type": "alias" + }, + "__main__.add_implementation": { + "destination": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation", + "type": "alias" + }, + "__main__.cancel_nomination": { + "destination": "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination", + "type": "alias" + }, + "__main__.constructor": { + "decorators": ["constructor"], + "pc": 1629, + "type": "function" + }, + "__main__.constructor.Args": { + "full_name": "__main__.constructor.Args", + "members": { + "upgrade_delay_seconds": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "__main__.constructor.ImplicitArgs": { + "full_name": "__main__.constructor.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "__main__.constructor.Return": { + "full_name": "__main__.constructor.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "__main__.constructor.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__main__.constructor.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__main__.constructor.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 119, + "offset": 0 + }, + "pc": 1629, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 119, + "offset": 22 + }, + "pc": 1635, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__main__.constructor.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__main__.constructor.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 119, + "offset": 0 + }, + "pc": 1629, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 119, + "offset": 22 + }, + "pc": 1635, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__main__.constructor.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__main__.constructor.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 119, + "offset": 0 + }, + "pc": 1629, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 119, + "offset": 22 + }, + "pc": 1635, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__main__.constructor.upgrade_delay_seconds": { + "cairo_type": "felt", + "full_name": "__main__.constructor.upgrade_delay_seconds", + "references": [ + { + "ap_tracking_data": { + "group": 119, + "offset": 0 + }, + "pc": 1629, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "__main__.delegate_call": { + "destination": "starkware.starknet.common.syscalls.delegate_call", + "type": "alias" + }, + "__main__.delegate_l1_handler": { + "destination": "starkware.starknet.common.syscalls.delegate_l1_handler", + "type": "alias" + }, + "__main__.finalized": { + "destination": "starkware.starknet.apps.upgradability_proxy.finalizable.finalized", + "type": "alias" + }, + "__main__.implementation": { + "destination": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation", + "type": "alias" + }, + "__main__.init_governance": { + "destination": "starkware.starknet.apps.upgradability_proxy.governance.init_governance", + "type": "alias" + }, + "__main__.is_governor": { + "destination": "starkware.starknet.apps.upgradability_proxy.governance.is_governor", + "type": "alias" + }, + "__main__.nominate_new_governor": { + "destination": "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor", + "type": "alias" + }, + "__main__.only_governor": { + "destination": "starkware.starknet.apps.upgradability_proxy.governance.only_governor", + "type": "alias" + }, + "__main__.remove_governor": { + "destination": "starkware.starknet.apps.upgradability_proxy.governance.remove_governor", + "type": "alias" + }, + "__main__.remove_implementation": { + "destination": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation", + "type": "alias" + }, + "__main__.upgrade_delay": { + "destination": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay", + "type": "alias" + }, + "__main__.upgrade_to": { + "destination": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to", + "type": "alias" + }, + "__wrappers__.__default__": { + "decorators": ["external", "raw_input", "raw_output"], + "pc": 1672, + "type": "function" + }, + "__wrappers__.__default__.Args": { + "full_name": "__wrappers__.__default__.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.__default__.ImplicitArgs": { + "full_name": "__wrappers__.__default__.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.__default__.Return": { + "full_name": "__wrappers__.__default__.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.__default__.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.__default__.__wrapped_func": { + "destination": "__main__.__default__", + "type": "alias" + }, + "__wrappers__.__default__.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.__default__.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 122, + "offset": 0 + }, + "pc": 1672, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 122, + "offset": 52 + }, + "pc": 1680, + "value": "[cast(ap + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.__default__.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.__default__.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 122, + "offset": 0 + }, + "pc": 1672, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 122, + "offset": 52 + }, + "pc": 1680, + "value": "[cast(ap + (-3), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.__default__.ret_struct": { + "cairo_type": "__main__.__default__.Return", + "full_name": "__wrappers__.__default__.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 122, + "offset": 52 + }, + "pc": 1680, + "value": "[cast(ap + (-2), __main__.__default__.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.__default__.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.__default__.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 122, + "offset": 52 + }, + "pc": 1680, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.__default__.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.__default__.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 122, + "offset": 52 + }, + "pc": 1680, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.__default__.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.__default__.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 122, + "offset": 0 + }, + "pc": 1672, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 122, + "offset": 52 + }, + "pc": 1680, + "value": "[cast(ap + (-5), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.__default___encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.__l1_default__": { + "decorators": ["l1_handler", "raw_input"], + "pc": 1697, + "type": "function" + }, + "__wrappers__.__l1_default__.Args": { + "full_name": "__wrappers__.__l1_default__.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.__l1_default__.ImplicitArgs": { + "full_name": "__wrappers__.__l1_default__.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.__l1_default__.Return": { + "full_name": "__wrappers__.__l1_default__.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.__l1_default__.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.__l1_default__.__wrapped_func": { + "destination": "__main__.__l1_default__", + "type": "alias" + }, + "__wrappers__.__l1_default__.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.__l1_default__.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 124, + "offset": 0 + }, + "pc": 1697, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 124, + "offset": 50 + }, + "pc": 1705, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.__l1_default__.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.__l1_default__.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 124, + "offset": 0 + }, + "pc": 1697, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 124, + "offset": 50 + }, + "pc": 1705, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.__l1_default__.ret_struct": { + "cairo_type": "__main__.__l1_default__.Return", + "full_name": "__wrappers__.__l1_default__.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 124, + "offset": 50 + }, + "pc": 1705, + "value": "[cast(ap + 0, __main__.__l1_default__.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.__l1_default__.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.__l1_default__.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 124, + "offset": 51 + }, + "pc": 1707, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.__l1_default__.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.__l1_default__.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 124, + "offset": 51 + }, + "pc": 1707, + "value": "cast(0, felt)" + } + ], + "type": "reference" + }, + "__wrappers__.__l1_default__.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.__l1_default__.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 124, + "offset": 0 + }, + "pc": 1697, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 124, + "offset": 50 + }, + "pc": 1705, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.__l1_default___encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.accept_governance": { + "decorators": ["external"], + "pc": 724, + "type": "function" + }, + "__wrappers__.accept_governance.Args": { + "full_name": "__wrappers__.accept_governance.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.accept_governance.ImplicitArgs": { + "full_name": "__wrappers__.accept_governance.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.accept_governance.Return": { + "full_name": "__wrappers__.accept_governance.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.accept_governance.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.accept_governance.__calldata_actual_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.accept_governance.__calldata_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 55, + "offset": 0 + }, + "pc": 724, + "value": "cast([fp + (-3)] - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "__wrappers__.accept_governance.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.accept_governance.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 55, + "offset": 0 + }, + "pc": 724, + "value": "[cast(fp + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.accept_governance.__wrapped_func": { + "destination": "starkware.starknet.apps.upgradability_proxy.governance.accept_governance", + "type": "alias" + }, + "__wrappers__.accept_governance.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.accept_governance.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 55, + "offset": 0 + }, + "pc": 724, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 55, + "offset": 219 + }, + "pc": 730, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.accept_governance.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.accept_governance.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 55, + "offset": 0 + }, + "pc": 724, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 55, + "offset": 219 + }, + "pc": 730, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.accept_governance.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.Return", + "full_name": "__wrappers__.accept_governance.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 55, + "offset": 219 + }, + "pc": 730, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.governance.accept_governance.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.accept_governance.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.accept_governance.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 55, + "offset": 220 + }, + "pc": 732, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.accept_governance.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.accept_governance.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 55, + "offset": 220 + }, + "pc": 732, + "value": "cast(0, felt)" + } + ], + "type": "reference" + }, + "__wrappers__.accept_governance.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.accept_governance.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 55, + "offset": 0 + }, + "pc": 724, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 55, + "offset": 219 + }, + "pc": 730, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.accept_governance_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.add_implementation": { + "decorators": ["external"], + "pc": 1282, + "type": "function" + }, + "__wrappers__.add_implementation.Args": { + "full_name": "__wrappers__.add_implementation.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.add_implementation.ImplicitArgs": { + "full_name": "__wrappers__.add_implementation.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.add_implementation.Return": { + "full_name": "__wrappers__.add_implementation.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.add_implementation.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.add_implementation.__calldata_actual_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.add_implementation.__calldata_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 5 + }, + "pc": 1289, + "value": "cast([ap + (-1)] + 1 - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.__calldata_arg_eic_address": { + "cairo_type": "felt", + "full_name": "__wrappers__.add_implementation.__calldata_arg_eic_address", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "[cast([fp + (-3)] + 1, felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.__calldata_arg_final": { + "cairo_type": "felt", + "full_name": "__wrappers__.add_implementation.__calldata_arg_final", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 5 + }, + "pc": 1289, + "value": "[cast([ap + (-1)], felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.__calldata_arg_implementation_": { + "cairo_type": "felt", + "full_name": "__wrappers__.add_implementation.__calldata_arg_implementation_", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "[cast([fp + (-3)], felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.__calldata_arg_init_vector": { + "cairo_type": "felt*", + "full_name": "__wrappers__.add_implementation.__calldata_arg_init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 2 + }, + "pc": 1285, + "value": "cast([fp + (-3)] + 3, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.__calldata_arg_init_vector_len": { + "cairo_type": "felt", + "full_name": "__wrappers__.add_implementation.__calldata_arg_init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "[cast([fp + (-3)] + 2, felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.add_implementation.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "cast([fp + (-3)] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "cast([fp + (-3)] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 5 + }, + "pc": 1289, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 5 + }, + "pc": 1289, + "value": "cast([ap + (-1)] + 1, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.__temp56": { + "cairo_type": "felt", + "full_name": "__wrappers__.add_implementation.__temp56", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 1 + }, + "pc": 1283, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.__temp57": { + "cairo_type": "felt", + "full_name": "__wrappers__.add_implementation.__temp57", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 2 + }, + "pc": 1284, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.__temp58": { + "cairo_type": "felt", + "full_name": "__wrappers__.add_implementation.__temp58", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 3 + }, + "pc": 1287, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.__temp59": { + "cairo_type": "felt", + "full_name": "__wrappers__.add_implementation.__temp59", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 4 + }, + "pc": 1288, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.__temp60": { + "cairo_type": "felt", + "full_name": "__wrappers__.add_implementation.__temp60", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 6 + }, + "pc": 1291, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.__temp61": { + "cairo_type": "felt", + "full_name": "__wrappers__.add_implementation.__temp61", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 7 + }, + "pc": 1293, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.__wrapped_func": { + "destination": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation", + "type": "alias" + }, + "__wrappers__.add_implementation.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.add_implementation.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 97, + "offset": 0 + }, + "pc": 1305, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.add_implementation.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 2 + }, + "pc": 1285, + "value": "cast([[fp + (-5)] + 2] + 1, felt)" + }, + { + "ap_tracking_data": { + "group": 97, + "offset": 0 + }, + "pc": 1305, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.Return", + "full_name": "__wrappers__.add_implementation.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 97, + "offset": 0 + }, + "pc": 1305, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.add_implementation.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 97, + "offset": 1 + }, + "pc": 1307, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.add_implementation.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 97, + "offset": 1 + }, + "pc": 1307, + "value": "cast(0, felt)" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.add_implementation.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 97, + "offset": 0 + }, + "pc": 1305, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.add_implementation_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.cancel_nomination": { + "decorators": ["external"], + "pc": 621, + "type": "function" + }, + "__wrappers__.cancel_nomination.Args": { + "full_name": "__wrappers__.cancel_nomination.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.cancel_nomination.ImplicitArgs": { + "full_name": "__wrappers__.cancel_nomination.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.cancel_nomination.Return": { + "full_name": "__wrappers__.cancel_nomination.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.cancel_nomination.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.cancel_nomination.__calldata_actual_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.cancel_nomination.__calldata_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 48, + "offset": 0 + }, + "pc": 621, + "value": "cast([fp + (-3)] + 1 - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "__wrappers__.cancel_nomination.__calldata_arg_cancelee": { + "cairo_type": "felt", + "full_name": "__wrappers__.cancel_nomination.__calldata_arg_cancelee", + "references": [ + { + "ap_tracking_data": { + "group": 48, + "offset": 0 + }, + "pc": 621, + "value": "[cast([fp + (-3)], felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.cancel_nomination.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.cancel_nomination.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 48, + "offset": 0 + }, + "pc": 621, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 48, + "offset": 0 + }, + "pc": 621, + "value": "cast([fp + (-3)] + 1, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.cancel_nomination.__temp29": { + "cairo_type": "felt", + "full_name": "__wrappers__.cancel_nomination.__temp29", + "references": [ + { + "ap_tracking_data": { + "group": 48, + "offset": 1 + }, + "pc": 623, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.cancel_nomination.__wrapped_func": { + "destination": "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination", + "type": "alias" + }, + "__wrappers__.cancel_nomination.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.cancel_nomination.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 48, + "offset": 0 + }, + "pc": 621, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 49, + "offset": 0 + }, + "pc": 630, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.cancel_nomination.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.cancel_nomination.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 48, + "offset": 0 + }, + "pc": 621, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 49, + "offset": 0 + }, + "pc": 630, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.cancel_nomination.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.Return", + "full_name": "__wrappers__.cancel_nomination.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 49, + "offset": 0 + }, + "pc": 630, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.cancel_nomination.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.cancel_nomination.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 49, + "offset": 1 + }, + "pc": 632, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.cancel_nomination.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.cancel_nomination.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 49, + "offset": 1 + }, + "pc": 632, + "value": "cast(0, felt)" + } + ], + "type": "reference" + }, + "__wrappers__.cancel_nomination.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.cancel_nomination.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 48, + "offset": 0 + }, + "pc": 621, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 49, + "offset": 0 + }, + "pc": 630, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.cancel_nomination_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.constructor": { + "decorators": ["constructor"], + "pc": 1636, + "type": "function" + }, + "__wrappers__.constructor.Args": { + "full_name": "__wrappers__.constructor.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.constructor.ImplicitArgs": { + "full_name": "__wrappers__.constructor.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.constructor.Return": { + "full_name": "__wrappers__.constructor.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.constructor.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.constructor.__calldata_actual_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.constructor.__calldata_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 120, + "offset": 0 + }, + "pc": 1636, + "value": "cast([fp + (-3)] + 1 - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "__wrappers__.constructor.__calldata_arg_upgrade_delay_seconds": { + "cairo_type": "felt", + "full_name": "__wrappers__.constructor.__calldata_arg_upgrade_delay_seconds", + "references": [ + { + "ap_tracking_data": { + "group": 120, + "offset": 0 + }, + "pc": 1636, + "value": "[cast([fp + (-3)], felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.constructor.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.constructor.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 120, + "offset": 0 + }, + "pc": 1636, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 0 + }, + "pc": 1636, + "value": "cast([fp + (-3)] + 1, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.constructor.__temp80": { + "cairo_type": "felt", + "full_name": "__wrappers__.constructor.__temp80", + "references": [ + { + "ap_tracking_data": { + "group": 120, + "offset": 1 + }, + "pc": 1638, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.constructor.__wrapped_func": { + "destination": "__main__.constructor", + "type": "alias" + }, + "__wrappers__.constructor.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.constructor.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 120, + "offset": 0 + }, + "pc": 1636, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 29 + }, + "pc": 1645, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.constructor.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.constructor.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 120, + "offset": 0 + }, + "pc": 1636, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 29 + }, + "pc": 1645, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.constructor.ret_struct": { + "cairo_type": "__main__.constructor.Return", + "full_name": "__wrappers__.constructor.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 120, + "offset": 29 + }, + "pc": 1645, + "value": "[cast(ap + 0, __main__.constructor.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.constructor.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.constructor.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 120, + "offset": 30 + }, + "pc": 1647, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.constructor.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.constructor.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 120, + "offset": 30 + }, + "pc": 1647, + "value": "cast(0, felt)" + } + ], + "type": "reference" + }, + "__wrappers__.constructor.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.constructor.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 120, + "offset": 0 + }, + "pc": 1636, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 29 + }, + "pc": 1645, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.constructor_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.finalized": { + "decorators": ["view"], + "pc": 206, + "type": "function" + }, + "__wrappers__.finalized.Args": { + "full_name": "__wrappers__.finalized.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.finalized.ImplicitArgs": { + "full_name": "__wrappers__.finalized.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.finalized.Return": { + "full_name": "__wrappers__.finalized.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.finalized.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.finalized.__calldata_actual_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.finalized.__calldata_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 21, + "offset": 0 + }, + "pc": 206, + "value": "cast([fp + (-3)] - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "__wrappers__.finalized.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.finalized.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 21, + "offset": 0 + }, + "pc": 206, + "value": "[cast(fp + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.finalized.__wrapped_func": { + "destination": "starkware.starknet.apps.upgradability_proxy.finalizable.finalized", + "type": "alias" + }, + "__wrappers__.finalized.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.finalized.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 21, + "offset": 0 + }, + "pc": 206, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 28 + }, + "pc": 212, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.finalized.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.finalized.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 21, + "offset": 0 + }, + "pc": 206, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 28 + }, + "pc": 212, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 36 + }, + "pc": 215, + "value": "[cast(ap + (-3), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.finalized.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.Return", + "full_name": "__wrappers__.finalized.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 21, + "offset": 28 + }, + "pc": 212, + "value": "[cast(ap + (-1), starkware.starknet.apps.upgradability_proxy.finalizable.finalized.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.finalized.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.finalized.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 21, + "offset": 36 + }, + "pc": 215, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.finalized.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.finalized.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 21, + "offset": 36 + }, + "pc": 215, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.finalized.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.finalized.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 21, + "offset": 0 + }, + "pc": 206, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 28 + }, + "pc": 212, + "value": "[cast(ap + (-4), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.finalized_encode_return": { + "decorators": [], + "pc": 197, + "type": "function" + }, + "__wrappers__.finalized_encode_return.Args": { + "full_name": "__wrappers__.finalized_encode_return.Args", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.Return", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "__wrappers__.finalized_encode_return.ImplicitArgs": { + "full_name": "__wrappers__.finalized_encode_return.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.finalized_encode_return.Return": { + "full_name": "__wrappers__.finalized_encode_return.Return", + "members": { + "data": { + "cairo_type": "felt*", + "offset": 2 + }, + "data_len": { + "cairo_type": "felt", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "__wrappers__.finalized_encode_return.SIZEOF_LOCALS": { + "type": "const", + "value": 1 + }, + "__wrappers__.finalized_encode_return.__return_value_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.finalized_encode_return.__return_value_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 20, + "offset": 1 + }, + "pc": 199, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 20, + "offset": 1 + }, + "pc": 200, + "value": "cast([fp] + 1, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.finalized_encode_return.__return_value_ptr_start": { + "cairo_type": "felt*", + "full_name": "__wrappers__.finalized_encode_return.__return_value_ptr_start", + "references": [ + { + "ap_tracking_data": { + "group": 20, + "offset": 1 + }, + "pc": 199, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.finalized_encode_return.__temp17": { + "cairo_type": "felt", + "full_name": "__wrappers__.finalized_encode_return.__temp17", + "references": [ + { + "ap_tracking_data": { + "group": 20, + "offset": 2 + }, + "pc": 202, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.finalized_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.finalized_encode_return.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.finalized_encode_return.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 20, + "offset": 0 + }, + "pc": 197, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.finalized_encode_return.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.Return", + "full_name": "__wrappers__.finalized_encode_return.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 20, + "offset": 0 + }, + "pc": 197, + "value": "[cast(fp + (-4), starkware.starknet.apps.upgradability_proxy.finalizable.finalized.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation": { + "decorators": ["view"], + "pc": 1160, + "type": "function" + }, + "__wrappers__.implementation.Args": { + "full_name": "__wrappers__.implementation.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.implementation.ImplicitArgs": { + "full_name": "__wrappers__.implementation.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.implementation.Return": { + "full_name": "__wrappers__.implementation.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.implementation.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.implementation.__calldata_actual_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation.__calldata_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 87, + "offset": 0 + }, + "pc": 1160, + "value": "cast([fp + (-3)] - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "__wrappers__.implementation.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.implementation.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 87, + "offset": 0 + }, + "pc": 1160, + "value": "[cast(fp + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation.__wrapped_func": { + "destination": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation", + "type": "alias" + }, + "__wrappers__.implementation.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.implementation.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 87, + "offset": 0 + }, + "pc": 1160, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 28 + }, + "pc": 1166, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 87, + "offset": 0 + }, + "pc": 1160, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 28 + }, + "pc": 1166, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 36 + }, + "pc": 1169, + "value": "[cast(ap + (-3), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.Return", + "full_name": "__wrappers__.implementation.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 87, + "offset": 28 + }, + "pc": 1166, + "value": "[cast(ap + (-1), starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.implementation.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 87, + "offset": 36 + }, + "pc": 1169, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 87, + "offset": 36 + }, + "pc": 1169, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.implementation.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 87, + "offset": 0 + }, + "pc": 1160, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 28 + }, + "pc": 1166, + "value": "[cast(ap + (-4), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_encode_return": { + "decorators": [], + "pc": 1151, + "type": "function" + }, + "__wrappers__.implementation_encode_return.Args": { + "full_name": "__wrappers__.implementation_encode_return.Args", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.Return", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "__wrappers__.implementation_encode_return.ImplicitArgs": { + "full_name": "__wrappers__.implementation_encode_return.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.implementation_encode_return.Return": { + "full_name": "__wrappers__.implementation_encode_return.Return", + "members": { + "data": { + "cairo_type": "felt*", + "offset": 2 + }, + "data_len": { + "cairo_type": "felt", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "__wrappers__.implementation_encode_return.SIZEOF_LOCALS": { + "type": "const", + "value": 1 + }, + "__wrappers__.implementation_encode_return.__return_value_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.implementation_encode_return.__return_value_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 86, + "offset": 1 + }, + "pc": 1153, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 86, + "offset": 1 + }, + "pc": 1154, + "value": "cast([fp] + 1, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_encode_return.__return_value_ptr_start": { + "cairo_type": "felt*", + "full_name": "__wrappers__.implementation_encode_return.__return_value_ptr_start", + "references": [ + { + "ap_tracking_data": { + "group": 86, + "offset": 1 + }, + "pc": 1153, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_encode_return.__temp48": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_encode_return.__temp48", + "references": [ + { + "ap_tracking_data": { + "group": 86, + "offset": 2 + }, + "pc": 1156, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.implementation_encode_return.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_encode_return.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 86, + "offset": 0 + }, + "pc": 1151, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_encode_return.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.Return", + "full_name": "__wrappers__.implementation_encode_return.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 86, + "offset": 0 + }, + "pc": 1151, + "value": "[cast(fp + (-4), starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time": { + "decorators": ["view"], + "pc": 1199, + "type": "function" + }, + "__wrappers__.implementation_time.Args": { + "full_name": "__wrappers__.implementation_time.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.implementation_time.ImplicitArgs": { + "full_name": "__wrappers__.implementation_time.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.implementation_time.Return": { + "full_name": "__wrappers__.implementation_time.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.implementation_time.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.implementation_time.__calldata_actual_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time.__calldata_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 5 + }, + "pc": 1206, + "value": "cast([ap + (-1)] + 1 - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.__calldata_arg_eic_address": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time.__calldata_arg_eic_address", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "[cast([fp + (-3)] + 1, felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.__calldata_arg_final": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time.__calldata_arg_final", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 5 + }, + "pc": 1206, + "value": "[cast([ap + (-1)], felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.__calldata_arg_implementation_": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time.__calldata_arg_implementation_", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "[cast([fp + (-3)], felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.__calldata_arg_init_vector": { + "cairo_type": "felt*", + "full_name": "__wrappers__.implementation_time.__calldata_arg_init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 2 + }, + "pc": 1202, + "value": "cast([fp + (-3)] + 3, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.__calldata_arg_init_vector_len": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time.__calldata_arg_init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "[cast([fp + (-3)] + 2, felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.implementation_time.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "cast([fp + (-3)] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "cast([fp + (-3)] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 5 + }, + "pc": 1206, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 5 + }, + "pc": 1206, + "value": "cast([ap + (-1)] + 1, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.__temp50": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time.__temp50", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 1 + }, + "pc": 1200, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.__temp51": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time.__temp51", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 2 + }, + "pc": 1201, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.__temp52": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time.__temp52", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 3 + }, + "pc": 1204, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.__temp53": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time.__temp53", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 4 + }, + "pc": 1205, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.__temp54": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time.__temp54", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 6 + }, + "pc": 1208, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.__temp55": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time.__temp55", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 7 + }, + "pc": 1210, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.__wrapped_func": { + "destination": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time", + "type": "alias" + }, + "__wrappers__.implementation_time.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.implementation_time.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 92, + "offset": 0 + }, + "pc": 1222, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 2 + }, + "pc": 1202, + "value": "cast([[fp + (-5)] + 2] + 1, felt)" + }, + { + "ap_tracking_data": { + "group": 92, + "offset": 0 + }, + "pc": 1222, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 92, + "offset": 8 + }, + "pc": 1225, + "value": "[cast(ap + (-3), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.Return", + "full_name": "__wrappers__.implementation_time.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 92, + "offset": 0 + }, + "pc": 1222, + "value": "[cast(ap + (-1), starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.implementation_time.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 92, + "offset": 8 + }, + "pc": 1225, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 92, + "offset": 8 + }, + "pc": 1225, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.implementation_time.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 92, + "offset": 0 + }, + "pc": 1222, + "value": "[cast(ap + (-4), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time_encode_return": { + "decorators": [], + "pc": 1190, + "type": "function" + }, + "__wrappers__.implementation_time_encode_return.Args": { + "full_name": "__wrappers__.implementation_time_encode_return.Args", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.Return", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "__wrappers__.implementation_time_encode_return.ImplicitArgs": { + "full_name": "__wrappers__.implementation_time_encode_return.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.implementation_time_encode_return.Return": { + "full_name": "__wrappers__.implementation_time_encode_return.Return", + "members": { + "data": { + "cairo_type": "felt*", + "offset": 2 + }, + "data_len": { + "cairo_type": "felt", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "__wrappers__.implementation_time_encode_return.SIZEOF_LOCALS": { + "type": "const", + "value": 1 + }, + "__wrappers__.implementation_time_encode_return.__return_value_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.implementation_time_encode_return.__return_value_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 90, + "offset": 1 + }, + "pc": 1192, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 90, + "offset": 1 + }, + "pc": 1193, + "value": "cast([fp] + 1, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time_encode_return.__return_value_ptr_start": { + "cairo_type": "felt*", + "full_name": "__wrappers__.implementation_time_encode_return.__return_value_ptr_start", + "references": [ + { + "ap_tracking_data": { + "group": 90, + "offset": 1 + }, + "pc": 1192, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time_encode_return.__temp49": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time_encode_return.__temp49", + "references": [ + { + "ap_tracking_data": { + "group": 90, + "offset": 2 + }, + "pc": 1195, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.implementation_time_encode_return.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.implementation_time_encode_return.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 90, + "offset": 0 + }, + "pc": 1190, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.implementation_time_encode_return.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.Return", + "full_name": "__wrappers__.implementation_time_encode_return.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 90, + "offset": 0 + }, + "pc": 1190, + "value": "[cast(fp + (-4), starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.init_governance": { + "decorators": ["external"], + "pc": 522, + "type": "function" + }, + "__wrappers__.init_governance.Args": { + "full_name": "__wrappers__.init_governance.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.init_governance.ImplicitArgs": { + "full_name": "__wrappers__.init_governance.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.init_governance.Return": { + "full_name": "__wrappers__.init_governance.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.init_governance.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.init_governance.__calldata_actual_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.init_governance.__calldata_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 41, + "offset": 0 + }, + "pc": 522, + "value": "cast([fp + (-3)] - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "__wrappers__.init_governance.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.init_governance.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 41, + "offset": 0 + }, + "pc": 522, + "value": "[cast(fp + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.init_governance.__wrapped_func": { + "destination": "starkware.starknet.apps.upgradability_proxy.governance.init_governance", + "type": "alias" + }, + "__wrappers__.init_governance.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.init_governance.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 41, + "offset": 0 + }, + "pc": 522, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 41, + "offset": 165 + }, + "pc": 528, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.init_governance.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.init_governance.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 41, + "offset": 0 + }, + "pc": 522, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 41, + "offset": 165 + }, + "pc": 528, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.init_governance.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.governance.init_governance.Return", + "full_name": "__wrappers__.init_governance.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 41, + "offset": 165 + }, + "pc": 528, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.governance.init_governance.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.init_governance.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.init_governance.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 41, + "offset": 166 + }, + "pc": 530, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.init_governance.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.init_governance.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 41, + "offset": 166 + }, + "pc": 530, + "value": "cast(0, felt)" + } + ], + "type": "reference" + }, + "__wrappers__.init_governance.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.init_governance.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 41, + "offset": 0 + }, + "pc": 522, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 41, + "offset": 165 + }, + "pc": 528, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.init_governance_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.initialize": { + "decorators": ["external"], + "pc": 1548, + "type": "function" + }, + "__wrappers__.initialize.Args": { + "full_name": "__wrappers__.initialize.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.initialize.ImplicitArgs": { + "full_name": "__wrappers__.initialize.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.initialize.Return": { + "full_name": "__wrappers__.initialize.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.initialize.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.initialize.__calldata_actual_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.initialize.__calldata_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 5 + }, + "pc": 1555, + "value": "cast([ap + (-1)] - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "__wrappers__.initialize.__calldata_arg_init_vector": { + "cairo_type": "felt*", + "full_name": "__wrappers__.initialize.__calldata_arg_init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 2 + }, + "pc": 1551, + "value": "cast([fp + (-3)] + 1, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.initialize.__calldata_arg_init_vector_len": { + "cairo_type": "felt", + "full_name": "__wrappers__.initialize.__calldata_arg_init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 0 + }, + "pc": 1548, + "value": "[cast([fp + (-3)], felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.initialize.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.initialize.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 0 + }, + "pc": 1548, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 0 + }, + "pc": 1548, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 5 + }, + "pc": 1555, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.initialize.__temp75": { + "cairo_type": "felt", + "full_name": "__wrappers__.initialize.__temp75", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 1 + }, + "pc": 1549, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.initialize.__temp76": { + "cairo_type": "felt", + "full_name": "__wrappers__.initialize.__temp76", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 2 + }, + "pc": 1550, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.initialize.__temp77": { + "cairo_type": "felt", + "full_name": "__wrappers__.initialize.__temp77", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 3 + }, + "pc": 1553, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.initialize.__temp78": { + "cairo_type": "felt", + "full_name": "__wrappers__.initialize.__temp78", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 4 + }, + "pc": 1554, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.initialize.__temp79": { + "cairo_type": "felt", + "full_name": "__wrappers__.initialize.__temp79", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 6 + }, + "pc": 1557, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.initialize.__wrapped_func": { + "destination": "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize", + "type": "alias" + }, + "__wrappers__.initialize.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.initialize.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 0 + }, + "pc": 1548, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 17 + }, + "pc": 1566, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.initialize.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.initialize.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 0 + }, + "pc": 1548, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 2 + }, + "pc": 1551, + "value": "cast([[fp + (-5)] + 2] + 1, felt)" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 17 + }, + "pc": 1566, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.initialize.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.Return", + "full_name": "__wrappers__.initialize.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 17 + }, + "pc": 1566, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.initialize.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.initialize.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 18 + }, + "pc": 1568, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.initialize.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.initialize.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 18 + }, + "pc": 1568, + "value": "cast(0, felt)" + } + ], + "type": "reference" + }, + "__wrappers__.initialize.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.initialize.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 114, + "offset": 0 + }, + "pc": 1548, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 17 + }, + "pc": 1566, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.initialize_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.is_governor": { + "decorators": ["view"], + "pc": 469, + "type": "function" + }, + "__wrappers__.is_governor.Args": { + "full_name": "__wrappers__.is_governor.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.is_governor.ImplicitArgs": { + "full_name": "__wrappers__.is_governor.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.is_governor.Return": { + "full_name": "__wrappers__.is_governor.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.is_governor.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.is_governor.__calldata_actual_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.is_governor.__calldata_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 39, + "offset": 0 + }, + "pc": 469, + "value": "cast([fp + (-3)] + 1 - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "__wrappers__.is_governor.__calldata_arg_account": { + "cairo_type": "felt", + "full_name": "__wrappers__.is_governor.__calldata_arg_account", + "references": [ + { + "ap_tracking_data": { + "group": 39, + "offset": 0 + }, + "pc": 469, + "value": "[cast([fp + (-3)], felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.is_governor.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.is_governor.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 39, + "offset": 0 + }, + "pc": 469, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 0 + }, + "pc": 469, + "value": "cast([fp + (-3)] + 1, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.is_governor.__temp27": { + "cairo_type": "felt", + "full_name": "__wrappers__.is_governor.__temp27", + "references": [ + { + "ap_tracking_data": { + "group": 39, + "offset": 1 + }, + "pc": 471, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.is_governor.__wrapped_func": { + "destination": "starkware.starknet.apps.upgradability_proxy.governance.is_governor", + "type": "alias" + }, + "__wrappers__.is_governor.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.is_governor.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 39, + "offset": 0 + }, + "pc": 469, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 68 + }, + "pc": 478, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.is_governor.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.is_governor.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 39, + "offset": 0 + }, + "pc": 469, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 68 + }, + "pc": 478, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 76 + }, + "pc": 481, + "value": "[cast(ap + (-3), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.is_governor.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.governance.is_governor.Return", + "full_name": "__wrappers__.is_governor.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 39, + "offset": 68 + }, + "pc": 478, + "value": "[cast(ap + (-1), starkware.starknet.apps.upgradability_proxy.governance.is_governor.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.is_governor.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.is_governor.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 39, + "offset": 76 + }, + "pc": 481, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.is_governor.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.is_governor.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 39, + "offset": 76 + }, + "pc": 481, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.is_governor.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.is_governor.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 39, + "offset": 0 + }, + "pc": 469, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 68 + }, + "pc": 478, + "value": "[cast(ap + (-4), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.is_governor_encode_return": { + "decorators": [], + "pc": 460, + "type": "function" + }, + "__wrappers__.is_governor_encode_return.Args": { + "full_name": "__wrappers__.is_governor_encode_return.Args", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.governance.is_governor.Return", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "__wrappers__.is_governor_encode_return.ImplicitArgs": { + "full_name": "__wrappers__.is_governor_encode_return.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.is_governor_encode_return.Return": { + "full_name": "__wrappers__.is_governor_encode_return.Return", + "members": { + "data": { + "cairo_type": "felt*", + "offset": 2 + }, + "data_len": { + "cairo_type": "felt", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "__wrappers__.is_governor_encode_return.SIZEOF_LOCALS": { + "type": "const", + "value": 1 + }, + "__wrappers__.is_governor_encode_return.__return_value_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.is_governor_encode_return.__return_value_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 38, + "offset": 1 + }, + "pc": 462, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 38, + "offset": 1 + }, + "pc": 463, + "value": "cast([fp] + 1, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.is_governor_encode_return.__return_value_ptr_start": { + "cairo_type": "felt*", + "full_name": "__wrappers__.is_governor_encode_return.__return_value_ptr_start", + "references": [ + { + "ap_tracking_data": { + "group": 38, + "offset": 1 + }, + "pc": 462, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.is_governor_encode_return.__temp26": { + "cairo_type": "felt", + "full_name": "__wrappers__.is_governor_encode_return.__temp26", + "references": [ + { + "ap_tracking_data": { + "group": 38, + "offset": 2 + }, + "pc": 465, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.is_governor_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.is_governor_encode_return.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.is_governor_encode_return.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 38, + "offset": 0 + }, + "pc": 460, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.is_governor_encode_return.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.governance.is_governor.Return", + "full_name": "__wrappers__.is_governor_encode_return.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 38, + "offset": 0 + }, + "pc": 460, + "value": "[cast(fp + (-4), starkware.starknet.apps.upgradability_proxy.governance.is_governor.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.nominate_new_governor": { + "decorators": ["external"], + "pc": 568, + "type": "function" + }, + "__wrappers__.nominate_new_governor.Args": { + "full_name": "__wrappers__.nominate_new_governor.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.nominate_new_governor.ImplicitArgs": { + "full_name": "__wrappers__.nominate_new_governor.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.nominate_new_governor.Return": { + "full_name": "__wrappers__.nominate_new_governor.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.nominate_new_governor.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.nominate_new_governor.__calldata_actual_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.nominate_new_governor.__calldata_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 44, + "offset": 0 + }, + "pc": 568, + "value": "cast([fp + (-3)] + 1 - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "__wrappers__.nominate_new_governor.__calldata_arg_nominee": { + "cairo_type": "felt", + "full_name": "__wrappers__.nominate_new_governor.__calldata_arg_nominee", + "references": [ + { + "ap_tracking_data": { + "group": 44, + "offset": 0 + }, + "pc": 568, + "value": "[cast([fp + (-3)], felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.nominate_new_governor.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.nominate_new_governor.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 44, + "offset": 0 + }, + "pc": 568, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 44, + "offset": 0 + }, + "pc": 568, + "value": "cast([fp + (-3)] + 1, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.nominate_new_governor.__temp28": { + "cairo_type": "felt", + "full_name": "__wrappers__.nominate_new_governor.__temp28", + "references": [ + { + "ap_tracking_data": { + "group": 44, + "offset": 1 + }, + "pc": 570, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.nominate_new_governor.__wrapped_func": { + "destination": "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor", + "type": "alias" + }, + "__wrappers__.nominate_new_governor.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.nominate_new_governor.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 44, + "offset": 0 + }, + "pc": 568, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 45, + "offset": 0 + }, + "pc": 577, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.nominate_new_governor.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.nominate_new_governor.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 44, + "offset": 0 + }, + "pc": 568, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 45, + "offset": 0 + }, + "pc": 577, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.nominate_new_governor.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.Return", + "full_name": "__wrappers__.nominate_new_governor.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 45, + "offset": 0 + }, + "pc": 577, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.nominate_new_governor.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.nominate_new_governor.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 45, + "offset": 1 + }, + "pc": 579, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.nominate_new_governor.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.nominate_new_governor.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 45, + "offset": 1 + }, + "pc": 579, + "value": "cast(0, felt)" + } + ], + "type": "reference" + }, + "__wrappers__.nominate_new_governor.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.nominate_new_governor.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 44, + "offset": 0 + }, + "pc": 568, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 45, + "offset": 0 + }, + "pc": 577, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.nominate_new_governor_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.remove_governor": { + "decorators": ["external"], + "pc": 673, + "type": "function" + }, + "__wrappers__.remove_governor.Args": { + "full_name": "__wrappers__.remove_governor.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.remove_governor.ImplicitArgs": { + "full_name": "__wrappers__.remove_governor.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.remove_governor.Return": { + "full_name": "__wrappers__.remove_governor.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.remove_governor.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.remove_governor.__calldata_actual_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_governor.__calldata_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 52, + "offset": 0 + }, + "pc": 673, + "value": "cast([fp + (-3)] + 1 - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "__wrappers__.remove_governor.__calldata_arg_removee": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_governor.__calldata_arg_removee", + "references": [ + { + "ap_tracking_data": { + "group": 52, + "offset": 0 + }, + "pc": 673, + "value": "[cast([fp + (-3)], felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_governor.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.remove_governor.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 52, + "offset": 0 + }, + "pc": 673, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 52, + "offset": 0 + }, + "pc": 673, + "value": "cast([fp + (-3)] + 1, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.remove_governor.__temp30": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_governor.__temp30", + "references": [ + { + "ap_tracking_data": { + "group": 52, + "offset": 1 + }, + "pc": 675, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_governor.__wrapped_func": { + "destination": "starkware.starknet.apps.upgradability_proxy.governance.remove_governor", + "type": "alias" + }, + "__wrappers__.remove_governor.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.remove_governor.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 52, + "offset": 0 + }, + "pc": 673, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 53, + "offset": 0 + }, + "pc": 682, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_governor.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_governor.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 52, + "offset": 0 + }, + "pc": 673, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 53, + "offset": 0 + }, + "pc": 682, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_governor.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.Return", + "full_name": "__wrappers__.remove_governor.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 53, + "offset": 0 + }, + "pc": 682, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.governance.remove_governor.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_governor.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.remove_governor.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 53, + "offset": 1 + }, + "pc": 684, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_governor.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_governor.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 53, + "offset": 1 + }, + "pc": 684, + "value": "cast(0, felt)" + } + ], + "type": "reference" + }, + "__wrappers__.remove_governor.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.remove_governor.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 52, + "offset": 0 + }, + "pc": 673, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 53, + "offset": 0 + }, + "pc": 682, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_governor_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.remove_implementation": { + "decorators": ["external"], + "pc": 1365, + "type": "function" + }, + "__wrappers__.remove_implementation.Args": { + "full_name": "__wrappers__.remove_implementation.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.remove_implementation.ImplicitArgs": { + "full_name": "__wrappers__.remove_implementation.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.remove_implementation.Return": { + "full_name": "__wrappers__.remove_implementation.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.remove_implementation.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.remove_implementation.__calldata_actual_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_implementation.__calldata_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 5 + }, + "pc": 1372, + "value": "cast([ap + (-1)] + 1 - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.__calldata_arg_eic_address": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_implementation.__calldata_arg_eic_address", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "[cast([fp + (-3)] + 1, felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.__calldata_arg_final": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_implementation.__calldata_arg_final", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 5 + }, + "pc": 1372, + "value": "[cast([ap + (-1)], felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.__calldata_arg_implementation_": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_implementation.__calldata_arg_implementation_", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "[cast([fp + (-3)], felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.__calldata_arg_init_vector": { + "cairo_type": "felt*", + "full_name": "__wrappers__.remove_implementation.__calldata_arg_init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 2 + }, + "pc": 1368, + "value": "cast([fp + (-3)] + 3, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.__calldata_arg_init_vector_len": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_implementation.__calldata_arg_init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "[cast([fp + (-3)] + 2, felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.remove_implementation.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "cast([fp + (-3)] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "cast([fp + (-3)] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 5 + }, + "pc": 1372, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 5 + }, + "pc": 1372, + "value": "cast([ap + (-1)] + 1, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.__temp62": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_implementation.__temp62", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 1 + }, + "pc": 1366, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.__temp63": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_implementation.__temp63", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 2 + }, + "pc": 1367, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.__temp64": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_implementation.__temp64", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 3 + }, + "pc": 1370, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.__temp65": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_implementation.__temp65", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 4 + }, + "pc": 1371, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.__temp66": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_implementation.__temp66", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 6 + }, + "pc": 1374, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.__temp67": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_implementation.__temp67", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 7 + }, + "pc": 1376, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.__wrapped_func": { + "destination": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation", + "type": "alias" + }, + "__wrappers__.remove_implementation.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.remove_implementation.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 102, + "offset": 0 + }, + "pc": 1388, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_implementation.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 2 + }, + "pc": 1368, + "value": "cast([[fp + (-5)] + 2] + 1, felt)" + }, + { + "ap_tracking_data": { + "group": 102, + "offset": 0 + }, + "pc": 1388, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.Return", + "full_name": "__wrappers__.remove_implementation.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 102, + "offset": 0 + }, + "pc": 1388, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.remove_implementation.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 102, + "offset": 1 + }, + "pc": 1390, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.remove_implementation.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 102, + "offset": 1 + }, + "pc": 1390, + "value": "cast(0, felt)" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.remove_implementation.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 102, + "offset": 0 + }, + "pc": 1388, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.remove_implementation_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "__wrappers__.upgrade_to": { + "decorators": ["external"], + "pc": 1508, + "type": "function" + }, + "__wrappers__.upgrade_to.Args": { + "full_name": "__wrappers__.upgrade_to.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.upgrade_to.ImplicitArgs": { + "full_name": "__wrappers__.upgrade_to.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "__wrappers__.upgrade_to.Return": { + "full_name": "__wrappers__.upgrade_to.Return", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "retdata": { + "cairo_type": "felt*", + "offset": 4 + }, + "size": { + "cairo_type": "felt", + "offset": 3 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "__wrappers__.upgrade_to.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "__wrappers__.upgrade_to.__calldata_actual_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.upgrade_to.__calldata_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 5 + }, + "pc": 1515, + "value": "cast([ap + (-1)] + 1 - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.__calldata_arg_eic_address": { + "cairo_type": "felt", + "full_name": "__wrappers__.upgrade_to.__calldata_arg_eic_address", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "[cast([fp + (-3)] + 1, felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.__calldata_arg_final": { + "cairo_type": "felt", + "full_name": "__wrappers__.upgrade_to.__calldata_arg_final", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 5 + }, + "pc": 1515, + "value": "[cast([ap + (-1)], felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.__calldata_arg_implementation_": { + "cairo_type": "felt", + "full_name": "__wrappers__.upgrade_to.__calldata_arg_implementation_", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "[cast([fp + (-3)], felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.__calldata_arg_init_vector": { + "cairo_type": "felt*", + "full_name": "__wrappers__.upgrade_to.__calldata_arg_init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 2 + }, + "pc": 1511, + "value": "cast([fp + (-3)] + 3, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.__calldata_arg_init_vector_len": { + "cairo_type": "felt", + "full_name": "__wrappers__.upgrade_to.__calldata_arg_init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "[cast([fp + (-3)] + 2, felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.upgrade_to.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "cast([fp + (-3)] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "cast([fp + (-3)] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 5 + }, + "pc": 1515, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 5 + }, + "pc": 1515, + "value": "cast([ap + (-1)] + 1, felt*)" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.__temp68": { + "cairo_type": "felt", + "full_name": "__wrappers__.upgrade_to.__temp68", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 1 + }, + "pc": 1509, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.__temp69": { + "cairo_type": "felt", + "full_name": "__wrappers__.upgrade_to.__temp69", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 2 + }, + "pc": 1510, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.__temp70": { + "cairo_type": "felt", + "full_name": "__wrappers__.upgrade_to.__temp70", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 3 + }, + "pc": 1513, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.__temp71": { + "cairo_type": "felt", + "full_name": "__wrappers__.upgrade_to.__temp71", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 4 + }, + "pc": 1514, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.__temp72": { + "cairo_type": "felt", + "full_name": "__wrappers__.upgrade_to.__temp72", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 6 + }, + "pc": 1517, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.__temp73": { + "cairo_type": "felt", + "full_name": "__wrappers__.upgrade_to.__temp73", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 7 + }, + "pc": 1519, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.__wrapped_func": { + "destination": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to", + "type": "alias" + }, + "__wrappers__.upgrade_to.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "__wrappers__.upgrade_to.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 112, + "offset": 0 + }, + "pc": 1531, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.range_check_ptr": { + "cairo_type": "felt", + "full_name": "__wrappers__.upgrade_to.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 2 + }, + "pc": 1511, + "value": "cast([[fp + (-5)] + 2] + 1, felt)" + }, + { + "ap_tracking_data": { + "group": 112, + "offset": 0 + }, + "pc": 1531, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.ret_struct": { + "cairo_type": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.Return", + "full_name": "__wrappers__.upgrade_to.ret_struct", + "references": [ + { + "ap_tracking_data": { + "group": 112, + "offset": 0 + }, + "pc": 1531, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.Return*)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.retdata": { + "cairo_type": "felt*", + "full_name": "__wrappers__.upgrade_to.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 112, + "offset": 1 + }, + "pc": 1533, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.retdata_size": { + "cairo_type": "felt", + "full_name": "__wrappers__.upgrade_to.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 112, + "offset": 1 + }, + "pc": 1533, + "value": "cast(0, felt)" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "__wrappers__.upgrade_to.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 112, + "offset": 0 + }, + "pc": 1531, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "__wrappers__.upgrade_to_encode_return.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "starkware.cairo.common.alloc.alloc": { + "decorators": [], + "pc": 0, + "type": "function" + }, + "starkware.cairo.common.alloc.alloc.Args": { + "full_name": "starkware.cairo.common.alloc.alloc.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.alloc.alloc.ImplicitArgs": { + "full_name": "starkware.cairo.common.alloc.alloc.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.alloc.alloc.Return": { + "full_name": "starkware.cairo.common.alloc.alloc.Return", + "members": { + "ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.alloc.alloc.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.cairo.common.cairo_builtins.BitwiseBuiltin": { + "full_name": "starkware.cairo.common.cairo_builtins.BitwiseBuiltin", + "members": { + "x": { + "cairo_type": "felt", + "offset": 0 + }, + "x_and_y": { + "cairo_type": "felt", + "offset": 2 + }, + "x_or_y": { + "cairo_type": "felt", + "offset": 4 + }, + "x_xor_y": { + "cairo_type": "felt", + "offset": 3 + }, + "y": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.cairo.common.cairo_builtins.EcOpBuiltin": { + "full_name": "starkware.cairo.common.cairo_builtins.EcOpBuiltin", + "members": { + "m": { + "cairo_type": "felt", + "offset": 4 + }, + "p": { + "cairo_type": "starkware.cairo.common.ec_point.EcPoint", + "offset": 0 + }, + "q": { + "cairo_type": "starkware.cairo.common.ec_point.EcPoint", + "offset": 2 + }, + "r": { + "cairo_type": "starkware.cairo.common.ec_point.EcPoint", + "offset": 5 + } + }, + "size": 7, + "type": "struct" + }, + "starkware.cairo.common.cairo_builtins.EcPoint": { + "destination": "starkware.cairo.common.ec_point.EcPoint", + "type": "alias" + }, + "starkware.cairo.common.cairo_builtins.HashBuiltin": { + "full_name": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "members": { + "result": { + "cairo_type": "felt", + "offset": 2 + }, + "x": { + "cairo_type": "felt", + "offset": 0 + }, + "y": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.cairo.common.cairo_builtins.SignatureBuiltin": { + "full_name": "starkware.cairo.common.cairo_builtins.SignatureBuiltin", + "members": { + "message": { + "cairo_type": "felt", + "offset": 1 + }, + "pub_key": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.cairo.common.dict_access.DictAccess": { + "full_name": "starkware.cairo.common.dict_access.DictAccess", + "members": { + "key": { + "cairo_type": "felt", + "offset": 0 + }, + "new_value": { + "cairo_type": "felt", + "offset": 2 + }, + "prev_value": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.cairo.common.ec_point.EcPoint": { + "full_name": "starkware.cairo.common.ec_point.EcPoint", + "members": { + "x": { + "cairo_type": "felt", + "offset": 0 + }, + "y": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.cairo.common.hash.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "starkware.cairo.common.hash.hash2": { + "decorators": [], + "pc": 3, + "type": "function" + }, + "starkware.cairo.common.hash.hash2.Args": { + "full_name": "starkware.cairo.common.hash.hash2.Args", + "members": { + "x": { + "cairo_type": "felt", + "offset": 0 + }, + "y": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.cairo.common.hash.hash2.ImplicitArgs": { + "full_name": "starkware.cairo.common.hash.hash2.ImplicitArgs", + "members": { + "hash_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.hash.hash2.Return": { + "full_name": "starkware.cairo.common.hash.hash2.Return", + "members": { + "result": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.hash.hash2.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.cairo.common.hash.hash2.hash_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.cairo.common.hash.hash2.hash_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 1, + "offset": 0 + }, + "pc": 3, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 1, + "offset": 0 + }, + "pc": 5, + "value": "cast([fp + (-5)] + 3, starkware.cairo.common.cairo_builtins.HashBuiltin*)" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash.hash2.result": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash.hash2.result", + "references": [ + { + "ap_tracking_data": { + "group": 1, + "offset": 0 + }, + "pc": 5, + "value": "[cast([fp + (-5)] + 2, felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash.hash2.x": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash.hash2.x", + "references": [ + { + "ap_tracking_data": { + "group": 1, + "offset": 0 + }, + "pc": 3, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash.hash2.y": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash.hash2.y", + "references": [ + { + "ap_tracking_data": { + "group": 1, + "offset": 0 + }, + "pc": 3, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "starkware.cairo.common.hash_state.HashState": { + "full_name": "starkware.cairo.common.hash_state.HashState", + "members": { + "current_hash": { + "cairo_type": "felt", + "offset": 0 + }, + "n_words": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.cairo.common.hash_state.get_fp_and_pc": { + "destination": "starkware.cairo.common.registers.get_fp_and_pc", + "type": "alias" + }, + "starkware.cairo.common.hash_state.hash2": { + "destination": "starkware.cairo.common.hash.hash2", + "type": "alias" + }, + "starkware.cairo.common.hash_state.hash_finalize": { + "decorators": [], + "pc": 822, + "type": "function" + }, + "starkware.cairo.common.hash_state.hash_finalize.Args": { + "full_name": "starkware.cairo.common.hash_state.hash_finalize.Args", + "members": { + "hash_state_ptr": { + "cairo_type": "starkware.cairo.common.hash_state.HashState*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_finalize.ImplicitArgs": { + "full_name": "starkware.cairo.common.hash_state.hash_finalize.ImplicitArgs", + "members": { + "hash_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_finalize.Return": { + "full_name": "starkware.cairo.common.hash_state.hash_finalize.Return", + "members": { + "hash": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_finalize.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.cairo.common.hash_state.hash_finalize.hash_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.cairo.common.hash_state.hash_finalize.hash_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 63, + "offset": 0 + }, + "pc": 822, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 63, + "offset": 7 + }, + "pc": 827, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_finalize.hash_state_ptr": { + "cairo_type": "starkware.cairo.common.hash_state.HashState*", + "full_name": "starkware.cairo.common.hash_state.hash_finalize.hash_state_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 63, + "offset": 0 + }, + "pc": 822, + "value": "[cast(fp + (-3), starkware.cairo.common.hash_state.HashState**)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_init": { + "decorators": [], + "pc": 755, + "type": "function" + }, + "starkware.cairo.common.hash_state.hash_init.Args": { + "full_name": "starkware.cairo.common.hash_state.hash_init.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_init.ImplicitArgs": { + "full_name": "starkware.cairo.common.hash_state.hash_init.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_init.Return": { + "full_name": "starkware.cairo.common.hash_state.hash_init.Return", + "members": { + "hash_state_ptr": { + "cairo_type": "starkware.cairo.common.hash_state.HashState*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_init.SIZEOF_LOCALS": { + "type": "const", + "value": 2 + }, + "starkware.cairo.common.hash_state.hash_init.__fp__": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash_state.hash_init.__fp__", + "references": [ + { + "ap_tracking_data": { + "group": 58, + "offset": 4 + }, + "pc": 759, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_init.hash_state": { + "cairo_type": "starkware.cairo.common.hash_state.HashState", + "full_name": "starkware.cairo.common.hash_state.hash_init.hash_state", + "references": [ + { + "ap_tracking_data": { + "group": 58, + "offset": 4 + }, + "pc": 759, + "value": "[cast(fp, starkware.cairo.common.hash_state.HashState*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update": { + "decorators": [], + "pc": 790, + "type": "function" + }, + "starkware.cairo.common.hash_state.hash_update.Args": { + "full_name": "starkware.cairo.common.hash_state.hash_update.Args", + "members": { + "data_length": { + "cairo_type": "felt", + "offset": 2 + }, + "data_ptr": { + "cairo_type": "felt*", + "offset": 1 + }, + "hash_state_ptr": { + "cairo_type": "starkware.cairo.common.hash_state.HashState*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_update.ImplicitArgs": { + "full_name": "starkware.cairo.common.hash_state.hash_update.ImplicitArgs", + "members": { + "hash_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_update.Return": { + "full_name": "starkware.cairo.common.hash_state.hash_update.Return", + "members": { + "new_hash_state_ptr": { + "cairo_type": "starkware.cairo.common.hash_state.HashState*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_update.SIZEOF_LOCALS": { + "type": "const", + "value": 2 + }, + "starkware.cairo.common.hash_state.hash_update.__fp__": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash_state.hash_update.__fp__", + "references": [ + { + "ap_tracking_data": { + "group": 61, + "offset": 2 + }, + "pc": 800, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update.__temp33": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash_state.hash_update.__temp33", + "references": [ + { + "ap_tracking_data": { + "group": 61, + "offset": 3 + }, + "pc": 802, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update.data_length": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash_state.hash_update.data_length", + "references": [ + { + "ap_tracking_data": { + "group": 60, + "offset": 0 + }, + "pc": 790, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update.data_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.cairo.common.hash_state.hash_update.data_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 60, + "offset": 0 + }, + "pc": 790, + "value": "[cast(fp + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update.hash": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash_state.hash_update.hash", + "references": [ + { + "ap_tracking_data": { + "group": 61, + "offset": 0 + }, + "pc": 798, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update.hash_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.cairo.common.hash_state.hash_update.hash_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 60, + "offset": 0 + }, + "pc": 790, + "value": "[cast(fp + (-6), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 61, + "offset": 0 + }, + "pc": 798, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update.hash_state_ptr": { + "cairo_type": "starkware.cairo.common.hash_state.HashState*", + "full_name": "starkware.cairo.common.hash_state.hash_update.hash_state_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 60, + "offset": 0 + }, + "pc": 790, + "value": "[cast(fp + (-5), starkware.cairo.common.hash_state.HashState**)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update.new_hash_state": { + "cairo_type": "starkware.cairo.common.hash_state.HashState", + "full_name": "starkware.cairo.common.hash_state.hash_update.new_hash_state", + "references": [ + { + "ap_tracking_data": { + "group": 61, + "offset": 2 + }, + "pc": 800, + "value": "[cast(fp, starkware.cairo.common.hash_state.HashState*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_inner": { + "decorators": [], + "pc": 765, + "type": "function" + }, + "starkware.cairo.common.hash_state.hash_update_inner.Args": { + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.Args", + "members": { + "data_length": { + "cairo_type": "felt", + "offset": 1 + }, + "data_ptr": { + "cairo_type": "felt*", + "offset": 0 + }, + "hash": { + "cairo_type": "felt", + "offset": 2 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_update_inner.ImplicitArgs": { + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.ImplicitArgs", + "members": { + "hash_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_update_inner.LoopLocals": { + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.LoopLocals", + "members": { + "cur_hash": { + "cairo_type": "felt", + "offset": 2 + }, + "data_ptr": { + "cairo_type": "felt*", + "offset": 0 + }, + "hash_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_update_inner.Return": { + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.Return", + "members": { + "hash": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_update_inner.SIZEOF_LOCALS": { + "type": "const", + "value": 1 + }, + "starkware.cairo.common.hash_state.hash_update_inner.__temp31": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.__temp31", + "references": [ + { + "ap_tracking_data": { + "group": 59, + "offset": 2 + }, + "pc": 774, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_inner.__temp32": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.__temp32", + "references": [ + { + "ap_tracking_data": { + "group": 59, + "offset": 7 + }, + "pc": 781, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_inner._anon_label28": { + "pc": 770, + "type": "label" + }, + "starkware.cairo.common.hash_state.hash_update_inner._anon_label29": { + "pc": 770, + "type": "label" + }, + "starkware.cairo.common.hash_state.hash_update_inner.data_last_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.data_last_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 59, + "offset": 2 + }, + "pc": 775, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_inner.data_length": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.data_length", + "references": [ + { + "ap_tracking_data": { + "group": 59, + "offset": 0 + }, + "pc": 765, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_inner.data_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.data_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 59, + "offset": 0 + }, + "pc": 765, + "value": "[cast(fp + (-5), felt**)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_inner.final_locals": { + "cairo_type": "starkware.cairo.common.hash_state.hash_update_inner.LoopLocals*", + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.final_locals", + "references": [ + { + "ap_tracking_data": { + "group": 59, + "offset": 10 + }, + "pc": 789, + "value": "cast(ap + (-3), starkware.cairo.common.hash_state.hash_update_inner.LoopLocals*)" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_inner.first_locals": { + "cairo_type": "starkware.cairo.common.hash_state.hash_update_inner.LoopLocals*", + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.first_locals", + "references": [ + { + "ap_tracking_data": { + "group": 59, + "offset": 2 + }, + "pc": 775, + "value": "cast(ap, starkware.cairo.common.hash_state.hash_update_inner.LoopLocals*)" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_inner.hash": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.hash", + "references": [ + { + "ap_tracking_data": { + "group": 59, + "offset": 0 + }, + "pc": 765, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_inner.hash_loop": { + "pc": 778, + "type": "label" + }, + "starkware.cairo.common.hash_state.hash_update_inner.hash_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.hash_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 59, + "offset": 0 + }, + "pc": 765, + "value": "[cast(fp + (-6), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 59, + "offset": 10 + }, + "pc": 789, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_inner.n_remaining_elements": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.n_remaining_elements", + "references": [ + { + "ap_tracking_data": { + "group": 59, + "offset": 6 + }, + "pc": 779, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_inner.next_locals": { + "cairo_type": "starkware.cairo.common.hash_state.hash_update_inner.LoopLocals*", + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.next_locals", + "references": [ + { + "ap_tracking_data": { + "group": 59, + "offset": 7 + }, + "pc": 782, + "value": "cast(ap, starkware.cairo.common.hash_state.hash_update_inner.LoopLocals*)" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_inner.prev_locals": { + "cairo_type": "starkware.cairo.common.hash_state.hash_update_inner.LoopLocals*", + "full_name": "starkware.cairo.common.hash_state.hash_update_inner.prev_locals", + "references": [ + { + "ap_tracking_data": { + "group": 59, + "offset": 5 + }, + "pc": 778, + "value": "cast(ap + (-3), starkware.cairo.common.hash_state.hash_update_inner.LoopLocals*)" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_single": { + "decorators": [], + "pc": 806, + "type": "function" + }, + "starkware.cairo.common.hash_state.hash_update_single.Args": { + "full_name": "starkware.cairo.common.hash_state.hash_update_single.Args", + "members": { + "hash_state_ptr": { + "cairo_type": "starkware.cairo.common.hash_state.HashState*", + "offset": 0 + }, + "item": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_update_single.ImplicitArgs": { + "full_name": "starkware.cairo.common.hash_state.hash_update_single.ImplicitArgs", + "members": { + "hash_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_update_single.Return": { + "full_name": "starkware.cairo.common.hash_state.hash_update_single.Return", + "members": { + "new_hash_state_ptr": { + "cairo_type": "starkware.cairo.common.hash_state.HashState*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.hash_state.hash_update_single.SIZEOF_LOCALS": { + "type": "const", + "value": 2 + }, + "starkware.cairo.common.hash_state.hash_update_single.__fp__": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash_state.hash_update_single.__fp__", + "references": [ + { + "ap_tracking_data": { + "group": 62, + "offset": 11 + }, + "pc": 815, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_single.__temp34": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash_state.hash_update_single.__temp34", + "references": [ + { + "ap_tracking_data": { + "group": 62, + "offset": 12 + }, + "pc": 817, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_single.hash": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash_state.hash_update_single.hash", + "references": [ + { + "ap_tracking_data": { + "group": 62, + "offset": 9 + }, + "pc": 813, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_single.hash_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.cairo.common.hash_state.hash_update_single.hash_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 62, + "offset": 0 + }, + "pc": 806, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 62, + "offset": 9 + }, + "pc": 813, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_single.hash_state_ptr": { + "cairo_type": "starkware.cairo.common.hash_state.HashState*", + "full_name": "starkware.cairo.common.hash_state.hash_update_single.hash_state_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 62, + "offset": 0 + }, + "pc": 806, + "value": "[cast(fp + (-4), starkware.cairo.common.hash_state.HashState**)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_single.item": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.hash_state.hash_update_single.item", + "references": [ + { + "ap_tracking_data": { + "group": 62, + "offset": 0 + }, + "pc": 806, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.hash_state.hash_update_single.new_hash_state": { + "cairo_type": "starkware.cairo.common.hash_state.HashState", + "full_name": "starkware.cairo.common.hash_state.hash_update_single.new_hash_state", + "references": [ + { + "ap_tracking_data": { + "group": 62, + "offset": 11 + }, + "pc": 815, + "value": "[cast(fp, starkware.cairo.common.hash_state.HashState*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_250_bit": { + "decorators": ["known_ap_change"], + "pc": 44, + "type": "function" + }, + "starkware.cairo.common.math.assert_250_bit.Args": { + "full_name": "starkware.cairo.common.math.assert_250_bit.Args", + "members": { + "value": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.math.assert_250_bit.HIGH_BOUND": { + "type": "const", + "value": 5316911983139663491615228241121378304 + }, + "starkware.cairo.common.math.assert_250_bit.ImplicitArgs": { + "full_name": "starkware.cairo.common.math.assert_250_bit.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.math.assert_250_bit.Return": { + "full_name": "starkware.cairo.common.math.assert_250_bit.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.math.assert_250_bit.SHIFT": { + "type": "const", + "value": 340282366920938463463374607431768211456 + }, + "starkware.cairo.common.math.assert_250_bit.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.cairo.common.math.assert_250_bit.UPPER_BOUND": { + "type": "const", + "value": 1809251394333065553493296640760748560207343510400633813116524750123642650624 + }, + "starkware.cairo.common.math.assert_250_bit.__temp2": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_250_bit.__temp2", + "references": [ + { + "ap_tracking_data": { + "group": 7, + "offset": 1 + }, + "pc": 46, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_250_bit.__temp3": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_250_bit.__temp3", + "references": [ + { + "ap_tracking_data": { + "group": 7, + "offset": 2 + }, + "pc": 47, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_250_bit.__temp4": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_250_bit.__temp4", + "references": [ + { + "ap_tracking_data": { + "group": 7, + "offset": 3 + }, + "pc": 48, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_250_bit.__temp5": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_250_bit.__temp5", + "references": [ + { + "ap_tracking_data": { + "group": 7, + "offset": 4 + }, + "pc": 50, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_250_bit.__temp6": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_250_bit.__temp6", + "references": [ + { + "ap_tracking_data": { + "group": 7, + "offset": 5 + }, + "pc": 52, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_250_bit.__temp7": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_250_bit.__temp7", + "references": [ + { + "ap_tracking_data": { + "group": 7, + "offset": 6 + }, + "pc": 53, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_250_bit.high": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_250_bit.high", + "references": [ + { + "ap_tracking_data": { + "group": 7, + "offset": 0 + }, + "pc": 44, + "value": "[cast([fp + (-4)] + 1, felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_250_bit.low": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_250_bit.low", + "references": [ + { + "ap_tracking_data": { + "group": 7, + "offset": 0 + }, + "pc": 44, + "value": "[cast([fp + (-4)], felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_250_bit.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_250_bit.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 7, + "offset": 0 + }, + "pc": 44, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 7, + "offset": 6 + }, + "pc": 54, + "value": "cast([fp + (-4)] + 3, felt)" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_250_bit.value": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_250_bit.value", + "references": [ + { + "ap_tracking_data": { + "group": 7, + "offset": 0 + }, + "pc": 44, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_le": { + "decorators": [], + "pc": 39, + "type": "function" + }, + "starkware.cairo.common.math.assert_le.Args": { + "full_name": "starkware.cairo.common.math.assert_le.Args", + "members": { + "a": { + "cairo_type": "felt", + "offset": 0 + }, + "b": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.cairo.common.math.assert_le.ImplicitArgs": { + "full_name": "starkware.cairo.common.math.assert_le.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.math.assert_le.Return": { + "full_name": "starkware.cairo.common.math.assert_le.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.math.assert_le.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.cairo.common.math.assert_le.a": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_le.a", + "references": [ + { + "ap_tracking_data": { + "group": 6, + "offset": 0 + }, + "pc": 39, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_le.b": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_le.b", + "references": [ + { + "ap_tracking_data": { + "group": 6, + "offset": 0 + }, + "pc": 39, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_le.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_le.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 6, + "offset": 0 + }, + "pc": 39, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 6, + "offset": 5 + }, + "pc": 43, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_nn": { + "decorators": [], + "pc": 35, + "type": "function" + }, + "starkware.cairo.common.math.assert_nn.Args": { + "full_name": "starkware.cairo.common.math.assert_nn.Args", + "members": { + "a": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.math.assert_nn.ImplicitArgs": { + "full_name": "starkware.cairo.common.math.assert_nn.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.math.assert_nn.Return": { + "full_name": "starkware.cairo.common.math.assert_nn.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.math.assert_nn.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.cairo.common.math.assert_nn.a": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_nn.a", + "references": [ + { + "ap_tracking_data": { + "group": 5, + "offset": 0 + }, + "pc": 35, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_nn.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_nn.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 5, + "offset": 0 + }, + "pc": 35, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 5, + "offset": 0 + }, + "pc": 36, + "value": "cast([fp + (-4)] + 1, felt)" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_not_equal": { + "decorators": [], + "pc": 29, + "type": "function" + }, + "starkware.cairo.common.math.assert_not_equal.Args": { + "full_name": "starkware.cairo.common.math.assert_not_equal.Args", + "members": { + "a": { + "cairo_type": "felt", + "offset": 0 + }, + "b": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.cairo.common.math.assert_not_equal.ImplicitArgs": { + "full_name": "starkware.cairo.common.math.assert_not_equal.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.math.assert_not_equal.Return": { + "full_name": "starkware.cairo.common.math.assert_not_equal.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.math.assert_not_equal.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.cairo.common.math.assert_not_equal.__temp1": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_not_equal.__temp1", + "references": [ + { + "ap_tracking_data": { + "group": 4, + "offset": 1 + }, + "pc": 30, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_not_equal._anon_label4": { + "pc": 34, + "type": "label" + }, + "starkware.cairo.common.math.assert_not_equal._anon_label5": { + "pc": 34, + "type": "label" + }, + "starkware.cairo.common.math.assert_not_equal.a": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_not_equal.a", + "references": [ + { + "ap_tracking_data": { + "group": 4, + "offset": 0 + }, + "pc": 29, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_not_equal.b": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_not_equal.b", + "references": [ + { + "ap_tracking_data": { + "group": 4, + "offset": 0 + }, + "pc": 29, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.math.assert_not_zero": { + "decorators": [], + "pc": 24, + "type": "function" + }, + "starkware.cairo.common.math.assert_not_zero.Args": { + "full_name": "starkware.cairo.common.math.assert_not_zero.Args", + "members": { + "value": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.cairo.common.math.assert_not_zero.ImplicitArgs": { + "full_name": "starkware.cairo.common.math.assert_not_zero.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.math.assert_not_zero.Return": { + "full_name": "starkware.cairo.common.math.assert_not_zero.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.math.assert_not_zero.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.cairo.common.math.assert_not_zero._anon_label2": { + "pc": 28, + "type": "label" + }, + "starkware.cairo.common.math.assert_not_zero._anon_label3": { + "pc": 28, + "type": "label" + }, + "starkware.cairo.common.math.assert_not_zero.value": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.math.assert_not_zero.value", + "references": [ + { + "ap_tracking_data": { + "group": 3, + "offset": 0 + }, + "pc": 24, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.memcpy.memcpy": { + "decorators": [], + "pc": 9, + "type": "function" + }, + "starkware.cairo.common.memcpy.memcpy.Args": { + "full_name": "starkware.cairo.common.memcpy.memcpy.Args", + "members": { + "dst": { + "cairo_type": "felt*", + "offset": 0 + }, + "len": { + "cairo_type": "felt", + "offset": 2 + }, + "src": { + "cairo_type": "felt*", + "offset": 1 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.cairo.common.memcpy.memcpy.ImplicitArgs": { + "full_name": "starkware.cairo.common.memcpy.memcpy.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.memcpy.memcpy.LoopFrame": { + "full_name": "starkware.cairo.common.memcpy.memcpy.LoopFrame", + "members": { + "dst": { + "cairo_type": "felt*", + "offset": 0 + }, + "src": { + "cairo_type": "felt*", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.cairo.common.memcpy.memcpy.Return": { + "full_name": "starkware.cairo.common.memcpy.memcpy.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.memcpy.memcpy.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.cairo.common.memcpy.memcpy.__temp0": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.memcpy.memcpy.__temp0", + "references": [ + { + "ap_tracking_data": { + "group": 2, + "offset": 3 + }, + "pc": 15, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.memcpy.memcpy._anon_label0": { + "pc": 12, + "type": "label" + }, + "starkware.cairo.common.memcpy.memcpy._anon_label1": { + "pc": 12, + "type": "label" + }, + "starkware.cairo.common.memcpy.memcpy.continue_copying": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.memcpy.memcpy.continue_copying", + "references": [ + { + "ap_tracking_data": { + "group": 2, + "offset": 3 + }, + "pc": 16, + "value": "[cast(ap, felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.memcpy.memcpy.dst": { + "cairo_type": "felt*", + "full_name": "starkware.cairo.common.memcpy.memcpy.dst", + "references": [ + { + "ap_tracking_data": { + "group": 2, + "offset": 0 + }, + "pc": 9, + "value": "[cast(fp + (-5), felt**)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.memcpy.memcpy.frame": { + "cairo_type": "starkware.cairo.common.memcpy.memcpy.LoopFrame", + "full_name": "starkware.cairo.common.memcpy.memcpy.frame", + "references": [ + { + "ap_tracking_data": { + "group": 2, + "offset": 2 + }, + "pc": 14, + "value": "[cast(ap + (-2), starkware.cairo.common.memcpy.memcpy.LoopFrame*)]" + }, + { + "ap_tracking_data": { + "group": 2, + "offset": 2 + }, + "pc": 14, + "value": "[cast(ap + (-2), starkware.cairo.common.memcpy.memcpy.LoopFrame*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.memcpy.memcpy.len": { + "cairo_type": "felt", + "full_name": "starkware.cairo.common.memcpy.memcpy.len", + "references": [ + { + "ap_tracking_data": { + "group": 2, + "offset": 0 + }, + "pc": 9, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.memcpy.memcpy.loop": { + "pc": 14, + "type": "label" + }, + "starkware.cairo.common.memcpy.memcpy.next_frame": { + "cairo_type": "starkware.cairo.common.memcpy.memcpy.LoopFrame*", + "full_name": "starkware.cairo.common.memcpy.memcpy.next_frame", + "references": [ + { + "ap_tracking_data": { + "group": 2, + "offset": 3 + }, + "pc": 16, + "value": "cast(ap + 1, starkware.cairo.common.memcpy.memcpy.LoopFrame*)" + } + ], + "type": "reference" + }, + "starkware.cairo.common.memcpy.memcpy.src": { + "cairo_type": "felt*", + "full_name": "starkware.cairo.common.memcpy.memcpy.src", + "references": [ + { + "ap_tracking_data": { + "group": 2, + "offset": 0 + }, + "pc": 9, + "value": "[cast(fp + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.cairo.common.registers.get_fp_and_pc": { + "decorators": [], + "pc": 754, + "type": "function" + }, + "starkware.cairo.common.registers.get_fp_and_pc.Args": { + "full_name": "starkware.cairo.common.registers.get_fp_and_pc.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.registers.get_fp_and_pc.ImplicitArgs": { + "full_name": "starkware.cairo.common.registers.get_fp_and_pc.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.cairo.common.registers.get_fp_and_pc.Return": { + "full_name": "starkware.cairo.common.registers.get_fp_and_pc.Return", + "members": { + "fp_val": { + "cairo_type": "felt", + "offset": 0 + }, + "pc_val": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.cairo.common.registers.get_fp_and_pc.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.EIC_INITIALIZE_SELECTOR": { + "type": "const", + "value": 1770792127795049777084697565458798191120226931451376769053057094489776256516 + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.alloc": { + "destination": "starkware.cairo.common.alloc.alloc", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.call_contract": { + "destination": "starkware.starknet.common.syscalls.call_contract", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_call": { + "destination": "starkware.starknet.common.syscalls.delegate_call", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize": { + "decorators": [], + "pc": 877, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.Args", + "members": { + "contract_address": { + "cairo_type": "felt", + "offset": 0 + }, + "init_vector": { + "cairo_type": "felt*", + "offset": 2 + }, + "init_vector_len": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.SIZEOF_LOCALS": { + "type": "const", + "value": 3 + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 67, + "offset": 6 + }, + "pc": 882, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 6 + }, + "pc": 883, + "value": "cast([fp] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 7 + }, + "pc": 889, + "value": "[cast(fp + 2, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.__calldata_ptr_copy": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.__calldata_ptr_copy", + "references": [ + { + "ap_tracking_data": { + "group": 67, + "offset": 6 + }, + "pc": 886, + "value": "cast([fp] + 1, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.__temp37": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.__temp37", + "references": [ + { + "ap_tracking_data": { + "group": 67, + "offset": 7 + }, + "pc": 888, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.calldata_ptr_start": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.calldata_ptr_start", + "references": [ + { + "ap_tracking_data": { + "group": 67, + "offset": 6 + }, + "pc": 881, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 6 + }, + "pc": 882, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.contract_address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.contract_address", + "references": [ + { + "ap_tracking_data": { + "group": 67, + "offset": 0 + }, + "pc": 877, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.init_vector": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 67, + "offset": 0 + }, + "pc": 877, + "value": "[cast(fp + (-3), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.init_vector_len": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 67, + "offset": 0 + }, + "pc": 877, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 67, + "offset": 0 + }, + "pc": 877, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 6 + }, + "pc": 886, + "value": "[cast(fp + 1, felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.retdata": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 68, + "offset": 11 + }, + "pc": 903, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.retdata_size": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 68, + "offset": 11 + }, + "pc": 903, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.delegate_eic_initialize.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 67, + "offset": 0 + }, + "pc": 877, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 68, + "offset": 11 + }, + "pc": 903, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.INITIALIZED_SELECTOR": { + "type": "const", + "value": 1697461057326310581967816530165551571743938660869987744467005324703617544296 + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.INITIALIZE_SELECTOR": { + "type": "const", + "value": 215307247182100370520050591091822763712463273430149262739280891880522753123 + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.alloc": { + "destination": "starkware.cairo.common.alloc.alloc", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.call_contract": { + "destination": "starkware.starknet.common.syscalls.call_contract", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_call": { + "destination": "starkware.starknet.common.syscalls.delegate_call", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize": { + "decorators": [], + "pc": 848, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.Args", + "members": { + "contract_address": { + "cairo_type": "felt", + "offset": 0 + }, + "init_vector": { + "cairo_type": "felt*", + "offset": 2 + }, + "init_vector_len": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.SIZEOF_LOCALS": { + "type": "const", + "value": 3 + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 65, + "offset": 6 + }, + "pc": 853, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 6 + }, + "pc": 854, + "value": "cast([fp] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 7 + }, + "pc": 860, + "value": "[cast(fp + 2, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.__calldata_ptr_copy": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.__calldata_ptr_copy", + "references": [ + { + "ap_tracking_data": { + "group": 65, + "offset": 6 + }, + "pc": 857, + "value": "cast([fp] + 1, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.__temp36": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.__temp36", + "references": [ + { + "ap_tracking_data": { + "group": 65, + "offset": 7 + }, + "pc": 859, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.calldata_ptr_start": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.calldata_ptr_start", + "references": [ + { + "ap_tracking_data": { + "group": 65, + "offset": 6 + }, + "pc": 852, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 6 + }, + "pc": 853, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.contract_address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.contract_address", + "references": [ + { + "ap_tracking_data": { + "group": 65, + "offset": 0 + }, + "pc": 848, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.init_vector": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 65, + "offset": 0 + }, + "pc": 848, + "value": "[cast(fp + (-3), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.init_vector_len": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 65, + "offset": 0 + }, + "pc": 848, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 65, + "offset": 0 + }, + "pc": 848, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 6 + }, + "pc": 857, + "value": "[cast(fp + 1, felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.retdata": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 66, + "offset": 11 + }, + "pc": 874, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.retdata_size": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 66, + "offset": 11 + }, + "pc": 874, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialize.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 65, + "offset": 0 + }, + "pc": 848, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 66, + "offset": 11 + }, + "pc": 874, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized": { + "decorators": [], + "pc": 828, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.Args", + "members": { + "contract_address": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.Return", + "members": { + "res": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.SIZEOF_LOCALS": { + "type": "const", + "value": 1 + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 64, + "offset": 4 + }, + "pc": 833, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.__return_value_actual_size": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.__return_value_actual_size", + "references": [ + { + "ap_tracking_data": { + "group": 64, + "offset": 15 + }, + "pc": 841, + "value": "cast([ap + (-1)] + 1 - [ap + (-1)], felt)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.__return_value_arg_res": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.__return_value_arg_res", + "references": [ + { + "ap_tracking_data": { + "group": 64, + "offset": 15 + }, + "pc": 841, + "value": "[cast([ap + (-1)], felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.__return_value_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.__return_value_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 64, + "offset": 15 + }, + "pc": 841, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 15 + }, + "pc": 841, + "value": "cast([ap + (-1)] + 1, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.__temp35": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.__temp35", + "references": [ + { + "ap_tracking_data": { + "group": 64, + "offset": 16 + }, + "pc": 843, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.calldata_ptr_start": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.calldata_ptr_start", + "references": [ + { + "ap_tracking_data": { + "group": 64, + "offset": 4 + }, + "pc": 832, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 4 + }, + "pc": 833, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.contract_address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.contract_address", + "references": [ + { + "ap_tracking_data": { + "group": 64, + "offset": 0 + }, + "pc": 828, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 64, + "offset": 0 + }, + "pc": 828, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.retdata": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.retdata", + "references": [ + { + "ap_tracking_data": { + "group": 64, + "offset": 15 + }, + "pc": 841, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.retdata_size": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.retdata_size", + "references": [ + { + "ap_tracking_data": { + "group": 64, + "offset": 15 + }, + "pc": 841, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.delegate_initialized.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 64, + "offset": 0 + }, + "pc": 828, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 15 + }, + "pc": 841, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.FALSE": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.TRUE": { + "type": "const", + "value": 1 + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.addr": { + "decorators": [], + "pc": 161, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.addr.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.addr.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.addr.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.addr.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 0 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.addr.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.addr.Return", + "members": { + "res": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.addr.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.addr.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.addr.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 16, + "offset": 0 + }, + "pc": 161, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.addr.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.addr.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 16, + "offset": 0 + }, + "pc": 161, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.addr.res": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.addr.res", + "references": [ + { + "ap_tracking_data": { + "group": 16, + "offset": 0 + }, + "pc": 161, + "value": "cast(1750817759628730138691164646727852846149105572394507245695566810799057787142, felt)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.hash2": { + "destination": "starkware.cairo.common.hash.hash2", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.normalize_address": { + "destination": "starkware.starknet.common.storage.normalize_address", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read": { + "decorators": [], + "pc": 166, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.Return", + "members": { + "res": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.__storage_var_temp0": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.__storage_var_temp0", + "references": [ + { + "ap_tracking_data": { + "group": 17, + "offset": 14 + }, + "pc": 174, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 18 + }, + "pc": 178, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 17, + "offset": 0 + }, + "pc": 166, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 7 + }, + "pc": 170, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 16 + }, + "pc": 176, + "value": "[cast(ap + (-1), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 17, + "offset": 0 + }, + "pc": 166, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 7 + }, + "pc": 170, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 17 + }, + "pc": 177, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.storage_addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.storage_addr", + "references": [ + { + "ap_tracking_data": { + "group": 17, + "offset": 7 + }, + "pc": 170, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.read.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 17, + "offset": 0 + }, + "pc": 166, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 14 + }, + "pc": 174, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 15 + }, + "pc": 175, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.storage_read": { + "destination": "starkware.starknet.common.syscalls.storage_read", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.storage_write": { + "destination": "starkware.starknet.common.syscalls.storage_write", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write": { + "decorators": [], + "pc": 179, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.Args", + "members": { + "value": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 18, + "offset": 0 + }, + "pc": 179, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 18, + "offset": 7 + }, + "pc": 183, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 18, + "offset": 0 + }, + "pc": 179, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 18, + "offset": 7 + }, + "pc": 183, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.storage_addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.storage_addr", + "references": [ + { + "ap_tracking_data": { + "group": 18, + "offset": 7 + }, + "pc": 183, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 18, + "offset": 0 + }, + "pc": 179, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 18, + "offset": 14 + }, + "pc": 188, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.value": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable._finalized.write.value", + "references": [ + { + "ap_tracking_data": { + "group": 18, + "offset": 0 + }, + "pc": 179, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalize": { + "decorators": [], + "pc": 232, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalize.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.finalize.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalize.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.finalize.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalize.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.finalize.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalize.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalize.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.finalize.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 23, + "offset": 0 + }, + "pc": 232, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 36 + }, + "pc": 237, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 55 + }, + "pc": 241, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalize.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.finalize.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 23, + "offset": 0 + }, + "pc": 232, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 36 + }, + "pc": 237, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 55 + }, + "pc": 241, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalize.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.finalize.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 23, + "offset": 0 + }, + "pc": 232, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 36 + }, + "pc": 237, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 55 + }, + "pc": 241, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalized": { + "decorators": ["view"], + "pc": 191, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.Return", + "members": { + "res": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 19, + "offset": 0 + }, + "pc": 191, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 19, + "offset": 23 + }, + "pc": 196, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 19, + "offset": 0 + }, + "pc": 191, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 19, + "offset": 23 + }, + "pc": 196, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.res": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.res", + "references": [ + { + "ap_tracking_data": { + "group": 19, + "offset": 23 + }, + "pc": 196, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.finalized.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 19, + "offset": 0 + }, + "pc": 191, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 19, + "offset": 23 + }, + "pc": 196, + "value": "[cast(ap + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized": { + "decorators": [], + "pc": 221, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.finalized_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.finalized_", + "references": [ + { + "ap_tracking_data": { + "group": 22, + "offset": 28 + }, + "pc": 226, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 22, + "offset": 0 + }, + "pc": 221, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 22, + "offset": 28 + }, + "pc": 226, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 22, + "offset": 0 + }, + "pc": 221, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 22, + "offset": 28 + }, + "pc": 226, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 22, + "offset": 0 + }, + "pc": 221, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 22, + "offset": 28 + }, + "pc": 226, + "value": "[cast(ap + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.FALSE": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.TRUE": { + "type": "const", + "value": 1 + }, + "starkware.starknet.apps.upgradability_proxy.governance.accept_governance": { + "decorators": ["external"], + "pc": 691, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.caller": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.caller", + "references": [ + { + "ap_tracking_data": { + "group": 54, + "offset": 6 + }, + "pc": 694, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.is_candidate": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.is_candidate", + "references": [ + { + "ap_tracking_data": { + "group": 54, + "offset": 67 + }, + "pc": 700, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 54, + "offset": 0 + }, + "pc": 691, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 67 + }, + "pc": 700, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 129 + }, + "pc": 710, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 186 + }, + "pc": 715, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 54, + "offset": 0 + }, + "pc": 691, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 67 + }, + "pc": 700, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 129 + }, + "pc": 710, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 186 + }, + "pc": 715, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 211 + }, + "pc": 720, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.accept_governance.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 54, + "offset": 0 + }, + "pc": 691, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 6 + }, + "pc": 694, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 67 + }, + "pc": 700, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 129 + }, + "pc": 710, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 186 + }, + "pc": 715, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 211 + }, + "pc": 720, + "value": "[cast(ap + (-2), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.assert_not_equal": { + "destination": "starkware.cairo.common.math.assert_not_equal", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.assert_not_zero": { + "destination": "starkware.cairo.common.math.assert_not_zero", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination": { + "decorators": ["external"], + "pc": 586, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.Args", + "members": { + "cancelee": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination._anon_label26": { + "pc": 600, + "type": "label" + }, + "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination._anon_label27": { + "pc": 600, + "type": "label" + }, + "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.caller": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.caller", + "references": [ + { + "ap_tracking_data": { + "group": 47, + "offset": 124 + }, + "pc": 611, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.cancelee": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.cancelee", + "references": [ + { + "ap_tracking_data": { + "group": 46, + "offset": 0 + }, + "pc": 586, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.is_candidate": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.is_candidate", + "references": [ + { + "ap_tracking_data": { + "group": 47, + "offset": 58 + }, + "pc": 594, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 46, + "offset": 0 + }, + "pc": 586, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 0 + }, + "pc": 591, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 58 + }, + "pc": 594, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 118 + }, + "pc": 608, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 46, + "offset": 0 + }, + "pc": 586, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 0 + }, + "pc": 591, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 58 + }, + "pc": 594, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 118 + }, + "pc": 608, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 150 + }, + "pc": 617, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 46, + "offset": 0 + }, + "pc": 586, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 0 + }, + "pc": 591, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 58 + }, + "pc": 594, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 118 + }, + "pc": 608, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 124 + }, + "pc": 611, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 150 + }, + "pc": 617, + "value": "[cast(ap + (-2), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr": { + "decorators": [], + "pc": 313, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.Args", + "members": { + "account": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 0 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.Return", + "members": { + "res": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.account": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.account", + "references": [ + { + "ap_tracking_data": { + "group": 30, + "offset": 0 + }, + "pc": 313, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 30, + "offset": 0 + }, + "pc": 313, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 30, + "offset": 7 + }, + "pc": 319, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 30, + "offset": 0 + }, + "pc": 313, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 30, + "offset": 36 + }, + "pc": 323, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.res": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.addr.res", + "references": [ + { + "ap_tracking_data": { + "group": 30, + "offset": 0 + }, + "pc": 313, + "value": "cast(966177859921636613857551828317341072452675568526713113397521978082421626481, felt)" + }, + { + "ap_tracking_data": { + "group": 30, + "offset": 7 + }, + "pc": 319, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 30, + "offset": 36 + }, + "pc": 323, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.hash2": { + "destination": "starkware.cairo.common.hash.hash2", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.normalize_address": { + "destination": "starkware.starknet.common.storage.normalize_address", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.read": { + "decorators": [], + "pc": 327, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.Args", + "members": { + "account": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.Return", + "members": { + "governance_candidate": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.__storage_var_temp0": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.__storage_var_temp0", + "references": [ + { + "ap_tracking_data": { + "group": 31, + "offset": 51 + }, + "pc": 336, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 55 + }, + "pc": 340, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.account": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.account", + "references": [ + { + "ap_tracking_data": { + "group": 31, + "offset": 0 + }, + "pc": 327, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 31, + "offset": 0 + }, + "pc": 327, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 44 + }, + "pc": 332, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 53 + }, + "pc": 338, + "value": "[cast(ap + (-1), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 31, + "offset": 0 + }, + "pc": 327, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 44 + }, + "pc": 332, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 54 + }, + "pc": 339, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.storage_addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.storage_addr", + "references": [ + { + "ap_tracking_data": { + "group": 31, + "offset": 44 + }, + "pc": 332, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.read.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 31, + "offset": 0 + }, + "pc": 327, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 51 + }, + "pc": 336, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 52 + }, + "pc": 337, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.storage_read": { + "destination": "starkware.starknet.common.syscalls.storage_read", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.storage_write": { + "destination": "starkware.starknet.common.syscalls.storage_write", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.write": { + "decorators": [], + "pc": 341, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.Args", + "members": { + "account": { + "cairo_type": "felt", + "offset": 0 + }, + "value": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.account": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.account", + "references": [ + { + "ap_tracking_data": { + "group": 32, + "offset": 0 + }, + "pc": 341, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 32, + "offset": 0 + }, + "pc": 341, + "value": "[cast(fp + (-6), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 32, + "offset": 44 + }, + "pc": 346, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 32, + "offset": 0 + }, + "pc": 341, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 32, + "offset": 44 + }, + "pc": 346, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.storage_addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.storage_addr", + "references": [ + { + "ap_tracking_data": { + "group": 32, + "offset": 44 + }, + "pc": 346, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 32, + "offset": 0 + }, + "pc": 341, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 32, + "offset": 51 + }, + "pc": 351, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.value": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.candidates.write.value", + "references": [ + { + "ap_tracking_data": { + "group": 32, + "offset": 0 + }, + "pc": 341, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.get_caller_address": { + "destination": "starkware.starknet.common.syscalls.get_caller_address", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.SELECTOR": { + "type": "const", + "value": 122941324927891101359770130551185202366109951608975274884288913291239215063 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.alloc": { + "destination": "starkware.cairo.common.alloc.alloc", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit": { + "decorators": [], + "pc": 429, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.Args", + "members": { + "new_governor": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.SIZEOF_LOCALS": { + "type": "const", + "value": 2 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 36, + "offset": 9 + }, + "pc": 440, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 9 + }, + "pc": 441, + "value": "cast([fp + 1] + 1, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.__data_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.__data_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 36, + "offset": 9 + }, + "pc": 439, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 9 + }, + "pc": 440, + "value": "[cast(fp + 1, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.__keys_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.__keys_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 36, + "offset": 5 + }, + "pc": 433, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 5 + }, + "pc": 434, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.__temp24": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.__temp24", + "references": [ + { + "ap_tracking_data": { + "group": 36, + "offset": 6 + }, + "pc": 436, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.__temp25": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.__temp25", + "references": [ + { + "ap_tracking_data": { + "group": 36, + "offset": 10 + }, + "pc": 443, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.new_governor": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.new_governor", + "references": [ + { + "ap_tracking_data": { + "group": 36, + "offset": 0 + }, + "pc": 429, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 36, + "offset": 0 + }, + "pc": 429, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 36, + "offset": 0 + }, + "pc": 429, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 19 + }, + "pc": 451, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.emit_event": { + "destination": "starkware.starknet.common.syscalls.emit_event", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_accepted.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.addr": { + "decorators": [], + "pc": 242, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.addr.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.addr.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.addr.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.addr.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 0 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.addr.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.addr.Return", + "members": { + "res": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.addr.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.addr.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.addr.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 24, + "offset": 0 + }, + "pc": 242, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.addr.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.addr.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 24, + "offset": 0 + }, + "pc": 242, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.addr.res": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.addr.res", + "references": [ + { + "ap_tracking_data": { + "group": 24, + "offset": 0 + }, + "pc": 242, + "value": "cast(411649891831311481866083863803283943759912575680088837133421096357856968326, felt)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.hash2": { + "destination": "starkware.cairo.common.hash.hash2", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.normalize_address": { + "destination": "starkware.starknet.common.storage.normalize_address", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read": { + "decorators": [], + "pc": 247, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.Return", + "members": { + "initialized": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.__storage_var_temp0": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.__storage_var_temp0", + "references": [ + { + "ap_tracking_data": { + "group": 25, + "offset": 14 + }, + "pc": 255, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 18 + }, + "pc": 259, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 25, + "offset": 0 + }, + "pc": 247, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 7 + }, + "pc": 251, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 16 + }, + "pc": 257, + "value": "[cast(ap + (-1), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 25, + "offset": 0 + }, + "pc": 247, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 7 + }, + "pc": 251, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 17 + }, + "pc": 258, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.storage_addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.storage_addr", + "references": [ + { + "ap_tracking_data": { + "group": 25, + "offset": 7 + }, + "pc": 251, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.read.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 25, + "offset": 0 + }, + "pc": 247, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 14 + }, + "pc": 255, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 15 + }, + "pc": 256, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.storage_read": { + "destination": "starkware.starknet.common.syscalls.storage_read", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.storage_write": { + "destination": "starkware.starknet.common.syscalls.storage_write", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write": { + "decorators": [], + "pc": 260, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.Args", + "members": { + "value": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 26, + "offset": 0 + }, + "pc": 260, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 26, + "offset": 7 + }, + "pc": 264, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 26, + "offset": 0 + }, + "pc": 260, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 26, + "offset": 7 + }, + "pc": 264, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.storage_addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.storage_addr", + "references": [ + { + "ap_tracking_data": { + "group": 26, + "offset": 7 + }, + "pc": 264, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 26, + "offset": 0 + }, + "pc": 260, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 26, + "offset": 14 + }, + "pc": 269, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.value": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governance_initialized.write.value", + "references": [ + { + "ap_tracking_data": { + "group": 26, + "offset": 0 + }, + "pc": 260, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.SELECTOR": { + "type": "const", + "value": 1567711119570952444663839893554579731710602646159332455291303348536112031027 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.alloc": { + "destination": "starkware.cairo.common.alloc.alloc", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit": { + "decorators": [], + "pc": 354, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.Args", + "members": { + "new_governor_nominee": { + "cairo_type": "felt", + "offset": 0 + }, + "nominated_by": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.SIZEOF_LOCALS": { + "type": "const", + "value": 2 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 33, + "offset": 9 + }, + "pc": 365, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 9 + }, + "pc": 366, + "value": "cast([fp + 1] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 9 + }, + "pc": 367, + "value": "cast([fp + 1] + 2, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.__data_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.__data_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 33, + "offset": 9 + }, + "pc": 364, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 9 + }, + "pc": 365, + "value": "[cast(fp + 1, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.__keys_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.__keys_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 33, + "offset": 5 + }, + "pc": 358, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 5 + }, + "pc": 359, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.__temp18": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.__temp18", + "references": [ + { + "ap_tracking_data": { + "group": 33, + "offset": 6 + }, + "pc": 361, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.__temp19": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.__temp19", + "references": [ + { + "ap_tracking_data": { + "group": 33, + "offset": 10 + }, + "pc": 369, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.new_governor_nominee": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.new_governor_nominee", + "references": [ + { + "ap_tracking_data": { + "group": 33, + "offset": 0 + }, + "pc": 354, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.nominated_by": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.nominated_by", + "references": [ + { + "ap_tracking_data": { + "group": 33, + "offset": 0 + }, + "pc": 354, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 33, + "offset": 0 + }, + "pc": 354, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 33, + "offset": 0 + }, + "pc": 354, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 19 + }, + "pc": 377, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.emit_event": { + "destination": "starkware.starknet.common.syscalls.emit_event", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_nominated.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.SELECTOR": { + "type": "const", + "value": 1681447851982841018441568402694777178010403001644426944071619095562673034476 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.alloc": { + "destination": "starkware.cairo.common.alloc.alloc", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit": { + "decorators": [], + "pc": 404, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.Args", + "members": { + "removed_by": { + "cairo_type": "felt", + "offset": 1 + }, + "removed_governor": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.SIZEOF_LOCALS": { + "type": "const", + "value": 2 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 35, + "offset": 9 + }, + "pc": 415, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 9 + }, + "pc": 416, + "value": "cast([fp + 1] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 9 + }, + "pc": 417, + "value": "cast([fp + 1] + 2, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.__data_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.__data_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 35, + "offset": 9 + }, + "pc": 414, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 9 + }, + "pc": 415, + "value": "[cast(fp + 1, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.__keys_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.__keys_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 35, + "offset": 5 + }, + "pc": 408, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 5 + }, + "pc": 409, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.__temp22": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.__temp22", + "references": [ + { + "ap_tracking_data": { + "group": 35, + "offset": 6 + }, + "pc": 411, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.__temp23": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.__temp23", + "references": [ + { + "ap_tracking_data": { + "group": 35, + "offset": 10 + }, + "pc": 419, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 35, + "offset": 0 + }, + "pc": 404, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.removed_by": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.removed_by", + "references": [ + { + "ap_tracking_data": { + "group": 35, + "offset": 0 + }, + "pc": 404, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.removed_governor": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.removed_governor", + "references": [ + { + "ap_tracking_data": { + "group": 35, + "offset": 0 + }, + "pc": 404, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 35, + "offset": 0 + }, + "pc": 404, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 19 + }, + "pc": 427, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.emit_event": { + "destination": "starkware.starknet.common.syscalls.emit_event", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governor_removed.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.addr": { + "decorators": [], + "pc": 272, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.Args", + "members": { + "account": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 0 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.Return", + "members": { + "res": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.account": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.account", + "references": [ + { + "ap_tracking_data": { + "group": 27, + "offset": 0 + }, + "pc": 272, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 27, + "offset": 0 + }, + "pc": 272, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 27, + "offset": 7 + }, + "pc": 278, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 27, + "offset": 0 + }, + "pc": 272, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 27, + "offset": 36 + }, + "pc": 282, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.res": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.addr.res", + "references": [ + { + "ap_tracking_data": { + "group": 27, + "offset": 0 + }, + "pc": 272, + "value": "cast(473174039777172977791438085456091829006435644020130570266323097166155133896, felt)" + }, + { + "ap_tracking_data": { + "group": 27, + "offset": 7 + }, + "pc": 278, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 27, + "offset": 36 + }, + "pc": 282, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.hash2": { + "destination": "starkware.cairo.common.hash.hash2", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.normalize_address": { + "destination": "starkware.starknet.common.storage.normalize_address", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.read": { + "decorators": [], + "pc": 286, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.read.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.read.Args", + "members": { + "account": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.read.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.read.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.read.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.read.Return", + "members": { + "active_governor": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.read.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.read.__storage_var_temp0": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.read.__storage_var_temp0", + "references": [ + { + "ap_tracking_data": { + "group": 28, + "offset": 51 + }, + "pc": 295, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 55 + }, + "pc": 299, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.read.account": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.read.account", + "references": [ + { + "ap_tracking_data": { + "group": 28, + "offset": 0 + }, + "pc": 286, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.read.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.read.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 28, + "offset": 0 + }, + "pc": 286, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 44 + }, + "pc": 291, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 53 + }, + "pc": 297, + "value": "[cast(ap + (-1), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.read.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.read.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 28, + "offset": 0 + }, + "pc": 286, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 44 + }, + "pc": 291, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 54 + }, + "pc": 298, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.read.storage_addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.read.storage_addr", + "references": [ + { + "ap_tracking_data": { + "group": 28, + "offset": 44 + }, + "pc": 291, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.read.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.read.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 28, + "offset": 0 + }, + "pc": 286, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 51 + }, + "pc": 295, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 52 + }, + "pc": 296, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.storage_read": { + "destination": "starkware.starknet.common.syscalls.storage_read", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.storage_write": { + "destination": "starkware.starknet.common.syscalls.storage_write", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.write": { + "decorators": [], + "pc": 300, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.write.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.write.Args", + "members": { + "account": { + "cairo_type": "felt", + "offset": 0 + }, + "value": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.write.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.write.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.write.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.write.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.write.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.write.account": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.write.account", + "references": [ + { + "ap_tracking_data": { + "group": 29, + "offset": 0 + }, + "pc": 300, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.write.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.write.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 29, + "offset": 0 + }, + "pc": 300, + "value": "[cast(fp + (-6), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 29, + "offset": 44 + }, + "pc": 305, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.write.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.write.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 29, + "offset": 0 + }, + "pc": 300, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 29, + "offset": 44 + }, + "pc": 305, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.write.storage_addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.write.storage_addr", + "references": [ + { + "ap_tracking_data": { + "group": 29, + "offset": 44 + }, + "pc": 305, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.write.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.write.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 29, + "offset": 0 + }, + "pc": 300, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 29, + "offset": 51 + }, + "pc": 310, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.governors.write.value": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.governors.write.value", + "references": [ + { + "ap_tracking_data": { + "group": 29, + "offset": 0 + }, + "pc": 300, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.init_governance": { + "decorators": ["external"], + "pc": 487, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.init_governance.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.init_governance.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.init_governance.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.init_governance.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.init_governance.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.init_governance.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.init_governance.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.init_governance.already_init": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.init_governance.already_init", + "references": [ + { + "ap_tracking_data": { + "group": 40, + "offset": 23 + }, + "pc": 492, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.init_governance.caller": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.init_governance.caller", + "references": [ + { + "ap_tracking_data": { + "group": 40, + "offset": 29 + }, + "pc": 497, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.init_governance.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.init_governance.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 40, + "offset": 0 + }, + "pc": 487, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 23 + }, + "pc": 492, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 51 + }, + "pc": 504, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 108 + }, + "pc": 509, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.init_governance.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.init_governance.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 40, + "offset": 0 + }, + "pc": 487, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 23 + }, + "pc": 492, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 51 + }, + "pc": 504, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 108 + }, + "pc": 509, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 134 + }, + "pc": 515, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 157 + }, + "pc": 518, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.init_governance.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.init_governance.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 40, + "offset": 0 + }, + "pc": 487, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 23 + }, + "pc": 492, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 29 + }, + "pc": 497, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 51 + }, + "pc": 504, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 108 + }, + "pc": 509, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 134 + }, + "pc": 515, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 157 + }, + "pc": 518, + "value": "[cast(ap + (-2), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.is_governor": { + "decorators": ["view"], + "pc": 453, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.is_governor.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.is_governor.Args", + "members": { + "account": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.is_governor.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.is_governor.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.is_governor.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.is_governor.Return", + "members": { + "is_governor_": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.is_governor.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.is_governor.account": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.is_governor.account", + "references": [ + { + "ap_tracking_data": { + "group": 37, + "offset": 0 + }, + "pc": 453, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.is_governor.is_governor_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.is_governor.is_governor_", + "references": [ + { + "ap_tracking_data": { + "group": 37, + "offset": 61 + }, + "pc": 459, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.is_governor.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.is_governor.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 37, + "offset": 0 + }, + "pc": 453, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 37, + "offset": 61 + }, + "pc": 459, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.is_governor.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.is_governor.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 37, + "offset": 0 + }, + "pc": 453, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 37, + "offset": 61 + }, + "pc": 459, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.is_governor.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.is_governor.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 37, + "offset": 0 + }, + "pc": 453, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 37, + "offset": 61 + }, + "pc": 459, + "value": "[cast(ap + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor": { + "decorators": ["external"], + "pc": 537, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.Args", + "members": { + "nominee": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.caller": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.caller", + "references": [ + { + "ap_tracking_data": { + "group": 43, + "offset": 130 + }, + "pc": 558, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.is_governor_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.is_governor_", + "references": [ + { + "ap_tracking_data": { + "group": 43, + "offset": 64 + }, + "pc": 545, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.nominee": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.nominee", + "references": [ + { + "ap_tracking_data": { + "group": 42, + "offset": 0 + }, + "pc": 537, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 42, + "offset": 0 + }, + "pc": 537, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 0 + }, + "pc": 542, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 64 + }, + "pc": 545, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 124 + }, + "pc": 555, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 42, + "offset": 0 + }, + "pc": 537, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 0 + }, + "pc": 542, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 64 + }, + "pc": 545, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 124 + }, + "pc": 555, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 156 + }, + "pc": 564, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 42, + "offset": 0 + }, + "pc": 537, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 0 + }, + "pc": 542, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 64 + }, + "pc": 545, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 124 + }, + "pc": 555, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 130 + }, + "pc": 558, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 156 + }, + "pc": 564, + "value": "[cast(ap + (-2), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.SELECTOR": { + "type": "const", + "value": 726254128209885463109714554301787105498069154916764786634959966930567421667 + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.alloc": { + "destination": "starkware.cairo.common.alloc.alloc", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit": { + "decorators": [], + "pc": 379, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.Args", + "members": { + "cancelled_by": { + "cairo_type": "felt", + "offset": 1 + }, + "cancelled_nominee": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.SIZEOF_LOCALS": { + "type": "const", + "value": 2 + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 34, + "offset": 9 + }, + "pc": 390, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 9 + }, + "pc": 391, + "value": "cast([fp + 1] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 9 + }, + "pc": 392, + "value": "cast([fp + 1] + 2, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.__data_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.__data_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 34, + "offset": 9 + }, + "pc": 389, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 9 + }, + "pc": 390, + "value": "[cast(fp + 1, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.__keys_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.__keys_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 34, + "offset": 5 + }, + "pc": 383, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 5 + }, + "pc": 384, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.__temp20": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.__temp20", + "references": [ + { + "ap_tracking_data": { + "group": 34, + "offset": 6 + }, + "pc": 386, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.__temp21": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.__temp21", + "references": [ + { + "ap_tracking_data": { + "group": 34, + "offset": 10 + }, + "pc": 394, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.cancelled_by": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.cancelled_by", + "references": [ + { + "ap_tracking_data": { + "group": 34, + "offset": 0 + }, + "pc": 379, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.cancelled_nominee": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.cancelled_nominee", + "references": [ + { + "ap_tracking_data": { + "group": 34, + "offset": 0 + }, + "pc": 379, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 34, + "offset": 0 + }, + "pc": 379, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 34, + "offset": 0 + }, + "pc": 379, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 19 + }, + "pc": 402, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.emit_event": { + "destination": "starkware.starknet.common.syscalls.emit_event", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.nomination_cancelled.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.governance.only_governor": { + "decorators": [], + "pc": 739, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.only_governor.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.only_governor.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.only_governor.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.only_governor.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.only_governor.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.only_governor.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.only_governor.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.only_governor.caller": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.only_governor.caller", + "references": [ + { + "ap_tracking_data": { + "group": 56, + "offset": 6 + }, + "pc": 742, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.only_governor.is_governor_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.only_governor.is_governor_", + "references": [ + { + "ap_tracking_data": { + "group": 56, + "offset": 73 + }, + "pc": 748, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.only_governor.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.only_governor.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 56, + "offset": 0 + }, + "pc": 739, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 56, + "offset": 73 + }, + "pc": 748, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.only_governor.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.only_governor.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 56, + "offset": 0 + }, + "pc": 739, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 56, + "offset": 73 + }, + "pc": 748, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.only_governor.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.only_governor.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 56, + "offset": 0 + }, + "pc": 739, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 56, + "offset": 6 + }, + "pc": 742, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 56, + "offset": 73 + }, + "pc": 748, + "value": "[cast(ap + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.remove_governor": { + "decorators": ["external"], + "pc": 639, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.Args", + "members": { + "removee": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.caller": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.caller", + "references": [ + { + "ap_tracking_data": { + "group": 51, + "offset": 72 + }, + "pc": 652, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.is_governor_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.is_governor_", + "references": [ + { + "ap_tracking_data": { + "group": 51, + "offset": 64 + }, + "pc": 647, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 50, + "offset": 0 + }, + "pc": 639, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 0 + }, + "pc": 644, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 64 + }, + "pc": 647, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 136 + }, + "pc": 663, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 50, + "offset": 0 + }, + "pc": 639, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 0 + }, + "pc": 644, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 64 + }, + "pc": 647, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 136 + }, + "pc": 663, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 162 + }, + "pc": 669, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.removee": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.removee", + "references": [ + { + "ap_tracking_data": { + "group": 50, + "offset": 0 + }, + "pc": 639, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.governance.remove_governor.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 50, + "offset": 0 + }, + "pc": 639, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 0 + }, + "pc": 644, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 64 + }, + "pc": 647, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 72 + }, + "pc": 652, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 136 + }, + "pc": 663, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 162 + }, + "pc": 669, + "value": "[cast(ap + (-2), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.ExternalInitializer": { + "destination": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.ExternalInitializer", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.FALSE": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.Initializable": { + "destination": "starkware.starknet.apps.upgradability_proxy.Initializable_interface.Initializable", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.TRUE": { + "type": "const", + "value": 1 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation": { + "decorators": ["external"], + "pc": 1231, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.Args", + "members": { + "eic_address": { + "cairo_type": "felt", + "offset": 1 + }, + "final": { + "cairo_type": "felt", + "offset": 4 + }, + "implementation_": { + "cairo_type": "felt", + "offset": 0 + }, + "init_vector": { + "cairo_type": "felt*", + "offset": 3 + }, + "init_vector_len": { + "cairo_type": "felt", + "offset": 2 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.SIZEOF_LOCALS": { + "type": "const", + "value": 5 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.eic_address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.eic_address", + "references": [ + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-6), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.final": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.final", + "references": [ + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.implementation_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.implementation_", + "references": [ + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-7), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.implementation_key": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.implementation_key", + "references": [ + { + "ap_tracking_data": { + "group": 94, + "offset": 0 + }, + "pc": 1261, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.init_vector": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.init_vector_len": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.now_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.now_", + "references": [ + { + "ap_tracking_data": { + "group": 93, + "offset": 97 + }, + "pc": 1244, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 97 + }, + "pc": 1245, + "value": "[cast(fp, felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-9), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 83 + }, + "pc": 1238, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 115 + }, + "pc": 1249, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 0 + }, + "pc": 1257, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 60 + }, + "pc": 1264, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 88 + }, + "pc": 1238, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 120 + }, + "pc": 1250, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 0 + }, + "pc": 1261, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 60 + }, + "pc": 1268, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 60 + }, + "pc": 1269, + "value": "[cast(fp + 4, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-8), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 83 + }, + "pc": 1238, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 115 + }, + "pc": 1249, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 60 + }, + "pc": 1264, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 95, + "offset": 0 + }, + "pc": 1273, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 88 + }, + "pc": 1238, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 120 + }, + "pc": 1250, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 120 + }, + "pc": 1253, + "value": "[cast(fp + 3, felt*)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 60 + }, + "pc": 1268, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 95, + "offset": 0 + }, + "pc": 1278, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-10), felt**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 83 + }, + "pc": 1238, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 92 + }, + "pc": 1244, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 115 + }, + "pc": 1249, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 60 + }, + "pc": 1264, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 95, + "offset": 0 + }, + "pc": 1273, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 88 + }, + "pc": 1238, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 97 + }, + "pc": 1244, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 120 + }, + "pc": 1250, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 120 + }, + "pc": 1252, + "value": "[cast(fp + 2, felt**)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 60 + }, + "pc": 1268, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 95, + "offset": 0 + }, + "pc": 1278, + "value": "[cast(ap + (-2), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.upgrade_timelock": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.upgrade_timelock", + "references": [ + { + "ap_tracking_data": { + "group": 93, + "offset": 120 + }, + "pc": 1250, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 120 + }, + "pc": 1251, + "value": "[cast(fp + 1, felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.assert_le": { + "destination": "starkware.cairo.common.math.assert_le", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.assert_not_zero": { + "destination": "starkware.cairo.common.math.assert_not_zero", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key": { + "decorators": [], + "pc": 1604, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.Args", + "members": { + "eic_address": { + "cairo_type": "felt", + "offset": 1 + }, + "final": { + "cairo_type": "felt", + "offset": 4 + }, + "implementation_": { + "cairo_type": "felt", + "offset": 0 + }, + "init_vector": { + "cairo_type": "felt*", + "offset": 3 + }, + "init_vector_len": { + "cairo_type": "felt", + "offset": 2 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.Return", + "members": { + "res": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.eic_address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.eic_address", + "references": [ + { + "ap_tracking_data": { + "group": 117, + "offset": 0 + }, + "pc": 1604, + "value": "[cast(fp + (-6), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.final": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.final", + "references": [ + { + "ap_tracking_data": { + "group": 117, + "offset": 0 + }, + "pc": 1604, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.hash_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.hash_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 117, + "offset": 0 + }, + "pc": 1606, + "value": "[cast(fp + (-8), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 26 + }, + "pc": 1613, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 43 + }, + "pc": 1616, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 60 + }, + "pc": 1619, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 118, + "offset": 0 + }, + "pc": 1623, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 118, + "offset": 17 + }, + "pc": 1626, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 118, + "offset": 26 + }, + "pc": 1628, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.hash_state_ptr": { + "cairo_type": "starkware.cairo.common.hash_state.HashState*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.hash_state_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 117, + "offset": 7 + }, + "pc": 1608, + "value": "[cast(ap + (-1), starkware.cairo.common.hash_state.HashState**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 26 + }, + "pc": 1613, + "value": "[cast(ap + (-1), starkware.cairo.common.hash_state.HashState**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 43 + }, + "pc": 1616, + "value": "[cast(ap + (-1), starkware.cairo.common.hash_state.HashState**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 60 + }, + "pc": 1619, + "value": "[cast(ap + (-1), starkware.cairo.common.hash_state.HashState**)]" + }, + { + "ap_tracking_data": { + "group": 118, + "offset": 0 + }, + "pc": 1623, + "value": "[cast(ap + (-1), starkware.cairo.common.hash_state.HashState**)]" + }, + { + "ap_tracking_data": { + "group": 118, + "offset": 17 + }, + "pc": 1626, + "value": "[cast(ap + (-1), starkware.cairo.common.hash_state.HashState**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.implementation_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.implementation_", + "references": [ + { + "ap_tracking_data": { + "group": 117, + "offset": 0 + }, + "pc": 1604, + "value": "[cast(fp + (-7), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.init_vector": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 117, + "offset": 0 + }, + "pc": 1604, + "value": "[cast(fp + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.init_vector_len": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 117, + "offset": 0 + }, + "pc": 1604, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 117, + "offset": 0 + }, + "pc": 1604, + "value": "[cast(fp + (-8), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 118, + "offset": 26 + }, + "pc": 1628, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.res": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.calc_impl_key.res", + "references": [ + { + "ap_tracking_data": { + "group": 118, + "offset": 26 + }, + "pc": 1628, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.delegate_call": { + "destination": "starkware.starknet.common.syscalls.delegate_call", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.finalize": { + "destination": "starkware.starknet.apps.upgradability_proxy.finalizable.finalize", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.get_block_timestamp": { + "destination": "starkware.starknet.common.syscalls.get_block_timestamp", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.get_contract_address": { + "destination": "starkware.starknet.common.syscalls.get_contract_address", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.hash_finalize": { + "destination": "starkware.cairo.common.hash_state.hash_finalize", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.hash_init": { + "destination": "starkware.cairo.common.hash_state.hash_init", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.hash_update": { + "destination": "starkware.cairo.common.hash_state.hash_update", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.hash_update_single": { + "destination": "starkware.cairo.common.hash_state.hash_update_single", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr": { + "decorators": [], + "pc": 936, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.Args", + "members": { + "key": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 0 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.Return", + "members": { + "res": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.key": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.key", + "references": [ + { + "ap_tracking_data": { + "group": 72, + "offset": 0 + }, + "pc": 936, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 72, + "offset": 0 + }, + "pc": 936, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 72, + "offset": 7 + }, + "pc": 942, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 72, + "offset": 0 + }, + "pc": 936, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 72, + "offset": 36 + }, + "pc": 946, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.res": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.addr.res", + "references": [ + { + "ap_tracking_data": { + "group": 72, + "offset": 0 + }, + "pc": 936, + "value": "cast(757185127176008445256423207506255876365889208688465503676412510933688902981, felt)" + }, + { + "ap_tracking_data": { + "group": 72, + "offset": 7 + }, + "pc": 942, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 72, + "offset": 36 + }, + "pc": 946, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.hash2": { + "destination": "starkware.cairo.common.hash.hash2", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.normalize_address": { + "destination": "starkware.starknet.common.storage.normalize_address", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read": { + "decorators": [], + "pc": 950, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.Args", + "members": { + "key": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.Return", + "members": { + "ready_time": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.__storage_var_temp0": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.__storage_var_temp0", + "references": [ + { + "ap_tracking_data": { + "group": 73, + "offset": 51 + }, + "pc": 959, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 55 + }, + "pc": 963, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.key": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.key", + "references": [ + { + "ap_tracking_data": { + "group": 73, + "offset": 0 + }, + "pc": 950, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 73, + "offset": 0 + }, + "pc": 950, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 44 + }, + "pc": 955, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 53 + }, + "pc": 961, + "value": "[cast(ap + (-1), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 73, + "offset": 0 + }, + "pc": 950, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 44 + }, + "pc": 955, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 54 + }, + "pc": 962, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.storage_addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.storage_addr", + "references": [ + { + "ap_tracking_data": { + "group": 73, + "offset": 44 + }, + "pc": 955, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.read.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 73, + "offset": 0 + }, + "pc": 950, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 51 + }, + "pc": 959, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 52 + }, + "pc": 960, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.storage_read": { + "destination": "starkware.starknet.common.syscalls.storage_read", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.storage_write": { + "destination": "starkware.starknet.common.syscalls.storage_write", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write": { + "decorators": [], + "pc": 964, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.Args", + "members": { + "key": { + "cairo_type": "felt", + "offset": 0 + }, + "value": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.key": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.key", + "references": [ + { + "ap_tracking_data": { + "group": 74, + "offset": 0 + }, + "pc": 964, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 74, + "offset": 0 + }, + "pc": 964, + "value": "[cast(fp + (-6), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 74, + "offset": 44 + }, + "pc": 969, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 74, + "offset": 0 + }, + "pc": 964, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 74, + "offset": 44 + }, + "pc": 969, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.storage_addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.storage_addr", + "references": [ + { + "ap_tracking_data": { + "group": 74, + "offset": 44 + }, + "pc": 969, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 74, + "offset": 0 + }, + "pc": 964, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 74, + "offset": 51 + }, + "pc": 974, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.value": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_activation_time.write.value", + "references": [ + { + "ap_tracking_data": { + "group": 74, + "offset": 0 + }, + "pc": 964, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.addr": { + "decorators": [], + "pc": 977, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.addr.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.addr.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.addr.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.addr.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 0 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.addr.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.addr.Return", + "members": { + "res": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.addr.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.addr.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.addr.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 75, + "offset": 0 + }, + "pc": 977, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.addr.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.addr.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 75, + "offset": 0 + }, + "pc": 977, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.addr.res": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.addr.res", + "references": [ + { + "ap_tracking_data": { + "group": 75, + "offset": 0 + }, + "pc": 977, + "value": "cast(164638278579462041036025631281867532389894332681091481966876061669546035568, felt)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.hash2": { + "destination": "starkware.cairo.common.hash.hash2", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.normalize_address": { + "destination": "starkware.starknet.common.storage.normalize_address", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read": { + "decorators": [], + "pc": 982, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.Return", + "members": { + "address": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.__storage_var_temp0": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.__storage_var_temp0", + "references": [ + { + "ap_tracking_data": { + "group": 76, + "offset": 14 + }, + "pc": 990, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 18 + }, + "pc": 994, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 76, + "offset": 0 + }, + "pc": 982, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 7 + }, + "pc": 986, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 16 + }, + "pc": 992, + "value": "[cast(ap + (-1), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 76, + "offset": 0 + }, + "pc": 982, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 7 + }, + "pc": 986, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 17 + }, + "pc": 993, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.storage_addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.storage_addr", + "references": [ + { + "ap_tracking_data": { + "group": 76, + "offset": 7 + }, + "pc": 986, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.read.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 76, + "offset": 0 + }, + "pc": 982, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 14 + }, + "pc": 990, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 15 + }, + "pc": 991, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.storage_read": { + "destination": "starkware.starknet.common.syscalls.storage_read", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.storage_write": { + "destination": "starkware.starknet.common.syscalls.storage_write", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write": { + "decorators": [], + "pc": 995, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.Args", + "members": { + "value": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 77, + "offset": 0 + }, + "pc": 995, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 77, + "offset": 7 + }, + "pc": 999, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 77, + "offset": 0 + }, + "pc": 995, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 77, + "offset": 7 + }, + "pc": 999, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.storage_addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.storage_addr", + "references": [ + { + "ap_tracking_data": { + "group": 77, + "offset": 7 + }, + "pc": 999, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 77, + "offset": 0 + }, + "pc": 995, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 77, + "offset": 14 + }, + "pc": 1004, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.value": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.impl_address.write.value", + "references": [ + { + "ap_tracking_data": { + "group": 77, + "offset": 0 + }, + "pc": 995, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation": { + "decorators": ["view"], + "pc": 1145, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.Return", + "members": { + "address": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.address", + "references": [ + { + "ap_tracking_data": { + "group": 85, + "offset": 23 + }, + "pc": 1150, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 85, + "offset": 0 + }, + "pc": 1145, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 85, + "offset": 23 + }, + "pc": 1150, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 85, + "offset": 0 + }, + "pc": 1145, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 85, + "offset": 23 + }, + "pc": 1150, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 85, + "offset": 0 + }, + "pc": 1145, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 85, + "offset": 23 + }, + "pc": 1150, + "value": "[cast(ap + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.SELECTOR": { + "type": "const", + "value": 1315672471950616369479972321861946210736084026414030529222734321877576604190 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.alloc": { + "destination": "starkware.cairo.common.alloc.alloc", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit": { + "decorators": [], + "pc": 1007, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.Args", + "members": { + "eic_address": { + "cairo_type": "felt", + "offset": 1 + }, + "final": { + "cairo_type": "felt", + "offset": 4 + }, + "implementation": { + "cairo_type": "felt", + "offset": 0 + }, + "init_vector": { + "cairo_type": "felt*", + "offset": 3 + }, + "init_vector_len": { + "cairo_type": "felt", + "offset": 2 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.SIZEOF_LOCALS": { + "type": "const", + "value": 4 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1018, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1019, + "value": "cast([fp + 1] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1020, + "value": "cast([fp + 1] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1021, + "value": "cast([fp + 1] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 12 + }, + "pc": 1027, + "value": "[cast(fp + 3, felt**)]" + }, + { + "ap_tracking_data": { + "group": 79, + "offset": 0 + }, + "pc": 1034, + "value": "cast([fp + 3] + 1, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.__calldata_ptr_copy": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.__calldata_ptr_copy", + "references": [ + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1024, + "value": "cast([fp + 1] + 3, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.__data_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.__data_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1017, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1018, + "value": "[cast(fp + 1, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.__keys_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.__keys_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 78, + "offset": 7 + }, + "pc": 1011, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 7 + }, + "pc": 1012, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.__temp38": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.__temp38", + "references": [ + { + "ap_tracking_data": { + "group": 78, + "offset": 8 + }, + "pc": 1014, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.__temp39": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.__temp39", + "references": [ + { + "ap_tracking_data": { + "group": 78, + "offset": 12 + }, + "pc": 1026, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.__temp40": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.__temp40", + "references": [ + { + "ap_tracking_data": { + "group": 79, + "offset": 1 + }, + "pc": 1036, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.eic_address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.eic_address", + "references": [ + { + "ap_tracking_data": { + "group": 78, + "offset": 0 + }, + "pc": 1007, + "value": "[cast(fp + (-6), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.final": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.final", + "references": [ + { + "ap_tracking_data": { + "group": 78, + "offset": 0 + }, + "pc": 1007, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.implementation": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.implementation", + "references": [ + { + "ap_tracking_data": { + "group": 78, + "offset": 0 + }, + "pc": 1007, + "value": "[cast(fp + (-7), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.init_vector": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 78, + "offset": 0 + }, + "pc": 1007, + "value": "[cast(fp + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.init_vector_len": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 78, + "offset": 0 + }, + "pc": 1007, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 78, + "offset": 0 + }, + "pc": 1007, + "value": "[cast(fp + (-8), felt*)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1024, + "value": "[cast(fp + 2, felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 78, + "offset": 0 + }, + "pc": 1007, + "value": "[cast(fp + (-9), felt**)]" + }, + { + "ap_tracking_data": { + "group": 79, + "offset": 10 + }, + "pc": 1044, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.emit_event": { + "destination": "starkware.starknet.common.syscalls.emit_event", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_added.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.SELECTOR": { + "type": "const", + "value": 1256019443845162887772317145231898984631413081984266590366820562378534914338 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.alloc": { + "destination": "starkware.cairo.common.alloc.alloc", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit": { + "decorators": [], + "pc": 1121, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.Args", + "members": { + "implementation": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.SIZEOF_LOCALS": { + "type": "const", + "value": 2 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 84, + "offset": 9 + }, + "pc": 1132, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 9 + }, + "pc": 1133, + "value": "cast([fp + 1] + 1, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.__data_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.__data_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 84, + "offset": 9 + }, + "pc": 1131, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 9 + }, + "pc": 1132, + "value": "[cast(fp + 1, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.__keys_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.__keys_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 84, + "offset": 5 + }, + "pc": 1125, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 5 + }, + "pc": 1126, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.__temp46": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.__temp46", + "references": [ + { + "ap_tracking_data": { + "group": 84, + "offset": 6 + }, + "pc": 1128, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.__temp47": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.__temp47", + "references": [ + { + "ap_tracking_data": { + "group": 84, + "offset": 10 + }, + "pc": 1135, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.implementation": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.implementation", + "references": [ + { + "ap_tracking_data": { + "group": 84, + "offset": 0 + }, + "pc": 1121, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 84, + "offset": 0 + }, + "pc": 1121, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 84, + "offset": 0 + }, + "pc": 1121, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 19 + }, + "pc": 1143, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.emit_event": { + "destination": "starkware.starknet.common.syscalls.emit_event", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_finalized.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.SELECTOR": { + "type": "const", + "value": 1779702914585481320985194321878663664599848564032291022251970113439269195628 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.alloc": { + "destination": "starkware.cairo.common.alloc.alloc", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit": { + "decorators": [], + "pc": 1046, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.Args", + "members": { + "eic_address": { + "cairo_type": "felt", + "offset": 1 + }, + "final": { + "cairo_type": "felt", + "offset": 4 + }, + "implementation": { + "cairo_type": "felt", + "offset": 0 + }, + "init_vector": { + "cairo_type": "felt*", + "offset": 3 + }, + "init_vector_len": { + "cairo_type": "felt", + "offset": 2 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.SIZEOF_LOCALS": { + "type": "const", + "value": 4 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1057, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1058, + "value": "cast([fp + 1] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1059, + "value": "cast([fp + 1] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1060, + "value": "cast([fp + 1] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 12 + }, + "pc": 1066, + "value": "[cast(fp + 3, felt**)]" + }, + { + "ap_tracking_data": { + "group": 81, + "offset": 0 + }, + "pc": 1073, + "value": "cast([fp + 3] + 1, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.__calldata_ptr_copy": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.__calldata_ptr_copy", + "references": [ + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1063, + "value": "cast([fp + 1] + 3, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.__data_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.__data_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1056, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1057, + "value": "[cast(fp + 1, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.__keys_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.__keys_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 80, + "offset": 7 + }, + "pc": 1050, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 7 + }, + "pc": 1051, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.__temp41": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.__temp41", + "references": [ + { + "ap_tracking_data": { + "group": 80, + "offset": 8 + }, + "pc": 1053, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.__temp42": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.__temp42", + "references": [ + { + "ap_tracking_data": { + "group": 80, + "offset": 12 + }, + "pc": 1065, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.__temp43": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.__temp43", + "references": [ + { + "ap_tracking_data": { + "group": 81, + "offset": 1 + }, + "pc": 1075, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.eic_address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.eic_address", + "references": [ + { + "ap_tracking_data": { + "group": 80, + "offset": 0 + }, + "pc": 1046, + "value": "[cast(fp + (-6), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.final": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.final", + "references": [ + { + "ap_tracking_data": { + "group": 80, + "offset": 0 + }, + "pc": 1046, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.implementation": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.implementation", + "references": [ + { + "ap_tracking_data": { + "group": 80, + "offset": 0 + }, + "pc": 1046, + "value": "[cast(fp + (-7), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.init_vector": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 80, + "offset": 0 + }, + "pc": 1046, + "value": "[cast(fp + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.init_vector_len": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 80, + "offset": 0 + }, + "pc": 1046, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 80, + "offset": 0 + }, + "pc": 1046, + "value": "[cast(fp + (-8), felt*)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1063, + "value": "[cast(fp + 2, felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 80, + "offset": 0 + }, + "pc": 1046, + "value": "[cast(fp + (-9), felt**)]" + }, + { + "ap_tracking_data": { + "group": 81, + "offset": 10 + }, + "pc": 1083, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.emit_event": { + "destination": "starkware.starknet.common.syscalls.emit_event", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_removed.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time": { + "decorators": ["view"], + "pc": 1175, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.Args", + "members": { + "eic_address": { + "cairo_type": "felt", + "offset": 1 + }, + "final": { + "cairo_type": "felt", + "offset": 4 + }, + "implementation_": { + "cairo_type": "felt", + "offset": 0 + }, + "init_vector": { + "cairo_type": "felt*", + "offset": 3 + }, + "init_vector_len": { + "cairo_type": "felt", + "offset": 2 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.Return", + "members": { + "time": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.eic_address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.eic_address", + "references": [ + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-6), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.final": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.final", + "references": [ + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.implementation_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.implementation_", + "references": [ + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-7), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.implementation_key": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.implementation_key", + "references": [ + { + "ap_tracking_data": { + "group": 89, + "offset": 0 + }, + "pc": 1183, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.init_vector": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.init_vector_len": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-9), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 89, + "offset": 0 + }, + "pc": 1183, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 89, + "offset": 61 + }, + "pc": 1189, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-8), felt*)]" + }, + { + "ap_tracking_data": { + "group": 89, + "offset": 61 + }, + "pc": 1189, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-10), felt**)]" + }, + { + "ap_tracking_data": { + "group": 89, + "offset": 61 + }, + "pc": 1189, + "value": "[cast(ap + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.time": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.time", + "references": [ + { + "ap_tracking_data": { + "group": 89, + "offset": 61 + }, + "pc": 1189, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.SELECTOR": { + "type": "const", + "value": 509506113054385003903725282836392490331709332709967545719058829557420296019 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.alloc": { + "destination": "starkware.cairo.common.alloc.alloc", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit": { + "decorators": [], + "pc": 1085, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.Args", + "members": { + "eic_address": { + "cairo_type": "felt", + "offset": 1 + }, + "implementation": { + "cairo_type": "felt", + "offset": 0 + }, + "init_vector": { + "cairo_type": "felt*", + "offset": 3 + }, + "init_vector_len": { + "cairo_type": "felt", + "offset": 2 + } + }, + "size": 4, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.SIZEOF_LOCALS": { + "type": "const", + "value": 4 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.__calldata_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.__calldata_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1096, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1097, + "value": "cast([fp + 1] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1098, + "value": "cast([fp + 1] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1099, + "value": "cast([fp + 1] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 12 + }, + "pc": 1105, + "value": "[cast(fp + 3, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.__calldata_ptr_copy": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.__calldata_ptr_copy", + "references": [ + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1102, + "value": "cast([fp + 1] + 3, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.__data_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.__data_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1095, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1096, + "value": "[cast(fp + 1, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.__keys_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.__keys_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 82, + "offset": 7 + }, + "pc": 1089, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 7 + }, + "pc": 1090, + "value": "[cast(fp, felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.__temp44": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.__temp44", + "references": [ + { + "ap_tracking_data": { + "group": 82, + "offset": 8 + }, + "pc": 1092, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.__temp45": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.__temp45", + "references": [ + { + "ap_tracking_data": { + "group": 82, + "offset": 12 + }, + "pc": 1104, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.eic_address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.eic_address", + "references": [ + { + "ap_tracking_data": { + "group": 82, + "offset": 0 + }, + "pc": 1085, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.implementation": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.implementation", + "references": [ + { + "ap_tracking_data": { + "group": 82, + "offset": 0 + }, + "pc": 1085, + "value": "[cast(fp + (-6), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.init_vector": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 82, + "offset": 0 + }, + "pc": 1085, + "value": "[cast(fp + (-3), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.init_vector_len": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 82, + "offset": 0 + }, + "pc": 1085, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 82, + "offset": 0 + }, + "pc": 1085, + "value": "[cast(fp + (-7), felt*)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1102, + "value": "[cast(fp + 2, felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 82, + "offset": 0 + }, + "pc": 1085, + "value": "[cast(fp + (-8), felt**)]" + }, + { + "ap_tracking_data": { + "group": 83, + "offset": 9 + }, + "pc": 1119, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.emit_event": { + "destination": "starkware.starknet.common.syscalls.emit_event", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_upgraded.memcpy": { + "destination": "starkware.cairo.common.memcpy.memcpy", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize": { + "decorators": ["external"], + "pc": 1540, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.Args", + "members": { + "init_vector": { + "cairo_type": "felt*", + "offset": 1 + }, + "init_vector_len": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.__temp74": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.__temp74", + "references": [ + { + "ap_tracking_data": { + "group": 113, + "offset": 1 + }, + "pc": 1542, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.init_vector": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 113, + "offset": 0 + }, + "pc": 1540, + "value": "[cast(fp + (-3), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.init_vector_len": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 113, + "offset": 0 + }, + "pc": 1540, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 113, + "offset": 0 + }, + "pc": 1540, + "value": "[cast(fp + (-6), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 113, + "offset": 0 + }, + "pc": 1540, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 113, + "offset": 0 + }, + "pc": 1540, + "value": "[cast(fp + (-7), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.not_finalized": { + "destination": "starkware.starknet.apps.upgradability_proxy.finalizable.not_finalized", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.only_governor": { + "destination": "starkware.starknet.apps.upgradability_proxy.governance.only_governor", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag": { + "decorators": [], + "pc": 1575, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.Args", + "members": { + "final_flag": { + "cairo_type": "felt", + "offset": 0 + }, + "implementation_": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag._anon_label38": { + "pc": 1581, + "type": "label" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag._anon_label39": { + "pc": 1595, + "type": "label" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.final_flag": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.final_flag", + "references": [ + { + "ap_tracking_data": { + "group": 115, + "offset": 0 + }, + "pc": 1575, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.implementation_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.implementation_", + "references": [ + { + "ap_tracking_data": { + "group": 115, + "offset": 0 + }, + "pc": 1575, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 115, + "offset": 0 + }, + "pc": 1575, + "value": "[cast(fp + (-6), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 60 + }, + "pc": 1586, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 115, + "offset": 0 + }, + "pc": 1575, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 60 + }, + "pc": 1586, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 85 + }, + "pc": 1591, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.process_final_flag.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 115, + "offset": 0 + }, + "pc": 1575, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 60 + }, + "pc": 1586, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 85 + }, + "pc": 1591, + "value": "[cast(ap + (-2), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation": { + "decorators": ["external"], + "pc": 1314, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.Args", + "members": { + "eic_address": { + "cairo_type": "felt", + "offset": 1 + }, + "final": { + "cairo_type": "felt", + "offset": 4 + }, + "implementation_": { + "cairo_type": "felt", + "offset": 0 + }, + "init_vector": { + "cairo_type": "felt*", + "offset": 3 + }, + "init_vector_len": { + "cairo_type": "felt", + "offset": 2 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.SIZEOF_LOCALS": { + "type": "const", + "value": 3 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation._anon_label30": { + "pc": 1343, + "type": "label" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation._anon_label31": { + "pc": 1343, + "type": "label" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.eic_address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.eic_address", + "references": [ + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-6), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.final": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.final", + "references": [ + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.implementation_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.implementation_", + "references": [ + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-7), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.implementation_key": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.implementation_key", + "references": [ + { + "ap_tracking_data": { + "group": 99, + "offset": 0 + }, + "pc": 1331, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.init_vector": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.init_vector_len": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-9), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 83 + }, + "pc": 1321, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 0 + }, + "pc": 1329, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 61 + }, + "pc": 1335, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 121 + }, + "pc": 1349, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 86 + }, + "pc": 1321, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 0 + }, + "pc": 1331, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 61 + }, + "pc": 1337, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 121 + }, + "pc": 1351, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 121 + }, + "pc": 1352, + "value": "[cast(fp + 2, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-8), felt*)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 83 + }, + "pc": 1321, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 61 + }, + "pc": 1335, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 121 + }, + "pc": 1349, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 100, + "offset": 0 + }, + "pc": 1358, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 86 + }, + "pc": 1321, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 86 + }, + "pc": 1323, + "value": "[cast(fp + 1, felt*)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 61 + }, + "pc": 1337, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 121 + }, + "pc": 1351, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 100, + "offset": 0 + }, + "pc": 1361, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-10), felt**)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 83 + }, + "pc": 1321, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 61 + }, + "pc": 1335, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 121 + }, + "pc": 1349, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 100, + "offset": 0 + }, + "pc": 1358, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 86 + }, + "pc": 1321, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 86 + }, + "pc": 1322, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 61 + }, + "pc": 1337, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 121 + }, + "pc": 1351, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 100, + "offset": 0 + }, + "pc": 1361, + "value": "[cast(ap + (-2), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.time": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.time", + "references": [ + { + "ap_tracking_data": { + "group": 99, + "offset": 61 + }, + "pc": 1337, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address": { + "decorators": [], + "pc": 1595, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.Args", + "members": { + "impl_address_": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.impl_address_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.impl_address_", + "references": [ + { + "ap_tracking_data": { + "group": 116, + "offset": 0 + }, + "pc": 1595, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 116, + "offset": 0 + }, + "pc": 1595, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 83 + }, + "pc": 1600, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 102 + }, + "pc": 1603, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 116, + "offset": 0 + }, + "pc": 1595, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 83 + }, + "pc": 1600, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 102 + }, + "pc": 1603, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.set_implementation_address.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 116, + "offset": 0 + }, + "pc": 1595, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 83 + }, + "pc": 1600, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 102 + }, + "pc": 1603, + "value": "[cast(ap + (-3), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay": { + "type": "namespace" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.HashBuiltin": { + "destination": "starkware.cairo.common.cairo_builtins.HashBuiltin", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.ImplicitArgs", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.addr": { + "decorators": [], + "pc": 906, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.addr.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.addr.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.addr.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.addr.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 0 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.addr.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.addr.Return", + "members": { + "res": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.addr.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.addr.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.addr.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 69, + "offset": 0 + }, + "pc": 906, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.addr.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.addr.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 69, + "offset": 0 + }, + "pc": 906, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.addr.res": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.addr.res", + "references": [ + { + "ap_tracking_data": { + "group": 69, + "offset": 0 + }, + "pc": 906, + "value": "cast(112691762003367666990514078335904576139457736111203235783537794266546875388, felt)" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.hash2": { + "destination": "starkware.cairo.common.hash.hash2", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.normalize_address": { + "destination": "starkware.starknet.common.storage.normalize_address", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read": { + "decorators": [], + "pc": 911, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.Return", + "members": { + "delay_seconds": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.__storage_var_temp0": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.__storage_var_temp0", + "references": [ + { + "ap_tracking_data": { + "group": 70, + "offset": 14 + }, + "pc": 919, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 18 + }, + "pc": 923, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 70, + "offset": 0 + }, + "pc": 911, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 7 + }, + "pc": 915, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 16 + }, + "pc": 921, + "value": "[cast(ap + (-1), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 70, + "offset": 0 + }, + "pc": 911, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 7 + }, + "pc": 915, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 17 + }, + "pc": 922, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.storage_addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.storage_addr", + "references": [ + { + "ap_tracking_data": { + "group": 70, + "offset": 7 + }, + "pc": 915, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.read.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 70, + "offset": 0 + }, + "pc": 911, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 14 + }, + "pc": 919, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 15 + }, + "pc": 920, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.storage_read": { + "destination": "starkware.starknet.common.syscalls.storage_read", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.storage_write": { + "destination": "starkware.starknet.common.syscalls.storage_write", + "type": "alias" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write": { + "decorators": [], + "pc": 924, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.Args", + "members": { + "value": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 71, + "offset": 0 + }, + "pc": 924, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 71, + "offset": 7 + }, + "pc": 928, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 71, + "offset": 0 + }, + "pc": 924, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 71, + "offset": 7 + }, + "pc": 928, + "value": "[cast(ap + (-2), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.storage_addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.storage_addr", + "references": [ + { + "ap_tracking_data": { + "group": 71, + "offset": 7 + }, + "pc": 928, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 71, + "offset": 0 + }, + "pc": 924, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 71, + "offset": 14 + }, + "pc": 933, + "value": "[cast(ap + (-1), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.value": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_delay.write.value", + "references": [ + { + "ap_tracking_data": { + "group": 71, + "offset": 0 + }, + "pc": 924, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to": { + "decorators": ["external"], + "pc": 1397, + "type": "function" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.Args": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.Args", + "members": { + "eic_address": { + "cairo_type": "felt", + "offset": 1 + }, + "final": { + "cairo_type": "felt", + "offset": 4 + }, + "implementation_": { + "cairo_type": "felt", + "offset": 0 + }, + "init_vector": { + "cairo_type": "felt*", + "offset": 3 + }, + "init_vector_len": { + "cairo_type": "felt", + "offset": 2 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.ImplicitArgs": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.ImplicitArgs", + "members": { + "pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "offset": 1 + }, + "range_check_ptr": { + "cairo_type": "felt", + "offset": 2 + }, + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.Return": { + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.SIZEOF_LOCALS": { + "type": "const", + "value": 9 + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to._anon_label32": { + "pc": 1443, + "type": "label" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to._anon_label33": { + "pc": 1448, + "type": "label" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to._anon_label34": { + "pc": 1475, + "type": "label" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to._anon_label35": { + "pc": 1486, + "type": "label" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to._anon_label36": { + "pc": 1504, + "type": "label" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to._anon_label37": { + "pc": 1508, + "type": "label" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.activation_time": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.activation_time", + "references": [ + { + "ap_tracking_data": { + "group": 104, + "offset": 61 + }, + "pc": 1426, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 61 + }, + "pc": 1427, + "value": "[cast(fp + 3, felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.current_impl": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.current_impl", + "references": [ + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1435, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1436, + "value": "[cast(fp + 4, felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.eic_address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.eic_address", + "references": [ + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-6), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.final": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.final", + "references": [ + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.implementation_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.implementation_", + "references": [ + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-7), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.implementation_key": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.implementation_key", + "references": [ + { + "ap_tracking_data": { + "group": 104, + "offset": 0 + }, + "pc": 1420, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.init_vector": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.init_vector", + "references": [ + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-4), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.init_vector_len": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.init_vector_len", + "references": [ + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.initialized_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.initialized_", + "references": [ + { + "ap_tracking_data": { + "group": 108, + "offset": 24 + }, + "pc": 1491, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.now_": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.now_", + "references": [ + { + "ap_tracking_data": { + "group": 103, + "offset": 131 + }, + "pc": 1410, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 131 + }, + "pc": 1411, + "value": "[cast(fp + 1, felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.pedersen_ptr": { + "cairo_type": "starkware.cairo.common.cairo_builtins.HashBuiltin*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.pedersen_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-9), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 86 + }, + "pc": 1404, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 119 + }, + "pc": 1406, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 0 + }, + "pc": 1418, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 61 + }, + "pc": 1424, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1433, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 106, + "offset": 0 + }, + "pc": 1450, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 0 + }, + "pc": 1465, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 92 + }, + "pc": 1404, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 125 + }, + "pc": 1406, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 0 + }, + "pc": 1420, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 61 + }, + "pc": 1426, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1435, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1438, + "value": "[cast(fp + 6, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 106, + "offset": 0 + }, + "pc": 1454, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 106, + "offset": 0 + }, + "pc": 1455, + "value": "[cast(fp + 7, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 0 + }, + "pc": 1470, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 0 + }, + "pc": 1471, + "value": "[cast(fp + 8, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-8), felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 86 + }, + "pc": 1404, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 119 + }, + "pc": 1406, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 61 + }, + "pc": 1424, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1433, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 93 + }, + "pc": 1437, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 102 + }, + "pc": 1444, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 102 + }, + "pc": 1444, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 106, + "offset": 0 + }, + "pc": 1450, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 107, + "offset": 0 + }, + "pc": 1458, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 0 + }, + "pc": 1465, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 109, + "offset": 0 + }, + "pc": 1476, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 24 + }, + "pc": 1485, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 110, + "offset": 0 + }, + "pc": 1494, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 92 + }, + "pc": 1404, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 125 + }, + "pc": 1406, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 125 + }, + "pc": 1407, + "value": "[cast(fp, felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 61 + }, + "pc": 1426, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1435, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 93 + }, + "pc": 1441, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 102 + }, + "pc": 1448, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 102 + }, + "pc": 1448, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 106, + "offset": 0 + }, + "pc": 1454, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 107, + "offset": 0 + }, + "pc": 1463, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 0 + }, + "pc": 1470, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 109, + "offset": 0 + }, + "pc": 1482, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 24 + }, + "pc": 1491, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 110, + "offset": 0 + }, + "pc": 1500, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-10), felt**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 86 + }, + "pc": 1404, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 119 + }, + "pc": 1406, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 125 + }, + "pc": 1409, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 61 + }, + "pc": 1424, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1433, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 106, + "offset": 0 + }, + "pc": 1450, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 107, + "offset": 0 + }, + "pc": 1458, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 0 + }, + "pc": 1465, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 109, + "offset": 0 + }, + "pc": 1476, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 24 + }, + "pc": 1485, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 110, + "offset": 0 + }, + "pc": 1494, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 92 + }, + "pc": 1404, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 125 + }, + "pc": 1406, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 131 + }, + "pc": 1410, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 131 + }, + "pc": 1412, + "value": "[cast(fp + 2, felt**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 61 + }, + "pc": 1426, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1435, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1437, + "value": "[cast(fp + 5, felt**)]" + }, + { + "ap_tracking_data": { + "group": 106, + "offset": 0 + }, + "pc": 1454, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 107, + "offset": 0 + }, + "pc": 1463, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 0 + }, + "pc": 1470, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 109, + "offset": 0 + }, + "pc": 1482, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 24 + }, + "pc": 1491, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 110, + "offset": 0 + }, + "pc": 1500, + "value": "[cast(ap + (-2), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.storage.ADDR_BOUND": { + "type": "const", + "value": -106710729501573572985208420194530329073740042555888586719489 + }, + "starkware.starknet.common.storage.MAX_STORAGE_ITEM_SIZE": { + "type": "const", + "value": 256 + }, + "starkware.starknet.common.storage.assert_250_bit": { + "destination": "starkware.cairo.common.math.assert_250_bit", + "type": "alias" + }, + "starkware.starknet.common.storage.normalize_address": { + "decorators": ["known_ap_change"], + "pc": 57, + "type": "function" + }, + "starkware.starknet.common.storage.normalize_address.Args": { + "full_name": "starkware.starknet.common.storage.normalize_address.Args", + "members": { + "addr": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.storage.normalize_address.ImplicitArgs": { + "full_name": "starkware.starknet.common.storage.normalize_address.ImplicitArgs", + "members": { + "range_check_ptr": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.storage.normalize_address.Return": { + "full_name": "starkware.starknet.common.storage.normalize_address.Return", + "members": { + "res": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.storage.normalize_address.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.common.storage.normalize_address.__temp8": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.storage.normalize_address.__temp8", + "references": [ + { + "ap_tracking_data": { + "group": 8, + "offset": 13 + }, + "pc": 68, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.storage.normalize_address.__temp9": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.storage.normalize_address.__temp9", + "references": [ + { + "ap_tracking_data": { + "group": 8, + "offset": 13 + }, + "pc": 83, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.storage.normalize_address._anon_label22": { + "pc": 75, + "type": "label" + }, + "starkware.starknet.common.storage.normalize_address._anon_label23": { + "pc": 97, + "type": "label" + }, + "starkware.starknet.common.storage.normalize_address._anon_label24": { + "pc": 89, + "type": "label" + }, + "starkware.starknet.common.storage.normalize_address._anon_label25": { + "pc": 95, + "type": "label" + }, + "starkware.starknet.common.storage.normalize_address.addr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.storage.normalize_address.addr", + "references": [ + { + "ap_tracking_data": { + "group": 8, + "offset": 0 + }, + "pc": 57, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.storage.normalize_address.is_250": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.storage.normalize_address.is_250", + "references": [ + { + "ap_tracking_data": { + "group": 8, + "offset": 2 + }, + "pc": 77, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.storage.normalize_address.is_small": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.storage.normalize_address.is_small", + "references": [ + { + "ap_tracking_data": { + "group": 8, + "offset": 1 + }, + "pc": 59, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.storage.normalize_address.range_check_ptr": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.storage.normalize_address.range_check_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 8, + "offset": 0 + }, + "pc": 57, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 12 + }, + "pc": 66, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 24 + }, + "pc": 72, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 24 + }, + "pc": 87, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 24 + }, + "pc": 95, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.storage.normalize_address.x": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.storage.normalize_address.x", + "references": [ + { + "ap_tracking_data": { + "group": 8, + "offset": 1 + }, + "pc": 61, + "value": "cast([fp + (-3)] + 106710729501573572985208420194530329073740042555888586719489, felt)" + } + ], + "type": "reference" + }, + "starkware.starknet.common.storage.normalize_address.y": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.storage.normalize_address.y", + "references": [ + { + "ap_tracking_data": { + "group": 8, + "offset": 1 + }, + "pc": 61, + "value": "cast((-1) - [fp + (-3)], felt)" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.CALL_CONTRACT_SELECTOR": { + "type": "const", + "value": 20853273475220472486191784820 + }, + "starkware.starknet.common.syscalls.CallContract": { + "full_name": "starkware.starknet.common.syscalls.CallContract", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.CallContractRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.CallContractResponse", + "offset": 5 + } + }, + "size": 7, + "type": "struct" + }, + "starkware.starknet.common.syscalls.CallContractRequest": { + "full_name": "starkware.starknet.common.syscalls.CallContractRequest", + "members": { + "calldata": { + "cairo_type": "felt*", + "offset": 4 + }, + "calldata_size": { + "cairo_type": "felt", + "offset": 3 + }, + "contract_address": { + "cairo_type": "felt", + "offset": 1 + }, + "function_selector": { + "cairo_type": "felt", + "offset": 2 + }, + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.starknet.common.syscalls.CallContractResponse": { + "full_name": "starkware.starknet.common.syscalls.CallContractResponse", + "members": { + "retdata": { + "cairo_type": "felt*", + "offset": 1 + }, + "retdata_size": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.DELEGATE_CALL_SELECTOR": { + "type": "const", + "value": 21167594061783206823196716140 + }, + "starkware.starknet.common.syscalls.DELEGATE_L1_HANDLER_SELECTOR": { + "type": "const", + "value": 23274015802972845247556842986379118667122 + }, + "starkware.starknet.common.syscalls.DictAccess": { + "destination": "starkware.cairo.common.dict_access.DictAccess", + "type": "alias" + }, + "starkware.starknet.common.syscalls.EMIT_EVENT_SELECTOR": { + "type": "const", + "value": 1280709301550335749748 + }, + "starkware.starknet.common.syscalls.EmitEvent": { + "full_name": "starkware.starknet.common.syscalls.EmitEvent", + "members": { + "data": { + "cairo_type": "felt*", + "offset": 4 + }, + "data_len": { + "cairo_type": "felt", + "offset": 3 + }, + "keys": { + "cairo_type": "felt*", + "offset": 2 + }, + "keys_len": { + "cairo_type": "felt", + "offset": 1 + }, + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GET_BLOCK_NUMBER_SELECTOR": { + "type": "const", + "value": 1448089106835523001438702345020786 + }, + "starkware.starknet.common.syscalls.GET_BLOCK_TIMESTAMP_SELECTOR": { + "type": "const", + "value": 24294903732626645868215235778792757751152 + }, + "starkware.starknet.common.syscalls.GET_CALLER_ADDRESS_SELECTOR": { + "type": "const", + "value": 94901967781393078444254803017658102643 + }, + "starkware.starknet.common.syscalls.GET_CONTRACT_ADDRESS_SELECTOR": { + "type": "const", + "value": 6219495360805491471215297013070624192820083 + }, + "starkware.starknet.common.syscalls.GET_SEQUENCER_ADDRESS_SELECTOR": { + "type": "const", + "value": 1592190833581991703053805829594610833820054387 + }, + "starkware.starknet.common.syscalls.GET_TX_INFO_SELECTOR": { + "type": "const", + "value": 1317029390204112103023 + }, + "starkware.starknet.common.syscalls.GET_TX_SIGNATURE_SELECTOR": { + "type": "const", + "value": 1448089128652340074717162277007973 + }, + "starkware.starknet.common.syscalls.GetBlockNumber": { + "full_name": "starkware.starknet.common.syscalls.GetBlockNumber", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.GetBlockNumberRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.GetBlockNumberResponse", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetBlockNumberRequest": { + "full_name": "starkware.starknet.common.syscalls.GetBlockNumberRequest", + "members": { + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetBlockNumberResponse": { + "full_name": "starkware.starknet.common.syscalls.GetBlockNumberResponse", + "members": { + "block_number": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetBlockTimestamp": { + "full_name": "starkware.starknet.common.syscalls.GetBlockTimestamp", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.GetBlockTimestampRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.GetBlockTimestampResponse", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetBlockTimestampRequest": { + "full_name": "starkware.starknet.common.syscalls.GetBlockTimestampRequest", + "members": { + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetBlockTimestampResponse": { + "full_name": "starkware.starknet.common.syscalls.GetBlockTimestampResponse", + "members": { + "block_timestamp": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetCallerAddress": { + "full_name": "starkware.starknet.common.syscalls.GetCallerAddress", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.GetCallerAddressRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.GetCallerAddressResponse", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetCallerAddressRequest": { + "full_name": "starkware.starknet.common.syscalls.GetCallerAddressRequest", + "members": { + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetCallerAddressResponse": { + "full_name": "starkware.starknet.common.syscalls.GetCallerAddressResponse", + "members": { + "caller_address": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetContractAddress": { + "full_name": "starkware.starknet.common.syscalls.GetContractAddress", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.GetContractAddressRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.GetContractAddressResponse", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetContractAddressRequest": { + "full_name": "starkware.starknet.common.syscalls.GetContractAddressRequest", + "members": { + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetContractAddressResponse": { + "full_name": "starkware.starknet.common.syscalls.GetContractAddressResponse", + "members": { + "contract_address": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetSequencerAddress": { + "full_name": "starkware.starknet.common.syscalls.GetSequencerAddress", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.GetSequencerAddressRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.GetSequencerAddressResponse", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetSequencerAddressRequest": { + "full_name": "starkware.starknet.common.syscalls.GetSequencerAddressRequest", + "members": { + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetSequencerAddressResponse": { + "full_name": "starkware.starknet.common.syscalls.GetSequencerAddressResponse", + "members": { + "sequencer_address": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetTxInfo": { + "full_name": "starkware.starknet.common.syscalls.GetTxInfo", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.GetTxInfoRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.GetTxInfoResponse", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetTxInfoRequest": { + "full_name": "starkware.starknet.common.syscalls.GetTxInfoRequest", + "members": { + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetTxInfoResponse": { + "full_name": "starkware.starknet.common.syscalls.GetTxInfoResponse", + "members": { + "tx_info": { + "cairo_type": "starkware.starknet.common.syscalls.TxInfo*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetTxSignature": { + "full_name": "starkware.starknet.common.syscalls.GetTxSignature", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.GetTxSignatureRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.GetTxSignatureResponse", + "offset": 1 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetTxSignatureRequest": { + "full_name": "starkware.starknet.common.syscalls.GetTxSignatureRequest", + "members": { + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.GetTxSignatureResponse": { + "full_name": "starkware.starknet.common.syscalls.GetTxSignatureResponse", + "members": { + "signature": { + "cairo_type": "felt*", + "offset": 1 + }, + "signature_len": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.SEND_MESSAGE_TO_L1_SELECTOR": { + "type": "const", + "value": 433017908768303439907196859243777073 + }, + "starkware.starknet.common.syscalls.STORAGE_READ_SELECTOR": { + "type": "const", + "value": 100890693370601760042082660 + }, + "starkware.starknet.common.syscalls.STORAGE_WRITE_SELECTOR": { + "type": "const", + "value": 25828017502874050592466629733 + }, + "starkware.starknet.common.syscalls.SendMessageToL1SysCall": { + "full_name": "starkware.starknet.common.syscalls.SendMessageToL1SysCall", + "members": { + "payload_ptr": { + "cairo_type": "felt*", + "offset": 3 + }, + "payload_size": { + "cairo_type": "felt", + "offset": 2 + }, + "selector": { + "cairo_type": "felt", + "offset": 0 + }, + "to_address": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 4, + "type": "struct" + }, + "starkware.starknet.common.syscalls.StorageRead": { + "full_name": "starkware.starknet.common.syscalls.StorageRead", + "members": { + "request": { + "cairo_type": "starkware.starknet.common.syscalls.StorageReadRequest", + "offset": 0 + }, + "response": { + "cairo_type": "starkware.starknet.common.syscalls.StorageReadResponse", + "offset": 2 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.common.syscalls.StorageReadRequest": { + "full_name": "starkware.starknet.common.syscalls.StorageReadRequest", + "members": { + "address": { + "cairo_type": "felt", + "offset": 1 + }, + "selector": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.StorageReadResponse": { + "full_name": "starkware.starknet.common.syscalls.StorageReadResponse", + "members": { + "value": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.StorageWrite": { + "full_name": "starkware.starknet.common.syscalls.StorageWrite", + "members": { + "address": { + "cairo_type": "felt", + "offset": 1 + }, + "selector": { + "cairo_type": "felt", + "offset": 0 + }, + "value": { + "cairo_type": "felt", + "offset": 2 + } + }, + "size": 3, + "type": "struct" + }, + "starkware.starknet.common.syscalls.TxInfo": { + "full_name": "starkware.starknet.common.syscalls.TxInfo", + "members": { + "account_contract_address": { + "cairo_type": "felt", + "offset": 1 + }, + "max_fee": { + "cairo_type": "felt", + "offset": 2 + }, + "signature": { + "cairo_type": "felt*", + "offset": 4 + }, + "signature_len": { + "cairo_type": "felt", + "offset": 3 + }, + "version": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 5, + "type": "struct" + }, + "starkware.starknet.common.syscalls.delegate_call": { + "decorators": [], + "pc": 97, + "type": "function" + }, + "starkware.starknet.common.syscalls.delegate_call.Args": { + "full_name": "starkware.starknet.common.syscalls.delegate_call.Args", + "members": { + "calldata": { + "cairo_type": "felt*", + "offset": 3 + }, + "calldata_size": { + "cairo_type": "felt", + "offset": 2 + }, + "contract_address": { + "cairo_type": "felt", + "offset": 0 + }, + "function_selector": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 4, + "type": "struct" + }, + "starkware.starknet.common.syscalls.delegate_call.ImplicitArgs": { + "full_name": "starkware.starknet.common.syscalls.delegate_call.ImplicitArgs", + "members": { + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.delegate_call.Return": { + "full_name": "starkware.starknet.common.syscalls.delegate_call.Return", + "members": { + "retdata": { + "cairo_type": "felt*", + "offset": 1 + }, + "retdata_size": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.delegate_call.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.common.syscalls.delegate_call.__temp10": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.delegate_call.__temp10", + "references": [ + { + "ap_tracking_data": { + "group": 9, + "offset": 1 + }, + "pc": 99, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_call.calldata": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.common.syscalls.delegate_call.calldata", + "references": [ + { + "ap_tracking_data": { + "group": 9, + "offset": 0 + }, + "pc": 97, + "value": "[cast(fp + (-3), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_call.calldata_size": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.delegate_call.calldata_size", + "references": [ + { + "ap_tracking_data": { + "group": 9, + "offset": 0 + }, + "pc": 97, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_call.contract_address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.delegate_call.contract_address", + "references": [ + { + "ap_tracking_data": { + "group": 9, + "offset": 0 + }, + "pc": 97, + "value": "[cast(fp + (-6), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_call.function_selector": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.delegate_call.function_selector", + "references": [ + { + "ap_tracking_data": { + "group": 9, + "offset": 0 + }, + "pc": 97, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_call.response": { + "cairo_type": "starkware.starknet.common.syscalls.CallContractResponse", + "full_name": "starkware.starknet.common.syscalls.delegate_call.response", + "references": [ + { + "ap_tracking_data": { + "group": 9, + "offset": 1 + }, + "pc": 104, + "value": "[cast([fp + (-7)] + 5, starkware.starknet.common.syscalls.CallContractResponse*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_call.syscall": { + "cairo_type": "starkware.starknet.common.syscalls.CallContract", + "full_name": "starkware.starknet.common.syscalls.delegate_call.syscall", + "references": [ + { + "ap_tracking_data": { + "group": 9, + "offset": 0 + }, + "pc": 97, + "value": "[cast([fp + (-7)], starkware.starknet.common.syscalls.CallContract*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_call.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.common.syscalls.delegate_call.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 9, + "offset": 0 + }, + "pc": 97, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 9, + "offset": 1 + }, + "pc": 104, + "value": "cast([fp + (-7)] + 7, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_l1_handler": { + "decorators": [], + "pc": 109, + "type": "function" + }, + "starkware.starknet.common.syscalls.delegate_l1_handler.Args": { + "full_name": "starkware.starknet.common.syscalls.delegate_l1_handler.Args", + "members": { + "calldata": { + "cairo_type": "felt*", + "offset": 3 + }, + "calldata_size": { + "cairo_type": "felt", + "offset": 2 + }, + "contract_address": { + "cairo_type": "felt", + "offset": 0 + }, + "function_selector": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 4, + "type": "struct" + }, + "starkware.starknet.common.syscalls.delegate_l1_handler.ImplicitArgs": { + "full_name": "starkware.starknet.common.syscalls.delegate_l1_handler.ImplicitArgs", + "members": { + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.delegate_l1_handler.Return": { + "full_name": "starkware.starknet.common.syscalls.delegate_l1_handler.Return", + "members": { + "retdata": { + "cairo_type": "felt*", + "offset": 1 + }, + "retdata_size": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.delegate_l1_handler.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.common.syscalls.delegate_l1_handler.__temp11": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.delegate_l1_handler.__temp11", + "references": [ + { + "ap_tracking_data": { + "group": 10, + "offset": 1 + }, + "pc": 111, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_l1_handler.calldata": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.common.syscalls.delegate_l1_handler.calldata", + "references": [ + { + "ap_tracking_data": { + "group": 10, + "offset": 0 + }, + "pc": 109, + "value": "[cast(fp + (-3), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_l1_handler.calldata_size": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.delegate_l1_handler.calldata_size", + "references": [ + { + "ap_tracking_data": { + "group": 10, + "offset": 0 + }, + "pc": 109, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_l1_handler.contract_address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.delegate_l1_handler.contract_address", + "references": [ + { + "ap_tracking_data": { + "group": 10, + "offset": 0 + }, + "pc": 109, + "value": "[cast(fp + (-6), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_l1_handler.function_selector": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.delegate_l1_handler.function_selector", + "references": [ + { + "ap_tracking_data": { + "group": 10, + "offset": 0 + }, + "pc": 109, + "value": "[cast(fp + (-5), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_l1_handler.response": { + "cairo_type": "starkware.starknet.common.syscalls.CallContractResponse", + "full_name": "starkware.starknet.common.syscalls.delegate_l1_handler.response", + "references": [ + { + "ap_tracking_data": { + "group": 10, + "offset": 1 + }, + "pc": 116, + "value": "[cast([fp + (-7)] + 5, starkware.starknet.common.syscalls.CallContractResponse*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_l1_handler.syscall": { + "cairo_type": "starkware.starknet.common.syscalls.CallContract", + "full_name": "starkware.starknet.common.syscalls.delegate_l1_handler.syscall", + "references": [ + { + "ap_tracking_data": { + "group": 10, + "offset": 0 + }, + "pc": 109, + "value": "[cast([fp + (-7)], starkware.starknet.common.syscalls.CallContract*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.delegate_l1_handler.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.common.syscalls.delegate_l1_handler.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 10, + "offset": 0 + }, + "pc": 109, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 10, + "offset": 1 + }, + "pc": 116, + "value": "cast([fp + (-7)] + 7, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.emit_event": { + "decorators": [], + "pc": 151, + "type": "function" + }, + "starkware.starknet.common.syscalls.emit_event.Args": { + "full_name": "starkware.starknet.common.syscalls.emit_event.Args", + "members": { + "data": { + "cairo_type": "felt*", + "offset": 3 + }, + "data_len": { + "cairo_type": "felt", + "offset": 2 + }, + "keys": { + "cairo_type": "felt*", + "offset": 1 + }, + "keys_len": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 4, + "type": "struct" + }, + "starkware.starknet.common.syscalls.emit_event.ImplicitArgs": { + "full_name": "starkware.starknet.common.syscalls.emit_event.ImplicitArgs", + "members": { + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.emit_event.Return": { + "full_name": "starkware.starknet.common.syscalls.emit_event.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.common.syscalls.emit_event.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.common.syscalls.emit_event.__temp16": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.emit_event.__temp16", + "references": [ + { + "ap_tracking_data": { + "group": 15, + "offset": 1 + }, + "pc": 153, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.emit_event.data": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.common.syscalls.emit_event.data", + "references": [ + { + "ap_tracking_data": { + "group": 15, + "offset": 0 + }, + "pc": 151, + "value": "[cast(fp + (-3), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.emit_event.data_len": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.emit_event.data_len", + "references": [ + { + "ap_tracking_data": { + "group": 15, + "offset": 0 + }, + "pc": 151, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.emit_event.keys": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.common.syscalls.emit_event.keys", + "references": [ + { + "ap_tracking_data": { + "group": 15, + "offset": 0 + }, + "pc": 151, + "value": "[cast(fp + (-5), felt**)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.emit_event.keys_len": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.emit_event.keys_len", + "references": [ + { + "ap_tracking_data": { + "group": 15, + "offset": 0 + }, + "pc": 151, + "value": "[cast(fp + (-6), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.emit_event.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.common.syscalls.emit_event.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 15, + "offset": 0 + }, + "pc": 151, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 15, + "offset": 1 + }, + "pc": 158, + "value": "cast([fp + (-7)] + 5, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.get_block_timestamp": { + "decorators": [], + "pc": 128, + "type": "function" + }, + "starkware.starknet.common.syscalls.get_block_timestamp.Args": { + "full_name": "starkware.starknet.common.syscalls.get_block_timestamp.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.common.syscalls.get_block_timestamp.ImplicitArgs": { + "full_name": "starkware.starknet.common.syscalls.get_block_timestamp.ImplicitArgs", + "members": { + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.get_block_timestamp.Return": { + "full_name": "starkware.starknet.common.syscalls.get_block_timestamp.Return", + "members": { + "block_timestamp": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.get_block_timestamp.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.common.syscalls.get_block_timestamp.__temp13": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.get_block_timestamp.__temp13", + "references": [ + { + "ap_tracking_data": { + "group": 12, + "offset": 1 + }, + "pc": 130, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.get_block_timestamp.syscall": { + "cairo_type": "starkware.starknet.common.syscalls.GetBlockTimestamp", + "full_name": "starkware.starknet.common.syscalls.get_block_timestamp.syscall", + "references": [ + { + "ap_tracking_data": { + "group": 12, + "offset": 0 + }, + "pc": 128, + "value": "[cast([fp + (-3)], starkware.starknet.common.syscalls.GetBlockTimestamp*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.get_block_timestamp.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.common.syscalls.get_block_timestamp.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 12, + "offset": 0 + }, + "pc": 128, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 12, + "offset": 1 + }, + "pc": 131, + "value": "cast([fp + (-3)] + 2, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.get_caller_address": { + "decorators": [], + "pc": 121, + "type": "function" + }, + "starkware.starknet.common.syscalls.get_caller_address.Args": { + "full_name": "starkware.starknet.common.syscalls.get_caller_address.Args", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.common.syscalls.get_caller_address.ImplicitArgs": { + "full_name": "starkware.starknet.common.syscalls.get_caller_address.ImplicitArgs", + "members": { + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.get_caller_address.Return": { + "full_name": "starkware.starknet.common.syscalls.get_caller_address.Return", + "members": { + "caller_address": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.get_caller_address.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.common.syscalls.get_caller_address.__temp12": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.get_caller_address.__temp12", + "references": [ + { + "ap_tracking_data": { + "group": 11, + "offset": 1 + }, + "pc": 123, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.get_caller_address.syscall": { + "cairo_type": "starkware.starknet.common.syscalls.GetCallerAddress", + "full_name": "starkware.starknet.common.syscalls.get_caller_address.syscall", + "references": [ + { + "ap_tracking_data": { + "group": 11, + "offset": 0 + }, + "pc": 121, + "value": "[cast([fp + (-3)], starkware.starknet.common.syscalls.GetCallerAddress*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.get_caller_address.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.common.syscalls.get_caller_address.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 11, + "offset": 0 + }, + "pc": 121, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 11, + "offset": 1 + }, + "pc": 124, + "value": "cast([fp + (-3)] + 2, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.storage_read": { + "decorators": [], + "pc": 135, + "type": "function" + }, + "starkware.starknet.common.syscalls.storage_read.Args": { + "full_name": "starkware.starknet.common.syscalls.storage_read.Args", + "members": { + "address": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.storage_read.ImplicitArgs": { + "full_name": "starkware.starknet.common.syscalls.storage_read.ImplicitArgs", + "members": { + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.storage_read.Return": { + "full_name": "starkware.starknet.common.syscalls.storage_read.Return", + "members": { + "value": { + "cairo_type": "felt", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.storage_read.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.common.syscalls.storage_read.__temp14": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.storage_read.__temp14", + "references": [ + { + "ap_tracking_data": { + "group": 13, + "offset": 1 + }, + "pc": 137, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.storage_read.address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.storage_read.address", + "references": [ + { + "ap_tracking_data": { + "group": 13, + "offset": 0 + }, + "pc": 135, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.storage_read.response": { + "cairo_type": "starkware.starknet.common.syscalls.StorageReadResponse", + "full_name": "starkware.starknet.common.syscalls.storage_read.response", + "references": [ + { + "ap_tracking_data": { + "group": 13, + "offset": 1 + }, + "pc": 139, + "value": "[cast([fp + (-4)] + 2, starkware.starknet.common.syscalls.StorageReadResponse*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.storage_read.syscall": { + "cairo_type": "starkware.starknet.common.syscalls.StorageRead", + "full_name": "starkware.starknet.common.syscalls.storage_read.syscall", + "references": [ + { + "ap_tracking_data": { + "group": 13, + "offset": 0 + }, + "pc": 135, + "value": "[cast([fp + (-4)], starkware.starknet.common.syscalls.StorageRead*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.storage_read.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.common.syscalls.storage_read.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 13, + "offset": 0 + }, + "pc": 135, + "value": "[cast(fp + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 13, + "offset": 1 + }, + "pc": 139, + "value": "cast([fp + (-4)] + 3, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.storage_write": { + "decorators": [], + "pc": 143, + "type": "function" + }, + "starkware.starknet.common.syscalls.storage_write.Args": { + "full_name": "starkware.starknet.common.syscalls.storage_write.Args", + "members": { + "address": { + "cairo_type": "felt", + "offset": 0 + }, + "value": { + "cairo_type": "felt", + "offset": 1 + } + }, + "size": 2, + "type": "struct" + }, + "starkware.starknet.common.syscalls.storage_write.ImplicitArgs": { + "full_name": "starkware.starknet.common.syscalls.storage_write.ImplicitArgs", + "members": { + "syscall_ptr": { + "cairo_type": "felt*", + "offset": 0 + } + }, + "size": 1, + "type": "struct" + }, + "starkware.starknet.common.syscalls.storage_write.Return": { + "full_name": "starkware.starknet.common.syscalls.storage_write.Return", + "members": {}, + "size": 0, + "type": "struct" + }, + "starkware.starknet.common.syscalls.storage_write.SIZEOF_LOCALS": { + "type": "const", + "value": 0 + }, + "starkware.starknet.common.syscalls.storage_write.__temp15": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.storage_write.__temp15", + "references": [ + { + "ap_tracking_data": { + "group": 14, + "offset": 1 + }, + "pc": 145, + "value": "[cast(ap + (-1), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.storage_write.address": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.storage_write.address", + "references": [ + { + "ap_tracking_data": { + "group": 14, + "offset": 0 + }, + "pc": 143, + "value": "[cast(fp + (-4), felt*)]" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.storage_write.syscall_ptr": { + "cairo_type": "felt*", + "full_name": "starkware.starknet.common.syscalls.storage_write.syscall_ptr", + "references": [ + { + "ap_tracking_data": { + "group": 14, + "offset": 0 + }, + "pc": 143, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 14, + "offset": 1 + }, + "pc": 148, + "value": "cast([fp + (-5)] + 3, felt*)" + } + ], + "type": "reference" + }, + "starkware.starknet.common.syscalls.storage_write.value": { + "cairo_type": "felt", + "full_name": "starkware.starknet.common.syscalls.storage_write.value", + "references": [ + { + "ap_tracking_data": { + "group": 14, + "offset": 0 + }, + "pc": 143, + "value": "[cast(fp + (-3), felt*)]" + } + ], + "type": "reference" + } + }, + "main_scope": "__main__", + "prime": "0x800000000000011000000000000000000000000000000000000000000000001", + "reference_manager": { + "references": [ + { + "ap_tracking_data": { + "group": 1, + "offset": 0 + }, + "pc": 3, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 1, + "offset": 0 + }, + "pc": 3, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 1, + "offset": 0 + }, + "pc": 3, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 1, + "offset": 0 + }, + "pc": 5, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 1, + "offset": 0 + }, + "pc": 5, + "value": "cast([fp + (-5)] + 3, starkware.cairo.common.cairo_builtins.HashBuiltin*)" + }, + { + "ap_tracking_data": { + "group": 2, + "offset": 0 + }, + "pc": 9, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 2, + "offset": 0 + }, + "pc": 9, + "value": "[cast(fp + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 2, + "offset": 0 + }, + "pc": 9, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 2, + "offset": 2 + }, + "pc": 14, + "value": "[cast(ap + (-2), starkware.cairo.common.memcpy.memcpy.LoopFrame*)]" + }, + { + "ap_tracking_data": { + "group": 2, + "offset": 2 + }, + "pc": 14, + "value": "[cast(ap + (-2), starkware.cairo.common.memcpy.memcpy.LoopFrame*)]" + }, + { + "ap_tracking_data": { + "group": 2, + "offset": 3 + }, + "pc": 15, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 2, + "offset": 3 + }, + "pc": 16, + "value": "[cast(ap, felt*)]" + }, + { + "ap_tracking_data": { + "group": 2, + "offset": 3 + }, + "pc": 16, + "value": "cast(ap + 1, starkware.cairo.common.memcpy.memcpy.LoopFrame*)" + }, + { + "ap_tracking_data": { + "group": 3, + "offset": 0 + }, + "pc": 24, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 4, + "offset": 0 + }, + "pc": 29, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 4, + "offset": 0 + }, + "pc": 29, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 4, + "offset": 1 + }, + "pc": 30, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 5, + "offset": 0 + }, + "pc": 35, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 5, + "offset": 0 + }, + "pc": 35, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 5, + "offset": 0 + }, + "pc": 36, + "value": "cast([fp + (-4)] + 1, felt)" + }, + { + "ap_tracking_data": { + "group": 6, + "offset": 0 + }, + "pc": 39, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 6, + "offset": 0 + }, + "pc": 39, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 6, + "offset": 0 + }, + "pc": 39, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 6, + "offset": 5 + }, + "pc": 43, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 7, + "offset": 0 + }, + "pc": 44, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 7, + "offset": 0 + }, + "pc": 44, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 7, + "offset": 0 + }, + "pc": 44, + "value": "[cast([fp + (-4)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 7, + "offset": 0 + }, + "pc": 44, + "value": "[cast([fp + (-4)] + 1, felt*)]" + }, + { + "ap_tracking_data": { + "group": 7, + "offset": 1 + }, + "pc": 46, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 7, + "offset": 2 + }, + "pc": 47, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 7, + "offset": 3 + }, + "pc": 48, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 7, + "offset": 4 + }, + "pc": 50, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 7, + "offset": 5 + }, + "pc": 52, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 7, + "offset": 6 + }, + "pc": 53, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 7, + "offset": 6 + }, + "pc": 54, + "value": "cast([fp + (-4)] + 3, felt)" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 0 + }, + "pc": 57, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 0 + }, + "pc": 57, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 1 + }, + "pc": 59, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 1 + }, + "pc": 61, + "value": "cast([fp + (-3)] + 106710729501573572985208420194530329073740042555888586719489, felt)" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 1 + }, + "pc": 61, + "value": "cast((-1) - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 12 + }, + "pc": 66, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 13 + }, + "pc": 68, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 24 + }, + "pc": 72, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 2 + }, + "pc": 77, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 13 + }, + "pc": 83, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 24 + }, + "pc": 87, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 24 + }, + "pc": 95, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 8, + "offset": 24 + }, + "pc": 95, + "value": "[cast(ap - 0 + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 9, + "offset": 0 + }, + "pc": 97, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 9, + "offset": 0 + }, + "pc": 97, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 9, + "offset": 0 + }, + "pc": 97, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 9, + "offset": 0 + }, + "pc": 97, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 9, + "offset": 0 + }, + "pc": 97, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 9, + "offset": 0 + }, + "pc": 97, + "value": "[cast([fp + (-7)], starkware.starknet.common.syscalls.CallContract*)]" + }, + { + "ap_tracking_data": { + "group": 9, + "offset": 1 + }, + "pc": 99, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 9, + "offset": 1 + }, + "pc": 104, + "value": "[cast([fp + (-7)] + 5, starkware.starknet.common.syscalls.CallContractResponse*)]" + }, + { + "ap_tracking_data": { + "group": 9, + "offset": 1 + }, + "pc": 104, + "value": "cast([fp + (-7)] + 7, felt*)" + }, + { + "ap_tracking_data": { + "group": 10, + "offset": 0 + }, + "pc": 109, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 10, + "offset": 0 + }, + "pc": 109, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 10, + "offset": 0 + }, + "pc": 109, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 10, + "offset": 0 + }, + "pc": 109, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 10, + "offset": 0 + }, + "pc": 109, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 10, + "offset": 0 + }, + "pc": 109, + "value": "[cast([fp + (-7)], starkware.starknet.common.syscalls.CallContract*)]" + }, + { + "ap_tracking_data": { + "group": 10, + "offset": 1 + }, + "pc": 111, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 10, + "offset": 1 + }, + "pc": 116, + "value": "[cast([fp + (-7)] + 5, starkware.starknet.common.syscalls.CallContractResponse*)]" + }, + { + "ap_tracking_data": { + "group": 10, + "offset": 1 + }, + "pc": 116, + "value": "cast([fp + (-7)] + 7, felt*)" + }, + { + "ap_tracking_data": { + "group": 11, + "offset": 0 + }, + "pc": 121, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 11, + "offset": 0 + }, + "pc": 121, + "value": "[cast([fp + (-3)], starkware.starknet.common.syscalls.GetCallerAddress*)]" + }, + { + "ap_tracking_data": { + "group": 11, + "offset": 1 + }, + "pc": 123, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 11, + "offset": 1 + }, + "pc": 124, + "value": "cast([fp + (-3)] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 12, + "offset": 0 + }, + "pc": 128, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 12, + "offset": 0 + }, + "pc": 128, + "value": "[cast([fp + (-3)], starkware.starknet.common.syscalls.GetBlockTimestamp*)]" + }, + { + "ap_tracking_data": { + "group": 12, + "offset": 1 + }, + "pc": 130, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 12, + "offset": 1 + }, + "pc": 131, + "value": "cast([fp + (-3)] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 13, + "offset": 0 + }, + "pc": 135, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 13, + "offset": 0 + }, + "pc": 135, + "value": "[cast(fp + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 13, + "offset": 0 + }, + "pc": 135, + "value": "[cast([fp + (-4)], starkware.starknet.common.syscalls.StorageRead*)]" + }, + { + "ap_tracking_data": { + "group": 13, + "offset": 1 + }, + "pc": 137, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 13, + "offset": 1 + }, + "pc": 139, + "value": "[cast([fp + (-4)] + 2, starkware.starknet.common.syscalls.StorageReadResponse*)]" + }, + { + "ap_tracking_data": { + "group": 13, + "offset": 1 + }, + "pc": 139, + "value": "cast([fp + (-4)] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 14, + "offset": 0 + }, + "pc": 143, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 14, + "offset": 0 + }, + "pc": 143, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 14, + "offset": 0 + }, + "pc": 143, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 14, + "offset": 1 + }, + "pc": 145, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 14, + "offset": 1 + }, + "pc": 148, + "value": "cast([fp + (-5)] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 15, + "offset": 0 + }, + "pc": 151, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 15, + "offset": 0 + }, + "pc": 151, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 15, + "offset": 0 + }, + "pc": 151, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 15, + "offset": 0 + }, + "pc": 151, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 15, + "offset": 0 + }, + "pc": 151, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 15, + "offset": 1 + }, + "pc": 153, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 15, + "offset": 1 + }, + "pc": 158, + "value": "cast([fp + (-7)] + 5, felt*)" + }, + { + "ap_tracking_data": { + "group": 16, + "offset": 0 + }, + "pc": 161, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 16, + "offset": 0 + }, + "pc": 161, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 16, + "offset": 0 + }, + "pc": 161, + "value": "cast(1750817759628730138691164646727852846149105572394507245695566810799057787142, felt)" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 0 + }, + "pc": 166, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 0 + }, + "pc": 166, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 0 + }, + "pc": 166, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 7 + }, + "pc": 170, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 7 + }, + "pc": 170, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 7 + }, + "pc": 170, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 14 + }, + "pc": 174, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 14 + }, + "pc": 174, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 15 + }, + "pc": 175, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 16 + }, + "pc": 176, + "value": "[cast(ap + (-1), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 17 + }, + "pc": 177, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 17, + "offset": 18 + }, + "pc": 178, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 18, + "offset": 0 + }, + "pc": 179, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 18, + "offset": 0 + }, + "pc": 179, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 18, + "offset": 0 + }, + "pc": 179, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 18, + "offset": 0 + }, + "pc": 179, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 18, + "offset": 7 + }, + "pc": 183, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 18, + "offset": 7 + }, + "pc": 183, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 18, + "offset": 7 + }, + "pc": 183, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 18, + "offset": 14 + }, + "pc": 188, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 19, + "offset": 0 + }, + "pc": 191, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 19, + "offset": 0 + }, + "pc": 191, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 19, + "offset": 0 + }, + "pc": 191, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 19, + "offset": 23 + }, + "pc": 196, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 19, + "offset": 23 + }, + "pc": 196, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 19, + "offset": 23 + }, + "pc": 196, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 19, + "offset": 23 + }, + "pc": 196, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 20, + "offset": 0 + }, + "pc": 197, + "value": "[cast(fp + (-4), starkware.starknet.apps.upgradability_proxy.finalizable.finalized.Return*)]" + }, + { + "ap_tracking_data": { + "group": 20, + "offset": 0 + }, + "pc": 197, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 20, + "offset": 1 + }, + "pc": 199, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 20, + "offset": 1 + }, + "pc": 199, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 20, + "offset": 1 + }, + "pc": 200, + "value": "cast([fp] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 20, + "offset": 2 + }, + "pc": 202, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 0 + }, + "pc": 206, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 0 + }, + "pc": 206, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 0 + }, + "pc": 206, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 0 + }, + "pc": 206, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 0 + }, + "pc": 206, + "value": "cast([fp + (-3)] - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 28 + }, + "pc": 212, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 28 + }, + "pc": 212, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 28 + }, + "pc": 212, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 28 + }, + "pc": 212, + "value": "[cast(ap + (-1), starkware.starknet.apps.upgradability_proxy.finalizable.finalized.Return*)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 36 + }, + "pc": 215, + "value": "[cast(ap + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 36 + }, + "pc": 215, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 21, + "offset": 36 + }, + "pc": 215, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 22, + "offset": 0 + }, + "pc": 221, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 22, + "offset": 0 + }, + "pc": 221, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 22, + "offset": 0 + }, + "pc": 221, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 22, + "offset": 28 + }, + "pc": 226, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 22, + "offset": 28 + }, + "pc": 226, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 22, + "offset": 28 + }, + "pc": 226, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 22, + "offset": 28 + }, + "pc": 226, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 0 + }, + "pc": 232, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 0 + }, + "pc": 232, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 0 + }, + "pc": 232, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 36 + }, + "pc": 237, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 36 + }, + "pc": 237, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 36 + }, + "pc": 237, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 55 + }, + "pc": 241, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 55 + }, + "pc": 241, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 23, + "offset": 55 + }, + "pc": 241, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 24, + "offset": 0 + }, + "pc": 242, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 24, + "offset": 0 + }, + "pc": 242, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 24, + "offset": 0 + }, + "pc": 242, + "value": "cast(411649891831311481866083863803283943759912575680088837133421096357856968326, felt)" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 0 + }, + "pc": 247, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 0 + }, + "pc": 247, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 0 + }, + "pc": 247, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 7 + }, + "pc": 251, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 7 + }, + "pc": 251, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 7 + }, + "pc": 251, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 14 + }, + "pc": 255, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 14 + }, + "pc": 255, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 15 + }, + "pc": 256, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 16 + }, + "pc": 257, + "value": "[cast(ap + (-1), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 17 + }, + "pc": 258, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 25, + "offset": 18 + }, + "pc": 259, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 26, + "offset": 0 + }, + "pc": 260, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 26, + "offset": 0 + }, + "pc": 260, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 26, + "offset": 0 + }, + "pc": 260, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 26, + "offset": 0 + }, + "pc": 260, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 26, + "offset": 7 + }, + "pc": 264, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 26, + "offset": 7 + }, + "pc": 264, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 26, + "offset": 7 + }, + "pc": 264, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 26, + "offset": 14 + }, + "pc": 269, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 27, + "offset": 0 + }, + "pc": 272, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 27, + "offset": 0 + }, + "pc": 272, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 27, + "offset": 0 + }, + "pc": 272, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 27, + "offset": 0 + }, + "pc": 272, + "value": "cast(473174039777172977791438085456091829006435644020130570266323097166155133896, felt)" + }, + { + "ap_tracking_data": { + "group": 27, + "offset": 7 + }, + "pc": 278, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 27, + "offset": 7 + }, + "pc": 278, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 27, + "offset": 36 + }, + "pc": 282, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 27, + "offset": 36 + }, + "pc": 282, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 0 + }, + "pc": 286, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 0 + }, + "pc": 286, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 0 + }, + "pc": 286, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 0 + }, + "pc": 286, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 44 + }, + "pc": 291, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 44 + }, + "pc": 291, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 44 + }, + "pc": 291, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 51 + }, + "pc": 295, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 51 + }, + "pc": 295, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 52 + }, + "pc": 296, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 53 + }, + "pc": 297, + "value": "[cast(ap + (-1), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 54 + }, + "pc": 298, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 28, + "offset": 55 + }, + "pc": 299, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 29, + "offset": 0 + }, + "pc": 300, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 29, + "offset": 0 + }, + "pc": 300, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 29, + "offset": 0 + }, + "pc": 300, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 29, + "offset": 0 + }, + "pc": 300, + "value": "[cast(fp + (-6), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 29, + "offset": 0 + }, + "pc": 300, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 29, + "offset": 44 + }, + "pc": 305, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 29, + "offset": 44 + }, + "pc": 305, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 29, + "offset": 44 + }, + "pc": 305, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 29, + "offset": 51 + }, + "pc": 310, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 30, + "offset": 0 + }, + "pc": 313, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 30, + "offset": 0 + }, + "pc": 313, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 30, + "offset": 0 + }, + "pc": 313, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 30, + "offset": 0 + }, + "pc": 313, + "value": "cast(966177859921636613857551828317341072452675568526713113397521978082421626481, felt)" + }, + { + "ap_tracking_data": { + "group": 30, + "offset": 7 + }, + "pc": 319, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 30, + "offset": 7 + }, + "pc": 319, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 30, + "offset": 36 + }, + "pc": 323, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 30, + "offset": 36 + }, + "pc": 323, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 0 + }, + "pc": 327, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 0 + }, + "pc": 327, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 0 + }, + "pc": 327, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 0 + }, + "pc": 327, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 44 + }, + "pc": 332, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 44 + }, + "pc": 332, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 44 + }, + "pc": 332, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 51 + }, + "pc": 336, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 51 + }, + "pc": 336, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 52 + }, + "pc": 337, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 53 + }, + "pc": 338, + "value": "[cast(ap + (-1), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 54 + }, + "pc": 339, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 31, + "offset": 55 + }, + "pc": 340, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 32, + "offset": 0 + }, + "pc": 341, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 32, + "offset": 0 + }, + "pc": 341, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 32, + "offset": 0 + }, + "pc": 341, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 32, + "offset": 0 + }, + "pc": 341, + "value": "[cast(fp + (-6), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 32, + "offset": 0 + }, + "pc": 341, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 32, + "offset": 44 + }, + "pc": 346, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 32, + "offset": 44 + }, + "pc": 346, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 32, + "offset": 44 + }, + "pc": 346, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 32, + "offset": 51 + }, + "pc": 351, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 0 + }, + "pc": 354, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 0 + }, + "pc": 354, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 0 + }, + "pc": 354, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 0 + }, + "pc": 354, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 5 + }, + "pc": 358, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 5 + }, + "pc": 359, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 6 + }, + "pc": 361, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 9 + }, + "pc": 364, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 9 + }, + "pc": 365, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 9 + }, + "pc": 365, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 9 + }, + "pc": 366, + "value": "cast([fp + 1] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 9 + }, + "pc": 367, + "value": "cast([fp + 1] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 10 + }, + "pc": 369, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 33, + "offset": 19 + }, + "pc": 377, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 0 + }, + "pc": 379, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 0 + }, + "pc": 379, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 0 + }, + "pc": 379, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 0 + }, + "pc": 379, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 5 + }, + "pc": 383, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 5 + }, + "pc": 384, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 6 + }, + "pc": 386, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 9 + }, + "pc": 389, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 9 + }, + "pc": 390, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 9 + }, + "pc": 390, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 9 + }, + "pc": 391, + "value": "cast([fp + 1] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 9 + }, + "pc": 392, + "value": "cast([fp + 1] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 10 + }, + "pc": 394, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 34, + "offset": 19 + }, + "pc": 402, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 0 + }, + "pc": 404, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 0 + }, + "pc": 404, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 0 + }, + "pc": 404, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 0 + }, + "pc": 404, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 5 + }, + "pc": 408, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 5 + }, + "pc": 409, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 6 + }, + "pc": 411, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 9 + }, + "pc": 414, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 9 + }, + "pc": 415, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 9 + }, + "pc": 415, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 9 + }, + "pc": 416, + "value": "cast([fp + 1] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 9 + }, + "pc": 417, + "value": "cast([fp + 1] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 10 + }, + "pc": 419, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 35, + "offset": 19 + }, + "pc": 427, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 0 + }, + "pc": 429, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 0 + }, + "pc": 429, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 0 + }, + "pc": 429, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 5 + }, + "pc": 433, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 5 + }, + "pc": 434, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 6 + }, + "pc": 436, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 9 + }, + "pc": 439, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 9 + }, + "pc": 440, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 9 + }, + "pc": 440, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 9 + }, + "pc": 441, + "value": "cast([fp + 1] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 10 + }, + "pc": 443, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 36, + "offset": 19 + }, + "pc": 451, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 37, + "offset": 0 + }, + "pc": 453, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 37, + "offset": 0 + }, + "pc": 453, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 37, + "offset": 0 + }, + "pc": 453, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 37, + "offset": 0 + }, + "pc": 453, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 37, + "offset": 61 + }, + "pc": 459, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 37, + "offset": 61 + }, + "pc": 459, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 37, + "offset": 61 + }, + "pc": 459, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 37, + "offset": 61 + }, + "pc": 459, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 38, + "offset": 0 + }, + "pc": 460, + "value": "[cast(fp + (-4), starkware.starknet.apps.upgradability_proxy.governance.is_governor.Return*)]" + }, + { + "ap_tracking_data": { + "group": 38, + "offset": 0 + }, + "pc": 460, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 38, + "offset": 1 + }, + "pc": 462, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 38, + "offset": 1 + }, + "pc": 462, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 38, + "offset": 1 + }, + "pc": 463, + "value": "cast([fp] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 38, + "offset": 2 + }, + "pc": 465, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 0 + }, + "pc": 469, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 0 + }, + "pc": 469, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 0 + }, + "pc": 469, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 0 + }, + "pc": 469, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 0 + }, + "pc": 469, + "value": "[cast([fp + (-3)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 0 + }, + "pc": 469, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 0 + }, + "pc": 469, + "value": "cast([fp + (-3)] + 1 - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 1 + }, + "pc": 471, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 68 + }, + "pc": 478, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 68 + }, + "pc": 478, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 68 + }, + "pc": 478, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 68 + }, + "pc": 478, + "value": "[cast(ap + (-1), starkware.starknet.apps.upgradability_proxy.governance.is_governor.Return*)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 76 + }, + "pc": 481, + "value": "[cast(ap + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 76 + }, + "pc": 481, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 39, + "offset": 76 + }, + "pc": 481, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 0 + }, + "pc": 487, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 0 + }, + "pc": 487, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 0 + }, + "pc": 487, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 23 + }, + "pc": 492, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 23 + }, + "pc": 492, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 23 + }, + "pc": 492, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 23 + }, + "pc": 492, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 29 + }, + "pc": 497, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 29 + }, + "pc": 497, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 51 + }, + "pc": 504, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 51 + }, + "pc": 504, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 51 + }, + "pc": 504, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 108 + }, + "pc": 509, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 108 + }, + "pc": 509, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 108 + }, + "pc": 509, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 134 + }, + "pc": 515, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 134 + }, + "pc": 515, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 157 + }, + "pc": 518, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 40, + "offset": 157 + }, + "pc": 518, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 41, + "offset": 0 + }, + "pc": 522, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 41, + "offset": 0 + }, + "pc": 522, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 41, + "offset": 0 + }, + "pc": 522, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 41, + "offset": 0 + }, + "pc": 522, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 41, + "offset": 0 + }, + "pc": 522, + "value": "cast([fp + (-3)] - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 41, + "offset": 165 + }, + "pc": 528, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 41, + "offset": 165 + }, + "pc": 528, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 41, + "offset": 165 + }, + "pc": 528, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 41, + "offset": 165 + }, + "pc": 528, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.governance.init_governance.Return*)]" + }, + { + "ap_tracking_data": { + "group": 41, + "offset": 166 + }, + "pc": 530, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 41, + "offset": 166 + }, + "pc": 530, + "value": "cast(0, felt)" + }, + { + "ap_tracking_data": { + "group": 42, + "offset": 0 + }, + "pc": 537, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 42, + "offset": 0 + }, + "pc": 537, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 42, + "offset": 0 + }, + "pc": 537, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 42, + "offset": 0 + }, + "pc": 537, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 0 + }, + "pc": 542, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 0 + }, + "pc": 542, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 0 + }, + "pc": 542, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 64 + }, + "pc": 545, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 64 + }, + "pc": 545, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 64 + }, + "pc": 545, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 64 + }, + "pc": 545, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 124 + }, + "pc": 555, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 124 + }, + "pc": 555, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 124 + }, + "pc": 555, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 130 + }, + "pc": 558, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 130 + }, + "pc": 558, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 156 + }, + "pc": 564, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 43, + "offset": 156 + }, + "pc": 564, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 44, + "offset": 0 + }, + "pc": 568, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 44, + "offset": 0 + }, + "pc": 568, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 44, + "offset": 0 + }, + "pc": 568, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 44, + "offset": 0 + }, + "pc": 568, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 44, + "offset": 0 + }, + "pc": 568, + "value": "[cast([fp + (-3)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 44, + "offset": 0 + }, + "pc": 568, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 44, + "offset": 0 + }, + "pc": 568, + "value": "cast([fp + (-3)] + 1 - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 44, + "offset": 1 + }, + "pc": 570, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 45, + "offset": 0 + }, + "pc": 577, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 45, + "offset": 0 + }, + "pc": 577, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 45, + "offset": 0 + }, + "pc": 577, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 45, + "offset": 0 + }, + "pc": 577, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.governance.nominate_new_governor.Return*)]" + }, + { + "ap_tracking_data": { + "group": 45, + "offset": 1 + }, + "pc": 579, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 45, + "offset": 1 + }, + "pc": 579, + "value": "cast(0, felt)" + }, + { + "ap_tracking_data": { + "group": 46, + "offset": 0 + }, + "pc": 586, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 46, + "offset": 0 + }, + "pc": 586, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 46, + "offset": 0 + }, + "pc": 586, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 46, + "offset": 0 + }, + "pc": 586, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 0 + }, + "pc": 591, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 0 + }, + "pc": 591, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 0 + }, + "pc": 591, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 58 + }, + "pc": 594, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 58 + }, + "pc": 594, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 58 + }, + "pc": 594, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 58 + }, + "pc": 594, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 118 + }, + "pc": 608, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 118 + }, + "pc": 608, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 118 + }, + "pc": 608, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 124 + }, + "pc": 611, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 124 + }, + "pc": 611, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 150 + }, + "pc": 617, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 47, + "offset": 150 + }, + "pc": 617, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 48, + "offset": 0 + }, + "pc": 621, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 48, + "offset": 0 + }, + "pc": 621, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 48, + "offset": 0 + }, + "pc": 621, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 48, + "offset": 0 + }, + "pc": 621, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 48, + "offset": 0 + }, + "pc": 621, + "value": "[cast([fp + (-3)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 48, + "offset": 0 + }, + "pc": 621, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 48, + "offset": 0 + }, + "pc": 621, + "value": "cast([fp + (-3)] + 1 - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 48, + "offset": 1 + }, + "pc": 623, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 49, + "offset": 0 + }, + "pc": 630, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 49, + "offset": 0 + }, + "pc": 630, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 49, + "offset": 0 + }, + "pc": 630, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 49, + "offset": 0 + }, + "pc": 630, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.governance.cancel_nomination.Return*)]" + }, + { + "ap_tracking_data": { + "group": 49, + "offset": 1 + }, + "pc": 632, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 49, + "offset": 1 + }, + "pc": 632, + "value": "cast(0, felt)" + }, + { + "ap_tracking_data": { + "group": 50, + "offset": 0 + }, + "pc": 639, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 50, + "offset": 0 + }, + "pc": 639, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 50, + "offset": 0 + }, + "pc": 639, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 50, + "offset": 0 + }, + "pc": 639, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 0 + }, + "pc": 644, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 0 + }, + "pc": 644, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 0 + }, + "pc": 644, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 64 + }, + "pc": 647, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 64 + }, + "pc": 647, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 64 + }, + "pc": 647, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 64 + }, + "pc": 647, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 72 + }, + "pc": 652, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 72 + }, + "pc": 652, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 136 + }, + "pc": 663, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 136 + }, + "pc": 663, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 136 + }, + "pc": 663, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 162 + }, + "pc": 669, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 51, + "offset": 162 + }, + "pc": 669, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 52, + "offset": 0 + }, + "pc": 673, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 52, + "offset": 0 + }, + "pc": 673, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 52, + "offset": 0 + }, + "pc": 673, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 52, + "offset": 0 + }, + "pc": 673, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 52, + "offset": 0 + }, + "pc": 673, + "value": "[cast([fp + (-3)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 52, + "offset": 0 + }, + "pc": 673, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 52, + "offset": 0 + }, + "pc": 673, + "value": "cast([fp + (-3)] + 1 - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 52, + "offset": 1 + }, + "pc": 675, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 53, + "offset": 0 + }, + "pc": 682, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 53, + "offset": 0 + }, + "pc": 682, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 53, + "offset": 0 + }, + "pc": 682, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 53, + "offset": 0 + }, + "pc": 682, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.governance.remove_governor.Return*)]" + }, + { + "ap_tracking_data": { + "group": 53, + "offset": 1 + }, + "pc": 684, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 53, + "offset": 1 + }, + "pc": 684, + "value": "cast(0, felt)" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 0 + }, + "pc": 691, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 0 + }, + "pc": 691, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 0 + }, + "pc": 691, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 6 + }, + "pc": 694, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 6 + }, + "pc": 694, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 67 + }, + "pc": 700, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 67 + }, + "pc": 700, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 67 + }, + "pc": 700, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 67 + }, + "pc": 700, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 129 + }, + "pc": 710, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 129 + }, + "pc": 710, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 129 + }, + "pc": 710, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 186 + }, + "pc": 715, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 186 + }, + "pc": 715, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 186 + }, + "pc": 715, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 211 + }, + "pc": 720, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 54, + "offset": 211 + }, + "pc": 720, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 55, + "offset": 0 + }, + "pc": 724, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 55, + "offset": 0 + }, + "pc": 724, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 55, + "offset": 0 + }, + "pc": 724, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 55, + "offset": 0 + }, + "pc": 724, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 55, + "offset": 0 + }, + "pc": 724, + "value": "cast([fp + (-3)] - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 55, + "offset": 219 + }, + "pc": 730, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 55, + "offset": 219 + }, + "pc": 730, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 55, + "offset": 219 + }, + "pc": 730, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 55, + "offset": 219 + }, + "pc": 730, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.governance.accept_governance.Return*)]" + }, + { + "ap_tracking_data": { + "group": 55, + "offset": 220 + }, + "pc": 732, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 55, + "offset": 220 + }, + "pc": 732, + "value": "cast(0, felt)" + }, + { + "ap_tracking_data": { + "group": 56, + "offset": 0 + }, + "pc": 739, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 56, + "offset": 0 + }, + "pc": 739, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 56, + "offset": 0 + }, + "pc": 739, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 56, + "offset": 6 + }, + "pc": 742, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 56, + "offset": 6 + }, + "pc": 742, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 56, + "offset": 73 + }, + "pc": 748, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 56, + "offset": 73 + }, + "pc": 748, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 56, + "offset": 73 + }, + "pc": 748, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 56, + "offset": 73 + }, + "pc": 748, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 58, + "offset": 4 + }, + "pc": 759, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 58, + "offset": 4 + }, + "pc": 759, + "value": "[cast(fp, starkware.cairo.common.hash_state.HashState*)]" + }, + { + "ap_tracking_data": { + "group": 59, + "offset": 0 + }, + "pc": 765, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 59, + "offset": 0 + }, + "pc": 765, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 59, + "offset": 0 + }, + "pc": 765, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 59, + "offset": 0 + }, + "pc": 765, + "value": "[cast(fp + (-6), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 59, + "offset": 2 + }, + "pc": 774, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 59, + "offset": 2 + }, + "pc": 775, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 59, + "offset": 2 + }, + "pc": 775, + "value": "cast(ap, starkware.cairo.common.hash_state.hash_update_inner.LoopLocals*)" + }, + { + "ap_tracking_data": { + "group": 59, + "offset": 5 + }, + "pc": 778, + "value": "cast(ap + (-3), starkware.cairo.common.hash_state.hash_update_inner.LoopLocals*)" + }, + { + "ap_tracking_data": { + "group": 59, + "offset": 6 + }, + "pc": 779, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 59, + "offset": 7 + }, + "pc": 781, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 59, + "offset": 7 + }, + "pc": 782, + "value": "cast(ap, starkware.cairo.common.hash_state.hash_update_inner.LoopLocals*)" + }, + { + "ap_tracking_data": { + "group": 59, + "offset": 10 + }, + "pc": 789, + "value": "cast(ap + (-3), starkware.cairo.common.hash_state.hash_update_inner.LoopLocals*)" + }, + { + "ap_tracking_data": { + "group": 59, + "offset": 10 + }, + "pc": 789, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 60, + "offset": 0 + }, + "pc": 790, + "value": "[cast(fp + (-5), starkware.cairo.common.hash_state.HashState**)]" + }, + { + "ap_tracking_data": { + "group": 60, + "offset": 0 + }, + "pc": 790, + "value": "[cast(fp + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 60, + "offset": 0 + }, + "pc": 790, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 60, + "offset": 0 + }, + "pc": 790, + "value": "[cast(fp + (-6), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 61, + "offset": 0 + }, + "pc": 798, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 61, + "offset": 0 + }, + "pc": 798, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 61, + "offset": 2 + }, + "pc": 800, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 61, + "offset": 2 + }, + "pc": 800, + "value": "[cast(fp, starkware.cairo.common.hash_state.HashState*)]" + }, + { + "ap_tracking_data": { + "group": 61, + "offset": 3 + }, + "pc": 802, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 62, + "offset": 0 + }, + "pc": 806, + "value": "[cast(fp + (-4), starkware.cairo.common.hash_state.HashState**)]" + }, + { + "ap_tracking_data": { + "group": 62, + "offset": 0 + }, + "pc": 806, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 62, + "offset": 0 + }, + "pc": 806, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 62, + "offset": 9 + }, + "pc": 813, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 62, + "offset": 9 + }, + "pc": 813, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 62, + "offset": 11 + }, + "pc": 815, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 62, + "offset": 11 + }, + "pc": 815, + "value": "[cast(fp, starkware.cairo.common.hash_state.HashState*)]" + }, + { + "ap_tracking_data": { + "group": 62, + "offset": 12 + }, + "pc": 817, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 63, + "offset": 0 + }, + "pc": 822, + "value": "[cast(fp + (-3), starkware.cairo.common.hash_state.HashState**)]" + }, + { + "ap_tracking_data": { + "group": 63, + "offset": 0 + }, + "pc": 822, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 63, + "offset": 7 + }, + "pc": 827, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 0 + }, + "pc": 828, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 0 + }, + "pc": 828, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 0 + }, + "pc": 828, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 4 + }, + "pc": 832, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 4 + }, + "pc": 833, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 4 + }, + "pc": 833, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 15 + }, + "pc": 841, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 15 + }, + "pc": 841, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 15 + }, + "pc": 841, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 15 + }, + "pc": 841, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 15 + }, + "pc": 841, + "value": "[cast([ap + (-1)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 15 + }, + "pc": 841, + "value": "cast([ap + (-1)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 15 + }, + "pc": 841, + "value": "cast([ap + (-1)] + 1 - [ap + (-1)], felt)" + }, + { + "ap_tracking_data": { + "group": 64, + "offset": 16 + }, + "pc": 843, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 0 + }, + "pc": 848, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 0 + }, + "pc": 848, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 0 + }, + "pc": 848, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 0 + }, + "pc": 848, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 0 + }, + "pc": 848, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 6 + }, + "pc": 852, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 6 + }, + "pc": 853, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 6 + }, + "pc": 853, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 6 + }, + "pc": 854, + "value": "cast([fp] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 6 + }, + "pc": 857, + "value": "[cast(fp + 1, felt*)]" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 6 + }, + "pc": 857, + "value": "cast([fp] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 7 + }, + "pc": 859, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 65, + "offset": 7 + }, + "pc": 860, + "value": "[cast(fp + 2, felt**)]" + }, + { + "ap_tracking_data": { + "group": 66, + "offset": 11 + }, + "pc": 874, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 66, + "offset": 11 + }, + "pc": 874, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 66, + "offset": 11 + }, + "pc": 874, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 0 + }, + "pc": 877, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 0 + }, + "pc": 877, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 0 + }, + "pc": 877, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 0 + }, + "pc": 877, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 0 + }, + "pc": 877, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 6 + }, + "pc": 881, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 6 + }, + "pc": 882, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 6 + }, + "pc": 882, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 6 + }, + "pc": 883, + "value": "cast([fp] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 6 + }, + "pc": 886, + "value": "[cast(fp + 1, felt*)]" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 6 + }, + "pc": 886, + "value": "cast([fp] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 7 + }, + "pc": 888, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 67, + "offset": 7 + }, + "pc": 889, + "value": "[cast(fp + 2, felt**)]" + }, + { + "ap_tracking_data": { + "group": 68, + "offset": 11 + }, + "pc": 903, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 68, + "offset": 11 + }, + "pc": 903, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 68, + "offset": 11 + }, + "pc": 903, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 69, + "offset": 0 + }, + "pc": 906, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 69, + "offset": 0 + }, + "pc": 906, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 69, + "offset": 0 + }, + "pc": 906, + "value": "cast(112691762003367666990514078335904576139457736111203235783537794266546875388, felt)" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 0 + }, + "pc": 911, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 0 + }, + "pc": 911, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 0 + }, + "pc": 911, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 7 + }, + "pc": 915, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 7 + }, + "pc": 915, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 7 + }, + "pc": 915, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 14 + }, + "pc": 919, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 14 + }, + "pc": 919, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 15 + }, + "pc": 920, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 16 + }, + "pc": 921, + "value": "[cast(ap + (-1), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 17 + }, + "pc": 922, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 70, + "offset": 18 + }, + "pc": 923, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 71, + "offset": 0 + }, + "pc": 924, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 71, + "offset": 0 + }, + "pc": 924, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 71, + "offset": 0 + }, + "pc": 924, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 71, + "offset": 0 + }, + "pc": 924, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 71, + "offset": 7 + }, + "pc": 928, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 71, + "offset": 7 + }, + "pc": 928, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 71, + "offset": 7 + }, + "pc": 928, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 71, + "offset": 14 + }, + "pc": 933, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 72, + "offset": 0 + }, + "pc": 936, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 72, + "offset": 0 + }, + "pc": 936, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 72, + "offset": 0 + }, + "pc": 936, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 72, + "offset": 0 + }, + "pc": 936, + "value": "cast(757185127176008445256423207506255876365889208688465503676412510933688902981, felt)" + }, + { + "ap_tracking_data": { + "group": 72, + "offset": 7 + }, + "pc": 942, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 72, + "offset": 7 + }, + "pc": 942, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 72, + "offset": 36 + }, + "pc": 946, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 72, + "offset": 36 + }, + "pc": 946, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 0 + }, + "pc": 950, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 0 + }, + "pc": 950, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 0 + }, + "pc": 950, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 0 + }, + "pc": 950, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 44 + }, + "pc": 955, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 44 + }, + "pc": 955, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 44 + }, + "pc": 955, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 51 + }, + "pc": 959, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 51 + }, + "pc": 959, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 52 + }, + "pc": 960, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 53 + }, + "pc": 961, + "value": "[cast(ap + (-1), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 54 + }, + "pc": 962, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 73, + "offset": 55 + }, + "pc": 963, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 74, + "offset": 0 + }, + "pc": 964, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 74, + "offset": 0 + }, + "pc": 964, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 74, + "offset": 0 + }, + "pc": 964, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 74, + "offset": 0 + }, + "pc": 964, + "value": "[cast(fp + (-6), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 74, + "offset": 0 + }, + "pc": 964, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 74, + "offset": 44 + }, + "pc": 969, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 74, + "offset": 44 + }, + "pc": 969, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 74, + "offset": 44 + }, + "pc": 969, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 74, + "offset": 51 + }, + "pc": 974, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 75, + "offset": 0 + }, + "pc": 977, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 75, + "offset": 0 + }, + "pc": 977, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 75, + "offset": 0 + }, + "pc": 977, + "value": "cast(164638278579462041036025631281867532389894332681091481966876061669546035568, felt)" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 0 + }, + "pc": 982, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 0 + }, + "pc": 982, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 0 + }, + "pc": 982, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 7 + }, + "pc": 986, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 7 + }, + "pc": 986, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 7 + }, + "pc": 986, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 14 + }, + "pc": 990, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 14 + }, + "pc": 990, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 15 + }, + "pc": 991, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 16 + }, + "pc": 992, + "value": "[cast(ap + (-1), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 17 + }, + "pc": 993, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 76, + "offset": 18 + }, + "pc": 994, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 77, + "offset": 0 + }, + "pc": 995, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 77, + "offset": 0 + }, + "pc": 995, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 77, + "offset": 0 + }, + "pc": 995, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 77, + "offset": 0 + }, + "pc": 995, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 77, + "offset": 7 + }, + "pc": 999, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 77, + "offset": 7 + }, + "pc": 999, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 77, + "offset": 7 + }, + "pc": 999, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 77, + "offset": 14 + }, + "pc": 1004, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 0 + }, + "pc": 1007, + "value": "[cast(fp + (-7), felt*)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 0 + }, + "pc": 1007, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 0 + }, + "pc": 1007, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 0 + }, + "pc": 1007, + "value": "[cast(fp + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 0 + }, + "pc": 1007, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 0 + }, + "pc": 1007, + "value": "[cast(fp + (-9), felt**)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 0 + }, + "pc": 1007, + "value": "[cast(fp + (-8), felt*)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 7 + }, + "pc": 1011, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 7 + }, + "pc": 1012, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 8 + }, + "pc": 1014, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1017, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1018, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1018, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1019, + "value": "cast([fp + 1] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1020, + "value": "cast([fp + 1] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1021, + "value": "cast([fp + 1] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1024, + "value": "[cast(fp + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 11 + }, + "pc": 1024, + "value": "cast([fp + 1] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 12 + }, + "pc": 1026, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 78, + "offset": 12 + }, + "pc": 1027, + "value": "[cast(fp + 3, felt**)]" + }, + { + "ap_tracking_data": { + "group": 79, + "offset": 0 + }, + "pc": 1034, + "value": "cast([fp + 3] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 79, + "offset": 1 + }, + "pc": 1036, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 79, + "offset": 10 + }, + "pc": 1044, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 0 + }, + "pc": 1046, + "value": "[cast(fp + (-7), felt*)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 0 + }, + "pc": 1046, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 0 + }, + "pc": 1046, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 0 + }, + "pc": 1046, + "value": "[cast(fp + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 0 + }, + "pc": 1046, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 0 + }, + "pc": 1046, + "value": "[cast(fp + (-9), felt**)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 0 + }, + "pc": 1046, + "value": "[cast(fp + (-8), felt*)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 7 + }, + "pc": 1050, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 7 + }, + "pc": 1051, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 8 + }, + "pc": 1053, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1056, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1057, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1057, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1058, + "value": "cast([fp + 1] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1059, + "value": "cast([fp + 1] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1060, + "value": "cast([fp + 1] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1063, + "value": "[cast(fp + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 11 + }, + "pc": 1063, + "value": "cast([fp + 1] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 12 + }, + "pc": 1065, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 80, + "offset": 12 + }, + "pc": 1066, + "value": "[cast(fp + 3, felt**)]" + }, + { + "ap_tracking_data": { + "group": 81, + "offset": 0 + }, + "pc": 1073, + "value": "cast([fp + 3] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 81, + "offset": 1 + }, + "pc": 1075, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 81, + "offset": 10 + }, + "pc": 1083, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 0 + }, + "pc": 1085, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 0 + }, + "pc": 1085, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 0 + }, + "pc": 1085, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 0 + }, + "pc": 1085, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 0 + }, + "pc": 1085, + "value": "[cast(fp + (-8), felt**)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 0 + }, + "pc": 1085, + "value": "[cast(fp + (-7), felt*)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 7 + }, + "pc": 1089, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 7 + }, + "pc": 1090, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 8 + }, + "pc": 1092, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1095, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1096, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1096, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1097, + "value": "cast([fp + 1] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1098, + "value": "cast([fp + 1] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1099, + "value": "cast([fp + 1] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1102, + "value": "[cast(fp + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 11 + }, + "pc": 1102, + "value": "cast([fp + 1] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 12 + }, + "pc": 1104, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 82, + "offset": 12 + }, + "pc": 1105, + "value": "[cast(fp + 3, felt**)]" + }, + { + "ap_tracking_data": { + "group": 83, + "offset": 9 + }, + "pc": 1119, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 0 + }, + "pc": 1121, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 0 + }, + "pc": 1121, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 0 + }, + "pc": 1121, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 5 + }, + "pc": 1125, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 5 + }, + "pc": 1126, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 6 + }, + "pc": 1128, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 9 + }, + "pc": 1131, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 9 + }, + "pc": 1132, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 9 + }, + "pc": 1132, + "value": "[cast(fp + 1, felt**)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 9 + }, + "pc": 1133, + "value": "cast([fp + 1] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 10 + }, + "pc": 1135, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 84, + "offset": 19 + }, + "pc": 1143, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 85, + "offset": 0 + }, + "pc": 1145, + "value": "[cast(fp + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 85, + "offset": 0 + }, + "pc": 1145, + "value": "[cast(fp + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 85, + "offset": 0 + }, + "pc": 1145, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 85, + "offset": 23 + }, + "pc": 1150, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 85, + "offset": 23 + }, + "pc": 1150, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 85, + "offset": 23 + }, + "pc": 1150, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 85, + "offset": 23 + }, + "pc": 1150, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 86, + "offset": 0 + }, + "pc": 1151, + "value": "[cast(fp + (-4), starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.Return*)]" + }, + { + "ap_tracking_data": { + "group": 86, + "offset": 0 + }, + "pc": 1151, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 86, + "offset": 1 + }, + "pc": 1153, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 86, + "offset": 1 + }, + "pc": 1153, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 86, + "offset": 1 + }, + "pc": 1154, + "value": "cast([fp] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 86, + "offset": 2 + }, + "pc": 1156, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 0 + }, + "pc": 1160, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 0 + }, + "pc": 1160, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 0 + }, + "pc": 1160, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 0 + }, + "pc": 1160, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 0 + }, + "pc": 1160, + "value": "cast([fp + (-3)] - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 28 + }, + "pc": 1166, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 28 + }, + "pc": 1166, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 28 + }, + "pc": 1166, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 28 + }, + "pc": 1166, + "value": "[cast(ap + (-1), starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation.Return*)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 36 + }, + "pc": 1169, + "value": "[cast(ap + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 36 + }, + "pc": 1169, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 87, + "offset": 36 + }, + "pc": 1169, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-7), felt*)]" + }, + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-10), felt**)]" + }, + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-9), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 88, + "offset": 0 + }, + "pc": 1175, + "value": "[cast(fp + (-8), felt*)]" + }, + { + "ap_tracking_data": { + "group": 89, + "offset": 0 + }, + "pc": 1183, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 89, + "offset": 0 + }, + "pc": 1183, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 89, + "offset": 61 + }, + "pc": 1189, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 89, + "offset": 61 + }, + "pc": 1189, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 89, + "offset": 61 + }, + "pc": 1189, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 89, + "offset": 61 + }, + "pc": 1189, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 90, + "offset": 0 + }, + "pc": 1190, + "value": "[cast(fp + (-4), starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.Return*)]" + }, + { + "ap_tracking_data": { + "group": 90, + "offset": 0 + }, + "pc": 1190, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 90, + "offset": 1 + }, + "pc": 1192, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 90, + "offset": 1 + }, + "pc": 1192, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 90, + "offset": 1 + }, + "pc": 1193, + "value": "cast([fp] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 90, + "offset": 2 + }, + "pc": 1195, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "[cast([fp + (-3)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "[cast([fp + (-3)] + 1, felt*)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "cast([fp + (-3)] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "[cast([fp + (-3)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 0 + }, + "pc": 1199, + "value": "cast([fp + (-3)] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 1 + }, + "pc": 1200, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 2 + }, + "pc": 1201, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 2 + }, + "pc": 1202, + "value": "cast([[fp + (-5)] + 2] + 1, felt)" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 2 + }, + "pc": 1202, + "value": "cast([fp + (-3)] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 3 + }, + "pc": 1204, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 4 + }, + "pc": 1205, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 5 + }, + "pc": 1206, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 5 + }, + "pc": 1206, + "value": "[cast([ap + (-1)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 5 + }, + "pc": 1206, + "value": "cast([ap + (-1)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 5 + }, + "pc": 1206, + "value": "cast([ap + (-1)] + 1 - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 6 + }, + "pc": 1208, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 91, + "offset": 7 + }, + "pc": 1210, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 92, + "offset": 0 + }, + "pc": 1222, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 92, + "offset": 0 + }, + "pc": 1222, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 92, + "offset": 0 + }, + "pc": 1222, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 92, + "offset": 0 + }, + "pc": 1222, + "value": "[cast(ap + (-1), starkware.starknet.apps.upgradability_proxy.proxy_impl.implementation_time.Return*)]" + }, + { + "ap_tracking_data": { + "group": 92, + "offset": 8 + }, + "pc": 1225, + "value": "[cast(ap + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 92, + "offset": 8 + }, + "pc": 1225, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 92, + "offset": 8 + }, + "pc": 1225, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-7), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-10), felt**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-9), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 0 + }, + "pc": 1231, + "value": "[cast(fp + (-8), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 88 + }, + "pc": 1238, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 88 + }, + "pc": 1238, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 88 + }, + "pc": 1238, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 97 + }, + "pc": 1244, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 97 + }, + "pc": 1244, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 97 + }, + "pc": 1245, + "value": "[cast(fp, felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 120 + }, + "pc": 1250, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 120 + }, + "pc": 1250, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 120 + }, + "pc": 1250, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 120 + }, + "pc": 1250, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 120 + }, + "pc": 1251, + "value": "[cast(fp + 1, felt*)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 120 + }, + "pc": 1252, + "value": "[cast(fp + 2, felt**)]" + }, + { + "ap_tracking_data": { + "group": 93, + "offset": 120 + }, + "pc": 1253, + "value": "[cast(fp + 3, felt*)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 0 + }, + "pc": 1261, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 0 + }, + "pc": 1261, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 60 + }, + "pc": 1268, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 60 + }, + "pc": 1268, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 60 + }, + "pc": 1268, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 94, + "offset": 60 + }, + "pc": 1269, + "value": "[cast(fp + 4, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 95, + "offset": 0 + }, + "pc": 1278, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 95, + "offset": 0 + }, + "pc": 1278, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "[cast([fp + (-3)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "[cast([fp + (-3)] + 1, felt*)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "cast([fp + (-3)] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "[cast([fp + (-3)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 0 + }, + "pc": 1282, + "value": "cast([fp + (-3)] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 1 + }, + "pc": 1283, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 2 + }, + "pc": 1284, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 2 + }, + "pc": 1285, + "value": "cast([[fp + (-5)] + 2] + 1, felt)" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 2 + }, + "pc": 1285, + "value": "cast([fp + (-3)] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 3 + }, + "pc": 1287, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 4 + }, + "pc": 1288, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 5 + }, + "pc": 1289, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 5 + }, + "pc": 1289, + "value": "[cast([ap + (-1)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 5 + }, + "pc": 1289, + "value": "cast([ap + (-1)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 5 + }, + "pc": 1289, + "value": "cast([ap + (-1)] + 1 - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 6 + }, + "pc": 1291, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 96, + "offset": 7 + }, + "pc": 1293, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 97, + "offset": 0 + }, + "pc": 1305, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 97, + "offset": 0 + }, + "pc": 1305, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 97, + "offset": 0 + }, + "pc": 1305, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 97, + "offset": 0 + }, + "pc": 1305, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.proxy_impl.add_implementation.Return*)]" + }, + { + "ap_tracking_data": { + "group": 97, + "offset": 1 + }, + "pc": 1307, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 97, + "offset": 1 + }, + "pc": 1307, + "value": "cast(0, felt)" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-7), felt*)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-10), felt**)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-9), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 0 + }, + "pc": 1314, + "value": "[cast(fp + (-8), felt*)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 86 + }, + "pc": 1321, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 86 + }, + "pc": 1321, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 86 + }, + "pc": 1321, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 86 + }, + "pc": 1322, + "value": "[cast(fp, felt**)]" + }, + { + "ap_tracking_data": { + "group": 98, + "offset": 86 + }, + "pc": 1323, + "value": "[cast(fp + 1, felt*)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 0 + }, + "pc": 1331, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 0 + }, + "pc": 1331, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 61 + }, + "pc": 1337, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 61 + }, + "pc": 1337, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 61 + }, + "pc": 1337, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 61 + }, + "pc": 1337, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 121 + }, + "pc": 1351, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 121 + }, + "pc": 1351, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 121 + }, + "pc": 1351, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 99, + "offset": 121 + }, + "pc": 1352, + "value": "[cast(fp + 2, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 100, + "offset": 0 + }, + "pc": 1361, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 100, + "offset": 0 + }, + "pc": 1361, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "[cast([fp + (-3)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "[cast([fp + (-3)] + 1, felt*)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "cast([fp + (-3)] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "[cast([fp + (-3)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 0 + }, + "pc": 1365, + "value": "cast([fp + (-3)] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 1 + }, + "pc": 1366, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 2 + }, + "pc": 1367, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 2 + }, + "pc": 1368, + "value": "cast([[fp + (-5)] + 2] + 1, felt)" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 2 + }, + "pc": 1368, + "value": "cast([fp + (-3)] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 3 + }, + "pc": 1370, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 4 + }, + "pc": 1371, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 5 + }, + "pc": 1372, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 5 + }, + "pc": 1372, + "value": "[cast([ap + (-1)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 5 + }, + "pc": 1372, + "value": "cast([ap + (-1)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 5 + }, + "pc": 1372, + "value": "cast([ap + (-1)] + 1 - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 6 + }, + "pc": 1374, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 101, + "offset": 7 + }, + "pc": 1376, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 102, + "offset": 0 + }, + "pc": 1388, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 102, + "offset": 0 + }, + "pc": 1388, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 102, + "offset": 0 + }, + "pc": 1388, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 102, + "offset": 0 + }, + "pc": 1388, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.proxy_impl.remove_implementation.Return*)]" + }, + { + "ap_tracking_data": { + "group": 102, + "offset": 1 + }, + "pc": 1390, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 102, + "offset": 1 + }, + "pc": 1390, + "value": "cast(0, felt)" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-7), felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-10), felt**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-9), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 0 + }, + "pc": 1397, + "value": "[cast(fp + (-8), felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 92 + }, + "pc": 1404, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 92 + }, + "pc": 1404, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 92 + }, + "pc": 1404, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 125 + }, + "pc": 1406, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 125 + }, + "pc": 1406, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 125 + }, + "pc": 1406, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 125 + }, + "pc": 1407, + "value": "[cast(fp, felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 131 + }, + "pc": 1410, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 131 + }, + "pc": 1410, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 131 + }, + "pc": 1411, + "value": "[cast(fp + 1, felt*)]" + }, + { + "ap_tracking_data": { + "group": 103, + "offset": 131 + }, + "pc": 1412, + "value": "[cast(fp + 2, felt**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 0 + }, + "pc": 1420, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 0 + }, + "pc": 1420, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 61 + }, + "pc": 1426, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 61 + }, + "pc": 1426, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 61 + }, + "pc": 1426, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 61 + }, + "pc": 1426, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 61 + }, + "pc": 1427, + "value": "[cast(fp + 3, felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1435, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1435, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1435, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1435, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1436, + "value": "[cast(fp + 4, felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1437, + "value": "[cast(fp + 5, felt**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 92 + }, + "pc": 1438, + "value": "[cast(fp + 6, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 93 + }, + "pc": 1441, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 102 + }, + "pc": 1448, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 104, + "offset": 102 + }, + "pc": 1448, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 105, + "offset": 0 + }, + "pc": 1448, + "value": "[cast(ap - 0 + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 106, + "offset": 0 + }, + "pc": 1454, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 106, + "offset": 0 + }, + "pc": 1454, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 106, + "offset": 0 + }, + "pc": 1454, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 106, + "offset": 0 + }, + "pc": 1455, + "value": "[cast(fp + 7, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 107, + "offset": 0 + }, + "pc": 1463, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 107, + "offset": 0 + }, + "pc": 1463, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 0 + }, + "pc": 1470, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 0 + }, + "pc": 1470, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 0 + }, + "pc": 1470, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 0 + }, + "pc": 1471, + "value": "[cast(fp + 8, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 109, + "offset": 0 + }, + "pc": 1482, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 109, + "offset": 0 + }, + "pc": 1482, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 24 + }, + "pc": 1491, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 24 + }, + "pc": 1491, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 108, + "offset": 24 + }, + "pc": 1491, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 110, + "offset": 0 + }, + "pc": 1500, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 110, + "offset": 0 + }, + "pc": 1500, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "[cast([fp + (-3)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "[cast([fp + (-3)] + 1, felt*)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "cast([fp + (-3)] + 2, felt*)" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "[cast([fp + (-3)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 0 + }, + "pc": 1508, + "value": "cast([fp + (-3)] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 1 + }, + "pc": 1509, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 2 + }, + "pc": 1510, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 2 + }, + "pc": 1511, + "value": "cast([[fp + (-5)] + 2] + 1, felt)" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 2 + }, + "pc": 1511, + "value": "cast([fp + (-3)] + 3, felt*)" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 3 + }, + "pc": 1513, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 4 + }, + "pc": 1514, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 5 + }, + "pc": 1515, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 5 + }, + "pc": 1515, + "value": "[cast([ap + (-1)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 5 + }, + "pc": 1515, + "value": "cast([ap + (-1)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 5 + }, + "pc": 1515, + "value": "cast([ap + (-1)] + 1 - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 6 + }, + "pc": 1517, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 111, + "offset": 7 + }, + "pc": 1519, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 112, + "offset": 0 + }, + "pc": 1531, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 112, + "offset": 0 + }, + "pc": 1531, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 112, + "offset": 0 + }, + "pc": 1531, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 112, + "offset": 0 + }, + "pc": 1531, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.proxy_impl.upgrade_to.Return*)]" + }, + { + "ap_tracking_data": { + "group": 112, + "offset": 1 + }, + "pc": 1533, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 112, + "offset": 1 + }, + "pc": 1533, + "value": "cast(0, felt)" + }, + { + "ap_tracking_data": { + "group": 113, + "offset": 0 + }, + "pc": 1540, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 113, + "offset": 0 + }, + "pc": 1540, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 113, + "offset": 0 + }, + "pc": 1540, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 113, + "offset": 0 + }, + "pc": 1540, + "value": "[cast(fp + (-6), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 113, + "offset": 0 + }, + "pc": 1540, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 113, + "offset": 1 + }, + "pc": 1542, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 0 + }, + "pc": 1548, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 0 + }, + "pc": 1548, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 0 + }, + "pc": 1548, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 0 + }, + "pc": 1548, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 0 + }, + "pc": 1548, + "value": "[cast([fp + (-3)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 0 + }, + "pc": 1548, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 1 + }, + "pc": 1549, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 2 + }, + "pc": 1550, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 2 + }, + "pc": 1551, + "value": "cast([[fp + (-5)] + 2] + 1, felt)" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 2 + }, + "pc": 1551, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 3 + }, + "pc": 1553, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 4 + }, + "pc": 1554, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 5 + }, + "pc": 1555, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 5 + }, + "pc": 1555, + "value": "cast([ap + (-1)] - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 6 + }, + "pc": 1557, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 17 + }, + "pc": 1566, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 17 + }, + "pc": 1566, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 17 + }, + "pc": 1566, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 17 + }, + "pc": 1566, + "value": "[cast(ap + 0, starkware.starknet.apps.upgradability_proxy.proxy_impl.initialize.Return*)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 18 + }, + "pc": 1568, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 114, + "offset": 18 + }, + "pc": 1568, + "value": "cast(0, felt)" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 0 + }, + "pc": 1575, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 0 + }, + "pc": 1575, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 0 + }, + "pc": 1575, + "value": "[cast(fp + (-7), felt**)]" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 0 + }, + "pc": 1575, + "value": "[cast(fp + (-6), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 0 + }, + "pc": 1575, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 60 + }, + "pc": 1586, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 60 + }, + "pc": 1586, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 60 + }, + "pc": 1586, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 85 + }, + "pc": 1591, + "value": "[cast(ap + (-2), felt**)]" + }, + { + "ap_tracking_data": { + "group": 115, + "offset": 85 + }, + "pc": 1591, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 0 + }, + "pc": 1595, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 0 + }, + "pc": 1595, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 0 + }, + "pc": 1595, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 0 + }, + "pc": 1595, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 83 + }, + "pc": 1600, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 83 + }, + "pc": 1600, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 83 + }, + "pc": 1600, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 102 + }, + "pc": 1603, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 102 + }, + "pc": 1603, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 116, + "offset": 102 + }, + "pc": 1603, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 0 + }, + "pc": 1604, + "value": "[cast(fp + (-7), felt*)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 0 + }, + "pc": 1604, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 0 + }, + "pc": 1604, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 0 + }, + "pc": 1604, + "value": "[cast(fp + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 0 + }, + "pc": 1604, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 0 + }, + "pc": 1604, + "value": "[cast(fp + (-8), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 0 + }, + "pc": 1606, + "value": "[cast(fp + (-8), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 7 + }, + "pc": 1608, + "value": "[cast(ap + (-1), starkware.cairo.common.hash_state.HashState**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 26 + }, + "pc": 1613, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 26 + }, + "pc": 1613, + "value": "[cast(ap + (-1), starkware.cairo.common.hash_state.HashState**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 43 + }, + "pc": 1616, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 43 + }, + "pc": 1616, + "value": "[cast(ap + (-1), starkware.cairo.common.hash_state.HashState**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 60 + }, + "pc": 1619, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 117, + "offset": 60 + }, + "pc": 1619, + "value": "[cast(ap + (-1), starkware.cairo.common.hash_state.HashState**)]" + }, + { + "ap_tracking_data": { + "group": 118, + "offset": 0 + }, + "pc": 1623, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 118, + "offset": 0 + }, + "pc": 1623, + "value": "[cast(ap + (-1), starkware.cairo.common.hash_state.HashState**)]" + }, + { + "ap_tracking_data": { + "group": 118, + "offset": 17 + }, + "pc": 1626, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 118, + "offset": 17 + }, + "pc": 1626, + "value": "[cast(ap + (-1), starkware.cairo.common.hash_state.HashState**)]" + }, + { + "ap_tracking_data": { + "group": 118, + "offset": 26 + }, + "pc": 1628, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 118, + "offset": 26 + }, + "pc": 1628, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 118, + "offset": 26 + }, + "pc": 1628, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 119, + "offset": 0 + }, + "pc": 1629, + "value": "[cast(fp + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 119, + "offset": 0 + }, + "pc": 1629, + "value": "[cast(fp + (-6), felt**)]" + }, + { + "ap_tracking_data": { + "group": 119, + "offset": 0 + }, + "pc": 1629, + "value": "[cast(fp + (-5), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 119, + "offset": 0 + }, + "pc": 1629, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 119, + "offset": 22 + }, + "pc": 1635, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 119, + "offset": 22 + }, + "pc": 1635, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 119, + "offset": 22 + }, + "pc": 1635, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 0 + }, + "pc": 1636, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 0 + }, + "pc": 1636, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 0 + }, + "pc": 1636, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 0 + }, + "pc": 1636, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 0 + }, + "pc": 1636, + "value": "[cast([fp + (-3)], felt*)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 0 + }, + "pc": 1636, + "value": "cast([fp + (-3)] + 1, felt*)" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 0 + }, + "pc": 1636, + "value": "cast([fp + (-3)] + 1 - [fp + (-3)], felt)" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 1 + }, + "pc": 1638, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 29 + }, + "pc": 1645, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 29 + }, + "pc": 1645, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 29 + }, + "pc": 1645, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 29 + }, + "pc": 1645, + "value": "[cast(ap + 0, __main__.constructor.Return*)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 30 + }, + "pc": 1647, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 120, + "offset": 30 + }, + "pc": 1647, + "value": "cast(0, felt)" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 0 + }, + "pc": 1654, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 0 + }, + "pc": 1654, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 0 + }, + "pc": 1654, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 0 + }, + "pc": 1654, + "value": "[cast(fp + (-8), felt**)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 0 + }, + "pc": 1654, + "value": "[cast(fp + (-7), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 0 + }, + "pc": 1654, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 28 + }, + "pc": 1659, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 28 + }, + "pc": 1659, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 28 + }, + "pc": 1659, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 28 + }, + "pc": 1659, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 39 + }, + "pc": 1666, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 39 + }, + "pc": 1666, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 121, + "offset": 39 + }, + "pc": 1666, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 122, + "offset": 0 + }, + "pc": 1672, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 122, + "offset": 0 + }, + "pc": 1672, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 122, + "offset": 0 + }, + "pc": 1672, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 122, + "offset": 52 + }, + "pc": 1680, + "value": "[cast(ap + (-5), felt**)]" + }, + { + "ap_tracking_data": { + "group": 122, + "offset": 52 + }, + "pc": 1680, + "value": "[cast(ap + (-4), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 122, + "offset": 52 + }, + "pc": 1680, + "value": "[cast(ap + (-3), felt*)]" + }, + { + "ap_tracking_data": { + "group": 122, + "offset": 52 + }, + "pc": 1680, + "value": "[cast(ap + (-2), __main__.__default__.Return*)]" + }, + { + "ap_tracking_data": { + "group": 122, + "offset": 52 + }, + "pc": 1680, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 122, + "offset": 52 + }, + "pc": 1680, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 0 + }, + "pc": 1681, + "value": "[cast(fp + (-5), felt*)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 0 + }, + "pc": 1681, + "value": "[cast(fp + (-4), felt*)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 0 + }, + "pc": 1681, + "value": "[cast(fp + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 0 + }, + "pc": 1681, + "value": "[cast(fp + (-8), felt**)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 0 + }, + "pc": 1681, + "value": "[cast(fp + (-7), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 0 + }, + "pc": 1681, + "value": "[cast(fp + (-6), felt*)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 28 + }, + "pc": 1686, + "value": "[cast(ap + (-4), felt**)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 28 + }, + "pc": 1686, + "value": "[cast(ap + (-3), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 28 + }, + "pc": 1686, + "value": "[cast(ap + (-2), felt*)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 28 + }, + "pc": 1686, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 123, + "offset": 39 + }, + "pc": 1693, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 124, + "offset": 0 + }, + "pc": 1697, + "value": "[cast([fp + (-5)], felt**)]" + }, + { + "ap_tracking_data": { + "group": 124, + "offset": 0 + }, + "pc": 1697, + "value": "[cast([fp + (-5)] + 1, starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 124, + "offset": 0 + }, + "pc": 1697, + "value": "[cast([fp + (-5)] + 2, felt*)]" + }, + { + "ap_tracking_data": { + "group": 124, + "offset": 50 + }, + "pc": 1705, + "value": "[cast(ap + (-3), felt**)]" + }, + { + "ap_tracking_data": { + "group": 124, + "offset": 50 + }, + "pc": 1705, + "value": "[cast(ap + (-2), starkware.cairo.common.cairo_builtins.HashBuiltin**)]" + }, + { + "ap_tracking_data": { + "group": 124, + "offset": 50 + }, + "pc": 1705, + "value": "[cast(ap + (-1), felt*)]" + }, + { + "ap_tracking_data": { + "group": 124, + "offset": 50 + }, + "pc": 1705, + "value": "[cast(ap + 0, __main__.__l1_default__.Return*)]" + }, + { + "ap_tracking_data": { + "group": 124, + "offset": 51 + }, + "pc": 1707, + "value": "[cast(ap + (-1), felt**)]" + }, + { + "ap_tracking_data": { + "group": 124, + "offset": 51 + }, + "pc": 1707, + "value": "cast(0, felt)" + } + ] + } + } +} diff --git a/scripts/artifacts/starknet/eic_eth_bridge.casm.json b/scripts/artifacts/starknet/eic_eth_bridge.casm.json new file mode 100644 index 000000000..24651bcb7 --- /dev/null +++ b/scripts/artifacts/starknet/eic_eth_bridge.casm.json @@ -0,0 +1,4206 @@ +{ + "prime": "0x800000000000011000000000000000000000000000000000000000000000001", + "compiler_version": "2.1.0", + "bytecode": [ + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffff30710", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x81", + "0x4825800180007ffa", + "0xcf8f0", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x87", + "0x20680017fff7ffa", + "0x6c", + "0x20680017fff7ffd", + "0x5b", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0xba8", + "0x482480017fff8000", + "0xba7", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x21", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fef", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fec7fff", + "0x10780017fff7fff", + "0x23", + "0x48307ffe80007fef", + "0x400080007fed7fff", + "0x482480017fed8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fef7fff8000", + "0x48127fef7fff8000", + "0x1104800180018000", + "0xa8", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fe98000", + "0x1", + "0x48127fe97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x36", + "0x40780017fff7fff", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffa7fff8000", + "0x480080007ff68000", + "0x1104800180018000", + "0xea", + "0x20680017fff7ffa", + "0x1c", + "0x20680017fff7ffd", + "0xd", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x4824800180007fff", + "0x2", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x13", + "0x40780017fff7fff", + "0xc5a", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4549435f494e49545f444154415f4c454e5f4d49534d415443485f32", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x5", + "0x1104800180018000", + "0x102", + "0x20680017fff7ffd", + "0x89", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x12d", + "0x20680017fff7ffd", + "0x75", + "0x48127ffc7fff8000", + "0x480080007ffe8000", + "0x1104800180018000", + "0x149", + "0x20680017fff7ffe", + "0x5e", + "0x48127ffd7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0x11e", + "0x20680017fff7ffd", + "0x4a", + "0x48127ffc7fff8000", + "0x480080007ffe8000", + "0x1104800180018000", + "0x153", + "0x20680017fff7ffe", + "0x33", + "0x48127ffd7fff8000", + "0x48127fac7fff8000", + "0x480a7ffa7fff8000", + "0x48127fab7fff8000", + "0x48127fdf7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x16f", + "0x20680017fff7ffd", + "0x1e", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0x285", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xa79", + "0x481275807fff8000", + "0x481275807fff8000", + "0x481275807fff8000", + "0x481275807fff8000", + "0x480680017fff8000", + "0x1", + "0x481275807fff8000", + "0x481275807fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xbf4", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x400080007ffe7fff", + "0x481274077fff8000", + "0x481273b67fff8000", + "0x480a7ffa7fff8000", + "0x481273b57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xc03", + "0x481273f97fff8000", + "0x481273b67fff8000", + "0x480a7ffa7fff8000", + "0x481273b57fff8000", + "0x480680017fff8000", + "0x1", + "0x481273f67fff8000", + "0x481273f67fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xc10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x400080007ffe7fff", + "0x481273eb7fff8000", + "0x481273b67fff8000", + "0x480a7ffa7fff8000", + "0x481273b57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xc35", + "0x481273c77fff8000", + "0x481273b67fff8000", + "0x480a7ffa7fff8000", + "0x481273b57fff8000", + "0x480680017fff8000", + "0x1", + "0x481273c47fff8000", + "0x481273c47fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xc44", + "0x480a7ff87fff8000", + "0x481273b67fff8000", + "0x480a7ffa7fff8000", + "0x481273b57fff8000", + "0x480680017fff8000", + "0x1", + "0x481273b57fff8000", + "0x481273b57fff8000", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0xa33", + "0x482480017fff8000", + "0xa32", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4825800180007ff8", + "0x12a2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff77fff", + "0x10780017fff7fff", + "0x4c", + "0x4825800180007ff8", + "0x12a2", + "0x400280007ff77fff", + "0x482680017ff78000", + "0x1", + "0x20780017fff7ffd", + "0xd", + "0x48127fff7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x33b", + "0x20680017fff7ffe", + "0x27", + "0x400280007ffc7fff", + "0x48127ff07fff8000", + "0x48127fee7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x482680017ffc8000", + "0x1", + "0x4825800180007ffd", + "0x1", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd1", + "0x20680017fff7ffa", + "0xc", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127fee7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff78000", + "0x1", + "0x480a7ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x31b6e2ac42e0e554bf70a1d3d890fda8a700de6068f723a0ec603cac893a1e4", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffc7fff", + "0x400380017ffc7ffb", + "0x400280027ffc7ffd", + "0x400280037ffc7ffe", + "0x400380047ffc7ffd", + "0x480280067ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffc8000", + "0x480280087ffc8000", + "0x1104800180018000", + "0x2f5", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffb80007ffc", + "0xa0680017fff8000", + "0x6", + "0x48317ffe80007ffd", + "0x400280007ffa7fff", + "0x10780017fff7fff", + "0x10", + "0x482680017ffd8000", + "0x1", + "0x48307fff80007ffd", + "0x400280007ffa7fff", + "0x40780017fff7fff", + "0x1", + "0x482680017ffa8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x482a7ffd7ffb8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e646578206f7574206f6620626f756e6473", + "0x400080007ffe7fff", + "0x482680017ffa8000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x482480017ffb8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x2cb", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x100000000", + "0x1104800180018000", + "0x2ea", + "0x20680017fff7fff", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x5", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ffc7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8004", + "0xe", + "0x4825800180047ffd", + "0x800000000000000000000000000000000000000000000000000000000000000", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8002", + "0x480280007ffc7ffc", + "0x480280017ffc7ffc", + "0x402480017ffb7ffd", + "0xffffffffffffffeeffffffffffffffff", + "0x400280027ffc7ffd", + "0x10780017fff7fff", + "0x13", + "0x484480017fff8001", + "0x8000000000000000000000000000000", + "0x48317fff80007ffd", + "0x480280007ffc7ffd", + "0x480280017ffc7ffd", + "0x402480017ffc7ffe", + "0xf8000000000000000000000000000000", + "0x400280027ffc7ffe", + "0x40780017fff7fff", + "0x1", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x10780017fff7fff", + "0x8", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x2e5", + "0x20680017fff7ffd", + "0x10e", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x13", + "0x40780017fff7fff", + "0x134", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4e4f545f4c45474143595f425249444745", + "0x400080007ffe7fff", + "0x48127ec07fff8000", + "0x48127ec07fff8000", + "0x480a7ffa7fff8000", + "0x48127ebf7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x4825800180007ffc", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x13", + "0x40780017fff7fff", + "0x130", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x5a45524f5f4c315f544f4b454e", + "0x400080007ffe7fff", + "0x48127ec07fff8000", + "0x48127ec07fff8000", + "0x480a7ffa7fff8000", + "0x48127ebf7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x4825800180007ffd", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x13", + "0x40780017fff7fff", + "0x12c", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x5a45524f5f4c325f544f4b454e", + "0x400080007ffe7fff", + "0x48127ec07fff8000", + "0x48127ec07fff8000", + "0x480a7ffa7fff8000", + "0x48127ebf7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48287ffd80007ff3", + "0x20680017fff7fff", + "0x9a", + "0x48127fed7fff8000", + "0x48127fed7fff8000", + "0x48127fed7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x2a7", + "0x20680017fff7ffd", + "0x87", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffa7fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x2ec", + "0x20680017fff7ffd", + "0x73", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x5e", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x313", + "0x20680017fff7ffd", + "0x4a", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x35", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x328", + "0x20680017fff7ffd", + "0x20", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffd7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x359", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x33", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x5e", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4c325f4252494447455f414c52454144595f494e495449414c495a4544", + "0x400080007ffe7fff", + "0x48127f987fff8000", + "0x48127f987fff8000", + "0x48127f987fff8000", + "0x48127f987fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x61", + "0x48127f987fff8000", + "0x48127f987fff8000", + "0x48127f987fff8000", + "0x48127f987fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f987fff8000", + "0x48127f987fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x90", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4c325f4252494447455f414c52454144595f494e495449414c495a4544", + "0x400080007ffe7fff", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x93", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xdb", + "0x48127f1f7fff8000", + "0x48127f1f7fff8000", + "0x480a7ffa7fff8000", + "0x48127f1e7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f1e7fff8000", + "0x48127f1e7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x12b", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x544f4b454e5f414444524553535f4d49534d41544348", + "0x400080007ffe7fff", + "0x48127ec07fff8000", + "0x48127ec07fff8000", + "0x480a7ffa7fff8000", + "0x48127ebf7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x13a", + "0x48127ec07fff8000", + "0x48127ec07fff8000", + "0x480a7ffa7fff8000", + "0x48127ebf7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ebf7fff8000", + "0x48127ebf7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x2fa", + "0x20680017fff7ffd", + "0x12f", + "0x480a7ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0x305", + "0x20680017fff7ffd", + "0x11a", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x105", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x48127fbf7fff8000", + "0x1104800180018000", + "0x312", + "0x20680017fff7ffd", + "0xef", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0x48127eae7fff8000", + "0x1104800180018000", + "0x307", + "0x20680017fff7ffd", + "0xd9", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0xd2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de06068", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x1104800180018000", + "0x365", + "0x20680017fff7ffd", + "0xc2", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0x359", + "0x20680017fff7ffd", + "0xab", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0x34d", + "0x20680017fff7ffd", + "0x94", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x23edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da7", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x1104800180018000", + "0x341", + "0x20680017fff7ffd", + "0x7d", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x1104800180018000", + "0x335", + "0x20680017fff7ffd", + "0x66", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0x329", + "0x20680017fff7ffd", + "0x4f", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x481278757fff8000", + "0x1104800180018000", + "0x2b4", + "0x20680017fff7ffd", + "0x39", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x1104800180018000", + "0x312", + "0x20680017fff7ffd", + "0x22", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x37693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b96", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x1104800180018000", + "0x306", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xdc", + "0x48127f1d7fff8000", + "0x48127f1d7fff8000", + "0x48127f1d7fff8000", + "0x48127f1d7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f1d7fff8000", + "0x48127f1d7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1b8", + "0x48127e417fff8000", + "0x48127e417fff8000", + "0x48127e417fff8000", + "0x48127e417fff8000", + "0x480680017fff8000", + "0x1", + "0x48127e417fff8000", + "0x48127e417fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2c9", + "0x48127d307fff8000", + "0x48127d307fff8000", + "0x48127d307fff8000", + "0x48127d307fff8000", + "0x480680017fff8000", + "0x1", + "0x48127d307fff8000", + "0x48127d307fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x3a5", + "0x48127c547fff8000", + "0x48127c547fff8000", + "0x48127c547fff8000", + "0x48127c547fff8000", + "0x480680017fff8000", + "0x1", + "0x48127c547fff8000", + "0x48127c547fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x481", + "0x48127b787fff8000", + "0x48127b787fff8000", + "0x48127b787fff8000", + "0x48127b787fff8000", + "0x480680017fff8000", + "0x1", + "0x48127b787fff8000", + "0x48127b787fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x55d", + "0x48127a9c7fff8000", + "0x48127a9c7fff8000", + "0x48127a9c7fff8000", + "0x48127a9c7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127a9c7fff8000", + "0x48127a9c7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x639", + "0x481279c07fff8000", + "0x481279c07fff8000", + "0x481279c07fff8000", + "0x481279c07fff8000", + "0x480680017fff8000", + "0x1", + "0x481279c07fff8000", + "0x481279c07fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x715", + "0x481278e47fff8000", + "0x481278e47fff8000", + "0x481278e47fff8000", + "0x481278e47fff8000", + "0x480680017fff8000", + "0x1", + "0x481278e47fff8000", + "0x481278e47fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x7f1", + "0x481278087fff8000", + "0x481278087fff8000", + "0x481278087fff8000", + "0x481278087fff8000", + "0x480680017fff8000", + "0x1", + "0x481278087fff8000", + "0x481278087fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x902", + "0x481276f77fff8000", + "0x481276f77fff8000", + "0x481276f77fff8000", + "0x481276f77fff8000", + "0x480680017fff8000", + "0x1", + "0x481276f77fff8000", + "0x481276f77fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xa11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x524f4c45535f414c52454144595f494e495449414c495a4544", + "0x400080007ffe7fff", + "0x481275e57fff8000", + "0x481275e57fff8000", + "0x481275e57fff8000", + "0x481275e57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xa14", + "0x481275e57fff8000", + "0x481275e57fff8000", + "0x481275e57fff8000", + "0x481275e57fff8000", + "0x480680017fff8000", + "0x1", + "0x481275e57fff8000", + "0x481275e57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xa4e", + "0x480a7ffa7fff8000", + "0x481275ac7fff8000", + "0x480a7ffc7fff8000", + "0x481275ab7fff8000", + "0x480680017fff8000", + "0x1", + "0x481275ab7fff8000", + "0x481275ab7fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x8", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x0", + "0x480080007ffa8000", + "0x208b7fff7fff7ffe", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x9", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x16", + "0x480280007ffc8003", + "0x480280017ffc8003", + "0x4844800180017ffe", + "0x100000000000000000000000000000000", + "0x483180017ffd7ffd", + "0x482480017fff7ffd", + "0x800000000000010fffffffffffffffff7ffffffffffffef0000000000000001", + "0x20680017fff7ffc", + "0x6", + "0x402480017fff7ffd", + "0xffffffffffffffffffffffffffffffff", + "0x10780017fff7fff", + "0x4", + "0x402480017ffe7ffd", + "0xf7ffffffffffffef0000000000000000", + "0x400280027ffc7ffd", + "0x20680017fff7ffe", + "0xe", + "0x402780017fff7fff", + "0x1", + "0x400380007ffc7ffd", + "0x40780017fff7fff", + "0x5", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x6", + "0x482680017ffc8000", + "0x3", + "0x48127ffe7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffd80017ffb", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x28", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x48297ffd80007ffb", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x9", + "0x40780017fff7fff", + "0x3", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x17", + "0x48297ffc80017ffa", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ffb7fff", + "0x10780017fff7fff", + "0xb", + "0x400080007ffc7fff", + "0x40780017fff7fff", + "0x1", + "0x482480017ffb8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x6", + "0x482480017ffb8000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x8", + "0x40780017fff7fff", + "0x4", + "0x482680017ff98000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1dc79e2fd056704ede52dca5746b720269aaa5da53301dff546657c16ca07af", + "0x1104800180018000", + "0x20c", + "0x20680017fff7ffc", + "0x1a", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x241", + "0x20680017fff7ffd", + "0xb", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x1557182e4359a1f0c6301278e8f5b35a776ab58d39892581e357578fb287836", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x43616c6c436f6e7472616374", + "0x400280007ffc7fff", + "0x400380017ffc7ffb", + "0x400380027ffc7ffd", + "0x400280037ffc7ffc", + "0x400280047ffc7ffd", + "0x400280057ffc7ffe", + "0x480280077ffc8000", + "0x20680017fff7fff", + "0xb", + "0x480280067ffc8000", + "0x482680017ffc8000", + "0xa", + "0x480680017fff8000", + "0x0", + "0x480280087ffc8000", + "0x480280097ffc8000", + "0x10780017fff7fff", + "0x9", + "0x480280067ffc8000", + "0x482680017ffc8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffc8000", + "0x480280097ffc8000", + "0x1104800180018000", + "0x20e", + "0x20680017fff7ffd", + "0x21", + "0x480a7ffa7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x213", + "0x20680017fff7ffd", + "0xc", + "0x40780017fff7fff", + "0x2", + "0x48127ff87fff8000", + "0x48127fbf7fff8000", + "0x48127fbf7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x52657475726e6564206461746120746f6f2073686f7274", + "0x400080007ffe7fff", + "0x48127ff87fff8000", + "0x48127fbf7fff8000", + "0x48127fbf7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x36", + "0x480a7ffa7fff8000", + "0x48127fbf7fff8000", + "0x48127fbf7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fc47fff8000", + "0x48127fc47fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x250", + "0x48127ffd7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x18d", + "0x20680017fff7ffc", + "0x1c", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1c2", + "0x20680017fff7ffd", + "0xc", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd37fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd37fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd37fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x244", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x265", + "0x1104800180018000", + "0x27d", + "0x20680017fff7ffd", + "0xc", + "0x48127feb7fff8000", + "0x48127ff57fff8000", + "0x48127fea7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127feb7fff8000", + "0x48127ff57fff8000", + "0x48127fea7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x1f9", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffb7fff", + "0x400380017ffb7ff9", + "0x400280027ffb7ffe", + "0x400280037ffb7ffd", + "0x400380047ffb7ffd", + "0x480280067ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffb8000", + "0x480280087ffb8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffea4", + "0x20680017fff7ffd", + "0xd", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x1e6", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x22d", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe7f", + "0x20680017fff7ffd", + "0xd", + "0x48127fea7fff8000", + "0x48127ff57fff8000", + "0x48127fe97fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fea7fff8000", + "0x48127ff57fff8000", + "0x48127fe97fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x22d", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480080027ffb8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x240", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x25b", + "0x20680017fff7ffd", + "0x57", + "0x20680017fff7fff", + "0x44", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0x26a", + "0x20680017fff7ffd", + "0x2d", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffb6", + "0x20680017fff7ffd", + "0x1c", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x29f", + "0x20680017fff7ffd", + "0x8", + "0x48127f757fff8000", + "0x48127ffa7fff8000", + "0x48127f757fff8000", + "0x48127ff97fff8000", + "0x10780017fff7fff", + "0x29", + "0x40780017fff7fff", + "0x4", + "0x48127f717fff8000", + "0x48127ff67fff8000", + "0x48127f717fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6a", + "0x48127f717fff8000", + "0x48127f907fff8000", + "0x48127f717fff8000", + "0x48127f8f7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f8f7fff8000", + "0x48127f8f7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x88", + "0x48127f717fff8000", + "0x48127f717fff8000", + "0x48127f717fff8000", + "0x48127f717fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f717fff8000", + "0x48127f717fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xb5", + "0x48127f447fff8000", + "0x48127f447fff8000", + "0x48127f447fff8000", + "0x48127f447fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xb9", + "0x48127f407fff8000", + "0x48127f407fff8000", + "0x48127f407fff8000", + "0x48127f407fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f407fff8000", + "0x48127f407fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff76", + "0x20680017fff7ffd", + "0x34", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x291", + "0x20680017fff7ffd", + "0x1f", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x480a7ffc7fff8000", + "0x48127fcf7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x2c3", + "0x20680017fff7ffd", + "0xd", + "0x48127f937fff8000", + "0x48127ffa7fff8000", + "0x48127f937fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127f937fff8000", + "0x48127ffa7fff8000", + "0x48127f937fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x66", + "0x48127f937fff8000", + "0x48127f937fff8000", + "0x48127f937fff8000", + "0x48127f937fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f937fff8000", + "0x48127f937fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x93", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0x28", + "0x480a7ff97fff8000", + "0x480280067ffb8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffad5", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x20680017fff7ffc", + "0xf", + "0x40780017fff7fff", + "0x2", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4e6f6e20436f6e747261637441646472657373", + "0x400080007ffe7fff", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x11", + "0x480a7ff97fff8000", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x44", + "0x480a7ffb7fff8000", + "0x480080007ffc8000", + "0x1104800180018000", + "0x26f", + "0x20680017fff7ffe", + "0x39", + "0x48307ff180007ff2", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482480017ff08000", + "0x1", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x48127fed7fff8000", + "0x10780017fff7fff", + "0x8", + "0x48127ff07fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x15", + "0x48127ff67fff8000", + "0x480080007ffc8000", + "0x1104800180018000", + "0x252", + "0x20680017fff7ffe", + "0xc", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127fef7fff8000", + "0x48127fef7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127fe67fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffd7fff8000", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0xd", + "0x48127fe97fff8000", + "0x48127fff7fff8000", + "0x48127fef7fff8000", + "0x48127fef7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x14", + "0x48127fe97fff8000", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0x21", + "0x480a7ffb7fff8000", + "0x48127fff7fff8000", + "0x48127fdb7fff8000", + "0x48127fdb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1ea43de8c123570bf07ef49fac65a58e3ae0aea154c177fd072a276e6b5db3", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x480280027ffc8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffb7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffb7ffd", + "0x400280027ffb7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x482680017ffc8000", + "0x3", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x3a59528bf161e30b9b238f21a617fcbbf76440b827f085240077925ab4b8dcf", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x480280027ffc8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffb7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffb7ffd", + "0x400280027ffb7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x482680017ffc8000", + "0x3", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0xb", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480280067ffb8000", + "0x208b7fff7fff7ffe", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffa7fff", + "0x400380017ffa7ff9", + "0x400380027ffa7ffb", + "0x400380037ffa7ffc", + "0x400380047ffa7ffd", + "0x480280067ffa8000", + "0x20680017fff7fff", + "0xc", + "0x480280057ffa8000", + "0x482680017ffa8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480280057ffa8000", + "0x482680017ffa8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffa8000", + "0x480280087ffa8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x476574457865637574696f6e496e666f", + "0x400280007ffd7fff", + "0x400380017ffd7ffc", + "0x480280037ffd8000", + "0x20680017fff7fff", + "0xc", + "0x480280027ffd8000", + "0x482680017ffd8000", + "0x5", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480280047ffd8000", + "0x10780017fff7fff", + "0x9", + "0x480280027ffd8000", + "0x482680017ffd8000", + "0x6", + "0x480680017fff8000", + "0x1", + "0x480280047ffd8000", + "0x480280057ffd8000", + "0x1104800180018000", + "0x19e", + "0x20680017fff7ffd", + "0xa", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x195", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffc7fff", + "0x400380017ffc7ffa", + "0x400280027ffc7ffe", + "0x400280037ffc7ffd", + "0x480280057ffc8000", + "0x20680017fff7fff", + "0xc", + "0x480280047ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480280067ffc8000", + "0x10780017fff7fff", + "0x9", + "0x480280047ffc8000", + "0x482680017ffc8000", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480280067ffc8000", + "0x480280077ffc8000", + "0x1104800180018000", + "0x19f", + "0x20680017fff7ffd", + "0xc", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x18f", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x198", + "0x20780017fff7ffd", + "0x6", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffa7fff", + "0x400380017ffa7ff8", + "0x400280027ffa7ffe", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x480280067ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffa8000", + "0x482680017ffa8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffa8000", + "0x482680017ffa8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffa8000", + "0x480280087ffa8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffb8c", + "0x20680017fff7ffd", + "0xd", + "0x48127fef7fff8000", + "0x48127ff57fff8000", + "0x48127fee7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fef7fff8000", + "0x48127ff57fff8000", + "0x48127fee7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x180", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff87fff8000", + "0x1104800180018000", + "0x178", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffa7fff", + "0x400380017ffa7ff9", + "0x400280027ffa7ffb", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x400280057ffa7ffe", + "0x480280077ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffa8000", + "0x480280097ffa8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffb40", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0xb4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffb7fff", + "0x400380017ffb7ff9", + "0x400280027ffb7ffe", + "0x400280037ffb7ffd", + "0x400380047ffb7ffd", + "0x480280067ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffb8000", + "0x480280087ffb8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffb09", + "0x20680017fff7ffd", + "0xd", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x12c", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff87fff8000", + "0x1104800180018000", + "0xf5", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffa7fff", + "0x400380017ffa7ff9", + "0x400280027ffa7ffb", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x400280057ffa7ffe", + "0x480280077ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffa8000", + "0x480280097ffa8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffabd", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x16", + "0x480280007ffc8003", + "0x480280017ffc8003", + "0x4844800180017ffe", + "0x100000000000000000000000000000000", + "0x483180017ffd7ffd", + "0x482480017fff7ffd", + "0x800000000000010fffffffffffffffff7ffffffffffffef0000000000000001", + "0x20680017fff7ffc", + "0x6", + "0x402480017fff7ffd", + "0xffffffffffffffffffffffffffffffff", + "0x10780017fff7fff", + "0x4", + "0x402480017ffe7ffd", + "0xf7ffffffffffffef0000000000000000", + "0x400280027ffc7ffd", + "0x20680017fff7ffe", + "0xe", + "0x402780017fff7fff", + "0x1", + "0x400380007ffc7ffd", + "0x40780017fff7fff", + "0x5", + "0x482680017ffc8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x10780017fff7fff", + "0x8", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x2e9f66c6eea14532c94ad25405a4fcb32faa4969559c128d837caa0ec50a655", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x480280027ffc8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffb7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffb7ffd", + "0x400280027ffb7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x482680017ffc8000", + "0x3", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x20", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x79", + "0x1104800180018000", + "0xa2", + "0x20680017fff7ffd", + "0xc", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x52c476292b358ba7d29adb58502341b4cc5437d07f67d3e285e085828bc820", + "0x400280007ffb7fff", + "0x400380017ffb7ffc", + "0x480280027ffb8000", + "0x400280037ffb7fff", + "0x400380047ffb7ffd", + "0x480280057ffb8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffa7ffc", + "0x480280017ffa7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffa7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffa7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffa7ffd", + "0x400280027ffa7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffa8000", + "0x3", + "0x482680017ffb8000", + "0x6", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ff6", + "0x15", + "0x480680017fff8000", + "0x9d4a59b844ac9d98627ddba326ab3707a7d7e105fd03c777569d0f61a91f1e", + "0x400280007ffb7fff", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x5a", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x10780017fff7fff", + "0x15", + "0x40780017fff7fff", + "0xe", + "0x480680017fff8000", + "0x2b23b0c08c7b22209aea4100552de1b7876a49f04ee5a4d94f83ad24bc4ec1c", + "0x400280007ffb7fff", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x59", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0x1a", + "0x480280067ffb8000", + "0x4824800180007fff", + "0x0", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x20680017fff7ffd", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48307ffa80007ffb", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x25", + "0x480a7ff87fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x25", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x20", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x11", + "0x480a7ff87fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xc", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x7", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x400380007ffd7ffb", + "0x480a7ffc7fff8000", + "0x482680017ffd8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff9", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x208b7fff7fff7ffe" + ], + "hints": [ + [ + 0, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0xcf8f0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 28, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 53, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -16 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 74, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 94, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 110, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 134, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 173, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 247, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 351, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 379, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 421, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x12a2" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 504, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 535, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 577, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 597, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 635, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 639, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 649, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 697, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 729, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 761, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 866, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 894, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 933, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1240, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1327, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1329, + [ + { + "DivMod": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { + "register": "AP", + "offset": 3 + }, + "remainder": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 1365, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -5 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 1388, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -4 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 1462, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1476, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 1516, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1641, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 1954, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 1979, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2140, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 2144, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 2155, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 2180, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 2184, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 2195, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 2221, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 2261, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 2286, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -3 + } + } + } + } + ] + ], + [ + 2338, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 2433, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 2483, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2485, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2509, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 2564, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 2614, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2616, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2640, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 2681, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2683, + [ + { + "DivMod": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { + "register": "AP", + "offset": 3 + }, + "remainder": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 2738, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 2742, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 2753, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 2830, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 2834, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 2845, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 2924, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ] + ], + "entry_points_by_type": { + "EXTERNAL": [ + { + "selector": "0x3ea3b9a8522d36784cb325f9c7e2ec3c9f3e6d63031a6c6b8743cc22412f604", + "offset": 0, + "builtins": ["pedersen", "range_check"] + } + ], + "L1_HANDLER": [], + "CONSTRUCTOR": [] + } +} diff --git a/scripts/artifacts/starknet/eic_eth_bridge.sierra.json b/scripts/artifacts/starknet/eic_eth_bridge.sierra.json new file mode 100644 index 000000000..e83f6639d --- /dev/null +++ b/scripts/artifacts/starknet/eic_eth_bridge.sierra.json @@ -0,0 +1,1793 @@ +{ + "sierra_program": [ + "0x1", + "0x3", + "0x0", + "0x2", + "0x3", + "0x0", + "0x2ff", + "0x101", + "0x5e", + "0x52616e6765436865636b", + "0x800000000000000100000000000000000000000000000000", + "0x537472756374", + "0x800000000000000f00000000000000000000000000000001", + "0x0", + "0x2ee1e2b1b89f8c495f200e4956278a4d47395fe262f27b52e5865c9524c08c3", + "0x456e756d", + "0x800000000000000700000000000000000000000000000003", + "0x3288d594b9a45d15bb2fcb7903f06cdb06b27f0ba88186ec4cfaa98307cb972", + "0x1", + "0x4172726179", + "0x800000000000000300000000000000000000000000000001", + "0x5", + "0x800000000000000300000000000000000000000000000003", + "0x248e8fae2f16a35027771ffd74d6a6f3c379424b55843563a18f566bba3d905", + "0x2", + "0x3", + "0x66656c74323532", + "0x800000000000000700000000000000000000000000000000", + "0x436f6e747261637441646472657373", + "0x800000000000000700000000000000000000000000000004", + "0x30f406b1d8bc98143cf38cf66d9152a9ad605c5cc90a602d7460776ec6718ed", + "0x6", + "0x384c2e98e3af0acf314102dc8ebe9011cefe220e3f77edc819db2a94915b72f", + "0x2602187a9917f72ddb732712acb468bd11670874f28c0ee9e0b4f32d9548a12", + "0x7", + "0x8", + "0x90d0203c41ad646d024845257a6eceb2f8b59b29ce7420dd518053d2edeedc", + "0x426f78", + "0x800000000000000700000000000000000000000000000001", + "0x22", + "0x2c7badf5cd070e89531ef781330a9554b04ce4ea21304b67a30ac3d43df84a2", + "0xb", + "0x800000000000000700000000000000000000000000000002", + "0x1166fe35572d4e7764dac0caf1fd7fc591901fd01156db2561a07b68ab8dca2", + "0x75313238", + "0x1909a2057b9c1373b889e003e050a09f431d8108e0659d03444ced99a6eea68", + "0xe", + "0x1fb72767da27ace0380dfaed3077ed962d5ad73109ffd85cc2216f55393b010", + "0x800000000000000f00000000000000000000000000000003", + "0x10", + "0x16a4c8d7c05909052238a862d8cc3e7975bf05a07b3a69c6b28951083a6d672", + "0x12", + "0x3d5eb257de538a513f50697b2cb278c0d2b6d64ba10776d11d6246deaf47dcf", + "0x11", + "0x13", + "0x10f63744474afbf7f8e2cc8db2c00cb0b9fc052da022d7555e26a51b9deba36", + "0x15", + "0x6f55d5c0252dfeca8cfb772ae39e89f4443bd0a6e9f12bf3a4513625954824", + "0x16", + "0xa853c166304d20fb0711becf2cbdf482dee3cac4e9717d040b7a7ab1df7eec", + "0x19", + "0x1f", + "0x21", + "0x536e617073686f74", + "0x1baeba72e79e9db2587cf44fedb2f3700b2075a5e8e39a562584862c4b71f62", + "0x1d", + "0x800000000000000700000000000000000000000000000008", + "0x2e655a7513158873ca2e5e659a9e175d23bf69a2325cdd0397ca3b8d864b967", + "0x1e", + "0x753634", + "0x3808c701a5d13e100ab11b6c02f91f752ecae7e420d21b56c90ec0a475cc7e5", + "0x20", + "0x800000000000000700000000000000000000000000000006", + "0x19367431bdedfe09ea99eed9ade3de00f195dd97087ed511b8942ebb45dbc5a", + "0x1c", + "0x1b", + "0x38f4af6e44b2e0a6ad228a4874672855e693db590abc7105a5a9819dbbf5ba6", + "0x23", + "0x3233063c5dc6197e9bf4ddc53b925e10907665cf58255b7899f8212442d4605", + "0x28b30f2f58c2d7a07c2ba2833de42854cb49836acd38cd6c1dbb05289c23236", + "0x25", + "0x25e2ca4b84968c2d8b83ef476ca8549410346b00836ce79beaf538155990bb2", + "0x12867ecd09c884a5cf1f6d9eb0193b4695ce3bb3b2d796a8367d0c371f59cb2", + "0x27", + "0x161ee0e6962e56453b5d68e09d1cabe5633858c1ba3a7e73fee8c70867eced0", + "0x25bafed1db971ec9d9883af3e1e08a185480f03f54ed88b3c1ffa951cde4037", + "0x800000000000000300000000000000000000000000000002", + "0x2a", + "0x145068ba3432c23eddd89dd45fe638a782885652788ad82ad6690857df46db5", + "0x2b", + "0x10203be321c62a7bd4c060d69539c1fbe065baa9e253c74d2cc48be163e259", + "0x2d", + "0x249216381e5f77943aa071532682cbe54f14e47c6cb9cbb79fc262d7de3d64d", + "0x2f", + "0xff15e67b5bc43bdb741c12223d82f7e95987844778d1b46c2cb445c9e3e5d1", + "0x30", + "0x3cf57cacd16609b0838e1d844335b91151a4ef2beb53419d17116cd2ca816e3", + "0x32", + "0x3ba0365c4726f88385141fef64dd44b2068e21a31504a0ac12c5d2734f6b944", + "0x33", + "0x1d8a68005db1b26d0d9f54faae1798d540e7df6326fae758cc2cf8f7ee88e72", + "0x35", + "0x2ce4352eafa6073ab4ecf9445ae96214f99c2c33a29c01fcae68ba501d10e2c", + "0x37", + "0xca541461e290a9ba8a6f6c31a65791ff9c76037bf4c248ffc94e3a352c709b", + "0x3e1934b18d91949ab9afdbdd1866a30ccca06c2b1e6581582c6b27f8b4f6555", + "0x3a", + "0x800000000000000f00000000000000000000000000000002", + "0xcc5e86243f861d2d64b08c35db21013e773ac5cf10097946fe0011304886d5", + "0x3c", + "0x101dc0399934cc08fa0d6f6f2daead4e4a38cabeea1c743e1fc28d2d6e58e99", + "0x53746f7261676541646472657373", + "0x53746f726167654261736541646472657373", + "0x11c6d8087e00642489f92d2821ad6ebd6532ad1a3b6d12833da6d6810391511", + "0x4e6f6e5a65726f", + "0x3d37ad6eafb32512d2dd95a2917f6bf14858de22c27a1114392429f2e5c15d7", + "0x24d668d7ede46c87d2cddfbcf73195c96f0ca8075ae10c8a468054b80120d78", + "0x45", + "0x3ae40d407f8074730e48241717c3dd78b7128d346cf81094e31806a3a5bdf", + "0x46", + "0x262ee27f7da83894abe1bfdb24863abc4d2d8c159b937a1674771f6f5d336ea", + "0x48", + "0xd1ad3b6229644630261e6cfb396308188f7f7b5196d71c08149bf01ed0b1d0", + "0x49", + "0x7538", + "0x17b6ecc31946835b0d9d92c2dd7a9c14f29af0371571ae74a1b228828b2242", + "0x4c", + "0x34f9bd7c6cb2dd4263175964ad75f1ff1461ddc332fbfb274e0fb2a5d7ab968", + "0x4d", + "0x29d7d57c04a880978e7b3689f6218e507f3be17588744b58dc17762447ad0e7", + "0x34abf703ff9d3babf5505f274995b6811963be3f07fe20ee32d6792a37f5dd2", + "0x800000000000000f00000000000000000000000000000007", + "0x3cd0afb90e12aa2b256903404680b083ceefb814f81f4cff95f9475e70b10be", + "0x51", + "0x52", + "0x11fc7e78c2659d115855765ce57cdc8fcb7cc2e94cdfacda9c6ec8b21dafc4e", + "0x53", + "0x4275696c74696e436f737473", + "0x53797374656d", + "0x506564657273656e", + "0x9931c641b913035ae674b400b61a51476d506bbe8bba2ff8a6272790aba9e6", + "0x50", + "0x753332", + "0x1d49f7a4b277bf7b55a2664ce8cef5d6922b5ffb806b89644b9e0cdbbcac378", + "0x5a", + "0x13fdd7105045794a99550ae1c4ac13faa62610dfab62c16422bfcf5803baa6e", + "0x5b", + "0x4761734275696c74696e", + "0x1a2", + "0x7265766f6b655f61705f747261636b696e67", + "0x77697468647261775f676173", + "0x6272616e63685f616c69676e", + "0x73746f72655f74656d70", + "0x5d", + "0x66756e6374696f6e5f63616c6c", + "0x656e756d5f6d61746368", + "0x5c", + "0x7374727563745f6465636f6e737472756374", + "0x61727261795f6c656e", + "0x736e617073686f745f74616b65", + "0x59", + "0x64726f70", + "0x7533325f636f6e7374", + "0x72656e616d65", + "0x7533325f6571", + "0x61727261795f6e6577", + "0x66656c743235325f636f6e7374", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x61727261795f617070656e64", + "0x7374727563745f636f6e737472756374", + "0x656e756d5f696e6974", + "0x58", + "0x57", + "0x56", + "0x6765745f6275696c74696e5f636f737473", + "0x55", + "0x77697468647261775f6761735f616c6c", + "0x54", + "0x4f7574206f6620676173", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x64697361626c655f61705f747261636b696e67", + "0x61727261795f736e617073686f745f706f705f66726f6e74", + "0x4f", + "0x6a756d70", + "0x756e626f78", + "0x4e", + "0x647570", + "0x4549435f494e49545f444154415f4c454e5f4d49534d415443485f32", + "0x75385f636f6e7374", + "0x4b", + "0x4", + "0x4a", + "0x47", + "0x44", + "0x43", + "0x9", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x66656c743235325f69735f7a65726f", + "0x42", + "0xa", + "0x41", + "0x66656c743235325f737562", + "0x73746f726167655f626173655f616464726573735f636f6e7374", + "0x31b6e2ac42e0e554bf70a1d3d890fda8a700de6068f723a0ec603cac893a1e4", + "0x75385f746f5f66656c74323532", + "0x73746f726167655f616464726573735f66726f6d5f62617365", + "0x3f", + "0x73746f726167655f77726974655f73797363616c6c", + "0x3e", + "0x3d", + "0x61727261795f676574", + "0x496e646578206f7574206f6620626f756e6473", + "0xc", + "0x753132385f636f6e7374", + "0x100000000", + "0xd", + "0x21adb5788e32c84f69a1863d85ef9394b7bf761a0ce1190f826984e5075c371", + "0x3b", + "0x636f6e74726163745f616464726573735f746f5f66656c74323532", + "0x626f6f6c5f6e6f745f696d706c", + "0x4e4f545f4c45474143595f425249444745", + "0x5a45524f5f4c315f544f4b454e", + "0x5a45524f5f4c325f544f4b454e", + "0x39", + "0xf", + "0x38", + "0x36", + "0x34", + "0x31", + "0x4c325f4252494447455f414c52454144595f494e495449414c495a4544", + "0x544f4b454e5f414444524553535f4d49534d41544348", + "0x14", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x2e", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0xd2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de06068", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x17", + "0x23edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da7", + "0x128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x37693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b96", + "0x524f4c45535f414c52454144595f494e495449414c495a4544", + "0x75313238735f66726f6d5f66656c74323532", + "0x753132385f6f766572666c6f77696e675f737562", + "0x753132385f6571", + "0x1dc79e2fd056704ede52dca5746b720269aaa5da53301dff546657c16ca07af", + "0x40", + "0x18", + "0x2c", + "0x1557182e4359a1f0c6301278e8f5b35a776ab58d39892581e357578fb287836", + "0x63616c6c5f636f6e74726163745f73797363616c6c", + "0x29", + "0x1a", + "0x28", + "0x52657475726e6564206461746120746f6f2073686f7274", + "0x26", + "0x24", + "0x73746f726167655f726561645f73797363616c6c", + "0x4e6f6e20436f6e747261637441646472657373", + "0x1ea43de8c123570bf07ef49fac65a58e3ae0aea154c177fd072a276e6b5db3", + "0x706564657273656e", + "0xad292db4ff05a993c318438c1b6c8a8303266af2da151aa28ccece6726f1f1", + "0x3a59528bf161e30b9b238f21a617fcbbf76440b827f085240077925ab4b8dcf", + "0x6765745f657865637574696f6e5f696e666f5f73797363616c6c", + "0x656d69745f6576656e745f73797363616c6c", + "0x2e9f66c6eea14532c94ad25405a4fcb32faa4969559c128d837caa0ec50a655", + "0x52c476292b358ba7d29adb58502341b4cc5437d07f67d3e285e085828bc820", + "0x9d4a59b844ac9d98627ddba326ab3707a7d7e105fd03c777569d0f61a91f1e", + "0x2b23b0c08c7b22209aea4100552de1b7876a49f04ee5a4d94f83ad24bc4ec1c", + "0xac8", + "0xffffffffffffffff", + "0x77", + "0x6f", + "0x5f", + "0x60", + "0x61", + "0x62", + "0x63", + "0x64", + "0x65", + "0x66", + "0x67", + "0x68", + "0x69", + "0x6a", + "0x6b", + "0x6c", + "0x6d", + "0x6e", + "0x70", + "0x71", + "0x72", + "0x73", + "0x74", + "0x75", + "0x76", + "0x78", + "0x79", + "0x8e", + "0x93", + "0xbd", + "0xb7", + "0xaf", + "0xe3", + "0x18e", + "0x17f", + "0x169", + "0x15a", + "0x144", + "0x13c", + "0x134", + "0x7a", + "0x7b", + "0x7c", + "0x7d", + "0x7e", + "0x7f", + "0x80", + "0x81", + "0x82", + "0x83", + "0x84", + "0x85", + "0x86", + "0x87", + "0x88", + "0x89", + "0x8a", + "0x8b", + "0x8c", + "0x8d", + "0x8f", + "0x90", + "0x91", + "0x92", + "0x94", + "0x95", + "0x96", + "0x97", + "0x98", + "0x99", + "0x9a", + "0x9b", + "0x9c", + "0x9d", + "0x9e", + "0x9f", + "0xa0", + "0xa1", + "0xa2", + "0xa3", + "0xa4", + "0xa5", + "0xa6", + "0xa7", + "0xa8", + "0xa9", + "0xaa", + "0xab", + "0xac", + "0xad", + "0xae", + "0xb0", + "0xb1", + "0x1d5", + "0x1ad", + "0x1cb", + "0x1c5", + "0x1f4", + "0x1f9", + "0x204", + "0x212", + "0x230", + "0x235", + "0x23e", + "0x243", + "0x3e9", + "0x261", + "0x266", + "0xb2", + "0xb3", + "0x281", + "0xb4", + "0xb5", + "0xb6", + "0x294", + "0x299", + "0x2b4", + "0xb8", + "0x2c7", + "0x2cc", + "0x2e7", + "0xb9", + "0xba", + "0xbb", + "0x3d2", + "0xbc", + "0xbe", + "0xbf", + "0x3c2", + "0xc0", + "0xc1", + "0xc2", + "0xc3", + "0x3b2", + "0x39b", + "0xc4", + "0xc5", + "0xc6", + "0xc7", + "0x38b", + "0xc8", + "0x374", + "0xc9", + "0xca", + "0xcb", + "0xcc", + "0xcd", + "0xce", + "0xcf", + "0xd0", + "0x365", + "0xd1", + "0xd7", + "0xd8", + "0xd9", + "0xda", + "0xdb", + "0xdc", + "0xdd", + "0xd2", + "0xd3", + "0xd4", + "0xd5", + "0xd6", + "0xde", + "0x358", + "0xdf", + "0xe0", + "0xe1", + "0xe2", + "0xe4", + "0xe5", + "0xe6", + "0xe7", + "0xe8", + "0xe9", + "0xea", + "0xeb", + "0xec", + "0xed", + "0xee", + "0xef", + "0xf0", + "0xf1", + "0xf2", + "0xf3", + "0xf4", + "0xf5", + "0xf6", + "0xf7", + "0xf8", + "0xf9", + "0xfa", + "0xfb", + "0xfc", + "0xfd", + "0xfe", + "0xff", + "0x100", + "0x101", + "0x102", + "0x103", + "0x104", + "0x105", + "0x106", + "0x107", + "0x108", + "0x109", + "0x10a", + "0x10b", + "0x10c", + "0x10d", + "0x10e", + "0x10f", + "0x110", + "0x111", + "0x112", + "0x113", + "0x114", + "0x115", + "0x116", + "0x117", + "0x118", + "0x119", + "0x11a", + "0x11b", + "0x11c", + "0x11d", + "0x11e", + "0x11f", + "0x120", + "0x121", + "0x122", + "0x123", + "0x124", + "0x125", + "0x126", + "0x127", + "0x128", + "0x129", + "0x12a", + "0x12b", + "0x12c", + "0x12d", + "0x12e", + "0x12f", + "0x130", + "0x131", + "0x533", + "0x529", + "0x518", + "0x50f", + "0x506", + "0x4fd", + "0x4f4", + "0x4eb", + "0x4e2", + "0x4d9", + "0x4d0", + "0x4c8", + "0x4c0", + "0x4b8", + "0x132", + "0x133", + "0x135", + "0x136", + "0x137", + "0x138", + "0x139", + "0x13a", + "0x13b", + "0x13d", + "0x13e", + "0x13f", + "0x140", + "0x141", + "0x142", + "0x143", + "0x145", + "0x146", + "0x147", + "0x148", + "0x149", + "0x14a", + "0x543", + "0x548", + "0x552", + "0x55f", + "0x56c", + "0x570", + "0x59e", + "0x58a", + "0x59b", + "0x593", + "0x599", + "0x5a8", + "0x5ca", + "0x5c3", + "0x5e0", + "0x5e5", + "0x605", + "0x5f7", + "0x630", + "0x628", + "0x650", + "0x66a", + "0x66f", + "0x67c", + "0x69f", + "0x6ba", + "0x6d8", + "0x753", + "0x741", + "0x732", + "0x722", + "0x71a", + "0x74a", + "0x7a5", + "0x795", + "0x78d", + "0x7d0", + "0x7c2", + "0x14b", + "0x7df", + "0x14c", + "0x7eb", + "0x7f8", + "0x7fd", + "0x839", + "0x14d", + "0x14e", + "0x835", + "0x80f", + "0x814", + "0x82a", + "0x825", + "0x14f", + "0x150", + "0x151", + "0x830", + "0x152", + "0x83e", + "0x153", + "0x154", + "0x155", + "0x156", + "0x157", + "0x158", + "0x86a", + "0x159", + "0x15b", + "0x15c", + "0x876", + "0x886", + "0x15d", + "0x893", + "0x15e", + "0x15f", + "0x898", + "0x160", + "0x161", + "0x162", + "0x8a3", + "0x163", + "0x164", + "0x165", + "0x166", + "0x167", + "0x8b8", + "0x168", + "0x8bd", + "0x16a", + "0x16b", + "0x16c", + "0x8ca", + "0x16d", + "0x8eb", + "0x16e", + "0x16f", + "0x170", + "0x171", + "0x172", + "0x173", + "0x900", + "0x904", + "0x90e", + "0x913", + "0x920", + "0x174", + "0x175", + "0x176", + "0x177", + "0x178", + "0x179", + "0x17a", + "0x17b", + "0x17c", + "0x17d", + "0x944", + "0x949", + "0x954", + "0x17e", + "0x96c", + "0x971", + "0x97e", + "0x180", + "0x181", + "0x182", + "0x183", + "0x9a2", + "0x9a7", + "0x9b2", + "0x9bf", + "0x184", + "0x185", + "0x9c6", + "0x186", + "0x187", + "0x188", + "0x9cf", + "0x189", + "0x18a", + "0x9e9", + "0x18b", + "0x18c", + "0x18d", + "0xa07", + "0x18f", + "0x190", + "0x191", + "0xa33", + "0x192", + "0x193", + "0xa3e", + "0x194", + "0x195", + "0x196", + "0x197", + "0xa6c", + "0xa61", + "0xa66", + "0x198", + "0x199", + "0x19a", + "0x19b", + "0xa78", + "0x19c", + "0x19d", + "0x19e", + "0x19f", + "0x1a0", + "0x1a1", + "0x1e4", + "0x20b", + "0x21d", + "0x238", + "0x246", + "0x3f9", + "0x53c", + "0x559", + "0x565", + "0x573", + "0x5ab", + "0x5d1", + "0x60c", + "0x638", + "0x658", + "0x685", + "0x6a8", + "0x6c0", + "0x6e0", + "0x75e", + "0x7b0", + "0x7d9", + "0x7e5", + "0x7f1", + "0x843", + "0x852", + "0x861", + "0x870", + "0x87c", + "0x88c", + "0x8a9", + "0x8d2", + "0x8f3", + "0x929", + "0x95b", + "0x987", + "0x9b9", + "0x9c9", + "0x9d5", + "0x9e3", + "0x9ef", + "0xa0f", + "0xa23", + "0xa26", + "0xa43", + "0xa46", + "0xa72", + "0xa7e", + "0xa9a", + "0xab6", + "0xabc", + "0x61ae", + "0x100280f0140e01c0d0280c02c0a0280a028090140801c060140400c0200400", + "0xa0340a0340a060050540305c0a05c0a0340a058050540304c1404c120440a", + "0x200140e01c1f0281e074110280d0281c0140e01c1b0281a028190140801c0d", + "0x309c05010030280a0980a094050200704c240340a08c05088030440a0840a", + "0x2d0282c0140e01c110282b028060140e00c2a0140400c0a028290280601428", + "0x5020030b80a0c80a0c405038070280a0c00a018050a0030bc05010030b80a", + "0x1e074350281e0742e02834028330140e01c10028060142200c170280d02806", + "0xa0f00a0980a05c0a0340a0ec050e8030e40a0e005088030440a078370d80a", + "0x4302842028410144000c170283f0283f0283e0141500c130f40d0280d0280d", + "0xa11805088030b80a1140a11005038070840a01805088030340a05c0a05c0a", + "0xa0284b0284a0140801c2602826028490140800c1102848028470140e01c0d", + "0x50380713c0a01805138030440a05c0a13405038070440a0f00a1300503807", + "0x2800c540140400c2e02853028520140e01c0d028060142200c2e0285102850", + "0xa1640a018050a00316005010030b80a15c0a15805038070280a1540a01805", + "0x2200c2e0285d0285c0140e01c48028060142200c2e0285b0285a0140e01c0a", + "0x705c0a018050880305c0a18005088030b80a17c0a178050380712c0a01805", + "0x660140e01c2e02865028640140e01c0a028060146300c2e02862028610140e", + "0xa1ac05020070340a0786a0280a0340a1a4050200704c6804c670440a0280a", + "0x6e0140e01c6d028060142200c0d0281e0740a028480286c0140801c0a02817", + "0x740b80a1cc0a1c805038070280a1c40a018050a0031c005010030b80a1bc0a", + "0x2e02878028770140e01c760283c028060140e00c0a02811028750140e01c13", + "0xa1640a1f0051ec031e805010030f00a01805088030280a1b40a1e40502007", + "0x2e028800287f0140e01c0a0287e028060142800c30028290287d0287102855", + "0x30280a0f00a21c050200704c860b80a2140a2100503807008830088204c81", + "0x900148f0148e0148d2300222c2e0288a028890140e01c880283c0280601408", + "0xa24c8a0280a254940280a24c0a0440a2483c0280a240910280a240050280a", + "0xa0289b014100289a2600a028992600a028970340a028960f00a028952200a", + "0xa2800d0280a2409f0400a2780d0280a2743c0280a26405270980280a24098", + "0x902940a028902900a028900281028c0a040a20b80a028a10ac0a028a10340a", + "0xa284710280a284550280a284590280a284052a0a70280a24005298a30280a", + "0xa0289304011028921f80a028901f80a028a10c00a028a10a40a028a11f40a", + "0xa302810288850280a2843c0280a284110280a264110280a25c800280a264a9", + "0x102b80a040a20340a028ad014ac2ac100289e0280a028992a8100289e01410", + "0xae0280a24c0a040ae028102880a0280a284052bcae0280a240390280a24005", + "0x931e00a028952c40a0289304411028920440a028900340a0289b0340a028b0", + "0x10288940280a2400504094028102888a0280a284050408802810288760280a", + "0x100289e1f80a02899040100289a0f00a028b2028102500a040a2028102200a", + "0xa240710280a2400d0400a2d07e0280a254a90280a2400a040a902810288b3", + "0xa0289303411028920e40a0289b0f00a028972dc0a028932d811028922d40a", + "0xba0280a24c1a0440a2480a0400a268b90280a24c170440a2486f0280a254b8", + "0xa12ec11028922000a0289506c110289205c0a028901200a028901cc0a02895", + "0x290280a264300280a264480280a264730280a26405040a902810288800280a", + "0xa02899014bd0340a028b22f0100289e1540a028991640a028991f40a02899", + "0xbe0280a264b10280a24005040b102810288780280a2840504076028102880d", + "0x101d80a040a2028102c40a040a2014c1028100289e3000a028932fc1102892", + "0x102880531cc60280a240710280a264710280a25c0531405310c30400a3080a", + "0xa0289308411028923200a0289b028103200a040a23200a02890014103200a", + "0xa040b702810288b70280a24005040b702810288730280a284650280a254c9", + "0xa040a232c100289e2e00a02890014102e00a040a21bc0a028a10340a028ca", + "0xa26c050280a26c4b0280a284ce0400a334050400a334cc0440a2480a040b8", + "0xa12e40a02890028102e40a040a20400a0289333c110289212c0a0289012c0a", + "0xba02810288ba0280a24005040ba028102880534005040b902810288480280a", + "0xa028953440a0289309811028921f40a028901f40a028972e80a0289b02810", + "0x100280a2400a0401002810288050400a2780d0280a25c05348170280a2c862", + "0x9e1200a028951200a028b2350100289e05c0a02899014d3014100400a040a2", + "0xa248d70280a240d70280a284170280a26c170280a25cd60400a278d50400a", + "0xa028970a411028921640a028901640a0289717c0a028993640a0289336011", + "0xdb0280a24c2b0440a2485d0280a254da0280a24c2d0440a248550280a24055", + "0x9e374100289e16c0a0289915c0a0289516c0a028953700a028930b81102892", + "0xa254e10280a24c300440a248e00400a2787e0280a25cdf0440a248de0400a", + "0x100289e3941102892390100289e38c100289e388100289e0c8110289214c0a", + "0xc002810288ea0400a278620280a264e90400a278e80400a278e70400a278e6", + "0x103240a040a21940a028a13200a02893028103000a040a23000a0289001410", + "0xa264053b0260280a2c84b0280a254053ac0a040c902810288c90280a24005", + "0x923bc0a028903b810028c20400a0289b014ed0980a0289b0980a028970980a", + "0x10288620280a284340440a2484f0280a240510280a254f10280a24cf00440a", + "0xa2014f33c8100289e35c0a02895028103440a040a23440a02890014103440a", + "0xa24cf50440a248f40280a26c0a040f402810288f40280a24005040f402810", + "0x90014103640a040a217c0a028a13d80a0289310c11028922140a0289528c0a", + "0x3c0440a248390440a248420440a2480a040d902810288f70400a278d90280a", + "0xa040a23680a02890014103680a040a21740a028a10d411028923e00a0289b", + "0xa2480a040db02810288db0280a24005040db028102885b0280a2840a040da", + "0x1102892028103700a040a23700a02890014103700a040a215c0a028a10fc11", + "0x430280a264420280a2641f0280a2541f0280a2c0450280a254f90280a24c36", + "0xa040a23840a02890014103840a040a214c0a028a107c11028920a40a02890", + "0xa240300280a240f00280a284340280a254f50280a24c450440a2480a040e1", + "0x11028920680a028900680a028a10c80a028953940a028933e411028923c00a", + "0x1b0280a2401b0280a2842d0280a254df0280a24cf80440a248320280a26448", + "0x103c40a040a21440a028a10141013c0a040a2014fa14c0a0289912c1102892", + "0x4f0280a24c0a0404f028102880a040f102810288fb0400a278f10280a24005", + "0xa028903d80a02890014103d80a040a23600a028933d811028923d00a02893", + "0xa278053f8053f4cf0280a254cf0280a284fc0400a2780a040f6028102880a", + "0xa2015003e00a02893028103e00a040a23e00a02890014103e00a040a23fc10", + "0xa284f40440a248cc0280a26c0a040cc02810288cc0280a24005040cc02810", + "0xa040a213c1102892028103e40a040a23e40a02890014103e40a040a21140a", + "0xf10440a248510440a248bf0280a26c0a040bf02810288bf0280a24005040bf", + "0x920c00a02897028103d40a040a23d40a02890014103d40a040a20d00a028a1", + "0xa2480a040e502810288e50280a24005040e502810288320280a284530440a", + "0xa10a40a028970150115411028922ec0a028902ec0a028992ec0a0289738411", + "0x10288570440a2480a040df02810288df0280a24005040df028102882d0280a", + "0x100289e3300a028933600a0289b028103600a040a23600a02890014103600a", + "0x1030400a278f00280a254590440a248b60280a26cdc0440a248bf0280a24d02", + "0x1102892414100289e16c1102892410100289e2ec0a02893014102ec0a040a2", + "0xb602810288b60280a24005040b6028102880a040bb02810288110280a26cdb", + "0xa028b2368110289217411028920680a028950680a028b22d80a0289302810", + "0x1a0410805c0d041070401002810028050150702805014054181b0280a2541b", + "0xd014cf0290702817028b6014cc029070280d028110140541c0a014100141b", + "0xa41c100840a06805084bf2ec1141c0a098cf3301105c050980a41c0a2d80a", + "0x1070402b028bb0142b0b41041c0a3600a06c050150702805040050a40a424d8", + "0x107028300282101430029070282d028bf0140541c0a01410014df0290a0b80a", + "0x3402907028050980501507028e5028cf014f03941041c0a0c80a330050c80a", + "0x51080a41c0a3c00a3600501507028f5028cf014433d41041c0a0d00a33005", + "0x53e00541c100e4420402d01442029070284202829014390290702843028d8", + "0x1070280537c050f00a41c0a0142e0140541c0a0b80a0ac05015070280504005", + "0xa41c0a014e50143f02907028350f0100c8050d40a41c0a0d40a0c0050d40a", + "0xa41c0a0140a3d4051140a41c0a07c0a0d00507c0a41c0a0fc36040f001436", + "0x4b029070281102843014f802907028bf028b60144802907028bb02811014f9", + "0xa014390140541c0a01410014f612cf8120f90340a3d80a41c0a1140a10805", + "0xf1040851444f04107040f42fcbb04435014f402907028f40283c014f402907", + "0xa0141f0145502907028050d8053840a41c0a0143f0140541c0a0141001453", + "0x516c0a41c0a014480145902907028053e4053700a41c0a014450145702907", + "0xa1440a2d8051880a41c0a13c0a0440536c0a41c0a16c5937057154e105cf8", + "0x107028db0284b014c9029070281102843014650290702805028f5014d102907", + "0x5f3685d03507028c6320c9194d1188173d8053180a41c0a0b80a034053200a", + "0x107028ef0284f0140541c0a01410014c0028713bc0a41c1035c0a3d00535cd9", + "0x501507028ba028f1014b92e81041c0a2f80a144052f80a41c0a0142e01405", + "0xf5014b8029070286f028550146f029070286d028e10146d02907028b902853", + "0xa10c052dc0a41c0a3680a2d8051cc0a41c0a1740a044051c40a41c0a17c0a", + "0x10702805040051d8b52dc731c40d0287602907028b802842014b502907028d9", + "0xae029070285d02811014b1029070285f028f50147802907028c00283401405", + "0xa1f80a41c0a1e00a108051f40a41c0a3640a10c052140a41c0a3680a2d805", + "0xa41c0a0142e0140541c0a0b80a0ac050150702805040051f87d214ae2c40d", + "0xa702907028a9200100c8052a40a41c0a2a40a0c0052a40a41c0a0145701480", + "0x528c0a41c0a2900a0d0052900a41c0a29ca5040f0014a5029070280539405", + "0x430148a0290702853028b60148802907028f102811014980290702805028f5", + "0xa01410014912508a220980340a2440a41c0a28c0a108052500a41c0a0440a", + "0x590140002907028050b805015070282d0282b0140541c0a37c0a3700501507", + "0x53940542c0a41c0a42800040320150a029070290a028300150a0290702805", + "0x5028f50150e029070290d028340150d029070290b430103c0054300a41c0a", + "0xa0440a10c054440a41c0a2fc0a2d8054400a41c0a2ec0a0440543c0a41c0a", + "0x501507028050400544d124451043c0d02913029070290e028420151202907", + "0xb60151602907028bb02811015150290702805028f501514029070282902834", + "0x1150340a4640a41c0a4500a108054600a41c0a0440a10c0545c0a41c0a2fc0a", + "0x54240a41c0a0142e0140541c0a2d80a0ac050150702805040054651845d16", + "0xe50151b029070291a424100c8054680a41c0a4680a0c0054680a41c0a01457", + "0xa3d4054780a41c0a4740a0d0054740a41c0a46d1c040f00151c0290702805", + "0x110284301508029070281b028b601520029070281a028110151f0290702805", + "0x541c0a0145b01522485084811f0340a4880a41c0a4780a108054840a41c0a", + "0x107028050400505c0a48c0d2d81041c100440a36c050440a41c0a0400a2fc05", + "0xbb029070281a0285f0141b02907028b6028da0141a029070280d0285d01405", + "0x107028bf02862014bf029070280535c05015070280504005015240280536405", + "0xa41c0a06c0a14c052ec0a41c0a0840a17c0506c0a41c0a05c0a368050840a", + "0x10702805040050980a494cf02907040bb028d1014cc02907028cc0280d014cc", + "0x50b40a41c0a3600a324050a40a41c0a0142e014d802907028cf0286501405", + "0xc8014e502907028cc0280d01432029070280a028b601430029070280502811", + "0x1141c0a0d0f0394320c00d318050d00a41c0a0b40a0c0053c00a41c0a0a40a", + "0xa3d40a3000501507028050400510c0a498f502907040df028ef014df0b82b", + "0x3c028510140541c0a0141001435029270f00a41c100e40a2f8050e44204107", + "0xa07c0a2e80507c0a41c0a0d80a14c05015070283f028f1014360fc1041c0a", + "0xa0ac0a044051200a41c0a3e40a1b4053e40a41c0a11442040b90144502907", + "0x53d84b3e011028f602907028480286f0144b029070282e028b6014f802907", + "0xa1b40513c0a41c0a3d042040b9014f40290702835028b80140541c0a01410", + "0x510286f01453029070282e028b6014f1029070282b0281101451029070284f", + "0x11014550290702843028710140541c0a01410014e114cf10440a3840a41c0a", + "0x570440a1640a41c0a1540a1bc053700a41c0a0b80a2d80515c0a41c0a0ac0a", + "0xa2e00516c0a41c0a014d70140541c0a0980a37005015070280504005164dc", + "0xa044053680a41c0a1740a1b4051740a41c0a36ccc040b9014db029070285b", + "0xd917c11028d702907028da0286f014d9029070280a028b60145f0290702805", + "0xa41c0a0680a084050680a41c0a05c0a2fc0505c0d041070280d02873014d7", + "0x50840a41c0a014b70140541c0a2ec0a33c052fcbb041070281b028cc0141b", + "0xd80142602907028bf028d80140541c0a3300a33c0533ccc0410702821028cc", + "0x50152801507040d8098100b4050980a41c0a0980a0a4053600a41c0a33c0a", + "0xa41c0a0142e0140541c0a2d80a2d405015070280d0282b0140541c0a01410", + "0x2b029070282d0a4100c8050b40a41c0a0b40a0c0050b40a41c0a0147601429", + "0x50c00a41c0a37c0a1e00537c0a41c0a0ac2e040f00142e029070280539405", + "0x43014f00290702810028f5014e5029070280a028b601432029070280502811", + "0xa01410014f50d0f0394320340a3d40a41c0a0c00a2c4050d00a41c0a0440a", + "0xa2d8050d80a41c0a014850143f0d43c0e44210c1741c0a2d80a2b80501507", + "0x360287e0144b02907028390287d014f802907028110284301448029070280a", + "0xf402907040f9028a9014f91141f04507028f612cf8120b6200053d80a41c0a", + "0x530290702805098053c451041070280d028a70140541c0a014100144f02929", + "0x51640a41c0a0140a044051540a41c0a3840a294053840a41c0a3c40a2fc05", + "0x5704107028db16c59044a4014db0290702853028290145b0290702855028da", + "0xa41c0a1740a260050150702805040053680a4a85d02907040dc028a3014dc", + "0x65029070285702811014d702907028d9028c9014d9029070285f028650145f", + "0xa41c103440a228053446204107028c919410220053240a41c0a35c0a0c005", + "0x107028ef0282b014c03bc1041c0a1440a29c050150702805040053180a4acc8", + "0x52e40a41c0a2e80a294052e80a41c0a3000a2fc052f80a41c0a0149401405", + "0xa40147302907028be028290147102907028b9028da014b8029070286202811", + "0x10702805040052d40a4b0b7029070406f028a30146f1b41041c0a1cc712e011", + "0xb10290702878028c9014780290702876028650147602907028b70289801405", + "0xae041070287e1f410244051f80a41c0a2c40a0c0051f40a41c0a1b40a04405", + "0x1041c0a3d00a428050150702805040052a40a4b48002907040850280001485", + "0xa044052900a41c0a0fc350f0a71084305cf80140541c0a2940a37005294a7", + "0x45028430150a0290702810028f501400029070281f028b60149102907028ae", + "0xa2000a430054340a41c0a3200a42c054300a41c0a2900a12c0542c0a41c0a", + "0x94028f40149422888260a3035070290e4350c42d0a000910690d0150e02907", + "0xa3700544911041070290f0290e0140541c0a01410015100292e43c0a41c10", + "0xa2200a3d4054640a41c0a2600a2d8054600a41c0a28c0a044050150702912", + "0x109465180350f0151b02907029110284b0151a029070288a028430150902907", + "0xa014100151d0292f4700a41c1045c0a3d00545d164551444c0d41c0a46d1a", + "0x120029070280535c05015070291f028dc0151f4781041c0a4700a4380501507", + "0x122029070291302811015210290702908029110150802907029204781044005", + "0x54c80a41c0a4580a10c054c40a41c0a4540a3d4054c00a41c0a4500a2d805", + "0xa4740a1e0050150702805040054cd324c5304880d029330290702921028b1", + "0x10702915028f5015360290702914028b6015350290702913028110153402907", + "0x1394e1374d9350340a4e40a41c0a4d00a2c4054e00a41c0a4580a10c054dc0a", + "0xa2d8054ec0a41c0a28c0a044054e80a41c0a4400a1e005015070280504005", + "0x13a028b10153e029070288a028430153d0290702888028f50153c0290702898", + "0x501507028a9028dc0140541c0a014100153f4f93d4f13b0340a4fc0a41c0a", + "0xa0d40a45405015070283f029140140541c0a3200a44c0501507028f402912", + "0x2e0140541c0a1080a460050150702843029170140541c0a0f00a4580501507", + "0x141500100c8055040a41c0a5040a0c0055040a41c0a01519015400290702805", + "0xa48c0a1e00548c0a41c0a50943040f0015430290702805394055080a41c0a", + "0x10702810028f501546029070281f028b60154502907028ae028110154402907", + "0x14849147519450340a5200a41c0a5100a2c4054900a41c0a1140a10c0551c0a", + "0xa1080a4600501507028c8029130140541c0a3d00a44805015070280504005", + "0x1170140541c0a0f00a458050150702835029150140541c0a0fc0a4500501507", + "0x1f028b60154a029070286d028110154902907028b5028780140541c0a10c0a", + "0xa5240a2c4055340a41c0a1140a10c055300a41c0a0400a3d40552c0a41c0a", + "0x1120140541c0a3180a370050150702805040055394d5314b5280d0294e02907", + "0x1070283f029140140541c0a1080a4600501507028510282b0140541c0a3d00a", + "0x50b8050150702843029170140541c0a0f00a4580501507028350291501405", + "0xa5414f04032015500290702950028300155002907028054640553c0a41c0a", + "0x1070295302878015530290702951548103c0055480a41c0a014e50155102907", + "0xa41c0a0400a3d4055580a41c0a07c0a2d8055540a41c0a1880a044055500a", + "0x55655855d565540d029590290702954028b10155802907028450284301557", + "0x10702842029180140541c0a1440a0ac0501507028f4029120140541c0a01410", + "0xa45c05015070283c029160140541c0a0d40a45405015070283f0291401405", + "0xa07c0a2d80556c0a41c0a15c0a044055680a41c0a3680a1e0050150702843", + "0x1070295a028b10155e0290702845028430155d0290702810028f50155c02907", + "0xa46005015070280d0282b0140541c0a014100155f5795d5715b0340a57c0a", + "0x541c0a0f00a458050150702835029150140541c0a0fc0a450050150702842", + "0xb60156102907028050281101560029070284f028780140541c0a10c0a45c05", + "0xa2c40558c0a41c0a1140a10c0549c0a41c0a0400a3d4055880a41c0a07c0a", + "0xd02907028050e405015070280516c055916349d625840d029640290702960", + "0x10014bb06c105941a05c1041c100340a014110d4050340a41c0a0340a0f005", + "0xbf0291a01417029070281702811014bf2d81041c0a2d80a424050150702805", + "0x107028110291c0140541c0a2d80a46c050150702805040050840a5980541c10", + "0x10702817028110142602907028cf0291e014cf02907028cc04010474053300a", + "0x100142d0a4d80440a0b40a41c0a0980a47c050a40a41c0a0680a2d8053600a", + "0x107028df02908014df02907028100280d0140541c0a0840a480050150702805", + "0x30044100c8050150702805040050c80a59c30029070402e029210142e0ac10", + "0xa05c0a044050d00a41c0a3c0b604130014f00290702805488053940a41c0a", + "0x107028e5028c801435029070282b0280d0143c029070281a028b60143902907", + "0x5108433d41141c0a0d83f0d43c0e40d318050d80a41c0a0d00a0c0050fc0a", + "0x483e41041c0a07c0a300050150702805040051140a5a01f0290704042028ef", + "0xf602907028f5028110144b02907028f80291e014f802907028483e41047405", + "0xa014100144f3d0f60440a13c0a41c0a12c0a47c053d00a41c0a10c0a2d805", + "0xa41c0a10c0a2d8053c40a41c0a3d40a044051440a41c0a1140a4c40501507", + "0xa2d80a46c05015070280504005384533c411028e102907028510291f01453", + "0xa41c0a1542b0411d014550290702832029320140541c0a0440a3c40501507", + "0x5b029070281a028b601459029070281702811014dc02907028570291e01457", + "0x107028b60291b0140541c0a01410014db16c590440a36c0a41c0a3700a47c05", + "0x515c051740a41c0a0142e0140541c0a0400a0ac050150702811028f101405", + "0xa014e50145f02907028da174100c8053680a41c0a3680a0c0053680a41c0a", + "0xa06c0a044051880a41c0a35c0a4c40535c0a41c0a17cd9040f0014d902907", + "0x53246534411028c902907028620291f0146502907028bb028b6014d102907", + "0x50980505c0a41c0a2d80a4d4050340a41c0a0440a4d0052d80a41c0a01533", + "0xa0680a0a40501507028bb02937014bb06c1041c0a0400a4d8050680a41c0a", + "0x169084bf041070400d05c1a0280503539014170290702817029380141a02907", + "0x2902907028d80293a014d8029070280535c05015070280504005098cf33011", + "0x50b80a41c0a0a40a4ec050ac0a41c0a0840a10c050b40a41c0a2fc0a2d805", + "0x107028cc028b6014df02907028260293c0140541c0a01410014055a80a014d9", + "0xa41c0a0b80a4f4050b80a41c0a37c0a4ec050ac0a41c0a33c0a10c050b40a", + "0x10702805040053c00a5ace502907040300293f0143002907028320293e01432", + "0xa41c0a3d40a508053d40a41c0a0d01b041410143402907028e50294001405", + "0x3c02907028430294301439029070282b0284301442029070282d028b601443", + "0xa41c0a3c00a48c05015070281b029370140541c0a014100143c0e4420440a", + "0x1f02907028350294301436029070282b028430143f029070282d028b601435", + "0x541c0a014100140d0296c2d811041070401002805045440141f0d83f0440a", + "0x506c0a41c0a0440a044050680a41c0a05c0a5180505c0a41c0a2d80a51405", + "0x52fc0a41c0a0142e0140541c0a01410014bb06c10028bb029070281a02947", + "0xe5014cc02907028212fc100c8050840a41c0a0840a0c0050840a41c0a01524", + "0xa044053600a41c0a0980a520050980a41c0a330cf040f0014cf0290702805", + "0xb60290702805028110142d0a4100282d02907028d80294701429029070280d", + "0x1041c0a034b6041490140d029070280d028300140d0281041c0a0280a42405", + "0x1b029070281a05c10530050680a41c0a0154b0141702907028055280504410", + "0x533c0a41c0a06c0a53c053300a41c0a0440a538050840a41c0a0400a53405", + "0xa01410014d80296d0980a41c102fc0a544052fcbb04107028cf3302104550", + "0x15201429029070280535c05015070280a0291b0140541c0a0980a3700501507", + "0x10702805040050156e02805364050ac0a41c0a0b40a54c050b40a41c0a0a40a", + "0x537c0a41c0a0b80a554050b80a41c0a0280a5500501507028d8028dc01405", + "0x1002832029070282b029530143002907028bb028110142b02907028df02953", + "0x11029570140541c0a01410014b60296f04410041070400a01410558050c830", + "0x17002805364050680a41c0a0340a5600505c0a41c0a0400a044050340a41c0a", + "0xa044052ec0a41c0a06c0a5640506c0a41c0a014d70140541c0a0141001405", + "0x1a0295a014bf02907028170294d0141a02907028bb029580141702907028b6", + "0xbf0295b014cc084bf2ec1b0681741c0a2d80a2b805084bf0400a0840a41c0a", + "0x1102843014df029070280a028b60142e0290702805028110142633c1041c0a", + "0x2d0a4d82d907028320c0df0b8b6574050c80a41c0a0980a570050c00a41c0a", + "0xa41c0a3940a57c050150702805040053c00a5c4e5029070402b0295e0142b", + "0x1041c0a3d40a588053d40a41c0a10c0a5840510c3404107028340296001434", + "0x3f0d41041c0a0f00a588050f00a41c0a015270140541c0a1080a46c050e442", + "0x1300141f029070283f028c9014360290702839028c90140541c0a0d40a46c05", + "0xf90297201507040450291a0144502907028450283001445029070281f0d810", + "0xf802964014f802907028480296301448029070280535c05015070280504005", + "0xd70140541c0a3e40a4800501507028050400501573028053640512c0a41c0a", + "0x4b029750144b02907028f402964014f402907028f602974014f60290702805", + "0x10014f1029761440a41c1013c0a5440513c0a41c0a13c0a5900513c0a41c0a", + "0x541c0a0840a4540501507028cc029140140541c0a1440a370050150702805", + "0xd029130140541c0a06c0a4600501507028bb029370140541c0a33c0a45805", + "0x50150702817029770140541c0a0680a45c050150702834029770140541c0a", + "0x5304032014e102907028e102830014e102907028055e00514c0a41c0a0142e", + "0xdc02878014dc029070285515c103c00515c0a41c0a014e50145502907028e1", + "0xa0400a3d40536c0a41c0a0a40a2d80516c0a41c0a3600a044051640a41c0a", + "0xda174db16c0d0285f0290702859028b1014da029070282d028430145d02907", + "0x126014d90341041c0a0340a5e40501507028f1028dc0140541c0a014100145f", + "0x549c0501507028620291b014d11881041c0a35c0a5880535c0a41c0a3640a", + "0xa3440a3240501507028c90291b014c83241041c0a1940a588051940a41c0a", + "0xa3000a0c0053000a41c0a3bcc604130014ef02907028c8028c9014c602907", + "0xa41c0a014d70140541c0a01410014be0297a01507040c00291a014c002907", + "0x10014055ec0a014d90146d02907028b902964014b902907028ba02963014ba", + "0xa41c0a1bc0a5d0051bc0a41c0a014d70140541c0a2f80a480050150702805", + "0x7102907028710296401471029070286d029750146d02907028b802964014b8", + "0x50150702873028dc0140541c0a01410014b70297c1cc0a41c101c40a54405", + "0xa2ec0a4dc0501507028cf029160140541c0a0840a4540501507028cc02914", + "0x1170140541c0a0d00a5dc05015070280d029130140541c0a06c0a4600501507", + "0xa41c0a0157d014b502907028050b8050150702817029770140541c0a0680a", + "0xb10290702805394051e00a41c0a1d8b5040320147602907028760283001476", + "0x7d02907028d8028110148502907028ae02878014ae02907028782c4103c005", + "0x52a40a41c0a0b40a10c052000a41c0a0400a3d4051f80a41c0a0a40a2d805", + "0xa2dc0a3700501507028050400529ca92007e1f40d028a70290702885028b1", + "0x107028a502962014a502907028a402961014a405c1041c0a05c0a5800501507", + "0x8a04107028880296201488029070280549c0501507028a30291b0149828c10", + "0x50000a41c0a2500a324052440a41c0a2600a32405015070288a0291b01494", + "0xa5f80541c104280a468054280a41c0a4280a0c0054280a41c0a0009104130", + "0xa590054340a41c0a4300a58c054300a41c0a014d70140541c0a014100150b", + "0x5015070290b029200140541c0a01410014055fc0a014d90150e029070290d", + "0xa5d4054380a41c0a4400a590054400a41c0a43c0a5d00543c0a41c0a014d7", + "0x544c0a601120290704111029510151102907029110296401511029070290e", + "0x10702821029150140541c0a3300a450050150702912028dc0140541c0a01410", + "0xa44c05015070281b029180140541c0a2ec0a4dc0501507028cf0291601405", + "0x541c0a05c0a5dc05015070281a029170140541c0a0d00a5dc05015070280d", + "0x100c8054540a41c0a4540a0c0054540a41c0a015810151402907028050b805", + "0xa1e0054600a41c0a45917040f0015170290702805394054580a41c0a45514", + "0x10028f50151a0290702829028b60150902907028d802811015190290702918", + "0x11b469090340a4740a41c0a4640a2c4054700a41c0a0b40a10c0546c0a41c0a", + "0x547d1e0410702817029820140541c0a44c0a370050150702805040054751c", + "0x161015210290702908029830140541c0a4800a5dc0542120041070283402982", + "0xa588054c40a41c0a4c00a584054c00a41c0a47c0a60c054880a41c0a4840a", + "0xa46c054d5340410702931029620140541c0a4c80a46c054cd320410702922", + "0x1374d8104c0054dc0a41c0a4d40a324054d80a41c0a4cc0a324050150702934", + "0x5040054e40a6100541c104e00a468054e00a41c0a4e00a0c0054e00a41c0a", + "0xa3600a044054ec0a41c0a4e80a614054e91e041070291e029600140541c0a", + "0x1070293b0292501542029070282d02843015410290702829028b60154002907", + "0x18848c0a41c104fc0a61c054fd3e4f53c2d9070294350941500b66180550c0a", + "0x551945041070281a0298a0140541c0a48c0a624050150702805040055100a", + "0x430154d0290702810028f50154c029070293d028b60154b029070293c02811", + "0x10b015500341041c0a0340a5e40553c0a41c0a5180a62c055380a41c0a4f80a", + "0x15e0154a5254849147035070295053d4e5354c52c17630055400a41c0a5400a", + "0x1610155302907029510295f0140541c0a01410015520298d5440a41c105280a", + "0x549c0501507029550291b015565541041c0a5500a588055500a41c0a54c0a", + "0xa5580a3240501507029580291b015595601041c0a55c0a5880555c0a41c0a", + "0xa5700a0c0055700a41c0a56d5a041300155b0290702959028c90155a02907", + "0x1070281b0298f0140541c0a014100155d0298e015070415c0291a0155c02907", + "0x10702948028f5015740290702924028b6015640290702947028110155f57810", + "0x1041c0a4780a580055e00a41c0a57c0a640055dc0a41c0a5240a10c055d40a", + "0x1625856003507029795e1775d57459017644055e40a41c0a5e40a430055e51e", + "0x10702926029940140541c0a014100157d029934980a41c1058c0a6480558d27", + "0x107029830291b0158560c1041c0a6080a588056080a41c0a6040a498056040a", + "0x501507029860291b015876181041c0a4940a588054940a41c0a0152701405", + "0x562c0a41c0a62989041300158a0290702987028c9015890290702985028c9", + "0x110140541c0a014100158c02995015070418b0291a0158b029070298b02830", + "0xa10c056600a41c0a5880a3d40565c0a41c0a5840a2d8056580a41c0a5800a", + "0xa42c0566c0d041070280d029790159a02907029450298b015990290702927", + "0x1a658056700a41c0a6700a430056711e041070291e029600159b029070299b", + "0xa6799d02907041940299701594649916418f035070299c66d9a6659865d96", + "0xf5015a10290702990028b6015a0029070298f028110140541c0a014100159f", + "0xa430056900a41c0a5780a6400568c0a41c0a6480a10c056880a41c0a6440a", + "0x107029a6695a468da2685a006998015a6029070280d0290b015a5029070291e", + "0x19a0140541c0a01410015ae029ad6b00a41c106ac0a664056adaa6a5a869c0d", + "0xdc015286c41041c0a6b00a66c0501507029b0028dc015b06bc1041c0a6740a", + "0x1b302907028cc084cf2edb16bc173e0056c80a41c0a014d70140541c0a4a00a", + "0x1b602907029a702811015b502907029b402911015b402907029b26cc1044005", + "0x56e40a41c0a6a80a10c056e00a41c0a6a40a3d4056dc0a41c0a6a00a2d805", + "0xa6740a670050150702805040056e9b96e1b76d80d029ba02907029b5028b1", + "0x1370140541c0a33c0a458050150702821029150140541c0a3300a4500501507", + "0x1a8028b6015bc02907029a702811015bb02907029ae028780140541c0a2ec0a", + "0xa6ec0a2c4056fc0a41c0a6a80a10c056f80a41c0a6a40a3d4056f40a41c0a", + "0x1150140541c0a3300a45005015070280504005701bf6f9bd6f00d029c002907", + "0x1070280d029130140541c0a2ec0a4dc0501507028cf029160140541c0a0840a", + "0x11015c1029070299f028780140541c0a5780a46005015070291e0297701405", + "0xa10c057100a41c0a6440a3d40570c0a41c0a6400a2d8057080a41c0a63c0a", + "0x1070280504005719c5711c37080d029c602907029c1028b1015c50290702992", + "0xa458050150702821029150140541c0a3300a45005015070298c0292001405", + "0x541c0a0340a44c05015070295e029180140541c0a2ec0a4dc0501507028cf", + "0xa0159d015c702907028050b8050150702945029170140541c0a4780a5dc05", + "0x10702805394057240a41c0a721c704032015c802907029c802830015c802907", + "0x1070296002811015cc02907029cb02878015cb02907029c9728103c0057280a", + "0xa41c0a49c0a10c0573c0a41c0a5880a3d4057380a41c0a5840a2d8057340a", + "0xa45005015070280504005745d073dce7340d029d102907029cc028b1015d0", + "0x541c0a2ec0a4dc0501507028cf029160140541c0a0840a4540501507028cc", + "0x145029170140541c0a4780a5dc05015070280d029130140541c0a5780a46005", + "0x10702961028b6015d3029070296002811015d2029070297d028780140541c0a", + "0xa41c0a7480a2c4057580a41c0a49c0a10c057540a41c0a5880a3d4057500a", + "0xcc029140140541c0a5740a4800501507028050400575dd6755d474c0d029d7", + "0x501507028bb029370140541c0a33c0a458050150702821029150140541c0a", + "0xa06c0a460050150702945029170140541c0a4780a5dc05015070280d02913", + "0x57640a41c0a7640a0c0057640a41c0a0159d015d802907028050b80501507", + "0x57700a41c0a769db040f0015db0290702805394057680a41c0a765d804032", + "0xf5015df0290702924028b6015de029070294702811015dd02907029dc02878", + "0x1de0340a7880a41c0a7740a2c4057840a41c0a5240a10c057800a41c0a5200a", + "0x50150702821029150140541c0a3300a45005015070280504005789e1781df", + "0xa4780a5dc05015070280d029130140541c0a2ec0a4dc0501507028cf02916", + "0x578c0a41c0a5480a1e005015070281b029180140541c0a5140a45c0501507", + "0x43015e60290702948028f5015e50290702924028b6015e4029070294702811", + "0xa01410015e879de6795e40340a7a00a41c0a78c0a2c40579c0a41c0a5240a", + "0x1370140541c0a33c0a458050150702821029150140541c0a3300a4500501507", + "0x1070291e029770140541c0a0340a44c05015070281b029180140541c0a2ec0a", + "0x57a80a41c0a4f00a044057a40a41c0a5100a1e005015070281a0291701405", + "0xb1015ed029070293e02843015ec0290702810028f5015eb029070293d028b6", + "0x10702939029200140541c0a01410015ee7b5ec7adea0340a7b80a41c0a7a40a", + "0xa4dc0501507028cf029160140541c0a0840a4540501507028cc0291401405", + "0x541c0a4780a5dc05015070280d029130140541c0a06c0a4600501507028bb", + "0x1f002830015f0029070280567c057bc0a41c0a0142e0140541c0a0680a45c05", + "0x1f17c8103c0057c80a41c0a014e5015f102907029f07bc100c8057c00a41c0a", + "0xa0a40a2d8057d40a41c0a3600a044057d00a41c0a7cc0a1e0057cc0a41c0a", + "0x107029f4028b1015f8029070282d02843015f70290702810028f5015f602907", + "0xa4540501507028cc029140140541c0a01410015f97e1f77d9f50340a7e40a", + "0x541c0a06c0a4600501507028bb029370140541c0a33c0a458050150702821", + "0xf0028780140541c0a0680a45c050150702817029770140541c0a0340a44c05", + "0xa0400a3d4057f00a41c0a0a40a2d8057ec0a41c0a3600a044057e80a41c0a", + "0x1fe7f5fc7ec0d029ff02907029fa028b1015fe029070282d02843015fd02907", + "0x1141c0a2ec1b041a7014bb0290702811028430141b029070280a028b6015ff", + "0xa2d80a6a0050150702805040050840a800bf029070401a0295e0141a05c0d", + "0x1070280d028b6014df0290702805028110142602907028056a40533ccc04107", + "0xa41c0a33c0a12c053940a41c0a05c0a10c050c80a41c0a0400a3d4050c00a", + "0x2b0b4293600d41c0a0d0f0394320c0df05daa01434029070282602830014f0", + "0xa41c0a3d40a6800501507028050400510c0a804f5029070402e029ab0142e", + "0x50d40a41c0a015270140541c0a0e40a46c050f03904107028420296201442", + "0xc90141f029070283c028c90140541c0a0fc0a46c050d83f041070283502962", + "0x11a014f902907028f902830014f9029070284507c104c0051140a41c0a0d80a", + "0x56a4053e00a41c0a2fc0a57c050150702805040051200a8080541c103e40a", + "0xa0b40a3d4053840a41c0a0a40a2d80514c0a41c0a3600a0440512c0a41c0a", + "0x1070284b02830014dc02907028cc0284b01457029070282b028430145502907", + "0x5538453069a10145b029070285b0290c0145b3e01041c0a3e00a580051640a", + "0x100145d02a0336c0a41c103c40a3d0053c45113cf43d80d41c0a16c5937057", + "0x1070280568805015070285f028dc0145f3681041c0a36c0a438050150702805", + "0xa41c0a13c0a3d4053180a41c0a3d00a2d8053200a41c0a3d80a044053640a", + "0xba02907028d902830014be02907028da0284b014c0029070285102843014ef", + "0xbe300ef318c8069a1014b902907028b90290c014b93e01041c0a3e00a58005", + "0xa014100146f02a041b40a41c103240a3d005324653446235c0d41c0a2e4ba", + "0x73029070280568c050150702871028dc014712e01041c0a1b40a4380501507", + "0xf50147d0290702862028b60148502907028d702811014b7029070280569005", + "0xa0c0052a40a41c0a2e00a12c052000a41c0a1940a10c051f80a41c0a3440a", + "0x107028a529ca92007e1f485069a5014a502907028b702830014a70290702873", + "0x10e0140541c0a01410014a302a052900a41c102b80a3d0052b8b11e0762d40d", + "0xa015a90148a0290702805690050150702888028dc014882601041c0a2900a", + "0x10702878028f50150e0290702876028b60150d02907028b5028110149402907", + "0xa41c0a2280a0c0054440a41c0a2600a12c054400a41c0a2c40a10c0543c0a", + "0x10a000910350702913449114410f4390d069a50151302907028940283001512", + "0x107029140290e0140541c0a014100151502a064500a41c104300a3d0054310b", + "0x54640a41c0a015a90151802907028056a4050150702917028dc0151745810", + "0x4301520029070290a028f50151f0290702800028b60151e029070289102811", + "0xa0c0054880a41c0a4600a0c0054840a41c0a4580a12c054200a41c0a42c0a", + "0xf40151d4711b469090350702930489214212047d1e069a5015300290702919", + "0x54d13304107029310290e0140541c0a014100153202a074c40a41c104740a", + "0xa4240a044054d80a41c0a015a4015350290702805698050150702934028dc", + "0x1070291c028430153e029070291b028f50153d029070291a028b60153c02907", + "0xa41c0a4d80a0c0055040a41c0a4d40a0c0055000a41c0a4cc0a12c054fc0a", + "0x1070413b028f40153b4e9394e1370350702942505404fd3e4f53c069a501542", + "0xa5140a370055154404107029430290e0140541c0a014100152302a0850c0a", + "0x55300a41c0a4dc0a0440551c0a41c0a015a40154602907028056b00501507", + "0x4b0154f029070293a028430154e0290702939028f50154d0290702938028b6", + "0x1a694055480a41c0a51c0a0c0055440a41c0a5180a0c0055400a41c0a5100a", + "0xa82553029070414b028f40154b529495212403507029525455053d4e5354c", + "0x1a20140541c0a5580a370055595504107029530290e0140541c0a0141001554", + "0xa5200a2d8055780a41c0a4900a044055600a41c0a015a9015570290702805", + "0x107029550284b01561029070294a02843015600290702949028f50155f02907", + "0x1615815f5781a6940558c0a41c0a5600a0c00549c0a41c0a55c0a0c0055880a", + "0x5040055d00a82964029070415d028f40155d5715b56959035070296349d62", + "0xa41c0a015ae0140541c0a5dc0a370055dd7504107029640290e0140541c0a", + "0x125029070295b028f501585029070295a028b60158302907029590281101578", + "0x56240a41c0a5e00a0c00561c0a41c0a5d40a12c056180a41c0a5700a10c05", + "0x1826057d49979035070298a625876192561583069a10158a02907028f80290c", + "0x18f041070298b0290e0140541c0a014100158c02a0b62c0a41c106080a3d005", + "0xa044056480a41c0a015ae0159102907028056b8050150702990028dc01590", + "0x181028430159c029070297d028f50159b0290702926028b60159a0290702979", + "0xa6480a0c00569c0a41c0a6440a0c00567c0a41c0a63c0a12c056740a41c0a", + "0x199028f401599661976599403507029a869d9f6759c66d9a069a5015a802907", + "0xa37005681ab04107029a90290e0140541c0a01410015aa02a0c6a40a41c10", + "0xa41c0a6500a044056880a41c0a015ae015a102907028056bc0501507029a0", + "0x1b1029070299802843015b00290702997028f5015af0290702996028b6015ae", + "0x56cc0a41c0a6880a0c0056c80a41c0a6840a0c0054a00a41c0a6ac0a12c05", + "0x1b402907041ac028f4015ac699a5691a303507029b36c9286c5b06bdae069a5", + "0x541c0a6dc0a370056ddb604107029b40290e0140541c0a01410015b502a0d", + "0x56e80a41c0a6e40a444056e40a41c0a6e1b604110015b8029070280535c05", + "0x43015bd02907029a5028f5015bc02907029a4028b6015bb02907029a302811", + "0xa01410015bf6f9bd6f1bb0340a6fc0a41c0a6e80a2c4056f80a41c0a6980a", + "0xa41c0a6900a2d8057040a41c0a68c0a044057000a41c0a6d40a1e00501507", + "0x1c502907029c0028b1015c402907029a602843015c302907029a5028f5015c2", + "0x19402811015c602907029aa028780140541c0a01410015c5711c3709c10340a", + "0xa6600a10c057240a41c0a65c0a3d4057200a41c0a6580a2d80571c0a41c0a", + "0x501507028050400572dca725c871c0d029cb02907029c6028b1015ca02907", + "0xf5015ce0290702926028b6015cd029070297902811015cc029070298c02878", + "0x1cd0340a7440a41c0a7300a2c4057400a41c0a6040a10c0573c0a41c0a5f40a", + "0x1d20290702974028780140541c0a3e00a5dc05015070280504005745d073dce", + "0x57540a41c0a56c0a3d4057500a41c0a5680a2d80574c0a41c0a5640a04405", + "0x50400575dd6755d474c0d029d702907029d2028b1015d6029070295c02843", + "0xa41c0a4900a044057600a41c0a5500a1e00501507028f8029770140541c0a", + "0x1dc029070294a02843015db0290702949028f5015da0290702948028b6015d9", + "0xf8029770140541c0a01410015dd771db769d90340a7740a41c0a7600a2c405", + "0x10702938028b6015df029070293702811015de0290702923028780140541c0a", + "0xa41c0a7780a2c4057880a41c0a4e80a10c057840a41c0a4e40a3d4057800a", + "0x132028780140541c0a3e00a5dc0501507028050400578de2785e077c0d029e3", + "0xa46c0a3d4057980a41c0a4680a2d8057940a41c0a4240a044057900a41c0a", + "0x1e879de67940d029e902907029e4028b1015e8029070291c02843015e702907", + "0xa044057a80a41c0a4540a1e00501507028f8029770140541c0a01410015e9", + "0x10b02843015ed029070290a028f5015ec0290702800028b6015eb0290702891", + "0x541c0a01410015ef7b9ed7b1eb0340a7bc0a41c0a7a80a2c4057b80a41c0a", + "0xb6015f102907028b502811015f002907028a3028780140541c0a3e00a5dc05", + "0xa2c4057d00a41c0a2c40a10c057cc0a41c0a1e00a3d4057c80a41c0a1d80a", + "0x541c0a3e00a5dc050150702805040057d5f47cdf27c40d029f502907029f0", + "0x57e00a41c0a1880a2d8057dc0a41c0a35c0a044057d80a41c0a1bc0a1e005", + "0xd029fb02907029f6028b1015fa029070286502843015f902907028d1028f5", + "0xa41c0a1740a1e00501507028f8029770140541c0a01410015fb7e9f97e1f7", + "0x1ff029070284f028f5015fe02907028f4028b6015fd02907028f602811015fc", + "0x100160f839ff7f9fd0340a83c0a41c0a7f00a2c4058380a41c0a1440a10c05", + "0x541c0a2fc0a6c00501507028cc028b50140541c0a1200a480050150702805", + "0x100c8058400a41c0a8400a0c0058400a41c0a015b10152f02907028050b805", + "0xa1e00584c0a41c0a84612040f0016120290702805394058440a41c0a8412f", + "0x2d028f5016160290702829028b60161502907028d802811016140290702a13", + "0x12e85a150340a8600a41c0a8500a2c40585c0a41c0a0ac0a10c054b80a41c0a", + "0xa1e00501507028bf029b00140541c0a3300a2d40501507028050400586217", + "0x2d028f50161b0290702829028b60161a02907028d802811016190290702843", + "0x21c86e1a0340a4b40a41c0a8640a2c4058740a41c0a0ac0a10c058700a41c0a", + "0x110161e0290702821028780140541c0a2d80a2d4050150702805040054b61d", + "0xa10c058840a41c0a0400a3d4058800a41c0a0340a2d80587c0a41c0a0140a", + "0xa0140a2fc0588e228862087c0d02a230290702a1e028b1016220290702817", + "0x110285d0140541c0a01410014b602a2404410041070400a028db0140a02907", + "0x22502805364050680a41c0a0340a17c0505c0a41c0a0400a368050340a41c0a", + "0xa368052ec0a41c0a06c0a1880506c0a41c0a014d70140541c0a0141001405", + "0xbf0280d014bf0290702817028530141a02907028bb0285f0141702907028b6", + "0x21028650140541c0a01410014cc02a260840a41c100680a344052fc0a41c0a", + "0xa2fc0a034053600a41c0a0980a4a0050980a41c0a33c0a3240533c0a41c0a", + "0xcc028dc0140541c0a014100142d0a4100282d02907028d8029b20142902907", + "0xa41c0a2fc0a034050b80a41c0a0ac0a6cc050ac0a41c0a014d70140541c0a", + "0x50400a89c0a0290704005029b40143037c1002830029070282e029b2014df", + "0xb6029b7014b60290702811029b601411029070280a029b50140541c0a01410", + "0x1005c103c00505c0a41c0a014e50140541c0a014100140d0280a0340a41c0a", + "0x1b9014bb0280a2ec0a41c0a06c0a6dc0506c0a41c0a0680a6e0050680a41c0a", + "0xa41c0a0154a0140541c0a0141001417034b60462804410041070400a01410", + "0xa41c0a06c0a53c052ec0a41c0a0400a0440506c0a41c0a068110414c0141a", + "0xa044050840a41c0a034170414c0140541c0a01410014058a40a014d9014bf", + "0xbf0294e014cc02907028bb0294d014bf02907028210294f014bb02907028b6", + "0xd0410702810029ba014b60441041c0a0280a6e80533ccc0400a33c0a41c0a", + "0x1b06805045bc0141b05c1041c0a05c0a6ec05068b604107028b6029bb01417", + "0xa6f80501507028bf029bd0140541c0a01410014cc084108a8bf2ec1041c10", + "0xa6f4050a4d80410702817029be0140541c0a33c0a6f405098cf04107028b6", + "0xa2ec0a044050ac0a41c0a0a40a6fc050b40a41c0a0980a6fc0501507028d8", + "0x1070280d029bd0140541c0a01410014058ac0541c100ac2d041c0014bb02907", + "0x11014df029070282e029740142e029070280535c050150702811029bd01405", + "0x10702805040050162c02805364050c80a41c0a37c0a590050c00a41c0a2ec0a", + "0xa6f4050150702805040053d4340422d3c0e5041070400d044bb045bc01405", + "0x107028e5028110144202907028430297401443029070280535c0501507028f0", + "0xa6f4050150702805040050162e02805364050f00a41c0a1080a590050e40a", + "0x10702834028110143f02907028350296301435029070280535c0501507028f5", + "0xa41c0a0f00a704050c00a41c0a0e40a534050f00a41c0a0fc0a590050e40a", + "0x10014058bc0a014d90141f0290702832029c10143602907028300294d01432", + "0x541c0a0340a6f40501507028b6029bd0140541c0a3300a6f4050150702805", + "0x450296301445029070280535c050150702817029bd0140541c0a0440a6f405", + "0xa0d80a5340507c0a41c0a3e40a590050d80a41c0a0840a044053e40a41c0a", + "0x570805015070281102916014f812010028f8029070281f029c10144802907", + "0x1070280a028b6014bf0290702805028110140d0290702805098052d80a41c0a", + "0xa41c0a2d80a70c0533c0a41c0a0340a0a4053300a41c0a0400a10c050840a", + "0x2303600a41c102ec0a714052ec1b068172d9070282633ccc084bf035c401426", + "0x50b80a41c0a0b40a71c050b40a41c0a3600a718050150702805040050a40a", + "0x50150702805040050c00a8c4df029070402b0295e0142b029070282e029c8", + "0x11014f002907028e5029ca014e50290702832029c90143202907028df0295f", + "0xa72c0510c0a41c0a06c0a10c053d40a41c0a0680a2d8050d00a41c0a05c0a", + "0x390290702830029cc0140541c0a014100144210cf50d0b60284202907028f0", + "0x50fc0a41c0a06c0a10c050d40a41c0a0680a2d8050f00a41c0a05c0a04405", + "0x10702829029cc0140541c0a01410014360fc350f0b6028360290702839029cb", + "0xa41c0a06c0a10c053e40a41c0a0680a2d8051140a41c0a05c0a0440507c0a", + "0xa734052d80a41c0a0142e014f8120f9114b6028f8029070281f029cb01448", + "0x1a028f10141b0681041c0a2d80a1440505c0a41c0a015ce0140d0290702811", + "0x107028bb0280d01417029070281702830014bb029070281b028530140541c0a", + "0xa01410014d8098cf04632330212fc1141c102ec17034100280d73c052ec0a", + "0xa41c0a0840a10c050b40a41c0a2fc0a2d8050a40a41c0a3300a7400501507", + "0xd8029d20140541c0a01410014058cc0a014d90142e0290702829029d10142b", + "0xa37c0a744050ac0a41c0a0980a10c050b40a41c0a33c0a2d80537c0a41c0a", + "0x10704030029d5014300290702832029d401432029070282e029d30142e02907", + "0x10702805028110143402907028e5029d60140541c0a01410014f002a343940a", + "0x430282b0144210cf5045070283c0e41075c050f00a41c0a0d00a034050e40a", + "0xa0d40a764050150702805040050fc0a8d4350290704042029d80140541c0a", + "0x1070282d028b60144502907028f5028110141f0290702836029da0143602907", + "0x53e0483e4452d80a3e00a41c0a07c0a76c051200a41c0a0ac0a10c053e40a", + "0xa41c0a015dc0144b02907028050b805015070283f028dc0140541c0a01410", + "0x4f0290702805394053d00a41c0a3d84b04032014f602907028f602830014f6", + "0x5302907028f502811014f10290702851029dd0145102907028f413c103c005", + "0xa15c0a41c0a3c40a76c051540a41c0a0ac0a10c053840a41c0a0b40a2d805", + "0x1070280502811014dc02907028f0029dd0140541c0a0141001457154e114cb6", + "0xa41c0a3700a76c0536c0a41c0a0ac0a10c0516c0a41c0a0b40a2d8051640a", + "0x18b014bf0290702810028f5014bb0290702805028110145d36c5b164b60285d", + "0x1704507028cc084bf2ecb6778053300a41c0a0340a42c050840a41c0a2d80a", + "0x2e029070280a028b60142b029070281702811014cf02907028050980506c1a", + "0x50c80a41c0a06c0a70c050c00a41c0a33c0a0a40537c0a41c0a0440a10c05", + "0xf002a363940a41c100b40a714050b429360262d907028320c0df0b82b035c4", + "0xa7200510c0a41c0a0d00a71c050d00a41c0a3940a71805015070280504005", + "0xa57c050150702805040050e40a8dc4202907040f50295e014f50290702843", + "0x26028110143f0290702835029ca01435029070283c029c90143c0290702842", + "0xa0a40a10c051140a41c0a0680a3d40507c0a41c0a3600a2d8050d80a41c0a", + "0x5015070280504005120f91141f0d80d02848029070283f029cb014f902907", + "0xf5014f602907028d8028b60144b029070282602811014f80290702839029cc", + "0x4b0340a1440a41c0a3e00a72c0513c0a41c0a0a40a10c053d00a41c0a0680a", + "0xa41c0a0980a044053c40a41c0a3c00a730050150702805040051444f3d0f6", + "0x5702907028290284301455029070281a028f5014e102907028d8028b601453", + "0xf5014bb029070280502811014dc15c55384530340a3700a41c0a3c40a72c05", + "0xb677c053300a41c0a0340a430050840a41c0a2d80a640052fc0a41c0a0400a", + "0x2d029070280a028b6014cf02907028050980506c1a05c1141c0a330212fcbb", + "0x537c0a41c0a06c0a70c050b80a41c0a33c0a0a4050ac0a41c0a0440a10c05", + "0xa0c80a788050c80a41c0a0a40a784050a4d80981141c0a37c2e0ac2d2d9e0", + "0xa3940a650050150702805040053c00a8e0e50290704030029920143002907", + "0x10702817028110144302907028f5029e4014f50290702834029e30143402907", + "0xa41c0a3600a10c050f00a41c0a0680a3d4050e40a41c0a0980a2d8051080a", + "0xa798050150702805040050fc350f0391080d0283f0290702843029e501435", + "0x1a028f5014450290702826028b60141f0290702817028110143602907028f0", + "0xf91141f0340a3e00a41c0a0d80a794051200a41c0a3600a10c053e40a41c0a", + "0x10702810028f5014cc0290702805028110141b0681041c0a2d80a628053e048", + "0xd8098cf330b6778053600a41c0a0340a42c050980a41c0a06c0a62c0533c0a", + "0x5098050b40a41c0a0840a4d4050a40a41c0a05c0a58405084bf2ec1141c0a", + "0xdf0b81041c100a42d0ac110280d4e4050ac0a41c0a0ac0a0a4050ac0a41c0a", + "0xa41c0a3c00a4e8053c00a41c0a014d70140541c0a01410014e50c83004639", + "0x4202907028340293b0144302907028df02843014f5029070282e028b601434", + "0xa0c00a2d8050e40a41c0a3940a4f0050150702805040050163a0280536405", + "0x107028420293d0144202907028390293b01443029070283202843014f502907", + "0xa014100143602a3b0fc0a41c100f00a4fc050f00a41c0a0d40a4f8050d40a", + "0x10702845029e801445029070281f0681079c0507c0a41c0a0fc0a5000501507", + "0xa41c0a2fc0a3d4053e00a41c0a3d40a2d8051200a41c0a2ec0a044053e40a", + "0x53d0f612cf81200d028f402907028f9029e9014f60290702843028430144b", + "0xa2ec0a0440513c0a41c0a0d80a7a805015070281a029170140541c0a01410", + "0x10702843028430145302907028bf028f5014f102907028f5028b60145102907", + "0x1a04107028b60298f01455384533c4510340a1540a41c0a13c0a7a4053840a", + "0x26029070281b02990014cf0290702810028f5014cc0290702805028110141b", + "0xa01426014212fcbb04507028d8098cf330b677c053600a41c0a0340a43005", + "0x107028290282901430029070281102843014df029070280a028b60142902907", + "0xe50c83037c0d7ac053c00a41c0a05c0a42c053940a41c0a0840a70c050c80a", + "0x13f0143402907028f50293e014f5029070282e0293d0142e0ac2d04507028f0", + "0x1ec014390290702843029400140541c0a014100144202a3c10c0a41c100d00a", + "0xb60143f02907028bb0281101435029070283c029ed0143c029070283906810", + "0xa7b8051140a41c0a0ac0a10c0507c0a41c0a2fc0a3d4050d80a41c0a0b40a", + "0x541c0a0680a460050150702805040053e44507c360fc0d028f90290702835", + "0x512c0a41c0a0b40a2d8053e00a41c0a2ec0a044051200a41c0a1080a7bc05", + "0xd0284f0290702848029ee014f4029070282b02843014f602907028bf028f5", + "0xd041f001417029070280a028430140d0290702805028b60144f3d0f612cf8", + "0x501507028050400506c0a8f41a02907040b6029f1014b6044100450702817", + "0xcf3302103507028bf029f4014bf02907028bb029f3014bb029070281a029f2", + "0x11b0140541c0a0980a5dc0501507028cc029f60140541c0a0840a7d40536026", + "0x10028b60142d0290702829029ca0142902907028cf029c90140541c0a3600a", + "0xdf0b82b0440a37c0a41c0a0b40a72c050b80a41c0a0440a10c050ac0a41c0a", + "0xa10c050c80a41c0a0400a2d8050c00a41c0a06c0a73005015070280504005", + "0x1741c0a2d80a2b8053c0e50c811028f00290702830029cb014e50290702811", + "0xa06c0a4dc05015070281a029180140541c0a05c0a45c05084bf2ec1b06817", + "0x50b40a41c0a0140a044050150702821029140140541c0a2ec0a4580501507", + "0x1f7014df0290702811028430142e0290702810028f50142b029070280a028b6", + "0x107028320c0df0b82b0b4177e0050c80a41c0a0340a0c0050c00a41c0a2fc0a", + "0x1a00140541c0a01410014f002a3e3940a41c100a40a6ac050a4d8098cf3300d", + "0xa0440510c0a41c0a3d40a7e8053d40a41c0a0d00a7e4050d00a41c0a3940a", + "0xd8028430143c0290702826028f50143902907028cf028b60144202907028cc", + "0x541c0a014100143f0d43c0e4420340a0fc0a41c0a10c0a7ec050d40a41c0a", + "0x51140a41c0a33c0a2d80507c0a41c0a3300a044050d80a41c0a3c00a7f005", + "0xd028f80290702836029fb0144802907028d802843014f90290702826028f5", + "0xa2d8050980a41c0a0140a0440506c1a04107028b6029a8014f8120f91141f", + "0x1b0284b0142d029070281102843014290290702810028f5014d8029070280a", + "0x17029600142e029070282e028300142e0341041c0a0340a424050ac0a41c0a", + "0x107028df0b82b0b42936026069fd014df02907028df0290c014df05c1041c0a", + "0x1ff0140541c0a014100143202a3f0c00a41c1033c0a7f80533ccc084bf2ec0d", + "0xdc0140541c0a014100143402a403c00a41c103940a544053940a41c0a0c00a", + "0x1041c0a0340a424050d43c0e44210cf505d070281a028ae0140541c0a3c00a", + "0x1070280535c0507c0a41c0a0d83f0420e0143605c1041c0a05c0a580050fc0d", + "0xa41c0a2fc0a2d80513c0a41c0a2ec0a044053e40a41c0a1140a58c051140a", + "0xe1029070283502a0f0145302907028cc02843014f10290702821028f501451", + "0x55384533c45113c1a8400515c0a41c0a3e40a590051540a41c0a07c0a4bc05", + "0x10702805040051640a904dc02907040f402a11014f43d84b3e0480350702857", + "0x1141c0a17cda041a70145f02907028f602843014da02907028f8028b601405", + "0xa3700a8480501507028050400535c0a908d9029070405d0295e0145d36c5b", + "0x6505c0d046130146502907028d90295f0140541c0a3440a370053446204107", + "0xbe029070285b028b6014c802907028620f039108433d4173e0053240a41c0a", + "0x51b40a41c0a3240a850052e40a41c0a3200a12c052e80a41c0a36c0a10c05", + "0x10014b802a431bc0a41c103000a3d005300ef3181141c0a1b4b92e8be2da15", + "0xa1200a044050150702873028dc014731c41041c0a1bc0a438050150702805", + "0x107028ef0284301476029070284b028f5014b502907028c6028b6014b702907", + "0xa1e0050150702805040050164402805364052c40a41c0a1c40a12c051e00a", + "0x4b028f50147d02907028c6028b601485029070284802811014ae02907028b8", + "0x7e1f4850340a2a40a41c0a2b80a2c4052000a41c0a3bc0a10c051f80a41c0a", + "0xa4540501507028dc02a160140541c0a3d40a45c050150702805040052a480", + "0x541c0a10c0a460050150702842029370140541c0a0e40a45805015070283c", + "0xa0440529c0a41c0a35c0a1e0050150702817029770140541c0a0340a46c05", + "0xdb02843014a3029070284b028f5014a4029070285b028b6014a50290702848", + "0x541c0a0141001488260a3290a50340a2200a41c0a29c0a2c4052600a41c0a", + "0x3c029150140541c0a05c0a5dc05015070280d0291b0140541c0a3d40a45c05", + "0x50150702843029180140541c0a1080a4dc050150702839029160140541c0a", + "0xf50149102907028f8028b6014940290702848028110148a029070285902878", + "0x940340a42c0a41c0a2280a2c4054280a41c0a3d80a10c050000a41c0a12c0a", + "0x5015070280d0291b0140541c0a0d00a3700501507028050400542d0a00091", + "0xa3d4052d40a41c0a2fc0a2d8052dc0a41c0a2ec0a04405015070281702977", + "0xa014d7014b1029070281a0284b0147802907028cc02843014760290702821", + "0xa2dc0a044054380a41c0a4340a444054340a41c0a430b1041100150c02907", + "0x1070287802843015110290702876028f50151002907028b5028b60150f02907", + "0x11b0140541c0a0141001513449114410f0340a44c0a41c0a4380a2c4054480a", + "0x10702832028780140541c0a0680a2d4050150702817029770140541c0a0340a", + "0xa41c0a0840a3d4054580a41c0a2fc0a2d8054540a41c0a2ec0a044054500a", + "0x54651845d164540d029190290702914028b10151802907028cc0284301517", + "0x53600a41c0a0280a2d8050980a41c0a0140a0440506c1a04107028b6029a8", + "0x1090142b029070281b0284b0142d029070281102843014290290702810028f5", + "0xa0b82b0b4293602605daa0142e029070282e028300142e0341041c0a0340a", + "0x50150702805040050c00a914df02907040cf029ab014cf330212fcbb03507", + "0xa2fc0a2d8050d80a41c0a2ec0a0440510cf50d0f03943205d070281a028ae", + "0x107028f5029f7014f902907028cc02843014450290702821028f50141f02907", + "0x1070281702909014f802907028f802830014f80341041c0a0340a424051200a", + "0x42035070284b3e0483e44507c360692e0144b029070284b028300144b05c10", + "0xdf029a00140541c0a01410014f402a463d80a41c100fc0a85c050fc350f039", + "0x4f034118640501507028f1028dc014f11441041c0a3d80a8600513c0a41c0a", + "0xa41c0a0e40a2d8053840a41c0a10c510d0f03943205cf8014530290702817", + "0x5d029070285302a1a014db02907028e10284b0145b02907028350284301459", + "0x517c0a91cda02907040dc028f4014dc15c55045070285d36c5b164b686c05", + "0xa014d70140541c0a35c0a3700535cd904107028da0290e0140541c0a01410", + "0xa1080a044051940a41c0a3440a444053440a41c0a188d9041100146202907", + "0x1070285702843014c6029070283c028f5014c80290702855028b6014c902907", + "0x780140541c0a01410014c03bcc6320c90340a3000a41c0a1940a2c4053bc0a", + "0xa3d4052e40a41c0a1540a2d8052e80a41c0a1080a044052f80a41c0a17c0a", + "0xb92e80d028b802907028be028b10146f0290702857028430146d029070283c", + "0x11b0140541c0a10c0a450050150702832029170140541c0a01410014b81bc6d", + "0x107028e5029180140541c0a3c00a4dc050150702834029160140541c0a0340a", + "0x110147102907028f4028780140541c0a37c0a8700501507028170291b01405", + "0xa10c052d40a41c0a0f00a3d4052dc0a41c0a0e40a2d8051cc0a41c0a1080a", + "0x10702805040051e0762d4b71cc0d028780290702871028b1014760290702835", + "0xa1e005015070280d0291b0140541c0a0680a2d40501507028170291b01405", + "0x21028f50148502907028bf028b6014ae02907028bb02811014b10290702830", + "0x7d214ae0340a2000a41c0a2c40a2c4051f80a41c0a3300a10c051f40a41c0a", + "0x119201b06817045070400d04410028b6874050340a41c0a2d80a4d4052007e", + "0xd8029070281b02830014260290702805028110140541c0a01410014212fcbb", + "0xa41c0a0680a10c0505c0a41c0a05c0a2d80533ccc04107028d80981024405", + "0xa41c0a0a40a4b4050150702805040050b40a9242902907040cf028000141a", + "0x3002907028cc02811014df029070282e02a1f0142e029070282b02a1e0142b", + "0xa3c00a41c0a37c0a880053940a41c0a0680a10c050c80a41c0a05c0a2d805", + "0x3402907028050b805015070282d028dc0140541c0a01410014f0394320c0b6", + "0x510c0a41c0a3d43404032014f502907028f502830014f5029070280588405", + "0x110143c029070283902a22014390290702843108103c0051080a41c0a014e5", + "0xa880050d80a41c0a0680a10c050fc0a41c0a05c0a2d8050d40a41c0a3300a", + "0x45029070282102a230140541c0a014100141f0d83f0d4b60281f029070283c", + "0x53e00a41c0a0140a044051200a41c0a3e40a87c053e40a41c0a1140a87805", + "0xb6028f4029070284802a20014f602907028bf028430144b02907028bb028b6", + "0xa029c90140541c0a014100141002a4b0280a41c100140a928053d0f612cf8", + "0x100140d0280a0340a41c0a2d80a72c052d80a41c0a0440a728050440a41c0a", + "0xa0680a730050680a41c0a04017040f0014170290702805394050150702805", + "0x1002a4d0280a41c100140a930052ec0a028bb029070281b029cb0141b02907", + "0xa108052d80a41c0a0440a154050440a41c0a0280a38405015070280504005", + "0x17040f0014170290702805394050150702805040050340a0280d02907028b6", + "0x52ec0a028bb029070281b028420141b029070281a028340141a0290702810", + "0x541c0a014100140d02a4e2d8110410704010028db01410029070280a028bf", + "0x506c0a41c0a05c0a17c050680a41c0a0440a3680505c0a41c0a2d80a17405", + "0xa41c0a2ec0a188052ec0a41c0a014d70140541c0a014100140593c0a014d9", + "0x21029070281a028530141b02907028bf0285f0141a029070280d028da014bf", + "0x541c0a01410014cf02a503300a41c1006c0a344050840a41c0a0840a03405", + "0x50ac0a41c0a0140a044053600a41c0a0980a324050980a41c0a3300a19405", + "0xdf029070402d02a520142d0a41041c0a0b82b042510142e02907028d802830", + "0xe50410704032028db014320290702821028bf0140541c0a014100143002a53", + "0xa41c0a3940a368053d40a41c0a3c00a174050150702805040050d00a950f0", + "0xa014d70140541c0a01410014059540a014d90144202907028f50285f01443", + "0x1070283c0285f014430290702834028da0143c0290702839028620143902907", + "0xa41c101080a344050d40a41c0a0d40a034050d40a41c0a10c0a14c051080a", + "0xa41c0a07c0a3240507c0a41c0a0fc0a194050150702805040050d80a9583f", + "0x1041c0a12cf8042510144b029070284502830014f802907028290281101445", + "0xa3d8df0414c0140541c0a01410014f402a573d80a41c101200a94805120f9", + "0x107028350280d014f102907028f90281101451029070284f02a580144f02907", + "0xdf029bd0140541c0a01410014e114cf10440a3840a41c0a1440a9640514c0a", + "0x596c0a014d90145702907028f402a5a0145502907028f9028110140541c0a", + "0x1070280535c0501507028df029bd0140541c0a0d80a37005015070280504005", + "0xa41c0a15c0a9700515c0a41c0a3700a968051540a41c0a0a40a044053700a", + "0x5d029070285902a59014db02907028350280d0145b02907028550281101459", + "0x1070283002a5a014da0290702829028110140541c0a014100145d36c5b0440a", + "0xa014d70140541c0a33c0a370050150702805040050165d028053640517c0a", + "0x1070285f02a5c0145f02907028d902a5a014da029070280502811014d902907", + "0xa41c0a35c0a964053440a41c0a0840a034051880a41c0a3680a0440535c0a", + "0xa2d80a97c052d80a41c0a0165e0140541c0a0400a45c05194d11881102865", + "0x1070281a028300141a029070280d02a60014170290702811029260140d02907", + "0xbf02a60014bf02907028bb02a5f014bb06c1041c0a05c1a02811984050680a", + "0xa0440533ccc041070282101410988050840a41c0a0840a0c0050840a41c0a", + "0xd8098110282902907028cf029c3014d8029070281b028f50142602907028cc", + "0x25f0140d029070280598c052d80a41c0a0440a5840501507028100291801429", + "0x11984050680a41c0a0680a0c0050680a41c0a05c0a9800505c0a41c0a0340a", + "0x50840a41c0a2fc0a980052fc0a41c0a2ec0a97c052ec1b04107028b60680a", + "0x2602907028cc02811014cf3301041c0a084050426201421029070282102830", + "0x110293501429360260440a0a40a41c0a33c0a70c053600a41c0a06c0a3d405", + "0x5040052fcbb06c119901a05c0d04507040b60400a014b6874052d80a41c0a", + "0x1070280d028b6014cc029070282102a6501421029070281a029540140541c0a", + "0x10014d8098cf0440a3600a41c0a3300a4b0050980a41c0a05c0a10c0533c0a", + "0xa2ec0a10c050b40a41c0a06c0a2d8050a40a41c0a2fc0a998050150702805", + "0x2680280a41c100140a99c050b82b0b4110282e02907028290292c0142b02907", + "0x52d80a41c0a0440a790050440a41c0a0280a78c050150702805040050400a", + "0xf0014170290702805394050150702805040050340a0280d02907028b6029e5", + "0xa028bb029070281b029e50141b029070281a029e60141a029070281005c10", + "0x170341002805035390141702907028b6029260140d029070281102935014bb", + "0x13a014cc029070280535c05015070280504005084bf2ec119a41b0681041c10", + "0xa4ec053600a41c0a06c0a10c050980a41c0a0680a2d80533c0a41c0a3300a", + "0x50b40a41c0a0840a4f0050150702805040050a4d8098110282902907028cf", + "0x11028df029070282d0293b0142e02907028bf028430142b02907028bb028b6", + "0x541c0a014100141a05c0d0466b2d8110401141c10028050426a014df0b82b", + "0x52fc0a41c0a0440a10c052ec0a41c0a0400a2d80506c0a41c0a2d80a9b005", + "0x1070281a02a6f0140541c0a01410014059b80a014d901421029070281b02a6d", + "0xa41c0a3300a9b4052fc0a41c0a05c0a10c052ec0a41c0a0340a2d8053300a", + "0xd802907040cf029f1014cf029070282602a7101426029070282102a7001421", + "0x2b029070282d02a730142d02907028d8029f20140541c0a014100142902a72", + "0x50c00a41c0a2fc0a10c0537c0a41c0a2ec0a2d8050b80a41c0a0ac0a9d005", + "0xa41c0a0a40a9d8050150702805040050c83037c1102832029070282e02a75", + "0xf502907028e502a750143402907028bf02843014f002907028bb028b6014e5", + "0xb6029f7014bf0290702810028f5014bb029070280502811014f50d0f00440a", + "0x1b0681704507028cc084bf2ecb69dc053300a41c0a0340a0c0050840a41c0a", + "0x21d014260290702826028290142602907028050980533c0a41c0a06c0a4d405", + "0xa9e40501507028050400537c2e0ac119e02d0a4d804507040cf09811028b6", + "0x300292b014e50290702829028430143202907028d8028b601430029070282d", + "0x50d00a41c0a37c0a9ec050150702805040050167a02805364053c00a41c0a", + "0x27c014f002907028340292b014e5029070282e0284301432029070282b028b6", + "0x3902a7e1080a41c103d40a6ac053d40a41c0a10c0a9f40510c0a41c0a3c00a", + "0xa7e8050d40a41c0a0f00a7e4050f00a41c0a1080a68005015070280504005", + "0x1a028f50141f0290702832028b6014360290702817028110143f0290702835", + "0x4507c360340a1200a41c0a0fc0a7ec053e40a41c0a3940a10c051140a41c0a", + "0x512c0a41c0a05c0a044053e00a41c0a0e40a7f005015070280504005120f9", + "0x1fb0144f02907028e502843014f4029070281a028f5014f60290702832028b6", + "0x212fcbb06c1a05d07028b6028ae0145113cf43d84b0340a1440a41c0a3e00a", + "0xa4580501507028bb029370140541c0a06c0a46005015070281a02917014cc", + "0xa0140a0440533c0a41c0a05c0d0420e0140541c0a0840a4540501507028bf", + "0x1070281102843014300290702810028f5014df029070280a028b60142e02907", + "0x320c0df0b8179fc053c00a41c0a33c0a4bc053940a41c0a3300a83c050c80a", + "0xa01410014f502a800d00a41c100ac0a7f8050ac2d0a4d80980d41c0a3c0e5", + "0xa41c0a1080aa08051080a41c0a10c0aa040510c0a41c0a0d00a7fc0501507", + "0x3f0290702829028f50143502907028d8028b60143c02907028260281101439", + "0x100141f0d83f0d43c0340a07c0a41c0a0e40aa0c050d80a41c0a0b40a10c05", + "0xa3600a2d8053e40a41c0a0980a044051140a41c0a3d40aa10050150702805", + "0x1070284502a830144b029070282d02843014f80290702829028f50144802907", + "0xa41c0a0140a0440506c1a04107028b602a85014f612cf8120f90340a3d80a", + "0xd8029070280d0292f01426029070281b02a0f014cf0290702810028f5014cc", + "0x1005c0a544050a40a41c0a01426014212fcbb04507028d8098cf330b6a1805", + "0xa41c0a015270140541c0a0b40a370050150702805040050ac0aa1c2d02907", + "0x2b028dc0140541c0a0141001405a200a014d9014df029070282e028300142e", + "0xa41c0a0840a4d40537c0a41c0a0c00a0c0050c00a41c0a015220140541c0a", + "0x34046893c0e504107040df0c8290440a035390142902907028290282901432", + "0xb60143902907028420293a01442029070280535c0501507028050400510cf5", + "0x5364050fc0a41c0a0e40a4ec050d40a41c0a3c00a10c050f00a41c0a3940a", + "0x3c0290702834028b60143602907028430293c0140541c0a0141001405a280a", + "0x51140a41c0a0fc0a4f4050fc0a41c0a0d80a4ec050d40a41c0a3d40a10c05", + "0x50150702805040051200aa2cf9029070401f0293f0141f02907028450293e", + "0x53d80a41c0a12c0aa340512c0a41c0a3e01a0428c014f802907028f902940", + "0x430145102907028bf028f50144f029070283c028b6014f402907028bb02811", + "0xa01410014533c45113cf40340a14c0a41c0a3d80aa38053c40a41c0a0d40a", + "0x5502907028bb02811014e1029070284802a8f0140541c0a0680a4500501507", + "0x51640a41c0a0d40a10c053700a41c0a2fc0a3d40515c0a41c0a0f00a2d805", + "0xaa40050340a41c0a0440a8500516c59370571540d0285b02907028e102a8e", + "0x107028b602a910141a02907028050b80505c0a41c0a0142e014b6029070280d", + "0xa41c0a05c0a3200533c0a41c0a2ec0aa4c05015070281b02a92014bb06c10", + "0xcc028dc014cc084bf04507028d8098cf04694014d8029070281a028c801426", + "0x1070282d028530140541c0a0a40a3c4050b42904107028bf028510140541c0a", + "0xa41c0a37c0a14c05015070282e028f1014df0b81041c0a0840a144050ac0a", + "0x100c02b028052da950143002907028300280d0142b029070282b0280d01430", + "0xa4e80510c0a41c0a014d70140541c0a01410014f50d0f0046963943204107", + "0x420293b0143c02907028e502843014390290702832028b6014420290702843", + "0x50fc0a41c0a3d40a4f0050150702805040050169702805364050d40a41c0a", + "0x13d01435029070283f0293b0143c0290702834028430143902907028f0028b6", + "0xf902a981140a41c100d80a4fc050d80a41c0a07c0a4f80507c0a41c0a0d40a", + "0x111014f8029070284804010440051200a41c0a1140a50005015070280504005", + "0xa2c4053d00a41c0a0f00a10c053d80a41c0a0e40a2d80512c0a41c0a3e00a", + "0x780140541c0a0400a2d40501507028050400513cf43d8110284f029070284b", + "0xa2c40514c0a41c0a0f00a10c053c40a41c0a0e40a2d8051440a41c0a3e40a", + "0x10702805028110141b0681041c0a2d80aa6405384533c411028e10290702851", + "0xa41c0a0340a0c0050980a41c0a06c0a7dc0533c0a41c0a0400a3d4053300a", + "0x5098050a40a41c0a0840a4d405084bf2ec1141c0a3602633ccc2da77014d8", + "0x2e0ac1041c1005c290b4110280d4e4050b40a41c0a0b40a0a4050b40a41c0a", + "0xa41c0a3940a4e8053940a41c0a014d70140541c0a01410014320c0df0469a", + "0x4302907028f00293b014f5029070282e0284301434029070282b028b6014f0", + "0xa37c0a2d8051080a41c0a0c80a4f0050150702805040050169b0280536405", + "0x107028430293d0144302907028420293b014f50290702830028430143402907", + "0xa014100143f02a9c0d40a41c100e40a4fc050e40a41c0a0f00a4f8050f00a", + "0x1070281f02a9d0141f0290702836068104a8050d80a41c0a0d40a5000501507", + "0xa41c0a2fc0a3d4051200a41c0a0d00a2d8053e40a41c0a2ec0a044051140a", + "0x53d84b3e0483e40d028f6029070284502a9e0144b02907028f502843014f8", + "0xa2ec0a044053d00a41c0a0fc0aa7c05015070281a029150140541c0a01410", + "0x107028f502843014f102907028bf028f5014510290702834028b60144f02907", + "0xd029070281102a1a014e114cf11444f0340a3840a41c0a3d00aa780514c0a", + "0xaa44050680a41c0a0142e0141702907028050b8052d80a41c0a0340aa8005", + "0x17028c8014cf02907028bb02a930140541c0a06c0aa48052ec1b04107028b6", + "0x5330212fc1141c0a3602633c11a50053600a41c0a0680a320050980a41c0a", + "0xa14c050150702829028f10142d0a41041c0a2fc0a1440501507028cc028dc", + "0xdf028530140541c0a0b80a3c40537c2e0410702821028510142b029070282d", + "0xa014b6a54050c00a41c0a0c00a034050ac0a41c0a0ac0a034050c00a41c0a", + "0x43029070280535c050150702805040053d4343c011a84e50c81041c100c02b", + "0x50f00a41c0a3940a10c050e40a41c0a0c80a2d8051080a41c0a10c0a4e805", + "0x107028f50293c0140541c0a0141001405a880a014d90143502907028420293b", + "0xa41c0a0fc0a4ec050f00a41c0a0d00a10c050e40a41c0a3c00a2d8050fc0a", + "0x4502907040360293f01436029070281f0293e0141f02907028350293d01435", + "0xa41c0a1201004110014480290702845029400140541c0a01410014f902aa3", + "0xf4029070283c02843014f60290702839028b60144b02907028f802911014f8", + "0x10702810028b50140541c0a014100144f3d0f60440a13c0a41c0a12c0a2c405", + "0x53029070283c02843014f10290702839028b60145102907028f90287801405", + "0x11a90110401041c1002805041b9014e114cf10440a3840a41c0a1440a2c405", + "0x1b0290702810028110141a029070281102aa50140541c0a0141001417034b6", + "0xa0340a6f405015070280504005016a702805364052ec0a41c0a0680aa9805", + "0x50840a41c0a2fc0aaa0052fc0a41c0a014d70140541c0a05c0a6f40501507", + "0x2a9014cc029070281b0294d014bb029070282102aa60141b02907028b602811", + "0xa014100141002aab0280a41c100140aaa80533ccc0400a33c0a41c0a2ec0a", + "0xa41c0a2d80a9d4052d80a41c0a0440a9d0050440a41c0a0280a9cc0501507", + "0xa41c0a04017040f0014170290702805394050150702805040050340a0280d", + "0xa0400a454052ec0a028bb029070281b02a750141b029070281a02a760141a", + "0x17029070280d02a600140d02907028b602a5f014b60290702805ab00501507", + "0x1070281b02a5f0141b0681041c0a04417028119840505c0a41c0a05c0a0c005", + "0x107028bf01410988052fc0a41c0a2fc0a0c0052fc0a41c0a2ec0a980052ec0a", + "0x107028cc029c301426029070281a028f5014cf029070282102811014cc08410", + "0x50150702805040050400aab80a029070400502aad014d8098cf0440a3600a", + "0xa0280d02907028b6029fb014b60290702811029fa01411029070280a029f9", + "0x1fc0141a029070281005c103c00505c0a41c0a014e50140541c0a014100140d", + "0xbb029070280502811014bb0280a2ec0a41c0a06c0a7ec0506c0a41c0a0680a", + "0x53300a41c0a0340a4bc050840a41c0a2d80a83c052fc0a41c0a0400a3d405", + "0x1070280a028b6014cf02907028050980506c1a05c1141c0a330212fcbb2da86", + "0xa41c0a06c0a70c050b80a41c0a33c0a0a4050ac0a41c0a0440a10c050b40a", + "0xaac4050c80a41c0a0a40aac0050a4d80981141c0a37c2e0ac2d2daaf014df", + "0xa7fc050150702805040053c00aac8e50290704030029fe014300290702832", + "0x17028110144302907028f502a82014f5029070283402a810143402907028e5", + "0xa3600a10c050f00a41c0a0680a3d4050e40a41c0a0980a2d8051080a41c0a", + "0x50150702805040050fc350f0391080d0283f029070284302a830143502907", + "0xf5014450290702826028b60141f0290702817028110143602907028f002a84", + "0x1f0340a3e00a41c0a0d80aa0c051200a41c0a3600a10c053e40a41c0a0680a", + "0x10702805acc05034b60410702811029290140541c0a0400a450053e0483e445", + "0xa41c0a06c0a0c00506c0a41c0a0680a980050680a41c0a05c0a97c0505c0a", + "0xa2fc0a97c050840a41c0a0340a584052fcbb04107028b606c0a046610141b", + "0x2133cbb04661014cf02907028cf02830014cf02907028cc02a60014cc02907", + "0x2d028300142d029070282902a600142902907028d802a5f014d80981041c0a", + "0xa3d40537c0a41c0a0ac0a044050b82b041070282d01410988050b40a41c0a", + "0xa41c0a0140aad0050c83037c1102832029070282e029c3014300290702826", + "0x10014b602ab60440a41c100140aad4050400a02810029070280a02a930140a", + "0xa0340a040320140d029070280d028300140d0290702805adc050150702805", + "0x10702810028c8014210290702817028c8014bf029070281102a140141702907", + "0x1a028c80140541c0a2ec0a370052ec1b0681141c0a330212fc11ae0053300a", + "0x5015070280504005016b902805364050980a41c0a06c0a3200533c0a41c0a", + "0x21a0142902907028d8028100c8053600a41c0a3600a0c0053600a41c0a016ba", + "0x11aec050c80a41c0a0400a320050c00a41c0a0a40a3200537c0a41c0a2d80a", + "0x533c0a41c0a0b40a32005015070282e028dc0142e0ac2d04507028320c0df", + "0xaaf0053c00a41c0a33c0aaf0053940a41c0a014d701426029070282b028c8", + "0xa41c0a0140aaf4053d4343c011028f502907028e502a5a014340290702826", + "0xa014b6874052d80a41c0a0440a4d4050400a02810029070280a02a930140a", + "0x1070281a029620140541c0a01410014bf2ec1b046be068170341141c102d810", + "0x2604107028cf02962014cf029070280549c0501507028210291b014cc08410", + "0x2b0b41041c0a0a40a588050a40a41c0a3300a3240501507028260291b014d8", + "0x50c0df041070282e029620142e02907028d8028c90140541c0a0b40a46c05", + "0xa0c0053940a41c0a0c00a324050c80a41c0a0ac0a3240501507028df0291b", + "0xa2d8053c00a41c0a3c00a0c0053c00a41c0a3943204130014320290702832", + "0x100143402abf01507040f00291a014170290702817028430140d029070280d", + "0x10702843029640144302907028f502963014f5029070280535c050150702805", + "0xa014d70140541c0a0d00a48005015070280504005016c002805364051080a", + "0x107028420297501442029070283c029640143c0290702839029740143902907", + "0xa41c0a05c0a10c050d80a41c0a0340a2d8050fc0a41c0a0d40ab04050d40a", + "0xa2fc0ab0c050150702805040051141f0d81102845029070283f02ac20141f", + "0x107028f902ac2014f802907028bb0284301448029070281b028b6014f902907", + "0x50150702805040050400ab140a029070400502ac40144b3e0480440a12c0a", + "0xa0280d02907028b602a83014b6029070281102a8201411029070280a02a81", + "0x2840141a029070281005c103c00505c0a41c0a014e50140541c0a014100140d", + "0x5041070280502ac6014bb0280a2ec0a41c0a06c0aa0c0506c0a41c0a0680a", + "0x541c0a05c0a5dc05015070280d0297701417034b6045070281102ac701411", + "0x1a04107028bf2ec10b20052fc0a41c0a0400a320052ec0a41c0a2d80a0c005", + "0xcc045070282102ac7014210141041c0a0140ab1805015070281b028dc0141b", + "0x50b40a41c0a33c0a430050150702826029770140541c0a3300a46c05098cf", + "0x50150702829028dc014293601041c0a0ac2d042c90142b029070281a028c8", + "0x10c0140541c0a37c0a5dc05015070282e0291b0143037c2e045070280502ac7", + "0x53943204107028343c010b24050d00a41c0a3600a320053c00a41c0a0c00a", + "0x32028c801443029070280a028c8014f5029070280535c0501507028e5028dc", + "0x5041070280502aca01439108430440a0e40a41c0a3d40a968051080a41c0a", + "0x541c0a05c0a46c05015070280d0291b01417034b6045070281102acb01411", + "0x1a04107028bf2ec10b20052fc0a41c0a0400a320052ec0a41c0a2d80a0c005", + "0xcc045070282102acb014210141041c0a0140ab2805015070281b028dc0141b", + "0x50b40a41c0a33c0a0c00501507028260291b0140541c0a3300a46c05098cf", + "0x50150702829028dc014293601041c0a0ac2d042c80142b029070281a028c8", + "0x300140541c0a37c0a46c05015070282e0291b0143037c2e045070280502acb", + "0x53943204107028343c010b20050d00a41c0a3600a320053c00a41c0a0c00a", + "0x32028c801443029070280a028c8014f5029070280535c0501507028e5028dc", + "0x100290702805028c901439108430440a0e40a41c0a3d40a968051080a41c0a", + "0x50340a41c0a0440a320052d80a41c0a014d7014110290702810028100c805", + "0x10702810029610141002907028050298301417034100281702907028b602a5a", + "0xa41c0a0340a0c00501507028b60291b0140d2d81041c0a0440a588050440a", + "0x1070281a028dc0141a05c1041c0a2ec1b042c8014bb029070280a028c80141b", + "0xa3300a41c0a2fc0a968050840a41c0a05c0a320052fc0a41c0a014d701405", + "0x9101411014b6044100280528ca5244052900d0f0a5244052900d17ccc08410", + "0x10028052a4a5290910140d0f07e294a42440505d3c0400a01494244050443c", + "0xb51c4a5244b6b18b604410028052c49101411034110f0910140d6480d2d811", + "0x50400d01410b3410028052e005040980e405046cc04410028052dca524411", + "0xa424405034171207e294a42440506acf028052e8050400d01410b380a014b9", + "0x10028052a4a5290910140d1f8a5290910140db4017034b604410028052a4a5", + "0x2d40280512c050400d01410b4c053240a3200ab48053003c0403c02ad12d811", + "0x110400a014d129491014b61f4a5244052dad50400a014100141012c4b01411", + "0x503448164a52909101417b5c110400a014d929491014b635ca5244052dad6", + "0x5368a5290910140d05c55294a42440505ed8034b60441002805344a529091", + "0xb6044100280536ca5290910140d05c48164a5290910141ab640d2d8110400a", + "0x2db05c0d2d8110400a014dc294a4244050344805c55294a42440506ada05c0d", + "0xa014e1294a4244050340d1f8a52909101417b700a014d129491044a524410", + "0xd2d8110400a014a9294a424405034170347e294a42440506add034b604410", + "0xdb7c17034b604410028052a4a5290910140d0340d1f8a5290910141ab7817", + "0xa3d00ab84053440a13c0ab80b604410028053c4a5244052d8ef260a524405", + "0x10028053bca40141112059290052dae3028053d83c014110f005042e2014a3", + "0xf829491044ef260a5244b6b94110400a014ef2900504417154a4014b6b9011", + "0x110400a014c829491044483bc9829491036e7014da028f802ae60441002805", + "0xe1294a4244050340d0a4a52909101417ba40a014f929491044a524410ba0b6", + "0x110400a014f5294a424405034170347e294a42440506aea034b60441002805", + "0x17034b60441002805394a5290910140d040f00c0a5290910141abac17034b6", + "0x50340d03429294a42440506aed04410028052a4a5244110687e294912daec", + "0x110400a014a9294910441b1f8a5244b6bb817034b6044100280537ca529091", + "0xef290050440d0a4a4014b6bc4053e40a3300abc00a014d80141003405042ef", + "0x53d4a5290910140d3c030294a42440505ef3014e1028bf02af20441002805", + "0x52ec0a0680abd4110400a014ef29005044f00c0a4014b6bd00d2d8110400a", + "0x113bc98294912daf8014bb0281b02af70400a0140a0441104411044bb046f6", + "0x100280502811044110441106811be8053d40a2d80abe4110400a014b629491", + "0x1105c10bf40a0140a044100440d042fc0400a0140a04411044110441b046fb", + "0xbf80a0140a04410" + ], + "contract_class_version": "0.1.0", + "entry_points_by_type": { + "CONSTRUCTOR": [], + "EXTERNAL": [ + { + "selector": "0x3ea3b9a8522d36784cb325f9c7e2ec3c9f3e6d63031a6c6b8743cc22412f604", + "function_idx": 0 + } + ], + "L1_HANDLER": [] + }, + "abi": "[{\"type\": \"impl\", \"name\": \"EICInitializable\", \"interface_name\": \"src::replaceability_interface::IEICInitializable\"}, {\"type\": \"struct\", \"name\": \"core::array::Span::\", \"members\": [{\"name\": \"snapshot\", \"type\": \"@core::array::Array::\"}]}, {\"type\": \"interface\", \"name\": \"src::replaceability_interface::IEICInitializable\", \"items\": [{\"type\": \"function\", \"name\": \"eic_initialize\", \"inputs\": [{\"name\": \"eic_init_data\", \"type\": \"core::array::Span::\"}], \"outputs\": [], \"state_mutability\": \"external\"}]}, {\"type\": \"event\", \"name\": \"src::access_control_interface::RoleGranted\", \"kind\": \"struct\", \"members\": [{\"name\": \"role\", \"type\": \"core::felt252\", \"kind\": \"data\"}, {\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"sender\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::access_control_interface::RoleAdminChanged\", \"kind\": \"struct\", \"members\": [{\"name\": \"role\", \"type\": \"core::felt252\", \"kind\": \"data\"}, {\"name\": \"previous_admin_role\", \"type\": \"core::felt252\", \"kind\": \"data\"}, {\"name\": \"new_admin_role\", \"type\": \"core::felt252\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::legacy_bridge_eic::LegacyBridgeUpgradeEIC::Event\", \"kind\": \"enum\", \"variants\": [{\"name\": \"RoleGranted\", \"type\": \"src::access_control_interface::RoleGranted\", \"kind\": \"nested\"}, {\"name\": \"RoleAdminChanged\", \"type\": \"src::access_control_interface::RoleAdminChanged\", \"kind\": \"nested\"}]}]" +} diff --git a/scripts/artifacts/starknet/eic_eth_token.casm.json b/scripts/artifacts/starknet/eic_eth_token.casm.json new file mode 100644 index 000000000..5a516afb6 --- /dev/null +++ b/scripts/artifacts/starknet/eic_eth_token.casm.json @@ -0,0 +1,2219 @@ +{ + "prime": "0x800000000000011000000000000000000000000000000000000000000000001", + "compiler_version": "2.1.0", + "bytecode": [ + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffff51b90", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x81", + "0x4825800180007ffa", + "0xae470", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x87", + "0x20680017fff7ffa", + "0x6c", + "0x20680017fff7ffd", + "0x5b", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x676", + "0x482480017fff8000", + "0x675", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x1d", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fef", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fec7fff", + "0x10780017fff7fff", + "0x23", + "0x48307ffe80007fef", + "0x400080007fed7fff", + "0x482480017fed8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fef7fff8000", + "0x48127fef7fff8000", + "0x1104800180018000", + "0xa8", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fe98000", + "0x1", + "0x48127fe97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x36", + "0x40780017fff7fff", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffa7fff8000", + "0x480080007ff68000", + "0x1104800180018000", + "0x6c", + "0x20680017fff7ffa", + "0x1c", + "0x20680017fff7ffd", + "0xd", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x13", + "0x40780017fff7fff", + "0xa77", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4e4f5f4549435f494e49545f444154415f4558504543544544", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x84", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x57f", + "0x482480017fff8000", + "0x57e", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4825800180007ff8", + "0x12a2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff77fff", + "0x10780017fff7fff", + "0x4c", + "0x4825800180007ff8", + "0x12a2", + "0x400280007ff77fff", + "0x482680017ff78000", + "0x1", + "0x20780017fff7ffd", + "0xd", + "0x48127fff7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x188", + "0x20680017fff7ffe", + "0x27", + "0x400280007ffc7fff", + "0x48127ff07fff8000", + "0x48127fee7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x482680017ffc8000", + "0x1", + "0x4825800180007ffd", + "0x1", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd1", + "0x20680017fff7ffa", + "0xc", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127fee7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff78000", + "0x1", + "0x480a7ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x160", + "0x20680017fff7ffd", + "0x12f", + "0x480a7ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0x16b", + "0x20680017fff7ffd", + "0x11a", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x105", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x48127fbf7fff8000", + "0x1104800180018000", + "0x178", + "0x20680017fff7ffd", + "0xef", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0x48127eae7fff8000", + "0x1104800180018000", + "0x16d", + "0x20680017fff7ffd", + "0xd9", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0xd2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de06068", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x1104800180018000", + "0x1cb", + "0x20680017fff7ffd", + "0xc2", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0x1bf", + "0x20680017fff7ffd", + "0xab", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0x1b3", + "0x20680017fff7ffd", + "0x94", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x23edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da7", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x1104800180018000", + "0x1a7", + "0x20680017fff7ffd", + "0x7d", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x1104800180018000", + "0x19b", + "0x20680017fff7ffd", + "0x66", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0x18f", + "0x20680017fff7ffd", + "0x4f", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x481278757fff8000", + "0x1104800180018000", + "0x11a", + "0x20680017fff7ffd", + "0x39", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x1104800180018000", + "0x178", + "0x20680017fff7ffd", + "0x22", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x37693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b96", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x1104800180018000", + "0x16c", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xdc", + "0x48127f1d7fff8000", + "0x48127f1d7fff8000", + "0x48127f1d7fff8000", + "0x48127f1d7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f1d7fff8000", + "0x48127f1d7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1b8", + "0x48127e417fff8000", + "0x48127e417fff8000", + "0x48127e417fff8000", + "0x48127e417fff8000", + "0x480680017fff8000", + "0x1", + "0x48127e417fff8000", + "0x48127e417fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2c9", + "0x48127d307fff8000", + "0x48127d307fff8000", + "0x48127d307fff8000", + "0x48127d307fff8000", + "0x480680017fff8000", + "0x1", + "0x48127d307fff8000", + "0x48127d307fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x3a5", + "0x48127c547fff8000", + "0x48127c547fff8000", + "0x48127c547fff8000", + "0x48127c547fff8000", + "0x480680017fff8000", + "0x1", + "0x48127c547fff8000", + "0x48127c547fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x481", + "0x48127b787fff8000", + "0x48127b787fff8000", + "0x48127b787fff8000", + "0x48127b787fff8000", + "0x480680017fff8000", + "0x1", + "0x48127b787fff8000", + "0x48127b787fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x55d", + "0x48127a9c7fff8000", + "0x48127a9c7fff8000", + "0x48127a9c7fff8000", + "0x48127a9c7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127a9c7fff8000", + "0x48127a9c7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x639", + "0x481279c07fff8000", + "0x481279c07fff8000", + "0x481279c07fff8000", + "0x481279c07fff8000", + "0x480680017fff8000", + "0x1", + "0x481279c07fff8000", + "0x481279c07fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x715", + "0x481278e47fff8000", + "0x481278e47fff8000", + "0x481278e47fff8000", + "0x481278e47fff8000", + "0x480680017fff8000", + "0x1", + "0x481278e47fff8000", + "0x481278e47fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x7f1", + "0x481278087fff8000", + "0x481278087fff8000", + "0x481278087fff8000", + "0x481278087fff8000", + "0x480680017fff8000", + "0x1", + "0x481278087fff8000", + "0x481278087fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x902", + "0x481276f77fff8000", + "0x481276f77fff8000", + "0x481276f77fff8000", + "0x481276f77fff8000", + "0x480680017fff8000", + "0x1", + "0x481276f77fff8000", + "0x481276f77fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xa11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x524f4c45535f414c52454144595f494e495449414c495a4544", + "0x400080007ffe7fff", + "0x481275e57fff8000", + "0x481275e57fff8000", + "0x481275e57fff8000", + "0x481275e57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xa14", + "0x481275e57fff8000", + "0x481275e57fff8000", + "0x481275e57fff8000", + "0x481275e57fff8000", + "0x480680017fff8000", + "0x1", + "0x481275e57fff8000", + "0x481275e57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xa4e", + "0x480a7ffa7fff8000", + "0x481275ac7fff8000", + "0x480a7ffc7fff8000", + "0x481275ab7fff8000", + "0x480680017fff8000", + "0x1", + "0x481275ab7fff8000", + "0x481275ab7fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x8", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x0", + "0x480080007ffa8000", + "0x208b7fff7fff7ffe", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xdf", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480080027ffb8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xf2", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x10d", + "0x20680017fff7ffd", + "0x57", + "0x20680017fff7fff", + "0x44", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0x11c", + "0x20680017fff7ffd", + "0x2d", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffb6", + "0x20680017fff7ffd", + "0x1c", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x151", + "0x20680017fff7ffd", + "0x8", + "0x48127f757fff8000", + "0x48127ffa7fff8000", + "0x48127f757fff8000", + "0x48127ff97fff8000", + "0x10780017fff7fff", + "0x29", + "0x40780017fff7fff", + "0x4", + "0x48127f717fff8000", + "0x48127ff67fff8000", + "0x48127f717fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6a", + "0x48127f717fff8000", + "0x48127f907fff8000", + "0x48127f717fff8000", + "0x48127f8f7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f8f7fff8000", + "0x48127f8f7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x88", + "0x48127f717fff8000", + "0x48127f717fff8000", + "0x48127f717fff8000", + "0x48127f717fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f717fff8000", + "0x48127f717fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xb5", + "0x48127f447fff8000", + "0x48127f447fff8000", + "0x48127f447fff8000", + "0x48127f447fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xb9", + "0x48127f407fff8000", + "0x48127f407fff8000", + "0x48127f407fff8000", + "0x48127f407fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f407fff8000", + "0x48127f407fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff76", + "0x20680017fff7ffd", + "0x34", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x143", + "0x20680017fff7ffd", + "0x1f", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x480a7ffc7fff8000", + "0x48127fcf7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x175", + "0x20680017fff7ffd", + "0xd", + "0x48127f937fff8000", + "0x48127ffa7fff8000", + "0x48127f937fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127f937fff8000", + "0x48127ffa7fff8000", + "0x48127f937fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x66", + "0x48127f937fff8000", + "0x48127f937fff8000", + "0x48127f937fff8000", + "0x48127f937fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f937fff8000", + "0x48127f937fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x93", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f667fff8000", + "0x48127f667fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x476574457865637574696f6e496e666f", + "0x400280007ffd7fff", + "0x400380017ffd7ffc", + "0x480280037ffd8000", + "0x20680017fff7fff", + "0xc", + "0x480280027ffd8000", + "0x482680017ffd8000", + "0x5", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480280047ffd8000", + "0x10780017fff7fff", + "0x9", + "0x480280027ffd8000", + "0x482680017ffd8000", + "0x6", + "0x480680017fff8000", + "0x1", + "0x480280047ffd8000", + "0x480280057ffd8000", + "0x1104800180018000", + "0x177", + "0x20680017fff7ffd", + "0xa", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x16e", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffc7fff", + "0x400380017ffc7ffa", + "0x400280027ffc7ffe", + "0x400280037ffc7ffd", + "0x480280057ffc8000", + "0x20680017fff7fff", + "0xc", + "0x480280047ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480280067ffc8000", + "0x10780017fff7fff", + "0x9", + "0x480280047ffc8000", + "0x482680017ffc8000", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480280067ffc8000", + "0x480280077ffc8000", + "0x1104800180018000", + "0x178", + "0x20680017fff7ffd", + "0xc", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x168", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x171", + "0x20780017fff7ffd", + "0x6", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffa7fff", + "0x400380017ffa7ff8", + "0x400280027ffa7ffe", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x480280067ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffa8000", + "0x482680017ffa8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffa8000", + "0x482680017ffa8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffa8000", + "0x480280087ffa8000", + "0x1104800180018000", + "0x174", + "0x20680017fff7ffd", + "0xd", + "0x48127fef7fff8000", + "0x48127ff57fff8000", + "0x48127fee7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fef7fff8000", + "0x48127ff57fff8000", + "0x48127fee7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x167", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff87fff8000", + "0x1104800180018000", + "0x15f", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffa7fff", + "0x400380017ffa7ff9", + "0x400280027ffa7ffb", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x400280057ffa7ffe", + "0x480280077ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffa8000", + "0x480280097ffa8000", + "0x1104800180018000", + "0x128", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x8d", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffb7fff", + "0x400380017ffb7ff9", + "0x400280027ffb7ffe", + "0x400280037ffb7ffd", + "0x400380047ffb7ffd", + "0x480280067ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffb8000", + "0x480280087ffb8000", + "0x1104800180018000", + "0xf1", + "0x20680017fff7ffd", + "0xd", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x113", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff87fff8000", + "0x1104800180018000", + "0xdc", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffa7fff", + "0x400380017ffa7ff9", + "0x400280027ffa7ffb", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x400280057ffa7ffe", + "0x480280077ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffa8000", + "0x480280097ffa8000", + "0x1104800180018000", + "0xa5", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x2e9f66c6eea14532c94ad25405a4fcb32faa4969559c128d837caa0ec50a655", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x480280027ffc8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffb7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffb7ffd", + "0x400280027ffb7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x482680017ffc8000", + "0x3", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x20", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x87", + "0x1104800180018000", + "0xb0", + "0x20680017fff7ffd", + "0xc", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x52c476292b358ba7d29adb58502341b4cc5437d07f67d3e285e085828bc820", + "0x400280007ffb7fff", + "0x400380017ffb7ffc", + "0x480280027ffb8000", + "0x400280037ffb7fff", + "0x400380047ffb7ffd", + "0x480280057ffb8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffa7ffc", + "0x480280017ffa7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffa7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffa7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffa7ffd", + "0x400280027ffa7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffa8000", + "0x3", + "0x482680017ffb8000", + "0x6", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x9", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ff6", + "0x15", + "0x480680017fff8000", + "0x9d4a59b844ac9d98627ddba326ab3707a7d7e105fd03c777569d0f61a91f1e", + "0x400280007ffb7fff", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x5a", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x10780017fff7fff", + "0x15", + "0x40780017fff7fff", + "0xe", + "0x480680017fff8000", + "0x2b23b0c08c7b22209aea4100552de1b7876a49f04ee5a4d94f83ad24bc4ec1c", + "0x400280007ffb7fff", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x59", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0x1a", + "0x480280067ffb8000", + "0x4824800180007fff", + "0x0", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x20680017fff7ffd", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48307ffa80007ffb", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x25", + "0x480a7ff87fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x25", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x20", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x11", + "0x480a7ff87fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xc", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x7", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x400380007ffd7ffb", + "0x480a7ffc7fff8000", + "0x482680017ffd8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffff9", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x208b7fff7fff7ffe" + ], + "hints": [ + [ + 0, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0xae470" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 28, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 53, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -16 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 74, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 94, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 110, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 134, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 173, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 247, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 295, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x12a2" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 378, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 679, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 981, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -3 + } + } + } + } + ] + ], + [ + 1033, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 1128, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 1178, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1180, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1204, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 1259, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 1309, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1311, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1335, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 1394, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 1398, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 1409, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 1486, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 1490, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 1501, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 1594, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ] + ], + "entry_points_by_type": { + "EXTERNAL": [ + { + "selector": "0x3ea3b9a8522d36784cb325f9c7e2ec3c9f3e6d63031a6c6b8743cc22412f604", + "offset": 0, + "builtins": ["pedersen", "range_check"] + } + ], + "L1_HANDLER": [], + "CONSTRUCTOR": [] + } +} diff --git a/scripts/artifacts/starknet/eic_eth_token.sierra.json b/scripts/artifacts/starknet/eic_eth_token.sierra.json new file mode 100644 index 000000000..420b05064 --- /dev/null +++ b/scripts/artifacts/starknet/eic_eth_token.sierra.json @@ -0,0 +1,1207 @@ +{ + "sierra_program": [ + "0x1", + "0x3", + "0x0", + "0x2", + "0x3", + "0x0", + "0x218", + "0x1e8", + "0x41", + "0x52616e6765436865636b", + "0x800000000000000100000000000000000000000000000000", + "0x537472756374", + "0x800000000000000f00000000000000000000000000000001", + "0x0", + "0x2ee1e2b1b89f8c495f200e4956278a4d47395fe262f27b52e5865c9524c08c3", + "0x456e756d", + "0x800000000000000700000000000000000000000000000003", + "0x3288d594b9a45d15bb2fcb7903f06cdb06b27f0ba88186ec4cfaa98307cb972", + "0x1", + "0x4172726179", + "0x800000000000000300000000000000000000000000000001", + "0x5", + "0x800000000000000300000000000000000000000000000003", + "0x248e8fae2f16a35027771ffd74d6a6f3c379424b55843563a18f566bba3d905", + "0x2", + "0x3", + "0x66656c74323532", + "0x800000000000000700000000000000000000000000000000", + "0x800000000000000700000000000000000000000000000002", + "0x1166fe35572d4e7764dac0caf1fd7fc591901fd01156db2561a07b68ab8dca2", + "0x436f6e747261637441646472657373", + "0x800000000000000700000000000000000000000000000004", + "0x30f406b1d8bc98143cf38cf66d9152a9ad605c5cc90a602d7460776ec6718ed", + "0x7", + "0x384c2e98e3af0acf314102dc8ebe9011cefe220e3f77edc819db2a94915b72f", + "0x9aeba6980e7064d106dc6197e24bd7961ae8bc8179a16764898e3209579625", + "0x8", + "0x9", + "0x800000000000000f00000000000000000000000000000002", + "0x16a4c8d7c05909052238a862d8cc3e7975bf05a07b3a69c6b28951083a6d672", + "0xc", + "0xcc5e86243f861d2d64b08c35db21013e773ac5cf10097946fe0011304886d5", + "0xb", + "0xd", + "0x101dc0399934cc08fa0d6f6f2daead4e4a38cabeea1c743e1fc28d2d6e58e99", + "0x90d0203c41ad646d024845257a6eceb2f8b59b29ce7420dd518053d2edeedc", + "0x53746f7261676541646472657373", + "0x53746f726167654261736541646472657373", + "0x426f78", + "0x800000000000000700000000000000000000000000000001", + "0x26", + "0x2c7badf5cd070e89531ef781330a9554b04ce4ea21304b67a30ac3d43df84a2", + "0x13", + "0x33c71cebc27caeef4d7af109c50c8a72084ee430970c6249e9a1f1fb334a694", + "0x800000000000000f00000000000000000000000000000003", + "0x15", + "0x1499e2cf9c0e4388b9e9f59eadb4f9b032ac29e14fa694c099034d3b8c8a64e", + "0x16", + "0x31621963e3f63c141229060bd453c20d2c884a47197137007d83be8543b87cb", + "0x18", + "0x209be1e2c5e81539a23bb16a6264bcf6324b9fa5006f5575b9ad672895b267f", + "0x19", + "0xa853c166304d20fb0711becf2cbdf482dee3cac4e9717d040b7a7ab1df7eec", + "0x1c", + "0x23", + "0x25", + "0x75313238", + "0x536e617073686f74", + "0x1baeba72e79e9db2587cf44fedb2f3700b2075a5e8e39a562584862c4b71f62", + "0x21", + "0x800000000000000700000000000000000000000000000008", + "0x2e655a7513158873ca2e5e659a9e175d23bf69a2325cdd0397ca3b8d864b967", + "0x20", + "0x22", + "0x753634", + "0x3808c701a5d13e100ab11b6c02f91f752ecae7e420d21b56c90ec0a475cc7e5", + "0x24", + "0x800000000000000700000000000000000000000000000006", + "0x19367431bdedfe09ea99eed9ade3de00f195dd97087ed511b8942ebb45dbc5a", + "0x1f", + "0x1e", + "0x38f4af6e44b2e0a6ad228a4874672855e693db590abc7105a5a9819dbbf5ba6", + "0x27", + "0x10203be321c62a7bd4c060d69539c1fbe065baa9e253c74d2cc48be163e259", + "0x29", + "0x3e1934b18d91949ab9afdbdd1866a30ccca06c2b1e6581582c6b27f8b4f6555", + "0x2b", + "0x11c6d8087e00642489f92d2821ad6ebd6532ad1a3b6d12833da6d6810391511", + "0x4e6f6e5a65726f", + "0x17b6ecc31946835b0d9d92c2dd7a9c14f29af0371571ae74a1b228828b2242", + "0x2f", + "0x34f9bd7c6cb2dd4263175964ad75f1ff1461ddc332fbfb274e0fb2a5d7ab968", + "0x30", + "0x29d7d57c04a880978e7b3689f6218e507f3be17588744b58dc17762447ad0e7", + "0x32", + "0x10ca7b2bb4f6989de90c9a6d735e19682187a541f56b0d39a2e75063587e367", + "0x35", + "0x3e171978dba44902b7b111be483ce3df88fd5fe1289079d8d2592087865c7a9", + "0x36", + "0x4275696c74696e436f737473", + "0x53797374656d", + "0x506564657273656e", + "0x9931c641b913035ae674b400b61a51476d506bbe8bba2ff8a6272790aba9e6", + "0x34", + "0x753332", + "0x1d49f7a4b277bf7b55a2664ce8cef5d6922b5ffb806b89644b9e0cdbbcac378", + "0x3d", + "0x13fdd7105045794a99550ae1c4ac13faa62610dfab62c16422bfcf5803baa6e", + "0x3e", + "0x4761734275696c74696e", + "0xfb", + "0x7265766f6b655f61705f747261636b696e67", + "0x77697468647261775f676173", + "0x6272616e63685f616c69676e", + "0x73746f72655f74656d70", + "0x40", + "0x66756e6374696f6e5f63616c6c", + "0x656e756d5f6d61746368", + "0x3f", + "0x7374727563745f6465636f6e737472756374", + "0x61727261795f6c656e", + "0x736e617073686f745f74616b65", + "0x3c", + "0x64726f70", + "0x7533325f636f6e7374", + "0x72656e616d65", + "0x7533325f6571", + "0x61727261795f6e6577", + "0x66656c743235325f636f6e7374", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x61727261795f617070656e64", + "0x7374727563745f636f6e737472756374", + "0x656e756d5f696e6974", + "0x3b", + "0x3a", + "0x39", + "0x6765745f6275696c74696e5f636f737473", + "0x38", + "0x77697468647261775f6761735f616c6c", + "0x37", + "0x4f7574206f6620676173", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x64697361626c655f61705f747261636b696e67", + "0x61727261795f736e617073686f745f706f705f66726f6e74", + "0x33", + "0x6a756d70", + "0x756e626f78", + "0x31", + "0x4e4f5f4549435f494e49545f444154415f4558504543544544", + "0x4", + "0x647570", + "0x66656c743235325f69735f7a65726f", + "0x2e", + "0x2d", + "0x66656c743235325f737562", + "0x6", + "0x2c", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x2a", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0xd2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de06068", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x23edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da7", + "0x128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x37693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b96", + "0x524f4c45535f414c52454144595f494e495449414c495a4544", + "0xa", + "0x28", + "0x1d", + "0x1b", + "0x1a", + "0xe", + "0xf", + "0x17", + "0x10", + "0x6765745f657865637574696f6e5f696e666f5f73797363616c6c", + "0x14", + "0x11", + "0x12", + "0x73746f726167655f616464726573735f66726f6d5f62617365", + "0x73746f726167655f726561645f73797363616c6c", + "0x73746f726167655f77726974655f73797363616c6c", + "0x656d69745f6576656e745f73797363616c6c", + "0x2e9f66c6eea14532c94ad25405a4fcb32faa4969559c128d837caa0ec50a655", + "0x706564657273656e", + "0xad292db4ff05a993c318438c1b6c8a8303266af2da151aa28ccece6726f1f1", + "0x52c476292b358ba7d29adb58502341b4cc5437d07f67d3e285e085828bc820", + "0x636f6e74726163745f616464726573735f746f5f66656c74323532", + "0x9d4a59b844ac9d98627ddba326ab3707a7d7e105fd03c777569d0f61a91f1e", + "0x2b23b0c08c7b22209aea4100552de1b7876a49f04ee5a4d94f83ad24bc4ec1c", + "0x626f6f6c5f6e6f745f696d706c", + "0x5cd", + "0xffffffffffffffff", + "0x73", + "0x6b", + "0x5b", + "0x4c", + "0x44", + "0x42", + "0x43", + "0x45", + "0x46", + "0x47", + "0x48", + "0x49", + "0x4a", + "0x4b", + "0x4d", + "0x4e", + "0x4f", + "0x50", + "0x51", + "0x52", + "0x53", + "0x54", + "0x55", + "0x56", + "0x57", + "0x58", + "0x59", + "0x5a", + "0x5c", + "0x5d", + "0x5e", + "0x5f", + "0x60", + "0x61", + "0x62", + "0x63", + "0x64", + "0x65", + "0x66", + "0x67", + "0x68", + "0x69", + "0x6a", + "0x6c", + "0x6d", + "0x6e", + "0x6f", + "0x70", + "0x71", + "0x72", + "0x74", + "0x75", + "0x8a", + "0x8f", + "0xb9", + "0xb3", + "0xab", + "0xdd", + "0xf1", + "0x132", + "0x10a", + "0x128", + "0x122", + "0x27b", + "0x271", + "0x260", + "0x257", + "0x24e", + "0x245", + "0x23c", + "0x76", + "0x77", + "0x78", + "0x79", + "0x7a", + "0x7b", + "0x233", + "0x7c", + "0x7d", + "0x7e", + "0x7f", + "0x80", + "0x86", + "0x87", + "0x88", + "0x89", + "0x8b", + "0x8c", + "0x81", + "0x82", + "0x83", + "0x84", + "0x85", + "0x8d", + "0x22a", + "0x8e", + "0x90", + "0x91", + "0x92", + "0x98", + "0x99", + "0x9a", + "0x9b", + "0x9c", + "0x9d", + "0x9e", + "0x93", + "0x94", + "0x95", + "0x96", + "0x97", + "0x9f", + "0x221", + "0xa0", + "0xa1", + "0xa2", + "0xa3", + "0xa4", + "0xaa", + "0xac", + "0xad", + "0xae", + "0xaf", + "0xb0", + "0xa5", + "0xa6", + "0xa7", + "0xa8", + "0xa9", + "0xb1", + "0x218", + "0xb2", + "0xb4", + "0xb5", + "0xbb", + "0xbc", + "0xbd", + "0xbe", + "0xbf", + "0xc0", + "0xc1", + "0xb6", + "0xb7", + "0xb8", + "0xba", + "0xc2", + "0x210", + "0xc3", + "0xc4", + "0xc5", + "0xc6", + "0xc7", + "0xcd", + "0xce", + "0xcf", + "0xd0", + "0xd1", + "0xd2", + "0xd3", + "0xc8", + "0xc9", + "0xca", + "0xcb", + "0xcc", + "0xd4", + "0x208", + "0xd5", + "0xd6", + "0xd7", + "0xd8", + "0xd9", + "0xdf", + "0xe0", + "0xe1", + "0xe2", + "0xe3", + "0xe4", + "0xe5", + "0xda", + "0xdb", + "0xdc", + "0xde", + "0xe6", + "0x200", + "0xe7", + "0xe8", + "0xe9", + "0xea", + "0xeb", + "0xec", + "0xed", + "0xee", + "0xef", + "0xf0", + "0xf2", + "0xf3", + "0xf4", + "0xf5", + "0xf6", + "0xf7", + "0xf8", + "0xf9", + "0xfa", + "0xfc", + "0xfd", + "0xfe", + "0xff", + "0x100", + "0x101", + "0x102", + "0x103", + "0x104", + "0x105", + "0x106", + "0x107", + "0x108", + "0x109", + "0x10b", + "0x10c", + "0x10d", + "0x10e", + "0x10f", + "0x110", + "0x111", + "0x112", + "0x113", + "0x114", + "0x115", + "0x116", + "0x117", + "0x118", + "0x119", + "0x11a", + "0x11b", + "0x11c", + "0x11d", + "0x11e", + "0x11f", + "0x120", + "0x121", + "0x123", + "0x124", + "0x125", + "0x126", + "0x127", + "0x129", + "0x12a", + "0x12b", + "0x12c", + "0x12d", + "0x12e", + "0x12f", + "0x130", + "0x131", + "0x133", + "0x134", + "0x135", + "0x136", + "0x137", + "0x138", + "0x139", + "0x13a", + "0x13b", + "0x13c", + "0x13d", + "0x13e", + "0x13f", + "0x140", + "0x141", + "0x142", + "0x143", + "0x144", + "0x145", + "0x146", + "0x147", + "0x148", + "0x149", + "0x14a", + "0x28b", + "0x290", + "0x29a", + "0x2b3", + "0x2cd", + "0x340", + "0x32e", + "0x323", + "0x317", + "0x30f", + "0x337", + "0x38e", + "0x382", + "0x37a", + "0x3a0", + "0x3a5", + "0x3b0", + "0x3c5", + "0x3ca", + "0x3d7", + "0x3f4", + "0x409", + "0x40d", + "0x417", + "0x41c", + "0x429", + "0x44d", + "0x452", + "0x45d", + "0x475", + "0x47a", + "0x487", + "0x4ab", + "0x4b0", + "0x4bb", + "0x4c8", + "0x4e2", + "0x500", + "0x522", + "0x538", + "0x543", + "0x571", + "0x566", + "0x56b", + "0x57d", + "0x284", + "0x2a1", + "0x2b9", + "0x2d5", + "0x34b", + "0x399", + "0x3b6", + "0x3df", + "0x3fc", + "0x432", + "0x464", + "0x490", + "0x4c2", + "0x4ce", + "0x4dc", + "0x4e8", + "0x508", + "0x51c", + "0x528", + "0x52b", + "0x548", + "0x54b", + "0x577", + "0x583", + "0x59f", + "0x5bb", + "0x5c1", + "0x35c9", + "0x100280f0140e01c0d0280c02c0a0280a028090140801c060140400c0200400", + "0x505c030640a0640a0340a0600505c0304c160340a054050500304c120440a", + "0x1f0140400c0a028060141e00c1d0281c0281b0140801c0d0280d0280d0281a", + "0x70440a0280a090050380708c0a0880a08405038070440a0800a0180503803", + "0x400c110282c0282b0140e01c2a028290a01309c13098110280d028250140e", + "0x50b8030c8050100308c0a0c40a0c005038070280a0bc0a018050b8030b405", + "0x60141400c190280d028060140800c2302835028340140e01c0a0283302806", + "0x30440a0a43b04c3a0e40a0a4280e00a0a42808c0a0dc0a0d805038070400a", + "0x131080d0280d0280d0284102840028190280d0283f0143e00c3d0283c01414", + "0x30340a0640a0640a1200a11c0a11805114030640a1100a1100a10c0505c03", + "0x4c0284b0140e01c0d028060141400c230284a028490140e01c2c0280601414", + "0x500280a0340a13c050200708c0a1380a13405038070640a018050500308c0a", + "0x54028530140e01c5202841028060140e00c0a02811028510140e01c0d02829", + "0xa15c050b8031040a01805050030280a1580a15405020070340a0a42808c0a", + "0x2174021701316c230285a028590140e01c0a02858028060142e00c330282f", + "0xa1040a01805020030280a1040a184050200704c6008c0a17c0a1780503807", + "0xa0286a0140a0286a014690146801467198021942302864028630140e01c62", + "0x410280a1bc620280a1b4640280a1bc6e0280a1b40a0440a1b0410280a1a86b", + "0x761c80a0286a1c80a0287501410028741c80a028731c80a028710340a02870", + "0x200280a1ec0d0280a1e80d0280a1a8790400a1e00d0280a1dc410280a1cc05", + "0x6a014801f40a0286a1fc0a0286a1f80a0286a028101f40a0407c08c0a0287b", + "0x100440a1b0580280a1a8580280a1ec330280a1ec2f0280a1ec05208810280a", + "0x7c17c0a0287b1040a0287b0440a028730440a028711680a0287320c0a0286d", + "0x101f00d0280a21c05218850400a1e00a0280a1cc840400a1e0050407d02810", + "0x6d028102200a0407c0280a0287b014892200a0286a0f40a0286a014102200a", + "0xa1bc8b0280a1b4110440a1b0110280a1a80d0280a1d40d0280a228880280a", + "0xa0286a014101b80a0407c1900a0287b014101880a0407c1480a0286d1500a", + "0x83028101f08c0400a1e0580280a1cc0a0406e028101f00a04062028101f06e", + "0x8e0141020c0a0407c1680a0287b1680a0286f234110286c20c0a0286a02810", + "0x50408b028101f0540280a1ec0504052028101f00d0280a1cc0523c0d0280a", + "0xa0407c0149202810028782440a0286d034110286c2400a0287322c0a0286a", + "0x950400a1e0580280a1c4940280a1b4930440a1b00a04052028101f00a0408b", + "0x8e1380a0286f01410028780340a028711300a0286f2580a0286d064110286c", + "0xa1b0990400a1e0980400a1e0970400a1e01c0440a1b0190280a1a8190280a", + "0xa028730640a028732741002878270100287826c1002878268100287807411", + "0x9f0440a1b00a04091028101f0910280a1a80504091028101f09e0400a1e04e", + "0x7b1200a0287311c0a028730a80a0286f0a80a0288a1280a0286f2800a0286d", + "0xa1cc580280a1bc0a04094028101f0940280a1a80504094028101f04e0280a", + "0x7c2580a0286a014102580a0407c1300a0287b088110286c0bc0a0286a0cc0a", + "0xa20280a1ec100280a1b4370280a1bca10280a1b4200440a1b00a0409602810", + "0xa0286d08c110286c0400a0286a2880a0286a0cc0a0286a028100400a0407c", + "0x350280a1cc2f0280a1cca40440a1b01c0280a1a81c0280a1ec350280a1bca3", + "0x7329c110286c0740a0286a0740a0287b0c40a0286f2980a0286d294110286c", + "0xa90280a1d40a040a9028101f0a90280a1a805040a9028101f0052a04c0280a", + "0x6c028102800a0407c2800a0286a014102800a0407c1280a0287b2a8110286c", + "0xa1d40a040a7028101f0a70280a1a805040a7028101f0052b4052b0ab0440a", + "0x7c2840a0286a014102840a0407c0dc0a0287b2a4110286c0b0110286c29c0a", + "0xa50280a1a805040a5028101f0052b82f0440a1b0330280a1c40a040a102810", + "0xa0287b0880a0286f2900a0286d0c4110286c2940a02875028102940a0407c", + "0x9f0280a1c4a60440a1b00a040a3028101f0a30280a1a805040a3028101f035", + "0xa0407c0c40a0287b0bc0a02871014af0cc110286c27c0a0286a27c0a02873", + "0xb00400a1e0a90280a1b4350440a1b00a040a6028101f0a60280a1a805040a6", + "0x7528c110286c29c0a0286d2ac0a0286a014b2014b124c0a0286f24c0a0287b", + "0x220280a1eca50280a1b4052d0b30400a1e0a20280a1bca20440a1b08d0280a", + "0xa0286d0141027c0a0407c028102900a0407c2900a0286a014102900a0407c", + "0xa0280a1a8110280a1d4a10440a1b0b60400a1e0370440a1b0b50400a1e09f", + "0x7c2340a0286a014102340a0407c014b7014100400a0407c0281027c0a0407c", + "0x470440a1b0480440a1b01c0280a1bc1c0280a2388d0280a1b40a0408d02810", + "0x100400a0400a014052e40a01405014b80640a028750740a0286f0740a0288e", + "0xa234050800a2e40a0340a04405014b9028050400507019040ba24c0d040b9", + "0x2227c1d044b9028a408c2004493014a4028b90288d0280d01423028b902893", + "0xaa040b9028a50281c014052e40a01410014a7028bb2940a2e4100880a06405", + "0xa2e40a2a80a27c05014b902805040052a40a2f02c028b9040ab0281d014ab", + "0x52e40a2980a08c050cca6040b9028310282001431028b90282f028220142f", + "0xa5014052e40a28c0a08c05288a3040b9028350282001435028b90280529005", + "0x102a8050dc0a2e40a0dc0a29c052840a2e40a2880a294050dc0a2e40a0cc0a", + "0xb9028050b005014b90282c028ab014052e40a01410014050a8052e41028437", + "0xa2e40a11c480403101447028b9028470282f01447028b9028052a4051200a", + "0x38028b9028410283501441028b9028400f4100cc050f40a2e40a014a601440", + "0x50a80a2e40a27c0a234050e40a2e40a0740a044051100a2e40a0140a28c05", + "0x5040052804a0a8391100d028a0028b902838028370144a028b902811028a2", + "0x101309f0741111c051300a2e40a1300a120051300a2e40a014a1014052e40a", + "0xa0143d01490028b90280510005014b9028050400524494040bd13896040b9", + "0xa1380a234051680a2e40a2580a044051500a2e40a148900404101452028b9", + "0xb902854028380147f028b902811028a201481028b902805028a301483028b9", + "0x881588b034b90287d1f87f2048316893110051f40a2e40a0b00a034051f80a", + "0xb9028720282a014052e40a0141001462028be1c80a2e4101600a0e4051605f", + "0x5014b90286e028a00146b1b8102e40a1900a128051900a2e40a0142c01405", + "0xa3014c0028b9028bf0284e014bf028b9028000289601400028b90286b0284c", + "0xa288053080a2e40a1580a234053040a2e40a22c0a044052f80a2e40a2200a", + "0xb90280504005310c3308c12f80d028c4028b9028c002837014c3028b90285f", + "0xc7028b90288b02811014c6028b902888028a3014c5028b9028620283501405", + "0xa3240a2e40a3140a0dc053200a2e40a17c0a288052f40a2e40a1580a23405", + "0xa2e40a0142c014052e40a0b00a2ac05014b90280504005324c82f4c73180d", + "0xcc028b9028cb328100c40532c0a2e40a32c0a0bc0532c0a2e40a01494014ca", + "0x533c0a2e40a3380a0d4053380a2e40a330cd04033014cd028b90280529805", + "0xa2014d2028b9028910288d014d1028b90289402811014d0028b902805028a3", + "0xa01410014d434cd2344d00340a3500a2e40a33c0a0dc0534c0a2e40a0440a", + "0x90014d5028b9028050b005014b9028aa028ab014052e40a2a40a24405014b9", + "0x5298053580a2e40a2f0d504031014bc028b9028bc0282f014bc028b902805", + "0x5028a3014d9028b9028d802835014d8028b9028d635c100cc0535c0a2e40a", + "0xa0440a288053700a2e40a27c0a2340536c0a2e40a0740a044053680a2e40a", + "0x5014b90280504005378dd370db3680d028de028b9028d902837014dd028b9", + "0x8d014e1028b90281d02811014e0028b902805028a3014df028b9028a702835", + "0xe00340a3900a2e40a37c0a0dc0538c0a2e40a0440a288053880a2e40a27c0a", + "0x52ec0a2e40a0142c014052e40a2340a2ac05014b90280504005390e3388e1", + "0xa6014e6028b9028e52ec100c4053940a2e40a3940a0bc053940a2e40a01494", + "0xa28c053a40a2e40a3a00a0d4053a00a2e40a398e704033014e7028b902805", + "0x11028a2014ba028b90281c0288d014eb028b90281902811014ea028b902805", + "0x52e40a01452014ed3b0ba3acea0340a3b40a2e40a3a40a0dc053b00a2e40a", + "0xb9028050400524c0a3b80d234102e4100440a150050440a2e40a0400a27c05", + "0x1d028b902819028880141c028b90288d0285601419028b90280d0288b01405", + "0xb90289f0285a0149f028b90280516005014b90280504005014ef0280517c05", + "0xa2e40a0700a130050740a2e40a0880a220050700a2e40a24c0a158050880a", + "0xb902805040052900a3c023028b90401d0288301420028b9028200280d01420", + "0x52a80a2e40a2940a1fc0529c0a2e40a0142c014a5028b9028230288101405", + "0x7e014a6028b9028200280d01431028b90280a0288d0142f028b90280502811", + "0x112e40a0d433298310bc0d1f4050d40a2e40a2a80a0bc050cc0a2e40a29c0a", + "0xa28c0a18805014b902805040052880a3c4a3028b9040a902872014a90b0ab", + "0x480284a014052e40a0141001447028f21200a2e4102840a1900528437040b9", + "0xa1040a1b8051040a2e40a0f40a13005014b902840028a00143d100102e40a", + "0xa2ac0a044050e40a2e40a1100a000051100a2e40a0e0370406b01438028b9", + "0x52804a0a811028a0028b902839028bf0144a028b90282c0288d0142a028b9", + "0xa000052580a2e40a130370406b0144c028b902847028c0014052e40a01410", + "0x4e028bf01491028b90282c0288d01494028b9028ab028110144e028b902896", + "0x1101452028b9028a2028be014052e40a0141001490244940440a2400a2e40a", + "0x540440a1580a2e40a1480a2fc0522c0a2e40a0b00a234051500a2e40a2ac0a", + "0xa300052200a2e40a01458014052e40a2900a24405014b902805040051588b", + "0xa044051680a2e40a1600a000051600a2e40a17c200406b0145f028b902888", + "0x8120c110287f028b90285a028bf01481028b90280a0288d01483028b902805", + "0x1c040b9028190282001419028b9028930282201493028b90280d0289f0147f", + "0x508022040b90289f028200149f028b90280529005014b90281c028230141d", + "0xa29c052900a2e40a0800a2940508c0a2e40a0740a29405014b90282202823", + "0x8d028c1014052e40a01410014053cc052e41029023040aa01423028b902823", + "0xa7028b9028a70282f014a7028b902805308052940a2e40a0142c014052e40a", + "0x2c028b9028aa2ac100cc052ac0a2e40a014a6014aa028b9028a7294100c405", + "0x50c40a2e40a0280a234050bc0a2e40a0140a044052a40a2e40a0b00a30c05", + "0xd02835028b9028a9028c401433028b902811028a2014a6028b902810028a3", + "0xb90280a0288d01447028b90280502811014052e40a01410014350cca60c42f", + "0xa2e40a2340a0e0051040a2e40a0440a288050f40a2e40a0400a28c051000a", + "0x44028b904048028390144828437288a3034b9028381043d10047034c501438", + "0x52e40a1280a244051282a040b902844028c6014052e40a0141001439028f4", + "0x52580a2e40a1300a2f4051300a2e40a2802a040c7014a0028b90280516005", + "0xa201491028b902837028a301494028b9028a20288d0144e028b9028a302811", + "0xa0141001452240912504e0340a1480a2e40a2580a310052400a2e40a2840a", + "0xa2e40a2880a2340522c0a2e40a28c0a044051500a2e40a0e40a30c05014b9", + "0x58028b902854028c40145f028b9028a1028a201488028b902837028a301456", + "0xa0340a120050340a2e40a014a1014052e40a014520145817c881588b0340a", + "0x5014b902805040050741c040f506493040b90400d02805044470140d028b9", + "0xa3d8052e41027c0a3240524c0a2e40a24c0a0440527c8d040b90288d028c8", + "0x10330050800a2e40a0440a32c05014b90288d028ca014052e40a0141001422", + "0xa234052940a2e40a24c0a044052900a2e40a08c0a3340508c0a2e40a08010", + "0x5014b902805040052a8a729411028aa028b9028a4028ce014a7028b902819", + "0xd10142c2ac102e40a2a40a340052a40a2e40a0400a03405014b902822028cf", + "0x52980a2e40a0bc1104031014052e40a0141001431028f70bc0a2e4100b00a", + "0x8d014a1028b9028930281101435028b9028332341034c050cc0a2e40a014d2", + "0xa0bc051000a2e40a2980a1f80511c0a2e40a2ac0a034051200a2e40a0640a", + "0xb9040370287201437288a3044b90283d10047120a10347d0143d028b902835", + "0x3911010330050e444040b90284102862014052e40a0141001438028f81040a", + "0xa2880a234052800a2e40a28c0a044051280a2e40a0a80a334050a80a2e40a", + "0xa35005014b902805040052584c2801102896028b90284a028ce0144c028b9", + "0x4e028ce01491028b9028a20288d01494028b9028a3028110144e028b902838", + "0xa28005014b90288d028ca014052e40a0141001490244940440a2400a2e40a", + "0x54028cd01454028b9028522ac10330051480a2e40a0c40a35405014b902811", + "0xa22c0a338052200a2e40a0640a234051580a2e40a24c0a0440522c0a2e40a", + "0x11028a0014052e40a2340a32805014b9028050400517c88158110285f028b9", + "0x51680a2e40a0149401458028b9028050b005014b902810028ab014052e40a", + "0x3301481028b9028052980520c0a2e40a16858040310145a028b90285a0282f", + "0x8d0147d028b90281c028110147e028b90287f028d40147f028b90288320410", + "0xb90280a0288d014621c87d0440a1880a2e40a1f80a338051c80a2e40a0740a", + "0x19028d60141924c0d044b90281d070102f0050740a2e40a0440a288050700a", + "0x53600508c20040b90288d028d7014052e40a0141001422028f927c0a2e410", + "0xa0400a28c050bc0a2e40a0340a234052a40a2e40a0140a044052900a2e40a", + "0xb9028a40282f01433028b90282302838014a6028b902893028a201431028b9", + "0xb90402c028da0142c2acaa29ca5034b9028350cca60c42f2a493364050d40a", + "0xb902837028dc01437028b9028a3028db014052e40a01410014a2028fa28c0a", + "0x40040b902847028dc01447028b90280537405014b9028a1028ca0144828410", + "0x50e00a2e40a0f40a1fc051040a2e40a1200a1fc05014b902840028ca0143d", + "0xa3ec052e4101100a324051100a2e40a1100a0bc051100a2e40a0e041040d3", + "0xa044051280a2e40a014d80142a028b90289f028de014052e40a0141001439", + "0xab028a201452028b9028aa028a301490028b9028a70288d01491028b9028a5", + "0xa0a80a37c051580a2e40a1280a0bc0522c0a2e40a0800a0e0051500a2e40a", + "0xd2e40a2205622c541489024419384052200a2e40a2200a380052202a040b9", + "0xa31805014b902805040051600a3f05f028b904094028390149413896130a0", + "0xa2800a044052040a2e40a014e2014052e40a20c0a2440520c5a040b90285f", + "0xb90284e028a20146b028b902896028a30146e028b90284c0288d01464028b9", + "0x102e40a0a80a37c053000a2e40a2040a0bc052fc0a2e40a1680a0e0050000a", + "0x7e1fc0d2e40a2f8c02fc001ac6e19019384052f80a2e40a2f80a380052f82a", + "0xa3040a31805014b902805040053080a3f4c1028b90406202839014621c87d", + "0xc6028b902805390053140a2e40a014e3014052e40a3100a24405310c3040b9", + "0x53340a2e40a1f40a28c053300a2e40a1f80a2340532c0a2e40a1fc0a04405", + "0x2f014d0028b9028c50282f014cf028b9028c302838014ce028b902872028a2", + "0x5328c9320bd31c0d2e40a344d033cce334cc32c192ec053440a2e40a3180a", + "0xd5350102e40a3480a31805014b9028050400534c0a3f8d2028b9040ca02839", + "0xc702811014d6028b902805360052f00a2e40a014e4014052e40a3540a24405", + "0xa3240a288053780a2e40a3200a28c053740a2e40a2f40a234053700a2e40a", + "0xb9028d60282f014e1028b9028bc0282f014e0028b9028d402838014df028b9", + "0x1036c0a0e40536cda364d835c0d2e40a388e1380df378dd370192ec053880a", + "0xe502891014e52ec102e40a38c0a31805014b902805040053900a3fce3028b9", + "0xec028b9028d702811014e7028b902805360053980a2e40a014d8014052e40a", + "0x54040a2e40a3680a288054000a2e40a3640a28c053b40a2e40a3600a23405", + "0xbb01504028b9028e70282f01503028b9028e60282f01502028b9028bb02838", + "0x1064140a2e4102e80a0e4052e8eb3a8e93a00d2e40a4110340901400ed3b019", + "0x5014b9029090289101509420102e40a4140a31805014b9028050400541c0a", + "0xe90288d0150c028b9028e8028110150b028b902805390054280a2e40a014e5", + "0xa4200a0e00543c0a2e40a3ac0a288054380a2e40a3a80a28c054340a2e40a", + "0x10e4350c064bb01511028b90290b0282f01510028b90290a0282f014ee028b9", + "0x10015190291845c0a2e4104580a0e40545915451134480d2e40a445103b90f", + "0xb90280539805014b90291a028910151a3bc102e40a45c0a31805014b902805", + "0x11e028b9029130288d0151d028b902912028110151c028b9028053900546c0a", + "0x54840a2e40a3bc0a0e0054800a2e40a4540a2880547c0a2e40a4500a28c05", + "0x123489214811f4791d064bb01523028b90291c0282f01522028b90291b0282f", + "0x52e40a014100152b0292a4a40a2e4104a00a0e4054a127499254900d2e40a", + "0xd80152e028b90280538805014b90292d028910152d4b0102e40a4a40a31805", + "0x126028a3014f2028b9029250288d01530028b902924028110152f028b902805", + "0xa4b80a0bc054cc0a2e40a4b00a0e0054c80a2e40a49c0a288054c40a2e40a", + "0x136034b9029354d1334c9313c930064bb01535028b90292f0282f01534028b9", + "0x13b028c6014052e40a014100153d0293c4ec0a2e4104e80a0e4054e9394e137", + "0xb902936028110153f028b90280539c05014b90293e028910153e3c4102e40a", + "0xa2e40a4e40a288055080a2e40a4e00a28c055040a2e40a4dc0a234055000a", + "0x146028b90282a028e001545028b90293f0282f01544028b9028f10283801543", + "0xa2e4105280a0e405528f05254851c0d2e40a5194551143509415001938405", + "0xb90294f028910154f538102e40a52c0a31805014b902805040055340a5314b", + "0x8d01552028b9029470281101551028b90280539c055400a2e40a014e701405", + "0xa0e0055540a2e40a3c00a288055500a2e40a5240a28c0554c0a2e40a5200a", + "0x152064bb01558028b9029510282f01557028b9029500282f01556028b90294e", + "0x1600295f5780a2e4105740a0e4055755c56d5a5640d2e40a561575595555153", + "0x53a005014b9029620289101562584102e40a5780a31805014b90280504005", + "0xb90295a0288d01565028b9029590281101564028b90280539c0558c0a2e40a", + "0xa2e40a5840a0e0055a00a2e40a5700a2880559c0a2e40a56c0a28c055980a", + "0x1695a16759965064bb0156b028b9029640282f0156a028b9029630282f01569", + "0xa0141001572029715c00a2e4105bc0a0e4055bcf35b96d5b00d2e40a5ad6a", + "0x175028b90280516005014b90297402891015745cc102e40a5c00a31805014b9", + "0x178028b90296c0281101577028b902976028bd01576028b9029755cc1031c05", + "0x55ec0a2e40a3cc0a288055e80a2e40a5b80a28c055e40a2e40a5b40a23405", + "0xa5c80a30c05014b902805040053d17b5e9795e00d028f4028b902977028c4", + "0xb90296e028a30157e028b90296d0288d0157d028b90296c028110157c028b9", + "0x1816017f5f97d0340a6040a2e40a5f00a310056000a2e40a3cc0a288055fc0a", + "0xa2340560c0a2e40a5640a044056080a2e40a5800a30c05014b90280504005", + "0x182028c401585028b90295c028a201466028b90295b028a301584028b90295a", + "0x187028b90294d028c3014052e40a014100158661466611830340a6180a2e40a", + "0x56280a2e40a5240a28c056240a2e40a5200a234056200a2e40a51c0a04405", + "0x5040056318b629896200d0298c028b902987028c40158b028b9028f0028a2", + "0xa2e40a4d80a044056340a2e40a4f40a30c05014b90282a028e9014052e40a", + "0x191028b902939028a201590028b902938028a30158f028b9029370288d0158e", + "0x2a028e9014052e40a01410015926459063d8e0340a6480a2e40a6340a31005", + "0xb9029250288d01593028b90292402811014f6028b90292b028c3014052e40a", + "0xa2e40a3d80a310056580a2e40a49c0a288056540a2e40a4980a28c056500a", + "0x119028c3014052e40a0a80a3a405014b9028050400565d966559464c0d02997", + "0xa4500a28c056680a2e40a44c0a234056640a2e40a4480a044056600a2e40a", + "0x19c66d9a6640d0299d028b902998028c40159c028b902915028a20159b028b9", + "0xa044056780a2e40a41c0a30c05014b90282a028e9014052e40a014100159d", + "0xeb028a2015a1028b9028ea028a3015a0028b9028e90288d0159f028b9028e8", + "0x52e40a01410015a3689a16819f0340a68c0a2e40a6780a310056880a2e40a", + "0x8d015a5028b9028d702811015a4028b9028e4028c3014052e40a0a80a3a405", + "0xa310056a00a2e40a3680a2880569c0a2e40a3640a28c056980a2e40a3600a", + "0x52e40a0a80a3a405014b902805040056a5a869da66940d029a9028b9029a4", + "0x56ac0a2e40a2f40a234056a80a2e40a31c0a044053e00a2e40a34c0a30c05", + "0xd029ae028b9028f8028c4015ad028b9028c9028a2015ac028b9028c8028a3", + "0xa2e40a3080a30c05014b90282a028e9014052e40a01410015ae6b5ac6adaa", + "0x1b1028b90287d028a3015b0028b90287e0288d015af028b90287f02811014f7", + "0x10015b36c9b16c1af0340a6cc0a2e40a3dc0a310056c80a2e40a1c80a28805", + "0xb9028a002811015b4028b902858028c3014052e40a0a80a3a405014b902805", + "0xa2e40a1380a288056dc0a2e40a2580a28c056d80a2e40a1300a234056d40a", + "0xa33c05014b902805040056e0f56ddb66d40d029b8028b9029b4028c4014f5", + "0x1b9028b9028050b005014b90289f028ea014052e40a0800a30405014b902839", + "0x56ec0a2e40a6e9b904031015ba028b9029ba0282f015ba028b9028053ac05", + "0x11015be028b9029bd028c3015bd028b9029bb6f0100cc056f00a2e40a014a6", + "0xa288057040a2e40a2a80a28c057000a2e40a29c0a234056fc0a2e40a2940a", + "0xb9028050400570dc2705c06fc0d029c3028b9029be028c4015c2028b9028ab", + "0x11015c4028b9028a2028c3014052e40a27c0a3a805014b902820028c101405", + "0xa2880571c0a2e40a2a80a28c057180a2e40a29c0a234057140a2e40a2940a", + "0xb90280504005725c871dc67140d029c9028b9029c4028c4015c8028b9028ab", + "0x572c0a2e40a0140a044057280a2e40a0880a30c05014b90288d028c101405", + "0xc4015ce028b902893028a2015cd028b902810028a3015cc028b90280d0288d", + "0xa028540140a028b9028050289f015cf739cd731cb0340a73c0a2e40a7280a", + "0xa158050340a2e40a0440a22c05014b902805040052340a74011040102e410", + "0x52e40a01410014057440a0145f01419028b90280d0288801493028b902810", + "0x8801493028b90288d028560141d028b90281c0285a0141c028b90280516005", + "0xa20c0527c0a2e40a27c0a0340527c0a2e40a24c0a130050640a2e40a0740a", + "0xa1fc0508c0a2e40a0880a20405014b902805040050800a74822028b904019", + "0xa5028ec014a7028b90289f0280d014a5028b9028a4028ba014a4028b902823", + "0xa01458014052e40a0800a24405014b902805040052a8a70400a2a80a2e40a", + "0xb90282c028ec014a9028b90289f0280d0142c028b9028ab028ed014ab028b9", + "0x104000524c0a2e40a0280a288050340a2e40a0140a234050bca90400a0bc0a", + "0x52e40a014100141c029d30640a2e4102340a4040523411040112e40a24c0d", + "0x200880d2e40a27c0a4100527c0a2e40a0740a40c050740a2e40a0640a40805", + "0x5014b9028a4028e9014052e40a0800a41c05014b90282202905014a529023", + "0xa234052a80a2e40a29c0a4240529c0a2e40a08c0a42005014b9028a5028ca", + "0x2c2ac11028a9028b9028aa0290a0142c028b902811028a2014ab028b902810", + "0xa201431028b9028100288d0142f028b90281c0290b014052e40a01410014a9", + "0xb90288d0291201433298310440a0cc0a2e40a0bc0a428052980a2e40a0440a", + "0xa2e40a0280a2340508c0a2e40a0140a04405014b902819029130141924c10", + "0xaa028b90289302914014a7028b902811028a2014a5028b902810028a3014a4", + "0x200889f0741c034b9028ab2a8a7294a408c93454052ac0a2e40a0340a0bc05", + "0x2f028b90282c028db014052e40a01410014a9029d40b00a2e4100800a36805", + "0x50cc0a2e40a0700a044052980a2e40a0c40a430050c40a2e40a0bc0a45805", + "0x10d014a2028b902822028a2014a3028b90289f028a301435028b90281d0288d", + "0xb9028a90290e014052e40a0141001437288a30d4330340a0dc0a2e40a2980a", + "0xa2e40a27c0a28c0511c0a2e40a0740a234051200a2e40a0700a044052840a", + "0x51043d100471200d02841028b9028a10290d0143d028b902822028a201440", + "0x52940a2e40a0280a234052900a2e40a0140a0440507019040b90288d028d7", + "0xc8014ab028b90281c02838014aa028b902811028a2014a7028b902810028a3", + "0x52a493040b902893028df0142c028b90282c0282f0142c034102e40a0340a", + "0x230802227c1d034b9028a90b0ab2a8a7294a40650f014a9028b9028a9028e0", + "0xa6028b90282f02910014052e40a0141001431029d50bc0a2e41008c0a3b805", + "0x5014b90283302891014052e40a0141001435029d60cc0a2e4102980a44405", + "0x93040b902893028df01437034102e40a0340a32005288a3040b90281902912", + "0x40028b9028470291901447028b902805160051200a2e40a2843704117014a1", + "0x52800a2e40a0880a28c051280a2e40a27c0a234050a80a2e40a0740a04405", + "0x11b0144e028b9028480291a01496028b9028a2028ef0144c028b902820028a2", + "0x50e4440e0410f40d2e40a2504e2584c2804a0a819470052500a2e40a1000a", + "0x51580a2e40a1040a23405014b902805040052400a75c91028b90403902924", + "0xa2e41022c0a3580522c54148112e40a22056040bc01488028b902844028a2", + "0xb9028830289101483168102e40a2440a49405014b902805040051600a7605f", + "0xa168a3040410147f028b90288124c0d0452601481028b90285f028de01405", + "0xb90287e028380146e028b902854028a201464028b9028520288d0147e028b9", + "0x39014621c87d044b9028001ac6e1908d4a0050000a2e40a1fc0a49c051ac0a", + "0x5304be040b9028bf028c6014052e40a01410014c0029d92fc0a2e4101880a", + "0xa28c0530c0a2e40a1f40a234053080a2e40a0f40a04405014b9028c102891", + "0xa0145f014c6028b9028be02838014c5028b902872028a2014c4028b902838", + "0x52f40a2e40a0f40a0440531c0a2e40a3000a30c05014b90280504005015da", + "0xc4014ca028b902872028a2014c9028b902838028a3014c8028b90287d0288d", + "0xb9028a30291d014052e40a01410014cb328c9320bd0340a32c0a2e40a31c0a", + "0xa30c05014b902893028e9014052e40a0340a32805014b9028910291e01405", + "0x38028a3014ce028b9028520288d014cd028b90283d02811014cc028b902858", + "0xcf338cd0340a3440a2e40a3300a310053400a2e40a1500a2880533c0a2e40a", + "0xa3a405014b90280d028ca014052e40a28c0a47405014b90280504005344d0", + "0xa1040a2340534c0a2e40a0f40a044053480a2e40a2400a30c05014b902893", + "0xb9028d2028c4014bc028b902844028a2014d5028b902838028a3014d4028b9", + "0xa3a405014b90283502891014052e40a01410014d62f0d5350d30340a3580a", + "0xb90289f0288d014c2028b90281d02811014052e40a0340a32805014b902893", + "0xa2e40a0640a0e0053140a2e40a0800a288053100a2e40a0880a28c0530c0a", + "0xd9028b9028d8028bd014d8028b9028d73181031c0535c0a2e40a01458014c6", + "0x53700a2e40a3100a28c0536c0a2e40a30c0a234053680a2e40a3080a04405", + "0x504005378dd370db3680d028de028b9028d9028c4014dd028b9028c5028a2", + "0x5014b902819028c1014052e40a0340a32805014b902893028e9014052e40a", + "0xa3014e1028b90289f0288d014e0028b90281d02811014df028b902831028c3", + "0xe00340a3900a2e40a37c0a3100538c0a2e40a0800a288053880a2e40a0880a", + "0xa0288d014a4028b902805028110141c064102e40a2340a35c05390e3388e1", + "0xa0700a0e0052a80a2e40a0440a2880529c0a2e40a0400a28c052940a2e40a", + "0xa529093364050b00a2e40a0b00a0bc050b00d040b90280d028c8014ab028b9", + "0x100142f029db2a40a2e41008c0a3680508c200889f0740d2e40a0b0ab2a8a7", + "0x9f0288d014a1028b90281d02811014a60c4102e40a0640a44805014b902805", + "0xa0c40a450051000a2e40a0800a2880511c0a2e40a0880a28c051200a2e40a", + "0xa24c0a320051040a2e40a1040a0bc051040d040b90280d028c80143d028b9", + "0xd2e40a0e0410f44011c482841947c050e00a2e40a0e00a0bc050e093040b9", + "0xa36c05014b902805040050e40a77044028b9040370292001437288a30d433", + "0xd04522014052e40a2800a244052804a040b902844029210142a028b9028a9", + "0xa201490028b9028350288d01496028b9028a612810104051300a2e40a24c2a", + "0x8d4a40522c0a2e40a1300a48c051500a2e40a2580a0e0051480a2e40a2880a", + "0xa0141001488029dd1580a2e4102440a0e40524494138112e40a22c5414890", + "0x5a028b90280516005014b902858028910145817c102e40a1580a31805014b9", + "0x7f028b9028330281101481028b902883028bd01483028b90285a17c1031c05", + "0x51c80a2e40a2500a288051f40a2e40a28c0a28c051f80a2e40a1380a23405", + "0xa2200a30c05014b90280504005188721f47e1fc0d02862028b902881028c4", + "0xb9028a3028a30146b028b90284e0288d0146e028b9028330281101464028b9", + "0xc02fc001ac6e0340a3000a2e40a1900a310052fc0a2e40a2500a288050000a", + "0xa24c0a32805014b9028a602913014052e40a0340a32805014b90280504005", + "0xc1028b90283302811014be028b902839028c3014052e40a2a40a4ac05014b9", + "0x53100a2e40a2880a2880530c0a2e40a28c0a28c053080a2e40a0d40a23405", + "0xa24c0a32805014b90280504005314c430cc23040d028c5028b9028be028c4", + "0x53180a2e40a0bc0a30c05014b902819028c1014052e40a0340a32805014b9", + "0xa2014c8028b902822028a3014bd028b90289f0288d014c7028b90281d02811", + "0x50412c014ca324c82f4c70340a3280a2e40a3180a310053240a2e40a0800a", + "0xa2e40a2340a4b405014b9028050400506493034117788d04410044b90400a", + "0x22028b90281c0292e0149f028b902811028a20141d028b9028100288d0141c", + "0xa0340a234050800a2e40a0640a4bc05014b90280504005015df0280517c05", + "0xb9028220293601422028b9028200292e0149f028b902893028a20141d028b9", + "0xa01410014a7029e02940a2e41008c0a4040508c0a2e40a2900a4dc052900a", + "0xa2e40a2ac0a4e4052ac0a2e40a2a80a4e0052a80a2e40a2940a40805014b9", + "0x31028b90282c0293a0142f028b90289f028a2014a9028b90281d0288d0142c", + "0xb90281d0288d014a6028b9028a702930014052e40a01410014310bca90440a", + "0x11014a30d4330440a28c0a2e40a2980a4e8050d40a2e40a27c0a288050cc0a", + "0xa0bc050880a2e40a2340a4500527c0a2e40a0400a28c050740a2e40a0140a", + "0xa2e40a0700a4c4050701924c112e40a0802227c1d234f201420028b90280d", + "0xb904023290110288d4c8052900a2e40a2900a29c052900a2e40a014a401423", + "0x8d0142f028b9028aa02933014052e40a01410014a90b0ab045e12a8a729411", + "0x517c050cc0a2e40a0bc0a4d0052980a2e40a29c0a288050c40a2e40a2940a", + "0x31028b9028ab0288d01435028b9028a902935014052e40a01410014057880a", + "0x52880a2e40a0cc0a4ec050cc0a2e40a0d40a4d0052980a2e40a0b00a28805", + "0x5014b902805040052840a78c37028b9040a3028da014a3028b9028a20293d", + "0x1101440028b9028470290c01447028b9028480291601448028b902837028db", + "0xa288050e00a2e40a0640a28c051040a2e40a0c40a234050f40a2e40a24c0a", + "0xb902805040050e4440e0410f40d02839028b9028400290d01444028b9028a6", + "0xa0028b9028310288d0144a028b902893028110142a028b9028a10290e01405", + "0xa1380a2e40a0a80a434052580a2e40a2980a288051300a2e40a0640a28c05", + "0x1045c05014b9028190291d0141c064102e40a2340a4480513896130a01280d", + "0xa28c0529c0a2e40a0280a234052940a2e40a0140a044050740a2e40a24c0d", + "0x1d0291a0142c028b90281c028ef014ab028b902811028a2014aa028b902810", + "0xa4028ee014a408c200889f034b9028a90b0ab2a8a7294933c4052a40a2e40a", + "0xa60293e014a6028b90282f02910014052e40a0141001431029e40bc0a2e410", + "0xa0880a2340528c0a2e40a27c0a044050d40a2e40a0cc0a4fc050cc0a2e40a", + "0xb90283502947014a1028b902823028a201437028b902820028a3014a2028b9", + "0x1101447028b90283102948014052e40a014100144828437288a30340a1200a", + "0xa288051040a2e40a0800a28c050f40a2e40a0880a234051000a2e40a27c0a", + "0xa2340a52405110381043d1000d02844028b9028470294701438028b902823", + "0xa0700a3bc0508c0a2e40a0400a28c050800a2e40a0140a0440507019040b9", + "0x50889f074112e40a294a408c20234f0014a5028b90280d0291a014a4028b9", + "0x91014052e40a01410014ab029e52a80a2e41024c0a4440529c0a2e40a014a4", + "0x1e60280517c052a40a2e40a0b00a0bc050b00a2e40a014dd014052e40a2a80a", + "0x2f0282f0142f028b90280534805014b9028ab02891014052e40a0141001405", + "0x110280d5280529c0a2e40a29c0a29c050c40a2e40a0880a4c4052a40a2e40a", + "0xa2e40a01458014052e40a01410014a228c35045e70cca6040b9040a90c4a7", + "0x47028b902833028a201448028b9028a60288d014a1028b9028370294001437", + "0xa2880a50805014b90280504005015e80280517c051000a2e40a2840a50405", + "0xb90283d0294101447028b9028a3028a201448028b9028350288d0143d028b9", + "0xa2e4101040a514051040a2e40a0e00a510050e00a2e40a1000a50c051000a", + "0xb90282a0641052c050a80a2e40a1100a51805014b902805040050e40a7a444", + "0xa2e40a1200a234051300a2e40a0740a044052800a2e40a1280a534051280a", + "0x91028b9028a00294e01494028b902847028a20144e028b90289f028a301496", + "0xa0e40a53c05014b90281902913014052e40a01410014912504e2584c0340a", + "0xb90289f028a301454028b9028480288d01452028b90281d0281101490028b9", + "0x881588b150520340a2200a2e40a2400a538051580a2e40a11c0a2880522c0a", + "0x2c01493028b9028050b0052340a2e40a0340a540050340a2e40a0440a49c05", + "0x1d0295a014052e40a0700a564050741c040b90288d0295101419028b902805", + "0xa408c1156c052940a2e40a0640a1f8052900a2e40a24c0a1f80508c0a2e40a", + "0xa0014aa29c102e40a27c0a12805014b90282002891014200889f044b9028a5", + "0xa280052a42c040b9028220284a014ab028b9028aa0284c014052e40a29c0a", + "0xa0bc0a034052ac0a2e40a2ac0a034050bc0a2e40a2a40a13005014b90282c", + "0xb9028050400528c350cc117a8a60c4102e4100bcab028052355c0142f028b9", + "0x52840a2e40a0c40a234050dc0a2e40a2880a500052880a2e40a0145801405", + "0xa01410014057ac0a0145f01447028b9028370294101448028b9028a6028a2", + "0xa2e40a0d40a288052840a2e40a0cc0a234051000a2e40a28c0a50805014b9", + "0x3d028b9028410294401441028b9028470294301447028b9028400294101448", + "0x39028b90283802946014052e40a0141001444029ec0e00a2e4100f40a51405", + "0xa0028b9028a10288d0144a028b90282a028bd0142a028b9028390401031c05", + "0xa0141001496130a00440a2580a2e40a1280a310051300a2e40a1200a28805", + "0x94028b9028a10288d0144e028b902844028c3014052e40a0400a30405014b9", + "0x8d0295d01490244940440a2400a2e40a1380a310052440a2e40a1200a28805", + "0x1c0291401423028b902810028a301420028b902805028110141c064102e40a", + "0x2227c1d044b9028a5290230808d3c8052940a2e40a0340a0bc052900a2e40a", + "0x14a014aa028b9028aa028a7014aa028b9028052900529c0a2e40a0880a4c405", + "0x516005014b902805040050c42f2a4117b42c2ac102e41024ca72a8110280d", + "0xa0b00a288050d40a2e40a2ac0a234050cc0a2e40a2980a500052980a2e40a", + "0x142014052e40a01410014057b80a0145f014a2028b90283302941014a3028b9", + "0xa5040528c0a2e40a0bc0a288050d40a2e40a2a40a234050dc0a2e40a0c40a", + "0xa102945014a1028b9028480294401448028b9028a202943014a2028b902837", + "0x19041520143d028b90284702946014052e40a0141001440029ef11c0a2e410", + "0x350288d01444028b90281d0281101438028b9028410295301441028b90283d", + "0xa0e00a550051280a2e40a28c0a288050a80a2e40a27c0a28c050e40a2e40a", + "0x155014052e40a0640a47405014b902805040052804a0a8391100d028a0028b9", + "0xa28c051380a2e40a0d40a234052580a2e40a0740a044051300a2e40a1000a", + "0x4e2580d02890028b90284c0295401491028b9028a3028a201494028b90289f", + "0xa2e40a0142c0148d028b90280d029560140d028b902811029230149024494", + "0x5014b90281c029590141d070102e40a2340a544050640a2e40a0142c01493", + "0x15b014a5028b9028190287e014a4028b9028930287e01423028b90281d0295a", + "0xa7040b90289f0284a014052e40a0800a244050802227c112e40a294a408c11", + "0xa90b0102e40a0880a128052ac0a2e40a2a80a13005014b9028a7028a0014aa", + "0xd014ab028b9028ab0280d0142f028b9028a90284c014052e40a0b00a28005", + "0x10014a30d433045f029831040b90402f2ac0a0148d570050bc0a2e40a0bc0a", + "0xb9028310288d01437028b9028a202940014a2028b90280516005014b902805", + "0x5015f10280517c0511c0a2e40a0dc0a504051200a2e40a2980a288052840a", + "0x35028a2014a1028b9028330288d01440028b9028a302942014052e40a01410", + "0xa1040a510051040a2e40a11c0a50c0511c0a2e40a1000a504051200a2e40a", + "0xa0e00a51805014b902805040051100a7c838028b90403d029450143d028b9", + "0xa2840a234051280a2e40a0a80a2f4050a80a2e40a0e410040c701439028b9", + "0x52584c2801102896028b90284a028c40144c028b902848028a2014a0028b9", + "0xa2840a234051380a2e40a1100a30c05014b902810028c1014052e40a01410", + "0x5240912501102890028b90284e028c401491028b902848028a201494028b9", + "0x50440a2e40a0280a4e005014b902805040050400a7cc0a028b90400502957", + "0x5014b902805040050340a0280d028b90288d0293a0148d028b90281102939", + "0x13a0141c028b9028190293001419028b90281024c100cc0524c0a2e40a014a6", + "0x15e0148d028b90280556005014b9028100291d0141d0280a0740a2e40a0700a", + "0x115840524c0a2e40a24c0a0bc0524c0a2e40a0340a580050340a2e40a2340a", + "0x527c0a2e40a0740a580050740a2e40a0700a5780507019040b90281124c0a", + "0x23028b9028220281101420088102e40a27c05041620149f028b90289f0282f", + "0x502964014a5290230440a2940a2e40a0800a58c052900a2e40a0640a28c05", + "0x110290c01411028b90280a02916014052e40a0141001410029f40280a2e410", + "0xa014a6014052e40a014100140d0280a0340a2e40a2340a434052340a2e40a", + "0xa0700a434050700a2e40a0640a438050640a2e40a040930403301493028b9", + "0xa3bc0527c0a2e40a0400a28c050740a2e40a0140a044050740a0281d028b9", + "0x1924c112e40a0802227c1d234f001420028b90280d0291a01422028b90288d", + "0x52ac0a2e40a0440a288052a80a2e40a0280a2340508c0a2e40a014a40141c", + "0x112e40a2a42c2acaa2356c014a9028b90281c029630142c028b902823028a7", + "0xb90402f028ee0142f028b9028310296e01431028b9028a70296d014a7294a4", + "0xb9028350293e01435028b9028a602910014052e40a0141001433029f52980a", + "0xa2e40a2900a234050dc0a2e40a24c0a044052880a2e40a28c0a4fc0528c0a", + "0x40028b9028a20294701447028b9028a5028a201448028b902819028a3014a1", + "0x93028110143d028b90283302948014052e40a014100144011c48284370340a", + "0xa2940a288051100a2e40a0640a28c050e00a2e40a2900a234051040a2e40a", + "0x52e40a0400a44c050a839110381040d0282a028b90283d0294701439028b9", + "0x50640a2e40a24c0a5780524c0a2e40a0156f0140d234102e40a0440a3cc05", + "0x1d040b90288d0700a045610141c028b90281c0282f0141c028b90281902960", + "0x23028b9028200296001420028b90289f0295e01422028b90280d029650149f", + "0xb9028a50295e014a5290102e40a08823074115840508c0a2e40a08c0a0bc05", + "0xb9028aa01410588052a80a2e40a2a80a0bc052a80a2e40a29c0a5800529c0a", + "0xb90282c029630142f028b9028a4028a3014a9028b9028ab028110142c2ac10", + "0x5014b902805040050400a7d80a028b90400502966014310bca90440a0c40a", + "0xa0280d028b90288d029690148d028b9028110296801411028b90280a02967", + "0x16a01419028b90281024c100cc0524c0a2e40a014a6014052e40a014100140d", + "0xa028b9028050296b0141d0280a0740a2e40a0700a5a4050700a2e40a0640a", + "0x5040052340a7dc11028b90400502970014100280a0400a2e40a0280a56805", + "0xb90280d028100c4050340a2e40a0340a0bc050340a2e40a01572014052e40a", + "0xa2e40a0400a1f8050880a2e40a24c0a1f80527c0a2e40a0440a49c0524c0a", + "0xa0640a1f805014b90281d028910141d07019044b9028200889f0457301420", + "0x174014052e40a01410014057e00a0145f014a4028b90281c0287e01423028b9", + "0xa48c0529c0a2e40a2940a04031014a5028b9028a50282f014a5028b902805", + "0xa90457501431028b9028100287e0142f028b9028a70287e014a9028b90288d", + "0x7e01423028b9028aa0287e014052e40a0b00a244050b0ab2a8112e40a0c42f", + "0xa40297601433028b90282302976014a6028b902805160052900a2e40a2ac0a", + "0xa028b90280502978014a30d4330440a28c0a2e40a2980a5dc050d40a2e40a", + "0x1002805235320148d028b90281102931014100280a0400a2e40a0280a56805", + "0x102e40a0640a37005014b9028050400527c1d070117e41924c0d044b90408d", + "0xa5290102e40a08c0a3700508c0a2e40a014dd014052e40a0880a3280508022", + "0x52acaa040b9028a7028dc014a7028b9028200287f014052e40a2900a32805", + "0xca0142f2a4102e40a0b00a370050b00a2e40a2940a1fc05014b9028aa028ca", + "0x310282f014a6028b90282f0287f01431028b9028ab0287f014052e40a2a40a", + "0xd0288d01433028b9028330282f01433028b9028a60c41034c050c40a2e40a", + "0x5040050d40a7e8052e4100cc0a3240524c0a2e40a24c0a288050340a2e40a", + "0xa2e40a2880a46c052880a2e40a28c0a4640528c0a2e40a01458014052e40a", + "0xb90280516005014b902835028cf014052e40a01410014057ec0a0145f01437", + "0xa2e40a0dc0a5e8050dc0a2e40a1200a46c051200a2e40a2840a5e4052840a", + "0x41028b902893028a20143d028b90280d0288d01440028b9028470297b01447", + "0xb90289f0297c014052e40a01410014381043d0440a0e00a2e40a1000a3d005", + "0xa2e40a1100a3d0050a80a2e40a0740a288050e40a2e40a0700a234051100a", + "0x13e014052e40a0141001410029fc0280a2e4100140a5f4051282a0e4110284a", + "0xd0280a0340a2e40a2340a51c052340a2e40a0440a4fc050440a2e40a0280a", + "0xa520050640a2e40a040930403301493028b90280529805014b90280504005", + "0x11014102e40a0140a5f8050740a0281d028b90281c029470141c028b902819", + "0x5014b902893028e9014052e40a0340a3a40524c0d234112e40a0440a5fc05", + "0x1c064102e40a27c1d041800149f028b9028100287e0141d028b90288d0282f", + "0x23080112e40a0880a5fc0508805040b9028050297e014052e40a0700a24405", + "0x7e014aa028b902823028e0014052e40a2900a3a405014b902820028ca014a4", + "0x17f014052e40a29c0a2440529ca5040b9028ab2a810604052ac0a2e40a0640a", + "0xa38005014b9028a9028e9014052e40a0b00a328050bca90b0112e40a0140a", + "0x91014a60c4102e40a0d4330418101435028b9028a50287e01433028b90282f", + "0xa0c40a1f8052880a2e40a0280a1f80528c0a2e40a01458014052e40a2980a", + "0x11014102e40a0140a608052843728811028a1028b9028a30297701437028b9", + "0x5014b902893028ca014052e40a0340a3280524c0d234112e40a0440a60c05", + "0x1c064102e40a27c1d041800149f028b9028100287e0141d028b90288d0282f", + "0x23080112e40a0880a60c0508805040b90280502982014052e40a0700a24405", + "0x7e014aa028b9028230282f014052e40a2900a32805014b902820028ca014a4", + "0x183014052e40a29c0a2440529ca5040b9028ab2a810600052ac0a2e40a0640a", + "0xa0bc05014b9028a9028ca014052e40a0b00a328050bca90b0112e40a0140a", + "0x91014a60c4102e40a0d4330418001435028b9028a50287e01433028b90282f", + "0xa0c40a1f8052880a2e40a0280a1f80528c0a2e40a01458014052e40a2980a", + "0x50400a2e40a0140a1fc052843728811028a1028b9028a30297701437028b9", + "0x1770140d028b9028110287e0148d028b902805160050440a2e40a0400a04031", + "0xa2e40a0400a594050400a2e40a0140a6100524c0d0400a24c0a2e40a2340a", + "0x1c028b90280d0282f014052e40a2340a328050348d040b902811028dc01411", + "0x52e40a0640a2440506493040b90281d07010600050740a2e40a0280a1f805", + "0x1002820028b90289f0297701422028b9028930287e0149f028b90280516005", + "0x411ac0504405234110400a0147d1fc6b0147e034411fc6b0147e0344008022", + "0x110400a014831fc7e1ac05034411607f1f86b0149344c10028051b86b01411", + "0x581fc7e1ac0503583234110400a0148b1ac050440d044411ac050354d0348d", + "0x7f1ac111fc6b041fd01491104101040a7188d044100280520c7f1f86b0140d", + "0x197fc0d234110400a014961fc7e1ac050340d1607f1f86b014937f80a01494", + "0x7e1ac050660024c0d234110400a014831fc7e1ac0503419034581fc7e1ac05", + "0xa01fc6b0447f1ac10804930348d044100280520c7f1f86b0140d0340d1607f", + "0x5066030348d04410028052587f1f86b0140d0342f1fc7e1ac0524e0202805", + "0x7f1f86b01419810930348d04410028052847f1f86b0140d0640d1607f1f86b", + "0x7f1ac11070581fc6b2360524c0d234110400a014a31fc7e1ac050341028833", + "0x8d04410028052987f1f86b0140d0340d0bc7f1f86b01419818110400a01483", + "0x523609014a0028a902a08044100280520c7f1ac11074581fc6b2360724c0d", + "0xa20cc7f1f86b0149382c052580a29c0a828110400a014ab1f8050440d0bc7e", + "0x10028052ac7e01411288331f8052360c0348d04410028052847f1f86b0140d", + "0x100280502811044110441127c1183c0527c0a0700a838052900a2940a83411", + "0xa10288d02a1204410028052347f1ac112ac721fc6b236110149f0281d02a10", + "0x10028050281104411044110741185010028050281104411044110701184c05", + "0x217028050281104011064108580a0140a044100440d04215" + ], + "contract_class_version": "0.1.0", + "entry_points_by_type": { + "CONSTRUCTOR": [], + "EXTERNAL": [ + { + "selector": "0x3ea3b9a8522d36784cb325f9c7e2ec3c9f3e6d63031a6c6b8743cc22412f604", + "function_idx": 0 + } + ], + "L1_HANDLER": [] + }, + "abi": [ + { + "type": "impl", + "name": "EICInitializable", + "interface_name": "src::replaceability_interface::IEICInitializable" + }, + { + "type": "struct", + "name": "core::array::Span::", + "members": [ + { + "name": "snapshot", + "type": "@core::array::Array::" + } + ] + }, + { + "type": "interface", + "name": "src::replaceability_interface::IEICInitializable", + "items": [ + { + "type": "function", + "name": "eic_initialize", + "inputs": [ + { + "name": "eic_init_data", + "type": "core::array::Span::" + } + ], + "outputs": [], + "state_mutability": "external" + } + ] + }, + { + "type": "event", + "name": "src::access_control_interface::RoleGranted", + "kind": "struct", + "members": [ + { + "name": "role", + "type": "core::felt252", + "kind": "data" + }, + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + }, + { + "name": "sender", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "src::access_control_interface::RoleAdminChanged", + "kind": "struct", + "members": [ + { + "name": "role", + "type": "core::felt252", + "kind": "data" + }, + { + "name": "previous_admin_role", + "type": "core::felt252", + "kind": "data" + }, + { + "name": "new_admin_role", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "src::roles_init_eic::RolesExternalInitializer::Event", + "kind": "enum", + "variants": [ + { + "name": "RoleGranted", + "type": "src::access_control_interface::RoleGranted", + "kind": "nested" + }, + { + "name": "RoleAdminChanged", + "type": "src::access_control_interface::RoleAdminChanged", + "kind": "nested" + } + ] + } + ] +} diff --git a/scripts/artifacts/starknet/new_eth_bridge.casm.json b/scripts/artifacts/starknet/new_eth_bridge.casm.json new file mode 100644 index 000000000..c9be566a4 --- /dev/null +++ b/scripts/artifacts/starknet/new_eth_bridge.casm.json @@ -0,0 +1,33426 @@ +{ + "prime": "0x800000000000011000000000000000000000000000000000000000000000001", + "compiler_version": "2.1.0", + "bytecode": [ + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffd1ac", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x5b", + "0x4825800180007ffa", + "0x2e54", + "0x400280007ff97fff", + "0x48297ffc80007ffd", + "0x482680017ff98000", + "0x1", + "0x4824800180007ffe", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ffc7fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x5a19", + "0x482480017fff8000", + "0x5a18", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007ff7", + "0x0", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff77fff", + "0x10780017fff7fff", + "0x24", + "0x4824800180007ff7", + "0x0", + "0x400080007ff87fff", + "0x482480017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x1d16", + "0x20680017fff7ffd", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1d25", + "0x48127feb7fff8000", + "0x48127feb7fff8000", + "0x48127feb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017ff58000", + "0x1", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffd1ac", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x5b", + "0x4825800180007ffa", + "0x2e54", + "0x400280007ff97fff", + "0x48297ffc80007ffd", + "0x482680017ff98000", + "0x1", + "0x4824800180007ffe", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ffc7fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x59aa", + "0x482480017fff8000", + "0x59a9", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007ff7", + "0x0", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff77fff", + "0x10780017fff7fff", + "0x24", + "0x4824800180007ff7", + "0x0", + "0x400080007ff87fff", + "0x482480017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x1cc7", + "0x20680017fff7ffd", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1cd6", + "0x48127feb7fff8000", + "0x48127feb7fff8000", + "0x48127feb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017ff58000", + "0x1", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffe6c90", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x19370", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1ca0", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fbd7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x5934", + "0x482480017fff8000", + "0x5933", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fb9", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fb9", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1c86", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fb37fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fbf7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffe73b6", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x18c4a", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1cb1", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x58ab", + "0x482480017fff8000", + "0x58aa", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1cb6", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffe73b6", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x18c4a", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1cb2", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x5822", + "0x482480017fff8000", + "0x5821", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1cb7", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffe0ea8", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x1f158", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1b05", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fbd7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x5799", + "0x482480017fff8000", + "0x5798", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x4", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fb9", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fb9", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1c7f", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fb37fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fbf7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffe0ea8", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x1f158", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1a7c", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fbd7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x5710", + "0x482480017fff8000", + "0x570f", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x4", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fb9", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fb9", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1c7a", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fb37fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fbf7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0x100000000000000000000000000000000", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x4d", + "0x4825800180007ffa", + "0x0", + "0x400280007ff97fff", + "0x48297ffc80007ffd", + "0x482680017ff98000", + "0x1", + "0x4824800180007ffe", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ffc7fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x568e", + "0x482480017fff8000", + "0x568d", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007ff7", + "0x0", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff77fff", + "0x10780017fff7fff", + "0x16", + "0x4824800180007ff7", + "0x0", + "0x400080007ff87fff", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x2", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1c7f", + "0x482480017ff08000", + "0x1", + "0x48127ff67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017ff58000", + "0x1", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0x100000000000000000000000000000000", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x4d", + "0x4825800180007ffa", + "0x0", + "0x400280007ff97fff", + "0x48297ffc80007ffd", + "0x482680017ff98000", + "0x1", + "0x4824800180007ffe", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ffc7fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x562d", + "0x482480017fff8000", + "0x562c", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007ff7", + "0x0", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff77fff", + "0x10780017fff7fff", + "0x16", + "0x4824800180007ff7", + "0x0", + "0x400080007ff87fff", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x535441524b47415445", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1c1e", + "0x482480017ff08000", + "0x1", + "0x48127ff67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017ff58000", + "0x1", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffc144", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x77", + "0x4825800180007ffa", + "0x3ebc", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1a55", + "0x20680017fff7ffe", + "0x5d", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x55c5", + "0x482480017fff8000", + "0x55c4", + "0x480080007fff8000", + "0x480080007fff8000", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff07fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007fd7", + "0x400080007ff17fff", + "0x482480017ff18000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff17fff8000", + "0x1104800180018000", + "0x1bba", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1bcd", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fed8000", + "0x1", + "0x48127fd17fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffa542", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x77", + "0x4825800180007ffa", + "0x5abe", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x18a5", + "0x20680017fff7ffe", + "0x5d", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fbd7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x5539", + "0x482480017fff8000", + "0x5538", + "0x480080007fff8000", + "0x480080007fff8000", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fba", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff07fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007fba", + "0x400080007ff17fff", + "0x482480017ff18000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff17fff8000", + "0x1104800180018000", + "0x1b52", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1862", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fed8000", + "0x1", + "0x48127fb47fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fbf7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffd517a", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x7a", + "0x4825800180007ffa", + "0x2ae86", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1819", + "0x20680017fff7ffe", + "0x60", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fbd7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x54ad", + "0x482480017fff8000", + "0x54ac", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x4", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fb9", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x28", + "0x48307ffe80007fb9", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1ae0", + "0x20680017fff7ffd", + "0x13", + "0x40780017fff7fff", + "0x1", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x1b70", + "0x48127ff27fff8000", + "0x48127fef7fff8000", + "0x48127fef7fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fb37fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fbf7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffff78ace", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x8c", + "0x4825800180007ffa", + "0x87532", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x178a", + "0x20680017fff7ffe", + "0x72", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x1b1e", + "0x20680017fff7ffd", + "0x5c", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127f897fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x5417", + "0x482480017fff8000", + "0x5416", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0xb", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007f85", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x24", + "0x48307ffe80007f85", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fbc7fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0x1b4e", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f7f7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127f8b7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fbf7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffff91538", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0xa3", + "0x4825800180007ffa", + "0x6eac8", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x16e9", + "0x20680017fff7ffe", + "0x89", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x16e2", + "0x20680017fff7ffe", + "0x73", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x1a76", + "0x20680017fff7ffd", + "0x5d", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127f4d7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x536f", + "0x482480017fff8000", + "0x536e", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007f49", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x25", + "0x48307ffe80007f49", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127f807fff8000", + "0x48127fbb7fff8000", + "0x48127fed7fff8000", + "0x48127fed7fff8000", + "0x1104800180018000", + "0x1b4f", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f437fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202333", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127f4f7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127f837fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fbf7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffd6ca", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x58", + "0x4825800180007ffa", + "0x2936", + "0x400280007ff97fff", + "0x48297ffc80007ffd", + "0x482680017ff98000", + "0x1", + "0x4824800180007ffe", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ffc7fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x52cc", + "0x482480017fff8000", + "0x52cb", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007ff7", + "0x0", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff77fff", + "0x10780017fff7fff", + "0x21", + "0x4824800180007ff7", + "0x0", + "0x400080007ff87fff", + "0x482480017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x1c1d", + "0x20680017fff7ffd", + "0xe", + "0x40780017fff7fff", + "0x1", + "0x400080007fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x482480017ffa8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017ff58000", + "0x1", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffff0d12", + "0x400280007ff87fff", + "0x10780017fff7fff", + "0x8c", + "0x4825800180007ffa", + "0xf2ee", + "0x400280007ff87fff", + "0x482680017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1bf0", + "0x20680017fff7ff6", + "0x76", + "0x20680017fff7ff9", + "0x64", + "0x48307ff780007ff8", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127fef7fff8000", + "0x480a7ff97fff8000", + "0x48127fee7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x5255", + "0x482480017fff8000", + "0x5254", + "0x480080007fff8000", + "0x480080007fff8000", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fec", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fe97fff", + "0x10780017fff7fff", + "0x2c", + "0x48307ffe80007fec", + "0x400080007fea7fff", + "0x482480017fea8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x48127feb7fff8000", + "0x48127feb7fff8000", + "0x48127feb7fff8000", + "0x48127feb7fff8000", + "0x48127feb7fff8000", + "0x48127feb7fff8000", + "0x1104800180018000", + "0x1c32", + "0x20680017fff7ffd", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x400080007fff7ffe", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x48127ff57fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482480017fe68000", + "0x1", + "0x480a7ff97fff8000", + "0x48127fe57fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127ff17fff8000", + "0x480a7ff97fff8000", + "0x48127ff07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x48127ff37fff8000", + "0x480a7ff97fff8000", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482680017ff88000", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcba44", + "0x400280007ff87fff", + "0x10780017fff7fff", + "0x8c", + "0x4825800180007ffa", + "0x345bc", + "0x400280007ff87fff", + "0x482680017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1b4e", + "0x20680017fff7ff6", + "0x76", + "0x20680017fff7ff9", + "0x64", + "0x48307ff780007ff8", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127fef7fff8000", + "0x480a7ff97fff8000", + "0x48127fee7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x51b3", + "0x482480017fff8000", + "0x51b2", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x4", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007feb", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fe87fff", + "0x10780017fff7fff", + "0x2a", + "0x48307ffe80007feb", + "0x400080007fe97fff", + "0x482480017fe98000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x1104800180018000", + "0x1bc3", + "0x20680017fff7ffd", + "0xe", + "0x40780017fff7fff", + "0x1", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x48127ff57fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482480017fe58000", + "0x1", + "0x480a7ff97fff8000", + "0x48127fe47fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127ff17fff8000", + "0x480a7ff97fff8000", + "0x48127ff07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x48127ff37fff8000", + "0x480a7ff97fff8000", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482680017ff88000", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffca266", + "0x400280007ff87fff", + "0x10780017fff7fff", + "0x8c", + "0x4825800180007ffa", + "0x35d9a", + "0x400280007ff87fff", + "0x482680017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1aac", + "0x20680017fff7ff6", + "0x76", + "0x20680017fff7ff9", + "0x64", + "0x48307ff780007ff8", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127fef7fff8000", + "0x480a7ff97fff8000", + "0x48127fee7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x5111", + "0x482480017fff8000", + "0x5110", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x5", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007feb", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fe87fff", + "0x10780017fff7fff", + "0x2a", + "0x48307ffe80007feb", + "0x400080007fe97fff", + "0x482480017fe98000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x1104800180018000", + "0x1bd3", + "0x20680017fff7ffd", + "0xe", + "0x40780017fff7fff", + "0x1", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x48127ff57fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482480017fe58000", + "0x1", + "0x480a7ff97fff8000", + "0x48127fe47fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127ff17fff8000", + "0x480a7ff97fff8000", + "0x48127ff07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x48127ff37fff8000", + "0x480a7ff97fff8000", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482680017ff88000", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffa439a", + "0x400280007ff87fff", + "0x10780017fff7fff", + "0x8c", + "0x4825800180007ffa", + "0x5bc66", + "0x400280007ff87fff", + "0x482680017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1a0a", + "0x20680017fff7ff6", + "0x76", + "0x20680017fff7ff9", + "0x64", + "0x48307ff780007ff8", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127fef7fff8000", + "0x480a7ff97fff8000", + "0x48127fee7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x506f", + "0x482480017fff8000", + "0x506e", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x6", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007feb", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fe87fff", + "0x10780017fff7fff", + "0x2a", + "0x48307ffe80007feb", + "0x400080007fe97fff", + "0x482480017fe98000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x1104800180018000", + "0x1bcb", + "0x20680017fff7ffd", + "0xe", + "0x40780017fff7fff", + "0x1", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x48127ff57fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482480017fe58000", + "0x1", + "0x480a7ff97fff8000", + "0x48127fe47fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127ff17fff8000", + "0x480a7ff97fff8000", + "0x48127ff07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x48127ff37fff8000", + "0x480a7ff97fff8000", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482680017ff88000", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffb2d0", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x90", + "0x4825800180007ffa", + "0x4d30", + "0x400280007ff97fff", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1d47", + "0x482680017ff98000", + "0x1", + "0x20680017fff7ffd", + "0x76", + "0x48127fff7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x145a", + "0x20680017fff7ffe", + "0x60", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fca7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4fca", + "0x482480017fff8000", + "0x4fc9", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fc6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x28", + "0x48307ffe80007fc6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fd07fff8000", + "0x48127fef7fff8000", + "0x1104800180018000", + "0x1d2d", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1d41", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fc07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fcc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127feb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffcdce", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x77", + "0x4825800180007ffa", + "0x3232", + "0x400280007ff97fff", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1ca2", + "0x482680017ff98000", + "0x1", + "0x20680017fff7ffd", + "0x5d", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffa7fff8000", + "0x48127fe97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4f2c", + "0x482480017fff8000", + "0x4f2b", + "0x480080007fff8000", + "0x480080007fff8000", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fe6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff47fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007fe6", + "0x400080007ff57fff", + "0x482480017ff58000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1cbe", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1513", + "0x48127ff37fff8000", + "0x48127ff07fff8000", + "0x48127ff07fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017ff18000", + "0x1", + "0x48127fe07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127feb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffb4c4", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x79", + "0x4825800180007ffa", + "0x4b3c", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1330", + "0x20680017fff7ffe", + "0x5f", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4ea0", + "0x482480017fff8000", + "0x4e9f", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1c4c", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1c18", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffb4c4", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x79", + "0x4825800180007ffa", + "0x4b3c", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x12a2", + "0x20680017fff7ffe", + "0x5f", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4e12", + "0x482480017fff8000", + "0x4e11", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1bdc", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1b8a", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffb4c4", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x79", + "0x4825800180007ffa", + "0x4b3c", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1214", + "0x20680017fff7ffe", + "0x5f", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4d84", + "0x482480017fff8000", + "0x4d83", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1b6c", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1afc", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffb4c4", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x79", + "0x4825800180007ffa", + "0x4b3c", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1186", + "0x20680017fff7ffe", + "0x5f", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4cf6", + "0x482480017fff8000", + "0x4cf5", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1afc", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1a6e", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffb4c4", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x79", + "0x4825800180007ffa", + "0x4b3c", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x10f8", + "0x20680017fff7ffe", + "0x5f", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4c68", + "0x482480017fff8000", + "0x4c67", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1a8c", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x19e0", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffb4c4", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x79", + "0x4825800180007ffa", + "0x4b3c", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x106a", + "0x20680017fff7ffe", + "0x5f", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4bda", + "0x482480017fff8000", + "0x4bd9", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1a1c", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1952", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffb4c4", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x79", + "0x4825800180007ffa", + "0x4b3c", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xfdc", + "0x20680017fff7ffe", + "0x5f", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4b4c", + "0x482480017fff8000", + "0x4b4b", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x19ac", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x18c4", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffb4c4", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x79", + "0x4825800180007ffa", + "0x4b3c", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xf4e", + "0x20680017fff7ffe", + "0x5f", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4abe", + "0x482480017fff8000", + "0x4abd", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x193c", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1836", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb418", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34be8", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xec0", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4a30", + "0x482480017fff8000", + "0x4a2f", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x18cc", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb79c", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34864", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xe37", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x49a7", + "0x482480017fff8000", + "0x49a6", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x187f", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb418", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34be8", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xdae", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x491e", + "0x482480017fff8000", + "0x491d", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1832", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb79c", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34864", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xd25", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4895", + "0x482480017fff8000", + "0x4894", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x17e5", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb418", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34be8", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc9c", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x480c", + "0x482480017fff8000", + "0x480b", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1798", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb79c", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34864", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc13", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4783", + "0x482480017fff8000", + "0x4782", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x174b", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb418", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34be8", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb8a", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x46fa", + "0x482480017fff8000", + "0x46f9", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x16fe", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb79c", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34864", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb01", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4671", + "0x482480017fff8000", + "0x4670", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x16b1", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb418", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34be8", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa78", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x45e8", + "0x482480017fff8000", + "0x45e7", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1664", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb79c", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34864", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x9ef", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x455f", + "0x482480017fff8000", + "0x455e", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1617", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb418", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34be8", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x966", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x44d6", + "0x482480017fff8000", + "0x44d5", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x15ca", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb79c", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34864", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x8dd", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x444d", + "0x482480017fff8000", + "0x444c", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x157d", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb418", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34be8", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x854", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x43c4", + "0x482480017fff8000", + "0x43c3", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1530", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb79c", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34864", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x7cb", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x433b", + "0x482480017fff8000", + "0x433a", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x14e3", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb418", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34be8", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x742", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x42b2", + "0x482480017fff8000", + "0x42b1", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1496", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb79c", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x34864", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x6b9", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4229", + "0x482480017fff8000", + "0x4228", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1449", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffe3de2", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x1c21e", + "0x400280007ff97fff", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xf16", + "0x482680017ff98000", + "0x1", + "0x20680017fff7ffd", + "0x5a", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffa7fff8000", + "0x48127fe97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x41a0", + "0x482480017fff8000", + "0x419f", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x4", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fe5", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff37fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fe5", + "0x400080007ff47fff", + "0x482480017ff48000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fef7fff8000", + "0x1104800180018000", + "0x13fc", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017ff08000", + "0x1", + "0x48127fdf7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127feb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffd567a", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0xa3", + "0x4825800180007ffa", + "0x2a986", + "0x400280007ff97fff", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xe8d", + "0x482680017ff98000", + "0x1", + "0x20680017fff7ffd", + "0x89", + "0x48127fff7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x5a0", + "0x20680017fff7ffe", + "0x73", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x810", + "0x20680017fff7ffd", + "0x5d", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127f967fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4109", + "0x482480017fff8000", + "0x4108", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007f92", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x25", + "0x48307ffe80007f92", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127f9c7fff8000", + "0x48127fbb7fff8000", + "0x48127fed7fff8000", + "0x48127fed7fff8000", + "0x1104800180018000", + "0x13ad", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f8c7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202333", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127f987fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fcc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127feb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffe305e", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0xcf", + "0x4825800180007ffa", + "0x1cfa2", + "0x400280007ff97fff", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xdd5", + "0x482680017ff98000", + "0x1", + "0x20680017fff7ffd", + "0xb5", + "0x48127fff7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x3c4", + "0x20680017fff7ffe", + "0x9f", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x3bd", + "0x20680017fff7ffe", + "0x89", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x4da", + "0x20680017fff7ffe", + "0x73", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x74a", + "0x20680017fff7ffd", + "0x5d", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127f1e7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x4043", + "0x482480017fff8000", + "0x4042", + "0x480080007fff8000", + "0x480080007fff8000", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007f1b", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007f1b", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127f257fff8000", + "0x48127f617fff8000", + "0x48127f9c7fff8000", + "0x48127fba7fff8000", + "0x48127fec7fff8000", + "0x48127fec7fff8000", + "0x1104800180018000", + "0x13a3", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127f157fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202335", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127f207fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202334", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127f547fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202333", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127f737fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127faf7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127feb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffdb142", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0xf9", + "0x4825800180007ffa", + "0x24ebe", + "0x400280007ff97fff", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xcef", + "0x482680017ff98000", + "0x1", + "0x20680017fff7ffd", + "0xdf", + "0x48127fff7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x2de", + "0x40137fc27fff8002", + "0x20680017fff7ffe", + "0xc8", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x2d6", + "0x40137fc37fff8000", + "0x20680017fff7ffe", + "0xb1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x3f2", + "0x40137fe07fff8001", + "0x20680017fff7ffe", + "0x9a", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x661", + "0x40137fcb7fff8005", + "0x20680017fff7ffd", + "0x83", + "0x48127ffa7fff8000", + "0x48127f237fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x40137ffa7fff8003", + "0x40137ffb7fff8004", + "0x1104800180018000", + "0x133d", + "0x20680017fff7ffa", + "0x70", + "0x20680017fff7ffd", + "0x5f", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x3f4d", + "0x482480017fff8000", + "0x3f4c", + "0x480080007fff8000", + "0x480080007fff8000", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007ff0", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fed7fff", + "0x10780017fff7fff", + "0x29", + "0x48307ffe80007ff0", + "0x400080007fee7fff", + "0x482480017fee8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x480a80027fff8000", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x480a80057fff8000", + "0x480a80037fff8000", + "0x480a80047fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x1104800180018000", + "0x135a", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fea8000", + "0x1", + "0x48127fea7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202336", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202335", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127f207fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202334", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127f547fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202333", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127f737fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127faf7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127feb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcd51a", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0xea", + "0x4825800180007ffa", + "0x32ae6", + "0x400280007ff97fff", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbe1", + "0x482680017ff98000", + "0x1", + "0x20680017fff7ffd", + "0xd0", + "0x48127fff7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x1d0", + "0x20680017fff7ffe", + "0xba", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0xbd2", + "0x20680017fff7ffe", + "0xa5", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0xbcc", + "0x20680017fff7ffe", + "0x90", + "0x48307ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482480017ffb8000", + "0x1", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x10780017fff7fff", + "0x8", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x20680017fff7ffe", + "0x69", + "0x48127fd87fff8000", + "0x480080007ffe8000", + "0x1104800180018000", + "0x1369", + "0x20680017fff7ffe", + "0x60", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x48307ffe80007fff", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127f7a7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x3e3b", + "0x482480017fff8000", + "0x3e3a", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x3", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007f76", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x26", + "0x48307ffe80007f76", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127f807fff8000", + "0x48127fbc7fff8000", + "0x48127fca7fff8000", + "0x48127fd87fff8000", + "0x48127fea7fff8000", + "0x1104800180018000", + "0x1355", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127f707fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffd7fff8000", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0xe", + "0x48127fca7fff8000", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202335", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127f7d7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202334", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127fda7fff8000", + "0x48127f917fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202333", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127fe97fff8000", + "0x48127fa07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127faf7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127feb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffff39496", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x91", + "0x4825800180007ffa", + "0xc6b6a", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x20680017fff7ffe", + "0x65", + "0x48127ffa7fff8000", + "0x480080007ffe8000", + "0x1104800180018000", + "0x1410", + "0x20680017fff7ffe", + "0x5c", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x48307ffe80007fff", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fe37fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x3d55", + "0x482480017fff8000", + "0x3d54", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x19", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fdf", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fdf", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0x1400", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffd7fff8000", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0xe", + "0x48127fec7fff8000", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127fe67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x13ee", + "0x20680017fff7ffd", + "0xb", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x2db", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x13fb", + "0x20680017fff7ffd", + "0xb", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x2bb", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa06", + "0x20680017fff7ffe", + "0xc", + "0x480a7ffb7fff8000", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x1403", + "0x48127ffd7fff8000", + "0x48127fd87fff8000", + "0x48127fd87fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x23", + "0x480a7ffb7fff8000", + "0x48127fd87fff8000", + "0x48127fd87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x1404", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x6e", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x1440", + "0x20680017fff7ffd", + "0x5f", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4c", + "0x4825800180007ffd", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x5a45524f5f4c315f4252494447455f41444452455353", + "0x400080007ffe7fff", + "0x48127fd77fff8000", + "0x48127ff37fff8000", + "0x480a80007fff8000", + "0x48127ff27fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1432", + "0x20680017fff7ffd", + "0x1e", + "0x48127fbc7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1447", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fbc7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4c315f4252494447455f414c52454144595f494e495449414c495a4544", + "0x400080007ffe7fff", + "0x48127fdb7fff8000", + "0x48127ff77fff8000", + "0x480a80007fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127fde7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x96c", + "0x20680017fff7ffe", + "0x2b", + "0xa0680017fff8004", + "0xe", + "0x4824800180047ffe", + "0x800000000000000000000000000000000000000000000000000000000000000", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8002", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x402480017ffb7ffd", + "0xffffffffffffffeeffffffffffffffff", + "0x400280027ffb7ffd", + "0x10780017fff7fff", + "0x14", + "0x484480017fff8001", + "0x8000000000000000000000000000000", + "0x48307fff80007ffd", + "0x480280007ffb7ffd", + "0x480280017ffb7ffd", + "0x402480017ffc7ffe", + "0xf8000000000000000000000000000000", + "0x400280027ffb7ffe", + "0x40780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x482680017ffb8000", + "0x3", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6", + "0x480a7ffb7fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x134b", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x3f", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x12d0", + "0x20680017fff7ffd", + "0x2f", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x140f", + "0x20680017fff7ffd", + "0x1f", + "0x48127fe27fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127fe47fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x143a", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fe27fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x8e2", + "0x20680017fff7ffe", + "0x2b", + "0xa0680017fff8004", + "0xe", + "0x4824800180047ffe", + "0x800000000000000000000000000000000000000000000000000000000000000", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8002", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x402480017ffb7ffd", + "0xffffffffffffffeeffffffffffffffff", + "0x400280027ffb7ffd", + "0x10780017fff7fff", + "0x14", + "0x484480017fff8001", + "0x8000000000000000000000000000000", + "0x48307fff80007ffd", + "0x480280007ffb7ffd", + "0x480280017ffb7ffd", + "0x402480017ffc7ffe", + "0xf8000000000000000000000000000000", + "0x400280027ffb7ffe", + "0x40780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x482680017ffb8000", + "0x3", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6", + "0x480a7ffb7fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x12c1", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x3f", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x1273", + "0x20680017fff7ffd", + "0x2f", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1412", + "0x20680017fff7ffd", + "0x1f", + "0x48127fe27fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127fe47fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x143d", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fe27fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x145d", + "0x20680017fff7ffd", + "0x73", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x122", + "0x20680017fff7ffd", + "0x61", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x544f4b454e5f4e4f545f494e5f425249444745", + "0x400080007ffe7fff", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0x146e", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x2e", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x14aa", + "0x20680017fff7ffd", + "0x1f", + "0x48127fdb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x14b6", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fdb7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x14cd", + "0x20680017fff7ffd", + "0x73", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x9e", + "0x20680017fff7ffd", + "0x61", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x544f4b454e5f4e4f545f494e5f425249444745", + "0x400080007ffe7fff", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x13ea", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x2e", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x1426", + "0x20680017fff7ffd", + "0x1f", + "0x48127fdb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x14ce", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fdb7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x400380007ffd7ffb", + "0x480a7ffc7fff8000", + "0x482680017ffd8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x14e1", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffdd", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x14e0", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffe0", + "0x20680017fff7ffd", + "0x88", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x14ef", + "0x20680017fff7ffd", + "0x74", + "0x480680017fff8000", + "0x0", + "0x20680017fff7ffe", + "0x7", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x20680017fff7fff", + "0x59", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127fb37fff8000", + "0x1104800180018000", + "0x14f4", + "0x20680017fff7ffd", + "0x45", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x152a", + "0x20680017fff7fff", + "0x21", + "0x40780017fff7fff", + "0x14f", + "0x48127e987fff8000", + "0x48127e9c7fff8000", + "0x48127e9c7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x152e", + "0x20680017fff7ffd", + "0xb", + "0x48127ffc7fff8000", + "0x48127e657fff8000", + "0x48127e657fff8000", + "0x48127e657fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127e657fff8000", + "0x48127e657fff8000", + "0x48127e657fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fe77fff8000", + "0x48127fe77fff8000", + "0x48127fe87fff8000", + "0x48127edf7fff8000", + "0x1104800180018000", + "0x1531", + "0x20680017fff7ffd", + "0xb", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127e657fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127e657fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x194", + "0x48127e657fff8000", + "0x48127e657fff8000", + "0x48127e657fff8000", + "0x48127e657fff8000", + "0x480680017fff8000", + "0x1", + "0x48127e657fff8000", + "0x48127e657fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x257", + "0x48127d9f7fff8000", + "0x48127d9f7fff8000", + "0x48127d9f7fff8000", + "0x48127d9f7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0xffffffffffffffffffffffffffffffff", + "0x480680017fff8000", + "0xffffffffffffffffffffffffffffffff", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x25a", + "0x48127d9f7fff8000", + "0x48127d9f7fff8000", + "0x48127d9f7fff8000", + "0x48127d9f7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127d9f7fff8000", + "0x48127d9f7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x29f", + "0x48127d5a7fff8000", + "0x48127d5a7fff8000", + "0x48127d5a7fff8000", + "0x48127d5a7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127d5a7fff8000", + "0x48127d5a7fff8000", + "0x208b7fff7fff7ffe", + "0x400380007ffd7ffa", + "0x400380017ffd7ffb", + "0x480a7ffc7fff8000", + "0x482680017ffd8000", + "0x2", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x44", + "0x480a7ffb7fff8000", + "0x480080007ffc8000", + "0x1104800180018000", + "0x1522", + "0x20680017fff7ffe", + "0x39", + "0x48307ff180007ff2", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482480017ff08000", + "0x1", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x48127fed7fff8000", + "0x10780017fff7fff", + "0x8", + "0x48127ff07fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x15", + "0x48127ff67fff8000", + "0x480080007ffc8000", + "0x1104800180018000", + "0x1505", + "0x20680017fff7ffe", + "0xc", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127fef7fff8000", + "0x48127fef7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127fe67fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffd7fff8000", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0xd", + "0x48127fe97fff8000", + "0x48127fff7fff8000", + "0x48127fef7fff8000", + "0x48127fef7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x14", + "0x48127fe97fff8000", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0x21", + "0x480a7ffb7fff8000", + "0x48127fff7fff8000", + "0x48127fdb7fff8000", + "0x48127fdb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x14f7", + "0x20680017fff7ffd", + "0x9a", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4c325f544f4b454e5f4e4f545f534554", + "0x400080007ffe7fff", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x480a7ff97fff8000", + "0x48127ff37fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480a7ff97fff8000", + "0x48127ff57fff8000", + "0x48127ff77fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe8f", + "0x20680017fff7ffd", + "0x6a", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffeaa", + "0x20680017fff7ffd", + "0x58", + "0x48307fff80007f66", + "0x20680017fff7fff", + "0x46", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127fa47fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x66", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x30", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x124b", + "0x20680017fff7ffd", + "0x21", + "0x48127fdb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0x14d3", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fdb7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4c315f4c325f544f4b454e5f4d49534d41544348", + "0x400080007ffe7fff", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x4825800180007ffb", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x494e56414c49445f524543495049454e54", + "0x400080007ffe7fff", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x1104800180018000", + "0x11ca", + "0x20680017fff7ffd", + "0x13c", + "0x480a7ff67fff8000", + "0x48127ffa7fff8000", + "0x480a7ff87fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe0a", + "0x20680017fff7ffd", + "0x12a", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x544f4b454e5f4e4f545f494e5f425249444745", + "0x400080007ffe7fff", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff77fff8000", + "0x1104800180018000", + "0x148b", + "0x20680017fff7ffd", + "0xfd", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x14b6", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x5a45524f5f5749544844524157414c", + "0x400080007ffe7fff", + "0x48127faf7fff8000", + "0x48127fde7fff8000", + "0x48127faf7fff8000", + "0x48127fdd7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127fb17fff8000", + "0x48127fe07fff8000", + "0x48127fe07fff8000", + "0x48127fb47fff8000", + "0x48127f5d7fff8000", + "0x1104800180018000", + "0x14a2", + "0x20680017fff7ffd", + "0xcf", + "0x48127ffa7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x14ec", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x494e53554646494349454e545f46554e4453", + "0x400080007ffe7fff", + "0x48127ffa7fff8000", + "0x48127fe67fff8000", + "0x48127f3c7fff8000", + "0x48127fe57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fe87fff8000", + "0x48127f3e7fff8000", + "0x48127fe77fff8000", + "0x48127f407fff8000", + "0x1104800180018000", + "0x12b5", + "0x20680017fff7ffd", + "0xa2", + "0x20680017fff7fff", + "0xa", + "0x40780017fff7fff", + "0x485", + "0x48127b747fff8000", + "0x48127b747fff8000", + "0x48127b747fff8000", + "0x48127b747fff8000", + "0x10780017fff7fff", + "0x11", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x14f1", + "0x20680017fff7ffd", + "0x84", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffe7fff8000", + "0x48127a747fff8000", + "0x48127a1d7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1577", + "0x40137fcb7fff8000", + "0x20680017fff7ffd", + "0x6c", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffd46", + "0x480a7ffb7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffd62", + "0x480a7ffa7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffd5d", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe15", + "0x48127a457fff8000", + "0x1104800180018000", + "0x1599", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x53656e644d657373616765546f4c31", + "0x400080007fc97fff", + "0x400080017fc97fc8", + "0x400080027fc97ffc", + "0x400080037fc97ffd", + "0x400080047fc97ffe", + "0x480080067fc98000", + "0x20680017fff7fff", + "0xd", + "0x480080057fc88000", + "0x482480017fc78000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480080057fc88000", + "0x482480017fc78000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480080077fc58000", + "0x480080087fc48000", + "0x20680017fff7ffd", + "0x22", + "0x48127f907fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x481279ad7fff8000", + "0x1104800180018000", + "0x1571", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4d4553534147455f53454e445f464149494c4544", + "0x400080007ffe7fff", + "0x48127f8e7fff8000", + "0x48127ff87fff8000", + "0x480a80007fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127fc97fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127f507fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fcb7fff8000", + "0x48127ffa7fff8000", + "0x48127fcb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x48127ffa7fff8000", + "0x480a7ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1564", + "0x20680017fff7ffd", + "0xb", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffa6a", + "0x20680017fff7ffe", + "0x61", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x40137ffb7fff8000", + "0x1104800180018000", + "0x156e", + "0x20680017fff7ff8", + "0x43", + "0x20680017fff7ffb", + "0x2c", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0x15fb", + "0x20680017fff7ffe", + "0x11", + "0x48127fe37fff8000", + "0x48127fe37fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480a80007fff8000", + "0x48127fe27fff8000", + "0x48127fe27fff8000", + "0x48127fe27fff8000", + "0x48127fe27fff8000", + "0x48127ff47fff8000", + "0x208b7fff7fff7ffe", + "0x48127fe37fff8000", + "0x48127fe37fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff67fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x15be", + "0x20680017fff7ffd", + "0x20", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x15e7", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fb07fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fb07fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff57fff8000", + "0x48127ff97fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x3", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x1104800180018000", + "0x15f2", + "0x20680017fff7ffd", + "0xa0", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x162f", + "0x20680017fff7ffd", + "0x90", + "0x48127fd27fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff24", + "0x20680017fff7ffd", + "0x7f", + "0x48127ffa7fff8000", + "0x48127fbe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1636", + "0x20680017fff7ffd", + "0x6e", + "0x48127ffc7fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x127500", + "0x1104800180018000", + "0x162e", + "0x20680017fff7ffd", + "0x5c", + "0x48127ffc7fff8000", + "0x48127fce7fff8000", + "0x48127f667fff8000", + "0x480a7ff67fff8000", + "0x48127fcc7fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127fde7fff8000", + "0x40137ff37fff8002", + "0x1104800180018000", + "0x1648", + "0x20680017fff7ffd", + "0x41", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480a80027fff8000", + "0x1104800180018000", + "0x166f", + "0x40137ffa7fff8001", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x25", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ffa7fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1697", + "0x20680017fff7ffd", + "0xe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80017fff8000", + "0x480a80007fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80017fff8000", + "0x480a80007fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a80017fff8000", + "0x480a80007fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fce7fff8000", + "0x48127f667fff8000", + "0x480a7ff67fff8000", + "0x48127fcc7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fe47fff8000", + "0x48127f7c7fff8000", + "0x480a7ff67fff8000", + "0x48127fe27fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127f927fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127fd27fff8000", + "0x48127ffa7fff8000", + "0x48127fd27fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x1104800180018000", + "0x1540", + "0x20680017fff7ffd", + "0x88", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff05", + "0x20680017fff7ffd", + "0x6f", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x58", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x159d", + "0x20680017fff7ffd", + "0x3d", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x15c3", + "0x40137ffa7fff8000", + "0x40137ffb7fff8001", + "0x20680017fff7ffd", + "0x20", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ffa7fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1648", + "0x20680017fff7ffd", + "0x9", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x48127ff87fff8000", + "0x10780017fff7fff", + "0x25", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xb", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x1104800180018000", + "0x14a6", + "0x20680017fff7ffd", + "0x1cc", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x164b", + "0x20680017fff7ffd", + "0x1bc", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x46494e414c495a4544", + "0x400080007ffe7fff", + "0x48127fcb7fff8000", + "0x48127ff67fff8000", + "0x48127fcb7fff8000", + "0x480a7ff67fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0x14c8", + "0x20680017fff7ffd", + "0x197", + "0x48127fa67fff8000", + "0x48127ffa7fff8000", + "0x48127fa67fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x40137ff47fff8009", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe49", + "0x20680017fff7ffd", + "0x17d", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x40137ff47fff800a", + "0x1104800180018000", + "0x1625", + "0x40137ffa7fff8008", + "0x40137ffb7fff8007", + "0x20680017fff7ffd", + "0x161", + "0x482580018000800a", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x6", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x554e4b4e4f574e5f494d504c454d454e544154494f4e", + "0x400080007ffe7fff", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff27fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x4829800a80018009", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff17fff", + "0x10780017fff7fff", + "0x127", + "0x400080007ff27fff", + "0x4828800980017ff9", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080017fef7fff", + "0x10780017fff7fff", + "0x10d", + "0x400080017ff07fff", + "0x482480017ff08000", + "0x2", + "0x48127ff07fff8000", + "0x48127ff27fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1617", + "0x20680017fff7ffd", + "0xf4", + "0x20780017fff7ffd", + "0x7", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x13", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x1667", + "0x20680017fff7ffd", + "0xdd", + "0x48127fd87fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff87fff8000", + "0x1104800180018000", + "0x1677", + "0x20680017fff7ffd", + "0xcb", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x40137fff7fff8006", + "0x20780017fff7ff9", + "0x4e", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x48127ffb7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x16bd", + "0x20680017fff7ffd", + "0x38", + "0x480680017fff8000", + "0x3ea3b9a8522d36784cb325f9c7e2ec3c9f3e6d63031a6c6b8743cc22412f604", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x4c69627261727943616c6c", + "0x4002800080067fff", + "0x4002800180067ff8", + "0x4003800280067ffa", + "0x4002800380067ffc", + "0x4002800480067ffd", + "0x4002800580067ffe", + "0x4802800780068000", + "0x20680017fff7fff", + "0xb", + "0x4802800680068000", + "0x4826800180068000", + "0xa", + "0x480680017fff8000", + "0x0", + "0x4802800880068000", + "0x4802800980068000", + "0x10780017fff7fff", + "0x9", + "0x4802800680068000", + "0x4826800180068000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x4802800880068000", + "0x4802800980068000", + "0x20680017fff7ffd", + "0x7", + "0x48127ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x1f", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4549435f4c49425f43414c4c5f4641494c4544", + "0x400080007ffe7fff", + "0x48127fef7fff8000", + "0x48127ff87fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x480a80067fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480a80067fff8000", + "0x480680017fff8000", + "0x5265706c616365436c617373", + "0x400080007ffe7fff", + "0x400080017ffe7ffd", + "0x400180027ffe7ff8", + "0x480080047ffe8000", + "0x20680017fff7fff", + "0xd", + "0x480080037ffd8000", + "0x482480017ffc8000", + "0x5", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480080037ffd8000", + "0x482480017ffc8000", + "0x7", + "0x480680017fff8000", + "0x1", + "0x480080057ffa8000", + "0x480080067ff98000", + "0x20680017fff7ffd", + "0x4a", + "0x48127ff67fff8000", + "0x48127ffa7fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff87fff8000", + "0x400b7ff87fff8000", + "0x400b7ff97fff8001", + "0x400b7ffa7fff8002", + "0x400b7ffb7fff8003", + "0x400b7ffc7fff8004", + "0x400b7ffd7fff8005", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x480a80027fff8000", + "0x480a80037fff8000", + "0x480a80047fff8000", + "0x480a80057fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x1408", + "0x20680017fff7ffd", + "0x29", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x480a80027fff8000", + "0x480a80037fff8000", + "0x480a80047fff8000", + "0x480a80057fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x142e", + "0x20680017fff7ffd", + "0xe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x5245504c4143455f434c4153535f484153485f4641494c4544", + "0x400080007ffe7fff", + "0x48127ff47fff8000", + "0x48127ff87fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127fd87fff8000", + "0x48127ffa7fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x494d504c454d454e544154494f4e5f45585049524544", + "0x400080007ffe7fff", + "0x482480017fed8000", + "0x2", + "0x48127fed7fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127fed7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4e4f545f454e41424c45445f594554", + "0x400080007ffe7fff", + "0x482480017fef8000", + "0x1", + "0x48127fef7fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127fef7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127fa67fff8000", + "0x48127ffa7fff8000", + "0x48127fa67fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127fcf7fff8000", + "0x48127ffa7fff8000", + "0x48127fcf7fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x8", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x0", + "0x480080007ffa8000", + "0x208b7fff7fff7ffe", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1581", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x6", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff864", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x157a", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0xd2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de06068", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffb2", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff94", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff76", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x23edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da7", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff58", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff3a", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff1c", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffefe", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x37693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b96", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffee0", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0xb31", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0xd2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de06068", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1f", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x1490", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0xaf5", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0xd2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de06068", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1d", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x14ca", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0xab9", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1b", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x1418", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0xa7d", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x19", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x1452", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0xa41", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x13a0", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0xa05", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x5", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x13da", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x9c9", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x37693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b96", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x3", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x1328", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x98d", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x37693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b96", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x1362", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x951", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x17", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x12b0", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x915", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x15", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x12ea", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x8d9", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x23edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da7", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x13", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x1238", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x89d", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x23edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da7", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x11", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x1272", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x861", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0xf", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x11c0", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x825", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0xd", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x11fa", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x7e9", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0xb", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x1148", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x7ad", + "0x20680017fff7ffd", + "0x2f", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x9", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x1182", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x4825800180007ffd", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x474f565f41444d494e5f43414e4e4f545f53454c465f52454d4f5645", + "0x400080007ffe7fff", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x753", + "0x20680017fff7ffd", + "0x20", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480a7ffd7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x118f", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x1104800180018000", + "0x989", + "0x20680017fff7ffd", + "0xac", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x544f4b454e5f434f4e4649475f4d49534d41544348", + "0x400080007ffe7fff", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x480a7ff87fff8000", + "0x48127ff37fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127ff77fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff321", + "0x20680017fff7ffd", + "0x7c", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff33c", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x69", + "0x48307fff80007f66", + "0x20680017fff7fff", + "0x57", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x116d", + "0x20680017fff7ffd", + "0x47", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x48127f277fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1190", + "0x20680017fff7ffd", + "0x34", + "0x48127f797fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127f267fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x11bd", + "0x20680017fff7ffd", + "0x20", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x120e", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127f797fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fbd7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4c315f4c325f544f4b454e5f4d49534d41544348", + "0x400080007ffe7fff", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480a80007fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x1104800180018000", + "0x10ec", + "0x20680017fff7ffd", + "0x47", + "0x480a7ff47fff8000", + "0x48127ffa7fff8000", + "0x480a7ff67fff8000", + "0x48127ff97fff8000", + "0x480a7ff97fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff2a7", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x34", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1105", + "0x20680017fff7ffd", + "0x21", + "0x48127fb57fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1132", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fb57fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff47fff8000", + "0x48127ffa7fff8000", + "0x480a7ff67fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x36", + "0x40780017fff7fff", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffa7fff8000", + "0x480080007ff68000", + "0x1104800180018000", + "0x1194", + "0x20680017fff7ffa", + "0x1c", + "0x20680017fff7ffd", + "0xd", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x480a7ff37fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x1104800180018000", + "0x103d", + "0x20680017fff7ffd", + "0xd6", + "0x480a7ff27fff8000", + "0x48127ffa7fff8000", + "0x480a7ff47fff8000", + "0x48127ff97fff8000", + "0x480a7ff77fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff1f8", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0xc3", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x480a7ff97fff8000", + "0x48127ffc7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x1056", + "0x40137ffc7fff8001", + "0x20680017fff7ffd", + "0xaf", + "0x40780017fff7fff", + "0x1", + "0x48127fba7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffeefc", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff293", + "0x480a7ff87fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff1d0", + "0x48127f907fff8000", + "0x48127fd57fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0xe88", + "0x20680017fff7ffd", + "0x8a", + "0x480680017fff8000", + "0x1101afb9568fc98d91b25365fb0f498486ed49680b8d2625a0b45a850311d1e", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x43616c6c436f6e7472616374", + "0x4002800080017fff", + "0x4002800180017ff8", + "0x4003800280017ff9", + "0x4002800380017ffc", + "0x4002800480017ffd", + "0x4002800580017ffe", + "0x4802800780018000", + "0x20680017fff7fff", + "0xb", + "0x4802800680018000", + "0x4826800180018000", + "0xa", + "0x480680017fff8000", + "0x0", + "0x4802800880018000", + "0x4802800980018000", + "0x10780017fff7fff", + "0x9", + "0x4802800680018000", + "0x4826800180018000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x4802800880018000", + "0x4802800980018000", + "0x20680017fff7ffd", + "0x5a", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x116a", + "0x20680017fff7ffd", + "0x4a", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0xaff", + "0x20680017fff7ffe", + "0x35", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4445504f5349545f52454a4543544544", + "0x400080007ffe7fff", + "0x48127fca7fff8000", + "0x48127fd37fff8000", + "0x480a80007fff8000", + "0x48127fd27fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127fcc7fff8000", + "0x48127fd57fff8000", + "0x48127fd57fff8000", + "0x480a7ff87fff8000", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1158", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x400080007ffe7fff", + "0x48127fca7fff8000", + "0x48127fd37fff8000", + "0x480a80007fff8000", + "0x48127fd27fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127fdf7fff8000", + "0x48127fe87fff8000", + "0x480a80007fff8000", + "0x48127fe77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f4e5f524543454956455f4641494c4544", + "0x400080007ffe7fff", + "0x48127fef7fff8000", + "0x48127ff87fff8000", + "0x480a80007fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fb57fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff27fff8000", + "0x48127ffa7fff8000", + "0x480a7ff47fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x12", + "0x4825800180007ffd", + "0x100", + "0x4844800180008002", + "0x8000000000000110000000000000000", + "0x4830800080017ffe", + "0x480280007ffc7fff", + "0x482480017ffe8000", + "0xefffffffffffffde00000000000000ff", + "0x480280017ffc7fff", + "0x400280027ffc7ffb", + "0x402480017fff7ffb", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7fff", + "0x11", + "0x402780017fff7fff", + "0x1", + "0x400380007ffc7ffd", + "0x482680017ffd8000", + "0xffffffffffffffffffffffffffffff00", + "0x400280017ffc7fff", + "0x40780017fff7fff", + "0x5", + "0x482680017ffc8000", + "0x2", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x10780017fff7fff", + "0x8", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff87fff8000", + "0x1104800180018000", + "0x712", + "0x20680017fff7ffd", + "0x157", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x144", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x1104800180018000", + "0xf26", + "0x20680017fff7ffd", + "0x134", + "0x48127fbe7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff77fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x5c5", + "0x20680017fff7ffd", + "0x122", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x10f", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffedd7", + "0x20680017fff7ffd", + "0xff", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4c325f544f4b454e5f474f565f4e4f545f534554", + "0x400080007ffe7fff", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127fb37fff8000", + "0x48127ff37fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffed92", + "0x20680017fff7ffd", + "0xd1", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4c325f544f4b454e5f434c4153535f484153485f4e4f545f534554", + "0x400080007ffe7fff", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127f707fff8000", + "0x48127ff37fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x1104800180018000", + "0x10c0", + "0x20680017fff7ffd", + "0xa4", + "0x40780017fff7fff", + "0x1", + "0x480a7ffb7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff05b", + "0x480a7ffc7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff056", + "0x400180007fff7ffd", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x482480017ffc8000", + "0x1", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff12b", + "0x48127fe87fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffed89", + "0x48127fda7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffed84", + "0x48127f677fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffed7f", + "0x480680017fff8000", + "0x0", + "0x400080007ffe7fff", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x89d", + "0x48127ff97fff8000", + "0x482480017ff98000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x4465706c6f79", + "0x400080007fb27fff", + "0x400080017fb27fb1", + "0x400080027fb27f93", + "0x400080037fb27ffb", + "0x400080047fb27ffc", + "0x400080057fb27ffd", + "0x400080067fb27ffe", + "0x480080087fb28000", + "0x20680017fff7fff", + "0xc", + "0x480080077fb18000", + "0x482480017fb08000", + "0xc", + "0x480680017fff8000", + "0x0", + "0x480080097fae8000", + "0x4800800a7fad8000", + "0x4800800b7fac8000", + "0x10780017fff7fff", + "0xb", + "0x480080077fb18000", + "0x482480017fb08000", + "0xb", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480080097fad8000", + "0x4800800a7fac8000", + "0x1104800180018000", + "0x1082", + "0x20680017fff7ffc", + "0x48", + "0x48127f817fff8000", + "0x48127ff37fff8000", + "0x48127efd7fff8000", + "0x48127ff27fff8000", + "0x480a7ffa7fff8000", + "0x48127ff87fff8000", + "0x1104800180018000", + "0x1087", + "0x20680017fff7ffd", + "0x35", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fcc7fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x10b8", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x21", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x10d1", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127f817fff8000", + "0x48127ff37fff8000", + "0x48127efd7fff8000", + "0x48127ff27fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fd87fff8000", + "0x48127ffa7fff8000", + "0x48127f547fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127f767fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127fb97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x544f4b454e5f414c52454144595f455849535453", + "0x400080007ffe7fff", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fbe7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff77fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4445504c4f595f544f4b454e5f444953414c4c4f574544", + "0x400080007ffe7fff", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480a7ff77fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff77fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x12", + "0x4825800180007ffd", + "0x10000000000000000", + "0x4844800180008002", + "0x8000000000000110000000000000000", + "0x4830800080017ffe", + "0x480280007ffc7fff", + "0x482480017ffe8000", + "0xefffffffffffffdeffffffffffffffff", + "0x480280017ffc7fff", + "0x400280027ffc7ffb", + "0x402480017fff7ffb", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7fff", + "0x11", + "0x402780017fff7fff", + "0x1", + "0x400380007ffc7ffd", + "0x482680017ffd8000", + "0xffffffffffffffff0000000000000000", + "0x400280017ffc7fff", + "0x40780017fff7fff", + "0x5", + "0x482680017ffc8000", + "0x2", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x10780017fff7fff", + "0x8", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x107b", + "0x20680017fff7ffd", + "0x2f", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1187", + "0x20680017fff7ffd", + "0x1f", + "0x48127fe17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x5", + "0x1104800180018000", + "0x11b2", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127fb97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127fb97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fe17fff8000", + "0x48127ffa7fff8000", + "0x48127fe17fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x3e4b2efa9f3dc5a5ca304578e8f83c116445fc36a80508f598770ab9d0ba8fa", + "0x1104800180018000", + "0x11b8", + "0x20680017fff7ffc", + "0x1a", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x11ed", + "0x20680017fff7ffd", + "0xb", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x3acd88ba6181ba1fb253286b276575767587130253bbbed7f7270cd11e8be7d", + "0x1104800180018000", + "0x11d4", + "0x20680017fff7ffc", + "0x1a", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1209", + "0x20680017fff7ffd", + "0xb", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x11f5", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x100000000", + "0x1104800180018000", + "0x601", + "0x20680017fff7fff", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x5", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ffc7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x271", + "0x20680017fff7ffd", + "0x34", + "0x480a7ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff646", + "0x20680017fff7ffd", + "0x20", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f4e4c595f4150505f474f5645524e4f52", + "0x400080007ffe7fff", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x59", + "0x480a7ffa7fff8000", + "0x48127fa17fff8000", + "0x480a7ffc7fff8000", + "0x48127fa07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fa07fff8000", + "0x48127fa07fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0xc88ee7a00e0b95f1138ef53d396c4327eeed7f9677bbd02ce82a663537b1cf", + "0x1104800180018000", + "0x11ba", + "0x1104800180018000", + "0x11d2", + "0x20680017fff7ffd", + "0xa", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0xc88ee7a00e0b95f1138ef53d396c4327eeed7f9677bbd02ce82a663537b1cf", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x11c5", + "0x1104800180018000", + "0x11df", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x11d8", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x11d4", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffc7fff", + "0x400280017ffc7ff5", + "0x400280027ffc7ffb", + "0x400280037ffc7ffc", + "0x400280047ffc7ffd", + "0x400280057ffc7ffe", + "0x480280077ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffc8000", + "0x482680017ffc8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffc8000", + "0x482680017ffc8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffc8000", + "0x480280097ffc8000", + "0x1104800180018000", + "0x1191", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x3e4b2efa9f3dc5a5ca304578e8f83c116445fc36a80508f598770ab9d0ba8fa", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffc7fff", + "0x400380017ffc7ffb", + "0x400280027ffc7ffd", + "0x400280037ffc7ffe", + "0x400380047ffc7ffd", + "0x480280067ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffc8000", + "0x480280087ffc8000", + "0x1104800180018000", + "0x1153", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x14a5", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x1147", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffb7fff", + "0x400280017ffb7ff5", + "0x400280027ffb7ffb", + "0x400280037ffb7ffc", + "0x400280047ffb7ffd", + "0x400280057ffb7ffe", + "0x480280077ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffb8000", + "0x482680017ffb8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffb8000", + "0x480280097ffb8000", + "0x1104800180018000", + "0x1104", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x3acd88ba6181ba1fb253286b276575767587130253bbbed7f7270cd11e8be7d", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffc7fff", + "0x400380017ffc7ffb", + "0x400280027ffc7ffd", + "0x400280037ffc7ffe", + "0x400380047ffc7ffd", + "0x480280067ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffc8000", + "0x480280087ffc8000", + "0x1104800180018000", + "0x10c6", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1427", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x10ba", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffb7fff", + "0x400280017ffb7ff5", + "0x400280027ffb7ffb", + "0x400280037ffb7ffc", + "0x400280047ffb7ffd", + "0x400280057ffb7ffe", + "0x480280077ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffb8000", + "0x482680017ffb8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffb8000", + "0x480280097ffb8000", + "0x1104800180018000", + "0x1077", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x84", + "0x20680017fff7ffd", + "0x34", + "0x480a7ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff52b", + "0x20680017fff7ffd", + "0x20", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f4e4c595f53454355524954595f4147454e54", + "0x400080007ffe7fff", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x59", + "0x480a7ffa7fff8000", + "0x48127fa17fff8000", + "0x480a7ffc7fff8000", + "0x48127fa07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fa07fff8000", + "0x48127fa07fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x1399", + "0x20780017fff7ffd", + "0x6", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffb7fff", + "0x400380017ffb7ff9", + "0x400280027ffb7ffe", + "0x400280037ffb7ffc", + "0x400280047ffb7ffd", + "0x480280067ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffb8000", + "0x480280087ffb8000", + "0x1104800180018000", + "0xfeb", + "0x20680017fff7ffd", + "0xd", + "0x48127fef7fff8000", + "0x48127ff57fff8000", + "0x48127fee7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fef7fff8000", + "0x48127ff57fff8000", + "0x48127fee7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x137f", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480080027ffb8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1395", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0xfc6", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffb7fff", + "0x400280017ffb7ff5", + "0x400280027ffb7ffb", + "0x400280037ffb7ffc", + "0x400280047ffb7ffd", + "0x400280057ffb7ffe", + "0x480280077ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffb8000", + "0x482680017ffb8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffb8000", + "0x480280097ffb8000", + "0x1104800180018000", + "0xf83", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff91", + "0x20680017fff7ffd", + "0x34", + "0x480a7ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff419", + "0x20680017fff7ffd", + "0x20", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f4e4c595f53454355524954595f41444d494e", + "0x400080007ffe7fff", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x59", + "0x480a7ffa7fff8000", + "0x48127fa17fff8000", + "0x480a7ffc7fff8000", + "0x48127fa07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fa07fff8000", + "0x48127fa07fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1308", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0xf2a", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffb7fff", + "0x400280017ffb7ff5", + "0x400280027ffb7ffb", + "0x400280037ffb7ffc", + "0x400280047ffb7ffd", + "0x400280057ffb7ffe", + "0x480280077ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffb8000", + "0x482680017ffb8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffb8000", + "0x480280097ffb8000", + "0x1104800180018000", + "0xee7", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x12bd", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0xe7c", + "0x1104800180018000", + "0xe94", + "0x20680017fff7ffd", + "0xc", + "0x48127feb7fff8000", + "0x48127ff57fff8000", + "0x48127fea7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127feb7fff8000", + "0x48127ff57fff8000", + "0x48127fea7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x12c2", + "0x48127ffd7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0xdea", + "0x20680017fff7ffc", + "0x1c", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xe1f", + "0x20680017fff7ffd", + "0xc", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd37fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd37fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd37fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x12b4", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x503", + "0x20680017fff7ffd", + "0x31", + "0x480a7ff97fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x15180", + "0x1104800180018000", + "0x12b6", + "0x20680017fff7ffd", + "0x1e", + "0x48127ffc7fff8000", + "0x48127fd97fff8000", + "0x480a7ffb7fff8000", + "0x48127fd87fff8000", + "0x480a7ffd7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x12d9", + "0x20680017fff7ffd", + "0xb", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6d", + "0x48127f8f7fff8000", + "0x48127f6c7fff8000", + "0x480a7ffb7fff8000", + "0x48127f6b7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f8c7fff8000", + "0x48127f8c7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8e", + "0x480a7ff97fff8000", + "0x48127f6c7fff8000", + "0x480a7ffb7fff8000", + "0x48127f6b7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f6b7fff8000", + "0x48127f6b7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x12df", + "0x20680017fff7fff", + "0x8", + "0x40780017fff7fff", + "0x5", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x6", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x12d3", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x12d7", + "0x20680017fff7ffd", + "0xa", + "0x40780017fff7fff", + "0x2", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x753235365f737562204f766572666c6f77", + "0x400080007ffe7fff", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x482480017ffb8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x12d5", + "0x20680017fff7ffd", + "0x44", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x131c", + "0x20680017fff7ffd", + "0x33", + "0x48127fff7fff8000", + "0x1104800180018000", + "0x132f", + "0x48127ff57fff8000", + "0x48127fb87fff8000", + "0x48127fb87fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x132c", + "0x20680017fff7ffd", + "0x1d", + "0x48127ffc7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x64", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x133e", + "0x20680017fff7ffd", + "0xa", + "0x48127ffc7fff8000", + "0x48127f167fff8000", + "0x48127f167fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127f167fff8000", + "0x48127f167fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x4d", + "0x48127faf7fff8000", + "0x48127f167fff8000", + "0x48127f167fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fad7fff8000", + "0x48127fad7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xe4", + "0x48127f167fff8000", + "0x48127f167fff8000", + "0x48127f167fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f167fff8000", + "0x48127f167fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x124", + "0x48127ed67fff8000", + "0x48127ed67fff8000", + "0x48127ed67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ed67fff8000", + "0x48127ed67fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x16", + "0x480280007ffc8003", + "0x480280017ffc8003", + "0x4844800180017ffe", + "0x100000000000000000000000000000000", + "0x483180017ffd7ffd", + "0x482480017fff7ffd", + "0x800000000000010fffffffffffffffff7ffffffffffffef0000000000000001", + "0x20680017fff7ffc", + "0x6", + "0x402480017fff7ffd", + "0xffffffffffffffffffffffffffffffff", + "0x10780017fff7fff", + "0x4", + "0x402480017ffe7ffd", + "0xf7ffffffffffffef0000000000000000", + "0x400280027ffc7ffd", + "0x20680017fff7ffe", + "0xe", + "0x402780017fff7fff", + "0x1", + "0x400380007ffc7ffd", + "0x40780017fff7fff", + "0x5", + "0x482680017ffc8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x10780017fff7fff", + "0x8", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1dc79e2fd056704ede52dca5746b720269aaa5da53301dff546657c16ca07af", + "0x1104800180018000", + "0xcb5", + "0x20680017fff7ffc", + "0x1a", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xcea", + "0x20680017fff7ffd", + "0xb", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1312", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0xd46", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff97fff", + "0x400280017ff97ff5", + "0x400280027ff97ffb", + "0x400280037ff97ffc", + "0x400280047ff97ffd", + "0x400280057ff97ffe", + "0x480280077ff98000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff98000", + "0x482680017ff98000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff98000", + "0x482680017ff98000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff98000", + "0x480280097ff98000", + "0x1104800180018000", + "0xd03", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffae1", + "0x20680017fff7ffd", + "0x28", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0xf", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x554e494e495449414c495a45445f4c315f4252494447455f41444452455353", + "0x400080007ffe7fff", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x482480017ffa8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe97", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ffd7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe633", + "0x480680017fff8000", + "0x35a73cd311a05d46deda634c5ee045db92f811b4e74bca4437fcb5302b7af33", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x43616c6c436f6e7472616374", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400280037ffb7ffc", + "0x400280047ffb7ffd", + "0x400280057ffb7ffe", + "0x480280077ffb8000", + "0x20680017fff7fff", + "0xb", + "0x480280067ffb8000", + "0x482680017ffb8000", + "0xa", + "0x480680017fff8000", + "0x0", + "0x480280087ffb8000", + "0x480280097ffb8000", + "0x10780017fff7fff", + "0x9", + "0x480280067ffb8000", + "0x482680017ffb8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffb8000", + "0x480280097ffb8000", + "0x1104800180018000", + "0x1266", + "0x20680017fff7ffd", + "0x21", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe9ae", + "0x20680017fff7ffd", + "0xc", + "0x40780017fff7fff", + "0x2", + "0x48127ff87fff8000", + "0x48127fbf7fff8000", + "0x48127fbf7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x52657475726e6564206461746120746f6f2073686f7274", + "0x400080007ffe7fff", + "0x48127ff87fff8000", + "0x48127fbf7fff8000", + "0x48127fbf7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x36", + "0x480a7ff97fff8000", + "0x48127fbf7fff8000", + "0x48127fbf7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fc47fff8000", + "0x48127fc47fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffd80017ffb", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x28", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x48297ffd80007ffb", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x9", + "0x40780017fff7fff", + "0x3", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x17", + "0x48297ffc80017ffa", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ffb7fff", + "0x10780017fff7fff", + "0xb", + "0x400080007ffc7fff", + "0x40780017fff7fff", + "0x1", + "0x482480017ffb8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x6", + "0x482480017ffb8000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x8", + "0x40780017fff7fff", + "0x4", + "0x482680017ff98000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe8ae", + "0x20680017fff7ffd", + "0x82", + "0x48127ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0xffffffffffffffffffffffffffffffff", + "0x480680017fff8000", + "0xffffffffffffffffffffffffffffffff", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffbc", + "0x20680017fff7fff", + "0x13", + "0x40780017fff7fff", + "0x160", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7769746864726177616c5f6c696d69745f6170706c696564204552524f52", + "0x400080007ffe7fff", + "0x48127e9c7fff8000", + "0x48127e877fff8000", + "0x48127e877fff8000", + "0x48127e877fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffe7fff8000", + "0x48127fed7fff8000", + "0x48127fed7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffa2", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x13", + "0x40780017fff7fff", + "0x14e", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4c494d49545f4558434545444544", + "0x400080007ffe7fff", + "0x48127eac7fff8000", + "0x48127e877fff8000", + "0x48127e877fff8000", + "0x48127e877fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fd77fff8000", + "0x48127fd77fff8000", + "0x48127fd77fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe850", + "0x20680017fff7ffd", + "0x35", + "0x48127ff97fff8000", + "0x48127f857fff8000", + "0x48127f857fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffdcd", + "0x20680017fff7ffd", + "0x21", + "0x48127ffc7fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc87fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0x11b5", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xc7", + "0x48127f357fff8000", + "0x48127eff7fff8000", + "0x48127eff7fff8000", + "0x48127eff7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f327fff8000", + "0x48127f327fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xfa", + "0x48127eff7fff8000", + "0x48127eff7fff8000", + "0x48127eff7fff8000", + "0x48127eff7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127eff7fff8000", + "0x48127eff7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x172", + "0x48127e877fff8000", + "0x48127e877fff8000", + "0x48127e877fff8000", + "0x48127e877fff8000", + "0x480680017fff8000", + "0x1", + "0x48127e877fff8000", + "0x48127e877fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ffb7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe517", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe8ae", + "0x480680017fff8000", + "0x3a07502a2e0e18ad6178ca530615148b9892d000199dbb29e402c41913c3d1a", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x43616c6c436f6e7472616374", + "0x400280007ff97fff", + "0x400380017ff97ff8", + "0x400380027ff97ffa", + "0x400280037ff97ffc", + "0x400280047ff97ffd", + "0x400280057ff97ffe", + "0x480280077ff98000", + "0x20680017fff7fff", + "0xb", + "0x480280067ff98000", + "0x482680017ff98000", + "0xa", + "0x480680017fff8000", + "0x0", + "0x480280087ff98000", + "0x480280097ff98000", + "0x10780017fff7fff", + "0x9", + "0x480280067ff98000", + "0x482680017ff98000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff98000", + "0x480280097ff98000", + "0x1104800180018000", + "0x1144", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x118f", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0xb50", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff87fff", + "0x400280017ff87ff5", + "0x400280027ff87ffb", + "0x400280037ff87ffc", + "0x400280047ff87ffd", + "0x400280057ff87ffe", + "0x480280077ff88000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff88000", + "0x482680017ff88000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff88000", + "0x482680017ff88000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff88000", + "0x480280097ff88000", + "0x1104800180018000", + "0xb0d", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x3fc801c47df4de8d5835f8bfd4d0b8823ba63e5a3f278086901402d680abfc", + "0x1104800180018000", + "0x113d", + "0x20680017fff7ffc", + "0x1a", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1172", + "0x20680017fff7ffd", + "0xb", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffee5f", + "0x20680017fff7ffe", + "0x80", + "0x20680017fff7fff", + "0x39", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x1154", + "0x20680017fff7ff9", + "0x20", + "0x20680017fff7ffc", + "0xd", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x10780017fff7fff", + "0x3a", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x208b7fff7fff7ffe", + "0x4824800180007fff", + "0x1", + "0x20680017fff7fff", + "0x32", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x1168", + "0x20680017fff7fff", + "0x1b", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x15", + "0x480080007ffd8000", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x48307ffb80007ffc", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x4", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ff77fff8000", + "0x48127ff67fff8000", + "0x1104800180018000", + "0x10de", + "0x20680017fff7ffd", + "0x1c", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a7ff77fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x10f9", + "0x20680017fff7ffd", + "0xb", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x10fe", + "0x48127ffd7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x1012", + "0x20680017fff7ffc", + "0x1c", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1047", + "0x20680017fff7ffd", + "0xc", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd27fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd27fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd27fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff9c0", + "0x20680017fff7ffd", + "0x34", + "0x480a7ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffee2a", + "0x20680017fff7ffd", + "0x20", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f4e4c595f555047524144455f474f5645524e4f52", + "0x400080007ffe7fff", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x59", + "0x480a7ffa7fff8000", + "0x48127fa17fff8000", + "0x480a7ffc7fff8000", + "0x48127fa07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fa07fff8000", + "0x48127fa07fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x10b0", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480080017ffb8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x8", + "0x482a7ffd7ffc8000", + "0x4824800180007fff", + "0x10000000000000000", + "0x400280007ffb7fff", + "0x10780017fff7fff", + "0xd", + "0x482a7ffd7ffc8001", + "0x4824800180007fff", + "0xffffffffffffffff0000000000000000", + "0x400280007ffb7ffe", + "0x482680017ffb8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffd7fff8000", + "0x10780017fff7fff", + "0x7", + "0x482680017ffb8000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x7536345f616464204f766572666c6f77", + "0x1104800180018000", + "0x1098", + "0x20680017fff7ffd", + "0x9", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff27fff8000", + "0x480a7ff37fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff0f", + "0x20680017fff7ffd", + "0x22", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff47fff8000", + "0x480a7ff67fff8000", + "0x48127ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1087", + "0x20680017fff7ffd", + "0xe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fcc7fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fcc7fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff47fff8000", + "0x48127ff97fff8000", + "0x480a7ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff27fff8000", + "0x480a7ff37fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffed8", + "0x20680017fff7ffd", + "0x22", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff47fff8000", + "0x480a7ff67fff8000", + "0x48127ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x108b", + "0x20680017fff7ffd", + "0xe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fcc7fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fcc7fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff47fff8000", + "0x48127ff97fff8000", + "0x480a7ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x109c", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x8a7", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff77fff", + "0x400280017ff77ff5", + "0x400280027ff77ffb", + "0x400280037ff77ffc", + "0x400280047ff77ffd", + "0x400280057ff77ffe", + "0x480280077ff78000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff78000", + "0x482680017ff78000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff78000", + "0x482680017ff78000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff78000", + "0x480280097ff78000", + "0x1104800180018000", + "0x864", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x104a", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x84a", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff77fff", + "0x400280017ff77ff5", + "0x400280027ff77ffb", + "0x400280037ff77ffc", + "0x400280047ff77ffd", + "0x400280057ff77ffe", + "0x480280077ff78000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff78000", + "0x482680017ff78000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff78000", + "0x482680017ff78000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff78000", + "0x480280097ff78000", + "0x1104800180018000", + "0x807", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xffc", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff67fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffdd2", + "0x20680017fff7ffd", + "0x20", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0xff2", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fb07fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fb07fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff57fff8000", + "0x48127ff97fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xffd", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x7a3", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff77fff", + "0x400280017ff77ff5", + "0x400280027ff77ffb", + "0x400280037ff77ffc", + "0x400280047ff77ffd", + "0x400280057ff77ffe", + "0x480280077ff78000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff78000", + "0x482680017ff78000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff78000", + "0x482680017ff78000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff78000", + "0x480280097ff78000", + "0x1104800180018000", + "0x760", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0xfad", + "0x20680017fff7ffd", + "0xb", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xfd4", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x733", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffc7fff", + "0x400280017ffc7ff5", + "0x400280027ffc7ffb", + "0x400280037ffc7ffc", + "0x400280047ffc7ffd", + "0x400280057ffc7ffe", + "0x480280077ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffc8000", + "0x482680017ffc8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffc8000", + "0x482680017ffc8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffc8000", + "0x480280097ffc8000", + "0x1104800180018000", + "0x6f0", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffa80007ffb", + "0x400280007ffd7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x482680017ffd8000", + "0x1", + "0x1104800180018000", + "0xf84", + "0x20680017fff7ffd", + "0x9", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xfcb", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0xfef", + "0x1104800180018000", + "0x1018", + "0x20680017fff7ffd", + "0xc", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x100b", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffc7fff", + "0x400380017ffc7ffa", + "0x400280027ffc7ffe", + "0x400280037ffc7ffd", + "0x480280057ffc8000", + "0x20680017fff7fff", + "0xc", + "0x480280047ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480280067ffc8000", + "0x10780017fff7fff", + "0x9", + "0x480280047ffc8000", + "0x482680017ffc8000", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480280067ffc8000", + "0x480280077ffc8000", + "0x1104800180018000", + "0x1015", + "0x20680017fff7ffd", + "0xc", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffea16", + "0x20680017fff7ffd", + "0x63", + "0x20680017fff7fff", + "0x52", + "0x4825800180007ff5", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x494e56414c49445f4143434f554e545f41444452455353", + "0x400080007ffe7fff", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x1104800180018000", + "0xfd9", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x20", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x100b", + "0x20680017fff7ffd", + "0x8", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x10780017fff7fff", + "0x18", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe9a0", + "0x20680017fff7ffd", + "0x45", + "0x20680017fff7fff", + "0x8", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x10780017fff7fff", + "0x20", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x1104800180018000", + "0x101c", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x29", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xfad", + "0x20680017fff7ffd", + "0x11", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff5b9", + "0x20680017fff7ffd", + "0x32", + "0x48287ffd80007fff", + "0x20680017fff7fff", + "0x20", + "0x480a7ff87fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x48127ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1011", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x43616e206f6e6c792072656e6f756e636520726f6c6520666f722073656c66", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x480a7ffa7fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x48127ffa7fff8000", + "0x480a7ffa7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff868", + "0x20680017fff7ffd", + "0x20", + "0x48127fff7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff9fb", + "0x48317fff80007ffd", + "0x20680017fff7fff", + "0xd", + "0x40780017fff7fff", + "0x2", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x45585045435445445f46524f4d5f4252494447455f4f4e4c59", + "0x400080007ffe7fff", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x482480017ffa8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x7", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x208b7fff7fff7ffe", + "0x4825800180007ffb", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x31", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x544f4b454e5f4e4f545f494e5f425249444745", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x482480017ffa8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xff4", + "0x20680017fff7ffd", + "0xb", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x101c", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x4ef", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff97fff", + "0x400280017ff97ff5", + "0x400280027ff97ffb", + "0x400280037ff97ffc", + "0x400280047ff97ffd", + "0x400280057ff97ffe", + "0x480280077ff98000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff98000", + "0x482680017ff98000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff98000", + "0x482680017ff98000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff98000", + "0x480280097ff98000", + "0x1104800180018000", + "0x4ac", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xfcf", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x495", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffa7fff", + "0x400280017ffa7ff5", + "0x400280027ffa7ffb", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x400280057ffa7ffe", + "0x480280077ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffa8000", + "0x480280097ffa8000", + "0x1104800180018000", + "0x452", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x1a78", + "0x482480017fff8000", + "0x1a77", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4825800180007ff8", + "0x12a2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff77fff", + "0x10780017fff7fff", + "0x4c", + "0x4825800180007ff8", + "0x12a2", + "0x400280007ff77fff", + "0x482680017ff78000", + "0x1", + "0x20780017fff7ffd", + "0xd", + "0x48127fff7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe7b1", + "0x20680017fff7ffe", + "0x27", + "0x400280007ffc7fff", + "0x48127ff07fff8000", + "0x48127fee7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x482680017ffc8000", + "0x1", + "0x4825800180007ffd", + "0x1", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd1", + "0x20680017fff7ffa", + "0xc", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127fee7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff78000", + "0x1", + "0x480a7ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x526573756c743a3a756e77726170206661696c65642e", + "0x1104800180018000", + "0xf15", + "0x20680017fff7ffd", + "0x7", + "0x480680017fff8000", + "0x0", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xf12", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x3b8", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff67fff", + "0x400280017ff67ff5", + "0x400280027ff67ffb", + "0x400280037ff67ffc", + "0x400280047ff67ffd", + "0x400280057ff67ffe", + "0x480280077ff68000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff68000", + "0x482680017ff68000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff68000", + "0x482680017ff68000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff68000", + "0x480280097ff68000", + "0x1104800180018000", + "0x375", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x703", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480080037ffb8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffa", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x74f", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffb7fff", + "0x400380017ffb7ff9", + "0x400280027ffb7ffe", + "0x400280037ffb7ffd", + "0x400380047ffb7ffd", + "0x480280067ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffb8000", + "0x480280087ffb8000", + "0x1104800180018000", + "0x310", + "0x20680017fff7ffd", + "0xd", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x6ec", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x2d1", + "0x1104800180018000", + "0x2eb", + "0x20680017fff7ffd", + "0xd", + "0x48127fea7fff8000", + "0x48127ff57fff8000", + "0x48127fe97fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fea7fff8000", + "0x48127ff57fff8000", + "0x48127fe97fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xe3d", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x2d9", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff97fff", + "0x400280017ff97ff5", + "0x400280027ff97ffb", + "0x400280037ff97ffc", + "0x400280047ff97ffd", + "0x400280057ff97ffe", + "0x480280077ff98000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff98000", + "0x482680017ff98000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff98000", + "0x482680017ff98000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff98000", + "0x480280097ff98000", + "0x1104800180018000", + "0x296", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff2a2", + "0x20680017fff7ffd", + "0x104", + "0x480a7ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe659", + "0x20680017fff7ffd", + "0xf1", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0xde", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x48127fbf7fff8000", + "0x40137fbe7fff8000", + "0x1104800180018000", + "0xdd5", + "0x20680017fff7ffd", + "0xc9", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0xd2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de06068", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x1104800180018000", + "0xe2d", + "0x20680017fff7ffd", + "0xb4", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0xe21", + "0x20680017fff7ffd", + "0x9f", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0xe15", + "0x20680017fff7ffd", + "0x8a", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x23edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da7", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x1104800180018000", + "0xe09", + "0x20680017fff7ffd", + "0x75", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e", + "0x480680017fff8000", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x1104800180018000", + "0xdfd", + "0x20680017fff7ffd", + "0x60", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0xdf1", + "0x20680017fff7ffd", + "0x4b", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x480a80007fff8000", + "0x1104800180018000", + "0xd82", + "0x20680017fff7ffd", + "0x37", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x1104800180018000", + "0xdda", + "0x20680017fff7ffd", + "0x22", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x37693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b96", + "0x480680017fff8000", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x1104800180018000", + "0xdce", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x524f4c45535f414c52454144595f494e495449414c495a4544", + "0x400080007ffe7fff", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x3fc801c47df4de8d5835f8bfd4d0b8823ba63e5a3f278086901402d680abfc", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffc7fff", + "0x400380017ffc7ffb", + "0x400280027ffc7ffd", + "0x400280037ffc7ffe", + "0x400380047ffc7ffd", + "0x480280067ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffc8000", + "0x480280087ffc8000", + "0x1104800180018000", + "0x145", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x64", + "0x48287ffd80017fff", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ffa7fff", + "0x10780017fff7fff", + "0x1e", + "0x400280007ffa7fff", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xd48", + "0x482680017ffa8000", + "0x1", + "0x20680017fff7ffc", + "0xc", + "0x48127fff7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fff7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x16", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4c494d49545f5043545f544f4f5f48494748", + "0x400080007ffe7fff", + "0x482680017ffa8000", + "0x1", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0x28", + "0x480a7ff97fff8000", + "0x480280067ffb8000", + "0x1104800180018000", + "0xd48", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x20680017fff7ffc", + "0xf", + "0x40780017fff7fff", + "0x2", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4e6f6e20436c61737348617368", + "0x400080007ffe7fff", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x11", + "0x480a7ff97fff8000", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0x28", + "0x480a7ff97fff8000", + "0x480280067ffb8000", + "0x1104800180018000", + "0xd25", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x20680017fff7ffc", + "0xf", + "0x40780017fff7fff", + "0x2", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4e6f6e20436f6e747261637441646472657373", + "0x400080007ffe7fff", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x11", + "0x480a7ff97fff8000", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x16", + "0x480280007ffc8003", + "0x480280017ffc8003", + "0x4844800180017ffe", + "0x100000000000000000000000000000000", + "0x483180017ffd7ffd", + "0x482480017fff7ffd", + "0x800000000000010fffffffffffffffff7ffffffffffffef0000000000000001", + "0x20680017fff7ffc", + "0x6", + "0x402480017fff7ffd", + "0xffffffffffffffffffffffffffffffff", + "0x10780017fff7fff", + "0x4", + "0x402480017ffe7ffd", + "0xf7ffffffffffffef0000000000000000", + "0x400280027ffc7ffd", + "0x20680017fff7ffe", + "0xe", + "0x402780017fff7fff", + "0x1", + "0x400380007ffc7ffd", + "0x40780017fff7fff", + "0x5", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x6", + "0x482680017ffc8000", + "0x3", + "0x48127ffe7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0xb", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480280067ffb8000", + "0x208b7fff7fff7ffe", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffa7fff", + "0x400380017ffa7ff9", + "0x400380027ffa7ffb", + "0x400380037ffa7ffc", + "0x400380047ffa7ffd", + "0x480280067ffa8000", + "0x20680017fff7fff", + "0xc", + "0x480280057ffa8000", + "0x482680017ffa8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480280057ffa8000", + "0x482680017ffa8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffa8000", + "0x480280087ffa8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x9", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x43", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x10b7ff27fff7fff", + "0x10780017fff7fff", + "0x32e", + "0x10780017fff7fff", + "0x318", + "0x10780017fff7fff", + "0x302", + "0x10780017fff7fff", + "0x2ec", + "0x10780017fff7fff", + "0x2d6", + "0x10780017fff7fff", + "0x2c0", + "0x10780017fff7fff", + "0x2aa", + "0x10780017fff7fff", + "0x294", + "0x10780017fff7fff", + "0x27e", + "0x10780017fff7fff", + "0x268", + "0x10780017fff7fff", + "0x252", + "0x10780017fff7fff", + "0x23c", + "0x10780017fff7fff", + "0x226", + "0x10780017fff7fff", + "0x210", + "0x10780017fff7fff", + "0x1fa", + "0x10780017fff7fff", + "0x1e4", + "0x10780017fff7fff", + "0x1cd", + "0x10780017fff7fff", + "0x1b6", + "0x10780017fff7fff", + "0x19f", + "0x10780017fff7fff", + "0x18a", + "0x10780017fff7fff", + "0x161", + "0x10780017fff7fff", + "0x138", + "0x10780017fff7fff", + "0x10f", + "0x10780017fff7fff", + "0xf9", + "0x10780017fff7fff", + "0xe3", + "0x10780017fff7fff", + "0xcb", + "0x10780017fff7fff", + "0xa1", + "0x10780017fff7fff", + "0x89", + "0x10780017fff7fff", + "0x72", + "0x10780017fff7fff", + "0x59", + "0x10780017fff7fff", + "0x41", + "0x10780017fff7fff", + "0x2b", + "0x10780017fff7fff", + "0x15", + "0x480680017fff8000", + "0x10f262273ceaa52776e74b306e33ad0b9e1b4051ae2efdfd782bc4569b421cf", + "0x400280007ffb7fff", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc3b", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x2ed", + "0x480680017fff8000", + "0x3a0c1cf46dc066a259a9d0eebd3b0734913b6d16e7a3e4fad9b79f8c32da0a8", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc31", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x2d9", + "0x480680017fff8000", + "0xa5939adc9600c99eba18c0760fc0884d52129df955922bb7f3a114485b4606", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc2c", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x2c5", + "0x480680017fff8000", + "0x194fc63c49b0f07c8e7a78476844837255213824bd6cb81e0ccfb949921aad1", + "0x400280007ffb7fff", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc25", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x2af", + "0x480680017fff8000", + "0x282f521c69b2bc696552b9e141009d3c84f2df75e2e7b7716644d31e60f23b1", + "0x400280007ffb7fff", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc23", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x298", + "0x480680017fff8000", + "0x221e5a5008f7a28564f0eaa32cdeb0848d10657c449aed3e15d12150a7c2db3", + "0x400280007ffb7fff", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc28", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x283", + "0x480680017fff8000", + "0x374396cb322ab5ffd35ddb8627514609289d22c07d039ead5327782f61bb833", + "0x400280007ffb7fff", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc22", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x26d", + "0x480680017fff8000", + "0x4e27c50589ccad9e9fc4b954a8375612ac51bbefa594da7109c7b7d369cb46", + "0x400280007ffb7fff", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc1c", + "0x20680017fff7ffb", + "0xa", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x250", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x2e6ba14ec4c96f43a28d28e14dd22e770fa1138cfc2f3e6421dba1fb91b7c17", + "0x400280007ffb7fff", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc30", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x22f", + "0x480680017fff8000", + "0xcfefac9fac087f5372e9e1f677824f7420c3261eaf33ba240b836cd570e152", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc32", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x21b", + "0x480680017fff8000", + "0x3da438fe76a955cfd731f2521594d43baae6615852ab7fd9099dc0709b8f75b", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc2d", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x207", + "0x480680017fff8000", + "0x38a81c7fd04bac40e22e3eab2bcb3a09398bba67d0c5a263c6665c9c0b13a3", + "0x400280007ffb7fff", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc22", + "0x20680017fff7ffb", + "0xa", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x1eb", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x7633a8d8b49c5c6002a1329e2c9791ea2ced86e06e01e17b5d0d1d5312c792", + "0x400280007ffb7fff", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc1d", + "0x20680017fff7ffb", + "0xa", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x1c4", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x34bb683f971572e1b0f230f3dd40f3dbcee94e0b3e3261dd0a91229a1adc4b7", + "0x400280007ffb7fff", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc18", + "0x20680017fff7ffb", + "0xa", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x19d", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0xd1831486d8c46712712653f17d3414869aa50b4c16836d0b3d4afcfeafa024", + "0x400280007ffb7fff", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc1a", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x17f", + "0x480680017fff8000", + "0x9d4a59b844ac9d98627ddba326ab3707a7d7e105fd03c777569d0f61a91f1e", + "0x400280007ffb7fff", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc0f", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x16a", + "0x480680017fff8000", + "0x2842fd3b01bb0858fef6a2da51cdd9f995c7d36d7625fb68dd5d69fcc0a6d76", + "0x400280007ffb7fff", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc0e", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x155", + "0x480680017fff8000", + "0x2b23b0c08c7b22209aea4100552de1b7876a49f04ee5a4d94f83ad24bc4ec1c", + "0x400280007ffb7fff", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc0d", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x140", + "0x480680017fff8000", + "0x1f9961b3744c1e017cbcfafecec635be98ae8c6aeb9f70be5b7e93f2f52e2e5", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc0d", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x12c", + "0x480680017fff8000", + "0xf98c2e7c652ac3805eb73ff089b53a4b501f8e2d750a6131f474d71d49fef8", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc08", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x118", + "0x480680017fff8000", + "0x209ff368803f5de65188245078e888d4462f8d98697699c1dcdd8b02ffb250f", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc03", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x104", + "0x480680017fff8000", + "0x198116a5c5421876feb02bdb0b472ace223bdde3dbd87f92db8d735a233fbb0", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbfe", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0xf0", + "0x480680017fff8000", + "0x3ae95723946e49d38f0cf844cef1fb25870e9a74999a4b96271625efa849b4c", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbf9", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0xdc", + "0x480680017fff8000", + "0x2d8a82390cce552844e57407d23a1e48a38c4b979d525b1673171e503e116ab", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbf4", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0xc8", + "0x480680017fff8000", + "0x20e4d3438ce3d451a0b4c17cdcbdd5aef2ba11c5b28a2d65353f91db3eb26dd", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbef", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0xb4", + "0x480680017fff8000", + "0xf73e08374e6098adb9600916577e3311612674306f1c2e3fe239a4576ad157", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbea", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0xa0", + "0x480680017fff8000", + "0x36d743b501f1ce191c02b6bd687c6790def364974947f206de67805a5d0d794", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbe5", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x8c", + "0x480680017fff8000", + "0xa3eac89d22258ea63a7f47b0be3c559c6177eb4d7fe6641b109da1e1272d60", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbe0", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x78", + "0x480680017fff8000", + "0x2143175c365244751ccde24dd8f54f934672d6bc9110175c9e58e1e73705531", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbdb", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x64", + "0x480680017fff8000", + "0x25e2d538533284b9d61dfe45b9aaa563d33ef8374d9bb26d77a009b8e21f0de", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbd6", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x50", + "0x480680017fff8000", + "0x1d6c15800e6da7a5556b49a824ea4b70c1169d71092c1a4c5d80aaadc6636d1", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbd1", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x3c", + "0x480680017fff8000", + "0x2eb7ab861b6ade361ff0e949e94d48fd5b2052639b40cfe9f796f2bb7864f45", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbcc", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x28", + "0x480680017fff8000", + "0xde2aa78658531ebb6d1125461e139734c22e0d3045a3a44366066a2756070e", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbc7", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x14", + "0x480680017fff8000", + "0x2642a36e73652fddc2c8b6e54d2dd5396dd5385d190a121e2e1da5772dff325", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbc2", + "0x480a7ff07fff8000", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x41", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x3f", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x58b484ac6cdba723daf27897a3787c6aafc408c55ab0535ec94fed593483b7", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x480280027ffc8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffb7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffb7ffd", + "0x400280027ffb7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x482680017ffc8000", + "0x3", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x476574457865637574696f6e496e666f", + "0x400280007ffd7fff", + "0x400380017ffd7ffc", + "0x480280037ffd8000", + "0x20680017fff7fff", + "0xc", + "0x480280027ffd8000", + "0x482680017ffd8000", + "0x5", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480280047ffd8000", + "0x10780017fff7fff", + "0x9", + "0x480280027ffd8000", + "0x482680017ffd8000", + "0x6", + "0x480680017fff8000", + "0x1", + "0x480280047ffd8000", + "0x480280057ffd8000", + "0x1104800180018000", + "0xb62", + "0x20680017fff7ffd", + "0xa", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x31", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x2f", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x3a59528bf161e30b9b238f21a617fcbbf76440b827f085240077925ab4b8dcf", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x480280027ffc8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffb7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffb7ffd", + "0x400280027ffb7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x482680017ffc8000", + "0x3", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1ea43de8c123570bf07ef49fac65a58e3ae0aea154c177fd072a276e6b5db3", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x480280027ffc8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffb7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffb7ffd", + "0x400280027ffb7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x482680017ffc8000", + "0x3", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff3d", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x4f2", + "0x1104800180018000", + "0x51b", + "0x20680017fff7ffd", + "0xc", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xaca", + "0x20680017fff7ffd", + "0x22", + "0x20680017fff7ffe", + "0x12", + "0x480280007ffb8004", + "0x4824800180037fff", + "0x1", + "0x48307ffe7fff7ffd", + "0x480280017ffb7ffe", + "0x480280027ffb7fff", + "0x40507ffe7ffa7ffd", + "0x40317fff7ffd7ffc", + "0x482680017ffb8000", + "0x3", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x3", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4469766973696f6e2062792030", + "0x400080007ffe7fff", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x482480017ffb8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x5", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xaaa", + "0x48127ffd7fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0xacd", + "0x20680017fff7ffc", + "0x1b", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xb26", + "0x20680017fff7ffd", + "0xb", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fb17fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fb17fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fb17fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffd80007ffc", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x6", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb00", + "0x20680017fff7fff", + "0x8", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x1557182e4359a1f0c6301278e8f5b35a776ab58d39892581e357578fb287836", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x43616c6c436f6e7472616374", + "0x400280007ffc7fff", + "0x400380017ffc7ffb", + "0x400380027ffc7ffd", + "0x400280037ffc7ffc", + "0x400280047ffc7ffd", + "0x400280057ffc7ffe", + "0x480280077ffc8000", + "0x20680017fff7fff", + "0xb", + "0x480280067ffc8000", + "0x482680017ffc8000", + "0xa", + "0x480680017fff8000", + "0x0", + "0x480280087ffc8000", + "0x480280097ffc8000", + "0x10780017fff7fff", + "0x9", + "0x480280067ffc8000", + "0x482680017ffc8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffc8000", + "0x480280097ffc8000", + "0x1104800180018000", + "0xd1", + "0x20680017fff7ffd", + "0x21", + "0x480a7ffa7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd819", + "0x20680017fff7ffd", + "0xc", + "0x40780017fff7fff", + "0x2", + "0x48127ff87fff8000", + "0x48127fbf7fff8000", + "0x48127fbf7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x52657475726e6564206461746120746f6f2073686f7274", + "0x400080007ffe7fff", + "0x48127ff87fff8000", + "0x48127fbf7fff8000", + "0x48127fbf7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x36", + "0x480a7ffa7fff8000", + "0x48127fbf7fff8000", + "0x48127fbf7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fc47fff8000", + "0x48127fc47fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xade", + "0x20680017fff7ffd", + "0xb", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xaed", + "0x20680017fff7ffd", + "0xa", + "0x40780017fff7fff", + "0x2", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x753235365f6d756c204f766572666c6f77", + "0x400080007ffe7fff", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x482480017ffb8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xaed", + "0x20680017fff7ffc", + "0x52", + "0x20680017fff7ffd", + "0x42", + "0x480280007ff98000", + "0x480280017ff98000", + "0x480280027ff98000", + "0x480280037ff98000", + "0x48307fff80007ffb", + "0xa0680017fff7fff", + "0x8", + "0x48307ffc7fff7ff8", + "0x402480017fff7ffe", + "0x1", + "0x400280047ff97fff", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0x1", + "0x400280047ff97ffd", + "0x48307ffb80008002", + "0x48287ffa80028001", + "0x4844800180028001", + "0x100000000000000000000000000000000", + "0x4850800180018001", + "0xa0680017fff7ff6", + "0xc", + "0xa0680017fff8002", + "0x6", + "0x48127ff27fff7fff", + "0x48127ff27fff7fff", + "0x10780017fff7fff", + "0x10", + "0x48127ff37fff7fff", + "0x48127ff17fff7fff", + "0x10780017fff7fff", + "0xc", + "0x480680017fff7ff3", + "0x0", + "0xa0680017fff8001", + "0x6", + "0x48127ff07fff7ffe", + "0x40127ff27fff7ffe", + "0x10780017fff7fff", + "0x4", + "0x48127ff37fff7ffe", + "0x40127fef7fff7ffe", + "0x482480017ffd8000", + "0xffffffffffffffff0000000000000000", + "0x400280057ff97fff", + "0x48507ffd7ffc8000", + "0x48307ff77ffa8000", + "0x48307ff17fff8000", + "0x40317ffd7fff7ffb", + "0x482680017ff98000", + "0x6", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127ff27fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0xac3", + "0x48127fff7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127fd47fff8000", + "0x48127fd47fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x28", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4469766973696f6e2062792030", + "0x400080007ffe7fff", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x482480017ffb8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2a", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fd27fff8000", + "0x48127fd27fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x3d", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff0bf", + "0x20680017fff7ffd", + "0x4b", + "0x480a7ff77fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x15180", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe72", + "0x20680017fff7ffd", + "0x38", + "0x48127ffc7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0xa98", + "0x20680017fff7ffd", + "0x22", + "0x48127ffc7fff8000", + "0x48127fa67fff8000", + "0x480a7ff97fff8000", + "0x48127fa57fff8000", + "0x480a7ffb7fff8000", + "0x48127fc77fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x1104800180018000", + "0xaa9", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x3c", + "0x48127fc07fff8000", + "0x48127f6a7fff8000", + "0x480a7ff97fff8000", + "0x48127f697fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fbd7fff8000", + "0x48127fbd7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6f", + "0x48127f8d7fff8000", + "0x48127f6a7fff8000", + "0x480a7ff97fff8000", + "0x48127f697fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f8a7fff8000", + "0x48127f8a7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x90", + "0x480a7ff77fff8000", + "0x48127f6a7fff8000", + "0x480a7ff97fff8000", + "0x48127f697fff8000", + "0x480680017fff8000", + "0x1", + "0x48127f697fff8000", + "0x48127f697fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x3b", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0x28", + "0x480a7ff97fff8000", + "0x480280067ffb8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe684", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x20680017fff7ffc", + "0xf", + "0x40780017fff7fff", + "0x2", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x53746f7265553634202d206e6f6e20753634", + "0x400080007ffe7fff", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x12", + "0x480a7ff97fff8000", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd38e", + "0x20680017fff7ffe", + "0x37", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x40137ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe36d", + "0x20680017fff7ffa", + "0x1f", + "0x20680017fff7ffd", + "0xe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480a80007fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd27c", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x1104800180018000", + "0x9e3", + "0x20680017fff7ffd", + "0xe", + "0x480a7ffb7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffdcdc", + "0x48127fed7fff8000", + "0x48127fed7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0xf30", + "0x482480017fff8000", + "0xf2f", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480080007ffc8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x9f1", + "0x20680017fff7ffc", + "0xb", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1ac8d354f2e793629cb233a16f10d13cf15b9c45bbc620577c8e1df95ede545", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x480280027ffc8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffb7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffb7ffd", + "0x400280027ffb7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x482680017ffc8000", + "0x3", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffc4c", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480080007ffb8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0xa", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x400180007fff7ffd", + "0x480680017fff8000", + "0x1", + "0x48127ffe7fff8000", + "0x482480017ffd8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffae", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffb7fff", + "0x400380017ffb7ff9", + "0x400280027ffb7ffe", + "0x400280037ffb7ffd", + "0x400380047ffb7ffd", + "0x480280067ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffb8000", + "0x480280087ffb8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff855", + "0x20680017fff7ffd", + "0xd", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0xa2f", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffb7fff", + "0x400380017ffb7ff9", + "0x400280027ffb7ffe", + "0x400280037ffb7ffd", + "0x400380047ffb7ffd", + "0x480280067ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffb8000", + "0x480280087ffb8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff81a", + "0x20680017fff7ffd", + "0xd", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x2d", + "0x480680017fff8000", + "0x0", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x2b", + "0x480680017fff8000", + "0x0", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0xcfc0e4c73ce8e46b07c3167ce01ce17e6c2deaaa5b88b977bbb10abe25c9ad", + "0x1104800180018000", + "0x128", + "0x1104800180018000", + "0x151", + "0x20680017fff7ffd", + "0xa", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x9c3", + "0x48127ffd7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe1b", + "0x20680017fff7ffc", + "0x1c", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe50", + "0x20680017fff7ffd", + "0xc", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd27fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd27fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd27fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x29", + "0x480680017fff8000", + "0x0", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffd", + "0x6", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0xcfc0e4c73ce8e46b07c3167ce01ce17e6c2deaaa5b88b977bbb10abe25c9ad", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffc7fff", + "0x400380017ffc7ffb", + "0x400280027ffc7ffd", + "0x400280037ffc7ffe", + "0x400280047ffc7ffc", + "0x480280067ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffc8000", + "0x480280087ffc8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff76a", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x27", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0xd89", + "0x482480017fff8000", + "0xd88", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4825800180007ff9", + "0x1112", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff87fff", + "0x10780017fff7fff", + "0x43", + "0x4825800180007ff9", + "0x1112", + "0x400280007ff87fff", + "0x482680017ff88000", + "0x1", + "0x48297ffa80007ffb", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffa8000", + "0x1", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x20680017fff7ffe", + "0x1e", + "0x480080007fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd367", + "0x48127ff37fff8000", + "0x48127ff17fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffce", + "0x20680017fff7ffd", + "0x8", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x10780017fff7fff", + "0xd", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff88000", + "0x1", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x482480017ffa8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x52c476292b358ba7d29adb58502341b4cc5437d07f67d3e285e085828bc820", + "0x400280007ffb7fff", + "0x400380017ffb7ffc", + "0x480280027ffb8000", + "0x400280037ffb7fff", + "0x400380047ffb7ffd", + "0x480280057ffb8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffa7ffc", + "0x480280017ffa7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffa7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffa7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffa7ffd", + "0x400280027ffa7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffa8000", + "0x3", + "0x482680017ffb8000", + "0x6", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0x1a", + "0x480280067ffb8000", + "0x4824800180007fff", + "0x0", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x20680017fff7ffd", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48307ffa80007ffb", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x2e9f66c6eea14532c94ad25405a4fcb32faa4969559c128d837caa0ec50a655", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x480280027ffc8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffb7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffb7ffd", + "0x400280027ffb7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x482680017ffc8000", + "0x3", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffda3a", + "0x20680017fff7ffd", + "0x32", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x860", + "0x20680017fff7ffd", + "0x20", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1b3", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x868", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff611", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff57fff", + "0x400280017ff57ff5", + "0x400280027ff57ffb", + "0x400280037ff57ffc", + "0x400280047ff57ffd", + "0x400280057ff57ffe", + "0x480280077ff58000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff58000", + "0x482680017ff58000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff58000", + "0x482680017ff58000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff58000", + "0x480280097ff58000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff5ce", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd999", + "0x20680017fff7ffd", + "0x32", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x7bf", + "0x20680017fff7ffd", + "0x20", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x2a", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd928", + "0x20680017fff7ffd", + "0x51", + "0x20680017fff7fff", + "0x8", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x10780017fff7fff", + "0x23", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x7bc", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x33", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe578", + "0x20680017fff7ffd", + "0x24", + "0x48127fdb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x7ef", + "0x20680017fff7ffd", + "0x11", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fdb7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ffb7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffce93", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd22a", + "0x480680017fff8000", + "0x1c67057e2995950900dbf33db0f5fc9904f5a18aae4a3768f721c43efe5d288", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x43616c6c436f6e7472616374", + "0x400280007ff97fff", + "0x400380017ff97ff8", + "0x400380027ff97ffa", + "0x400280037ff97ffc", + "0x400280047ff97ffd", + "0x400280057ff97ffe", + "0x480280077ff98000", + "0x20680017fff7fff", + "0xb", + "0x480280067ff98000", + "0x482680017ff98000", + "0xa", + "0x480680017fff8000", + "0x0", + "0x480280087ff98000", + "0x480280097ff98000", + "0x10780017fff7fff", + "0x9", + "0x480280067ff98000", + "0x482680017ff98000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff98000", + "0x480280097ff98000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffac1", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x37", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x39", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffa", + "0x9", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x400180007fff7ffd", + "0x480680017fff8000", + "0x1", + "0x48127ffe7fff8000", + "0x482480017ffd8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x35", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x33", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd840", + "0x20680017fff7ffd", + "0x51", + "0x20680017fff7fff", + "0x40", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0x6da", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x2a", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe496", + "0x20680017fff7ffd", + "0x1b", + "0x48127fdb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x767", + "0x20680017fff7ffd", + "0x8", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x10780017fff7fff", + "0x21", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fdb7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd809", + "0x20680017fff7ffd", + "0x34", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x773", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x20", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x48127fce7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x7a3", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x31b6e2ac42e0e554bf70a1d3d890fda8a700de6068f723a0ec603cac893a1e4", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffc7fff", + "0x400380017ffc7ffb", + "0x400280027ffc7ffd", + "0x400280037ffc7ffe", + "0x400380047ffc7ffd", + "0x480280067ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffc8000", + "0x480280087ffc8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff3bc", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8004", + "0xe", + "0x4825800180047ffd", + "0x800000000000000000000000000000000000000000000000000000000000000", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8002", + "0x480280007ffc7ffc", + "0x480280017ffc7ffc", + "0x402480017ffb7ffd", + "0xffffffffffffffeeffffffffffffffff", + "0x400280027ffc7ffd", + "0x10780017fff7fff", + "0x13", + "0x484480017fff8001", + "0x8000000000000000000000000000000", + "0x48317fff80007ffd", + "0x480280007ffc7ffd", + "0x480280017ffc7ffd", + "0x402480017ffc7ffe", + "0xf8000000000000000000000000000000", + "0x400280027ffc7ffe", + "0x40780017fff7fff", + "0x1", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x10780017fff7fff", + "0x8", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0xa0680017fff8004", + "0xe", + "0x4825800180047ffd", + "0x800000000000000000000000000000000000000000000000000000000000000", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8002", + "0x480280007ffc7ffc", + "0x480280017ffc7ffc", + "0x402480017ffb7ffd", + "0xffffffffffffffeeffffffffffffffff", + "0x400280027ffc7ffd", + "0x10780017fff7fff", + "0x13", + "0x484480017fff8001", + "0x8000000000000000000000000000000", + "0x48317fff80007ffd", + "0x480280007ffc7ffd", + "0x480280017ffc7ffd", + "0x402480017ffc7ffe", + "0xf8000000000000000000000000000000", + "0x400280027ffc7ffe", + "0x40780017fff7fff", + "0x1", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x10780017fff7fff", + "0x8", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcfc6", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffccbd", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffccb8", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffccce", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffccc9", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcf9e", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd056", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffccb4", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff57fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcf89", + "0x480a7ff67fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcf84", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd03c", + "0x480a7ff97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcc9a", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcc90", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd027", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcf5f", + "0x480a7ff77fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcc7b", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd012", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x480a7ff37fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcf48", + "0x480a7ff47fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcf43", + "0x480a7ff57fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcc5f", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcff6", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x40137ff07fff8000", + "0x40137ff17fff8001", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffebef", + "0x20680017fff7ffd", + "0xb", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcf13", + "0x480a7ff77fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffceed", + "0x480a7ff87fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcee8", + "0x400180007fff7ff9", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x482480017ffc8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcc1e", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcef8", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcc0f", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcee9", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff27fff8000", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff95b", + "0x20680017fff7ffd", + "0xb", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff27fff8000", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff939", + "0x20680017fff7ffd", + "0xb", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff27fff8000", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff917", + "0x20680017fff7ffd", + "0xb", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb7a", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffce4e", + "0x480a7ff87fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb8b", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb86", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffce3a", + "0x480a7ff87fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb77", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb72", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffce26", + "0x480a7ff87fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffce21", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffce1c", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb54", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb4f", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb45", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb40", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb36", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb31", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb27", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb22", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb18", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb13", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb09", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb04", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcafa", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcaf5", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcaeb", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcae6", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcadc", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcad7", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcacd", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcac8", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcabe", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcab9", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcaaf", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcaaa", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcaa0", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffca9b", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffca91", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffca8c", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffca82", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffca7d", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffca73", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffca6e", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x4c2", + "0x20680017fff7ffd", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x375ac8b316fc124d3cdb1a54f390060e88a386e5ecb62a75e13c45910caf051", + "0x400280007ffb7fff", + "0x400380017ffb7ffc", + "0x480280027ffb8000", + "0x400280037ffb7fff", + "0x400380047ffb7ffd", + "0x480280057ffb8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffa7ffc", + "0x480280017ffa7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffa7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffa7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffa7ffd", + "0x400280027ffa7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffa8000", + "0x3", + "0x482680017ffb8000", + "0x6", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x49b", + "0x20680017fff7ffc", + "0x4d", + "0x20680017fff7ffd", + "0x3f", + "0x482680017ffd8000", + "0x1", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400080007ff97fff", + "0x400080017ff97ff8", + "0x400180027ff97ffc", + "0x400080037ff97ffe", + "0x480080057ff98000", + "0x20680017fff7fff", + "0x27", + "0x48127ff67fff8000", + "0x480080067ff78000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe2e5", + "0x480080047feb8000", + "0x482480017fea8000", + "0x7", + "0x20680017fff7ffc", + "0xe", + "0x40780017fff7fff", + "0x2", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127fe67fff8000", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x53746f726555313238202d206e6f6e2075313238", + "0x400080007ffe7fff", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x11", + "0x48127fe57fff8000", + "0x480080047fe68000", + "0x482480017fe58000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x480080067fe28000", + "0x480080077fe18000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x14", + "0x48127fe57fff8000", + "0x48127fe57fff8000", + "0x48127fe57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48127fe57fff8000", + "0x48127fe57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x14", + "0x48127fe57fff8000", + "0x48127fe57fff8000", + "0x48127fe57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127fe57fff8000", + "0x48127fe57fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffd80017ffb", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0xc", + "0x400280007ff97fff", + "0x40780017fff7fff", + "0x1", + "0x482680017ff98000", + "0x1", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x7", + "0x482680017ff98000", + "0x1", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x1", + "0x48297ffc80017ffa", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ffa7fff", + "0x10780017fff7fff", + "0xc", + "0x400080007ffb7fff", + "0x40780017fff7fff", + "0x5", + "0x482480017ff68000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x10780017fff7fff", + "0x1c", + "0x480680017fff8000", + "0x1", + "0x48307fff80017ffa", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080017ff67fff", + "0x10780017fff7fff", + "0xc", + "0x400080017ff77fff", + "0x40780017fff7fff", + "0x1", + "0x482480017ff68000", + "0x2", + "0x48127ffa7fff8000", + "0x48127ffc7fff8000", + "0x48127ff57fff8000", + "0x10780017fff7fff", + "0x8", + "0x482480017ff68000", + "0x2", + "0x48127ffa7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x31b6e2ac42e0e554bf70a1d3d890fda8a700de6068f723a0ec603cac893a1e4", + "0x1104800180018000", + "0x425", + "0x20680017fff7ffc", + "0x1a", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x45a", + "0x20680017fff7ffd", + "0xb", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x443", + "0x20680017fff7fff", + "0x8", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x4cb", + "0x20680017fff7ffd", + "0x9", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x4824800180008002", + "0xffffffffffffffff0000000000000000", + "0x480280007ff98001", + "0x480280017ff97ffe", + "0x400280027ff97ffe", + "0x484480017ffe8000", + "0x10000000000000000", + "0x40317ffc7fff7ffa", + "0x48487ffb7ffc8000", + "0x48487ffb7ffc8000", + "0x4824800180018002", + "0xffffffffffffffff0000000000000000", + "0x480280037ff98001", + "0x480280047ff97fff", + "0x400280057ff97ffd", + "0x484480017ffd8000", + "0x10000000000000000", + "0x40307ffd7fff7ffb", + "0x484480017ffd8000", + "0x10000000000000000", + "0x48307fff7ff98003", + "0x482480017fff8000", + "0xfffffffffffffffe0000000000000000", + "0x480280067ff97fff", + "0x480280077ff97ffd", + "0x400380087ff97ffd", + "0x404480017ffc7ffe", + "0x100000000000000000000000000000000", + "0x40287ffd7ffe7fff", + "0x40317ffc7ff77ffc", + "0x482680017ff98000", + "0x9", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x4ab", + "0x20680017fff7ffd", + "0xa", + "0x40780017fff7fff", + "0x2", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x753235365f616464204f766572666c6f77", + "0x400080007ffe7fff", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x482480017ffb8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe89", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x4a0", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffef39", + "0x20680017fff7ffd", + "0xd", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ff8", + "0x20", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb67", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0x4aa", + "0x20680017fff7ffd", + "0x8", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x10780017fff7fff", + "0x17", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffcb49", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x4ae", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x52f", + "0x482480017fff8000", + "0x52e", + "0x480080007fff8000", + "0x480080037fff8000", + "0x482480017fff8000", + "0xdf2", + "0xa0680017fff8000", + "0x8", + "0x48317ffe80007ff6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff57fff", + "0x10780017fff7fff", + "0xc2", + "0x48317ffe80007ff6", + "0x400280007ff57fff", + "0x482680017ff58000", + "0x1", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x85", + "0x480080007ffd8000", + "0x48307ffd80007ffe", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482480017ffc8000", + "0x1", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x10780017fff7fff", + "0x8", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x4b", + "0x480080007ffd8000", + "0x48327ff77ff98000", + "0x48327ffe7ffa8000", + "0x400280007ff77ffe", + "0x400280017ff77fff", + "0x400380027ff77ffb", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x480280047ff78000", + "0x480280057ff78000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007fe7", + "0xb36", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fe67fff", + "0x10780017fff7fff", + "0x26", + "0x4824800180007fe7", + "0xb36", + "0x400080007fe77fff", + "0x482480017fe78000", + "0x1", + "0x48127ffe7fff8000", + "0x48127ff87fff8000", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff9d", + "0x20680017fff7ffc", + "0xb", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017fe48000", + "0x1", + "0x48127fe27fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x48327ff77ff98000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x20680017fff7ffc", + "0xc", + "0x482480017ffd8000", + "0x1", + "0x400280007ff77fff", + "0x400280017ff77ffd", + "0x400280027ff77ffe", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x10780017fff7fff", + "0xa", + "0x482480017ffe8000", + "0x1", + "0x400280007ff77ffc", + "0x400280017ff77fff", + "0x400280027ff77ffe", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x48127fe97fff8000", + "0x48127fe77fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x20680017fff7ffc", + "0xc", + "0x482480017ffd8000", + "0x1", + "0x400280007ff77fff", + "0x400280017ff77ffd", + "0x400280027ff77ffe", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x10780017fff7fff", + "0xa", + "0x482480017ffe8000", + "0x1", + "0x400280007ff77ffc", + "0x400280017ff77fff", + "0x400280027ff77ffe", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x48127ff17fff8000", + "0x48127fef7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff58000", + "0x1", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x2a31bbb25d4dfa03fe73a91cbbab880b7c9cc4461880193ae5819ca6bbfe7cc", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x480280027ffc8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffb7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffb7ffd", + "0x400280027ffb7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x482680017ffc8000", + "0x3", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffde0e", + "0x20680017fff7ffd", + "0x35", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480a7ffd7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd199", + "0x20680017fff7ffd", + "0x20", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x43414c4c45525f49535f4d495353494e475f524f4c45", + "0x400080007ffe7fff", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x4b", + "0x480a7ff97fff8000", + "0x48127faf7fff8000", + "0x480a7ffb7fff8000", + "0x48127fae7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fae7fff8000", + "0x48127fae7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff6aa", + "0x20780017fff7ffd", + "0x6", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffa7fff", + "0x400380017ffa7ff8", + "0x400280027ffa7ffe", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x480280067ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffa8000", + "0x482680017ffa8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffa8000", + "0x482680017ffa8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffa8000", + "0x480280087ffa8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffed6a", + "0x20680017fff7ffd", + "0xd", + "0x48127fef7fff8000", + "0x48127ff57fff8000", + "0x48127fee7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fef7fff8000", + "0x48127ff57fff8000", + "0x48127fee7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x307", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffed59", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffa7fff", + "0x400280017ffa7ff5", + "0x400280027ffa7ffb", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x400280057ffa7ffe", + "0x480280077ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffa8000", + "0x480280097ffa8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffed16", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x2bb", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffecff", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffa7fff", + "0x400280017ffa7ff5", + "0x400280027ffa7ffb", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x400280057ffa7ffe", + "0x480280077ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffa8000", + "0x480280097ffa8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffecbc", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff616", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffb7fff", + "0x400380017ffb7ff9", + "0x400280027ffb7ffe", + "0x400280037ffb7ffd", + "0x400380047ffb7ffd", + "0x480280067ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffb8000", + "0x480280087ffb8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffec7b", + "0x20680017fff7ffd", + "0xd", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x234", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff27fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffec6a", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffa7fff", + "0x400280017ffa7ff5", + "0x400280027ffa7ffb", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x400280057ffa7ffe", + "0x480280077ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffa8000", + "0x480280097ffa8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffec27", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1ea", + "0x20680017fff7ffe", + "0xa", + "0x40780017fff7fff", + "0x2", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x7536342069732030", + "0x400080007ffe7fff", + "0x480680017fff8000", + "0x1", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0x28", + "0x480a7ff97fff8000", + "0x480280067ffb8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffde52", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x20680017fff7ffc", + "0xf", + "0x40780017fff7fff", + "0x2", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x53746f726555313238202d206e6f6e2075313238", + "0x400080007ffe7fff", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x11", + "0x480a7ff97fff8000", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0x28", + "0x480a7ff97fff8000", + "0x480280067ffb8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffd700", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x20680017fff7ffc", + "0xf", + "0x40780017fff7fff", + "0x2", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x53746f72655538202d206e6f6e207538", + "0x400080007ffe7fff", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x12", + "0x480a7ff97fff8000", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffbe0", + "0x40780017fff7fff", + "0x2", + "0x48127ffd7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffbd7", + "0x40780017fff7fff", + "0x2", + "0x48127ffd7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffbce", + "0x48127fb57fff8000", + "0x48127fce7fff8000", + "0x48127fcc7fff8000", + "0x48127fb37fff8000", + "0x48127fe37fff8000", + "0x48127fe37fff8000", + "0x48307ffb7ffa8001", + "0xa0680017fff7fff", + "0x7", + "0x4824800180007fff", + "0x100000000000000000000000000000000", + "0x400080007ff67fff", + "0x10780017fff7fff", + "0x56", + "0x400080007ff77fff", + "0x482480017ff78000", + "0x1", + "0x4824800180007ff9", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x6", + "0x40780017fff7fff", + "0xc", + "0x10780017fff7fff", + "0x41", + "0x4824800180007ffa", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x6", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x2e", + "0x480680017fff8000", + "0x0", + "0x48287ffb80017fff", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff67fff", + "0x10780017fff7fff", + "0xb", + "0x400080007ff77fff", + "0x40780017fff7fff", + "0x5", + "0x482480017ff28000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x19", + "0x480680017fff8000", + "0x0", + "0x48287ffd80017fff", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080017ff27fff", + "0x10780017fff7fff", + "0xb", + "0x400080017ff37fff", + "0x40780017fff7fff", + "0x1", + "0x482480017ff28000", + "0x2", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x6", + "0x482480017ff28000", + "0x2", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x7", + "0x40780017fff7fff", + "0x8", + "0x48127ff27fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffe7fff8000", + "0x48127fee7fff8000", + "0x48127ffd7fff8000", + "0x10780017fff7fff", + "0x9", + "0x40780017fff7fff", + "0xf", + "0x482480017fe78000", + "0x1", + "0x48127fef7fff8000", + "0x480680017fff8000", + "0x1", + "0x48307fea7ffe8001", + "0xa0680017fff7fff", + "0x7", + "0x4824800180007fff", + "0x100000000000000000000000000000000", + "0x400080007ffa7fff", + "0x10780017fff7fff", + "0xb", + "0x400080007ffb7fff", + "0x40780017fff7fff", + "0x1", + "0x482480017ffa8000", + "0x1", + "0x48127ffd7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x7", + "0x482480017ffa8000", + "0x1", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffd7fff8000", + "0x48127fe17fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb9", + "0x20680017fff7ffd", + "0x9", + "0x40780017fff7fff", + "0x2", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x753235362069732030", + "0x400080007ffe7fff", + "0x480680017fff8000", + "0x1", + "0x48127ffd7fff8000", + "0x482480017ffc8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xaf", + "0x20680017fff7fff", + "0x8", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ff97fff", + "0x400380017ff97ff8", + "0x400380027ff97ffa", + "0x400380037ff97ffb", + "0x400380047ff97ffc", + "0x480280067ff98000", + "0x20680017fff7fff", + "0x21", + "0x480280057ff98000", + "0x482680017ffb8000", + "0x1", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280077ff97fff", + "0x400280087ff97ffd", + "0x400380097ff97ffa", + "0x4002800a7ff97ffe", + "0x4003800b7ff97ffd", + "0x4802800d7ff98000", + "0x20680017fff7fff", + "0xc", + "0x4802800c7ff98000", + "0x482680017ff98000", + "0xe", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x4802800c7ff98000", + "0x482680017ff98000", + "0x10", + "0x480680017fff8000", + "0x1", + "0x4802800e7ff98000", + "0x4802800f7ff98000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x4", + "0x480280057ff98000", + "0x482680017ff98000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ff98000", + "0x480280087ff98000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffc3d3", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe38b", + "0x20680017fff7ffd", + "0x9", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x23", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x25", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x21", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffd", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x5", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffc", + "0xc", + "0x20780017fff7ffd", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x6", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x482a7ffd7ffb8001", + "0xa0680017fff7fff", + "0x7", + "0x4824800180007fff", + "0x100000000000000000000000000000000", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0xc", + "0x400280007ff97fff", + "0x40780017fff7fff", + "0x1", + "0x482680017ff98000", + "0x1", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x7", + "0x482680017ff98000", + "0x1", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x1", + "0x482a7ffc7ffa8001", + "0xa0680017fff7fff", + "0x7", + "0x4824800180007fff", + "0x100000000000000000000000000000000", + "0x400080007ffa7fff", + "0x10780017fff7fff", + "0xc", + "0x400080007ffb7fff", + "0x40780017fff7fff", + "0x5", + "0x482480017ff68000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x10780017fff7fff", + "0x1c", + "0x480680017fff8000", + "0x1", + "0x48307fff7ffa8001", + "0xa0680017fff7fff", + "0x7", + "0x4824800180007fff", + "0x100000000000000000000000000000000", + "0x400080017ff67fff", + "0x10780017fff7fff", + "0xc", + "0x400080017ff77fff", + "0x40780017fff7fff", + "0x1", + "0x482480017ff68000", + "0x2", + "0x48127ffa7fff8000", + "0x48127ffc7fff8000", + "0x48127ff57fff8000", + "0x10780017fff7fff", + "0x8", + "0x482480017ff68000", + "0x2", + "0x48127ffa7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe" + ], + "hints": [ + [ + 0, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x2e54" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 19, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 38, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 58, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 81, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 96, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 111, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x2e54" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 130, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 149, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 169, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 192, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 207, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 222, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x19370" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 247, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 272, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -70 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 292, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 312, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 328, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 343, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 359, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x18c4a" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 384, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 409, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 429, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 449, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 465, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 480, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 496, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x18c4a" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 521, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 546, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 566, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 586, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 602, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 617, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 633, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x1f158" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 658, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 683, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -70 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 703, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 723, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 739, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 754, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 770, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x1f158" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 795, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 820, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -70 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 840, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 860, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 876, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 891, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 907, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 926, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 945, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 957, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 974, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 989, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1004, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1023, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1042, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1054, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1071, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1086, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1101, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x3ebc" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1126, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1149, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -40 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1169, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1194, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1210, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1225, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1241, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x5abe" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1266, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1289, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -69 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1309, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1334, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1350, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1365, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1381, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x2ae86" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1406, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1431, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -70 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1451, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1477, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1493, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1508, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1524, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x87532" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1556, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1581, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -122 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1603, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1623, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1639, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1654, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1669, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1685, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x6eac8" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1724, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1749, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -182 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1772, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1792, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1808, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1823, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1838, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1853, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1869, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x2936" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1888, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1907, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1927, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1947, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1962, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1977, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0xf2ee" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2005, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2029, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -19 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2055, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2079, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2096, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2122, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2139, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x345bc" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2167, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2193, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -20 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2219, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2241, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2258, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2284, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2301, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x35d9a" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2329, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2355, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -20 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2381, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2403, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2420, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2446, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2463, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x5bc66" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2491, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2517, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -20 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2543, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2565, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2582, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2608, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2625, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4d30" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2657, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2682, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -57 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2703, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2728, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2744, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2759, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2774, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2790, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x3232" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2815, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2838, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -25 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2858, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2883, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2899, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2914, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2930, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4b3c" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2955, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2980, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3000, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3025, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3041, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3056, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3072, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4b3c" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3097, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3122, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3142, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3167, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3183, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3198, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3214, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4b3c" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3239, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3264, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3284, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3309, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3325, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3340, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3356, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4b3c" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3381, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3406, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3426, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3451, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3467, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3482, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3498, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4b3c" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3523, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3548, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3568, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3593, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3609, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3624, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3640, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4b3c" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3665, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3690, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3710, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3735, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3751, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3766, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3782, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4b3c" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3807, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3832, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3852, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3877, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3893, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3908, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3924, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4b3c" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3949, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3974, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3994, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4019, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4035, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4050, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4066, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34be8" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4091, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4116, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4136, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4156, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4172, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4187, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4203, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34864" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4228, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4253, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4273, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4293, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4309, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4324, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4340, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34be8" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4365, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4390, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4410, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4430, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4446, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4461, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4477, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34864" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4502, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4527, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4547, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4567, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4583, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4598, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4614, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34be8" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4639, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4664, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4684, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4704, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4720, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4735, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4751, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34864" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4776, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4801, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4821, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4841, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4857, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4872, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4888, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34be8" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4913, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4938, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4958, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4978, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4994, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5009, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5025, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34864" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5050, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5075, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5095, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5115, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5131, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5146, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5162, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34be8" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5187, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5212, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5232, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5252, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5268, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5283, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5299, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34864" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5324, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5349, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5369, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5389, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5405, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5420, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5436, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34be8" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5461, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5486, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5506, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5526, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5542, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5557, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5573, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34864" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5598, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5623, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5643, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5663, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5679, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5694, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5710, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34be8" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5735, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5760, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5780, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5800, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5816, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5831, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5847, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34864" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5872, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5897, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5917, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5937, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5953, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5968, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5984, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34be8" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6009, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6034, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6054, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6074, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6090, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6105, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6121, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x34864" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6146, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6171, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6191, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6211, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6227, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6242, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6258, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x1c21e" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6283, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6308, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -26 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6328, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6348, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6364, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6379, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6395, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x2a986" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6434, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6459, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -109 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6482, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6502, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6518, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6533, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6548, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6563, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6579, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x1cfa2" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6632, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6655, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -228 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6680, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6700, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6716, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6731, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6746, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6761, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6776, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6791, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6809, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x24ebe" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6878, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6901, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -15 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6928, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6948, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6964, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6988, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7003, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7018, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7033, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7048, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7063, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7079, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x32ae6" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7152, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7177, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -137 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7201, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7221, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7243, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7258, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7273, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7288, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7303, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7318, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7334, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0xc6b6a" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7382, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7407, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -32 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7427, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7447, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7469, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7484, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7626, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7685, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7724, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 7728, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 7738, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7862, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 7866, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 7876, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8028, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8160, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8613, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8717, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8776, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8821, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8855, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8891, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8951, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8987, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "AP", + "offset": -55 + } + } + } + } + ] + ], + [ + 9042, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9675, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9748, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9765, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": 10 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": 9 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 9774, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": 9 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 9823, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9847, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": 6 + } + } + } + } + ] + ], + [ + 9873, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9907, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "AP", + "offset": -2 + } + } + } + } + ] + ], + [ + 10002, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 10048, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 10065, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11455, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11539, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11661, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11813, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11908, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11948, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": 1 + } + } + } + } + ] + ], + [ + 11984, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12033, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12057, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12108, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x100" + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12112, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "scalar": { + "Immediate": "0x8000000000000110000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": 0 + }, + "y": { + "register": "AP", + "offset": 1 + } + } + } + ] + ], + [ + 12201, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12238, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12259, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12316, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "AP", + "offset": -78 + } + } + } + } + ] + ], + [ + 12448, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12481, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12505, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12509, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "scalar": { + "Immediate": "0x8000000000000110000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": 0 + }, + "y": { + "register": "AP", + "offset": 1 + } + } + } + ] + ], + [ + 12737, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12846, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12848, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12880, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 12942, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 12987, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12989, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13021, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 13083, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 13128, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13130, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13162, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 13230, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13302, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 13372, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13374, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13406, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 13474, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13528, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13530, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13562, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 13826, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13922, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13924, + [ + { + "DivMod": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { + "register": "AP", + "offset": 3 + }, + "remainder": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 14012, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14014, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14046, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -7 + } + } + } + } + ] + ], + [ + 14118, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14157, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14176, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 14216, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14241, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -5 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 14264, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -4 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 14315, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14344, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14441, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14466, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -7 + } + } + } + } + ] + ], + [ + 14514, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14516, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14548, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -8 + } + } + } + } + ] + ], + [ + 14844, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14963, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 15034, + [ + { + "TestLessThan": { + "lhs": { + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -4 + }, + "b": { + "Deref": { + "register": "FP", + "offset": -3 + } + } + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 15195, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 15197, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 15229, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -9 + } + } + } + } + ] + ], + [ + 15288, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 15290, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 15322, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -9 + } + } + } + } + ] + ], + [ + 15455, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 15457, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 15489, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -9 + } + } + } + } + ] + ], + [ + 15567, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 15569, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 15601, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 15728, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 15800, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 16016, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 16063, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 16102, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 16147, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 16149, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 16181, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -7 + } + } + } + } + ] + ], + [ + 16237, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 16239, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 16271, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 16327, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x12a2" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 16410, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 16458, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 16460, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 16492, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -10 + } + } + } + } + ] + ], + [ + 16593, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 16681, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 16683, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 16715, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -7 + } + } + } + } + ] + ], + [ + 17008, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 17052, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 17096, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 17133, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 17154, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 17179, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 17227, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 17252, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 17294, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 17296, + [ + { + "DivMod": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { + "register": "AP", + "offset": 3 + }, + "remainder": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 17337, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 17377, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 18305, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 18309, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 18320, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 18344, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -3 + } + } + } + } + ] + ], + [ + 18418, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 18422, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 18433, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 18458, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 18462, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 18473, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 18535, + [ + { + "DivMod": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -4 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "quotient": { + "register": "AP", + "offset": 3 + }, + "remainder": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 18553, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 18663, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 18677, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 18717, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 18786, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 18806, + [ + { + "Uint256DivMod": { + "dividend0": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dividend1": { + "Deref": { + "register": "FP", + "offset": -5 + } + }, + "divisor0": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "divisor1": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "quotient0": { + "register": "AP", + "offset": 0 + }, + "quotient1": { + "register": "AP", + "offset": 1 + }, + "remainder0": { + "register": "AP", + "offset": 2 + }, + "remainder1": { + "register": "AP", + "offset": 3 + } + } + } + ] + ], + [ + 18822, + [ + { + "WideMul128": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -7 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -9 + } + }, + "high": { + "register": "AP", + "offset": 1 + }, + "low": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 18829, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -12 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -13 + } + }, + "dst": { + "register": "AP", + "offset": 2 + } + } + } + ] + ], + [ + 18841, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -12 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -15 + } + }, + "dst": { + "register": "AP", + "offset": 1 + } + } + } + ] + ], + [ + 18872, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 19025, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 19050, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 19252, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 19256, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 19267, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 19318, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 19341, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 19400, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 19576, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 19638, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x1112" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -7 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 19712, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 19734, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 19738, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 19749, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 19775, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 19830, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 19834, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 19845, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 19954, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 19956, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 19988, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -11 + } + } + } + } + ] + ], + [ + 20205, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 20230, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -7 + } + } + } + } + ] + ], + [ + 20305, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 20518, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 20559, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 20563, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 20573, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 20597, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 20601, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 20611, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 21315, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 21319, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 21330, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 21369, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "AP", + "offset": -7 + } + } + } + } + ] + ], + [ + 21393, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 21459, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -5 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 21482, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -4 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 21502, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -7 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 21617, + [ + { + "DivMod": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, + "quotient": { + "register": "AP", + "offset": 1 + }, + "remainder": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 21627, + [ + { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, + "quotient": { + "register": "AP", + "offset": 0 + }, + "remainder": { + "register": "AP", + "offset": 1 + } + } + } + ] + ], + [ + 21638, + [ + { + "DivMod": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 2 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { + "register": "AP", + "offset": -1 + }, + "remainder": { + "register": "FP", + "offset": -3 + } + } + } + ] + ], + [ + 21667, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 21779, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -10 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 21849, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0xb36" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -24 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 21894, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 21979, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 22001, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 22005, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 22016, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 22054, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 22136, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 22186, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 22188, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 22220, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 22276, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 22278, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 22310, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 22375, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 22425, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 22427, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 22459, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 22523, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 22540, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 22565, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 22600, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 22625, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 22667, + [ + { + "WideMul128": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -4 + } + }, + "high": { + "register": "AP", + "offset": 0 + }, + "low": { + "register": "AP", + "offset": 1 + } + } + } + ] + ], + [ + 22676, + [ + { + "WideMul128": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "high": { + "register": "AP", + "offset": 0 + }, + "low": { + "register": "AP", + "offset": 1 + } + } + } + ] + ], + [ + 22685, + [ + { + "WideMul128": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -5 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -4 + } + }, + "high": { + "register": "AP", + "offset": 0 + }, + "low": { + "register": "AP", + "offset": 1 + } + } + } + ] + ], + [ + 22701, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 22741, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -5 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 22760, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 22800, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 22839, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 22883, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -7 + } + } + } + } + ] + ], + [ + 22896, + [ + { + "SystemCall": { + "system": { + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -7 + }, + "b": { + "Immediate": "0x7" + } + } + } + } + } + ] + ], + [ + 23031, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 23054, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 23074, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ] + ], + "entry_points_by_type": { + "EXTERNAL": [ + { + "selector": "0xb2ef42a25c95687d1a3e7c2584885fd4058d102e05c44f65cf35988451bc8", + "offset": 6121, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0xc30ffbeb949d3447fd4acd61251803e8ab9c8a777318abb5bd5fbf28015eb", + "offset": 2463, + "builtins": ["pedersen", "range_check", "poseidon"] + }, + { + "selector": "0x1e53a2c24c5e112d587ae8e3f02e480033142d66dabc5b27f2e73aefaf4d73", + "offset": 3072, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x1ed39aec2f073187695fc8913860a291c3168bde08bd3b17f7b7944d68c903", + "offset": 111, + "builtins": ["range_check"] + }, + { + "selector": "0x200c1f1ffbab3779978bca9730930ba9a9e66d8a0b7bc33a5fec5aa03a3383", + "offset": 4888, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x32ee1586dba78063a5bbafddcc29c1a22ea48b4c9dc956aa7912b574dedf06", + "offset": 4340, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x3c85cdee48a788ed99cbbdab3fc85334045302207396ffeb9181d8538fbd7e", + "offset": 3782, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x55731957fc844d0a5167d1ecb949b7d44597e3c89c298521341beb715722d3", + "offset": 496, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x95604234097c6fe6314943092b1aa8fb6ee781cf32ac6d5b78d856f52a540f", + "offset": 6258, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0xaa9d3969895becdf924fc217959b7d2e026858f66365f0d901422ca91feff9", + "offset": 633, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0xe48e45e0642d5f170bb832c637926f4c85b77d555848b693304600c4275f26", + "offset": 1524, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0xe5b455a836c7a254df57ed39d023d46b641b331162c6c0b369647056655409", + "offset": 1685, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x101c29f5ab9a134a1ad91e810da2ee36097f61556720075061f263bac2f325a", + "offset": 1381, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x13f487a4369c7172d6956afb2cf6f64608acbb24acc5f3d5aa90bd5816286d3", + "offset": 3356, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x17ef0177c78e1db272fdb93b521dbc5d43a42c68989bfb5b83c4b7d83032eb8", + "offset": 359, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x183420eb7aafd9caad318b543d9252c94857340f4768ac83cf4b6472f0bf515", + "offset": 5162, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x1a2017ef5b20c5bcaaa7c75c80e1e83894db6bf57a1f0ccf934d72d20c533e2", + "offset": 5847, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x1aed1feb8363b54f3deae07a977de936f331117518c93a0ea9ca258bb6bb76f", + "offset": 0, + "builtins": ["range_check"] + }, + { + "selector": "0x1be37a8fb1dad6ee398830620c21b7709e96b1c2cc77e0bfcd118da95973e28", + "offset": 4751, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x1d673cbe4f26bde9aeffa10b8f769844ed40a0fe6ff9396b658f9e3979c9c92", + "offset": 5025, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x1f4c8ca7a9f4f5e12699bbe2dfdda584882a7b24c5e066bb424630c133f457c", + "offset": 4066, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x1fa400a40ac35b4aa2c5383c3bb89afee2a9698b86ebb405cf25a6e63428605", + "offset": 1977, + "builtins": ["pedersen", "range_check", "poseidon"] + }, + { + "selector": "0x208c00df249878f8454e5528363b3d27190a6646050e118c95896081e79b625", + "offset": 5436, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x20fbcc63dd27102c239b295cd7736d3c80dd3a78ceb4d04235216cb2df6b64f", + "offset": 2930, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x225faa998b63ad3d277e950e8091f07d28a4c45ef6de7f3f7095e89be92d701", + "offset": 5299, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x24643b0aa4f24549ae7cd884195db7950c3a79a96cb7f37bde40549723559d9", + "offset": 5984, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x25a5317fee78a3601253266ed250be22974a6b6eb116c875a2596585df6a400", + "offset": 3214, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x28331249e0b9038cda249991683676f1c45c0c6dc6048cdeac7cbb74f730daa", + "offset": 1241, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x284a2f635301a0bf3a171bb8e4292667c6c70d23d48b0ae8ec4df336e84bccd", + "offset": 1869, + "builtins": ["range_check"] + }, + { + "selector": "0x2991bb19305a4d6507010cd65c3b5ae1573665f684593f23c839f2011e46bf1", + "offset": 222, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x2a4bb4205277617b698a9a2950b938d0a236dd4619f82f05bec02bdbd245fab", + "offset": 907, + "builtins": ["range_check"] + }, + { + "selector": "0x2c4943a27e820803a6ef49bb04b629950e2de615ab9ac0fb8baef037b168782", + "offset": 1004, + "builtins": ["range_check"] + }, + { + "selector": "0x2dd3fc201e4da6681550a76dd6493603d5993cb332beba76c0e7ee17c4b4605", + "offset": 1101, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x302e0454f48778e0ca3a2e714a289c4e8d8e03d614b370130abb1a524a47f22", + "offset": 2790, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x30559321b47d576b645ed7bd24089943dd5fd3a359ecdd6fa8f05c1bab67d6b", + "offset": 2625, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x3228e2f6f948dd394826cef600c2a86c6e4039f65490ac709b11dcb1a895964", + "offset": 5710, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x338dd2002b6f7ac6471742691de72611381e3fc4ce2b0361c29d42cb2d53a90", + "offset": 2301, + "builtins": ["pedersen", "range_check", "poseidon"] + }, + { + "selector": "0x33a134bba64e4b93e527dec86c555dfe61cbaec8d30c7087fcb6077a33d3c49", + "offset": 4203, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x33fe3600cdfaa48261a8c268c66363562da383d5dd26837ba63b66ebbc04e3c", + "offset": 2139, + "builtins": ["pedersen", "range_check", "poseidon"] + }, + { + "selector": "0x35b407563835b9d5bcae51f83b1fa062aca2cf279479918524a1e10c03ae65d", + "offset": 770, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x36c75cf6f21b46ab99b4572cbff6717c944f48f9b08be054f572b85c8207edb", + "offset": 3498, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x3757746adc3e935840a6c97d2a4c6b708c900ca1525cd978b5cbc51134f4e4f", + "offset": 5573, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x37791de85f8a3be5014988a652f6cf025858f3532706c18f8cf24f2f81800d5", + "offset": 3640, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x377d64fbd626e2b971d63bb5b6f98dbf10f7979ec0e3aca8b2892c017d6c3ff", + "offset": 3924, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x3a95084fb66659865a36200ffe3ec4985865d9223273c35fe42fe35502d60a9", + "offset": 4477, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x3ad6b4fb1c9ef640de47f9bb6a66801663ac873a2bbb244d7286fe56937913f", + "offset": 4614, + "builtins": ["pedersen", "range_check"] + } + ], + "L1_HANDLER": [ + { + "selector": "0x8bce41827dd5484d80312a2e43bc42a896e3fcf75bf84c2b49339168dfa00a", + "offset": 6807, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x1b64b1b3b690b43b9b514fb81377518f4039cd3e4f4914d8a6bdf01d679fb19", + "offset": 6579, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x2d757788a8d8d6f21d1cd40bce38a8222d70654214e96ff95d8086e684fbee5", + "offset": 6395, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x3d78c7ddffebbba7bd7263963b2e0e86b2ed9e990a4fc1b9aed7acd11b37dbc", + "offset": 7079, + "builtins": ["pedersen", "range_check"] + } + ], + "CONSTRUCTOR": [ + { + "selector": "0x28ffe4ff0f226a9107253e17a904099aa4f63a02a5621de0576e5aa71bc5194", + "offset": 7334, + "builtins": ["pedersen", "range_check"] + } + ] + } +} diff --git a/scripts/artifacts/starknet/new_eth_bridge.sierra.json b/scripts/artifacts/starknet/new_eth_bridge.sierra.json new file mode 100644 index 000000000..bebc60ac0 --- /dev/null +++ b/scripts/artifacts/starknet/new_eth_bridge.sierra.json @@ -0,0 +1,12607 @@ +{ + "sierra_program": [ + "0x1", + "0x3", + "0x0", + "0x2", + "0x3", + "0x0", + "0xba0", + "0x460", + "0xee", + "0x52616e6765436865636b", + "0x800000000000000100000000000000000000000000000000", + "0x75313238", + "0x800000000000000700000000000000000000000000000000", + "0x537472756374", + "0x800000000000000700000000000000000000000000000003", + "0x0", + "0x2ee1e2b1b89f8c495f200e4956278a4d47395fe262f27b52e5865c9524c08c3", + "0x1", + "0x66656c74323532", + "0x800000000000000f00000000000000000000000000000001", + "0x456e756d", + "0x3288d594b9a45d15bb2fcb7903f06cdb06b27f0ba88186ec4cfaa98307cb972", + "0x4", + "0x800000000000000700000000000000000000000000000005", + "0x10a4ad544c3e0608b1a9e1ff69b5fdc230bace25740547273d3877854c8b722", + "0x3", + "0x5", + "0x25e2ca4b84968c2d8b83ef476ca8549410346b00836ce79beaf538155990bb2", + "0x4e6f6e5a65726f", + "0x800000000000000700000000000000000000000000000001", + "0x7", + "0x800000000000000700000000000000000000000000000002", + "0x8", + "0x16a4c8d7c05909052238a862d8cc3e7975bf05a07b3a69c6b28951083a6d672", + "0x4172726179", + "0x800000000000000300000000000000000000000000000001", + "0x800000000000000300000000000000000000000000000003", + "0xa", + "0xb", + "0x2a5d3c8622e550c6ea23180508b4fc17d3289f39036e68ddad11bd6a05c4ae5", + "0x9", + "0xc", + "0x7538", + "0x3baae81d8b68311d843a3db861802028fc5b88bca4c37f5b121cabb0dfa12ac", + "0xe", + "0x800000000000000300000000000000000000000000000002", + "0xf", + "0xe82f28be99fa1cbe00b18388da8bfdec908ee3097fda05d02792092433ad35", + "0x10", + "0x2cf4ead4392e987c9b56754a10f0a8e0f13776791e096fa6503893f05582c51", + "0x13", + "0x35db377e57ca049334bdd283ee9a74d991b437ea21f0760006234ec7e529d20", + "0x14", + "0x753634", + "0x16", + "0x17", + "0x231651df0179b7c1db8cfe7d4b2d0450f932a95f500c3fe114d8a2321ea362", + "0x18", + "0x556e696e697469616c697a6564", + "0x800000000000000200000000000000000000000000000001", + "0x12e77adfcdd8da295f7b56a97e20ee6f5c3f92c1ecc20493a480550dad2013f", + "0x800000000000000f00000000000000000000000000000003", + "0x1b", + "0x196104a3bea53fd0bf457a61ec1e7d01ffa8f0abb9b963c5ef20d1476eef189", + "0x1c", + "0xef285feefe97fb10e5f1d2a38008e81a855ddb1c264f73c2378ba762a682ba", + "0x1e", + "0x29cb5dbe67d6cd9d9ea02d642e3a28919c5bda4cca79269b98876a196c46d53", + "0x1f", + "0x536e617073686f74", + "0x1baeba72e79e9db2587cf44fedb2f3700b2075a5e8e39a562584862c4b71f62", + "0x21", + "0x22", + "0x2a594b95e3522276fe0ac7ac7a7e4ad8c47eaa6223bc0fd6991aa683b7ee495", + "0x23", + "0x800000000000000700000000000000000000000000000004", + "0x376b549f5ff7eab453cd443800eb7e7c366c59205bac2b315542c7aed553098", + "0x26", + "0x1515deef11136b936d721154fa590191f1a9904b2085366b4d6011b5ee00ca5", + "0x27", + "0x553132384d756c47756172616e746565", + "0x28edf843b90fd4464a9cf1779d01f8e7ce719fb66247954f300bf315f31bb23", + "0x2b", + "0x38e5e97b4fd4b5ec8653ac59ee5e53c9a5f1b69275cba05f7228126a7004485", + "0x2c", + "0xccf52bb0646785c5ad2a653e9ec60b68f9843823a0c386724530f0e305f2c4", + "0x2f", + "0x34c208cc73eb75e315a7730284e475ee3050926253aba2fcbcbac0873ddbbc9", + "0x30", + "0x1c93399c577f87390e51b8cb506e46bf14730a3503957dbfa913537c3269e72", + "0x32", + "0x1cd2b418923aab36f139f976a4924eeee496567cc062738dc66f7e858c458f6", + "0x33", + "0x426f78", + "0x5d", + "0x2c7badf5cd070e89531ef781330a9554b04ce4ea21304b67a30ac3d43df84a2", + "0x35", + "0x1166fe35572d4e7764dac0caf1fd7fc591901fd01156db2561a07b68ab8dca2", + "0x384c2e98e3af0acf314102dc8ebe9011cefe220e3f77edc819db2a94915b72f", + "0x436f6e747261637441646472657373", + "0x2ba68e64706519b3231e99b4d3007f1c776142d93afafaa0b53549870381466", + "0x39", + "0x30f406b1d8bc98143cf38cf66d9152a9ad605c5cc90a602d7460776ec6718ed", + "0x103154f2e061f1b613a3b0fd6ebebf0668ac09c1d35332825ae59f8f619bf6a", + "0x3c", + "0x641cda24880c69b0b0ce2c3553664842185498081d691a1096cc619b053a14", + "0x3d", + "0x90d0203c41ad646d024845257a6eceb2f8b59b29ce7420dd518053d2edeedc", + "0x248e8fae2f16a35027771ffd74d6a6f3c379424b55843563a18f566bba3d905", + "0x36a3e1666cbe70caf50b696bb71a49d999efada6ba34b691791f77e807d0391", + "0x41", + "0x187b0383d7af88cb6c34929dc2ed366968524b8a665604cc38f027b35531850", + "0x42", + "0x1d341041ca19f83f6c141d8acb7acd72e3240704894487384fccbc35650c11d", + "0x44", + "0x3e74be80219b0f237890ab75f0c4141d5da080853e7ff8311d9e182f46defee", + "0x45", + "0x35043495cd5b43436d4bf00639e126cc363a63093c45080cf502a3e31031ad9", + "0x47", + "0x17f05e8b2e8ae289ea357ab94ad0dcbf4ecd1f3072c46216fb73f6fcf183002", + "0x48", + "0x2fffb69a24c0eccf3220a0a3685e1cefee1b1f63c6dcbe4030d1d50aa7a7b42", + "0x3808c701a5d13e100ab11b6c02f91f752ecae7e420d21b56c90ec0a475cc7e5", + "0x4b", + "0x4c", + "0xe688ac0888a7171e23d265a0ea68699a0ab1f7192e9651213e940c13b80319", + "0x4d", + "0x8d223e2f861f40c8e59a552d286b25ad43d4944c8215cd83f2af9dc8e75813", + "0x436c61737348617368", + "0x1f9a1062ac03e73c63c8574617d89a41e50eb3926ee6ff58d745aff3ed7ec3e", + "0x50", + "0x1eb8c2b265a8dd4f6f6ab20e681628834ae7a5c26760cd72fc69a3c4bb44dab", + "0x51", + "0x52", + "0x338e71126ef074ef225c267ff05d295b11567c37f9f3604f849bc5bbc246b33", + "0x53", + "0x3e4e624a497e446ce523f5b345c07be6fab07dbff47534532460e9a8288be43", + "0x55", + "0x30d30e6eadd27b4e77c337e27d6e8608be2759893a8fa0caea066e05b9afdc5", + "0x56", + "0x2360086d8de14207bc705f7c51c3fc6bb6de6b826f1a4576e4db739d8b5edaf", + "0x58", + "0x5c", + "0x800000000000000700000000000000000000000000000008", + "0x2e655a7513158873ca2e5e659a9e175d23bf69a2325cdd0397ca3b8d864b967", + "0x800000000000000700000000000000000000000000000006", + "0x19367431bdedfe09ea99eed9ade3de00f195dd97087ed511b8942ebb45dbc5a", + "0x5b", + "0x38f4af6e44b2e0a6ad228a4874672855e693db590abc7105a5a9819dbbf5ba6", + "0x5e", + "0x53746f7261676541646472657373", + "0x800000000000000300000000000000000000000000000004", + "0x104eb68e98232f2362ae8fd62c9465a5910d805fa88b305d1f7721b8727f04", + "0x61", + "0x3233063c5dc6197e9bf4ddc53b925e10907665cf58255b7899f8212442d4605", + "0x28b30f2f58c2d7a07c2ba2833de42854cb49836acd38cd6c1dbb05289c23236", + "0x63", + "0x25bafed1db971ec9d9883af3e1e08a185480f03f54ed88b3c1ffa951cde4037", + "0x65", + "0x145068ba3432c23eddd89dd45fe638a782885652788ad82ad6690857df46db5", + "0x66", + "0x14a7ddbb1150a2edc3d078a24d9dd07049784d38d10f9253fc3ece33c2f46a3", + "0x68", + "0x284cb78ddfd95d0e9f53cf9d6e05e34c6e2348f9dcedab0ccfd135ec0288013", + "0x69", + "0x53746f726167654261736541646472657373", + "0x4cc4ea1f37df87a0a7d2bfb33885074e7298907f0be25b74686c3c53736768", + "0x6c", + "0x18bd27ed4661d26beb8d46e232164fb69afca5ced358a253ab052261dd18c56", + "0x6d", + "0xf2830887e649eec1765d1d21b8908173f4b5ccd26172a4e678b9e051c30d8f", + "0x2e3892695a33e0d1a21bcd9dbe3346ecc15dc2371100b5a2e08606f78974355", + "0x70", + "0x1b324dd6ae3bfec6ecf41a91d36ab97fb85012471ff52b6b78e3273103a61f7", + "0x71", + "0x3c22827a73ec5323bc0d23977401ddc5200cc6a13cd91c5e8552463a50ccc03", + "0x73", + "0x3a60e683bb3924a5a515c3542ad8bd3943f58e45e6d7fe29b3f7040fcf6de52", + "0x74", + "0x76", + "0x525df73114b9ba6aedae0cfaac67628b09a84fea935dd481de14e22c9049da", + "0x77", + "0x242ab892b168865613d6bf48e23e6f2bf6bd4155b5adb58517a5ceeef69ebb", + "0x1ceedb245a2c12c3c2cee31e3ad08aa3d0f820d1cc1ca7c5fd2976fafbcd67c", + "0x17b6ecc31946835b0d9d92c2dd7a9c14f29af0371571ae74a1b228828b2242", + "0x7b", + "0x34f9bd7c6cb2dd4263175964ad75f1ff1461ddc332fbfb274e0fb2a5d7ab968", + "0x7c", + "0x34dc153207680745a7f3dfa886e379539d3722334ae60481b5a0103baffb781", + "0x3f719262d5f1963c9ce4cbd96b5755ade8c961364febc45110cdf7fa69a9a08", + "0x1f0276ceff5f304ab767218fb2429b54172c97619edc12a91a021250db8a0b7", + "0x2373fd1de0b8d5ec68c0d52be7f26647290724ab4ec76a73eded043e8afe9ff", + "0x1b226091fd5bb0ee5a4e9388996b3a40c4192dda2b8a21d8fac4f08f32b8264", + "0x3060bc16b2efdf88d62fa0ba50c7d4461a7b1967c0dd9a5ab373135318ad97d", + "0x22b8cba9306b1a3200816e4d99c51f87aa466d41f3334f7f693a5d4171b4c39", + "0x161341cb6755c0c4dc0cf33f67ceb52cad3f980c5c479501bf2464a0d6b74df", + "0x3669d262224f83a907cd80dcaa64fb9f032b637610e98e1d0b3a238e07e649f", + "0x3f468b8e29e48ca204978f36d94fb2063e513df163f22a2fa47bc786b012b51", + "0x67646947fd025eb92da87f9cacf5322f6857d6b29451e3c9708214d54aeda4", + "0x27026e2c4698b71845e7529c48c57dfbead20b0ea62be5d86ca2008a2bd323a", + "0x2a87b1d977ca42b125eed5c52339e6bae80c4b43b52857e23d6e01c8b0a4eee", + "0x2b654cfd92306ab7f64252c86e120435ec0c635189ffc1278936fa1a72f7e0c", + "0x11daeea6c7b4eda3a8fedd586fe68d4c8484287683cd124875253dfffd0d9a3", + "0x1d059b88dc0b43513dbe0ecdf8fbe16b7651546b7becdbfadf7b1d89ac83938", + "0x4dc78b451bf1293150bf2114379eb43cac8c7fe9440b52df91428e81841842", + "0x1399a2ee44cdcf9a60c454621b64d719be9a25bb2153742e815176e92b3abd8", + "0x288f278a350ebfa8c0af8874d4cea064e5cf5a2c275b6725ee0daee61b89087", + "0x1a052a0e1b0bee5b556f84ed671c99a339f34c519bdc35359f9586419e46feb", + "0x26b0e9be656e9e0e8261d5b261baef508877347a6a338629be40a0f4142ac2c", + "0xb371185b889d43e8a0049eec695c36d3d867cd574c0db37a679d5d2636d636", + "0xa0da885b06b154a7759f911d38cdcf7413f8ef666e4ee08e1de4d520ce1450", + "0x1514dcf9fe16bf4b4d1531a3daeccf1083b8678a8eef4db0ec19240f0f098f6", + "0x1a8bf5d1a8e0851ea228a7ae8c8f441e6643a41506f11d60bb3054232e46b95", + "0x3bdb842447cc485dba916ec038afc2e5b4ae0014590b0453990ec44786aaec6", + "0x96", + "0xa678ae40fd2d13e2520a2beedaeef6c85548a5754c350c4e75f44a3c525faf", + "0x135aa353c4e9ebb36233f8f2703f5db3515fb70d807690fadd89b1cf5dc520", + "0x3d45f050e8f86640c1cd0e872be7e3dc76ed0eda574063d96a53b357e031c7", + "0x2268f7482aa5e6389f3c20515dddc8d8ef239accd670333249e19a925e3cba5", + "0x800000000000000700000000000000000000000000000023", + "0x3607faa74f3aec00ef70f511ddd584d48ac2c209faf751238e3a497ed7d273e", + "0x8f", + "0x90", + "0x91", + "0x92", + "0x93", + "0x7e", + "0x7f", + "0x7a", + "0x6f", + "0x94", + "0x95", + "0x97", + "0x98", + "0x99", + "0x9a", + "0x3b", + "0x3a", + "0x38", + "0x9b", + "0x8e", + "0x8d", + "0x8c", + "0x87", + "0x86", + "0x85", + "0x84", + "0x83", + "0x82", + "0x81", + "0x80", + "0x8b", + "0x8a", + "0x89", + "0x88", + "0x161ee0e6962e56453b5d68e09d1cabe5633858c1ba3a7e73fee8c70867eced0", + "0x9e", + "0x74584e9f10ffb1a40aa5a3582e203f6758defc4a497d1a2d5a89f274a320e9", + "0xa0", + "0x3b6a5d873a8075f5c3490720b9676b4b020a7943b3f62289bfe99fc63775ffc", + "0x3657bdfb634ec892ae4d35b8c3f49a738c6b4fc74ebb3b8bb4a91bbfe38e2a4", + "0xf045eee76dab42a3197695b17a05ab74fd4ed74627989fc5dac11ff840ec5b", + "0x358f9acb3b8679c8ec4bcb8223e7f87ba76157132aa6ae20f3ee0e7a189358f", + "0x19cfb3b0d12bd9cc298b431b69cb71608f85ccb0eefa0d08482e496d0734973", + "0x800000000000000f00000000000000000000000000000010", + "0x38b576bbeec0b4681389b4319bb85ca34e56925d29c5be2237222b791b3ac55", + "0xa2", + "0xa3", + "0xa4", + "0xa5", + "0xa6", + "0x800000000000000a00000000000000000000000000000001", + "0xa7", + "0x53797374656d", + "0xa9", + "0xac", + "0x506f736569646f6e", + "0xae", + "0x2d7b9ba5597ffc180f5bbd030da76b84ecf1e4f1311043a0a15295f29ccc1b0", + "0x10ac6c4f67d35926c92ed1ab5d9d4ea829204d1a1d17959320017075724351", + "0xb1", + "0x2818750775d9b3854858668772cca198f62185a4b470b9f675cfb70da36156d", + "0xb2", + "0x101dc0399934cc08fa0d6f6f2daead4e4a38cabeea1c743e1fc28d2d6e58e99", + "0xb5", + "0x106db43f4cfd8eb20d1fcb42b3e0ad3b7599d2b6e68696e8ecfb48d07f6f131", + "0xca541461e290a9ba8a6f6c31a65791ff9c76037bf4c248ffc94e3a352c709b", + "0x1909a2057b9c1373b889e003e050a09f431d8108e0659d03444ced99a6eea68", + "0x2e70f81020ebc21f23ebec1a9a15465e96544fabdb4ea998cf6853472d08b90", + "0xba", + "0x35e4b921b6f4a9fc188b5dcb58590cb96fe5e3dbe1146da627bd48498482377", + "0xbc", + "0x2e253693b3ae618e6503057c702c8930fa292f6e6ce464edf7db9af746fecf5", + "0xbe", + "0x1627b28d990e04794f953c4c79994c2ca940b6801589104f696b935335977a3", + "0xc0", + "0x800000000000000f00000000000000000000000000000002", + "0xcc5e86243f861d2d64b08c35db21013e773ac5cf10097946fe0011304886d5", + "0xc3", + "0x506564657273656e", + "0xc5", + "0x156b6b29ca961a0da2cfe5b86b7d70df78ddc905131c6ded2cd9024ceb26b4e", + "0x3b9ddf97bd58cc7301a2107c3eabad82196f38221c880cd3645d07c3aac1422", + "0x29d7d57c04a880978e7b3689f6218e507f3be17588744b58dc17762447ad0e7", + "0xc9", + "0x1d49f7a4b277bf7b55a2664ce8cef5d6922b5ffb806b89644b9e0cdbbcac378", + "0xcb", + "0x13fdd7105045794a99550ae1c4ac13faa62610dfab62c16422bfcf5803baa6e", + "0xcc", + "0x10203be321c62a7bd4c060d69539c1fbe065baa9e253c74d2cc48be163e259", + "0xd2", + "0xa853c166304d20fb0711becf2cbdf482dee3cac4e9717d040b7a7ab1df7eec", + "0xd4", + "0x11c6d8087e00642489f92d2821ad6ebd6532ad1a3b6d12833da6d6810391511", + "0x188c31424ca3e90a81e1850a514ea86e69a51a7fb942da9a5a393c0917c9adb", + "0xd7", + "0x7b24f2ab8be536ba809156d60d6a2e8a906291e31b2728d5aec00cebaf0c92", + "0xd8", + "0x1ee471fea880cdb75aff7b143b1653e4803b9dca47f4fcdd349d11fec9d7a16", + "0x12867ecd09c884a5cf1f6d9eb0193b4695ce3bb3b2d796a8367d0c371f59cb2", + "0x2ce4352eafa6073ab4ecf9445ae96214f99c2c33a29c01fcae68ba501d10e2c", + "0xdc", + "0x1d8a68005db1b26d0d9f54faae1798d540e7df6326fae758cc2cf8f7ee88e72", + "0xde", + "0x3d37ad6eafb32512d2dd95a2917f6bf14858de22c27a1114392429f2e5c15d7", + "0x11771f2d3e7dc3ed5afe7eae405dfd127619490dec57ceaa021ac8bc2b9b315", + "0xa5d639b507e4f6da43a59915ebe9bb24556a4677f5fe143134a36dbc9308e1", + "0xe2", + "0x24d668d7ede46c87d2cddfbcf73195c96f0ca8075ae10c8a468054b80120d78", + "0x3e1934b18d91949ab9afdbdd1866a30ccca06c2b1e6581582c6b27f8b4f6555", + "0xe5", + "0x224a57ba2504f0018c4fd92c0f0e6ef13a37bf8d3d6479b8faa16fc36f624d2", + "0xe8", + "0x4275696c74696e436f737473", + "0x9931c641b913035ae674b400b61a51476d506bbe8bba2ff8a6272790aba9e6", + "0xe7", + "0x753332", + "0x4761734275696c74696e", + "0x525", + "0x7265766f6b655f61705f747261636b696e67", + "0x77697468647261775f676173", + "0x6272616e63685f616c69676e", + "0x7374727563745f6465636f6e737472756374", + "0x61727261795f6c656e", + "0x736e617073686f745f74616b65", + "0xec", + "0x64726f70", + "0x7533325f636f6e7374", + "0x2", + "0x72656e616d65", + "0x73746f72655f74656d70", + "0x7533325f6571", + "0x61727261795f6e6577", + "0x66656c743235325f636f6e7374", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x61727261795f617070656e64", + "0x7374727563745f636f6e737472756374", + "0x656e756d5f696e6974", + "0xeb", + "0xed", + "0x6765745f6275696c74696e5f636f737473", + "0xea", + "0x77697468647261775f6761735f616c6c", + "0x66756e6374696f6e5f63616c6c", + "0x656e756d5f6d61746368", + "0xe9", + "0x34", + "0x4f7574206f6620676173", + "0xe6", + "0x36", + "0x37", + "0xe4", + "0xe3", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0xe1", + "0xe0", + "0x3e", + "0x3f", + "0x535441524b47415445", + "0x40", + "0xdf", + "0x43", + "0xdd", + "0xdb", + "0x46", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x4661696c656420746f20646573657269616c697a6520706172616d202333", + "0xda", + "0x7536345f746f5f66656c74323532", + "0x49", + "0xd9", + "0x4a", + "0x4e", + "0xd6", + "0x4f", + "0xd5", + "0xd3", + "0x54", + "0x57", + "0x59", + "0x5a", + "0x5f", + "0x60", + "0x62", + "0x64", + "0x67", + "0x6a", + "0x6b", + "0x4661696c656420746f20646573657269616c697a6520706172616d202335", + "0x4661696c656420746f20646573657269616c697a6520706172616d202334", + "0x616c6c6f635f6c6f63616c", + "0x66696e616c697a655f6c6f63616c73", + "0x73746f72655f6c6f63616c", + "0xcd", + "0x6e", + "0x4661696c656420746f20646573657269616c697a6520706172616d202336", + "0xcf", + "0xce", + "0xd1", + "0xd0", + "0x656e61626c655f61705f747261636b696e67", + "0x61727261795f736e617073686f745f706f705f66726f6e74", + "0xca", + "0x6a756d70", + "0x756e626f78", + "0xc8", + "0x64697361626c655f61705f747261636b696e67", + "0xc7", + "0x72", + "0x636c6173735f686173685f746f5f66656c74323532", + "0x636f6e74726163745f616464726573735f746f5f66656c74323532", + "0x75", + "0xc4", + "0x66656c743235325f737562", + "0x66656c743235325f69735f7a65726f", + "0x647570", + "0xc2", + "0x626f6f6c5f6e6f745f696d706c", + "0x5a45524f5f4c315f4252494447455f41444452455353", + "0x78", + "0xc1", + "0x79", + "0x4c315f4252494447455f414c52454144595f494e495449414c495a4544", + "0x636c6173735f686173685f7472795f66726f6d5f66656c74323532", + "0xbf", + "0x21adb5788e32c84f69a1863d85ef9394b7bf761a0ce1190f826984e5075c371", + "0xbd", + "0x7d", + "0xc6", + "0x544f4b454e5f4e4f545f494e5f425249444745", + "0xbb", + "0x753132385f636f6e7374", + "0xffffffffffffffffffffffffffffffff", + "0x753132385f746f5f66656c74323532", + "0xb9", + "0x4c325f544f4b454e5f4e4f545f534554", + "0x4c315f4c325f544f4b454e5f4d49534d41544348", + "0x494e56414c49445f524543495049454e54", + "0x5a45524f5f5749544844524157414c", + "0xb8", + "0x494e53554646494349454e545f46554e4453", + "0xb7", + "0x73656e645f6d6573736167655f746f5f6c315f73797363616c6c", + "0x656e756d5f736e617073686f745f6d61746368", + "0x4d4553534147455f53454e445f464149494c4544", + "0xb3", + "0xb0", + "0xb4", + "0x9c", + "0x9d", + "0x7536345f636f6e7374", + "0x127500", + "0x9f", + "0xaf", + "0xad", + "0x7536345f6571", + "0xa1", + "0xab", + "0xa8", + "0xaa", + "0x46494e414c495a4544", + "0x554e4b4e4f574e5f494d504c454d454e544154494f4e", + "0x7536345f6f766572666c6f77696e675f737562", + "0x3ea3b9a8522d36784cb325f9c7e2ec3c9f3e6d63031a6c6b8743cc22412f604", + "0x6c6962726172795f63616c6c5f73797363616c6c", + "0x4549435f4c49425f43414c4c5f4641494c4544", + "0x7265706c6163655f636c6173735f73797363616c6c", + "0x5245504c4143455f434c4153535f484153485f4641494c4544", + "0x494d504c454d454e544154494f4e5f45585049524544", + "0x4e4f545f454e41424c45445f594554", + "0xd2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de06068", + "0x3e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x23edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da7", + "0x128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0x26bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b3", + "0x37693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b96", + "0x12", + "0x15", + "0x20", + "0x19", + "0x1a", + "0x1d", + "0x474f565f41444d494e5f43414e4e4f545f53454c465f52454d4f5645", + "0x544f4b454e5f434f4e4649475f4d49534d41544348", + "0x1101afb9568fc98d91b25365fb0f498486ed49680b8d2625a0b45a850311d1e", + "0x63616c6c5f636f6e74726163745f73797363616c6c", + "0x4445504f5349545f52454a4543544544", + "0x4f7074696f6e3a3a756e77726170206661696c65642e", + "0x4f4e5f524543454956455f4641494c4544", + "0x75385f7472795f66726f6d5f66656c74323532", + "0x4c325f544f4b454e5f474f565f4e4f545f534554", + "0x4c325f544f4b454e5f434c4153535f484153485f4e4f545f534554", + "0x75385f746f5f66656c74323532", + "0x6465706c6f795f73797363616c6c", + "0xb6", + "0x544f4b454e5f414c52454144595f455849535453", + "0x4445504c4f595f544f4b454e5f444953414c4c4f574544", + "0x7536345f7472795f66726f6d5f66656c74323532", + "0x75385f636f6e7374", + "0x73746f726167655f626173655f616464726573735f636f6e7374", + "0x3e4b2efa9f3dc5a5ca304578e8f83c116445fc36a80508f598770ab9d0ba8fa", + "0x3acd88ba6181ba1fb253286b276575767587130253bbbed7f7270cd11e8be7d", + "0x100000000", + "0x4f4e4c595f4150505f474f5645524e4f52", + "0xc88ee7a00e0b95f1138ef53d396c4327eeed7f9677bbd02ce82a663537b1cf", + "0x656d69745f6576656e745f73797363616c6c", + "0x73746f726167655f616464726573735f66726f6d5f62617365", + "0x73746f726167655f77726974655f73797363616c6c", + "0x4f4e4c595f53454355524954595f4147454e54", + "0x4f4e4c595f53454355524954595f41444d494e", + "0x15180", + "0x753235365f737562204f766572666c6f77", + "0x75313238735f66726f6d5f66656c74323532", + "0x1dc79e2fd056704ede52dca5746b720269aaa5da53301dff546657c16ca07af", + "0x554e494e495449414c495a45445f4c315f4252494447455f41444452455353", + "0x35a73cd311a05d46deda634c5ee045db92f811b4e74bca4437fcb5302b7af33", + "0x52657475726e6564206461746120746f6f2073686f7274", + "0x753132385f6f766572666c6f77696e675f737562", + "0x753132385f6571", + "0x7769746864726177616c5f6c696d69745f6170706c696564204552524f52", + "0x4c494d49545f4558434545444544", + "0x3a07502a2e0e18ad6178ca530615148b9892d000199dbb29e402c41913c3d1a", + "0x3fc801c47df4de8d5835f8bfd4d0b8823ba63e5a3f278086901402d680abfc", + "0x4f4e4c595f555047524144455f474f5645524e4f52", + "0x7536345f6f766572666c6f77696e675f616464", + "0x7536345f616464204f766572666c6f77", + "0x7533325f746f5f66656c74323532", + "0xef", + "0xf0", + "0xf1", + "0xf2", + "0xf3", + "0x73746f726167655f726561645f73797363616c6c", + "0xf4", + "0x494e56414c49445f4143434f554e545f41444452455353", + "0xf5", + "0xf6", + "0xf7", + "0xf8", + "0x43616e206f6e6c792072656e6f756e636520726f6c6520666f722073656c66", + "0x45585045435445445f46524f4d5f4252494447455f4f4e4c59", + "0xf9", + "0xfa", + "0xfb", + "0x526573756c743a3a756e77726170206661696c65642e", + "0xfc", + "0xfd", + "0xfe", + "0xff", + "0x100", + "0x524f4c45535f414c52454144595f494e495449414c495a4544", + "0x75385f6f766572666c6f77696e675f737562", + "0x101", + "0x4c494d49545f5043545f544f4f5f48494748", + "0x102", + "0x4e6f6e20436c61737348617368", + "0x103", + "0x4e6f6e20436f6e747261637441646472657373", + "0x10f262273ceaa52776e74b306e33ad0b9e1b4051ae2efdfd782bc4569b421cf", + "0x104", + "0x3a0c1cf46dc066a259a9d0eebd3b0734913b6d16e7a3e4fad9b79f8c32da0a8", + "0x105", + "0xa5939adc9600c99eba18c0760fc0884d52129df955922bb7f3a114485b4606", + "0x106", + "0x194fc63c49b0f07c8e7a78476844837255213824bd6cb81e0ccfb949921aad1", + "0x107", + "0x282f521c69b2bc696552b9e141009d3c84f2df75e2e7b7716644d31e60f23b1", + "0x108", + "0x221e5a5008f7a28564f0eaa32cdeb0848d10657c449aed3e15d12150a7c2db3", + "0x109", + "0x374396cb322ab5ffd35ddb8627514609289d22c07d039ead5327782f61bb833", + "0x10a", + "0x4e27c50589ccad9e9fc4b954a8375612ac51bbefa594da7109c7b7d369cb46", + "0x10b", + "0x2e6ba14ec4c96f43a28d28e14dd22e770fa1138cfc2f3e6421dba1fb91b7c17", + "0x10c", + "0xcfefac9fac087f5372e9e1f677824f7420c3261eaf33ba240b836cd570e152", + "0x10d", + "0x3da438fe76a955cfd731f2521594d43baae6615852ab7fd9099dc0709b8f75b", + "0x10e", + "0x38a81c7fd04bac40e22e3eab2bcb3a09398bba67d0c5a263c6665c9c0b13a3", + "0x10f", + "0x7633a8d8b49c5c6002a1329e2c9791ea2ced86e06e01e17b5d0d1d5312c792", + "0x110", + "0x34bb683f971572e1b0f230f3dd40f3dbcee94e0b3e3261dd0a91229a1adc4b7", + "0x111", + "0xd1831486d8c46712712653f17d3414869aa50b4c16836d0b3d4afcfeafa024", + "0x112", + "0x9d4a59b844ac9d98627ddba326ab3707a7d7e105fd03c777569d0f61a91f1e", + "0x113", + "0x2842fd3b01bb0858fef6a2da51cdd9f995c7d36d7625fb68dd5d69fcc0a6d76", + "0x114", + "0x2b23b0c08c7b22209aea4100552de1b7876a49f04ee5a4d94f83ad24bc4ec1c", + "0x115", + "0x1f9961b3744c1e017cbcfafecec635be98ae8c6aeb9f70be5b7e93f2f52e2e5", + "0x116", + "0xf98c2e7c652ac3805eb73ff089b53a4b501f8e2d750a6131f474d71d49fef8", + "0x117", + "0x209ff368803f5de65188245078e888d4462f8d98697699c1dcdd8b02ffb250f", + "0x118", + "0x198116a5c5421876feb02bdb0b472ace223bdde3dbd87f92db8d735a233fbb0", + "0x119", + "0x3ae95723946e49d38f0cf844cef1fb25870e9a74999a4b96271625efa849b4c", + "0x11a", + "0x2d8a82390cce552844e57407d23a1e48a38c4b979d525b1673171e503e116ab", + "0x11b", + "0x20e4d3438ce3d451a0b4c17cdcbdd5aef2ba11c5b28a2d65353f91db3eb26dd", + "0x11c", + "0xf73e08374e6098adb9600916577e3311612674306f1c2e3fe239a4576ad157", + "0x11d", + "0x36d743b501f1ce191c02b6bd687c6790def364974947f206de67805a5d0d794", + "0x11e", + "0xa3eac89d22258ea63a7f47b0be3c559c6177eb4d7fe6641b109da1e1272d60", + "0x11f", + "0x2143175c365244751ccde24dd8f54f934672d6bc9110175c9e58e1e73705531", + "0x120", + "0x25e2d538533284b9d61dfe45b9aaa563d33ef8374d9bb26d77a009b8e21f0de", + "0x121", + "0x1d6c15800e6da7a5556b49a824ea4b70c1169d71092c1a4c5d80aaadc6636d1", + "0x122", + "0x2eb7ab861b6ade361ff0e949e94d48fd5b2052639b40cfe9f796f2bb7864f45", + "0x123", + "0xde2aa78658531ebb6d1125461e139734c22e0d3045a3a44366066a2756070e", + "0x124", + "0x2642a36e73652fddc2c8b6e54d2dd5396dd5385d190a121e2e1da5772dff325", + "0x125", + "0x58b484ac6cdba723daf27897a3787c6aafc408c55ab0535ec94fed593483b7", + "0x706564657273656e", + "0xad292db4ff05a993c318438c1b6c8a8303266af2da151aa28ccece6726f1f1", + "0x6765745f657865637574696f6e5f696e666f5f73797363616c6c", + "0x126", + "0x3a59528bf161e30b9b238f21a617fcbbf76440b827f085240077925ab4b8dcf", + "0x1ea43de8c123570bf07ef49fac65a58e3ae0aea154c177fd072a276e6b5db3", + "0x127", + "0x7536345f736166655f6469766d6f64", + "0x4469766973696f6e2062792030", + "0x128", + "0x129", + "0x31", + "0x12a", + "0x12b", + "0x2e", + "0x1557182e4359a1f0c6301278e8f5b35a776ab58d39892581e357578fb287836", + "0x12c", + "0x757063617374", + "0x12d", + "0x753235365f6d756c204f766572666c6f77", + "0x12e", + "0x2d", + "0x753235365f736166655f6469766d6f64", + "0x2a", + "0x12f", + "0x29", + "0x130", + "0x131", + "0x28", + "0x53746f7265553634202d206e6f6e20753634", + "0x132", + "0x25", + "0x133", + "0x24", + "0x1ac8d354f2e793629cb233a16f10d13cf15b9c45bbc620577c8e1df95ede545", + "0x134", + "0xcfc0e4c73ce8e46b07c3167ce01ce17e6c2deaaa5b88b977bbb10abe25c9ad", + "0xd", + "0x52c476292b358ba7d29adb58502341b4cc5437d07f67d3e285e085828bc820", + "0x2e9f66c6eea14532c94ad25405a4fcb32faa4969559c128d837caa0ec50a655", + "0x135", + "0x136", + "0x137", + "0x138", + "0x1c67057e2995950900dbf33db0f5fc9904f5a18aae4a3768f721c43efe5d288", + "0x6", + "0x139", + "0x13a", + "0x13b", + "0x31b6e2ac42e0e554bf70a1d3d890fda8a700de6068f723a0ec603cac893a1e4", + "0x13c", + "0x375ac8b316fc124d3cdb1a54f390060e88a386e5ecb62a75e13c45910caf051", + "0x13d", + "0x2679d68052ccd03a53755ca9169677965fbd93e489df62f5f40d4f03c24f7a4", + "0x53746f726555313238202d206e6f6e2075313238", + "0x13e", + "0x11", + "0x13f", + "0x140", + "0x141", + "0x753132385f6d756c5f67756172616e7465655f766572696679", + "0x142", + "0x753235365f616464204f766572666c6f77", + "0x143", + "0x144", + "0x145", + "0x66656c743235325f616464", + "0x68616465735f7065726d75746174696f6e", + "0x2a31bbb25d4dfa03fe73a91cbbab880b7c9cc4461880193ae5819ca6bbfe7cc", + "0x43414c4c45525f49535f4d495353494e475f524f4c45", + "0x146", + "0x147", + "0x148", + "0x149", + "0x7536342069732030", + "0x53746f72655538202d206e6f6e207538", + "0x753132385f67756172616e7465655f6d756c", + "0x753132385f6f766572666c6f77696e675f616464", + "0x14a", + "0x753235362069732030", + "0x14b", + "0x7536345f69735f7a65726f", + "0x753235365f69735f7a65726f", + "0x568e", + "0xffffffffffffffff", + "0x150", + "0x1d3", + "0x1c3", + "0x181", + "0x1b4", + "0x1ac", + "0x256", + "0x246", + "0x204", + "0x237", + "0x22f", + "0x2d9", + "0x2c9", + "0x287", + "0x2ba", + "0x2b2", + "0x35c", + "0x34c", + "0x30a", + "0x33d", + "0x335", + "0x3ab", + "0x387", + "0x39e", + "0x3f9", + "0x3d5", + "0x3ec", + "0x483", + "0x473", + "0x429", + "0x464", + "0x45c", + "0x50e", + "0x4fe", + "0x4b4", + "0x4ef", + "0x4e7", + "0x599", + "0x589", + "0x53f", + "0x57a", + "0x572", + "0x635", + "0x625", + "0x614", + "0x5d0", + "0x604", + "0x5fc", + "0x6eb", + "0x6db", + "0x6ca", + "0x6b8", + "0x672", + "0x6a7", + "0x69f", + "0x759", + "0x716", + "0x74c", + "0x745", + "0x7f5", + "0x7ec", + "0x7db", + "0x78e", + "0x7cb", + "0x7c2", + "0x88c", + "0x883", + "0x872", + "0x82c", + "0x862", + "0x859", + "0x923", + "0x91a", + "0x909", + "0x8c3", + "0x8f9", + "0x8f0", + "0x9ba", + "0x9b1", + "0x9a0", + "0x95a", + "0x990", + "0x987", + "0xa5f", + "0xa4f", + "0xa3e", + "0x9f2", + "0xa2e", + "0xa26", + "0xaea", + "0xada", + "0xa90", + "0xacb", + "0xac3", + "0xb75", + "0xb65", + "0xb1b", + "0xb56", + "0xb4e", + "0xc00", + "0xbf0", + "0xba6", + "0xbe1", + "0xbd9", + "0xc8b", + "0xc7b", + "0xc31", + "0xc6c", + "0xc64", + "0xd16", + "0xd06", + "0xcbc", + "0xcf7", + "0xcef", + "0xda1", + "0xd91", + "0xd47", + "0xd82", + "0xd7a", + "0xe2c", + "0xe1c", + "0xdd2", + "0xe0d", + "0xe05", + "0xeb7", + "0xea7", + "0xe5d", + "0xe98", + "0xe90", + "0xf42", + "0xf32", + "0xee8", + "0xf23", + "0xf1b", + "0xfc5", + "0xfb5", + "0xf73", + "0xfa6", + "0xf9e", + "0x1048", + "0x1038", + "0xff6", + "0x1029", + "0x1021", + "0x10cb", + "0x10bb", + "0x1079", + "0x10ac", + "0x10a4", + "0x114e", + "0x113e", + "0x10fc", + "0x112f", + "0x1127", + "0x11d1", + "0x11c1", + "0x117f", + "0x11b2", + "0x11aa", + "0x1254", + "0x1244", + "0x1202", + "0x1235", + "0x122d", + "0x12d7", + "0x12c7", + "0x1285", + "0x12b8", + "0x12b0", + "0x135a", + "0x134a", + "0x1308", + "0x133b", + "0x1333", + "0x13dd", + "0x13cd", + "0x138b", + "0x13be", + "0x13b6", + "0x1460", + "0x1450", + "0x140e", + "0x1441", + "0x1439", + "0x14e3", + "0x14d3", + "0x1491", + "0x14c4", + "0x14bc", + "0x1566", + "0x1556", + "0x1514", + "0x1547", + "0x153f", + "0x15e9", + "0x15d9", + "0x1597", + "0x15ca", + "0x15c2", + "0x166c", + "0x165c", + "0x161a", + "0x164d", + "0x1645", + "0x16ef", + "0x16df", + "0x169d", + "0x16d0", + "0x16c8", + "0x1772", + "0x1762", + "0x1720", + "0x1753", + "0x174b", + "0x17f5", + "0x17e5", + "0x17a3", + "0x17d6", + "0x17ce", + "0x18ab", + "0x189b", + "0x188a", + "0x1878", + "0x1832", + "0x1867", + "0x185f", + "0x1998", + "0x1988", + "0x1977", + "0x1965", + "0x1952", + "0x193e", + "0x18f4", + "0x192b", + "0x1923", + "0x1acd", + "0x1ab8", + "0x1aa3", + "0x1a8e", + "0x1a79", + "0x1a64", + "0x1a57", + "0x1a42", + "0x19f6", + "0x1a2e", + "0x1a26", + "0x1bde", + "0x1bce", + "0x1bbd", + "0x1bab", + "0x1b98", + "0x1afe", + "0x1b03", + "0x1b82", + "0x1b79", + "0x1b2d", + "0x1b65", + "0x1b5d", + "0x1b8a", + "0x1c7e", + "0x1bf9", + "0x1bfe", + "0x1c6c", + "0x1c67", + "0x1c24", + "0x1c58", + "0x1c50", + "0x1c70", + "0x1cab", + "0x1cdc", + "0x1cfa", + "0x1dd6", + "0x1dbe", + "0x1d9f", + "0x1d35", + "0x1d3a", + "0x1d5d", + "0x1d87", + "0x1d7f", + "0x1df2", + "0x1deb", + "0x1e67", + "0x1e4f", + "0x1e37", + "0x1e2f", + "0x1e83", + "0x1e7c", + "0x1ef8", + "0x1ee0", + "0x1ec8", + "0x1ec0", + "0x1fb9", + "0x1fae", + "0x1f2d", + "0x1f32", + "0x1f49", + "0x1f97", + "0x1f7f", + "0x1f77", + "0x207b", + "0x2070", + "0x1fef", + "0x1ff4", + "0x200b", + "0x2059", + "0x2041", + "0x2039", + "0x20ad", + "0x20df", + "0x2186", + "0x217c", + "0x210c", + "0x2110", + "0x216d", + "0x2163", + "0x14c", + "0x2147", + "0x14d", + "0x14e", + "0x213f", + "0x14f", + "0x151", + "0x152", + "0x153", + "0x215b", + "0x154", + "0x155", + "0x156", + "0x157", + "0x158", + "0x159", + "0x21a5", + "0x21aa", + "0x21e6", + "0x15a", + "0x15b", + "0x21e2", + "0x21bc", + "0x21c1", + "0x21d7", + "0x21d2", + "0x15c", + "0x15d", + "0x21dd", + "0x15e", + "0x21eb", + "0x15f", + "0x160", + "0x161", + "0x22e1", + "0x220f", + "0x2214", + "0x223a", + "0x162", + "0x22d3", + "0x22c4", + "0x22b0", + "0x22a6", + "0x229b", + "0x163", + "0x164", + "0x165", + "0x2293", + "0x166", + "0x230f", + "0x2314", + "0x232b", + "0x167", + "0x24c9", + "0x24bb", + "0x2351", + "0x2356", + "0x2370", + "0x168", + "0x24ab", + "0x169", + "0x23a1", + "0x16a", + "0x16b", + "0x16c", + "0x16d", + "0x16e", + "0x249a", + "0x16f", + "0x23cf", + "0x170", + "0x2489", + "0x23e7", + "0x23fc", + "0x171", + "0x2479", + "0x172", + "0x173", + "0x174", + "0x246a", + "0x175", + "0x176", + "0x242e", + "0x177", + "0x178", + "0x2433", + "0x179", + "0x17a", + "0x17b", + "0x17c", + "0x2455", + "0x17d", + "0x17e", + "0x17f", + "0x244d", + "0x180", + "0x182", + "0x24f4", + "0x183", + "0x184", + "0x185", + "0x186", + "0x187", + "0x2533", + "0x188", + "0x189", + "0x18a", + "0x252c", + "0x18b", + "0x18c", + "0x2523", + "0x18d", + "0x18e", + "0x2519", + "0x18f", + "0x190", + "0x191", + "0x192", + "0x193", + "0x194", + "0x195", + "0x196", + "0x197", + "0x198", + "0x2570", + "0x199", + "0x19a", + "0x2567", + "0x19b", + "0x19c", + "0x19d", + "0x2636", + "0x19e", + "0x2628", + "0x2619", + "0x19f", + "0x260b", + "0x1a0", + "0x1a1", + "0x25fc", + "0x1a2", + "0x1a3", + "0x1a4", + "0x25ef", + "0x1a5", + "0x1a6", + "0x25e5", + "0x1a7", + "0x1a8", + "0x1a9", + "0x25dc", + "0x1aa", + "0x1ab", + "0x26e0", + "0x26d3", + "0x1ad", + "0x1ae", + "0x26bf", + "0x26b3", + "0x26a9", + "0x1af", + "0x1b0", + "0x1b1", + "0x26a0", + "0x26c9", + "0x1b2", + "0x1b3", + "0x2918", + "0x1b5", + "0x2906", + "0x2724", + "0x1b6", + "0x1b7", + "0x1b8", + "0x1b9", + "0x28f4", + "0x28e2", + "0x1ba", + "0x28d2", + "0x275f", + "0x2763", + "0x277f", + "0x1bb", + "0x1bc", + "0x28ba", + "0x28a4", + "0x1bd", + "0x1be", + "0x1bf", + "0x2897", + "0x1c0", + "0x1c1", + "0x279f", + "0x27b9", + "0x1c2", + "0x2888", + "0x1c4", + "0x1c5", + "0x2879", + "0x1c6", + "0x1c7", + "0x1c8", + "0x1c9", + "0x280d", + "0x1ca", + "0x1cb", + "0x1cc", + "0x1cd", + "0x27fe", + "0x1ce", + "0x1cf", + "0x1d0", + "0x27d9", + "0x1d1", + "0x1d2", + "0x27de", + "0x1d4", + "0x1d5", + "0x1d6", + "0x27e8", + "0x2812", + "0x1d7", + "0x1d8", + "0x281c", + "0x2821", + "0x2863", + "0x1d9", + "0x2859", + "0x2850", + "0x1da", + "0x1db", + "0x1dc", + "0x2931", + "0x2936", + "0x2940", + "0x1dd", + "0x1de", + "0x1df", + "0x1e0", + "0x1e1", + "0x1e2", + "0x1e3", + "0x2969", + "0x1e4", + "0x1e5", + "0x1e6", + "0x1e7", + "0x2978", + "0x297c", + "0x1e8", + "0x1e9", + "0x1ea", + "0x29a7", + "0x1eb", + "0x1ec", + "0x1ed", + "0x1ee", + "0x1ef", + "0x29c3", + "0x1f0", + "0x29df", + "0x1f1", + "0x29fb", + "0x1f2", + "0x2a17", + "0x1f3", + "0x2a33", + "0x1f4", + "0x2a4f", + "0x1f5", + "0x2a6b", + "0x1f6", + "0x2a87", + "0x2ab8", + "0x1f7", + "0x1f8", + "0x1f9", + "0x1fa", + "0x2ab0", + "0x2aeb", + "0x1fb", + "0x1fc", + "0x1fd", + "0x2ae3", + "0x2b1e", + "0x1fe", + "0x1ff", + "0x2b16", + "0x2b51", + "0x200", + "0x201", + "0x2b49", + "0x2b84", + "0x202", + "0x203", + "0x2b7c", + "0x2bb7", + "0x205", + "0x2baf", + "0x2bea", + "0x206", + "0x207", + "0x2be2", + "0x2c1d", + "0x208", + "0x209", + "0x2c15", + "0x2c50", + "0x20a", + "0x20b", + "0x2c48", + "0x2c83", + "0x20c", + "0x20d", + "0x2c7b", + "0x2cb6", + "0x20e", + "0x20f", + "0x2cae", + "0x2ce9", + "0x210", + "0x211", + "0x2ce1", + "0x2d1c", + "0x212", + "0x213", + "0x2d14", + "0x2d4f", + "0x214", + "0x215", + "0x2d47", + "0x2d82", + "0x216", + "0x217", + "0x2d7a", + "0x2db5", + "0x218", + "0x219", + "0x2dad", + "0x2dd4", + "0x2dd9", + "0x2ded", + "0x21a", + "0x2e10", + "0x21b", + "0x2e08", + "0x2f29", + "0x2e39", + "0x2e3e", + "0x2e65", + "0x21c", + "0x2f1a", + "0x2f0b", + "0x2ef6", + "0x21d", + "0x2ee9", + "0x21e", + "0x2edd", + "0x21f", + "0x220", + "0x221", + "0x2ed3", + "0x222", + "0x223", + "0x224", + "0x2ecb", + "0x2f9f", + "0x2f93", + "0x2f87", + "0x2f7f", + "0x2fb4", + "0x2fb9", + "0x2fe3", + "0x225", + "0x226", + "0x2fdd", + "0x227", + "0x228", + "0x2fd5", + "0x229", + "0x22a", + "0x22b", + "0x22c", + "0x22d", + "0x22e", + "0x30f1", + "0x30e2", + "0x30d3", + "0x30c5", + "0x230", + "0x3040", + "0x3045", + "0x30ae", + "0x231", + "0x232", + "0x309f", + "0x233", + "0x3089", + "0x306a", + "0x234", + "0x235", + "0x236", + "0x3081", + "0x238", + "0x239", + "0x23a", + "0x3107", + "0x23b", + "0x23c", + "0x310c", + "0x23d", + "0x23e", + "0x23f", + "0x333c", + "0x3318", + "0x330a", + "0x240", + "0x32ee", + "0x32cb", + "0x32bd", + "0x3169", + "0x316e", + "0x3188", + "0x241", + "0x32ad", + "0x31a4", + "0x31a9", + "0x31c4", + "0x242", + "0x243", + "0x329c", + "0x244", + "0x245", + "0x247", + "0x3210", + "0x248", + "0x249", + "0x24a", + "0x3215", + "0x24b", + "0x24c", + "0x24d", + "0x24e", + "0x328d", + "0x24f", + "0x250", + "0x251", + "0x252", + "0x3271", + "0x253", + "0x254", + "0x3257", + "0x255", + "0x257", + "0x258", + "0x259", + "0x324f", + "0x25a", + "0x25b", + "0x25c", + "0x25d", + "0x335f", + "0x25e", + "0x25f", + "0x3364", + "0x260", + "0x261", + "0x262", + "0x33af", + "0x263", + "0x264", + "0x3399", + "0x265", + "0x266", + "0x267", + "0x3391", + "0x268", + "0x269", + "0x26a", + "0x26b", + "0x33d7", + "0x26c", + "0x26d", + "0x26e", + "0x33d0", + "0x26f", + "0x270", + "0x271", + "0x33fd", + "0x272", + "0x273", + "0x274", + "0x33f6", + "0x275", + "0x276", + "0x277", + "0x278", + "0x3417", + "0x341c", + "0x279", + "0x27a", + "0x3452", + "0x344a", + "0x343f", + "0x27b", + "0x27c", + "0x27d", + "0x27e", + "0x27f", + "0x280", + "0x281", + "0x282", + "0x283", + "0x346e", + "0x284", + "0x285", + "0x286", + "0x3489", + "0x288", + "0x289", + "0x28a", + "0x28b", + "0x28c", + "0x28d", + "0x28e", + "0x28f", + "0x290", + "0x34cd", + "0x291", + "0x292", + "0x34b2", + "0x34b7", + "0x34c4", + "0x293", + "0x294", + "0x295", + "0x34e5", + "0x34ea", + "0x34f5", + "0x296", + "0x297", + "0x298", + "0x299", + "0x29a", + "0x3539", + "0x351e", + "0x3523", + "0x3530", + "0x3551", + "0x3556", + "0x3561", + "0x29b", + "0x29c", + "0x29d", + "0x29e", + "0x29f", + "0x35a5", + "0x358a", + "0x358f", + "0x359c", + "0x35e0", + "0x35d8", + "0x35cd", + "0x2a0", + "0x2a1", + "0x2a2", + "0x35f6", + "0x35fa", + "0x3604", + "0x3609", + "0x3616", + "0x2a3", + "0x2a4", + "0x2a5", + "0x2a6", + "0x2a7", + "0x2a8", + "0x3631", + "0x2a9", + "0x2aa", + "0x2ab", + "0x2ac", + "0x2ad", + "0x2ae", + "0x3674", + "0x3659", + "0x365e", + "0x366b", + "0x36af", + "0x36a7", + "0x369c", + "0x2af", + "0x2b0", + "0x36f5", + "0x36da", + "0x36df", + "0x36ec", + "0x2b1", + "0x3715", + "0x3741", + "0x3739", + "0x2b3", + "0x376a", + "0x37b4", + "0x2b4", + "0x2b5", + "0x37aa", + "0x2b6", + "0x2b7", + "0x2b8", + "0x2b9", + "0x37a2", + "0x2bb", + "0x2bc", + "0x37d4", + "0x37e2", + "0x2bd", + "0x37ef", + "0x2be", + "0x2bf", + "0x383c", + "0x2c0", + "0x2c1", + "0x3834", + "0x2c2", + "0x2c3", + "0x2c4", + "0x382d", + "0x2c5", + "0x2c6", + "0x3826", + "0x2c7", + "0x2c8", + "0x384a", + "0x2ca", + "0x3851", + "0x2cb", + "0x2cc", + "0x2cd", + "0x3873", + "0x386c", + "0x2ce", + "0x38b7", + "0x389c", + "0x38a1", + "0x38ae", + "0x3904", + "0x38e6", + "0x38eb", + "0x38fc", + "0x2cf", + "0x2d0", + "0x2d1", + "0x3926", + "0x392b", + "0x2d2", + "0x2d3", + "0x394b", + "0x393d", + "0x2d4", + "0x2d5", + "0x2d6", + "0x397d", + "0x2d7", + "0x3969", + "0x397a", + "0x3972", + "0x3978", + "0x3987", + "0x3a14", + "0x39b2", + "0x2d8", + "0x39d0", + "0x3a09", + "0x39ff", + "0x2da", + "0x39f7", + "0x2db", + "0x2dc", + "0x3a3a", + "0x3a3f", + "0x3a4b", + "0x2dd", + "0x2de", + "0x3a91", + "0x3a76", + "0x3a7b", + "0x3a88", + "0x2df", + "0x2e0", + "0x2e1", + "0x3ab8", + "0x2e2", + "0x2e3", + "0x2e4", + "0x3ab1", + "0x3b0e", + "0x3ae5", + "0x2e5", + "0x2e6", + "0x3adf", + "0x2e7", + "0x3ad7", + "0x2e8", + "0x2e9", + "0x3af5", + "0x2ea", + "0x2eb", + "0x2ec", + "0x2ed", + "0x2ee", + "0x3b04", + "0x2ef", + "0x2f0", + "0x3afc", + "0x2f1", + "0x2f2", + "0x3b1d", + "0x3b22", + "0x3b48", + "0x3b3e", + "0x3b43", + "0x2f3", + "0x2f4", + "0x2f5", + "0x2f6", + "0x2f7", + "0x3b75", + "0x2f8", + "0x3b6e", + "0x2f9", + "0x3ba0", + "0x3b98", + "0x3bdb", + "0x3bd3", + "0x3bc8", + "0x2fa", + "0x2fb", + "0x2fc", + "0x3bf4", + "0x2fd", + "0x2fe", + "0x2ff", + "0x300", + "0x3c00", + "0x301", + "0x302", + "0x3c04", + "0x303", + "0x304", + "0x305", + "0x306", + "0x3c10", + "0x3c4d", + "0x307", + "0x308", + "0x3c36", + "0x309", + "0x3c90", + "0x30b", + "0x30c", + "0x3c79", + "0x30d", + "0x30e", + "0x3cd8", + "0x3cbd", + "0x3cc2", + "0x3ccf", + "0x30f", + "0x3d1d", + "0x3d02", + "0x3d07", + "0x3d14", + "0x310", + "0x311", + "0x3d41", + "0x3d7b", + "0x312", + "0x3d72", + "0x313", + "0x3dc2", + "0x3da7", + "0x3dac", + "0x3db9", + "0x314", + "0x315", + "0x3dde", + "0x316", + "0x317", + "0x3e2f", + "0x3e14", + "0x3e19", + "0x3e26", + "0x318", + "0x319", + "0x31a", + "0x31b", + "0x3e51", + "0x31c", + "0x31d", + "0x31e", + "0x31f", + "0x320", + "0x321", + "0x322", + "0x323", + "0x3e6f", + "0x324", + "0x325", + "0x3e86", + "0x326", + "0x327", + "0x3e8b", + "0x328", + "0x329", + "0x32a", + "0x3e98", + "0x3f28", + "0x3f14", + "0x3ec6", + "0x3ecb", + "0x3ee3", + "0x32b", + "0x32c", + "0x3f0b", + "0x32d", + "0x3f03", + "0x3f1f", + "0x3f8b", + "0x3f53", + "0x3f71", + "0x32e", + "0x3f82", + "0x3f7a", + "0x3fdf", + "0x3fcd", + "0x32f", + "0x3fc5", + "0x330", + "0x4011", + "0x4004", + "0x331", + "0x402a", + "0x402f", + "0x4042", + "0x332", + "0x4055", + "0x333", + "0x4098", + "0x407d", + "0x4082", + "0x408f", + "0x334", + "0x40dd", + "0x40c2", + "0x40c7", + "0x40d4", + "0x411e", + "0x40f6", + "0x336", + "0x337", + "0x338", + "0x4114", + "0x410e", + "0x339", + "0x33a", + "0x33b", + "0x33c", + "0x4138", + "0x4179", + "0x415e", + "0x4163", + "0x4170", + "0x4193", + "0x33e", + "0x419f", + "0x33f", + "0x340", + "0x341", + "0x342", + "0x41b7", + "0x41bc", + "0x41c9", + "0x343", + "0x344", + "0x345", + "0x346", + "0x347", + "0x41ec", + "0x348", + "0x349", + "0x34a", + "0x34b", + "0x4232", + "0x4217", + "0x421c", + "0x4229", + "0x4363", + "0x4358", + "0x4346", + "0x34d", + "0x433d", + "0x34e", + "0x4334", + "0x432b", + "0x4322", + "0x4319", + "0x4310", + "0x4307", + "0x42ff", + "0x42f7", + "0x42ef", + "0x34f", + "0x350", + "0x437d", + "0x4382", + "0x438d", + "0x351", + "0x352", + "0x353", + "0x354", + "0x355", + "0x356", + "0x357", + "0x43c3", + "0x358", + "0x359", + "0x35a", + "0x43ae", + "0x35b", + "0x43f3", + "0x35d", + "0x43e5", + "0x35e", + "0x35f", + "0x360", + "0x361", + "0x362", + "0x363", + "0x364", + "0x365", + "0x4402", + "0x4428", + "0x366", + "0x441a", + "0x367", + "0x368", + "0x369", + "0x36a", + "0x36b", + "0x36c", + "0x36d", + "0x36e", + "0x4437", + "0x4444", + "0x4448", + "0x4454", + "0x36f", + "0x370", + "0x371", + "0x372", + "0x4460", + "0x4470", + "0x373", + "0x447c", + "0x374", + "0x375", + "0x4495", + "0x44a3", + "0x44b1", + "0x44bf", + "0x44cd", + "0x44db", + "0x44e9", + "0x4502", + "0x4510", + "0x451e", + "0x452c", + "0x4545", + "0x455e", + "0x4577", + "0x4585", + "0x4593", + "0x45a1", + "0x45af", + "0x45bd", + "0x45cb", + "0x45d9", + "0x45e7", + "0x45f5", + "0x4603", + "0x4611", + "0x461f", + "0x462d", + "0x463b", + "0x4649", + "0x4657", + "0x4665", + "0x4673", + "0x4681", + "0x376", + "0x377", + "0x468e", + "0x378", + "0x379", + "0x37a", + "0x37b", + "0x37c", + "0x37d", + "0x37e", + "0x37f", + "0x380", + "0x381", + "0x382", + "0x383", + "0x384", + "0x385", + "0x44fc", + "0x386", + "0x388", + "0x389", + "0x38a", + "0x38b", + "0x38c", + "0x38d", + "0x38e", + "0x38f", + "0x453f", + "0x390", + "0x391", + "0x4558", + "0x392", + "0x393", + "0x4571", + "0x394", + "0x395", + "0x396", + "0x397", + "0x398", + "0x399", + "0x39a", + "0x39b", + "0x39c", + "0x39d", + "0x39f", + "0x3a0", + "0x3a1", + "0x3a2", + "0x3a3", + "0x3a4", + "0x3a5", + "0x3a6", + "0x3a7", + "0x3a8", + "0x3a9", + "0x3aa", + "0x3ac", + "0x3ad", + "0x3ae", + "0x3af", + "0x3b0", + "0x3b1", + "0x3b2", + "0x3b3", + "0x3b4", + "0x3b5", + "0x3b6", + "0x3b7", + "0x3b8", + "0x3b9", + "0x3ba", + "0x3bb", + "0x3bc", + "0x3bd", + "0x3be", + "0x3bf", + "0x3c0", + "0x3c1", + "0x3c2", + "0x3c3", + "0x3c4", + "0x3c5", + "0x3c6", + "0x3c7", + "0x3c8", + "0x3c9", + "0x3ca", + "0x3cb", + "0x3cc", + "0x3cd", + "0x3ce", + "0x3cf", + "0x3d0", + "0x3d1", + "0x3d2", + "0x3d3", + "0x3d4", + "0x3d6", + "0x3d7", + "0x3d8", + "0x46b1", + "0x3d9", + "0x3da", + "0x46b6", + "0x3db", + "0x3dc", + "0x3dd", + "0x46c1", + "0x3de", + "0x3df", + "0x3e0", + "0x3e1", + "0x3e2", + "0x3e3", + "0x3e4", + "0x3e5", + "0x4703", + "0x3e6", + "0x3e7", + "0x4726", + "0x3e8", + "0x3e9", + "0x4719", + "0x3ea", + "0x3eb", + "0x3ed", + "0x3ee", + "0x4750", + "0x3ef", + "0x3f0", + "0x3f1", + "0x4748", + "0x4762", + "0x4766", + "0x3f2", + "0x3f3", + "0x4773", + "0x4779", + "0x3f4", + "0x478b", + "0x4790", + "0x47b0", + "0x47a2", + "0x3f5", + "0x47d5", + "0x3f6", + "0x3f7", + "0x3f8", + "0x3fa", + "0x3fb", + "0x47ec", + "0x3fc", + "0x3fd", + "0x3fe", + "0x4819", + "0x3ff", + "0x400", + "0x480c", + "0x401", + "0x402", + "0x403", + "0x404", + "0x405", + "0x406", + "0x407", + "0x4828", + "0x488a", + "0x487f", + "0x408", + "0x4874", + "0x409", + "0x40a", + "0x485e", + "0x40b", + "0x40c", + "0x48b8", + "0x48aa", + "0x40d", + "0x40e", + "0x40f", + "0x410", + "0x411", + "0x412", + "0x413", + "0x414", + "0x48c7", + "0x48f7", + "0x48f0", + "0x48e7", + "0x415", + "0x416", + "0x417", + "0x418", + "0x419", + "0x41a", + "0x41b", + "0x41c", + "0x4927", + "0x41d", + "0x41e", + "0x41f", + "0x420", + "0x4946", + "0x421", + "0x422", + "0x496d", + "0x423", + "0x424", + "0x425", + "0x426", + "0x427", + "0x497a", + "0x428", + "0x4995", + "0x499a", + "0x49a7", + "0x42a", + "0x42b", + "0x42c", + "0x42d", + "0x42e", + "0x49c2", + "0x49c7", + "0x49d4", + "0x42f", + "0x430", + "0x431", + "0x432", + "0x433", + "0x434", + "0x435", + "0x49f6", + "0x4a20", + "0x4a18", + "0x436", + "0x437", + "0x4a35", + "0x4a39", + "0x4a44", + "0x4a49", + "0x4a54", + "0x438", + "0x439", + "0x43a", + "0x43b", + "0x43c", + "0x4a9b", + "0x4a6c", + "0x4a71", + "0x4a8d", + "0x4a87", + "0x4a94", + "0x43d", + "0x43e", + "0x4ae3", + "0x4ad8", + "0x4add", + "0x43f", + "0x440", + "0x441", + "0x442", + "0x4aef", + "0x443", + "0x444", + "0x4b09", + "0x4b4f", + "0x445", + "0x4b44", + "0x4b3c", + "0x446", + "0x4b97", + "0x4b7c", + "0x4b81", + "0x4b8e", + "0x4bdf", + "0x4bd4", + "0x4bcc", + "0x4c75", + "0x4c07", + "0x4c33", + "0x447", + "0x448", + "0x4c5d", + "0x4c44", + "0x449", + "0x44a", + "0x44b", + "0x4c3c", + "0x44c", + "0x44d", + "0x4c9c", + "0x4ca1", + "0x4cad", + "0x44e", + "0x44f", + "0x4cc0", + "0x450", + "0x451", + "0x4d5a", + "0x4d47", + "0x4d2f", + "0x4d16", + "0x452", + "0x453", + "0x4d0e", + "0x4d51", + "0x4dbb", + "0x454", + "0x455", + "0x4da2", + "0x456", + "0x457", + "0x458", + "0x4d9a", + "0x459", + "0x45a", + "0x45b", + "0x4dd7", + "0x4ddc", + "0x4de7", + "0x45d", + "0x45e", + "0x45f", + "0x4df4", + "0x4df9", + "0x460", + "0x4e02", + "0x4e07", + "0x461", + "0x462", + "0x463", + "0x465", + "0x466", + "0x467", + "0x468", + "0x469", + "0x46a", + "0x46b", + "0x46c", + "0x46d", + "0x46e", + "0x46f", + "0x470", + "0x471", + "0x472", + "0x4eeb", + "0x474", + "0x475", + "0x476", + "0x477", + "0x478", + "0x479", + "0x4f4f", + "0x47a", + "0x4f68", + "0x47b", + "0x4f81", + "0x47c", + "0x47d", + "0x47e", + "0x47f", + "0x480", + "0x481", + "0x482", + "0x484", + "0x485", + "0x486", + "0x487", + "0x488", + "0x489", + "0x48a", + "0x48b", + "0x48c", + "0x48d", + "0x48e", + "0x48f", + "0x490", + "0x491", + "0x492", + "0x493", + "0x494", + "0x495", + "0x496", + "0x497", + "0x498", + "0x499", + "0x49a", + "0x49b", + "0x49c", + "0x49d", + "0x49e", + "0x49f", + "0x4a0", + "0x4a1", + "0x4a2", + "0x4a3", + "0x510c", + "0x4a4", + "0x4a5", + "0x511c", + "0x4a6", + "0x4a7", + "0x4a8", + "0x4a9", + "0x4aa", + "0x4ab", + "0x4ac", + "0x4ad", + "0x4ae", + "0x4af", + "0x4b0", + "0x4b1", + "0x517b", + "0x4b2", + "0x4b3", + "0x5170", + "0x4b5", + "0x5166", + "0x5157", + "0x4b6", + "0x4b7", + "0x4b8", + "0x4b9", + "0x4ba", + "0x4bb", + "0x4bc", + "0x4bd", + "0x4be", + "0x518a", + "0x519a", + "0x4bf", + "0x4c0", + "0x51a0", + "0x4c1", + "0x51a8", + "0x4c2", + "0x4c3", + "0x51bc", + "0x51b2", + "0x51ba", + "0x4c4", + "0x4c5", + "0x4c6", + "0x51de", + "0x4c7", + "0x4c8", + "0x4c9", + "0x51d7", + "0x4ca", + "0x51f0", + "0x51f6", + "0x4cb", + "0x4cc", + "0x5203", + "0x4cd", + "0x4ce", + "0x4cf", + "0x4d0", + "0x4d1", + "0x4d2", + "0x4d3", + "0x4d4", + "0x5217", + "0x4d5", + "0x4d6", + "0x4d7", + "0x523d", + "0x4d8", + "0x4d9", + "0x4da", + "0x4db", + "0x5263", + "0x4dc", + "0x4dd", + "0x525d", + "0x5272", + "0x4de", + "0x5333", + "0x4df", + "0x5288", + "0x528d", + "0x530a", + "0x529b", + "0x52a0", + "0x52e0", + "0x4e0", + "0x4e1", + "0x4e2", + "0x52cd", + "0x52c6", + "0x4e3", + "0x4e4", + "0x4e5", + "0x4e6", + "0x4e8", + "0x4e9", + "0x52f8", + "0x5302", + "0x5321", + "0x532b", + "0x4ea", + "0x4eb", + "0x5385", + "0x537d", + "0x5372", + "0x4ec", + "0x4ed", + "0x539e", + "0x53a2", + "0x53ac", + "0x53b1", + "0x53be", + "0x4ee", + "0x4f0", + "0x4f1", + "0x4f2", + "0x5404", + "0x53e9", + "0x53ee", + "0x53fb", + "0x4f3", + "0x5449", + "0x542e", + "0x5433", + "0x5440", + "0x4f4", + "0x5462", + "0x5467", + "0x5474", + "0x4f5", + "0x4f6", + "0x4f7", + "0x4f8", + "0x4f9", + "0x54ba", + "0x549f", + "0x54a4", + "0x54b1", + "0x4fa", + "0x54ca", + "0x4fb", + "0x4fc", + "0x4fd", + "0x4ff", + "0x54f5", + "0x54e7", + "0x500", + "0x501", + "0x502", + "0x503", + "0x504", + "0x505", + "0x551e", + "0x5510", + "0x506", + "0x507", + "0x508", + "0x509", + "0x50a", + "0x50b", + "0x50c", + "0x50d", + "0x552d", + "0x50f", + "0x510", + "0x511", + "0x55b5", + "0x556a", + "0x55ad", + "0x557e", + "0x5582", + "0x55a9", + "0x5592", + "0x55a6", + "0x559e", + "0x55a4", + "0x55b1", + "0x55bf", + "0x55c6", + "0x55cd", + "0x512", + "0x55db", + "0x513", + "0x514", + "0x515", + "0x516", + "0x517", + "0x518", + "0x55f1", + "0x55f7", + "0x5614", + "0x560e", + "0x519", + "0x5635", + "0x51a", + "0x51b", + "0x51c", + "0x51d", + "0x564f", + "0x51e", + "0x51f", + "0x5652", + "0x520", + "0x521", + "0x565a", + "0x522", + "0x523", + "0x565d", + "0x524", + "0x5669", + "0x566f", + "0x5677", + "0x568b", + "0x5681", + "0x5689", + "0x5a8", + "0x644", + "0x6fa", + "0x767", + "0x805", + "0x89c", + "0x933", + "0x9ca", + "0xa6e", + "0xaf9", + "0xb84", + "0xc0f", + "0xc9a", + "0xd25", + "0xdb0", + "0xe3b", + "0xec6", + "0xf51", + "0xfd4", + "0x1057", + "0x10da", + "0x115d", + "0x11e0", + "0x1263", + "0x12e6", + "0x1369", + "0x13ec", + "0x146f", + "0x14f2", + "0x1575", + "0x15f8", + "0x167b", + "0x16fe", + "0x1781", + "0x1804", + "0x18ba", + "0x19a7", + "0x1ae1", + "0x1bed", + "0x1c8d", + "0x1cb2", + "0x1cbe", + "0x1ce3", + "0x1cef", + "0x1d00", + "0x1de0", + "0x1df8", + "0x1e71", + "0x1e89", + "0x1f02", + "0x1fc4", + "0x2086", + "0x208c", + "0x20b5", + "0x20be", + "0x20e7", + "0x218f", + "0x219e", + "0x21f0", + "0x22fb", + "0x24d6", + "0x24fb", + "0x253c", + "0x257a", + "0x2644", + "0x26ed", + "0x292a", + "0x2947", + "0x2971", + "0x2986", + "0x29af", + "0x29cb", + "0x29e7", + "0x2a03", + "0x2a1f", + "0x2a3b", + "0x2a57", + "0x2a73", + "0x2a8f", + "0x2ac2", + "0x2af5", + "0x2b28", + "0x2b5b", + "0x2b8e", + "0x2bc1", + "0x2bf4", + "0x2c27", + "0x2c5a", + "0x2c8d", + "0x2cc0", + "0x2cf3", + "0x2d26", + "0x2d59", + "0x2d8c", + "0x2dbf", + "0x2e1a", + "0x2f44", + "0x2fac", + "0x2fed", + "0x3101", + "0x310f", + "0x3359", + "0x3367", + "0x33b8", + "0x33de", + "0x3404", + "0x341f", + "0x345b", + "0x3474", + "0x3490", + "0x34d5", + "0x34fc", + "0x3541", + "0x3568", + "0x35ad", + "0x35e9", + "0x361f", + "0x3637", + "0x367c", + "0x36b8", + "0x36fd", + "0x371d", + "0x3749", + "0x3772", + "0x37be", + "0x37e4", + "0x37fb", + "0x3844", + "0x3854", + "0x387a", + "0x38bf", + "0x390a", + "0x3911", + "0x3952", + "0x398a", + "0x3a1f", + "0x3a51", + "0x3a54", + "0x3a99", + "0x3abf", + "0x3b16", + "0x3b4f", + "0x3b7c", + "0x3ba8", + "0x3be4", + "0x3bfa", + "0x3c15", + "0x3c58", + "0x3c9b", + "0x3ce0", + "0x3d25", + "0x3d47", + "0x3d85", + "0x3dca", + "0x3df2", + "0x3e37", + "0x3e57", + "0x3e77", + "0x3ea0", + "0x3f35", + "0x3f98", + "0x3fea", + "0x4018", + "0x405b", + "0x40a0", + "0x40e5", + "0x412d", + "0x413c", + "0x4181", + "0x4199", + "0x41a5", + "0x41d2", + "0x41f5", + "0x423a", + "0x436d", + "0x4394", + "0x43d3", + "0x43fc", + "0x4408", + "0x4431", + "0x443d", + "0x444b", + "0x445a", + "0x4466", + "0x4476", + "0x4482", + "0x4485", + "0x4695", + "0x4698", + "0x469b", + "0x46aa", + "0x46c7", + "0x46ca", + "0x46cd", + "0x46dc", + "0x46eb", + "0x470b", + "0x472c", + "0x4758", + "0x4768", + "0x477c", + "0x47b7", + "0x47dc", + "0x47e1", + "0x47f8", + "0x481f", + "0x4822", + "0x482e", + "0x4895", + "0x4898", + "0x48c1", + "0x48cd", + "0x4900", + "0x4905", + "0x492e", + "0x494d", + "0x495b", + "0x4973", + "0x4983", + "0x49b0", + "0x49dd", + "0x49e0", + "0x49e3", + "0x49fc", + "0x4a28", + "0x4a2b", + "0x4a5b", + "0x4a5e", + "0x4aa9", + "0x4abd", + "0x4ae9", + "0x4af5", + "0x4b03", + "0x4b0f", + "0x4b5a", + "0x4b9f", + "0x4bea", + "0x4c81", + "0x4cb3", + "0x4cb6", + "0x4cb9", + "0x4cc9", + "0x4ccc", + "0x4ccf", + "0x4d66", + "0x4dc7", + "0x4dee", + "0x4dfc", + "0x4e0a", + "0x4e14", + "0x4e26", + "0x4e38", + "0x4e54", + "0x4e7c", + "0x4e8e", + "0x4eaa", + "0x4ef2", + "0x4f19", + "0x4f2b", + "0x4f3d", + "0x4f56", + "0x4f6f", + "0x4f88", + "0x4f92", + "0x4fae", + "0x4fca", + "0x4fe6", + "0x4ff8", + "0x500a", + "0x501c", + "0x502e", + "0x5040", + "0x5052", + "0x5064", + "0x5076", + "0x5088", + "0x509a", + "0x50ac", + "0x50be", + "0x50d0", + "0x50e2", + "0x50f4", + "0x5106", + "0x5112", + "0x5120", + "0x5135", + "0x5184", + "0x5190", + "0x51bf", + "0x51e5", + "0x51f9", + "0x5207", + "0x520c", + "0x5223", + "0x5246", + "0x5279", + "0x5343", + "0x5351", + "0x538f", + "0x5391", + "0x53c7", + "0x540c", + "0x5451", + "0x547d", + "0x54c2", + "0x54d5", + "0x54fe", + "0x5527", + "0x5533", + "0x55d3", + "0x55e6", + "0x55fa", + "0x561d", + "0x563b", + "0x5640", + "0x5643", + "0x5646", + "0x5649", + "0x5654", + "0x565f", + "0x2dea8", + "0xc00800700b00500400a009009009009008007006005004003002001000", + "0x501200901100901100901100901000700f00500e00900e00900d007006", + "0x700b005018009008007017005016009015014009009009009013007006", + "0x902000901f00701c00c01e00901d00900800701c00501100901b01a019", + "0x701c00c02600900800702500501e00902400902300701c00c004022021", + "0x900900902900701c00c012009009009008007006005021009028009027", + "0x901501400402d02100902c00902b00701c00c02a00900800702500501e", + "0x501e00903303202100903100903000701c00c02f00900800701700502e", + "0x502100903800903700701c00c00e00903600900800703500503400700b", + "0x3d02100903c00903b00701c00c00e00903a00900800703500503900700b", + "0x701c00c01100904000900800700600503f00903e00701700501e009015", + "0x504400700b005011009011009011009008007043005021009042009041", + "0x900800700600502100904700904600701c00c00e009045009008007035", + "0xc04a00900800701700500e00901800904900700600c002048016009016", + "0x904d00701c00c01200901600900800700600502100904c00904b00701c", + "0x700600c02100905000904f00701c00c04e00900800702500501e009016", + "0x5502100905400905300701c00c05200900800701700500e00902f009051", + "0x704300501100905900701700501e00905800905700701c00c056009015", + "0x505d00905d00901100905c00704300500405b01100901100901100905a", + "0x906000900800703500505f00700b00505d00905d00901100905e007043", + "0x701c00c01e00901100906300701c00c02100906200906100701c00c00e", + "0x701c00c00e00906600900800703500506500700b00501e009012009064", + "0x701c00c00e00906a00900800703500506900700b005021009068009067", + "0x701c00c00e00906e00900800703500506d00700b00502100906c00906b", + "0x902e00907200704300502e00902e00907100700600c02100907000906f", + "0x907600907500701c00c07400900800701700507300901505505d00902e", + "0xc04000907a00907900700600500407800e00900e00907700700600c021", + "0x907e00701c00c07d00904000900800700600500e00907c00907b007006", + "0x701c00c08100900800702500501e00902e00908000701c00c02100907f", + "0x502100908500908400701c00c024009008007017005021009083009082", + "0x905d00901100908800708700508600901505502e00905d009008007006", + "0x905d00908b00907400908a007089005011009011009011009040009009", + "0x500408e02100908d00908c00701c00c05800900800701700501100905d", + "0x701700502100909100909000701c00c00e00901e00901e00900800708f", + "0x501e00905d00909500701c00c01e00909400909300701c00c011009092", + "0x907a00909900701c00c02100909800909700701c00c096009008007025", + "0x700b00500409d02100909c00909b00701c00c09a00900800702500501e", + "0x700f0050210090a10090a000701c00c00e00909f00900800703500509e", + "0x90a40090080070350050a300700b0050240090110090110090940090a2", + "0x90a80090080070350050a700700b0050210090a60090a500701c00c00e", + "0x701700504000905d0090080070060050210090aa0090a900701c00c00e", + "0x501e0090ab0090ae00701c00c0210090ad0090ac00701c00c0ab009008", + "0x901e0090b000701c00c04000901600905d0090940090940090af007089", + "0x70060050210090b30090b200701c00c0b100904000900800701c00500e", + "0x90b600700600501600905d0090940090b500704300501600905d0090b4", + "0x505d00905d0090b800700600505d00905d0090b700700600505d00905d", + "0x90bb00700600505d00905d0090ba00700600505d00905d0090b9007006", + "0x505d00905d0090bd00700600505d00905d0090bc00700600505d00905d", + "0x90c000700600505d00905d0090bf00700600505d00905d0090be007006", + "0x505d00905d0090c200700600505d00905d0090c100700600505d00905d", + "0x90c500701700505d00905d0090c400700600505d00905d0090c3007006", + "0x704300505d00905d0090c700700600507a00907a0090c6007006005094", + "0x505d0090160090940090940090c900700f00505d0090160090940090c8", + "0x90cc00704300509400905d0090cb00700600509400905d0090ca007006", + "0x70170050ce0090cf0070170050ce0090cd00701700501200907d00907a", + "0x70d300c05d00905d0090d200700600507a0090d10070170050ce0090d0", + "0x90dd0090dc0090db0090da0090d90090d80090d70090d60090d50090d4", + "0x90e70090e60090e50090e40090e30090e20090e10090e00090df0090de", + "0x90f10090f00090ef0090ee0090ed0090ec0090eb0090ea0090e90090e8", + "0x701c00c05d0090110090080070060050f60090f50090f40090f30090f2", + "0x701c00c00e00901e00900800701c0050f800901503d01e0090400090f7", + "0x700b0050fd00700b0050fc00700b0050fb00700b0050210090fa0090f9", + "0x90a40090a80091040091030091020091010071000050ff00700b0050fe", + "0x3203a00903600906600906a00906e00909f009106009060009045009105", + "0x3202e0090080070170050ce00903303210a009033032002109108009107", + "0x700600c00e00901200910e00700600c10d00903303200210c10b009033", + "0x911200911100701c00c11000904000900800700600500e00907d00910f", + "0x701700511400901503d01e00900e00911300701c00c07a009033032021", + "0x703500500e00900900911700700600c05d00911600701700505d009115", + "0x910400900800703500502100911900911800701c00c00e009105009008", + "0x701c00c00e00910300900800703500502100911b00911a00701c00c00e", + "0x911f00911e00701c00c00e00910200900800703500502100911d00911c", + "0x12302100912200912100701c00c00e009008007120005011009015014021", + "0x902400912600700600c00e00902e00912500700600c124009033032002", + "0x904000912900700600c00e00912800912700700600c01100901505500e", + "0x903303202100912c00912b00701c00c12a00904000900800700600500e", + "0xc01100900800701700509400903303201100903303201600903303205d", + "0x913000912f00701c00c01200900800701700502100912e00912d00701c", + "0x700600500e0090ce00913200700600c00e00901100913100700600c021", + "0x910b00913600701c00c02100913500913400701c00c133009040009008", + "0x913800701c00c01600900800701700500e00901600913700700600c021", + "0x700600c02100913b00913a00701c00c094009008007017005021009139", + "0x910800900800703500500e00907a00913d00700600c00e00905d00913c", + "0x701700500e00909400914000700600c02100913f00913e00701c00c00e", + "0x701700504000900800701700502100914200914100701c00c05d009008", + "0x914700914600701c00c00414502100914400914300701c00c07a009008", + "0x1100900914f04000900914e00714d00714c00714b14a002149004148021", + "0x151009009156151009009155007154009153151009009152151009009150", + "0x915b01100900915615a154009159011009009158007157007009009156", + "0x15f00900915600915415e00915415d02100900915c01d00900915c011009", + "0x10200900915c00716216100900915600716015e00900915610a009009156", + "0x10500900915c0a400900915c0a800900915c10400900915c10300900915c", + "0x6e00900915c09f00900915c10600900915c06000900915c04500900915c", + "0x10800900915c03a00900915c03600900915c06600900915c06a00900915c", + "0x165009009164054011009163108009009156108009009152108009009150", + "0x1e00900915607a00900915607a00900915207a00900915014400900914e", + "0x4000900915c01e00900915201e00900915000e009009152166011009163", + "0x916304000900915216715400915900715415e00915415d14700900915c", + "0x915605d00900915205d00900915014200900914e168009009164058011", + "0x915216b00900916416a01100916304000900915616901100916305d009", + "0x915216c0090091640e6011009163094009009156124009009156094009", + "0x91630e501100916316e00900916405d01100916316d15400915913f009", + "0x915917001100916306201100916306001100916316f0090091640e4011", + "0x9163172154009159171011009163011009009152011009009150154154", + "0x916306601100916309400900915013b00900914e174009009164173011", + "0x915201600900915013900900914e176009009164175011009163068011", + "0x916317700900916406c01100916306a011009163016009009156016009", + "0x916407001100916317a15400915906e011009163179154009159178011", + "0x717c02e00900915502e00900915202e00900915010b00900914e17b009", + "0xce00900915213300900916413500900914e17e00900916417d011009163", + "0x7401100916307301100916317f0110091630ce00900915610d009009156", + "0x183009009164182011009163181009009164180011009163076011009163", + "0x7a01100916301200900915601200900915201200900915013000900914e", + "0x7f01100916307d01100916312e00900914e18400900916407c011009163", + "0x85011009163186011009163083011009163081011009163185011009163", + "0x5601100916308601100916308b011009163188011009163187011009163", + "0x18b01100916309101100916318a01100916318901100916308d011009163", + "0x18d01100916309801100916309601100916318c011009163094011009163", + "0x9f01100916318f01100916318e01100916309c01100916309a011009163", + "0x16009009192011009009192094009009192191154009159190154009159", + "0x919405d00900919409400900919401100900919400719305d009009192", + "0x916312a00900916412c00900914e1950090091640a1011009163016009", + "0x915219a009009152199009009152198009009152197154009159196011", + "0x915603f00900915600715419e00915415d01100900919d00719c19b009", + "0x91a019e00900916400915419e00915415d00e00900915c00719f19e009", + "0x240090091520071a21a10090091640dd011009163011009009155011009", + "0x1a30090091640a601100916303f0090091520a4011009163024009009156", + "0x10400900915210200900915210800900914e1a401100916302e009009156", + "0x600090091520450090091521050090091520a40090091520a8009009152", + "0x6600900915206a00900915206e00900915209f009009152106009009152", + "0x14400900915c0a801100916310300900915603a009009152036009009152", + "0x7a00900915500915416500915415d16500900915600715416500915415d", + "0x915c0aa01100916310400900915610300900915200e0090091560071a5", + "0x915500915416800915415d16800900915600715416800915415d142009", + "0x919200915416b00915415d16b0090091561a70110091630071a605d009", + "0x91501220090091521a80090091641240090091940ab011009163124009", + "0x71a900715400915909400900914e0ad011009163102009009156102009", + "0x1200915415d1ac00900915200915401200915415d0940090091ab0071aa", + "0x915600915416c00915415d1ae1540091590120090091640071ad007154", + "0x91560d500900915c11f00900914e1b00090091641af01100916316c009", + "0x715416c00915415d13f00900915c13f00900914e1b10110091630d5009", + "0x16e00915415d16e00900915600715416e00915415d0071b31b2154009159", + "0x914e1b40090091640dc01100916307a0090091ab103009009150009154", + "0x71b51440090091520b10110091630d60090091560d600900915c11d009", + "0x10400900915000915416f00915415d16f00900915600715416f00915415d", + "0xd700900915c11b00900914e1b60090091640b301100916305d0090091ab", + "0x1b80090091520da0110091631420090091521b70110091630d7009009156", + "0xf20110091631ba0090091640db0110091631050090091561b9154009159", + "0x1190090091520f10110091630de0090091560de00900915c11900900914e", + "0xa40090091560ef0110091630df0090091560df00900915c0f0011009163", + "0x15415d17400900915600715417400915415d13b00900915c0ee011009163", + "0xec0110091631080090091ab0ed0110091630a8009009156009154174009", + "0xf601100916301600900915c0071540091bb0eb011009163012009009155", + "0x915600715417600915415d13900900915c0f50110091630091540091bb", + "0x160090091ab1bc1540091bb0f401100916300915417600915415d176009", + "0x91640f30110091630071bd00900900915500900900915201600900914e", + "0x915000915417700915415d17700900915600715417700915415d1be009", + "0x91560d800900915c1bf1540091590ea011009163106009009156106009", + "0x91630e80110091631c11540091591c01540091590e90110091630d8009", + "0x91631c30090091561c300900915c1c215400915913b0090091520d5011", + "0x91561c500900915c0d80110091631c41540091590d70110091630d6011", + "0x915600715411400915415d0071c60de0110091630d90110091631c5009", + "0x1140090091c711400900915211400900915000915411400915415d114009", + "0x9f0090091561c81540091590df0110091630d90090091560d900900915c", + "0x15415d17b00900915600715417b00915415d10b00900915c0ce011009163", + "0x1c90090091640e001100916307a00900919407a00900919200915417b009", + "0xce00900915c1ca0090091640e101100916311000900916411200900914e", + "0x17e00900915600715417e00915415d13500900915c00715413300915415d", + "0x1cb00900915200915417e00915415d00915413300915415d07d009009152", + "0x10b00900919210d0090091920e301100916306e0090091560e2011009163", + "0x2e0090091ab1cf1540091ce1cd0110091631cc0110091630e7011009163", + "0x10d0090091941d00110091630f801100916310b0090091940ce0090091ab", + "0x10b0090091521d10090091520fa0110091630e00090091560e000900915c", + "0x91630e10090091560e100900915c0071d30071540091ce1d2009009152", + "0x915210201100916310800900919210a0090091920ce0090091921d4011", + "0x91591030110091631d81540091591d70090091521d60090091521d5009", + "0xce00900914e1040110091630e20090091560e200900915c0071da1d9154", + "0x1060110091630e30090091560e300900915c1050110091630120090091ab", + "0x7c00900914e07d00900916410800900919410a00900919407d0090091ab", + "0x1db1540091590fa00900914e1d4009009164108011009163040009009150", + "0x91500091540f800915415d0f80090091560071540f800915415d0071dc", + "0xce0090091940071de1dd1540091590f80090091c70f80090091520f8009", + "0x915600715418100915415d1e11540091591e01540091591df154009159", + "0x1cd00900915603a0090091561cd00900915c00915418100915415d181009", + "0x15415d18300900915600715418300915415d13000900915c1d6011009163", + "0x12e00900915c10a011009163036009009156009154009159009154183009", + "0x1e215400915900915418400915415d18400900915600715418400915415d", + "0x1e71540091591e61540091591e51540091591e41540091591e3154009159", + "0x91561ea1541cc00915415d0e700900915c1e91540091591e8154009159", + "0x1d501100916302a1541cc00915415d0e800900915c1d70110091631cc009", + "0x1eb1541cc00915415d0ea00900915c02c1541cc00915415d0e900900915c", + "0x3c1541cc00915415d0f400900915c03a1541cc00915415d0f300900915c", + "0x3f1541cc00915415d0f600900915c1ec1541cc00915415d0f500900915c", + "0x2f1541cc00915415d0ec00900915c02e1541cc00915415d0eb00900915c", + "0x1ed1541cc00915415d0ee00900915c0311541cc00915415d0ed00900915c", + "0x361541cc00915415d0f000900915c1ee1541cc00915415d0ef00900915c", + "0x1ef1541cc00915415d0f200900915c0381541cc00915415d0f100900915c", + "0x10d0110091631d20110091631f115400915910b0110091631f0154009159", + "0xda0090091560da00900915c1d10110091630db0090091560db00900915c", + "0xb10090091640b300900914e1b70090091641100110091631ca011009163", + "0x19500900915600715419500915415d12c00900915c00715412a00915415d", + "0x91630071f31f215400915900915419500915415d00915412a00915415d", + "0x91560dc00900915c1f415400915914700900914e15e009009164112011", + "0x1a100915415d0071f71f61540091591f51540091591c90110091630dc009", + "0x1a10090091550070090091550091541a100915415d1a1009009156007154", + "0x240090091501cb0110091631f91540091591f81540091590a8009009150", + "0x91560071541b100915415d0ab00900915c0071fb0071fa024009009155", + "0x1af0090091641140110091631b10090091550091541b100915415d1b1009", + "0x1c50110091631a70090091641fc0110091630ab00900914e0ad00900914e", + "0xdd0090091560dd00900915c0a600900914e0aa00900914e1a4009009164", + "0x15415d0071ff1fe1540091591fd1540091590aa0090091521c3011009163", + "0x91631a30090091550091541a300915415d1a30090091560071541a3009", + "0x91630121540092000a100900914e1960090091641190110091631be011", + "0x914e18e00900916411b01100916318f0090091562021540092011ba011", + "0x916411d0110091632031540092011b601100916309a00900915609c009", + "0x91630110090091ab1b401100916309600900915609800900914e18d009", + "0x715416b00915415d09400900915c0160090091552041540091bb11f011", + "0x15415d12200900915c1a80090091560091541a800915415d205154009159", + "0x1ac01100916318c0090091551b00110091632061540092010071541a8009", + "0x11f00900915c12200900914e1a8011009163114009009155122011009163", + "0x1240110091630091541b000915415d1b00090091560071541b000915415d", + "0x9100900914e18b0090091641b80110091631cc0090091521cc009009150", + "0x71541b400915415d11d00900915c00720918a009009156007208007207", + "0x15415d11b00900915c1a30110091630091541b400915415d1b4009009156", + "0x91591a10110091630091541b600915415d1b60090091560071541b6009", + "0x71541ba00915415d11900900915c12801100916310500900915020a154", + "0x914e18900900916419e0110091630091541ba00915415d1ba009009156", + "0x916308b00900915207400900915205600900914e0560090091a008d009", + "0x916319901100916319501100916312c01100916320b15400915912a011", + "0x915604500900915618800900915c19b01100916320c1540091ce198011", + "0x916312e01100916300900900915600900900915019a011009163188009", + "0x914e18700900916418301100916313001100916320d154009159184011", + "0x915213501100916318c1540091bb133011009163181011009163085009", + "0x91541be00915415d1be0090091560071541be00915415d00720e139009", + "0x1c300900914e21015400915917e01100916320f1540092011be009009155", + "0x90090091ab21215400915917b0110091630f8009009155211154009159", + "0x1c500900914e177011009163216154009159215154009159007214007213", + "0x176011009163218154009201139011009163147009009152217154009159", + "0x17401100916313b01100916308100900915608300900914e186009009164", + "0x15415d07d00900915600715407d00915415d07f00900914e185009009164", + "0x15415d1c90090091560071541c900915415d11200900915c009154110009", + "0x15415d00915407d00915415d18200900916416f0110091630091541c9009", + "0x91541ca00915415d1ca0090091560071541ca00915415d007154110009", + "0x21915400915916c01100916313f01100916316e0110091630ce009009150", + "0x7300900914e0730090091a007600900914e18000900916416b011009163", + "0x915900915417f00915415d17f00900915600715417f00915415d00721a", + "0x914e17d00900916416801100916314201100916317f00900915521b154", + "0x916306c00900914e17800900916414701100916306a009009156070009", + "0x916315e011009163161011009163066009009156165011009163144011", + "0x91ab00001100916306800900914e17500900916415f011009163151011", + "0x1d400915415d0fa00900915c21d01100916300721c040009009155040009", + "0x21f01100916321e0110091630091541d400915415d1d4009009156007154", + "0x715417100915415d007222221011009163220011009163173009009155", + "0x915922301100916317100900915500915417100915415d171009009156", + "0x9159228011009163227011009163226011009163225011009163224154", + "0x15415d22d01100916322c01100916322b01100916322a154009159229154", + "0x15415d1b70090091560071541b700915415d0b300900915c0071540b1009", + "0x916322f01100916322e1540091590091540b100915415d0091541b7009", + "0x1af0090091560071541af00915415d0ad00900915c1b1009009164230011", + "0x1a70090091560071541a700915415d0aa00900915c0091541af00915415d", + "0x71541a400915415d0a600900915c0a40090091500091541a700915415d", + "0x91632320110091632310110091630091541a400915415d1a4009009156", + "0x715419600915415d0a100900915c09f009009150234154009159233011", + "0x72350240090091ab18c15400920000915419600915415d196009009156", + "0x23715400915906200900914e170009009164236011009163060009009156", + "0x715418e00915415d09c00900915c00715409a00915415d238011009163", + "0x915409a00915415d00915418e00915415d23915400915918e009009156", + "0x15415d09800900915c00715409600915415d23a01100916309a009009164", + "0x15415d00915418d00915415d23b15400915918d00900915600715418d009", + "0x15415d18c00900915600715418c00915415d096009009164009154096009", + "0x91640071541cc00915415d11400900916418c00900916400915418c009", + "0x915923f01100916323e15400915923d01100916323c1540091591cc009", + "0x9163244154009159243011009163242154009159241011009163240154", + "0x9159249011009163248154009159247011009163246154009159245011", + "0x24c15400915918b00900915600915418b00915415d24b01100916324a154", + "0x25101100916325015400915924f01100916324e15400915924d011009163", + "0x256154009159255011009163254154009159253011009163252154009159", + "0xe400900915625a154009159259011009163258154009159257011009163", + "0x25e15400915925d0110091630e500900915625c15400915925b011009163", + "0x2610110091630e700900915626015400915925f0110091630e6009009156", + "0xe90090091562641540091592630110091630e8009009156262154009159", + "0x2681540091592670110091630ea009009156266154009159265011009163", + "0x26b0110091630ec00900915626a1540091592690110091630eb009009156", + "0xee00900915626e15400915926d0110091630ed00900915626c154009159", + "0x2721540091592710110091630ef00900915627015400915926f011009163", + "0x2750110091630f10090091562741540091592730110091630f0009009156", + "0xf30090091562781540091592770110091630f2009009156276154009159", + "0x27c15400915927b0110091630f400900915627a154009159279011009163", + "0x27f0110091630f600900915627e15400915927d0110091630f5009009156", + "0x1cc00915415d0091541cc00915415d00715418b00915415d09100900915c", + "0x728300728200728116a00900914e16a00900915c280154009159154154", + "0x16900900915500915416900915415d16900900915600715416900915415d", + "0x15415d18900900915600715418900915415d08d00900915c284011009163", + "0x28515400915901d1541cc00915415d0201541cc00915415d009154189009", + "0x5200900916405400900914e166009009164287011009163286154009159", + "0x914e28c00900916428b01100916328a011009163289154009159007288", + "0x915928f00900914e28e01100916328d01100916304e009009156050009", + "0x18700900915600715418700915415d08500900915c291011009163290154", + "0x29415400915929301100916300900902400915429200915418700915415d", + "0x915600729704a00900916404c00900914e296009009164295011009163", + "0x111541cc00915415d29a00900914e29a00900915c299011009163298009", + "0x4700900914e29d00900916429c01100916329b0110091630f8009009164", + "0x18600915415d08300900915c00715408100915415d00e1541cc00915415d", + "0x8100915415d00915418600915415d29e154009159186009009156007154", + "0x715418500915415d07f00900915c07c00900915c081009009164009154", + "0x18200900915600715418200915415d00915418500915415d185009009156", + "0x2a20090091642a10110091632a00090091562a000900915c29f011009163", + "0x915600715418000915415d07600900915c2a315400915904200900914e", + "0x7000900915c06e00900915017f00900916400915418000915415d180009", + "0x6a00900915000915417d00915415d17d00900915600715417d00915415d", + "0x15415d17800900915600715417800915415d06c00900915c2a4011009163", + "0x2a51540092010211541cc00915415d01e1541cc00915415d009154178009", + "0x715417500915415d06800900915c0660090091502a61541cc00915415d", + "0x1cd00900914e0241541cc00915415d00915417500915415d175009009156", + "0x915417300915415d17300900915600715417300915415d2a7154009159", + "0x2aa0110091632a90110091631710090091642a8154009159173009009164", + "0x2ac0110091630e500900915c03c00900914e1ec0090091642ab011009163", + "0x121541cc00915415d2ae1541cc00915415d2ad15400915903c009009152", + "0x2af0110091630e400900915c0181541cc00915415d0161541cc00915415d", + "0x2b10110091630e600900915c03800900914e1ef0090091642b0011009163", + "0x17000915415d06200900915c0600090091502b215400920112e009009152", + "0x16f00900915516e00900915500915417000915415d170009009156007154", + "0xd700900914e0d70090091ab0d600900914e0d60090091ab0d500900914e", + "0xda0090091ab0d900900914e0d90090091ab0d800900914e0d80090091ab", + "0xdc0090091ab01e0090091920db00900914e0db0090091ab0da00900914e", + "0xde0090091ab0dd00900914e0dd0090091ab01e0090091940dc00900914e", + "0xe100900914e0e000900914e0df00900914e0df0090091ab0de00900914e", + "0xe50090091ab0e400900914e0e40090091ab0e300900914e0e200900914e", + "0xe700900914e0e70090091ab0e600900914e0e60090091ab0e500900914e", + "0xea0090091ab0e900900914e0e90090091ab0e800900914e0e80090091ab", + "0xec00900914e0ec0090091ab0eb00900914e0eb0090091ab0ea00900914e", + "0xef0090091ab0ee00900914e0ee0090091ab0ed00900914e0ed0090091ab", + "0xf100900914e0f10090091ab0f000900914e0f00090091ab0ef00900914e", + "0xf40090091ab0f300900914e0f30090091ab0f200900914e0f20090091ab", + "0xf600900914e0f60090091ab0f500900914e0f50090091ab0f400900914e", + "0x5200915415d03100900914e1ed0090091642b3011009163169009009164", + "0x16600915415d16600900915600715416600915415d05400900915c007154", + "0x916318f0090091ab1510090091ab2b415400915918800900914e009154", + "0x72b600915400920002a00900916402c00900914e1eb0090091642b5011", + "0x28c00900915600715428c00915415d05000900915c00715404e00915415d", + "0x18f00900915200915404e00915415d00915428c00915415d2b7154009159", + "0x28f00900915c1ea00900914e1ea0090091561ea00900915c04e009009164", + "0x2800900914e2b90090091642b801100916328f00900915528f009009156", + "0x2a60090091642bc0110091632bb0110091632ba011009163026009009156", + "0x715429600915415d04c00900915c00715404a00915415d02000900914e", + "0x2bf1540091592be0110091630072bd00915429600915415d296009009156", + "0x915600715429d00915415d04700900915c2c0011009163045009009150", + "0x2c20110091632c101100916307c00900915600915429d00915415d29d009", + "0x2a200915415d04200900915c1610090091ab0072c40072c32a000900914e", + "0x2ae00900915c1610090091520091542a200915415d2a2009009156007154", + "0x3a0090091502c61540091592c51540091592a00090091522ae00900914e", + "0x91541ec00915415d1ec0090091560071541ec00915415d03c00900915c", + "0x1ef00915415d03800900915c0360090091502c80110091632c7011009163", + "0x2ca0110091632c90110091630091541ef00915415d1ef009009156007154", + "0x15415d2cb1540091591ed0090091560071541ed00915415d03100900915c", + "0x71541eb00915415d02c00900915c00715402a00915415d0091541ed009", + "0x2600915415d00915402a00915415d0091541eb00915415d1eb009009156", + "0x2cc1540091592b90090091560071542b900915415d02800900915c007154", + "0x915c0072cd02600900916400915402600915415d0091542b900915415d", + "0x2a600915415d02000900915c2cf0110091630072ce15400900914e154009", + "0x2d10110091630091542a600915415d2d01540091592a6009009156007154", + "0x1cc00915415d0261541cc00915415d0281541cc00915415d07c0090091ab", + "0x72d305200900915505200900915600915405200915415d0072d22b9154", + "0x2d50090070070072d404a00900915504a00900915600915404a00915415d", + "0x2d50090071540070162ae15418a01200e1542d5154009007154009007007", + "0x90120070200092d500901800900e0070180092d5009011009011007007", + "0x210092d50090070160070072d500901d0092ae00701e01d1542d5009020", + "0x1e0090180070072d50092a60092ae0070242a61542d5009021009012007", + "0x260092d50090260090200070280092d50090240090180070260092d5009", + "0x1540070070380072d515402802615401e00700e0092d500900e00901d007", + "0x240071ea0092d50090072a60072b90092d50090070210070072d5009007", + "0x2d500900702800702a0092d50091ea2b91540260071ea0092d50091ea009", + "0x702e0092d50091eb0091ea0071eb0092d500902a02c1542b900702c009", + "0x915400902c0070310092d500901200902a00702f0092d500900e00901d", + "0x71540071ee1ed03102f00e0091ee0092d500902e0091eb0071ed0092d5", + "0x310070360092d500903600902f0070360092d500900702e0070072d5009", + "0x70072d500900715400703c03a15407f1ef0381542d515403601200e011", + "0x400092d500900703600703f0092d50090071ee0071ec0092d50090071ed", + "0x92d500900703a0072a20092d50090071ef0070420092d5009007038007", + "0x2d500900703f0070470092d50090071ec0070450092d500900703c0072a0", + "0x90072a20072980092d500900704200729a0092d500900704000729d009", + "0x70470072960092d500900704500704c0092d50090072a000704a0092d5", + "0x4c04a29829a29d0470452a02a204204003f1ec02629d00728f0092d5009", + "0x905000929800728c0501542d500904e00929a00704e0092d500928f296", + "0x2c00716a0092d50091ef00902a0071690092d500903800901d0070072d5", + "0xe616a16900e04c00705d0092d500928c00904a0070e60092d5009154009", + "0x70e40090740e50092d515405800929600705816605405200e2d500905d", + "0x620092d50090e500928f0070600092d50090070210070072d5009007154", + "0x17100928c0070072d50091700090500071711701542d500906200904e007", + "0x1542d50091750681540540071750092d50090600090520070680092d5009", + "0x16900706c06a1542d50091730090580070072d5009066009166007066173", + "0x92d50091780090e60071780092d500906c00916a0070072d500906a009", + "0x902a00717d0092d500905200901d0070700092d500906e00905d00706e", + "0x92d50090700091eb0070730092d500916600902c00717f0092d5009054", + "0x92d50090e40091ea0070072d500900715400707407317f17d00e009074", + "0x902c0071820092d500905400902a0071800092d500905200901d007076", + "0x707c07a18218000e00907c0092d50090760091eb00707a0092d5009166", + "0x707f0092d50090070e500707d0092d50090070210070072d5009007154", + "0x90070280071850092d500907f07d15402600707f0092d500907f009024", + "0x1860092d50090830091ea0070830092d50091850811542b90070810092d5", + "0x15400902c0071870092d500903c00902a0070850092d500903a00901d007", + "0x15400708b18818708500e00908b0092d50091860091eb0071880092d5009", + "0xe50070860092d50090070210070072d50090110090e40070072d5009007", + "0x2d50090560861540260070560092d50090560090240070560092d5009007", + "0x1ea00718a0092d500908d1891542b90071890092d500900702800708d009", + "0x2d500901600902a00718b0092d50092ae00901d0070910092d500918a009", + "0xe0090960092d50090910091eb00718c0092d500915400902c007094009", + "0x1200e1542d51540090071540090070072d500900700700709618c09418b", + "0xe0070180092d50090110090110070072d50090071540070162ae154199", + "0x901d0092ae00701e01d1542d50090200090120070200092d5009018009", + "0x2ae0070242a61542d50090210090120070210092d50090070160070072d5", + "0x92d50090240090180070260092d500901e0090180070072d50092a6009", + "0x15401e00700e0092d500900e00901d0070260092d5009026009020007028", + "0x2b90092d50090070210070072d50090071540070070f40072d5154028026", + "0x1ea2b91540260071ea0092d50091ea0090240071ea0092d50090072a6007", + "0x1eb0092d500902a02c1542b900702c0092d500900702800702a0092d5009", + "0x1200902a00702f0092d500900e00901d00702e0092d50091eb0091ea007", + "0x1ee0092d500902e0091eb0071ed0092d500915400902c0070310092d5009", + "0x70360092d500900702e0070072d50090071540071ee1ed03102f00e009", + "0x1541b01ef0381542d515403601200e0110310070360092d500903600902f", + "0x2d50090071ee0071ec0092d50090071ed0070072d500900715400703c03a", + "0x90071ef0070420092d50090070380070400092d500900703600703f009", + "0x71ec0070450092d500900703c0072a00092d500900703a0072a20092d5", + "0x4200729a0092d500900704000729d0092d500900703f0070470092d5009", + "0x704c0092d50090072a000704a0092d50090072a20072980092d5009007", + "0x4204003f1ec02629d00728f0092d50090070470072960092d5009007045", + "0x904e00929a00704e0092d500928f29604c04a29829a29d0470452a02a2", + "0x71690092d500903800901d0070072d500905000929800728c0501542d5", + "0x928c00904a0070e60092d500915400902c00716a0092d50091ef00902a", + "0x906200705816605405200e2d500905d0e616a16900e06000705d0092d5", + "0x92d50090070210070072d50090071540070e40091190e50092d5154058", + "0x1730071711701542d50090620091710070620092d50090e5009170007060", + "0x92d50090600090520070680092d50091710090660070072d5009170009", + "0x580070072d50090660091660070661731542d5009175068154068007175", + "0x2d500906c00916a0070072d500906a00916900706c06a1542d5009173009", + "0x1d0070700092d500906e00905d00706e0092d50091780090e6007178009", + "0x2d500916600902c00717f0092d500905400902a00717d0092d5009052009", + "0x900715400707407317f17d00e0090740092d50090700091eb007073009", + "0x2a0071800092d500905200901d0070760092d50090e40091ea0070072d5", + "0x2d50090760091eb00707a0092d500916600902c0071820092d5009054009", + "0x92d50090070210070072d500900715400707c07a18218000e00907c009", + "0x7d15402600707f0092d500907f00902400707f0092d50090070e500707d", + "0x92d50091850811542b90070810092d50090070280071850092d500907f", + "0x902a0070850092d500903a00901d0071860092d50090830091ea007083", + "0x92d50091860091eb0071880092d500915400902c0071870092d500903c", + "0x72d50090110090e40070072d500900715400708b18818708500e00908b", + "0x2d50090560090240070560092d50090070e50070860092d5009007021007", + "0x2b90071890092d500900702800708d0092d5009056086154026007056009", + "0x92ae00901d0070910092d500918a0091ea00718a0092d500908d189154", + "0x718c0092d500915400902c0070940092d500901600902a00718b0092d5", + "0x70072d500900700700709618c09418b00e0090960092d50090910091eb", + "0x70072d50090071540070180161542d62ae0121542d5154154009154009", + "0x2a602115406a0072a60092d500900e0091750070210092d500901200901d", + "0x71540070260092bb0240092d515401e00906c00701e01d0200112d5009", + "0x72b90092d500902800900e0070280092d500901d0090110070072d5009", + "0x2d50090070160070072d50091ea0092ae00702a1ea1542d50092b9009012", + "0x180070072d50091eb0092ae00702e1eb1542d500902c00901200702c009", + "0x2d500902f0090200070310092d500902e00901800702f0092d500902a009", + "0x1780070072d50090071540070072310072d515403102f15401e00702f009", + "0x71ee0092d50090072a60071ed0092d50090070210070072d5009024009", + "0x90070280070360092d50091ee1ed1540260071ee0092d50091ee009024", + "0x3a0092d50091ef0091ea0071ef0092d50090360381542b90070380092d5", + "0x2ae00902a0071ec0092d500902000901d00703c0092d500900700906e007", + "0x420092d500903a0091eb0070400092d500901100902c00703f0092d5009", + "0x2a20092d500900702e0070072d500900715400704204003f1ec03c012009", + "0x29c0452a01542d51542a22ae0200110310072a20092d50092a200902f007", + "0x90071ee00729a0092d50090071ed0070072d500900715400729d047154", + "0x71ef00704c0092d500900703800704a0092d50090070360072980092d5", + "0x1ec00704e0092d500900703c00728f0092d500900703a0072960092d5009", + "0x70520092d500900704000728c0092d500900703f0070500092d5009007", + "0x580092d50090072a00071660092d50090072a20070540092d5009007042", + "0x4a29829a02629d00716a0092d50090070470071690092d5009007045007", + "0x2a000901d0070e60092d500916a16905816605405228c05004e28f29604c", + "0x1730092d500900700906e0071710092d500904500902a0071700092d5009", + "0x240090700070680092d50090e600904a0070660092d500901100902c007", + "0x600e40e505d0122d50091750680661731711702ae17d0071750092d5009", + "0x730070072d500900715400706c00928b06a0092d515406200917f007062", + "0x6e1542d50091780090580071780092d50090070210070072d500906a009", + "0x17d0090e600717d0092d500907000916a0070072d500906e009169007070", + "0x740092d50090e400906e0070730092d500917f00905d00717f0092d5009", + "0x6000902c0071800092d50090e500902a0070760092d500905d00901d007", + "0x707a18218007607401200907a0092d50090730091eb0071820092d5009", + "0x92d50090e400906e00707c0092d500906c0091ea0070072d5009007154", + "0x902c0071850092d50090e500902a00707f0092d500905d00901d00707d", + "0x8308118507f07d0120090830092d500907c0091eb0070810092d5009060", + "0x1860092d50090070210070072d50090240091780070072d5009007154007", + "0x851861540260070850092d50090850090240070850092d50090070e5007", + "0x8b0092d50091871881542b90071880092d50090070280071870092d5009", + "0x4700901d0070560092d500900700906e0070860092d500908b0091ea007", + "0x18a0092d500901100902c0071890092d500929d00902a00708d0092d5009", + "0x2d500900715400709118a18908d0560120090910092d50090860091eb007", + "0x2d50090070210070072d500901d0090e40070072d5009026009166007007", + "0x1540260070940092d50090940090240070940092d500900707400718b009", + "0x2d500918c0961542b90070960092d500900702800718c0092d500909418b", + "0x1d00709a0092d500900700906e00718d0092d50090980091ea007098009", + "0x2d500901100902c00718e0092d50092ae00902a00709c0092d5009020009", + "0x715400709f18f18e09c09a01200909f0092d500918d0091eb00718f009", + "0x70e50070a10092d50090070210070072d500900e0090e40070072d5009", + "0x92d50091960a11540260071960092d50091960090240071960092d5009", + "0x91ea0070a60092d50090dd0a41542b90070a40092d50090070280070dd", + "0x92d500901600901d0070a80092d500900700906e0071a40092d50090a6", + "0x91eb0070ab0092d500901100902c0071a70092d500901800902a0070aa", + "0x90070072d50090070070070ad0ab1a70aa0a80120090ad0092d50091a4", + "0x1d0070072d50090071540070180161542d72ae0121542d5154154009154", + "0x92a60211540760072a60092d500900e0091750070210092d5009012009", + "0x90071540070260092d80240092d515401e00918000701e01d0200112d5", + "0x120072b90092d500902800900e0070280092d500901d0090110070072d5", + "0x92d50090070160070072d50091ea0092ae00702a1ea1542d50092b9009", + "0x90180070072d50091eb0092ae00702e1eb1542d500902c00901200702c", + "0x92d500902f0090200070310092d500902e00901800702f0092d500902a", + "0x90500070072d50090071540070072d90072d515403102f15401e00702f", + "0x240071ee0092d50090072a60071ed0092d50090070210070072d5009024", + "0x2d50090070280070360092d50091ee1ed1540260071ee0092d50091ee009", + "0x703a0092d50091ef0091ea0071ef0092d50090360381542b9007038009", + "0x92ae00902a0071ec0092d500902000901d00703c0092d500900700906e", + "0x90420092d500903a0091eb0070400092d500901100902c00703f0092d5", + "0x72a20092d500900702e0070072d500900715400704204003f1ec03c012", + "0x1542da0452a01542d51542a22ae0200110310072a20092d50092a200902f", + "0x2d50090071ee00729a0092d50090071ed0070072d500900715400729d047", + "0x90071ef00704c0092d500900703800704a0092d5009007036007298009", + "0x71ec00704e0092d500900703c00728f0092d500900703a0072960092d5", + "0x420070520092d500900704000728c0092d500900703f0070500092d5009", + "0x70580092d50090072a00071660092d50090072a20070540092d5009007", + "0x4c04a29829a02629d00716a0092d50090070470071690092d5009007045", + "0x92a000901d0070e60092d500916a16905816605405228c05004e28f296", + "0x71730092d500900700906e0071710092d500904500902a0071700092d5", + "0x902400928c0070680092d50090e600904a0070660092d500901100902c", + "0x620600e40e505d0122d50091750680661731711702ae1820071750092d5", + "0x90730070072d500900715400706c0092db06a0092d515406200917f007", + "0x7006e1542d50091780090580071780092d50090070210070072d500906a", + "0x917d0090e600717d0092d500907000916a0070072d500906e009169007", + "0x70740092d50090e400906e0070730092d500917f00905d00717f0092d5", + "0x906000902c0071800092d50090e500902a0070760092d500905d00901d", + "0x15400707a18218007607401200907a0092d50090730091eb0071820092d5", + "0x7d0092d50090e400906e00707c0092d500906c0091ea0070072d5009007", + "0x6000902c0071850092d50090e500902a00707f0092d500905d00901d007", + "0x708308118507f07d0120090830092d500907c0091eb0070810092d5009", + "0x71860092d50090070210070072d50090240090500070072d5009007154", + "0x90851861540260070850092d50090850090240070850092d50090070e5", + "0x708b0092d50091871881542b90071880092d50090070280071870092d5", + "0x904700901d0070560092d500900700906e0070860092d500908b0091ea", + "0x718a0092d500901100902c0071890092d500929d00902a00708d0092d5", + "0x72d500900715400709118a18908d0560120090910092d50090860091eb", + "0x92d50090070210070072d500901d0090e40070072d5009026009166007", + "0x18b1540260070940092d50090940090240070940092d500900707400718b", + "0x92d500918c0961542b90070960092d500900702800718c0092d5009094", + "0x901d00709a0092d500900700906e00718d0092d50090980091ea007098", + "0x92d500901100902c00718e0092d50092ae00902a00709c0092d5009020", + "0x900715400709f18f18e09c09a01200909f0092d500918d0091eb00718f", + "0x90070e50070a10092d50090070210070072d500900e0090e40070072d5", + "0xdd0092d50091960a11540260071960092d50091960090240071960092d5", + "0xa60091ea0070a60092d50090dd0a41542b90070a40092d5009007028007", + "0xaa0092d500901600901d0070a80092d500900700906e0071a40092d5009", + "0x1a40091eb0070ab0092d500901100902c0071a70092d500901800902a007", + "0x1540090070072d50090070070070ad0ab1a70aa0a80120090ad0092d5009", + "0x901d0070072d50090071540070180161542dc2ae0121542d5154154009", + "0x2d50092a602115407a0072a60092d500900e0091750070210092d5009012", + "0x2d50090071540070260092dd0240092d515401e00907c00701e01d020011", + "0x90120072b90092d500902800900e0070280092d500901d009011007007", + "0x2c0092d50090070160070072d50091ea0092ae00702a1ea1542d50092b9", + "0x2a0090180070072d50091eb0092ae00702e1eb1542d500902c009012007", + "0x2f0092d500902f0090200070310092d500902e00901800702f0092d5009", + "0x240091730070072d50090071540070072de0072d515403102f15401e007", + "0x90240071ee0092d50090072a60071ed0092d50090070210070072d5009", + "0x92d50090070280070360092d50091ee1ed1540260071ee0092d50091ee", + "0x6e00703a0092d50091ef0091ea0071ef0092d50090360381542b9007038", + "0x2d50092ae00902a0071ec0092d500902000901d00703c0092d5009007009", + "0x120090420092d500903a0091eb0070400092d500901100902c00703f009", + "0x2f0072a20092d500900702e0070072d500900715400704204003f1ec03c", + "0x471542df0452a01542d51542a22ae0200110310072a20092d50092a2009", + "0x92d50090071ee00729a0092d50090071ed0070072d500900715400729d", + "0x2d50090071ef00704c0092d500900703800704a0092d5009007036007298", + "0x90071ec00704e0092d500900703c00728f0092d500900703a007296009", + "0x70420070520092d500900704000728c0092d500900703f0070500092d5", + "0x450070580092d50090072a00071660092d50090072a20070540092d5009", + "0x29604c04a29829a02629d00716a0092d50090070470071690092d5009007", + "0x2d50092a000901d0070e60092d500916a16905816605405228c05004e28f", + "0x2c0071730092d500900700906e0071710092d500904500902a007170009", + "0x2d50090240090660070680092d50090e600904a0070660092d5009011009", + "0x70620600e40e505d0122d50091750680661731711702ae07d007175009", + "0x6a0090730070072d500900715400706c0092e006a0092d515406200917f", + "0x707006e1542d50091780090580071780092d50090070210070072d5009", + "0x2d500917d0090e600717d0092d500907000916a0070072d500906e009169", + "0x1d0070740092d50090e400906e0070730092d500917f00905d00717f009", + "0x2d500906000902c0071800092d50090e500902a0070760092d500905d009", + "0x715400707a18218007607401200907a0092d50090730091eb007182009", + "0x707d0092d50090e400906e00707c0092d500906c0091ea0070072d5009", + "0x906000902c0071850092d50090e500902a00707f0092d500905d00901d", + "0x15400708308118507f07d0120090830092d500907c0091eb0070810092d5", + "0xe50071860092d50090070210070072d50090240091730070072d5009007", + "0x2d50090851861540260070850092d50090850090240070850092d5009007", + "0x1ea00708b0092d50091871881542b90071880092d5009007028007187009", + "0x2d500904700901d0070560092d500900700906e0070860092d500908b009", + "0x1eb00718a0092d500901100902c0071890092d500929d00902a00708d009", + "0x70072d500900715400709118a18908d0560120090910092d5009086009", + "0x18b0092d50090070210070072d500901d0090e40070072d5009026009166", + "0x9418b1540260070940092d50090940090240070940092d5009007074007", + "0x980092d500918c0961542b90070960092d500900702800718c0092d5009", + "0x2000901d00709a0092d500900700906e00718d0092d50090980091ea007", + "0x18f0092d500901100902c00718e0092d50092ae00902a00709c0092d5009", + "0x2d500900715400709f18f18e09c09a01200909f0092d500918d0091eb007", + "0x2d50090070e50070a10092d50090070210070072d500900e0090e4007007", + "0x70dd0092d50091960a11540260071960092d5009196009024007196009", + "0x90a60091ea0070a60092d50090dd0a41542b90070a40092d5009007028", + "0x70aa0092d500901600901d0070a80092d500900700906e0071a40092d5", + "0x91a40091eb0070ab0092d500901100902c0071a70092d500901800902a", + "0x91540090070072d50090070070070ad0ab1a70aa0a80120090ad0092d5", + "0x1200901d0070072d50090071540070180161542e12ae0121542d5154154", + "0x112d50092a602115406a0072a60092d500900e0091750070210092d5009", + "0x72d50090071540070260092e20240092d515401e00906c00701e01d020", + "0x2b90090120072b90092d500902800900e0070280092d500901d009011007", + "0x702c0092d50090070160070072d50091ea0092ae00702a1ea1542d5009", + "0x902a0090180070072d50091eb0092ae00702e1eb1542d500902c009012", + "0x702f0092d500902f0090200070310092d500902e00901800702f0092d5", + "0x90240091780070072d50090071540070072e30072d515403102f15401e", + "0x1ee0090240071ee0092d50090072a60071ed0092d50090070210070072d5", + "0x380092d50090070280070360092d50091ee1ed1540260071ee0092d5009", + "0x906e00703a0092d50091ef0091ea0071ef0092d50090360381542b9007", + "0x92d50092ae00902a0071ec0092d500902000901d00703c0092d5009007", + "0x3c0120090420092d500903a0091eb0070400092d500901100902c00703f", + "0x902f0072a20092d500900702e0070072d500900715400704204003f1ec", + "0x29d0471542e40452a01542d51542a22ae0200110310072a20092d50092a2", + "0x2980092d50090071ee00729a0092d50090071ed0070072d5009007154007", + "0x92d50090071ef00704c0092d500900703800704a0092d5009007036007", + "0x2d50090071ec00704e0092d500900703c00728f0092d500900703a007296", + "0x90070420070520092d500900704000728c0092d500900703f007050009", + "0x70450070580092d50090072a00071660092d50090072a20070540092d5", + "0x28f29604c04a29829a02629d00716a0092d50090070470071690092d5009", + "0x92d50092a000901d0070e60092d500916a16905816605405228c05004e", + "0x902c0071730092d500900700906e0071710092d500904500902a007170", + "0x92d50090240090700070680092d50090e600904a0070660092d5009011", + "0x17f0070620600e40e505d0122d50091750680661731711702ae07f007175", + "0x906a0090730070072d500900715400706c0092e506a0092d5154062009", + "0x16900707006e1542d50091780090580071780092d50090070210070072d5", + "0x92d500917d0090e600717d0092d500907000916a0070072d500906e009", + "0x901d0070740092d50090e400906e0070730092d500917f00905d00717f", + "0x92d500906000902c0071800092d50090e500902a0070760092d500905d", + "0x900715400707a18218007607401200907a0092d50090730091eb007182", + "0x1d00707d0092d50090e400906e00707c0092d500906c0091ea0070072d5", + "0x2d500906000902c0071850092d50090e500902a00707f0092d500905d009", + "0x715400708308118507f07d0120090830092d500907c0091eb007081009", + "0x70e50071860092d50090070210070072d50090240091780070072d5009", + "0x92d50090851861540260070850092d50090850090240070850092d5009", + "0x91ea00708b0092d50091871881542b90071880092d5009007028007187", + "0x92d500904700901d0070560092d500900700906e0070860092d500908b", + "0x91eb00718a0092d500901100902c0071890092d500929d00902a00708d", + "0x1660070072d500900715400709118a18908d0560120090910092d5009086", + "0x718b0092d50090070210070072d500901d0090e40070072d5009026009", + "0x909418b1540260070940092d50090940090240070940092d5009007074", + "0x70980092d500918c0961542b90070960092d500900702800718c0092d5", + "0x902000901d00709a0092d500900700906e00718d0092d50090980091ea", + "0x718f0092d500901100902c00718e0092d50092ae00902a00709c0092d5", + "0x72d500900715400709f18f18e09c09a01200909f0092d500918d0091eb", + "0x92d50090070e50070a10092d50090070210070072d500900e0090e4007", + "0x280070dd0092d50091960a11540260071960092d5009196009024007196", + "0x2d50090a60091ea0070a60092d50090dd0a41542b90070a40092d5009007", + "0x2a0070aa0092d500901600901d0070a80092d500900700906e0071a4009", + "0x2d50091a40091eb0070ab0092d500901100902c0071a70092d5009018009", + "0x1540091540090070072d50090070070070ad0ab1a70aa0a80120090ad009", + "0x901200901d0070072d50090071540070180161542e62ae0121542d5154", + "0x200112d50092a602115406a0072a60092d500900e0091750070210092d5", + "0x70072d50090071540070260092e70240092d515401e00906c00701e01d", + "0x92b90090120072b90092d500902800900e0070280092d500901d009011", + "0x1200702c0092d50090070160070072d50091ea0092ae00702a1ea1542d5", + "0x2d500902a0090180070072d50091eb0092ae00702e1eb1542d500902c009", + "0x1e00702f0092d500902f0090200070310092d500902e00901800702f009", + "0x2d50090240091780070072d50090071540070072e80072d515403102f154", + "0x91ee0090240071ee0092d50090072a60071ed0092d5009007021007007", + "0x70380092d50090070280070360092d50091ee1ed1540260071ee0092d5", + "0x700906e00703a0092d50091ef0091ea0071ef0092d50090360381542b9", + "0x3f0092d50092ae00902a0071ec0092d500902000901d00703c0092d5009", + "0x1ec03c0120090420092d500903a0091eb0070400092d500901100902c007", + "0x2a200902f0072a20092d500900702e0070072d500900715400704204003f", + "0x729d0471542e90452a01542d51542a22ae0200110310072a20092d5009", + "0x72980092d50090071ee00729a0092d50090071ed0070072d5009007154", + "0x2960092d50090071ef00704c0092d500900703800704a0092d5009007036", + "0x92d50090071ec00704e0092d500900703c00728f0092d500900703a007", + "0x2d50090070420070520092d500900704000728c0092d500900703f007050", + "0x90070450070580092d50090072a00071660092d50090072a2007054009", + "0x4e28f29604c04a29829a02629d00716a0092d50090070470071690092d5", + "0x1700092d50092a000901d0070e60092d500916a16905816605405228c050", + "0x1100902c0071730092d500900700906e0071710092d500904500902a007", + "0x1750092d50090240090700070680092d50090e600904a0070660092d5009", + "0x917f0070620600e40e505d0122d50091750680661731711702ae185007", + "0x2d500906a0090730070072d500900715400706c0092ea06a0092d5154062", + "0x916900707006e1542d50091780090580071780092d5009007021007007", + "0x17f0092d500917d0090e600717d0092d500907000916a0070072d500906e", + "0x5d00901d0070740092d50090e400906e0070730092d500917f00905d007", + "0x1820092d500906000902c0071800092d50090e500902a0070760092d5009", + "0x2d500900715400707a18218007607401200907a0092d50090730091eb007", + "0x901d00707d0092d50090e400906e00707c0092d500906c0091ea007007", + "0x92d500906000902c0071850092d50090e500902a00707f0092d500905d", + "0x900715400708308118507f07d0120090830092d500907c0091eb007081", + "0x90070e50071860092d50090070210070072d50090240091780070072d5", + "0x1870092d50090851861540260070850092d50090850090240070850092d5", + "0x8b0091ea00708b0092d50091871881542b90071880092d5009007028007", + "0x8d0092d500904700901d0070560092d500900700906e0070860092d5009", + "0x860091eb00718a0092d500901100902c0071890092d500929d00902a007", + "0x91660070072d500900715400709118a18908d0560120090910092d5009", + "0x7400718b0092d50090070210070072d500901d0090e40070072d5009026", + "0x2d500909418b1540260070940092d50090940090240070940092d5009007", + "0x1ea0070980092d500918c0961542b90070960092d500900702800718c009", + "0x2d500902000901d00709a0092d500900700906e00718d0092d5009098009", + "0x1eb00718f0092d500901100902c00718e0092d50092ae00902a00709c009", + "0x70072d500900715400709f18f18e09c09a01200909f0092d500918d009", + "0x1960092d50090070e50070a10092d50090070210070072d500900e0090e4", + "0x70280070dd0092d50091960a11540260071960092d5009196009024007", + "0x92d50090a60091ea0070a60092d50090dd0a41542b90070a40092d5009", + "0x902a0070aa0092d500901600901d0070a80092d500900700906e0071a4", + "0x92d50091a40091eb0070ab0092d500901100902c0071a70092d5009018", + "0x1540090071540090070072d50090070070070ad0ab1a70aa0a80120090ad", + "0x2d50090110090110070072d50090071540070162ae1542eb01200e1542d5", + "0x701e01d1542d50090200090120070200092d500901800900e007018009", + "0x1542d50090210090120070210092d50090070160070072d500901d0092ae", + "0x90180070260092d500901e0090180070072d50092a60092ae0070242a6", + "0x92d500900e00901d0070260092d50090260090200070280092d5009024", + "0x70210070072d50090071540070072ec0072d515402802615401e00700e", + "0x71ea0092d50091ea0090240071ea0092d50090072a60072b90092d5009", + "0x2a02c1542b900702c0092d500900702800702a0092d50091ea2b9154026", + "0x2f0092d500900e00901d00702e0092d50091eb0091ea0071eb0092d5009", + "0x2e0091eb0071ed0092d500915400902c0070310092d500901200902a007", + "0x900702e0070072d50090071540071ee1ed03102f00e0091ee0092d5009", + "0x1542d515403601200e0110310070360092d500903600902f0070360092d5", + "0x71ec0092d50090070210070072d500900715400703c03a1542ed1ef038", + "0x90400091860070420401542d500903f00908300703f0092d5009007081", + "0x850070470092d50091ec0090520070450092d50090420090240070072d5", + "0x92a20090580070072d50092a00091660072a02a21542d5009047045154", + "0x72980092d500929a00916a0070072d500929d00916900729a29d1542d5", + "0x903800901d00704c0092d500904a00905d00704a0092d50092980090e6", + "0x704e0092d500915400902c00728f0092d50091ef00902a0072960092d5", + "0x70072d500900715400705004e28f29600e0090500092d500904c0091eb", + "0x92d50090520090240070520092d50090070e500728c0092d5009007021", + "0x1542b90071660092d50090070280070540092d500905228c154026007052", + "0x2d500903a00901d0071690092d50090580091ea0070580092d5009054166", + "0x1eb00705d0092d500915400902c0070e60092d500903c00902a00716a009", + "0xe40070072d50090071540070e505d0e616a00e0090e50092d5009169009", + "0x70600092d50090070e50070e40092d50090070210070072d5009011009", + "0x90070280070620092d50090600e41540260070600092d5009060009024", + "0x1730092d50091710091ea0071710092d50090621701542b90071700092d5", + "0x15400902c0070680092d500901600902a0070660092d50092ae00901d007", + "0x700706a17506806600e00906a0092d50091730091eb0071750092d5009", + "0x1540070162ae1542ee01200e1542d51540090071540090070072d5009007", + "0x200092d500901800900e0070180092d50090110090110070072d5009007", + "0x90070160070072d500901d0092ae00701e01d1542d5009020009012007", + "0x70072d50092a60092ae0070242a61542d50090210090120070210092d5", + "0x90260090200070280092d50090240090180070260092d500901e009018", + "0x2ef0072d515402802615401e00700e0092d500900e00901d0070260092d5", + "0x92d50090072a60072b90092d50090070210070072d5009007154007007", + "0x2800702a0092d50091ea2b91540260071ea0092d50091ea0090240071ea", + "0x2d50091eb0091ea0071eb0092d500902a02c1542b900702c0092d5009007", + "0x2c0070310092d500901200902a00702f0092d500900e00901d00702e009", + "0x1ee1ed03102f00e0091ee0092d500902e0091eb0071ed0092d5009154009", + "0x92d500903600902f0070360092d500900702e0070072d5009007154007", + "0x900715400703c03a1542f01ef0381542d515403601200e011031007036", + "0x3f00908300703f0092d50090071870071ec0092d50090070210070072d5", + "0x450092d50090420090240070072d50090400091860070420401542d5009", + "0x1660072a02a21542d50090470451540850070470092d50091ec009052007", + "0x2d500929d00916900729a29d1542d50092a20090580070072d50092a0009", + "0x905d00704a0092d50092980090e60072980092d500929a00916a007007", + "0x92d50091ef00902a0072960092d500903800901d00704c0092d500904a", + "0x29600e0090500092d500904c0091eb00704e0092d500915400902c00728f", + "0x90070e500728c0092d50090070210070072d500900715400705004e28f", + "0x540092d500905228c1540260070520092d50090520090240070520092d5", + "0x580091ea0070580092d50090541661542b90071660092d5009007028007", + "0xe60092d500903c00902a00716a0092d500903a00901d0071690092d5009", + "0xe616a00e0090e50092d50091690091eb00705d0092d500915400902c007", + "0x2d50090070210070072d50090110090e40070072d50090071540070e505d", + "0x1540260070600092d50090600090240070600092d50090070e50070e4009", + "0x2d50090621701542b90071700092d50090070280070620092d50090600e4", + "0x2a0070660092d50092ae00901d0071730092d50091710091ea007171009", + "0x2d50091730091eb0071750092d500915400902c0070680092d5009016009", + "0x1541540091540090070072d500900700700706a17506806600e00906a009", + "0x2d500901200901d0070072d50090071540070180161542f12ae0121542d5", + "0x1d0200112d50092a602115407a0072a60092d500900e009175007021009", + "0x110070072d50090071540070260092f20240092d515401e00907c00701e", + "0x2d50092b90090120072b90092d500902800900e0070280092d500901d009", + "0x901200702c0092d50090070160070072d50091ea0092ae00702a1ea154", + "0x92d500902a0090180070072d50091eb0092ae00702e1eb1542d500902c", + "0x15401e00702f0092d500902f0090200070310092d500902e00901800702f", + "0x72d50090240091730070072d50090071540070072f30072d515403102f", + "0x2d50091ee0090240071ee0092d50090072a60071ed0092d5009007021007", + "0x2b90070380092d50090070280070360092d50091ee1ed1540260071ee009", + "0x900700906e00703a0092d50091ef0091ea0071ef0092d5009036038154", + "0x703f0092d50092ae00902a0071ec0092d500902000901d00703c0092d5", + "0x3f1ec03c0120090420092d500903a0091eb0070400092d500901100902c", + "0x92a200902f0072a20092d500900702e0070072d5009007154007042040", + "0x15400729d0471542f40452a01542d51542a22ae0200110310072a20092d5", + "0x360072980092d50090071ee00729a0092d50090071ed0070072d5009007", + "0x72960092d50090071ef00704c0092d500900703800704a0092d5009007", + "0x500092d50090071ec00704e0092d500900703c00728f0092d500900703a", + "0x92d50090070420070520092d500900704000728c0092d500900703f007", + "0x2d50090070450070580092d50090072a00071660092d50090072a2007054", + "0x5004e28f29604c04a29829a02629d00716a0092d5009007047007169009", + "0xe505d1542d50090e600929a0070e60092d500916a16905816605405228c", + "0x904500902a0071730092d50092a000901d0070072d500905d009298007", + "0x71750092d500901100902c0070680092d500900700906e0070660092d5", + "0x661732ae18800706c0092d500902400906600706a0092d50090e500904a", + "0x1780092d515417100908b0071711700620600e40122d500906c06a175068", + "0x1780090860070700092d50090070210070072d500900715400706e0092f5", + "0x72d500917f00917800707317f1542d500917d00905600717d0092d5009", + "0x18015408d0071820092d50090700090520071800092d5009073009070007", + "0x1542d50090740090580070072d50090760091660070760741542d5009182", + "0x90e600707d0092d500907c00916a0070072d500907a00916900707c07a", + "0x92d500906200906e0071850092d500907f00905d00707f0092d500907d", + "0x902c0071860092d500906000902a0070830092d50090e400901d007081", + "0x1870851860830810120091870092d50091850091eb0070850092d5009170", + "0x2d500906200906e0071880092d500906e0091ea0070072d5009007154007", + "0x2c0070560092d500906000902a0070860092d50090e400901d00708b009", + "0x8d05608608b0120091890092d50091880091eb00708d0092d5009170009", + "0x92d50090070210070072d50090240091730070072d5009007154007189", + "0x18a1540260070910092d50090910090240070910092d50090070e500718a", + "0x92d500918b0941542b90070940092d500900702800718b0092d5009091", + "0x901d0070980092d500900700906e0070960092d500918c0091ea00718c", + "0x92d500901100902c00709a0092d500929d00902a00718d0092d5009047", + "0x900715400718e09c09a18d09801200918e0092d50090960091eb00709c", + "0x90070210070072d500901d0090e40070072d50090260091660070072d5", + "0x2600709f0092d500909f00902400709f0092d500900707400718f0092d5", + "0x90a11961542b90071960092d50090070280070a10092d500909f18f154", + "0x70a60092d500900700906e0070a40092d50090dd0091ea0070dd0092d5", + "0x901100902c0070a80092d50092ae00902a0071a40092d500902000901d", + "0x1540071a70aa0a81a40a60120091a70092d50090a40091eb0070aa0092d5", + "0xe50070ab0092d50090070210070072d500900e0090e40070072d5009007", + "0x2d50090ad0ab1540260070ad0092d50090ad0090240070ad0092d5009007", + "0x1ea0070dc0092d50091af1b11542b90071b10092d50090070280071af009", + "0x2d500901600901d0070b30092d500900700906e0070b10092d50090dc009", + "0x1eb0070db0092d500901100902c0070da0092d500901800902a0071b7009", + "0x70072d50090070070070f20db0da1b70b30120090f20092d50090b1009", + "0x70072d50090071540070180161542f62ae0121542d5154154009154009", + "0x2a602115406a0072a60092d500900e0091750070210092d500901200901d", + "0x71540070260092f70240092d515401e00906c00701e01d0200112d5009", + "0x72b90092d500902800900e0070280092d500901d0090110070072d5009", + "0x2d50090070160070072d50091ea0092ae00702a1ea1542d50092b9009012", + "0x180070072d50091eb0092ae00702e1eb1542d500902c00901200702c009", + "0x2d500902f0090200070310092d500902e00901800702f0092d500902a009", + "0x1780070072d50090071540070072f80072d515403102f15401e00702f009", + "0x71ee0092d50090072a60071ed0092d50090070210070072d5009024009", + "0x90070280070360092d50091ee1ed1540260071ee0092d50091ee009024", + "0x3a0092d50091ef0091ea0071ef0092d50090360381542b90070380092d5", + "0x2ae00902a0071ec0092d500902000901d00703c0092d500900700906e007", + "0x420092d500903a0091eb0070400092d500901100902c00703f0092d5009", + "0x2a20092d500900702e0070072d500900715400704204003f1ec03c012009", + "0x2f90452a01542d51542a22ae0200110310072a20092d50092a200902f007", + "0x90071ee00729a0092d50090071ed0070072d500900715400729d047154", + "0x71ef00704c0092d500900703800704a0092d50090070360072980092d5", + "0x1ec00704e0092d500900703c00728f0092d500900703a0072960092d5009", + "0x70520092d500900704000728c0092d500900703f0070500092d5009007", + "0x580092d50090072a00071660092d50090072a20070540092d5009007042", + "0x4a29829a02629d00716a0092d50090070470071690092d5009007045007", + "0xe600929a0070e60092d500916a16905816605405228c05004e28f29604c", + "0x1730092d50092a000901d0070072d500905d0092980070e505d1542d5009", + "0x1100902c0070680092d500900700906e0070660092d500904500902a007", + "0x6c0092d500902400907000706a0092d50090e500904a0071750092d5009", + "0x90620071711700620600e40122d500906c06a1750680661732ae189007", + "0x92d50090070210070072d500900715400706e0092fa1780092d5154171", + "0x17300707317f1542d500917d00917100717d0092d5009178009170007070", + "0x92d50090700090520071800092d50090730090660070072d500917f009", + "0x580070072d50090760091660070760741542d5009182180154068007182", + "0x2d500907c00916a0070072d500907a00916900707c07a1542d5009074009", + "0x6e0071850092d500907f00905d00707f0092d500907d0090e600707d009", + "0x2d500906000902a0070830092d50090e400901d0070810092d5009062009", + "0x120091870092d50091850091eb0070850092d500917000902c007186009", + "0x71880092d500906e0091ea0070072d5009007154007187085186083081", + "0x906000902a0070860092d50090e400901d00708b0092d500906200906e", + "0x91890092d50091880091eb00708d0092d500917000902c0070560092d5", + "0x70072d50090240091780070072d500900715400718908d05608608b012", + "0x92d50090910090240070910092d50090070e500718a0092d5009007021", + "0x1542b90070940092d500900702800718b0092d500909118a154026007091", + "0x2d500900700906e0070960092d500918c0091ea00718c0092d500918b094", + "0x2c00709a0092d500929d00902a00718d0092d500904700901d007098009", + "0x9c09a18d09801200918e0092d50090960091eb00709c0092d5009011009", + "0x2d500901d0090e40070072d50090260091660070072d500900715400718e", + "0x909f00902400709f0092d500900707400718f0092d5009007021007007", + "0x71960092d50090070280070a10092d500909f18f15402600709f0092d5", + "0x700906e0070a40092d50090dd0091ea0070dd0092d50090a11961542b9", + "0xa80092d50092ae00902a0071a40092d500902000901d0070a60092d5009", + "0x1a40a60120091a70092d50090a40091eb0070aa0092d500901100902c007", + "0x90070210070072d500900e0090e40070072d50090071540071a70aa0a8", + "0x260070ad0092d50090ad0090240070ad0092d50090070e50070ab0092d5", + "0x91af1b11542b90071b10092d50090070280071af0092d50090ad0ab154", + "0x70b30092d500900700906e0070b10092d50090dc0091ea0070dc0092d5", + "0x901100902c0070da0092d500901800902a0071b70092d500901600901d", + "0x70070f20db0da1b70b30120090f20092d50090b10091eb0070db0092d5", + "0x1540070180161542fb2ae0121542d51541540091540090070072d5009007", + "0x2a60092d500900e0091750070210092d500901200901d0070072d5009007", + "0x2fc0240092d515401e00906c00701e01d0200112d50092a602115406a007", + "0x2800900e0070280092d500901d0090110070072d5009007154007026009", + "0x72d50091ea0092ae00702a1ea1542d50092b90090120072b90092d5009", + "0x1eb0092ae00702e1eb1542d500902c00901200702c0092d5009007016007", + "0x70310092d500902e00901800702f0092d500902a0090180070072d5009", + "0x71540070072fd0072d515403102f15401e00702f0092d500902f009020", + "0x72a60071ed0092d50090070210070072d50090240091780070072d5009", + "0x92d50091ee1ed1540260071ee0092d50091ee0090240071ee0092d5009", + "0x91ea0071ef0092d50090360381542b90070380092d5009007028007036", + "0x92d500902000901d00703c0092d500900700906e00703a0092d50091ef", + "0x91eb0070400092d500901100902c00703f0092d50092ae00902a0071ec", + "0x2e0070072d500900715400704204003f1ec03c0120090420092d500903a", + "0x1542a22ae0200110310072a20092d50092a200902f0072a20092d5009007", + "0x92d50090071ed0070072d500900715400729d0471542fe0452a01542d5", + "0x2d500900703800704a0092d50090070360072980092d50090071ee00729a", + "0x900703c00728f0092d500900703a0072960092d50090071ef00704c009", + "0x704000728c0092d500900703f0070500092d50090071ec00704e0092d5", + "0x2a00071660092d50090072a20070540092d50090070420070520092d5009", + "0x716a0092d50090070470071690092d50090070450070580092d5009007", + "0x92d500916a16905816605405228c05004e28f29604c04a29829a02629d", + "0x901d0070072d500905d0092980070e505d1542d50090e600929a0070e6", + "0x92d500900700906e0070660092d500904500902a0071730092d50092a0", + "0x907000706a0092d50090e500904a0071750092d500901100902c007068", + "0x620600e40122d500906c06a1750680661732ae18a00706c0092d5009024", + "0x70072d500900715400706e0092ff1780092d5154171009091007171170", + "0x2d500917d00909400717d0092d500917800918b0070700092d5009007021", + "0x520071800092d50090730090960070072d500917f00918c00707317f154", + "0x760091660070760741542d50091821801540980071820092d5009070009", + "0x70072d500907a00916900707c07a1542d50090740090580070072d5009", + "0x907f00905d00707f0092d500907d0090e600707d0092d500907c00916a", + "0x70830092d50090e400901d0070810092d500906200906e0071850092d5", + "0x91850091eb0070850092d500917000902c0071860092d500906000902a", + "0x6e0091ea0070072d50090071540071870851860830810120091870092d5", + "0x860092d50090e400901d00708b0092d500906200906e0071880092d5009", + "0x1880091eb00708d0092d500917000902c0070560092d500906000902a007", + "0x91780070072d500900715400718908d05608608b0120091890092d5009", + "0x240070910092d50090070e500718a0092d50090070210070072d5009024", + "0x2d500900702800718b0092d500909118a1540260070910092d5009091009", + "0x70960092d500918c0091ea00718c0092d500918b0941542b9007094009", + "0x929d00902a00718d0092d500904700901d0070980092d500900700906e", + "0x918e0092d50090960091eb00709c0092d500901100902c00709a0092d5", + "0x70072d50090260091660070072d500900715400718e09c09a18d098012", + "0x9f0092d500900707400718f0092d50090070210070072d500901d0090e4", + "0x70280070a10092d500909f18f15402600709f0092d500909f009024007", + "0x92d50090dd0091ea0070dd0092d50090a11961542b90071960092d5009", + "0x902a0071a40092d500902000901d0070a60092d500900700906e0070a4", + "0x92d50090a40091eb0070aa0092d500901100902c0070a80092d50092ae", + "0x2d500900e0090e40070072d50090071540071a70aa0a81a40a60120091a7", + "0x90ad0090240070ad0092d50090070e50070ab0092d5009007021007007", + "0x71b10092d50090070280071af0092d50090ad0ab1540260070ad0092d5", + "0x700906e0070b10092d50090dc0091ea0070dc0092d50091af1b11542b9", + "0xda0092d500901800902a0071b70092d500901600901d0070b30092d5009", + "0x1b70b30120090f20092d50090b10091eb0070db0092d500901100902c007", + "0x3002ae0121542d51541540091540090070072d50090070070070f20db0da", + "0x91750070210092d500901200901d0070072d5009007154007018016154", + "0x1e00906c00701e01d0200112d50092a602115406a0072a60092d500900e", + "0x92d500902000901d0070072d50090071540070260093010240092d5154", + "0x1ea2b90280112d500902c02a15418d00702c0092d500901d00917500702a", + "0x90110070072d500900715400702e0093021eb0092d51541ea00909a007", + "0x1542d50090310090120070310092d500902f00900e00702f0092d50092b9", + "0x360090120070360092d50090070160070072d50091ed0092ae0071ee1ed", + "0x3a0092d50091ee0090180070072d50090380092ae0071ef0381542d5009", + "0x3a15401e00703a0092d500903a00902000703c0092d50091ef009018007", + "0x70072d50091eb00918c0070072d50090071540070073030072d515403c", + "0x3f0092d50090072a60071ec0092d50090070210070072d5009024009178", + "0x70280070400092d500903f1ec15402600703f0092d500903f009024007", + "0x92d50092a20091ea0072a20092d50090400421542b90070420092d5009", + "0x902a0070470092d500902800901d0070450092d500900700906e0072a0", + "0x92d50092a00091eb00729a0092d500901100902c00729d0092d50092ae", + "0x92d500900702e0070072d500900715400729829a29d047045012009298", + "0x29604c1542d515404a2ae02801103100704a0092d500904a00902f00704a", + "0x71ee0070500092d50090071ed0070072d500900715400704e28f154304", + "0x1ef0070540092d50090070380070520092d500900703600728c0092d5009", + "0x71690092d500900703c0070580092d500900703a0071660092d5009007", + "0x5d0092d50090070400070e60092d500900703f00716a0092d50090071ec", + "0x92d50090072a00070e40092d50090072a20070e50092d5009007042007", + "0x28c05002629d0071700092d50090070470070620092d5009007045007060", + "0x901d0071710092d50091700620600e40e505d0e616a169058166054052", + "0x92d500900700906e0071780092d500929600902a00706c0092d500904c", + "0x907000717d0092d500917100904a0070700092d500901100902c00706e", + "0x7006e17806c01609c0070730092d50091eb00909600717f0092d5009024", + "0x3050740092d515406a00917f00706a1750680661730122d500907317f17d", + "0x2d50090070210070072d50090740090730070072d5009007154007076009", + "0x16a0070072d500918200916900707a1821542d5009180009058007180009", + "0x2d500907d00905d00707d0092d500907c0090e600707c0092d500907a009", + "0x2a0070810092d500917300901d0071850092d500906800906e00707f009", + "0x2d500907f0091eb0071860092d500917500902c0070830092d5009066009", + "0x90760091ea0070072d5009007154007085186083081185012009085009", + "0x708b0092d500917300901d0071880092d500906800906e0071870092d5", + "0x91870091eb0070560092d500917500902c0070860092d500906600902a", + "0x1eb00918c0070072d500900715400708d05608608b18801200908d0092d5", + "0x70e50071890092d50090070210070072d50090240091780070072d5009", + "0x92d500918a18915402600718a0092d500918a00902400718a0092d5009", + "0x91ea0070940092d500909118b1542b900718b0092d5009007028007091", + "0x92d500928f00901d0070960092d500900700906e00718c0092d5009094", + "0x91eb00709a0092d500901100902c00718d0092d500904e00902a007098", + "0x1660070072d500900715400709c09a18d09809601200909c0092d500918c", + "0x70072d50090240091780070072d50092b90090e40070072d500902e009", + "0x92d500918f00902400718f0092d500900718e00718e0092d5009007021", + "0x1542b90070a10092d500900702800709f0092d500918f18e15402600718f", + "0x2d500900700906e0070dd0092d50091960091ea0071960092d500909f0a1", + "0x2c0071a40092d50092ae00902a0070a60092d500902800901d0070a4009", + "0xa81a40a60a40120090aa0092d50090dd0091eb0070a80092d5009011009", + "0x2d500901d0090e40070072d50090260091660070072d50090071540070aa", + "0x90ab0090240070ab0092d50090070740071a70092d5009007021007007", + "0x71af0092d50090070280070ad0092d50090ab1a71540260070ab0092d5", + "0x700906e0070dc0092d50091b10091ea0071b10092d50090ad1af1542b9", + "0x1b70092d50092ae00902a0070b30092d500902000901d0070b10092d5009", + "0xb30b10120090db0092d50090dc0091eb0070da0092d500901100902c007", + "0x90070210070072d500900e0090e40070072d50090071540070db0da1b7", + "0x260070f10092d50090f10090240070f10092d50090070e50070f20092d5", + "0x90f00ef1542b90070ef0092d50090070280070f00092d50090f10f2154", + "0x70ec0092d500900700906e0070ed0092d50090ee0091ea0070ee0092d5", + "0x901100902c0070f60092d500901800902a0070eb0092d500901600901d", + "0x70070f40f50f60eb0ec0120090f40092d50090ed0091eb0070f50092d5", + "0x1540070180161543062ae0121542d51541540091540090070072d5009007", + "0x2a60092d500900e0091750070210092d500901200901d0070072d5009007", + "0x3070240092d515401e00906c00701e01d0200112d50092a602115406a007", + "0x1d00917500702a0092d500902000901d0070072d5009007154007026009", + "0x1541ea00906c0071ea2b90280112d500902c02a15406a00702c0092d5009", + "0x1ee0092d500902800901d0070072d500900715400702e0093081eb0092d5", + "0x71ed03102f0112d50090361ee15418d0070360092d50092b9009175007", + "0x310090110070072d50090071540071ef0093090380092d51541ed00909a", + "0x1ec1542d500903c00901200703c0092d500903a00900e00703a0092d5009", + "0x90400090120070400092d50090070160070072d50091ec0092ae00703f", + "0x72a00092d500903f0090180070072d50090420092ae0072a20421542d5", + "0x452a015401e0072a00092d50092a00090200070450092d50092a2009018", + "0x1780070072d500903800918c0070072d500900715400700730a0072d5154", + "0x70470092d50090070210070072d50090240091780070072d50091eb009", + "0x929d04715402600729d0092d500929d00902400729d0092d50090072a6", + "0x704a0092d500929a2981542b90072980092d500900702800729a0092d5", + "0x902f00901d0072960092d500900700906e00704c0092d500904a0091ea", + "0x70500092d500901100902c00704e0092d50092ae00902a00728f0092d5", + "0x72d500900715400728c05004e28f29601200928c0092d500904c0091eb", + "0x2ae02f0110310070520092d500905200902f0070520092d500900702e007", + "0x90071ed0070072d500900715400716905815430b1660541542d5154052", + "0x703800705d0092d50090070360070e60092d50090071ee00716a0092d5", + "0x3c0070600092d500900703a0070e40092d50090071ef0070e50092d5009", + "0x71710092d500900703f0071700092d50090071ec0070620092d5009007", + "0x680092d50090072a20070660092d50090070420071730092d5009007040", + "0x92d500900704700706a0092d50090070450071750092d50090072a0007", + "0x906c06a1750680661731711700620600e40e505d0e616a02629d00706c", + "0x70760092d500916600902a0070740092d500905400901d0071780092d5", + "0x917800904a0071820092d500901100902c0071800092d500900700906e", + "0x707d0092d50091eb00907000707c0092d500902400907000707a0092d5", + "0x2d500907f07d07c07a18218007607401818f00707f0092d5009038009096", + "0x715400708100930c1850092d515407300917f00707317f17d07006e012", + "0x90580070830092d50090070210070072d50091850090730070072d5009", + "0x92d500908500916a0070072d50091860091690070851861542d5009083", + "0x906e00708b0092d500918800905d0071880092d50091870090e6007187", + "0x92d500907000902a0070560092d500906e00901d0070860092d500917d", + "0x8601200918a0092d500908b0091eb0071890092d500917f00902c00708d", + "0x6e0070910092d50090810091ea0070072d500900715400718a18908d056", + "0x2d500907000902a0070940092d500906e00901d00718b0092d500917d009", + "0x120090980092d50090910091eb0070960092d500917f00902c00718c009", + "0x1780070072d500903800918c0070072d500900715400709809618c09418b", + "0x718d0092d50090070210070072d50090240091780070072d50091eb009", + "0x909a18d15402600709a0092d500909a00902400709a0092d50090070e5", + "0x718f0092d500909c18e1542b900718e0092d500900702800709c0092d5", + "0x905800901d0070a10092d500900700906e00709f0092d500918f0091ea", + "0x70a40092d500901100902c0070dd0092d500916900902a0071960092d5", + "0x72d50090071540070a60a40dd1960a10120090a60092d500909f0091eb", + "0x2d50091eb0091780070072d50090310090e40070072d50091ef009166007", + "0x2d500900709f0071a40092d50090070210070072d5009024009178007007", + "0x70aa0092d50090a81a41540260070a80092d50090a80090240070a8009", + "0x90ab0091ea0070ab0092d50090aa1a71542b90071a70092d5009007028", + "0x71b10092d500902f00901d0071af0092d500900700906e0070ad0092d5", + "0x90ad0091eb0070b10092d500901100902c0070dc0092d50092ae00902a", + "0x2e0091660070072d50090071540070b30b10dc1b11af0120090b30092d5", + "0x70210070072d50092b90090e40070072d50090240091780070072d5009", + "0x70da0092d50090da0090240070da0092d500900718e0071b70092d5009", + "0xdb0f21542b90070f20092d50090070280070db0092d50090da1b7154026", + "0xef0092d500900700906e0070f00092d50090f10091ea0070f10092d5009", + "0x1100902c0070ed0092d50092ae00902a0070ee0092d500902800901d007", + "0x70eb0ec0ed0ee0ef0120090eb0092d50090f00091eb0070ec0092d5009", + "0x70072d500901d0090e40070072d50090260091660070072d5009007154", + "0x92d50090f50090240070f50092d50090070740070f60092d5009007021", + "0x1542b90070f30092d50090070280070f40092d50090f50f61540260070f5", + "0x2d500900700906e0070e90092d50090ea0091ea0070ea0092d50090f40f3", + "0x2c0070d60092d50092ae00902a0070d50092d500902000901d0070e8009", + "0xd70d60d50e80120090d80092d50090e90091eb0070d70092d5009011009", + "0x92d50090070210070072d500900e0090e40070072d50090071540070d8", + "0xd91540260070de0092d50090de0090240070de0092d50090070e50070d9", + "0x92d50090df0ce1542b90070ce0092d50090070280070df0092d50090de", + "0x901d0070e20092d500900700906e0070e10092d50090e00091ea0070e0", + "0x92d500901100902c0070e70092d500901800902a0070e30092d5009016", + "0x90070070071cd1cc0e70e30e20120091cd0092d50090e10091eb0071cc", + "0x90071540070162ae15430d01200e1542d51540090071540090070072d5", + "0x120070200092d500901800900e0070180092d50090110090110070072d5", + "0x92d50090070160070072d500901d0092ae00701e01d1542d5009020009", + "0x90180070072d50092a60092ae0070242a61542d5009021009012007021", + "0x92d50090260090200070280092d50090240090180070260092d500901e", + "0x700730e0072d515402802615401e00700e0092d500900e00901d007026", + "0x71ea0092d50090072a60072b90092d50090070210070072d5009007154", + "0x900702800702a0092d50091ea2b91540260071ea0092d50091ea009024", + "0x2e0092d50091eb0091ea0071eb0092d500902a02c1542b900702c0092d5", + "0x15400902c0070310092d500901200902a00702f0092d500900e00901d007", + "0x1540071ee1ed03102f00e0091ee0092d500902e0091eb0071ed0092d5009", + "0x70360092d500903600902f0070360092d500900702e0070072d5009007", + "0x72d500900715400703c03a15430f1ef0381542d515403601200e011031", + "0x92d500900703600703f0092d50090071ee0071ec0092d50090071ed007", + "0x2d500900703a0072a20092d50090071ef0070420092d5009007038007040", + "0x900703f0070470092d50090071ec0070450092d500900703c0072a0009", + "0x72a20072980092d500900704200729a0092d500900704000729d0092d5", + "0x470072960092d500900704500704c0092d50090072a000704a0092d5009", + "0x4a29829a29d0470452a02a204204003f1ec02629d00728f0092d5009007", + "0x5000929800728c0501542d500904e00929a00704e0092d500928f29604c", + "0x716a0092d50091ef00902a0071690092d500903800901d0070072d5009", + "0x16a16900e0a100705d0092d500928c00904a0070e60092d500915400902c", + "0xe40093100e50092d515405800919600705816605405200e2d500905d0e6", + "0x92d50090e50090dd0070600092d50090070210070072d5009007154007", + "0x91a40070072d50091700090a60071711701542d50090620090a4007062", + "0x2d50090660601540260070660092d50091730090a80071730092d5009171", + "0x16a0070072d500917500916900706a1751542d5009068009058007068009", + "0x2d500917800905d0071780092d500906c0090e600706c0092d500906a009", + "0x2c00717d0092d500905400902a0070700092d500905200901d00706e009", + "0x7317f17d07000e0090730092d500906e0091eb00717f0092d5009166009", + "0x2d500905200901d0070740092d50090e40091ea0070072d5009007154007", + "0x1eb0071820092d500916600902c0071800092d500905400902a007076009", + "0x210070072d500900715400707a18218007600e00907a0092d5009074009", + "0x7d0092d500907d00902400707d0092d50090070e500707c0092d5009007", + "0x1851542b90071850092d500900702800707f0092d500907d07c154026007", + "0x92d500903a00901d0070830092d50090810091ea0070810092d500907f", + "0x91eb0071870092d500915400902c0070850092d500903c00902a007186", + "0x90e40070072d500900715400718818708518600e0091880092d5009083", + "0x240070860092d50090070e500708b0092d50090070210070072d5009011", + "0x2d50090070280070560092d500908608b1540260070860092d5009086009", + "0x718a0092d50091890091ea0071890092d500905608d1542b900708d009", + "0x915400902c00718b0092d500901600902a0070910092d50092ae00901d", + "0x700700718c09418b09100e00918c0092d500918a0091eb0070940092d5", + "0x71540070200181543110162ae1542d51540110091540090070072d5009", + "0x70240092d500901600902a0072a60092d50092ae00901d0070072d5009", + "0x702101e01d0112d50090260242a60110aa0070260092d5009012009175", + "0x280090ab0070072d50090071540072b90093120280092d51540210091a7", + "0x90071540071eb00931302c0092d515402a0090ad00702a1ea1542d5009", + "0x1200702f0092d500902e00900e00702e0092d50091ea0090110070072d5", + "0x92d50090070160070072d50090310092ae0071ed0311542d500902f009", + "0x90180070072d50090360092ae0070380361542d50091ee0090120071ee", + "0x92d50091ef00902000703a0092d50090380090180071ef0092d50091ed", + "0x91af0070072d50090071540070073140072d515403a1ef15401e0071ef", + "0x240071ec0092d50090072a600703c0092d50090070210070072d500902c", + "0x2d500900702800703f0092d50091ec03c1540260071ec0092d50091ec009", + "0x72a20092d50090420091ea0070420092d500903f0401542b9007040009", + "0x91540091b10070450092d500901d00901d0072a00092d500900700906e", + "0x729a0092d500900e00902c00729d0092d500901e00902a0070470092d5", + "0x2d500900715400729829a29d0470452a02ae0092980092d50092a20091eb", + "0x1d01103100704a0092d500904a00902f00704a0092d500900702e007007", + "0x71ed0070072d500900715400704e28f15431529604c1542d515404a01e", + "0x380070520092d500900703600728c0092d50090071ee0070500092d5009", + "0x70580092d500900703a0071660092d50090071ef0070540092d5009007", + "0xe60092d500900703f00716a0092d50090071ec0071690092d500900703c", + "0x92d50090072a20070e50092d500900704200705d0092d5009007040007", + "0x2d50090070470070620092d50090070450070600092d50090072a00070e4", + "0x1700620600e40e505d0e616a16905816605405228c05002629d007170009", + "0x72d50091730092980070661731542d500917100929a0071710092d5009", + "0x700906e00717d0092d500929600902a0070700092d500904c00901d007", + "0x740092d500900e00902c0070730092d50091540091b100717f0092d5009", + "0x700160b10071800092d500902c0090dc0070760092d500906600904a007", + "0x15406e00919600706e17806c06a1750682ae2d500918007607407317f17d", + "0x707c0092d50090070210070072d500900715400707a0093161820092d5", + "0x7f0090a600718507f1542d500907d0090a400707d0092d50091820090dd", + "0x70830092d50090810090a80070810092d50091850091a40070072d5009", + "0x91690071870851542d50091860090580071860092d500908307c154026", + "0x8b0092d50091880090e60071880092d500918700916a0070072d5009085", + "0x6800901d0070560092d500906a00906e0070860092d500908b00905d007", + "0x18a0092d500917500902a0071890092d500906c0091b100708d0092d5009", + "0x8d0562ae00918b0092d50090860091eb0070910092d500917800902c007", + "0x6e0070940092d500907a0091ea0070072d500900715400718b09118a189", + "0x2d500906c0091b10070960092d500906800901d00718c0092d500906a009", + "0x1eb00709a0092d500917800902c00718d0092d500917500902a007098009", + "0x72d500900715400709c09a18d09809618c2ae00909c0092d5009094009", + "0x92d50090070e500718e0092d50090070210070072d500902c0091af007", + "0x2800709f0092d500918f18e15402600718f0092d500918f00902400718f", + "0x2d50091960091ea0071960092d500909f0a11542b90070a10092d5009007", + "0x1b10070a60092d500928f00901d0070a40092d500900700906e0070dd009", + "0x2d500900e00902c0070a80092d500904e00902a0071a40092d5009154009", + "0x1540071a70aa0a81a40a60a42ae0091a70092d50090dd0091eb0070aa009", + "0x210070072d50091ea0090e40070072d50091eb0091660070072d5009007", + "0xad0092d50090ad0090240070ad0092d50090070740070ab0092d5009007", + "0x1b11542b90071b10092d50090070280071af0092d50090ad0ab154026007", + "0x92d500900700906e0070b10092d50090dc0091ea0070dc0092d50091af", + "0x902a0070da0092d50091540091b10071b70092d500901d00901d0070b3", + "0x92d50090b10091eb0070f20092d500900e00902c0070db0092d500901e", + "0x92b90091ea0070072d50090071540070f10f20db0da1b70b32ae0090f1", + "0x70ee0092d500901d00901d0070ef0092d500900700906e0070f00092d5", + "0x900e00902c0070ec0092d500901e00902a0070ed0092d50091540091b1", + "0x70f60eb0ec0ed0ee0ef2ae0090f60092d50090f00091eb0070eb0092d5", + "0x70f50092d50090070210070072d50090120090e40070072d5009007154", + "0x90f40f51540260070f40092d50090f40090240070f40092d50090070e5", + "0x70e90092d50090f30ea1542b90070ea0092d50090070280070f30092d5", + "0x901800901d0070d50092d500900700906e0070e80092d50090e90091ea", + "0x70d80092d500902000902a0070d70092d50091540091b10070d60092d5", + "0xd70d60d52ae0090de0092d50090e80091eb0070d90092d500900e00902c", + "0x3170162ae1542d51540110091540090070072d50090070070070de0d90d8", + "0x902a0072a60092d50092ae00901d0070072d5009007154007020018154", + "0x90260242a60110aa0070260092d50090120091750070240092d5009016", + "0x90071540072b90093180280092d51540210091a700702101e01d0112d5", + "0x31902c0092d515402a0090ad00702a1ea1542d50090280090ab0070072d5", + "0x2e00900e00702e0092d50091ea0090110070072d50090071540071eb009", + "0x72d50090310092ae0071ed0311542d500902f00901200702f0092d5009", + "0x360092ae0070380361542d50091ee0090120071ee0092d5009007016007", + "0x703a0092d50090380090180071ef0092d50091ed0090180070072d5009", + "0x715400700731a0072d515403a1ef15401e0071ef0092d50091ef009020", + "0x72a600703c0092d50090070210070072d500902c0091af0070072d5009", + "0x92d50091ec03c1540260071ec0092d50091ec0090240071ec0092d5009", + "0x91ea0070420092d500903f0401542b90070400092d500900702800703f", + "0x92d500901d00901d0072a00092d500900700906e0072a20092d5009042", + "0x902c00729d0092d500901e00902a0070470092d50091540091b1007045", + "0x29a29d0470452a02ae0092980092d50092a20091eb00729a0092d500900e", + "0x2d500904a00902f00704a0092d500900702e0070072d5009007154007298", + "0x715400704e28f15431b29604c1542d515404a01e01d01103100704a009", + "0x703600728c0092d50090071ee0070500092d50090071ed0070072d5009", + "0x3a0071660092d50090071ef0070540092d50090070380070520092d5009", + "0x716a0092d50090071ec0071690092d500900703c0070580092d5009007", + "0xe50092d500900704200705d0092d50090070400070e60092d500900703f", + "0x92d50090070450070600092d50090072a00070e40092d50090072a2007", + "0xe616a16905816605405228c05002629d0071700092d5009007047007062", + "0x2a0071780092d500904c00901d0071710092d50091700620600e40e505d", + "0x2d50091540091b10070700092d500900700906e00706e0092d5009296009", + "0xdc0070730092d500917100904a00717f0092d500900e00902c00717d009", + "0x1732ae2d500907407317f17d07006e1780160b30070740092d500902c009", + "0x900715400718000931c0760092d515406c00917f00706c06a175068066", + "0x1820090580071820092d50090070210070072d50090760090730070072d5", + "0x7d0092d500907c00916a0070072d500907a00916900707c07a1542d5009", + "0x6800906e0071850092d500907f00905d00707f0092d500907d0090e6007", + "0x1860092d50091750091b10070830092d500917300901d0070810092d5009", + "0x1850091eb0071870092d500906a00902c0070850092d500906600902a007", + "0x1ea0070072d50090071540071881870851860830812ae0091880092d5009", + "0x2d500917300901d0070860092d500906800906e00708b0092d5009180009", + "0x2c0071890092d500906600902a00708d0092d50091750091b1007056009", + "0x18908d0560862ae0090910092d500908b0091eb00718a0092d500906a009", + "0x2d50090070210070072d500902c0091af0070072d500900715400709118a", + "0x1540260070940092d50090940090240070940092d50090070e500718b009", + "0x2d500918c0961542b90070960092d500900702800718c0092d500909418b", + "0x1d00709a0092d500900700906e00718d0092d50090980091ea007098009", + "0x2d500904e00902a00718e0092d50091540091b100709c0092d500928f009", + "0x2ae0090a10092d500918d0091eb00709f0092d500900e00902c00718f009", + "0x70072d50091eb0091660070072d50090071540070a109f18f18e09c09a", + "0xdd0092d50090070740071960092d50090070210070072d50091ea0090e4", + "0x70280070a40092d50090dd1961540260070dd0092d50090dd009024007", + "0x92d50091a40091ea0071a40092d50090a40a61542b90070a60092d5009", + "0x91b10071a70092d500901d00901d0070aa0092d500900700906e0070a8", + "0x92d500900e00902c0070ad0092d500901e00902a0070ab0092d5009154", + "0x71540071b11af0ad0ab1a70aa2ae0091b10092d50090a80091eb0071af", + "0x70b10092d500900700906e0070dc0092d50092b90091ea0070072d5009", + "0x901e00902a0071b70092d50091540091b10070b30092d500901d00901d", + "0x90f20092d50090dc0091eb0070db0092d500900e00902c0070da0092d5", + "0x72d50090120090e40070072d50090071540070f20db0da1b70b30b12ae", + "0x2d50090f00090240070f00092d50090070e50070f10092d5009007021007", + "0x2b90070ee0092d50090070280070ef0092d50090f00f11540260070f0009", + "0x900700906e0070ec0092d50090ed0091ea0070ed0092d50090ef0ee154", + "0x70f50092d50091540091b10070f60092d500901800901d0070eb0092d5", + "0x90ec0091eb0070f30092d500900e00902c0070f40092d500902000902a", + "0x1540090070072d50090070070070ea0f30f40f50f60eb2ae0090ea0092d5", + "0x901d0070072d500900715400702001815431d0162ae1542d5154011009", + "0x92d50090120091750070240092d500901600902a0072a60092d50092ae", + "0x92d51540210091a700702101e01d0112d50090260242a60110aa007026", + "0x702a1ea1542d50090280090ab0070072d50090071540072b900931e028", + "0x1ea0090110070072d50090071540071eb00931f02c0092d515402a0090ad", + "0x311542d500902f00901200702f0092d500902e00900e00702e0092d5009", + "0x91ee0090120071ee0092d50090070160070072d50090310092ae0071ed", + "0x71ef0092d50091ed0090180070072d50090360092ae0070380361542d5", + "0x3a1ef15401e0071ef0092d50091ef00902000703a0092d5009038009018", + "0x210070072d500902c0091af0070072d50090071540070073200072d5154", + "0x1ec0092d50091ec0090240071ec0092d50090072a600703c0092d5009007", + "0x401542b90070400092d500900702800703f0092d50091ec03c154026007", + "0x92d500900700906e0072a20092d50090420091ea0070420092d500903f", + "0x902a0070470092d50091540091b10070450092d500901d00901d0072a0", + "0x92d50092a20091eb00729a0092d500900e00902c00729d0092d500901e", + "0x2d500900702e0070072d500900715400729829a29d0470452a02ae009298", + "0x4c1542d515404a01e01d01103100704a0092d500904a00902f00704a009", + "0x1ee0070500092d50090071ed0070072d500900715400704e28f154321296", + "0x70540092d50090070380070520092d500900703600728c0092d5009007", + "0x1690092d500900703c0070580092d500900703a0071660092d50090071ef", + "0x92d50090070400070e60092d500900703f00716a0092d50090071ec007", + "0x2d50090072a00070e40092d50090072a20070e50092d500900704200705d", + "0x5002629d0071700092d50090070470070620092d5009007045007060009", + "0x1d0071710092d50091700620600e40e505d0e616a16905816605405228c", + "0x2d500900700906e00706e0092d500929600902a0071780092d500904c009", + "0x4a00717f0092d500900e00902c00717d0092d50091540091b1007070009", + "0x7006e1780161b70070740092d500902c0090dc0070730092d5009171009", + "0x92d515406c00917f00706c06a1750680661732ae2d500907407317f17d", + "0x70210070072d50090760090730070072d5009007154007180009322076", + "0x72d500907a00916900707c07a1542d50091820090580071820092d5009", + "0x7f00905d00707f0092d500907d0090e600707d0092d500907c00916a007", + "0x830092d500917300901d0070810092d500906800906e0071850092d5009", + "0x6a00902c0070850092d500906600902a0071860092d50091750091b1007", + "0x1881870851860830812ae0091880092d50091850091eb0071870092d5009", + "0x2d500906800906e00708b0092d50091800091ea0070072d5009007154007", + "0x2a00708d0092d50091750091b10070560092d500917300901d007086009", + "0x2d500908b0091eb00718a0092d500906a00902c0071890092d5009066009", + "0x2c0091af0070072d500900715400709118a18908d0560862ae009091009", + "0x90240070940092d50090070e500718b0092d50090070210070072d5009", + "0x92d500900702800718c0092d500909418b1540260070940092d5009094", + "0x6e00718d0092d50090980091ea0070980092d500918c0961542b9007096", + "0x2d50091540091b100709c0092d500928f00901d00709a0092d5009007009", + "0x1eb00709f0092d500900e00902c00718f0092d500904e00902a00718e009", + "0x72d50090071540070a109f18f18e09c09a2ae0090a10092d500918d009", + "0x92d50090070210070072d50091ea0090e40070072d50091eb009166007", + "0x1961540260070dd0092d50090dd0090240070dd0092d5009007074007196", + "0x92d50090a40a61542b90070a60092d50090070280070a40092d50090dd", + "0x901d0070aa0092d500900700906e0070a80092d50091a40091ea0071a4", + "0x92d500901e00902a0070ab0092d50091540091b10071a70092d500901d", + "0xaa2ae0091b10092d50090a80091eb0071af0092d500900e00902c0070ad", + "0x70dc0092d50092b90091ea0070072d50090071540071b11af0ad0ab1a7", + "0x91540091b10070b30092d500901d00901d0070b10092d500900700906e", + "0x70db0092d500900e00902c0070da0092d500901e00902a0071b70092d5", + "0x2d50090071540070f20db0da1b70b30b12ae0090f20092d50090dc0091eb", + "0x2d50090070e50070f10092d50090070210070072d50090120090e4007007", + "0x70ef0092d50090f00f11540260070f00092d50090f00090240070f0009", + "0x90ed0091ea0070ed0092d50090ef0ee1542b90070ee0092d5009007028", + "0x70f60092d500901800901d0070eb0092d500900700906e0070ec0092d5", + "0x900e00902c0070f40092d500902000902a0070f50092d50091540091b1", + "0x70ea0f30f40f50f60eb2ae0090ea0092d50090ec0091eb0070f30092d5", + "0x70200181543230162ae1542d51540110091540090070072d5009007007", + "0x92d500901600902a0072a60092d50092ae00901d0070072d5009007154", + "0x1e01d0112d50090260242a60110aa0070260092d5009012009175007024", + "0xab0070072d50090071540072b90093240280092d51540210091a7007021", + "0x1540071eb00932502c0092d515402a0090ad00702a1ea1542d5009028009", + "0x2f0092d500902e00900e00702e0092d50091ea0090110070072d5009007", + "0x90070160070072d50090310092ae0071ed0311542d500902f009012007", + "0x70072d50090360092ae0070380361542d50091ee0090120071ee0092d5", + "0x91ef00902000703a0092d50090380090180071ef0092d50091ed009018", + "0x70072d50090071540070073260072d515403a1ef15401e0071ef0092d5", + "0x1ec0092d50090072a600703c0092d50090070210070072d500902c0091af", + "0x702800703f0092d50091ec03c1540260071ec0092d50091ec009024007", + "0x92d50090420091ea0070420092d500903f0401542b90070400092d5009", + "0x91b10070450092d500901d00901d0072a00092d500900700906e0072a2", + "0x92d500900e00902c00729d0092d500901e00902a0070470092d5009154", + "0x715400729829a29d0470452a02ae0092980092d50092a20091eb00729a", + "0x3100704a0092d500904a00902f00704a0092d500900702e0070072d5009", + "0x70072d500900715400704e28f15432729604c1542d515404a01e01d011", + "0x520092d500900703600728c0092d50090071ee0070500092d50090071ed", + "0x92d500900703a0071660092d50090071ef0070540092d5009007038007", + "0x2d500900703f00716a0092d50090071ec0071690092d500900703c007058", + "0x90072a20070e50092d500900704200705d0092d50090070400070e6009", + "0x70470070620092d50090070450070600092d50090072a00070e40092d5", + "0x600e40e505d0e616a16905816605405228c05002629d0071700092d5009", + "0x2d500929600902a0071780092d500904c00901d0071710092d5009170062", + "0x2c00717d0092d50091540091b10070700092d500900700906e00706e009", + "0x2d500902c0090dc0070730092d500917100904a00717f0092d500900e009", + "0x6a1750680661732ae2d500907407317f17d07006e1780160da007074009", + "0x730070072d50090071540071800093280760092d515406c00917f00706c", + "0x7a1542d50091820090580071820092d50090070210070072d5009076009", + "0x7d0090e600707d0092d500907c00916a0070072d500907a00916900707c", + "0x810092d500906800906e0071850092d500907f00905d00707f0092d5009", + "0x6600902a0071860092d50091750091b10070830092d500917300901d007", + "0x1880092d50091850091eb0071870092d500906a00902c0070850092d5009", + "0x2d50091800091ea0070072d50090071540071881870851860830812ae009", + "0x1b10070560092d500917300901d0070860092d500906800906e00708b009", + "0x2d500906a00902c0071890092d500906600902a00708d0092d5009175009", + "0x15400709118a18908d0560862ae0090910092d500908b0091eb00718a009", + "0xe500718b0092d50090070210070072d500902c0091af0070072d5009007", + "0x2d500909418b1540260070940092d50090940090240070940092d5009007", + "0x1ea0070980092d500918c0961542b90070960092d500900702800718c009", + "0x2d500928f00901d00709a0092d500900700906e00718d0092d5009098009", + "0x2c00718f0092d500904e00902a00718e0092d50091540091b100709c009", + "0x18f18e09c09a2ae0090a10092d500918d0091eb00709f0092d500900e009", + "0x91ea0090e40070072d50091eb0091660070072d50090071540070a109f", + "0xdd0090240070dd0092d50090070740071960092d50090070210070072d5", + "0xa60092d50090070280070a40092d50090dd1961540260070dd0092d5009", + "0x906e0070a80092d50091a40091ea0071a40092d50090a40a61542b9007", + "0x92d50091540091b10071a70092d500901d00901d0070aa0092d5009007", + "0x91eb0071af0092d500900e00902c0070ad0092d500901e00902a0070ab", + "0x70072d50090071540071b11af0ad0ab1a70aa2ae0091b10092d50090a8", + "0x901d00901d0070b10092d500900700906e0070dc0092d50092b90091ea", + "0x70da0092d500901e00902a0071b70092d50091540091b10070b30092d5", + "0x1b70b30b12ae0090f20092d50090dc0091eb0070db0092d500900e00902c", + "0x90070210070072d50090120090e40070072d50090071540070f20db0da", + "0x260070f00092d50090f00090240070f00092d50090070e50070f10092d5", + "0x90ef0ee1542b90070ee0092d50090070280070ef0092d50090f00f1154", + "0x70eb0092d500900700906e0070ec0092d50090ed0091ea0070ed0092d5", + "0x902000902a0070f50092d50091540091b10070f60092d500901800901d", + "0x90ea0092d50090ec0091eb0070f30092d500900e00902c0070f40092d5", + "0x2d51541540091540090070072d50090070070070ea0f30f40f50f60eb2ae", + "0x92d500900e0091750070072d50090071540070180161543292ae012154", + "0xf20070120092d500901200901d00701d0201542d500901e0090db00701e", + "0x901200901d0070072d50090071540072a600932a0210092d515401d009", + "0x240112d50091ea2b915407a0071ea0092d50090200091750072b90092d5", + "0x70072d500900715400702c00932b02a0092d515402800907c007028026", + "0x902e00901200702e0092d50091eb00900e0071eb0092d5009026009011", + "0x120071ed0092d50090070160070072d500902f0092ae00703102f1542d5", + "0x2d50090310090180070072d50091ee0092ae0070361ee1542d50091ed009", + "0x1e0070380092d50090380090200071ef0092d5009036009018007038009", + "0x2d500902a0091730070072d500900715400700732c0072d51541ef038154", + "0x2d50090072a600703a0092d50090070210070072d5009021009186007007", + "0x71ec0092d500903c03a15402600703c0092d500903c00902400703c009", + "0x90400091ea0070400092d50091ec03f1542b900703f0092d5009007028", + "0x72a00092d500902400901d0072a20092d500900700906e0070420092d5", + "0x90420091eb0070470092d500901100902c0070450092d50092ae00902a", + "0x900702e0070072d500900715400729d0470452a02a201200929d0092d5", + "0x1542d515429a2ae02401103100729a0092d500929a00902f00729a0092d5", + "0x728f0092d50090071ed0070072d500900715400729604c15432d04a298", + "0x28c0092d50090070380070500092d500900703600704e0092d50090071ee", + "0x92d500900703c0070540092d500900703a0070520092d50090071ef007", + "0x2d50090070400071690092d500900703f0070580092d50090071ec007166", + "0x90072a000705d0092d50090072a20070e60092d500900704200716a009", + "0x2629d0070600092d50090070470070e40092d50090070450070e50092d5", + "0x70620092d50090600e40e505d0e616a16905816605405228c05004e28f", + "0x929800901d0070072d50091700092980071711701542d500906200929a", + "0x706e0092d500900700906e0071780092d500904a00902a00706c0092d5", + "0x902100902400717d0092d500917100904a0070700092d500901100902c", + "0x17f17d07006e17806c0160f10070730092d500902a00906600717f0092d5", + "0x7600932e0740092d515406a0090f000706a1750680661730122d5009073", + "0x92d50090740090ef0071800092d50090070210070072d5009007154007", + "0x90ec0070072d500907a0090ed00707c07a1542d50091820090ee007182", + "0x2d50090811851540eb0070810092d50091800090520071850092d500907c", + "0x71860831542d500907d0090580070072d500907f00916600707f07d154", + "0x2d50090850090e60070850092d500918600916a0070072d5009083009169", + "0x1d00708b0092d500906800906e0071880092d500918700905d007187009", + "0x2d500917500902c0070560092d500906600902a0070860092d5009173009", + "0x715400718908d05608608b0120091890092d50091880091eb00708d009", + "0x70910092d500906800906e00718a0092d50090760091ea0070072d5009", + "0x917500902c0070940092d500906600902a00718b0092d500917300901d", + "0x15400709618c09418b0910120090960092d500918a0091eb00718c0092d5", + "0x210070072d50090210091860070072d500902a0091730070072d5009007", + "0x18d0092d500918d00902400718d0092d50090070e50070980092d5009007", + "0x9c1542b900709c0092d500900702800709a0092d500918d098154026007", + "0x92d500900700906e00718f0092d500918e0091ea00718e0092d500909a", + "0x902c0071960092d500929600902a0070a10092d500904c00901d00709f", + "0xa40dd1960a109f0120090a40092d500918f0091eb0070dd0092d5009011", + "0x72d50090260090e40070072d500902c0091660070072d5009007154007", + "0x92d500900718e0070a60092d50090070210070072d5009021009186007", + "0x280070a80092d50091a40a61540260071a40092d50091a40090240071a4", + "0x2d50091a70091ea0071a70092d50090a80aa1542b90070aa0092d5009007", + "0x2a0071af0092d500902400901d0070ad0092d500900700906e0070ab009", + "0x2d50090ab0091eb0070dc0092d500901100902c0071b10092d50092ae009", + "0x92a60091660070072d50090071540070b10dc1b11af0ad0120090b1009", + "0x90070740070b30092d50090070210070072d50090200090e40070072d5", + "0xda0092d50091b70b31540260071b70092d50091b70090240071b70092d5", + "0xf20091ea0070f20092d50090da0db1542b90070db0092d5009007028007", + "0xef0092d500901200901d0070f00092d500900700906e0070f10092d5009", + "0xf10091eb0070ed0092d500901100902c0070ee0092d50092ae00902a007", + "0x90e40070072d50090071540070ec0ed0ee0ef0f00120090ec0092d5009", + "0x240070f60092d50090070e50070eb0092d50090070210070072d500900e", + "0x2d50090070280070f50092d50090f60eb1540260070f60092d50090f6009", + "0x70ea0092d50090f30091ea0070f30092d50090f50f41542b90070f4009", + "0x901800902a0070e80092d500901600901d0070e90092d500900700906e", + "0x90d70092d50090ea0091eb0070d60092d500901100902c0070d50092d5", + "0x1542d51541540091540090070072d50090070070070d70d60d50e80e9012", + "0x1e0092d500900e0091750070072d500900715400701801615432f2ae012", + "0x90f20070120092d500901200901d00701d0201542d500901e0090db007", + "0x2d50090200090110070072d50090071540072a60093300210092d515401d", + "0x72b90281542d50090260090120070260092d500902400900e007024009", + "0x1542d50091ea0090120071ea0092d50090070160070072d50090280092ae", + "0x90180071eb0092d50092b90090180070072d500902a0092ae00702c02a", + "0x2d515402e1eb15401e0071eb0092d50091eb00902000702e0092d500902c", + "0x90070210070072d50090210091860070072d5009007154007007331007", + "0x260070310092d50090310090240070310092d50090072a600702f0092d5", + "0x91ed1ee1542b90071ee0092d50090070280071ed0092d500903102f154", + "0x71ef0092d500900700906e0070380092d50090360091ea0070360092d5", + "0x901100902c00703c0092d50092ae00902a00703a0092d500901200901d", + "0x15400703f1ec03c03a1ef01200903f0092d50090380091eb0071ec0092d5", + "0x70400092d500904000902f0070400092d500900702e0070072d5009007", + "0x72d50090071540070452a01543322a20421542d51540402ae012011031", + "0x92d500900703600729d0092d50090071ee0070470092d50090071ed007", + "0x2d500900703a00704a0092d50090071ef0072980092d500900703800729a", + "0x900703f00728f0092d50090071ec0072960092d500900703c00704c009", + "0x72a200728c0092d50090070420070500092d500900704000704e0092d5", + "0x470071660092d50090070450070540092d50090072a00070520092d5009", + "0x5228c05004e28f29604c04a29829a29d04702629d0070580092d5009007", + "0x16a0092980070e616a1542d500916900929a0071690092d5009058166054", + "0x71710092d50092a200902a0071700092d500904200901d0070072d5009", + "0x90e600904a0070660092d500901100902c0071730092d500900700906e", + "0x1750680661731711702ae0f60071750092d50090210090240070680092d5", + "0x706c00933306a0092d51540620090f50070620600e40e505d0122d5009", + "0x6e0092d500906a0090f40071780092d50090070210070072d5009007154", + "0x17d0090240070072d500907000918600717d0701542d500906e009083007", + "0x1542d50090760741540850070760092d50091780090520070740092d5009", + "0x1690071821801542d500917f0090580070072d500907300916600707317f", + "0x92d500907a0090e600707a0092d500918200916a0070072d5009180009", + "0x901d00707f0092d50090e400906e00707d0092d500907c00905d00707c", + "0x92d500906000902c0070810092d50090e500902a0071850092d500905d", + "0x900715400718608308118507f0120091860092d500907d0091eb007083", + "0x1d0071870092d50090e400906e0070850092d500906c0091ea0070072d5", + "0x2d500906000902c00708b0092d50090e500902a0071880092d500905d009", + "0x715400705608608b1881870120090560092d50090850091eb007086009", + "0x70e500708d0092d50090070210070072d50090210091860070072d5009", + "0x92d500918908d1540260071890092d50091890090240071890092d5009", + "0x91ea00718b0092d500918a0911542b90070910092d500900702800718a", + "0x92d50092a000901d00718c0092d500900700906e0070940092d500918b", + "0x91eb00718d0092d500901100902c0070980092d500904500902a007096", + "0x1660070072d500900715400709a18d09809618c01200909a0092d5009094", + "0x709c0092d50090070210070072d50090200090e40070072d50092a6009", + "0x918e09c15402600718e0092d500918e00902400718e0092d5009007074", + "0x70a10092d500918f09f1542b900709f0092d500900702800718f0092d5", + "0x901200901d0070dd0092d500900700906e0071960092d50090a10091ea", + "0x71a40092d500901100902c0070a60092d50092ae00902a0070a40092d5", + "0x72d50090071540070a81a40a60a40dd0120090a80092d50091960091eb", + "0x92d50090070e50070aa0092d50090070210070072d500900e0090e4007", + "0x280070ab0092d50091a70aa1540260071a70092d50091a70090240071a7", + "0x2d50091af0091ea0071af0092d50090ab0ad1542b90070ad0092d5009007", + "0x2a0070b10092d500901600901d0070dc0092d500900700906e0071b1009", + "0x2d50091b10091eb0071b70092d500901100902c0070b30092d5009018009", + "0x1540091540090070072d50090070070070da1b70b30b10dc0120090da009", + "0x901200901d0070072d50090071540070180161543342ae0121542d5154", + "0x200112d50092a602115407a0072a60092d500900e0091750070210092d5", + "0x70072d50090071540070260093350240092d515401e00907c00701e01d", + "0x92b90090120072b90092d500902800900e0070280092d500901d009011", + "0x1200702c0092d50090070160070072d50091ea0092ae00702a1ea1542d5", + "0x2d500902a0090180070072d50091eb0092ae00702e1eb1542d500902c009", + "0x1e00702f0092d500902f0090200070310092d500902e00901800702f009", + "0x2d50090240091730070072d50090071540070073360072d515403102f154", + "0x91ee0090240071ee0092d50090072a60071ed0092d5009007021007007", + "0x70380092d50090070280070360092d50091ee1ed1540260071ee0092d5", + "0x700906e00703a0092d50091ef0091ea0071ef0092d50090360381542b9", + "0x3f0092d50092ae00902a0071ec0092d500902000901d00703c0092d5009", + "0x1ec03c0120090420092d500903a0091eb0070400092d500901100902c007", + "0x2a200902f0072a20092d500900702e0070072d500900715400704204003f", + "0x729d0471543370452a01542d51542a22ae0200110310072a20092d5009", + "0x72980092d50090071ee00729a0092d50090071ed0070072d5009007154", + "0x2960092d50090071ef00704c0092d500900703800704a0092d5009007036", + "0x92d50090071ec00704e0092d500900703c00728f0092d500900703a007", + "0x2d50090070420070520092d500900704000728c0092d500900703f007050", + "0x90070450070580092d50090072a00071660092d50090072a2007054009", + "0x4e28f29604c04a29829a02629d00716a0092d50090070470071690092d5", + "0x5d1542d50090e600929a0070e60092d500916a16905816605405228c050", + "0x4500902a0071730092d50092a000901d0070072d500905d0092980070e5", + "0x1750092d500901100902c0070680092d500900700906e0070660092d5009", + "0x1732ae0f300706c0092d500902400906600706a0092d50090e500904a007", + "0x92d51541710090f00071711700620600e40122d500906c06a175068066", + "0x90ef0070700092d50090070210070072d500900715400706e009338178", + "0x2d500917f0090ed00707317f1542d500917d0090ee00717d0092d5009178", + "0x1540eb0071820092d50090700090520071800092d50090730090ec007007", + "0x2d50090740090580070072d50090760091660070760741542d5009182180", + "0xe600707d0092d500907c00916a0070072d500907a00916900707c07a154", + "0x2d500906200906e0071850092d500907f00905d00707f0092d500907d009", + "0x2c0071860092d500906000902a0070830092d50090e400901d007081009", + "0x851860830810120091870092d50091850091eb0070850092d5009170009", + "0x906200906e0071880092d500906e0091ea0070072d5009007154007187", + "0x70560092d500906000902a0070860092d50090e400901d00708b0092d5", + "0x5608608b0120091890092d50091880091eb00708d0092d500917000902c", + "0x2d50090070210070072d50090240091730070072d500900715400718908d", + "0x1540260070910092d50090910090240070910092d50090070e500718a009", + "0x2d500918b0941542b90070940092d500900702800718b0092d500909118a", + "0x1d0070980092d500900700906e0070960092d500918c0091ea00718c009", + "0x2d500901100902c00709a0092d500929d00902a00718d0092d5009047009", + "0x715400718e09c09a18d09801200918e0092d50090960091eb00709c009", + "0x70210070072d500901d0090e40070072d50090260091660070072d5009", + "0x709f0092d500909f00902400709f0092d500900707400718f0092d5009", + "0xa11961542b90071960092d50090070280070a10092d500909f18f154026", + "0xa60092d500900700906e0070a40092d50090dd0091ea0070dd0092d5009", + "0x1100902c0070a80092d50092ae00902a0071a40092d500902000901d007", + "0x71a70aa0a81a40a60120091a70092d50090a40091eb0070aa0092d5009", + "0x70ab0092d50090070210070072d500900e0090e40070072d5009007154", + "0x90ad0ab1540260070ad0092d50090ad0090240070ad0092d50090070e5", + "0x70dc0092d50091af1b11542b90071b10092d50090070280071af0092d5", + "0x901600901d0070b30092d500900700906e0070b10092d50090dc0091ea", + "0x70db0092d500901100902c0070da0092d500901800902a0071b70092d5", + "0x72d50090070070070f20db0da1b70b30120090f20092d50090b10091eb", + "0x72d50090071540070180161543392ae0121542d5154154009154009007", + "0x2115407a0072a60092d500900e0091750070210092d500901200901d007", + "0x15400702600933a0240092d515401e00907c00701e01d0200112d50092a6", + "0x2b90092d500902800900e0070280092d500901d0090110070072d5009007", + "0x90070160070072d50091ea0092ae00702a1ea1542d50092b9009012007", + "0x70072d50091eb0092ae00702e1eb1542d500902c00901200702c0092d5", + "0x902f0090200070310092d500902e00901800702f0092d500902a009018", + "0x70072d500900715400700733b0072d515403102f15401e00702f0092d5", + "0x1ee0092d50090072a60071ed0092d50090070210070072d5009024009173", + "0x70280070360092d50091ee1ed1540260071ee0092d50091ee009024007", + "0x92d50091ef0091ea0071ef0092d50090360381542b90070380092d5009", + "0x902a0071ec0092d500902000901d00703c0092d500900700906e00703a", + "0x92d500903a0091eb0070400092d500901100902c00703f0092d50092ae", + "0x92d500900702e0070072d500900715400704204003f1ec03c012009042", + "0x452a01542d51542a22ae0200110310072a20092d50092a200902f0072a2", + "0x71ee00729a0092d50090071ed0070072d500900715400729d04715433c", + "0x1ef00704c0092d500900703800704a0092d50090070360072980092d5009", + "0x704e0092d500900703c00728f0092d500900703a0072960092d5009007", + "0x520092d500900704000728c0092d500900703f0070500092d50090071ec", + "0x92d50090072a00071660092d50090072a20070540092d5009007042007", + "0x29829a02629d00716a0092d50090070470071690092d5009007045007058", + "0x929a0070e60092d500916a16905816605405228c05004e28f29604c04a", + "0x92d50092a000901d0070072d500905d0092980070e505d1542d50090e6", + "0x902c0070680092d500900700906e0070660092d500904500902a007173", + "0x92d500902400906600706a0092d50090e500904a0071750092d5009011", + "0xf00071711700620600e40122d500906c06a1750680661732ae0ea00706c", + "0x2d50090070210070072d500900715400706e00933d1780092d5154171009", + "0x707317f1542d500917d0090ee00717d0092d50091780090ef007070009", + "0x2d50090700090520071800092d50090730090ec0070072d500917f0090ed", + "0x70072d50090760091660070760741542d50091821801540eb007182009", + "0x907c00916a0070072d500907a00916900707c07a1542d5009074009058", + "0x71850092d500907f00905d00707f0092d500907d0090e600707d0092d5", + "0x906000902a0070830092d50090e400901d0070810092d500906200906e", + "0x91870092d50091850091eb0070850092d500917000902c0071860092d5", + "0x1880092d500906e0091ea0070072d5009007154007187085186083081012", + "0x6000902a0070860092d50090e400901d00708b0092d500906200906e007", + "0x1890092d50091880091eb00708d0092d500917000902c0070560092d5009", + "0x72d50090240091730070072d500900715400718908d05608608b012009", + "0x2d50090910090240070910092d50090070e500718a0092d5009007021007", + "0x2b90070940092d500900702800718b0092d500909118a154026007091009", + "0x900700906e0070960092d500918c0091ea00718c0092d500918b094154", + "0x709a0092d500929d00902a00718d0092d500904700901d0070980092d5", + "0x9a18d09801200918e0092d50090960091eb00709c0092d500901100902c", + "0x901d0090e40070072d50090260091660070072d500900715400718e09c", + "0x9f00902400709f0092d500900707400718f0092d50090070210070072d5", + "0x1960092d50090070280070a10092d500909f18f15402600709f0092d5009", + "0x906e0070a40092d50090dd0091ea0070dd0092d50090a11961542b9007", + "0x92d50092ae00902a0071a40092d500902000901d0070a60092d5009007", + "0xa60120091a70092d50090a40091eb0070aa0092d500901100902c0070a8", + "0x70210070072d500900e0090e40070072d50090071540071a70aa0a81a4", + "0x70ad0092d50090ad0090240070ad0092d50090070e50070ab0092d5009", + "0x1af1b11542b90071b10092d50090070280071af0092d50090ad0ab154026", + "0xb30092d500900700906e0070b10092d50090dc0091ea0070dc0092d5009", + "0x1100902c0070da0092d500901800902a0071b70092d500901600901d007", + "0x70f20db0da1b70b30120090f20092d50090b10091eb0070db0092d5009", + "0x701801615433e2ae0121542d51541540091540090070072d5009007007", + "0x92d500900e0091750070210092d500901200901d0070072d5009007154", + "0x240092d515401e00907c00701e01d0200112d50092a602115407a0072a6", + "0x900e0070280092d500901d0090110070072d500900715400702600933f", + "0x2d50091ea0092ae00702a1ea1542d50092b90090120072b90092d5009028", + "0x92ae00702e1eb1542d500902c00901200702c0092d5009007016007007", + "0x310092d500902e00901800702f0092d500902a0090180070072d50091eb", + "0x1540070073400072d515403102f15401e00702f0092d500902f009020007", + "0x2a60071ed0092d50090070210070072d50090240091730070072d5009007", + "0x2d50091ee1ed1540260071ee0092d50091ee0090240071ee0092d5009007", + "0x1ea0071ef0092d50090360381542b90070380092d5009007028007036009", + "0x2d500902000901d00703c0092d500900700906e00703a0092d50091ef009", + "0x1eb0070400092d500901100902c00703f0092d50092ae00902a0071ec009", + "0x70072d500900715400704204003f1ec03c0120090420092d500903a009", + "0x2a22ae0200110310072a20092d50092a200902f0072a20092d500900702e", + "0x2d50090071ed0070072d500900715400729d0471543410452a01542d5154", + "0x900703800704a0092d50090070360072980092d50090071ee00729a009", + "0x703c00728f0092d500900703a0072960092d50090071ef00704c0092d5", + "0x4000728c0092d500900703f0070500092d50090071ec00704e0092d5009", + "0x71660092d50090072a20070540092d50090070420070520092d5009007", + "0x16a0092d50090070470071690092d50090070450070580092d50090072a0", + "0x2d500916a16905816605405228c05004e28f29604c04a29829a02629d007", + "0x1d0070072d500905d0092980070e505d1542d50090e600929a0070e6009", + "0x2d500900700906e0070660092d500904500902a0071730092d50092a0009", + "0x6600706a0092d50090e500904a0071750092d500901100902c007068009", + "0x600e40122d500906c06a1750680661732ae0e900706c0092d5009024009", + "0x72d500900715400706e0093421780092d51541710090f0007171170062", + "0x917d0090ee00717d0092d50091780090ef0070700092d5009007021007", + "0x71800092d50090730090ec0070072d500917f0090ed00707317f1542d5", + "0x91660070760741542d50091821801540eb0071820092d5009070009052", + "0x72d500907a00916900707c07a1542d50090740090580070072d5009076", + "0x7f00905d00707f0092d500907d0090e600707d0092d500907c00916a007", + "0x830092d50090e400901d0070810092d500906200906e0071850092d5009", + "0x1850091eb0070850092d500917000902c0071860092d500906000902a007", + "0x91ea0070072d50090071540071870851860830810120091870092d5009", + "0x92d50090e400901d00708b0092d500906200906e0071880092d500906e", + "0x91eb00708d0092d500917000902c0070560092d500906000902a007086", + "0x1730070072d500900715400718908d05608608b0120091890092d5009188", + "0x70910092d50090070e500718a0092d50090070210070072d5009024009", + "0x900702800718b0092d500909118a1540260070910092d5009091009024", + "0x960092d500918c0091ea00718c0092d500918b0941542b90070940092d5", + "0x29d00902a00718d0092d500904700901d0070980092d500900700906e007", + "0x18e0092d50090960091eb00709c0092d500901100902c00709a0092d5009", + "0x72d50090260091660070072d500900715400718e09c09a18d098012009", + "0x92d500900707400718f0092d50090070210070072d500901d0090e4007", + "0x280070a10092d500909f18f15402600709f0092d500909f00902400709f", + "0x2d50090dd0091ea0070dd0092d50090a11961542b90071960092d5009007", + "0x2a0071a40092d500902000901d0070a60092d500900700906e0070a4009", + "0x2d50090a40091eb0070aa0092d500901100902c0070a80092d50092ae009", + "0x900e0090e40070072d50090071540071a70aa0a81a40a60120091a7009", + "0xad0090240070ad0092d50090070e50070ab0092d50090070210070072d5", + "0x1b10092d50090070280071af0092d50090ad0ab1540260070ad0092d5009", + "0x906e0070b10092d50090dc0091ea0070dc0092d50091af1b11542b9007", + "0x92d500901800902a0071b70092d500901600901d0070b30092d5009007", + "0xb30120090f20092d50090b10091eb0070db0092d500901100902c0070da", + "0x2ae0121542d51541540091540090070072d50090070070070f20db0da1b7", + "0x1750070210092d500901200901d0070072d5009007154007018016154343", + "0x907c00701e01d0200112d50092a602115407a0072a60092d500900e009", + "0x2d500901d0090110070072d50090071540070260093440240092d515401e", + "0x702a1ea1542d50092b90090120072b90092d500902800900e007028009", + "0x1542d500902c00901200702c0092d50090070160070072d50091ea0092ae", + "0x901800702f0092d500902a0090180070072d50091eb0092ae00702e1eb", + "0x2d515403102f15401e00702f0092d500902f0090200070310092d500902e", + "0x90070210070072d50090240091730070072d5009007154007007345007", + "0x260071ee0092d50091ee0090240071ee0092d50090072a60071ed0092d5", + "0x90360381542b90070380092d50090070280070360092d50091ee1ed154", + "0x703c0092d500900700906e00703a0092d50091ef0091ea0071ef0092d5", + "0x901100902c00703f0092d50092ae00902a0071ec0092d500902000901d", + "0x15400704204003f1ec03c0120090420092d500903a0091eb0070400092d5", + "0x72a20092d50092a200902f0072a20092d500900702e0070072d5009007", + "0x72d500900715400729d0471543460452a01542d51542a22ae020011031", + "0x92d50090070360072980092d50090071ee00729a0092d50090071ed007", + "0x2d500900703a0072960092d50090071ef00704c0092d500900703800704a", + "0x900703f0070500092d50090071ec00704e0092d500900703c00728f009", + "0x72a20070540092d50090070420070520092d500900704000728c0092d5", + "0x470071690092d50090070450070580092d50090072a00071660092d5009", + "0x16605405228c05004e28f29604c04a29829a02629d00716a0092d5009007", + "0x5d0092980070e505d1542d50090e600929a0070e60092d500916a169058", + "0x70660092d500904500902a0071730092d50092a000901d0070072d5009", + "0x90e500904a0071750092d500901100902c0070680092d500900700906e", + "0x6c06a1750680661732ae0e800706c0092d500902400906600706a0092d5", + "0x706e0093471780092d51541710090f00071711700620600e40122d5009", + "0x17d0092d50091780090ef0070700092d50090070210070072d5009007154", + "0x730090ec0070072d500917f0090ed00707317f1542d500917d0090ee007", + "0x1542d50091821801540eb0071820092d50090700090520071800092d5009", + "0x16900707c07a1542d50090740090580070072d5009076009166007076074", + "0x92d500907d0090e600707d0092d500907c00916a0070072d500907a009", + "0x901d0070810092d500906200906e0071850092d500907f00905d00707f", + "0x92d500917000902c0071860092d500906000902a0070830092d50090e4", + "0x90071540071870851860830810120091870092d50091850091eb007085", + "0x1d00708b0092d500906200906e0071880092d500906e0091ea0070072d5", + "0x2d500917000902c0070560092d500906000902a0070860092d50090e4009", + "0x715400718908d05608608b0120091890092d50091880091eb00708d009", + "0x70e500718a0092d50090070210070072d50090240091730070072d5009", + "0x92d500909118a1540260070910092d50090910090240070910092d5009", + "0x91ea00718c0092d500918b0941542b90070940092d500900702800718b", + "0x92d500904700901d0070980092d500900700906e0070960092d500918c", + "0x91eb00709c0092d500901100902c00709a0092d500929d00902a00718d", + "0x1660070072d500900715400718e09c09a18d09801200918e0092d5009096", + "0x718f0092d50090070210070072d500901d0090e40070072d5009026009", + "0x909f18f15402600709f0092d500909f00902400709f0092d5009007074", + "0x70dd0092d50090a11961542b90071960092d50090070280070a10092d5", + "0x902000901d0070a60092d500900700906e0070a40092d50090dd0091ea", + "0x70aa0092d500901100902c0070a80092d50092ae00902a0071a40092d5", + "0x72d50090071540071a70aa0a81a40a60120091a70092d50090a40091eb", + "0x92d50090070e50070ab0092d50090070210070072d500900e0090e4007", + "0x280071af0092d50090ad0ab1540260070ad0092d50090ad0090240070ad", + "0x2d50090dc0091ea0070dc0092d50091af1b11542b90071b10092d5009007", + "0x2a0071b70092d500901600901d0070b30092d500900700906e0070b1009", + "0x2d50090b10091eb0070db0092d500901100902c0070da0092d5009018009", + "0x1540091540090070072d50090070070070f20db0da1b70b30120090f2009", + "0x901200901d0070072d50090071540070180161543482ae0121542d5154", + "0x200112d50092a602115407a0072a60092d500900e0091750070210092d5", + "0x70072d50090071540070260093490240092d515401e00907c00701e01d", + "0x92b90090120072b90092d500902800900e0070280092d500901d009011", + "0x1200702c0092d50090070160070072d50091ea0092ae00702a1ea1542d5", + "0x2d500902a0090180070072d50091eb0092ae00702e1eb1542d500902c009", + "0x1e00702f0092d500902f0090200070310092d500902e00901800702f009", + "0x2d50090240091730070072d500900715400700734a0072d515403102f154", + "0x91ee0090240071ee0092d50090072a60071ed0092d5009007021007007", + "0x70380092d50090070280070360092d50091ee1ed1540260071ee0092d5", + "0x700906e00703a0092d50091ef0091ea0071ef0092d50090360381542b9", + "0x3f0092d50092ae00902a0071ec0092d500902000901d00703c0092d5009", + "0x1ec03c0120090420092d500903a0091eb0070400092d500901100902c007", + "0x2a200902f0072a20092d500900702e0070072d500900715400704204003f", + "0x729d04715434b0452a01542d51542a22ae0200110310072a20092d5009", + "0x72980092d50090071ee00729a0092d50090071ed0070072d5009007154", + "0x2960092d50090071ef00704c0092d500900703800704a0092d5009007036", + "0x92d50090071ec00704e0092d500900703c00728f0092d500900703a007", + "0x2d50090070420070520092d500900704000728c0092d500900703f007050", + "0x90070450070580092d50090072a00071660092d50090072a2007054009", + "0x4e28f29604c04a29829a02629d00716a0092d50090070470071690092d5", + "0x5d1542d50090e600929a0070e60092d500916a16905816605405228c050", + "0x4500902a0071730092d50092a000901d0070072d500905d0092980070e5", + "0x1750092d500901100902c0070680092d500900700906e0070660092d5009", + "0x1732ae0d500706c0092d500902400906600706a0092d50090e500904a007", + "0x92d51541710090f00071711700620600e40122d500906c06a175068066", + "0x90ef0070700092d50090070210070072d500900715400706e00934c178", + "0x2d500917f0090ed00707317f1542d500917d0090ee00717d0092d5009178", + "0x1540eb0071820092d50090700090520071800092d50090730090ec007007", + "0x2d50090740090580070072d50090760091660070760741542d5009182180", + "0xe600707d0092d500907c00916a0070072d500907a00916900707c07a154", + "0x2d500906200906e0071850092d500907f00905d00707f0092d500907d009", + "0x2c0071860092d500906000902a0070830092d50090e400901d007081009", + "0x851860830810120091870092d50091850091eb0070850092d5009170009", + "0x906200906e0071880092d500906e0091ea0070072d5009007154007187", + "0x70560092d500906000902a0070860092d50090e400901d00708b0092d5", + "0x5608608b0120091890092d50091880091eb00708d0092d500917000902c", + "0x2d50090070210070072d50090240091730070072d500900715400718908d", + "0x1540260070910092d50090910090240070910092d50090070e500718a009", + "0x2d500918b0941542b90070940092d500900702800718b0092d500909118a", + "0x1d0070980092d500900700906e0070960092d500918c0091ea00718c009", + "0x2d500901100902c00709a0092d500929d00902a00718d0092d5009047009", + "0x715400718e09c09a18d09801200918e0092d50090960091eb00709c009", + "0x70210070072d500901d0090e40070072d50090260091660070072d5009", + "0x709f0092d500909f00902400709f0092d500900707400718f0092d5009", + "0xa11961542b90071960092d50090070280070a10092d500909f18f154026", + "0xa60092d500900700906e0070a40092d50090dd0091ea0070dd0092d5009", + "0x1100902c0070a80092d50092ae00902a0071a40092d500902000901d007", + "0x71a70aa0a81a40a60120091a70092d50090a40091eb0070aa0092d5009", + "0x70ab0092d50090070210070072d500900e0090e40070072d5009007154", + "0x90ad0ab1540260070ad0092d50090ad0090240070ad0092d50090070e5", + "0x70dc0092d50091af1b11542b90071b10092d50090070280071af0092d5", + "0x901600901d0070b30092d500900700906e0070b10092d50090dc0091ea", + "0x70db0092d500901100902c0070da0092d500901800902a0071b70092d5", + "0x72d50090070070070f20db0da1b70b30120090f20092d50090b10091eb", + "0x72d500900715400701801615434d2ae0121542d5154154009154009007", + "0x2115407a0072a60092d500900e0091750070210092d500901200901d007", + "0x15400702600934e0240092d515401e00907c00701e01d0200112d50092a6", + "0x2b90092d500902800900e0070280092d500901d0090110070072d5009007", + "0x90070160070072d50091ea0092ae00702a1ea1542d50092b9009012007", + "0x70072d50091eb0092ae00702e1eb1542d500902c00901200702c0092d5", + "0x902f0090200070310092d500902e00901800702f0092d500902a009018", + "0x70072d500900715400700734f0072d515403102f15401e00702f0092d5", + "0x1ee0092d50090072a60071ed0092d50090070210070072d5009024009173", + "0x70280070360092d50091ee1ed1540260071ee0092d50091ee009024007", + "0x92d50091ef0091ea0071ef0092d50090360381542b90070380092d5009", + "0x902a0071ec0092d500902000901d00703c0092d500900700906e00703a", + "0x92d500903a0091eb0070400092d500901100902c00703f0092d50092ae", + "0x92d500900702e0070072d500900715400704204003f1ec03c012009042", + "0x452a01542d51542a22ae0200110310072a20092d50092a200902f0072a2", + "0x71ee00729a0092d50090071ed0070072d500900715400729d047154350", + "0x1ef00704c0092d500900703800704a0092d50090070360072980092d5009", + "0x704e0092d500900703c00728f0092d500900703a0072960092d5009007", + "0x520092d500900704000728c0092d500900703f0070500092d50090071ec", + "0x92d50090072a00071660092d50090072a20070540092d5009007042007", + "0x29829a02629d00716a0092d50090070470071690092d5009007045007058", + "0x929a0070e60092d500916a16905816605405228c05004e28f29604c04a", + "0x92d50092a000901d0070072d500905d0092980070e505d1542d50090e6", + "0x902c0070680092d500900700906e0070660092d500904500902a007173", + "0x92d500902400906600706a0092d50090e500904a0071750092d5009011", + "0xf00071711700620600e40122d500906c06a1750680661732ae0d600706c", + "0x2d50090070210070072d500900715400706e0093511780092d5154171009", + "0x707317f1542d500917d0090ee00717d0092d50091780090ef007070009", + "0x2d50090700090520071800092d50090730090ec0070072d500917f0090ed", + "0x70072d50090760091660070760741542d50091821801540eb007182009", + "0x907c00916a0070072d500907a00916900707c07a1542d5009074009058", + "0x71850092d500907f00905d00707f0092d500907d0090e600707d0092d5", + "0x906000902a0070830092d50090e400901d0070810092d500906200906e", + "0x91870092d50091850091eb0070850092d500917000902c0071860092d5", + "0x1880092d500906e0091ea0070072d5009007154007187085186083081012", + "0x6000902a0070860092d50090e400901d00708b0092d500906200906e007", + "0x1890092d50091880091eb00708d0092d500917000902c0070560092d5009", + "0x72d50090240091730070072d500900715400718908d05608608b012009", + "0x2d50090910090240070910092d50090070e500718a0092d5009007021007", + "0x2b90070940092d500900702800718b0092d500909118a154026007091009", + "0x900700906e0070960092d500918c0091ea00718c0092d500918b094154", + "0x709a0092d500929d00902a00718d0092d500904700901d0070980092d5", + "0x9a18d09801200918e0092d50090960091eb00709c0092d500901100902c", + "0x901d0090e40070072d50090260091660070072d500900715400718e09c", + "0x9f00902400709f0092d500900707400718f0092d50090070210070072d5", + "0x1960092d50090070280070a10092d500909f18f15402600709f0092d5009", + "0x906e0070a40092d50090dd0091ea0070dd0092d50090a11961542b9007", + "0x92d50092ae00902a0071a40092d500902000901d0070a60092d5009007", + "0xa60120091a70092d50090a40091eb0070aa0092d500901100902c0070a8", + "0x70210070072d500900e0090e40070072d50090071540071a70aa0a81a4", + "0x70ad0092d50090ad0090240070ad0092d50090070e50070ab0092d5009", + "0x1af1b11542b90071b10092d50090070280071af0092d50090ad0ab154026", + "0xb30092d500900700906e0070b10092d50090dc0091ea0070dc0092d5009", + "0x1100902c0070da0092d500901800902a0071b70092d500901600901d007", + "0x70f20db0da1b70b30120090f20092d50090b10091eb0070db0092d5009", + "0x70180161543522ae0121542d51541540091540090070072d5009007007", + "0x92d500900e0091750070210092d500901200901d0070072d5009007154", + "0x240092d515401e00907c00701e01d0200112d50092a602115407a0072a6", + "0x900e0070280092d500901d0090110070072d5009007154007026009353", + "0x2d50091ea0092ae00702a1ea1542d50092b90090120072b90092d5009028", + "0x92ae00702e1eb1542d500902c00901200702c0092d5009007016007007", + "0x310092d500902e00901800702f0092d500902a0090180070072d50091eb", + "0x1540070073540072d515403102f15401e00702f0092d500902f009020007", + "0x2a60071ed0092d50090070210070072d50090240091730070072d5009007", + "0x2d50091ee1ed1540260071ee0092d50091ee0090240071ee0092d5009007", + "0x1ea0071ef0092d50090360381542b90070380092d5009007028007036009", + "0x2d500902000901d00703c0092d500900700906e00703a0092d50091ef009", + "0x1eb0070400092d500901100902c00703f0092d50092ae00902a0071ec009", + "0x70072d500900715400704204003f1ec03c0120090420092d500903a009", + "0x2a22ae0200110310072a20092d50092a200902f0072a20092d500900702e", + "0x2d50090071ed0070072d500900715400729d0471543550452a01542d5154", + "0x900703800704a0092d50090070360072980092d50090071ee00729a009", + "0x703c00728f0092d500900703a0072960092d50090071ef00704c0092d5", + "0x4000728c0092d500900703f0070500092d50090071ec00704e0092d5009", + "0x71660092d50090072a20070540092d50090070420070520092d5009007", + "0x16a0092d50090070470071690092d50090070450070580092d50090072a0", + "0x2d500916a16905816605405228c05004e28f29604c04a29829a02629d007", + "0x1d0070072d500905d0092980070e505d1542d50090e600929a0070e6009", + "0x2d500900700906e0070660092d500904500902a0071730092d50092a0009", + "0x6600706a0092d50090e500904a0071750092d500901100902c007068009", + "0x600e40122d500906c06a1750680661732ae0d700706c0092d5009024009", + "0x72d500900715400706e0093561780092d51541710090f0007171170062", + "0x917d0090ee00717d0092d50091780090ef0070700092d5009007021007", + "0x71800092d50090730090ec0070072d500917f0090ed00707317f1542d5", + "0x91660070760741542d50091821801540eb0071820092d5009070009052", + "0x72d500907a00916900707c07a1542d50090740090580070072d5009076", + "0x7f00905d00707f0092d500907d0090e600707d0092d500907c00916a007", + "0x830092d50090e400901d0070810092d500906200906e0071850092d5009", + "0x1850091eb0070850092d500917000902c0071860092d500906000902a007", + "0x91ea0070072d50090071540071870851860830810120091870092d5009", + "0x92d50090e400901d00708b0092d500906200906e0071880092d500906e", + "0x91eb00708d0092d500917000902c0070560092d500906000902a007086", + "0x1730070072d500900715400718908d05608608b0120091890092d5009188", + "0x70910092d50090070e500718a0092d50090070210070072d5009024009", + "0x900702800718b0092d500909118a1540260070910092d5009091009024", + "0x960092d500918c0091ea00718c0092d500918b0941542b90070940092d5", + "0x29d00902a00718d0092d500904700901d0070980092d500900700906e007", + "0x18e0092d50090960091eb00709c0092d500901100902c00709a0092d5009", + "0x72d50090260091660070072d500900715400718e09c09a18d098012009", + "0x92d500900707400718f0092d50090070210070072d500901d0090e4007", + "0x280070a10092d500909f18f15402600709f0092d500909f00902400709f", + "0x2d50090dd0091ea0070dd0092d50090a11961542b90071960092d5009007", + "0x2a0071a40092d500902000901d0070a60092d500900700906e0070a4009", + "0x2d50090a40091eb0070aa0092d500901100902c0070a80092d50092ae009", + "0x900e0090e40070072d50090071540071a70aa0a81a40a60120091a7009", + "0xad0090240070ad0092d50090070e50070ab0092d50090070210070072d5", + "0x1b10092d50090070280071af0092d50090ad0ab1540260070ad0092d5009", + "0x906e0070b10092d50090dc0091ea0070dc0092d50091af1b11542b9007", + "0x92d500901800902a0071b70092d500901600901d0070b30092d5009007", + "0xb30120090f20092d50090b10091eb0070db0092d500901100902c0070da", + "0x2ae0121542d51541540091540090070072d50090070070070f20db0da1b7", + "0x1750070210092d500901200901d0070072d5009007154007018016154357", + "0x907c00701e01d0200112d50092a602115407a0072a60092d500900e009", + "0x2d500901d0090110070072d50090071540070260093580240092d515401e", + "0x702a1ea1542d50092b90090120072b90092d500902800900e007028009", + "0x1542d500902c00901200702c0092d50090070160070072d50091ea0092ae", + "0x901800702f0092d500902a0090180070072d50091eb0092ae00702e1eb", + "0x2d515403102f15401e00702f0092d500902f0090200070310092d500902e", + "0x90070210070072d50090240091730070072d5009007154007007359007", + "0x260071ee0092d50091ee0090240071ee0092d50090072a60071ed0092d5", + "0x90360381542b90070380092d50090070280070360092d50091ee1ed154", + "0x703c0092d500900700906e00703a0092d50091ef0091ea0071ef0092d5", + "0x901100902c00703f0092d50092ae00902a0071ec0092d500902000901d", + "0x15400704204003f1ec03c0120090420092d500903a0091eb0070400092d5", + "0x72a20092d50092a200902f0072a20092d500900702e0070072d5009007", + "0x72d500900715400729d04715435a0452a01542d51542a22ae020011031", + "0x92d50090070360072980092d50090071ee00729a0092d50090071ed007", + "0x2d500900703a0072960092d50090071ef00704c0092d500900703800704a", + "0x900703f0070500092d50090071ec00704e0092d500900703c00728f009", + "0x72a20070540092d50090070420070520092d500900704000728c0092d5", + "0x470071690092d50090070450070580092d50090072a00071660092d5009", + "0x16605405228c05004e28f29604c04a29829a02629d00716a0092d5009007", + "0x5d0092980070e505d1542d50090e600929a0070e60092d500916a169058", + "0x70660092d500904500902a0071730092d50092a000901d0070072d5009", + "0x90e500904a0071750092d500901100902c0070680092d500900700906e", + "0x6c06a1750680661732ae0d800706c0092d500902400906600706a0092d5", + "0x706e00935b1780092d51541710090f00071711700620600e40122d5009", + "0x17d0092d50091780090ef0070700092d50090070210070072d5009007154", + "0x730090ec0070072d500917f0090ed00707317f1542d500917d0090ee007", + "0x1542d50091821801540eb0071820092d50090700090520071800092d5009", + "0x16900707c07a1542d50090740090580070072d5009076009166007076074", + "0x92d500907d0090e600707d0092d500907c00916a0070072d500907a009", + "0x901d0070810092d500906200906e0071850092d500907f00905d00707f", + "0x92d500917000902c0071860092d500906000902a0070830092d50090e4", + "0x90071540071870851860830810120091870092d50091850091eb007085", + "0x1d00708b0092d500906200906e0071880092d500906e0091ea0070072d5", + "0x2d500917000902c0070560092d500906000902a0070860092d50090e4009", + "0x715400718908d05608608b0120091890092d50091880091eb00708d009", + "0x70e500718a0092d50090070210070072d50090240091730070072d5009", + "0x92d500909118a1540260070910092d50090910090240070910092d5009", + "0x91ea00718c0092d500918b0941542b90070940092d500900702800718b", + "0x92d500904700901d0070980092d500900700906e0070960092d500918c", + "0x91eb00709c0092d500901100902c00709a0092d500929d00902a00718d", + "0x1660070072d500900715400718e09c09a18d09801200918e0092d5009096", + "0x718f0092d50090070210070072d500901d0090e40070072d5009026009", + "0x909f18f15402600709f0092d500909f00902400709f0092d5009007074", + "0x70dd0092d50090a11961542b90071960092d50090070280070a10092d5", + "0x902000901d0070a60092d500900700906e0070a40092d50090dd0091ea", + "0x70aa0092d500901100902c0070a80092d50092ae00902a0071a40092d5", + "0x72d50090071540071a70aa0a81a40a60120091a70092d50090a40091eb", + "0x92d50090070e50070ab0092d50090070210070072d500900e0090e4007", + "0x280071af0092d50090ad0ab1540260070ad0092d50090ad0090240070ad", + "0x2d50090dc0091ea0070dc0092d50091af1b11542b90071b10092d5009007", + "0x2a0071b70092d500901600901d0070b30092d500900700906e0070b1009", + "0x2d50090b10091eb0070db0092d500901100902c0070da0092d5009018009", + "0x1540091540090070072d50090070070070f20db0da1b70b30120090f2009", + "0x901200901d0070072d500900715400701801615435c2ae0121542d5154", + "0x200112d50092a602115407a0072a60092d500900e0091750070210092d5", + "0x70072d500900715400702600935d0240092d515401e00907c00701e01d", + "0x92b90090120072b90092d500902800900e0070280092d500901d009011", + "0x1200702c0092d50090070160070072d50091ea0092ae00702a1ea1542d5", + "0x2d500902a0090180070072d50091eb0092ae00702e1eb1542d500902c009", + "0x1e00702f0092d500902f0090200070310092d500902e00901800702f009", + "0x2d50090240091730070072d500900715400700735e0072d515403102f154", + "0x91ee0090240071ee0092d50090072a60071ed0092d5009007021007007", + "0x70380092d50090070280070360092d50091ee1ed1540260071ee0092d5", + "0x700906e00703a0092d50091ef0091ea0071ef0092d50090360381542b9", + "0x3f0092d50092ae00902a0071ec0092d500902000901d00703c0092d5009", + "0x1ec03c0120090420092d500903a0091eb0070400092d500901100902c007", + "0x2a200902f0072a20092d500900702e0070072d500900715400704204003f", + "0x729d04715435f0452a01542d51542a22ae0200110310072a20092d5009", + "0x72980092d50090071ee00729a0092d50090071ed0070072d5009007154", + "0x2960092d50090071ef00704c0092d500900703800704a0092d5009007036", + "0x92d50090071ec00704e0092d500900703c00728f0092d500900703a007", + "0x2d50090070420070520092d500900704000728c0092d500900703f007050", + "0x90070450070580092d50090072a00071660092d50090072a2007054009", + "0x4e28f29604c04a29829a02629d00716a0092d50090070470071690092d5", + "0x1700092d50092a000901d0070e60092d500916a16905816605405228c050", + "0x1100902c0071730092d500900700906e0071710092d500904500902a007", + "0x1750092d50090240090660070680092d50090e600904a0070660092d5009", + "0x917f0070620600e40e505d0122d50091750680661731711702ae0d9007", + "0x2d500906a0090730070072d500900715400706c00936006a0092d5154062", + "0x916900707006e1542d50091780090580071780092d5009007021007007", + "0x17f0092d500917d0090e600717d0092d500907000916a0070072d500906e", + "0x5d00901d0070740092d50090e400906e0070730092d500917f00905d007", + "0x1820092d500906000902c0071800092d50090e500902a0070760092d5009", + "0x2d500900715400707a18218007607401200907a0092d50090730091eb007", + "0x901d00707d0092d50090e400906e00707c0092d500906c0091ea007007", + "0x92d500906000902c0071850092d50090e500902a00707f0092d500905d", + "0x900715400708308118507f07d0120090830092d500907c0091eb007081", + "0x90070e50071860092d50090070210070072d50090240091730070072d5", + "0x1870092d50090851861540260070850092d50090850090240070850092d5", + "0x8b0091ea00708b0092d50091871881542b90071880092d5009007028007", + "0x8d0092d500904700901d0070560092d500900700906e0070860092d5009", + "0x860091eb00718a0092d500901100902c0071890092d500929d00902a007", + "0x91660070072d500900715400709118a18908d0560120090910092d5009", + "0x7400718b0092d50090070210070072d500901d0090e40070072d5009026", + "0x2d500909418b1540260070940092d50090940090240070940092d5009007", + "0x1ea0070980092d500918c0961542b90070960092d500900702800718c009", + "0x2d500902000901d00709a0092d500900700906e00718d0092d5009098009", + "0x1eb00718f0092d500901100902c00718e0092d50092ae00902a00709c009", + "0x70072d500900715400709f18f18e09c09a01200909f0092d500918d009", + "0x1960092d50090070e50070a10092d50090070210070072d500900e0090e4", + "0x70280070dd0092d50091960a11540260071960092d5009196009024007", + "0x92d50090a60091ea0070a60092d50090dd0a41542b90070a40092d5009", + "0x902a0070aa0092d500901600901d0070a80092d500900700906e0071a4", + "0x92d50091a40091eb0070ab0092d500901100902c0071a70092d5009018", + "0x1541540091540090070072d50090070070070ad0ab1a70aa0a80120090ad", + "0x2d500901200901d0070072d50090071540070180161543612ae0121542d5", + "0x1d0200112d50092a602115407a0072a60092d500900e009175007021009", + "0x110070072d50090071540070260093620240092d515401e00907c00701e", + "0x2d50092b90090120072b90092d500902800900e0070280092d500901d009", + "0x901200702c0092d50090070160070072d50091ea0092ae00702a1ea154", + "0x92d500902a0090180070072d50091eb0092ae00702e1eb1542d500902c", + "0x15401e00702f0092d500902f0090200070310092d500902e00901800702f", + "0x72d50090240091730070072d50090071540070073630072d515403102f", + "0x2d50091ee0090240071ee0092d50090072a60071ed0092d5009007021007", + "0x2b90070380092d50090070280070360092d50091ee1ed1540260071ee009", + "0x900700906e00703a0092d50091ef0091ea0071ef0092d5009036038154", + "0x703f0092d50092ae00902a0071ec0092d500902000901d00703c0092d5", + "0x3f1ec03c0120090420092d500903a0091eb0070400092d500901100902c", + "0x92a200902f0072a20092d500900702e0070072d5009007154007042040", + "0x15400729d0471543640452a01542d51542a22ae0200110310072a20092d5", + "0x360072980092d50090071ee00729a0092d50090071ed0070072d5009007", + "0x72960092d50090071ef00704c0092d500900703800704a0092d5009007", + "0x500092d50090071ec00704e0092d500900703c00728f0092d500900703a", + "0x92d50090070420070520092d500900704000728c0092d500900703f007", + "0x2d50090070450070580092d50090072a00071660092d50090072a2007054", + "0x5004e28f29604c04a29829a02629d00716a0092d5009007047007169009", + "0x71700092d50092a000901d0070e60092d500916a16905816605405228c", + "0x901100902c0071730092d500900700906e0071710092d500904500902a", + "0x71750092d50090240090660070680092d50090e600904a0070660092d5", + "0x6200917f0070620600e40e505d0122d50091750680661731711702ae0de", + "0x72d500906a0090730070072d500900715400706c00936506a0092d5154", + "0x6e00916900707006e1542d50091780090580071780092d5009007021007", + "0x717f0092d500917d0090e600717d0092d500907000916a0070072d5009", + "0x905d00901d0070740092d50090e400906e0070730092d500917f00905d", + "0x71820092d500906000902c0071800092d50090e500902a0070760092d5", + "0x72d500900715400707a18218007607401200907a0092d50090730091eb", + "0x5d00901d00707d0092d50090e400906e00707c0092d500906c0091ea007", + "0x810092d500906000902c0071850092d50090e500902a00707f0092d5009", + "0x2d500900715400708308118507f07d0120090830092d500907c0091eb007", + "0x2d50090070e50071860092d50090070210070072d5009024009173007007", + "0x71870092d50090851861540260070850092d5009085009024007085009", + "0x908b0091ea00708b0092d50091871881542b90071880092d5009007028", + "0x708d0092d500904700901d0070560092d500900700906e0070860092d5", + "0x90860091eb00718a0092d500901100902c0071890092d500929d00902a", + "0x260091660070072d500900715400709118a18908d0560120090910092d5", + "0x707400718b0092d50090070210070072d500901d0090e40070072d5009", + "0x92d500909418b1540260070940092d50090940090240070940092d5009", + "0x91ea0070980092d500918c0961542b90070960092d500900702800718c", + "0x92d500902000901d00709a0092d500900700906e00718d0092d5009098", + "0x91eb00718f0092d500901100902c00718e0092d50092ae00902a00709c", + "0xe40070072d500900715400709f18f18e09c09a01200909f0092d500918d", + "0x71960092d50090070e50070a10092d50090070210070072d500900e009", + "0x90070280070dd0092d50091960a11540260071960092d5009196009024", + "0x1a40092d50090a60091ea0070a60092d50090dd0a41542b90070a40092d5", + "0x1800902a0070aa0092d500901600901d0070a80092d500900700906e007", + "0xad0092d50091a40091eb0070ab0092d500901100902c0071a70092d5009", + "0x2d51541540091540090070072d50090070070070ad0ab1a70aa0a8012009", + "0x92d500901200901d0070072d50090071540070180161543662ae012154", + "0x1e01d0200112d50092a602115407a0072a60092d500900e009175007021", + "0x90110070072d50090071540070260093670240092d515401e00907c007", + "0x1542d50092b90090120072b90092d500902800900e0070280092d500901d", + "0x2c00901200702c0092d50090070160070072d50091ea0092ae00702a1ea", + "0x2f0092d500902a0090180070072d50091eb0092ae00702e1eb1542d5009", + "0x2f15401e00702f0092d500902f0090200070310092d500902e009018007", + "0x70072d50090240091730070072d50090071540070073680072d5154031", + "0x92d50091ee0090240071ee0092d50090072a60071ed0092d5009007021", + "0x1542b90070380092d50090070280070360092d50091ee1ed1540260071ee", + "0x2d500900700906e00703a0092d50091ef0091ea0071ef0092d5009036038", + "0x2c00703f0092d50092ae00902a0071ec0092d500902000901d00703c009", + "0x4003f1ec03c0120090420092d500903a0091eb0070400092d5009011009", + "0x2d50092a200902f0072a20092d500900702e0070072d5009007154007042", + "0x715400729d0471543690452a01542d51542a22ae0200110310072a2009", + "0x70360072980092d50090071ee00729a0092d50090071ed0070072d5009", + "0x3a0072960092d50090071ef00704c0092d500900703800704a0092d5009", + "0x70500092d50090071ec00704e0092d500900703c00728f0092d5009007", + "0x540092d50090070420070520092d500900704000728c0092d500900703f", + "0x92d50090070450070580092d50090072a00071660092d50090072a2007", + "0x28c05004e28f29604c04a29829a02629d00716a0092d5009007047007169", + "0x2a0071700092d50092a000901d0070e60092d500916a169058166054052", + "0x2d500901100902c0071730092d500900700906e0071710092d5009045009", + "0xdf0071750092d50090240090660070680092d50090e600904a007066009", + "0x15406200917f0070620600e40e505d0122d50091750680661731711702ae", + "0x70072d500906a0090730070072d500900715400706c00936a06a0092d5", + "0x906e00916900707006e1542d50091780090580071780092d5009007021", + "0x5d00717f0092d500917d0090e600717d0092d500907000916a0070072d5", + "0x2d500905d00901d0070740092d50090e400906e0070730092d500917f009", + "0x1eb0071820092d500906000902c0071800092d50090e500902a007076009", + "0x70072d500900715400707a18218007607401200907a0092d5009073009", + "0x905d00901d00707d0092d50090e400906e00707c0092d500906c0091ea", + "0x70810092d500906000902c0071850092d50090e500902a00707f0092d5", + "0x72d500900715400708308118507f07d0120090830092d500907c0091eb", + "0x92d50090070e50071860092d50090070210070072d5009024009173007", + "0x280071870092d50090851861540260070850092d5009085009024007085", + "0x2d500908b0091ea00708b0092d50091871881542b90071880092d5009007", + "0x2a00708d0092d500904700901d0070560092d500900700906e007086009", + "0x2d50090860091eb00718a0092d500901100902c0071890092d500929d009", + "0x90260091660070072d500900715400709118a18908d056012009091009", + "0x900707400718b0092d50090070210070072d500901d0090e40070072d5", + "0x18c0092d500909418b1540260070940092d50090940090240070940092d5", + "0x980091ea0070980092d500918c0961542b90070960092d5009007028007", + "0x9c0092d500902000901d00709a0092d500900700906e00718d0092d5009", + "0x18d0091eb00718f0092d500901100902c00718e0092d50092ae00902a007", + "0x90e40070072d500900715400709f18f18e09c09a01200909f0092d5009", + "0x240071960092d50090070e50070a10092d50090070210070072d500900e", + "0x2d50090070280070dd0092d50091960a11540260071960092d5009196009", + "0x71a40092d50090a60091ea0070a60092d50090dd0a41542b90070a4009", + "0x901800902a0070aa0092d500901600901d0070a80092d500900700906e", + "0x90ad0092d50091a40091eb0070ab0092d500901100902c0071a70092d5", + "0x1542d51541540091540090070072d50090070070070ad0ab1a70aa0a8012", + "0x210092d500901200901d0070072d500900715400701801615436b2ae012", + "0x701e01d0200112d50092a602115407a0072a60092d500900e009175007", + "0x1d0090110070072d500900715400702600936c0240092d515401e00907c", + "0x1ea1542d50092b90090120072b90092d500902800900e0070280092d5009", + "0x902c00901200702c0092d50090070160070072d50091ea0092ae00702a", + "0x702f0092d500902a0090180070072d50091eb0092ae00702e1eb1542d5", + "0x3102f15401e00702f0092d500902f0090200070310092d500902e009018", + "0x210070072d50090240091730070072d500900715400700736d0072d5154", + "0x1ee0092d50091ee0090240071ee0092d50090072a60071ed0092d5009007", + "0x381542b90070380092d50090070280070360092d50091ee1ed154026007", + "0x92d500900700906e00703a0092d50091ef0091ea0071ef0092d5009036", + "0x902c00703f0092d50092ae00902a0071ec0092d500902000901d00703c", + "0x4204003f1ec03c0120090420092d500903a0091eb0070400092d5009011", + "0x92d50092a200902f0072a20092d500900702e0070072d5009007154007", + "0x900715400729d04715436e0452a01542d51542a22ae0200110310072a2", + "0x90070360072980092d50090071ee00729a0092d50090071ed0070072d5", + "0x703a0072960092d50090071ef00704c0092d500900703800704a0092d5", + "0x3f0070500092d50090071ec00704e0092d500900703c00728f0092d5009", + "0x70540092d50090070420070520092d500900704000728c0092d5009007", + "0x1690092d50090070450070580092d50090072a00071660092d50090072a2", + "0x5228c05004e28f29604c04a29829a02629d00716a0092d5009007047007", + "0x902a0071700092d50092a000901d0070e60092d500916a169058166054", + "0x92d500901100902c0071730092d500900700906e0071710092d5009045", + "0x2ae0ce0071750092d50090240090660070680092d50090e600904a007066", + "0x2d515406200917f0070620600e40e505d0122d5009175068066173171170", + "0x210070072d500906a0090730070072d500900715400706c00936f06a009", + "0x2d500906e00916900707006e1542d50091780090580071780092d5009007", + "0x905d00717f0092d500917d0090e600717d0092d500907000916a007007", + "0x92d500905d00901d0070740092d50090e400906e0070730092d500917f", + "0x91eb0071820092d500906000902c0071800092d50090e500902a007076", + "0x1ea0070072d500900715400707a18218007607401200907a0092d5009073", + "0x2d500905d00901d00707d0092d50090e400906e00707c0092d500906c009", + "0x1eb0070810092d500906000902c0071850092d50090e500902a00707f009", + "0x70072d500900715400708308118507f07d0120090830092d500907c009", + "0x850092d50090070e50071860092d50090070210070072d5009024009173", + "0x70280071870092d50090851861540260070850092d5009085009024007", + "0x92d500908b0091ea00708b0092d50091871881542b90071880092d5009", + "0x902a00708d0092d500904700901d0070560092d500900700906e007086", + "0x92d50090860091eb00718a0092d500901100902c0071890092d500929d", + "0x2d50090260091660070072d500900715400709118a18908d056012009091", + "0x2d500900707400718b0092d50090070210070072d500901d0090e4007007", + "0x718c0092d500909418b1540260070940092d5009094009024007094009", + "0x90980091ea0070980092d500918c0961542b90070960092d5009007028", + "0x709c0092d500902000901d00709a0092d500900700906e00718d0092d5", + "0x918d0091eb00718f0092d500901100902c00718e0092d50092ae00902a", + "0xe0090e40070072d500900715400709f18f18e09c09a01200909f0092d5", + "0x90240071960092d50090070e50070a10092d50090070210070072d5009", + "0x92d50090070280070dd0092d50091960a11540260071960092d5009196", + "0x6e0071a40092d50090a60091ea0070a60092d50090dd0a41542b90070a4", + "0x2d500901800902a0070aa0092d500901600901d0070a80092d5009007009", + "0x120090ad0092d50091a40091eb0070ab0092d500901100902c0071a7009", + "0x121542d51541540091540090070072d50090070070070ad0ab1a70aa0a8", + "0x70210092d500901200901d0070072d50090071540070180161543702ae", + "0x7c00701e01d0200112d50092a602115407a0072a60092d500900e009175", + "0x901d0090110070072d50090071540070260093710240092d515401e009", + "0x2a1ea1542d50092b90090120072b90092d500902800900e0070280092d5", + "0x2d500902c00901200702c0092d50090070160070072d50091ea0092ae007", + "0x1800702f0092d500902a0090180070072d50091eb0092ae00702e1eb154", + "0x15403102f15401e00702f0092d500902f0090200070310092d500902e009", + "0x70210070072d50090240091730070072d50090071540070073720072d5", + "0x71ee0092d50091ee0090240071ee0092d50090072a60071ed0092d5009", + "0x360381542b90070380092d50090070280070360092d50091ee1ed154026", + "0x3c0092d500900700906e00703a0092d50091ef0091ea0071ef0092d5009", + "0x1100902c00703f0092d50092ae00902a0071ec0092d500902000901d007", + "0x704204003f1ec03c0120090420092d500903a0091eb0070400092d5009", + "0x2a20092d50092a200902f0072a20092d500900702e0070072d5009007154", + "0x2d500900715400729d0471543730452a01542d51542a22ae020011031007", + "0x2d50090070360072980092d50090071ee00729a0092d50090071ed007007", + "0x900703a0072960092d50090071ef00704c0092d500900703800704a009", + "0x703f0070500092d50090071ec00704e0092d500900703c00728f0092d5", + "0x2a20070540092d50090070420070520092d500900704000728c0092d5009", + "0x71690092d50090070450070580092d50090072a00071660092d5009007", + "0x5405228c05004e28f29604c04a29829a02629d00716a0092d5009007047", + "0x4500902a0071700092d50092a000901d0070e60092d500916a169058166", + "0x660092d500901100902c0071730092d500900700906e0071710092d5009", + "0x1702ae0e00071750092d50090240090660070680092d50090e600904a007", + "0x92d515406200917f0070620600e40e505d0122d5009175068066173171", + "0x70210070072d500906a0090730070072d500900715400706c00937406a", + "0x72d500906e00916900707006e1542d50091780090580071780092d5009", + "0x17f00905d00717f0092d500917d0090e600717d0092d500907000916a007", + "0x760092d500905d00901d0070740092d50090e400906e0070730092d5009", + "0x730091eb0071820092d500906000902c0071800092d50090e500902a007", + "0x91ea0070072d500900715400707a18218007607401200907a0092d5009", + "0x92d500905d00901d00707d0092d50090e400906e00707c0092d500906c", + "0x91eb0070810092d500906000902c0071850092d50090e500902a00707f", + "0x1730070072d500900715400708308118507f07d0120090830092d500907c", + "0x70850092d50090070e50071860092d50090070210070072d5009024009", + "0x90070280071870092d50090851861540260070850092d5009085009024", + "0x860092d500908b0091ea00708b0092d50091871881542b90071880092d5", + "0x29d00902a00708d0092d500904700901d0070560092d500900700906e007", + "0x910092d50090860091eb00718a0092d500901100902c0071890092d5009", + "0x72d50090260091660070072d500900715400709118a18908d056012009", + "0x92d500900707400718b0092d50090070210070072d500901d0090e4007", + "0x2800718c0092d500909418b1540260070940092d5009094009024007094", + "0x2d50090980091ea0070980092d500918c0961542b90070960092d5009007", + "0x2a00709c0092d500902000901d00709a0092d500900700906e00718d009", + "0x2d500918d0091eb00718f0092d500901100902c00718e0092d50092ae009", + "0x900e0090e40070072d500900715400709f18f18e09c09a01200909f009", + "0x1960090240071960092d50090070e50070a10092d50090070210070072d5", + "0xa40092d50090070280070dd0092d50091960a11540260071960092d5009", + "0x906e0071a40092d50090a60091ea0070a60092d50090dd0a41542b9007", + "0x92d500901800902a0070aa0092d500901600901d0070a80092d5009007", + "0xa80120090ad0092d50091a40091eb0070ab0092d500901100902c0071a7", + "0x2ae0121542d51541540091540090070072d50090070070070ad0ab1a70aa", + "0x1750070210092d500901200901d0070072d5009007154007018016154375", + "0x907c00701e01d0200112d50092a602115407a0072a60092d500900e009", + "0x2d500901d0090110070072d50090071540070260093760240092d515401e", + "0x702a1ea1542d50092b90090120072b90092d500902800900e007028009", + "0x1542d500902c00901200702c0092d50090070160070072d50091ea0092ae", + "0x901800702f0092d500902a0090180070072d50091eb0092ae00702e1eb", + "0x2d515403102f15401e00702f0092d500902f0090200070310092d500902e", + "0x90070210070072d50090240091730070072d5009007154007007377007", + "0x260071ee0092d50091ee0090240071ee0092d50090072a60071ed0092d5", + "0x90360381542b90070380092d50090070280070360092d50091ee1ed154", + "0x703c0092d500900700906e00703a0092d50091ef0091ea0071ef0092d5", + "0x901100902c00703f0092d50092ae00902a0071ec0092d500902000901d", + "0x15400704204003f1ec03c0120090420092d500903a0091eb0070400092d5", + "0x72a20092d50092a200902f0072a20092d500900702e0070072d5009007", + "0x72d500900715400729d0471543780452a01542d51542a22ae020011031", + "0x92d50090070360072980092d50090071ee00729a0092d50090071ed007", + "0x2d500900703a0072960092d50090071ef00704c0092d500900703800704a", + "0x900703f0070500092d50090071ec00704e0092d500900703c00728f009", + "0x72a20070540092d50090070420070520092d500900704000728c0092d5", + "0x470071690092d50090070450070580092d50090072a00071660092d5009", + "0x16605405228c05004e28f29604c04a29829a02629d00716a0092d5009007", + "0x904500902a0071700092d50092a000901d0070e60092d500916a169058", + "0x70660092d500901100902c0071730092d500900700906e0071710092d5", + "0x1711702ae0e10071750092d50090240090660070680092d50090e600904a", + "0x6a0092d515406200917f0070620600e40e505d0122d5009175068066173", + "0x90070210070072d500906a0090730070072d500900715400706c009379", + "0x70072d500906e00916900707006e1542d50091780090580071780092d5", + "0x917f00905d00717f0092d500917d0090e600717d0092d500907000916a", + "0x70760092d500905d00901d0070740092d50090e400906e0070730092d5", + "0x90730091eb0071820092d500906000902c0071800092d50090e500902a", + "0x6c0091ea0070072d500900715400707a18218007607401200907a0092d5", + "0x7f0092d500905d00901d00707d0092d50090e400906e00707c0092d5009", + "0x7c0091eb0070810092d500906000902c0071850092d50090e500902a007", + "0x91730070072d500900715400708308118507f07d0120090830092d5009", + "0x240070850092d50090070e50071860092d50090070210070072d5009024", + "0x2d50090070280071870092d50090851861540260070850092d5009085009", + "0x70860092d500908b0091ea00708b0092d50091871881542b9007188009", + "0x929d00902a00708d0092d500904700901d0070560092d500900700906e", + "0x90910092d50090860091eb00718a0092d500901100902c0071890092d5", + "0x70072d50090260091660070072d500900715400709118a18908d056012", + "0x940092d500900707400718b0092d50090070210070072d500901d0090e4", + "0x702800718c0092d500909418b1540260070940092d5009094009024007", + "0x92d50090980091ea0070980092d500918c0961542b90070960092d5009", + "0x902a00709c0092d500902000901d00709a0092d500900700906e00718d", + "0x92d500918d0091eb00718f0092d500901100902c00718e0092d50092ae", + "0x2d500900e0090e40070072d500900715400709f18f18e09c09a01200909f", + "0x91960090240071960092d50090070e50070a10092d5009007021007007", + "0x70a40092d50090070280070dd0092d50091960a11540260071960092d5", + "0x700906e0071a40092d50090a60091ea0070a60092d50090dd0a41542b9", + "0x1a70092d500901800902a0070aa0092d500901600901d0070a80092d5009", + "0xaa0a80120090ad0092d50091a40091eb0070ab0092d500901100902c007", + "0x37a2ae0121542d51541540091540090070072d50090070070070ad0ab1a7", + "0x91750070210092d500901200901d0070072d5009007154007018016154", + "0x1e00907c00701e01d0200112d50092a602115407a0072a60092d500900e", + "0x92d500901d0090110070072d500900715400702600937b0240092d5154", + "0x2ae00702a1ea1542d50092b90090120072b90092d500902800900e007028", + "0x1eb1542d500902c00901200702c0092d50090070160070072d50091ea009", + "0x2e00901800702f0092d500902a0090180070072d50091eb0092ae00702e", + "0x72d515403102f15401e00702f0092d500902f0090200070310092d5009", + "0x2d50090070210070072d50090240091730070072d500900715400700737c", + "0x1540260071ee0092d50091ee0090240071ee0092d50090072a60071ed009", + "0x2d50090360381542b90070380092d50090070280070360092d50091ee1ed", + "0x1d00703c0092d500900700906e00703a0092d50091ef0091ea0071ef009", + "0x2d500901100902c00703f0092d50092ae00902a0071ec0092d5009020009", + "0x715400704204003f1ec03c0120090420092d500903a0091eb007040009", + "0x310072a20092d50092a200902f0072a20092d500900702e0070072d5009", + "0x70072d500900715400729d04715437d0452a01542d51542a22ae020011", + "0x4a0092d50090070360072980092d50090071ee00729a0092d50090071ed", + "0x92d500900703a0072960092d50090071ef00704c0092d5009007038007", + "0x2d500900703f0070500092d50090071ec00704e0092d500900703c00728f", + "0x90072a20070540092d50090070420070520092d500900704000728c009", + "0x70470071690092d50090070450070580092d50090072a00071660092d5", + "0x5816605405228c05004e28f29604c04a29829a02629d00716a0092d5009", + "0x2d500904500902a0071700092d50092a000901d0070e60092d500916a169", + "0x4a0070660092d500901100902c0071730092d500900700906e007171009", + "0x1731711702ae0e20071750092d50090240090660070680092d50090e6009", + "0x37e06a0092d515406200917f0070620600e40e505d0122d5009175068066", + "0x2d50090070210070072d500906a0090730070072d500900715400706c009", + "0x16a0070072d500906e00916900707006e1542d5009178009058007178009", + "0x2d500917f00905d00717f0092d500917d0090e600717d0092d5009070009", + "0x2a0070760092d500905d00901d0070740092d50090e400906e007073009", + "0x2d50090730091eb0071820092d500906000902c0071800092d50090e5009", + "0x906c0091ea0070072d500900715400707a18218007607401200907a009", + "0x707f0092d500905d00901d00707d0092d50090e400906e00707c0092d5", + "0x907c0091eb0070810092d500906000902c0071850092d50090e500902a", + "0x240091730070072d500900715400708308118507f07d0120090830092d5", + "0x90240070850092d50090070e50071860092d50090070210070072d5009", + "0x92d50090070280071870092d50090851861540260070850092d5009085", + "0x6e0070860092d500908b0091ea00708b0092d50091871881542b9007188", + "0x2d500929d00902a00708d0092d500904700901d0070560092d5009007009", + "0x120090910092d50090860091eb00718a0092d500901100902c007189009", + "0xe40070072d50090260091660070072d500900715400709118a18908d056", + "0x70940092d500900707400718b0092d50090070210070072d500901d009", + "0x900702800718c0092d500909418b1540260070940092d5009094009024", + "0x18d0092d50090980091ea0070980092d500918c0961542b90070960092d5", + "0x2ae00902a00709c0092d500902000901d00709a0092d500900700906e007", + "0x9f0092d500918d0091eb00718f0092d500901100902c00718e0092d5009", + "0x72d500900e0090e40070072d500900715400709f18f18e09c09a012009", + "0x2d50091960090240071960092d50090070e50070a10092d5009007021007", + "0x2b90070a40092d50090070280070dd0092d50091960a1154026007196009", + "0x900700906e0071a40092d50090a60091ea0070a60092d50090dd0a4154", + "0x71a70092d500901800902a0070aa0092d500901600901d0070a80092d5", + "0x1a70aa0a80120090ad0092d50091a40091eb0070ab0092d500901100902c", + "0x15437f2ae0121542d51541540091540090070072d50090070070070ad0ab", + "0xe0091750070210092d500901200901d0070072d5009007154007018016", + "0x15401e00907c00701e01d0200112d50092a602115407a0072a60092d5009", + "0x280092d500901d0090110070072d50090071540070260093800240092d5", + "0x92ae00702a1ea1542d50092b90090120072b90092d500902800900e007", + "0x2e1eb1542d500902c00901200702c0092d50090070160070072d50091ea", + "0x902e00901800702f0092d500902a0090180070072d50091eb0092ae007", + "0x3810072d515403102f15401e00702f0092d500902f0090200070310092d5", + "0x92d50090070210070072d50090240091730070072d5009007154007007", + "0x1ed1540260071ee0092d50091ee0090240071ee0092d50090072a60071ed", + "0x92d50090360381542b90070380092d50090070280070360092d50091ee", + "0x901d00703c0092d500900700906e00703a0092d50091ef0091ea0071ef", + "0x92d500901100902c00703f0092d50092ae00902a0071ec0092d5009020", + "0x900715400704204003f1ec03c0120090420092d500903a0091eb007040", + "0x110310072a20092d50092a200902f0072a20092d500900702e0070072d5", + "0x1ed0070072d500900715400729d0471543820452a01542d51542a22ae020", + "0x704a0092d50090070360072980092d50090071ee00729a0092d5009007", + "0x28f0092d500900703a0072960092d50090071ef00704c0092d5009007038", + "0x92d500900703f0070500092d50090071ec00704e0092d500900703c007", + "0x2d50090072a20070540092d50090070420070520092d500900704000728c", + "0x90070470071690092d50090070450070580092d50090072a0007166009", + "0x16905816605405228c05004e28f29604c04a29829a02629d00716a0092d5", + "0x92d500904500902a0071700092d50092a000901d0070e60092d500916a", + "0x904a0070660092d500901100902c0071730092d500900700906e007171", + "0x661731711702ae0e30071750092d50090240090660070680092d50090e6", + "0x938306a0092d515406200917f0070620600e40e505d0122d5009175068", + "0x92d50090070210070072d500906a0090730070072d500900715400706c", + "0x916a0070072d500906e00916900707006e1542d5009178009058007178", + "0x92d500917f00905d00717f0092d500917d0090e600717d0092d5009070", + "0x902a0070760092d500905d00901d0070740092d50090e400906e007073", + "0x92d50090730091eb0071820092d500906000902c0071800092d50090e5", + "0x2d500906c0091ea0070072d500900715400707a18218007607401200907a", + "0x2a00707f0092d500905d00901d00707d0092d50090e400906e00707c009", + "0x2d500907c0091eb0070810092d500906000902c0071850092d50090e5009", + "0x90240091730070072d500900715400708308118507f07d012009083009", + "0x850090240070850092d50090070e50071860092d50090070210070072d5", + "0x1880092d50090070280071870092d50090851861540260070850092d5009", + "0x906e0070860092d500908b0091ea00708b0092d50091871881542b9007", + "0x92d500929d00902a00708d0092d500904700901d0070560092d5009007", + "0x560120090910092d50090860091eb00718a0092d500901100902c007189", + "0x90e40070072d50090260091660070072d500900715400709118a18908d", + "0x240070940092d500900707400718b0092d50090070210070072d500901d", + "0x2d500900702800718c0092d500909418b1540260070940092d5009094009", + "0x718d0092d50090980091ea0070980092d500918c0961542b9007096009", + "0x92ae00902a00709c0092d500902000901d00709a0092d500900700906e", + "0x909f0092d500918d0091eb00718f0092d500901100902c00718e0092d5", + "0x70072d500900e0090e40070072d500900715400709f18f18e09c09a012", + "0x92d50091960090240071960092d50090070e50070a10092d5009007021", + "0x1542b90070a40092d50090070280070dd0092d50091960a1154026007196", + "0x2d500900700906e0071a40092d50090a60091ea0070a60092d50090dd0a4", + "0x2c0071a70092d500901800902a0070aa0092d500901600901d0070a8009", + "0xab1a70aa0a80120090ad0092d50091a40091eb0070ab0092d5009011009", + "0x161543842ae0121542d51541540091540090070072d50090070070070ad", + "0x900e0091750070210092d500901200901d0070072d5009007154007018", + "0x2d515401e00907c00701e01d0200112d50092a602115407a0072a60092d5", + "0x70280092d500901d0090110070072d5009007154007026009385024009", + "0x1ea0092ae00702a1ea1542d50092b90090120072b90092d500902800900e", + "0x702e1eb1542d500902c00901200702c0092d50090070160070072d5009", + "0x2d500902e00901800702f0092d500902a0090180070072d50091eb0092ae", + "0x73860072d515403102f15401e00702f0092d500902f009020007031009", + "0x1ed0092d50090070210070072d50090240091730070072d5009007154007", + "0x1ee1ed1540260071ee0092d50091ee0090240071ee0092d50090072a6007", + "0x1ef0092d50090360381542b90070380092d50090070280070360092d5009", + "0x2000901d00703c0092d500900700906e00703a0092d50091ef0091ea007", + "0x400092d500901100902c00703f0092d50092ae00902a0071ec0092d5009", + "0x2d500900715400704204003f1ec03c0120090420092d500903a0091eb007", + "0x200110310072a20092d50092a200902f0072a20092d500900702e007007", + "0x71ed0070072d500900715400729d0471543870452a01542d51542a22ae", + "0x3800704a0092d50090070360072980092d50090071ee00729a0092d5009", + "0x728f0092d500900703a0072960092d50090071ef00704c0092d5009007", + "0x28c0092d500900703f0070500092d50090071ec00704e0092d500900703c", + "0x92d50090072a20070540092d50090070420070520092d5009007040007", + "0x2d50090070470071690092d50090070450070580092d50090072a0007166", + "0x16a16905816605405228c05004e28f29604c04a29829a02629d00716a009", + "0x1710092d500904500902a0071700092d50092a000901d0070e60092d5009", + "0xe600904a0070660092d500901100902c0071730092d500900700906e007", + "0x680661731711702ae0e70071750092d50090240090660070680092d5009", + "0x6c00938806a0092d515406200917f0070620600e40e505d0122d5009175", + "0x1780092d50090070210070072d500906a0090730070072d5009007154007", + "0x7000916a0070072d500906e00916900707006e1542d5009178009058007", + "0x730092d500917f00905d00717f0092d500917d0090e600717d0092d5009", + "0xe500902a0070760092d500905d00901d0070740092d50090e400906e007", + "0x7a0092d50090730091eb0071820092d500906000902c0071800092d5009", + "0x92d500906c0091ea0070072d500900715400707a182180076074012009", + "0x902a00707f0092d500905d00901d00707d0092d50090e400906e00707c", + "0x92d500907c0091eb0070810092d500906000902c0071850092d50090e5", + "0x2d50090240091730070072d500900715400708308118507f07d012009083", + "0x90850090240070850092d50090070e50071860092d5009007021007007", + "0x71880092d50090070280071870092d50090851861540260070850092d5", + "0x700906e0070860092d500908b0091ea00708b0092d50091871881542b9", + "0x1890092d500929d00902a00708d0092d500904700901d0070560092d5009", + "0x8d0560120090910092d50090860091eb00718a0092d500901100902c007", + "0x1d0090e40070072d50090260091660070072d500900715400709118a189", + "0x90240070940092d500900707400718b0092d50090070210070072d5009", + "0x92d500900702800718c0092d500909418b1540260070940092d5009094", + "0x6e00718d0092d50090980091ea0070980092d500918c0961542b9007096", + "0x2d50092ae00902a00709c0092d500902000901d00709a0092d5009007009", + "0x1200909f0092d500918d0091eb00718f0092d500901100902c00718e009", + "0x210070072d500900e0090e40070072d500900715400709f18f18e09c09a", + "0x1960092d50091960090240071960092d50090070e50070a10092d5009007", + "0xa41542b90070a40092d50090070280070dd0092d50091960a1154026007", + "0x92d500900700906e0071a40092d50090a60091ea0070a60092d50090dd", + "0x902c0071a70092d500901800902a0070aa0092d500901600901d0070a8", + "0xad0ab1a70aa0a80120090ad0092d50091a40091eb0070ab0092d5009011", + "0x180161543892ae0121542d51541540091540090070072d5009007007007", + "0x2d500900e0091750070210092d500901200901d0070072d5009007154007", + "0x92d515401e00907c00701e01d0200112d50092a602115407a0072a6009", + "0xe0070280092d500901d0090110070072d500900715400702600938a024", + "0x91ea0092ae00702a1ea1542d50092b90090120072b90092d5009028009", + "0x2ae00702e1eb1542d500902c00901200702c0092d50090070160070072d5", + "0x92d500902e00901800702f0092d500902a0090180070072d50091eb009", + "0x700738b0072d515403102f15401e00702f0092d500902f009020007031", + "0x71ed0092d50090070210070072d50090240091730070072d5009007154", + "0x91ee1ed1540260071ee0092d50091ee0090240071ee0092d50090072a6", + "0x71ef0092d50090360381542b90070380092d50090070280070360092d5", + "0x902000901d00703c0092d500900700906e00703a0092d50091ef0091ea", + "0x70400092d500901100902c00703f0092d50092ae00902a0071ec0092d5", + "0x72d500900715400704204003f1ec03c0120090420092d500903a0091eb", + "0x2ae0200110310072a20092d50092a200902f0072a20092d500900702e007", + "0x90071ed0070072d500900715400729d04715438c0452a01542d51542a2", + "0x703800704a0092d50090070360072980092d50090071ee00729a0092d5", + "0x3c00728f0092d500900703a0072960092d50090071ef00704c0092d5009", + "0x728c0092d500900703f0070500092d50090071ec00704e0092d5009007", + "0x1660092d50090072a20070540092d50090070420070520092d5009007040", + "0x92d50090070470071690092d50090070450070580092d50090072a0007", + "0x916a16905816605405228c05004e28f29604c04a29829a02629d00716a", + "0x71710092d500904500902a0071700092d50092a000901d0070e60092d5", + "0x90e600904a0070660092d500901100902c0071730092d500900700906e", + "0x1750680661731711702ae1cc0071750092d50090240090660070680092d5", + "0x706c00938d06a0092d515406200917f0070620600e40e505d0122d5009", + "0x71780092d50090070210070072d500906a0090730070072d5009007154", + "0x907000916a0070072d500906e00916900707006e1542d5009178009058", + "0x70730092d500917f00905d00717f0092d500917d0090e600717d0092d5", + "0x90e500902a0070760092d500905d00901d0070740092d50090e400906e", + "0x907a0092d50090730091eb0071820092d500906000902c0071800092d5", + "0x7c0092d500906c0091ea0070072d500900715400707a182180076074012", + "0xe500902a00707f0092d500905d00901d00707d0092d50090e400906e007", + "0x830092d500907c0091eb0070810092d500906000902c0071850092d5009", + "0x72d50090240091730070072d500900715400708308118507f07d012009", + "0x2d50090850090240070850092d50090070e50071860092d5009007021007", + "0x2b90071880092d50090070280071870092d5009085186154026007085009", + "0x900700906e0070860092d500908b0091ea00708b0092d5009187188154", + "0x71890092d500929d00902a00708d0092d500904700901d0070560092d5", + "0x18908d0560120090910092d50090860091eb00718a0092d500901100902c", + "0x901d0090e40070072d50090260091660070072d500900715400709118a", + "0x940090240070940092d500900707400718b0092d50090070210070072d5", + "0x960092d500900702800718c0092d500909418b1540260070940092d5009", + "0x906e00718d0092d50090980091ea0070980092d500918c0961542b9007", + "0x92d50092ae00902a00709c0092d500902000901d00709a0092d5009007", + "0x9a01200909f0092d500918d0091eb00718f0092d500901100902c00718e", + "0x70210070072d500900e0090e40070072d500900715400709f18f18e09c", + "0x71960092d50091960090240071960092d50090070e50070a10092d5009", + "0xdd0a41542b90070a40092d50090070280070dd0092d50091960a1154026", + "0xa80092d500900700906e0071a40092d50090a60091ea0070a60092d5009", + "0x1100902c0071a70092d500901800902a0070aa0092d500901600901d007", + "0x70ad0ab1a70aa0a80120090ad0092d50091a40091eb0070ab0092d5009", + "0x701801615438e2ae0121542d51541540091540090070072d5009007007", + "0x92d500900e0091750070210092d500901200901d0070072d5009007154", + "0x240092d515401e00907c00701e01d0200112d50092a602115407a0072a6", + "0x900e0070280092d500901d0090110070072d500900715400702600938f", + "0x2d50091ea0092ae00702a1ea1542d50092b90090120072b90092d5009028", + "0x92ae00702e1eb1542d500902c00901200702c0092d5009007016007007", + "0x310092d500902e00901800702f0092d500902a0090180070072d50091eb", + "0x1540070073900072d515403102f15401e00702f0092d500902f009020007", + "0x2a60071ed0092d50090070210070072d50090240091730070072d5009007", + "0x2d50091ee1ed1540260071ee0092d50091ee0090240071ee0092d5009007", + "0x1ea0071ef0092d50090360381542b90070380092d5009007028007036009", + "0x2d500902000901d00703c0092d500900700906e00703a0092d50091ef009", + "0x1eb0070400092d500901100902c00703f0092d50092ae00902a0071ec009", + "0x70072d500900715400704204003f1ec03c0120090420092d500903a009", + "0x2a22ae0200110310072a20092d50092a200902f0072a20092d500900702e", + "0x2d50090071ed0070072d500900715400729d0471543910452a01542d5154", + "0x900703800704a0092d50090070360072980092d50090071ee00729a009", + "0x703c00728f0092d500900703a0072960092d50090071ef00704c0092d5", + "0x4000728c0092d500900703f0070500092d50090071ec00704e0092d5009", + "0x71660092d50090072a20070540092d50090070420070520092d5009007", + "0x16a0092d50090070470071690092d50090070450070580092d50090072a0", + "0x2d500916a16905816605405228c05004e28f29604c04a29829a02629d007", + "0x6e0071710092d500904500902a0071700092d50092a000901d0070e6009", + "0x2d50090e600904a0070660092d500901100902c0071730092d5009007009", + "0x91750680661731711702ae1cd0071750092d5009024009066007068009", + "0x15400706c00939206a0092d515406200917f0070620600e40e505d0122d5", + "0x580071780092d50090070210070072d500906a0090730070072d5009007", + "0x2d500907000916a0070072d500906e00916900707006e1542d5009178009", + "0x6e0070730092d500917f00905d00717f0092d500917d0090e600717d009", + "0x2d50090e500902a0070760092d500905d00901d0070740092d50090e4009", + "0x1200907a0092d50090730091eb0071820092d500906000902c007180009", + "0x707c0092d500906c0091ea0070072d500900715400707a182180076074", + "0x90e500902a00707f0092d500905d00901d00707d0092d50090e400906e", + "0x90830092d500907c0091eb0070810092d500906000902c0071850092d5", + "0x70072d50090240091730070072d500900715400708308118507f07d012", + "0x92d50090850090240070850092d50090070e50071860092d5009007021", + "0x1542b90071880092d50090070280071870092d5009085186154026007085", + "0x2d500900700906e0070860092d500908b0091ea00708b0092d5009187188", + "0x2c0071890092d500929d00902a00708d0092d500904700901d007056009", + "0x18a18908d0560120090910092d50090860091eb00718a0092d5009011009", + "0x2d500901d0090e40070072d50090260091660070072d5009007154007091", + "0x90940090240070940092d500900707400718b0092d5009007021007007", + "0x70960092d500900702800718c0092d500909418b1540260070940092d5", + "0x700906e00718d0092d50090980091ea0070980092d500918c0961542b9", + "0x18e0092d50092ae00902a00709c0092d500902000901d00709a0092d5009", + "0x9c09a01200909f0092d500918d0091eb00718f0092d500901100902c007", + "0x90070210070072d500900e0090e40070072d500900715400709f18f18e", + "0x260071960092d50091960090240071960092d50090070e50070a10092d5", + "0x90dd0a41542b90070a40092d50090070280070dd0092d50091960a1154", + "0x70a80092d500900700906e0071a40092d50090a60091ea0070a60092d5", + "0x901100902c0071a70092d500901800902a0070aa0092d500901600901d", + "0x70070ad0ab1a70aa0a80120090ad0092d50091a40091eb0070ab0092d5", + "0x1540070180161543932ae0121542d51541540091540090070072d5009007", + "0x2a60092d500900e0091750070210092d500901200901d0070072d5009007", + "0x3940240092d515401e00907c00701e01d0200112d50092a602115407a007", + "0x2800900e0070280092d500901d0090110070072d5009007154007026009", + "0x72d50091ea0092ae00702a1ea1542d50092b90090120072b90092d5009", + "0x1eb0092ae00702e1eb1542d500902c00901200702c0092d5009007016007", + "0x70310092d500902e00901800702f0092d500902a0090180070072d5009", + "0x71540070073950072d515403102f15401e00702f0092d500902f009020", + "0x72a60071ed0092d50090070210070072d50090240091730070072d5009", + "0x92d50091ee1ed1540260071ee0092d50091ee0090240071ee0092d5009", + "0x91ea0071ef0092d50090360381542b90070380092d5009007028007036", + "0x92d500902000901d00703c0092d500900700906e00703a0092d50091ef", + "0x91eb0070400092d500901100902c00703f0092d50092ae00902a0071ec", + "0x2e0070072d500900715400704204003f1ec03c0120090420092d500903a", + "0x1542a22ae0200110310072a20092d50092a200902f0072a20092d5009007", + "0x92d50090071ed0070072d500900715400729d0471543960452a01542d5", + "0x2d500900703800704a0092d50090070360072980092d50090071ee00729a", + "0x900703c00728f0092d500900703a0072960092d50090071ef00704c009", + "0x704000728c0092d500900703f0070500092d50090071ec00704e0092d5", + "0x2a00071660092d50090072a20070540092d50090070420070520092d5009", + "0x716a0092d50090070470071690092d50090070450070580092d5009007", + "0x92d500916a16905816605405228c05004e28f29604c04a29829a02629d", + "0x906e0071710092d500904500902a0071700092d50092a000901d0070e6", + "0x92d50090e600904a0070660092d500901100902c0071730092d5009007", + "0x2d50091750680661731711702ae0f80071750092d5009024009066007068", + "0x715400706c00939706a0092d515406200917f0070620600e40e505d012", + "0x90580071780092d50090070210070072d500906a0090730070072d5009", + "0x92d500907000916a0070072d500906e00916900707006e1542d5009178", + "0x906e0070730092d500917f00905d00717f0092d500917d0090e600717d", + "0x92d50090e500902a0070760092d500905d00901d0070740092d50090e4", + "0x7401200907a0092d50090730091eb0071820092d500906000902c007180", + "0x6e00707c0092d500906c0091ea0070072d500900715400707a182180076", + "0x2d50090e500902a00707f0092d500905d00901d00707d0092d50090e4009", + "0x120090830092d500907c0091eb0070810092d500906000902c007185009", + "0x210070072d50090240091730070072d500900715400708308118507f07d", + "0x850092d50090850090240070850092d50090070e50071860092d5009007", + "0x1881542b90071880092d50090070280071870092d5009085186154026007", + "0x92d500900700906e0070860092d500908b0091ea00708b0092d5009187", + "0x902c0071890092d500929d00902a00708d0092d500904700901d007056", + "0x9118a18908d0560120090910092d50090860091eb00718a0092d5009011", + "0x72d500901d0090e40070072d50090260091660070072d5009007154007", + "0x2d50090940090240070940092d500900707400718b0092d5009007021007", + "0x2b90070960092d500900702800718c0092d500909418b154026007094009", + "0x900700906e00718d0092d50090980091ea0070980092d500918c096154", + "0x718e0092d50092ae00902a00709c0092d500902000901d00709a0092d5", + "0x18e09c09a01200909f0092d500918d0091eb00718f0092d500901100902c", + "0x2d50090070210070072d500900e0090e40070072d500900715400709f18f", + "0x1540260071960092d50091960090240071960092d50090070e50070a1009", + "0x2d50090dd0a41542b90070a40092d50090070280070dd0092d50091960a1", + "0x1d0070a80092d500900700906e0071a40092d50090a60091ea0070a6009", + "0x2d500901100902c0071a70092d500901800902a0070aa0092d5009016009", + "0x70070070ad0ab1a70aa0a80120090ad0092d50091a40091eb0070ab009", + "0x71540070180161543982ae0121542d51541540091540090070072d5009", + "0x72a60092d500900e0091750070210092d500901200901d0070072d5009", + "0x93990240092d515401e00907c00701e01d0200112d50092a602115407a", + "0x902800900e0070280092d500901d0090110070072d5009007154007026", + "0x70072d50091ea0092ae00702a1ea1542d50092b90090120072b90092d5", + "0x91eb0092ae00702e1eb1542d500902c00901200702c0092d5009007016", + "0x200070310092d500902e00901800702f0092d500902a0090180070072d5", + "0x900715400700739a0072d515403102f15401e00702f0092d500902f009", + "0x90072a60071ed0092d50090070210070072d50090240091730070072d5", + "0x360092d50091ee1ed1540260071ee0092d50091ee0090240071ee0092d5", + "0x1ef0091ea0071ef0092d50090360381542b90070380092d5009007028007", + "0x1ec0092d500902000901d00703c0092d500900700906e00703a0092d5009", + "0x3a0091eb0070400092d500901100902c00703f0092d50092ae00902a007", + "0x702e0070072d500900715400704204003f1ec03c0120090420092d5009", + "0x2d51542a22ae0200110310072a20092d50092a200902f0072a20092d5009", + "0x29a0092d50090071ed0070072d500900715400729d04715439b0452a0154", + "0x92d500900703800704a0092d50090070360072980092d50090071ee007", + "0x2d500900703c00728f0092d500900703a0072960092d50090071ef00704c", + "0x900704000728c0092d500900703f0070500092d50090071ec00704e009", + "0x72a00071660092d50090072a20070540092d50090070420070520092d5", + "0x29d00716a0092d50090070470071690092d50090070450070580092d5009", + "0xe60092d500916a16905816605405228c05004e28f29604c04a29829a026", + "0x700906e0071710092d500904500902a0071700092d50092a000901d007", + "0x680092d50090e600904a0070660092d500901100902c0071730092d5009", + "0x122d50091750680661731711702ae1d00071750092d5009024009066007", + "0x900715400706c00939c06a0092d515406200917f0070620600e40e505d", + "0x1780090580071780092d50090070210070072d500906a0090730070072d5", + "0x17d0092d500907000916a0070072d500906e00916900707006e1542d5009", + "0xe400906e0070730092d500917f00905d00717f0092d500917d0090e6007", + "0x1800092d50090e500902a0070760092d500905d00901d0070740092d5009", + "0x7607401200907a0092d50090730091eb0071820092d500906000902c007", + "0x906e00707c0092d500906c0091ea0070072d500900715400707a182180", + "0x92d50090e500902a00707f0092d500905d00901d00707d0092d50090e4", + "0x7d0120090830092d500907c0091eb0070810092d500906000902c007185", + "0x70210070072d50090240091730070072d500900715400708308118507f", + "0x70850092d50090850090240070850092d50090070e50071860092d5009", + "0x1871881542b90071880092d50090070280071870092d5009085186154026", + "0x560092d500900700906e0070860092d500908b0091ea00708b0092d5009", + "0x1100902c0071890092d500929d00902a00708d0092d500904700901d007", + "0x709118a18908d0560120090910092d50090860091eb00718a0092d5009", + "0x70072d500901d0090e40070072d50090260091660070072d5009007154", + "0x92d50090940090240070940092d500900707400718b0092d5009007021", + "0x1542b90070960092d500900702800718c0092d500909418b154026007094", + "0x2d500900700906e00718d0092d50090980091ea0070980092d500918c096", + "0x2c00718e0092d50092ae00902a00709c0092d500902000901d00709a009", + "0x18f18e09c09a01200909f0092d500918d0091eb00718f0092d5009011009", + "0x92d50090070210070072d500900e0090e40070072d500900715400709f", + "0xa11540260071960092d50091960090240071960092d50090070e50070a1", + "0x92d50090dd0a41542b90070a40092d50090070280070dd0092d5009196", + "0x901d0070a80092d500900700906e0071a40092d50090a60091ea0070a6", + "0x92d500901100902c0071a70092d500901800902a0070aa0092d5009016", + "0x90070070070ad0ab1a70aa0a80120090ad0092d50091a40091eb0070ab", + "0x900715400701801615439d2ae0121542d51541540091540090070072d5", + "0x7a0072a60092d500900e0091750070210092d500901200901d0070072d5", + "0x2600939e0240092d515401e00907c00701e01d0200112d50092a6021154", + "0x2d500902800900e0070280092d500901d0090110070072d5009007154007", + "0x160070072d50091ea0092ae00702a1ea1542d50092b90090120072b9009", + "0x2d50091eb0092ae00702e1eb1542d500902c00901200702c0092d5009007", + "0x90200070310092d500902e00901800702f0092d500902a009018007007", + "0x2d500900715400700739f0072d515403102f15401e00702f0092d500902f", + "0x2d50090072a60071ed0092d50090070210070072d5009024009173007007", + "0x70360092d50091ee1ed1540260071ee0092d50091ee0090240071ee009", + "0x91ef0091ea0071ef0092d50090360381542b90070380092d5009007028", + "0x71ec0092d500902000901d00703c0092d500900700906e00703a0092d5", + "0x903a0091eb0070400092d500901100902c00703f0092d50092ae00902a", + "0x900702e0070072d500900715400704204003f1ec03c0120090420092d5", + "0x1542d51542a22ae0200110310072a20092d50092a200902f0072a20092d5", + "0x729a0092d50090071ed0070072d500900715400729d0471543a00452a0", + "0x4c0092d500900703800704a0092d50090070360072980092d50090071ee", + "0x92d500900703c00728f0092d500900703a0072960092d50090071ef007", + "0x2d500900704000728c0092d500900703f0070500092d50090071ec00704e", + "0x90072a00071660092d50090072a20070540092d5009007042007052009", + "0x2629d00716a0092d50090070470071690092d50090070450070580092d5", + "0x70e60092d500916a16905816605405228c05004e28f29604c04a29829a", + "0x900700906e0071710092d500904500902a0071700092d50092a000901d", + "0x70680092d50090e600904a0070660092d500901100902c0071730092d5", + "0x5d0122d50091750680661731711702ae0fa0071750092d5009024009066", + "0x2d500900715400706c0093a106a0092d515406200917f0070620600e40e5", + "0x91780090580071780092d50090070210070072d500906a009073007007", + "0x717d0092d500907000916a0070072d500906e00916900707006e1542d5", + "0x90e400906e0070730092d500917f00905d00717f0092d500917d0090e6", + "0x71800092d50090e500902a0070760092d500905d00901d0070740092d5", + "0x18007607401200907a0092d50090730091eb0071820092d500906000902c", + "0xe400906e00707c0092d500906c0091ea0070072d500900715400707a182", + "0x1850092d50090e500902a00707f0092d500905d00901d00707d0092d5009", + "0x7f07d0120090830092d500907c0091eb0070810092d500906000902c007", + "0x90070210070072d50090240091730070072d5009007154007083081185", + "0x260070850092d50090850090240070850092d50090070e50071860092d5", + "0x91871881542b90071880092d50090070280071870092d5009085186154", + "0x70560092d500900700906e0070860092d500908b0091ea00708b0092d5", + "0x901100902c0071890092d500929d00902a00708d0092d500904700901d", + "0x15400709118a18908d0560120090910092d50090860091eb00718a0092d5", + "0x210070072d500901d0090e40070072d50090260091660070072d5009007", + "0x940092d50090940090240070940092d500900707400718b0092d5009007", + "0x961542b90070960092d500900702800718c0092d500909418b154026007", + "0x92d500900700906e00718d0092d50090980091ea0070980092d500918c", + "0x902c00718e0092d50092ae00902a00709c0092d500902000901d00709a", + "0x9f18f18e09c09a01200909f0092d500918d0091eb00718f0092d5009011", + "0xa10092d50090070210070072d500900e0090e40070072d5009007154007", + "0x1960a11540260071960092d50091960090240071960092d50090070e5007", + "0xa60092d50090dd0a41542b90070a40092d50090070280070dd0092d5009", + "0x1600901d0070a80092d500900700906e0071a40092d50090a60091ea007", + "0xab0092d500901100902c0071a70092d500901800902a0070aa0092d5009", + "0x2d50090070070070ad0ab1a70aa0a80120090ad0092d50091a40091eb007", + "0x2d50090071540070180161543a22ae0121542d5154154009154009007007", + "0x15407a0072a60092d500900e0091750070210092d500901200901d007007", + "0x70260093a30240092d515401e00907c00701e01d0200112d50092a6021", + "0x92d500902800900e0070280092d500901d0090110070072d5009007154", + "0x70160070072d50091ea0092ae00702a1ea1542d50092b90090120072b9", + "0x72d50091eb0092ae00702e1eb1542d500902c00901200702c0092d5009", + "0x2f0090200070310092d500902e00901800702f0092d500902a009018007", + "0x72d50090071540070073a40072d515403102f15401e00702f0092d5009", + "0x92d50090072a60071ed0092d50090070210070072d5009024009173007", + "0x280070360092d50091ee1ed1540260071ee0092d50091ee0090240071ee", + "0x2d50091ef0091ea0071ef0092d50090360381542b90070380092d5009007", + "0x2a0071ec0092d500902000901d00703c0092d500900700906e00703a009", + "0x2d500903a0091eb0070400092d500901100902c00703f0092d50092ae009", + "0x2d500900702e0070072d500900715400704204003f1ec03c012009042009", + "0x2a01542d51542a22ae0200110310072a20092d50092a200902f0072a2009", + "0x1ee00729a0092d50090071ed0070072d500900715400729d0471543a5045", + "0x704c0092d500900703800704a0092d50090070360072980092d5009007", + "0x4e0092d500900703c00728f0092d500900703a0072960092d50090071ef", + "0x92d500900704000728c0092d500900703f0070500092d50090071ec007", + "0x2d50090072a00071660092d50090072a20070540092d5009007042007052", + "0x29a02629d00716a0092d50090070470071690092d5009007045007058009", + "0x1d0070e60092d500916a16905816605405228c05004e28f29604c04a298", + "0x2d500900700906e0071710092d500904500902a0071700092d50092a0009", + "0x660070680092d50090e600904a0070660092d500901100902c007173009", + "0xe505d0122d50091750680661731711702ae1d40071750092d5009024009", + "0x72d500900715400706c0093a606a0092d515406200917f0070620600e4", + "0x2d50091780090580071780092d50090070210070072d500906a009073007", + "0xe600717d0092d500907000916a0070072d500906e00916900707006e154", + "0x2d50090e400906e0070730092d500917f00905d00717f0092d500917d009", + "0x2c0071800092d50090e500902a0070760092d500905d00901d007074009", + "0x18218007607401200907a0092d50090730091eb0071820092d5009060009", + "0x90e400906e00707c0092d500906c0091ea0070072d500900715400707a", + "0x71850092d50090e500902a00707f0092d500905d00901d00707d0092d5", + "0x18507f07d0120090830092d500907c0091eb0070810092d500906000902c", + "0x2d50090070210070072d50090240091730070072d5009007154007083081", + "0x1540260070850092d50090850090240070850092d50090070e5007186009", + "0x2d50091871881542b90071880092d50090070280071870092d5009085186", + "0x1d0070560092d500900700906e0070860092d500908b0091ea00708b009", + "0x2d500901100902c0071890092d500929d00902a00708d0092d5009047009", + "0x715400709118a18908d0560120090910092d50090860091eb00718a009", + "0x70210070072d500901d0090e40070072d50090260091660070072d5009", + "0x70940092d50090940090240070940092d500900707400718b0092d5009", + "0x18c0961542b90070960092d500900702800718c0092d500909418b154026", + "0x9a0092d500900700906e00718d0092d50090980091ea0070980092d5009", + "0x1100902c00718e0092d50092ae00902a00709c0092d500902000901d007", + "0x709f18f18e09c09a01200909f0092d500918d0091eb00718f0092d5009", + "0x70a10092d50090070210070072d500900e0090e40070072d5009007154", + "0x91960a11540260071960092d50091960090240071960092d50090070e5", + "0x70a60092d50090dd0a41542b90070a40092d50090070280070dd0092d5", + "0x901600901d0070a80092d500900700906e0071a40092d50090a60091ea", + "0x70ab0092d500901100902c0071a70092d500901800902a0070aa0092d5", + "0x72d50090070070070ad0ab1a70aa0a80120090ad0092d50091a40091eb", + "0x72d50090071540070180161543a72ae0121542d5154154009154009007", + "0x2115407a0072a60092d500900e0091750070210092d500901200901d007", + "0x1540070260093a80240092d515401e00907c00701e01d0200112d50092a6", + "0x2b90092d500902800900e0070280092d500901d0090110070072d5009007", + "0x90070160070072d50091ea0092ae00702a1ea1542d50092b9009012007", + "0x70072d50091eb0092ae00702e1eb1542d500902c00901200702c0092d5", + "0x902f0090200070310092d500902e00901800702f0092d500902a009018", + "0x70072d50090071540070073a90072d515403102f15401e00702f0092d5", + "0x1ee0092d50090072a60071ed0092d50090070210070072d5009024009173", + "0x70280070360092d50091ee1ed1540260071ee0092d50091ee009024007", + "0x92d50091ef0091ea0071ef0092d50090360381542b90070380092d5009", + "0x902a0071ec0092d500902000901d00703c0092d500900700906e00703a", + "0x92d500903a0091eb0070400092d500901100902c00703f0092d50092ae", + "0x92d500900702e0070072d500900715400704204003f1ec03c012009042", + "0x452a01542d51542a22ae0200110310072a20092d50092a200902f0072a2", + "0x71ee00729a0092d50090071ed0070072d500900715400729d0471543aa", + "0x1ef00704c0092d500900703800704a0092d50090070360072980092d5009", + "0x704e0092d500900703c00728f0092d500900703a0072960092d5009007", + "0x520092d500900704000728c0092d500900703f0070500092d50090071ec", + "0x92d50090072a00071660092d50090072a20070540092d5009007042007", + "0x29829a02629d00716a0092d50090070470071690092d5009007045007058", + "0x901d0070e60092d500916a16905816605405228c05004e28f29604c04a", + "0x92d500900700906e0071710092d500904500902a0071700092d50092a0", + "0x90660070680092d50090e600904a0070660092d500901100902c007173", + "0xe40e505d0122d50091750680661731711702ae1020071750092d5009024", + "0x70072d500900715400706c0093ab06a0092d515406200917f007062060", + "0x1542d50091780090580071780092d50090070210070072d500906a009073", + "0x90e600717d0092d500907000916a0070072d500906e00916900707006e", + "0x92d50090e400906e0070730092d500917f00905d00717f0092d500917d", + "0x902c0071800092d50090e500902a0070760092d500905d00901d007074", + "0x7a18218007607401200907a0092d50090730091eb0071820092d5009060", + "0x2d50090e400906e00707c0092d500906c0091ea0070072d5009007154007", + "0x2c0071850092d50090e500902a00707f0092d500905d00901d00707d009", + "0x8118507f07d0120090830092d500907c0091eb0070810092d5009060009", + "0x92d50090070210070072d50090240091730070072d5009007154007083", + "0x1861540260070850092d50090850090240070850092d50090070e5007186", + "0x92d50091871881542b90071880092d50090070280071870092d5009085", + "0x901d0070560092d500900700906e0070860092d500908b0091ea00708b", + "0x92d500901100902c0071890092d500929d00902a00708d0092d5009047", + "0x900715400709118a18908d0560120090910092d50090860091eb00718a", + "0x90070210070072d500901d0090e40070072d50090260091660070072d5", + "0x260070940092d50090940090240070940092d500900707400718b0092d5", + "0x918c0961542b90070960092d500900702800718c0092d500909418b154", + "0x709a0092d500900700906e00718d0092d50090980091ea0070980092d5", + "0x901100902c00718e0092d50092ae00902a00709c0092d500902000901d", + "0x15400709f18f18e09c09a01200909f0092d500918d0091eb00718f0092d5", + "0xe50070a10092d50090070210070072d500900e0090e40070072d5009007", + "0x2d50091960a11540260071960092d50091960090240071960092d5009007", + "0x1ea0070a60092d50090dd0a41542b90070a40092d50090070280070dd009", + "0x2d500901600901d0070a80092d500900700906e0071a40092d50090a6009", + "0x1eb0070ab0092d500901100902c0071a70092d500901800902a0070aa009", + "0x70072d50090070070070ad0ab1a70aa0a80120090ad0092d50091a4009", + "0x70072d50090071540070180161543ac2ae0121542d5154154009154009", + "0x1200901d00701d0201542d500901e0090db00701e0092d500900e009175", + "0x2d50090071540072a60093ad0210092d515401d0090f20070120092d5009", + "0x90120070260092d500902400900e0070240092d5009020009011007007", + "0x1ea0092d50090070160070072d50090280092ae0072b90281542d5009026", + "0x2b90090180070072d500902a0092ae00702c02a1542d50091ea009012007", + "0x1eb0092d50091eb00902000702e0092d500902c0090180071eb0092d5009", + "0x210091860070072d50090071540070073ae0072d515402e1eb15401e007", + "0x90240070310092d50090072a600702f0092d50090070210070072d5009", + "0x92d50090070280071ed0092d500903102f1540260070310092d5009031", + "0x6e0070380092d50090360091ea0070360092d50091ed1ee1542b90071ee", + "0x2d50092ae00902a00703a0092d500901200901d0071ef0092d5009007009", + "0x1200903f0092d50090380091eb0071ec0092d500901100902c00703c009", + "0x2f0070400092d500900702e0070072d500900715400703f1ec03c03a1ef", + "0x2a01543af2a20421542d51540402ae0120110310070400092d5009040009", + "0x92d50090071ee0070470092d50090071ed0070072d5009007154007045", + "0x2d50090071ef0072980092d500900703800729a0092d500900703600729d", + "0x90071ec0072960092d500900703c00704c0092d500900703a00704a009", + "0x70420070500092d500900704000704e0092d500900703f00728f0092d5", + "0x450070540092d50090072a00070520092d50090072a200728c0092d5009", + "0x4a29829a29d04702629d0070580092d50090070470071660092d5009007", + "0x2d500904200901d0071690092d500905816605405228c05004e28f29604c", + "0x2c0071700092d500900700906e0070620092d50092a200902a007060009", + "0x2d50090210090240071730092d500916900904a0071710092d5009011009", + "0x70e40e505d0e616a0122d50090661731711700620602ae103007066009", + "0x680090730070072d50090071540071750093b00680092d51540e400917f", + "0x717806c1542d500906a00905800706a0092d50090070210070072d5009", + "0x2d500906e0090e600706e0092d500917800916a0070072d500906c009169", + "0x1d00717f0092d500905d00906e00717d0092d500907000905d007070009", + "0x2d50090e500902c0070740092d50090e600902a0070730092d500916a009", + "0x715400718007607407317f0120091800092d500917d0091eb007076009", + "0x707a0092d500905d00906e0071820092d50091750091ea0070072d5009", + "0x90e500902c00707d0092d50090e600902a00707c0092d500916a00901d", + "0x15400718507f07d07c07a0120091850092d50091820091eb00707f0092d5", + "0xe50070810092d50090070210070072d50090210091860070072d5009007", + "0x2d50090830811540260070830092d50090830090240070830092d5009007", + "0x1ea0071870092d50091860851542b90070850092d5009007028007186009", + "0x2d50092a000901d00708b0092d500900700906e0071880092d5009187009", + "0x1eb00708d0092d500901100902c0070560092d500904500902a007086009", + "0x70072d500900715400718908d05608608b0120091890092d5009188009", + "0x18a0092d50090070210070072d50090200090e40070072d50092a6009166", + "0x9118a1540260070910092d50090910090240070910092d5009007074007", + "0x18c0092d500918b0941542b90070940092d500900702800718b0092d5009", + "0x1200901d0070980092d500900700906e0070960092d500918c0091ea007", + "0x9c0092d500901100902c00709a0092d50092ae00902a00718d0092d5009", + "0x2d500900715400718e09c09a18d09801200918e0092d50090960091eb007", + "0x2d50090070e500718f0092d50090070210070072d500900e0090e4007007", + "0x70a10092d500909f18f15402600709f0092d500909f00902400709f009", + "0x90dd0091ea0070dd0092d50090a11961542b90071960092d5009007028", + "0x71a40092d500901600901d0070a60092d500900700906e0070a40092d5", + "0x90a40091eb0070aa0092d500901100902c0070a80092d500901800902a", + "0x91540090070072d50090070070071a70aa0a81a40a60120091a70092d5", + "0xe0091750070072d50090071540070180161543b12ae0121542d5154154", + "0x92d500901200901d00701d0201542d500901e0090db00701e0092d5009", + "0x1d0070072d50090071540072a60093b20210092d515401d0090f2007012", + "0x91ea2b915407a0071ea0092d50090200091750072b90092d5009012009", + "0x900715400702c0093b302a0092d515402800907c0070280260240112d5", + "0x18d0071ed0092d50090260091750070310092d500902400901d0070072d5", + "0x360093b41ee0092d515402f00909a00702f02e1eb0112d50091ed031154", + "0x2d500903800900e0070380092d500902e0090110070072d5009007154007", + "0x160070072d500903a0092ae00703c03a1542d50091ef0090120071ef009", + "0x2d500903f0092ae00704003f1542d50091ec0090120071ec0092d5009007", + "0x90200072a20092d50090400090180070420092d500903c009018007007", + "0x2d50090071540070073b50072d51542a204215401e0070420092d5009042", + "0x90210091860070072d500902a0091730070072d50091ee00918c007007", + "0x450090240070450092d50090072a60072a00092d50090070210070072d5", + "0x29d0092d50090070280070470092d50090452a01540260070450092d5009", + "0x906e0072980092d500929a0091ea00729a0092d500904729d1542b9007", + "0x92d50092ae00902a00704c0092d50091eb00901d00704a0092d5009007", + "0x4a01200904e0092d50092980091eb00728f0092d500901100902c007296", + "0x902f0070500092d500900702e0070072d500900715400704e28f29604c", + "0x1660541543b605228c1542d51540502ae1eb0110310070500092d5009050", + "0x1690092d50090071ee0070580092d50090071ed0070072d5009007154007", + "0x92d50090071ef0070e60092d500900703800716a0092d5009007036007", + "0x2d50090071ec0070e40092d500900703c0070e50092d500900703a00705d", + "0x90070420071700092d50090070400070620092d500900703f007060009", + "0x70450070660092d50090072a00071730092d50090072a20071710092d5", + "0xe505d0e616a16905802629d0071750092d50090070470070680092d5009", + "0x92d500928c00901d00706a0092d50091750680661731711700620600e4", + "0x902c0070740092d500900700906e0070730092d500905200902a00717f", + "0x92d50090210090240071800092d500906a00904a0070760092d5009011", + "0x1810400707c0092d50091ee00909600707a0092d500902a009066007182", + "0x17d00917f00717d07006e17806c0122d500907c07a18218007607407317f", + "0x72d500907d0090730070072d500900715400707f0093b707d0092d5154", + "0x810091690070830811542d50091850090580071850092d5009007021007", + "0x70850092d50091860090e60071860092d500908300916a0070072d5009", + "0x906c00901d0071880092d500906e00906e0071870092d500908500905d", + "0x70560092d500907000902c0070860092d500917800902a00708b0092d5", + "0x72d500900715400708d05608608b18801200908d0092d50091870091eb", + "0x6c00901d00718a0092d500906e00906e0071890092d500907f0091ea007", + "0x940092d500907000902c00718b0092d500917800902a0070910092d5009", + "0x2d500900715400718c09418b09118a01200918c0092d50091890091eb007", + "0x90210091860070072d500902a0091730070072d50091ee00918c007007", + "0x980090240070980092d50090070e50070960092d50090070210070072d5", + "0x9a0092d500900702800718d0092d50090980961540260070980092d5009", + "0x906e00718e0092d500909c0091ea00709c0092d500918d09a1542b9007", + "0x92d500916600902a00709f0092d500905400901d00718f0092d5009007", + "0x18f0120090dd0092d500918e0091eb0071960092d500901100902c0070a1", + "0x90e40070072d50090360091660070072d50090071540070dd1960a109f", + "0x210070072d50090210091860070072d500902a0091730070072d500902e", + "0xa60092d50090a60090240070a60092d500900709f0070a40092d5009007", + "0xa81542b90070a80092d50090070280071a40092d50090a60a4154026007", + "0x92d500900700906e0071a70092d50090aa0091ea0070aa0092d50091a4", + "0x902c0071af0092d50092ae00902a0070ad0092d50091eb00901d0070ab", + "0xdc1b11af0ad0ab0120090dc0092d50091a70091eb0071b10092d5009011", + "0x72d50090210091860070072d500902c0091660070072d5009007154007", + "0x92d500900718e0070b10092d50090070210070072d50090260090e4007", + "0x280071b70092d50090b30b11540260070b30092d50090b30090240070b3", + "0x2d50090db0091ea0070db0092d50091b70da1542b90070da0092d5009007", + "0x2a0070f00092d500902400901d0070f10092d500900700906e0070f2009", + "0x2d50090f20091eb0070ee0092d500901100902c0070ef0092d50092ae009", + "0x92a60091660070072d50090071540070ed0ee0ef0f00f10120090ed009", + "0x90070740070ec0092d50090070210070072d50090200090e40070072d5", + "0xf60092d50090eb0ec1540260070eb0092d50090eb0090240070eb0092d5", + "0xf40091ea0070f40092d50090f60f51542b90070f50092d5009007028007", + "0xe90092d500901200901d0070ea0092d500900700906e0070f30092d5009", + "0xf30091eb0070d50092d500901100902c0070e80092d50092ae00902a007", + "0x90e40070072d50090071540070d60d50e80e90ea0120090d60092d5009", + "0x240070d80092d50090070e50070d70092d50090070210070072d500900e", + "0x2d50090070280070d90092d50090d80d71540260070d80092d50090d8009", + "0x70ce0092d50090df0091ea0070df0092d50090d90de1542b90070de009", + "0x901800902a0070e10092d500901600901d0070e00092d500900700906e", + "0x90e70092d50090ce0091eb0070e30092d500901100902c0070e20092d5", + "0x1542d51541540091540090070072d50090070070070e70e30e20e10e0012", + "0x1e0092d500900e0091750070072d50090071540070180161543b82ae012", + "0x90f20070120092d500901200901d00701d0201542d500901e0090db007", + "0x2d500901200901d0070072d50090071540072a60093b90210092d515401d", + "0x260240112d50091ea2b915406a0071ea0092d50090200091750072b9009", + "0x1d0070072d500900715400702c0093ba02a0092d515402800906c007028", + "0x91ed03115406a0071ed0092d50090260091750070310092d5009024009", + "0x90071540070360093bb1ee0092d515402f00906c00702f02e1eb0112d5", + "0x7a0071ec0092d500902e00917500703c0092d50091eb00901d0070072d5", + "0x400093bc03f0092d515403a00907c00703a1ef0380112d50091ec03c154", + "0x2d50091ef0091750070450092d500903800901d0070072d5009007154007", + "0x92d51542a000909a0072a02a20420112d500904704515418d007047009", + "0xe0072980092d50092a20090110070072d500900715400729a0093bd29d", + "0x904c0092ae00729604c1542d500904a00901200704a0092d5009298009", + "0x2ae00705004e1542d500928f00901200728f0092d50090070160070072d5", + "0x92d500905000901800728c0092d50092960090180070072d500904e009", + "0x70073be0072d515405228c15401e00728c0092d500928c009020007052", + "0x70072d500903f0091730070072d500929d00918c0070072d5009007154", + "0x72d50090210091860070072d500902a0091780070072d50091ee009178", + "0x2d50091660090240071660092d50090072a60070540092d5009007021007", + "0x2b90071690092d50090070280070580092d5009166054154026007166009", + "0x900700906e0070e60092d500916a0091ea00716a0092d5009058169154", + "0x70e40092d50092ae00902a0070e50092d500904200901d00705d0092d5", + "0xe40e505d0120090620092d50090e60091eb0070600092d500901100902c", + "0x917000902f0071700092d500900702e0070072d5009007154007062060", + "0x1540070680661543bf1731711542d51541702ae0420110310071700092d5", + "0x3600706a0092d50090071ee0071750092d50090071ed0070072d5009007", + "0x706e0092d50090071ef0071780092d500900703800706c0092d5009007", + "0x17f0092d50090071ec00717d0092d500900703c0070700092d500900703a", + "0x92d50090070420070740092d50090070400070730092d500900703f007", + "0x2d50090070450071820092d50090072a00071800092d50090072a2007076", + "0x17f17d07006e17806c06a17502629d00707c0092d500900704700707a009", + "0x70850092d500917100901d00707d0092d500907c07a182180076074073", + "0x901100902c0071880092d500900700906e0071870092d500917300902a", + "0x70560092d50090210090240070860092d500907d00904a00708b0092d5", + "0x903f0090660071890092d50091ee00907000708d0092d500902a009070", + "0x5608608b18818708501d1050070910092d500929d00909600718a0092d5", + "0x18b0092d515418600917f00718608308118507f0122d500909118a18908d", + "0x90070210070072d500918b0090730070072d50090071540070940093c0", + "0x70072d50090960091690070980961542d500918c00905800718c0092d5", + "0x909a00905d00709a0092d500918d0090e600718d0092d500909800916a", + "0x718f0092d500907f00901d00718e0092d500908100906e00709c0092d5", + "0x909c0091eb0070a10092d500908300902c00709f0092d500918500902a", + "0x940091ea0070072d50090071540071960a109f18f18e0120091960092d5", + "0xa60092d500907f00901d0070a40092d500908100906e0070dd0092d5009", + "0xdd0091eb0070a80092d500908300902c0071a40092d500918500902a007", + "0x918c0070072d50090071540070aa0a81a40a60a40120090aa0092d5009", + "0x1780070072d50091ee0091780070072d500903f0091730070072d500929d", + "0x71a70092d50090070210070072d50090210091860070072d500902a009", + "0x90ab1a71540260070ab0092d50090ab0090240070ab0092d50090070e5", + "0x71b10092d50090ad1af1542b90071af0092d50090070280070ad0092d5", + "0x906600901d0070b10092d500900700906e0070dc0092d50091b10091ea", + "0x70da0092d500901100902c0071b70092d500906800902a0070b30092d5", + "0x72d50090071540070db0da1b70b30b10120090db0092d50090dc0091eb", + "0x2d500903f0091730070072d50092a20090e40070072d500929a009166007", + "0x90210091860070072d500902a0091780070072d50091ee009178007007", + "0xf10090240070f10092d50090071060070f20092d50090070210070072d5", + "0xef0092d50090070280070f00092d50090f10f21540260070f10092d5009", + "0x906e0070ed0092d50090ee0091ea0070ee0092d50090f00ef1542b9007", + "0x92d50092ae00902a0070eb0092d500904200901d0070ec0092d5009007", + "0xec0120090f40092d50090ed0091eb0070f50092d500901100902c0070f6", + "0x91780070072d50090400091660070072d50090071540070f40f50f60eb", + "0xe40070072d50091ee0091780070072d50090210091860070072d500902a", + "0x70ea0092d50090071080070f30092d50090070210070072d50091ef009", + "0x90070280070e90092d50090ea0f31540260070ea0092d50090ea009024", + "0xd60092d50090d50091ea0070d50092d50090e90e81542b90070e80092d5", + "0x2ae00902a0070d80092d500903800901d0070d70092d500900700906e007", + "0xdf0092d50090d60091eb0070de0092d500901100902c0070d90092d5009", + "0x72d50090360091660070072d50090071540070df0de0d90d80d7012009", + "0x2d500902e0090e40070072d50090210091860070072d500902a009178007", + "0x90e00090240070e00092d500900709f0070ce0092d5009007021007007", + "0x70e20092d50090070280070e10092d50090e00ce1540260070e00092d5", + "0x700906e0070e70092d50090e30091ea0070e30092d50090e10e21542b9", + "0xf80092d50092ae00902a0071cd0092d50091eb00901d0071cc0092d5009", + "0x1cd1cc0120090fa0092d50090e70091eb0071d00092d500901100902c007", + "0x210091860070072d500902c0091660070072d50090071540070fa1d00f8", + "0x718e0071d40092d50090070210070072d50090260090e40070072d5009", + "0x92d50091021d41540260071020092d50091020090240071020092d5009", + "0x91ea0071050092d50091031041542b90071040092d5009007028007103", + "0x92d500902400901d0071080092d500900700906e0071060092d5009105", + "0x91eb0071d70092d500901100902c00710a0092d50092ae00902a0071d6", + "0x1660070072d50090071540071d51d710a1d61080120091d50092d5009106", + "0x710b0092d50090070210070072d50090200090e40070072d50092a6009", + "0x91d210b1540260071d20092d50091d20090240071d20092d5009007074", + "0x71ca0092d500910d1d11542b90071d10092d500900702800710d0092d5", + "0x901200901d0071120092d500900700906e0071100092d50091ca0091ea", + "0x71140092d500901100902c0071cb0092d50092ae00902a0071c90092d5", + "0x72d50090071540071fc1141cb1c91120120091fc0092d50091100091eb", + "0x92d50090070e50071c50092d50090070210070072d500900e0090e4007", + "0x280071be0092d50091c31c51540260071c30092d50091c30090240071c3", + "0x2d50091ba0091ea0071ba0092d50091be1191542b90071190092d5009007", + "0x2a00711d0092d500901600901d0071b60092d500900700906e00711b009", + "0x2d500911b0091eb00711f0092d500901100902c0071b40092d5009018009", + "0x90071d60072ae0092d50090071d60071b011f1b411d1b60120091b0009", + "0x71d50070210092d50090071d700701d0092d500900710a0070180092d5", + "0x91540090070072d50090070070070072d500900710b0070240092d5009", + "0xe0091750070072d50090071540071ea2b91543c10280261542d5154154", + "0x92d500902600901d00702c02a1542d50091eb0090db0071eb0092d5009", + "0x1d0070072d500900715400702e0093c20200092d515402c0090f2007026", + "0x90361ee15406a0070360092d500902a0091750071ee0092d5009026009", + "0x2d51541ed00906c0070200092d500902001d1541d20071ed03102f0112d5", + "0x71ec0092d500902f00901d0070072d50090071540070380093c3012009", + "0x10d00703c03a1ef0112d500903f1ec15406a00703f0092d5009031009175", + "0x1540070400093c40160092d515403c00906c0070120092d50090122ae154", + "0x470092d500903a0091750070450092d50091ef00901d0070072d5009007", + "0x160092d500901601815410d0072a02a20420112d500904704515407a007", + "0x901d0070072d500900715400729d0093c52a60092d51542a000907c007", + "0x2d500929604c15418d0072960092d50092a200917500704c0092d5009042", + "0x92d515404a00909a0072a60092d50092a60241541d100704a29829a011", + "0x2a0070520092d500929a00901d0070072d500900715400728f0093c601e", + "0x901e0211541ca0071660092d50092980091750070540092d5009028009", + "0x15428c00911200728c05004e0112d500916605405201111000701e0092d5", + "0x16a1542d50090580091c90070072d50090071540071690093c70580092d5", + "0x110070072d50090071540070e50093c805d0092d51540e60091cb0070e6", + "0x2d50090600090120070600092d50090e400900e0070e40092d500916a009", + "0x90120071710092d50090070160070072d50090620092ae007170062154", + "0x92d50091700090180070072d50091730092ae0070661731542d5009171", + "0x15401e0070680092d50090680090200071750092d5009066009018007068", + "0x72d500905d0090e40070072d50090071540070073c90072d5154175068", + "0x2d50090160091780070072d50092a60091730070072d500901e00918c007", + "0x2d50090070210070072d50090200091860070072d5009012009178007007", + "0x15402600706c0092d500906c00902400706c0092d50090072a600706a009", + "0x2d500917806e1542b900706e0092d50090070280071780092d500906c06a", + "0x1d00717f0092d500900700906e00717d0092d50090700091ea007070009", + "0x2d500901100902c0070740092d500905000902a0070730092d500904e009", + "0x715400718007607407317f0120091800092d500917d0091eb007076009", + "0x310071820092d500918200902f0071820092d500900702e0070072d5009", + "0x70072d500900715400707f07d1543ca07c07a1542d515418205004e011", + "0x830092d50090070360070810092d50090071ee0071850092d50090071ed", + "0x92d500900703a0070850092d50090071ef0071860092d5009007038007", + "0x2d500900703f00708b0092d50090071ec0071880092d500900703c007187", + "0x90072a200708d0092d50090070420070560092d5009007040007086009", + "0x70470070910092d500900704500718a0092d50090072a00071890092d5", + "0x18a18908d05608608b18818708518608308118502629d00718b0092d5009", + "0x2d500907c00902a00709c0092d500907a00901d0070940092d500918b091", + "0x4a00709f0092d500901100902c00718f0092d500900700906e00718e009", + "0x2d50090120090700071960092d50090200090240070a10092d5009094009", + "0x960070a60092d50092a60090660070a40092d50090160090700070dd009", + "0x18f18e09c01e1140070a80092d500905d0091750071a40092d500901e009", + "0x9a00917f00709a18d09809618c0122d50090a81a40a60a40dd1960a109f", + "0x72d50090aa0090730070072d50090071540071a70093cb0aa0092d5154", + "0xad0091690071af0ad1542d50090ab0090580070ab0092d5009007021007", + "0x70dc0092d50091b10090e60071b10092d50091af00916a0070072d5009", + "0x918c00901d0070b30092d500909800906e0070b10092d50090dc00905d", + "0x70db0092d500918d00902c0070da0092d500909600902a0071b70092d5", + "0x72d50090071540070f20db0da1b70b30120090f20092d50090b10091eb", + "0x18c00901d0070f00092d500909800906e0070f10092d50091a70091ea007", + "0xed0092d500918d00902c0070ee0092d500909600902a0070ef0092d5009", + "0x2d50090071540070ec0ed0ee0ef0f00120090ec0092d50090f10091eb007", + "0x92a60091730070072d500901e00918c0070072d500905d0090e4007007", + "0x200091860070072d50090120091780070072d50090160091780070072d5", + "0x90240070f60092d50090070e50070eb0092d50090070210070072d5009", + "0x92d50090070280070f50092d50090f60eb1540260070f60092d50090f6", + "0x6e0070ea0092d50090f30091ea0070f30092d50090f50f41542b90070f4", + "0x2d500907f00902a0070e80092d500907d00901d0070e90092d5009007009", + "0x120090d70092d50090ea0091eb0070d60092d500901100902c0070d5009", + "0xe40070072d50090e50091660070072d50090071540070d70d60d50e80e9", + "0x70072d50092a60091730070072d500901e00918c0070072d500916a009", + "0x72d50090200091860070072d50090120091780070072d5009016009178", + "0x2d50090d90090240070d90092d50090071fc0070d80092d5009007021007", + "0x2b90070df0092d50090070280070de0092d50090d90d81540260070d9009", + "0x900700906e0070e00092d50090ce0091ea0070ce0092d50090de0df154", + "0x70e30092d500905000902a0070e20092d500904e00901d0070e10092d5", + "0xe30e20e10120091cc0092d50090e00091eb0070e70092d500901100902c", + "0x901e00918c0070072d50090200091860070072d50090071540071cc0e7", + "0x120091780070072d50090160091780070072d50092a60091730070072d5", + "0x70f80092d500900700906e0071cd0092d50091690091ea0070072d5009", + "0x901100902c0070fa0092d500905000902a0071d00092d500904e00901d", + "0x1540071021d40fa1d00f80120091020092d50091cd0091eb0071d40092d5", + "0x1780070072d50090120091780070072d500928f0091660070072d5009007", + "0x70072d50092a60091730070072d50090200091860070072d5009016009", + "0x1030092d50090070210070072d50090210091c50070072d50092980090e4", + "0x1041031540260071040092d50091040090240071040092d5009007106007", + "0x1080092d50091051061542b90071060092d50090070280071050092d5009", + "0x29a00901d00710a0092d500900700906e0071d60092d50091080091ea007", + "0x10b0092d500901100902c0071d50092d500902800902a0071d70092d5009", + "0x2d50090071540071d210b1d51d710a0120091d20092d50091d60091eb007", + "0x90160091780070072d50090120091780070072d500929d009166007007", + "0x2a20090e40070072d50090210091c50070072d50090200091860070072d5", + "0x710800710d0092d50090070210070072d50090240091c30070072d5009", + "0x92d50091d110d1540260071d10092d50091d10090240071d10092d5009", + "0x91ea0071120092d50091ca1101542b90071100092d50090070280071ca", + "0x92d500904200901d0071cb0092d500900700906e0071c90092d5009112", + "0x91eb0071c50092d500901100902c0071fc0092d500902800902a007114", + "0x1660070072d50090071540071c31c51fc1141cb0120091c30092d50091c9", + "0x70072d50090200091860070072d50090120091780070072d5009040009", + "0x72d500903a0090e40070072d50090210091c50070072d50090240091c3", + "0x92d500900709f0071be0092d50090070210070072d50090180091be007", + "0x280071ba0092d50091191be1540260071190092d5009119009024007119", + "0x2d50091b60091ea0071b60092d50091ba11b1542b900711b0092d5009007", + "0x2a00711f0092d50091ef00901d0071b40092d500900700906e00711d009", + "0x2d500911d0091eb0071ac0092d500901100902c0071b00092d5009028009", + "0x90380091660070072d50090071540071221ac1b011f1b4012009122009", + "0x240091c30070072d50090200091860070072d50090180091be0070072d5", + "0x91be0070072d50090310090e40070072d50090210091c50070072d5009", + "0x240071240092d500900718e0071a80092d50090070210070072d50092ae", + "0x2d50090070280071b80092d50091241a81540260071240092d5009124009", + "0x71280092d50091a10091ea0071a10092d50091b81a31542b90071a3009", + "0x902800902a00712a0092d500902f00901d00719e0092d500900700906e", + "0x91990092d50091280091eb0071950092d500901100902c00712c0092d5", + "0x70072d500902e0091660070072d500900715400719919512c12a19e012", + "0x72d50090240091c30070072d50090180091be0070072d50092ae0091be", + "0x2d500901d0091190070072d500902a0090e40070072d50090210091c5007", + "0x919b00902400719b0092d50090070740071980092d5009007021007007", + "0x712e0092d500900702800719a0092d500919b19815402600719b0092d5", + "0x700906e0071300092d50091840091ea0071840092d500919a12e1542b9", + "0x1330092d500902800902a0071810092d500902600901d0071830092d5009", + "0x18118301200917e0092d50091300091eb0071350092d500901100902c007", + "0x180091be0070072d50092ae0091be0070072d500900715400717e135133", + "0x91c30070072d500901d0091190070072d500900e0090e40070072d5009", + "0xe500717b0092d50090070210070072d50090210091c50070072d5009024", + "0x2d500917717b1540260071770092d50091770090240071770092d5009007", + "0x1ea00713b0092d50091391761542b90071760092d5009007028007139009", + "0x2d50092b900901d00716f0092d500900700906e0071740092d500913b009", + "0x1eb00716c0092d500901100902c00713f0092d50091ea00902a00716e009", + "0x70072d500900700700716b16c13f16e16f01200916b0092d5009174009", + "0x70072d50090071540070180161543cc2ae0121542d5154154009154009", + "0x1200901d00701d0201542d500901e0090db00701e0092d500900e009175", + "0x2d50090071540072a60093cd0210092d515401d0090f20070120092d5009", + "0x15406a0071ea0092d50090200091750072b90092d500901200901d007007", + "0x702c0093ce02a0092d515402800906c0070280260240112d50091ea2b9", + "0x1542d500902f0090db00702f0092d50090260091750070072d5009007154", + "0x70072d50090071540071ed0093cf0310092d515402e0090f200702e1eb", + "0x360090f20070361ee1542d50090380090db0070380092d50091eb009175", + "0x92d50091ee0090110070072d500900715400703a0093d01ef0092d5154", + "0x70400093d103f1ec1542d515403c00911b0070072d50090071ba00703c", + "0x92d50091ec00911d0070420092d500903f0091b60070072d5009007154", + "0x2d50090071540070073d200900711f0072a00092d50090420091b40072a2", + "0x4000911d0070470092d50090450091ac0070450092d50090071b0007007", + "0x29d0092d51542a00091220072a00092d50090470091b40072a20092d5009", + "0x91240072980092d500929d0091a80070072d500900715400729a0093d3", + "0x92d500904a00902400728f0092d500902400901d00704a0092d5009298", + "0x3d40500092d51542960091a300729604c1542d500904e28f1541b800704e", + "0x520090110070520092d50092a200916a0070072d500900715400728c009", + "0x1660092d500905400900e0070540092d500905400911d0070540092d5009", + "0x90070160070072d50090580092ae0071690581542d5009166009012007", + "0x70072d50090e60092ae00705d0e61542d500916a00901200716a0092d5", + "0x90e50090200070e40092d500905d0090180070e50092d5009169009018", + "0x70072d50090071540070073d50072d51540e40e515401e0070e50092d5", + "0x70072d50091ef0091860070072d50090500091280070072d50090071a1", + "0x72d50090210091860070072d500902a0091780070072d5009031009186", + "0x2d50090620090240070620092d50090072a60070600092d5009007021007", + "0x2b90071710092d50090070280071700092d5009062060154026007062009", + "0x900700906e0070660092d50091730091ea0071730092d5009170171154", + "0x706a0092d50092ae00902a0071750092d500904c00901d0070680092d5", + "0x6a1750680120091780092d50090660091eb00706c0092d500901100902c", + "0x906e00902f00706e0092d500900702e0070072d500900715400717806c", + "0x15400707317f1543d617d0701542d515406e2ae04c01103100706e0092d5", + "0x71ee0070740092d50090071ed0070072d50090071a10070072d5009007", + "0x1ef0071820092d50090070380071800092d50090070360070760092d5009", + "0x707d0092d500900703c00707c0092d500900703a00707a0092d5009007", + "0x810092d50090070400071850092d500900703f00707f0092d50090071ec", + "0x92d50090072a00071860092d50090072a20070830092d5009007042007", + "0x7607402629d0071880092d50090070470071870092d5009007045007085", + "0x901d00708b0092d500918818708518608308118507f07d07c07a182180", + "0x92d500900700906e00718b0092d500917d00902a0070910092d5009070", + "0x90240070960092d500908b00904a00718c0092d500901100902c007094", + "0x92d500903100902400718d0092d500902a0090700070980092d5009021", + "0x1d12a00718e0092d500905000919e00709c0092d50091ef00902400709a", + "0x17f00718a18908d0560860122d500918e09c09a18d09809618c09418b091", + "0x918f0090730070072d500900715400709f0093d718f0092d515418a009", + "0x1690070dd1961542d50090a10090580070a10092d50090070210070072d5", + "0x92d50090a40090e60070a40092d50090dd00916a0070072d5009196009", + "0x901d0070a80092d500908d00906e0071a40092d50090a600905d0070a6", + "0x92d500918900902c0071a70092d500905600902a0070aa0092d5009086", + "0x90071540070ad0ab1a70aa0a80120090ad0092d50091a40091eb0070ab", + "0x1d0071b10092d500908d00906e0071af0092d500909f0091ea0070072d5", + "0x2d500918900902c0070b10092d500905600902a0070dc0092d5009086009", + "0x71540071b70b30b10dc1b10120091b70092d50091af0091eb0070b3009", + "0x1ef0091860070072d50090500091280070072d50090071a10070072d5009", + "0x91860070072d500902a0091780070072d50090310091860070072d5009", + "0x240070db0092d50090070e50070da0092d50090070210070072d5009021", + "0x2d50090070280070f20092d50090db0da1540260070db0092d50090db009", + "0x70ef0092d50090f00091ea0070f00092d50090f20f11542b90070f1009", + "0x907300902a0070ed0092d500917f00901d0070ee0092d500900700906e", + "0x90f60092d50090ef0091eb0070eb0092d500901100902c0070ec0092d5", + "0x70072d500928c0091660070072d50090071540070f60eb0ec0ed0ee012", + "0x72d50090310091860070072d50091ef0091860070072d50092a200912c", + "0x2d500904c00901d0070072d50090210091860070072d500902a009178007", + "0x2d500929a0091660070072d50090071540070073d800900711f0070f5009", + "0x91ef0091860070072d50092a200912c0070072d5009021009186007007", + "0x2400901d0070072d500902a0091780070072d50090310091860070072d5", + "0x71060070f40092d50090070210070072d50090071a10070f50092d5009", + "0x92d50090f30f41540260070f30092d50090f30090240070f30092d5009", + "0x91ea0070e80092d50090ea0e91542b90070e90092d50090070280070ea", + "0x92d50090f500901d0070d60092d500900700906e0070d50092d50090e8", + "0x91eb0070d90092d500901100902c0070d80092d50092ae00902a0070d7", + "0x1660070072d50090071540070de0d90d80d70d60120090de0092d50090d5", + "0x70072d50091ee0090e40070072d50090210091860070072d500903a009", + "0xdf0092d50090070210070072d500902a0091780070072d5009031009186", + "0xce0df1540260070ce0092d50090ce0090240070ce0092d5009007108007", + "0xe20092d50090e00e11542b90070e10092d50090070280070e00092d5009", + "0x2400901d0070e70092d500900700906e0070e30092d50090e20091ea007", + "0xf80092d500901100902c0071cd0092d50092ae00902a0071cc0092d5009", + "0x2d50090071540071d00f81cd1cc0e70120091d00092d50090e30091eb007", + "0x902a0091780070072d50090210091860070072d50091ed009166007007", + "0x900709f0070fa0092d50090070210070072d50091eb0090e40070072d5", + "0x1020092d50091d40fa1540260071d40092d50091d40090240071d40092d5", + "0x1040091ea0071040092d50091021031542b90071030092d5009007028007", + "0x1080092d500902400901d0071060092d500900700906e0071050092d5009", + "0x1050091eb00710a0092d500901100902c0071d60092d50092ae00902a007", + "0x91660070072d50090071540071d710a1d61081060120091d70092d5009", + "0x210070072d50090260090e40070072d50090210091860070072d500902c", + "0x10b0092d500910b00902400710b0092d500900718e0071d50092d5009007", + "0x10d1542b900710d0092d50090070280071d20092d500910b1d5154026007", + "0x92d500900700906e0071ca0092d50091d10091ea0071d10092d50091d2", + "0x902c0071c90092d50092ae00902a0071120092d500902400901d007110", + "0x1141cb1c91121100120091140092d50091ca0091eb0071cb0092d5009011", + "0x72d50090200090e40070072d50092a60091660070072d5009007154007", + "0x2d50091c50090240071c50092d50090070740071fc0092d5009007021007", + "0x2b90071be0092d50090070280071c30092d50091c51fc1540260071c5009", + "0x900700906e0071ba0092d50091190091ea0071190092d50091c31be154", + "0x711d0092d50092ae00902a0071b60092d500901200901d00711b0092d5", + "0x11d1b611b01200911f0092d50091ba0091eb0071b40092d500901100902c", + "0x2d50090070210070072d500900e0090e40070072d500900715400711f1b4", + "0x1540260071ac0092d50091ac0090240071ac0092d50090070e50071b0009", + "0x2d50091221a81542b90071a80092d50090070280071220092d50091ac1b0", + "0x1d0071a30092d500900700906e0071b80092d50091240091ea007124009", + "0x2d500901100902c0071280092d500901800902a0071a10092d5009016009", + "0x700700712a19e1281a11a301200912a0092d50091b80091eb00719e009", + "0x71540070180161543d92ae0121542d51541540091540090070072d5009", + "0x901d0070072d50090071ba0070200092d500900e0090110070072d5009", + "0x71540070210093da01e01d1542d515402000911b0070120092d5009012", + "0x70240092d500901d00911d0072a60092d500901e0091b60070072d5009", + "0x70072d50090071540070073db00900711f0070260092d50092a60091b4", + "0x2d500902100911d0072b90092d50090280091ac0070280092d50090071b0", + "0x93dc1ea0092d51540260091220070260092d50092b90091b4007024009", + "0x902c00912400702c0092d50091ea0091a80070072d500900715400702a", + "0x71ed0092d50091eb0090240070310092d500901200901d0071eb0092d5", + "0x360093dd1ee0092d515402f00919900702f02e1542d50091ed031154195", + "0x2d50090380090110070380092d500902400916a0070072d5009007154007", + "0x1200703a0092d50091ef00900e0071ef0092d50091ef00911d0071ef009", + "0x92d50090070160070072d500903c0092ae0071ec03c1542d500903a009", + "0x90180070072d50090400092ae0070420401542d500903f00901200703f", + "0x92d50092a20090200072a00092d50090420090180072a20092d50091ec", + "0x71a10070072d50090071540070073de0072d51542a02a215401e0072a2", + "0x72a60070450092d50090070210070072d50091ee0090a60070072d5009", + "0x92d50090470451540260070470092d50090470090240070470092d5009", + "0x91ea0072980092d500929d29a1542b900729a0092d500900702800729d", + "0x92d500902e00901d00704c0092d500900700906e00704a0092d5009298", + "0x91eb00704e0092d500901100902c00728f0092d50092ae00902a007296", + "0x1a10070072d500900715400705004e28f29604c0120090500092d500904a", + "0x728c0092d500928c00902f00728c0092d500900702e0070072d5009007", + "0x72d50090071540070581661543df0540521542d515428c2ae02e011031", + "0x92d500900703600716a0092d50090071ee0071690092d50090071ed007", + "0x2d500900703a0070e50092d50090071ef00705d0092d50090070380070e6", + "0x900703f0070620092d50090071ec0070600092d500900703c0070e4009", + "0x72a20071730092d50090070420071710092d50090070400071700092d5", + "0x470071750092d50090070450070680092d50090072a00070660092d5009", + "0x661731711700620600e40e505d0e616a16902629d00706a0092d5009007", + "0x905400902a0070730092d500905200901d00706c0092d500906a175068", + "0x71800092d500901100902c0070760092d500900700906e0070740092d5", + "0x740732ae19b00707a0092d50091ee0091980071820092d500906c00904a", + "0x7c0092d515417f00917f00717f17d07006e1780122d500907a182180076", + "0x90070210070072d500907c0090730070072d500900715400707d0093e0", + "0x70072d50091850091690070811851542d500907f00905800707f0092d5", + "0x918600905d0071860092d50090830090e60070830092d500908100916a", + "0x71880092d500917800901d0071870092d500907000906e0070850092d5", + "0x90850091eb0070860092d500917d00902c00708b0092d500906e00902a", + "0x7d0091ea0070072d500900715400705608608b1881870120090560092d5", + "0x18a0092d500917800901d0071890092d500907000906e00708d0092d5009", + "0x8d0091eb00718b0092d500917d00902c0070910092d500906e00902a007", + "0x90a60070072d500900715400709418b09118a1890120090940092d5009", + "0x240070960092d50090070e500718c0092d50090070210070072d50091ee", + "0x2d50090070280070980092d500909618c1540260070960092d5009096009", + "0x709c0092d500909a0091ea00709a0092d500909818d1542b900718d009", + "0x905800902a00718f0092d500916600901d00718e0092d500900700906e", + "0x91960092d500909c0091eb0070a10092d500901100902c00709f0092d5", + "0x70072d50090360091660070072d50090071540071960a109f18f18e012", + "0x73e100900711f0070dd0092d500902e00901d0070072d500902400912c", + "0x72d500902400912c0070072d500902a0091660070072d5009007154007", + "0x92d50090070210070072d50090071a10070dd0092d500901200901d007", + "0xa41540260070a60092d50090a60090240070a60092d50090070740070a4", + "0x92d50091a40a81542b90070a80092d50090070280071a40092d50090a6", + "0x901d0070ab0092d500900700906e0071a70092d50090aa0091ea0070aa", + "0x92d500901100902c0071af0092d50092ae00902a0070ad0092d50090dd", + "0x90071540070dc1b11af0ad0ab0120090dc0092d50091a70091eb0071b1", + "0x90070e50070b10092d50090070210070072d500900e0090e40070072d5", + "0x1b70092d50090b30b11540260070b30092d50090b30090240070b30092d5", + "0xdb0091ea0070db0092d50091b70da1542b90070da0092d5009007028007", + "0xf00092d500901600901d0070f10092d500900700906e0070f20092d5009", + "0xf20091eb0070ee0092d500901100902c0070ef0092d500901800902a007", + "0x1200e0262d500901100919a0070ed0ee0ef0f00f10120090ed0092d5009", + "0x72d500900e00912e0071ea2b90280260242a602101e01d0200180162ae", + "0x2d50090180091830070072d50090160091300070072d50092ae009184007", + "0x901e0091350070072d500901d0091330070072d5009020009181007007", + "0x240091770070072d50092a600917b0070072d500902100917e0070072d5", + "0x913b0070072d50090280091760070072d50090260091390070072d5009", + "0x702f0092d500900700901d0070072d50091ea0091740070072d50092b9", + "0x901200916f0071ed0092d500915400902c0070310092d500900900902a", + "0x929600702e1eb02c02a00e2d50091ee1ed03102f00e16e0071ee0092d5", + "0x2d500903600928f0070072d50090071540070380093e20360092d515402e", + "0x1d00703c0092d500903a00916c00703a0092d50091ef00913f0071ef009", + "0x2d50091eb00902c00703f0092d500902c00902a0071ec0092d500902a009", + "0x900715400704204003f1ec00e0090420092d500903c00916b007040009", + "0x2a0072a00092d500902a00901d0072a20092d50090380091420070072d5", + "0x2d50092a200916b0070470092d50091eb00902c0070450092d500902c009", + "0x1540091470071540092d500900700916800729d0470452a000e00929d009", + "0x72d500900e00918600701200e1542d50090110090830070110092d5009", + "0x181540850070200092d50090090090520070180092d5009012009024007", + "0x1d0092d50090071b00070072d50090160091660070162ae1542d5009020", + "0x2101e1540090210092d500901d00914400701e0092d50092ae009052007", + "0x280260242a602101e01d0200180162ae01200e0262d500901100919a007", + "0x160091300070072d50090120091650070072d500900e00912e0071ea2b9", + "0x91330070072d50090200091810070072d50090180091830070072d5009", + "0x17b0070072d500902100917e0070072d500901e0091350070072d500901d", + "0x70072d50090260091390070072d50090240091770070072d50092a6009", + "0x72d50091ea0091740070072d50092b900913b0070072d5009028009176", + "0x15400902c0070310092d500900900902a00702f0092d500900700901d007", + "0x91ee1ed03102f00e15e0071ee0092d50092ae0091610071ed0092d5009", + "0x71540070380093e30360092d515402e00906200702e1eb02c02a00e2d5", + "0x703a0092d50091ef0091510071ef0092d50090360091700070072d5009", + "0x902c00902a0071ec0092d500902a00901d00703c0092d500903a00915f", + "0x90420092d500903c0090000070400092d50091eb00902c00703f0092d5", + "0x72a20092d500903800921d0070072d500900715400704204003f1ec00e", + "0x91eb00902c0070450092d500902c00902a0072a00092d500902a00901d", + "0x921e00729d0470452a000e00929d0092d50092a20090000070470092d5", + "0x1542d50090110090830070110092d500915400921f0071540092d5009007", + "0x90520070180092d50090120090240070072d500900e00918600701200e", + "0x90160091660070162ae1542d50090200181540850070200092d5009009", + "0x914400701e0092d50092ae00905200701d0092d50090071b00070072d5", + "0x90db00700e0092d500900900917500702101e1540090210092d500901d", + "0x71540072ae0093e40120092d51540110090f20070111541542d500900e", + "0x701d0092d50090120090240070200092d500900700901d0070072d5009", + "0x917500701e0092d500901600901d0070180161542d500901d020154220", + "0x1540072a602101e0110092a60092d50090180092210070210092d5009154", + "0x260092d500900700901d0070240092d50092ae0092230070072d5009007", + "0x280260110092b90092d50090240092210070280092d5009154009175007", + "0x72d50090071a10070072d500900710b0070160092d50090072250072b9", + "0x902a0070240092d500900700901d0070200181542d500900e00929a007", + "0x92d500901100902c0070280092d500915400906e0070260092d5009009", + "0x122d50091ea2b90280260240122260071ea0092d500902000904a0072b9", + "0x2d51542a60092280072ae0092d50092ae0161542270072a60212ae01e01d", + "0x19a0070072d500902a00922b0070072d500900715400702c0093e502a009", + "0x4204003f1ec03c03a1ef0380361ee1ed03102f02e1eb0262d5009018009", + "0x902c00729a0092d500901e00902a0072a02a21542d50091eb00922c007", + "0x904a29829a01122f00704a0092d50092a000922d0072980092d5009021", + "0x90071540072960093e604c0092d515429d00908b00729d0470450112d5", + "0x8300704e0092d500928f00923000728f0092d500904c0090860070072d5", + "0x92d50090072310070072d500905000918600728c0501542d500904e009", + "0x91240070072d50090540091860071660541542d5009052009083007052", + "0x2d50091690581542320071690092d50091660091240070580092d500928c", + "0xe60093e70072d515416a00923300716a0092d500916a00902400716a009", + "0x905d00923000705d0121542d50090120092360070072d5009007154007", + "0x70072d50090e40091860070600e41542d50090e50090830070e50092d5", + "0x91700091860071711701542d50090620090830070620092d5009007231", + "0x2320070660092d50091710091240071730092d50090600091240070072d5", + "0x92d50090680090240070072d50090071ba0070680092d5009066173154", + "0x71b00070072d50090071540071750093e80072d5154068009233007068", + "0x1780092d500906c0090ec00706c0092d500906a00923800706a0092d5009", + "0x70072d500917500923a0070072d50090071540070073e900900711f007", + "0x2d50090700090ec0070700092d500906e00923d00706e0092d50090071b0", + "0x24100717d0092d500917d0090ec00717d0092d500917800923f007178009", + "0x2d50090071a10070072d50090071540070730093ea17f0092d515417d009", + "0x902e0091650070072d50090120091780070072d500917f009166007007", + "0x4000913b0070072d50090420091740070072d500902f0091840070072d5", + "0x91770070072d50091ec0091390070072d500903f0091760070072d5009", + "0x1350070072d50091ef00917e0070072d500903a00917b0070072d500903c", + "0x70072d50091ee0091810070072d50090360091330070072d5009038009", + "0x72d50092a200912e0070072d50090310091300070072d50091ed009183", + "0x2d50090760090240070760092d50090072430070740092d5009007021007", + "0x2b90071820092d50090070280071800092d5009076074154026007076009", + "0x901d00901d00707c0092d500907a00924500707a0092d5009180182154", + "0x71850092d50092ae00906e00707f0092d500904500902a00707d0092d5", + "0x18507f07d0120090830092d500907c0092470070810092d500904700902c", + "0x904500902a0070072d50090730091660070072d5009007154007083081", + "0x70860092d50092a200922d00708b0092d500904700902c0071880092d5", + "0x18800e2490070560092d50090560090700070560121542d5009012009236", + "0x1890093eb08d0092d515418700924b0071870851860112d500905608608b", + "0x18a1542d500908d00924d0070072d50090071a10070072d5009007154007", + "0x18a02629d00718b0092d500901200924f0070072d5009091009166007091", + "0x1d0070940092d500904204003f1ec03c03a1ef0380361ee1ed03102f02e", + "0x2d500908500902c00709c0092d500918600902a00709a0092d500901d009", + "0x25300709f0092d500918b00925100718f0092d500909400904a00718e009", + "0x92d515418d00917f00718d09809618c00e2d500909f18f18e09c09a012", + "0x70a40dd1542d50090a10092550070072d50090071540071960093ec0a1", + "0x2d50090a60dd1542570070a60092d50090071b00070072d50090a4009166", + "0x2a0070aa0092d500918c00901d0070a80092d50091a40092590071a4009", + "0x2d500909800902c0070ab0092d50092ae00906e0071a70092d5009096009", + "0x71540071af0ad0ab1a70aa0120091af0092d50090a80092470070ad009", + "0x70dc0092d500918c00901d0071b10092d50091960092450070072d5009", + "0x909800902c0070b30092d50092ae00906e0070b10092d500909600902a", + "0x1540070da1b70b30b10dc0120090da0092d50091b10092470071b70092d5", + "0x91740070072d50090120091780070072d50090071a10070072d5009007", + "0x1390070072d500903f0091760070072d500904000913b0070072d5009042", + "0x70072d500903a00917b0070072d500903c0091770070072d50091ec009", + "0x72d50090360091330070072d50090380091350070072d50091ef00917e", + "0x2d50090310091300070072d50091ed0091830070072d50091ee009181007", + "0x91890092450070072d500902e0091650070072d500902f009184007007", + "0x70f10092d500918600902a0070f20092d500901d00901d0070db0092d5", + "0x90db0092470070ef0092d500908500902c0070f00092d50092ae00906e", + "0xe600923a0070072d50090071540070ee0ef0f00f10f20120090ee0092d5", + "0x91840070072d500902e0091650070072d50090120091780070072d5009", + "0x1760070072d500904000913b0070072d50090420091740070072d500902f", + "0x70072d500903c0091770070072d50091ec0091390070072d500903f009", + "0x72d50090380091350070072d50091ef00917e0070072d500903a00917b", + "0x2d50091ed0091830070072d50091ee0091810070072d5009036009133007", + "0x2d50090070210070072d50092a200912e0070072d5009031009130007007", + "0x1540260070ec0092d50090ec0090240070ec0092d500900725b0070ed009", + "0x2d50090eb0f61542b90070f60092d50090070280070eb0092d50090ec0ed", + "0x2a0070f30092d500901d00901d0070f40092d50090f50092450070f5009", + "0x2d500904700902c0070e90092d50092ae00906e0070ea0092d5009045009", + "0x71540070d50e80e90ea0f30120090d50092d50090f40092470070e8009", + "0x91840070072d500902e0091650070072d50090120091780070072d5009", + "0x1760070072d500904000913b0070072d50090420091740070072d500902f", + "0x70072d500903c0091770070072d50091ec0091390070072d500903f009", + "0x72d50090380091350070072d50091ef00917e0070072d500903a00917b", + "0x2d50091ed0091830070072d50091ee0091810070072d5009036009133007", + "0x92960092450070072d50092a200912e0070072d5009031009130007007", + "0x70d80092d500904500902a0070d70092d500901d00901d0070d60092d5", + "0x90d60092470070de0092d500904700902c0070d90092d50092ae00906e", + "0x120091780070072d50090071540070df0de0d90d80d70120090df0092d5", + "0x1d0070ce0092d500902c0092450070072d50090180092980070072d5009", + "0x2d50092ae00906e0070e10092d500901e00902a0070e00092d500901d009", + "0x120090e70092d50090ce0092470070e30092d500902100902c0070e2009", + "0x1542d500900e0090db00700e0092d50090090091750070e70e30e20e10e0", + "0x70072d50090071540072ae0093ed0120092d51540110090f2007011154", + "0x25f0070072d50090071540070200093ee0180161542d515401200715425d", + "0x2d500915400917500701e0092d500901600901d00701d0092d5009018009", + "0x2d50090071540072a602101e0110092a60092d500901d009261007021009", + "0x2000901d0070260092d50090240092630070240092d50090071b0007007", + "0x1ea0092d50090260092610072b90092d50091540091750070280092d5009", + "0x702a0092d50092ae0092630070072d50090071540071ea2b9028011009", + "0x902a0092610071eb0092d500915400917500702c0092d500900700901d", + "0x2d500900710b0070160092d500900722500702e1eb02c01100902e0092d5", + "0x700901d0070200181542d500900e00929a0070072d50090071a1007007", + "0x280092d500915400906e0070260092d500900900902a0070240092d5009", + "0x240122260071ea0092d500902000904a0072b90092d500901100902c007", + "0x92d50092ae0161542270072a60212ae01e01d0122d50091ea2b9028026", + "0x22b0070072d500900715400702c0093ef02a0092d51542a60092280072ae", + "0x380361ee1ed03102f02e1eb0262d500901800919a0070072d500902a009", + "0x1d00901d0072a02a21542d500902e00926500704204003f1ec03c03a1ef", + "0x4c0092d500902100902c00704a0092d500901e00902a0072980092d5009", + "0x4704500e2d500929604c04a29800e16e0072960092d50092a000916f007", + "0x70072d500900715400704e0093f028f0092d515429a00929600729a29d", + "0x92a200916f0071660092d500929d00902c0070540092d500904700902a", + "0x1690092d500916900928c0071690121542d50090120092670070580092d5", + "0x92d515405200926b00705228c0500112d500916905816605400e269007", + "0x26d00705d0092d500928f00928f0070072d50090071540070e60093f116a", + "0x901205d15426f0070072d50090e40091660070e40e51542d500916a009", + "0x4003f1ec03c03a1ef0380361ee1ed03102f0e51eb02629d0070600092d5", + "0x92d500905000902a0070680092d500904500901d0070620092d5009042", + "0x927100706c0092d500906200904a00706a0092d500928c00902c007175", + "0x6617317117000e2d500917806c06a1750680122730071780092d5009060", + "0x92550070072d50090071540070700093f206e0092d515406600917f007", + "0x730092d50090071b00070072d500917f00916600717f17d1542d500906e", + "0x901d0070760092d50090740092590070740092d500907317d154257007", + "0x92d50092ae00906e0071820092d500917100902a0071800092d5009170", + "0x18001200907d0092d500907600924700707c0092d500917300902c00707a", + "0x1d00707f0092d50090700092450070072d500900715400707d07c07a182", + "0x2d50092ae00906e0070810092d500917100902a0071850092d5009170009", + "0x120090850092d500907f0092470071860092d500917300902c007083009", + "0x1740070072d50091eb00912e0070072d5009007154007085186083081185", + "0x70072d500903f0091760070072d500904000913b0070072d5009042009", + "0x72d500903a00917b0070072d500903c0091770070072d50091ec009139", + "0x2d50090360091330070072d50090380091350070072d50091ef00917e007", + "0x90310091300070072d50091ed0091830070072d50091ee009181007007", + "0x120090500070072d500928f0092750070072d500902f0091840070072d5", + "0x71880092d500904500901d0071870092d50090e60092450070072d5009", + "0x928c00902c0070860092d50092ae00906e00708b0092d500905000902a", + "0x15400708d05608608b18801200908d0092d50091870092470070560092d5", + "0x1740070072d50090120090500070072d50091eb00912e0070072d5009007", + "0x70072d500903f0091760070072d500904000913b0070072d5009042009", + "0x72d500903a00917b0070072d500903c0091770070072d50091ec009139", + "0x2d50090360091330070072d50090380091350070072d50091ef00917e007", + "0x90310091300070072d50091ed0091830070072d50091ee009181007007", + "0x4e0092450070072d50092a20091650070072d500902f0091840070072d5", + "0x910092d500904700902a00718a0092d500904500901d0071890092d5009", + "0x1890092470070940092d500929d00902c00718b0092d50092ae00906e007", + "0x90500070072d500900715400718c09418b09118a01200918c0092d5009", + "0x70960092d500902c0092450070072d50090180092980070072d5009012", + "0x92ae00906e00718d0092d500901e00902a0070980092d500901d00901d", + "0x918e0092d500909600924700709c0092d500902100902c00709a0092d5", + "0x2d500900e0090db00700e0092d500900900917500718e09c09a18d098012", + "0x72d50090071540072ae0093f30120092d51540110090f2007011154154", + "0x70072d50090071540070200093f40180161542d5154012007154277007", + "0x915400917500701e0092d500901600901d00701d0092d5009018009279", + "0x90071540072a602101e0110092a60092d500901d00927b0070210092d5", + "0x901d0070260092d500902400927d0070240092d50090071b00070072d5", + "0x92d500902600927b0072b90092d50091540091750070280092d5009020", + "0x2a0092d50092ae00927d0070072d50090071540071ea2b90280110091ea", + "0x2a00927b0071eb0092d500915400917500702c0092d500900700901d007", + "0x900710b0070160092d500900722500702e1eb02c01100902e0092d5009", + "0x901d0070200181542d500900e00929a0070072d50090071a10070072d5", + "0x92d500915400906e0070260092d500900900902a0070240092d5009007", + "0x122260071ea0092d500902000904a0072b90092d500901100902c007028", + "0x2d50092ae0161542270072a60212ae01e01d0122d50091ea2b9028026024", + "0x70072d500900715400702c0093f502a0092d51542a60092280072ae009", + "0x361ee1ed03102f02e1eb0262d500901800919a0070072d500902a00922b", + "0x901d0072a02a21542d500902f00927f00704204003f1ec03c03a1ef038", + "0x92d500902100902c00704a0092d500901e00902a0072980092d500901d", + "0x4500e2d500929604c04a29800e15e0072960092d50092a000916100704c", + "0x72d500900715400704e0093f628f0092d515429a00906200729a29d047", + "0x2a20091610071660092d500929d00902c0070540092d500904700902a007", + "0x92d50091690090660071690121542d50090120092840070580092d5009", + "0x2d515405200928a00705228c0500112d500916905816605400e287007169", + "0x705d0092d500928f0091700070072d50090071540070e60093f716a009", + "0x1205d15428d0070072d50090e40091660070e40e51542d500916a00928b", + "0x3f1ec03c03a1ef0380361ee1ed0310e502e1eb02629d0070600092d5009", + "0x2d500905000902a0070680092d500904500901d0070620092d5009042040", + "0x28e00706c0092d500906200904a00706a0092d500928c00902c007175009", + "0x17317117000e2d500917806c06a1750680122910071780092d5009060009", + "0x2550070072d50090071540070700093f806e0092d515406600917f007066", + "0x92d50090071b00070072d500917f00916600717f17d1542d500906e009", + "0x1d0070760092d50090740092590070740092d500907317d154257007073", + "0x2d50092ae00906e0071820092d500917100902a0071800092d5009170009", + "0x1200907d0092d500907600924700707c0092d500917300902c00707a009", + "0x707f0092d50090700092450070072d500900715400707d07c07a182180", + "0x92ae00906e0070810092d500917100902a0071850092d500917000901d", + "0x90850092d500907f0092470071860092d500917300902c0070830092d5", + "0x70072d50091eb00912e0070072d5009007154007085186083081185012", + "0x72d500903f0091760070072d500904000913b0070072d5009042009174", + "0x2d500903a00917b0070072d500903c0091770070072d50091ec009139007", + "0x90360091330070072d50090380091350070072d50091ef00917e007007", + "0x310091300070072d50091ed0091830070072d50091ee0091810070072d5", + "0x91730070072d500902e0091650070072d500928f0092930070072d5009", + "0x1880092d500904500901d0071870092d50090e60092450070072d5009012", + "0x28c00902c0070860092d50092ae00906e00708b0092d500905000902a007", + "0x708d05608608b18801200908d0092d50091870092470070560092d5009", + "0x70072d50090120091730070072d50091eb00912e0070072d5009007154", + "0x72d500904000913b0070072d50090420091740070072d500902e009165", + "0x2d500903c0091770070072d50091ec0091390070072d500903f009176007", + "0x90380091350070072d50091ef00917e0070072d500903a00917b007007", + "0x1ed0091830070072d50091ee0091810070072d50090360091330070072d5", + "0x92450070072d50092a20091840070072d50090310091300070072d5009", + "0x92d500904700902a00718a0092d500904500901d0071890092d500904e", + "0x92470070940092d500929d00902c00718b0092d50092ae00906e007091", + "0x1730070072d500900715400718c09418b09118a01200918c0092d5009189", + "0x960092d500902c0092450070072d50090180092980070072d5009012009", + "0x2ae00906e00718d0092d500901e00902a0070980092d500901d00901d007", + "0x18e0092d500909600924700709c0092d500902100902c00709a0092d5009", + "0x72d500900710b0070160092d500900722500718e09c09a18d098012009", + "0x900700901d0070200181542d500900e00929a0070072d50090071a1007", + "0x72b90092d500915400906e0070280092d500900900902a0070260092d5", + "0x2802601229500702a0092d500902000904a0071ea0092d500901100902c", + "0x3f902c0092d51540240092280070242a602101e01d0122d500902a1ea2b9", + "0x901800929a0070072d500902c00922b0070072d50090071540071eb009", + "0x3a0092d500901e00902a0071ef0092d500901d00901d00702f02e1542d5", + "0x2f00904a0071ec0092d50092a600902c00703c0092d500902100906e007", + "0x92d50090400090700070400121542d500901200923600703f0092d5009", + "0x620070380361ee1ed0310122d500904003f1ec03c03a1ef2ae189007040", + "0x90420091700070072d50090071540072a20093fa0420092d5154038009", + "0x450092d500904700921f0070472a01542d50092a00092840072a00092d5", + "0x90072310070072d500929d00918600729a29d1542d5009045009083007", + "0x70072d500904a00918600704c04a1542d50092980090830072980092d5", + "0x28f29615423200728f0092d500904c0091240072960092d500929a009124", + "0x23300704e0092d500904e0090240070072d50090071ba00704e0092d5009", + "0x92d50090071b00070072d50090071540070500093fb0072d515404e009", + "0x711f0070540092d50090520090ec0070520092d500928c00923800728c", + "0x90071b00070072d500905000923a0070072d50090071540070073fc009", + "0x70540092d50090580090ec0070580092d500916600923d0071660092d5", + "0x1541690092410071690092d50091690090ec0071690092d500905400923f", + "0x1660070072d50090071a10070072d50090071540070e60093fd16a0092d5", + "0x70072d50090120091780070072d50092a00091730070072d500916a009", + "0x5d0092d50090070210070072d500902e0092980070072d5009016009299", + "0xe505d1540260070e50092d50090e50090240070e50092d500900729b007", + "0x620092d50090e40601542b90070600092d50090070280070e40092d5009", + "0x1ed00902a0071710092d500903100901d0071700092d5009062009245007", + "0x680092d500903600902c0070660092d50091ee00906e0071730092d5009", + "0x2d50090071540071750680661731710120091750092d5009170009247007", + "0x2d500902e00919a0070072d50090e60091660070072d50090071a1007007", + "0x90071b000707d07c07a18218007607407317f17d07006e17806c06a026", + "0x71870092d500903100901d0071850092d500907f00923800707f0092d5", + "0x903600902c00708b0092d50091ee00906e0071880092d50091ed00902a", + "0x708d0092d50092a00090660070560092d500917d00929c0070860092d5", + "0x122d500918908d05608608b18818701629f0071890092d50091850090ec", + "0x2d51540850092a10072ae0092d50092ae0161542270070851862ae083081", + "0x70960092d500908300902a0070072d50090071540070910093fe18a009", + "0x6200718c09418b0112d50090980961542a40070980092d500918600902c", + "0x918a0092a90070072d500900715400709a0093ff18d0092d515418c009", + "0x718f0092d500918d0091700070072d500918e00916600718e09c1542d5", + "0x7407317f09c07006e17806c06a02629d00709f0092d500901218f1542aa", + "0x2a0071a40092d500908100901d0070a10092d500907d07c07a182180076", + "0x2d50090a100904a0070aa0092d500909400902c0070a80092d500918b009", + "0x2d50090ab1a70aa0a81a40122ac0070ab0092d500909f0092ab0071a7009", + "0x90071540071af0094000ad0092d51540a600917f0070a60a40dd19600e", + "0x1b00070072d50090dc0091660070dc1b11542d50090ad0092550070072d5", + "0x2d50090b30092590070b30092d50090b11b11542570070b10092d5009007", + "0x6e0070db0092d50090dd00902a0070da0092d500919600901d0071b7009", + "0x2d50091b70092470070f10092d50090a400902c0070f20092d50092ae009", + "0x91af0092450070072d50090071540070f00f10f20db0da0120090f0009", + "0x70ed0092d50090dd00902a0070ee0092d500919600901d0070ef0092d5", + "0x90ef0092470070eb0092d50090a400902c0070ec0092d50092ae00906e", + "0x6a00912e0070072d50090071540070f60eb0ec0ed0ee0120090f60092d5", + "0x91760070072d500907c00913b0070072d500907d0091740070072d5009", + "0x17b0070072d50091800091770070072d50091820091390070072d500907a", + "0x70072d50090730091350070072d500907400917e0070072d5009076009", + "0x72d50090700091830070072d500918a0092af0070072d500917f009133", + "0x2d500906c0091650070072d50091780091840070072d500906e009130007", + "0x8100901d0070f50092d500909a0092450070072d5009012009178007007", + "0xea0092d50092ae00906e0070f30092d500918b00902a0070f40092d5009", + "0xf30f40120090e80092d50090f50092470070e90092d500909400902c007", + "0x120091780070072d500906a00912e0070072d50090071540070e80e90ea", + "0x913b0070072d500907d0091740070072d500906c0091650070072d5009", + "0x1770070072d50091820091390070072d500907a0091760070072d500907c", + "0x70072d500907400917e0070072d500907600917b0070072d5009180009", + "0x72d50090700091830070072d500917f0091330070072d5009073009135", + "0x2d50090910092450070072d50091780091840070072d500906e009130007", + "0x6e0070d70092d500908300902a0070d60092d500908100901d0070d5009", + "0x2d50090d50092470070d90092d500918600902c0070d80092d50092ae009", + "0x902e0092980070072d50090071540070de0d90d80d70d60120090de009", + "0x2a20092450070072d50090160092990070072d50090120091780070072d5", + "0xe00092d50091ed00902a0070ce0092d500903100901d0070df0092d5009", + "0xdf0092470070e20092d500903600902c0070e10092d50091ee00906e007", + "0x92990070072d50090071540070e30e20e10e00ce0120090e30092d5009", + "0x2450070072d50090180092980070072d50090120091780070072d5009016", + "0x2d500901e00902a0071cc0092d500901d00901d0070e70092d50091eb009", + "0x2470071d00092d50092a600902c0070f80092d500902100906e0071cd009", + "0x160092d50090072250070fa1d00f81cd1cc0120090fa0092d50090e7009", + "0x181542d500900e00929a0070072d50090071a10070072d500900710b007", + "0x906e0070280092d500900900902a0070260092d500900700901d007020", + "0x92d500902000904a0071ea0092d500901100902c0072b90092d5009154", + "0x92280070242a602101e01d0122d500902a1ea2b90280260122b000702a", + "0x2d500902c00922b0070072d50090071540071eb00940102c0092d5154024", + "0x2a0071ef0092d500901d00901d00702f02e1542d500901800929a007007", + "0x2d50092a600902c00703c0092d500902100906e00703a0092d500901e009", + "0x70400121542d500901200923600703f0092d500902f00904a0071ec009", + "0x310122d500904003f1ec03c03a1ef2ae1890070400092d5009040009070", + "0x2d50090071540072a20094020420092d51540380090620070380361ee1ed", + "0x21f0070472a01542d50092a00092840072a00092d5009042009170007007", + "0x929d00918600729a29d1542d50090450090830070450092d5009047009", + "0x18600704c04a1542d50092980090830072980092d50090072310070072d5", + "0x92d500904c0091240072960092d500929a0091240070072d500904a009", + "0x4e0090240070072d50090071ba00704e0092d500928f29615423200728f", + "0x72d50090071540070500094030072d515404e00923300704e0092d5009", + "0x90520090ec0070520092d500928c00923800728c0092d50090071b0007", + "0x905000923a0070072d500900715400700740400900711f0070540092d5", + "0x90ec0070580092d500916600923d0071660092d50090071b00070072d5", + "0x92d50091690090ec0071690092d500905400923f0070540092d5009058", + "0x1a10070072d50090071540070e600940516a0092d5154169009241007169", + "0x1780070072d50092a00091730070072d500916a0091660070072d5009007", + "0x70072d500902e0092980070072d50090160092990070072d5009012009", + "0x92d50090e50090240070e50092d500900729b00705d0092d5009007021", + "0x1542b90070600092d50090070280070e40092d50090e505d1540260070e5", + "0x2d500903100901d0071700092d50090620092450070620092d50090e4060", + "0x2c0070660092d50091ee00906e0071730092d50091ed00902a007171009", + "0x680661731710120091750092d50091700092470070680092d5009036009", + "0x72d50090e60091660070072d50090071a10070072d5009007154007175", + "0x7a18218007607407317f17d07006e17806c06a0262d500902e00919a007", + "0x901d0071850092d500907f00923d00707f0092d50090071b000707d07c", + "0x92d50091ee00906e0071880092d50091ed00902a0071870092d5009031", + "0x90660070560092d500917d00929c0070860092d500903600902c00708b", + "0x8608b18818701629f0071890092d50091850090ec00708d0092d50092a0", + "0x2ae0092d50092ae0161542270070851862ae0830810122d500918908d056", + "0x902a0070072d500900715400709100940618a0092d51540850092a1007", + "0x2d50090980961542a40070980092d500918600902c0070960092d5009083", + "0x2d500900715400709a00940718d0092d515418c00906200718c09418b011", + "0x91700070072d500918e00916600718e09c1542d500918a0092a9007007", + "0x17806c06a02629d00709f0092d500901218f1542b100718f0092d500918d", + "0x8100901d0070a10092d500907d07c07a18218007607407317f09c07006e", + "0xaa0092d500909400902c0070a80092d500918b00902a0071a40092d5009", + "0x1a40122b50070ab0092d500909f0092b30071a70092d50090a100904a007", + "0x4080ad0092d51540a600917f0070a60a40dd19600e2d50090ab1a70aa0a8", + "0x91660070dc1b11542d50090ad0092550070072d50090071540071af009", + "0xb30092d50090b11b11542570070b10092d50090071b00070072d50090dc", + "0xdd00902a0070da0092d500919600901d0071b70092d50090b3009259007", + "0xf10092d50090a400902c0070f20092d50092ae00906e0070db0092d5009", + "0x2d50090071540070f00f10f20db0da0120090f00092d50091b7009247007", + "0x902a0070ee0092d500919600901d0070ef0092d50091af009245007007", + "0x92d50090a400902c0070ec0092d50092ae00906e0070ed0092d50090dd", + "0x90071540070f60eb0ec0ed0ee0120090f60092d50090ef0092470070eb", + "0x7c00913b0070072d500907d0091740070072d500906a00912e0070072d5", + "0x91770070072d50091820091390070072d500907a0091760070072d5009", + "0x1350070072d500907400917e0070072d500907600917b0070072d5009180", + "0x70072d500918a0092af0070072d500917f0091330070072d5009073009", + "0x72d50091780091840070072d500906e0091300070072d5009070009183", + "0x2d500909a0092450070072d50090120091780070072d500906c009165007", + "0x6e0070f30092d500918b00902a0070f40092d500908100901d0070f5009", + "0x2d50090f50092470070e90092d500909400902c0070ea0092d50092ae009", + "0x906a00912e0070072d50090071540070e80e90ea0f30f40120090e8009", + "0x7d0091740070072d500906c0091650070072d50090120091780070072d5", + "0x91390070072d500907a0091760070072d500907c00913b0070072d5009", + "0x17e0070072d500907600917b0070072d50091800091770070072d5009182", + "0x70072d500917f0091330070072d50090730091350070072d5009074009", + "0x72d50091780091840070072d500906e0091300070072d5009070009183", + "0x8300902a0070d60092d500908100901d0070d50092d5009091009245007", + "0xd90092d500918600902c0070d80092d50092ae00906e0070d70092d5009", + "0x2d50090071540070de0d90d80d70d60120090de0092d50090d5009247007", + "0x90160092990070072d50090120091780070072d500902e009298007007", + "0x2a0070ce0092d500903100901d0070df0092d50092a20092450070072d5", + "0x2d500903600902c0070e10092d50091ee00906e0070e00092d50091ed009", + "0x71540070e30e20e10e00ce0120090e30092d50090df0092470070e2009", + "0x92980070072d50090120091780070072d50090160092990070072d5009", + "0x1cc0092d500901d00901d0070e70092d50091eb0092450070072d5009018", + "0x2a600902c0070f80092d500902100906e0071cd0092d500901e00902a007", + "0x70fa1d00f81cd1cc0120090fa0092d50090e70092470071d00092d5009", + "0x90071b00070110092d50091540091540260071540092d5009007009124", + "0x92ae0092d500900e0091440070120092d500901100905200700e0092d5", + "0x260242a602101e01d0200180162ae0262d500900e00919a0072ae012154", + "0x70072d50090160091650070072d50092ae00912e00702c02a1ea2b9028", + "0x72d500901e0091810070072d50090200091300070072d5009018009184", + "0x2d500902400917e0070072d50092a60091350070072d5009021009133007", + "0x92b90091390070072d50090280091770070072d500902600917b007007", + "0x2c0091740070072d500902a00913b0070072d50091ea0091760070072d5", + "0x70360092d500900900902a0071ee0092d500900700901d0070072d5009", + "0x901d0092b80071ef0092d500901100902c0070380092d500915400906e", + "0x3c03a1ef0380361ee2ae2ba00703c0092d500901200906600703a0092d5", + "0x703f0094091ec0092d51541ed00908b0071ed03102f02e1eb0122d5009", + "0x92d50090400092bb0070400092d50091ec0090860070072d5009007154", + "0x902a0072a00092d50091eb00901d0072a20092d50090420092bc007042", + "0x92d500903100902c0070470092d500902f00906e0070450092d500902e", + "0x900715400729a29d0470452a001200929a0092d50092a20092be00729d", + "0x2a00704a0092d50091eb00901d0072980092d500903f0092c00070072d5", + "0x2d500903100902c0072960092d500902f00906e00704c0092d500902e009", + "0x923000704e28f29604c04a01200904e0092d50092980092be00728f009", + "0x92d50090090090520070120092d50091540090240071540092d5009007", + "0x1b00070072d500900e00916600700e0111542d50092ae0121540850072ae", + "0x92d50090160091440070180092d50090110090520070160092d5009007", + "0x2a602101e01d0200180162ae0262d500900e00919a007020018154009020", + "0x2d50090160091650070072d50092ae00912e00702c02a1ea2b9028026024", + "0x901e0091810070072d500901d0091830070072d5009018009184007007", + "0x2400917e0070072d50092a60091350070072d50090210091330070072d5", + "0x91390070072d50090280091770070072d500902600917b0070072d5009", + "0x1740070072d500902a00913b0070072d50091ea0091760070072d50092b9", + "0x92d500900900902a0071ee0092d500900700901d0070072d500902c009", + "0x92c10071ef0092d500901100902c0070380092d500915400906e007036", + "0x1ef0380361ee2ae2c200703c0092d500901200907000703a0092d5009020", + "0x940a1ec0092d51541ed0090620071ed03102f02e1eb0122d500903c03a", + "0x90400091510070400092d50091ec0091700070072d500900715400703f", + "0x72a00092d50091eb00901d0072a20092d500904200915f0070420092d5", + "0x903100902c0070470092d500902f00906e0070450092d500902e00902a", + "0x15400729a29d0470452a001200929a0092d50092a200900000729d0092d5", + "0x4a0092d50091eb00901d0072980092d500903f00921d0070072d5009007", + "0x3100902c0072960092d500902f00906e00704c0092d500902e00902a007", + "0x704e28f29604c04a01200904e0092d500929800900000728f0092d5009", + "0x915400906e0070210092d500900900902a00701e0092d500900700901d", + "0x2600e1542d500900e0092c70070240092d500901100902c0072a60092d5", + "0x1e2ae1890070280092d50090120090700070260092d500902600904a007", + "0x92d515401d00906200701d0200180162ae0122d50090280260242a6021", + "0x1d00702a0092d50092b90091700070072d50090071540071ea00940b2b9", + "0x2d500901800906e0071ee0092d500901600902a0071ed0092d50092ae009", + "0x71ef00e1542d500900e0092c70070380092d500902000902c007036009", + "0x3a00906600703a02a1542d500902a0092840071ef0092d50091ef00904a", + "0x2f02e1eb02c0122d500903a1ef0380361ee1ed2ae2c800703a0092d5009", + "0xef0070072d50090071540071ec00940c03c0092d51540310090f0007031", + "0x90400090ed0070420401542d500903f0090ee00703f0092d500903c009", + "0x90ee0072a00092d50092a200923d0072a20092d50090071b00070072d5", + "0x92d50090470090ec0070072d50090450090ed0070470451542d50092a0", + "0x1660070072d500900715400729a00940d29d0092d5154042009241007047", + "0x92d500929800923f0072980092d50090470092c90070072d500929d009", + "0x2d500900715400700740e00900711f00704c0092d500904a0090ec00704a", + "0x2960090ec0072960092d50090470092c90070072d500929a009166007007", + "0x2d500900715400704e00940f28f0092d515404c00924100704c0092d5009", + "0x1eb00902a0070580092d500902c00901d0070072d500928f009166007007", + "0xe60092d500902f00902c00716a0092d500902e00906e0071690092d5009", + "0x928400705d0092d500905d00904a00705d00e1542d500900e0092c7007", + "0x16a1690582ae2ca0070e50092d50090e50090660070e502a1542d500902a", + "0x4100e40092d515416600909100716605405228c0500122d50090e505d0e6", + "0x620090940070620092d50090e400918b0070072d5009007154007060009", + "0x70660092d50090072cf0071730092d50090072cf0071711701542d5009", + "0x918c00706a1751542d50090680090940070680092d50090661731542d1", + "0x6e0092d500906a0090960071780092d50091710090960070072d5009175", + "0x17d0094120700092d515406c00924100706c0092d500906e178154411007", + "0x72d500902a0091730070072d50090700091660070072d5009007154007", + "0x92d50090072cf00717f0092d50090074130070072d500900e009298007", + "0x960071820092d500905000901d0070740092d500907317f1542d1007073", + "0x7c07a18201141400707c0092d500907400909600707a0092d5009170009", + "0x900715400707f00941507d0092d51541800090910071800761542d5009", + "0x2d60070810092d50091850094160071850092d500907d00918b0070072d5", + "0x2d500928c00902a0071860092d500907600901d0070830092d5009081009", + "0x4170071880092d500905400902c0071870092d500905200906e007085009", + "0x70072d500900715400708b18818708518601200908b0092d5009083009", + "0x928c00902a0070560092d500907600901d0070860092d500907f009418", + "0x718a0092d500905400902c0071890092d500905200906e00708d0092d5", + "0x72d500900715400709118a18908d0560120090910092d5009086009417", + "0x2d500905000901d0070072d500917000918c0070072d500917d009166007", + "0x4a00709a0092d500905400902c00718d0092d500928c00902a007098009", + "0x9a18d09801241900718e0092d500902a00906600709c0092d500900e009", + "0x9f00941a18f0092d515409600909100709618c09418b00e2d500918e09c", + "0x2d50090a10094160070a10092d500918f00918b0070072d5009007154007", + "0x2a0070a40092d500918b00901d0070dd0092d50091960092d6007196009", + "0x2d500918c00902c0071a40092d500905200906e0070a60092d5009094009", + "0x71540070aa0a81a40a60a40120090aa0092d50090dd0094170070a8009", + "0x70ab0092d500918b00901d0071a70092d500909f0094180070072d5009", + "0x918c00902c0071af0092d500905200906e0070ad0092d500909400902a", + "0x1540070dc1b11af0ad0ab0120090dc0092d50091a70094170071b10092d5", + "0x4180070072d500902a0091730070072d500900e0092980070072d5009007", + "0x2d500928c00902a0070b30092d500905000901d0070b10092d5009060009", + "0x4170070db0092d500905400902c0070da0092d500905200906e0071b7009", + "0x70072d50090071540070f20db0da1b70b30120090f20092d50090b1009", + "0x72d500900e0092980070072d500902a0091730070072d500904e009166", + "0x90f00f11542d10070f00092d500900741b0070f10092d500900741b007", + "0x70ed0092d50090ee0092d60070ee0092d50090ef0094160070ef0092d5", + "0x902e00906e0070eb0092d50091eb00902a0070ec0092d500902c00901d", + "0x90f40092d50090ed0094170070f50092d500902f00902c0070f60092d5", + "0x70072d500902a0091730070072d50090071540070f40f50f60eb0ec012", + "0x2d500902c00901d0070f30092d50091ec0094180070072d500900e009298", + "0x2c0070e80092d500902e00906e0070e90092d50091eb00902a0070ea009", + "0xd50e80e90ea0120090d60092d50090f30094170070d50092d500902f009", + "0x2d50091ea0094180070072d500900e0092980070072d50090071540070d6", + "0x6e0070d90092d500901600902a0070d80092d50092ae00901d0070d7009", + "0x2d50090d70094170070df0092d500902000902c0070de0092d5009018009", + "0x41d0071540071542d500900700941c0070ce0df0de0d90d80120090ce009", + "0x2d500901100941f0070072d500900e00941e00700e0111542d5009154009", + "0x70160092d50092ae0091540260072ae0092d5009012009420007012009", + "0x902000941f0070072d500901800941e0070200181542d500900700941d", + "0x210092d500901e01615402600701e0092d500901d00942000701d0092d5", + "0x92a60091440070240092d50090210090520072a60092d50090071b0007", + "0x15415400911b0071540092d50090090090110070260241540090260092d5", + "0x92d500900e0091b60070072d500900715400701200942100e0111542d5", + "0x711f0070180092d50092ae0091b40070160092d500901100911d0072ae", + "0x200091ac0070200092d50090071b00070072d5009007154007007422009", + "0x180092d500901d0091b40070160092d500901200911d00701d0092d5009", + "0x1800912200701e0092d500901e00917500701e0092d500901600916a007", + "0x92d50090210091a80070072d50090071540072a60094230210092d5154", + "0x90240071ea0092d500900700901d0070260092d5009024009124007024", + "0x1542b90094250072b90281542d500902a1ea15442400702a0092d5009026", + "0x2e0092d500901e0090110070072d50090071540071eb00942602c0092d5", + "0x1b60070072d50090071540071ed00942703102f1542d515402e00911b007", + "0x2d50091ee0091b40070360092d500902f00911d0071ee0092d5009031009", + "0x92d50090071b00070072d500900715400700742800900711f007038009", + "0x91b40070360092d50091ed00911d00703a0092d50091ef0091ac0071ef", + "0x92d500903c00917500703c0092d500903600916a0070380092d500903a", + "0x1a80070072d500900715400703f0094291ec0092d515403800912200703c", + "0x2d500902800901d0070420092d50090400091240070400092d50091ec009", + "0x2a02a21542d50090470451544240070470092d5009042009024007045009", + "0x1542d10070072d500900715400729a00942a29d0092d51542a0009425007", + "0x2d50092a200901d00704a0092d500929800942b0072980092d500929d02c", + "0x1100928f0092d500904a00942c0072960092d500903c00917500704c009", + "0x2a200901d0070072d500902c00941e0070072d500900715400728f29604c", + "0x15400700742d00900711f0070500092d500929a00914400704e0092d5009", + "0x1b00070072d500902c00941e0070072d500903f0091660070072d5009007", + "0x92d500928c00914400704e0092d500902800901d00728c0092d5009007", + "0x91750070540092d500904e00901d0070520092d500905000942e007050", + "0x1540070581660540110090580092d500905200942c0071660092d500903c", + "0x16a0092d50091eb0091440071690092d500902800901d0070072d5009007", + "0x70072d50092a60091660070072d500900715400700742f00900711f007", + "0x2d50090e60091440071690092d500900700901d0070e60092d50090071b0", + "0x1750070e50092d500916900901d00705d0092d500916a00942e00716a009", + "0x70600e40e50110090600092d500905d00942c0070e40092d500901e009", + "0x19a0070072d50090071a10070072d500900710b0070180092d5009007225", + "0x2f02e1eb02c02a1ea2b90280260242a602101e01d0200262d500900e009", + "0x902a00703a0092d500900700901d0071ed0311542d50092b9009430007", + "0x92d50091ed0094310071ec0092d500901100902c00703c0092d5009009", + "0x1541ef0090620071ef0380361ee00e2d500903f1ec03c03a00e43200703f", + "0x2a20092d50090400091700070072d50090071540070420094330400092d5", + "0x90830072a00092d500904500921f0070452a21542d50092a2009284007", + "0x29a0092d50090072310070072d500904700918600729d0471542d50092a0", + "0x29d0091240070072d500929800918600704a2981542d500929a009083007", + "0x92d500929604c1542320072960092d500904a00912400704c0092d5009", + "0x15428f00923300728f0092d500928f0090240070072d50090071ba00728f", + "0x2380070500092d50090071b00070072d500900715400704e0094340072d5", + "0x743500900711f0070520092d500928c0090ec00728c0092d5009050009", + "0x540092d50090071b00070072d500904e00923a0070072d5009007154007", + "0x5200923f0070520092d50091660090ec0071660092d500905400923d007", + "0x1690092d51540580092410070580092d50090580090ec0070580092d5009", + "0x91690091660070072d50090071a10070072d500900715400716a009436", + "0x180092990070072d50092ae00918c0070072d50090120091780070072d5", + "0x913b0070072d500902f0091740070072d50092a20091730070072d5009", + "0x1770070072d500902c0091390070072d50091eb0091760070072d500902e", + "0x70072d500903100917e0070072d50091ea00917b0070072d500902a009", + "0x72d50090240091810070072d50090260091330070072d5009028009135", + "0x2d500901e0091840070072d50090210091300070072d50092a6009183007", + "0x2d50090070210070072d500902000912e0070072d500901d009165007007", + "0x15402600705d0092d500905d00902400705d0092d50090074370070e6009", + "0x2d50090e50e41542b90070e40092d50090070280070e50092d500905d0e6", + "0x2a0071700092d50091ee00901d0070620092d5009060009245007060009", + "0x2d500903800902c0071730092d500915400906e0071710092d5009036009", + "0x71540070680661731711700120090680092d5009062009247007066009", + "0x260242a602101e01d02002629d0070072d500916a0091660070072d5009", + "0x6a1542d500917500929a0071750092d500902f02e1eb02c02a1ea031028", + "0x906e0070740092d500903600902a0070730092d50091ee00901d00706c", + "0x92d500906c00904a0071800092d500903800902c0070760092d5009154", + "0x18800707a0092d500907a00906600707a2a21542d50092a2009284007182", + "0x906a00904a00717f17d07006e1780122d500907a1821800760740732ae", + "0x72d500900715400707d00943807c0092d515417f00908b00706a0092d5", + "0x901d0070810092d500907c00908600718507f1542d500906a00929a007", + "0x92d500907000906e0070860092d500906e00902a00708b0092d5009178", + "0x92360071890092d500918500904a00708d0092d500917d00902c007056", + "0x5608608b2ae18900718a0092d500918a00907000718a0811542d5009081", + "0x4390910092d51541880090620071881870851860830122d500918a18908d", + "0x2d50092a20091710070072d50090071a10070072d500900715400718b009", + "0x21f0070960092d500918c00921e0070072d500909400917300718c094154", + "0x2d500918d00917100718d0092d50090910091700070980092d5009096009", + "0x21f00718e0092d500909c00921e0070072d500909a00917300709c09a154", + "0x909f0091860070a109f1542d500909800908300718f0092d500918e009", + "0x1240070072d50091960091860070dd1961542d500918f0090830070072d5", + "0x90a60a41542320070a60092d50090dd0091240070a40092d50090a1009", + "0x943a0072d51541a40092330071a40092d50091a40090240071a40092d5", + "0x918600902a0071af0092d500908300901d0070072d50090071540070a8", + "0x70b10092d500918700902c0070dc0092d500908500906e0071b10092d5", + "0x90120092360071b70092d50090810090700070b30092d500907f00904a", + "0x2ae1542d50092ae00941c0070da0092d50090da0090700070da0121542d5", + "0xdb0da1b70b30b10dc1b11af01818f0070db0092d50090db0090960070db", + "0x917f0070160092d50090160181542270070ad0ab0161a70aa0122d5009", + "0x2d50091a700902a0070072d50090071540070f100943b0f20092d51540ad", + "0xef0f00112d50090ec0ed1542a40070ec0092d50090ab00902c0070ed009", + "0x2550070072d50090071540070f600943c0eb0092d51540ee0090620070ee", + "0x2d50090eb0091700070072d50090f40091660070f40f51542d50090f2009", + "0xd70092d50090aa00901d0070ea0092d50090f32ae01201143d0070f3009", + "0xf500904a0070d90092d50090ef00902c0070d80092d50090f000902a007", + "0xdf0de0d90d80d701243f0070df0092d50090ea00943e0070de0092d5009", + "0x1540070e00094400ce0092d51540d600917f0070d60d50e80e900e2d5009", + "0x72d50090e20091660070e20e11542d50090ce0092550070072d5009007", + "0xe70092590070e70092d50090e30e11542570070e30092d50090071b0007", + "0xf80092d50090e800902a0071cd0092d50090e900901d0071cc0092d5009", + "0x1cc0092470070fa0092d50090d500902c0071d00092d500901600906e007", + "0x92450070072d50090071540071d40fa1d00f81cd0120091d40092d5009", + "0x92d50090e800902a0071030092d50090e900901d0071020092d50090e0", + "0x92470071060092d50090d500902c0071050092d500901600906e007104", + "0x730070072d50090071540071081061051041030120091080092d5009102", + "0x70072d50092ae00918c0070072d50090120091780070072d50090f2009", + "0x90f000902a00710a0092d50090aa00901d0071d60092d50090f6009245", + "0x710b0092d50090ef00902c0071d50092d500901600906e0071d70092d5", + "0x72d50090071540071d210b1d51d710a0120091d20092d50091d6009247", + "0x2d50090f10092450070072d50090120091780070072d50092ae00918c007", + "0x6e0071ca0092d50091a700902a0071d10092d50090aa00901d00710d009", + "0x2d500910d0092470071120092d50090ab00902c0071100092d5009016009", + "0x90a800923a0070072d50090071540071c91121101ca1d10120091c9009", + "0x180092990070072d50092ae00918c0070072d50090120091780070072d5", + "0x70210070072d500907f0092980070072d50090810091780070072d5009", + "0x71140092d50091140090240071140092d50090074410071cb0092d5009", + "0x1fc1c51542b90071c50092d50090070280071fc0092d50091141cb154026", + "0x1190092d500908300901d0071be0092d50091c30092450071c30092d5009", + "0x18700902c00711b0092d500908500906e0071ba0092d500918600902a007", + "0x711d1b611b1ba11901200911d0092d50091be0092470071b60092d5009", + "0x18c0070072d50090120091780070072d50090071a10070072d5009007154", + "0x70072d50090810091780070072d50090180092990070072d50092ae009", + "0x92d500918b0092450070072d50092a20091730070072d500907f009298", + "0x906e0071b00092d500918600902a00711f0092d500908300901d0071b4", + "0x92d50091b40092470071220092d500918700902c0071ac0092d5009085", + "0x72d50090071a10070072d50090071540071a81221ac1b011f0120091a8", + "0x2d50090180092990070072d50092ae00918c0070072d5009012009178007", + "0x907d0092450070072d50092a20091730070072d500906a009298007007", + "0x71a30092d500906e00902a0071b80092d500917800901d0071240092d5", + "0x91240092470071280092d500917d00902c0071a10092d500907000906e", + "0x120091780070072d500900715400719e1281a11a31b801200919e0092d5", + "0x912e0070072d50090180092990070072d50092ae00918c0070072d5009", + "0x1760070072d500902e00913b0070072d500902f0091740070072d5009020", + "0x70072d500902a0091770070072d500902c0091390070072d50091eb009", + "0x72d50090280091350070072d500903100917e0070072d50091ea00917b", + "0x2d50092a60091830070072d50090240091810070072d5009026009133007", + "0x901d0091650070072d500901e0091840070072d5009021009130007007", + "0x2a00712c0092d50091ee00901d00712a0092d50090420092450070072d5", + "0x2d500903800902c0071990092d500915400906e0071950092d5009036009", + "0x722500719b19819919512c01200919b0092d500912a009247007198009", + "0x2ae0092360070072d50090071a10070072d500900710b0070200092d5009", + "0x1542d500901e00908300701e0092d500901d00923000701d2ae1542d5009", + "0x240090830070240092d50090072310070072d50090210091860072a6021", + "0x2b90092d50092a60091240070072d50090260091860070280261542d5009", + "0x902400702a0092d50091ea2b91542320071ea0092d5009028009124007", + "0x2d500900715400702c0094420072d515402a00923300702a0092d500902a", + "0x2e0090ec00702e0092d50091eb0092380071eb0092d50090071b0007007", + "0x2c00923a0070072d500900715400700744300900711f00702f0092d5009", + "0xec0071ed0092d500903100923d0070310092d50090071b00070072d5009", + "0x2d50091ee0090ec0071ee0092d500902f00923f00702f0092d50091ed009", + "0x70072d50090071540070380094440360092d51541ee0092410071ee009", + "0x72d500900e0092980070072d500901600918c0070072d5009036009166", + "0x2d50090120091780070072d50092ae0091780070072d5009020009299007", + "0x903a00902400703a0092d50090074450071ef0092d5009007021007007", + "0x71ec0092d500900702800703c0092d500903a1ef15402600703a0092d5", + "0x700901d0070400092d500903f00924500703f0092d500903c1ec1542b9", + "0x2a00092d500915400906e0072a20092d500900900902a0070420092d5009", + "0x2a20420120090470092d50090400092470070450092d500901100902c007", + "0x900902a0070072d50090380091660070072d50090071540070470452a0", + "0x112d500904c04a1542a400704c0092d500901100902c00704a0092d5009", + "0x72d500900715400728f0094462960092d515429800906200729829a29d", + "0x902a0071690092d500900700901d00705004e1542d500900e00929a007", + "0x92d500929a00902c0070e60092d500915400906e00716a0092d500929d", + "0x700070e40121542d50090120092360070e50092d500905000904a00705d", + "0x5228c0122d50090e40e505d0e616a1692ae1890070e40092d50090e4009", + "0x72d50090071540070620094470600092d5154058009062007058166054", + "0x921f0071731701542d50091700092840071700092d5009060009170007", + "0x2d50090660091860070680661542d50091710090830071710092d5009173", + "0x918600706c06a1542d50091750090830071750092d5009007231007007", + "0x6e0092d500906c0091240071780092d50090680091240070072d500906a", + "0x71ba00717d0092d50092960091700070700092d500906e178154232007", + "0x94480072d51540700092330070700092d50090700090240070072d5009", + "0x2d50090730092380070730092d50090071b00070072d500900715400717f", + "0x900715400700744900900711f0070760092d50090740090ec007074009", + "0x18000923d0071800092d50090071b00070072d500917f00923a0070072d5", + "0x7a0092d500907600923f0070760092d50091820090ec0071820092d5009", + "0x707d00944a07c0092d515407a00924100707a0092d500907a0090ec007", + "0x1780070072d500907c0091660070072d50090071a10070072d5009007154", + "0x70072d500901600918c0070072d50090120091780070072d50092ae009", + "0x72d50091700091730070072d50090200092990070072d500917d009173", + "0x92d500900729b00707f0092d50090070210070072d500904e009298007", + "0x280070810092d500918507f1540260071850092d5009185009024007185", + "0x2d50091860092450071860092d50090810831542b90070830092d5009007", + "0x6e0071880092d500905200902a0071870092d500928c00901d007085009", + "0x2d50090850092470070860092d500916600902c00708b0092d5009054009", + "0x907d0091660070072d500900715400705608608b188187012009056009", + "0x70940092d500905200902a00718908d1542d500904e00929a0070072d5", + "0x18c09401144b0070960092d500918900904a00718c0092d500916600902c", + "0x15400718d00944c0980092d515418b00908b00718b09118a0112d5009096", + "0x18e0092d50090072cf00709c09a1542d50090160090940070072d5009007", + "0x9f00909400709f0092d500918f18e1542d100718f0092d50090072cf007", + "0xdd1542d500909c0090940070072d50090a100918c0071960a11542d5009", + "0x918c0071a40a61542d50091960090940070072d50090dd00918c0070a4", + "0x1a70092d50091a40090960070aa0092d50090a40090960070072d50090a6", + "0x90ec0070ab0092d50090a800923f0070a80092d50091a70aa15444d007", + "0x90071540071af00944e0ad0092d51540ab0092410070ab0092d50090ab", + "0x908d0092980070072d50090ad0091660070072d50090071a10070072d5", + "0x200092990070072d500909a00918c0070072d500909800944f0070072d5", + "0x91780070072d50090120091780070072d50091700091730070072d5009", + "0x4500071b10092d50090070210070072d500917d0091730070072d50092ae", + "0x2d50090dc1b11540260070dc0092d50090dc0090240070dc0092d5009007", + "0x2450071b70092d50090b10b31542b90070b30092d50090070280070b1009", + "0x2d500918a00902a0070db0092d500928c00901d0070da0092d50091b7009", + "0x2470070f00092d500909100902c0070f10092d500905400906e0070f2009", + "0x70072d50090071540070ef0f00f10f20db0120090ef0092d50090da009", + "0x90ee0094510070ee1701542d50091700092840070072d50091af009166", + "0x70f30092d500918a00902a0070f40092d500928c00901d0070ed0092d5", + "0x917d0092840070e90092d50090ed0094520070ea0092d500909100902c", + "0xe80e90ea0f30f40124530070e80092d50090e80090660070e817d1542d5", + "0x1540070d60094540d50092d51540f50090910070f50f60eb0ec00e2d5009", + "0xde0092d50090ec00901d0070d70092d50090d500918b0070072d5009007", + "0x90960070ce09a1542d500909a00941c0070df0092d50090d7009096007", + "0xd900923f0070d90d81542d50090ce0df0de0114550070ce0092d50090ce", + "0xe10092d51540e00092410070e00092d50090e00090ec0070e00092d5009", + "0x90e10091660070072d50090071a10070072d50090071540070e2009456", + "0x120091780070072d50091700091730070072d50090200092990070072d5", + "0x918c0070072d500917d0091730070072d50092ae0091780070072d5009", + "0x210070072d500908d0092980070072d500909800944f0070072d500909a", + "0xe70092d50090e70090240070e70092d50090074570070e30092d5009007", + "0x1cd1542b90071cd0092d50090070280071cc0092d50090e70e3154026007", + "0x92d50090d800901d0071d00092d50090f80092450070f80092d50091cc", + "0x902c0071020092d500905400906e0071d40092d50090eb00902a0070fa", + "0x1041031021d40fa0120091040092d50091d00092470071030092d50090f6", + "0x1542d500908d00929a0070072d50090e20091660070072d5009007154007", + "0x6e0071d20092d50090eb00902a00710b0092d50090d800901d007106105", + "0x2d500910600904a0071d10092d50090f600902c00710d0092d5009054009", + "0x71100092d50091100090660071101701542d50091700092840071ca009", + "0x1d50090f00071d51d710a1d61080122d50091101ca1d110d1d210b2ae2c8", + "0x92d50090980090860070072d50090071540071c90094581120092d5154", + "0x1c50094591fc0092d51541140092410071140092d50091120090ef0071cb", + "0x92d500910800901d0070072d50091fc0091660070072d5009007154007", + "0x902c0070180092d500910a00906e0071be0092d50091d600902a0071c3", + "0x700745a00900711f0071ba0092d500910500904a0071190092d50091d7", + "0x1b00092d500910800901d0070072d50091c50091660070072d5009007154", + "0x1d700902c0071220092d500910a00906e0071ac0092d50091d600902a007", + "0x121542d50090120092360071240092d500910500904a0071a80092d5009", + "0x960071a309a1542d500909a00941c0071b80092d50091b80090700071b8", + "0x11b0122d50091a31b81241a81221ac1b001645b0071a30092d50091a3009", + "0x2d500900715400712800945c1a10092d515411f00917f00711f1b411d1b6", + "0x901d0070072d500912a00916600712a19e1542d50091a1009255007007", + "0x92d500911d00906e0071be0092d50091b600902a0071c30092d500911b", + "0x945d0071ba0092d500919e00904a0071190092d50091b400902c007018", + "0x92d500911900902c00719b0092d50091be00902a00712c0092d5009170", + "0x6600718417d1542d500917d00928400712e0092d500912c00945e00719a", + "0x913000909600713009a1542d500909a00941c0071840092d5009184009", + "0x1542270071981991950112d500913018412e19a19b01245f0071300092d5", + "0x71540071810094601830092d51541980092280070180092d5009018020", + "0x72310071330092d50090070210070072d500918300922b0070072d5009", + "0x72d500917e00918600717b17e1542d50091350090830071350092d5009", + "0x17615408500713b0092d50091330090520071760092d500917b009024007", + "0x1542d50092ae0090560070072d50091390091660071391771542d500913b", + "0x8d00716b0092d500917700905200716c0092d500916f00907000716f174", + "0x90120090560070072d500913f00916600713f16e1542d500916b16c154", + "0x1610092d500916e0090520071650092d50091680090700071681421542d5", + "0x90940070072d50091440091660071441471542d500916116515408d007", + "0x2d500914700905200721d0092d500915100909600715115e1542d500909a", + "0x70072d500900000916600700015f1542d500921e21d15409800721e009", + "0x915f00905800721f0092d50092200094610072200092d50091cb009070", + "0x72250092d500922300916a0070072d50092210091690072232211542d5", + "0x4632272261542d515422521f19919500e4620072250092d5009225009175", + "0x946400722d0092d50090071b00070072d500900715400722c22b228011", + "0x92d500922700902c0072300092d500922600902a00722f0092d500922d", + "0x2d500900715400700746600900711f0072320092d500922f009465007231", + "0x902c0072300092d500922800902a0072330092d500922c009467007007", + "0x1542d50092320094680072320092d50092330094650072310092d500922b", + "0x23d00946b23a0092d515423800946a0070072d5009236009469007238236", + "0x70072d500923a0091660070072d50090071a10070072d5009007154007", + "0x2a0072490092d50091c300901d00723f0092d500917d15e17414200e46c", + "0x2d50091ba00904a00724d0092d500923100902c00724b0092d5009230009", + "0x2d500925124f24d24b24901246e0072510092d500923f00946d00724f009", + "0x900715400725500946f2530092d515424700917f00724724524324100e", + "0x1b00070072d50092590091660072592571542d50092530092550070072d5", + "0x2d500925d00925900725d0092d500925b25715425700725b0092d5009007", + "0x6e0072630092d500924300902a0072610092d500924100901d00725f009", + "0x2d500925f0092470072670092d500924500902c0072650092d5009018009", + "0x92550092450070072d5009007154007269267265263261012009269009", + "0x726f0092d500924300902a00726d0092d500924100901d00726b0092d5", + "0x926b0092470072730092d500924500902c0072710092d500901800906e", + "0x90071a10070072d500900715400727527327126f26d0120092750092d5", + "0x17d0091730070072d50091ba0092980070072d500923d00912c0070072d5", + "0x91780070072d50091740091780070072d500915e00918c0070072d5009", + "0x240072790092d50090074700072770092d50090070210070072d5009142", + "0x2d500900702800727b0092d50092792771540260072790092d5009279009", + "0x72840092d500927f00924500727f0092d500927b27d1542b900727d009", + "0x901800906e00728a0092d500923000902a0072870092d50091c300901d", + "0x928e0092d500928400924700728d0092d500923100902c00728b0092d5", + "0x2980070072d50090071a10070072d500900715400728e28d28b28a287012", + "0x70072d50092ae0091780070072d50090120091780070072d50091ba009", + "0x72d50091cb0091780070072d500909a00918c0070072d500917d009173", + "0x19500902a0072930092d50091c300901d0072910092d5009181009245007", + "0x29b0092d500919900902c0072990092d500901800906e0072950092d5009", + "0x2d500900715400729c29b29929529301200929c0092d5009291009247007", + "0x2d50090120091780070072d50091700091730070072d50090071a1007007", + "0x909a00918c0070072d500917d0091730070072d50092ae009178007007", + "0x1280092450070072d50090200092990070072d50091cb0091780070072d5", + "0x2a40092d50091b600902a0072a10092d500911b00901d00729f0092d5009", + "0x29f0092470072aa0092d50091b400902c0072a90092d500911d00906e007", + "0x71a10070072d50090071540072ab2aa2a92a42a10120092ab0092d5009", + "0x91780070072d50090120091780070072d50091700091730070072d5009", + "0x44f0070072d500909a00918c0070072d500917d0091730070072d50092ae", + "0x70072d50090200092990070072d50091050092980070072d5009098009", + "0x91d600902a0072af0092d500910800901d0072ac0092d50091c9009245", + "0x72b30092d50091d700902c0072b10092d500910a00906e0072b00092d5", + "0x72d50090071540072b52b32b12b02af0120092b50092d50092ac009247", + "0x72d50090200092990070072d500908d0092980070072d50090071a1007", + "0x2d50092ae0091780070072d50090120091780070072d5009170009173007", + "0x909800944f0070072d500909a00918c0070072d500917d009173007007", + "0x2a0072ba0092d50090ec00901d0072b80092d50090d60092450070072d5", + "0x2d50090f600902c0072bc0092d500905400906e0072bb0092d50090eb009", + "0x71540072c02be2bc2bb2ba0120092c00092d50092b80092470072be009", + "0x1600918c0070072d500908d0092980070072d50090071a10070072d5009", + "0x91730070072d50090200092990070072d500917d0091730070072d5009", + "0x2450070072d50092ae0091780070072d50090120091780070072d5009170", + "0x2d500918a00902a0072c20092d500928c00901d0072c10092d500918d009", + "0x2470072c90092d500909100902c0072c80092d500905400906e0072c7009", + "0x70072d50090071540072ca2c92c82c72c20120092ca0092d50092c1009", + "0x72d500901600918c0070072d50090120091780070072d50092ae009178", + "0x2d500904e0092980070072d50090200092990070072d5009296009293007", + "0x902a0072d10092d500928c00901d0072cf0092d5009062009245007007", + "0x92d500916600902c0074130092d500905400906e0074110092d5009052", + "0x90071540074164144134112d10120094160092d50092cf009247007414", + "0x200092990070072d500900e0092980070072d500901600918c0070072d5", + "0x92450070072d50090120091780070072d50092ae0091780070072d5009", + "0x92d500929d00902a0074170092d500900700901d0072d60092d500928f", + "0x924700741b0092d500929a00902c0074190092d500915400906e007418", + "0xe0262d500901100919a00741c41b41941841701200941c0092d50092d6", + "0x2d500900e00912e0071ea2b90280260242a602101e01d0200180162ae012", + "0x90160091300070072d50092ae0091840070072d5009012009165007007", + "0x1d0091330070072d50090200091810070072d50090180091830070072d5", + "0x91770070072d500902100917e0070072d500901e0091350070072d5009", + "0x13b0070072d50090280091760070072d50090260091390070072d5009024", + "0x2f0092d500900700901d0070072d50091ea0091740070072d50092b9009", + "0x2a60092d90071ed0092d500915400902c0070310092d500900900902a007", + "0x19600702e1eb02c02a00e2d50091ee1ed03102f00e4710071ee0092d5009", + "0x90360090dd0070072d50090071540070380094720360092d515402e009", + "0x703c0092d500903a00947400703a0092d50091ef0094730071ef0092d5", + "0x91eb00902c00703f0092d500902c00902a0071ec0092d500902a00901d", + "0x715400704204003f1ec00e0090420092d500903c0094750070400092d5", + "0x72a00092d500902a00901d0072a20092d50090380094760070072d5009", + "0x92a20094750070470092d50091eb00902c0070450092d500902c00902a", + "0x900710b00700e0092d500900747700729d0470452a000e00929d0092d5", + "0x1540091750070180092d500900700901d0070072d50090071a10070072d5", + "0x1540160091800070162ae0120112d50090200181540760070200092d5009", + "0x240092d500901200901d0070072d500900715400701d0094780110092d5", + "0xe1544790070280092d50092ae0091750070260092d500900900902a007", + "0x947b0072a602101e0112d500902802602401147a0070110092d5009011", + "0x2d50092b900947d0070072d50090071540071ea00947c2b90092d51542a6", + "0x72d500900715400702e00947f1eb0092d515402c00947e00702c02a154", + "0x948100703102f1542d50091ed0094800071ed0092d500902a009175007", + "0x1ee1eb0110114830070072d50090071540070360094821ee0092d5154031", + "0x92d50091ef02f1544850071ef0092d50090380094840070380092d5009", + "0x902a0071ec0092d500901e00901d00703c0092d500903a00948600703a", + "0x15400704003f1ec0110090400092d500903c00948700703f0092d5009021", + "0x4890070072d50091eb0094880070072d50090110090500070072d5009007", + "0x92a20094860072a20092d500904202f1544850070420092d5009036009", + "0x70470092d500902100902a0070450092d500901e00901d0072a00092d5", + "0x500070072d500900715400729d04704501100929d0092d50092a0009487", + "0x2d500929a02a15448500729a0092d500902e0094890070072d5009011009", + "0x2a00704c0092d500901e00901d00704a0092d5009298009486007298009", + "0x728f29604c01100928f0092d500904a0094870072960092d5009021009", + "0x4e0092d50091ea00948a0070072d50090110090500070072d5009007154", + "0x4e00948700728c0092d500902100902a0070500092d500901e00901d007", + "0x900e00948b0070072d500900715400705228c0500110090520092d5009", + "0x71660092d50090542ae1544850070540092d500901d0094890070072d5", + "0x900900902a0071690092d500901200901d0070580092d5009166009486", + "0x90071a10070e616a1690110090e60092d500905800948700716a0092d5", + "0x1b10070210092d500900900902a00701e0092d500900700901d0070072d5", + "0x2a602101e00e48c0070240092d50092ae0090dc0072a60092d5009011009", + "0x702800948d0260092d515401d0090f500701d02001801600e2d5009024", + "0x262d500901200919a0072b90092d50090260090f40070072d5009007154", + "0x91ea00912e0071ec03c03a1ef0380361ee1ed03102f02e1eb02c02a1ea", + "0x1eb0091300070072d500902c0091840070072d500902a0091650070072d5", + "0x91330070072d500902f0091810070072d500902e0091830070072d5009", + "0x17b0070072d50091ee00917e0070072d50091ed0091350070072d5009031", + "0x70072d500903a0091760070072d50091ef0091390070072d5009036009", + "0x92d500901600901d0070072d50091ec0091740070072d500903c00913b", + "0x902c00729d0092d500915400906e0070470092d500901800902a007045", + "0x92d50092b90090240072980092d500903800948e00729a0092d500900e", + "0x1960072a02a204204003f0122d500904a29829a29d0470452ae48f00704a", + "0x904c0090dd0070072d500900715400729600949004c0092d51542a0009", + "0x70500092d500904e00947400704e0092d500928f00947300728f0092d5", + "0x904200906e0070520092d500904000902a00728c0092d500903f00901d", + "0x70580092d50092a200902c0071660092d50090200091b10070540092d5", + "0x2d500900715400716905816605405228c2ae0091690092d5009050009475", + "0x902a0070e60092d500903f00901d00716a0092d5009296009476007007", + "0x92d50090200091b10070e50092d500904200906e00705d0092d5009040", + "0xe62ae0090620092d500916a0094750070600092d50092a200902c0070e4", + "0x4760070072d50090120092980070072d50090071540070620600e40e505d", + "0x2d500901800902a0071710092d500901600901d0071700092d5009028009", + "0x2c0070680092d50090200091b10070660092d500915400906e007173009", + "0x680661731712ae00906a0092d50091700094750071750092d500900e009", + "0x900749200701d0092d50090072250070180092d500900749100706a175", + "0x901200929a0070072d50090071a10070072d500900710b0070210092d5", + "0x1eb0092d500900900902a00702c0092d500900700901d0070242a61542d5", + "0x2400904a00702f0092d500900e00902c00702e0092d500915400906e007", + "0x2a1ea2b90280260122d500903102f02e1eb02c0124930070310092d5009", + "0x922b0070072d50090071540071ee0094941ed0092d515402a009228007", + "0x3c0092d50091ea00902c00703a0092d500902800902a0070072d50091ed", + "0x4961ec0092d51541ef0091960071ef0380360112d500903c03a154495007", + "0x901d0070420401542d50092a600929a0070072d500900715400703f009", + "0x92d500903800902c00729a0092d500903600902a00729d0092d5009026", + "0x2a200e2d500904a29829a29d00e0a100704a0092d500904200904a007298", + "0x72d500900715400729600949704c0092d51540470091960070470452a0", + "0x2a200901d00704e0092d500904c0090dd00728f0092d50091ec0090dd007", + "0x1660092d500904e0091980070540092d500928f0091980070520092d5009", + "0x4990580092d515428c00919600728c0501542d5009166054052011498007", + "0x900749a00716a0092d50090580090dd0070072d5009007154007169009", + "0x6016a1542d500916a00949b0070e40092d500905000901d0070e60092d5", + "0xe40114980070620092d50090e60091980070600092d5009060009198007", + "0x15400717000949c01e0092d51540e50091960070e505d1542d5009062060", + "0x1780092d50092a000902a00706c0092d500905d00901d0070072d5009007", + "0x4500902c0070700092d50090110091b100706e0092d50092b900906e007", + "0x2ae1542d50092ae00949d00717f0092d500904000904a00717d0092d5009", + "0x15449e0070740092d500916a0091980070730092d50090730090dc007073", + "0x2ae2d500907407317f17d07006e17806c01849f00701e0092d500901e021", + "0x71540071800094a00760092d515406a00917f00706a175068066173171", + "0x7c07a1542d50090760092550071820092d500901e0090dd0070072d5009", + "0x917300902a0070830092d500917100901d0070072d500907c009166007", + "0x71870092d50090680091b10070850092d500906600906e0071860092d5", + "0x92ae00949d00708b0092d500907a00904a0071880092d500917500902c", + "0x560092d50091820091980070860092d50090860090dc0070862ae1542d5", + "0x8118501602007f07d2ae2d500905608608b1881870851860830184a1007", + "0x17f0070160092d50090160181544a20070200092d500902001d154227007", + "0x908d0092550070072d50090071540071890094a308d0092d5154081009", + "0x718b0092d50092ae0094a40070072d500909100916600709118a1542d5", + "0x918500902c00709a0092d500907f00902a00718d0092d500907d00901d", + "0x718f0092d500918b0094a500718e0092d500918a00904a00709c0092d5", + "0x2d515409800917f00709809618c09400e2d500918f18e09c09a18d0124a6", + "0xdd1961542d500909f0092550070072d50090071540070a10094a709f009", + "0x90a41961542570070a40092d50090071b00070072d50090dd009166007", + "0x70a80092d500909400901d0071a40092d50090a60092590070a60092d5", + "0x90160091b10071a70092d500902000906e0070aa0092d500918c00902a", + "0x91af0092d50091a40092470070ad0092d500909600902c0070ab0092d5", + "0x92d50090a10092450070072d50090071540071af0ad0ab1a70aa0a82ae", + "0x906e0070b10092d500918c00902a0070dc0092d500909400901d0071b1", + "0x92d500909600902c0071b70092d50090160091b10070b30092d5009020", + "0x71540070db0da1b70b30b10dc2ae0090db0092d50091b10092470070da", + "0x1d0070f20092d50091890092450070072d50092ae0091af0070072d5009", + "0x2d500902000906e0070f00092d500907f00902a0070f10092d500907d009", + "0x2470070ed0092d500918500902c0070ee0092d50090160091b10070ef009", + "0x72d50090071540070ec0ed0ee0ef0f00f12ae0090ec0092d50090f2009", + "0x2d50090180094a80070072d500901d0092990070072d50092ae0091af007", + "0x17100901d0070eb0092d50091800092450070072d500901e0094a9007007", + "0xf40092d500906600906e0070f50092d500917300902a0070f60092d5009", + "0xeb0092470070ea0092d500917500902c0070f30092d50090680091b1007", + "0x1af0070072d50090071540070e90ea0f30f40f50f62ae0090e90092d5009", + "0x70072d50090180094a80070072d500901d0092990070072d50092ae009", + "0x72d50090210092db0070072d50090400092980070072d500916a0090a6", + "0x2a000902a0070d50092d500905d00901d0070e80092d5009170009245007", + "0xd80092d50090110091b10070d70092d50092b900906e0070d60092d5009", + "0xd60d52ae0090de0092d50090e80092470070d90092d500904500902c007", + "0x92990070072d50092ae0091af0070072d50090071540070de0d90d80d7", + "0x2980070072d50090210092db0070072d50090180094a80070072d500901d", + "0x92d500905000901d0070df0092d50091690092450070072d5009040009", + "0x91b10070e10092d50092b900906e0070e00092d50092a000902a0070ce", + "0x92d50090df0092470070e30092d500904500902c0070e20092d5009011", + "0x92ae0091af0070072d50090071540070e70e30e20e10e00ce2ae0090e7", + "0x210092db0070072d50090180094a80070072d500901d0092990070072d5", + "0x92450070072d50091ec0094a90070072d50090400092980070072d5009", + "0x92d50092a000902a0071cd0092d50092a200901d0071cc0092d5009296", + "0x902c0070fa0092d50090110091b10071d00092d50092b900906e0070f8", + "0x1d40fa1d00f81cd2ae0091020092d50091cc0092470071d40092d5009045", + "0x2d500901d0092990070072d50092ae0091af0070072d5009007154007102", + "0x92a60092980070072d50090210092db0070072d50090180094a8007007", + "0x2a0071040092d500902600901d0071030092d500903f0092450070072d5", + "0x2d50090110091b10071060092d50092b900906e0071050092d5009036009", + "0x2ae00910a0092d50091030092470071d60092d500903800902c007108009", + "0x70072d50092ae0091af0070072d500900715400710a1d6108106105104", + "0x72d50090210092db0070072d50090180094a80070072d500901d009299", + "0x902600901d0071d70092d50091ee0092450070072d50092a6009298007", + "0x71d20092d50092b900906e00710b0092d500902800902a0071d50092d5", + "0x91d70092470071d10092d50091ea00902c00710d0092d50090110091b1", + "0x4910070180092d50090072250071ca1d110d1d210b1d52ae0091ca0092d5", + "0x929a0070072d50090071a10070072d500900710b00701d0092d5009007", + "0x2d500900900902a0071ea0092d500900700901d00702101e1542d5009012", + "0x4a0071eb0092d500900e00902c00702c0092d500915400906e00702a009", + "0x260242a60122d500902e1eb02c02a1ea01249300702e0092d5009021009", + "0x70072d50090071540070310094aa02f0092d51542b90092280072b9028", + "0x92a600901d0071ee1ed1542d500901e00929a0070072d500902f00922b", + "0x70420092d500902600906e0070400092d500902400902a00703f0092d5", + "0x91ee00904a0072a00092d500902800902c0072a20092d50090110091b1", + "0x470092d50090470090dc0070472ae1542d50092ae00949d0070450092d5", + "0x71ec03c03a1ef0380362ae2d50090470452a02a204204003f0160b1007", + "0x29d0090dd0070072d500900715400729a0094ab29d0092d51541ec009196", + "0x72d500904a0090a600704c04a1542d50092980090a40072980092d5009", + "0x28f0090a600704e28f1542d50092960090a40072960092d50090074ac007", + "0x5228c1542d50090500090a40070500092d500904c0091a40070072d5009", + "0x90540090a40070540092d500904e0091a40070072d500928c0090a6007", + "0x71690092d50090520091a40070072d50091660090a60070581661542d5", + "0x71540070074ae0072d515416a1691544ad00716a0092d50090580091a4", + "0x2a0071710092d500903600901d0070e60092d50090074ac0070072d5009", + "0x2d500903a0091b10070660092d50091ef00906e0071730092d5009038009", + "0x49d00706a0092d50091ed00904a0071750092d500903c00902c007068009", + "0x90e600919800706c0092d500906c0090dc00706c2ae1542d50092ae009", + "0xe40e505d2ae2d500917806c06a17506806617317101849f0071780092d5", + "0x72d50090071540070700094af06e0092d515417000917f007170062060", + "0x90074ac0070072d500917f00916600717f17d1542d500906e009255007", + "0x707c0092d50090e500902a00707a0092d500905d00901d0070730092d5", + "0x906200902c00707f0092d50090600091b100707d0092d50090e400906e", + "0x832ae1542d50092ae00949d0070810092d500917d00904a0071850092d5", + "0x7a0184a10071860092d50090730091980070830092d50090830090dc007", + "0x181542270071821800200160760742ae2d500918608308118507f07d07c", + "0x2d515418200917f0070200092d500902001d1544a20070160092d5009016", + "0x8b1881542d50090850092550070072d50090071540071870094b0085009", + "0x907400901d0070860092d50092ae0094b10070072d500908b009166007", + "0x70940092d500918000902c00718b0092d500907600902a0070910092d5", + "0x18b0910124b30070960092d50090860094b200718c0092d500918800904a", + "0x94b40980092d515418a00917f00718a18908d05600e2d500909618c094", + "0x9c00916600709c09a1542d50090980092550070072d500900715400718d", + "0x718f0092d500908d00902a00718e0092d500905600901d0070072d5009", + "0x918900902c0070a10092d50090200091b100709f0092d500901600906e", + "0x71540070074b500900711f0070dd0092d500909a00904a0071960092d5", + "0x70a60092d500905600901d0070a40092d500918d0092450070072d5009", + "0x90200091b10070a80092d500901600906e0071a40092d500908d00902a", + "0x90ab0092d50090a40092470071a70092d500918900902c0070aa0092d5", + "0x72d50092ae0091af0070072d50090071540070ab1a70aa0a81a40a62ae", + "0x7600902a0071af0092d500907400901d0070ad0092d5009187009245007", + "0xb10092d50090200091b10070dc0092d500901600906e0071b10092d5009", + "0x1b11af2ae0091b70092d50090ad0092470070b30092d500918000902c007", + "0x92990070072d50092ae0091af0070072d50090071540071b70b30b10dc", + "0x70da0092d50090700092450070072d500901d0094a80070072d5009018", + "0x90e400906e0070f20092d50090e500902a0070db0092d500905d00901d", + "0x70ef0092d500906200902c0070f00092d50090600091b10070f10092d5", + "0x2d50090071540070ee0ef0f00f10f20db2ae0090ee0092d50090da009247", + "0x901d0094a80070072d50090180092990070072d50092ae0091af007007", + "0x6e00718f0092d500903800902a00718e0092d500903600901d0070072d5", + "0x2d500903c00902c0070a10092d500903a0091b100709f0092d50091ef009", + "0x1542570070ed0092d50090071b00070dd0092d50091ed00904a007196009", + "0x2d500918e00901d0070eb0092d50090ec0092590070ec0092d50090ed0dd", + "0x1b10070f40092d500909f00906e0070f50092d500918f00902a0070f6009", + "0x2d50090eb0092470070ea0092d500919600902c0070f30092d50090a1009", + "0x2ae0091af0070072d50090071540070e90ea0f30f40f50f62ae0090e9009", + "0x92980070072d500901d0094a80070072d50090180092990070072d5009", + "0xd50092d500903600901d0070e80092d500929a0092450070072d50091ed", + "0x3a0091b10070d70092d50091ef00906e0070d60092d500903800902a007", + "0xde0092d50090e80092470070d90092d500903c00902c0070d80092d5009", + "0x2d50092ae0091af0070072d50090071540070de0d90d80d70d60d52ae009", + "0x901e0092980070072d500901d0094a80070072d5009018009299007007", + "0x2a0070ce0092d50092a600901d0070df0092d50090310092450070072d5", + "0x2d50090110091b10070e10092d500902600906e0070e00092d5009024009", + "0x2ae0090e70092d50090df0092470070e30092d500902800902c0070e2009", + "0x1d0092d50090074b70070180092d50090074b60070e70e30e20e10e00ce", + "0x92d50090072250070240092d50090074910070210092d50090072da007", + "0x2d500900710b00702c0092d50090074920071ea0092d5009007492007028", + "0x700901d00702e1eb1542d500901200929a0070072d50090071a1007007", + "0x3a0092d500915400906e0071ef0092d500900900902a0070380092d5009", + "0x380124930071ec0092d500902e00904a00703c0092d500900e00902c007", + "0x3f0092d51540360092280070361ee1ed03102f0122d50091ec03c03a1ef", + "0x1eb00929a0070072d500903f00922b0070072d50090071540070400094b8", + "0x92d50091ee00902c00729d0092d500903100902a0072a20421542d5009", + "0x452a00112d500929829a29d0114b90072980092d50092a200904a00729a", + "0xef0070072d500900715400704c0094ba04a0092d51540470090f0007047", + "0x2d500928f0090ec00728f0092d500929600923f0072960092d500904a009", + "0x70072d50090071540070500094bb04e0092d515428f00924100728f009", + "0x72d50090210094bd0070072d50090180094bc0070072d500904e009166", + "0x2d500901d0094be0070072d50090420092980070072d500902c0092db007", + "0x90240094a80070072d50090280092990070072d50092ae0091af007007", + "0x90074bf00728c0092d50090070210070072d50091ea0092db0070072d5", + "0x540092d500905228c1540260070520092d50090520090240070520092d5", + "0x580092450070580092d50090541661542b90071660092d5009007028007", + "0xe60092d50092a000902a00716a0092d500902f00901d0071690092d5009", + "0x4500902c0070e50092d50090110091b100705d0092d50091ed00906e007", + "0x600e40e505d0e616a2ae0090600092d50091690092470070e40092d5009", + "0x92d50092a000902a0070072d50090500091660070072d5009007154007", + "0x1711700620112d50090661731544950070660092d500904500902c007173", + "0x929a0070072d50090071540070680094c02b90092d5154171009196007", + "0x2d500906200902a0070730092d500902f00901d00706a1751542d5009042", + "0x2c0071800092d50090110091b10070760092d50091ed00906e007074009", + "0x2d50092ae00949d00707a0092d500906a00904a0071820092d5009170009", + "0x2b90092d50092b91ea15449e00707c0092d500907c0090dc00707c2ae154", + "0x717f17d07006e17806c2ae2d500907c07a1821800760740730160b1007", + "0x17500929a0070072d500900715400707d0094c102a0092d515417f009196", + "0x92d500917800902a0071870092d500906c00901d00718507f1542d5009", + "0x902c0070860092d50090700091b100708b0092d500906e00906e007188", + "0x1542d50092ae00949d00708d0092d500918500904a0070560092d500917d", + "0x702a0092d500902a02c15449e0071890092d50091890090dc0071892ae", + "0x2270070851862a60260830812ae2d500918908d05608608b1881870164c2", + "0x850091960072a60092d50092a60241544a20070260092d5009026028154", + "0x92d500902a0090dd0070072d50090071540070910094c318a0092d5154", + "0x949b00718c0092d500918a0090dd0070940092d50092b90090dd00718b", + "0x90980090a600718d0981542d50090960090a400709618b1542d500918b", + "0xa600718e09c1542d500909a0090a400709a0092d50090074ac0070072d5", + "0x1542d500918f0090a400718f0092d500918d0091a40070072d500909c009", + "0x90a40071960092d500918e0091a40070072d500909f0090a60070a109f", + "0x92d50090a10091a40070072d50090dd0090a60070a40dd1542d5009196", + "0x1a40a61544ad0070072d50090071ba0071a40092d50090a40091a40070a6", + "0x23d0070a80092d50090071b00070072d50090071540070074c40072d5154", + "0x74c500900711f0071a70092d50090aa0090ec0070aa0092d50090a8009", + "0x92d50090ab0092380070ab0092d50090071b00070072d5009007154007", + "0x90ec0071af0092d50091a700923f0071a70092d50090ad0090ec0070ad", + "0x90071540070dc0094c61b10092d51541af0092410071af0092d50091af", + "0x901d0094be0070072d50091b10091660070072d50090071a10070072d5", + "0x210094bd0070072d50090180094bc0070072d50092ae0091af0070072d5", + "0x90a60070072d50090940090a60070072d500907f0092980070072d5009", + "0x4c70070b10092d50090070210070072d500918b0090a60070072d500918c", + "0x2d50090b30b11540260070b30092d50090b30090240070b30092d5009007", + "0x2450070db0092d50091b70da1542b90070da0092d50090070280071b7009", + "0x2d500908300902a0070f10092d500908100901d0070f20092d50090db009", + "0x2c0070ee0092d50092a60091b10070ef0092d500902600906e0070f0009", + "0xee0ef0f00f12ae0090ec0092d50090f20092470070ed0092d5009186009", + "0x909400949b0070072d50090dc0091660070072d50090071540070ec0ed", + "0x70f30f41544c90f50f61542d515418b0eb0810114c80070eb0941542d5", + "0x2d515409418c0f60114c80070072d50090f50090a60070072d5009007154", + "0x70072d50090071a10070072d50090071540070d50e81544ca0e90ea154", + "0x90d60094cb0070d62ae1542d50092ae00949d0070072d50090e90090a6", + "0x70e00092d500908300902a0070ce0092d50090ea00901d0070d70092d5", + "0x90d70094cc0070e20092d500907f00904a0070e10092d500918600902c", + "0x17f0070df0de0d90d800e2d50090e30e20e10e00ce0124cd0070e30092d5", + "0x90e70092550070072d50090071540071cc0094ce0e70092d51540df009", + "0xfa1d00112d50092ae0094cf0070072d50090f80091660070f81cd1542d5", + "0x94d11030092d51541020092410071021d41542d50091d40094d00071d4", + "0x2d50090d800901d0070072d50091030091660070072d5009007154007104", + "0x4a0070200092d50090de00902c0071060092d50090d900902a007105009", + "0x1660070072d50090071540070074d200900711f00701e0092d50091cd009", + "0x92d50090de00902c0071d70092d50090d900902a0070072d5009104009", + "0x1d61080112d500910b1d51d70114d300710b0092d50091cd00904a0071d5", + "0x2550070072d500900715400710d0094d41d20092d515410a00917f00710a", + "0x2d50091d00092670070072d50091ca0091660071ca1d11542d50091d2009", + "0x71c50092d50090d800901d0071120092d50091100092d80071101d0154", + "0x91d100904a0071be0092d50091d600902c0071c30092d500910800902a", + "0x91ba1191be1c31c50124d60071ba0092d50091120094d50071190092d5", + "0x71540071b60094d711b0092d51541fc00917f0071fc1141cb1c900e2d5", + "0x70072d50091b40091660071b411d1542d500911b0092550070072d5009", + "0x911400902c0071060092d50091cb00902a0071050092d50091c900901d", + "0x11f0fa1542d50090fa0094d800701e0092d500911d00904a0070200092d5", + "0x4db00701e0092d500901e0211544da0070200092d500902001d1544d9007", + "0x2d50090070210070072d50090071540071ac0094dc1b00092d515411f009", + "0x1a31b81542d50091240094de0071241a81542d50091b00094dd007122009", + "0x910600902a00712a0092d500910500901d0070072d50091b80090e4007", + "0x71990092d50091220090520071950092d50091a300917500712c0092d5", + "0x1980092d515419e0094e000719e1281a10112d500919919512c12a00e4df", + "0x16600712e19a1542d50091980094e20070072d500900715400719b0094e1", + "0x1301542d500919a0090580071840092d50090074e30070072d500912e009", + "0x90071ba0071810092d500918300916a0070072d5009130009169007183", + "0x4e40071810092d50091810091750071840092d50091840090240070072d5", + "0x715400713917717b0114e517e1351330112d51541811841a8020128012", + "0x713b0092d500913300902a0071760092d500917e0094e60070072d5009", + "0x4e800900711f00716f0092d50091760094e70071740092d500913500902c", + "0x917b00902a00716e0092d50091390092d70070072d5009007154007007", + "0x716f0092d500916e0094e70071740092d500917700902c00713b0092d5", + "0x15416c0094eb0070072d500913f0094ea00716c13f1542d500916f0094e9", + "0xe40070072d50090071a10070072d50090071540071420094ec16b0092d5", + "0x92d500913b00902a0071680092d50091a100901d0070072d500916b009", + "0x2d50090071540070074ed00900711f0071440092d500917400902c007147", + "0x2d50090fa0094880070072d500914200912c0070072d50090071a1007007", + "0x90180094bc0070072d50091d00090500070072d500901e009298007007", + "0x90074ee0071650092d50090070210070072d50091d40090ed0070072d5", + "0x15e0092d50091611651540260071610092d50091610090240071610092d5", + "0x15f00924500715f0092d500915e1511542b90071510092d5009007028007", + "0x21e0092d500913b00902a00721d0092d50091a100901d0070000092d5009", + "0x17400902c0072200092d50092a60091b100721f0092d500902600906e007", + "0x22322122021f21e21d2ae0092230092d50090000092470072210092d5009", + "0x72d500901e0092980070072d50090fa0094880070072d5009007154007", + "0x2d50091d40090ed0070072d50090180094bc0070072d50091d0009050007", + "0x1a100901d0072250092d500919b0092450070072d50091a8009050007007", + "0x2280092d500902600906e0072270092d500912800902a0072260092d5009", + "0x22500924700722c0092d500902000902c00722b0092d50092a60091b1007", + "0x1660070072d500900715400722d22c22b2282272262ae00922d0092d5009", + "0x92d500910600902a0071680092d500910500901d0070072d50091ac009", + "0x91d00092670070072d50090071ba0071440092d500902000902c007147", + "0x2362332320114f02312301542d515422f1441470114ef00722f1d01542d5", + "0x92d50092380094640072380092d50090071b00070072d5009007154007", + "0x946500723f0092d500923100902c00723d0092d500923000902a00723a", + "0x94670070072d50090071540070074f100900711f0072410092d500923a", + "0x92d500923300902c00723d0092d500923200902a0072430092d5009236", + "0x4690072472451542d50092410094680072410092d500924300946500723f", + "0x900715400724b0094f22490092d515424700946a0070072d5009245009", + "0xfa1d00114830070072d50092490091660070072d50090071a10070072d5", + "0x25b0092d500916800901d00724d0092d50090074ac0070160092d50091d4", + "0x2a60091b100725f0092d500902600906e00725d0092d500923d00902a007", + "0x2650092d500901e00904a0072630092d500923f00902c0072610092d5009", + "0xdc0072670161542d500901600949d0070160092d50090160181544f3007", + "0x25f25d25b01849f0072690092d500924d0091980072670092d5009267009", + "0x2d515425900917f00725925725525325124f2ae2d5009269267265263261", + "0x27126f1542d500926b0092550070072d500900715400726d0094f426b009", + "0x2d500924f00901d0072730092d50090074ac0070072d5009271009166007", + "0x1b100728a0092d500925300906e0072870092d500925100902a007284009", + "0x2d500926f00904a00728d0092d500925700902c00728b0092d5009255009", + "0x4a10072930092d50092730091980072910092d50090160090dc00728e009", + "0x17f00727f27d27b2792772752ae2d500929329128e28d28b28a287284018", + "0x92950092550070072d50090071540072990094f52950092d515427f009", + "0x25700729f0092d50090071b00070072d500929c00916600729c29b1542d5", + "0x927500901d0072a40092d50092a10092590072a10092d500929f29b154", + "0x72ab0092d500927900906e0072aa0092d500927700902a0072a90092d5", + "0x92a40092470072af0092d500927d00902c0072ac0092d500927b0091b1", + "0x92450070072d50090071540072b02af2ac2ab2aa2a92ae0092b00092d5", + "0x92d500927700902a0072b30092d500927500901d0072b10092d5009299", + "0x902c0072ba0092d500927b0091b10072b80092d500927900906e0072b5", + "0x2bb2ba2b82b52b32ae0092bc0092d50092b10092470072bb0092d500927d", + "0x2d500926d0092450070072d50090160091af0070072d50090071540072bc", + "0x6e0072c10092d500925100902a0072c00092d500924f00901d0072be009", + "0x2d500925700902c0072c70092d50092550091b10072c20092d5009253009", + "0x1540072c92c82c72c22c12c02ae0092c90092d50092be0092470072c8009", + "0x92980070072d500924b00912c0070072d50090071a10070072d5009007", + "0x4880070072d50091d40090ed0070072d50090180094bc0070072d500901e", + "0x72ca0092d50090070210070072d50091d00090500070072d50090fa009", + "0x92cf2ca1540260072cf0092d50092cf0090240072cf0092d50090074f6", + "0x74130092d50092d14111542b90074110092d50090070280072d10092d5", + "0x923d00902a0074160092d500916800901d0074140092d5009413009245", + "0x74180092d50092a60091b10074170092d500902600906e0072d60092d5", + "0x4172d64162ae00941b0092d50094140092470074190092d500923f00902c", + "0x210094bd0070072d50090fa0094880070072d500900715400741b419418", + "0x90ed0070072d50090180094bc0070072d50091d00090500070072d5009", + "0x741c0092d50091b60092450070072d500901d0094be0070072d50091d4", + "0x902600906e00741e0092d50091cb00902a00741d0092d50091c900901d", + "0x74240092d500911400902c0074200092d50092a60091b100741f0092d5", + "0x2d500900715400742542442041f41e41d2ae0094250092d500941c009247", + "0x901d0094be0070072d50090210094bd0070072d50090fa009488007007", + "0x1d40090ed0070072d50090180094bc0070072d50091d00090500070072d5", + "0x742c0092d50090d800901d00742b0092d500910d0092450070072d5009", + "0x92a60091b10074300092d500902600906e00742e0092d500910800902a", + "0x94370092d500942b0092470074320092d50091d600902c0074310092d5", + "0x72d500901d0094be0070072d500900715400743743243143042e42c2ae", + "0x2d50090180094bc0070072d50090210094bd0070072d50092ae0091af007", + "0x902a00743e0092d50090d800901d00743d0092d50091cc009245007007", + "0x92d50092a60091b10074410092d500902600906e00743f0092d50090d9", + "0x43e2ae00944d0092d500943d00924700744b0092d50090de00902c007445", + "0x90a60070072d50090071a10070072d500900715400744d44b44544143f", + "0x4bc0070072d50092ae0091af0070072d500901d0094be0070072d50090d5", + "0x70072d500907f0092980070072d50090210094bd0070072d5009018009", + "0x92d50094500090240074500092d50090074f700744f0092d5009007021", + "0x1542b90074520092d50090070280074510092d500945044f154026007450", + "0x2d50090e800901d0074550092d50094530092450074530092d5009451452", + "0x1b100745d0092d500902600906e00745b0092d500908300902a007457009", + "0x2d500945500924700745f0092d500918600902c00745e0092d50092a6009", + "0x90071a10070072d500900715400746145f45e45d45b4572ae009461009", + "0x2ae0091af0070072d500901d0094be0070072d50090f30090a60070072d5", + "0x92980070072d50090210094bd0070072d50090180094bc0070072d5009", + "0x210070072d500918c0090a60070072d50090940090a60070072d500907f", + "0x4640092d50094640090240074640092d50090074f80074620092d5009007", + "0x4671542b90074670092d50090070280074650092d5009464462154026007", + "0x92d50090f400901d0074690092d50094680092450074680092d5009465", + "0x91b100746d0092d500902600906e00746c0092d500908300902a00746a", + "0x92d50094690092470074700092d500918600902c00746e0092d50092a6", + "0x901d0094be0070072d50090071540072d947046e46d46c46a2ae0092d9", + "0x210094bd0070072d50090180094bc0070072d50092ae0091af0070072d5", + "0x94a90070072d500902a0094a90070072d500907f0092980070072d5009", + "0x4730092d500908100901d0074710092d50090910092450070072d50092b9", + "0x2a60091b10074750092d500902600906e0074740092d500908300902a007", + "0x4790092d50094710092470074770092d500918600902c0074760092d5009", + "0x2d50090180094bc0070072d50090071540074794774764754744732ae009", + "0x92b90094a90070072d50091750092980070072d50090210094bd007007", + "0x280092990070072d50092ae0091af0070072d500901d0094be0070072d5", + "0x92450070072d500902c0092db0070072d50090240094a80070072d5009", + "0x92d500917800902a00747b0092d500906c00901d00747a0092d500907d", + "0x902c0074800092d50090700091b100747e0092d500906e00906e00747d", + "0x48148047e47d47b2ae0094830092d500947a0092470074810092d500917d", + "0x2d50090210094bd0070072d50090180094bc0070072d5009007154007483", + "0x901d0094be0070072d50090420092980070072d500902c0092db007007", + "0x240094a80070072d50090280092990070072d50092ae0091af0070072d5", + "0x1d0074840092d50090680092450070072d50091ea0092db0070072d5009", + "0x2d50091ed00906e0074860092d500906200902a0074850092d500902f009", + "0x2470074890092d500917000902c0074880092d50090110091b1007487009", + "0x72d500900715400748a4894884874864852ae00948a0092d5009484009", + "0x2d500902c0092db0070072d50090210094bd0070072d50090180094bc007", + "0x92ae0091af0070072d500901d0094be0070072d5009042009298007007", + "0x1ea0092db0070072d50090240094a80070072d50090280092990070072d5", + "0x748c0092d500902f00901d00748b0092d500904c0092450070072d5009", + "0x90110091b100748f0092d50091ed00906e00748e0092d50092a000902a", + "0x94930092d500948b0092470074920092d500904500902c0074910092d5", + "0x72d50091ea0092db0070072d500900715400749349249148f48e48c2ae", + "0x2d50090210094bd0070072d50090180094bc0070072d50090240094a8007", + "0x92ae0091af0070072d500901d0094be0070072d500902c0092db007007", + "0x400092450070072d50091eb0092980070072d50090280092990070072d5", + "0x49a0092d500903100902a0074980092d500902f00901d0074950092d5009", + "0x1ee00902c00749d0092d50090110091b100749b0092d50091ed00906e007", + "0x49f49e49d49b49a4982ae00949f0092d500949500924700749e0092d5009", + "0xe0094f90111541542d515400900911b0070090092d5009007009011007", + "0x2d500915400911d0070120092d50090110091b60070072d5009007154007", + "0x90071540070074fa00900711f0070160092d50090120091b40072ae009", + "0x911d0070200092d50090180091ac0070180092d50090071b00070072d5", + "0x92d50092ae00916a0070160092d50090200091b40072ae0092d500900e", + "0x210094fb01e0092d515401600912200701d0092d500901d00917500701d", + "0x2d50092a60091240072a60092d500901e0091a80070072d5009007154007", + "0x4fd0070280092d500901d0091750070260092d50090240094fc007024009", + "0x210091660070072d50090071540072b90281540092b90092d5009026009", + "0x17500702a0092d50091ea0094fe0071ea0092d50090071b00070072d5009", + "0x19a0071eb02c1540091eb0092d500902a0094fd00702c0092d500901d009", + "0x1eb02c02a1ea2b90280260242a602101e01d0200180160262d500900e009", + "0x2d50090200091840070072d50090180091650070072d500901600912e007", + "0x90210091810070072d500901e0091830070072d500901d009130007007", + "0x2600917e0070072d50090240091350070072d50092a60091330070072d5", + "0x91390070072d50092b90091770070072d500902800917b0070072d5009", + "0x4ff0070072d500902c00913b0070072d500902a0091760070072d50091ea", + "0x900900902a0070380092d500900700901d00702e0092d50092ae012154", + "0x703c0092d500901100902c00703a0092d500915400906e0071ef0092d5", + "0x1ef0382ae50200703f0092d500902e0095010071ec0092d50091eb009500", + "0x400092d51540360090f00070361ee1ed03102f0122d500903f1ec03c03a", + "0x95040072a20092d50090400090ef0070072d5009007154007042009503", + "0x92d500902f00901d0070450092d50092a00095050072a00092d50092a2", + "0x902c00729a0092d50091ed00906e00729d0092d500903100902a007047", + "0x4a29829a29d04701200904a0092d50090450095060072980092d50091ee", + "0x2d500902f00901d00704c0092d50090420095070070072d5009007154007", + "0x2c00704e0092d50091ed00906e00728f0092d500903100902a007296009", + "0x5004e28f29601200928c0092d500904c0095060070500092d50091ee009", + "0xe0095080110092d51541540092410071540092d50090070092c900728c", + "0x120092d50090072310070072d50090110091660070072d5009007154007", + "0x72d500900715400700750900900711f0072ae0092d5009012009024007", + "0x2d50090160090240070160092d500900750a0070072d500900e009166007", + "0x1240070072d50090180091860070200181542d50092ae0090830072ae009", + "0x92a60211540850072a60092d50090090090520070210092d5009020009", + "0x520070240092d50090071b00070072d500901e00916600701e01d1542d5", + "0x19a0070280261540090280092d50090240091440070260092d500901d009", + "0x2c02a1ea2b90280260242a602101e01d0200180162ae0262d500900e009", + "0x2d50090180091840070072d50090160091650070072d50092ae00912e007", + "0x901e0091810070072d500901d0091830070072d5009020009130007007", + "0x2400917e0070072d50092a60091350070072d50090210091330070072d5", + "0x91390070072d50090280091770070072d500902600917b0070072d5009", + "0x1d0070072d500902c0091740070072d50091ea0091760070072d50092b9", + "0x2d500915400906e0070360092d500900900902a0071ee0092d5009007009", + "0x2400703a0092d500902a00950b0071ef0092d500901100902c007038009", + "0x2e1eb0122d500903c03a1ef0380361ee2ae50c00703c0092d5009012009", + "0x72d500900715400703f00950d1ec0092d51541ed0090f50071ed03102f", + "0x4200950f0070420092d500904000950e0070400092d50091ec0090f4007", + "0x450092d500902e00902a0072a00092d50091eb00901d0072a20092d5009", + "0x2a200951000729d0092d500903100902c0070470092d500902f00906e007", + "0x95110070072d500900715400729a29d0470452a001200929a0092d5009", + "0x92d500902e00902a00704a0092d50091eb00901d0072980092d500903f", + "0x951000728f0092d500903100902c0072960092d500902f00906e00704c", + "0x72ae0092d500900751200704e28f29604c04a01200904e0092d5009298", + "0x915400906e0072a60092d500900900902a0070210092d500900700901d", + "0x70280092d500900e00904a0070260092d500901100902c0070240092d5", + "0x2a60210160f10071ea0092d50090120090660072b90092d50092ae009024", + "0x92d515401e0090f000701e01d0200180160122d50091ea2b9028026024", + "0x5040071eb0092d500902a0090ef0070072d500900715400702c00951302a", + "0x2d500901600901d00702f0092d500902e00950500702e0092d50091eb009", + "0x2c0071ee0092d500902000906e0071ed0092d500901800902a007031009", + "0x361ee1ed0310120090380092d500902f0095060070360092d500901d009", + "0x901600901d0071ef0092d500902c0095070070072d5009007154007038", + "0x71ec0092d500902000906e00703c0092d500901800902a00703a0092d5", + "0x1ec03c03a0120090400092d50091ef00950600703f0092d500901d00902c", + "0x902a0070210092d500900700901d0072ae0092d500900751400704003f", + "0x92d500901100902c0070240092d500915400906e0072a60092d5009009", + "0x90660072b90092d50092ae0090240070280092d500900e00904a007026", + "0x180160122d50091ea2b90280260242a60210160f10071ea0092d5009012", + "0x72d500900715400702c00951502a0092d515401e0090f000701e01d020", + "0x2e00950500702e0092d50091eb0095040071eb0092d500902a0090ef007", + "0x1ed0092d500901800902a0070310092d500901600901d00702f0092d5009", + "0x2f0095060070360092d500901d00902c0071ee0092d500902000906e007", + "0x95070070072d50090071540070380361ee1ed0310120090380092d5009", + "0x92d500901800902a00703a0092d500901600901d0071ef0092d500902c", + "0x950600703f0092d500901d00902c0071ec0092d500902000906e00703c", + "0x72ae0092d500900751600704003f1ec03c03a0120090400092d50091ef", + "0x915400906e0072a60092d500900900902a0070210092d500900700901d", + "0x70280092d500900e00904a0070260092d500901100902c0070240092d5", + "0x2a60210160f10071ea0092d50090120090660072b90092d50092ae009024", + "0x92d515401e0090f000701e01d0200180160122d50091ea2b9028026024", + "0x5040071eb0092d500902a0090ef0070072d500900715400702c00951702a", + "0x2d500901600901d00702f0092d500902e00950500702e0092d50091eb009", + "0x2c0071ee0092d500902000906e0071ed0092d500901800902a007031009", + "0x361ee1ed0310120090380092d500902f0095060070360092d500901d009", + "0x901600901d0071ef0092d500902c0095070070072d5009007154007038", + "0x71ec0092d500902000906e00703c0092d500901800902a00703a0092d5", + "0x1ec03c03a0120090400092d50091ef00950600703f0092d500901d00902c", + "0x902a0070210092d500900700901d0072ae0092d500900751800704003f", + "0x92d500901100902c0070240092d500915400906e0072a60092d5009009", + "0x90660072b90092d50092ae0090240070280092d500900e00904a007026", + "0x180160122d50091ea2b90280260242a60210160f10071ea0092d5009012", + "0x72d500900715400702c00951902a0092d515401e0090f000701e01d020", + "0x2e00950500702e0092d50091eb0095040071eb0092d500902a0090ef007", + "0x1ed0092d500901800902a0070310092d500901600901d00702f0092d5009", + "0x2f0095060070360092d500901d00902c0071ee0092d500902000906e007", + "0x95070070072d50090071540070380361ee1ed0310120090380092d5009", + "0x92d500901800902a00703a0092d500901600901d0071ef0092d500902c", + "0x950600703f0092d500901d00902c0071ec0092d500902000906e00703c", + "0x72ae0092d500900751a00704003f1ec03c03a0120090400092d50091ef", + "0x915400906e0072a60092d500900900902a0070210092d500900700901d", + "0x70280092d500900e00904a0070260092d500901100902c0070240092d5", + "0x2a60210160f10071ea0092d50090120090660072b90092d50092ae009024", + "0x92d515401e0090f000701e01d0200180160122d50091ea2b9028026024", + "0x5040071eb0092d500902a0090ef0070072d500900715400702c00951b02a", + "0x2d500901600901d00702f0092d500902e00950500702e0092d50091eb009", + "0x2c0071ee0092d500902000906e0071ed0092d500901800902a007031009", + "0x361ee1ed0310120090380092d500902f0095060070360092d500901d009", + "0x901600901d0071ef0092d500902c0095070070072d5009007154007038", + "0x71ec0092d500902000906e00703c0092d500901800902a00703a0092d5", + "0x1ec03c03a0120090400092d50091ef00950600703f0092d500901d00902c", + "0x902a0070210092d500900700901d0072ae0092d500900751c00704003f", + "0x92d500901100902c0070240092d500915400906e0072a60092d5009009", + "0x90660072b90092d50092ae0090240070280092d500900e00904a007026", + "0x180160122d50091ea2b90280260242a60210160f10071ea0092d5009012", + "0x72d500900715400702c00951d02a0092d515401e0090f000701e01d020", + "0x2e00950500702e0092d50091eb0095040071eb0092d500902a0090ef007", + "0x1ed0092d500901800902a0070310092d500901600901d00702f0092d5009", + "0x2f0095060070360092d500901d00902c0071ee0092d500902000906e007", + "0x95070070072d50090071540070380361ee1ed0310120090380092d5009", + "0x92d500901800902a00703a0092d500901600901d0071ef0092d500902c", + "0x950600703f0092d500901d00902c0071ec0092d500902000906e00703c", + "0x72ae0092d500900751e00704003f1ec03c03a0120090400092d50091ef", + "0x915400906e0072a60092d500900900902a0070210092d500900700901d", + "0x70280092d500900e00904a0070260092d500901100902c0070240092d5", + "0x2a60210160f10071ea0092d50090120090660072b90092d50092ae009024", + "0x92d515401e0090f000701e01d0200180160122d50091ea2b9028026024", + "0x5040071eb0092d500902a0090ef0070072d500900715400702c00951f02a", + "0x2d500901600901d00702f0092d500902e00950500702e0092d50091eb009", + "0x2c0071ee0092d500902000906e0071ed0092d500901800902a007031009", + "0x361ee1ed0310120090380092d500902f0095060070360092d500901d009", + "0x901600901d0071ef0092d500902c0095070070072d5009007154007038", + "0x71ec0092d500902000906e00703c0092d500901800902a00703a0092d5", + "0x1ec03c03a0120090400092d50091ef00950600703f0092d500901d00902c", + "0x902a0070210092d500900700901d0072ae0092d500900752000704003f", + "0x92d500901100902c0070240092d500915400906e0072a60092d5009009", + "0x90660072b90092d50092ae0090240070280092d500900e00904a007026", + "0x180160122d50091ea2b90280260242a60210160f10071ea0092d5009012", + "0x72d500900715400702c00952102a0092d515401e0090f000701e01d020", + "0x2e00950500702e0092d50091eb0095040071eb0092d500902a0090ef007", + "0x1ed0092d500901800902a0070310092d500901600901d00702f0092d5009", + "0x2f0095060070360092d500901d00902c0071ee0092d500902000906e007", + "0x95070070072d50090071540070380361ee1ed0310120090380092d5009", + "0x92d500901800902a00703a0092d500901600901d0071ef0092d500902c", + "0x950600703f0092d500901d00902c0071ec0092d500902000906e00703c", + "0x2a0070072d50090071a100704003f1ec03c03a0120090400092d50091ef", + "0x901d0201542a400701d0092d500901100902c0070200092d5009009009", + "0x900715400702100952201e0092d51540180090620070180162ae0112d5", + "0x70240121542d50090120092840072a60092d500901e0091700070072d5", + "0x90075120070280092d50090260095240070260092d50092a6024154523", + "0x70310092d50092ae00902a00702f0092d500900700901d0072b90092d5", + "0x900e00904a0071ee0092d500901600902c0071ed0092d500915400906e", + "0x71ef0092d50090120090660070380092d50092b90090240070360092d5", + "0x2d500903a1ef0380361ee1ed03102f01852600703a0092d5009028009525", + "0x71540071ec00952703c0092d515402e00917f00702e1eb02c02a1ea012", + "0x70072d500904000916600704003f1542d500903c0092550070072d5009", + "0x92a20092590072a20092d500904203f1542570070420092d50090071b0", + "0x70470092d500902a00902a0070450092d50091ea00901d0072a00092d5", + "0x92a000924700729a0092d50091eb00902c00729d0092d500902c00906e", + "0x1ec0092450070072d500900715400729829a29d0470450120092980092d5", + "0x2960092d500902a00902a00704c0092d50091ea00901d00704a0092d5009", + "0x4a00924700704e0092d50091eb00902c00728f0092d500902c00906e007", + "0x91730070072d500900715400705004e28f29604c0120090500092d5009", + "0x728c0092d50090210092450070072d500900e0092980070072d5009012", + "0x915400906e0070540092d50092ae00902a0070520092d500900700901d", + "0x91690092d500928c0092470070580092d500901600902c0071660092d5", + "0x200092d500900900902a0070072d50090071a1007169058166054052012", + "0x70180162ae0112d500901d0201542a400701d0092d500901100902c007", + "0x1e0091700070072d500900715400702100952801e0092d5154018009062", + "0x2d50092a60241545290070240121542d50090120092840072a60092d5009", + "0x901d0072b90092d50090075120070280092d500902600952a007026009", + "0x92d500915400906e0070310092d50092ae00902a00702f0092d5009007", + "0x90240070360092d500900e00904a0071ee0092d500901600902c0071ed", + "0x92d50090280095250071ef0092d50090120090660070380092d50092b9", + "0x2e1eb02c02a1ea0122d500903a1ef0380361ee1ed03102f01852b00703a", + "0x92550070072d50090071540071ec00952c03c0092d515402e00917f007", + "0x420092d50090071b00070072d500904000916600704003f1542d500903c", + "0x901d0072a00092d50092a20092590072a20092d500904203f154257007", + "0x92d500902c00906e0070470092d500902a00902a0070450092d50091ea", + "0x450120092980092d50092a000924700729a0092d50091eb00902c00729d", + "0x1d00704a0092d50091ec0092450070072d500900715400729829a29d047", + "0x2d500902c00906e0072960092d500902a00902a00704c0092d50091ea009", + "0x120090500092d500904a00924700704e0092d50091eb00902c00728f009", + "0x2980070072d50090120091730070072d500900715400705004e28f29604c", + "0x92d500900700901d00728c0092d50090210092450070072d500900e009", + "0x902c0071660092d500915400906e0070540092d50092ae00902a007052", + "0x1690581660540520120091690092d500928c0092470070580092d5009016", + "0x2d500901100902c0070200092d500900900902a0070072d50090071a1007", + "0x92d51540180090620070180162ae0112d500901d0201542a400701d009", + "0x2840072a60092d500901e0091700070072d500900715400702100952d01e", + "0x2600952f0070260092d50092a602415452e0070240121542d5009012009", + "0x702f0092d500900700901d0072b90092d50090075140070280092d5009", + "0x901600902c0071ed0092d500915400906e0070310092d50092ae00902a", + "0x70380092d50092b90090240070360092d500900e00904a0071ee0092d5", + "0x3102f01852600703a0092d50090280095250071ef0092d5009012009066", + "0x2d515402e00917f00702e1eb02c02a1ea0122d500903a1ef0380361ee1ed", + "0x4003f1542d500903c0092550070072d50090071540071ec00953003c009", + "0x904203f1542570070420092d50090071b00070072d5009040009166007", + "0x70450092d50091ea00901d0072a00092d50092a20092590072a20092d5", + "0x91eb00902c00729d0092d500902c00906e0070470092d500902a00902a", + "0x15400729829a29d0470450120092980092d50092a000924700729a0092d5", + "0x4c0092d50091ea00901d00704a0092d50091ec0092450070072d5009007", + "0x1eb00902c00728f0092d500902c00906e0072960092d500902a00902a007", + "0x705004e28f29604c0120090500092d500904a00924700704e0092d5009", + "0x70072d500900e0092980070072d50090120091730070072d5009007154", + "0x92ae00902a0070520092d500900700901d00728c0092d5009021009245", + "0x70580092d500901600902c0071660092d500915400906e0070540092d5", + "0x72d50090071a10071690581660540520120091690092d500928c009247", + "0x201542a400701d0092d500901100902c0070200092d500900900902a007", + "0x15400702100953101e0092d51540180090620070180162ae0112d500901d", + "0x121542d50090120092840072a60092d500901e0091700070072d5009007", + "0x5140070280092d50090260095330070260092d50092a6024154532007024", + "0x92d50092ae00902a00702f0092d500900700901d0072b90092d5009007", + "0x904a0071ee0092d500901600902c0071ed0092d500915400906e007031", + "0x92d50090120090660070380092d50092b90090240070360092d500900e", + "0x3a1ef0380361ee1ed03102f01852b00703a0092d50090280095250071ef", + "0x71ec00953403c0092d515402e00917f00702e1eb02c02a1ea0122d5009", + "0x2d500904000916600704003f1542d500903c0092550070072d5009007154", + "0x92590072a20092d500904203f1542570070420092d50090071b0007007", + "0x92d500902a00902a0070450092d50091ea00901d0072a00092d50092a2", + "0x924700729a0092d50091eb00902c00729d0092d500902c00906e007047", + "0x2450070072d500900715400729829a29d0470450120092980092d50092a0", + "0x2d500902a00902a00704c0092d50091ea00901d00704a0092d50091ec009", + "0x24700704e0092d50091eb00902c00728f0092d500902c00906e007296009", + "0x70072d500900715400705004e28f29604c0120090500092d500904a009", + "0x92d50090210092450070072d500900e0092980070072d5009012009173", + "0x906e0070540092d50092ae00902a0070520092d500900700901d00728c", + "0x92d500928c0092470070580092d500901600902c0071660092d5009154", + "0x2d500900900902a0070072d50090071a1007169058166054052012009169", + "0x162ae0112d500901d0201542a400701d0092d500901100902c007020009", + "0x1700070072d500900715400702100953501e0092d5154018009062007018", + "0x2a60241545360070240121542d50090120092840072a60092d500901e009", + "0x72b90092d500900751e0070280092d50090260095370070260092d5009", + "0x915400906e0070310092d50092ae00902a00702f0092d500900700901d", + "0x70360092d500900e00904a0071ee0092d500901600902c0071ed0092d5", + "0x90280095250071ef0092d50090120090660070380092d50092b9009024", + "0x2c02a1ea0122d500903a1ef0380361ee1ed03102f01852600703a0092d5", + "0x70072d50090071540071ec00953803c0092d515402e00917f00702e1eb", + "0x2d50090071b00070072d500904000916600704003f1542d500903c009255", + "0x72a00092d50092a20092590072a20092d500904203f154257007042009", + "0x902c00906e0070470092d500902a00902a0070450092d50091ea00901d", + "0x92980092d50092a000924700729a0092d50091eb00902c00729d0092d5", + "0x4a0092d50091ec0092450070072d500900715400729829a29d047045012", + "0x2c00906e0072960092d500902a00902a00704c0092d50091ea00901d007", + "0x500092d500904a00924700704e0092d50091eb00902c00728f0092d5009", + "0x72d50090120091730070072d500900715400705004e28f29604c012009", + "0x900700901d00728c0092d50090210092450070072d500900e009298007", + "0x71660092d500915400906e0070540092d50092ae00902a0070520092d5", + "0x1660540520120091690092d500928c0092470070580092d500901600902c", + "0x1100902c0070200092d500900900902a0070072d50090071a1007169058", + "0x1540180090620070180162ae0112d500901d0201542a400701d0092d5009", + "0x2a60092d500901e0091700070072d500900715400702100953901e0092d5", + "0x53a0070260092d50092a60241542de0070240121542d5009012009284007", + "0x92d500900700901d0072b90092d500900751e0070280092d5009026009", + "0x902c0071ed0092d500915400906e0070310092d50092ae00902a00702f", + "0x92d50092b90090240070360092d500900e00904a0071ee0092d5009016", + "0x1852b00703a0092d50090280095250071ef0092d5009012009066007038", + "0x2e00917f00702e1eb02c02a1ea0122d500903a1ef0380361ee1ed03102f", + "0x1542d500903c0092550070072d50090071540071ec00953b03c0092d5154", + "0x3f1542570070420092d50090071b00070072d500904000916600704003f", + "0x92d50091ea00901d0072a00092d50092a20092590072a20092d5009042", + "0x902c00729d0092d500902c00906e0070470092d500902a00902a007045", + "0x29829a29d0470450120092980092d50092a000924700729a0092d50091eb", + "0x2d50091ea00901d00704a0092d50091ec0092450070072d5009007154007", + "0x2c00728f0092d500902c00906e0072960092d500902a00902a00704c009", + "0x4e28f29604c0120090500092d500904a00924700704e0092d50091eb009", + "0x2d500900e0092980070072d50090120091730070072d5009007154007050", + "0x902a0070520092d500900700901d00728c0092d5009021009245007007", + "0x92d500901600902c0071660092d500915400906e0070540092d50092ae", + "0x90071a10071690581660540520120091690092d500928c009247007058", + "0x2a400701d0092d500901100902c0070200092d500900900902a0070072d5", + "0x2100953c01e0092d51540180090620070180162ae0112d500901d020154", + "0x2d50090120092840072a60092d500901e0091700070072d5009007154007", + "0x280092d500902600953e0070260092d50092a602415453d007024012154", + "0x92ae00902a00702f0092d500900700901d0072b90092d5009007520007", + "0x71ee0092d500901600902c0071ed0092d500915400906e0070310092d5", + "0x90120090660070380092d50092b90090240070360092d500900e00904a", + "0x380361ee1ed03102f01852600703a0092d50090280095250071ef0092d5", + "0x953f03c0092d515402e00917f00702e1eb02c02a1ea0122d500903a1ef", + "0x4000916600704003f1542d500903c0092550070072d50090071540071ec", + "0x72a20092d500904203f1542570070420092d50090071b00070072d5009", + "0x902a00902a0070450092d50091ea00901d0072a00092d50092a2009259", + "0x729a0092d50091eb00902c00729d0092d500902c00906e0070470092d5", + "0x72d500900715400729829a29d0470450120092980092d50092a0009247", + "0x2a00902a00704c0092d50091ea00901d00704a0092d50091ec009245007", + "0x4e0092d50091eb00902c00728f0092d500902c00906e0072960092d5009", + "0x2d500900715400705004e28f29604c0120090500092d500904a009247007", + "0x90210092450070072d500900e0092980070072d5009012009173007007", + "0x70540092d50092ae00902a0070520092d500900700901d00728c0092d5", + "0x928c0092470070580092d500901600902c0071660092d500915400906e", + "0x900902a0070072d50090071a10071690581660540520120091690092d5", + "0x112d500901d0201542a400701d0092d500901100902c0070200092d5009", + "0x72d500900715400702100954001e0092d51540180090620070180162ae", + "0x1545410070240121542d50090120092840072a60092d500901e009170007", + "0x92d50090075200070280092d50090260095420070260092d50092a6024", + "0x906e0070310092d50092ae00902a00702f0092d500900700901d0072b9", + "0x92d500900e00904a0071ee0092d500901600902c0071ed0092d5009154", + "0x95250071ef0092d50090120090660070380092d50092b9009024007036", + "0x1ea0122d500903a1ef0380361ee1ed03102f01852b00703a0092d5009028", + "0x2d50090071540071ec00954303c0092d515402e00917f00702e1eb02c02a", + "0x71b00070072d500904000916600704003f1542d500903c009255007007", + "0x92d50092a20092590072a20092d500904203f1542570070420092d5009", + "0x906e0070470092d500902a00902a0070450092d50091ea00901d0072a0", + "0x92d50092a000924700729a0092d50091eb00902c00729d0092d500902c", + "0x2d50091ec0092450070072d500900715400729829a29d047045012009298", + "0x6e0072960092d500902a00902a00704c0092d50091ea00901d00704a009", + "0x2d500904a00924700704e0092d50091eb00902c00728f0092d500902c009", + "0x90120091730070072d500900715400705004e28f29604c012009050009", + "0x901d00728c0092d50090210092450070072d500900e0092980070072d5", + "0x92d500915400906e0070540092d50092ae00902a0070520092d5009007", + "0x520120091690092d500928c0092470070580092d500901600902c007166", + "0x2c0070200092d500900900902a0070072d50090071a1007169058166054", + "0x90620070180162ae0112d500901d0201542a400701d0092d5009011009", + "0x2d500901e0091700070072d500900715400702100954401e0092d5154018", + "0x260092d50092a60241545450070240121542d50090120092840072a6009", + "0x900700901d0072b90092d50090075160070280092d5009026009546007", + "0x71ed0092d500915400906e0070310092d50092ae00902a00702f0092d5", + "0x92b90090240070360092d500900e00904a0071ee0092d500901600902c", + "0x703a0092d50090280095250071ef0092d50090120090660070380092d5", + "0x17f00702e1eb02c02a1ea0122d500903a1ef0380361ee1ed03102f018526", + "0x903c0092550070072d50090071540071ec00954703c0092d515402e009", + "0x2570070420092d50090071b00070072d500904000916600704003f1542d5", + "0x91ea00901d0072a00092d50092a20092590072a20092d500904203f154", + "0x729d0092d500902c00906e0070470092d500902a00902a0070450092d5", + "0x29d0470450120092980092d50092a000924700729a0092d50091eb00902c", + "0x1ea00901d00704a0092d50091ec0092450070072d500900715400729829a", + "0x28f0092d500902c00906e0072960092d500902a00902a00704c0092d5009", + "0x29604c0120090500092d500904a00924700704e0092d50091eb00902c007", + "0xe0092980070072d50090120091730070072d500900715400705004e28f", + "0x70520092d500900700901d00728c0092d50090210092450070072d5009", + "0x901600902c0071660092d500915400906e0070540092d50092ae00902a", + "0x1a10071690581660540520120091690092d500928c0092470070580092d5", + "0x1d0092d500901100902c0070200092d500900900902a0070072d5009007", + "0x54801e0092d51540180090620070180162ae0112d500901d0201542a4007", + "0x120092840072a60092d500901e0091700070072d5009007154007021009", + "0x2d500902600954a0070260092d50092a60241545490070240121542d5009", + "0x902a00702f0092d500900700901d0072b90092d5009007516007028009", + "0x92d500901600902c0071ed0092d500915400906e0070310092d50092ae", + "0x90660070380092d50092b90090240070360092d500900e00904a0071ee", + "0x1ee1ed03102f01852b00703a0092d50090280095250071ef0092d5009012", + "0x3c0092d515402e00917f00702e1eb02c02a1ea0122d500903a1ef038036", + "0x16600704003f1542d500903c0092550070072d50090071540071ec00954b", + "0x92d500904203f1542570070420092d50090071b00070072d5009040009", + "0x902a0070450092d50091ea00901d0072a00092d50092a20092590072a2", + "0x92d50091eb00902c00729d0092d500902c00906e0070470092d500902a", + "0x900715400729829a29d0470450120092980092d50092a000924700729a", + "0x2a00704c0092d50091ea00901d00704a0092d50091ec0092450070072d5", + "0x2d50091eb00902c00728f0092d500902c00906e0072960092d500902a009", + "0x715400705004e28f29604c0120090500092d500904a00924700704e009", + "0x92450070072d500900e0092980070072d50090120091730070072d5009", + "0x92d50092ae00902a0070520092d500900700901d00728c0092d5009021", + "0x92470070580092d500901600902c0071660092d500915400906e007054", + "0x2a0070072d50090071a10071690581660540520120091690092d500928c", + "0x901d0201542a400701d0092d500901100902c0070200092d5009009009", + "0x900715400702100954c01e0092d51540180090620070180162ae0112d5", + "0x70240121542d50090120092840072a60092d500901e0091700070072d5", + "0x90075180070280092d500902600954e0070260092d50092a602415454d", + "0x70310092d50092ae00902a00702f0092d500900700901d0072b90092d5", + "0x900e00904a0071ee0092d500901600902c0071ed0092d500915400906e", + "0x71ef0092d50090120090660070380092d50092b90090240070360092d5", + "0x2d500903a1ef0380361ee1ed03102f01852600703a0092d5009028009525", + "0x71540071ec00954f03c0092d515402e00917f00702e1eb02c02a1ea012", + "0x70072d500904000916600704003f1542d500903c0092550070072d5009", + "0x92a20092590072a20092d500904203f1542570070420092d50090071b0", + "0x70470092d500902a00902a0070450092d50091ea00901d0072a00092d5", + "0x92a000924700729a0092d50091eb00902c00729d0092d500902c00906e", + "0x1ec0092450070072d500900715400729829a29d0470450120092980092d5", + "0x2960092d500902a00902a00704c0092d50091ea00901d00704a0092d5009", + "0x4a00924700704e0092d50091eb00902c00728f0092d500902c00906e007", + "0x91730070072d500900715400705004e28f29604c0120090500092d5009", + "0x728c0092d50090210092450070072d500900e0092980070072d5009012", + "0x915400906e0070540092d50092ae00902a0070520092d500900700901d", + "0x91690092d500928c0092470070580092d500901600902c0071660092d5", + "0x200092d500900900902a0070072d50090071a1007169058166054052012", + "0x70180162ae0112d500901d0201542a400701d0092d500901100902c007", + "0x1e0091700070072d500900715400702100955001e0092d5154018009062", + "0x2d50092a60241545510070240121542d50090120092840072a60092d5009", + "0x901d0072b90092d50090075180070280092d5009026009552007026009", + "0x92d500915400906e0070310092d50092ae00902a00702f0092d5009007", + "0x90240070360092d500900e00904a0071ee0092d500901600902c0071ed", + "0x92d50090280095250071ef0092d50090120090660070380092d50092b9", + "0x2e1eb02c02a1ea0122d500903a1ef0380361ee1ed03102f01852b00703a", + "0x92550070072d50090071540071ec00955303c0092d515402e00917f007", + "0x420092d50090071b00070072d500904000916600704003f1542d500903c", + "0x901d0072a00092d50092a20092590072a20092d500904203f154257007", + "0x92d500902c00906e0070470092d500902a00902a0070450092d50091ea", + "0x450120092980092d50092a000924700729a0092d50091eb00902c00729d", + "0x1d00704a0092d50091ec0092450070072d500900715400729829a29d047", + "0x2d500902c00906e0072960092d500902a00902a00704c0092d50091ea009", + "0x120090500092d500904a00924700704e0092d50091eb00902c00728f009", + "0x2980070072d50090120091730070072d500900715400705004e28f29604c", + "0x92d500900700901d00728c0092d50090210092450070072d500900e009", + "0x902c0071660092d500915400906e0070540092d50092ae00902a007052", + "0x1690581660540520120091690092d500928c0092470070580092d5009016", + "0x2d500901100902c0070200092d500900900902a0070072d50090071a1007", + "0x92d51540180090620070180162ae0112d500901d0201542a400701d009", + "0x2840072a60092d500901e0091700070072d500900715400702100955401e", + "0x260095560070260092d50092a60241545550070240121542d5009012009", + "0x702f0092d500900700901d0072b90092d500900751a0070280092d5009", + "0x901600902c0071ed0092d500915400906e0070310092d50092ae00902a", + "0x70380092d50092b90090240070360092d500900e00904a0071ee0092d5", + "0x3102f01852600703a0092d50090280095250071ef0092d5009012009066", + "0x2d515402e00917f00702e1eb02c02a1ea0122d500903a1ef0380361ee1ed", + "0x4003f1542d500903c0092550070072d50090071540071ec00955703c009", + "0x904203f1542570070420092d50090071b00070072d5009040009166007", + "0x70450092d50091ea00901d0072a00092d50092a20092590072a20092d5", + "0x91eb00902c00729d0092d500902c00906e0070470092d500902a00902a", + "0x15400729829a29d0470450120092980092d50092a000924700729a0092d5", + "0x4c0092d50091ea00901d00704a0092d50091ec0092450070072d5009007", + "0x1eb00902c00728f0092d500902c00906e0072960092d500902a00902a007", + "0x705004e28f29604c0120090500092d500904a00924700704e0092d5009", + "0x70072d500900e0092980070072d50090120091730070072d5009007154", + "0x92ae00902a0070520092d500900700901d00728c0092d5009021009245", + "0x70580092d500901600902c0071660092d500915400906e0070540092d5", + "0x72d50090071a10071690581660540520120091690092d500928c009247", + "0x201542a400701d0092d500901100902c0070200092d500900900902a007", + "0x15400702100955801e0092d51540180090620070180162ae0112d500901d", + "0x121542d50090120092840072a60092d500901e0091700070072d5009007", + "0x51a0070280092d500902600955a0070260092d50092a6024154559007024", + "0x92d50092ae00902a00702f0092d500900700901d0072b90092d5009007", + "0x904a0071ee0092d500901600902c0071ed0092d500915400906e007031", + "0x92d50090120090660070380092d50092b90090240070360092d500900e", + "0x3a1ef0380361ee1ed03102f01852b00703a0092d50090280095250071ef", + "0x71ec00955b03c0092d515402e00917f00702e1eb02c02a1ea0122d5009", + "0x2d500904000916600704003f1542d500903c0092550070072d5009007154", + "0x92590072a20092d500904203f1542570070420092d50090071b0007007", + "0x92d500902a00902a0070450092d50091ea00901d0072a00092d50092a2", + "0x924700729a0092d50091eb00902c00729d0092d500902c00906e007047", + "0x2450070072d500900715400729829a29d0470450120092980092d50092a0", + "0x2d500902a00902a00704c0092d50091ea00901d00704a0092d50091ec009", + "0x24700704e0092d50091eb00902c00728f0092d500902c00906e007296009", + "0x70072d500900715400705004e28f29604c0120090500092d500904a009", + "0x92d50090210092450070072d500900e0092980070072d5009012009173", + "0x906e0070540092d50092ae00902a0070520092d500900700901d00728c", + "0x92d500928c0092470070580092d500901600902c0071660092d5009154", + "0x2d500900900902a0070072d50090071a1007169058166054052012009169", + "0x162ae0112d500901d0201542a400701d0092d500901100902c007020009", + "0x1700070072d500900715400702100955c01e0092d5154018009062007018", + "0x2a602415455d0070240121542d50090120092840072a60092d500901e009", + "0x72b90092d500900751c0070280092d500902600955e0070260092d5009", + "0x915400906e0070310092d50092ae00902a00702f0092d500900700901d", + "0x70360092d500900e00904a0071ee0092d500901600902c0071ed0092d5", + "0x90280095250071ef0092d50090120090660070380092d50092b9009024", + "0x2c02a1ea0122d500903a1ef0380361ee1ed03102f01852600703a0092d5", + "0x70072d50090071540071ec00955f03c0092d515402e00917f00702e1eb", + "0x2d50090071b00070072d500904000916600704003f1542d500903c009255", + "0x72a00092d50092a20092590072a20092d500904203f154257007042009", + "0x902c00906e0070470092d500902a00902a0070450092d50091ea00901d", + "0x92980092d50092a000924700729a0092d50091eb00902c00729d0092d5", + "0x4a0092d50091ec0092450070072d500900715400729829a29d047045012", + "0x2c00906e0072960092d500902a00902a00704c0092d50091ea00901d007", + "0x500092d500904a00924700704e0092d50091eb00902c00728f0092d5009", + "0x72d50090120091730070072d500900715400705004e28f29604c012009", + "0x900700901d00728c0092d50090210092450070072d500900e009298007", + "0x71660092d500915400906e0070540092d50092ae00902a0070520092d5", + "0x1660540520120091690092d500928c0092470070580092d500901600902c", + "0x1100902c0070200092d500900900902a0070072d50090071a1007169058", + "0x1540180090620070180162ae0112d500901d0201542a400701d0092d5009", + "0x2a60092d500901e0091700070072d500900715400702100956001e0092d5", + "0x5620070260092d50092a60241545610070240121542d5009012009284007", + "0x92d500900700901d0072b90092d500900751c0070280092d5009026009", + "0x902c0071ed0092d500915400906e0070310092d50092ae00902a00702f", + "0x92d50092b90090240070360092d500900e00904a0071ee0092d5009016", + "0x1852b00703a0092d50090280095250071ef0092d5009012009066007038", + "0x2e00917f00702e1eb02c02a1ea0122d500903a1ef0380361ee1ed03102f", + "0x1542d500903c0092550070072d50090071540071ec00956303c0092d5154", + "0x3f1542570070420092d50090071b00070072d500904000916600704003f", + "0x92d50091ea00901d0072a00092d50092a20092590072a20092d5009042", + "0x902c00729d0092d500902c00906e0070470092d500902a00902a007045", + "0x29829a29d0470450120092980092d50092a000924700729a0092d50091eb", + "0x2d50091ea00901d00704a0092d50091ec0092450070072d5009007154007", + "0x2c00728f0092d500902c00906e0072960092d500902a00902a00704c009", + "0x4e28f29604c0120090500092d500904a00924700704e0092d50091eb009", + "0x2d500900e0092980070072d50090120091730070072d5009007154007050", + "0x902a0070520092d500900700901d00728c0092d5009021009245007007", + "0x92d500901600902c0071660092d500915400906e0070540092d50092ae", + "0x90071a10071690581660540520120091690092d500928c009247007058", + "0x830070180092d50090075160070162ae1542d50090120090830070072d5", + "0x2d50090160091240070072d500902000918600701d0201542d5009018009", + "0x1240070072d50090210091860072a60211542d500901e00908300701e009", + "0x90260091860070280261542d50090240090830070240092d500901d009", + "0x2320071ea0092d50090280091240072b90092d50092a60091240070072d5", + "0x15402a00923300702a0092d500902a00902400702a0092d50091ea2b9154", + "0x2380071eb0092d50090071b00070072d500900715400702c0095640072d5", + "0x756500900711f00702f0092d500902e0090ec00702e0092d50091eb009", + "0x310092d50090071b00070072d500902c00923a0070072d5009007154007", + "0x2f00923f00702f0092d50091ed0090ec0071ed0092d500903100923d007", + "0x360092d51541ee0092410071ee0092d50091ee0090ec0071ee0092d5009", + "0x2ae0091860070072d50090360091660070072d5009007154007038009566", + "0x75670071ef0092d50090070210070072d500900e0092980070072d5009", + "0x92d500903a1ef15402600703a0092d500903a00902400703a0092d5009", + "0x924500703f0092d500903c1ec1542b90071ec0092d500900702800703c", + "0x92d500900900902a0070420092d500900700901d0070400092d500903f", + "0x92470070450092d500901100902c0072a00092d500915400906e0072a2", + "0x1660070072d50090071540070470452a02a20420120090470092d5009040", + "0x92d500901100902c00704a0092d500900900902a0070072d5009038009", + "0x2960092d515429800906200729829a29d0112d500904c04a1542a400704c", + "0x901d00704e0092d50092960091700070072d500900715400728f009568", + "0x92d500915400906e0071690092d500929d00902a0070580092d5009007", + "0x902400705d0092d500900e00904a0070e60092d500929a00902c00716a", + "0xe616a1690580165690070e40092d500904e0090660070e50092d50092ae", + "0x56a0600092d515416600917f00716605405228c0500122d50090e40e505d", + "0x1542570071711701542d50090600092550070072d5009007154007062009", + "0x2d500905000901d0070660092d50091730092590071730092d5009171170", + "0x2c00706a0092d500905200906e0071750092d500928c00902a007068009", + "0x6c06a1750680120091780092d500906600924700706c0092d5009054009", + "0x905000901d00706e0092d50090620092450070072d5009007154007178", + "0x717f0092d500905200906e00717d0092d500928c00902a0070700092d5", + "0x17f17d0700120090740092d500906e0092470070730092d500905400902c", + "0x900e0092980070072d50092ae0091860070072d5009007154007074073", + "0x2a0071800092d500900700901d0070760092d500928f0092450070072d5", + "0x2d500929a00902c00707a0092d500915400906e0071820092d500929d009", + "0x722500707d07c07a18218001200907d0092d500907600924700707c009", + "0xe00919a0070072d50090071a10070072d500900710b0070200092d5009", + "0x43000703102f02e1eb02c02a1ea2b90280260242a602101e01d0262d5009", + "0x900900902a00703c0092d500900700901d0071ee1ed1542d50091ea009", + "0x70400092d50091ee00943100703f0092d500901100902c0071ec0092d5", + "0x92d515403a00906200703a1ef03803600e2d500904003f1ec03c00e432", + "0x2840072a00092d50090420091700070072d50090071540072a200956b042", + "0x90450090830070450092d500904700921f0070472a01542d50092a0009", + "0x830072980092d50090072310070072d500929d00918600729a29d1542d5", + "0x2d500929a0091240070072d500904a00918600704c04a1542d5009298009", + "0x704e0092d500928f29615423200728f0092d500904c009124007296009", + "0x72d515404e00923300704e0092d500904e0090240070072d50090071ba", + "0x28c00923800728c0092d50090071b00070072d500900715400705000956c", + "0x15400700756d00900711f0070540092d50090520090ec0070520092d5009", + "0x23d0071660092d50090071b00070072d500905000923a0070072d5009007", + "0x2d500905400923f0070540092d50090580090ec0070580092d5009166009", + "0x956e16a0092d51541690092410071690092d50091690090ec007169009", + "0x72d500916a0091660070072d50090071a10070072d50090071540070e6", + "0x2d50092ae0091730070072d500901600918c0070072d50092a0009173007", + "0x90310091740070072d50090200092990070072d5009012009186007007", + "0x1eb0091390070072d500902e0091760070072d500902f00913b0070072d5", + "0x917e0070072d500902a00917b0070072d500902c0091770070072d5009", + "0x1810070072d50090280091330070072d50092b90091350070072d50091ed", + "0x70072d50092a60091300070072d50090240091830070072d5009026009", + "0x72d500901d00912e0070072d500901e0091650070072d5009021009184", + "0x2d50090e50090240070e50092d500900756f00705d0092d5009007021007", + "0x2b90070600092d50090070280070e40092d50090e505d1540260070e5009", + "0x903600901d0071700092d50090620092450070620092d50090e4060154", + "0x70660092d500915400906e0071730092d500903800902a0071710092d5", + "0x661731710120091750092d50091700092470070680092d50091ef00902c", + "0x1e01d02629d0070072d50090e60091660070072d5009007154007175068", + "0x929a00706a0092d500903102f02e1eb02c02a1ed2b90280260242a6021", + "0x2d500903800902a0070740092d500903600901d00717806c1542d500906a", + "0x4a0071820092d50091ef00902c0071800092d500915400906e007076009", + "0x907c00906600707c2a01542d50092a000928400707a0092d5009178009", + "0x7317f17d07006e0122d500907c07a1821800760742ae18800707c0092d5", + "0x707f00957007d0092d515407300908b00706c0092d500906c00904a007", + "0x811851542d50092a00091710070072d50090071a10070072d5009007154", + "0x901d0070850092d500907d0090860071860831542d500906c00929a007", + "0x92d500917d00906e00708d0092d500907000902a0070560092d500906e", + "0x92360070910092d500918600904a00718a0092d500917f00902c007189", + "0x18908d0562ae18900718b0092d500918b00907000718b0851542d5009085", + "0x180092d500901802015422700708608b0181881870122d500918b09118a", + "0x921e0070072d500900715400718c0095710940092d5154086009062007", + "0x92d50090940091700070980092d500909600921f0070960092d5009081", + "0x921e0070072d500909a00917300709c09a1542d500918d00917100718d", + "0x1542d500909800908300718f0092d500918e00921f00718e0092d500909c", + "0x1860070dd1961542d500918f0090830070072d500909f0091860070a109f", + "0x92d50090dd0091240070a40092d50090a10091240070072d5009196009", + "0x2330071a40092d50091a40090240071a40092d50090a60a41542320070a6", + "0x2d500908300929a0070072d50090071540070a80095720072d51541a4009", + "0x70dc0092d500908b00902c0071b10092d500918800902a0071a70aa154", + "0xdc1b100e5730070b30092d50090120090240070b10092d50091a700904a", + "0x70da0095741b70092d51541af0092280071af0ad0ab0112d50090b30b1", + "0xdb1542d50090aa00929a0070072d50091b700922b0070072d5009007154", + "0x904a0070ed0092d50090ad00902c0070ee0092d50090ab00902a0070f2", + "0x2d50090eb0090660070eb2ae1542d50092ae0092840070ec0092d50090f2", + "0x70f50161542d500901600941c0070f60092d50091850090660070eb009", + "0xf10112d50090f50f60eb0ec0ed0ee2ae5750070f50092d50090f5009096", + "0x70072d50090071540070f30095760f40092d51540ef0092280070ef0f0", + "0x901600941c0070ea2ae1542d50092ae0092840070072d50090f400922b", + "0x2d500918700901d0070e80092d50090e90ea0850115770070e90161542d5", + "0x4a0070df0092d50090f000902c0070de0092d50090f100902a0070d9009", + "0xdf0de0d90125790070e00092d50090e80095780070ce0092d50090db009", + "0xe200957a0e10092d51540d800917f0070d80d70d60d500e2d50090e00ce", + "0x90e70091660070e70e31542d50090e10092550070072d5009007154007", + "0x71d40092d50090d500901d0071cc0092d50090162ae15457b0070072d5", + "0x90e300904a0071030092d50090d700902c0071020092d50090d600902a", + "0x91051041031021d401257d0071050092d50091cc00957c0071040092d5", + "0x715400710800957e1060092d51540fa00917f0070fa1d00f81cd00e2d5", + "0x70072d500910a00916600710a1d61542d50091060092550070072d5009", + "0x91d50092590071d50092d50091d71d61542570071d70092d50090071b0", + "0x710d0092d50090f800902a0071d20092d50091cd00901d00710b0092d5", + "0x910b0092470071ca0092d50091d000902c0071d10092d500901800906e", + "0x1080092450070072d50090071540071101ca1d110d1d20120091100092d5", + "0x1cb0092d50090f800902a0071c90092d50091cd00901d0071120092d5009", + "0x1120092470071fc0092d50091d000902c0071140092d500901800906e007", + "0x91730070072d50090071540071c51fc1141cb1c90120091c50092d5009", + "0x71c30092d50090e20092450070072d500901600918c0070072d50092ae", + "0x901800906e0071190092d50090d600902a0071be0092d50090d500901d", + "0x91b60092d50091c300924700711b0092d50090d700902c0071ba0092d5", + "0x70072d500901600918c0070072d50090071540071b611b1ba1191be012", + "0x72d50090850091780070072d50090db0092980070072d50092ae009173", + "0xf100902a0071b40092d500918700901d00711d0092d50090f3009245007", + "0x1ac0092d50090f000902c0071b00092d500901800906e00711f0092d5009", + "0x2d50090071540071221ac1b011f1b40120091220092d500911d009247007", + "0x90850091780070072d50092ae0091730070072d500901600918c007007", + "0xda0092450070072d50090aa0092980070072d50091850091730070072d5", + "0x1b80092d50090ab00902a0071240092d500918700901d0071a80092d5009", + "0x1a80092470071a10092d50090ad00902c0071a30092d500901800906e007", + "0x923a0070072d50090071540071281a11a31b81240120091280092d5009", + "0x1780070072d50092ae0091730070072d500901600918c0070072d50090a8", + "0x70072d50090120091860070072d50091850091730070072d5009085009", + "0x12a0092d500900744100719e0092d50090070210070072d5009083009298", + "0x702800712c0092d500912a19e15402600712a0092d500912a009024007", + "0x92d50091990092450071990092d500912c1951542b90071950092d5009", + "0x906e00719a0092d500918800902a00719b0092d500918700901d007198", + "0x92d50091980092470071840092d500908b00902c00712e0092d5009018", + "0x2d500901600918c0070072d500900715400713018412e19a19b012009130", + "0x91850091730070072d50090850091780070072d50092ae009173007007", + "0x810091730070072d50090830092980070072d50090120091860070072d5", + "0x71810092d500918700901d0071830092d500918c0092450070072d5009", + "0x908b00902c0071350092d500901800906e0071330092d500918800902a", + "0x15400717b17e13513318101200917b0092d500918300924700717e0092d5", + "0x918c0070072d50092a00091730070072d50090071a10070072d5009007", + "0x2980070072d50090120091860070072d50092ae0091730070072d5009016", + "0x1770092d500907f0092450070072d50090200092990070072d500906c009", + "0x17d00906e0071760092d500907000902a0071390092d500906e00901d007", + "0x16f0092d50091770092470071740092d500917f00902c00713b0092d5009", + "0x72d500901d00912e0070072d500900715400716f17413b176139012009", + "0x2d50090120091860070072d50092ae0091730070072d500901600918c007", + "0x902f00913b0070072d50090310091740070072d5009020009299007007", + "0x2c0091770070072d50091eb0091390070072d500902e0091760070072d5", + "0x91350070072d50091ed00917e0070072d500902a00917b0070072d5009", + "0x1830070072d50090260091810070072d50090280091330070072d50092b9", + "0x70072d50090210091840070072d50092a60091300070072d5009024009", + "0x2d500903600901d00716e0092d50092a20092450070072d500901e009165", + "0x2c00716b0092d500915400906e00716c0092d500903800902a00713f009", + "0x14216b16c13f0120091680092d500916e0092470071420092d50091ef009", + "0x72d50090071a10070072d500900710b00701e0092d5009007225007168", + "0x900902a0072a60211542d500900e00929a0070072d5009016009178007", + "0x2a0092d50092a600904a0071ea0092d500901100902c0072b90092d5009", + "0x260240112d500902c02a1ea2b900e57300702c0092d5009012009024007", + "0x22b0070072d500900715400702e00957f1eb0092d5154028009228007028", + "0x2d500900700901d00703102f1542d500902100929a0070072d50091eb009", + "0x2c00703c0092d500915400906e00703a0092d500902400902a0071ef009", + "0x2d50092ae00923600703f0092d500903100904a0071ec0092d5009026009", + "0x4003f1ec03c03a1ef2ae1890070400092d50090400090700070402ae154", + "0x906200701d0092d500901d01e15422700703803601d1ee1ed0122d5009", + "0x2d500902f00929a0070072d50090071540072a20095800420092d5154038", + "0x704a0092d50091ee00902a0070470092d50090420091700070452a0154", + "0x90180092840072960092d500904500904a00704c0092d500903600902c", + "0x4e0092d500904700906600728f0092d500928f00906600728f0181542d5", + "0x2ae5750070500092d50090500090960070500201542d500902000941c007", + "0x28c0092d515429800922800729829a29d0112d500905004e28f29604c04a", + "0x2ae0115770070072d500928c00922b0070072d5009007154007052009581", + "0x2d500929d00902a0070e60092d50091ed00901d0070540092d5009020018", + "0x5780070e40092d50092a000904a0070e50092d500929a00902c00705d009", + "0x16905816600e2d50090600e40e505d0e60125790070600092d5009054009", + "0x2550070072d50090071540071700095820620092d515416a00917f00716a", + "0x92d50090071b00070072d50091730091660071731711542d5009062009", + "0x1d0071750092d50090680092590070680092d5009066171154257007066", + "0x2d500901d00906e00706c0092d500905800902a00706a0092d5009166009", + "0x120090700092d500917500924700706e0092d500916900902c007178009", + "0x717d0092d50091700092450070072d500900715400707006e17806c06a", + "0x901d00906e0070730092d500905800902a00717f0092d500916600901d", + "0x91800092d500917d0092470070760092d500916900902c0070740092d5", + "0x70072d50092a00092980070072d500900715400718007607407317f012", + "0x72d50092ae0091780070072d50090180091730070072d500902000918c", + "0x29d00902a00707a0092d50091ed00901d0071820092d5009052009245007", + "0x7f0092d500929a00902c00707d0092d500901d00906e00707c0092d5009", + "0x2d500900715400718507f07d07c07a0120091850092d5009182009247007", + "0x90180091730070072d50092ae0091780070072d500902f009298007007", + "0x901d0070810092d50092a20092450070072d500902000918c0070072d5", + "0x92d500901d00906e0071860092d50091ee00902a0070830092d50091ed", + "0x830120091880092d50090810092470071870092d500903600902c007085", + "0x91730070072d500902000918c0070072d5009007154007188187085186", + "0x2980070072d500901e0092990070072d50092ae0091780070072d5009018", + "0x92d500900700901d00708b0092d500902e0092450070072d5009021009", + "0x902c00708d0092d500915400906e0070560092d500902400902a007086", + "0x18a18908d05608601200918a0092d500908b0092470071890092d5009026", + "0x2d515401100911b0070110092d50091540090110070072d50090071a1007", + "0x160092d50090120091b60070072d50090071540072ae00958301200e154", + "0x900711f0070200092d50090160091b40070180092d500900e00911d007", + "0x901d0091ac00701d0092d50090071b00070072d5009007154007007584", + "0x70200092d500901e0091b40070180092d50092ae00911d00701e0092d5", + "0x1540200091220070210092d50090210091750070210092d500901800916a", + "0x260092d50092a60091a80070072d50090071540070240095852a60092d5", + "0x900700901d0072b90092d50090260091240070280092d5009007021007", + "0x702f0092d500902100917500702e0092d500900900902a0071eb0092d5", + "0x2e1eb0125860071ed0092d50092b90090240070310092d5009028009052", + "0x360095881ee0092d515402c00958700702c02a1ea0112d50091ed03102f", + "0x1541ef00958a0071ef0381542d50091ee0095890070072d5009007154007", + "0x1ec1542d500903a0090580070072d500900715400703c00958b03a0092d5", + "0x4000958c0070400092d500903f00916a0070072d50091ec00916900703f", + "0x92d50092a200958e0072a20092d500904203815458d0070420092d5009", + "0x958f0070470092d500902a00902a0070450092d50091ea00901d0072a0", + "0x3c0095900070072d500900715400729d04704501100929d0092d50092a0", + "0x92d500929800958e0072980092d500929a03815458d00729a0092d5009", + "0x958f0072960092d500902a00902a00704c0092d50091ea00901d00704a", + "0x360095910070072d500900715400728f29604c01100928f0092d500904a", + "0x28c0092d500902a00902a0070500092d50091ea00901d00704e0092d5009", + "0x70072d500900715400705228c0500110090520092d500904e00958f007", + "0x92d50090540095900070540092d50090071b00070072d5009024009166", + "0x1d0071690092d500905800958e0070580092d500916602115458d007166", + "0x2d500916900958f0070e60092d500900900902a00716a0092d5009007009", + "0x92d50090074b70070210092d500900722500705d0e616a01100905d009", + "0x1542d500900e00929a0070072d50090071a10070072d500900710b007024", + "0x4a0071eb0092d500901100902c00702c0092d500900900902a007028026", + "0x2e1eb02c00e57300702f0092d500901200902400702e0092d5009028009", + "0x1540071ed0095920310092d515402a00922800702a1ea2b90112d500902f", + "0x361ee1542d500902600929a0070072d500903100922b0070072d5009007", + "0x15400906e00703f0092d50092b900902a0071ec0092d500900700901d007", + "0x2a20092d500903600904a0070420092d50091ea00902c0070400092d5009", + "0x2ae1890072a00092d50092a00090700072a02ae1542d50092ae009236007", + "0x901e02115422700703c03a01e1ef0380122d50092a02a204204003f1ec", + "0x72d50090071540070470095930450092d515403c00906200701e0092d5", + "0x902a0072980092d500904500917000729a29d1542d50091ee00929a007", + "0x92d500929a00904a00728f0092d500903a00902c0072960092d50091ef", + "0x2840070500092d50090500090660070500181542d500901800928400704e", + "0x902000941c00728c0092d500928c00906600728c2981542d5009298009", + "0x28c05004e28f2962ae5750070520092d50090520090960070520201542d5", + "0x4c0092280072a60092d50092a60241544d900704c2a604a0112d5009052", + "0x72d500905400922b0070072d50090071540071660095940540092d5154", + "0x16900917300716a1691542d50092980091710070580092d5009007021007", + "0x70e40092d50090580090520070e50092d500916a0090660070072d5009", + "0x200090940070072d500905d00916600705d0e61542d50090e40e5154068", + "0x92d50090e60090520071730092d50090620090960070620601542d5009", + "0x560070072d50091710091660071711701542d5009066173154098007066", + "0x91700090520071780092d50091750090700071750681542d5009016009", + "0x72d500906c00916600706c06a1542d500906e17815408d00706e0092d5", + "0x902a0070760092d500903800901d00717d0701542d500901d0094de007", + "0x92d500906a0090520071820092d500917d0091750071800092d500904a", + "0x2d51540740094e000707407317f0112d500907a18218007600e4df00707a", + "0x18507f1542d500907c0094e20070072d500900715400707d00959507c009", + "0x2d500907f0090580070810092d50090072e00070072d5009185009166007", + "0x1ba0070850092d500918600916a0070072d5009083009169007186083154", + "0x92d50090810090240071870181542d50090180092840070072d5009007", + "0x112d51540850811872a60730125960070850092d5009085009175007081", + "0x2d50090860094e60070072d500900715400718908d05601159708608b188", + "0x4e700718b0092d500908b00902c0070910092d500918800902a00718a009", + "0x2d70070072d500900715400700759800900711f0070940092d500918a009", + "0x2d500908d00902c0070910092d500905600902a00718c0092d5009189009", + "0x70980961542d50090940094e90070940092d500918c0094e700718b009", + "0x18d0090e40070072d500900715400709a00959918d0092d51540980094eb", + "0x709c0092d500918e00959a00718e0092d50090960094e70070072d5009", + "0x18f00959d0070072d500900715400709f00959c18f0092d515409c00959b", + "0x1961542d50090a40094800070a40092d50090a10091750070a10092d5009", + "0x71a400959e0a60092d51540dd0094810070072d50091960090e40070dd", + "0x90071540070aa00959f0a80092d51540a60092410070072d5009007154", + "0x929d0092980070072d50090a80091660070072d50090071a10070072d5", + "0x180091730070072d500906000918c0070072d50090700090e40070072d5", + "0x70210070072d50090680091780070072d50092ae0091780070072d5009", + "0x70ab0092d50090ab0090240070ab0092d50090075a00071a70092d5009", + "0xad1af1542b90071af0092d50090070280070ad0092d50090ab1a7154026", + "0xb10092d500917f00901d0070dc0092d50091b10092450071b10092d5009", + "0x18b00902c0071b70092d500901e00906e0070b30092d500909100902a007", + "0x70db0da1b70b30b10120090db0092d50090dc0092470070da0092d5009", + "0x5a10070072d50090aa0091660070072d50090071a10070072d5009007154", + "0x2a0070ed0092d500917f00901d0070f20092d50090700600182ae068012", + "0x2d500929d00904a0070eb0092d500918b00902c0070ec0092d5009091009", + "0x2d50090f50f60eb0ec0ed0122df0070f50092d50090f20095a20070f6009", + "0x90071540070f30095a30f40092d51540ee00917f0070ee0ef0f00f100e", + "0x1b00070072d50090e90091660070e90ea1542d50090f40092550070072d5", + "0x2d50090d50092590070d50092d50090e80ea1542570070e80092d5009007", + "0x6e0070d80092d50090f000902a0070d70092d50090f100901d0070d6009", + "0x2d50090d60092470070de0092d50090ef00902c0070d90092d500901e009", + "0x90f30092450070072d50090071540070df0de0d90d80d70120090df009", + "0x70e10092d50090f000902a0070e00092d50090f100901d0070ce0092d5", + "0x90ce0092470070e30092d50090ef00902c0070e20092d500901e00906e", + "0x90071a10070072d50090071540070e70e30e20e10e00120090e70092d5", + "0x700090e40070072d500929d0092980070072d50091a40091660070072d5", + "0x91780070072d50090180091730070072d500906000918c0070072d5009", + "0x5a40071cc0092d50090070210070072d50090680091780070072d50092ae", + "0x2d50091cd1cc1540260071cd0092d50091cd0090240071cd0092d5009007", + "0x2450070fa0092d50090f81d01542b90071d00092d50090070280070f8009", + "0x2d500909100902a0071020092d500917f00901d0071d40092d50090fa009", + "0x2470071050092d500918b00902c0071040092d500901e00906e007103009", + "0x70072d50090071540071061051041031020120091060092d50091d4009", + "0x70072d50090700090e40070072d500929d0092980070072d50090071a1", + "0x72d50092ae0091780070072d50090180091730070072d500906000918c", + "0x917f00901d0071080092d500909f0092450070072d5009068009178007", + "0x71d70092d500901e00906e00710a0092d500909100902a0071d60092d5", + "0x1d710a1d601200910b0092d50091080092470071d50092d500918b00902c", + "0x2d500909a00912c0070072d50090071a10070072d500900715400710b1d5", + "0x906000918c0070072d50090700090e40070072d500929d009298007007", + "0x680091780070072d50092ae0091780070072d50090180091730070072d5", + "0x75a50071d20092d50090070210070072d50090960094ea0070072d5009", + "0x92d500910d1d215402600710d0092d500910d00902400710d0092d5009", + "0x92450071100092d50091d11ca1542b90071ca0092d50090070280071d1", + "0x92d500909100902a0071c90092d500917f00901d0071120092d5009110", + "0x92470071fc0092d500918b00902c0071140092d500901e00906e0071cb", + "0x1780070072d50090071540071c51fc1141cb1c90120091c50092d5009112", + "0x70072d500929d0092980070072d50090680091780070072d50092ae009", + "0x72d50090180091730070072d500906000918c0070072d50090700090e4", + "0x7300902a0071be0092d500917f00901d0071c30092d500907d009245007", + "0x11b0092d50092a600902c0071ba0092d500901e00906e0071190092d5009", + "0x2d50090071540071b611b1ba1191be0120091b60092d50091c3009247007", + "0x929d0092980070072d50090160091780070072d50092ae009178007007", + "0x1d0090e40070072d50090180091730070072d500902000918c0070072d5", + "0x1d00711d0092d50091660092450070072d50092980091730070072d5009", + "0x2d500901e00906e00711f0092d500904a00902a0071b40092d5009038009", + "0x120091220092d500911d0092470071ac0092d50092a600902c0071b0009", + "0x1780070072d50092ae0091780070072d50090071540071221ac1b011f1b4", + "0x70072d500902000918c0070072d50091ee0092980070072d5009016009", + "0x72d50090240094be0070072d500901d0090e40070072d5009018009173", + "0x1ef00902a0071240092d500903800901d0071a80092d5009047009245007", + "0x1a10092d500903a00902c0071a30092d500901e00906e0071b80092d5009", + "0x2d50090071540071281a11a31b81240120091280092d50091a8009247007", + "0x90240094be0070072d50092ae0091780070072d500901d0090e4007007", + "0x2000918c0070072d50090180091730070072d50090160091780070072d5", + "0x92450070072d50090260092980070072d50090210092990070072d5009", + "0x92d50092b900902a00712a0092d500900700901d00719e0092d50091ed", + "0x92470071990092d50091ea00902c0071950092d500915400906e00712c", + "0x1542d51540090071545a600719819919512c12a0120091980092d500919e", + "0x70120092d50090110095a80070072d500900715400700e0095a7011154", + "0x5aa00900711f0070160092d50090120095a90072ae0092d500915400901d", + "0x2d50090180095ab0070180092d50090071b00070072d5009007154007007", + "0x5ac0070160092d50090200095a90072ae0092d500900e00901d007020009", + "0x22500701e01d15400901e0092d50090160095ad00701d0092d50092ae009", + "0x919a0070072d50090071a10070072d500900710b00701e0092d5009007", + "0x71ee1ed03102f02e1eb02c02a1ea2b90280260242a60210262d500900e", + "0x900902a00703f0092d500900700901d0070380361542d500902c009430", + "0x2a20092d50090380094310070420092d500901100902c0070400092d5009", + "0x2d51541ec0090620071ec03c03a1ef00e2d50092a204204003f00e432007", + "0x70470092d50092a00091700070072d50090071540070450095ae2a0009", + "0x29a00918600729829a1542d500929d00908300729d0092d500904700921f", + "0x729604c1542d500904a00908300704a0092d50090072310070072d5009", + "0x2d500929600912400728f0092d50092980091240070072d500904c009186", + "0x70500092d50090500090240070500092d500904e28f15423200704e009", + "0x2a602102629d0070072d500900715400728c0095af0072d5154050009233", + "0x929a0070520092d50091ee1ed03102f02e1eb03602a1ea2b9028026024", + "0x2d500903c00902c0070e60092d500903a00902a0071660541542d5009052", + "0x5730070e40092d50090120090240070e50092d500916600904a00705d009", + "0x70540092d500905400904a00716a1690580112d50090e40e505d0e600e", + "0x6000922b0070072d50090071540070620095b00600092d515416a009228", + "0x6e17806c06a1750680661731711700262d500905400919a0070072d5009", + "0x2d50091ef00901d0071800761542d50090660095b100707407317f17d070", + "0x2c0070830092d500915400906e0070810092d500905800902a007185009", + "0x2d50092ae0092360070850092d50091800092c10071860092d5009169009", + "0x1870851860830811852ae2c20071870092d50091870090700071872ae154", + "0x708b0095b21880092d515407f00906200707f07d07c07a1820122d5009", + "0x92d500908600921f0070860092d50091880091700070072d5009007154", + "0x72310070072d500908d00918600718908d1542d5009056009083007056", + "0x72d500909100918600718b0911542d500918a00908300718a0092d5009", + "0x9415423200718c0092d500918b0091240070940092d5009189009124007", + "0x72d51540960092330070960092d50090960090240070960092d500918c", + "0x6c06a17506807617317117002629d0070072d50090071540070980095b3", + "0x9c09a1542d500918d00929a00718d0092d500907407317f17d07006e178", + "0x7d00902c0070dd0092d500907a00902a0071960092d500918200901d007", + "0x90a60a40dd19600e0600070a60092d500909c00904a0070a40092d5009", + "0x2d51540a100906200709a0092d500909a00904a0070a109f18f18e00e2d5", + "0x70aa0092d50091a40091700070072d50090071540070a80095b41a4009", + "0x1a70090830071a70092d50090ab00921f0070ab0aa1542d50090aa009284", + "0x71b10092d50090072310070072d50090ad0091860071af0ad1542d5009", + "0x91af0091240070072d50090dc0091860070b10dc1542d50091b1009083", + "0xda0092d50091b70b31542320071b70092d50090b10091240070b30092d5", + "0x2d51540da0092330070da0092d50090da0090240070072d50090071ba007", + "0x92380070f20092d50090071b00070072d50090071540070db0095b5007", + "0x70075b600900711f0070f00092d50090f10090ec0070f10092d50090f2", + "0x70ef0092d50090071b00070072d50090db00923a0070072d5009007154", + "0x90f000923f0070f00092d50090ee0090ec0070ee0092d50090ef00923d", + "0x5b70ec0092d51540ed0092410070ed0092d50090ed0090ec0070ed0092d5", + "0x2d50090ec0091660070072d50090071a10070072d50090071540070eb009", + "0x90aa0091730070072d50092ae0091780070072d5009016009186007007", + "0x200091280070072d500901e0092990070072d50090180091860070072d5", + "0x75b80070f60092d50090070210070072d500909a0092980070072d5009", + "0x92d50090f50f61540260070f50092d50090f50090240070f50092d5009", + "0x92450070ea0092d50090f40f31542b90070f30092d50090070280070f4", + "0x92d500918f00902a0070e80092d500918e00901d0070e90092d50090ea", + "0x92470070d70092d500909f00902c0070d60092d500907c00906e0070d5", + "0x1660070072d50090071540070d80d70d60d50e80120090d80092d50090e9", + "0x2d500918e00901d0070de0d91542d500909a00929a0070072d50090eb009", + "0x4a0070e70092d500909f00902c0070e30092d500918f00902a0070e2009", + "0xe10e00ce0df00e2d50091cc0e70e30e200e04c0071cc0092d50090de009", + "0x928f0070072d50090071540070f80095b91cd0092d51540e1009296007", + "0x2d50091d40091470071d41d01542d50091d00092670071d00092d50091cd", + "0x2310070072d50091020091860071031021542d50090fa0090830070fa009", + "0x2d50091050091860071061051542d50091040090830071040092d5009007", + "0x1542320071d60092d50091060091240071080092d5009103009124007007", + "0x2d515410a00923300710a0092d500910a00902400710a0092d50091d6108", + "0x92380071d50092d50090071b00070072d50090071540071d70095ba007", + "0x70075bb00900711f0071d20092d500910b0090ec00710b0092d50091d5", + "0x710d0092d50090071b00070072d50091d700923a0070072d5009007154", + "0x91d200923f0071d20092d50091d10090ec0071d10092d500910d00923d", + "0x5bc1100092d51541ca0092410071ca0092d50091ca0090ec0071ca0092d5", + "0x2d50091100091660070072d50090071a10070072d5009007154007112009", + "0x901e0092990070072d50090d90092980070072d5009018009186007007", + "0x2ae0091780070072d50090160091860070072d50090200091280070072d5", + "0x70210070072d50090aa0091730070072d50091d00090500070072d5009", + "0x71cb0092d50091cb0090240071cb0092d50090075bd0071c90092d5009", + "0x1141fc1542b90071fc0092d50090070280071140092d50091cb1c9154026", + "0x1be0092d50090df00901d0071c30092d50091c50092450071c50092d5009", + "0xe000902c0071ba0092d500907c00906e0071190092d50090ce00902a007", + "0x71b611b1ba1191be0120091b60092d50091c300924700711b0092d5009", + "0x1b00092d50090ce00902a0070072d50091120091660070072d5009007154", + "0x711f1b411d0112d50091ac1b01545be0071ac0092d50090e000902c007", + "0x90070210070072d50090071540071a80095bf1220092d515411f009062", + "0x19e0092d50091a30090240071a31b81542d50090160090830071240092d5", + "0x1660071281a11542d500912a19e15408500712a0092d5009124009052007", + "0x2d500919500902400719512c1542d50090180090830070072d5009128009", + "0x1981991542d500919a19b15408500719a0092d50091a100905200719b009", + "0x1840095c100718412e1542d50090200095c00070072d5009198009166007", + "0x92d50091831991540260071830092d50091300092dd0071300092d5009", + "0x1351331542d10071350092d50090072cf0071330092d50090072cf007181", + "0x72d500917b00918c00717717b1542d500917e00909400717e0092d5009", + "0x13b1540980071740092d500918100905200713b0092d5009177009096007", + "0x92d50091220091700070072d50091760091660071761391542d5009174", + "0x716c13f1542d500916e00917100716e16f1542d500916f00928400716f", + "0x2d50091390090520071680092d500916c0090660070072d500913f009173", + "0x70072d500914200916600714216b1542d5009147168154068007147009", + "0x91650090660070072d50091440091730071651441542d500916f009171", + "0x1611542d500915f15115406800715f0092d500916b0090520071510092d5", + "0x917300721d0001542d50090aa0091710070072d500915e00916600715e", + "0x2210092d50091610090520072200092d500921d0090660070072d5009000", + "0x74ac0070072d500921f00916600721f21e1542d5009221220154068007", + "0x72d50092250090a60072262251542d50092230090a40072230092d5009", + "0x2280090240072280092d50092270090a80072270092d50092260091a4007", + "0x1542d50092ae00923600722b0092d500922821e1540260072280092d5009", + "0x5800722c0092d500922d00946100722d0092d500922d00907000722d2ae", + "0x2d500923000916a0070072d500922f00916900723022f1542d500922b009", + "0x91750072330092d500923200923d0072320092d50090071b0007231009", + "0x22c1d01b411d2ae5c20072330092d50092330090ec0072310092d5009231", + "0x72d500900715400724324123f0115c323d23a23823600e2d5154233231", + "0x902a0072470092d50092450095c50072450092d500923d23a1545c4007", + "0x92d50092470095c600724b0092d500923800902c0072490092d5009236", + "0x92d50092430095c80070072d50090071540070075c700900711f00724d", + "0x95c600724b0092d500924100902c0072490092d500923f00902a00724f", + "0x92d50092530095ca0072530092d500924d0095c900724d0092d500924f", + "0x1a10070072d50090071540072570095cc2550092d51542510095cb007251", + "0x26926726526326125f25d25b2590262d50090d900919a0070072d5009007", + "0x2d50092770095ce0072770092d50092550095cd00727527327126f26d26b", + "0x2a00728b0092d50090df00901d0070072d500927b0090e400727b279154", + "0x2d500924b00902c00728e0092d500907c00906e00728d0092d5009249009", + "0x72952ae1542d50092ae0092360072930092d500925f0092c1007291009", + "0x2990090660072992791542d50092790092840072950092d5009295009070", + "0x28427f27d0122d500929929529329128e28d28b0165cf0072990092d5009", + "0x70072d500900715400729c0095d129b0092d515428a0095d000728a287", + "0x928400906e0072ab0092d500927f00902a0072aa0092d500927d00901d", + "0x72b00092d50092610092b80072af0092d500928700902c0072ac0092d5", + "0x2b30090700072b32ae1542d50092ae0092360072b10092d5009279009066", + "0x1d2a129f0122d50092b32b12b02af2ac2ab2aa0165d20072b30092d5009", + "0x5d42b50092d51542a90095d300701d0092d500901d01e1542270072a92a4", + "0x91660072bb2ba1542d500929b0095d50070072d50090071540072b8009", + "0x72d50092be0091660072be2bc1542d50092b50092dc0070072d50092bb", + "0x2632bc2ba25d25b25902629d0072c00092d500912e12c1b82ae00e5d6007", + "0x92d500929f00901d0072c10092d500927527327126f26d26b269267265", + "0x904a0072d10092d50092a400902c0072cf0092d50092a100902a0072ca", + "0x4112d12cf2ca0125d80074130092d50092c00095d70074110092d50092c1", + "0x74160095d94140092d51542c900917f0072c92c82c72c200e2d5009413", + "0x2d50094170091660074172d61542d50094140092550070072d5009007154", + "0x92590074190092d50094182d61542570074180092d50090071b0007007", + "0x92d50092c700902a00741c0092d50092c200901d00741b0092d5009419", + "0x924700741f0092d50092c800902c00741e0092d500901d00906e00741d", + "0x2450070072d500900715400742041f41e41d41c0120094200092d500941b", + "0x2d50092c700902a0074250092d50092c200901d0074240092d5009416009", + "0x24700742e0092d50092c800902c00742c0092d500901d00906e00742b009", + "0x70072d500900715400743042e42c42b4250120094300092d5009424009", + "0x72d500927300913b0070072d50092750091740070072d500925900912e", + "0x2d500926d0091770070072d500926f0091390070072d5009271009176007", + "0x92670091350070072d500926900917e0070072d500926b00917b007007", + "0x2ae0091780070072d50092630091810070072d50092650091330070072d5", + "0x91650070072d500925d0091840070072d500929b0095da0070072d5009", + "0x1860070072d500912c0091860070072d500912e0091280070072d500925b", + "0x92d500929f00901d0074310092d50092b80092450070072d50091b8009", + "0x902c00743d0092d500901d00906e0074370092d50092a100902a007432", + "0x43f43e43d43743201200943f0092d500943100924700743e0092d50092a4", + "0x72d500925900912e0070072d500912c0091860070072d5009007154007", + "0x2d50091b80091860070072d500912e0091280070072d500925b009165007", + "0x92710091760070072d500927300913b0070072d5009275009174007007", + "0x26b00917b0070072d500926d0091770070072d500926f0091390070072d5", + "0x91330070072d50092670091350070072d500926900917e0070072d5009", + "0x1840070072d50092ae0091780070072d50092630091810070072d5009265", + "0x70072d50092790091730070072d500901e0092990070072d500925d009", + "0x2d500927d00901d0074410092d500929c0092450070072d5009261009183", + "0x2c00744d0092d500928400906e00744b0092d500927f00902a007445009", + "0x44f44d44b4450120094500092d500944100924700744f0092d5009287009", + "0x72d500912c0091860070072d50090071a10070072d5009007154007450", + "0x2d50091b80091860070072d500912e0091280070072d50090d9009298007", + "0x92570092450070072d500901e0092990070072d50092ae009178007007", + "0x74530092d500924900902a0074520092d50090df00901d0074510092d5", + "0x94510092470074570092d500924b00902c0074550092d500907c00906e", + "0x90071a10070072d500900715400745b45745545345201200945b0092d5", + "0x1e0092990070072d50090d90092980070072d50090180091860070072d5", + "0x91780070072d50090160091860070072d50090200091280070072d5009", + "0x2450070072d50090aa0091730070072d50091d00090500070072d50092ae", + "0x2d500911d00902a00745e0092d50090df00901d00745d0092d50091a8009", + "0x2470074620092d50091b400902c0074610092d500907c00906e00745f009", + "0x70072d500900715400746446246145f45e0120094640092d500945d009", + "0x70072d50090d90092980070072d50090180091860070072d50090071a1", + "0x72d50090160091860070072d50090200091280070072d500901e009299", + "0x2d50090f80092450070072d50090aa0091730070072d50092ae009178007", + "0x6e0074680092d50090ce00902a0074670092d50090df00901d007465009", + "0x2d500946500924700746a0092d50090e000902c0074690092d500907c009", + "0x90160091860070072d500900715400746c46a46946846701200946c009", + "0x180091860070072d500909a0092980070072d50092ae0091780070072d5", + "0x92450070072d50090200091280070072d500901e0092990070072d5009", + "0x92d500918f00902a00746e0092d500918e00901d00746d0092d50090a8", + "0x92470074710092d500909f00902c0072d90092d500907c00906e007470", + "0x23a0070072d50090071540074734712d947046e0120094730092d500946d", + "0x70072d500901e0092990070072d50090180091860070072d5009098009", + "0x72d50092ae0091780070072d50090160091860070072d5009020009128", + "0x2d500917f0091760070072d500907300913b0070072d5009074009174007", + "0x906e00917b0070072d50090700091770070072d500917d009139007007", + "0x6a0091330070072d500906c0091350070072d500917800917e0070072d5", + "0x91300070072d50090680091830070072d50091750091810070072d5009", + "0x12e0070072d50091710091650070072d50091730091840070072d5009076", + "0x74750092d50090075db0074740092d50090070210070072d5009170009", + "0x90070280074760092d50094754741540260074750092d5009475009024", + "0x47a0092d50094790092450074790092d50094764771542b90074770092d5", + "0x7c00906e00747d0092d500907a00902a00747b0092d500918200901d007", + "0x4810092d500947a0092470074800092d500907d00902c00747e0092d5009", + "0x72d50090180091860070072d500900715400748148047e47d47b012009", + "0x2d50090160091860070072d50090200091280070072d500901e009299007", + "0x907300913b0070072d50090740091740070072d50092ae009178007007", + "0x700091770070072d500917d0091390070072d500917f0091760070072d5", + "0x91350070072d500917800917e0070072d500906e00917b0070072d5009", + "0x1830070072d50091750091810070072d500906a0091330070072d500906c", + "0x70072d50091730091840070072d50090760091300070072d5009068009", + "0x92d500908b0092450070072d500917000912e0070072d5009171009165", + "0x906e0074850092d500907a00902a0074840092d500918200901d007483", + "0x92d50094830092470074870092d500907d00902c0074860092d500907c", + "0x2d50090180091860070072d5009007154007488487486485484012009488", + "0x90160091860070072d50090200091280070072d500901e009299007007", + "0x620092450070072d50090540092980070072d50092ae0091780070072d5", + "0x48b0092d500905800902a00748a0092d50091ef00901d0074890092d5009", + "0x48900924700748e0092d500916900902c00748c0092d500915400906e007", + "0x923a0070072d500900715400748f48e48c48b48a01200948f0092d5009", + "0x1280070072d500901e0092990070072d50090180091860070072d500928c", + "0x70072d50092ae0091780070072d50090160091860070072d5009020009", + "0x72d50091ed00913b0070072d50091ee0091740070072d5009012009186", + "0x2d500902e0091770070072d500902f0091390070072d5009031009176007", + "0x902a0091350070072d500903600917e0070072d50091eb00917b007007", + "0x280091830070072d50092b90091810070072d50091ea0091330070072d5", + "0x91650070072d50090240091840070072d50090260091300070072d5009", + "0x5dc0074910092d50090070210070072d500902100912e0070072d50092a6", + "0x2d50094924911540260074920092d50094920090240074920092d5009007", + "0x2450074980092d50094934951542b90074950092d5009007028007493009", + "0x2d500903a00902a00749b0092d50091ef00901d00749a0092d5009498009", + "0x24700749f0092d500903c00902c00749e0092d500915400906e00749d009", + "0x70072d50090071540074a149f49e49d49b0120094a10092d500949a009", + "0x72d50090200091280070072d500901e0092990070072d5009018009186", + "0x2d50090120091860070072d50092ae0091780070072d5009016009186007", + "0x90310091760070072d50091ed00913b0070072d50091ee009174007007", + "0x1eb00917b0070072d500902e0091770070072d500902f0091390070072d5", + "0x91330070072d500902a0091350070072d500903600917e0070072d5009", + "0x1300070072d50090280091830070072d50092b90091810070072d50091ea", + "0x70072d50092a60091650070072d50090240091840070072d5009026009", + "0x2d50091ef00901d0074a20092d50090450092450070072d500902100912e", + "0x2c0074a60092d500915400906e0074a50092d500903a00902a0074a4009", + "0x4a84a64a54a40120094a90092d50094a20092470074a80092d500903c009", + "0x72d500900715400700e0095de0111541542d51540090071545dd0074a9", + "0x120095e00072ae0092d500915400901d0070120092d50090110095df007", + "0x90071b00070072d50090071540070075e100900711f0070160092d5009", + "0x72ae0092d500900e00901d0070200092d50090180095e20070180092d5", + "0x90160095e300701d0092d50092ae0095ac0070160092d50090200095e0", + "0x92d500900700901d0070072d50090071a100701e01d15400901e0092d5", + "0x902c0072a60092d500915400906e0070210092d500900900902a00701e", + "0x242a602101e0125e40070260092d500900e00904a0070240092d5009011", + "0x2b90095e50280092d515401d00917f00701d0200180162ae0122d5009026", + "0x902a00916600702a1ea1542d50090280092550070072d5009007154007", + "0x3a1ef0380361ee1ed03102f02e1eb02c0262d50091ea00919a0070072d5", + "0x470092d500902000902c0070450092d500901600902a00704003f1ec03c", + "0x4500e5e600729a0092d500901200919800729d0092d50091ef0092d9007", + "0x4a0095e82980092d51542a00095e70072a02a20420112d500929a29d047", + "0x929600916600729604c1542d50092980095e90070072d5009007154007", + "0x361ee1ed03102f02e1eb02c02629d00728f0092d50090075ea0070072d5", + "0x71660092d50092ae00901d00704e0092d500904003f1ec03c03a04c038", + "0x904e00904a0071690092d50092a200902c0070580092d500904200902a", + "0x90e616a1690581660125eb0070e60092d500928f00919e00716a0092d5", + "0x71540070e50095ec05d0092d515405400917f00705405228c05000e2d5", + "0x70072d50090600091660070600e41542d500905d0092550070072d5009", + "0x91700092590071700092d50090620e41542570070620092d50090071b0", + "0x70660092d500928c00902a0071730092d500905000901d0071710092d5", + "0x91710092470071750092d500905200902c0070680092d500901800906e", + "0xe50092450070072d500900715400706a17506806617301200906a0092d5", + "0x6e0092d500928c00902a0071780092d500905000901d00706c0092d5009", + "0x6c00924700717d0092d500905200902c0070700092d500901800906e007", + "0x912e0070072d500900715400717f17d07006e17801200917f0092d5009", + "0x1760070072d500903f00913b0070072d50090400091740070072d500902c", + "0x70072d500903a0091770070072d500903c0091390070072d50091ec009", + "0x72d50090360091350070072d500903800917e0070072d50091eb009165", + "0x2d50090310091830070072d50091ed0091810070072d50091ee009133007", + "0x904a0092450070072d500902e0091840070072d500902f009130007007", + "0x70760092d500904200902a0070740092d50092ae00901d0070730092d5", + "0x90730092470071820092d50092a200902c0071800092d500901800906e", + "0x120090a60070072d500900715400707a18218007607401200907a0092d5", + "0x707d0092d50092ae00901d00707c0092d50092b90092450070072d5009", + "0x902000902c0071850092d500901800906e00707f0092d500901600902a", + "0x16500708308118507f07d0120090830092d500907c0092470070810092d5", + "0x70120092d500900701600700e0092d50090075ed0070072d5009011009", + "0x915400902c00701e0092d500900900902a00701d0092d500900700901d", + "0x70240092d500900e0095ee0072a60092d50090120090200070210092d5", + "0x2d51540200095f00070200180162ae00e2d50090242a602101e01d0125ef", + "0x72b90092d50090260095f20070072d50090071540070280095f1026009", + "0x1541ea0092960071ea0092d500902a0095f400702a0092d50092b90095f3", + "0x2e0092d500902c00928f0070072d50090071540071eb0095f502c0092d5", + "0x2ae00901d0070310092d500902f00916c00702f0092d500902e00913f007", + "0x360092d500901800902c0071ee0092d500901600902a0071ed0092d5009", + "0x72d50090071540070380361ee1ed00e0090380092d500903100916b007", + "0x1600902a00703a0092d50092ae00901d0071ef0092d50091eb009142007", + "0x3f0092d50091ef00916b0071ec0092d500901800902c00703c0092d5009", + "0x400092d50090280091420070072d500900715400703f1ec03c03a00e009", + "0x1800902c0072a20092d500901600902a0070420092d50092ae00901d007", + "0x1840070452a02a204200e0090450092d500904000916b0072a00092d5009", + "0x70120092d500900701600700e0092d50090075f60070072d5009011009", + "0x915400902c00701e0092d500900900902a00701d0092d500900700901d", + "0x70240092d500900e0095ee0072a60092d50090120090200070210092d5", + "0x2d51540200095f80070200180162ae00e2d50090242a602101e01d0125f7", + "0x72b90092d50090260095fa0070072d50090071540070280095f9026009", + "0x1541ea0090620071ea0092d500902a0095fc00702a0092d50092b90095fb", + "0x2e0092d500902c0091700070072d50090071540071eb0095fd02c0092d5", + "0x2ae00901d0070310092d500902f00915f00702f0092d500902e009151007", + "0x360092d500901800902c0071ee0092d500901600902a0071ed0092d5009", + "0x72d50090071540070380361ee1ed00e0090380092d5009031009000007", + "0x1600902a00703a0092d50092ae00901d0071ef0092d50091eb00921d007", + "0x3f0092d50091ef0090000071ec0092d500901800902c00703c0092d5009", + "0x400092d500902800921d0070072d500900715400703f1ec03c03a00e009", + "0x1800902c0072a20092d500901600902a0070420092d50092ae00901d007", + "0x1d0070452a02a204200e0090450092d50090400090000072a00092d5009", + "0x90120090240070120091542d50090090095fe00700e0092d5009007009", + "0x2ae0092d50090072cf0070111541542d500901200e1545ff0070120092d5", + "0x1540095ac0070180092d50090162ae1542d10070160092d5009007600007", + "0x2a60092d50090180090960070210092d500901100960100701e0092d5009", + "0x6020240092d515401d00924100701d0201542d50092a602101e011455007", + "0x90090091860070072d50090240091660070072d5009007154007026009", + "0x92210072b90092d50090280092230070280092d50090071b00070072d5", + "0x91660070072d500900715400700760300900711f0071ea0092d50092b9", + "0x2c0092d500902a00960500702a0092d50090090096040070072d5009026", + "0x1ea0092210071eb0092d500902000901d0071ea0092d500902c009221007", + "0x1100902c0070180092d500900900902a00702e1eb15400902e0092d5009", + "0x1540160090620070162ae0120112d50090200181542a40070200092d5009", + "0x210092d500901d0091700070072d500900715400701e00960601d0092d5", + "0x15400906e00702a0092d500901200902a0071ea0092d500900700901d007", + "0x2e0092d500900e00904a0071eb0092d50092ae00902c00702c0092d5009", + "0x122d500902f02e1eb02c02a1ea2ae0f300702f0092d5009021009066007", + "0x90071540071ed0096070310092d51542b90090f00072b90280260242a6", + "0x96080360092d51541ee0092410071ee0092d50090310090ef0070072d5", + "0x92d50090070210070072d50090360091660070072d5009007154007038", + "0x1ef15402600703a0092d500903a00902400703a0092d50090076090071ef", + "0x92d500903c1ec1542b90071ec0092d500900702800703c0092d500903a", + "0x902a0070420092d50092a600901d0070400092d500903f00960a00703f", + "0x92d500902800902c0072a00092d500902600906e0072a20092d5009024", + "0x90071540070470452a02a20420120090470092d500904000960b007045", + "0x29d00960c00729d0092d50090071b00070072d50090380091660070072d5", + "0x4a0092d50092a600901d0072980092d500929a00960d00729a0092d5009", + "0x2800902c0072960092d500902600906e00704c0092d500902400902a007", + "0x704e28f29604c04a01200904e0092d500929800960b00728f0092d5009", + "0x92d50092a600901d0070500092d50091ed00960a0070072d5009007154", + "0x902c0070540092d500902600906e0070520092d500902400902a00728c", + "0x5816605405228c0120090580092d500905000960b0071660092d5009028", + "0x92d500901e00960a0070072d500900e0092980070072d5009007154007", + "0x906e0070e60092d500901200902a00716a0092d500900700901d007169", + "0x92d500916900960b0070e50092d50092ae00902c00705d0092d5009154", + "0x2d500900760e0070072d500915400912e0070e40e505d0e616a0120090e4", + "0x902c0070180092d500900700902a00700e0092d5009007016007011009", + "0x92d50090110095ee00701d0092d500900e0090200070200092d5009009", + "0x2d50090160096100070162ae0120112d500901e01d02001800e60f00701e", + "0x96120240092d515402100908b0070210092d50092a60096110072a6009", + "0x90280092bb0070280092d50090240090860070072d5009007154007026", + "0x702a0092d500901200902a0071ea0092d50092b90092bc0072b90092d5", + "0x1eb02c02a0110091eb0092d50091ea0092be00702c0092d50092ae00902c", + "0x2d500901200902a00702e0092d50090260092c00070072d5009007154007", + "0x110091ed0092d500902e0092be0070310092d50092ae00902c00702f009", + "0x902a0070120092d500900701600700e0092d500900760e0071ed03102f", + "0x92d500901200902000701d0092d500900900902c0070200092d5009007", + "0x126130072a60092d50090110090700070210092d500900e0095ee00701e", + "0x70260092d50090180096140070180162ae0112d50092a602101e01d020", + "0x1540072b90096160280092d51540240092280070240092d5009026009615", + "0x72d500902a00912e00702a1ea1542d500915400922c0070072d5009007", + "0x96180071eb0092d500902c1ea15461700702c0092d50090280092e3007", + "0x92d500901600902c00702f0092d50092ae00902a00702e0092d50091eb", + "0x72d50090071540071ed03102f0110091ed0092d500902e009619007031", + "0x92ae00902a0071ee0092d50092b900961a0070072d500915400912e007", + "0x91ef0092d50091ee0096190070380092d500901600902c0070360092d5", + "0x61b0072ae0092d500900e0092510070072d50090071a10071ef038036011", + "0x180092d50090070210070160092d50090070210070120092d50092ae009", + "0x700901d0070072d500902000961d00701d0201542d500901200961c007", + "0x280092d500901d0095250070260092d500900900902a0070240092d5009", + "0x2401261e0071ea0092d50090180090520072b90092d5009016009052007", + "0x962002a0092d51542a600961f0072a602101e0112d50091ea2b9028026", + "0x916600702f02e1eb0112d500902a0096210070072d500900715400702c", + "0x72d50090310091690071ed0311542d50091eb0090580070072d500902f", + "0x91690070380361542d500902e0090580071ee0092d50091ed00916a007", + "0x1750070072d50090071ba0071ef0092d500903800916a0070072d5009036", + "0x1ee15402100e6220071ef0092d50091ef0091750071ee0092d50091ee009", + "0x71b00070072d500900715400704003f1ec01162303c03a1542d51541ef", + "0x2a00092d500903a00902a0072a20092d50090420094640070420092d5009", + "0x900711f0070470092d50092a20094650070450092d500903c00902c007", + "0x1ec00902a00729d0092d50090400094670070072d5009007154007007624", + "0x470092d500929d0094650070450092d500903f00902c0072a00092d5009", + "0x29a00922800729a0092d50092980096150072980092d5009047009614007", + "0x70072d50090071a10070072d500900715400704c00962504a0092d5154", + "0x28f00925900728f0092d50092960111542570072960092d500904a0092e3", + "0x28c0092d50092a000902a0070500092d500901e00901d00704e0092d5009", + "0x28c05000e0090540092d500904e0092470070520092d500904500902c007", + "0x2d50090110092980070072d50090071a10070072d5009007154007054052", + "0x902a0070580092d500901e00901d0071660092d500904c009245007007", + "0x92d500916600924700716a0092d500904500902c0071690092d50092a0", + "0x72d50090110092980070072d50090071540070e616a16905800e0090e6", + "0x2100902a0070e50092d500901e00901d00705d0092d500902c009245007", + "0x620092d500905d0092470070600092d500915400902c0070e40092d5009", + "0x92d500901100914700700e0092d50090075ed0070620600e40e500e009", + "0x1540092650070160092d50090070160072ae0092d500900e009626007012", + "0x160092d50090160090200070072d50090200091650070200181542d5009", + "0x1d1542d51540122ae0160090070126280072ae0092d50092ae009627007", + "0x70260092d50090071b00070072d50090071540070242a602101162901e", + "0x901e00902c0072b90092d500901d00902a0070280092d5009026009464", + "0x715400700762a00900711f00702a0092d50090280094650071ea0092d5", + "0x72b90092d500902100902a00702c0092d50090240094670070072d5009", + "0x902a00961400702a0092d500902c0094650071ea0092d50092a600902c", + "0x62b02f0092d51541eb0092280071eb0092d500902e00961500702e0092d5", + "0x1815462c0071ed0092d500902f0092e30070072d5009007154007031009", + "0x92d50092b900902a0070360092d50091ee00962d0071ee0092d50091ed", + "0x3801100903a0092d500903600962e0071ef0092d50091ea00902c007038", + "0x903100962f0070072d50090180091650070072d500900715400703a1ef", + "0x703f0092d50091ea00902c0071ec0092d50092b900902a00703c0092d5", + "0x2710070072d50090071a100704003f1ec0110090400092d500903c00962e", + "0x92d50090070210070120092d50092ae0096300072ae0092d500900e009", + "0x961d00701d0201542d500901200961c0070180092d5009007021007016", + "0x260092d500900900902a0070240092d500900700901d0070072d5009020", + "0x180090520072b90092d50090160090520070280092d500901d009525007", + "0x61f0072a602101e0112d50091ea2b902802602401261e0071ea0092d5009", + "0x902a0096210070072d500900715400702c00963102a0092d51542a6009", + "0x311542d50091eb0090580070072d500902f00916600702f02e1eb0112d5", + "0x2e0090580071ee0092d50091ed00916a0070072d50090310091690071ed", + "0x1ef0092d500903800916a0070072d50090360091690070380361542d5009", + "0x2d50091ef0091750071ee0092d50091ee0091750070072d50090071ba007", + "0x704003f1ec01163203c03a1542d51541ef1ee15402100e6220071ef009", + "0x2a20092d50090420094640070420092d50090071b00070072d5009007154", + "0x2a20094650070450092d500903c00902c0072a00092d500903a00902a007", + "0x400094670070072d500900715400700763300900711f0070470092d5009", + "0x450092d500903f00902c0072a00092d50091ec00902a00729d0092d5009", + "0x2980096150072980092d50090470096140070470092d500929d009465007", + "0x2d500900715400704c00963404a0092d515429a00922800729a0092d5009", + "0x2960111542570072960092d500904a0092e30070072d50090071a1007007", + "0x500092d500901e00901d00704e0092d500928f00925900728f0092d5009", + "0x4e0092470070520092d500904500902c00728c0092d50092a000902a007", + "0x90071a10070072d500900715400705405228c05000e0090540092d5009", + "0x901d0071660092d500904c0092450070072d50090110092980070072d5", + "0x92d500904500902c0071690092d50092a000902a0070580092d500901e", + "0x2d50090071540070e616a16905800e0090e60092d500916600924700716a", + "0x1e00901d00705d0092d500902c0092450070072d5009011009298007007", + "0x600092d500915400902c0070e40092d500902100902a0070e50092d5009", + "0x92d50090075f60070620600e40e500e0090620092d500905d009247007", + "0x70160072ae0092d500900e0096260070120092d500901100921f00700e", + "0x72d50090200091840070200181542d500915400927f0070160092d5009", + "0x70126280072ae0092d50092ae0096270070160092d5009016009020007", + "0x72d50090071540070242a602101163501e01d1542d51540122ae016009", + "0x901d00902a0070280092d50090260094640070260092d50090071b0007", + "0x702a0092d50090280094650071ea0092d500901e00902c0072b90092d5", + "0x702c0092d50090240094670070072d500900715400700763600900711f", + "0x902c0094650071ea0092d50092a600902c0072b90092d500902100902a", + "0x71eb0092d500902e00961500702e0092d500902a00961400702a0092d5", + "0x2f0092e30070072d500900715400703100963702f0092d51541eb009228", + "0x92d50091ee0096390071ee0092d50091ed0181546380071ed0092d5009", + "0x963a0071ef0092d50091ea00902c0070380092d50092b900902a007036", + "0x180091840070072d500900715400703a1ef03801100903a0092d5009036", + "0x71ec0092d50092b900902a00703c0092d500903100963b0070072d5009", + "0x4003f1ec0110090400092d500903c00963a00703f0092d50091ea00902c", + "0x2d50092ae00963c0072ae0092d500900e00928e0070072d50090071a1007", + "0x1200961c0070180092d50090070210070160092d5009007021007012009", + "0x240092d500900700901d0070072d500902000961d00701d0201542d5009", + "0x160090520070280092d500901d0095250070260092d500900900902a007", + "0x1ea2b902802602401261e0071ea0092d50090180090520072b90092d5009", + "0x715400702c00963d02a0092d51542a600961f0072a602101e0112d5009", + "0x72d500902f00916600702f02e1eb0112d500902a0096210070072d5009", + "0x1ed00916a0070072d50090310091690071ed0311542d50091eb009058007", + "0x72d50090360091690070380361542d500902e0090580071ee0092d5009", + "0x2d50091ee0091750070072d50090071ba0071ef0092d500903800916a007", + "0x1542d51541ef1ee15402100e6220071ef0092d50091ef0091750071ee009", + "0x420092d50090071b00070072d500900715400704003f1ec01163e03c03a", + "0x3c00902c0072a00092d500903a00902a0072a20092d5009042009464007", + "0x15400700763f00900711f0070470092d50092a20094650070450092d5009", + "0x2a00092d50091ec00902a00729d0092d50090400094670070072d5009007", + "0x470096140070470092d500929d0094650070450092d500903f00902c007", + "0x4a0092d515429a00922800729a0092d50092980096150072980092d5009", + "0x904a0092e30070072d50090071a10070072d500900715400704c009640", + "0x4e0092d500928f00925900728f0092d50092960111542570072960092d5", + "0x4500902c00728c0092d50092a000902a0070500092d500901e00901d007", + "0x15400705405228c05000e0090540092d500904e0092470070520092d5009", + "0x92450070072d50090110092980070072d50090071a10070072d5009007", + "0x92d50092a000902a0070580092d500901e00901d0071660092d500904c", + "0x5800e0090e60092d500916600924700716a0092d500904500902c007169", + "0x2c0092450070072d50090110092980070072d50090071540070e616a169", + "0xe40092d500902100902a0070e50092d500901e00901d00705d0092d5009", + "0xe40e500e0090620092d500905d0092470070600092d500915400902c007", + "0x2a40070200092d500901100902c0070180092d500900900902a007062060", + "0x1e00964101d0092d51540160090620070162ae0120112d5009020018154", + "0x2d500900700901d0070210092d500901d0091700070072d5009007154007", + "0x2c00702c0092d500915400906e00702a0092d500901200902a0071ea009", + "0x2d500902100906600702e0092d500900e00904a0071eb0092d50092ae009", + "0x72b90280260242a60122d500902f02e1eb02c02a1ea2ae0d800702f009", + "0x310090ef0070072d50090071540071ed0096420310092d51542b90090f0", + "0x2d50090071540070380096430360092d51541ee0092410071ee0092d5009", + "0x2d50090076440071ef0092d50090070210070072d5009036009166007007", + "0x703c0092d500903a1ef15402600703a0092d500903a00902400703a009", + "0x903f00960a00703f0092d500903c1ec1542b90071ec0092d5009007028", + "0x72a20092d500902400902a0070420092d50092a600901d0070400092d5", + "0x904000960b0070450092d500902800902c0072a00092d500902600906e", + "0x380091660070072d50090071540070470452a02a20420120090470092d5", + "0x60d00729a0092d500929d00960c00729d0092d50090071b00070072d5009", + "0x2d500902400902a00704a0092d50092a600901d0072980092d500929a009", + "0x60b00728f0092d500902800902c0072960092d500902600906e00704c009", + "0x70072d500900715400704e28f29604c04a01200904e0092d5009298009", + "0x902400902a00728c0092d50092a600901d0070500092d50091ed00960a", + "0x71660092d500902800902c0070540092d500902600906e0070520092d5", + "0x72d500900715400705816605405228c0120090580092d500905000960b", + "0x900700901d0071690092d500901e00960a0070072d500900e009298007", + "0x705d0092d500915400906e0070e60092d500901200902a00716a0092d5", + "0x5d0e616a0120090e40092d500916900960b0070e50092d50092ae00902c", + "0x70210092d500900700901d0070180161542d500900e0096450070e40e5", + "0x90120090660070240092d500901800929c0072a60092d500915400906e", + "0x900701600701e01d0200112d50090260242a602100e6460070260092d5", + "0x72d50090071540071ea0096472b90092d51542ae0092410070280092d5", + "0x2d500902a00902400702a0092d50090072310070072d50092b9009166007", + "0x2d50091ea0091660070072d500900715400700764800900711f00702c009", + "0x1e00962600702c0092d50091eb0090240071eb0092d500900750a007007", + "0x2c02e0280110090126280070280092d500902800902000702e0092d5009", + "0x90071b00070072d50090071540070361ee1ed01164903102f1542d5154", + "0x703a0092d500902f00902a0071ef0092d50090380094640070380092d5", + "0x64a00900711f0071ec0092d50091ef00946500703c0092d500903100902c", + "0x91ed00902a00703f0092d50090360094670070072d5009007154007007", + "0x71ec0092d500903f00946500703c0092d50091ee00902c00703a0092d5", + "0x1540400092280070400092d50090420096150070420092d50091ec009614", + "0x450092d50092a20092e30070072d50090071540072a000964b2a20092d5", + "0x901d00729d0092d500904700964d0070470092d500904501615464c007", + "0x92d500901d00906e0072980092d500903a00902a00729a0092d5009020", + "0x29a0120092960092d500929d00964e00704c0092d500903c00902c00704a", + "0x964f0070072d50090160091810070072d500900715400729604c04a298", + "0x92d500903a00902a00704e0092d500902000901d00728f0092d50092a0", + "0x964e0070520092d500903c00902c00728c0092d500901d00906e007050", + "0x120092d500900700902a00705405228c05004e0120090540092d500928f", + "0x700e0111540112d50092ae0121546500072ae0092d500900900902c007", + "0x160096530070072d50090071540070180096520160092d515400e009651", + "0x1e0122d500901d00965500701d0092d50090200096540070200092d5009", + "0x1730070072d50090210096570070072d500901e0096560070260242a6021", + "0x280092d50092a60091510070072d50090260091860070072d5009024009", + "0x1100902c0071ea0092d500915400902a0072b90092d500902800915f007", + "0x715400702c02a1ea01100902c0092d50092b900900000702a0092d5009", + "0x702e0092d500915400902a0071eb0092d500901800921d0070072d5009", + "0x3102f02e0110090310092d50091eb00900000702f0092d500901100902c", + "0x2d50092ae0096580072ae0092d500900e0092ab0070072d50090071a1007", + "0x1200961c0070180092d50090070210070160092d5009007021007012009", + "0x240092d500900700901d0070072d500902000961d00701d0201542d5009", + "0x160090520070280092d500901d0095250070260092d500900900902a007", + "0x1ea2b902802602401261e0071ea0092d50090180090520072b90092d5009", + "0x715400702c00965902a0092d51542a600961f0072a602101e0112d5009", + "0x72d500902f00916600702f02e1eb0112d500902a0096210070072d5009", + "0x1ed00916a0070072d50090310091690071ed0311542d50091eb009058007", + "0x72d50090360091690070380361542d500902e0090580071ee0092d5009", + "0x2d50091ee0091750070072d50090071ba0071ef0092d500903800916a007", + "0x1542d51541ef1ee15402100e6220071ef0092d50091ef0091750071ee009", + "0x420092d50090071b00070072d500900715400704003f1ec01165a03c03a", + "0x3c00902c0072a00092d500903a00902a0072a20092d5009042009464007", + "0x15400700765b00900711f0070470092d50092a20094650070450092d5009", + "0x2a00092d50091ec00902a00729d0092d50090400094670070072d5009007", + "0x470096140070470092d500929d0094650070450092d500903f00902c007", + "0x4a0092d515429a00922800729a0092d50092980096150072980092d5009", + "0x904a0092e30070072d50090071a10070072d500900715400704c00965c", + "0x4e0092d500928f00925900728f0092d50092960111542570072960092d5", + "0x4500902c00728c0092d50092a000902a0070500092d500901e00901d007", + "0x15400705405228c05000e0090540092d500904e0092470070520092d5009", + "0x92450070072d50090110092980070072d50090071a10070072d5009007", + "0x92d50092a000902a0070580092d500901e00901d0071660092d500904c", + "0x5800e0090e60092d500916600924700716a0092d500904500902c007169", + "0x2c0092450070072d50090110092980070072d50090071540070e616a169", + "0xe40092d500902100902a0070e50092d500901e00901d00705d0092d5009", + "0xe40e500e0090620092d500905d0092470070600092d500915400902c007", + "0x2a40070200092d500901100902c0070180092d500900900902a007062060", + "0x1e00965d01d0092d51540160090620070162ae0120112d5009020018154", + "0x2d500900700901d0070210092d500901d0091700070072d5009007154007", + "0x2c00702c0092d500915400906e00702a0092d500901200902a0071ea009", + "0x2d500902100906600702e0092d500900e00904a0071eb0092d50092ae009", + "0x72b90280260242a60122d500902f02e1eb02c02a1ea2ae0d700702f009", + "0x310090ef0070072d50090071540071ed00965e0310092d51542b90090f0", + "0x2d500900715400703800965f0360092d51541ee0092410071ee0092d5009", + "0x2d50090076600071ef0092d50090070210070072d5009036009166007007", + "0x703c0092d500903a1ef15402600703a0092d500903a00902400703a009", + "0x903f00960a00703f0092d500903c1ec1542b90071ec0092d5009007028", + "0x72a20092d500902400902a0070420092d50092a600901d0070400092d5", + "0x904000960b0070450092d500902800902c0072a00092d500902600906e", + "0x380091660070072d50090071540070470452a02a20420120090470092d5", + "0x60d00729a0092d500929d00960c00729d0092d50090071b00070072d5009", + "0x2d500902400902a00704a0092d50092a600901d0072980092d500929a009", + "0x60b00728f0092d500902800902c0072960092d500902600906e00704c009", + "0x70072d500900715400704e28f29604c04a01200904e0092d5009298009", + "0x902400902a00728c0092d50092a600901d0070500092d50091ed00960a", + "0x71660092d500902800902c0070540092d500902600906e0070520092d5", + "0x72d500900715400705816605405228c0120090580092d500905000960b", + "0x900700901d0071690092d500901e00960a0070072d500900e009298007", + "0x705d0092d500915400906e0070e60092d500901200902a00716a0092d5", + "0x5d0e616a0120090e40092d500916900960b0070e50092d50092ae00902c", + "0x2ae0096610072ae0092d500900e0092b30070072d50090071a10070e40e5", + "0x61c0070180092d50090070210070160092d50090070210070120092d5009", + "0x2d500900700901d0070072d500902000961d00701d0201542d5009012009", + "0x520070280092d500901d0095250070260092d500900900902a007024009", + "0x2802602401261e0071ea0092d50090180090520072b90092d5009016009", + "0x702c00966202a0092d51542a600961f0072a602101e0112d50091ea2b9", + "0x902f00916600702f02e1eb0112d500902a0096210070072d5009007154", + "0x16a0070072d50090310091690071ed0311542d50091eb0090580070072d5", + "0x90360091690070380361542d500902e0090580071ee0092d50091ed009", + "0x1ee0091750070072d50090071ba0071ef0092d500903800916a0070072d5", + "0x1541ef1ee15402100e6220071ef0092d50091ef0091750071ee0092d5009", + "0x2d50090071b00070072d500900715400704003f1ec01166303c03a1542d5", + "0x2c0072a00092d500903a00902a0072a20092d5009042009464007042009", + "0x766400900711f0070470092d50092a20094650070450092d500903c009", + "0x2d50091ec00902a00729d0092d50090400094670070072d5009007154007", + "0x6140070470092d500929d0094650070450092d500903f00902c0072a0009", + "0x2d515429a00922800729a0092d50092980096150072980092d5009047009", + "0x92e30070072d50090071a10070072d500900715400704c00966504a009", + "0x2d500928f00925900728f0092d50092960111542570072960092d500904a", + "0x2c00728c0092d50092a000902a0070500092d500901e00901d00704e009", + "0x5405228c05000e0090540092d500904e0092470070520092d5009045009", + "0x70072d50090110092980070072d50090071a10070072d5009007154007", + "0x92a000902a0070580092d500901e00901d0071660092d500904c009245", + "0x90e60092d500916600924700716a0092d500904500902c0071690092d5", + "0x2450070072d50090110092980070072d50090071540070e616a16905800e", + "0x2d500902100902a0070e50092d500901e00901d00705d0092d500902c009", + "0xe0090620092d500905d0092470070600092d500915400902c0070e4009", + "0x1d0092d500915400906e0070200092d500900700901d0070620600e40e5", + "0x2000e6660070210092d500901200906600701e0092d500900e0092b8007", + "0x900902a0072a60092d50090070160070180162ae0112d500902101e01d", + "0x2a0092d50092a60090200071ea0092d500901100902c0072b90092d5009", + "0x260240112d500902c02a1ea2b900e60f00702c0092d50090180095ee007", + "0x908b0071eb0092d500902e00961100702e0092d5009028009610007028", + "0x2d500902f0090860070072d500900715400703100966702f0092d51541eb", + "0x1d0070360092d50091ee0092bc0071ee0092d50091ed0092bb0071ed009", + "0x2d500901600906e0071ef0092d500902400902a0070380092d50092ae009", + "0x120091ec0092d50090360092be00703c0092d500902600902c00703a009", + "0x703f0092d50090310092c00070072d50090071540071ec03c03a1ef038", + "0x901600906e0070420092d500902400902a0070400092d50092ae00901d", + "0x90450092d500903f0092be0072a00092d500902600902c0072a20092d5", + "0x2d500915400906e0070200092d500900700901d0070452a02a2042040012", + "0x2e50070210092d500901200907000701e0092d500900e0092c100701d009", + "0x1d0072a60092d50090070160070180162ae0112d500902101e01d02000e", + "0x2d500901100902c00702a0092d500900900902a0071ea0092d50092ae009", + "0x5f700702e0092d50090180095ee0071eb0092d50092a600902000702c009", + "0x92d51542b90095f80072b902802602400e2d500902e1eb02c02a1ea012", + "0x5fb0071ed0092d500902f0095fa0070072d500900715400703100966802f", + "0x2d51541ee0090620071ee0092d50090360095fc0070360092d50091ed009", + "0x703a0092d50090380091700070072d50090071540071ef009669038009", + "0x902400901d0071ec0092d500903c00915f00703c0092d500903a009151", + "0x70420092d500901600906e0070400092d500902600902a00703f0092d5", + "0x4204003f0120092a00092d50091ec0090000072a20092d500902800902c", + "0x2400901d0070450092d50091ef00921d0070072d50090071540072a02a2", + "0x29a0092d500901600906e00729d0092d500902600902a0070470092d5009", + "0x29d04701200904a0092d50090450090000072980092d500902800902c007", + "0x901d00704c0092d500903100921d0070072d500900715400704a29829a", + "0x92d500901600906e00728f0092d500902600902a0072960092d5009024", + "0x29601200928c0092d500904c0090000070500092d500902800902c00704e", + "0x242a602101e01d0200180162ae0262d500900e00919a00728c05004e28f", + "0x72d50090160091650070072d50092ae00912e00702c02a1ea2b9028026", + "0x2d500901d0091830070072d50090200091300070072d5009018009184007", + "0x902400917e0070072d50092a60091350070072d5009021009133007007", + "0x2b90091390070072d50090280091770070072d500902600917b0070072d5", + "0x91740070072d500902a00913b0070072d50091ea0091760070072d5009", + "0x360092d500900900902a0071ee0092d500900700901d0070072d500902c", + "0x1e00929c0071ef0092d500901100902c0070380092d500915400906e007", + "0x3a1ef0380361ee2ae66a00703c0092d500901200906600703a0092d5009", + "0x3f00966b1ec0092d51541ed0090f00071ed03102f02e1eb0122d500903c", + "0x2d50090400095040070400092d50091ec0090ef0070072d5009007154007", + "0x2a0072a00092d50091eb00901d0072a20092d5009042009505007042009", + "0x2d500903100902c0070470092d500902f00906e0070450092d500902e009", + "0x715400729a29d0470452a001200929a0092d50092a200950600729d009", + "0x704a0092d50091eb00901d0072980092d500903f0095070070072d5009", + "0x903100902c0072960092d500902f00906e00704c0092d500902e00902a", + "0x2a00704e28f29604c04a01200904e0092d500929800950600728f0092d5", + "0x901d02015449500701d0092d500901100902c0070200092d5009009009", + "0x900715400702100966c01e0092d51540180091960070180162ae0112d5", + "0x901d0070240092d500900766d0072a60092d500901e0090dd0070072d5", + "0x92d50090240091980071ea0092d50092a60091980072b90092d5009007", + "0x2c0092d51540280091960070280261542d500902a1ea2b901166e00702a", + "0x919a00702e0092d500902c0090dd0070072d50090071540071eb00966f", + "0x72a02a204204003f1ec03c03a1ef0380361ee1ed03102f0262d500900e", + "0x72d50091ed0091840070072d50090310091650070072d500902f00912e", + "0x2d50090380091810070072d50090360091830070072d50091ee009130007", + "0x91ec00917b0070072d500903c00917e0070072d500903a009135007007", + "0x420091760070072d50090400091390070072d500903f0091770070072d5", + "0x1546700070072d50092a00091740070072d50092a200913b0070072d5009", + "0x2d50092ae00902a00704c0092d500902600901d0070450092d500902e012", + "0x67100704e0092d500901600902c00728f0092d500915400906e007296009", + "0x28f29604c2ae67300728c0092d50090450096720070500092d50091ef009", + "0x6740520092d515404a00909100704a29829a29d0470122d500928c05004e", + "0x1660094160071660092d500905200918b0070072d5009007154007054009", + "0x16a0092d500904700901d0071690092d50090580092d60070580092d5009", + "0x29800902c00705d0092d500929a00906e0070e60092d500929d00902a007", + "0x70e40e505d0e616a0120090e40092d50091690094170070e50092d5009", + "0x92d500904700901d0070600092d50090540094180070072d5009007154", + "0x902c0071710092d500929a00906e0071700092d500929d00902a007062", + "0x661731711700620120090660092d50090600094170071730092d5009298", + "0x72d500900e0092980070072d50090120091730070072d5009007154007", + "0x2ae00902a0071750092d500902600901d0070680092d50091eb009418007", + "0x1780092d500901600902c00706c0092d500915400906e00706a0092d5009", + "0x2d500900715400706e17806c06a17501200906e0092d5009068009417007", + "0x90210094180070072d50090120091730070072d500900e009298007007", + "0x717f0092d50092ae00902a00717d0092d500900700901d0070700092d5", + "0x90700094170070740092d500901600902c0070730092d500915400906e", + "0x71540071542d500900700941c00707607407317f17d0120090760092d5", + "0x90110092e40070072d500900e00941e00700e0111542d500915400941d", + "0x160091542d500900900941c0070072d500901200941e0072ae0121542d5", + "0x180092e40070072d500902000941e0070200181542d500901600941d007", + "0x2a60092d50092ae0096750070072d500901d00941e00701e01d1542d5009", + "0x92410070210092d50090242a61546760070240092d500901e009675007", + "0x2d50090260091660070072d50090071540070280096770260092d5154021", + "0x2d50090071b00070072d500900700918c0070072d500900900918c007007", + "0x11f00702a0092d50091ea0090ec0071ea0092d50092b900923d0072b9009", + "0x941d0070072d50090280091660070072d5009007154007007678009007", + "0x1542d50091eb0092e40070072d500902c00941e0071eb02c1542d5009007", + "0x41e0071ed0311542d500900900941d0070072d500902e00941e00702f02e", + "0x2d50091ee00941e0070361ee1542d50091ed0092e40070072d5009031009", + "0x15467600703a0092d50090360096750071ef0092d500902f009675007007", + "0x2d500902a0092c900702a0092d50090380092c90070380092d500903a1ef", + "0x92d50090090090960070120092d500900700901d00703c00900903c009", + "0xe0111542d50090162ae0120116790070160092d50091540090960072ae", + "0x94160070072d500900715400702000967a0180092d515400e00909a007", + "0x92d500901100901d00701e0092d500901d0092d600701d0092d5009018", + "0x70072d50090071540072a60211540092a60092d500901e009417007021", + "0x260092d500900767b0070240092d50090070210070072d5009020009166", + "0x70280070280092d50090260241540260070260092d5009026009024007", + "0x92d50091ea0094180071ea0092d50090282b91542b90072b90092d5009", + "0x2c1540091eb0092d500902a00941700702c0092d500901100901d00702a", + "0x902a00701d0092d500900700901d0070120092d500900e0094510071eb", + "0x92d50090120094520070210092d500915400902c00701e0092d5009009", + "0x1540200090910070200180162ae00e2d50092a602101e01d00e67c0072a6", + "0x2c0092d50092ae00901d0070072d500900715400702600967d0240092d5", + "0x1100904a00702e0092d500901800902c0071eb0092d500901600902a007", + "0x67f00702a1ea2b902800e2d500902f02e1eb02c00e67e00702f0092d5009", + "0x90310096810070072d50090071540071ed0096800310092d515402a009", + "0x70360092d50090380096820070380092d50091ee00919e0071ee0092d5", + "0x91ef0090960071ec0092d500902800901d0071ef0092d500902400918b", + "0x1542d500904003f1ec0116830070400092d500903600909600703f0092d5", + "0x70072d50090071540072a20096840420092d515403c00909100703c03a", + "0x92d50090072cf0070450092d50090076850072a00092d500904200918b", + "0x9600704a0092d500903a00901d00729d0092d50090470451542d1007047", + "0x29604c04a0116860072960092d500929d00909600704c0092d50092a0009", + "0x900715400704e00968728f0092d515429800909100729829a1542d5009", + "0x2d600728c0092d50090500094160070500092d500928f00918b0070072d5", + "0x2d50092b900902a0070540092d500929a00901d0070520092d500928c009", + "0xe0091690092d50090520094170070580092d50091ea00902c007166009", + "0x1d00716a0092d500904e0094180070072d5009007154007169058166054", + "0x2d50091ea00902c00705d0092d50092b900902a0070e60092d500929a009", + "0x90071540070e40e505d0e600e0090e40092d500916a0094170070e5009", + "0x2a0070620092d500903a00901d0070600092d50092a20094180070072d5", + "0x2d50090600094170071710092d50091ea00902c0071700092d50092b9009", + "0x2d50090240096880070072d500900715400717317117006200e009173009", + "0x902a0070680092d500902800901d0070660092d50091ed009418007007", + "0x92d500906600941700706a0092d50091ea00902c0071750092d50092b9", + "0x72d50090110092980070072d500900715400706c06a17506800e00906c", + "0x1600902a00706e0092d50092ae00901d0071780092d5009026009418007", + "0x17f0092d500917800941700717d0092d500901800902c0070700092d5009", + "0x1200e01168a0111541542d515400900715468900717f17d07006e00e009", + "0x915400901d0070160092d50090110092e20070072d50090071540072ae", + "0x715400700768c00900711f0070200092d500901600968b0070180092d5", + "0x71b00070072d50092ae00941e0070072d500901200941e0070072d5009", + "0x180092d500900e00901d00701e0092d500901d00968d00701d0092d5009", + "0x2000968e0070210092d50090180095ac0070200092d500901e00968b007", + "0x2d500900768f0070072d500901100917e0072a60211540092a60092d5009", + "0x902a00701d0092d500900700901d0070120092d500900701600700e009", + "0x92d50090120090200070210092d500915400902c00701e0092d5009009", + "0xe2d50090242a602101e01d0125f70070240092d500900e0095ee0072a6", + "0x2d50090071540070280096900260092d51540200095f80070200180162ae", + "0x95fc00702a0092d50092b90095fb0072b90092d50090260095fa007007", + "0x90071540071eb00969102c0092d51541ea0090620071ea0092d500902a", + "0x15f00702f0092d500902e00915100702e0092d500902c0091700070072d5", + "0x2d500901600902a0071ed0092d50092ae00901d0070310092d500902f009", + "0xe0090380092d50090310090000070360092d500901800902c0071ee009", + "0x1d0071ef0092d50091eb00921d0070072d50090071540070380361ee1ed", + "0x2d500901800902c00703c0092d500901600902a00703a0092d50092ae009", + "0x900715400703f1ec03c03a00e00903f0092d50091ef0090000071ec009", + "0x2a0070420092d50092ae00901d0070400092d500902800921d0070072d5", + "0x2d50090400090000072a00092d500901800902c0072a20092d5009016009", + "0x2d500900e00943e0070072d50090071a10070452a02a204200e009045009", + "0x70210070160092d50090070210070120092d50092ae0096920072ae009", + "0x72d500902000961d00701d0201542d500901200961c0070180092d5009", + "0x1d0095250070260092d500900900902a0070240092d500900700901d007", + "0x1ea0092d50090180090520072b90092d50090160090520070280092d5009", + "0x2d51542a600961f0072a602101e0112d50091ea2b902802602401261e007", + "0x2e1eb0112d500902a0096210070072d500900715400702c00969302a009", + "0x91690071ed0311542d50091eb0090580070072d500902f00916600702f", + "0x361542d500902e0090580071ee0092d50091ed00916a0070072d5009031", + "0x90071ba0071ef0092d500903800916a0070072d5009036009169007038", + "0x6220071ef0092d50091ef0091750071ee0092d50091ee0091750070072d5", + "0x2d500900715400704003f1ec01169403c03a1542d51541ef1ee15402100e", + "0x3a00902a0072a20092d50090420094640070420092d50090071b0007007", + "0x470092d50092a20094650070450092d500903c00902c0072a00092d5009", + "0x29d0092d50090400094670070072d500900715400700769500900711f007", + "0x29d0094650070450092d500903f00902c0072a00092d50091ec00902a007", + "0x29a0092d50092980096150072980092d50090470096140070470092d5009", + "0x71a10070072d500900715400704c00969604a0092d515429a009228007", + "0x28f0092d50092960111542570072960092d500904a0092e30070072d5009", + "0x2a000902a0070500092d500901e00901d00704e0092d500928f009259007", + "0x540092d500904e0092470070520092d500904500902c00728c0092d5009", + "0x2980070072d50090071a10070072d500900715400705405228c05000e009", + "0x92d500901e00901d0071660092d500904c0092450070072d5009011009", + "0x924700716a0092d500904500902c0071690092d50092a000902a007058", + "0x92980070072d50090071540070e616a16905800e0090e60092d5009166", + "0xe50092d500901e00901d00705d0092d500902c0092450070072d5009011", + "0x5d0092470070600092d500915400902c0070e40092d500902100902a007", + "0x1200e0110262d500915400919a0070620600e40e500e0090620092d5009", + "0x70072d500900e0091650072b90280260242a602101e01d0200180162ae", + "0x72d50090160091830070072d50092ae0091300070072d5009012009184", + "0x2d500901d0091350070072d50090200091330070072d5009018009181007", + "0x92a60091770070072d500902100917b0070072d500901e00917e007007", + "0x2800913b0070072d50090260091760070072d50090240091390070072d5", + "0x2c0071eb0092d500900700902a0070072d50092b90091740070072d5009", + "0x2f02e1eb01122f00702f0092d500901100922d00702e0092d5009009009", + "0x71540071ed0096970310092d515402c00908b00702c02a1ea0112d5009", + "0x361ee1542d50091ee0092360071ee0092d50090310090860070072d5009", + "0x918600703a1ef1542d50090380090830070380092d5009036009230007", + "0x3f1ec1542d500903c00908300703c0092d50090072310070072d50091ef", + "0x903f0091240070400092d500903a0091240070072d50091ec009186007", + "0x2a20092d50092a20090240072a20092d50090420401542320070420092d5", + "0x90071b00070072d50090071540072a00096980072d51542a2009233007", + "0x729d0092d50090470090ec0070470092d50090450092380070450092d5", + "0x1b00070072d50092a000923a0070072d500900715400700769900900711f", + "0x92d50092980090ec0072980092d500929a00923d00729a0092d5009007", + "0x924100704a0092d500904a0090ec00704a0092d500929d00923f00729d", + "0x2d500904c0091660070072d500900715400729600969a04c0092d515404a", + "0x2d500900769b00728f0092d50090070210070072d50091ee009178007007", + "0x70500092d500904e28f15402600704e0092d500904e00902400704e009", + "0x90520092c00070520092d500905028c1542b900728c0092d5009007028", + "0x70580092d500902a00902c0071660092d50091ea00902a0070540092d5", + "0x1660070072d50090071540071690581660110091690092d50090540092be", + "0x92d500916a0092bc00716a0092d50091ee0092bb0070072d5009296009", + "0x92be0070e50092d500902a00902c00705d0092d50091ea00902a0070e6", + "0x1ed0092c00070072d50090071540070e40e505d0110090e40092d50090e6", + "0x1700092d500902a00902c0070620092d50091ea00902a0070600092d5009", + "0x92d50090070096010071711700620110091710092d50090600092be007", + "0x90960070120092d50091540090960070110092d5009009009601007154", + "0x2d500900e0092c900700e0092d50092ae0121544110072ae0092d5009011", + "0x2ae1542d500900e0091710070120092d5009007021007016009009016009", + "0x1200905200701d0092d50090160090660070072d50092ae009173007016", + "0x2d50090200091660070200181542d500901e01d15406800701e0092d5009", + "0x180090580072a60092d500900769d0070210092d500901100969c007007", + "0x280092d500902600916a0070072d50090240091690070260241542d5009", + "0x90125960070280092d50090280091750072a60092d50092a6009024007", + "0x2d500900715400702e1eb02c01169e02a1ea2b90112d51540282a6021154", + "0x902c0070310092d50092b900902a00702f0092d500902a0094e6007007", + "0x700769f00900711f0071ee0092d500902f0094e70071ed0092d50091ea", + "0x92d500902c00902a0070360092d500902e0092d70070072d5009007154", + "0x96a00071ee0092d50090360094e70071ed0092d50091eb00902c007031", + "0x92d515403800959b0070380092d50091ef0096a10071ef0092d50091ee", + "0x1d0071ec0092d500903a00959d0070072d500900715400703c0096a203a", + "0x92a02a215418d0072a00092d50091ec0091750072a20092d5009007009", + "0x450092d515404200909a0070072d50090400090e400704204003f0112d5", + "0x92d600729d0092d50090450094160070072d50090071540070470096a3", + "0x92d500903100902a0072980092d500903f00901d00729a0092d500929d", + "0x29800e0092960092d500929a00941700704c0092d50091ed00902c00704a", + "0x90070210070072d50090470091660070072d500900715400729604c04a", + "0x2600704e0092d500904e00902400704e0092d50090076a400728f0092d5", + "0x905028c1542b900728c0092d50090070280070500092d500904e28f154", + "0x71660092d500903f00901d0070540092d50090520094180070520092d5", + "0x90540094170071690092d50091ed00902c0070580092d500903100902a", + "0x903c0094180070072d500900715400716a16905816600e00916a0092d5", + "0x70e50092d500903100902a00705d0092d500900700901d0070e60092d5", + "0xe40e505d00e0090600092d50090e60094170070e40092d50091ed00902c", + "0x72ae0121542d500915400941d00700e0111542d500900900941d007060", + "0x116a60070182ae1542d50092ae0096a500701600e1542d500900e0096a5", + "0x41e0070072d500900715400702101e1546a701d0201542d5154018016007", + "0x2d50092a600941e0070242a61542d500900e0092e40070072d500901d009", + "0x941f0070072d500902600941e0070280261542d50092ae0092e4007007", + "0x92d500902000901d0071ea0092d500902800941f0072b90092d5009024", + "0x941e0070072d50090071540070076a90072d51541ea2b91546a8007020", + "0x23d00702a0092d50090071b00070072d500901100941e0070072d5009012", + "0x2d500902c0090ec0071eb0092d500902000901d00702c0092d500902a009", + "0x120110200116a60070072d50090071540070076aa00900711f00702e009", + "0x903100941e0070072d50090071540071ee1ed1546ab03102f1542d5154", + "0x901d0070380092d500903600923d0070360092d50090071b00070072d5", + "0x70076ac00900711f00703a0092d50090380090ec0071ef0092d500902f", + "0x703c0092d50090071b00070072d50091ee00941e0070072d5009007154", + "0x91ec0090ec0071ef0092d50091ed00901d0071ec0092d500903c009238", + "0x702e0092d500903a0092c90071eb0092d50091ef0095ac00703a0092d5", + "0x6ad00900711f0070400092d500902e0092c900703f0092d50091eb0095ac", + "0x2d500900e00941e0070072d500902100941e0070072d5009007154007007", + "0x92ae00941e0070072d500901100941e0070072d500901200941e007007", + "0x901d0072a20092d50090420092380070420092d50090071b00070072d5", + "0x92d500903f0095ac0070400092d50092a20090ec00703f0092d500901e", + "0x1542d500900e00929a0070452a01540090450092d50090400092c90072a0", + "0x6e0070260092d500900900902a0070240092d500900700901d007018016", + "0x2d500901800904a0072b90092d500901100902c0070280092d5009154009", + "0x702a0092d500902a00907000702a0121542d50090120092360071ea009", + "0x2a60090910072a602101e01d0200122d500902a1ea2b90280260242ae18a", + "0x92d500902c00918b0070072d50090071540071eb0096ae02c0092d5154", + "0x3102f1542d10070310092d500900741b00702f0092d500900741b00702e", + "0x2e1542d500902e00941c0070380092d500902000901d0071ed0092d5009", + "0x1145500703a0092d50091ed0090960071ef0092d50091ef0090960071ef", + "0x71ec0096af03c0092d51540360092410070361ee1542d500903a1ef038", + "0x70072d50090160092980070072d500903c0091660070072d5009007154", + "0x72d50090120091780070072d50092ae00918c0070072d500902e00918c", + "0x2d50090400090240070400092d50090076b000703f0092d5009007021007", + "0x2b90072a20092d50090070280070420092d500904003f154026007040009", + "0x91ee00901d0070450092d50092a00092450072a00092d50090422a2154", + "0x729a0092d500901e00906e00729d0092d500901d00902a0070470092d5", + "0x29a29d04701200904a0092d50090450092470072980092d500902100902c", + "0x91ee00901d0070072d50091ec0091660070072d500900715400704a298", + "0x4e0092d500904e00909600704e02e1542d500902e00941c00728f0092d5", + "0x114550070500092d50090500090960070502ae1542d50092ae00941c007", + "0x28c0090ec00728c0092d500929600923f00729604c1542d500905004e28f", + "0x2d50090071540070540096b10520092d515428c00924100728c0092d5009", + "0x92ae00918c0070072d500902e00918c0070072d5009052009166007007", + "0x90070210070072d50090160092980070072d50090120091780070072d5", + "0x260070580092d50090580090240070580092d50090072e10071660092d5", + "0x916916a1542b900716a0092d50090070280071690092d5009058166154", + "0x70e50092d500904c00901d00705d0092d50090e60092450070e60092d5", + "0x902100902c0070600092d500901e00906e0070e40092d500901d00902a", + "0x1540071700620600e40e50120091700092d500905d0092470070620092d5", + "0x1731711542d500901600929a0070072d50090540091660070072d5009007", + "0x1e00906e00706e0092d500901d00902a0071780092d500904c00901d007", + "0x17f0092d500917300904a00717d0092d500902100902c0070700092d5009", + "0x122d500907317f17d07006e1782ae1890070730092d5009012009070007", + "0x90071540070760096b20740092d515406c00906200706c06a175068066", + "0x9600707c0092d500902e00909600707a0092d500906600901d0070072d5", + "0x90910071821801542d500907d07c07a01141400707d0092d50092ae009", + "0x2d50090740091700070072d50090071540071850096b307f0092d5154182", + "0x2a0070860092d500918000901d0070830092d500907f00918b007081009", + "0x2d500906a00902c00708d0092d500917500906e0070560092d5009068009", + "0x960070910092d500908100906600718a0092d500917100904a007189009", + "0x1860122d500918b09118a18908d0560860166b400718b0092d5009083009", + "0x2d500900715400718c0096b50940092d515408b00917f00708b188187085", + "0x718d0092d50090980961542570070980961542d5009094009255007007", + "0x908500902a00709c0092d500918600901d00709a0092d500918d009259", + "0x709f0092d500918800902c00718f0092d500918700906e00718e0092d5", + "0x72d50090071540070a109f18f18e09c0120090a10092d500909a009247", + "0x8500902a0070dd0092d500918600901d0071960092d500918c009245007", + "0x1a40092d500918800902c0070a60092d500918700906e0070a40092d5009", + "0x2d50090071540070a81a40a60a40dd0120090a80092d5009196009247007", + "0x91850092450070072d50091710092980070072d5009074009293007007", + "0x70ab0092d500906800902a0071a70092d500918000901d0070aa0092d5", + "0x90aa0092470071af0092d500906a00902c0070ad0092d500917500906e", + "0x1710092980070072d50090071540071b11af0ad0ab1a70120091b10092d5", + "0x92450070072d500902e00918c0070072d50092ae00918c0070072d5009", + "0x92d500906800902a0070b10092d500906600901d0070dc0092d5009076", + "0x92470070da0092d500906a00902c0071b70092d500917500906e0070b3", + "0x1780070072d50090071540070db0da1b70b30b10120090db0092d50090dc", + "0x70072d50092ae00918c0070072d50090160092980070072d5009012009", + "0x901d00902a0070f10092d500902000901d0070f20092d50091eb009245", + "0x70ee0092d500902100902c0070ef0092d500901e00906e0070f00092d5", + "0x92d50090070210070ed0ee0ef0f00f10120090ed0092d50090f2009247", + "0x90660070072d50092ae0091730070162ae1542d5009011009171007012", + "0x2d500901e01d15406800701e0092d500901200905200701d0092d5009016", + "0x72a60211542d500900e0090940070072d5009020009166007020018154", + "0x2d50090180090520070280092d50092a60090960070072d500902100918c", + "0x70072d50090260091660070260241542d50092b90281540980072b9009", + "0x2d500902400905800702a0092d50090076b70071ea0092d50091540096b6", + "0x2400702e0092d50091eb00916a0070072d500902c0091690071eb02c154", + "0x1ea00900701259600702e0092d500902e00917500702a0092d500902a009", + "0x70072d50090071540070380361ee0116b81ed03102f0112d515402e02a", + "0x903100902c00703a0092d500902f00902a0071ef0092d50091ed0094e6", + "0x71540070076b900900711f0071ec0092d50091ef0094e700703c0092d5", + "0x703a0092d50091ee00902a00703f0092d50090380092d70070072d5009", + "0x91ec0096a00071ec0092d500903f0094e700703c0092d500903600902c", + "0x6ba2a20092d515404000959b0070400092d50090420096a10070420092d5", + "0x2d50090071b00070072d50092a20096bb0070072d50090071540072a0009", + "0x2a00729d0092d500904700960d0070470092d500904500960c007045009", + "0x2d500929d00960b0072980092d500903c00902c00729a0092d500903a009", + "0x92d50092a000960a0070072d500900715400704a29829a01100904a009", + "0x960b00728f0092d500903c00902c0072960092d500903a00902a00704c", + "0x240070090092d500900700923000704e28f29601100904e0092d500904c", + "0x900e00946d0070072d50090071a10071540090091540092d5009009009", + "0x210070160092d50090070210070120092d50092ae0096bc0072ae0092d5", + "0x2d500902000961d00701d0201542d500901200961c0070180092d5009007", + "0x95250070260092d500900900902a0070240092d500900700901d007007", + "0x92d50090180090520072b90092d50090160090520070280092d500901d", + "0x1542a600961f0072a602101e0112d50091ea2b902802602401261e0071ea", + "0x1eb0112d500902a0096210070072d500900715400702c0096bd02a0092d5", + "0x1690071ed0311542d50091eb0090580070072d500902f00916600702f02e", + "0x1542d500902e0090580071ee0092d50091ed00916a0070072d5009031009", + "0x71ba0071ef0092d500903800916a0070072d5009036009169007038036", + "0x71ef0092d50091ef0091750071ee0092d50091ee0091750070072d5009", + "0x900715400704003f1ec0116be03c03a1542d51541ef1ee15402100e622", + "0x902a0072a20092d50090420094640070420092d50090071b00070072d5", + "0x92d50092a20094650070450092d500903c00902c0072a00092d500903a", + "0x92d50090400094670070072d50090071540070076bf00900711f007047", + "0x94650070450092d500903f00902c0072a00092d50091ec00902a00729d", + "0x92d50092980096150072980092d50090470096140070470092d500929d", + "0x1a10070072d500900715400704c0096c004a0092d515429a00922800729a", + "0x92d50092960111542570072960092d500904a0092e30070072d5009007", + "0x902a0070500092d500901e00901d00704e0092d500928f00925900728f", + "0x92d500904e0092470070520092d500904500902c00728c0092d50092a0", + "0x70072d50090071a10070072d500900715400705405228c05000e009054", + "0x2d500901e00901d0071660092d500904c0092450070072d5009011009298", + "0x24700716a0092d500904500902c0071690092d50092a000902a007058009", + "0x2980070072d50090071540070e616a16905800e0090e60092d5009166009", + "0x92d500901e00901d00705d0092d500902c0092450070072d5009011009", + "0x92470070600092d500915400902c0070e40092d500902100902a0070e5", + "0x6c10070072d500901100917b0070620600e40e500e0090620092d500905d", + "0x1d0092d500900700901d0070120092d500900701600700e0092d5009007", + "0x120090200070210092d500915400902c00701e0092d500900900902a007", + "0x242a602101e01d0126c20070240092d500900e0095ee0072a60092d5009", + "0x1540070280096c40260092d51540200096c30070200180162ae00e2d5009", + "0x2a0092d50092b90096c60072b90092d50090260096c50070072d5009007", + "0x71eb0096c802c0092d51541ea0091960071ea0092d500902a0096c7007", + "0x92d500902e00947300702e0092d500902c0090dd0070072d5009007154", + "0x902a0071ed0092d50092ae00901d0070310092d500902f00947400702f", + "0x92d50090310094750070360092d500901800902c0071ee0092d5009016", + "0x92d50091eb0094760070072d50090071540070380361ee1ed00e009038", + "0x902c00703c0092d500901600902a00703a0092d50092ae00901d0071ef", + "0x703f1ec03c03a00e00903f0092d50091ef0094750071ec0092d5009018", + "0x92d50092ae00901d0070400092d50090280094760070072d5009007154", + "0x94750072a00092d500901800902c0072a20092d500901600902a007042", + "0x91750070072d50090071a10070452a02a204200e0090450092d5009040", + "0x2d515400e0090f200700e0111542d50090120090db0070120092d5009154", + "0x182ae1542d50092ae0095fe0070072d50090071540070160096c92ae009", + "0x2ae0091860070072d50090071540070200096ca0072d5154018009233007", + "0x70240092d500900900902a0072a60092d500900700901d0070072d5009", + "0x702101e01d0112d50090260242a60116cb0070260092d5009011009175", + "0x280096ce0070072d50090071540072b90096cd0280092d51540210096cc", + "0x90071540071eb0096cf02c0092d515402a0094db00702a1ea1542d5009", + "0x2a00702f0092d500901d00901d00702e0092d500902c0096d00070072d5", + "0x2d500902e0096d10071ed0092d50091ea0091750070310092d500901e009", + "0x2d50091eb0096d30070072d50090071540070076d200900711f0071ee009", + "0x71ef0092d50090380096d50070380092d50090361ea1546d4007036009", + "0x91ef0096d600703c0092d500901e00902a00703a0092d500901d00901d", + "0x2d50092b90096d70070072d50090071540071ec03c03a0110091ec0092d5", + "0x6d60070420092d500901e00902a0070400092d500901d00901d00703f009", + "0x923a0070072d50090071540072a20420400110092a20092d500903f009", + "0x450092d50092a02ae1542320072a00092d500900750a0070072d5009020", + "0x1540070470096d80072d51540450092330070450092d5009045009024007", + "0x29d1542d50092980096d90072980092d50090110091750070072d5009007", + "0x6dc0070072d500900715400704c0096db04a0092d515429a0096da00729a", + "0x2d500900900902a00702f0092d500900700901d0072960092d500904a009", + "0x6dd0071ee0092d50092960096d10071ed0092d500929d009175007031009", + "0x904e0096d500704e0092d500928f1ed1546d400728f0092d50091ee009", + "0x70520092d500903100902a00728c0092d500902f00901d0070500092d5", + "0x6d30070072d500900715400705405228c0110090540092d50090500096d6", + "0x90580096d50070580092d500916629d1546d40071660092d500904c009", + "0x70e60092d500900900902a00716a0092d500900700901d0071690092d5", + "0x23a0070072d500900715400705d0e616a01100905d0092d50091690096d6", + "0xe40092d50090e50096d30070e50092d50090071b00070072d5009047009", + "0x901d0070620092d50090600096d50070600092d50090e40111546d4007", + "0x92d50090620096d60071710092d500900900902a0071700092d5009007", + "0x660092d50090160096d30070072d5009007154007173171170011009173", + "0x901d0071750092d50090680096d50070680092d50090660111546d4007", + "0x92d50091750096d600706c0092d500900900902a00706a0092d5009007", + "0x2d515400900911b0070090092d500900700901100717806c06a011009178", + "0x120092d50090110091b60070072d500900715400700e0096de011154154", + "0x900711f0070160092d50090120091b40072ae0092d500915400911d007", + "0x90180091ac0070180092d50090071b00070072d50090071540070076df", + "0x70160092d50090200091b40072ae0092d500900e00911d0070200092d5", + "0x15401600912200701d0092d500901d00917500701d0092d50092ae00916a", + "0x2a60092d500901e0091a80070072d50090071540070210096e001e0092d5", + "0x91860070280261542d50090240090830070240092d50092a6009124007", + "0x2a1ea1542d50092b90090830072b90092d50090072310070072d5009026", + "0x902c00908300702c0092d50090280091240070072d50091ea009186007", + "0x702f0092d500902a0091240070072d50091eb00918600702e1eb1542d5", + "0x902e0091240070072d50090310091860071ed0311542d500902f009083", + "0x71ee0092d50091ee0090240070360092d50091ed0091240071ee0092d5", + "0x380092330070380092d50090380090240070380092d50090361ee154232", + "0x703a0092d50090071b00070072d50090071540071ef0096e10072d5154", + "0x6e200900711f0071ec0092d500903c0090ec00703c0092d500903a009238", + "0x92d50090071b00070072d50091ef00923a0070072d5009007154007007", + "0x923f0071ec0092d50090400090ec0070400092d500903f00923d00703f", + "0x92d500901d0091750072a20092d50090420096e30070420092d50091ec", + "0x70072d50090071540070452a01540090450092d50092a20096e40072a0", + "0x92d50090470096e50070470092d50090071b00070072d5009021009166", + "0x29a1540092980092d500929d0096e400729a0092d500901d00917500729d", + "0x2d50090110096e600700e0092d50090070210070072d50090071a1007298", + "0x2a00701d0092d500900700901d0070072d50090120091af0072ae012154", + "0x2d500900e0090520070210092d50092ae0090dc00701e0092d5009009009", + "0x1540200094e00070200180160112d50092a602101e01d00e6e70072a6009", + "0x281542d50090240094e20070072d50090071540070260096e80240092d5", + "0x916900702a1ea1542d50090280090580070072d50092b90091660072b9", + "0x1ed0092d500901600901d00702c0092d500902a00916a0070072d50091ea", + "0x2c0091750070360092d50091540091b10071ee0092d500901800902a007", + "0xf500703102f02e1eb00e2d50090380361ee1ed00e6e90070380092d5009", + "0x91ef0090f40070072d500900715400703a0096ea1ef0092d5154031009", + "0x703f0092d50091ec00950f0071ec0092d500903c00950e00703c0092d5", + "0x902f0091b10070420092d500902e00902a0070400092d50091eb00901d", + "0x71540072a02a204204000e0092a00092d500903f0095100072a20092d5", + "0x70470092d50091eb00901d0070450092d500903a0095110070072d5009", + "0x904500951000729a0092d500902f0091b100729d0092d500902e00902a", + "0x90260095110070072d500900715400729829a29d04700e0092980092d5", + "0x72960092d500901800902a00704c0092d500901600901d00704a0092d5", + "0x28f29604c00e00904e0092d500904a00951000728f0092d50091540091b1", + "0x948e00701d0092d500915400906e0070200092d500900700901d00704e", + "0x2101e01d02000e6eb0070210092d500901200902400701e0092d500900e", + "0x92d50092ae00901d0072a60092d50090070160070180162ae0112d5009", + "0x902000702c0092d500901100902c00702a0092d500900900902a0071ea", + "0x1eb02c02a1ea0126c200702e0092d50090180095ee0071eb0092d50092a6", + "0x70310096ec02f0092d51542b90096c30072b902802602400e2d500902e", + "0x92d50091ed0096c60071ed0092d500902f0096c50070072d5009007154", + "0x1ef0096ed0380092d51541ee0091960071ee0092d50090360096c7007036", + "0x2d500903a00947300703a0092d50090380090dd0070072d5009007154007", + "0x2a00703f0092d500902400901d0071ec0092d500903c00947400703c009", + "0x2d500902800902c0070420092d500901600906e0070400092d5009026009", + "0x71540072a02a204204003f0120092a00092d50091ec0094750072a2009", + "0x70470092d500902400901d0070450092d50091ef0094760070072d5009", + "0x902800902c00729a0092d500901600906e00729d0092d500902600902a", + "0x15400704a29829a29d04701200904a0092d50090450094750072980092d5", + "0x2960092d500902400901d00704c0092d50090310094760070072d5009007", + "0x2800902c00704e0092d500901600906e00728f0092d500902600902a007", + "0x728c05004e28f29601200928c0092d500904c0094750070500092d5009", + "0x200181542a40070200092d500901100902c0070180092d500900900902a", + "0x715400701e0096ee01d0092d51540160090620070162ae0120112d5009", + "0x71ea0092d500900700901d0070210092d500901d0091700070072d5009", + "0x92ae00902c00702c0092d500915400906e00702a0092d500901200902a", + "0x702f0092d500902100906600702e0092d500900e00904a0071eb0092d5", + "0x2b90090f00072b90280260242a60122d500902f02e1eb02c02a1ea2ae0d6", + "0x92d50090310090ef0070072d50090071540071ed0096ef0310092d5154", + "0x1660070072d50090071540070380096f00360092d51541ee0092410071ee", + "0x703a0092d50090076f10071ef0092d50090070210070072d5009036009", + "0x900702800703c0092d500903a1ef15402600703a0092d500903a009024", + "0x400092d500903f00960a00703f0092d500903c1ec1542b90071ec0092d5", + "0x2600906e0072a20092d500902400902a0070420092d50092a600901d007", + "0x470092d500904000960b0070450092d500902800902c0072a00092d5009", + "0x72d50090380091660070072d50090071540070470452a02a2042012009", + "0x929a00960d00729a0092d500929d00960c00729d0092d50090071b0007", + "0x704c0092d500902400902a00704a0092d50092a600901d0072980092d5", + "0x929800960b00728f0092d500902800902c0072960092d500902600906e", + "0x1ed00960a0070072d500900715400704e28f29604c04a01200904e0092d5", + "0x520092d500902400902a00728c0092d50092a600901d0070500092d5009", + "0x5000960b0071660092d500902800902c0070540092d500902600906e007", + "0x92980070072d500900715400705816605405228c0120090580092d5009", + "0x16a0092d500900700901d0071690092d500901e00960a0070072d500900e", + "0x2ae00902c00705d0092d500915400906e0070e60092d500901200902a007", + "0x70e40e505d0e616a0120090e40092d500916900960b0070e50092d5009", + "0x2ae0121546f20072ae0092d500900900902c0070120092d500900700902a", + "0x71540070180096f40160092d515400e0096f300700e0111540112d5009", + "0x701d0092d50090200096f60070200092d50090160096f50070072d5009", + "0x2a60091730070072d500901e0090a60072a602101e0112d500901d0096f7", + "0x70260092d50090240094740070240092d50090210094730070072d5009", + "0x90260094750072b90092d500901100902c0070280092d500915400902a", + "0x2d50090180094760070072d50090071540071ea2b90280110091ea0092d5", + "0x4750071eb0092d500901100902c00702c0092d500915400902a00702a009", + "0x1542d51541540090070116f800702e1eb02c01100902e0092d500902a009", + "0x160092d500900e0096fa0070072d50090071540072ae0121546f900e011", + "0x900711f0070200092d50090160096fb0070180092d500901100901d007", + "0x1200901d00701d0092d50092ae0096fd0070072d50090071540070076fc", + "0x701e0092d50090076fe0070200092d500901d0096fb0070180092d5009", + "0x242a61547000070240092d500901e0090240072a60092d50090200096ff", + "0x2d50090071540070280097010260092d51540210091960070210092d5009", + "0x94740071ea0092d50092b90094730072b90092d50090260090dd007007", + "0x92d500902a00947500702c0092d500901800901d00702a0092d50091ea", + "0x702e0092d50090280094760070072d50090071540071eb02c1540091eb", + "0x703102f1540090310092d500902e00947500702f0092d500901800901d", + "0x92d500900900902a0070210092d500900700901d0070072d50090071a1", + "0xe48c0070260092d50092ae0090dc0070240092d50090110091b10072a6", + "0x7020280092d515401e0090f500701e01d02001800e2d50090260242a6021", + "0x2e1eb02c02a1ea0262d500901200919a0070072d50090071540072b9009", + "0x1d00703f0092d50090280090f40071ec03c03a1ef0380361ee1ed03102f", + "0x2d500915400906e00729d0092d500902000902a0070470092d5009018009", + "0x2400704a0092d500903800948e0072980092d500900e00902c00729a009", + "0x29a29d0470167030072960092d500901600919800704c0092d500903f009", + "0x28f0092d51540450097040070452a02a20420400122d500929604c04a298", + "0x16600728c0501542d500928f0097060070072d500900715400704e009705", + "0x2e1eb02c02a1ea02629d0070520092d50090071b00070072d500928c009", + "0x90520541542570070540092d50091ec03c03a1ef0500361ee1ed03102f", + "0x71690092d500904000901d0070580092d50091660092590071660092d5", + "0x901d0091b10070e60092d50092a200906e00716a0092d500904200902a", + "0x90e40092d50090580092470070e50092d50092a000902c00705d0092d5", + "0x72d50091ea00912e0070072d50090071540070e40e505d0e616a1692ae", + "0x2d500903a0091760070072d500903c00913b0070072d50091ec009174007", + "0x903600917b0070072d500902a0091650070072d50091ef009139007007", + "0x310091330070072d50091ed0091350070072d50091ee00917e0070072d5", + "0x91300070072d500902e0091830070072d500902f0091810070072d5009", + "0x70600092d500904e0092450070072d500902c0091840070072d50091eb", + "0x92a200906e0071700092d500904200902a0070620092d500904000901d", + "0x70660092d50092a000902c0071730092d500901d0091b10071710092d5", + "0x2d50090071540070680661731711700622ae0090680092d5009060009247", + "0x92b90092450070072d50090120092980070072d50090160090a6007007", + "0x706c0092d500902000902a00706a0092d500901800901d0071750092d5", + "0x900e00902c00706e0092d500901d0091b10071780092d500915400906e", + "0x717d07006e17806c06a2ae00917d0092d50091750092470070700092d5", + "0x92d500900900902a0070210092d500900700901d0070072d50090071a1", + "0xe48c0070260092d50092ae0090dc0070240092d50090110091b10072a6", + "0x7070280092d515401e0090f500701e01d02001800e2d50090260242a6021", + "0x2e1eb02c02a1ea0262d500901200919a0070072d50090071540072b9009", + "0x1d00703f0092d50090280090f40071ec03c03a1ef0380361ee1ed03102f", + "0x2d500915400906e00729d0092d500902000902a0070470092d5009018009", + "0x2400704a0092d50091ef0092e80072980092d500900e00902c00729a009", + "0x29a29d0470167080072960092d500901600919800704c0092d500903f009", + "0x28f0092d51540450097090070452a02a20420400122d500929604c04a298", + "0x16600728c0501542d500928f00970b0070072d500900715400704e00970a", + "0x2e1eb02c02a1ea02629d0070520092d50090071b00070072d500928c009", + "0x90520541542570070540092d50091ec03c03a0500380361ee1ed03102f", + "0x71690092d500904000901d0070580092d50091660092590071660092d5", + "0x901d0091b10070e60092d50092a200906e00716a0092d500904200902a", + "0x90e40092d50090580092470070e50092d50092a000902c00705d0092d5", + "0x72d50091ea00912e0070072d50090071540070e40e505d0e616a1692ae", + "0x2d500903a0091760070072d500903c00913b0070072d50091ec009174007", + "0x903600917b0070072d50090380091770070072d500902a009165007007", + "0x310091330070072d50091ed0091350070072d50091ee00917e0070072d5", + "0x91300070072d500902e0091830070072d500902f0091810070072d5009", + "0x70600092d500904e0092450070072d500902c0091840070072d50091eb", + "0x92a200906e0071700092d500904200902a0070620092d500904000901d", + "0x70660092d50092a000902c0071730092d500901d0091b10071710092d5", + "0x2d50090071540070680661731711700622ae0090680092d5009060009247", + "0x92b90092450070072d50090120092980070072d50090160090a6007007", + "0x706c0092d500902000902a00706a0092d500901800901d0071750092d5", + "0x900e00902c00706e0092d500901d0091b10071780092d500915400906e", + "0x717d07006e17806c06a2ae00917d0092d50091750092470070700092d5", + "0x92d50092ae00970c0072ae0092d500900e0094a50070072d50090071a1", + "0x901200961c0070180092d50090070210070160092d5009007021007012", + "0x70240092d500900700901d0070072d500902000961d00701d0201542d5", + "0x90160090520070280092d500901d0095250070260092d500900900902a", + "0x91ea2b902802602401261e0071ea0092d50090180090520072b90092d5", + "0x900715400702c00970d02a0092d51542a600961f0072a602101e0112d5", + "0x70072d500902f00916600702f02e1eb0112d500902a0096210070072d5", + "0x91ed00916a0070072d50090310091690071ed0311542d50091eb009058", + "0x70072d50090360091690070380361542d500902e0090580071ee0092d5", + "0x92d50091ee0091750070072d50090071ba0071ef0092d500903800916a", + "0x3a1542d51541ef1ee15402100e6220071ef0092d50091ef0091750071ee", + "0x70420092d50090071b00070072d500900715400704003f1ec01170e03c", + "0x903c00902c0072a00092d500903a00902a0072a20092d5009042009464", + "0x715400700770f00900711f0070470092d50092a20094650070450092d5", + "0x72a00092d50091ec00902a00729d0092d50090400094670070072d5009", + "0x90470096140070470092d500929d0094650070450092d500903f00902c", + "0x71004a0092d515429a00922800729a0092d50092980096150072980092d5", + "0x2d500904a0092e30070072d50090071a10070072d500900715400704c009", + "0x704e0092d500928f00925900728f0092d5009296011154257007296009", + "0x904500902c00728c0092d50092a000902a0070500092d500901e00901d", + "0x715400705405228c05000e0090540092d500904e0092470070520092d5", + "0x4c0092450070072d50090110092980070072d50090071a10070072d5009", + "0x1690092d50092a000902a0070580092d500901e00901d0071660092d5009", + "0x16905800e0090e60092d500916600924700716a0092d500904500902c007", + "0x902c0092450070072d50090110092980070072d50090071540070e616a", + "0x70e40092d500902100902a0070e50092d500901e00901d00705d0092d5", + "0x600e40e500e0090620092d500905d0092470070600092d500915400902c", + "0x92ae0097110072ae0092d500900e0094b20070072d50090071a1007062", + "0x961c0070180092d50090070210070160092d50090070210070120092d5", + "0x92d500900700901d0070072d500902000961d00701d0201542d5009012", + "0x90520070280092d500901d0095250070260092d500900900902a007024", + "0x2b902802602401261e0071ea0092d50090180090520072b90092d5009016", + "0x15400702c00971202a0092d51542a600961f0072a602101e0112d50091ea", + "0x2d500902f00916600702f02e1eb0112d500902a0096210070072d5009007", + "0x916a0070072d50090310091690071ed0311542d50091eb009058007007", + "0x2d50090360091690070380361542d500902e0090580071ee0092d50091ed", + "0x91ee0091750070072d50090071ba0071ef0092d500903800916a007007", + "0x2d51541ef1ee15402100e6220071ef0092d50091ef0091750071ee0092d5", + "0x92d50090071b00070072d500900715400704003f1ec01171303c03a154", + "0x902c0072a00092d500903a00902a0072a20092d5009042009464007042", + "0x700771400900711f0070470092d50092a20094650070450092d500903c", + "0x92d50091ec00902a00729d0092d50090400094670070072d5009007154", + "0x96140070470092d500929d0094650070450092d500903f00902c0072a0", + "0x92d515429a00922800729a0092d50092980096150072980092d5009047", + "0x4a0092e30070072d50090071a10070072d500900715400704c00971504a", + "0x92d500928f00925900728f0092d50092960111542570072960092d5009", + "0x902c00728c0092d50092a000902a0070500092d500901e00901d00704e", + "0x705405228c05000e0090540092d500904e0092470070520092d5009045", + "0x2450070072d50090110092980070072d50090071a10070072d5009007154", + "0x2d50092a000902a0070580092d500901e00901d0071660092d500904c009", + "0xe0090e60092d500916600924700716a0092d500904500902c007169009", + "0x92450070072d50090110092980070072d50090071540070e616a169058", + "0x92d500902100902a0070e50092d500901e00901d00705d0092d500902c", + "0xe500e0090620092d500905d0092470070600092d500915400902c0070e4", + "0x2101e01d0200180162ae01200e0110262d500915400919a0070620600e4", + "0x70072d500900e0091650070072d500901100912e0072b90280260242a6", + "0x72d50090160091830070072d50092ae0091300070072d5009012009184", + "0x2d500901d0091350070072d50090200091330070072d5009018009181007", + "0x92a60091770070072d500902100917b0070072d500901e00917e007007", + "0x2b90091740070072d500902800913b0070072d50090240091390070072d5", + "0x702e0092d500900900902c0071eb0092d500900700902a0070072d5009", + "0x702c02a1ea0112d500902f02e1eb01171700702f0092d5009026009716", + "0x310090ef0070072d50090071540071ed0097180310092d515402c0090f0", + "0x380092d50090360095050070360092d50091ee0095040071ee0092d5009", + "0x3800950600703a0092d500902a00902c0071ef0092d50091ea00902a007", + "0x91ed0095070070072d500900715400703c03a1ef01100903c0092d5009", + "0x70400092d500902a00902c00703f0092d50091ea00902a0071ec0092d5", + "0x1d0070072d50090071a100704204003f0110090420092d50091ec009506", + "0x2d50090110091b10070210092d500900900902a00701e0092d5009007009", + "0xe2d50090242a602101e00e48c0070240092d50092ae0090dc0072a6009", + "0x2d50090071540070280097190260092d515401d0090f500701d020018016", + "0x1eb02c02a1ea0262d500901200919a0072b90092d50090260090f4007007", + "0x1650070072d50091ea00912e0071ec03c03a1ef0380361ee1ed03102f02e", + "0x70072d50091eb0091300070072d500902c0091840070072d500902a009", + "0x72d50090310091330070072d500902f0091810070072d500902e009183", + "0x2d500903600917b0070072d50091ee00917e0070072d50091ed009135007", + "0x903c00913b0070072d500903a0091760070072d5009038009177007007", + "0x902a0070450092d500901600901d0070072d50091ec0091740070072d5", + "0x92d500900e00902c00729d0092d500915400906e0070470092d5009018", + "0x2ae71a00704a0092d50092b90090240072980092d50091ef0092e800729a", + "0x2d51542a00091960072a02a204204003f0122d500904a29829a29d047045", + "0x728f0092d500904c0090dd0070072d500900715400729600971b04c009", + "0x903f00901d0070500092d500904e00947400704e0092d500928f009473", + "0x70540092d500904200906e0070520092d500904000902a00728c0092d5", + "0x90500094750070580092d50092a200902c0071660092d50090200091b1", + "0x94760070072d500900715400716905816605405228c2ae0091690092d5", + "0x92d500904000902a0070e60092d500903f00901d00716a0092d5009296", + "0x902c0070e40092d50090200091b10070e50092d500904200906e00705d", + "0x600e40e505d0e62ae0090620092d500916a0094750070600092d50092a2", + "0x2d50090280094760070072d50090120092980070072d5009007154007062", + "0x6e0071730092d500901800902a0071710092d500901600901d007170009", + "0x2d500900e00902c0070680092d50090200091b10070660092d5009154009", + "0x1a100706a1750680661731712ae00906a0092d5009170009475007175009", + "0x120092d50092ae00971c0072ae0092d500900e0094cc0070072d5009007", + "0x2d500901200961c0070180092d50090070210070160092d5009007021007", + "0x2a0070240092d500900700901d0070072d500902000961d00701d020154", + "0x2d50090160090520070280092d500901d0095250070260092d5009009009", + "0x2d50091ea2b902802602401261e0071ea0092d50090180090520072b9009", + "0x2d500900715400702c00971d02a0092d51542a600961f0072a602101e011", + "0x580070072d500902f00916600702f02e1eb0112d500902a009621007007", + "0x2d50091ed00916a0070072d50090310091690071ed0311542d50091eb009", + "0x16a0070072d50090360091690070380361542d500902e0090580071ee009", + "0x1ee0092d50091ee0091750070072d50090071ba0071ef0092d5009038009", + "0x3c03a1542d51541ef1ee15402100e6220071ef0092d50091ef009175007", + "0x4640070420092d50090071b00070072d500900715400704003f1ec01171e", + "0x2d500903c00902c0072a00092d500903a00902a0072a20092d5009042009", + "0x900715400700771f00900711f0070470092d50092a2009465007045009", + "0x2c0072a00092d50091ec00902a00729d0092d50090400094670070072d5", + "0x2d50090470096140070470092d500929d0094650070450092d500903f009", + "0x972004a0092d515429a00922800729a0092d5009298009615007298009", + "0x92d500904a0092e30070072d50090071a10070072d500900715400704c", + "0x1d00704e0092d500928f00925900728f0092d5009296011154257007296", + "0x2d500904500902c00728c0092d50092a000902a0070500092d500901e009", + "0x900715400705405228c05000e0090540092d500904e009247007052009", + "0x904c0092450070072d50090110092980070072d50090071a10070072d5", + "0x71690092d50092a000902a0070580092d500901e00901d0071660092d5", + "0x16a16905800e0090e60092d500916600924700716a0092d500904500902c", + "0x2d500902c0092450070072d50090110092980070072d50090071540070e6", + "0x2c0070e40092d500902100902a0070e50092d500901e00901d00705d009", + "0x620600e40e500e0090620092d500905d0092470070600092d5009154009", + "0x260242a602101e01d0200180162ae01200e0110262d500915400919a007", + "0x902a00702a0092d50091ea0092380071ea0092d50090071b00072b9028", + "0x92d50090260097160070310092d500900900902c00702f0092d5009007", + "0x2c0112d50091ee1ed03102f00e7210071ee0092d500902a0090ec0071ed", + "0x70072d50090071540070380097230360092d515402e00972200702e1eb", + "0x2d50090071b00070072d500903a00916600703a1ef1542d5009036009724", + "0x2b90281ef0242a602101e01d0200180162ae01200e01102629d00703c009", + "0x92d500903f00925900703f0092d500903c1ec1542570071ec0092d5009", + "0x92470072a20092d50091eb00902c0070420092d500902c00902a007040", + "0x1100912e0070072d50090071540072a02a20420110092a00092d5009040", + "0x91650070072d500902800913b0070072d50092b90091740070072d5009", + "0x17b0070072d50092a60091770070072d50090240091390070072d500900e", + "0x70072d500901d0091350070072d500901e00917e0070072d5009021009", + "0x72d50090160091830070072d50090180091810070072d5009020009133", + "0x2d50090380092450070072d50090120091840070072d50092ae009130007", + "0x24700729d0092d50091eb00902c0070470092d500902c00902a007045009", + "0x94d50070072d50090071a100729a29d04701100929a0092d5009045009", + "0x160092d50090070210070120092d50092ae0097250072ae0092d500900e", + "0x2000961d00701d0201542d500901200961c0070180092d5009007021007", + "0x70260092d500900900902a0070240092d500900700901d0070072d5009", + "0x90180090520072b90092d50090160090520070280092d500901d009525", + "0x961f0072a602101e0112d50091ea2b902802602401261e0071ea0092d5", + "0x2d500902a0096210070072d500900715400702c00972602a0092d51542a6", + "0x1ed0311542d50091eb0090580070072d500902f00916600702f02e1eb011", + "0x902e0090580071ee0092d50091ed00916a0070072d5009031009169007", + "0x71ef0092d500903800916a0070072d50090360091690070380361542d5", + "0x92d50091ef0091750071ee0092d50091ee0091750070072d50090071ba", + "0x15400704003f1ec01172703c03a1542d51541ef1ee15402100e6220071ef", + "0x72a20092d50090420094640070420092d50090071b00070072d5009007", + "0x92a20094650070450092d500903c00902c0072a00092d500903a00902a", + "0x90400094670070072d500900715400700772800900711f0070470092d5", + "0x70450092d500903f00902c0072a00092d50091ec00902a00729d0092d5", + "0x92980096150072980092d50090470096140070470092d500929d009465", + "0x72d500900715400704c00972904a0092d515429a00922800729a0092d5", + "0x92960111542570072960092d500904a0092e30070072d50090071a1007", + "0x70500092d500901e00901d00704e0092d500928f00925900728f0092d5", + "0x904e0092470070520092d500904500902c00728c0092d50092a000902a", + "0x2d50090071a10070072d500900715400705405228c05000e0090540092d5", + "0x1e00901d0071660092d500904c0092450070072d5009011009298007007", + "0x16a0092d500904500902c0071690092d50092a000902a0070580092d5009", + "0x72d50090071540070e616a16905800e0090e60092d5009166009247007", + "0x901e00901d00705d0092d500902c0092450070072d5009011009298007", + "0x70600092d500915400902c0070e40092d500902100902a0070e50092d5", + "0x70072d50090071a10070620600e40e500e0090620092d500905d009247", + "0x120090110070120092d500900e00972b00700e1541542d500915400972a", + "0x181542d50090160090120070160092d50092ae00900e0072ae0092d5009", + "0x1d00972c00701d0092d50090200090180070072d50090180092ae007020", + "0x92d500901e01115402600701e0092d500901e00902400701e0092d5009", + "0x902a0072b90092d500900700901d0072a60092d500915400972b007021", + "0x92d500902100905200702a0092d50092a60091750071ea0092d5009009", + "0x2d51540280094e00070280260240112d500902c02a1ea2b900e72d00702c", + "0x3102f1542d50091eb0094e20070072d500900715400702e00972e1eb009", + "0x901d0071ee0092d50091ed0097300071ed0092d500903102f15472f007", + "0x92d50091ee0097310070380092d500902600902a0070360092d5009024", + "0x3a0092d500902e0097320070072d50090071540071ef0380360110091ef", + "0x3a0097310071ec0092d500902600902a00703c0092d500902400901d007", + "0x906e0070200092d500900700901d00703f1ec03c01100903f0092d5009", + "0x92d500901200950100701e0092d500900e00950000701d0092d5009154", + "0x92d50090070160070180162ae0112d500902101e01d02000e733007021", + "0x90200071ea0092d500901100902c0072b90092d500900900902a0072a6", + "0x2c02a1ea2b900e73400702c0092d50090180095ee00702a0092d50092a6", + "0x2d500902e00973600702e0092d50090280097350070280260240112d5009", + "0x70072d500900715400703100973702f0092d51541eb0090f00071eb009", + "0x91ee0095050071ee0092d50091ed0095040071ed0092d500902f0090ef", + "0x71ef0092d500902400902a0070380092d50092ae00901d0070360092d5", + "0x903600950600703c0092d500902600902c00703a0092d500901600906e", + "0x310095070070072d50090071540071ec03c03a1ef0380120091ec0092d5", + "0x420092d500902400902a0070400092d50092ae00901d00703f0092d5009", + "0x3f0095060072a00092d500902600902c0072a20092d500901600906e007", + "0x70200092d500900700901d0070452a02a20420400120090450092d5009", + "0x901200902400701e0092d500900e00950b00701d0092d500915400906e", + "0x180096260070180162ae0112d500902101e01d02000e7380070210092d5", + "0x70240092d50090240090200070240092d50090070160072a60092d5009", + "0x715400702c02a1ea01173a2b90280260112d51542a602401100900e739", + "0x702e0092d500902600902a0071eb0092d50092b900973b0070072d5009", + "0x73d00900711f0070310092d50091eb00973c00702f0092d500902800902c", + "0x91ea00902a0071ed0092d500902c00973e0070072d5009007154007007", + "0x70310092d50091ed00973c00702f0092d500902a00902c00702e0092d5", + "0x1541ee0090f50071ee0092d50090360097400070360092d500903100973f", + "0x3a0092d50090380090f40070072d50090071540071ef0097410380092d5", + "0x2ae00901d0071ec0092d500903c00950f00703c0092d500903a00950e007", + "0x420092d500901600906e0070400092d500902e00902a00703f0092d5009", + "0x4003f0120092a00092d50091ec0095100072a20092d500902f00902c007", + "0x901d0070450092d50091ef0095110070072d50090071540072a02a2042", + "0x92d500901600906e00729d0092d500902e00902a0070470092d50092ae", + "0x4701200904a0092d50090450095100072980092d500902f00902c00729a", + "0x71a10070072d500900710b0070200092d500900722500704a29829a29d", + "0x2b90092d500900700901d00701e01d1542d500900e00929a0070072d5009", + "0x1100902c00702a0092d500915400906e0071ea0092d500900900902a007", + "0x121542d50090120095fe0071eb0092d500901e00904a00702c0092d5009", + "0x6600702f2ae1542d50092ae00928400702e0092d500902e00902400702e", + "0x210122d500902f02e1eb02c02a1ea2b90160f100702f0092d500902f009", + "0x2d50090071540071ed0097420310092d51540280090f00070280260242a6", + "0x380097430360092d51541ee0092410071ee0092d50090310090ef007007", + "0x1542d50092ae0092840070072d50090360091660070072d5009007154007", + "0x71ec03c1542d50091ef0090830071ef0092d500903a00921f00703a2ae", + "0x1542d500903f00908300703f0092d50090072310070072d500903c009186", + "0x91240072a20092d50091ec0091240070072d5009040009186007042040", + "0x72d50090071ba0070450092d50092a02a21542320072a00092d5009042", + "0x1540070470097440072d51540450092330070450092d5009045009024007", + "0x729a0092d500929d00923800729d0092d50090071b00070072d5009007", + "0x70072d500900715400700774500900711f0072980092d500929a0090ec", + "0x92d500904a00923d00704a0092d50090071b00070072d500904700923a", + "0x90ec0072960092d500929800923f0072980092d500904c0090ec00704c", + "0x900715400704e00974628f0092d51542960092410072960092d5009296", + "0x901600961d0070072d500928f0091660070072d50090071a10070072d5", + "0x120091860070072d50092ae0091730070072d50090200092990070072d5", + "0x77470070500092d50090070210070072d500901d0092980070072d5009", + "0x92d500928c05015402600728c0092d500928c00902400728c0092d5009", + "0x92450071660092d50090520541542b90070540092d5009007028007052", + "0x92d50092a600902a0071690092d500902100901d0070580092d5009166", + "0x924700705d0092d500902600902c0070e60092d500902400906e00716a", + "0x1a10070072d50090071540070e505d0e616a1690120090e50092d5009058", + "0x71710092d500902100901d0070072d500904e0091660070072d5009007", + "0x902600902c0070660092d500902400906e0071730092d50092a600902a", + "0x706a0092d50090120090240071750092d500901d00904a0070680092d5", + "0x122d500906c06a17506806617317101674800706c0092d50092ae009066", + "0x2d515417000917f0070180092d50090180201542270071700620180600e4", + "0x17d0701542d50091780092550070072d500900715400706e009749178009", + "0x906000902a0071800092d50090e400901d0070072d500917d009166007", + "0x707c0092d500907000904a00707a0092d500906200902c0071820092d5", + "0x7317f00e2d500907d07c07a18218001274a00707d0092d5009016009525", + "0x70072d500900715400718500974b07f0092d515407600917f007076074", + "0x917f00901d0070072d50090830091660070830811542d500907f009255", + "0x71870092d500901800906e0070850092d500907300902a0071860092d5", + "0x74c00900711f00708b0092d500908100904a0071880092d500907400902c", + "0x917f00901d0070860092d50091850092450070072d5009007154007007", + "0x71890092d500901800906e00708d0092d500907300902a0070560092d5", + "0x18908d0560120090910092d500908600924700718a0092d500907400902c", + "0x906e0092450070072d500901600961d0070072d500900715400709118a", + "0x718c0092d500906000902a0070940092d50090e400901d00718b0092d5", + "0x918b0092470070980092d500906200902c0070960092d500901800906e", + "0x380091660070072d500900715400718d09809618c09401200918d0092d5", + "0x91730070072d50090200092990070072d500901600961d0070072d5009", + "0x71860092d500902100901d0070072d50090120091860070072d50092ae", + "0x902600902c0071870092d500902400906e0070850092d50092a600902a", + "0x25700709a0092d50090071b000708b0092d500901d00904a0071880092d5", + "0x918600901d00718e0092d500909c00925900709c0092d500909a08b154", + "0x70a10092d500918700906e00709f0092d500908500902a00718f0092d5", + "0xa109f18f0120090dd0092d500918e0092470071960092d500918800902c", + "0x90200092990070072d500901600961d0070072d50090071540070dd196", + "0x1d0092980070072d50090120091860070072d50092ae0091730070072d5", + "0x70a60092d500902100901d0070a40092d50091ed0092450070072d5009", + "0x902600902c0070a80092d500902400906e0071a40092d50092a600902a", + "0x2250071a70aa0a81a40a60120091a70092d50090a40092470070aa0092d5", + "0x929a0070072d50090071a10070072d500900710b0070200092d5009007", + "0x2d500900900902a0072b90092d500900700901d00701e01d1542d500900e", + "0x4a00702c0092d500901100902c00702a0092d500915400906e0071ea009", + "0x902e00902400702e0121542d50090120095fe0071eb0092d500901e009", + "0x2f0092d500902f00906600702f2ae1542d50092ae00928400702e0092d5", + "0xf00070280260242a60210122d500902f02e1eb02c02a1ea2b90160f1007", + "0x90310090ef0070072d50090071540071ed00974d0310092d5154028009", + "0x72d500900715400703800974e0360092d51541ee0092410071ee0092d5", + "0x2d50090200092990070072d500901600961d0070072d5009036009166007", + "0x902100901d0070072d50090120091860070072d50092ae009173007007", + "0x703c0092d500902400906e00703a0092d50092a600902a0071ef0092d5", + "0x74f00900711f00703f0092d500901d00904a0071ec0092d500902600902c", + "0x2d500902100901d0070072d50090380091660070072d5009007154007007", + "0x2c00729d0092d500902400906e0070470092d50092a600902a007045009", + "0x2d50090120090240072980092d500901d00904a00729a0092d5009026009", + "0x4c04a29829a29d04704501675000704c0092d50092ae00906600704a009", + "0x917f0070180092d50090180201542270072a02a20180420400122d5009", + "0x2d50092960092550070072d500900715400728f0097512960092d51542a0", + "0x2a0070580092d500904000901d0070072d500905000916600705004e154", + "0x2d500904e00904a00716a0092d50092a200902c0071690092d5009042009", + "0x2d500905d0e616a16905801274a00705d0092d50090160095250070e6009", + "0x90071540070e40097520e50092d515416600917f00716605405228c00e", + "0x1d0070072d50090620091660070620601542d50090e50092550070072d5", + "0x2d500901800906e00703a0092d500905200902a0071ef0092d500928c009", + "0x1b000703f0092d500906000904a0071ec0092d500905400902c00703c009", + "0x2d50091710092590071710092d500917003f1542570071700092d5009007", + "0x6e0070680092d500903a00902a0070660092d50091ef00901d007173009", + "0x2d500917300924700706a0092d50091ec00902c0071750092d500903c009", + "0x90e40092450070072d500900715400706c06a17506806601200906c009", + "0x70700092d500905200902a00706e0092d500928c00901d0071780092d5", + "0x917800924700717f0092d500905400902c00717d0092d500901800906e", + "0x1600961d0070072d500900715400707317f17d07006e0120090730092d5", + "0x70760092d500904000901d0070740092d500928f0092450070072d5009", + "0x92a200902c0071820092d500901800906e0071800092d500904200902a", + "0x15400707c07a18218007601200907c0092d500907400924700707a0092d5", + "0x2990070072d500901600961d0070072d500901d0092980070072d5009007", + "0x70072d50090120091860070072d50092ae0091730070072d5009020009", + "0x92a600902a00707f0092d500902100901d00707d0092d50091ed009245", + "0x70830092d500902600902c0070810092d500902400906e0071850092d5", + "0x72d50090071a100718608308118507f0120091860092d500907d009247", + "0x1d1542a400701e0092d500901100902c00701d0092d500900900902a007", + "0x1540072a60097530210092d51540200090620070200180160112d500901e", + "0x92d50090210091700070260241542d50092ae0091710070072d5009007", + "0x921e0070072d50092b90091730071ea2b91542d5009028009171007028", + "0x92d500902600921e00702c0092d500902a00921f00702a0092d50091ea", + "0x18600703102f1542d500902c00908300702e0092d50091eb00921f0071eb", + "0x2d50091ed0091860071ee1ed1542d500902e0090830070072d500902f009", + "0x1542320070380092d50091ee0091240070360092d5009031009124007007", + "0x2d51541ef0092330071ef0092d50091ef0090240071ef0092d5009038036", + "0x2a0072a20092d500900700901d0070072d500900715400703a009754007", + "0x2d500901800902c0070450092d500915400906e0072a00092d5009016009", + "0x6600729a0092d500901200902400729d0092d500900e00904a007047009", + "0x3c0122d500929829a29d0470452a02a20167550072980092d5009024009", + "0x2d500900715400704c00975604a0092d515404200917f00704204003f1ec", + "0x71b00070072d500928f00916600728f2961542d500904a009255007007", + "0x92d50090500092590070500092d500904e29615425700704e0092d5009", + "0x906e0070540092d50091ec00902a0070520092d500903c00901d00728c", + "0x92d500928c0092470070580092d500904000902c0071660092d500903f", + "0x2d500904c0092450070072d5009007154007169058166054052012009169", + "0x6e00705d0092d50091ec00902a0070e60092d500903c00901d00716a009", + "0x2d500916a0092470070e40092d500904000902c0070e50092d500903f009", + "0x903a00923a0070072d50090071540070600e40e505d0e6012009060009", + "0xe0092980070072d50090120091860070072d50090240091730070072d5", + "0x90240071700092d50090077570070620092d50090070210070072d5009", + "0x92d50090070280071710092d50091700621540260071700092d5009170", + "0x1d0070680092d50090660092450070660092d50091711731542b9007173", + "0x2d500915400906e00706a0092d500901600902a0071750092d5009007009", + "0x1200906e0092d50090680092470071780092d500901800902c00706c009", + "0x1860070072d50092ae0091730070072d500900715400706e17806c06a175", + "0x700092d50092a60092450070072d500900e0092980070072d5009012009", + "0x15400906e00717f0092d500901600902a00717d0092d500900700901d007", + "0x760092d50090700092470070740092d500901800902c0070730092d5009", + "0x900900902c0070160092d500900700902a00707607407317f17d012009", + "0x112d500902001801601144b0070200092d500915400904a0070180092d5", + "0x72d500900715400701e00975801d0092d51542ae00908b0072ae01200e", + "0x240094610070240092d50090210090700070210092d500901d009086007", + "0x72d50090260091860070280261542d50090110090830072a60092d5009", + "0x280091240070072d50092b90091860071ea2b91542d50092a6009083007", + "0x92d500902c02a15423200702c0092d50091ea00912400702a0092d5009", + "0x702e0097590072d51541eb0092330071eb0092d50091eb0090240071eb", + "0x310092d500902f00960c00702f0092d50090071b00070072d5009007154", + "0x1200902c0071ee0092d500900e00902a0071ed0092d500903100960d007", + "0x71540070380361ee0110090380092d50091ed00960b0070360092d5009", + "0x775a0071ef0092d50090070210070072d500902e00923a0070072d5009", + "0x92d500903a1ef15402600703a0092d500903a00902400703a0092d5009", + "0x960a00703f0092d500903c1ec1542b90071ec0092d500900702800703c", + "0x92d500901200902c0070420092d500900e00902a0070400092d500903f", + "0x72d50090071540072a02a20420110092a00092d500904000960b0072a2", + "0x900e00902a0070450092d500901e00960a0070072d5009011009186007", + "0x929a0092d500904500960b00729d0092d500901200902c0070470092d5", + "0x1600e1542d500900e0092840070072d500915400929800729a29d047011", + "0x91860070200181542d50092ae0090830072ae0092d500901600921f007", + "0x2101e1542d500901d00908300701d0092d50090072310070072d5009018", + "0x90210091240072a60092d50090200091240070072d500901e009186007", + "0x260092d50090260090240070260092d50090242a61542320070240092d5", + "0x90071b00070072d500900715400702800975b0072d5154026009233007", + "0x702a0092d50091ea0090ec0071ea0092d50092b90092380072b90092d5", + "0x1b00070072d500902800923a0070072d500900715400700775c00900711f", + "0x92d50091eb0090ec0071eb0092d500902c00923d00702c0092d5009007", + "0x924100702e0092d500902e0090ec00702e0092d500902a00923f00702a", + "0x2d500902f0091660070072d500900715400703100975d02f0092d515402e", + "0x900e0091730070072d50090110091730070072d500901200918c007007", + "0x1ee0090240071ee0092d500900729b0071ed0092d50090070210070072d5", + "0x380092d50090070280070360092d50091ee1ed1540260071ee0092d5009", + "0x902a00703a0092d50091ef00960a0071ef0092d50090360381542b9007", + "0x92d500903a00960b0071ec0092d500900900902c00703c0092d5009007", + "0x70072d50090310091660070072d500900715400703f1ec03c01100903f", + "0x900900902c0070450092d500900700902a0070400092d500900e00945d", + "0x729a0092d500901100906600729d0092d500904000945e0070470092d5", + "0x2a20420112d500929829a29d04704501275e0072980092d5009012009096", + "0x22b0070072d500900715400704c00975f04a0092d51542a00092280072a0", + "0x28f0092d500929600960c0072960092d50090071b00070072d500904a009", + "0x2a200902c0070500092d500904200902a00704e0092d500928f00960d007", + "0x715400705228c0500110090520092d500904e00960b00728c0092d5009", + "0x71660092d500904200902a0070540092d500904c00960a0070072d5009", + "0x1690581660110091690092d500905400960b0070580092d50092a200902c", + "0x2d50092ae0097600072ae0092d500900e0095780070072d50090071a1007", + "0x1200961c0070180092d50090070210070160092d5009007021007012009", + "0x240092d500900700901d0070072d500902000961d00701d0201542d5009", + "0x160090520070280092d500901d0095250070260092d500900900902a007", + "0x1ea2b902802602401261e0071ea0092d50090180090520072b90092d5009", + "0x715400702c00976102a0092d51542a600961f0072a602101e0112d5009", + "0x72d500902f00916600702f02e1eb0112d500902a0096210070072d5009", + "0x1ed00916a0070072d50090310091690071ed0311542d50091eb009058007", + "0x72d50090360091690070380361542d500902e0090580071ee0092d5009", + "0x2d50091ee0091750070072d50090071ba0071ef0092d500903800916a007", + "0x1542d51541ef1ee15402100e6220071ef0092d50091ef0091750071ee009", + "0x420092d50090071b00070072d500900715400704003f1ec01176203c03a", + "0x3c00902c0072a00092d500903a00902a0072a20092d5009042009464007", + "0x15400700776300900711f0070470092d50092a20094650070450092d5009", + "0x2a00092d50091ec00902a00729d0092d50090400094670070072d5009007", + "0x470096140070470092d500929d0094650070450092d500903f00902c007", + "0x4a0092d515429a00922800729a0092d50092980096150072980092d5009", + "0x904a0092e30070072d50090071a10070072d500900715400704c009764", + "0x4e0092d500928f00925900728f0092d50092960111542570072960092d5", + "0x4500902c00728c0092d50092a000902a0070500092d500901e00901d007", + "0x15400705405228c05000e0090540092d500904e0092470070520092d5009", + "0x92450070072d50090110092980070072d50090071a10070072d5009007", + "0x92d50092a000902a0070580092d500901e00901d0071660092d500904c", + "0x5800e0090e60092d500916600924700716a0092d500904500902c007169", + "0x2c0092450070072d50090110092980070072d50090071540070e616a169", + "0xe40092d500902100902a0070e50092d500901e00901d00705d0092d5009", + "0xe40e500e0090620092d500905d0092470070600092d500915400902c007", + "0x2ae0097650072ae0092d500900e00957c0070072d50090071a1007062060", + "0x61c0070180092d50090070210070160092d50090070210070120092d5009", + "0x2d500900700901d0070072d500902000961d00701d0201542d5009012009", + "0x520070280092d500901d0095250070260092d500900900902a007024009", + "0x2802602401261e0071ea0092d50090180090520072b90092d5009016009", + "0x702c00976602a0092d51542a600961f0072a602101e0112d50091ea2b9", + "0x902f00916600702f02e1eb0112d500902a0096210070072d5009007154", + "0x16a0070072d50090310091690071ed0311542d50091eb0090580070072d5", + "0x90360091690070380361542d500902e0090580071ee0092d50091ed009", + "0x1ee0091750070072d50090071ba0071ef0092d500903800916a0070072d5", + "0x1541ef1ee15402100e6220071ef0092d50091ef0091750071ee0092d5009", + "0x2d50090071b00070072d500900715400704003f1ec01176703c03a1542d5", + "0x2c0072a00092d500903a00902a0072a20092d5009042009464007042009", + "0x776800900711f0070470092d50092a20094650070450092d500903c009", + "0x2d50091ec00902a00729d0092d50090400094670070072d5009007154007", + "0x6140070470092d500929d0094650070450092d500903f00902c0072a0009", + "0x2d515429a00922800729a0092d50092980096150072980092d5009047009", + "0x92e30070072d50090071a10070072d500900715400704c00976904a009", + "0x2d500928f00925900728f0092d50092960111542570072960092d500904a", + "0x2c00728c0092d50092a000902a0070500092d500901e00901d00704e009", + "0x5405228c05000e0090540092d500904e0092470070520092d5009045009", + "0x70072d50090110092980070072d50090071a10070072d5009007154007", + "0x92a000902a0070580092d500901e00901d0071660092d500904c009245", + "0x90e60092d500916600924700716a0092d500904500902c0071690092d5", + "0x2450070072d50090110092980070072d50090071540070e616a16905800e", + "0x2d500902100902a0070e50092d500901e00901d00705d0092d500902c009", + "0xe0090620092d500905d0092470070600092d500915400902c0070e4009", + "0x902f0070120092d500900702e0070072d50090071a10070620600e40e5", + "0x2001815476a0162ae1542d51540120090070110310070120092d5009012", + "0x92ae00901d00701d00e1542d500900e0095fe0070072d5009007154007", + "0x70072d500900715400701e00976b0072d515401d0092330072ae0092d5", + "0x902115415476c0070210092d50090110092ea0070072d500900e009186", + "0x70260092d50092ae00901d0070240092d50092a600976d0072a60092d5", + "0x2b90280260110092b90092d500902400976e0070280092d500901600902a", + "0x92d50091540091750070072d500901e00923a0070072d5009007154007", + "0x976f1eb0092d515402a0090f200702a1ea1542d500902c0090db00702c", + "0x900750a00702f0092d50091eb0111540260070072d500900715400702e", + "0x1ef0092d50092ae00901d0071ed0092d500903100e1542320070310092d5", + "0x2f00905200703c0092d50091ea00917500703a0092d500901600902a007", + "0x3f1ec03c03a1ef01258600703f0092d50091ed0090240071ec0092d5009", + "0x71540070420097700400092d51540380095870070380361ee0112d5009", + "0x92d50092a02a215476c0072a02a21542d50090400095890070072d5009", + "0x902a00729d0092d50091ee00901d0070470092d500904500976d007045", + "0x15400729829a29d0110092980092d500904700976e00729a0092d5009036", + "0x4c0092d50091ee00901d00704a0092d50090420097710070072d5009007", + "0x29604c01100928f0092d500904a00976e0072960092d500903600902a007", + "0x2d50090110091690070072d500900e0091860070072d500900715400728f", + "0x76d0070500092d500904e1ea15476c00704e0092d500902e009772007007", + "0x2d500901600902a0070520092d50092ae00901d00728c0092d5009050009", + "0x2d50090071540071660540520110091660092d500928c00976e007054009", + "0x91540090e40070072d50090110091690070072d500900e009186007007", + "0x1690090240071690092d50090070e50070580092d50090070210070072d5", + "0xe60092d500900702800716a0092d50091690581540260071690092d5009", + "0x901d0070e50092d500905d00977100705d0092d500916a0e61542b9007", + "0x92d50090e500976e0070600092d500902000902a0070e40092d5009018", + "0x92d50090070094e70070090092d50090077730070620600e4011009062", + "0x59b0071540092d500900e01115477400700e0092d5009009009024007011", + "0x901200959d0070072d50090071540072ae0097750120092d5154154009", + "0x70200092d500901800905d0070180092d50090160090e60070160092d5", + "0x2ae0091ea0070072d500900715400701d00900901d0092d50090200091eb", + "0x2d50090071a10070210090090210092d500901e0091eb00701e0092d5009", + "0x70210070120092d50092ae0092e90072ae0092d500900e0095a2007007", + "0x1d0201542d500901200961c0070180092d50090070210070160092d5009", + "0x900900902a0070240092d500900700901d0070072d500902000961d007", + "0x72b90092d50090160090520070280092d500901d0095250070260092d5", + "0x2101e0112d50091ea2b902802602401261e0071ea0092d5009018009052", + "0x6210070072d500900715400702c00977602a0092d51542a600961f0072a6", + "0x91eb0090580070072d500902f00916600702f02e1eb0112d500902a009", + "0x71ee0092d50091ed00916a0070072d50090310091690071ed0311542d5", + "0x903800916a0070072d50090360091690070380361542d500902e009058", + "0x91750071ee0092d50091ee0091750070072d50090071ba0071ef0092d5", + "0x1ec01177703c03a1542d51541ef1ee15402100e6220071ef0092d50091ef", + "0x90420094640070420092d50090071b00070072d500900715400704003f", + "0x70450092d500903c00902c0072a00092d500903a00902a0072a20092d5", + "0x70072d500900715400700777800900711f0070470092d50092a2009465", + "0x903f00902c0072a00092d50091ec00902a00729d0092d5009040009467", + "0x72980092d50090470096140070470092d500929d0094650070450092d5", + "0x15400704c00977904a0092d515429a00922800729a0092d5009298009615", + "0x2570072960092d500904a0092e30070072d50090071a10070072d5009007", + "0x901e00901d00704e0092d500928f00925900728f0092d5009296011154", + "0x70520092d500904500902c00728c0092d50092a000902a0070500092d5", + "0x70072d500900715400705405228c05000e0090540092d500904e009247", + "0x1660092d500904c0092450070072d50090110092980070072d50090071a1", + "0x4500902c0071690092d50092a000902a0070580092d500901e00901d007", + "0x1540070e616a16905800e0090e60092d500916600924700716a0092d5009", + "0x705d0092d500902c0092450070072d50090110092980070072d5009007", + "0x915400902c0070e40092d500902100902a0070e50092d500901e00901d", + "0x902a0070620600e40e500e0090620092d500905d0092470070600092d5", + "0x2d50092ae0121546500072ae0092d500900900902c0070120092d5009007", + "0x2d500900715400701800977a0160092d515400e00965100700e011154011", + "0x965500701d0092d50090200096540070200092d5009016009653007007", + "0x210096570070072d500901e0096560070260242a602101e0122d500901d", + "0x91510070072d50090260091860070072d50092a60091730070072d5009", + "0x92d500915400902a0072b90092d500902800915f0070280092d5009024", + "0x1ea01100902c0092d50092b900900000702a0092d500901100902c0071ea", + "0x15400902a0071eb0092d500901800921d0070072d500900715400702c02a", + "0x310092d50091eb00900000702f0092d500901100902c00702e0092d5009", + "0x900715400715400977c0090092d515400700977b00703102f02e011009", + "0x77f00700e0092d500901100977e0070110092d500900900977d0070072d5", + "0x2d50090070280070072d50090071540070120090090120092d500900e009", + "0x70180092d50090160097800070160092d50091542ae1542b90072ae009", + "0x70180161542d500900e0095b10070200090090200092d500901800977f", + "0x90180092c10072a60092d500915400906e0070210092d500900700901d", + "0x2d50090260242a602100e2e50070260092d50090120090700070240092d5", + "0x2b90092d500901e0096260070280092d50092ae00921f00701e01d020011", + "0x110090126280071ea0092d50091ea0090200071ea0092d5009007016007", + "0x70072d500900715400702f02e1eb01178102c02a1542d51540282b91ea", + "0x2d500902a00902a0071ed0092d50090310094640070310092d50090071b0", + "0x11f0070380092d50091ed0094650070360092d500902c00902c0071ee009", + "0x2a0071ef0092d500902f0094670070072d5009007154007007782009007", + "0x2d50091ef0094650070360092d500902e00902c0071ee0092d50091eb009", + "0x22800703a0092d500903c00961500703c0092d5009038009614007038009", + "0x91ec0092e30070072d500900715400703f0097831ec0092d515403a009", + "0x2a20092d50090420097850070420092d50090400161547840070400092d5", + "0x1d00906e0070450092d50091ee00902a0072a00092d500902000901d007", + "0x29a0092d50092a200978600729d0092d500903600902c0070470092d5009", + "0x72d50090160091300070072d500900715400729a29d0470452a0012009", + "0x1ee00902a00704a0092d500902000901d0072980092d500903f009787007", + "0x28f0092d500903600902c0072960092d500901d00906e00704c0092d5009", + "0x900e00978800704e28f29604c04a01200904e0092d5009298009786007", + "0x2a60092d500915400906e0070210092d500900700901d0070180161542d5", + "0x2100e6660070260092d50090120090660070240092d50090180092b8007", + "0x900902a0070280092d500900701600701e01d0200112d50090260242a6", + "0x2e0092d50090280090200071eb0092d500901100902c00702c0092d5009", + "0x2c0126130070310092d50092ae00907000702f0092d500901e0095ee007", + "0x6150071ee0092d500902a00961400702a1ea2b90112d500903102f02e1eb", + "0x71540070380097890360092d51541ed0092280071ed0092d50091ee009", + "0x3a0092d50091ef01615478a0071ef0092d50090360092e30070072d5009", + "0x2b900902a0071ec0092d500902000901d00703c0092d500903a00978b007", + "0x420092d50091ea00902c0070400092d500901d00906e00703f0092d5009", + "0x2d50090071540072a204204003f1ec0120092a20092d500903c00978c007", + "0x2000901d0072a00092d500903800978d0070072d5009016009183007007", + "0x29d0092d500901d00906e0070470092d50092b900902a0070450092d5009", + "0x470450120092980092d50092a000978c00729a0092d50091ea00902c007", + "0x92e70072ae0092d500900e0095d70070072d50090071a100729829a29d", + "0x70180092d50090070210070160092d50090070210070120092d50092ae", + "0x900700901d0070072d500902000961d00701d0201542d500901200961c", + "0x70280092d500901d0095250070260092d500900900902a0070240092d5", + "0x2602401261e0071ea0092d50090180090520072b90092d5009016009052", + "0x2c00978e02a0092d51542a600961f0072a602101e0112d50091ea2b9028", + "0x2f00916600702f02e1eb0112d500902a0096210070072d5009007154007", + "0x70072d50090310091690071ed0311542d50091eb0090580070072d5009", + "0x360091690070380361542d500902e0090580071ee0092d50091ed00916a", + "0x91750070072d50090071ba0071ef0092d500903800916a0070072d5009", + "0x1ef1ee15402100e6220071ef0092d50091ef0091750071ee0092d50091ee", + "0x90071b00070072d500900715400704003f1ec01178f03c03a1542d5154", + "0x72a00092d500903a00902a0072a20092d50090420094640070420092d5", + "0x79000900711f0070470092d50092a20094650070450092d500903c00902c", + "0x91ec00902a00729d0092d50090400094670070072d5009007154007007", + "0x70470092d500929d0094650070450092d500903f00902c0072a00092d5", + "0x15429a00922800729a0092d50092980096150072980092d5009047009614", + "0x2e30070072d50090071a10070072d500900715400704c00979104a0092d5", + "0x928f00925900728f0092d50092960111542570072960092d500904a009", + "0x728c0092d50092a000902a0070500092d500901e00901d00704e0092d5", + "0x5228c05000e0090540092d500904e0092470070520092d500904500902c", + "0x72d50090110092980070072d50090071a10070072d5009007154007054", + "0x2a000902a0070580092d500901e00901d0071660092d500904c009245007", + "0xe60092d500916600924700716a0092d500904500902c0071690092d5009", + "0x70072d50090110092980070072d50090071540070e616a16905800e009", + "0x902100902a0070e50092d500901e00901d00705d0092d500902c009245", + "0x90620092d500905d0092470070600092d500915400902c0070e40092d5", + "0x1a10070072d500900710b0072ae0092d50090071d50070620600e40e500e", + "0x1e0092d500901100902c00701d0092d500900900902a0070072d5009007", + "0x7920210092d51540200090620070200180160112d500901e01d1542a4007", + "0x75160070260241542d500900e00929a0070072d50090071540072a6009", + "0x2f0092d500901600902a00702e0092d500900700901d0070280092d5009", + "0x2600904a0071ed0092d500901800902c0070310092d500915400906e007", + "0x1ee1ed03102f02e2ae0f60070360092d50090280090240071ee0092d5009", + "0x1ef0097930380092d51541eb0090f50071eb02c02a1ea2b90122d5009036", + "0x2d500903a00908300703a0092d50090380090f40070072d5009007154007", + "0x908300703f0092d50090072310070072d500903c0091860071ec03c154", + "0x92d50091ec0091240070072d50090400091860070420401542d500903f", + "0x240070450092d50092a02a21542320072a00092d50090420091240072a2", + "0x90071540070470097940072d51540450092330070450092d5009045009", + "0x901d00729d0092d50090075160070120092d50090210091700070072d5", + "0x92d500902a00906e00704e0092d50091ea00902a00728f0092d50092b9", + "0x90240070520092d500902400904a00728c0092d500902c00902c007050", + "0x2d50091660090660071660121542d50090120092840070540092d500929d", + "0x5405228c05004e28f0167950070120092d50090122ae1541d1007166009", + "0x1690097960580092d515429600917f00729604c04a29829a0122d5009166", + "0x90e60091660070e616a1542d50090580092550070072d5009007154007", + "0x29a00901d0070e50092d500900751400705d0092d50090075120070072d5", + "0x680092d500904a00906e0070660092d500929800902a0071730092d5009", + "0x5d00902400706a0092d500916a00904a0071750092d500904c00902c007", + "0x6a1750680661730167970071780092d50090e500902400706c0092d5009", + "0x979806e0092d515417100917f0071711700620600e40122d500917806c", + "0x17f00916600717f17d1542d500906e0092550070072d5009007154007070", + "0x901d0070740092d50090075160070730092d50090075140070072d5009", + "0x92d500906200906e00707f0092d500906000902a00707d0092d50090e4", + "0x90240070830092d500917d00904a0070810092d500917000902c007185", + "0x8118507f07d0167970070850092d50090740090240071860092d5009073", + "0x7991870092d515407c00917f00707c07a1821800760122d5009085186083", + "0x916600708608b1542d50091870092550070072d5009007154007188009", + "0x1d00708d0092d50090075160070560092d50090075160070072d5009086", + "0x2d500918200906e0070960092d500918000902a00718c0092d5009076009", + "0x2400709a0092d500908b00904a00718d0092d500907a00902c007098009", + "0x9809618c01679700718e0092d500908d00902400709c0092d5009056009", + "0x18f0092d515409400917f00709418b09118a1890122d500918e09c09a18d", + "0x1660071960a11542d500918f0092550070072d500900715400709f00979a", + "0x70a40092d50090075140070dd0092d50090075180070072d5009196009", + "0x909100906e0070ad0092d500918a00902a0070ab0092d500918900901d", + "0x70dc0092d50090a100904a0071b10092d500918b00902c0071af0092d5", + "0xad0ab0167970070b30092d50090a40090240070b10092d50090dd009024", + "0x92d51541a700917f0071a70aa0a81a40a60122d50090b30b10dc1b11af", + "0x70f20db1542d50091b70092550070072d50090071540070da00979b1b7", + "0xf00092d50090075140070f10092d500900751a0070072d50090f2009166", + "0xa800906e0070f50092d50091a400902a0070f60092d50090a600901d007", + "0xea0092d50090db00904a0070f30092d50090aa00902c0070f40092d5009", + "0xf60167970070e80092d50090f00090240070e90092d50090f1009024007", + "0x2d51540eb00917f0070eb0ec0ed0ee0ef0122d50090e80e90ea0f30f40f5", + "0xd80d71542d50090d50092550070072d50090071540070d600979c0d5009", + "0x92d50090075160070d90092d500900751c0070072d50090d8009166007", + "0x906e0070e70092d50090ee00902a0070e30092d50090ef00901d0070de", + "0x92d50090d700904a0071cd0092d50090ec00902c0071cc0092d50090ed", + "0x167970070fa0092d50090de0090240071d00092d50090d90090240070f8", + "0x1540e200917f0070e20e10e00ce0df0122d50090fa1d00f81cd1cc0e70e3", + "0x1031542d50091d40092550070072d500900715400710200979d1d40092d5", + "0x90df00901d0071050092d500900751e0070072d5009104009166007104", + "0x71d20092d50090e000906e00710b0092d50090ce00902a0071d50092d5", + "0x91050090240071d10092d500910300904a00710d0092d50090e100902c", + "0x1ca1d110d1d210b1d50167950071100092d50090120090660071ca0092d5", + "0x1c900979e1120092d51541d700917f0071d710a1d61081060122d5009110", + "0x91140091660071141cb1542d50091120092550070072d5009007154007", + "0x10600901d0071c50092d500900751e0071fc0092d500900751e0070072d5", + "0x1b40092d50091d600906e00711d0092d500910800902a0071b60092d5009", + "0x1fc0090240071b00092d50091cb00904a00711f0092d500910a00902c007", + "0x1b011f1b411d1b60167970071220092d50091c50090240071ac0092d5009", + "0x979f1a80092d515411b00917f00711b1ba1191be1c30122d50091221ac", + "0x1a30091660071a31b81542d50091a80092550070072d5009007154007124", + "0x901d0071280092d500900751e0071a10092d50090075200070072d5009", + "0x92d500911900906e00719b0092d50091be00902a0071980092d50091c3", + "0x90240071840092d50091b800904a00712e0092d50091ba00902c00719a", + "0x12e19a19b1980167970071830092d50091280090240071300092d50091a1", + "0x7a01810092d515419900917f00719919512c12a19e0122d5009183130184", + "0x916600717e1351542d50091810092550070072d5009007154007133009", + "0x1770092d500917b13515425700717b0092d50090071b00070072d500917e", + "0x12a00902a0071760092d500919e00901d0071390092d5009177009259007", + "0x16f0092d500919500902c0071740092d500912c00906e00713b0092d5009", + "0x2d500900715400716e16f17413b17601200916e0092d5009139009247007", + "0x902a00716c0092d500919e00901d00713f0092d5009133009245007007", + "0x92d500919500902c0071420092d500912c00906e00716b0092d500912a", + "0x900715400714716814216b16c0120091470092d500913f009247007168", + "0x2a0071650092d50091c300901d0071440092d50091240092450070072d5", + "0x2d50091ba00902c00715e0092d500911900906e0071610092d50091be009", + "0x715400715f15115e16116501200915f0092d5009144009247007151009", + "0x721d0092d500910600901d0070000092d50091c90092450070072d5009", + "0x910a00902c00721f0092d50091d600906e00721e0092d500910800902a", + "0x15400722122021f21e21d0120092210092d50090000092470072200092d5", + "0x72230092d50091020092450070072d50090120091730070072d5009007", + "0x90e000906e0072260092d50090ce00902a0072250092d50090df00901d", + "0x922b0092d50092230092470072280092d50090e100902c0072270092d5", + "0x70072d50090120091730070072d500900715400722b228227226225012", + "0x90ee00902a00722d0092d50090ef00901d00722c0092d50090d6009245", + "0x72310092d50090ec00902c0072300092d50090ed00906e00722f0092d5", + "0x72d500900715400723223123022f22d0120092320092d500922c009247", + "0x90a600901d0072330092d50090da0092450070072d5009012009173007", + "0x723a0092d50090a800906e0072380092d50091a400902a0072360092d5", + "0x23a23823601200923f0092d500923300924700723d0092d50090aa00902c", + "0x909f0092450070072d50090120091730070072d500900715400723f23d", + "0x72450092d500918a00902a0072430092d500918900901d0072410092d5", + "0x92410092470072490092d500918b00902c0072470092d500909100906e", + "0x120091730070072d500900715400724b24924724524301200924b0092d5", + "0x724f0092d500907600901d00724d0092d50091880092450070072d5009", + "0x907a00902c0072530092d500918200906e0072510092d500918000902a", + "0x15400725725525325124f0120092570092d500924d0092470072550092d5", + "0x72590092d50090700092450070072d50090120091730070072d5009007", + "0x906200906e00725d0092d500906000902a00725b0092d50090e400901d", + "0x92630092d50092590092470072610092d500917000902c00725f0092d5", + "0x70072d50090120091730070072d500900715400726326125f25d25b012", + "0x929800902a0072670092d500929a00901d0072650092d5009169009245", + "0x726d0092d500904c00902c00726b0092d500904a00906e0072690092d5", + "0x72d500900715400726f26d26b26926701200926f0092d5009265009247", + "0x2d50092ae0091c30070072d50090240092980070072d500904700923a007", + "0x2d50090077a10072710092d50090070210070072d5009021009293007007", + "0x72750092d50092732711540260072730092d5009273009024007273009", + "0x92790092450072790092d50092752771542b90072770092d5009007028", + "0x727f0092d50091ea00902a00727d0092d50092b900901d00727b0092d5", + "0x927b0092470072870092d500902c00902c0072840092d500902a00906e", + "0x240092980070072d500900715400728a28728427f27d01200928a0092d5", + "0x92450070072d50090210092930070072d50092ae0091c30070072d5009", + "0x92d50091ea00902a00728d0092d50092b900901d00728b0092d50091ef", + "0x92470072930092d500902c00902c0072910092d500902a00906e00728e", + "0x2980070072d500900715400729529329128e28d0120092950092d500928b", + "0x2990092d50092a60092450070072d50092ae0091c30070072d500900e009", + "0x15400906e00729c0092d500901600902a00729b0092d500900700901d007", + "0x2a40092d50092990092470072a10092d500901800902c00729f0092d5009", + "0x2d50090110090a800700e0092d50090076c10072a42a129f29c29b012009", + "0x97a20070160092d50090070160072ae0092d500900e009626007012009", + "0x92d50090160090200070072d500902000917b0070200181542d5009154", + "0x1542d51540122ae0160090070126280072ae0092d50092ae009627007016", + "0x260092d50090071b00070072d50090071540070242a60210117a301e01d", + "0x1e00902c0072b90092d500901d00902a0070280092d5009026009464007", + "0x1540070077a400900711f00702a0092d50090280094650071ea0092d5009", + "0x2b90092d500902100902a00702c0092d50090240094670070072d5009007", + "0x2a00961400702a0092d500902c0094650071ea0092d50092a600902c007", + "0x2f0092d51541eb0092280071eb0092d500902e00961500702e0092d5009", + "0x1547a60071ed0092d500902f0092e30070072d50090071540070310097a5", + "0x2d50092b900902a0070360092d50091ee0097a70071ee0092d50091ed018", + "0x1100903a0092d50090360097a80071ef0092d50091ea00902c007038009", + "0x310097a90070072d500901800917b0070072d500900715400703a1ef038", + "0x3f0092d50091ea00902c0071ec0092d50092b900902a00703c0092d5009", + "0x120092d50090077aa00704003f1ec0110090400092d500903c0097a8007", + "0x117ac0070120092d500901200919e0072ae00e1542d500900e0097ab007", + "0x1280070072d500900715400701d0201547ad0180161542d51542ae012007", + "0x1ea2b90280260242a602101e0262d500901100919a0070072d5009018009", + "0x915400902c0071ef0092d500900900902a0071ed03102f02e1eb02c02a", + "0x71ec0092d500900e00919e00703c0092d50091ea0097ae00703a0092d5", + "0x160092d500901600901d0070380361ee0112d50091ec03c03a1ef00e7af", + "0x97b20070072d50090071540070400097b103f0092d51540380097b0007", + "0x2a00092d50090071b00070072d50092a20091660072a20421542d500903f", + "0x2d50091ed03102f02e1eb02c02a0422b90280260242a602101e02629d007", + "0x729d0092d50090470092590070470092d50092a0045154257007045009", + "0x903600902c0072980092d50091ee00902a00729a0092d500901600901d", + "0x715400704c04a29829a00e00904c0092d500929d00924700704a0092d5", + "0x913b0070072d50091ed0091740070072d500901e00912e0070072d5009", + "0x1770070072d500902e0091390070072d500902f0091760070072d5009031", + "0x70072d500902a00917e0070072d500902c00917b0070072d50091eb009", + "0x72d50090280091810070072d50092b90091330070072d5009021009165", + "0x2d50092a60091840070072d50090240091300070072d5009026009183007", + "0x902a00728f0092d500901600901d0072960092d5009040009245007007", + "0x92d50092960092470070500092d500903600902c00704e0092d50091ee", + "0x72d500901d0091280070072d500900715400728c05004e28f00e00928c", + "0x92d50090070210070072d500900e0091280070072d5009011009298007", + "0x521540260070540092d50090540090240070540092d50090072e6007052", + "0x92d50091660581542b90070580092d50090070280071660092d5009054", + "0x902a0070e60092d500902000901d00716a0092d5009169009245007169", + "0x92d500916a0092470070e50092d500915400902c00705d0092d5009009", + "0x15400900e7390070120092d500900e0096260070e40e505d0e600e0090e4", + "0x70072d500900715400701e01d0200117b30180162ae0112d5154012011", + "0x260241547b40070260092d50090180090240070240092d500900700901d", + "0x92d500901600902c0072ae0092d50092ae00902a0072a60211542d5009", + "0x7b60070072d50090071540072b90097b50280092d51542a6009180007016", + "0x2d500902a0097b800702a0092d50091ea0097b70071ea0092d5009028009", + "0x2c00702e0092d50092ae00902a0071eb0092d500902100901d00702c009", + "0x3102f02e1eb00e0090310092d500902c0097b900702f0092d5009016009", + "0x1ed0092d50090070210070072d50092b90091660070072d5009007154007", + "0x1ee1ed1540260071ee0092d50091ee0090240071ee0092d50090077ba007", + "0x1ef0092d50090360381542b90070380092d50090070280070360092d5009", + "0x2ae00902a00703c0092d500902100901d00703a0092d50091ef0097bb007", + "0x400092d500903a0097b900703f0092d500901600902c0071ec0092d5009", + "0x420092d500901e0097bc0070072d500900715400704003f1ec03c00e009", + "0x700901d0072a00092d50092a20097b80072a20092d50090420097b7007", + "0x29d0092d500901d00902c0070470092d500902000902a0070450092d5009", + "0x2d51540070097bd00729a29d04704500e00929a0092d50092a00097b9007", + "0x70110092d500900900913f0070072d50090071540071540097be009009", + "0x1540070120090090120092d500900e00916b00700e0092d500901100916c", + "0x160092d50091542ae1542b90072ae0092d50090070280070072d5009007", + "0x70200090090200092d500901800916b0070180092d5009016009142007", + "0x180162ae0112d515401201115400900e7390070120092d500900e009626", + "0x70240092d500900700901d0070072d500900715400701e01d0200117bf", + "0x902a0072a60211542d50090260241547c00070260092d5009018009024", + "0x92d51542a600907c0070160092d500901600902c0072ae0092d50092ae", + "0x7c30071ea0092d50090280097c20070072d50090071540072b90097c1028", + "0x2d500902100901d00702c0092d500902a0097c400702a0092d50091ea009", + "0x7c500702f0092d500901600902c00702e0092d50092ae00902a0071eb009", + "0x1660070072d500900715400703102f02e1eb00e0090310092d500902c009", + "0x71ee0092d50090077c60071ed0092d50090070210070072d50092b9009", + "0x90070280070360092d50091ee1ed1540260071ee0092d50091ee009024", + "0x3a0092d50091ef0097c70071ef0092d50090360381542b90070380092d5", + "0x1600902c0071ec0092d50092ae00902a00703c0092d500902100901d007", + "0x15400704003f1ec03c00e0090400092d500903a0097c500703f0092d5009", + "0x2a20092d50090420097c30070420092d500901e0097c80070072d5009007", + "0x2000902a0070450092d500900700901d0072a00092d50092a20097c4007", + "0x29a0092d50092a00097c500729d0092d500901d00902c0070470092d5009", + "0x71540071540097ca0090092d51540070097c900729a29d04704500e009", + "0x700e0092d500901100915f0070110092d50090090091510070072d5009", + "0x90070280070072d50090071540070120090090120092d500900e009000", + "0x180092d500901600921d0070160092d50091542ae1542b90072ae0092d5", + "0x1541542d51540090071546890070200090090200092d5009018009000007", + "0x70160092d50090072cf0070072d50090071540072ae01200e0117cb011", + "0x180090960070200092d500915400901d0070180092d50090160111542d1", + "0x2ae1542d10070072d50090071540070077cc00900711f00701d0092d5009", + "0x92d500901e0090960070200092d500900e00901d00701e0092d5009012", + "0x211540092a60092d500901d0096010070210092d50090200095ac00701d", + "0x120112d515400e15400900700e73900700e0092d50090110096260072a6", + "0x92d50090160096040070072d500900715400701d0200180117cd0162ae", + "0x902c0072a60092d500901200902a0070210092d500901e0097ce00701e", + "0x1540070260242a60110090260092d50090210097cf0070240092d50092ae", + "0x2b90092d500901800902a0070280092d500901d0097d00070072d5009007", + "0x1ea2b901100902a0092d50090280097cf0071ea0092d500902000902c007", + "0x2bb0070072d50090071540071540097d20090092d51540070097d100702a", + "0x2d500900e0092be00700e0092d50090110092bc0070110092d5009009009", + "0x2b90072ae0092d50090070280070072d5009007154007012009009012009", + "0x90180092be0070180092d50090160092c00070160092d50091542ae154", + "0x2d500900e0092300070120092d50090110096260070200090090200092d5", + "0x1e01d0200117d30180161542d51542ae0121540090070126280072ae009", + "0x92d50090210094640070210092d50090071b00070072d5009007154007", + "0x94650070260092d500901800902c0070240092d500901600902a0072a6", + "0x1e0094670070072d50090071540070280260240110090280092d50092a6", + "0x2a0092d500901d00902c0071ea0092d500902000902a0072b90092d5009", + "0x92d51540070097d400702c02a1ea01100902c0092d50092b9009465007", + "0x60d0070110092d500900900960c0070072d50090071540071540097d5009", + "0x71540070120090090120092d500900e00960b00700e0092d5009011009", + "0x70160092d50091542ae1542b90072ae0092d50090070280070072d5009", + "0x7d60070200090090200092d500901800960b0070180092d500901600960a", + "0x71a10071540090091540092d50090090095250070090092d5009007009", + "0x180097da0160097d92ae0097d80120092d50401540097d70070072d5009", + "0x97e10240097e02a60097df0210097de01e0097dd01d0097dc0200097db", + "0x7e81eb0097e702c0097e602a0097e51ea0097e42b90097e30280097e2026", + "0x380097ee0360097ed1ee0097ec1ed0097eb0310097ea02f0097e902e009", + "0x97f50400097f403f0097f31ec0097f203c0097f103a0097f01ef0097ef", + "0x90077f90070072d50090071540070450097f82a00097f72a20097f6042", + "0x29d0092d50090470111540260070470092d50090470090240070470092d5", + "0xe0090520072960092d500929d00905200704c0092d5009012009251007", + "0x4a00916600704a29829a0112d500928f29604c0117fa00728f0092d5009", + "0x70500092d500900900902a00704e0092d500900700901d0070072d5009", + "0x7fb00900711f0070520092d500929800905200728c0092d500929a009052", + "0x2d50090540090240070540092d50090077fc0070072d5009007154007007", + "0x70e60092d50092ae0092710071660092d5009054011154026007054009", + "0x5d0e60117fd0070e50092d500900e00905200705d0092d5009166009052", + "0x2d500900700901d0070072d500916a00916600716a1690580112d50090e5", + "0x5200728c0092d50090580090520070500092d500900900902a00704e009", + "0x7fe0070072d50090071540070077fb00900711f0070520092d5009169009", + "0x2d50090e40111540260070e40092d50090e40090240070e40092d5009007", + "0x520070660092d50090600090520071730092d500901600928e007060009", + "0x1660071711700620112d50090680661730117ff0070680092d500900e009", + "0x92d500900900902a00704e0092d500900700901d0070072d5009171009", + "0x711f0070520092d500917000905200728c0092d5009062009052007050", + "0x1750090240071750092d50090078000070072d50090071540070077fb009", + "0x92d500901800943e00706a0092d50091750111540260071750092d5009", + "0x1180100717f0092d500900e00905200717d0092d500906a009052007070", + "0x700901d0070072d500906e00916600706e17806c0112d500917f17d070", + "0x28c0092d500906c0090520070500092d500900900902a00704e0092d5009", + "0x72d50090071540070077fb00900711f0070520092d5009178009052007", + "0x730111540260070730092d50090730090240070730092d5009007802007", + "0x7c0092d500907400905200707a0092d500902000946d0070740092d5009", + "0x1821800760112d500907d07c07a01180300707d0092d500900e009052007", + "0x900900902a00704e0092d500900700901d0070072d5009182009166007", + "0x70520092d500918000905200728c0092d50090760090520070500092d5", + "0x2400707f0092d50090078040070072d50090071540070077fb00900711f", + "0x901d00957c0071850092d500907f01115402600707f0092d500907f009", + "0x71880092d500900e0090520071870092d50091850090520070850092d5", + "0x1d0070072d50091860091660071860830810112d5009188187085011805", + "0x2d50090810090520070500092d500900900902a00704e0092d5009007009", + "0x90071540070077fb00900711f0070520092d500908300905200728c009", + "0x15402600708b0092d500908b00902400708b0092d50090078060070072d5", + "0x2d500908600905200718a0092d500901e0095780070860092d500908b011", + "0x560112d500918b09118a01180700718b0092d500900e009052007091009", + "0x902a00704e0092d500900700901d0070072d500918900916600718908d", + "0x92d500908d00905200728c0092d50090560090520070500092d5009009", + "0x940092d50090078080070072d50090071540070077fb00900711f007052", + "0x901d00718c0092d50090940111540260070940092d5009094009024007", + "0x92d50090210095a200709c0092d500900900902a00709a0092d5009007", + "0x1280900709f0092d500900e00905200718f0092d500918c00905200718e", + "0x80a0a10092d515418d00961f00718d0980960112d500909f18f18e09c09a", + "0x1660070a60a40dd0112d50090a10096210070072d5009007154007196009", + "0x92d500909800902a00704e0092d500909600901d0070072d50090a6009", + "0x711f0070520092d50090a400905200728c0092d50090dd009052007050", + "0x901d0071a40092d500919600980b0070072d50090071540070077fb009", + "0x92d50091a40092ec0070aa0092d500909800902a0070a80092d5009096", + "0x70ab0092d500900780c0070072d50090071540071a70aa0a80110091a7", + "0x2a60095d70070ad0092d50090ab0111540260070ab0092d50090ab009024", + "0x1b70092d500900e0090520070b30092d50090ad0090520070b10092d5009", + "0x70072d50090dc0091660070dc1b11af0112d50091b70b30b101180d007", + "0x91af0090520070500092d500900900902a00704e0092d500900700901d", + "0x71540070077fb00900711f0070520092d50091b100905200728c0092d5", + "0x260070da0092d50090da0090240070da0092d500900780e0070072d5009", + "0x90db0090520070ef0092d50090240092ab0070db0092d50090da011154", + "0x112d50090ed0ee0ef01180f0070ed0092d500900e0090520070ee0092d5", + "0x2a00704e0092d500900700901d0070072d50090f00091660070f00f10f2", + "0x2d50090f100905200728c0092d50090f20090520070500092d5009009009", + "0x92d50090078100070072d50090071540070077fb00900711f007052009", + "0x2b30070eb0092d50090ec0111540260070ec0092d50090ec0090240070ec", + "0x2d500900e0090520070ea0092d50090eb0090520070f30092d5009026009", + "0x2d50090f40091660070f40f50f60112d50090e90ea0f30118110070e9009", + "0x90520070500092d500900900902a00704e0092d500900700901d007007", + "0x70077fb00900711f0070520092d50090f500905200728c0092d50090f6", + "0xe80092d50090e80090240070e80092d50090078120070072d5009007154", + "0x902a0070d90092d500900700901d0070d50092d50090e8011154026007", + "0x92d50090d50090520070df0092d50090280094a50070de0092d5009009", + "0x112d50090e00ce0df0de0d90128130070e00092d500900e0090520070ce", + "0x72d50090071540070e20098140e10092d51540d800961f0070d80d70d6", + "0x901d0070072d50091cc0091660071cc0e70e30112d50090e1009621007", + "0x92d50090e30090520070500092d50090d700902a00704e0092d50090d6", + "0x2d50090071540070077fb00900711f0070520092d50090e700905200728c", + "0x902a0070f80092d50090d600901d0071cd0092d50090e200980b007007", + "0x1540070fa1d00f80110090fa0092d50091cd0092ec0071d00092d50090d7", + "0x71d40092d50091d40090240071d40092d50090078150070072d5009007", + "0x900902a0071060092d500900700901d0071020092d50091d4011154026", + "0x10a0092d50091020090520071d60092d50092b90094b20071080092d5009", + "0x1030112d50091d710a1d61081060128160071d70092d500900e009052007", + "0x70072d500900715400710b0098171d50092d515410500961f007105104", + "0x10300901d0070072d50091d10091660071d110d1d20112d50091d5009621", + "0x28c0092d50091d20090520070500092d500910400902a00704e0092d5009", + "0x72d50090071540070077fb00900711f0070520092d500910d009052007", + "0x10400902a0071100092d500910300901d0071ca0092d500910b00980b007", + "0x71540071c91121100110091c90092d50091ca0092ec0071120092d5009", + "0x260071cb0092d50091cb0090240071cb0092d50090078180070072d5009", + "0x900900902a0071be0092d500900700901d0071140092d50091cb011154", + "0x711b0092d50091140090520071ba0092d50091ea0094cc0071190092d5", + "0x1c51fc0112d50091b611b1ba1191be0128190071b60092d500900e009052", + "0x6210070072d50090071540071b400981a11d0092d51541c300961f0071c3", + "0x91fc00901d0070072d50091ac0091660071ac1b011f0112d500911d009", + "0x728c0092d500911f0090520070500092d50091c500902a00704e0092d5", + "0x70072d50090071540070077fb00900711f0070520092d50091b0009052", + "0x91c500902a0071a80092d50091fc00901d0071220092d50091b400980b", + "0x90071540071b81241a80110091b80092d50091220092ec0071240092d5", + "0x1540260071a30092d50091a30090240071a30092d500900781b0070072d5", + "0x2d50091a100905200712c0092d500902a0094d50071a10092d50091a3011", + "0x1280112d500919919512c01181c0071990092d500900e009052007195009", + "0x902a00704e0092d500900700901d0070072d500912a00916600712a19e", + "0x92d500919e00905200728c0092d50091280090520070500092d5009009", + "0x1980092d500900781d0070072d50090071540070077fb00900711f007052", + "0x981e00719b0092d50091980111540260071980092d5009198009024007", + "0x92d500900e0090520071830092d500919b0090520071300092d500902c", + "0x72d500918400916600718412e19a0112d500918118313001181f007181", + "0x19a0090520070500092d500900900902a00704e0092d500900700901d007", + "0x1540070077fb00900711f0070520092d500912e00905200728c0092d5009", + "0x71330092d50091330090240071330092d50090078200070072d5009007", + "0x1350090520071390092d50091eb0098210071350092d5009133011154026", + "0x2d500913b17613901182200713b0092d500900e0090520071760092d5009", + "0x704e0092d500900700901d0070072d500917700916600717717b17e011", + "0x917b00905200728c0092d500917e0090520070500092d500900900902a", + "0x2d50090078230070072d50090071540070077fb00900711f0070520092d5", + "0x716f0092d50091740111540260071740092d5009174009024007174009", + "0x900e0090520071420092d500916f00905200716b0092d500902e009824", + "0x916c00916600716c13f16e0112d500916814216b0112ed0071680092d5", + "0x520070500092d500900900902a00704e0092d500900700901d0070072d5", + "0x77fb00900711f0070520092d500913f00905200728c0092d500916e009", + "0x92d50091470090240071470092d50090078250070072d5009007154007", + "0x520071510092d500902f0098260071440092d5009147011154026007147", + "0x15f1510118270070000092d500900e00905200715f0092d5009144009", + "0x92d500900700901d0070072d500915e00916600715e1611650112d5009", + "0x905200728c0092d50091650090520070500092d500900900902a00704e", + "0x78280070072d50090071540070077fb00900711f0070520092d5009161", + "0x92d500921d01115402600721d0092d500921d00902400721d0092d5009", + "0x90520072250092d500921e0090520072230092d500903100982900721e", + "0x916600722122021f0112d500922622522301182a0072260092d500900e", + "0x500092d500900900902a00704e0092d500900700901d0070072d5009221", + "0x900711f0070520092d500922000905200728c0092d500921f009052007", + "0x92270090240072270092d500900782b0070072d50090071540070077fb", + "0x22f0092d50091ed00982c0072280092d50092270111540260072270092d5", + "0x22f01182d0072310092d500900e0090520072300092d5009228009052007", + "0x900700901d0070072d500922d00916600722d22c22b0112d5009231230", + "0x728c0092d500922b0090520070500092d500900900902a00704e0092d5", + "0x70072d50090071540070077fb00900711f0070520092d500922c009052", + "0x92320111540260072320092d50092320090240072320092d500900782e", + "0x723f0092d500923300905200723d0092d50091ee00982f0072330092d5", + "0x723a2382360112d500924123f23d0118300072410092d500900e009052", + "0x2d500900900902a00704e0092d500900700901d0070072d500923a009166", + "0x11f0070520092d500923800905200728c0092d5009236009052007050009", + "0x90240072430092d50090072eb0070072d50090071540070077fb009007", + "0x2d50090360098310072450092d50092430111540260072430092d5009243", + "0x8320072510092d500900e00905200724f0092d500924500905200724d009", + "0x901d0070072d500924b00916600724b2492470112d500925124f24d011", + "0x92d50092470090520070500092d500900900902a00704e0092d5009007", + "0x2d50090071540070077fb00900711f0070520092d500924900905200728c", + "0x111540260072530092d50092530090240072530092d5009007833007007", + "0x92d500925500905200725d0092d50090380098340072550092d5009253", + "0x2592570112d500926125f25d0118350072610092d500900e00905200725f", + "0x900902a00704e0092d500900700901d0070072d500925b00916600725b", + "0x520092d500925900905200728c0092d50092570090520070500092d5009", + "0x72630092d50090078360070072d50090071540070077fb00900711f007", + "0x1ef0098370072650092d50092630111540260072630092d5009263009024", + "0x2710092d500900e00905200726f0092d500926500905200726d0092d5009", + "0x70072d500926b00916600726b2692670112d500927126f26d011838007", + "0x92670090520070500092d500900900902a00704e0092d500900700901d", + "0x71540070077fb00900711f0070520092d500926900905200728c0092d5", + "0x260072730092d50092730090240072730092d50090078390070072d5009", + "0x927500905200727d0092d500903a00983a0072750092d5009273011154", + "0x112d500928427f27d01183b0072840092d500900e00905200727f0092d5", + "0x2a00704e0092d500900700901d0070072d500927b00916600727b279277", + "0x2d500927900905200728c0092d50092770090520070500092d5009009009", + "0x92d500900783c0070072d50090071540070077fb00900711f007052009", + "0x83d00728a0092d50092870111540260072870092d5009287009024007287", + "0x2d500900e0090520072930092d500928a0090520072910092d500903c009", + "0x2d500928e00916600728e28d28b0112d500929529329101183e007295009", + "0x90520070500092d500900900902a00704e0092d500900700901d007007", + "0x70077fb00900711f0070520092d500928d00905200728c0092d500928b", + "0x2990092d50092990090240072990092d500900783f0070072d5009007154", + "0x90520072a40092d50091ec00984000729b0092d5009299011154026007", + "0x92aa2a92a40118410072aa0092d500900e0090520072a90092d500929b", + "0x4e0092d500900700901d0070072d50092a10091660072a129f29c0112d5", + "0x29f00905200728c0092d500929c0090520070500092d500900900902a007", + "0x90078420070072d50090071540070077fb00900711f0070520092d5009", + "0x2ac0092d50092ab0111540260072ab0092d50092ab0090240072ab0092d5", + "0xe0090520072b50092d50092ac0090520072b30092d500903f009843007", + "0x2b10091660072b12b02af0112d50092b82b52b30118440072b80092d5009", + "0x70500092d500900900902a00704e0092d500900700901d0070072d5009", + "0x7fb00900711f0070520092d50092b000905200728c0092d50092af009052", + "0x2d50092ba0090240072ba0092d50090078450070072d5009007154007007", + "0x72c10092d50090400098460072bb0092d50092ba0111540260072ba009", + "0x2c22c10118470072c70092d500900e0090520072c20092d50092bb009052", + "0x2d500900700901d0070072d50092c00091660072c02be2bc0112d50092c7", + "0x5200728c0092d50092bc0090520070500092d500900900902a00704e009", + "0x8480070072d50090071540070077fb00900711f0070520092d50092be009", + "0x2d50092c80111540260072c80092d50092c80090240072c80092d5009007", + "0x520074130092d50092c90090520074110092d50090420098490072c9009", + "0x1660072d12cf2ca0112d500941441341101184a0074140092d500900e009", + "0x92d500900900902a00704e0092d500900700901d0070072d50092d1009", + "0x711f0070520092d50092cf00905200728c0092d50092ca009052007050", + "0x4160090240074160092d500900784b0070072d50090071540070077fb009", + "0x92d50092a200984c0072d60092d50094160111540260074160092d5009", + "0x1184d00741d0092d500900e00905200741c0092d50092d600905200741b", + "0x700901d0070072d50094190091660074194184170112d500941d41c41b", + "0x28c0092d50094170090520070500092d500900900902a00704e0092d5009", + "0x72d50090071540070077fb00900711f0070520092d5009418009052007", + "0x41e01115402600741e0092d500941e00902400741e0092d500900784e007", + "0x42c0092d500941f00905200742b0092d50092a000984f00741f0092d5009", + "0x4254244200112d500942e42c42b01185000742e0092d500900e009052007", + "0x900900902a00704e0092d500900700901d0070072d5009425009166007", + "0x70520092d500942400905200728c0092d50094200090520070500092d5", + "0x240074300092d50090078510070072d50090071540070077fb00900711f", + "0x90450098520074310092d50094300111540260074300092d5009430009", + "0x74410092d500900e00905200743f0092d500943100905200743e0092d5", + "0x1d0070072d500943d00916600743d4374320112d500944143f43e011853", + "0x2d50094320090520070500092d500900900902a00704e0092d5009007009", + "0x118540074450092d50090071b00070520092d500943700905200728c009", + "0x904e00901d00744d0092d500944b00985500744b0092d500944505228c", + "0x94510092d500944d0092ec0074500092d500905000902a00744f0092d5", + "0x1540092d50090090095250070090092d500900700985600745145044f011", + "0x91540092d50090090095250070090092d5009007009857007154009009", + "0x785800700e0092d500901100921f0070072d5009154009181007154009", + "0x160092d50092ae0092ef0072ae0092d50090120098590070120092d5009", + "0x70200181542d500900e01600901185a0070160092d5009016009024007", + "0x901e00902400701e0092d500901d0092ef00701d0092d5009020009859", + "0x92d500902100901d0072a60211542d500901e00715485b00701e0092d5", + "0x240110090280092d50092a60095ee0070260092d500901800906e007024", + "0x1540070162ae01201185d00e0111540112d515400900715485c007028026", + "0x200092d500915400902a0070180092d500900e00985e0070072d5009007", + "0x900711f00701e0092d500901800985f00701d0092d500901100902c007", + "0x1200902a0070210092d50090160098610070072d5009007154007007860", + "0x1e0092d500902100985f00701d0092d50092ae00902c0070200092d5009", + "0x2a60096510072a60092d50090240098630070240092d500901e009862007", + "0x92d50090260096530070072d50090071540070280098640260092d5154", + "0x902a00702a0092d50091ea0098660071ea0092d50092b90098650072b9", + "0x92d500902a0098670071eb0092d500901d00902c00702c0092d5009020", + "0x2f0092d50090280098680070072d500900715400702e1eb02c01100902e", + "0x2f0098670071ed0092d500901d00902c0070310092d500902000902a007", + "0x95250070090092d50090070098690071ee1ed0310110091ee0092d5009", + "0x90095250070090092d500900700986a0071540090091540092d5009009", + "0x2d500901100921f0070072d50091540091830071540090091540092d5009", + "0x92ef0072ae0092d50090120098590070120092d500900786b00700e009", + "0x900e01600901185a0070160092d50090160090240070160092d50092ae", + "0x1e0092d500901d0092ef00701d0092d50090200098590070200181542d5", + "0x1d0072a60211542d500901e00715485b00701e0092d500901e009024007", + "0x2d50092a60095ee0070260092d500901800906e0070240092d5009021009", + "0x92d500900786c0070072d5009154009130007028026024011009028009", + "0x92ef0072ae0092d50090110092300070120092d500900e00985900700e", + "0x92ae01600901185a0070160092d50090160090240070160092d5009012", + "0x1e0092d500901d0092ef00701d0092d50090200098590070200181542d5", + "0x1d0072a60211542d500901e00715485b00701e0092d500901e009024007", + "0x2d50092a60095ee0070260092d500901800906e0070240092d5009021009", + "0x915400906e0070200092d500900700901d007028026024011009028009", + "0x70210092d500901200906600701e0092d500900e00929c00701d0092d5", + "0x72a60092d50090070160070180162ae0112d500902101e01d02000e646", + "0x92a60090200071ea0092d500901100902c0072b90092d500900900902a", + "0x2d500902c02a1ea2b900e73400702c0092d50090180095ee00702a0092d5", + "0x1eb0092d500902e00973600702e0092d5009028009735007028026024011", + "0x90ef0070072d500900715400703100986d02f0092d51541eb0090f0007", + "0x92d50091ee0095050071ee0092d50091ed0095040071ed0092d500902f", + "0x906e0071ef0092d500902400902a0070380092d50092ae00901d007036", + "0x92d500903600950600703c0092d500902600902c00703a0092d5009016", + "0x2d50090310095070070072d50090071540071ec03c03a1ef0380120091ec", + "0x6e0070420092d500902400902a0070400092d50092ae00901d00703f009", + "0x2d500903f0095060072a00092d500902600902c0072a20092d5009016009", + "0x986e00700e0092d50091540091980070452a02a2042040012009045009", + "0x90071540072ae0098700120092d515401100986f0070110092d500900e", + "0x98730180092d51540160098720070160092d50090120098710070072d5", + "0x702101e01d0112d50090180090070118740070072d5009007154007020", + "0x2d50092a60094740072a60092d500901e0094730070072d50090210090a6", + "0x1540090280092d50090240094750070260092d500901d00901d007024009", + "0x90090090a60070072d50090200091660070072d5009007154007028026", + "0x1ea0090240071ea0092d50090078750072b90092d50090070210070072d5", + "0x2c0092d500900702800702a0092d50091ea2b91540260071ea0092d5009", + "0x901d00702e0092d50091eb0094760071eb0092d500902a02c1542b9007", + "0x715400703102f1540090310092d500902e00947500702f0092d5009007", + "0x1d0071ed0092d50092ae0094760070072d50090090090a60070072d5009", + "0x1d0070361ee1540090360092d50091ed0094750071ee0092d5009007009", + "0x2d500900e00967100701d0092d500915400906e0070200092d5009007009", + "0x112d500902101e01d02000e2f00070210092d500901200967200701e009", + "0x2a0071ea0092d50092ae00901d0072a60092d50090070160070180162ae", + "0x2d50092a600902000702c0092d500901100902c00702a0092d5009009009", + "0x2d500902e1eb02c02a1ea01287600702e0092d50090180095ee0071eb009", + "0x900715400703100987802f0092d51542b90098770072b902802602400e", + "0x87b0070360092d50091ed00987a0071ed0092d500902f0098790070072d5", + "0x71540071ef00987c0380092d51541ee0090910071ee0092d5009036009", + "0x703c0092d500903a00941600703a0092d500903800918b0070072d5009", + "0x902600902a00703f0092d500902400901d0071ec0092d500903c0092d6", + "0x72a20092d500902800902c0070420092d500901600906e0070400092d5", + "0x72d50090071540072a02a204204003f0120092a00092d50091ec009417", + "0x2600902a0070470092d500902400901d0070450092d50091ef009418007", + "0x2980092d500902800902c00729a0092d500901600906e00729d0092d5009", + "0x2d500900715400704a29829a29d04701200904a0092d5009045009417007", + "0x902a0072960092d500902400901d00704c0092d5009031009418007007", + "0x92d500902800902c00704e0092d500901600906e00728f0092d5009026", + "0x700941f00728c05004e28f29601200928c0092d500904c009417007050", + "0xe0092d500915400941f0070110092d500900900941f0071540092d5009", + "0x15400700787d0072d515401200e1546a80070120092d500901100941f007", + "0x70160092d50092ae00923d0072ae0092d50090071b00070072d5009007", + "0x70072d500900715400700787e00900711f0070180092d50090160090ec", + "0x2d500901d0090ec00701d0092d50090200092380070200092d50090071b0", + "0x92d500900700901d00701e00900901e0092d50090180092c9007018009", + "0x1187f0070160092d50091540090960072ae0092d5009009009096007012", + "0x92410070200181542d500900e00988000700e0111542d50090162ae012", + "0x2d500901d0091660070072d500900715400701e00988101d0092d5154020", + "0x711f0072a60092d500902100942c0070210092d500901800942b007007", + "0x1800918c0070072d500901e0091660070072d5009007154007007882009", + "0x42c0070260092d500902400942e0070240092d50090071b00070072d5009", + "0x2d50092a600942c0070280092d500901100901d0072a60092d5009026009", + "0x92d500901100969c00700e0092d50090070210072b90281540092b9009", + "0x91690070180161542d500900e0090580072ae0092d5009007883007012", + "0x2ae0092d50092ae0090240070200092d500901800916a0070072d5009016", + "0x1d0112d51540202ae0121540090125960070200092d5009020009175007", + "0x92d50090210094e60070072d50090071540070260242a601188402101e", + "0x94e70071ea0092d500901e00902c0072b90092d500901d00902a007028", + "0x92d70070072d500900715400700788500900711f00702a0092d5009028", + "0x92d500902400902c0072b90092d50092a600902a00702c0092d5009026", + "0x96a100702e0092d500902a0096a000702a0092d500902c0094e70071ea", + "0x900715400703100988602f0092d51541eb00959b0071eb0092d500902e", + "0x1750071ef0092d500900700901d0071ed0092d500902f00959d0070072d5", + "0x90e40070380361ee0112d500903a1ef15418d00703a0092d50091ed009", + "0x2d50090071540071ec00988703c0092d515403800909a0070072d5009036", + "0x901d0070400092d500903f0092d600703f0092d500903c009416007007", + "0x92d50091ea00902c0072a20092d50092b900902a0070420092d50091ee", + "0x2d50090071540070452a02a204200e0090450092d50090400094170072a0", + "0x2d50090076a40070470092d50090070210070072d50091ec009166007007", + "0x729a0092d500929d04715402600729d0092d500929d00902400729d009", + "0x904a00941800704a0092d500929a2981542b90072980092d5009007028", + "0x728f0092d50092b900902a0072960092d50091ee00901d00704c0092d5", + "0x4e28f29600e0090500092d500904c00941700704e0092d50091ea00902c", + "0x900700901d00728c0092d50090310094180070072d5009007154007050", + "0x71660092d50091ea00902c0070540092d50092b900902a0070520092d5", + "0x262d500901100919a00705816605405200e0090580092d500928c009417", + "0x900e00912e0071ea2b90280260242a602101e01d0200180162ae01200e", + "0x160091300070072d50092ae0091840070072d50090120091650070072d5", + "0x91330070072d50090200091810070072d50090180091830070072d5009", + "0x1770070072d50092a600917b0070072d500902100917e0070072d500901d", + "0x70072d50090280091760070072d50090260091390070072d5009024009", + "0x92d500900700901d0070072d50091ea0091740070072d50092b900913b", + "0x97ae0071ed0092d500915400902c0070310092d500900900902a00702f", + "0x702e1eb02c02a00e2d50091ee1ed03102f00e8880071ee0092d500901e", + "0x360096810070072d50090071540070380098890360092d515402e00967f", + "0x3c0092d500903a00988b00703a0092d50091ef00988a0071ef0092d5009", + "0x1eb00902c00703f0092d500902c00902a0071ec0092d500902a00901d007", + "0x15400704204003f1ec00e0090420092d500903c00988c0070400092d5009", + "0x2a00092d500902a00901d0072a20092d50090380092ee0070072d5009007", + "0x2a200988c0070470092d50091eb00902c0070450092d500902c00902a007", + "0x2cf0070090092d500900700988d00729d0470452a000e00929d0092d5009", + "0x2d50090110090960070110092d50091540091542d10071540092d5009007", + "0x92d50090090090960070120092d500900700901d00700e00900900e009", + "0xe0111542d50090162ae01201188e0070160092d50091540090960072ae", + "0x94160070072d500900715400702000988f0180092d515400e00909a007", + "0x92d500901100901d00701e0092d500901d0092d600701d0092d5009018", + "0x70072d50090071540072a60211540092a60092d500901e009417007021", + "0x260092d50090078900070240092d50090070210070072d5009020009166", + "0x70280070280092d50090260241540260070260092d5009026009024007", + "0x92d50091ea0094180071ea0092d50090282b91542b90072b90092d5009", + "0x2c1540091eb0092d500902a00941700702c0092d500901100901d00702a", + "0x98920070110092d500900e00989100700e0092d50091540090960071eb", + "0x2d50090120098940070072d50090071540072ae0098930120092d5154011", + "0x70072d50090071540070200098960180092d5154016009895007016009", + "0x280092d500901d00901d0072a602101e01d00e2d5009018009007011897", + "0x1660070260241542d50092b90281548990072b90092d50092a6009898007", + "0x2d50091ea00989b0071ea0092d500902101e15489a0070072d5009026009", + "0x2d60071eb0092d500902a0094160070072d500902c00918c00702c02a154", + "0x2d500902e00941700702f0092d500902400901d00702e0092d50091eb009", + "0x70072d50090200091660070072d500900715400703102f154009031009", + "0x1ee0092d50090078750071ed0092d50090070210070072d500900900918c", + "0x70280070360092d50091ee1ed1540260071ee0092d50091ee009024007", + "0x92d50091ef0094180071ef0092d50090360381542b90070380092d5009", + "0x3c1540091ec0092d500903a00941700703c0092d500900700901d00703a", + "0x2d50092ae0094180070072d500900900918c0070072d50090071540071ec", + "0x1540090420092d500903f0094170070400092d500900700901d00703f009", + "0x90091540092d50090090095250070090092d500900700989c007042040", + "0xe60070072d500900715400715400989e0090092d515400700989d007154", + "0x2d500900e0091eb00700e0092d500901100905d0070110092d5009009009", + "0x2b90072ae0092d50090070280070072d5009007154007012009009012009", + "0x90180091eb0070180092d50090160091ea0070160092d50091542ae154", + "0x2d500901100902c00701d0092d500900900902a0070200090090200092d5", + "0x92d51540200091960070200180160112d500901e01d15449500701e009", + "0x66d0070240092d50090210090dd0070072d50090071540072a600989f021", + "0x92d50090240091980071ea0092d500900700901d0070260092d5009007", + "0x2b90281542d500902c02a1ea01166e00702c0092d500902600919800702a", + "0x74130070072d500900715400702e0098a01eb0092d51542b9009196007", + "0x1ed0092d500903102f1542d10070310092d50090072cf00702f0092d5009", + "0x1ed0090960071ef0092d50092ae0090960070380092d500902800901d007", + "0x1540360090910070361ee1542d500903a1ef0380118a100703a0092d5009", + "0x3f0262d500900e00919a0070072d50090071540071ec0098a203c0092d5", + "0x2d50091eb0090dd00704e28f29604c04a29829a29d0470452a02a2042040", + "0x70520092d500903c00918b00728c0092d5009050012154670007050009", + "0x915400906e00705d0092d500901600902a0070e60092d50091ee00901d", + "0x70600092d50090470096710070e40092d500901800902c0070e50092d5", + "0x5d0e60168a30071700092d50090520090960070620092d500928c009672", + "0x92d515416a0098a400716a1690581660540122d50091700620600e40e5", + "0x70680661542d50091710098a60070072d50090071540071730098a5171", + "0x2a204204003f02629d0071750092d50090071b00070072d5009068009166", + "0x17506a15425700706a0092d500904e28f29604c04a29829a29d0660452a0", + "0x6e0092d500905400901d0071780092d500906c00925900706c0092d5009", + "0x16900902c00717d0092d500905800906e0070700092d500916600902a007", + "0x707317f17d07006e0120090730092d500917800924700717f0092d5009", + "0x70072d500904e0091740070072d500903f00912e0070072d5009007154", + "0x72d500904c0091390070072d50092960091760070072d500928f00913b", + "0x2d500929a00917e0070072d500929800917b0070072d500904a009177007", + "0x90450091810070072d50090400091650070072d500929d009135007007", + "0x420091840070072d50092a20091300070072d50092a00091830070072d5", + "0x70760092d500905400901d0070740092d50091730092450070072d5009", + "0x916900902c0071820092d500905800906e0071800092d500916600902a", + "0x15400707c07a18218007601200907c0092d500907400924700707a0092d5", + "0x1730070072d50091eb0094a90070072d500900e0092980070072d5009007", + "0x92d50091ee00901d00707d0092d50091ec0092450070072d5009012009", + "0x902c0070810092d500915400906e0071850092d500901600902a00707f", + "0x18608308118507f0120091860092d500907d0092470070830092d5009018", + "0x72d50092ae00918c0070072d500900e0092980070072d5009007154007", + "0x902800901d0070850092d500902e0092450070072d5009012009173007", + "0x708b0092d500915400906e0071880092d500901600902a0071870092d5", + "0x8b1881870120090560092d50090850092470070860092d500901800902c", + "0x92ae00918c0070072d500900e0092980070072d5009007154007056086", + "0x901d00708d0092d50092a60092450070072d50090120091730070072d5", + "0x92d500915400906e00718a0092d500901600902a0071890092d5009007", + "0x1890120090940092d500908d00924700718b0092d500901800902c007091", + "0x1540092d50090090095250070090092d50090070098a700709418b09118a", + "0x2d515401201115400900e7390070120092d500900e009626007154009009", + "0x900700901d0070072d500900715400701e01d0200118a80180162ae011", + "0x211542d50090260241541950070260092d50090180090240070240092d5", + "0x91990070160092d500901600902c0072ae0092d50092ae00902a0072a6", + "0x2d50090280098aa0070072d50090071540072b90098a90280092d51542a6", + "0x1d00702c0092d500902a0098ac00702a0092d50091ea0098ab0071ea009", + "0x2d500901600902c00702e0092d50092ae00902a0071eb0092d5009021009", + "0x900715400703102f02e1eb00e0090310092d500902c0098ad00702f009", + "0x90078ae0071ed0092d50090070210070072d50092b90091660070072d5", + "0x360092d50091ee1ed1540260071ee0092d50091ee0090240071ee0092d5", + "0x1ef0098af0071ef0092d50090360381542b90070380092d5009007028007", + "0x1ec0092d50092ae00902a00703c0092d500902100901d00703a0092d5009", + "0x1ec03c00e0090400092d500903a0098ad00703f0092d500901600902c007", + "0x420098ab0070420092d500901e0098b00070072d500900715400704003f", + "0x450092d500900700901d0072a00092d50092a20098ac0072a20092d5009", + "0x2a00098ad00729d0092d500901d00902c0070470092d500902000902a007", + "0x98b20090092d51540070098b100729a29d04704500e00929a0092d5009", + "0x90110094740070110092d50090090094730070072d5009007154007154", + "0x72d50090071540070120090090120092d500900e00947500700e0092d5", + "0x160094760070160092d50091542ae1542b90072ae0092d5009007028007", + "0x2d50090074770070200090090200092d50090180094750070180092d5009", + "0x2d500900700901d0070072d50090071a10070072d500900710b00700e009", + "0x2ae0120112d50090200181540760070200092d5009154009175007018009", + "0x1d0070072d500900715400701d0098b30110092d5154016009180007016", + "0x2d50092ae0091750070260092d500900900902a0070240092d5009012009", + "0x112d50090280260240111100070110092d500901100e154479007028009", + "0x72d50090071540071ea0098b42b90092d51542a60091120072a602101e", + "0x2e0098b51eb0092d515402c0091cb00702c02a1542d50092b90091c9007", + "0x902f0096d000702f0092d50091eb0111548b60070072d5009007154007", + "0x1ee0092d50091ed0098b80071ed0092d500903102a1548b70070310092d5", + "0x1ee0098b90070380092d500902100902a0070360092d500901e00901d007", + "0x90110090500070072d50090071540071ef0380360110091ef0092d5009", + "0x703c0092d500903a02a1548b700703a0092d500902e0096dc0070072d5", + "0x902100902a00703f0092d500901e00901d0071ec0092d500903c0098b8", + "0x900715400704204003f0110090420092d50091ec0098b90070400092d5", + "0x901d0072a20092d50091ea0098ba0070072d50090110090500070072d5", + "0x92d50092a20098b90070450092d500902100902a0072a00092d500901e", + "0x70072d500900e00948b0070072d50090071540070470452a0011009047", + "0x29a0098b800729a0092d500929d2ae1548b700729d0092d500901d0096dc", + "0x4c0092d500900900902a00704a0092d500901200901d0072980092d5009", + "0x90092d50090071b000729604c04a0110092960092d50092980098b9007", + "0x1540098bc0070110092d50090070091750071540092d50090090098bb007", + "0x2d500915400949d0070072d50090071a100700e01115400900e0092d5009", + "0x72d50092ae0094880070162ae0120112d500900e0094cf00700e154154", + "0x901100905200701d0092d500901200928c0070072d50090160090ed007", + "0x72d50090200091660070200181542d500901e01d15405400701e0092d5", + "0x70260242a60112d50090210094cf0070211541542d500915400949d007", + "0x92d500900700901d0070072d50090260090ed0070072d50092a6009050", + "0x90520071eb0092d50090240096d100702c0092d500900900902a00702a", + "0x4e00071ea2b90280112d500902e1eb02c02a00e8bd00702e0092d5009018", + "0x902f0094e20070072d50090071540070310098be02f0092d51541ea009", + "0x380360112d50091540094cf0070072d50091ee0091660071ee1ed1542d5", + "0x91ef0090ec0070072d50090380094880070072d50090360090500071ef", + "0x3a1542d500903f1ec1540eb00703f0092d50091ed0090520071ec0092d5", + "0x1d0070420092d50090400097300070400092d500903c03a15472f00703c", + "0x2d50090420097310072a00092d50092b900902a0072a20092d5009028009", + "0x72d50091540091af0070072d50090071540070452a02a2011009045009", + "0x2b900902a00729d0092d500902800901d0070470092d5009031009732007", + "0x71a100729829a29d0110092980092d500904700973100729a0092d5009", + "0x72310070120092d500900723100700e0092d500900702e0070072d5009", + "0x92d50090162ae0120118bf0070160092d50090072310072ae0092d5009", + "0x91b10070240092d500900900902a0072a60092d500900700901d007018", + "0x92d50090180098c00070280092d500900e00902f0070260092d5009154", + "0x2d50091ea2b90280260242a62ae8c10071ea0092d50090110091750072b9", + "0x900715400702c0098c302a0092d51540210098c200702101e01d02000e", + "0x50e0070072d50091eb0090e400702e1eb1542d500902a0098c40070072d5", + "0x2d500902000901d0070310092d500902f00950f00702f0092d500902e009", + "0x5100070360092d500901e0091b10071ee0092d500901d00902a0071ed009", + "0x5110070072d50090071540070380361ee1ed00e0090380092d5009031009", + "0x2d500901d00902a00703a0092d500902000901d0071ef0092d500902c009", + "0xe00903f0092d50091ef0095100071ec0092d500901e0091b100703c009", + "0x85900700e0092d50090078c50070072d500915400917700703f1ec03c03a", + "0x2d50092ae0090240072ae0092d50090120092ef0070120092d500900e009", + "0x92d50090180098590070180161542d50090112ae00901185a0072ae009", + "0x15485b00701d0092d500901d00902400701d0092d50090200092ef007020", + "0x901600906e0072a60092d500901e00901d00702101e1542d500901d007", + "0x700902a0070260242a60110090260092d50090210095ee0070240092d5", + "0x112d50092ae0121546500072ae0092d500900900902c0070120092d5009", + "0x72d50090071540070180098c60160092d515400e00965100700e011154", + "0x1d00965500701d0092d50090200096540070200092d5009016009653007", + "0x92a60091730070072d50090210096570070260242a602101e0122d5009", + "0x1e0098c70070072d50090260091860070072d50090240091730070072d5", + "0x1ea0092d500915400902a0072b90092d50090280098c80070280092d5009", + "0x2a1ea01100902c0092d50092b90098c900702a0092d500901100902c007", + "0x915400902a0071eb0092d50090180098ca0070072d500900715400702c", + "0x90310092d50091eb0098c900702f0092d500901100902c00702e0092d5", + "0x2d50090071540070110098cc1540092d51540070098cb00703102f02e011", + "0xe00947400700e0092d50091540094730070072d5009009009186007007", + "0x2d50090071540072ae0090092ae0092d50090120094750070120092d5009", + "0x90161540260070160092d50090070210070072d50090110090a6007007", + "0x1d0092d50090180201542b90070200092d50090070280070180092d5009", + "0x70210090090210092d500901e00947500701e0092d500901d009476007", + "0x15400906e0070210092d500900700901d0070180161542d500900e0098cd", + "0x260092d50090120090240070240092d500901800948e0072a60092d5009", + "0x92d50092ae0090a800701e01d0200112d50090260242a602100e6eb007", + "0x1ea0090200071ea0092d50090070160072b90092d500901e009626007028", + "0x1eb0118ce02c02a1542d51540282b91ea0110090126280071ea0092d5009", + "0x90310094640070310092d50090071b00070072d500900715400702f02e", + "0x70360092d500902c00902c0071ee0092d500902a00902a0071ed0092d5", + "0x70072d50090071540070078cf00900711f0070380092d50091ed009465", + "0x902e00902c0071ee0092d50091eb00902a0071ef0092d500902f009467", + "0x703c0092d50090380096140070380092d50091ef0094650070360092d5", + "0x15400703f0098d01ec0092d515403a00922800703a0092d500903c009615", + "0x92d50090400161542f30070400092d50091ec0092e30070072d5009007", + "0x902a0072a00092d500902000901d0072a20092d50090420098d1007042", + "0x92d500903600902c0070470092d500901d00906e0070450092d50091ee", + "0x900715400729a29d0470452a001200929a0092d50092a20098d200729d", + "0x901d0072980092d500903f0098d30070072d50090160091770070072d5", + "0x92d500901d00906e00704c0092d50091ee00902a00704a0092d5009020", + "0x4a01200904e0092d50092980098d200728f0092d500903600902c007296", + "0x92d500900700901d0070180161542d500900e0098d400704e28f29604c", + "0x90240070240092d50090180092e80072a60092d500915400906e007021", + "0xa800701e01d0200112d50090260242a602100e8d50070260092d5009012", + "0x92d50090070160072b90092d500901e0096260070280092d50092ae009", + "0x1542d51540282b91ea0110090126280071ea0092d50091ea0090200071ea", + "0x310092d50090071b00070072d500900715400702f02e1eb0118d602c02a", + "0x2c00902c0071ee0092d500902a00902a0071ed0092d5009031009464007", + "0x1540070078d700900711f0070380092d50091ed0094650070360092d5009", + "0x1ee0092d50091eb00902a0071ef0092d500902f0094670070072d5009007", + "0x380096140070380092d50091ef0094650070360092d500902e00902c007", + "0x1ec0092d515403a00922800703a0092d500903c00961500703c0092d5009", + "0x1548d90070400092d50091ec0092e30070072d500900715400703f0098d8", + "0x2d500902000901d0072a20092d50090420098da0070420092d5009040016", + "0x2c0070470092d500901d00906e0070450092d50091ee00902a0072a0009", + "0x29d0470452a001200929a0092d50092a20098db00729d0092d5009036009", + "0x2d500903f0098dc0070072d50090160091390070072d500900715400729a", + "0x6e00704c0092d50091ee00902a00704a0092d500902000901d007298009", + "0x2d50092980098db00728f0092d500903600902c0072960092d500901d009", + "0x95250070090092d50090070098dd00704e28f29604c04a01200904e009", + "0x90095250070090092d50090070098de0071540090091540092d5009009", + "0x92d50090078df0070072d50091540091760071540090091540092d5009", + "0x900902c0070180092d500900700902a00700e0092d5009007016007011", + "0x1e0092d50090110095ee00701d0092d500900e0090200070200092d5009", + "0x92d50090160097350070162ae0120112d500901e01d02001800e734007", + "0x260098e00240092d51540210090f00070210092d50092a60097360072a6", + "0x2d50090280095040070280092d50090240090ef0070072d5009007154007", + "0x2c00702a0092d500901200902a0071ea0092d50092b90095050072b9009", + "0x71eb02c02a0110091eb0092d50091ea00950600702c0092d50092ae009", + "0x92d500901200902a00702e0092d50090260095070070072d5009007154", + "0x2f0110091ed0092d500902e0095060070310092d50092ae00902c00702f", + "0x2e800701d0092d500915400906e0070200092d500900700901d0071ed031", + "0x1e01d02000e8d50070210092d500901200902400701e0092d500900e009", + "0x2d50092ae00901d0072a60092d50090070160070180162ae0112d5009021", + "0x2000702c0092d500901100902c00702a0092d500900900902a0071ea009", + "0x2c02a1ea0126c200702e0092d50090180095ee0071eb0092d50092a6009", + "0x310098e102f0092d51542b90096c30072b902802602400e2d500902e1eb", + "0x2d50091ed0096c60071ed0092d500902f0096c50070072d5009007154007", + "0x98e20380092d51541ee0091960071ee0092d50090360096c7007036009", + "0x903a00947300703a0092d50090380090dd0070072d50090071540071ef", + "0x703f0092d500902400901d0071ec0092d500903c00947400703c0092d5", + "0x902800902c0070420092d500901600906e0070400092d500902600902a", + "0x1540072a02a204204003f0120092a00092d50091ec0094750072a20092d5", + "0x470092d500902400901d0070450092d50091ef0094760070072d5009007", + "0x2800902c00729a0092d500901600906e00729d0092d500902600902a007", + "0x704a29829a29d04701200904a0092d50090450094750072980092d5009", + "0x92d500902400901d00704c0092d50090310094760070072d5009007154", + "0x902c00704e0092d500901600906e00728f0092d500902600902a007296", + "0x28c05004e28f29601200928c0092d500904c0094750070500092d5009028", + "0x71540090091540092d50090090095250070090092d50090070098e3007", + "0x1542d50091540098e40070120092d500900701600700e0092d50090078df", + "0x200098e50180092d51540110092410070072d50090160091760070162ae", + "0x1d0092d50090072310070072d50090180091660070072d5009007154007", + "0x72d50090071540070078e600900711f00701e0092d500901d009024007", + "0x2d50090210090240070210092d500900750a0070072d5009020009166007", + "0x6270070120092d50090120090200072a60092d500900e00962600701e009", + "0x8e70260241542d515401e2a60120090070126280072a60092d50092a6009", + "0x946400702a0092d50090071b00070072d50090071540071ea2b9028011", + "0x92d500902600902c0071eb0092d500902400902a00702c0092d500902a", + "0x2d50090071540070078e800900711f00702f0092d500902c00946500702e", + "0x902c0071eb0092d500902800902a0070310092d50091ea009467007007", + "0x92d500902f00961400702f0092d500903100946500702e0092d50092b9", + "0x380098e90360092d51541ed0092280071ed0092d50091ee0096150071ee", + "0x91ef2ae1548ea0071ef0092d50090360092e30070072d5009007154007", + "0x71ec0092d50091eb00902a00703c0092d500903a0098eb00703a0092d5", + "0x4003f1ec0110090400092d500903c0098ec00703f0092d500902e00902c", + "0x92d50090380098ed0070072d50092ae0091760070072d5009007154007", + "0x98ec0072a00092d500902e00902c0072a20092d50091eb00902a007042", + "0x5250070090092d50090070098ee0070452a02a20110090450092d5009042", + "0x2d500900702e0070072d50090071a10071540090091540092d5009009009", + "0x121542d515400e00900701103100700e0092d500900e00902f00700e009", + "0x70200092d50091540090110070072d50090071540070180161548ef2ae", + "0x1542d515402000911b0070120092d500901200901d0070072d50090071ba", + "0x72a60092d500901e0091b60070072d50090071540070210098f001e01d", + "0x8f100900711f0070260092d50092a60091b40070240092d500901d00911d", + "0x2d50090280091ac0070280092d50090071b00070072d5009007154007007", + "0x1220070260092d50092b90091b40070240092d500902100911d0072b9009", + "0x2d50090071a10070072d500900715400702a0098f21ea0092d5154026009", + "0x905200702f0092d500902c00902400702c0092d50091ea0091a8007007", + "0x902e00916600702e1eb1542d500903102f1540850070310092d5009011", + "0x2a0071ef0092d500901200901d0071ed0092d500902400916a0070072d5", + "0x2d50091eb00905200703c0092d50091ed00917500703a0092d50092ae009", + "0x1540380094e00070380361ee0112d50091ec03c03a1ef00e72d0071ec009", + "0x421542d500903f0094e20070072d50090071540070400098f303f0092d5", + "0x3600902a0072a00092d50091ee00901d0070072d50092a20091660072a2", + "0x1540070078f400900711f0070470092d50090420090520070450092d5009", + "0x29a0092d50091ee00901d00729d0092d50090400097320070072d5009007", + "0x29829a01100904a0092d500929d0097310072980092d500903600902a007", + "0x72d500902a0091660070072d50090071a10070072d500900715400704a", + "0x92ae00902a0072a00092d500901200901d0070072d500902400912c007", + "0x72f00704c0092d50090071b00070470092d50090110090520070450092d5", + "0x92a000901d00728f0092d50092960097300072960092d500904c047154", + "0x928c0092d500928f0097310070500092d500904500902a00704e0092d5", + "0x90e40070072d50090110091690070072d500900715400728c05004e011", + "0x240070540092d50090070e50070520092d50090070210070072d5009154", + "0x2d50090070280071660092d50090540521540260070540092d5009054009", + "0x716a0092d50091690097320071690092d50091660581542b9007058009", + "0x916a00973100705d0092d500901800902a0070e60092d500901600901d", + "0x90110098f50070072d50091540091740070e505d0e60110090e50092d5", + "0x70160092d50092ae0098590072ae0092d50090078f600701200e1542d5", + "0x1800901185a0070180092d50090180090240070180092d50090160092ef", + "0x2d500901d00985900701e0092d500901200921f00701d0201542d500900e", + "0x85a0072a60092d50092a60090240072a60092d50090210092ef007021009", + "0x92ef0070280092d50090260098590070260241542d500901e2a6020011", + "0x2d50092b900715485b0072b90092d50092b90090240072b90092d5009028", + "0x71eb0092d500902400906e00702c0092d50091ea00901d00702a1ea154", + "0xe0092d500901100962600702e1eb02c01100902e0092d500902a0095ee", + "0x15400701d0200180118f70162ae0120112d515400e15400900700e739007", + "0x72d500901e00918600702101e1542d50090160090830070072d5009007", + "0x240091860070260241542d50092a60090830072a60092d5009007231007", + "0x1ea2b91542d50090280090830070280092d50090210091240070072d5009", + "0x902a00908300702a0092d50090260091240070072d50092b9009186007", + "0x702e0092d50091ea0091240070072d500902c0091860071eb02c1542d5", + "0x2f02e15423200702e0092d500902e00902400702f0092d50091eb009124", + "0x120092d500901200902a0070310092d50090310090240070310092d5009", + "0x1540071ed0098f80072d51540310092330072ae0092d50092ae00902c007", + "0x70360092d50091ee0092380071ee0092d50090071b00070072d5009007", + "0x70072d50090071540070078f900900711f0070380092d50090360090ec", + "0x92d50091ef00923d0071ef0092d50090071b00070072d50091ed00923a", + "0x98fa00703c0092d500903800923f0070380092d500903a0090ec00703a", + "0x92d50092ae00902c00703f0092d500901200902a0071ec0092d500903c", + "0x72d500900715400704204003f0110090420092d50091ec0098fb007040", + "0x2000902c0072a00092d500901800902a0072a20092d500901d0098fc007", + "0x98fd0070470452a00110090470092d50092a20098fb0070450092d5009", + "0x2d50090090095040070072d50090071540071540098fe0090092d5154007", + "0x90090120092d500900e00950600700e0092d5009011009505007011009", + "0x91542ae1542b90072ae0092d50090070280070072d5009007154007012", + "0x90200092d50090180095060070180092d50090160095070070160092d5", + "0xe00985900700e0092d50090078ff0070072d500915400913b007020009", + "0x2ae0092d50092ae0090240072ae0092d50090120092ef0070120092d5009", + "0x70200092d50090180098590070180161542d50090112ae00901185a007", + "0x1d00715485b00701d0092d500901d00902400701d0092d50090200092ef", + "0x92d500901600906e0072a60092d500901e00901d00702101e1542d5009", + "0x2d51540070099000070260242a60110090260092d50090210095ee007024", + "0x70110092d500900900950e0070072d5009007154007154009901009009", + "0x1540070120090090120092d500900e00951000700e0092d500901100950f", + "0x160092d50091542ae1542b90072ae0092d50090070280070072d5009007", + "0x70200090090200092d50090180095100070180092d5009016009511007", + "0x2d500900700901d0070180161542d500900e00929a0070072d50090071a1", + "0x2c0070280092d500915400906e0070260092d500900900902a007024009", + "0x2d50090120095fe0071ea0092d500901800904a0072b90092d5009011009", + "0x2a1ea2b90280260242ae0f600702a0092d500902a00902400702a012154", + "0x71eb00990202c0092d51542a60090f50072a602101e01d0200122d5009", + "0x2d500902c0090f400702f02e1542d500901600929a0070072d5009007154", + "0x6e00703c0092d500901d00902a00703a0092d500902000901d007031009", + "0x2d500902f00904a00703f0092d500902100902c0071ec0092d500901e009", + "0x904204003f1ec03c03a2ae9030070420092d5009031009024007040009", + "0x1540072a00099042a20092d51541ef0092280071ef0380361ee1ed0122d5", + "0x704a0092d50091ed00901d0070072d50092a200922b0070072d5009007", + "0x903800902c0072960092d500903600906e00704c0092d50091ee00902a", + "0x70500092d500901200902400704e0092d500902e00904a00728f0092d5", + "0x122d500928c05004e28f29604c04a01679500728c0092d50092ae009066", + "0x90071540070540099050520092d515429800917f00729829a29d047045", + "0x1b00070072d50090580091660070581661542d50090520092550070072d5", + "0x2d500916a00925900716a0092d50091691661542570071690092d5009007", + "0x6e0070e50092d500904700902a00705d0092d500904500901d0070e6009", + "0x2d50090e60092470070600092d500929a00902c0070e40092d500929d009", + "0x90540092450070072d50090071540070620600e40e505d012009062009", + "0x71730092d500904700902a0071710092d500904500901d0071700092d5", + "0x91700092470070680092d500929a00902c0070660092d500929d00906e", + "0x2ae0091730070072d50090071540071750680661731710120091750092d5", + "0x92450070072d500902e0092980070072d50090120091860070072d5009", + "0x92d50091ee00902a00706c0092d50091ed00901d00706a0092d50092a0", + "0x92470070700092d500903800902c00706e0092d500903600906e007178", + "0x1730070072d500900715400717d07006e17806c01200917d0092d500906a", + "0x70072d50090160092980070072d50090120091860070072d50092ae009", + "0x901d00902a0070730092d500902000901d00717f0092d50091eb009245", + "0x71800092d500902100902c0070760092d500901e00906e0070740092d5", + "0x72d50090071a10071821800760740730120091820092d500917f009247", + "0x90070210070120092d50092ae0099060072ae0092d500900e009525007", + "0x701d0201542d500901200961c0070180092d50090070210070160092d5", + "0x2d500900900902a0070240092d500900700901d0070072d500902000961d", + "0x520072b90092d50090160090520070280092d500901d009525007026009", + "0x2a602101e0112d50091ea2b902802602401261e0071ea0092d5009018009", + "0x96210070072d500900715400702c00990702a0092d51542a600961f007", + "0x2d50091eb0090580070072d500902f00916600702f02e1eb0112d500902a", + "0x580071ee0092d50091ed00916a0070072d50090310091690071ed031154", + "0x2d500903800916a0070072d50090360091690070380361542d500902e009", + "0x1ef0091750071ee0092d50091ee0091750070072d50090071ba0071ef009", + "0x3f1ec01190803c03a1542d51541ef1ee15402100e6220071ef0092d5009", + "0x2d50090420094640070420092d50090071b00070072d5009007154007040", + "0x4650070450092d500903c00902c0072a00092d500903a00902a0072a2009", + "0x4670070072d500900715400700790900900711f0070470092d50092a2009", + "0x2d500903f00902c0072a00092d50091ec00902a00729d0092d5009040009", + "0x6150072980092d50090470096140070470092d500929d009465007045009", + "0x715400704c00990a04a0092d515429a00922800729a0092d5009298009", + "0x1542570072960092d500904a0092e30070072d50090071a10070072d5009", + "0x2d500901e00901d00704e0092d500928f00925900728f0092d5009296011", + "0x2470070520092d500904500902c00728c0092d50092a000902a007050009", + "0x1a10070072d500900715400705405228c05000e0090540092d500904e009", + "0x71660092d500904c0092450070072d50090110092980070072d5009007", + "0x904500902c0071690092d50092a000902a0070580092d500901e00901d", + "0x71540070e616a16905800e0090e60092d500916600924700716a0092d5", + "0x1d00705d0092d500902c0092450070072d50090110092980070072d5009", + "0x2d500915400902c0070e40092d500902100902a0070e50092d500901e009", + "0x90071a10070620600e40e500e0090620092d500905d009247007060009", + "0x70240092d500900700901d0070180161542d500900e00929a0070072d5", + "0x901100902c0070280092d500915400906e0070260092d500900900902a", + "0x2a0121542d50090120095fe0071ea0092d500901800904a0072b90092d5", + "0x122d500902a1ea2b90280260242ae0f600702a0092d500902a009024007", + "0x90071540071eb00990b02c0092d51542a60090f50072a602101e01d020", + "0x70310092d500902c0090f400702f02e1542d500901600929a0070072d5", + "0x901e00906e00703c0092d500901d00902a00703a0092d500902000901d", + "0x70400092d500902f00904a00703f0092d500902100902c0071ec0092d5", + "0x1ed0122d500904204003f1ec03c03a2ae9030070420092d5009031009024", + "0x2d50090071540072a000990c2a20092d51541ef0092280071ef0380361ee", + "0x1ee00902a00704a0092d50091ed00901d0070072d50092a200922b007007", + "0x28f0092d500903800902c0072960092d500903600906e00704c0092d5009", + "0x2ae0090660070500092d500901200902400704e0092d500902e00904a007", + "0x29d0470450122d500928c05004e28f29604c04a01675500728c0092d5009", + "0x70072d500900715400705400990d0520092d515429800917f00729829a", + "0x2d50090071b00070072d50090580091660070581661542d5009052009255", + "0x70e60092d500916a00925900716a0092d5009169166154257007169009", + "0x929d00906e0070e50092d500904700902a00705d0092d500904500901d", + "0x90620092d50090e60092470070600092d500929a00902c0070e40092d5", + "0x1700092d50090540092450070072d50090071540070620600e40e505d012", + "0x29d00906e0071730092d500904700902a0071710092d500904500901d007", + "0x1750092d50091700092470070680092d500929a00902c0070660092d5009", + "0x72d50092ae0091730070072d5009007154007175068066173171012009", + "0x2d50092a00092450070072d500902e0092980070072d5009012009186007", + "0x6e0071780092d50091ee00902a00706c0092d50091ed00901d00706a009", + "0x2d500906a0092470070700092d500903800902c00706e0092d5009036009", + "0x92ae0091730070072d500900715400717d07006e17806c01200917d009", + "0x1eb0092450070072d50090160092980070072d50090120091860070072d5", + "0x740092d500901d00902a0070730092d500902000901d00717f0092d5009", + "0x17f0092470071800092d500902100902c0070760092d500901e00906e007", + "0x10b0070180092d50090072250071821800760740730120091820092d5009", + "0x701d0201542d500900e00929a0070072d50090071a10070072d5009007", + "0x915400906e0072b90092d500900900902a0070280092d500900700901d", + "0x702c0092d500901d00904a00702a0092d500901100902c0071ea0092d5", + "0x2ae0092840071eb0092d50091eb0090240071eb0121542d50090120095fe", + "0x2a1ea2b90280160f100702e0092d500902e00906600702e2ae1542d5009", + "0x90e02f0092d51540260090f00070260242a602101e0122d500902e1eb02c", + "0x1ed0092410071ed0092d500902f0090ef0070072d5009007154007031009", + "0x72d50091ee0091660070072d500900715400703600990f1ee0092d5154", + "0x2d50090180092990070072d50090120091860070072d50092ae009173007", + "0x906e0071ef0092d500902100902a0070380092d500901e00901d007007", + "0x92d500902000904a00703c0092d500902400902c00703a0092d50092a6", + "0x72d50090360091660070072d500900715400700791000900711f0071ec", + "0x29604c04a29829a29d0470452a02a204204003f0262d500902000919a007", + "0x28c2ae1542d50092ae0092840070500121542d50090120095fe00704e28f", + "0x5400923d0070540092d50090071b00070520092d500928c0501544ff007", + "0xe50092d500902100902a00705d0092d500901e00901d0071660092d5009", + "0x4e0095000070600092d500902400902c0070e40092d50092a600906e007", + "0x1710092d50091660090ec0071700092d50090520095010070620092d5009", + "0x2270070e616a0161690580122d50091711700620600e40e505d016911007", + "0x1540070660099131730092d51540e60099120070160092d5009016018154", + "0x1780092d500916a00902c00706c0092d500916900902a0070072d5009007", + "0x91406e0092d515406a00906200706a1750680112d500917806c1542a4007", + "0x916600717f17d1542d50091730099150070072d5009007154007070009", + "0x2d50090732ae0120119160070730092d500906e0091700070072d500917f", + "0x17d28f29604c04a29829a29d0470452a02a204204003f02629d007074009", + "0x7f0092d500906800902a00707d0092d500905800901d0070760092d5009", + "0x740098210070810092d500907600904a0071850092d500917500902c007", + "0x707c07a18218000e2d500908308118507f07d0129170070830092d5009", + "0x1860092550070072d50090071540070850099181860092d515407c00917f", + "0x380092d500918000901d0070072d50091880091660071881871542d5009", + "0x7a00902c00703a0092d500901600906e0071ef0092d500918200902a007", + "0x708b0092d50090071b00071ec0092d500918700904a00703c0092d5009", + "0x3800901d0070560092d50090860092590070860092d500908b1ec154257", + "0x18a0092d500903a00906e0071890092d50091ef00902a00708d0092d5009", + "0x18908d01200918b0092d50090560092470070910092d500903c00902c007", + "0x901d0070940092d50090850092450070072d500900715400718b09118a", + "0x92d500901600906e0070960092d500918200902a00718c0092d5009180", + "0x18c01200909a0092d500909400924700718d0092d500907a00902c007098", + "0x99190070072d500903f00912e0070072d500900715400709a18d098096", + "0x1390070072d50092960091760070072d500928f00913b0070072d5009173", + "0x70072d500929800917b0070072d500904a0091770070072d500904c009", + "0x72d50090470091330070072d500929d0091350070072d500929a00917e", + "0x2d50092a20091300070072d50092a00091830070072d5009045009181007", + "0x90120091860070072d50090400091650070072d5009042009184007007", + "0x901d00709c0092d50090700092450070072d50092ae0091730070072d5", + "0x92d500901600906e00718f0092d500906800902a00718e0092d5009058", + "0x18e0120091960092d500909c0092470070a10092d500917500902c00709f", + "0x91730070072d500903f00912e0070072d50090071540071960a109f18f", + "0x1760070072d500928f00913b0070072d50090120091860070072d50092ae", + "0x70072d500904a0091770070072d500904c0091390070072d5009296009", + "0x72d500929d0091350070072d500929a00917e0070072d500929800917b", + "0x2d50092a00091830070072d50090450091810070072d5009047009133007", + "0x90400091650070072d50090420091840070072d50092a2009130007007", + "0x2a0070a40092d500905800901d0070dd0092d50090660092450070072d5", + "0x2d500916a00902c0071a40092d500901600906e0070a60092d5009169009", + "0x71540070aa0a81a40a60a40120090aa0092d50090dd0092470070a8009", + "0x91860070072d50092ae0091730070072d50090200092980070072d5009", + "0x71a70092d50090310092450070072d50090180092990070072d5009012", + "0x92a600906e0070ad0092d500902100902a0070ab0092d500901e00901d", + "0x90dc0092d50091a70092470071b10092d500902400902c0071af0092d5", + "0x1542d50090110091710070120092d50090070210070dc1b11af0ad0ab012", + "0x905200701d0092d50090160090660070072d50092ae0091730070162ae", + "0x90200091660070200181542d500901e01d15406800701e0092d5009012", + "0x960070072d500902100918c0072a60211542d500900e0090940070072d5", + "0x92b90281540980072b90092d50090180090520070280092d50092a6009", + "0x71ea0092d50091540096b60070072d50090260091660070260241542d5", + "0x902c0091690071eb02c1542d500902400905800702a0092d500900791a", + "0x17500702a0092d500902a00902400702e0092d50091eb00916a0070072d5", + "0x1ed03102f0112d515402e02a1ea00900701259600702e0092d500902e009", + "0x71ef0092d50091ed0094e60070072d50090071540070380361ee01191b", + "0x91ef0094e700703c0092d500903100902c00703a0092d500902f00902a", + "0x90380092d70070072d500900715400700791c00900711f0071ec0092d5", + "0x703c0092d500903600902c00703a0092d50091ee00902a00703f0092d5", + "0x90420096a10070420092d50091ec0096a00071ec0092d500903f0094e7", + "0x72d50090071540072a000991d2a20092d515404000959b0070400092d5", + "0x2d500904500960c0070450092d50090071b00070072d50092a20096bb007", + "0x2c00729a0092d500903a00902a00729d0092d500904700960d007047009", + "0x704a29829a01100904a0092d500929d00960b0072980092d500903c009", + "0x92d500903a00902a00704c0092d50092a000960a0070072d5009007154", + "0x29601100904e0092d500904c00960b00728f0092d500903c00902c007296", + "0x90091540092d50090090095250070090092d500900700991e00704e28f", + "0x1540090091540092d50090090095250070090092d500900700991f007154", + "0x91860070072d50090071540070110099201540092d515400700989d007", + "0x120092d500900e00905d00700e0092d50091540090e60070072d5009009", + "0x91690070072d50090071540072ae0090092ae0092d50090120091eb007", + "0x180092d50090090161540260070160092d50090070210070072d5009011", + "0x1d0091ea00701d0092d50090180201542b90070200092d5009007028007", + "0x90070099210070210090090210092d500901e0091eb00701e0092d5009", + "0x2d50090070099220071540090091540092d50090090095250070090092d5", + "0x180092d50090072250071540090091540092d5009009009525007009009", + "0x201542d500900e00929a0070072d50090071a10070072d500900710b007", + "0x906e0072b90092d500900900902a0070280092d500900700901d00701d", + "0x92d500901d00904a00702a0092d500901100902c0071ea0092d5009154", + "0x2840071eb0092d50091eb0090240071eb0121542d50090120095fe00702c", + "0x2b90280160f100702e0092d500902e00906600702e2ae1542d50092ae009", + "0x92d51540260090f00070260242a602101e0122d500902e1eb02c02a1ea", + "0x2410071ed0092d500902f0090ef0070072d500900715400703100992302f", + "0x91ee0091660070072d50090071540070360099241ee0092d51541ed009", + "0x452a02a204204003f1ec03c03a1ef0380262d500902000919a0070072d5", + "0x1542d50092ae00928400704a0121542d50090120095fe00729829a29d047", + "0x23800728f0092d50090071b00072960092d500904c04a1544ff00704c2ae", + "0x2d500902100902a0071660092d500901e00901d00704e0092d500928f009", + "0x50000716a0092d500902400902c0071690092d50092a600906e007058009", + "0x2d500904e0090ec00705d0092d50092960095010070e60092d5009298009", + "0x5405201628c0500122d50090e505d0e616a1690581660169110070e5009", + "0x600099250e40092d51540540099120070160092d5009016018154227007", + "0x2d500905200902c0071730092d500928c00902a0070072d5009007154007", + "0x92d51541710090620071711700620112d50090661731542a4007066009", + "0x706c06a1542d50090e40099150070072d5009007154007175009926068", + "0x1782ae0120119270071780092d50090680091700070072d500906c009166", + "0x29d0470452a02a204204003f1ec03c03a1ef03802629d00706e0092d5009", + "0x2d500906200902a0070760092d500905000901d0070700092d500906a29a", + "0x81e00707a0092d500907000904a0071820092d500917000902c007180009", + "0x7317f17d00e2d500907c07a18218007601292800707c0092d500906e009", + "0x2550070072d500900715400707f00992907d0092d515407400917f007074", + "0x2d500917d00901d0070072d50090810091660070811851542d500907d009", + "0x2c0070850092d500901600906e0071860092d500917f00902a007083009", + "0x792a00900711f0071880092d500918500904a0071870092d5009073009", + "0x2d500917d00901d00708b0092d500907f0092450070072d5009007154007", + "0x2c00708d0092d500901600906e0070560092d500917f00902a007086009", + "0x18908d05608601200918a0092d500908b0092470071890092d5009073009", + "0x2d50090e40099190070072d500903800912e0070072d500900715400718a", + "0x90470091390070072d500929d0091760070072d500929a00913b007007", + "0x2a200917e0070072d50092a000917b0070072d50090450091770070072d5", + "0x91810070072d50090400091330070072d50090420091350070072d5009", + "0x1840070072d500903c0091300070072d50091ec0091830070072d500903f", + "0x70072d50090120091860070072d50091ef0091650070072d500903a009", + "0x2d500905000901d0070910092d50091750092450070072d50092ae009173", + "0x2c00718c0092d500901600906e0070940092d500906200902a00718b009", + "0x9618c09418b0120090980092d50090910092470070960092d5009170009", + "0x2d50092ae0091730070072d500903800912e0070072d5009007154007098", + "0x929d0091760070072d500929a00913b0070072d5009012009186007007", + "0x2a000917b0070072d50090450091770070072d50090470091390070072d5", + "0x91330070072d50090420091350070072d50092a200917e0070072d5009", + "0x1300070072d50091ec0091830070072d500903f0091810070072d5009040", + "0x70072d50091ef0091650070072d500903a0091840070072d500903c009", + "0x928c00902a00709a0092d500905000901d00718d0092d5009060009245", + "0x718f0092d500905200902c00718e0092d500901600906e00709c0092d5", + "0x72d500900715400709f18f18e09c09a01200909f0092d500918d009247", + "0x2d50090120091860070072d50092ae0091730070072d5009036009166007", + "0x2100902a0070830092d500901e00901d0070072d5009018009299007007", + "0x1870092d500902400902c0070850092d50092a600906e0071860092d5009", + "0xa11881542570070a10092d50090071b00071880092d500902000904a007", + "0xa40092d500908300901d0070dd0092d50091960092590071960092d5009", + "0x18700902c0071a40092d500908500906e0070a60092d500918600902a007", + "0x70aa0a81a40a60a40120090aa0092d50090dd0092470070a80092d5009", + "0x70072d50090120091860070072d50092ae0091730070072d5009007154", + "0x92d50090310092450070072d50090200092980070072d5009018009299", + "0x906e0070ad0092d500902100902a0070ab0092d500901e00901d0071a7", + "0x92d50091a70092470071b10092d500902400902c0071af0092d50092a6", + "0x2d500900710b0070180092d50090072250070dc1b11af0ad0ab0120090dc", + "0x700901d00701d0201542d500900e00929a0070072d50090071a1007007", + "0x1ea0092d500915400906e0072b90092d500900900902a0070280092d5009", + "0x120095fe00702c0092d500901d00904a00702a0092d500901100902c007", + "0x2a1ea2b90282ae0f60071eb0092d50091eb0090240071eb0121542d5009", + "0x992b02e0092d51540260090f50070260242a602101e0122d50091eb02c", + "0x1ef0380361ee1ed0310262d500902000919a0070072d500900715400702f", + "0x902a00704a0092d500901e00901d0070452a02a204204003f1ec03c03a", + "0x92d500902400902c0072960092d50092a600906e00704c0092d5009021", + "0x240070500121542d50090120095fe00704e0092d50092a000950b00728f", + "0x928c00902400728c2ae1542d50092ae0095fe0070500092d5009050009", + "0x29a01629d0470122d500928c05004e28f29604c04a01692c00728c0092d5", + "0x992e0520092d515429800992d0070160092d5009016018154227007298", + "0x905200992f0071660092d500902e0090f40070072d5009007154007054", + "0x92d50092ae1660120119300070072d50091690091660071690581542d5", + "0x90450582a204204003f1ec03c03a1ef0380361ee1ed03102629d00716a", + "0x71700092d500929d00902a0070620092d500904700901d0070e60092d5", + "0x916a0098240071730092d50090e600904a0071710092d500929a00902c", + "0x17f0070600e40e505d00e2d50090661731711700620129310070660092d5", + "0x90680092550070072d50090071540071750099320680092d5154060009", + "0x2570071780092d50090071b00070072d500906c00916600706c06a1542d5", + "0x905d00901d0070700092d500906e00925900706e0092d500917806a154", + "0x70730092d500901600906e00717f0092d50090e500902a00717d0092d5", + "0x7317f17d0120090760092d50090700092470070740092d50090e400902c", + "0x5d00901d0071800092d50091750092450070072d5009007154007076074", + "0x7c0092d500901600906e00707a0092d50090e500902a0071820092d5009", + "0x7a18201200907f0092d500918000924700707d0092d50090e400902c007", + "0x450091740070072d500903100912e0070072d500900715400707f07d07c", + "0x91390070072d50092a20091760070072d50090120091860070072d5009", + "0x17e0070072d500903f00917b0070072d50090400091770070072d5009042", + "0x70072d500903a0091330070072d500903c0091350070072d50091ec009", + "0x72d50090360091300070072d50090380091830070072d50091ef009181", + "0x2d50092ae0091860070072d50091ed0091650070072d50091ee009184007", + "0x4700901d0071850092d50090540092450070072d500902e009933007007", + "0x1860092d500901600906e0070830092d500929d00902a0070810092d5009", + "0x830810120091870092d50091850092470070850092d500929a00902c007", + "0x200092980070072d50092ae0091860070072d5009007154007187085186", + "0x92450070072d50090120091860070072d50090180092990070072d5009", + "0x92d500902100902a00708b0092d500901e00901d0071880092d500902f", + "0x924700708d0092d500902400902c0070560092d50092a600906e007086", + "0x700e0092d500900793400718908d05608608b0120091890092d5009188", + "0x2d50090070160072ae0092d500900e0096260070120092d50090110092dd", + "0x200070072d50090200091350070200181542d5009154009935007016009", + "0x160090070126280072ae0092d50092ae0096270070160092d5009016009", + "0x1b00070072d50090071540070242a602101193601e01d1542d51540122ae", + "0x92d500901d00902a0070280092d50090260094640070260092d5009007", + "0x711f00702a0092d50090280094650071ea0092d500901e00902c0072b9", + "0x902a00702c0092d50090240094670070072d5009007154007007937009", + "0x92d500902c0094650071ea0092d50092a600902c0072b90092d5009021", + "0x92280071eb0092d500902e00961500702e0092d500902a00961400702a", + "0x2d500902f0092e30070072d500900715400703100993802f0092d51541eb", + "0x70360092d50091ee0099390071ee0092d50091ed0181542f50071ed009", + "0x903600993a0071ef0092d50091ea00902c0070380092d50092b900902a", + "0x2d50090180091350070072d500900715400703a1ef03801100903a0092d5", + "0x902c0071ec0092d50092b900902a00703c0092d500903100993b007007", + "0x25d00704003f1ec0110090400092d500903c00993a00703f0092d50091ea", + "0x925f0070072d500900715400700e00993c0111541542d5154009007154", + "0x92d50090120092610072ae0092d500915400901d0070120092d5009011", + "0x180092d50090071b00070072d500900715400700793d00900711f007016", + "0x200092610072ae0092d500900e00901d0070200092d5009018009263007", + "0x1e0092d500901600993e00701d0092d50092ae0095ac0070160092d5009", + "0x715400700e00993f0111541542d515400900715427700701e01d154009", + "0x72ae0092d500915400901d0070120092d50090110092790070072d5009", + "0x70072d500900715400700794000900711f0070160092d500901200927b", + "0x2d500900e00901d0070200092d500901800927d0070180092d50090071b0", + "0x94100701d0092d50092ae0095ac0070160092d500902000927b0072ae009", + "0x700070110092d500900700994200701e01d15400901e0092d5009016009", + "0x90162ae15408d0070160092d50091540090520072ae0092d5009011009", + "0x520070180092d50090071b00070072d500901200916600701200e1542d5", + "0x2d500901800914400701d0092d500900e0090520070200092d5009009009", + "0x110092f40070110071542d500900700994300701e01d02001100901e009", + "0x180092d500900e00928c0070072d500901200905000701200e1542d5009", + "0x1660070162ae1542d50090200181540540070200092d5009154009052007", + "0x2d500901d00905000701e01d1542d50090070092f40070072d5009016009", + "0x1540540070260092d50092ae0090520070240092d500901e00928c007007", + "0x92d50090071b00070072d50092a60091660072a60211542d5009026024", + "0x91440071ea0092d50090210090520072b90092d5009009009052007028", + "0x70110071542d500900700994400702a1ea2b901100902a0092d5009028", + "0x900e0090660070072d500901200917300701200e1542d5009011009945", + "0x2ae1542d50090200181540680070200092d50091540090520070180092d5", + "0x917300701e01d1542d50090070099450070072d5009016009166007016", + "0x260092d50092ae0090520070240092d500901e0090660070072d500901d", + "0x71b00070072d50092a60091660072a60211542d5009026024154068007", + "0x1ea0092d50090210090520072b90092d50090090090520070280092d5009", + "0x1542d500900700994600702a1ea2b901100902a0092d5009028009144007", + "0x70072d500901200918c0072ae01200e0112d5009011009947007011007", + "0x2d50091540090520070200092d500900e0090700070072d50092ae009173", + "0x70072d50090180091660070180161542d500901d02015408d00701d009", + "0x1780070242a60210112d500901e00994700701e0071542d5009007009946", + "0x2b90092d50092a60090960070072d50090240091730070072d5009021009", + "0x1660070280261542d50091ea2b91540980071ea0092d5009016009052007", + "0x902a0091780071eb02c02a0112d50090070099470070072d5009028009", + "0x90520070310092d50091eb0090660070072d500902c00918c0070072d5", + "0x902f00916600702f02e1542d50091ed0311540680071ed0092d5009026", + "0x90520070360092d50090090090520071ee0092d50090071b00070072d5", + "0x9480071ef0380360110091ef0092d50091ee0091440070380092d500902e", + "0x1780070162ae01200e00e2d50090110099490070110071542d5009007009", + "0x70072d50090160091730070072d50092ae00918c0070072d5009012009", + "0x1e01d15408d00701e0092d500900900905200701d0092d500900e009070", + "0x71542d50090070099480070072d50090200091660070200181542d5009", + "0x70072d50092a60091780070280260242a600e2d5009021009949007021", + "0x92d50090240090700070072d50090280091730070072d500902600918c", + "0x71ea2b91542d500902c02a15408d00702c0092d500901800905200702a", + "0x91eb0099490071eb0071542d50090070099480070072d50091ea009166", + "0x72d500902f0091780070072d500902e0091780071ed03102f02e00e2d5", + "0x91540090520070380092d50090310090960070072d50091ed009173007", + "0x72d50090360091660070361ee1542d50091ef0381540980071ef0092d5", + "0x1780070072d500903a00917800703f1ec03c03a00e2d5009007009949007", + "0x2a20092d500903f0090660070072d50091ec00918c0070072d500903c009", + "0x1660070420401542d50092a02a21540680072a00092d50092b9009052007", + "0x470092d50090400090520070450092d50090071b00070072d5009042009", + "0x29d04701100929a0092d500904500914400729d0092d50091ee009052007", + "0x701200e1542d500901100994b0070110071542d500900700994a00729a", + "0x2d50091540090520070180092d500900e0090660070072d500901200918c", + "0x70072d50090160091660070162ae1542d5009020018154068007020009", + "0x901e0090960070072d500901d00917300701e01d1542d500900700994b", + "0x211542d50090260241540980070260092d50092ae0090520070240092d5", + "0x90090090520070280092d50090071b00070072d50092a60091660072a6", + "0x902a0092d50090280091440071ea0092d50090210090520072b90092d5", + "0x112d500901100994d0070110071542d500900700994c00702a1ea2b9011", + "0x90700070072d50092ae00918c0070072d50090120091730072ae01200e", + "0x2d500901d02015408d00701d0092d50090090090520070200092d500900e", + "0x701e0071542d500900700994c0070072d5009018009166007018016154", + "0x2400918c0070072d50090210091780070242a60210112d500901e00994d", + "0x71ea0092d50090160090520072b90092d50092a60090660070072d5009", + "0x700994d0070072d50090280091660070280261542d50091ea2b9154068", + "0x72d500902c0091730070072d500902a0091780071eb02c02a0112d5009", + "0x311540980071ed0092d50091540090520070310092d50091eb009096007", + "0x1ee0092d50090071b00070072d500902f00916600702f02e1542d50091ed", + "0x1ee0091440070380092d500902e0090520070360092d5009026009052007", + "0x900710b0072ae0092d500900794e0071ef0380360110091ef0092d5009", + "0x99500070161541542d500915400994f0070072d50090071a10070072d5", + "0x1d0091730070072d500902000917800702101e01d0200180122d5009016", + "0x90700070072d50090210090e40070072d500901e00918c0070072d5009", + "0x2d500902802615408d0070280092d50090110090520070260092d5009018", + "0x72b91541542d500915400994f0070072d50090240091660070242a6154", + "0x1730070072d50091ea00917800702e1eb02c02a1ea0122d50092b9009950", + "0x70072d500902e0090e40070072d50091eb00918c0070072d500902c009", + "0x1ee1ed15408d0071ee0092d50092a60090520071ed0092d500902a009070", + "0x1541542d500915400994f0070072d500903100916600703102f1542d5009", + "0x72d50090380091780071ec03c03a1ef0380122d5009036009950007036", + "0x2d50091ec0090e40070072d500903c00918c0070072d50091ef009178007", + "0x1540680070420092d500902f0090520070400092d500903a009066007007", + "0x2d500915400994f0070072d500903f00916600703f0121542d5009042040", + "0x92a000917800729a29d0470452a00122d50092a20099500072a2154154", + "0x29a0090e40070072d50090470091730070072d50090450091780070072d5", + "0x72960092d500900e00905200704c0092d500929d0090960070072d5009", + "0x1540099500070072d500904a00916600704a2981542d500929604c154098", + "0x904e0091780070072d500928f00917800705228c05004e28f0122d5009", + "0x700901d0070072d500928c00918c0070072d50090500091730070072d5", + "0xe60092d500905200917500716a0092d500900900902a0071690092d5009", + "0xe4df0070120092d50090122ae15495100705d0092d5009298009052007", + "0x99520e50092d51540580094e00070581660540112d500905d0e616a169", + "0x620091660070620601542d50090e50094e20070072d50090071540070e4", + "0x1710092d50091700600120118540071700092d50090071b00070072d5009", + "0x16600902a0070660092d500905400901d0071730092d5009171009855007", + "0x71540071750680660110091750092d50091730092ec0070680092d5009", + "0x1d00706a0092d50090e400980b0070072d50090120091690070072d5009", + "0x2d500906a0092ec0071780092d500916600902a00706c0092d5009054009", + "0x110099530070110071542d50090070092f200706e17806c01100906e009", + "0x2d50092ae0091860070072d50090120091860070162ae01200e00e2d5009", + "0x15400905200701d0092d500900e0090700070072d5009016009128007007", + "0x2d50090200091660070200181542d500901e01d15408d00701e0092d5009", + "0x260242a600e2d50090210099530070210071542d50090070092f2007007", + "0x90280091280070072d50090260091860070072d50092a6009178007028", + "0x8500702c0092d500901800905200702a0092d50090240090240070072d5", + "0x90070092f20070072d50091ea0091660071ea2b91542d500902c02a154", + "0x902e0091780071ed03102f02e00e2d50091eb0099530071eb0071542d5", + "0x310090240070072d50091ed0091280070072d500902f0091860070072d5", + "0x1542d50091ef0381540850071ef0092d50092b90090520070380092d5009", + "0x3f1ec03c03a00e2d50090070099530070072d50090360091660070361ee", + "0x2d50091ec0091860070072d500903c0091860070072d500903a009178007", + "0x1540260070420092d50090400092dd0070400092d500903f0095c1007007", + "0x92d50090090090520072a00092d50090071b00072a20092d50090421ee", + "0x4501100929d0092d50092a00091440070470092d50092a2009052007045", + "0x1200e1542d50090110099550070110071542d500900700995400729d047", + "0x90090090520070180092d500900e0090660070072d5009012009178007", + "0x72d50090160091660070162ae1542d50090200181540680070200092d5", + "0x1e0090700070072d500901d00917300701e01d1542d5009007009955007", + "0x1542d500902602415408d0070260092d50092ae0090520070240092d5009", + "0x210090520070280092d50090071b00070072d50092a60091660072a6021", + "0x2a0092d50090280091440071ea0092d50091540090520072b90092d5009", + "0x2d50090110099570070110071542d500900700995600702a1ea2b9011009", + "0x520070180092d500900e0090660070072d500901200917800701200e154", + "0x160091660070162ae1542d50090200181540680070200092d5009009009", + "0x70072d500901d00917300701e01d1542d50090070099570070072d5009", + "0x2602415408d0070260092d50092ae0090520070240092d500901e009070", + "0x70280092d50090071b00070072d50092a60091660072a60211542d5009", + "0x90280091440071ea0092d50091540090520072b90092d5009021009052", + "0x2d50091540099580070072d50090071a100702a1ea2b901100902a0092d5", + "0xdc00701d0092d500900900902a0070200092d500900700901d007012009", + "0x1e01d02000e6e70070210092d500900e00905200701e0092d5009012009", + "0x1540070240099592a60092d51540180094e00070180162ae0112d5009021", + "0x72d50090280091660070280261542d50092a60094e20070072d5009007", + "0x98550071ea0092d50092b90260110118540072b90092d50090071b0007", + "0x92d500901600902a00702c0092d50092ae00901d00702a0092d50091ea", + "0x72d500900715400702e1eb02c01100902e0092d500902a0092ec0071eb", + "0x92ae00901d00702f0092d500902400980b0070072d5009011009169007", + "0x91ee0092d500902f0092ec0071ed0092d500901600902a0070310092d5", + "0x1d0070120092d500915400995a0070072d50090071a10071ee1ed031011", + "0x2d50090120090dc00701d0092d500900900902a0070200092d5009007009", + "0x112d500902101e01d02000e6e70070210092d500900e00905200701e009", + "0x72d500900715400702400995b2a60092d51540180094e00070180162ae", + "0x90071b00070072d50090280091660070280261542d50092a60094e2007", + "0x92d50091ea0098550071ea0092d50092b90260110118540072b90092d5", + "0x92ec0071eb0092d500901600902a00702c0092d50092ae00901d00702a", + "0x110091690070072d500900715400702e1eb02c01100902e0092d500902a", + "0x70310092d50092ae00901d00702f0092d500902400980b0070072d5009", + "0x1ee1ed0310110091ee0092d500902f0092ec0071ed0092d500901600902a", + "0x2d500900700901d0070120092d500915400995c0070072d50090071a1007", + "0x5200701e0092d50090120090dc00701d0092d500900900902a007020009", + "0x70180162ae0112d500902101e01d02000e6e70070210092d500900e009", + "0x2a60094e20070072d500900715400702400995d2a60092d51540180094e0", + "0x72b90092d50090071b00070072d50090280091660070280261542d5009", + "0x901d00702a0092d50091ea0098550071ea0092d50092b9026011011854", + "0x92d500902a0092ec0071eb0092d500901600902a00702c0092d50092ae", + "0x70072d50090110091690070072d500900715400702e1eb02c01100902e", + "0x901600902a0070310092d50092ae00901d00702f0092d500902400980b", + "0x700995e0071ee1ed0310110091ee0092d500902f0092ec0071ed0092d5", + "0x160092d50091540090520072ae0092d500901100928c0070110092d5009", + "0x71b00070072d500901200916600701200e1542d50090162ae154054007", + "0x1d0092d500900e0090520070200092d50090090090520070180092d5009", + "0x1542d500900700995f00701e01d02001100901e0092d5009018009144007", + "0x70072d50090120091730072ae01200e0112d5009011009960007011007", + "0x2d50091540090520070200092d500900e0090240070072d50092ae009173", + "0x70072d50090180091660070180161542d500901d02015408500701d009", + "0x1860070242a60210112d500901e00996000701e0071542d500900700995f", + "0x2b90092d50092a60090660070072d50090240091730070072d5009021009", + "0x1660070280261542d50091ea2b91540680071ea0092d5009016009052007", + "0x902a0091860071eb02c02a0112d50090070099600070072d5009028009", + "0x90520070310092d50091eb0090660070072d500902c0091730070072d5", + "0x902f00916600702f02e1542d50091ed0311540680071ed0092d5009026", + "0x90520070360092d50090090090520071ee0092d50090071b00070072d5", + "0x9610071ef0380360110091ef0092d50091ee0091440070380092d500902e", + "0x91730072ae01200e0112d50090110099620070110071542d5009007009", + "0x70200092d500900e0090240070072d50092ae0091730070072d5009012", + "0x91660070180161542d500901d02015408500701d0092d5009154009052", + "0x112d500901e00996200701e0071542d50090070099610070072d5009018", + "0x90660070072d50090240091730070072d50090210091860070242a6021", + "0x2d50091ea2b91540680071ea0092d50090160090520072b90092d50092a6", + "0x1eb02c02a0112d50090070099620070072d5009028009166007028026154", + "0x2d50091eb0090660070072d500902c0091730070072d500902a009186007", + "0x2f02e1542d50091ed0311540680071ed0092d5009026009052007031009", + "0x2d50090090090520071ee0092d50090071b00070072d500902f009166007", + "0x110091ef0092d50091ee0091440070380092d500902e009052007036009", + "0xe0112d50090110099640070110071542d50090070099630071ef038036", + "0xe0090240070072d50092ae0091860070072d50090120091860072ae012", + "0x1542d500901d02015408500701d0092d50091540090520070200092d5009", + "0x96400701e0071542d50090070099630070072d5009018009166007018016", + "0x90240091860070072d50090210091860070242a60210112d500901e009", + "0x850071ea0092d50090160090520072b90092d50092a60090240070072d5", + "0x90070099640070072d50090280091660070280261542d50091ea2b9154", + "0x70072d500902c0091860070072d500902a0091860071eb02c02a0112d5", + "0x1ed0311540850071ed0092d50090260090520070310092d50091eb009024", + "0x71ee0092d50090071b00070072d500902f00916600702f02e1542d5009", + "0x91ee0091440070380092d500902e0090520070360092d5009009009052", + "0x99650070110071542d50090070092f10071ef0380360110091ef0092d5", + "0x92d500900e0090660070072d500901200917300701200e1542d5009011", + "0x70162ae1542d50090200181540680070200092d5009154009052007018", + "0x901d00917300701e01d1542d50090070099650070072d5009016009166", + "0x680070260092d50092ae0090520070240092d500901e0090660070072d5", + "0x2d50090071b00070072d50092a60091660072a60211542d5009026024154", + "0x1440071ea0092d50090210090520072b90092d5009009009052007028009", + "0x110071542d500900700996600702a1ea2b901100902a0092d5009028009", + "0xe0090660070072d500901200917300701200e1542d5009011009967007", + "0x1542d50090200181540680070200092d50091540090520070180092d5009", + "0x17300701e01d1542d50090070099670070072d50090160091660070162ae", + "0x92d50092ae0090520070240092d500901e0090660070072d500901d009", + "0x1b00070072d50092a60091660072a60211542d5009026024154068007026", + "0x92d50090210090520072b90092d50090090090520070280092d5009007", + "0x2d500900700996800702a1ea2b901100902a0092d50090280091440071ea", + "0x70072d500901200917300701200e1542d5009011009969007011007154", + "0x200181540680070200092d50091540090520070180092d500900e009066", + "0x1d1542d50090070099690070072d50090160091660070162ae1542d5009", + "0x2ae0090520070240092d500901e0090660070072d500901d00917300701e", + "0x2d50092a60091660072a60211542d50090260241540680070260092d5009", + "0x210090520072b90092d50090090090520070280092d50090071b0007007", + "0x996a00702a1ea2b901100902a0092d50090280091440071ea0092d5009", + "0x901200917300701200e1542d500901100996b0070110071542d5009007", + "0x680070200092d50091540090520070180092d500900e0090660070072d5", + "0x900700996b0070072d50090160091660070162ae1542d5009020018154", + "0x70240092d500901e0090660070072d500901d00917300701e01d1542d5", + "0x91660072a60211542d50090260241540680070260092d50092ae009052", + "0x72b90092d50090090090520070280092d50090071b00070072d50092a6", + "0x2a1ea2b901100902a0092d50090280091440071ea0092d5009021009052", + "0x17300701200e1542d500901100996d0070110071542d500900700996c007", + "0x92d50091540090520070180092d500900e0090660070072d5009012009", + "0x96d0070072d50090160091660070162ae1542d5009020018154068007020", + "0x2d500901e0090660070072d500901d00917300701e01d1542d5009007009", + "0x2a60211542d50090260241540680070260092d50092ae009052007024009", + "0x2d50090090090520070280092d50090071b00070072d50092a6009166007", + "0x1100902a0092d50090280091440071ea0092d50090210090520072b9009", + "0xe1542d500901100996f0070110071542d500900700996e00702a1ea2b9", + "0x1540090520070180092d500900e0090660070072d5009012009173007012", + "0x2d50090160091660070162ae1542d50090200181540680070200092d5009", + "0x90660070072d500901d00917300701e01d1542d500900700996f007007", + "0x2d50090260241540680070260092d50092ae0090520070240092d500901e", + "0x90520070280092d50090071b00070072d50092a60091660072a6021154", + "0x92d50090280091440071ea0092d50090210090520072b90092d5009009", + "0x90110099710070110071542d500900700997000702a1ea2b901100902a", + "0x70180092d500900e0090660070072d500901200917300701200e1542d5", + "0x91660070162ae1542d50090200181540680070200092d5009154009052", + "0x72d500901d00917300701e01d1542d50090070099710070072d5009016", + "0x241540680070260092d50092ae0090520070240092d500901e009066007", + "0x280092d50090071b00070072d50092a60091660072a60211542d5009026", + "0x280091440071ea0092d50090210090520072b90092d5009009009052007", + "0x9730070110071542d500900700997200702a1ea2b901100902a0092d5009", + "0x2d500900e0090660070072d500901200917300701200e1542d5009011009", + "0x162ae1542d50090200181540680070200092d5009154009052007018009", + "0x1d00917300701e01d1542d50090070099730070072d5009016009166007", + "0x70260092d50092ae0090520070240092d500901e0090660070072d5009", + "0x90071b00070072d50092a60091660072a60211542d5009026024154068", + "0x71ea0092d50090210090520072b90092d50090090090520070280092d5", + "0x71542d500900700997400702a1ea2b901100902a0092d5009028009144", + "0x90660070072d500901200917300701200e1542d5009011009975007011", + "0x2d50090200181540680070200092d50091540090520070180092d500900e", + "0x701e01d1542d50090070099750070072d50090160091660070162ae154", + "0x2d50092ae0090520070240092d500901e0090660070072d500901d009173", + "0x70072d50092a60091660072a60211542d5009026024154068007026009", + "0x2d50090210090520072b90092d50090090090520070280092d50090071b0", + "0x900700997600702a1ea2b901100902a0092d50090280091440071ea009", + "0x72d500901200917300701200e1542d50090110099770070110071542d5", + "0x181540680070200092d50091540090520070180092d500900e009066007", + "0x1542d50090070099770070072d50090160091660070162ae1542d5009020", + "0x90520070240092d500901e0090660070072d500901d00917300701e01d", + "0x92a60091660072a60211542d50090260241540680070260092d50092ae", + "0x90520072b90092d50090090090520070280092d50090071b00070072d5", + "0x97800702a1ea2b901100902a0092d50090280091440071ea0092d5009021", + "0x1200917300701200e1542d50090110099790070110071542d5009007009", + "0x70200092d50091540090520070180092d500900e0090660070072d5009", + "0x70099790070072d50090160091660070162ae1542d5009020018154068", + "0x240092d500901e0090660070072d500901d00917300701e01d1542d5009", + "0x1660072a60211542d50090260241540680070260092d50092ae009052007", + "0x2b90092d50090090090520070280092d50090071b00070072d50092a6009", + "0x1ea2b901100902a0092d50090280091440071ea0092d5009021009052007", + "0x701200e1542d500901100997b0070110071542d500900700997a00702a", + "0x2d50091540090520070180092d500900e0090660070072d5009012009173", + "0x70072d50090160091660070162ae1542d5009020018154068007020009", + "0x901e0090660070072d500901d00917300701e01d1542d500900700997b", + "0x211542d50090260241540680070260092d50092ae0090520070240092d5", + "0x90090090520070280092d50090071b00070072d50092a60091660072a6", + "0x902a0092d50090280091440071ea0092d50090210090520072b90092d5", + "0x1542d500901100997d0070110071542d500900700997c00702a1ea2b9011", + "0x90520070180092d500900e0090660070072d500901200917300701200e", + "0x90160091660070162ae1542d50090200181540680070200092d5009154", + "0x660070072d500901d00917300701e01d1542d500900700997d0070072d5", + "0x90260241540680070260092d50092ae0090520070240092d500901e009", + "0x520070280092d50090071b00070072d50092a60091660072a60211542d5", + "0x2d50090280091440071ea0092d50090210090520072b90092d5009009009", + "0x1100997f0070110071542d500900700997e00702a1ea2b901100902a009", + "0x180092d500900e0090660070072d500901200917300701200e1542d5009", + "0x1660070162ae1542d50090200181540680070200092d5009154009052007", + "0x2d500901d00917300701e01d1542d500900700997f0070072d5009016009", + "0x1540680070260092d50092ae0090520070240092d500901e009066007007", + "0x92d50090071b00070072d50092a60091660072a60211542d5009026024", + "0x91440071ea0092d50090210090520072b90092d5009009009052007028", + "0x70110071542d500900700998000702a1ea2b901100902a0092d5009028", + "0x900e0090660070072d500901200917300701200e1542d5009011009981", + "0x2ae1542d50090200181540680070200092d50091540090520070180092d5", + "0x917300701e01d1542d50090070099810070072d5009016009166007016", + "0x260092d50092ae0090520070240092d500901e0090660070072d500901d", + "0x71b00070072d50092a60091660072a60211542d5009026024154068007", + "0x1ea0092d50090210090520072b90092d50090090090520070280092d5009", + "0x1542d500900700998200702a1ea2b901100902a0092d5009028009144007", + "0x660070072d500901200917300701200e1542d5009011009983007011007", + "0x90200181540680070200092d50091540090520070180092d500900e009", + "0x1e01d1542d50090070099830070072d50090160091660070162ae1542d5", + "0x92ae0090520070240092d500901e0090660070072d500901d009173007", + "0x72d50092a60091660072a60211542d50090260241540680070260092d5", + "0x90210090520072b90092d50090090090520070280092d50090071b0007", + "0x700998400702a1ea2b901100902a0092d50090280091440071ea0092d5", + "0x92d50090090098650070072d50090071540071540099850090092d5154", + "0x120090090120092d500900e00986700700e0092d5009011009866007011", + "0x2d50091542ae1542b90072ae0092d50090070280070072d5009007154007", + "0x90090200092d50090180098670070180092d5009016009868007016009", + "0x99870070090092d50091540099860071540092d5009007009198007020", + "0x2d50090110099890070072d500900715400700e0099880110092d5154009", + "0x98c0070160092d50092ae00998b0072ae0092d500901200998a007012009", + "0x71540070200090090200092d500901800998d0070180092d5009016009", + "0x901e0092d500901d00998d00701d0092d500900e00998e0070072d5009", + "0x21f00701200e1542d500901100998f0070072d500915400913300701e009", + "0x92d50090160098590070160092d50090079900072ae0092d500900e009", + "0x1185a0070200092d50090200090240070200092d50090180092ef007018", + "0x1e0098590070210092d50090120090a800701e01d1542d50092ae020009", + "0x240092d50090240090240070240092d50092a60092ef0072a60092d5009", + "0x72b90092d50090280098590070280261542d500902102401d01185a007", + "0x1ea00715485b0071ea0092d50091ea0090240071ea0092d50092b90092ef", + "0x92d500902600906e0071eb0092d500902a00901d00702c02a1542d5009", + "0x2d500900700901d00702f02e1eb01100902f0092d500902c0095ee00702e", + "0x99100701e0092d500915400902c00701d0092d500900900902a007020009", + "0x900e0099920070210092d50090210090200070210111542d5009011009", + "0x2a602101e01d0200129930072a60092d50092a60095ee0072a600e1542d5", + "0x1540070260099950240092d51540180099940070180162ae01200e2d5009", + "0x2b90092d51540280099970070280092d50090240099960070072d5009007", + "0xe15499900702a0092d50090072f80070072d50090071540071ea009998", + "0x2c0110162ae00e73900702c0092d500902c00962700702c0092d500902a", + "0x901d0070072d50090071540071ee1ed03101199a02f02e1eb0112d5154", + "0x2d500903a1ef15442400703a0092d500902f0090240071ef0092d5009012", + "0x702e0092d500902e00902c0071eb0092d50091eb00902a007038036154", + "0x2b91542d10070072d50090071540071ec00999b03c0092d5154038009425", + "0x92d500904000999d0070400092d500903f00999c00703f0092d500903c", + "0x902a0072a00092d500903600901d0072a20092d500904200999e007042", + "0x92d50092a200999f0070470092d500902e00902c0070450092d50091eb", + "0x72d50091ec0091660070072d500900715400729d0470452a000e00929d", + "0x92d50090079a000729a0092d50090070210070072d50092b900941e007", + "0x2800704a0092d500929829a1540260072980092d5009298009024007298", + "0x2d50092960099a10072960092d500904a04c1542b900704c0092d5009007", + "0x2c0070500092d50091eb00902a00704e0092d500903600901d00728f009", + "0x5228c05004e00e0090520092d500928f00999f00728c0092d500902e009", + "0x92d50091ee0099a20070072d50092b900941e0070072d5009007154007", + "0x901d0070580092d500916600999e0071660092d500905400999d007054", + "0x92d50091ed00902c00716a0092d500903100902a0071690092d5009012", + "0x2d500900715400705d0e616a16900e00905d0092d500905800999f0070e6", + "0x91ea0099a20070072d50090110092ae0070072d500900e0099a3007007", + "0x70600092d50090e400999e0070e40092d50090e500999d0070e50092d5", + "0x901600902c0071700092d50092ae00902a0070620092d500901200901d", + "0x715400717317117006200e0091730092d500906000999f0071710092d5", + "0x99a10070072d50090110092ae0070072d500900e0099a30070072d5009", + "0x92d50092ae00902a0070680092d500901200901d0070660092d5009026", + "0x6800e00906c0092d500906600999f00706a0092d500901600902c007175", + "0x72d50090071540071540099a50090092d51540070099a400706c06a175", + "0xe00941700700e0092d50090110092d60070110092d5009009009416007", + "0x2ae0092d50090070280070072d50090071540070120090090120092d5009", + "0x94170070180092d50090160094180070160092d50091542ae1542b9007", + "0x941d00700e0111542d500900900941d0070200090090200092d5009018", + "0x201549a60180161542d51542ae00e0070116a60072ae0121542d5009154", + "0x2d500901e00923d00701e0092d50090071b00070072d500900715400701d", + "0x70240092d500901600901d0072a60092d50090210181549a7007021009", + "0x70072d50090071540070079a900900711f0070260092d50092a60099a8", + "0x92b901d1549a70072b90092d50090280092380070280092d50090071b0", + "0x70260092d50091ea0099a80070240092d500902000901d0071ea0092d5", + "0x9ab02e1eb1542d51540120110240116a600702c02a1542d50090260099aa", + "0x9ac0071ed0092d500902a02e1542d10070072d500900715400703102f154", + "0x91ee0099ad0070360092d50091eb00901d0071ee0092d500902c1ed154", + "0x2d50090074130070072d50090071540070079ae00900711f0070380092d5", + "0x3a1542d51541ef02a02f0116a60071ef0092d50091ef0096750071ef009", + "0x400092d500903c0311542d10070072d500900715400703f1ec1549af03c", + "0x99ad0072a20092d500903a00901d0070420092d500902c0401549ac007", + "0x90ed0070072d50090071540070079b000900711f0072a00092d5009042", + "0x470092d50090071b00070450092d500903f0311542d10070072d500902c", + "0x901d00729a0092d500929d0451549ac00729d0092d5009047009238007", + "0x92d50092a20095ac0072a00092d500929a0099ad0072a20092d50091ec", + "0x99b10072980092d50090360095ac0070380092d50092a00099b1007036", + "0x90079340070072d500901100913500704a29815400904a0092d5009038", + "0x2a00701d0092d500900700901d0070120092d500900701600700e0092d5", + "0x2d50090120090200070210092d500915400902c00701e0092d5009009009", + "0x2d50090242a602101e01d0129b20070240092d500900e0095ee0072a6009", + "0x90071540070280099b40260092d51540200099b30070200180162ae00e", + "0x9b700702a0092d50092b90099b60072b90092d50090260099b50070072d5", + "0x71540071eb0099b802c0092d51541ea00967f0071ea0092d500902a009", + "0x702f0092d500902e00988a00702e0092d500902c0096810070072d5009", + "0x901600902a0071ed0092d50092ae00901d0070310092d500902f00988b", + "0x90380092d500903100988c0070360092d500901800902c0071ee0092d5", + "0x71ef0092d50091eb0092ee0070072d50090071540070380361ee1ed00e", + "0x901800902c00703c0092d500901600902a00703a0092d50092ae00901d", + "0x715400703f1ec03c03a00e00903f0092d50091ef00988c0071ec0092d5", + "0x70420092d50092ae00901d0070400092d50090280092ee0070072d5009", + "0x904000988c0072a00092d500901800902c0072a20092d500901600902a", + "0x90960070120092d500900700901d0070452a02a204200e0090450092d5", + "0x90162ae0120119b90070160092d50091540090960072ae0092d5009009", + "0x92d51540200092410070200181542d500900e00988000700e0111542d5", + "0x942b0070072d500901d0091660070072d500900715400701e0099ba01d", + "0x70079bb00900711f0072a60092d500902100942c0070210092d5009018", + "0x70072d500901800918c0070072d500901e0091660070072d5009007154", + "0x2d500902600942c0070260092d500902400942e0070240092d50090071b0", + "0x1540092b90092d50092a600942c0070280092d500901100901d0072a6009", + "0x9bd0070090092d50091540099bc0071540092d50090070090960072b9028", + "0x90110099bf0070072d500900715400700e0099be0110092d5154009009", + "0x70160092d50092ae0099c10072ae0092d50090120099c00070120092d5", + "0x1540070200090090200092d50090180099c30070180092d50090160099c2", + "0x1e0092d500901d0099c300701d0092d500900e0099c40070072d5009007", + "0x70110092d50090071b00071540092d50090090071549c500701e009009", + "0x701200e1540090120092d500901100914400700e0092d500915400901d", + "0x91540090960072ae0092d50090090090960070120092d500900700901d", + "0x2d515400e00909a00700e0111542d50090162ae0120119c60070160092d5", + "0x701d0092d50090180094160070072d50090071540070200099c7018009", + "0x901e0094170070210092d500901100901d00701e0092d500901d0092d6", + "0x72d50090200091660070072d50090071540072a60211540092a60092d5", + "0x2d50090260090240070260092d50090079c80070240092d5009007021007", + "0x2b90072b90092d50090070280070280092d5009026024154026007026009", + "0x901100901d00702a0092d50091ea0094180071ea0092d50090282b9154", + "0x900e0099c90071eb02c1540091eb0092d500902a00941700702c0092d5", + "0x2a60092d500915400906e0070210092d500900700901d0070180161542d5", + "0x2100e2f00070260092d50090120096720070240092d5009018009671007", + "0x900902a0070280092d500900701600701e01d0200112d50090260242a6", + "0x2e0092d50090280090200071eb0092d500901100902c00702c0092d5009", + "0x2c0129ca0070310092d50092ae00909600702f0092d500901e0095ee007", + "0x6150071ee0092d500902a00961400702a1ea2b90112d500903102f02e1eb", + "0x71540070380099cb0360092d51541ed0092280071ed0092d50091ee009", + "0x3a0092d50091ef0161549cc0071ef0092d50090360092e30070072d5009", + "0x2b900902a0071ec0092d500902000901d00703c0092d500903a0099cd007", + "0x420092d50091ea00902c0070400092d500901d00906e00703f0092d5009", + "0x2d50090071540072a204204003f1ec0120092a20092d500903c0099ce007", + "0x2000901d0072a00092d50090380099cf0070072d5009016009133007007", + "0x29d0092d500901d00906e0070470092d50092b900902a0070450092d5009", + "0x470450120092980092d50092a00099ce00729a0092d50091ea00902c007", + "0x120099d000e0092d51541540094db0070072d50090071a100729829a29d", + "0x1542d50092ae0090830072ae0092d50090072310070072d5009007154007", + "0x905200701e0092d50090180090240070072d5009016009186007018016", + "0x901d00916600701d0201542d500902101e1540850070210092d5009011", + "0x9d10072b90092d500900900902a0070280092d500900700901d0070072d5", + "0x1ea2b902800e9d200702a0092d50090200090520071ea0092d500900e009", + "0x1540071eb0099d302c0092d51540260094e00070260242a60112d500902a", + "0x72d500902f00916600702f02e1542d500902c0094e20070072d5009007", + "0x2e0090520071ed0092d500902400902a0070310092d50092a600901d007", + "0x1eb0097320070072d50090071540070079d400900711f0071ee0092d5009", + "0x1ef0092d500902400902a0070380092d50092a600901d0070360092d5009", + "0x70072d500900715400703a1ef03801100903a0092d5009036009731007", + "0x91ec00918600703f1ec1542d500903c00908300703c0092d500900750a", + "0x850072a00092d50090110090520072a20092d500903f0090240070072d5", + "0x90120091440070072d50090420091660070420401542d50092a02a2154", + "0x451542d500929a29d1549d500729a0092d500904000905200729d0092d5", + "0x900902a0070310092d500900700901d0070072d5009047009166007047", + "0x72980092d50090071b00071ee0092d50090450090520071ed0092d5009", + "0x3100901d00704c0092d500904a00973000704a0092d50092981ee15472f", + "0x4e0092d500904c00973100728f0092d50091ed00902a0072960092d5009", + "0x2f0072ae0092d500900702e0070072d50090071a100704e28f296011009", + "0x201549d60180161542d51542ae0090070110310072ae0092d50092ae009", + "0x90110072a602101e0112d500900e0099d70070072d500900715400701d", + "0x70160092d500901600901d0070072d50090071ba0070240092d5009012", + "0x91b60070072d50090071540072b90099d80280261542d515402400911b", + "0x92d50091ea0091b400702a0092d500902600911d0071ea0092d5009028", + "0x1eb0092d50090071b00070072d50090071540070079d900900711f00702c", + "0x2e0091b400702a0092d50092b900911d00702e0092d50091eb0091ac007", + "0x2f0092d500902f00917500702f0092d500902a00916a00702c0092d5009", + "0x91a80070072d50090071540071ed0099da0310092d515402c009122007", + "0x92d500902f0090110070360092d50091ee0091240071ee0092d5009031", + "0x99db03a1ef1542d515403800911b0070360092d5009036009024007038", + "0x91ef00911d0071ec0092d500903a0091b60070072d500900715400703c", + "0x71540070079dc00900711f0070400092d50091ec0091b400703f0092d5", + "0x11d0072a20092d50090420091ac0070420092d50090071b00070072d5009", + "0x2d500903f00916a0070400092d50092a20091b400703f0092d500903c009", + "0x99dd0450092d51540400091220072a00092d50092a00091750072a0009", + "0x3601e1549de00729d0092d50090450091a80070072d5009007154007047", + "0x2980092d50092980090240072980092d500929d00912400729a0092d5009", + "0x902400729a0092d500929a00902400704a0092d50092980211549de007", + "0x704e28f29604c00e2d50092a604a29a15400e9df00704a0092d500904a", + "0x29600902400704c0092d500904c0091b10070500111542d50090110099e0", + "0x4e0092d500904e00902400728f0092d500928f0090240072960092d5009", + "0x2d50090071540071660541549e105228c1542d5154050018016011031007", + "0x901d0070580092d500904e28f2960118bf0070072d50090071a1007007", + "0x92d500904c0091b10070e40092d500905200902a0070e50092d500928c", + "0x91750071700092d50090580098c00070620092d500901100902f007060", + "0xe616a16900e2d50091711700620600e40e52ae8c10071710092d50092a0", + "0x8c40070072d50090071540070660099e21730092d515405d0098c200705d", + "0x6a0099e400706a0092d50091750681549e30071750681542d5009173009", + "0x6e0092d500916a00902a0071780092d500916900901d00706c0092d5009", + "0x6e17800e00917d0092d500906c0099e50070700092d50090e60091b1007", + "0x16900901d00717f0092d50090660099e60070072d500900715400717d070", + "0x760092d50090e60091b10070740092d500916a00902a0070730092d5009", + "0x72d500900715400718007607407300e0091800092d500917f0099e5007", + "0x72d50092960091860070072d50092a00090e40070072d50090071a1007", + "0x2d500904e0091860070072d500928f0091860070072d50090110092fa007", + "0x907a00902400707a0092d50090070e50071820092d5009007021007007", + "0x707d0092d500900702800707c0092d500907a18215402600707a0092d5", + "0x5400901d0071850092d500907f0099e600707f0092d500907c07d1542b9", + "0x1860092d500904c0091b10070830092d500916600902a0070810092d5009", + "0x72d500900715400708518608308100e0090850092d50091850099e5007", + "0x903601e1549de0070072d50090110092fa0070072d5009047009166007", + "0x9e700708b0092d50091880092380071880092d50090071b00071870092d5", + "0x18a18908d05600e2d50090860099e80070860092d500908b2a602118700e", + "0x8d0090240070560092d500905600902400718a0092d500918a0090ec007", + "0x910092d515418a0092410071890092d500918900902400708d0092d5009", + "0x900750a0070072d50090910091660070072d500900715400718b0099e9", + "0x18c0092d500918c00902400718c0092d50090940561549de0070940092d5", + "0x2d500918d00918600709a18d09809600e2d500918908d18c15400e9df007", + "0x9800902400709c0092d50090960091b10070072d500909a009186007007", + "0x18b0091660070072d50090071540070079ea00900711f00718e0092d5009", + "0x709f0092d500918f08d1549de00718f0092d500900750a0070072d5009", + "0xdd1960a100e2d500918909f05615400e9df00709f0092d500909f009024", + "0x90a10091b10070072d50090a40091860070072d50090dd0091860070a4", + "0x1549e30070072d50090071a100718e0092d500919600902400709c0092d5", + "0x2d500901600901d0071a40092d50090a60099e40070a60092d500918e2a0", + "0x9e50071a70092d500909c0091b10070aa0092d500901800902a0070a8009", + "0x1660070072d50090071540070ab1a70aa0a800e0090ab0092d50091a4009", + "0x70ad0092d50090071b00070072d50090110092fa0070072d50091ed009", + "0x9e80071b10092d50091af2a602101e00e9e70071af0092d50090ad00923d", + "0x90240071b70092d50091b70090ec0071b70b30b10dc00e2d50091b1009", + "0x92d50090b30090240070b10092d50090b10090240070dc0092d50090dc", + "0x1660070072d50090071540070db0099eb0da0092d51541b70092410070b3", + "0x92d50090f20dc1549de0070f20092d500900750a0070072d50090da009", + "0xf000e2d50090b30b10f115400e9df0070f10092d50090f10090240070f1", + "0x91b10070072d50090ed0091860070072d50090ee0091860070ed0ee0ef", + "0x70079ec00900711f0070eb0092d50090ef0090240070ec0092d50090f0", + "0x70f60092d500900750a0070072d50090db0091660070072d5009007154", + "0x15400e9df0070f50092d50090f50090240070f50092d50090f60b11549de", + "0x91860070072d50090ea0091860070e90ea0f30f400e2d50090b30f50dc", + "0xeb0092d50090f30090240070ec0092d50090f40091b10070072d50090e9", + "0x90e80099e40070e80092d50090eb02f1549e30070072d50090071a1007", + "0x70d70092d500901800902a0070d60092d500901600901d0070d50092d5", + "0xd80d70d600e0090d90092d50090d50099e50070d80092d50090ec0091b1", + "0x2d50090110092fa0070072d50090120090e40070072d50090071540070d9", + "0x2d50090070e50070de0092d50090070210070072d500900e0099ed007007", + "0x70ce0092d50090df0de1540260070df0092d50090df0090240070df009", + "0x90e10099e60070e10092d50090ce0e01542b90070e00092d5009007028", + "0x70e70092d500901d00902a0070e30092d500902000901d0070e20092d5", + "0x1cc0e70e300e0091cd0092d50090e20099e50071cc0092d50091540091b1", + "0x900e00985900700e0092d50090079ee0070072d50091540091390071cd", + "0x72ae0092d50092ae0090240072ae0092d50090120092ef0070120092d5", + "0x2ef0070200092d50090180098590070180161542d50090112ae00901185a", + "0x901d00715485b00701d0092d500901d00902400701d0092d5009020009", + "0x240092d500901600906e0072a60092d500901e00901d00702101e1542d5", + "0x92d500900900902a0070260242a60110090260092d50090210095ee007", + "0x180162ae0112d500901d0201542a400701d0092d500901100902c007020", + "0x91700070072d50090071540070210099ef01e0092d5154018009062007", + "0x92d50092ae00902a00702a0092d500900700901d0072a60092d500901e", + "0x904a00702e0092d500901600902c0071eb0092d500915400906e00702c", + "0x92d50092a60090660070310092d500901200902400702f0092d500900e", + "0x71ea2b90280260240122d50091ed03102f02e1eb02c02a0160f10071ed", + "0x1ee0090ef0070072d50090071540070360099f01ee0092d51541ea0090f0", + "0x2d500900715400703a0099f11ef0092d51540380092410070380092d5009", + "0x2d50090079f200703c0092d50090070210070072d50091ef009166007007", + "0x703f0092d50091ec03c1540260071ec0092d50091ec0090240071ec009", + "0x904200960a0070420092d500903f0401542b90070400092d5009007028", + "0x70450092d500902600902a0072a00092d500902400901d0072a20092d5", + "0x92a200960b00729d0092d50092b900902c0070470092d500902800906e", + "0x3a0091660070072d500900715400729a29d0470452a001200929a0092d5", + "0x60d00704a0092d500929800960c0072980092d50090071b00070072d5009", + "0x2d500902600902a0072960092d500902400901d00704c0092d500904a009", + "0x60b0070500092d50092b900902c00704e0092d500902800906e00728f009", + "0x70072d500900715400728c05004e28f29601200928c0092d500904c009", + "0x902600902a0070540092d500902400901d0070520092d500903600960a", + "0x71690092d50092b900902c0070580092d500902800906e0071660092d5", + "0x72d500900715400716a16905816605401200916a0092d500905200960b", + "0x2d500902100960a0070072d500900e0092980070072d5009012009186007", + "0x6e0070e50092d50092ae00902a00705d0092d500900700901d0070e6009", + "0x2d50090e600960b0070600092d500901600902c0070e40092d5009154009", + "0x90090090090092d50090070095250070620600e40e505d012009062009", + "0x906e0070210092d500900700901d0070180161542d500900e0099f3007", + "0x92d50090120095010070240092d50090180095000072a60092d5009154", + "0x92d500900701600701e01d0200112d50090260242a602100e733007026", + "0x1660070072d50090071540071ea0099f42b90092d51542ae009241007028", + "0x2c0092d500902a00902400702a0092d50090072310070072d50092b9009", + "0x70072d50091ea0091660070072d50090071540070079f500900711f007", + "0x2d500901e00962600702c0092d50091eb0090240071eb0092d500900750a", + "0x2d515402c02e0280110090126280070280092d500902800902000702e009", + "0x92d50090071b00070072d50090071540070361ee1ed0119f603102f154", + "0x902c00703a0092d500902f00902a0071ef0092d5009038009464007038", + "0x70079f700900711f0071ec0092d50091ef00946500703c0092d5009031", + "0x92d50091ed00902a00703f0092d50090360094670070072d5009007154", + "0x96140071ec0092d500903f00946500703c0092d50091ee00902c00703a", + "0x92d51540400092280070400092d50090420096150070420092d50091ec", + "0x9f90070450092d50092a20092e30070072d50090071540072a00099f82a2", + "0x902000901d00729d0092d50090470092f90070470092d5009045016154", + "0x704a0092d500901d00906e0072980092d500903a00902a00729a0092d5", + "0x4a29829a0120092960092d500929d0099fa00704c0092d500903c00902c", + "0x92a00099fb0070072d50090160091740070072d500900715400729604c", + "0x70500092d500903a00902a00704e0092d500902000901d00728f0092d5", + "0x928f0099fa0070520092d500903c00902c00728c0092d500901d00906e", + "0xe0098210070072d50090071a100705405228c05004e0120090540092d5", + "0x70160092d50090070210070120092d50092ae0099fc0072ae0092d5009", + "0x902000961d00701d0201542d500901200961c0070180092d5009007021", + "0x5250070260092d500900900902a0070240092d500900700901d0070072d5", + "0x2d50090180090520072b90092d50090160090520070280092d500901d009", + "0x2a600961f0072a602101e0112d50091ea2b902802602401261e0071ea009", + "0x112d500902a0096210070072d500900715400702c0099fd02a0092d5154", + "0x71ed0311542d50091eb0090580070072d500902f00916600702f02e1eb", + "0x2d500902e0090580071ee0092d50091ed00916a0070072d5009031009169", + "0x1ba0071ef0092d500903800916a0070072d5009036009169007038036154", + "0x1ef0092d50091ef0091750071ee0092d50091ee0091750070072d5009007", + "0x715400704003f1ec0119fe03c03a1542d51541ef1ee15402100e622007", + "0x2a0072a20092d50090420094640070420092d50090071b00070072d5009", + "0x2d50092a20094650070450092d500903c00902c0072a00092d500903a009", + "0x2d50090400094670070072d50090071540070079ff00900711f007047009", + "0x4650070450092d500903f00902c0072a00092d50091ec00902a00729d009", + "0x2d50092980096150072980092d50090470096140070470092d500929d009", + "0x70072d500900715400704c009a0004a0092d515429a00922800729a009", + "0x2d50092960111542570072960092d500904a0092e30070072d50090071a1", + "0x2a0070500092d500901e00901d00704e0092d500928f00925900728f009", + "0x2d500904e0092470070520092d500904500902c00728c0092d50092a0009", + "0x72d50090071a10070072d500900715400705405228c05000e009054009", + "0x901e00901d0071660092d500904c0092450070072d5009011009298007", + "0x716a0092d500904500902c0071690092d50092a000902a0070580092d5", + "0x70072d50090071540070e616a16905800e0090e60092d5009166009247", + "0x2d500901e00901d00705d0092d500902c0092450070072d5009011009298", + "0x2470070600092d500915400902c0070e40092d500902100902a0070e5009", + "0x81e0070072d50090071a10070620600e40e500e0090620092d500905d009", + "0x92d50090070210070120092d50092ae009a010072ae0092d500900e009", + "0x961d00701d0201542d500901200961c0070180092d5009007021007016", + "0x260092d500900900902a0070240092d500900700901d0070072d5009020", + "0x180090520072b90092d50090160090520070280092d500901d009525007", + "0x61f0072a602101e0112d50091ea2b902802602401261e0071ea0092d5009", + "0x902a0096210070072d500900715400702c009a0202a0092d51542a6009", + "0x311542d50091eb0090580070072d500902f00916600702f02e1eb0112d5", + "0x2e0090580071ee0092d50091ed00916a0070072d50090310091690071ed", + "0x1ef0092d500903800916a0070072d50090360091690070380361542d5009", + "0x2d50091ef0091750071ee0092d50091ee0091750070072d50090071ba007", + "0x704003f1ec011a0303c03a1542d51541ef1ee15402100e6220071ef009", + "0x2a20092d50090420094640070420092d50090071b00070072d5009007154", + "0x2a20094650070450092d500903c00902c0072a00092d500903a00902a007", + "0x400094670070072d5009007154007007a0400900711f0070470092d5009", + "0x450092d500903f00902c0072a00092d50091ec00902a00729d0092d5009", + "0x2980096150072980092d50090470096140070470092d500929d009465007", + "0x2d500900715400704c009a0504a0092d515429a00922800729a0092d5009", + "0x2960111542570072960092d500904a0092e30070072d50090071a1007007", + "0x500092d500901e00901d00704e0092d500928f00925900728f0092d5009", + "0x4e0092470070520092d500904500902c00728c0092d50092a000902a007", + "0x90071a10070072d500900715400705405228c05000e0090540092d5009", + "0x901d0071660092d500904c0092450070072d50090110092980070072d5", + "0x92d500904500902c0071690092d50092a000902a0070580092d500901e", + "0x2d50090071540070e616a16905800e0090e60092d500916600924700716a", + "0x1e00901d00705d0092d500902c0092450070072d5009011009298007007", + "0x600092d500915400902c0070e40092d500902100902a0070e50092d5009", + "0x2d500900e009a060070620600e40e500e0090620092d500905d009247007", + "0x72a60092d500915400906e0070210092d500900700901d007018016154", + "0x2a602100e7380070260092d50090120090240070240092d500901800950b", + "0x90070160070280092d500901e00962600701e01d0200112d5009026024", + "0x1542ae0282b90110090126280072b90092d50092b90090200072b90092d5", + "0x2d50090071b00070072d500900715400702e1eb02c011a0702a1ea1542d5", + "0x2c0071ed0092d50091ea00902a0070310092d500902f00946400702f009", + "0x7a0800900711f0070360092d50090310094650071ee0092d500902a009", + "0x2d500902c00902a0070380092d500902e0094670070072d5009007154007", + "0x6140070360092d50090380094650071ee0092d50091eb00902c0071ed009", + "0x2d51541ef0092280071ef0092d500903a00961500703a0092d5009036009", + "0x703f0092d500903c0092e30070072d50090071540071ec009a0903c009", + "0x2000901d0070420092d5009040009a0b0070400092d500903f016154a0a", + "0x450092d500901d00906e0072a00092d50091ed00902a0072a20092d5009", + "0x2a02a201200929d0092d5009042009a0c0070470092d50091ee00902c007", + "0x1ec009a0d0070072d500901600913b0070072d500900715400729d047045", + "0x4a0092d50091ed00902a0072980092d500902000901d00729a0092d5009", + "0x29a009a0c0072960092d50091ee00902c00704c0092d500901d00906e007", + "0x98240070072d50090071a100728f29604c04a29801200928f0092d5009", + "0x160092d50090070210070120092d50092ae009a0e0072ae0092d500900e", + "0x2000961d00701d0201542d500901200961c0070180092d5009007021007", + "0x70260092d500900900902a0070240092d500900700901d0070072d5009", + "0x90180090520072b90092d50090160090520070280092d500901d009525", + "0x961f0072a602101e0112d50091ea2b902802602401261e0071ea0092d5", + "0x2d500902a0096210070072d500900715400702c009a0f02a0092d51542a6", + "0x1ed0311542d50091eb0090580070072d500902f00916600702f02e1eb011", + "0x902e0090580071ee0092d50091ed00916a0070072d5009031009169007", + "0x71ef0092d500903800916a0070072d50090360091690070380361542d5", + "0x92d50091ef0091750071ee0092d50091ee0091750070072d50090071ba", + "0x15400704003f1ec011a1003c03a1542d51541ef1ee15402100e6220071ef", + "0x72a20092d50090420094640070420092d50090071b00070072d5009007", + "0x92a20094650070450092d500903c00902c0072a00092d500903a00902a", + "0x90400094670070072d5009007154007007a1100900711f0070470092d5", + "0x70450092d500903f00902c0072a00092d50091ec00902a00729d0092d5", + "0x92980096150072980092d50090470096140070470092d500929d009465", + "0x72d500900715400704c009a1204a0092d515429a00922800729a0092d5", + "0x92960111542570072960092d500904a0092e30070072d50090071a1007", + "0x70500092d500901e00901d00704e0092d500928f00925900728f0092d5", + "0x904e0092470070520092d500904500902c00728c0092d50092a000902a", + "0x2d50090071a10070072d500900715400705405228c05000e0090540092d5", + "0x1e00901d0071660092d500904c0092450070072d5009011009298007007", + "0x16a0092d500904500902c0071690092d50092a000902a0070580092d5009", + "0x72d50090071540070e616a16905800e0090e60092d5009166009247007", + "0x901e00901d00705d0092d500902c0092450070072d5009011009298007", + "0x70600092d500915400902c0070e40092d500902100902a0070e50092d5", + "0x92d50090070091980070620600e40e500e0090620092d500905d009247", + "0xe009a140110092d51540090098720070090092d5009154009a13007154", + "0x2d5009012009a160070120092d5009011009a150070072d5009007154007", + "0x70072d50090071540070160090090160092d50092ae009a170072ae009", + "0x200092d50090072f70070180092d50090070210070072d500900e009166", + "0x702800701d0092d50090200181540260070200092d5009020009024007", + "0x92d5009021009a180070210092d500901d01e1542b900701e0092d5009", + "0x120092d500900e0096260070240090090240092d50092a6009a170072a6", + "0x15400701e01d020011a190180162ae0112d515401201115400900e739007", + "0x260092d50090180090240070240092d500900700901d0070072d5009007", + "0x2c0072ae0092d50092ae00902a0072a60211542d5009026024154424007", + "0x71540072b9009a1a0280092d51542a60094250070160092d5009016009", + "0x702a0092d50091ea009a1c0071ea0092d5009028009a1b0070072d5009", + "0x92ae00902a0071eb0092d500902100901d00702c0092d500902a009a1d", + "0x90310092d500902c009a1e00702f0092d500901600902c00702e0092d5", + "0x210070072d50092b90091660070072d500900715400703102f02e1eb00e", + "0x1ee0092d50091ee0090240071ee0092d50090079a00071ed0092d5009007", + "0x381542b90070380092d50090070280070360092d50091ee1ed154026007", + "0x92d500902100901d00703a0092d50091ef009a1f0071ef0092d5009036", + "0x9a1e00703f0092d500901600902c0071ec0092d50092ae00902a00703c", + "0x9a200070072d500900715400704003f1ec03c00e0090400092d500903a", + "0x92d50092a2009a1d0072a20092d5009042009a1c0070420092d500901e", + "0x902c0070470092d500902000902a0070450092d500900700901d0072a0", + "0x729a29d04704500e00929a0092d50092a0009a1e00729d0092d500901d", + "0x180162ae0112d515401201115400900e7390070120092d500900e009626", + "0x70240092d500900700901d0070072d500900715400701e01d020011a21", + "0x902a0072a60211542d50090260241541b80070260092d5009018009024", + "0x92d51542a60091a30070160092d500901600902c0072ae0092d50092ae", + "0xa240071ea0092d5009028009a230070072d50090071540072b9009a22028", + "0x2d500902100901d00702c0092d500902a009a2500702a0092d50091ea009", + "0xa2600702f0092d500901600902c00702e0092d50092ae00902a0071eb009", + "0x1660070072d500900715400703102f02e1eb00e0090310092d500902c009", + "0x71ee0092d5009007a270071ed0092d50090070210070072d50092b9009", + "0x90070280070360092d50091ee1ed1540260071ee0092d50091ee009024", + "0x3a0092d50091ef009a280071ef0092d50090360381542b90070380092d5", + "0x1600902c0071ec0092d50092ae00902a00703c0092d500902100901d007", + "0x15400704003f1ec03c00e0090400092d500903a009a2600703f0092d5009", + "0x2a20092d5009042009a240070420092d500901e009a290070072d5009007", + "0x2000902a0070450092d500900700901d0072a00092d50092a2009a25007", + "0x29a0092d50092a0009a2600729d0092d500901d00902c0070470092d5009", + "0x7154007154009a2b0090092d5154007009a2a00729a29d04704500e009", + "0x700e0092d500901100988b0070110092d500900900988a0070072d5009", + "0x90070280070072d50090071540070120090090120092d500900e00988c", + "0x180092d50090160092ee0070160092d50091542ae1542b90072ae0092d5", + "0xe0111542d500900900941d0070200090090200092d500901800988c007", + "0x6a500701d0111542d50090110096a50072ae0121542d500915400941d007", + "0x1d0070200180160112d500901e01d1542f600701e0121542d5009012009", + "0x90260241548990070260092d50090200098980070240092d5009007009", + "0x2a2ae1542d50092ae0096a50070072d50092a60091660072a60211542d5", + "0x702e0092d500902100901d0071ea2b90280112d500902a0111542f6007", + "0x91660071eb02c1542d500902f02e15489900702f0092d50091ea009898", + "0x1542d5009031009a2d0070310092d50092b9028154a2c0070072d50091eb", + "0x360112d500901203a1542f600703a00e1542d500900e0096a50071ee1ed", + "0x8990070400092d50091ef00989800703f0092d500902c00901d0071ef038", + "0x38036154a2c0070072d50091ec0091660071ec03c1542d500904003f154", + "0x2d5009018016154a2c0072a02a21542d5009042009a2d0070420092d5009", + "0x70470092d500904700967500729d0471542d5009045009a2d007045009", + "0x929d0096750071ed0092d50091ed0096750071ee0092d50091ee009675", + "0x72a00092d50092a00096750072a20092d50092a200967500729d0092d5", + "0x72d500900715400704c04a154a2f29829a1542d51541ee04703c011a2e", + "0x90072cf0070072d500929600941e00728f2961542d50091ed0092e4007", + "0x70072d500905000941e00728c0501542d500904e0092e400704e0092d5", + "0x5400941e0071660541542d50090520092e40070520092d500928f00941f", + "0x16a1691542d50090580092e40070580092d500928c00941f0070072d5009", + "0x916a00941f0070e60092d500916600941f0070072d500916900941e007", + "0xa300072d515405d0e61546a800729a0092d500929a00901d00705d0092d5", + "0x2d500900e00941e0070072d50092ae00941e0070072d5009007154007007", + "0x72d5009007154007007a3100900711f0070072d50092a200941e007007", + "0x90072cf0070072d50090e500941e0070e40e51542d50092a20092e4007", + "0x70072d500906200941e0071700621542d50090600092e40070600092d5", + "0x17300941e0070661731542d50091710092e40071710092d50090e400941f", + "0x6a1751542d50090680092e40070680092d500917000941f0070072d5009", + "0x906a00941f00706c0092d500906600941f0070072d500917500941e007", + "0x70072d5009007154007007a320072d515417806c1546a80071780092d5", + "0x2d50090700090ec0070700092d500906e00923d00706e0092d50090071b0", + "0x92d50090071b00070072d5009007154007007a3300900711f00717d009", + "0x923f00717d0092d50090730090ec0070730092d500917f00923800717f", + "0x92d51540740092410070740092d50090740090ec0070740092d500917d", + "0x72cf0070072d50090760091660070072d5009007154007180009a34076", + "0x2d515400e18229a0116a60071820092d50091820096750071820092d5009", + "0x72d500907c00941e0070072d500900715400707f07d154a3507c07a154", + "0x2d500918500923d0071850092d50090071b00070072d50092ae00941e007", + "0x11f0071860092d50090810090ec0070830092d500907a00901d007081009", + "0x72cf0070072d500907f00941e0070072d5009007154007007a36009007", + "0x2d51542ae08507d0116a60070850092d50090850096750070850092d5009", + "0x72d500918800941e0070072d500900715400708608b154a37188187154", + "0x918700901d00708d0092d500905600923d0070560092d50090071b0007", + "0x7154007007a3800900711f00718a0092d500908d0090ec0071890092d5", + "0x92380070910092d50090071b00070072d500908600941e0070072d5009", + "0x92d500918b0090ec0071890092d500908b00901d00718b0092d5009091", + "0x95ac0071860092d500918a0092c90070830092d50091890095ac00718a", + "0x7007a3900900711f00718c0092d50091860092c90070940092d5009083", + "0x70072d50092ae00941e0070072d50091800091660070072d5009007154", + "0x92d50090960092380070960092d50090071b00070072d500900e00941e", + "0x1549a700718c0092d50090980090ec0070940092d500929a00901d007098", + "0x2d500918d0099a800709a0092d500909400901d00718d0092d500918c298", + "0x2d50091ed00941e0070072d5009007154007007a3a00900711f00709c009", + "0x900e00941e0070072d50092ae00941e0070072d50092a200941e007007", + "0x1549a700718f0092d500918e00923800718e0092d50090071b00070072d5", + "0x2d500909f0099a800709a0092d500904a00901d00709f0092d500918f04c", + "0x1542d51542a00a109a011a2e0071960a11542d500909c0099aa00709c009", + "0x92d50091960a41549a70070072d50090071540071a40a6154a3b0a40dd", + "0x711f0071a70092d50090a80099a80070aa0092d50090dd00901d0070a8", + "0x90071b00070072d50091960090ed0070072d5009007154007007a3c009", + "0x1af0092d50090ad1a41549a70070ad0092d50090ab0092380070ab0092d5", + "0x1a70099aa0071a70092d50091af0099a80070aa0092d50090a600901d007", + "0x90dc0b11549ac0070b10092d50091b129d1542d10070dc1b11542d5009", + "0x90da0092d50090b30099ad0071b70092d50090aa00901d0070b30092d5", + "0x70090092d5009154009a3d0071540092d50090070090960070da1b7154", + "0x11009a3f0070072d500900715400700e009a3e0110092d5154009009895", + "0x160092d50092ae009a410072ae0092d5009012009a400070120092d5009", + "0x90070210070072d500900e0091660070072d5009007154007016009009", + "0x260070200092d50090200090240070200092d5009007a420070180092d5", + "0x901d01e1542b900701e0092d500900702800701d0092d5009020018154", + "0x90240092d50092a6009a410072a60092d5009021009a430070210092d5", + "0x960072ae0092d50090090090960070120092d500900700901d007024009", + "0x988000700e0111542d50090162ae012011a440070160092d5009154009", + "0x715400701e009a4501d0092d51540200092410070200181542d500900e", + "0x42c0070210092d500901800942b0070072d500901d0091660070072d5009", + "0x1660070072d5009007154007007a4600900711f0072a60092d5009021009", + "0x70240092d50090071b00070072d500901800918c0070072d500901e009", + "0x901100901d0072a60092d500902600942c0070260092d500902400942e", + "0x900e00941d0072b90281540092b90092d50092a600942c0070280092d5", + "0x111542d50090110099920070160092d50090120094200072ae0121542d5", + "0x62800701d1541542d50091540099910070180092d5009020009626007020", + "0x90071540070260242a6011a4702101e1542d515401601801d009007012", + "0x1549990072b90092d50090072f80070280092d50092ae0094200070072d5", + "0x2d50091ea00962700701e0092d500901e00902a0071ea0092d50092b9011", + "0x2f02e1eb011a4802c02a1542d51540281ea15402101e0126280071ea009", + "0x92d50090310094640070310092d50090071b00070072d5009007154007", + "0x94650070360092d500902c00902c0071ee0092d500902a00902a0071ed", + "0x2f0094670070072d50090071540070380361ee0110090380092d50091ed", + "0x3c0092d500902e00902c00703a0092d50091eb00902a0071ef0092d5009", + "0x70072d50090071540071ec03c03a0110091ec0092d50091ef009465007", + "0x72d50091540092ae0070072d50092ae00941e0070072d50090110099a3", + "0x2400902c0070400092d50092a600902a00703f0092d5009026009467007", + "0x71a10072a20420400110092a20092d500903f0094650070420092d5009", + "0x121542d500900e0094dd00700e1541542d5009154009a490070072d5009", + "0x110090520070200092d500901200928c0070072d50092ae0090e40072ae", + "0x2d50090180091660070180161542d500901d02015405400701d0092d5009", + "0x901d0070072d500901e00905000702101e1542d50091540094dd007007", + "0x92d50090210091750072b90092d500900900902a0070280092d5009007", + "0x2a60112d500902a1ea2b902800e4df00702a0092d50090160090520071ea", + "0x70072d50090071540071eb009a4a02c0092d51540260094e0007026024", + "0x97300070310092d500902f02e15472f00702f02e1542d500902c0094e2", + "0x92d500902400902a0071ee0092d50092a600901d0071ed0092d5009031", + "0x72d50090071540070380361ee0110090380092d50091ed009731007036", + "0x2400902a00703a0092d50092a600901d0071ef0092d50091eb009732007", + "0x91660071ec03c03a0110091ec0092d50091ef00973100703c0092d5009", + "0x70110092d50090090090520071540092d50090071b00070072d5009007", + "0x70090092d5009007009a4b00700e01115400900e0092d5009154009144", + "0x5250070090092d5009007009a4c0071540090091540092d5009009009525", + "0x95250070090092d5009007009a4d0071540090091540092d5009009009", + "0x154007009009a4f0072d5154007009a4e0071540090091540092d5009009", + "0x70110092d5009154009a500071540092d50090071b00070072d5009007", + "0x70072d5009007154007007a5200900711f00700e0092d5009011009a51", + "0x900e009a5300700e0092d5009012009a510070120092d500900900998a", + "0x9007154007009009a550072d5154007009a540072ae0090092ae0092d5", + "0x9a570070110092d5009154009a560071540092d50090071b00070072d5", + "0x99c00070072d5009007154007007a5800900711f00700e0092d5009011", + "0x92d500900e009a5900700e0092d5009012009a570070120092d5009009", + "0x1542d500915400941d00700e0111542d500900900941d0072ae0090092ae", + "0x715400701d020154a5a0180161542d51542ae00e007011a2e0072ae012", + "0x9a70070210092d500901e00923d00701e0092d50090071b00070072d5009", + "0x92a60099a80070240092d500901600901d0072a60092d5009021018154", + "0x2d50090071b00070072d5009007154007007a5b00900711f0070260092d5", + "0x71ea0092d50092b901d1549a70072b90092d5009028009238007028009", + "0x90260099aa0070260092d50091ea0099a80070240092d500902000901d", + "0x703102f154a5c02e1eb1542d5154012011024011a2e00702c02a1542d5", + "0x902c1ed1549ac0071ed0092d500902a02e1542d10070072d5009007154", + "0x70380092d50091ee0099ad0070360092d50091eb00901d0071ee0092d5", + "0x6750071ef0092d50090074130070072d5009007154007007a5d00900711f", + "0x1ec154a5e03c03a1542d51541ef02a02f011a2e0071ef0092d50091ef009", + "0x401549ac0070400092d500903c0311542d10070072d500900715400703f", + "0x92d50090420099ad0072a20092d500903a00901d0070420092d500902c", + "0x72d500902c0090ed0070072d5009007154007007a5f00900711f0072a0", + "0x470092380070470092d50090071b00070450092d500903f0311542d1007", + "0x92d50091ec00901d00729a0092d500929d0451549ac00729d0092d5009", + "0x99b10070360092d50092a20095ac0072a00092d500929a0099ad0072a2", + "0x92d50090380099b10072980092d50090360095ac0070380092d50092a0", + "0x1115400900715e10a15f00700e04010a15f00700e41104a29815400904a", + "0x15f00712401219601115400900715e10a15f00700e04010a15f00700e007", + "0x4010a15f00712401213900e01115400900715e10a15f00712401204010a", + "0x12401204010a15f00712401243000e01115400900715e10a15f007124012", + "0x15f00712401204010a15f00712401250100e01115400900715e10a15f007", + "0x15e10a15f00712401204010a15f0071240125e900e01115400900715e10a", + "0x1115400900715e10a15f00700e04010a15f00700e6d000e011154009007", + "0x15f00712401283e01115400900715e10a15f00700e04010a15f00700e7c6", + "0x4010a15f00712401289d00e01115400900715e10a15f00712401204010a", + "0x12401204010a15f00712401297300e01115400900715e10a15f007124012", + "0x15f00712401204010a15f007124012a4e00e01115400900715e10a15f007", + "0x15e10a15f00712401204010a15f007124012a6000e01115400900715e10a", + "0x1115400900715e10a15f00700e04010a15f00700ea6100e011154009007", + "0xe01115400900715e10a15f10d0071242ae04010a15f10d0071242aea62", + "0x1115400900715e10a15f10d0071242ae04010a15f10d0071242aea63012", + "0x15400900715e10a15f10d0071242ae04010a15f10d0071242aea6401200e", + "0x900715e10a15f10d0071242ae04010a15f10d0071242aea6501200e011", + "0x15400900715e10a15f00712401204010a15f007124012a6601200e011154", + "0xe01115400900715e10a15f00712401204010a15f007124012a6700e011", + "0x12a6900e01115400900715e10a15f00712401204010a15f007124012a68", + "0x7124012a6a00e01115400900715e10a15f00712401204010a15f007124", + "0x10a15f007124012a6b00e01115400900715e10a15f00712401204010a15f", + "0x1204010a15f007124012a6c00e01115400900715e10a15f007124012040", + "0x712401204010a15f007124012a6d00e01115400900715e10a15f007124", + "0x10a15f00712401204010a15f007124012a6e00e01115400900715e10a15f", + "0x715e10a15f00712401204010a15f007124012a6f00e01115400900715e", + "0x15400900715e10a15f00712401204010a15f007124012a7000e011154009", + "0xe01115400900715e10a15f00712401204010a15f007124012a7100e011", + "0x12a7300e01115400900715e10a15f00712401204010a15f007124012a72", + "0x7124012a7400e01115400900715e10a15f00712401204010a15f007124", + "0x10a15f007124012a7500e01115400900715e10a15f00712401204010a15f", + "0x1204010a15f007124012a7600e01115400900715e10a15f007124012040", + "0x712401204010a15f007124012a7700e01115400900715e10a15f007124", + "0x10a15f00712401204010a15f007124012a7800e01115400900715e10a15f", + "0x715e10a15f00712401204010a15f007124012a7900e01115400900715e", + "0x15400900715e10a15f00712401204010a15f007124012a7a00e011154009", + "0xe01115400900715e10a15f00712401204010a15f007124012a7b00e011", + "0x12a7d00e01115400900715e10a15f00712401204010a15f007124012a7c", + "0x7124012a7e00e01115400900715e10a15f00712401204010a15f007124", + "0x10a15f007124012a7f00e01115400900715e10a15f00712401204010a15f", + "0x1204010a15f007124012a8000e01115400900715e10a15f007124012040", + "0x712401204010a15f007124012a8100e01115400900715e10a15f007124", + "0x10a15f00712401204010a15f007124012a8200e01115400900715e10a15f", + "0x715e10a15f00712401204010a15f007124012a8300e01115400900715e", + "0x15400900715e10a15f00712401204010a15f007124012a8400e011154009", + "0xe01115400900715e10a15f00712401204010a15f007124012a8500e011", + "0x15401e07a154a8701115400900716510a15f00700e10810a15f00700ea86", + "0xa8901115400900716810a15f00700e10810a15f00700ea8800900700e01e", + "0x2aea8b00900716b040007011040007154a8a00900700e01e15401e05d154", + "0x154a8c01200e01115400900716c10a12415f00701209410810a12415f007", + "0x12415f00701207a10810a12415f0072aea8d00900716e040007011040007", + "0x2aea8f00900716f040007011040007154a8e01200e01115400900716c10a", + "0x2aea9001200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aea9101200e01115400900716c10a12415f00701209410810a12415f007", + "0x154a9201200e01115400900716c10a12415f00701209410810a12415f007", + "0x10a12415f00701205d10810a12415f0072aea9300900700e01e15401e011", + "0x15f0072aea9500900700e01e15401e094154a9401200e011154009007174", + "0x15f0072aea9601200e01115400900716810a12415f00701209410810a124", + "0x1e016154a9701200e01115400900717610a12415f00701209410810a124", + "0x12415f007016a99009007177040007011040007154a9800900700e01e154", + "0x7018a9a2ae01200e01115400900716c10a12415f00701201609410810a", + "0x2ae01200e01115400900716c10a12415f00701201609409410810a12415f", + "0x15f007011a9c01115400900717b10a15f00700e10810a15f00700ea9b016", + "0x15f0072ae0ce10810a10d12415f007016a9d15400900717e15f007011040", + "0xce10810a10d12415f007016a9e2ae01200e01115400900717b10a10d124", + "0x10d12415f007016a9f2ae01200e01115400900716c10a10d12415f0072ae", + "0x7016aa02ae01200e01115400900716c10a10d12415f0072ae0ce10810a", + "0x2ae01200e01115400900716c10a10d12415f0072ae0ce10810a10d12415f", + "0x12415f00701205d01110810a12415f007016aa2007181040154040009aa1", + "0x2aeaa400900700e01e15401e012154aa32ae01200e01115400900718310a", + "0x2aeaa501200e01115400900718410a12415f00701201110810a12415f007", + "0x2aeaa601200e01115400900718310a12415f00701205d10810a12415f007", + "0x2aeaa701200e01115400900718310a12415f00701205d10810a12415f007", + "0x2aeaa801200e01115400900718310a12415f00701205d10810a12415f007", + "0x2aeaa901200e01115400900718310a12415f00701205d10810a12415f007", + "0x2aeaaa01200e01115400900718310a12415f00701205d10810a12415f007", + "0x2aeaab01200e01115400900718310a12415f00701205d10810a12415f007", + "0x2aeaac01200e01115400900718310a12415f00701205d10810a12415f007", + "0x2aeaad01200e01115400900718310a12415f00701205d10810a12415f007", + "0x2aeaae01200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeaaf01200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeab001200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeab101200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeab201200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeab301200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeab401200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeab501200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeab601200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeab701200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeab801200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeab901200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeaba01200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeabb01200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeabc01200e01115400900716c10a12415f00701205d10810a12415f007", + "0x2aeabd01200e01115400900716c10a12415f00701205d10810a12415f007", + "0x18abe01200e01115400900716c10a12415f00701201110810a12415f007", + "0x1200e01115400900716c10a12415f00701201605d01110810a12415f007", + "0x16c10a12415f00701201605d09409401110810a12415f00701dabf0162ae", + "0x719515f00701104015f007011ac00200180162ae01200e011154009007", + "0x10a12415f00701204001605d09409401110810a12415f00701eac1154009", + "0x71a1007154011007154ac201d0200180162ae01200e01115400900716c", + "0x716c10a12415f00701202401101109401110810a12415f00701dac3009", + "0x2aeac50090071a3007154011007154ac40200180162ae01200e011154009", + "0xeac601200e01115400900716c10a12415f00701202e10810a12415f007", + "0xe10410a15f00700eac701115400900716510a15f00700e10310a15f007", + "0x7012ac900900716b007154011007154ac801115400900716810a15f007", + "0x10210a15f011aca00e0111540090071a810a12415f00701210810a12415f", + "0x1540090071b010a15f01109410210a15f00eacb15400900717410a15f011", + "0xeacd00e01115400900716c10a15f00700e0d510810a15f007012acc011", + "0xe0d610810a15f007012ace0111540090071b410a15f01107a10310a15f", + "0x71b610a15f01105d10410a15f00eacf00e01115400900716c10a15f007", + "0xe01115400900716c10a15f00700e0d710810a15f007012ad0011154009", + "0x16ad200e0111540090071a810a12415f00701210810a12415f007012ad1", + "0x2ae01200e0111540090071ba10a12415f00701201205d10510a12415f007", + "0x15f00700e0de10810a15f007012ad400900716810a15f01110a15f154ad3", + "0x1a810a12415f00701210810a12415f007012ad500e01115400900716c10a", + "0x15400900716c10a15f00700e0df10810a15f007012ad600e011154009007", + "0x1115400900717410a12415f00701205d0a410a12415f0072aead700e011", + "0x1115400900716810a12415f0070120940a810a12415f0072aead801200e", + "0x1115400900718310a12415f00701205d10810a12415f0072aead901200e", + "0x1115400900717610a12415f00701205d10810a12415f0072aeada01200e", + "0x9007176007154016016007011adc009007012009016016154adb01200e", + "0x154ade00e01115400900717610a15f00700e05d10810a15f007012add154", + "0x900716810a15f00700e10610a15f00700eadf0090071be007154011007", + "0xae100e01115400900716c10a15f00700e0d810810a15f007012ae0011154", + "0xae3009007012009016016154ae215400900717410a15f01110810a15f011", + "0x16007011ae400e01115400900717610a15f00700e05d1c310a15f007012", + "0x12415f00701201609410810a12415f007016ae5154009007012007154016", + "0x1a810a15f01101605d1c510a15f012ae62ae01200e01115400900716c10a", + "0x700e0d910810a15f007012ae8007011009094009ae700e011154009007", + "0x717b10a15f00700e09f10a15f00700eae900e01115400900716c10a15f", + "0x40154040009aeb1540090071c915f00701104015f007011aea011154009", + "0x72aeaed01115400900718410d15f00700e0ce10d15f00700eaec0071ca", + "0x7012aee01200e01115400900717b10a12415f00701201106e10a12415f", + "0x1110a15f154aef00e0111540090071a810a12415f00701210810a12415f", + "0x15f007018af115400900717b00715402e02e007011af000900717b10a15f", + "0x2ae01200e01115400900716c10a10d12415f0072ae02e0ce10810a10d124", + "0x900716c10a10d12415f0072ae02e0ce10810a10d12415f007018af2016", + "0x900716c10a15f00700e0e010810a15f007012af30162ae01200e011154", + "0xe01115400900716c10a15f00700e0e110810a15f007012af400e011154", + "0x10810a10d12415f007016af615400900718310a15f01110810a15f011af5", + "0x10a15f007012af72ae01200e01115400900717b10a10d12415f0072ae0ce", + "0x10a15f01110810a15f011af800e01115400900716c10a15f00700e0e2108", + "0x1115400900716c10a15f00700e0e310810a15f007012af915400900716c", + "0x12415f0072aeafb0111540090071d415f00701101e04015f00700eafa00e", + "0x12415f0072aeafc01200e01115400900718310a12415f0070121cd03a10a", + "0x12415f007018afd01200e01115400900718410a12415f00701201103610a", + "0xafe0162ae01200e01115400900716c10a12415f0070121cc05d01110810a", + "0xe01115400900716c10a12415f0070121cc05d01110810a12415f007018", + "0x900716c10a12415f00701205d01110810a12415f007016aff0162ae012", + "0xb010111540090071a810a15f01101110810a15f00eb002ae01200e011154", + "0x7012b0201200e0111540090071a810a15f01101605d05d10810a15f2ae", + "0x10810a15f007012b0300e01115400900716c10a15f00700e0db10810a15f", + "0x701101101e04015f007012b0400e01115400900716c10a15f00700e0da", + "0xdc10810a15f007012b0600715e0090f8009b0500e0111540090071b715f", + "0x900716810a15f01110a15f154b0700e01115400900716c10a15f00700e", + "0x10a12415f00701205d0940a810a12415f007016b090071af0091b1009b08", + "0x15f00701209405d0a410a12415f007016b0a2ae01200e0111540090071a7", + "0x15f00700e0dd10810a15f007012b0b2ae01200e0111540090071a410a124", + "0x16c10a12415f00701210810a12415f007012b0c00e01115400900716c10a", + "0xb0e01115400900719610a15f01102e09f10a15f00eb0d00e011154009007", + "0x15f007012b0f00e01115400900716c10a15f00700e02410810a15f007012", + "0xb1100716500909a009b1000e01115400900718e10a15f00700e18f15110a", + "0x9096009b1200e01115400900718d10a15f00700e18f15110a15f007012", + "0x10a15f01118f15110a15f00eb14009007016007154011007154b13007168", + "0x15f01109418f15110a15f012b1600717400918c009b1501115400900718c", + "0xb190071cc0090d5009b180071a8009114009b1700e01115400900711410a", + "0x1cc0090d6009b1a00e01115400900718b15f00701101e01e1cc15f007012", + "0x15400900718f12400701105d10512400700eb1c0071cc0090d7009b1b007", + "0xdf009b1f0071cc0090de009b1e00900718910a15f01110a15f154b1d011", + "0x700eb2101115400900718f12400701105d0a412400700eb200071cc009", + "0x1205d10510a12415f0072aeb2201115400900718f1240070110940a8124", + "0x717b00715402e02e007011b2301200e01115400900718310a12415f007", + "0x1115400900717610a12415f00701218804510a12415f0072aeb24154009", + "0x9007177007154016016007011b26009007012009009009154b2501200e", + "0x15f00700eb2801115400900717610a15f00700e1c310a15f00700eb27154", + "0x7011b2a007016009024009b2901115400900718710a15f00700e10810a", + "0xb2c154009007176007154016016007011b2b154009007176007154016016", + "0x1605d10810a12415f007016b2e00715e0090f8009b2d0071cc0090d8009", + "0xb300071cc0090d9009b2f2ae01200e01115400900716c10a12415f007012", + "0x9081009b3100e01115400900718610a15f00700e18f15110a15f007012", + "0x182040154040009b3315400900718515f00701104015f007011b3200717b", + "0x10d15f00700eb350111540090071d415f00701101e0ce15f00700eb34007", + "0x18f12400701101106e12400700eb3601115400900718410d15f00700e040", + "0x17b00901117f154b3800900718010a15f01110a15f154b37011154009007", + "0x15400900717d10a12415f00701202e01106e10a12415f007016b39009007", + "0x717810a12415f00701202e01106a10a12415f007016b3a2ae01200e011", + "0x11b3d0071cc0090e1009b3c0071cc0090e0009b3b2ae01200e011154009", + "0x701201106a10a12415f0072aeb3e15400900718310a15f01106610a15f", + "0x10a15f00eb400071cc0090e2009b3f01200e01115400900717b10a12415f", + "0x15f00700eb420071cc0090e3009b4101115400900717510a15f011012066", + "0x18f1240070111cd03a12400700eb430111540090071d415f00701101e040", + "0x9b4501115400900717310a15f01118f15110a15f00eb44011154009007", + "0x9b4701115400900718f12400701101103612400700eb46007183009173", + "0x716c10a12415f00701205d01110810a12415f007016b48007184009171", + "0x900716c10a15f00700e1cc10810a15f007012b492ae01200e011154009", + "0x900716c10a12415f00701205d01110810a12415f007016b4a00e011154", + "0x16c10a12415f00701205d01110810a12415f007016b4b2ae01200e011154", + "0x90071a810a15f01101605d1c510a15f012b4c2ae01200e011154009007", + "0x90110f8154b4f0071cc0090da009b4e0071cc0090db009b4d00e011154", + "0x12415f007016b520071cc0090dd009b510071cc0090dc009b5000900715e", + "0x7016b532ae01200e01115400900716c10a12415f00701205d01110810a", + "0xb542ae01200e01115400900716c10a12415f00701201101110810a12415f", + "0x16e007154011007154b5501115400900717010a15f01102406010a15f00e", + "0xe01e01e01101e01e0d5011b5700900716f007154011007154b56009007", + "0x1e01e0d7011b5915400900700e01e01e01101e01e0d6011b58154009007", + "0xb5b15400900700e01e01e01101e01e0d8011b5a15400900700e01e01e011", + "0xe01e01e01101e01e0da011b5c15400900700e01e01e01101e01e0d9011", + "0xdc15f007012b5e15400900700e01e01e01101e01e0db011b5d154009007", + "0xe01e01e01101e01e0dd011b5f00e01115400900718b15f00701101e01e", + "0x1e01e0df011b6115400900700e01e01e01101e01e0de011b60154009007", + "0x900718b15f00701101e01e0e015f007012b6215400900700e01e01e011", + "0xb6400e01115400900718b15f00701101e01e0e115f007012b6300e011154", + "0x1e01e0e3011b6500e01115400900718b15f00701101e01e0e215f007012", + "0xb6715400900700e01e01e01101e01e0e4011b6615400900700e01e01e011", + "0xe01e01e01101e01e0e6011b6815400900700e01e01e01101e01e0e5011", + "0x1e01e0e8011b6a15400900700e01e01e01101e01e0e7011b69154009007", + "0xb6c15400900700e01e01e01101e01e0e9011b6b15400900700e01e01e011", + "0xe01e01e01101e01e0eb011b6d15400900700e01e01e01101e01e0ea011", + "0x1e01e0ed011b6f15400900700e01e01e01101e01e0ec011b6e154009007", + "0xb7115400900700e01e01e01101e01e0ee011b7015400900700e01e01e011", + "0xe01e01e01101e01e0f0011b7215400900700e01e01e01101e01e0ef011", + "0x1e01e0f2011b7415400900700e01e01e01101e01e0f1011b73154009007", + "0xb7615400900700e01e01e01101e01e0f3011b7515400900700e01e01e011", + "0xe01e01e01101e01e0f5011b7715400900700e01e01e01101e01e0f4011", + "0x189009169009b7915400900700e01e01e01101e01e0f6011b78154009007", + "0x15400900718f12400701118804512400700eb7b00716600902e009b7a007", + "0x9b7d00e01115400900728c10a15f00700e18f15110a15f007012b7c011", + "0x10a15f00700eb7f15400900728f007154016016007011b7e00717600904e", + "0x9007177007154016016007011b8001115400900718710a15f00700e060", + "0x16007011b8300900700e007154298007154b82007296009016009b81154", + "0x12415f00701201618804510a12415f007016b84154009007176007154016", + "0x71d415f00701101e07d15f00700eb852ae01200e01115400900729d10a", + "0x111540090072a210d15f00700e0402a016110d15f0072aeb86011154009", + "0x15f0072aeb8801115400900718f12400701101106a12400700eb8701200e", + "0x91cc009b8901200e0111540090071a810a12415f00701201110810a124", + "0x1540090071ec10a12415f0070120121cd03a10a12415f007016b8a0071cc", + "0x1115400900716c10a15f00700e0e510810a15f007012b8b2ae01200e011", + "0x16b8d00e01115400900716c10a15f00700e0e410810a15f007012b8c00e", + "0x2ae01200e0111540090071ef10a12415f00701201101103610a12415f007", + "0x2e009b8f00e01115400900716c10a15f00700e0e610810a15f007012b8e", + "0xe0111540090071eb10a15f00700e18f15110a15f007012b900071ed009", + "0x26009b9200e0111540090072b910a15f00700e18f15110a15f007012b91", + "0x72a6009016009b9415400900728f007154016016007011b93007187009", + "0x15f01101618f15110a15f012b96154009007177007154016016007011b95", + "0x1540090071d415f00701101e07c15f00700eb9700e01115400900711410a", + "0x90e4009b9a0071cc0090e5009b9900900700e01e15401e00e154b98011", + "0x704a009016009b9d00705200902e009b9c0071cc0090e6009b9b0071cc", + "0xb9f15400900728f007154016016007011b9e" + ], + "contract_class_version": "0.1.0", + "entry_points_by_type": { + "CONSTRUCTOR": [ + { + "selector": "0x28ffe4ff0f226a9107253e17a904099aa4f63a02a5621de0576e5aa71bc5194", + "function_idx": 50 + } + ], + "EXTERNAL": [ + { + "selector": "0xb2ef42a25c95687d1a3e7c2584885fd4058d102e05c44f65cf35988451bc8", + "function_idx": 44 + }, + { + "selector": "0xc30ffbeb949d3447fd4acd61251803e8ab9c8a777318abb5bd5fbf28015eb", + "function_idx": 18 + }, + { + "selector": "0x1e53a2c24c5e112d587ae8e3f02e480033142d66dabc5b27f2e73aefaf4d73", + "function_idx": 22 + }, + { + "selector": "0x1ed39aec2f073187695fc8913860a291c3168bde08bd3b17f7b7944d68c903", + "function_idx": 1 + }, + { + "selector": "0x200c1f1ffbab3779978bca9730930ba9a9e66d8a0b7bc33a5fec5aa03a3383", + "function_idx": 35 + }, + { + "selector": "0x32ee1586dba78063a5bbafddcc29c1a22ea48b4c9dc956aa7912b574dedf06", + "function_idx": 31 + }, + { + "selector": "0x3c85cdee48a788ed99cbbdab3fc85334045302207396ffeb9181d8538fbd7e", + "function_idx": 27 + }, + { + "selector": "0x55731957fc844d0a5167d1ecb949b7d44597e3c89c298521341beb715722d3", + "function_idx": 4 + }, + { + "selector": "0x95604234097c6fe6314943092b1aa8fb6ee781cf32ac6d5b78d856f52a540f", + "function_idx": 45 + }, + { + "selector": "0xaa9d3969895becdf924fc217959b7d2e026858f66365f0d901422ca91feff9", + "function_idx": 5 + }, + { + "selector": "0xe48e45e0642d5f170bb832c637926f4c85b77d555848b693304600c4275f26", + "function_idx": 12 + }, + { + "selector": "0xe5b455a836c7a254df57ed39d023d46b641b331162c6c0b369647056655409", + "function_idx": 13 + }, + { + "selector": "0x101c29f5ab9a134a1ad91e810da2ee36097f61556720075061f263bac2f325a", + "function_idx": 11 + }, + { + "selector": "0x13f487a4369c7172d6956afb2cf6f64608acbb24acc5f3d5aa90bd5816286d3", + "function_idx": 24 + }, + { + "selector": "0x17ef0177c78e1db272fdb93b521dbc5d43a42c68989bfb5b83c4b7d83032eb8", + "function_idx": 3 + }, + { + "selector": "0x183420eb7aafd9caad318b543d9252c94857340f4768ac83cf4b6472f0bf515", + "function_idx": 37 + }, + { + "selector": "0x1a2017ef5b20c5bcaaa7c75c80e1e83894db6bf57a1f0ccf934d72d20c533e2", + "function_idx": 42 + }, + { + "selector": "0x1aed1feb8363b54f3deae07a977de936f331117518c93a0ea9ca258bb6bb76f", + "function_idx": 0 + }, + { + "selector": "0x1be37a8fb1dad6ee398830620c21b7709e96b1c2cc77e0bfcd118da95973e28", + "function_idx": 34 + }, + { + "selector": "0x1d673cbe4f26bde9aeffa10b8f769844ed40a0fe6ff9396b658f9e3979c9c92", + "function_idx": 36 + }, + { + "selector": "0x1f4c8ca7a9f4f5e12699bbe2dfdda584882a7b24c5e066bb424630c133f457c", + "function_idx": 29 + }, + { + "selector": "0x1fa400a40ac35b4aa2c5383c3bb89afee2a9698b86ebb405cf25a6e63428605", + "function_idx": 15 + }, + { + "selector": "0x208c00df249878f8454e5528363b3d27190a6646050e118c95896081e79b625", + "function_idx": 39 + }, + { + "selector": "0x20fbcc63dd27102c239b295cd7736d3c80dd3a78ceb4d04235216cb2df6b64f", + "function_idx": 21 + }, + { + "selector": "0x225faa998b63ad3d277e950e8091f07d28a4c45ef6de7f3f7095e89be92d701", + "function_idx": 38 + }, + { + "selector": "0x24643b0aa4f24549ae7cd884195db7950c3a79a96cb7f37bde40549723559d9", + "function_idx": 43 + }, + { + "selector": "0x25a5317fee78a3601253266ed250be22974a6b6eb116c875a2596585df6a400", + "function_idx": 23 + }, + { + "selector": "0x28331249e0b9038cda249991683676f1c45c0c6dc6048cdeac7cbb74f730daa", + "function_idx": 10 + }, + { + "selector": "0x284a2f635301a0bf3a171bb8e4292667c6c70d23d48b0ae8ec4df336e84bccd", + "function_idx": 14 + }, + { + "selector": "0x2991bb19305a4d6507010cd65c3b5ae1573665f684593f23c839f2011e46bf1", + "function_idx": 2 + }, + { + "selector": "0x2a4bb4205277617b698a9a2950b938d0a236dd4619f82f05bec02bdbd245fab", + "function_idx": 7 + }, + { + "selector": "0x2c4943a27e820803a6ef49bb04b629950e2de615ab9ac0fb8baef037b168782", + "function_idx": 8 + }, + { + "selector": "0x2dd3fc201e4da6681550a76dd6493603d5993cb332beba76c0e7ee17c4b4605", + "function_idx": 9 + }, + { + "selector": "0x302e0454f48778e0ca3a2e714a289c4e8d8e03d614b370130abb1a524a47f22", + "function_idx": 20 + }, + { + "selector": "0x30559321b47d576b645ed7bd24089943dd5fd3a359ecdd6fa8f05c1bab67d6b", + "function_idx": 19 + }, + { + "selector": "0x3228e2f6f948dd394826cef600c2a86c6e4039f65490ac709b11dcb1a895964", + "function_idx": 41 + }, + { + "selector": "0x338dd2002b6f7ac6471742691de72611381e3fc4ce2b0361c29d42cb2d53a90", + "function_idx": 17 + }, + { + "selector": "0x33a134bba64e4b93e527dec86c555dfe61cbaec8d30c7087fcb6077a33d3c49", + "function_idx": 30 + }, + { + "selector": "0x33fe3600cdfaa48261a8c268c66363562da383d5dd26837ba63b66ebbc04e3c", + "function_idx": 16 + }, + { + "selector": "0x35b407563835b9d5bcae51f83b1fa062aca2cf279479918524a1e10c03ae65d", + "function_idx": 6 + }, + { + "selector": "0x36c75cf6f21b46ab99b4572cbff6717c944f48f9b08be054f572b85c8207edb", + "function_idx": 25 + }, + { + "selector": "0x3757746adc3e935840a6c97d2a4c6b708c900ca1525cd978b5cbc51134f4e4f", + "function_idx": 40 + }, + { + "selector": "0x37791de85f8a3be5014988a652f6cf025858f3532706c18f8cf24f2f81800d5", + "function_idx": 26 + }, + { + "selector": "0x377d64fbd626e2b971d63bb5b6f98dbf10f7979ec0e3aca8b2892c017d6c3ff", + "function_idx": 28 + }, + { + "selector": "0x3a95084fb66659865a36200ffe3ec4985865d9223273c35fe42fe35502d60a9", + "function_idx": 32 + }, + { + "selector": "0x3ad6b4fb1c9ef640de47f9bb6a66801663ac873a2bbb244d7286fe56937913f", + "function_idx": 33 + } + ], + "L1_HANDLER": [ + { + "selector": "0x8bce41827dd5484d80312a2e43bc42a896e3fcf75bf84c2b49339168dfa00a", + "function_idx": 48 + }, + { + "selector": "0x1b64b1b3b690b43b9b514fb81377518f4039cd3e4f4914d8a6bdf01d679fb19", + "function_idx": 47 + }, + { + "selector": "0x2d757788a8d8d6f21d1cd40bce38a8222d70654214e96ff95d8086e684fbee5", + "function_idx": 46 + }, + { + "selector": "0x3d78c7ddffebbba7bd7263963b2e0e86b2ed9e990a4fc1b9aed7acd11b37dbc", + "function_idx": 49 + } + ] + }, + "abi": "[{\"type\": \"impl\", \"name\": \"TokenBridgeAdmin\", \"interface_name\": \"src::token_bridge_admin_interface::ITokenBridgeAdmin\"}, {\"type\": \"struct\", \"name\": \"core::starknet::eth_address::EthAddress\", \"members\": [{\"name\": \"address\", \"type\": \"core::felt252\"}]}, {\"type\": \"interface\", \"name\": \"src::token_bridge_admin_interface::ITokenBridgeAdmin\", \"items\": [{\"type\": \"function\", \"name\": \"get_erc20_class_hash\", \"inputs\": [], \"outputs\": [{\"type\": \"core::starknet::class_hash::ClassHash\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"get_l2_token_governance\", \"inputs\": [], \"outputs\": [{\"type\": \"core::starknet::contract_address::ContractAddress\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"set_l1_bridge\", \"inputs\": [{\"name\": \"l1_bridge_address\", \"type\": \"core::starknet::eth_address::EthAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"set_erc20_class_hash\", \"inputs\": [{\"name\": \"erc20_class_hash\", \"type\": \"core::starknet::class_hash::ClassHash\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"set_l2_token_governance\", \"inputs\": [{\"name\": \"l2_token_governance\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"enable_withdrawal_limit\", \"inputs\": [{\"name\": \"l1_token\", \"type\": \"core::starknet::eth_address::EthAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"disable_withdrawal_limit\", \"inputs\": [{\"name\": \"l1_token\", \"type\": \"core::starknet::eth_address::EthAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}]}, {\"type\": \"impl\", \"name\": \"TokenBridge\", \"interface_name\": \"src::token_bridge_interface::ITokenBridge\"}, {\"type\": \"struct\", \"name\": \"core::integer::u256\", \"members\": [{\"name\": \"low\", \"type\": \"core::integer::u128\"}, {\"name\": \"high\", \"type\": \"core::integer::u128\"}]}, {\"type\": \"interface\", \"name\": \"src::token_bridge_interface::ITokenBridge\", \"items\": [{\"type\": \"function\", \"name\": \"get_version\", \"inputs\": [], \"outputs\": [{\"type\": \"core::felt252\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"get_identity\", \"inputs\": [], \"outputs\": [{\"type\": \"core::felt252\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"get_l1_token\", \"inputs\": [{\"name\": \"l2_token\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [{\"type\": \"core::starknet::eth_address::EthAddress\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"get_l2_token\", \"inputs\": [{\"name\": \"l1_token\", \"type\": \"core::starknet::eth_address::EthAddress\"}], \"outputs\": [{\"type\": \"core::starknet::contract_address::ContractAddress\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"get_remaining_withdrawal_quota\", \"inputs\": [{\"name\": \"l1_token\", \"type\": \"core::starknet::eth_address::EthAddress\"}], \"outputs\": [{\"type\": \"core::integer::u256\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"initiate_withdraw\", \"inputs\": [{\"name\": \"l1_recipient\", \"type\": \"core::starknet::eth_address::EthAddress\"}, {\"name\": \"amount\", \"type\": \"core::integer::u256\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"initiate_token_withdraw\", \"inputs\": [{\"name\": \"l1_token\", \"type\": \"core::starknet::eth_address::EthAddress\"}, {\"name\": \"l1_recipient\", \"type\": \"core::starknet::eth_address::EthAddress\"}, {\"name\": \"amount\", \"type\": \"core::integer::u256\"}], \"outputs\": [], \"state_mutability\": \"external\"}]}, {\"type\": \"impl\", \"name\": \"Replaceable\", \"interface_name\": \"src::replaceability_interface::IReplaceable\"}, {\"type\": \"struct\", \"name\": \"core::array::Span::\", \"members\": [{\"name\": \"snapshot\", \"type\": \"@core::array::Array::\"}]}, {\"type\": \"struct\", \"name\": \"src::replaceability_interface::EICData\", \"members\": [{\"name\": \"eic_hash\", \"type\": \"core::starknet::class_hash::ClassHash\"}, {\"name\": \"eic_init_data\", \"type\": \"core::array::Span::\"}]}, {\"type\": \"enum\", \"name\": \"core::option::Option::\", \"variants\": [{\"name\": \"Some\", \"type\": \"src::replaceability_interface::EICData\"}, {\"name\": \"None\", \"type\": \"()\"}]}, {\"type\": \"enum\", \"name\": \"core::bool\", \"variants\": [{\"name\": \"False\", \"type\": \"()\"}, {\"name\": \"True\", \"type\": \"()\"}]}, {\"type\": \"struct\", \"name\": \"src::replaceability_interface::ImplementationData\", \"members\": [{\"name\": \"impl_hash\", \"type\": \"core::starknet::class_hash::ClassHash\"}, {\"name\": \"eic_data\", \"type\": \"core::option::Option::\"}, {\"name\": \"final\", \"type\": \"core::bool\"}]}, {\"type\": \"interface\", \"name\": \"src::replaceability_interface::IReplaceable\", \"items\": [{\"type\": \"function\", \"name\": \"get_upgrade_delay\", \"inputs\": [], \"outputs\": [{\"type\": \"core::integer::u64\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"get_impl_activation_time\", \"inputs\": [{\"name\": \"implementation_data\", \"type\": \"src::replaceability_interface::ImplementationData\"}], \"outputs\": [{\"type\": \"core::integer::u64\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"add_new_implementation\", \"inputs\": [{\"name\": \"implementation_data\", \"type\": \"src::replaceability_interface::ImplementationData\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"remove_implementation\", \"inputs\": [{\"name\": \"implementation_data\", \"type\": \"src::replaceability_interface::ImplementationData\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"replace_to\", \"inputs\": [{\"name\": \"implementation_data\", \"type\": \"src::replaceability_interface::ImplementationData\"}], \"outputs\": [], \"state_mutability\": \"external\"}]}, {\"type\": \"impl\", \"name\": \"AccessControlImplExternal\", \"interface_name\": \"src::access_control_interface::IAccessControl\"}, {\"type\": \"interface\", \"name\": \"src::access_control_interface::IAccessControl\", \"items\": [{\"type\": \"function\", \"name\": \"has_role\", \"inputs\": [{\"name\": \"role\", \"type\": \"core::felt252\"}, {\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [{\"type\": \"core::bool\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"get_role_admin\", \"inputs\": [{\"name\": \"role\", \"type\": \"core::felt252\"}], \"outputs\": [{\"type\": \"core::felt252\"}], \"state_mutability\": \"view\"}]}, {\"type\": \"impl\", \"name\": \"RolesImpl\", \"interface_name\": \"src::roles_interface::IRoles\"}, {\"type\": \"interface\", \"name\": \"src::roles_interface::IRoles\", \"items\": [{\"type\": \"function\", \"name\": \"is_app_governor\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [{\"type\": \"core::bool\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"is_app_role_admin\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [{\"type\": \"core::bool\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"is_governance_admin\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [{\"type\": \"core::bool\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"is_operator\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [{\"type\": \"core::bool\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"is_token_admin\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [{\"type\": \"core::bool\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"is_upgrade_governor\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [{\"type\": \"core::bool\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"is_security_admin\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [{\"type\": \"core::bool\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"is_security_agent\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [{\"type\": \"core::bool\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"register_app_governor\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"remove_app_governor\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"register_app_role_admin\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"remove_app_role_admin\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"register_governance_admin\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"remove_governance_admin\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"register_operator\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"remove_operator\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"register_token_admin\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"remove_token_admin\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"register_upgrade_governor\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"remove_upgrade_governor\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"renounce\", \"inputs\": [{\"name\": \"role\", \"type\": \"core::felt252\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"register_security_admin\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"remove_security_admin\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"register_security_agent\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"remove_security_agent\", \"inputs\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\"}], \"outputs\": [], \"state_mutability\": \"external\"}]}, {\"type\": \"constructor\", \"name\": \"constructor\", \"inputs\": [{\"name\": \"upgrade_delay\", \"type\": \"core::integer::u64\"}]}, {\"type\": \"l1_handler\", \"name\": \"handle_deposit\", \"inputs\": [{\"name\": \"from_address\", \"type\": \"core::felt252\"}, {\"name\": \"l2_recipient\", \"type\": \"core::starknet::contract_address::ContractAddress\"}, {\"name\": \"amount\", \"type\": \"core::integer::u256\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"l1_handler\", \"name\": \"handle_token_deposit\", \"inputs\": [{\"name\": \"from_address\", \"type\": \"core::felt252\"}, {\"name\": \"l1_token\", \"type\": \"core::starknet::eth_address::EthAddress\"}, {\"name\": \"depositor\", \"type\": \"core::starknet::eth_address::EthAddress\"}, {\"name\": \"l2_recipient\", \"type\": \"core::starknet::contract_address::ContractAddress\"}, {\"name\": \"amount\", \"type\": \"core::integer::u256\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"l1_handler\", \"name\": \"handle_deposit_with_message\", \"inputs\": [{\"name\": \"from_address\", \"type\": \"core::felt252\"}, {\"name\": \"l1_token\", \"type\": \"core::starknet::eth_address::EthAddress\"}, {\"name\": \"depositor\", \"type\": \"core::starknet::eth_address::EthAddress\"}, {\"name\": \"l2_recipient\", \"type\": \"core::starknet::contract_address::ContractAddress\"}, {\"name\": \"amount\", \"type\": \"core::integer::u256\"}, {\"name\": \"message\", \"type\": \"core::array::Span::\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"l1_handler\", \"name\": \"handle_token_deployment\", \"inputs\": [{\"name\": \"from_address\", \"type\": \"core::felt252\"}, {\"name\": \"l1_token\", \"type\": \"core::starknet::eth_address::EthAddress\"}, {\"name\": \"name\", \"type\": \"core::felt252\"}, {\"name\": \"symbol\", \"type\": \"core::felt252\"}, {\"name\": \"decimals\", \"type\": \"core::integer::u8\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"event\", \"name\": \"src::token_bridge::TokenBridge::L1BridgeSet\", \"kind\": \"struct\", \"members\": [{\"name\": \"l1_bridge_address\", \"type\": \"core::starknet::eth_address::EthAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::token_bridge::TokenBridge::Erc20ClassHashStored\", \"kind\": \"struct\", \"members\": [{\"name\": \"previous_hash\", \"type\": \"core::starknet::class_hash::ClassHash\", \"kind\": \"data\"}, {\"name\": \"erc20_class_hash\", \"type\": \"core::starknet::class_hash::ClassHash\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::token_bridge::TokenBridge::L2TokenGovernanceChanged\", \"kind\": \"struct\", \"members\": [{\"name\": \"previous_governance\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"new_governance\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::token_bridge::TokenBridge::withdraw_initiated\", \"kind\": \"struct\", \"members\": [{\"name\": \"l1_recipient\", \"type\": \"core::starknet::eth_address::EthAddress\", \"kind\": \"data\"}, {\"name\": \"amount\", \"type\": \"core::integer::u256\", \"kind\": \"data\"}, {\"name\": \"caller_address\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::token_bridge::TokenBridge::WithdrawInitiated\", \"kind\": \"struct\", \"members\": [{\"name\": \"l1_token\", \"type\": \"core::starknet::eth_address::EthAddress\", \"kind\": \"key\"}, {\"name\": \"l1_recipient\", \"type\": \"core::starknet::eth_address::EthAddress\", \"kind\": \"key\"}, {\"name\": \"amount\", \"type\": \"core::integer::u256\", \"kind\": \"data\"}, {\"name\": \"caller_address\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"key\"}]}, {\"type\": \"event\", \"name\": \"src::token_bridge::TokenBridge::deposit_handled\", \"kind\": \"struct\", \"members\": [{\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"amount\", \"type\": \"core::integer::u256\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::token_bridge::TokenBridge::DepositHandled\", \"kind\": \"struct\", \"members\": [{\"name\": \"l1_token\", \"type\": \"core::starknet::eth_address::EthAddress\", \"kind\": \"key\"}, {\"name\": \"l2_recipient\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"key\"}, {\"name\": \"amount\", \"type\": \"core::integer::u256\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::token_bridge::TokenBridge::DepositWithMessageHandled\", \"kind\": \"struct\", \"members\": [{\"name\": \"depositor\", \"type\": \"core::starknet::eth_address::EthAddress\", \"kind\": \"key\"}, {\"name\": \"l1_token\", \"type\": \"core::starknet::eth_address::EthAddress\", \"kind\": \"key\"}, {\"name\": \"l2_recipient\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"key\"}, {\"name\": \"amount\", \"type\": \"core::integer::u256\", \"kind\": \"data\"}, {\"name\": \"message\", \"type\": \"core::array::Span::\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::token_bridge::TokenBridge::DeployHandled\", \"kind\": \"struct\", \"members\": [{\"name\": \"l1_token\", \"type\": \"core::starknet::eth_address::EthAddress\", \"kind\": \"data\"}, {\"name\": \"name\", \"type\": \"core::felt252\", \"kind\": \"data\"}, {\"name\": \"symbol\", \"type\": \"core::felt252\", \"kind\": \"data\"}, {\"name\": \"decimals\", \"type\": \"core::integer::u8\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::token_bridge::TokenBridge::WithdrawalLimitEnabled\", \"kind\": \"struct\", \"members\": [{\"name\": \"sender\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"key\"}, {\"name\": \"l1_token\", \"type\": \"core::starknet::eth_address::EthAddress\", \"kind\": \"key\"}]}, {\"type\": \"event\", \"name\": \"src::token_bridge::TokenBridge::WithdrawalLimitDisabled\", \"kind\": \"struct\", \"members\": [{\"name\": \"sender\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"key\"}, {\"name\": \"l1_token\", \"type\": \"core::starknet::eth_address::EthAddress\", \"kind\": \"key\"}]}, {\"type\": \"event\", \"name\": \"src::replaceability_interface::ImplementationAdded\", \"kind\": \"struct\", \"members\": [{\"name\": \"implementation_data\", \"type\": \"src::replaceability_interface::ImplementationData\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::replaceability_interface::ImplementationRemoved\", \"kind\": \"struct\", \"members\": [{\"name\": \"implementation_data\", \"type\": \"src::replaceability_interface::ImplementationData\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::replaceability_interface::ImplementationReplaced\", \"kind\": \"struct\", \"members\": [{\"name\": \"implementation_data\", \"type\": \"src::replaceability_interface::ImplementationData\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::replaceability_interface::ImplementationFinalized\", \"kind\": \"struct\", \"members\": [{\"name\": \"impl_hash\", \"type\": \"core::starknet::class_hash::ClassHash\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::access_control_interface::RoleGranted\", \"kind\": \"struct\", \"members\": [{\"name\": \"role\", \"type\": \"core::felt252\", \"kind\": \"data\"}, {\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"sender\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::access_control_interface::RoleRevoked\", \"kind\": \"struct\", \"members\": [{\"name\": \"role\", \"type\": \"core::felt252\", \"kind\": \"data\"}, {\"name\": \"account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"sender\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::access_control_interface::RoleAdminChanged\", \"kind\": \"struct\", \"members\": [{\"name\": \"role\", \"type\": \"core::felt252\", \"kind\": \"data\"}, {\"name\": \"previous_admin_role\", \"type\": \"core::felt252\", \"kind\": \"data\"}, {\"name\": \"new_admin_role\", \"type\": \"core::felt252\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::AppGovernorAdded\", \"kind\": \"struct\", \"members\": [{\"name\": \"added_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"added_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::AppGovernorRemoved\", \"kind\": \"struct\", \"members\": [{\"name\": \"removed_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"removed_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::AppRoleAdminAdded\", \"kind\": \"struct\", \"members\": [{\"name\": \"added_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"added_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::AppRoleAdminRemoved\", \"kind\": \"struct\", \"members\": [{\"name\": \"removed_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"removed_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::GovernanceAdminAdded\", \"kind\": \"struct\", \"members\": [{\"name\": \"added_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"added_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::GovernanceAdminRemoved\", \"kind\": \"struct\", \"members\": [{\"name\": \"removed_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"removed_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::OperatorAdded\", \"kind\": \"struct\", \"members\": [{\"name\": \"added_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"added_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::OperatorRemoved\", \"kind\": \"struct\", \"members\": [{\"name\": \"removed_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"removed_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::TokenAdminAdded\", \"kind\": \"struct\", \"members\": [{\"name\": \"added_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"added_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::TokenAdminRemoved\", \"kind\": \"struct\", \"members\": [{\"name\": \"removed_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"removed_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::UpgradeGovernorAdded\", \"kind\": \"struct\", \"members\": [{\"name\": \"added_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"added_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::UpgradeGovernorRemoved\", \"kind\": \"struct\", \"members\": [{\"name\": \"removed_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"removed_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::SecurityAdminAdded\", \"kind\": \"struct\", \"members\": [{\"name\": \"added_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"added_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::SecurityAdminRemoved\", \"kind\": \"struct\", \"members\": [{\"name\": \"removed_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"removed_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::SecurityAgentAdded\", \"kind\": \"struct\", \"members\": [{\"name\": \"added_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"added_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::roles_interface::SecurityAgentRemoved\", \"kind\": \"struct\", \"members\": [{\"name\": \"removed_account\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}, {\"name\": \"removed_by\", \"type\": \"core::starknet::contract_address::ContractAddress\", \"kind\": \"data\"}]}, {\"type\": \"event\", \"name\": \"src::token_bridge::TokenBridge::Event\", \"kind\": \"enum\", \"variants\": [{\"name\": \"L1BridgeSet\", \"type\": \"src::token_bridge::TokenBridge::L1BridgeSet\", \"kind\": \"nested\"}, {\"name\": \"Erc20ClassHashStored\", \"type\": \"src::token_bridge::TokenBridge::Erc20ClassHashStored\", \"kind\": \"nested\"}, {\"name\": \"L2TokenGovernanceChanged\", \"type\": \"src::token_bridge::TokenBridge::L2TokenGovernanceChanged\", \"kind\": \"nested\"}, {\"name\": \"withdraw_initiated\", \"type\": \"src::token_bridge::TokenBridge::withdraw_initiated\", \"kind\": \"nested\"}, {\"name\": \"WithdrawInitiated\", \"type\": \"src::token_bridge::TokenBridge::WithdrawInitiated\", \"kind\": \"nested\"}, {\"name\": \"deposit_handled\", \"type\": \"src::token_bridge::TokenBridge::deposit_handled\", \"kind\": \"nested\"}, {\"name\": \"DepositHandled\", \"type\": \"src::token_bridge::TokenBridge::DepositHandled\", \"kind\": \"nested\"}, {\"name\": \"DepositWithMessageHandled\", \"type\": \"src::token_bridge::TokenBridge::DepositWithMessageHandled\", \"kind\": \"nested\"}, {\"name\": \"DeployHandled\", \"type\": \"src::token_bridge::TokenBridge::DeployHandled\", \"kind\": \"nested\"}, {\"name\": \"WithdrawalLimitEnabled\", \"type\": \"src::token_bridge::TokenBridge::WithdrawalLimitEnabled\", \"kind\": \"nested\"}, {\"name\": \"WithdrawalLimitDisabled\", \"type\": \"src::token_bridge::TokenBridge::WithdrawalLimitDisabled\", \"kind\": \"nested\"}, {\"name\": \"ImplementationAdded\", \"type\": \"src::replaceability_interface::ImplementationAdded\", \"kind\": \"nested\"}, {\"name\": \"ImplementationRemoved\", \"type\": \"src::replaceability_interface::ImplementationRemoved\", \"kind\": \"nested\"}, {\"name\": \"ImplementationReplaced\", \"type\": \"src::replaceability_interface::ImplementationReplaced\", \"kind\": \"nested\"}, {\"name\": \"ImplementationFinalized\", \"type\": \"src::replaceability_interface::ImplementationFinalized\", \"kind\": \"nested\"}, {\"name\": \"RoleGranted\", \"type\": \"src::access_control_interface::RoleGranted\", \"kind\": \"nested\"}, {\"name\": \"RoleRevoked\", \"type\": \"src::access_control_interface::RoleRevoked\", \"kind\": \"nested\"}, {\"name\": \"RoleAdminChanged\", \"type\": \"src::access_control_interface::RoleAdminChanged\", \"kind\": \"nested\"}, {\"name\": \"AppGovernorAdded\", \"type\": \"src::roles_interface::AppGovernorAdded\", \"kind\": \"nested\"}, {\"name\": \"AppGovernorRemoved\", \"type\": \"src::roles_interface::AppGovernorRemoved\", \"kind\": \"nested\"}, {\"name\": \"AppRoleAdminAdded\", \"type\": \"src::roles_interface::AppRoleAdminAdded\", \"kind\": \"nested\"}, {\"name\": \"AppRoleAdminRemoved\", \"type\": \"src::roles_interface::AppRoleAdminRemoved\", \"kind\": \"nested\"}, {\"name\": \"GovernanceAdminAdded\", \"type\": \"src::roles_interface::GovernanceAdminAdded\", \"kind\": \"nested\"}, {\"name\": \"GovernanceAdminRemoved\", \"type\": \"src::roles_interface::GovernanceAdminRemoved\", \"kind\": \"nested\"}, {\"name\": \"OperatorAdded\", \"type\": \"src::roles_interface::OperatorAdded\", \"kind\": \"nested\"}, {\"name\": \"OperatorRemoved\", \"type\": \"src::roles_interface::OperatorRemoved\", \"kind\": \"nested\"}, {\"name\": \"TokenAdminAdded\", \"type\": \"src::roles_interface::TokenAdminAdded\", \"kind\": \"nested\"}, {\"name\": \"TokenAdminRemoved\", \"type\": \"src::roles_interface::TokenAdminRemoved\", \"kind\": \"nested\"}, {\"name\": \"UpgradeGovernorAdded\", \"type\": \"src::roles_interface::UpgradeGovernorAdded\", \"kind\": \"nested\"}, {\"name\": \"UpgradeGovernorRemoved\", \"type\": \"src::roles_interface::UpgradeGovernorRemoved\", \"kind\": \"nested\"}, {\"name\": \"SecurityAdminAdded\", \"type\": \"src::roles_interface::SecurityAdminAdded\", \"kind\": \"nested\"}, {\"name\": \"SecurityAdminRemoved\", \"type\": \"src::roles_interface::SecurityAdminRemoved\", \"kind\": \"nested\"}, {\"name\": \"SecurityAgentAdded\", \"type\": \"src::roles_interface::SecurityAgentAdded\", \"kind\": \"nested\"}, {\"name\": \"SecurityAgentRemoved\", \"type\": \"src::roles_interface::SecurityAgentRemoved\", \"kind\": \"nested\"}]}]" +} diff --git a/scripts/artifacts/starknet/new_eth_token.casm.json b/scripts/artifacts/starknet/new_eth_token.casm.json new file mode 100644 index 000000000..7a2d1f894 --- /dev/null +++ b/scripts/artifacts/starknet/new_eth_token.casm.json @@ -0,0 +1,22000 @@ +{ + "prime": "0x800000000000011000000000000000000000000000000000000000000000001", + "compiler_version": "2.1.0", + "bytecode": [ + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcd13c", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x8c", + "0x4825800180007ffa", + "0x32ec4", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x150c", + "0x20680017fff7ffe", + "0x72", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x153e", + "0x20680017fff7ffd", + "0x5c", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127fa67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x3b60", + "0x482480017fff8000", + "0x3b5f", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fa2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x24", + "0x48307ffe80007fa2", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fbc7fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0x156e", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f9c7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127fa87fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcd13c", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x8c", + "0x4825800180007ffa", + "0x32ec4", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x146b", + "0x20680017fff7ffe", + "0x72", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x149d", + "0x20680017fff7ffd", + "0x5c", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127fa67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x3abf", + "0x482480017fff8000", + "0x3abe", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fa2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x24", + "0x48307ffe80007fa2", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fbc7fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0x151d", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f9c7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127fa87fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcca98", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x8c", + "0x4825800180007ffa", + "0x33568", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x13ca", + "0x20680017fff7ffe", + "0x72", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x13fc", + "0x20680017fff7ffd", + "0x5c", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127fa67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x3a1e", + "0x482480017fff8000", + "0x3a1d", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fa2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x24", + "0x48307ffe80007fa2", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fbc7fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0x14cc", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f9c7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127fa87fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcca98", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x8c", + "0x4825800180007ffa", + "0x33568", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1329", + "0x20680017fff7ffe", + "0x72", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x135b", + "0x20680017fff7ffd", + "0x5c", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127fa67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x397d", + "0x482480017fff8000", + "0x397c", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fa2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x24", + "0x48307ffe80007fa2", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fbc7fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0x144a", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f9c7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127fa87fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffd6ca", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x58", + "0x4825800180007ffa", + "0x2936", + "0x400280007ff97fff", + "0x48297ffc80007ffd", + "0x482680017ff98000", + "0x1", + "0x4824800180007ffe", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ffc7fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x38ea", + "0x482480017fff8000", + "0x38e9", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007ff7", + "0x0", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff77fff", + "0x10780017fff7fff", + "0x21", + "0x4824800180007ff7", + "0x0", + "0x400080007ff87fff", + "0x482480017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x13dd", + "0x20680017fff7ffd", + "0xe", + "0x40780017fff7fff", + "0x1", + "0x400080007fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x482480017ffa8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017ff58000", + "0x1", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffff0d12", + "0x400280007ff87fff", + "0x10780017fff7fff", + "0x8c", + "0x4825800180007ffa", + "0xf2ee", + "0x400280007ff87fff", + "0x482680017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x13b0", + "0x20680017fff7ff6", + "0x76", + "0x20680017fff7ff9", + "0x64", + "0x48307ff780007ff8", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127fef7fff8000", + "0x480a7ff97fff8000", + "0x48127fee7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x3873", + "0x482480017fff8000", + "0x3872", + "0x480080007fff8000", + "0x480080007fff8000", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fec", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fe97fff", + "0x10780017fff7fff", + "0x2c", + "0x48307ffe80007fec", + "0x400080007fea7fff", + "0x482480017fea8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x48127feb7fff8000", + "0x48127feb7fff8000", + "0x48127feb7fff8000", + "0x48127feb7fff8000", + "0x48127feb7fff8000", + "0x48127feb7fff8000", + "0x1104800180018000", + "0x13f2", + "0x20680017fff7ffd", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x400080007fff7ffe", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x48127ff57fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482480017fe68000", + "0x1", + "0x480a7ff97fff8000", + "0x48127fe57fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127ff17fff8000", + "0x480a7ff97fff8000", + "0x48127ff07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x48127ff37fff8000", + "0x480a7ff97fff8000", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482680017ff88000", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcbb0c", + "0x400280007ff87fff", + "0x10780017fff7fff", + "0x8c", + "0x4825800180007ffa", + "0x344f4", + "0x400280007ff87fff", + "0x482680017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x130e", + "0x20680017fff7ff6", + "0x76", + "0x20680017fff7ff9", + "0x64", + "0x48307ff780007ff8", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127fef7fff8000", + "0x480a7ff97fff8000", + "0x48127fee7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x37d1", + "0x482480017fff8000", + "0x37d0", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x4", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007feb", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fe87fff", + "0x10780017fff7fff", + "0x2a", + "0x48307ffe80007feb", + "0x400080007fe97fff", + "0x482480017fe98000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x1104800180018000", + "0x1383", + "0x20680017fff7ffd", + "0xe", + "0x40780017fff7fff", + "0x1", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x48127ff57fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482480017fe58000", + "0x1", + "0x480a7ff97fff8000", + "0x48127fe47fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127ff17fff8000", + "0x480a7ff97fff8000", + "0x48127ff07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x48127ff37fff8000", + "0x480a7ff97fff8000", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482680017ff88000", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffca32e", + "0x400280007ff87fff", + "0x10780017fff7fff", + "0x8c", + "0x4825800180007ffa", + "0x35cd2", + "0x400280007ff87fff", + "0x482680017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x126c", + "0x20680017fff7ff6", + "0x76", + "0x20680017fff7ff9", + "0x64", + "0x48307ff780007ff8", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127fef7fff8000", + "0x480a7ff97fff8000", + "0x48127fee7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x372f", + "0x482480017fff8000", + "0x372e", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x5", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007feb", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fe87fff", + "0x10780017fff7fff", + "0x2a", + "0x48307ffe80007feb", + "0x400080007fe97fff", + "0x482480017fe98000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x1104800180018000", + "0x1393", + "0x20680017fff7ffd", + "0xe", + "0x40780017fff7fff", + "0x1", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x48127ff57fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482480017fe58000", + "0x1", + "0x480a7ff97fff8000", + "0x48127fe47fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127ff17fff8000", + "0x480a7ff97fff8000", + "0x48127ff07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x48127ff37fff8000", + "0x480a7ff97fff8000", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482680017ff88000", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffa452a", + "0x400280007ff87fff", + "0x10780017fff7fff", + "0x8c", + "0x4825800180007ffa", + "0x5bad6", + "0x400280007ff87fff", + "0x482680017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x11ca", + "0x20680017fff7ff6", + "0x76", + "0x20680017fff7ff9", + "0x64", + "0x48307ff780007ff8", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127fef7fff8000", + "0x480a7ff97fff8000", + "0x48127fee7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x368d", + "0x482480017fff8000", + "0x368c", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x6", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007feb", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fe87fff", + "0x10780017fff7fff", + "0x2a", + "0x48307ffe80007feb", + "0x400080007fe97fff", + "0x482480017fe98000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x48127fea7fff8000", + "0x1104800180018000", + "0x138b", + "0x20680017fff7ffd", + "0xe", + "0x40780017fff7fff", + "0x1", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x48127ff57fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff97fff8000", + "0x48127ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482480017fe58000", + "0x1", + "0x480a7ff97fff8000", + "0x48127fe47fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x48127ff17fff8000", + "0x480a7ff97fff8000", + "0x48127ff07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x48127ff37fff8000", + "0x480a7ff97fff8000", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x482680017ff88000", + "0x1", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffb2d0", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x90", + "0x4825800180007ffa", + "0x4d30", + "0x400280007ff97fff", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1507", + "0x482680017ff98000", + "0x1", + "0x20680017fff7ffd", + "0x76", + "0x48127fff7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0xf8d", + "0x20680017fff7ffe", + "0x60", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fca7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x35e8", + "0x482480017fff8000", + "0x35e7", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fc6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x28", + "0x48307ffe80007fc6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fd07fff8000", + "0x48127fef7fff8000", + "0x1104800180018000", + "0x14ed", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1501", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fc07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fcc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127feb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffcdce", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x77", + "0x4825800180007ffa", + "0x3232", + "0x400280007ff97fff", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1462", + "0x482680017ff98000", + "0x1", + "0x20680017fff7ffd", + "0x5d", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffa7fff8000", + "0x48127fe97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x354a", + "0x482480017fff8000", + "0x3549", + "0x480080007fff8000", + "0x480080007fff8000", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fe6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff47fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007fe6", + "0x400080007ff57fff", + "0x482480017ff58000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x147e", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1491", + "0x48127ff37fff8000", + "0x48127ff07fff8000", + "0x48127ff07fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017ff18000", + "0x1", + "0x48127fe07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127feb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffb4c4", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x79", + "0x4825800180007ffa", + "0x4b3c", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xe63", + "0x20680017fff7ffe", + "0x5f", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x34be", + "0x482480017fff8000", + "0x34bd", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1411", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x13d8", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffb4c4", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x79", + "0x4825800180007ffa", + "0x4b3c", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xdd5", + "0x20680017fff7ffe", + "0x5f", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x3430", + "0x482480017fff8000", + "0x342f", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x27", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x13a1", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x134a", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb6d4", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x3492c", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xd47", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x33a2", + "0x482480017fff8000", + "0x33a1", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1331", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcba58", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x345a8", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xcbe", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x3319", + "0x482480017fff8000", + "0x3318", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x12e2", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcb6d4", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x3492c", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xc35", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x3290", + "0x482480017fff8000", + "0x328f", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1293", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcba58", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x345a8", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbac", + "0x20680017fff7ffe", + "0x5a", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x3207", + "0x482480017fff8000", + "0x3206", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x9", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fd6", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff07fff8000", + "0x1104800180018000", + "0x1244", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fd07fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffe3eaa", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x74", + "0x4825800180007ffa", + "0x1c156", + "0x400280007ff97fff", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1096", + "0x482680017ff98000", + "0x1", + "0x20680017fff7ffd", + "0x5a", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffa7fff8000", + "0x48127fe97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x317e", + "0x482480017fff8000", + "0x317d", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x4", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fe5", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff37fff", + "0x10780017fff7fff", + "0x22", + "0x48307ffe80007fe5", + "0x400080007ff47fff", + "0x482480017ff48000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fef7fff8000", + "0x1104800180018000", + "0x11f5", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017ff08000", + "0x1", + "0x48127fdf7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127feb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffe2f0", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x5b", + "0x4825800180007ffa", + "0x1d10", + "0x400280007ff97fff", + "0x48297ffc80007ffd", + "0x482680017ff98000", + "0x1", + "0x4824800180007ffe", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ffc7fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x30fc", + "0x482480017fff8000", + "0x30fb", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007ff7", + "0x0", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff77fff", + "0x10780017fff7fff", + "0x24", + "0x4824800180007ff7", + "0x0", + "0x400080007ff87fff", + "0x48127fff7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x11c5", + "0x482480017fd88000", + "0x1", + "0x20680017fff7ffc", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x48127ffd7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x1046", + "0x48127ff77fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127fff7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017ff58000", + "0x1", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffe2f0", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x5b", + "0x4825800180007ffa", + "0x1d10", + "0x400280007ff97fff", + "0x48297ffc80007ffd", + "0x482680017ff98000", + "0x1", + "0x4824800180007ffe", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ffc7fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x308d", + "0x482480017fff8000", + "0x308c", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007ff7", + "0x0", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff77fff", + "0x10780017fff7fff", + "0x24", + "0x4824800180007ff7", + "0x0", + "0x400080007ff87fff", + "0x48127fff7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x116b", + "0x482480017fd88000", + "0x1", + "0x20680017fff7ffc", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x48127ffd7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xfd7", + "0x48127ff77fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127fff7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017ff58000", + "0x1", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffffd6ca", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x58", + "0x4825800180007ffa", + "0x2936", + "0x400280007ff97fff", + "0x48297ffc80007ffd", + "0x482680017ff98000", + "0x1", + "0x4824800180007ffe", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ffc7fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x301e", + "0x482480017fff8000", + "0x301d", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007ff7", + "0x0", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff77fff", + "0x10780017fff7fff", + "0x21", + "0x4824800180007ff7", + "0x0", + "0x400080007ff87fff", + "0x482480017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x110f", + "0x20680017fff7ffd", + "0xe", + "0x40780017fff7fff", + "0x1", + "0x400080007fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x482480017ffa8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017ff58000", + "0x1", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffff9840", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x5c", + "0x4825800180007ffa", + "0x67c0", + "0x400280007ff97fff", + "0x48297ffc80007ffd", + "0x482680017ff98000", + "0x1", + "0x4824800180007ffe", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ffc7fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x2fb2", + "0x482480017fff8000", + "0x2fb1", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007ff7", + "0x0", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff77fff", + "0x10780017fff7fff", + "0x25", + "0x4824800180007ff7", + "0x0", + "0x400080007ff87fff", + "0x482480017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x10bb", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x10c8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017ff58000", + "0x1", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffff7ba8", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x78", + "0x4825800180007ffa", + "0x8458", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x8e0", + "0x20680017fff7ffe", + "0x5e", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x2f3b", + "0x482480017fff8000", + "0x2f3a", + "0x480080007fff8000", + "0x480080007fff8000", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff07fff", + "0x10780017fff7fff", + "0x28", + "0x48307ffe80007fd7", + "0x400080007ff17fff", + "0x482480017ff18000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff17fff8000", + "0x1104800180018000", + "0x105e", + "0x20680017fff7ffd", + "0x13", + "0x40780017fff7fff", + "0x1", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x104e", + "0x48127ff27fff8000", + "0x48127fef7fff8000", + "0x48127fef7fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fed8000", + "0x1", + "0x48127fd17fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffff68de", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x91", + "0x4825800180007ffa", + "0x9722", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x853", + "0x20680017fff7ffe", + "0x77", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x84c", + "0x20680017fff7ffe", + "0x61", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fbb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x2ea7", + "0x482480017fff8000", + "0x2ea6", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fb7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x29", + "0x48307ffe80007fb7", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fd17fff8000", + "0x48127fef7fff8000", + "0x1104800180018000", + "0xfe2", + "0x20680017fff7ffd", + "0x13", + "0x40780017fff7fff", + "0x1", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0xfb7", + "0x48127ff27fff8000", + "0x48127fef7fff8000", + "0x48127fef7fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127fb17fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fbd7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffcf400", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x91", + "0x4825800180007ffa", + "0x30c00", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x7ad", + "0x20680017fff7ffe", + "0x77", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x7df", + "0x20680017fff7ffd", + "0x61", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127fa67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x2e01", + "0x482480017fff8000", + "0x2e00", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x4", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fa2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x29", + "0x48307ffe80007fa2", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fbc7fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0xf57", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xd19", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f9c7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127fa87fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffb2102", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0xa8", + "0x4825800180007ffa", + "0x4defe", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x707", + "0x20680017fff7ffe", + "0x8e", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x700", + "0x20680017fff7ffe", + "0x78", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x732", + "0x20680017fff7ffd", + "0x62", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127f877fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x2d54", + "0x482480017fff8000", + "0x2d53", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x8", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007f83", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x2a", + "0x48307ffe80007f83", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127f9d7fff8000", + "0x48127fbb7fff8000", + "0x48127fed7fff8000", + "0x48127fed7fff8000", + "0x1104800180018000", + "0xed8", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xc6b", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f7d7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202333", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127f897fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fbd7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffea0a2", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x91", + "0x4825800180007ffa", + "0x15f5e", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x64a", + "0x20680017fff7ffe", + "0x77", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x67c", + "0x20680017fff7ffd", + "0x61", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127fa67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x2c9e", + "0x482480017fff8000", + "0x2c9d", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x2", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fa2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x29", + "0x48307ffe80007fa2", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fbc7fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0xe67", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xbb6", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f9c7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127fa87fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffdfde6", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x91", + "0x4825800180007ffa", + "0x2021a", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x5a4", + "0x20680017fff7ffe", + "0x77", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x5d6", + "0x20680017fff7ffd", + "0x61", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127fa67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x2bf8", + "0x482480017fff8000", + "0x2bf7", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x4", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fa2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x29", + "0x48307ffe80007fa2", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fbc7fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0xdf0", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xb10", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f9c7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127fa87fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffdfde6", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x91", + "0x4825800180007ffa", + "0x2021a", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x4fe", + "0x20680017fff7ffe", + "0x77", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x530", + "0x20680017fff7ffd", + "0x61", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127fa67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x2b52", + "0x482480017fff8000", + "0x2b51", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x4", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fa2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x29", + "0x48307ffe80007fa2", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fbc7fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0xd9e", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xa6a", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f9c7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127fa87fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffff9840", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x5c", + "0x4825800180007ffa", + "0x67c0", + "0x400280007ff97fff", + "0x48297ffc80007ffd", + "0x482680017ff98000", + "0x1", + "0x4824800180007ffe", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x10", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x48127ffc7fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x2aba", + "0x482480017fff8000", + "0x2ab9", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007ff7", + "0x0", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff77fff", + "0x10780017fff7fff", + "0x25", + "0x4824800180007ff7", + "0x0", + "0x400080007ff87fff", + "0x482480017ff88000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0xbc3", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0xbd0", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017ff58000", + "0x1", + "0x48127ff27fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x482480017ff98000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xffffffffffffffffffffffffffff7ba8", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x78", + "0x4825800180007ffa", + "0x8458", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x3e8", + "0x20680017fff7ffe", + "0x5e", + "0x48307ffc80007ffd", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127fda7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x2a43", + "0x482480017fff8000", + "0x2a42", + "0x480080007fff8000", + "0x480080007fff8000", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fd7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff07fff", + "0x10780017fff7fff", + "0x28", + "0x48307ffe80007fd7", + "0x400080007ff17fff", + "0x482480017ff18000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127ff17fff8000", + "0x1104800180018000", + "0xb66", + "0x20680017fff7ffd", + "0x13", + "0x40780017fff7fff", + "0x1", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0xb56", + "0x48127ff27fff8000", + "0x48127fef7fff8000", + "0x48127fef7fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fed8000", + "0x1", + "0x48127fd17fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffb2102", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0xa8", + "0x4825800180007ffa", + "0x4defe", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x35b", + "0x20680017fff7ffe", + "0x8e", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x354", + "0x20680017fff7ffe", + "0x78", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x386", + "0x20680017fff7ffd", + "0x62", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127f877fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x29a8", + "0x482480017fff8000", + "0x29a7", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x8", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007f83", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x2a", + "0x48307ffe80007f83", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127f9d7fff8000", + "0x48127fbb7fff8000", + "0x48127fed7fff8000", + "0x48127fed7fff8000", + "0x1104800180018000", + "0xb2c", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x8bf", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f7d7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202333", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127f897fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fbd7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffdfde6", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x91", + "0x4825800180007ffa", + "0x2021a", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x29e", + "0x20680017fff7ffe", + "0x77", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x2d0", + "0x20680017fff7ffd", + "0x61", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127fa67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x28f2", + "0x482480017fff8000", + "0x28f1", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x4", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fa2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x29", + "0x48307ffe80007fa2", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fbc7fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0xaea", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x80a", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f9c7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127fa87fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffffdfde6", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x91", + "0x4825800180007ffa", + "0x2021a", + "0x400280007ff97fff", + "0x482680017ff98000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x1f8", + "0x20680017fff7ffe", + "0x77", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x22a", + "0x20680017fff7ffd", + "0x61", + "0x48307ffb80007ffc", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127fa67fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x284c", + "0x482480017fff8000", + "0x284b", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0x4", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007fa2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fee7fff", + "0x10780017fff7fff", + "0x29", + "0x48307ffe80007fa2", + "0x400080007fef7fff", + "0x482480017fef8000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127fbc7fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0xa98", + "0x20680017fff7ffd", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x764", + "0x48127fec7fff8000", + "0x48127fe97fff8000", + "0x48127fe97fff8000", + "0x48127fea7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017feb8000", + "0x1", + "0x48127f9c7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127fa87fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x7", + "0x482680017ffa8000", + "0xfffffffffffffffffffffffffff81908", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0x14b", + "0x4825800180007ffa", + "0x7e6f8", + "0x400280007ff97fff", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x6c5", + "0x482680017ff98000", + "0x1", + "0x20680017fff7ffd", + "0x131", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x6bd", + "0x20680017fff7ffe", + "0x11c", + "0x48307ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482480017ffb8000", + "0x1", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x10780017fff7fff", + "0x8", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x20680017fff7ffe", + "0xf5", + "0x48127feb7fff8000", + "0x480080007ffe8000", + "0x1104800180018000", + "0xa62", + "0x20680017fff7ffe", + "0xec", + "0x48127ffd7fff8000", + "0x48127fed7fff8000", + "0x48127fed7fff8000", + "0x1104800180018000", + "0x163", + "0x20680017fff7ffd", + "0xd6", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x123", + "0x20680017fff7ffe", + "0xc0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x11c", + "0x20680017fff7ffe", + "0xaa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x115", + "0x20680017fff7ffe", + "0x94", + "0x48307ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482480017ffb8000", + "0x1", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x10780017fff7fff", + "0x8", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x20680017fff7ffe", + "0x6d", + "0x48127ff67fff8000", + "0x480080007ffe8000", + "0x1104800180018000", + "0xa51", + "0x20680017fff7ffe", + "0x64", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x48307ffe80007fff", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff67fff8000", + "0x48127f217fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x2753", + "0x482480017fff8000", + "0x2752", + "0x480080007fff8000", + "0x480080007fff8000", + "0x484480017fff8000", + "0xb", + "0x482480017fff8000", + "0x0", + "0xa0680017fff8000", + "0x8", + "0x48307ffe80007f1d", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fef7fff", + "0x10780017fff7fff", + "0x2a", + "0x48307ffe80007f1d", + "0x400080007ff07fff", + "0x482480017ff08000", + "0x1", + "0x48127ffe7fff8000", + "0x480a7ff87fff8000", + "0x480a7ffb7fff8000", + "0x48127f277fff8000", + "0x48127f367fff8000", + "0x48127f487fff8000", + "0x48127f7a7fff8000", + "0x48127f7a7fff8000", + "0x48127f987fff8000", + "0x48127fb67fff8000", + "0x48127fd47fff8000", + "0x48127fe67fff8000", + "0x1104800180018000", + "0xa39", + "0x20680017fff7ffd", + "0xd", + "0x40780017fff7fff", + "0x1", + "0x48127ffa7fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482480017fec8000", + "0x1", + "0x48127f177fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffd7fff8000", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0xe", + "0x48127fe87fff8000", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202338", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127f247fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202337", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127f387fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202336", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127f577fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202335", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff87fff8000", + "0x48127f767fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202334", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127f957fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffd7fff8000", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0xe", + "0x48127fdd7fff8000", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202333", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127fc87fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127fed7fff8000", + "0x48127fdc7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ffc7fff8000", + "0x48127feb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x482680017ff98000", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x56f", + "0x20680017fff7ffe", + "0x2b", + "0xa0680017fff8004", + "0xe", + "0x4824800180047ffe", + "0x800000000000000000000000000000000000000000000000000000000000000", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8002", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x402480017ffb7ffd", + "0xffffffffffffffeeffffffffffffffff", + "0x400280027ffb7ffd", + "0x10780017fff7fff", + "0x14", + "0x484480017fff8001", + "0x8000000000000000000000000000000", + "0x48307fff80007ffd", + "0x480280007ffb7ffd", + "0x480280017ffb7ffd", + "0x402480017ffc7ffe", + "0xf8000000000000000000000000000000", + "0x400280027ffb7ffe", + "0x40780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x482680017ffb8000", + "0x3", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6", + "0x480a7ffb7fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x44", + "0x480a7ffb7fff8000", + "0x480080007ffc8000", + "0x1104800180018000", + "0x9ac", + "0x20680017fff7ffe", + "0x39", + "0x48307ff180007ff2", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482480017ff08000", + "0x1", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x48127fed7fff8000", + "0x10780017fff7fff", + "0x8", + "0x48127ff07fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x15", + "0x48127ff67fff8000", + "0x480080007ffc8000", + "0x1104800180018000", + "0x98f", + "0x20680017fff7ffe", + "0xc", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127fef7fff8000", + "0x48127fef7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127fe67fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffd7fff8000", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0xd", + "0x48127fe97fff8000", + "0x48127fff7fff8000", + "0x48127fef7fff8000", + "0x48127fef7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x14", + "0x48127fe97fff8000", + "0x10780017fff7fff", + "0x5", + "0x40780017fff7fff", + "0x21", + "0x480a7ffb7fff8000", + "0x48127fff7fff8000", + "0x48127fdb7fff8000", + "0x48127fdb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x984", + "0x20680017fff7ffd", + "0x43", + "0x480a7ff77fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x992", + "0x20680017fff7ffd", + "0x33", + "0x48307fff80007fcb", + "0x20680017fff7fff", + "0x21", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff97fff8000", + "0x48127ff87fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x9b1", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4d494e5445525f4f4e4c59", + "0x400080007ffe7fff", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480a7ff97fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x934", + "0x20680017fff7ffd", + "0x43", + "0x480a7ff77fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x942", + "0x20680017fff7ffd", + "0x33", + "0x48307fff80007fcb", + "0x20680017fff7fff", + "0x21", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff97fff8000", + "0x48127ff87fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa0d", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4d494e5445525f4f4e4c59", + "0x400080007ffe7fff", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480a7ff97fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff5a", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff8b", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa3f", + "0x20680017fff7ffd", + "0xb", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa52", + "0x20680017fff7ffe", + "0x61", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x40137ffb7fff8000", + "0x1104800180018000", + "0xa82", + "0x20680017fff7ff8", + "0x43", + "0x20680017fff7ffb", + "0x2c", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0xb0f", + "0x20680017fff7ffe", + "0x11", + "0x48127fe37fff8000", + "0x48127fe37fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480a80007fff8000", + "0x48127fe27fff8000", + "0x48127fe27fff8000", + "0x48127fe27fff8000", + "0x48127fe27fff8000", + "0x48127ff47fff8000", + "0x208b7fff7fff7ffe", + "0x48127fe37fff8000", + "0x48127fe37fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff67fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xad2", + "0x20680017fff7ffd", + "0x20", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0xafb", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fb07fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fb07fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff57fff8000", + "0x48127ff97fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x3", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x1104800180018000", + "0xb06", + "0x20680017fff7ffd", + "0xa0", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0xb43", + "0x20680017fff7ffd", + "0x90", + "0x48127fd27fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff24", + "0x20680017fff7ffd", + "0x7f", + "0x48127ffa7fff8000", + "0x48127fbe7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xb4a", + "0x20680017fff7ffd", + "0x6e", + "0x48127ffc7fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x127500", + "0x1104800180018000", + "0xb42", + "0x20680017fff7ffd", + "0x5c", + "0x48127ffc7fff8000", + "0x48127fce7fff8000", + "0x48127f667fff8000", + "0x480a7ff67fff8000", + "0x48127fcc7fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127fde7fff8000", + "0x40137ff37fff8002", + "0x1104800180018000", + "0xb5c", + "0x20680017fff7ffd", + "0x41", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480a80027fff8000", + "0x1104800180018000", + "0xb83", + "0x40137ffa7fff8001", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x25", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ffa7fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbab", + "0x20680017fff7ffd", + "0xe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80017fff8000", + "0x480a80007fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80017fff8000", + "0x480a80007fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a80017fff8000", + "0x480a80007fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fce7fff8000", + "0x48127f667fff8000", + "0x480a7ff67fff8000", + "0x48127fcc7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fe47fff8000", + "0x48127f7c7fff8000", + "0x480a7ff67fff8000", + "0x48127fe27fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127f927fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127fd27fff8000", + "0x48127ffa7fff8000", + "0x48127fd27fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x1104800180018000", + "0xa54", + "0x20680017fff7ffd", + "0x88", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff05", + "0x20680017fff7ffd", + "0x6f", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x58", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0xab1", + "0x20680017fff7ffd", + "0x3d", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0xad7", + "0x40137ffa7fff8000", + "0x40137ffb7fff8001", + "0x20680017fff7ffd", + "0x20", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ffa7fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb5b", + "0x20680017fff7ffd", + "0x9", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x48127ff87fff8000", + "0x10780017fff7fff", + "0x25", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0xb", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x1104800180018000", + "0x9ba", + "0x20680017fff7ffd", + "0x1cc", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0xb5d", + "0x20680017fff7ffd", + "0x1bc", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x46494e414c495a4544", + "0x400080007ffe7fff", + "0x48127fcb7fff8000", + "0x48127ff67fff8000", + "0x48127fcb7fff8000", + "0x480a7ff67fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0x9dc", + "0x20680017fff7ffd", + "0x197", + "0x48127fa67fff8000", + "0x48127ffa7fff8000", + "0x48127fa67fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x40137ff47fff8009", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe49", + "0x20680017fff7ffd", + "0x17d", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x40137ff47fff800a", + "0x1104800180018000", + "0xb37", + "0x40137ffa7fff8008", + "0x40137ffb7fff8007", + "0x20680017fff7ffd", + "0x161", + "0x482580018000800a", + "0x0", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x6", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x12", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x554e4b4e4f574e5f494d504c454d454e544154494f4e", + "0x400080007ffe7fff", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff27fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x4829800a80018009", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ff17fff", + "0x10780017fff7fff", + "0x127", + "0x400080007ff27fff", + "0x4828800980017ff9", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080017fef7fff", + "0x10780017fff7fff", + "0x10d", + "0x400080017ff07fff", + "0x482480017ff08000", + "0x2", + "0x48127ff07fff8000", + "0x48127ff27fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb29", + "0x20680017fff7ffd", + "0xf4", + "0x20780017fff7ffd", + "0x7", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x13", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0xb78", + "0x20680017fff7ffd", + "0xdd", + "0x48127fd87fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff87fff8000", + "0x1104800180018000", + "0xb88", + "0x20680017fff7ffd", + "0xcb", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x40137fff7fff8006", + "0x20780017fff7ff9", + "0x4e", + "0x40780017fff7fff", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x48127ffb7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0xbcd", + "0x20680017fff7ffd", + "0x38", + "0x480680017fff8000", + "0x3ea3b9a8522d36784cb325f9c7e2ec3c9f3e6d63031a6c6b8743cc22412f604", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x4c69627261727943616c6c", + "0x4002800080067fff", + "0x4002800180067ff8", + "0x4003800280067ffa", + "0x4002800380067ffc", + "0x4002800480067ffd", + "0x4002800580067ffe", + "0x4802800780068000", + "0x20680017fff7fff", + "0xb", + "0x4802800680068000", + "0x4826800180068000", + "0xa", + "0x480680017fff8000", + "0x0", + "0x4802800880068000", + "0x4802800980068000", + "0x10780017fff7fff", + "0x9", + "0x4802800680068000", + "0x4826800180068000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x4802800880068000", + "0x4802800980068000", + "0x20680017fff7ffd", + "0x7", + "0x48127ff17fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x1f", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4549435f4c49425f43414c4c5f4641494c4544", + "0x400080007ffe7fff", + "0x48127fef7fff8000", + "0x48127ff87fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x480a80067fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480a80067fff8000", + "0x480680017fff8000", + "0x5265706c616365436c617373", + "0x400080007ffe7fff", + "0x400080017ffe7ffd", + "0x400180027ffe7ff8", + "0x480080047ffe8000", + "0x20680017fff7fff", + "0xd", + "0x480080037ffd8000", + "0x482480017ffc8000", + "0x5", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480080037ffd8000", + "0x482480017ffc8000", + "0x7", + "0x480680017fff8000", + "0x1", + "0x480080057ffa8000", + "0x480080067ff98000", + "0x20680017fff7ffd", + "0x4a", + "0x48127ff67fff8000", + "0x48127ffa7fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff87fff8000", + "0x400b7ff87fff8000", + "0x400b7ff97fff8001", + "0x400b7ffa7fff8002", + "0x400b7ffb7fff8003", + "0x400b7ffc7fff8004", + "0x400b7ffd7fff8005", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x480a80027fff8000", + "0x480a80037fff8000", + "0x480a80047fff8000", + "0x480a80057fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x91c", + "0x20680017fff7ffd", + "0x29", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a80007fff8000", + "0x480a80017fff8000", + "0x480a80027fff8000", + "0x480a80037fff8000", + "0x480a80047fff8000", + "0x480a80057fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x942", + "0x20680017fff7ffd", + "0xe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x5245504c4143455f434c4153535f484153485f4641494c4544", + "0x400080007ffe7fff", + "0x48127ff47fff8000", + "0x48127ff87fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127fd87fff8000", + "0x48127ffa7fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x494d504c454d454e544154494f4e5f45585049524544", + "0x400080007ffe7fff", + "0x482480017fed8000", + "0x2", + "0x48127fed7fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127fed7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4e4f545f454e41424c45445f594554", + "0x400080007ffe7fff", + "0x482480017fef8000", + "0x1", + "0x48127fef7fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127fef7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480a80087fff8000", + "0x480a80077fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127fa67fff8000", + "0x48127ffa7fff8000", + "0x48127fa67fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127fcf7fff8000", + "0x48127ffa7fff8000", + "0x48127fcf7fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff67fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x8", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x0", + "0x480080007ffa8000", + "0x208b7fff7fff7ffe", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa91", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x6", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x21", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa8a", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x400380007ffd7ffb", + "0x480a7ffc7fff8000", + "0x482680017ffd8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffad", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff8f", + "0x20680017fff7ffd", + "0xc", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x405", + "0x20680017fff7ffd", + "0x2d", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff37fff8000", + "0x1104800180018000", + "0xa51", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x3cb", + "0x20680017fff7ffd", + "0x2d", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x5", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff37fff8000", + "0x1104800180018000", + "0xa8c", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x391", + "0x20680017fff7ffd", + "0x2d", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x3", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff37fff8000", + "0x1104800180018000", + "0x9dd", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x357", + "0x20680017fff7ffd", + "0x2d", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x48127ff37fff8000", + "0x1104800180018000", + "0xa18", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x4825800180007ffd", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x474f565f41444d494e5f43414e4e4f545f53454c465f52454d4f5645", + "0x400080007ffe7fff", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x2ff", + "0x20680017fff7ffd", + "0x20", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480a7ffd7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0xa24", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa40", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa5c", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa77", + "0x20680017fff7ffd", + "0xb", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa8c", + "0x20680017fff7ffd", + "0xa", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x400380007ffd7ffa", + "0x400380017ffd7ffb", + "0x480a7ffc7fff8000", + "0x482680017ffd8000", + "0x2", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa99", + "0x20680017fff7ffd", + "0xb", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xab0", + "0x20680017fff7ffd", + "0xb", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x23c", + "0x20680017fff7ffd", + "0x22", + "0x480a7ff77fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xac0", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x1104800180018000", + "0x20d", + "0x20680017fff7ffd", + "0x37", + "0x480a7ff67fff8000", + "0x48127ffa7fff8000", + "0x480a7ff87fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb5f", + "0x20680017fff7ffd", + "0x22", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa85", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x48127ffa7fff8000", + "0x480a7ff87fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x1c9", + "0x20680017fff7ffd", + "0x22", + "0x480a7ff77fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb74", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x19a", + "0x20680017fff7ffd", + "0x47", + "0x480a7ff77fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x9ec", + "0x20680017fff7ffd", + "0x34", + "0x48127ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbb1", + "0x20680017fff7ffd", + "0x22", + "0x48127ffc7fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127f5b7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x1104800180018000", + "0xb32", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x146", + "0x20680017fff7ffd", + "0x47", + "0x480a7ff77fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x998", + "0x20680017fff7ffd", + "0x34", + "0x48127ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb7a", + "0x20680017fff7ffd", + "0x22", + "0x48127ffc7fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127f5b7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x1104800180018000", + "0xade", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x12", + "0x4825800180007ffd", + "0x100", + "0x4844800180008002", + "0x8000000000000110000000000000000", + "0x4830800080017ffe", + "0x480280007ffc7fff", + "0x482480017ffe8000", + "0xefffffffffffffde00000000000000ff", + "0x480280017ffc7fff", + "0x400280027ffc7ffb", + "0x402480017fff7ffb", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7fff", + "0x11", + "0x402780017fff7fff", + "0x1", + "0x400380007ffc7ffd", + "0x482680017ffd8000", + "0xffffffffffffffffffffffffffffff00", + "0x400280017ffc7fff", + "0x40780017fff7fff", + "0x5", + "0x482680017ffc8000", + "0x2", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x10780017fff7fff", + "0x8", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x12", + "0x4825800180007ffd", + "0x10000000000000000", + "0x4844800180008002", + "0x8000000000000110000000000000000", + "0x4830800080017ffe", + "0x480280007ffc7fff", + "0x482480017ffe8000", + "0xefffffffffffffdeffffffffffffffff", + "0x480280017ffc7fff", + "0x400280027ffc7ffb", + "0x402480017fff7ffb", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7fff", + "0x11", + "0x402780017fff7fff", + "0x1", + "0x400380007ffc7ffd", + "0x482680017ffd8000", + "0xffffffffffffffff0000000000000000", + "0x400280017ffc7fff", + "0x40780017fff7fff", + "0x5", + "0x482680017ffc8000", + "0x2", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x10780017fff7fff", + "0x8", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ff27fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x1104800180018000", + "0xb07", + "0x20680017fff7ffd", + "0x71", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x480a7ff37fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x1104800180018000", + "0xda", + "0x20680017fff7ffd", + "0x5d", + "0x4825800180007ffb", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x494e56414c49445f4d494e5445525f41444452455353", + "0x400080007ffe7fff", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff77fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0xb0e", + "0x20680017fff7ffd", + "0x2f", + "0x48127fdd7fff8000", + "0x48127ffa7fff8000", + "0x48127fdd7fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0xb39", + "0x20680017fff7ffd", + "0x1d", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xbbf", + "0x20680017fff7ffd", + "0xd", + "0x48127fe17fff8000", + "0x48127ffa7fff8000", + "0x48127fe17fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe17fff8000", + "0x48127ffa7fff8000", + "0x48127fe17fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fdd7fff8000", + "0x48127ffa7fff8000", + "0x48127fdd7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff17fff8000", + "0x48127ffa7fff8000", + "0x480a7ff37fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x16", + "0x480280007ffc8003", + "0x480280017ffc8003", + "0x4844800180017ffe", + "0x100000000000000000000000000000000", + "0x483180017ffd7ffd", + "0x482480017fff7ffd", + "0x800000000000010fffffffffffffffff7ffffffffffffef0000000000000001", + "0x20680017fff7ffc", + "0x6", + "0x402480017fff7ffd", + "0xffffffffffffffffffffffffffffffff", + "0x10780017fff7fff", + "0x4", + "0x402480017ffe7ffd", + "0xf7ffffffffffffef0000000000000000", + "0x400280027ffc7ffd", + "0x20680017fff7ffe", + "0xe", + "0x402780017fff7fff", + "0x1", + "0x400380007ffc7ffd", + "0x40780017fff7fff", + "0x5", + "0x482680017ffc8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x10780017fff7fff", + "0x8", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb8e", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480080027ffb8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1390569bb0a3a722eb4228e8700301347da081211d5c2ded2db22ef389551ab", + "0x1104800180018000", + "0xb9f", + "0x20680017fff7ffc", + "0x1a", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xbd4", + "0x20680017fff7ffd", + "0xb", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x4825800180007ffb", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x45524332303a206d696e7420746f2030", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x798", + "0x20680017fff7ffd", + "0x7e", + "0x48127ffa7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x9bc", + "0x20680017fff7ffd", + "0x6c", + "0x48127fc87fff8000", + "0x48127fc87fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0xb8e", + "0x20680017fff7ffd", + "0x5b", + "0x48127fd97fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x7aa", + "0x20680017fff7ffd", + "0x49", + "0x48127ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x9a2", + "0x20680017fff7ffd", + "0x37", + "0x48127ffc7fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0xb8f", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x22", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xba8", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fd97fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fc77fff8000", + "0x480a7ff97fff8000", + "0x48127fc67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x4825800180007ffb", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x45524332303a206275726e2066726f6d2030", + "0x400080007ffe7fff", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x6ec", + "0x20680017fff7ffd", + "0x7e", + "0x48127ffa7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x92d", + "0x20680017fff7ffd", + "0x6c", + "0x48127fc87fff8000", + "0x48127fc87fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0xae2", + "0x20680017fff7ffd", + "0x5b", + "0x48127fd97fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x6fe", + "0x20680017fff7ffd", + "0x49", + "0x48127ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x913", + "0x20680017fff7ffd", + "0x37", + "0x48127ffc7fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0xae3", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x22", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xafc", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fd97fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fc77fff8000", + "0x480a7ff97fff8000", + "0x48127fc67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x3fc801c47df4de8d5835f8bfd4d0b8823ba63e5a3f278086901402d680abfc", + "0x1104800180018000", + "0xb01", + "0x20680017fff7ffc", + "0x1a", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xb36", + "0x20680017fff7ffd", + "0xb", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff984", + "0x20680017fff7ffe", + "0x2b", + "0xa0680017fff8004", + "0xe", + "0x4824800180047ffe", + "0x800000000000000000000000000000000000000000000000000000000000000", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8002", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x402480017ffb7ffd", + "0xffffffffffffffeeffffffffffffffff", + "0x400280027ffb7ffd", + "0x10780017fff7fff", + "0x14", + "0x484480017fff8001", + "0x8000000000000000000000000000000", + "0x48307fff80007ffd", + "0x480280007ffb7ffd", + "0x480280017ffb7ffd", + "0x402480017ffc7ffe", + "0xf8000000000000000000000000000000", + "0x400280027ffb7ffe", + "0x40780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x482680017ffb8000", + "0x3", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6", + "0x480a7ffb7fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff94b", + "0x20680017fff7ffe", + "0x80", + "0x20680017fff7fff", + "0x39", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0xadf", + "0x20680017fff7ff9", + "0x20", + "0x20680017fff7ffc", + "0xd", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x10780017fff7fff", + "0x3a", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x208b7fff7fff7ffe", + "0x4824800180007fff", + "0x1", + "0x20680017fff7fff", + "0x32", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0xaf3", + "0x20680017fff7fff", + "0x1b", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x15", + "0x480080007ffd8000", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x48307ffb80007ffc", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x4", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ff77fff8000", + "0x48127ff67fff8000", + "0x1104800180018000", + "0xa69", + "0x20680017fff7ffd", + "0x1c", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a7ff77fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0xa84", + "0x20680017fff7ffd", + "0xb", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa89", + "0x48127ffd7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x99d", + "0x20680017fff7ffc", + "0x1c", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x9d2", + "0x20680017fff7ffd", + "0xc", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd27fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd27fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd27fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcd1", + "0x20680017fff7ffd", + "0x34", + "0x480a7ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff8a3", + "0x20680017fff7ffd", + "0x20", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f4e4c595f555047524144455f474f5645524e4f52", + "0x400080007ffe7fff", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x59", + "0x480a7ffa7fff8000", + "0x48127fa17fff8000", + "0x480a7ffc7fff8000", + "0x48127fa07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fa07fff8000", + "0x48127fa07fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa3b", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480080017ffb8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8000", + "0x8", + "0x482a7ffd7ffc8000", + "0x4824800180007fff", + "0x10000000000000000", + "0x400280007ffb7fff", + "0x10780017fff7fff", + "0xd", + "0x482a7ffd7ffc8001", + "0x4824800180007fff", + "0xffffffffffffffff0000000000000000", + "0x400280007ffb7ffe", + "0x482680017ffb8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffd7fff8000", + "0x10780017fff7fff", + "0x7", + "0x482680017ffb8000", + "0x1", + "0x480680017fff8000", + "0x1", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x7536345f616464204f766572666c6f77", + "0x1104800180018000", + "0xa23", + "0x20680017fff7ffd", + "0x9", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff27fff8000", + "0x480a7ff37fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff0f", + "0x20680017fff7ffd", + "0x22", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff47fff8000", + "0x480a7ff67fff8000", + "0x48127ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa12", + "0x20680017fff7ffd", + "0xe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fcc7fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fcc7fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff47fff8000", + "0x48127ff97fff8000", + "0x480a7ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff27fff8000", + "0x480a7ff37fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffed8", + "0x20680017fff7ffd", + "0x22", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff47fff8000", + "0x480a7ff67fff8000", + "0x48127ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa16", + "0x20680017fff7ffd", + "0xe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fcc7fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fcc7fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff47fff8000", + "0x48127ff97fff8000", + "0x480a7ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa27", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x1104800180018000", + "0xa1d", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff77fff", + "0x400280017ff77ff5", + "0x400280027ff77ffb", + "0x400280037ff77ffc", + "0x400280047ff77ffd", + "0x400280057ff77ffe", + "0x480280077ff78000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff78000", + "0x482680017ff78000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff78000", + "0x482680017ff78000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff78000", + "0x480280097ff78000", + "0x1104800180018000", + "0xb5b", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb45", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x1104800180018000", + "0x9c1", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff77fff", + "0x400280017ff77ff5", + "0x400280027ff77ffb", + "0x400280037ff77ffc", + "0x400280047ff77ffd", + "0x400280057ff77ffe", + "0x480280077ff78000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff78000", + "0x482680017ff78000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff78000", + "0x482680017ff78000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff78000", + "0x480280097ff78000", + "0x1104800180018000", + "0xaff", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xaf6", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff67fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffdd4", + "0x20680017fff7ffd", + "0x20", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0xaec", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fb07fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127fb07fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ff57fff8000", + "0x48127ff97fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xaf7", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x1104800180018000", + "0x91b", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff77fff", + "0x400280017ff77ff5", + "0x400280027ff77ffb", + "0x400280037ff77ffc", + "0x400280047ff77ffd", + "0x400280057ff77ffe", + "0x480280077ff78000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff78000", + "0x482680017ff78000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff78000", + "0x482680017ff78000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff78000", + "0x480280097ff78000", + "0x1104800180018000", + "0xa59", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0xaa6", + "0x20680017fff7ffd", + "0xb", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xacd", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x1104800180018000", + "0x8ac", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffc7fff", + "0x400280017ffc7ff5", + "0x400280027ffc7ffb", + "0x400280037ffc7ffc", + "0x400280047ffc7ffd", + "0x400280057ffc7ffe", + "0x480280077ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffc8000", + "0x482680017ffc8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffc8000", + "0x482680017ffc8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffc8000", + "0x480280097ffc8000", + "0x1104800180018000", + "0x9ea", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffa80007ffb", + "0x400280007ffd7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x482680017ffd8000", + "0x1", + "0x1104800180018000", + "0xa7c", + "0x20680017fff7ffd", + "0x9", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xac3", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0xae7", + "0x1104800180018000", + "0xb10", + "0x20680017fff7ffd", + "0xc", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb03", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffc7fff", + "0x400380017ffc7ffa", + "0x400280027ffc7ffe", + "0x400280037ffc7ffd", + "0x480280057ffc8000", + "0x20680017fff7fff", + "0xc", + "0x480280047ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480280067ffc8000", + "0x10780017fff7fff", + "0x9", + "0x480280047ffc8000", + "0x482680017ffc8000", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480280067ffc8000", + "0x480280077ffc8000", + "0x1104800180018000", + "0xb0d", + "0x20680017fff7ffd", + "0xc", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff506", + "0x20680017fff7ffd", + "0x62", + "0x20680017fff7fff", + "0x51", + "0x4825800180007ff6", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x494e56414c49445f4143434f554e545f41444452455353", + "0x400080007ffe7fff", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x1104800180018000", + "0xad1", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x1f", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb04", + "0x20680017fff7ffd", + "0x8", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x10780017fff7fff", + "0x18", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff491", + "0x20680017fff7ffd", + "0x44", + "0x20680017fff7fff", + "0x8", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x10780017fff7fff", + "0x1f", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x1104800180018000", + "0xb13", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x28", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xaa7", + "0x20680017fff7ffd", + "0x11", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff8d0", + "0x20680017fff7ffd", + "0x32", + "0x48287ffd80007fff", + "0x20680017fff7fff", + "0x20", + "0x480a7ff87fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x48127ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb09", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f4e4c595f53454c465f43414e5f52454e4f554e4345", + "0x400080007ffe7fff", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x480a7ffa7fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x48127ffa7fff8000", + "0x480a7ffa7fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x341c1bdfd89f69748aa00b5742b03adbffd79b8e80cab5c50d91cd8c2a79be1", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffd7fff", + "0x400380017ffd7ffc", + "0x400280027ffd7ffd", + "0x400280037ffd7ffe", + "0x480280057ffd8000", + "0x20680017fff7fff", + "0xc", + "0x480280047ffd8000", + "0x482680017ffd8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480280067ffd8000", + "0x10780017fff7fff", + "0x9", + "0x480280047ffd8000", + "0x482680017ffd8000", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480280067ffd8000", + "0x480280077ffd8000", + "0x1104800180018000", + "0x9cd", + "0x20680017fff7ffd", + "0xa", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0xb6ce5410fca59d078ee9b2a4371a9d684c530d697c64fbef0ae6d5e8f0ac72", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffd7fff", + "0x400380017ffd7ffc", + "0x400280027ffd7ffd", + "0x400280037ffd7ffe", + "0x480280057ffd8000", + "0x20680017fff7fff", + "0xc", + "0x480280047ffd8000", + "0x482680017ffd8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480280067ffd8000", + "0x10780017fff7fff", + "0x9", + "0x480280047ffd8000", + "0x482680017ffd8000", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480280067ffd8000", + "0x480280077ffd8000", + "0x1104800180018000", + "0x99c", + "0x20680017fff7ffd", + "0xa", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1f0d4aa99431d246bac9b8e48c33e888245b15e9678f64f9bdfc8823dc8f979", + "0x1104800180018000", + "0xad4", + "0x20680017fff7ffc", + "0x1a", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xb09", + "0x20680017fff7ffd", + "0xb", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "0x1104800180018000", + "0xaf0", + "0x20680017fff7ffc", + "0x19", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xb49", + "0x20680017fff7ffd", + "0xa", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb34", + "0x48127ffd7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0xac0", + "0x20680017fff7ffc", + "0x1b", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xb19", + "0x20680017fff7ffd", + "0xb", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fb17fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fb17fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fb17fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xb28", + "0x48127ffd7fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0xa8c", + "0x20680017fff7ffc", + "0x1b", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0xae5", + "0x20680017fff7ffd", + "0xb", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fb17fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fb17fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fb17fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x4825800180007ffa", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x45524332303a207472616e736665722066726f6d2030", + "0x400080007ffe7fff", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x4825800180007ffb", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x45524332303a207472616e7366657220746f2030", + "0x400080007ffe7fff", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff57", + "0x20680017fff7ffd", + "0x80", + "0x48127ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x16b", + "0x20680017fff7ffd", + "0x6e", + "0x48127ffc7fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x480a7ffa7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0x33b", + "0x20680017fff7ffd", + "0x5a", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff3a", + "0x20680017fff7ffd", + "0x48", + "0x48127ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x131", + "0x20680017fff7ffd", + "0x36", + "0x48127ffc7fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0x31e", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x21", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x338", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x48127fc67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffef9", + "0x20680017fff7ffd", + "0x48", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0xffffffffffffffffffffffffffffffff", + "0x480680017fff8000", + "0xffffffffffffffffffffffffffffffff", + "0x1104800180018000", + "0xa45", + "0x20680017fff7fff", + "0x2f", + "0x48127fe17fff8000", + "0x48127fe57fff8000", + "0x48127fe57fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xd0", + "0x20680017fff7ffd", + "0x1d", + "0x48127ffc7fff8000", + "0x48127fae7fff8000", + "0x48127fae7fff8000", + "0x48127fae7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x1104800180018000", + "0x34", + "0x20680017fff7ffd", + "0x8", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x10780017fff7fff", + "0x18", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffc7fff8000", + "0x48127fae7fff8000", + "0x48127fae7fff8000", + "0x48127fae7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fe17fff8000", + "0x48127fe17fff8000", + "0x48127fe17fff8000", + "0x48127fe17fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x4825800180007ffa", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x45524332303a20617070726f76652066726f6d2030", + "0x400080007ffe7fff", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x4825800180007ffb", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x45524332303a20617070726f766520746f2030", + "0x400080007ffe7fff", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x9bd", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x21", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x9d8", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa0c", + "0x20680017fff7ffd", + "0xa", + "0x40780017fff7fff", + "0x2", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x753235365f616464204f766572666c6f77", + "0x400080007ffe7fff", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x482480017ffb8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa09", + "0x20680017fff7ffd", + "0xa", + "0x40780017fff7fff", + "0x2", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x753235365f737562204f766572666c6f77", + "0x400080007ffe7fff", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x482480017ffb8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0xa08", + "0x20680017fff7ffd", + "0x29", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0xa35", + "0x20680017fff7ffd", + "0x19", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa62", + "0x20680017fff7ffd", + "0xb", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x18", + "0x48127fe37fff8000", + "0x48127fe37fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fe37fff8000", + "0x48127fe37fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x30", + "0x48127fcb7fff8000", + "0x48127fcb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fcb7fff8000", + "0x48127fcb7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1390569bb0a3a722eb4228e8700301347da081211d5c2ded2db22ef389551ab", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffc7fff", + "0x400380017ffc7ffb", + "0x400280027ffc7ffd", + "0x400280037ffc7ffe", + "0x400380047ffc7ffd", + "0x480280067ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffc8000", + "0x480280087ffc8000", + "0x1104800180018000", + "0x4fd", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff0c8", + "0x20680017fff7ffd", + "0x7c", + "0x4824800180007fff", + "0x0", + "0x20680017fff7fff", + "0x69", + "0x4825800180007ffd", + "0x0", + "0x20680017fff7fff", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48307ffe80007fff", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x5a45524f5f50524f564953494f4e414c5f474f565f41444d494e", + "0x400080007ffe7fff", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x48127ff27fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0xa09", + "0x20680017fff7ffd", + "0x37", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0xa61", + "0x20680017fff7ffd", + "0x22", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0x480680017fff8000", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x1104800180018000", + "0xa55", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x524f4c45535f414c52454144595f494e495449414c495a4544", + "0x400080007ffe7fff", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x3fc801c47df4de8d5835f8bfd4d0b8823ba63e5a3f278086901402d680abfc", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffc7fff", + "0x400380017ffc7ffb", + "0x400280027ffc7ffd", + "0x400280037ffc7ffe", + "0x400380047ffc7ffd", + "0x480280067ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffc8000", + "0x480280087ffc8000", + "0x1104800180018000", + "0x43c", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x476574457865637574696f6e496e666f", + "0x400280007ffd7fff", + "0x400380017ffd7ffc", + "0x480280037ffd8000", + "0x20680017fff7fff", + "0xc", + "0x480280027ffd8000", + "0x482680017ffd8000", + "0x5", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480280047ffd8000", + "0x10780017fff7fff", + "0x9", + "0x480280027ffd8000", + "0x482680017ffd8000", + "0x6", + "0x480680017fff8000", + "0x1", + "0x480280047ffd8000", + "0x480280057ffd8000", + "0x1104800180018000", + "0xa0d", + "0x20680017fff7ffd", + "0xa", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0x28", + "0x480a7ff97fff8000", + "0x480280067ffb8000", + "0x1104800180018000", + "0x9fc", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x20680017fff7ffc", + "0xf", + "0x40780017fff7fff", + "0x2", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4e6f6e20436f6e747261637441646472657373", + "0x400080007ffe7fff", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x11", + "0x480a7ff97fff8000", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x9dc", + "0x1104800180018000", + "0x3aa", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x73b", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x9ba", + "0x1104800180018000", + "0x388", + "0x20680017fff7ffd", + "0xd", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x9cf", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x1104800180018000", + "0x1f6", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff97fff", + "0x400280017ff97ff5", + "0x400280027ff97ffb", + "0x400280037ff97ffc", + "0x400280047ff97ffd", + "0x400280057ff97ffe", + "0x480280077ff98000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff98000", + "0x482680017ff98000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff98000", + "0x482680017ff98000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff98000", + "0x480280097ff98000", + "0x1104800180018000", + "0x334", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0x28", + "0x480a7ff97fff8000", + "0x480280067ffb8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff286", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x20680017fff7ffc", + "0xf", + "0x40780017fff7fff", + "0x2", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x53746f7265553634202d206e6f6e20753634", + "0x400080007ffe7fff", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x12", + "0x480a7ff97fff8000", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff4d8", + "0x20680017fff7ffe", + "0x37", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x40137ffb7fff8000", + "0x1104800180018000", + "0x92d", + "0x20680017fff7ffa", + "0x1f", + "0x20680017fff7ffd", + "0xe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x480a80007fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x93e", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x1104800180018000", + "0x93c", + "0x20680017fff7ffd", + "0xe", + "0x480a7ffb7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffee3d", + "0x48127fed7fff8000", + "0x48127fed7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0xeef", + "0x482480017fff8000", + "0xeee", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480080007ffc8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x94a", + "0x20680017fff7ffc", + "0xb", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1ac8d354f2e793629cb233a16f10d13cf15b9c45bbc620577c8e1df95ede545", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x480280027ffc8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffb7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffb7ffd", + "0x400280027ffb7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x482680017ffc8000", + "0x3", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffde1", + "0x20680017fff7ffd", + "0xa", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480080007ffb8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0xa", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x400180007fff7ffd", + "0x480680017fff8000", + "0x1", + "0x48127ffe7fff8000", + "0x482480017ffd8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffae", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffb7fff", + "0x400380017ffb7ff9", + "0x400280027ffb7ffe", + "0x400280037ffb7ffd", + "0x400380047ffb7ffd", + "0x480280067ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffb8000", + "0x480280087ffb8000", + "0x1104800180018000", + "0x1bf", + "0x20680017fff7ffd", + "0xd", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x988", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffb7fff", + "0x400380017ffb7ff9", + "0x400280027ffb7ffe", + "0x400280037ffb7ffd", + "0x400380047ffb7ffd", + "0x480280067ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffb8000", + "0x480280087ffb8000", + "0x1104800180018000", + "0x184", + "0x20680017fff7ffd", + "0xd", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x15", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x10b7ff37fff7fff", + "0x10780017fff7fff", + "0x147", + "0x10780017fff7fff", + "0x131", + "0x10780017fff7fff", + "0x11b", + "0x10780017fff7fff", + "0x105", + "0x10780017fff7fff", + "0xee", + "0x10780017fff7fff", + "0xd7", + "0x10780017fff7fff", + "0xc0", + "0x10780017fff7fff", + "0xab", + "0x10780017fff7fff", + "0x82", + "0x10780017fff7fff", + "0x59", + "0x10780017fff7fff", + "0x30", + "0x10780017fff7fff", + "0x18", + "0x480680017fff8000", + "0x99cd8bde557814842a3121e8ddfd433a539b8c9f14bf31ebf108d12e6196e9", + "0x400280007ffb7fff", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x94a", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x12d", + "0x480680017fff8000", + "0x134692b230b9e1ffa39098904722134159652b09c5bc41d88d6698779d228ff", + "0x400280007ffb7fff", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x949", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x117", + "0x480680017fff8000", + "0x38a81c7fd04bac40e22e3eab2bcb3a09398bba67d0c5a263c6665c9c0b13a3", + "0x400280007ffb7fff", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x944", + "0x20680017fff7ffb", + "0xa", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0xfb", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x7633a8d8b49c5c6002a1329e2c9791ea2ced86e06e01e17b5d0d1d5312c792", + "0x400280007ffb7fff", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x93f", + "0x20680017fff7ffb", + "0xa", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0xd4", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x34bb683f971572e1b0f230f3dd40f3dbcee94e0b3e3261dd0a91229a1adc4b7", + "0x400280007ffb7fff", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x93a", + "0x20680017fff7ffb", + "0xa", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0xad", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0xd1831486d8c46712712653f17d3414869aa50b4c16836d0b3d4afcfeafa024", + "0x400280007ffb7fff", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x93c", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x8f", + "0x480680017fff8000", + "0x9d4a59b844ac9d98627ddba326ab3707a7d7e105fd03c777569d0f61a91f1e", + "0x400280007ffb7fff", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x931", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x7a", + "0x480680017fff8000", + "0x2842fd3b01bb0858fef6a2da51cdd9f995c7d36d7625fb68dd5d69fcc0a6d76", + "0x400280007ffb7fff", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x930", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x65", + "0x480680017fff8000", + "0x2b23b0c08c7b22209aea4100552de1b7876a49f04ee5a4d94f83ad24bc4ec1c", + "0x400280007ffb7fff", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x92f", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x50", + "0x480680017fff8000", + "0x3ae95723946e49d38f0cf844cef1fb25870e9a74999a4b96271625efa849b4c", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x92f", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x3c", + "0x480680017fff8000", + "0x2d8a82390cce552844e57407d23a1e48a38c4b979d525b1673171e503e116ab", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x92a", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x28", + "0x480680017fff8000", + "0x2143175c365244751ccde24dd8f54f934672d6bc9110175c9e58e1e73705531", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x925", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x10780017fff7fff", + "0x14", + "0x480680017fff8000", + "0x25e2d538533284b9d61dfe45b9aaa563d33ef8374d9bb26d77a009b8e21f0de", + "0x400280007ffb7fff", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x482680017ffb8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x920", + "0x480a7ff17fff8000", + "0x480a7ff27fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x9", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x13", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0xcfc0e4c73ce8e46b07c3167ce01ce17e6c2deaaa5b88b977bbb10abe25c9ad", + "0x1104800180018000", + "0x124", + "0x1104800180018000", + "0x14d", + "0x20680017fff7ffd", + "0xa", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x7af", + "0x48127ffd7fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffcae", + "0x20680017fff7ffc", + "0x1c", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffce3", + "0x20680017fff7ffd", + "0xc", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd27fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd27fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x8", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x48127fd27fff8000", + "0x48127ff07fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff17fff8000", + "0x48127ff17fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x11", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffd", + "0x6", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0xcfc0e4c73ce8e46b07c3167ce01ce17e6c2deaaa5b88b977bbb10abe25c9ad", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffc7fff", + "0x400380017ffc7ffb", + "0x400280027ffc7ffd", + "0x400280037ffc7ffe", + "0x400280047ffc7ffc", + "0x480280067ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffc8000", + "0x480280087ffc8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff6a", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0xf", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0xbdf", + "0x482480017fff8000", + "0xbde", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4825800180007ff9", + "0x1112", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff87fff", + "0x10780017fff7fff", + "0x43", + "0x4825800180007ff9", + "0x1112", + "0x400280007ff87fff", + "0x482680017ff88000", + "0x1", + "0x48297ffa80007ffb", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffa8000", + "0x1", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x20680017fff7ffe", + "0x1e", + "0x480080007fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffeb1d", + "0x48127ff37fff8000", + "0x48127ff17fff8000", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffce", + "0x20680017fff7ffd", + "0x8", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x10780017fff7fff", + "0xd", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff88000", + "0x1", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x482480017ffa8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x52c476292b358ba7d29adb58502341b4cc5437d07f67d3e285e085828bc820", + "0x400280007ffb7fff", + "0x400380017ffb7ffc", + "0x480280027ffb8000", + "0x400280037ffb7fff", + "0x400380047ffb7ffd", + "0x480280057ffb8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffa7ffc", + "0x480280017ffa7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffa7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffa7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffa7ffd", + "0x400280027ffa7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffa8000", + "0x3", + "0x482680017ffb8000", + "0x6", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0x1a", + "0x480280067ffb8000", + "0x4824800180007fff", + "0x0", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x20680017fff7ffd", + "0x6", + "0x480680017fff8000", + "0x1", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48307ffa80007ffb", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x6", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x2e9f66c6eea14532c94ad25405a4fcb32faa4969559c128d837caa0ec50a655", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x480280027ffc8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffb7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffb7ffd", + "0x400280027ffb7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x482680017ffc8000", + "0x3", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffea32", + "0x20680017fff7ffd", + "0x32", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x762", + "0x20680017fff7ffd", + "0x20", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x38d", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x76b", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffc94", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff67fff", + "0x400280017ff67ff5", + "0x400280027ff67ffb", + "0x400280037ff67ffc", + "0x400280047ff67ffd", + "0x400280057ff67ffe", + "0x480280077ff68000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff68000", + "0x482680017ff68000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff68000", + "0x482680017ff68000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff68000", + "0x480280097ff68000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffdd2", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe993", + "0x20680017fff7ffd", + "0x32", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x6c3", + "0x20680017fff7ffd", + "0x20", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x2a", + "0x20680017fff7ffd", + "0xd", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe922", + "0x20680017fff7ffd", + "0x51", + "0x20680017fff7fff", + "0x8", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x10780017fff7fff", + "0x23", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x1104800180018000", + "0x6bf", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x33", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffed97", + "0x20680017fff7ffd", + "0x24", + "0x48127fdb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x6f2", + "0x20680017fff7ffd", + "0x11", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fdb7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0x28", + "0x480a7ff97fff8000", + "0x480280067ffb8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffec57", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x20680017fff7ffc", + "0xf", + "0x40780017fff7fff", + "0x2", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x53746f72655538202d206e6f6e207538", + "0x400080007ffe7fff", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x12", + "0x480a7ff97fff8000", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x6c6", + "0x20680017fff7ffc", + "0x4d", + "0x20680017fff7ffd", + "0x3f", + "0x482680017ffd8000", + "0x1", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400080007ff97fff", + "0x400080017ff97ff8", + "0x400180027ff97ffc", + "0x400080037ff97ffe", + "0x480080057ff98000", + "0x20680017fff7fff", + "0x27", + "0x48127ff67fff8000", + "0x480080067ff78000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffecce", + "0x480080047feb8000", + "0x482480017fea8000", + "0x7", + "0x20680017fff7ffc", + "0xe", + "0x40780017fff7fff", + "0x2", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127fe67fff8000", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x53746f726555313238202d206e6f6e2075313238", + "0x400080007ffe7fff", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x11", + "0x48127fe57fff8000", + "0x480080047fe68000", + "0x482480017fe58000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x480080067fe28000", + "0x480080077fe18000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x14", + "0x48127fe57fff8000", + "0x48127fe57fff8000", + "0x48127fe57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x48127fe57fff8000", + "0x48127fe57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x14", + "0x48127fe57fff8000", + "0x48127fe57fff8000", + "0x48127fe57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127fe57fff8000", + "0x48127fe57fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x3a4e8ec16e258a799fe707996fd5d21d42b29adc1499a370edf7f809d8c458a", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x480280027ffc8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffb7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffb7ffd", + "0x400280027ffb7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x482680017ffc8000", + "0x3", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x3c87bf42ed4f01f11883bf54f43d91d2cbbd5fec26d1df9c74c57ae138800a4", + "0x400280007ffb7fff", + "0x400380017ffb7ffc", + "0x480280027ffb8000", + "0x400280037ffb7fff", + "0x400380047ffb7ffd", + "0x480280057ffb8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffa7ffc", + "0x480280017ffa7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffa7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffa7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffa7ffd", + "0x400280027ffa7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffa8000", + "0x3", + "0x482680017ffb8000", + "0x6", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x644", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffcb", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x221", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffbf0", + "0x20680017fff7ffd", + "0xd", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe57fff8000", + "0x48127ff57fff8000", + "0x48127fe47fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x627", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffa5e", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ff97fff", + "0x400280017ff97ff5", + "0x400280027ff97ffb", + "0x400280037ff97ffc", + "0x400280047ff97ffd", + "0x400280057ff97ffe", + "0x480280077ff98000", + "0x20680017fff7fff", + "0xd", + "0x480280067ff98000", + "0x482680017ff98000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ff98000", + "0x482680017ff98000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ff98000", + "0x480280097ff98000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffb9c", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x5d7", + "0x20680017fff7fff", + "0x8", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x601", + "0x20680017fff7fff", + "0x8", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x341c1bdfd89f69748aa00b5742b03adbffd79b8e80cab5c50d91cd8c2a79be1", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffc7fff", + "0x400380017ffc7ffb", + "0x400280027ffc7ffd", + "0x400280037ffc7ffe", + "0x400380047ffc7ffd", + "0x480280067ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffc8000", + "0x480280087ffc8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffb2a", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0xb6ce5410fca59d078ee9b2a4371a9d684c530d697c64fbef0ae6d5e8f0ac72", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffc7fff", + "0x400380017ffc7ffb", + "0x400280027ffc7ffd", + "0x400280037ffc7ffe", + "0x400380047ffc7ffd", + "0x480280067ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffc8000", + "0x480280087ffc8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffaf6", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1f0d4aa99431d246bac9b8e48c33e888245b15e9678f64f9bdfc8823dc8f979", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffc7fff", + "0x400380017ffc7ffb", + "0x400280027ffc7ffd", + "0x400280037ffc7ffe", + "0x400380047ffc7ffd", + "0x480280067ffc8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffc8000", + "0x482680017ffc8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffc8000", + "0x480280087ffc8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffac2", + "0x20680017fff7ffd", + "0xb", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff67fff8000", + "0x48127ff67fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe65e", + "0x20680017fff7ffd", + "0x51", + "0x20680017fff7fff", + "0x40", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x1104800180018000", + "0x401", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x2a", + "0x48127ffa7fff8000", + "0x48127ffb7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffead9", + "0x20680017fff7ffd", + "0x1b", + "0x48127fdb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x56d", + "0x20680017fff7ffd", + "0x8", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x10780017fff7fff", + "0x21", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127fdb7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe627", + "0x20680017fff7ffd", + "0x34", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x578", + "0x40137ffb7fff8000", + "0x20680017fff7ffd", + "0x20", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffc7fff8000", + "0x48127fce7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x5a8", + "0x20680017fff7ffd", + "0xd", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a80007fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ffb", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0xa0680017fff8004", + "0xe", + "0x4825800180047ffd", + "0x800000000000000000000000000000000000000000000000000000000000000", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8002", + "0x480280007ffc7ffc", + "0x480280017ffc7ffc", + "0x402480017ffb7ffd", + "0xffffffffffffffeeffffffffffffffff", + "0x400280027ffc7ffd", + "0x10780017fff7fff", + "0x13", + "0x484480017fff8001", + "0x8000000000000000000000000000000", + "0x48317fff80007ffd", + "0x480280007ffc7ffd", + "0x480280017ffc7ffd", + "0x402480017ffc7ffe", + "0xf8000000000000000000000000000000", + "0x400280027ffc7ffe", + "0x40780017fff7fff", + "0x1", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x0", + "0x480a7ffd7fff8000", + "0x10780017fff7fff", + "0x8", + "0x482680017ffc8000", + "0x3", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ff97fff", + "0x400380017ff97ff8", + "0x400380027ff97ffa", + "0x400380037ff97ffb", + "0x400380047ff97ffc", + "0x480280067ff98000", + "0x20680017fff7fff", + "0x21", + "0x480280057ff98000", + "0x482680017ffb8000", + "0x1", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280077ff97fff", + "0x400280087ff97ffd", + "0x400380097ff97ffa", + "0x4002800a7ff97ffe", + "0x4003800b7ff97ffd", + "0x4802800d7ff98000", + "0x20680017fff7fff", + "0xc", + "0x4802800c7ff98000", + "0x482680017ff98000", + "0xe", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x4802800c7ff98000", + "0x482680017ff98000", + "0x10", + "0x480680017fff8000", + "0x1", + "0x4802800e7ff98000", + "0x4802800f7ff98000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x4", + "0x480280057ff98000", + "0x482680017ff98000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ff98000", + "0x480280087ff98000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x19", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x36", + "0x40780017fff7fff", + "0x1", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffa7fff8000", + "0x480080007ff68000", + "0x1104800180018000", + "0x546", + "0x20680017fff7ffa", + "0x1c", + "0x20680017fff7ffd", + "0xd", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe538", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x208b7fff7fff7ffe", + "0x20780017fff7ff8", + "0x20", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe52d", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x1104800180018000", + "0x563", + "0x20680017fff7ffd", + "0x8", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x10780017fff7fff", + "0x17", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe50f", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x1104800180018000", + "0x567", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0x595", + "0x482480017fff8000", + "0x594", + "0x480080007fff8000", + "0x480080037fff8000", + "0x482480017fff8000", + "0xdf2", + "0xa0680017fff8000", + "0x8", + "0x48317ffe80007ff6", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff57fff", + "0x10780017fff7fff", + "0xc2", + "0x48317ffe80007ff6", + "0x400280007ff57fff", + "0x482680017ff58000", + "0x1", + "0x48297ffc80007ffd", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482680017ffc8000", + "0x1", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffc7fff8000", + "0x10780017fff7fff", + "0x8", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x85", + "0x480080007ffd8000", + "0x48307ffd80007ffe", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0xa", + "0x482480017ffc8000", + "0x1", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x10780017fff7fff", + "0x8", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x20680017fff7ffc", + "0x4b", + "0x480080007ffd8000", + "0x48327ff77ff98000", + "0x48327ffe7ffa8000", + "0x400280007ff77ffe", + "0x400280017ff77fff", + "0x400380027ff77ffb", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x480280047ff78000", + "0x480280057ff78000", + "0xa0680017fff8000", + "0x9", + "0x4824800180007fe7", + "0xb36", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007fe67fff", + "0x10780017fff7fff", + "0x26", + "0x4824800180007fe7", + "0xb36", + "0x400080007fe77fff", + "0x482480017fe78000", + "0x1", + "0x48127ffe7fff8000", + "0x48127ff87fff8000", + "0x480a7ff87fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127fee7fff8000", + "0x48127fee7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffff9d", + "0x20680017fff7ffc", + "0xb", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482480017fe48000", + "0x1", + "0x48127fe27fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x1", + "0x48327ff77ff98000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x20680017fff7ffc", + "0xc", + "0x482480017ffd8000", + "0x1", + "0x400280007ff77fff", + "0x400280017ff77ffd", + "0x400280027ff77ffe", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x10780017fff7fff", + "0xa", + "0x482480017ffe8000", + "0x1", + "0x400280007ff77ffc", + "0x400280017ff77fff", + "0x400280027ff77ffe", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x48127fe97fff8000", + "0x48127fe77fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x0", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x20680017fff7ffc", + "0xc", + "0x482480017ffd8000", + "0x1", + "0x400280007ff77fff", + "0x400280017ff77ffd", + "0x400280027ff77ffe", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x10780017fff7fff", + "0xa", + "0x482480017ffe8000", + "0x1", + "0x400280007ff77ffc", + "0x400280017ff77fff", + "0x400280027ff77ffe", + "0x482680017ff78000", + "0x6", + "0x480280037ff78000", + "0x48127ff17fff8000", + "0x48127fef7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff37fff8000", + "0x48127ff37fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff58000", + "0x1", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x2a31bbb25d4dfa03fe73a91cbbab880b7c9cc4461880193ae5819ca6bbfe7cc", + "0x400280007ffc7fff", + "0x400380017ffc7ffd", + "0x480280027ffc8000", + "0xa0680017fff8005", + "0xe", + "0x4824800180057ffe", + "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00", + "0x484480017ffe8000", + "0x110000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffc", + "0x480280017ffb7ffc", + "0x482480017ffb7ffd", + "0xffffffffffffffeefffffffffffffeff", + "0x400280027ffb7ffc", + "0x10780017fff7fff", + "0x11", + "0x48127ffe7fff8005", + "0x484480017ffe8000", + "0x8000000000000000000000000000000", + "0x48307ffe7fff8003", + "0x480280007ffb7ffd", + "0x482480017ffc7ffe", + "0xf0000000000000000000000000000100", + "0x480280017ffb7ffd", + "0x400280027ffb7ff9", + "0x402480017ffd7ff9", + "0xffffffffffffffffffffffffffffffff", + "0x20680017fff7ffd", + "0x4", + "0x402780017fff7fff", + "0x1", + "0x482680017ffb8000", + "0x3", + "0x482680017ffc8000", + "0x3", + "0x48127ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x451", + "0x480a7ff77fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x44c", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe5b4", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff67fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x43c", + "0x480a7ff77fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x437", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe59f", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff27fff8000", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff546", + "0x20680017fff7ffd", + "0xb", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff27fff8000", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff524", + "0x20680017fff7ffd", + "0xb", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff27fff8000", + "0x480a7ff37fff8000", + "0x480a7ff47fff8000", + "0x480a7ff57fff8000", + "0x480a7ff67fff8000", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff502", + "0x20680017fff7ffd", + "0xb", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffe28", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe358", + "0x480a7ff87fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x3b2", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x3ad", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe344", + "0x480a7ff87fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x39e", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x399", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe330", + "0x480a7ff87fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe32b", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe326", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x37b", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x376", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x36c", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x367", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x35d", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x358", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x34e", + "0x480a7ff97fff8000", + "0x48127ffd7fff8000", + "0x48127ffd7fff8000", + "0x1104800180018000", + "0x349", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe729", + "0x20680017fff7ffd", + "0x35", + "0x480a7ff97fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ff97fff8000", + "0x480a7ffd7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe28f", + "0x20680017fff7ffd", + "0x20", + "0x20680017fff7fff", + "0x11", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x43414c4c45525f49535f4d495353494e475f524f4c45", + "0x400080007ffe7fff", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x2", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff77fff8000", + "0x48127ff77fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x4b", + "0x480a7ff97fff8000", + "0x48127faf7fff8000", + "0x480a7ffb7fff8000", + "0x48127fae7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127fae7fff8000", + "0x48127fae7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff77fff8000", + "0x480a7ff97fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff7a9", + "0x20780017fff7ffd", + "0x6", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffa7fff", + "0x400380017ffa7ff8", + "0x400280027ffa7ffe", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x480280067ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffa8000", + "0x482680017ffa8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffa8000", + "0x482680017ffa8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffa8000", + "0x480280087ffa8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff66b", + "0x20680017fff7ffd", + "0xd", + "0x48127fef7fff8000", + "0x48127ff57fff8000", + "0x48127fee7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fef7fff8000", + "0x48127ff57fff8000", + "0x48127fee7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x2b7", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff4da", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffa7fff", + "0x400280017ffa7ff5", + "0x400280027ffa7ffb", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x400280057ffa7ffe", + "0x480280077ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffa8000", + "0x480280097ffa8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff618", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x53746f7261676552656164", + "0x400280007ffb7fff", + "0x400380017ffb7ffa", + "0x400380027ffb7ffc", + "0x400380037ffb7ffd", + "0x480280057ffb8000", + "0x20680017fff7fff", + "0x28", + "0x480a7ff97fff8000", + "0x480280067ffb8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe610", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x7", + "0x20680017fff7ffc", + "0xf", + "0x40780017fff7fff", + "0x2", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff57fff8000", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x53746f726555313238202d206e6f6e2075313238", + "0x400080007ffe7fff", + "0x48127ff97fff8000", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x482480017ff88000", + "0x1", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x11", + "0x480a7ff97fff8000", + "0x480280047ffb8000", + "0x482680017ffb8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x1", + "0x480280067ffb8000", + "0x480280077ffb8000", + "0x208b7fff7fff7ffe", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x22f", + "0x20680017fff7fff", + "0x8", + "0x40780017fff7fff", + "0x5", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x6", + "0x480a7ffb7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x223", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x17", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x482a7ffd7ffb8001", + "0xa0680017fff7fff", + "0x7", + "0x4824800180007fff", + "0x100000000000000000000000000000000", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0xc", + "0x400280007ff97fff", + "0x40780017fff7fff", + "0x1", + "0x482680017ff98000", + "0x1", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x7", + "0x482680017ff98000", + "0x1", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x1", + "0x482a7ffc7ffa8001", + "0xa0680017fff7fff", + "0x7", + "0x4824800180007fff", + "0x100000000000000000000000000000000", + "0x400080007ffa7fff", + "0x10780017fff7fff", + "0xc", + "0x400080007ffb7fff", + "0x40780017fff7fff", + "0x5", + "0x482480017ff68000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x10780017fff7fff", + "0x1c", + "0x480680017fff8000", + "0x1", + "0x48307fff7ffa8001", + "0xa0680017fff7fff", + "0x7", + "0x4824800180007fff", + "0x100000000000000000000000000000000", + "0x400080017ff67fff", + "0x10780017fff7fff", + "0xc", + "0x400080017ff77fff", + "0x40780017fff7fff", + "0x1", + "0x482480017ff68000", + "0x2", + "0x48127ffa7fff8000", + "0x48127ffc7fff8000", + "0x48127ff57fff8000", + "0x10780017fff7fff", + "0x8", + "0x482480017ff68000", + "0x2", + "0x48127ffa7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x48297ffd80017ffb", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff97fff", + "0x10780017fff7fff", + "0xc", + "0x400280007ff97fff", + "0x40780017fff7fff", + "0x1", + "0x482680017ff98000", + "0x1", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x7", + "0x482680017ff98000", + "0x1", + "0x48127ffe7fff8000", + "0x480680017fff8000", + "0x1", + "0x48297ffc80017ffa", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080007ffa7fff", + "0x10780017fff7fff", + "0xc", + "0x400080007ffb7fff", + "0x40780017fff7fff", + "0x5", + "0x482480017ff68000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x10780017fff7fff", + "0x1c", + "0x480680017fff8000", + "0x1", + "0x48307fff80017ffa", + "0xa0680017fff7fff", + "0x7", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400080017ff67fff", + "0x10780017fff7fff", + "0xc", + "0x400080017ff77fff", + "0x40780017fff7fff", + "0x1", + "0x482480017ff68000", + "0x2", + "0x48127ffa7fff8000", + "0x48127ffc7fff8000", + "0x48127ff57fff8000", + "0x10780017fff7fff", + "0x8", + "0x482480017ff68000", + "0x2", + "0x48127ffa7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x196", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff3a1", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffa7fff", + "0x400280017ffa7ff5", + "0x400280027ffa7ffb", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x400280057ffa7ffe", + "0x480280077ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffa8000", + "0x480280097ffa8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff4df", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffc7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff637", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x53746f726167655772697465", + "0x400280007ffb7fff", + "0x400380017ffb7ff9", + "0x400280027ffb7ffe", + "0x400280037ffb7ffd", + "0x400380047ffb7ffd", + "0x480280067ffb8000", + "0x20680017fff7fff", + "0xd", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x7", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280057ffb8000", + "0x482680017ffb8000", + "0x9", + "0x480680017fff8000", + "0x1", + "0x480280077ffb8000", + "0x480280087ffb8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff49e", + "0x20680017fff7ffd", + "0xd", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127ff57fff8000", + "0x48127fef7fff8000", + "0x48127ff47fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x10e", + "0x40780017fff7fff", + "0x1", + "0x40780017fff7fff", + "0x1", + "0x480a7ff87fff8000", + "0x480a7ff97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x48127ff47fff8000", + "0x48127ff47fff8000", + "0x48127ff37fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff30d", + "0x20680017fff7ffb", + "0x39", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x48127ffc7fff8000", + "0x480680017fff8000", + "0x456d69744576656e74", + "0x400280007ffa7fff", + "0x400280017ffa7ff5", + "0x400280027ffa7ffb", + "0x400280037ffa7ffc", + "0x400280047ffa7ffd", + "0x400280057ffa7ffe", + "0x480280077ffa8000", + "0x20680017fff7fff", + "0xd", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0x8", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x9", + "0x480280067ffa8000", + "0x482680017ffa8000", + "0xa", + "0x480680017fff8000", + "0x1", + "0x480280087ffa8000", + "0x480280097ffa8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffff44b", + "0x20680017fff7ffd", + "0xc", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x48127fe97fff8000", + "0x48127ff57fff8000", + "0x48127ff57fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x208b7fff7fff7ffe", + "0x1104800180018000", + "0xc4", + "0x482480017fff8000", + "0xc3", + "0x480080007fff8000", + "0xa0680017fff8000", + "0x9", + "0x4825800180007ff8", + "0x12a2", + "0x482480017fff8000", + "0x100000000000000000000000000000000", + "0x400280007ff77fff", + "0x10780017fff7fff", + "0x4c", + "0x4825800180007ff8", + "0x12a2", + "0x400280007ff77fff", + "0x482680017ff78000", + "0x1", + "0x20780017fff7ffd", + "0xd", + "0x48127fff7fff8000", + "0x48127ffd7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffa7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffdf9f", + "0x20680017fff7ffe", + "0x27", + "0x400280007ffc7fff", + "0x48127ff07fff8000", + "0x48127fee7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x480a7ffb7fff8000", + "0x482680017ffc8000", + "0x1", + "0x4825800180007ffd", + "0x1", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffffd1", + "0x20680017fff7ffa", + "0xc", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x48127ff87fff8000", + "0x208b7fff7fff7ffe", + "0x48127ff07fff8000", + "0x48127fee7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ff97fff8000", + "0x48127ff97fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x208b7fff7fff7ffe", + "0x40780017fff7fff", + "0x1", + "0x480680017fff8000", + "0x4f7574206f6620676173", + "0x400080007ffe7fff", + "0x482680017ff78000", + "0x1", + "0x480a7ff87fff8000", + "0x480680017fff8000", + "0x1", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x48127ff87fff8000", + "0x482480017ff78000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480a7ff97fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010fffffffffffffffffffffffffffffffffffffffffffffa84", + "0x480a7ff77fff8000", + "0x480a7ff87fff8000", + "0x480a7ffa7fff8000", + "0x480a7ffb7fff8000", + "0x48127ffa7fff8000", + "0x48127ffa7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffe9ea", + "0x20680017fff7ffd", + "0x9", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x0", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x480680017fff8000", + "0x1", + "0x48127ffb7fff8000", + "0x48127ffb7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x1104800180018000", + "0x800000000000010ffffffffffffffffffffffffffffffffffffffffffffdf9e", + "0x48127ffe7fff8000", + "0x48127ffe7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0xb", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x48297ffd80007ffc", + "0x20680017fff7fff", + "0x4", + "0x10780017fff7fff", + "0x6", + "0x480680017fff8000", + "0x0", + "0x10780017fff7fff", + "0x4", + "0x480680017fff8000", + "0x1", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0xd", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe", + "0x480680017fff8000", + "0x9", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480680017fff8000", + "0x0", + "0x480a7ffb7fff8000", + "0x480a7ffc7fff8000", + "0x480a7ffd7fff8000", + "0x208b7fff7fff7ffe" + ], + "hints": [ + [ + 0, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x32ec4" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 32, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 57, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -93 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 79, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 99, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 115, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 130, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 145, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 161, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x32ec4" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 193, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 218, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -93 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 240, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 260, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 276, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 291, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 306, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 322, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x33568" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 354, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 379, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -93 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 401, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 421, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 437, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 452, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 467, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 483, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x33568" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 515, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 540, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -93 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 562, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 582, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 598, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 613, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 628, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 644, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x2936" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 663, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 682, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 702, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 722, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 737, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 752, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0xf2ee" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 780, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 804, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -19 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 830, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 854, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 871, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 897, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 914, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x344f4" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 942, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 968, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -20 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 994, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1016, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1033, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1059, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1076, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x35cd2" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1104, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1130, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -20 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1156, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1178, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1195, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1221, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1238, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x5bad6" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1266, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1292, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -20 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1318, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1340, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1357, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1383, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1400, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4d30" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1432, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1457, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -57 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1478, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1503, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1519, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1534, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1549, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1565, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x3232" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1590, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1613, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -25 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1633, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1658, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1674, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1689, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1705, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4b3c" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1730, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1755, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1775, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1800, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1816, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1831, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1847, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4b3c" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1872, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1897, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1917, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1942, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1958, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1973, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 1989, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x3492c" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2014, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2039, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2059, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2079, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2095, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2110, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2126, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x345a8" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2151, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2176, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2196, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2216, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2232, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2247, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2263, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x3492c" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2288, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2313, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2333, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2353, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2369, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2384, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2400, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x345a8" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2425, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2450, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -41 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2470, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2490, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2506, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2521, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2537, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x1c156" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2562, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2587, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -26 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2607, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2627, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2643, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2658, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2674, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x1d10" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2693, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2712, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2732, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2755, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2770, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2785, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x1d10" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2804, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2823, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2843, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2866, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2881, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2896, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x2936" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2915, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2934, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2954, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2974, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 2989, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3004, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x67c0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3023, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3042, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3062, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3086, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3101, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3116, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x8458" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3141, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3164, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -40 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3184, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3210, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3226, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3241, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3257, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x9722" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3289, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3314, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -72 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3335, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3361, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3377, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3392, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3407, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3423, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x30c00" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3455, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3480, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -93 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3502, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3527, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3543, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3558, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3573, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3589, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4defe" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3628, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3653, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -124 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3676, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3701, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3717, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3732, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3747, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3762, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3778, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x15f5e" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3810, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3835, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -93 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3857, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3882, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3898, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3913, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3928, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3944, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x2021a" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 3976, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4001, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -93 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4023, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4048, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4064, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4079, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4094, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4110, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x2021a" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4142, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4167, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -93 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4189, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4214, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4230, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4245, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4260, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4276, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x67c0" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4295, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4314, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x0" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4334, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4358, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4373, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4388, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x8458" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4413, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4436, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -40 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4456, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4482, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4498, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4513, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4529, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x4defe" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4568, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4593, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -124 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4616, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4641, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4657, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4672, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4687, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4702, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4718, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x2021a" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4750, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4775, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -93 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4797, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4822, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4838, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4853, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4868, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4884, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x2021a" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4916, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4941, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -93 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4963, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 4988, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5004, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5019, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5034, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5050, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x7e6f8" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5165, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5190, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -226 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5218, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5238, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5260, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5275, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5290, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5305, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5320, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5341, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5356, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5371, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5386, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5408, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 5412, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 5422, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5608, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 5688, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6338, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6411, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6428, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": 10 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": 9 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 6437, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": 9 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 6486, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6510, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": 6 + } + } + } + } + ] + ], + [ + 6536, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6570, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "AP", + "offset": -2 + } + } + } + } + ] + ], + [ + 6665, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6711, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 6728, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7215, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7755, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x100" + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7759, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "scalar": { + "Immediate": "0x8000000000000110000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": 0 + }, + "y": { + "register": "AP", + "offset": 1 + } + } + } + ] + ], + [ + 7793, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7797, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "scalar": { + "Immediate": "0x8000000000000110000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": 0 + }, + "y": { + "register": "AP", + "offset": 1 + } + } + } + ] + ], + [ + 7866, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7960, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 7962, + [ + { + "DivMod": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "quotient": { + "register": "AP", + "offset": 3 + }, + "remainder": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 8082, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8254, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8460, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 8464, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 8474, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8711, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8830, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 8901, + [ + { + "TestLessThan": { + "lhs": { + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -4 + }, + "b": { + "Deref": { + "register": "FP", + "offset": -3 + } + } + } + }, + "rhs": { + "Immediate": "0x10000000000000000" + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9062, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9064, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9095, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -9 + } + } + } + } + ] + ], + [ + 9154, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9156, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9187, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -9 + } + } + } + } + ] + ], + [ + 9320, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9322, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9353, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -9 + } + } + } + } + ] + ], + [ + 9431, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9433, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9464, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 9591, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 9663, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9877, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 9911, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -3 + } + } + } + } + ] + ], + [ + 9960, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -3 + } + } + } + } + ] + ], + [ + 10208, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 10238, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 10503, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 10533, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 10618, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 10647, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 10725, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 10795, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 10883, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 10918, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 10963, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -3 + } + } + } + } + ] + ], + [ + 11008, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 11033, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11149, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11151, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11182, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -7 + } + } + } + } + ] + ], + [ + 11239, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 11264, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11466, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 11470, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 11481, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 11532, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 11555, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 11614, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 12153, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 12213, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x1112" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -7 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12287, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12309, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 12313, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 12324, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 12350, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 12405, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 12409, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 12420, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 12528, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12530, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12561, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -10 + } + } + } + } + ] + ], + [ + 12784, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 12809, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12870, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "AP", + "offset": -7 + } + } + } + } + ] + ], + [ + 12894, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 12964, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 12968, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 12979, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 13007, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 13011, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 13022, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 13094, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13096, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13127, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -7 + } + } + } + } + ] + ], + [ + 13241, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 13293, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 13345, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -4 + } + } + } + } + ] + ], + [ + 13569, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Immediate": "0x800000000000000000000000000000000000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": 4 + } + } + } + ] + ], + [ + 13573, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 3 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 13583, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -1 + }, + "y": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13614, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -7 + } + } + } + } + ] + ], + [ + 13627, + [ + { + "SystemCall": { + "system": { + "BinOp": { + "op": "Add", + "a": { + "register": "FP", + "offset": -7 + }, + "b": { + "Immediate": "0x7" + } + } + } + } + } + ] + ], + [ + 13692, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13826, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -10 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13896, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0xb36" + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -24 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 13941, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14026, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14048, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -1 + } + }, + "rhs": { + "Immediate": "0x7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00" + }, + "dst": { + "register": "AP", + "offset": 5 + } + } + } + ] + ], + [ + 14052, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x110000000000000000" + }, + "max_x": { + "Immediate": "0xffffffffffffffffffffffffffffffff" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 14063, + [ + { + "LinearSplit": { + "value": { + "Deref": { + "register": "AP", + "offset": 4 + } + }, + "scalar": { + "Immediate": "0x8000000000000000000000000000000" + }, + "max_x": { + "Immediate": "0xfffffffffffffffffffffffffffffffe" + }, + "x": { + "register": "AP", + "offset": -2 + }, + "y": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 14375, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14456, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 14506, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14508, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14539, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 14596, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 14621, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14679, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 14702, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 14722, + [ + { + "TestLessThan": { + "lhs": { + "Deref": { + "register": "AP", + "offset": 0 + } + }, + "rhs": { + "Immediate": "0x100000000000000000000000000000000" + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 14747, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -3 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -5 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 14770, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "FP", + "offset": -4 + } + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -6 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 14790, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Deref": { + "register": "AP", + "offset": -2 + } + }, + "rhs": { + "Deref": { + "register": "AP", + "offset": -7 + } + }, + "dst": { + "register": "AP", + "offset": -1 + } + } + } + ] + ], + [ + 14819, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14821, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14852, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 14917, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -5 + } + } + } + } + ] + ], + [ + 14967, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 14969, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 15000, + [ + { + "SystemCall": { + "system": { + "Deref": { + "register": "FP", + "offset": -6 + } + } + } + } + ] + ], + [ + 15056, + [ + { + "TestLessThanOrEqual": { + "lhs": { + "Immediate": "0x12a2" + }, + "rhs": { + "Deref": { + "register": "FP", + "offset": -8 + } + }, + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ], + [ + 15139, + [ + { + "AllocSegment": { + "dst": { + "register": "AP", + "offset": 0 + } + } + } + ] + ] + ], + "entry_points_by_type": { + "EXTERNAL": [ + { + "selector": "0xb2ef42a25c95687d1a3e7c2584885fd4058d102e05c44f65cf35988451bc8", + "offset": 2400, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0xc30ffbeb949d3447fd4acd61251803e8ab9c8a777318abb5bd5fbf28015eb", + "offset": 1238, + "builtins": ["pedersen", "range_check", "poseidon"] + }, + { + "selector": "0x151e58b29179122a728eab07c8847e5baf5802379c5db3a7d57a8263a7bd1d", + "offset": 322, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x41b033f4a31df8067c24d1e9b550a2ce75fd4a29e1147af9752174f0e6cb20", + "offset": 4529, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x4c4fb1ab068f6039d5780c68dd0fa2f8742cceb3426d19667778ca7f3518a9", + "offset": 2896, + "builtins": ["range_check"] + }, + { + "selector": "0x80aa9fdbfaf9615e4afc7f5f722e265daca5ccc655360fa5ccacf9c267936d", + "offset": 4276, + "builtins": ["range_check"] + }, + { + "selector": "0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e", + "offset": 3423, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x95604234097c6fe6314943092b1aa8fb6ee781cf32ac6d5b78d856f52a540f", + "offset": 2537, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0xd63a78e4cd7fb4c41bc18d089154af78d400a5e837f270baea6cf8db18c8dd", + "offset": 483, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x1557182e4359a1f0c6301278e8f5b35a776ab58d39892581e357578fb287836", + "offset": 3004, + "builtins": ["range_check"] + }, + { + "selector": "0x16cc063b8338363cf388ce7fe1df408bf10f16cd51635d392e21d852fafb683", + "offset": 4718, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x183420eb7aafd9caad318b543d9252c94857340f4768ac83cf4b6472f0bf515", + "offset": 1989, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x1aaf3e6107dd1349c81543ff4221a326814f77dadcc5810807b74f1a49ded4e", + "offset": 4884, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x1c67057e2995950900dbf33db0f5fc9904f5a18aae4a3768f721c43efe5d288", + "offset": 0, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x1d13ab0a76d7407b1d5faccd4b3d8a9efe42f3d3c21766431d4fafb30f45bd4", + "offset": 3944, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x1e888a1026b19c8c0b57c72d63ed1737106aa10034105b980ba117bd0c29fe1", + "offset": 3257, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x1fa400a40ac35b4aa2c5383c3bb89afee2a9698b86ebb405cf25a6e63428605", + "offset": 752, + "builtins": ["pedersen", "range_check", "poseidon"] + }, + { + "selector": "0x216b05c387bab9ac31918a3e61672f4618601f3c598a2f3f2710f37053e1ea4", + "offset": 2785, + "builtins": ["range_check"] + }, + { + "selector": "0x219209e083275171774dab1df80982e9df2096516f06319c5c6d71ae0a8480c", + "offset": 3778, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x225faa998b63ad3d277e950e8091f07d28a4c45ef6de7f3f7095e89be92d701", + "offset": 2126, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x24643b0aa4f24549ae7cd884195db7950c3a79a96cb7f37bde40549723559d9", + "offset": 2263, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x25a5317fee78a3601253266ed250be22974a6b6eb116c875a2596585df6a400", + "offset": 1705, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x284a2f635301a0bf3a171bb8e4292667c6c70d23d48b0ae8ec4df336e84bccd", + "offset": 644, + "builtins": ["range_check"] + }, + { + "selector": "0x2e4263afad30923c891518314c3c95dbe830a16874e8abc5777a9a20b54c76e", + "offset": 4388, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x302e0454f48778e0ca3a2e714a289c4e8d8e03d614b370130abb1a524a47f22", + "offset": 1565, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x30559321b47d576b645ed7bd24089943dd5fd3a359ecdd6fa8f05c1bab67d6b", + "offset": 1400, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x338dd2002b6f7ac6471742691de72611381e3fc4ce2b0361c29d42cb2d53a90", + "offset": 1076, + "builtins": ["pedersen", "range_check", "poseidon"] + }, + { + "selector": "0x33fe3600cdfaa48261a8c268c66363562da383d5dd26837ba63b66ebbc04e3c", + "offset": 914, + "builtins": ["pedersen", "range_check", "poseidon"] + }, + { + "selector": "0x35a73cd311a05d46deda634c5ee045db92f811b4e74bca4437fcb5302b7af33", + "offset": 3116, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x361458367e696363fbcc70777d07ebbd2394e89fd0adcaf147faccd1d294d60", + "offset": 2674, + "builtins": ["range_check"] + }, + { + "selector": "0x3704ffe8fba161be0e994951751a5033b1462b918ff785c0a636be718dfdb68", + "offset": 3589, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x37791de85f8a3be5014988a652f6cf025858f3532706c18f8cf24f2f81800d5", + "offset": 1847, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x3a07502a2e0e18ad6178ca530615148b9892d000199dbb29e402c41913c3d1a", + "offset": 161, + "builtins": ["pedersen", "range_check"] + }, + { + "selector": "0x3b076186c19fe96221e4dfacd40c519f612eae02e0555e4e115a2a6cf2f1c1f", + "offset": 4110, + "builtins": ["pedersen", "range_check"] + } + ], + "L1_HANDLER": [], + "CONSTRUCTOR": [ + { + "selector": "0x28ffe4ff0f226a9107253e17a904099aa4f63a02a5621de0576e5aa71bc5194", + "offset": 5050, + "builtins": ["pedersen", "range_check"] + } + ] + } +} diff --git a/scripts/artifacts/starknet/new_eth_token.sierra.json b/scripts/artifacts/starknet/new_eth_token.sierra.json new file mode 100644 index 000000000..5bd446e94 --- /dev/null +++ b/scripts/artifacts/starknet/new_eth_token.sierra.json @@ -0,0 +1,8996 @@ +{ + "sierra_program": [ + "0x1", + "0x3", + "0x0", + "0x2", + "0x3", + "0x0", + "0x7f7", + "0x9", + "0xb3", + "0x52616e6765436865636b", + "0x800000000000000100000000000000000000000000000000", + "0x75313238", + "0x800000000000000700000000000000000000000000000000", + "0x537472756374", + "0x800000000000000f00000000000000000000000000000001", + "0x0", + "0x2ee1e2b1b89f8c495f200e4956278a4d47395fe262f27b52e5865c9524c08c3", + "0x456e756d", + "0x800000000000000700000000000000000000000000000003", + "0x3288d594b9a45d15bb2fcb7903f06cdb06b27f0ba88186ec4cfaa98307cb972", + "0x1", + "0x2", + "0x3", + "0x66656c74323532", + "0x800000000000000700000000000000000000000000000005", + "0x10a4ad544c3e0608b1a9e1ff69b5fdc230bace25740547273d3877854c8b722", + "0x5", + "0x4172726179", + "0x800000000000000300000000000000000000000000000001", + "0x800000000000000300000000000000000000000000000003", + "0x17b6ecc31946835b0d9d92c2dd7a9c14f29af0371571ae74a1b228828b2242", + "0x7", + "0x536e617073686f74", + "0x800000000000000700000000000000000000000000000001", + "0x800000000000000700000000000000000000000000000002", + "0x1baeba72e79e9db2587cf44fedb2f3700b2075a5e8e39a562584862c4b71f62", + "0x9", + "0xa", + "0x8", + "0x16a4c8d7c05909052238a862d8cc3e7975bf05a07b3a69c6b28951083a6d672", + "0xc", + "0x34f9bd7c6cb2dd4263175964ad75f1ff1461ddc332fbfb274e0fb2a5d7ab968", + "0xb", + "0xd", + "0x1cf766d73a180f73921a559ee5228e9a0937d67025357cc9dab5d5deeb8d512", + "0x800000000000000f00000000000000000000000000000003", + "0xf", + "0x79a9b0bb2e916943f942cb7635308bc1fcb5699368eb477a0aecfdf2623518", + "0x10", + "0x25e2ca4b84968c2d8b83ef476ca8549410346b00836ce79beaf538155990bb2", + "0x12", + "0x2cf4ead4392e987c9b56754a10f0a8e0f13776791e096fa6503893f05582c51", + "0x800000000000000300000000000000000000000000000002", + "0x14", + "0x35db377e57ca049334bdd283ee9a74d991b437ea21f0760006234ec7e529d20", + "0x15", + "0x14f2fdf89ed1b03332e790c23a7bf2718b2bf5e89a3842b6bf529675c54eb30", + "0x17", + "0x2000351fca203c52b0390e6a870b136a15f594794cbcbe2c200037f4205aba", + "0x18", + "0x800000000000000700000000000000000000000000000004", + "0x384c2e98e3af0acf314102dc8ebe9011cefe220e3f77edc819db2a94915b72f", + "0x436f6e747261637441646472657373", + "0x2ba68e64706519b3231e99b4d3007f1c776142d93afafaa0b53549870381466", + "0x1b", + "0x30f406b1d8bc98143cf38cf66d9152a9ad605c5cc90a602d7460776ec6718ed", + "0x1166fe35572d4e7764dac0caf1fd7fc591901fd01156db2561a07b68ab8dca2", + "0x2a594b95e3522276fe0ac7ac7a7e4ad8c47eaa6223bc0fd6991aa683b7ee495", + "0x1f", + "0x1d49f7a4b277bf7b55a2664ce8cef5d6922b5ffb806b89644b9e0cdbbcac378", + "0x22", + "0x13fdd7105045794a99550ae1c4ac13faa62610dfab62c16422bfcf5803baa6e", + "0x23", + "0x426f78", + "0x65", + "0x2c7badf5cd070e89531ef781330a9554b04ce4ea21304b67a30ac3d43df84a2", + "0x25", + "0x254224f7194c5fb71fa437db45d0c2987a523cc70eb8e03a50128fd059ae1cd", + "0x27", + "0x2e44ebc03ff25d1b3e4c789da678e3ed123246aabb452ae45af491f93df063f", + "0x28", + "0x2ba8ba6faedff40e6a720c1a9f90361a63d5ff93704ec23c6ad76ae139392da", + "0x2a", + "0x2d61a683965837c023d62c10f7f5ce851c81ba7bf1d222031d9715e58d4ddfb", + "0x2b", + "0x20b292b6e073d7f22e3ffcfbd002c216016da288561860c4781f1afc2e56724", + "0x2d", + "0x30f9e9149c2ce03c1943087f8916b133fb01c7b4074522ff59833542f2ea78c", + "0x2e", + "0x37a96e0d8fce91f143b80d6a4f7366af8992f3ff17532a9bbf3712f3a2b9617", + "0xa0050db887b736fe2683f84c55d65b4a97473781ff0975f044af0201aa9bb3", + "0x31", + "0x1be7a3868993cd371063ffe555460ae553b33f0648b4034f02bb9ddef4e06ec", + "0x32", + "0xccf52bb0646785c5ad2a653e9ec60b68f9843823a0c386724530f0e305f2c4", + "0x34", + "0x34c208cc73eb75e315a7730284e475ee3050926253aba2fcbcbac0873ddbbc9", + "0x35", + "0x7538", + "0x3baae81d8b68311d843a3db861802028fc5b88bca4c37f5b121cabb0dfa12ac", + "0x37", + "0x38", + "0xe82f28be99fa1cbe00b18388da8bfdec908ee3097fda05d02792092433ad35", + "0x39", + "0x90d0203c41ad646d024845257a6eceb2f8b59b29ce7420dd518053d2edeedc", + "0x53746f7261676541646472657373", + "0x248e8fae2f16a35027771ffd74d6a6f3c379424b55843563a18f566bba3d905", + "0x29a28e88ec0d4ceb069112eb01e6671c88bf1f22d8662e033e49253d60d12fb", + "0x3e", + "0x2870eb097a5f5ed2ed4d17f1074915a5aab8934654690dacd6a9e2386242bc2", + "0x3f", + "0x800000000000000300000000000000000000000000000004", + "0x104eb68e98232f2362ae8fd62c9465a5910d805fa88b305d1f7721b8727f04", + "0x41", + "0x23c592a35bd46d8d27849f7163df88ecc6aeda4294cc1f604bf3429b22178dc", + "0x43", + "0x274281f52498f892a2d877aefca4c8293d41ca361ce9aa1ecd42a01459c2ada", + "0x44", + "0x18dd40e64a72e2731954b0a49ac969fc7cf43b08091a6405f6efa124f8e0ba", + "0x46", + "0x31a27316f0e0ba8518a01e4caba08035fd1dd45cc8a51b17d38f9c455c173", + "0x47", + "0x753634", + "0x2fffb69a24c0eccf3220a0a3685e1cefee1b1f63c6dcbe4030d1d50aa7a7b42", + "0x49", + "0x3808c701a5d13e100ab11b6c02f91f752ecae7e420d21b56c90ec0a475cc7e5", + "0x4b", + "0x4c", + "0xe688ac0888a7171e23d265a0ea68699a0ab1f7192e9651213e940c13b80319", + "0x4d", + "0x8d223e2f861f40c8e59a552d286b25ad43d4944c8215cd83f2af9dc8e75813", + "0x436c61737348617368", + "0x1f9a1062ac03e73c63c8574617d89a41e50eb3926ee6ff58d745aff3ed7ec3e", + "0x50", + "0x1eb8c2b265a8dd4f6f6ab20e681628834ae7a5c26760cd72fc69a3c4bb44dab", + "0x51", + "0x52", + "0x338e71126ef074ef225c267ff05d295b11567c37f9f3604f849bc5bbc246b33", + "0x53", + "0x3e4e624a497e446ce523f5b345c07be6fab07dbff47534532460e9a8288be43", + "0x55", + "0x30d30e6eadd27b4e77c337e27d6e8608be2759893a8fa0caea066e05b9afdc5", + "0x56", + "0x90496e631b9a7a500991c22f75f38cae04f020f34840d3be4f9daaf5eefcfe", + "0x2052ef6ecdb99da9095bcc290348075eadf229cf78f2e39d5249cd44ad29fb4", + "0x59", + "0x2ce69ed27bc3b11a5ffffd0154b10890e157833fdd6e749b90c3284d844291d", + "0x5a", + "0x243959c0703c2ef4fc0e5508b506c91771bcd04ab29374e35d7185feb8a6e64", + "0x5c", + "0xcddeeb5009a461a2431ee746d7b9faabf5a315599e5b1d2d5791a9e6feb37b", + "0x5d", + "0x25bafed1db971ec9d9883af3e1e08a185480f03f54ed88b3c1ffa951cde4037", + "0x5f", + "0x145068ba3432c23eddd89dd45fe638a782885652788ad82ad6690857df46db5", + "0x60", + "0x53746f726167654261736541646472657373", + "0x64", + "0x800000000000000700000000000000000000000000000008", + "0x2e655a7513158873ca2e5e659a9e175d23bf69a2325cdd0397ca3b8d864b967", + "0x800000000000000700000000000000000000000000000006", + "0x19367431bdedfe09ea99eed9ade3de00f195dd97087ed511b8942ebb45dbc5a", + "0x63", + "0x38f4af6e44b2e0a6ad228a4874672855e693db590abc7105a5a9819dbbf5ba6", + "0x66", + "0x2554813a25f8a506b049ddf7077cff4eebdc1c89b202b2617d185e99a5ce967", + "0x68", + "0x32ca04a1e9f4560dc55bb135c810987b50c30948b94ed18cf727b56367e9cad", + "0x69", + "0x3da6ab4781baef763e3680e1d4af22c54da676e20afb8100fff4d784b6f4565", + "0x6b", + "0x2c16720a24796cabe02b8063ba230c4ec34e70924cece909c733978012a2d8a", + "0x6c", + "0x1f0276ceff5f304ab767218fb2429b54172c97619edc12a91a021250db8a0b7", + "0x2373fd1de0b8d5ec68c0d52be7f26647290724ab4ec76a73eded043e8afe9ff", + "0x3669d262224f83a907cd80dcaa64fb9f032b637610e98e1d0b3a238e07e649f", + "0x1a8bf5d1a8e0851ea228a7ae8c8f441e6643a41506f11d60bb3054232e46b95", + "0x3bdb842447cc485dba916ec038afc2e5b4ae0014590b0453990ec44786aaec6", + "0x72", + "0xa678ae40fd2d13e2520a2beedaeef6c85548a5754c350c4e75f44a3c525faf", + "0x135aa353c4e9ebb36233f8f2703f5db3515fb70d807690fadd89b1cf5dc520", + "0x3d45f050e8f86640c1cd0e872be7e3dc76ed0eda574063d96a53b357e031c7", + "0x3f468b8e29e48ca204978f36d94fb2063e513df163f22a2fa47bc786b012b51", + "0x80000000000000070000000000000000000000000000000e", + "0x2b361d8131321c78f168b959c968d3a3b63759510d07267d944974d4df9003d", + "0x58", + "0x30", + "0x73", + "0x74", + "0x75", + "0x76", + "0x1d", + "0x1c", + "0x1a", + "0x77", + "0x71", + "0x70", + "0x6f", + "0x101dc0399934cc08fa0d6f6f2daead4e4a38cabeea1c743e1fc28d2d6e58e99", + "0x7a", + "0x161ee0e6962e56453b5d68e09d1cabe5633858c1ba3a7e73fee8c70867eced0", + "0x7c", + "0x74584e9f10ffb1a40aa5a3582e203f6758defc4a497d1a2d5a89f274a320e9", + "0x7e", + "0x800000000000000f0000000000000000000000000000000e", + "0x176801e1ed1f4e1ed92ff8473414ce8afa485028f1af91d47887b689f6450b3", + "0x556e696e697469616c697a6564", + "0x800000000000000a00000000000000000000000000000001", + "0x80", + "0x53797374656d", + "0x800000000000000200000000000000000000000000000001", + "0x82", + "0x800000000000000f00000000000000000000000000000002", + "0xcc5e86243f861d2d64b08c35db21013e773ac5cf10097946fe0011304886d5", + "0x85", + "0x87", + "0x506564657273656e", + "0x89", + "0x506f736569646f6e", + "0x8b", + "0x2d7b9ba5597ffc180f5bbd030da76b84ecf1e4f1311043a0a15295f29ccc1b0", + "0x10ac6c4f67d35926c92ed1ab5d9d4ea829204d1a1d17959320017075724351", + "0x8e", + "0x2818750775d9b3854858668772cca198f62185a4b470b9f675cfb70da36156d", + "0x8f", + "0x11771f2d3e7dc3ed5afe7eae405dfd127619490dec57ceaa021ac8bc2b9b315", + "0x4e6f6e5a65726f", + "0x3e1934b18d91949ab9afdbdd1866a30ccca06c2b1e6581582c6b27f8b4f6555", + "0x94", + "0x1909a2057b9c1373b889e003e050a09f431d8108e0659d03444ced99a6eea68", + "0x156b6b29ca961a0da2cfe5b86b7d70df78ddc905131c6ded2cd9024ceb26b4e", + "0x3b9ddf97bd58cc7301a2107c3eabad82196f38221c880cd3645d07c3aac1422", + "0x29d7d57c04a880978e7b3689f6218e507f3be17588744b58dc17762447ad0e7", + "0x99", + "0x2513cc0a6cd0c8c311383c4e6ee671d639e1b8244fe4cb7850f038870bc9bfa", + "0x9b", + "0x2ce4352eafa6073ab4ecf9445ae96214f99c2c33a29c01fcae68ba501d10e2c", + "0x9d", + "0x2360086d8de14207bc705f7c51c3fc6bb6de6b826f1a4576e4db739d8b5edaf", + "0x9f", + "0x10203be321c62a7bd4c060d69539c1fbe065baa9e253c74d2cc48be163e259", + "0xa1", + "0xa853c166304d20fb0711becf2cbdf482dee3cac4e9717d040b7a7ab1df7eec", + "0xa3", + "0x11c6d8087e00642489f92d2821ad6ebd6532ad1a3b6d12833da6d6810391511", + "0x188c31424ca3e90a81e1850a514ea86e69a51a7fb942da9a5a393c0917c9adb", + "0xa6", + "0x7b24f2ab8be536ba809156d60d6a2e8a906291e31b2728d5aec00cebaf0c92", + "0xa7", + "0x1ee471fea880cdb75aff7b143b1653e4803b9dca47f4fcdd349d11fec9d7a16", + "0x24936c1f4831d2a03e49d908b67c1aadfb60ebc4b653936c1591ff8f11161c5", + "0xab", + "0x4275696c74696e436f737473", + "0x9931c641b913035ae674b400b61a51476d506bbe8bba2ff8a6272790aba9e6", + "0xaa", + "0x753332", + "0x12867ecd09c884a5cf1f6d9eb0193b4695ce3bb3b2d796a8367d0c371f59cb2", + "0x3d37ad6eafb32512d2dd95a2917f6bf14858de22c27a1114392429f2e5c15d7", + "0x4761734275696c74696e", + "0x38b", + "0x7265766f6b655f61705f747261636b696e67", + "0x77697468647261775f676173", + "0x6272616e63685f616c69676e", + "0x73746f72655f74656d70", + "0x66756e6374696f6e5f63616c6c", + "0x656e756d5f6d61746368", + "0xb1", + "0x24", + "0xb0", + "0x7374727563745f6465636f6e737472756374", + "0x61727261795f6c656e", + "0x736e617073686f745f74616b65", + "0xaf", + "0x64726f70", + "0x7533325f636f6e7374", + "0x72656e616d65", + "0x7533325f6571", + "0x61727261795f6e6577", + "0x66656c743235325f636f6e7374", + "0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473", + "0x61727261795f617070656e64", + "0x7374727563745f636f6e737472756374", + "0x656e756d5f696e6974", + "0xae", + "0xb2", + "0x6765745f6275696c74696e5f636f737473", + "0xad", + "0x77697468647261775f6761735f616c6c", + "0xac", + "0x4f7574206f6620676173", + "0x4661696c656420746f20646573657269616c697a6520706172616d202332", + "0x4661696c656420746f20646573657269616c697a6520706172616d202331", + "0x26", + "0x29", + "0xa9", + "0x7536345f746f5f66656c74323532", + "0xa8", + "0x2c", + "0x2f", + "0xa5", + "0xa4", + "0xa2", + "0x33", + "0x36", + "0x3a", + "0x3b", + "0x3c", + "0x3d", + "0xa0", + "0x75385f746f5f66656c74323532", + "0x9e", + "0x40", + "0x42", + "0x9c", + "0x4661696c656420746f20646573657269616c697a6520706172616d202333", + "0x45", + "0x656e61626c655f61705f747261636b696e67", + "0x61727261795f736e617073686f745f706f705f66726f6e74", + "0x9a", + "0x6a756d70", + "0x756e626f78", + "0x98", + "0x48", + "0x97", + "0x64697361626c655f61705f747261636b696e67", + "0x4661696c656420746f20646573657269616c697a6520706172616d202338", + "0x4661696c656420746f20646573657269616c697a6520706172616d202337", + "0x4661696c656420746f20646573657269616c697a6520706172616d202336", + "0x4661696c656420746f20646573657269616c697a6520706172616d202335", + "0x4661696c656420746f20646573657269616c697a6520706172616d202334", + "0x21adb5788e32c84f69a1863d85ef9394b7bf761a0ce1190f826984e5075c371", + "0x4a", + "0x96", + "0x95", + "0x636f6e74726163745f616464726573735f746f5f66656c74323532", + "0x66656c743235325f737562", + "0x66656c743235325f69735f7a65726f", + "0x93", + "0x4d494e5445525f4f4e4c59", + "0x4e", + "0x4f", + "0x616c6c6f635f6c6f63616c", + "0x66696e616c697a655f6c6f63616c73", + "0x91", + "0x73746f72655f6c6f63616c", + "0x90", + "0x8d", + "0x92", + "0x54", + "0x86", + "0x57", + "0x7536345f636f6e7374", + "0x127500", + "0x647570", + "0x8a", + "0x8c", + "0x88", + "0x7536345f6571", + "0x5b", + "0x626f6f6c5f6e6f745f696d706c", + "0x84", + "0x81", + "0x83", + "0x46494e414c495a4544", + "0x554e4b4e4f574e5f494d504c454d454e544154494f4e", + "0x7536345f6f766572666c6f77696e675f737562", + "0x5e", + "0x61", + "0x7f", + "0x3ea3b9a8522d36784cb325f9c7e2ec3c9f3e6d63031a6c6b8743cc22412f604", + "0x6c6962726172795f63616c6c5f73797363616c6c", + "0x656e756d5f736e617073686f745f6d61746368", + "0x4549435f4c49425f43414c4c5f4641494c4544", + "0x7265706c6163655f636c6173735f73797363616c6c", + "0x5245504c4143455f434c4153535f484153485f4641494c4544", + "0x494d504c454d454e544154494f4e5f45585049524544", + "0x4e4f545f454e41424c45445f594554", + "0x79", + "0x62", + "0x3711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846", + "0x251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec228", + "0x78", + "0x474f565f41444d494e5f43414e4e4f545f53454c465f52454d4f5645", + "0x67", + "0x6a", + "0x753132385f746f5f66656c74323532", + "0x6e", + "0x6d", + "0x75385f7472795f66726f6d5f66656c74323532", + "0x7536345f7472795f66726f6d5f66656c74323532", + "0x494e56414c49445f4d494e5445525f41444452455353", + "0x75313238735f66726f6d5f66656c74323532", + "0x73746f726167655f626173655f616464726573735f636f6e7374", + "0x1390569bb0a3a722eb4228e8700301347da081211d5c2ded2db22ef389551ab", + "0x45524332303a206d696e7420746f2030", + "0x636f6e74726163745f616464726573735f636f6e7374", + "0x7b", + "0x45524332303a206275726e2066726f6d2030", + "0x3fc801c47df4de8d5835f8bfd4d0b8823ba63e5a3f278086901402d680abfc", + "0x7d", + "0x636c6173735f686173685f7472795f66726f6d5f66656c74323532", + "0x4f4e4c595f555047524144455f474f5645524e4f52", + "0x7536345f6f766572666c6f77696e675f616464", + "0x7536345f616464204f766572666c6f77", + "0x656d69745f6576656e745f73797363616c6c", + "0x7533325f746f5f66656c74323532", + "0x73746f726167655f616464726573735f66726f6d5f62617365", + "0x73746f726167655f726561645f73797363616c6c", + "0x494e56414c49445f4143434f554e545f41444452455353", + "0x4f4e4c595f53454c465f43414e5f52454e4f554e4345", + "0x341c1bdfd89f69748aa00b5742b03adbffd79b8e80cab5c50d91cd8c2a79be1", + "0xb6ce5410fca59d078ee9b2a4371a9d684c530d697c64fbef0ae6d5e8f0ac72", + "0x1f0d4aa99431d246bac9b8e48c33e888245b15e9678f64f9bdfc8823dc8f979", + "0x110e2f729c9c2b988559994a3daccd838cf52faf88e18101373e67dd061455a", + "0x45524332303a207472616e736665722066726f6d2030", + "0x45524332303a207472616e7366657220746f2030", + "0x753132385f636f6e7374", + "0xffffffffffffffffffffffffffffffff", + "0x45524332303a20617070726f76652066726f6d2030", + "0x45524332303a20617070726f766520746f2030", + "0x753235365f616464204f766572666c6f77", + "0x753235365f737562204f766572666c6f77", + "0x73746f726167655f77726974655f73797363616c6c", + "0x5a45524f5f50524f564953494f4e414c5f474f565f41444d494e", + "0x524f4c45535f414c52454144595f494e495449414c495a4544", + "0x6765745f657865637574696f6e5f696e666f5f73797363616c6c", + "0x4e6f6e20436f6e747261637441646472657373", + "0x53746f7265553634202d206e6f6e20753634", + "0x21", + "0x20", + "0x1ac8d354f2e793629cb233a16f10d13cf15b9c45bbc620577c8e1df95ede545", + "0x1e", + "0x706564657273656e", + "0xad292db4ff05a993c318438c1b6c8a8303266af2da151aa28ccece6726f1f1", + "0x99cd8bde557814842a3121e8ddfd433a539b8c9f14bf31ebf108d12e6196e9", + "0x134692b230b9e1ffa39098904722134159652b09c5bc41d88d6698779d228ff", + "0xb4", + "0x38a81c7fd04bac40e22e3eab2bcb3a09398bba67d0c5a263c6665c9c0b13a3", + "0xb5", + "0x7633a8d8b49c5c6002a1329e2c9791ea2ced86e06e01e17b5d0d1d5312c792", + "0xb6", + "0x34bb683f971572e1b0f230f3dd40f3dbcee94e0b3e3261dd0a91229a1adc4b7", + "0xb7", + "0xd1831486d8c46712712653f17d3414869aa50b4c16836d0b3d4afcfeafa024", + "0xb8", + "0x9d4a59b844ac9d98627ddba326ab3707a7d7e105fd03c777569d0f61a91f1e", + "0xb9", + "0x2842fd3b01bb0858fef6a2da51cdd9f995c7d36d7625fb68dd5d69fcc0a6d76", + "0xba", + "0x2b23b0c08c7b22209aea4100552de1b7876a49f04ee5a4d94f83ad24bc4ec1c", + "0xbb", + "0x3ae95723946e49d38f0cf844cef1fb25870e9a74999a4b96271625efa849b4c", + "0xbc", + "0x2d8a82390cce552844e57407d23a1e48a38c4b979d525b1673171e503e116ab", + "0xbd", + "0x2143175c365244751ccde24dd8f54f934672d6bc9110175c9e58e1e73705531", + "0xbe", + "0x25e2d538533284b9d61dfe45b9aaa563d33ef8374d9bb26d77a009b8e21f0de", + "0xbf", + "0xcfc0e4c73ce8e46b07c3167ce01ce17e6c2deaaa5b88b977bbb10abe25c9ad", + "0x4", + "0x52c476292b358ba7d29adb58502341b4cc5437d07f67d3e285e085828bc820", + "0x2e9f66c6eea14532c94ad25405a4fcb32faa4969559c128d837caa0ec50a655", + "0xc0", + "0xc1", + "0xc2", + "0x19", + "0xc3", + "0x53746f72655538202d206e6f6e207538", + "0xc4", + "0x16", + "0x75385f636f6e7374", + "0x2679d68052ccd03a53755ca9169677965fbd93e489df62f5f40d4f03c24f7a4", + "0x53746f726555313238202d206e6f6e2075313238", + "0x3a4e8ec16e258a799fe707996fd5d21d42b29adc1499a370edf7f809d8c458a", + "0x3c87bf42ed4f01f11883bf54f43d91d2cbbd5fec26d1df9c74c57ae138800a4", + "0xc5", + "0xc6", + "0xc7", + "0x13", + "0xc8", + "0xc9", + "0xca", + "0x11", + "0xcb", + "0xcc", + "0xe", + "0x636c6173735f686173685f746f5f66656c74323532", + "0xcd", + "0xce", + "0x66656c743235325f616464", + "0x68616465735f7065726d75746174696f6e", + "0x6", + "0x2a31bbb25d4dfa03fe73a91cbbab880b7c9cc4461880193ae5819ca6bbfe7cc", + "0xcf", + "0x43414c4c45525f49535f4d495353494e475f524f4c45", + "0xd0", + "0xd1", + "0x753132385f6f766572666c6f77696e675f616464", + "0x753132385f6f766572666c6f77696e675f737562", + "0xd2", + "0xd3", + "0x753132385f6571", + "0x3a55", + "0xffffffffffffffff", + "0x125", + "0x115", + "0x104", + "0xf4", + "0xec", + "0x1bf", + "0x1af", + "0x19e", + "0x15c", + "0x18e", + "0x186", + "0x259", + "0x249", + "0x238", + "0x1f6", + "0x228", + "0x220", + "0x2c5", + "0x284", + "0x2b8", + "0x2b1", + "0x35f", + "0x356", + "0x345", + "0x2fa", + "0x335", + "0x32c", + "0x3f4", + "0x3eb", + "0x3da", + "0x396", + "0x3ca", + "0x3c1", + "0x489", + "0x480", + "0x46f", + "0x42b", + "0x45f", + "0x456", + "0x51e", + "0x515", + "0x504", + "0x4c0", + "0x4f4", + "0x4eb", + "0x5c1", + "0x5b1", + "0x5a0", + "0x556", + "0x590", + "0x588", + "0x64a", + "0x63a", + "0x5f2", + "0x62b", + "0x623", + "0x6d3", + "0x6c3", + "0x67b", + "0x6b4", + "0x6ac", + "0x75c", + "0x74c", + "0x704", + "0x73d", + "0x735", + "0x7dd", + "0x7cd", + "0x78d", + "0x7be", + "0x7b6", + "0x85e", + "0x84e", + "0x80e", + "0x83f", + "0x837", + "0x8df", + "0x8cf", + "0x88f", + "0x8c0", + "0x8b8", + "0x960", + "0x950", + "0x910", + "0x941", + "0x939", + "0x9e1", + "0x9d1", + "0x991", + "0x9c2", + "0x9ba", + "0xa4e", + "0xa0c", + "0xa41", + "0xa3a", + "0xaba", + "0xa78", + "0xaad", + "0xaa6", + "0xb25", + "0xae4", + "0xb18", + "0xb11", + "0xb91", + "0xb4f", + "0xb84", + "0xb7d", + "0xc19", + "0xc09", + "0xbc1", + "0xbfa", + "0xbf2", + "0xcbb", + "0xcab", + "0xc9a", + "0xc50", + "0xc8a", + "0xc82", + "0xd5c", + "0xd4c", + "0xd3b", + "0xcf2", + "0xd2b", + "0xd23", + "0xe17", + "0xe07", + "0xdf6", + "0xde4", + "0xd99", + "0xdd3", + "0xdcb", + "0xeb8", + "0xea8", + "0xe97", + "0xe4e", + "0xe87", + "0xe7f", + "0xf59", + "0xf49", + "0xf38", + "0xeef", + "0xf28", + "0xf20", + "0xffa", + "0xfea", + "0xfd9", + "0xf90", + "0xfc9", + "0xfc1", + "0x1067", + "0x1025", + "0x105a", + "0x1053", + "0x10ef", + "0x10df", + "0x1097", + "0x10d0", + "0x10c8", + "0x11aa", + "0x119a", + "0x1189", + "0x1177", + "0x112c", + "0x1166", + "0x115e", + "0x124b", + "0x123b", + "0x122a", + "0x11e1", + "0x121a", + "0x1212", + "0x12ec", + "0x12dc", + "0x12cb", + "0x1282", + "0x12bb", + "0x12b3", + "0x1472", + "0x1462", + "0x1451", + "0x130f", + "0x1314", + "0x143d", + "0x1436", + "0x1422", + "0x140d", + "0x13f7", + "0x13e0", + "0x1339", + "0x133e", + "0x13c7", + "0x13bb", + "0x136b", + "0x13a4", + "0x139c", + "0x13d2", + "0xd4", + "0xd5", + "0xd6", + "0xd7", + "0xd8", + "0xd9", + "0xda", + "0xdb", + "0xdc", + "0xdd", + "0xde", + "0xdf", + "0xe0", + "0xe1", + "0xe2", + "0xe3", + "0xe4", + "0xe5", + "0xe6", + "0x1443", + "0xe7", + "0xe8", + "0xe9", + "0xea", + "0xeb", + "0xed", + "0xee", + "0xef", + "0xf0", + "0xf1", + "0xf2", + "0xf3", + "0xf5", + "0xf6", + "0xf7", + "0xf8", + "0xf9", + "0xfa", + "0xfb", + "0xfc", + "0xfd", + "0xfe", + "0xff", + "0x100", + "0x101", + "0x102", + "0x103", + "0x105", + "0x106", + "0x107", + "0x108", + "0x109", + "0x10a", + "0x10b", + "0x10c", + "0x10d", + "0x10e", + "0x10f", + "0x110", + "0x111", + "0x112", + "0x1493", + "0x148c", + "0x14a0", + "0x14a5", + "0x14e1", + "0x14dd", + "0x14b7", + "0x14bc", + "0x14d2", + "0x14cd", + "0x14d8", + "0x14e6", + "0x1562", + "0x154a", + "0x152c", + "0x1524", + "0x15e4", + "0x15cc", + "0x15ae", + "0x15a6", + "0x1605", + "0x1623", + "0x1647", + "0x1686", + "0x167f", + "0x1676", + "0x166c", + "0x16c1", + "0x16b8", + "0x1787", + "0x1779", + "0x176a", + "0x175c", + "0x174d", + "0x1740", + "0x1736", + "0x172d", + "0x1831", + "0x1824", + "0x1810", + "0x1804", + "0x17fa", + "0x17f1", + "0x181a", + "0x1a69", + "0x1a57", + "0x1875", + "0x1a45", + "0x1a33", + "0x1a23", + "0x18b0", + "0x18b4", + "0x113", + "0x18d0", + "0x114", + "0x1a0b", + "0x19f5", + "0x116", + "0x117", + "0x118", + "0x19e8", + "0x119", + "0x11a", + "0x18f0", + "0x190a", + "0x11b", + "0x19d9", + "0x11c", + "0x11d", + "0x11e", + "0x11f", + "0x19ca", + "0x120", + "0x121", + "0x122", + "0x123", + "0x195e", + "0x124", + "0x126", + "0x127", + "0x194f", + "0x128", + "0x129", + "0x12a", + "0x192a", + "0x12b", + "0x12c", + "0x192f", + "0x12d", + "0x12e", + "0x12f", + "0x130", + "0x1939", + "0x1963", + "0x131", + "0x132", + "0x196d", + "0x133", + "0x134", + "0x1972", + "0x135", + "0x136", + "0x137", + "0x138", + "0x19b4", + "0x139", + "0x19aa", + "0x19a1", + "0x13a", + "0x13b", + "0x13c", + "0x13d", + "0x13e", + "0x13f", + "0x140", + "0x141", + "0x142", + "0x143", + "0x144", + "0x145", + "0x146", + "0x147", + "0x148", + "0x149", + "0x14a", + "0x14b", + "0x14c", + "0x14d", + "0x14e", + "0x14f", + "0x150", + "0x151", + "0x152", + "0x153", + "0x154", + "0x155", + "0x156", + "0x157", + "0x158", + "0x159", + "0x15a", + "0x15b", + "0x15d", + "0x15e", + "0x15f", + "0x160", + "0x161", + "0x162", + "0x163", + "0x164", + "0x165", + "0x166", + "0x167", + "0x168", + "0x169", + "0x16a", + "0x16b", + "0x16c", + "0x16d", + "0x16e", + "0x16f", + "0x170", + "0x171", + "0x172", + "0x173", + "0x174", + "0x175", + "0x176", + "0x177", + "0x178", + "0x179", + "0x17a", + "0x17b", + "0x17c", + "0x17d", + "0x17e", + "0x17f", + "0x180", + "0x181", + "0x182", + "0x183", + "0x184", + "0x185", + "0x187", + "0x188", + "0x189", + "0x18a", + "0x18b", + "0x18c", + "0x18d", + "0x18f", + "0x190", + "0x191", + "0x192", + "0x193", + "0x194", + "0x195", + "0x196", + "0x197", + "0x198", + "0x199", + "0x19a", + "0x19b", + "0x19c", + "0x19d", + "0x19f", + "0x1a0", + "0x1a1", + "0x1a2", + "0x1a3", + "0x1a4", + "0x1a82", + "0x1a87", + "0x1a91", + "0x1ab8", + "0x1ac7", + "0x1acb", + "0x1af4", + "0x1b16", + "0x1b32", + "0x1b63", + "0x1b5b", + "0x1b96", + "0x1b8e", + "0x1bc9", + "0x1bc1", + "0x1bfc", + "0x1bf4", + "0x1c1b", + "0x1c20", + "0x1c34", + "0x1c57", + "0x1c4f", + "0x1c7b", + "0x1c9b", + "0x1cbd", + "0x1ce0", + "0x1d15", + "0x1d3d", + "0x1d6b", + "0x1d63", + "0x1db6", + "0x1dab", + "0x1da3", + "0x1de8", + "0x1de0", + "0x1e5f", + "0x1e47", + "0x1e30", + "0x1e28", + "0x1ed6", + "0x1ebe", + "0x1ea7", + "0x1e9f", + "0x1ee7", + "0x1eec", + "0x1ef5", + "0x1efa", + "0x1faf", + "0x1fa4", + "0x1f27", + "0x1f2c", + "0x1f43", + "0x1f8d", + "0x1f84", + "0x1f70", + "0x1fc2", + "0x1fc9", + "0x1fde", + "0x1a5", + "0x1a6", + "0x1a7", + "0x1a8", + "0x1a9", + "0x1aa", + "0x1ab", + "0x1ac", + "0x2003", + "0x1ad", + "0x1ae", + "0x1ffc", + "0x201e", + "0x2023", + "0x2039", + "0x1b0", + "0x1b1", + "0x210b", + "0x20f3", + "0x1b2", + "0x1b3", + "0x20dc", + "0x1b4", + "0x20c4", + "0x20ac", + "0x1b5", + "0x1b6", + "0x2096", + "0x1b7", + "0x1b8", + "0x1b9", + "0x1ba", + "0x1bb", + "0x1bc", + "0x208e", + "0x1bd", + "0x2137", + "0x213c", + "0x2152", + "0x1be", + "0x2224", + "0x220c", + "0x21f5", + "0x21dd", + "0x21c5", + "0x21af", + "0x21a7", + "0x1c0", + "0x1c1", + "0x225b", + "0x1c2", + "0x1c3", + "0x1c4", + "0x2254", + "0x2274", + "0x1c5", + "0x226d", + "0x1c6", + "0x1c7", + "0x1c8", + "0x22c9", + "0x1c9", + "0x22a0", + "0x1ca", + "0x1cb", + "0x229a", + "0x1cc", + "0x2292", + "0x1cd", + "0x1ce", + "0x22b0", + "0x1cf", + "0x1d0", + "0x1d1", + "0x1d2", + "0x1d3", + "0x22bf", + "0x1d4", + "0x1d5", + "0x22b7", + "0x1d6", + "0x1d7", + "0x22d8", + "0x22dd", + "0x2303", + "0x22f9", + "0x22fe", + "0x1d8", + "0x1d9", + "0x1da", + "0x1db", + "0x1dc", + "0x2330", + "0x1dd", + "0x2329", + "0x1de", + "0x235b", + "0x2353", + "0x2396", + "0x238e", + "0x2383", + "0x1df", + "0x1e0", + "0x1e1", + "0x1e2", + "0x1e3", + "0x1e4", + "0x1e5", + "0x23af", + "0x1e6", + "0x1e7", + "0x1e8", + "0x1e9", + "0x23bb", + "0x1ea", + "0x1eb", + "0x23bf", + "0x1ec", + "0x1ed", + "0x1ee", + "0x1ef", + "0x23cb", + "0x2406", + "0x1f0", + "0x1f1", + "0x23f1", + "0x1f2", + "0x2447", + "0x1f3", + "0x1f4", + "0x1f5", + "0x2432", + "0x1f7", + "0x1f8", + "0x1f9", + "0x1fa", + "0x1fb", + "0x248f", + "0x1fc", + "0x1fd", + "0x2474", + "0x2479", + "0x1fe", + "0x1ff", + "0x2486", + "0x200", + "0x201", + "0x24d4", + "0x24b9", + "0x24be", + "0x24cb", + "0x202", + "0x203", + "0x24f6", + "0x252e", + "0x204", + "0x2525", + "0x205", + "0x2575", + "0x255a", + "0x255f", + "0x256c", + "0x206", + "0x207", + "0x2591", + "0x208", + "0x209", + "0x25e0", + "0x25c5", + "0x25ca", + "0x25d7", + "0x20a", + "0x20b", + "0x20c", + "0x20d", + "0x2602", + "0x20e", + "0x20f", + "0x210", + "0x211", + "0x212", + "0x213", + "0x214", + "0x215", + "0x2620", + "0x216", + "0x217", + "0x218", + "0x2637", + "0x219", + "0x21a", + "0x263c", + "0x21b", + "0x21c", + "0x21d", + "0x2649", + "0x26d9", + "0x26c5", + "0x2677", + "0x267c", + "0x2694", + "0x21e", + "0x21f", + "0x26bc", + "0x26b4", + "0x26d0", + "0x273c", + "0x2704", + "0x2722", + "0x221", + "0x2733", + "0x272b", + "0x2790", + "0x277e", + "0x222", + "0x2776", + "0x223", + "0x224", + "0x225", + "0x27a8", + "0x27ad", + "0x27b8", + "0x226", + "0x27cb", + "0x27d0", + "0x27db", + "0x227", + "0x229", + "0x2800", + "0x22a", + "0x22b", + "0x22c", + "0x27f9", + "0x22d", + "0x22e", + "0x22f", + "0x2826", + "0x230", + "0x231", + "0x232", + "0x281f", + "0x233", + "0x2851", + "0x2849", + "0x234", + "0x287d", + "0x2875", + "0x2899", + "0x289e", + "0x28b5", + "0x235", + "0x28c8", + "0x28cd", + "0x28e4", + "0x236", + "0x29c1", + "0x29a8", + "0x2990", + "0x2977", + "0x295e", + "0x2947", + "0x293f", + "0x2a49", + "0x237", + "0x2a34", + "0x2a1d", + "0x2a15", + "0x2a40", + "0x2a75", + "0x2a7a", + "0x2a91", + "0x239", + "0x2aa4", + "0x2aa9", + "0x2ac0", + "0x23a", + "0x23b", + "0x23c", + "0x2af1", + "0x23d", + "0x23e", + "0x23f", + "0x240", + "0x2ae9", + "0x241", + "0x2b13", + "0x242", + "0x243", + "0x2b2a", + "0x244", + "0x245", + "0x246", + "0x2b7f", + "0x247", + "0x248", + "0x2b6c", + "0x24a", + "0x2b5a", + "0x24b", + "0x24c", + "0x24d", + "0x24e", + "0x24f", + "0x250", + "0x2ba3", + "0x2ba8", + "0x2bb3", + "0x251", + "0x252", + "0x253", + "0x254", + "0x2c5c", + "0x2c4b", + "0x2be4", + "0x2be9", + "0x2bfe", + "0x255", + "0x256", + "0x2c43", + "0x257", + "0x2c3b", + "0x2c33", + "0x258", + "0x2c76", + "0x2c7b", + "0x2c86", + "0x25a", + "0x25b", + "0x25c", + "0x25d", + "0x25e", + "0x2c94", + "0x25f", + "0x260", + "0x2c99", + "0x261", + "0x262", + "0x263", + "0x2ca4", + "0x264", + "0x265", + "0x266", + "0x267", + "0x2cca", + "0x268", + "0x2cbc", + "0x269", + "0x26a", + "0x26b", + "0x26c", + "0x26d", + "0x26e", + "0x26f", + "0x270", + "0x2cd9", + "0x271", + "0x2cf4", + "0x272", + "0x273", + "0x274", + "0x275", + "0x2d15", + "0x276", + "0x277", + "0x278", + "0x279", + "0x27a", + "0x2d5b", + "0x2d40", + "0x2d45", + "0x2d52", + "0x2d83", + "0x2d75", + "0x27b", + "0x27c", + "0x27d", + "0x27e", + "0x27f", + "0x280", + "0x281", + "0x282", + "0x2d92", + "0x2dc2", + "0x283", + "0x2dbb", + "0x285", + "0x286", + "0x2db2", + "0x287", + "0x288", + "0x289", + "0x28a", + "0x28b", + "0x28c", + "0x28d", + "0x28e", + "0x28f", + "0x290", + "0x2df2", + "0x291", + "0x292", + "0x293", + "0x294", + "0x2e11", + "0x295", + "0x296", + "0x297", + "0x298", + "0x299", + "0x29a", + "0x2e38", + "0x29b", + "0x29c", + "0x29d", + "0x29e", + "0x29f", + "0x2e45", + "0x2a0", + "0x2e60", + "0x2e65", + "0x2e72", + "0x2a1", + "0x2a2", + "0x2a3", + "0x2a4", + "0x2a5", + "0x2a6", + "0x2e8d", + "0x2e92", + "0x2e9f", + "0x2a7", + "0x2a8", + "0x2a9", + "0x2aa", + "0x2ab", + "0x2ac", + "0x2ebb", + "0x2ec9", + "0x2ee2", + "0x2efb", + "0x2f14", + "0x2f22", + "0x2f30", + "0x2f3e", + "0x2f4c", + "0x2f5a", + "0x2f68", + "0x2f76", + "0x2ad", + "0x2ae", + "0x2f83", + "0x2af", + "0x2b0", + "0x2b2", + "0x2edc", + "0x2b3", + "0x2b4", + "0x2b5", + "0x2b6", + "0x2ef5", + "0x2b7", + "0x2f0e", + "0x2b9", + "0x2ba", + "0x2bb", + "0x2bc", + "0x2bd", + "0x2be", + "0x2bf", + "0x2c0", + "0x2c1", + "0x2c2", + "0x2c3", + "0x2c4", + "0x2c6", + "0x2c7", + "0x2c8", + "0x2c9", + "0x2ca", + "0x2cb", + "0x2cc", + "0x2cd", + "0x2ce", + "0x2cf", + "0x2d0", + "0x2d1", + "0x2d2", + "0x2f90", + "0x2d3", + "0x2d4", + "0x2fac", + "0x2fd6", + "0x2fce", + "0x2d5", + "0x2d6", + "0x2feb", + "0x2fef", + "0x2ffa", + "0x2fff", + "0x300a", + "0x2d7", + "0x2d8", + "0x2d9", + "0x2da", + "0x2db", + "0x3051", + "0x3022", + "0x3027", + "0x3043", + "0x303d", + "0x304a", + "0x2dc", + "0x2dd", + "0x3099", + "0x308e", + "0x3093", + "0x2de", + "0x2df", + "0x2e0", + "0x2e1", + "0x30a5", + "0x2e2", + "0x2e3", + "0x30bf", + "0x3105", + "0x2e4", + "0x30fa", + "0x30f2", + "0x2e5", + "0x314d", + "0x3132", + "0x3137", + "0x3144", + "0x3195", + "0x318a", + "0x3182", + "0x3227", + "0x31bd", + "0x31e9", + "0x2e6", + "0x2e7", + "0x3211", + "0x31fa", + "0x2e8", + "0x2e9", + "0x2ea", + "0x31f2", + "0x2eb", + "0x3253", + "0x3245", + "0x2ec", + "0x2ed", + "0x2ee", + "0x2ef", + "0x2f0", + "0x2f1", + "0x2f2", + "0x2f3", + "0x3262", + "0x2f4", + "0x2f5", + "0x2f6", + "0x2f7", + "0x32ae", + "0x2f8", + "0x2f9", + "0x32a3", + "0x2fb", + "0x3299", + "0x328a", + "0x2fc", + "0x2fd", + "0x2fe", + "0x2ff", + "0x300", + "0x301", + "0x302", + "0x303", + "0x304", + "0x32bd", + "0x305", + "0x306", + "0x307", + "0x308", + "0x309", + "0x3308", + "0x30a", + "0x30b", + "0x30c", + "0x30d", + "0x30e", + "0x334e", + "0x3333", + "0x3338", + "0x3345", + "0x30f", + "0x310", + "0x3361", + "0x3367", + "0x311", + "0x3375", + "0x337b", + "0x312", + "0x338d", + "0x3392", + "0x339d", + "0x313", + "0x314", + "0x315", + "0x316", + "0x317", + "0x33b3", + "0x33b8", + "0x33c3", + "0x318", + "0x319", + "0x31a", + "0x31b", + "0x31c", + "0x33da", + "0x33df", + "0x33ea", + "0x31d", + "0x31e", + "0x31f", + "0x320", + "0x3478", + "0x3465", + "0x344f", + "0x3438", + "0x321", + "0x322", + "0x3430", + "0x346f", + "0x34d7", + "0x323", + "0x324", + "0x34c0", + "0x325", + "0x326", + "0x327", + "0x34b8", + "0x328", + "0x329", + "0x34e9", + "0x34f5", + "0x34fa", + "0x32a", + "0x3517", + "0x3511", + "0x32b", + "0x352b", + "0x3530", + "0x355a", + "0x32d", + "0x3554", + "0x32e", + "0x32f", + "0x354c", + "0x330", + "0x331", + "0x332", + "0x333", + "0x334", + "0x336", + "0x337", + "0x358d", + "0x338", + "0x339", + "0x3587", + "0x359c", + "0x33a", + "0x365d", + "0x33b", + "0x35b2", + "0x35b7", + "0x3634", + "0x35c5", + "0x35ca", + "0x360a", + "0x33c", + "0x33d", + "0x33e", + "0x35f7", + "0x35f0", + "0x33f", + "0x340", + "0x341", + "0x342", + "0x343", + "0x344", + "0x3622", + "0x362c", + "0x364b", + "0x3655", + "0x346", + "0x347", + "0x348", + "0x349", + "0x34a", + "0x34b", + "0x34c", + "0x34d", + "0x36c5", + "0x34e", + "0x36de", + "0x34f", + "0x36f7", + "0x350", + "0x351", + "0x352", + "0x353", + "0x354", + "0x355", + "0x357", + "0x358", + "0x359", + "0x35a", + "0x35b", + "0x35c", + "0x35d", + "0x35e", + "0x37d8", + "0x37d0", + "0x37c5", + "0x360", + "0x37f1", + "0x37f5", + "0x37ff", + "0x3804", + "0x3811", + "0x361", + "0x362", + "0x363", + "0x364", + "0x365", + "0x3857", + "0x383c", + "0x3841", + "0x384e", + "0x387f", + "0x3871", + "0x366", + "0x367", + "0x368", + "0x369", + "0x36a", + "0x36b", + "0x36c", + "0x36d", + "0x36e", + "0x389e", + "0x38ac", + "0x36f", + "0x370", + "0x38bb", + "0x371", + "0x372", + "0x38c1", + "0x373", + "0x38c9", + "0x374", + "0x375", + "0x38dd", + "0x376", + "0x38d3", + "0x38db", + "0x377", + "0x378", + "0x38ea", + "0x38f0", + "0x38f8", + "0x390c", + "0x3902", + "0x390a", + "0x379", + "0x394c", + "0x3931", + "0x3936", + "0x3943", + "0x37a", + "0x3965", + "0x396a", + "0x3977", + "0x37b", + "0x37c", + "0x37d", + "0x37e", + "0x37f", + "0x39bd", + "0x39a2", + "0x39a7", + "0x39b4", + "0x39fe", + "0x39d6", + "0x380", + "0x381", + "0x382", + "0x383", + "0x39f4", + "0x39ee", + "0x384", + "0x385", + "0x386", + "0x3a25", + "0x387", + "0x388", + "0x3a49", + "0x3a4d", + "0x389", + "0x38a", + "0x404", + "0x499", + "0x52e", + "0x5d0", + "0x659", + "0x6e2", + "0x76b", + "0x7ec", + "0x86d", + "0x8ee", + "0x96f", + "0x9f0", + "0xa5c", + "0xac8", + "0xb33", + "0xb9f", + "0xc28", + "0xcca", + "0xd6b", + "0xe26", + "0xec7", + "0xf68", + "0x1009", + "0x1075", + "0x10fe", + "0x11b9", + "0x125a", + "0x12fb", + "0x1481", + "0x1499", + "0x14eb", + "0x156d", + "0x15ef", + "0x160d", + "0x162b", + "0x164e", + "0x168f", + "0x16cb", + "0x1795", + "0x183e", + "0x1a7b", + "0x1a98", + "0x1ac0", + "0x1ad5", + "0x1afc", + "0x1b02", + "0x1b1e", + "0x1b3a", + "0x1b6d", + "0x1ba0", + "0x1bd3", + "0x1c06", + "0x1c61", + "0x1c81", + "0x1ca1", + "0x1cc4", + "0x1ce7", + "0x1cf6", + "0x1d1d", + "0x1d45", + "0x1d76", + "0x1dc2", + "0x1df3", + "0x1e6a", + "0x1ee1", + "0x1eef", + "0x1efd", + "0x1fbc", + "0x1fcc", + "0x1fe4", + "0x200a", + "0x2123", + "0x223c", + "0x2262", + "0x227a", + "0x22d1", + "0x230a", + "0x2337", + "0x2363", + "0x239f", + "0x23b5", + "0x23d0", + "0x2411", + "0x2452", + "0x2497", + "0x24dc", + "0x24fc", + "0x2538", + "0x257d", + "0x25a3", + "0x25e8", + "0x2608", + "0x2628", + "0x2651", + "0x26e6", + "0x2749", + "0x279b", + "0x27be", + "0x27e1", + "0x2807", + "0x282d", + "0x2859", + "0x2885", + "0x29da", + "0x2a61", + "0x2b08", + "0x2b1f", + "0x2b36", + "0x2b93", + "0x2bba", + "0x2c66", + "0x2c8d", + "0x2caa", + "0x2cd3", + "0x2cdf", + "0x2cfb", + "0x2d1e", + "0x2d63", + "0x2d8c", + "0x2d98", + "0x2dcb", + "0x2dd0", + "0x2df9", + "0x2e18", + "0x2e26", + "0x2e3e", + "0x2e4e", + "0x2e7b", + "0x2ea8", + "0x2eab", + "0x2f8a", + "0x2f96", + "0x2f99", + "0x2fb2", + "0x2fde", + "0x2fe1", + "0x3011", + "0x3014", + "0x305f", + "0x3073", + "0x309f", + "0x30ab", + "0x30b9", + "0x30c5", + "0x3110", + "0x3155", + "0x31a0", + "0x3233", + "0x325c", + "0x3268", + "0x32b7", + "0x32c3", + "0x32d2", + "0x32e7", + "0x32ee", + "0x3311", + "0x3356", + "0x336a", + "0x337e", + "0x33a4", + "0x33ca", + "0x33f1", + "0x3484", + "0x34e3", + "0x34ef", + "0x34fd", + "0x3520", + "0x3523", + "0x3564", + "0x3570", + "0x35a3", + "0x366d", + "0x367b", + "0x3697", + "0x36b3", + "0x36cc", + "0x36e5", + "0x36fe", + "0x3708", + "0x3724", + "0x3740", + "0x375c", + "0x376e", + "0x3780", + "0x3792", + "0x37a4", + "0x37e2", + "0x37e4", + "0x381a", + "0x385f", + "0x3888", + "0x38ae", + "0x38b1", + "0x38e0", + "0x390f", + "0x3954", + "0x3980", + "0x39c5", + "0x3a0d", + "0x3a2b", + "0x3a30", + "0x3a3c", + "0x3a3f", + "0x3a4f", + "0x3a52", + "0x1ef86", + "0x600800e0280280d0180340600b00e0280480800e0180280400600800800", + "0x48120180500980e018048060120180480601100e0400280401e0380600c", + "0x600800e0540281c01806c0381a00a05c060190300340601701805803815", + "0x60220180840381501205c060200180200381500a07c0380600a0780601d", + "0x28230180a00602700e0540480d0180980600800e0940282400e01802823", + "0x600c0180ac038150120380602a0180200380a00a0300600c0180a40380a", + "0x382500a0c00380600a08c0602f0180b8038150120b40600800e0b002817", + "0x60120180480603500e0d0028230180cc0603200e0540480d0180c406008", + "0x60380180480603900e0d0028380180e0060120180dc0383400a0101b012", + "0x603c0180ec038150120480601d0180200380a00a0480603a00e06802838", + "0x380a00a0340601d0180f40380a012048060120180480600800e0d002823", + "0x604300e05404842018064208230181000603f00e0540483e01807406008", + "0x604801811c03815012034060460180200382500a1140380600a05c06044", + "0x28230181300604b00e0540480d0181280600800e0940284900e01802823", + "0x383400a08c0605001813c038150120340604e0180200382500a13403806", + "0x3815012034060530180200382500a1480380600a0a8060380180e006051", + "0x381501215c0600800e0b0028170180a80605600e0540482301815406054", + "0x485d0180200382c00a05c0605c01816c038150120102d02301816406058", + "0x606200e054048040c205c060120181800381501208c0605f01817803815", + "0x606601819403815012034060640180200382500a18c0380600a05c0600e", + "0x380600a08c060690181a0038150120340601701805c0600800e19c02823", + "0x286e00e018028230181b40606c00e0540480d0181ac0600800e0940286a", + "0x607300e028048040e408c060710181c0038150120340606f01802003825", + "0x600800e06802876018064208380181d0060740181d40383400a1d006074", + "0x380a00a0103d80d0180340607a00e028048230181e40607800e05404877", + "0x48800180740600800e0280280d0181fc0607e00e0280481d0181f40607c", + "0x48840180200382c00a05c0607401820c0381501208c0608201820403815", + "0x288800e0180282a0180e00603801821c0383400a08c0608601821403815", + "0x382500a2300380600a08c0608b018228038150120340608901802003825", + "0x28170180e00609000e0540482301823c0608e00e0540480d01823406008", + "0x389600a254060190820104a02301824c0609200e054048910180200382c", + "0x60770182640389800a048060120180480601d0180300603801804806097", + "0x28230182700609b00e054048440180200381a00a048060380180e00609a", + "0x380600a08c060a001827c038150120340609e0180200382500a27403806", + "0x600800e02802823018290060a300e0540480d0182880600800e094028a1", + "0x380a00a0e0060380182980380a00a0e0060380182940380a00a0e006038", + "0x28aa0182a40381a00a038060800181f4060a800e0d0028380180e0060a7", + "0x60ae00e0280287d0182b40381a00a2a8060ac00e068028aa0182ac0381a", + "0x60b70182d8060b50182d0060b30182c8060b10182c0038af0120e006038", + "0x38150120e0060120180200380a00a2f4060bc0182ec060ba0182e4060b8", + "0x28c10180640c017018074060c000e054048bf0180640c017018034060be", + "0x604e018314038c400a08c060c3018308038150120340601701802003815", + "0x60260181900606b0181bc0609e018288060530182240608d0181180604a", + "0x480d018020038cc00a2a8060ca18c32c060ca18c008648c801831c63031", + "0x60ca18c008680cf018328630740180200381a00a08c060ce01833403815", + "0x60800183540380a0120340600e0183500380a01234c060ca18c008690d1", + "0x60d900e02804823018360060d700e054048d60180740600800e0280280d", + "0x60db00e054048380180200381a00a048060191b41f4060ca18c0340607d", + "0x380a012034060740183780380a0120340600c0183740380a01208c060dc", + "0x600800e0280280d018384060e000e028048120180642080d018170060df", + "0x60e400e0540482a0180200381a00a08c060e301838803815012038060c8", + "0x600800e0680282301839c060e600e0540485c0180200381a00a08c060e5", + "0x60eb0183a8038150120380600800e068028230183a4060e800e05404812", + "0x600800e0280280d0182a8060ed00e0280480d018048060ec00e02804823", + "0x381a00a08c060cf0183c40381501208c060f00183bc038150123b80601d", + "0x48041e808c060f30183c803815012034060c80180200382500a07406008", + "0x60f900e0280480d0180a8060f800e028048041ee08c060f60183d403815", + "0x610003a030060ff00e030060ff00e3f8038fd00e3f07d8021f403406038", + "0x900c0184180e80c0184148200c0184048180e0184008100c0184042000e", + "0x390c210030060ff2100300610b00e0340610a2100300610921003006107", + "0x6110024030060ff21e0340610e0240300610d0700300610905403006109", + "0x60ff1a2030060ff0180348980c01a4481180c0184441000c0184440900c", + "0x2700c0184440391722c030060ff00e4548980c0183fc6580c0183fc8a00c", + "0x61110a6030061111120300611111a0300611108c0300611109403006111", + "0x1300c0184443200c0184443580c0184443780c0184444f00c0184445100c", + "0x6100054030060ff070030060ff190030060ff1900300611106203006111", + "0xe80c0184440b80c0184240b80c01841c7980c0184248c00c0184042200e", + "0xe80c0184240680c0184248c80d0184380380d226030069121ec03006111", + "0x61070900380610008c03806100238038061002360340610e2340340610e", + "0x3a00c01841c6780c0184148f00c0184048e80e0184006400c0184246400c", + "0x7800c0184149000c0184042500e0184000391f0e80300610b0e803006109", + "0x610009803806100154030060ff1a6030060ff154030061091dc03006101", + "0x900c0184249180c0184049100e0184002800e0184002700e0184009080e", + "0x60ff01c0300610901c030061071d6030061052480300610116403806100", + "0x7480c0184149280c0184042a80e0184002980e0184000b80c0183fc0700c", + "0x610024e038061000b2038061000ae0380610024c0380610002403006107", + "0x9500e0184009480e0184009400e0184002f80e0184002e80e0184002e00e", + "0x610b0b8030061090b8030061071ce030061052580300610125603806100", + "0x6100054030061071ca0300610525c030061010c80380610000e4b42e00c", + "0x7180c0184149880c0184049800e0184003480e0184009780e0184003300e", + "0x39340de03806100266038061000da038061002640340610e0d603806100", + "0x611100e4dc9b00c0183fc0e00c0183fc0380d26c0300691202403006135", + "0x61000240300610b0240300613826c030061010180349b00c01a4480680c", + "0x60ff0b8030060ff00e4f09d80c0184049d00e0184009c80c0184043880e", + "0x9f80d0184389f00d0184389e80d0184380e00c0184243a00e0184003a00c", + "0x6912204030060ff00e0348100c01a448039422820340610e2800340610e", + "0x380d208030069120540300611128803006101286038061000180348100c", + "0x3b00e0184000600d2080300691201a030060ff01803006109208030060ff", + "0x61050ee03806100144030060ff144030061071900300610528a03006101", + "0x61050f20380610000e5200394700e5181c00c01842c1c00c01841c6e00c", + "0x600d23003006912230030060ff00e0348c00c01a4487980c0184447980c", + "0x61090d6030061090c80300610904c030061090620300610929203006109", + "0x4680c0184244480c0184242980c0184245100c0184244f00c0184243780c", + "0x61001b8030061092940340610e09c030061090940300610908c03006109", + "0x60ff00e0348f00c01a4486780c018444a600e0184004f00c0183fca580e", + "0xa780c0184043e80e0184000394e0fa0300614d0180348f00c01a4488f00c", + "0x61001ac030061011b0030061052a2030061010fe038061000fa03006150", + "0x69121e00300611100e0347700c01a4485500c018444a900c0184044000e", + "0x600d1dc03006912100030061090fa03006109240030060ff00e0349000c", + "0xaa00e0184003780c0183fc4100e018400a980c0184240600d24003006912", + "0x61092aa030061011080380610019e0300614d1a20300614d1a60300614d", + "0x5500c0185643a00c018564ac00d01855cab00e0184004300e0184006700c", + "0x61111a6030061501a203006150112038061001620380610019e03006150", + "0x6780c018424ad80c018424ad00c0184244580e0184005980c0183fc5980c", + "0xaf00e0184005a00c0183fc5a00c0184440395d00e034061572b803006109", + "0x700c0184040395f11a038061001900300614d1960300614d1540300614d", + "0x691211e038061002c60340610e2c4030061092c2030061092c003006109", + "0x60ff16a0300611100e594b200d0184380600d01c0300691200e0340700c", + "0x3e80c0185644880e0184000700c0185645500c018414b300e0184005a80c", + "0x615019603006150100030061591260380610016c030060ff16c03006111", + "0xb400c018404b380e0184000e80c01841c3f80c0184144000c0184046400c", + "0x6912182030060ff00e0346080c01a4480396a2d20340610e18603006105", + "0x396d2d80340610e1820300616b18203006109182030061070180346080c", + "0x610917e030061070180345f80c01a4485f80c0183fc0380d17e03006912", + "0xb800d018438b780d018438b700d0184385500c0185405f80c0185ac5f80c", + "0x60ff2e2030061110180349180c01a4489180c0183fc0380d24603006912", + "0x60ff00e0349200c01a4487580c018444b900e018400b880c0183fc1880c", + "0x60ff0180340610e00e0340610e01c0300610b0180349200c01a4489200c", + "0x691224a030060ff00e0349280c01a4487480c0184444d00e0184001300c", + "0x691217403006111070030061592e80340610e2e60340610e0180349280c", + "0xe80d2ea030069121760300611112a038061002ea030060ff038034ba80c", + "0xba80c01a4485e80c0184441100d2ea030069121780300611108403806100", + "0x2500c0183fcbb80e0184002700c0183fc4e00e018400bb00d0184381000d", + "0x380d258030069121ce030061111400380610008c030060ff13c03806100", + "0x7280c018444bc00e0184004680c0183fc0600d25803006912258030060ff", + "0x6105054030061590180349700c01a4489700c0183fc0380d25c03006912", + "0x60ff2f40300611114403806100112030060ff00e5e40600c01842c1500c", + "0x9880c01a4487180c018444bd80e0184005200e018400bd00c0183fc2980c", + "0x610717a038061002f4038061000180349880c01a4489880c0183fc0380d", + "0x9c80c0183fc0380d2720300691200e5f05d80e0184005e00e0184002980c", + "0x380d2760300691200e5f49c80c01842c0380c01842c0600d27203006912", + "0xbf00d0184385500e0184009d80c01842c0600d27603006912276030060ff", + "0x610116a0380610016803806100148030061052f60300610116603806100", + "0xa200c01a448a200c0183fc0380d2880300691200e5fc5000c018414bc00c", + "0x2100c0184e04e00c018414bb80c0184045b00e018400a200c01842c0600d", + "0x380d28a030069121b803006111134030061090ee0300610908403006105", + "0x5d00e018400b900c0183fcc080d0186000600d28a0300691228a030060ff", + "0x61073040340610e2ea03806100122030060ff126030061052ce03006101", + "0xaf00c0184045f80e0184004480c01841cb300c018404b880e0184004680c", + "0x6100162030060ff162030061111160300610511e0300610500e03406183", + "0xab00c0184046080e018400c300d018600c280d0184384780c018424c200e", + "0x60ff00e034a780c01a4480398830e03806100108030060ff10c03006105", + "0x61052a8030061011860380610002403006159018034a780c01a448a780c", + "0x6c00c0184440600d1ac03006912100030060ff00e0344000c01a4484100c", + "0x61012d003806100018034a880c01a448a880c0183fc0380d2a203006912", + "0x60ff00e034a900c01a4480380d1ac030069120180344000c01a448a600c", + "0x61002c2038061001900380610015403006107018034a900c01a448a900c", + "0x691219c030061112aa030060ff018034aa80c01a448c480d0184386580e", + "0x61050ec030061380f203006105296030061012c40380610000e034aa80c", + "0x610e018034a180c01a448a180c0183fc0380d2860300691200e6283b00c", + "0x3880c0184149d00c0184046700e018400b000e018400a180c01842cc580d", + "0x610719e038061000da03006105266030061012aa038061000d6030060ff", + "0x610b00e6303480c0184149800c018404ae00e018400ba80c018424ba80c", + "0x6980e0184003200c0183fcad00e0184006700c0184146880e0184005f80c", + "0x61000cc0300610525e030061011ac038061002a4038061002b603806100", + "0x6912186030061112a20380610000e6340e80c01842c0e80c0185646c00e", + "0xa980e018400a780e0184000600d2d0030069122d0030060ff00e034b400c", + "0x380d2520300691200e63c0398e1b803806100292038061002560300610b", + "0xc800d018438a280e0184009480c01842c0600d25203006912252030060ff", + "0x61803220340610e1c203806100272038061002760380610028803806100", + "0x9400c0184049b00e018400ca00d018600c980d0186009500c0183fcc900d", + "0x61012620380610032a034061801c6038061000ba030060ff0be03006105", + "0x7380e0184009700e0184007280e0184002b80c0183fc2c80c0184149380c", + "0x610e3340340610e258038061003320340619832e0340610e32c0340610e", + "0x5900c0183fc5900c0184442a80c0184149300c0184047480e018400cd80d", + "0x610033a0340610e248038061003380340610e1d60380610024a03806100", + "0x8e80c0184047800e0184009080c0184047700e0184009100c0184049180e", + "0x399e0a0030061090980300610909003006105098030061050a003006105", + "0x610e018034bd80c01a448bd80c0183fc0380d2f60300691214803006111", + "0x5000c0184444f00c01841cd000d0184388f00e0184009000e018400cf80d", + "0x8e00c01a448039a1018034bc00c01a448bc00c0183fc0380d2f003006912", + "0x61111ec038061002380300610b0180348e00c01a4488e00c0183fc0380d", + "0x7980e0184000600d2ee030069122ee030060ff00e034bb80c01a4484e00c", + "0x610e2ce030060ff00e034b380c01a4484980c0184440380d12203006912", + "0x8c00e0184004880c0184040600d12203006912018034b380c01a448d100d", + "0x6111018034b300c01a448b300c0183fc0380d2cc0300691211e03006111", + "0x8b00e0184000600d2bc030069122bc030060ff00e034af00c01a4484580c", + "0x610e2ac030060ff00e034ab00c01a4484300c0184440380d10803006912", + "0x8980e0184004200c0184040600d10803006912018034ab00c01a448d180d", + "0x6912104030061110fe0300611107c030061010800300610520603006101", + "0x60ff00e034a600c01a4480600d2a8030069122a8030060ff00e034aa00c", + "0xd200c0183fcd200c0184448200e0184008400e0184003e80c0183fca600c", + "0x610534e0300611134c0340610e0780300610534a0300610120403806100", + "0x6912296030060ff00e034a580c01a4483c80c018444039a900e6a0d380c", + "0x380d274030069120e2030061110de0300610728603006101018034a580c", + "0x3680c0184448a00e0184003580c01841c0600d27403006912274030060ff", + "0x680d2ea030069120180349980c01a4489980c0183fc0380d26603006912", + "0x610e358038061003560340610e000038061003540340610e2ea03006101", + "0x610035e0340610e260030060ff0180349800c01a448d700e018400d680d", + "0xda80d018438da00e018400d980d018438d900e018400d880d018438d800e", + "0x610e37003806100170030060ff36e0340610e36c0380610016e030060ff", + "0xde00e0184005d00c0183fcdd80d018438dd00e0184005c80c0183fcdc80d", + "0x6100178030060ff37e0340610e37c03806100176030060ff37a0340610e", + "0x9800c01a4483480c018444e100e0184005e80c0183fce080d018438e000e", + "0xe200d2ea030069123860340618001c034ba80c01a4485f80c0184040380d", + "0x9780c01a4489780c0183fc0380d25e030069120cc030061110c803006107", + "0x380d2560300691238a0340610e2e203006105024034ba80c01a4480600d", + "0x9480c018404e300d0184389580c0184040600d25603006912256030060ff", + "0x61110660300610539403006101392038061003900380610038e03806100", + "0x69120be0300611100e0342e80c01a4481980c018424e580e0184005c00c", + "0x2e80c01a4480600d250030069123980340610e250030060ff00e0349400c", + "0xe700c018404e680e018400b900c0185648400c0185642e80c0184040600d", + "0x611100e0342b80c01a448039d0018034061cf05a0300610105e03006105", + "0x600d24e030069123a20340610e24e030060ff00e0349380c01a4482c80c", + "0xbd00c018414e900d0184382b80c018404b900c0184240600d0ae03006912", + "0x380d24c030069120aa030061113a8038061000540300610b3a60340610e", + "0xeb80c018414eb00e018400ea80e0184000600d24c0300691224c030060ff", + "0x9100c0183fc0380d244030069120a00300611109c030061073b003806100", + "0x60ff00e0349080c01a4482600c0184442500c01841c0600d24403006912", + "0x380d23a030069120900300611108c030061070180349080c01a4489080c", + "0xed00e018400ec80e0184005b80c0184440600d23a0300691223a030060ff", + "0x61011d2030061093b80380610017203006111050030061053b603006101", + "0x61053bc030061013ba0380610000e034ba80c01a4488100c01842c8e00c", + "0x380d206030069120800300611100e0341f00c01a4480f00c0184041100c", + "0x39df0fa0300610b0180348180c01a4480600d07c03006912206030060ff", + "0x615900e78c039e2348030061053c2038061003c0038061000fe030060ff", + "0x600d34a0300691234a030060ff00e034d280c01a4481e00c0184448b00c", + "0x61593ca0340610e348030061093c8030061053c80300611122c03006109", + "0x5980c0184145900c0184145900c018564f300e0184005880c0184145880c", + "0x615916e0300610516e0300615916c0300610516a0300610516803006105", + "0x5d00c0184145d00c0185645c80c0184145c80c0185645c00c0184145c00c", + "0x610517a0300615917803006105178030061591760300610517603006159", + "0x60ff00e034e500c01a4481980c0184441880c01841cf380d0184385e80c", + "0x1780c0184440380d05a030069123d003806100018034e500c01a448e500c", + "0x600d05a03006912018034e700c01a448e700c0183fc0380d39c03006912", + "0x611100e7a80600d2ea030069123d203806100018030060ff01803006107", + "0x600d018660eb80c0183fceb80c018444e200c018414e200c0183fce200c", + "0xed80c01a4481400c0184441300c01841cf600e018400039eb3ae0300610b", + "0x380d03c030069123da03806100018034ed80c01a448ed80c0183fc0380d", + "0x6912018034ef00c01a448ef00c0183fc0380d3bc0300691204403006111", + "0xf200d2ea0300691200e7b80b80d2ea030069120fe030061590180340f00c", + "0x900d3e00340680c01a030038073e00300380700e7bc0f00d2ea03006912", + "0x61c400e080061f00180480600e00e01cf800c00e0340381e02e034699e4", + "0xf800d044030f20070440740e00e3e00301182001a048038230187c0061c4", + "0x61c400e75c061f00180700600e00e01cf800c00e03403826018610ef00c", + "0xf800d0540300f00705476c1400e3e0030169d701a05c0382d0187c00601d", + "0x601d00e0c4061f001876c0601c00e01cf800c00e034039ce0185e01780c", + "0x38073e0030e500c04001c5c9ca01a7c006033018088038330187c006031", + "0x39f00182e00602000e2dc5c00d3e00301c00c04401c1c00c3e003003823", + "0xf800c34e03013007078030f800c16e030ef00734e030f800c172030ef007", + "0x1780c3b601c039f001801c0680700e120039f001a0f0d380d05001cd380c", + "0xf800c00e0b4039a50187c0060073ae01c039f00187780602a00e01cf800c", + "0x383100e0f8061f0018690d280d39c01cd200c3e0030d200c05e01cd200c", + "0x38440187c006103018728039030187c00603e08003419807080030f800c", + "0x61f00187900603800e118061f00180a00600e00e470061f001801c060b9", + "0x240462380480604a0187c0060440182dc0391d0187c00600e0182e003848", + "0x61f00181300603c00e130061f001801cd380700e7c00600701a01c2511d", + "0x39f001801c068072441400688b09c484069f001a130f202801c6940384c", + "0x38550187c00600708001c2980c3e00300383e00e2c8061f001801cd2007", + "0x230070b2030f800c00e470038570187c00600708801c9300c3e003003903", + "0x384a00e174061f001801c8e8070b8030f800c00e120039270187c006007", + "0x600709c01c9480c3e00300392100e4a0061f001801c260070be030f800c", + "0x61f00184a8949280be1742e1270b215c930550a62c81185000e4a8061f0", + "0x60070182e40386d0187c00604e0180e00386b0187c0061210180380392b", + "0x60b200e1c4061f00184ac0612200e1bc061f0018038060b800e4cc061f0", + "0x9d0710de4cc3686b02e154038740187c00602f01814c0393a0187c0061de", + "0x68070ec030401430187c006930018498039300d24bc330640247c006074", + "0x3b80c0b201c3b80c3e0030039d700e01cf800c2860302b80700e7c006007", + "0x2e807298030f800c2960302e00700e7c00607901849c0394b0f2034f800c", + "0x4000c3e00309780c17201c3f80c3e00303e80c0be01c3e80c3e0030a600c", + "0xf800c0d20305c0072a8030f800c0cc0301c007104030f800c0c803007007", + "0xf800c00e03403886108550410800240304300c3e00303f80c16e01c4200c", + "0x6064018038038b10187c00612f0182e4039560187c00607601872803807", + "0x60b700e578061f00181a4060b800e22c061f00181980603800e224061f0", + "0x1780c3b601c039f001801c0680711a578458891620480608d0187c006156", + "0xf800c00e4a00388f0187c0060073ae01c039f00187780602a00e01cf800c", + "0x383100e244061f00185984780d39c01cb300c3e0030b300c05e01cb300c", + "0x39720187c006167018728039670187c00609112603419807126030f800c", + "0x61f00184880603800e254061f00181400600e00e268061f001801c060b9", + "0x21095134048061770187c0061720182dc0389c0187c00600e0182e003842", + "0x39f001876c0612a00e01cf800c39c0309480700e7c00600701a01cbb89c", + "0x38a00187c00600725601c4f00c3e0030039d700e01cf800c3bc03015007", + "0x61f001801c188072f0030f800c140278069ce00e280061f00182800602f", + "0x380c17201cbd80c3e00305200c39401c5200c3e0030bc0a201a0cc038a2", + "0x5c007178030f800c3c80301c00717a030f800c050030070072f4030f800c", + "0x38aa1762f05e97a0240305500c3e0030bd80c16e01c5d80c3e00300700c", + "0x39d700e01cf800c03a0309500700e7c0060260184a4038073e00300380d", + "0x69ce00e2d0061f00182d00602f00e2d0061f001801c32007166030f800c", + "0x5d00c3e00305a8b601a0cc038b60187c00600706201c5a80c3e00305a0b3", + "0xf800c038030070072e2030f800c00e0305c8072ea030f800c174030e5007", + "0xba80c16e01c6080c3e00300700c17001cc200c3e0030f200c07001c5f80c", + "0x61c40184a8038073e00300380d00e61c6098417e5c40900c30e030f800c", + "0xf800c2d0030178072d0030f800c00e4a0038c30187c0060073ae01c039f0", + "0xb080d06601cb080c3e00300383100e320061f00185a06180d39c01cb400c", + "0x39600187c0060070182e4039620187c0060cb018728038cb0187c0060c8", + "0x61f0018038060b800e554061f00180780603800e338061f001805c0600e", + "0x39f001801c038072b833caa8ce2c00480615c0187c0061620182dc038cf", + "0x700700e7c00600701a01c0f01701a7c4f201201a7c00680d01803406007", + "0x71f001808c1000d02401c1180c3e0030e200c38801c1000c3e00300900c", + "0x700700e7c00600701a01c1300c3e4778061f001a088061e400e0880e81c", + "0x71f00180b4eb80d02e01c1680c3e00300e80c38801ceb80c3e00300e00c", + "0xe00700e7c00600701a01ce700c3e60bc061f001a0a80601e00e0a8ed828", + "0xe500d3e00301980c04401c1980c3e00301880c03a01c1880c3e0030ed80c", + "0x69f00180e00602200e0e0061f001801c1180700e7c0061ca018080038b9", + "0x60b7018778039a70187c0060b9018778038073e00305c00c04001c5b8b8", + "0x380739201cf800d07869c0682800e69c061f001869c0602600e0f0061f0", + "0x39d700e01cf800c3bc0301500700e7c00602f01876c038073e00300380d", + "0x69ce00e690061f00186900602f00e690061f001801c1680734a030f800c", + "0x8180c3e00301f04001a0cc038400187c00600706201c1f00c3e0030d21a5", + "0xf800c05003007007238030f800c00e0305c807088030f800c206030e5007", + "0x2200c16e01c8e80c3e00300700c17001c2400c3e0030f200c07001c2300c", + "0xf800c00e69c038073e00300380d00e1288e84808c4700900c094030f800c", + "0xfa04e242034f800d0987901400e34a01c2600c3e00302600c07801c2600c", + "0x61f001801c1f007164030f800c00e690038073e00300380d00e4882800d", + "0x2b80c3e00300384400e498061f001801c818070aa030f800c00e10003853", + "0x385c0187c00600709001c9380c3e00300384600e164061f001801c8e007", + "0x90807250030f800c00e1300385f0187c00600709401c2e80c3e00300391d", + "0x938590ae4982a85316408c28007254030f800c00e138039290187c006007", + "0x2700c07001c3580c3e00309080c01c01c9580c3e00309512925017c2e85c", + "0x910070de030f800c01c0305c007266030f800c00e0305c8070da030f800c", + "0x3a00c3e00301780c0a601c9d00c3e0030ef00c16401c3880c3e00309580c", + "0x9800c24c01c9806925e198320123e00303a13a0e21bc9986d0d605c33007", + "0xeb80700e7c00614301815c038073e00300380d00e1d8061f5286030f800d", + "0x38073e00303c80c24e01ca587901a7c006077018164038770187c006007", + "0x61f00181f40605f00e1f4061f00185300605d00e530061f001852c0605c", + "0x60660180e0038820187c006064018038038800187c00612f0182e40387f", + "0x40012018218061f00181fc060b700e210061f00181a4060b800e550061f0", + "0x9780c17201cab00c3e00303b00c39401c039f001801c0680710c210aa082", + "0x5c007116030f800c0cc0301c007112030f800c0c803007007162030f800c", + "0x388d2bc22c448b10240304680c3e0030ab00c16e01caf00c3e00303480c", + "0x39d700e01cf800c3bc0301500700e7c00602f01876c038073e00300380d", + "0x69ce00e598061f00185980602f00e598061f001801c9400711e030f800c", + "0xb380c3e00304889301a0cc038930187c00600706201c4880c3e0030b308f", + "0xf800c0a003007007134030f800c00e0305c8072e4030f800c2ce030e5007", + "0xb900c16e01c4e00c3e00300700c17001c2100c3e00309100c07001c4a80c", + "0x61ce0184a4038073e00300380d00e5dc4e04212a2680900c2ee030f800c", + "0x61f001801ceb80700e7c0061de0180a8038073e0030ed80c25401c039f0", + "0x60a013c034e7007140030f800c14003017807140030f800c00e4ac0389e", + "0x61ca00e290061f00185e05100d06601c5100c3e00300383100e5e0061f0", + "0x38bd0187c0060280180380397a0187c0060070182e40397b0187c0060a4", + "0x61f00185ec060b700e2ec061f0018038060b800e2f0061f001879006038", + "0x38073e00301300c25201c039f001801c068071542ec5e0bd2f4048060aa", + "0x17807168030f800c00e190038b30187c0060073ae01c039f00180740612a", + "0x5b00c3e00300383100e2d4061f00182d05980d39c01c5a00c3e00305a00c", + "0x60070182e4039750187c0060ba018728038ba0187c0060b516c03419807", + "0x60b800e610061f00187900603800e2fc061f00180700600e00e5c4061f0", + "0x680730e304c20bf2e2048061870187c0061750182dc038c10187c00600e", + "0x600725001c6180c3e0030039d700e01cf800c3880309500700e7c006007", + "0x18807190030f800c2d030c069ce00e5a0061f00185a00602f00e5a0061f0", + "0xb100c3e00306580c39401c6580c3e00306416101a0cc039610187c006007", + "0xf800c03c0301c00719c030f800c02e030070072c0030f800c00e0305c807", + "0x67160024030ae00c3e0030b100c16e01c6780c3e00300700c17001caa80c", + "0xb80d3ec7900900d3e00340680c01a030038073e00300380700e57067955", + "0x61f0018710061c400e080061f00180480600e00e01cf800c00e0340381e", + "0x61f73bc030f800d044030f20070440740e00e3e00301182001a04803823", + "0x61f0018074061c400e75c061f00180700600e00e01cf800c00e03403826", + "0x61f805e030f800d0540300f00705476c1400e3e0030169d701a05c0382d", + "0x61f00180c40601d00e0c4061f001876c0601c00e01cf800c00e034039ce", + "0xf800c00e08c038073e0030e500c04001c5c9ca01a7c00603301808803833", + "0x5c80c3bc01c039f00182e00602000e2dc5c00d3e00301c00c04401c1c00c", + "0x1400734e030f800c34e03013007078030f800c16e030ef00734e030f800c", + "0x38073e00301780c3b601c039f001801c0680700e7e4039f001a0f0d380d", + "0x17807348030f800c00e0b4039a50187c0060073ae01c039f00187780602a", + "0x2000c3e00300383100e0f8061f0018690d280d39c01cd200c3e0030d200c", + "0x60070182e4038440187c006103018728039030187c00603e08003419807", + "0x60b800e120061f00187900603800e118061f00180a00600e00e470061f0", + "0x6807094474240462380480604a0187c0060440182dc0391d0187c00600e", + "0x71a500e130061f00181300603c00e130061f001801cd380700e7c006007", + "0x600734801c039f001801c06807244140069fa09c484069f001a130f2028", + "0xf800c00e40c038550187c00600708001c2980c3e00300383e00e2c8061f0", + "0x61f001801c230070b2030f800c00e470038570187c00600708801c9300c", + "0x2f80c3e00300384a00e174061f001801c8e8070b8030f800c00e12003927", + "0x392a0187c00600709c01c9480c3e00300392100e4a0061f001801c26007", + "0x600e00e4ac061f00184a8949280be1742e1270b215c930550a62c811850", + "0x39330187c0060070182e40386d0187c00604e0180e00386b0187c006121", + "0x61f0018778060b200e1c4061f00184ac0612200e1bc061f0018038060b8", + "0x91f00181d09d0710de4cc3686b02e4bc038740187c00602f01814c0393a", + "0x39f001801c068070ec030fd9430187c006930018498039300d24bc33064", + "0x3c80d3e00303b80c0b201c3b80c3e0030039d700e01cf800c2860302b807", + "0xf800c2980302e807298030f800c2960302e00700e7c00607901849c0394b", + "0x3200c01c01c4000c3e00309780c17201c3f80c3e00303e80c0be01c3e80c", + "0x5b807108030f800c0d20305c0072a8030f800c0cc0301c007104030f800c", + "0x61ca00e01cf800c00e03403886108550410800240304300c3e00303f80c", + "0x38890187c006064018038038b10187c00612f0182e4039560187c006076", + "0x61f0018558060b700e578061f00181a4060b800e22c061f001819806038", + "0x38073e00301780c3b601c039f001801c0680711a578458891620480608d", + "0x178072cc030f800c00e4a00388f0187c0060073ae01c039f00187780602a", + "0x4980c3e00300383100e244061f00185984780d39c01cb300c3e0030b300c", + "0x60070182e4039720187c006167018728039670187c00609112603419807", + "0x60b800e108061f00184880603800e254061f00181400600e00e268061f0", + "0x68072ee27021095134048061770187c0061720182dc0389c0187c00600e", + "0xef00c05401c039f001876c0612a00e01cf800c39c0309480700e7c006007", + "0x60a00180bc038a00187c00600725601c4f00c3e0030039d700e01cf800c", + "0x683300e288061f001801c188072f0030f800c140278069ce00e280061f0", + "0xbd00c3e00300380c17201cbd80c3e00305200c39401c5200c3e0030bc0a2", + "0xf800c01c0305c007178030f800c3c80301c00717a030f800c05003007007", + "0xf800c00e034038aa1762f05e97a0240305500c3e0030bd80c16e01c5d80c", + "0x5980c3e0030039d700e01cf800c03a0309500700e7c0060260184a403807", + "0xf800c1682cc069ce00e2d0061f00182d00602f00e2d0061f001801c32007", + "0x5d00c39401c5d00c3e00305a8b601a0cc038b60187c00600706201c5a80c", + "0x1c00717e030f800c038030070072e2030f800c00e0305c8072ea030f800c", + "0xc380c3e0030ba80c16e01c6080c3e00300700c17001cc200c3e0030f200c", + "0xeb80700e7c0061c40184a8038073e00300380d00e61c6098417e5c40900c", + "0xe70072d0030f800c2d0030178072d0030f800c00e4a0038c30187c006007", + "0x61f0018320b080d06601cb080c3e00300383100e320061f00185a06180d", + "0x6017018038039600187c0060070182e4039620187c0060cb018728038cb", + "0x60b700e33c061f0018038060b800e554061f00180780603800e338061f0", + "0x600d01801c039f001801c038072b833caa8ce2c00480615c0187c006162", + "0xf800c0240300700700e7c00600701a01c0f01701a7f0f201201a7c00680d", + "0x382203a070071f001808c1000d02401c1180c3e0030e200c38801c1000c", + "0xf800c0380300700700e7c00600701a01c1300c3fa778061f001a088061e4", + "0x382a3b60a0071f00180b4eb80d02e01c1680c3e00300e80c38801ceb80c", + "0xf800c3b60300e00700e7c00600701a01ce700c3fc0bc061f001a0a80601e", + "0x602000e2e4e500d3e00301980c04401c1980c3e00301880c03a01c1880c", + "0x1000716e2e0069f00180e00602200e0e0061f001801c1180700e7c0061ca", + "0x383c0187c0060b7018778039a70187c0060b9018778038073e00305c00c", + "0xf800c00e034038073fe01cf800d07869c0682800e69c061f001869c06026", + "0xd280c3e0030039d700e01cf800c3bc0301500700e7c00602f01876c03807", + "0xf800c348694069ce00e690061f00186900602f00e690061f001801c16807", + "0x8180c39401c8180c3e00301f04001a0cc038400187c00600706201c1f00c", + "0x1c00708c030f800c05003007007238030f800c00e0305c807088030f800c", + "0x2500c3e00302200c16e01c8e80c3e00300700c17001c2400c3e0030f200c", + "0x1e007098030f800c00e69c038073e00300380d00e1288e84808c4700900c", + "0x39220a00350004e242034f800d0987901400e34a01c2600c3e00302600c", + "0x384000e14c061f001801c1f007164030f800c00e690038073e00300380d", + "0x600723801c2b80c3e00300384400e498061f001801c818070aa030f800c", + "0xf800c00e4740385c0187c00600709001c9380c3e00300384600e164061f0", + "0x61f001801c90807250030f800c00e1300385f0187c00600709401c2e80c", + "0x9405f0ba170938590ae4982a85316408c28007254030f800c00e13803929", + "0x3680c3e00302700c07001c3580c3e00309080c01c01c9580c3e003095129", + "0xf800c256030910070de030f800c01c0305c007266030f800c00e0305c807", + "0x358170d201c3a00c3e00301780c0a601c9d00c3e0030ef00c16401c3880c", + "0xa180c3e00349800c24c01c9806925e198320123e00303a13a0e21bc9986d", + "0x61f001801ceb80700e7c00614301815c038073e00300380d00e1d806201", + "0x614b018170038073e00303c80c24e01ca587901a7c00607701816403877", + "0x60b900e1fc061f00181f40605f00e1f4061f00185300605d00e530061f0", + "0x39540187c0060660180e0038820187c006064018038038800187c00612f", + "0x430842a820840012018218061f00181fc060b700e210061f00181a4060b8", + "0x5880c3e00309780c17201cab00c3e00303b00c39401c039f001801c06807", + "0xf800c0d20305c007116030f800c0cc0301c007112030f800c0c803007007", + "0xf800c00e0340388d2bc22c448b10240304680c3e0030ab00c16e01caf00c", + "0x4780c3e0030039d700e01cf800c3bc0301500700e7c00602f01876c03807", + "0xf800c2cc23c069ce00e598061f00185980602f00e598061f001801c94007", + "0xb380c39401cb380c3e00304889301a0cc038930187c00600706201c4880c", + "0x1c00712a030f800c0a003007007134030f800c00e0305c8072e4030f800c", + "0xbb80c3e0030b900c16e01c4e00c3e00300700c17001c2100c3e00309100c", + "0x9500700e7c0061ce0184a4038073e00300380d00e5dc4e04212a2680900c", + "0x392b00e278061f001801ceb80700e7c0061de0180a8038073e0030ed80c", + "0x39780187c0060a013c034e7007140030f800c14003017807140030f800c", + "0x61f0018290061ca00e290061f00185e05100d06601c5100c3e003003831", + "0x61e40180e0038bd0187c0060280180380397a0187c0060070182e40397b", + "0xbd0120182a8061f00185ec060b700e2ec061f0018038060b800e2f0061f0", + "0x601d0184a8038073e00301300c25201c039f001801c068071542ec5e0bd", + "0xf800c16803017807168030f800c00e190038b30187c0060073ae01c039f0", + "0x5b00d06601c5b00c3e00300383100e2d4061f00182d05980d39c01c5a00c", + "0x39710187c0060070182e4039750187c0060ba018728038ba0187c0060b5", + "0x61f0018038060b800e610061f00187900603800e2fc061f00180700600e", + "0x39f001801c0680730e304c20bf2e2048061870187c0061750182dc038c1", + "0x39680187c00600725001c6180c3e0030039d700e01cf800c38803095007", + "0x61f001801c18807190030f800c2d030c069ce00e5a0061f00185a00602f", + "0x380c17201cb100c3e00306580c39401c6580c3e00306416101a0cc03961", + "0x5c0072aa030f800c03c0301c00719c030f800c02e030070072c0030f800c", + "0x395c19e55467160024030ae00c3e0030b100c16e01c6780c3e00300700c", + "0x380d00e05cf200d404048e200d3e00340600701a030038073e003003807", + "0x602200e070061f00180780601d00e078061f00180380601c00e01cf800c", + "0x11007040030f800c00e08c038073e00300e80c04001c1101d01a7c00601c", + "0x1300c3e00301100c3bc01c039f001808c0602000e7781180d3e00301000c", + "0xf800c3880300700704c030f800c04c03013007050030f800c3bc030ef007", + "0x60073ae01c039f001801c0680700e80c039f001a0a01300d05001ce200c", + "0xed80d39c01c1500c3e00301500c05e01c1500c3e00300382d00e76c061f0", + "0x382f0187c0061d705a0341980705a030f800c00e0c4039d70187c00602a", + "0x61f00180480603800e0c4061f00187100600e00e738061f00180bc061ca", + "0xe5033062710060b90187c0061ce0182dc039ca0187c00600d0182e003833", + "0x1c00c3e00301c00c07801c1c00c3e0030039a700e01cf800c00e034038b9", + "0x38073e00300380d00e0f0d380d4082dc5c00d3e00341c012388038d2807", + "0x8180707c030f800c00e100039a40187c00600707c01cd280c3e0030039a4", + "0x384600e110061f001801c8e007206030f800c00e110038400187c006007", + "0x600709401c2400c3e00300391d00e118061f001801c24007238030f800c", + "0xf800c00e1380384c0187c00600724201c2500c3e00300384c00e474061f0", + "0x2700c3e00309084c094474240462381108184007c690d28230a001c9080c", + "0xf800c1700300700700e7c0060500181ac039220a0034f800c09c03098007", + "0x9100c24401c9380c3e00300680c17001c2c80c3e00305b80c07001c2b80c", + "0x9300c26601c930550a62c8e21f0018170938590ae710368070b8030f800c", + "0x37807250030f800c00e75c038073e00300380d00e17c062050ba030f800d", + "0x39f00184a80613a00e4ac9500d3e00309480c0e201c9480c3e00302e80c", + "0x6066250034e70070cc030f800c0c8030a18070c8030f800c2560303a007", + "0x605c00e01cf800c0d2030938072601a4069f00184bc0605900e4bc061f0", + "0x39330187c00606d01817c0386d0187c00606b0181740386b0187c006130", + "0x61f0018154060b800e1c4061f001814c0603800e1bc061f00182c80600e", + "0x38073e00300380d00e1d09d0710de710060740187c0061330182dc0393a", + "0x61f001814c0603800e1d8061f00182c80600e00e50c061f001817c061ca", + "0x3c8770ec7100614b0187c0061430182dc038790187c0060550182e003877", + "0x387d0187c00600725001ca600c3e0030039d700e01cf800c00e0340394b", + "0x61f001801c188070fe030f800c0fa530069ce00e1f4061f00181f40602f", + "0xd380c01c01caa00c3e00304100c39401c4100c3e00303f88001a0cc03880", + "0x5b8072ac030f800c01a0305c00710c030f800c0780301c007108030f800c", + "0x700c25401c039f001801c06807162558430843880305880c3e0030aa00c", + "0x608b0180bc0388b0187c00600725001c4480c3e0030039d700e01cf800c", + "0x683300e234061f001801c188072bc030f800c116224069ce00e22c061f0", + "0x4880c3e0030f200c01c01cb300c3e00304780c39401c4780c3e0030af08d", + "0xf800c2cc0305b8072ce030f800c01a0305c007126030f800c02e0301c007", + "0x69f001a0380600d01801c039f001801c038072e459c49891388030b900c", + "0x1c007046030f800c3c80300700700e7c00600701a01c0e01e01a8180b9e4", + "0xf800c04c7781180e0ec01c1300c3e00300900c38801cef00c3e00300b80c", + "0x38073e00300380d00e76c06207050030f800d0400303b8070400880e80e", + "0x380d00e0bc0620805a030f800d3ae030a58073ae0a8069f00180a006079", + "0x602200e0c4061f00187380601d00e738061f00180a80601c00e01cf800c", + "0x11007172030f800c00e08c038073e00301980c04001ce503301a7c006031", + "0x5b80c3e0030e500c3bc01c039f00180e00602000e2e01c00d3e00305c80c", + "0x69a716e0341400716e030f800c16e0301300734e030f800c170030ef007", + "0xf800c00e75c038073e00301680c29801c039f001801c0680700e824039f0", + "0xd283c01a738039a50187c0061a50180bc039a50187c00600705a01c1e00c", + "0xe5007080030f800c3480f80683300e0f8061f001801c18807348030f800c", + "0x8e00c3e00300e80c01c01c2200c3e00300380c17201c8180c3e00302000c", + "0xf800c3880305c007090030f800c0440301c00708c030f800c01a0303e807", + "0x600701a01c2511d0901188e0443c80302500c3e00308180c16e01c8e80c", + "0x1101d01c6940384c0187c00604c0180f00384c0187c00600734e01c039f0", + "0x61f001801cd200700e7c00600701a01c9105001a8282712101a7c00684c", + "0x9300c3e00300390300e154061f001801c200070a6030f800c00e0f8038b2", + "0x39270187c00600708c01c2c80c3e00300391c00e15c061f001801c22007", + "0x260070be030f800c00e1280385d0187c00600723a01c2e00c3e003003848", + "0x1185000e4a8061f001801c27007252030f800c00e484039280187c006007", + "0x612b0184c00392b0187c00612a2524a02f85d0b849c2c85724c154298b2", + "0x603800e1bc061f00184840600e00e01cf800c0c8030358070cc190069f0", + "0x38740187c00600d0181f40393a0187c0060070182e4038710187c00604e", + "0x61f00180b40607f00e1d8061f00181980612200e50c061f0018710060b8", + "0x998072661b4359300d24bcf21f00181dc3b1430e84e83886f02e20003877", + "0xa600c3e0030039d700e01cf800c00e0340394b01882c3c80c3e00349980c", + "0x607f0184e8038800fe034f800c0fa030388070fa030f800c0f203037807", + "0xa600d39c01caa00c3e00304100c28601c4100c3e00304000c0e801c039f0", + "0x38073e00304300c24e01cab08601a7c006084018164038840187c006154", + "0x61f00182240605f00e224061f00182c40605d00e2c4061f00185580605c", + "0x606b0181f40388d0187c00612f0180380395e0187c0061300182e40388b", + "0x60b700e244061f00181b4060b800e598061f00181a40603800e23c061f0", + "0x61ca00e01cf800c00e034038931225984788d2bc790060930187c00608b", + "0x389a0187c00612f018038039720187c0061300182e4039670187c00614b", + "0x61f00181b4060b800e108061f00181a40603800e254061f00181ac0607d", + "0xf800c00e034039771381084a89a2e4790061770187c0061670182dc0389c", + "0x5000c3e00300392800e278061f001801ceb80700e7c00602d01853003807", + "0xf800c00e0c4039780187c0060a013c034e7007140030f800c14003017807", + "0x60b900e5ec061f0018290061ca00e290061f00185e05100d06601c5100c", + "0x38bc0187c00600d0181f4038bd0187c0060500180380397a0187c006007", + "0x61f00185ec060b700e2a8061f0018710060b800e2ec061f001848806038", + "0x39f00180bc0612900e01cf800c00e034038b31542ec5e0bd2f4790060b3", + "0x38b50187c0060070c801c5a00c3e0030039d700e01cf800c05403095007", + "0x61f001801c1880716c030f800c16a2d0069ce00e2d4061f00182d40602f", + "0x380c17201cb880c3e0030ba80c39401cba80c3e00305b0ba01a0cc038ba", + "0x1c007182030f800c01a0303e807308030f800c03a0300700717e030f800c", + "0xb400c3e0030b880c16e01c6180c3e0030e200c17001cc380c3e00301100c", + "0x6400c3e0030ed80c39401c039f001801c068072d030cc38c13082fcf200c", + "0xf800c01a0303e807196030f800c03a030070072c2030f800c00e0305c807", + "0x6400c16e01c6700c3e0030e200c17001cb000c3e00301100c07001cb100c", + "0x900c25401c039f001801c068072aa338b0162196584f200c2aa030f800c", + "0x615c0180bc0395c0187c00600725001c6780c3e0030039d700e01cf800c", + "0x683300e568061f001801c188071a2030f800c2b833c069ce00e570061f0", + "0xa900c3e00300380c17201cad80c3e00306980c39401c6980c3e00306895a", + "0xf800c0380301c0071b0030f800c01a0303e8071ac030f800c03c03007007", + "0x6b1523c8030a980c3e0030ad80c16e01ca780c3e0030e200c17001ca880c", + "0x6a0c02e790069f001a0380600d01801c039f001801c038072a653ca88d8", + "0xf800c02e0301c007046030f800c3c80300700700e7c00600701a01c0e01e", + "0x1002203a038f800c04c7781180e0ec01c1300c3e00300900c38801cef00c", + "0x60280181e4038073e00300380d00e76c0620d050030f800d0400303b807", + "0x38073e00300380d00e0bc0620e05a030f800d3ae030a58073ae0a8069f0", + "0x69f00180c40602200e0c4061f00187380601d00e738061f00180a80601c", + "0xf800c17203011007172030f800c00e08c038073e00301980c04001ce5033", + "0x5c00c3bc01c5b80c3e0030e500c3bc01c039f00180e00602000e2e01c00d", + "0x3a0f00e7c0069a716e0341400716e030f800c16e0301300734e030f800c", + "0x16807078030f800c00e75c038073e00301680c29801c039f001801c06807", + "0xd200c3e0030d283c01a738039a50187c0061a50180bc039a50187c006007", + "0xf800c080030e5007080030f800c3480f80683300e0f8061f001801c18807", + "0x680c0fa01c8e00c3e00300e80c01c01c2200c3e00300380c17201c8180c", + "0x5b80723a030f800c3880305c007090030f800c0440301c00708c030f800c", + "0xd380700e7c00600701a01c2511d0901188e0443c80302500c3e00308180c", + "0x69f001a1301101d01c6940384c0187c00604c0180f00384c0187c006007", + "0x383e00e2c8061f001801cd200700e7c00600701a01c9105001a84027121", + "0x600708801c9300c3e00300390300e154061f001801c200070a6030f800c", + "0xf800c00e120039270187c00600708c01c2c80c3e00300391c00e15c061f0", + "0x61f001801c260070be030f800c00e1280385d0187c00600723a01c2e00c", + "0x930550a62c81185000e4a8061f001801c27007252030f800c00e48403928", + "0x386d0187c0061210180380392b0187c00612a2524a02f85d0b849c2c857", + "0x61f00180340607d00e1bc061f001801c060b900e4cc061f001813806038", + "0x602d0181fc038740187c00612b0184880393a0187c0061c40182e003871", + "0x359300d24bc330643c87c0061430e84e83886f2661b40b88200e50c061f0", + "0x607601815c038073e00300380d00e1dc062110ec030f800d0d603093007", + "0xa580c24e01ca614b01a7c006079018164038790187c0060073ae01c039f0", + "0x605f00e1fc061f00181f40605d00e1f4061f00185300605c00e01cf800c", + "0x39540187c006064018038038820187c00612f0182e4038800187c00607f", + "0x61f00184c0060b800e218061f00181980603800e210061f00181a40607d", + "0xf800c00e034038b12ac21842154104790060b10187c0060800182dc03956", + "0x60640180380388b0187c00612f0182e4038890187c00607701872803807", + "0x60b800e23c061f00181980603800e234061f00181a40607d00e578061f0", + "0x38912cc23c4695e116790060910187c0060890182dc039660187c006130", + "0x392800e24c061f001801ceb80700e7c00602d018530038073e00300380d", + "0x39720187c006167126034e70072ce030f800c2ce030178072ce030f800c", + "0x61f0018254061ca00e254061f00185c84d00d06601c4d00c3e003003831", + "0x600d0181f4039770187c0060500180380389c0187c0060070182e403842", + "0x60b700e5e0061f0018710060b800e280061f00184880603800e278061f0", + "0x612900e01cf800c00e034038a22f02804f177138790060a20187c006042", + "0x60070c801c5200c3e0030039d700e01cf800c0540309500700e7c00602f", + "0x188072f4030f800c2f6290069ce00e5ec061f00185ec0602f00e5ec061f0", + "0x5d80c3e00305e00c39401c5e00c3e0030bd0bd01a0cc038bd0187c006007", + "0xf800c01a0303e807166030f800c03a03007007154030f800c00e0305c807", + "0x5d80c16e01c5b00c3e0030e200c17001c5a80c3e00301100c07001c5a00c", + "0xed80c39401c039f001801c068071742d85a8b41662a8f200c174030f800c", + "0x3e80717e030f800c03a030070072e2030f800c00e0305c8072ea030f800c", + "0xc380c3e0030e200c17001c6080c3e00301100c07001cc200c3e00300680c", + "0x39f001801c0680718661c6098417e5c4f200c186030f800c2ea0305b807", + "0x38c80187c00600725001cb400c3e0030039d700e01cf800c02403095007", + "0x61f001801c188072c2030f800c1905a0069ce00e320061f00183200602f", + "0x380c17201cb000c3e0030b100c39401cb100c3e0030b08cb01a0cc038cb", + "0x1c00719e030f800c01a0303e8072aa030f800c03c0300700719c030f800c", + "0xad00c3e0030b000c16e01c6880c3e0030e200c17001cae00c3e00300e00c", + "0x69f001a0380600d01801c039f001801c038072b4344ae0cf2aa338f200c", + "0x1c007046030f800c3c80300700700e7c00600701a01c0e01e01a8480b9e4", + "0xf800c04c7781180e0ec01c1300c3e00300900c38801cef00c3e00300b80c", + "0x38073e00300380d00e76c06213050030f800d0400303b8070400880e80e", + "0x380d00e0bc0621405a030f800d3ae030a58073ae0a8069f00180a006079", + "0x602200e0c4061f00187380601d00e738061f00180a80601c00e01cf800c", + "0x11007172030f800c00e08c038073e00301980c04001ce503301a7c006031", + "0x5b80c3e0030e500c3bc01c039f00180e00602000e2e01c00d3e00305c80c", + "0x69a716e0341400716e030f800c16e0301300734e030f800c170030ef007", + "0xf800c00e75c038073e00301680c29801c039f001801c0680700e854039f0", + "0xd283c01a738039a50187c0061a50180bc039a50187c00600705a01c1e00c", + "0xe5007080030f800c3480f80683300e0f8061f001801c18807348030f800c", + "0x8e00c3e00300e80c01c01c2200c3e00300380c17201c8180c3e00302000c", + "0xf800c3880305c007090030f800c0440301c00708c030f800c01a0303e807", + "0x600701a01c2511d0901188e0443c80302500c3e00308180c16e01c8e80c", + "0x1101d01c6940384c0187c00604c0180f00384c0187c00600734e01c039f0", + "0x61f001801cd200700e7c00600701a01c9105001a8582712101a7c00684c", + "0x9300c3e00300390300e154061f001801c200070a6030f800c00e0f8038b2", + "0x39270187c00600708c01c2c80c3e00300391c00e15c061f001801c22007", + "0x260070be030f800c00e1280385d0187c00600723a01c2e00c3e003003848", + "0x1185000e4a8061f001801c27007252030f800c00e484039280187c006007", + "0x61210180380392b0187c00612a2524a02f85d0b849c2c85724c154298b2", + "0x607d00e1bc061f001801c060b900e4cc061f00181380603800e1b4061f0", + "0x38740187c00612b0184880393a0187c0061c40182e0038710187c00600d", + "0x330643c87c0061430e84e83886f2661b40b95400e50c061f00180b40607f", + "0x38073e00300380d00e1dc062170ec030f800d0d6030930070d64c03492f", + "0xa614b01a7c006079018164038790187c0060073ae01c039f00181d806057", + "0x61f00181f40605d00e1f4061f00185300605c00e01cf800c29603093807", + "0x6064018038038820187c00612f0182e4038800187c00607f01817c0387f", + "0x60b800e218061f00181980603800e210061f00181a40607d00e550061f0", + "0x38b12ac21842154104790060b10187c0060800182dc039560187c006130", + "0x388b0187c00612f0182e4038890187c006077018728038073e00300380d", + "0x61f00181980603800e234061f00181a40607d00e578061f00181900600e", + "0x4695e116790060910187c0060890182dc039660187c0061300182e00388f", + "0x61f001801ceb80700e7c00602d018530038073e00300380d00e244b308f", + "0x6167126034e70072ce030f800c2ce030178072ce030f800c00e4a003893", + "0x61ca00e254061f00185c84d00d06601c4d00c3e00300383100e5c8061f0", + "0x39770187c0060500180380389c0187c0060070182e4038420187c006095", + "0x61f0018710060b800e280061f00184880603800e278061f00180340607d", + "0xf800c00e034038a22f02804f177138790060a20187c0060420182dc03978", + "0x5200c3e0030039d700e01cf800c0540309500700e7c00602f0184a403807", + "0xf800c2f6290069ce00e5ec061f00185ec0602f00e5ec061f001801c32007", + "0x5e00c39401c5e00c3e0030bd0bd01a0cc038bd0187c00600706201cbd00c", + "0x3e807166030f800c03a03007007154030f800c00e0305c807176030f800c", + "0x5b00c3e0030e200c17001c5a80c3e00301100c07001c5a00c3e00300680c", + "0x39f001801c068071742d85a8b41662a8f200c174030f800c1760305b807", + "0xf800c03a030070072e2030f800c00e0305c8072ea030f800c3b6030e5007", + "0xe200c17001c6080c3e00301100c07001cc200c3e00300680c0fa01c5f80c", + "0x680718661c6098417e5c4f200c186030f800c2ea0305b80730e030f800c", + "0x600725001cb400c3e0030039d700e01cf800c0240309500700e7c006007", + "0x188072c2030f800c1905a0069ce00e320061f00183200602f00e320061f0", + "0xb000c3e0030b100c39401cb100c3e0030b08cb01a0cc038cb0187c006007", + "0xf800c01a0303e8072aa030f800c03c0300700719c030f800c00e0305c807", + "0xb000c16e01c6880c3e0030e200c17001cae00c3e00300e00c07001c6780c", + "0x600d01801c039f001801c038072b4344ae0cf2aa338f200c2b4030f800c", + "0xf800c3c80300700700e7c00600701a01c0e01e01a8600b9e401a7c00680e", + "0x1180e0ec01c1300c3e00300900c38801cef00c3e00300b80c07001c1180c", + "0x380d00e76c06219050030f800d0400303b8070400880e80e3e0030131de", + "0x621a05a030f800d3ae030a58073ae0a8069f00180a00607900e01cf800c", + "0x61f00187380601d00e738061f00180a80601c00e01cf800c00e0340382f", + "0xf800c00e08c038073e00301980c04001ce503301a7c00603101808803831", + "0xe500c3bc01c039f00180e00602000e2e01c00d3e00305c80c04401c5c80c", + "0x1400716e030f800c16e0301300734e030f800c170030ef00716e030f800c", + "0x38073e00301680c29801c039f001801c0680700e86c039f001a69c5b80d", + "0x39a50187c0061a50180bc039a50187c00600705a01c1e00c3e0030039d7", + "0xf800c3480f80683300e0f8061f001801c18807348030f800c34a0f0069ce", + "0xe80c01c01c2200c3e00300380c17201c8180c3e00302000c39401c2000c", + "0x5c007090030f800c0440301c00708c030f800c01a0303e807238030f800c", + "0x2511d0901188e0443c80302500c3e00308180c16e01c8e80c3e0030e200c", + "0x384c0187c00604c0180f00384c0187c00600734e01c039f001801c06807", + "0xd200700e7c00600701a01c9105001a8702712101a7c00684c044074071a5", + "0x390300e154061f001801c200070a6030f800c00e0f8038b20187c006007", + "0x600708c01c2c80c3e00300391c00e15c061f001801c2200724c030f800c", + "0xf800c00e1280385d0187c00600723a01c2e00c3e00300384800e49c061f0", + "0x61f001801c27007252030f800c00e484039280187c00600709801c2f80c", + "0x392b0187c00612a2524a02f85d0b849c2c85724c154298b20461400392a", + "0x61f001801c060b900e4cc061f00181380603800e1b4061f00184840600e", + "0x612b0184880393a0187c0061c40182e0038710187c00600d0181f40386f", + "0x61430e84e83886f2661b40b88400e50c061f00180b40607f00e1d0061f0", + "0x380d00e1dc0621d0ec030f800d0d6030930070d64c03492f0cc190f21f0", + "0x6079018164038790187c0060073ae01c039f00181d80605700e01cf800c", + "0x605d00e1f4061f00185300605c00e01cf800c2960309380729852c069f0", + "0x38820187c00612f0182e4038800187c00607f01817c0387f0187c00607d", + "0x61f00181980603800e210061f00181a40607d00e550061f00181900600e", + "0x42154104790060b10187c0060800182dc039560187c0061300182e003886", + "0x612f0182e4038890187c006077018728038073e00300380d00e2c4ab086", + "0x603800e234061f00181a40607d00e578061f00181900600e00e22c061f0", + "0x60910187c0060890182dc039660187c0061300182e00388f0187c006066", + "0xeb80700e7c00602d018530038073e00300380d00e244b308f11a578459e4", + "0xe70072ce030f800c2ce030178072ce030f800c00e4a0038930187c006007", + "0x61f00185c84d00d06601c4d00c3e00300383100e5c8061f001859c4980d", + "0x60500180380389c0187c0060070182e4038420187c00609501872803895", + "0x60b800e280061f00184880603800e278061f00180340607d00e5dc061f0", + "0x38a22f02804f177138790060a20187c0060420182dc039780187c0061c4", + "0x39d700e01cf800c0540309500700e7c00602f0184a4038073e00300380d", + "0x69ce00e5ec061f00185ec0602f00e5ec061f001801c32007148030f800c", + "0x5e00c3e0030bd0bd01a0cc038bd0187c00600706201cbd00c3e0030bd8a4", + "0xf800c03a03007007154030f800c00e0305c807176030f800c178030e5007", + "0xe200c17001c5a80c3e00301100c07001c5a00c3e00300680c0fa01c5980c", + "0x68071742d85a8b41662a8f200c174030f800c1760305b80716c030f800c", + "0x70072e2030f800c00e0305c8072ea030f800c3b6030e500700e7c006007", + "0x6080c3e00301100c07001cc200c3e00300680c0fa01c5f80c3e00300e80c", + "0x6098417e5c4f200c186030f800c2ea0305b80730e030f800c3880305c007", + "0xb400c3e0030039d700e01cf800c0240309500700e7c00600701a01c61987", + "0xf800c1905a0069ce00e320061f00183200602f00e320061f001801c94007", + "0xb100c39401cb100c3e0030b08cb01a0cc038cb0187c00600706201cb080c", + "0x3e8072aa030f800c03c0300700719c030f800c00e0305c8072c0030f800c", + "0x6880c3e0030e200c17001cae00c3e00300e00c07001c6780c3e00300680c", + "0x39f001801c038072b4344ae0cf2aa338f200c2b4030f800c2c00305b807", + "0xe200700e7c00600701a01c0f01701a878f201201a7c00680d01803406007", + "0x61f00180480600e00e0740e00d3e00301100c10c01c1100c3e0030e200c", + "0x900c01c01c039f001801c068070460310f8200187c00681d01855803812", + "0x131de01c7c00602a3b603409007054030f800c038030e20073b6030f800c", + "0x1300c03801c039f001801c0680705a031101d70187c00682801879003828", + "0x3833062034f800c39c0301100739c030f800c05e0300e80705e030f800c", + "0x1c0b901a7c0061ca018088039ca0187c00600704601c039f00180c406020", + "0x61f00180e0061de00e2e0061f00180cc061de00e01cf800c17203010007", + "0x380d00e01d108073e00345b8b801a0a0038b80187c0060b8018098038b7", + "0xf800c00e75c038073e00301000c16201c039f001875c0602a00e01cf800c", + "0x1e1a701a7380383c0187c00603c0180bc0383c0187c00600705a01cd380c", + "0xe500707c030f800c34a6900683300e690061f001801c1880734a030f800c", + "0x2200c3e0030ef00c01c01c8180c3e00300380c17201c2000c3e00301f00c", + "0xf800c0800305b80708c030f800c01c0305c007238030f800c3c80301c007", + "0x8e80c3e0030039a700e01cf800c00e0340384808c470221030240302400c", + "0x9080d4441302500d3e00348e9e43bc038d280723a030f800c23a0301e007", + "0x39220187c00600707c01c2800c3e0030039a400e01cf800c00e0340384e", + "0x8e0070aa030f800c00e110038530187c00600720601c5900c3e003003840", + "0x391d00e164061f001801c240070ae030f800c00e118039260187c006007", + "0x600724201c2e80c3e00300384c00e170061f001801c2500724e030f800c", + "0x938590ae4982a853164488280230a001c9400c3e00300384e00e17c061f0", + "0x612a0181ac0392b254034f800c25203098007252030f800c25017c2e85c", + "0x380c17201c3680c3e00302600c07001c3580c3e00302500c01c01c039f0", + "0x178070e2030f800c256030910070de030f800c01c0305c007266030f800c", + "0x3886f2661b43581711201c3a00c3e0030eb80c16401c9d00c3e00301000c", + "0x387601888ca180c3e00349800c11601c9806925e198320123e00303a13a", + "0x468070f2030f800c286030af0070ee030f800c00e75c038073e00300380d", + "0x4000c3e0030a600c2cc01c039f001852c0608f00e530a580d3e00303c80c", + "0x3f80c25201c3f87d01a7c00608210003449807104030f800c0ee03048807", + "0x605c00e01cf800c2a803093807108550069f00181f40605900e01cf800c", + "0x38b10187c00615601817c039560187c006086018174038860187c006084", + "0x61f00181980603800e22c061f00181900600e00e224061f00184bc060b9", + "0xaf08b1120480608f0187c0060b10182dc0388d0187c0060690182e00395e", + "0xf800c25e0305c8072cc030f800c0ec030e500700e7c00600701a01c4788d", + "0x3480c17001cb380c3e00303300c07001c4980c3e00303200c01c01c4880c", + "0x380d00e268b91671262440900c134030f800c2cc0305b8072e4030f800c", + "0xf800c00e75c038073e00301000c16201c039f001875c0602a00e01cf800c", + "0x2109501a738038420187c0060420180bc038420187c00600725001c4a80c", + "0xe500713c030f800c1385dc0683300e5dc061f001801c18807138030f800c", + "0x5100c3e00309080c01c01cbc00c3e00300380c17201c5000c3e00304f00c", + "0xf800c1400305b8072f6030f800c01c0305c007148030f800c09c0301c007", + "0x39f00180b40612900e01cf800c00e0340397a2f629051178024030bd00c", + "0x38bd0187c0060073ae01c039f0018080060b100e01cf800c04c03095007", + "0x61f00182f05e80d39c01c5e00c3e00305e00c05e01c5e00c3e00300392b", + "0x60b3018728038b30187c0060bb15403419807154030f800c00e0c4038bb", + "0x603800e2d8061f00187780600e00e2d4061f001801c060b900e2d0061f0", + "0x61710187c0060b40182dc039750187c00600e0182e0038ba0187c0061e4", + "0x612a00e01cf800c0460309480700e7c00600701a01cb89751742d85a812", + "0xc200c05e01cc200c3e00300386400e2fc061f001801ceb80700e7c00601c", + "0x1980730e030f800c00e0c4038c10187c00618417e034e7007308030f800c", + "0x61f001801c060b900e5a0061f001830c061ca00e30c061f0018304c380d", + "0x600e0182e0038cb0187c0061e40180e0039610187c006012018038038c8", + "0x600701a01cb016219658464012018580061f00185a0060b700e588061f0", + "0x61f001801c9400719c030f800c00e75c038073e0030e200c25401c039f0", + "0x600706201c6780c3e0030aa8ce01a738039550187c0061550180bc03955", + "0x5c8072b4030f800c1a2030e50071a2030f800c19e5700683300e570061f0", + "0xa900c3e00300f00c07001cad80c3e00300b80c01c01c6980c3e00300380c", + "0x6b1522b634c0900c1b0030f800c2b40305b8071ac030f800c01c0305c007", + "0x381e02e035121e4024034f800d01a0300680c00e01cf800c00e01c038d8", + "0xe81c01a7c006022018218038220187c0061c4018710038073e00300380d", + "0x380d00e08c06225040030f800d03a030ab007024030f800c02403007007", + "0x602200e098061f00187780601d00e778061f00180700601c00e01cf800c", + "0x11007054030f800c00e08c038073e00301400c04001ced82801a7c006026", + "0x1780c3e0030ed80c3bc01c039f001875c0602000e0b4eb80d3e00301500c", + "0x69ce05e0341400705e030f800c05e0301300739c030f800c05a030ef007", + "0xf800c00e75c038073e00301000c16201c039f001801c0680700e898039f0", + "0x1983101a738038330187c0060330180bc038330187c00600705a01c1880c", + "0xe5007070030f800c3942e40683300e2e4061f001801c18807394030f800c", + "0xd380c3e00300900c01c01c5b80c3e00300380c17201c5c00c3e00301c00c", + "0xf800c1700305b80734a030f800c01c0305c007078030f800c3c80301c007", + "0x1f00c3e0030039a700e01cf800c00e034039a434a0f0d38b7024030d200c", + "0x2200d44e40c2000d3e00341f1e4024038d280707c030f800c07c0301e007", + "0x38480187c00600707c01c2300c3e0030039a400e01cf800c00e0340391c", + "0x8e007098030f800c00e1100384a0187c00600720601c8e80c3e003003840", + "0x391d00e140061f001801c2400709c030f800c00e118039210187c006007", + "0x600724201c2980c3e00300384c00e2c8061f001801c25007244030f800c", + "0x9105009c4842604a23a120230230a001c9300c3e00300384e00e154061f0", + "0x60590181ac039270b2034f800c0ae030980070ae030f800c24c154298b2", + "0x380c17201c9580c3e00308180c07001c9500c3e00302000c01c01c039f0", + "0x1780725e030f800c24e030910070cc030f800c01c0305c0070c8030f800c", + "0x9405f0ba170091f00181a4978660c84ac951e42ce01c3480c3e00301000c", + "0x60073ae01c039f001801c068070d6031141300187c0069290185c803929", + "0x588070e21bc069f00184cc0609500e4cc061f00184c00609a00e1b4061f0", + "0x38760187c00606d018244039430187c0060710180bc038073e00303780c", + "0xf800c2740302c80700e7c0060740184a403874274034f800c0ec50c06842", + "0xa580c0ba01ca580c3e00303c80c0b801c039f00181dc0612700e1e43b80d", + "0x70070fe030f800c0be0305c8070fa030f800c2980302f807298030f800c", + "0xaa00c3e00309400c17001c4100c3e00302e80c07001c4000c3e00302e00c", + "0x38073e00300380d00e210aa0821001fc0900c108030f800c0fa0305b807", + "0x61f00181700600e00e558061f001817c060b900e218061f00181ac061ca", + "0x60860182dc0388b0187c0061280182e0038890187c00605d0180e0038b1", + "0xf800c0400305880700e7c00600701a01caf08b1122c4ab012018578061f0", + "0x61f001823c0602f00e23c061f001801c9400711a030f800c00e75c03807", + "0xb309101a0cc038910187c00600706201cb300c3e00304788d01a7380388f", + "0x70072e4030f800c00e0305c8072ce030f800c126030e5007126030f800c", + "0x2100c3e00300700c17001c4a80c3e00308e00c07001c4d00c3e00302200c", + "0x38073e00300380d00e270210951345c80900c138030f800c2ce0305b807", + "0x320072ee030f800c00e75c038073e00300e00c25401c039f001808c06129", + "0x5000c3e00304f17701a7380389e0187c00609e0180bc0389e0187c006007", + "0xf800c144030e5007144030f800c1405e00683300e5e0061f001801c18807", + "0xf200c07001cbd00c3e00300900c01c01cbd80c3e00300380c17201c5200c", + "0x900c176030f800c1480305b807178030f800c01c0305c00717a030f800c", + "0x60073ae01c039f00187100612a00e01cf800c00e034038bb1782f4bd17b", + "0x5500d39c01c5980c3e00305980c05e01c5980c3e00300392800e2a8061f0", + "0x38b60187c0060b416a0341980716a030f800c00e0c4038b40187c0060b3", + "0x61f001805c0600e00e5d4061f001801c060b900e2e8061f00182d8061ca", + "0x60ba0182dc039840187c00600e0182e0038bf0187c00601e0180e003971", + "0x680d0180340600700e7c00600700e01c6098417e5c4ba812018304061f0", + "0x1000c3e00300900c01c01c039f001801c0680703c05c06a293c8048069f0", + "0x61e400e0880e81c01c7c00602304003409007046030f800c388030e2007", + "0x1400c3e00300e80c03801c039f001801c0680704c031151de0187c006822", + "0x602a018080039d7054034f800c3b6030110073b6030f800c0500300e807", + "0x1780c04001ce702f01a7c00602d0180880382d0187c00600704601c039f0", + "0x602600e0cc061f0018738061de00e0c4061f001875c061de00e01cf800c", + "0x38073e00300380d00e01d158073e00341983101a0a0038310187c006031", + "0x17807172030f800c00e0b4039ca0187c0060073ae01c039f00187780602a", + "0x5c00c3e00300383100e0e0061f00182e4e500d39c01c5c80c3e00305c80c", + "0x60070182e4039a70187c0060b7018728038b70187c00603817003419807", + "0x60b800e690061f00187900603800e694061f00180700600e00e0f0061f0", + "0x68070800f8d21a5078048060400187c0061a70182dc0383e0187c00600e", + "0x71a500e40c061f001840c0603c00e40c061f001801cd380700e7c006007", + "0x600734801c039f001801c0680709011806a2c238110069f001a40cf201c", + "0xf800c00e40c0384c0187c00600708001c2500c3e00300383e00e474061f0", + "0x61f001801c230070a0030f800c00e4700384e0187c00600708801c9080c", + "0x2a80c3e00300384a00e14c061f001801c8e807164030f800c00e12003922", + "0x38590187c00600709c01c2b80c3e00300392100e498061f001801c26007", + "0x613000e49c061f00181642b9260aa14c591220a01389084c09447411850", + "0x38640187c006044018038038073e00302e00c0d601c2e85c01a7c006127", + "0x61f0018038060b800e4bc061f001801c060b900e198061f001847006038", + "0x330643c82700386b0187c0061de0182c8039300187c00605d01848803869", + "0x622d0da030f800d256030458072564a8949280be048f800c0d64c03492f", + "0x3880c3e00303680c2bc01c3780c3e0030039d700e01cf800c00e03403933", + "0xf800c0e8030b300700e7c00613a01823c03874274034f800c0e203046807", + "0x948070ec50c069f00181e43b80d12601c3c80c3e00303780c12201c3b80c", + "0x38073e0030a580c24e01ca614b01a7c006143018164038073e00303b00c", + "0x61f00181fc0605f00e1fc061f00181f40605d00e1f4061f00185300605c", + "0x61280180e0039540187c00605f018038038820187c0061290182e403880", + "0x41012018558061f0018200060b700e218061f00184a8060b800e210061f0", + "0x9480c17201c5880c3e00309980c39401c039f001801c068072ac21842154", + "0x5c0072bc030f800c2500301c007116030f800c0be03007007112030f800c", + "0x388f11a578458890240304780c3e00305880c16e01c4680c3e00309500c", + "0x392800e598061f001801ceb80700e7c0061de0180a8038073e00300380d", + "0x38930187c0060912cc034e7007122030f800c12203017807122030f800c", + "0x61f00185c8061ca00e5c8061f001824cb380d06601cb380c3e003003831", + "0x60480180e0038420187c006046018038038950187c0060070182e40389a", + "0x4a812018278061f0018268060b700e5dc061f0018038060b800e270061f0", + "0x601d0184a8038073e00301300c25201c039f001801c0680713c5dc4e042", + "0xf800c2f0030178072f0030f800c00e190038a00187c0060073ae01c039f0", + "0x5200d06601c5200c3e00300383100e288061f00185e05000d39c01cbc00c", + "0x38bd0187c0060070182e40397a0187c00617b0187280397b0187c0060a2", + "0x61f0018038060b800e2ec061f00187900603800e2f0061f00180700600e", + "0x39f001801c068071662a85d8bc17a048060b30187c00617a0182dc038aa", + "0x38b50187c00600725001c5a00c3e0030039d700e01cf800c38803095007", + "0x61f001801c1880716c030f800c16a2d0069ce00e2d4061f00182d40602f", + "0x380c17201cb880c3e0030ba80c39401cba80c3e00305b0ba01a0cc038ba", + "0x5c007182030f800c03c0301c007308030f800c02e0300700717e030f800c", + "0x38c330e304c20bf0240306180c3e0030b880c16e01cc380c3e00300700c", + "0x380d00e0780b80d45c7900900d3e00340680c01a030038073e003003807", + "0x681200e08c061f0018710061c400e080061f00180480600e00e01cf800c", + "0x380d00e0980622f3bc030f800d044030f20070440740e00e3e003011820", + "0x602200e76c061f00180a00601d00e0a0061f00180740601c00e01cf800c", + "0x1100705a030f800c00e08c038073e00301500c04001ceb82a01a7c0061db", + "0x1880c3e0030eb80c3bc01c039f00180bc0602000e7381780d3e00301680c", + "0x683306203414007062030f800c06203013007066030f800c39c030ef007", + "0xf800c00e75c038073e0030ef00c05401c039f001801c0680700e8c0039f0", + "0x5c9ca01a738038b90187c0060b90180bc038b90187c00600705a01ce500c", + "0xe500716e030f800c0702e00683300e2e0061f001801c18807070030f800c", + "0xd280c3e00300e00c01c01c1e00c3e00300380c17201cd380c3e00305b80c", + "0xf800c34e0305b80707c030f800c01c0305c007348030f800c3c80301c007", + "0x8180c3e0030039a700e01cf800c00e0340384007c690d283c0240302000c", + "0x2300d4624702200d3e0034819e4038038d2807206030f800c2060301e007", + "0x384a0187c00600707c01c8e80c3e0030039a400e01cf800c00e03403848", + "0x8e00709c030f800c00e110039210187c00600720601c2600c3e003003840", + "0x391d00e2c8061f001801c24007244030f800c00e118038500187c006007", + "0x600724201c9300c3e00300384c00e154061f001801c250070a6030f800c", + "0x298b2244140271210981288e8230a001c2c80c3e00300384e00e15c061f0", + "0x605c0181ac0385d0b8034f800c24e0309800724e030f800c0b215c93055", + "0x380c17201c3300c3e00308e00c07001c3200c3e00302200c01c01c039f0", + "0x59007260030f800c0ba030910070d2030f800c01c0305c00725e030f800c", + "0x9512925017c091f00181ac9806925e198321e42ee01c3580c3e0030ef00c", + "0x60073ae01c039f001801c068072660311906d0187c00692b01822c0392b", + "0x478070e84e8069f00181c40608d00e1c4061f00181b40615e00e1bc061f0", + "0x38790187c00606f018244038770187c006074018598038073e00309d00c", + "0xf800c2860302c80700e7c0060760184a403876286034f800c0f21dc06893", + "0x3e80c0ba01c3e80c3e0030a600c0b801c039f001852c0612700e530a580d", + "0x7007104030f800c2520305c807100030f800c0fe0302f8070fe030f800c", + "0x4300c3e00309500c17001c4200c3e00309400c07001caa00c3e00302f80c", + "0x38073e00300380d00e558430842a82080900c2ac030f800c1000305b807", + "0x61f001817c0600e00e224061f00184a4060b900e2c4061f00184cc061ca", + "0x60b10182dc0388d0187c00612a0182e00395e0187c0061280180e00388b", + "0xf800c3bc0301500700e7c00600701a01c4788d2bc22c4481201823c061f0", + "0x61f00182440602f00e244061f001801c940072cc030f800c00e75c03807", + "0x4996701a0cc039670187c00600706201c4980c3e00304896601a73803891", + "0x700712a030f800c00e0305c807134030f800c2e4030e50072e4030f800c", + "0xbb80c3e00300700c17001c4e00c3e00302400c07001c2100c3e00302300c", + "0x38073e00300380d00e278bb89c0842540900c13c030f800c1340305b807", + "0x32007140030f800c00e75c038073e00300e80c25401c039f001809806129", + "0x5100c3e0030bc0a001a738039780187c0061780180bc039780187c006007", + "0xf800c2f6030e50072f6030f800c1442900683300e290061f001801c18807", + "0xf200c07001c5e00c3e00300e00c01c01c5e80c3e00300380c17201cbd00c", + "0x900c166030f800c2f40305b807154030f800c01c0305c007176030f800c", + "0x60073ae01c039f00187100612a00e01cf800c00e034038b31542ec5e0bd", + "0x5a00d39c01c5a80c3e00305a80c05e01c5a80c3e00300392800e2d0061f0", + "0x39750187c0060b617403419807174030f800c00e0c4038b60187c0060b5", + "0x61f001805c0600e00e2fc061f001801c060b900e5c4061f00185d4061ca", + "0x61710182dc039870187c00600e0182e0038c10187c00601e0180e003984", + "0x680d0180340600700e7c00600700e01c619871826105f81201830c061f0", + "0x1000c3e00300900c01c01c039f001801c0680703c05c06a333c8048069f0", + "0x61e400e0880e81c01c7c00602304003409007046030f800c388030e2007", + "0x1400c3e00300e80c03801c039f001801c0680704c0311a1de0187c006822", + "0x602a018080039d7054034f800c3b6030110073b6030f800c0500300e807", + "0x1780c04001ce702f01a7c00602d0180880382d0187c00600704601c039f0", + "0x602600e0cc061f0018738061de00e0c4061f001875c061de00e01cf800c", + "0x38073e00300380d00e01d1a8073e00341983101a0a0038310187c006031", + "0x17807172030f800c00e0b4039ca0187c0060073ae01c039f00187780602a", + "0x5c00c3e00300383100e0e0061f00182e4e500d39c01c5c80c3e00305c80c", + "0x60070182e4039a70187c0060b7018728038b70187c00603817003419807", + "0x60b800e690061f00187900603800e694061f00180700600e00e0f0061f0", + "0x68070800f8d21a5078048060400187c0061a70182dc0383e0187c00600e", + "0x71a500e40c061f001840c0603c00e40c061f001801cd380700e7c006007", + "0x600734801c039f001801c0680709011806a36238110069f001a40cf201c", + "0xf800c00e40c0384c0187c00600708001c2500c3e00300383e00e474061f0", + "0x61f001801c230070a0030f800c00e4700384e0187c00600708801c9080c", + "0x2a80c3e00300384a00e14c061f001801c8e807164030f800c00e12003922", + "0x38590187c00600709c01c2b80c3e00300392100e498061f001801c26007", + "0x600e00e49c061f00181642b9260aa14c591220a01389084c09447411850", + "0x38640187c0060070182e40392b0187c00611c0180e00392a0187c006044", + "0x61f0018778060b200e4bc061f001849c0612200e198061f0018038060b8", + "0x9480c24c01c949280be1742e0123e00303492f0cc1909592a3c827803869", + "0xeb80700e7c00613001815c038073e00300380d00e1ac06237260030f800d", + "0x38073e00309980c24e01c3793301a7c00606d0181640386d0187c006007", + "0x61f00184e80605f00e4e8061f00181c40605d00e1c4061f00181bc0605c", + "0x605d0180e0038760187c00605c018038039430187c00605f0182e403874", + "0xa181201852c061f00181d0060b700e1e4061f00184a0060b800e1dc061f0", + "0x2f80c17201ca600c3e00303580c39401c039f001801c068072961e43b876", + "0x5c007100030f800c0ba0301c0070fe030f800c0b8030070070fa030f800c", + "0x39541042003f87d024030aa00c3e0030a600c16e01c4100c3e00309400c", + "0x392800e210061f001801ceb80700e7c0061de0180a8038073e00300380d", + "0x39560187c006086108034e700710c030f800c10c0301780710c030f800c", + "0x61f0018224061ca00e224061f00185585880d06601c5880c3e003003831", + "0x60480180e00388d0187c0060460180380395e0187c0060070182e40388b", + "0xaf012018244061f001822c060b700e598061f0018038060b800e23c061f0", + "0x601d0184a8038073e00301300c25201c039f001801c068071225984788d", + "0xf800c2ce030178072ce030f800c00e190038930187c0060073ae01c039f0", + "0x4d00d06601c4d00c3e00300383100e5c8061f001859c4980d39c01cb380c", + "0x389c0187c0060070182e4038420187c006095018728038950187c006172", + "0x61f0018038060b800e278061f00187900603800e5dc061f00180700600e", + "0x39f001801c068072f02804f177138048061780187c0060420182dc038a0", + "0x38a40187c00600725001c5100c3e0030039d700e01cf800c38803095007", + "0x61f001801c188072f6030f800c148288069ce00e290061f00182900602f", + "0x380c17201c5e00c3e00305e80c39401c5e80c3e0030bd97a01a0cc0397a", + "0x5c007166030f800c03c0301c007154030f800c02e03007007176030f800c", + "0x38b51682cc550bb0240305a80c3e00305e00c16e01c5a00c3e00300700c", + "0x380d00e0780b80d4707900900d3e00340680c01a030038073e003003807", + "0x681200e08c061f0018710061c400e080061f00180480600e00e01cf800c", + "0x380d00e098062393bc030f800d044030f20070440740e00e3e003011820", + "0x602200e76c061f00180a00601d00e0a0061f00180740601c00e01cf800c", + "0x1100705a030f800c00e08c038073e00301500c04001ceb82a01a7c0061db", + "0x1880c3e0030eb80c3bc01c039f00180bc0602000e7381780d3e00301680c", + "0x683306203414007062030f800c06203013007066030f800c39c030ef007", + "0xf800c00e75c038073e0030ef00c05401c039f001801c0680700e8e8039f0", + "0x5c9ca01a738038b90187c0060b90180bc038b90187c00600705a01ce500c", + "0xe500716e030f800c0702e00683300e2e0061f001801c18807070030f800c", + "0xd280c3e00300e00c01c01c1e00c3e00300380c17201cd380c3e00305b80c", + "0xf800c34e0305b80707c030f800c01c0305c007348030f800c3c80301c007", + "0x8180c3e0030039a700e01cf800c00e0340384007c690d283c0240302000c", + "0x2300d4764702200d3e0034819e4038038d2807206030f800c2060301e007", + "0x384a0187c00600707c01c8e80c3e0030039a400e01cf800c00e03403848", + "0x8e00709c030f800c00e110039210187c00600720601c2600c3e003003840", + "0x391d00e2c8061f001801c24007244030f800c00e118038500187c006007", + "0x600724201c9300c3e00300384c00e154061f001801c250070a6030f800c", + "0x298b2244140271210981288e8230a001c2c80c3e00300384e00e15c061f0", + "0xf800c2380301c007254030f800c0880300700724e030f800c0b215c93055", + "0x9380c24401c3300c3e00300700c17001c3200c3e00300380c17201c9580c", + "0x606925e1983212b254790500070d2030f800c3bc0305900725e030f800c", + "0x600701a01c3580c4784c0061f001a4a40612600e4a49405f0ba170091f0", + "0xf800c0da0302c8070da030f800c00e75c038073e00309800c0ae01c039f0", + "0x3880c0ba01c3880c3e00303780c0b801c039f00184cc0612700e1bc9980d", + "0x7007286030f800c0be0305c8070e8030f800c2740302f807274030f800c", + "0x3c80c3e00309400c17001c3b80c3e00302e80c07001c3b00c3e00302e00c", + "0x38073e00300380d00e52c3c8770ec50c0900c296030f800c0e80305b807", + "0x61f00181700600e00e1f4061f001817c060b900e530061f00181ac061ca", + "0x614c0182dc038820187c0061280182e0038800187c00605d0180e00387f", + "0xf800c3bc0301500700e7c00600701a01caa0821001fc3e812018550061f0", + "0x61f00182180602f00e218061f001801c94007108030f800c00e75c03807", + "0xab0b101a0cc038b10187c00600706201cab00c3e00304308401a73803886", + "0x70072bc030f800c00e0305c807116030f800c112030e5007112030f800c", + "0xb300c3e00300700c17001c4780c3e00302400c07001c4680c3e00302300c", + "0x38073e00300380d00e244b308f11a5780900c122030f800c1160305b807", + "0x32007126030f800c00e75c038073e00300e80c25401c039f001809806129", + "0xb900c3e0030b389301a738039670187c0061670180bc039670187c006007", + "0xf800c12a030e500712a030f800c2e42680683300e268061f001801c18807", + "0xf200c07001cbb80c3e00300e00c01c01c4e00c3e00300380c17201c2100c", + "0x900c2f0030f800c0840305b807140030f800c01c0305c00713c030f800c", + "0x60073ae01c039f00187100612a00e01cf800c00e03403978140278bb89c", + "0x5100d39c01c5200c3e00305200c05e01c5200c3e00300392800e288061f0", + "0x38bd0187c00617b2f4034198072f4030f800c00e0c40397b0187c0060a4", + "0x61f001805c0600e00e2ec061f001801c060b900e2f0061f00182f4061ca", + "0x60bc0182dc038b40187c00600e0182e0038b30187c00601e0180e0038aa", + "0x680d0180340600700e7c00600700e01c5a8b41662a85d8120182d4061f0", + "0x1000c3e00300900c01c01c039f001801c0680703c05c06a3d3c8048069f0", + "0x61e400e0880e81c01c7c00602304003409007046030f800c388030e2007", + "0x1400c3e00300e80c03801c039f001801c0680704c0311f1de0187c006822", + "0x602a018080039d7054034f800c3b6030110073b6030f800c0500300e807", + "0x1780c04001ce702f01a7c00602d0180880382d0187c00600704601c039f0", + "0x602600e0cc061f0018738061de00e0c4061f001875c061de00e01cf800c", + "0x38073e00300380d00e01d1f8073e00341983101a0a0038310187c006031", + "0x17807172030f800c00e0b4039ca0187c0060073ae01c039f00187780602a", + "0x5c00c3e00300383100e0e0061f00182e4e500d39c01c5c80c3e00305c80c", + "0x60070182e4039a70187c0060b7018728038b70187c00603817003419807", + "0x60b800e690061f00187900603800e694061f00180700600e00e0f0061f0", + "0x68070800f8d21a5078048060400187c0061a70182dc0383e0187c00600e", + "0x71a500e40c061f001840c0603c00e40c061f001801cd380700e7c006007", + "0x600734801c039f001801c0680709011806a40238110069f001a40cf201c", + "0xf800c00e40c0384c0187c00600708001c2500c3e00300383e00e474061f0", + "0x61f001801c230070a0030f800c00e4700384e0187c00600708801c9080c", + "0x2a80c3e00300384a00e14c061f001801c8e807164030f800c00e12003922", + "0x38590187c00600709c01c2b80c3e00300392100e498061f001801c26007", + "0x600e00e49c061f00181642b9260aa14c591220a01389084c09447411850", + "0x38640187c0060070182e40392b0187c00611c0180e00392a0187c006044", + "0x61f0018778060b200e4bc061f001849c0612200e198061f0018038060b8", + "0x9480c24c01c949280be1742e0123e00303492f0cc1909592a3c85e003869", + "0xeb80700e7c00613001815c038073e00300380d00e1ac06241260030f800d", + "0x38073e00309980c24e01c3793301a7c00606d0181640386d0187c006007", + "0x61f00184e80605f00e4e8061f00181c40605d00e1c4061f00181bc0605c", + "0x605d0180e0038760187c00605c018038039430187c00605f0182e403874", + "0xa181201852c061f00181d0060b700e1e4061f00184a0060b800e1dc061f0", + "0x2f80c17201ca600c3e00303580c39401c039f001801c068072961e43b876", + "0x5c007100030f800c0ba0301c0070fe030f800c0b8030070070fa030f800c", + "0x39541042003f87d024030aa00c3e0030a600c16e01c4100c3e00309400c", + "0x392800e210061f001801ceb80700e7c0061de0180a8038073e00300380d", + "0x39560187c006086108034e700710c030f800c10c0301780710c030f800c", + "0x61f0018224061ca00e224061f00185585880d06601c5880c3e003003831", + "0x60480180e00388d0187c0060460180380395e0187c0060070182e40388b", + "0xaf012018244061f001822c060b700e598061f0018038060b800e23c061f0", + "0x601d0184a8038073e00301300c25201c039f001801c068071225984788d", + "0xf800c2ce030178072ce030f800c00e190038930187c0060073ae01c039f0", + "0x4d00d06601c4d00c3e00300383100e5c8061f001859c4980d39c01cb380c", + "0x389c0187c0060070182e4038420187c006095018728038950187c006172", + "0x61f0018038060b800e278061f00187900603800e5dc061f00180700600e", + "0x39f001801c068072f02804f177138048061780187c0060420182dc038a0", + "0x38a40187c00600725001c5100c3e0030039d700e01cf800c38803095007", + "0x61f001801c188072f6030f800c148288069ce00e290061f00182900602f", + "0x380c17201c5e00c3e00305e80c39401c5e80c3e0030bd97a01a0cc0397a", + "0x5c007166030f800c03c0301c007154030f800c02e03007007176030f800c", + "0x38b51682cc550bb0240305a80c3e00305e00c16e01c5a00c3e00300700c", + "0x380d00e0780b80d4847900900d3e00340680c01a030038073e003003807", + "0x681200e08c061f0018710061c400e080061f00180480600e00e01cf800c", + "0x380d00e098062433bc030f800d044030f20070440740e00e3e003011820", + "0x602200e76c061f00180a00601d00e0a0061f00180740601c00e01cf800c", + "0x1100705a030f800c00e08c038073e00301500c04001ceb82a01a7c0061db", + "0x1880c3e0030eb80c3bc01c039f00180bc0602000e7381780d3e00301680c", + "0x683306203414007062030f800c06203013007066030f800c39c030ef007", + "0xf800c00e75c038073e0030ef00c05401c039f001801c0680700e910039f0", + "0x5c9ca01a738038b90187c0060b90180bc038b90187c00600705a01ce500c", + "0xe500716e030f800c0702e00683300e2e0061f001801c18807070030f800c", + "0xd280c3e00300e00c01c01c1e00c3e00300380c17201cd380c3e00305b80c", + "0xf800c34e0305b80707c030f800c01c0305c007348030f800c3c80301c007", + "0x8180c3e0030039a700e01cf800c00e0340384007c690d283c0240302000c", + "0x2300d48a4702200d3e0034819e4038038d2807206030f800c2060301e007", + "0x384a0187c00600707c01c8e80c3e0030039a400e01cf800c00e03403848", + "0x8e00709c030f800c00e110039210187c00600720601c2600c3e003003840", + "0x391d00e2c8061f001801c24007244030f800c00e118038500187c006007", + "0x600724201c9300c3e00300384c00e154061f001801c250070a6030f800c", + "0x298b2244140271210981288e8230a001c2c80c3e00300384e00e15c061f0", + "0xf800c2380301c007254030f800c0880300700724e030f800c0b215c93055", + "0x9380c24401c3300c3e00300700c17001c3200c3e00300380c17201c9580c", + "0x606925e1983212b254790510070d2030f800c3bc0305900725e030f800c", + "0x600701a01c3580c48c4c0061f001a4a40612600e4a49405f0ba170091f0", + "0xf800c0da0302c8070da030f800c00e75c038073e00309800c0ae01c039f0", + "0x3880c0ba01c3880c3e00303780c0b801c039f00184cc0612700e1bc9980d", + "0x7007286030f800c0be0305c8070e8030f800c2740302f807274030f800c", + "0x3c80c3e00309400c17001c3b80c3e00302e80c07001c3b00c3e00302e00c", + "0x38073e00300380d00e52c3c8770ec50c0900c296030f800c0e80305b807", + "0x61f00181700600e00e1f4061f001817c060b900e530061f00181ac061ca", + "0x614c0182dc038820187c0061280182e0038800187c00605d0180e00387f", + "0xf800c3bc0301500700e7c00600701a01caa0821001fc3e812018550061f0", + "0x61f00182180602f00e218061f001801c94007108030f800c00e75c03807", + "0xab0b101a0cc038b10187c00600706201cab00c3e00304308401a73803886", + "0x70072bc030f800c00e0305c807116030f800c112030e5007112030f800c", + "0xb300c3e00300700c17001c4780c3e00302400c07001c4680c3e00302300c", + "0x38073e00300380d00e244b308f11a5780900c122030f800c1160305b807", + "0x32007126030f800c00e75c038073e00300e80c25401c039f001809806129", + "0xb900c3e0030b389301a738039670187c0061670180bc039670187c006007", + "0xf800c12a030e500712a030f800c2e42680683300e268061f001801c18807", + "0xf200c07001cbb80c3e00300e00c01c01c4e00c3e00300380c17201c2100c", + "0x900c2f0030f800c0840305b807140030f800c01c0305c00713c030f800c", + "0x60073ae01c039f00187100612a00e01cf800c00e03403978140278bb89c", + "0x5100d39c01c5200c3e00305200c05e01c5200c3e00300392800e288061f0", + "0x38bd0187c00617b2f4034198072f4030f800c00e0c40397b0187c0060a4", + "0x61f001805c0600e00e2ec061f001801c060b900e2f0061f00182f4061ca", + "0x60bc0182dc038b40187c00600e0182e0038b30187c00601e0180e0038aa", + "0x680d0180340600700e7c00600700e01c5a8b41662a85d8120182d4061f0", + "0x1100c3e0030e200c38801c039f001801c0680703c05c06a473c8048069f0", + "0x681d018558038120187c0060120180380381d038034f800c04403043007", + "0xe8073bc030f800c0380300e00700e7c00600701a01c1180c490080061f0", + "0x39f00180a00602000e76c1400d3e00301300c04401c1300c3e0030ef00c", + "0xf800c3ae0301000705a75c069f00180a80602200e0a8061f001801c11807", + "0x602f018098039ce0187c00602d0187780382f0187c0061db01877803807", + "0x60b100e01cf800c00e0340380749201cf800d39c0bc0682800e0bc061f0", + "0x1980c05e01c1980c3e00300382d00e0c4061f001801ceb80700e7c006020", + "0x19807172030f800c00e0c4039ca0187c006033062034e7007066030f800c", + "0x61f001801c060b900e2e0061f00180e0061ca00e0e0061f00187285c80d", + "0x600e0182e00383c0187c0061e40180e0039a70187c006012018038038b7", + "0x600701a01cd21a507869c5b812018690061f00182e0060b700e694061f0", + "0xf201201c6940383e0187c00603e0180f00383e0187c00600734e01c039f0", + "0x61f001801cd200700e7c00600701a01c8e04401a9288184001a7c00683e", + "0x2500c3e00300390300e474061f001801c20007090030f800c00e0f803846", + "0x384e0187c00600708c01c9080c3e00300391c00e130061f001801c22007", + "0x26007164030f800c00e128039220187c00600723a01c2800c3e003003848", + "0x1185000e498061f001801c270070aa030f800c00e484038530187c006007", + "0x6040018038038570187c0061260aa14c591220a01389084c09447424046", + "0x60b800e4a8061f001801c060b900e4a4061f001840c0603800e4a0061f0", + "0x38660187c0060200180bc038640187c0060570184880392b0187c00600e", + "0xf800d0be030930070be1742e1270b2048f800c0cc1909592a2524a0f20a4", + "0x60073ae01c039f00184bc0605700e01cf800c00e0340386901892c9780c", + "0x605c00e01cf800c0d6030938070da1ac069f00184c00605900e4c0061f0", + "0x38710187c00606f01817c0386f0187c006133018174039330187c00606d", + "0x61f001849c0603800e1d0061f00181640600e00e4e8061f0018170060b9", + "0xa1874274048060770187c0060710182dc038760187c00605d0182e003943", + "0xf800c0b80305c8070f2030f800c0d2030e500700e7c00600701a01c3b876", + "0x2e80c17001c3e80c3e00309380c07001ca600c3e00302c80c01c01ca580c", + "0x380d00e2003f87d29852c0900c100030f800c0f20305b8070fe030f800c", + "0xf800c00e4a0038820187c0060073ae01c039f0018080060b100e01cf800c", + "0x383100e210061f00185504100d39c01caa00c3e0030aa00c05e01caa00c", + "0x38b10187c006156018728039560187c00608410c0341980710c030f800c", + "0x61f00184700603800e22c061f00181100600e00e224061f001801c060b9", + "0xaf08b1120480608f0187c0060b10182dc0388d0187c00600e0182e00395e", + "0x39f00180700612a00e01cf800c0460309480700e7c00600701a01c4788d", + "0x4880c3e00304880c05e01c4880c3e00300386400e598061f001801ceb807", + "0x60932ce034198072ce030f800c00e0c4038930187c0060912cc034e7007", + "0x600e00e254061f001801c060b900e268061f00185c8061ca00e5c8061f0", + "0x39770187c00600e0182e00389c0187c0061e40180e0038420187c006012", + "0x9500700e7c00600701a01c4f1771381084a812018278061f0018268060b7", + "0x602f00e5e0061f001801c94007140030f800c00e75c038073e0030e200c", + "0x38a40187c00600706201c5100c3e0030bc0a001a738039780187c006178", + "0xf800c00e0305c8072f4030f800c2f6030e50072f6030f800c14429006833", + "0x700c17001c5d80c3e00300f00c07001c5e00c3e00300b80c01c01c5e80c", + "0x380700e2cc550bb1782f40900c166030f800c2f40305b807154030f800c", + "0xf800c00e034038173c803526012388034f800d01801c0680c00e01cf800c", + "0x601c0180880381c0187c00601e0180740381e0187c00600e01807003807", + "0x1000c04401c1000c3e00300382300e01cf800c03a03010007044074069f0", + "0xef00704c030f800c044030ef00700e7c006023018080039de046034f800c", + "0xe200c3e0030e200c01c01c1300c3e00301300c04c01c1400c3e0030ef00c", + "0x61f001801ceb80700e7c00600701a01c03a4d00e7c00682804c03414007", + "0x602a3b6034e7007054030f800c05403017807054030f800c00e0b4039db", + "0x61ca00e0bc061f001875c1680d06601c1680c3e00300383100e75c061f0", + "0x38330187c0060120180e0038310187c0061c4018038039ce0187c00602f", + "0x38b93940cc189c40182e4061f0018738060b700e728061f0018034060b8", + "0xd2807070030f800c0700301e007070030f800c00e69c038073e00300380d", + "0x39a400e01cf800c00e0340383c34e035270b7170034f800d070048e200e", + "0x600720601c1f00c3e00300384000e690061f001801c1f00734a030f800c", + "0xf800c00e118038440187c00600723801c8180c3e00300384400e100061f0", + "0x61f001801c25007090030f800c00e474038460187c00600709001c8e00c", + "0x9080c3e00300384e00e130061f001801c90807094030f800c00e1300391d", + "0x9800709c030f800c2421302511d0901188e0442061001f1a434a08c28007", + "0x9300c3e00305b80c07001c039f00181400606b00e4882800d3e00302700c", + "0x2c85724c038bd8070b2030f800c244030910070ae030f800c01a0305c007", + "0x9380c3e00342a80c2e401c5c00c3e00305c00c01c01c2a853164038f800c", + "0xf800c24e0304d0070ba030f800c00e75c038073e00300380d00e1700624f", + "0x9480c05e01c039f00184a0060b100e4a49400d3e00302f80c12a01c2f80c", + "0x9592a01a7c0060660c8034210070cc030f800c0ba030488070c8030f800c", + "0xf800c25e030938070d24bc069f00184a80605900e01cf800c25603094807", + "0x606b01817c0386b0187c006130018174039300187c00606901817003807", + "0x60b800e1bc061f00182c80603800e4cc061f00182e00600e00e1b4061f0", + "0x380d00e4e83886f2667100613a0187c00606d0182dc038710187c006053", + "0x603800e50c061f00182e00600e00e1d0061f0018170061ca00e01cf800c", + "0x60790187c0060740182dc038770187c0060530182e0038760187c0060b2", + "0x600725001ca580c3e0030039d700e01cf800c00e034038790ee1d8a19c4", + "0x188070fa030f800c29852c069ce00e530061f00185300602f00e530061f0", + "0x4100c3e00304000c39401c4000c3e00303e87f01a0cc0387f0187c006007", + "0xf800c01a0305c007108030f800c0780301c0072a8030f800c34e03007007", + "0x39f001801c068072ac21842154388030ab00c3e00304100c16e01c4300c", + "0x38890187c00600725001c5880c3e0030039d700e01cf800c01c03095007", + "0x61f001801c18807116030f800c1122c4069ce00e224061f00182240602f", + "0xf200c01c01c4780c3e00304680c39401c4680c3e00304595e01a0cc0395e", + "0x5b807126030f800c01a0305c007122030f800c02e0301c0072cc030f800c", + "0x380d01801c039f001801c038072ce24c48966388030b380c3e00304780c", + "0xf800c01c0300e00700e7c00600701a01c0b9e401a940091c401a7c00680c", + "0x602000e0880e80d3e00300e00c04401c0e00c3e00300f00c03a01c0f00c", + "0x100073bc08c069f00180800602200e080061f001801c1180700e7c00601d", + "0x38280187c0061de018778038260187c006022018778038073e00301180c", + "0xf800d0500980682800e710061f00187100600e00e098061f001809806026", + "0x61f001801c168073b6030f800c00e75c038073e00300380d00e01d28807", + "0x600706201ceb80c3e0030151db01a7380382a0187c00602a0180bc0382a", + "0x700739c030f800c05e030e500705e030f800c3ae0b40683300e0b4061f0", + "0xe500c3e00300680c17001c1980c3e00300900c07001c1880c3e0030e200c", + "0xd380700e7c00600701a01c5c9ca0660c4e200c172030f800c39c0305b807", + "0x69f001a0e0091c401c694038380187c0060380180f0038380187c006007", + "0x383e00e694061f001801cd200700e7c00600701a01c1e1a701a9485b8b8", + "0x600708801c2000c3e00300390300e0f8061f001801c20007348030f800c", + "0xf800c00e1200391c0187c00600708c01c2200c3e00300391c00e40c061f0", + "0x61f001801c2600723a030f800c00e128038480187c00600723a01c2300c", + "0x2003e3486941185000e484061f001801c27007098030f800c00e4840384a", + "0x9105001a7c00604e0184c00384e0187c0061210981288e84808c47022103", + "0x61f0018034060b800e498061f00182dc0603800e01cf800c0a003035807", + "0x38550a62c8071f00181642b92601c5e8038590187c00612201848803857", + "0x600701a01c2e00c4a649c061f001a1540617200e2e0061f00182e00600e", + "0x605f0182540385f0187c0061270182680385d0187c0060073ae01c039f0", + "0x609100e190061f00184a40602f00e01cf800c250030588072524a0069f0", + "0x39f00184ac0612900e4ac9500d3e00303306401a108038660187c00605d", + "0xf800c0d20302e00700e7c00612f01849c0386925e034f800c2540302c807", + "0x5c00c01c01c3680c3e00303580c0be01c3580c3e00309800c0ba01c9800c", + "0x5b8070e2030f800c0a60305c0070de030f800c1640301c007266030f800c", + "0x2e00c39401c039f001801c068072741c4379333880309d00c3e00303680c", + "0x5c0070ec030f800c1640301c007286030f800c170030070070e8030f800c", + "0x68070f21dc3b1433880303c80c3e00303a00c16e01c3b80c3e00302980c", + "0xa600c05e01ca600c3e00300392800e52c061f001801ceb80700e7c006007", + "0x198070fe030f800c00e0c40387d0187c00614c296034e7007298030f800c", + "0x61f001869c0600e00e208061f0018200061ca00e200061f00181f43f80d", + "0x60820182dc038860187c00600d0182e0038840187c00603c0180e003954", + "0x39f00180380612a00e01cf800c00e0340395610c210aa1c4018558061f0", + "0x4480c3e00304480c05e01c4480c3e00300392800e2c4061f001801ceb807", + "0x608b2bc034198072bc030f800c00e0c40388b0187c006089162034e7007", + "0x603800e598061f00187900600e00e23c061f0018234061ca00e234061f0", + "0x61670187c00608f0182dc038930187c00600d0182e0038910187c006017", + "0x12a012388034f800d01801c0680c00e01cf800c00e01c03967126244b31c4", + "0x601e0180740381e0187c00600e018070038073e00300380d00e05cf200d", + "0x382300e01cf800c03a03010007044074069f00180700602200e070061f0", + "0xef00700e7c006023018080039de046034f800c04003011007040030f800c", + "0x1300c3e00301300c04c01c1400c3e0030ef00c3bc01c1300c3e00301100c", + "0x600701a01c03a5500e7c00682804c03414007388030f800c38803007007", + "0xf800c05403017807054030f800c00e0b4039db0187c0060073ae01c039f0", + "0x1680d06601c1680c3e00300383100e75c061f00180a8ed80d39c01c1500c", + "0x38310187c0061c4018038039ce0187c00602f0187280382f0187c0061d7", + "0x61f0018738060b700e728061f0018034060b800e0cc061f001804806038", + "0x1e007070030f800c00e69c038073e00300380d00e2e4e5033062710060b9", + "0x383c34e0352b0b7170034f800d070048e200e34a01c1c00c3e00301c00c", + "0x384000e690061f001801c1f00734a030f800c00e690038073e00300380d", + "0x600723801c8180c3e00300384400e100061f001801c8180707c030f800c", + "0xf800c00e474038460187c00600709001c8e00c3e00300384600e110061f0", + "0x61f001801c90807094030f800c00e1300391d0187c00600709401c2400c", + "0x2511d0901188e0442061001f1a434a08c28007242030f800c00e1380384c", + "0x39f00181400606b00e4882800d3e00302700c26001c2700c3e00309084c", + "0xf800c01a0305c0070b2030f800c16e0301c0070ae030f800c17003007007", + "0x298b23887c00605c24e1642b9c417a01c2e00c3e00309100c24401c9380c", + "0x39d700e01cf800c00e0340385f01895c2e80c3e00349300c17801c93055", + "0x392b254034f800c25203055007252030f800c0ba0305d807250030f800c", + "0x3300c3e00303200c16a01c3200c3e00309580c16801c039f00184a8060b3", + "0x3480c24e01c9806901a7c00612f0181640392f0187c006066250034e7007", + "0x605f00e1b4061f00181ac0605d00e1ac061f00184c00605c00e01cf800c", + "0x38710187c0060530180e00386f0187c0060b2018038039330187c00606d", + "0x38742741c4379c40181d0061f00184cc060b700e4e8061f0018154060b8", + "0x38760187c0060b2018038039430187c00605f018728038073e00300380d", + "0x61f001850c060b700e1e4061f0018154060b800e1dc061f001814c06038", + "0x94007298030f800c00e75c038073e00300380d00e52c3c8770ec7100614b", + "0x3f80c3e00303e94c01a7380387d0187c00607d0180bc0387d0187c006007", + "0xf800c104030e5007104030f800c0fe2000683300e200061f001801c18807", + "0x680c17001c4300c3e00301e00c07001c4200c3e0030d380c01c01caa00c", + "0x600701a01c5895610c210e200c162030f800c2a80305b8072ac030f800c", + "0x61f001801c94007112030f800c00e75c038073e00300700c25401c039f0", + "0x600706201caf00c3e00304588901a7380388b0187c00608b0180bc0388b", + "0x70072cc030f800c11e030e500711e030f800c2bc2340683300e234061f0", + "0xb380c3e00300680c17001c4980c3e00300b80c07001c4880c3e0030f200c", + "0x600700e7c00600700e01cb9167126244e200c2e4030f800c2cc0305b807", + "0x700c03801c039f001801c0680702e79006a58024710069f001a0300380d", + "0x382203a034f800c03803011007038030f800c03c0300e80703c030f800c", + "0xef02301a7c006020018088038200187c00600704601c039f001807406020", + "0x61f0018778061de00e098061f0018088061de00e01cf800c04603010007", + "0x1402601a0a0039c40187c0061c4018038038260187c00602601809803828", + "0x600705a01ced80c3e0030039d700e01cf800c00e034038074b201cf800d", + "0x188073ae030f800c05476c069ce00e0a8061f00180a80602f00e0a8061f0", + "0xe700c3e00301780c39401c1780c3e0030eb82d01a0cc0382d0187c006007", + "0xf800c01a0305c007066030f800c0240301c007062030f800c38803007007", + "0x39f001801c06807172728198313880305c80c3e0030e700c16e01ce500c", + "0x6838024710071a500e0e0061f00180e00603c00e0e0061f001801cd3807", + "0x39a50187c00600734801c039f001801c0680707869c06a5a16e2e0069f0", + "0x22007080030f800c00e40c0383e0187c00600708001cd200c3e00300383e", + "0x384800e470061f001801c23007088030f800c00e470039030187c006007", + "0x600709801c8e80c3e00300384a00e120061f001801c8e80708c030f800c", + "0xd21a5046140039210187c00600709c01c2600c3e00300392100e128061f0", + "0x69f00181380613000e138061f00184842604a23a1202311c08840c2003e", + "0x60b70180e0038570187c0060b8018038038073e00302800c0d601c91050", + "0xe20b600e170061f00184880612200e49c061f0018034060b800e164061f0", + "0x2f80c4b6174061f001a498060ba00e4982a853164710f800c0b849c2c857", + "0x39290187c00605d0185d4039280187c0060073ae01c039f001801c06807", + "0x61f00184ac0605300e01cf800c254030ed8072564a8069f00184a406171", + "0x612900e1983200d3e00303492f01a2fc038690187c0061280182440392f", + "0x2e00700e7c00613001849c0386b260034f800c0c80302c80700e7c006066", + "0x3780c3e00309980c0be01c9980c3e00303680c0ba01c3680c3e00303580c", + "0xf800c0aa0305c007274030f800c0a60301c0070e2030f800c16403007007", + "0x39f001801c068072861d09d071388030a180c3e00303780c16e01c3a00c", + "0xf800c0a60301c0070ee030f800c164030070070ec030f800c0be030e5007", + "0x3c877388030a600c3e00303b00c16e01ca580c3e00302a80c17001c3c80c", + "0x3f80c3e00300392800e1f4061f001801ceb80700e7c00600701a01ca614b", + "0xf800c00e0c4038800187c00607f0fa034e70070fe030f800c0fe03017807", + "0x600e00e210061f0018550061ca00e550061f00182004100d06601c4100c", + "0x38b10187c00600d0182e0039560187c00603c0180e0038860187c0061a7", + "0x612a00e01cf800c00e03403889162558431c4018224061f0018210060b7", + "0xaf00c05e01caf00c3e00300392800e22c061f001801ceb80700e7c00600e", + "0x1980711e030f800c00e0c40388d0187c00615e116034e70072bc030f800c", + "0x61f00187900600e00e244061f0018598061ca00e598061f00182344780d", + "0x60910182dc039720187c00600d0182e0039670187c0060170180e003893", + "0xf800d01a0300680c00e01cf800c00e01c0389a2e459c499c4018268061f0", + "0x38200187c006012018038038073e00300380d00e0780b80d4b87900900d", + "0x1100c3c801c1101d038038f800c0460800681200e08c061f0018710061c4", + "0x38280187c00601d018070038073e00300380d00e0980625d3bc030f800d", + "0xf800c054030100073ae0a8069f001876c0602200e76c061f00180a00601d", + "0x602f018080039ce05e034f800c05a0301100705a030f800c00e08c03807", + "0x1880c04c01c1980c3e0030e700c3bc01c1880c3e0030eb80c3bc01c039f0", + "0x1500700e7c00600701a01c03a5e00e7c00683306203414007062030f800c", + "0x602f00e2e4061f001801c16807394030f800c00e75c038073e0030ef00c", + "0x38b80187c00600706201c1c00c3e00305c9ca01a738038b90187c0060b9", + "0xf800c00e0305c80734e030f800c16e030e500716e030f800c0702e006833", + "0x700c17001cd200c3e0030f200c07001cd280c3e00300e00c01c01c1e00c", + "0x380d00e1001f1a434a0f00900c080030f800c34e0305b80707c030f800c", + "0xe00e34a01c8180c3e00308180c07801c8180c3e0030039a700e01cf800c", + "0xf800c00e690038073e00300380d00e1202300d4be4702200d3e0034819e4", + "0x61f001801c81807098030f800c00e1000384a0187c00600707c01c8e80c", + "0x9100c3e00300384600e140061f001801c8e00709c030f800c00e11003921", + "0x38550187c00600709401c2980c3e00300391d00e2c8061f001801c24007", + "0x280070b2030f800c00e138038570187c00600724201c9300c3e00300384c", + "0x9380c26001c9380c3e00302c85724c154298b2244140271210981288e823", + "0x1c0070c8030f800c0880300700700e7c00605c0181ac0385d0b8034f800c", + "0x3480c3e00300700c17001c9780c3e00300380c17201c3300c3e00308e00c", + "0x978660c8790c20070d6030f800c3bc03059007260030f800c0ba03091007", + "0x9980c4c01b4061f001a4ac060ba00e4ac9512925017c091f00181ac98069", + "0x38710187c00606d0185d40386f0187c0060073ae01c039f001801c06807", + "0x61f00181d00605300e01cf800c274030ed8070e84e8069f00181c406171", + "0x612900e1d8a180d3e00303c87701a2fc038790187c00606f01824403877", + "0x2e00700e7c00614b01849c0394c296034f800c2860302c80700e7c006076", + "0x4000c3e00303f80c0be01c3f80c3e00303e80c0ba01c3e80c3e0030a600c", + "0xf800c2500301c0072a8030f800c0be03007007104030f800c2520305c807", + "0xaa082024030ab00c3e00304000c16e01c4300c3e00309500c17001c4200c", + "0x61290182e4038b10187c006133018728038073e00300380d00e55843084", + "0x60b800e578061f00184a00603800e22c061f001817c0600e00e224061f0", + "0x680711e234af08b1120480608f0187c0060b10182dc0388d0187c00612a", + "0x600725001cb300c3e0030039d700e01cf800c3bc0301500700e7c006007", + "0x18807126030f800c122598069ce00e244061f00182440602f00e244061f0", + "0x4d00c3e0030b900c39401cb900c3e00304996701a0cc039670187c006007", + "0xf800c0900301c007084030f800c08c0300700712a030f800c00e0305c807", + "0x210950240304f00c3e00304d00c16e01cbb80c3e00300700c17001c4e00c", + "0xf800c03a0309500700e7c0060260184a4038073e00300380d00e278bb89c", + "0x61f00185e00602f00e5e0061f001801c32007140030f800c00e75c03807", + "0x510a401a0cc038a40187c00600706201c5100c3e0030bc0a001a73803978", + "0x700717a030f800c00e0305c8072f4030f800c2f6030e50072f6030f800c", + "0x5500c3e00300700c17001c5d80c3e0030f200c07001c5e00c3e00300e00c", + "0x38073e00300380d00e2cc550bb1782f40900c166030f800c2f40305b807", + "0x1780716a030f800c00e4a0038b40187c0060073ae01c039f00187100612a", + "0x5d00c3e00300383100e2d8061f00182d45a00d39c01c5a80c3e00305a80c", + "0x60070182e4039710187c006175018728039750187c0060b617403419807", + "0x60b800e304061f00180780603800e610061f001805c0600e00e2fc061f0", + "0x380718661c6098417e048060c30187c0061710182dc039870187c00600e", + "0x600701a01c0f01701a984f201201a7c00680d0180340600700e7c006007", + "0x1000d02401c1180c3e0030e200c38801c1000c3e00300900c01c01c039f0", + "0x600701a01c1300c4c4778061f001a088061e400e0880e81c01c7c006023", + "0xeb80d02401c1680c3e00300e80c38801ceb80c3e00300e00c01c01c039f0", + "0x600701a01ce700c4c60bc061f001a0a8061e400e0a8ed82801c7c00602d", + "0x1980c04401c1980c3e00301880c03a01c1880c3e0030ed80c03801c039f0", + "0x602200e0e0061f001801c1180700e7c0061ca018080038b9394034f800c", + "0x39a70187c0060b9018778038073e00305c00c04001c5b8b801a7c006038", + "0xf800d07869c0682800e69c061f001869c0602600e0f0061f00182dc061de", + "0xf800c3bc0301500700e7c00602f0180a8038073e00300380d00e01d32007", + "0x61f00186900602f00e690061f001801c1680734a030f800c00e75c03807", + "0x1f04001a0cc038400187c00600706201c1f00c3e0030d21a501a738039a4", + "0x7007238030f800c00e0305c807088030f800c206030e5007206030f800c", + "0x8e80c3e00300700c17001c2400c3e0030f200c07001c2300c3e00301400c", + "0x38073e00300380d00e1288e84808c4700900c094030f800c0880305b807", + "0xf800d0987901400e34a01c2600c3e00302600c07801c2600c3e0030039a7", + "0x1f007164030f800c00e690038073e00300380d00e4882800d4ca1389080d", + "0x384400e498061f001801c818070aa030f800c00e100038530187c006007", + "0x600709001c9380c3e00300384600e164061f001801c8e0070ae030f800c", + "0xf800c00e1300385f0187c00600709401c2e80c3e00300391d00e170061f0", + "0x2a85316408c28007254030f800c00e138039290187c00600724201c9400c", + "0x3200d3e00309580c26001c9580c3e00309512925017c2e85c24e1642b926", + "0xf800c09c0301c007266030f800c2420300700700e7c0060640181ac03866", + "0x3300c24401c9d00c3e00300700c17001c3880c3e00300380c17201c3780c", + "0x608070ec030f800c05e03059007286030f800c3bc030590070e8030f800c", + "0xf800d0da0305d0070da1ac9806925e048f800c0ec50c3a13a0e21bc99817", + "0x3b80c2ea01ca580c3e0030039d700e01cf800c00e034038790189983b80c", + "0x2980700e7c00607d01876c0387f0fa034f800c298030b8807298030f800c", + "0x69f0018210aa00d17e01c4200c3e0030a580c12201caa00c3e00303f80c", + "0x4300c24e01cab08601a7c006080018164038073e00304100c25201c41080", + "0x605f00e224061f00182c40605d00e2c4061f00185580605c00e01cf800c", + "0x388d0187c00612f0180380395e0187c0061300182e40388b0187c006089", + "0x61f001822c060b700e598061f00181ac060b800e23c061f00181a406038", + "0x4980c3e00303c80c39401c039f001801c068071225984788d2bc04806091", + "0xf800c0d20301c0072e4030f800c25e030070072ce030f800c2600305c807", + "0xb91670240302100c3e00304980c16e01c4a80c3e00303580c17001c4d00c", + "0xf800c3bc0301500700e7c00602f0180a8038073e00300380d00e1084a89a", + "0x61f00185dc0602f00e5dc061f001801c94007138030f800c00e75c03807", + "0x4f0a001a0cc038a00187c00600706201c4f00c3e0030bb89c01a73803977", + "0x7007148030f800c00e0305c807144030f800c2f0030e50072f0030f800c", + "0x5e80c3e00300700c17001cbd00c3e00309100c07001cbd80c3e00302800c", + "0x38073e00300380d00e2f05e97a2f62900900c178030f800c1440305b807", + "0xeb80700e7c0061de0180a8038073e0030ed80c25401c039f001873806129", + "0xe7007154030f800c15403017807154030f800c00e4ac038bb0187c006007", + "0x61f00182cc5a00d06601c5a00c3e00300383100e2cc061f00182a85d80d", + "0x6028018038038ba0187c0060070182e4038b60187c0060b5018728038b5", + "0x60b700e2fc061f0018038060b800e5c4061f00187900603800e5d4061f0", + "0x1300c25201c039f001801c068073082fcb8975174048061840187c0060b6", + "0xf800c00e190038c10187c0060073ae01c039f00180740612a00e01cf800c", + "0x383100e30c061f001861c6080d39c01cc380c3e0030c380c05e01cc380c", + "0x39610187c0060c8018728038c80187c0060c32d0034198072d0030f800c", + "0x61f00187900603800e588061f00180700600e00e32c061f001801c060b9", + "0xb0162196048061550187c0061610182dc038ce0187c00600e0182e003960", + "0x6780c3e0030039d700e01cf800c3880309500700e7c00600701a01caa8ce", + "0xf800c2b833c069ce00e570061f00185700602f00e570061f001801c94007", + "0x6980c39401c6980c3e00306895a01a0cc0395a0187c00600706201c6880c", + "0x1c0071ac030f800c02e030070072a4030f800c00e0305c8072b6030f800c", + "0xa780c3e0030ad80c16e01ca880c3e00300700c17001c6c00c3e00300f00c", + "0x900d3e00340680c01a030038073e00300380700e53ca88d81ac5480900c", + "0x61c400e080061f00180480600e00e01cf800c00e0340381e02e035339e4", + "0xf800d044030f20070440740e00e3e00301182001a048038230187c0061c4", + "0x61c400e75c061f00180700600e00e01cf800c00e034038260189a0ef00c", + "0xf800d0540300f00705476c1400e3e0030169d701a05c0382d0187c00601d", + "0x601d00e0c4061f001876c0601c00e01cf800c00e034039ce0189a41780c", + "0x38073e0030e500c04001c5c9ca01a7c006033018088038330187c006031", + "0x39f00182e00602000e2dc5c00d3e00301c00c04401c1c00c3e003003823", + "0xf800c34e03013007078030f800c16e030ef00734e030f800c172030ef007", + "0x1780c3b601c039f001801c0680700e9a8039f001a0f0d380d05001cd380c", + "0xf800c00e0b4039a50187c0060073ae01c039f00187780602a00e01cf800c", + "0x383100e0f8061f0018690d280d39c01cd200c3e0030d200c05e01cd200c", + "0x38440187c006103018728039030187c00603e08003419807080030f800c", + "0x61f00187900603800e118061f00180a00600e00e470061f001801c060b9", + "0x240462380480604a0187c0060440182dc0391d0187c00600e0182e003848", + "0x61f00181300603c00e130061f001801cd380700e7c00600701a01c2511d", + "0x39f001801c0680724414006a6b09c484069f001a130f202801c6940384c", + "0x38550187c00600708001c2980c3e00300383e00e2c8061f001801cd2007", + "0x230070b2030f800c00e470038570187c00600708801c9300c3e003003903", + "0x384a00e174061f001801c8e8070b8030f800c00e120039270187c006007", + "0x600709c01c9480c3e00300392100e4a0061f001801c260070be030f800c", + "0x61f00184a8949280be1742e1270b215c930550a62c81185000e4a8061f0", + "0x60070182e40386d0187c00604e0180e00386b0187c0061210180380392b", + "0x60b200e1c4061f00184ac0612200e1bc061f0018038060b800e4cc061f0", + "0x9d0710de4cc3686b02e61c038740187c00602f01814c0393a0187c0061de", + "0x68070ec031361430187c00693001830c039300d24bc330640247c006074", + "0x358072961e4069f001850c0616800e1dc061f001801ceb80700e7c006007", + "0x38073e0030a600c11e01c3e94c01a7c00614b018234038073e00303c80c", + "0xf800c2a82080689300e550061f00181dc0609100e208061f00181f406166", + "0x612700e2184200d3e00303f80c0b201c039f00182000612900e2003f80d", + "0x2f807162030f800c2ac0302e8072ac030f800c10c0302e00700e7c006084", + "0xaf00c3e00303200c01c01c4580c3e00309780c17201c4480c3e00305880c", + "0xf800c1120305b80711e030f800c0d20305c00711a030f800c0cc0301c007", + "0x61f00181d8061ca00e01cf800c00e0340396611e234af08b024030b300c", + "0x60660180e0039670187c006064018038038930187c00612f0182e403891", + "0x49812018254061f0018244060b700e268061f00181a4060b800e5c8061f0", + "0x61de0180a8038073e00301780c3b601c039f001801c0680712a268b9167", + "0xf800c13803017807138030f800c00e4a0038420187c0060073ae01c039f0", + "0x4f00d06601c4f00c3e00300383100e5dc061f00182702100d39c01c4e00c", + "0x38a20187c0060070182e4039780187c0060a0018728038a00187c006177", + "0x61f0018038060b800e5ec061f00184880603800e290061f00181400600e", + "0x39f001801c0680717a5e8bd8a4144048060bd0187c0061780182dc0397a", + "0x38073e0030ef00c05401c039f001876c0612a00e01cf800c39c03094807", + "0x38bb0187c0060bb0180bc038bb0187c00600725601c5e00c3e0030039d7", + "0xf800c1542cc0683300e2cc061f001801c18807154030f800c1762f0069ce", + "0x1400c01c01c5b00c3e00300380c17201c5a80c3e00305a00c39401c5a00c", + "0x5b8072e2030f800c01c0305c0072ea030f800c3c80301c007174030f800c", + "0x612900e01cf800c00e034038bf2e25d45d0b60240305f80c3e00305a80c", + "0x60070c801cc200c3e0030039d700e01cf800c03a0309500700e7c006026", + "0x1880730e030f800c182610069ce00e304061f00183040602f00e304061f0", + "0x6400c3e0030b400c39401cb400c3e0030c38c301a0cc038c30187c006007", + "0xf800c3c80301c007196030f800c038030070072c2030f800c00e0305c807", + "0x659610240306700c3e00306400c16e01cb000c3e00300700c17001cb100c", + "0x61f001801ceb80700e7c0061c40184a8038073e00300380d00e338b0162", + "0x60cf2aa034e700719e030f800c19e0301780719e030f800c00e4a003955", + "0x61ca00e568061f00185706880d06601c6880c3e00300383100e570061f0", + "0x39520187c0060170180380395b0187c0060070182e4038d30187c00615a", + "0x61f001834c060b700e360061f0018038060b800e358061f001807806038", + "0x69f001a0340600d01801c039f001801c038072a23606b1522b604806151", + "0xe2007040030f800c0240300700700e7c00600701a01c0f01701a9b4f2012", + "0x68220187900382203a070071f001808c1000d02401c1180c3e0030e200c", + "0xe20073ae030f800c0380300700700e7c00600701a01c1300c4dc778061f0", + "0x682a0187900382a3b60a0071f00180b4eb80d02401c1680c3e00300e80c", + "0xe2007172030f800c0500300700700e7c00600701a01ce700c4de0bc061f0", + "0x69ca018078039ca0660c4071f00180e05c80d02e01c1c00c3e0030ed80c", + "0xe80734e030f800c0660300e00700e7c00600701a01c5b80c4e02e0061f0", + "0x39f00186940602000e690d280d3e00301e00c04401c1e00c3e0030d380c", + "0xf800c08003010007206100069f00180f80602200e0f8061f001801c11807", + "0x60440180980391c0187c006103018778038440187c0061a401877803807", + "0x61db00e01cf800c00e034038074e201cf800d2381100682800e110061f0", + "0x60073ae01c039f00187780602a00e01cf800c05e0301500700e7c0060b8", + "0x2300d39c01c2400c3e00302400c05e01c2400c3e00300382d00e118061f0", + "0x384c0187c00611d09403419807094030f800c00e0c40391d0187c006048", + "0x61f00180c40600e00e138061f001801c060b900e484061f0018130061ca", + "0x61210182dc038b20187c00600e0182e0039220187c0061e40180e003850", + "0x61f001801cd380700e7c00600701a01c298b22441402701201814c061f0", + "0x6a720ae498069f001a154f203101c694038550187c0060550180f003855", + "0x2e80c3e00300383e00e170061f001801cd200700e7c00600701a01c93859", + "0x39290187c00600708801c9400c3e00300390300e17c061f001801c20007", + "0x8e8070c8030f800c00e1200392b0187c00600708c01c9500c3e00300391c", + "0x392100e1a4061f001801c2600725e030f800c00e128038660187c006007", + "0x3212b2544a49405f0ba1701185000e1ac061f001801c27007260030f800c", + "0x60570180e0039430187c0061260180380386d0187c00606b2601a497866", + "0x612200e1e4061f0018038060b800e1dc061f001801c060b900e1d8061f0", + "0x387d0187c00602f0182c80394c0187c0061de0182c80394b0187c00606d", + "0x998123e00303f87d29852c3c8770ec50c0f0c800e1fc061f00182e006053", + "0x38073e00300380d00e20806273100030f800d0e8030618070e84e83886f", + "0x39f00182100606b00e2184200d3e00304000c2d001caa00c3e0030039d7", + "0xf800c162030b300700e7c00615601823c038b12ac034f800c10c03046807", + "0x94807116224069f0018234af00d12601c4680c3e0030aa00c12201caf00c", + "0x38073e00304780c24e01cb308f01a7c006089018164038073e00304580c", + "0x61f001824c0605f00e24c061f00182440605d00e244061f00185980605c", + "0x606f0180e00389a0187c006133018038039720187c0060710182e403967", + "0xb9012018270061f001859c060b700e108061f00184e8060b800e254061f0", + "0x3880c17201cbb80c3e00304100c39401c039f001801c068071381084a89a", + "0x5c0072f0030f800c0de0301c007140030f800c2660300700713c030f800c", + "0x38a41445e05009e0240305200c3e0030bb80c16e01c5100c3e00309d00c", + "0x602a00e01cf800c05e0301500700e7c0060b801876c038073e00300380d", + "0xbd00c05e01cbd00c3e00300392800e5ec061f001801ceb80700e7c0061de", + "0x19807178030f800c00e0c4038bd0187c00617a2f6034e70072f4030f800c", + "0x61f001801c060b900e2a8061f00182ec061ca00e2ec061f00182f45e00d", + "0x600e0182e0038b50187c0061270180e0038b40187c006059018038038b3", + "0x600701a01c5d0b616a2d0598120182e8061f00182a8060b700e2d8061f0", + "0xf800c05e0301500700e7c0060330184a8038073e00305b80c25201c039f0", + "0xb880c3e00300396100e5d4061f001801ceb80700e7c0061de0180a803807", + "0xf800c00e0c4038bf0187c0061712ea034e70072e2030f800c2e203017807", + "0x60b900e61c061f0018304061ca00e304061f00182fcc200d06601cc200c", + "0x38c80187c0061e40180e0039680187c006031018038038c30187c006007", + "0x659611905a06181201832c061f001861c060b700e584061f0018038060b8", + "0x9500700e7c0061de0180a8038073e0030e700c25201c039f001801c06807", + "0x602f00e580061f001801c958072c4030f800c00e75c038073e0030ed80c", + "0x39550187c00600706201c6700c3e0030b016201a738039600187c006160", + "0xf800c00e0305c8072b8030f800c19e030e500719e030f800c19c55406833", + "0x700c17001c6980c3e0030f200c07001cad00c3e00301400c01c01c6880c", + "0x380d00e548ad8d32b43440900c2a4030f800c2b80305b8072b6030f800c", + "0xf800c00e75c038073e00300e80c25401c039f00180980612900e01cf800c", + "0x6c0d601a738038d80187c0060d80180bc038d80187c0060070c801c6b00c", + "0xe50072a6030f800c2a253c0683300e53c061f001801c188072a2030f800c", + "0xa280c3e00300e00c01c01c6e00c3e00300380c17201ca480c3e0030a980c", + "0xf800c2920305b807276030f800c01c0305c007288030f800c3c80301c007", + "0x39f00187100612a00e01cf800c00e03403939276510a28dc0240309c80c", + "0x9b00c3e00309b00c05e01c9b00c3e00300392800e384061f001801ceb807", + "0x60e326203419807262030f800c00e0c4038e30187c0061361c2034e7007", + "0x600e00e39c061f001801c060b900e4b8061f0018394061ca00e394061f0", + "0x39250187c00600e0182e0038e90187c00601e0180e00392c0187c006017", + "0x600700e7c00600700e01c759251d24b0738120183ac061f00184b8060b7", + "0x900c01c01c039f001801c0680703c05c06a743c8048069f001a0340600d", + "0xe81c01c7c00602304003409007046030f800c388030e2007040030f800c", + "0xe00c01c01c039f001801c0680704c0313a9de0187c00682201879003822", + "0xed82801c7c00602d3ae0340b80705a030f800c03a030e20073ae030f800c", + "0xed80c03801c039f001801c0680739c0313b02f0187c00682a0180780382a", + "0x38b9394034f800c06603011007066030f800c0620300e807062030f800c", + "0x5b8b801a7c006038018088038380187c00600704601c039f001872806020", + "0x61f00182dc061de00e69c061f00182e4061de00e01cf800c17003010007", + "0x380d00e01d3b8073e00341e1a701a0a0039a70187c0061a70180980383c", + "0xf800c00e75c038073e0030ef00c05401c039f00180bc061db00e01cf800c", + "0xd21a501a738039a40187c0061a40180bc039a40187c00600705a01cd280c", + "0xe5007206030f800c07c1000683300e100061f001801c1880707c030f800c", + "0x2300c3e00301400c01c01c8e00c3e00300380c17201c2200c3e00308180c", + "0xf800c0880305b80723a030f800c01c0305c007090030f800c3c80301c007", + "0x2600c3e0030039a700e01cf800c00e0340384a23a1202311c0240302500c", + "0x2800d4f01389080d3e0034261e4050038d2807098030f800c0980301e007", + "0x38530187c00600707c01c5900c3e0030039a400e01cf800c00e03403922", + "0x8e0070ae030f800c00e110039260187c00600720601c2a80c3e003003840", + "0x391d00e170061f001801c2400724e030f800c00e118038590187c006007", + "0x600724201c9400c3e00300384c00e17c061f001801c250070ba030f800c", + "0x2e85c24e1642b9260aa14c590230a001c9500c3e00300384e00e4a4061f0", + "0xf800c09c0301c0070d6030f800c24203007007256030f800c2544a49405f", + "0x9580c24401c3780c3e00300700c17001c9980c3e00300380c17201c3680c", + "0x658070e8030f800c05e03029807274030f800c3bc030590070e2030f800c", + "0xf800d260030618072601a4978660c8048f800c0e84e83886f2661b435817", + "0xa180c2d001c3b80c3e0030039d700e01cf800c00e034038760189e4a180c", + "0x387d298034f800c2960304680700e7c0060790181ac0394b0f2034f800c", + "0xaa00c3e00303b80c12201c4100c3e00303e80c2cc01c039f00185300608f", + "0x607f018164038073e00304000c25201c4007f01a7c00615410403449807", + "0x605d00e558061f00182180605c00e01cf800c1080309380710c210069f0", + "0x388b0187c00612f0182e4038890187c0060b101817c038b10187c006156", + "0x61f00181a4060b800e234061f00181980603800e578061f00181900600e", + "0x39f001801c068072cc23c4695e116048061660187c0060890182dc0388f", + "0xf800c0c803007007126030f800c25e0305c807122030f800c0ec030e5007", + "0x4880c16e01c4d00c3e00303480c17001cb900c3e00303300c07001cb380c", + "0x602f01876c038073e00300380d00e2544d1722ce24c0900c12a030f800c", + "0x61f001801c94007084030f800c00e75c038073e0030ef00c05401c039f0", + "0x600706201cbb80c3e00304e04201a7380389c0187c00609c0180bc0389c", + "0x5c8072f0030f800c140030e5007140030f800c2ee2780683300e278061f0", + "0xbd80c3e00309100c07001c5200c3e00302800c01c01c5100c3e00300380c", + "0xbd17b1482880900c17a030f800c2f00305b8072f4030f800c01c0305c007", + "0x38073e0030ed80c25401c039f00187380612900e01cf800c00e034038bd", + "0x17807176030f800c00e4ac038bc0187c0060073ae01c039f00187780602a", + "0x5980c3e00300383100e2a8061f00182ec5e00d39c01c5d80c3e00305d80c", + "0x60070182e4038b50187c0060b4018728038b40187c0060aa16603419807", + "0x60b800e5d4061f00187900603800e2e8061f00180a00600e00e2d8061f0", + "0x680717e5c4ba8ba16c048060bf0187c0060b50182dc039710187c00600e", + "0x60073ae01c039f00180740612a00e01cf800c04c0309480700e7c006007", + "0xc200d39c01c6080c3e00306080c05e01c6080c3e00300386400e610061f0", + "0x39680187c00618718603419807186030f800c00e0c4039870187c0060c1", + "0x61f00180700600e00e584061f001801c060b900e320061f00185a0061ca", + "0x60c80182dc039600187c00600e0182e0039620187c0061e40180e0038cb", + "0xf800c3880309500700e7c00600701a01c671602c432cb0812018338061f0", + "0x61f001833c0602f00e33c061f001801c940072aa030f800c00e75c03807", + "0xae0d101a0cc038d10187c00600706201cae00c3e00306795501a738038cf", + "0x70072b6030f800c00e0305c8071a6030f800c2b4030e50072b4030f800c", + "0x6c00c3e00300700c17001c6b00c3e00300f00c07001ca900c3e00300b80c", + "0x38073e00300380700e5446c0d62a456c0900c2a2030f800c1a60305b807", + "0x600e00e01cf800c00e0340381e02e0353d1e4024034f800d01a0300680c", + "0xe00e3e00301182001a048038230187c0061c4018710038200187c006012", + "0x600e00e01cf800c00e034038260189ecef00c3e00341100c3c801c1101d", + "0x1400e3e0030169d701a05c0382d0187c00601d018710039d70187c00601c", + "0x601c00e01cf800c00e034039ce0189f01780c3e00341500c03c01c151db", + "0x5c9ca01a7c006033018088038330187c006031018074038310187c0061db", + "0x5c00d3e00301c00c04401c1c00c3e00300382300e01cf800c39403010007", + "0xf800c16e030ef00734e030f800c172030ef00700e7c0060b8018080038b7", + "0x680700e9f4039f001a0f0d380d05001cd380c3e0030d380c04c01c1e00c", + "0x60073ae01c039f00187780602a00e01cf800c05e030ed80700e7c006007", + "0xd280d39c01cd200c3e0030d200c05e01cd200c3e00300382d00e694061f0", + "0x39030187c00603e08003419807080030f800c00e0c40383e0187c0061a4", + "0x61f00180a00600e00e470061f001801c060b900e110061f001840c061ca", + "0x60440182dc0391d0187c00600e0182e0038480187c0061e40180e003846", + "0x61f001801cd380700e7c00600701a01c2511d0901188e012018128061f0", + "0x6a7e09c484069f001a130f202801c6940384c0187c00604c0180f00384c", + "0x2980c3e00300383e00e2c8061f001801cd200700e7c00600701a01c91050", + "0x38570187c00600708801c9300c3e00300390300e154061f001801c20007", + "0x8e8070b8030f800c00e120039270187c00600708c01c2c80c3e00300391c", + "0x392100e4a0061f001801c260070be030f800c00e1280385d0187c006007", + "0x2e1270b215c930550a62c81185000e4a8061f001801c27007252030f800c", + "0x604e0180e00386b0187c0061210180380392b0187c00612a2524a02f85d", + "0x612200e1bc061f0018038060b800e4cc061f001801c060b900e1b4061f0", + "0x38740187c00602f01814c0393a0187c0061de0182c8038710187c00612b", + "0x693001830c039300d24bc330640247c0060742741c4379330da1ac0b962", + "0x616800e1dc061f001801ceb80700e7c00600701a01c3b00c4fe50c061f0", + "0x3e94c01a7c00614b018234038073e00303c80c0d601ca587901a7c006143", + "0x61f00181dc0609100e208061f00181f40616600e01cf800c29803047807", + "0x3f80c0b201c039f00182000612900e2003f80d3e0030aa08201a24c03954", + "0x2e8072ac030f800c10c0302e00700e7c00608401849c03886108034f800c", + "0x4580c3e00309780c17201c4480c3e00305880c0be01c5880c3e0030ab00c", + "0xf800c0d20305c00711a030f800c0cc0301c0072bc030f800c0c803007007", + "0xf800c00e0340396611e234af08b024030b300c3e00304480c16e01c4780c", + "0x6064018038038930187c00612f0182e4038910187c00607601872803807", + "0x60b700e268061f00181a4060b800e5c8061f00181980603800e59c061f0", + "0x1780c3b601c039f001801c0680712a268b9167126048060950187c006091", + "0xf800c00e4a0038420187c0060073ae01c039f00187780602a00e01cf800c", + "0x383100e5dc061f00182702100d39c01c4e00c3e00304e00c05e01c4e00c", + "0x39780187c0060a0018728038a00187c00617713c0341980713c030f800c", + "0x61f00184880603800e290061f00181400600e00e288061f001801c060b9", + "0xbd8a4144048060bd0187c0061780182dc0397a0187c00600e0182e00397b", + "0x39f001876c0612a00e01cf800c39c0309480700e7c00600701a01c5e97a", + "0x38bb0187c00600725601c5e00c3e0030039d700e01cf800c3bc03015007", + "0x61f001801c18807154030f800c1762f0069ce00e2ec061f00182ec0602f", + "0x380c17201c5a80c3e00305a00c39401c5a00c3e0030550b301a0cc038b3", + "0x5c0072ea030f800c3c80301c007174030f800c0500300700716c030f800c", + "0x38bf2e25d45d0b60240305f80c3e00305a80c16e01cb880c3e00300700c", + "0x39d700e01cf800c03a0309500700e7c0060260184a4038073e00300380d", + "0x69ce00e304061f00183040602f00e304061f001801c32007308030f800c", + "0xb400c3e0030c38c301a0cc038c30187c00600706201cc380c3e003060984", + "0xf800c038030070072c2030f800c00e0305c807190030f800c2d0030e5007", + "0x6400c16e01cb000c3e00300700c17001cb100c3e0030f200c07001c6580c", + "0x61c40184a8038073e00300380d00e338b01621965840900c19c030f800c", + "0xf800c19e0301780719e030f800c00e4a0039550187c0060073ae01c039f0", + "0x6880d06601c6880c3e00300383100e570061f001833caa80d39c01c6780c", + "0x395b0187c0060070182e4038d30187c00615a0187280395a0187c00615c", + "0x61f0018038060b800e358061f00180780603800e548061f001805c0600e", + "0x39f001801c038072a23606b1522b6048061510187c0060d30182dc038d8", + "0x700700e7c00600701a01c0f01701aa00f201201a7c00680d01803406007", + "0x71f001808c1000d02401c1180c3e0030e200c38801c1000c3e00300900c", + "0x700700e7c00600701a01c1300c502778061f001a088061e400e0880e81c", + "0x71f00180b4eb80d02e01c1680c3e00300e80c38801ceb80c3e00300e00c", + "0xe00700e7c00600701a01ce700c5040bc061f001a0a80601e00e0a8ed828", + "0xe500d3e00301980c04401c1980c3e00301880c03a01c1880c3e0030ed80c", + "0x69f00180e00602200e0e0061f001801c1180700e7c0061ca018080038b9", + "0x60b7018778039a70187c0060b9018778038073e00305c00c04001c5b8b8", + "0x380750601cf800d07869c0682800e69c061f001869c0602600e0f0061f0", + "0x39d700e01cf800c3bc0301500700e7c00602f01876c038073e00300380d", + "0x69ce00e690061f00186900602f00e690061f001801c1680734a030f800c", + "0x8180c3e00301f04001a0cc038400187c00600706201c1f00c3e0030d21a5", + "0xf800c05003007007238030f800c00e0305c807088030f800c206030e5007", + "0x2200c16e01c8e80c3e00300700c17001c2400c3e0030f200c07001c2300c", + "0xf800c00e69c038073e00300380d00e1288e84808c4700900c094030f800c", + "0x14204e242034f800d0987901400e34a01c2600c3e00302600c07801c2600c", + "0x61f001801c1f007164030f800c00e690038073e00300380d00e4882800d", + "0x2b80c3e00300384400e498061f001801c818070aa030f800c00e10003853", + "0x385c0187c00600709001c9380c3e00300384600e164061f001801c8e007", + "0x90807250030f800c00e1300385f0187c00600709401c2e80c3e00300391d", + "0x938590ae4982a85316408c28007254030f800c00e138039290187c006007", + "0x2700c07001c3580c3e00309080c01c01c9580c3e00309512925017c2e85c", + "0x910070de030f800c01c0305c007266030f800c00e0305c8070da030f800c", + "0x3a00c3e00301780c0a601c9d00c3e0030ef00c16401c3880c3e00309580c", + "0x9800c18601c9806925e198320123e00303a13a0e21bc9986d0d605cb0007", + "0xb40070ee030f800c00e75c038073e00300380d00e1d806285286030f800d", + "0xa600d3e0030a580c11a01c039f00181e40606b00e52c3c80d3e0030a180c", + "0xf800c0ee03048807104030f800c0fa030b300700e7c00614c01823c0387d", + "0x605900e01cf800c100030948071001fc069f00185504100d12601caa00c", + "0x39560187c006086018170038073e00304200c24e01c4308401a7c00607f", + "0x61f00184bc060b900e224061f00182c40605f00e2c4061f00185580605d", + "0x60690182e00388d0187c0060660180e00395e0187c0060640180380388b", + "0x600701a01cb308f11a57845812018598061f0018224060b700e23c061f0", + "0x3200c01c01c4980c3e00309780c17201c4880c3e00303b00c39401c039f0", + "0x5b807134030f800c0d20305c0072e4030f800c0cc0301c0072ce030f800c", + "0x61db00e01cf800c00e034038951345c8b38930240304a80c3e00304880c", + "0x600725001c2100c3e0030039d700e01cf800c3bc0301500700e7c00602f", + "0x188072ee030f800c138108069ce00e270061f00182700602f00e270061f0", + "0xbc00c3e00305000c39401c5000c3e0030bb89e01a0cc0389e0187c006007", + "0xf800c2440301c007148030f800c0a003007007144030f800c00e0305c807", + "0x520a20240305e80c3e0030bc00c16e01cbd00c3e00300700c17001cbd80c", + "0xf800c3b60309500700e7c0061ce0184a4038073e00300380d00e2f4bd17b", + "0x5d80c3e00300392b00e2f0061f001801ceb80700e7c0061de0180a803807", + "0xf800c00e0c4038aa0187c0060bb178034e7007176030f800c17603017807", + "0x60b900e2d4061f00182d0061ca00e2d0061f00182a85980d06601c5980c", + "0x39750187c0061e40180e0038ba0187c006028018038038b60187c006007", + "0x5f9712ea2e85b0120182fc061f00182d4060b700e5c4061f0018038060b8", + "0xeb80700e7c00601d0184a8038073e00301300c25201c039f001801c06807", + "0xe7007182030f800c18203017807182030f800c00e190039840187c006007", + "0x61f001861c6180d06601c6180c3e00300383100e61c061f0018304c200d", + "0x601c018038039610187c0060070182e4038c80187c00616801872803968", + "0x60b700e580061f0018038060b800e588061f00187900603800e32c061f0", + "0xe200c25401c039f001801c0680719c580b10cb2c2048060ce0187c0060c8", + "0x60cf0180bc038cf0187c00600725001caa80c3e0030039d700e01cf800c", + "0x683300e344061f001801c188072b8030f800c19e554069ce00e33c061f0", + "0xad80c3e00300380c17201c6980c3e0030ad00c39401cad00c3e0030ae0d1", + "0xf800c01c0305c0071ac030f800c03c0301c0072a4030f800c02e03007007", + "0xf800c00e01c039511b0358a915b024030a880c3e00306980c16e01c6c00c", + "0x38073e00300380d00e05cf200d50c048e200d3e00340600701a03003807", + "0x69f00180700602200e070061f00180780601d00e078061f00180380601c", + "0xf800c04003011007040030f800c00e08c038073e00300e80c04001c1101d", + "0xef00c3bc01c1300c3e00301100c3bc01c039f001808c0602000e7781180d", + "0x14007388030f800c3880300700704c030f800c04c03013007050030f800c", + "0x39db0187c0060073ae01c039f001801c0680700ea1c039f001a0a01300d", + "0x61f00180a8ed80d39c01c1500c3e00301500c05e01c1500c3e00300382d", + "0x602f0187280382f0187c0061d705a0341980705a030f800c00e0c4039d7", + "0x60b800e0cc061f00180480603800e0c4061f00187100600e00e738061f0", + "0x380d00e2e4e5033062710060b90187c0061ce0182dc039ca0187c00600d", + "0xe200e34a01c1c00c3e00301c00c07801c1c00c3e0030039a700e01cf800c", + "0xf800c00e690038073e00300380d00e0f0d380d5102dc5c00d3e00341c012", + "0x61f001801c8180707c030f800c00e100039a40187c00600707c01cd280c", + "0x8e00c3e00300384600e110061f001801c8e007206030f800c00e11003840", + "0x391d0187c00600709401c2400c3e00300391d00e118061f001801c24007", + "0x28007242030f800c00e1380384c0187c00600724201c2500c3e00300384c", + "0x2700c26001c2700c3e00309084c094474240462381108184007c690d2823", + "0x1c0070ae030f800c1700300700700e7c0060500181ac039220a0034f800c", + "0x2e00c3e00309100c24401c9380c3e00300680c17001c2c80c3e00305b80c", + "0x2e80c3e00349300c17401c930550a62c8e21f0018170938590ae7105b007", + "0xf800c0ba030ba807250030f800c00e75c038073e00300380d00e17c06289", + "0x9580c0a601c039f00184a8061db00e4ac9500d3e00309480c2e201c9480c", + "0x3306401a7c00606925e0345f8070d2030f800c2500304880725e030f800c", + "0xf800c260030938070d64c0069f00181900605900e01cf800c0cc03094807", + "0x613301817c039330187c00606d0181740386d0187c00606b01817003807", + "0x60b800e4e8061f001814c0603800e1c4061f00182c80600e00e1bc061f0", + "0x380d00e50c3a13a0e2710061430187c00606f0182dc038740187c006055", + "0x603800e1dc061f00182c80600e00e1d8061f001817c061ca00e01cf800c", + "0x614c0187c0060760182dc0394b0187c0060550182e0038790187c006053", + "0x600725001c3e80c3e0030039d700e01cf800c00e0340394c2961e43b9c4", + "0x18807100030f800c0fe1f4069ce00e1fc061f00181fc0602f00e1fc061f0", + "0x4200c3e0030aa00c39401caa00c3e00304008201a0cc038820187c006007", + "0xf800c01a0305c0072ac030f800c0780301c00710c030f800c34e03007007", + "0x39f001801c068071122c4ab0863880304480c3e00304200c16e01c5880c", + "0x395e0187c00600725001c4580c3e0030039d700e01cf800c01c03095007", + "0x61f001801c1880711a030f800c2bc22c069ce00e578061f00185780602f", + "0xf200c01c01c4880c3e0030b300c39401cb300c3e00304688f01a0cc0388f", + "0x5b8072e4030f800c01a0305c0072ce030f800c02e0301c007126030f800c", + "0x600d01801c039f001801c038071345c8b38933880304d00c3e00304880c", + "0xf800c0240300700700e7c00600701a01c0f01701aa28f201201a7c00680d", + "0x382203a070071f001808c1000d02401c1180c3e0030e200c38801c1000c", + "0xf800c03a0300e00700e7c00600701a01c1300c516778061f001a088061e4", + "0x602000e75c1500d3e0030ed80c04401ced80c3e00301400c03a01c1400c", + "0x1000739c0bc069f00180b40602200e0b4061f001801c1180700e7c00602a", + "0x38330187c0061ce018778038310187c0061d7018778038073e00301780c", + "0xf800c00e0340380751801cf800d0660c40682800e0c4061f00180c406026", + "0x5c80c3e00300382d00e728061f001801ceb80700e7c0061de0180a803807", + "0xf800c00e0c4038380187c0060b9394034e7007172030f800c17203017807", + "0x60b900e69c061f00182dc061ca00e2dc061f00180e05c00d06601c5c00c", + "0x39a40187c0061e40180e0039a50187c00601c0180380383c0187c006007", + "0x2003e3486941e012018100061f001869c060b700e0f8061f0018038060b8", + "0x39030187c0061030180f0039030187c00600734e01c039f001801c06807", + "0xd200700e7c00600701a01c2404601aa348e04401a7c0069033c8070071a5", + "0x390300e130061f001801c20007094030f800c00e0f80391d0187c006007", + "0x600708c01c2800c3e00300391c00e138061f001801c22007242030f800c", + "0xf800c00e128038530187c00600723a01c5900c3e00300384800e488061f0", + "0x61f001801c270070ae030f800c00e484039260187c00600709801c2a80c", + "0x39270187c0060590ae4982a8531644882804e2421302511d04614003859", + "0x61f00181100600e00e01cf800c0b8030358070ba170069f001849c06130", + "0x600e0182e00392f0187c0060070182e4038660187c00611c0180e003864", + "0xf218400e1ac061f0018778060b200e4c0061f00181740612200e1a4061f0", + "0x3680c3e00349580c17401c9592a2524a02f8123e0030359300d24bc33064", + "0xf800c0da030ba8070de030f800c00e75c038073e00300380d00e4cc0628e", + "0x3a00c0a601c039f00184e8061db00e1d09d00d3e00303880c2e201c3880c", + "0x3b14301a7c0060790ee0345f8070f2030f800c0de030488070ee030f800c", + "0xf800c2960309380729852c069f001850c0605900e01cf800c0ec03094807", + "0x607f01817c0387f0187c00607d0181740387d0187c00614c01817003807", + "0x603800e550061f001817c0600e00e208061f00184a4060b900e200061f0", + "0x61560187c0060800182dc038860187c00612a0182e0038840187c006128", + "0x5c807162030f800c266030e500700e7c00600701a01cab08610855041012", + "0xaf00c3e00309400c07001c4580c3e00302f80c01c01c4480c3e00309480c", + "0x4695e1162240900c11e030f800c1620305b80711a030f800c2540305c007", + "0x39660187c0060073ae01c039f00187780602a00e01cf800c00e0340388f", + "0x61f0018244b300d39c01c4880c3e00304880c05e01c4880c3e003003928", + "0x6172018728039720187c0060932ce034198072ce030f800c00e0c403893", + "0x603800e108061f00181180600e00e254061f001801c060b900e268061f0", + "0x609e0187c00609a0182dc039770187c00600e0182e00389c0187c006048", + "0x612a00e01cf800c04c0309480700e7c00600701a01c4f1771381084a812", + "0xbc00c05e01cbc00c3e00300386400e280061f001801ceb80700e7c00601d", + "0x19807148030f800c00e0c4038a20187c006178140034e70072f0030f800c", + "0x61f001801c060b900e5e8061f00185ec061ca00e5ec061f00182885200d", + "0x600e0182e0038bb0187c0061e40180e0038bc0187c00601c018038038bd", + "0x600701a01c598aa1762f05e8120182cc061f00185e8060b700e2a8061f0", + "0x61f001801c94007168030f800c00e75c038073e0030e200c25401c039f0", + "0x600706201c5b00c3e00305a8b401a738038b50187c0060b50180bc038b5", + "0x5c8072e2030f800c2ea030e50072ea030f800c16c2e80683300e2e8061f0", + "0x6080c3e00300f00c07001cc200c3e00300b80c01c01c5f80c3e00300380c", + "0xc38c13082fc0900c186030f800c2e20305b80730e030f800c01c0305c007", + "0x381e02e035479e4024034f800d01a0300680c00e01cf800c00e01c038c3", + "0x38230187c0061c4018710038200187c006012018038038073e00300380d", + "0x3826018a40ef00c3e00341100c3c801c1101d038038f800c04608006812", + "0x382d0187c00601d018710039d70187c00601c018038038073e00300380d", + "0x39ce018a441780c3e00341500c3c801c151db050038f800c05a75c06812", + "0x38380187c0061db018710038b90187c006028018038038073e00300380d", + "0x38b7018a485c00c3e0034e500c03c01ce5033062038f800c0702e406817", + "0x383c0187c0061a7018074039a70187c006033018070038073e00300380d", + "0x1f00c3e00300382300e01cf800c34a03010007348694069f00180f006022", + "0xf800c348030ef00700e7c00604001808003903080034f800c07c03011007", + "0x2200d05001c2200c3e00302200c04c01c8e00c3e00308180c3bc01c2200c", + "0x602a00e01cf800c170030ed80700e7c00600701a01c03a9300e7c00691c", + "0x600705a01c2300c3e0030039d700e01cf800c3bc0301500700e7c00602f", + "0x1880723a030f800c090118069ce00e120061f00181200602f00e120061f0", + "0x9080c3e00302600c39401c2600c3e00308e84a01a0cc0384a0187c006007", + "0xf800c3c80301c0070a0030f800c0620300700709c030f800c00e0305c807", + "0x2804e0240302980c3e00309080c16e01c5900c3e00300700c17001c9100c", + "0xf800c0aa0301e0070aa030f800c00e69c038073e00300380d00e14c59122", + "0xf800c00e034039270b20354a05724c034f800d0aa7901880e34a01c2a80c", + "0x2f80c3e00300384000e174061f001801c1f0070b8030f800c00e69003807", + "0x392a0187c00600723801c9480c3e00300384400e4a0061f001801c81807", + "0x250070cc030f800c00e474038640187c00600709001c9580c3e003003846", + "0x384e00e4c0061f001801c908070d2030f800c00e1300392f0187c006007", + "0xf800c0d64c03492f0cc1909592a2524a02f85d0b808c280070d6030f800c", + "0x380c17201c3b00c3e00302b80c07001ca180c3e00309300c01c01c3680c", + "0x59007296030f800c0da030910070f2030f800c01c0305c0070ee030f800c", + "0x3f80c3e00305c00c0a601c3e80c3e00301780c16401ca600c3e0030ef00c", + "0x60c300e1d09d0710de4cc091f00181fc3e94c2961e43b87628607864007", + "0x39540187c0060073ae01c039f001801c068071040314a8800187c006874", + "0x69f00182180608d00e01cf800c1080303580710c210069f001820006168", + "0x61540182440395e0187c0060b1018598038073e0030ab00c11e01c58956", + "0x2c80700e7c00608b0184a40388b112034f800c11a5780689300e234061f0", + "0x4880c3e0030b300c0b801c039f001823c0612700e5984780d3e00304480c", + "0xf800c0e20305c8072ce030f800c1260302f807126030f800c1220302e807", + "0x9d00c17001c4a80c3e00303780c07001c4d00c3e00309980c01c01cb900c", + "0x380d00e270210951345c80900c138030f800c2ce0305b807084030f800c", + "0x600e00e278061f00181c4060b900e5dc061f0018208061ca00e01cf800c", + "0x38a20187c00613a0182e0039780187c00606f0180e0038a00187c006133", + "0xed80700e7c00600701a01c520a22f02804f012018290061f00185dc060b7", + "0x39d700e01cf800c3bc0301500700e7c00602f0180a8038073e00305c00c", + "0x69ce00e5e8061f00185e80602f00e5e8061f001801c940072f6030f800c", + "0x5d80c3e00305e8bc01a0cc038bc0187c00600706201c5e80c3e0030bd17b", + "0xf800c0b203007007166030f800c00e0305c807154030f800c176030e5007", + "0x5500c16e01c5b00c3e00300700c17001c5a80c3e00309380c07001c5a00c", + "0x60b70184a4038073e00300380d00e2e85b0b51682cc0900c174030f800c", + "0xf800c3bc0301500700e7c00602f0180a8038073e00301980c25401c039f0", + "0x61f00185c40602f00e5c4061f001801cb08072ea030f800c00e75c03807", + "0x5f98401a0cc039840187c00600706201c5f80c3e0030b897501a73803971", + "0x7007186030f800c00e0305c80730e030f800c182030e5007182030f800c", + "0xb080c3e00300700c17001c6400c3e0030f200c07001cb400c3e00301880c", + "0x38073e00300380d00e32cb08c82d030c0900c196030f800c30e0305b807", + "0xeb80700e7c0061db0184a8038073e0030ef00c05401c039f001873806129", + "0xe70072c0030f800c2c0030178072c0030f800c00e4ac039620187c006007", + "0x61f0018338aa80d06601caa80c3e00300383100e338061f0018580b100d", + "0x6028018038038d10187c0060070182e40395c0187c0060cf018728038cf", + "0x60b700e56c061f0018038060b800e34c061f00187900603800e568061f0", + "0x1300c25201c039f001801c068072a456c6995a1a2048061520187c00615c", + "0xf800c00e190038d60187c0060073ae01c039f00180740612a00e01cf800c", + "0x383100e544061f00183606b00d39c01c6c00c3e00306c00c05e01c6c00c", + "0x39490187c006153018728039530187c00615129e0341980729e030f800c", + "0x61f00187900603800e514061f00180700600e00e370061f001801c060b9", + "0xa21451b8048061390187c0061490182dc0393b0187c00600e0182e003944", + "0x7080c3e0030039d700e01cf800c3880309500700e7c00600701a01c9c93b", + "0xf800c26c384069ce00e4d8061f00184d80602f00e4d8061f001801c94007", + "0x7280c39401c7280c3e00307193101a0cc039310187c00600706201c7180c", + "0x1c007258030f800c02e030070071ce030f800c00e0305c80725c030f800c", + "0x7580c3e00309700c16e01c9280c3e00300700c17001c7480c3e00300f00c", + "0x900d3e00340680c01a030038073e00300380700e3ac928e925839c0900c", + "0x61c400e080061f00180480600e00e01cf800c00e0340381e02e0354b1e4", + "0xf800d044030f20070440740e00e3e00301182001a048038230187c0061c4", + "0x61c400e75c061f00180700600e00e01cf800c00e03403826018a5cef00c", + "0xf800d0540300f00705476c1400e3e0030169d701a05c0382d0187c00601d", + "0x601d00e0c4061f001876c0601c00e01cf800c00e034039ce018a601780c", + "0x38073e0030e500c04001c5c9ca01a7c006033018088038330187c006031", + "0x39f00182e00602000e2dc5c00d3e00301c00c04401c1c00c3e003003823", + "0xf800c34e03013007078030f800c16e030ef00734e030f800c172030ef007", + "0x1780c3b601c039f001801c0680700ea64039f001a0f0d380d05001cd380c", + "0xf800c00e0b4039a50187c0060073ae01c039f00187780602a00e01cf800c", + "0x383100e0f8061f0018690d280d39c01cd200c3e0030d200c05e01cd200c", + "0x38440187c006103018728039030187c00603e08003419807080030f800c", + "0x61f00187900603800e118061f00180a00600e00e470061f001801c060b9", + "0x240462380480604a0187c0060440182dc0391d0187c00600e0182e003848", + "0x61f00181300603c00e130061f001801cd380700e7c00600701a01c2511d", + "0x39f001801c0680724414006a9a09c484069f001a130f202801c6940384c", + "0x38550187c00600708001c2980c3e00300383e00e2c8061f001801cd2007", + "0x230070b2030f800c00e470038570187c00600708801c9300c3e003003903", + "0x384a00e174061f001801c8e8070b8030f800c00e120039270187c006007", + "0x600709c01c9480c3e00300392100e4a0061f001801c260070be030f800c", + "0x61f00184a8949280be1742e1270b215c930550a62c81185000e4a8061f0", + "0x60070182e40386d0187c00604e0180e00386b0187c0061210180380392b", + "0x60b200e1c4061f00184ac0612200e1bc061f0018038060b800e4cc061f0", + "0x9d0710de4cc3686b02e588038740187c00602f01814c0393a0187c0061de", + "0x68070ec0314d9430187c00693001830c039300d24bc330640247c006074", + "0x358072961e4069f001850c0616800e1dc061f001801ceb80700e7c006007", + "0x38073e0030a600c11e01c3e94c01a7c00614b018234038073e00303c80c", + "0xf800c2a82080689300e550061f00181dc0609100e208061f00181f406166", + "0x612700e2184200d3e00303f80c0b201c039f00182000612900e2003f80d", + "0x2f807162030f800c2ac0302e8072ac030f800c10c0302e00700e7c006084", + "0xaf00c3e00303200c01c01c4580c3e00309780c17201c4480c3e00305880c", + "0xf800c1120305b80711e030f800c0d20305c00711a030f800c0cc0301c007", + "0x61f00181d8061ca00e01cf800c00e0340396611e234af08b024030b300c", + "0x60660180e0039670187c006064018038038930187c00612f0182e403891", + "0x49812018254061f0018244060b700e268061f00181a4060b800e5c8061f0", + "0x61de0180a8038073e00301780c3b601c039f001801c0680712a268b9167", + "0xf800c13803017807138030f800c00e4a0038420187c0060073ae01c039f0", + "0x4f00d06601c4f00c3e00300383100e5dc061f00182702100d39c01c4e00c", + "0x38a20187c0060070182e4039780187c0060a0018728038a00187c006177", + "0x61f0018038060b800e5ec061f00184880603800e290061f00181400600e", + "0x39f001801c0680717a5e8bd8a4144048060bd0187c0061780182dc0397a", + "0x38073e0030ef00c05401c039f001876c0612a00e01cf800c39c03094807", + "0x38bb0187c0060bb0180bc038bb0187c00600725601c5e00c3e0030039d7", + "0xf800c1542cc0683300e2cc061f001801c18807154030f800c1762f0069ce", + "0x1400c01c01c5b00c3e00300380c17201c5a80c3e00305a00c39401c5a00c", + "0x5b8072e2030f800c01c0305c0072ea030f800c3c80301c007174030f800c", + "0x612900e01cf800c00e034038bf2e25d45d0b60240305f80c3e00305a80c", + "0x60070c801cc200c3e0030039d700e01cf800c03a0309500700e7c006026", + "0x1880730e030f800c182610069ce00e304061f00183040602f00e304061f0", + "0x6400c3e0030b400c39401cb400c3e0030c38c301a0cc038c30187c006007", + "0xf800c3c80301c007196030f800c038030070072c2030f800c00e0305c807", + "0x659610240306700c3e00306400c16e01cb000c3e00300700c17001cb100c", + "0x61f001801ceb80700e7c0061c40184a8038073e00300380d00e338b0162", + "0x60cf2aa034e700719e030f800c19e0301780719e030f800c00e4a003955", + "0x61ca00e568061f00185706880d06601c6880c3e00300383100e570061f0", + "0x39520187c0060170180380395b0187c0060070182e4038d30187c00615a", + "0x61f001834c060b700e360061f0018038060b800e358061f001807806038", + "0x69f001a0340600d01801c039f001801c038072a23606b1522b604806151", + "0xe2007040030f800c0240300700700e7c00600701a01c0f01701aa70f2012", + "0x68220187900382203a070071f001808c1000d02401c1180c3e0030e200c", + "0xe20073ae030f800c0380300700700e7c00600701a01c1300c53a778061f0", + "0x682a0180780382a3b60a0071f00180b4eb80d02e01c1680c3e00300e80c", + "0xe807062030f800c3b60300e00700e7c00600701a01ce700c53c0bc061f0", + "0x39f00187280602000e2e4e500d3e00301980c04401c1980c3e00301880c", + "0xf800c1700301000716e2e0069f00180e00602200e0e0061f001801c11807", + "0x61a70180980383c0187c0060b7018778039a70187c0060b901877803807", + "0x61db00e01cf800c00e0340380753e01cf800d07869c0682800e69c061f0", + "0x600705a01cd280c3e0030039d700e01cf800c3bc0301500700e7c00602f", + "0x1880707c030f800c348694069ce00e690061f00186900602f00e690061f0", + "0x2200c3e00308180c39401c8180c3e00301f04001a0cc038400187c006007", + "0xf800c3c80301c00708c030f800c05003007007238030f800c00e0305c807", + "0x2311c0240302500c3e00302200c16e01c8e80c3e00300700c17001c2400c", + "0xf800c0980301e007098030f800c00e69c038073e00300380d00e1288e848", + "0xf800c00e034039220a00355004e242034f800d0987901400e34a01c2600c", + "0x2a80c3e00300384000e14c061f001801c1f007164030f800c00e69003807", + "0x38590187c00600723801c2b80c3e00300384400e498061f001801c81807", + "0x250070ba030f800c00e4740385c0187c00600709001c9380c3e003003846", + "0x384e00e4a4061f001801c90807250030f800c00e1300385f0187c006007", + "0xf800c2544a49405f0ba170938590ae4982a85316408c28007254030f800c", + "0x380c17201c3680c3e00302700c07001c3580c3e00309080c01c01c9580c", + "0x590070e2030f800c256030910070de030f800c01c0305c007266030f800c", + "0x3886f2661b4358172c001c3a00c3e00301780c0a601c9d00c3e0030ef00c", + "0x3876018a84a180c3e00349800c18601c9806925e198320123e00303a13a", + "0x394b0f2034f800c286030b40070ee030f800c00e75c038073e00300380d", + "0x39f00185300608f00e1f4a600d3e0030a580c11a01c039f00181e40606b", + "0x6154104034498072a8030f800c0ee03048807104030f800c0fa030b3007", + "0x9380710c210069f00181fc0605900e01cf800c100030948071001fc069f0", + "0x38b10187c006156018174039560187c006086018170038073e00304200c", + "0x61f00181900600e00e22c061f00184bc060b900e224061f00182c40605f", + "0x60890182dc0388f0187c0060690182e00388d0187c0060660180e00395e", + "0xf800c0ec030e500700e7c00600701a01cb308f11a57845812018598061f0", + "0x3300c07001cb380c3e00303200c01c01c4980c3e00309780c17201c4880c", + "0x900c12a030f800c1220305b807134030f800c0d20305c0072e4030f800c", + "0xef00c05401c039f00180bc061db00e01cf800c00e034038951345c8b3893", + "0x609c0180bc0389c0187c00600725001c2100c3e0030039d700e01cf800c", + "0x683300e278061f001801c188072ee030f800c138108069ce00e270061f0", + "0x5100c3e00300380c17201cbc00c3e00305000c39401c5000c3e0030bb89e", + "0xf800c01c0305c0072f6030f800c2440301c007148030f800c0a003007007", + "0xf800c00e034038bd2f45ec520a20240305e80c3e0030bc00c16e01cbd00c", + "0x39f00187780602a00e01cf800c3b60309500700e7c0061ce0184a403807", + "0x5d80c3e00305d80c05e01c5d80c3e00300392b00e2f0061f001801ceb807", + "0x60aa16603419807166030f800c00e0c4038aa0187c0060bb178034e7007", + "0x600e00e2d8061f001801c060b900e2d4061f00182d0061ca00e2d0061f0", + "0x39710187c00600e0182e0039750187c0061e40180e0038ba0187c006028", + "0x9480700e7c00600701a01c5f9712ea2e85b0120182fc061f00182d4060b7", + "0x386400e610061f001801ceb80700e7c00601d0184a8038073e00301300c", + "0x39870187c0060c1308034e7007182030f800c18203017807182030f800c", + "0x61f00185a0061ca00e5a0061f001861c6180d06601c6180c3e003003831", + "0x61e40180e0038cb0187c00601c018038039610187c0060070182e4038c8", + "0xb0812018338061f0018320060b700e580061f0018038060b800e588061f0", + "0xf800c00e75c038073e0030e200c25401c039f001801c0680719c580b10cb", + "0x6795501a738038cf0187c0060cf0180bc038cf0187c00600725001caa80c", + "0xe50072b4030f800c2b83440683300e344061f001801c188072b8030f800c", + "0xa900c3e00300b80c01c01cad80c3e00300380c17201c6980c3e0030ad00c", + "0xf800c1a60305b8071b0030f800c01c0305c0071ac030f800c03c0301c007", + "0xf800d01a0300680c00e01cf800c00e01c039511b0358a915b024030a880c", + "0x38220187c0061c4018710038073e00300380d00e0780b80d5447900900d", + "0xf800d03a030ab007024030f800c0240300700703a070069f001808806086", + "0x608600e0a0061f0018070061c400e01cf800c00e03403823018a8c1000c", + "0xf800c00e0340382a018a90ed80c3e00341300c2ac01c131de01a7c006028", + "0x69f001a75c0615500e01cf800c00e338039d70187c0061de01807003807", + "0x615c00e0c4061f00180bc060cf00e01cf800c00e034039ce018a941782d", + "0x380d00e01d5300c00e568039ca0187c006031018344038330187c00602d", + "0xe700c2b801c1c00c3e00305c80c2b601c5c80c3e0030038d300e01cf800c", + "0x62a7170030f800d394030a9007394030f800c07003068807066030f800c", + "0x61f001869c060d800e69c061f00182e0060d600e01cf800c00e034038b7", + "0x2003e01a544038400187c00603c0180bc0383e0187c0060120180380383c", + "0x39f001801c06807088031541030187c0069a401853c039a434a034f800c", + "0xf800c238030e2007094030f800c34a03007007238030f800c0660302e007", + "0x1549210187c00691d0180780391d090118071f00181302500d02e01c2600c", + "0xf800c090030e20070a6030f800c08c0300700700e7c00600701a01c2700c", + "0x1551260187c0068b2018790038b2244140071f00181542980d02401c2a80c", + "0xf800c244030e20070ba030f800c0a00300700700e7c00600701a01c2b80c", + "0x1559280187c00685c0187900385c24e164071f001817c2e80d02401c2f80c", + "0xf800c24e030e20070cc030f800c0b20300700700e7c00600701a01c9480c", + "0x1560690187c006864018790038642564a8071f00184bc3300d02401c9780c", + "0xf800d0d6030aa8070d6030f800c2560300e00700e7c00600701a01c9800c", + "0xae0070e2030f800c2660306780700e7c00600701a01c3780c55a4cc3680d", + "0x680700eab8060072b401c3a00c3e00303880c1a201c9d00c3e00303680c", + "0x615c00e1d8061f001850c0615b00e50c061f001801c6980700e7c006007", + "0x1578770187c006874018548038740187c0060760183440393a0187c00606f", + "0xf800c2960306c007296030f800c0ee0306b00700e7c00600701a01c3c80c", + "0x4000d2a601c4100c3e0030a600c05e01c4000c3e00309500c01c01ca600c", + "0xf800c00e03403884018ac0aa00c3e00343f80c29201c3f87d01a7c006082", + "0x6156018570039560187c006086018070038860187c00613a01817003807", + "0x10007116224069f00182c40602200e2c4061f00185580601d00e558061f0", + "0x388f11a034f800c2bc030110072bc030f800c00e08c038073e00304480c", + "0x4880c3e00304780c3bc01cb300c3e00304580c3bc01c039f001823406020", + "0x600701a01c03ab100e7c0068912cc034140072cc030f800c2cc03013007", + "0x39f00181a40602a00e01cf800c2a80309d00700e7c0060071b801c039f0", + "0x38073e00309080c3b601c039f00184980602a00e01cf800c25003015007", + "0xeb80700e7c0060200182c4038073e0030ed80c16201c039f001840c060b3", + "0xe70072ce030f800c2ce030178072ce030f800c00e0b4038930187c006007", + "0x61f00185c84d00d06601c4d00c3e00300383100e5c8061f001859c4980d", + "0x607d0180380389c0187c0060070182e4038420187c00609501872803895", + "0x60b700e280061f0018038060b800e278061f00187900603800e5dc061f0", + "0x600734e01c039f001801c068072f02804f177138048061780187c006042", + "0xbd8a401a7c0068a23c81f4071a500e288061f00182880603c00e288061f0", + "0x61f001801cd200700e7c0060071b801c039f001801c0680717a5e806ab2", + "0x5980c3e00300390300e2a8061f001801c20007176030f800c00e0f8038bc", + "0x38b60187c00600708c01c5a80c3e00300391c00e2d0061f001801c22007", + "0x260072e2030f800c00e128039750187c00600723a01c5d00c3e003003848", + "0x1185000e304061f001801c27007308030f800c00e484038bf0187c006007", + "0x60a4018038039870187c0060c13082fcb89751742d85a8b41662a85d8bc", + "0x60b800e338061f001801c060b900e580061f00185ec0603800e588061f0", + "0x395c0187c0060200180bc038cf0187c006187018488039550187c00600e", + "0x61f00184840605300e568061f001840c0614500e344061f001876c0602f", + "0x60690182c8039520187c0061280182c80395b0187c0061260182c8038d3", + "0xad0d12b833caa8ce2c05881193b00e360061f00185500614400e358061f0", + "0x1599510187c0068cb018498038cb2c2320b40c30247c0060d81ac548ad8d3", + "0xa980c3e0030039d700e01cf800c2a20302b80700e7c00600701a01ca780c", + "0xf800c1b80302e00700e7c00614901849c038dc292034f800c2a60302c807", + "0x6400c17201c9d80c3e0030a200c0be01ca200c3e0030a280c0ba01ca280c", + "0x5c00726c030f800c2d00301c0071c2030f800c18603007007272030f800c", + "0x39311c64d8709390240309880c3e00309d80c16e01c7180c3e0030b080c", + "0x392e0187c0060c80182e4038e50187c00614f018728038073e00300380d", + "0x61f0018584060b800e4b0061f00185a00603800e39c061f001830c0600e", + "0x39f001801c0680724a3a4960e725c048061250187c0060e50182dc038e9", + "0x1500700e7c0060690180a8038073e0030aa00c27401c039f001801c6e007", + "0x60b300e01cf800c242030ed80700e7c0061260180a8038073e00309400c", + "0x60073ae01c039f0018080060b100e01cf800c3b60305880700e7c006103", + "0x7580d39c01c9200c3e00309200c05e01c9200c3e00300392800e3ac061f0", + "0x38f00187c0061231dc034198071dc030f800c00e0c4039230187c006124", + "0x61f00185e80600e00e478061f001801c060b900e480061f00183c0061ca", + "0x61200182dc039180187c00600e0182e0038f30187c0060bd0180e0038f6", + "0xf800c1080309480700e7c00600701a01c8b1181e63d88f012018458061f0", + "0x39f00184a00602a00e01cf800c0d20301500700e7c00613a0184e403807", + "0x38073e00308180c16601c039f0018484061db00e01cf800c24c03015007", + "0x39130187c00607d018038038073e00301000c16201c039f001876c060b1", + "0x1000c16201c039f00181e40612900e01cf800c00e034038075680300395a", + "0x61280180a8038073e00303480c05401c039f00184e80613900e01cf800c", + "0xf800c2060305980700e7c00612101876c038073e00309300c05401c039f0", + "0x39f001801c6e007226030f800c2540300700700e7c0061db0182c403807", + "0x8200c3e00308200c05e01c8200c3e0030038e100e420061f001801ceb807", + "0x610222803419807228030f800c00e0c4039020187c006104210034e7007", + "0x600e00e6b8061f001801c060b900e6b0061f0018000061ca00e000061f0", + "0x39b40187c00600e0182e0039b20187c0061e40180e0039b00187c006113", + "0x6e00700e7c00600701a01cdb1b43646c0d70120186d8061f00186b0060b7", + "0x9580c25401c039f0018080060b100e01cf800c2600309480700e7c006007", + "0x612101876c038073e00309300c05401c039f00184a00602a00e01cf800c", + "0x61f001801ceb80700e7c0061db0182c4038073e00308180c16601c039f0", + "0x61ba370034e7007374030f800c37403017807374030f800c00e4d8039b8", + "0x61ca00e700061f00186f0df00d06601cdf00c3e00300383100e6f0061f0", + "0x39c80187c00612a018038039c70187c0060070182e4039c20187c0061c0", + "0x61f0018708060b700e72c061f0018038060b800e724061f001879006038", + "0x9480700e7c0060071b801c039f001801c0680739a72ce49c838e048061cd", + "0x60b100e01cf800c2060305980700e7c0060200182c4038073e00309480c", + "0x9380c25401c039f0018484061db00e01cf800c24c0301500700e7c0061db", + "0x61d50180bc039d50187c0060071c601cea00c3e0030039d700e01cf800c", + "0x683300e760061f001801c188073ac030f800c3aa750069ce00e754061f0", + "0xee00c3e00300380c17201ced00c3e0030ec80c39401cec80c3e0030eb1d8", + "0xf800c01c0305c0073c0030f800c3c80301c0073ba030f800c0b203007007", + "0xf800c00e034039e63c2780ee9dc024030f300c3e0030ed00c16e01cf080c", + "0x38073e00301000c16201c039f001815c0612900e01cf800c00e37003807", + "0x9500700e7c00612101876c038073e0030ed80c16201c039f001840c060b3", + "0x602f00e7a4061f001801c988073d0030f800c00e75c038073e00309100c", + "0x39ed0187c00600706201cf600c3e0030f49e801a738039e90187c0061e9", + "0xf800c00e0305c80756c030f800c56a030e500756a030f800c3d87b406833", + "0x700c17001d5c80c3e0030f200c07001d5c00c3e00302800c01c01d5b80c", + "0x380d00eaed5d2b9570adc0900c576030f800c56c0305b807574030f800c", + "0xf800c0400305880700e7c00604e0184a4038073e0030038dc00e01cf800c", + "0x39f00181200612a00e01cf800c3b60305880700e7c0061030182cc03807", + "0x15e80c3e00315e80c05e01d5e80c3e0030038e500eaf0061f001801ceb807", + "0x62be57e0341980757e030f800c00e0c403abe0187c0062bd578034e7007", + "0x600e00eb08061f001801c060b900eb04061f0018b00061ca00eb00061f0", + "0x3ac50187c00600e0182e003ac40187c0061e40180e003ac30187c006046", + "0x9480700e7c00600701a01d632c5588b0d61012018b18061f0018b04060b7", + "0x60b100e01cf800c0660309c80700e7c0060200182c4038073e00302200c", + "0x600701a01c03ac801801cad00758e030f800c34a0300700700e7c0061db", + "0xf800c0660309c80700e7c0060200182c4038073e00305b80c25201c039f0", + "0x39f001801c6e00758e030f800c0240300700700e7c0061db0182c403807", + "0x16500c3e00316500c05e01d6500c3e00300396100eb24061f001801ceb807", + "0x62cb59803419807598030f800c00e0c403acb0187c0062ca592034e7007", + "0x600e00eb38061f001801c060b900e7d4061f0018b34061ca00eb34061f0", + "0x3ad10187c00600e0182e003ad00187c0061e40180e003acf0187c0062c7", + "0x9480700e7c00600701a01d692d15a0b3d67012018b48061f00187d4060b7", + "0x39d700e01cf800c3bc0309500700e7c0060200182c4038073e00301500c", + "0x69ce00eb50061f0018b500602f00eb50061f001801c958075a6030f800c", + "0x16b00c3e0030fa2d501a0cc03ad50187c00600706201cfa00c3e00316a2d3", + "0xf800c024030070075b0030f800c00e0305c8075ae030f800c5ac030e5007", + "0x16b80c16e01d6d80c3e00300700c17001d6d00c3e0030f200c07001d6c80c", + "0x60230184a4038073e00300380d00eb716dada5b2b600900c5b8030f800c", + "0x61f001801c320075ba030f800c00e75c038073e00300e00c25401c039f0", + "0x600706201d6f80c3e00316f2dd01a73803ade0187c0062de0180bc03ade", + "0x5c8075c4030f800c5c2030e50075c2030f800c5beb800683300eb80061f0", + "0x17200c3e0030f200c07001cf980c3e00300900c01c01d7180c3e00300380c", + "0x172ae43e6b8c0900c5cc030f800c5c40305b8075ca030f800c01c0305c007", + "0x3ae70187c0060073ae01c039f00187100612a00e01cf800c00e03403ae6", + "0x61f0018ba17380d39c01d7400c3e00317400c05e01d7400c3e003003928", + "0x62eb01872803aeb0187c0062e95d4034198075d4030f800c00e0c403ae9", + "0x603800ebb8061f001805c0600e00ebb4061f001801c060b900ebb0061f0", + "0x62f10187c0062ec0182dc03af00187c00600e0182e003aef0187c00601e", + "0x680d3e0030e200c10c01ce200c3e00300600c38801d78af05debb976812", + "0x380d25c01c039f001801c068073c8031790120187c00680e0185580380e", + "0x61f0018078060e700e01cf800c00e0340381c018bcc0f01701a7c006812", + "0x601d0184b0038200187c00600d018710038220187c0060170180380381d", + "0x39de0187c0060071a601c039f001801c068070460801100e01808c061f0", + "0x61f0018034061c400e0a0061f00180700600e00e098061f0018778060e9", + "0x7480700e7c00600701a01c151db0500380602a0187c0060260184b0039db", + "0x1780c3e00300680c38801c1680c3e00300380c01c01ceb80c3e0030f200c", + "0x380d0187c00600c018070039ce05e0b40700c39c030f800c3ae03096007", + "0x61c401833c038073e00300380d00e048062f4388038069f001a03406155", + "0x395a00e078061f0018790060d100e05c061f00180380615c00e790061f0", + "0xf800c038030ad807038030f800c00e34c038073e00300380d00e01d7a80c", + "0xb80c0b801c0f00c3e00300e80c1a201c0b80c3e00300900c2b801c0e80c", + "0x62f6040030f800d03c030a9007044030f800c044030e2007044030f800c", + "0x61f0018778060d800e778061f0018080060d600e01cf800c00e03403823", + "0xeb82a01a494039d70187c0060260180bc0382a0187c00600701803803826", + "0x39f001801c0680705e0317b82d0187c0069db0183ac039db050034f800c", + "0x68073940317c033062034f800d39c030aa80739c030f800c0440300e007", + "0x68807070030f800c062030ae007172030f800c0660306780700e7c006007", + "0x60071a601c039f001801c0680700ebe4060072b401c5c00c3e00305c80c", + "0x60d100e0e0061f00187280615c00e69c061f00182dc0615b00e2dc061f0", + "0x383c0187c00603c0187100383c0187c006038018170038b80187c0061a7", + "0xf800c34a0306b00700e7c00600701a01cd200c5f4694061f001a2e006152", + "0x2000c05e01c8e00c3e00301400c01c01c2000c3e00301f00c1b001c1f00c", + "0x2400c3e00342200c1d601c2210301a7c0060462380349280708c030f800c", + "0x2500c24601c2500c3e00302402d01a490038073e00300380d00e474062fb", + "0x7700709c030f800c078030e2007242030f800c20603007007098030f800c", + "0x602d0183c0038073e00300380d00e1402712101c0302800c3e00302600c", + "0x60072b401c5900c3e00308e80c24001c9100c3e00308180c01c01c039f0", + "0x39f00180b4060f000e01cf800c3480309480700e7c00600701a01c03afc", + "0x61f001814c0612000e488061f00180a00600e00e14c061f001801c69807", + "0x603c018710039260187c006122018038038550187c0060b2018478038b2", + "0x39f001801c068070b215c9300e018164061f0018154060ee00e15c061f0", + "0x3afd01801cad0070b8030f800c05e0309000724e030f800c05003007007", + "0x70070ba030f800c00e34c038073e00301180c25201c039f001801c06807", + "0x2f80c3e00302e00c23c01c2e00c3e00302e80c24001c9380c3e00300380c", + "0xf800c0be03077007252030f800c044030e2007250030f800c24e03007007", + "0x381d0187c00600c0180e0038073e0030038dc00e4a89492801c0309500c", + "0xe00c1e601c0e01e02e038f800c044074068f600e088061f0018038060b8", + "0x131de0467c0061c4018460038073e00300380d00e08c062fe040030f800d", + "0x70071700e0069f00180b40611600e2e4e50330627381782d3ae0a8ed828", + "0x2000c3e00300f00c17001c1f00c3e00300b80c07001cd200c3e00300380c", + "0xd283c34e2dce21f001840c2003e34871084007206030f800c17003089807", + "0x6020018410038073e00300380d00e470062ff088030f800d34a03079807", + "0x611400e01cf800c0900301500723a120069f00181180610200e118061f0", + "0x39210187c0060440184100384c0187c00604a0180000384a0187c00611d", + "0x61f00181400611400e01cf800c09c030150070a0138069f001848406102", + "0x2980c16201c2a85301a7c00604c018254038b20187c00612201800003922", + "0x60d800e01cf800c24c030588070ae498069f00182c80609500e01cf800c", + "0x2e00c3e00309385901a6b0039270187c006057018360038590187c006055", + "0x600701a01c2e80c60001cf800d0b8030d70070b8030f800c0b803017807", + "0x2f80c3e00305c9ca0660c4e702f07075c151db050098ef0230a001c039f0", + "0xf800c01a0305c80725e030f800c34e0301c0070cc030f800c16e03007007", + "0x900c16401c3580c3e00302f80c24401c9800c3e00301e00c17001c3480c", + "0x9986d0d64c03492f0cc05cd8007266030f800c3c8030298070da030f800c", + "0x380d00e1c4063010de030f800d0c8030930070c84ac95129250048f800c", + "0x38d300e01cf800c0e8030948070e84e8069f00181bc061b200e01cf800c", + "0x38770187c0060760186d8038760187c006143274034da007286030f800c", + "0x61f00184a8060b900e52c061f00184a40603800e1e4061f00184a00600e", + "0xa614b0f20480607f0187c0060770186e00387d0187c00612b0182e00394c", + "0xf800c25003007007100030f800c0e2030dd00700e7c00600701a01c3f87d", + "0x9580c17001c4200c3e00309500c17201caa00c3e00309480c07001c4100c", + "0x380d00e558430842a82080900c2ac030f800c100030dc00710c030f800c", + "0x60120180a8038073e0030f200c3b601c039f0018174061bc00e01cf800c", + "0xf800c066030e100700e7c0061ca018700038073e00305c80c37c01c039f0", + "0x39f00180bc061c900e01cf800c39c030e400700e7c00603101871c03807", + "0x38073e00301500c3a801c039f001875c061cd00e01cf800c070030e5807", + "0xec80700e7c006026018760038073e00301400c3ac01c039f001876c061d5", + "0x602f00e224061f001801ced007162030f800c00e75c038073e0030ef00c", + "0x395e0187c00600706201c4580c3e0030448b101a738038890187c006089", + "0xf800c16e0300700711e030f800c11a030dd00711a030f800c11657806833", + "0x1e00c17001c4980c3e00300680c17201c4880c3e0030d380c07001cb300c", + "0x380d00e5c8b38931225980900c2e4030f800c11e030dc0072ce030f800c", + "0x60b90186f8038073e00300900c05401c039f0018790061db00e01cf800c", + "0xf800c062030e380700e7c006033018708038073e0030e500c38001c039f0", + "0x39f00180e0061cb00e01cf800c05e030e480700e7c0061ce01872003807", + "0x38073e0030ed80c3aa01c039f00180a8061d400e01cf800c3ae030e6807", + "0xee00700e7c0061de018764038073e00301300c3b001c039f00180a0061d6", + "0x38950187c0060b70180380389a0187c00611c0186e8038073e00301000c", + "0x61f00180f0060b800e270061f0018034060b900e108061f001869c06038", + "0x39f001801c0680713c5dc4e04212a0480609e0187c00609a0186e003977", + "0x38073e0030e200c0d601c039f00180480602a00e01cf800c3c8030ed807", + "0x61f001805c0603800e5e0061f001801c0600e00e280061f001808c061ba", + "0x60a00186e00397b0187c00601e0182e0038a40187c00600d0182e4038a2", + "0xf800c0180301c00700e7c0060071b801cbd17b148288bc0120185e8061f0", + "0x381c03c05c071f00180880e80d1ec01c1100c3e00300700c17001c0e80c", + "0xf800c3880308c00700e7c00600701a01c1180c604080061f001a070060f3", + "0x1c00d3e00301680c22c01c5c9ca0660c4e702f05a75c151db050098ef023", + "0x601e0182e00383e0187c0060170180e0039a40187c006007018038038b8", + "0x5b9c43e00308184007c690e210800e40c061f00182e00611300e100061f0", + "0x8200700e7c00600701a01c8e00c606110061f001a694060f300e6941e1a7", + "0x39f00181200602a00e4742400d3e00302300c20401c2300c3e00301000c", + "0xf800c08803082007098030f800c09403000007094030f800c23a0308a007", + "0x2800c22801c039f00181380602a00e1402700d3e00309080c20401c9080c", + "0x38550a6034f800c0980304a807164030f800c24403000007244030f800c", + "0x39f0018498060b100e15c9300d3e00305900c12a01c039f001814c060b1", + "0x61270b2034d600724e030f800c0ae0306c0070b2030f800c0aa0306c007", + "0x385d018c10039f001a170061ae00e170061f00181700602f00e170061f0", + "0x60b93940cc189ce05e0e0eb82a3b60a0131de046140038073e00300380d", + "0x60b900e4bc061f001869c0603800e198061f00182dc0600e00e17c061f0", + "0x386b0187c00605f018488039300187c00603c0182e0038690187c00600d", + "0x9806925e1980b9dd00e4cc061f00187900605300e1b4061f0018048060b2", + "0x3880c60a1bc061f001a1900612600e1909592a2524a0091f00184cc3686b", + "0x39f00181d00612900e1d09d00d3e00303780c36401c039f001801c06807", + "0xf800c0ec030db0070ec030f800c2864e8069b400e50c061f001801c69807", + "0x9500c17201ca580c3e00309480c07001c3c80c3e00309400c01c01c3b80c", + "0x900c0fe030f800c0ee030dc0070fa030f800c2560305c007298030f800c", + "0x600e00e200061f00181c4061ba00e01cf800c00e0340387f0fa530a5879", + "0x38840187c00612a0182e4039540187c0061290180e0038820187c006128", + "0xab08610855041012018558061f0018200061b800e218061f00184ac060b8", + "0x1500700e7c0061e401876c038073e00302e80c37801c039f001801c06807", + "0x61c200e01cf800c394030e000700e7c0060b90186f8038073e00300900c", + "0x1780c39201c039f0018738061c800e01cf800c062030e380700e7c006033", + "0x602a018750038073e0030eb80c39a01c039f00180e0061cb00e01cf800c", + "0xf800c04c030ec00700e7c006028018758038073e0030ed80c3aa01c039f0", + "0x4480c3e0030039da00e2c4061f001801ceb80700e7c0061de01876403807", + "0xf800c00e0c40388b0187c006089162034e7007112030f800c11203017807", + "0x600e00e23c061f0018234061ba00e234061f001822caf00d06601caf00c", + "0x38930187c00600d0182e4038910187c0061a70180e0039660187c0060b7", + "0xb9167126244b30120185c8061f001823c061b800e59c061f00180f0060b8", + "0xdf00700e7c0060120180a8038073e0030f200c3b601c039f001801c06807", + "0x61c700e01cf800c066030e100700e7c0061ca018700038073e00305c80c", + "0x1c00c39601c039f00180bc061c900e01cf800c39c030e400700e7c006031", + "0x61db018754038073e00301500c3a801c039f001875c061cd00e01cf800c", + "0xf800c3bc030ec80700e7c006026018760038073e00301400c3ac01c039f0", + "0xf800c16e03007007134030f800c238030dd00700e7c00602001877003807", + "0x1e00c17001c4e00c3e00300680c17201c2100c3e0030d380c07001c4a80c", + "0x380d00e278bb89c0842540900c13c030f800c134030dc0072ee030f800c", + "0x61c40181ac038073e00300900c05401c039f0018790061db00e01cf800c", + "0xb80c07001cbc00c3e00300380c01c01c5000c3e00301180c37401c039f0", + "0xdc0072f6030f800c03c0305c007148030f800c01a0305c807144030f800c", + "0x600e00e01cf800c00e3700397a2f629051178024030bd00c3e00305000c", + "0x39de0187c00600d0182e4038230187c00600c0180e0038200187c006007", + "0x61f0018048060b200e0a0061f00187100612200e098061f0018038060b8", + "0x91f00180a8ed82804c7781182002e1540382a0187c0061e401814c039db", + "0x39f001801c0680705a031831d70187c0068220184980382203a0700f017", + "0x61f001801c6980700e7c0061ce0184a4039ce05e034f800c3ae030d9007", + "0xb80c01c01ce500c3e00301980c36c01c1980c3e00301882f01a6d003831", + "0x5c007170030f800c0380305c807070030f800c03c0301c007172030f800c", + "0x39a716e2e01c0b9024030d380c3e0030e500c37001c5b80c3e00300e80c", + "0x39a50187c0060170180380383c0187c00602d0186e8038073e00300380d", + "0x61f0018074060b800e0f8061f0018070060b900e690061f001807806038", + "0x39f001801c6e0072061001f1a434a048061030187c00603c0186e003840", + "0xf800c01a0305c807046030f800c0180301c007040030f800c00e03007007", + "0x900c16401c1400c3e0030e200c24401c1300c3e00300700c17001cef00c", + "0x151db050098ef02304005c33007054030f800c3c8030298073b6030f800c", + "0x380d00e0b4063073ae030f800d044030930070440740e01e02e048f800c", + "0x38d300e01cf800c39c0309480739c0bc069f001875c061b200e01cf800c", + "0x39ca0187c0060330186d8038330187c00603105e034da007062030f800c", + "0x61f0018070060b900e0e0061f00180780603800e2e4061f001805c0600e", + "0x5c038172048061a70187c0061ca0186e0038b70187c00601d0182e0038b8", + "0xf800c02e03007007078030f800c05a030dd00700e7c00600701a01cd38b7", + "0xe80c17001c1f00c3e00300e00c17201cd200c3e00300f00c07001cd280c", + "0x611800e40c2003e3486940900c206030f800c078030dc007080030f800c", + "0x61c40187640382804c778118200440740e01e02e790091c40467c00600e", + "0xf800c02e030ea80700e7c0061e4018758038073e00300900c3b001c039f0", + "0x39f0018074061cb00e01cf800c038030e680700e7c00601e01875003807", + "0x38073e0030ef00c38401c039f001808c061c700e01cf800c040030e4007", + "0x382f0187c006007018038038073e00301400c37c01c039f0018098061c0", + "0x61f0018088061e000e0c4061f0018034060b800e738061f001803006038", + "0x61f001a0b40613300e0b4eb82a3b6710f800c0660c4e702f38878403833", + "0x1c00c3cc01c1c00c3e0030e500c0de01c039f001801c06807172031841ca", + "0x1c00734e030f800c3b60300700716e030f800c170030f4007170030f800c", + "0xd200c3e00305b80c3d201cd280c3e0030eb80c17001c1e00c3e00301500c", + "0x700707c030f800c172030f600700e7c00600701a01cd21a507869ce200c", + "0x2200c3e0030eb80c17001c8180c3e00301500c07001c2000c3e0030ed80c", + "0x39c40187c0060073da01c8e044206100e200c238030f800c07c030f4807", + "0x61c400e078061f001801c0600e00e01cf800c00e370038073e003003ab5", + "0xf800d02e0315b80702e7900900e3e00300e01e01aad80381c0187c00600d", + "0x603800e778061f00180480600e00e01cf800c00e0340381d018c240700c", + "0x700c3e0030071c401aae0038280187c0061e4018710038260187c00600c", + "0x630a3b6030f800d0460315d0070460801100e3e0030140263bc0395c807", + "0xf800d05a0315e00705a75c069f001876c062bb00e01cf800c00e0340382a", + "0x62bd00e728061f001875c061c400e01cf800c00e034039ce018c2c1780c", + "0xf800c00e03403838018c305c80c3e00341980c57c01c1983101a7c0061ca", + "0x6ac100e2dc061f00182e0062c000e2e0061f00182e41780e01cafc03807", + "0xd280c3e00301100c01c01c1e00c3e0030d380c58401cd380c3e00305b831", + "0x383e3486940700c07c030f800c07803161807348030f800c0400301c007", + "0x62c600e01cf800c05e0316280700e7c00600e018b10038073e00300380d", + "0x2200c3e00308180c58401c8180c3e00302003101ab04038400187c006038", + "0xf800c0880316180708c030f800c0400301c007238030f800c04403007007", + "0x16300700e7c00600e018b10038073e00300380d00e1202311c01c0302400c", + "0x61f0018128062c200e128061f0018474eb80d58201c8e80c3e0030e700c", + "0x604c018b0c0384e0187c0060200180e0039210187c0060220180380384c", + "0x38073e00300700c58801c039f001801c068070a01389080e018140061f0", + "0x61f00180800603800e2c8061f00180880600e00e488061f00180a8062c7", + "0x16480700e7c00600701a01c2a853164038060550187c006122018b0c03853", + "0x2b80c3e0030931e401ab04039260187c00601d018b18038073e0030e200c", + "0xf800c0180301c00724e030f800c024030070070b2030f800c0ae03161007", + "0x38073e0030038dc00e1742e12701c0302e80c3e00302c80c58601c2e00c", + "0x61f00180380607d00e080061f00180300603800e088061f001801c0600e", + "0xe01e02e710f800c3bc08c10022388b28039de0187c0061e40181fc03823", + "0x1300c13401c039f001801c06807050031868260187c00681d0185c80381d", + "0x5c0381727281983139c0bc169d705408cf800c0240308c0073b6030f800c", + "0xf800c05a030eb00700e7c0061d7018760038073e00301500c3b201cd38b7", + "0x39f00180c4061cd00e01cf800c39c030ea00700e7c00602f01875403807", + "0x38073e00301c00c38e01c039f0018728061c900e01cf800c066030e5807", + "0x700700e7c0061a70186f8038073e00305b80c38001c039f00182e0061c2", + "0x8e00c3e00300680c17201c2200c3e00300f00c07001c8180c3e00300b80c", + "0xf800c3b603017807090030f800c1720316580708c030f800c3880305c007", + "0x613300e1001f1a434a0f0091f001847424046238110819e459801c8e80c", + "0x9080c3e00302500c0de01c039f001801c068070980318704a0187c006840", + "0xf800c078030070070a0030f800c09c030f400709c030f800c242030f3007", + "0xe00c0fa01c2980c3e0030d200c17201c5900c3e0030d280c07001c9100c", + "0xf200c0ae030f800c0a0030f480724c030f800c07c0305c0070aa030f800c", + "0x70070b2030f800c098030f600700e7c00600701a01c2b9260aa14c59122", + "0x2e80c3e0030d200c17201c2e00c3e0030d280c07001c9380c3e00301e00c", + "0xf800c0b2030f4807250030f800c07c0305c0070be030f800c0380303e807", + "0xf800c0240303580700e7c00600701a01c949280be1742e1273c80309480c", + "0x601e0180e00392b0187c0060170180380392a0187c0060280187b003807", + "0x60b800e4bc061f00180700607d00e198061f0018034060b900e190061f0", + "0x39300d24bc33064256790061300187c00612a0187a4038690187c0061c4", + "0x15a807040030f800c00eb380381d0187c0060073ea01c0f00c3e003003acd", + "0x600e00e7781180d3e00300900c26001c039f001801c6e00700e7c006007", + "0x39ce0187c00600d0182e40382f0187c00600c0180e00382d0187c006007", + "0x189ce05e0b4092cf00e0cc061f00187780612200e0c4061f0018710060b8", + "0x6807172031879ca0187c0069d7018b40039d705476c140260247c006033", + "0x60b800e69c061f00180a00603800e01cf800c3940316880700e7c006007", + "0xf800d16e0309980716e2e01c00e3e00301e1a701ab480383c0187c00602a", + "0x70070800f8069f001808c0613000e01cf800c00e034039a4018c40d280c", + "0x2500c3e00305c00c17001c8e80c3e00301c00c07001c2400c3e00301300c", + "0x2311c08840ce21f00181302511d09071036807098030f800c08003091007", + "0x61a50181bc038073e00300380d00e13806311242030f800d08c03099807", + "0x614400e154061f001840c0600e00e488061f00184840606f00e140061f0", + "0x69f001815c9305501cb4c038570187c006122018510039260187c006050", + "0x606f00e01cf800c00e03403927018c482c80c3e00342980c26601c298b2", + "0xfa007252030f800c164030070070ba030f800c00eb500385c0187c006059", + "0x61f00181740614400e4a8061f00184a80614400e4a82e00d3e00302e00c", + "0x6313044030f800d2500309980725017c069f00184ac9512901cb4c0392b", + "0x61f00181100603800e4cc061f001817c0600e00e01cf800c00e03403864", + "0x611c0182e00393a0187c00600e0181f4038710187c0061db0182e40386f", + "0x3f8070ec790069f0018790062d500e50c061f00180f80612200e1d0061f0", + "0x61f00180881000d5ac01c3b80c3e00302e00c28801c3b00c3e00303b00c", + "0x386d0d64c03492f0cc790f800c0ee1d8a18742741c43793303cb5c03822", + "0xf800c0440303780700e7c00600701a01ca580c6281e4061f001a1b406126", + "0x3300c01c01c039f00181fc0612900e1fc3e80d3e00303c80c36401ca600c", + "0x3e807162030f800c0d20305c8072ac030f800c25e0301c00710c030f800c", + "0xaf00c3e00303e80c24401c4580c3e00303580c17001c4480c3e00309800c", + "0x614c0185100388d0187c00608d0181fc0388d3c8034f800c3c80316a807", + "0xaa017038208401e43e00304788d2bc22c448b12ac2180f2d800e23c061f0", + "0x612600e05c061f001805c0f00d5b401c0e00c3e00300e01d01ab6403884", + "0x4980d3e0030b300c36401c039f001801c068071220318a9660187c006884", + "0xf800c100030070072e4030f800c3c80316d80700e7c0061670184a403967", + "0x4980c24401c5000c3e0030aa00c17001c4f00c3e00304100c07001cbb80c", + "0xf800c1445e05009e2ee0496e807144030f800c2e40316e0072f0030f800c", + "0x39f001801c068072f60318b0a40187c00689c0184980389c0842544d1c4", + "0x61f001801c6980700e7c0060bd0184a4038bd2f4034f800c148030d9007", + "0x4d00c01c01c5500c3e00305d80c36c01c5d80c3e00305e17a01a6d0038bc", + "0x3e80716a030f800c0380305c807168030f800c12a0301c007166030f800c", + "0xba80c3e00305500c37001c5d00c3e00302100c17001c5b00c3e00300b80c", + "0xb880c3e0030bd80c37401c039f001801c068072ea2e85b0b51682ccf200c", + "0xf800c0380305c807308030f800c12a0301c00717e030f800c13403007007", + "0xb880c37001c6180c3e00302100c17001cc380c3e00300b80c0fa01c6080c", + "0xf200c29801c039f001801c068072d030cc38c13082fcf200c2d0030f800c", + "0x603800e584061f00182000600e00e320061f0018244061ba00e01cf800c", + "0x39600187c0060170181f4039620187c00601c0182e4038cb0187c006082", + "0x671602c432cb09e4018554061f0018320061b800e338061f0018550060b8", + "0x38073e00300e80c5bc01c039f00187900614c00e01cf800c00e03403955", + "0x38cf0187c00614b0186e8038073e00301100c5c001c039f0018078062df", + "0x61f00181a4060b900e344061f00184bc0603800e570061f00181980600e", + "0x60cf0186e00395b0187c00606b0182e0038d30187c0061300181f40395a", + "0x61e4018530038073e00300380d00e548ad8d32b4344ae1e4018548061f0", + "0xf800c0b80309d00700e7c00601e018b7c038073e00300e80c5bc01c039f0", + "0x61f0018190061ba00e01cf800c0400317080700e7c00603e0181ac03807", + "0x61db0182e4039510187c0060440180e0038d80187c00605f018038038d6", + "0x61b800e524061f0018470060b800e54c061f00180380607d00e53c061f0", + "0x614c00e01cf800c00e034038dc29254ca79511b0790060dc0187c0060d6", + "0x1000c5c201c039f0018078062df00e01cf800c03a0316f00700e7c0061e4", + "0x5900c01c01ca280c3e00309380c37401c039f00180f80606b00e01cf800c", + "0x3e807272030f800c3b60305c807276030f800c0880301c007288030f800c", + "0x7180c3e0030a280c37001c9b00c3e00308e00c17001c7080c3e00300700c", + "0x38073e0030f200c29801c039f001801c068071c64d870939276510f200c", + "0x3580700e7c006020018b84038073e00300f00c5be01c039f0018074062de", + "0x7007262030f800c09c030dd00700e7c0061a5018b80038073e00301f00c", + "0x7380c3e0030ed80c17201c9700c3e00302200c07001c7280c3e00308180c", + "0xf800c262030dc0071d2030f800c2380305c007258030f800c01c0303e807", + "0xf800c3c8030a600700e7c00600701a01c928e925839c970e53c80309280c", + "0x39f0018080062e100e01cf800c03c0316f80700e7c00601d018b7803807", + "0x61f00180980600e00e3ac061f0018690061ba00e01cf800c04603035807", + "0x600e0181f4038ee0187c0061db0182e4039230187c0060380180e003924", + "0x921e4018478061f00183ac061b800e480061f00182e0060b800e3c0061f0", + "0xe80c5bc01c039f00187900614c00e01cf800c00e0340391e2403c077123", + "0x60230181ac038073e00301000c5c201c039f0018078062df00e01cf800c", + "0x1400c07001c7980c3e00301300c01c01c7b00c3e00305c80c37401c039f0", + "0x5c007226030f800c01c0303e80722c030f800c3b60305c807230030f800c", + "0x821082264588c0f33c80308200c3e00307b00c37001c8400c3e00301500c", + "0x6e00700e7c00600756a01c0e80c3e003003acd00e078061f001801cfa807", + "0x382a0187c00600701803803820044034f800c0240309800700e7c006007", + "0x61f0018710060b800e0b4061f0018034060b900e75c061f001803006038", + "0xef0230247c0061ce05e0b4eb82a024b3c039ce0187c0060200184880382f", + "0x16880700e7c00600701a01c1980c62e0c4061f001a76c062d000e76c14026", + "0xd200c3e00301180c01c01c5c9ca01a7c0060220184c0038073e00301880c", + "0xf800c01c0303e807080030f800c04c0305c80707c030f800c3bc0301c007", + "0xf200c5aa01c8e00c3e00305c80c24401c2200c3e00301400c17001c8180c", + "0x8e0442061001f1a402e200038460187c0060460181fc038463c8034f800c", + "0x391d018c602400c3e0034d280c26601cd283c34e2dc5c0383c87c006046", + "0x9084c01a7c00604a0181c40384a0187c0060480181bc038073e00300380d", + "0x2800d3e00302700c0e201c2700c3e003003ae200e01cf800c0980309d007", + "0xf800c16403038807164030f800c2420303a00700e7c0060500184e803922", + "0x9300c0e201c9300c3e00309100c0e801c039f001814c0613a00e1542980d", + "0x3a00724e030f800c0aa0303a00700e7c0060570184e8038590ae034f800c", + "0x39f001801c0680700ec64039f001a1709380d5c601c2e00c3e00302c80c", + "0x61f00182e00603800e198061f00180e00600e00e174061f001801d71007", + "0x603c0182e0039300187c0061a70181f4038690187c0060b70182e40392f", + "0x3f807266790069f0018790062d500e1b4061f00187280612200e1ac061f0", + "0x359300d24bc3301e5ae01c3780c3e00302e80c28801c9980c3e00309980c", + "0x631a0e2030f800d0c8030930070c84ac9512925017cf21f00181bc9986d", + "0xf800c286030948072861d0069f00181c4061b200e01cf800c00e0340393a", + "0xf800c2500301c0070fa030f800c0be030070070ec030f800c00eb8803807", + "0x9580c17001c4100c3e00309500c0fa01c4000c3e00309480c17201c3f80c", + "0x38863c8034f800c3c80316a807108030f800c0e8030910072a8030f800c", + "0x410800fe1f40f2d800e558061f00181d80614400e218061f00182180607f", + "0xb80c3e00300b81e01ab640394c2960700b8790ee790f800c2ac21842154", + "0x68071120318d8b10187c00694c0184980381c0187c00601c03a0356d007", + "0xf980700e7c00615e0184a40395e116034f800c162030d900700e7c006007", + "0xb900c3e00303c80c07001cb380c3e00303b80c01c01c4680c3e0030f200c", + "0xf800c11a0317200712a030f800c11603091007134030f800c2960305c007", + "0x689301849803893122598479c43e0030210951345c8b38125ca01c2100c", + "0x38a013c034f800c138030d900700e7c00600701a01cbb80c638270061f0", + "0x5100c3e0030b300c07001cbc00c3e00304780c01c01c039f001828006129", + "0xf800c1220305c0072f6030f800c0380303e807148030f800c02e0305c807", + "0x39f001801c0680700ec74060072b401c5e80c3e00304f00c24401cbd00c", + "0xf800c2cc0301c007176030f800c11e03007007178030f800c2ee030dd007", + "0x4880c17001c5a00c3e00300e00c0fa01c5980c3e00300b80c17201c5500c", + "0x680716c2d45a0b31542ecf200c16c030f800c178030dc00716a030f800c", + "0x600e00e2e8061f0018224061ba00e01cf800c3c8030a600700e7c006007", + "0x38bf0187c0060170182e4039710187c0060790180e0039750187c006077", + "0x61f00182e8061b800e304061f001852c060b800e610061f00180700607d", + "0x39f00187900614c00e01cf800c00e034039871826105f9712ea79006187", + "0x6180c3e00309d00c37401c039f0018074062df00e01cf800c03c0316f007", + "0xf800c2520305c807190030f800c2500301c0072d0030f800c0be03007007", + "0x6180c37001cb100c3e00309580c17001c6580c3e00309500c0fa01cb080c", + "0xf200c29801c039f001801c068072c0588659611905a0f200c2c0030f800c", + "0x6038018038038073e00300e80c5be01c039f0018078062de00e01cf800c", + "0x607d00e290061f00182dc060b900e288061f00182e00603800e5e0061f0", + "0x38bd0187c0061ca0184880397a0187c00603c0182e00397b0187c0061a7", + "0x61f0018554061b600e554061f00183385e80d36801c6700c3e0030038d3", + "0x60a40182e4038d10187c0060a20180e00395c0187c006178018038038cf", + "0x61b800e56c061f00185e8060b800e34c061f00185ec0607d00e568061f0", + "0x614c00e01cf800c00e034039522b634cad0d12b8790061520187c0060cf", + "0xe500c0d601c039f0018074062df00e01cf800c03c0316f00700e7c0061e4", + "0x603800e360061f00180e00600e00e358061f0018474061ba00e01cf800c", + "0x39530187c0061a70181f40394f0187c0060b70182e4039510187c0060b8", + "0xa495329e5446c1e4018370061f0018358061b800e524061f00180f0060b8", + "0x38073e00300f00c5bc01c039f00187900614c00e01cf800c00e034038dc", + "0x39450187c0060330186e8038073e00301100c0d601c039f0018074062df", + "0x61f0018098060b900e4ec061f00187780603800e510061f001808c0600e", + "0x61450186e0039360187c0060280182e0038e10187c00600e0181f403939", + "0x60075ce01c0f00c3e003003ae600e38c9b0e12724eca21e401838c061f0", + "0xf800c00e7d4039de0187c00600759a01c1000c3e003003ae800e074061f0", + "0x39f001801d5a80705a030f800c00eb380382a0187c00600759c01c1400c", + "0x61f001801c0600e00e7381780d3e00300900c26001c039f001801c6e007", + "0x61c40182e0039a70187c00600d0182e4038b70187c00600c0180e0038b8", + "0x91f00186941e1a716e2e0092cf00e694061f00187380612200e0f0061f0", + "0x39f001801c0680707c0318f1a40187c006838018b400383817272819831", + "0xf800c0660301c007206100069f00180bc0613000e01cf800c34803168807", + "0x2400e5d201c2500c3e00308180c24401c8e80c3e00305c80c17001c2400c", + "0x380d00e4840631f098030f800d08c0304580708c4702200e3e00302511d", + "0x616600e140061f0018138062ea00e138061f00181300615e00e01cf800c", + "0x39f001801c06807164031901220187c006850018bac038500187c006050", + "0x38073e00301000c5da01c039f0018078062ec00e01cf800c24403094807", + "0xa600700e7c00601d018bb8038073e00302000c0d601c039f00180b4062e1", + "0x62e100e01cf800c3bc0316f80700e7c006028018b78038073e0030f200c", + "0x2a80c05e01c2a80c3e003003aef00e14c061f001801ceb80700e7c00602a", + "0x198070ae030f800c00e0c4039260187c0060550a6034e70070aa030f800c", + "0x61f00180c40600e00e49c061f0018164061ba00e164061f00184982b80d", + "0x600e0181f40385f0187c0061ca0182e40385d0187c0060440180e00385c", + "0x2e1e40184a8061f001849c061b800e4a4061f0018470060b800e4a0061f0", + "0x2200c07001c039f00182c80612900e01cf800c00e0340392a2524a02f85d", + "0x3212b01c7c00606925e035690070d2030f800c2380305c00725e030f800c", + "0x2000c26001c039f001801c06807260031909db0187c0068660184cc03866", + "0x38770187c00612b0180e0038760187c0060310180380386d0d6034f800c", + "0x61f0018190060b800e52c061f00180380607d00e1e4061f0018728060b9", + "0x3f80c0fe01c3f9e401a7c0061e4018b540387d0187c00606d0184880394c", + "0x3e94c2961e43b87602e200039db0187c0061db0540356b0070fe030f800c", + "0x3880018c88eb80c3e0034a180c26601ca18742741c4379333c87c00607f", + "0x4480c3e00309980c01c01caa08201a7c00606b0184c0038073e00300380d", + "0xf800c2740303e8072bc030f800c0e20305c807116030f800c0de0301c007", + "0xf200c5aa01cb300c3e0030aa00c24401c4780c3e00303a00c17001c4680c", + "0xeb80c3e0030eb82d01ab58038910187c0060910181fc038913c8034f800c", + "0x6ad900e2c4ab02304c218421e43e00304896611e234af08b11205d78007", + "0x61f001a2c40613300e08c061f001808cef00d5b401c1300c3e003013028", + "0xed80c0de01cb900c3e0030eb80c0de01c039f001801c068072ce03191893", + "0x38422e4034f800c2e4030fa00712a030f800c12603037807134030f800c", + "0x4f00c3e003003ae200e01cf800c1380309d0072ee270069f001810806071", + "0xf800c2ee0303a00700e7c0060a00184e803978140034f800c13c03038807", + "0xbc00c0e801c039f00182900613a00e5ec5200d3e00305100c0e201c5100c", + "0x3a00700e7c0060bd0184e8038bc17a034f800c2f4030388072f4030f800c", + "0x17180700e7c00600719c01c5500c3e00305e00c0e801c5d80c3e0030bd80c", + "0x38b30187c0060071a601c039f001801c0680700ec90039f001a2a85d80d", + "0x380764a0300395a00e2d4061f00182d00616600e2d0061f00182cc062f1", + "0xb3007174030f800c16c0319300716c030f800c00e34c038073e00300380d", + "0xba80c3e0030ba80c2cc01cba80c3e00305a80c5d401c5a80c3e00305d00c", + "0xf800c00e370038073e00300380d00e2fc063272e2030f800d2ea03175807", + "0x39f00187900614c00e01cf800c03a0317700700e7c0061710184a403807", + "0x38073e00304100c0d601c039f0018080062ed00e01cf800c03c03176007", + "0xeb80700e7c0061720184e8038073e00304a80c27401c039f00182680613a", + "0xe7007182030f800c18203017807182030f800c00eca0039840187c006007", + "0x61f001861c6180d06601c6180c3e00300383100e61c061f0018304c200d", + "0x60860180e0039610187c006084018038038c80187c0061680186e803968", + "0x60b800e580061f001808c0607d00e588061f0018098060b900e32c061f0", + "0x395519c580b10cb2c2790061550187c0060c80186e0038ce0187c006156", + "0x38cf134034f800c134030fa00700e7c0060bf0184a4038073e00300380d", + "0x9d00700e7c00600701a01c6995a01aca46895c01a7c00697219e210071f2", + "0x68071b035806b2a2a456c069f001a2684a95c01c7c8038073e00306880c", + "0x61e4018b54038073e0030a900c27401c039f001801c6e00700e7c006007", + "0x1c007288030f800c2b60300700729e030f800c2a2031958072a2790069f0", + "0x7080c3e00304100c24401c9c80c3e0030ab00c17001c9d80c3e00304300c", + "0x6e1492a6710f800c26c3849c93b2880499680726c030f800c29e03196007", + "0x7180c36401c039f001801c06807262031970e30187c00694501849803945", + "0x7492c1ce038f800c3c80319780700e7c00612e0184a40392e1ca034f800c", + "0x6807248031988eb0187c006925018bac039251d2034f800c1d203198007", + "0x603800e48c061f001854c0600e00e01cf800c1d60309480700e7c006007", + "0x38220187c0060e50184880381c0187c0060dc0182e0038ee0187c006149", + "0xa480c07001c039f00184900612900e01cf800c00e034038076640300395a", + "0x199807230030f800c1ca030910071e6030f800c1b80305c0071ec030f800c", + "0x3913018cd08b00c3e00348f00c24c01c8f1201e0038f800c2303cc7b00e", + "0x38073e00308200c25201c8210801a7c0061160186c8038073e00300380d", + "0xf800c2a603007007228030f800c2040319b00720439c069f001839c06335", + "0x8400c24401cdb00c3e00309000c17001cda00c3e00307800c07001cd900c", + "0xf800c3746e0db1b43640499c007374030f800c2280319b807370030f800c", + "0x39f001801c0680737c0319c9bc0187c0069b0018498039b035c6b0001c4", + "0xf800c0000300700700e7c0061c20184a4039c2380034f800c378030d9007", + "0xe000c24401c0e00c3e0030d700c17001c7700c3e0030d600c07001c9180c", + "0xe00c3e00300e01d01acec039c7258034f800c2580319d007044030f800c", + "0x68073920319f1c80187c0069c7018cf4038220187c0060220400359e007", + "0xf88073a8734069f00187200633f00e72c061f001801ceb80700e7c006007", + "0xee00c3e00309180c01c01c039f00187540612a00e758ea80d3e0030ea00c", + "0xf800c396030488073c0030f800c3ac030e20073ba030f800c1dc0301c007", + "0x61f001a7680634100e768ec9d801c7c0061e13c0774ee1c468001cf080c", + "0x612900e7b0f480d3e0030f300c68601c039f001801c068073d0031a11e6", + "0x9380756cad4069f00187a40605900e7b4061f001801da200700e7c0061ec", + "0x602f00e01cf800c00e33803ab70187c0062b6018170038073e00315a80c", + "0x6ab73da7340e1d9024d1403ab70187c0062b7018710039ed0187c0061ed", + "0xf800c574031a380700e7c00600701a01d5eabc576039a32ba572ae0071f0", + "0x15f00c69001d6000c3e00315c80c17001d5f80c3e00315c00c07001d5f00c", + "0xf800c57a031a500700e7c00600701a01c03b4901801cad007582030f800c", + "0x16100c69001d6000c3e00315e00c17001d5f80c3e00315d80c07001d6100c", + "0x1a680700e7c0062c3018d3003ac4586034f800c582031a5807582030f800c", + "0x38073e0030038dc00e01cf800c00e03403ac6018d396280c3e00356200c", + "0x16480c3e00315f80c07001d6380c3e0030ec00c01c01c039f0018b140612a", + "0x6e00700e7c00600701a01c03b4f01801cad007594030f800c5800305c007", + "0x1100c0d601c039f00184b0062c500e01cf800c58c0309c80700e7c006007", + "0x60e901823c038073e00300f00c5d801c039f001839c062c400e01cf800c", + "0xf800c59803017807598030f800c00ed4003acb0187c0060073ae01c039f0", + "0xfa80d06601cfa80c3e00300383100eb34061f0018b316580d39c01d6600c", + "0x3ad00187c0061d801803803acf0187c0062ce0186e803ace0187c0062cd", + "0x61f001808c0607d00eb48061f0018098060b900eb44061f0018afc06038", + "0x1692d15a0790061f40187c0062cf0186e003ad40187c0062c00182e003ad3", + "0xf800c0440303580700e7c00612c018b14038073e00300380d00e7d16a2d3", + "0x39f00183a40608f00e01cf800c03c0317600700e7c0060e7018b1003807", + "0x61f00187600600e00eb54061f00187a0061ba00e01cf800c39a03162007", + "0x60230181f403ad80187c0060260182e403ad70187c0061d90180e003ad6", + "0x16b1e4018b6c061f0018b54061b800eb68061f0018070060b800eb64061f0", + "0x9180c01c01c039f00187240612900e01cf800c00e03403adb5b4b656c2d7", + "0x67007594030f800c0380305c007592030f800c1dc0301c00758e030f800c", + "0x69f001ab71652c901cd4403adc1ce034f800c1ce0319a80700e7c006007", + "0x1a98075c4030f800c00e34c038073e00300380d00eb85702df01cd496f2dd", + "0x17200c3e00316f00c17001cf980c3e00316e80c07001d7180c3e00317100c", + "0x1ab00700e7c00600701a01c03b5501801cad0075ca030f800c5c6031aa007", + "0x17200c3e00317000c17001cf980c3e00316f80c07001d7300c3e00317080c", + "0x62e7018d6003ae85ce034f800c5ca031ab8075ca030f800c5cc031aa007", + "0x38dc00e01cf800c00e03403aea018d697480c3e00357400c6b201c039f0", + "0x17100702e030f800c1d24b07380e57e01c039f0018ba40612900e01cf800c", + "0x3b280187c0061f30180e003b260187c0062c701803803aeb0187c006007", + "0x61f0018b90060b800ecac061f001808c0607d00e7c8061f0018098060b9", + "0xb80c5aa01c0b80c3e00300b81e01ad6c03b2d0187c00602201848803b2c", + "0x3b300187c0062eb01851003b2f0187c00632f0181fc03b2f02e034f800c", + "0x612600ebc5782ef5dcbb5761e43e00319832f65acb1959f2650c980f2d7", + "0x19b00d3e00319980c36401c039f001801c0680766a031ae3330187c006af1", + "0x61f0018bb00600e00ece0061f001801d7100700e7c0063370184a403b37", + "0x62ef0181f403b430187c0062ee0182e403b410187c0062ed0180e003b40", + "0x607f00ed1c061f0018cd80612200ed14061f0018bc0060b800ed10061f0", + "0x1a3b45688d0da0b4003cb6003b4a0187c00633801851003b480187c006017", + "0x1a600c6bad2c061f001a7c40612600e7c59fb3d678ced9d1e43e0031a5348", + "0x39f0018d400612900ed41a680d3e0031a580c36401c039f001801c06807", + "0xf800c6a6030db0076a6030f800c6a2d34069b400ed44061f001801c69807", + "0x19e00c17201dab80c3e00319d80c07001dab00c3e00319d00c01c01daa00c", + "0xdc0076b6030f800c67e0305c0076b2030f800c67a0303e8076b0030f800c", + "0xdd00700e7c00600701a01daf35b6b2d61abb563c8031af00c3e0031aa00c", + "0x1b080c3e00319d80c07001db000c3e00319d00c01c01daf80c3e0031a600c", + "0xf800c67e0305c0076c6030f800c67a0303e8076c4030f800c6780305c807", + "0x600701a01db2b646c6d89b0b603c8031b280c3e0031af80c37001db200c", + "0x62ec01803803b660187c0063350186e8038073e00300b80c29801c039f0", + "0x607d00eda4061f0018bb8060b900eda0061f0018bb40603800ed9c061f0", + "0x636c0187c0063660186e003b6b0187c0062f00182e003b6a0187c0062ef", + "0x613900e01cf800c00e370038073e00300380d00edb1b5b6a6d2da1b39e4", + "0x7480c11e01c039f0018078062ec00e01cf800c0440303580700e7c0062ea", + "0xf800c00e75c038073e00307380c58801c039f00184b0062c500e01cf800c", + "0x1b736d01a73803b6e0187c00636e0180bc03b6e0187c0060076bc01db680c", + "0xdd0076e2030f800c6dedc00683300edc0061f001801c188076de030f800c", + "0x1ba00c3e0030f980c07001db980c3e00316380c01c01db900c3e0031b880c", + "0xf800c5c80305c0076ec030f800c0460303e8076ea030f800c04c0305c807", + "0x600701a01dbc3776ecdd5ba3733c8031bc00c3e0031b900c37001dbb80c", + "0xf800c1ce0316200700e7c006020018bb4038073e00309600c58a01c039f0", + "0x39f0018074062ee00e01cf800c1d20304780700e7c00601e018bb003807", + "0xf800c3580301c0076f4030f800c000030070076f2030f800c37c030dd007", + "0xd700c17001dbe80c3e00301180c0fa01dbe00c3e00301300c17201dbd80c", + "0x68076fedf9beb7c6f6de8f200c6fe030f800c6f2030dc0076fc030f800c", + "0xe80c5dc01c039f0018080062ed00e01cf800c2580316280700e7c006007", + "0x60e901823c038073e00300f00c5d801c039f001839c062c400e01cf800c", + "0x7800c07001dc000c3e0030a980c01c01cfc80c3e00308980c37401c039f0", + "0x5c007706030f800c0460303e807704030f800c04c0305c807702030f800c", + "0x1c2b84706e09c0b803c8031c280c3e0030fc80c37001dc200c3e00309000c", + "0x17680700e7c0061e4018530038073e00300e80c5dc01c039f001801c06807", + "0x700770c030f800c262030dd00700e7c00601e018bb0038073e00301000c", + "0x1c480c3e00301300c17201dc400c3e0030a480c07001dc380c3e0030a980c", + "0xf800c70c030dc007716030f800c1b80305c007714030f800c0460303e807", + "0x39f001801c6e00700e7c00600701a01dc638b714e25c43873c8031c600c", + "0x38073e0030f200c29801c039f0018074062ee00e01cf800c1b00309d007", + "0xeb80700e7c0060820181ac038073e00301000c5da01c039f0018078062ec", + "0xe700771c030f800c71c0301780771c030f800c00ed7c03b8d0187c006007", + "0x61f0018e3dc800d06601dc800c3e00300383100ee3c061f0018e39c680d", + "0x60860180e003b930187c0060d601803803b920187c0063910186e803b91", + "0x60b800ee58061f001808c0607d00ee54061f0018098060b900ee50061f0", + "0x3b9872ee59cab94726790063980187c0063920186e003b970187c006156", + "0xe80c5dc01c039f001834c0613a00e01cf800c00e370038073e00300380d", + "0x6020018bb4038073e00300f00c5d801c039f00187900614c00e01cf800c", + "0xf800c12a0309d00700e7c00609a0184e8038073e00304100c0d601c039f0", + "0x61f0018e680602f00ee68061f001801db0007732030f800c00e75c03807", + "0x1cdb9c01a0cc03b9c0187c00600706201dcd80c3e0031cd39901a73803b9a", + "0x1c00773e030f800c2b40300700773c030f800c73a030dd00773a030f800c", + "0x1d100c3e00301180c0fa01dd080c3e00301300c17201dd000c3e00304300c", + "0x1d13a1740e7cf200c748030f800c73c030dc007746030f800c2ac0305c007", + "0x39f00187900614c00e01cf800c03a0317700700e7c00600701a01dd23a3", + "0x38073e00304100c0d601c039f0018080062ed00e01cf800c03c03176007", + "0x3ba50187c0061670186e8038073e0030ed80c5c001c039f001875c062e0", + "0x61f0018098060b900ee9c061f00182180603800ee98061f00182100600e", + "0x63a50186e003ba90187c0061560182e0039fb0187c0060230181f403ba8", + "0x601e018bb0038073e00300380d00eea9d49fb750e9dd31e4018ea8061f0", + "0xf800c3b60317000700e7c00606b0181ac038073e00301000c5da01c039f0", + "0x39f00180a0062de00e01cf800c3c8030a600700e7c00601d018bb803807", + "0x1d580c3e00304000c37401c039f00180b4062e100e01cf800c3bc0316f807", + "0xf800c0e20305c80775a030f800c0de0301c007758030f800c26603007007", + "0x1d580c37001cfd00c3e00303a00c17001dd780c3e00309d00c0fa01dd700c", + "0xf00c5d801c039f001801c068077607e9d7bae75aeb0f200c760030f800c", + "0x60400181ac038073e00301680c5c201c039f0018080062ed00e01cf800c", + "0xf800c0500316f00700e7c0061e4018530038073e00300e80c5dc01c039f0", + "0x61f00184c0061ba00e01cf800c0540317080700e7c0061de018b7c03807", + "0x61ca0182e403bb30187c00612b0180e003bb20187c00603101803803bb1", + "0x61b800eed8061f0018190060b800eed4061f00180380607d00eed0061f0", + "0x62ec00e01cf800c00e03403bb776ced5da3b3764790063b70187c0063b1", + "0x2000c0d601c039f00180b4062e100e01cf800c0400317680700e7c00601e", + "0x6028018b78038073e0030f200c29801c039f0018074062ee00e01cf800c", + "0xf800c242030dd00700e7c00602a018b84038073e0030ef00c5be01c039f0", + "0xe500c17201ddd00c3e00302200c07001ddc80c3e00301880c01c01ddc00c", + "0xdc00777a030f800c2380305c007778030f800c01c0303e807776030f800c", + "0x17080700e7c00600701a01ddf3bd778eeddd3b93c8031df00c3e0031dc00c", + "0x62ed00e01cf800c03c0317600700e7c0061de018b7c038073e00301500c", + "0xf200c29801c039f0018074062ee00e01cf800c05a0317080700e7c006020", + "0x603e0186e8038073e00301780c0d601c039f00180a0062de00e01cf800c", + "0x60b900ef00061f00180cc0603800eefc061f00180c40600e00e7e0061f0", + "0x3bc30187c0060b90182e003bc20187c00600e0181f403bc10187c0061ca", + "0x61f001801c0601c00ef11e1bc2782f01df9e4018f10061f00187e0061b8", + "0x60cf00e01cf800c00e034039c4018f140700d01a7c00680c0185540380c", + "0x38170187c006012018344039e40187c00600d018570038120187c00600e", + "0xf00c2b601c0f00c3e0030038d300e01cf800c00e0340380778c0300395a", + "0x2e00702e030f800c038030688073c8030f800c388030ae007038030f800c", + "0x1100c3e00340b80c2a401c0e80c3e00300e80c38801c0e80c3e0030f200c", + "0x6023018360038230187c006022018358038073e00300380d00e080063c7", + "0x636200e0a0061f0018074061c400e098061f00187780636100e778061f0", + "0x39f00180800612900e01cf800c00e034039db050034061db0187c006026", + "0x61f0018074061c400e75c061f00180a80636300e0a8061f001801c69807", + "0xf0170467c0061c40184600382f05a0340602f0187c0061d7018d880382d", + "0xf00c3b001c039f001805c061d900e75c151db050098ef0230400880e81c", + "0x6022018750038073e00300e80c3aa01c039f0018070061d600e01cf800c", + "0xf800c3bc030e480700e7c00602301872c038073e00301000c39a01c039f0", + "0x39f001876c061c200e01cf800c050030e380700e7c00602601872003807", + "0xf800c00e0300700705a030f800c3c804806b6400e01cf800c054030e0007", + "0x700c17001c5c00c3e00300680c17201c1c00c3e00300600c07001c5c80c", + "0x1b3807078030f800c05a031b300734e030f800c3ae031b280716e030f800c", + "0x61f001a7280608b00e7281983139c0bc091f00180f0d38b71700e05c9e4", + "0x1f00c6d001c1f00c3e0030d280c2bc01c039f001801c06807348031e41a5", + "0x1c007088030f800c05e03007007206030f800c080031b4807080030f800c", + "0x2400c3e00301980c17001c2300c3e00301880c17201c8e00c3e0030e700c", + "0x38073e00300380d00e474240462381100900c23a030f800c206031b5007", + "0x61f00187380603800e130061f00180bc0600e00e128061f00186900636b", + "0x604a018da8038500187c0060330182e00384e0187c0060310182e403921", + "0x680c5d601c0680c3e00300380c6d801c9105009c48426012018488061f0", + "0x1b680700e7c00600e0184a4038073e00300380d00e710063c901c030f800d", + "0x380d00e01de500c00e568039e40187c0060120180bc038120187c006007", + "0x60170180bc038170187c0060076dc01c039f00187100612900e01cf800c", + "0x60d800e01cf800c03c03058807038078069f00187900609500e790061f0", + "0xe80d3e00301182001a108038230187c00600c018244038200187c00601c", + "0x61f00180740609100e778061f001801c6980700e7c0060220184a403822", + "0xb9e40467c0061c40184600382804c034060280187c0061de01848003826", + "0xb80c3b001c039f0018790061d900e0a8ed82804c778118200440740e01e", + "0x601d018750038073e00300e00c3aa01c039f0018078061d600e01cf800c", + "0xf800c046030e480700e7c00602001872c038073e00301100c39a01c039f0", + "0x39f00180a0061c200e01cf800c04c030e380700e7c0061de01872003807", + "0x61f00180300603800e0cc061f001801c0600e00e01cf800c054030df007", + "0x61db018dbc038380187c00600e0182e0038b90187c00600d0182e4039ca", + "0xf800c16e2e01c0b93940ccf237000e2dc061f00180480602f00e2e0061f0", + "0xf800c00e0340383c018f2cd380c3e00341880c2e401c189ce05e0b4eb812", + "0x61a4018dc8039a40187c0061a5018dc4039a50187c0061a701826803807", + "0x60b900e40c061f00180b40603800e100061f001875c0600e00e0f8061f0", + "0x60460187c00603e018dcc0391c0187c0061ce0182e0038440187c00602f", + "0x7007090030f800c078031ba00700e7c00600701a01c2311c08840c20012", + "0x2600c3e00301780c17201c2500c3e00301680c07001c8e80c3e0030eb80c", + "0x9084c0944740900c09c030f800c090031b9807242030f800c39c0305c007", + "0x60071a601c0700c3e00300680c01a7380380d0187c0060070183600384e", + "0x900d018790061f00187100612000e048061f00180380609100e710061f0", + "0xf800c0180301c007040030f800c00e030070073c8030f800c00edd4039e4", + "0xe200c24401c1300c3e00300700c17001cef00c3e00300680c17201c1180c", + "0x44807054030f800c024030590073b6030f800c3c803017807050030f800c", + "0xf800d044030458070440740e01e02e048f800c05476c140263bc08c10017", + "0x636800e0bc061f001875c0615e00e01cf800c00e0340382d018f30eb80c", + "0x38330187c006017018038038310187c0061ce018da4039ce0187c00602f", + "0x61f0018074060b800e2e4061f0018070060b900e728061f001807806038", + "0x39f001801c068071700e05c9ca066048060b80187c006031018da803838", + "0xf800c03c0301c00734e030f800c02e0300700716e030f800c05a031b5807", + "0x5b80c6d401cd200c3e00300e80c17001cd280c3e00300e00c17201c1e00c", + "0x380c01c01cf200c3e003003b7600e0f8d21a507869c0900c07c030f800c", + "0x5c0073bc030f800c01a0305c807046030f800c0180301c007040030f800c", + "0xed80c3e0030f200c05e01c1400c3e0030e200c24401c1300c3e00300700c", + "0xb8123e0030151db050098ef02304005c44807054030f800c02403059007", + "0x38073e00300380d00e0b4063cd3ae030f800d044030458070440740e01e", + "0x61f00187380636900e738061f00180bc0636800e0bc061f001875c0615e", + "0x601c0182e4039ca0187c00601e0180e0038330187c00601701803803831", + "0x198120182e0061f00180c40636a00e0e0061f0018074060b800e2e4061f0", + "0xb80c01c01c5b80c3e00301680c6d601c039f001801c068071700e05c9ca", + "0x5c00734a030f800c0380305c807078030f800c03c0301c00734e030f800c", + "0x383e3486941e1a70240301f00c3e00305b80c6d401cd200c3e00300e80c", + "0x381d0187c00600e0182e00381c0187c00600c0180e0038073e0030038dc", + "0x3820018f381100c3e00340f00c1e601c0f0173c8038f800c03a070068f6", + "0xef01201a7c006012018ddc038230187c006022018410038073e00300380d", + "0xf800c00edd4038280187c006026018de4038260187c0060233bc035bc007", + "0x680c17201c1980c3e0030f200c07001c1880c3e00300380c01c01ced80c", + "0x17807070030f800c38803091007172030f800c02e0305c007394030f800c", + "0xd380c3e00301400c6f401c5b80c3e00300900c16401c5c00c3e0030ed80c", + "0x612600e7381782d3ae0a8091f001869c5b8b80702e4e5033062079bd807", + "0xd200d3e00301e00c36401c039f001801c0680734a031e783c0187c0069ce", + "0xf800c080690069b400e100061f001801c6980700e7c00603e0184a40383e", + "0xeb80c07001c8e00c3e00301500c01c01c2200c3e00308180c36c01c8180c", + "0xdc00723a030f800c05e0305c007090030f800c05a0305c80708c030f800c", + "0x61ba00e01cf800c00e0340384a23a1202311c0240302500c3e00302200c", + "0x384e0187c0061d70180e0039210187c00602a0180380384c0187c0061a5", + "0x61f0018130061b800e488061f00180bc060b800e140061f00180b4060b9", + "0x38073e00300900c05401c039f001801c068071644882804e242048060b2", + "0x2a80c3e00300380c01c01c2980c3e00301000c37401c039f00187100606b", + "0xf800c02e0305c0070ae030f800c01a0305c80724c030f800c3c80301c007", + "0xf800c00e370039270b215c930550240309380c3e00302980c37001c2c80c", + "0xe81c01a3d80381d0187c00600e0182e00381c0187c00600c0180e003807", + "0xf800c00e03403820018f401100c3e00340f00c1e601c0f0173c8038f800c", + "0xef00d6f801cef01201a7c006012018ddc038230187c00602201841003807", + "0x70073b6030f800c00edd4038280187c006026018df4038260187c006023", + "0xe500c3e00300680c17201c1980c3e0030f200c07001c1880c3e00300380c", + "0xf800c3b603017807070030f800c38803091007172030f800c02e0305c007", + "0x1881e6fc01cd380c3e00301400c6f401c5b80c3e00300900c16401c5c00c", + "0x61f001a7380612600e7381782d3ae0a8091f001869c5b8b80702e4e5033", + "0x612900e0f8d200d3e00301e00c36401c039f001801c0680734a031e883c", + "0xdb007206030f800c080690069b400e100061f001801c6980700e7c00603e", + "0x2300c3e0030eb80c07001c8e00c3e00301500c01c01c2200c3e00308180c", + "0xf800c088030dc00723a030f800c05e0305c007090030f800c05a0305c807", + "0x61f0018694061ba00e01cf800c00e0340384a23a1202311c0240302500c", + "0x602d0182e40384e0187c0061d70180e0039210187c00602a0180380384c", + "0x908120182c8061f0018130061b800e488061f00180bc060b800e140061f0", + "0x61c40181ac038073e00300900c05401c039f001801c068071644882804e", + "0xf200c07001c2a80c3e00300380c01c01c2980c3e00301000c37401c039f0", + "0xdc0070b2030f800c02e0305c0070ae030f800c01a0305c80724c030f800c", + "0x603800e01cf800c00e370039270b215c930550240309380c3e00302980c", + "0xf200e3e00300e81c01a3d80381d0187c00600e0182e00381c0187c00600c", + "0x610400e01cf800c00e03403820018f481100c3e00340f00c1e601c0f017", + "0x61f001808cef00d6fe01cef01201a7c006012018ddc038230187c006022", + "0xf800c00e030070073b6030f800c00edd8038280187c0060260187e403826", + "0xb80c17001ce500c3e00300680c17201c1980c3e0030f200c07001c1880c", + "0x59007170030f800c3b603017807070030f800c38803091007172030f800c", + "0x1c0b93940cc1881e6f601cd380c3e00301400c6f401c5b80c3e00300900c", + "0xd280c7a60f0061f001a7380612600e7381782d3ae0a8091f001869c5b8b8", + "0x39f00180f80612900e0f8d200d3e00301e00c36401c039f001801c06807", + "0xf800c206030db007206030f800c080690069b400e100061f001801c69807", + "0x1680c17201c2300c3e0030eb80c07001c8e00c3e00301500c01c01c2200c", + "0x900c094030f800c088030dc00723a030f800c05e0305c007090030f800c", + "0x600e00e130061f0018694061ba00e01cf800c00e0340384a23a1202311c", + "0x38500187c00602d0182e40384e0187c0061d70180e0039210187c00602a", + "0x591220a0138908120182c8061f0018130061b800e488061f00180bc060b8", + "0xdd00700e7c0061c40181ac038073e00300900c05401c039f001801c06807", + "0x9300c3e0030f200c07001c2a80c3e00300380c01c01c2980c3e00301000c", + "0xf800c0a6030dc0070b2030f800c02e0305c0070ae030f800c01a0305c807", + "0x61f00180300603800e01cf800c00e370039270b215c930550240309380c", + "0x7980703c05cf200e3e00300e81c01a3d80381d0187c00600e0182e00381c", + "0x61f00180880610400e01cf800c00e03403820018f501100c3e00340f00c", + "0x638100e098061f001808cef00d70001cef01201a7c006012018ddc03823", + "0x1c007062030f800c00e030070073b6030f800c00edd8038280187c006026", + "0x5c80c3e00300b80c17001ce500c3e00300680c17201c1980c3e0030f200c", + "0xf800c02403059007170030f800c3b603017807070030f800c38803091007", + "0x61a716e2e01c0b93940cc1881e6fc01cd380c3e00301400c6f401c5b80c", + "0x600701a01cd280c7aa0f0061f001a7380612600e7381782d3ae0a8091f0", + "0x60071a601c039f00180f80612900e0f8d200d3e00301e00c36401c039f0", + "0x7007088030f800c206030db007206030f800c080690069b400e100061f0", + "0x2400c3e00301680c17201c2300c3e0030eb80c07001c8e00c3e00301500c", + "0x8e84808c4700900c094030f800c088030dc00723a030f800c05e0305c007", + "0x61f00180a80600e00e130061f0018694061ba00e01cf800c00e0340384a", + "0x602f0182e0038500187c00602d0182e40384e0187c0061d70180e003921", + "0x600701a01c591220a0138908120182c8061f0018130061b800e488061f0", + "0xf800c040030dd00700e7c0061c40181ac038073e00300900c05401c039f0", + "0x680c17201c9300c3e0030f200c07001c2a80c3e00300380c01c01c2980c", + "0x900c24e030f800c0a6030dc0070b2030f800c02e0305c0070ae030f800c", + "0x1ba80702e790069f00180480609500e01cf800c00e370039270b215c93055", + "0x38073e00300e00c16201c0e81c01a7c00601e0182540381e0187c006007", + "0xf800c04003058807046080069f00180880609500e088061f001805c060d8", + "0x1300c16201c1402601a7c0061de018254039de0187c00601d01836003807", + "0x69ac00e0a8061f00180a0060d800e76c061f001808c060d800e01cf800c", + "0x1eb0073e0034eb80c35c01ceb80c3e0030eb80c05e01ceb80c3e0030151db", + "0x61f00180bc0632600e0bc061f001801c6980700e7c00600701a01c1680c", + "0x38073e00300380d00e01deb80c00e568038310187c0061ce018598039ce", + "0x39ca0187c006033018bc4038330187c0060071a601c039f00180b4061bc", + "0x61f00182e40616600e2e4061f00180c4062ea00e0c4061f001872806166", + "0x1c00c25201c039f001801c06807170031ec0380187c0068b9018bac038b9", + "0xf800c00e75c038073e0030e200c0d601c039f0018790060b100e01cf800c", + "0xd38b701a738039a70187c0061a70180bc039a70187c00600770401c5b80c", + "0xdd007348030f800c0786940683300e694061f001801c18807078030f800c", + "0x8180c3e00300600c07001c2000c3e00300380c01c01c1f00c3e0030d200c", + "0xf800c07c030dc007238030f800c01c0305c007088030f800c01a0305c807", + "0x39f00182e00612900e01cf800c00e03403846238110818400240302300c", + "0x61210980347b007242030f800c01c0305c007098030f800c0180301c007", + "0x39f001801c068070a0031ec84e0187c00684a0183cc0384a23a120071f0", + "0xf800c0900301c0070b2030f800c00e03007007244030f800c09c03082007", + "0xe200c24401c2e80c3e00308e80c17001c2e00c3e00300680c17201c9380c", + "0x1c1807252030f800c24403059007250030f800c3c8030178070be030f800c", + "0xf800d0ae030930070ae4982a853164048f800c2524a02f85d0b849c2c817", + "0xda0070cc190069f00184a8061b200e01cf800c00e0340392b018f689500c", + "0x61f00182c80600e00e1a4061f00184bc061b600e4bc061f00181983200d", + "0x61260182e00386d0187c0060550182e40386b0187c0060530180e003930", + "0x600701a01c379330da1ac980120181bc061f00181a4061b800e4cc061f0", + "0x2980c07001c9d00c3e00305900c01c01c3880c3e00309580c37401c039f0", + "0xdc0070ec030f800c24c0305c007286030f800c0aa0305c8070e8030f800c", + "0x60b100e01cf800c00e034038770ec50c3a13a0240303b80c3e00303880c", + "0x600e00e1e4061f0018140061ba00e01cf800c3880303580700e7c0061e4", + "0x387d0187c00600d0182e40394c0187c0060480180e00394b0187c006007", + "0x4007f0fa530a5812018200061f00181e4061b800e1fc061f0018474060b8", + "0xec00704c778118200440740e01e02e790091c401c08cf800c01a0308c007", + "0x61d400e01cf800c3c8030ea80700e7c006012018758038073e0030e200c", + "0xe80c39201c039f0018070061cb00e01cf800c03c030e680700e7c006017", + "0x6023018708038073e00301000c38e01c039f0018088061c800e01cf800c", + "0xf800c00e0301c00700e7c0060260186f8038073e0030ef00c38001c039f0", + "0xeb80e70a01c1780c3e00300700c70801c1680c3e00300600c17001ceb80c", + "0x380d00e0c4063db39c030f800d054030b900705476c1400e3e00301782d", + "0x637200e728061f00180cc0637100e0cc061f00187380609a00e01cf800c", + "0x38b80187c0061db0182e0038380187c0060280180e0038b90187c0061ca", + "0x1880c6e801c039f001801c0680716e2e01c00e0182dc061f00182e406373", + "0x1b980734a030f800c3b60305c007078030f800c0500301c00734e030f800c", + "0xf2012388038119f00180340611800e690d283c01c030d200c3e0030d380c", + "0xf800c024030eb00700e7c00600e018764038263bc08c1002203a0700f017", + "0x39f0018078061cd00e01cf800c02e030ea00700e7c0061e401875403807", + "0x38073e00301100c39001c039f0018074061c900e01cf800c038030e5807", + "0xdf00700e7c0061de018700038073e00301180c38401c039f0018080061c7", + "0x382d0187c00600c0182e0039d70187c0060070180e0038073e00301300c", + "0x617200e0a8ed82801c7c00602f05a75c0738700e0bc061f001871006386", + "0x1980c3e0030e700c13401c039f001801c06807062031ee1ce0187c00682a", + "0xf800c0500301c007172030f800c394031b9007394030f800c066031b8807", + "0x5c03801c0305b80c3e00305c80c6e601c5c00c3e0030ed80c17001c1c00c", + "0x61f00180a00603800e69c061f00180c40637400e01cf800c00e034038b7", + "0xd21a5078038061a40187c0061a7018dcc039a50187c0061db0182e00383c", + "0xec807050098ef0230400880e81c03c05cf201238808cf800c01c0308c007", + "0x61d400e01cf800c02e030ea80700e7c006012018760038073e0030e200c", + "0x1100c39201c039f0018074061cb00e01cf800c038030e680700e7c00601e", + "0x61de018708038073e00301180c38e01c039f0018080061c800e01cf800c", + "0xf800c00e0300700700e7c0060280186f8038073e00301300c38001c039f0", + "0xf200c71001c1880c3e00300680c17001ce700c3e00300600c07001c1780c", + "0x1680c17801c169d705476ce21f00180cc189ce05e711c4807066030f800c", + "0x38380187c0061ca0182ec038073e00300380d00e2e4063dd394030f800d", + "0x61f001876c0600e00e2dc061f00182e00638b00e2e0061f00180e00638a", + "0x60b7018e30039a50187c0061d70182e00383c0187c00602a0180e0039a7", + "0x61f00182e40638d00e01cf800c00e034039a434a0f0d39c4018690061f0", + "0x61d70182e0039030187c00602a0180e0038400187c0061db0180380383e", + "0x600e0184600391c08840c201c4018470061f00180f80638c00e110061f0", + "0x39f0018710061d900e0a0131de0460801101d0380780b9e4024710119f0", + "0x38073e00300f00c3a801c039f0018790061d600e01cf800c024030ec007", + "0xe400700e7c006022018724038073e00300e80c39601c039f0018070061cd", + "0x61c000e01cf800c3bc030e100700e7c00602301871c038073e00301000c", + "0x603800e0bc061f001801c0600e00e01cf800c050030df00700e7c006026", + "0x38330187c006017018e38038310187c00600d0182e0039ce0187c00600c", + "0x1ef1ca0187c00682d0182e80382d3ae0a8ed9c43e00301983139c0bce238f", + "0xf800c070031c8007070030f800c394030ba80700e7c00600701a01c5c80c", + "0x1500c07001cd380c3e0030ed80c01c01c5b80c3e00305c00c72201c5c00c", + "0xe200c348030f800c16e031c900734a030f800c3ae0305c007078030f800c", + "0xed80c01c01c1f00c3e00305c80c72601c039f001801c068073486941e1a7", + "0x1c9007088030f800c3ae0305c007206030f800c0540301c007080030f800c", + "0x380d00e034f800c00e031ca007238110818403880308e00c3e00301f00c", + "0x61f00180380639600e01cf800c38803078007388038069f001803406395", + "0x380c72a01c0b80c3e0030f200c01a738039e40187c006012018e5c03812", + "0x1cb80703a030f800c038031cb00700e7c00601e0183c00381c03c034f800c", + "0x1180c3e0030038d300e080061f00180880b80d39c01c1100c3e00300e80c", + "0x8c00704c7780680c04c030f800c046030900073bc030f800c04003048807", + "0xf200c3b201c151db050098ef0230400880e81c03c05cf20233e0030e200c", + "0x601c018754038073e00300f00c3ac01c039f001805c061d800e01cf800c", + "0xf800c046030e480700e7c00602001872c038073e00301100c39a01c039f0", + "0x39f00180a0061c200e01cf800c04c030e380700e7c0061de01872003807", + "0x1980c3e00300380c01c01c039f00180a8061be00e01cf800c3b6030e0007", + "0xf800c01c0305c007172030f800c01a0305c807394030f800c0180301c007", + "0x199e473201c5b80c3e00300900c16401c5c00c3e00300e80c73001c1c00c", + "0x1ef9a70187c0068310182e80383139c0bc169d70247c0060b71700e05c9ca", + "0xf800c34a031c800734a030f800c34e030ba80700e7c00600701a01c1e00c", + "0x1680c07001c2000c3e0030eb80c01c01c1f00c3e0030d200c72201cd200c", + "0x1c9007238030f800c39c0305c007088030f800c05e0305c807206030f800c", + "0x639300e01cf800c00e03403846238110818400240302300c3e00301f00c", + "0x384a0187c00602d0180e00391d0187c0061d7018038038480187c00603c", + "0x61f00181200639200e484061f0018738060b800e130061f00180bc060b9", + "0x118200440740e01e02e08cf800c3880308c00709c4842604a23a0480604e", + "0xeb00700e7c00601e018760038073e00300b80c3b201ceb82a3b60a0131de", + "0x61cb00e01cf800c044030ea00700e7c00601d018754038073e00300e00c", + "0x1400c38e01c039f0018098061c800e01cf800c3bc030e480700e7c006023", + "0x61d70186f8038073e00301500c38001c039f001876c061c200e01cf800c", + "0x603800e2e4061f001801c0600e00e0b4061f00187900900d73401c039f0", + "0x38b70187c00600e0182e0038b80187c00600d0182e4038380187c00600c", + "0x5b8b80702e4f239d00e0f0061f00180b40639c00e69c061f00180800639b", + "0x39a4018f80d280c3e0034e500c17401ce5033062738178123e00301e1a7", + "0x38400187c00603e018e400383e0187c0061a50185d4038073e00300380d", + "0x61f00187380603800e110061f00180bc0600e00e40c061f001810006391", + "0x6103018e48038480187c0060330182e0038460187c0060310182e40391c", + "0xf800c348031c980700e7c00600701a01c8e84808c47022012018474061f0", + "0x1880c17201c9080c3e0030e700c07001c2600c3e00301780c01c01c2500c", + "0x900c244030f800c094031c90070a0030f800c0660305c00709c030f800c", + "0x60b800e074061f00180300603800e01cf800c00e370039220a01389084c", + "0xf800d038030798070380780b80e3e00301101d01a3d8038220187c00600e", + "0x600e00e778061f00180800610400e01cf800c00e03403823018f841000c", + "0x39ce0187c00600d0182e40382f0187c0060170180e00382d0187c006007", + "0x61f0018778060b200e0cc061f00187100612200e0c4061f0018078060b8", + "0x1782d03ce78038380187c0061e401814c038b90187c0060120182c8039ca", + "0x5c00c3e0034eb80c24c01ceb82a3b60a0130123e00301c0b93940cc189ce", + "0x1e00c25201c1e1a701a7c0060b80186c8038073e00300380d00e2dc063e2", + "0xd380d73e01cd200c3e0030d280c64c01cd280c3e0030038d300e01cf800c", + "0x39030187c006026018038038400187c00603e018e800383e0187c0061a4", + "0x61f00180a8060b800e470061f001876c060b900e110061f00180a006038", + "0x39f001801c068070901188e044206048060480187c006040018e8403846", + "0xf800c0500301c007094030f800c04c0300700723a030f800c16e031d1007", + "0x8e80c74201c2700c3e00301500c17001c9080c3e0030ed80c17201c2600c", + "0x61e401876c038073e00300380d00e140271210981280900c0a0030f800c", + "0xf800c046031d100700e7c0061c40181ac038073e00300900c05401c039f0", + "0x680c17201c2980c3e00300b80c07001c5900c3e00300380c01c01c9100c", + "0x900c0ae030f800c244031d080724c030f800c03c0305c0070aa030f800c", + "0x60b800e088061f00180300603800e01cf800c00e3700385724c154298b2", + "0xf800d03a0307980703a0700f00e3e00301002201a3d8038200187c00600e", + "0x600e00e098061f001808c0610400e01cf800c00e034039de018f8c1180c", + "0x38310187c00600d0182e4039ce0187c00601e0180e00382f0187c006007", + "0x69f00180480637700e728061f00187100612200e0cc061f0018070060b8", + "0xb80c72801c1c00c3e00301300c16401c5c80c3e00305c80c16401c5c812", + "0x5c9ca0660c4e702f03ce8c038b80187c0060b801814c038b802e034f800c", + "0x39a7018f905b80c3e00341680c24c01c169d705476c140123e00305c038", + "0x38073e0030d280c25201cd283c01a7c0060b70186c8038073e00300380d", + "0x61f00180a8060b900e118061f001876c0603800e470061f00180a00600e", + "0x60120182c80384a0187c00603c0184880391d0187c0061d70182e003848", + "0xf39e00e138061f001805c0605300e484061f0018790060b200e130061f0", + "0xf800d0880309300708840c2003e348048f800c09c4842604a23a1202311c", + "0x948070a62c8069f0018140061b200e01cf800c00e03403922018f942800c", + "0x1cf80724c030f800c0aa031930070aa030f800c00e34c038073e00302980c", + "0x61f00186900600e00e164061f001815c063a000e15c061f00184985900d", + "0x61030182e00385d0187c0060400182e40385c0187c00603e0180e003927", + "0x600701a01c9405f0ba170938120184a0061f0018164063a100e17c061f0", + "0x1f00c07001c9500c3e0030d200c01c01c9480c3e00309100c74401c039f0", + "0x1d08070cc030f800c2060305c0070c8030f800c0800305c807256030f800c", + "0x61db00e01cf800c00e0340392f0cc1909592a0240309780c3e00309480c", + "0xd380c74401c039f00180480602a00e01cf800c3c80301500700e7c006017", + "0x5c8070d6030f800c3b60301c007260030f800c050030070070d2030f800c", + "0x3780c3e00303480c74201c9980c3e0030eb80c17001c3680c3e00301500c", + "0x1500700e7c00601701876c038073e00300380d00e1bc9986d0d64c00900c", + "0x63a200e01cf800c3880303580700e7c0060120180a8038073e0030f200c", + "0x38740187c00601e0180e00393a0187c006007018038038710187c0061de", + "0x61f00181c4063a100e1d8061f0018070060b800e50c061f0018034060b9", + "0xe80c3e00300600c07001c039f001801c6e0070ee1d8a187427404806077", + "0x60f300e0700f01701c7c00602203a0347b007044030f800c01c0305c007", + "0xef00c3e00301000c20801c039f001801c06807046031f30200187c00681c", + "0xf800c01a0305c80705e030f800c02e0301c00705a030f800c00e03007007", + "0xef00c16401c1980c3e0030e200c24401c1880c3e00300f00c17001ce700c", + "0x1d2007070030f800c3c803029807172030f800c02403059007394030f800c", + "0x69d7018498039d705476c140260247c0060381727281983139c0bc1681e", + "0x383c34e034f800c170030d900700e7c00600701a01c5b80c7ce2e0061f0", + "0x39a40187c0061a5018c98039a50187c0060071a601c039f00180f006129", + "0xf800c04c03007007080030f800c07c031d000707c030f800c34869c06b9f", + "0x1500c17001c8e00c3e0030ed80c17201c2200c3e00301400c07001c8180c", + "0x380d00e1202311c08840c0900c090030f800c080031d080708c030f800c", + "0x603800e128061f00180980600e00e474061f00182dc063a200e01cf800c", + "0x384e0187c00602a0182e0039210187c0061db0182e40384c0187c006028", + "0xed80700e7c00600701a01c2804e24213025012018140061f0018474063a1", + "0x63a200e01cf800c3880303580700e7c0060120180a8038073e0030f200c", + "0x38530187c0060170180e0038b20187c006007018038039220187c006023", + "0x61f0018488063a100e498061f0018078060b800e154061f0018034060b9", + "0xe80c3e00300600c07001c039f001801c6e0070ae4982a85316404806057", + "0x60f300e0700f01701c7c00602203a0347b007044030f800c01c0305c007", + "0xef0233e0030e200c23001c039f001801c06807046031f40200187c00681c", + "0x38b8070034f800c3ae031d28071727281983139c0bc169d705476c14026", + "0xf800c024031bb80734e2dc069f00182dc0637700e2dc061f001808006104", + "0x1c007238030f800c00e0300700734a030f800c07869c06b9a00e0f00900d", + "0x8e80c3e00300f00c17001c2400c3e00300680c17201c2300c3e00300b80c", + "0x24046238791ce807098030f800c34a031ce007094030f800c170031cd807", + "0x2700c7d2484061f001a110060ba00e1108184007c690091f00181302511d", + "0x2980c3e0030d200c01c01c2800c3e00309080c2ea01c039f001801c06807", + "0x930550a6039d300724c030f800c3c8030298070aa030f800c0a003029807", + "0x39f001801c068070b2031f50570187c0068b20182e8038b2244034f800c", + "0x1983139c0bc1683805476c140263bc08c2800724e030f800c0ae030ba807", + "0x3200c3e00301f00c07001c9580c3e00309100c01c01c2e00c3e00305c9ca", + "0xf800c0b80309100725e030f800c2060305c0070cc030f800c0800305c807", + "0x9380c0a601c3580c3e00300900c16401c9800c3e00305b80c16401c3480c", + "0x949280be174091f00181b4359300d24bc33064256079d20070da030f800c", + "0x9980c36401c039f001801c068070de031f59330187c00692a0184980392a", + "0x632600e1d0061f001801c6980700e7c00613a0184a40393a0e2034f800c", + "0x3b80c3e00303b00c74001c3b00c3e0030a187101ae7c039430187c006074", + "0xf800c2500305c807296030f800c0be0301c0070f2030f800c0ba03007007", + "0xa58790240303f80c3e00303b80c74201c3e80c3e00309480c17001ca600c", + "0x605d018038038800187c00606f018e88038073e00300380d00e1fc3e94c", + "0x60b800e210061f00184a0060b900e550061f001817c0603800e208061f0", + "0x68072ac21842154104048061560187c006080018e84038860187c006129", + "0x5b80c05401c039f00180480602a00e01cf800c3bc030ec80700e7c006007", + "0x6033018708038073e0030e500c38001c039f00182e4061be00e01cf800c", + "0xf800c05e030e480700e7c0061ce018720038073e00301880c38e01c039f0", + "0x39f00180a8061d400e01cf800c070030e680700e7c00602d01872c03807", + "0x38073e00301300c3b001c039f00180a0061d600e01cf800c3b6030ea807", + "0x61f00180f80603800e224061f00184880600e00e2c4061f0018164063a2", + "0x60b1018e840388d0187c0061030182e00395e0187c0060400182e40388b", + "0xf800c3bc030ec80700e7c00600701a01c4788d2bc22c4481201823c061f0", + "0x39f0018098061d800e01cf800c16e0301500700e7c0060120180a803807", + "0x38073e00301980c38401c039f0018728061c000e01cf800c172030df007", + "0xe580700e7c00602f018724038073e0030e700c39001c039f00180c4061c7", + "0x61d500e01cf800c054030ea00700e7c006038018734038073e00301680c", + "0x2700c74401c039f0018790061db00e01cf800c050030eb00700e7c0061db", + "0x5c807126030f800c07c0301c007122030f800c348030070072cc030f800c", + "0x4d00c3e0030b300c74201cb900c3e00308180c17001cb380c3e00302000c", + "0x1500700e7c0061c40181ac038073e00300380d00e268b91671262440900c", + "0x700712a030f800c046031d100700e7c0061e401876c038073e00300900c", + "0xbb80c3e00300680c17201c4e00c3e00300b80c07001c2100c3e00300380c", + "0x4f1771381080900c140030f800c12a031d080713c030f800c03c0305c007", + "0x61f0018038060b800e074061f00180300603800e01cf800c00e370038a0", + "0x63ec040030f800d038030798070380780b80e3e00301101d01a3d803822", + "0x1782d3ae0a8ed82804c778119f00187100611800e01cf800c00e03403823", + "0x5b80c3e00301000c20801c5c03801a7c0061d7018e94038b93940cc189ce", + "0xd380d73401c1e01201a7c006012018ddc039a716e034f800c16e031bb807", + "0x38460187c0060170180e00391c0187c006007018038039a50187c00603c", + "0x61f00182e00639b00e474061f0018078060b800e120061f0018034060b9", + "0xd20123e00302604a23a1202311c3c8e740384c0187c0061a5018e700384a", + "0x38073e00300380d00e138063ed242030f800d0880305d00708840c2003e", + "0x61f00181400605300e14c061f00186900600e00e140061f001848406175", + "0x5d007164488069f00184982a85301ce9c039260187c0061e401814c03855", + "0x61f001815c0617500e01cf800c00e03403859018fb82b80c3e00345900c", + "0x385c0187c0060b93940cc189ce05e0b41c02a3b60a0131de04614003927", + "0x61f0018100060b900e190061f00180f80603800e4ac061f00184880600e", + "0x60b70182c8038690187c00605c0184880392f0187c0061030182e003866", + "0xf3a400e1b4061f001849c0605300e1ac061f0018048060b200e4c0061f0", + "0xf800d254030930072544a49405f0ba048f800c0da1ac9806925e1983212b", + "0x948072741c4069f00184cc061b200e01cf800c00e0340386f018fbc9980c", + "0x1cf807286030f800c0e8031930070e8030f800c00e34c038073e00309d00c", + "0x61f00181740600e00e1dc061f00181d8063a000e1d8061f001850c3880d", + "0x61290182e00394c0187c0061280182e40394b0187c00605f0180e003879", + "0x600701a01c3f87d29852c3c8120181fc061f00181dc063a100e1f4061f0", + "0x2f80c07001c4100c3e00302e80c01c01c4000c3e00303780c74401c039f0", + "0x1d080710c030f800c2520305c007108030f800c2500305c8072a8030f800c", + "0x61d900e01cf800c00e0340395610c210aa082024030ab00c3e00304000c", + "0x5c80c37c01c039f00182dc0602a00e01cf800c0240301500700e7c0061de", + "0x603101871c038073e00301980c38401c039f0018728061c000e01cf800c", + "0xf800c05a030e580700e7c00602f018724038073e0030e700c39001c039f0", + "0x39f001876c061d500e01cf800c054030ea00700e7c00603801873403807", + "0x5880c3e00302c80c74401c039f0018098061d800e01cf800c050030eb007", + "0xf800c0800305c807116030f800c07c0301c007112030f800c24403007007", + "0x458890240304780c3e00305880c74201c4680c3e00308180c17001caf00c", + "0xf800c0240301500700e7c0061de018764038073e00300380d00e23c4695e", + "0x39f00182e4061be00e01cf800c04c030ec00700e7c0060b70180a803807", + "0x38073e00301880c38e01c039f00180cc061c200e01cf800c394030e0007", + "0xe680700e7c00602d01872c038073e00301780c39201c039f0018738061c8", + "0x61d600e01cf800c3b6030ea80700e7c00602a018750038073e00301c00c", + "0x600e00e598061f0018138063a200e01cf800c3c8030ed80700e7c006028", + "0x39670187c0060400182e4038930187c00603e0180e0038910187c0061a4", + "0x4d1722ce24c48812018268061f0018598063a100e5c8061f001840c060b8", + "0xed80700e7c0060120180a8038073e0030e200c0d601c039f001801c06807", + "0x38420187c006007018038038950187c006023018e88038073e0030f200c", + "0x61f0018078060b800e5dc061f0018034060b900e270061f001805c06038", + "0x680c00e035d4007140278bb89c084048060a00187c006095018e840389e", + "0x38120187c00600e0187ec038073e00300380d00e710063f001c034069f0", + "0x38077e20300395a00e05c061f0018048063a900e790061f00180340600e", + "0x7007038030f800c03c031d500703c030f800c00e34c038073e00300380d", + "0xe80c3e0030f200c75601c0b80c3e00300e00c75201cf200c3e0030e200c", + "0x700d01a7c00680c00e035d68070440740680c044030f800c02e031d6007", + "0x600d018038038120187c00600e018eb8038073e00300380d00e710063f2", + "0xf800c00e034038077e60300395a00e05c061f0018048063af00e790061f0", + "0xf800c38803007007038030f800c03c030fd00703c030f800c00e34c03807", + "0xb80c76001c0e80c3e0030f200c75601c0b80c3e00300e00c75e01cf200c", + "0x1400c3e00300600c07001c039f001801c6e0070440740680c044030f800c", + "0xf800c02403017807054030f800c388030910073b6030f800c01c0305c007", + "0x141e476201c1780c3e00300b80c28a01c1680c3e0030f200c05e01ceb80c", + "0x1880c7e8738061f001a0980612600e098ef02301c7c00602f05a75c151db", + "0x39f00187280612900e7281980d3e0030e700c36401c039f001801c06807", + "0xf800c01a0305c80734a030f800c0460301c007078030f800c00e03007007", + "0xe00c16401c2000c3e00301980c24401c1f00c3e0030ef00c17001cd200c", + "0x221030800f8d21a507805cd8007088030f800c03c03029807206030f800c", + "0x380d00e118063f5238030f800d34e0309300734e2dc5c038172048f800c", + "0x4a807090030f800c23a0300000723a074069f00180740637700e01cf800c", + "0x39210187c0060076da01c039f0018128060b100e1302500d3e00302400c", + "0x61f0018130060d800e01cf800c09c030588070a0138069f001848406095", + "0x8e00c36401c2980c3e00305912201a6b0038b20187c00605001836003922", + "0x2980c05e01c039f001801c6700700e7c0061260184a4039260aa034f800c", + "0x6980700e7c00600701a01c2b80c7ec01cf800d0a6030d70070a6030f800c", + "0x385c0187c006127018598039270187c006059018c98038590187c006007", + "0x60071a601c039f001815c061bc00e01cf800c00e034038077ee0300395a", + "0x62ea00e170061f001817c0616600e17c061f0018174062f100e174061f0", + "0x1fc1290187c006928018bac039280187c006128018598039280187c00605c", + "0x38073e00309480c25201c039f001801c6e00700e7c00600701a01c9500c", + "0x3580700e7c00601d0180a8038073e00301100c05401c039f00180800613a", + "0x602f00e190061f001801dd9007256030f800c00e75c038073e00302a80c", + "0x392f0187c00600706201c3300c3e00303212b01a738038640187c006064", + "0xf800c17203007007260030f800c0d2030dd0070d2030f800c0cc4bc06833", + "0x5b80c17001c9980c3e00305c00c17201c3680c3e00301c00c07001c3580c", + "0x380d00e1c4379330da1ac0900c0e2030f800c260030dc0070de030f800c", + "0x3b8762861d09d0233e00302a80c23001c039f00184a80612900e01cf800c", + "0xf800c16e0305c007162030f800c0700301c0072a82084007f0fa530a5879", + "0x589c476601caf00c3e00300e80c16401c4580c3e0030a580c22601c4480c", + "0x680711e031fc88d0187c006956018ed00395610c210071f001857845889", + "0x612900e244b300d3e00304680c76a01c039f001801c6e00700e7c006007", + "0xf800c2a82084007f0fa530b30790ee1d8a187427408c2800700e7c006091", + "0x5c00c17201cbb80c3e00304200c07001c4e00c3e00305c80c01c01c4980c", + "0x590072f0030f800c12603091007140030f800c10c0305c00713c030f800c", + "0x4a89a2e459c091f0018288bc0a013c5dc4e1e476c01c5100c3e00301100c", + "0x5200c36401c039f001801c068072f6031fd0a40187c00684201849803842", + "0x550bb17808cf800c2f40308c00700e7c0060bd0184a4038bd2f4034f800c", + "0x4a80c17001c6400c3e0030b900c07001c6098417e5c4ba8ba16c2d45a0b3", + "0x1db8072c4030f800c040030a2007196030f800c174030f00072c2030f800c", + "0x6700c7f6580061f001a5a0063b800e5a06198701c7c006162196584641c4", + "0x39f001833c0612900e33caa80d3e0030b000c77201c039f001801c06807", + "0xc20bf2e25d4aa8b616a2d0598aa1762f01185000e570061f001801c69807", + "0x6980c3e0030ad00c36c01cad00c3e0030ae0d101a6d0038d10187c0060c1", + "0xf800c1340305c8072a4030f800c30e0301c0072b6030f800c2ce03007007", + "0xa915b024030a880c3e00306980c37001c6c00c3e00306180c17001c6b00c", + "0xf800c182030df00700e7c0060bc018764038073e00300380d00e5446c0d6", + "0x39f00185c4061c700e01cf800c17e030e100700e7c00618401870003807", + "0x38073e00305b00c39601c039f00182ec061d800e01cf800c2ea030e4007", + "0xeb00700e7c0060b3018754038073e00305a00c3a801c039f00182d4061cd", + "0x39530187c0061670180380394f0187c0060ce0186e8038073e00305500c", + "0x61f001830c060b800e370061f0018268060b900e524061f001861c06038", + "0x39f001801c068072885146e1492a6048061440187c00614f0186e003945", + "0x61f001859c0600e00e4ec061f00185ec061ba00e01cf800c0400309d007", + "0x60950182e0039360187c00609a0182e4038e10187c0061720180e003939", + "0x600701a01c988e326c3849c8120184c4061f00184ec061b800e38c061f0", + "0x39f00180880602a00e01cf800c0400309d00700e7c0060071b801c039f0", + "0x38073e00304000c38401c039f0018208061c000e01cf800c2a8030df007", + "0xec80700e7c00614c018724038073e00303e80c39001c039f00181fc061c7", + "0x61d500e01cf800c0ee030ea00700e7c006079018734038073e00309d00c", + "0x4780c37401c039f00181d0061d800e01cf800c286030eb00700e7c006076", + "0x5c8071ce030f800c1080301c00725c030f800c172030070071ca030f800c", + "0x9280c3e00307280c37001c7480c3e00304300c17001c9600c3e00305c00c", + "0x1500700e7c0060200184e8038073e00300380d00e4947492c1ce4b80900c", + "0x70071d6030f800c08c030dd00700e7c00601d0180a8038073e00301100c", + "0x7700c3e00305c00c17201c9180c3e00301c00c07001c9200c3e00305c80c", + "0x780ee2464900900c240030f800c1d6030dc0071e0030f800c16e0305c007", + "0x38073e00301000c27401c039f00180740602a00e01cf800c00e03403920", + "0xdd00700e7c00601c0180a8038073e00300f00c3b601c039f00180880602a", + "0x7980c3e00301180c07001c7b00c3e00300380c01c01c8f00c3e00301880c", + "0xf800c23c030dc00722c030f800c3bc0305c007230030f800c01a0305c807", + "0xe200e7f80380680d3e00340600701aee80391322c460798f60240308980c", + "0xf800c01a0300700702e030f800c01c031dd80700e7c00600701a01cf2012", + "0x39f001801c0680700eff4060072b401c0e00c3e00300b80c77801c0f00c", + "0x381d0187c0060071a601c039f0018790060f000e01cf800c02403078007", + "0x61f0018088063bc00e078061f00187100600e00e088061f0018074063bd", + "0x3823040034060230187c00601c018ef8038200187c00601e018eac0381c", + "0xf800c3c8048069f800e790061f0018030060b800e048061f001801c06038", + "0x38073e00300380d00e078063fe02e030f800d388031df8073880380680e", + "0x91f0018074063c200e074061f0018070063c100e070061f001805c063c0", + "0x602a00e01cf800c040031e200700e7c006022018f0c038263bc08c10022", + "0x640000e0a0061f001808c063ff00e01cf800c04c0305880700e7c0061de", + "0x39d70187c00600e0182e00382a0187c00600d0180e0039db0187c006028", + "0xf00c80401c039f001801c0680705a75c1500e0180b4061f001876c06401", + "0x200807062030f800c01c0305c00739c030f800c01a0301c00705e030f800c", + "0x600780601c039f0018038061cb00e0cc189ce01c0301980c3e00301780c", + "0x600c07001c0e80c3e00300380c01c01c0900c3e00300382300e710061f0", + "0x202007046030f800c02403013007040030f800c01a0305c007044030f800c", + "0x381c03c05cf21c43e0030ef0230400880e81280a01cef00c3e0030e200c", + "0xf800c04c0320400700e7c00600701a01c1400c80e098061f001a07006406", + "0x1500c1e601c1500c3e0030eb80c3ee01ceb80c3e0030ed80c81201ced80c", + "0x39ce0187c00602d018410038073e00300380d00e0bc0640a05a030f800d", + "0x61f00187900600e00e0cc061f00180c40640000e0c4061f0018738063ff", + "0x6033019004038380187c00601e0182e0038b90187c0060170180e0039ca", + "0x61f00180bc0640200e01cf800c00e034038b80702e4e51c40182e0061f0", + "0x601e0182e00383c0187c0060170180e0039a70187c0061e4018038038b7", + "0xf800c00e034039a434a0f0d39c4018690061f00182dc0640100e694061f0", + "0x60170180e0038400187c0061e40180380383e0187c00602801900803807", + "0x201c4018470061f00180f80640100e110061f0018078060b800e40c061f0", + "0x39f001801c6e00700e7c00600756a01c0f00c3e0030039f500e47022103", + "0x601c0182540381c0187c00601d0180000381d024034f800c024031bb807", + "0x1180c12a01c1180c3e003003b6d00e01cf800c04403058807040088069f0", + "0x6c007050030f800c0400306c00700e7c0061de0182c4038263bc034f800c", + "0x61f00180a80602f00e0a8061f001876c1400d35801ced80c3e00301300c", + "0xf800c00e34c038073e00300380d00e75c0640b00e7c00682a0186b80382a", + "0x60072b401ce700c3e00301780c2cc01c1780c3e00301680c64c01c1680c", + "0x1880c3e0030038d300e01cf800c3ae030de00700e7c00600701a01c03c0c", + "0xf800c39c0317500739c030f800c066030b3007066030f800c06203178807", + "0x38380190345c80c3e0034e500c5d601ce500c3e0030e500c2cc01ce500c", + "0x61db00e01cf800c0240301500700e7c0060b90184a4038073e00300380d", + "0x60073ae01c039f00187100606b00e01cf800c03c0316f00700e7c0061e4", + "0x5c00d39c01c5b80c3e00305b80c05e01c5b80c3e003003c0e00e2e0061f0", + "0x39a50187c0061a707803419807078030f800c00e0c4039a70187c0060b7", + "0x61f00180300603800e0f8061f001801c0600e00e690061f0018694061ba", + "0x61a40186e0038440187c00600e0182e0039030187c00600d0182e403840", + "0xf800c0700309480700e7c00600701a01c8e0442061001f012018470061f0", + "0x39260aa14c591220a01389084c094474240460467c0061c401846003807", + "0xf800c0180301c007250030f800c00e030070070b215c069f00181280640f", + "0x941c471e01c9580c3e00302c80c71c01c9500c3e00300700c17001c9480c", + "0x38660190403200c3e00342f80c17401c2f85d0b849ce21f00184ac95129", + "0x386b0187c0061270180380392f0187c0060640185d4038073e00300380d", + "0xf800c26603029807266790069f00187900639400e1b4061f00184bc06053", + "0x20886f0187c0069300182e8039300d2034f800c2661b43580e74c01c9980c", + "0xf800c0b80301c007274030f800c0de030ba80700e7c00600701a01c3880c", + "0x9d00c0a601ca580c3e00302b80c71c01c3c80c3e00302e80c17001c3b80c", + "0x687601904c038762861d0071f0018530a58790ee71209007298030f800c", + "0x3882100034f800c0980320a80700e7c00600701a01c3f80c8281f4061f0", + "0x61f0018034060b900e22c061f00181d00603800e224061f00181a40600e", + "0x6012018ddc0388f0187c006082018e600388d0187c0061430182e00395e", + "0x616611e234af08b112791cc8072cc030f800c2cc030590072cc048069f0", + "0x600701a01c4980c82c244061f001a2c4060ba00e2c4ab086108550091f0", + "0xb380c0a601c4a80c3e0030aa00c01c01cb380c3e00304880c2ea01c039f0", + "0x389c0187c00609c01814c0389c3c8034f800c3c8031ca007084030f800c", + "0x389e01905cbb80c3e00344d00c17401c4d17201a7c00609c084254073a6", + "0x397a0187c006172018038038a00187c0061770185d4038073e00300380d", + "0x61f0018558060b800e2f0061f0018218060b900e2f4061f001821006038", + "0x5980c16401c5981201a7c006012018ddc038aa0187c006080018e60038bb", + "0x5a0b31542ec5e0bd2f405e0c007168030f800c14003029807166030f800c", + "0x697b019064038170187c00601703c0356c8072f62900b8a22f0048f800c", + "0x641c00e2e8061f001801e0d80700e7c00600701a01c5b00c8342d4061f0", + "0xc20bf01a7c0060b5019074038073e0030b880c25201cb897501a7c00607d", + "0x24046046140038c10187c0061e40242e80741e00e01cf800c30803094807", + "0x61f00185e00600e00e61c061f00184982a8531644882804e2422fcba91d", + "0x6187018488039600187c0060a40182e0039620187c0060a20180e0038cb", + "0xe21f0018554671602c432c0942000e554061f00183040641f00e338061f0", + "0x38073e00300380d00e5700642119e030f800d2c2030930072c2320b40c3", + "0x6980c3e0030038d300e01cf800c2b4030948072b4344069f001833c061b2", + "0x60c3018038039520187c00615b0186d80395b0187c0060d31a2034da007", + "0x60b800e544061f001805c060b900e360061f00185a00603800e358061f0", + "0x68072a653ca88d81ac048061530187c0061520186e00394f0187c0060c8", + "0x1c0071b8030f800c18603007007292030f800c2b8030dd00700e7c006007", + "0x9d80c3e00306400c17001ca200c3e00300b80c17201ca280c3e0030b400c", + "0x38073e00300380d00e4e49d94428a3700900c272030f800c292030dc007", + "0xe100700e7c006055018700038073e00309300c37c01c039f0018118061d9", + "0x61c900e01cf800c244030e400700e7c0060b201871c038073e00302980c", + "0x3e80c84401c039f0018484061cd00e01cf800c09c030e580700e7c006050", + "0x6048018760038073e00308e80c3ac01c039f00180480602a00e01cf800c", + "0x6178018038038e10187c0060b60186e8038073e0030f200c3b601c039f0", + "0x60b800e4c4061f001805c060b900e38c061f00182880603800e4d8061f0", + "0x680725c394988e326c0480612e0187c0060e10186e0038e50187c0060a4", + "0x900c05401c039f0018118061d900e01cf800c090030ec00700e7c006007", + "0x61260186f8038073e0030f200c3b601c039f0018474061d600e01cf800c", + "0xf800c164030e380700e7c006053018708038073e00302a80c38001c039f0", + "0x39f0018138061cb00e01cf800c0a0030e480700e7c00612201872003807", + "0x38073e00300f00c5bc01c039f00181f40642200e01cf800c242030e6807", + "0x9600c3e0030b900c01c01c7380c3e00304f00c37401c039f0018200061d4", + "0xf800c2ac0305c00724a030f800c10c0305c8071d2030f800c1080301c007", + "0xf800c00e034039241d64947492c0240309200c3e00307380c37001c7580c", + "0x39f00180480602a00e01cf800c08c030ec80700e7c00604801876003807", + "0x38073e00309300c37c01c039f0018790061db00e01cf800c23a030eb007", + "0xe400700e7c0060b201871c038073e00302980c38401c039f0018154061c0", + "0x61cd00e01cf800c09c030e580700e7c006050018724038073e00309100c", + "0x4000c3a801c039f0018078062de00e01cf800c0fa0321100700e7c006121", + "0x603800e3b8061f00185500600e00e48c061f001824c061ba00e01cf800c", + "0x391e0187c0061560182e0039200187c0060860182e4038f00187c006084", + "0xec00700e7c00600701a01c7b11e2403c0770120183d8061f001848c061b8", + "0x61d600e01cf800c0240301500700e7c006046018764038073e00302400c", + "0x2a80c38001c039f0018498061be00e01cf800c3c8030ed80700e7c00611d", + "0x6122018720038073e00305900c38e01c039f001814c061c200e01cf800c", + "0xf800c242030e680700e7c00604e01872c038073e00302800c39201c039f0", + "0x61f00181fc061ba00e01cf800c03c0316f00700e7c00604c01875003807", + "0x600d0182e4039160187c0060740180e0039180187c006069018038038f3", + "0x8c012018410061f00183cc061b800e420061f001850c060b800e44c061f0", + "0x6046018764038073e00302400c3b001c039f001801c0680720842089916", + "0xf800c3c8030ed80700e7c00611d018758038073e00300900c05401c039f0", + "0x39f001814c061c200e01cf800c0aa030e000700e7c0061260186f803807", + "0x38073e00302800c39201c039f0018488061c800e01cf800c164030e3807", + "0x16f00700e7c00604c018750038073e00309080c39a01c039f0018138061cb", + "0x7007204030f800c0e2030dd00700e7c006057018754038073e00300f00c", + "0xd600c3e00300680c17201c0000c3e00302e00c07001c8a00c3e00303480c", + "0xd71ac0004500900c360030f800c204030dc00735c030f800c0ba0305c007", + "0x38073e00302300c3b201c039f0018120061d800e01cf800c00e034039b0", + "0xdf00700e7c0061e401876c038073e00308e80c3ac01c039f00180480602a", + "0x61c700e01cf800c0a6030e100700e7c006055018700038073e00309300c", + "0x2700c39601c039f0018140061c900e01cf800c244030e400700e7c0060b2", + "0x601e018b78038073e00302600c3a801c039f0018484061cd00e01cf800c", + "0x6127018038039b20187c0060660186e8038073e00302b80c3aa01c039f0", + "0x60b800e6e0061f0018034060b900e6d8061f00181700603800e6d0061f0", + "0xfa8073786e8dc1b6368048061bc0187c0061b20186e0039ba0187c00605d", + "0x6012018ddc038073e0030038dc00e01cf800c00ead40381e0187c006007", + "0x3820044034f800c0380304a807038030f800c03a0300000703a048069f0", + "0x131de01a7c006023018254038230187c0060076da01c039f0018088060b1", + "0x61f0018098060d800e0a0061f0018080060d800e01cf800c3bc03058807", + "0x1500c35c01c1500c3e00301500c05e01c1500c3e0030ed82801a6b0039db", + "0x632600e0b4061f001801c6980700e7c00600701a01ceb80c84601cf800d", + "0x380d00e01e1200c00e568039ce0187c00602f0185980382f0187c00602d", + "0x6031018bc4038310187c0060071a601c039f001875c061bc00e01cf800c", + "0x616600e728061f0018738062ea00e738061f00180cc0616600e0cc061f0", + "0x39f001801c06807070032128b90187c0069ca018bac039ca0187c0061ca", + "0x38073e00300900c05401c039f0018790061db00e01cf800c17203094807", + "0x213007170030f800c00e75c038073e0030e200c0d601c039f0018078062de", + "0xd380c3e00305b8b801a738038b70187c0060b70180bc038b70187c006007", + "0xf800c34a030dd00734a030f800c34e0f00683300e0f0061f001801c18807", + "0x680c17201c2000c3e00300600c07001c1f00c3e00300380c01c01cd200c", + "0x900c238030f800c348030dc007088030f800c01c0305c007206030f800c", + "0xe200c23001c039f00180e00612900e01cf800c00e0340391c08840c2003e", + "0xf800c0940320780724c154298b2244140271210981288e84808c08cf800c", + "0x60b800e4a4061f00180300603800e4a0061f001801c0600e00e1642b80d", + "0xf800c2564a894928388e3c0392b0187c006059018e380392a0187c00600e", + "0x39f001801c068070cc032138640187c00685f0182e80385f0ba170939c4", + "0xf800c25e030298070d6030f800c24e0300700725e030f800c0c8030ba807", + "0x73a700e4cc061f00184cc0605300e4ccf200d3e0030f200c72801c3680c", + "0x380d00e1c4064280de030f800d2600305d0072601a4069f00184cc3686b", + "0x60b800e1dc061f00181700603800e4e8061f00181bc0617500e01cf800c", + "0x394c0187c00613a01814c0394b0187c006057018e38038790187c00605d", + "0x64290fa030f800d0ec032098070ec50c3a00e3e0030a614b0f21dce2412", + "0xf800c0d203007007104200069f00181300641500e01cf800c00e0340387f", + "0xa180c17001caf00c3e00300680c17201c4580c3e00303a00c07001c4480c", + "0x3966024034f800c024031bb80711e030f800c104031cc00711a030f800c", + "0x430842a8048f800c2cc23c4695e116224f239900e598061f0018598060b2", + "0x617500e01cf800c00e034038930190a84880c3e00345880c17401c58956", + "0x38420187c00616701814c038950187c006154018038039670187c006091", + "0x4e04212a039d3807138030f800c13803029807138790069f001879006394", + "0x39f001801c0680713c032159770187c00689a0182e80389a2e4034f800c", + "0xf800c1080301c0072f4030f800c2e403007007140030f800c2ee030ba807", + "0x4000c73001c5d80c3e0030ab00c17001c5e00c3e00304300c17201c5e80c", + "0x38b30187c0060b30182c8038b3024034f800c024031bb807154030f800c", + "0x511780247c0060b41662a85d8bc17a5e80bc1800e2d0061f001828006053", + "0x642c16a030f800d2f60320c80702e030f800c02e07806ad900e5ec52017", + "0xba80d3e00303e80c83801c5d00c3e003003c1b00e01cf800c00e034038b6", + "0x61840184a40398417e034f800c16a0320e80700e7c0061710184a403971", + "0x2712117e5d48e84808c08c28007182030f800c3c82e80900e83c01c039f0", + "0x5100c07001c6580c3e0030bc00c01c01cc380c3e0030930550a62c891050", + "0x20f80719c030f800c30e030910072c0030f800c1480305c0072c4030f800c", + "0x39611905a0619c43e0030aa8ce2c05886581284001caa80c3e00306080c", + "0xf800c19e030d900700e7c00600701a01cae00c85a33c061f001a58406126", + "0x698d101a6d0038d30187c0060071a601c039f00185680612900e5686880d", + "0x1c0071ac030f800c186030070072a4030f800c2b6030db0072b6030f800c", + "0xa780c3e00306400c17001ca880c3e00300b80c17201c6c00c3e0030b400c", + "0x38073e00300380d00e54ca79511b03580900c2a6030f800c2a4030dc007", + "0x61f00185a00603800e370061f001830c0600e00e524061f0018570061ba", + "0x61490186e00393b0187c0060c80182e0039440187c0060170182e403945", + "0xf800c08c030ec80700e7c00600701a01c9c93b2885146e0120184e4061f0", + "0x39f001814c061c200e01cf800c0aa030e000700e7c0061260186f803807", + "0x38073e00302800c39201c039f0018488061c800e01cf800c164030e3807", + "0x21100700e7c0060120180a8038073e00309080c39a01c039f0018138061cb", + "0x61db00e01cf800c090030ec00700e7c00611d018758038073e00303e80c", + "0x1c00726c030f800c2f0030070071c2030f800c16c030dd00700e7c0061e4", + "0x7280c3e00305200c17001c9880c3e00300b80c17201c7180c3e00305100c", + "0x38073e00300380d00e4b8729311c64d80900c25c030f800c1c2030dc007", + "0xeb00700e7c00607d019088038073e00302300c3b201c039f0018120061d8", + "0x61c000e01cf800c24c030df00700e7c0061e401876c038073e00308e80c", + "0x9100c39001c039f00182c8061c700e01cf800c0a6030e100700e7c006055", + "0x6121018734038073e00302700c39601c039f0018140061c900e01cf800c", + "0xf800c100030ea00700e7c00601e018b78038073e00300900c05401c039f0", + "0x60840180e00392c0187c006172018038038e70187c00609e0186e803807", + "0x61b800e3ac061f0018558060b800e494061f0018218060b900e3a4061f0", + "0x2400c3b001c039f001801c068072483ac928e9258048061240187c0060e7", + "0x611d018758038073e00303e80c84401c039f0018118061d900e01cf800c", + "0xf800c0aa030e000700e7c0061260186f8038073e0030f200c3b601c039f0", + "0x39f0018488061c800e01cf800c164030e380700e7c00605301870803807", + "0x38073e00309080c39a01c039f0018138061cb00e01cf800c0a0030e4807", + "0xdd00700e7c006080018750038073e00300f00c5bc01c039f00180480602a", + "0x7800c3e00304200c07001c7700c3e0030aa00c01c01c9180c3e00304980c", + "0xf800c246030dc00723c030f800c2ac0305c007240030f800c10c0305c807", + "0x39f0018120061d800e01cf800c00e034038f623c480780ee0240307b00c", + "0x38073e00308e80c3ac01c039f0018130061d400e01cf800c08c030ec807", + "0xe100700e7c006055018700038073e00309300c37c01c039f0018790061db", + "0x61c900e01cf800c244030e400700e7c0060b201871c038073e00302980c", + "0x900c05401c039f0018484061cd00e01cf800c09c030e580700e7c006050", + "0x3480c01c01c7980c3e00303f80c37401c039f0018078062de00e01cf800c", + "0x5c007226030f800c01a0305c80722c030f800c0e80301c007230030f800c", + "0x390421044c8b1180240308200c3e00307980c37001c8400c3e0030a180c", + "0x61d400e01cf800c08c030ec80700e7c006048018760038073e00300380d", + "0x9300c37c01c039f0018790061db00e01cf800c23a030eb00700e7c00604c", + "0x60b201871c038073e00302980c38401c039f0018154061c000e01cf800c", + "0xf800c09c030e580700e7c006050018724038073e00309100c39001c039f0", + "0x39f0018078062de00e01cf800c0240301500700e7c00612101873403807", + "0x61f00181a40600e00e408061f00181c4061ba00e01cf800c0ae030ea807", + "0x605d0182e0039ac0187c00600d0182e4038000187c00605c0180e003914", + "0x600701a01cd81ae3580008a0120186c0061f0018408061b800e6b8061f0", + "0xf800c098030ea00700e7c006046018764038073e00302400c3b001c039f0", + "0x39f0018498061be00e01cf800c3c8030ed80700e7c00611d01875803807", + "0x38073e00305900c38e01c039f001814c061c200e01cf800c0aa030e0007", + "0xe680700e7c00604e01872c038073e00302800c39201c039f0018488061c8", + "0x61d500e01cf800c03c0316f00700e7c0060120180a8038073e00309080c", + "0x1c007368030f800c24e03007007364030f800c0cc030dd00700e7c006057", + "0xdd00c3e00302e80c17001cdc00c3e00300680c17201cdb00c3e00302e00c", + "0x39f0018038061c900e6f0dd1b836c6d00900c378030f800c364030dc007", + "0xe80c3e00300380c01c01c0900c3e00300382300e710061f001801cfb007", + "0xf800c02403013007040030f800c01a0305c007044030f800c0180301c007", + "0xf21c43e0030ef0230400880e81285c01cef00c3e0030e200c80801c1180c", + "0x21880700e7c00600701a01c1400c860098061f001a0700642f00e0700f017", + "0x1500c3e0030eb80c86601ceb80c3e0030ed80c86401ced80c3e00301300c", + "0x602d0181bc038073e00300380d00e0bc0643405a030f800d05403099807", + "0x600e00e0cc061f00180c4061e800e0c4061f0018738061e600e738061f0", + "0x38380187c00601e0182e0038b90187c0060170180e0039ca0187c0061e4", + "0x61ec00e01cf800c00e034038b80702e4e51c40182e0061f00180cc061e9", + "0x383c0187c0060170180e0039a70187c0061e4018038038b70187c00602f", + "0x39a434a0f0d39c4018690061f00182dc061e900e694061f0018078060b8", + "0x38400187c0061e40180380383e0187c0060280187b0038073e00300380d", + "0x61f00180f8061e900e110061f0018078060b800e40c061f001805c06038", + "0x69f00187100608600e710061f0018030061c400e470221030807100611c", + "0x6c3600e01cf800c00e034039e40190d40900c3e00340700c2ac01c0700d", + "0xf800c03c0321c00700e7c00600701a01c0e00c86e0780b80d3e003409007", + "0xe80c87201c1000c3e00300680c38801c1100c3e00300b80c01c01c0e80c", + "0xef00c3e0030038d300e01cf800c00e034038230400880700c046030f800c", + "0xf800c01a030e2007050030f800c0380300700704c030f800c3bc0321d007", + "0x38073e00300380d00e0a8ed82801c0301500c3e00301300c87201ced80c", + "0x61f0018034061c400e0b4061f001801c0600e00e75c061f00187900643a", + "0xe200700e7c0060071b801ce702f05a038061ce0187c0061d70190e40382f", + "0x61f001a7100615600e7100700d3e00300900c10c01c0900c3e00300680c", + "0x61ae00e078f200d3e0030f200c87801c039f001801c0680702e0321d9e4", + "0x700700e7c0061e40182c4038073e00300380d00e0700643d00e7c00681e", + "0x1300c3e00300700c38801cef00c3e00300600c07001c1180c3e00300380c", + "0x6440050030f800d0400321f8070400880e80e3e0030131de04603a1f007", + "0xf800d3ae0319e8073ae0a8069f00180a00644100e01cf800c00e034039db", + "0x600e00e738061f00180b40644300e01cf800c00e0340382f0191081680c", + "0x39ca0187c00602a018710038330187c0060220180e0038310187c00601d", + "0x644600e01cf800c00e0340380788a0300395a00e2e4061f001873806444", + "0x5b80c3e00305c00c89001c5c00c3e00301c02a01b11c038380187c00602f", + "0xf800c16e03224807078030f800c0440301c00734e030f800c03a03007007", + "0x39a40187c0061db019128038073e00300380d00e6941e1a701c030d280c", + "0x61f00186900644900e100061f00180880603800e0f8061f00180740600e", + "0x3b6e00e01cf800c038030de00700e7c00600701a01c8184007c03806103", + "0x391c0187c00611c0180bc0391c0187c0060443c8034d6007088030f800c", + "0x61f0018038061c400e01cf800c00e0340384601912c039f001a470061ae", + "0x39210191382600c3e00348e80c89a01c8e84801a7c00604a0191300384a", + "0x38310187c0060070180380384e0187c00604c01913c038073e00300380d", + "0x61f00181380644400e728061f0018120061c400e0cc061f001803006038", + "0x9100c89001c9100c3e0030281ca01b11c038500187c0060b9019140038b9", + "0x2248070aa030f800c0660301c0070a6030f800c06203007007164030f800c", + "0x6121019118038073e00300380d00e4982a85301c0309300c3e00305900c", + "0x700724e030f800c0b2032240070b2030f800c0ae12006c4700e15c061f0", + "0x2f80c3e00309380c89201c2e80c3e00300600c07001c2e00c3e00300380c", + "0x60071a601c039f0018118061bc00e01cf800c00e0340385f0ba1700700c", + "0x224007254030f800c25203806c4700e4a4061f00184a00644600e4a0061f0", + "0x3300c3e00300600c07001c3200c3e00300380c01c01c9580c3e00309500c", + "0x644600e01cf800c00e0340392f0cc1900700c25e030f800c25603224807", + "0x3580c3e00309800c89001c9800c3e00303480e01b11c038690187c006017", + "0xf800c0d603224807266030f800c0180301c0070da030f800c00e03007007", + "0x69f001a0300615500e030061f001801c0601c00e1bc9986d01c0303780c", + "0x615c00e048061f0018038060cf00e01cf800c00e034039c40191440700d", + "0x380d00e01e2900c00e568038170187c006012018344039e40187c00600d", + "0xe200c2b801c0e00c3e00300f00c2b601c0f00c3e0030038d300e01cf800c", + "0xe200703a030f800c3c80302e00702e030f800c038030688073c8030f800c", + "0xf800c00e0340382001914c1100c3e00340b80c2a401c0e80c3e00300e80c", + "0x61de018254039de0187c006023018360038230187c00602201835803807", + "0xed80c12a01ced80c3e003003b6d00e01cf800c04c03058807050098069f0", + "0x4a80705a030f800c0500306c00700e7c00602a0182c4039d7054034f800c", + "0x1880c3e0030eb80c1b001c039f00180bc060b100e7381780d3e00301680c", + "0xf800c39c0306c00700e7c0060330182c4039ca066034f800c0620304a807", + "0x5c80d35801c5c80c3e00305c80c05e01c1c00c3e0030e500c1b001c5c80c", + "0x645400e7c0068b80186b8038b80187c0060b80180bc038b80187c006038", + "0x1e00c3e0030d380c64c01cd380c3e0030038d300e01cf800c00e034038b7", + "0xde00700e7c00600701a01c03c5501801cad00734a030f800c078030b3007", + "0xb300707c030f800c34803178807348030f800c00e34c038073e00305b80c", + "0x8180c3e00302000c8ac01c2000c3e0030d280c5d401cd280c3e00301f00c", + "0x68072381100680c238030f800c2060322b807088030f800c03a030e2007", + "0x2300c8b001c2300c3e0030038d300e01cf800c0400309480700e7c006007", + "0x680c094030f800c0900322b80723a030f800c03a030e2007090030f800c", + "0x69f00180380645900e710061f001801ceb80700e7c0060071b801c2511d", + "0x600c0180e00381d0187c006007018038038073e00300900c29801cf2012", + "0xe245a00e08c061f00187100609100e080061f00187900607f00e088061f0", + "0x382601916cef00c3e00340e00c68201c0e01e02e038f800c0460801101d", + "0x38073e0030ed80c25201ced82801a7c0061de018d0c038073e00300380d", + "0x61f001875c0605c00e01cf800c054030938073ae0a8069f00180a006059", + "0x600d0181f4038b90187c00601e0180e0039ca0187c0060170180380382d", + "0x179c43e00305c038172728e245c00e2e0061f00180b4061c400e0e0061f0", + "0x4d00700e7c00600701a01cd380c8ba2dc061f001a0cc0617200e0cc189ce", + "0xd200c3e0030d280c6e401cd280c3e00301e00c6e201c1e00c3e00305b80c", + "0xf800c0620303e807080030f800c39c0301c00707c030f800c05e03007007", + "0x39f001801c0680708840c2003e3880302200c3e0030d200c6e601c8180c", + "0xf800c39c0301c00708c030f800c05e03007007238030f800c34e031ba007", + "0x240463880302500c3e00308e00c6e601c8e80c3e00301880c0fa01c2400c", + "0xf800c02e03007007098030f800c04c031ba00700e7c00600701a01c2511d", + "0x2600c6e601c2800c3e00300680c0fa01c2700c3e00300f00c07001c9080c", + "0x680c17201c0e00c3e00300380c01c01c9105009c484e200c244030f800c", + "0x22f007040030f800c02403017807044030f800c3880316580703a030f800c", + "0xf200c01c01c1180c3e00300382300e0780b9e401c7c0060200440740e1c4", + "0x1300705a030f800c01c0305c0073ae030f800c0180301c007054030f800c", + "0xe702f05a75c1501285c01ce700c3e00300f00c80801c1780c3e00301180c", + "0x600701a01c1980c8be0c4061f001a76c0642f00e76c140263bc710f800c", + "0x1c00c86601c1c00c3e0030e500c86401ce500c3e00301880c86201c039f0", + "0x38073e00300380d00e2dc06460170030f800d17203099807172030f800c", + "0x61f00180f0061e800e0f0061f001869c061e600e69c061f00182e00606f", + "0x60170182e40383e0187c0060260180e0039a40187c0061de018038039a5", + "0xd2012018110061f0018694061e900e40c061f00180a0060b800e100061f0", + "0xef00c01c01c8e00c3e00305b80c3d801c039f001801c0680708840c2003e", + "0x5c00723a030f800c02e0305c807090030f800c04c0301c00708c030f800c", + "0x384c094474240460240302600c3e00308e00c3d201c2500c3e00301400c", + "0x384e0187c0061de018038039210187c0060330187b0038073e00300380d", + "0x61f00180a0060b800e488061f001805c060b900e140061f001809806038", + "0xf800c0180301c0070a62c89105009c048060530187c0061210187a4038b2", + "0x38173c8048071f00180700f00d1ec01c0e00c3e00300700c17001c0f00c", + "0xf800c03a0308200700e7c00600701a01c1100c8c2074061f001a05c060f3", + "0x680c17201ceb80c3e00300900c07001c1500c3e00300380c01c01c1000c", + "0x5900739c030f800c3880309100705e030f800c3c80305c00705a030f800c", + "0x140263bc08c091f00180c4e702f05a75c151e42ee01c1880c3e00301000c", + "0x1980c2bc01c039f001801c06807394032310330187c0069db01822c039db", + "0x38073e00300380d00e2e006463070030f800d17203175807172030f800c", + "0x1780734e030f800c00f190038b70187c0060073ae01c039f00180e006129", + "0xd280c3e00300383100e0f0061f001869c5b80d39c01cd380c3e0030d380c", + "0x60230180380383e0187c0061a4019194039a40187c00603c34a03419807", + "0x60b800e110061f0018098060b900e40c061f00187780603800e100061f0", + "0x680708c47022103080048060460187c00603e0191980391c0187c006028", + "0x2400c8ce01c2400c3e0030038d300e01cf800c1700309480700e7c006007", + "0x1c007098030f800c04603007007094030f800c23a0323400723a030f800c", + "0x2800c3e00301400c17001c2700c3e00301300c17201c9080c3e0030ef00c", + "0x38073e00300380d00e4882804e2421300900c244030f800c09403233007", + "0x61f00187780603800e14c061f001808c0600e00e2c8061f001872806465", + "0x60b2019198038570187c0060280182e0039260187c0060260182e403855", + "0xf800c3880303580700e7c00600701a01c2c85724c15429812018164061f0", + "0x60120180e00385c0187c006007018038039270187c00602201919403807", + "0x646600e4a0061f0018790060b800e17c061f0018034060b900e174061f0", + "0x5c007024030f800c00e0301c0072524a02f85d0b8048061290187c006127", + "0x69c40191a8039c401c034071f00187900900d8d201cf200c3e00300600c", + "0x236807038030f800c02e0323600700e7c00600701a01c0f00c8d605c061f0", + "0xf800c0440309d0070460801100e3e00300e80c8dc01c0e80c3e00300e00c", + "0xf800c3bc030f40073bc030f800c040030f300700e7c0060230180a803807", + "0x1300c3d201ced80c3e00300700c17001c1400c3e00300680c07001c1300c", + "0x61f0018078061ec00e01cf800c00e0340382a3b60a00700c054030f800c", + "0x61d70187a40382f0187c00600e0182e00382d0187c00600d0180e0039d7", + "0x900d8e07100700d3e00340680c00e03a3780739c0bc1680e018738061f0", + "0x61f00180380600e00e05c061f00187100647100e01cf800c00e034039e4", + "0x38073e00300380d00e01e3980c00e5680381c0187c0060170191c80381e", + "0x61f00180740647200e078061f00180480600e00e074061f001879006474", + "0xf800c04403017807046030f800c0380323b007044030f800c00f1d40381c", + "0x1400c8f0098061f001a0800613300e080061f00187781180d8ee01cef00c", + "0x1500c3e0030ed80c3cc01ced80c3e00301300c0de01c039f001801c06807", + "0xf800c3ae030f480705a030f800c03c030070073ae030f800c054030f4007", + "0x700739c030f800c050030f600700e7c00600701a01c1782d01a0301780c", + "0x60071b801c1983101a0301980c3e0030e700c3d201c1880c3e00300f00c", + "0x700c0fa01c1180c3e00300600c07001c1000c3e00300380c01c01c039f0", + "0xe21f0018098ef0230407116500704c030f800c3c80303f8073bc030f800c", + "0x38073e00300380d00e76c06479050030f800d044030b90070440740e01e", + "0x609a00e69c5b8b80702e4e50330627381782d3ae0a8119f001804806118", + "0x391c0187c00601c0180e0038440187c00601e0180380383c0187c006028", + "0x61f00182e4062cb00e120061f0018710060b800e118061f0018034060b9", + "0x8e04402f1e80384c0187c0060170185100384a0187c00603c0180bc0391d", + "0x23e1210187c0069030191ec039030800f8d21a50247c00604c09447424046", + "0x61220184a4039220a0034f800c2420323e80700e7c00600701a01c2700c", + "0x1c0503940cc189ce05e0b4eb82a046140038b20187c0060071a601c039f0", + "0xf800c0aa030db0070aa030f800c16414c069b400e14c061f001869c5b8b8", + "0x1f00c17201c2c80c3e0030d200c07001c2b80c3e0030d280c01c01c9300c", + "0xdc0070ba030f800c0800305c0070b8030f800c03a0303e80724e030f800c", + "0xec80700e7c00600701a01c2f85d0b849c2c8573c80302f80c3e00309300c", + "0x61c200e01cf800c16e030e000700e7c0061a70186f8038073e00301500c", + "0xe500c39201c039f001875c061d800e01cf800c070030e380700e7c0060b8", + "0x61ce018750038073e00301880c39a01c039f00180cc061cb00e01cf800c", + "0xf800c09c030dd00700e7c00602d018758038073e00301780c3aa01c039f0", + "0x1f00c17201c9500c3e0030d200c07001c9480c3e0030d280c01c01c9400c", + "0xdc0070cc030f800c0800305c0070c8030f800c03a0303e807256030f800c", + "0x9d00700e7c00600701a01c978660c84ac951293c80309780c3e00309400c", + "0x70070d2030f800c3b6030dd00700e7c0060120181ac038073e00300b80c", + "0x3680c3e00300680c17201c3580c3e00300e00c07001c9800c3e00300f00c", + "0xf800c0d2030dc0070de030f800c3880305c007266030f800c03a0303e807", + "0xf800c00e0300700700e7c0060071b801c3886f2661b4359303c80303880c", + "0xf200c0fe01cef00c3e00300700c0fa01c1180c3e00300600c07001c1000c", + "0x1100c2e401c1101d038078e21f0018098ef0230407116500704c030f800c", + "0xeb82a0467c006012018460038073e00300380d00e76c0647e050030f800d", + "0x600e00e0f0061f00180a00609a00e69c5b8b80702e4e50330627381782d", + "0x38460187c00600d0182e40391c0187c00601c0180e0038440187c00601e", + "0x61f00180f00602f00e474061f00180e00647f00e120061f0018710060b8", + "0x91f00181302511d0901188e04402f2000384c0187c0060170185100384a", + "0x39f001801c0680709c032411210187c006903019204039030800f8d21a5", + "0x61f001801c6980700e7c0061220184a4039220a0034f800c242030ff807", + "0x38530187c0061a716e2e0280b93940cc189ce05e0b4eb82a046140038b2", + "0xf800c34a0300700724c030f800c0aa030db0070aa030f800c16414c069b4", + "0xe80c0fa01c9380c3e00301f00c17201c2c80c3e0030d200c07001c2b80c", + "0xf200c0be030f800c24c030dc0070ba030f800c0800305c0070b8030f800c", + "0x61be00e01cf800c054030ec80700e7c00600701a01c2f85d0b849c2c857", + "0xeb80c3b001c039f00182e0061c200e01cf800c16e030e000700e7c0061a7", + "0x603301872c038073e0030e500c39201c039f00182e4061c800e01cf800c", + "0xf800c05e030ea80700e7c0061ce018750038073e00301880c39a01c039f0", + "0xf800c34a03007007250030f800c09c030dd00700e7c00602d01875803807", + "0xe80c0fa01c9580c3e00301f00c17201c9500c3e0030d200c07001c9480c", + "0xf200c25e030f800c250030dc0070cc030f800c0800305c0070c8030f800c", + "0x606b00e01cf800c02e0309d00700e7c00600701a01c978660c84ac95129", + "0x1c007260030f800c03c030070070d2030f800c3b6030dd00700e7c006012", + "0x9980c3e00300e80c0fa01c3680c3e00300680c17201c3580c3e00300e00c", + "0x9986d0d64c0f200c0e2030f800c0d2030dc0070de030f800c3880305c007", + "0xf800c3c8032418073c8030f800c3880316e00700e7c0060071b801c3886f", + "0xf800c0240324200703c030f800c00e75c038170187c0060073ae01c0900c", + "0x600c07001cef00c3e00300380c01c01c039f00180700648500e0740e00d", + "0x488073b6030f800c02e03048807050030f800c03a031bd00704c030f800c", + "0x2438070460801100e3e0030151db050098ef01290c01c1500c3e00300f00c", + "0x71f001875c0648900e01cf800c00e0340382d019220eb80c3e00341180c", + "0x612700e7281980d3e00301780c0b201c039f00180c40612900e0c4e702f", + "0x38b8070034f800c39c0302c807172030f800c3940302e00700e7c006033", + "0xe200700e7c00600719c01c5b80c3e00305c00c0b801c039f00180e006127", + "0x68b7172034101c491401c5b80c3e00305b80c38801c5c80c3e00305c80c", + "0x2000c3e0030038d300e01cf800c00e0340383e3486940748b07869c069f0", + "0xf800c0780305c007088030f800c34e0301c007206030f800c080031a9807", + "0x39f001801c0680700f230060072b401c2300c3e00308180c6a801c8e00c", + "0xf800c3480305c007088030f800c34a0301c007090030f800c07c031ab007", + "0x2500c91c01c2500c3e00302300c91a01c2300c3e00302400c6a801c8e00c", + "0x38073e00300380d00e4840648f098030f800d23a0316800723a030f800c", + "0x2800c3e00302700e01a6d00384e0187c00604c019240038073e0030038dc", + "0xf800c0880301c007164030f800c04403007007244030f800c0a0030db007", + "0x298b23880309300c3e00309100c37001c2a80c3e00308e00c17001c2980c", + "0x38073e00300700c0d601c039f001801c6e00700e7c00600701a01c93055", + "0x61f00181100603800e164061f00180880600e00e15c061f0018484061ba", + "0x2e1270b27100605d0187c0060570186e00385c0187c00611c0182e003927", + "0x2f80c3e00301680c37401c039f00180380606b00e01cf800c00e0340385d", + "0xf800c01a0305c007252030f800c0400301c007250030f800c04403007007", + "0x39f001801c6e0072564a8949283880309580c3e00302f80c37001c9500c", + "0x61f001801ceb807024030f800c3c8032488073c8030f800c38803172007", + "0x601c0192140381d038034f800c0240324200703c030f800c00e75c03817", + "0xe80c6f401c1300c3e00300600c07001cef00c3e00300380c01c01c039f0", + "0x243007054030f800c03c030488073b6030f800c02e03048807050030f800c", + "0x64923ae030f800d046032438070460801100e3e0030151db050098ef012", + "0x60310184a40383139c0bc071f001875c0648900e01cf800c00e0340382d", + "0xe500c0b801c039f00180cc0612700e7281980d3e00301780c0b201c039f0", + "0x2e00700e7c00603801849c038b8070034f800c39c0302c807172030f800c", + "0xe2007172030f800c172030e200700e7c00600719c01c5b80c3e00305c00c", + "0xd21a501d24c1e1a701a7c0068b7172034101c491401c5b80c3e00305b80c", + "0x8180c3e00302000c6a601c2000c3e0030038d300e01cf800c00e0340383e", + "0xf800c206031aa007238030f800c0780305c007088030f800c34e0301c007", + "0x2400c3e00301f00c6ac01c039f001801c0680700f250060072b401c2300c", + "0xf800c090031aa007238030f800c3480305c007088030f800c34a0301c007", + "0x8e80c5a001c8e80c3e00302500c91c01c2500c3e00302300c91a01c2300c", + "0x649000e01cf800c00e370038073e00300380d00e48406495098030f800d", + "0x9100c3e00302800c36c01c2800c3e00302700e01a6d00384e0187c00604c", + "0xf800c2380305c0070a6030f800c0880301c007164030f800c04403007007", + "0x39f001801c0680724c154298b23880309300c3e00309100c37001c2a80c", + "0x38570187c0061210186e8038073e00300700c0d601c039f001801c6e007", + "0x61f0018470060b800e49c061f00181100603800e164061f00180880600e", + "0x38073e00300380d00e1742e1270b27100605d0187c0060570186e00385c", + "0x9400c3e00301100c01c01c2f80c3e00301680c37401c039f00180380606b", + "0xf800c0be030dc007254030f800c01a0305c007252030f800c0400301c007", + "0xe01e02e790091c401c08cf800c01a0308c0072564a8949283880309580c", + "0xeb00700e7c0061c4018760038073e00300700c3b201c131de0460801101d", + "0x61cd00e01cf800c02e030ea00700e7c0061e4018754038073e00300900c", + "0x1100c39001c039f0018074061c900e01cf800c038030e580700e7c00601e", + "0x60260186f8038073e0030ef00c38001c039f0018080061c700e01cf800c", + "0x1180c92c01c1680c3e00300600c17001ceb80c3e00300380c07001c039f0", + "0xf800d0540304580705476c1400e3e00301782d3ae03a4b80705e030f800c", + "0x636800e0cc061f00187380615e00e01cf800c00e03403831019260e700c", + "0x38380187c0060280180e0038b90187c0061ca018da4039ca0187c006033", + "0x680716e2e01c00e0182dc061f00182e40636a00e2e0061f001876c060b8", + "0x5c007078030f800c0500301c00734e030f800c062031b580700e7c006007", + "0x38dc00e690d283c01c030d200c3e0030d380c6d401cd280c3e0030ed80c", + "0x607d00e080061f00180300603800e088061f001801c0600e00e01cf800c", + "0xf800c3bc08c10022388b28039de0187c0061e40181fc038230187c00600e", + "0x39f001801c068070500324c8260187c00681d0185c80381d0380780b9c4", + "0x1983139c0bc169d705408cf800c0240308c0073b6030f800c04c0304d007", + "0xeb00700e7c0061d7018760038073e00301500c3b201cd38b71700e05c9ca", + "0x61cd00e01cf800c39c030ea00700e7c00602f018754038073e00301680c", + "0x5c80c39001c039f0018728061c900e01cf800c066030e580700e7c006031", + "0x61a70186f8038073e00305b80c38001c039f00182e0061c200e01cf800c", + "0x680c17201c2200c3e00300f00c07001c8180c3e00300b80c01c01c039f0", + "0x17807090030f800c0700323f80708c030f800c3880305c007238030f800c", + "0x1f1a434a0f0091f001847424046238110819e493401c8e80c3e0030ed80c", + "0x2500c0de01c039f001801c068070980324d84a0187c0068400184cc03840", + "0x70070a0030f800c09c030f400709c030f800c242030f3007242030f800c", + "0x2980c3e0030d200c17201c5900c3e0030d280c07001c9100c3e00301e00c", + "0xf800c0a0030f480724c030f800c07c0305c0070aa030f800c0380303e807", + "0xf800c098030f600700e7c00600701a01c2b9260aa14c591223c80302b80c", + "0xd200c17201c2e00c3e0030d280c07001c9380c3e00301e00c01c01c2c80c", + "0xf4807250030f800c07c0305c0070be030f800c0380303e8070ba030f800c", + "0x3580700e7c00600701a01c949280be1742e1273c80309480c3e00302c80c", + "0x392b0187c0060170180380392a0187c0060280187b0038073e00300900c", + "0x61f00180700607d00e198061f0018034060b900e190061f001807806038", + "0x33064256790061300187c00612a0187a4038690187c0061c40182e00392f", + "0x61e4019270039e40187c0061c4018cb0038073e0030038dc00e4c03492f", + "0x60120192100381e0187c0060073ae01c0b80c3e0030039d700e048061f0", + "0x603800e778061f001801c0600e00e01cf800c0380324280703a070069f0", + "0x39db0187c006017018244038280187c00601d018de8038260187c00600c", + "0x3823040088071f00180a8ed82804c7780948600e0a8061f001807806091", + "0xf800c3ae0324480700e7c00600701a01c1680c93a75c061f001a08c06487", + "0x938073940cc069f00180bc0605900e01cf800c062030948070627381780e", + "0x5c03801a7c0061ce018164038b90187c0061ca018170038073e00301980c", + "0x38073e0030038ce00e2dc061f00182e00605c00e01cf800c07003093807", + "0x5b8b901a080e248a00e2dc061f00182dc061c400e2e4061f00182e4061c4", + "0x61f001801c6980700e7c00600701a01c1f1a434a03a4f03c34e034f800d", + "0x603c0182e0038440187c0061a70180e0039030187c006040018d4c03840", + "0xf800c00e0340380793e0300395a00e118061f001840c0635400e470061f0", + "0x61a40182e0038440187c0061a50180e0038480187c00603e018d5803807", + "0x648e00e128061f00181180648d00e118061f00181200635400e470061f0", + "0x39f001801c068072420325004c0187c00691d018b400391d0187c00604a", + "0x61f00181380700d36801c2700c3e00302600c92001c039f001801c6e007", + "0x60440180e0038b20187c006022018038039220187c0060500186d803850", + "0x591c4018498061f0018488061b800e154061f0018470060b800e14c061f0", + "0x39f00180380606b00e01cf800c00e370038073e00300380d00e4982a853", + "0xf800c0880301c0070b2030f800c044030070070ae030f800c242030dd007", + "0x938593880302e80c3e00302b80c37001c2e00c3e00308e00c17001c9380c", + "0x61f00180b4061ba00e01cf800c01c0303580700e7c00600701a01c2e85c", + "0x600d0182e0039290187c0060200180e0039280187c0060220180380385f", + "0x600d0184600392b2544a4941c40184ac061f001817c061b800e4a8061f0", + "0x1400c3e0030038d300e098ef0230400880e81c03c05cf2012388038119f0", + "0xf800c0180305c00705e030f800c00e0301c0073b6030f800c05003193007", + "0x179c494201c1980c3e0030ed80c2cc01c1880c3e00301180c92c01ce700c", + "0x6807172032519ca0187c00682d0192880382d3ae0a8071f00180cc189ce", + "0x6980700e7c0060b80184a4038b8070034f800c3940325200700e7c006007", + "0x60263bc0e01002203a0700f0173c8048e200e046140038b70187c006007", + "0x1c00734a030f800c078030db007078030f800c16e69c069b400e69c061f0", + "0x2000c3e0030d280c37001c1f00c3e0030eb80c17001cd200c3e00301500c", + "0x1300c37c01c039f0018038061d900e01cf800c00e0340384007c6900700c", + "0x602001871c038073e0030e200c3b001c039f0018778061c000e01cf800c", + "0xf800c038030e580700e7c00601d018724038073e00301100c39001c039f0", + "0x39f0018790061d500e01cf800c02e030ea00700e7c00601e01873403807", + "0x61f00180a80603800e40c061f00182e4061ba00e01cf800c024030eb007", + "0x2311c088038060460187c0061030186e00391c0187c0061d70182e003844", + "0x900c3e0030f200c94a01cf200c3e0030e200c66e01c039f001801c6e007", + "0xe00d3e00300900c90801c0f00c3e0030039d700e05c061f001801ceb807", + "0xf800c0180301c0073bc030f800c00e0300700700e7c00601c0192140381d", + "0xf00c12201ced80c3e00300b80c12201c1400c3e00300e80c6f401c1300c", + "0x1180c90e01c11820044038f800c05476c140263bc04a43007054030f800c", + "0xe702f01c7c0061d7019224038073e00300380d00e0b4064a63ae030f800d", + "0x603301849c039ca066034f800c05e0302c80700e7c0060310184a403831", + "0x612700e2e01c00d3e0030e700c0b201c5c80c3e0030e500c0b801c039f0", + "0x5c80c38801c039f001801c6700716e030f800c1700302e00700e7c006038", + "0x69f001a2dc5c80d0407124500716e030f800c16e030e2007172030f800c", + "0x1a9807080030f800c00e34c038073e00300380d00e0f8d21a501d29c1e1a7", + "0x8e00c3e00301e00c17001c2200c3e0030d380c07001c8180c3e00302000c", + "0x1ab00700e7c00600701a01c03ca801801cad00708c030f800c206031aa007", + "0x8e00c3e0030d200c17001c2200c3e0030d280c07001c2400c3e00301f00c", + "0xf800c09403247007094030f800c08c0324680708c030f800c090031aa007", + "0x38dc00e01cf800c00e034039210192a42600c3e00348e80c5a001c8e80c", + "0xdb0070a0030f800c09c038069b400e138061f00181300649000e01cf800c", + "0x2980c3e00302200c07001c5900c3e00301100c01c01c9100c3e00302800c", + "0x930550a62c8e200c24c030f800c244030dc0070aa030f800c2380305c007", + "0x61ba00e01cf800c01c0303580700e7c0060071b801c039f001801c06807", + "0x39270187c0060440180e0038590187c006022018038038570187c006121", + "0x385d0b849c2c9c4018174061f001815c061b800e170061f0018470060b8", + "0x70070be030f800c05a030dd00700e7c00600e0181ac038073e00300380d", + "0x9500c3e00300680c17001c9480c3e00301000c07001c9400c3e00301100c", + "0x25500700e7c0060071b801c9592a2524a0e200c256030f800c0be030dc007", + "0x61f00180480601c00e048061f0018710064ab00e7100680d3e00300680c", + "0xf00c04001c0e01e01a7c006017018088038170187c0061e4018074039e4", + "0x602f00e088061f0018074064ac00e074061f0018070061de00e01cf800c", + "0x1180c3e00300680c95601c1000c3e00301100e01a738038220187c006022", + "0xf800c046030e2007054030f800c0180301c0073b6030f800c00e03007007", + "0x131de01c7c00602d3ae0a8ed9c495a01c1680c3e00301000c12201ceb80c", + "0x1780c68601c039f001801c0680739c0325702f0187c006828018d0403828", + "0x5c80c3e0030e500c96001ce500c3e00301983101b2bc03833062034f800c", + "0xf800c17203258807170030f800c04c0301c007070030f800c3bc03007007", + "0x39a70187c0061ce0192c8038073e00300380d00e2dc5c03801c0305b80c", + "0x61f001869c064b100e694061f00180980603800e0f0061f00187780600e", + "0xe80c3e00300680c17201c0e00c3e00300380c01c01cd21a5078038061a4", + "0x1101d03871259807040030f800c024031b3007044030f800c388031b2807", + "0xed80c3e00300600c07001c1180c3e00300382300e0780b9e401c7c006020", + "0xf800c03c032020073ae030f800c04603013007054030f800c01c0305c007", + "0x61f00180a0064b500e0a0131de01c7c00602d3ae0a8ed9c496801c1680c", + "0x68070660325b8310187c00682f01822c0382f0187c0061ce0192d8039ce", + "0x1b4807172030f800c394031b4007394030f800c062030af00700e7c006007", + "0x5b80c3e0030ef00c07001c5c00c3e0030f200c01c01c1c00c3e00305c80c", + "0xf800c070031b5007078030f800c04c0305c00734e030f800c02e0305c807", + "0x61f00180cc0636b00e01cf800c00e034039a507869c5b8b8024030d280c", + "0x60170182e4038400187c0061de0180e00383e0187c0061e4018038039a4", + "0x1f012018470061f00186900636a00e110061f0018098060b800e40c061f0", + "0x1b780703a030f800c01a0305c807038030f800c00e0300700723811081840", + "0x60200440740e1c497001c1000c3e00300900c05e01c1100c3e0030e200c", + "0x130073bc030f800c00e08c038230187c00601e0192e40381e02e790071f0", + "0x1500e97676c1402601c7c0068233bc038061c497401cef00c3e0030ef00c", + "0xf800c04c0301c00705e030f800c3b60325e00700e7c00600701a01c169d7", + "0x60072b401c1980c3e00301780c97a01c1880c3e00301400c17001ce700c", + "0xf800c0540301c007394030f800c05a0325f80700e7c00600701a01c03cbe", + "0x1980c98001c1980c3e0030e500c97a01c1880c3e0030eb80c17001ce700c", + "0x64c2170030f800d172030b9007172030f800c07003260807070030f800c", + "0x61f001869c0637100e69c061f00182e00609a00e01cf800c00e034038b7", + "0x61ce0180e0039a40187c0061e4018038039a50187c00603c018dc80383c", + "0x637300e40c061f00180c4060b800e100061f001805c060b900e0f8061f0", + "0x5b80c6e801c039f001801c0680708840c2003e348048060440187c0061a5", + "0x5c807090030f800c39c0301c00708c030f800c3c803007007238030f800c", + "0x2600c3e00308e00c6e601c2500c3e00301880c17001c8e80c3e00300b80c", + "0x6e00700e7c00600756a01c0e00c3e0030039f500e1302511d0901180900c", + "0x39db0187c0060070180380382203a034f800c3880309800700e7c006007", + "0x61f0018038060b800e75c061f0018034060b900e0a8061f001803006038", + "0xe700c05e01ce701201a7c0060120190f00382f0187c0060220184880382d", + "0x38310187c0060310182c8038313c8034f800c3c8031bb80739c030f800c", + "0x682801822c0382804c778118200247c00603139c0bc169d705476c0b889", + "0x175807172030f800c066030af00700e7c00600701a01ce500c9860cc061f0", + "0x39f00180e00612900e01cf800c00e034038b80193101c00c3e00345c80c", + "0x60b7018254038b70187c0061a7018000039a73c8034f800c3c8031bb807", + "0xd200c12a01cd200c3e003003b6d00e01cf800c0780305880734a0f0069f0", + "0x6c007206030f800c34a0306c00700e7c00603e0182c40384007c034f800c", + "0x38073e0030038ce00e470061f00181108180d35801c2200c3e00302000c", + "0xf800c00e03403846019314039f001a470061ae00e470061f00184700602f", + "0xf800c23a030b300723a030f800c09003193007090030f800c00e34c03807", + "0x38073e00302300c37801c039f001801c0680700f318060072b401c2500c", + "0x2500c3e00309080c2cc01c9080c3e00302600c5e201c2600c3e0030038d3", + "0xf800d09c0317580709c030f800c09c030b300709c030f800c09403175007", + "0x60500184a4038073e0030038dc00e01cf800c00e0340392201931c2800c", + "0xf800c3c80301500700e7c00601c018b78038073e00300b80c90a01c039f0", + "0x5900c3e0030039d700e01cf800c03a0303580700e7c0060120182c403807", + "0xf800c0a62c8069ce00e14c061f001814c0602f00e14c061f001801e64007", + "0x2b80c37401c2b80c3e00302a92601a0cc039260187c00600706201c2a80c", + "0x5c8070b8030f800c0460301c00724e030f800c040030070070b2030f800c", + "0x9400c3e00302c80c37001c2f80c3e00301300c17001c2e80c3e0030ef00c", + "0x612900e01cf800c00e370038073e00300380d00e4a02f85d0b849c0900c", + "0x5c80725e030f800c0460301c0070cc030f800c0400300700700e7c006122", + "0x3580c3e00300e80c24401c9800c3e00301300c17001c3480c3e0030ef00c", + "0x3492f0cc05e64807266030f800c3c8030590070da030f800c02403017807", + "0x381e0187c00601e0380356c8070c84ac0f12a252048f800c2661b435930", + "0xf800c0de030d900700e7c00600701a01c3880c9941bc061f001a19006126", + "0x9500c07001ca580c3e00309480c01c01c039f00181d00612900e1d09d00d", + "0x1bd0070fe030f800c274030910070fa030f800c2560305c007298030f800c", + "0x38790ee1d8a19c43e00304007f0fa530a581240201c4000c3e00300b80c", + "0xf800c104030d900700e7c00600701a01caa00c996208061f001a1e406126", + "0x3b00c07001cab00c3e0030a180c01c01c039f00182180612900e2184200d", + "0x91007116030f800c0ee0305c007112030f800c03c0305c807162030f800c", + "0xaa00c37401c039f001801c0680700f330060072b401caf00c3e00304200c", + "0x5c8072cc030f800c0ec0301c00711e030f800c2860300700711a030f800c", + "0xb380c3e00304680c37001c4980c3e00303b80c17001c4880c3e00300f00c", + "0xdd00700e7c006017019214038073e00300380d00e59c498912cc23c0900c", + "0x4a80c3e00309500c07001c4d00c3e00309480c01c01cb900c3e00303880c", + "0xf800c2e4030dc007138030f800c2560305c007084030f800c03c0305c807", + "0x39f00182e00612900e01cf800c00e034039771381084a89a024030bb80c", + "0x38073e0030f200c05401c039f0018070062de00e01cf800c02e03242807", + "0x5880c3e00301180c07001cab00c3e00301000c01c01c039f0018048060b1", + "0xf800c03a03091007116030f800c04c0305c007112030f800c3bc0305c807", + "0x5000c36c01c5000c3e00304f15e01a6d00389e0187c0060071a601caf00c", + "0x5c807148030f800c1620301c007144030f800c2ac030070072f0030f800c", + "0x5e80c3e0030bc00c37001cbd00c3e00304580c17001cbd80c3e00304480c", + "0x16f00700e7c006017019214038073e00300380d00e2f4bd17b1482880900c", + "0x606b00e01cf800c0240305880700e7c0061e40180a8038073e00300e00c", + "0x1c007176030f800c04003007007178030f800c394030dd00700e7c00601d", + "0x5a00c3e00301300c17001c5980c3e0030ef00c17201c5500c3e00301180c", + "0xe00c3e0030039f500e2d45a0b31542ec0900c16a030f800c178030dc007", + "0x382203a034f800c3880309800700e7c0060071b801c039f001801d5a807", + "0x61f0018034060b900e0a8061f00180300603800e76c061f001801c0600e", + "0x60120190f00382f0187c0060220184880382d0187c00600e0182e0039d7", + "0x38313c8034f800c3c8031bb80739c030f800c39c0301780739c048069f0", + "0x118200247c00603139c0bc169d705476c0b88900e0c4061f00180c4060b2", + "0xaf00700e7c00600701a01ce500c99a0cc061f001a0a00608b00e0a0131de", + "0xf800c00e034038b80193381c00c3e00345c80c5d601c5c80c3e00301980c", + "0x39f0018070062de00e01cf800c02e0324280700e7c0060380184a403807", + "0x5b80c3e00301000c01c01c039f0018048060b100e01cf800c3c803015007", + "0xf800c04c0305c007078030f800c3bc0305c80734e030f800c0460301c007", + "0x39f001801c0680700f33c060072b401cd200c3e00300e80c24401cd280c", + "0x61f001808c0603800e470061f00180800600e00e01cf800c17003094807", + "0x601d0184880391d0187c0060260182e0038480187c0061de0182e403846", + "0xbcd000e484061f0018790060b200e130061f00180480602f00e128061f0", + "0xf800c03c07006ad900e1108181e0800f8091f00184842604a23a1202311c", + "0x61b200e01cf800c00e034038500193442700c3e00342200c24c01c0f00c", + "0x38590187c00603e018038038073e00305900c25201c5912201a7c00604e", + "0x61f00184880612200e170061f001840c060b800e49c061f001810006038", + "0x2a8533887c00605f0ba170938590248040385f0187c006017018de80385d", + "0x61b200e01cf800c00e034039290193489400c3e00342b80c24c01c2b926", + "0x38b70187c006053018038038073e00309580c25201c9592a01a7c006128", + "0x61f0018498060b800e0f0061f0018078060b900e69c061f001815406038", + "0x6064348034da0070c8030f800c00e34c039a40187c00612a018488039a5", + "0x603800e1a4061f00182dc0600e00e4bc061f0018198061b600e198061f0", + "0x386d0187c0061a50182e00386b0187c00603c0182e4039300187c0061a7", + "0xdd00700e7c00600701a01c9986d0d64c0348120184cc061f00184bc061b8", + "0x9d00c3e00302a80c07001c3880c3e00302980c01c01c3780c3e00309480c", + "0xf800c0de030dc007286030f800c24c0305c0070e8030f800c03c0305c807", + "0x39f001805c0648500e01cf800c00e034038762861d09d0710240303b00c", + "0xf800c0800301c0070f2030f800c07c030070070ee030f800c0a0030dd007", + "0x3b80c37001c3e80c3e00308180c17001ca600c3e00300f00c17201ca580c", + "0x601d0181ac038073e00300380d00e1fc3e94c2961e40900c0fe030f800c", + "0xf800c3c80301500700e7c00601c018b78038073e00300b80c90a01c039f0", + "0xf800c04003007007100030f800c394030dd00700e7c0060120182c403807", + "0x1300c17001c4200c3e0030ef00c17201caa00c3e00301180c07001c4100c", + "0x38dc00e558430842a82080900c2ac030f800c100030dc00710c030f800c", + "0x68f600e088061f0018038060b800e074061f00180300603800e01cf800c", + "0x380d00e08c064d3040030f800d038030798070380780b80e3e00301101d", + "0x81007050030f800c0400308200704c778069f00187900610200e01cf800c", + "0xeb80c3e00301500c22801c039f001876c0602a00e0a8ed80d3e00301400c", + "0xf800c05e0300000705e030f800c04c0308a00705a030f800c3ae03000007", + "0xe700c12a01c039f00180c4060b100e0cc1880d3e00301680c12a01ce700c", + "0x6c007070030f800c0660306c00700e7c0061ca0182c4038b9394034f800c", + "0x61f00182dc0602f00e2dc061f00182e01c00d35801c5c00c3e00305c80c", + "0x6007018038038073e00300380d00e69c064d400e7c0068b70186b8038b7", + "0x60b800e470061f0018034060b900e110061f001805c0603800e40c061f0", + "0x391d0187c0060120180bc038480187c0061c4018488038460187c00601e", + "0xd283c0247c00604a23a1202311c08840c0bcd500e128061f0018778060b2", + "0xd900700e7c00600701a01c9080c9ac130061f001a1000612600e1001f1a4", + "0x39220187c0060071a601c039f00181400612900e1402700d3e00302600c", + "0xf800c078030070070a6030f800c164030db007164030f800c244138069b4", + "0x1f00c17001c2b80c3e0030d200c17201c9300c3e0030d280c07001c2a80c", + "0x380d00e49c2c85724c1540900c24e030f800c0a6030dc0070b2030f800c", + "0x603800e174061f00180f00600e00e170061f0018484061ba00e01cf800c", + "0x39290187c00603e0182e0039280187c0061a40182e40385f0187c0061a5", + "0xde00700e7c00600701a01c9512925017c2e8120184a8061f0018170061b8", + "0x606b00e01cf800c0240305880700e7c0061de0180a8038073e0030d380c", + "0x3200c05e01c3200c3e003003cd700e4ac061f001801ceb80700e7c0061c4", + "0x1980725e030f800c00e0c4038660187c006064256034e70070c8030f800c", + "0x61f001801c0600e00e4c0061f00181a4061ba00e1a4061f00181989780d", + "0x601e0182e0039330187c00600d0182e40386d0187c0060170180e00386b", + "0x600701a01c3886f2661b4358120181c4061f00184c0061b800e1bc061f0", + "0xf800c3880303580700e7c0060120182c4038073e0030f200c05401c039f0", + "0x60170180e0038740187c0060070180380393a0187c0060230186e803807", + "0x61b800e1dc061f0018078060b800e1d8061f0018034060b900e50c061f0", + "0x3cd800e01cf800c01a030ec8070f21dc3b1430e8048060790187c00613a", + "0x602600e048061f001801c11807388030f800c01c0325c80701c030f800c", + "0xf800d388048060073892e8039c40187c0061c4019364038120187c006012", + "0x61f0018078064bc00e01cf800c00e0340382203a070074da03c05cf200e", + "0x60200192f4039de0187c0060170182e0038230187c0061e40180e003820", + "0x61f0018088064bf00e01cf800c00e034038079b60300395a00e098061f0", + "0x60280192f4039de0187c00601d0182e0038230187c00601c0180e003828", + "0x617200e76c061f00180a8064c100e0a8061f0018098064c000e098061f0", + "0x1780c3e0030eb80c13401c039f001801c0680705a0326e1d70187c0069db", + "0xf800c0460301c007062030f800c39c031b900739c030f800c05e031b8807", + "0xe503301c0305c80c3e00301880c6e601ce500c3e0030ef00c17001c1980c", + "0x61f001808c0603800e0e0061f00180b40637400e01cf800c00e034038b9", + "0xd38b7170038061a70187c006038018dcc038b70187c0061de0182e0038b8", + "0xe200c3e00300700c97201c0700c3e003003cdd00e01cf800c01a030ec007", + "0x61f0018710064d900e048061f00180480602600e048061f001801c11807", + "0x380d00e0880e81c01d3780f0173c8038f800d388048060073892e8039c4", + "0x60b800e08c061f00187900603800e080061f0018078064bc00e01cf800c", + "0x380d00e01e6f80c00e568038260187c0060200192f4039de0187c006017", + "0x60b800e08c061f00180700603800e0a0061f0018088064bf00e01cf800c", + "0x382a0187c006026019300038260187c0060280192f4039de0187c00601d", + "0x600701a01c1680c9c075c061f001a76c0617200e76c061f00180a8064c1", + "0xe700c6e401ce700c3e00301780c6e201c1780c3e0030eb80c13401c039f0", + "0x1b9807394030f800c3bc0305c007066030f800c0460301c007062030f800c", + "0x602d018dd0038073e00300380d00e2e4e503301c0305c80c3e00301880c", + "0x637300e2dc061f0018778060b800e2e0061f001808c0603800e0e0061f0", + "0xf800c00f384038073e00300700c3ac01cd38b7170038061a70187c006038", + "0x600c0180e00381d0187c006007018038038120187c00600704601ce200c", + "0x640400e08c061f00180480602600e080061f0018034060b800e088061f0", + "0x2710070380780b9e43887c0061de0460801101d024800039de0187c0061c4", + "0x61f0018098064e400e01cf800c00e0340382801938c1300c3e00340e00c", + "0x682a0182f00382a0187c0061d7019398039d70187c0061db019394039db", + "0x1c500739c030f800c05a0305d80700e7c00600701a01c1780c9ce0b4061f0", + "0xe500c3e0030f200c01c01c1980c3e00301880c71601c1880c3e0030e700c", + "0xf800c066031c6007070030f800c03c0305c007172030f800c02e0301c007", + "0x5b80c3e00301780c71a01c039f001801c068071700e05c9ca3880305c00c", + "0xf800c03c0305c007078030f800c02e0301c00734e030f800c3c803007007", + "0x39f001801c068073486941e1a7388030d200c3e00305b80c71801cd280c", + "0xf800c02e0301c007080030f800c3c80300700707c030f800c050031c6807", + "0x818403880308e00c3e00301f00c71801c2200c3e00300f00c17001c8180c", + "0x61f001801c11807388030f800c00f3a0038073e00300700c3aa01c8e044", + "0x600d0182e0038220187c00600c0180e00381d0187c00600701803803812", + "0x94e900e778061f00187100640400e08c061f00180480602600e080061f0", + "0x64eb04c030f800d038032750070380780b9e43887c0061de0460801101d", + "0x61f001876c064ed00e76c061f0018098064ec00e01cf800c00e03403828", + "0x680705e0327782d0187c00682a0182e80382a0187c0061d70193b8039d7", + "0x1c8807062030f800c39c031c800739c030f800c05a030ba80700e7c006007", + "0x5c80c3e00300b80c07001ce500c3e0030f200c01c01c1980c3e00301880c", + "0x5c038172728e200c170030f800c066031c9007070030f800c03c0305c007", + "0xd380c3e0030f200c01c01c5b80c3e00301780c72601c039f001801c06807", + "0xf800c16e031c900734a030f800c03c0305c007078030f800c02e0301c007", + "0x1f00c3e00301400c72601c039f001801c068073486941e1a7388030d200c", + "0xf800c03c0305c007206030f800c02e0301c007080030f800c3c803007007", + "0xf800c00e03007007238110818403880308e00c3e00301f00c72401c2200c", + "0x900c16401c1100c3e0030e200c73001c0e80c3e00300680c17201c0e00c", + "0xf800c00e08c0381e02e790071f00180801101d03871278007040030f800c", + "0x700c17001ceb80c3e00300600c07001c1500c3e0030f200c01c01c1180c", + "0x27480739c030f800c03c0320200705e030f800c0460301300705a030f800c", + "0x2788310187c0069db0193a8039db050098ef1c43e0030e702f05a75c15012", + "0xf800c39403276807394030f800c0620327600700e7c00600701a01c1980c", + "0x38b70193c85c00c3e00345c80c17401c5c80c3e00301c00c9dc01c1c00c", + "0x383c0187c0061a7018e40039a70187c0060b80185d4038073e00300380d", + "0x61f00180980603800e690061f00187780600e00e694061f00180f006391", + "0x61a5018e48039030187c0060280182e0038400187c0060170182e40383e", + "0xf800c16e031c980700e7c00600701a01c221030800f8d2012018110061f0", + "0xb80c17201c2400c3e00301300c07001c2300c3e0030ef00c01c01c8e00c", + "0x900c098030f800c238031c9007094030f800c0500305c00723a030f800c", + "0x600e00e484061f00180cc0639300e01cf800c00e0340384c09447424046", + "0x39220187c0060170182e4038500187c0060260180e00384e0187c0061de", + "0x298b22441402701201814c061f00184840639200e2c8061f00180a0060b8", + "0xf800c388031cd80703a030f800c01a0305c807038030f800c00e03007007", + "0xb9e401c7c0060200440740e1c49e601c1000c3e00300900c73801c1100c", + "0xf800c0180301c007054030f800c3c803007007046030f800c00e08c0381e", + "0xf00c80801c1780c3e00301180c04c01c1680c3e00300700c17001ceb80c", + "0x64ea00e76c140263bc710f800c39c0bc169d705404a7480739c030f800c", + "0xe500c3e00301880c9d801c039f001801c068070660327a0310187c0069db", + "0xf800d1720305d007172030f800c07003277007070030f800c39403276807", + "0x639000e69c061f00182e00617500e01cf800c00e034038b70193d45c00c", + "0x39a40187c0061de018038039a50187c00603c018e440383c0187c0061a7", + "0x61f00180a0060b800e100061f001805c060b900e0f8061f001809806038", + "0x39f001801c0680708840c2003e348048060440187c0061a5018e4803903", + "0xf800c04c0301c00708c030f800c3bc03007007238030f800c16e031c9807", + "0x8e00c72401c2500c3e00301400c17001c8e80c3e00300b80c17201c2400c", + "0x6033018e4c038073e00300380d00e1302511d0901180900c098030f800c", + "0x60b900e140061f00180980603800e138061f00187780600e00e484061f0", + "0x60530187c006121018e48038b20187c0060280182e0039220187c006017", + "0x38dc00e01cf800c00ead40381c0187c0060073ea01c298b224414027012", + "0x4a80703a030f800c04403000007044048069f00180480637700e01cf800c", + "0x39de0187c0060076da01c039f0018080060b100e08c1000d3e00300e80c", + "0x61f001808c060d800e01cf800c04c03058807050098069f001877806095", + "0xeb80c05e01ceb80c3e0030151db01a6b00382a0187c006028018360039db", + "0x6980700e7c00600701a01c1680c9ec01cf800d3ae030d70073ae030f800c", + "0x38310187c0061ce018598039ce0187c00602f018c980382f0187c006007", + "0x60071a601c039f00180b4061bc00e01cf800c00e034038079ee0300395a", + "0x62ea00e0c4061f00187280616600e728061f00180cc062f100e0cc061f0", + "0x27c0380187c0068b9018bac038b90187c0060b9018598038b90187c006031", + "0x39f001805c061db00e01cf800c0700309480700e7c00600701a01c5c00c", + "0x38073e00300900c05401c039f0018070062de00e01cf800c3c803015007", + "0x1780734e030f800c00f3e4038b70187c0060073ae01c039f00187100606b", + "0xd280c3e00300383100e0f0061f001869c5b80d39c01cd380c3e0030d380c", + "0x60070180380383e0187c0061a40186e8039a40187c00603c34a03419807", + "0x60b800e110061f0018034060b900e40c061f00180300603800e100061f0", + "0x680708c47022103080048060460187c00603e0186e00391c0187c00600e", + "0x723a790069f00187900637700e01cf800c1700309480700e7c006007", + "0x39f0018128060b100e1302500d3e00302400c12a01c2400c3e00308e80c", + "0xf800c09c030588070a0138069f00184840609500e484061f001801db6807", + "0x5912201a6b0038b20187c006050018360039220187c00604c01836003807", + "0x2a80c9f401cf800d0a6030d70070a6030f800c0a6030178070a6030f800c", + "0x38570187c006126018c98039260187c0060071a601c039f001801c06807", + "0x61bc00e01cf800c00e034038079f60300395a00e164061f001815c06166", + "0x616600e170061f001849c062f100e49c061f001801c6980700e7c006055", + "0x385d0187c00605d0185980385d0187c006059018ba8038590187c00605c", + "0xf800c0be0309480700e7c00600701a01c9400c9f817c061f001a174062eb", + "0x39f0018070062de00e01cf800c3c80301500700e7c00601701876c03807", + "0x39290187c0060073ae01c039f00187100606b00e01cf800c02403015007", + "0x61f00184a89480d39c01c9500c3e00309500c05e01c9500c3e003003cfd", + "0x60660186e8038660187c00612b0c8034198070c8030f800c00e0c40392b", + "0x60b900e4c0061f00180300603800e1a4061f001801c0600e00e4bc061f0", + "0x61330187c00612f0186e00386d0187c00600e0182e00386b0187c00600d", + "0x611800e01cf800c2500309480700e7c00600701a01c9986d0d64c034812", + "0x6143019054038800fe1f4a614b0f21dc3b1430e84e83886f0467c0061c4", + "0x5c8072bc030f800c0180301c007116030f800c00e030070072a8208069f0", + "0xb300c3e0030aa00c73001c4780c3e00300700c17001c4680c3e00300680c", + "0xaf08b3c8e64038910187c0060910182c803891024034f800c024031bb807", + "0x64fe126030f800d1120305d0071122c4ab086108048f800c1225984788d", + "0x61f00182100600e00e5c8061f001824c0617500e01cf800c00e03403967", + "0xbb80c0a601cbb81701a7c006017018e500389c0187c00617201814c03842", + "0x61f001a254060ba00e2544d00d3e0030bb89c084039d38072ee030f800c", + "0x4d00c01c01cbc00c3e00304f00c2ea01c039f001801c068071400327f89e", + "0x5c007154030f800c2ac0305c807176030f800c10c0301c007178030f800c", + "0x900d3e00300900c6ee01c5a00c3e00304100c73001c5980c3e00305880c", + "0x5d8bc02f060038b60187c00617801814c038b50187c0060b50182c8038b5", + "0x2800ba0187c0068bd019064038bd2f45ec520a20247c0060b616a2d0598aa", + "0x60bf0184a4038bf2e2034f800c1740320e80700e7c00600701a01cba80c", + "0x603800e32c061f00182880600e00e304c200d3e0030b880c82a01c039f0", + "0x38ce0187c00617a0182e0039600187c00617b0182e4039620187c0060a4", + "0xf800c19e0305900719e790069f00187900637700e554061f001830406398", + "0x60ba00e5846416818661c091f001833caa8ce2c0588659e473201c6780c", + "0xad00c3e0030ae00c2ea01c039f001801c068071a20328095c0187c006961", + "0xf800c02e031ca0071ac030f800c2b4030298072a4030f800c30e03007007", + "0xad8d301a7c0060d81ac548073a600e360061f00183600605300e3600b80d", + "0x61510185d4038073e00300380d00e53c065022a2030f800d2b60305d007", + "0x60b900e4e4061f001830c0603800e4ec061f001834c0600e00e54c061f0", + "0x38e30187c006184018e60039360187c0060c80182e0038e10187c006168", + "0xf800c2a603029807262030f800c26203059007262790069f001879006377", + "0x16c8072885140f0dc292048f800c1ca4c4719361c24e49d81783001c7280c", + "0x600701a01c7380ca064b8061f001a5100641900e078061f00180780e00d", + "0x900e83c01c039f00183a40612900e3a49600d3e00309700c83a01c039f0", + "0x4007f0fa530a58790ee1d8960742741c4378230a001c9280c3e00300b9e4", + "0x5c00723c030f800c1b80301c007240030f800c292030070071d6030f800c", + "0x8c00c3e00309280c83e01c7980c3e00307580c24401c7b00c3e0030a280c", + "0x61f001a3c00612600e3c077123248710f800c2303cc7b11e24004a10007", + "0x612900e4108400d3e00308b00c36401c039f001801c0680722603282116", + "0xdb007228030f800c204420069b400e408061f001801c6980700e7c006104", + "0xd700c3e00309180c07001cd600c3e00309200c01c01c0000c3e00308a00c", + "0xf800c000030dc007364030f800c1dc0305c007360030f800c03c0305c807", + "0x61f001844c061ba00e01cf800c00e034039b43646c0d71ac024030da00c", + "0x601e0182e4039ba0187c0061230180e0039b80187c006124018038039b6", + "0xdc012018700061f00186d8061b800e6f8061f00183b8060b800e6f0061f0", + "0x60800186f8038073e00303780c3b201c039f001801c068073806f8de1ba", + "0xf800c298030e380700e7c00607d018708038073e00303f80c38001c039f0", + "0x39f00181dc061cb00e01cf800c0f2030e480700e7c00614b01872003807", + "0x38073e00303a00c3aa01c039f00180480602a00e01cf800c0ec030e6807", + "0x1500700e7c00601701876c038073e00303880c3b001c039f00184e8061d6", + "0x39c70187c006149018038039c20187c0060e70186e8038073e0030f200c", + "0x61f0018514060b800e724061f0018078060b900e720061f001837006038", + "0x39f001801c0680739a72ce49c838e048061cd0187c0061c20186e0039cb", + "0x38073e00309d00c3ac01c039f00181bc061d900e01cf800c02e030ed807", + "0xe000700e7c0060800186f8038073e0030f200c05401c039f00181c4061d8", + "0x61c800e01cf800c298030e380700e7c00607d018708038073e00303f80c", + "0x3b00c39a01c039f00181dc061cb00e01cf800c0f2030e480700e7c00614b", + "0x601c018b78038073e00303a00c3aa01c039f00180480602a00e01cf800c", + "0x60d3018038039d40187c00614f0186e8038073e0030c200c3a801c039f0", + "0x60b800e760061f00185a0060b900e758061f001830c0603800e754061f0", + "0x68073b4764ec1d63aa048061da0187c0061d40186e0039d90187c0060c8", + "0x9d00c3ac01c039f00181bc061d900e01cf800c02e030ed80700e7c006007", + "0x60800186f8038073e0030f200c05401c039f00181c4061d800e01cf800c", + "0xf800c298030e380700e7c00607d018708038073e00303f80c38001c039f0", + "0x39f00181dc061cb00e01cf800c0f2030e480700e7c00614b01872003807", + "0x38073e00303a00c3aa01c039f00180480602a00e01cf800c0ec030e6807", + "0x39dc0187c0060d10186e8038073e0030c200c3a801c039f0018070062de", + "0x61f00185a0060b900e780061f001830c0603800e774061f001861c0600e", + "0xf09e03ba048061e80187c0061dc0186e0039e60187c0060c80182e0039e1", + "0x39f00181bc061d900e01cf800c02e030ed80700e7c00600701a01cf41e6", + "0x38073e0030f200c05401c039f00181c4061d800e01cf800c274030eb007", + "0xe380700e7c00607d018708038073e00303f80c38001c039f0018200061be", + "0x61cb00e01cf800c0f2030e480700e7c00614b018720038073e0030a600c", + "0x3a00c3aa01c039f00180480602a00e01cf800c0ec030e680700e7c006077", + "0x5100c01c01cf480c3e0030ba80c37401c039f0018070062de00e01cf800c", + "0x5c00756a030f800c2f60305c8073da030f800c1480301c0073d8030f800c", + "0x3ab756cad4f69ec0240315b80c3e0030f480c37001d5b00c3e0030bd00c", + "0x61d600e01cf800c0de030ec80700e7c00601701876c038073e00300380d", + "0x4000c37c01c039f00187900602a00e01cf800c0e2030ec00700e7c00613a", + "0x614c01871c038073e00303e80c38401c039f00181fc061c000e01cf800c", + "0xf800c0ee030e580700e7c006079018724038073e0030a580c39001c039f0", + "0x39f00181d0061d500e01cf800c0240301500700e7c00607601873403807", + "0x15c00c3e00305000c37401c039f0018208061d400e01cf800c0380316f007", + "0xf800c2ac0305c807574030f800c10c0301c007572030f800c13403007007", + "0x15d2b90240315e80c3e00315c00c37001d5e00c3e00305880c17001d5d80c", + "0xf800c0de030ec80700e7c00601701876c038073e00300380d00eaf55e2bb", + "0x39f00187900602a00e01cf800c0e2030ec00700e7c00613a01875803807", + "0x38073e00303e80c38401c039f00181fc061c000e01cf800c100030df007", + "0xe580700e7c006079018724038073e0030a580c39001c039f0018530061c7", + "0x61d500e01cf800c0240301500700e7c006076018734038073e00303b80c", + "0xb380c37401c039f0018208061d400e01cf800c0380316f00700e7c006074", + "0x5c807580030f800c10c0301c00757e030f800c1080300700757c030f800c", + "0x16180c3e00315f00c37001d6100c3e00305880c17001d6080c3e0030ab00c", + "0xe01e0467c0061c4018460038073e0030038dc00eb0d612c1580afc0900c", + "0x1bb80739c0bc069f001808c063a500e0b4eb82a3b60a0131de0460801101d", + "0x6033062035cd007066790069f00187900637700e0c40900d3e00300900c", + "0x60b900e694061f00180300603800e0f0061f001801c0600e00e728061f0", + "0x38400187c0061ce018e6c0383e0187c00600e0182e0039a40187c00600d", + "0x5c038172048f800c2061001f1a434a0f0f239d00e40c061f00187280639c", + "0x617500e01cf800c00e0340391c0194142200c3e0034d380c17401cd38b7", + "0x384a0187c006007a0c01c8e84801a7c0060460185c4038460187c006044", + "0x69f00184840617100e484061f00181302500d24801c2600c3e003003d06", + "0x9100c3b601c5912201a7c00611d0185c4038073e00302700c3b601c2804e", + "0x605300e01cf800c0a6030ed8070aa14c069f00181400617100e01cf800c", + "0x9300c3e00302c85701a7f8038590187c00605501814c038570187c0060b2", + "0x61270184a4038073e00300380d00e1700650724e030f800d24c03175807", + "0xb80c0a601c9480c3e00302400c0a601c9400c3e00305c80c01c01c039f0", + "0x61f001a17c060ba00e17c2e80d3e003095129250039d3807254030f800c", + "0xf0230a001c3300c3e00309580c2ea01c039f001801c068070c80328412b", + "0xf800c0ba0300700725e030f800c05a75c151db050098ef02f0400880e81c", + "0x5b80c17001c9d00c3e00305c00c17201c3880c3e00301c00c07001c3780c", + "0x590070ec030f800c02403059007286030f800c25e030910070e8030f800c", + "0xa18742741c43781e74801c3c80c3e00303300c0a601c3b80c3e0030f200c", + "0xa600ca1252c061f001a4cc0612600e4cc3686b2601a4091f00181e43b876", + "0x39f00181fc0612900e1fc3e80d3e0030a580c36401c039f001801c06807", + "0xf800c0d60305c807104030f800c2600301c007100030f800c0d203007007", + "0x60072b401c4300c3e00303e80c24401c4200c3e00303680c17001caa00c", + "0xf800c0d2030070072ac030f800c298030dd00700e7c00600701a01c03d0a", + "0x3680c17001c4580c3e00303580c17201c4480c3e00309800c07001c5880c", + "0x380d00e234af08b1122c40900c11a030f800c2ac030dc0072bc030f800c", + "0x60120180a8038073e0030f200c05401c039f0018078061d900e01cf800c", + "0xf800c054030e100700e7c0061d7018700038073e00301680c37c01c039f0", + "0x39f0018098061c900e01cf800c050030e400700e7c0061db01871c03807", + "0x38073e00301000c3a801c039f00180bc061cd00e01cf800c3bc030e5807", + "0xdd00700e7c00601c018760038073e00300e80c3ac01c039f0018088061d5", + "0x4880c3e00301c00c07001cb300c3e00302e80c01c01c4780c3e00303200c", + "0xf800c11e030dc0072ce030f800c16e0305c007126030f800c1700305c807", + "0x39f00181700612900e01cf800c00e034039722ce24c48966024030b900c", + "0x38073e00300b80c3b601c039f00180480602a00e01cf800c3c803015007", + "0x169d705476c140263bc0bc1002203a0700f0230a001c039f0018120061db", + "0x5c807104030f800c0700301c007100030f800c17203007007134030f800c", + "0x4300c3e00304d00c24401c4200c3e00305b80c17001caa00c3e00305c00c", + "0xf800c084030db007084030f800c12a218069b400e254061f001801c69807", + "0xaa00c17201c4f00c3e00304100c07001cbb80c3e00304000c01c01c4e00c", + "0x900c144030f800c138030dc0072f0030f800c1080305c007140030f800c", + "0xf200c05401c039f0018078061d900e01cf800c00e034038a22f02804f177", + "0x602d0186f8038073e00300e00c3b001c039f00180480602a00e01cf800c", + "0xf800c3b6030e380700e7c00602a018708038073e0030eb80c38001c039f0", + "0x39f0018778061cb00e01cf800c04c030e480700e7c00602801872003807", + "0x38073e00301100c3aa01c039f0018080061d400e01cf800c05e030e6807", + "0x38a40187c00611c0186e8038073e00300b80c3b601c039f0018074061d6", + "0x61f00182e0060b900e5e8061f00180e00603800e5ec061f00182e40600e", + "0x5e97a2f6048060bb0187c0060a40186e0038bc0187c0060b70182e0038bd", + "0x38073e0030038dc00e01cf800c00ead40381c0187c0060073ea01c5d8bc", + "0xf800c03a0304a80703a030f800c04403000007044048069f001804806377", + "0x61de018254039de0187c0060076da01c039f0018080060b100e08c1000d", + "0x60d800e76c061f001808c060d800e01cf800c04c03058807050098069f0", + "0xeb80c3e0030eb80c05e01ceb80c3e0030151db01a6b00382a0187c006028", + "0x61f001801c6980700e7c00600701a01c1680ca1601cf800d3ae030d7007", + "0x28600c00e568038310187c0061ce018598039ce0187c00602f018c980382f", + "0x38330187c0060071a601c039f00180b4061bc00e01cf800c00e03403807", + "0x61f00180c4062ea00e0c4061f00187280616600e728061f00180cc062f1", + "0x6807170032868380187c0068b9018bac038b90187c0060b9018598038b9", + "0xf200c05401c039f001805c061db00e01cf800c0700309480700e7c006007", + "0x61c40181ac038073e00300900c05401c039f0018070062de00e01cf800c", + "0xf800c34e0301780734e030f800c00f438038b70187c0060073ae01c039f0", + "0xd280d06601cd280c3e00300383100e0f0061f001869c5b80d39c01cd380c", + "0x38400187c0060070180380383e0187c0061a40186e8039a40187c00603c", + "0x61f0018038060b800e110061f0018034060b900e40c061f001803006038", + "0x39f001801c0680708c47022103080048060460187c00603e0186e00391c", + "0xf800c23a0300000723a790069f00187900637700e01cf800c17003094807", + "0x60076da01c039f0018128060b100e1302500d3e00302400c12a01c2400c", + "0x60d800e01cf800c09c030588070a0138069f00184840609500e484061f0", + "0x2980c3e00305912201a6b0038b20187c006050018360039220187c00604c", + "0x600701a01c2a80ca1e01cf800d0a6030d70070a6030f800c0a603017807", + "0x6057018598038570187c006126018c98039260187c0060071a601c039f0", + "0x39f0018154061bc00e01cf800c00e03403807a200300395a00e164061f0", + "0x61f00181700616600e170061f001849c062f100e49c061f001801c69807", + "0x685d018bac0385d0187c00605d0185980385d0187c006059018ba803859", + "0x61db00e01cf800c0be0309480700e7c00600701a01c9400ca2217c061f0", + "0x900c05401c039f0018070062de00e01cf800c3c80301500700e7c006017", + "0xf800c00f448039290187c0060073ae01c039f00187100606b00e01cf800c", + "0x383100e4ac061f00184a89480d39c01c9500c3e00309500c05e01c9500c", + "0x392f0187c0060660186e8038660187c00612b0c8034198070c8030f800c", + "0x61f0018034060b900e4c0061f00180300603800e1a4061f001801c0600e", + "0x359300d2048061330187c00612f0186e00386d0187c00600e0182e00386b", + "0x119f00187100611800e01cf800c2500309480700e7c00600701a01c9986d", + "0x4101201a7c006012018ddc038800fe1f4a614b0f21dc3b1430e84e83886f", + "0x380c01c01c4200c3e0030aa08201ae68039543c8034f800c3c8031bb807", + "0x5c00711a030f800c01a0305c8072bc030f800c0180301c007116030f800c", + "0x4880c3e00304200c73801cb300c3e00303b00c73601c4780c3e00300700c", + "0xaf08b02f44c038930187c00609301814c0389302e034f800c02e031ca007", + "0xf00c3e00300f01c01ab6403889162078ab0860247c0060931225984788d", + "0x6167019458038073e00300380d00e5c8065152ce030f800d1120328a007", + "0x38420187c0060173c80480751700e01cf800c12a0309480712a268069f0", + "0x600e00e270061f00182003f87d29852c3c87713450c3a13a0e21bc11850", + "0x397b0187c0060b10182e0038a40187c0061560180e0038a20187c006086", + "0xbd17b1482880951900e2f4061f00181080651800e5e8061f001827006122", + "0x380d00e2ec0651a178030f800d2f0030930072f02804f1773887c0060bd", + "0x38d300e01cf800c166030948071662a8069f00182f0061b200e01cf800c", + "0x38b60187c0060b50186d8038b50187c0060b4154034da007168030f800c", + "0x61f0018078060b900e5d4061f00182780603800e2e8061f00185dc0600e", + "0xb8975174048061840187c0060b60186e0038bf0187c0060a00182e003971", + "0xf800c2ee03007007182030f800c176030dd00700e7c00600701a01cc20bf", + "0x5000c17001cb400c3e00300f00c17201c6180c3e00304f00c07001cc380c", + "0x380d00e5846416818661c0900c2c2030f800c182030dc007190030f800c", + "0x607f018700038073e00304000c37c01c039f00181bc061d900e01cf800c", + "0xf800c296030e400700e7c00614c01871c038073e00303e80c38401c039f0", + "0x39f00180480602a00e01cf800c0ee030e580700e7c00607901872403807", + "0x38073e00309d00c3ac01c039f00181d0061d500e01cf800c286030ea007", + "0xdd00700e7c0061e40180a8038073e00300b80c3b601c039f00181c4061d8", + "0xb000c3e0030ab00c07001cb100c3e00304300c01c01c6580c3e0030b900c", + "0xf800c196030dc0072aa030f800c1620305c00719c030f800c03c0305c807", + "0x600c01814c038120187c006007018038038cf2aa338b01620240306780c", + "0xe200e01a7c0060173c80480751b00e05c061f00180340605300e790061f0", + "0x601e018e40038073e00300380d00e0700651c03c030f800d3880300f007", + "0x639200e080061f00180380600e00e088061f00180740639100e074061f0", + "0x39f00180700612900e01cf800c00e03403823040034060230187c006022", + "0x1300c3e00301300c05e01c1300c3e003003d1d00e778061f001801ceb807", + "0x60283b6034198073b6030f800c00e0c4038280187c0060263bc034e7007", + "0x639200e0b4061f00180380600e00e75c061f00180a80639300e0a8061f0", + "0x600c01814c038120187c0060070180380382f05a0340602f0187c0061d7", + "0xe200e01a7c0060173c80480751e00e05c061f00180340605300e790061f0", + "0x601e018e40038073e00300380d00e0700651f03c030f800d3880300f007", + "0x639200e080061f00180380600e00e088061f00180740639100e074061f0", + "0x39f00180700612900e01cf800c00e03403823040034060230187c006022", + "0x1300c3e00301300c05e01c1300c3e003003d2000e778061f001801ceb807", + "0x60283b6034198073b6030f800c00e0c4038280187c0060263bc034e7007", + "0x639200e0b4061f00180380600e00e75c061f00180a80639300e0a8061f0", + "0x1101d0380780b9e40467c00600d0184600382f05a0340602f0187c0061d7", + "0x61f0018030060b800e738061f001801c0603800e0a8ed82804c77811820", + "0x189ce389484039ca0187c00600e0180bc038330187c0061e4018e1003831", + "0x380d00e0e006523172030f800d05e0329100705e0b4eb80e3e0030e5033", + "0x638600e694061f00180b4060b800e0f0061f001875c0603800e01cf800c", + "0xf800c07c690d283c3894900383e0187c0061c40180bc039a40187c006017", + "0x38073e00300380d00e40c06526080030f800d34e0329280734e2dc5c00e", + "0x61f00180780638800e474061f00182dc060b800e120061f00182e006038", + "0x2311c088038f800c0981288e8483887f40384c0187c0060120185140384a", + "0x60b90194a4038073e00300380d00e13806528242030f800d08c03293807", + "0x948070a62c8069f00181000652a00e01cf800c24403094807244140069f0", + "0x38073e00309300c25201c9305501a7c0061210194ac038073e00302980c", + "0x151db050098ef0230400880e81c0aa2c8280230a001c2b80c3e0030038d3", + "0x385c0187c0061270186d8039270187c0060570b2034da0070b2030f800c", + "0x61f0018170061b800e17c061f0018470060b800e174061f001811006038", + "0x61be00e01cf800c0800329600700e7c00600701a01c9405f0ba03806128", + "0x1300c38e01c039f00180a0061c200e01cf800c3b6030e000700e7c00602a", + "0x602001872c038073e00301180c39201c039f0018778061c800e01cf800c", + "0xf800c038030ea80700e7c00601d018750038073e00301100c39a01c039f0", + "0xf800c0880301c007252030f800c09c030dd00700e7c0060b90194b403807", + "0x9592a01c0303200c3e00309480c37001c9580c3e00308e00c17001c9500c", + "0x38073e00305c80ca5a01c039f0018070061d500e01cf800c00e03403864", + "0xe380700e7c006028018708038073e0030ed80c38001c039f00180a8061be", + "0x61cb00e01cf800c046030e480700e7c0061de018720038073e00301300c", + "0x900c16601c039f0018074061d400e01cf800c044030e680700e7c006020", + "0x5c00c07001c3300c3e00308180c37401c039f0018078061d600e01cf800c", + "0x700c260030f800c0cc030dc0070d2030f800c16e0305c00725e030f800c", + "0xf800c03c030eb00700e7c00601c018754038073e00300380d00e4c03492f", + "0x39f00180a0061c200e01cf800c3b6030e000700e7c00602a0186f803807", + "0x38073e00301180c39201c039f0018778061c800e01cf800c04c030e3807", + "0x5980700e7c00601d018750038073e00301100c39a01c039f0018080061cb", + "0x61ba00e01cf800c02e030ec00700e7c0061c40182c4038073e00300900c", + "0x39330187c00602d0182e00386d0187c0061d70180e00386b0187c006038", + "0x600000e710061f001801e018070de4cc3680e0181bc061f00181ac061b8", + "0x8b00702e030f800c00e08c039e40187c0061c40192e4038120187c00600e", + "0xb80c3e00300b80c04c01c039f0018070061cb00e0700f00d3e00300680c", + "0x29782203a034f800d0247900b80c00e04a970073c8030f800c3c80326c807", + "0x6026018d4c038260187c0060071a601c039f001801c068073bc08c1000e", + "0x635400e0a8061f0018088060b800e76c061f00180740603800e0a0061f0", + "0x61de018d58038073e00300380d00e01e9800c00e568039d70187c006028", + "0x635400e0a8061f001808c060b800e76c061f00180800603800e0b4061f0", + "0x382f0187c0061ce019238039ce0187c0061d7019234039d70187c00602d", + "0xf800c0620324800700e7c00600701a01c1980ca620c4061f001a0bc062d0", + "0x603800e0e0061f00182e40653300e2e4061f00187280f00da6401ce500c", + "0x61a70187c0060380194d0038b70187c00602a0182e0038b80187c0061db", + "0x60330194d4038073e00300f00c39601c039f001801c0680734e2dc5c00e", + "0x653400e690061f00180a8060b800e694061f001876c0603800e0f0061f0", + "0xf800c3880309800700e7c0060071b801c1f1a434a0380603e0187c00603c", + "0x600c07001cef00c3e00300380c01c01c0f00c3e003003b7500e05cf200d", + "0x910073b6030f800c01c0305c007050030f800c01a0305c80704c030f800c", + "0x151db050098ef1e42ce01ceb80c3e00300f00c05e01c1500c3e00300b80c", + "0x680705e0329b02d0187c0068230185c8038230400880e81c0247c0061d7", + "0x3833062034f800c39c0304a80739c030f800c05a0304d00700e7c006007", + "0x1c0b901a7c0061ca018254039ca0187c0060076da01c039f00180c4060b1", + "0x61f00180e0060d800e2e0061f00180cc060d800e01cf800c17203058807", + "0xd380c35c01cd380c3e0030d380c05e01cd380c3e00305b8b801a6b0038b7", + "0x39a4024034f800c024031bb80700e7c00600701a01c1e00ca6e01cf800d", + "0xf800c07c030588070800f8069f00186940609500e694061f001869006000", + "0x60440182c40391c088034f800c2060304a807206030f800c00edb403807", + "0x2300d35801c2400c3e00308e00c1b001c2300c3e00302000c1b001c039f0", + "0x61ae00e474061f00184740602f00e01cf800c00e3380391d0187c006048", + "0x193007098030f800c00e34c038073e00300380d00e1280653800e7c00691d", + "0x680700f4e4060072b401c2700c3e00309080c2cc01c9080c3e00302600c", + "0x2800c5e201c2800c3e0030038d300e01cf800c094030de00700e7c006007", + "0xb3007164030f800c09c0317500709c030f800c244030b3007244030f800c", + "0xf800c00e034038550194e82980c3e00345900c5d601c5900c3e00305900c", + "0x38073e00300900c05401c039f001814c0612900e01cf800c00e37003807", + "0x178070ae030f800c00f4ec039260187c0060073ae01c039f00187900606b", + "0x9380c3e00300383100e164061f001815c9300d39c01c2b80c3e00302b80c", + "0x601c0180380385d0187c00605c0186e80385c0187c00605924e03419807", + "0x60b800e4a4061f0018088060b900e4a0061f00180740603800e17c061f0", + "0x68072564a8949280be0480612b0187c00605d0186e00392a0187c006020", + "0xf800c00edd4038073e00302a80c25201c039f001801c6e00700e7c006007", + "0x1100c17201c9980c3e00300e80c07001c3680c3e00300e00c01c01c3200c", + "0x17807274030f800c3c8030910070e2030f800c0400305c0070de030f800c", + "0x9d0710de4cc36817a7801ca180c3e00300900c16401c3a00c3e00303200c", + "0x38770194f43b00c3e00343580c24c01c359300d24bc330123e0030a1874", + "0x38073e0030a580c25201ca587901a7c0060760186c8038073e00300380d", + "0x38860187c0060660180380387d0187c0060076ea01ca600c3e003003b75", + "0x61f00184c0060b800e2c4061f00181a4060b900e558061f00184bc06038", + "0x607d0180bc0395e0187c00614c0180bc0388b0187c00607901848803889", + "0x38842a82084007f0247c00608d2bc22c448b12ac2180bd3e00e234061f0", + "0xf800c11e030d900700e7c00600701a01cb300ca7e23c061f001a21006126", + "0xf800c00edd4039670187c0060076ec01c039f001824c0612900e24c4880d", + "0x4100c17201c5000c3e00304000c07001c4f00c3e00303f80c01c01cb900c", + "0x17807148030f800c12203091007144030f800c2a80305c0072f0030f800c", + "0x520a22f02804f017a7c01cbd00c3e0030b900c05e01cbd80c3e0030b380c", + "0x38bc0195005e80c3e0034bb80c24c01cbb89c0842544d0123e0030bd17b", + "0x38073e00305500c25201c550bb01a7c0060bd0186c8038073e00300380d", + "0x61f00182d0061b600e2d0061f00182cc5d80d36801c5980c3e0030038d3", + "0x60420182e4038ba0187c0060950180e0038b60187c00609a018038038b5", + "0x5b0120182fc061f00182d4061b800e5c4061f0018270060b800e5d4061f0", + "0x4d00c01c01cc200c3e00305e00c37401c039f001801c0680717e5c4ba8ba", + "0x5c007186030f800c0840305c80730e030f800c12a0301c007182030f800c", + "0x38c82d030cc38c10240306400c3e0030c200c37001cb400c3e00304e00c", + "0x38cb0187c00607f018038039610187c0061660186e8038073e00300380d", + "0x61f0018550060b800e580061f0018208060b900e588061f001820006038", + "0x39f001801c068072aa338b0162196048061550187c0061610186e0038ce", + "0xf800c25e0301c0072b8030f800c0cc0300700719e030f800c0ee030dd007", + "0x6780c37001c6980c3e00309800c17001cad00c3e00303480c17201c6880c", + "0x603c0186f0038073e00300380d00e56c6995a1a25700900c2b6030f800c", + "0x61f001801ceb80700e7c0061e40181ac038073e00300900c05401c039f0", + "0x60d62a4034e70071ac030f800c1ac030178071ac030f800c00f50403952", + "0x61ba00e53c061f0018360a880d06601ca880c3e00300383100e360061f0", + "0x38dc0187c00601d0180e0039490187c00601c018038039530187c00614f", + "0x61f001854c061b800e510061f0018080060b800e514061f0018088060b9", + "0x38073e00300900c05401c039f001801c06807276510a28dc2920480613b", + "0x7080c3e00300e00c01c01c9c80c3e00301780c37401c039f00187900606b", + "0xf800c0400305c0071c6030f800c0440305c80726c030f800c03a0301c007", + "0xf800c00e7d8038e526238c9b0e10240307280c3e00309c80c37001c9880c", + "0x600704601cf200c3e0030e200c97201c0900c3e00300700c28601ce200c", + "0x602600e01cf800c038030e4807038078069f0018034061fc00e05c061f0", + "0x68123c805c060070254b8039e40187c0061e4019364038170187c006017", + "0x1300c3e0030038d300e01cf800c00e034039de04608007542044074069f0", + "0xf800c0440305c0073b6030f800c03a0301c007050030f800c04c031a9807", + "0x39f001801c0680700f50c060072b401ceb80c3e00301400c6a801c1500c", + "0xf800c0460305c0073b6030f800c0400301c00705a030f800c3bc031ab007", + "0xe700c91c01ce700c3e0030eb80c91a01ceb80c3e00301680c6a801c1500c", + "0x38073e00300380d00e0cc06544062030f800d05e0316800705e030f800c", + "0xf800c172032a3007172030f800c39407806d4500e728061f00180c406490", + "0x1c00ca8e01c5b80c3e00301500c17001c5c00c3e0030ed80c07001c1c00c", + "0x39f0018078061c900e01cf800c00e034039a716e2e00700c34e030f800c", + "0xf800c0540305c00734a030f800c3b60301c007078030f800c066032a4007", + "0xf800d01801c06d4900e0f8d21a501c0301f00c3e00301e00ca8e01cd200c", + "0x61f00187100654b00e01cf800c00e034038173c80480754a3880380680e", + "0x601e0195300381d0187c00600e0182e00381c0187c00600d0180e00381e", + "0x61f001805c0654e00e01cf800c00e03403807a9a0300395a00e088061f0", + "0x60200195300381d0187c0061e40182e00381c0187c0060120180e003820", + "0x63bf00e08c061f00187780655000e778061f00180880654f00e088061f0", + "0xed80c3e00301300c78001c039f001801c06807050032a88260187c006823", + "0xf800c0380301c0073ae030f800c054032a9807054030f800c3b6032a9007", + "0x1782d01c030e700c3e0030eb80caa801c1780c3e00300e80c17001c1680c", + "0x61f00180700603800e0c4061f00180a00655500e01cf800c00e034039ce", + "0x5c9ca066038060b90187c006031019550039ca0187c00601d0182e003833", + "0x2ab01e02e790071f001a0480700d0187125d007024030f800c3880325c807", + "0xf00c05e01cef00c3e00300380c01c01c039f001801c068070440740e00e", + "0xf200c3e0030f200c07001c1182001a7c0060263bc036ab80704c030f800c", + "0x380d00e76c06558050030f800d046030f200702e030f800c02e0305c007", + "0x655b00e75c061f00180a80655a00e0a8061f00180a00655900e01cf800c", + "0x39ce0187c0061e40180e00382f0187c0060200180380382d0187c0061d7", + "0x3833062738179c40180cc061f00180b40655c00e0c4061f001805c060b8", + "0x3d5d00e728061f001801ceb80700e7c0061db0184a4038073e00300380d", + "0x38380187c0060b9394034e7007172030f800c17203017807172030f800c", + "0x61f00182dc0655e00e2dc061f00180e05c00d06601c5c00c3e003003831", + "0x60170182e0039a50187c0061e40180e00383c0187c006020018038039a7", + "0xf800c00e0340383e3486941e1c40180f8061f001869c0655c00e690061f0", + "0x610301956c039030187c006040019568038400187c00602201957c03807", + "0x60b800e118061f00180700603800e470061f001801c0600e00e110061f0", + "0x656000e474240462387100611d0187c006044019570038480187c00601d", + "0x700c3e00300600c7fe01c039f001801c0680701a032b080c0187c006807", + "0x380d00e0480600c024030f800c38803200807388030f800c01c03200007", + "0x640200e05c061f0018034f200d06601cf200c3e00300383100e01cf800c", + "0x61f001801e740070380300601c0187c00601e0190040381e0187c006017", + "0xf800c0180305c007038030f800c00e0301c007024030f800c00e08c039c4", + "0x700c0a601c1000c3e0030e200c80801c1100c3e00300900c04c01c0e80c", + "0xf00c91a01c0f0173c8038f800c0460801101d03804ab1007046030f800c", + "0x6563050030f800d3bc031680073bc030f800c04c0324700704c030f800c", + "0xf800c3ae030ea8073ae0a8069f00180340640f00e01cf800c00e034039db", + "0x1780caca01c1780c3e00301682a01b5900382d0187c00602801924003807", + "0x2b3007066030f800c02e0305c007062030f800c3c80301c00739c030f800c", + "0x600d018754038073e00300380d00e7281983101c030e500c3e0030e700c", + "0xb80c17001c1c00c3e0030f200c07001c5c80c3e0030ed80cace01c039f0", + "0x61c4019054038b71700e00700c16e030f800c172032b3007170030f800c", + "0x1cc007046030f800c01a0305c807040030f800c00e0300700703c05c069f0", + "0x60263bc08c101c49e001c1300c3e00300900c16401cef00c3e00300f00c", + "0x5c00705a030f800c0180301c007050030f800c00e08c0382203a070071f0", + "0x1880c3e00301100c80801ce700c3e00301400c04c01c1780c3e00300700c", + "0xeb82a3b6038f800c0660c4e702f05a04ab1007066030f800c3c803029807", + "0xf800d39403168007394030f800c17203247007172030f800c3ae03246807", + "0x6d6900e2dc061f00180e00649000e01cf800c00e034038b80195a01c00c", + "0xd280c3e00300e00c01c01c1e00c3e0030d380cad401cd380c3e00305b817", + "0xf800c0540305c00707c030f800c03a0305c807348030f800c3b60301c007", + "0xf800c00e034039030800f8d21a50240308180c3e00301e00cad601c2000c", + "0xf800c03803007007088030f800c170032b600700e7c00601701875003807", + "0x1500c17001c2400c3e00300e80c17201c2300c3e0030ed80c07001c8e00c", + "0x38dc00e1288e84808c4700900c094030f800c088032b580723a030f800c", + "0x39d700e048061f00187900656d00e790061f00187100641f00e01cf800c", + "0x24280703a070069f00180480648400e078061f001801ceb80702e030f800c", + "0x38260187c00600c0180e0039de0187c006007018038038073e00300e00c", + "0x61f00180780609100e76c061f001805c0609100e0a0061f00180740637a", + "0x61f001a08c0648700e08c1002201c7c00602a3b60a0131de0252180382a", + "0x948070627381780e3e0030eb80c91201c039f001801c0680705a032b71d7", + "0x38073e00301980c24e01ce503301a7c00602f018164038073e00301880c", + "0xf800c070030938071700e0069f00187380605900e2e4061f00187280605c", + "0x61f00182e4061c400e01cf800c00e338038b70187c0060b801817003807", + "0x2b783c34e034f800d16e2e406820389228038b70187c0060b7018710038b9", + "0x6040018d4c038400187c0060071a601c039f001801c0680707c690d280e", + "0x635400e470061f00180f0060b800e110061f001869c0603800e40c061f0", + "0x603e018d58038073e00300380d00e01eb800c00e568038460187c006103", + "0x635400e470061f0018690060b800e110061f00186940603800e120061f0", + "0x391d0187c00604a0192380384a0187c006046019234038460187c006048", + "0x39f001801c6e00700e7c00600701a01c9080cae2130061f001a474062d0", + "0x60500186d8038500187c00604e01c034da00709c030f800c09803248007", + "0x60b800e14c061f00181100603800e2c8061f00180880600e00e488061f0", + "0x380d00e4982a853164710061260187c0061220186e0038550187c00611c", + "0xf800c242030dd00700e7c00600e0181ac038073e0030038dc00e01cf800c", + "0x8e00c17001c9380c3e00302200c07001c2c80c3e00301100c01c01c2b80c", + "0x600701a01c2e85c24e164e200c0ba030f800c0ae030dc0070b8030f800c", + "0x60220180380385f0187c00602d0186e8038073e00300700c0d601c039f0", + "0x61b800e4a8061f0018034060b800e4a4061f00180800603800e4a0061f0", + "0xe24ba00e048061f0018710064b900e4ac951292507100612b0187c00605f", + "0x38073e00300380d00e0880e81c01d5c80f0173c8038f800d0240380680c", + "0xf800c04c7780695300e098061f00180780602f00e778061f001801c0600e", + "0x614900e05c061f001805c060b800e790061f00187900603800e08c1000d", + "0x1500c3e00301400cae801c039f001801c068073b6032b98280187c006823", + "0xf800c0400300700705a030f800c3ae032bb0073ae030f800c054032ba807", + "0x1680caee01c1880c3e00300b80c17001ce700c3e0030f200c07001c1780c", + "0xf800c3b60309480700e7c00600701a01c1983139c0bce200c066030f800c", + "0x61f00182e40602f00e2e4061f001801ebc007394030f800c00e75c03807", + "0x1c0b801a0cc038b80187c00600706201c1c00c3e00305c9ca01a738038b9", + "0x1c007078030f800c0400300700734e030f800c16e032bc80716e030f800c", + "0x1f00c3e0030d380caee01cd200c3e00300b80c17001cd280c3e0030f200c", + "0x2ba807080030f800c044032bd00700e7c00600701a01c1f1a434a0f0e200c", + "0x8e00c3e00300380c01c01c2200c3e00308180caec01c8180c3e00302000c", + "0xf800c088032bb807090030f800c03a0305c00708c030f800c0380301c007", + "0x380d00e0340657c018030f800d00e032bd80723a1202311c3880308e80c", + "0x61e900e710061f0018038061e800e038061f0018030061e600e01cf800c", + "0x39e40187c00600706201c039f001801c06807024030060120187c0061c4", + "0xf800c03c030f480703c030f800c02e030f600702e030f800c01a79006833", + "0x60071b801c039f001801d5a807388030f800c00e7b40381c0180300e00c", + "0xf00d56c01c0e00c3e00300680c38801c0f00c3e00300380c01c01c039f0", + "0x600701a01c0e80cafa038061f001a05c062b700e05cf201201c7c00601c", + "0xf200c38801c1300c3e00300600c07001cef00c3e00300900c01c01c039f0", + "0x71f00180a0131de01d5f80380e0187c00600e3880355c007050030f800c", + "0x2c000700e7c00600701a01c1500cafe76c061f001a08c0620300e08c10022", + "0x600701a01ce700cb040bc061f001a0b40658100e0b4eb80d3e0030ed80c", + "0x6d8400e0cc061f00180c40644300e0c4061f00180bc0700db0601c039f0", + "0x1c00c3e00301100c01c01c5c80c3e0030e500cb0a01ce500c3e0030199d7", + "0x38b71700e00700c16e030f800c172032c3007170030f800c0400301c007", + "0x2c200734e030f800c39c0322780700e7c00600e018b10038073e00300380d", + "0x61f00180880600e00e694061f00180f00658500e0f0061f001869ceb80d", + "0x2003e348038060400187c0061a50196180383e0187c0060200180e0039a4", + "0x39030187c00602a01961c038073e00300700c58801c039f001801c06807", + "0x61f001840c0658600e470061f00180800603800e110061f00180880600e", + "0x644f00e01cf800c3880316480700e7c00600701a01c2311c08803806046", + "0x2500c3e00308e80cb0a01c8e80c3e0030241e401b610038480187c00601d", + "0xf800c094032c3007242030f800c0180301c007098030f800c02403007007", + "0x680c3e00300600cb1001c0600c3e0030038d300e1389084c01c0302700c", + "0x6e0073880380680c388030f800c01a032c480701c030f800c00e030e2007", + "0xf201201c7c0061c4018cbc039c401a034f800c01a0316a80700e7c006007", + "0x61f00180480658a00e01cf800c02e0304780700e7c0061e4018b1403817", + "0x612900e0700f00d3e00301101d01b62c038220187c00600e0182440381d", + "0xef02301c7c006020018cbc0382001a034f800c01a0316a80700e7c00601c", + "0x61f001801c0600e00e01cf800c04c0304780700e7c006023018b1003826", + "0x601e0182440382f0187c0061de0191100382d0187c00600c0180e0039d7", + "0xf800d054031a080705476c1400e3e0030e702f05a75ce258c00e738061f0", + "0x94807172728069f00180c40634300e01cf800c00e034038330196341880c", + "0x39f00180e0062c400e2dc5c03801c7c00600d018cbc038073e00305c80c", + "0x61f00187280609100e694061f00182dc0616600e01cf800c17003162807", + "0x25800707c030f800c07869c06caf00e0f0d380d3e0030d21a501a24c039a4", + "0x2200c3e0030ed80c07001c8180c3e00301400c01c01c2000c3e00301f00c", + "0x614c00e01cf800c00e0340391c08840c0700c238030f800c08003258807", + "0x1c007090030f800c0500300700708c030f800c0660325900700e7c00600d", + "0x38dc00e1288e84801c0302500c3e00302300c96201c8e80c3e0030ed80c", + "0xf800c00edb4038120187c0060076da01ce200c3e0030039a700e01cf800c", + "0x600e00e078061f001805cf201201d638038170187c0060076da01cf200c", + "0x38260187c00600d0181f4039de0187c00600c0180e0038230187c006007", + "0x61f0018038061c400e76c061f00180780658f00e0a0061f00187100603c", + "0x6820019644038200440740e1c43e0030151db050098ef0233c96400382a", + "0x39ce05e034f800c3ae032c980700e7c00600701a01c1680cb2475c061f0", + "0x1980c3e00301880c6e401c1880c3e0030e700c6e201c039f00180bc0612a", + "0xf800c0440303e807172030f800c03a0301c007394030f800c03803007007", + "0x39f001801c068071700e05c9ca3880305c00c3e00301980c6e601c1c00c", + "0xf800c03a0301c00734e030f800c0380300700716e030f800c05a031ba007", + "0x1e1a7388030d200c3e00305b80c6e601cd280c3e00301100c0fa01c1e00c", + "0xf800c388032ca807388030f800c00f650038073e00300680c39001cd21a5", + "0x600eb2e01cf200c3e0030f200c05e01cf200c3e00300900cb2c01c0900c", + "0x61f00180700659600e070061f00180780659500e0780b80d3e0030071e4", + "0x600e00e0801100d3e00300e80701b6600381d0187c00601d0180bc0381d", + "0x60260187c006020019010039de0187c0060170182e4038230187c006022", + "0xfc0073c8030f800c0180305c007024030f800c00e0301c00704c7781180e", + "0x680703c032cc8170187c0069c4018efc039c401c034071f00187900900d", + "0x1e100703a030f800c038031e0807038030f800c02e031e000700e7c006007", + "0x60230180a8038073e00301000c78801c131de046080110123e00300e80c", + "0xf800c044032cd00700e7c0060260182c4038073e0030ef00c05401c039f0", + "0x700c17001c1500c3e00300680c07001ced80c3e00301400cb3601c1400c", + "0xf800c00e0340382d3ae0a80700c05a030f800c3b6032ce0073ae030f800c", + "0x600e0182e0039ce0187c00600d0180e00382f0187c00601e01967403807", + "0xf800d00e032cf0070660c4e700e0180cc061f00180bc0659c00e0c4061f0", + "0x680c3cc01c039f0018030060b100e01cf800c00e0340380e01967c0680c", + "0x600c3c8030f800c024030f4807024030f800c388030f4007388030f800c", + "0x38170187c0060073ae01c039f00180380613a00e01cf800c00e034039e4", + "0xf800c03c0700683300e070061f001801c1880703c030f800c01805c069ce", + "0x38200180301000c3e00301100c3d201c1100c3e00300e80c3d801c0e80c", + "0xf800c01a0305c807040030f800c00e0300700703c05c069f0018710065a0", + "0x101c48bc01c1300c3e00300900c05e01cef00c3e00300f00c59601c1180c", + "0x60220192e4038280187c0061e401850c0382203a070071f0018098ef023", + "0x6012a5c01c1500c3e00301500c04c01c1500c3e00300382300e76c061f0", + "0x6980700e7c00600701a01c189ce05e03ad082d3ae034f800d05076c1500e", + "0x38b90187c0061d70180e0039ca0187c006033018d4c038330187c006007", + "0x3807b440300395a00e2e0061f00187280635400e0e0061f00180b4060b8", + "0x38b90187c00602f0180e0038b70187c006031018d58038073e00300380d", + "0x61f00182e00648d00e2e0061f00182dc0635400e0e0061f0018738060b8", + "0x6807348032d19a50187c0069a7018b40039a70187c00603c0192380383c", + "0x38400187c00603e02e036d200707c030f800c34a0324800700e7c006007", + "0x61f00182e40603800e110061f00180700600e00e40c061f0018100065a5", + "0x6103019698038480187c0060380182e0038460187c00601d0182e40391c", + "0xf800c02e030e400700e7c00600701a01c8e84808c47022012018474061f0", + "0x60b90180e00384c0187c00601c0180380384a0187c0061a401969c03807", + "0x65a600e140061f00180e0060b800e138061f0018074060b900e484061f0", + "0x381e02e034f800c388032d400724414027121098048061220187c00604a", + "0x61f00180780647f00e08c061f0018034060b900e080061f001801c0600e", + "0x1101d038038f800c04c778118203896a4038260187c0060120180bc039de", + "0x61f001801c118073b6030f800c0440325c807050030f800c3c8030a1807", + "0x169d701a7c0068283b60a80700c0254b80382a0187c00602a0180980382a", + "0x1980c6a601c1980c3e0030038d300e01cf800c00e0340383139c0bc075aa", + "0x1aa007070030f800c05a0305c007172030f800c3ae0301c007394030f800c", + "0x1880c6ac01c039f001801c0680700f6ac060072b401c5c00c3e0030e500c", + "0x1aa007070030f800c39c0305c007172030f800c05e0301c00716e030f800c", + "0xd380c3e00301e00c91c01c1e00c3e00305c00c91a01c5c00c3e00305b80c", + "0x61a5019240038073e00300380d00e690065ac34a030f800d34e03168007", + "0x7007206030f800c080032d7007080030f800c07c05c06dad00e0f8061f0", + "0x2300c3e00300e80c17201c8e00c3e00305c80c07001c2200c3e00300e00c", + "0x240462381100900c23a030f800c206032d7807090030f800c0700305c007", + "0x2500c3e0030d200cb6001c039f001805c061c700e01cf800c00e0340391d", + "0xf800c03a0305c807242030f800c1720301c007098030f800c03803007007", + "0x9084c0240309100c3e00302500cb5e01c2800c3e00301c00c17001c2700c", + "0x680c018034061f00180300637a00e030061f001801c065b100e4882804e", + "0x65b502e032da1e40196cc0900c3e008c0680cb6401c039f001801c6e007", + "0x1300cb78778065bb046032dd0200196e41100cb70074065b7038032db01e", + "0x602f00e0a8061f001801edf80700e7c00600701a01ced80cb7c0a0065bd", + "0x1880c3e00300900c83e01ceb80c3e00301500e01a7380382a0187c00602a", + "0xe503306203ae0007394030f800c38803048807066030f800c3ae03048807", + "0x38b90187c006007018038038073e0030e700c25201ce702f05a038f800c", + "0x61f00180bc0609100e2e0061f00180b40609100e0e0061f001803006038", + "0x1780734e030f800c00f708038073e00300380d00e01ee080c00e568038b7", + "0x61f00187900651800e0f0061f001869c0700d39c01cd380c3e0030d380c", + "0x8184001d70c038440187c0061c4018244039030187c00603c01824403840", + "0x5c80c3e00300380c01c01c039f00180f80612900e0f8d21a501c7c006044", + "0xf800c34803048807170030f800c34a03048807070030f800c0180301c007", + "0x391c0187c00600740a01c039f001801c0680700f704060072b401c5b80c", + "0xf800c00e0300700708c030f800c238038069ce00e470061f00184700602f", + "0x2300c12201c2700c3e00300b80c5b801c9080c3e00300600c07001c2600c", + "0xf800c2441402712109804ae2007244030f800c388030488070a0030f800c", + "0x38073e00300380d00e14c065c5164030f800d094032438070944742400e", + "0xf800c0900300700700e7c0060570184a40385724c154071f00182c806489", + "0x9300c12201c5c00c3e00302a80c12201c1c00c3e00308e80c07001c5c80c", + "0xf800c0a6032e300700e7c00600701a01c03dc101801cad00716e030f800c", + "0x2c80cb8e01c2e00c3e00308e80c07001c9380c3e00302400c01c01c2c80c", + "0x2f80c3e003003dc800e01cf800c00e0340385d0b849c0700c0ba030f800c", + "0x6007018038039280187c00605f01c034e70070be030f800c0be03017807", + "0x609100e4bc061f0018078062e400e198061f00180300603800e190061f0", + "0x61300d24bc33064025724039300187c0061c4018244038690187c006128", + "0x39f001801c068070da032e506b0187c00692b01921c0392b2544a4071f0", + "0x6129018038038073e00303880c25201c3886f266038f800c0d603244807", + "0x609100e2e0061f00184cc0609100e0e0061f00184a80603800e2e4061f0", + "0x606d019718038073e00300380d00e01ee080c00e568038b70187c00606f", + "0x65c700e50c061f00184a80603800e1d0061f00184a40600e00e4e8061f0", + "0x61f001801ee580700e7c00600701a01c3b1430e8038060760187c00613a", + "0x380c01c01c3c80c3e00303b80e01a738038770187c0060770180bc03877", + "0x48807104030f800c03803196007100030f800c0180301c0070fe030f800c", + "0x421541042003f81240801c4200c3e0030e200c12201caa00c3e00303c80c", + "0xf800c00e034039560197304300c3e00343e80c90e01c3e94c296038f800c", + "0xa580c01c01c039f001822c0612900e22c448b101c7c00608601922403807", + "0x48807170030f800c16203048807070030f800c2980301c007172030f800c", + "0xab00cb8c01c039f001801c0680700f704060072b401c5b80c3e00304480c", + "0x2e380711e030f800c2980301c00711a030f800c296030070072bc030f800c", + "0xf800c00f734038073e00300380d00e5984788d01c030b300c3e0030af00c", + "0x633700e24c061f00182440700d39c01c4880c3e00304880c05e01c4880c", + "0x389c0187c0061c4018244038420187c006093018244038950187c00601d", + "0x380c01c01c039f00182680612900e268b916701c7c00609c084254075ce", + "0x48807170030f800c2ce03048807070030f800c0180301c007172030f800c", + "0x6007b9e01c039f001801c0680700f704060072b401c5b80c3e0030b900c", + "0x2e800713c030f800c2ee038069ce00e5dc061f00185dc0602f00e5dc061f0", + "0xbd00c3e0030e200c12201cbd80c3e00304f00c12201c5200c3e00301100c", + "0x600e00e01cf800c144030948071445e05000e3e0030bd17b14803ae8807", + "0x38b80187c0060a0018244038380187c00600c0180e0038b90187c006007", + "0x3dd200e01cf800c00e03403807b820300395a00e2dc061f00185e006091", + "0x38bc0187c0060bd01c034e700717a030f800c17a0301780717a030f800c", + "0x61f00187100609100e2d4061f00182f00609100e2d0061f0018080065d3", + "0x700700e7c0060b30184a4038b31542ec071f00182d85a8b401d750038b6", + "0x5c00c3e00305d80c12201c1c00c3e00300600c07001c5c80c3e00300380c", + "0x2ea80700e7c00600701a01c03dc101801cad00716e030f800c15403048807", + "0xba80c3e00305d00e01a738038ba0187c0060ba0180bc038ba0187c006007", + "0xf800c3880304880730e030f800c2ea03048807182030f800c046032eb007", + "0x38073e0030c200c25201cc20bf2e2038f800c18661c6080ebae01c6180c", + "0x61f00185c40609100e0e0061f00180300603800e2e4061f001801c0600e", + "0x38073e00300380d00e01ee080c00e568038b70187c0060bf018244038b8", + "0x61f00185a00700d39c01cb400c3e0030b400c05e01cb400c3e003003dd8", + "0x61c4018244038ce0187c0060c8018244039600187c0061de018808038c8", + "0x39f00185880612900e5886596101c7c00615519c580075d900e554061f0", + "0xf800c2c203048807070030f800c0180301c007172030f800c00e03007007", + "0x39f001801c0680700f704060072b401c5b80c3e00306580c12201c5c00c", + "0xf800c19e038069ce00e33c061f001833c0602f00e33c061f001801eed007", + "0xe200c12201ca900c3e0030ae00c12201cad80c3e00301300cbb601cae00c", + "0xf800c1a6030948071a65686880e3e00306b1522b603aee0071ac030f800c", + "0x60d1018244038380187c00600c0180e0038b90187c00600701803803807", + "0xf800c00e03403807b820300395a00e2dc061f00185680609100e2e0061f0", + "0x60d801c034e70071b0030f800c1b0030178071b0030f800c00f77403807", + "0x609100e514061f00185440609100e370061f00180a0065de00e544061f0", + "0x61490184a4039492a653c071f0018510a28dc01d77c039440187c0061c4", + "0xa780c12201c1c00c3e00300600c07001c5c80c3e00300380c01c01c039f0", + "0x600701a01c03dc101801cad00716e030f800c2a603048807170030f800c", + "0x9d80e01a7380393b0187c00613b0180bc0393b0187c006007bc001c039f0", + "0x488071ca030f800c27203048807262030f800c3b6032f0807272030f800c", + "0x7180c25201c719361c2038f800c25c3949880ebc401c9700c3e0030e200c", + "0x609100e0e0061f00180300603800e2e4061f001801c0600e00e01cf800c", + "0x2f18071ce030f800c00e34c038b70187c006136018244038b80187c0060e1", + "0xf800c172030070071d2030f800c258032f2007258030f800c1ce2dc5c00e", + "0x7592501c0309200c3e00307480cb8e01c7580c3e00301c00c07001c9280c", + "0x600c8ce01c039f001801c0680701a032f300c0187c00680701979403924", + "0x600c024030f800c38803233007388030f800c01c0323400701c030f800c", + "0x61f0018034f200d06601cf200c3e00300383100e01cf800c00e03403812", + "0x2f38070380300601c0187c00601e0191980381e0187c00601701919403817", + "0x600d0187080380d0180300680c3e00300600c6f401c0600c3e00300380c", + "0xf800c00e0301c007388030f800c00e08c0380e0187c006007bd001c039f0", + "0x700c80801c0e80c3e0030e200c04c01c0e00c3e00300600c17001c0f00c", + "0x60170192d4038173c8048071f00180880e81c03c7125a007044030f800c", + "0x1300cbd2778061f001a0800608b00e080061f001808c064b600e08c061f0", + "0xed80c3e00301400c6d001c1400c3e0030ef00c2bc01c039f001801c06807", + "0xf800c3c80305c0073ae030f800c0240301c007054030f800c3b6031b4807", + "0x38073e00300380d00e0bc169d701c0301780c3e00301500c6d401c1680c", + "0x61f0018790060b800e0c4061f00180480603800e738061f00180980636b", + "0xe00c3e00300380c01c01ce5033062038061ca0187c0061ce018da803833", + "0xf800c02403017807044030f800c3880323f80703a030f800c01a0305c807", + "0x1180c3e00300382300e0780b9e401c7c0060200440740e1c4b5201c1000c", + "0xf800c01c0305c0073ae030f800c0180301c007054030f800c3c803007007", + "0x1501285c01ce700c3e00300f00c80801c1780c3e00301180c04c01c1680c", + "0x1980cbd40c4061f001a76c0642f00e76c140263bc710f800c39c0bc169d7", + "0x1c00c3e0030e500c86401ce500c3e00301880c86201c039f001801c06807", + "0x380d00e2dc065eb170030f800d17203099807172030f800c07003219807", + "0x61e800e0f0061f001869c061e600e69c061f00182e00606f00e01cf800c", + "0x383e0187c0060260180e0039a40187c0061de018038039a50187c00603c", + "0x61f0018694061e900e40c061f00180a0060b800e100061f001805c060b9", + "0x8e00c3e00305b80c3d801c039f001801c0680708840c2003e34804806044", + "0xf800c02e0305c807090030f800c04c0301c00708c030f800c3bc03007007", + "0x240460240302600c3e00308e00c3d201c2500c3e00301400c17001c8e80c", + "0x61de018038039210187c0060330187b0038073e00300380d00e1302511d", + "0x60b800e488061f001805c060b900e140061f00180980603800e138061f0", + "0x2f60070a62c89105009c048060530187c0061210187a4038b20187c006028", + "0xf800c00f7a00380d0180300680c3e00300600c6f401c0600c3e00300380c", + "0xb80c38401c0b9e401a7c00600d0197b4038120187c00600704601ce200c", + "0x9480700e7c00600701a01c0e00cbdc078061f001a038062eb00e01cf800c", + "0xad007044030f800c03a0301780703a030f800c00edb4038073e00300f00c", + "0xf800c00edb8038073e00300e00c25201c039f001801c0680700f7bc06007", + "0x900c04c01c1180c3e0030e200c97201c1100c3e00301000c05e01c1000c", + "0xf800d04408c0900c00e04a97007046030f800c0460326c807024030f800c", + "0x39d70187c0060071a601c039f001801c0680705476c1400ebe0098ef00d", + "0x61f0018098060b800e0bc061f00187780603800e0b4061f001875c06353", + "0x38073e00300380d00e01ef880c00e568038310187c00602d018d50039ce", + "0x61f001876c060b800e0bc061f00180a00603800e0cc061f00180a806356", + "0x60b9019238038b90187c006031019234038310187c006033018d50039ce", + "0x24800700e7c00600701a01c5c00cbe40e0061f001a728062d000e728061f0", + "0x61f001869c065f400e69c061f00182dcf200dbe601c5b80c3e00301c00c", + "0x603c0197d4039a40187c0061ce0182e0039a50187c00602f0180e00383c", + "0x38073e0030f200c38401c039f001801c0680707c690d280e0180f8061f0", + "0x61f0018738060b800e40c061f00180bc0603800e100061f00182e0065f6", + "0x600c3e00300380cbee01c8e0442060380611c0187c0060400197d403844", + "0xf800c00e69c038073e0030038dc00e0340600c01a030f800c018031bd007", + "0x2fc1e4024034f800d3880300380e34a01ce200c3e0030e200c07801ce200c", + "0xf800c00e3380381c0187c00600d018070038073e00300380d00e0780b80d", + "0x38200197e41101d01a7c00681c018554038120187c00601201803803807", + "0x39de0187c00601d018570038230187c00602201833c038073e00300380d", + "0x38d300e01cf800c00e03403807bf40300395a00e098061f001808c060d1", + "0x688073bc030f800c040030ae0073b6030f800c050030ad807050030f800c", + "0xf800c00e034039d70197ec1500c3e00341300c2a401c1300c3e0030ed80c", + "0x61f00180b40602f00e0b4061f00180a8060d600e01cf800c00e37003807", + "0x612900e7381780d3e00301983101a108038330187c00600e01824403831", + "0x1c00716e030f800c02403007007394030f800c3bc0302e00700e7c0061ce", + "0xd280c3e00301780c12201c1e00c3e0030e500c38801cd380c3e0030f200c", + "0x2fe1a40187c0068b8018d04038b80702e4071f00186941e1a716e71256807", + "0x61030184a403903080034f800c348031a180700e7c00600701a01c1f00c", + "0x2000c12201c8e00c3e00301c00c07001c2200c3e00305c80c01c01c039f0", + "0xf800c07c0325900700e7c00600701a01c03dfd01801cad00708c030f800c", + "0x2400c96201c2500c3e00301c00c07001c8e80c3e00305c80c01c01c2400c", + "0x38073e0030038dc00e01cf800c00e0340384c0944740700c098030f800c", + "0x38440187c006012018038038073e0030ef00c27201c039f001875c06129", + "0x9080c3e0030038d300e118061f00180380609100e470061f001879006038", + "0x6044018038038500187c00604e0192c00384e0187c00612108c03657807", + "0x9100e01814c061f0018140064b100e2c8061f00184700603800e488061f0", + "0x39f00180340612a00e01cf800c01c0309380700e7c00600701a01c298b2", + "0x9300c3e00309300c05e01c9300c3e00300392800e154061f001801ceb807", + "0x60570b2034198070b2030f800c00e0c4038570187c0061260aa034e7007", + "0x603800e174061f001805c0600e00e170061f001849c064b200e49c061f0", + "0x680c37c01c9405f0ba038061280187c00605c0192c40385f0187c00601e", + "0x659500e790061f001801eff807024710069f0018038065fe00e01cf800c", + "0x381e0187c00601e0180bc0381e0187c006017019658038170187c0061e4", + "0xe80cb2a01c1100c3e00300900c00001c0e81c01a7c0061c403c03007597", + "0x2cb807046030f800c04603017807046030f800c040032cb007040030f800c", + "0x6028019658038280187c006026019654038263bc034f800c04408c0e00e", + "0x39d7054034f800c3b601c06d9800e76c061f001876c0602f00e76c061f0", + "0x61f001875c0640400e0bc061f0018778060b900e0b4061f00180a80600e", + "0x69c401a030039c497401ce200c3e00300700c97201ce702f05a038061ce", + "0xf800c02e0304a80700e7c00600701a01c0e81c03c03b000173c8048071f0", + "0x6023018254038230187c0060076da01c039f0018088060b100e0801100d", + "0x609500e0a0061f0018080060d800e01cf800c3bc0305880704c778069f0", + "0x39d70187c006026018360038073e0030ed80c16201c151db01a7c006028", + "0x61f00180a8060d800e01cf800c05a0305880705e0b4069f001875c06095", + "0x189ce01a6b0039ce0187c0061ce0180bc038310187c00602f018360039ce", + "0x5c007024030f800c0240301c007066030f800c06603017807066030f800c", + "0x39f001801c06807394033008073e00341980c35c01cf200c3e0030f200c", + "0x61f00180e00616600e0e0061f00182e40632600e2e4061f001801c69807", + "0x6980700e7c0061ca0186f0038073e00300380d00e01f0100c00e568038b8", + "0x38b80187c0061a7018598039a70187c0060b7018bc4038b70187c006007", + "0x61f00180480603800e694061f00180f00660300e0f0061f00182e0062ea", + "0x2003e348038060400187c0061a50198100383e0187c0061e40182e0039a4", + "0x2200c3e00300f00c07001c8180c3e00300e80cc0a01c039f001801c06807", + "0x38462381100700c08c030f800c20603302007238030f800c0380305c007", + "0xf800c018031b400700e7c00600701a01c0680cc0e030061f001a01c06606", + "0x38120180300900c3e0030e200c6d401ce200c3e00300700c6d201c0700c", + "0x38170187c00600d3c8034198073c8030f800c00e0c4038073e00300380d", + "0x680c38001c0e00c018070061f00180780636a00e078061f001805c0636b", + "0x900cb2c01c0900c3e0030e200cb2a01ce200c3e003003e0800e01cf800c", + "0xb80d3e0030071e401803acb8073c8030f800c3c8030178073c8030f800c", + "0x601d0180bc0381d0187c00601c0196580381c0187c00601e0196540381e", + "0x38230187c00602201803803820044034f800c03a01c06d9800e074061f0", + "0x30480704c7781180e018098061f00180800640400e778061f001805c060b9", + "0x61f00180300637100e01cf800c00e0340380d0198280600c3e00340380c", + "0x6807024030060120187c0061c4018dcc039c40187c00600e018dc80380e", + "0x1ba00702e030f800c01a7900683300e790061f001801c1880700e7c006007", + "0xf800c00e3700381c0180300e00c3e00300f00c6e601c0f00c3e00300b80c", + "0x600c07001cef00c3e00300380c01c01c0f01701a7c0061c40184c003807", + "0x910073b6030f800c01c0305c007050030f800c01a0305c80704c030f800c", + "0x61f001875c0602f00e75c0900d3e00300900c87801c1500c3e00300f00c", + "0x1180c2e401c118200440740e0123e0030eb82a3b60a0131de3c859c039d7", + "0x189ce01a7c0060170184c0038073e00300380d00e0bc0660b05a030f800d", + "0xf800c03a0301c00734e030f800c03803007007066030f800c05a0304d007", + "0x1880c24401cd200c3e00301000c17001cd280c3e00301100c17201c1e00c", + "0x604007c690d283c34e79306007080030f800c0660301780707c030f800c", + "0x600701a01c2200cc1a40c061f001a2dc062d000e2dc5c038172728091f0", + "0x60b90180e00384c0187c0061ca018038038073e00308180c5a201c039f0", + "0x612200e140061f00182e0060b800e138061f00180e0060b900e484061f0", + "0x38530187c0061e40182c8038b20187c0060120180bc039220187c0061ce", + "0x684a0184980384a23a1202311c0247c0060531644882804e2421300bd3c", + "0x38590ae034f800c0aa030d900700e7c00600701a01c9300cc1c154061f0", + "0x2e00c3e00309385701a6d0039270187c0060071a601c039f001816406129", + "0xf800c08c0301c0070be030f800c238030070070ba030f800c0b8030db007", + "0x2e80c37001c9500c3e00308e80c17001c9480c3e00302400c17201c9400c", + "0x61260186e8038073e00300380d00e4ac9512925017c0900c256030f800c", + "0x60b900e4bc061f00181180603800e198061f00184700600e00e190061f0", + "0x606b0187c0060640186e0039300187c00611d0182e0038690187c006048", + "0x60b100e01cf800c3c80301500700e7c00600701a01c359300d24bc33012", + "0x600e00e1b4061f0018110061ba00e01cf800c39c0303580700e7c006012", + "0x38710187c0060380182e40386f0187c0060b90180e0039330187c0061ca", + "0x3a13a0e21bc998120181d0061f00181b4061b800e4e8061f00182e0060b8", + "0x3580700e7c0060120182c4038073e0030f200c05401c039f001801c06807", + "0x38760187c00601c018038039430187c00602f0186e8038073e00300b80c", + "0x61f0018080060b800e1e4061f0018088060b900e1dc061f001807406038", + "0x39f001801c6e00729852c3c8770ec0480614c0187c0061430186e00394b", + "0x61f001801ceb807024030f800c3c8033078073c8030f800c388031bd007", + "0x601c0192140381d038034f800c0240324200703c030f800c00e75c03817", + "0xe80c6f401c1300c3e00300600c07001cef00c3e00300380c01c01c039f0", + "0x243007054030f800c03c030488073b6030f800c02e03048807050030f800c", + "0x66103ae030f800d046032438070460801100e3e0030151db050098ef012", + "0x60310184a40383139c0bc071f001875c0648900e01cf800c00e0340382d", + "0xe500c0b801c039f00180cc0612700e7281980d3e00301780c0b201c039f0", + "0x2e00700e7c00603801849c038b8070034f800c39c0302c807172030f800c", + "0xe2007172030f800c172030e200700e7c00600719c01c5b80c3e00305c00c", + "0xd21a501d8441e1a701a7c0068b7172034101c491401c5b80c3e00305b80c", + "0x8180c3e00302000c6a601c2000c3e0030038d300e01cf800c00e0340383e", + "0xf800c206031aa007238030f800c0780305c007088030f800c34e0301c007", + "0x2400c3e00301f00c6ac01c039f001801c0680700f848060072b401c2300c", + "0xf800c090031aa007238030f800c3480305c007088030f800c34a0301c007", + "0x8e80c5a001c8e80c3e00302500c91c01c2500c3e00302300c91a01c2300c", + "0x649000e01cf800c00e370038073e00300380d00e48406613098030f800d", + "0x9100c3e00302800c36c01c2800c3e00302700e01a6d00384e0187c00604c", + "0xf800c2380305c0070a6030f800c0880301c007164030f800c04403007007", + "0x39f001801c0680724c154298b23880309300c3e00309100c37001c2a80c", + "0x38570187c0061210186e8038073e00300700c0d601c039f001801c6e007", + "0x61f0018470060b800e49c061f00181100603800e164061f00180880600e", + "0x38073e00300380d00e1742e1270b27100605d0187c0060570186e00385c", + "0x9400c3e00301100c01c01c2f80c3e00301680c37401c039f00180380606b", + "0xf800c0be030dc007254030f800c01a0305c007252030f800c0400301c007", + "0xb80d3e0030e200c26001c039f001801c6e0072564a8949283880309580c", + "0x600d0182e4038260187c00600c0180e0039de0187c0060070180380381e", + "0x643c00e0a8061f00180780612200e76c061f0018038060b800e0a0061f0", + "0x151db050098ef1e42ce01ceb80c3e0030eb80c05e01ceb81201a7c006012", + "0x680705e0330a02d0187c0068230185c8038230400880e81c0247c0061d7", + "0x38330187c00602d0182680383139c034f800c02e0309800700e7c006007", + "0x61f0018088060b900e0f0061f00180740603800e69c061f00180700600e", + "0x60330180bc0383e0187c006031018488039a40187c0060200182e0039a5", + "0x16800716e2e01c0b9394048f800c0800f8d21a507869cf260c00e100061f0", + "0x39f001840c062d100e01cf800c00e034038440198548180c3e00345b80c", + "0xf800c0700305c807242030f800c1720301c007098030f800c39403007007", + "0x900c05e01c9100c3e0030e700c24401c2800c3e00305c00c17001c2700c", + "0x298b22441402712109805e6a8070a6030f800c3c803059007164030f800c", + "0x380d00e498066160aa030f800d0940309300709447424046238048f800c", + "0x38d300e01cf800c0b2030948070b215c069f0018154061b200e01cf800c", + "0x385d0187c00605c0186d80385c0187c0061270ae034da00724e030f800c", + "0x61f0018120060b900e4a0061f00181180603800e17c061f00184700600e", + "0x949280be0480612b0187c00605d0186e00392a0187c00611d0182e003929", + "0xf800c238030070070c8030f800c24c030dd00700e7c00600701a01c9592a", + "0x8e80c17001c3480c3e00302400c17201c9780c3e00302300c07001c3300c", + "0x380d00e1ac9806925e1980900c0d6030f800c0c8030dc007260030f800c", + "0x61ce0181ac038073e00300900c16201c039f00187900602a00e01cf800c", + "0x5c80c07001c9980c3e0030e500c01c01c3680c3e00302200c37401c039f0", + "0xdc007274030f800c1700305c0070e2030f800c0700305c8070de030f800c", + "0x602a00e01cf800c00e034038742741c4379330240303a00c3e00303680c", + "0x1780c37401c039f001805c0606b00e01cf800c0240305880700e7c0061e4", + "0x5c8070ee030f800c03a0301c0070ec030f800c03803007007286030f800c", + "0xa600c3e0030a180c37001ca580c3e00301000c17001c3c80c3e00301100c", + "0x6e00700e7c00600756a01c0f00c3e0030039f500e530a58790ee1d80900c", + "0x38280187c0060070180380381d038034f800c3880309800700e7c006007", + "0x61f0018038060b800e0a8061f0018034060b900e76c061f001803006038", + "0x1780c05e01c1781201a7c0060120190f00382d0187c00601d018488039d7", + "0x39ce0187c0061ce0182c8039ce3c8034f800c3c8031bb80705e030f800c", + "0x682601822c038263bc08c100220247c0061ce05e0b4eb82a3b60a00b889", + "0x175807394030f800c062030af00700e7c00600701a01c1980cc2e0c4061f0", + "0x39f00182e40612900e01cf800c00e034038380198605c80c3e0034e500c", + "0x38073e00300f00c5bc01c039f0018048060b100e01cf800c3c803015007", + "0x61f001808c060b900e2dc061f00180800603800e2e0061f00180880600e", + "0x30c80c00e568039a50187c00601c0184880383c0187c0061de0182e0039a7", + "0xd20233e00300e00c23001c039f00180e00612900e01cf800c00e03403807", + "0x3850024034f800c0240321e00709c4842604a23a1202311c08840c2003e", + "0xf800c00e34c038b20187c0061220a0035b2007244790069f001879006377", + "0x1000c07001c2e00c3e00301100c01c01c2a80c3e00302980c5e201c2980c", + "0x1b2807250030f800c3bc0305c0070be030f800c0460305c8070ba030f800c", + "0x9580c3e00302a80c2cc01c9500c3e00305900c6cc01c9480c3e00302700c", + "0xf00d5b201c9385902e15c930123e00309592a2524a02f85d0b805f0d007", + "0x39f001801c068070cc0330e0640187c00692701986c038170187c006017", + "0x606d0d60347b0070da030f800c0b20305c0070d6030f800c0ae0301c007", + "0x39f001801c068070de0330e9330187c0069300183cc039300d24bc071f0", + "0xf800c2660308200700e7c00613a0184a40393a0e2034f800c0c80330f007", + "0x2311c08840c2003e34808c28007286030f800c0e87900900ec3e01c3a00c", + "0x9780c07001c3e80c3e00309300c01c01c3b00c3e0030389210981288e848", + "0x2e9807104030f800c0ec03091007100030f800c0d20305c0070fe030f800c", + "0x394c2961e43b9c43e0030aa0821001fc3e812c4001caa00c3e0030a180c", + "0xf800c108030d900700e7c00600701a01c4300cc42210061f001a53006126", + "0x3c80c07001c5c00c3e00303b80c01c01c039f00182c40612900e2c4ab00d", + "0x91007078030f800c2960305c00734e030f800c02e0305c80716e030f800c", + "0x4580c3e0030449a501a6d0038890187c0060071a601cd280c3e0030ab00c", + "0xf800c16e0301c00711a030f800c170030070072bc030f800c116030db007", + "0xaf00c37001c4880c3e00301e00c17001cb300c3e0030d380c17201c4780c", + "0x60860186e8038073e00300380d00e24c4896611e2340900c126030f800c", + "0x60b900e268061f00181e40603800e5c8061f00181dc0600e00e59c061f0", + "0x609c0187c0061670186e0038420187c00614b0182e0038950187c006017", + "0x662200e01cf800c348030ec80700e7c00600701a01c4e04212a268b9012", + "0x2500c38e01c039f0018130061c200e01cf800c242030e000700e7c006064", + "0x604601872c038073e00302400c39201c039f0018474061c800e01cf800c", + "0xf800c206030ea80700e7c006044018750038073e00308e00c39a01c039f0", + "0x39f0018048060b100e01cf800c07c030ec00700e7c00604001875803807", + "0x61f00184980600e00e5dc061f00181bc061ba00e01cf800c3c803015007", + "0x60690182e0039780187c0060170182e4038a00187c00612f0180e00389e", + "0x600701a01c520a22f02804f012018290061f00185dc061b800e288061f0", + "0xf800c0240305880700e7c0061e40180a8038073e0030d200c3b201c039f0", + "0x39f0018128061c700e01cf800c098030e100700e7c00612101870003807", + "0x38073e00302300c39601c039f0018120061c900e01cf800c23a030e4007", + "0xeb00700e7c006103018754038073e00302200c3a801c039f0018470061cd", + "0x70072f6030f800c0cc030dd00700e7c00603e018760038073e00302000c", + "0x5e00c3e00300b80c17201c5e80c3e00302b80c07001cbd00c3e00309300c", + "0x5d8bc17a5e80900c154030f800c2f6030dc007176030f800c0b20305c007", + "0x38073e0030f200c05401c039f00180700606b00e01cf800c00e034038aa", + "0x38b30187c0060330186e8038073e00300f00c5bc01c039f0018048060b1", + "0x61f001808c060b900e2d4061f00180800603800e2d0061f00180880600e", + "0x5b0b5168048061750187c0060b30186e0038ba0187c0061de0182e0038b6", + "0xb9e401c7c00681201c034061c497401c0900c3e0030e200c97201cba8ba", + "0x178073bc030f800c00e0300700700e7c00600701a01c1101d03803b1181e", + "0xf800c3c80301c007046080069f0018098ef00d2a201c1300c3e00300f00c", + "0x39db0198901400c3e00341180c29e01c0b80c3e00300b80c17001cf200c", + "0x39d70187c00602a0198980382a0187c006028019894038073e00300380d", + "0x61f00187900603800e0bc061f00180800600e00e0b4061f001875c06627", + "0x189ce05e710060330187c00602d0198a0038310187c0060170182e0039ce", + "0x39ca0187c0060073ae01c039f001876c0612900e01cf800c00e03403833", + "0x61f00182e4e500d39c01c5c80c3e00305c80c05e01c5c80c3e003003e29", + "0x60b70198a8038b70187c00603817003419807170030f800c00e0c403838", + "0x60b800e694061f00187900603800e0f0061f00180800600e00e69c061f0", + "0x380d00e0f8d21a50787100603e0187c0061a70198a0039a40187c006017", + "0x662700e40c061f00181000662600e100061f00180880662b00e01cf800c", + "0x38460187c00601c0180e00391c0187c006007018038038440187c006103", + "0x391d0901188e1c4018474061f00181100662800e120061f0018074060b8", + "0xf800c018031c500700e7c00600701a01c0680cc5a030061f001a01c0662c", + "0x38120180300900c3e0030e200c71801ce200c3e00300700c71601c0700c", + "0x38170187c00600d3c8034198073c8030f800c00e0c4038073e00300380d", + "0x380c01c01c0e00c018070061f00180780638c00e078061f001805c0638d", + "0x317007044030f800c01a0305c00703a030f800c0180301c007038030f800c", + "0x69f00187100662f00e080061f00180800602600e0800700d3e00300700c", + "0x91c43e0030118200440740e012c6001c1180c3e00301180c80801c119c4", + "0x31980700e7c00600701a01c1300cc64778061f001a0780663100e0780b9e4", + "0xf800c00e0340382a0198d4ed80c3e00341400cc6801c1400c3e0030ef00c", + "0x602d0193640382d0187c0061d73880371b0073ae030f800c00e82403807", + "0x38b93940cc076370627381780e3e00341680e02e790e24ba00e0b4061f0", + "0x39a70187c0060310180bc038b70187c006012018038038073e00300380d", + "0x61ce0182e00382f0187c00602f0180e0038b8070034f800c34e2dc06925", + "0x9200700e7c00600701a01cd280cc700f0061f001a2e0060eb00e738061f0", + "0x61f00180f80663a00e0f8061f00186900663900e690061f00180f0ed80d", + "0x602f0180e0038440187c006038018038039030187c0060400198ec03840", + "0x221c4018120061f001840c0663c00e118061f0018738060b800e470061f0", + "0xf800c3b60307800700e7c0061a50184a4038073e00300380d00e1202311c", + "0x61f00181280602f00e128061f001801f1e80723a030f800c00e75c03807", + "0x2612101a0cc039210187c00600706201c2600c3e00302511d01a7380384a", + "0x1c007244030f800c070030070070a0030f800c09c0331f00709c030f800c", + "0x2a80c3e00302800cc7801c2980c3e0030e700c17001c5900c3e00301780c", + "0x663f00e01cf800c3b60307800700e7c00600701a01c2a853164488e200c", + "0x38590187c0060570198ec038570187c0061260198e8039260187c0060b9", + "0x61f0018728060b800e170061f00180cc0603800e49c061f00180480600e", + "0x38073e00300380d00e17c2e85c24e7100605f0187c0060590198f00385d", + "0x39280187c00602a0198fc038073e00300700c04001c039f001871006640", + "0x61f00180480600e00e4a8061f00184a40663b00e4a4061f00184a00663a", + "0x612a0198f0038660187c0060170182e0038640187c0061e40180e00392b", + "0x39f00187100664000e01cf800c00e0340392f0cc190959c40184bc061f0", + "0x61f00180480600e00e1a4061f00180980663e00e01cf800c01c03010007", + "0x60690198f00386d0187c0060170182e00386b0187c0061e40180e003930", + "0x680701a0332100c0187c006807019904039330da1ac981c40184cc061f0", + "0x1c9007388030f800c01c031c880701c030f800c018031c800700e7c006007", + "0xf200c3e00300383100e01cf800c00e034038120180300900c3e0030e200c", + "0x601e018e480381e0187c006017018e4c038170187c00600d3c803419807", + "0x39c40187c00600e018000038073e00300680c3a801c0e00c018070061f0", + "0xb80c3e0030f200cb2c01cf200c3e00300900cb2a01c0900c3e003003e43", + "0x659500e0700f00d3e0030e201701803acb80702e030f800c02e03017807", + "0x38220187c0060220180bc038220187c00601d0196580381d0187c00601c", + "0x601e0182e4039de0187c00602001803803823040034f800c04401c06d98", + "0xf800c01a030e6807050098ef00e0180a0061f001808c0640400e098061f0", + "0x6007c8a01cf200c3e0030e200c00001c091c401a7c00600e01991003807", + "0x602f00e070061f00180780659600e078061f001805c0659500e05c061f0", + "0xf800c02403000007044074069f00187900e00c01d65c0381c0187c00601c", + "0xef00c05e01cef00c3e00301180cb2c01c1180c3e00301100cb2a01c1000c", + "0x61f00180a00659500e0a01300d3e0030101de03a03acb8073bc030f800c", + "0x1500701b6600382a0187c00602a0180bc0382a0187c0061db019658039db", + "0x39ce0187c0060260182e40382f0187c0061d70180380382d3ae034f800c", + "0x32300701a030f800c00e033230070627381780e0180c4061f00180b406404", + "0xf200c3e00300700c0a601c0900c3e00300680c0a601c0700c3e00300600c", + "0x1d280702e030060170187c0061c4018db0039c40187c0061e402403723807", + "0x61f0018034060b900e080061f001801c0600e00e0780b80d3e0030e200c", + "0x118203893cc038260187c006012018e70039de0187c00601e018e6c03823", + "0x61f00180300603800e0a0061f001801c118070440740e00e3e0030131de", + "0x6022019010039ce0187c0060280180980382f0187c00600e0182e00382d", + "0x71f00180cc189ce05e0b40956200e0cc061f00187900605300e0c4061f0", + "0x62d000e728061f00182e40648e00e2e4061f001875c0648d00e75c151db", + "0x5b80c3e00301c00c92001c039f001801c06807170033240380187c0069ca", + "0x601c0180380383c0187c0061a7019928039a70187c0060b702e03724807", + "0x60b800e0f8061f0018074060b900e690061f001876c0603800e694061f0", + "0x68072061001f1a434a048061030187c00603c01992c038400187c00602a", + "0x600e00e110061f00182e00664c00e01cf800c02e030e680700e7c006007", + "0x38480187c00601d0182e4038460187c0061db0180e00391c0187c00601c", + "0x2511d0901188e012018128061f00181100664b00e474061f00180a8060b8", + "0x900c3e0030f200cc9a01cf200c3e0030e200ca3001c039f001801c6e007", + "0xe00d3e00300900c90801c0f00c3e0030039d700e05c061f001801ceb807", + "0xf800c0180301c0073bc030f800c00e0300700700e7c00601c0192140381d", + "0xf00c12201ced80c3e00300b80c12201c1400c3e00300e80c6f401c1300c", + "0x1180c90e01c11820044038f800c05476c140263bc04a43007054030f800c", + "0xe702f01c7c0061d7019224038073e00300380d00e0b40664e3ae030f800d", + "0x603301849c039ca066034f800c05e0302c80700e7c0060310184a403831", + "0x612700e2e01c00d3e0030e700c0b201c5c80c3e0030e500c0b801c039f0", + "0x5c80c38801c039f001801c6700716e030f800c1700302e00700e7c006038", + "0x69f001a2dc5c80d0407124500716e030f800c16e030e2007172030f800c", + "0x1a9807080030f800c00e34c038073e00300380d00e0f8d21a501d93c1e1a7", + "0x8e00c3e00301e00c17001c2200c3e0030d380c07001c8180c3e00302000c", + "0x1ab00700e7c00600701a01c03e5001801cad00708c030f800c206031aa007", + "0x8e00c3e0030d200c17001c2200c3e0030d280c07001c2400c3e00301f00c", + "0xf800c09403247007094030f800c08c0324680708c030f800c090031aa007", + "0x38dc00e01cf800c00e034039210199442600c3e00348e80c5a001c8e80c", + "0xdb0070a0030f800c09c038069b400e138061f00181300649000e01cf800c", + "0x2980c3e00302200c07001c5900c3e00301100c01c01c9100c3e00302800c", + "0x930550a62c8e200c24c030f800c244030dc0070aa030f800c2380305c007", + "0x61ba00e01cf800c01c0303580700e7c0060071b801c039f001801c06807", + "0x39270187c0060440180e0038590187c006022018038038570187c006121", + "0x385d0b849c2c9c4018174061f001815c061b800e170061f0018470060b8", + "0x70070be030f800c05a030dd00700e7c00600e0181ac038073e00300380d", + "0x9500c3e00300680c17001c9480c3e00301000c07001c9400c3e00301100c", + "0x900c3e00300380c01c01c9592a2524a0e200c256030f800c0be030dc007", + "0xb9e402403b2900702e030f800c01a030298073c8030f800c01803029807", + "0xe80c3e00340e00c5d601c0e01e01a7c0061c401994c039c401c034f800c", + "0xf800c03c0309180700e7c00601d0184a4038073e00300380d00e08806654", + "0x39f001801c0680700f954060072b401c1180c3e00301000c1dc01c1000c", + "0x39de0187c0060071a601c039f0018078061db00e01cf800c04403094807", + "0x61f00180380600e00e08c061f0018098060ee00e098061f00187780611e", + "0x38120187c006007018038039db050034061db0187c0060230183b803828", + "0x60173c80480765600e05c061f00180340605300e790061f001803006053", + "0x32b81d0187c00681c018bac0381c03c034f800c38803329807388038069f0", + "0x61f00180780612300e01cf800c03a0309480700e7c00600701a01c1100c", + "0x38073e00300380d00e01f2c00c00e568038230187c0060200183b803820", + "0x8f0073bc030f800c00e34c038073e00300f00c3b601c039f001808806129", + "0x1400c3e00300700c01c01c1180c3e00301300c1dc01c1300c3e0030ef00c", + "0x64b900e710061f001801e6c0073b60a00680c3b6030f800c04603077007", + "0x381e02e034f800c01a0332c8073c8030f800c00e08c038120187c0061c4", + "0x900c3e00300900c9b201cf200c3e0030f200c04c01c039f0018078061d9", + "0x600701a01c1182004403b2d01d038034f800d01c048f200c00e04a97007", + "0x601c0180e0038260187c0061de018d4c039de0187c0060071a601c039f0", + "0x395a00e0a8061f00180980635400e76c061f0018074060b800e0a0061f0", + "0x60220180e0039d70187c006023018d58038073e00300380d00e01f2d80c", + "0x648d00e0a8061f001875c0635400e76c061f0018080060b800e0a0061f0", + "0x32e1ce0187c00682d018b400382d0187c00602f0192380382f0187c00602a", + "0x603302e0372e807066030f800c39c0324800700e7c00600701a01c1880c", + "0x60b800e0e0061f00180a00603800e2e4061f00187280665e00e728061f0", + "0x600701a01c5b8b8070038060b70187c0060b901997c038b80187c0061db", + "0x60280180e0039a70187c006031019980038073e00300b80c3b201c039f0", + "0x1e00e018690061f001869c0665f00e694061f001876c060b800e0f0061f0", + "0xf800c00e08c038120187c0061c40192e4039c40187c0060079ba01cd21a5", + "0xf200c04c01c039f0018078061d800e0780b80d3e00300680ccc201cf200c", + "0xf800d01c048f200c00e04a97007024030f800c0240326c8073c8030f800c", + "0x39de0187c0060071a601c039f001801c068070460801100ecc40740e00d", + "0x61f0018074060b800e0a0061f00180700603800e098061f001877806353", + "0x38073e00300380d00e01f3180c00e5680382a0187c006026018d50039db", + "0x61f0018080060b800e0a0061f00180880603800e75c061f001808c06356", + "0x602f0192380382f0187c00602a0192340382a0187c0061d7018d50039db", + "0x24800700e7c00600701a01c1880ccc8738061f001a0b4062d000e0b4061f0", + "0x61f00187280666600e728061f00180cc0b80dcca01c1980c3e0030e700c", + "0x60b901999c038b80187c0061db0182e0038380187c0060280180e0038b9", + "0x38073e00300b80c3b001c039f001801c0680716e2e01c00e0182dc061f0", + "0x61f001876c060b800e0f0061f00180a00603800e69c061f00180c406668", + "0x39c40187c0060079c201cd21a5078038061a40187c0061a701999c039a5", + "0xb80c3e00300382300e790061f0018710064b900e048061f0018038060b5", + "0xf800c02e0301300700e7c00601c0187580381c03c034f800c01a03334807", + "0xe80d3e0034091e402e03003812a5c01cf200c3e0030f200c9b201c0b80c", + "0x635300e098061f001801c6980700e7c00600701a01cef02304003b35022", + "0x382a0187c0060220182e0039db0187c00601d0180e0038280187c006026", + "0x635600e01cf800c00e03403807cd60300395a00e75c061f00180a006354", + "0x382a0187c0060230182e0039db0187c0060200180e00382d0187c0061de", + "0x61f00187380648e00e738061f001875c0648d00e75c061f00180b406354", + "0x1880c92001c039f001801c06807066033360310187c00682f018b400382f", + "0x38380187c0060b90199b8038b90187c0061ca03c03736807394030f800c", + "0x61f00180e00666f00e2dc061f00180a8060b800e2e0061f001876c06038", + "0x667000e01cf800c03c030eb00700e7c00600701a01cd38b7170038061a7", + "0x39a40187c00602a0182e0039a50187c0061db0180e00383c0187c006033", + "0x3ab500e078061f001801cfa80707c690d280e0180f8061f00180f00666f", + "0x380c01c01c0e81c01a7c0061c40184c0038073e0030038dc00e01cf800c", + "0x5c007054030f800c01a0305c8073b6030f800c0180301c007050030f800c", + "0x900d3e00300900c87801c1680c3e00300e80c24401ceb80c3e00300700c", + "0xe700c16401ce71e401a7c0061e4018ddc0382f0187c00602f0180bc0382f", + "0x131de046080110123e0030e702f05a75c151db05005c4480739c030f800c", + "0x6031018578038073e00300380d00e0cc06671062030f800d04c03045807", + "0x9480700e7c00600701a01c1c00cce42e4061f001a728062eb00e728061f0", + "0x221030800f8d21a507869c5b8b80467c00601c018460038073e00305c80c", + "0x384a3c8034f800c3c8031bb80723a048069f00180480643c00e1202311c", + "0x61f00184840632600e484061f001801c69807098030f800c09447406b64", + "0x60230182e4039260187c0060200180e0038550187c0060220180380384e", + "0x636600e49c061f00181200636500e164061f0018778060b800e15c061f0", + "0x2e1270b215c9305502f8680385d0187c00604e0185980385c0187c00604c", + "0x2980cc3601c0b80c3e00300b81e01ab640385316405c910500247c00605d", + "0x38640187c0061220180e0038073e00300380d00e4a0066730be030f800d", + "0x9580c1e601c9592a252038f800c0cc190068f600e198061f00182c8060b8", + "0x3593001a7c00605f019878038073e00300380d00e1a40667425e030f800d", + "0x606d3c80480767500e1b4061f00184bc0610400e01cf800c0d603094807", + "0x61f00184c02311c08840c2003e3486941e1a716e2e01185000e4cc061f0", + "0x612a0182e0038770187c0061290180e0038760187c0060500180380386f", + "0x967600e530061f00184cc065d000e52c061f00181bc0612200e1e4061f0", + "0x66770fa030f800d286030930072861d09d0713887c00614c2961e43b876", + "0xf800c10403094807104200069f00181f4061b200e01cf800c00e0340387f", + "0x60170182e4038840187c00613a0180e0039540187c00607101803803807", + "0x395a00e2c4061f00182000612200e558061f00181d0060b800e218061f0", + "0x6071018038038890187c00607f0186e8038073e00300380d00e01f3c00c", + "0x60b800e234061f001805c060b900e578061f00184e80603800e22c061f0", + "0x68072cc23c4695e116048061660187c0060890186e00388f0187c006074", + "0x2300c38001c039f001817c0662200e01cf800c170030ec80700e7c006007", + "0x6103018720038073e00302200c38e01c039f0018470061c200e01cf800c", + "0xf800c348030e680700e7c00603e01872c038073e00302000c39201c039f0", + "0x39f001869c061d600e01cf800c078030ea80700e7c0061a501875003807", + "0x38073e0030f200c05401c039f0018048060b100e01cf800c16e030ec007", + "0x61f00184a40603800e24c061f00181400600e00e244061f00181a4061ba", + "0x60910186e00389a0187c00612a0182e0039720187c0060170182e403967", + "0xf800c170030ec80700e7c00600701a01c4a89a2e459c49812018254061f0", + "0x39f0018118061c000e01cf800c0240305880700e7c0061e40180a803807", + "0x38073e00308180c39001c039f0018110061c700e01cf800c238030e1007", + "0xea00700e7c0061a4018734038073e00301f00c39601c039f0018100061c9", + "0x61d800e01cf800c34e030eb00700e7c00603c018754038073e0030d280c", + "0x1c007138030f800c0a003007007084030f800c250030dd00700e7c0060b7", + "0x5000c3e00305900c17001c4f00c3e00300b80c17201cbb80c3e00309100c", + "0x38073e00300380d00e5e05009e2ee2700900c2f0030f800c084030dc007", + "0x16f00700e7c0060120182c4038073e0030f200c05401c039f00180e006129", + "0x38840187c0060200180e0039540187c006022018038038073e00300f00c", + "0x61f00180700612200e558061f0018778060b800e218061f001808c060b9", + "0x60a40186d8038a40187c0060a2162034da007144030f800c00e34c038b1", + "0x60b900e2f4061f00182100603800e5e8061f00185500600e00e5ec061f0", + "0x60aa0187c00617b0186e0038bb0187c0061560182e0038bc0187c006086", + "0x60b100e01cf800c3c80301500700e7c00600701a01c550bb1782f4bd012", + "0x1980c37401c039f00180700606b00e01cf800c03c0316f00700e7c006012", + "0x5c80716a030f800c0400301c007168030f800c04403007007166030f800c", + "0xba80c3e00305980c37001c5d00c3e0030ef00c17001c5b00c3e00301180c", + "0x6e00700e7c00600756a01c0f00c3e0030039f500e5d45d0b616a2d00900c", + "0x38280187c0060070180380381d038034f800c3880309800700e7c006007", + "0x61f0018038060b800e0a8061f0018034060b900e76c061f001803006038", + "0x1780c05e01c1781201a7c0060120190f00382d0187c00601d018488039d7", + "0x38263bc08c100220247c00602f05a75c151db050790b380705e030f800c", + "0xf800c0380308c00700e7c00600701a01c1880ccf2738061f001a09806172", + "0x8e80c3e00301100c01c01c8184007c690d283c34e2dc5c03817272819823", + "0xf800c3bc0305c007098030f800c0460305c807094030f800c0400301c007", + "0x602f00e1400900d3e00300900c87801c2700c3e00302000c6de01c9080c", + "0x9100c3e00309100c05e01c911e401a7c0061e40190f0038500187c006050", + "0xf00d5b201c2404602e470220123e00309105009c4842604a23a05f3d007", + "0x39f001801c068070a60333e0b20187c0068480199ec038170187c006017", + "0x60570184a40385724c034f800c1640333e8070aa030f800c39c0304d007", + "0xd38b71700e05c9ca06608c280070b2030f800c3c81540900ecfc01c039f0", + "0x8e00c07001c9480c3e00302200c01c01c9380c3e00308192607c690d283c", + "0x2eb0070c8030f800c24e03091007256030f800c08c0305c007254030f800c", + "0x39280be1742e1c43e0030330642564a894812cfe01c3300c3e00302c80c", + "0xf800c25e030d900700e7c00600701a01c3480cd004bc061f001a4a006126", + "0x3693001a6d00386d0187c0060071a601c039f00181ac0612900e1ac9800d", + "0x1c0070e2030f800c0b8030070070de030f800c266030db007266030f800c", + "0xa180c3e00302f80c17001c3a00c3e00300b80c17201c9d00c3e00302e80c", + "0x38073e00300380d00e1d8a18742741c40900c0ec030f800c0de030dc007", + "0x61f00181740603800e1e4061f00181700600e00e1dc061f00181a4061ba", + "0x60770186e00387d0187c00605f0182e00394c0187c0060170182e40394b", + "0xf800c066030ec80700e7c00600701a01c3f87d29852c3c8120181fc061f0", + "0x39f00180f8061c200e01cf800c0240305880700e7c0061030186f803807", + "0x38073e00301e00c39201c039f0018694061c800e01cf800c348030e3807", + "0xea80700e7c0060b8018750038073e00305b80c39a01c039f001869c061cb", + "0x60b100e01cf800c394030ec00700e7c0060b9018758038073e00301c00c", + "0x600e00e200061f001814c061ba00e01cf800c39c0334080700e7c0061e4", + "0x38840187c0060170182e4039540187c00611c0180e0038820187c006044", + "0xab08610855041012018558061f0018200061b800e218061f0018118060b8", + "0x5880700e7c00601c0181ac038073e0030f200c16201c039f001801c06807", + "0x7007162030f800c062030dd00700e7c00601e018b78038073e00300900c", + "0xaf00c3e00301180c17201c4580c3e00301000c07001c4480c3e00301100c", + "0x4695e1162240900c11e030f800c162030dc00711a030f800c3bc0305c007", + "0x600caa401c039f001801c0680701a0334180c0187c006807019a080388f", + "0x600c024030f800c388032aa007388030f800c01c032a980701c030f800c", + "0x61f0018034f200d06601cf200c3e00300383100e01cf800c00e03403812", + "0x970070380300601c0187c00601e0195500381e0187c00601701955403817", + "0x600e01839c038073e00300380d00e7100668401c034069f001a0300380d", + "0x395a00e05c061f00180480612c00e790061f00180340600e00e048061f0", + "0xf800c03c0307480703c030f800c00e34c038073e00300380d00e01f4280c", + "0xf200c75601c0b80c3e00300e00c25801cf200c3e0030e200c01c01c0e00c", + "0xf800c388031ca8070440740680c044030f800c02e0334300703a030f800c", + "0x25c807038038069f00180380662f00e05c061f00180480639700e7900900d", + "0xf01d01801c0952e00e0740680d3e00300680cc5c01c0f00c3e00300e00c", + "0x61e4018e5c038073e00300380d00e098ef02301da1c1002201a7c006817", + "0x603800e0a8061f001876c0700dc6c01ced80c3e003003a0900e0a0061f0", + "0x6828054034100220254b80382a0187c00602a019364038220187c006022", + "0x1980c3e0030038d300e01cf800c00e0340383139c0bc0768805a75c069f0", + "0xf800c05a0305c007172030f800c3ae0301c007394030f800c066031a9807", + "0x38073e00300380d00e2e01c0b901c0305c00c3e0030e500c6a801c1c00c", + "0x61f0018738060b800e69c061f00180bc0603800e2dc061f00180c406356", + "0x32000700e7c00600701a01cd283c34e038061a50187c0060b7018d500383c", + "0x635600e01cf800c01a0301000700e7c0061e40183c0038073e00300700c", + "0x38400187c0061de0182e00383e0187c0060230180e0039a40187c006026", + "0x1bd007018030f800c00e033448072061001f00e01840c061f001869006354", + "0x61f00180340601c00e01cf800c00e3700380d0180300680c3e00300600c", + "0x60cf00e01cf800c00e034039e4019a28091c401a7c00680e0185540380e", + "0x381c0187c0060170183440381e0187c0061c4018570038170187c006012", + "0xe80c2b601c0e80c3e0030038d300e01cf800c00e03403807d160300395a", + "0x2e007038030f800c0440306880703c030f800c3c8030ae007044030f800c", + "0x1180c3e00340e00c2a401c1000c3e00301000c38801c1000c3e00300f00c", + "0xf800c00e75c038260187c006023018358038073e00300380d00e7780668c", + "0x600c07001c1780c3e00300380c01c01ced80c3e00301300c1b001c1400c", + "0x17807066030f800c05003048807062030f800c040030e200739c030f800c", + "0x34680705a75c1500e3e0030e50330627381781241601ce500c3e0030ed80c", + "0x69f00182e40668f00e01cf800c00e03403838019a385c80c3e00341680c", + "0x605900e01cf800c00e0340383c019a44d380c3e00345b80cd2001c5b8b8", + "0x383e0187c0061a4018170038073e0030d280c24e01cd21a501a7c0061a7", + "0xf800c2060334a007206030f800c0802e006e9300e100061f00180f806692", + "0x2200cd2a01c2300c3e0030eb80c07001c8e00c3e00301500c01c01c2200c", + "0x61f00180f00669600e01cf800c00e0340384808c4700700c090030f800c", + "0x1500c01c01c2600c3e00302500cd2801c2500c3e00308e8b801ba4c0391d", + "0x700c0a0030f800c0980334a80709c030f800c3ae0301c007242030f800c", + "0x602a018038039220187c006038018828038073e00300380d00e14027121", + "0x5900e018154061f00184880669500e14c061f001875c0603800e2c8061f0", + "0x9300c3e0030038d300e01cf800c3bc0309480700e7c00600701a01c2a853", + "0x6059019a50038590187c006057040037498070ae030f800c24c0334b007", + "0x669500e174061f00180300603800e170061f001801c0600e00e49c061f0", + "0x680cd3001c0680c3e00300380cd2e01c2f85d0b80380605f0187c006127", + "0x1780700e7c0061c40182c403812388034f800c01c0304a80701c030f800c", + "0x69f00180700f00d08401c0e00c3e00300600c12201c0f00c3e00300900c", + "0xf800c3c80304880703a030f800c00e34c038073e00300b80c25201c0b9e4", + "0x19e80700e7c0060071b801c1002201a0301000c3e00300e80c24001c1100c", + "0xf200c3e003003b6d00e01cf800c00e03403812019a64e200c3e00340680c", + "0xf800c03c0301780700e7c0060170182c40381e02e034f800c3c80304a807", + "0x9480703a070069f00180801100d08401c1000c3e00300700c12201c1100c", + "0x39db0187c00600c0180e0038280187c006007018038038073e00300e80c", + "0xeb82a3b60a0e269b00e75c061f00180700609100e0a8061f00187100669a", + "0xf800c00e0340382f019a701680c3e00341300c68201c131de046038f800c", + "0x6023018038038073e00301880c25201c189ce01a7c00602d018d0c03807", + "0x395a00e2e4061f00187380609100e728061f00187780603800e0cc061f0", + "0x6023018038038380187c00602f0192c8038073e00300380d00e01f4e80c", + "0x5c00e01869c061f00180e0064b100e2dc061f00187780603800e2e0061f0", + "0x69f00180f00609500e0f0061f001801db700700e7c00600701a01cd38b7", + "0x600e018244039030187c0061a40180bc038073e0030d280c16201cd21a5", + "0x9000700e7c0060400184a40384007c034f800c08840c0684200e110061f0", + "0x69f00184742400dd3c01c8e80c3e00301f00c12201c2400c3e00300900c", + "0x600c0180e0038330187c006007018038038073e00302300c25201c2311c", + "0x5c80d95e01c2500c3e0030038d300e2e4061f00184700609100e728061f0", + "0x384e0187c006033018038039210187c00604c0192c00384c0187c00604a", + "0x6e0072441402700e018488061f0018484064b100e140061f001872806038", + "0x71a500e790061f00187900603c00e790061f001801cd380700e7c006007", + "0xe200cd4001c039f001801c0680703a07006e9f03c05c069f001a79006007", + "0x700700e7c00600719c01cef00c3e00300900c03801c11820044038f800c", + "0x600701a01ced80cd420a01300d3e0034ef00c2aa01c0b80c3e00300b80c", + "0x1500c1a201ceb80c3e00301300c2b801c1500c3e00301400c19e01c039f0", + "0x61f001801c6980700e7c00600701a01c03ea201801cad00705a030f800c", + "0x61ce018344039d70187c0061db018570039ce0187c00602f01856c0382f", + "0x615200e0c4061f00180c4061c400e0c4061f001875c0605c00e0b4061f0", + "0x5c80c3e00301980c1ac01c039f001801c06807394033518330187c00682d", + "0xf800c07003017807170030f800c0620300e007070030f800c1720306c007", + "0x6780700e7c00600701a01c1e00cd4869c5b80d3e00345c00c2aa01c1c00c", + "0x1f00c3e0030d280c1a201cd200c3e00305b80c2b801cd280c3e0030d380c", + "0x615b00e100061f001801c6980700e7c00600701a01c03ea501801cad007", + "0x383e0187c006103018344039a40187c00603c018570039030187c006040", + "0x61f001a0f80615200e110061f0018110061c400e110061f00186900605c", + "0x1100dd4e01c2400c3e00308e00c1ac01c039f001801c0680708c0335311c", + "0x384a0187c00604a0180bc0384a0187c0060480183600391d0187c006038", + "0xf800c0980301780723a030f800c23a03017807098030f800c09408006ea7", + "0xf800c01c03354807244140271213887c006023098474069c4d5001c2600c", + "0x602f00e138061f00181380602f00e484061f00184840607d00e2c80700d", + "0x69f001a2c80f01701c694039220187c0061220180bc038500187c006050", + "0x2700eb1c01c039f001801c6e00700e7c00600701a01c2b92601baa82a853", + "0x9480c3e00302a80c07001c9400c3e00302980c01c01c2c80c3e003091050", + "0xf800c0b2032c7807256030f800c01c0301e007254030f800c2420303e807", + "0xe21f00181983212b2544a4941e4b2001c3300c3e00302200c38801c3200c", + "0x38073e00300380d00e1a4066ab25e030f800d0be032c88070be1742e127", + "0x606d019ab40386d0187c00606b260037560070d64c0069f00184bc06593", + "0x607d00e1c4061f00181700603800e1bc061f001849c0600e00e4cc061f0", + "0x380d00e1d09d0710de710060740187c006133019ab80393a0187c00605d", + "0x603800e1d8061f001849c0600e00e50c061f00181a4066af00e01cf800c", + "0x614b0187c006143019ab8038790187c00605d0181f4038770187c00605c", + "0x60440184a8038073e0030038dc00e01cf800c00e0340394b0f21dc3b1c4", + "0xf800c0a00305880700e7c00600e019ac0038073e00302700c16201c039f0", + "0x3e80c3e00300392800e530061f001801ceb80700e7c0061220182c403807", + "0xf800c00e0c40387f0187c00607d298034e70070fa030f800c0fa03017807", + "0x600e00e550061f0018208066af00e208061f00181fc4000d06601c4000c", + "0x39560187c0061210181f4038860187c0060570180e0038840187c006126", + "0x612900e01cf800c00e034038b12ac218421c40182c4061f0018550066ae", + "0x69807112030f800c07008806ea700e01cf800c01c0335800700e7c006046", + "0xf800c2bc08c10089389ac40395e0187c00608b018c980388b0187c006007", + "0x38930187c00609301859803893122598479c43e00304680c41001c4680c", + "0x61f00182440602f00e598061f00185980602f00e23c061f001823c0602f", + "0xb380c25201c039f001801c068072e4033591670187c006893018bac03891", + "0x602f00e254061f00182684780dd4e01c4d00c3e003003b6e00e01cf800c", + "0x60b100e278bb89c084710f800c1225984a80d389aa0038950187c006095", + "0x602f00e280061f00181080607d00e01cf800c13c0305880700e7c006177", + "0x61720184a4038073e00300380d00e01f5980c00e568039780187c00609c", + "0x5200c05e01c5200c3e00305116601ba9c038a20187c0060076dc01c039f0", + "0x5e80c16201c5e0bd2f45ece21f00182445208f01a71354007148030f800c", + "0xbd00c05e01c5000c3e0030bd80c0fa01c039f00182f0060b100e01cf800c", + "0x66ad00e2ec061f00185e02200dd5801c039f001801c6e0072f0030f800c", + "0x38b40187c00601e0180e0038b30187c006017018038038aa0187c0060bb", + "0x38b616a2d0599c40182d8061f00182a8066ae00e2d4061f00182800607d", + "0x38d300e01cf800c01c0335800700e7c0061ca0184a4038073e00300380d", + "0x61f00185d411820044713588072ea030f800c17403178807174030f800c", + "0x1780730e030f800c30e030b300730e304c20bf3887c00617101882003971", + "0x6080c3e00306080c05e01cc200c3e0030c200c05e01c5f80c3e00305f80c", + "0x60c30184a4038073e00300380d00e5a0066b4186030f800d30e03175807", + "0xb080c05e01cb080c3e0030640bf01ba9c038c80187c0060076dc01c039f0", + "0xb000c16201c671602c432ce21f0018304c216101a713540072c2030f800c", + "0xb100c05e01caa80c3e00306580c0fa01c039f0018338060b100e01cf800c", + "0xf800c2d00309480700e7c00600701a01c03eb501801cad00719e030f800c", + "0x60d10180bc038d10187c00615c308037538072b8030f800c00edb803807", + "0x615b0182c4039522b634cad1c43e0030608d117e034e26a800e344061f0", + "0x60d30180bc039550187c00615a0181f4038073e0030a900c16201c039f0", + "0x6b00cd5a01c6b00c3e00306783101bab0038073e0030038dc00e33c061f0", + "0x3e80729e030f800c03c0301c0072a2030f800c02e030070071b0030f800c", + "0x680729254ca7951388030a480c3e00306c00cd5c01ca980c3e0030aa80c", + "0xe200cd6c01c039f0018038066b000e01cf800c0240309500700e7c006007", + "0x61450180bc039450187c00600725001c6e00c3e0030039d700e01cf800c", + "0x683300e4ec061f001801c18807288030f800c28a370069ce00e514061f0", + "0x9b00c3e00300e00c01c01c7080c3e00309c80cd5e01c9c80c3e0030a213b", + "0xf800c1c203357007262030f800c01a0303e8071c6030f800c03a0301c007", + "0xe200c3e003003eb700e01cf800c01a030e38071ca4c4719363880307280c", + "0xf800c3c8030178073c8030f800c024032cb007024030f800c388032ca807", + "0x381c0187c00601e0196540381e02e034f800c01c7900600eb2e01cf200c", + "0xf800c03a01c06d9800e074061f00180740602f00e074061f001807006596", + "0x640400e778061f001805c060b900e08c061f00180880600e00e0801100d", + "0x66b900e0380380d3e00300380cd7001c131de046038060260187c006020", + "0x38073e0030f200c3b601c039f00180480602a00e790091c401c7c00600e", + "0xf800c03a07006eba00e074061f00180340609100e070061f0018710060b2", + "0x66b900e0880380d3e00300380cd7001c039f00180780612900e0780b80d", + "0x38073e0030ef00c3b601c039f00180800602a00e7781182001c7c006022", + "0xf800c05476c06eba00e0a8061f001805c0609100e76c061f001808c060b2", + "0x1500705e0b4eb80e3e00300380cd7201c039f00180a00612900e0a01300d", + "0x48807066030f800c05e0302980700e7c00602d0180a8038073e0030eb80c", + "0xf800c06203094807062738069f00187281980d17e01ce500c3e00301300c", + "0xf800c39c03048807070030f800c01803048807172030f800c00e34c03807", + "0x69f001801c066bb00e2dc5c03801c0305b80c3e00305c80c24001c5c00c", + "0x61db00e01cf800c024030150073c8048e200e3e00300700cd7801c07007", + "0x35d00703a030f800c01a03048807038030f800c3880305900700e7c0061e4", + "0x69f001801c066bb00e01cf800c03c0309480703c05c069f00180740e00d", + "0x61db00e01cf800c040030150073bc08c1000e3e00301100cd7801c11007", + "0x35d007054030f800c02e030488073b6030f800c0460305900700e7c0061de", + "0x71f001801c066bc00e01cf800c05003094807050098069f00180a8ed80d", + "0x602f01814c038073e00301680c05401c039f001875c0602a00e0bc169d7", + "0x383139c034f800c3940cc068bf00e728061f00180980609100e0cc061f0", + "0x38380187c00600c018244038b90187c0060071a601c039f00180c406129", + "0x6e00716e2e01c00e0182dc061f00182e40612000e2e0061f001873806091", + "0x1c007038030f800c00e03007007024030f800c01a0335e80700e7c006007", + "0x1000c3e0030e200c12201c1100c3e00300900c0fe01c0e80c3e00300600c", + "0x35f0230187c00681e018d040381e02e790071f00180801101d0387122d007", + "0x60280184a40382804c034f800c046031a180700e7c00600701a01cef00c", + "0x65e400e0a8061f001876c1300e01d78c039db0187c0060071a601c039f0", + "0x382f0187c0060170180e00382d0187c0061e4018038039d70187c00602a", + "0x700c24e01c039f001801c0680739c0bc1680e018738061f001875c065c7", + "0x603800e0cc061f00187900600e00e0c4061f0018778065c600e01cf800c", + "0x60071b801c5c9ca066038060b90187c00603101971c039ca0187c006017", + "0x600c07001c0e00c3e00300380c01c01c0900c3e00300680cd7e01c039f0", + "0x22d007040030f800c38803048807044030f800c0240303f80703a030f800c", + "0xef00cd8008c061f001a0780634100e0780b9e401c7c0060200440740e1c4", + "0x39f00180a00612900e0a01300d3e00301180c68601c039f001801c06807", + "0x602a0197900382a0187c0061db04c038075e300e76c061f001801c69807", + "0x65c700e0bc061f001805c0603800e0b4061f00187900600e00e75c061f0", + "0xf800c01c0309380700e7c00600701a01ce702f05a038061ce0187c0061d7", + "0x60170180e0038330187c0061e4018038038310187c0061de01971803807", + "0x39f001801c6e0071727281980e0182e4061f00180c4065c700e728061f0", + "0xf800c0180301c007038030f800c00e03007007024030f800c01a03360807", + "0xe1c48b401c1000c3e0030e200c12201c1100c3e00300900c0fe01c0e80c", + "0x68073bc033610230187c00681e018d040381e02e790071f00180801101d", + "0x6980700e7c0060280184a40382804c034f800c046031a180700e7c006007", + "0x61f00180a8065e400e0a8061f001876c1300e01d78c039db0187c006007", + "0x61d701971c0382f0187c0060170180e00382d0187c0061e4018038039d7", + "0x38073e00300700c24e01c039f001801c0680739c0bc1680e018738061f0", + "0x61f001805c0603800e0cc061f00187900600e00e0c4061f0018778065c6", + "0x700c3e00300380cd8601c5c9ca066038060b90187c00603101971c039ca", + "0x60173c8036c580702e030f800c01a030488073c8030f800c01c032c5007", + "0x600c12201c0f00c3e0030038d300e01cf800c02403094807024710069f0", + "0x700c044030f800c03c0309000703a030f800c38803048807038030f800c", + "0xf2012388038f800c01c0336280701c01c069f001801c066c400e0880e81c", + "0xe00c3e0030e200c05e01c039f00187900602a00e01cf800c02403015007", + "0xf00c25201c0f01701a7c00601d0380342100703a030f800c01a03048807", + "0xef023040038f800c0440336280704401c069f001801c066c400e01cf800c", + "0xed80c3e00301180c16401c039f00187780602a00e01cf800c04003058807", + "0x1400c25201c1402601a7c00602a3b60375d007054030f800c02e03048807", + "0x1500700e7c0061d70182c40382f05a75c071f001801c066c500e01cf800c", + "0x39ca0187c006026018244038330187c00602f0182c8038073e00301680c", + "0x61f001801c6980700e7c0060310184a40383139c034f800c3940cc06eba", + "0x60b9018480038b80187c0061ce018244038380187c00600c018244038b9", + "0x600e019b1c0380e00e034f800c00e0336300716e2e01c00e0182dc061f0", + "0x602f00e01cf800c3c80301500700e7c0060120180a8039e4024710071f0", + "0xb80d3e00300e81c01a1080381d0187c00600d0182440381c0187c0061c4", + "0x6022019b1c0382200e034f800c00e0336300700e7c00601e0184a40381e", + "0x60b200e01cf800c3bc0301500700e7c0060200182c4039de046080071f0", + "0x1300d3e0030151db01bae80382a0187c006017018244039db0187c006023", + "0xeb80c16201c1782d3ae038f800c00e0336380700e7c0060280184a403828", + "0x1300c12201c1980c3e00301780c16401c039f00180b40602a00e01cf800c", + "0x38073e00301880c25201c189ce01a7c0061ca0660375d007394030f800c", + "0x5c00c3e0030e700c12201c1c00c3e00300600c12201c5c80c3e0030038d3", + "0x700701a7c006007019b20038b71700e00700c16e030f800c17203090007", + "0x61e40182c4038073e00300900c16201cf2012388038f800c01c03103807", + "0xe00d08401c0e80c3e00300680c12201c0e00c3e0030e200c05e01c039f0", + "0x1100701a7c006007019b20038073e00300f00c25201c0f01701a7c00601d", + "0x61de0182c4038073e00301000c16201cef023040038f800c04403103807", + "0xed80d08401c1500c3e00300b80c12201ced80c3e00301180c05e01c039f0", + "0x169d701c7c00600701881c038073e00301400c25201c1402601a7c00602a", + "0x61f00180bc0602f00e01cf800c05a0305880700e7c0061d70182c40382f", + "0x612900e0c4e700d3e0030e503301a108039ca0187c00602601824403833", + "0x609100e0e0061f00180300609100e2e4061f001801c6980700e7c006031", + "0x380cd9201c5b8b8070038060b70187c0060b9018480038b80187c0061ce", + "0x38073e00300900c05401c091c401a7c00600e019b280380e00e034f800c", + "0xf800c03807806eba00e070061f00180340609100e078061f0018710060b2", + "0x602a00e0880e80d3e00300380cd9401c039f001805c0612900e05cf200d", + "0x35d00704c030f800c3c8030488073bc030f800c0440305900700e7c00601d", + "0x1400c3e0030038d300e01cf800c04603094807046080069f0018098ef00d", + "0xf800c05003090007054030f800c040030488073b6030f800c01803048807", + "0xf800c01c0336600701c01c069f001801c066cb00e75c151db01c030eb80c", + "0x680c12201c0f00c3e0030e200c16401c039f00180480602a00e048e200d", + "0x38073e00300b80c25201c0b9e401a7c00601c03c0375d007038030f800c", + "0x61f0018088060b200e01cf800c03a03015007044074069f001801c066cc", + "0x612900e08c1000d3e0030131de01bae8038260187c0061e4018244039de", + "0x609100e76c061f00180300609100e0a0061f001801c6980700e7c006023", + "0x380cd9a01ceb82a3b6038061d70187c0060280184800382a0187c006020", + "0x38073e00300900c05401c091c401a7c00600e019b380380e00e034f800c", + "0xf800c03807806eba00e070061f00180340609100e078061f0018710060b2", + "0x602a00e0880e80d3e00300380cd9c01c039f001805c0612900e05cf200d", + "0x35d00704c030f800c3c8030488073bc030f800c0440305900700e7c00601d", + "0x1400c3e0030038d300e01cf800c04603094807046080069f0018098ef00d", + "0xf800c05003090007054030f800c040030488073b6030f800c01803048807", + "0xf800c01c0336800701c01c069f001801c066cf00e75c151db01c030eb80c", + "0x680c12201c0f00c3e0030e200c16401c039f00180480602a00e048e200d", + "0x38073e00300b80c25201c0b9e401a7c00601c03c0375d007038030f800c", + "0x61f0018088060b200e01cf800c03a03015007044074069f001801c066d0", + "0x612900e08c1000d3e0030131de01bae8038260187c0061e4018244039de", + "0x609100e76c061f00180300609100e0a0061f001801c6980700e7c006023", + "0x600c07001ceb82a3b6038061d70187c0060280184800382a0187c006020", + "0xb9e401c7c00601d0380347b00703a030f800c01c0305c007038030f800c", + "0x1100c20801c039f001801c06807040033688220187c00681e0183cc0381e", + "0x5c80705a030f800c3c80301c0073ae030f800c00e03007007046030f800c", + "0x1880c3e0030e200c24401ce700c3e00300b80c17001c1780c3e00300680c", + "0x1782d3ae05c44807394030f800c04603059007066030f800c02403017807", + "0x66d2172030f800d0540304580705476c140263bc048f800c3940cc189ce", + "0x61f001a2e0062eb00e2e0061f00182e40615e00e01cf800c00e03403838", + "0xf800c00e75c038073e00305b80c25201c039f001801c0680734e033698b7", + "0xd283c01a738039a50187c0061a50180bc039a50187c00600740c01c1e00c", + "0x232807080030f800c3480f80683300e0f8061f001801c18807348030f800c", + "0x8e00c3e00301300c07001c2200c3e0030ef00c01c01c8180c3e00302000c", + "0xf800c20603233007090030f800c3b60305c00708c030f800c0500305c807", + "0x39f001869c0612900e01cf800c00e0340391d0901188e0440240308e80c", + "0x61f00181300646800e130061f00181280646700e128061f001801c69807", + "0x60280182e4038500187c0060260180e00384e0187c0061de01803803921", + "0x2701201814c061f00184840646600e2c8061f001876c060b800e488061f0", + "0xef00c01c01c2a80c3e00301c00c8ca01c039f001801c068070a62c891050", + "0x5c0070b2030f800c0500305c8070ae030f800c04c0301c00724c030f800c", + "0x385c24e1642b9260240302e00c3e00302a80c8cc01c9380c3e0030ed80c", + "0x646500e01cf800c3880303580700e7c0060120182c4038073e00300380d", + "0x39280187c0061e40180e00385f0187c0060070180380385d0187c006020", + "0x61f00181740646600e4a8061f001805c060b800e4a4061f0018034060b9", + "0x66d400e0300600c018030f800c00e031bd0072564a8949280be0480612b", + "0x1180c3e00300680c17201c1000c3e00300380c01c01c0f01701a7c0061c4", + "0xef0230407125980704c030f800c024031b30073bc030f800c03c031b2807", + "0xed80c3e0034f200c5d601c1400c3e00300382300e0880e81c01c7c006026", + "0x61f001801db680700e7c0061db0184a4038073e00300380d00e0a8066d5", + "0x38073e00300380d00e01f6b00c00e5680382d0187c0061d70180bc039d7", + "0x382d0187c00602f0180bc0382f0187c0060076dc01c039f00180a806129", + "0xe702801c0300952e00e0a0061f00180a00602600e738061f0018088064b9", + "0xf800c00e34c038073e00300380d00e0e05c9ca01db5c1983101a7c00682d", + "0x1980c17001cd380c3e00301880c07001c5b80c3e00305c00c6a601c5c00c", + "0x600701a01c03ed801801cad00734a030f800c16e031aa007078030f800c", + "0x5c80c17001cd380c3e0030e500c07001cd200c3e00301c00c6ac01c039f0", + "0x247007080030f800c34a0324680734a030f800c348031aa007078030f800c", + "0xf800c00e03403844019b648180c3e00341f00c5a001c1f00c3e00302000c", + "0x2300cdb601c2300c3e00308e01701bb680391c0187c00610301924003807", + "0x5c807094030f800c34e0301c00723a030f800c03803007007090030f800c", + "0x2700c3e00302400cdb801c9080c3e00301e00c17001c2600c3e00300e80c", + "0x36e80700e7c0060170186f8038073e00300380d00e1389084c0944740900c", + "0x5900c3e0030d380c07001c9100c3e00300e00c01c01c2800c3e00302200c", + "0xf800c0a00336e0070aa030f800c0780305c0070a6030f800c03a0305c807", + "0x61f0018710065d300e01cf800c00e370039260aa14c591220240309300c", + "0x61f001801ceb80702e030f800c00e75c038120187c0061e4019b78039e4", + "0x6007018038038073e00300e00c90a01c0e81c01a7c0060120192100381e", + "0x609100e0a0061f00180740637a00e098061f00180300603800e778061f0", + "0x602a3b60a0131de0252180382a0187c00601e018244039db0187c006017", + "0x39f001801c0680705a0336f9d70187c00682301921c03823040088071f0", + "0x602f018164038073e00301880c25201c189ce05e038f800c3ae03244807", + "0x605900e2e4061f00187280605c00e01cf800c066030938073940cc069f0", + "0x38b70187c0060b8018170038073e00301c00c24e01c5c03801a7c0061ce", + "0x38b70187c0060b7018710038b90187c0060b9018710038073e0030038ce", + "0x39f001801c0680707c690d280edc00f0d380d3e00345b8b901a080e248a", + "0x61f001869c0603800e40c061f00181000635300e100061f001801c69807", + "0x37080c00e568038460187c006103018d500391c0187c00603c0182e003844", + "0x61f00186940603800e120061f00180f80635600e01cf800c00e03403807", + "0x6046019234038460187c006048018d500391c0187c0061a40182e003844", + "0x9080cdc4130061f001a474062d000e474061f00181280648e00e128061f0", + "0xda00709c030f800c0980324800700e7c0060071b801c039f001801c06807", + "0x61f00180880600e00e488061f0018140061b600e140061f00181380700d", + "0x61220186e0038550187c00611c0182e0038530187c0060440180e0038b2", + "0x38073e0030038dc00e01cf800c00e034039260aa14c591c4018498061f0", + "0x2c80c3e00301100c01c01c2b80c3e00309080c37401c039f00180380606b", + "0xf800c0ae030dc0070b8030f800c2380305c00724e030f800c0880301c007", + "0x38073e00300700c0d601c039f001801c068070ba170938593880302e80c", + "0x61f00180800603800e4a0061f00180880600e00e17c061f00180b4061ba", + "0x951292507100612b0187c00605f0186e00392a0187c00600d0182e003929", + "0xf0173c8038f800d0240380680c3892e8038120187c0061c40192e40392b", + "0x602f00e778061f001801c0600e00e01cf800c00e0340382203a070076e3", + "0x61f00187900603800e08c1000d3e0030131de01a494038260187c00601e", + "0x68073b6033720280187c0068230183ac038170187c0060170182e0039e4", + "0x3738073ae030f800c05403373007054030f800c0500337280700e7c006007", + "0xe700c3e0030f200c07001c1780c3e00301000c01c01c1680c3e0030eb80c", + "0x1983139c0bce200c066030f800c05a03374007062030f800c02e0305c007", + "0x31e807394030f800c00e75c038073e0030ed80c25201c039f001801c06807", + "0x1c00c3e00305c9ca01a738038b90187c0060b90180bc038b90187c006007", + "0xf800c16e0337480716e030f800c0702e00683300e2e0061f001801c18807", + "0xb80c17001cd280c3e0030f200c07001c1e00c3e00301000c01c01cd380c", + "0x600701a01c1f1a434a0f0e200c07c030f800c34e03374007348030f800c", + "0x8180cdce01c8180c3e00302000cdcc01c2000c3e00301100cdd401c039f0", + "0x5c00708c030f800c0380301c007238030f800c00e03007007088030f800c", + "0x1ca00723a1202311c3880308e80c3e00302200cdd001c2400c3e00300e80c", + "0xf800c38803078007388038069f00180340639500e0340380d3e00300380c", + "0x600c018e50038073e00300900c1e001cf201201a7c00600e019bac03807", + "0x37580700e7c00601c0183c00381c03c034f800c02e031ca80702e030069f0", + "0x1180c3e0030f200cdd801c039f0018074060f000e0880e80d3e00300f00c", + "0x6820018bac038200187c0061de046037768073bc030f800c04403376007", + "0x61db00e01cf800c04c0309480700e7c00600701a01c1400cddc098061f0", + "0xed80c5e201ced80c3e0030038d300e01cf800c00e030ed80700e7c00600c", + "0x600701a01c03eef01801cad0073ae030f800c054030b3007054030f800c", + "0x1680c1e001c1782d01a7c006007018e54038073e00301400c25201c039f0", + "0x639500e01cf800c39c03078007062738069f00180bc066eb00e01cf800c", + "0x1c0b901a7c0061ca019bac038073e00301980c1e001ce503301a7c00600c", + "0x61f00180e0066ec00e2dc061f00180c4066ec00e01cf800c17203078007", + "0xeb80c6d801ceb80c3e00305c00c6d801c5c00c3e0030d38b701bbb4039a7", + "0x61f00180300637a00e030061f001801c066f000e0f00600c078030f800c", + "0xf201201a7c00600d018e54039c401c034f800c018031ca80701a0300600d", + "0x38073e00300380d00e0740e00dde40780b80d3e0034f21c400e03b78807", + "0x61f00180800f00dde601c1000c3e00301100c5e201c1100c3e0030038d3", + "0x37a80c00e568038260187c006023019bd0039de0187c00601701803803823", + "0xed80c3e00301400c64c01c1400c3e0030038d300e01cf800c00e03403807", + "0x602a019bd0039de0187c00601c0180380382a0187c0061db03a03779807", + "0x1780d3e00340900e3bc03b7880705a75c069f0018098066f600e098061f0", + "0x37c007394030f800c3ae7380692400e01cf800c00e034038330620377b9ce", + "0x61f00182e4066f900e0e0061f00180bc0600e00e2e4061f00180b4e500d", + "0x37600716e030f800c00fbec038073e00300380d00e01f7d00c00e568038b8", + "0x39a434a0377e03c34e034f800d16e75c1880ede201c5b80c3e00305b80c", + "0x61f00180b41f00ddf001c1f00c3e00301e03301a490038073e00300380d", + "0x37e80c00e568038440187c006040019be4039030187c0061a701803803840", + "0x61f00186901980d24801c039f00180b40608f00e01cf800c00e03403807", + "0x60482380377c007090030f800c08c0319300708c030f800c00e34c0391c", + "0x63ab00e110061f0018474066f900e40c061f00186940600e00e474061f0", + "0x384a0187c006038018eac038b80187c006044019bf8038380187c006103", + "0x1ca807388038069f00180300639500e1302500d018130061f00182e0066fe", + "0xe81c01bc000f01701a7c0069e438801c076ff00e7900900d3e00300680c", + "0x38200187c006022018bc4038220187c0060071a601c039f001801c06807", + "0xf800c0460337a0073bc030f800c02e03007007046030f800c04007806ef3", + "0x38280187c0060071a601c039f001801c0680700fc04060072b401c1300c", + "0xf800c03803007007054030f800c3b607406ef300e76c061f00180a006326", + "0x76ff00e0b4eb80d3e00301300cdec01c1300c3e00301500cde801cef00c", + "0xe700d24801c039f001801c068070660c406f0239c0bc069f001a048071de", + "0x1c00c3e00301780c01c01c5c80c3e0030169ca01bbe0039ca0187c0061d7", + "0x37d80700e7c00600701a01c03f0301801cad007170030f800c1720337c807", + "0x69f001a2dceb83101dbfc038b70187c0060b7019bb0038b70187c006007", + "0x383e0187c00603c0660349200700e7c00600701a01cd21a501bc101e1a7", + "0xf800c0800337c807206030f800c34e03007007080030f800c05a0f806ef8", + "0x38073e00301680c11e01c039f001801c0680700fc14060072b401c2200c", + "0x61f00181180632600e118061f001801c69807238030f800c3480cc06924", + "0x8e80cdf201c8180c3e0030d280c01c01c8e80c3e00302411c01bbe003848", + "0x1d5807170030f800c0880337f007070030f800c206031d5807088030f800c", + "0x60071b801c2604a01a0302600c3e00305c00cdfc01c2500c3e00301c00c", + "0x60073ae01c0900c3e0030f200ce0c01cf200c3e0030e200cba001c039f0", + "0x648500e0740e00d3e00300900c90801c0f00c3e0030039d700e05c061f0", + "0x1bd00704c030f800c0180301c0073bc030f800c00e0300700700e7c00601c", + "0x1500c3e00300f00c12201ced80c3e00300b80c12201c1400c3e00300e80c", + "0xeb80c3e00341180c90e01c11820044038f800c05476c140263bc04a43007", + "0x612900e0c4e702f01c7c0061d7019224038073e00300380d00e0b406707", + "0x2e00700e7c00603301849c039ca066034f800c05e0302c80700e7c006031", + "0x39f00180e00612700e2e01c00d3e0030e700c0b201c5c80c3e0030e500c", + "0x5c80c3e00305c80c38801c039f001801c6700716e030f800c1700302e007", + "0x770807869c069f001a2dc5c80d0407124500716e030f800c16e030e2007", + "0xf800c080031a9807080030f800c00e34c038073e00300380d00e0f8d21a5", + "0x8180c6a801c8e00c3e00301e00c17001c2200c3e0030d380c07001c8180c", + "0xf800c07c031ab00700e7c00600701a01c03f0901801cad00708c030f800c", + "0x2400c6a801c8e00c3e0030d200c17001c2200c3e0030d280c07001c2400c", + "0x16800723a030f800c09403247007094030f800c08c0324680708c030f800c", + "0x38073e0030038dc00e01cf800c00e03403921019c282600c3e00348e80c", + "0xf800c0a0030db0070a0030f800c09c038069b400e138061f001813006490", + "0x8e00c17001c2980c3e00302200c07001c5900c3e00301100c01c01c9100c", + "0x600701a01c930550a62c8e200c24c030f800c244030dc0070aa030f800c", + "0x61f0018484061ba00e01cf800c01c0303580700e7c0060071b801c039f0", + "0x611c0182e0039270187c0060440180e0038590187c00602201803803857", + "0xf800c00e0340385d0b849c2c9c4018174061f001815c061b800e170061f0", + "0xf800c044030070070be030f800c05a030dd00700e7c00600e0181ac03807", + "0x2f80c37001c9500c3e00300680c17001c9480c3e00301000c07001c9400c", + "0x600e00e0780b80d3e0030e200ce1601c9592a2524a0e200c256030f800c", + "0x39de0187c00601e018dbc038230187c00600d0182e4038200187c006007", + "0x25c8070440740e00e3e0030131de046080e24b800e098061f00180480602f", + "0x39db0187c0061db018098039db0187c00600704601c1400c3e00301100c", + "0xf800c00e034039ce05e0b40770c3ae0a8069f001a790141db01c0300952e", + "0xf800c0540301c007066030f800c062031a9807062030f800c00e34c03807", + "0x60072b401c1c00c3e00301980c6a801c5c80c3e0030eb80c17001ce500c", + "0xf800c05a0301c007170030f800c39c031ab00700e7c00600701a01c03f0d", + "0x1c00c91a01c1c00c3e00305c00c6a801c5c80c3e00301780c17001ce500c", + "0x670e078030f800d16e0316800716e030f800c34e0324700734e030f800c", + "0xf800c34805c06f0f00e690061f00180f00649000e01cf800c00e034039a5", + "0xe500c07001c8180c3e00300e00c01c01c2000c3e00301f00ce2001c1f00c", + "0x38880708c030f800c1720305c007238030f800c03a0305c807088030f800c", + "0x61c000e01cf800c00e0340384808c470221030240302400c3e00302000c", + "0x1c007094030f800c0380300700723a030f800c34a0338900700e7c006017", + "0x2700c3e00305c80c17001c9080c3e00300e80c17201c2600c3e0030e500c", + "0x38073e0030038dc00e140271210981280900c0a0030f800c23a03388807", + "0xb80c3e0030039d700e048061f00187900671300e790061f0018710065d6", + "0xf800c0380324280703a070069f00180480648400e078061f001801ceb807", + "0x601d018de8038260187c00600c0180e0039de0187c00600701803803807", + "0x948600e0a8061f00180780609100e76c061f001805c0609100e0a0061f0", + "0x1680ce2875c061f001a08c0648700e08c1002201c7c00602a3b60a0131de", + "0xf800c062030948070627381780e3e0030eb80c91201c039f001801c06807", + "0x61ca018170038073e00301980c24e01ce503301a7c00602f01816403807", + "0x605c00e01cf800c070030938071700e0069f00187380605900e2e4061f0", + "0x61c400e2e4061f00182e4061c400e01cf800c00e338038b70187c0060b8", + "0x1f1a434a03b8a83c34e034f800d16e2e406820389228038b70187c0060b7", + "0x39030187c006040018d4c038400187c0060071a601c039f001801c06807", + "0x61f001840c0635400e470061f00180f0060b800e110061f001869c06038", + "0x38480187c00603e018d58038073e00300380d00e01f8b00c00e56803846", + "0x61f00181200635400e470061f0018690060b800e110061f001869406038", + "0x691d018b400391d0187c00604a0192380384a0187c00604601923403846", + "0x2600c92001c039f001801c6e00700e7c00600701a01c9080ce2e130061f0", + "0x39220187c0060500186d8038500187c00604e01c034da00709c030f800c", + "0x61f0018470060b800e14c061f00181100603800e2c8061f00180880600e", + "0x38073e00300380d00e4982a853164710061260187c0061220186e003855", + "0x70070ae030f800c242030dd00700e7c00600e0181ac038073e0030038dc", + "0x2e00c3e00308e00c17001c9380c3e00302200c07001c2c80c3e00301100c", + "0x3580700e7c00600701a01c2e85c24e164e200c0ba030f800c0ae030dc007", + "0x39280187c0060220180380385f0187c00602d0186e8038073e00300700c", + "0x61f001817c061b800e4a8061f0018034060b800e4a4061f001808006038", + "0x1e007024030f800c00e69c038073e0030038dc00e4ac951292507100612b", + "0x381c03c0378c0173c8034f800d0240300380e34a01c0900c3e00300900c", + "0xf200c3e0030f200c01c01c0e9c401a7c0061c40190f0038073e00300380d", + "0xf800c3880305880700e7c00600701a01c1100ce3201cf800d03a030d7007", + "0x1180ce3801c1180c3e00301000d01bc6c038200187c00600e019c6803807", + "0x38e807050030f800c02e0301c00704c030f800c3c8030070073bc030f800c", + "0x60220186f0038073e00300380d00e76c1402601c030ed80c3e0030ef00c", + "0x615600e75c1500d3e00301680c10c01c1680c3e00300680c38801c039f0", + "0x61f00180bc0700d39c01c039f001801c0680739c0338f02f0187c0069d7", + "0x61e4018038039ca0187c006033388034d6007066030f800c00edb803831", + "0x609100e0f0061f00180a8061c400e69c061f001805c0603800e2dc061f0", + "0x61a434a0f0d38b702482c039a40187c0061ca0180bc039a50187c006031", + "0x39f001801c068070800338f83e0187c0068b8019a34038b80702e4071f0", + "0x8e00ce3801c8e00c3e00302210301bc6c03844206034f800c07c03347807", + "0x38e80723a030f800c0700301c007090030f800c1720300700708c030f800c", + "0x6040019c80038073e00300380d00e1288e84801c0302500c3e00302300c", + "0x671d00e138061f00180e00603800e484061f00182e40600e00e130061f0", + "0xf800c3880305880700e7c00600701a01c2804e242038060500187c00604c", + "0x61220540378d807244030f800c39c0339080700e7c00600e01849c03807", + "0x603800e154061f00187900600e00e14c061f00182c80671c00e2c8061f0", + "0x600701a01c2b9260aa038060570187c006053019c74039260187c006017", + "0xf800c01a0309500700e7c00600e01849c038073e0030e200c16201c039f0", + "0x61f001849c0602f00e49c061f001801c940070b2030f800c00e75c03807", + "0x2e05d01a0cc0385d0187c00600706201c2e00c3e00309385901a73803927", + "0x1c007252030f800c03c03007007250030f800c0be033900070be030f800c", + "0x38dc00e4ac9512901c0309580c3e00309400ce3a01c9500c3e00300e00c", + "0x39e4024034f800c3880319f807388034069f00180340672200e01cf800c", + "0xe80c3e00300700c12201c0e00c3e00300900cb1401c039f00187900612a", + "0x600d018cfc038073e00300f00c25201c0f01701a7c00601d038036c5807", + "0x603800e0a0061f001801c0600e00e01cf800c04403162007040088069f0", + "0x39d70187c0060170182440382a0187c006020018710039db0187c00600c", + "0x672305a030f800d04c031a080704c7781180e3e0030eb82a3b60a0e2340", + "0x603139c03657807062738069f00180b40634300e01cf800c00e0340382f", + "0x603800e2e4061f001808c0600e00e728061f00180cc064b000e0cc061f0", + "0x600701a01c5c038172038060b80187c0061ca0192c4038380187c0061de", + "0xef00c07001cd380c3e00301180c01c01c5b80c3e00301780c96401c039f0", + "0x60070184a4039a507869c0700c34a030f800c16e03258807078030f800c", + "0x600d0184800380e0187c00600c0182440380d0187c0060071a601c039f0", + "0x61f00180340600000e034061f001801c0611400e7100700d018710061f0", + "0x60120180bc038073e0030e200c16201c091c401a7c00600e0182540380e", + "0x38173c8034f800c0380780684200e070061f00180300609100e078061f0", + "0x38220187c0061e40182440381d0187c0060071a601c039f001805c06129", + "0x637a00e030061f001801c0672400e0801100d018080061f001807406120", + "0xf800c018031cb00701a030f800c00e031cb00701a0300600d0187c00600c", + "0xe200de4a01c0900c3e00300700c72c01ce200c3e00300680c72c01c0700c", + "0x62f100e790061f001801c6980700e7c00600701a01c03f2600e7c006812", + "0x380d00e01f9380c00e5680381e0187c006017018598038170187c0061e4", + "0xe80c2cc01c0e80c3e00300e00c64c01c0e00c3e0030038d300e01cf800c", + "0x61f001801c0672800e0880600c044030f800c03c031b600703c030f800c", + "0x1bd007018030f800c00e0339480701a0300600d0187c00600c018de80380c", + "0x898cb22801c6881203a32c8a0071a20495a80d0180300680c3e00300600c", + "0x700d01801c898cb22801c6881203a32c8a0071a2048039c401c03406007", + "0x688126a87100700d01801c898cb22801c6881203a32c8a0071a20489b1c4", + "0xe201d196450039c48887100700d01801c898cb22801c6881203a32c8a007", + "0x659141a601c689e403a32c8a0d300e344f255701c0340600722632c8a007", + "0x898cb22834c038d13c8074659141a601c689e4bce048e200e01a03003913", + "0x3913196450698071a27900e8cb22834c038d13c9bc0091c401c03406007", + "0x600722632c8a0d300e344f201d196450698071a2793950123880380680c", + "0xe200e01a03003913196450038d10240746591400e3440972b0247100700d", + "0x38d1025cb4e200e01a03003913196450038d10240746591400e3440972c", + "0x901d196450038d1025cb8e200e01a03003913196450038d102407465914", + "0x6591400e3440901d196450038d1025cbce200e01a03003913196450038d1", + "0x680c00e44c6591400e3440901d196450038d1025cc0e200e01a03003913", + "0x97323880380680c00e44c6591400e3440901d196450038d1025cc4e200e", + "0x6591400e344097333880380680c00e44c6591400e3440901d196450038d1", + "0x6591400e7100e8cb22801ce27343880380680c00e44c6591400e3440901d", + "0xe273601c0340600722632c8a0073880746591400e7139a80e01a03003913", + "0x8a0073880746591400e7139b80e01a03003913196450039c403a32c8a007", + "0x680c00e44c6591400e3440901d196450038d1025ce00700d01801c898cb", + "0x973a3880380680c00e44c6591400e3440901d196450038d1025ce4e200e", + "0x6591400e3440973b3880380680c00e44c6591400e3440901d196450038d1", + "0x38d10240746591400e3440973c3880380680c00e44c6591400e3440901d", + "0x3913196450038d10240746591400e3440973d3880380680c00e44c65914", + "0xe200e01a03003913196450038d10240746591400e3440973e3880380680c", + "0xe8cb22801c68812e800380680c00e44c6591400e7100e8cb22801ce273f", + "0x8a0071a20480e8cb22801c68812e827100700d01801c898cb22801c68812", + "0x600722632c8a0071a20480e8cb22801c68812e847100700d01801c898cb", + "0x3a21c401c0340600722632c8a0071a20480e8cb22801c68812e867100700d", + "0x701d00e037a29c401c0340600722632c8a0071a20480e8cb22801c68812", + "0x640cb1a245003817e8e0300390403a01c0701d00e037a300c00e4080e807", + "0x640cb1a245003817e90790091c401c0340600723032c6891400e04815038", + "0x640cb1a245003817e92790091c401c0340600723032c6891400e04815038", + "0x640cb1a245003817e94790091c401c0340600723032c6891400e04815038", + "0xe20c8196450039c4e96790091c401c0340600723032c6891400e04815038", + "0xbf4d01a0300392022801c0701d22801c0774c01c0340600723c32c8a007", + "0x3a71e40247100700d01801c8f0cb1a63448a0073c82a8640cb1a63448a007", + "0xf20123880380680c00e460658d31a2450039e4154320658d31a245003817", + "0x91c401c0340600723032c698d122801cf20aa19032c698d122801c0bf4f", + "0xe200e01a0300391819634c6891400e790550c819634c6891400e05fa81e4", + "0x6891400e0481c01219032c6891400e05fa90072460740681d019d44f2012", + "0x8a0073c9d500600701a05c0681701c037a99e40247100700d01801c920cb", + "0xb80d02e04806f550247100700d01801c928cb1a245003812024320658d1", + "0xe200e01a030039241963448a0070240e0640cb1a2450039e4eac0300380d", + "0x3ac0123880380680c00e490658d122801c0903819032c6891400e793ab812", + "0x39e4eb2048e200e01a030039181963448a0070240e0640cb1a2450039e4", + "0x6891400e793ad0123880380680c00e460658d122801c0903819032c68914", + "0x640cb1a2450039e4eb6048e200e01a030039181963448a0070240e0640cb", + "0x901219032c6891400e793ae0123880380680c00e460658d122801c09038", + "0x600724a32c8a00e19032c8a00eeba048e200e01a030039181963448a007", + "0x8a0073883206591400e713af80d01801c928cb228038640cb22803baf00d", + "0x3b080e01a0300392e196450039c419032c8a007389d800700d01801c960cb", + "0x970cb1a245003812070320658d122801cf276201801c0681701a05c1500d", + "0x392e1963448a0070240e01c0c81963448a00702fd8c091c401c03406007", + "0x39311963448a0070240a81c0c81963448a00702fd90f20123880380680c", + "0x988cb1a2450038120540e01c0c81963448a00703dd94f20123880380680c", + "0x658d122801c0902a070320658d122801c0bf6602e790091c401c03406007", + "0x658d122801c0902a070320658d122801c0bf673c8048e200e01a03003931", + "0x658d122801c0902a070320658d122801c0bf683c8048e200e01a03003931", + "0x681200e037b500c00e4e40380d02401c06f693c8048e200e01a03003931", + "0x8a0070241d01c0380700a82e012024320658d122801c11f6b01801c9d807", + "0x380d02401c06f6c0400880e81c03c05cf20123880380680c00e460658d1", + "0x8a0073882886591400e713b700c00e5146591401c32c8a00deda03003944", + "0x39181963448a0070240a81c0c81963448a00702fdbc0700d01801ca28cb", + "0x39181963448a0070240a81c0c81963448a00702fdc0f20123880380680c", + "0x3b900e01a0300391e196450039c413c32c8a007389dc4f20123880380680c", + "0x3ba00d01801ca891400e0380e91400e03bb980c00e53c0e80701c0740380d", + "0x3bb00e01a030039251a6450039c415434c8a007389dd40395203a0340e80c", + "0x3812eee048e200e01a0300391e1963448a007024048378cb1a2450039e4", + "0x6591401c32c8a00def07100700d01801caa8cb1a24500381219032c68914", + "0x640cb1a63448a00703dde80680c00e4780380d0e81d00380eef20300391e", + "0x6891400e07bbd8173c8048e200e01a0300391819634c6891400e7903a0aa", + "0x977c02e790091c401c0340600723032c698d122801cf2074154320658d3", + "0x5a0c819645003812efa7100700d01801c8c0cb22801ce20b319032c8a007", + "0x680c00e4906591401c3206591401ddf8e200e01a03003918196450039c4", + "0x91c401c0340600723c32c698d122801cf20aa19032c698d122801c0bf7f", + "0x6591401de04e200e01a03003918196450039c416a3206591400e04bc01e4", + "0x600723032c8a0073882d8640cb22801c0978201a03003918196450070c8", + "0x6891400e793c200e01a0300396822801c0701703a450039c4f067100700d", + "0x130cb1a2450039e4f0a048e200e01a030039241963448a0070245c4188cb", + "0x1c01219032c6891400e07bc30123880380680c00e494658d122801c09012", + "0x640cb1a24500381ef0e05cf20123880380680c00e460658d122801c09175", + "0x6891400e05fc40173c8048e200e01a030039181963448a0070245d41c012", + "0x270cb22803bc49e40247100700d01801c8c0cb1a245003812070048640cb", + "0x39c4f160340600724a32c8a00e09432c8a00ef140340600724a32c8a00e", + "0x6591400e710468cb22801ce278c01c0340600725832c8a00738811865914", + "0x680c00e4b8658d122801c0903811232c6891400e793c680e01a0300392e", + "0xe200e01a0300392e1963448a0070245e8298cb1a2450039e4f1c048e200e", + "0xe200e01a030039181963448a0070240a81c03819032c6891400e07bc7812", + "0x680c00e460658d122801c0902a0700e0640cb1a24500381ef2005cf2012", + "0x39181963448a0070240a81c03819032c6891400e07bc88173c8048e200e", + "0x1500701de4c0680c00e4b80380d0540a80380ef2405cf20123880380680c", + "0x680c00e4606591401c1700901219032c8a1e4f280340600725c01c0682a", + "0x6891400e793cb00e01a0300397b1964500703814432c8a1c4f2a048e200e", + "0x707413c32c8a1c4f2e048e200e01a030039181963448a0070240e0640cb", + "0x6591400e04bcc80c00e5dc6591401c32c8a00df300380680c00e5e065914", + "0x65914389e6c039450182440679a3880380680c00e59c6591400e710b9108", + "0x8a0070240a81c0891963448a00702fe700700d01801cb30cb2280381508d", + "0x8c0cb22801ce20b119032c8a007025e74f20123880380680c00e578658d1", + "0xe200e01a03003956196450039c42e44206591400e04bcf1c401c03406007", + "0x681d019e840680c00e5508a00701c0748a00701de800391e0182100679f", + "0x6991400e713d180e01a0300396822801c07017154450039c4f4401ca601d", + "0x60072e43440380e0241bc68807389e900700d01801c928d322801ce201d", + "0xbfa701801c8f00c02450c06fa601801ca58cb2280386591401be940700d", + "0xbfa83c8048e200e01a0300393a1963448a0070241d00906f1963448a007", + "0x67a93c8048e200e01a030039331963448a0070241d00906b1963448a007", + "0x67ab3880380680c00e4c08a00701c05c0b97522801c097aa00e5d4060b3", + "0x680c00e4906591401c1906591401deb4039750182d0067ac00e554060bf", + "0x67af0247100700d01801c8f0cb1a2450038120241ac658d122801cf27ae", + "0x60b6019ec40700d01801c978cb22803807064196450e27b000e5d4060b5", + "0xb88311a201ce27b301c034060072d04500380e02e0748a007389ec803975", + "0x700d01801c958cb228038b9108196450e27b401c034060072e43440380e", + "0x67b701c034060072e43440380e02409868807389ed8039240184ac067b5", + "0x680c00e460658d122801c09038024320658d122801c0bfb800e49406129", + "0x3dd1c401c0340600723032c8a0073885d4640cb22801c097b93c8048e200e", + "0x3dd9e40247100700d01801c8c0cb1a245003812070048640cb1a245003817", + "0x3de1e40247100700d01801c8c0cb1a245003812070048640cb1a245003817", + "0x392c018174067bd3880380680c00e4a06591400e710b910819645003812", + "0x9700c0ae033df9c401c0340600724e32c8a0073885c8840cb22801c097be", + "0x717a0a6344039c4f820380680c00e5c86880701c0e0448d100e713e0007", + "0x298cb1a245003817f860300380e0180a81500df840380680c00e5c868807", + "0x590c819645003812f88790091c401c0340600724c32c6891400e0481517a", + "0x3e300d01801c8200701a0a81500701df14e200e01a03003918196450039c4", + "0x600724432c8a00e02413865914389f1c0680c00e4100380d0540a80380e", + "0x2e046196450e27c901c0340600724232c8a00e02412865914389f200700d", + "0x658d122801c09038024320658d122801c0bfca01c0340600723a32c8a00e", + "0x658d122801c09012024320658d122801c0bfcb3c8048e200e01a03003918", + "0x390200e0340900701bf3403977018470067cc3c8048e200e01a03003918", + "0xba80c162033e79c401c0340600717e32c8a00e0545c8840cb22804be700c", + "0x600701a05c068170fa037e880d01801c8191400e0380e91400e03be8007", + "0xe9a422c34c8a0073c9f4c0700d01801cb411400e0380b88022801ce27d2", + "0x39721a201c070120d6344039c4fa8048e200e01a030039a51a6450039c4", + "0xb80e02e05c5900efac0340600701a05c0b80e02e05c5880efaa0380680c", + "0x3ec1c401c034060072604500380e02e05c5991400e04beb80d01801c06817", + "0xb81716a45003812fb27100700d01801c9811400e0380b81716845003812", + "0x3ed80d01801c0681702e0380b81716c03bed1c401c034060072604500380e", + "0x600701a05c0b80e02e05c5c00efb80340600701a05c0b80e02e05c5b80e", + "0x681702e0380b81717403bef00d01801c0681702e0380b81717203bee80d", + "0xb80e02e05c5e00efc00340600701a05c0b80e02e05c5d80efbe03406007", + "0x6891400e793f100d01801c0681702e0380b81717a03bf080d01801c06817", + "0x3f20072ea030ba80cfc6048e200e01a030039551963448a007024048640cb", + "0x3f29e40247100700d01801ce50cb1a24500381201c5c4188cb1a245003817", + "0x840cb22801c097e63880380680c00e4606591400e7105c0c819645003812", + "0x5900cfd00300380e0180a81500dfce7100700d01801ce70cb22801ce2172", + "0xeb80701a0a81500701dfa80680c00e75c0380d0540a80380efd201cba80c", + "0xbfec3880380680c00e4606591400e7105b8c819645003812fd603406007", + "0x97ed3c8048e200e01a030039db1963448a007024048090261963448a007", + "0x901703a45003812fdc7100700d01801c8c0cb22801ce20b919032c8a007", + "0x680c00e5a08a00701c05c3f91400e713f79c401c034060073bc4500380e", + "0x5c00cfe40300380d02e0340b83801bfc40600701a05c0681701a037f800e", + "0xba80c172033fa8072ea0305b80cfe80300380e0180300600dfe601cba80c", + "0x3fb007" + ], + "contract_class_version": "0.1.0", + "entry_points_by_type": { + "CONSTRUCTOR": [ + { + "selector": "0x28ffe4ff0f226a9107253e17a904099aa4f63a02a5621de0576e5aa71bc5194", + "function_idx": 34 + } + ], + "EXTERNAL": [ + { + "selector": "0xb2ef42a25c95687d1a3e7c2584885fd4058d102e05c44f65cf35988451bc8", + "function_idx": 16 + }, + { + "selector": "0xc30ffbeb949d3447fd4acd61251803e8ab9c8a777318abb5bd5fbf28015eb", + "function_idx": 8 + }, + { + "selector": "0x151e58b29179122a728eab07c8847e5baf5802379c5db3a7d57a8263a7bd1d", + "function_idx": 2 + }, + { + "selector": "0x41b033f4a31df8067c24d1e9b550a2ce75fd4a29e1147af9752174f0e6cb20", + "function_idx": 31 + }, + { + "selector": "0x4c4fb1ab068f6039d5780c68dd0fa2f8742cceb3426d19667778ca7f3518a9", + "function_idx": 20 + }, + { + "selector": "0x80aa9fdbfaf9615e4afc7f5f722e265daca5ccc655360fa5ccacf9c267936d", + "function_idx": 29 + }, + { + "selector": "0x83afd3f4caedc6eebf44246fe54e38c95e3179a5ec9ea81740eca5b482d12e", + "function_idx": 24 + }, + { + "selector": "0x95604234097c6fe6314943092b1aa8fb6ee781cf32ac6d5b78d856f52a540f", + "function_idx": 17 + }, + { + "selector": "0xd63a78e4cd7fb4c41bc18d089154af78d400a5e837f270baea6cf8db18c8dd", + "function_idx": 3 + }, + { + "selector": "0x1557182e4359a1f0c6301278e8f5b35a776ab58d39892581e357578fb287836", + "function_idx": 21 + }, + { + "selector": "0x16cc063b8338363cf388ce7fe1df408bf10f16cd51635d392e21d852fafb683", + "function_idx": 32 + }, + { + "selector": "0x183420eb7aafd9caad318b543d9252c94857340f4768ac83cf4b6472f0bf515", + "function_idx": 13 + }, + { + "selector": "0x1aaf3e6107dd1349c81543ff4221a326814f77dadcc5810807b74f1a49ded4e", + "function_idx": 33 + }, + { + "selector": "0x1c67057e2995950900dbf33db0f5fc9904f5a18aae4a3768f721c43efe5d288", + "function_idx": 0 + }, + { + "selector": "0x1d13ab0a76d7407b1d5faccd4b3d8a9efe42f3d3c21766431d4fafb30f45bd4", + "function_idx": 27 + }, + { + "selector": "0x1e888a1026b19c8c0b57c72d63ed1737106aa10034105b980ba117bd0c29fe1", + "function_idx": 23 + }, + { + "selector": "0x1fa400a40ac35b4aa2c5383c3bb89afee2a9698b86ebb405cf25a6e63428605", + "function_idx": 5 + }, + { + "selector": "0x216b05c387bab9ac31918a3e61672f4618601f3c598a2f3f2710f37053e1ea4", + "function_idx": 19 + }, + { + "selector": "0x219209e083275171774dab1df80982e9df2096516f06319c5c6d71ae0a8480c", + "function_idx": 26 + }, + { + "selector": "0x225faa998b63ad3d277e950e8091f07d28a4c45ef6de7f3f7095e89be92d701", + "function_idx": 14 + }, + { + "selector": "0x24643b0aa4f24549ae7cd884195db7950c3a79a96cb7f37bde40549723559d9", + "function_idx": 15 + }, + { + "selector": "0x25a5317fee78a3601253266ed250be22974a6b6eb116c875a2596585df6a400", + "function_idx": 11 + }, + { + "selector": "0x284a2f635301a0bf3a171bb8e4292667c6c70d23d48b0ae8ec4df336e84bccd", + "function_idx": 4 + }, + { + "selector": "0x2e4263afad30923c891518314c3c95dbe830a16874e8abc5777a9a20b54c76e", + "function_idx": 30 + }, + { + "selector": "0x302e0454f48778e0ca3a2e714a289c4e8d8e03d614b370130abb1a524a47f22", + "function_idx": 10 + }, + { + "selector": "0x30559321b47d576b645ed7bd24089943dd5fd3a359ecdd6fa8f05c1bab67d6b", + "function_idx": 9 + }, + { + "selector": "0x338dd2002b6f7ac6471742691de72611381e3fc4ce2b0361c29d42cb2d53a90", + "function_idx": 7 + }, + { + "selector": "0x33fe3600cdfaa48261a8c268c66363562da383d5dd26837ba63b66ebbc04e3c", + "function_idx": 6 + }, + { + "selector": "0x35a73cd311a05d46deda634c5ee045db92f811b4e74bca4437fcb5302b7af33", + "function_idx": 22 + }, + { + "selector": "0x361458367e696363fbcc70777d07ebbd2394e89fd0adcaf147faccd1d294d60", + "function_idx": 18 + }, + { + "selector": "0x3704ffe8fba161be0e994951751a5033b1462b918ff785c0a636be718dfdb68", + "function_idx": 25 + }, + { + "selector": "0x37791de85f8a3be5014988a652f6cf025858f3532706c18f8cf24f2f81800d5", + "function_idx": 12 + }, + { + "selector": "0x3a07502a2e0e18ad6178ca530615148b9892d000199dbb29e402c41913c3d1a", + "function_idx": 1 + }, + { + "selector": "0x3b076186c19fe96221e4dfacd40c519f612eae02e0555e4e115a2a6cf2f1c1f", + "function_idx": 28 + } + ], + "L1_HANDLER": [] + }, + "abi": [ + { + "type": "impl", + "name": "MintableToken", + "interface_name": "src::mintable_token_interface::IMintableToken" + }, + { + "type": "struct", + "name": "core::integer::u256", + "members": [ + { + "name": "low", + "type": "core::integer::u128" + }, + { + "name": "high", + "type": "core::integer::u128" + } + ] + }, + { + "type": "interface", + "name": "src::mintable_token_interface::IMintableToken", + "items": [ + { + "type": "function", + "name": "permissioned_mint", + "inputs": [ + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "amount", + "type": "core::integer::u256" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "permissioned_burn", + "inputs": [ + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "amount", + "type": "core::integer::u256" + } + ], + "outputs": [], + "state_mutability": "external" + } + ] + }, + { + "type": "impl", + "name": "MintableTokenCamelImpl", + "interface_name": "src::mintable_token_interface::IMintableTokenCamel" + }, + { + "type": "interface", + "name": "src::mintable_token_interface::IMintableTokenCamel", + "items": [ + { + "type": "function", + "name": "permissionedMint", + "inputs": [ + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "amount", + "type": "core::integer::u256" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "permissionedBurn", + "inputs": [ + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "amount", + "type": "core::integer::u256" + } + ], + "outputs": [], + "state_mutability": "external" + } + ] + }, + { + "type": "impl", + "name": "Replaceable", + "interface_name": "src::replaceability_interface::IReplaceable" + }, + { + "type": "struct", + "name": "core::array::Span::", + "members": [ + { + "name": "snapshot", + "type": "@core::array::Array::" + } + ] + }, + { + "type": "struct", + "name": "src::replaceability_interface::EICData", + "members": [ + { + "name": "eic_hash", + "type": "core::starknet::class_hash::ClassHash" + }, + { + "name": "eic_init_data", + "type": "core::array::Span::" + } + ] + }, + { + "type": "enum", + "name": "core::option::Option::", + "variants": [ + { + "name": "Some", + "type": "src::replaceability_interface::EICData" + }, + { + "name": "None", + "type": "()" + } + ] + }, + { + "type": "enum", + "name": "core::bool", + "variants": [ + { + "name": "False", + "type": "()" + }, + { + "name": "True", + "type": "()" + } + ] + }, + { + "type": "struct", + "name": "src::replaceability_interface::ImplementationData", + "members": [ + { + "name": "impl_hash", + "type": "core::starknet::class_hash::ClassHash" + }, + { + "name": "eic_data", + "type": "core::option::Option::" + }, + { + "name": "final", + "type": "core::bool" + } + ] + }, + { + "type": "interface", + "name": "src::replaceability_interface::IReplaceable", + "items": [ + { + "type": "function", + "name": "get_upgrade_delay", + "inputs": [], + "outputs": [ + { + "type": "core::integer::u64" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_impl_activation_time", + "inputs": [ + { + "name": "implementation_data", + "type": "src::replaceability_interface::ImplementationData" + } + ], + "outputs": [ + { + "type": "core::integer::u64" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "add_new_implementation", + "inputs": [ + { + "name": "implementation_data", + "type": "src::replaceability_interface::ImplementationData" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "remove_implementation", + "inputs": [ + { + "name": "implementation_data", + "type": "src::replaceability_interface::ImplementationData" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "replace_to", + "inputs": [ + { + "name": "implementation_data", + "type": "src::replaceability_interface::ImplementationData" + } + ], + "outputs": [], + "state_mutability": "external" + } + ] + }, + { + "type": "impl", + "name": "AccessControlImplExternal", + "interface_name": "src::access_control_interface::IAccessControl" + }, + { + "type": "interface", + "name": "src::access_control_interface::IAccessControl", + "items": [ + { + "type": "function", + "name": "has_role", + "inputs": [ + { + "name": "role", + "type": "core::felt252" + }, + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "get_role_admin", + "inputs": [ + { + "name": "role", + "type": "core::felt252" + } + ], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + } + ] + }, + { + "type": "impl", + "name": "RolesImpl", + "interface_name": "src::roles_interface::IMinimalRoles" + }, + { + "type": "interface", + "name": "src::roles_interface::IMinimalRoles", + "items": [ + { + "type": "function", + "name": "is_governance_admin", + "inputs": [ + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "is_upgrade_governor", + "inputs": [ + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "register_governance_admin", + "inputs": [ + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "remove_governance_admin", + "inputs": [ + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "register_upgrade_governor", + "inputs": [ + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "remove_upgrade_governor", + "inputs": [ + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress" + } + ], + "outputs": [], + "state_mutability": "external" + }, + { + "type": "function", + "name": "renounce", + "inputs": [ + { + "name": "role", + "type": "core::felt252" + } + ], + "outputs": [], + "state_mutability": "external" + } + ] + }, + { + "type": "impl", + "name": "ERC20Impl", + "interface_name": "openzeppelin::token::erc20::interface::IERC20" + }, + { + "type": "interface", + "name": "openzeppelin::token::erc20::interface::IERC20", + "items": [ + { + "type": "function", + "name": "name", + "inputs": [], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "symbol", + "inputs": [], + "outputs": [ + { + "type": "core::felt252" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "decimals", + "inputs": [], + "outputs": [ + { + "type": "core::integer::u8" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "total_supply", + "inputs": [], + "outputs": [ + { + "type": "core::integer::u256" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "balance_of", + "inputs": [ + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress" + } + ], + "outputs": [ + { + "type": "core::integer::u256" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "allowance", + "inputs": [ + { + "name": "owner", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "spender", + "type": "core::starknet::contract_address::ContractAddress" + } + ], + "outputs": [ + { + "type": "core::integer::u256" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "transfer", + "inputs": [ + { + "name": "recipient", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "amount", + "type": "core::integer::u256" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "external" + }, + { + "type": "function", + "name": "transfer_from", + "inputs": [ + { + "name": "sender", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "recipient", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "amount", + "type": "core::integer::u256" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "external" + }, + { + "type": "function", + "name": "approve", + "inputs": [ + { + "name": "spender", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "amount", + "type": "core::integer::u256" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "external" + } + ] + }, + { + "type": "impl", + "name": "ERC20CamelOnlyImpl", + "interface_name": "openzeppelin::token::erc20::interface::IERC20CamelOnly" + }, + { + "type": "interface", + "name": "openzeppelin::token::erc20::interface::IERC20CamelOnly", + "items": [ + { + "type": "function", + "name": "totalSupply", + "inputs": [], + "outputs": [ + { + "type": "core::integer::u256" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "balanceOf", + "inputs": [ + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress" + } + ], + "outputs": [ + { + "type": "core::integer::u256" + } + ], + "state_mutability": "view" + }, + { + "type": "function", + "name": "transferFrom", + "inputs": [ + { + "name": "sender", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "recipient", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "amount", + "type": "core::integer::u256" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "external" + } + ] + }, + { + "type": "constructor", + "name": "constructor", + "inputs": [ + { + "name": "name", + "type": "core::felt252" + }, + { + "name": "symbol", + "type": "core::felt252" + }, + { + "name": "decimals", + "type": "core::integer::u8" + }, + { + "name": "initial_supply", + "type": "core::integer::u256" + }, + { + "name": "recipient", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "permitted_minter", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "provisional_governance_admin", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "upgrade_delay", + "type": "core::integer::u64" + } + ] + }, + { + "type": "function", + "name": "increase_allowance", + "inputs": [ + { + "name": "spender", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "added_value", + "type": "core::integer::u256" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "external" + }, + { + "type": "function", + "name": "decrease_allowance", + "inputs": [ + { + "name": "spender", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "subtracted_value", + "type": "core::integer::u256" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "external" + }, + { + "type": "function", + "name": "increaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "addedValue", + "type": "core::integer::u256" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "external" + }, + { + "type": "function", + "name": "decreaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "core::starknet::contract_address::ContractAddress" + }, + { + "name": "subtractedValue", + "type": "core::integer::u256" + } + ], + "outputs": [ + { + "type": "core::bool" + } + ], + "state_mutability": "external" + }, + { + "type": "event", + "name": "openzeppelin::token::erc20_v070::erc20::ERC20::Transfer", + "kind": "struct", + "members": [ + { + "name": "from", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + }, + { + "name": "to", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + }, + { + "name": "value", + "type": "core::integer::u256", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "openzeppelin::token::erc20_v070::erc20::ERC20::Approval", + "kind": "struct", + "members": [ + { + "name": "owner", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + }, + { + "name": "spender", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + }, + { + "name": "value", + "type": "core::integer::u256", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "src::replaceability_interface::ImplementationAdded", + "kind": "struct", + "members": [ + { + "name": "implementation_data", + "type": "src::replaceability_interface::ImplementationData", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "src::replaceability_interface::ImplementationRemoved", + "kind": "struct", + "members": [ + { + "name": "implementation_data", + "type": "src::replaceability_interface::ImplementationData", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "src::replaceability_interface::ImplementationReplaced", + "kind": "struct", + "members": [ + { + "name": "implementation_data", + "type": "src::replaceability_interface::ImplementationData", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "src::replaceability_interface::ImplementationFinalized", + "kind": "struct", + "members": [ + { + "name": "impl_hash", + "type": "core::starknet::class_hash::ClassHash", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "src::access_control_interface::RoleGranted", + "kind": "struct", + "members": [ + { + "name": "role", + "type": "core::felt252", + "kind": "data" + }, + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + }, + { + "name": "sender", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "src::access_control_interface::RoleRevoked", + "kind": "struct", + "members": [ + { + "name": "role", + "type": "core::felt252", + "kind": "data" + }, + { + "name": "account", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + }, + { + "name": "sender", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "src::access_control_interface::RoleAdminChanged", + "kind": "struct", + "members": [ + { + "name": "role", + "type": "core::felt252", + "kind": "data" + }, + { + "name": "previous_admin_role", + "type": "core::felt252", + "kind": "data" + }, + { + "name": "new_admin_role", + "type": "core::felt252", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "src::roles_interface::GovernanceAdminAdded", + "kind": "struct", + "members": [ + { + "name": "added_account", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + }, + { + "name": "added_by", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "src::roles_interface::GovernanceAdminRemoved", + "kind": "struct", + "members": [ + { + "name": "removed_account", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + }, + { + "name": "removed_by", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "src::roles_interface::UpgradeGovernorAdded", + "kind": "struct", + "members": [ + { + "name": "added_account", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + }, + { + "name": "added_by", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "src::roles_interface::UpgradeGovernorRemoved", + "kind": "struct", + "members": [ + { + "name": "removed_account", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + }, + { + "name": "removed_by", + "type": "core::starknet::contract_address::ContractAddress", + "kind": "data" + } + ] + }, + { + "type": "event", + "name": "openzeppelin::token::erc20_v070::erc20::ERC20::Event", + "kind": "enum", + "variants": [ + { + "name": "Transfer", + "type": "openzeppelin::token::erc20_v070::erc20::ERC20::Transfer", + "kind": "nested" + }, + { + "name": "Approval", + "type": "openzeppelin::token::erc20_v070::erc20::ERC20::Approval", + "kind": "nested" + }, + { + "name": "ImplementationAdded", + "type": "src::replaceability_interface::ImplementationAdded", + "kind": "nested" + }, + { + "name": "ImplementationRemoved", + "type": "src::replaceability_interface::ImplementationRemoved", + "kind": "nested" + }, + { + "name": "ImplementationReplaced", + "type": "src::replaceability_interface::ImplementationReplaced", + "kind": "nested" + }, + { + "name": "ImplementationFinalized", + "type": "src::replaceability_interface::ImplementationFinalized", + "kind": "nested" + }, + { + "name": "RoleGranted", + "type": "src::access_control_interface::RoleGranted", + "kind": "nested" + }, + { + "name": "RoleRevoked", + "type": "src::access_control_interface::RoleRevoked", + "kind": "nested" + }, + { + "name": "RoleAdminChanged", + "type": "src::access_control_interface::RoleAdminChanged", + "kind": "nested" + }, + { + "name": "GovernanceAdminAdded", + "type": "src::roles_interface::GovernanceAdminAdded", + "kind": "nested" + }, + { + "name": "GovernanceAdminRemoved", + "type": "src::roles_interface::GovernanceAdminRemoved", + "kind": "nested" + }, + { + "name": "UpgradeGovernorAdded", + "type": "src::roles_interface::UpgradeGovernorAdded", + "kind": "nested" + }, + { + "name": "UpgradeGovernorRemoved", + "type": "src::roles_interface::UpgradeGovernorRemoved", + "kind": "nested" + } + ] + } + ] +} diff --git a/scripts/dummy_contract_deployment.sh b/scripts/dummy_contract_deployment.sh new file mode 100755 index 000000000..2e3162f62 --- /dev/null +++ b/scripts/dummy_contract_deployment.sh @@ -0,0 +1,150 @@ +#!/bin/bash + +# Check if jq is installed +if ! command -v jq &> /dev/null; then + echo "Error: jq is required but not installed. Please install jq first." + exit 1 +fi + +# Check if curl is installed +if ! command -v curl &> /dev/null; then + echo "Error: curl is required but not installed. Please install curl first." + exit 1 +fi + +# Check if required arguments are provided +if [ -z "$1" ] || [ -z "$2" ]; then + echo "Usage: $0 " + echo "Example: $0 http://localhost:9944 66644" + exit 1 +fi + +# Read arguments +ABI_FILE='./e2e-tests/artifacts/contracts/Starknet.json' +RPC_URL=$1 +BLOCK_NUMBER=$2 + +# Default Anvil private key +PRIVATE_KEY="0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80" +ANVIL_URL="http://localhost:8545" + +echo -e "\nšŸ” Fetching state update for block $BLOCK_NUMBER..." + +# Fetch state update from RPC with correct params structure +STATE_UPDATE=$(curl -s -X POST -H "Content-Type: application/json" --data "{ + \"jsonrpc\":\"2.0\", + \"method\":\"starknet_getStateUpdate\", + \"params\": { + \"block_id\": { + \"block_number\": $BLOCK_NUMBER + } + }, + \"id\":1 +}" "$RPC_URL") + +# Extract global root and block hash from the response +GLOBAL_ROOT=$(echo "$STATE_UPDATE" | jq -r '.result.new_root') +BLOCK_HASH=$(echo "$STATE_UPDATE" | jq -r '.result.block_hash') + +if [ "$GLOBAL_ROOT" == "null" ] || [ "$BLOCK_HASH" == "null" ]; then + echo "Error: Failed to fetch state update data" + echo "Response: $STATE_UPDATE" + exit 1 +fi + +echo -e "\nšŸ“Š State Update Data:" +echo " Global Root: $GLOBAL_ROOT" +echo " Block Hash: $BLOCK_HASH" +echo "" + +# Deploy the verifier contract using forge create +echo -e "šŸš€ Deploying verifier contract...\n" +VERIFIER_RESULT=$(forge create \ + --rpc-url "$ANVIL_URL" \ + --private-key "$PRIVATE_KEY" \ + "scripts/artifacts/eth/MockGPSVerifier.sol:MockGPSVerifier" \ + 2>&1) + +if [ $? -ne 0 ]; then + echo "Error deploying verifier contract:" + echo "$VERIFIER_RESULT" + exit 1 +fi + +# Extract contract address from forge create output +VERIFIER_ADDRESS=$(echo "$VERIFIER_RESULT" | grep "Deployed to" | awk '{print $3}') +echo -e "šŸ“¦ Verifier deployed at: $VERIFIER_ADDRESS\n" + +# Now deploy the main Starknet contract +echo -e "šŸš€ Deploying Starknet contract...\n" + +# Extract bytecode from the JSON file +BYTECODE=$(jq -r '.bytecode.object' "$ABI_FILE" | sed 's/^0x//') + +if [ "$BYTECODE" == "null" ] || [ -z "$BYTECODE" ]; then + echo "Error: No bytecode found in the JSON file" + exit 1 +fi + +# Deploy the contract using cast +RESULT=$(cast send \ + --private-key "$PRIVATE_KEY" \ + --rpc-url "$ANVIL_URL" \ + --create "0x$BYTECODE" \ + 2>&1) + +# Check if deployment was successful +if [ $? -eq 0 ]; then + # Extract contract address from the result using grep and awk + CONTRACT_ADDRESS=$(echo "$RESULT" | grep "contractAddress" | awk '{print $2}') + + if [ -n "$CONTRACT_ADDRESS" ]; then + echo -e "šŸ“¦ Starknet contract deployed successfully at: $CONTRACT_ADDRESS\n" + + # sleep for 2 seconds + sleep 2 + + # Initialize the contract with the required data + echo -e "šŸ”§ Initializing contract...\n" + + # Create the initialization data + PROGRAM_HASH="853638403225561750106379562222782223909906501242604214771127703946595519856" + AGGREGATOR_PROGRAM_HASH="0" + CONFIG_HASH="1773546093672122186726825451867439478968296982619761985456743675021283370179" + + # Encode the initialization data + INIT_DATA=$(cast abi-encode "f(uint256,uint256,address,uint256,uint256,int256,uint256)" \ + $PROGRAM_HASH \ + $AGGREGATOR_PROGRAM_HASH \ + $VERIFIER_ADDRESS \ + $CONFIG_HASH \ + $GLOBAL_ROOT \ + $BLOCK_NUMBER \ + $BLOCK_HASH) + + # Call initializeContractState + INIT_RESULT=$(cast send \ + --private-key "$PRIVATE_KEY" \ + --rpc-url "$ANVIL_URL" \ + $CONTRACT_ADDRESS \ + "initializeContractState(bytes)" \ + $INIT_DATA) + + if [ $? -eq 0 ]; then + TX_HASH=$(echo "$INIT_RESULT" | grep "transactionHash" | awk '{print $2}') + echo -e "āœ… Contract initialized successfully!" + echo -e " Transaction: $TX_HASH\n" + else + echo -e "āŒ Error initializing contract\n" + echo "$INIT_RESULT" + exit 1 + fi + else + echo "āŒ Error: Could not extract contract address from output" + exit 1 + fi +else + echo "āŒ Error deploying contract:" + echo "$RESULT" + exit 1 +fi \ No newline at end of file diff --git a/scripts/get_pid.sh b/scripts/get_pid.sh new file mode 100755 index 000000000..6550bf8f3 --- /dev/null +++ b/scripts/get_pid.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +PID_FILE="$(pwd)/.pids.json" + +jq -r --arg key "$1" '.[$key] // empty' "$PID_FILE" diff --git a/scripts/init_state.js b/scripts/init_state.js new file mode 100644 index 000000000..474e39ab7 --- /dev/null +++ b/scripts/init_state.js @@ -0,0 +1,857 @@ +/// The purpose of this script is to initialize the state of the madara orchestrator +/// This is what it will do +/// 1. Do a dummy transaction on Madara (SNOS currently can't run on empty blocks) +/// 2. Fetch the latest block B from Madara and ensure it can be run in SNOS +/// - Gas fees and Data gas prices are not 0 (eth and strk) +/// - The block has at least one transaction +/// 3. Add data in the mongo DB fit for block B-1 +/// 4. Call updateStateOverride to set the core contract state to B-1 + +const starknet = require("starknet"); +const ethers = require("ethers"); +const { MongoClient } = require("mongodb"); +const { v4 } = require("uuid"); + +// using default anvil key which has funds +const MADARA_ORCHESTRATOR_ETHEREUM_PRIVATE_KEY = + "0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80"; +const eth_provider = new ethers.JsonRpcProvider("http://localhost:8545"); +const wallet = new ethers.Wallet( + MADARA_ORCHESTRATOR_ETHEREUM_PRIVATE_KEY, + eth_provider +); + +const starknet_provider = new starknet.RpcProvider({ + nodeUrl: "http://localhost:9944", +}); +// TODO: fetch these from bootstrapper output +const ETHEREUM_APP_CHAIN_ADDRESS = + "0x49d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7"; +const OZ_ACCOUNT_CLASS_HASH = + "0x01484c93b9d6cf61614d698ed069b3c6992c32549194fc3465258c2194734189"; + +// TODO: Fetch from env +const MONGO_URL = "mongodb://localhost:27017/orchestrator"; + +async function getAppChainBalance(address) { + const abi = [ + { + name: "balanceOf", + type: "function", + inputs: [ + { + name: "account", + type: "felt", + }, + ], + outputs: [ + { + name: "balance", + type: "Uint256", + }, + ], + stateMutability: "view", + }, + ]; + const ethContract = new starknet.Contract( + abi, + ETHEREUM_APP_CHAIN_ADDRESS, + starknet_provider + ); + + // Interaction with the contract with call + const balance = await ethContract.balanceOf(address); + return balance.balance; +} + +async function bridgeToChain(bridge_address, starnet_expected_account_address) { + // call deposit function with 10 as argument and also send 10 eth to the contract + const contract = new ethers.Contract( + bridge_address, + ["function deposit(uint256, uint256)"], + wallet + ); + + const initial_app_chain_balance = await getAppChainBalance( + starnet_expected_account_address + ); + const tx = await contract.deposit( + ethers.parseEther("1"), + starnet_expected_account_address, + { value: ethers.parseEther("1.01") } + ); + + tx.wait(); + // wait for the transaction to be successful + console.log("āœ… Successfully sent 1 ETH on L1 bridge"); + + let counter = 10; + while (counter--) { + const final_app_chain_balance = await getAppChainBalance( + starnet_expected_account_address + ); + if (final_app_chain_balance > initial_app_chain_balance) { + console.log( + "šŸ’° App chain balance:", + (final_app_chain_balance / 10n ** 18n).toString(), + "ETH" + ); + return; + } + console.log("šŸ”„ Waiting for funds to arrive on app chain..."); + await new Promise((resolve) => setTimeout(resolve, 5000)); + } + console.log("āŒ Failed to get funds on app chain"); + process.exit(1); +} + +function calculatePrefactualAccountAddress() { + // new Open Zeppelin account v0.8.1 + // Generate public and private key pair. + const privateKey = starknet.stark.randomAddress(); + console.log("šŸ”‘ Starknet private key:", privateKey); + const starkKeyPub = starknet.ec.starkCurve.getStarkKey(privateKey); + console.log("šŸ”‘ Starknet public key:", starkKeyPub); + + // Calculate future address of the account + const OZaccountConstructorCallData = starknet.CallData.compile({ + publicKey: starkKeyPub, + }); + const OZcontractAddress = starknet.hash.calculateContractAddressFromHash( + starkKeyPub, + OZ_ACCOUNT_CLASS_HASH, + OZaccountConstructorCallData, + 0 + ); + return { + address: OZcontractAddress, + private_key: privateKey, + public_key: starkKeyPub, + }; +} + +async function validateBlockPassesSnosChecks(block_number) { + console.log("ā³ Checking if block", block_number, "can be run in SNOS..."); + const block = await starknet_provider.getBlock(block_number); + + // block number must be >= 10 + if (block_number < 10) { + console.log("āŒ Block number must be >= 10"); + process.exit(1); + } + console.log("āœ… Block number is >= 10"); + + // block must not be empty + if (block.transactions.length === 0) { + console.log("āŒ Block has no transactions"); + process.exit(1); + } + console.log("āœ… Block has transactions"); + + // gas price shouldn't be 0 + if ( + block.l1_gas_price.price_in_fri == 0 || + block.l1_gas_price.price_in_wei == 0 + ) { + console.log("āŒ L1 gas price is 0", block.l1_gas_price); + process.exit(1); + } + console.log("āœ… L1 gas price is non zero"); + + // data as price shouldn't be 0 + if ( + block.l1_data_gas_price.price_in_fri == 0 || + block.l1_data_gas_price.price_in_wei == 0 + ) { + console.log("āŒ L1 data gas price is 0", block.l1_data_gas_price); + process.exit(1); + } + console.log("āœ… L1 data gas price is non zero"); +} + +async function deployStarknetAccount( + starknet_private_key, + starnet_expected_account_address, + starknet_account_public_key +) { + console.log("ā³ Deploying Starknet account..."); + const account = new starknet.Account( + starknet_provider, + starnet_expected_account_address, + starknet_private_key, + "1" + ); + const { transaction_hash, contract_address } = await account.deployAccount({ + classHash: OZ_ACCOUNT_CLASS_HASH, + constructorCalldata: [starknet_account_public_key], + addressSalt: starknet_account_public_key, + }); + + let receipt = await waitForTransactionSuccess(transaction_hash); + // if txn is pending, block_number won't be available + while (!receipt.block_number) { + receipt = await starknet_provider.getTransactionReceipt(transaction_hash); + await new Promise((resolve) => setTimeout(resolve, 200)); + } + return receipt.block_number; +} + +async function waitForTransactionSuccess(hash) { + let receipt = await starknet_provider.waitForTransaction(hash); + if (!receipt.isSuccess()) { + console.log("āŒ Transaction failed - ", hash); + process.exit(1); + } + return receipt; +} + +// Due to restrictions in SNOS at the moment (as it's designed for Sepolia right now), +// we need to skip the starting few blocks from running on SNOS. +// This function overrides the state on the core contract to the block after which we +// can run SNOS +async function overrideStateOnCoreContract( + block_number, + core_contract_address +) { + let state_update = await starknet_provider.getStateUpdate(block_number); + let abi = [ + { + type: "function", + name: "updateStateOverride", + inputs: [ + { + name: "globalRoot", + type: "uint256", + internalType: "uint256", + }, + { + name: "blockNumber", + type: "int256", + internalType: "int256", + }, + { + name: "blockHash", + type: "uint256", + internalType: "uint256", + }, + ], + outputs: [], + stateMutability: "nonpayable", + }, + ]; + + const contract = new ethers.Contract(core_contract_address, abi, wallet); + const tx = await contract.updateStateOverride( + state_update.new_root, + block_number, + state_update.block_hash + ); + const receipt = await tx.wait(); + if (!receipt.status) { + console.log("āŒ Failed to override state on core contract"); + process.exit(1); + } + console.log("āœ… Successfully overridden state on core contract"); +} + +async function setupMongoDb(block_number) { + const client = new MongoClient(MONGO_URL); + await client.connect(); + let db = client.db("orchestrator"); + const collection = db.collection("jobs"); + + // delete everything in the collection + await collection.deleteMany({}); + + // insert all jobs + let insert_promises = [ + "SnosRun", + "ProofCreation", + "DataSubmission", + "StateTransition", + ].map(async (job_type) => { + console.log("Inserting job:", job_type); + let metadata = {}; + if (job_type === "StateTransition") { + metadata = { + blocks_number_to_settle: String(block_number), + }; + } + await collection.insertOne({ + job_type, + internal_id: String(block_number), + external_id: "", + status: "Completed", + created_at: new Date(), + updated_at: new Date(), + id: v4(), + metadata, + version: 0, + }); + }); + await Promise.all(insert_promises); + await client.close(); + console.log("āœ… Successfully inserted all jobs in MongoDB"); +} + +async function transfer( + starknet_account_private_key, + starnet_expected_account_address +) { + const account = new starknet.Account( + starknet_provider, + starnet_expected_account_address, + starknet_account_private_key, + "1" + ); + const abi = [ + { + members: [ + { + name: "low", + offset: 0, + type: "felt", + }, + { + name: "high", + offset: 1, + type: "felt", + }, + ], + name: "Uint256", + size: 2, + type: "struct", + }, + { + inputs: [ + { + name: "recipient", + type: "felt", + }, + { + name: "amount", + type: "Uint256", + }, + ], + name: "transfer", + outputs: [ + { + name: "success", + type: "felt", + }, + ], + type: "function", + }, + ]; + const contract = new starknet.Contract( + abi, + ETHEREUM_APP_CHAIN_ADDRESS, + starknet_provider + ); + let calldata = contract.populate("transfer", { + recipient: "0x1234", + amount: { + low: 1, + high: 0, + }, + }); + + let txn_hash = await account.execute(calldata); + let receipt = await starknet_provider.waitForTransaction( + txn_hash.transaction_hash, + { + retryInterval: 100, + } + ); + if (!receipt.isSuccess()) { + console.log("āŒ Failed to do a transfer on Starknet account"); + process.exit(1); + } + + // if txn is pending, block_number won't be available + while (!receipt.block_number) { + receipt = await starknet_provider.getTransactionReceipt( + txn_hash.transaction_hash + ); + await new Promise((resolve) => setTimeout(resolve, 200)); + } + console.log("āœ… Successfully did a transfer on Starknet account"); + return receipt.block_number; +} + +// This function was created but studying Sepolia transactions +// and relaying them. I am not sure what's exactly happening here +// because the contracts we're working with arne't open source and are +// fetched from Sepolia directly +// TODO: we should move this to Madara bootstrapper +async function upgradeETHToken( + l2_eth_token_address, + starknet_account_private_key, + starnet_expected_account_address +) { + const account = new starknet.Account( + starknet_provider, + starnet_expected_account_address, + starknet_account_private_key, + "1" + ); + + // declare and deploy the new ERC20 contract + // https://sepolia.starkscan.co/tx/0x04b5fa2a2e738a8b7a6c7b15194fbcf4409411743ebbe48cc5b83e5fe0edffdf + console.log( + "ā„¹ļø Sending transaction to declare and deploy new ERC20 contract for ETH..." + ); + let new_erc20_declare_deploy = await account.declareAndDeploy({ + contract: require("./artifacts/starknet/new_eth_token.sierra.json"), + casm: require("./artifacts/starknet/new_eth_token.casm.json"), + constructorCalldata: [ + "eee", + "eeee", + "6", + "0", + "0", + "0x137e2eb39d5b20f7257425dbea0a97ab6a53941e7ccdc9168ba3b0f8b39d1ce", + "0x137e2eb39d5b20f7257425dbea0a97ab6a53941e7ccdc9168ba3b0f8b39d1ce", + "0x137e2eb39d5b20f7257425dbea0a97ab6a53941e7ccdc9168ba3b0f8b39d1ce", + "0", + ], + }); + console.log("āœ… Transaction successful."); + + // declare and deploy the EIC (external initializer contract) + // this is a method used to upgrade contracts in Starknet's proxy version' + // however, I couldn't find the code of this contract + // https://sepolia.starkscan.co/tx/0x03e50d969b41bc98e4da481ec7a48151bb0738137473f8f32f52fa317b9a9fe4 + console.log("ā„¹ļø Sending transaction to declare and deploy EIC contract..."); + let eic_declare_deploy = await account.declareAndDeploy({ + contract: require("./artifacts/starknet/eic_eth_token.sierra.json"), + casm: require("./artifacts/starknet/eic_eth_token.casm.json"), + constructorCalldata: [], + }); + console.log("āœ… Transaction successful."); + + // add_implementation to bridge contarct before we upgrade + // https://sepolia.starkscan.co/tx/0x064ab87819a2f8ebf91176eeb901f842c23ef6c97c107fe31b14defa352ba045 + console.log( + "ā„¹ļø Sending transaction to add implementation to bridge contract..." + ); + let eth_bridge = new starknet.Contract( + require("./artifacts/starknet/bridge_proxy_legacy.json").abi, + l2_eth_token_address, + account + ); + let add_implementation_calldata = eth_bridge.populate("add_implementation", [ + new_erc20_declare_deploy.deploy.address, + eic_declare_deploy.deploy.address, + [], // init vector + 0, // final + ]); + let add_implementation_txn_hash = await eth_bridge.add_implementation( + add_implementation_calldata.calldata + ); + await waitForTransactionSuccess(add_implementation_txn_hash.transaction_hash); + console.log("āœ… Transaction successful."); + + // upgrade ETH token contract + // https://sepolia.starkscan.co/tx/0x03115f88d0d2e97be5e752ff12c4e2f537ca0dcec92ad49b77d3d329efcd1c9f + console.log("ā„¹ļø Sending transaction to upgrade ETH token contract..."); + let upgrade_txn_hash = await eth_bridge.upgrade_to( + // the calldata is the same + add_implementation_calldata.calldata + ); + await waitForTransactionSuccess(upgrade_txn_hash.transaction_hash); + console.log("āœ… Transaction successful."); + + // now add a new implementation to the bridge contract for the erc20 class hash + // https://sepolia.starkscan.co/tx/0x051cc24816ec349c601bbd4e9afc8e0a8c7a93061aba372045bbf7e5d35aff7a + console.log( + "ā„¹ļø Sending transaction to add new implementation to bridge contract..." + ); + let add_new_implementation_txn_hash = await account.execute([ + { + contractAddress: l2_eth_token_address, + entrypoint: "add_new_implementation", + calldata: [ + // class hash of new_eth_token + new_erc20_declare_deploy.declare.class_hash, + "0x1", + "0x0", + ], + }, + ]); + await waitForTransactionSuccess( + add_new_implementation_txn_hash.transaction_hash + ); + console.log("āœ… Transaction successful."); + + // finally replace the class hash on the ETH contract + console.log( + "ā„¹ļø Sending transaction to replace class hash on the ETH contract..." + ); + let replace_to_txn_hash = await account.execute([ + { + contractAddress: l2_eth_token_address, + entrypoint: "replace_to", + calldata: [ + // class hash of new_eth_token + new_erc20_declare_deploy.declare.class_hash, + "0x1", + "0x0", + ], + }, + ]); + await waitForTransactionSuccess(replace_to_txn_hash.transaction_hash); + console.log("āœ… Transaction successful."); +} + +// This function was created but studying Sepolia transactions +// and relaying them. I am not sure what's exactly happening here +// because the contracts we're working with arne't open source and are +// fetched from Sepolia directly +// TODO: we should move this to Madara bootstrapper +async function upgradeETHBridge( + l2_eth_bridge_address, + starknet_account_private_key, + starnet_expected_account_address +) { + const account = new starknet.Account( + starknet_provider, + starnet_expected_account_address, + starknet_account_private_key, + "1" + ); + + // declare and deploy the new ETH bridge contract + // https://sepolia.starkscan.co/tx/0x05c266b9069c04f68752f5eb9652d7c0cd130c6d152d2267a8480273ec991de6 + console.log( + "ā„¹ļø Sending transaction to declare and deploy new ETH bridge contract for ETH..." + ); + let new_bridge_declare_deploy = await account.declareAndDeploy({ + contract: require("./artifacts/starknet/new_eth_bridge.sierra.json"), + casm: require("./artifacts/starknet/new_eth_bridge.casm.json"), + constructorCalldata: ["0"], + }); + console.log("āœ… Transaction successful."); + + // declare and deploy the EIC (external initializer contract) + // this is a method used to upgrade contracts in Starknet's proxy version' + // however, I couldn't find the code of this contract + // https://sepolia.starkscan.co/tx/0x02fde4be42ecb05b545f53adf9d4c1aed8392e6a3743e9f5b6b8333fc580e684 + console.log("ā„¹ļø Sending transaction to declare and deploy EIC contract..."); + let eic_declare_deploy = await account.declareAndDeploy({ + contract: require("./artifacts/starknet/eic_eth_bridge.sierra.json"), + casm: require("./artifacts/starknet/eic_eth_bridge.casm.json"), + constructorCalldata: [], + }); + console.log("āœ… Transaction successful."); + + // add_implementation to bridge contarct before we upgrade + // https://sepolia.starkscan.co/call/0x0721b02e1f4daa98ed8928966d66f345cb897f382274b22c89d86c00e755106d_1_1 + console.log( + "ā„¹ļø Sending transaction to add implementation to bridge contract..." + ); + let eth_bridge = new starknet.Contract( + require("./artifacts/starknet/bridge_proxy_legacy.json").abi, + l2_eth_bridge_address, + account + ); + let add_implementation_calldata = eth_bridge.populate("add_implementation", [ + new_bridge_declare_deploy.deploy.address, + eic_declare_deploy.deploy.address, + [ + "ETH", + "0x49d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7", + ], // init vector + 0, // final + ]); + let add_implementation_txn_hash = await eth_bridge.add_implementation( + add_implementation_calldata.calldata + ); + await waitForTransactionSuccess(add_implementation_txn_hash.transaction_hash); + console.log("āœ… Transaction successful."); + + // upgrade ETH token contract + // https://sepolia.starkscan.co/tx/0x02660d0b82cd88e28a420adf8b5a5139b1f6084af708d10a75269b757ff6367c + console.log("ā„¹ļø Sending transaction to upgrade ETH bridge contract..."); + let upgrade_txn_hash = await eth_bridge.upgrade_to( + // the calldata is the same + add_implementation_calldata.calldata + ); + await waitForTransactionSuccess(upgrade_txn_hash.transaction_hash); + console.log("āœ… Transaction successful."); + + // now add a new implementation to the bridge contract for the bridge class hash + // https://sepolia.starkscan.co/tx/0x051cc24816ec349c601bbd4e9afc8e0a8c7a93061aba372045bbf7e5d35aff7a + console.log( + "ā„¹ļø Sending transaction to add new implementation to bridge contract..." + ); + let add_new_implementation_txn_hash = await account.execute([ + { + contractAddress: l2_eth_bridge_address, + entrypoint: "add_new_implementation", + calldata: [ + // class hash of new_eth_bridge + new_bridge_declare_deploy.declare.class_hash, + "0x1", + "0x0", + ], + }, + ]); + await waitForTransactionSuccess( + add_new_implementation_txn_hash.transaction_hash + ); + console.log("āœ… Transaction successful."); + + // finally replace the class hash on the ETH contract + console.log( + "ā„¹ļø Sending transaction to replace class hash on the ETH contract..." + ); + let replace_to_txn_hash = await account.execute([ + { + contractAddress: l2_eth_bridge_address, + entrypoint: "replace_to", + calldata: [new_bridge_declare_deploy.declare.class_hash, "0x1", "0x0"], + }, + ]); + await waitForTransactionSuccess(replace_to_txn_hash.transaction_hash); + console.log("āœ… Transaction successful."); +} + +async function upgradeL1EthBridge(l1_bridge_address) { + // deploy the new bridge which the proxy will use + const newEthBridge = require("./artifacts/eth/new_eth_bridge.json"); + const contract = new ethers.ContractFactory( + newEthBridge.abi, + newEthBridge.bytecode, + wallet + ); + const ethBridgeReceipt = await contract.deploy(); + await ethBridgeReceipt.waitForDeployment(); + const ethBridgeAddress = await ethBridgeReceipt.getAddress(); + console.log("āœ… New L1 ETH bridge deployed at address:", ethBridgeAddress); + + // deploy the EIC + const newEic = require("./artifacts/eth/eic_eth_bridge.json"); + const eicContract = new ethers.ContractFactory( + newEic.abi, + newEic.bytecode, + wallet + ); + const eicReceipt = await eicContract.deploy(); + await eicReceipt.waitForDeployment(); + const eicAddress = await eicReceipt.getAddress(); + console.log("āœ… New EIC deployed at address:", eicAddress); + + // add new implementation to the bridge + const bridge = new ethers.Contract( + l1_bridge_address, + [ + { + type: "function", + name: "addImplementation", + inputs: [ + { + name: "newImplementation", + type: "address", + internalType: "address", + }, + { + name: "data", + type: "bytes", + internalType: "bytes", + }, + { + name: "finalize", + type: "bool", + internalType: "bool", + }, + ], + outputs: [], + stateMutability: "nonpayable", + }, + { + type: "function", + name: "upgradeTo", + inputs: [ + { + name: "newImplementation", + type: "address", + internalType: "address", + }, + { + name: "data", + type: "bytes", + internalType: "bytes", + }, + { + name: "finalize", + type: "bool", + internalType: "bool", + }, + ], + outputs: [], + stateMutability: "payable", + }, + ], + wallet + ); + + // add new implementation to the bridge + let addImplementationTxn = await bridge.addImplementation( + ethBridgeAddress, + chainHexesToBytes([eicAddress, "0x0", "0x0"]), + false + ); + await addImplementationTxn.wait(); + console.log("āœ… New implementation added to the bridge"); + + // upgrade the bridge to the new implementation + let upgradeToTxn = await bridge.upgradeTo( + ethBridgeAddress, + chainHexesToBytes([eicAddress, "0x0", "0x0"]), + false + ); + await upgradeToTxn.wait(); + console.log("āœ… Bridge upgraded to the new implementation"); +} + +/** + * Chain arguments to one big endian Uint8Array. + * Support address (or other hex strings that fit in 256 bits). + * @param {string[]} hexes - Array of hex strings + * @returns {Uint8Array} - Concatenated big endian bytes + */ +// Taken from https://github.com/starknet-io/starkgate-contracts/blob/5a10fd263d29cd032b7229691d043520edae0737/src/solidity/conftest.py#L167 +function chainHexesToBytes(hexes) { + // Create an array to store all bytes + let result = new Uint8Array(hexes.length * 32); + + hexes.forEach((hex, index) => { + // Remove '0x' prefix if present + hex = hex.replace("0x", ""); + + // Convert hex string to BigInt + const num = BigInt("0x" + hex); + + // Convert to bytes and pad to 32 bytes + const bytes = new Uint8Array(32); + for (let i = 0; i < 32; i++) { + // Extract each byte from right to left (big endian) + bytes[31 - i] = Number((num >> BigInt(i * 8)) & BigInt(0xff)); + } + + // Add to result array + result.set(bytes, index * 32); + }); + + return result; +} + +async function main() { + // tage bridge address as an argument --bridge_address + const l1_bridge_address = process.argv[2]; + console.log("ā„¹ļø L1 bridge address:", l1_bridge_address); + const core_contract_address = process.argv[3]; + console.log("ā„¹ļø Core contract address:", core_contract_address); + const l2_eth_token_address = process.argv[4]; + console.log("ā„¹ļø L2 ETH token address:", l2_eth_token_address); + const l2_eth_bridge_address = process.argv[5]; + console.log("ā„¹ļø L2 ETH bridge address:", l2_eth_bridge_address); + const bootstrapper_address = + "0x4fe5eea46caa0a1f344fafce82b39d66b552f00d3cd12e89073ef4b4ab37860" || + process.argv[6]; + const bootstrapper_private_key = "0xabcd" || process.argv[7]; + + // add funds to boostrapper account + let bootstrapper_address_balance = await getAppChainBalance( + bootstrapper_address + ); + if (bootstrapper_address_balance < 10n ** 17n) { + await bridgeToChain(l1_bridge_address, bootstrapper_address); + } else { + console.log("ā„¹ļø Bootstrapping account has enough funds, proceeding"); + } + + // upgrade ETH token to Cairo 1 as SNOS breaks otherwise + const eth_token_class = await starknet_provider.getClassAt( + l2_eth_token_address + ); + if (eth_token_class.sierra_program) { + console.log("ā„¹ļø Eth token is already upgraded, proceeding"); + } else { + await upgradeETHToken( + l2_eth_token_address, + bootstrapper_private_key, + bootstrapper_address + ); + } + + // upgrade ETH bridge to Cairo 1 as well + const l2_eth_bridge_class = await starknet_provider.getClassAt( + l2_eth_bridge_address + ); + if (l2_eth_bridge_class.sierra_program) { + console.log("ā„¹ļø Eth bridge is already upgraded, proceeding"); + } else { + await upgradeETHBridge( + l2_eth_bridge_address, + bootstrapper_private_key, + bootstrapper_address + ); + } + + // upgrade L1 ETH bridge + const l1BridgeContract = new ethers.Contract( + l1_bridge_address, + ["function identify() external view returns (string)"], + eth_provider + ); + const identify = await l1BridgeContract.identify(); + console.log("ā„¹ļø L1 ETH bridge identify:", identify); + if ( + identify.includes( + // StarkWare_StarknetEthBridge_2023_1 + "StarkWare_StarknetEthBridge_2023_1" + ) + ) { + await upgradeL1EthBridge(l1_bridge_address); + } else { + console.log("ā„¹ļø L1 ETH bridge is already upgraded, proceeding"); + } + + const { + address: starnet_expected_account_address, + private_key: starknet_account_private_key, + public_key: starknet_account_public_key, + } = calculatePrefactualAccountAddress(); + console.log( + "šŸ¦ Starknet expected account address:", + starnet_expected_account_address + ); + + await bridgeToChain(l1_bridge_address, starnet_expected_account_address); + + let block_number = await deployStarknetAccount( + starknet_account_private_key, + starnet_expected_account_address, + starknet_account_public_key + ); + + // SNOS doesn't seem to be able to run on deploy account block + await starknet_provider.waitForBlock(block_number + 1); + + block_number = await transfer( + starknet_account_private_key, + starnet_expected_account_address + ); + + await validateBlockPassesSnosChecks(block_number); + + // overriding core contract state to block_number - 1 so that + // we can run orchestrator on block_number + await overrideStateOnCoreContract(block_number - 1, core_contract_address); + + await setupMongoDb(block_number - 1); +} + +main(); diff --git a/scripts/kill_pid.sh b/scripts/kill_pid.sh new file mode 100755 index 000000000..1f4d7566f --- /dev/null +++ b/scripts/kill_pid.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +get_pid() { + pgrep "$1" +} + +pid=$(get_pid "$1") + +if [ -n "$pid" ]; then + kill "$pid" 2>/dev/null || true + echo "Process $1 (PID: $pid) terminated." +fi diff --git a/scripts/purge_sqs.sh b/scripts/purge_sqs.sh new file mode 100755 index 000000000..a4fdde965 --- /dev/null +++ b/scripts/purge_sqs.sh @@ -0,0 +1,29 @@ +#!/bin/bash + +# Set the endpoint URL +ENDPOINT_URL="http://sqs.us-east-1.localhost.localstack.cloud:4566" + +# Define an array of queue names +QUEUES=( + "madara_orchestrator_snos_job_processing_queue" + "madara_orchestrator_snos_job_verification_queue" + "madara_orchestrator_proving_job_processing_queue" + "madara_orchestrator_proving_job_verification_queue" + "madara_orchestrator_data_submission_job_processing_queue" + "madara_orchestrator_data_submission_job_verification_queue" + "madara_orchestrator_update_state_job_processing_queue" + "madara_orchestrator_update_state_job_verification_queue" + "madara_orchestrator_job_handle_failure_queue" + "madara_orchestrator_worker_trigger_queue" +) + +# Loop through the queues and purge each one +for QUEUE in "${QUEUES[@]}"; do + QUEUE_URL="${ENDPOINT_URL}/000000000000/${QUEUE}" + echo "Purging queue: ${QUEUE}" + aws --endpoint-url ${ENDPOINT_URL} sqs purge-queue --queue-url ${QUEUE_URL} + echo "Queue purged: ${QUEUE}" + echo "----------------------------" +done + +echo "All queues have been purged." \ No newline at end of file diff --git a/scripts/save_json.sh b/scripts/save_json.sh new file mode 100755 index 000000000..5adefcee2 --- /dev/null +++ b/scripts/save_json.sh @@ -0,0 +1,43 @@ +#!/bin/bash + +# Check if required arguments are provided +if [ "$#" -ne 3 ]; then + echo "Usage: $0 " + exit 1 +fi + +json_file="$1" +key="$2" +value="$3" + +# Create directory structure if it doesn't exist +directory=$(dirname "$json_file") +mkdir -p "$directory" + +# If file doesn't exist, create an empty JSON object +if [ ! -f "$json_file" ]; then + echo "{}" > "$json_file" +fi + +# Check if the file is valid JSON +if ! jq empty "$json_file" 2>/dev/null; then + echo "Error: File exists but is not valid JSON" + exit 1 +fi + +# Update or add the key-value pair +# The value is treated as a string. If you need to preserve type, +# remove the quotes around "$value" in the jq command +jq --arg k "$key" --arg v "$value" '.[$k] = $v' "$json_file" > "$json_file.tmp" + +# Check if jq command was successful +if [ $? -eq 0 ]; then + mv "$json_file.tmp" "$json_file" + echo "Successfully updated $json_file" + echo "Current content:" + cat "$json_file" +else + rm -f "$json_file.tmp" + echo "Error: Failed to update JSON file" + exit 1 +fi \ No newline at end of file diff --git a/scripts/save_pid.sh b/scripts/save_pid.sh new file mode 100755 index 000000000..56fe31d0a --- /dev/null +++ b/scripts/save_pid.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +PID_FILE="$(pwd)/.pids.json" + +if [ ! -f "$PID_FILE" ]; then + echo '{}' > "$PID_FILE" +fi + +jq --arg key "$1" --arg val "$2" '.[$key] = $val' "$PID_FILE" > "${PID_FILE}.tmp" && \ +mv "${PID_FILE}.tmp" "$PID_FILE" \ No newline at end of file